summaryrefslogtreecommitdiff
path: root/usr/src
diff options
context:
space:
mode:
Diffstat (limited to 'usr/src')
-rw-r--r--usr/src/Makefile2
-rw-r--r--usr/src/cmd/Adm/sun/README4
-rw-r--r--usr/src/cmd/Adm/sun/ftpusers2
-rw-r--r--usr/src/cmd/Adm/ttysrch2
-rw-r--r--usr/src/cmd/Adm/zones-index5
-rw-r--r--usr/src/cmd/Makefile.cmd2
-rw-r--r--usr/src/cmd/acct/wtmpfix.c8
-rw-r--r--usr/src/cmd/acctadm/aconf.c2
-rw-r--r--usr/src/cmd/acctadm/extended-accounting.xml28
-rw-r--r--usr/src/cmd/acctadm/main.c6
-rw-r--r--usr/src/cmd/acpihpd/acpihpd.xml2
-rw-r--r--usr/src/cmd/allocate/allocate.c4
-rw-r--r--usr/src/cmd/allocate/allocate.xml12
-rw-r--r--usr/src/cmd/allocate/disk_clean.sh8
-rw-r--r--usr/src/cmd/ast/Makefile.ast2
-rw-r--r--usr/src/cmd/audit/audit.c8
-rw-r--r--usr/src/cmd/auditd/auditd.c12
-rw-r--r--usr/src/cmd/auditd/auditd.xml30
-rw-r--r--usr/src/cmd/auditd/svc-auditd20
-rw-r--r--usr/src/cmd/auditrecord/audit_record_attr.txt6
-rw-r--r--usr/src/cmd/auditset/svc-auditset.c2
-rw-r--r--usr/src/cmd/backup/dump/dumpoptr.c2
-rw-r--r--usr/src/cmd/bart/rules.c2
-rw-r--r--usr/src/cmd/bnu/uucp.xml4
-rw-r--r--usr/src/cmd/boot/bootadm/bootadm.c6
-rw-r--r--usr/src/cmd/boot/bootadm/bootadm_upgrade.c4
-rw-r--r--usr/src/cmd/boot/scripts/create_ramdisk.ksh4
-rw-r--r--usr/src/cmd/boot/scripts/extract_boot_filelist.ksh5
-rw-r--r--usr/src/cmd/cdrw/mmc.c4
-rw-r--r--usr/src/cmd/cfgadm/cfgadm.c6
-rw-r--r--usr/src/cmd/cmd-crypto/cryptoadm/adm_kef.c6
-rw-r--r--usr/src/cmd/cmd-crypto/etc/kcf.conf2
-rw-r--r--usr/src/cmd/cmd-crypto/etc/kmf.conf3
-rw-r--r--usr/src/cmd/cmd-crypto/etc/pkcs11.conf2
-rw-r--r--usr/src/cmd/cmd-crypto/scripts/cryptosvc.xml2
-rw-r--r--usr/src/cmd/cmd-inet/common/store_forw_creds.c9
-rw-r--r--usr/src/cmd/cmd-inet/etc/dhcp/inittab8
-rw-r--r--usr/src/cmd/cmd-inet/etc/dhcp/inittab65
-rw-r--r--usr/src/cmd/cmd-inet/etc/ike/config.sample8
-rw-r--r--usr/src/cmd/cmd-inet/etc/inetd.conf12
-rw-r--r--usr/src/cmd/cmd-inet/etc/ipaddrsel.conf2
-rw-r--r--usr/src/cmd/cmd-inet/etc/ipsecalgs2
-rw-r--r--usr/src/cmd/cmd-inet/etc/ipsecinit.sample6
-rw-r--r--usr/src/cmd/cmd-inet/etc/nca/ncaport.conf4
-rw-r--r--usr/src/cmd/cmd-inet/etc/secret/ike.preshared4
-rw-r--r--usr/src/cmd/cmd-inet/etc/secret/ipseckeys.sample4
-rw-r--r--usr/src/cmd/cmd-inet/lib/ipmgmtd/ipadm.conf2
-rw-r--r--usr/src/cmd/cmd-inet/lib/ipmgmtd/ipmgmt_main.c2
-rw-r--r--usr/src/cmd/cmd-inet/lib/ipmgmtd/net-ipmgmt2
-rw-r--r--usr/src/cmd/cmd-inet/lib/ipmgmtd/network-ipmgmt.xml2
-rw-r--r--usr/src/cmd/cmd-inet/lib/nwamd/main.c6
-rw-r--r--usr/src/cmd/cmd-inet/lib/nwamd/ncu_ip.c2
-rw-r--r--usr/src/cmd/cmd-inet/lib/nwamd/ncu_phys.c2
-rw-r--r--usr/src/cmd/cmd-inet/sbin/dhcpagent/README3
-rw-r--r--usr/src/cmd/cmd-inet/sbin/dhcpagent/README.v612
-rw-r--r--usr/src/cmd/cmd-inet/sbin/dhcpagent/class_id.c4
-rw-r--r--usr/src/cmd/cmd-inet/sbin/dhcpagent/dhcpagent.dfl24
-rw-r--r--usr/src/cmd/cmd-inet/sbin/dhcpagent/util.c6
-rw-r--r--usr/src/cmd/cmd-inet/usr.bin/tftp/tftp-udp6.xml2
-rw-r--r--usr/src/cmd/cmd-inet/usr.lib/bridged/bridge.xml2
-rw-r--r--usr/src/cmd/cmd-inet/usr.lib/ilbd/ilbd.xml4
-rw-r--r--usr/src/cmd/cmd-inet/usr.lib/in.mpathd/mpd_main.c2
-rw-r--r--usr/src/cmd/cmd-inet/usr.lib/in.mpathd/mpd_tables.c2
-rw-r--r--usr/src/cmd/cmd-inet/usr.lib/in.mpathd/net-ipmp2
-rw-r--r--usr/src/cmd/cmd-inet/usr.lib/in.mpathd/network-ipmp.xml2
-rw-r--r--usr/src/cmd/cmd-inet/usr.lib/in.ndpd/ndp.xml8
-rw-r--r--usr/src/cmd/cmd-inet/usr.lib/in.ripngd/ripng.xml12
-rw-r--r--usr/src/cmd/cmd-inet/usr.lib/inetd/inetd-upgrade.sh2
-rw-r--r--usr/src/cmd/cmd-inet/usr.lib/inetd/inetd-upgrade.xml4
-rw-r--r--usr/src/cmd/cmd-inet/usr.lib/inetd/inetd.c12
-rw-r--r--usr/src/cmd/cmd-inet/usr.lib/inetd/inetd.xml16
-rw-r--r--usr/src/cmd/cmd-inet/usr.lib/mdnsd/multicast.xml8
-rw-r--r--usr/src/cmd/cmd-inet/usr.lib/ncaconfd/ncaconfd.c6
-rw-r--r--usr/src/cmd/cmd-inet/usr.lib/slpd/slp.xml8
-rw-r--r--usr/src/cmd/cmd-inet/usr.lib/vrrpd/vrrp.conf2
-rw-r--r--usr/src/cmd/cmd-inet/usr.lib/vrrpd/vrrp.xml14
-rw-r--r--usr/src/cmd/cmd-inet/usr.lib/vrrpd/vrrpd.c2
-rw-r--r--usr/src/cmd/cmd-inet/usr.lib/vrrpd/vrrpd.xcl2
-rw-r--r--usr/src/cmd/cmd-inet/usr.lib/wpad/wpa.xml4
-rw-r--r--usr/src/cmd/cmd-inet/usr.lib/wpad/wpa_supplicant.c4
-rw-r--r--usr/src/cmd/cmd-inet/usr.sbin/comsat.xml4
-rw-r--r--usr/src/cmd/cmd-inet/usr.sbin/finger.xml4
-rw-r--r--usr/src/cmd/cmd-inet/usr.sbin/ifconfig/ifconfig.c14
-rw-r--r--usr/src/cmd/cmd-inet/usr.sbin/ilbadm/ilbadm.c12
-rw-r--r--usr/src/cmd/cmd-inet/usr.sbin/ilbadm/ilbadm_rules.c2
-rw-r--r--usr/src/cmd/cmd-inet/usr.sbin/ilbadm/ilbadm_sg.c4
-rw-r--r--usr/src/cmd/cmd-inet/usr.sbin/in.rdisc/rdisc.xml8
-rw-r--r--usr/src/cmd/cmd-inet/usr.sbin/in.routed/route.xml8
-rw-r--r--usr/src/cmd/cmd-inet/usr.sbin/in.talkd/talk.xml4
-rw-r--r--usr/src/cmd/cmd-inet/usr.sbin/in.telnetd.c6
-rw-r--r--usr/src/cmd/cmd-inet/usr.sbin/inetconv/inetconv.c6
-rw-r--r--usr/src/cmd/cmd-inet/usr.sbin/ipmpstat/ipmpstat.c2
-rw-r--r--usr/src/cmd/cmd-inet/usr.sbin/ipsecutils/ikeadm.c2
-rw-r--r--usr/src/cmd/cmd-inet/usr.sbin/ipsecutils/ipsecalgs.xml6
-rw-r--r--usr/src/cmd/cmd-inet/usr.sbin/ipsecutils/ipsecconf.c4
-rw-r--r--usr/src/cmd/cmd-inet/usr.sbin/ipsecutils/ipseckey.c10
-rw-r--r--usr/src/cmd/cmd-inet/usr.sbin/ipsecutils/manual-key.xml14
-rw-r--r--usr/src/cmd/cmd-inet/usr.sbin/ipsecutils/policy.xml10
-rw-r--r--usr/src/cmd/cmd-inet/usr.sbin/kssl/kssladm/kssladm.c6
-rw-r--r--usr/src/cmd/cmd-inet/usr.sbin/kssl/ksslcfg/kssl-proxy.xml4
-rw-r--r--usr/src/cmd/cmd-inet/usr.sbin/kssl/ksslcfg/ksslcfg.c6
-rw-r--r--usr/src/cmd/cmd-inet/usr.sbin/login.xml12
-rw-r--r--usr/src/cmd/cmd-inet/usr.sbin/ndd.c12
-rw-r--r--usr/src/cmd/cmd-inet/usr.sbin/ndp.c2
-rw-r--r--usr/src/cmd/cmd-inet/usr.sbin/rarp.xml6
-rw-r--r--usr/src/cmd/cmd-inet/usr.sbin/rexec.xml2
-rw-r--r--usr/src/cmd/cmd-inet/usr.sbin/route.c2
-rw-r--r--usr/src/cmd/cmd-inet/usr.sbin/routeadm/forwarding.xml10
-rw-r--r--usr/src/cmd/cmd-inet/usr.sbin/routeadm/legacy-routing.xml8
-rw-r--r--usr/src/cmd/cmd-inet/usr.sbin/routeadm/routeadm.c2
-rw-r--r--usr/src/cmd/cmd-inet/usr.sbin/shell.xml12
-rw-r--r--usr/src/cmd/cmd-inet/usr.sbin/snoop/snoop_capture.c2
-rw-r--r--usr/src/cmd/cmd-inet/usr.sbin/socket-filter-kssl.xml8
-rw-r--r--usr/src/cmd/cmd-inet/usr.sbin/telnet.xml4
-rw-r--r--usr/src/cmd/cmd-inet/usr.sbin/telnetd.dfl5
-rw-r--r--usr/src/cmd/cmd-inet/usr.sbin/traceroute/traceroute.c2
-rw-r--r--usr/src/cmd/consadm/consadm.c2
-rw-r--r--usr/src/cmd/consadm/consadm.xml2
-rw-r--r--usr/src/cmd/coreadm/coreadm.xml2
-rw-r--r--usr/src/cmd/cpc/common/cputrack.c2
-rw-r--r--usr/src/cmd/cron/at.c2
-rw-r--r--usr/src/cmd/cron/cron.c8
-rw-r--r--usr/src/cmd/cron/cron.xml2
-rw-r--r--usr/src/cmd/dcs/sparc/sun4u/dcs.h6
-rw-r--r--usr/src/cmd/dcs/sparc/sun4u/dcs.xml2
-rw-r--r--usr/src/cmd/dcs/sparc/sun4u/rdr_messages.c8
-rw-r--r--usr/src/cmd/devfsadm/devfsadm.c6
-rw-r--r--usr/src/cmd/devfsadm/port_link.c8
-rw-r--r--usr/src/cmd/dfs.cmds/sharemgr/group.xml6
-rw-r--r--usr/src/cmd/dispadmin/dispadmin.c2
-rwxr-xr-xusr/src/cmd/dispadmin/scheduler.xml7
-rw-r--r--usr/src/cmd/dladm/dladm.c12
-rw-r--r--usr/src/cmd/dladm/secobj.conf4
-rw-r--r--usr/src/cmd/dlmgmtd/datalink.conf4
-rw-r--r--usr/src/cmd/dlmgmtd/dlmgmt.xml4
-rw-r--r--usr/src/cmd/dlmgmtd/dlmgmt_main.c2
-rw-r--r--usr/src/cmd/drd/drd.xml4
-rw-r--r--usr/src/cmd/dtrace/demo/spec/specopen.d2
-rw-r--r--usr/src/cmd/dtrace/dtrace.c10
-rw-r--r--usr/src/cmd/dtrace/test/cmd/jdtrace/JDTrace.java2
-rw-r--r--usr/src/cmd/dtrace/test/cmd/scripts/dtest.pl6
-rw-r--r--usr/src/cmd/dtrace/test/tst/common/cpc/err.cputrackfailtostart.ksh2
-rwxr-xr-xusr/src/cmd/dtrace/test/tst/common/ip/get.ipv4remote.pl2
-rwxr-xr-xusr/src/cmd/dtrace/test/tst/common/ip/get.ipv6remote.pl2
-rw-r--r--usr/src/cmd/dtrace/test/tst/common/pid/tst.killonerror.ksh2
-rw-r--r--usr/src/cmd/dtrace/test/tst/common/proc/tst.exitcore.ksh5
-rw-r--r--usr/src/cmd/dtrace/test/tst/common/speculation/err.D_ACT_SPEC.SpeculateWithBreakPoint.d4
-rw-r--r--usr/src/cmd/dtrace/test/tst/common/speculation/err.D_ACT_SPEC.SpeculateWithChill.d4
-rw-r--r--usr/src/cmd/dtrace/test/tst/common/speculation/err.D_ACT_SPEC.SpeculateWithCopyOut.d4
-rw-r--r--usr/src/cmd/dtrace/test/tst/common/speculation/err.D_ACT_SPEC.SpeculateWithCopyOutStr.d4
-rw-r--r--usr/src/cmd/dtrace/test/tst/common/speculation/err.D_ACT_SPEC.SpeculateWithPanic.d4
-rw-r--r--usr/src/cmd/dtrace/test/tst/common/speculation/err.D_ACT_SPEC.SpeculateWithRaise.d4
-rw-r--r--usr/src/cmd/dtrace/test/tst/common/speculation/err.D_ACT_SPEC.SpeculateWithStop.d4
-rw-r--r--usr/src/cmd/dtrace/test/tst/sparc/ustack/tst.trapstat.ksh3
-rw-r--r--usr/src/cmd/dumpadm/dconf.c6
-rw-r--r--usr/src/cmd/dumpadm/dumpadm.xml6
-rw-r--r--usr/src/cmd/dumpadm/svc-dumpadm2
-rw-r--r--usr/src/cmd/dumpadm/swap.c4
-rw-r--r--usr/src/cmd/expr/compile.c2
-rw-r--r--usr/src/cmd/fcinfo/fcinfo.c2
-rw-r--r--usr/src/cmd/fcoesvc/fcoe_initiator.xml2
-rw-r--r--usr/src/cmd/fcoesvc/fcoe_target.xml2
-rw-r--r--usr/src/cmd/fdisk/fdisk.c4
-rw-r--r--usr/src/cmd/file/magic2
-rw-r--r--usr/src/cmd/flowadm/flowadm.conf2
-rw-r--r--usr/src/cmd/flowadm/flowprop.conf2
-rw-r--r--usr/src/cmd/fm/dicts/FMD.po2
-rw-r--r--usr/src/cmd/fm/dicts/SCA1000.po2
-rw-r--r--usr/src/cmd/fm/dicts/SCA500.po2
-rw-r--r--usr/src/cmd/fm/dicts/SUN4U.po2
-rw-r--r--usr/src/cmd/fm/dicts/SUNOS.po2
-rw-r--r--usr/src/cmd/fm/eversholt/files/common/disk.esc2
-rw-r--r--usr/src/cmd/fm/fmd/common/fmd.xml2
-rw-r--r--usr/src/cmd/fm/fmd/common/fmd_ctl.c4
-rw-r--r--usr/src/cmd/fm/fmd/common/fmd_eventq.c2
-rw-r--r--usr/src/cmd/fm/fmd/common/fmd_log.c8
-rw-r--r--usr/src/cmd/fm/fmd/common/fmd_module.h2
-rw-r--r--usr/src/cmd/fm/fmd/common/fmd_rpc_adm.c2
-rw-r--r--usr/src/cmd/fm/fmd/common/fmd_scheme.c2
-rw-r--r--usr/src/cmd/fm/fmd/common/fmd_sysevent.c4
-rw-r--r--usr/src/cmd/fm/fmstat/common/fmstat.c2
-rw-r--r--usr/src/cmd/fm/modules/SUNW,Netra-CP3060/etm/etm.conf3
-rw-r--r--usr/src/cmd/fm/modules/SUNW,Netra-CP3260/etm/etm.conf3
-rw-r--r--usr/src/cmd/fm/modules/SUNW,Netra-T5220/etm/etm.conf3
-rw-r--r--usr/src/cmd/fm/modules/SUNW,Netra-T5440/etm/etm.conf3
-rw-r--r--usr/src/cmd/fm/modules/SUNW,SPARC-Enterprise-T5120/etm/etm.conf3
-rw-r--r--usr/src/cmd/fm/modules/SUNW,Sun-Blade-T6300/etm/etm.conf3
-rw-r--r--usr/src/cmd/fm/modules/SUNW,Sun-Blade-T6320/etm/etm.conf3
-rw-r--r--usr/src/cmd/fm/modules/SUNW,Sun-Fire-T200/etm/etm.conf3
-rw-r--r--usr/src/cmd/fm/modules/SUNW,T5140/etm/etm.conf3
-rw-r--r--usr/src/cmd/fm/modules/SUNW,USBRDT-5240/etm/etm.conf3
-rw-r--r--usr/src/cmd/fm/modules/common/syslog-msgs/syslog-msgs.conf3
-rw-r--r--usr/src/cmd/fm/modules/common/syslog-msgs/syslog.c18
-rw-r--r--usr/src/cmd/fm/modules/sun4v/etm/etm.c14
-rw-r--r--usr/src/cmd/fm/modules/sun4v/etm/etm.conf3
-rw-r--r--usr/src/cmd/fm/notify/notify-params.xml8
-rw-r--r--usr/src/cmd/fm/notify/smtp-notify/common/smtp-notify.xml8
-rw-r--r--usr/src/cmd/fm/notify/snmp-notify/common/snmp-notify.xml8
-rw-r--r--usr/src/cmd/fm/schemes/fmd/scheme.c2
-rw-r--r--usr/src/cmd/fm/scripts/fmsim.ksh11
-rw-r--r--usr/src/cmd/fmthard/fmthard.c4
-rw-r--r--usr/src/cmd/format/label.c2
-rw-r--r--usr/src/cmd/fs.d/autofs/auto_subr.c2
-rw-r--r--usr/src/cmd/fs.d/autofs/autofs.dfl2
-rw-r--r--usr/src/cmd/fs.d/autofs/autofs.xml2
-rw-r--r--usr/src/cmd/fs.d/nfs/etc/nfs.dfl2
-rw-r--r--usr/src/cmd/fs.d/nfs/nfsmapid/nfsmapid_server.c4
-rw-r--r--usr/src/cmd/fs.d/nfs/svc/cbd.xml4
-rw-r--r--usr/src/cmd/fs.d/nfs/svc/client.xml2
-rw-r--r--usr/src/cmd/fs.d/nfs/svc/mapid.xml6
-rw-r--r--usr/src/cmd/fs.d/nfs/svc/nfslogd.xml2
-rw-r--r--usr/src/cmd/fs.d/nfs/svc/nlockmgr.xml2
-rw-r--r--usr/src/cmd/fs.d/nfs/svc/rquota.xml2
-rw-r--r--usr/src/cmd/fs.d/nfs/svc/server.xml2
-rw-r--r--usr/src/cmd/fs.d/nfs/svc/status.xml4
-rw-r--r--usr/src/cmd/fs.d/pcfs/mount/mount.c3
-rw-r--r--usr/src/cmd/fs.d/reparsed/reparsed.xml4
-rw-r--r--usr/src/cmd/fs.d/smbclnt/svc/client.xml2
-rw-r--r--usr/src/cmd/fs.d/udfs/mkfs/mkfs.c2
-rw-r--r--usr/src/cmd/fs.d/ufs/fsck/inode.c2
-rw-r--r--usr/src/cmd/fs.d/ufs/fsck/setup.c6
-rw-r--r--usr/src/cmd/fs.d/ufs/fsdb/fsdb.c2
-rw-r--r--usr/src/cmd/fs.d/ufs/mkfs/mkfs.c10
-rw-r--r--usr/src/cmd/fs.d/ufs/mount/mount.c14
-rw-r--r--usr/src/cmd/fwflash/common/fwflash.h8
-rw-r--r--usr/src/cmd/fwflash/plugins/transport/common/ufm.c2
-rw-r--r--usr/src/cmd/fwflash/plugins/vendor/sd-GENERIC.c4
-rw-r--r--usr/src/cmd/getfacl/getfacl.c2
-rw-r--r--usr/src/cmd/growfs/growfs.sh4
-rw-r--r--usr/src/cmd/gss/gssd/gss.xml4
-rw-r--r--usr/src/cmd/gss/gssd/gssd.c2
-rw-r--r--usr/src/cmd/hal/hald/solaris/hal.xml2
-rw-r--r--usr/src/cmd/hal/probing/printer/probe-printer.c10
-rw-r--r--usr/src/cmd/hal/tools/hal-fdi-validate.sh4
-rw-r--r--usr/src/cmd/halt/halt.c4
-rw-r--r--usr/src/cmd/halt/smf.i386/boot-config.xml10
-rw-r--r--usr/src/cmd/halt/smf.sparc/boot-config.xml8
-rw-r--r--usr/src/cmd/hotplug/hotplug.c2
-rw-r--r--usr/src/cmd/hotplugd/hotplug.xml2
-rw-r--r--usr/src/cmd/hotplugd/svc-hotplug2
-rw-r--r--usr/src/cmd/ibd_upgrade/ibd-post-upgrade.xml2
-rw-r--r--usr/src/cmd/idmap/idmap/idmap.c4
-rw-r--r--usr/src/cmd/idmap/idmapd/idmap.xml4
-rw-r--r--usr/src/cmd/idmap/idmapd/idmap_config.c2
-rw-r--r--usr/src/cmd/idmap/idmapd/idmapd.c2
-rw-r--r--usr/src/cmd/init/init.c58
-rw-r--r--usr/src/cmd/initpkg/dfstab.sh4
-rw-r--r--usr/src/cmd/initpkg/init.d/README6
-rw-r--r--usr/src/cmd/initpkg/init.d/README.rc24
-rw-r--r--usr/src/cmd/initpkg/init.d/README.rc34
-rw-r--r--usr/src/cmd/initpkg/init.d/README.rcS4
-rw-r--r--usr/src/cmd/initpkg/init.d/sysetup3
-rw-r--r--usr/src/cmd/initpkg/inittab10
-rw-r--r--usr/src/cmd/initpkg/rc0.sh2
-rw-r--r--usr/src/cmd/initpkg/rc1.sh3
-rw-r--r--usr/src/cmd/initpkg/rc2.sh3
-rw-r--r--usr/src/cmd/initpkg/rc3.sh3
-rw-r--r--usr/src/cmd/initpkg/rcS.sh4
-rw-r--r--usr/src/cmd/initpkg/shutdown.sh2
-rw-r--r--usr/src/cmd/intrd/intrd.xml4
-rw-r--r--usr/src/cmd/ipf/etc/ipf.conf2
-rw-r--r--usr/src/cmd/ipf/svc/ipfilter.xml2
-rw-r--r--usr/src/cmd/ipf/tools/ipfzone.c2
-rw-r--r--usr/src/cmd/iscsiadm/iscsiadm_main.c6
-rw-r--r--usr/src/cmd/iscsid/iscsi-initiator.xml12
-rw-r--r--usr/src/cmd/iscsitsvc/iscsi-target.xml6
-rw-r--r--usr/src/cmd/isns/isnsadm/isnsadm_msg.c2
-rw-r--r--usr/src/cmd/isns/isnsd/isns_server.xml10
-rw-r--r--usr/src/cmd/kbd/keymap.xml2
-rw-r--r--usr/src/cmd/keyserv/keylogin.c4
-rw-r--r--usr/src/cmd/keyserv/keyserv.c4
-rw-r--r--usr/src/cmd/keyserv/keyserv.dfl5
-rw-r--r--usr/src/cmd/keyserv/keyserv.xml4
-rw-r--r--usr/src/cmd/keyserv/setkey.c6
-rw-r--r--usr/src/cmd/krb5/kadmin/cli/kadmin.c4
-rw-r--r--usr/src/cmd/krb5/kadmin/kclient/kclient.sh10
-rw-r--r--usr/src/cmd/krb5/kadmin/kdcmgr/klookup.c2
-rw-r--r--usr/src/cmd/krb5/kadmin/server/ipropd_svc.c2
-rw-r--r--usr/src/cmd/krb5/kadmin/server/kadmin.xml4
-rw-r--r--usr/src/cmd/krb5/kadmin/server/ovsec_kadmd.c2
-rw-r--r--usr/src/cmd/krb5/krb5kdc/krb5kdc.xml6
-rw-r--r--usr/src/cmd/krb5/kwarn/ktkt_warn.xml2
-rw-r--r--usr/src/cmd/krb5/kwarn/kwarnd.c2
-rw-r--r--usr/src/cmd/krb5/slave/krb5_prop.xml8
-rw-r--r--usr/src/cmd/ldap/ns_ldap/idsconfig.sh22
-rw-r--r--usr/src/cmd/ldap/ns_ldap/ldapaddent.c4
-rw-r--r--usr/src/cmd/ldap/ns_ldap/ldapclient.c4
-rw-r--r--usr/src/cmd/ldapcachemgr/client.xml4
-rw-r--r--usr/src/cmd/ldmad/ldoms-agents.xml2
-rw-r--r--usr/src/cmd/lofiadm/main.c4
-rw-r--r--usr/src/cmd/logadm/conf.c2
-rw-r--r--usr/src/cmd/logadm/logadm-upgrade2
-rw-r--r--usr/src/cmd/logadm/logadm.conf6
-rw-r--r--usr/src/cmd/logadm/tester20
-rw-r--r--usr/src/cmd/login/login.dfl4
-rw-r--r--usr/src/cmd/login/logindevperm.sh2
-rw-r--r--usr/src/cmd/lp/cmd/lpsched/server.xml4
-rw-r--r--usr/src/cmd/lp/crontab/lp4
-rw-r--r--usr/src/cmd/lp/filter/postscript/postio/parallel.c14
-rw-r--r--usr/src/cmd/lp/include/lp.h4
-rw-r--r--usr/src/cmd/lp/lib/oam/msg.source4
-rw-r--r--usr/src/cmd/lp/model/lp.cat.c2
-rw-r--r--usr/src/cmd/mailwrapper/mailer.conf6
-rw-r--r--usr/src/cmd/mailx/hdr/rcv.h4
-rw-r--r--usr/src/cmd/man/man.c110
-rw-r--r--usr/src/cmd/mandoc/mandoc_msg.c4
-rw-r--r--usr/src/cmd/mandoc/mdoc_validate.c7
-rw-r--r--usr/src/cmd/mandoc/msec.in21
-rw-r--r--usr/src/cmd/mdb/common/mdb/mdb_cmds.c4
-rw-r--r--usr/src/cmd/mdb/common/mdb/mdb_io.c4
-rw-r--r--usr/src/cmd/mdb/common/mdb/mdb_target.c2
-rw-r--r--usr/src/cmd/mdb/common/mdb/mdb_termio.c10
-rw-r--r--usr/src/cmd/mdb/common/mdb/mdb_typedef.c2
-rw-r--r--usr/src/cmd/mdb/common/modules/dtrace/dtrace.c6
-rw-r--r--usr/src/cmd/mdb/common/modules/genunix/genunix.c4
-rw-r--r--usr/src/cmd/mdb/common/modules/genunix/kmem.c4
-rw-r--r--usr/src/cmd/mdb/common/modules/genunix/leaky_subr.c2
-rw-r--r--usr/src/cmd/mdb/common/modules/genunix/typegraph.c2
-rw-r--r--usr/src/cmd/mdb/common/modules/libumem/misc.c2
-rw-r--r--usr/src/cmd/mdb/common/modules/libumem/umem.c4
-rw-r--r--usr/src/cmd/mdb/common/modules/sockfs/sockfs.c2
-rw-r--r--usr/src/cmd/mdb/i86pc/modules/uppc/uppc.c2
-rw-r--r--usr/src/cmd/mdb/i86xpv/modules/xpv_uppc/xpv_uppc.c10
-rw-r--r--usr/src/cmd/modload/extra_privs8
-rw-r--r--usr/src/cmd/modload/rem_drv.c2
-rw-r--r--usr/src/cmd/mpathadm/mpathadm.c2
-rw-r--r--usr/src/cmd/ndmpd/ndmp.xml4
-rw-r--r--usr/src/cmd/netfiles/nsswitch.ad4
-rw-r--r--usr/src/cmd/netfiles/nsswitch.dns4
-rw-r--r--usr/src/cmd/nsadmin/system4
-rw-r--r--usr/src/cmd/nscd/name-service-cache.xml4
-rw-r--r--usr/src/cmd/nscd/nscd_switch.c2
-rw-r--r--usr/src/cmd/nvmeadm/nvmeadm.c6
-rw-r--r--usr/src/cmd/oamuser/user/messages.c2
-rw-r--r--usr/src/cmd/oamuser/user/messages.h2
-rw-r--r--usr/src/cmd/oamuser/user/useradd.c6
-rw-r--r--usr/src/cmd/oamuser/user/usermod.c8
-rw-r--r--usr/src/cmd/oplhpd/oplhpd.xml12
-rw-r--r--usr/src/cmd/passwd/passwd.dfl9
-rw-r--r--usr/src/cmd/pcidr/pcidr_common.c4
-rw-r--r--usr/src/cmd/pcieadm/pcieadm.h2
-rw-r--r--usr/src/cmd/perl/contrib/Sun/Solaris/Lgrp/pod/Lgrp.pod6
-rw-r--r--usr/src/cmd/perl/contrib/Sun/Solaris/Project/Project.pm6
-rw-r--r--usr/src/cmd/perl/contrib/Sun/Solaris/Project/README2
-rw-r--r--usr/src/cmd/perl/contrib/Sun/Solaris/Project/pod/Project.pod6
-rw-r--r--usr/src/cmd/perl/contrib/Sun/Solaris/Task/README2
-rw-r--r--usr/src/cmd/perl/contrib/Sun/Solaris/Task/pod/Task.pod4
-rw-r--r--usr/src/cmd/pfexecd/pfexecd.c2
-rw-r--r--usr/src/cmd/picl/picld/picl.xml6
-rw-r--r--usr/src/cmd/picl/plugins/common/devtree/picldevtree.c2
-rw-r--r--usr/src/cmd/pools/poold/poold.properties6
-rw-r--r--usr/src/cmd/pools/poold/poold.xml4
-rw-r--r--usr/src/cmd/pools/pools.xml10
-rw-r--r--usr/src/cmd/power/power.dfl5
-rw-r--r--usr/src/cmd/power/power.xml10
-rw-r--r--usr/src/cmd/power/sys-suspend.c10
-rw-r--r--usr/src/cmd/print/bsd-sysv-commands/rfc1179.xml4
-rw-r--r--usr/src/cmd/print/ppdmgr/ppd-cache-update.xml4
-rw-r--r--usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/AddAccess.rawhlp2
-rw-r--r--usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/AddAccessFailed.rawhlp3
-rw-r--r--usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/AddPrinterFailed.rawhlp3
-rw-r--r--usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/DeletePrinterFailed.rawhlp3
-rw-r--r--usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/InstallLocal.rawhlp4
-rw-r--r--usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/InstallLocalPPD.rawhlp4
-rw-r--r--usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/InstallNetwork.rawhlp2
-rw-r--r--usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/InstallNetworkPPD.rawhlp2
-rw-r--r--usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/LDAPAuthentication.rawhlp8
-rw-r--r--usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/LoginFailed.rawhlp2
-rw-r--r--usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/Modify.rawhlp4
-rw-r--r--usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/ModifyFailed.rawhlp3
-rw-r--r--usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/ModifyPPD.rawhlp4
-rw-r--r--usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/NISAuthentication.rawhlp2
-rw-r--r--usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/NameService.rawhlp8
-rw-r--r--usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/PrinterType.rawhlp3
-rw-r--r--usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/ToAddAccess.rawhlp6
-rw-r--r--usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/ToInstallLocal.rawhlp2
-rw-r--r--usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/ToInstallNetwork.rawhlp2
-rw-r--r--usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/ToSelectName.rawhlp2
-rw-r--r--usr/src/cmd/print/scripts/printers.conf3
-rw-r--r--usr/src/cmd/prtdiag/i386/smbios.c6
-rw-r--r--usr/src/cmd/psrinfo/psrinfo.c2
-rw-r--r--usr/src/cmd/ptools/pargs/pargs.c4
-rw-r--r--usr/src/cmd/ramdiskadm/main.c4
-rw-r--r--usr/src/cmd/rcap/rcapd/rcap.xml8
-rw-r--r--usr/src/cmd/rcap/rcapd/rcapd_collection.c4
-rw-r--r--usr/src/cmd/rcap/rcapd/rcapd_main.c4
-rwxr-xr-xusr/src/cmd/rcm_daemon/common/SUNW,vdevices.pl4
-rw-r--r--usr/src/cmd/rcm_daemon/common/dump_rcm.c6
-rw-r--r--usr/src/cmd/rcm_daemon/common/ip_rcm.c4
-rw-r--r--usr/src/cmd/rcm_daemon/common/swap_rcm.c10
-rw-r--r--usr/src/cmd/rctladm/rctladm.c2
-rw-r--r--usr/src/cmd/rmvolmgr/rmvolmgr.xml2
-rw-r--r--usr/src/cmd/rmvolmgr/vold.c4
-rw-r--r--usr/src/cmd/rpcbind/bind.xml22
-rw-r--r--usr/src/cmd/rpcsvc/rpc.bootparamd/bootparams.xml2
-rw-r--r--usr/src/cmd/rpcsvc/rstat.xml6
-rw-r--r--usr/src/cmd/rpcsvc/rusers.xml4
-rw-r--r--usr/src/cmd/rpcsvc/spray.xml4
-rw-r--r--usr/src/cmd/rpcsvc/wall.xml4
-rw-r--r--usr/src/cmd/sa/sar.xml4
-rw-r--r--usr/src/cmd/saf/sac.xml6
-rw-r--r--usr/src/cmd/sasinfo/sasinfo.c2
-rw-r--r--usr/src/cmd/savecore/savecore.c6
-rw-r--r--usr/src/cmd/sckmd/sckmd.xml4
-rw-r--r--usr/src/cmd/sendmail/include/sm/conf.h2
-rw-r--r--usr/src/cmd/sendmail/lib/sendmail-client.xml14
-rw-r--r--usr/src/cmd/sendmail/lib/smtp-sendmail2
-rw-r--r--usr/src/cmd/sendmail/lib/smtp-sendmail.xml14
-rw-r--r--usr/src/cmd/sendmail/src/conf.c3
-rw-r--r--usr/src/cmd/setfacl/setfacl.c2
-rw-r--r--usr/src/cmd/sf880drd/sf880drd.xml4
-rw-r--r--usr/src/cmd/sgs/elfdump/common/corenote.c2
-rw-r--r--usr/src/cmd/sgs/include/libld.h2
-rw-r--r--usr/src/cmd/sgs/include/rtc.h4
-rw-r--r--usr/src/cmd/sgs/include/rtld.h2
-rw-r--r--usr/src/cmd/sgs/libconv/common/corenote.c2
-rw-r--r--usr/src/cmd/sgs/libcrle/common/audit.c2
-rw-r--r--usr/src/cmd/sgs/prof/common/symintErr.c7
-rw-r--r--usr/src/cmd/sgs/tsort/common/zfopen.c5
-rw-r--r--usr/src/cmd/smbsrv/smbadm/smbadm.c2
-rw-r--r--usr/src/cmd/smbsrv/smbd/server.xml2
-rw-r--r--usr/src/cmd/smserverd/smediad.c6
-rw-r--r--usr/src/cmd/smserverd/smserver.xml2
-rw-r--r--usr/src/cmd/srptsvc/target.xml4
-rw-r--r--usr/src/cmd/stmfsvc/stmf.xml10
-rw-r--r--usr/src/cmd/stmfsvc/stmfsvc.c4
-rw-r--r--usr/src/cmd/stmsboot/mpxio-upgrade.xml4
-rw-r--r--usr/src/cmd/svc/common/i.manifest8
-rw-r--r--usr/src/cmd/svc/common/r.manifest2
-rw-r--r--usr/src/cmd/svc/configd/backend.c6
-rw-r--r--usr/src/cmd/svc/configd/restore_repository.sh12
-rw-r--r--usr/src/cmd/svc/dtd/service_bundle.dtd.112
-rw-r--r--usr/src/cmd/svc/lsvcrun/lsvcrun.c4
-rw-r--r--usr/src/cmd/svc/milestone/README.share40
-rw-r--r--usr/src/cmd/svc/milestone/console-login2
-rw-r--r--usr/src/cmd/svc/milestone/early-manifest-import.xml10
-rw-r--r--usr/src/cmd/svc/milestone/global.xml16
-rw-r--r--usr/src/cmd/svc/milestone/identity.xml8
-rw-r--r--usr/src/cmd/svc/milestone/make-console-login-xml4
-rw-r--r--usr/src/cmd/svc/milestone/manifest-import6
-rw-r--r--usr/src/cmd/svc/milestone/manifest-import.xml4
-rw-r--r--usr/src/cmd/svc/milestone/multi-user-server.xml4
-rw-r--r--usr/src/cmd/svc/milestone/multi-user.xml4
-rw-r--r--usr/src/cmd/svc/milestone/net-loc12
-rw-r--r--usr/src/cmd/svc/milestone/net-nwam6
-rw-r--r--usr/src/cmd/svc/milestone/net-routing-setup4
-rw-r--r--usr/src/cmd/svc/milestone/net-svc2
-rw-r--r--usr/src/cmd/svc/milestone/network-initial.xml2
-rw-r--r--usr/src/cmd/svc/milestone/network-install.xml26
-rw-r--r--usr/src/cmd/svc/milestone/network-ipqos.xml2
-rw-r--r--usr/src/cmd/svc/milestone/network-iptun.xml2
-rw-r--r--usr/src/cmd/svc/milestone/network-location.xml12
-rw-r--r--usr/src/cmd/svc/milestone/network-loopback.xml4
-rw-r--r--usr/src/cmd/svc/milestone/network-netcfg.xml2
-rw-r--r--usr/src/cmd/svc/milestone/network-netmask.xml4
-rw-r--r--usr/src/cmd/svc/milestone/network-physical.xml2
-rw-r--r--usr/src/cmd/svc/milestone/network-routing-setup.xml6
-rw-r--r--usr/src/cmd/svc/milestone/network-service.xml2
-rw-r--r--usr/src/cmd/svc/milestone/process-security.xml2
-rw-r--r--usr/src/cmd/svc/milestone/restarter.xml36
-rw-r--r--usr/src/cmd/svc/milestone/rmtmpfiles2
-rw-r--r--usr/src/cmd/svc/milestone/single-user.xml2
-rw-r--r--usr/src/cmd/svc/milestone/vtdaemon.xml2
-rw-r--r--usr/src/cmd/svc/profile/README4
-rw-r--r--usr/src/cmd/svc/profile/generic_limited_net.xml12
-rw-r--r--usr/src/cmd/svc/profile/generic_open.xml4
-rw-r--r--usr/src/cmd/svc/profile/inetd_generic.xml4
-rw-r--r--usr/src/cmd/svc/shell/fs_include.sh7
-rw-r--r--usr/src/cmd/svc/shell/smf_include.sh2
-rw-r--r--usr/src/cmd/svc/startd/fork.c10
-rw-r--r--usr/src/cmd/svc/startd/graph.c4
-rw-r--r--usr/src/cmd/svc/startd/log.c20
-rw-r--r--usr/src/cmd/svc/startd/protocol.c2
-rw-r--r--usr/src/cmd/svc/startd/restarter.c2
-rw-r--r--usr/src/cmd/svc/startd/specials.c4
-rw-r--r--usr/src/cmd/svc/startd/startd.c8
-rw-r--r--usr/src/cmd/svc/startd/utmpx.c2
-rw-r--r--usr/src/cmd/svc/startd/wait.c2
-rw-r--r--usr/src/cmd/svc/svcadm/svcadm.c2
-rw-r--r--usr/src/cmd/svc/svccfg/svccfg_engine.c10
-rw-r--r--usr/src/cmd/svc/svccfg/svccfg_libscf.c4
-rw-r--r--usr/src/cmd/svc/svccfg/svccfg_tmpl.c2
-rw-r--r--usr/src/cmd/svc/svccfg/svccfg_xml.c4
-rw-r--r--usr/src/cmd/svc/svcs/svcs.c6
-rw-r--r--usr/src/cmd/svr4pkg/libinst/open_package_datastream.c2
-rw-r--r--usr/src/cmd/svr4pkg/pkgadd/main.c6
-rw-r--r--usr/src/cmd/svr4pkg/pkgcond/main.c2
-rw-r--r--usr/src/cmd/svr4pkg/pkginstall/main.c2
-rw-r--r--usr/src/cmd/svr4pkg/pkgscripts/pkgserv.xml2
-rw-r--r--usr/src/cmd/swap/swap.c6
-rw-r--r--usr/src/cmd/sysdef/sdevinfo.c4
-rw-r--r--usr/src/cmd/syseventd/etc/README4
-rw-r--r--usr/src/cmd/syseventd/sysevent.xml2
-rw-r--r--usr/src/cmd/syslogd/newsyslog4
-rw-r--r--usr/src/cmd/syslogd/syslogd.dfl7
-rw-r--r--usr/src/cmd/syslogd/system-log4
-rw-r--r--usr/src/cmd/syslogd/system-log.xml20
-rw-r--r--usr/src/cmd/th_tools/th_define.c2
-rw-r--r--usr/src/cmd/tnf/prex/help.c4
-rw-r--r--usr/src/cmd/troff/troff.d/tmac.d/an52
-rw-r--r--usr/src/cmd/troff/troff.d/tmac.d/ansun67
-rw-r--r--usr/src/cmd/troff/troff.d/tmac.d/tz.map8
-rw-r--r--usr/src/cmd/truss/main.c2
-rw-r--r--usr/src/cmd/tsol/labeld/svc-labeld2
-rw-r--r--usr/src/cmd/tsol/tnctl/tnctl.xml4
-rw-r--r--usr/src/cmd/tsol/tnd/tnd.xml3
-rw-r--r--usr/src/cmd/tsol/tsol-zones/tsol-zones.xml2
-rw-r--r--usr/src/cmd/tsol/zones/SUNWtsoldef.xml2
-rw-r--r--usr/src/cmd/uadmin/uadmin.c4
-rw-r--r--usr/src/cmd/utmpd/utmp.xml6
-rw-r--r--usr/src/cmd/utmpd/utmpd.c4
-rw-r--r--usr/src/cmd/varpd/varpd.c2
-rw-r--r--usr/src/cmd/vntsd/auth.c2
-rw-r--r--usr/src/cmd/vntsd/svc-vntsd2
-rw-r--r--usr/src/cmd/vntsd/vntsd.xml4
-rw-r--r--usr/src/cmd/vscan/vscand/vs_main.c2
-rw-r--r--usr/src/cmd/vscan/vscand/vscan.xml2
-rw-r--r--usr/src/cmd/vt/vtdaemon.c2
-rw-r--r--usr/src/cmd/xargs/xargs.c2
-rw-r--r--usr/src/cmd/xvm/ipagent/ipagent.xml2
-rw-r--r--usr/src/cmd/ypcmd/client.xml2
-rw-r--r--usr/src/cmd/ypcmd/net_files/publickey4
-rw-r--r--usr/src/cmd/ypcmd/server.xml4
-rw-r--r--usr/src/cmd/ypcmd/xfr.xml4
-rw-r--r--usr/src/cmd/ypcmd/yp2lscripts/inityp2l.sh8
-rw-r--r--usr/src/cmd/ypcmd/yppasswd/passwd.xml4
-rw-r--r--usr/src/cmd/ypcmd/ypupdated/update.xml4
-rw-r--r--usr/src/cmd/zfs/zfs_main.c14
-rw-r--r--usr/src/cmd/zlogin/zlogin.c12
-rw-r--r--usr/src/cmd/zoneadm/resource-mgmt.xml6
-rw-r--r--usr/src/cmd/zoneadm/svc-zones2
-rw-r--r--usr/src/cmd/zoneadm/zoneadm.c30
-rw-r--r--usr/src/cmd/zoneadm/zones.xml4
-rw-r--r--usr/src/cmd/zoneadmd/vplat.c13
-rw-r--r--usr/src/cmd/zoneadmd/zcons.c6
-rw-r--r--usr/src/cmd/zoneadmd/zoneadmd.c17
-rw-r--r--usr/src/cmd/zonecfg/zonecfg.c8
-rw-r--r--usr/src/cmd/zonecfg/zonecfg_grammar.y2
-rw-r--r--usr/src/cmd/zonestat/zonestat/zonestat.c2
-rw-r--r--usr/src/cmd/zonestat/zonestatd/zonestat.xml40
-rw-r--r--usr/src/cmd/zpool/zpool_main.c6
-rw-r--r--usr/src/cmd/zpool/zpool_vdev.c2
-rw-r--r--usr/src/common/smbios/mktables.sh2
-rw-r--r--usr/src/common/svc/repcache_protocol.h4
-rw-r--r--usr/src/common/util/string.c2
-rw-r--r--usr/src/common/zfs/zfs_prop.c4
-rw-r--r--usr/src/contrib/ast/src/cmd/ksh93/Makefile2
-rw-r--r--usr/src/contrib/ast/src/cmd/ksh93/sh/path.c2
-rw-r--r--usr/src/contrib/ast/src/lib/libcmd/expr.c2
-rw-r--r--usr/src/data/terminfo/termcap.src2
-rw-r--r--usr/src/data/terminfo/terminfo.src2
-rw-r--r--usr/src/data/zoneinfo/README6
-rw-r--r--usr/src/grub/grub-0.97/stage2/tparm.c2
-rw-r--r--usr/src/grub/menu.lst4
-rw-r--r--usr/src/head/arpa/inet.h2
-rw-r--r--usr/src/head/dlfcn.h2
-rw-r--r--usr/src/head/libzonecfg.h2
-rw-r--r--usr/src/head/listen.h2
-rw-r--r--usr/src/head/nss_common.h4
-rw-r--r--usr/src/head/rpcsvc/ypclnt.h2
-rw-r--r--usr/src/head/tzfile.h4
-rw-r--r--usr/src/lib/auditd_plugins/binfile/binfile.c4
-rw-r--r--usr/src/lib/auditd_plugins/remote/audit_remote.c6
-rw-r--r--usr/src/lib/auditd_plugins/remote/audit_remote.h2
-rw-r--r--usr/src/lib/brand/ipkg/zone/SUNWblank.xml2
-rw-r--r--usr/src/lib/brand/joyent/zone/SUNWdefault.xml2
-rw-r--r--usr/src/lib/brand/shared/zone/common.ksh4
-rw-r--r--usr/src/lib/brand/sn1/zone/SUNWsn1.xml2
-rw-r--r--usr/src/lib/brand/solaris10/s10_brand/common/s10_brand.c4
-rw-r--r--usr/src/lib/brand/solaris10/zone/SUNWsolaris10.xml2
-rw-r--r--usr/src/lib/brand/solaris10/zone/image_install.ksh2
-rw-r--r--usr/src/lib/brand/solaris10/zone/s10_boot.ksh4
-rw-r--r--usr/src/lib/cfgadm_plugins/fp/common/cfga_fp.c2
-rw-r--r--usr/src/lib/cfgadm_plugins/fp/common/cfga_rep.c4
-rw-r--r--usr/src/lib/cfgadm_plugins/fp/common/devices-fc-fabric.xml2
-rw-r--r--usr/src/lib/cfgadm_plugins/ib/common/cfga_ib.c26
-rw-r--r--usr/src/lib/cfgadm_plugins/sata/common/cfga_sata.c2
-rw-r--r--usr/src/lib/cfgadm_plugins/sbd/common/ap_sbd.c2
-rw-r--r--usr/src/lib/cfgadm_plugins/scsi/common/cfga_scsi.c2
-rw-r--r--usr/src/lib/cfgadm_plugins/shp/common/shp.c2
-rw-r--r--usr/src/lib/cfgadm_plugins/usb/common/cfga_usb.c2
-rw-r--r--usr/src/lib/efcode/efdaemon/efdaemon.xml4
-rw-r--r--usr/src/lib/efcode/efdaemon/efdaemon_sun4v.xml4
-rw-r--r--usr/src/lib/fm/libfmd_adm/common/fmd_adm.c6
-rw-r--r--usr/src/lib/fm/libfmd_log/common/fmd_log.h10
-rw-r--r--usr/src/lib/fm/libfmd_msg/common/fmd_msg.c4
-rw-r--r--usr/src/lib/fm/libfmd_snmp/mibs/SUN-FM-MIB.mib26
-rw-r--r--usr/src/lib/fm/libfmevent/common/libfmevent.h2
-rw-r--r--usr/src/lib/fm/topo/libtopo/common/libtopo.h2
-rw-r--r--usr/src/lib/fm/topo/libtopo/common/topo_fmri.c2
-rw-r--r--usr/src/lib/fm/topo/modules/common/ses/ses.c2
-rw-r--r--usr/src/lib/gss_mechs/mech_dh/backend/mech/name.c6
-rw-r--r--usr/src/lib/gss_mechs/mech_krb5/krb5/ccache/cc_file.c2
-rw-r--r--usr/src/lib/gss_mechs/mech_krb5/krb5/keytab/kt_solaris.c2
-rw-r--r--usr/src/lib/gss_mechs/mech_krb5/krb5/krb/getuid.c8
-rw-r--r--usr/src/lib/gss_mechs/mech_krb5/krb5/os/locate_kdc.c12
-rw-r--r--usr/src/lib/gss_mechs/mech_krb5/mech/store_cred.c6
-rw-r--r--usr/src/lib/gss_mechs/mech_krb5/profile/prof_solaris.c2
-rw-r--r--usr/src/lib/libbrand/dtd/brand.dtd.112
-rw-r--r--usr/src/lib/libbsm/audit_event.txt50
-rw-r--r--usr/src/lib/libbsm/common/adt.xml200
-rw-r--r--usr/src/lib/libbsm/common/audit_scf.c4
-rw-r--r--usr/src/lib/libbsm/common/audit_scf.h4
-rw-r--r--usr/src/lib/libc/i386/sys/ptrace.c4
-rw-r--r--usr/src/lib/libc/port/gen/crypt.c8
-rw-r--r--usr/src/lib/libc/port/gen/getusershell.c2
-rw-r--r--usr/src/lib/libc/port/gen/isaexec.c2
-rw-r--r--usr/src/lib/libc/port/gen/localtime.c6
-rw-r--r--usr/src/lib/libc/port/locale/gb18030.c2
-rw-r--r--usr/src/lib/libc/port/regex/regex.c4
-rw-r--r--usr/src/lib/libc/port/stdio/README.design2
-rw-r--r--usr/src/lib/libc/port/sys/epoll.c2
-rw-r--r--usr/src/lib/libc/port/threads/door_calls.c2
-rw-r--r--usr/src/lib/libc/sparc/sys/ptrace.c2
-rw-r--r--usr/src/lib/libc_db/common/thread_db.c2
-rw-r--r--usr/src/lib/libcryptoutil/README4
-rw-r--r--usr/src/lib/libcryptoutil/common/debug.c2
-rw-r--r--usr/src/lib/libdevinfo/devinfo_devlink.c4
-rw-r--r--usr/src/lib/libdevinfo/devinfo_dim.c4
-rw-r--r--usr/src/lib/libdhcpagent/common/dhcpagent_ipc.c4
-rw-r--r--usr/src/lib/libdhcpagent/common/dhcpagent_ipc.h2
-rw-r--r--usr/src/lib/libdhcputil/README.inittab15
-rw-r--r--usr/src/lib/libdiskmgt/common/entry.c16
-rw-r--r--usr/src/lib/libdladm/common/libdladm.c2
-rw-r--r--usr/src/lib/libdladm/common/libdlaggr.c2
-rw-r--r--usr/src/lib/libdladm/common/libdlbridge.c2
-rw-r--r--usr/src/lib/libdladm/common/libdliptun.c2
-rw-r--r--usr/src/lib/libdladm/common/libdllink.c2
-rw-r--r--usr/src/lib/libdladm/common/libdlvlan.c2
-rw-r--r--usr/src/lib/libdladm/common/linkprop.c2
-rw-r--r--usr/src/lib/libdlpi/common/libdlpi.c6
-rw-r--r--usr/src/lib/libdlpi/common/libdlpi_impl.h2
-rw-r--r--usr/src/lib/libdscp/svc/dscp.ppp.options4
-rw-r--r--usr/src/lib/libdscp/svc/dscp.xml8
-rw-r--r--usr/src/lib/libdtrace/common/dlink_audit.c2
-rw-r--r--usr/src/lib/libdtrace/common/dlink_common.c2
-rw-r--r--usr/src/lib/libdtrace/common/dlink_init.c2
-rw-r--r--usr/src/lib/libdtrace/common/dt_buf.c4
-rw-r--r--usr/src/lib/libdtrace/common/dt_dof.c2
-rw-r--r--usr/src/lib/libdtrace/common/dt_grammar.y2
-rw-r--r--usr/src/lib/libdtrace/common/dt_impl.h2
-rw-r--r--usr/src/lib/libdtrace/common/dt_open.c2
-rw-r--r--usr/src/lib/libdtrace/common/dt_parser.c4
-rw-r--r--usr/src/lib/libdtrace/common/dt_proc.c2
-rw-r--r--usr/src/lib/libdtrace/common/dt_provider.c8
-rw-r--r--usr/src/lib/libdtrace/common/dt_subr.c2
-rw-r--r--usr/src/lib/libdtrace/common/dtrace.h8
-rw-r--r--usr/src/lib/libdtrace/common/procfs.d.in8
-rw-r--r--usr/src/lib/libdtrace_jni/java/docs/html/fast.html2
-rw-r--r--usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/Aggregate.java2
-rw-r--r--usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/AggregationRecord.java4
-rw-r--r--usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/Consumer.java2
-rw-r--r--usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/InterfaceAttributes.java4
-rw-r--r--usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/Option.java2
-rw-r--r--usr/src/lib/libelfsign/README4
-rw-r--r--usr/src/lib/libeti/form/common/regcmp.c2
-rw-r--r--usr/src/lib/libeti/form/common/regex.c2
-rw-r--r--usr/src/lib/libeti/form/common/ty_regexp.c4
-rw-r--r--usr/src/lib/libexacct/demo/README4
-rw-r--r--usr/src/lib/libfakekernel/common/sys/mutex.h2
-rw-r--r--usr/src/lib/libgen/common/p2open.c4
-rw-r--r--usr/src/lib/libhotplug/common/libhotplug_impl.h2
-rw-r--r--usr/src/lib/libipadm/common/ipadm_addr.c2
-rw-r--r--usr/src/lib/libipadm/common/ipadm_if.c4
-rw-r--r--usr/src/lib/libipadm/common/libipadm.c2
-rw-r--r--usr/src/lib/libipmp/common/ipmp_mpathd.c2
-rw-r--r--usr/src/lib/libipsecutil/common/algs.c4
-rw-r--r--usr/src/lib/libipsecutil/common/ipsec_util.c22
-rw-r--r--usr/src/lib/libipsecutil/common/ipsec_util.h10
-rw-r--r--usr/src/lib/libmapid/common/mapid.c4
-rw-r--r--usr/src/lib/libnisdb/db_dictionary.cc2
-rw-r--r--usr/src/lib/libnisdb/ldap_parse.h4
-rw-r--r--usr/src/lib/libnisdb/nis_parse_ldap_yp_util.c2
-rw-r--r--usr/src/lib/libnsl/nss/getipnodeby.c2
-rw-r--r--usr/src/lib/libnsl/rpc/auth_des.c6
-rw-r--r--usr/src/lib/libnwam/README2
-rw-r--r--usr/src/lib/libnwam/common/libnwam_loc.c14
-rw-r--r--usr/src/lib/libpam/pam.conf2
-rw-r--r--usr/src/lib/libpcsc/common/winscard.h2
-rw-r--r--usr/src/lib/libpkg/common/isdir.c2
-rw-r--r--usr/src/lib/libproc/common/Pcontrol.c2
-rw-r--r--usr/src/lib/libproc/common/Pcore.c2
-rw-r--r--usr/src/lib/libresolv2/install.xml6
-rw-r--r--usr/src/lib/librestart/common/librestart.c2
-rw-r--r--usr/src/lib/libsec/common/acl_lex.l4
-rw-r--r--usr/src/lib/libsecdb/auth_attr.txt2
-rw-r--r--usr/src/lib/libsecdb/common/i.rbac12
-rw-r--r--usr/src/lib/libsecdb/exec_attr.txt2
-rw-r--r--usr/src/lib/libsecdb/help/auths/NetworkAutoconfRead.html2
-rw-r--r--usr/src/lib/libsecdb/help/auths/NetworkAutoconfSelect.html4
-rw-r--r--usr/src/lib/libsecdb/help/auths/NetworkAutoconfWlan.html2
-rw-r--r--usr/src/lib/libsecdb/help/auths/NetworkAutoconfWrite.html2
-rw-r--r--usr/src/lib/libsecdb/help/auths/NetworkILBconf.html4
-rw-r--r--usr/src/lib/libsecdb/help/auths/NetworkILBenable.html4
-rw-r--r--usr/src/lib/libsecdb/help/auths/NetworkVRRP.html6
-rw-r--r--usr/src/lib/libsecdb/help/auths/WifiConfig.html5
-rw-r--r--usr/src/lib/libsecdb/help/auths/WifiWep.html5
-rw-r--r--usr/src/lib/libsecdb/help/profiles/RtConsUser.html4
-rw-r--r--usr/src/lib/libsecdb/help/profiles/RtNetAutoconfAdmin.html6
-rw-r--r--usr/src/lib/libsecdb/help/profiles/RtNetAutoconfUser.html2
-rw-r--r--usr/src/lib/libsecdb/help/profiles/RtNetILB.html2
-rw-r--r--usr/src/lib/libsecdb/help/profiles/RtNetVRRP.html2
-rw-r--r--usr/src/lib/libsecdb/policy.conf8
-rw-r--r--usr/src/lib/libsecdb/prof_attr.txt2
-rw-r--r--usr/src/lib/libsecdb/user_attr.txt2
-rw-r--r--usr/src/lib/libshare/common/libsharecore.c2
-rw-r--r--usr/src/lib/libsldap/common/ns_internal.h2
-rw-r--r--usr/src/lib/libsldap/common/ns_sldap.h2
-rw-r--r--usr/src/lib/libsldap/common/ns_standalone.c4
-rw-r--r--usr/src/lib/libsldap/common/ns_writes.c2
-rw-r--r--usr/src/lib/libslp/clib/slp_auth.c4
-rw-r--r--usr/src/lib/libslp/etc/slp.conf.example5
-rw-r--r--usr/src/lib/libstmf/common/store.c2
-rw-r--r--usr/src/lib/libsysevent/libevchannel.c2
-rw-r--r--usr/src/lib/libsysevent/libsysevent.c6
-rw-r--r--usr/src/lib/libxcurses/src/libc/xcurses/tparm.c26
-rw-r--r--usr/src/lib/libxcurses2/src/libc/xcurses/tparm.c4
-rw-r--r--usr/src/lib/libzfs/Makefile.com2
-rw-r--r--usr/src/lib/libzfs/common/libzfs.h4
-rw-r--r--usr/src/lib/libzfs/common/libzfs_pool.c2
-rw-r--r--usr/src/lib/libzfs/common/libzfs_util.c4
-rw-r--r--usr/src/lib/libzfs_core/Makefile.com2
-rw-r--r--usr/src/lib/libzonecfg/common/libzonecfg.c8
-rw-r--r--usr/src/lib/libzutil/Makefile.com2
-rw-r--r--usr/src/lib/nsswitch/ad/common/getgrent.c6
-rw-r--r--usr/src/lib/nsswitch/ad/common/getpwnam.c6
-rw-r--r--usr/src/lib/nsswitch/ad/common/getspent.c2
-rw-r--r--usr/src/lib/nsswitch/files/common/getpwnam.c2
-rw-r--r--usr/src/lib/pam_modules/authtok_check/authtok_check.c2
-rw-r--r--usr/src/lib/pam_modules/krb5/krb5_setcred.c4
-rw-r--r--usr/src/lib/pam_modules/krb5_migrate/krb5_migrate_authenticate.c2
-rw-r--r--usr/src/lib/pam_modules/unix_cred/unix_cred.c2
-rw-r--r--usr/src/lib/passwdutil/files_attr.c2
-rw-r--r--usr/src/lib/passwdutil/ldap_attr.c2
-rw-r--r--usr/src/lib/pkcs11/libpkcs11/common/pkcs11Conf.c6
-rw-r--r--usr/src/lib/print/libpapi-dynamic/common/nss.c4
-rw-r--r--usr/src/lib/print/libprint/common/nss_write.c2
-rw-r--r--usr/src/lib/smbsrv/libmlsvc/common/smb_autohome.c2
-rw-r--r--usr/src/lib/varpd/libvarpd/common/libvarpd_provider.h2
-rw-r--r--usr/src/man/Makefile14
-rw-r--r--usr/src/man/man1/Intro.117
-rw-r--r--usr/src/man/man1/acctcom.121
-rw-r--r--usr/src/man/man1/adb.13
-rw-r--r--usr/src/man/man1/addbib.111
-rw-r--r--usr/src/man/man1/alias.115
-rw-r--r--usr/src/man/man1/allocate.117
-rw-r--r--usr/src/man/man1/amt.14
-rw-r--r--usr/src/man/man1/appcert.116
-rw-r--r--usr/src/man/man1/apptrace.112
-rw-r--r--usr/src/man/man1/apropos.12
-rw-r--r--usr/src/man/man1/ar.120
-rw-r--r--usr/src/man/man1/arch.15
-rw-r--r--usr/src/man/man1/asa.19
-rw-r--r--usr/src/man/man1/at.131
-rw-r--r--usr/src/man/man1/atq.18
-rw-r--r--usr/src/man/man1/atrm.114
-rw-r--r--usr/src/man/man1/audioconvert.18
-rw-r--r--usr/src/man/man1/audioctl.16
-rw-r--r--usr/src/man/man1/audioplay.18
-rw-r--r--usr/src/man/man1/audiorecord.18
-rw-r--r--usr/src/man/man1/audiotest.15
-rw-r--r--usr/src/man/man1/auths.119
-rw-r--r--usr/src/man/man1/awk.124
-rw-r--r--usr/src/man/man1/banner.13
-rw-r--r--usr/src/man/man1/basename.19
-rw-r--r--usr/src/man/man1/bc.111
-rw-r--r--usr/src/man/man1/bdiff.18
-rw-r--r--usr/src/man/man1/break.18
-rw-r--r--usr/src/man/man1/builtin.16
-rw-r--r--usr/src/man/man1/cal.18
-rw-r--r--usr/src/man/man1/cancel.126
-rw-r--r--usr/src/man/man1/cat.115
-rw-r--r--usr/src/man/man1/cd.117
-rw-r--r--usr/src/man/man1/cdrw.117
-rw-r--r--usr/src/man/man1/checknr.110
-rw-r--r--usr/src/man/man1/chgrp.125
-rw-r--r--usr/src/man/man1/chkey.123
-rw-r--r--usr/src/man/man1/chmod.120
-rw-r--r--usr/src/man/man1/chown.124
-rw-r--r--usr/src/man/man1/ckdate.12
-rw-r--r--usr/src/man/man1/ckgid.12
-rw-r--r--usr/src/man/man1/ckint.12
-rw-r--r--usr/src/man/man1/ckitem.12
-rw-r--r--usr/src/man/man1/ckkeywd.12
-rw-r--r--usr/src/man/man1/ckpath.13
-rw-r--r--usr/src/man/man1/ckrange.17
-rw-r--r--usr/src/man/man1/ckstr.13
-rw-r--r--usr/src/man/man1/cksum.115
-rw-r--r--usr/src/man/man1/cktime.12
-rw-r--r--usr/src/man/man1/ckuid.12
-rw-r--r--usr/src/man/man1/ckyorn.12
-rw-r--r--usr/src/man/man1/clear.13
-rw-r--r--usr/src/man/man1/cmp.114
-rw-r--r--usr/src/man/man1/col.111
-rw-r--r--usr/src/man/man1/comm.116
-rw-r--r--usr/src/man/man1/command.115
-rw-r--r--usr/src/man/man1/compress.122
-rw-r--r--usr/src/man/man1/cp.122
-rw-r--r--usr/src/man/man1/cpio.128
-rw-r--r--usr/src/man/man1/cputrack.135
-rw-r--r--usr/src/man/man1/crle.110
-rw-r--r--usr/src/man/man1/crontab.125
-rw-r--r--usr/src/man/man1/crypt.18
-rw-r--r--usr/src/man/man1/csh.148
-rw-r--r--usr/src/man/man1/csplit.114
-rw-r--r--usr/src/man/man1/ctfdiff.110
-rw-r--r--usr/src/man/man1/ctfdump.18
-rw-r--r--usr/src/man/man1/ctrun.114
-rw-r--r--usr/src/man/man1/ctstat.19
-rw-r--r--usr/src/man/man1/ctwatch.110
-rw-r--r--usr/src/man/man1/cut.114
-rw-r--r--usr/src/man/man1/date.113
-rw-r--r--usr/src/man/man1/dc.13
-rw-r--r--usr/src/man/man1/deallocate.117
-rw-r--r--usr/src/man/man1/deroff.16
-rw-r--r--usr/src/man/man1/dhcpinfo.130
-rw-r--r--usr/src/man/man1/diff.113
-rw-r--r--usr/src/man/man1/diff3.18
-rw-r--r--usr/src/man/man1/diffmk.110
-rw-r--r--usr/src/man/man1/digest.113
-rw-r--r--usr/src/man/man1/dircmp.111
-rw-r--r--usr/src/man/man1/dis.112
-rw-r--r--usr/src/man/man1/disown.18
-rw-r--r--usr/src/man/man1/dispgid.12
-rw-r--r--usr/src/man/man1/dispuid.12
-rw-r--r--usr/src/man/man1/dos2unix.14
-rw-r--r--usr/src/man/man1/download.15
-rw-r--r--usr/src/man/man1/dpost.18
-rw-r--r--usr/src/man/man1/du.115
-rw-r--r--usr/src/man/man1/dump.17
-rw-r--r--usr/src/man/man1/dumpcs.13
-rw-r--r--usr/src/man/man1/echo.121
-rw-r--r--usr/src/man/man1/ed.129
-rw-r--r--usr/src/man/man1/eject.19
-rw-r--r--usr/src/man/man1/elfdump.113
-rw-r--r--usr/src/man/man1/elfedit.117
-rw-r--r--usr/src/man/man1/elfsign.19
-rw-r--r--usr/src/man/man1/elfwrap.110
-rw-r--r--usr/src/man/man1/enable.19
-rw-r--r--usr/src/man/man1/encrypt.115
-rw-r--r--usr/src/man/man1/enhance.18
-rw-r--r--usr/src/man/man1/env.113
-rw-r--r--usr/src/man/man1/eqn.16
-rw-r--r--usr/src/man/man1/exec.18
-rw-r--r--usr/src/man/man1/exit.110
-rw-r--r--usr/src/man/man1/expand.19
-rw-r--r--usr/src/man/man1/expr.118
-rw-r--r--usr/src/man/man1/exstr.114
-rw-r--r--usr/src/man/man1/factor.12
-rw-r--r--usr/src/man/man1/fdformat.120
-rw-r--r--usr/src/man/man1/file.122
-rw-r--r--usr/src/man/man1/filesync.17
-rw-r--r--usr/src/man/man1/find.129
-rw-r--r--usr/src/man/man1/finger.17
-rw-r--r--usr/src/man/man1/fmt.17
-rw-r--r--usr/src/man/man1/fmtmsg.14
-rw-r--r--usr/src/man/man1/fold.111
-rw-r--r--usr/src/man/man1/ftp.127
-rw-r--r--usr/src/man/man1/gcore.118
-rw-r--r--usr/src/man/man1/gencat.115
-rw-r--r--usr/src/man/man1/genmsg.19
-rw-r--r--usr/src/man/man1/getconf.129
-rw-r--r--usr/src/man/man1/getfacl.116
-rw-r--r--usr/src/man/man1/getlabel.18
-rw-r--r--usr/src/man/man1/getopt.111
-rw-r--r--usr/src/man/man1/getoptcvt.112
-rw-r--r--usr/src/man/man1/getopts.121
-rw-r--r--usr/src/man/man1/gettext.18
-rw-r--r--usr/src/man/man1/gettxt.113
-rw-r--r--usr/src/man/man1/getzonepath.17
-rw-r--r--usr/src/man/man1/glob.14
-rw-r--r--usr/src/man/man1/gprof.116
-rw-r--r--usr/src/man/man1/grep.120
-rw-r--r--usr/src/man/man1/groups.14
-rw-r--r--usr/src/man/man1/hash.112
-rw-r--r--usr/src/man/man1/head.119
-rw-r--r--usr/src/man/man1/history.114
-rw-r--r--usr/src/man/man1/hostid.15
-rw-r--r--usr/src/man/man1/hostname.16
-rw-r--r--usr/src/man/man1/iconv.122
-rw-r--r--usr/src/man/man1/indxbib.18
-rw-r--r--usr/src/man/man1/ipcrm.125
-rw-r--r--usr/src/man/man1/ipcs.130
-rw-r--r--usr/src/man/man1/isainfo.19
-rw-r--r--usr/src/man/man1/isalist.110
-rw-r--r--usr/src/man/man1/jobs.124
-rw-r--r--usr/src/man/man1/join.116
-rw-r--r--usr/src/man/man1/kbd.142
-rw-r--r--usr/src/man/man1/kdestroy.111
-rw-r--r--usr/src/man/man1/keylogin.121
-rw-r--r--usr/src/man/man1/keylogout.113
-rw-r--r--usr/src/man/man1/kill.125
-rw-r--r--usr/src/man/man1/kinit.130
-rw-r--r--usr/src/man/man1/klist.114
-rw-r--r--usr/src/man/man1/kmdb.111
-rw-r--r--usr/src/man/man1/kmfcfg.14
-rw-r--r--usr/src/man/man1/kpasswd.14
-rw-r--r--usr/src/man/man1/krb5-config.16
-rw-r--r--usr/src/man/man1/ksh93.116
-rw-r--r--usr/src/man/man1/ktutil.17
-rw-r--r--usr/src/man/man1/kvmstat.16
-rw-r--r--usr/src/man/man1/lari.110
-rw-r--r--usr/src/man/man1/last.13
-rw-r--r--usr/src/man/man1/lastcomm.110
-rw-r--r--usr/src/man/man1/ld.121
-rw-r--r--usr/src/man/man1/ld.so.1.126
-rw-r--r--usr/src/man/man1/ldap.159
-rw-r--r--usr/src/man/man1/ldapdelete.112
-rw-r--r--usr/src/man/man1/ldaplist.126
-rw-r--r--usr/src/man/man1/ldapmodify.115
-rw-r--r--usr/src/man/man1/ldapmodrdn.19
-rw-r--r--usr/src/man/man1/ldapsearch.19
-rw-r--r--usr/src/man/man1/ldd.115
-rw-r--r--usr/src/man/man1/let.17
-rw-r--r--usr/src/man/man1/lex.113
-rw-r--r--usr/src/man/man1/lgrpinfo.120
-rw-r--r--usr/src/man/man1/limit.126
-rw-r--r--usr/src/man/man1/line.14
-rw-r--r--usr/src/man/man1/list_devices.129
-rw-r--r--usr/src/man/man1/listusers.13
-rw-r--r--usr/src/man/man1/ln.115
-rw-r--r--usr/src/man/man1/loadkeys.113
-rw-r--r--usr/src/man/man1/locale.112
-rw-r--r--usr/src/man/man1/localedef.119
-rw-r--r--usr/src/man/man1/logger.113
-rw-r--r--usr/src/man/man1/login.1115
-rw-r--r--usr/src/man/man1/logname.115
-rw-r--r--usr/src/man/man1/logout.14
-rw-r--r--usr/src/man/man1/look.14
-rw-r--r--usr/src/man/man1/lookbib.19
-rw-r--r--usr/src/man/man1/lorder.18
-rw-r--r--usr/src/man/man1/lp.156
-rw-r--r--usr/src/man/man1/lpstat.121
-rw-r--r--usr/src/man/man1/ls.129
-rw-r--r--usr/src/man/man1/m4.19
-rw-r--r--usr/src/man/man1/mac.113
-rw-r--r--usr/src/man/man1/mach.14
-rw-r--r--usr/src/man/man1/madv.so.1.119
-rw-r--r--usr/src/man/man1/mail.118
-rw-r--r--usr/src/man/man1/mailcompat.16
-rw-r--r--usr/src/man/man1/mailstats.115
-rw-r--r--usr/src/man/man1/mailx.144
-rw-r--r--usr/src/man/man1/make.128
-rw-r--r--usr/src/man/man1/makekey.14
-rw-r--r--usr/src/man/man1/man.112
-rw-r--r--usr/src/man/man1/mandoc.1160
-rw-r--r--usr/src/man/man1/mconnect.17
-rw-r--r--usr/src/man/man1/mcs.113
-rw-r--r--usr/src/man/man1/mdb.148
-rw-r--r--usr/src/man/man1/mesg.111
-rw-r--r--usr/src/man/man1/mkdir.124
-rw-r--r--usr/src/man/man1/mkmsgs.18
-rw-r--r--usr/src/man/man1/mktemp.111
-rw-r--r--usr/src/man/man1/moe.19
-rw-r--r--usr/src/man/man1/more.128
-rw-r--r--usr/src/man/man1/mpss.so.1.122
-rw-r--r--usr/src/man/man1/msgcc.111
-rw-r--r--usr/src/man/man1/msgcpp.111
-rw-r--r--usr/src/man/man1/msgcvt.17
-rw-r--r--usr/src/man/man1/msgfmt.111
-rw-r--r--usr/src/man/man1/msggen.19
-rw-r--r--usr/src/man/man1/msgget.17
-rw-r--r--usr/src/man/man1/mt.110
-rw-r--r--usr/src/man/man1/mv.122
-rw-r--r--usr/src/man/man1/nc.135
-rw-r--r--usr/src/man/man1/nca.138
-rw-r--r--usr/src/man/man1/ncab2clf.110
-rw-r--r--usr/src/man/man1/ncakmod.115
-rw-r--r--usr/src/man/man1/newform.17
-rw-r--r--usr/src/man/man1/newgrp.121
-rw-r--r--usr/src/man/man1/news.16
-rw-r--r--usr/src/man/man1/newtask.116
-rw-r--r--usr/src/man/man1/nice.117
-rw-r--r--usr/src/man/man1/nl.116
-rw-r--r--usr/src/man/man1/nm.117
-rw-r--r--usr/src/man/man1/nohup.123
-rw-r--r--usr/src/man/man1/nroff.118
-rw-r--r--usr/src/man/man1/oawk.117
-rw-r--r--usr/src/man/man1/od.19
-rw-r--r--usr/src/man/man1/optisa.17
-rw-r--r--usr/src/man/man1/pack.116
-rw-r--r--usr/src/man/man1/pagesize.16
-rw-r--r--usr/src/man/man1/pargs.113
-rw-r--r--usr/src/man/man1/passwd.182
-rw-r--r--usr/src/man/man1/paste.115
-rw-r--r--usr/src/man/man1/pathchk.114
-rw-r--r--usr/src/man/man1/pax.139
-rw-r--r--usr/src/man/man1/pfexec.127
-rw-r--r--usr/src/man/man1/pg.120
-rw-r--r--usr/src/man/man1/pgrep.121
-rw-r--r--usr/src/man/man1/pkginfo.118
-rw-r--r--usr/src/man/man1/pkgmk.154
-rw-r--r--usr/src/man/man1/pkgparam.117
-rw-r--r--usr/src/man/man1/pkgproto.117
-rw-r--r--usr/src/man/man1/pkgtrans.137
-rw-r--r--usr/src/man/man1/pktool.15
-rw-r--r--usr/src/man/man1/plabel.16
-rw-r--r--usr/src/man/man1/plgrp.119
-rw-r--r--usr/src/man/man1/plimit.12
-rw-r--r--usr/src/man/man1/pmadvise.19
-rw-r--r--usr/src/man/man1/pmap.131
-rw-r--r--usr/src/man/man1/postio.17
-rw-r--r--usr/src/man/man1/postprint.17
-rw-r--r--usr/src/man/man1/postreverse.17
-rw-r--r--usr/src/man/man1/ppgsz.121
-rw-r--r--usr/src/man/man1/ppriv.116
-rw-r--r--usr/src/man/man1/pr.113
-rw-r--r--usr/src/man/man1/praliases.15
-rw-r--r--usr/src/man/man1/prctl.126
-rw-r--r--usr/src/man/man1/preap.113
-rw-r--r--usr/src/man/man1/prex.131
-rw-r--r--usr/src/man/man1/print.17
-rw-r--r--usr/src/man/man1/printf.128
-rw-r--r--usr/src/man/man1/priocntl.122
-rw-r--r--usr/src/man/man1/proc.142
-rw-r--r--usr/src/man/man1/prof.114
-rw-r--r--usr/src/man/man1/profiles.124
-rw-r--r--usr/src/man/man1/projects.110
-rw-r--r--usr/src/man/man1/ps.131
-rw-r--r--usr/src/man/man1/psecflags.114
-rw-r--r--usr/src/man/man1/ptree.138
-rw-r--r--usr/src/man/man1/pvs.18
-rw-r--r--usr/src/man/man1/pwd.117
-rw-r--r--usr/src/man/man1/ranlib.14
-rw-r--r--usr/src/man/man1/rcapstat.116
-rw-r--r--usr/src/man/man1/rcp.144
-rw-r--r--usr/src/man/man1/rdist.132
-rw-r--r--usr/src/man/man1/read.117
-rw-r--r--usr/src/man/man1/readonly.17
-rw-r--r--usr/src/man/man1/refer.115
-rw-r--r--usr/src/man/man1/regcmp.18
-rw-r--r--usr/src/man/man1/renice.112
-rw-r--r--usr/src/man/man1/rev.17
-rw-r--r--usr/src/man/man1/rlogin.127
-rw-r--r--usr/src/man/man1/rm.114
-rw-r--r--usr/src/man/man1/rmformat.133
-rw-r--r--usr/src/man/man1/rmmount.15
-rw-r--r--usr/src/man/man1/roffbib.112
-rw-r--r--usr/src/man/man1/roles.124
-rw-r--r--usr/src/man/man1/rpcgen.115
-rw-r--r--usr/src/man/man1/rsh.136
-rw-r--r--usr/src/man/man1/runat.18
-rw-r--r--usr/src/man/man1/rup.13
-rw-r--r--usr/src/man/man1/ruptime.15
-rw-r--r--usr/src/man/man1/rusers.110
-rw-r--r--usr/src/man/man1/rwho.19
-rw-r--r--usr/src/man/man1/sar.112
-rw-r--r--usr/src/man/man1/script.14
-rw-r--r--usr/src/man/man1/sdiff.113
-rw-r--r--usr/src/man/man1/sed.110
-rw-r--r--usr/src/man/man1/sendmail-mailq.18
-rw-r--r--usr/src/man/man1/set.112
-rw-r--r--usr/src/man/man1/setfacl.114
-rw-r--r--usr/src/man/man1/setlabel.18
-rw-r--r--usr/src/man/man1/setpgrp.14
-rw-r--r--usr/src/man/man1/shcomp.15
-rw-r--r--usr/src/man/man1/shell_builtins.165
-rw-r--r--usr/src/man/man1/shift.16
-rw-r--r--usr/src/man/man1/size.17
-rw-r--r--usr/src/man/man1/sleep.14
-rw-r--r--usr/src/man/man1/smbutil.111
-rw-r--r--usr/src/man/man1/soelim.15
-rw-r--r--usr/src/man/man1/sort.124
-rw-r--r--usr/src/man/man1/sortbib.18
-rw-r--r--usr/src/man/man1/sotruss.17
-rw-r--r--usr/src/man/man1/spell.111
-rw-r--r--usr/src/man/man1/split.116
-rw-r--r--usr/src/man/man1/srchtxt.117
-rw-r--r--usr/src/man/man1/strchg.13
-rw-r--r--usr/src/man/man1/strings.113
-rw-r--r--usr/src/man/man1/strip.118
-rw-r--r--usr/src/man/man1/stty.143
-rw-r--r--usr/src/man/man1/sum.121
-rw-r--r--usr/src/man/man1/suspend.18
-rw-r--r--usr/src/man/man1/svcprop.122
-rw-r--r--usr/src/man/man1/svcs.144
-rw-r--r--usr/src/man/man1/symorder.14
-rw-r--r--usr/src/man/man1/sys-suspend.114
-rw-r--r--usr/src/man/man1/sysV-make.110
-rw-r--r--usr/src/man/man1/tabs.130
-rw-r--r--usr/src/man/man1/tail.117
-rw-r--r--usr/src/man/man1/talk.117
-rw-r--r--usr/src/man/man1/tar.137
-rw-r--r--usr/src/man/man1/tbl.15
-rw-r--r--usr/src/man/man1/tcopy.14
-rw-r--r--usr/src/man/man1/tee.116
-rw-r--r--usr/src/man/man1/telnet.122
-rw-r--r--usr/src/man/man1/test.119
-rw-r--r--usr/src/man/man1/tftp.113
-rw-r--r--usr/src/man/man1/time.113
-rw-r--r--usr/src/man/man1/times.15
-rw-r--r--usr/src/man/man1/timex.18
-rw-r--r--usr/src/man/man1/tip.18
-rw-r--r--usr/src/man/man1/tnfdump.18
-rw-r--r--usr/src/man/man1/tnfxtract.17
-rw-r--r--usr/src/man/man1/touch.116
-rw-r--r--usr/src/man/man1/tput.126
-rw-r--r--usr/src/man/man1/tr.124
-rw-r--r--usr/src/man/man1/trap.19
-rw-r--r--usr/src/man/man1/troff.117
-rw-r--r--usr/src/man/man1/true.16
-rw-r--r--usr/src/man/man1/truss.133
-rw-r--r--usr/src/man/man1/tsort.19
-rw-r--r--usr/src/man/man1/tty.113
-rw-r--r--usr/src/man/man1/type.19
-rw-r--r--usr/src/man/man1/typeset.18
-rw-r--r--usr/src/man/man1/ul.15
-rw-r--r--usr/src/man/man1/umask.121
-rw-r--r--usr/src/man/man1/uname.112
-rw-r--r--usr/src/man/man1/unifdef.13
-rw-r--r--usr/src/man/man1/uniq.114
-rw-r--r--usr/src/man/man1/units.12
-rw-r--r--usr/src/man/man1/unix2dos.14
-rw-r--r--usr/src/man/man1/uptime.15
-rw-r--r--usr/src/man/man1/vacation.18
-rw-r--r--usr/src/man/man1/vgrind.19
-rw-r--r--usr/src/man/man1/volcheck.14
-rw-r--r--usr/src/man/man1/volrmmount.19
-rw-r--r--usr/src/man/man1/vtfontcvt.12
-rw-r--r--usr/src/man/man1/w.110
-rw-r--r--usr/src/man/man1/wait.116
-rw-r--r--usr/src/man/man1/wc.121
-rw-r--r--usr/src/man/man1/which.13
-rw-r--r--usr/src/man/man1/who.127
-rw-r--r--usr/src/man/man1/whocalls.14
-rw-r--r--usr/src/man/man1/write.120
-rw-r--r--usr/src/man/man1/xargs.115
-rw-r--r--usr/src/man/man1/xgettext.14
-rw-r--r--usr/src/man/man1/xstr.13
-rw-r--r--usr/src/man/man1/yacc.111
-rw-r--r--usr/src/man/man1/yes.12
-rw-r--r--usr/src/man/man1/ypcat.16
-rw-r--r--usr/src/man/man1/ypmatch.14
-rw-r--r--usr/src/man/man1/yppasswd.113
-rw-r--r--usr/src/man/man1/ypwhich.15
-rw-r--r--usr/src/man/man1/zlogin.118
-rw-r--r--usr/src/man/man1/zonename.19
-rw-r--r--usr/src/man/man1/zonestat.126
-rw-r--r--usr/src/man/man1b/basename.1b3
-rw-r--r--usr/src/man/man1b/biff.1b5
-rw-r--r--usr/src/man/man1b/chown.1b13
-rw-r--r--usr/src/man/man1b/df.1b9
-rw-r--r--usr/src/man/man1b/du.1b10
-rw-r--r--usr/src/man/man1b/echo.1b9
-rw-r--r--usr/src/man/man1b/exportfs.1b19
-rw-r--r--usr/src/man/man1b/expr.1b7
-rw-r--r--usr/src/man/man1b/fastboot.1b8
-rw-r--r--usr/src/man/man1b/file.1b3
-rw-r--r--usr/src/man/man1b/from.1b7
-rw-r--r--usr/src/man/man1b/groups.1b3
-rw-r--r--usr/src/man/man1b/grpck.1b7
-rw-r--r--usr/src/man/man1b/ln.1b15
-rw-r--r--usr/src/man/man1b/logger.1b4
-rw-r--r--usr/src/man/man1b/lpc.1b38
-rw-r--r--usr/src/man/man1b/lpq.1b24
-rw-r--r--usr/src/man/man1b/lpr.1b34
-rw-r--r--usr/src/man/man1b/lprm.1b24
-rw-r--r--usr/src/man/man1b/lptest.1b2
-rw-r--r--usr/src/man/man1b/mail.1b3
-rw-r--r--usr/src/man/man1b/mkstr.1b3
-rw-r--r--usr/src/man/man1b/printenv.1b9
-rw-r--r--usr/src/man/man1b/ps.1b13
-rw-r--r--usr/src/man/man1b/rusage.1b5
-rw-r--r--usr/src/man/man1b/shutdown.1b16
-rw-r--r--usr/src/man/man1b/stty.1b25
-rw-r--r--usr/src/man/man1b/sum.1b7
-rw-r--r--usr/src/man/man1b/test.1b4
-rw-r--r--usr/src/man/man1b/touch.1b6
-rw-r--r--usr/src/man/man1b/tset.1b8
-rw-r--r--usr/src/man/man1b/users.1b3
-rw-r--r--usr/src/man/man1b/vipw.1b5
-rw-r--r--usr/src/man/man1b/whereis.1b3
-rw-r--r--usr/src/man/man1b/whoami.1b7
-rw-r--r--usr/src/man/man1c/ct.1c9
-rw-r--r--usr/src/man/man1c/cu.1c18
-rw-r--r--usr/src/man/man1c/rup.1c6
-rw-r--r--usr/src/man/man1c/uucp.1c19
-rw-r--r--usr/src/man/man1c/uuencode.1c16
-rw-r--r--usr/src/man/man1c/uuglist.1c4
-rw-r--r--usr/src/man/man1c/uustat.1c9
-rw-r--r--usr/src/man/man1c/uuto.1c10
-rw-r--r--usr/src/man/man1c/uux.1c14
-rw-r--r--usr/src/man/man1has/ctags.1has12
-rw-r--r--usr/src/man/man1has/edit.1has8
-rw-r--r--usr/src/man/man1has/ex.1has21
-rw-r--r--usr/src/man/man1has/sh.1has60
-rw-r--r--usr/src/man/man1has/vi.1has17
-rw-r--r--usr/src/man/man1m/6to4relay.1m349
-rw-r--r--usr/src/man/man1m/Intro.1m142
-rw-r--r--usr/src/man/man1m/Makefile752
-rw-r--r--usr/src/man/man1m/Uutry.1m133
-rw-r--r--usr/src/man/man1m/accept.1m160
-rw-r--r--usr/src/man/man1m/acct.1m209
-rw-r--r--usr/src/man/man1m/acctadm.1m425
-rw-r--r--usr/src/man/man1m/acctcms.1m141
-rw-r--r--usr/src/man/man1m/acctcon.1m174
-rw-r--r--usr/src/man/man1m/acctmerg.1m116
-rw-r--r--usr/src/man/man1m/acctprc.1m134
-rw-r--r--usr/src/man/man1m/acctsh.1m323
-rw-r--r--usr/src/man/man1m/acpidump.1m83
-rw-r--r--usr/src/man/man1m/acpixtract.1m113
-rw-r--r--usr/src/man/man1m/adbgen.1m362
-rw-r--r--usr/src/man/man1m/add_allocatable.1m248
-rw-r--r--usr/src/man/man1m/add_drv.1m636
-rw-r--r--usr/src/man/man1m/addbadsec.1m100
-rw-r--r--usr/src/man/man1m/arcstat.1m540
-rw-r--r--usr/src/man/man1m/arp.1m247
-rw-r--r--usr/src/man/man1m/atohexlabel.1m117
-rw-r--r--usr/src/man/man1m/audit.1m94
-rw-r--r--usr/src/man/man1m/audit_warn.1m231
-rw-r--r--usr/src/man/man1m/auditconfig.1m1085
-rw-r--r--usr/src/man/man1m/auditd.1m186
-rw-r--r--usr/src/man/man1m/auditrecord.1m330
-rw-r--r--usr/src/man/man1m/auditreduce.1m911
-rw-r--r--usr/src/man/man1m/auditstat.1m206
-rw-r--r--usr/src/man/man1m/automount.1m728
-rw-r--r--usr/src/man/man1m/automountd.1m121
-rw-r--r--usr/src/man/man1m/autopush.1m195
-rw-r--r--usr/src/man/man1m/bart.1m639
-rw-r--r--usr/src/man/man1m/beadm.1m932
-rw-r--r--usr/src/man/man1m/bhyve.1m837
-rw-r--r--usr/src/man/man1m/bhyvectl.1m85
-rw-r--r--usr/src/man/man1m/boot.1m1142
-rw-r--r--usr/src/man/man1m/bootadm.1m543
-rw-r--r--usr/src/man/man1m/busstat.1m321
-rw-r--r--usr/src/man/man1m/captoinfo.1m102
-rw-r--r--usr/src/man/man1m/catman.1m72
-rw-r--r--usr/src/man/man1m/ccidadm.1m190
-rw-r--r--usr/src/man/man1m/cfgadm.1m939
-rw-r--r--usr/src/man/man1m/cfgadm_cardbus.1m58
-rw-r--r--usr/src/man/man1m/cfgadm_fp.1m744
-rw-r--r--usr/src/man/man1m/cfgadm_ib.1m861
-rw-r--r--usr/src/man/man1m/cfgadm_pci.1m944
-rw-r--r--usr/src/man/man1m/cfgadm_sata.1m833
-rw-r--r--usr/src/man/man1m/cfgadm_sbd.1m1324
-rw-r--r--usr/src/man/man1m/cfgadm_scsi.1m744
-rw-r--r--usr/src/man/man1m/cfgadm_usb.1m987
-rw-r--r--usr/src/man/man1m/chat.1m745
-rw-r--r--usr/src/man/man1m/check-hostname.1m72
-rw-r--r--usr/src/man/man1m/check-permissions.1m99
-rw-r--r--usr/src/man/man1m/chroot.1m133
-rw-r--r--usr/src/man/man1m/clear_locks.1m94
-rw-r--r--usr/src/man/man1m/clinfo.1m83
-rw-r--r--usr/src/man/man1m/clri.1m99
-rw-r--r--usr/src/man/man1m/connstat.1m399
-rw-r--r--usr/src/man/man1m/consadm.1m225
-rw-r--r--usr/src/man/man1m/conv_lp.1m114
-rw-r--r--usr/src/man/man1m/conv_lpd.1m155
-rw-r--r--usr/src/man/man1m/coreadm.1m721
-rw-r--r--usr/src/man/man1m/cpustat.1m346
-rw-r--r--usr/src/man/man1m/cron.1m184
-rw-r--r--usr/src/man/man1m/cryptoadm.1m815
-rw-r--r--usr/src/man/man1m/datadm.1m195
-rw-r--r--usr/src/man/man1m/dcs.1m118
-rw-r--r--usr/src/man/man1m/dd.1m774
-rw-r--r--usr/src/man/man1m/devattr.1m121
-rw-r--r--usr/src/man/man1m/devfree.1m122
-rw-r--r--usr/src/man/man1m/devfsadm.1m273
-rw-r--r--usr/src/man/man1m/device_remap.1m155
-rw-r--r--usr/src/man/man1m/devinfo.1m153
-rw-r--r--usr/src/man/man1m/devlinks.1m307
-rw-r--r--usr/src/man/man1m/devnm.1m71
-rw-r--r--usr/src/man/man1m/devprop.1m167
-rw-r--r--usr/src/man/man1m/devreserv.1m181
-rw-r--r--usr/src/man/man1m/df.1m541
-rw-r--r--usr/src/man/man1m/df_ufs.1m100
-rw-r--r--usr/src/man/man1m/dfmounts.1m137
-rw-r--r--usr/src/man/man1m/dfmounts_nfs.1m120
-rw-r--r--usr/src/man/man1m/dfshares.1m127
-rw-r--r--usr/src/man/man1m/dfshares_nfs.1m126
-rw-r--r--usr/src/man/man1m/dhcpagent.1m895
-rw-r--r--usr/src/man/man1m/diskinfo.1m191
-rw-r--r--usr/src/man/man1m/disks.1m316
-rw-r--r--usr/src/man/man1m/diskscan.1m106
-rw-r--r--usr/src/man/man1m/dispadmin.1m242
-rw-r--r--usr/src/man/man1m/dladm.1m6175
-rw-r--r--usr/src/man/man1m/dlmgmtd.1m62
-rw-r--r--usr/src/man/man1m/dmesg.1m30
-rw-r--r--usr/src/man/man1m/dminfo.1m152
-rw-r--r--usr/src/man/man1m/dns-sd.1m275
-rw-r--r--usr/src/man/man1m/domainname.1m112
-rw-r--r--usr/src/man/man1m/drd.1m72
-rw-r--r--usr/src/man/man1m/drvconfig.1m168
-rw-r--r--usr/src/man/man1m/dtrace.1m765
-rw-r--r--usr/src/man/man1m/dumpadm.1m524
-rw-r--r--usr/src/man/man1m/editmap.1m209
-rw-r--r--usr/src/man/man1m/edquota.1m132
-rw-r--r--usr/src/man/man1m/eeprom.1m1305
-rw-r--r--usr/src/man/man1m/efdaemon.1m104
-rw-r--r--usr/src/man/man1m/embedded_su.1m326
-rw-r--r--usr/src/man/man1m/etrn.1m183
-rw-r--r--usr/src/man/man1m/fcinfo.1m1258
-rw-r--r--usr/src/man/man1m/fdetach.1m49
-rw-r--r--usr/src/man/man1m/fdisk.1m856
-rw-r--r--usr/src/man/man1m/ff.1m236
-rw-r--r--usr/src/man/man1m/ff_ufs.1m69
-rw-r--r--usr/src/man/man1m/fiocompress.1m127
-rw-r--r--usr/src/man/man1m/flowadm.1m847
-rw-r--r--usr/src/man/man1m/fmadm.1m468
-rw-r--r--usr/src/man/man1m/fmd.1m175
-rw-r--r--usr/src/man/man1m/fmdump.1m644
-rw-r--r--usr/src/man/man1m/fmstat.1m308
-rw-r--r--usr/src/man/man1m/fmthard.1m227
-rw-r--r--usr/src/man/man1m/format.1m441
-rw-r--r--usr/src/man/man1m/fruadm.1m214
-rw-r--r--usr/src/man/man1m/fsck.1m394
-rw-r--r--usr/src/man/man1m/fsck_pcfs.1m207
-rw-r--r--usr/src/man/man1m/fsck_udfs.1m329
-rw-r--r--usr/src/man/man1m/fsck_ufs.1m320
-rw-r--r--usr/src/man/man1m/fsdb.1m101
-rw-r--r--usr/src/man/man1m/fsdb_udfs.1m1006
-rw-r--r--usr/src/man/man1m/fsdb_ufs.1m1226
-rw-r--r--usr/src/man/man1m/fsirand.1m47
-rw-r--r--usr/src/man/man1m/fssnap.1m169
-rw-r--r--usr/src/man/man1m/fssnap_ufs.1m537
-rw-r--r--usr/src/man/man1m/fsstat.1m850
-rw-r--r--usr/src/man/man1m/fstyp.1m161
-rw-r--r--usr/src/man/man1m/fuser.1m284
-rw-r--r--usr/src/man/man1m/fwflash.1m428
-rw-r--r--usr/src/man/man1m/fwtmp.1m82
-rw-r--r--usr/src/man/man1m/getdev.1m171
-rw-r--r--usr/src/man/man1m/getdevpolicy.1m70
-rw-r--r--usr/src/man/man1m/getdgrp.1m197
-rw-r--r--usr/src/man/man1m/getent.1m322
-rw-r--r--usr/src/man/man1m/getty.1m132
-rw-r--r--usr/src/man/man1m/getvol.1m167
-rw-r--r--usr/src/man/man1m/groupadd.1m151
-rw-r--r--usr/src/man/man1m/groupdel.1m91
-rw-r--r--usr/src/man/man1m/groupmod.1m164
-rw-r--r--usr/src/man/man1m/growfs.1m118
-rw-r--r--usr/src/man/man1m/gsscred.1m246
-rw-r--r--usr/src/man/man1m/gssd.1m110
-rw-r--r--usr/src/man/man1m/hal-device.1m75
-rw-r--r--usr/src/man/man1m/hal-fdi-validate.1m66
-rw-r--r--usr/src/man/man1m/hal-find.1m110
-rw-r--r--usr/src/man/man1m/hal-get-property.1m200
-rw-r--r--usr/src/man/man1m/hald.1m136
-rw-r--r--usr/src/man/man1m/halt.1m106
-rw-r--r--usr/src/man/man1m/hextoalabel.1m116
-rw-r--r--usr/src/man/man1m/hostconfig.1m149
-rw-r--r--usr/src/man/man1m/hotplug.1m330
-rw-r--r--usr/src/man/man1m/id.1m416
-rw-r--r--usr/src/man/man1m/idmap.1m1307
-rw-r--r--usr/src/man/man1m/idmapd.1m116
-rw-r--r--usr/src/man/man1m/idsconfig.1m180
-rw-r--r--usr/src/man/man1m/if_mpadm.1m133
-rw-r--r--usr/src/man/man1m/ifconfig.1m2527
-rw-r--r--usr/src/man/man1m/ifparse.1m180
-rw-r--r--usr/src/man/man1m/ikeadm.1m835
-rw-r--r--usr/src/man/man1m/ikecert.1m1027
-rw-r--r--usr/src/man/man1m/in.chargend.1m86
-rw-r--r--usr/src/man/man1m/in.comsat.1m76
-rw-r--r--usr/src/man/man1m/in.daytimed.1m81
-rw-r--r--usr/src/man/man1m/in.discardd.1m81
-rw-r--r--usr/src/man/man1m/in.echod.1m79
-rw-r--r--usr/src/man/man1m/in.fingerd.1m118
-rw-r--r--usr/src/man/man1m/in.iked.1m460
-rw-r--r--usr/src/man/man1m/in.lpd.1m122
-rw-r--r--usr/src/man/man1m/in.mpathd.1m358
-rw-r--r--usr/src/man/man1m/in.ndpd.1m265
-rw-r--r--usr/src/man/man1m/in.rarpd.1m171
-rw-r--r--usr/src/man/man1m/in.rdisc.1m190
-rw-r--r--usr/src/man/man1m/in.rexecd.1m179
-rw-r--r--usr/src/man/man1m/in.ripngd.1m226
-rw-r--r--usr/src/man/man1m/in.rlogind.1m378
-rw-r--r--usr/src/man/man1m/in.routed.1m498
-rw-r--r--usr/src/man/man1m/in.rshd.1m437
-rw-r--r--usr/src/man/man1m/in.rwhod.1m133
-rw-r--r--usr/src/man/man1m/in.talkd.1m51
-rw-r--r--usr/src/man/man1m/in.telnetd.1m395
-rw-r--r--usr/src/man/man1m/in.tftpd.1m116
-rw-r--r--usr/src/man/man1m/in.timed.1m79
-rw-r--r--usr/src/man/man1m/in.uucpd.1m177
-rw-r--r--usr/src/man/man1m/inetadm.1m335
-rw-r--r--usr/src/man/man1m/inetconv.1m252
-rw-r--r--usr/src/man/man1m/inetd.1m852
-rw-r--r--usr/src/man/man1m/infocmp.1m335
-rw-r--r--usr/src/man/man1m/init.1m575
-rw-r--r--usr/src/man/man1m/inityp2l.1m130
-rw-r--r--usr/src/man/man1m/install.1m223
-rw-r--r--usr/src/man/man1m/installboot.1m246
-rw-r--r--usr/src/man/man1m/installf.1m439
-rw-r--r--usr/src/man/man1m/installgrub.1m148
-rw-r--r--usr/src/man/man1m/intrd.1m68
-rw-r--r--usr/src/man/man1m/intrstat.1m208
-rw-r--r--usr/src/man/man1m/iostat.1m682
-rw-r--r--usr/src/man/man1m/ipaddrsel.1m322
-rw-r--r--usr/src/man/man1m/ipadm.1m1061
-rw-r--r--usr/src/man/man1m/ipdadm.1m223
-rw-r--r--usr/src/man/man1m/ipf.1m545
-rw-r--r--usr/src/man/man1m/ipfs.1m246
-rw-r--r--usr/src/man/man1m/ipfstat.1m423
-rw-r--r--usr/src/man/man1m/ipmon.1m416
-rw-r--r--usr/src/man/man1m/ipmpstat.1m856
-rw-r--r--usr/src/man/man1m/ipnat.1m224
-rw-r--r--usr/src/man/man1m/ippool.1m349
-rw-r--r--usr/src/man/man1m/ipqosconf.1m1053
-rw-r--r--usr/src/man/man1m/ipsecalgs.1m601
-rw-r--r--usr/src/man/man1m/ipsecconf.1m1859
-rw-r--r--usr/src/man/man1m/ipseckey.1m1628
-rw-r--r--usr/src/man/man1m/iscsiadm.1m1377
-rw-r--r--usr/src/man/man1m/isns.1m279
-rw-r--r--usr/src/man/man1m/isnsadm.1m763
-rw-r--r--usr/src/man/man1m/itadm.1m986
-rw-r--r--usr/src/man/man1m/k5srvutil.1m123
-rw-r--r--usr/src/man/man1m/kadb.1m124
-rw-r--r--usr/src/man/man1m/kadmin.1m1509
-rw-r--r--usr/src/man/man1m/kadmind.1m400
-rw-r--r--usr/src/man/man1m/kclient.1m589
-rw-r--r--usr/src/man/man1m/kdb5_ldap_util.1m1177
-rw-r--r--usr/src/man/man1m/kdb5_util.1m519
-rw-r--r--usr/src/man/man1m/kdcmgr.1m411
-rw-r--r--usr/src/man/man1m/kernel.1m392
-rw-r--r--usr/src/man/man1m/keyserv.1m169
-rw-r--r--usr/src/man/man1m/killall.1m36
-rw-r--r--usr/src/man/man1m/kprop.1m166
-rw-r--r--usr/src/man/man1m/kpropd.1m249
-rw-r--r--usr/src/man/man1m/kproplog.1m126
-rw-r--r--usr/src/man/man1m/krb5kdc.1m242
-rw-r--r--usr/src/man/man1m/ksslcfg.1m409
-rw-r--r--usr/src/man/man1m/kstat.1m382
-rw-r--r--usr/src/man/man1m/ktkt_warnd.1m78
-rw-r--r--usr/src/man/man1m/labelit.1m152
-rw-r--r--usr/src/man/man1m/labelit_hsfs.1m133
-rw-r--r--usr/src/man/man1m/labelit_udfs.1m145
-rw-r--r--usr/src/man/man1m/labelit_ufs.1m99
-rw-r--r--usr/src/man/man1m/latencytop.1m303
-rw-r--r--usr/src/man/man1m/ldap_cachemgr.1m158
-rw-r--r--usr/src/man/man1m/ldapaddent.1m575
-rw-r--r--usr/src/man/man1m/ldapclient.1m1179
-rw-r--r--usr/src/man/man1m/ldmad.1m74
-rw-r--r--usr/src/man/man1m/link.1m112
-rw-r--r--usr/src/man/man1m/listdgrp.1m92
-rw-r--r--usr/src/man/man1m/listen.1m105
-rw-r--r--usr/src/man/man1m/locator.1m120
-rw-r--r--usr/src/man/man1m/lockfs.1m345
-rw-r--r--usr/src/man/man1m/lockstat.1m863
-rw-r--r--usr/src/man/man1m/lofiadm.1m640
-rw-r--r--usr/src/man/man1m/logadm.1m913
-rw-r--r--usr/src/man/man1m/logins.1m203
-rw-r--r--usr/src/man/man1m/lpadmin.1m1354
-rw-r--r--usr/src/man/man1m/lpfilter.1m496
-rw-r--r--usr/src/man/man1m/lpforms.1m668
-rw-r--r--usr/src/man/man1m/lpget.1m180
-rw-r--r--usr/src/man/man1m/lpmove.1m172
-rw-r--r--usr/src/man/man1m/lpsched.1m136
-rw-r--r--usr/src/man/man1m/lpset.1m231
-rw-r--r--usr/src/man/man1m/lpshut.1m62
-rw-r--r--usr/src/man/man1m/lpsystem.1m39
-rw-r--r--usr/src/man/man1m/lpusers.1m198
-rw-r--r--usr/src/man/man1m/luxadm.1m1265
-rw-r--r--usr/src/man/man1m/mail.local.1m209
-rw-r--r--usr/src/man/man1m/mailwrapper.1m130
-rw-r--r--usr/src/man/man1m/makedbm.1m178
-rw-r--r--usr/src/man/man1m/makemap.1m245
-rw-r--r--usr/src/man/man1m/mdnsd.1m108
-rw-r--r--usr/src/man/man1m/mkdevalloc.1m82
-rw-r--r--usr/src/man/man1m/mkdevmaps.1m61
-rw-r--r--usr/src/man/man1m/mkfifo.1m167
-rw-r--r--usr/src/man/man1m/mkfile.1m92
-rw-r--r--usr/src/man/man1m/mkfs.1m138
-rw-r--r--usr/src/man/man1m/mkfs_pcfs.1m375
-rw-r--r--usr/src/man/man1m/mkfs_udfs.1m187
-rw-r--r--usr/src/man/man1m/mkfs_ufs.1m407
-rw-r--r--usr/src/man/man1m/mknod.1m106
-rw-r--r--usr/src/man/man1m/mkpwdict.1m97
-rw-r--r--usr/src/man/man1m/modinfo.1m159
-rw-r--r--usr/src/man/man1m/modload.1m96
-rw-r--r--usr/src/man/man1m/modunload.1m66
-rw-r--r--usr/src/man/man1m/monitor.1m1774
-rw-r--r--usr/src/man/man1m/mount.1m444
-rw-r--r--usr/src/man/man1m/mount_hsfs.1m282
-rw-r--r--usr/src/man/man1m/mount_nfs.1m838
-rw-r--r--usr/src/man/man1m/mount_pcfs.1m195
-rw-r--r--usr/src/man/man1m/mount_smbfs.1m513
-rw-r--r--usr/src/man/man1m/mount_tmpfs.1m129
-rw-r--r--usr/src/man/man1m/mount_udfs.1m219
-rw-r--r--usr/src/man/man1m/mount_ufs.1m375
-rw-r--r--usr/src/man/man1m/mountall.1m209
-rw-r--r--usr/src/man/man1m/mountd.1m113
-rw-r--r--usr/src/man/man1m/mpathadm.1m711
-rw-r--r--usr/src/man/man1m/mpstat.1m355
-rw-r--r--usr/src/man/man1m/msgid.1m73
-rw-r--r--usr/src/man/man1m/mvdir.1m84
-rw-r--r--usr/src/man/man1m/ncaconfd.1m81
-rw-r--r--usr/src/man/man1m/ncheck.1m122
-rw-r--r--usr/src/man/man1m/ncheck_ufs.1m52
-rw-r--r--usr/src/man/man1m/ndd.1m113
-rw-r--r--usr/src/man/man1m/ndmpadm.1m461
-rw-r--r--usr/src/man/man1m/ndmpd.1m149
-rw-r--r--usr/src/man/man1m/ndmpstat.1m370
-rw-r--r--usr/src/man/man1m/ndp.1m221
-rw-r--r--usr/src/man/man1m/netstat.1m1093
-rw-r--r--usr/src/man/man1m/netstrategy.1m110
-rw-r--r--usr/src/man/man1m/newaliases.1m203
-rw-r--r--usr/src/man/man1m/newfs.1m507
-rw-r--r--usr/src/man/man1m/newkey.1m93
-rw-r--r--usr/src/man/man1m/nfs4cbd.1m55
-rw-r--r--usr/src/man/man1m/nfsd.1m235
-rw-r--r--usr/src/man/man1m/nfslogd.1m251
-rw-r--r--usr/src/man/man1m/nfsmapid.1m136
-rw-r--r--usr/src/man/man1m/nfsstat.1m887
-rw-r--r--usr/src/man/man1m/nlsadmin.1m386
-rw-r--r--usr/src/man/man1m/nscd.1m173
-rw-r--r--usr/src/man/man1m/nvmeadm.1m595
-rw-r--r--usr/src/man/man1m/nwamd.1m247
-rw-r--r--usr/src/man/man1m/obpsym.1m143
-rw-r--r--usr/src/man/man1m/oplhpd.1m68
-rw-r--r--usr/src/man/man1m/passmgmt.1m314
-rw-r--r--usr/src/man/man1m/pbind.1m356
-rw-r--r--usr/src/man/man1m/pcitool.1m224
-rw-r--r--usr/src/man/man1m/picld.1m126
-rw-r--r--usr/src/man/man1m/ping.1m473
-rw-r--r--usr/src/man/man1m/pkgadd.1m470
-rw-r--r--usr/src/man/man1m/pkgadm.1m187
-rw-r--r--usr/src/man/man1m/pkgask.1m131
-rw-r--r--usr/src/man/man1m/pkgchk.1m414
-rw-r--r--usr/src/man/man1m/pkgrm.1m309
-rw-r--r--usr/src/man/man1m/plockstat.1m228
-rw-r--r--usr/src/man/man1m/pmadm.1m586
-rw-r--r--usr/src/man/man1m/pmconfig.1m188
-rw-r--r--usr/src/man/man1m/polkit-is-privileged.1m111
-rw-r--r--usr/src/man/man1m/pooladm.1m262
-rw-r--r--usr/src/man/man1m/poolbind.1m256
-rw-r--r--usr/src/man/man1m/poolcfg.1m479
-rw-r--r--usr/src/man/man1m/poold.1m203
-rw-r--r--usr/src/man/man1m/poolstat.1m395
-rw-r--r--usr/src/man/man1m/ports.1m294
-rw-r--r--usr/src/man/man1m/powerd.1m70
-rw-r--r--usr/src/man/man1m/powertop.1m233
-rw-r--r--usr/src/man/man1m/ppdmgr.1m317
-rw-r--r--usr/src/man/man1m/pppd.1m2722
-rw-r--r--usr/src/man/man1m/pppdump.1m64
-rw-r--r--usr/src/man/man1m/pppoec.1m272
-rw-r--r--usr/src/man/man1m/pppoed.1m436
-rw-r--r--usr/src/man/man1m/pppstats.1m399
-rw-r--r--usr/src/man/man1m/pptadm.1m74
-rw-r--r--usr/src/man/man1m/praudit.1m186
-rw-r--r--usr/src/man/man1m/print-service.1m181
-rw-r--r--usr/src/man/man1m/printmgr.1m123
-rw-r--r--usr/src/man/man1m/projadd.1m305
-rw-r--r--usr/src/man/man1m/projdel.1m162
-rw-r--r--usr/src/man/man1m/projmod.1m594
-rw-r--r--usr/src/man/man1m/prstat.1m883
-rw-r--r--usr/src/man/man1m/prtconf.1m227
-rw-r--r--usr/src/man/man1m/prtdiag.1m109
-rw-r--r--usr/src/man/man1m/prtdscp.1m148
-rw-r--r--usr/src/man/man1m/prtfru.1m109
-rw-r--r--usr/src/man/man1m/prtpicl.1m69
-rw-r--r--usr/src/man/man1m/prtvtoc.1m203
-rw-r--r--usr/src/man/man1m/psradm.1m358
-rw-r--r--usr/src/man/man1m/psrinfo.1m248
-rw-r--r--usr/src/man/man1m/psrset.1m544
-rw-r--r--usr/src/man/man1m/putdev.1m415
-rw-r--r--usr/src/man/man1m/putdgrp.1m203
-rw-r--r--usr/src/man/man1m/pwck.1m91
-rw-r--r--usr/src/man/man1m/pwconv.1m183
-rw-r--r--usr/src/man/man1m/quot.1m160
-rw-r--r--usr/src/man/man1m/quota.1m82
-rw-r--r--usr/src/man/man1m/quotacheck.1m115
-rw-r--r--usr/src/man/man1m/quotaon.1m128
-rw-r--r--usr/src/man/man1m/raidctl.1m1074
-rw-r--r--usr/src/man/man1m/ramdiskadm.1m163
-rw-r--r--usr/src/man/man1m/rcapadm.1m261
-rw-r--r--usr/src/man/man1m/rcapd.1m181
-rw-r--r--usr/src/man/man1m/rctladm.1m188
-rw-r--r--usr/src/man/man1m/rdate.1m42
-rw-r--r--usr/src/man/man1m/rdmsr.1m43
-rw-r--r--usr/src/man/man1m/reboot.1m359
-rw-r--r--usr/src/man/man1m/rem_drv.1m104
-rw-r--r--usr/src/man/man1m/remove_allocatable.1m142
-rw-r--r--usr/src/man/man1m/removef.1m198
-rw-r--r--usr/src/man/man1m/repquota.1m65
-rw-r--r--usr/src/man/man1m/rmmount.1m288
-rw-r--r--usr/src/man/man1m/rmt.1m155
-rw-r--r--usr/src/man/man1m/rmvolmgr.1m146
-rw-r--r--usr/src/man/man1m/roleadd.1m530
-rw-r--r--usr/src/man/man1m/roledel.1m168
-rw-r--r--usr/src/man/man1m/rolemod.1m439
-rw-r--r--usr/src/man/man1m/root_archive.1m97
-rw-r--r--usr/src/man/man1m/route.1m769
-rw-r--r--usr/src/man/man1m/routeadm.1m547
-rw-r--r--usr/src/man/man1m/rpc.bootparamd.1m92
-rw-r--r--usr/src/man/man1m/rpc.rstatd.1m49
-rw-r--r--usr/src/man/man1m/rpc.rusersd.1m46
-rw-r--r--usr/src/man/man1m/rpc.rwalld.1m48
-rw-r--r--usr/src/man/man1m/rpc.smserverd.1m53
-rw-r--r--usr/src/man/man1m/rpc.sprayd.1m54
-rw-r--r--usr/src/man/man1m/rpc.yppasswdd.1m167
-rw-r--r--usr/src/man/man1m/rpc.ypupdated.1m104
-rw-r--r--usr/src/man/man1m/rpcbind.1m262
-rw-r--r--usr/src/man/man1m/rpcinfo.1m351
-rw-r--r--usr/src/man/man1m/rquotad.1m72
-rw-r--r--usr/src/man/man1m/rsh.1m114
-rw-r--r--usr/src/man/man1m/rtc.1m124
-rw-r--r--usr/src/man/man1m/rtquery.1m189
-rw-r--r--usr/src/man/man1m/runacct.1m322
-rw-r--r--usr/src/man/man1m/rwall.1m73
-rw-r--r--usr/src/man/man1m/sac.1m247
-rw-r--r--usr/src/man/man1m/sacadm.1m549
-rw-r--r--usr/src/man/man1m/saf.1m1508
-rw-r--r--usr/src/man/man1m/sar.1m158
-rw-r--r--usr/src/man/man1m/sasinfo.1m733
-rw-r--r--usr/src/man/man1m/savecore.1m214
-rw-r--r--usr/src/man/man1m/sbdadm.1m266
-rw-r--r--usr/src/man/man1m/scadm.1m1074
-rw-r--r--usr/src/man/man1m/sckmd.1m79
-rw-r--r--usr/src/man/man1m/sdpadm.1m85
-rw-r--r--usr/src/man/man1m/sendmail.1m3489
-rw-r--r--usr/src/man/man1m/setuname.1m74
-rw-r--r--usr/src/man/man1m/sf880drd.1m59
-rw-r--r--usr/src/man/man1m/share.1m204
-rw-r--r--usr/src/man/man1m/share_nfs.1m818
-rw-r--r--usr/src/man/man1m/shareall.1m60
-rw-r--r--usr/src/man/man1m/sharectl.1m231
-rw-r--r--usr/src/man/man1m/sharemgr.1m1334
-rw-r--r--usr/src/man/man1m/showmount.1m80
-rw-r--r--usr/src/man/man1m/shutdown.1m183
-rw-r--r--usr/src/man/man1m/slpd.1m199
-rw-r--r--usr/src/man/man1m/smbadm.1m461
-rw-r--r--usr/src/man/man1m/smbd.1m123
-rw-r--r--usr/src/man/man1m/smbiod.1m116
-rw-r--r--usr/src/man/man1m/smbios.1m223
-rw-r--r--usr/src/man/man1m/smbstat.1m178
-rw-r--r--usr/src/man/man1m/smrsh.1m85
-rw-r--r--usr/src/man/man1m/snoop.1m1200
-rw-r--r--usr/src/man/man1m/soconfig.1m203
-rw-r--r--usr/src/man/man1m/sppptun.1m236
-rw-r--r--usr/src/man/man1m/spray.1m81
-rw-r--r--usr/src/man/man1m/statd.1m112
-rw-r--r--usr/src/man/man1m/stmfadm.1m668
-rw-r--r--usr/src/man/man1m/stmsboot.1m397
-rw-r--r--usr/src/man/man1m/strace.1m176
-rw-r--r--usr/src/man/man1m/strclean.1m75
-rw-r--r--usr/src/man/man1m/strerr.1m137
-rw-r--r--usr/src/man/man1m/sttydefs.1m192
-rw-r--r--usr/src/man/man1m/su.1m299
-rw-r--r--usr/src/man/man1m/sulogin.1m91
-rw-r--r--usr/src/man/man1m/svc.configd.1m30
-rw-r--r--usr/src/man/man1m/svc.ipfd.1m619
-rw-r--r--usr/src/man/man1m/svc.startd.1m578
-rw-r--r--usr/src/man/man1m/svcadm.1m545
-rw-r--r--usr/src/man/man1m/svccfg.1m859
-rw-r--r--usr/src/man/man1m/swap.1m309
-rw-r--r--usr/src/man/man1m/sync.1m27
-rw-r--r--usr/src/man/man1m/syncinit.1m190
-rw-r--r--usr/src/man/man1m/syncloop.1m228
-rw-r--r--usr/src/man/man1m/syncstat.1m192
-rw-r--r--usr/src/man/man1m/sysdef.1m160
-rw-r--r--usr/src/man/man1m/syseventadm.1m468
-rw-r--r--usr/src/man/man1m/syseventconfd.1m78
-rw-r--r--usr/src/man/man1m/syseventd.1m154
-rw-r--r--usr/src/man/man1m/syslogd.1m366
-rw-r--r--usr/src/man/man1m/tapes.1m272
-rw-r--r--usr/src/man/man1m/tcpd.1m115
-rw-r--r--usr/src/man/man1m/tcpdchk.1m88
-rw-r--r--usr/src/man/man1m/tcpdmatch.1m115
-rw-r--r--usr/src/man/man1m/th_define.1m950
-rw-r--r--usr/src/man/man1m/th_manage.1m157
-rw-r--r--usr/src/man/man1m/tic.1m114
-rw-r--r--usr/src/man/man1m/tnchkdb.1m182
-rw-r--r--usr/src/man/man1m/tnctl.1m263
-rw-r--r--usr/src/man/man1m/tnd.1m220
-rw-r--r--usr/src/man/man1m/tninfo.1m175
-rw-r--r--usr/src/man/man1m/tpmadm.1m226
-rw-r--r--usr/src/man/man1m/traceroute.1m669
-rw-r--r--usr/src/man/man1m/trapstat.1m651
-rw-r--r--usr/src/man/man1m/ttyadm.1m223
-rw-r--r--usr/src/man/man1m/ttymon.1m327
-rw-r--r--usr/src/man/man1m/tunefs.1m128
-rw-r--r--usr/src/man/man1m/txzonemgr.1m62
-rw-r--r--usr/src/man/man1m/tzreload.1m78
-rw-r--r--usr/src/man/man1m/tzselect.1m79
-rw-r--r--usr/src/man/man1m/uadmin.1m75
-rw-r--r--usr/src/man/man1m/ucodeadm.1m175
-rw-r--r--usr/src/man/man1m/ufsdump.1m661
-rw-r--r--usr/src/man/man1m/ufsrestore.1m750
-rw-r--r--usr/src/man/man1m/unshare.1m90
-rw-r--r--usr/src/man/man1m/unshare_nfs.1m87
-rw-r--r--usr/src/man/man1m/update_drv.1m325
-rw-r--r--usr/src/man/man1m/updatehome.1m179
-rw-r--r--usr/src/man/man1m/useradd.1m562
-rw-r--r--usr/src/man/man1m/userdel.1m168
-rw-r--r--usr/src/man/man1m/usermod.1m587
-rw-r--r--usr/src/man/man1m/utmpd.1m167
-rw-r--r--usr/src/man/man1m/uucheck.1m123
-rw-r--r--usr/src/man/man1m/uucico.1m193
-rw-r--r--usr/src/man/man1m/uucleanup.1m161
-rw-r--r--usr/src/man/man1m/uusched.1m111
-rw-r--r--usr/src/man/man1m/uuxqt.1m109
-rw-r--r--usr/src/man/man1m/vfsstat.1m213
-rw-r--r--usr/src/man/man1m/vmstat.1m519
-rw-r--r--usr/src/man/man1m/vndadm.1m651
-rw-r--r--usr/src/man/man1m/vndstat.1m163
-rw-r--r--usr/src/man/man1m/vntsd.1m454
-rw-r--r--usr/src/man/man1m/volcopy.1m159
-rw-r--r--usr/src/man/man1m/volcopy_ufs.1m123
-rw-r--r--usr/src/man/man1m/vscanadm.1m680
-rw-r--r--usr/src/man/man1m/vscand.1m124
-rw-r--r--usr/src/man/man1m/wall.1m122
-rw-r--r--usr/src/man/man1m/whodo.1m208
-rw-r--r--usr/src/man/man1m/wificonfig.1m1055
-rw-r--r--usr/src/man/man1m/wpad.1m168
-rw-r--r--usr/src/man/man1m/wracct.1m178
-rw-r--r--usr/src/man/man1m/ypbind.1m161
-rw-r--r--usr/src/man/man1m/ypinit.1m124
-rw-r--r--usr/src/man/man1m/ypmake.1m106
-rw-r--r--usr/src/man/man1m/ypmap2src.1m146
-rw-r--r--usr/src/man/man1m/yppoll.1m44
-rw-r--r--usr/src/man/man1m/yppush.1m125
-rw-r--r--usr/src/man/man1m/ypserv.1m340
-rw-r--r--usr/src/man/man1m/ypset.1m92
-rw-r--r--usr/src/man/man1m/ypstart.1m46
-rw-r--r--usr/src/man/man1m/ypxfr.1m184
-rw-r--r--usr/src/man/man1m/zdb.1m425
-rw-r--r--usr/src/man/man1m/zdump.1m120
-rw-r--r--usr/src/man/man1m/zfs-program.1m602
-rw-r--r--usr/src/man/man1m/zfs.1m4855
-rw-r--r--usr/src/man/man1m/zic.1m584
-rw-r--r--usr/src/man/man1m/zoneadm.1m698
-rw-r--r--usr/src/man/man1m/zoneadmd.1m67
-rw-r--r--usr/src/man/man1m/zonecfg.1m2025
-rw-r--r--usr/src/man/man1m/zonestatd.1m90
-rw-r--r--usr/src/man/man1m/zpool.1m2547
-rw-r--r--usr/src/man/man1m/zstreamdump.1m64
-rwxr-xr-xusr/src/man/man1m/ztest.1m169
-rw-r--r--usr/src/man/man2/Intro.215
-rw-r--r--usr/src/man/man2/__sparc_utrap_install.25
-rw-r--r--usr/src/man/man2/_lwp_cond_signal.23
-rw-r--r--usr/src/man/man2/_lwp_cond_wait.28
-rw-r--r--usr/src/man/man2/_lwp_info.25
-rw-r--r--usr/src/man/man2/_lwp_kill.29
-rw-r--r--usr/src/man/man2/_lwp_mutex_lock.23
-rw-r--r--usr/src/man/man2/_lwp_self.24
-rw-r--r--usr/src/man/man2/_lwp_sema_wait.22
-rw-r--r--usr/src/man/man2/_lwp_suspend.24
-rw-r--r--usr/src/man/man2/access.211
-rw-r--r--usr/src/man/man2/acct.25
-rw-r--r--usr/src/man/man2/acl.27
-rw-r--r--usr/src/man/man2/adjtime.24
-rw-r--r--usr/src/man/man2/alarm.29
-rw-r--r--usr/src/man/man2/audit.219
-rw-r--r--usr/src/man/man2/auditon.213
-rw-r--r--usr/src/man/man2/brk.212
-rw-r--r--usr/src/man/man2/chdir.26
-rw-r--r--usr/src/man/man2/chmod.225
-rw-r--r--usr/src/man/man2/chown.212
-rw-r--r--usr/src/man/man2/chroot.24
-rw-r--r--usr/src/man/man2/close.210
-rw-r--r--usr/src/man/man2/creat.211
-rw-r--r--usr/src/man/man2/dup.216
-rw-r--r--usr/src/man/man2/exec.264
-rw-r--r--usr/src/man/man2/exit.235
-rw-r--r--usr/src/man/man2/fcntl.243
-rw-r--r--usr/src/man/man2/fork.225
-rw-r--r--usr/src/man/man2/fpathconf.212
-rw-r--r--usr/src/man/man2/getacct.26
-rw-r--r--usr/src/man/man2/getaudit.25
-rw-r--r--usr/src/man/man2/getauid.24
-rw-r--r--usr/src/man/man2/getcontext.216
-rw-r--r--usr/src/man/man2/getdents.26
-rw-r--r--usr/src/man/man2/getgroups.214
-rw-r--r--usr/src/man/man2/getisax.27
-rw-r--r--usr/src/man/man2/getitimer.211
-rw-r--r--usr/src/man/man2/getmsg.211
-rw-r--r--usr/src/man/man2/getpflags.29
-rw-r--r--usr/src/man/man2/getpid.217
-rw-r--r--usr/src/man/man2/getppriv.26
-rw-r--r--usr/src/man/man2/getrandom.24
-rw-r--r--usr/src/man/man2/getrlimit.227
-rw-r--r--usr/src/man/man2/getsid.212
-rw-r--r--usr/src/man/man2/getuid.27
-rw-r--r--usr/src/man/man2/getustack.210
-rw-r--r--usr/src/man/man2/ioctl.213
-rw-r--r--usr/src/man/man2/issetugid.210
-rw-r--r--usr/src/man/man2/kill.221
-rw-r--r--usr/src/man/man2/link.29
-rw-r--r--usr/src/man/man2/llseek.26
-rw-r--r--usr/src/man/man2/lseek.217
-rw-r--r--usr/src/man/man2/memcntl.218
-rw-r--r--usr/src/man/man2/meminfo.213
-rw-r--r--usr/src/man/man2/mincore.24
-rw-r--r--usr/src/man/man2/mkdir.211
-rw-r--r--usr/src/man/man2/mknod.224
-rw-r--r--usr/src/man/man2/mmap.229
-rw-r--r--usr/src/man/man2/mmapobj.217
-rw-r--r--usr/src/man/man2/mount.28
-rw-r--r--usr/src/man/man2/mprotect.211
-rw-r--r--usr/src/man/man2/msgctl.211
-rw-r--r--usr/src/man/man2/msgget.216
-rw-r--r--usr/src/man/man2/msgids.214
-rw-r--r--usr/src/man/man2/msgrcv.211
-rw-r--r--usr/src/man/man2/msgsnap.214
-rw-r--r--usr/src/man/man2/msgsnd.216
-rw-r--r--usr/src/man/man2/munmap.27
-rw-r--r--usr/src/man/man2/nice.211
-rw-r--r--usr/src/man/man2/ntp_adjtime.23
-rw-r--r--usr/src/man/man2/ntp_gettime.22
-rw-r--r--usr/src/man/man2/open.221
-rw-r--r--usr/src/man/man2/p_online.215
-rw-r--r--usr/src/man/man2/pause.210
-rw-r--r--usr/src/man/man2/pcsample.29
-rw-r--r--usr/src/man/man2/pipe.217
-rw-r--r--usr/src/man/man2/poll.215
-rw-r--r--usr/src/man/man2/priocntl.230
-rw-r--r--usr/src/man/man2/priocntlset.23
-rw-r--r--usr/src/man/man2/processor_bind.219
-rw-r--r--usr/src/man/man2/processor_info.28
-rw-r--r--usr/src/man/man2/profil.28
-rw-r--r--usr/src/man/man2/pset_bind.228
-rw-r--r--usr/src/man/man2/pset_create.220
-rw-r--r--usr/src/man/man2/pset_info.217
-rw-r--r--usr/src/man/man2/pset_list.214
-rw-r--r--usr/src/man/man2/pset_setattr.213
-rw-r--r--usr/src/man/man2/putmsg.213
-rw-r--r--usr/src/man/man2/read.229
-rw-r--r--usr/src/man/man2/readlink.27
-rw-r--r--usr/src/man/man2/rename.214
-rw-r--r--usr/src/man/man2/resolvepath.23
-rw-r--r--usr/src/man/man2/rmdir.210
-rw-r--r--usr/src/man/man2/semctl.211
-rw-r--r--usr/src/man/man2/semget.217
-rw-r--r--usr/src/man/man2/semids.211
-rw-r--r--usr/src/man/man2/semop.219
-rw-r--r--usr/src/man/man2/setpgid.212
-rw-r--r--usr/src/man/man2/setpgrp.215
-rw-r--r--usr/src/man/man2/setrctl.210
-rw-r--r--usr/src/man/man2/setregid.211
-rw-r--r--usr/src/man/man2/setreuid.213
-rw-r--r--usr/src/man/man2/setsid.29
-rw-r--r--usr/src/man/man2/settaskid.27
-rw-r--r--usr/src/man/man2/setuid.215
-rw-r--r--usr/src/man/man2/shmctl.211
-rw-r--r--usr/src/man/man2/shmget.216
-rw-r--r--usr/src/man/man2/shmids.211
-rw-r--r--usr/src/man/man2/shmop.216
-rw-r--r--usr/src/man/man2/sigaction.239
-rw-r--r--usr/src/man/man2/sigaltstack.210
-rw-r--r--usr/src/man/man2/sigpending.29
-rw-r--r--usr/src/man/man2/sigprocmask.215
-rw-r--r--usr/src/man/man2/sigsend.210
-rw-r--r--usr/src/man/man2/sigsuspend.211
-rw-r--r--usr/src/man/man2/sigwait.220
-rw-r--r--usr/src/man/man2/stat.230
-rw-r--r--usr/src/man/man2/statvfs.225
-rw-r--r--usr/src/man/man2/stime.23
-rw-r--r--usr/src/man/man2/swapctl.22
-rw-r--r--usr/src/man/man2/symlink.211
-rw-r--r--usr/src/man/man2/sync.211
-rw-r--r--usr/src/man/man2/sysinfo.222
-rw-r--r--usr/src/man/man2/time.27
-rw-r--r--usr/src/man/man2/times.215
-rw-r--r--usr/src/man/man2/uadmin.217
-rw-r--r--usr/src/man/man2/ulimit.210
-rw-r--r--usr/src/man/man2/umask.215
-rw-r--r--usr/src/man/man2/umount.23
-rw-r--r--usr/src/man/man2/uname.29
-rw-r--r--usr/src/man/man2/unlink.217
-rw-r--r--usr/src/man/man2/upanic.29
-rw-r--r--usr/src/man/man2/ustat.25
-rw-r--r--usr/src/man/man2/utime.212
-rw-r--r--usr/src/man/man2/utimes.213
-rw-r--r--usr/src/man/man2/uucopy.25
-rw-r--r--usr/src/man/man2/vfork.24
-rw-r--r--usr/src/man/man2/vhangup.24
-rw-r--r--usr/src/man/man2/waitid.218
-rw-r--r--usr/src/man/man2/write.235
-rw-r--r--usr/src/man/man2/yield.22
-rw-r--r--usr/src/man/man3/Intro.318
-rw-r--r--usr/src/man/man3/hosts_access.36
-rw-r--r--usr/src/man/man3bsm/au_open.3bsm10
-rw-r--r--usr/src/man/man3bsm/au_preselect.3bsm23
-rw-r--r--usr/src/man/man3bsm/au_to.3bsm5
-rw-r--r--usr/src/man/man3bsm/au_user_mask.3bsm9
-rw-r--r--usr/src/man/man3bsm/getauclassent.3bsm7
-rw-r--r--usr/src/man/man3bsm/getauditflags.3bsm5
-rw-r--r--usr/src/man/man3bsm/getauevent.3bsm13
-rw-r--r--usr/src/man/man3bsm/getfauditflags.3bsm6
-rw-r--r--usr/src/man/man3c/__fbufsize.3c11
-rw-r--r--usr/src/man/man3c/_longjmp.3c10
-rw-r--r--usr/src/man/man3c/_stack_grow.3c8
-rw-r--r--usr/src/man/man3c/a64l.3c5
-rw-r--r--usr/src/man/man3c/abort.3c15
-rw-r--r--usr/src/man/man3c/abs.3c5
-rw-r--r--usr/src/man/man3c/addsev.3c7
-rw-r--r--usr/src/man/man3c/addseverity.3c9
-rw-r--r--usr/src/man/man3c/aio_cancel.3c15
-rw-r--r--usr/src/man/man3c/aio_error.3c28
-rw-r--r--usr/src/man/man3c/aio_fsync.3c24
-rw-r--r--usr/src/man/man3c/aio_read.3c26
-rw-r--r--usr/src/man/man3c/aio_return.3c28
-rw-r--r--usr/src/man/man3c/aio_suspend.3c19
-rw-r--r--usr/src/man/man3c/aio_waitn.3c15
-rw-r--r--usr/src/man/man3c/aio_write.3c25
-rw-r--r--usr/src/man/man3c/aiocancel.3c6
-rw-r--r--usr/src/man/man3c/aioread.3c20
-rw-r--r--usr/src/man/man3c/aiowait.3c6
-rw-r--r--usr/src/man/man3c/aligned_alloc.3c2
-rw-r--r--usr/src/man/man3c/arc4random.3c2
-rw-r--r--usr/src/man/man3c/assert.3c11
-rw-r--r--usr/src/man/man3c/atexit.3c9
-rw-r--r--usr/src/man/man3c/atomic_add.3c16
-rw-r--r--usr/src/man/man3c/atomic_and.3c16
-rw-r--r--usr/src/man/man3c/atomic_bits.3c16
-rw-r--r--usr/src/man/man3c/atomic_cas.3c16
-rw-r--r--usr/src/man/man3c/atomic_dec.3c16
-rw-r--r--usr/src/man/man3c/atomic_inc.3c16
-rw-r--r--usr/src/man/man3c/atomic_ops.3c16
-rw-r--r--usr/src/man/man3c/atomic_or.3c16
-rw-r--r--usr/src/man/man3c/atomic_swap.3c16
-rw-r--r--usr/src/man/man3c/attropen.3c6
-rw-r--r--usr/src/man/man3c/basename.3c7
-rw-r--r--usr/src/man/man3c/bsd_signal.3c9
-rw-r--r--usr/src/man/man3c/bsearch.3c10
-rw-r--r--usr/src/man/man3c/bstring.3c6
-rw-r--r--usr/src/man/man3c/btowc.3c13
-rw-r--r--usr/src/man/man3c/byteorder.3c4
-rw-r--r--usr/src/man/man3c/c16rtomb.3c2
-rw-r--r--usr/src/man/man3c/call_once.3c4
-rw-r--r--usr/src/man/man3c/catgets.3c11
-rw-r--r--usr/src/man/man3c/catopen.3c11
-rw-r--r--usr/src/man/man3c/cfgetispeed.3c6
-rw-r--r--usr/src/man/man3c/cfsetispeed.3c6
-rw-r--r--usr/src/man/man3c/clearenv.3c6
-rw-r--r--usr/src/man/man3c/clock.3c10
-rw-r--r--usr/src/man/man3c/clock_nanosleep.3c12
-rw-r--r--usr/src/man/man3c/clock_settime.3c10
-rw-r--r--usr/src/man/man3c/closedir.3c2
-rw-r--r--usr/src/man/man3c/closefrom.3c7
-rw-r--r--usr/src/man/man3c/cnd.3c6
-rw-r--r--usr/src/man/man3c/cond_init.3c15
-rw-r--r--usr/src/man/man3c/confstr.3c26
-rw-r--r--usr/src/man/man3c/crypt.3c23
-rw-r--r--usr/src/man/man3c/crypt_genhash_impl.3c15
-rw-r--r--usr/src/man/man3c/crypt_gensalt.3c19
-rw-r--r--usr/src/man/man3c/crypt_gensalt_impl.3c15
-rw-r--r--usr/src/man/man3c/cset.3c6
-rw-r--r--usr/src/man/man3c/ctermid.3c5
-rw-r--r--usr/src/man/man3c/ctime.3c23
-rw-r--r--usr/src/man/man3c/ctype.3c14
-rw-r--r--usr/src/man/man3c/cuserid.3c6
-rw-r--r--usr/src/man/man3c/daemon.3c10
-rw-r--r--usr/src/man/man3c/decimal_to_floating.3c8
-rw-r--r--usr/src/man/man3c/difftime.3c6
-rw-r--r--usr/src/man/man3c/directio.3c13
-rw-r--r--usr/src/man/man3c/dirfd.3c16
-rw-r--r--usr/src/man/man3c/dirname.3c9
-rw-r--r--usr/src/man/man3c/div.3c5
-rw-r--r--usr/src/man/man3c/dladdr.3c11
-rw-r--r--usr/src/man/man3c/dlclose.3c15
-rw-r--r--usr/src/man/man3c/dldump.3c21
-rw-r--r--usr/src/man/man3c/dlerror.3c12
-rw-r--r--usr/src/man/man3c/dlinfo.3c21
-rw-r--r--usr/src/man/man3c/dlopen.3c15
-rw-r--r--usr/src/man/man3c/dlsym.3c15
-rw-r--r--usr/src/man/man3c/door_bind.3c9
-rw-r--r--usr/src/man/man3c/door_call.3c16
-rw-r--r--usr/src/man/man3c/door_create.3c18
-rw-r--r--usr/src/man/man3c/door_cred.3c8
-rw-r--r--usr/src/man/man3c/door_getparam.3c6
-rw-r--r--usr/src/man/man3c/door_info.3c12
-rw-r--r--usr/src/man/man3c/door_return.3c5
-rw-r--r--usr/src/man/man3c/door_revoke.3c6
-rw-r--r--usr/src/man/man3c/door_server_create.3c18
-rw-r--r--usr/src/man/man3c/door_ucred.3c8
-rw-r--r--usr/src/man/man3c/drand48.3c7
-rw-r--r--usr/src/man/man3c/dup2.3c14
-rw-r--r--usr/src/man/man3c/econvert.3c6
-rw-r--r--usr/src/man/man3c/ecvt.3c9
-rw-r--r--usr/src/man/man3c/enable_extended_FILE_stdio.3c19
-rw-r--r--usr/src/man/man3c/encrypt.3c6
-rw-r--r--usr/src/man/man3c/end.3c4
-rw-r--r--usr/src/man/man3c/endian.3c6
-rw-r--r--usr/src/man/man3c/epoll_create.3c10
-rw-r--r--usr/src/man/man3c/epoll_ctl.3c25
-rw-r--r--usr/src/man/man3c/epoll_wait.3c18
-rw-r--r--usr/src/man/man3c/err.3c9
-rw-r--r--usr/src/man/man3c/euclen.3c6
-rw-r--r--usr/src/man/man3c/eventfd.3c4
-rw-r--r--usr/src/man/man3c/exit.3c9
-rw-r--r--usr/src/man/man3c/fattach.3c15
-rw-r--r--usr/src/man/man3c/fclose.3c14
-rw-r--r--usr/src/man/man3c/fcloseall.3c6
-rw-r--r--usr/src/man/man3c/fdatasync.3c16
-rw-r--r--usr/src/man/man3c/fdetach.3c10
-rw-r--r--usr/src/man/man3c/fdopen.3c12
-rw-r--r--usr/src/man/man3c/fflush.3c7
-rw-r--r--usr/src/man/man3c/ffs.3c5
-rw-r--r--usr/src/man/man3c/fgetattr.3c15
-rw-r--r--usr/src/man/man3c/fgetc.3c30
-rw-r--r--usr/src/man/man3c/fgetpos.3c14
-rw-r--r--usr/src/man/man3c/fgetwc.3c29
-rw-r--r--usr/src/man/man3c/floating_to_decimal.3c10
-rw-r--r--usr/src/man/man3c/flock.3c19
-rw-r--r--usr/src/man/man3c/flockfile.3c17
-rw-r--r--usr/src/man/man3c/fmtmsg.3c10
-rw-r--r--usr/src/man/man3c/fnmatch.3c8
-rw-r--r--usr/src/man/man3c/fopen.3c22
-rw-r--r--usr/src/man/man3c/fpgetround.3c5
-rw-r--r--usr/src/man/man3c/fputc.3c22
-rw-r--r--usr/src/man/man3c/fputwc.3c15
-rw-r--r--usr/src/man/man3c/fputws.3c12
-rw-r--r--usr/src/man/man3c/fread.3c16
-rw-r--r--usr/src/man/man3c/freopen.3c15
-rw-r--r--usr/src/man/man3c/fseek.3c16
-rw-r--r--usr/src/man/man3c/fsetpos.3c17
-rw-r--r--usr/src/man/man3c/fsync.3c17
-rw-r--r--usr/src/man/man3c/ftell.3c13
-rw-r--r--usr/src/man/man3c/ftime.3c11
-rw-r--r--usr/src/man/man3c/ftok.3c10
-rw-r--r--usr/src/man/man3c/fts.3c2
-rw-r--r--usr/src/man/man3c/ftw.3c11
-rw-r--r--usr/src/man/man3c/fwide.3c5
-rw-r--r--usr/src/man/man3c/fwprintf.3c11
-rw-r--r--usr/src/man/man3c/fwrite.3c19
-rw-r--r--usr/src/man/man3c/fwscanf.3c31
-rw-r--r--usr/src/man/man3c/get_nprocs.3c6
-rw-r--r--usr/src/man/man3c/getcpuid.3c19
-rw-r--r--usr/src/man/man3c/getcwd.3c4
-rw-r--r--usr/src/man/man3c/getdate.3c14
-rw-r--r--usr/src/man/man3c/getdtablesize.3c7
-rw-r--r--usr/src/man/man3c/getentropy.3c2
-rw-r--r--usr/src/man/man3c/getenv.3c11
-rw-r--r--usr/src/man/man3c/getexecname.3c6
-rw-r--r--usr/src/man/man3c/getgrnam.3c21
-rw-r--r--usr/src/man/man3c/gethostid.3c11
-rw-r--r--usr/src/man/man3c/gethostname.3c9
-rw-r--r--usr/src/man/man3c/gethrtime.3c9
-rw-r--r--usr/src/man/man3c/getline.3c8
-rw-r--r--usr/src/man/man3c/getloadavg.3c10
-rw-r--r--usr/src/man/man3c/getlogin.3c16
-rw-r--r--usr/src/man/man3c/getmntent.3c10
-rw-r--r--usr/src/man/man3c/getnetgrent.3c15
-rw-r--r--usr/src/man/man3c/getopt.3c19
-rw-r--r--usr/src/man/man3c/getopt_long.3c2
-rw-r--r--usr/src/man/man3c/getpagesize.3c15
-rw-r--r--usr/src/man/man3c/getpagesizes.3c7
-rw-r--r--usr/src/man/man3c/getpass.3c5
-rw-r--r--usr/src/man/man3c/getpeerucred.3c8
-rw-r--r--usr/src/man/man3c/getpriority.3c12
-rw-r--r--usr/src/man/man3c/getprogname.3c2
-rw-r--r--usr/src/man/man3c/getpw.3c6
-rw-r--r--usr/src/man/man3c/getpwnam.3c31
-rw-r--r--usr/src/man/man3c/getrusage.3c14
-rw-r--r--usr/src/man/man3c/gets.3c22
-rw-r--r--usr/src/man/man3c/getspnam.3c22
-rw-r--r--usr/src/man/man3c/getsubopt.3c9
-rw-r--r--usr/src/man/man3c/gettext.3c14
-rw-r--r--usr/src/man/man3c/gettimeofday.3c13
-rw-r--r--usr/src/man/man3c/gettxt.3c12
-rw-r--r--usr/src/man/man3c/getutent.3c7
-rw-r--r--usr/src/man/man3c/getutxent.3c15
-rw-r--r--usr/src/man/man3c/getvfsent.3c7
-rw-r--r--usr/src/man/man3c/getwc.3c10
-rw-r--r--usr/src/man/man3c/getwchar.3c7
-rw-r--r--usr/src/man/man3c/getwd.3c4
-rw-r--r--usr/src/man/man3c/getwidth.3c6
-rw-r--r--usr/src/man/man3c/getws.3c17
-rw-r--r--usr/src/man/man3c/getzoneid.3c9
-rw-r--r--usr/src/man/man3c/glob.3c14
-rw-r--r--usr/src/man/man3c/grantpt.3c8
-rw-r--r--usr/src/man/man3c/hsearch.3c13
-rw-r--r--usr/src/man/man3c/iconv.3c14
-rw-r--r--usr/src/man/man3c/iconv_close.3c7
-rw-r--r--usr/src/man/man3c/iconv_open.3c12
-rw-r--r--usr/src/man/man3c/imaxabs.3c5
-rw-r--r--usr/src/man/man3c/imaxdiv.3c5
-rw-r--r--usr/src/man/man3c/index.3c9
-rw-r--r--usr/src/man/man3c/inet.3c6
-rw-r--r--usr/src/man/man3c/initgroups.3c6
-rw-r--r--usr/src/man/man3c/insque.3c5
-rw-r--r--usr/src/man/man3c/is_system_labeled.3c4
-rw-r--r--usr/src/man/man3c/isaexec.3c9
-rw-r--r--usr/src/man/man3c/isastream.3c6
-rw-r--r--usr/src/man/man3c/isatty.3c6
-rw-r--r--usr/src/man/man3c/isnand.3c6
-rw-r--r--usr/src/man/man3c/iswalpha.3c15
-rw-r--r--usr/src/man/man3c/iswctype.3c6
-rw-r--r--usr/src/man/man3c/killpg.3c10
-rw-r--r--usr/src/man/man3c/lckpwdf.3c11
-rw-r--r--usr/src/man/man3c/lfmt.3c14
-rw-r--r--usr/src/man/man3c/lio_listio.3c32
-rw-r--r--usr/src/man/man3c/localeconv.3c9
-rw-r--r--usr/src/man/man3c/lockf.3c20
-rw-r--r--usr/src/man/man3c/lsearch.3c10
-rw-r--r--usr/src/man/man3c/madvise.3c7
-rw-r--r--usr/src/man/man3c/makecontext.3c16
-rw-r--r--usr/src/man/man3c/makedev.3c6
-rw-r--r--usr/src/man/man3c/malloc.3c2
-rw-r--r--usr/src/man/man3c/mblen.3c6
-rw-r--r--usr/src/man/man3c/mbrlen.3c14
-rw-r--r--usr/src/man/man3c/mbrtoc16.3c2
-rw-r--r--usr/src/man/man3c/mbsinit.3c9
-rw-r--r--usr/src/man/man3c/mbsrtowcs.3c9
-rw-r--r--usr/src/man/man3c/mbstowcs.3c6
-rw-r--r--usr/src/man/man3c/mbtowc.3c14
-rw-r--r--usr/src/man/man3c/membar_ops.3c17
-rw-r--r--usr/src/man/man3c/memory.3c4
-rw-r--r--usr/src/man/man3c/mkfifo.3c13
-rw-r--r--usr/src/man/man3c/mkstemp.3c16
-rw-r--r--usr/src/man/man3c/mktemp.3c9
-rw-r--r--usr/src/man/man3c/mktime.3c9
-rw-r--r--usr/src/man/man3c/mlock.3c12
-rw-r--r--usr/src/man/man3c/mlockall.3c13
-rw-r--r--usr/src/man/man3c/monitor.3c7
-rw-r--r--usr/src/man/man3c/mq_close.3c12
-rw-r--r--usr/src/man/man3c/mq_getattr.3c17
-rw-r--r--usr/src/man/man3c/mq_notify.3c16
-rw-r--r--usr/src/man/man3c/mq_open.3c20
-rw-r--r--usr/src/man/man3c/mq_receive.3c12
-rw-r--r--usr/src/man/man3c/mq_send.3c14
-rw-r--r--usr/src/man/man3c/mq_setattr.3c19
-rw-r--r--usr/src/man/man3c/mq_unlink.3c11
-rw-r--r--usr/src/man/man3c/msync.3c9
-rw-r--r--usr/src/man/man3c/mtx.3c4
-rw-r--r--usr/src/man/man3c/mutex_init.3c20
-rw-r--r--usr/src/man/man3c/nanosleep.3c9
-rw-r--r--usr/src/man/man3c/ndbm.3c12
-rw-r--r--usr/src/man/man3c/newlocale.3c10
-rw-r--r--usr/src/man/man3c/nl_langinfo.3c12
-rw-r--r--usr/src/man/man3c/offsetof.3c4
-rw-r--r--usr/src/man/man3c/opendir.3c2
-rw-r--r--usr/src/man/man3c/perror.3c14
-rw-r--r--usr/src/man/man3c/pfmt.3c14
-rw-r--r--usr/src/man/man3c/plock.3c11
-rw-r--r--usr/src/man/man3c/popen.3c17
-rw-r--r--usr/src/man/man3c/port_alert.3c9
-rw-r--r--usr/src/man/man3c/port_associate.3c16
-rw-r--r--usr/src/man/man3c/port_create.3c27
-rw-r--r--usr/src/man/man3c/port_get.3c9
-rw-r--r--usr/src/man/man3c/port_send.3c14
-rw-r--r--usr/src/man/man3c/posix_fadvise.3c10
-rw-r--r--usr/src/man/man3c/posix_fallocate.3c14
-rw-r--r--usr/src/man/man3c/posix_madvise.3c8
-rw-r--r--usr/src/man/man3c/posix_memalign.3c11
-rw-r--r--usr/src/man/man3c/posix_openpt.3c10
-rw-r--r--usr/src/man/man3c/posix_spawn.3c72
-rw-r--r--usr/src/man/man3c/posix_spawn_file_actions_addclose.3c16
-rw-r--r--usr/src/man/man3c/posix_spawn_file_actions_addclosefrom_np.3c9
-rw-r--r--usr/src/man/man3c/posix_spawn_file_actions_adddup2.3c12
-rw-r--r--usr/src/man/man3c/posix_spawn_file_actions_destroy.3c8
-rw-r--r--usr/src/man/man3c/posix_spawn_pipe_np.3c54
-rw-r--r--usr/src/man/man3c/posix_spawnattr_destroy.3c16
-rw-r--r--usr/src/man/man3c/posix_spawnattr_getflags.3c18
-rw-r--r--usr/src/man/man3c/posix_spawnattr_getpgroup.3c10
-rw-r--r--usr/src/man/man3c/posix_spawnattr_getschedparam.3c16
-rw-r--r--usr/src/man/man3c/posix_spawnattr_getschedpolicy.3c16
-rw-r--r--usr/src/man/man3c/posix_spawnattr_getsigdefault.3c16
-rw-r--r--usr/src/man/man3c/posix_spawnattr_getsigignore_np.3c17
-rw-r--r--usr/src/man/man3c/posix_spawnattr_getsigmask.3c7
-rw-r--r--usr/src/man/man3c/printf.3c38
-rw-r--r--usr/src/man/man3c/priv_addset.3c9
-rw-r--r--usr/src/man/man3c/priv_set.3c8
-rw-r--r--usr/src/man/man3c/priv_str_to_set.3c9
-rw-r--r--usr/src/man/man3c/pset_getloadavg.3c13
-rw-r--r--usr/src/man/man3c/psignal.3c11
-rw-r--r--usr/src/man/man3c/pthread_atfork.3c9
-rw-r--r--usr/src/man/man3c/pthread_attr_get_np.3c4
-rw-r--r--usr/src/man/man3c/pthread_attr_getdetachstate.3c11
-rw-r--r--usr/src/man/man3c/pthread_attr_getguardsize.3c8
-rw-r--r--usr/src/man/man3c/pthread_attr_getinheritsched.3c14
-rw-r--r--usr/src/man/man3c/pthread_attr_getschedparam.3c16
-rw-r--r--usr/src/man/man3c/pthread_attr_getschedpolicy.3c19
-rw-r--r--usr/src/man/man3c/pthread_attr_getscope.3c14
-rw-r--r--usr/src/man/man3c/pthread_attr_getstack.3c10
-rw-r--r--usr/src/man/man3c/pthread_attr_getstackaddr.3c11
-rw-r--r--usr/src/man/man3c/pthread_attr_getstacksize.3c11
-rw-r--r--usr/src/man/man3c/pthread_attr_init.3c36
-rw-r--r--usr/src/man/man3c/pthread_barrier_destroy.3c6
-rw-r--r--usr/src/man/man3c/pthread_barrier_wait.3c6
-rw-r--r--usr/src/man/man3c/pthread_barrierattr_destroy.3c7
-rw-r--r--usr/src/man/man3c/pthread_barrierattr_getpshared.3c8
-rw-r--r--usr/src/man/man3c/pthread_cancel.3c28
-rw-r--r--usr/src/man/man3c/pthread_cleanup_pop.3c21
-rw-r--r--usr/src/man/man3c/pthread_cleanup_push.3c23
-rw-r--r--usr/src/man/man3c/pthread_cond_init.3c14
-rw-r--r--usr/src/man/man3c/pthread_cond_signal.3c11
-rw-r--r--usr/src/man/man3c/pthread_cond_wait.3c17
-rw-r--r--usr/src/man/man3c/pthread_condattr_getclock.3c14
-rw-r--r--usr/src/man/man3c/pthread_condattr_getpshared.3c11
-rw-r--r--usr/src/man/man3c/pthread_condattr_init.3c12
-rw-r--r--usr/src/man/man3c/pthread_create.3c13
-rw-r--r--usr/src/man/man3c/pthread_detach.3c8
-rw-r--r--usr/src/man/man3c/pthread_equal.3c8
-rw-r--r--usr/src/man/man3c/pthread_exit.3c14
-rw-r--r--usr/src/man/man3c/pthread_getconcurrency.3c8
-rw-r--r--usr/src/man/man3c/pthread_getschedparam.3c22
-rw-r--r--usr/src/man/man3c/pthread_getspecific.3c6
-rw-r--r--usr/src/man/man3c/pthread_join.3c11
-rw-r--r--usr/src/man/man3c/pthread_key_create.3c13
-rw-r--r--usr/src/man/man3c/pthread_key_delete.3c6
-rw-r--r--usr/src/man/man3c/pthread_kill.3c10
-rw-r--r--usr/src/man/man3c/pthread_mutex_consistent.3c4
-rw-r--r--usr/src/man/man3c/pthread_mutex_getprioceiling.3c11
-rw-r--r--usr/src/man/man3c/pthread_mutex_init.3c18
-rw-r--r--usr/src/man/man3c/pthread_mutex_lock.3c14
-rw-r--r--usr/src/man/man3c/pthread_mutex_timedlock.3c10
-rw-r--r--usr/src/man/man3c/pthread_mutexattr_getprioceiling.3c14
-rw-r--r--usr/src/man/man3c/pthread_mutexattr_getprotocol.3c14
-rw-r--r--usr/src/man/man3c/pthread_mutexattr_getpshared.3c11
-rw-r--r--usr/src/man/man3c/pthread_mutexattr_getrobust.3c4
-rw-r--r--usr/src/man/man3c/pthread_mutexattr_gettype.3c8
-rw-r--r--usr/src/man/man3c/pthread_mutexattr_init.3c11
-rw-r--r--usr/src/man/man3c/pthread_once.3c5
-rw-r--r--usr/src/man/man3c/pthread_rwlock_init.3c11
-rw-r--r--usr/src/man/man3c/pthread_rwlock_rdlock.3c11
-rw-r--r--usr/src/man/man3c/pthread_rwlock_timedrdlock.3c14
-rw-r--r--usr/src/man/man3c/pthread_rwlock_timedwrlock.3c14
-rw-r--r--usr/src/man/man3c/pthread_rwlock_unlock.3c11
-rw-r--r--usr/src/man/man3c/pthread_rwlock_wrlock.3c11
-rw-r--r--usr/src/man/man3c/pthread_rwlockattr_getpshared.3c12
-rw-r--r--usr/src/man/man3c/pthread_rwlockattr_init.3c13
-rw-r--r--usr/src/man/man3c/pthread_self.3c8
-rw-r--r--usr/src/man/man3c/pthread_setcancelstate.3c23
-rw-r--r--usr/src/man/man3c/pthread_setcanceltype.3c21
-rw-r--r--usr/src/man/man3c/pthread_setschedprio.3c8
-rw-r--r--usr/src/man/man3c/pthread_sigmask.3c24
-rw-r--r--usr/src/man/man3c/pthread_spin_destroy.3c8
-rw-r--r--usr/src/man/man3c/pthread_spin_lock.3c8
-rw-r--r--usr/src/man/man3c/pthread_spin_unlock.3c8
-rw-r--r--usr/src/man/man3c/pthread_testcancel.3c23
-rw-r--r--usr/src/man/man3c/ptrace.3c16
-rw-r--r--usr/src/man/man3c/ptsname.3c10
-rw-r--r--usr/src/man/man3c/putenv.3c10
-rw-r--r--usr/src/man/man3c/putpwent.3c6
-rw-r--r--usr/src/man/man3c/puts.3c19
-rw-r--r--usr/src/man/man3c/putspent.3c7
-rw-r--r--usr/src/man/man3c/putws.3c11
-rw-r--r--usr/src/man/man3c/qsort.3c4
-rw-r--r--usr/src/man/man3c/quick_exit.3c4
-rw-r--r--usr/src/man/man3c/raise.3c9
-rw-r--r--usr/src/man/man3c/rand.3c6
-rw-r--r--usr/src/man/man3c/random.3c9
-rw-r--r--usr/src/man/man3c/rctl_walk.3c5
-rw-r--r--usr/src/man/man3c/rctlblk_set_value.3c11
-rw-r--r--usr/src/man/man3c/re_comp.3c14
-rw-r--r--usr/src/man/man3c/readdir.3c10
-rw-r--r--usr/src/man/man3c/realpath.3c9
-rw-r--r--usr/src/man/man3c/reboot.3c14
-rw-r--r--usr/src/man/man3c/regcmp.3c11
-rw-r--r--usr/src/man/man3c/regcomp.3c12
-rw-r--r--usr/src/man/man3c/remove.3c7
-rw-r--r--usr/src/man/man3c/rewind.3c6
-rw-r--r--usr/src/man/man3c/rewinddir.3c11
-rw-r--r--usr/src/man/man3c/rwlock.3c5
-rw-r--r--usr/src/man/man3c/scandir.3c12
-rw-r--r--usr/src/man/man3c/scanf.3c24
-rw-r--r--usr/src/man/man3c/sched_get_priority_max.3c18
-rw-r--r--usr/src/man/man3c/sched_getparam.3c14
-rw-r--r--usr/src/man/man3c/sched_getscheduler.3c14
-rw-r--r--usr/src/man/man3c/sched_rr_get_interval.3c17
-rw-r--r--usr/src/man/man3c/sched_setparam.3c16
-rw-r--r--usr/src/man/man3c/sched_setscheduler.3c20
-rw-r--r--usr/src/man/man3c/sched_yield.3c10
-rw-r--r--usr/src/man/man3c/schedctl_init.3c12
-rw-r--r--usr/src/man/man3c/seekdir.3c10
-rw-r--r--usr/src/man/man3c/select.3c4
-rw-r--r--usr/src/man/man3c/sem_close.3c11
-rw-r--r--usr/src/man/man3c/sem_destroy.3c9
-rw-r--r--usr/src/man/man3c/sem_getvalue.3c13
-rw-r--r--usr/src/man/man3c/sem_init.3c12
-rw-r--r--usr/src/man/man3c/sem_open.3c18
-rw-r--r--usr/src/man/man3c/sem_post.3c13
-rw-r--r--usr/src/man/man3c/sem_timedwait.3c16
-rw-r--r--usr/src/man/man3c/sem_unlink.3c12
-rw-r--r--usr/src/man/man3c/sem_wait.3c8
-rw-r--r--usr/src/man/man3c/semaphore.3c18
-rw-r--r--usr/src/man/man3c/setbuf.3c11
-rw-r--r--usr/src/man/man3c/setbuffer.3c13
-rw-r--r--usr/src/man/man3c/setcat.3c10
-rw-r--r--usr/src/man/man3c/setenv.3c7
-rw-r--r--usr/src/man/man3c/setjmp.3c13
-rw-r--r--usr/src/man/man3c/setkey.3c7
-rw-r--r--usr/src/man/man3c/setlabel.3c7
-rw-r--r--usr/src/man/man3c/setlocale.3c20
-rw-r--r--usr/src/man/man3c/shm_open.3c18
-rw-r--r--usr/src/man/man3c/shm_unlink.3c12
-rw-r--r--usr/src/man/man3c/sigfpe.3c9
-rw-r--r--usr/src/man/man3c/siginterrupt.3c8
-rw-r--r--usr/src/man/man3c/signal.3c15
-rw-r--r--usr/src/man/man3c/signalfd.3c4
-rw-r--r--usr/src/man/man3c/sigqueue.3c12
-rw-r--r--usr/src/man/man3c/sigsetops.3c12
-rw-r--r--usr/src/man/man3c/sigstack.3c9
-rw-r--r--usr/src/man/man3c/sigwaitinfo.3c14
-rw-r--r--usr/src/man/man3c/sleep.3c8
-rw-r--r--usr/src/man/man3c/smt_pause.3c2
-rw-r--r--usr/src/man/man3c/ssignal.3c6
-rw-r--r--usr/src/man/man3c/stack_getbounds.3c9
-rw-r--r--usr/src/man/man3c/stack_inbounds.3c5
-rw-r--r--usr/src/man/man3c/stack_setbounds.3c10
-rw-r--r--usr/src/man/man3c/stack_violation.3c10
-rw-r--r--usr/src/man/man3c/stdio.3c14
-rw-r--r--usr/src/man/man3c/str2sig.3c3
-rw-r--r--usr/src/man/man3c/strcoll.3c15
-rw-r--r--usr/src/man/man3c/strerror.3c10
-rw-r--r--usr/src/man/man3c/strfmon.3c6
-rw-r--r--usr/src/man/man3c/strftime.3c21
-rw-r--r--usr/src/man/man3c/string.3c14
-rw-r--r--usr/src/man/man3c/string_to_decimal.3c15
-rw-r--r--usr/src/man/man3c/strptime.3c22
-rw-r--r--usr/src/man/man3c/strsignal.3c9
-rw-r--r--usr/src/man/man3c/strtod.3c12
-rw-r--r--usr/src/man/man3c/strtoimax.3c7
-rw-r--r--usr/src/man/man3c/strtol.3c11
-rw-r--r--usr/src/man/man3c/strtoul.3c11
-rw-r--r--usr/src/man/man3c/strtows.3c2
-rw-r--r--usr/src/man/man3c/strxfrm.3c15
-rw-r--r--usr/src/man/man3c/swab.3c5
-rw-r--r--usr/src/man/man3c/sync_instruction_memory.3c4
-rw-r--r--usr/src/man/man3c/sysconf.3c14
-rw-r--r--usr/src/man/man3c/syslog.3c39
-rw-r--r--usr/src/man/man3c/system.3c12
-rw-r--r--usr/src/man/man3c/tcdrain.3c7
-rw-r--r--usr/src/man/man3c/tcflow.3c8
-rw-r--r--usr/src/man/man3c/tcflush.3c7
-rw-r--r--usr/src/man/man3c/tcgetattr.3c9
-rw-r--r--usr/src/man/man3c/tcgetpgrp.3c10
-rw-r--r--usr/src/man/man3c/tcgetsid.3c6
-rw-r--r--usr/src/man/man3c/tcsendbreak.3c7
-rw-r--r--usr/src/man/man3c/tcsetattr.3c11
-rw-r--r--usr/src/man/man3c/tcsetpgrp.3c7
-rw-r--r--usr/src/man/man3c/tell.3c5
-rw-r--r--usr/src/man/man3c/telldir.3c9
-rw-r--r--usr/src/man/man3c/termios.3c23
-rw-r--r--usr/src/man/man3c/thr_create.3c19
-rw-r--r--usr/src/man/man3c/thr_exit.3c10
-rw-r--r--usr/src/man/man3c/thr_getconcurrency.3c6
-rw-r--r--usr/src/man/man3c/thr_getprio.3c13
-rw-r--r--usr/src/man/man3c/thr_join.3c9
-rw-r--r--usr/src/man/man3c/thr_keycreate.3c8
-rw-r--r--usr/src/man/man3c/thr_kill.3c11
-rw-r--r--usr/src/man/man3c/thr_main.3c5
-rw-r--r--usr/src/man/man3c/thr_min_stack.3c5
-rw-r--r--usr/src/man/man3c/thr_self.3c6
-rw-r--r--usr/src/man/man3c/thr_sigsetmask.3c24
-rw-r--r--usr/src/man/man3c/thr_stksegment.3c6
-rw-r--r--usr/src/man/man3c/thr_suspend.3c8
-rw-r--r--usr/src/man/man3c/thr_yield.3c6
-rw-r--r--usr/src/man/man3c/thrd_create.3c4
-rw-r--r--usr/src/man/man3c/thrd_current.3c4
-rw-r--r--usr/src/man/man3c/thrd_detach.3c4
-rw-r--r--usr/src/man/man3c/thrd_equal.3c4
-rw-r--r--usr/src/man/man3c/thrd_exit.3c6
-rw-r--r--usr/src/man/man3c/thrd_join.3c4
-rw-r--r--usr/src/man/man3c/thrd_yield.3c4
-rw-r--r--usr/src/man/man3c/timer_create.3c17
-rw-r--r--usr/src/man/man3c/timer_delete.3c8
-rw-r--r--usr/src/man/man3c/timer_settime.3c14
-rw-r--r--usr/src/man/man3c/timeradd.3c5
-rw-r--r--usr/src/man/man3c/timerfd_create.3c4
-rw-r--r--usr/src/man/man3c/timespec_get.3c2
-rw-r--r--usr/src/man/man3c/tmpfile.3c13
-rw-r--r--usr/src/man/man3c/tmpnam.3c15
-rw-r--r--usr/src/man/man3c/toascii.3c6
-rw-r--r--usr/src/man/man3c/tolower.3c9
-rw-r--r--usr/src/man/man3c/toupper.3c10
-rw-r--r--usr/src/man/man3c/towlower.3c2
-rw-r--r--usr/src/man/man3c/towupper.3c2
-rw-r--r--usr/src/man/man3c/truncate.3c12
-rw-r--r--usr/src/man/man3c/tsearch.3c9
-rw-r--r--usr/src/man/man3c/tss.3c2
-rw-r--r--usr/src/man/man3c/ttyname.3c11
-rw-r--r--usr/src/man/man3c/ttyslot.3c7
-rw-r--r--usr/src/man/man3c/u8_strcmp.3c10
-rw-r--r--usr/src/man/man3c/u8_textprep_str.3c10
-rw-r--r--usr/src/man/man3c/u8_validate.3c10
-rw-r--r--usr/src/man/man3c/ualarm.3c4
-rw-r--r--usr/src/man/man3c/uconv_u16tou32.3c5
-rw-r--r--usr/src/man/man3c/ucred.3c14
-rw-r--r--usr/src/man/man3c/ungetc.3c15
-rw-r--r--usr/src/man/man3c/ungetwc.3c11
-rw-r--r--usr/src/man/man3c/unlockpt.3c8
-rw-r--r--usr/src/man/man3c/unsetenv.3c9
-rw-r--r--usr/src/man/man3c/uselocale.3c2
-rw-r--r--usr/src/man/man3c/usleep.3c4
-rw-r--r--usr/src/man/man3c/vfwprintf.3c8
-rw-r--r--usr/src/man/man3c/vlfmt.3c7
-rw-r--r--usr/src/man/man3c/vpfmt.3c7
-rw-r--r--usr/src/man/man3c/vprintf.3c11
-rw-r--r--usr/src/man/man3c/vsyslog.3c5
-rw-r--r--usr/src/man/man3c/wait.3c17
-rw-r--r--usr/src/man/man3c/wait3.3c16
-rw-r--r--usr/src/man/man3c/waitpid.3c20
-rw-r--r--usr/src/man/man3c/walkcontext.3c10
-rw-r--r--usr/src/man/man3c/wcpcpy.3c2
-rw-r--r--usr/src/man/man3c/wcscasecmp.3c4
-rw-r--r--usr/src/man/man3c/wcscoll.3c12
-rw-r--r--usr/src/man/man3c/wcsdup.3c4
-rw-r--r--usr/src/man/man3c/wcsftime.3c9
-rw-r--r--usr/src/man/man3c/wcslen.3c4
-rw-r--r--usr/src/man/man3c/wcsrtombs.3c15
-rw-r--r--usr/src/man/man3c/wcsstr.3c6
-rw-r--r--usr/src/man/man3c/wcstod.3c12
-rw-r--r--usr/src/man/man3c/wcstoimax.3c7
-rw-r--r--usr/src/man/man3c/wcstol.3c10
-rw-r--r--usr/src/man/man3c/wcstombs.3c6
-rw-r--r--usr/src/man/man3c/wcstoul.3c11
-rw-r--r--usr/src/man/man3c/wcstring.3c22
-rw-r--r--usr/src/man/man3c/wcsxfrm.3c11
-rw-r--r--usr/src/man/man3c/wctob.3c13
-rw-r--r--usr/src/man/man3c/wctomb.3c14
-rw-r--r--usr/src/man/man3c/wctrans.3c4
-rw-r--r--usr/src/man/man3c/wctype.3c12
-rw-r--r--usr/src/man/man3c/wcwidth.3c11
-rw-r--r--usr/src/man/man3c/wmemchr.3c10
-rw-r--r--usr/src/man/man3c/wmemcmp.3c10
-rw-r--r--usr/src/man/man3c/wmemcpy.3c10
-rw-r--r--usr/src/man/man3c/wmemmove.3c10
-rw-r--r--usr/src/man/man3c/wmemset.3c10
-rw-r--r--usr/src/man/man3c/wordexp.3c7
-rw-r--r--usr/src/man/man3c/wsprintf.3c9
-rw-r--r--usr/src/man/man3c/wsscanf.3c7
-rw-r--r--usr/src/man/man3c/wstring.3c7
-rw-r--r--usr/src/man/man3c_db/td_init.3c_db5
-rw-r--r--usr/src/man/man3c_db/td_log.3c_db6
-rw-r--r--usr/src/man/man3c_db/td_sync_get_info.3c_db4
-rw-r--r--usr/src/man/man3c_db/td_ta_enable_stats.3c_db6
-rw-r--r--usr/src/man/man3c_db/td_ta_event_addr.3c_db5
-rw-r--r--usr/src/man/man3c_db/td_ta_get_nthreads.3c_db6
-rw-r--r--usr/src/man/man3c_db/td_ta_map_addr2sync.3c_db5
-rw-r--r--usr/src/man/man3c_db/td_ta_map_id2thr.3c_db8
-rw-r--r--usr/src/man/man3c_db/td_ta_new.3c_db6
-rw-r--r--usr/src/man/man3c_db/td_ta_setconcurrency.3c_db8
-rw-r--r--usr/src/man/man3c_db/td_ta_sync_iter.3c_db4
-rw-r--r--usr/src/man/man3c_db/td_thr_dbsuspend.3c_db5
-rw-r--r--usr/src/man/man3c_db/td_thr_get_info.3c_db12
-rw-r--r--usr/src/man/man3c_db/td_thr_getgregs.3c_db5
-rw-r--r--usr/src/man/man3c_db/td_thr_lockowner.3c_db4
-rw-r--r--usr/src/man/man3c_db/td_thr_setprio.3c_db6
-rw-r--r--usr/src/man/man3c_db/td_thr_setsigpending.3c_db6
-rw-r--r--usr/src/man/man3c_db/td_thr_sleepinfo.3c_db5
-rw-r--r--usr/src/man/man3c_db/td_thr_tsd.3c_db4
-rw-r--r--usr/src/man/man3c_db/td_thr_validate.3c_db5
-rw-r--r--usr/src/man/man3cfgadm/config_admin.3cfgadm20
-rw-r--r--usr/src/man/man3commputil/sdp_add_origin.3commputil10
-rw-r--r--usr/src/man/man3commputil/sdp_clone_session.3commputil7
-rw-r--r--usr/src/man/man3commputil/sdp_delete_all_field.3commputil5
-rw-r--r--usr/src/man/man3commputil/sdp_delete_media.3commputil10
-rw-r--r--usr/src/man/man3commputil/sdp_find_attribute.3commputil6
-rw-r--r--usr/src/man/man3commputil/sdp_find_media.3commputil6
-rw-r--r--usr/src/man/man3commputil/sdp_find_media_rtpmap.3commputil6
-rw-r--r--usr/src/man/man3commputil/sdp_new_session.3commputil5
-rw-r--r--usr/src/man/man3commputil/sdp_parse.3commputil7
-rw-r--r--usr/src/man/man3commputil/sdp_session_to_str.3commputil5
-rw-r--r--usr/src/man/man3contract/ct_ctl_adopt.3contract10
-rw-r--r--usr/src/man/man3contract/ct_dev_status_get_dev_state.3contract12
-rw-r--r--usr/src/man/man3contract/ct_dev_tmpl_set_aset.3contract11
-rw-r--r--usr/src/man/man3contract/ct_event_read.3contract12
-rw-r--r--usr/src/man/man3contract/ct_pr_event_get_pid.3contract13
-rw-r--r--usr/src/man/man3contract/ct_pr_status_get_param.3contract16
-rw-r--r--usr/src/man/man3contract/ct_pr_tmpl_set_transfer.3contract16
-rw-r--r--usr/src/man/man3contract/ct_status_read.3contract10
-rw-r--r--usr/src/man/man3contract/ct_tmpl_activate.3contract12
-rw-r--r--usr/src/man/man3cpc/cpc.3cpc6
-rw-r--r--usr/src/man/man3cpc/cpc_access.3cpc10
-rw-r--r--usr/src/man/man3cpc/cpc_bind_curlwp.3cpc17
-rw-r--r--usr/src/man/man3cpc/cpc_bind_event.3cpc17
-rw-r--r--usr/src/man/man3cpc/cpc_buf_create.3cpc8
-rw-r--r--usr/src/man/man3cpc/cpc_count_usr_events.3cpc16
-rw-r--r--usr/src/man/man3cpc/cpc_enable.3cpc9
-rw-r--r--usr/src/man/man3cpc/cpc_event.3cpc9
-rw-r--r--usr/src/man/man3cpc/cpc_event_diff.3cpc10
-rw-r--r--usr/src/man/man3cpc/cpc_getcpuver.3cpc13
-rw-r--r--usr/src/man/man3cpc/cpc_npic.3cpc8
-rw-r--r--usr/src/man/man3cpc/cpc_open.3cpc5
-rw-r--r--usr/src/man/man3cpc/cpc_pctx_bind_event.3cpc10
-rw-r--r--usr/src/man/man3cpc/cpc_set_create.3cpc12
-rw-r--r--usr/src/man/man3cpc/cpc_seterrfn.3cpc9
-rw-r--r--usr/src/man/man3cpc/cpc_seterrhndlr.3cpc8
-rw-r--r--usr/src/man/man3cpc/cpc_shared_open.3cpc14
-rw-r--r--usr/src/man/man3cpc/cpc_strtoevent.3cpc13
-rw-r--r--usr/src/man/man3cpc/cpc_version.3cpc7
-rw-r--r--usr/src/man/man3cpc/generic_events.3cpc5
-rw-r--r--usr/src/man/man3cpc/pctx_capture.3cpc14
-rw-r--r--usr/src/man/man3cpc/pctx_set_events.3cpc13
-rw-r--r--usr/src/man/man3curses/curs_addch.3curses13
-rw-r--r--usr/src/man/man3curses/curs_addchstr.3curses6
-rw-r--r--usr/src/man/man3curses/curs_addstr.3curses6
-rw-r--r--usr/src/man/man3curses/curs_addwch.3curses17
-rw-r--r--usr/src/man/man3curses/curs_addwchstr.3curses6
-rw-r--r--usr/src/man/man3curses/curs_addwstr.3curses6
-rw-r--r--usr/src/man/man3curses/curs_alecompat.3curses6
-rw-r--r--usr/src/man/man3curses/curs_attr.3curses9
-rw-r--r--usr/src/man/man3curses/curs_beep.3curses5
-rw-r--r--usr/src/man/man3curses/curs_bkgd.3curses8
-rw-r--r--usr/src/man/man3curses/curs_border.3curses6
-rw-r--r--usr/src/man/man3curses/curs_clear.3curses8
-rw-r--r--usr/src/man/man3curses/curs_color.3curses8
-rw-r--r--usr/src/man/man3curses/curs_delch.3curses5
-rw-r--r--usr/src/man/man3curses/curs_deleteln.3curses5
-rw-r--r--usr/src/man/man3curses/curs_getch.3curses9
-rw-r--r--usr/src/man/man3curses/curs_getstr.3curses6
-rw-r--r--usr/src/man/man3curses/curs_getwch.3curses12
-rw-r--r--usr/src/man/man3curses/curs_getwstr.3curses6
-rw-r--r--usr/src/man/man3curses/curs_getyx.3curses5
-rw-r--r--usr/src/man/man3curses/curs_inch.3curses5
-rw-r--r--usr/src/man/man3curses/curs_inchstr.3curses6
-rw-r--r--usr/src/man/man3curses/curs_initscr.3curses11
-rw-r--r--usr/src/man/man3curses/curs_inopts.3curses13
-rw-r--r--usr/src/man/man3curses/curs_insch.3curses5
-rw-r--r--usr/src/man/man3curses/curs_insstr.3curses8
-rw-r--r--usr/src/man/man3curses/curs_instr.3curses5
-rw-r--r--usr/src/man/man3curses/curs_inswch.3curses5
-rw-r--r--usr/src/man/man3curses/curs_inswstr.3curses8
-rw-r--r--usr/src/man/man3curses/curs_inwch.3curses5
-rw-r--r--usr/src/man/man3curses/curs_inwchstr.3curses6
-rw-r--r--usr/src/man/man3curses/curs_inwstr.3curses5
-rw-r--r--usr/src/man/man3curses/curs_kernel.3curses12
-rw-r--r--usr/src/man/man3curses/curs_move.3curses6
-rw-r--r--usr/src/man/man3curses/curs_outopts.3curses12
-rw-r--r--usr/src/man/man3curses/curs_overlay.3curses8
-rw-r--r--usr/src/man/man3curses/curs_pad.3curses16
-rw-r--r--usr/src/man/man3curses/curs_printw.3curses7
-rw-r--r--usr/src/man/man3curses/curs_refresh.3curses6
-rw-r--r--usr/src/man/man3curses/curs_scanw.3curses9
-rw-r--r--usr/src/man/man3curses/curs_scr_dump.3curses11
-rw-r--r--usr/src/man/man3curses/curs_scroll.3curses6
-rw-r--r--usr/src/man/man3curses/curs_slk.3curses9
-rw-r--r--usr/src/man/man3curses/curs_termattrs.3curses8
-rw-r--r--usr/src/man/man3curses/curs_termcap.3curses8
-rw-r--r--usr/src/man/man3curses/curs_terminfo.3curses16
-rw-r--r--usr/src/man/man3curses/curs_touch.3curses6
-rw-r--r--usr/src/man/man3curses/curs_util.3curses8
-rw-r--r--usr/src/man/man3curses/curs_window.3curses8
-rw-r--r--usr/src/man/man3curses/curses.3curses665
-rw-r--r--usr/src/man/man3curses/form_cursor.3curses6
-rw-r--r--usr/src/man/man3curses/form_data.3curses6
-rw-r--r--usr/src/man/man3curses/form_driver.3curses6
-rw-r--r--usr/src/man/man3curses/form_field.3curses6
-rw-r--r--usr/src/man/man3curses/form_field_attributes.3curses6
-rw-r--r--usr/src/man/man3curses/form_field_buffer.3curses6
-rw-r--r--usr/src/man/man3curses/form_field_info.3curses6
-rw-r--r--usr/src/man/man3curses/form_field_just.3curses6
-rw-r--r--usr/src/man/man3curses/form_field_new.3curses6
-rw-r--r--usr/src/man/man3curses/form_field_opts.3curses6
-rw-r--r--usr/src/man/man3curses/form_field_userptr.3curses6
-rw-r--r--usr/src/man/man3curses/form_field_validation.3curses6
-rw-r--r--usr/src/man/man3curses/form_fieldtype.3curses6
-rw-r--r--usr/src/man/man3curses/form_hook.3curses6
-rw-r--r--usr/src/man/man3curses/form_new.3curses6
-rw-r--r--usr/src/man/man3curses/form_new_page.3curses6
-rw-r--r--usr/src/man/man3curses/form_opts.3curses6
-rw-r--r--usr/src/man/man3curses/form_page.3curses6
-rw-r--r--usr/src/man/man3curses/form_post.3curses9
-rw-r--r--usr/src/man/man3curses/form_userptr.3curses6
-rw-r--r--usr/src/man/man3curses/form_win.3curses6
-rw-r--r--usr/src/man/man3curses/forms.3curses5
-rw-r--r--usr/src/man/man3curses/menu_attributes.3curses6
-rw-r--r--usr/src/man/man3curses/menu_cursor.3curses9
-rw-r--r--usr/src/man/man3curses/menu_driver.3curses6
-rw-r--r--usr/src/man/man3curses/menu_format.3curses6
-rw-r--r--usr/src/man/man3curses/menu_hook.3curses6
-rw-r--r--usr/src/man/man3curses/menu_item_current.3curses6
-rw-r--r--usr/src/man/man3curses/menu_item_name.3curses8
-rw-r--r--usr/src/man/man3curses/menu_item_new.3curses6
-rw-r--r--usr/src/man/man3curses/menu_item_opts.3curses6
-rw-r--r--usr/src/man/man3curses/menu_item_userptr.3curses6
-rw-r--r--usr/src/man/man3curses/menu_item_value.3curses8
-rw-r--r--usr/src/man/man3curses/menu_item_visible.3curses8
-rw-r--r--usr/src/man/man3curses/menu_items.3curses6
-rw-r--r--usr/src/man/man3curses/menu_mark.3curses6
-rw-r--r--usr/src/man/man3curses/menu_new.3curses6
-rw-r--r--usr/src/man/man3curses/menu_opts.3curses6
-rw-r--r--usr/src/man/man3curses/menu_pattern.3curses6
-rw-r--r--usr/src/man/man3curses/menu_post.3curses8
-rw-r--r--usr/src/man/man3curses/menu_userptr.3curses6
-rw-r--r--usr/src/man/man3curses/menu_win.3curses6
-rw-r--r--usr/src/man/man3curses/menus.3curses5
-rw-r--r--usr/src/man/man3curses/panel_above.3curses6
-rw-r--r--usr/src/man/man3curses/panel_move.3curses8
-rw-r--r--usr/src/man/man3curses/panel_new.3curses8
-rw-r--r--usr/src/man/man3curses/panel_show.3curses8
-rw-r--r--usr/src/man/man3curses/panel_top.3curses8
-rw-r--r--usr/src/man/man3curses/panel_update.3curses8
-rw-r--r--usr/src/man/man3curses/panel_userptr.3curses6
-rw-r--r--usr/src/man/man3curses/panel_window.3curses6
-rw-r--r--usr/src/man/man3curses/panels.3curses4
-rw-r--r--usr/src/man/man3dat/dat_cno_create.3dat5
-rw-r--r--usr/src/man/man3dat/dat_cno_free.3dat6
-rw-r--r--usr/src/man/man3dat/dat_cno_modify_agent.3dat5
-rw-r--r--usr/src/man/man3dat/dat_cno_query.3dat5
-rw-r--r--usr/src/man/man3dat/dat_cno_wait.3dat5
-rw-r--r--usr/src/man/man3dat/dat_cr_accept.3dat5
-rw-r--r--usr/src/man/man3dat/dat_cr_handoff.3dat5
-rw-r--r--usr/src/man/man3dat/dat_cr_query.3dat5
-rw-r--r--usr/src/man/man3dat/dat_cr_reject.3dat5
-rw-r--r--usr/src/man/man3dat/dat_ep_connect.3dat5
-rw-r--r--usr/src/man/man3dat/dat_ep_create.3dat14
-rw-r--r--usr/src/man/man3dat/dat_ep_create_with_srq.3dat11
-rw-r--r--usr/src/man/man3dat/dat_ep_disconnect.3dat5
-rw-r--r--usr/src/man/man3dat/dat_ep_dup_connect.3dat5
-rw-r--r--usr/src/man/man3dat/dat_ep_free.3dat5
-rw-r--r--usr/src/man/man3dat/dat_ep_get_status.3dat5
-rw-r--r--usr/src/man/man3dat/dat_ep_modify.3dat5
-rw-r--r--usr/src/man/man3dat/dat_ep_post_rdma_read.3dat5
-rw-r--r--usr/src/man/man3dat/dat_ep_post_rdma_write.3dat5
-rw-r--r--usr/src/man/man3dat/dat_ep_post_recv.3dat5
-rw-r--r--usr/src/man/man3dat/dat_ep_post_send.3dat5
-rw-r--r--usr/src/man/man3dat/dat_ep_query.3dat5
-rw-r--r--usr/src/man/man3dat/dat_ep_recv_query.3dat12
-rw-r--r--usr/src/man/man3dat/dat_ep_reset.3dat5
-rw-r--r--usr/src/man/man3dat/dat_ep_set_watermark.3dat17
-rw-r--r--usr/src/man/man3dat/dat_evd_clear_unwaitable.3dat11
-rw-r--r--usr/src/man/man3dat/dat_evd_dequeue.3dat15
-rw-r--r--usr/src/man/man3dat/dat_evd_disable.3dat6
-rw-r--r--usr/src/man/man3dat/dat_evd_enable.3dat6
-rw-r--r--usr/src/man/man3dat/dat_evd_free.3dat5
-rw-r--r--usr/src/man/man3dat/dat_evd_modify_cno.3dat5
-rw-r--r--usr/src/man/man3dat/dat_evd_post_se.3dat5
-rw-r--r--usr/src/man/man3dat/dat_evd_query.3dat5
-rw-r--r--usr/src/man/man3dat/dat_evd_resize.3dat5
-rw-r--r--usr/src/man/man3dat/dat_evd_set_unwaitable.3dat11
-rw-r--r--usr/src/man/man3dat/dat_evd_wait.3dat17
-rw-r--r--usr/src/man/man3dat/dat_get_consumer_context.3dat6
-rw-r--r--usr/src/man/man3dat/dat_get_handle_type.3dat5
-rw-r--r--usr/src/man/man3dat/dat_ia_close.3dat9
-rw-r--r--usr/src/man/man3dat/dat_ia_open.3dat11
-rw-r--r--usr/src/man/man3dat/dat_ia_query.3dat5
-rw-r--r--usr/src/man/man3dat/dat_lmr_create.3dat6
-rw-r--r--usr/src/man/man3dat/dat_lmr_free.3dat5
-rw-r--r--usr/src/man/man3dat/dat_lmr_query.3dat5
-rw-r--r--usr/src/man/man3dat/dat_lmr_sync_rdma_read.3dat6
-rw-r--r--usr/src/man/man3dat/dat_lmr_sync_rdma_write.3dat6
-rw-r--r--usr/src/man/man3dat/dat_provider_fini.3dat8
-rw-r--r--usr/src/man/man3dat/dat_provider_init.3dat12
-rw-r--r--usr/src/man/man3dat/dat_psp_create.3dat6
-rw-r--r--usr/src/man/man3dat/dat_psp_create_any.3dat5
-rw-r--r--usr/src/man/man3dat/dat_psp_free.3dat5
-rw-r--r--usr/src/man/man3dat/dat_psp_query.3dat5
-rw-r--r--usr/src/man/man3dat/dat_pz_create.3dat5
-rw-r--r--usr/src/man/man3dat/dat_pz_free.3dat5
-rw-r--r--usr/src/man/man3dat/dat_pz_query.3dat5
-rw-r--r--usr/src/man/man3dat/dat_registry_add_provider.3dat6
-rw-r--r--usr/src/man/man3dat/dat_registry_list_providers.3dat5
-rw-r--r--usr/src/man/man3dat/dat_registry_remove_provider.3dat5
-rw-r--r--usr/src/man/man3dat/dat_rmr_bind.3dat5
-rw-r--r--usr/src/man/man3dat/dat_rmr_create.3dat5
-rw-r--r--usr/src/man/man3dat/dat_rmr_free.3dat5
-rw-r--r--usr/src/man/man3dat/dat_rmr_query.3dat5
-rw-r--r--usr/src/man/man3dat/dat_rsp_create.3dat5
-rw-r--r--usr/src/man/man3dat/dat_rsp_free.3dat5
-rw-r--r--usr/src/man/man3dat/dat_rsp_query.3dat5
-rw-r--r--usr/src/man/man3dat/dat_set_consumer_context.3dat6
-rw-r--r--usr/src/man/man3dat/dat_srq_create.3dat12
-rw-r--r--usr/src/man/man3dat/dat_srq_free.3dat12
-rw-r--r--usr/src/man/man3dat/dat_srq_post_recv.3dat12
-rw-r--r--usr/src/man/man3dat/dat_srq_query.3dat12
-rw-r--r--usr/src/man/man3dat/dat_srq_resize.3dat12
-rw-r--r--usr/src/man/man3dat/dat_srq_set_lw.3dat12
-rw-r--r--usr/src/man/man3dat/dat_strerror.3dat5
-rw-r--r--usr/src/man/man3devid/devid_get.3devid2
-rw-r--r--usr/src/man/man3devinfo/di_binding_name.3devinfo12
-rw-r--r--usr/src/man/man3devinfo/di_child_node.3devinfo6
-rw-r--r--usr/src/man/man3devinfo/di_devfs_path.3devinfo8
-rw-r--r--usr/src/man/man3devinfo/di_devlink_dup.3devinfo11
-rw-r--r--usr/src/man/man3devinfo/di_devlink_init.3devinfo13
-rw-r--r--usr/src/man/man3devinfo/di_devlink_path.3devinfo9
-rw-r--r--usr/src/man/man3devinfo/di_devlink_walk.3devinfo12
-rw-r--r--usr/src/man/man3devinfo/di_init.3devinfo11
-rw-r--r--usr/src/man/man3devinfo/di_link_next_by_node.3devinfo6
-rw-r--r--usr/src/man/man3devinfo/di_link_spectype.3devinfo6
-rw-r--r--usr/src/man/man3devinfo/di_lnode_name.3devinfo6
-rw-r--r--usr/src/man/man3devinfo/di_lnode_next.3devinfo6
-rw-r--r--usr/src/man/man3devinfo/di_minor_devt.3devinfo8
-rw-r--r--usr/src/man/man3devinfo/di_minor_next.3devinfo5
-rw-r--r--usr/src/man/man3devinfo/di_node_private_set.3devinfo6
-rw-r--r--usr/src/man/man3devinfo/di_path_bus_addr.3devinfo20
-rw-r--r--usr/src/man/man3devinfo/di_path_client_next_path.3devinfo10
-rw-r--r--usr/src/man/man3devinfo/di_path_prop_bytes.3devinfo8
-rw-r--r--usr/src/man/man3devinfo/di_path_prop_lookup_bytes.3devinfo6
-rw-r--r--usr/src/man/man3devinfo/di_path_prop_next.3devinfo5
-rw-r--r--usr/src/man/man3devinfo/di_prom_init.3devinfo14
-rw-r--r--usr/src/man/man3devinfo/di_prom_prop_data.3devinfo7
-rw-r--r--usr/src/man/man3devinfo/di_prom_prop_lookup_bytes.3devinfo9
-rw-r--r--usr/src/man/man3devinfo/di_prop_bytes.3devinfo8
-rw-r--r--usr/src/man/man3devinfo/di_prop_lookup_bytes.3devinfo8
-rw-r--r--usr/src/man/man3devinfo/di_prop_next.3devinfo6
-rw-r--r--usr/src/man/man3devinfo/di_walk_link.3devinfo6
-rw-r--r--usr/src/man/man3devinfo/di_walk_lnode.3devinfo6
-rw-r--r--usr/src/man/man3devinfo/di_walk_minor.3devinfo12
-rw-r--r--usr/src/man/man3devinfo/di_walk_node.3devinfo6
-rw-r--r--usr/src/man/man3dlpi/dlpi_arptype.3dlpi5
-rw-r--r--usr/src/man/man3dlpi/dlpi_bind.3dlpi10
-rw-r--r--usr/src/man/man3dlpi/dlpi_close.3dlpi6
-rw-r--r--usr/src/man/man3dlpi/dlpi_disabnotify.3dlpi6
-rw-r--r--usr/src/man/man3dlpi/dlpi_enabmulti.3dlpi5
-rw-r--r--usr/src/man/man3dlpi/dlpi_enabnotify.3dlpi11
-rw-r--r--usr/src/man/man3dlpi/dlpi_fd.3dlpi11
-rw-r--r--usr/src/man/man3dlpi/dlpi_get_physaddr.3dlpi6
-rw-r--r--usr/src/man/man3dlpi/dlpi_iftype.3dlpi5
-rw-r--r--usr/src/man/man3dlpi/dlpi_info.3dlpi6
-rw-r--r--usr/src/man/man3dlpi/dlpi_linkname.3dlpi5
-rw-r--r--usr/src/man/man3dlpi/dlpi_mactype.3dlpi5
-rw-r--r--usr/src/man/man3dlpi/dlpi_open.3dlpi22
-rw-r--r--usr/src/man/man3dlpi/dlpi_promiscon.3dlpi8
-rw-r--r--usr/src/man/man3dlpi/dlpi_recv.3dlpi11
-rw-r--r--usr/src/man/man3dlpi/dlpi_send.3dlpi12
-rw-r--r--usr/src/man/man3dlpi/dlpi_set_physaddr.3dlpi6
-rw-r--r--usr/src/man/man3dlpi/dlpi_set_timeout.3dlpi5
-rw-r--r--usr/src/man/man3dlpi/dlpi_strerror.3dlpi5
-rw-r--r--usr/src/man/man3dlpi/dlpi_unbind.3dlpi6
-rw-r--r--usr/src/man/man3dlpi/dlpi_walk.3dlpi5
-rw-r--r--usr/src/man/man3dns_sd/DNSServiceBrowse.3dns_sd4
-rw-r--r--usr/src/man/man3dns_sd/DNSServiceConstructFullName.3dns_sd4
-rw-r--r--usr/src/man/man3dns_sd/DNSServiceCreateConnection.3dns_sd4
-rw-r--r--usr/src/man/man3dns_sd/DNSServiceEnumerateDomains.3dns_sd4
-rw-r--r--usr/src/man/man3dns_sd/DNSServiceProcessResult.3dns_sd4
-rw-r--r--usr/src/man/man3dns_sd/DNSServiceQueryRecord.3dns_sd4
-rw-r--r--usr/src/man/man3dns_sd/DNSServiceReconfirmRecord.3dns_sd4
-rw-r--r--usr/src/man/man3dns_sd/DNSServiceRefDeallocate.3dns_sd4
-rw-r--r--usr/src/man/man3dns_sd/DNSServiceRefSockFD.3dns_sd4
-rw-r--r--usr/src/man/man3dns_sd/DNSServiceRegister.3dns_sd4
-rw-r--r--usr/src/man/man3dns_sd/DNSServiceResolve.3dns_sd4
-rw-r--r--usr/src/man/man3dns_sd/TXTRecordCreate.3dns_sd4
-rw-r--r--usr/src/man/man3elf/elf.3elf39
-rw-r--r--usr/src/man/man3elf/elf32_checksum.3elf9
-rw-r--r--usr/src/man/man3elf/elf32_fsize.3elf9
-rw-r--r--usr/src/man/man3elf/elf32_getehdr.3elf13
-rw-r--r--usr/src/man/man3elf/elf32_getphdr.3elf10
-rw-r--r--usr/src/man/man3elf/elf32_getshdr.3elf10
-rw-r--r--usr/src/man/man3elf/elf32_xlatetof.3elf10
-rw-r--r--usr/src/man/man3elf/elf_begin.3elf27
-rw-r--r--usr/src/man/man3elf/elf_cntl.3elf10
-rw-r--r--usr/src/man/man3elf/elf_errmsg.3elf6
-rw-r--r--usr/src/man/man3elf/elf_fill.3elf10
-rw-r--r--usr/src/man/man3elf/elf_flagdata.3elf9
-rw-r--r--usr/src/man/man3elf/elf_getarhdr.3elf10
-rw-r--r--usr/src/man/man3elf/elf_getarsym.3elf12
-rw-r--r--usr/src/man/man3elf/elf_getbase.3elf9
-rw-r--r--usr/src/man/man3elf/elf_getdata.3elf24
-rw-r--r--usr/src/man/man3elf/elf_getident.3elf14
-rw-r--r--usr/src/man/man3elf/elf_getscn.3elf13
-rw-r--r--usr/src/man/man3elf/elf_hash.3elf9
-rw-r--r--usr/src/man/man3elf/elf_kind.3elf12
-rw-r--r--usr/src/man/man3elf/elf_rawfile.3elf14
-rw-r--r--usr/src/man/man3elf/elf_strptr.3elf10
-rw-r--r--usr/src/man/man3elf/elf_update.3elf16
-rw-r--r--usr/src/man/man3elf/elf_version.3elf9
-rw-r--r--usr/src/man/man3elf/gelf.3elf21
-rw-r--r--usr/src/man/man3elf/nlist.3elf13
-rw-r--r--usr/src/man/man3exacct/ea_error.3exacct6
-rw-r--r--usr/src/man/man3exacct/ea_open.3exacct9
-rw-r--r--usr/src/man/man3exacct/ea_pack_object.3exacct10
-rw-r--r--usr/src/man/man3exacct/ea_set_item.3exacct10
-rw-r--r--usr/src/man/man3ext/NOTE.3ext5
-rw-r--r--usr/src/man/man3ext/SUNW_C_GetMechSession.3ext5
-rw-r--r--usr/src/man/man3ext/crypt.3ext11
-rw-r--r--usr/src/man/man3ext/ecb_crypt.3ext5
-rw-r--r--usr/src/man/man3ext/efi_alloc_and_init.3ext14
-rw-r--r--usr/src/man/man3ext/ld_support.3ext2
-rw-r--r--usr/src/man/man3ext/md4.3ext4
-rw-r--r--usr/src/man/man3ext/md5.3ext4
-rw-r--r--usr/src/man/man3ext/read_vtoc.3ext13
-rw-r--r--usr/src/man/man3ext/rtld_audit.3ext2
-rw-r--r--usr/src/man/man3ext/rtld_db.3ext10
-rw-r--r--usr/src/man/man3ext/sendfile.3ext12
-rw-r--r--usr/src/man/man3ext/sendfilev.3ext12
-rw-r--r--usr/src/man/man3ext/sha1.3ext5
-rw-r--r--usr/src/man/man3ext/sha2.3ext4
-rw-r--r--usr/src/man/man3ext/stdarg.3ext6
-rw-r--r--usr/src/man/man3ext/tsalarm_get.3ext5
-rw-r--r--usr/src/man/man3ext/varargs.3ext5
-rw-r--r--usr/src/man/man3fcoe/FCOE_CreatePort.3fcoe5
-rw-r--r--usr/src/man/man3fcoe/FCOE_DeletePort.3fcoe5
-rw-r--r--usr/src/man/man3fcoe/FCOE_GetPortList.3fcoe6
-rw-r--r--usr/src/man/man3fstyp/fstyp_get_attr.3fstyp11
-rw-r--r--usr/src/man/man3fstyp/fstyp_ident.3fstyp9
-rw-r--r--usr/src/man/man3fstyp/fstyp_init.3fstyp9
-rw-r--r--usr/src/man/man3fstyp/fstyp_mod_init.3fstyp10
-rw-r--r--usr/src/man/man3fstyp/fstyp_strerror.3fstyp6
-rw-r--r--usr/src/man/man3gen/bgets.3gen5
-rw-r--r--usr/src/man/man3gen/bufsplit.3gen4
-rw-r--r--usr/src/man/man3gen/copylist.3gen8
-rw-r--r--usr/src/man/man3gen/gmatch.3gen5
-rw-r--r--usr/src/man/man3gen/isencrypt.3gen5
-rw-r--r--usr/src/man/man3gen/mkdirp.3gen9
-rw-r--r--usr/src/man/man3gen/p2open.3gen7
-rw-r--r--usr/src/man/man3gen/pathfind.3gen11
-rw-r--r--usr/src/man/man3gen/regexpr.3gen10
-rw-r--r--usr/src/man/man3gen/strccpy.3gen6
-rw-r--r--usr/src/man/man3gen/strfind.3gen5
-rw-r--r--usr/src/man/man3gss/gss_accept_sec_context.3gss15
-rw-r--r--usr/src/man/man3gss/gss_acquire_cred.3gss15
-rw-r--r--usr/src/man/man3gss/gss_add_cred.3gss15
-rw-r--r--usr/src/man/man3gss/gss_add_oid_set_member.3gss7
-rw-r--r--usr/src/man/man3gss/gss_canonicalize_name.3gss8
-rw-r--r--usr/src/man/man3gss/gss_compare_name.3gss4
-rw-r--r--usr/src/man/man3gss/gss_context_time.3gss16
-rw-r--r--usr/src/man/man3gss/gss_create_empty_oid_set.3gss8
-rw-r--r--usr/src/man/man3gss/gss_delete_sec_context.3gss7
-rw-r--r--usr/src/man/man3gss/gss_display_name.3gss7
-rw-r--r--usr/src/man/man3gss/gss_display_status.3gss7
-rw-r--r--usr/src/man/man3gss/gss_duplicate_name.3gss5
-rw-r--r--usr/src/man/man3gss/gss_export_name.3gss9
-rw-r--r--usr/src/man/man3gss/gss_export_sec_context.3gss10
-rw-r--r--usr/src/man/man3gss/gss_get_mic.3gss6
-rw-r--r--usr/src/man/man3gss/gss_import_name.3gss5
-rw-r--r--usr/src/man/man3gss/gss_import_sec_context.3gss16
-rw-r--r--usr/src/man/man3gss/gss_indicate_mechs.3gss5
-rw-r--r--usr/src/man/man3gss/gss_init_sec_context.3gss9
-rw-r--r--usr/src/man/man3gss/gss_inquire_context.3gss17
-rw-r--r--usr/src/man/man3gss/gss_inquire_cred.3gss8
-rw-r--r--usr/src/man/man3gss/gss_inquire_cred_by_mech.3gss5
-rw-r--r--usr/src/man/man3gss/gss_inquire_mechs_for_name.3gss11
-rw-r--r--usr/src/man/man3gss/gss_inquire_names_for_mech.3gss5
-rw-r--r--usr/src/man/man3gss/gss_oid_to_str.3gss10
-rw-r--r--usr/src/man/man3gss/gss_process_context_token.3gss8
-rw-r--r--usr/src/man/man3gss/gss_release_buffer.3gss4
-rw-r--r--usr/src/man/man3gss/gss_release_cred.3gss4
-rw-r--r--usr/src/man/man3gss/gss_release_name.3gss4
-rw-r--r--usr/src/man/man3gss/gss_release_oid.3gss7
-rw-r--r--usr/src/man/man3gss/gss_release_oid_set.3gss4
-rw-r--r--usr/src/man/man3gss/gss_store_cred.3gss14
-rw-r--r--usr/src/man/man3gss/gss_str_to_oid.3gss10
-rw-r--r--usr/src/man/man3gss/gss_test_oid_set_member.3gss8
-rw-r--r--usr/src/man/man3gss/gss_unwrap.3gss6
-rw-r--r--usr/src/man/man3gss/gss_verify_mic.3gss5
-rw-r--r--usr/src/man/man3gss/gss_wrap.3gss5
-rw-r--r--usr/src/man/man3gss/gss_wrap_size_limit.3gss5
-rw-r--r--usr/src/man/man3head/acct.h.3head17
-rw-r--r--usr/src/man/man3head/aio.h.3head8
-rw-r--r--usr/src/man/man3head/ar.h.3head7
-rw-r--r--usr/src/man/man3head/assert.h.3head6
-rw-r--r--usr/src/man/man3head/complex.h.3head32
-rw-r--r--usr/src/man/man3head/cpio.h.3head6
-rw-r--r--usr/src/man/man3head/dirent.h.3head14
-rw-r--r--usr/src/man/man3head/endian.h.3head6
-rw-r--r--usr/src/man/man3head/errno.h.3head6
-rw-r--r--usr/src/man/man3head/fcntl.h.3head18
-rw-r--r--usr/src/man/man3head/fenv.h.3head20
-rw-r--r--usr/src/man/man3head/float.h.3head8
-rw-r--r--usr/src/man/man3head/floatingpoint.h.3head10
-rw-r--r--usr/src/man/man3head/fmtmsg.h.3head6
-rw-r--r--usr/src/man/man3head/fnmatch.h.3head6
-rw-r--r--usr/src/man/man3head/ftw.h.3head7
-rw-r--r--usr/src/man/man3head/glob.h.3head6
-rw-r--r--usr/src/man/man3head/grp.h.3head8
-rw-r--r--usr/src/man/man3head/iconv.h.3head9
-rw-r--r--usr/src/man/man3head/if.h.3head6
-rw-r--r--usr/src/man/man3head/in.h.3head26
-rw-r--r--usr/src/man/man3head/inet.h.3head16
-rw-r--r--usr/src/man/man3head/inttypes.h.3head6
-rw-r--r--usr/src/man/man3head/ipc.h.3head7
-rw-r--r--usr/src/man/man3head/iso646.h.3head5
-rw-r--r--usr/src/man/man3head/langinfo.h.3head13
-rw-r--r--usr/src/man/man3head/libgen.h.3head9
-rw-r--r--usr/src/man/man3head/libintl.h.3head5
-rw-r--r--usr/src/man/man3head/limits.h.3head7
-rw-r--r--usr/src/man/man3head/locale.h.3head10
-rw-r--r--usr/src/man/man3head/math.h.3head11
-rw-r--r--usr/src/man/man3head/mman.h.3head18
-rw-r--r--usr/src/man/man3head/monetary.h.3head9
-rw-r--r--usr/src/man/man3head/mqueue.h.3head10
-rw-r--r--usr/src/man/man3head/msg.h.3head13
-rw-r--r--usr/src/man/man3head/ndbm.h.3head6
-rw-r--r--usr/src/man/man3head/netdb.h.3head18
-rw-r--r--usr/src/man/man3head/nl_types.h.3head7
-rw-r--r--usr/src/man/man3head/poll.h.3head9
-rw-r--r--usr/src/man/man3head/pthread.h.3head62
-rw-r--r--usr/src/man/man3head/pwd.h.3head8
-rw-r--r--usr/src/man/man3head/regex.h.3head8
-rw-r--r--usr/src/man/man3head/resource.h.3head10
-rw-r--r--usr/src/man/man3head/sched.h.3head8
-rw-r--r--usr/src/man/man3head/search.h.3head11
-rw-r--r--usr/src/man/man3head/select.h.3head10
-rw-r--r--usr/src/man/man3head/sem.h.3head11
-rw-r--r--usr/src/man/man3head/semaphore.h.3head20
-rw-r--r--usr/src/man/man3head/setjmp.h.3head7
-rw-r--r--usr/src/man/man3head/shm.h.3head11
-rw-r--r--usr/src/man/man3head/siginfo.h.3head18
-rw-r--r--usr/src/man/man3head/signal.h.3head56
-rw-r--r--usr/src/man/man3head/socket.h.3head57
-rw-r--r--usr/src/man/man3head/spawn.h.3head10
-rw-r--r--usr/src/man/man3head/stat.h.3head13
-rw-r--r--usr/src/man/man3head/statvfs.h.3head7
-rw-r--r--usr/src/man/man3head/stdbool.h.3head5
-rw-r--r--usr/src/man/man3head/stddef.h.3head10
-rw-r--r--usr/src/man/man3head/stdint.h.3head10
-rw-r--r--usr/src/man/man3head/stdio.h.3head47
-rw-r--r--usr/src/man/man3head/stdlib.h.3head46
-rw-r--r--usr/src/man/man3head/string.h.3head13
-rw-r--r--usr/src/man/man3head/strings.h.3head9
-rw-r--r--usr/src/man/man3head/stropts.h.3head21
-rw-r--r--usr/src/man/man3head/syslog.h.3head6
-rw-r--r--usr/src/man/man3head/tar.h.3head6
-rw-r--r--usr/src/man/man3head/tcp.h.3head8
-rw-r--r--usr/src/man/man3head/termios.h.3head21
-rw-r--r--usr/src/man/man3head/tgmath.h.3head11
-rw-r--r--usr/src/man/man3head/time.h.3head4
-rw-r--r--usr/src/man/man3head/timeb.h.3head8
-rw-r--r--usr/src/man/man3head/times.h.3head7
-rw-r--r--usr/src/man/man3head/types.h.3head6
-rw-r--r--usr/src/man/man3head/ucontext.h.3head12
-rw-r--r--usr/src/man/man3head/uio.h.3head10
-rw-r--r--usr/src/man/man3head/ulimit.h.3head6
-rw-r--r--usr/src/man/man3head/un.h.3head16
-rw-r--r--usr/src/man/man3head/unistd.h.3head24
-rw-r--r--usr/src/man/man3head/upanic.h.3head2
-rw-r--r--usr/src/man/man3head/utime.h.3head7
-rw-r--r--usr/src/man/man3head/utmpx.h.3head9
-rw-r--r--usr/src/man/man3head/utsname.h.3head6
-rw-r--r--usr/src/man/man3head/wait.h.3head11
-rw-r--r--usr/src/man/man3head/wchar.h.3head76
-rw-r--r--usr/src/man/man3head/wctype.h.3head25
-rw-r--r--usr/src/man/man3head/wordexp.h.3head6
-rw-r--r--usr/src/man/man3head/xlocale.h.3head8
-rw-r--r--usr/src/man/man3iscsit/it_config_load.3iscsit17
-rw-r--r--usr/src/man/man3iscsit/it_ini_create.3iscsit17
-rw-r--r--usr/src/man/man3iscsit/it_portal_create.3iscsit15
-rw-r--r--usr/src/man/man3iscsit/it_tgt_create.3iscsit14
-rw-r--r--usr/src/man/man3iscsit/it_tpg_create.3iscsit14
-rw-r--r--usr/src/man/man3kstat/kstat.3kstat2
-rw-r--r--usr/src/man/man3kstat/kstat_chain_update.3kstat2
-rw-r--r--usr/src/man/man3kstat/kstat_lookup.3kstat2
-rw-r--r--usr/src/man/man3kstat/kstat_open.3kstat2
-rw-r--r--usr/src/man/man3kstat/kstat_read.3kstat4
-rw-r--r--usr/src/man/man3kvm/kvm_getu.3kvm10
-rw-r--r--usr/src/man/man3kvm/kvm_kread.3kvm8
-rw-r--r--usr/src/man/man3kvm/kvm_nextproc.3kvm8
-rw-r--r--usr/src/man/man3kvm/kvm_nlist.3kvm8
-rw-r--r--usr/src/man/man3kvm/kvm_open.3kvm26
-rw-r--r--usr/src/man/man3kvm/kvm_read.3kvm9
-rw-r--r--usr/src/man/man3ldap/ber_decode.3ldap5
-rw-r--r--usr/src/man/man3ldap/ber_encode.3ldap5
-rw-r--r--usr/src/man/man3ldap/cldap_close.3ldap8
-rw-r--r--usr/src/man/man3ldap/cldap_open.3ldap11
-rw-r--r--usr/src/man/man3ldap/cldap_search_s.3ldap15
-rw-r--r--usr/src/man/man3ldap/cldap_setretryinfo.3ldap9
-rw-r--r--usr/src/man/man3ldap/ldap.3ldap10
-rw-r--r--usr/src/man/man3ldap/ldap_abandon.3ldap8
-rw-r--r--usr/src/man/man3ldap/ldap_add.3ldap8
-rw-r--r--usr/src/man/man3ldap/ldap_ber_free.3ldap8
-rw-r--r--usr/src/man/man3ldap/ldap_bind.3ldap10
-rw-r--r--usr/src/man/man3ldap/ldap_charset.3ldap5
-rw-r--r--usr/src/man/man3ldap/ldap_compare.3ldap6
-rw-r--r--usr/src/man/man3ldap/ldap_control_free.3ldap6
-rw-r--r--usr/src/man/man3ldap/ldap_delete.3ldap6
-rw-r--r--usr/src/man/man3ldap/ldap_disptmpl.3ldap14
-rw-r--r--usr/src/man/man3ldap/ldap_entry2text.3ldap8
-rw-r--r--usr/src/man/man3ldap/ldap_error.3ldap4
-rw-r--r--usr/src/man/man3ldap/ldap_first_attribute.3ldap9
-rw-r--r--usr/src/man/man3ldap/ldap_first_entry.3ldap12
-rw-r--r--usr/src/man/man3ldap/ldap_first_message.3ldap6
-rw-r--r--usr/src/man/man3ldap/ldap_friendly.3ldap5
-rw-r--r--usr/src/man/man3ldap/ldap_get_dn.3ldap8
-rw-r--r--usr/src/man/man3ldap/ldap_get_entry_controls.3ldap6
-rw-r--r--usr/src/man/man3ldap/ldap_get_lang_values.3ldap11
-rw-r--r--usr/src/man/man3ldap/ldap_get_option.3ldap6
-rw-r--r--usr/src/man/man3ldap/ldap_get_values.3ldap9
-rw-r--r--usr/src/man/man3ldap/ldap_getfilter.3ldap12
-rw-r--r--usr/src/man/man3ldap/ldap_memcache.3ldap8
-rw-r--r--usr/src/man/man3ldap/ldap_memfree.3ldap9
-rw-r--r--usr/src/man/man3ldap/ldap_modify.3ldap9
-rw-r--r--usr/src/man/man3ldap/ldap_modrdn.3ldap4
-rw-r--r--usr/src/man/man3ldap/ldap_open.3ldap10
-rw-r--r--usr/src/man/man3ldap/ldap_parse_result.3ldap6
-rw-r--r--usr/src/man/man3ldap/ldap_result.3ldap4
-rw-r--r--usr/src/man/man3ldap/ldap_search.3ldap4
-rw-r--r--usr/src/man/man3ldap/ldap_searchprefs.3ldap10
-rw-r--r--usr/src/man/man3ldap/ldap_sort.3ldap9
-rw-r--r--usr/src/man/man3ldap/ldap_ufn.3ldap14
-rw-r--r--usr/src/man/man3ldap/ldap_url.3ldap6
-rw-r--r--usr/src/man/man3ldap/ldap_version.3ldap5
-rw-r--r--usr/src/man/man3lgrp/lgrp_affinity_get.3lgrp6
-rw-r--r--usr/src/man/man3lgrp/lgrp_children.3lgrp9
-rw-r--r--usr/src/man/man3lgrp/lgrp_cookie_stale.3lgrp9
-rw-r--r--usr/src/man/man3lgrp/lgrp_cpus.3lgrp9
-rw-r--r--usr/src/man/man3lgrp/lgrp_fini.3lgrp8
-rw-r--r--usr/src/man/man3lgrp/lgrp_home.3lgrp6
-rw-r--r--usr/src/man/man3lgrp/lgrp_init.3lgrp19
-rw-r--r--usr/src/man/man3lgrp/lgrp_latency.3lgrp9
-rw-r--r--usr/src/man/man3lgrp/lgrp_mem_size.3lgrp9
-rw-r--r--usr/src/man/man3lgrp/lgrp_nlgrps.3lgrp9
-rw-r--r--usr/src/man/man3lgrp/lgrp_parents.3lgrp9
-rw-r--r--usr/src/man/man3lgrp/lgrp_resources.3lgrp9
-rw-r--r--usr/src/man/man3lgrp/lgrp_root.3lgrp10
-rw-r--r--usr/src/man/man3lgrp/lgrp_version.3lgrp6
-rw-r--r--usr/src/man/man3lgrp/lgrp_view.3lgrp9
-rw-r--r--usr/src/man/man3lib/libMPAPI.3lib6
-rw-r--r--usr/src/man/man3lib/libSMHBAAPI.3lib7
-rw-r--r--usr/src/man/man3lib/libadm.3lib9
-rw-r--r--usr/src/man/man3lib/libaio.3lib15
-rw-r--r--usr/src/man/man3lib/libbsdmalloc.3lib5
-rw-r--r--usr/src/man/man3lib/libbsm.3lib6
-rw-r--r--usr/src/man/man3lib/libc.3lib12
-rw-r--r--usr/src/man/man3lib/libc_db.3lib5
-rw-r--r--usr/src/man/man3lib/libcfgadm.3lib9
-rw-r--r--usr/src/man/man3lib/libcommputil.3lib5
-rw-r--r--usr/src/man/man3lib/libcontract.3lib11
-rw-r--r--usr/src/man/man3lib/libcpc.3lib12
-rw-r--r--usr/src/man/man3lib/libcrypt.3lib9
-rw-r--r--usr/src/man/man3lib/libcurses.3lib8
-rw-r--r--usr/src/man/man3lib/libdat.3lib13
-rw-r--r--usr/src/man/man3lib/libdevid.3lib6
-rw-r--r--usr/src/man/man3lib/libdevinfo.3lib36
-rw-r--r--usr/src/man/man3lib/libdl.3lib9
-rw-r--r--usr/src/man/man3lib/libdlpi.3lib5
-rw-r--r--usr/src/man/man3lib/libdns_sd.3lib5
-rw-r--r--usr/src/man/man3lib/libdoor.3lib6
-rw-r--r--usr/src/man/man3lib/libdtrace.3lib6
-rw-r--r--usr/src/man/man3lib/libefi.3lib6
-rw-r--r--usr/src/man/man3lib/libelf.3lib9
-rw-r--r--usr/src/man/man3lib/libexacct.3lib12
-rw-r--r--usr/src/man/man3lib/libfcoe.3lib9
-rw-r--r--usr/src/man/man3lib/libform.3lib6
-rw-r--r--usr/src/man/man3lib/libfstyp.3lib8
-rw-r--r--usr/src/man/man3lib/libgen.3lib5
-rw-r--r--usr/src/man/man3lib/libgss.3lib9
-rw-r--r--usr/src/man/man3lib/libintl.3lib9
-rw-r--r--usr/src/man/man3lib/libiscsit.3lib12
-rw-r--r--usr/src/man/man3lib/libkmf.3lib6
-rw-r--r--usr/src/man/man3lib/libkrb5.3lib6
-rw-r--r--usr/src/man/man3lib/libkstat.3lib7
-rw-r--r--usr/src/man/man3lib/libkvm.3lib6
-rw-r--r--usr/src/man/man3lib/libl.3lib6
-rw-r--r--usr/src/man/man3lib/liblgrp.3lib24
-rw-r--r--usr/src/man/man3lib/libm.3lib11
-rw-r--r--usr/src/man/man3lib/libmail.3lib6
-rw-r--r--usr/src/man/man3lib/libmalloc.3lib6
-rw-r--r--usr/src/man/man3lib/libmapmalloc.3lib12
-rw-r--r--usr/src/man/man3lib/libmd5.3lib5
-rw-r--r--usr/src/man/man3lib/libmenu.3lib6
-rw-r--r--usr/src/man/man3lib/libmp.3lib8
-rw-r--r--usr/src/man/man3lib/libmtmalloc.3lib13
-rw-r--r--usr/src/man/man3lib/libmvec.3lib7
-rw-r--r--usr/src/man/man3lib/libnls.3lib8
-rw-r--r--usr/src/man/man3lib/libnsl.3lib9
-rw-r--r--usr/src/man/man3lib/libnvpair.3lib5
-rw-r--r--usr/src/man/man3lib/libpam.3lib31
-rw-r--r--usr/src/man/man3lib/libpanel.3lib6
-rw-r--r--usr/src/man/man3lib/libpapi.3lib9
-rw-r--r--usr/src/man/man3lib/libpctx.3lib12
-rw-r--r--usr/src/man/man3lib/libpicl.3lib7
-rw-r--r--usr/src/man/man3lib/libpicltree.3lib7
-rw-r--r--usr/src/man/man3lib/libpkcs11.3lib22
-rw-r--r--usr/src/man/man3lib/libpool.3lib34
-rw-r--r--usr/src/man/man3lib/libproc.3lib50
-rw-r--r--usr/src/man/man3lib/libproject.3lib12
-rw-r--r--usr/src/man/man3lib/libpthread.3lib16
-rw-r--r--usr/src/man/man3lib/libresolv.3lib7
-rw-r--r--usr/src/man/man3lib/librpcsvc.3lib7
-rw-r--r--usr/src/man/man3lib/librsm.3lib6
-rw-r--r--usr/src/man/man3lib/librt.3lib11
-rw-r--r--usr/src/man/man3lib/librtld_db.3lib11
-rw-r--r--usr/src/man/man3lib/libsasl.3lib4
-rw-r--r--usr/src/man/man3lib/libscf.3lib6
-rw-r--r--usr/src/man/man3lib/libsctp.3lib7
-rw-r--r--usr/src/man/man3lib/libsec.3lib6
-rw-r--r--usr/src/man/man3lib/libsecdb.3lib5
-rw-r--r--usr/src/man/man3lib/libsendfile.3lib9
-rw-r--r--usr/src/man/man3lib/libsip.3lib5
-rw-r--r--usr/src/man/man3lib/libslp.3lib5
-rw-r--r--usr/src/man/man3lib/libsocket.3lib9
-rw-r--r--usr/src/man/man3lib/libstmf.3lib6
-rw-r--r--usr/src/man/man3lib/libsysevent.3lib8
-rw-r--r--usr/src/man/man3lib/libtecla.3lib15
-rw-r--r--usr/src/man/man3lib/libthread.3lib13
-rw-r--r--usr/src/man/man3lib/libtnfctl.3lib9
-rw-r--r--usr/src/man/man3lib/libtsalarm.3lib5
-rw-r--r--usr/src/man/man3lib/libtsnet.3lib6
-rw-r--r--usr/src/man/man3lib/libtsol.3lib6
-rw-r--r--usr/src/man/man3lib/libumem.3lib12
-rw-r--r--usr/src/man/man3lib/libuuid.3lib6
-rw-r--r--usr/src/man/man3lib/libvolmgt.3lib8
-rw-r--r--usr/src/man/man3lib/libw.3lib7
-rw-r--r--usr/src/man/man3lib/libxnet.3lib6
-rw-r--r--usr/src/man/man3lib/liby.3lib6
-rw-r--r--usr/src/man/man3m/acos.3m13
-rw-r--r--usr/src/man/man3m/acosh.3m11
-rw-r--r--usr/src/man/man3m/asin.3m13
-rw-r--r--usr/src/man/man3m/asinh.3m7
-rw-r--r--usr/src/man/man3m/atan.3m10
-rw-r--r--usr/src/man/man3m/atan2.3m10
-rw-r--r--usr/src/man/man3m/atanh.3m11
-rw-r--r--usr/src/man/man3m/cabs.3m6
-rw-r--r--usr/src/man/man3m/cacos.3m7
-rw-r--r--usr/src/man/man3m/cacosh.3m8
-rw-r--r--usr/src/man/man3m/carg.3m10
-rw-r--r--usr/src/man/man3m/casin.3m7
-rw-r--r--usr/src/man/man3m/casinh.3m8
-rw-r--r--usr/src/man/man3m/catan.3m7
-rw-r--r--usr/src/man/man3m/catanh.3m8
-rw-r--r--usr/src/man/man3m/cbrt.3m6
-rw-r--r--usr/src/man/man3m/ccos.3m8
-rw-r--r--usr/src/man/man3m/ccosh.3m8
-rw-r--r--usr/src/man/man3m/ceil.3m11
-rw-r--r--usr/src/man/man3m/cexp.3m7
-rw-r--r--usr/src/man/man3m/cimag.3m11
-rw-r--r--usr/src/man/man3m/clog.3m7
-rw-r--r--usr/src/man/man3m/conj.3m11
-rw-r--r--usr/src/man/man3m/copysign.3m7
-rw-r--r--usr/src/man/man3m/cos.3m14
-rw-r--r--usr/src/man/man3m/cosh.3m15
-rw-r--r--usr/src/man/man3m/cpow.3m9
-rw-r--r--usr/src/man/man3m/cproj.3m11
-rw-r--r--usr/src/man/man3m/creal.3m11
-rw-r--r--usr/src/man/man3m/csin.3m8
-rw-r--r--usr/src/man/man3m/csinh.3m8
-rw-r--r--usr/src/man/man3m/csqrt.3m9
-rw-r--r--usr/src/man/man3m/ctan.3m8
-rw-r--r--usr/src/man/man3m/ctanh.3m8
-rw-r--r--usr/src/man/man3m/erf.3m11
-rw-r--r--usr/src/man/man3m/erfc.3m9
-rw-r--r--usr/src/man/man3m/exp.3m16
-rw-r--r--usr/src/man/man3m/exp2.3m13
-rw-r--r--usr/src/man/man3m/expm1.3m13
-rw-r--r--usr/src/man/man3m/fabs.3m7
-rw-r--r--usr/src/man/man3m/fdim.3m11
-rw-r--r--usr/src/man/man3m/feclearexcept.3m12
-rw-r--r--usr/src/man/man3m/fegetenv.3m9
-rw-r--r--usr/src/man/man3m/fegetexceptflag.3m10
-rw-r--r--usr/src/man/man3m/fegetround.3m6
-rw-r--r--usr/src/man/man3m/feholdexcept.3m9
-rw-r--r--usr/src/man/man3m/feraiseexcept.3m10
-rw-r--r--usr/src/man/man3m/fesetprec.3m6
-rw-r--r--usr/src/man/man3m/fetestexcept.3m9
-rw-r--r--usr/src/man/man3m/feupdateenv.3m9
-rw-r--r--usr/src/man/man3m/fex_merge_flags.3m12
-rw-r--r--usr/src/man/man3m/fex_set_handling.3m9
-rw-r--r--usr/src/man/man3m/fex_set_log.3m10
-rw-r--r--usr/src/man/man3m/floor.3m11
-rw-r--r--usr/src/man/man3m/fma.3m9
-rw-r--r--usr/src/man/man3m/fmax.3m9
-rw-r--r--usr/src/man/man3m/fmin.3m9
-rw-r--r--usr/src/man/man3m/fmod.3m10
-rw-r--r--usr/src/man/man3m/fpclassify.3m12
-rw-r--r--usr/src/man/man3m/frexp.3m9
-rw-r--r--usr/src/man/man3m/hypot.3m13
-rw-r--r--usr/src/man/man3m/ilogb.3m15
-rw-r--r--usr/src/man/man3m/isfinite.3m12
-rw-r--r--usr/src/man/man3m/isgreater.3m13
-rw-r--r--usr/src/man/man3m/isgreaterequal.3m13
-rw-r--r--usr/src/man/man3m/isinf.3m12
-rw-r--r--usr/src/man/man3m/isless.3m13
-rw-r--r--usr/src/man/man3m/islessequal.3m13
-rw-r--r--usr/src/man/man3m/islessgreater.3m13
-rw-r--r--usr/src/man/man3m/isnan.3m12
-rw-r--r--usr/src/man/man3m/isnormal.3m12
-rw-r--r--usr/src/man/man3m/isunordered.3m13
-rw-r--r--usr/src/man/man3m/j0.3m9
-rw-r--r--usr/src/man/man3m/ldexp.3m9
-rw-r--r--usr/src/man/man3m/lgamma.3m11
-rw-r--r--usr/src/man/man3m/llrint.3m10
-rw-r--r--usr/src/man/man3m/llround.3m13
-rw-r--r--usr/src/man/man3m/log.3m15
-rw-r--r--usr/src/man/man3m/log10.3m14
-rw-r--r--usr/src/man/man3m/log1p.3m11
-rw-r--r--usr/src/man/man3m/log2.3m10
-rw-r--r--usr/src/man/man3m/logb.3m15
-rw-r--r--usr/src/man/man3m/lrint.3m10
-rw-r--r--usr/src/man/man3m/lround.3m10
-rw-r--r--usr/src/man/man3m/matherr.3m7
-rw-r--r--usr/src/man/man3m/modf.3m9
-rw-r--r--usr/src/man/man3m/nan.3m7
-rw-r--r--usr/src/man/man3m/nearbyint.3m9
-rw-r--r--usr/src/man/man3m/nextafter.3m9
-rw-r--r--usr/src/man/man3m/pow.3m17
-rw-r--r--usr/src/man/man3m/remainder.3m10
-rw-r--r--usr/src/man/man3m/remquo.3m10
-rw-r--r--usr/src/man/man3m/rint.3m15
-rw-r--r--usr/src/man/man3m/round.3m9
-rw-r--r--usr/src/man/man3m/scalb.3m6
-rw-r--r--usr/src/man/man3m/scalbln.3m10
-rw-r--r--usr/src/man/man3m/signbit.3m13
-rw-r--r--usr/src/man/man3m/significand.3m6
-rw-r--r--usr/src/man/man3m/sin.3m11
-rw-r--r--usr/src/man/man3m/sincos.3m7
-rw-r--r--usr/src/man/man3m/sinh.3m15
-rw-r--r--usr/src/man/man3m/sqrt.3m10
-rw-r--r--usr/src/man/man3m/tan.3m11
-rw-r--r--usr/src/man/man3m/tanh.3m10
-rw-r--r--usr/src/man/man3m/tgamma.3m10
-rw-r--r--usr/src/man/man3m/trunc.3m6
-rw-r--r--usr/src/man/man3m/y0.3m12
-rw-r--r--usr/src/man/man3mail/maillock.3mail5
-rw-r--r--usr/src/man/man3malloc/bsdmalloc.3malloc7
-rw-r--r--usr/src/man/man3malloc/malloc.3malloc14
-rw-r--r--usr/src/man/man3malloc/mapmalloc.3malloc10
-rw-r--r--usr/src/man/man3malloc/mtmalloc.3malloc17
-rw-r--r--usr/src/man/man3malloc/umem_alloc.3malloc26
-rw-r--r--usr/src/man/man3malloc/umem_cache_create.3malloc14
-rw-r--r--usr/src/man/man3malloc/umem_debug.3malloc11
-rw-r--r--usr/src/man/man3malloc/watchmalloc.3malloc21
-rw-r--r--usr/src/man/man3mp/mp.3mp7
-rw-r--r--usr/src/man/man3mpapi/MP_AssignLogicalUnitToTPG.3mpapi8
-rw-r--r--usr/src/man/man3mpapi/MP_CancelOverridePath.3mpapi6
-rw-r--r--usr/src/man/man3mpapi/MP_CompareOIDs.3mpapi5
-rw-r--r--usr/src/man/man3mpapi/MP_DeregisterForObjectPropertyChanges.3mpapi7
-rw-r--r--usr/src/man/man3mpapi/MP_DeregisterForObjectVisibilityChanges.3mpapi7
-rw-r--r--usr/src/man/man3mpapi/MP_DeregisterPlugin.3mpapi8
-rw-r--r--usr/src/man/man3mpapi/MP_DisableAutoFailback.3mpapi6
-rw-r--r--usr/src/man/man3mpapi/MP_DisableAutoProbing.3mpapi6
-rw-r--r--usr/src/man/man3mpapi/MP_DisablePath.3mpapi6
-rw-r--r--usr/src/man/man3mpapi/MP_EnableAutoFailback.3mpapi6
-rw-r--r--usr/src/man/man3mpapi/MP_EnableAutoProbing.3mpapi6
-rw-r--r--usr/src/man/man3mpapi/MP_EnablePath.3mpapi6
-rw-r--r--usr/src/man/man3mpapi/MP_FreeOidList.3mpapi5
-rw-r--r--usr/src/man/man3mpapi/MP_GetAssociatedPathOidList.3mpapi7
-rw-r--r--usr/src/man/man3mpapi/MP_GetAssociatedPluginOid.3mpapi5
-rw-r--r--usr/src/man/man3mpapi/MP_GetAssociatedTPGOidList.3mpapi7
-rw-r--r--usr/src/man/man3mpapi/MP_GetDeviceProductOidList.3mpapi7
-rw-r--r--usr/src/man/man3mpapi/MP_GetDeviceProductProperties.3mpapi7
-rw-r--r--usr/src/man/man3mpapi/MP_GetInitiatorPortOidList.3mpapi7
-rw-r--r--usr/src/man/man3mpapi/MP_GetInitiatorPortProperties.3mpapi7
-rw-r--r--usr/src/man/man3mpapi/MP_GetLibraryProperties.3mpapi5
-rw-r--r--usr/src/man/man3mpapi/MP_GetMPLogicalUnitProperties.3mpapi8
-rw-r--r--usr/src/man/man3mpapi/MP_GetMPLuOidListFromTPG.3mpapi7
-rw-r--r--usr/src/man/man3mpapi/MP_GetMultipathLus.3mpapi7
-rw-r--r--usr/src/man/man3mpapi/MP_GetObjectType.3mpapi7
-rw-r--r--usr/src/man/man3mpapi/MP_GetPathLogicalUnitProperties.3mpapi7
-rw-r--r--usr/src/man/man3mpapi/MP_GetPluginOidList.3mpapi8
-rw-r--r--usr/src/man/man3mpapi/MP_GetPluginProperties.3mpapi8
-rw-r--r--usr/src/man/man3mpapi/MP_GetProprietaryLoadBalanceOidList.3mpapi7
-rw-r--r--usr/src/man/man3mpapi/MP_GetProprietaryLoadBalanceProperties.3mpapi7
-rw-r--r--usr/src/man/man3mpapi/MP_GetTargetPortGroupProperties.3mpapi7
-rw-r--r--usr/src/man/man3mpapi/MP_GetTargetPortOidList.3mpapi7
-rw-r--r--usr/src/man/man3mpapi/MP_GetTargetPortProperties.3mpapi7
-rw-r--r--usr/src/man/man3mpapi/MP_RegisterForObjectPropertyChanges.3mpapi7
-rw-r--r--usr/src/man/man3mpapi/MP_RegisterForObjectVisibilityChanges.3mpapi7
-rw-r--r--usr/src/man/man3mpapi/MP_RegisterPlugin.3mpapi8
-rw-r--r--usr/src/man/man3mpapi/MP_SetFailbackPollingRate.3mpapi5
-rw-r--r--usr/src/man/man3mpapi/MP_SetLogicalUnitLoadBalanceType.3mpapi5
-rw-r--r--usr/src/man/man3mpapi/MP_SetOverridePath.3mpapi5
-rw-r--r--usr/src/man/man3mpapi/MP_SetPathWeight.3mpapi5
-rw-r--r--usr/src/man/man3mpapi/MP_SetPluginLoadBalanceType.3mpapi5
-rw-r--r--usr/src/man/man3mpapi/MP_SetProbingPollingRate.3mpapi5
-rw-r--r--usr/src/man/man3mpapi/MP_SetProprietaryProperties.3mpapi5
-rw-r--r--usr/src/man/man3mpapi/MP_SetTPGAccess.3mpapi5
-rw-r--r--usr/src/man/man3mpapi/Sun_MP_SendScsiCmd.3mpapi12
-rw-r--r--usr/src/man/man3mvec/vatan2_.3mvec8
-rw-r--r--usr/src/man/man3mvec/vatan_.3mvec8
-rw-r--r--usr/src/man/man3mvec/vcos_.3mvec8
-rw-r--r--usr/src/man/man3mvec/vcospi_.3mvec6
-rw-r--r--usr/src/man/man3mvec/vexp_.3mvec8
-rw-r--r--usr/src/man/man3mvec/vhypot_.3mvec8
-rw-r--r--usr/src/man/man3mvec/vlog_.3mvec8
-rw-r--r--usr/src/man/man3mvec/vpow_.3mvec8
-rw-r--r--usr/src/man/man3mvec/vrhypot_.3mvec8
-rw-r--r--usr/src/man/man3mvec/vrsqrt_.3mvec8
-rw-r--r--usr/src/man/man3mvec/vsin_.3mvec8
-rw-r--r--usr/src/man/man3mvec/vsincos_.3mvec10
-rw-r--r--usr/src/man/man3mvec/vsincospi_.3mvec6
-rw-r--r--usr/src/man/man3mvec/vsinpi_.3mvec6
-rw-r--r--usr/src/man/man3mvec/vsqrt_.3mvec8
-rw-r--r--usr/src/man/man3mvec/vz_abs_.3mvec8
-rw-r--r--usr/src/man/man3mvec/vz_exp_.3mvec5
-rw-r--r--usr/src/man/man3mvec/vz_log_.3mvec5
-rw-r--r--usr/src/man/man3mvec/vz_pow_.3mvec5
-rw-r--r--usr/src/man/man3nsl/dial.3nsl10
-rw-r--r--usr/src/man/man3nsl/doconfig.3nsl9
-rw-r--r--usr/src/man/man3nsl/gethostbyname.3nsl26
-rw-r--r--usr/src/man/man3nsl/getipsecalgbyname.3nsl11
-rw-r--r--usr/src/man/man3nsl/getipsecprotobyname.3nsl10
-rw-r--r--usr/src/man/man3nsl/getnetconfig.3nsl10
-rw-r--r--usr/src/man/man3nsl/getnetpath.3nsl10
-rw-r--r--usr/src/man/man3nsl/getpublickey.3nsl12
-rw-r--r--usr/src/man/man3nsl/getrpcbyname.3nsl13
-rw-r--r--usr/src/man/man3nsl/netdir.3nsl11
-rw-r--r--usr/src/man/man3nsl/nlsgetcall.3nsl13
-rw-r--r--usr/src/man/man3nsl/nlsprovider.3nsl5
-rw-r--r--usr/src/man/man3nsl/nlsrequest.3nsl9
-rw-r--r--usr/src/man/man3nsl/rpc.3nsl220
-rw-r--r--usr/src/man/man3nsl/rpc_clnt_auth.3nsl9
-rw-r--r--usr/src/man/man3nsl/rpc_clnt_calls.3nsl9
-rw-r--r--usr/src/man/man3nsl/rpc_clnt_create.3nsl17
-rw-r--r--usr/src/man/man3nsl/rpc_control.3nsl8
-rw-r--r--usr/src/man/man3nsl/rpc_gss_get_error.3nsl7
-rw-r--r--usr/src/man/man3nsl/rpc_gss_get_mechanisms.3nsl9
-rw-r--r--usr/src/man/man3nsl/rpc_gss_get_principal_name.3nsl12
-rw-r--r--usr/src/man/man3nsl/rpc_gss_getcred.3nsl8
-rw-r--r--usr/src/man/man3nsl/rpc_gss_max_data_length.3nsl6
-rw-r--r--usr/src/man/man3nsl/rpc_gss_mech_to_oid.3nsl10
-rw-r--r--usr/src/man/man3nsl/rpc_gss_seccreate.3nsl11
-rw-r--r--usr/src/man/man3nsl/rpc_gss_set_callback.3nsl7
-rw-r--r--usr/src/man/man3nsl/rpc_gss_set_defaults.3nsl8
-rw-r--r--usr/src/man/man3nsl/rpc_gss_set_svc_name.3nsl9
-rw-r--r--usr/src/man/man3nsl/rpc_soc.3nsl31
-rw-r--r--usr/src/man/man3nsl/rpc_svc_calls.3nsl17
-rw-r--r--usr/src/man/man3nsl/rpc_svc_create.3nsl22
-rw-r--r--usr/src/man/man3nsl/rpc_svc_err.3nsl9
-rw-r--r--usr/src/man/man3nsl/rpc_svc_input.3nsl6
-rw-r--r--usr/src/man/man3nsl/rpc_svc_reg.3nsl18
-rw-r--r--usr/src/man/man3nsl/rpc_xdr.3nsl6
-rw-r--r--usr/src/man/man3nsl/rpcbind.3nsl12
-rw-r--r--usr/src/man/man3nsl/rpcsec_gss.3nsl11
-rw-r--r--usr/src/man/man3nsl/secure_rpc.3nsl15
-rw-r--r--usr/src/man/man3nsl/t_accept.3nsl14
-rw-r--r--usr/src/man/man3nsl/t_alloc.3nsl11
-rw-r--r--usr/src/man/man3nsl/t_bind.3nsl6
-rw-r--r--usr/src/man/man3nsl/t_close.3nsl9
-rw-r--r--usr/src/man/man3nsl/t_connect.3nsl2
-rw-r--r--usr/src/man/man3nsl/t_errno.3nsl4
-rw-r--r--usr/src/man/man3nsl/t_error.3nsl6
-rw-r--r--usr/src/man/man3nsl/t_free.3nsl5
-rw-r--r--usr/src/man/man3nsl/t_getinfo.3nsl10
-rw-r--r--usr/src/man/man3nsl/t_getprotaddr.3nsl5
-rw-r--r--usr/src/man/man3nsl/t_getstate.3nsl5
-rw-r--r--usr/src/man/man3nsl/t_listen.3nsl15
-rw-r--r--usr/src/man/man3nsl/t_look.3nsl8
-rw-r--r--usr/src/man/man3nsl/t_open.3nsl5
-rw-r--r--usr/src/man/man3nsl/t_optmgmt.3nsl23
-rw-r--r--usr/src/man/man3nsl/t_rcv.3nsl13
-rw-r--r--usr/src/man/man3nsl/t_rcvconnect.3nsl14
-rw-r--r--usr/src/man/man3nsl/t_rcvdis.3nsl10
-rw-r--r--usr/src/man/man3nsl/t_rcvrel.3nsl8
-rw-r--r--usr/src/man/man3nsl/t_rcvreldata.3nsl14
-rw-r--r--usr/src/man/man3nsl/t_rcvudata.3nsl10
-rw-r--r--usr/src/man/man3nsl/t_rcvuderr.3nsl6
-rw-r--r--usr/src/man/man3nsl/t_rcvv.3nsl12
-rw-r--r--usr/src/man/man3nsl/t_rcvvudata.3nsl13
-rw-r--r--usr/src/man/man3nsl/t_snd.3nsl10
-rw-r--r--usr/src/man/man3nsl/t_snddis.3nsl10
-rw-r--r--usr/src/man/man3nsl/t_sndrel.3nsl9
-rw-r--r--usr/src/man/man3nsl/t_sndreldata.3nsl10
-rw-r--r--usr/src/man/man3nsl/t_sndudata.3nsl15
-rw-r--r--usr/src/man/man3nsl/t_sndv.3nsl10
-rw-r--r--usr/src/man/man3nsl/t_sndvudata.3nsl5
-rw-r--r--usr/src/man/man3nsl/t_strerror.3nsl6
-rw-r--r--usr/src/man/man3nsl/t_sync.3nsl8
-rw-r--r--usr/src/man/man3nsl/t_sysconf.3nsl10
-rw-r--r--usr/src/man/man3nsl/t_unbind.3nsl5
-rw-r--r--usr/src/man/man3nsl/xdr.3nsl92
-rw-r--r--usr/src/man/man3nsl/xdr_admin.3nsl10
-rw-r--r--usr/src/man/man3nsl/xdr_complex.3nsl10
-rw-r--r--usr/src/man/man3nsl/xdr_create.3nsl14
-rw-r--r--usr/src/man/man3nsl/xdr_simple.3nsl10
-rw-r--r--usr/src/man/man3nsl/yp_update.3nsl6
-rw-r--r--usr/src/man/man3nsl/ypclnt.3nsl21
-rw-r--r--usr/src/man/man3nvpair/nvlist_add_boolean.3nvpair6
-rw-r--r--usr/src/man/man3nvpair/nvlist_alloc.3nvpair6
-rw-r--r--usr/src/man/man3nvpair/nvlist_lookup_boolean.3nvpair8
-rw-r--r--usr/src/man/man3nvpair/nvlist_lookup_nvpair.3nvpair8
-rw-r--r--usr/src/man/man3nvpair/nvlist_next_nvpair.3nvpair6
-rw-r--r--usr/src/man/man3nvpair/nvlist_remove.3nvpair5
-rw-r--r--usr/src/man/man3nvpair/nvpair_value_byte.3nvpair6
-rw-r--r--usr/src/man/man3ofmt/ofmt.3ofmt2
-rw-r--r--usr/src/man/man3pam/pam.3pam23
-rw-r--r--usr/src/man/man3pam/pam_acct_mgmt.3pam9
-rw-r--r--usr/src/man/man3pam/pam_authenticate.3pam12
-rw-r--r--usr/src/man/man3pam/pam_chauthtok.3pam6
-rw-r--r--usr/src/man/man3pam/pam_get_user.3pam14
-rw-r--r--usr/src/man/man3pam/pam_getenv.3pam9
-rw-r--r--usr/src/man/man3pam/pam_getenvlist.3pam9
-rw-r--r--usr/src/man/man3pam/pam_open_session.3pam10
-rw-r--r--usr/src/man/man3pam/pam_putenv.3pam10
-rw-r--r--usr/src/man/man3pam/pam_set_data.3pam7
-rw-r--r--usr/src/man/man3pam/pam_set_item.3pam24
-rw-r--r--usr/src/man/man3pam/pam_setcred.3pam12
-rw-r--r--usr/src/man/man3pam/pam_sm.3pam36
-rw-r--r--usr/src/man/man3pam/pam_sm_acct_mgmt.3pam17
-rw-r--r--usr/src/man/man3pam/pam_sm_authenticate.3pam20
-rw-r--r--usr/src/man/man3pam/pam_sm_chauthtok.3pam18
-rw-r--r--usr/src/man/man3pam/pam_sm_open_session.3pam14
-rw-r--r--usr/src/man/man3pam/pam_sm_setcred.3pam17
-rw-r--r--usr/src/man/man3pam/pam_start.3pam16
-rw-r--r--usr/src/man/man3pam/pam_strerror.3pam6
-rw-r--r--usr/src/man/man3papi/papiAttributeListAddValue.3papi5
-rw-r--r--usr/src/man/man3papi/papiJobSubmit.3papi7
-rw-r--r--usr/src/man/man3papi/papiLibrarySupportedCall.3papi5
-rw-r--r--usr/src/man/man3papi/papiPrintersList.3papi5
-rw-r--r--usr/src/man/man3papi/papiServiceCreate.3papi5
-rw-r--r--usr/src/man/man3papi/papiStatusString.3papi5
-rw-r--r--usr/src/man/man3perl/Kstat.3perl10
-rw-r--r--usr/src/man/man3perl/Lgrp.3perl29
-rw-r--r--usr/src/man/man3perl/Project.3perl14
-rw-r--r--usr/src/man/man3perl/Task.3perl6
-rw-r--r--usr/src/man/man3picl/libpicl.3picl5
-rw-r--r--usr/src/man/man3picl/picl_find_node.3picl10
-rw-r--r--usr/src/man/man3picl/picl_get_first_prop.3picl5
-rw-r--r--usr/src/man/man3picl/picl_get_frutree_parent.3picl10
-rw-r--r--usr/src/man/man3picl/picl_get_next_by_row.3picl5
-rw-r--r--usr/src/man/man3picl/picl_get_node_by_path.3picl5
-rw-r--r--usr/src/man/man3picl/picl_get_prop_by_name.3picl4
-rw-r--r--usr/src/man/man3picl/picl_get_propinfo.3picl8
-rw-r--r--usr/src/man/man3picl/picl_get_propinfo_by_name.3picl7
-rw-r--r--usr/src/man/man3picl/picl_get_propval.3picl6
-rw-r--r--usr/src/man/man3picl/picl_get_root.3picl6
-rw-r--r--usr/src/man/man3picl/picl_initialize.3picl5
-rw-r--r--usr/src/man/man3picl/picl_set_propval.3picl4
-rw-r--r--usr/src/man/man3picl/picl_shutdown.3picl5
-rw-r--r--usr/src/man/man3picl/picl_strerror.3picl5
-rw-r--r--usr/src/man/man3picl/picl_wait.3picl4
-rw-r--r--usr/src/man/man3picl/picl_walk_tree_by_class.3picl5
-rw-r--r--usr/src/man/man3picltree/libpicltree.3picltree9
-rw-r--r--usr/src/man/man3picltree/picld_log.3picltree5
-rw-r--r--usr/src/man/man3picltree/picld_plugin_register.3picltree5
-rw-r--r--usr/src/man/man3picltree/ptree_add_node.3picltree4
-rw-r--r--usr/src/man/man3picltree/ptree_add_prop.3picltree5
-rw-r--r--usr/src/man/man3picltree/ptree_create_and_add_node.3picltree7
-rw-r--r--usr/src/man/man3picltree/ptree_create_and_add_prop.3picltree7
-rw-r--r--usr/src/man/man3picltree/ptree_create_node.3picltree5
-rw-r--r--usr/src/man/man3picltree/ptree_create_prop.3picltree7
-rw-r--r--usr/src/man/man3picltree/ptree_create_table.3picltree4
-rw-r--r--usr/src/man/man3picltree/ptree_find_node.3picltree10
-rw-r--r--usr/src/man/man3picltree/ptree_get_first_prop.3picltree5
-rw-r--r--usr/src/man/man3picltree/ptree_get_frutree_parent.3picltree10
-rw-r--r--usr/src/man/man3picltree/ptree_get_next_by_row.3picltree5
-rw-r--r--usr/src/man/man3picltree/ptree_get_node_by_path.3picltree5
-rw-r--r--usr/src/man/man3picltree/ptree_get_prop_by_name.3picltree7
-rw-r--r--usr/src/man/man3picltree/ptree_get_propinfo.3picltree7
-rw-r--r--usr/src/man/man3picltree/ptree_get_propinfo_by_name.3picltree7
-rw-r--r--usr/src/man/man3picltree/ptree_get_propval.3picltree5
-rw-r--r--usr/src/man/man3picltree/ptree_get_root.3picltree7
-rw-r--r--usr/src/man/man3picltree/ptree_init_propinfo.3picltree5
-rw-r--r--usr/src/man/man3picltree/ptree_post_event.3picltree7
-rw-r--r--usr/src/man/man3picltree/ptree_register_handler.3picltree5
-rw-r--r--usr/src/man/man3picltree/ptree_unregister_handler.3picltree5
-rw-r--r--usr/src/man/man3picltree/ptree_update_propval.3picltree5
-rw-r--r--usr/src/man/man3picltree/ptree_walk_tree_by_class.3picltree5
-rw-r--r--usr/src/man/man3pool/pool_associate.3pool6
-rw-r--r--usr/src/man/man3pool/pool_component_info.3pool6
-rw-r--r--usr/src/man/man3pool/pool_component_to_elem.3pool6
-rw-r--r--usr/src/man/man3pool/pool_conf_alloc.3pool6
-rw-r--r--usr/src/man/man3pool/pool_dynamic_location.3pool6
-rw-r--r--usr/src/man/man3pool/pool_error.3pool6
-rw-r--r--usr/src/man/man3pool/pool_get_binding.3pool6
-rw-r--r--usr/src/man/man3pool/pool_get_pool.3pool6
-rw-r--r--usr/src/man/man3pool/pool_get_property.3pool6
-rw-r--r--usr/src/man/man3pool/pool_resource_create.3pool6
-rw-r--r--usr/src/man/man3pool/pool_value_alloc.3pool6
-rw-r--r--usr/src/man/man3pool/pool_walk_components.3pool6
-rw-r--r--usr/src/man/man3proc/Lctlfd.3proc2
-rw-r--r--usr/src/man/man3proc/Lgrab.3proc2
-rw-r--r--usr/src/man/man3proc/Lpsinfo.3proc4
-rw-r--r--usr/src/man/man3proc/Lstatus.3proc4
-rw-r--r--usr/src/man/man3proc/Paddr_to_ctf.3proc2
-rw-r--r--usr/src/man/man3proc/Paddr_to_map.3proc4
-rw-r--r--usr/src/man/man3proc/Pasfd.3proc2
-rw-r--r--usr/src/man/man3proc/Pclearfault.3proc6
-rw-r--r--usr/src/man/man3proc/Pclearsig.3proc4
-rw-r--r--usr/src/man/man3proc/Pcontent.3proc4
-rw-r--r--usr/src/man/man3proc/Pcreate.3proc2
-rw-r--r--usr/src/man/man3proc/Pcreate_agent.3proc4
-rw-r--r--usr/src/man/man3proc/Pcred.3proc4
-rw-r--r--usr/src/man/man3proc/Pctlfd.3proc2
-rw-r--r--usr/src/man/man3proc/Pdelbkpt.3proc4
-rw-r--r--usr/src/man/man3proc/Pdelwapt.3proc4
-rw-r--r--usr/src/man/man3proc/Pfault.3proc4
-rw-r--r--usr/src/man/man3proc/Pgcore.3proc8
-rw-r--r--usr/src/man/man3proc/Pgetareg.3proc4
-rw-r--r--usr/src/man/man3proc/Pgetauxval.3proc2
-rw-r--r--usr/src/man/man3proc/Pgetauxvec.3proc2
-rw-r--r--usr/src/man/man3proc/Pgetenv.3proc2
-rw-r--r--usr/src/man/man3proc/Pgrab.3proc2
-rw-r--r--usr/src/man/man3proc/Pgrab_core.3proc4
-rw-r--r--usr/src/man/man3proc/Pisprocdir.3proc4
-rw-r--r--usr/src/man/man3proc/Pldt.3proc6
-rw-r--r--usr/src/man/man3proc/Plmid.3proc2
-rw-r--r--usr/src/man/man3proc/Plookup_by_addr.3proc2
-rw-r--r--usr/src/man/man3proc/Plwp_getasrs.3proc6
-rw-r--r--usr/src/man/man3proc/Plwp_getgwindows.3proc4
-rw-r--r--usr/src/man/man3proc/Plwp_getname.3proc4
-rw-r--r--usr/src/man/man3proc/Plwp_getpsinfo.3proc6
-rw-r--r--usr/src/man/man3proc/Plwp_getregs.3proc6
-rw-r--r--usr/src/man/man3proc/Plwp_getspymaster.3proc8
-rw-r--r--usr/src/man/man3proc/Plwp_getxregs.3proc6
-rw-r--r--usr/src/man/man3proc/Plwp_stack.3proc4
-rw-r--r--usr/src/man/man3proc/Pmapping_iter.3proc4
-rw-r--r--usr/src/man/man3proc/Pobjname.3proc2
-rw-r--r--usr/src/man/man3proc/Pplatform.3proc2
-rw-r--r--usr/src/man/man3proc/Ppriv.3proc6
-rw-r--r--usr/src/man/man3proc/Ppsinfo.3proc4
-rw-r--r--usr/src/man/man3proc/Prd_agent.3proc2
-rw-r--r--usr/src/man/man3proc/Pread.3proc4
-rw-r--r--usr/src/man/man3proc/Prelease.3proc2
-rw-r--r--usr/src/man/man3proc/Preopen.3proc4
-rw-r--r--usr/src/man/man3proc/Preset_maps.3proc2
-rw-r--r--usr/src/man/man3proc/Psecflags.3proc6
-rw-r--r--usr/src/man/man3proc/Psetbkpt.3proc4
-rw-r--r--usr/src/man/man3proc/Psetcred.3proc4
-rw-r--r--usr/src/man/man3proc/Psetfault.3proc4
-rw-r--r--usr/src/man/man3proc/Psetflags.3proc6
-rw-r--r--usr/src/man/man3proc/Psetpriv.3proc10
-rw-r--r--usr/src/man/man3proc/Psetrun.3proc8
-rw-r--r--usr/src/man/man3proc/Psetsignal.3proc4
-rw-r--r--usr/src/man/man3proc/Psetsysentry.3proc4
-rw-r--r--usr/src/man/man3proc/Psetwapt.3proc6
-rw-r--r--usr/src/man/man3proc/Psetzoneid.3proc10
-rw-r--r--usr/src/man/man3proc/Psignal.3proc2
-rw-r--r--usr/src/man/man3proc/Pstack_iter.3proc2
-rw-r--r--usr/src/man/man3proc/Pstatus.3proc4
-rw-r--r--usr/src/man/man3proc/Pstopstatus.3proc6
-rw-r--r--usr/src/man/man3proc/Psymbol_iter.3proc2
-rw-r--r--usr/src/man/man3proc/Psync.3proc2
-rw-r--r--usr/src/man/man3proc/Psysentry.3proc6
-rw-r--r--usr/src/man/man3proc/Pupanic.3proc2
-rw-r--r--usr/src/man/man3proc/Pwrite.3proc4
-rw-r--r--usr/src/man/man3proc/Pxecbkpt.3proc4
-rw-r--r--usr/src/man/man3proc/Pzonename.3proc2
-rw-r--r--usr/src/man/man3proc/pr_access.3proc2
-rw-r--r--usr/src/man/man3proc/pr_close.3proc2
-rw-r--r--usr/src/man/man3proc/pr_creat.3proc2
-rw-r--r--usr/src/man/man3proc/pr_door_info.3proc2
-rw-r--r--usr/src/man/man3proc/pr_exit.3proc2
-rw-r--r--usr/src/man/man3proc/pr_fcntl.3proc2
-rw-r--r--usr/src/man/man3proc/pr_fstatvfs.3proc2
-rw-r--r--usr/src/man/man3proc/pr_getitimer.3proc2
-rw-r--r--usr/src/man/man3proc/pr_getpeername.3proc2
-rw-r--r--usr/src/man/man3proc/pr_getpeerucred.3proc2
-rw-r--r--usr/src/man/man3proc/pr_getprojid.3proc2
-rw-r--r--usr/src/man/man3proc/pr_getrctl.3proc2
-rw-r--r--usr/src/man/man3proc/pr_getrlimit.3proc6
-rw-r--r--usr/src/man/man3proc/pr_getsockname.3proc2
-rw-r--r--usr/src/man/man3proc/pr_getsockopt.3proc2
-rw-r--r--usr/src/man/man3proc/pr_gettaskid.3proc2
-rw-r--r--usr/src/man/man3proc/pr_getzoneid.3proc2
-rw-r--r--usr/src/man/man3proc/pr_ioctl.3proc2
-rw-r--r--usr/src/man/man3proc/pr_link.3proc2
-rw-r--r--usr/src/man/man3proc/pr_llseek.3proc2
-rw-r--r--usr/src/man/man3proc/pr_lseek.3proc2
-rw-r--r--usr/src/man/man3proc/pr_memcntl.3proc2
-rw-r--r--usr/src/man/man3proc/pr_meminfo.3proc2
-rw-r--r--usr/src/man/man3proc/pr_mmap.3proc2
-rw-r--r--usr/src/man/man3proc/pr_munmap.3proc2
-rw-r--r--usr/src/man/man3proc/pr_open.3proc2
-rw-r--r--usr/src/man/man3proc/pr_processor_bind.3proc2
-rw-r--r--usr/src/man/man3proc/pr_rename.3proc2
-rw-r--r--usr/src/man/man3proc/pr_setitimer.3proc2
-rw-r--r--usr/src/man/man3proc/pr_setrctl.3proc2
-rw-r--r--usr/src/man/man3proc/pr_setrlimit.3proc6
-rw-r--r--usr/src/man/man3proc/pr_settaskid.3proc2
-rw-r--r--usr/src/man/man3proc/pr_sigaction.3proc2
-rw-r--r--usr/src/man/man3proc/pr_stat.3proc6
-rw-r--r--usr/src/man/man3proc/pr_statvfs.3proc2
-rw-r--r--usr/src/man/man3proc/pr_unlink.3proc2
-rw-r--r--usr/src/man/man3proc/pr_waitid.3proc2
-rw-r--r--usr/src/man/man3proc/proc_arg_grab.3proc2
-rw-r--r--usr/src/man/man3proc/proc_arg_psinfo.3proc2
-rw-r--r--usr/src/man/man3proc/proc_content2str.3proc4
-rw-r--r--usr/src/man/man3proc/proc_fdinfo_misc.3proc4
-rw-r--r--usr/src/man/man3proc/proc_fdinfowalk.3proc4
-rw-r--r--usr/src/man/man3proc/proc_fdwalk.3proc2
-rw-r--r--usr/src/man/man3proc/proc_fltname.3proc2
-rw-r--r--usr/src/man/man3proc/proc_fltset2str.3proc2
-rw-r--r--usr/src/man/man3proc/proc_get_auxv.3proc2
-rw-r--r--usr/src/man/man3proc/proc_get_cred.3proc4
-rw-r--r--usr/src/man/man3proc/proc_get_fdinfo.3proc4
-rw-r--r--usr/src/man/man3proc/proc_get_lwpsinfo.3proc4
-rw-r--r--usr/src/man/man3proc/proc_get_priv.3proc4
-rw-r--r--usr/src/man/man3proc/proc_get_psinfo.3proc4
-rw-r--r--usr/src/man/man3proc/proc_get_status.3proc4
-rw-r--r--usr/src/man/man3proc/proc_lwp_in_set.3proc4
-rw-r--r--usr/src/man/man3proc/proc_service.3proc9
-rw-r--r--usr/src/man/man3proc/proc_str2flt.3proc2
-rw-r--r--usr/src/man/man3proc/proc_str2fltset.3proc2
-rw-r--r--usr/src/man/man3proc/proc_unctrl_psinfo.3proc2
-rw-r--r--usr/src/man/man3proc/proc_walk.3proc2
-rw-r--r--usr/src/man/man3proc/ps_lgetregs.3proc8
-rw-r--r--usr/src/man/man3proc/ps_pglobal_lookup.3proc9
-rw-r--r--usr/src/man/man3proc/ps_pread.3proc10
-rw-r--r--usr/src/man/man3proc/ps_pstop.3proc9
-rw-r--r--usr/src/man/man3project/getprojent.3project20
-rw-r--r--usr/src/man/man3project/project_walk.3project8
-rw-r--r--usr/src/man/man3project/setproject.3project26
-rw-r--r--usr/src/man/man3resolv/resolver.3resolv15
-rw-r--r--usr/src/man/man3rpc/rstat.3rpc10
-rw-r--r--usr/src/man/man3rpc/rusers.3rpc11
-rw-r--r--usr/src/man/man3rpc/rwall.3rpc12
-rw-r--r--usr/src/man/man3rsm/rsm_create_localmemory_handle.3rsm5
-rw-r--r--usr/src/man/man3rsm/rsm_get_controller.3rsm7
-rw-r--r--usr/src/man/man3rsm/rsm_get_interconnect_topology.3rsm4
-rw-r--r--usr/src/man/man3rsm/rsm_get_segmentid_range.3rsm5
-rw-r--r--usr/src/man/man3rsm/rsm_intr_signal_post.3rsm5
-rw-r--r--usr/src/man/man3rsm/rsm_intr_signal_wait_pollfd.3rsm10
-rw-r--r--usr/src/man/man3rsm/rsm_memseg_export_create.3rsm7
-rw-r--r--usr/src/man/man3rsm/rsm_memseg_export_publish.3rsm5
-rw-r--r--usr/src/man/man3rsm/rsm_memseg_get_pollfd.3rsm8
-rw-r--r--usr/src/man/man3rsm/rsm_memseg_import_connect.3rsm5
-rw-r--r--usr/src/man/man3rsm/rsm_memseg_import_get.3rsm9
-rw-r--r--usr/src/man/man3rsm/rsm_memseg_import_init_barrier.3rsm7
-rw-r--r--usr/src/man/man3rsm/rsm_memseg_import_map.3rsm10
-rw-r--r--usr/src/man/man3rsm/rsm_memseg_import_open_barrier.3rsm7
-rw-r--r--usr/src/man/man3rsm/rsm_memseg_import_put.3rsm10
-rw-r--r--usr/src/man/man3rsm/rsm_memseg_import_putv.3rsm7
-rw-r--r--usr/src/man/man3rsm/rsm_memseg_import_set_mode.3rsm8
-rw-r--r--usr/src/man/man3sasl/sasl_authorize_t.3sasl6
-rw-r--r--usr/src/man/man3sasl/sasl_auxprop.3sasl8
-rw-r--r--usr/src/man/man3sasl/sasl_auxprop_add_plugin.3sasl5
-rw-r--r--usr/src/man/man3sasl/sasl_auxprop_getctx.3sasl4
-rw-r--r--usr/src/man/man3sasl/sasl_auxprop_request.3sasl10
-rw-r--r--usr/src/man/man3sasl/sasl_canon_user_t.3sasl6
-rw-r--r--usr/src/man/man3sasl/sasl_canonuser_add_plugin.3sasl5
-rw-r--r--usr/src/man/man3sasl/sasl_chalprompt_t.3sasl6
-rw-r--r--usr/src/man/man3sasl/sasl_checkapop.3sasl5
-rw-r--r--usr/src/man/man3sasl/sasl_checkpass.3sasl5
-rw-r--r--usr/src/man/man3sasl/sasl_client_add_plugin.3sasl5
-rw-r--r--usr/src/man/man3sasl/sasl_client_init.3sasl5
-rw-r--r--usr/src/man/man3sasl/sasl_client_new.3sasl6
-rw-r--r--usr/src/man/man3sasl/sasl_client_plug_init_t.3sasl5
-rw-r--r--usr/src/man/man3sasl/sasl_client_start.3sasl5
-rw-r--r--usr/src/man/man3sasl/sasl_client_step.3sasl5
-rw-r--r--usr/src/man/man3sasl/sasl_decode.3sasl6
-rw-r--r--usr/src/man/man3sasl/sasl_decode64.3sasl5
-rw-r--r--usr/src/man/man3sasl/sasl_dispose.3sasl4
-rw-r--r--usr/src/man/man3sasl/sasl_done.3sasl5
-rw-r--r--usr/src/man/man3sasl/sasl_encode.3sasl4
-rw-r--r--usr/src/man/man3sasl/sasl_encode64.3sasl5
-rw-r--r--usr/src/man/man3sasl/sasl_erasebuffer.3sasl4
-rw-r--r--usr/src/man/man3sasl/sasl_errdetail.3sasl6
-rw-r--r--usr/src/man/man3sasl/sasl_errors.3sasl4
-rw-r--r--usr/src/man/man3sasl/sasl_errstring.3sasl6
-rw-r--r--usr/src/man/man3sasl/sasl_getcallback_t.3sasl5
-rw-r--r--usr/src/man/man3sasl/sasl_getopt_t.3sasl5
-rw-r--r--usr/src/man/man3sasl/sasl_getpath_t.3sasl5
-rw-r--r--usr/src/man/man3sasl/sasl_getprop.3sasl5
-rw-r--r--usr/src/man/man3sasl/sasl_getrealm_t.3sasl5
-rw-r--r--usr/src/man/man3sasl/sasl_getsecret_t.3sasl5
-rw-r--r--usr/src/man/man3sasl/sasl_getsimple_t.3sasl5
-rw-r--r--usr/src/man/man3sasl/sasl_global_listmech.3sasl4
-rw-r--r--usr/src/man/man3sasl/sasl_idle.3sasl4
-rw-r--r--usr/src/man/man3sasl/sasl_listmech.3sasl5
-rw-r--r--usr/src/man/man3sasl/sasl_log_t.3sasl6
-rw-r--r--usr/src/man/man3sasl/sasl_server_add_plugin.3sasl5
-rw-r--r--usr/src/man/man3sasl/sasl_server_init.3sasl5
-rw-r--r--usr/src/man/man3sasl/sasl_server_new.3sasl6
-rw-r--r--usr/src/man/man3sasl/sasl_server_plug_init_t.3sasl5
-rw-r--r--usr/src/man/man3sasl/sasl_server_start.3sasl6
-rw-r--r--usr/src/man/man3sasl/sasl_server_step.3sasl5
-rw-r--r--usr/src/man/man3sasl/sasl_server_userdb_checkpass_t.3sasl5
-rw-r--r--usr/src/man/man3sasl/sasl_server_userdb_setpass_t.3sasl6
-rw-r--r--usr/src/man/man3sasl/sasl_set_alloc.3sasl4
-rw-r--r--usr/src/man/man3sasl/sasl_set_mutex.3sasl4
-rw-r--r--usr/src/man/man3sasl/sasl_seterror.3sasl6
-rw-r--r--usr/src/man/man3sasl/sasl_setpass.3sasl6
-rw-r--r--usr/src/man/man3sasl/sasl_setprop.3sasl5
-rw-r--r--usr/src/man/man3sasl/sasl_utf8verify.3sasl4
-rw-r--r--usr/src/man/man3sasl/sasl_verifyfile_t.3sasl5
-rw-r--r--usr/src/man/man3sasl/sasl_version.3sasl4
-rw-r--r--usr/src/man/man3scf/scf_entry_create.3scf19
-rw-r--r--usr/src/man/man3scf/scf_error.3scf14
-rw-r--r--usr/src/man/man3scf/scf_handle_create.3scf8
-rw-r--r--usr/src/man/man3scf/scf_handle_decode_fmri.3scf8
-rw-r--r--usr/src/man/man3scf/scf_instance_create.3scf19
-rw-r--r--usr/src/man/man3scf/scf_iter_create.3scf9
-rw-r--r--usr/src/man/man3scf/scf_limit.3scf6
-rw-r--r--usr/src/man/man3scf/scf_pg_create.3scf20
-rw-r--r--usr/src/man/man3scf/scf_property_create.3scf17
-rw-r--r--usr/src/man/man3scf/scf_scope_create.3scf15
-rw-r--r--usr/src/man/man3scf/scf_service_create.3scf20
-rw-r--r--usr/src/man/man3scf/scf_simple_prop_get.3scf6
-rw-r--r--usr/src/man/man3scf/scf_simple_walk_instances.3scf5
-rw-r--r--usr/src/man/man3scf/scf_snaplevel_create.3scf11
-rw-r--r--usr/src/man/man3scf/scf_snapshot_create.3scf15
-rw-r--r--usr/src/man/man3scf/scf_tmpl_pg_create.3scf13
-rw-r--r--usr/src/man/man3scf/scf_tmpl_pg_name.3scf15
-rw-r--r--usr/src/man/man3scf/scf_tmpl_prop_create.3scf11
-rw-r--r--usr/src/man/man3scf/scf_tmpl_prop_name.3scf14
-rw-r--r--usr/src/man/man3scf/scf_tmpl_validate_fmri.3scf16
-rw-r--r--usr/src/man/man3scf/scf_transaction_create.3scf11
-rw-r--r--usr/src/man/man3scf/scf_value_create.3scf8
-rw-r--r--usr/src/man/man3scf/smf_enable_instance.3scf14
-rw-r--r--usr/src/man/man3sec/acl_check.3sec9
-rw-r--r--usr/src/man/man3sec/acl_free.3sec6
-rw-r--r--usr/src/man/man3sec/acl_get.3sec7
-rw-r--r--usr/src/man/man3sec/acl_strip.3sec7
-rw-r--r--usr/src/man/man3sec/acl_totext.3sec11
-rw-r--r--usr/src/man/man3sec/acl_trivial.3sec5
-rw-r--r--usr/src/man/man3sec/aclcheck.3sec6
-rw-r--r--usr/src/man/man3sec/aclsort.3sec6
-rw-r--r--usr/src/man/man3sec/acltomode.3sec5
-rw-r--r--usr/src/man/man3sec/acltotext.3sec6
-rw-r--r--usr/src/man/man3secdb/getauthattr.3secdb25
-rw-r--r--usr/src/man/man3secdb/getexecattr.3secdb28
-rw-r--r--usr/src/man/man3secdb/getprofattr.3secdb14
-rw-r--r--usr/src/man/man3secdb/getuserattr.3secdb15
-rw-r--r--usr/src/man/man3secdb/kva_match.3secdb8
-rw-r--r--usr/src/man/man3sip/sip_add_branchid_to_via.3sip4
-rw-r--r--usr/src/man/man3sip/sip_add_from.3sip4
-rw-r--r--usr/src/man/man3sip/sip_add_header.3sip4
-rw-r--r--usr/src/man/man3sip/sip_add_param.3sip4
-rw-r--r--usr/src/man/man3sip/sip_add_request_line.3sip4
-rw-r--r--usr/src/man/man3sip/sip_branchid.3sip4
-rw-r--r--usr/src/man/man3sip/sip_clone_msg.3sip4
-rw-r--r--usr/src/man/man3sip/sip_copy_start_line.3sip4
-rw-r--r--usr/src/man/man3sip/sip_create_OKack.3sip4
-rw-r--r--usr/src/man/man3sip/sip_create_dialog_req.3sip5
-rw-r--r--usr/src/man/man3sip/sip_create_response.3sip4
-rw-r--r--usr/src/man/man3sip/sip_delete_dialog.3sip4
-rw-r--r--usr/src/man/man3sip/sip_delete_start_line.3sip4
-rw-r--r--usr/src/man/man3sip/sip_enable_counters.3sip4
-rw-r--r--usr/src/man/man3sip/sip_enable_trans_logging.3sip5
-rw-r--r--usr/src/man/man3sip/sip_get_contact_display_name.3sip4
-rw-r--r--usr/src/man/man3sip/sip_get_cseq.3sip4
-rw-r--r--usr/src/man/man3sip/sip_get_dialog_state.3sip4
-rw-r--r--usr/src/man/man3sip/sip_get_header.3sip4
-rw-r--r--usr/src/man/man3sip/sip_get_header_value.3sip4
-rw-r--r--usr/src/man/man3sip/sip_get_msg_len.3sip4
-rw-r--r--usr/src/man/man3sip/sip_get_num_via.3sip4
-rw-r--r--usr/src/man/man3sip/sip_get_param_value.3sip4
-rw-r--r--usr/src/man/man3sip/sip_get_request_method.3sip4
-rw-r--r--usr/src/man/man3sip/sip_get_request_uri_str.3sip4
-rw-r--r--usr/src/man/man3sip/sip_get_resp_desc.3sip4
-rw-r--r--usr/src/man/man3sip/sip_get_trans.3sip4
-rw-r--r--usr/src/man/man3sip/sip_get_trans_method.3sip4
-rw-r--r--usr/src/man/man3sip/sip_get_uri_parsed.3sip4
-rw-r--r--usr/src/man/man3sip/sip_guid.3sip4
-rw-r--r--usr/src/man/man3sip/sip_hold_dialog.3sip4
-rw-r--r--usr/src/man/man3sip/sip_hold_msg.3sip4
-rw-r--r--usr/src/man/man3sip/sip_hold_trans.3sip4
-rw-r--r--usr/src/man/man3sip/sip_init_conn_object.3sip4
-rw-r--r--usr/src/man/man3sip/sip_is_sip_uri.3sip4
-rw-r--r--usr/src/man/man3sip/sip_msg_is_request.3sip4
-rw-r--r--usr/src/man/man3sip/sip_msg_to_str.3sip4
-rw-r--r--usr/src/man/man3sip/sip_new_msg.3sip4
-rw-r--r--usr/src/man/man3sip/sip_parse_uri.3sip4
-rw-r--r--usr/src/man/man3sip/sip_process_new_packet.3sip4
-rw-r--r--usr/src/man/man3sip/sip_register_sent_by.3sip4
-rw-r--r--usr/src/man/man3sip/sip_sendmsg.3sip4
-rw-r--r--usr/src/man/man3sip/sip_stack_init.3sip5
-rw-r--r--usr/src/man/man3slp/SLPClose.3slp7
-rw-r--r--usr/src/man/man3slp/SLPDelAttrs.3slp7
-rw-r--r--usr/src/man/man3slp/SLPDereg.3slp7
-rw-r--r--usr/src/man/man3slp/SLPEscape.3slp8
-rw-r--r--usr/src/man/man3slp/SLPFindAttrs.3slp7
-rw-r--r--usr/src/man/man3slp/SLPFindScopes.3slp8
-rw-r--r--usr/src/man/man3slp/SLPFindSrvTypes.3slp7
-rw-r--r--usr/src/man/man3slp/SLPFindSrvs.3slp7
-rw-r--r--usr/src/man/man3slp/SLPFree.3slp12
-rw-r--r--usr/src/man/man3slp/SLPGetProperty.3slp7
-rw-r--r--usr/src/man/man3slp/SLPGetRefreshInterval.3slp7
-rw-r--r--usr/src/man/man3slp/SLPOpen.3slp7
-rw-r--r--usr/src/man/man3slp/SLPParseSrvURL.3slp7
-rw-r--r--usr/src/man/man3slp/SLPReg.3slp7
-rw-r--r--usr/src/man/man3slp/SLPSetProperty.3slp7
-rw-r--r--usr/src/man/man3slp/SLPUnescape.3slp8
-rw-r--r--usr/src/man/man3slp/slp_api.3slp11
-rw-r--r--usr/src/man/man3slp/slp_strerror.3slp7
-rw-r--r--usr/src/man/man3socket/accept.3socket10
-rw-r--r--usr/src/man/man3socket/bind.3socket10
-rw-r--r--usr/src/man/man3socket/connect.3socket13
-rw-r--r--usr/src/man/man3socket/ethers.3socket10
-rw-r--r--usr/src/man/man3socket/getaddrinfo.3socket29
-rw-r--r--usr/src/man/man3socket/getifaddrs.3socket16
-rw-r--r--usr/src/man/man3socket/getipnodebyname.3socket13
-rw-r--r--usr/src/man/man3socket/getnetbyname.3socket17
-rw-r--r--usr/src/man/man3socket/getpeername.3socket12
-rw-r--r--usr/src/man/man3socket/getprotobyname.3socket15
-rw-r--r--usr/src/man/man3socket/getservbyname.3socket22
-rw-r--r--usr/src/man/man3socket/getsockname.3socket9
-rw-r--r--usr/src/man/man3socket/getsockopt.3socket28
-rw-r--r--usr/src/man/man3socket/getsourcefilter.3socket8
-rw-r--r--usr/src/man/man3socket/icmp6_filter.3socket2
-rw-r--r--usr/src/man/man3socket/if_nametoindex.3socket8
-rw-r--r--usr/src/man/man3socket/inet6_opt.3socket2
-rw-r--r--usr/src/man/man3socket/inet6_rth.3socket2
-rw-r--r--usr/src/man/man3socket/listen.3socket9
-rw-r--r--usr/src/man/man3socket/rcmd.3socket18
-rw-r--r--usr/src/man/man3socket/recv.3socket14
-rw-r--r--usr/src/man/man3socket/rexec.3socket14
-rw-r--r--usr/src/man/man3socket/sctp_bindx.3socket22
-rw-r--r--usr/src/man/man3socket/sctp_getladdrs.3socket20
-rw-r--r--usr/src/man/man3socket/sctp_getpaddrs.3socket20
-rw-r--r--usr/src/man/man3socket/sctp_opt_info.3socket16
-rw-r--r--usr/src/man/man3socket/sctp_peeloff.3socket7
-rw-r--r--usr/src/man/man3socket/sctp_recvmsg.3socket20
-rw-r--r--usr/src/man/man3socket/sctp_send.3socket17
-rw-r--r--usr/src/man/man3socket/sctp_sendmsg.3socket18
-rw-r--r--usr/src/man/man3socket/send.3socket20
-rw-r--r--usr/src/man/man3socket/shutdown.3socket8
-rw-r--r--usr/src/man/man3socket/sockaddr.3socket26
-rw-r--r--usr/src/man/man3socket/socket.3socket32
-rw-r--r--usr/src/man/man3socket/socketpair.3socket9
-rw-r--r--usr/src/man/man3socket/spray.3socket6
-rw-r--r--usr/src/man/man3stmf/stmfAddToHostGroup.3stmf5
-rw-r--r--usr/src/man/man3stmf/stmfAddToTargetGroup.3stmf5
-rw-r--r--usr/src/man/man3stmf/stmfAddViewEntry.3stmf5
-rw-r--r--usr/src/man/man3stmf/stmfClearProviderData.3stmf5
-rw-r--r--usr/src/man/man3stmf/stmfCreateHostGroup.3stmf5
-rw-r--r--usr/src/man/man3stmf/stmfCreateLu.3stmf8
-rw-r--r--usr/src/man/man3stmf/stmfCreateLuResource.3stmf5
-rw-r--r--usr/src/man/man3stmf/stmfCreateTargetGroup.3stmf5
-rw-r--r--usr/src/man/man3stmf/stmfDeleteHostGroup.3stmf5
-rw-r--r--usr/src/man/man3stmf/stmfDeleteLu.3stmf6
-rw-r--r--usr/src/man/man3stmf/stmfDeleteTargetGroup.3stmf5
-rw-r--r--usr/src/man/man3stmf/stmfDevidFromIscsiName.3stmf5
-rw-r--r--usr/src/man/man3stmf/stmfDevidFromWwn.3stmf5
-rw-r--r--usr/src/man/man3stmf/stmfFreeLuResource.3stmf8
-rw-r--r--usr/src/man/man3stmf/stmfFreeMemory.3stmf5
-rw-r--r--usr/src/man/man3stmf/stmfGetHostGroupList.3stmf6
-rw-r--r--usr/src/man/man3stmf/stmfGetHostGroupMembers.3stmf6
-rw-r--r--usr/src/man/man3stmf/stmfGetLogicalUnitList.3stmf6
-rw-r--r--usr/src/man/man3stmf/stmfGetLogicalUnitProperties.3stmf5
-rw-r--r--usr/src/man/man3stmf/stmfGetLuResource.3stmf6
-rw-r--r--usr/src/man/man3stmf/stmfGetPersistMethod.3stmf5
-rw-r--r--usr/src/man/man3stmf/stmfGetProviderData.3stmf8
-rw-r--r--usr/src/man/man3stmf/stmfGetProviderDataProt.3stmf8
-rw-r--r--usr/src/man/man3stmf/stmfGetState.3stmf5
-rw-r--r--usr/src/man/man3stmf/stmfGetTargetGroupList.3stmf6
-rw-r--r--usr/src/man/man3stmf/stmfGetTargetGroupMembers.3stmf6
-rw-r--r--usr/src/man/man3stmf/stmfGetTargetList.3stmf6
-rw-r--r--usr/src/man/man3stmf/stmfGetTargetProperties.3stmf5
-rw-r--r--usr/src/man/man3stmf/stmfGetViewEntryList.3stmf6
-rw-r--r--usr/src/man/man3stmf/stmfModifyLu.3stmf6
-rw-r--r--usr/src/man/man3stmf/stmfOfflineLogicalUnit.3stmf5
-rw-r--r--usr/src/man/man3stmf/stmfOfflineTarget.3stmf5
-rw-r--r--usr/src/man/man3stmf/stmfOnlineLogicalUnit.3stmf5
-rw-r--r--usr/src/man/man3stmf/stmfOnlineTarget.3stmf5
-rw-r--r--usr/src/man/man3stmf/stmfRemoveFromHostGroup.3stmf5
-rw-r--r--usr/src/man/man3stmf/stmfRemoveFromTargetGroup.3stmf5
-rw-r--r--usr/src/man/man3stmf/stmfRemoveViewEntry.3stmf5
-rw-r--r--usr/src/man/man3stmf/stmfSetLuProp.3stmf8
-rw-r--r--usr/src/man/man3stmf/stmfSetPersistMethod.3stmf5
-rw-r--r--usr/src/man/man3stmf/stmfSetProviderData.3stmf6
-rw-r--r--usr/src/man/man3stmf/stmfSetProviderDataProt.3stmf10
-rw-r--r--usr/src/man/man3sysevent/sysevent_bind_handle.3sysevent9
-rw-r--r--usr/src/man/man3sysevent/sysevent_free.3sysevent4
-rw-r--r--usr/src/man/man3sysevent/sysevent_get_attr_list.3sysevent8
-rw-r--r--usr/src/man/man3sysevent/sysevent_get_class_name.3sysevent4
-rw-r--r--usr/src/man/man3sysevent/sysevent_get_vendor_name.3sysevent5
-rw-r--r--usr/src/man/man3sysevent/sysevent_post_event.3sysevent13
-rw-r--r--usr/src/man/man3sysevent/sysevent_subscribe_event.3sysevent12
-rw-r--r--usr/src/man/man3sysevent/sysevents.3sysevent4
-rw-r--r--usr/src/man/man3tecla/cpl_complete_word.3tecla9
-rw-r--r--usr/src/man/man3tecla/ef_expand_file.3tecla9
-rw-r--r--usr/src/man/man3tecla/gl_get_line.3tecla16
-rw-r--r--usr/src/man/man3tecla/gl_io_mode.3tecla12
-rw-r--r--usr/src/man/man3tecla/libtecla_version.3tecla5
-rw-r--r--usr/src/man/man3tecla/pca_lookup_file.3tecla9
-rw-r--r--usr/src/man/man3tnf/TNF_DECLARE_RECORD.3tnf9
-rw-r--r--usr/src/man/man3tnf/TNF_PROBE.3tnf15
-rw-r--r--usr/src/man/man3tnf/libtnfctl.3tnf56
-rw-r--r--usr/src/man/man3tnf/tnf_process_disable.3tnf9
-rw-r--r--usr/src/man/man3tnf/tnfctl_buffer_alloc.3tnf20
-rw-r--r--usr/src/man/man3tnf/tnfctl_close.3tnf16
-rw-r--r--usr/src/man/man3tnf/tnfctl_indirect_open.3tnf18
-rw-r--r--usr/src/man/man3tnf/tnfctl_internal_open.3tnf13
-rw-r--r--usr/src/man/man3tnf/tnfctl_kernel_open.3tnf11
-rw-r--r--usr/src/man/man3tnf/tnfctl_pid_open.3tnf4
-rw-r--r--usr/src/man/man3tnf/tnfctl_probe_apply.3tnf16
-rw-r--r--usr/src/man/man3tnf/tnfctl_probe_state_get.3tnf16
-rw-r--r--usr/src/man/man3tnf/tnfctl_register_funcs.3tnf16
-rw-r--r--usr/src/man/man3tnf/tnfctl_strerror.3tnf9
-rw-r--r--usr/src/man/man3tnf/tnfctl_trace_attrs_get.3tnf15
-rw-r--r--usr/src/man/man3tnf/tnfctl_trace_state_set.3tnf14
-rw-r--r--usr/src/man/man3tnf/tracing.3tnf17
-rw-r--r--usr/src/man/man3tsol/blcompare.3tsol12
-rw-r--r--usr/src/man/man3tsol/blminmax.3tsol8
-rw-r--r--usr/src/man/man3tsol/bltocolor.3tsol6
-rw-r--r--usr/src/man/man3tsol/bltos.3tsol10
-rw-r--r--usr/src/man/man3tsol/btohex.3tsol10
-rw-r--r--usr/src/man/man3tsol/getdevicerange.3tsol9
-rw-r--r--usr/src/man/man3tsol/getlabel.3tsol9
-rw-r--r--usr/src/man/man3tsol/getpathbylabel.3tsol9
-rw-r--r--usr/src/man/man3tsol/getplabel.3tsol9
-rw-r--r--usr/src/man/man3tsol/getuserrange.3tsol14
-rw-r--r--usr/src/man/man3tsol/getzonelabelbyid.3tsol12
-rw-r--r--usr/src/man/man3tsol/getzonerootbyid.3tsol10
-rw-r--r--usr/src/man/man3tsol/hextob.3tsol8
-rw-r--r--usr/src/man/man3tsol/label_to_str.3tsol12
-rw-r--r--usr/src/man/man3tsol/m_label.3tsol10
-rw-r--r--usr/src/man/man3tsol/sbltos.3tsol8
-rw-r--r--usr/src/man/man3tsol/setflabel.3tsol5
-rw-r--r--usr/src/man/man3tsol/stobl.3tsol9
-rw-r--r--usr/src/man/man3tsol/str_to_label.3tsol14
-rw-r--r--usr/src/man/man3tsol/tsol_getrhtype.3tsol5
-rw-r--r--usr/src/man/man3utempter/utempter_add_record.3utempter8
-rw-r--r--usr/src/man/man3uuid/uuid_clear.3uuid2
-rw-r--r--usr/src/man/man3volmgt/media_findname.3volmgt22
-rw-r--r--usr/src/man/man3volmgt/media_getattr.3volmgt23
-rw-r--r--usr/src/man/man3volmgt/media_getid.3volmgt10
-rw-r--r--usr/src/man/man3volmgt/volmgt_acquire.3volmgt11
-rw-r--r--usr/src/man/man3volmgt/volmgt_check.3volmgt13
-rw-r--r--usr/src/man/man3volmgt/volmgt_feature_enabled.3volmgt10
-rw-r--r--usr/src/man/man3volmgt/volmgt_inuse.3volmgt6
-rw-r--r--usr/src/man/man3volmgt/volmgt_ownspath.3volmgt12
-rw-r--r--usr/src/man/man3volmgt/volmgt_release.3volmgt8
-rw-r--r--usr/src/man/man3volmgt/volmgt_root.3volmgt12
-rw-r--r--usr/src/man/man3volmgt/volmgt_running.3volmgt12
-rw-r--r--usr/src/man/man3volmgt/volmgt_symname.3volmgt16
-rw-r--r--usr/src/man/man3xcurses/COLS.3xcurses8
-rw-r--r--usr/src/man/man3xcurses/LINES.3xcurses8
-rw-r--r--usr/src/man/man3xcurses/add_wch.3xcurses22
-rw-r--r--usr/src/man/man3xcurses/add_wchnstr.3xcurses10
-rw-r--r--usr/src/man/man3xcurses/addch.3xcurses20
-rw-r--r--usr/src/man/man3xcurses/addchstr.3xcurses10
-rw-r--r--usr/src/man/man3xcurses/addnstr.3xcurses10
-rw-r--r--usr/src/man/man3xcurses/addnwstr.3xcurses10
-rw-r--r--usr/src/man/man3xcurses/attr_get.3xcurses16
-rw-r--r--usr/src/man/man3xcurses/attroff.3xcurses16
-rw-r--r--usr/src/man/man3xcurses/baudrate.3xcurses6
-rw-r--r--usr/src/man/man3xcurses/beep.3xcurses10
-rw-r--r--usr/src/man/man3xcurses/bkgd.3xcurses20
-rw-r--r--usr/src/man/man3xcurses/bkgrnd.3xcurses22
-rw-r--r--usr/src/man/man3xcurses/border.3xcurses13
-rw-r--r--usr/src/man/man3xcurses/border_set.3xcurses13
-rw-r--r--usr/src/man/man3xcurses/can_change_color.3xcurses10
-rw-r--r--usr/src/man/man3xcurses/cbreak.3xcurses13
-rw-r--r--usr/src/man/man3xcurses/chgat.3xcurses9
-rw-r--r--usr/src/man/man3xcurses/clear.3xcurses16
-rw-r--r--usr/src/man/man3xcurses/clearok.3xcurses12
-rw-r--r--usr/src/man/man3xcurses/clrtobot.3xcurses12
-rw-r--r--usr/src/man/man3xcurses/clrtoeol.3xcurses12
-rw-r--r--usr/src/man/man3xcurses/copywin.3xcurses10
-rw-r--r--usr/src/man/man3xcurses/cur_term.3xcurses9
-rw-r--r--usr/src/man/man3xcurses/curs_set.3xcurses6
-rw-r--r--usr/src/man/man3xcurses/curscr.3xcurses8
-rw-r--r--usr/src/man/man3xcurses/curses.3xcurses65
-rw-r--r--usr/src/man/man3xcurses/def_prog_mode.3xcurses12
-rw-r--r--usr/src/man/man3xcurses/del_curterm.3xcurses14
-rw-r--r--usr/src/man/man3xcurses/delay_output.3xcurses8
-rw-r--r--usr/src/man/man3xcurses/delch.3xcurses9
-rw-r--r--usr/src/man/man3xcurses/deleteln.3xcurses10
-rw-r--r--usr/src/man/man3xcurses/delscreen.3xcurses10
-rw-r--r--usr/src/man/man3xcurses/delwin.3xcurses9
-rw-r--r--usr/src/man/man3xcurses/derwin.3xcurses9
-rw-r--r--usr/src/man/man3xcurses/doupdate.3xcurses12
-rw-r--r--usr/src/man/man3xcurses/dupwin.3xcurses9
-rw-r--r--usr/src/man/man3xcurses/echo.3xcurses12
-rw-r--r--usr/src/man/man3xcurses/echo_wchar.3xcurses10
-rw-r--r--usr/src/man/man3xcurses/echochar.3xcurses10
-rw-r--r--usr/src/man/man3xcurses/endwin.3xcurses9
-rw-r--r--usr/src/man/man3xcurses/erasechar.3xcurses10
-rw-r--r--usr/src/man/man3xcurses/filter.3xcurses9
-rw-r--r--usr/src/man/man3xcurses/flushinp.3xcurses6
-rw-r--r--usr/src/man/man3xcurses/get_wch.3xcurses17
-rw-r--r--usr/src/man/man3xcurses/getbegyx.3xcurses6
-rw-r--r--usr/src/man/man3xcurses/getcchar.3xcurses11
-rw-r--r--usr/src/man/man3xcurses/getch.3xcurses17
-rw-r--r--usr/src/man/man3xcurses/getn_wstr.3xcurses9
-rw-r--r--usr/src/man/man3xcurses/getnstr.3xcurses8
-rw-r--r--usr/src/man/man3xcurses/getwin.3xcurses8
-rw-r--r--usr/src/man/man3xcurses/halfdelay.3xcurses8
-rw-r--r--usr/src/man/man3xcurses/has_ic.3xcurses6
-rw-r--r--usr/src/man/man3xcurses/hline.3xcurses10
-rw-r--r--usr/src/man/man3xcurses/hline_set.3xcurses10
-rw-r--r--usr/src/man/man3xcurses/idcok.3xcurses9
-rw-r--r--usr/src/man/man3xcurses/immedok.3xcurses13
-rw-r--r--usr/src/man/man3xcurses/in_wch.3xcurses9
-rw-r--r--usr/src/man/man3xcurses/in_wchnstr.3xcurses8
-rw-r--r--usr/src/man/man3xcurses/inch.3xcurses9
-rw-r--r--usr/src/man/man3xcurses/inchnstr.3xcurses9
-rw-r--r--usr/src/man/man3xcurses/initscr.3xcurses16
-rw-r--r--usr/src/man/man3xcurses/innstr.3xcurses9
-rw-r--r--usr/src/man/man3xcurses/innwstr.3xcurses9
-rw-r--r--usr/src/man/man3xcurses/ins_nwstr.3xcurses13
-rw-r--r--usr/src/man/man3xcurses/ins_wch.3xcurses9
-rw-r--r--usr/src/man/man3xcurses/insch.3xcurses8
-rw-r--r--usr/src/man/man3xcurses/insdelln.3xcurses9
-rw-r--r--usr/src/man/man3xcurses/insertln.3xcurses10
-rw-r--r--usr/src/man/man3xcurses/insnstr.3xcurses13
-rw-r--r--usr/src/man/man3xcurses/intrflush.3xcurses9
-rw-r--r--usr/src/man/man3xcurses/is_linetouched.3xcurses8
-rw-r--r--usr/src/man/man3xcurses/keyname.3xcurses8
-rw-r--r--usr/src/man/man3xcurses/keypad.3xcurses16
-rw-r--r--usr/src/man/man3xcurses/libcurses.3xcurses9
-rw-r--r--usr/src/man/man3xcurses/longname.3xcurses10
-rw-r--r--usr/src/man/man3xcurses/meta.3xcurses8
-rw-r--r--usr/src/man/man3xcurses/move.3xcurses8
-rw-r--r--usr/src/man/man3xcurses/mvcur.3xcurses6
-rw-r--r--usr/src/man/man3xcurses/mvderwin.3xcurses9
-rw-r--r--usr/src/man/man3xcurses/mvprintw.3xcurses9
-rw-r--r--usr/src/man/man3xcurses/mvscanw.3xcurses11
-rw-r--r--usr/src/man/man3xcurses/mvwin.3xcurses8
-rw-r--r--usr/src/man/man3xcurses/napms.3xcurses8
-rw-r--r--usr/src/man/man3xcurses/newpad.3xcurses12
-rw-r--r--usr/src/man/man3xcurses/nl.3xcurses6
-rw-r--r--usr/src/man/man3xcurses/nodelay.3xcurses10
-rw-r--r--usr/src/man/man3xcurses/noqiflush.3xcurses9
-rw-r--r--usr/src/man/man3xcurses/notimeout.3xcurses10
-rw-r--r--usr/src/man/man3xcurses/overlay.3xcurses10
-rw-r--r--usr/src/man/man3xcurses/pechochar.3xcurses10
-rw-r--r--usr/src/man/man3xcurses/putp.3xcurses13
-rw-r--r--usr/src/man/man3xcurses/redrawwin.3xcurses8
-rw-r--r--usr/src/man/man3xcurses/resetty.3xcurses6
-rw-r--r--usr/src/man/man3xcurses/ripoffline.3xcurses10
-rw-r--r--usr/src/man/man3xcurses/scr_dump.3xcurses12
-rw-r--r--usr/src/man/man3xcurses/scrl.3xcurses8
-rw-r--r--usr/src/man/man3xcurses/set_term.3xcurses6
-rw-r--r--usr/src/man/man3xcurses/setcchar.3xcurses11
-rw-r--r--usr/src/man/man3xcurses/slk_attroff.3xcurses15
-rw-r--r--usr/src/man/man3xcurses/standend.3xcurses9
-rw-r--r--usr/src/man/man3xcurses/stdscr.3xcurses8
-rw-r--r--usr/src/man/man3xcurses/syncok.3xcurses11
-rw-r--r--usr/src/man/man3xcurses/termattrs.3xcurses9
-rw-r--r--usr/src/man/man3xcurses/termname.3xcurses8
-rw-r--r--usr/src/man/man3xcurses/tgetent.3xcurses10
-rw-r--r--usr/src/man/man3xcurses/tigetflag.3xcurses9
-rw-r--r--usr/src/man/man3xcurses/typeahead.3xcurses10
-rw-r--r--usr/src/man/man3xcurses/unctrl.3xcurses10
-rw-r--r--usr/src/man/man3xcurses/ungetch.3xcurses9
-rw-r--r--usr/src/man/man3xcurses/use_env.3xcurses9
-rw-r--r--usr/src/man/man3xcurses/vidattr.3xcurses12
-rw-r--r--usr/src/man/man3xcurses/vw_printw.3xcurses9
-rw-r--r--usr/src/man/man3xcurses/vw_scanw.3xcurses9
-rw-r--r--usr/src/man/man3xcurses/vwprintw.3xcurses10
-rw-r--r--usr/src/man/man3xcurses/vwscanw.3xcurses10
-rw-r--r--usr/src/man/man3xcurses/wunctrl.3xcurses9
-rw-r--r--usr/src/man/man3xnet/accept.3xnet12
-rw-r--r--usr/src/man/man3xnet/bind.3xnet14
-rw-r--r--usr/src/man/man3xnet/connect.3xnet19
-rw-r--r--usr/src/man/man3xnet/endhostent.3xnet9
-rw-r--r--usr/src/man/man3xnet/endnetent.3xnet5
-rw-r--r--usr/src/man/man3xnet/endprotoent.3xnet5
-rw-r--r--usr/src/man/man3xnet/endservent.3xnet10
-rw-r--r--usr/src/man/man3xnet/freeaddrinfo.3xnet16
-rw-r--r--usr/src/man/man3xnet/gai_strerror.3xnet8
-rw-r--r--usr/src/man/man3xnet/gethostname.3xnet7
-rw-r--r--usr/src/man/man3xnet/getnameinfo.3xnet13
-rw-r--r--usr/src/man/man3xnet/getpeername.3xnet12
-rw-r--r--usr/src/man/man3xnet/getsockname.3xnet7
-rw-r--r--usr/src/man/man3xnet/getsockopt.3xnet6
-rw-r--r--usr/src/man/man3xnet/htonl.3xnet8
-rw-r--r--usr/src/man/man3xnet/if_nametoindex.3xnet9
-rw-r--r--usr/src/man/man3xnet/inet_addr.3xnet8
-rw-r--r--usr/src/man/man3xnet/inet_ntop.3xnet5
-rw-r--r--usr/src/man/man3xnet/listen.3xnet9
-rw-r--r--usr/src/man/man3xnet/recv.3xnet20
-rw-r--r--usr/src/man/man3xnet/recvfrom.3xnet22
-rw-r--r--usr/src/man/man3xnet/recvmsg.3xnet22
-rw-r--r--usr/src/man/man3xnet/send.3xnet24
-rw-r--r--usr/src/man/man3xnet/sendmsg.3xnet22
-rw-r--r--usr/src/man/man3xnet/sendto.3xnet25
-rw-r--r--usr/src/man/man3xnet/setsockopt.3xnet12
-rw-r--r--usr/src/man/man3xnet/shutdown.3xnet17
-rw-r--r--usr/src/man/man3xnet/sockatmark.3xnet9
-rw-r--r--usr/src/man/man3xnet/socket.3xnet24
-rw-r--r--usr/src/man/man3xnet/socketpair.3xnet6
-rw-r--r--usr/src/man/man4/FSS.4231
-rw-r--r--usr/src/man/man4/Intro.4215
-rw-r--r--usr/src/man/man4/Makefile281
-rw-r--r--usr/src/man/man4/NISLDAPmapping.41492
-rw-r--r--usr/src/man/man4/a.out.4108
-rw-r--r--usr/src/man/man4/admin.4481
-rw-r--r--usr/src/man/man4/alias.453
-rw-r--r--usr/src/man/man4/aliases.4450
-rw-r--r--usr/src/man/man4/au.4213
-rw-r--r--usr/src/man/man4/audit.log.4795
-rw-r--r--usr/src/man/man4/audit_class.4173
-rw-r--r--usr/src/man/man4/audit_event.4171
-rw-r--r--usr/src/man/man4/auth_attr.4275
-rw-r--r--usr/src/man/man4/autofs.4113
-rw-r--r--usr/src/man/man4/bart_manifest.4306
-rw-r--r--usr/src/man/man4/bart_rules.4426
-rw-r--r--usr/src/man/man4/bhyve_config.4524
-rw-r--r--usr/src/man/man4/bootparams.4227
-rw-r--r--usr/src/man/man4/cardbus.4237
-rw-r--r--usr/src/man/man4/compver.460
-rw-r--r--usr/src/man/man4/contents.4245
-rw-r--r--usr/src/man/man4/contract.4616
-rw-r--r--usr/src/man/man4/copyright.419
-rw-r--r--usr/src/man/man4/core.4583
-rw-r--r--usr/src/man/man4/cpr.4114
-rw-r--r--usr/src/man/man4/crypt.conf.4101
-rw-r--r--usr/src/man/man4/crypto_certs.469
-rw-r--r--usr/src/man/man4/ctf.41215
-rw-r--r--usr/src/man/man4/d_passwd.4196
-rw-r--r--usr/src/man/man4/dacf.conf.437
-rw-r--r--usr/src/man/man4/dat.conf.4192
-rw-r--r--usr/src/man/man4/default_fs.469
-rw-r--r--usr/src/man/man4/defaultdomain.436
-rw-r--r--usr/src/man/man4/defaultrouter.465
-rw-r--r--usr/src/man/man4/depend.4136
-rw-r--r--usr/src/man/man4/device_allocate.4268
-rw-r--r--usr/src/man/man4/device_contract.4374
-rw-r--r--usr/src/man/man4/device_maps.4140
-rw-r--r--usr/src/man/man4/devices.464
-rw-r--r--usr/src/man/man4/dfstab.444
-rw-r--r--usr/src/man/man4/dhcp_inittab.4623
-rw-r--r--usr/src/man/man4/dialups.492
-rw-r--r--usr/src/man/man4/dir_ufs.474
-rw-r--r--usr/src/man/man4/driver.conf.4221
-rw-r--r--usr/src/man/man4/ethers.447
-rw-r--r--usr/src/man/man4/exec_attr.4229
-rw-r--r--usr/src/man/man4/fdi.4448
-rw-r--r--usr/src/man/man4/format.dat.4480
-rw-r--r--usr/src/man/man4/fspec.4116
-rw-r--r--usr/src/man/man4/fstypes.431
-rw-r--r--usr/src/man/man4/ftp.445
-rw-r--r--usr/src/man/man4/ftpusers.4153
-rw-r--r--usr/src/man/man4/fx_dptbl.4398
-rw-r--r--usr/src/man/man4/gateways.4501
-rw-r--r--usr/src/man/man4/group.4161
-rw-r--r--usr/src/man/man4/gsscred.conf.464
-rw-r--r--usr/src/man/man4/hba.conf.4104
-rw-r--r--usr/src/man/man4/holidays.494
-rw-r--r--usr/src/man/man4/hosts.4177
-rw-r--r--usr/src/man/man4/hosts.equiv.4331
-rw-r--r--usr/src/man/man4/hosts_access.4399
-rw-r--r--usr/src/man/man4/hosts_options.4183
-rw-r--r--usr/src/man/man4/ib.486
-rw-r--r--usr/src/man/man4/ibmf.447
-rw-r--r--usr/src/man/man4/ike.config.41194
-rw-r--r--usr/src/man/man4/ike.preshared.495
-rw-r--r--usr/src/man/man4/inet_type.4101
-rw-r--r--usr/src/man/man4/inetd.conf.4250
-rw-r--r--usr/src/man/man4/init.4141
-rw-r--r--usr/src/man/man4/init.d.4107
-rw-r--r--usr/src/man/man4/inittab.4250
-rw-r--r--usr/src/man/man4/ipaddrsel.conf.467
-rw-r--r--usr/src/man/man4/ipf.4550
-rw-r--r--usr/src/man/man4/ipmon.472
-rw-r--r--usr/src/man/man4/ipnat.4295
-rw-r--r--usr/src/man/man4/ipnodes.425
-rw-r--r--usr/src/man/man4/ippool.4156
-rw-r--r--usr/src/man/man4/issue.429
-rw-r--r--usr/src/man/man4/kadm5.acl.4395
-rw-r--r--usr/src/man/man4/kdc.conf.41079
-rw-r--r--usr/src/man/man4/keytables.4964
-rw-r--r--usr/src/man/man4/krb5.conf.41873
-rw-r--r--usr/src/man/man4/ldapfilter.conf.4182
-rw-r--r--usr/src/man/man4/ldapsearchprefs.conf.4279
-rw-r--r--usr/src/man/man4/ldaptemplates.conf.4431
-rw-r--r--usr/src/man/man4/loader.conf.4249
-rw-r--r--usr/src/man/man4/logadm.conf.470
-rw-r--r--usr/src/man/man4/logindevperm.4137
-rw-r--r--usr/src/man/man4/loginlog.437
-rw-r--r--usr/src/man/man4/magic.4357
-rw-r--r--usr/src/man/man4/mailer.conf.4107
-rw-r--r--usr/src/man/man4/mech.4155
-rw-r--r--usr/src/man/man4/mnttab.4241
-rw-r--r--usr/src/man/man4/mpapi.conf.498
-rw-r--r--usr/src/man/man4/nca.if.4137
-rw-r--r--usr/src/man/man4/ncad_addr.475
-rw-r--r--usr/src/man/man4/ncakmod.conf.4104
-rw-r--r--usr/src/man/man4/ncalogd.conf.4113
-rw-r--r--usr/src/man/man4/ncaport.conf.466
-rw-r--r--usr/src/man/man4/ndmp.4174
-rw-r--r--usr/src/man/man4/ndpd.conf.4552
-rw-r--r--usr/src/man/man4/netconfig.4584
-rw-r--r--usr/src/man/man4/netgroup.4158
-rw-r--r--usr/src/man/man4/netid.4171
-rw-r--r--usr/src/man/man4/netmasks.4133
-rw-r--r--usr/src/man/man4/netrc.4148
-rw-r--r--usr/src/man/man4/networks.471
-rw-r--r--usr/src/man/man4/nfs.4319
-rw-r--r--usr/src/man/man4/nfslog.conf.4178
-rw-r--r--usr/src/man/man4/nfssec.conf.426
-rw-r--r--usr/src/man/man4/nodename.464
-rw-r--r--usr/src/man/man4/nologin.440
-rw-r--r--usr/src/man/man4/note.479
-rw-r--r--usr/src/man/man4/notrouter.424
-rw-r--r--usr/src/man/man4/nscd.conf.4202
-rw-r--r--usr/src/man/man4/nsmbrc.4415
-rw-r--r--usr/src/man/man4/nss.480
-rw-r--r--usr/src/man/man4/nsswitch.conf.4800
-rw-r--r--usr/src/man/man4/overlay_files.4187
-rw-r--r--usr/src/man/man4/packingrules.4182
-rw-r--r--usr/src/man/man4/pam.conf.4462
-rw-r--r--usr/src/man/man4/passwd.4347
-rw-r--r--usr/src/man/man4/path_to_inst.4140
-rw-r--r--usr/src/man/man4/pci.4271
-rw-r--r--usr/src/man/man4/phones.459
-rw-r--r--usr/src/man/man4/pkginfo.4748
-rw-r--r--usr/src/man/man4/pkgmap.4364
-rw-r--r--usr/src/man/man4/policy.conf.4251
-rw-r--r--usr/src/man/man4/power.conf.4815
-rw-r--r--usr/src/man/man4/printers.4306
-rw-r--r--usr/src/man/man4/printers.conf.4442
-rw-r--r--usr/src/man/man4/priv_names.454
-rw-r--r--usr/src/man/man4/proc.43248
-rw-r--r--usr/src/man/man4/process.4565
-rw-r--r--usr/src/man/man4/prof_attr.4169
-rw-r--r--usr/src/man/man4/profile.4101
-rw-r--r--usr/src/man/man4/project.4230
-rw-r--r--usr/src/man/man4/protocols.499
-rw-r--r--usr/src/man/man4/prototype.4426
-rw-r--r--usr/src/man/man4/pseudo.458
-rw-r--r--usr/src/man/man4/publickey.430
-rw-r--r--usr/src/man/man4/queuedefs.4121
-rw-r--r--usr/src/man/man4/rcmscript.4984
-rw-r--r--usr/src/man/man4/remote.4526
-rw-r--r--usr/src/man/man4/resolv.conf.4257
-rw-r--r--usr/src/man/man4/rmtab.457
-rw-r--r--usr/src/man/man4/rpc.477
-rw-r--r--usr/src/man/man4/rt_dptbl.4345
-rw-r--r--usr/src/man/man4/sasl_appname.conf.4170
-rw-r--r--usr/src/man/man4/sbus.4185
-rw-r--r--usr/src/man/man4/scsi.4344
-rw-r--r--usr/src/man/man4/securenets.4174
-rw-r--r--usr/src/man/man4/sendmail.4295
-rw-r--r--usr/src/man/man4/service_bundle.4147
-rw-r--r--usr/src/man/man4/service_provider.conf.4183
-rw-r--r--usr/src/man/man4/services.493
-rw-r--r--usr/src/man/man4/shadow.4219
-rw-r--r--usr/src/man/man4/sharetab.473
-rw-r--r--usr/src/man/man4/shells.457
-rw-r--r--usr/src/man/man4/slp.conf.41149
-rw-r--r--usr/src/man/man4/slpd.reg.4148
-rw-r--r--usr/src/man/man4/smb.4617
-rw-r--r--usr/src/man/man4/smbautohome.4201
-rw-r--r--usr/src/man/man4/smhba.conf.495
-rw-r--r--usr/src/man/man4/sock2path.d.458
-rw-r--r--usr/src/man/man4/space.477
-rw-r--r--usr/src/man/man4/sulog.4139
-rw-r--r--usr/src/man/man4/swap.492
-rw-r--r--usr/src/man/man4/sysbus.4126
-rw-r--r--usr/src/man/man4/syslog.conf.4424
-rw-r--r--usr/src/man/man4/system.4366
-rw-r--r--usr/src/man/man4/term.4218
-rw-r--r--usr/src/man/man4/terminfo.42917
-rw-r--r--usr/src/man/man4/timezone.465
-rw-r--r--usr/src/man/man4/tnf_kernel_probes.4942
-rw-r--r--usr/src/man/man4/ts_dptbl.4452
-rw-r--r--usr/src/man/man4/ttydefs.485
-rw-r--r--usr/src/man/man4/ttysrch.495
-rw-r--r--usr/src/man/man4/ufsdump.4740
-rw-r--r--usr/src/man/man4/updaters.4114
-rw-r--r--usr/src/man/man4/user_attr.4351
-rw-r--r--usr/src/man/man4/utmp.434
-rw-r--r--usr/src/man/man4/utmpx.454
-rw-r--r--usr/src/man/man4/vfstab.4196
-rw-r--r--usr/src/man/man4/warn.conf.4233
-rw-r--r--usr/src/man/man4/ypfiles.4154
-rw-r--r--usr/src/man/man4/yppasswdd.461
-rw-r--r--usr/src/man/man4/ypserv.4714
-rw-r--r--usr/src/man/man4/zoneinfo.413
-rw-r--r--usr/src/man/man4d/Makefile300
-rw-r--r--usr/src/man/man4d/aac.4d94
-rw-r--r--usr/src/man/man4d/afe.4d67
-rw-r--r--usr/src/man/man4d/ahci.4d95
-rw-r--r--usr/src/man/man4d/amd8111s.4d115
-rw-r--r--usr/src/man/man4d/amdnbtemp.4d78
-rw-r--r--usr/src/man/man4d/amdzen.4d80
-rw-r--r--usr/src/man/man4d/amr.4d81
-rw-r--r--usr/src/man/man4d/arcmsr.4d119
-rw-r--r--usr/src/man/man4d/arn.4d78
-rw-r--r--usr/src/man/man4d/asy.4d286
-rw-r--r--usr/src/man/man4d/ata.4d385
-rw-r--r--usr/src/man/man4d/atge.4d114
-rw-r--r--usr/src/man/man4d/ath.4d95
-rw-r--r--usr/src/man/man4d/atu.4d85
-rw-r--r--usr/src/man/man4d/audio.4d180
-rw-r--r--usr/src/man/man4d/audio1575.4d102
-rw-r--r--usr/src/man/man4d/audio810.4d107
-rw-r--r--usr/src/man/man4d/audiocmi.4d79
-rw-r--r--usr/src/man/man4d/audiocmihd.4d66
-rw-r--r--usr/src/man/man4d/audiocs.4d107
-rw-r--r--usr/src/man/man4d/audioemu10k.4d69
-rw-r--r--usr/src/man/man4d/audioens.4d70
-rw-r--r--usr/src/man/man4d/audiohd.4d108
-rw-r--r--usr/src/man/man4d/audioixp.4d109
-rw-r--r--usr/src/man/man4d/audiols.4d63
-rw-r--r--usr/src/man/man4d/audiop16x.4d76
-rw-r--r--usr/src/man/man4d/audiopci.4d74
-rw-r--r--usr/src/man/man4d/audiosolo.4d59
-rw-r--r--usr/src/man/man4d/audiots.4d102
-rw-r--r--usr/src/man/man4d/audiovia823x.4d60
-rw-r--r--usr/src/man/man4d/av1394.4d88
-rw-r--r--usr/src/man/man4d/bbc_beep.4d65
-rw-r--r--usr/src/man/man4d/bcm_sata.4d77
-rw-r--r--usr/src/man/man4d/bfe.4d96
-rw-r--r--usr/src/man/man4d/bge.4d315
-rw-r--r--usr/src/man/man4d/blkdev.4d82
-rw-r--r--usr/src/man/man4d/bnxe.4d153
-rw-r--r--usr/src/man/man4d/ccid.4d558
-rw-r--r--usr/src/man/man4d/chxge.4d134
-rw-r--r--usr/src/man/man4d/cmdk.4d150
-rw-r--r--usr/src/man/man4d/console.4d56
-rw-r--r--usr/src/man/man4d/coretemp.4d49
-rw-r--r--usr/src/man/man4d/cpqary3.4d84
-rw-r--r--usr/src/man/man4d/cpuid.4d163
-rw-r--r--usr/src/man/man4d/dad.4d361
-rw-r--r--usr/src/man/man4d/dca.4d241
-rw-r--r--usr/src/man/man4d/dcam1394.4d947
-rw-r--r--usr/src/man/man4d/devinfo.4d42
-rw-r--r--usr/src/man/man4d/dm2s.4d40
-rw-r--r--usr/src/man/man4d/dmfe.4d200
-rw-r--r--usr/src/man/man4d/dnet.4d191
-rw-r--r--usr/src/man/man4d/dr.4d35
-rw-r--r--usr/src/man/man4d/dtrace.4d43
-rw-r--r--usr/src/man/man4d/e1000g.4d213
-rw-r--r--usr/src/man/man4d/ecpp.4d473
-rw-r--r--usr/src/man/man4d/ehci.4d320
-rw-r--r--usr/src/man/man4d/elxl.4d103
-rw-r--r--usr/src/man/man4d/ena.4d135
-rw-r--r--usr/src/man/man4d/eri.4d355
-rw-r--r--usr/src/man/man4d/fas.4d1016
-rw-r--r--usr/src/man/man4d/fasttrap.4d58
-rw-r--r--usr/src/man/man4d/fbt.4d55
-rw-r--r--usr/src/man/man4d/fcip.4d249
-rw-r--r--usr/src/man/man4d/fcoe.4d59
-rw-r--r--usr/src/man/man4d/fcoei.4d67
-rw-r--r--usr/src/man/man4d/fcoet.4d59
-rw-r--r--usr/src/man/man4d/fcp.4d91
-rw-r--r--usr/src/man/man4d/fctl.4d64
-rw-r--r--usr/src/man/man4d/fd.4d805
-rw-r--r--usr/src/man/man4d/fp.4d198
-rw-r--r--usr/src/man/man4d/full.4d46
-rw-r--r--usr/src/man/man4d/gld.4d1031
-rw-r--r--usr/src/man/man4d/gpio_87317.4d38
-rw-r--r--usr/src/man/man4d/grbeep.4d64
-rw-r--r--usr/src/man/man4d/hci1394.4d65
-rw-r--r--usr/src/man/man4d/hermon.4d173
-rw-r--r--usr/src/man/man4d/hid.4d243
-rw-r--r--usr/src/man/man4d/hme.4d401
-rw-r--r--usr/src/man/man4d/hubd.4d316
-rw-r--r--usr/src/man/man4d/hxge.4d208
-rw-r--r--usr/src/man/man4d/i40e.4d335
-rw-r--r--usr/src/man/man4d/ib.4d289
-rw-r--r--usr/src/man/man4d/ibcm.4d75
-rw-r--r--usr/src/man/man4d/ibd.4d260
-rw-r--r--usr/src/man/man4d/ibdm.4d76
-rw-r--r--usr/src/man/man4d/ibdma.4d63
-rw-r--r--usr/src/man/man4d/ibtl.4d86
-rw-r--r--usr/src/man/man4d/ieee1394.4d109
-rw-r--r--usr/src/man/man4d/igb.4d126
-rw-r--r--usr/src/man/man4d/imc.4d103
-rw-r--r--usr/src/man/man4d/imcstub.4d46
-rw-r--r--usr/src/man/man4d/ipmi.4d172
-rw-r--r--usr/src/man/man4d/ipnet.4d191
-rw-r--r--usr/src/man/man4d/iprb.4d66
-rw-r--r--usr/src/man/man4d/ipw.4d88
-rw-r--r--usr/src/man/man4d/iscsi.4d104
-rw-r--r--usr/src/man/man4d/iser.4d76
-rw-r--r--usr/src/man/man4d/iwh.4d81
-rw-r--r--usr/src/man/man4d/iwi.4d97
-rw-r--r--usr/src/man/man4d/iwn.4d59
-rw-r--r--usr/src/man/man4d/ixgbe.4d197
-rw-r--r--usr/src/man/man4d/kmdb.4d43
-rw-r--r--usr/src/man/man4d/ksensor.4d41
-rw-r--r--usr/src/man/man4d/kstat.4d28
-rw-r--r--usr/src/man/man4d/ksyms.4d117
-rw-r--r--usr/src/man/man4d/llc1.4d234
-rw-r--r--usr/src/man/man4d/lockstat.4d53
-rw-r--r--usr/src/man/man4d/lofi.4d143
-rw-r--r--usr/src/man/man4d/log.4d297
-rw-r--r--usr/src/man/man4d/mc-opl.4d34
-rw-r--r--usr/src/man/man4d/mega_sas.4d107
-rw-r--r--usr/src/man/man4d/mem.4d132
-rw-r--r--usr/src/man/man4d/mlxcx.4d367
-rw-r--r--usr/src/man/man4d/mpt_sas.4d132
-rw-r--r--usr/src/man/man4d/mr_sas.4d181
-rw-r--r--usr/src/man/man4d/msglog.4d55
-rw-r--r--usr/src/man/man4d/mt.4d32
-rw-r--r--usr/src/man/man4d/mxfe.4d62
-rw-r--r--usr/src/man/man4d/myri10ge.4d192
-rw-r--r--usr/src/man/man4d/n2rng.4d173
-rw-r--r--usr/src/man/man4d/npe.4d74
-rw-r--r--usr/src/man/man4d/ntwdt.4d100
-rw-r--r--usr/src/man/man4d/ntxn.4d158
-rw-r--r--usr/src/man/man4d/null.4d45
-rw-r--r--usr/src/man/man4d/nulldriver.4d25
-rw-r--r--usr/src/man/man4d/nv_sata.4d74
-rw-r--r--usr/src/man/man4d/nvme.4d141
-rw-r--r--usr/src/man/man4d/nxge.4d243
-rw-r--r--usr/src/man/man4d/ohci.4d157
-rw-r--r--usr/src/man/man4d/openprom.4d412
-rw-r--r--usr/src/man/man4d/oplkmdrv.4d43
-rw-r--r--usr/src/man/man4d/oplmsu.4d42
-rw-r--r--usr/src/man/man4d/oplpanel.4d34
-rw-r--r--usr/src/man/man4d/pchtemp.4d76
-rw-r--r--usr/src/man/man4d/pcic.4d114
-rw-r--r--usr/src/man/man4d/pcicmu.4d33
-rw-r--r--usr/src/man/man4d/pcipsy.4d26
-rw-r--r--usr/src/man/man4d/pcisch.4d29
-rw-r--r--usr/src/man/man4d/pcmcia.4d27
-rw-r--r--usr/src/man/man4d/pcn.4d163
-rw-r--r--usr/src/man/man4d/physmem.4d45
-rw-r--r--usr/src/man/man4d/pm.4d413
-rw-r--r--usr/src/man/man4d/poll.4d382
-rw-r--r--usr/src/man/man4d/profile.4d56
-rw-r--r--usr/src/man/man4d/ptm.4d258
-rw-r--r--usr/src/man/man4d/pty.4d265
-rw-r--r--usr/src/man/man4d/qede.4d100
-rw-r--r--usr/src/man/man4d/qlc.4d127
-rw-r--r--usr/src/man/man4d/ral.4d84
-rw-r--r--usr/src/man/man4d/ramdisk.4d200
-rw-r--r--usr/src/man/man4d/random.4d160
-rw-r--r--usr/src/man/man4d/rge.4d234
-rw-r--r--usr/src/man/man4d/rtls.4d62
-rw-r--r--usr/src/man/man4d/rtw.4d86
-rw-r--r--usr/src/man/man4d/rum.4d84
-rw-r--r--usr/src/man/man4d/rwd.4d80
-rw-r--r--usr/src/man/man4d/rwn.4d79
-rw-r--r--usr/src/man/man4d/sad.4d325
-rw-r--r--usr/src/man/man4d/sata.4d339
-rw-r--r--usr/src/man/man4d/scsa1394.4d208
-rw-r--r--usr/src/man/man4d/scsa2usb.4d482
-rw-r--r--usr/src/man/man4d/sd.4d856
-rw-r--r--usr/src/man/man4d/sda.4d60
-rw-r--r--usr/src/man/man4d/sdhost.4d60
-rw-r--r--usr/src/man/man4d/sdp.4d231
-rw-r--r--usr/src/man/man4d/sdt.4d52
-rw-r--r--usr/src/man/man4d/ses.4d166
-rw-r--r--usr/src/man/man4d/sf.4d265
-rw-r--r--usr/src/man/man4d/sfe.4d204
-rw-r--r--usr/src/man/man4d/sfxge.4d52
-rw-r--r--usr/src/man/man4d/sgen.4d420
-rw-r--r--usr/src/man/man4d/si3124.4d73
-rw-r--r--usr/src/man/man4d/skd.4d25
-rw-r--r--usr/src/man/man4d/smbios.4d68
-rw-r--r--usr/src/man/man4d/smbus.4d61
-rw-r--r--usr/src/man/man4d/smntemp.4d56
-rw-r--r--usr/src/man/man4d/socal.4d227
-rw-r--r--usr/src/man/man4d/srpt.4d91
-rw-r--r--usr/src/man/man4d/ssd.4d600
-rw-r--r--usr/src/man/man4d/st.4d1409
-rw-r--r--usr/src/man/man4d/su.4d243
-rw-r--r--usr/src/man/man4d/sysmsg.4d45
-rw-r--r--usr/src/man/man4d/systrace.4d47
-rw-r--r--usr/src/man/man4d/ticlts.4d216
-rw-r--r--usr/src/man/man4d/todopl.4d33
-rw-r--r--usr/src/man/man4d/tsalarm.4d294
-rw-r--r--usr/src/man/man4d/tty.4d30
-rw-r--r--usr/src/man/man4d/tzmon.4d57
-rw-r--r--usr/src/man/man4d/uath.4d99
-rw-r--r--usr/src/man/man4d/ufm.4d312
-rw-r--r--usr/src/man/man4d/ugen.4d1725
-rw-r--r--usr/src/man/man4d/uhci.4d119
-rw-r--r--usr/src/man/man4d/ural.4d84
-rw-r--r--usr/src/man/man4d/urtw.4d81
-rw-r--r--usr/src/man/man4d/usb_ac.4d146
-rw-r--r--usr/src/man/man4d/usb_as.4d160
-rw-r--r--usr/src/man/man4d/usb_ia.4d117
-rw-r--r--usr/src/man/man4d/usb_mid.4d194
-rw-r--r--usr/src/man/man4d/usba.4d144
-rw-r--r--usr/src/man/man4d/usbftdi.4d322
-rw-r--r--usr/src/man/man4d/usbprn.4d458
-rw-r--r--usr/src/man/man4d/usbsacm.4d301
-rw-r--r--usr/src/man/man4d/usbsksp.4d308
-rw-r--r--usr/src/man/man4d/usbsprl.4d295
-rw-r--r--usr/src/man/man4d/usbvc.4d462
-rw-r--r--usr/src/man/man4d/usmn.4d42
-rw-r--r--usr/src/man/man4d/vioblk.4d92
-rw-r--r--usr/src/man/man4d/vioif.4d91
-rw-r--r--usr/src/man/man4d/virtio.4d47
-rw-r--r--usr/src/man/man4d/virtualkm.4d286
-rw-r--r--usr/src/man/man4d/vnd.4d118
-rw-r--r--usr/src/man/man4d/vni.4d64
-rw-r--r--usr/src/man/man4d/vr.4d142
-rw-r--r--usr/src/man/man4d/wpi.4d85
-rw-r--r--usr/src/man/man4d/wscons.4d1044
-rw-r--r--usr/src/man/man4d/xge.4d166
-rw-r--r--usr/src/man/man4d/xhci.4d108
-rw-r--r--usr/src/man/man4d/yge.4d174
-rw-r--r--usr/src/man/man4d/zcons.4d64
-rw-r--r--usr/src/man/man4d/zen_udf.4d36
-rw-r--r--usr/src/man/man4d/zero.4d43
-rw-r--r--usr/src/man/man4d/zfd.4d81
-rw-r--r--usr/src/man/man4d/zs.4d290
-rw-r--r--usr/src/man/man4d/zsh.4d367
-rw-r--r--usr/src/man/man4d/zyd.4d82
-rw-r--r--usr/src/man/man4fs/Makefile52
-rw-r--r--usr/src/man/man4fs/bootfs.4fs84
-rw-r--r--usr/src/man/man4fs/ctfs.4fs46
-rw-r--r--usr/src/man/man4fs/dcfs.4fs49
-rw-r--r--usr/src/man/man4fs/dev.4fs83
-rw-r--r--usr/src/man/man4fs/devfs.4fs110
-rw-r--r--usr/src/man/man4fs/fd.4fs84
-rw-r--r--usr/src/man/man4fs/hsfs.4fs253
-rw-r--r--usr/src/man/man4fs/hyprlofs.4fs62
-rw-r--r--usr/src/man/man4fs/lofs.4fs137
-rw-r--r--usr/src/man/man4fs/lxproc.4fs115
-rw-r--r--usr/src/man/man4fs/objfs.4fs62
-rw-r--r--usr/src/man/man4fs/pcfs.4fs540
-rw-r--r--usr/src/man/man4fs/sharefs.4fs61
-rw-r--r--usr/src/man/man4fs/smbfs.4fs151
-rw-r--r--usr/src/man/man4fs/tmpfs.4fs190
-rw-r--r--usr/src/man/man4fs/udfs.4fs102
-rw-r--r--usr/src/man/man4fs/ufs.4fs269
-rw-r--r--usr/src/man/man4i/Makefile52
-rw-r--r--usr/src/man/man4i/audio.4i999
-rw-r--r--usr/src/man/man4i/cdio.4i692
-rw-r--r--usr/src/man/man4i/dkio.4i867
-rw-r--r--usr/src/man/man4i/dsp.4i602
-rw-r--r--usr/src/man/man4i/fbio.4i160
-rw-r--r--usr/src/man/man4i/fdio.4i277
-rw-r--r--usr/src/man/man4i/hdio.4i112
-rw-r--r--usr/src/man/man4i/iec61883.4i674
-rw-r--r--usr/src/man/man4i/ipnat.4i436
-rw-r--r--usr/src/man/man4i/mhd.4i386
-rw-r--r--usr/src/man/man4i/mixer.4i767
-rw-r--r--usr/src/man/man4i/mtio.4i1190
-rw-r--r--usr/src/man/man4i/prnio.4i370
-rw-r--r--usr/src/man/man4i/quotactl.4i227
-rw-r--r--usr/src/man/man4i/sesio.4i95
-rw-r--r--usr/src/man/man4i/sockio.4i97
-rw-r--r--usr/src/man/man4i/streamio.4i1550
-rw-r--r--usr/src/man/man4i/termio.4i2193
-rw-r--r--usr/src/man/man4i/termiox.4i413
-rw-r--r--usr/src/man/man4i/uscsi.4i395
-rw-r--r--usr/src/man/man4i/visual_io.4i738
-rw-r--r--usr/src/man/man4i/vt.4i329
-rw-r--r--usr/src/man/man4ipp/Makefile33
-rw-r--r--usr/src/man/man4ipp/dlcosmk.4ipp63
-rw-r--r--usr/src/man/man4ipp/dscpmk.4ipp69
-rw-r--r--usr/src/man/man4ipp/flowacct.4ipp71
-rw-r--r--usr/src/man/man4ipp/ipgpc.4ipp96
-rw-r--r--usr/src/man/man4ipp/ipqos.4ipp175
-rw-r--r--usr/src/man/man4ipp/tokenmt.4ipp171
-rw-r--r--usr/src/man/man4ipp/tswtclmt.4ipp80
-rw-r--r--usr/src/man/man4m/Makefile59
-rw-r--r--usr/src/man/man4m/bufmod.4m322
-rw-r--r--usr/src/man/man4m/connld.4m122
-rw-r--r--usr/src/man/man4m/datafilt.4m48
-rw-r--r--usr/src/man/man4m/ldterm.4m282
-rw-r--r--usr/src/man/man4m/pckt.4m52
-rw-r--r--usr/src/man/man4m/pfmod.4m255
-rw-r--r--usr/src/man/man4m/pipemod.4m56
-rw-r--r--usr/src/man/man4m/ptem.4m130
-rw-r--r--usr/src/man/man4m/sppptun.4m41
-rw-r--r--usr/src/man/man4m/timod.4m171
-rw-r--r--usr/src/man/man4m/tirdwr.4m168
-rw-r--r--usr/src/man/man4m/ttcompat.4m680
-rw-r--r--usr/src/man/man4m/usb_ah.4m91
-rw-r--r--usr/src/man/man4m/usbkbm.4m193
-rw-r--r--usr/src/man/man4m/usbms.4m332
-rw-r--r--usr/src/man/man4m/vuidmice.4m297
-rw-r--r--usr/src/man/man4p/Makefile86
-rw-r--r--usr/src/man/man4p/arp.4p426
-rw-r--r--usr/src/man/man4p/dlpi.4p410
-rw-r--r--usr/src/man/man4p/icmp.4p114
-rw-r--r--usr/src/man/man4p/icmp6.4p167
-rw-r--r--usr/src/man/man4p/if_tcp.4p879
-rw-r--r--usr/src/man/man4p/inet.4p181
-rw-r--r--usr/src/man/man4p/inet6.4p413
-rw-r--r--usr/src/man/man4p/ip.4p951
-rw-r--r--usr/src/man/man4p/ip6.4p795
-rw-r--r--usr/src/man/man4p/ipsec.4p371
-rw-r--r--usr/src/man/man4p/ipsecah.4p77
-rw-r--r--usr/src/man/man4p/ipsecesp.4p87
-rw-r--r--usr/src/man/man4p/ndp.4p355
-rw-r--r--usr/src/man/man4p/pf_key.4p951
-rw-r--r--usr/src/man/man4p/rarp.4p58
-rw-r--r--usr/src/man/man4p/route.4p333
-rw-r--r--usr/src/man/man4p/routing.4p165
-rw-r--r--usr/src/man/man4p/sctp.4p433
-rw-r--r--usr/src/man/man4p/sip.4p27
-rw-r--r--usr/src/man/man4p/slp.4p130
-rw-r--r--usr/src/man/man4p/tcp.4p898
-rw-r--r--usr/src/man/man4p/udp.4p259
-rw-r--r--usr/src/man/man4p/vxlan.4p137
-rw-r--r--usr/src/man/man5/Intro.5135
-rw-r--r--usr/src/man/man5/Makefile477
-rw-r--r--usr/src/man/man5/NISLDAPmapping.51497
-rw-r--r--usr/src/man/man5/a.out.5111
-rw-r--r--usr/src/man/man5/acl.5833
-rw-r--r--usr/src/man/man5/ad.572
-rw-r--r--usr/src/man/man5/admin.5484
-rw-r--r--usr/src/man/man5/alias.555
-rw-r--r--usr/src/man/man5/aliases.5457
-rw-r--r--usr/src/man/man5/ascii.5107
-rw-r--r--usr/src/man/man5/attributes.5720
-rw-r--r--usr/src/man/man5/au.5213
-rw-r--r--usr/src/man/man5/audit.log.5800
-rw-r--r--usr/src/man/man5/audit_binfile.577
-rw-r--r--usr/src/man/man5/audit_class.5175
-rw-r--r--usr/src/man/man5/audit_event.5172
-rw-r--r--usr/src/man/man5/audit_remote.5342
-rw-r--r--usr/src/man/man5/audit_syslog.5265
-rw-r--r--usr/src/man/man5/auth_attr.5279
-rw-r--r--usr/src/man/man5/autofs.5113
-rw-r--r--usr/src/man/man5/bart_manifest.5309
-rw-r--r--usr/src/man/man5/bart_rules.5428
-rw-r--r--usr/src/man/man5/beastie.4th.5146
-rw-r--r--usr/src/man/man5/bhyve_config.5524
-rw-r--r--usr/src/man/man5/bootparams.5228
-rw-r--r--usr/src/man/man5/brand.4th.5115
-rw-r--r--usr/src/man/man5/brands.574
-rw-r--r--usr/src/man/man5/byteorder.5270
-rw-r--r--usr/src/man/man5/cancellation.5429
-rw-r--r--usr/src/man/man5/cardbus.5240
-rw-r--r--usr/src/man/man5/charmap.5359
-rw-r--r--usr/src/man/man5/check-password.4th.5130
-rw-r--r--usr/src/man/man5/color.4th.5103
-rw-r--r--usr/src/man/man5/compver.560
-rw-r--r--usr/src/man/man5/condition.5141
-rw-r--r--usr/src/man/man5/contents.5248
-rw-r--r--usr/src/man/man5/contract.5636
-rw-r--r--usr/src/man/man5/copyright.519
-rw-r--r--usr/src/man/man5/core.5584
-rw-r--r--usr/src/man/man5/crypt.conf.5107
-rw-r--r--usr/src/man/man5/crypt_bsdbf.545
-rw-r--r--usr/src/man/man5/crypt_bsdmd5.546
-rw-r--r--usr/src/man/man5/crypt_sha256.583
-rw-r--r--usr/src/man/man5/crypt_sha512.583
-rw-r--r--usr/src/man/man5/crypt_sunmd5.580
-rw-r--r--usr/src/man/man5/crypt_unix.564
-rw-r--r--usr/src/man/man5/crypto_certs.571
-rw-r--r--usr/src/man/man5/ctf.51215
-rw-r--r--usr/src/man/man5/d_passwd.5199
-rw-r--r--usr/src/man/man5/dacf.conf.537
-rw-r--r--usr/src/man/man5/dat.conf.5195
-rw-r--r--usr/src/man/man5/default_fs.571
-rw-r--r--usr/src/man/man5/defaultdomain.539
-rw-r--r--usr/src/man/man5/defaultrouter.568
-rw-r--r--usr/src/man/man5/delay.4th.5113
-rw-r--r--usr/src/man/man5/depend.5136
-rw-r--r--usr/src/man/man5/device_allocate.5272
-rw-r--r--usr/src/man/man5/device_clean.5306
-rw-r--r--usr/src/man/man5/device_contract.5382
-rw-r--r--usr/src/man/man5/device_maps.5143
-rw-r--r--usr/src/man/man5/devices.566
-rw-r--r--usr/src/man/man5/dfstab.547
-rw-r--r--usr/src/man/man5/dhcp.564
-rw-r--r--usr/src/man/man5/dhcp_inittab.5628
-rw-r--r--usr/src/man/man5/dialups.592
-rw-r--r--usr/src/man/man5/dir_ufs.575
-rw-r--r--usr/src/man/man5/driver.conf.5229
-rw-r--r--usr/src/man/man5/environ.5533
-rw-r--r--usr/src/man/man5/epoll.5103
-rw-r--r--usr/src/man/man5/eqn.5507
-rw-r--r--usr/src/man/man5/eqnchar.539
-rw-r--r--usr/src/man/man5/ethers.549
-rw-r--r--usr/src/man/man5/eventfd.532
-rw-r--r--usr/src/man/man5/exec_attr.5238
-rw-r--r--usr/src/man/man5/extendedFILE.5188
-rw-r--r--usr/src/man/man5/fdi.5451
-rw-r--r--usr/src/man/man5/filesystem.52950
-rw-r--r--usr/src/man/man5/fnmatch.5338
-rw-r--r--usr/src/man/man5/format.dat.5480
-rw-r--r--usr/src/man/man5/formats.5478
-rw-r--r--usr/src/man/man5/fsattr.5797
-rw-r--r--usr/src/man/man5/fspec.5118
-rw-r--r--usr/src/man/man5/fstypes.534
-rw-r--r--usr/src/man/man5/ftp.546
-rw-r--r--usr/src/man/man5/ftpusers.5157
-rw-r--r--usr/src/man/man5/fx_dptbl.5401
-rw-r--r--usr/src/man/man5/gateways.5501
-rw-r--r--usr/src/man/man5/gptzfsboot.5191
-rw-r--r--usr/src/man/man5/group.5168
-rw-r--r--usr/src/man/man5/grub.585
-rw-r--r--usr/src/man/man5/gss_auth_rules.576
-rw-r--r--usr/src/man/man5/gsscred.conf.568
-rw-r--r--usr/src/man/man5/hal.538
-rw-r--r--usr/src/man/man5/hba.conf.5106
-rw-r--r--usr/src/man/man5/holidays.594
-rw-r--r--usr/src/man/man5/hosts.5180
-rw-r--r--usr/src/man/man5/hosts.equiv.5336
-rw-r--r--usr/src/man/man5/hosts_access.5399
-rw-r--r--usr/src/man/man5/hosts_options.5183
-rw-r--r--usr/src/man/man5/ib.589
-rw-r--r--usr/src/man/man5/iconv.5312
-rw-r--r--usr/src/man/man5/iconv_unicode.5323
-rw-r--r--usr/src/man/man5/ieee802.11.5140
-rw-r--r--usr/src/man/man5/ieee802.3.5555
-rw-r--r--usr/src/man/man5/ike.config.51202
-rw-r--r--usr/src/man/man5/ike.preshared.599
-rw-r--r--usr/src/man/man5/inet_type.5102
-rw-r--r--usr/src/man/man5/inetd.conf.5256
-rw-r--r--usr/src/man/man5/init.5141
-rw-r--r--usr/src/man/man5/init.d.5110
-rw-r--r--usr/src/man/man5/inittab.5257
-rw-r--r--usr/src/man/man5/inotify.5305
-rw-r--r--usr/src/man/man5/ipaddrsel.conf.568
-rw-r--r--usr/src/man/man5/ipf.5553
-rw-r--r--usr/src/man/man5/ipfilter.5335
-rw-r--r--usr/src/man/man5/ipmon.573
-rw-r--r--usr/src/man/man5/ipnat.5299
-rw-r--r--usr/src/man/man5/ipnodes.525
-rw-r--r--usr/src/man/man5/ippool.5160
-rw-r--r--usr/src/man/man5/isalist.5225
-rw-r--r--usr/src/man/man5/isoboot.566
-rw-r--r--usr/src/man/man5/issue.530
-rw-r--r--usr/src/man/man5/kadm5.acl.5400
-rw-r--r--usr/src/man/man5/kdc.conf.51087
-rw-r--r--usr/src/man/man5/kerberos.5158
-rw-r--r--usr/src/man/man5/keytables.5964
-rw-r--r--usr/src/man/man5/krb5.conf.51880
-rw-r--r--usr/src/man/man5/krb5_auth_rules.5121
-rw-r--r--usr/src/man/man5/krb5envvar.5228
-rw-r--r--usr/src/man/man5/largefile.5229
-rw-r--r--usr/src/man/man5/ldapfilter.conf.5184
-rw-r--r--usr/src/man/man5/ldapsearchprefs.conf.5280
-rw-r--r--usr/src/man/man5/ldaptemplates.conf.5433
-rw-r--r--usr/src/man/man5/lf64.5347
-rw-r--r--usr/src/man/man5/lfcompile.5216
-rw-r--r--usr/src/man/man5/lfcompile64.5134
-rw-r--r--usr/src/man/man5/loader.4th.5206
-rw-r--r--usr/src/man/man5/loader.5909
-rw-r--r--usr/src/man/man5/loader.conf.5249
-rw-r--r--usr/src/man/man5/locale.52448
-rw-r--r--usr/src/man/man5/logadm.conf.571
-rw-r--r--usr/src/man/man5/logindevperm.5142
-rw-r--r--usr/src/man/man5/loginlog.538
-rw-r--r--usr/src/man/man5/lx.5113
-rw-r--r--usr/src/man/man5/magic.5359
-rw-r--r--usr/src/man/man5/mailer.conf.5107
-rw-r--r--usr/src/man/man5/man.5265
-rw-r--r--usr/src/man/man5/mandoc_char.5829
-rw-r--r--usr/src/man/man5/mandoc_roff.52342
-rw-r--r--usr/src/man/man5/mansun.5314
-rw-r--r--usr/src/man/man5/mdoc.53337
-rw-r--r--usr/src/man/man5/me.5242
-rw-r--r--usr/src/man/man5/mech.5157
-rw-r--r--usr/src/man/man5/mech_spnego.5119
-rw-r--r--usr/src/man/man5/menu.4th.5307
-rw-r--r--usr/src/man/man5/menusets.4th.5359
-rw-r--r--usr/src/man/man5/mm.5441
-rw-r--r--usr/src/man/man5/mnttab.5248
-rw-r--r--usr/src/man/man5/mpapi.conf.5100
-rw-r--r--usr/src/man/man5/ms.5432
-rw-r--r--usr/src/man/man5/mutex.5177
-rw-r--r--usr/src/man/man5/nca.if.5142
-rw-r--r--usr/src/man/man5/ncad_addr.576
-rw-r--r--usr/src/man/man5/ncakmod.conf.5110
-rw-r--r--usr/src/man/man5/ncalogd.conf.5118
-rw-r--r--usr/src/man/man5/ncaport.conf.569
-rw-r--r--usr/src/man/man5/ndmp.5178
-rw-r--r--usr/src/man/man5/ndpd.conf.5557
-rw-r--r--usr/src/man/man5/netconfig.5586
-rw-r--r--usr/src/man/man5/netgroup.5164
-rw-r--r--usr/src/man/man5/netid.5176
-rw-r--r--usr/src/man/man5/netmasks.5134
-rw-r--r--usr/src/man/man5/netrc.5149
-rw-r--r--usr/src/man/man5/networks.574
-rw-r--r--usr/src/man/man5/nfs.5319
-rw-r--r--usr/src/man/man5/nfslog.conf.5180
-rw-r--r--usr/src/man/man5/nfssec.5141
-rw-r--r--usr/src/man/man5/nfssec.conf.526
-rw-r--r--usr/src/man/man5/nodename.566
-rw-r--r--usr/src/man/man5/nologin.543
-rw-r--r--usr/src/man/man5/note.579
-rw-r--r--usr/src/man/man5/notrouter.524
-rw-r--r--usr/src/man/man5/nscd.conf.5215
-rw-r--r--usr/src/man/man5/nsmbrc.5420
-rw-r--r--usr/src/man/man5/nss.584
-rw-r--r--usr/src/man/man5/nsswitch.conf.5842
-rw-r--r--usr/src/man/man5/overlay.5521
-rw-r--r--usr/src/man/man5/overlay_files.5187
-rw-r--r--usr/src/man/man5/packingrules.5183
-rw-r--r--usr/src/man/man5/pam.conf.5478
-rw-r--r--usr/src/man/man5/pam_allow.5110
-rw-r--r--usr/src/man/man5/pam_authtok_check.5191
-rw-r--r--usr/src/man/man5/pam_authtok_get.5140
-rw-r--r--usr/src/man/man5/pam_authtok_store.5121
-rw-r--r--usr/src/man/man5/pam_deny.5146
-rw-r--r--usr/src/man/man5/pam_dhkeys.5204
-rw-r--r--usr/src/man/man5/pam_dial_auth.5122
-rw-r--r--usr/src/man/man5/pam_krb5.5701
-rw-r--r--usr/src/man/man5/pam_krb5_migrate.5194
-rw-r--r--usr/src/man/man5/pam_ldap.5412
-rw-r--r--usr/src/man/man5/pam_list.5303
-rw-r--r--usr/src/man/man5/pam_passwd_auth.5145
-rw-r--r--usr/src/man/man5/pam_rhosts_auth.567
-rw-r--r--usr/src/man/man5/pam_roles.5185
-rw-r--r--usr/src/man/man5/pam_sample.5202
-rw-r--r--usr/src/man/man5/pam_smb_passwd.5184
-rw-r--r--usr/src/man/man5/pam_smbfs_login.5224
-rw-r--r--usr/src/man/man5/pam_timestamp.5113
-rw-r--r--usr/src/man/man5/pam_tsol_account.5138
-rw-r--r--usr/src/man/man5/pam_unix_account.5173
-rw-r--r--usr/src/man/man5/pam_unix_auth.5226
-rw-r--r--usr/src/man/man5/pam_unix_cred.5211
-rw-r--r--usr/src/man/man5/pam_unix_session.5113
-rw-r--r--usr/src/man/man5/passwd.5368
-rw-r--r--usr/src/man/man5/path_to_inst.5143
-rw-r--r--usr/src/man/man5/pci.5274
-rw-r--r--usr/src/man/man5/phones.560
-rw-r--r--usr/src/man/man5/pkcs11_kernel.5111
-rw-r--r--usr/src/man/man5/pkcs11_softtoken.5280
-rw-r--r--usr/src/man/man5/pkcs11_tpm.5273
-rw-r--r--usr/src/man/man5/pkginfo.5754
-rw-r--r--usr/src/man/man5/pkgmap.5367
-rw-r--r--usr/src/man/man5/policy.conf.5257
-rw-r--r--usr/src/man/man5/power.conf.5822
-rw-r--r--usr/src/man/man5/printers.5315
-rw-r--r--usr/src/man/man5/printers.conf.5456
-rw-r--r--usr/src/man/man5/priv_names.556
-rw-r--r--usr/src/man/man5/privileges.51376
-rw-r--r--usr/src/man/man5/proc.53248
-rw-r--r--usr/src/man/man5/process.5577
-rw-r--r--usr/src/man/man5/prof.572
-rw-r--r--usr/src/man/man5/prof_attr.5176
-rw-r--r--usr/src/man/man5/profile.5109
-rw-r--r--usr/src/man/man5/project.5235
-rw-r--r--usr/src/man/man5/protocols.5100
-rw-r--r--usr/src/man/man5/prototype.5427
-rw-r--r--usr/src/man/man5/pseudo.559
-rw-r--r--usr/src/man/man5/publickey.532
-rw-r--r--usr/src/man/man5/pxeboot.5148
-rw-r--r--usr/src/man/man5/queuedefs.5124
-rw-r--r--usr/src/man/man5/rbac.5238
-rw-r--r--usr/src/man/man5/rcmscript.5990
-rw-r--r--usr/src/man/man5/regex.51040
-rw-r--r--usr/src/man/man5/regexp.5750
-rw-r--r--usr/src/man/man5/remote.5527
-rw-r--r--usr/src/man/man5/resolv.conf.5262
-rw-r--r--usr/src/man/man5/resource_controls.51103
-rw-r--r--usr/src/man/man5/rmtab.558
-rw-r--r--usr/src/man/man5/rpc.577
-rw-r--r--usr/src/man/man5/rt_dptbl.5348
-rw-r--r--usr/src/man/man5/sasl_appname.conf.5170
-rw-r--r--usr/src/man/man5/sbus.5188
-rw-r--r--usr/src/man/man5/scsi.5355
-rw-r--r--usr/src/man/man5/securenets.5177
-rw-r--r--usr/src/man/man5/security-flags.5115
-rw-r--r--usr/src/man/man5/sendmail.5298
-rw-r--r--usr/src/man/man5/service_bundle.5155
-rw-r--r--usr/src/man/man5/service_provider.conf.5185
-rw-r--r--usr/src/man/man5/services.595
-rw-r--r--usr/src/man/man5/shadow.5229
-rw-r--r--usr/src/man/man5/sharetab.573
-rw-r--r--usr/src/man/man5/shells.560
-rw-r--r--usr/src/man/man5/slp.conf.51152
-rw-r--r--usr/src/man/man5/slpd.reg.5151
-rw-r--r--usr/src/man/man5/smb.5621
-rw-r--r--usr/src/man/man5/smbautohome.5206
-rw-r--r--usr/src/man/man5/smf.5499
-rw-r--r--usr/src/man/man5/smf_bootstrap.5124
-rw-r--r--usr/src/man/man5/smf_method.5589
-rw-r--r--usr/src/man/man5/smf_restarter.5106
-rw-r--r--usr/src/man/man5/smf_security.5230
-rw-r--r--usr/src/man/man5/smf_template.5803
-rw-r--r--usr/src/man/man5/smhba.conf.597
-rw-r--r--usr/src/man/man5/sock2path.d.560
-rw-r--r--usr/src/man/man5/space.578
-rw-r--r--usr/src/man/man5/standards.5487
-rw-r--r--usr/src/man/man5/sticky.540
-rw-r--r--usr/src/man/man5/sulog.5139
-rw-r--r--usr/src/man/man5/sysbus.5131
-rw-r--r--usr/src/man/man5/syslog.conf.5436
-rw-r--r--usr/src/man/man5/system.5368
-rw-r--r--usr/src/man/man5/tbl.5455
-rw-r--r--usr/src/man/man5/tecla.53661
-rw-r--r--usr/src/man/man5/term.5361
-rw-r--r--usr/src/man/man5/terminfo.52925
-rw-r--r--usr/src/man/man5/threads.5495
-rw-r--r--usr/src/man/man5/timerfd.547
-rw-r--r--usr/src/man/man5/timezone.565
-rw-r--r--usr/src/man/man5/tnf_kernel_probes.5949
-rw-r--r--usr/src/man/man5/trusted_extensions.540
-rw-r--r--usr/src/man/man5/ts_dptbl.5455
-rw-r--r--usr/src/man/man5/ttydefs.587
-rw-r--r--usr/src/man/man5/ttysrch.595
-rw-r--r--usr/src/man/man5/ufsdump.5740
-rw-r--r--usr/src/man/man5/updaters.5116
-rw-r--r--usr/src/man/man5/user_attr.5367
-rw-r--r--usr/src/man/man5/utmp.534
-rw-r--r--usr/src/man/man5/utmpx.556
-rw-r--r--usr/src/man/man5/version.4th.5115
-rw-r--r--usr/src/man/man5/vfstab.5196
-rw-r--r--usr/src/man/man5/vgrindefs.5252
-rw-r--r--usr/src/man/man5/warn.conf.5239
-rw-r--r--usr/src/man/man5/ypfiles.5161
-rw-r--r--usr/src/man/man5/yppasswdd.561
-rw-r--r--usr/src/man/man5/ypserv.5719
-rw-r--r--usr/src/man/man5/zoneinfo.513
-rw-r--r--usr/src/man/man5/zones.5242
-rw-r--r--usr/src/man/man5/zpool-features.5834
-rw-r--r--usr/src/man/man7/FSS.7231
-rw-r--r--usr/src/man/man7/Intro.7294
-rw-r--r--usr/src/man/man7/Makefile214
-rw-r--r--usr/src/man/man7/acl.7847
-rw-r--r--usr/src/man/man7/ad.779
-rw-r--r--usr/src/man/man7/ascii.7107
-rw-r--r--usr/src/man/man7/attributes.7722
-rw-r--r--usr/src/man/man7/audit_binfile.780
-rw-r--r--usr/src/man/man7/audit_remote.7353
-rw-r--r--usr/src/man/man7/audit_syslog.7268
-rw-r--r--usr/src/man/man7/beastie.4th.7146
-rw-r--r--usr/src/man/man7/brand.4th.7115
-rw-r--r--usr/src/man/man7/brands.777
-rw-r--r--usr/src/man/man7/byteorder.7270
-rw-r--r--usr/src/man/man7/cancellation.7438
-rw-r--r--usr/src/man/man7/charmap.7362
-rw-r--r--usr/src/man/man7/check-password.4th.7130
-rw-r--r--usr/src/man/man7/color.4th.7103
-rw-r--r--usr/src/man/man7/condition.7154
-rw-r--r--usr/src/man/man7/cpr.7114
-rw-r--r--usr/src/man/man7/crypt_bsdbf.752
-rw-r--r--usr/src/man/man7/crypt_bsdmd5.753
-rw-r--r--usr/src/man/man7/crypt_sha256.790
-rw-r--r--usr/src/man/man7/crypt_sha512.790
-rw-r--r--usr/src/man/man7/crypt_sunmd5.787
-rw-r--r--usr/src/man/man7/crypt_unix.773
-rw-r--r--usr/src/man/man7/delay.4th.7113
-rw-r--r--usr/src/man/man7/device_clean.7308
-rw-r--r--usr/src/man/man7/dhcp.767
-rw-r--r--usr/src/man/man7/environ.7562
-rw-r--r--usr/src/man/man7/epoll.7108
-rw-r--r--usr/src/man/man7/eqn.7507
-rw-r--r--usr/src/man/man7/eqnchar.742
-rw-r--r--usr/src/man/man7/eventfd.732
-rw-r--r--usr/src/man/man7/extendedFILE.7194
-rw-r--r--usr/src/man/man7/filesystem.72982
-rw-r--r--usr/src/man/man7/fnmatch.7341
-rw-r--r--usr/src/man/man7/formats.7481
-rw-r--r--usr/src/man/man7/fsattr.7812
-rw-r--r--usr/src/man/man7/gptzfsboot.7191
-rw-r--r--usr/src/man/man7/grub.787
-rw-r--r--usr/src/man/man7/gss_auth_rules.781
-rw-r--r--usr/src/man/man7/hal.739
-rw-r--r--usr/src/man/man7/ibmf.747
-rw-r--r--usr/src/man/man7/iconv.7322
-rw-r--r--usr/src/man/man7/iconv_unicode.7325
-rw-r--r--usr/src/man/man7/ieee802.11.7140
-rw-r--r--usr/src/man/man7/ieee802.3.7555
-rw-r--r--usr/src/man/man7/inotify.7305
-rw-r--r--usr/src/man/man7/ipfilter.7341
-rw-r--r--usr/src/man/man7/isalist.7227
-rw-r--r--usr/src/man/man7/isoboot.766
-rw-r--r--usr/src/man/man7/kerberos.7162
-rw-r--r--usr/src/man/man7/krb5_auth_rules.7129
-rw-r--r--usr/src/man/man7/krb5envvar.7235
-rw-r--r--usr/src/man/man7/largefile.7231
-rw-r--r--usr/src/man/man7/lf64.7348
-rw-r--r--usr/src/man/man7/lfcompile.7223
-rw-r--r--usr/src/man/man7/lfcompile64.7137
-rw-r--r--usr/src/man/man7/loader.4th.7206
-rw-r--r--usr/src/man/man7/loader.7909
-rw-r--r--usr/src/man/man7/locale.72463
-rw-r--r--usr/src/man/man7/lx.7113
-rw-r--r--usr/src/man/man7/man.7265
-rw-r--r--usr/src/man/man7/mandoc_char.7829
-rw-r--r--usr/src/man/man7/mandoc_roff.72342
-rw-r--r--usr/src/man/man7/mansun.7316
-rw-r--r--usr/src/man/man7/mdoc.73337
-rw-r--r--usr/src/man/man7/me.7246
-rw-r--r--usr/src/man/man7/mech_spnego.7122
-rw-r--r--usr/src/man/man7/menu.4th.7307
-rw-r--r--usr/src/man/man7/menusets.4th.7359
-rw-r--r--usr/src/man/man7/mm.7446
-rw-r--r--usr/src/man/man7/ms.7436
-rw-r--r--usr/src/man/man7/mutex.7187
-rw-r--r--usr/src/man/man7/nfssec.7147
-rw-r--r--usr/src/man/man7/overlay.7521
-rw-r--r--usr/src/man/man7/pam_allow.7115
-rw-r--r--usr/src/man/man7/pam_authtok_check.7202
-rw-r--r--usr/src/man/man7/pam_authtok_get.7143
-rw-r--r--usr/src/man/man7/pam_authtok_store.7130
-rw-r--r--usr/src/man/man7/pam_deny.7157
-rw-r--r--usr/src/man/man7/pam_dhkeys.7217
-rw-r--r--usr/src/man/man7/pam_dial_auth.7133
-rw-r--r--usr/src/man/man7/pam_krb5.7714
-rw-r--r--usr/src/man/man7/pam_krb5_migrate.7200
-rw-r--r--usr/src/man/man7/pam_ldap.7425
-rw-r--r--usr/src/man/man7/pam_list.7308
-rw-r--r--usr/src/man/man7/pam_passwd_auth.7155
-rw-r--r--usr/src/man/man7/pam_rhosts_auth.772
-rw-r--r--usr/src/man/man7/pam_roles.7199
-rw-r--r--usr/src/man/man7/pam_sample.7207
-rw-r--r--usr/src/man/man7/pam_smb_passwd.7190
-rw-r--r--usr/src/man/man7/pam_smbfs_login.7232
-rw-r--r--usr/src/man/man7/pam_timestamp.7113
-rw-r--r--usr/src/man/man7/pam_tsol_account.7144
-rw-r--r--usr/src/man/man7/pam_unix_account.7177
-rw-r--r--usr/src/man/man7/pam_unix_auth.7244
-rw-r--r--usr/src/man/man7/pam_unix_cred.7226
-rw-r--r--usr/src/man/man7/pam_unix_session.7122
-rw-r--r--usr/src/man/man7/pkcs11_kernel.7114
-rw-r--r--usr/src/man/man7/pkcs11_softtoken.7283
-rw-r--r--usr/src/man/man7/pkcs11_tpm.7275
-rw-r--r--usr/src/man/man7/privileges.71449
-rw-r--r--usr/src/man/man7/prof.773
-rw-r--r--usr/src/man/man7/pxeboot.7148
-rw-r--r--usr/src/man/man7/rbac.7242
-rw-r--r--usr/src/man/man7/regex.71040
-rw-r--r--usr/src/man/man7/regexp.7750
-rw-r--r--usr/src/man/man7/resource_controls.71113
-rw-r--r--usr/src/man/man7/security-flags.7115
-rw-r--r--usr/src/man/man7/smf.7510
-rw-r--r--usr/src/man/man7/smf_bootstrap.7131
-rw-r--r--usr/src/man/man7/smf_method.7601
-rw-r--r--usr/src/man/man7/smf_restarter.7109
-rw-r--r--usr/src/man/man7/smf_security.7234
-rw-r--r--usr/src/man/man7/smf_template.7806
-rw-r--r--usr/src/man/man7/standards.7493
-rw-r--r--usr/src/man/man7/sticky.744
-rw-r--r--usr/src/man/man7/swap.792
-rw-r--r--usr/src/man/man7/tbl.7455
-rw-r--r--usr/src/man/man7/tecla.73666
-rw-r--r--usr/src/man/man7/term.7215
-rw-r--r--usr/src/man/man7/threads.7502
-rw-r--r--usr/src/man/man7/timerfd.747
-rw-r--r--usr/src/man/man7/trusted_extensions.742
-rw-r--r--usr/src/man/man7/version.4th.7115
-rw-r--r--usr/src/man/man7/vgrindefs.7255
-rw-r--r--usr/src/man/man7/zones.7257
-rw-r--r--usr/src/man/man7/zpool-features.7835
-rw-r--r--usr/src/man/man7d/Makefile300
-rw-r--r--usr/src/man/man7d/aac.7d89
-rw-r--r--usr/src/man/man7d/afe.7d67
-rw-r--r--usr/src/man/man7d/ahci.7d92
-rw-r--r--usr/src/man/man7d/amd8111s.7d112
-rw-r--r--usr/src/man/man7d/amdnbtemp.7d78
-rw-r--r--usr/src/man/man7d/amdzen.7d80
-rw-r--r--usr/src/man/man7d/amr.7d76
-rw-r--r--usr/src/man/man7d/arcmsr.7d114
-rw-r--r--usr/src/man/man7d/arn.7d75
-rw-r--r--usr/src/man/man7d/asy.7d276
-rw-r--r--usr/src/man/man7d/ata.7d384
-rw-r--r--usr/src/man/man7d/atge.7d108
-rw-r--r--usr/src/man/man7d/ath.7d93
-rw-r--r--usr/src/man/man7d/atu.7d82
-rw-r--r--usr/src/man/man7d/audio.7d177
-rw-r--r--usr/src/man/man7d/audio1575.7d99
-rw-r--r--usr/src/man/man7d/audio810.7d104
-rw-r--r--usr/src/man/man7d/audiocmi.7d76
-rw-r--r--usr/src/man/man7d/audiocmihd.7d63
-rw-r--r--usr/src/man/man7d/audiocs.7d104
-rw-r--r--usr/src/man/man7d/audioemu10k.7d66
-rw-r--r--usr/src/man/man7d/audioens.7d67
-rw-r--r--usr/src/man/man7d/audiohd.7d105
-rw-r--r--usr/src/man/man7d/audioixp.7d106
-rw-r--r--usr/src/man/man7d/audiols.7d60
-rw-r--r--usr/src/man/man7d/audiop16x.7d73
-rw-r--r--usr/src/man/man7d/audiopci.7d71
-rw-r--r--usr/src/man/man7d/audiosolo.7d56
-rw-r--r--usr/src/man/man7d/audiots.7d99
-rw-r--r--usr/src/man/man7d/audiovia823x.7d57
-rw-r--r--usr/src/man/man7d/av1394.7d85
-rw-r--r--usr/src/man/man7d/bbc_beep.7d62
-rw-r--r--usr/src/man/man7d/bcm_sata.7d73
-rw-r--r--usr/src/man/man7d/bfe.7d91
-rw-r--r--usr/src/man/man7d/bge.7d312
-rw-r--r--usr/src/man/man7d/blkdev.7d82
-rw-r--r--usr/src/man/man7d/bnxe.7d153
-rw-r--r--usr/src/man/man7d/ccid.7d558
-rw-r--r--usr/src/man/man7d/chxge.7d130
-rw-r--r--usr/src/man/man7d/cmdk.7d143
-rw-r--r--usr/src/man/man7d/console.7d52
-rw-r--r--usr/src/man/man7d/coretemp.7d49
-rw-r--r--usr/src/man/man7d/cpqary3.7d84
-rw-r--r--usr/src/man/man7d/cpuid.7d160
-rw-r--r--usr/src/man/man7d/dad.7d355
-rw-r--r--usr/src/man/man7d/dca.7d238
-rw-r--r--usr/src/man/man7d/dcam1394.7d946
-rw-r--r--usr/src/man/man7d/devinfo.7d41
-rw-r--r--usr/src/man/man7d/dm2s.7d40
-rw-r--r--usr/src/man/man7d/dmfe.7d197
-rw-r--r--usr/src/man/man7d/dnet.7d191
-rw-r--r--usr/src/man/man7d/dr.7d35
-rw-r--r--usr/src/man/man7d/dtrace.7d41
-rw-r--r--usr/src/man/man7d/e1000g.7d213
-rw-r--r--usr/src/man/man7d/ecpp.7d465
-rw-r--r--usr/src/man/man7d/ehci.7d314
-rw-r--r--usr/src/man/man7d/elxl.7d103
-rw-r--r--usr/src/man/man7d/ena.7d135
-rw-r--r--usr/src/man/man7d/eri.7d351
-rw-r--r--usr/src/man/man7d/fas.7d1007
-rw-r--r--usr/src/man/man7d/fasttrap.7d56
-rw-r--r--usr/src/man/man7d/fbt.7d53
-rw-r--r--usr/src/man/man7d/fcip.7d246
-rw-r--r--usr/src/man/man7d/fcoe.7d57
-rw-r--r--usr/src/man/man7d/fcoei.7d64
-rw-r--r--usr/src/man/man7d/fcoet.7d57
-rw-r--r--usr/src/man/man7d/fcp.7d88
-rw-r--r--usr/src/man/man7d/fctl.7d64
-rw-r--r--usr/src/man/man7d/fd.7d805
-rw-r--r--usr/src/man/man7d/fp.7d193
-rw-r--r--usr/src/man/man7d/full.7d46
-rw-r--r--usr/src/man/man7d/gld.7d1024
-rw-r--r--usr/src/man/man7d/gpio_87317.7d38
-rw-r--r--usr/src/man/man7d/grbeep.7d61
-rw-r--r--usr/src/man/man7d/hci1394.7d64
-rw-r--r--usr/src/man/man7d/hermon.7d171
-rw-r--r--usr/src/man/man7d/hid.7d240
-rw-r--r--usr/src/man/man7d/hme.7d398
-rw-r--r--usr/src/man/man7d/hubd.7d314
-rw-r--r--usr/src/man/man7d/hxge.7d201
-rw-r--r--usr/src/man/man7d/i40e.7d335
-rw-r--r--usr/src/man/man7d/ib.7d284
-rw-r--r--usr/src/man/man7d/ibcm.7d74
-rw-r--r--usr/src/man/man7d/ibd.7d254
-rw-r--r--usr/src/man/man7d/ibdm.7d73
-rw-r--r--usr/src/man/man7d/ibdma.7d60
-rw-r--r--usr/src/man/man7d/ibtl.7d83
-rw-r--r--usr/src/man/man7d/ieee1394.7d105
-rw-r--r--usr/src/man/man7d/igb.7d126
-rw-r--r--usr/src/man/man7d/imc.7d103
-rw-r--r--usr/src/man/man7d/imcstub.7d46
-rw-r--r--usr/src/man/man7d/ipmi.7d170
-rw-r--r--usr/src/man/man7d/ipnet.7d190
-rw-r--r--usr/src/man/man7d/iprb.7d66
-rw-r--r--usr/src/man/man7d/ipw.7d85
-rw-r--r--usr/src/man/man7d/iscsi.7d101
-rw-r--r--usr/src/man/man7d/iser.7d73
-rw-r--r--usr/src/man/man7d/iwh.7d78
-rw-r--r--usr/src/man/man7d/iwi.7d94
-rw-r--r--usr/src/man/man7d/iwn.7d59
-rw-r--r--usr/src/man/man7d/ixgbe.7d193
-rw-r--r--usr/src/man/man7d/kmdb.7d43
-rw-r--r--usr/src/man/man7d/ksensor.7d41
-rw-r--r--usr/src/man/man7d/kstat.7d27
-rw-r--r--usr/src/man/man7d/ksyms.7d113
-rw-r--r--usr/src/man/man7d/llc1.7d233
-rw-r--r--usr/src/man/man7d/lockstat.7d50
-rw-r--r--usr/src/man/man7d/lofi.7d138
-rw-r--r--usr/src/man/man7d/log.7d291
-rw-r--r--usr/src/man/man7d/mc-opl.7d34
-rw-r--r--usr/src/man/man7d/mega_sas.7d102
-rw-r--r--usr/src/man/man7d/mem.7d129
-rw-r--r--usr/src/man/man7d/mlxcx.7d367
-rw-r--r--usr/src/man/man7d/mpt_sas.7d132
-rw-r--r--usr/src/man/man7d/mr_sas.7d176
-rw-r--r--usr/src/man/man7d/msglog.7d52
-rw-r--r--usr/src/man/man7d/mt.7d32
-rw-r--r--usr/src/man/man7d/mxfe.7d62
-rw-r--r--usr/src/man/man7d/myri10ge.7d188
-rw-r--r--usr/src/man/man7d/n2rng.7d171
-rw-r--r--usr/src/man/man7d/npe.7d72
-rw-r--r--usr/src/man/man7d/ntwdt.7d99
-rw-r--r--usr/src/man/man7d/ntxn.7d153
-rw-r--r--usr/src/man/man7d/null.7d44
-rw-r--r--usr/src/man/man7d/nulldriver.7d22
-rw-r--r--usr/src/man/man7d/nv_sata.7d71
-rw-r--r--usr/src/man/man7d/nvme.7d141
-rw-r--r--usr/src/man/man7d/nxge.7d239
-rw-r--r--usr/src/man/man7d/ohci.7d154
-rw-r--r--usr/src/man/man7d/openprom.7d409
-rw-r--r--usr/src/man/man7d/oplkmdrv.7d43
-rw-r--r--usr/src/man/man7d/oplmsu.7d42
-rw-r--r--usr/src/man/man7d/oplpanel.7d34
-rw-r--r--usr/src/man/man7d/pchtemp.7d76
-rw-r--r--usr/src/man/man7d/pcic.7d112
-rw-r--r--usr/src/man/man7d/pcicmu.7d33
-rw-r--r--usr/src/man/man7d/pcipsy.7d26
-rw-r--r--usr/src/man/man7d/pcisch.7d29
-rw-r--r--usr/src/man/man7d/pcmcia.7d27
-rw-r--r--usr/src/man/man7d/pcn.7d161
-rw-r--r--usr/src/man/man7d/physmem.7d45
-rw-r--r--usr/src/man/man7d/pm.7d404
-rw-r--r--usr/src/man/man7d/poll.7d379
-rw-r--r--usr/src/man/man7d/profile.7d54
-rw-r--r--usr/src/man/man7d/ptm.7d258
-rw-r--r--usr/src/man/man7d/pty.7d265
-rw-r--r--usr/src/man/man7d/qede.7d100
-rw-r--r--usr/src/man/man7d/qlc.7d124
-rw-r--r--usr/src/man/man7d/ral.7d81
-rw-r--r--usr/src/man/man7d/ramdisk.7d194
-rw-r--r--usr/src/man/man7d/random.7d157
-rw-r--r--usr/src/man/man7d/rge.7d231
-rw-r--r--usr/src/man/man7d/rtls.7d62
-rw-r--r--usr/src/man/man7d/rtw.7d83
-rw-r--r--usr/src/man/man7d/rum.7d81
-rw-r--r--usr/src/man/man7d/rwd.7d77
-rw-r--r--usr/src/man/man7d/rwn.7d77
-rw-r--r--usr/src/man/man7d/sad.7d323
-rw-r--r--usr/src/man/man7d/sata.7d334
-rw-r--r--usr/src/man/man7d/scsa1394.7d197
-rw-r--r--usr/src/man/man7d/scsa2usb.7d468
-rw-r--r--usr/src/man/man7d/sd.7d840
-rw-r--r--usr/src/man/man7d/sda.7d59
-rw-r--r--usr/src/man/man7d/sdhost.7d59
-rw-r--r--usr/src/man/man7d/sdp.7d225
-rw-r--r--usr/src/man/man7d/sdt.7d50
-rw-r--r--usr/src/man/man7d/ses.7d162
-rw-r--r--usr/src/man/man7d/sf.7d262
-rw-r--r--usr/src/man/man7d/sfe.7d201
-rw-r--r--usr/src/man/man7d/sfxge.7d52
-rw-r--r--usr/src/man/man7d/sgen.7d417
-rw-r--r--usr/src/man/man7d/si3124.7d69
-rw-r--r--usr/src/man/man7d/skd.7d25
-rw-r--r--usr/src/man/man7d/smbios.7d66
-rw-r--r--usr/src/man/man7d/smbus.7d61
-rw-r--r--usr/src/man/man7d/smntemp.7d56
-rw-r--r--usr/src/man/man7d/socal.7d225
-rw-r--r--usr/src/man/man7d/srpt.7d88
-rw-r--r--usr/src/man/man7d/ssd.7d591
-rw-r--r--usr/src/man/man7d/st.7d1397
-rw-r--r--usr/src/man/man7d/su.7d231
-rw-r--r--usr/src/man/man7d/sysmsg.7d44
-rw-r--r--usr/src/man/man7d/systrace.7d45
-rw-r--r--usr/src/man/man7d/ticlts.7d215
-rw-r--r--usr/src/man/man7d/todopl.7d33
-rw-r--r--usr/src/man/man7d/tsalarm.7d294
-rw-r--r--usr/src/man/man7d/tty.7d29
-rw-r--r--usr/src/man/man7d/tzmon.7d57
-rw-r--r--usr/src/man/man7d/uath.7d96
-rw-r--r--usr/src/man/man7d/ufm.7d312
-rw-r--r--usr/src/man/man7d/ugen.7d1720
-rw-r--r--usr/src/man/man7d/uhci.7d116
-rw-r--r--usr/src/man/man7d/ural.7d81
-rw-r--r--usr/src/man/man7d/urtw.7d78
-rw-r--r--usr/src/man/man7d/usb_ac.7d139
-rw-r--r--usr/src/man/man7d/usb_as.7d157
-rw-r--r--usr/src/man/man7d/usb_ia.7d114
-rw-r--r--usr/src/man/man7d/usb_mid.7d192
-rw-r--r--usr/src/man/man7d/usba.7d144
-rw-r--r--usr/src/man/man7d/usbftdi.7d322
-rw-r--r--usr/src/man/man7d/usbprn.7d450
-rw-r--r--usr/src/man/man7d/usbsacm.7d292
-rw-r--r--usr/src/man/man7d/usbsksp.7d299
-rw-r--r--usr/src/man/man7d/usbsprl.7d286
-rw-r--r--usr/src/man/man7d/usbvc.7d456
-rw-r--r--usr/src/man/man7d/usmn.7d42
-rw-r--r--usr/src/man/man7d/vioblk.7d92
-rw-r--r--usr/src/man/man7d/vioif.7d91
-rw-r--r--usr/src/man/man7d/virtio.7d47
-rw-r--r--usr/src/man/man7d/virtualkm.7d279
-rw-r--r--usr/src/man/man7d/vnd.7d118
-rw-r--r--usr/src/man/man7d/vni.7d61
-rw-r--r--usr/src/man/man7d/vr.7d137
-rw-r--r--usr/src/man/man7d/wpi.7d82
-rw-r--r--usr/src/man/man7d/wscons.7d1039
-rw-r--r--usr/src/man/man7d/xge.7d163
-rw-r--r--usr/src/man/man7d/xhci.7d108
-rw-r--r--usr/src/man/man7d/yge.7d172
-rw-r--r--usr/src/man/man7d/zcons.7d64
-rw-r--r--usr/src/man/man7d/zen_udf.7d36
-rw-r--r--usr/src/man/man7d/zero.7d41
-rw-r--r--usr/src/man/man7d/zfd.7d81
-rw-r--r--usr/src/man/man7d/zs.7d279
-rw-r--r--usr/src/man/man7d/zsh.7d360
-rw-r--r--usr/src/man/man7d/zyd.7d79
-rw-r--r--usr/src/man/man7fs/Makefile52
-rw-r--r--usr/src/man/man7fs/bootfs.7fs84
-rw-r--r--usr/src/man/man7fs/ctfs.7fs46
-rw-r--r--usr/src/man/man7fs/dcfs.7fs49
-rw-r--r--usr/src/man/man7fs/dev.7fs83
-rw-r--r--usr/src/man/man7fs/devfs.7fs110
-rw-r--r--usr/src/man/man7fs/fd.7fs84
-rw-r--r--usr/src/man/man7fs/hsfs.7fs253
-rw-r--r--usr/src/man/man7fs/hyprlofs.7fs62
-rw-r--r--usr/src/man/man7fs/lofs.7fs137
-rw-r--r--usr/src/man/man7fs/lxproc.7fs115
-rw-r--r--usr/src/man/man7fs/objfs.7fs62
-rw-r--r--usr/src/man/man7fs/pcfs.7fs540
-rw-r--r--usr/src/man/man7fs/sharefs.7fs61
-rw-r--r--usr/src/man/man7fs/smbfs.7fs150
-rw-r--r--usr/src/man/man7fs/tmpfs.7fs190
-rw-r--r--usr/src/man/man7fs/udfs.7fs102
-rw-r--r--usr/src/man/man7fs/ufs.7fs269
-rw-r--r--usr/src/man/man7i/Makefile52
-rw-r--r--usr/src/man/man7i/audio.7i999
-rw-r--r--usr/src/man/man7i/cdio.7i692
-rw-r--r--usr/src/man/man7i/dkio.7i867
-rw-r--r--usr/src/man/man7i/dsp.7i602
-rw-r--r--usr/src/man/man7i/fbio.7i160
-rw-r--r--usr/src/man/man7i/fdio.7i277
-rw-r--r--usr/src/man/man7i/hdio.7i112
-rw-r--r--usr/src/man/man7i/iec61883.7i674
-rw-r--r--usr/src/man/man7i/ipnat.7i436
-rw-r--r--usr/src/man/man7i/mhd.7i386
-rw-r--r--usr/src/man/man7i/mixer.7i767
-rw-r--r--usr/src/man/man7i/mtio.7i1190
-rw-r--r--usr/src/man/man7i/prnio.7i370
-rw-r--r--usr/src/man/man7i/quotactl.7i227
-rw-r--r--usr/src/man/man7i/sesio.7i95
-rw-r--r--usr/src/man/man7i/sockio.7i97
-rw-r--r--usr/src/man/man7i/streamio.7i1550
-rw-r--r--usr/src/man/man7i/termio.7i2193
-rw-r--r--usr/src/man/man7i/termiox.7i413
-rw-r--r--usr/src/man/man7i/uscsi.7i395
-rw-r--r--usr/src/man/man7i/visual_io.7i738
-rw-r--r--usr/src/man/man7i/vt.7i329
-rw-r--r--usr/src/man/man7ipp/Makefile33
-rw-r--r--usr/src/man/man7ipp/dlcosmk.7ipp58
-rw-r--r--usr/src/man/man7ipp/dscpmk.7ipp64
-rw-r--r--usr/src/man/man7ipp/flowacct.7ipp67
-rw-r--r--usr/src/man/man7ipp/ipgpc.7ipp92
-rw-r--r--usr/src/man/man7ipp/ipqos.7ipp171
-rw-r--r--usr/src/man/man7ipp/tokenmt.7ipp167
-rw-r--r--usr/src/man/man7ipp/tswtclmt.7ipp75
-rw-r--r--usr/src/man/man7m/Makefile59
-rw-r--r--usr/src/man/man7m/bufmod.7m321
-rw-r--r--usr/src/man/man7m/connld.7m119
-rw-r--r--usr/src/man/man7m/datafilt.7m48
-rw-r--r--usr/src/man/man7m/ldterm.7m280
-rw-r--r--usr/src/man/man7m/pckt.7m48
-rw-r--r--usr/src/man/man7m/pfmod.7m253
-rw-r--r--usr/src/man/man7m/pipemod.7m56
-rw-r--r--usr/src/man/man7m/ptem.7m130
-rw-r--r--usr/src/man/man7m/sppptun.7m39
-rw-r--r--usr/src/man/man7m/timod.7m168
-rw-r--r--usr/src/man/man7m/tirdwr.7m162
-rw-r--r--usr/src/man/man7m/ttcompat.7m677
-rw-r--r--usr/src/man/man7m/usb_ah.7m91
-rw-r--r--usr/src/man/man7m/usbkbm.7m186
-rw-r--r--usr/src/man/man7m/usbms.7m329
-rw-r--r--usr/src/man/man7m/vuidmice.7m296
-rw-r--r--usr/src/man/man7p/Makefile86
-rw-r--r--usr/src/man/man7p/arp.7p421
-rw-r--r--usr/src/man/man7p/dlpi.7p407
-rw-r--r--usr/src/man/man7p/icmp.7p108
-rw-r--r--usr/src/man/man7p/icmp6.7p159
-rw-r--r--usr/src/man/man7p/if_tcp.7p872
-rw-r--r--usr/src/man/man7p/inet.7p170
-rw-r--r--usr/src/man/man7p/inet6.7p404
-rw-r--r--usr/src/man/man7p/ip.7p934
-rw-r--r--usr/src/man/man7p/ip6.7p779
-rw-r--r--usr/src/man/man7p/ipsec.7p361
-rw-r--r--usr/src/man/man7p/ipsecah.7p72
-rw-r--r--usr/src/man/man7p/ipsecesp.7p81
-rw-r--r--usr/src/man/man7p/ndp.7p355
-rw-r--r--usr/src/man/man7p/pf_key.7p946
-rw-r--r--usr/src/man/man7p/rarp.7p56
-rw-r--r--usr/src/man/man7p/route.7p330
-rw-r--r--usr/src/man/man7p/routing.7p163
-rw-r--r--usr/src/man/man7p/sctp.7p412
-rw-r--r--usr/src/man/man7p/sip.7p27
-rw-r--r--usr/src/man/man7p/slp.7p127
-rw-r--r--usr/src/man/man7p/tcp.7p898
-rw-r--r--usr/src/man/man7p/udp.7p248
-rw-r--r--usr/src/man/man7p/vxlan.7p137
-rw-r--r--usr/src/man/man8/6to4relay.8350
-rw-r--r--usr/src/man/man8/Intro.8144
-rw-r--r--usr/src/man/man8/Makefile753
-rw-r--r--usr/src/man/man8/Uutry.8136
-rw-r--r--usr/src/man/man8/accept.8165
-rw-r--r--usr/src/man/man8/acct.8219
-rw-r--r--usr/src/man/man8/acctadm.8429
-rw-r--r--usr/src/man/man8/acctcms.8150
-rw-r--r--usr/src/man/man8/acctcon.8184
-rw-r--r--usr/src/man/man8/acctmerg.8125
-rw-r--r--usr/src/man/man8/acctprc.8143
-rw-r--r--usr/src/man/man8/acctsh.8333
-rw-r--r--usr/src/man/man8/acpidump.883
-rw-r--r--usr/src/man/man8/acpixtract.8113
-rw-r--r--usr/src/man/man8/adbgen.8365
-rw-r--r--usr/src/man/man8/add_allocatable.8252
-rw-r--r--usr/src/man/man8/add_drv.8645
-rw-r--r--usr/src/man/man8/addbadsec.8104
-rw-r--r--usr/src/man/man8/arcstat.8540
-rw-r--r--usr/src/man/man8/arp.8251
-rw-r--r--usr/src/man/man8/atohexlabel.8120
-rw-r--r--usr/src/man/man8/audit.897
-rw-r--r--usr/src/man/man8/audit_warn.8234
-rw-r--r--usr/src/man/man8/auditconfig.81093
-rw-r--r--usr/src/man/man8/auditd.8191
-rw-r--r--usr/src/man/man8/auditrecord.8334
-rw-r--r--usr/src/man/man8/auditreduce.8916
-rw-r--r--usr/src/man/man8/auditstat.8209
-rw-r--r--usr/src/man/man8/automount.8728
-rw-r--r--usr/src/man/man8/automountd.8121
-rw-r--r--usr/src/man/man8/autopush.8200
-rw-r--r--usr/src/man/man8/bart.8643
-rw-r--r--usr/src/man/man8/beadm.8932
-rw-r--r--usr/src/man/man8/bhyve.8837
-rw-r--r--usr/src/man/man8/bhyvectl.885
-rw-r--r--usr/src/man/man8/boot.81154
-rw-r--r--usr/src/man/man8/bootadm.8546
-rw-r--r--usr/src/man/man8/busstat.8324
-rw-r--r--usr/src/man/man8/captoinfo.8104
-rw-r--r--usr/src/man/man8/catman.872
-rw-r--r--usr/src/man/man8/ccidadm.8190
-rw-r--r--usr/src/man/man8/cfgadm.8950
-rw-r--r--usr/src/man/man8/cfgadm_cardbus.860
-rw-r--r--usr/src/man/man8/cfgadm_fp.8750
-rw-r--r--usr/src/man/man8/cfgadm_ib.8867
-rw-r--r--usr/src/man/man8/cfgadm_pci.8946
-rw-r--r--usr/src/man/man8/cfgadm_sata.8835
-rw-r--r--usr/src/man/man8/cfgadm_sbd.81330
-rw-r--r--usr/src/man/man8/cfgadm_scsi.8747
-rw-r--r--usr/src/man/man8/cfgadm_usb.8990
-rw-r--r--usr/src/man/man8/chat.8749
-rw-r--r--usr/src/man/man8/check-hostname.875
-rw-r--r--usr/src/man/man8/check-permissions.8102
-rw-r--r--usr/src/man/man8/chroot.8133
-rw-r--r--usr/src/man/man8/clear_locks.895
-rw-r--r--usr/src/man/man8/clinfo.883
-rw-r--r--usr/src/man/man8/clri.8102
-rw-r--r--usr/src/man/man8/connstat.8399
-rw-r--r--usr/src/man/man8/consadm.8232
-rw-r--r--usr/src/man/man8/conv_lp.8116
-rw-r--r--usr/src/man/man8/conv_lpd.8157
-rw-r--r--usr/src/man/man8/coreadm.8732
-rw-r--r--usr/src/man/man8/cpustat.8356
-rw-r--r--usr/src/man/man8/cron.8193
-rw-r--r--usr/src/man/man8/cryptoadm.8821
-rw-r--r--usr/src/man/man8/datadm.8197
-rw-r--r--usr/src/man/man8/dcs.8125
-rw-r--r--usr/src/man/man8/dd.8774
-rw-r--r--usr/src/man/man8/devattr.8123
-rw-r--r--usr/src/man/man8/devfree.8123
-rw-r--r--usr/src/man/man8/devfsadm.8282
-rw-r--r--usr/src/man/man8/device_remap.8156
-rw-r--r--usr/src/man/man8/devinfo.8154
-rw-r--r--usr/src/man/man8/devlinks.8309
-rw-r--r--usr/src/man/man8/devnm.872
-rw-r--r--usr/src/man/man8/devprop.8169
-rw-r--r--usr/src/man/man8/devreserv.8182
-rw-r--r--usr/src/man/man8/df.8550
-rw-r--r--usr/src/man/man8/df_ufs.8100
-rw-r--r--usr/src/man/man8/dfmounts.8140
-rw-r--r--usr/src/man/man8/dfmounts_nfs.8123
-rw-r--r--usr/src/man/man8/dfshares.8130
-rw-r--r--usr/src/man/man8/dfshares_nfs.8129
-rw-r--r--usr/src/man/man8/dhcpagent.8904
-rw-r--r--usr/src/man/man8/diskinfo.8191
-rw-r--r--usr/src/man/man8/disks.8322
-rw-r--r--usr/src/man/man8/diskscan.8110
-rw-r--r--usr/src/man/man8/dispadmin.8249
-rw-r--r--usr/src/man/man8/dladm.86184
-rw-r--r--usr/src/man/man8/dlmgmtd.863
-rw-r--r--usr/src/man/man8/dmesg.831
-rw-r--r--usr/src/man/man8/dminfo.8153
-rw-r--r--usr/src/man/man8/dns-sd.8275
-rw-r--r--usr/src/man/man8/domainname.8121
-rw-r--r--usr/src/man/man8/drd.876
-rw-r--r--usr/src/man/man8/drvconfig.8175
-rw-r--r--usr/src/man/man8/dtrace.8770
-rw-r--r--usr/src/man/man8/dumpadm.8529
-rw-r--r--usr/src/man/man8/editmap.8211
-rw-r--r--usr/src/man/man8/edquota.8138
-rw-r--r--usr/src/man/man8/eeprom.81314
-rw-r--r--usr/src/man/man8/efdaemon.8108
-rw-r--r--usr/src/man/man8/embedded_su.8329
-rw-r--r--usr/src/man/man8/etrn.8184
-rw-r--r--usr/src/man/man8/fcinfo.81258
-rw-r--r--usr/src/man/man8/fdetach.852
-rw-r--r--usr/src/man/man8/fdisk.8860
-rw-r--r--usr/src/man/man8/ff.8236
-rw-r--r--usr/src/man/man8/ff_ufs.872
-rw-r--r--usr/src/man/man8/fiocompress.8130
-rw-r--r--usr/src/man/man8/flowadm.8850
-rw-r--r--usr/src/man/man8/fmadm.8473
-rw-r--r--usr/src/man/man8/fmd.8180
-rw-r--r--usr/src/man/man8/fmdump.8650
-rw-r--r--usr/src/man/man8/fmstat.8311
-rw-r--r--usr/src/man/man8/fmthard.8227
-rw-r--r--usr/src/man/man8/format.8445
-rw-r--r--usr/src/man/man8/fruadm.8215
-rw-r--r--usr/src/man/man8/fsck.8404
-rw-r--r--usr/src/man/man8/fsck_pcfs.8207
-rw-r--r--usr/src/man/man8/fsck_udfs.8335
-rw-r--r--usr/src/man/man8/fsck_ufs.8331
-rw-r--r--usr/src/man/man8/fsdb.8101
-rw-r--r--usr/src/man/man8/fsdb_udfs.81006
-rw-r--r--usr/src/man/man8/fsdb_ufs.81229
-rw-r--r--usr/src/man/man8/fsirand.849
-rw-r--r--usr/src/man/man8/fssnap.8170
-rw-r--r--usr/src/man/man8/fssnap_ufs.8538
-rw-r--r--usr/src/man/man8/fsstat.8852
-rw-r--r--usr/src/man/man8/fstyp.8167
-rw-r--r--usr/src/man/man8/fuser.8290
-rw-r--r--usr/src/man/man8/fwflash.8431
-rw-r--r--usr/src/man/man8/fwtmp.891
-rw-r--r--usr/src/man/man8/getdev.8174
-rw-r--r--usr/src/man/man8/getdevpolicy.874
-rw-r--r--usr/src/man/man8/getdgrp.8200
-rw-r--r--usr/src/man/man8/getent.8322
-rw-r--r--usr/src/man/man8/getty.8137
-rw-r--r--usr/src/man/man8/getvol.8167
-rw-r--r--usr/src/man/man8/groupadd.8158
-rw-r--r--usr/src/man/man8/groupdel.896
-rw-r--r--usr/src/man/man8/groupmod.8169
-rw-r--r--usr/src/man/man8/growfs.8121
-rw-r--r--usr/src/man/man8/gsscred.8248
-rw-r--r--usr/src/man/man8/gssd.8118
-rw-r--r--usr/src/man/man8/hal-device.877
-rw-r--r--usr/src/man/man8/hal-fdi-validate.869
-rw-r--r--usr/src/man/man8/hal-find.8112
-rw-r--r--usr/src/man/man8/hal-get-property.8202
-rw-r--r--usr/src/man/man8/hald.8139
-rw-r--r--usr/src/man/man8/halt.8112
-rw-r--r--usr/src/man/man8/hextoalabel.8119
-rw-r--r--usr/src/man/man8/hostconfig.8152
-rw-r--r--usr/src/man/man8/hotplug.8330
-rw-r--r--usr/src/man/man8/id.8423
-rw-r--r--usr/src/man/man8/idmap.81312
-rw-r--r--usr/src/man/man8/idmapd.8121
-rw-r--r--usr/src/man/man8/idsconfig.8188
-rw-r--r--usr/src/man/man8/if_mpadm.8135
-rw-r--r--usr/src/man/man8/ifconfig.82548
-rw-r--r--usr/src/man/man8/ifparse.8181
-rw-r--r--usr/src/man/man8/ikeadm.8838
-rw-r--r--usr/src/man/man8/ikecert.81031
-rw-r--r--usr/src/man/man8/in.chargend.888
-rw-r--r--usr/src/man/man8/in.comsat.881
-rw-r--r--usr/src/man/man8/in.daytimed.883
-rw-r--r--usr/src/man/man8/in.discardd.883
-rw-r--r--usr/src/man/man8/in.echod.881
-rw-r--r--usr/src/man/man8/in.fingerd.8124
-rw-r--r--usr/src/man/man8/in.iked.8468
-rw-r--r--usr/src/man/man8/in.lpd.8127
-rw-r--r--usr/src/man/man8/in.mpathd.8358
-rw-r--r--usr/src/man/man8/in.ndpd.8273
-rw-r--r--usr/src/man/man8/in.rarpd.8179
-rw-r--r--usr/src/man/man8/in.rdisc.8196
-rw-r--r--usr/src/man/man8/in.rexecd.8185
-rw-r--r--usr/src/man/man8/in.ripngd.8231
-rw-r--r--usr/src/man/man8/in.rlogind.8395
-rw-r--r--usr/src/man/man8/in.routed.8507
-rw-r--r--usr/src/man/man8/in.rshd.8454
-rw-r--r--usr/src/man/man8/in.rwhod.8138
-rw-r--r--usr/src/man/man8/in.talkd.857
-rw-r--r--usr/src/man/man8/in.telnetd.8412
-rw-r--r--usr/src/man/man8/in.tftpd.8122
-rw-r--r--usr/src/man/man8/in.timed.881
-rw-r--r--usr/src/man/man8/in.uucpd.8189
-rw-r--r--usr/src/man/man8/inetadm.8338
-rw-r--r--usr/src/man/man8/inetconv.8256
-rw-r--r--usr/src/man/man8/inetd.8864
-rw-r--r--usr/src/man/man8/infocmp.8338
-rw-r--r--usr/src/man/man8/init.8592
-rw-r--r--usr/src/man/man8/inityp2l.8132
-rw-r--r--usr/src/man/man8/install.8230
-rw-r--r--usr/src/man/man8/installboot.8246
-rw-r--r--usr/src/man/man8/installf.8449
-rw-r--r--usr/src/man/man8/installgrub.8151
-rw-r--r--usr/src/man/man8/intrd.871
-rw-r--r--usr/src/man/man8/intrstat.8211
-rw-r--r--usr/src/man/man8/iostat.8688
-rw-r--r--usr/src/man/man8/ipaddrsel.8326
-rw-r--r--usr/src/man/man8/ipadm.81061
-rw-r--r--usr/src/man/man8/ipdadm.8226
-rw-r--r--usr/src/man/man8/ipf.8554
-rw-r--r--usr/src/man/man8/ipfs.8249
-rw-r--r--usr/src/man/man8/ipfstat.8427
-rw-r--r--usr/src/man/man8/ipmon.8420
-rw-r--r--usr/src/man/man8/ipmpstat.8858
-rw-r--r--usr/src/man/man8/ipnat.8227
-rw-r--r--usr/src/man/man8/ippool.8352
-rw-r--r--usr/src/man/man8/ipqosconf.81060
-rw-r--r--usr/src/man/man8/ipsecalgs.8608
-rw-r--r--usr/src/man/man8/ipsecconf.81879
-rw-r--r--usr/src/man/man8/ipseckey.81639
-rw-r--r--usr/src/man/man8/iscsiadm.81379
-rw-r--r--usr/src/man/man8/isns.8285
-rw-r--r--usr/src/man/man8/isnsadm.8766
-rw-r--r--usr/src/man/man8/itadm.8989
-rw-r--r--usr/src/man/man8/k5srvutil.8125
-rw-r--r--usr/src/man/man8/kadb.8127
-rw-r--r--usr/src/man/man8/kadmin.81518
-rw-r--r--usr/src/man/man8/kadmind.8412
-rw-r--r--usr/src/man/man8/kclient.8599
-rw-r--r--usr/src/man/man8/kdb5_ldap_util.81180
-rw-r--r--usr/src/man/man8/kdb5_util.8526
-rw-r--r--usr/src/man/man8/kdcmgr.8420
-rw-r--r--usr/src/man/man8/kernel.8403
-rw-r--r--usr/src/man/man8/keyserv.8174
-rw-r--r--usr/src/man/man8/killall.840
-rw-r--r--usr/src/man/man8/kprop.8175
-rw-r--r--usr/src/man/man8/kpropd.8254
-rw-r--r--usr/src/man/man8/kproplog.8133
-rw-r--r--usr/src/man/man8/krb5kdc.8242
-rw-r--r--usr/src/man/man8/ksslcfg.8417
-rw-r--r--usr/src/man/man8/kstat.8389
-rw-r--r--usr/src/man/man8/ktkt_warnd.884
-rw-r--r--usr/src/man/man8/labelit.8157
-rw-r--r--usr/src/man/man8/labelit_hsfs.8135
-rw-r--r--usr/src/man/man8/labelit_udfs.8146
-rw-r--r--usr/src/man/man8/labelit_ufs.8102
-rw-r--r--usr/src/man/man8/latencytop.8305
-rw-r--r--usr/src/man/man8/ldap_cachemgr.8170
-rw-r--r--usr/src/man/man8/ldapaddent.8581
-rw-r--r--usr/src/man/man8/ldapclient.81189
-rw-r--r--usr/src/man/man8/ldmad.878
-rw-r--r--usr/src/man/man8/link.8117
-rw-r--r--usr/src/man/man8/listdgrp.893
-rw-r--r--usr/src/man/man8/listen.8112
-rw-r--r--usr/src/man/man8/locator.8120
-rw-r--r--usr/src/man/man8/lockfs.8345
-rw-r--r--usr/src/man/man8/lockstat.8867
-rw-r--r--usr/src/man/man8/lofiadm.8640
-rw-r--r--usr/src/man/man8/logadm.8920
-rw-r--r--usr/src/man/man8/logins.8205
-rw-r--r--usr/src/man/man8/lpadmin.81364
-rw-r--r--usr/src/man/man8/lpfilter.8500
-rw-r--r--usr/src/man/man8/lpforms.8672
-rw-r--r--usr/src/man/man8/lpget.8189
-rw-r--r--usr/src/man/man8/lpmove.8178
-rw-r--r--usr/src/man/man8/lpsched.8142
-rw-r--r--usr/src/man/man8/lpset.8241
-rw-r--r--usr/src/man/man8/lpshut.866
-rw-r--r--usr/src/man/man8/lpsystem.841
-rw-r--r--usr/src/man/man8/lpusers.8199
-rw-r--r--usr/src/man/man8/luxadm.81268
-rw-r--r--usr/src/man/man8/mail.local.8212
-rw-r--r--usr/src/man/man8/mailwrapper.8130
-rw-r--r--usr/src/man/man8/makedbm.8180
-rw-r--r--usr/src/man/man8/makemap.8247
-rw-r--r--usr/src/man/man8/mdnsd.8108
-rw-r--r--usr/src/man/man8/mkdevalloc.883
-rw-r--r--usr/src/man/man8/mkdevmaps.862
-rw-r--r--usr/src/man/man8/mkfifo.8172
-rw-r--r--usr/src/man/man8/mkfile.895
-rw-r--r--usr/src/man/man8/mkfs.8141
-rw-r--r--usr/src/man/man8/mkfs_pcfs.8381
-rw-r--r--usr/src/man/man8/mkfs_udfs.8189
-rw-r--r--usr/src/man/man8/mkfs_ufs.8412
-rw-r--r--usr/src/man/man8/mknod.8109
-rw-r--r--usr/src/man/man8/mkpwdict.899
-rw-r--r--usr/src/man/man8/modinfo.8161
-rw-r--r--usr/src/man/man8/modload.8104
-rw-r--r--usr/src/man/man8/modunload.869
-rw-r--r--usr/src/man/man8/monitor.81777
-rw-r--r--usr/src/man/man8/mount.8454
-rw-r--r--usr/src/man/man8/mount_hsfs.8287
-rw-r--r--usr/src/man/man8/mount_nfs.8838
-rw-r--r--usr/src/man/man8/mount_pcfs.8203
-rw-r--r--usr/src/man/man8/mount_smbfs.8526
-rw-r--r--usr/src/man/man8/mount_tmpfs.8135
-rw-r--r--usr/src/man/man8/mount_udfs.8225
-rw-r--r--usr/src/man/man8/mount_ufs.8385
-rw-r--r--usr/src/man/man8/mountall.8213
-rw-r--r--usr/src/man/man8/mountd.8113
-rw-r--r--usr/src/man/man8/mpathadm.8713
-rw-r--r--usr/src/man/man8/mpstat.8360
-rw-r--r--usr/src/man/man8/msgid.875
-rw-r--r--usr/src/man/man8/mvdir.887
-rw-r--r--usr/src/man/man8/ncaconfd.884
-rw-r--r--usr/src/man/man8/ncheck.8122
-rw-r--r--usr/src/man/man8/ncheck_ufs.854
-rw-r--r--usr/src/man/man8/ndd.8120
-rw-r--r--usr/src/man/man8/ndmpadm.8467
-rw-r--r--usr/src/man/man8/ndmpd.8154
-rw-r--r--usr/src/man/man8/ndmpstat.8373
-rw-r--r--usr/src/man/man8/ndp.8221
-rw-r--r--usr/src/man/man8/netstat.81108
-rw-r--r--usr/src/man/man8/netstrategy.8112
-rw-r--r--usr/src/man/man8/newaliases.8205
-rw-r--r--usr/src/man/man8/newfs.8513
-rw-r--r--usr/src/man/man8/newkey.896
-rw-r--r--usr/src/man/man8/nfs4cbd.858
-rw-r--r--usr/src/man/man8/nfsd.8235
-rw-r--r--usr/src/man/man8/nfslogd.8253
-rw-r--r--usr/src/man/man8/nfsmapid.8136
-rw-r--r--usr/src/man/man8/nfsstat.8888
-rw-r--r--usr/src/man/man8/nlsadmin.8389
-rw-r--r--usr/src/man/man8/nscd.8190
-rw-r--r--usr/src/man/man8/nvmeadm.8595
-rw-r--r--usr/src/man/man8/nwamd.8250
-rw-r--r--usr/src/man/man8/obpsym.8148
-rw-r--r--usr/src/man/man8/oplhpd.873
-rw-r--r--usr/src/man/man8/passmgmt.8322
-rw-r--r--usr/src/man/man8/pbind.8361
-rw-r--r--usr/src/man/man8/pcitool.8224
-rw-r--r--usr/src/man/man8/picld.8132
-rw-r--r--usr/src/man/man8/ping.8479
-rw-r--r--usr/src/man/man8/pkgadd.8482
-rw-r--r--usr/src/man/man8/pkgadm.8201
-rw-r--r--usr/src/man/man8/pkgask.8140
-rw-r--r--usr/src/man/man8/pkgchk.8420
-rw-r--r--usr/src/man/man8/pkgrm.8319
-rw-r--r--usr/src/man/man8/plockstat.8234
-rw-r--r--usr/src/man/man8/pmadm.8589
-rw-r--r--usr/src/man/man8/pmconfig.8194
-rw-r--r--usr/src/man/man8/polkit-is-privileged.8117
-rw-r--r--usr/src/man/man8/pooladm.8268
-rw-r--r--usr/src/man/man8/poolbind.8260
-rw-r--r--usr/src/man/man8/poolcfg.8482
-rw-r--r--usr/src/man/man8/poold.8209
-rw-r--r--usr/src/man/man8/poolstat.8396
-rw-r--r--usr/src/man/man8/ports.8300
-rw-r--r--usr/src/man/man8/powerd.874
-rw-r--r--usr/src/man/man8/powertop.8242
-rw-r--r--usr/src/man/man8/ppdmgr.8318
-rw-r--r--usr/src/man/man8/pppd.82725
-rw-r--r--usr/src/man/man8/pppdump.864
-rw-r--r--usr/src/man/man8/pppoec.8275
-rw-r--r--usr/src/man/man8/pppoed.8439
-rw-r--r--usr/src/man/man8/pppstats.8400
-rw-r--r--usr/src/man/man8/pptadm.874
-rw-r--r--usr/src/man/man8/praudit.8195
-rw-r--r--usr/src/man/man8/print-service.8182
-rw-r--r--usr/src/man/man8/printmgr.8126
-rw-r--r--usr/src/man/man8/projadd.8314
-rw-r--r--usr/src/man/man8/projdel.8171
-rw-r--r--usr/src/man/man8/projmod.8602
-rw-r--r--usr/src/man/man8/prstat.8894
-rw-r--r--usr/src/man/man8/prtconf.8230
-rw-r--r--usr/src/man/man8/prtdiag.8114
-rw-r--r--usr/src/man/man8/prtdscp.8148
-rw-r--r--usr/src/man/man8/prtfru.8110
-rw-r--r--usr/src/man/man8/prtpicl.870
-rw-r--r--usr/src/man/man8/prtvtoc.8206
-rw-r--r--usr/src/man/man8/psradm.8362
-rw-r--r--usr/src/man/man8/psrinfo.8250
-rw-r--r--usr/src/man/man8/psrset.8553
-rw-r--r--usr/src/man/man8/putdev.8418
-rw-r--r--usr/src/man/man8/putdgrp.8205
-rw-r--r--usr/src/man/man8/pwck.895
-rw-r--r--usr/src/man/man8/pwconv.8186
-rw-r--r--usr/src/man/man8/quot.8163
-rw-r--r--usr/src/man/man8/quota.888
-rw-r--r--usr/src/man/man8/quotacheck.8120
-rw-r--r--usr/src/man/man8/quotaon.8134
-rw-r--r--usr/src/man/man8/raidctl.81075
-rw-r--r--usr/src/man/man8/ramdiskadm.8164
-rw-r--r--usr/src/man/man8/rcapadm.8265
-rw-r--r--usr/src/man/man8/rcapd.8187
-rw-r--r--usr/src/man/man8/rctladm.8192
-rw-r--r--usr/src/man/man8/rdate.845
-rw-r--r--usr/src/man/man8/rdmsr.843
-rw-r--r--usr/src/man/man8/reboot.8371
-rw-r--r--usr/src/man/man8/rem_drv.8108
-rw-r--r--usr/src/man/man8/remove_allocatable.8145
-rw-r--r--usr/src/man/man8/removef.8207
-rw-r--r--usr/src/man/man8/repquota.870
-rw-r--r--usr/src/man/man8/rmmount.8291
-rw-r--r--usr/src/man/man8/rmt.8164
-rw-r--r--usr/src/man/man8/rmvolmgr.8149
-rw-r--r--usr/src/man/man8/roleadd.8544
-rw-r--r--usr/src/man/man8/roledel.8181
-rw-r--r--usr/src/man/man8/rolemod.8453
-rw-r--r--usr/src/man/man8/root_archive.8100
-rw-r--r--usr/src/man/man8/route.8781
-rw-r--r--usr/src/man/man8/routeadm.8551
-rw-r--r--usr/src/man/man8/rpc.bootparamd.896
-rw-r--r--usr/src/man/man8/rpc.rstatd.855
-rw-r--r--usr/src/man/man8/rpc.rusersd.852
-rw-r--r--usr/src/man/man8/rpc.rwalld.854
-rw-r--r--usr/src/man/man8/rpc.smserverd.858
-rw-r--r--usr/src/man/man8/rpc.sprayd.858
-rw-r--r--usr/src/man/man8/rpc.yppasswdd.8179
-rw-r--r--usr/src/man/man8/rpc.ypupdated.8106
-rw-r--r--usr/src/man/man8/rpcbind.8268
-rw-r--r--usr/src/man/man8/rpcinfo.8354
-rw-r--r--usr/src/man/man8/rquotad.881
-rw-r--r--usr/src/man/man8/rsh.8121
-rw-r--r--usr/src/man/man8/rtc.8124
-rw-r--r--usr/src/man/man8/rtquery.8193
-rw-r--r--usr/src/man/man8/runacct.8332
-rw-r--r--usr/src/man/man8/rwall.877
-rw-r--r--usr/src/man/man8/sac.8253
-rw-r--r--usr/src/man/man8/sacadm.8552
-rw-r--r--usr/src/man/man8/saf.81516
-rw-r--r--usr/src/man/man8/sar.8164
-rw-r--r--usr/src/man/man8/sasinfo.8733
-rw-r--r--usr/src/man/man8/savecore.8220
-rw-r--r--usr/src/man/man8/sbdadm.8267
-rw-r--r--usr/src/man/man8/scadm.81076
-rw-r--r--usr/src/man/man8/sckmd.884
-rw-r--r--usr/src/man/man8/sdpadm.886
-rw-r--r--usr/src/man/man8/sendmail.83508
-rw-r--r--usr/src/man/man8/setuname.874
-rw-r--r--usr/src/man/man8/sf880drd.864
-rw-r--r--usr/src/man/man8/share.8208
-rw-r--r--usr/src/man/man8/share_nfs.8818
-rw-r--r--usr/src/man/man8/shareall.862
-rw-r--r--usr/src/man/man8/sharectl.8231
-rw-r--r--usr/src/man/man8/sharemgr.81339
-rw-r--r--usr/src/man/man8/showmount.882
-rw-r--r--usr/src/man/man8/shutdown.8190
-rw-r--r--usr/src/man/man8/slpd.8205
-rw-r--r--usr/src/man/man8/smbadm.8461
-rw-r--r--usr/src/man/man8/smbd.8132
-rw-r--r--usr/src/man/man8/smbiod.8119
-rw-r--r--usr/src/man/man8/smbios.8225
-rw-r--r--usr/src/man/man8/smbstat.8178
-rw-r--r--usr/src/man/man8/smrsh.886
-rw-r--r--usr/src/man/man8/snoop.81209
-rw-r--r--usr/src/man/man8/soconfig.8205
-rw-r--r--usr/src/man/man8/sppptun.8239
-rw-r--r--usr/src/man/man8/spray.882
-rw-r--r--usr/src/man/man8/statd.8118
-rw-r--r--usr/src/man/man8/stmfadm.8668
-rw-r--r--usr/src/man/man8/stmsboot.8407
-rw-r--r--usr/src/man/man8/strace.8177
-rw-r--r--usr/src/man/man8/strclean.877
-rw-r--r--usr/src/man/man8/strerr.8138
-rw-r--r--usr/src/man/man8/sttydefs.8193
-rw-r--r--usr/src/man/man8/su.8314
-rw-r--r--usr/src/man/man8/sulogin.896
-rw-r--r--usr/src/man/man8/svc.configd.834
-rw-r--r--usr/src/man/man8/svc.ipfd.8626
-rw-r--r--usr/src/man/man8/svc.startd.8591
-rw-r--r--usr/src/man/man8/svcadm.8554
-rw-r--r--usr/src/man/man8/svccfg.8870
-rw-r--r--usr/src/man/man8/swap.8314
-rw-r--r--usr/src/man/man8/sync.828
-rw-r--r--usr/src/man/man8/syncinit.8194
-rw-r--r--usr/src/man/man8/syncloop.8231
-rw-r--r--usr/src/man/man8/syncstat.8195
-rw-r--r--usr/src/man/man8/sysdef.8163
-rw-r--r--usr/src/man/man8/syseventadm.8470
-rw-r--r--usr/src/man/man8/syseventconfd.881
-rw-r--r--usr/src/man/man8/syseventd.8157
-rw-r--r--usr/src/man/man8/syslogd.8374
-rw-r--r--usr/src/man/man8/tapes.8277
-rw-r--r--usr/src/man/man8/tcpd.8115
-rw-r--r--usr/src/man/man8/tcpdchk.888
-rw-r--r--usr/src/man/man8/tcpdmatch.8115
-rw-r--r--usr/src/man/man8/th_define.8953
-rw-r--r--usr/src/man/man8/th_manage.8157
-rw-r--r--usr/src/man/man8/tic.8117
-rw-r--r--usr/src/man/man8/tnchkdb.8184
-rw-r--r--usr/src/man/man8/tnctl.8271
-rw-r--r--usr/src/man/man8/tnd.8226
-rw-r--r--usr/src/man/man8/tninfo.8177
-rw-r--r--usr/src/man/man8/tpmadm.8226
-rw-r--r--usr/src/man/man8/traceroute.8673
-rw-r--r--usr/src/man/man8/trapstat.8656
-rw-r--r--usr/src/man/man8/ttyadm.8228
-rw-r--r--usr/src/man/man8/ttymon.8344
-rw-r--r--usr/src/man/man8/tunefs.8130
-rw-r--r--usr/src/man/man8/txzonemgr.867
-rw-r--r--usr/src/man/man8/tzreload.878
-rw-r--r--usr/src/man/man8/tzselect.882
-rw-r--r--usr/src/man/man8/uadmin.878
-rw-r--r--usr/src/man/man8/ucodeadm.8177
-rw-r--r--usr/src/man/man8/ufsdump.8673
-rw-r--r--usr/src/man/man8/ufsrestore.8756
-rw-r--r--usr/src/man/man8/unshare.892
-rw-r--r--usr/src/man/man8/unshare_nfs.889
-rw-r--r--usr/src/man/man8/update_drv.8329
-rw-r--r--usr/src/man/man8/updatehome.8179
-rw-r--r--usr/src/man/man8/useradd.8576
-rw-r--r--usr/src/man/man8/userdel.8181
-rw-r--r--usr/src/man/man8/usermod.8601
-rw-r--r--usr/src/man/man8/utmpd.8174
-rw-r--r--usr/src/man/man8/uucheck.8127
-rw-r--r--usr/src/man/man8/uucico.8198
-rw-r--r--usr/src/man/man8/uucleanup.8164
-rw-r--r--usr/src/man/man8/uusched.8115
-rw-r--r--usr/src/man/man8/uuxqt.8113
-rw-r--r--usr/src/man/man8/vfsstat.8213
-rw-r--r--usr/src/man/man8/vmstat.8525
-rw-r--r--usr/src/man/man8/vndadm.8650
-rw-r--r--usr/src/man/man8/vndstat.8163
-rw-r--r--usr/src/man/man8/vntsd.8458
-rw-r--r--usr/src/man/man8/volcopy.8159
-rw-r--r--usr/src/man/man8/volcopy_ufs.8127
-rw-r--r--usr/src/man/man8/vscanadm.8683
-rw-r--r--usr/src/man/man8/vscand.8130
-rw-r--r--usr/src/man/man8/wall.8125
-rw-r--r--usr/src/man/man8/whodo.8211
-rw-r--r--usr/src/man/man8/wificonfig.81058
-rw-r--r--usr/src/man/man8/wpad.8171
-rw-r--r--usr/src/man/man8/wracct.8179
-rw-r--r--usr/src/man/man8/ypbind.8170
-rw-r--r--usr/src/man/man8/ypinit.8130
-rw-r--r--usr/src/man/man8/ypmake.8112
-rw-r--r--usr/src/man/man8/ypmap2src.8148
-rw-r--r--usr/src/man/man8/yppoll.846
-rw-r--r--usr/src/man/man8/yppush.8128
-rw-r--r--usr/src/man/man8/ypserv.8358
-rw-r--r--usr/src/man/man8/ypset.894
-rw-r--r--usr/src/man/man8/ypstart.847
-rw-r--r--usr/src/man/man8/ypxfr.8189
-rw-r--r--usr/src/man/man8/zdb.8425
-rw-r--r--usr/src/man/man8/zdump.8123
-rw-r--r--usr/src/man/man8/zfs-program.8602
-rw-r--r--usr/src/man/man8/zfs.84855
-rw-r--r--usr/src/man/man8/zic.8587
-rw-r--r--usr/src/man/man8/zoneadm.8709
-rw-r--r--usr/src/man/man8/zoneadmd.872
-rw-r--r--usr/src/man/man8/zonecfg.82043
-rw-r--r--usr/src/man/man8/zonestatd.890
-rw-r--r--usr/src/man/man8/zpool.82547
-rw-r--r--usr/src/man/man8/zstreamdump.865
-rw-r--r--usr/src/man/man8/ztest.8169
-rw-r--r--usr/src/man/man9e/Intro.9e3
-rw-r--r--usr/src/man/man9e/_fini.9e11
-rw-r--r--usr/src/man/man9e/aread.9e23
-rw-r--r--usr/src/man/man9e/attach.9e23
-rw-r--r--usr/src/man/man9e/awrite.9e21
-rw-r--r--usr/src/man/man9e/chpoll.9e7
-rw-r--r--usr/src/man/man9e/close.9e13
-rw-r--r--usr/src/man/man9e/csx_event_handler.9e5
-rw-r--r--usr/src/man/man9e/ddi_ufm.9e4
-rw-r--r--usr/src/man/man9e/detach.9e22
-rw-r--r--usr/src/man/man9e/devmap.9e21
-rw-r--r--usr/src/man/man9e/devmap_access.9e6
-rw-r--r--usr/src/man/man9e/devmap_contextmgt.9e2
-rw-r--r--usr/src/man/man9e/devmap_dup.9e3
-rw-r--r--usr/src/man/man9e/devmap_map.9e4
-rw-r--r--usr/src/man/man9e/devmap_unmap.9e6
-rw-r--r--usr/src/man/man9e/dump.9e3
-rw-r--r--usr/src/man/man9e/getinfo.9e11
-rw-r--r--usr/src/man/man9e/gld.9e13
-rw-r--r--usr/src/man/man9e/identify.9e5
-rw-r--r--usr/src/man/man9e/ioctl.9e20
-rw-r--r--usr/src/man/man9e/ks_snapshot.9e6
-rw-r--r--usr/src/man/man9e/ks_update.9e4
-rw-r--r--usr/src/man/man9e/mac.9e22
-rw-r--r--usr/src/man/man9e/mc_getcapab.9e2
-rw-r--r--usr/src/man/man9e/mc_getprop.9e2
-rw-r--r--usr/src/man/man9e/mmap.9e24
-rw-r--r--usr/src/man/man9e/open.9e19
-rw-r--r--usr/src/man/man9e/power.9e10
-rw-r--r--usr/src/man/man9e/print.9e2
-rw-r--r--usr/src/man/man9e/probe.9e11
-rw-r--r--usr/src/man/man9e/prop_op.9e4
-rw-r--r--usr/src/man/man9e/put.9e13
-rw-r--r--usr/src/man/man9e/quiesce.9e13
-rw-r--r--usr/src/man/man9e/read.9e7
-rw-r--r--usr/src/man/man9e/segmap.9e7
-rw-r--r--usr/src/man/man9e/srv.9e15
-rw-r--r--usr/src/man/man9e/strategy.9e11
-rw-r--r--usr/src/man/man9e/tran_abort.9e8
-rw-r--r--usr/src/man/man9e/tran_bus_reset.9e6
-rw-r--r--usr/src/man/man9e/tran_dmafree.9e14
-rw-r--r--usr/src/man/man9e/tran_getcap.9e8
-rw-r--r--usr/src/man/man9e/tran_init_pkt.9e25
-rw-r--r--usr/src/man/man9e/tran_quiesce.9e6
-rw-r--r--usr/src/man/man9e/tran_reset.9e8
-rw-r--r--usr/src/man/man9e/tran_reset_notify.9e7
-rw-r--r--usr/src/man/man9e/tran_setup_pkt.9e23
-rw-r--r--usr/src/man/man9e/tran_start.9e11
-rw-r--r--usr/src/man/man9e/tran_sync_pkt.9e12
-rw-r--r--usr/src/man/man9e/tran_tgt_free.9e8
-rw-r--r--usr/src/man/man9e/tran_tgt_init.9e10
-rw-r--r--usr/src/man/man9e/tran_tgt_probe.9e11
-rw-r--r--usr/src/man/man9e/usba_hcdi.9e12
-rw-r--r--usr/src/man/man9e/usba_hcdi_cb_ops.9e4
-rw-r--r--usr/src/man/man9e/write.9e8
-rw-r--r--usr/src/man/man9f/Intro.9f3
-rw-r--r--usr/src/man/man9f/RD.9f3
-rw-r--r--usr/src/man/man9f/SAMESTR.9f2
-rw-r--r--usr/src/man/man9f/STRUCT_DECL.9f7
-rw-r--r--usr/src/man/man9f/WR.9f4
-rw-r--r--usr/src/man/man9f/allocb.9f10
-rw-r--r--usr/src/man/man9f/atomic_add.9f16
-rw-r--r--usr/src/man/man9f/atomic_and.9f16
-rw-r--r--usr/src/man/man9f/atomic_bits.9f16
-rw-r--r--usr/src/man/man9f/atomic_cas.9f16
-rw-r--r--usr/src/man/man9f/atomic_dec.9f16
-rw-r--r--usr/src/man/man9f/atomic_inc.9f16
-rw-r--r--usr/src/man/man9f/atomic_ops.9f16
-rw-r--r--usr/src/man/man9f/atomic_or.9f16
-rw-r--r--usr/src/man/man9f/atomic_swap.9f16
-rw-r--r--usr/src/man/man9f/backq.9f2
-rw-r--r--usr/src/man/man9f/bcanput.9f7
-rw-r--r--usr/src/man/man9f/bcmp.9f2
-rw-r--r--usr/src/man/man9f/bcopy.9f3
-rw-r--r--usr/src/man/man9f/bioclone.9f7
-rw-r--r--usr/src/man/man9f/biodone.9f10
-rw-r--r--usr/src/man/man9f/bioerror.9f5
-rw-r--r--usr/src/man/man9f/biofini.9f9
-rw-r--r--usr/src/man/man9f/bioinit.9f8
-rw-r--r--usr/src/man/man9f/biomodified.9f3
-rw-r--r--usr/src/man/man9f/bioreset.9f10
-rw-r--r--usr/src/man/man9f/biosize.9f7
-rw-r--r--usr/src/man/man9f/biowait.9f5
-rw-r--r--usr/src/man/man9f/bp_copyin.9f7
-rw-r--r--usr/src/man/man9f/bp_copyout.9f7
-rw-r--r--usr/src/man/man9f/bp_mapin.9f3
-rw-r--r--usr/src/man/man9f/bp_mapout.9f4
-rw-r--r--usr/src/man/man9f/btop.9f4
-rw-r--r--usr/src/man/man9f/btopr.9f4
-rw-r--r--usr/src/man/man9f/bufcall.9f13
-rw-r--r--usr/src/man/man9f/bzero.9f4
-rw-r--r--usr/src/man/man9f/canput.9f7
-rw-r--r--usr/src/man/man9f/clrbuf.9f3
-rw-r--r--usr/src/man/man9f/cmn_err.9f16
-rw-r--r--usr/src/man/man9f/copyb.9f4
-rw-r--r--usr/src/man/man9f/copyin.9f11
-rw-r--r--usr/src/man/man9f/copymsg.9f4
-rw-r--r--usr/src/man/man9f/copyout.9f11
-rw-r--r--usr/src/man/man9f/csx_AccessConfigurationRegister.9f6
-rw-r--r--usr/src/man/man9f/csx_CS_DDI_Info.9f4
-rw-r--r--usr/src/man/man9f/csx_ConvertSize.9f3
-rw-r--r--usr/src/man/man9f/csx_ConvertSpeed.9f3
-rw-r--r--usr/src/man/man9f/csx_DeregisterClient.9f2
-rw-r--r--usr/src/man/man9f/csx_DupHandle.9f10
-rw-r--r--usr/src/man/man9f/csx_Error2Text.9f2
-rw-r--r--usr/src/man/man9f/csx_Event2Text.9f3
-rw-r--r--usr/src/man/man9f/csx_FreeHandle.9f4
-rw-r--r--usr/src/man/man9f/csx_Get8.9f10
-rw-r--r--usr/src/man/man9f/csx_GetFirstClient.9f2
-rw-r--r--usr/src/man/man9f/csx_GetFirstTuple.9f7
-rw-r--r--usr/src/man/man9f/csx_GetHandleOffset.9f5
-rw-r--r--usr/src/man/man9f/csx_GetMappedAddr.9f10
-rw-r--r--usr/src/man/man9f/csx_GetStatus.9f2
-rw-r--r--usr/src/man/man9f/csx_GetTupleData.9f7
-rw-r--r--usr/src/man/man9f/csx_MakeDeviceNode.9f5
-rw-r--r--usr/src/man/man9f/csx_MapLogSocket.9f2
-rw-r--r--usr/src/man/man9f/csx_MapMemPage.9f5
-rw-r--r--usr/src/man/man9f/csx_ModifyConfiguration.9f11
-rw-r--r--usr/src/man/man9f/csx_ModifyWindow.9f6
-rw-r--r--usr/src/man/man9f/csx_ParseTuple.9f27
-rw-r--r--usr/src/man/man9f/csx_Parse_CISTPL_BATTERY.9f7
-rw-r--r--usr/src/man/man9f/csx_Parse_CISTPL_BYTEORDER.9f7
-rw-r--r--usr/src/man/man9f/csx_Parse_CISTPL_CFTABLE_ENTRY.9f9
-rw-r--r--usr/src/man/man9f/csx_Parse_CISTPL_CONFIG.9f9
-rw-r--r--usr/src/man/man9f/csx_Parse_CISTPL_DATE.9f7
-rw-r--r--usr/src/man/man9f/csx_Parse_CISTPL_DEVICE.9f9
-rw-r--r--usr/src/man/man9f/csx_Parse_CISTPL_DEVICEGEO.9f9
-rw-r--r--usr/src/man/man9f/csx_Parse_CISTPL_DEVICEGEO_A.9f9
-rw-r--r--usr/src/man/man9f/csx_Parse_CISTPL_FORMAT.9f7
-rw-r--r--usr/src/man/man9f/csx_Parse_CISTPL_FUNCE.9f9
-rw-r--r--usr/src/man/man9f/csx_Parse_CISTPL_FUNCID.9f9
-rw-r--r--usr/src/man/man9f/csx_Parse_CISTPL_GEOMETRY.9f7
-rw-r--r--usr/src/man/man9f/csx_Parse_CISTPL_JEDEC_C.9f9
-rw-r--r--usr/src/man/man9f/csx_Parse_CISTPL_LINKTARGET.9f7
-rw-r--r--usr/src/man/man9f/csx_Parse_CISTPL_LONGLINK_A.9f7
-rw-r--r--usr/src/man/man9f/csx_Parse_CISTPL_LONGLINK_MFC.9f7
-rw-r--r--usr/src/man/man9f/csx_Parse_CISTPL_MANFID.9f7
-rw-r--r--usr/src/man/man9f/csx_Parse_CISTPL_ORG.9f7
-rw-r--r--usr/src/man/man9f/csx_Parse_CISTPL_SPCL.9f7
-rw-r--r--usr/src/man/man9f/csx_Parse_CISTPL_SWIL.9f7
-rw-r--r--usr/src/man/man9f/csx_Parse_CISTPL_VERS_1.9f7
-rw-r--r--usr/src/man/man9f/csx_Parse_CISTPL_VERS_2.9f7
-rw-r--r--usr/src/man/man9f/csx_Put8.9f10
-rw-r--r--usr/src/man/man9f/csx_RegisterClient.9f3
-rw-r--r--usr/src/man/man9f/csx_ReleaseConfiguration.9f7
-rw-r--r--usr/src/man/man9f/csx_RepGet8.9f10
-rw-r--r--usr/src/man/man9f/csx_RepPut8.9f10
-rw-r--r--usr/src/man/man9f/csx_RequestConfiguration.9f9
-rw-r--r--usr/src/man/man9f/csx_RequestIO.9f3
-rw-r--r--usr/src/man/man9f/csx_RequestIRQ.9f3
-rw-r--r--usr/src/man/man9f/csx_RequestSocketMask.9f6
-rw-r--r--usr/src/man/man9f/csx_RequestWindow.9f8
-rw-r--r--usr/src/man/man9f/csx_ResetFunction.9f3
-rw-r--r--usr/src/man/man9f/csx_SetEventMask.9f6
-rw-r--r--usr/src/man/man9f/csx_SetHandleOffset.9f5
-rw-r--r--usr/src/man/man9f/csx_ValidateCIS.9f6
-rw-r--r--usr/src/man/man9f/datamsg.9f6
-rw-r--r--usr/src/man/man9f/ddi_add_event_handler.9f7
-rw-r--r--usr/src/man/man9f/ddi_add_intr.9f27
-rw-r--r--usr/src/man/man9f/ddi_add_softintr.9f10
-rw-r--r--usr/src/man/man9f/ddi_binding_name.9f2
-rw-r--r--usr/src/man/man9f/ddi_btop.9f4
-rw-r--r--usr/src/man/man9f/ddi_can_receive_sig.9f4
-rw-r--r--usr/src/man/man9f/ddi_cb_register.9f8
-rw-r--r--usr/src/man/man9f/ddi_check_acc_handle.9f7
-rw-r--r--usr/src/man/man9f/ddi_copyin.9f8
-rw-r--r--usr/src/man/man9f/ddi_copyout.9f8
-rw-r--r--usr/src/man/man9f/ddi_create_minor_node.9f23
-rw-r--r--usr/src/man/man9f/ddi_cred.9f6
-rw-r--r--usr/src/man/man9f/ddi_dev_is_needed.9f11
-rw-r--r--usr/src/man/man9f/ddi_dev_nintrs.9f10
-rw-r--r--usr/src/man/man9f/ddi_dev_nregs.9f3
-rw-r--r--usr/src/man/man9f/ddi_dev_regsize.9f3
-rw-r--r--usr/src/man/man9f/ddi_dev_report_fault.9f5
-rw-r--r--usr/src/man/man9f/ddi_device_copy.9f3
-rw-r--r--usr/src/man/man9f/ddi_device_zero.9f3
-rw-r--r--usr/src/man/man9f/ddi_devid_compare.9f8
-rw-r--r--usr/src/man/man9f/ddi_dma_addr_bind_handle.9f19
-rw-r--r--usr/src/man/man9f/ddi_dma_alloc_handle.9f9
-rw-r--r--usr/src/man/man9f/ddi_dma_buf_bind_handle.9f18
-rw-r--r--usr/src/man/man9f/ddi_dma_burstsizes.9f3
-rw-r--r--usr/src/man/man9f/ddi_dma_free_handle.9f3
-rw-r--r--usr/src/man/man9f/ddi_dma_getwin.9f9
-rw-r--r--usr/src/man/man9f/ddi_dma_mem_alloc.9f13
-rw-r--r--usr/src/man/man9f/ddi_dma_mem_free.9f2
-rw-r--r--usr/src/man/man9f/ddi_dma_numwin.9f6
-rw-r--r--usr/src/man/man9f/ddi_dma_set_sbus64.9f11
-rw-r--r--usr/src/man/man9f/ddi_dma_sync.9f8
-rw-r--r--usr/src/man/man9f/ddi_dma_unbind_handle.9f8
-rw-r--r--usr/src/man/man9f/ddi_dmae.9f17
-rw-r--r--usr/src/man/man9f/ddi_driver_major.9f2
-rw-r--r--usr/src/man/man9f/ddi_driver_name.9f2
-rw-r--r--usr/src/man/man9f/ddi_enter_critical.9f2
-rw-r--r--usr/src/man/man9f/ddi_fm_acc_err_clear.9f9
-rw-r--r--usr/src/man/man9f/ddi_fm_acc_err_get.9f6
-rw-r--r--usr/src/man/man9f/ddi_fm_ereport_post.9f8
-rw-r--r--usr/src/man/man9f/ddi_fm_handler_register.9f17
-rw-r--r--usr/src/man/man9f/ddi_fm_init.9f8
-rw-r--r--usr/src/man/man9f/ddi_fm_service_impact.9f8
-rw-r--r--usr/src/man/man9f/ddi_get8.9f13
-rw-r--r--usr/src/man/man9f/ddi_get_devstate.9f8
-rw-r--r--usr/src/man/man9f/ddi_get_eventcookie.9f7
-rw-r--r--usr/src/man/man9f/ddi_get_instance.9f2
-rw-r--r--usr/src/man/man9f/ddi_get_lbolt.9f4
-rw-r--r--usr/src/man/man9f/ddi_get_pid.9f2
-rw-r--r--usr/src/man/man9f/ddi_get_time.9f6
-rw-r--r--usr/src/man/man9f/ddi_getiminor.9f10
-rw-r--r--usr/src/man/man9f/ddi_in_panic.9f6
-rw-r--r--usr/src/man/man9f/ddi_intr_add_handler.9f22
-rw-r--r--usr/src/man/man9f/ddi_intr_add_softint.9f13
-rw-r--r--usr/src/man/man9f/ddi_intr_alloc.9f17
-rw-r--r--usr/src/man/man9f/ddi_intr_dup_handler.9f17
-rw-r--r--usr/src/man/man9f/ddi_intr_enable.9f15
-rw-r--r--usr/src/man/man9f/ddi_intr_get_cap.9f12
-rw-r--r--usr/src/man/man9f/ddi_intr_get_hilevel_pri.9f12
-rw-r--r--usr/src/man/man9f/ddi_intr_get_nintrs.9f8
-rw-r--r--usr/src/man/man9f/ddi_intr_get_pending.9f13
-rw-r--r--usr/src/man/man9f/ddi_intr_get_pri.9f9
-rw-r--r--usr/src/man/man9f/ddi_intr_get_supported_types.9f12
-rw-r--r--usr/src/man/man9f/ddi_intr_hilevel.9f6
-rw-r--r--usr/src/man/man9f/ddi_intr_set_mask.9f11
-rw-r--r--usr/src/man/man9f/ddi_intr_set_nreq.9f9
-rw-r--r--usr/src/man/man9f/ddi_io_get8.9f16
-rw-r--r--usr/src/man/man9f/ddi_io_put8.9f15
-rw-r--r--usr/src/man/man9f/ddi_io_rep_get8.9f16
-rw-r--r--usr/src/man/man9f/ddi_io_rep_put8.9f15
-rw-r--r--usr/src/man/man9f/ddi_log_sysevent.9f6
-rw-r--r--usr/src/man/man9f/ddi_map_regs.9f10
-rw-r--r--usr/src/man/man9f/ddi_mem_get8.9f15
-rw-r--r--usr/src/man/man9f/ddi_mem_put8.9f15
-rw-r--r--usr/src/man/man9f/ddi_mem_rep_get8.9f14
-rw-r--r--usr/src/man/man9f/ddi_mem_rep_put8.9f14
-rw-r--r--usr/src/man/man9f/ddi_mmap_get_model.9f3
-rw-r--r--usr/src/man/man9f/ddi_model_convert_from.9f4
-rw-r--r--usr/src/man/man9f/ddi_modopen.9f20
-rw-r--r--usr/src/man/man9f/ddi_no_info.9f5
-rw-r--r--usr/src/man/man9f/ddi_node_name.9f2
-rw-r--r--usr/src/man/man9f/ddi_peek.9f4
-rw-r--r--usr/src/man/man9f/ddi_periodic_add.9f11
-rw-r--r--usr/src/man/man9f/ddi_periodic_delete.9f9
-rw-r--r--usr/src/man/man9f/ddi_poke.9f4
-rw-r--r--usr/src/man/man9f/ddi_prop_create.9f12
-rw-r--r--usr/src/man/man9f/ddi_prop_exists.9f6
-rw-r--r--usr/src/man/man9f/ddi_prop_get_int.9f6
-rw-r--r--usr/src/man/man9f/ddi_prop_lookup.9f9
-rw-r--r--usr/src/man/man9f/ddi_prop_op.9f10
-rw-r--r--usr/src/man/man9f/ddi_prop_update.9f7
-rw-r--r--usr/src/man/man9f/ddi_put8.9f14
-rw-r--r--usr/src/man/man9f/ddi_regs_map_free.9f5
-rw-r--r--usr/src/man/man9f/ddi_regs_map_setup.9f18
-rw-r--r--usr/src/man/man9f/ddi_remove_event_handler.9f7
-rw-r--r--usr/src/man/man9f/ddi_remove_minor_node.9f4
-rw-r--r--usr/src/man/man9f/ddi_removing_power.9f7
-rw-r--r--usr/src/man/man9f/ddi_rep_get8.9f9
-rw-r--r--usr/src/man/man9f/ddi_rep_put8.9f11
-rw-r--r--usr/src/man/man9f/ddi_report_dev.9f5
-rw-r--r--usr/src/man/man9f/ddi_segmap.9f13
-rw-r--r--usr/src/man/man9f/ddi_soft_state.9f9
-rw-r--r--usr/src/man/man9f/ddi_strtoll.9f2
-rw-r--r--usr/src/man/man9f/ddi_umem_alloc.9f9
-rw-r--r--usr/src/man/man9f/ddi_umem_iosetup.9f7
-rw-r--r--usr/src/man/man9f/ddi_umem_lock.9f6
-rw-r--r--usr/src/man/man9f/delay.9f12
-rw-r--r--usr/src/man/man9f/devfs_clean.9f4
-rw-r--r--usr/src/man/man9f/devmap_default_access.9f5
-rw-r--r--usr/src/man/man9f/devmap_devmem_setup.9f11
-rw-r--r--usr/src/man/man9f/devmap_do_ctxmgt.9f5
-rw-r--r--usr/src/man/man9f/devmap_set_ctx_timeout.9f4
-rw-r--r--usr/src/man/man9f/devmap_setup.9f8
-rw-r--r--usr/src/man/man9f/devmap_unload.9f3
-rw-r--r--usr/src/man/man9f/disksort.9f3
-rw-r--r--usr/src/man/man9f/dlbindack.9f6
-rw-r--r--usr/src/man/man9f/drv_getparm.9f6
-rw-r--r--usr/src/man/man9f/drv_hztousec.9f4
-rw-r--r--usr/src/man/man9f/drv_priv.9f6
-rw-r--r--usr/src/man/man9f/drv_usectohz.9f4
-rw-r--r--usr/src/man/man9f/drv_usecwait.9f4
-rw-r--r--usr/src/man/man9f/dupb.9f7
-rw-r--r--usr/src/man/man9f/dupmsg.9f5
-rw-r--r--usr/src/man/man9f/enableok.9f3
-rw-r--r--usr/src/man/man9f/esballoc.9f11
-rw-r--r--usr/src/man/man9f/esbbcall.9f8
-rw-r--r--usr/src/man/man9f/firmload.9f4
-rw-r--r--usr/src/man/man9f/flushband.9f2
-rw-r--r--usr/src/man/man9f/flushq.9f5
-rw-r--r--usr/src/man/man9f/freeb.9f7
-rw-r--r--usr/src/man/man9f/freemsg.9f4
-rw-r--r--usr/src/man/man9f/freerbuf.9f6
-rw-r--r--usr/src/man/man9f/get_pktiopb.9f11
-rw-r--r--usr/src/man/man9f/geterror.9f2
-rw-r--r--usr/src/man/man9f/gethrtime.9f6
-rw-r--r--usr/src/man/man9f/getmajor.9f4
-rw-r--r--usr/src/man/man9f/getminor.9f3
-rw-r--r--usr/src/man/man9f/getq.9f9
-rw-r--r--usr/src/man/man9f/getrbuf.9f6
-rw-r--r--usr/src/man/man9f/gld.9f9
-rw-r--r--usr/src/man/man9f/hook_alloc.9f5
-rw-r--r--usr/src/man/man9f/hook_free.9f5
-rw-r--r--usr/src/man/man9f/id32_alloc.9f2
-rw-r--r--usr/src/man/man9f/inb.9f10
-rw-r--r--usr/src/man/man9f/insq.9f4
-rw-r--r--usr/src/man/man9f/kiconv.9f36
-rw-r--r--usr/src/man/man9f/kiconv_close.9f36
-rw-r--r--usr/src/man/man9f/kiconv_open.9f36
-rw-r--r--usr/src/man/man9f/kiconvstr.9f36
-rw-r--r--usr/src/man/man9f/kmem_alloc.9f4
-rw-r--r--usr/src/man/man9f/kmem_cache_create.9f7
-rw-r--r--usr/src/man/man9f/kstat_create.9f10
-rw-r--r--usr/src/man/man9f/kstat_delete.9f6
-rw-r--r--usr/src/man/man9f/kstat_install.9f6
-rw-r--r--usr/src/man/man9f/kstat_named_init.9f6
-rw-r--r--usr/src/man/man9f/kstat_queue.9f10
-rw-r--r--usr/src/man/man9f/ldi_add_event_handler.9f6
-rw-r--r--usr/src/man/man9f/ldi_ev_finalize.9f5
-rw-r--r--usr/src/man/man9f/ldi_ev_get_cookie.9f3
-rw-r--r--usr/src/man/man9f/ldi_ev_get_type.9f5
-rw-r--r--usr/src/man/man9f/ldi_ev_notify.9f5
-rw-r--r--usr/src/man/man9f/ldi_ev_register_callbacks.9f6
-rw-r--r--usr/src/man/man9f/ldi_ev_remove_callbacks.9f3
-rw-r--r--usr/src/man/man9f/ldi_get_eventcookie.9f6
-rw-r--r--usr/src/man/man9f/ldi_get_size.9f2
-rw-r--r--usr/src/man/man9f/ldi_ioctl.9f11
-rw-r--r--usr/src/man/man9f/ldi_open_by_dev.9f12
-rw-r--r--usr/src/man/man9f/ldi_prop_get_int.9f5
-rw-r--r--usr/src/man/man9f/ldi_remove_event_handler.9f6
-rw-r--r--usr/src/man/man9f/linkb.9f4
-rw-r--r--usr/src/man/man9f/makecom.9f8
-rw-r--r--usr/src/man/man9f/makedevice.9f3
-rw-r--r--usr/src/man/man9f/max.9f2
-rw-r--r--usr/src/man/man9f/mcopyin.9f3
-rw-r--r--usr/src/man/man9f/mcopymsg.9f3
-rw-r--r--usr/src/man/man9f/mcopyout.9f4
-rw-r--r--usr/src/man/man9f/membar_ops.9f17
-rw-r--r--usr/src/man/man9f/memchr.9f4
-rw-r--r--usr/src/man/man9f/merror.9f3
-rw-r--r--usr/src/man/man9f/mexchange.9f3
-rw-r--r--usr/src/man/man9f/min.9f2
-rw-r--r--usr/src/man/man9f/mioc2ack.9f4
-rw-r--r--usr/src/man/man9f/miocack.9f4
-rw-r--r--usr/src/man/man9f/miocnak.9f5
-rw-r--r--usr/src/man/man9f/mkiocb.9f12
-rw-r--r--usr/src/man/man9f/mod_install.9f9
-rw-r--r--usr/src/man/man9f/msgdsize.9f2
-rw-r--r--usr/src/man/man9f/msgpullup.9f5
-rw-r--r--usr/src/man/man9f/msgsize.9f2
-rw-r--r--usr/src/man/man9f/mt-streams.9f12
-rw-r--r--usr/src/man/man9f/mutex.9f15
-rw-r--r--usr/src/man/man9f/net_event_notify_register.9f8
-rw-r--r--usr/src/man/man9f/net_getifname.9f7
-rw-r--r--usr/src/man/man9f/net_getlifaddr.9f8
-rw-r--r--usr/src/man/man9f/net_getmtu.9f7
-rw-r--r--usr/src/man/man9f/net_getnetid.9f4
-rw-r--r--usr/src/man/man9f/net_getpmtuenabled.9f5
-rw-r--r--usr/src/man/man9f/net_hook_register.9f5
-rw-r--r--usr/src/man/man9f/net_hook_unregister.9f4
-rw-r--r--usr/src/man/man9f/net_inject.9f6
-rw-r--r--usr/src/man/man9f/net_inject_alloc.9f5
-rw-r--r--usr/src/man/man9f/net_inject_free.9f6
-rw-r--r--usr/src/man/man9f/net_instance_alloc.9f6
-rw-r--r--usr/src/man/man9f/net_instance_free.9f6
-rw-r--r--usr/src/man/man9f/net_instance_notify_register.9f8
-rw-r--r--usr/src/man/man9f/net_instance_register.9f8
-rw-r--r--usr/src/man/man9f/net_instance_unregister.9f8
-rw-r--r--usr/src/man/man9f/net_ispartialchecksum.9f7
-rw-r--r--usr/src/man/man9f/net_isvalidchecksum.9f7
-rw-r--r--usr/src/man/man9f/net_kstat_create.9f10
-rw-r--r--usr/src/man/man9f/net_kstat_delete.9f9
-rw-r--r--usr/src/man/man9f/net_lifgetnext.9f5
-rw-r--r--usr/src/man/man9f/net_netidtozonid.9f5
-rw-r--r--usr/src/man/man9f/net_phygetnext.9f6
-rw-r--r--usr/src/man/man9f/net_phylookup.9f8
-rw-r--r--usr/src/man/man9f/net_protocol_lookup.9f5
-rw-r--r--usr/src/man/man9f/net_protocol_notify_register.9f5
-rw-r--r--usr/src/man/man9f/net_protocol_release.9f6
-rw-r--r--usr/src/man/man9f/net_protocol_walk.9f7
-rw-r--r--usr/src/man/man9f/net_routeto.9f8
-rw-r--r--usr/src/man/man9f/net_zoneidtonetid.9f5
-rw-r--r--usr/src/man/man9f/netinfo.9f54
-rw-r--r--usr/src/man/man9f/nochpoll.9f4
-rw-r--r--usr/src/man/man9f/nodev.9f3
-rw-r--r--usr/src/man/man9f/noenable.9f7
-rw-r--r--usr/src/man/man9f/nulldev.9f3
-rw-r--r--usr/src/man/man9f/nvlist_lookup_boolean.9f5
-rw-r--r--usr/src/man/man9f/nvlist_lookup_nvpair.9f7
-rw-r--r--usr/src/man/man9f/outb.9f10
-rw-r--r--usr/src/man/man9f/pci_config_get8.9f6
-rw-r--r--usr/src/man/man9f/pci_config_setup.9f4
-rw-r--r--usr/src/man/man9f/pci_ereport_setup.9f14
-rw-r--r--usr/src/man/man9f/pci_report_pmcap.9f2
-rw-r--r--usr/src/man/man9f/pci_save_config_regs.9f5
-rw-r--r--usr/src/man/man9f/physio.9f7
-rw-r--r--usr/src/man/man9f/pm_busy_component.9f13
-rw-r--r--usr/src/man/man9f/pm_power_has_changed.9f17
-rw-r--r--usr/src/man/man9f/pm_raise_power.9f18
-rw-r--r--usr/src/man/man9f/pm_trans_check.9f6
-rw-r--r--usr/src/man/man9f/pollhead_clean.9f4
-rw-r--r--usr/src/man/man9f/pollwakeup.9f3
-rw-r--r--usr/src/man/man9f/priv_getbyname.9f5
-rw-r--r--usr/src/man/man9f/priv_policy.9f6
-rw-r--r--usr/src/man/man9f/proc_signal.9f3
-rw-r--r--usr/src/man/man9f/ptob.9f4
-rw-r--r--usr/src/man/man9f/pullupmsg.9f5
-rw-r--r--usr/src/man/man9f/put.9f12
-rw-r--r--usr/src/man/man9f/putbq.9f7
-rw-r--r--usr/src/man/man9f/putctl.9f7
-rw-r--r--usr/src/man/man9f/putctl1.9f7
-rw-r--r--usr/src/man/man9f/putnext.9f5
-rw-r--r--usr/src/man/man9f/putnextctl.9f9
-rw-r--r--usr/src/man/man9f/putnextctl1.9f9
-rw-r--r--usr/src/man/man9f/putq.9f5
-rw-r--r--usr/src/man/man9f/qassociate.9f14
-rw-r--r--usr/src/man/man9f/qbufcall.9f8
-rw-r--r--usr/src/man/man9f/qenable.9f2
-rw-r--r--usr/src/man/man9f/qprocson.9f13
-rw-r--r--usr/src/man/man9f/qreply.9f7
-rw-r--r--usr/src/man/man9f/qtimeout.9f8
-rw-r--r--usr/src/man/man9f/qunbufcall.9f6
-rw-r--r--usr/src/man/man9f/quntimeout.9f6
-rw-r--r--usr/src/man/man9f/qwait.9f13
-rw-r--r--usr/src/man/man9f/qwriter.9f7
-rw-r--r--usr/src/man/man9f/rmalloc.9f10
-rw-r--r--usr/src/man/man9f/rmalloc_wait.9f5
-rw-r--r--usr/src/man/man9f/rmallocmap.9f4
-rw-r--r--usr/src/man/man9f/rmfree.9f6
-rw-r--r--usr/src/man/man9f/rmvb.9f3
-rw-r--r--usr/src/man/man9f/rmvq.9f4
-rw-r--r--usr/src/man/man9f/rwlock.9f12
-rw-r--r--usr/src/man/man9f/scsi_abort.9f4
-rw-r--r--usr/src/man/man9f/scsi_alloc_consistent_buf.9f11
-rw-r--r--usr/src/man/man9f/scsi_destroy_pkt.9f4
-rw-r--r--usr/src/man/man9f/scsi_dmaget.9f12
-rw-r--r--usr/src/man/man9f/scsi_errmsg.9f7
-rw-r--r--usr/src/man/man9f/scsi_ext_sense_fields.9f8
-rw-r--r--usr/src/man/man9f/scsi_find_sense_descr.9f11
-rw-r--r--usr/src/man/man9f/scsi_free_consistent_buf.9f4
-rw-r--r--usr/src/man/man9f/scsi_get_device_type_scsi_options.9f2
-rw-r--r--usr/src/man/man9f/scsi_get_device_type_string.9f6
-rw-r--r--usr/src/man/man9f/scsi_hba_init.9f9
-rw-r--r--usr/src/man/man9f/scsi_hba_lookup_capstr.9f9
-rw-r--r--usr/src/man/man9f/scsi_hba_pkt_alloc.9f4
-rw-r--r--usr/src/man/man9f/scsi_hba_pkt_comp.9f6
-rw-r--r--usr/src/man/man9f/scsi_hba_probe.9f4
-rw-r--r--usr/src/man/man9f/scsi_hba_tgtmap_create.9f8
-rw-r--r--usr/src/man/man9f/scsi_hba_tran_alloc.9f3
-rw-r--r--usr/src/man/man9f/scsi_ifgetcap.9f14
-rw-r--r--usr/src/man/man9f/scsi_init_pkt.9f10
-rw-r--r--usr/src/man/man9f/scsi_log.9f7
-rw-r--r--usr/src/man/man9f/scsi_pktalloc.9f9
-rw-r--r--usr/src/man/man9f/scsi_poll.9f4
-rw-r--r--usr/src/man/man9f/scsi_probe.9f10
-rw-r--r--usr/src/man/man9f/scsi_reset.9f4
-rw-r--r--usr/src/man/man9f/scsi_reset_notify.9f3
-rw-r--r--usr/src/man/man9f/scsi_sense_key.9f8
-rw-r--r--usr/src/man/man9f/scsi_setup_cdb.9f3
-rw-r--r--usr/src/man/man9f/scsi_slave.9f17
-rw-r--r--usr/src/man/man9f/scsi_sync_pkt.9f8
-rw-r--r--usr/src/man/man9f/scsi_transport.9f8
-rw-r--r--usr/src/man/man9f/scsi_unprobe.9f4
-rw-r--r--usr/src/man/man9f/scsi_validate_sense.9f11
-rw-r--r--usr/src/man/man9f/scsi_vu_errmsg.9f11
-rw-r--r--usr/src/man/man9f/string.9f9
-rw-r--r--usr/src/man/man9f/strlog.9f15
-rw-r--r--usr/src/man/man9f/strqget.9f3
-rw-r--r--usr/src/man/man9f/strqset.9f3
-rw-r--r--usr/src/man/man9f/testb.9f5
-rw-r--r--usr/src/man/man9f/timeout.9f8
-rw-r--r--usr/src/man/man9f/u8_strcmp.9f12
-rw-r--r--usr/src/man/man9f/u8_textprep_str.9f12
-rw-r--r--usr/src/man/man9f/u8_validate.9f12
-rw-r--r--usr/src/man/man9f/uconv_u16tou32.9f5
-rw-r--r--usr/src/man/man9f/uiomove.9f5
-rw-r--r--usr/src/man/man9f/unbufcall.9f3
-rw-r--r--usr/src/man/man9f/unlinkb.9f2
-rw-r--r--usr/src/man/man9f/untimeout.9f7
-rw-r--r--usr/src/man/man9f/ureadc.9f5
-rw-r--r--usr/src/man/man9f/usb_alloc_request.9f21
-rw-r--r--usr/src/man/man9f/usb_client_attach.9f8
-rw-r--r--usr/src/man/man9f/usb_clr_feature.9f9
-rw-r--r--usr/src/man/man9f/usb_create_pm_components.9f18
-rw-r--r--usr/src/man/man9f/usb_get_addr.9f5
-rw-r--r--usr/src/man/man9f/usb_get_alt_if.9f9
-rw-r--r--usr/src/man/man9f/usb_get_cfg.9f15
-rw-r--r--usr/src/man/man9f/usb_get_current_frame_number.9f11
-rw-r--r--usr/src/man/man9f/usb_get_dev_data.9f9
-rw-r--r--usr/src/man/man9f/usb_get_max_pkts_per_isoc_request.9f11
-rw-r--r--usr/src/man/man9f/usb_get_status.9f4
-rw-r--r--usr/src/man/man9f/usb_get_string_descr.9f6
-rw-r--r--usr/src/man/man9f/usb_handle_remote_wakeup.9f18
-rw-r--r--usr/src/man/man9f/usb_lookup_ep_data.9f10
-rw-r--r--usr/src/man/man9f/usb_parse_data.9f8
-rw-r--r--usr/src/man/man9f/usb_pipe_bulk_xfer.9f26
-rw-r--r--usr/src/man/man9f/usb_pipe_close.9f12
-rw-r--r--usr/src/man/man9f/usb_pipe_ctrl_xfer.9f26
-rw-r--r--usr/src/man/man9f/usb_pipe_drain_reqs.9f8
-rw-r--r--usr/src/man/man9f/usb_pipe_get_max_bulk_transfer_size.9f8
-rw-r--r--usr/src/man/man9f/usb_pipe_get_state.9f14
-rw-r--r--usr/src/man/man9f/usb_pipe_intr_xfer.9f27
-rw-r--r--usr/src/man/man9f/usb_pipe_isoc_xfer.9f30
-rw-r--r--usr/src/man/man9f/usb_pipe_reset.9f23
-rw-r--r--usr/src/man/man9f/usb_pipe_set_private.9f6
-rw-r--r--usr/src/man/man9f/usb_register_hotplug_cbs.9f8
-rw-r--r--usr/src/man/man9f/usb_reset_device.9f4
-rw-r--r--usr/src/man/man9f/uwritec.9f5
-rw-r--r--usr/src/man/man9f/va_arg.9f3
-rw-r--r--usr/src/man/man9p/ddi-forceattach.9p12
-rw-r--r--usr/src/man/man9p/inquiry-device-type.9p2
-rw-r--r--usr/src/man/man9p/no-involuntary-power-cycles.9p11
-rw-r--r--usr/src/man/man9p/pm-components.9p14
-rw-r--r--usr/src/man/man9p/pm.9p12
-rw-r--r--usr/src/man/man9p/removable-media.9p11
-rw-r--r--usr/src/man/man9p/size.9p2
-rw-r--r--usr/src/man/man9s/datab.9s3
-rw-r--r--usr/src/man/man9s/ddi_device_acc_attr.9s11
-rw-r--r--usr/src/man/man9s/ddi_dma_attr.9s16
-rw-r--r--usr/src/man/man9s/ddi_dma_cookie.9s11
-rw-r--r--usr/src/man/man9s/ddi_dmae_req.9s8
-rw-r--r--usr/src/man/man9s/ddi_fm_error.9s12
-rw-r--r--usr/src/man/man9s/ddi_idevice_cookie.9s5
-rw-r--r--usr/src/man/man9s/dev_ops.9s9
-rw-r--r--usr/src/man/man9s/devmap_callback_ctl.9s20
-rw-r--r--usr/src/man/man9s/fmodsw.9s4
-rw-r--r--usr/src/man/man9s/gld_mac_info.9s11
-rw-r--r--usr/src/man/man9s/gld_stats.9s9
-rw-r--r--usr/src/man/man9s/hook_nic_event.9s4
-rw-r--r--usr/src/man/man9s/hook_pkt_event.9s5
-rw-r--r--usr/src/man/man9s/hook_t.9s4
-rw-r--r--usr/src/man/man9s/kstat.9s2
-rw-r--r--usr/src/man/man9s/kstat_intr.9s2
-rw-r--r--usr/src/man/man9s/kstat_io.9s13
-rw-r--r--usr/src/man/man9s/kstat_named.9s3
-rw-r--r--usr/src/man/man9s/linkblk.9s5
-rw-r--r--usr/src/man/man9s/mac_callbacks.9s10
-rw-r--r--usr/src/man/man9s/modldrv.9s4
-rw-r--r--usr/src/man/man9s/modlinkage.9s8
-rw-r--r--usr/src/man/man9s/modlmisc.9s3
-rw-r--r--usr/src/man/man9s/modlstrmod.9s2
-rw-r--r--usr/src/man/man9s/module_info.9s3
-rw-r--r--usr/src/man/man9s/msgb.9s2
-rw-r--r--usr/src/man/man9s/net_inject_t.9s6
-rw-r--r--usr/src/man/man9s/net_instance_t.9s5
-rw-r--r--usr/src/man/man9s/qband.9s5
-rw-r--r--usr/src/man/man9s/queue.9s28
-rw-r--r--usr/src/man/man9s/scsi_arq_status.9s6
-rw-r--r--usr/src/man/man9s/scsi_asc_key_strings.9s2
-rw-r--r--usr/src/man/man9s/scsi_device.9s9
-rw-r--r--usr/src/man/man9s/scsi_extended_sense.9s2
-rw-r--r--usr/src/man/man9s/scsi_hba_tran.9s33
-rw-r--r--usr/src/man/man9s/scsi_inquiry.9s5
-rw-r--r--usr/src/man/man9s/scsi_pkt.9s10
-rw-r--r--usr/src/man/man9s/scsi_status.9s6
-rw-r--r--usr/src/man/man9s/streamtab.9s2
-rw-r--r--usr/src/man/man9s/stroptions.9s3
-rw-r--r--usr/src/man/man9s/tuple.9s24
-rw-r--r--usr/src/man/man9s/uio.9s12
-rw-r--r--usr/src/man/man9s/usb_bulk_req.9s20
-rw-r--r--usr/src/man/man9s/usb_callback_flags.9s23
-rw-r--r--usr/src/man/man9s/usb_cfg_descr.9s20
-rw-r--r--usr/src/man/man9s/usb_client_dev_data.9s17
-rw-r--r--usr/src/man/man9s/usb_completion_reason.9s16
-rw-r--r--usr/src/man/man9s/usb_ctrl_req.9s19
-rw-r--r--usr/src/man/man9s/usb_dev_descr.9s20
-rw-r--r--usr/src/man/man9s/usb_dev_qlf_descr.9s20
-rw-r--r--usr/src/man/man9s/usb_ep_descr.9s20
-rw-r--r--usr/src/man/man9s/usb_if_descr.9s20
-rw-r--r--usr/src/man/man9s/usb_intr_req.9s19
-rw-r--r--usr/src/man/man9s/usb_isoc_req.9s24
-rw-r--r--usr/src/man/man9s/usb_other_speed_cfg_descr.9s16
-rw-r--r--usr/src/man/man9s/usb_request_attributes.9s20
-rw-r--r--usr/src/man/man9s/usb_string_descr.9s12
-rw-r--r--usr/src/man/man9s/usba_hcdi_ops.9s4
-rw-r--r--usr/src/pkg/README.pkg8
-rw-r--r--usr/src/pkg/manifests/SUNWcs.man1m.inc296
-rw-r--r--usr/src/pkg/manifests/SUNWcs.man4.inc119
-rw-r--r--usr/src/pkg/manifests/SUNWcs.man4d.inc17
-rw-r--r--usr/src/pkg/manifests/SUNWcs.man4fs.inc14
-rw-r--r--usr/src/pkg/manifests/SUNWcs.man5.inc148
-rw-r--r--usr/src/pkg/manifests/SUNWcs.man7.inc67
-rw-r--r--usr/src/pkg/manifests/SUNWcs.man7d.inc17
-rw-r--r--usr/src/pkg/manifests/SUNWcs.man7fs.inc14
-rw-r--r--usr/src/pkg/manifests/SUNWcs.man8.inc296
-rw-r--r--usr/src/pkg/manifests/SUNWcs.p5m14
-rw-r--r--usr/src/pkg/manifests/SUNWcsd.p5m4
-rw-r--r--usr/src/pkg/manifests/developer-acpi.p5m6
-rw-r--r--usr/src/pkg/manifests/developer-driver-ftsafe.p5m6
-rw-r--r--usr/src/pkg/manifests/developer-dtrace.p5m10
-rw-r--r--usr/src/pkg/manifests/developer-linker.p5m4
-rw-r--r--usr/src/pkg/manifests/diagnostic-cpu-counters.p5m4
-rw-r--r--usr/src/pkg/manifests/diagnostic-diskinfo.p5m4
-rw-r--r--usr/src/pkg/manifests/diagnostic-latencytop.p5m4
-rw-r--r--usr/src/pkg/manifests/diagnostic-powertop.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-audio-audio810.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-audio-audiocmi.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-audio-audiocmihd.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-audio-audioemu10k.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-audio-audiohd.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-audio-audioixp.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-audio-audiols.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-audio-audiop16x.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-audio-audiosolo.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-audio-audiovia823x.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-audio.p5m22
-rw-r--r--usr/src/pkg/manifests/driver-cpu-amd-zen.p5m6
-rw-r--r--usr/src/pkg/manifests/driver-cpu-mc.p5m6
-rw-r--r--usr/src/pkg/manifests/driver-cpu-sensor.p5m10
-rw-r--r--usr/src/pkg/manifests/driver-crypto-dca.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-developer-amd-zen.p5m6
-rw-r--r--usr/src/pkg/manifests/driver-firewire.p5m10
-rw-r--r--usr/src/pkg/manifests/driver-graphics-av1394.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-graphics-dcam1394-devfsadm-dcam1394.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-graphics-usbvc.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-i86pc-platform.p5m10
-rw-r--r--usr/src/pkg/manifests/driver-ipmi.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-misc-ccid.p5m8
-rw-r--r--usr/src/pkg/manifests/driver-misc-virtio.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-network-afe.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-network-amd8111s.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-network-arn.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-network-atge.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-network-ath.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-network-atu.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-network-bfe.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-network-bge.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-network-bnxe.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-network-chxge.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-network-dmfe.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-network-e1000g.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-network-elxl.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-network-ena.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-network-eri.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-network-fcip.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-network-fcoe.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-network-fcoei.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-network-fcoet.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-network-fcp.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-network-fp.p5m6
-rw-r--r--usr/src/pkg/manifests/driver-network-hermon.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-network-hme.p5m6
-rw-r--r--usr/src/pkg/manifests/driver-network-hxge.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-network-i40e.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-network-ib.p5m16
-rw-r--r--usr/src/pkg/manifests/driver-network-ibdma.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-network-ibp.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-network-igb.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-network-iprb.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-network-ipw.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-network-iwh.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-network-iwi.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-network-iwn.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-network-ixgbe.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-network-mlxcx.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-network-mxfe.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-network-myri10ge.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-network-ntxn.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-network-nxge.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-network-pcn.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-network-platform.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-network-qede.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-network-qlc.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-network-ral.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-network-rge.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-network-rtls.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-network-rtw.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-network-rum.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-network-rwd.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-network-rwn.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-network-sdp.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-network-sfe.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-network-sfxge.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-network-socal.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-network-srpt.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-network-uath.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-network-ural.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-network-urtw.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-network-vioif.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-network-vr.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-network-wpi.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-network-xge.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-network-yge.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-network-zyd.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-pcmcia.p5m6
-rw-r--r--usr/src/pkg/manifests/driver-serial-usbftdi.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-serial-usbsacm.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-serial-usbsksp.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-serial-usbsprl.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-storage-aac.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-storage-ahci.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-storage-amr.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-storage-arcmsr.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-storage-ata.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-storage-bcm_sata.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-storage-blkdev.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-storage-cpqary3.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-storage-mega_sas.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-storage-mpt_sas.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-storage-mr_sas.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-storage-nv_sata.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-storage-nvme.p5m6
-rw-r--r--usr/src/pkg/manifests/driver-storage-scsa1394.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-storage-sdcard.p5m6
-rw-r--r--usr/src/pkg/manifests/driver-storage-ses.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-storage-sf.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-storage-si3124.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-storage-skd.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-storage-ssd.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-storage-vioblk.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-usb-ugen.p5m4
-rw-r--r--usr/src/pkg/manifests/driver-usb.p5m36
-rw-r--r--usr/src/pkg/manifests/install-beadm.p5m4
-rw-r--r--usr/src/pkg/manifests/library-libtecla.p5m6
-rw-r--r--usr/src/pkg/manifests/library-security-tcp-wrapper.p5m18
-rw-r--r--usr/src/pkg/manifests/naming-ldap.p5m8
-rw-r--r--usr/src/pkg/manifests/network-ftp.p5m6
-rw-r--r--usr/src/pkg/manifests/network-ipd.p5m4
-rw-r--r--usr/src/pkg/manifests/network-ipfilter.p5m40
-rw-r--r--usr/src/pkg/manifests/network-iscsi-initiator.p5m8
-rw-r--r--usr/src/pkg/manifests/network-iscsi-iser.p5m4
-rw-r--r--usr/src/pkg/manifests/network-iscsi-target.p5m4
-rw-r--r--usr/src/pkg/manifests/package-svr4.p5m36
-rw-r--r--usr/src/pkg/manifests/print-lp-print-client-commands.p5m12
-rw-r--r--usr/src/pkg/manifests/print-lp-print-manager-legacy.p5m6
-rw-r--r--usr/src/pkg/manifests/print-lp.p5m30
-rw-r--r--usr/src/pkg/manifests/security-bart.p5m10
-rw-r--r--usr/src/pkg/manifests/service-fault-management.p5m10
-rw-r--r--usr/src/pkg/manifests/service-file-system-nfs.p5m18
-rw-r--r--usr/src/pkg/manifests/service-file-system-smb.p5m16
-rw-r--r--usr/src/pkg/manifests/service-hal.p5m24
-rw-r--r--usr/src/pkg/manifests/service-network-dns-mdns.p5m6
-rw-r--r--usr/src/pkg/manifests/service-network-legacy.p5m12
-rw-r--r--usr/src/pkg/manifests/service-network-network-clients.p5m12
-rw-r--r--usr/src/pkg/manifests/service-network-network-servers.p5m52
-rw-r--r--usr/src/pkg/manifests/service-network-nis.p5m34
-rw-r--r--usr/src/pkg/manifests/service-network-slp.p5m14
-rw-r--r--usr/src/pkg/manifests/service-network-smtp-sendmail.p5m34
-rw-r--r--usr/src/pkg/manifests/service-network-telnet.p5m6
-rw-r--r--usr/src/pkg/manifests/service-network-tftp.p5m6
-rw-r--r--usr/src/pkg/manifests/service-network-uucp.p5m20
-rw-r--r--usr/src/pkg/manifests/service-network-wpa.p5m4
-rw-r--r--usr/src/pkg/manifests/service-picl.p5m6
-rw-r--r--usr/src/pkg/manifests/service-resource-cap.p5m6
-rw-r--r--usr/src/pkg/manifests/service-resource-pools-poold.p5m4
-rw-r--r--usr/src/pkg/manifests/service-resource-pools.p5m10
-rw-r--r--usr/src/pkg/manifests/service-security-gss.p5m10
-rw-r--r--usr/src/pkg/manifests/service-security-kerberos-5.p5m10
-rw-r--r--usr/src/pkg/manifests/service-storage-isns.p5m6
-rw-r--r--usr/src/pkg/manifests/service-storage-media-volume-manager.p5m6
-rw-r--r--usr/src/pkg/manifests/service-storage-ndmp.p5m12
-rw-r--r--usr/src/pkg/manifests/service-storage-removable-media.p5m4
-rw-r--r--usr/src/pkg/manifests/service-storage-virus-scan.p5m6
-rw-r--r--usr/src/pkg/manifests/storage-mpathadm.p5m4
-rw-r--r--usr/src/pkg/manifests/storage-stmf.p5m6
-rw-r--r--usr/src/pkg/manifests/system-accounting-legacy.p5m76
-rw-r--r--usr/src/pkg/manifests/system-bhyve.p5m12
-rw-r--r--usr/src/pkg/manifests/system-boot-grub.p5m4
-rw-r--r--usr/src/pkg/manifests/system-boot-loader.p5m30
-rw-r--r--usr/src/pkg/manifests/system-boot-network.p5m20
-rw-r--r--usr/src/pkg/manifests/system-data-keyboard-keytables.p5m4
-rw-r--r--usr/src/pkg/manifests/system-domain-configuration-sparc-enterprise.p5m6
-rw-r--r--usr/src/pkg/manifests/system-domain-service-processor-protocol-sparc-enterprise.p5m12
-rw-r--r--usr/src/pkg/manifests/system-embedded-fcode-interpreter.p5m4
-rw-r--r--usr/src/pkg/manifests/system-extended-system-utilities.p5m22
-rw-r--r--usr/src/pkg/manifests/system-file-system-autofs.p5m10
-rw-r--r--usr/src/pkg/manifests/system-file-system-nfs.p5m20
-rw-r--r--usr/src/pkg/manifests/system-file-system-smb.p5m18
-rw-r--r--usr/src/pkg/manifests/system-file-system-udfs.p5m16
-rw-r--r--usr/src/pkg/manifests/system-file-system-zfs.p5m16
-rw-r--r--usr/src/pkg/manifests/system-flash-fwflash.p5m4
-rw-r--r--usr/src/pkg/manifests/system-fru-id-platform.p5m4
-rw-r--r--usr/src/pkg/manifests/system-fru-id.p5m4
-rw-r--r--usr/src/pkg/manifests/system-header-header-audio.p5m4
-rw-r--r--usr/src/pkg/manifests/system-header.p5m44
-rw-r--r--usr/src/pkg/manifests/system-kernel-dtrace-providers.p5m16
-rw-r--r--usr/src/pkg/manifests/system-kernel-dynamic-reconfiguration-sun-fire-880.p5m4
-rw-r--r--usr/src/pkg/manifests/system-kernel-platform.p5m56
-rw-r--r--usr/src/pkg/manifests/system-kernel-power.p5m14
-rw-r--r--usr/src/pkg/manifests/system-kernel-suspend-resume.p5m4
-rw-r--r--usr/src/pkg/manifests/system-kernel.man1m.inc16
-rw-r--r--usr/src/pkg/manifests/system-kernel.man4.inc17
-rw-r--r--usr/src/pkg/manifests/system-kernel.man4d.inc59
-rw-r--r--usr/src/pkg/manifests/system-kernel.man4fs.inc31
-rw-r--r--usr/src/pkg/manifests/system-kernel.man4m.inc32
-rw-r--r--usr/src/pkg/manifests/system-kernel.man4p.inc45
-rw-r--r--usr/src/pkg/manifests/system-kernel.man5.inc23
-rw-r--r--usr/src/pkg/manifests/system-kernel.man7.inc10
-rw-r--r--usr/src/pkg/manifests/system-kernel.man7d.inc59
-rw-r--r--usr/src/pkg/manifests/system-kernel.man7fs.inc31
-rw-r--r--usr/src/pkg/manifests/system-kernel.man7m.inc32
-rw-r--r--usr/src/pkg/manifests/system-kernel.man7p.inc45
-rw-r--r--usr/src/pkg/manifests/system-kernel.man8.inc16
-rw-r--r--usr/src/pkg/manifests/system-kernel.p5m30
-rw-r--r--usr/src/pkg/manifests/system-ksensor.p5m4
-rw-r--r--usr/src/pkg/manifests/system-ldoms.p5m8
-rw-r--r--usr/src/pkg/manifests/system-library-platform.p5m6
-rw-r--r--usr/src/pkg/manifests/system-library-policykit.p5m4
-rw-r--r--usr/src/pkg/manifests/system-library-security-gss-spnego.p5m4
-rw-r--r--usr/src/pkg/manifests/system-library-security-gss.p5m6
-rw-r--r--usr/src/pkg/manifests/system-library-security-libsasl.p5m4
-rw-r--r--usr/src/pkg/manifests/system-library-storage-fibre-channel-hbaapi.p5m4
-rw-r--r--usr/src/pkg/manifests/system-library-storage-libmpapi.p5m4
-rw-r--r--usr/src/pkg/manifests/system-library.man4.inc15
-rw-r--r--usr/src/pkg/manifests/system-library.man4p.inc14
-rw-r--r--usr/src/pkg/manifests/system-library.man5.inc60
-rw-r--r--usr/src/pkg/manifests/system-library.man7.inc71
-rw-r--r--usr/src/pkg/manifests/system-library.man7p.inc14
-rw-r--r--usr/src/pkg/manifests/system-library.p5m6
-rw-r--r--usr/src/pkg/manifests/system-man.p5m18
-rw-r--r--usr/src/pkg/manifests/system-management-pcitool.p5m4
-rw-r--r--usr/src/pkg/manifests/system-monitoring-arcstat.p5m4
-rw-r--r--usr/src/pkg/manifests/system-network-http-cache-accelerator.p5m16
-rw-r--r--usr/src/pkg/manifests/system-network-ipqos-ipqos-config.p5m16
-rw-r--r--usr/src/pkg/manifests/system-network-ipqos.p5m4
-rw-r--r--usr/src/pkg/manifests/system-network-mailwrapper.p5m8
-rw-r--r--usr/src/pkg/manifests/system-network-nis.p5m38
-rw-r--r--usr/src/pkg/manifests/system-network-overlay.p5m12
-rw-r--r--usr/src/pkg/manifests/system-network-ppp-pppdump.p5m4
-rw-r--r--usr/src/pkg/manifests/system-network-ppp-tunnel.p5m8
-rw-r--r--usr/src/pkg/manifests/system-network-ppp.p5m12
-rw-r--r--usr/src/pkg/manifests/system-network-routing.p5m20
-rw-r--r--usr/src/pkg/manifests/system-network-spdadm.p5m4
-rw-r--r--usr/src/pkg/manifests/system-network-udapl.p5m8
-rw-r--r--usr/src/pkg/manifests/system-network-wificonfig.p5m4
-rw-r--r--usr/src/pkg/manifests/system-network.p5m8
-rw-r--r--usr/src/pkg/manifests/system-scheduler-fss.p5m4
-rw-r--r--usr/src/pkg/manifests/system-security-kerberos-5.p5m42
-rw-r--r--usr/src/pkg/manifests/system-storage-fibre-channel-port-utility.p5m6
-rw-r--r--usr/src/pkg/manifests/system-storage-luxadm.p5m4
-rw-r--r--usr/src/pkg/manifests/system-storage-sasinfo.p5m8
-rw-r--r--usr/src/pkg/manifests/system-trusted-global-zone.p5m2
-rw-r--r--usr/src/pkg/manifests/system-trusted.p5m26
-rw-r--r--usr/src/pkg/manifests/system-zones.p5m20
-rw-r--r--usr/src/pkg/manifests/text-doctools.p5m16
-rw-r--r--usr/src/prototypes/prototype.man16
-rw-r--r--usr/src/prototypes/prototype.man3x4
-rw-r--r--usr/src/prototypes/prototype.man4d49
-rw-r--r--usr/src/prototypes/prototype.man7d49
-rw-r--r--usr/src/psm/stand/boot/sparc/common/boot_plat.c2
-rw-r--r--usr/src/psm/stand/boot/sparc/common/bootflags.c2
-rw-r--r--usr/src/test/crypto-tests/doc/README2
-rw-r--r--usr/src/test/libmlrpc-tests/doc/README2
-rw-r--r--usr/src/test/os-tests/doc/README2
-rw-r--r--usr/src/test/test-runner/man/run.14
-rw-r--r--usr/src/test/zfs-tests/doc/README2
-rw-r--r--usr/src/test/zfs-tests/tests/functional/cli_root/zfs_copies/zfs_copies_002_pos.ksh4
-rw-r--r--usr/src/test/zfs-tests/tests/functional/utils_test/utils_test_001_pos.ksh6
-rw-r--r--usr/src/test/zfs-tests/tests/functional/utils_test/utils_test_002_pos.ksh8
-rw-r--r--usr/src/test/zfs-tests/tests/functional/utils_test/utils_test_003_pos.ksh6
-rw-r--r--usr/src/test/zfs-tests/tests/functional/utils_test/utils_test_004_pos.ksh6
-rw-r--r--usr/src/test/zfs-tests/tests/functional/utils_test/utils_test_005_pos.ksh8
-rw-r--r--usr/src/test/zfs-tests/tests/functional/utils_test/utils_test_006_pos.ksh8
-rw-r--r--usr/src/test/zfs-tests/tests/functional/utils_test/utils_test_007_pos.ksh8
-rw-r--r--usr/src/test/zfs-tests/tests/functional/utils_test/utils_test_008_pos.ksh8
-rw-r--r--usr/src/test/zfs-tests/tests/functional/utils_test/utils_test_009_pos.ksh8
-rw-r--r--usr/src/test/zfs-tests/tests/functional/xattr/xattr_007_neg.ksh2
-rw-r--r--usr/src/test/zfs-tests/tests/functional/zvol/zvol_ENOSPC/setup.ksh2
-rw-r--r--usr/src/test/zfs-tests/tests/functional/zvol/zvol_misc/zvol_misc_002_pos.ksh2
-rw-r--r--usr/src/test/zfs-tests/tests/longevity/slop_space_test.ksh2
-rw-r--r--usr/src/tools/cscope-fast/display.c2
-rw-r--r--usr/src/tools/cscope-fast/help.c6
-rw-r--r--usr/src/tools/env/illumos.sh2
-rw-r--r--usr/src/tools/ndrgen/ndrgen.1onbld4
-rwxr-xr-xusr/src/tools/quick/make-zfs38
-rw-r--r--usr/src/tools/scripts/its.reg4
-rw-r--r--usr/src/tools/scripts/onu.1onbld10
-rw-r--r--usr/src/tools/scripts/validate_pkg.py10
-rw-r--r--usr/src/tools/scripts/webrev.sh2
-rw-r--r--usr/src/tools/scripts/xref.sh4
-rw-r--r--usr/src/uts/common/Makefile.files4
-rw-r--r--usr/src/uts/common/c2/audit_start.c2
-rw-r--r--usr/src/uts/common/conf/param.c2
-rw-r--r--usr/src/uts/common/contract/process.c4
-rw-r--r--usr/src/uts/common/cpr/cpr_misc.c6
-rw-r--r--usr/src/uts/common/cpr/cpr_mod.c2
-rw-r--r--usr/src/uts/common/crypto/api/kcf_random.c5
-rw-r--r--usr/src/uts/common/crypto/core/kcf_cryptoadm.c2
-rw-r--r--usr/src/uts/common/crypto/core/kcf_prov_tabs.c4
-rw-r--r--usr/src/uts/common/disp/disp.c4
-rw-r--r--usr/src/uts/common/disp/fx_dptbl.c4
-rw-r--r--usr/src/uts/common/disp/rt_dptbl.c2
-rw-r--r--usr/src/uts/common/disp/ts_dptbl.c4
-rw-r--r--usr/src/uts/common/dtrace/dcpc.c2
-rw-r--r--usr/src/uts/common/dtrace/dtrace.c2
-rw-r--r--usr/src/uts/common/fs/mntfs/mntvnops.c6
-rw-r--r--usr/src/uts/common/fs/nfs/nfs4_idmap.c38
-rw-r--r--usr/src/uts/common/fs/nfs/nfs4_srv_attr.c4
-rw-r--r--usr/src/uts/common/fs/nfs/nfs4_stub_vnops.c2
-rw-r--r--usr/src/uts/common/fs/nfs/nfs_auth.c8
-rw-r--r--usr/src/uts/common/fs/nfs/nfs_cmd.c6
-rw-r--r--usr/src/uts/common/fs/nfs/nfs_stats.c2
-rw-r--r--usr/src/uts/common/fs/pcfs/pc_node.c2
-rw-r--r--usr/src/uts/common/fs/pcfs/pc_vfsops.c10
-rw-r--r--usr/src/uts/common/fs/portfs/port.c2
-rw-r--r--usr/src/uts/common/fs/portfs/port_fd.c2
-rw-r--r--usr/src/uts/common/fs/proc/prvnops.c2
-rw-r--r--usr/src/uts/common/fs/sockfs/nl7c.c2
-rw-r--r--usr/src/uts/common/fs/sockfs/nl7clogd.c4
-rw-r--r--usr/src/uts/common/fs/sockfs/sockcommon_sops.c2
-rw-r--r--usr/src/uts/common/fs/sockfs/sockfilter.c2
-rw-r--r--usr/src/uts/common/fs/sockfs/sockfilter_impl.h4
-rw-r--r--usr/src/uts/common/fs/sockfs/sockparams.c2
-rw-r--r--usr/src/uts/common/fs/sockfs/socktpi.c4
-rw-r--r--usr/src/uts/common/fs/ufs/lufs_log.c2
-rw-r--r--usr/src/uts/common/fs/ufs/ufs_alloc.c4
-rw-r--r--usr/src/uts/common/fs/ufs/ufs_inode.c2
-rw-r--r--usr/src/uts/common/fs/ufs/ufs_vfsops.c2
-rw-r--r--usr/src/uts/common/fs/xattr.c2
-rw-r--r--usr/src/uts/common/fs/zfs/dsl_scan.c2
-rw-r--r--usr/src/uts/common/fs/zfs/lua/README.zfs2
-rw-r--r--usr/src/uts/common/fs/zfs/metaslab.c4
-rw-r--r--usr/src/uts/common/fs/zfs/spa_history.c2
-rw-r--r--usr/src/uts/common/fs/zfs/spa_misc.c2
-rw-r--r--usr/src/uts/common/fs/zfs/sys/dmu.h4
-rw-r--r--usr/src/uts/common/fs/zfs/sys/zfs_ioctl.h2
-rw-r--r--usr/src/uts/common/fs/zfs/vdev.c2
-rw-r--r--usr/src/uts/common/fs/zfs/zcp.c4
-rw-r--r--usr/src/uts/common/fs/zfs/zfs_vfsops.c2
-rw-r--r--usr/src/uts/common/fs/zfs/zio.c2
-rw-r--r--usr/src/uts/common/fs/zfs/zvol.c2
-rw-r--r--usr/src/uts/common/inet/ip.h2
-rw-r--r--usr/src/uts/common/inet/ip/ip_if.c4
-rw-r--r--usr/src/uts/common/inet/ip/sadb.c6
-rw-r--r--usr/src/uts/common/inet/ip/spd.c2
-rw-r--r--usr/src/uts/common/inet/ip_ndp.h4
-rw-r--r--usr/src/uts/common/inet/ipd/ipd.c2
-rw-r--r--usr/src/uts/common/inet/iptun.h2
-rw-r--r--usr/src/uts/common/inet/iptun/iptun.c4
-rw-r--r--usr/src/uts/common/inet/sadb.h6
-rw-r--r--usr/src/uts/common/inet/tcp/tcp_bind.c2
-rw-r--r--usr/src/uts/common/inet/tcp/tcp_misc.c2
-rw-r--r--usr/src/uts/common/io/audio/impl/audio_ddi.c2
-rw-r--r--usr/src/uts/common/io/audio/impl/audio_sun.c4
-rw-r--r--usr/src/uts/common/io/bge/bge.conf6
-rw-r--r--usr/src/uts/common/io/bnx/bnx.conf2
-rw-r--r--usr/src/uts/common/io/cmlb.c2
-rw-r--r--usr/src/uts/common/io/devinfo.c2
-rw-r--r--usr/src/uts/common/io/e1000api/e1000_hw.h4
-rw-r--r--usr/src/uts/common/io/ecpp.conf3
-rw-r--r--usr/src/uts/common/io/ena/ena.conf2
-rw-r--r--usr/src/uts/common/io/i40e/i40e.conf2
-rw-r--r--usr/src/uts/common/io/ib/adapters/hermon/hermon_stats.c2
-rw-r--r--usr/src/uts/common/io/ib/adapters/tavor/tavor_stats.c2
-rw-r--r--usr/src/uts/common/io/ib/clients/ibd/ibd.c4
-rw-r--r--usr/src/uts/common/io/ib/ibtl/ibtl_ibnex.c4
-rw-r--r--usr/src/uts/common/io/lofi.c8
-rw-r--r--usr/src/uts/common/io/log.c2
-rw-r--r--usr/src/uts/common/io/mac/mac_flow.c6
-rw-r--r--usr/src/uts/common/io/mac/mac_sched.c12
-rw-r--r--usr/src/uts/common/io/mac/plugins/mac_ether.c2
-rw-r--r--usr/src/uts/common/io/mac/plugins/mac_wifi.c2
-rw-r--r--usr/src/uts/common/io/mlxcx/mlxcx.conf2
-rw-r--r--usr/src/uts/common/io/mlxcx/mlxcx.h2
-rw-r--r--usr/src/uts/common/io/net80211/net80211.c2
-rw-r--r--usr/src/uts/common/io/ntxn/ntxn.conf4
-rw-r--r--usr/src/uts/common/io/nulldriver.c2
-rw-r--r--usr/src/uts/common/io/nvme/nvme.c2
-rw-r--r--usr/src/uts/common/io/overlay/overlay.c8
-rw-r--r--usr/src/uts/common/io/power.c2
-rw-r--r--usr/src/uts/common/io/ptem.c2
-rw-r--r--usr/src/uts/common/io/ramdisk.c10
-rw-r--r--usr/src/uts/common/io/sata/impl/sata.c4
-rw-r--r--usr/src/uts/common/io/scsi/adapters/scsi_vhci/scsi_vhci.c12
-rw-r--r--usr/src/uts/common/io/scsi/impl/scsi_hba.c14
-rw-r--r--usr/src/uts/common/io/scsi/impl/scsi_subr.c4
-rw-r--r--usr/src/uts/common/io/scsi/targets/sd.c12
-rw-r--r--usr/src/uts/common/io/scsi/targets/sgen.c6
-rw-r--r--usr/src/uts/common/io/scsi/targets/sgen.conf6
-rw-r--r--usr/src/uts/common/io/scsi/targets/st.c2
-rw-r--r--usr/src/uts/common/io/sfxge/sfxge_ioc.h2
-rw-r--r--usr/src/uts/common/io/sfxge/sfxge_pci.c2
-rw-r--r--usr/src/uts/common/io/smbios.c2
-rw-r--r--usr/src/uts/common/io/softmac/softmac_main.c2
-rw-r--r--usr/src/uts/common/io/strplumb.c4
-rw-r--r--usr/src/uts/common/io/tem_safe.c2
-rw-r--r--usr/src/uts/common/io/ufm.c2
-rw-r--r--usr/src/uts/common/io/usb/clients/usbecm/usbecm.c2
-rw-r--r--usr/src/uts/common/io/usb/clients/usbser/usbser_keyspan/usbser_keyspan.c2
-rw-r--r--usr/src/uts/common/io/usb/clients/video/usbvc/usbvc.c2
-rw-r--r--usr/src/uts/common/io/usb/hcd/ehci/ehci_util.c2
-rw-r--r--usr/src/uts/common/io/usb/scsa2usb/scsa2usb.conf2
-rw-r--r--usr/src/uts/common/io/zcons.c6
-rw-r--r--usr/src/uts/common/net/if.h2
-rw-r--r--usr/src/uts/common/net/pfpolicy.h4
-rw-r--r--usr/src/uts/common/nfs/auth.h2
-rw-r--r--usr/src/uts/common/nfs/nfs.h2
-rw-r--r--usr/src/uts/common/os/cap_util.c2
-rw-r--r--usr/src/uts/common/os/clock_process.c2
-rw-r--r--usr/src/uts/common/os/ddi.c4
-rw-r--r--usr/src/uts/common/os/ddi_hp_impl.c12
-rw-r--r--usr/src/uts/common/os/ddi_ufm.c2
-rw-r--r--usr/src/uts/common/os/ddifm.c4
-rw-r--r--usr/src/uts/common/os/devid_cache.c6
-rw-r--r--usr/src/uts/common/os/errorq.c2
-rw-r--r--usr/src/uts/common/os/exit.c14
-rw-r--r--usr/src/uts/common/os/fm.c2
-rw-r--r--usr/src/uts/common/os/kmem.c2
-rw-r--r--usr/src/uts/common/os/ksensor.c4
-rw-r--r--usr/src/uts/common/os/logsubr.c4
-rw-r--r--usr/src/uts/common/os/ndifm.c4
-rw-r--r--usr/src/uts/common/os/priv_defs6
-rw-r--r--usr/src/uts/common/os/rctl.c4
-rw-r--r--usr/src/uts/common/os/streamio.c2
-rw-r--r--usr/src/uts/common/os/sunpm.c16
-rw-r--r--usr/src/uts/common/os/timer.c4
-rw-r--r--usr/src/uts/common/rpc/sec_gss/svc_rpcsec_gss.c2
-rw-r--r--usr/src/uts/common/sys/class.h2
-rw-r--r--usr/src/uts/common/sys/csiioctl.h8
-rw-r--r--usr/src/uts/common/sys/dkio.h2
-rw-r--r--usr/src/uts/common/sys/dklabel.h2
-rw-r--r--usr/src/uts/common/sys/dld.h2
-rw-r--r--usr/src/uts/common/sys/dlpi.h2
-rw-r--r--usr/src/uts/common/sys/dls.h2
-rw-r--r--usr/src/uts/common/sys/dtrace.h4
-rw-r--r--usr/src/uts/common/sys/dtrace_impl.h4
-rw-r--r--usr/src/uts/common/sys/dumphdr.h4
-rw-r--r--usr/src/uts/common/sys/epoll.h2
-rw-r--r--usr/src/uts/common/sys/fault.h2
-rw-r--r--usr/src/uts/common/sys/feature_tests.h4
-rw-r--r--usr/src/uts/common/sys/fs/zfs.h2
-rw-r--r--usr/src/uts/common/sys/fsspriocntl.h4
-rw-r--r--usr/src/uts/common/sys/fxpriocntl.h4
-rw-r--r--usr/src/uts/common/sys/iapriocntl.h2
-rw-r--r--usr/src/uts/common/sys/ib/ibnex/ibnex.h2
-rw-r--r--usr/src/uts/common/sys/ib/ibnex/ibnex_devctl.h4
-rw-r--r--usr/src/uts/common/sys/ib/ibtl/impl/ibtl_ibnex.h4
-rw-r--r--usr/src/uts/common/sys/lofi.h2
-rw-r--r--usr/src/uts/common/sys/mac.h4
-rw-r--r--usr/src/uts/common/sys/mac_wifi.h2
-rw-r--r--usr/src/uts/common/sys/mem.h4
-rw-r--r--usr/src/uts/common/sys/mixer.h6
-rw-r--r--usr/src/uts/common/sys/mutex.h2
-rw-r--r--usr/src/uts/common/sys/nvme.h2
-rw-r--r--usr/src/uts/common/sys/priocntl.h4
-rw-r--r--usr/src/uts/common/sys/ramdisk.h6
-rw-r--r--usr/src/uts/common/sys/rtpriocntl.h2
-rw-r--r--usr/src/uts/common/sys/smbios.h2
-rw-r--r--usr/src/uts/common/sys/socketvar.h2
-rw-r--r--usr/src/uts/common/sys/sysmsg_impl.h4
-rw-r--r--usr/src/uts/common/sys/tspriocntl.h2
-rw-r--r--usr/src/uts/common/sys/usb/clients/ugen/usb_ugen.h4
-rw-r--r--usr/src/uts/common/sys/usb/clients/usbser/usbser_keyspan/keyspan_49fw.h4
-rw-r--r--usr/src/uts/common/sys/usb/clients/usbser/usbser_var.h2
-rw-r--r--usr/src/uts/common/sys/user.h2
-rw-r--r--usr/src/uts/common/sys/watchpoint.h2
-rw-r--r--usr/src/uts/common/sys/zone.h4
-rw-r--r--usr/src/uts/common/syscall/auditsys.c2
-rw-r--r--usr/src/uts/common/syscall/corectl.c6
-rw-r--r--usr/src/uts/common/syscall/rctlsys.c2
-rw-r--r--usr/src/uts/common/syscall/stat.c2
-rw-r--r--usr/src/uts/common/vm/page_retire.c2
-rw-r--r--usr/src/uts/common/xen/io/xdf.c4
-rw-r--r--usr/src/uts/i86pc/io/pci/pci_common.c2
-rw-r--r--usr/src/uts/i86pc/io/pci/pci_common.h8
-rw-r--r--usr/src/uts/i86pc/io/pciex/npe.c2
-rw-r--r--usr/src/uts/i86pc/io/pciex/npe_misc.c2
-rw-r--r--usr/src/uts/i86pc/io/rootnex.c2
-rw-r--r--usr/src/uts/i86pc/os/fakebop.c4
-rw-r--r--usr/src/uts/i86pc/os/fastboot.c2
-rw-r--r--usr/src/uts/i86pc/os/machdep.c2
-rw-r--r--usr/src/uts/i86pc/os/mp_startup.c2
-rw-r--r--usr/src/uts/intel/io/amdzen/zen_udf.c2
-rw-r--r--usr/src/uts/intel/io/dktp/disk/cmdk.c2
-rw-r--r--usr/src/uts/intel/io/fibre-channel/impl/fp.conf2
-rw-r--r--usr/src/uts/intel/io/pchtemp/pchtemp.c2
-rw-r--r--usr/src/uts/intel/io/scsi/targets/st.conf10
-rw-r--r--usr/src/uts/intel/io/vmxnet3s/vmxnet3s.conf2
-rw-r--r--usr/src/uts/intel/os/syscall.c4
-rw-r--r--usr/src/uts/intel/sys/regset.h4
-rw-r--r--usr/src/uts/sparc/io/fibre-channel/impl/fp.conf4
-rw-r--r--usr/src/uts/sparc/os/syscall.c4
-rw-r--r--usr/src/uts/sparc/sys/regset.h4
-rw-r--r--usr/src/uts/sparc/v7/sys/privregs.h2
-rw-r--r--usr/src/uts/sun/io/scsi/targets/st.conf10
-rw-r--r--usr/src/uts/sun4/os/machdep.c2
-rw-r--r--usr/src/uts/sun4u/io/todds1287.c2
-rw-r--r--usr/src/uts/sun4u/io/todopl.c8
-rw-r--r--usr/src/uts/sun4u/sys/mem_cache.h4
-rw-r--r--usr/src/uts/sun4v/io/cnex.c2
-rw-r--r--usr/src/uts/sun4v/io/dr_cpu.c2
-rw-r--r--usr/src/uts/sun4v/io/drctl.c2
-rw-r--r--usr/src/uts/sun4v/io/vcc.c2
-rw-r--r--usr/src/uts/sun4v/io/vdc.c42
-rw-r--r--usr/src/uts/sun4v/io/vds.c12
-rw-r--r--usr/src/uts/sun4v/io/vnet.c2
-rw-r--r--usr/src/uts/sun4v/promif/promif_asr.c4
-rw-r--r--usr/src/uts/sun4v/promif/promif_key.c6
-rw-r--r--usr/src/uts/sun4v/sys/vdc.h4
-rw-r--r--usr/src/uts/sun4v/sys/vdsk_common.h2
6901 files changed, 399356 insertions, 383911 deletions
diff --git a/usr/src/Makefile b/usr/src/Makefile
index 13a3747cc4..7f60c24fe8 100644
--- a/usr/src/Makefile
+++ b/usr/src/Makefile
@@ -67,7 +67,7 @@ PARALLEL_HEADERS = sysheaders userheaders libheaders ucbheaders cmdheaders
#
PARALLEL_DIRS = data uts lib man
-# The check target also causes smf(5) service manifests to be validated.
+# The check target also causes smf(7) service manifests to be validated.
CHKMFSTSUBDIRS= cmd
# And man page formats
diff --git a/usr/src/cmd/Adm/sun/README b/usr/src/cmd/Adm/sun/README
index f333944663..2c89114b70 100644
--- a/usr/src/cmd/Adm/sun/README
+++ b/usr/src/cmd/Adm/sun/README
@@ -26,8 +26,6 @@ Elimination of /usr/kvm
Copyright (c) 1995-2000 by Sun Microsystems, Inc.
All rights reserved.
-#ident "%Z%%M% %I% %E% SMI"
-
As of Solaris 2.5, the /usr/kvm directory is no longer needed by the
operating environment. The mount point continues to be provided for
backward compatibility although all of the contents have been removed.
@@ -49,7 +47,7 @@ Implementation Interface(s)
/usr/kvm/crash /usr/bin/mdb
Note: Solaris Modular Debugger Guide describes how to
- transition from crash(1M) to mdb(1).
+ transition from crash(8) to mdb(1).
/usr/kvm/eeprom /usr/sbin/eeprom
diff --git a/usr/src/cmd/Adm/sun/ftpusers b/usr/src/cmd/Adm/sun/ftpusers
index d68723a4bb..30f67d7a3c 100644
--- a/usr/src/cmd/Adm/sun/ftpusers
+++ b/usr/src/cmd/Adm/sun/ftpusers
@@ -1,5 +1,5 @@
#
-# List of users denied access to the FTP server, see ftpusers(4).
+# List of users denied access to the FTP server, see ftpusers(5).
#
root
daemon
diff --git a/usr/src/cmd/Adm/ttysrch b/usr/src/cmd/Adm/ttysrch
index b4e2195503..daf8753ff3 100644
--- a/usr/src/cmd/Adm/ttysrch
+++ b/usr/src/cmd/Adm/ttysrch
@@ -42,7 +42,7 @@
# soon as it is found. This is especially useful for cloned
# devices, which generally will not match inode numbers.
#
-# For additional information see ttysrch(4).
+# For additional information see ttysrch(5).
#
# EXAMPLE:
#
diff --git a/usr/src/cmd/Adm/zones-index b/usr/src/cmd/Adm/zones-index
index 91fe7a9421..a559897bb9 100644
--- a/usr/src/cmd/Adm/zones-index
+++ b/usr/src/cmd/Adm/zones-index
@@ -1,4 +1,3 @@
-# ident "%Z%%M% %I% %E% SMI"
# Copyright 2005 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
#
@@ -23,7 +22,7 @@
# CDDL HEADER END
#
#
-# DO NOT EDIT: this file is automatically generated by zoneadm(1M)
-# and zonecfg(1M). Any manual changes will be lost.
+# DO NOT EDIT: this file is automatically generated by zoneadm(8)
+# and zonecfg(8). Any manual changes will be lost.
#
global:installed:/
diff --git a/usr/src/cmd/Makefile.cmd b/usr/src/cmd/Makefile.cmd
index 6ed70fb94b..8dd94c7aaa 100644
--- a/usr/src/cmd/Makefile.cmd
+++ b/usr/src/cmd/Makefile.cmd
@@ -198,7 +198,7 @@ ROOTADMIN_SRC_FILE= $(ADMINFILE:%=$(ROOTADMIN_SRC_DIR)/%)
$(ROOTADMIN_SRC_FILE) := FILEMODE = 0444
#
-# Directories for smf(5) service manifests and profiles.
+# Directories for smf(7) service manifests and profiles.
#
ROOTSVC= $(ROOT)/lib/svc
ROOTETCSVC= $(ROOT)/etc/svc
diff --git a/usr/src/cmd/acct/wtmpfix.c b/usr/src/cmd/acct/wtmpfix.c
index d5a7ac3a95..cd8f5434f2 100644
--- a/usr/src/cmd/acct/wtmpfix.c
+++ b/usr/src/cmd/acct/wtmpfix.c
@@ -27,8 +27,6 @@
* Use is subject to license terms.
*/
-#pragma ident "%Z%%M% %I% %E% SMI"
-
/*
* wtmpfix - adjust wtmpx file and remove date changes.
* wtmpfix <wtmpx1 >wtmpx2
@@ -53,9 +51,9 @@
#define UTRSZ (sizeof (struct futmpx)) /* file record size */
/*
- * The acctsh(1M) shell scripts startup(1M) and shutacct(1M) as well as the
+ * The acctsh(8) shell scripts startup(8) and shutacct(8) as well as the
* runacct script each pass their own specific reason strings in the first
- * argument to acctwtmp(1M), to be propagated into ut_line fields. Additional
+ * argument to acctwtmp(8), to be propagated into ut_line fields. Additional
* reasons (RUNLVL_MSG, ..., DOWN_MSG), used by compiled code, are defined in
* <utmp.h> as preprocessor constants.
* For simplicity we predefine similar constants for the scripted strings
@@ -326,7 +324,7 @@ invalid(char *name)
* next. Aside from the temp file position, we remember whether we were
* in multi-user mode or not. Absent evidence to the contrary, we begin
* processing assuming multi-user mode, because runacct's wtmpx rotation
- * normally gives us a file recently initialized by utmp2wtmp(1M) with no
+ * normally gives us a file recently initialized by utmp2wtmp(8) with no
* older RUN_LVL records surviving.
*/
diff --git a/usr/src/cmd/acctadm/aconf.c b/usr/src/cmd/acctadm/aconf.c
index cfb4a2e54a..1fdb081e0c 100644
--- a/usr/src/cmd/acctadm/aconf.c
+++ b/usr/src/cmd/acctadm/aconf.c
@@ -136,7 +136,7 @@ aconf_setup(const char *fmri)
/*
* Net/Flow accounting is not available in non-global zones and
* the service instance should therefore never be 'enabled' in
- * non-global zones. This is enforced by acctadm(1M), but there is
+ * non-global zones. This is enforced by acctadm(8), but there is
* nothing that prevents someone from calling svcadm enable directly,
* so we handle that case here by disabling the instance.
*/
diff --git a/usr/src/cmd/acctadm/extended-accounting.xml b/usr/src/cmd/acctadm/extended-accounting.xml
index 07cb9af9c1..2b98c64e60 100644
--- a/usr/src/cmd/acctadm/extended-accounting.xml
+++ b/usr/src/cmd/acctadm/extended-accounting.xml
@@ -28,7 +28,7 @@
operating system upgrade. Make customizations in a different
file.
- NOTE: Do NOT edit the 'config' properties directly, use acctadm(1M)
+ NOTE: Do NOT edit the 'config' properties directly, use acctadm(8)
instead.
Service manifest for extended accounting.
@@ -84,17 +84,17 @@
<propval name='untracked' type='astring'
value='extended' />
</property_group>
-
+
<template>
<common_name>
<loctext xml:lang='C'>
configure flow extended accounting
</loctext>
</common_name>
-
+
<documentation>
<manpage
- title='acctadm' section='1M'
+ title='acctadm' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
@@ -121,17 +121,17 @@
<propval name='untracked' type='astring'
value='extended,host' />
</property_group>
-
+
<template>
<common_name>
<loctext xml:lang='C'>
configure process extended accounting
</loctext>
</common_name>
-
+
<documentation>
<manpage
- title='acctadm' section='1M'
+ title='acctadm' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
@@ -158,17 +158,17 @@
<propval name='untracked' type='astring'
value='extended' />
</property_group>
-
+
<template>
<common_name>
<loctext xml:lang='C'>
configure task extended accounting
</loctext>
</common_name>
-
+
<documentation>
<manpage
- title='acctadm' section='1M'
+ title='acctadm' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
@@ -195,22 +195,22 @@
<propval name='untracked' type='astring'
value='extended' />
</property_group>
-
+
<template>
<common_name>
<loctext xml:lang='C'>
configure net extended accounting
</loctext>
</common_name>
-
+
<documentation>
<manpage
- title='acctadm' section='1M'
+ title='acctadm' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
</instance>
-
+
<stability value='Unstable' />
</service>
diff --git a/usr/src/cmd/acctadm/main.c b/usr/src/cmd/acctadm/main.c
index 83cb63b314..0a554b4896 100644
--- a/usr/src/cmd/acctadm/main.c
+++ b/usr/src/cmd/acctadm/main.c
@@ -266,7 +266,7 @@ main(int argc, char *argv[])
die(gettext("failed to open dladm handle\n"));
/*
- * smf(5) start method. The FMRI to operate on is retrieved from the
+ * smf(7) start method. The FMRI to operate on is retrieved from the
* SMF_FMRI environment variable that the restarter provides.
*/
if (sflg) {
@@ -276,7 +276,7 @@ main(int argc, char *argv[])
return (ret);
}
- die(gettext("-s option should only be invoked by smf(5)\n"));
+ die(gettext("-s option should only be invoked by smf(7)\n"));
}
assert(type == AC_PROC || type == AC_TASK || type == AC_FLOW ||
@@ -292,7 +292,7 @@ main(int argc, char *argv[])
/*
* Since the sys_acct the privilege allows use of acctctl() regardless
- * of the accounting type, we check the smf(5) authorizations granted
+ * of the accounting type, we check the smf(7) authorizations granted
* to the user to determine whether the user is allowed to change the
* configuration for this particular accounting type.
*/
diff --git a/usr/src/cmd/acpihpd/acpihpd.xml b/usr/src/cmd/acpihpd/acpihpd.xml
index e8e799de08..e16f1f5c72 100644
--- a/usr/src/cmd/acpihpd/acpihpd.xml
+++ b/usr/src/cmd/acpihpd/acpihpd.xml
@@ -83,7 +83,7 @@
</loctext>
</common_name>
<documentation>
- <manpage title='acpihpd' section='1M'
+ <manpage title='acpihpd' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/allocate/allocate.c b/usr/src/cmd/allocate/allocate.c
index 36aab83ba1..3730a11ed4 100644
--- a/usr/src/cmd/allocate/allocate.c
+++ b/usr/src/cmd/allocate/allocate.c
@@ -24,8 +24,6 @@
* Use is subject to license terms.
*/
-#pragma ident "%Z%%M% %I% %E% SMI"
-
#include <errno.h>
#include <locale.h>
#include <pwd.h>
@@ -194,7 +192,7 @@ print_error(int error, char *name)
"Operation inconsistent with device's label range.");
break;
case LOGINDEVPERMERR:
- msg = gettext("Device controlled by logindevperm(4)");
+ msg = gettext("Device controlled by logindevperm(5)");
break;
case NODAERR:
msg = gettext("No entry for specified device.");
diff --git a/usr/src/cmd/allocate/allocate.xml b/usr/src/cmd/allocate/allocate.xml
index 9de9a1ddb8..9e1ca6d97f 100644
--- a/usr/src/cmd/allocate/allocate.xml
+++ b/usr/src/cmd/allocate/allocate.xml
@@ -88,12 +88,12 @@
<manpage title='allocate' section='1' manpath='/usr/share/man' />
<manpage title='deallocate' section='1' manpath='/usr/share/man' />
<manpage title='list_devices' section='1' manpath='/usr/share/man' />
- <manpage title='device_allocate' section='1M' manpath='/usr/share/man' />
- <manpage title='mkdevalloc' section='1M' manpath='/usr/share/man' />
- <manpage title='mkdevmaps' section='1M' manpath='/usr/share/man' />
- <manpage title='dminfo' section='1M' manpath='/usr/share/man' />
- <manpage title='device_maps' section='4' manpath='/usr/share/man' />
- <manpage title='device_allocate' section='4' manpath='/usr/share/man' />
+ <manpage title='device_allocate' section='8' manpath='/usr/share/man' />
+ <manpage title='mkdevalloc' section='8' manpath='/usr/share/man' />
+ <manpage title='mkdevmaps' section='8' manpath='/usr/share/man' />
+ <manpage title='dminfo' section='8' manpath='/usr/share/man' />
+ <manpage title='device_maps' section='5' manpath='/usr/share/man' />
+ <manpage title='device_allocate' section='5' manpath='/usr/share/man' />
</documentation>
</template>
</service>
diff --git a/usr/src/cmd/allocate/disk_clean.sh b/usr/src/cmd/allocate/disk_clean.sh
index a523b66750..9e690af34f 100644
--- a/usr/src/cmd/allocate/disk_clean.sh
+++ b/usr/src/cmd/allocate/disk_clean.sh
@@ -182,13 +182,13 @@ get_reply() {
#
find_fs()
{
- # The list of files in device_maps(4) is in an unspecified order.
- # To speed up the fstyp(1M) scanning below in most cases, perform
+ # The list of files in device_maps(5) is in an unspecified order.
+ # To speed up the fstyp(8) scanning below in most cases, perform
# the search for filesystems as follows:
# 1) Select only block device files of the form "/dev/dsk/*".
# 2) Sort the list of files in an order more likely to yield
- # matches: first the fdisk(1M) partitions ("/dev/dsk/cNtNdNpN")
- # then the format(1M) slices ("/dev/dsk/cNtNdNsN"), in ascending
+ # matches: first the fdisk(8) partitions ("/dev/dsk/cNtNdNpN")
+ # then the format(8) slices ("/dev/dsk/cNtNdNsN"), in ascending
# numeric order within each group.
DEVall="`echo $FILES | \
/usr/bin/tr ' ' '\n' | \
diff --git a/usr/src/cmd/ast/Makefile.ast b/usr/src/cmd/ast/Makefile.ast
index d450fffbf7..00b5893be0 100644
--- a/usr/src/cmd/ast/Makefile.ast
+++ b/usr/src/cmd/ast/Makefile.ast
@@ -88,7 +88,7 @@ CSTD= $(CSTD_GNU99)
# SHOPT_FS_3D 3d file system
# SHOPT_OLDTERMIO support both TCGETA and TCGETS
# SHOPT_P_SUID real uid's that require -p for set[ug]id
-# SHOPT_PFSH solaris exec_attr(4) profile execution
+# SHOPT_PFSH solaris exec_attr(5) profile execution
# SHOPT_REGRESS enable __regress__ builtin
# SHOPT_REMOTE enable --rc if running as a remote shell
# SHOPT_SEVENBIT strip the eigth bit from characters
diff --git a/usr/src/cmd/audit/audit.c b/usr/src/cmd/audit/audit.c
index 95eda0da4e..77b8771910 100644
--- a/usr/src/cmd/audit/audit.c
+++ b/usr/src/cmd/audit/audit.c
@@ -212,7 +212,7 @@ is_audit_config_ok() {
/*
* There must be at least one active plugin configured; if the
- * configured plugin is audit_binfile(5), then the p_dir must not be
+ * configured plugin is audit_binfile(7), then the p_dir must not be
* empty.
*/
if (!do_getpluginconfig_scf(NULL, &plugin_kva_ll)) {
@@ -238,12 +238,12 @@ is_audit_config_ok() {
cval_str = kva_match(kvlist, "p_dir");
if (cval_str == NULL || cval_str[0] == '\0') {
(void) fprintf(stderr,
- gettext("%s: audit_binfile(5) \"p_dir:\" "
+ gettext("%s: audit_binfile(7) \"p_dir:\" "
"attribute empty\n"), progname);
state = B_FALSE;
} else if (!contains_valid_dirs(cval_str)) {
(void) fprintf(stderr,
- gettext("%s: audit_binfile(5) \"p_dir:\" "
+ gettext("%s: audit_binfile(7) \"p_dir:\" "
"attribute invalid\n"), progname);
state = B_FALSE;
}
@@ -252,7 +252,7 @@ is_audit_config_ok() {
cval_int = atoi(cval_str);
if (cval_int < 0 || cval_int > 100) {
(void) fprintf(stderr,
- gettext("%s: audit_binfile(5) "
+ gettext("%s: audit_binfile(7) "
"\"p_minfree:\" attribute invalid\n"),
progname);
state = B_FALSE;
diff --git a/usr/src/cmd/auditd/auditd.c b/usr/src/cmd/auditd/auditd.c
index 16d4bfe572..5f15c93752 100644
--- a/usr/src/cmd/auditd/auditd.c
+++ b/usr/src/cmd/auditd/auditd.c
@@ -34,7 +34,7 @@
* used for the child to tell the parent that audit is ready.
*
* Configuration data comes from audit service configuration
- * (AUDITD_FMRI/smf(5)) and the auditon system call.
+ * (AUDITD_FMRI/smf(7)) and the auditon system call.
*
* The major errors are EBUSY (auditing is already in use) and EINTR
* (one of the above signals was received). File space errors are
@@ -273,7 +273,7 @@ main(int argc, char *argv[])
*/
(void) umask(007);
- if (__logpost("")) { /* Cannot unlink pointer to audit.log(4) file */
+ if (__logpost("")) { /* Cannot unlink pointer to audit.log(5) file */
DPRINT((dbfp, "logpost failed\n"));
auditd_exit(1);
}
@@ -285,7 +285,7 @@ main(int argc, char *argv[])
while (running) {
/*
* Read auditd / auditd plugins related configuration from
- * smf(5) repository and create plugin lists.
+ * smf(7) repository and create plugin lists.
*
* loadauditlist() and auditd_thread_init() are called
* while under the plugin_mutex lock to avoid a race
@@ -399,7 +399,7 @@ main(int argc, char *argv[])
* over unless audit configuration actually changed.
*
* They want to reread the audit configuration from
- * smf(5) repository (AUDITD_FMRI). Set reset_list
+ * smf(7) repository (AUDITD_FMRI). Set reset_list
* which will return us to the main while loop in the
* main routine.
*/
@@ -579,7 +579,7 @@ init_plugin(char *name, kva_t *list, int cnt_flag)
}
/*
- * loadauditlist() - read the auditd plugin configuration from smf(5) and
+ * loadauditlist() - read the auditd plugin configuration from smf(7) and
* prepare appropriate plugin related structures (plugin_t). Set cnt policy here
* based on currently active policy settings. (future could have a policy =
* {+|-}cnt entry per plugin with auditconfig providing the default)
@@ -814,7 +814,7 @@ fail:
/*
* conf_to_kernel() - configure the event to class mapping; see also
- * auditconfig(1M) -conf option.
+ * auditconfig(8) -conf option.
*/
static void
conf_to_kernel(void)
diff --git a/usr/src/cmd/auditd/auditd.xml b/usr/src/cmd/auditd/auditd.xml
index ee6fd6c110..99dba6091c 100644
--- a/usr/src/cmd/auditd/auditd.xml
+++ b/usr/src/cmd/auditd/auditd.xml
@@ -128,8 +128,8 @@
<instance name='default' enabled='false'>
<!--
- System-wide audit preselection flags - see auditconfig(1M)
- and audit_flags(5).
+ System-wide audit preselection flags - see auditconfig(8)
+ and audit_flags(7).
The 'flags' property is the system-wide default set of
audit classes that is combined with the per-user audit
@@ -152,10 +152,10 @@
</property_group>
<!--
- Audit Queue Control Properties - see auditconfig(1M)
+ Audit Queue Control Properties - see auditconfig(8)
Note, that the default value for all the queue control
- configuration parameters is 0, which makes auditd(1M) to
+ configuration parameters is 0, which makes auditd(8) to
use current active system parameters.
-->
<property_group name='queuectrl' type='application' >
@@ -174,10 +174,10 @@
</property_group>
<!--
- Audit Policies - see auditconfig(1M)
+ Audit Policies - see auditconfig(8)
Note, that "all" and "none" policies available as a
- auditconfig(1M) policy flags actually means a full/empty set
+ auditconfig(8) policy flags actually means a full/empty set
of other policy flags. Thus they are not configurable in the
auditd service manifest, but set all the policies to true
(all) or false (none).
@@ -217,8 +217,8 @@
<!--
Plugins to configure where to send the audit trail - see
- auditconfig(1M), audit_binfile(5), audit_remote(5),
- audit_syslog(5)
+ auditconfig(8), audit_binfile(7), audit_remote(7),
+ audit_syslog(7)
Each plugin type property group has properties:
@@ -315,25 +315,25 @@
</common_name>
<documentation>
<manpage title='auditd'
- section='1M'
+ section='8'
manpath='/usr/share/man'/>
<manpage title='audit'
- section='1M'
+ section='8'
manpath='/usr/share/man'/>
<manpage title='auditconfig'
- section='1M'
+ section='8'
manpath='/usr/share/man'/>
<manpage title='audit_flags'
- section='5'
+ section='7'
manpath='/usr/share/man'/>
<manpage title='audit_binfile'
- section='5'
+ section='7'
manpath='/usr/share/man'/>
<manpage title='audit_syslog'
- section='5'
+ section='7'
manpath='/usr/share/man'/>
<manpage title='audit_remote'
- section='5'
+ section='7'
manpath='/usr/share/man'/>
</documentation>
</template>
diff --git a/usr/src/cmd/auditd/svc-auditd b/usr/src/cmd/auditd/svc-auditd
index ce95015fc1..79ac155b07 100644
--- a/usr/src/cmd/auditd/svc-auditd
+++ b/usr/src/cmd/auditd/svc-auditd
@@ -79,7 +79,7 @@ do_common()
AUDITCOND="`$AUDITCONFIG -getcond 2>/dev/null`"
if [ $? -ne 0 ]; then
# The decision whether to start
- # auditing is driven by bsmconv(1M) / bsmunconv(1M)
+ # auditing is driven by bsmconv(8) / bsmunconv(8)
echo "$0: Unable to get current kernel auditing condition."
$SVCADM mark maintenance $AUDITD_FMRI
exit $SMF_EXIT_MON_OFFLINE
@@ -91,9 +91,9 @@ do_common()
$AUDITCONFIG -t -getpolicy | \
$EGREP "perzone|all" 1>/dev/null 2>&1
if [ $? -eq 1 ]; then
- echo "$0: auditd(1M) is not configured to run in"
+ echo "$0: auditd(8) is not configured to run in"
echo " a local zone, perzone policy not set" \
- "(see auditconfig(1M))."
+ "(see auditconfig(8))."
$SVCADM disable $AUDITD_FMRI
$SLEEP 5 &
exit $SMF_EXIT_OK
@@ -114,7 +114,7 @@ do_common()
do_start()
{
#
- # The transition of the audit_startup(1M) has to be performed.
+ # The transition of the audit_startup(8) has to be performed.
if [ -f "$AUDIT_STARTUP" ]; then
if [ -x "$AUDIT_STARTUP" ]; then
@@ -125,7 +125,7 @@ do_start()
exit $SMF_EXIT_MON_OFFLINE
fi
- echo "$0: Transition of audit_startup(1M) started."
+ echo "$0: Transition of audit_startup(8) started."
$MV $AUDIT_STARTUP $AUDIT_STARTUP._transitioned_
if [ $? -ne 0 ]; then
@@ -144,7 +144,7 @@ do_start()
exit $SMF_EXIT_ERR_CONFIG
fi
- echo "$0: Transition of audit_startup(1M) finished."
+ echo "$0: Transition of audit_startup(8) finished."
fi
#
@@ -158,7 +158,7 @@ do_refresh()
{
#
# The refresh capability is available only for those systems
- # with already transformed audit_startup(1M) into $AUDITD_FMRI
+ # with already transformed audit_startup(8) into $AUDITD_FMRI
# service properties. See do_start() for more information.
if [ ! -f "$AUDIT_STARTUP" ]; then
#
@@ -171,7 +171,7 @@ do_refresh()
exit $SMF_EXIT_ERR_FATAL
fi
#
- # signal to auditd(1M):
+ # signal to auditd(8):
$PKILL -HUP -c ${contract_id}
if [ $? -ne 0 ]; then
echo "$0: SIGHUP was not successfully delivered to" \
@@ -182,8 +182,8 @@ do_refresh()
$SLEEP 5 &
else
echo "$0: Service refresh method not supported on systems" \
- "without converted audit_startup(1M) into auditd service" \
- "SMF configuration. Clear the service (svcadm(1M))."
+ "without converted audit_startup(8) into auditd service" \
+ "SMF configuration. Clear the service (svcadm(8))."
$SVCADM mark maintenance $AUDITD_FMRI
exit $SMF_EXIT_ERR_CONFIG
fi
diff --git a/usr/src/cmd/auditrecord/audit_record_attr.txt b/usr/src/cmd/auditrecord/audit_record_attr.txt
index fdc4fa46eb..3a46bf4f59 100644
--- a/usr/src/cmd/auditrecord/audit_record_attr.txt
+++ b/usr/src/cmd/auditrecord/audit_record_attr.txt
@@ -119,7 +119,7 @@ user=head:subj:insert:ret
#
# Constraints - the string length; bear in mind, that any annotation of
# primitives below longer than is specified, will be silently truncated
-# to given/defined amount of characters in the auditrecord(1M) runtime:
+# to given/defined amount of characters in the auditrecord(8) runtime:
#
# primitive <= max (non-truncated) string length
# case <= unlimited; if necessary, text continues on a new line
@@ -2321,7 +2321,7 @@ label=AUE_modify_user
label=AUE_mountd_mount
title=mountd: NFS mount
program=/usr/lib/nfs/mountd
- see=mountd(1M)
+ see=mountd(8)
format=text1:path2
comment=remote client hostname:
comment=mount dir
@@ -2346,7 +2346,7 @@ label=AUE_reboot_solaris
title=reboot
format=user
# See audit_reboot.c
-# header,61,2,reboot(1m),,Fri Nov 09 13:52:34 2001, + 726 msec
+# header,61,2,reboot(8),,Fri Nov 09 13:52:34 2001, + 726 msec
# subject,tuser1,root,other,root,other,10422,497,0 0 tmach2
# return,success,0
diff --git a/usr/src/cmd/auditset/svc-auditset.c b/usr/src/cmd/auditset/svc-auditset.c
index cc2b8482d2..b68829c172 100644
--- a/usr/src/cmd/auditset/svc-auditset.c
+++ b/usr/src/cmd/auditset/svc-auditset.c
@@ -86,7 +86,7 @@ main(void)
#ifdef DEBUG
if (errno == ENOTSUP) {
(void) printf("c2audit module is excluded from "
- "the system(4); kernel won't be updated.\n");
+ "the system(5); kernel won't be updated.\n");
} else {
(void) printf("%s\n", strerror(errno));
}
diff --git a/usr/src/cmd/backup/dump/dumpoptr.c b/usr/src/cmd/backup/dump/dumpoptr.c
index 631a494993..a614c19798 100644
--- a/usr/src/cmd/backup/dump/dumpoptr.c
+++ b/usr/src/cmd/backup/dump/dumpoptr.c
@@ -387,7 +387,7 @@ lastdump(int arg) /* w ==> just what to do; W ==> most recent dumps */
if (strncmp(lastname, itwalk->id_name,
sizeof (itwalk->id_name)) == 0)
continue;
- /* must be ctime(), per ufsdump(4) */
+ /* must be ctime(), per ufsdump(5) */
ddate = itwalk->id_ddate;
date = (char *)ctime(&ddate);
date[16] = '\0'; /* blow away seconds and year */
diff --git a/usr/src/cmd/bart/rules.c b/usr/src/cmd/bart/rules.c
index 94258a858d..f12a04ef09 100644
--- a/usr/src/cmd/bart/rules.c
+++ b/usr/src/cmd/bart/rules.c
@@ -1025,7 +1025,7 @@ check_rules(const char *fname, char type)
}
/*
- * Function to determine if an entry in a rules file (see bart_rules(4)) applies
+ * Function to determine if an entry in a rules file (see bart_rules(5)) applies
* to a filename. We truncate "fname" such that it has the same number of
* components as "rule" and let fnmatch(3C) do the rest. A "component" is one
* part of an fname as delimited by slashes ('/'). So "/A/B/C/D" has four
diff --git a/usr/src/cmd/bnu/uucp.xml b/usr/src/cmd/bnu/uucp.xml
index 737a11d9d8..b90d76ce4c 100644
--- a/usr/src/cmd/bnu/uucp.xml
+++ b/usr/src/cmd/bnu/uucp.xml
@@ -24,8 +24,6 @@
CDDL HEADER END
- ident "%Z%%M% %I% %E% SMI"
-
NOTE: This service description is not editable; its contents
may be overwritten by package or patch operations, including
operating system upgrade. Make customizations in a different
@@ -80,7 +78,7 @@
</loctext>
</common_name>
<documentation>
- <manpage title='in.uucpd' section='1M'
+ <manpage title='in.uucpd' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/boot/bootadm/bootadm.c b/usr/src/cmd/boot/bootadm/bootadm.c
index 62cbd6ef8c..d58b8c4159 100644
--- a/usr/src/cmd/boot/bootadm/bootadm.c
+++ b/usr/src/cmd/boot/bootadm/bootadm.c
@@ -29,7 +29,7 @@
*/
/*
- * bootadm(1M) is a new utility for managing bootability of
+ * bootadm(8) is a new utility for managing bootability of
* Solaris *Newboot* environments. It has two primary tasks:
* - Allow end users to manage bootability of Newboot Solaris instances
* - Provide services to other subsystems in Solaris (primarily Install)
@@ -604,7 +604,7 @@ static struct cmd_map {
};
/*
- * Commands syntax published in bootadm(1M) are parsed here
+ * Commands syntax published in bootadm(8) are parsed here
*/
static void
parse_args(int argc, char *argv[])
@@ -4985,7 +4985,7 @@ line_parser(menu_t *mp, char *str, int *lineNum, int *entryNum)
prev->entryNum = lp->entryNum;
curr_ent = boot_entry_new(mp, prev, lp);
curr_ent->flags |= BAM_ENTRY_BOOTADM;
- BAM_DPRINTF(("%s: is bootadm(1M) entry: %s\n",
+ BAM_DPRINTF(("%s: is bootadm(8) entry: %s\n",
fcn, arg));
} else {
curr_ent = boot_entry_new(mp, lp, lp);
diff --git a/usr/src/cmd/boot/bootadm/bootadm_upgrade.c b/usr/src/cmd/boot/bootadm/bootadm_upgrade.c
index 86a184e623..c2d364f2c6 100644
--- a/usr/src/cmd/boot/bootadm/bootadm_upgrade.c
+++ b/usr/src/cmd/boot/bootadm/bootadm_upgrade.c
@@ -615,8 +615,8 @@ bam_warn_hand_entries(menu_t *mp, char *osroot)
hand_list[hand_num - 1] = entry->entryNum;
}
- bam_error(_("bootadm(1M) will only upgrade GRUB menu entries added "
- "by \nbootadm(1M) or lu(1M). The following entries on %s will "
+ bam_error(_("bootadm(8) will only upgrade GRUB menu entries added "
+ "by \nbootadm(8) or lu(8). The following entries on %s will "
"not be upgraded.\nFor details on manually updating entries, "
"see %s\n"), osroot, MENU_URL(osroot));
bam_print_stderr("Entry Number%s: ", (hand_num > 1) ?
diff --git a/usr/src/cmd/boot/scripts/create_ramdisk.ksh b/usr/src/cmd/boot/scripts/create_ramdisk.ksh
index 3a9ca046d8..4125ef886d 100644
--- a/usr/src/cmd/boot/scripts/create_ramdisk.ksh
+++ b/usr/src/cmd/boot/scripts/create_ramdisk.ksh
@@ -39,8 +39,8 @@ dirsize=0
usage() {
cat <<- EOM
-This utility is a component of the bootadm(1M) implementation and it is not
-recommended for stand-alone use. Please use bootadm(1M) instead.
+This utility is a component of the bootadm(8) implementation and it is not
+recommended for stand-alone use. Please use bootadm(8) instead.
Usage: ${0##*/}: [-R <root>] [-p <platform>] [ -f <format> ] [--nocompress]
where <platform> is one of i86pc, sun4u or sun4v
diff --git a/usr/src/cmd/boot/scripts/extract_boot_filelist.ksh b/usr/src/cmd/boot/scripts/extract_boot_filelist.ksh
index 52479b7471..9c50f5d518 100644
--- a/usr/src/cmd/boot/scripts/extract_boot_filelist.ksh
+++ b/usr/src/cmd/boot/scripts/extract_boot_filelist.ksh
@@ -22,7 +22,6 @@
# Copyright 2008 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
#
-# ident "%Z%%M% %I% %E% SMI"
#
# set path, but inherit /tmp/bfubin if it is sane
@@ -35,9 +34,9 @@ else
fi
usage() {
- echo "This utility is a component of the bootadm(1M) implementation"
+ echo "This utility is a component of the bootadm(8) implementation"
echo "and it is not recommended for stand-alone use."
- echo "Please use bootadm(1M) instead."
+ echo "Please use bootadm(8) instead."
echo ""
echo "Usage: ${0##*/}: [-R <root>] [-p <platform>] <filelist> ..."
echo "where <platform> is one of i86pc, sun4u or sun4v"
diff --git a/usr/src/cmd/cdrw/mmc.c b/usr/src/cmd/cdrw/mmc.c
index 4b90cc5f3d..7624e16f10 100644
--- a/usr/src/cmd/cdrw/mmc.c
+++ b/usr/src/cmd/cdrw/mmc.c
@@ -672,7 +672,7 @@ read_format_capacity(int fd, uint_t *bsize)
}
/*
- * Used to reset the device. Since, sd(7D) requires a
+ * Used to reset the device. Since, sd(4D) requires a
* command to be issued when resetting a device we will
* issue an innocuous command. The command chosen for this
* purpose is the TEST UNIT READY (TUR) command. We also do
@@ -692,7 +692,7 @@ reset_dev(int fd)
*/
scmd = get_uscsi_cmd();
- /* Tell sd(7D) to do a silent reset of the device. */
+ /* Tell sd(4D) to do a silent reset of the device. */
scmd->uscsi_flags = USCSI_SILENT | USCSI_RESET;
scmd->uscsi_timeout = DEFAULT_SCSI_TIMEOUT;
diff --git a/usr/src/cmd/cfgadm/cfgadm.c b/usr/src/cmd/cfgadm/cfgadm.c
index fd660c7298..848cdb1cb8 100644
--- a/usr/src/cmd/cfgadm/cfgadm.c
+++ b/usr/src/cmd/cfgadm/cfgadm.c
@@ -26,9 +26,9 @@
/*
* This is the main program file for the configuration administration
- * command as set out in manual page cfgadm(1M). It uses the configuration
+ * command as set out in manual page cfgadm(8). It uses the configuration
* administration library interface, libcfgadm, as set out in manual
- * page config_admin(3X).
+ * page config_admin(3CFGADM).
*/
#include <stdio.h>
@@ -649,7 +649,7 @@ usage(void)
/*
* Emit an error message.
* As a side-effect the hardware specific error message is deallocated
- * as described in config_admin(3X).
+ * as described in config_admin(3CFGADM).
*/
static void
cfgadm_error(int errnum, char *estrp)
diff --git a/usr/src/cmd/cmd-crypto/cryptoadm/adm_kef.c b/usr/src/cmd/cmd-crypto/cryptoadm/adm_kef.c
index cd3737cc24..f20de9020b 100644
--- a/usr/src/cmd/cmd-crypto/cryptoadm/adm_kef.c
+++ b/usr/src/cmd/cmd-crypto/cryptoadm/adm_kef.c
@@ -311,7 +311,7 @@ disable_kef_hardware(char *provname, boolean_t rndflag, boolean_t allflag,
* kCF treats random as an internal mechanism. So, we need to
* filter it from the mechanism list here, if we are NOT disabling
* or enabling the random feature. Note that we map random feature at
- * cryptoadm(1M) level to the "random" mechanism in kCF.
+ * cryptoadm(8) level to the "random" mechanism in kCF.
*/
if (!rndflag) {
(void) filter_mechlist(&dislist, RANDOM);
@@ -459,7 +459,7 @@ disable_kef_software(char *provname, boolean_t rndflag, boolean_t allflag,
* kCF treats random as an internal mechanism. So, we need to
* filter it from the mechanism list here, if we are NOT disabling
* or enabling the random feature. Note that we map random feature at
- * cryptoadm(1M) level to the "random" mechanism in kCF.
+ * cryptoadm(8) level to the "random" mechanism in kCF.
*/
if (!rndflag) {
(void) filter_mechlist(&infolist, RANDOM);
@@ -574,7 +574,7 @@ enable_kef(char *provname, boolean_t rndflag, boolean_t allflag,
* kCF treats random as an internal mechanism. So, we need to
* filter it from the mechanism list here, if we are NOT disabling
* or enabling the random feature. Note that we map random feature at
- * cryptoadm(1M) level to the "random" mechanism in kCF.
+ * cryptoadm(8) level to the "random" mechanism in kCF.
*/
if (!rndflag) {
redo_flag = filter_mechlist(&pent->dislist, RANDOM);
diff --git a/usr/src/cmd/cmd-crypto/etc/kcf.conf b/usr/src/cmd/cmd-crypto/etc/kcf.conf
index df9634b95f..46bc85dc1d 100644
--- a/usr/src/cmd/cmd-crypto/etc/kcf.conf
+++ b/usr/src/cmd/cmd-crypto/etc/kcf.conf
@@ -23,7 +23,7 @@
#
# /etc/crypto/kcf.conf
#
-# Do NOT edit this file by hand. An administrator should use cryptoadm(1m)
+# Do NOT edit this file by hand. An administrator should use cryptoadm(8)
# to administer the cryptographic framework.
#
# This document does not constitute an API. The /etc/crypto/kcf.conf file may
diff --git a/usr/src/cmd/cmd-crypto/etc/kmf.conf b/usr/src/cmd/cmd-crypto/etc/kmf.conf
index e98dea72be..74c288648c 100644
--- a/usr/src/cmd/cmd-crypto/etc/kmf.conf
+++ b/usr/src/cmd/cmd-crypto/etc/kmf.conf
@@ -22,13 +22,12 @@
# Copyright 2007 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
#
-# ident "%Z%%M% %I% %E% SMI"
#
# /etc/crypto/kmf.conf
#
# This file contains non-default plugin entries to the Solaris Key Management
# Framework (KMF). Do NOT edit this file by hand. An administrator should use
-# kmfcfg(1m) to install or uninstall a non-default plugin. A developer for a
+# kmfcfg(8) to install or uninstall a non-default plugin. A developer for a
# KMF plugin package should provide an input file and use the {i,r}.kmfconf
# class action scripts to update this file during the installation and removal
# of the package.
diff --git a/usr/src/cmd/cmd-crypto/etc/pkcs11.conf b/usr/src/cmd/cmd-crypto/etc/pkcs11.conf
index 835e61f777..236c52aebb 100644
--- a/usr/src/cmd/cmd-crypto/etc/pkcs11.conf
+++ b/usr/src/cmd/cmd-crypto/etc/pkcs11.conf
@@ -24,7 +24,7 @@
#
# /etc/crypto/pkcs11.conf
#
-# Do NOT edit this file by hand. An administrator should use cryptoadm(1m)
+# Do NOT edit this file by hand. An administrator should use cryptoadm(8)
# to administer the cryptographic framework. A developer for a user-level
# cryptographic provider package should provide an input file and use the
# {i,r}.pkcs11conf class action scripts to update this file during the
diff --git a/usr/src/cmd/cmd-crypto/scripts/cryptosvc.xml b/usr/src/cmd/cmd-crypto/scripts/cryptosvc.xml
index 578520a142..75a42c4501 100644
--- a/usr/src/cmd/cmd-crypto/scripts/cryptosvc.xml
+++ b/usr/src/cmd/cmd-crypto/scripts/cryptosvc.xml
@@ -90,7 +90,7 @@
</loctext>
</common_name>
<documentation>
- <manpage title='cryptoadm' section='1M'
+ <manpage title='cryptoadm' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/cmd-inet/common/store_forw_creds.c b/usr/src/cmd/cmd-inet/common/store_forw_creds.c
index 2b5d7988b3..a8c680ed78 100644
--- a/usr/src/cmd/cmd-inet/common/store_forw_creds.c
+++ b/usr/src/cmd/cmd-inet/common/store_forw_creds.c
@@ -23,9 +23,6 @@
* Use is subject to license terms.
*/
-#pragma ident "%Z%%M% %I% %E% SMI"
-
-
#include <pwd.h>
#include <locale.h>
#include <syslog.h>
@@ -38,7 +35,7 @@ extern uint_t kwarn_del_warning(char *);
/*
* Store the forwarded creds in the user's local ccache and register
- * w/ktkt_warnd(1M).
+ * w/ktkt_warnd(8).
*/
krb5_error_code
store_forw_creds(krb5_context context,
@@ -86,7 +83,7 @@ store_forw_creds(krb5_context context,
if ((retval = krb5_cc_close(context, *ccache)) != 0)
goto cleanup;
- /* Register with ktkt_warnd(1M) */
+ /* Register with ktkt_warnd(8) */
if ((retval = krb5_unparse_name(context, (*creds)->client,
&client_name)) != 0)
goto cleanup;
@@ -94,7 +91,7 @@ store_forw_creds(krb5_context context,
if (kwarn_add_warning(client_name, (*creds)->times.endtime) != 0) {
syslog(LOG_AUTH|LOG_NOTICE,
"store_forw_creds: kwarn_add_warning"
- " failed: ktkt_warnd(1M) down? ");
+ " failed: ktkt_warnd(8) down? ");
}
free(client_name);
client_name = NULL;
diff --git a/usr/src/cmd/cmd-inet/etc/dhcp/inittab b/usr/src/cmd/cmd-inet/etc/dhcp/inittab
index 162183939d..d26d74ad64 100644
--- a/usr/src/cmd/cmd-inet/etc/dhcp/inittab
+++ b/usr/src/cmd/cmd-inet/etc/dhcp/inittab
@@ -29,10 +29,10 @@
# add support for SITE options for clients; no existing options should
# be modified. Only SITE options will be preserved during an upgrade.
# If you need to configure the Solaris DHCP server to support the vendor
-# options of a different client, see dhcptab(4) for details.
+# options of a different client, see dhcptab(5) for details.
#
-# Please consult dhcp_inittab(4) for further information. Note that
-# this interface is "Unstable" as defined by attributes(5).
+# Please consult dhcp_inittab(5) for further information. Note that
+# this interface is "Unstable" as defined by attributes(7).
#
Subnet STANDARD, 1, IP, 1, 1, sdmi
@@ -179,7 +179,7 @@ SHTTPproxy VENDOR, 17, ASCII, 1, 0, smi
# the SITE category, meaning it is defined by each individual site.
# It is option code 132, which is of type IP Address, consisting of
# a potentially infinite number of pairs of IP addresses. (See
-# dhcp_inittab(4) for details)
+# dhcp_inittab(5) for details)
#
# ipPairs SITE, 132, IP, 2, 0, sdmi
#
diff --git a/usr/src/cmd/cmd-inet/etc/dhcp/inittab6 b/usr/src/cmd/cmd-inet/etc/dhcp/inittab6
index 5e8e083a04..b21c4a7693 100644
--- a/usr/src/cmd/cmd-inet/etc/dhcp/inittab6
+++ b/usr/src/cmd/cmd-inet/etc/dhcp/inittab6
@@ -21,13 +21,12 @@
#
# CDDL HEADER END
#
-# ident "%Z%%M% %I% %E% SMI"
#
# This file provides information about all supported DHCPv6 options, for
# use by DHCPv6-related programs.
#
-# Please consult dhcp_inittab(4) for further information. Note that
-# this interface is "Uncommitted" as defined by attributes(5).
+# Please consult dhcp_inittab(5) for further information. Note that
+# this interface is "Uncommitted" as defined by attributes(7).
#
# Note: options 10 and 35 are not assigned.
#
diff --git a/usr/src/cmd/cmd-inet/etc/ike/config.sample b/usr/src/cmd/cmd-inet/etc/ike/config.sample
index a9851a8d8a..7355b0a511 100644
--- a/usr/src/cmd/cmd-inet/etc/ike/config.sample
+++ b/usr/src/cmd/cmd-inet/etc/ike/config.sample
@@ -1,6 +1,4 @@
#
-#ident "%Z%%M% %I% %E% SMI"
-#
# Copyright 2005 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
#
@@ -27,12 +25,12 @@
##
## This file should be copied into /etc/inet/ike/config to enable the
-## launch of the IKE daemon, in.iked(1m), at boot time. You can also
+## launch of the IKE daemon, in.iked(8), at boot time. You can also
## launch the IKE daemon after creating this file without rebooting by
## invoking /usr/lib/inet/in.iked with a root shell.
##
-# Consult the ike.config(4) man page for further details. Here is a small
+# Consult the ike.config(5) man page for further details. Here is a small
# example from the man page.
### BEGINNING OF FILE
@@ -47,7 +45,7 @@
## certificate parameters...
# Root certificates. I SHOULD use a full Distinguished Name.
-# I MUST have this certificate in my local filesystem, see ikecert(1m).
+# I MUST have this certificate in my local filesystem, see ikecert(8).
cert_root "C=US, O=Sun Microsystems\\, Inc., CN=Sun CA"
# Explicitly trusted certs that need no signatures, or perhaps self-signed
diff --git a/usr/src/cmd/cmd-inet/etc/inetd.conf b/usr/src/cmd/cmd-inet/etc/inetd.conf
index 0965497d35..2a654b6638 100644
--- a/usr/src/cmd/cmd-inet/etc/inetd.conf
+++ b/usr/src/cmd/cmd-inet/etc/inetd.conf
@@ -23,19 +23,17 @@
# Copyright 2004 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
#
-#ident "%Z%%M% %I% %E% SMI"
-#
-# Legacy configuration file for inetd(1M). See inetd.conf(4).
+# Legacy configuration file for inetd(8). See inetd.conf(5).
#
# This file is no longer directly used to configure inetd.
# The Solaris services which were formerly configured using this file
-# are now configured in the Service Management Facility (see smf(5))
-# using inetadm(1M).
+# are now configured in the Service Management Facility (see smf(7))
+# using inetadm(8).
#
# Any records remaining in this file after installation or upgrade,
# or later created by installing additional software, must be converted
-# to smf(5) services and imported into the smf repository using
-# inetconv(1M), otherwise the service will not be available. Once
+# to smf(7) services and imported into the smf repository using
+# inetconv(8), otherwise the service will not be available. Once
# a service has been converted using inetconv, further changes made to
# its entry here are not reflected in the service.
#
diff --git a/usr/src/cmd/cmd-inet/etc/ipaddrsel.conf b/usr/src/cmd/cmd-inet/etc/ipaddrsel.conf
index 901bb9dad1..0de979d0c0 100644
--- a/usr/src/cmd/cmd-inet/etc/ipaddrsel.conf
+++ b/usr/src/cmd/cmd-inet/etc/ipaddrsel.conf
@@ -24,7 +24,7 @@
# Use is subject to license terms.
#
# This is the IPv6 default address selection policy table. See
-# ipaddrsel(1M) for details and examples.
+# ipaddrsel(8) for details and examples.
#
# Prefix Precedence Label
::1/128 50 Loopback
diff --git a/usr/src/cmd/cmd-inet/etc/ipsecalgs b/usr/src/cmd/cmd-inet/etc/ipsecalgs
index a734e5ff13..dda67d86ea 100644
--- a/usr/src/cmd/cmd-inet/etc/ipsecalgs
+++ b/usr/src/cmd/cmd-inet/etc/ipsecalgs
@@ -24,7 +24,7 @@
#
# DO NOT EDIT OR PARSE THIS FILE!
#
-# Use the ipsecalgs(1m) command to change the contents of this file.
+# Use the ipsecalgs(8) command to change the contents of this file.
# The algorithm descriptions contained in this file are synchronised to the
# kernel with ipsecalgs -s, the kernel validates the entries at this point.
diff --git a/usr/src/cmd/cmd-inet/etc/ipsecinit.sample b/usr/src/cmd/cmd-inet/etc/ipsecinit.sample
index 76642506f2..4e7d2a6a2a 100644
--- a/usr/src/cmd/cmd-inet/etc/ipsecinit.sample
+++ b/usr/src/cmd/cmd-inet/etc/ipsecinit.sample
@@ -1,6 +1,4 @@
#
-#ident "%Z%%M% %I% %E% SMI"
-#
# Copyright 2005 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
#
@@ -72,9 +70,9 @@
#
# WARNING: This file is read before default routes are established, and
# before any naming services have been started. The
-# ipsecconf(1M) command attempts to resolve names, but it will
+# ipsecconf(8) command attempts to resolve names, but it will
# fail unless the machine uses files, or DNS and the DNS server
-# is reachable via routing information before ipsecconf(1m)
+# is reachable via routing information before ipsecconf(8)
# invocation. (E.g. the DNS server is on-subnet, or DHCP
# has loaded up the default router already.)
#
diff --git a/usr/src/cmd/cmd-inet/etc/nca/ncaport.conf b/usr/src/cmd/cmd-inet/etc/nca/ncaport.conf
index f2c7fd229b..74b110dfa7 100644
--- a/usr/src/cmd/cmd-inet/etc/nca/ncaport.conf
+++ b/usr/src/cmd/cmd-inet/etc/nca/ncaport.conf
@@ -23,14 +23,14 @@
# Copyright 2002 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
#
-# ident "%Z%%M% %I% %E% SMI"
+#
#
# NCA Kernel Module Port Configuration File
#
# Use this file to tell NCA socket utility library /usr/lib/ncad_addr.so to
# convert an AF_INET socket to an AF_NCA socket. Each line consists of two
# fields - a key and a value - in the format ncaport=ipaddress/port. See
-# man page ncaport(4) for the format and contents of this file.
+# man page ncaport(5) for the format and contents of this file.
#
# Example configuration file:
#
diff --git a/usr/src/cmd/cmd-inet/etc/secret/ike.preshared b/usr/src/cmd/cmd-inet/etc/secret/ike.preshared
index 49160535c7..033d9ed173 100644
--- a/usr/src/cmd/cmd-inet/etc/secret/ike.preshared
+++ b/usr/src/cmd/cmd-inet/etc/secret/ike.preshared
@@ -1,6 +1,4 @@
#
-#ident "%Z%%M% %I% %E% SMI"
-#
# Copyright 2005 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
#
@@ -34,4 +32,4 @@
# ...
# }
#
-# Consult the man page for ike.preshared(4) for details.
+# Consult the man page for ike.preshared(5) for details.
diff --git a/usr/src/cmd/cmd-inet/etc/secret/ipseckeys.sample b/usr/src/cmd/cmd-inet/etc/secret/ipseckeys.sample
index 256328e7f6..356b765a26 100644
--- a/usr/src/cmd/cmd-inet/etc/secret/ipseckeys.sample
+++ b/usr/src/cmd/cmd-inet/etc/secret/ipseckeys.sample
@@ -1,6 +1,4 @@
#
-#ident "%Z%%M% %I% %E% SMI"
-#
# Copyright 2005 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
#
@@ -25,7 +23,7 @@
# CDDL HEADER END
#
-# ipseckeys - This file takes the file format documented in ipseckey(1m).
+# ipseckeys - This file takes the file format documented in ipseckey(8).
# Note that naming services might not be available when this file
# loads, just like ipsecinit.conf.
#
diff --git a/usr/src/cmd/cmd-inet/lib/ipmgmtd/ipadm.conf b/usr/src/cmd/cmd-inet/lib/ipmgmtd/ipadm.conf
index eeaee090b6..59f632d0e0 100644
--- a/usr/src/cmd/cmd-inet/lib/ipmgmtd/ipadm.conf
+++ b/usr/src/cmd/cmd-inet/lib/ipmgmtd/ipadm.conf
@@ -23,4 +23,4 @@
#
# DO NOT EDIT OR PARSE THIS FILE!
#
-# Use the ipadm(1m) command to change the contents of this file.
+# Use the ipadm(8) command to change the contents of this file.
diff --git a/usr/src/cmd/cmd-inet/lib/ipmgmtd/ipmgmt_main.c b/usr/src/cmd/cmd-inet/lib/ipmgmtd/ipmgmt_main.c
index a77be20510..41aeb2d98c 100644
--- a/usr/src/cmd/cmd-inet/lib/ipmgmtd/ipmgmt_main.c
+++ b/usr/src/cmd/cmd-inet/lib/ipmgmtd/ipmgmt_main.c
@@ -529,7 +529,7 @@ main(int argc, char *argv[])
if (!fg && getenv("SMF_FMRI") == NULL) {
(void) fprintf(stderr,
- "ipmgmtd is a smf(5) managed service and cannot be run "
+ "ipmgmtd is a smf(7) managed service and cannot be run "
"from the command line.\n");
return (EINVAL);
}
diff --git a/usr/src/cmd/cmd-inet/lib/ipmgmtd/net-ipmgmt b/usr/src/cmd/cmd-inet/lib/ipmgmtd/net-ipmgmt
index 6b39cde11f..cad7adf8bb 100644
--- a/usr/src/cmd/cmd-inet/lib/ipmgmtd/net-ipmgmt
+++ b/usr/src/cmd/cmd-inet/lib/ipmgmtd/net-ipmgmt
@@ -30,7 +30,7 @@
. /lib/svc/share/smf_include.sh
if [ -z "$SMF_FMRI" ]; then
- echo "this script can only be invoked by smf(5)"
+ echo "this script can only be invoked by smf(7)"
exit $SMF_EXIT_ERR_NOSMF
fi
diff --git a/usr/src/cmd/cmd-inet/lib/ipmgmtd/network-ipmgmt.xml b/usr/src/cmd/cmd-inet/lib/ipmgmtd/network-ipmgmt.xml
index 7f2c7f53be..43ae9697ae 100644
--- a/usr/src/cmd/cmd-inet/lib/ipmgmtd/network-ipmgmt.xml
+++ b/usr/src/cmd/cmd-inet/lib/ipmgmtd/network-ipmgmt.xml
@@ -86,7 +86,7 @@
</loctext>
</description>
<documentation>
- <manpage title='ipadm' section='1M'
+ <manpage title='ipadm' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/cmd-inet/lib/nwamd/main.c b/usr/src/cmd/cmd-inet/lib/nwamd/main.c
index 84ff96875d..4d6cca3b4e 100644
--- a/usr/src/cmd/cmd-inet/lib/nwamd/main.c
+++ b/usr/src/cmd/cmd-inet/lib/nwamd/main.c
@@ -68,7 +68,7 @@ static void graceful_shutdown(void);
*
* This is the Network Auto-Magic daemon. For further high level information
* see the Network Auto-Magic project and the Approachability communities
- * on opensolaris.org, nwamd(1M), and the README in the source directory.
+ * on opensolaris.org, nwamd(8), and the README in the source directory.
*
* The general structure of the code is as a set of event source threads
* which feed events into the event handling thread. Some of these events
@@ -88,9 +88,9 @@ static void graceful_shutdown(void);
* live here as static functions:
* - nlog set-up
* - daemonizing
- * - looking up SMF(5) properties
+ * - looking up smf(7) properties
* - signal handling
- * - managing privileges(5)
+ * - managing privileges(7)
*/
static void
diff --git a/usr/src/cmd/cmd-inet/lib/nwamd/ncu_ip.c b/usr/src/cmd/cmd-inet/lib/nwamd/ncu_ip.c
index e8df88cd77..655b428757 100644
--- a/usr/src/cmd/cmd-inet/lib/nwamd/ncu_ip.c
+++ b/usr/src/cmd/cmd-inet/lib/nwamd/ncu_ip.c
@@ -159,7 +159,7 @@ nwamd_get_dhcpinfo_data(const char *sym_name, char *ifname)
if (ifname == NULL)
ifname = "";
- /* find code and category in dhcp_inittab(4) */
+ /* find code and category in dhcp_inittab(5) */
entry = inittab_getbyname(ITAB_CAT_SITE | ITAB_CAT_STANDARD |
ITAB_CAT_VENDOR | ITAB_CAT_FIELD, ITAB_CONS_INFO, sym_name);
diff --git a/usr/src/cmd/cmd-inet/lib/nwamd/ncu_phys.c b/usr/src/cmd/cmd-inet/lib/nwamd/ncu_phys.c
index ae1a6d979c..65f71acbdc 100644
--- a/usr/src/cmd/cmd-inet/lib/nwamd/ncu_phys.c
+++ b/usr/src/cmd/cmd-inet/lib/nwamd/ncu_phys.c
@@ -978,7 +978,7 @@ find_best_wlan_cb(nwam_known_wlan_handle_t kwh, void *data)
* If we're >= scan level, don't pick another Known WLAN if still
* connected (even if a Known WLAN with higher priority is available).
* If the user wants to connect to a different Known WLAN, it can be
- * done from the GUI or select-wifi subcommand of nwamadm(1M).
+ * done from the GUI or select-wifi subcommand of nwamadm(8).
*/
if (curr_strength >= wireless_scan_level &&
link->nwamd_link_wifi_connected) {
diff --git a/usr/src/cmd/cmd-inet/sbin/dhcpagent/README b/usr/src/cmd/cmd-inet/sbin/dhcpagent/README
index 749ec9a665..58b996aab5 100644
--- a/usr/src/cmd/cmd-inet/sbin/dhcpagent/README
+++ b/usr/src/cmd/cmd-inet/sbin/dhcpagent/README
@@ -22,7 +22,6 @@ Use is subject to license terms.
Architectural Overview for the DHCP agent
Peter Memishian
-ident "%Z%%M% %I% %E% SMI"
INTRODUCTION
============
@@ -393,7 +392,7 @@ time, using the system's current notion of time.
One additional limitation of the `hrtime_t' and `monosec_t' types is
that they are unaware of the passage of time across checkpoint/resume
-events (e.g., those generated by sys-suspend(1M)). For example, if
+events (e.g., those generated by sys-suspend(8)). For example, if
gethrtime() returns time T, and then the machine is suspended for 2
hours, and then gethrtime() is called again, the time returned is not
T + (2 * 60 * 60 * NANOSEC), but rather approximately still T.
diff --git a/usr/src/cmd/cmd-inet/sbin/dhcpagent/README.v6 b/usr/src/cmd/cmd-inet/sbin/dhcpagent/README.v6
index 77adf3655b..33d5ea80da 100644
--- a/usr/src/cmd/cmd-inet/sbin/dhcpagent/README.v6
+++ b/usr/src/cmd/cmd-inet/sbin/dhcpagent/README.v6
@@ -45,13 +45,13 @@ Introduction
- RFCs 2131 and 2132: IPv4 DHCP
- RFCs 2461 and 2462: IPv6 NDP and stateless autoconfiguration
- RFC 3484: IPv6 default address selection
- - ifconfig(1M): Solaris IP interface configuration
- - in.ndpd(1M): Solaris IPv6 Neighbor and Router Discovery daemon
- - dhcpagent(1M): Solaris DHCP client
+ - ifconfig(8): Solaris IP interface configuration
+ - in.ndpd(8): Solaris IPv6 Neighbor and Router Discovery daemon
+ - dhcpagent(8): Solaris DHCP client
- dhcpinfo(1): Solaris DHCP parameter utility
- - ndpd.conf(4): in.ndpd configuration file
- - netstat(1M): Solaris network status utility
- - snoop(1M): Solaris network packet capture and inspection
+ - ndpd.conf(5): in.ndpd configuration file
+ - netstat(8): Solaris network status utility
+ - snoop(8): Solaris network packet capture and inspection
- "DHCPv6 Client High-Level Design"
Several terms from those documents (such as the DHCPv6 IA_NA and
diff --git a/usr/src/cmd/cmd-inet/sbin/dhcpagent/class_id.c b/usr/src/cmd/cmd-inet/sbin/dhcpagent/class_id.c
index 3e5a533466..5e3945ec2f 100644
--- a/usr/src/cmd/cmd-inet/sbin/dhcpagent/class_id.c
+++ b/usr/src/cmd/cmd-inet/sbin/dhcpagent/class_id.c
@@ -24,8 +24,6 @@
* Use is subject to license terms.
*/
-#pragma ident "%Z%%M% %I% %E% SMI"
-
#include <sys/stat.h>
#include <sys/types.h>
#include <fcntl.h>
@@ -117,7 +115,7 @@ return_property(int prom_fd, const char *prop)
/*
* sanitize_class_id(): translates the class id into a canonical format,
- * so that it can be used easily with dhcptab(4).
+ * so that it can be used easily with dhcptab(5).
*
* input: char *: the class id to canonicalize
* output: void
diff --git a/usr/src/cmd/cmd-inet/sbin/dhcpagent/dhcpagent.dfl b/usr/src/cmd/cmd-inet/sbin/dhcpagent/dhcpagent.dfl
index 7f5ffd2559..933e94b0a3 100644
--- a/usr/src/cmd/cmd-inet/sbin/dhcpagent/dhcpagent.dfl
+++ b/usr/src/cmd/cmd-inet/sbin/dhcpagent/dhcpagent.dfl
@@ -26,7 +26,7 @@
#
#
-# This file contains tunable parameters for dhcpagent(1M).
+# This file contains tunable parameters for dhcpagent(8).
#
# All parameters can be tuned for a specific interface by prepending
@@ -105,9 +105,9 @@
# By default, the DHCP agent will try to request the Fully Qualified Domain
# Name (FQDN) currently associated with the interface performing DHCP. The
-# hostname is defined by using the -h,--reqhost option of ipadm(1M) or the
-# ncu ip-reqhost property of nwamcfg(1M) or by flagging the interface as
-# primary so that nodename(4) is used as the hostname.
+# hostname is defined by using the -h,--reqhost option of ipadm(8) or the
+# ncu ip-reqhost property of nwamcfg(8) or by flagging the interface as
+# primary so that nodename(5) is used as the hostname.
#
# A defined hostname will be used as the FQDN if it is "rooted" (i.e., if
# it ends with a '.') or if it consists of at least three DNS labels (e.g.,
@@ -128,19 +128,19 @@
# REQUEST_FQDN=no
# By default, the DHCP agent will not attempt to construct an FQDN from a
-# PQDN specified by the -h,--reqhost option of ipadm(1M), by the ncu
-# ip-reqhost property of nwamcfg(1M), or by nodename(4). Set and
+# PQDN specified by the -h,--reqhost option of ipadm(8), by the ncu
+# ip-reqhost property of nwamcfg(8), or by nodename(5). Set and
# uncomment the following parameter to indicate a domain name to be used by
# the DHCP agent to construct if necessary an FQDN.
#
# DNS_DOMAINNAME=
# By default, the DHCP agent will not attempt to use a domain name returned
-# by the DHCP server or the domain in resolv.conf(4) to construct an FQDN
-# from a PQDN specified by the -h,--reqhost option of ipadm(1M), by the ncu
-# ip-reqhost property of nwamcfg(1M), or by nodename(4). Set and uncomment
+# by the DHCP server or the domain in resolv.conf(5) to construct an FQDN
+# from a PQDN specified by the -h,--reqhost option of ipadm(8), by the ncu
+# ip-reqhost property of nwamcfg(8), or by nodename(5). Set and uncomment
# the following parameter to indicate that a returned DHCPv4 DNSdmain or the
-# domain from resolv.conf(4) should be adopted by the DHCP agent to
+# domain from resolv.conf(5) should be adopted by the DHCP agent to
# construct if necessary an FQDN.
#
# ADOPT_DOMAINNAME=yes
@@ -148,14 +148,14 @@
# By default, the DHCP agent will try to request the hostname currently
# associated with the interface performing DHCP. If this option is
# enabled, the agent will attempt to use an -h,--reqhost option saved with
-# ipadm(1M) or an ncu ip-reqhost property set with nwamcfg(1M); or else
+# ipadm(8) or an ncu ip-reqhost property set with nwamcfg(8); or else
# attempt to find a host name in /etc/hostname.<if>, which must contain a
# line of the form
#
# inet name
#
# where "name" is a single RFC 1101-compliant token; or else use
-# nodename(4) for a DHCP interface flagged as primary. If found in any of
+# nodename(5) for a DHCP interface flagged as primary. If found in any of
# these configurations, the token will be used to request that host name
# from the DHCP server. To prevent this, uncomment the following line.
#
diff --git a/usr/src/cmd/cmd-inet/sbin/dhcpagent/util.c b/usr/src/cmd/cmd-inet/sbin/dhcpagent/util.c
index 6b69dfffe7..4a1c58aa17 100644
--- a/usr/src/cmd/cmd-inet/sbin/dhcpagent/util.c
+++ b/usr/src/cmd/cmd-inet/sbin/dhcpagent/util.c
@@ -763,7 +763,7 @@ dhcp_get_nodename(char *buf, size_t buflen)
* affirmative and if 1) dsm_msg_reqhost is available;
* or 2) hostname is read from an extant
* /etc/hostname.<ifname> file; or 3) interface is
- * primary and nodename(4) is defined.
+ * primary and nodename(5) is defined.
*
* input: dhcp_pkt_t *: pointer to DHCP message being constructed;
* dhcp_smach_t *: pointer to interface DHCP state machine;
@@ -1000,8 +1000,8 @@ dhcp_pick_domainname(char *namebuf, size_t buflen, dhcp_smach_t *dsmp)
/*
* dhcp_assemble_fqdn(): Set fqdnbuf if REQUEST_FQDN is set and
* either a host name was sent in the IPC message (e.g.,
- * from ipadm(1M) -h,--reqhost) or the interface is
- * primary and a nodename(4) is defined. If the host
+ * from ipadm(8) -h,--reqhost) or the interface is
+ * primary and a nodename(5) is defined. If the host
* name is not already fully qualified per is_fqdn(),
* then dhcp_pick_domainname() is tried to select a
* domain to be used to construct an FQDN.
diff --git a/usr/src/cmd/cmd-inet/usr.bin/tftp/tftp-udp6.xml b/usr/src/cmd/cmd-inet/usr.bin/tftp/tftp-udp6.xml
index d5368753d4..b8a5b4e87e 100644
--- a/usr/src/cmd/cmd-inet/usr.bin/tftp/tftp-udp6.xml
+++ b/usr/src/cmd/cmd-inet/usr.bin/tftp/tftp-udp6.xml
@@ -73,7 +73,7 @@ operating system upgrade.
</loctext>
</common_name>
<documentation>
- <manpage title='in.tftpd' section='1M'
+ <manpage title='in.tftpd' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/cmd-inet/usr.lib/bridged/bridge.xml b/usr/src/cmd/cmd-inet/usr.lib/bridged/bridge.xml
index 3c9d0b5695..f79a2f1820 100644
--- a/usr/src/cmd/cmd-inet/usr.lib/bridged/bridge.xml
+++ b/usr/src/cmd/cmd-inet/usr.lib/bridged/bridge.xml
@@ -100,7 +100,7 @@ The "bridge" service provides Ethernet bridging and related protocols.
</loctext>
</description>
<documentation>
- <manpage title='bridged' section='1M'
+ <manpage title='bridged' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/cmd-inet/usr.lib/ilbd/ilbd.xml b/usr/src/cmd/cmd-inet/usr.lib/ilbd/ilbd.xml
index 567fb9439d..b6a009275e 100644
--- a/usr/src/cmd/cmd-inet/usr.lib/ilbd/ilbd.xml
+++ b/usr/src/cmd/cmd-inet/usr.lib/ilbd/ilbd.xml
@@ -103,9 +103,9 @@
</loctext>
</common_name>
<documentation>
- <manpage title='ilbd' section='1M'
+ <manpage title='ilbd' section='8'
manpath='/usr/share/man' />
- <manpage title='ilbadm' section='1M'
+ <manpage title='ilbadm' section='8'
manpath='/usr/share/man' />
</documentation>
diff --git a/usr/src/cmd/cmd-inet/usr.lib/in.mpathd/mpd_main.c b/usr/src/cmd/cmd-inet/usr.lib/in.mpathd/mpd_main.c
index 3064428a36..fa17a8f96b 100644
--- a/usr/src/cmd/cmd-inet/usr.lib/in.mpathd/mpd_main.c
+++ b/usr/src/cmd/cmd-inet/usr.lib/in.mpathd/mpd_main.c
@@ -2120,7 +2120,7 @@ main(int argc, char *argv[])
/*
* If we're operating in "adopt" mode and no interfaces need to be
- * tracked, shut down (ifconfig(1M) will restart us on demand if
+ * tracked, shut down (ifconfig(8) will restart us on demand if
* interfaces are subsequently put into multipathing groups).
*/
if (adopt && phyint_instances == NULL)
diff --git a/usr/src/cmd/cmd-inet/usr.lib/in.mpathd/mpd_tables.c b/usr/src/cmd/cmd-inet/usr.lib/in.mpathd/mpd_tables.c
index 71aecb6970..231a7f7c5d 100644
--- a/usr/src/cmd/cmd-inet/usr.lib/in.mpathd/mpd_tables.c
+++ b/usr/src/cmd/cmd-inet/usr.lib/in.mpathd/mpd_tables.c
@@ -1444,7 +1444,7 @@ phyint_offline(struct phyint *pi, uint_t minred)
/*
* The interface is now offline, so stop probing it. Note that
- * if_mpadm(1M) will down the test addresses, after receiving a
+ * if_mpadm(8) will down the test addresses, after receiving a
* success reply from us. The routing socket message will then make us
* close the socket used for sending probes. But it is more logical
* that an offlined interface must not be probed, even if it has test
diff --git a/usr/src/cmd/cmd-inet/usr.lib/in.mpathd/net-ipmp b/usr/src/cmd/cmd-inet/usr.lib/in.mpathd/net-ipmp
index be4263a74b..565b80e374 100644
--- a/usr/src/cmd/cmd-inet/usr.lib/in.mpathd/net-ipmp
+++ b/usr/src/cmd/cmd-inet/usr.lib/in.mpathd/net-ipmp
@@ -18,7 +18,7 @@
. /lib/svc/share/smf_include.sh
if [ -z "$SMF_FMRI" ]; then
- echo "this script can only be invoked by smf(5)"
+ echo "this script can only be invoked by smf(7)"
exit $SMF_EXIT_ERR_NOSMF
fi
diff --git a/usr/src/cmd/cmd-inet/usr.lib/in.mpathd/network-ipmp.xml b/usr/src/cmd/cmd-inet/usr.lib/in.mpathd/network-ipmp.xml
index 282bf5b4df..f3c8b1a7f0 100644
--- a/usr/src/cmd/cmd-inet/usr.lib/in.mpathd/network-ipmp.xml
+++ b/usr/src/cmd/cmd-inet/usr.lib/in.mpathd/network-ipmp.xml
@@ -71,7 +71,7 @@
</loctext>
</common_name>
<documentation>
- <manpage title='in.mpathd' section='1M' />
+ <manpage title='in.mpathd' section='8' />
</documentation>
</template>
</service>
diff --git a/usr/src/cmd/cmd-inet/usr.lib/in.ndpd/ndp.xml b/usr/src/cmd/cmd-inet/usr.lib/in.ndpd/ndp.xml
index 3c9afca895..4459def5c8 100644
--- a/usr/src/cmd/cmd-inet/usr.lib/in.ndpd/ndp.xml
+++ b/usr/src/cmd/cmd-inet/usr.lib/in.ndpd/ndp.xml
@@ -23,8 +23,6 @@
CDDL HEADER END
- ident "%Z%%M% %I% %E% SMI"
-
NOTE: This service manifest is not editable; its contents will
be overwritten by package or patch operations, including
operating system upgrade. Make customizations in a different
@@ -78,7 +76,7 @@
value='solaris.smf.manage.routing' />
</property_group>
- <!-- Properties in this group are used by routeadm (1M) -->
+ <!-- Properties in this group are used by routeadm(8) -->
<property_group name='routeadm' type='application'>
<stability value='Unstable' />
<!--
@@ -96,7 +94,7 @@
</property_group>
- <!-- Properties in this group are modifiable via routeadm (1M) -->
+ <!-- Properties in this group are modifiable via routeadm(8) -->
<property_group name='routing' type='application'>
<stability value='Evolving' />
@@ -121,7 +119,7 @@
</loctext>
</common_name>
<documentation>
- <manpage title='in.ndpd' section='1M'
+ <manpage title='in.ndpd' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/cmd-inet/usr.lib/in.ripngd/ripng.xml b/usr/src/cmd/cmd-inet/usr.lib/in.ripngd/ripng.xml
index 297baaddf5..fbfc77bee1 100644
--- a/usr/src/cmd/cmd-inet/usr.lib/in.ripngd/ripng.xml
+++ b/usr/src/cmd/cmd-inet/usr.lib/in.ripngd/ripng.xml
@@ -23,8 +23,6 @@
CDDL HEADER END
- ident "%Z%%M% %I% %E% SMI"
-
NOTE: This service manifest is not editable; its contents will
be overwritten by package or patch operations, including
operating system upgrade. Make customizations in a different
@@ -97,7 +95,7 @@ privileges='basic,proc_owner,proc_fork,proc_exec,proc_info,proc_session,file_cho
value='solaris.smf.manage.routing' />
</property_group>
- <!-- Properties in this group are used by routeadm (1M) -->
+ <!-- Properties in this group are used by routeadm(8) -->
<property_group name='routeadm' type='application'>
<stability value='Unstable' />
<!-- Identifies service as a routing service -->
@@ -107,8 +105,8 @@ privileges='basic,proc_owner,proc_fork,proc_exec,proc_info,proc_session,file_cho
<propval name='value_authorization' type='astring'
value='solaris.smf.value.routing' />
</property_group>
-
- <!-- Properties in this group are modifiable via routeadm (1M) -->
+
+ <!-- Properties in this group are modifiable via routeadm(8) -->
<property_group name='routing' type='application'>
<stability value='Evolving' />
@@ -129,7 +127,7 @@ privileges='basic,proc_owner,proc_fork,proc_exec,proc_info,proc_session,file_cho
<!-- Equivalent to optional logging file -->
<propval name='log_file' type='astring' value='' />
-
+
<propval name='value_authorization' type='astring'
value='solaris.smf.value.routing' />
</property_group>
@@ -141,7 +139,7 @@ privileges='basic,proc_owner,proc_fork,proc_exec,proc_info,proc_session,file_cho
</loctext>
</common_name>
<documentation>
- <manpage title='in.ripngd' section='1M'
+ <manpage title='in.ripngd' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/cmd-inet/usr.lib/inetd/inetd-upgrade.sh b/usr/src/cmd/cmd-inet/usr.lib/inetd/inetd-upgrade.sh
index eb18c250aa..eaef116d36 100644
--- a/usr/src/cmd/cmd-inet/usr.lib/inetd/inetd-upgrade.sh
+++ b/usr/src/cmd/cmd-inet/usr.lib/inetd/inetd-upgrade.sh
@@ -97,7 +97,7 @@ n
s/'//g
p
}
-/from the inetd.conf(4) format line/{
+/from the inetd.conf(5) format line/{
n
p
}
diff --git a/usr/src/cmd/cmd-inet/usr.lib/inetd/inetd-upgrade.xml b/usr/src/cmd/cmd-inet/usr.lib/inetd/inetd-upgrade.xml
index 1944cdf2d6..a5c1a32c37 100644
--- a/usr/src/cmd/cmd-inet/usr.lib/inetd/inetd-upgrade.xml
+++ b/usr/src/cmd/cmd-inet/usr.lib/inetd/inetd-upgrade.xml
@@ -23,8 +23,6 @@
CDDL HEADER END
- ident "%Z%%M% %I% %E% SMI"
-
NOTE: This service manifest is not editable; its contents will
be overwritten by package or patch operations, including
operating system upgrade. Make customizations in a different
@@ -101,7 +99,7 @@ inetd-upgrade handles the upgrade of old inetd.conf entries to SMF service insta
</loctext>
</description>
<documentation>
- <manpage title='inetd' section='1M'
+ <manpage title='inetd' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/cmd-inet/usr.lib/inetd/inetd.c b/usr/src/cmd/cmd-inet/usr.lib/inetd/inetd.c
index f1f99ff74d..1ded291af9 100644
--- a/usr/src/cmd/cmd-inet/usr.lib/inetd/inetd.c
+++ b/usr/src/cmd/cmd-inet/usr.lib/inetd/inetd.c
@@ -3809,23 +3809,23 @@ static void
legacy_usage(void)
{
(void) fprintf(stderr,
- "inetd is now an smf(5) managed service and can no longer be run "
+ "inetd is now an smf(7) managed service and can no longer be run "
"from the\n"
- "command line. To enable or disable inetd refer to svcadm(1M) on\n"
+ "command line. To enable or disable inetd refer to svcadm(8) on\n"
"how to enable \"%s\", the inetd instance.\n"
"\n"
"The traditional inetd command line option mappings are:\n"
"\t-d : there is no supported debug output\n"
"\t-s : inetd is only runnable from within the SMF\n"
- "\t-t : See inetadm(1M) on how to enable TCP tracing\n"
- "\t-r : See inetadm(1M) on how to set a failure rate\n"
+ "\t-t : See inetadm(8) on how to enable TCP tracing\n"
+ "\t-r : See inetadm(8) on how to set a failure rate\n"
"\n"
- "To specify an alternative configuration file see svccfg(1M)\n"
+ "To specify an alternative configuration file see svccfg(8)\n"
"for how to modify the \"%s/%s\" string type property of\n"
"the inetd instance, and modify it according to the syntax:\n"
"\"%s [alt_config_file] %%m\".\n"
"\n"
- "For further information on inetd see inetd(1M).\n",
+ "For further information on inetd see inetd(8).\n",
INETD_INSTANCE_FMRI, START_METHOD_ARG, SCF_PROPERTY_EXEC,
INETD_PATH);
}
diff --git a/usr/src/cmd/cmd-inet/usr.lib/inetd/inetd.xml b/usr/src/cmd/cmd-inet/usr.lib/inetd/inetd.xml
index f7ff3c95bc..322cca73d6 100644
--- a/usr/src/cmd/cmd-inet/usr.lib/inetd/inetd.xml
+++ b/usr/src/cmd/cmd-inet/usr.lib/inetd/inetd.xml
@@ -134,7 +134,7 @@
<stability value='Evolving' />
<propval name='max_con_rate' type='integer' value='-1' />
<propval name='con_rate_offline' type='integer' value='-1' />
- <propval name='max_copies' type='integer' value='-1' />
+ <propval name='max_copies' type='integer' value='-1' />
<propval name='failrate_cnt' type='integer' value='40' />
<propval name='failrate_interval' type='integer' value='60' />
<propval name='inherit_env' type='boolean' value='true' />
@@ -177,9 +177,9 @@ services.
</loctext>
</description>
<documentation>
- <manpage title='inetd' section='1M'
+ <manpage title='inetd' section='8'
manpath='/usr/share/man' />
- <manpage title='inetadm' section='1M'
+ <manpage title='inetadm' section='8'
manpath='/usr/share/man' />
</documentation>
@@ -908,7 +908,7 @@ method context resource pool
<description>
<loctext xml:lang='C'>
The resource pool name on which to launch the method. :default can be used
-as a token to indicate the pool specified in the project(4) entry given in
+as a token to indicate the pool specified in the project(5) entry given in
the project attribute.
</loctext>
</description>
@@ -969,7 +969,7 @@ method credential privileges
</common_name>
<description>
<loctext xml:lang='C'>
-An optional string specifying the privilege set as defined in privileges(5).
+An optional string specifying the privilege set as defined in privileges(7).
</loctext>
</description>
<cardinality min='1' max='1' />
@@ -985,7 +985,7 @@ method credential limit privilege set
<description>
<loctext xml:lang='C'>
An optional string specifying the limit privilege set as defined in
-privileges(5).
+privileges(7).
</loctext>
</description>
<cardinality min='1' max='1' />
@@ -1007,13 +1007,13 @@ user, group, privileges, and limit_privileges properties.
required='false'>
<common_name>
<loctext xml:lang='C'>
-method profile RBAC profile specification
+method profile RBAC profile specification
</loctext>
</common_name>
<description>
<loctext xml:lang='C'>
The name of an RBAC (role-based access control) profile which, along with the
-method executable, identifies an entry in exec_attr(4).
+method executable, identifies an entry in exec_attr(5).
</loctext>
</description>
<cardinality min='1' max='1' />
diff --git a/usr/src/cmd/cmd-inet/usr.lib/mdnsd/multicast.xml b/usr/src/cmd/cmd-inet/usr.lib/mdnsd/multicast.xml
index a6c1901c97..e2f7e50875 100644
--- a/usr/src/cmd/cmd-inet/usr.lib/mdnsd/multicast.xml
+++ b/usr/src/cmd/cmd-inet/usr.lib/mdnsd/multicast.xml
@@ -90,9 +90,9 @@
<!-- to start stop mdns service -->
<property_group name='general' type='framework'>
- <propval name='action_authorization' type='astring'
+ <propval name='action_authorization' type='astring'
value='solaris.smf.manage.mdns' />
- <propval name='value_authorization' type='astring'
+ <propval name='value_authorization' type='astring'
value='solaris.smf.manage.mdns' />
</property_group>
@@ -140,7 +140,7 @@
<propval name='value_authorization' type='astring'
value='solaris.smf.value.firewall.config' />
</property_group>
-
+
</instance>
<stability value='Unstable' />
@@ -152,7 +152,7 @@
</loctext>
</common_name>
<documentation>
- <manpage title='mdnsd' section='1M' />
+ <manpage title='mdnsd' section='8' />
<doc_link name='Service Discovery OpenSolaris Project Page'
uri="http://opensolaris.org/os/project/nwam/service-discovery/"/>
</documentation>
diff --git a/usr/src/cmd/cmd-inet/usr.lib/ncaconfd/ncaconfd.c b/usr/src/cmd/cmd-inet/usr.lib/ncaconfd/ncaconfd.c
index 06972f53dc..8115784a3a 100644
--- a/usr/src/cmd/cmd-inet/usr.lib/ncaconfd/ncaconfd.c
+++ b/usr/src/cmd/cmd-inet/usr.lib/ncaconfd/ncaconfd.c
@@ -24,8 +24,6 @@
* Use is subject to license terms.
*/
-#pragma ident "%Z%%M% %I% %E% SMI"
-
#include <sys/types.h>
#include <sys/stat.h>
#include <sys/tihdr.h>
@@ -155,7 +153,7 @@ logwarn(char *fmt, ...)
}
/*
- * Print out debugging info. Note that syslogd(1M) should be configured to
+ * Print out debugging info. Note that syslogd(8) should be configured to
* take ordinary debug info for it to get this kind of info.
*/
/*PRINTFLIKE1*/
@@ -996,7 +994,7 @@ get_router_ether_addr(mib_item_t *item, boolean_t *changed)
/*
* Ping all default routers. It just uses system(3F) to call
- * ping(1M) to do the job...
+ * ping(8) to do the job...
*/
static void
ping_them(void)
diff --git a/usr/src/cmd/cmd-inet/usr.lib/slpd/slp.xml b/usr/src/cmd/cmd-inet/usr.lib/slpd/slp.xml
index 37b6499da3..577fba071a 100644
--- a/usr/src/cmd/cmd-inet/usr.lib/slpd/slp.xml
+++ b/usr/src/cmd/cmd-inet/usr.lib/slpd/slp.xml
@@ -28,8 +28,6 @@
be overwritten by package or patch operations, including
operating system upgrade. Make customizations in a different
file.
-
- ident "%Z%%M% %I% %E% SMI"
-->
<service_bundle type='manifest' name='SUNWslpr:slpd'>
@@ -96,9 +94,9 @@
</loctext>
</common_name>
<documentation>
- <manpage title='slpd' section='1M' />
- <manpage title='slp' section='7P' />
- <manpage title='slp.conf' section='4' />
+ <manpage title='slpd' section='8' />
+ <manpage title='slp' section='4P' />
+ <manpage title='slp.conf' section='5' />
</documentation>
</template>
diff --git a/usr/src/cmd/cmd-inet/usr.lib/vrrpd/vrrp.conf b/usr/src/cmd/cmd-inet/usr.lib/vrrpd/vrrp.conf
index cf8160d86f..b95bdf486a 100644
--- a/usr/src/cmd/cmd-inet/usr.lib/vrrpd/vrrp.conf
+++ b/usr/src/cmd/cmd-inet/usr.lib/vrrpd/vrrp.conf
@@ -24,4 +24,4 @@
#
# DO NOT EDIT OR PARSE THIS FILE!
#
-# Use the vrrpadm(1m) command to change the contents of this file.
+# Use the vrrpadm(8) command to change the contents of this file.
diff --git a/usr/src/cmd/cmd-inet/usr.lib/vrrpd/vrrp.xml b/usr/src/cmd/cmd-inet/usr.lib/vrrpd/vrrp.xml
index 5b95f40404..cc02197d12 100644
--- a/usr/src/cmd/cmd-inet/usr.lib/vrrpd/vrrp.xml
+++ b/usr/src/cmd/cmd-inet/usr.lib/vrrpd/vrrp.xml
@@ -2,7 +2,7 @@
<!DOCTYPE service_bundle SYSTEM "/usr/share/lib/xml/dtd/service_bundle.dtd.1">
<!--
CDDL HEADER START
-
+
The contents of this file are subject to the terms of the
Common Development and Distribution License (the "License").
You may not use this file except in compliance with the License.
@@ -86,9 +86,9 @@
<!-- to start/stop the VRRP service -->
<property_group name='general' type='framework'>
- <propval name='action_authorization' type='astring'
+ <propval name='action_authorization' type='astring'
value='solaris.smf.manage.vrrp' />
- <propval name='value_authorization' type='astring'
+ <propval name='value_authorization' type='astring'
value='solaris.smf.manage.vrrp' />
</property_group>
@@ -105,10 +105,10 @@
<loctext xml:lang='C'> VRRP service daemon
</loctext>
</common_name>
- <documentation>
- <manpage title='vrrpd' section='1M'
- manpath='/usr/share/man' />
- </documentation>
+ <documentation>
+ <manpage title='vrrpd' section='8'
+ manpath='/usr/share/man' />
+ </documentation>
</template>
</service>
diff --git a/usr/src/cmd/cmd-inet/usr.lib/vrrpd/vrrpd.c b/usr/src/cmd/cmd-inet/usr.lib/vrrpd/vrrpd.c
index 9269e9b94f..6f542ece96 100644
--- a/usr/src/cmd/cmd-inet/usr.lib/vrrpd/vrrpd.c
+++ b/usr/src/cmd/cmd-inet/usr.lib/vrrpd/vrrpd.c
@@ -685,7 +685,7 @@ daemon_init()
vrrp_log(VRRP_DBG0, "daemon_init()");
if (getenv("SMF_FMRI") == NULL) {
- vrrp_log(VRRP_ERR, "daemon_init(): vrrpd is an smf(5) managed "
+ vrrp_log(VRRP_ERR, "daemon_init(): vrrpd is an smf(7) managed "
"service and should not be run from the command line.");
return (-1);
}
diff --git a/usr/src/cmd/cmd-inet/usr.lib/vrrpd/vrrpd.xcl b/usr/src/cmd/cmd-inet/usr.lib/vrrpd/vrrpd.xcl
index f4e72616cc..7fb5116d4a 100644
--- a/usr/src/cmd/cmd-inet/usr.lib/vrrpd/vrrpd.xcl
+++ b/usr/src/cmd/cmd-inet/usr.lib/vrrpd/vrrpd.xcl
@@ -58,7 +58,7 @@ msgid "daemon_init"
msgid "setrlimit"
msgid "vrrpd_init"
msgid "iu_handle_events"
-msgid "smf(5)"
+msgid "smf(7)"
msgid "vrrpd_init"
msgid "dladm_open"
msgid "iu_tq_create"
diff --git a/usr/src/cmd/cmd-inet/usr.lib/wpad/wpa.xml b/usr/src/cmd/cmd-inet/usr.lib/wpad/wpa.xml
index 40ab72b46d..c096354b8c 100644
--- a/usr/src/cmd/cmd-inet/usr.lib/wpad/wpa.xml
+++ b/usr/src/cmd/cmd-inet/usr.lib/wpad/wpa.xml
@@ -23,8 +23,6 @@
CDDL HEADER END
- ident "%Z%%M% %I% %E% SMI"
-
NOTE: This service manifest is not editable; its contents will
be overwritten by package or patch operations, including
operating system upgrade. Make customizations in a different
@@ -86,7 +84,7 @@
</loctext>
</common_name>
<documentation>
- <manpage title='wpad' section='1M'
+ <manpage title='wpad' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/cmd-inet/usr.lib/wpad/wpa_supplicant.c b/usr/src/cmd/cmd-inet/usr.lib/wpad/wpa_supplicant.c
index 3fb8b133a7..8b243e705d 100644
--- a/usr/src/cmd/cmd-inet/usr.lib/wpad/wpa_supplicant.c
+++ b/usr/src/cmd/cmd-inet/usr.lib/wpad/wpa_supplicant.c
@@ -790,8 +790,8 @@ main(int argc, char *argv[])
if (!is_smf_context()) {
(void) fprintf(stderr,
- "wpad is an smf(5) managed service and cannot be run from "
- "the command line; please use dladm(1M).\n");
+ "wpad is an smf(7) managed service and cannot be run from "
+ "the command line; please use dladm(8).\n");
return (SMF_EXIT_ERR_NOSMF);
}
diff --git a/usr/src/cmd/cmd-inet/usr.sbin/comsat.xml b/usr/src/cmd/cmd-inet/usr.sbin/comsat.xml
index a66e18a02e..922cd84933 100644
--- a/usr/src/cmd/cmd-inet/usr.sbin/comsat.xml
+++ b/usr/src/cmd/cmd-inet/usr.sbin/comsat.xml
@@ -103,9 +103,9 @@ requested to be told when mail arrives.
</loctext>
</description>
<documentation>
- <manpage title='in.comsat' section='1M'
+ <manpage title='in.comsat' section='8'
manpath='/usr/share/man' />
- <manpage title='comsat' section='1M'
+ <manpage title='comsat' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/cmd-inet/usr.sbin/finger.xml b/usr/src/cmd/cmd-inet/usr.sbin/finger.xml
index 2c4281d84a..565eef962c 100644
--- a/usr/src/cmd/cmd-inet/usr.sbin/finger.xml
+++ b/usr/src/cmd/cmd-inet/usr.sbin/finger.xml
@@ -101,9 +101,9 @@ status and individual users.
</loctext>
</description>
<documentation>
- <manpage title='in.fingerd' section='1M'
+ <manpage title='in.fingerd' section='8'
manpath='/usr/share/man' />
- <manpage title='fingerd' section='1M'
+ <manpage title='fingerd' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/cmd-inet/usr.sbin/ifconfig/ifconfig.c b/usr/src/cmd/cmd-inet/usr.sbin/ifconfig/ifconfig.c
index 9da0ed811f..0475fad29f 100644
--- a/usr/src/cmd/cmd-inet/usr.sbin/ifconfig/ifconfig.c
+++ b/usr/src/cmd/cmd-inet/usr.sbin/ifconfig/ifconfig.c
@@ -86,8 +86,8 @@ typedef struct {
} if_appflags_t;
static const if_appflags_t if_appflags_tbl[] = {
- { "dhcpagent(1M)", IFF_DHCPRUNNING, 1 },
- { "in.ndpd(1M)", IFF_ADDRCONF, 3 },
+ { "dhcpagent(8)", IFF_DHCPRUNNING, 1 },
+ { "in.ndpd(8)", IFF_ADDRCONF, 3 },
{ NULL, 0, 0 }
};
@@ -643,7 +643,7 @@ ifconfig(int argc, char *argv[], int af, struct ifaddrs *ifa)
* sometimes two or more attributes must be set together. For
* example, setting an address without a netmask does not make sense.
* Yet they can be set separately for IPv4 address using the current
- * ifconfig(1M) syntax. The kernel then "infers" the correct netmask
+ * ifconfig(8) syntax. The kernel then "infers" the correct netmask
* using the deprecated "IP address classes." This is simply not
* correct.
*
@@ -660,7 +660,7 @@ ifconfig(int argc, char *argv[], int af, struct ifaddrs *ifa)
* it will use the working interface's address to do the query.
* It will be wrong now as we don't know the logical interface's name.
*
- * ifconfig(1M) is too overloaded and the code is so convoluted
+ * ifconfig(8) is too overloaded and the code is so convoluted
* that it is "safer" not to re-architect the code to fix the above
* issue, hence this "hack." We may be better off to have a new
* command with better syntax for configuring network interface
@@ -1074,7 +1074,7 @@ setifaddr(char *addr, int64_t param)
}
/*
- * The following functions are stolen from the ipseckey(1m) program.
+ * The following functions are stolen from the ipseckey(8) program.
* Perhaps they should be somewhere common, but for now, we just maintain
* two versions. We do this because of the different semantics for which
* algorithms we select ("requested" for ifconfig vs. "actual" for key).
@@ -2244,11 +2244,11 @@ again:
}
/*
- * If the interface being moved is under the control of `ipmgmtd(1M)'
+ * If the interface being moved is under the control of `ipmgmtd(8)'
* dameon then we should inform the daemon about this move, so that
* the daemon can delete the state associated with this interface.
*
- * This workaround is needed until the IPMP support in ipadm(1M).
+ * This workaround is needed until the IPMP support in ipadm(8).
*/
ipadm_if_move(iph, name);
diff --git a/usr/src/cmd/cmd-inet/usr.sbin/ilbadm/ilbadm.c b/usr/src/cmd/cmd-inet/usr.sbin/ilbadm/ilbadm.c
index 949fcc064c..67de6e31ba 100644
--- a/usr/src/cmd/cmd-inet/usr.sbin/ilbadm/ilbadm.c
+++ b/usr/src/cmd/cmd-inet/usr.sbin/ilbadm/ilbadm.c
@@ -50,7 +50,7 @@ ilbadm_errstr(ilbadm_status_t rc)
case ILBADM_ENOMEM:
return (gettext("memory allocation failure"));
case ILBADM_EINVAL:
- return (gettext("invalid value - refer to ilbadm(1M)"));
+ return (gettext("invalid value - refer to ilbadm(8)"));
case ILBADM_HCPRINT:
return (gettext("failed to print healthcheck values"));
case ILBADM_INVAL_AF:
@@ -63,7 +63,7 @@ ilbadm_errstr(ilbadm_status_t rc)
return (gettext("address is invalid"));
case ILBADM_INVAL_ARGS:
return (gettext("invalid/incompatible keywords - refer to"
- " ilbadm(1M)"));
+ " ilbadm(8)"));
case ILBADM_ENOSGNAME:
return (gettext("servergroup name missing"));
case ILBADM_ENORULE:
@@ -83,21 +83,21 @@ ilbadm_errstr(ilbadm_status_t rc)
return (gettext("operation type is invalid"));
case ILBADM_INVAL_KEYWORD:
return (gettext("keyword is invalid - please refer"
- " to ilbadm(1M)"));
+ " to ilbadm(8)"));
case ILBADM_ASSIGNREQ:
return (gettext("assignment '=' missing"));
case ILBADM_NORECURSIVE:
return (gettext("recursive import not allowed"));
case ILBADM_INVAL_COMMAND:
return (gettext("subcommand is invalid - please refer"
- " to ilbadm(1M)"));
+ " to ilbadm(8)"));
case ILBADM_ENOPROXY:
return (gettext("proxy-src is missing"));
case ILBADM_INVAL_PROXY:
return (gettext("proxy-src not allowed"));
case ILBADM_ENOOPTION:
return (gettext("mandatory argument(s) missing - refer"
- " to ilbadm(1M)"));
+ " to ilbadm(8)"));
case ILBADM_TOOMANYIPADDR:
return (gettext("address range contains more than 255"
" IP addresses"));
@@ -105,7 +105,7 @@ ilbadm_errstr(ilbadm_status_t rc)
return (gettext("could not export servergroup because"
" of lack of space"));
case ILBADM_INVAL_SYNTAX:
- return (gettext("syntax failure - refer to ilbadm(1M)"));
+ return (gettext("syntax failure - refer to ilbadm(8)"));
case ILBADM_NOKEYWORD_VAL:
return (gettext("missing value"));
case ILBADM_LIBERR:
diff --git a/usr/src/cmd/cmd-inet/usr.sbin/ilbadm/ilbadm_rules.c b/usr/src/cmd/cmd-inet/usr.sbin/ilbadm/ilbadm_rules.c
index f159a3b6d6..dad110a62f 100644
--- a/usr/src/cmd/cmd-inet/usr.sbin/ilbadm/ilbadm_rules.c
+++ b/usr/src/cmd/cmd-inet/usr.sbin/ilbadm/ilbadm_rules.c
@@ -1123,7 +1123,7 @@ ilbadm_create_rule(int argc, char *argv[])
if (optind >= argc) {
ilbadm_err(gettext("missing mandatory arguments - please refer"
" to 'ilbadm create-rule' subcommand description in"
- " ilbadm(1M)"));
+ " ilbadm(8)"));
rc = ILBADM_LIBERR;
goto out;
diff --git a/usr/src/cmd/cmd-inet/usr.sbin/ilbadm/ilbadm_sg.c b/usr/src/cmd/cmd-inet/usr.sbin/ilbadm/ilbadm_sg.c
index 8a0d92bbd7..a27ac5c95a 100644
--- a/usr/src/cmd/cmd-inet/usr.sbin/ilbadm/ilbadm_sg.c
+++ b/usr/src/cmd/cmd-inet/usr.sbin/ilbadm/ilbadm_sg.c
@@ -467,7 +467,7 @@ ilbadm_create_servergroup(int argc, char *argv[])
if (optind >= argc) {
ilbadm_err(gettext("missing mandatory arguments - please refer"
" to 'create-servergroup' subcommand"
- " description in ilbadm(1M)"));
+ " description in ilbadm(8)"));
rc = ILBADM_LIBERR;
goto out;
}
@@ -546,7 +546,7 @@ ilbadm_add_server_to_group(int argc, char **argv)
if (optind >= argc) {
ilbadm_err(gettext("missing mandatory arguments - please refer"
- " to 'add-server' subcommand description in ilbadm(1M)"));
+ " to 'add-server' subcommand description in ilbadm(8)"));
rc = ILBADM_LIBERR;
goto out;
}
diff --git a/usr/src/cmd/cmd-inet/usr.sbin/in.rdisc/rdisc.xml b/usr/src/cmd/cmd-inet/usr.sbin/in.rdisc/rdisc.xml
index eb223ee0e4..2ef0b8701b 100644
--- a/usr/src/cmd/cmd-inet/usr.sbin/in.rdisc/rdisc.xml
+++ b/usr/src/cmd/cmd-inet/usr.sbin/in.rdisc/rdisc.xml
@@ -78,7 +78,7 @@ privileges='basic,proc_owner,proc_fork,proc_exec,proc_info,proc_session,file_cho
value='solaris.smf.manage.routing' />
</property_group>
- <!-- Properties in this group are used by routeadm (1M) -->
+ <!-- Properties in this group are used by routeadm(8) -->
<property_group name='routeadm' type='application'>
<stability value='Unstable' />
<propval name='protocol' type='astring' value='ipv4' />
@@ -89,7 +89,7 @@ privileges='basic,proc_owner,proc_fork,proc_exec,proc_info,proc_session,file_cho
</property_group>
- <!-- Properties in this group are modifiable via routeadm (1M) -->
+ <!-- Properties in this group are modifiable via routeadm(8) -->
<property_group name='routing' type='application'>
<stability value='Evolving' />
@@ -102,7 +102,7 @@ privileges='basic,proc_owner,proc_fork,proc_exec,proc_info,proc_session,file_cho
<!-- Equivalent to -r option if true -->
<propval name='act_as_router' type='boolean' value='false' />
- <!-- Equivalent to -a option if true -->
+ <!-- Equivalent to -a option if true -->
<propval name='accept_all' type='boolean' value='false' />
<!-- Equivalent to -p preference option if set -->
@@ -127,7 +127,7 @@ privileges='basic,proc_owner,proc_fork,proc_exec,proc_info,proc_session,file_cho
</loctext>
</common_name>
<documentation>
- <manpage title='in.rdisc' section='1M'
+ <manpage title='in.rdisc' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/cmd-inet/usr.sbin/in.routed/route.xml b/usr/src/cmd/cmd-inet/usr.sbin/in.routed/route.xml
index 530ec5bda7..e9d73eb57f 100644
--- a/usr/src/cmd/cmd-inet/usr.sbin/in.routed/route.xml
+++ b/usr/src/cmd/cmd-inet/usr.sbin/in.routed/route.xml
@@ -80,7 +80,7 @@ privileges='basic,proc_owner,proc_fork,proc_exec,proc_info,proc_session,file_cho
value='solaris.smf.manage.routing' />
</property_group>
- <!-- Properties in this group are used by routeadm (1M) -->
+ <!-- Properties in this group are used by routeadm(8) -->
<property_group name='routeadm' type='application'>
<stability value='Unstable' />
<propval name='protocol' type='astring' value='ipv4' />
@@ -90,7 +90,7 @@ privileges='basic,proc_owner,proc_fork,proc_exec,proc_info,proc_session,file_cho
value='solaris.smf.value.routing' />
</property_group>
- <!-- Properties in this group are modifiable via routeadm (1M) -->
+ <!-- Properties in this group are modifiable via routeadm(8) -->
<property_group name='routing' type='application'>
<stability value='Evolving' />
@@ -122,7 +122,7 @@ privileges='basic,proc_owner,proc_fork,proc_exec,proc_info,proc_session,file_cho
<propval name='quiet_mode' type='boolean' value='false' />
<!-- Equivalent to -s option if true -->
- <propval name='supply_routes' type='boolean' value='false' />
+ <propval name='supply_routes' type='boolean' value='false' />
<!-- Equivalent to -S option if true -->
<propval name='default_routes_only' type='boolean'
@@ -162,7 +162,7 @@ privileges='basic,proc_owner,proc_fork,proc_exec,proc_info,proc_session,file_cho
</loctext>
</common_name>
<documentation>
- <manpage title='in.routed' section='1M'
+ <manpage title='in.routed' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/cmd-inet/usr.sbin/in.talkd/talk.xml b/usr/src/cmd/cmd-inet/usr.sbin/in.talkd/talk.xml
index c4d2494095..29b70d09cf 100644
--- a/usr/src/cmd/cmd-inet/usr.sbin/in.talkd/talk.xml
+++ b/usr/src/cmd/cmd-inet/usr.sbin/in.talkd/talk.xml
@@ -102,9 +102,9 @@
</loctext>
</description>
<documentation>
- <manpage title='in.talkd' section='1M'
+ <manpage title='in.talkd' section='8'
manpath='/usr/share/man' />
- <manpage title='talkd' section='1M'
+ <manpage title='talkd' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/cmd-inet/usr.sbin/in.telnetd.c b/usr/src/cmd/cmd-inet/usr.sbin/in.telnetd.c
index bbd38a551c..08ad200c45 100644
--- a/usr/src/cmd/cmd-inet/usr.sbin/in.telnetd.c
+++ b/usr/src/cmd/cmd-inet/usr.sbin/in.telnetd.c
@@ -488,7 +488,7 @@ rd_and_store_forwarded_creds(krb5_context context,
if ((retval = krb5_cc_close(context, ccache)) != 0)
goto cleanup;
- /* Register with ktkt_warnd(1M) */
+ /* Register with ktkt_warnd(8) */
if ((retval = krb5_unparse_name(context, (*creds)->client,
&client_name)) != 0)
goto cleanup;
@@ -496,11 +496,11 @@ rd_and_store_forwarded_creds(krb5_context context,
if (kwarn_add_warning(client_name, (*creds)->times.endtime) != 0) {
syslog(LOG_AUTH|LOG_NOTICE,
"rd_and_store_forwarded_creds: kwarn_add_warning"
- " failed: ktkt_warnd(1M) down? ");
+ " failed: ktkt_warnd(8) down? ");
if (auth_debug)
(void) fprintf(stderr,
"kwarn_add_warning failed:"
- " ktkt_warnd(1M) down?\n");
+ " ktkt_warnd(8) down?\n");
}
free(client_name);
client_name = NULL;
diff --git a/usr/src/cmd/cmd-inet/usr.sbin/inetconv/inetconv.c b/usr/src/cmd/cmd-inet/usr.sbin/inetconv/inetconv.c
index 6419f9e074..376454019f 100644
--- a/usr/src/cmd/cmd-inet/usr.sbin/inetconv/inetconv.c
+++ b/usr/src/cmd/cmd-inet/usr.sbin/inetconv/inetconv.c
@@ -24,8 +24,8 @@
*/
/*
- * inetconv - convert inetd.conf entries into smf(5) service manifests,
- * import them into smf(5) repository
+ * inetconv - convert inetd.conf entries into smf(7) service manifests,
+ * import them into smf(7) repository
*/
#include <sys/types.h>
@@ -115,7 +115,7 @@ static const char xml_comment[] =
"<!--\n"
" Service manifest for the %s service.\n"
"\n"
-" Generated by inetconv(1M) from inetd.conf(4).\n"
+" Generated by inetconv(8) from inetd.conf(5).\n"
"-->\n\n";
static const char xml_service_bundle[] =
diff --git a/usr/src/cmd/cmd-inet/usr.sbin/ipmpstat/ipmpstat.c b/usr/src/cmd/cmd-inet/usr.sbin/ipmpstat/ipmpstat.c
index c9cbade079..a5d8f79bc4 100644
--- a/usr/src/cmd/cmd-inet/usr.sbin/ipmpstat/ipmpstat.c
+++ b/usr/src/cmd/cmd-inet/usr.sbin/ipmpstat/ipmpstat.c
@@ -280,7 +280,7 @@ main(int argc, char **argv)
die_ipmperr(err, "cannot create IPMP handle");
if (ipmp_ping_daemon(ih) != IPMP_SUCCESS)
- die("cannot contact in.mpathd(1M) -- is IPMP in use?\n");
+ die("cannot contact in.mpathd(8) -- is IPMP in use?\n");
/*
* If we've been asked to display probes, then call the probe output
diff --git a/usr/src/cmd/cmd-inet/usr.sbin/ipsecutils/ikeadm.c b/usr/src/cmd/cmd-inet/usr.sbin/ipsecutils/ikeadm.c
index e6257c6184..5ca927ca40 100644
--- a/usr/src/cmd/cmd-inet/usr.sbin/ipsecutils/ikeadm.c
+++ b/usr/src/cmd/cmd-inet/usr.sbin/ipsecutils/ikeadm.c
@@ -2253,7 +2253,7 @@ print_defaults(char *label, char *description, char *unit,
* two ike_defaults_t's, the first contains the hard coded defaults, the second
* contains the actual values used. If these differ, then the defaults have been
* changed via a config file entry. Note that "-" indicates this default
- * is not tunable via ike.config(4) or is system wide tunable.
+ * is not tunable via ike.config(5) or is system wide tunable.
*/
static void
do_print_defaults(ike_defaults_t *dp)
diff --git a/usr/src/cmd/cmd-inet/usr.sbin/ipsecutils/ipsecalgs.xml b/usr/src/cmd/cmd-inet/usr.sbin/ipsecutils/ipsecalgs.xml
index cdf27133de..4d620d059d 100644
--- a/usr/src/cmd/cmd-inet/usr.sbin/ipsecutils/ipsecalgs.xml
+++ b/usr/src/cmd/cmd-inet/usr.sbin/ipsecutils/ipsecalgs.xml
@@ -113,7 +113,7 @@
svcadm mark <state> ipsecalgs
svcadm clear ipsecalgs
- see auths(1) and user_attr(4)-->
+ see auths(1) and user_attr(5)-->
<propval
name='action_authorization'
@@ -125,7 +125,7 @@
svcadm disable ipsecalgs
svcadm enable ipsecalgs
- see auths(1) and user_attr(4)-->
+ see auths(1) and user_attr(5)-->
<propval
name='value_authorization'
type='astring'
@@ -158,7 +158,7 @@
<documentation>
<manpage
title='ipsecalgs'
- section='1M'
+ section='8'
manpath='/usr/share/man'
/>
</documentation>
diff --git a/usr/src/cmd/cmd-inet/usr.sbin/ipsecutils/ipsecconf.c b/usr/src/cmd/cmd-inet/usr.sbin/ipsecutils/ipsecconf.c
index e8203530b4..fc94afe658 100644
--- a/usr/src/cmd/cmd-inet/usr.sbin/ipsecutils/ipsecconf.c
+++ b/usr/src/cmd/cmd-inet/usr.sbin/ipsecutils/ipsecconf.c
@@ -1341,7 +1341,7 @@ main(int argc, char *argv[])
boolean_t replace_policy = B_FALSE;
char *smf_warning = gettext(
- "\n\tIPsec policy should be managed using smf(5). Modifying\n"
+ "\n\tIPsec policy should be managed using smf(7). Modifying\n"
"\tthe IPsec policy from the command line while the 'policy'\n"
"\tservice is enabled could result in an inconsistent\n"
"\tsecurity policy.\n\n");
@@ -5247,7 +5247,7 @@ ipsec_conf_add(boolean_t just_check, boolean_t smf_managed, boolean_t replace)
/*
* Treat the non-existence of a policy file as a special
- * case when ipsecconf is being managed by smf(5).
+ * case when ipsecconf is being managed by smf(7).
* The assumption is the administrator has not yet
* created a policy file, this should not force the service
* into maintenance mode.
diff --git a/usr/src/cmd/cmd-inet/usr.sbin/ipsecutils/ipseckey.c b/usr/src/cmd/cmd-inet/usr.sbin/ipsecutils/ipseckey.c
index 9667fa4047..cbf429a3e7 100644
--- a/usr/src/cmd/cmd-inet/usr.sbin/ipsecutils/ipseckey.c
+++ b/usr/src/cmd/cmd-inet/usr.sbin/ipsecutils/ipseckey.c
@@ -191,7 +191,7 @@ handle_errors(char *ep, char *ebuf, boolean_t fatal, boolean_t done)
if (ep != NULL) {
if (my_fmri == NULL) {
/*
- * For now suppress the errors when run from smf(5)
+ * For now suppress the errors when run from smf(7)
* because potentially sensitive information could
* end up in a publicly readable logfile.
*/
@@ -1093,7 +1093,7 @@ dodump(int satype, FILE *ofile)
(void) fprintf(ofile,
gettext("# This key file was generated by the"));
(void) fprintf(ofile,
- gettext(" ipseckey(1m) command's 'save' feature.\n\n"));
+ gettext(" ipseckey(8) command's 'save' feature.\n\n"));
}
msg_init(msg, SADB_DUMP, (uint8_t)satype);
rc = key_write(keysock, msg, sizeof (*msg));
@@ -3590,7 +3590,7 @@ main(int argc, char *argv[])
(void) textdomain(TEXT_DOMAIN);
/*
- * Check to see if the command is being run from smf(5).
+ * Check to see if the command is being run from smf(7).
*/
my_fmri = getenv("SMF_FMRI");
@@ -3649,7 +3649,7 @@ main(int argc, char *argv[])
* this file if the file is root owned and only readable
* by privileged users. If the command is being run by
* the administrator, issue a warning, if this is run by
- * smf(5) (IE: boot time) and the permissions are too
+ * smf(7) (IE: boot time) and the permissions are too
* open, we will fail, the SMF service will end up in
* maintenace mode. The check is made with fstat() to
* eliminate any possible TOT to TOU window.
@@ -3719,7 +3719,7 @@ main(int argc, char *argv[])
}
/*
- * When run from smf(5) flush any existing SA's first
+ * When run from smf(7) flush any existing SA's first
* otherwise you will end up in maintenance mode.
*/
if ((my_fmri != NULL) && readfile) {
diff --git a/usr/src/cmd/cmd-inet/usr.sbin/ipsecutils/manual-key.xml b/usr/src/cmd/cmd-inet/usr.sbin/ipsecutils/manual-key.xml
index d1dac2b94c..fb4fd47374 100644
--- a/usr/src/cmd/cmd-inet/usr.sbin/ipsecutils/manual-key.xml
+++ b/usr/src/cmd/cmd-inet/usr.sbin/ipsecutils/manual-key.xml
@@ -23,8 +23,6 @@
CDDL HEADER END
- ident "%Z%%M% %I% %E% SMI"
-
NOTE: This service manifest is not editable; its contents will
be overwritten by package or patch operations, including
operating system upgrade. Make customizations in a different
@@ -86,7 +84,7 @@
<!-- To prevent ipseckey generating warnings about duplicate
SAs when the service is refreshed, ipseckey will flush the
- existing SAs when its called from smf(5). -->
+ existing SAs when its called from smf(7). -->
<exec_method
type='method'
@@ -110,7 +108,7 @@
svcadm mark <state> manual-key
svcadm clear manual-key
- see auths(1) and user_attr(4)-->
+ see auths(1) and user_attr(5)-->
<propval
name='action_authorization'
@@ -122,7 +120,7 @@
svcadm disable manual-key
svcadm enable manual-key
- see auths(1) and user_attr(4)-->
+ see auths(1) and user_attr(5)-->
<propval
name='value_authorization'
@@ -132,8 +130,8 @@
</property_group>
<!-- The properties defined below can be changed by a user
- with 'solaris.smf.value.ipsec' authorization using the
- svccfg(1M) command.
+ with 'solaris.smf.value.ipsec' authorization using the
+ svccfg(8) command.
EG:
@@ -183,7 +181,7 @@
</loctext>
</description>
<documentation>
- <manpage title='ipseckey' section='1M'
+ <manpage title='ipseckey' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/cmd-inet/usr.sbin/ipsecutils/policy.xml b/usr/src/cmd/cmd-inet/usr.sbin/ipsecutils/policy.xml
index 297e48d1b4..d63c65c3a4 100644
--- a/usr/src/cmd/cmd-inet/usr.sbin/ipsecutils/policy.xml
+++ b/usr/src/cmd/cmd-inet/usr.sbin/ipsecutils/policy.xml
@@ -102,7 +102,7 @@
svcadm mark <state> policy
svcadm clear policy
- see auths(1) and user_attr(4)-->
+ see auths(1) and user_attr(5)-->
<propval
name='action_authorization'
@@ -113,7 +113,7 @@
svcadm disable policy
svcadm enable policy
- see auths(1) and user_attr(4)-->
+ see auths(1) and user_attr(5)-->
<propval
name='value_authorization'
@@ -123,8 +123,8 @@
</property_group>
<!-- The properties defined below can be changed by a user
- with 'solaris.smf.value.ipsec' authorization using the
- svccfg(1M) command.
+ with 'solaris.smf.value.ipsec' authorization using the
+ svccfg(8) command.
EG:
@@ -176,7 +176,7 @@
</loctext>
</description>
<documentation>
- <manpage title='ipsecconf' section='1M'
+ <manpage title='ipsecconf' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/cmd-inet/usr.sbin/kssl/kssladm/kssladm.c b/usr/src/cmd/cmd-inet/usr.sbin/kssl/kssladm/kssladm.c
index c2978c564f..7eab57d0cc 100644
--- a/usr/src/cmd/cmd-inet/usr.sbin/kssl/kssladm/kssladm.c
+++ b/usr/src/cmd/cmd-inet/usr.sbin/kssl/kssladm/kssladm.c
@@ -23,8 +23,6 @@
* Use is subject to license terms.
*/
-#pragma ident "%Z%%M% %I% %E% SMI"
-
#include <ctype.h>
#include <stdio.h>
#include <stdlib.h>
@@ -39,10 +37,10 @@
/*
- * kssladm(1M)
+ * kssladm(8)
*
* Command to manage the entries in kernel SSL proxy table. This is
- * a private command called indirectly from ksslcfg(1M).
+ * a private command called indirectly from ksslcfg(8).
*/
boolean_t verbose = B_FALSE;
diff --git a/usr/src/cmd/cmd-inet/usr.sbin/kssl/ksslcfg/kssl-proxy.xml b/usr/src/cmd/cmd-inet/usr.sbin/kssl/ksslcfg/kssl-proxy.xml
index e2be94717c..3728239974 100644
--- a/usr/src/cmd/cmd-inet/usr.sbin/kssl/ksslcfg/kssl-proxy.xml
+++ b/usr/src/cmd/cmd-inet/usr.sbin/kssl/ksslcfg/kssl-proxy.xml
@@ -40,7 +40,7 @@
grouping='require_all'
restart_on='restart'
type='service'>
- <service_fmri value='svc:/network/socket-filter:kssl' />
+ <service_fmri value='svc:/network/socket-filter:kssl' />
</dependency>
<dependency
@@ -72,7 +72,7 @@
</loctext>
</common_name>
<documentation>
- <manpage title='ksslcfg' section='1M'
+ <manpage title='ksslcfg' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/cmd-inet/usr.sbin/kssl/ksslcfg/ksslcfg.c b/usr/src/cmd/cmd-inet/usr.sbin/kssl/ksslcfg/ksslcfg.c
index 8b9a33349d..84336d0923 100644
--- a/usr/src/cmd/cmd-inet/usr.sbin/kssl/ksslcfg/ksslcfg.c
+++ b/usr/src/cmd/cmd-inet/usr.sbin/kssl/ksslcfg/ksslcfg.c
@@ -38,10 +38,10 @@
#include "ksslcfg.h"
/*
- * ksslcfg(1M)
+ * ksslcfg(8)
*
- * ksslcfg manages smf(5) instances for the Kernel SSL proxy module.
- * It makes use of kssladm(1M) which does the grunt work.
+ * ksslcfg manages smf(7) instances for the Kernel SSL proxy module.
+ * It makes use of kssladm(8) which does the grunt work.
*/
/*
diff --git a/usr/src/cmd/cmd-inet/usr.sbin/login.xml b/usr/src/cmd/cmd-inet/usr.sbin/login.xml
index f21084da5f..ba4d875d5f 100644
--- a/usr/src/cmd/cmd-inet/usr.sbin/login.xml
+++ b/usr/src/cmd/cmd-inet/usr.sbin/login.xml
@@ -45,7 +45,7 @@
<service_fmri value='svc:/network/inetd:default' />
</restarter>
- <property_group name='inetd' type='framework'>
+ <property_group name='inetd' type='framework'>
<stability value='Evolving' />
<propval name='endpoint_type' type='astring' value='stream' />
<propval name='wait' type='boolean' value='false' />
@@ -87,7 +87,7 @@
value='solaris.smf.value.firewall.config' />
</property_group>
- <property_group name='inetd' type='framework'>
+ <property_group name='inetd' type='framework'>
<propval name='name' type='astring' value='login' />
<propval name='proto' type='astring' value='tcp6' />
</property_group>
@@ -134,7 +134,7 @@
</property_group>
<!-- Only works over IPv4 at the moment -->
- <property_group name='inetd' type='framework'>
+ <property_group name='inetd' type='framework'>
<propval name='name' type='astring' value='klogin' />
<propval name='proto' type='astring' value='tcp' />
</property_group>
@@ -182,7 +182,7 @@ remote login with Kerberos authentication
</property_group>
<!-- Only works over IPv4 at the moment -->
- <property_group name='inetd' type='framework'>
+ <property_group name='inetd' type='framework'>
<propval name='name' type='astring' value='eklogin' />
<propval name='proto' type='astring' value='tcp' />
</property_group>
@@ -205,9 +205,9 @@ remote login with Kerberos authentication and encryption
</loctext>
</common_name>
<documentation>
- <manpage title='in.rlogind' section='1M'
+ <manpage title='in.rlogind' section='8'
manpath='/usr/share/man' />
- <manpage title='rlogind' section='1M'
+ <manpage title='rlogind' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/cmd-inet/usr.sbin/ndd.c b/usr/src/cmd/cmd-inet/usr.sbin/ndd.c
index 8d5fdfa91f..9adf3c8d2d 100644
--- a/usr/src/cmd/cmd-inet/usr.sbin/ndd.c
+++ b/usr/src/cmd/cmd-inet/usr.sbin/ndd.c
@@ -170,8 +170,8 @@ ndd_perm2str(uint_t perm)
* - replace leading underscores with protocol name.
* For example: `_strong_iss' --> `tcp_strong_iss'
*
- * - don't print new public properties that are supported only by ipadm(1M)
- * For example: `hostmodel' should be supported only from ipadm(1M).
+ * - don't print new public properties that are supported only by ipadm(8)
+ * For example: `hostmodel' should be supported only from ipadm(8).
* Such properties are identified by not having leading '_' and not
* being present in the mapping table.
*/
@@ -211,7 +211,7 @@ print_ipadm2ndd(char *oldbuf, uint_t obufsize)
}
/*
* print only if it's a private property. We should
- * not be printing any new public property in ndd(1M)
+ * not be printing any new public property in ndd(8)
* output.
*/
if (!matched && pname[0] == '_') {
@@ -234,7 +234,7 @@ print_ipadm2ndd(char *oldbuf, uint_t obufsize)
* get/set the value for a given property by calling into libipadm. The
* IPH_LEGACY flag is used by libipadm for special handling. For some
* properties, libipadm.so displays strings (for e.g., on/off,
- * never/passive/active, et al) instead of numerals. However ndd(1M) always
+ * never/passive/active, et al) instead of numerals. However ndd(8) always
* printed numberals. This flag will help in avoiding printing strings.
*/
static boolean_t
@@ -270,7 +270,7 @@ do_ipadm_getset(int cmd, char *buf, int buflen)
}
if (nimap->ndd_name == NULL && strcmp(pname, "?") != 0) {
- /* do not allow set/get of public properties from ndd(1M) */
+ /* do not allow set/get of public properties from ndd(8) */
if (ipadm_legacy2new_propname(pname, nname, sizeof (nname),
&proto) != 0) {
status = IPADM_PROP_UNKNOWN;
@@ -371,7 +371,7 @@ gldv3_warning(char *module)
"WARNING: The ndd commands for datalink "
"administration are obsolete and may be "
"removed in a future release of Solaris. "
- "Use dladm(1M) to manage datalink tunables.\n"));
+ "Use dladm(8) to manage datalink tunables.\n"));
}
}
dladm_close(handle);
diff --git a/usr/src/cmd/cmd-inet/usr.sbin/ndp.c b/usr/src/cmd/cmd-inet/usr.sbin/ndp.c
index 2fc19775ad..c77e1587d9 100644
--- a/usr/src/cmd/cmd-inet/usr.sbin/ndp.c
+++ b/usr/src/cmd/cmd-inet/usr.sbin/ndp.c
@@ -106,7 +106,7 @@ static boolean_t ndp_run = B_TRUE;
#define NETSTAT_PATH "/usr/bin/netstat"
/*
- * Macros borrowed from route(1M) for working with PF_ROUTE messages
+ * Macros borrowed from route(8) for working with PF_ROUTE messages
*/
#define RT_ADVANCE(x, n) ((x) += ndp_salen(n))
#define RT_NEXTADDR(cp, w, u) \
diff --git a/usr/src/cmd/cmd-inet/usr.sbin/rarp.xml b/usr/src/cmd/cmd-inet/usr.sbin/rarp.xml
index de1c254018..d7e052396b 100644
--- a/usr/src/cmd/cmd-inet/usr.sbin/rarp.xml
+++ b/usr/src/cmd/cmd-inet/usr.sbin/rarp.xml
@@ -24,8 +24,6 @@
CDDL HEADER END
- ident "%Z%%M% %I% %E% SMI"
-
NOTE: This service manifest is not editable; its contents will
be overwritten by package or patch operations, including
operating system upgrade. Make customizations in a different
@@ -104,9 +102,9 @@ Reverse Address Resolution Protocol (RARP) server
</loctext>
</common_name>
<documentation>
- <manpage title='rarp' section='7P'
+ <manpage title='rarp' section='4P'
manpath='/usr/share/man' />
- <manpage title='in.rarpd' section='1M'
+ <manpage title='in.rarpd' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/cmd-inet/usr.sbin/rexec.xml b/usr/src/cmd/cmd-inet/usr.sbin/rexec.xml
index 98f83f3102..2514e2a04e 100644
--- a/usr/src/cmd/cmd-inet/usr.sbin/rexec.xml
+++ b/usr/src/cmd/cmd-inet/usr.sbin/rexec.xml
@@ -106,7 +106,7 @@
</loctext>
</common_name>
<documentation>
- <manpage title='in.rexecd' section='1M'
+ <manpage title='in.rexecd' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/cmd-inet/usr.sbin/route.c b/usr/src/cmd/cmd-inet/usr.sbin/route.c
index 29ccf97bb1..17a63d6f95 100644
--- a/usr/src/cmd/cmd-inet/usr.sbin/route.c
+++ b/usr/src/cmd/cmd-inet/usr.sbin/route.c
@@ -1659,7 +1659,7 @@ save_route(int argc, char **argv, int do_flush)
struct flock lock;
struct stat st;
const char commentstr[] =
- "# File generated by route(1M) - do not edit.\n";
+ "# File generated by route(8) - do not edit.\n";
perm_fd = open(perm_file, O_RDWR | O_CREAT, fmode);
if (perm_fd == -1 || fstat(perm_fd, &st) == -1)
diff --git a/usr/src/cmd/cmd-inet/usr.sbin/routeadm/forwarding.xml b/usr/src/cmd/cmd-inet/usr.sbin/routeadm/forwarding.xml
index b0e777ce50..2bdcaa6299 100644
--- a/usr/src/cmd/cmd-inet/usr.sbin/routeadm/forwarding.xml
+++ b/usr/src/cmd/cmd-inet/usr.sbin/routeadm/forwarding.xml
@@ -23,8 +23,6 @@
CDDL HEADER END
- ident "%Z%%M% %I% %E% SMI"
-
NOTE: This service manifest is not editable; its contents will
be overwritten by package or patch operations, including
operating system upgrade. Make customizations in a different
@@ -110,7 +108,7 @@
value='solaris.smf.manage.routing' />
</property_group>
- <!-- Properties in this group are modifiable via routeadm (1M) -->
+ <!-- Properties in this group are modifiable via routeadm(8) -->
<property_group name='routeadm' type='application'>
<propval name='default-ipv4-forwarding' type='boolean'
value='false' />
@@ -132,7 +130,7 @@
</loctext>
</description>
<documentation>
- <manpage title='routeadm' section='1M'
+ <manpage title='routeadm' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
@@ -214,7 +212,7 @@
value='solaris.smf.manage.routing' />
</property_group>
- <!-- Properties in this group are modifiable via routeadm (1M) -->
+ <!-- Properties in this group are modifiable via routeadm(8) -->
<property_group name='routeadm' type='application'>
<propval name='default-ipv6-forwarding' type='boolean'
value='false' />
@@ -236,7 +234,7 @@
</loctext>
</description>
<documentation>
- <manpage title='routeadm' section='1M'
+ <manpage title='routeadm' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/cmd-inet/usr.sbin/routeadm/legacy-routing.xml b/usr/src/cmd/cmd-inet/usr.sbin/routeadm/legacy-routing.xml
index 5db846b48a..30902c43b5 100644
--- a/usr/src/cmd/cmd-inet/usr.sbin/routeadm/legacy-routing.xml
+++ b/usr/src/cmd/cmd-inet/usr.sbin/routeadm/legacy-routing.xml
@@ -23,8 +23,6 @@
CDDL HEADER END
- ident "%Z%%M% %I% %E% SMI"
-
NOTE: This service manifest is not editable; its contents will
be overwritten by package or patch operations, including
operating system upgrade. Make customizations in a different
@@ -96,7 +94,7 @@
<instance name='ipv4' enabled='false'>
- <!-- Properties in this group are used by routeadm (1M) -->
+ <!-- Properties in this group are used by routeadm(8) -->
<property_group name='routeadm' type='application'>
<stability value='Evolving' />
<propval name='protocol' type='astring' value='ipv4' />
@@ -118,7 +116,7 @@
<instance name='ipv6' enabled='false'>
- <!-- Properties in this group are used by routeadm (1M) -->
+ <!-- Properties in this group are used by routeadm(8) -->
<property_group name='routeadm' type='application'>
<stability value='Evolving' />
<propval name='protocol' type='astring' value='ipv6' />
@@ -152,7 +150,7 @@
</loctext>
</description>
<documentation>
- <manpage title='routeadm' section='1M'
+ <manpage title='routeadm' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/cmd-inet/usr.sbin/routeadm/routeadm.c b/usr/src/cmd/cmd-inet/usr.sbin/routeadm/routeadm.c
index be826baba2..6fad8a3513 100644
--- a/usr/src/cmd/cmd-inet/usr.sbin/routeadm/routeadm.c
+++ b/usr/src/cmd/cmd-inet/usr.sbin/routeadm/routeadm.c
@@ -249,7 +249,7 @@
#define RA_SVC_FLAG_IPV6_ROUTING 0x2
#define RA_SMF_UPGRADE_FILE "/var/svc/profile/upgrade"
-#define RA_SMF_UPGRADE_MSG " # added by routeadm(1M)"
+#define RA_SMF_UPGRADE_MSG " # added by routeadm(8)"
#define RA_CONF_FILE "/etc/inet/routing.conf"
#define RA_CONF_FILE_OLD "/etc/inet/routing.conf.old"
#define RA_MAX_CONF_LINE 256
diff --git a/usr/src/cmd/cmd-inet/usr.sbin/shell.xml b/usr/src/cmd/cmd-inet/usr.sbin/shell.xml
index b841f99961..40be5f7572 100644
--- a/usr/src/cmd/cmd-inet/usr.sbin/shell.xml
+++ b/usr/src/cmd/cmd-inet/usr.sbin/shell.xml
@@ -92,10 +92,10 @@
</exec_method>
<exec_method
- type='method'
- name='inetd_disable'
- exec=':kill'
- timeout_seconds='0'>
+ type='method'
+ name='inetd_disable'
+ exec=':kill'
+ timeout_seconds='0'>
</exec_method>
<property_group name='firewall_config' type='com.sun,fw_configuration'>
@@ -176,9 +176,9 @@ remote shell with Kerberos authentication
</loctext>
</common_name>
<documentation>
- <manpage title='in.rshd' section='1M'
+ <manpage title='in.rshd' section='8'
manpath='/usr/share/man' />
- <manpage title='rshd' section='1M'
+ <manpage title='rshd' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/cmd-inet/usr.sbin/snoop/snoop_capture.c b/usr/src/cmd/cmd-inet/usr.sbin/snoop/snoop_capture.c
index 5ce947b476..63eb4973a0 100644
--- a/usr/src/cmd/cmd-inet/usr.sbin/snoop/snoop_capture.c
+++ b/usr/src/cmd/cmd-inet/usr.sbin/snoop/snoop_capture.c
@@ -112,7 +112,7 @@ select_datalink(const char *linkname, void *arg)
/*
* Open `linkname' in raw/passive mode (see dlpi_open(3DLPI)). If `linkname'
- * is NULL, pick a datalink as per snoop(1M). Also gather some information
+ * is NULL, pick a datalink as per snoop(8). Also gather some information
* about the datalink useful for building the proper packet filters.
*/
boolean_t
diff --git a/usr/src/cmd/cmd-inet/usr.sbin/socket-filter-kssl.xml b/usr/src/cmd/cmd-inet/usr.sbin/socket-filter-kssl.xml
index b91fcd47ea..e821a9c964 100644
--- a/usr/src/cmd/cmd-inet/usr.sbin/socket-filter-kssl.xml
+++ b/usr/src/cmd/cmd-inet/usr.sbin/socket-filter-kssl.xml
@@ -41,7 +41,7 @@
grouping='require_all'
restart_on='none'
type='service'>
- <service_fmri value='svc:/system/filesystem/root' />
+ <service_fmri value='svc:/system/filesystem/root' />
</dependency>
<exec_method
@@ -70,15 +70,15 @@
<propval name='socket_tuples' type='astring'
value='2:2:0,2:2:6,26:2:0,26:2:6' />
</property_group>
-
+
<template>
<common_name>
<loctext xml:lang='C'>
- kernel SSL socket filter
+ kernel SSL socket filter
</loctext>
</common_name>
<documentation>
- <manpage title='ksslcfg' section='1M'
+ <manpage title='ksslcfg' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/cmd-inet/usr.sbin/telnet.xml b/usr/src/cmd/cmd-inet/usr.sbin/telnet.xml
index a5425c3fc1..b2a8691372 100644
--- a/usr/src/cmd/cmd-inet/usr.sbin/telnet.xml
+++ b/usr/src/cmd/cmd-inet/usr.sbin/telnet.xml
@@ -98,9 +98,9 @@ in.telnetd supports the standard TELNET virtual terminal protocol.
</loctext>
</description>
<documentation>
- <manpage title='in.telnetd' section='1M'
+ <manpage title='in.telnetd' section='8'
manpath='/usr/share/man' />
- <manpage title='telnetd' section='1M'
+ <manpage title='telnetd' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/cmd-inet/usr.sbin/telnetd.dfl b/usr/src/cmd/cmd-inet/usr.sbin/telnetd.dfl
index a712bd90fd..1228b273f1 100644
--- a/usr/src/cmd/cmd-inet/usr.sbin/telnetd.dfl
+++ b/usr/src/cmd/cmd-inet/usr.sbin/telnetd.dfl
@@ -1,4 +1,3 @@
-#ident "%Z%%M% %I% %E% SMI"
#
# Copyright 2005 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
@@ -25,10 +24,10 @@
#
# /etc/default/telnetd
#
-# telnetd default settings processed via telnetd(1M).
+# telnetd default settings processed via telnetd(8).
#
# BANNER defines the connection banner which is displayed before the
-# telnet login prompt, see telnetd(1M) for details. The following
+# telnet login prompt, see telnetd(8) for details. The following
# commented line shows the default value.
#
#BANNER="\\r\\n\\r\\n`uname -s` `uname -r`\\r\\n\\r\\n"
diff --git a/usr/src/cmd/cmd-inet/usr.sbin/traceroute/traceroute.c b/usr/src/cmd/cmd-inet/usr.sbin/traceroute/traceroute.c
index 98d452665a..1b9e1955b9 100644
--- a/usr/src/cmd/cmd-inet/usr.sbin/traceroute/traceroute.c
+++ b/usr/src/cmd/cmd-inet/usr.sbin/traceroute/traceroute.c
@@ -1299,7 +1299,7 @@ setup_socket(struct pr_set *pr, int packet_len)
* or whether ICMP will be used instead of UDP.
*
* For historical reasons, the datagrams sent out by
- * traceroute(1M) do not have the "don't fragment" flag set. For
+ * traceroute(8) do not have the "don't fragment" flag set. For
* this reason as well as the ability to set the Loose Source and
* Record Route (LSRR) option, a raw IP socket will be used for
* IPv4 when run in the global zone. Otherwise, the actual
diff --git a/usr/src/cmd/consadm/consadm.c b/usr/src/cmd/consadm/consadm.c
index cd8eb54394..efa24b6d95 100644
--- a/usr/src/cmd/consadm/consadm.c
+++ b/usr/src/cmd/consadm/consadm.c
@@ -75,7 +75,7 @@ static char usage[] =
static char conshdr[] =
"#\n# consadm.conf\n#"
"# Configuration parameters for console message redirection.\n"
- "# Do NOT edit this file by hand -- use consadm(1m) instead.\n"
+ "# Do NOT edit this file by hand -- use consadm(8) instead.\n"
"#\n";
const char *pname; /* program name */
static sigjmp_buf deadline;
diff --git a/usr/src/cmd/consadm/consadm.xml b/usr/src/cmd/consadm/consadm.xml
index f11f0d91e5..d3ed8117b5 100644
--- a/usr/src/cmd/consadm/consadm.xml
+++ b/usr/src/cmd/consadm/consadm.xml
@@ -78,7 +78,7 @@
<documentation>
<manpage
title='consadm'
- section='1M'
+ section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/coreadm/coreadm.xml b/usr/src/cmd/coreadm/coreadm.xml
index c6198f885a..fbe621f6af 100644
--- a/usr/src/cmd/coreadm/coreadm.xml
+++ b/usr/src/cmd/coreadm/coreadm.xml
@@ -124,7 +124,7 @@
<documentation>
<manpage
title='coreadm'
- section='1M'
+ section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/cpc/common/cputrack.c b/usr/src/cmd/cpc/common/cputrack.c
index 41034aef6e..198cdd1a01 100644
--- a/usr/src/cmd/cpc/common/cputrack.c
+++ b/usr/src/cmd/cpc/common/cputrack.c
@@ -218,7 +218,7 @@ main(int argc, char *argv[])
"\t-o file\t write cpu statistics to this file\n"
"\t-c events specify processor events to be monitored\n"
"\t-p pid\t pid of existing process to capture\n\n"
- "\tUse cpustat(1M) to monitor system-wide statistics.\n"),
+ "\tUse cpustat(8) to monitor system-wide statistics.\n"),
opts->pgmname, CPC_TICKREG_NAME);
if (opts->dohelp) {
(void) putchar('\n');
diff --git a/usr/src/cmd/cron/at.c b/usr/src/cmd/cron/at.c
index 711f27d1a0..532145b461 100644
--- a/usr/src/cmd/cron/at.c
+++ b/usr/src/cmd/cron/at.c
@@ -113,7 +113,7 @@ extern int audit_cron_is_anc_name(char *);
extern int audit_cron_delete_anc_file(char *, char *);
/*
- * Error in getdate(3G)
+ * Error in getdate(3C)
*/
static char *errlist[] = {
/* 0 */ "",
diff --git a/usr/src/cmd/cron/cron.c b/usr/src/cmd/cron/cron.c
index d3a4e0b699..26abd30d18 100644
--- a/usr/src/cmd/cron/cron.c
+++ b/usr/src/cmd/cron/cron.c
@@ -353,7 +353,7 @@ static void *get_obj(struct shared *obj);
* it's original intended use.
*/
static time_t last_time, init_time, t_old;
-static int reset_needed; /* set to 1 when cron(1M) needs to re-initialize */
+static int reset_needed; /* set to 1 when cron(8) needs to re-initialize */
static int refresh;
static sigset_t defmask, sigmask;
@@ -437,7 +437,7 @@ main(int argc, char *argv[])
/*
* reset_needed is set to 1 whenever el_add() finds out that a cron
- * job is scheduled to be run before the time when cron(1M) daemon
+ * job is scheduled to be run before the time when cron(8) daemon
* initialized.
* Other cases where a reset is needed is when ex() finds that the
* event to be executed is being run at the wrong time, or when idle()
@@ -689,7 +689,7 @@ initialize(int firstpass)
REMOVE_FIFO|CONSOLE_MSG);
} else {
if (NOFORK) {
- /* didn't fork... init(1M) is waiting */
+ /* didn't fork... init(8) is waiting */
(void) sleep(60);
}
perror("FIFO");
@@ -698,7 +698,7 @@ initialize(int firstpass)
}
} else {
if (NOFORK) {
- /* didn't fork... init(1M) is waiting */
+ /* didn't fork... init(8) is waiting */
(void) sleep(60);
/*
* the wait is painful, but we don't want
diff --git a/usr/src/cmd/cron/cron.xml b/usr/src/cmd/cron/cron.xml
index f975618cc0..9fe1d37ae4 100644
--- a/usr/src/cmd/cron/cron.xml
+++ b/usr/src/cmd/cron/cron.xml
@@ -108,7 +108,7 @@
</loctext>
</common_name>
<documentation>
- <manpage title='cron' section='1M' manpath='/usr/share/man' />
+ <manpage title='cron' section='8' manpath='/usr/share/man' />
<manpage title='crontab' section='1' manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/dcs/sparc/sun4u/dcs.h b/usr/src/cmd/dcs/sparc/sun4u/dcs.h
index aa5d8dcb27..26a2a1d505 100644
--- a/usr/src/cmd/dcs/sparc/sun4u/dcs.h
+++ b/usr/src/cmd/dcs/sparc/sun4u/dcs.h
@@ -26,8 +26,6 @@
#ifndef _DCS_H
#define _DCS_H
-#pragma ident "%Z%%M% %I% %E% SMI"
-
#ifdef __cplusplus
extern "C" {
#endif
@@ -61,7 +59,7 @@ extern "C" {
/*
- * The IPsec socket option struct, from ipsec(7P):
+ * The IPsec socket option struct, from ipsec(4P):
*
* typedef struct ipsec_req {
* uint_t ipsr_ah_req; AH request
@@ -79,7 +77,7 @@ extern "C" {
* field. Allowable arguments are the same as -a.
*
* The arguments ("md5", "des", etc.) are named so that they match
- * kmd(1m)'s accepted arguments which are listed on the SC in
+ * kmd(8)'s accepted arguments which are listed on the SC in
* /etc/opt/SUNWSMS/SMS/config/kmd_policy.cf.
*/
#define AH_REQ (IPSEC_PREF_REQUIRED | IPSEC_PREF_UNIQUE)
diff --git a/usr/src/cmd/dcs/sparc/sun4u/dcs.xml b/usr/src/cmd/dcs/sparc/sun4u/dcs.xml
index a14f03eeb4..4adc35b8e7 100644
--- a/usr/src/cmd/dcs/sparc/sun4u/dcs.xml
+++ b/usr/src/cmd/dcs/sparc/sun4u/dcs.xml
@@ -104,7 +104,7 @@
</loctext>
</common_name>
<documentation>
- <manpage title='dcs' section='1M'
+ <manpage title='dcs' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/dcs/sparc/sun4u/rdr_messages.c b/usr/src/cmd/dcs/sparc/sun4u/rdr_messages.c
index 187319c234..4682f4cf1f 100644
--- a/usr/src/cmd/dcs/sparc/sun4u/rdr_messages.c
+++ b/usr/src/cmd/dcs/sparc/sun4u/rdr_messages.c
@@ -31,8 +31,8 @@
*
* Project Location
* ------- --------
- * Solaris usr/src/cmd/dcs/sparc/sun4u/%M%
- * SMS src/sms/lib/librdr/%M%
+ * Solaris usr/src/cmd/dcs/sparc/sun4u/rdr_messages.c
+ * SMS src/sms/lib/librdr/rdr_messages.c
*
* In order for proper communication to occur, the files in the
* above locations must match exactly. Any changes that are made
@@ -1291,7 +1291,7 @@ rdr_setopt(int fd, int name, int level)
* Bind the specified file descriptor to a specified
* address. If the address is already bound, no error is
* returned. This is the expected behavior if a server
- * has been started by inetd (1M).
+ * has been started by inetd(8).
*/
static int
rdr_bind(int fd, struct sockaddr *addr)
@@ -1322,7 +1322,7 @@ rdr_bind(int fd, struct sockaddr *addr)
* Ignore the error if EINVAL is returned. In
* this case, we assume that this means that
* the address was already bound. This is not
- * an error for servers started by inetd (1M).
+ * an error for servers started by inetd(8).
*/
if ((rc == -1) && (errno != EINVAL)) {
return (RDR_NET_ERR);
diff --git a/usr/src/cmd/devfsadm/devfsadm.c b/usr/src/cmd/devfsadm/devfsadm.c
index 79082ace48..9be5e0a5ec 100644
--- a/usr/src/cmd/devfsadm/devfsadm.c
+++ b/usr/src/cmd/devfsadm/devfsadm.c
@@ -677,7 +677,7 @@ parse_args(int argc, char *argv[])
break;
case 'u':
/*
- * Invoked via update_drv(1m) to update
+ * Invoked via update_drv(8) to update
* the kernel's driver/alias binding
* when removing one or more aliases.
*/
@@ -4826,7 +4826,7 @@ get_component(char *str, const char *comp_str)
* rules[] is an array of devfsadm_enumerate_t structures which defines
* the enumeration rules to be used for a specified set of links in /dev.
* The set of links is specified through regular expressions (of the flavor
- * described in regex(5)). These regular expressions are used to determine
+ * described in regex(7)). These regular expressions are used to determine
* the set of links in /dev to examine. The last path component in these
* regular expressions MUST contain a parenthesized subexpression surrounding
* the RE which is to be considered the enumerating component. The subexp
@@ -7041,7 +7041,7 @@ devfsadm_free_dev_names(char **dev_names, int len)
* devfsadm_free_dev_names() is used to free the returned array.
* NULL is returned on failure or when there are no matching devlinks.
*
- * re is an extended regular expression in regex(5) format used to further
+ * re is an extended regular expression in regex(7) format used to further
* match devlinks pointing to phys_path; it may be NULL to match all
*/
char **
diff --git a/usr/src/cmd/devfsadm/port_link.c b/usr/src/cmd/devfsadm/port_link.c
index f62254e3bc..f9bb0ff89d 100644
--- a/usr/src/cmd/devfsadm/port_link.c
+++ b/usr/src/cmd/devfsadm/port_link.c
@@ -770,10 +770,10 @@ update_sacadm_db(void)
}
/*
- * Determine which port monitor entries already exist by invoking pmadm(1m)
+ * Determine which port monitor entries already exist by invoking pmadm(8)
* to list all configured 'ttymon' port monitor entries.
- * Do not explicitly report errors from executing pmadm(1m) or sacadm(1m)
- * commands to remain compatible with the ports(1m) implementation.
+ * Do not explicitly report errors from executing pmadm(8) or sacadm(8)
+ * commands to remain compatible with the ports(8) implementation.
*/
static int
load_ttymondb(void)
@@ -930,7 +930,7 @@ delete_port_monitor(int port)
return;
}
- /* some other sacadm(1m) error, log and return */
+ /* some other sacadm(8) error, log and return */
if (sac_exitval != 0) {
devfsadm_print(VERBOSE_MID, "sacadm: (%s) %s\n",
SAC_EID(sac_exitval), SAC_EMSG(sac_exitval));
diff --git a/usr/src/cmd/dfs.cmds/sharemgr/group.xml b/usr/src/cmd/dfs.cmds/sharemgr/group.xml
index 3b6a4eb210..8d39bb7997 100644
--- a/usr/src/cmd/dfs.cmds/sharemgr/group.xml
+++ b/usr/src/cmd/dfs.cmds/sharemgr/group.xml
@@ -24,8 +24,6 @@
Copyright 2007 Sun Microsystems, Inc. All rights reserved.
Use is subject to license terms.
- ident "%Z%%M% %I% %E% SMI"
-
NOTE: This service manifest is not editable; its contents will
be overwritten by package or patch operations, including
operating system upgrade. Make customizations in a different
@@ -47,7 +45,7 @@
grouping='require_all'
restart_on='error'
type='service'>
- <service_fmri value='svc:/system/filesystem/local' />
+ <service_fmri value='svc:/system/filesystem/local' />
</dependency>
<!-- Also want to have some form of networking up -->
<dependency name='network'
@@ -117,7 +115,7 @@
</loctext>
</common_name>
<documentation>
- <manpage title='sharemgr' section='1M'
+ <manpage title='sharemgr' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/dispadmin/dispadmin.c b/usr/src/cmd/dispadmin/dispadmin.c
index 7de9e04c20..42d4560d8b 100644
--- a/usr/src/cmd/dispadmin/dispadmin.c
+++ b/usr/src/cmd/dispadmin/dispadmin.c
@@ -340,7 +340,7 @@ set_scheduler(char *clname)
if (ftruncate(fd, (off_t)0) == -1)
fatalerr("%s: Failed to truncate %s\n", cmdpath, CONFIGPATH);
(void) fputs("#\n# /etc/dispadmin.conf\n#\n"
- "# Do NOT edit this file by hand -- use dispadmin(1m) instead.\n"
+ "# Do NOT edit this file by hand -- use dispadmin(8) instead.\n"
"#\n", fp);
if ((fprintf(fp, "%s=%s\n", TOKENNAME, clname)) == -1)
fatalerr("%s: Failed to write to %s\n", cmdpath, CONFIGPATH);
diff --git a/usr/src/cmd/dispadmin/scheduler.xml b/usr/src/cmd/dispadmin/scheduler.xml
index 51c63de4a8..3926d66866 100755
--- a/usr/src/cmd/dispadmin/scheduler.xml
+++ b/usr/src/cmd/dispadmin/scheduler.xml
@@ -24,9 +24,6 @@
CDDL HEADER END
-
- ident "%Z%%M% %I% %E% SMI"
-
NOTE: This service manifest is not editable; its contents will
be overwritten by package or patch operations, including
operating system upgrade. Make customizations in a different
@@ -51,7 +48,7 @@
/etc/dispadmin.conf. It therefore must have / (root) and /usr
mounted readable. svc:/system/filesystem/usr (which remounts /
and /usr read-writable) is dependent on svc:/system/scheduler to
- ensure that subsequent services can use their own scheduling
+ ensure that subsequent services can use their own scheduling
class.
-->
@@ -98,7 +95,7 @@
<documentation>
<manpage
title='dispadmin'
- section='1M'
+ section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/dladm/dladm.c b/usr/src/cmd/dladm/dladm.c
index 1a14de1de0..4477322def 100644
--- a/usr/src/cmd/dladm/dladm.c
+++ b/usr/src/cmd/dladm/dladm.c
@@ -89,7 +89,7 @@
#define MAXLINELEN 1024
#define SMF_UPGRADE_FILE "/var/svc/profile/upgrade"
#define SMF_UPGRADEDATALINK_FILE "/var/svc/profile/upgrade_datalink"
-#define SMF_DLADM_UPGRADE_MSG " # added by dladm(1M)"
+#define SMF_DLADM_UPGRADE_MSG " # added by dladm(8)"
#define DLADM_DEFAULT_COL 80
/*
@@ -2096,7 +2096,7 @@ done:
if (status != DLADM_STATUS_OK) {
if (status == DLADM_STATUS_NONOTIF) {
die("not all links have link up/down detection; must "
- "use -f (see dladm(1M))");
+ "use -f (see dladm(8))");
} else {
die_dlerr(status, "create operation failed");
}
@@ -2262,7 +2262,7 @@ done:
"match");
} else if (status == DLADM_STATUS_NONOTIF) {
die("not all links have link up/down detection; must "
- "use -f (see dladm(1M))");
+ "use -f (see dladm(8))");
} else {
die_dlerr(status, "add operation failed");
}
@@ -2564,12 +2564,12 @@ do_create_vlan(int argc, char *argv[], const char *use)
case DLADM_STATUS_NOTSUP:
die("VLAN over '%s' may require lowered MTU; must use -f (see "
- "dladm(1M))", link);
+ "dladm(8))", link);
break;
case DLADM_STATUS_LINKBUSY:
die("VLAN over '%s' may not use default_tag ID "
- "(see dladm(1M))", link);
+ "(see dladm(8))", link);
break;
default:
@@ -4938,7 +4938,7 @@ do_create_vnic(int argc, char *argv[], const char *use)
case DLADM_STATUS_LINKBUSY:
die("VLAN over '%s' may not use default_tag ID "
- "(see dladm(1M))", devname);
+ "(see dladm(8))", devname);
break;
default:
diff --git a/usr/src/cmd/dladm/secobj.conf b/usr/src/cmd/dladm/secobj.conf
index dd196c1273..4457684bdf 100644
--- a/usr/src/cmd/dladm/secobj.conf
+++ b/usr/src/cmd/dladm/secobj.conf
@@ -22,9 +22,7 @@
# Copyright 2006 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
#
-# ident "%Z%%M% %I% %E% SMI"
-#
# DO NOT EDIT OR PARSE THIS FILE!
#
-# Use the dladm(1m) command to change the contents of this file.
+# Use the dladm(8) command to change the contents of this file.
diff --git a/usr/src/cmd/dlmgmtd/datalink.conf b/usr/src/cmd/dlmgmtd/datalink.conf
index 91c9931ff3..fcb9a56f4d 100644
--- a/usr/src/cmd/dlmgmtd/datalink.conf
+++ b/usr/src/cmd/dlmgmtd/datalink.conf
@@ -22,9 +22,7 @@
# Copyright 2008 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
#
-# ident "%Z%%M% %I% %E% SMI"
-#
# DO NOT EDIT OR PARSE THIS FILE!
#
-# Use the dladm(1m) command to change the contents of this file.
+# Use the dladm(8) command to change the contents of this file.
diff --git a/usr/src/cmd/dlmgmtd/dlmgmt.xml b/usr/src/cmd/dlmgmtd/dlmgmt.xml
index e0781a8d8b..6c166257ee 100644
--- a/usr/src/cmd/dlmgmtd/dlmgmt.xml
+++ b/usr/src/cmd/dlmgmtd/dlmgmt.xml
@@ -23,8 +23,6 @@
Copyright 2008 Sun Microsystems, Inc. All rights reserved.
Use is subject to license terms.
- ident "%Z%%M% %I% %E% SMI"
-
NOTE: This service manifest is not editable; its contents will
be overwritten by package or patch operations, including
operating system upgrade. Make customizations in a different
@@ -81,7 +79,7 @@
</loctext>
</common_name>
<documentation>
- <manpage title='dlmgmtd' section='1M'
+ <manpage title='dlmgmtd' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/dlmgmtd/dlmgmt_main.c b/usr/src/cmd/dlmgmtd/dlmgmt_main.c
index 60466fd773..43f3f0eeec 100644
--- a/usr/src/cmd/dlmgmtd/dlmgmt_main.c
+++ b/usr/src/cmd/dlmgmtd/dlmgmt_main.c
@@ -315,7 +315,7 @@ dlmgmt_init(void)
DLMGMT_TMPFS_DIR, progname, ".debug.cache");
} else {
if ((fmri = getenv("SMF_FMRI")) == NULL) {
- dlmgmt_log(LOG_ERR, "dlmgmtd is an smf(5) managed "
+ dlmgmt_log(LOG_ERR, "dlmgmtd is an smf(7) managed "
"service and should not be run from the command "
"line.");
return (EINVAL);
diff --git a/usr/src/cmd/drd/drd.xml b/usr/src/cmd/drd/drd.xml
index 317db297de..d8f7634029 100644
--- a/usr/src/cmd/drd/drd.xml
+++ b/usr/src/cmd/drd/drd.xml
@@ -23,8 +23,6 @@
CDDL HEADER END
- ident "%Z%%M% %I% %E% SMI"
-
NOTE: This service manifest is not editable; its contents will
be overwritten by package or patch operations, including
operating system upgrade. Make customizations in a different
@@ -88,7 +86,7 @@
</common_name>
<documentation>
- <manpage title='drd' section='1M'
+ <manpage title='drd' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/dtrace/demo/spec/specopen.d b/usr/src/cmd/dtrace/demo/spec/specopen.d
index f1975ff869..370153a05d 100644
--- a/usr/src/cmd/dtrace/demo/spec/specopen.d
+++ b/usr/src/cmd/dtrace/demo/spec/specopen.d
@@ -31,7 +31,7 @@ syscall::open64:entry
{
/*
* The call to speculation() creates a new speculation. If this fails,
- * dtrace(1M) will generate an error message indicating the reason for
+ * dtrace(8) will generate an error message indicating the reason for
* the failed speculation(), but subsequent speculative tracing will be
* silently discarded.
*/
diff --git a/usr/src/cmd/dtrace/dtrace.c b/usr/src/cmd/dtrace/dtrace.c
index f005629fc9..95c0ba89d6 100644
--- a/usr/src/cmd/dtrace/dtrace.c
+++ b/usr/src/cmd/dtrace/dtrace.c
@@ -102,7 +102,7 @@ static const char *g_etcend = "* ^^^^ Added by DTrace";
static const char *g_etc[] = {
"*",
-"* The following forceload directives were added by dtrace(1M) to allow for",
+"* The following forceload directives were added by dtrace(8) to allow for",
"* tracing during boot. If these directives are removed, the system will",
"* continue to function, but tracing will not occur during boot as desired.",
"* To remove these directives (and this block comment) automatically, run",
@@ -134,7 +134,7 @@ usage(FILE *fp)
"\t-32 generate 32-bit D programs and ELF files\n"
"\t-64 generate 64-bit D programs and ELF files\n\n"
"\t-a claim anonymous tracing state\n"
- "\t-A generate driver.conf(4) directives for anonymous tracing\n"
+ "\t-A generate driver.conf(5) directives for anonymous tracing\n"
"\t-b set trace buffer size\n"
"\t-c run specified command and exit upon its completion\n"
"\t-C run cpp(1) preprocessor on script files\n"
@@ -605,7 +605,7 @@ exec_prog(const dtrace_cmd_t *dcp)
/*
* Print out the specified DOF buffer as a set of ASCII bytes appropriate for
- * storing in a driver.conf(4) file associated with the dtrace driver.
+ * storing in a driver.conf(5) file associated with the dtrace driver.
*/
static void
anon_prog(const dtrace_cmd_t *dcp, dof_hdr_t *dof, int n)
@@ -1659,7 +1659,7 @@ main(int argc, char *argv[])
*/
error("saved anonymous enabling in %s\n", g_ofile);
etcsystem_add();
- error("run update_drv(1M) or reboot to enable changes\n");
+ error("run update_drv(8) or reboot to enable changes\n");
dtrace_close(g_dtp);
return (g_status);
@@ -1742,7 +1742,7 @@ main(int argc, char *argv[])
if ((g_ofp = fopen(g_ofile, "w")) == NULL)
fatal("failed to open header file '%s'", g_ofile);
- oprintf("/*\n * Generated by dtrace(1M).\n */\n\n");
+ oprintf("/*\n * Generated by dtrace(8).\n */\n\n");
if (dtrace_program_header(g_dtp, g_ofp, g_ofile) != 0 ||
fclose(g_ofp) == EOF)
diff --git a/usr/src/cmd/dtrace/test/cmd/jdtrace/JDTrace.java b/usr/src/cmd/dtrace/test/cmd/jdtrace/JDTrace.java
index f8c9ab7337..b39535afb5 100644
--- a/usr/src/cmd/dtrace/test/cmd/jdtrace/JDTrace.java
+++ b/usr/src/cmd/dtrace/test/cmd/jdtrace/JDTrace.java
@@ -30,7 +30,7 @@ import java.util.*;
import java.util.logging.*;
/**
- * Emulates {@code dtrace(1M)} using the Java DTrace API.
+ * Emulates {@code dtrace(8)} using the Java DTrace API.
*/
public class JDTrace {
static Logger logger = Logger.getLogger(JDTrace.class.getName());
diff --git a/usr/src/cmd/dtrace/test/cmd/scripts/dtest.pl b/usr/src/cmd/dtrace/test/cmd/scripts/dtest.pl
index e7f9189822..645a7eb543 100644
--- a/usr/src/cmd/dtrace/test/cmd/scripts/dtest.pl
+++ b/usr/src/cmd/dtrace/test/cmd/scripts/dtest.pl
@@ -100,10 +100,10 @@ sub usage
print "\t -i specify ISA to test instead of isaexec(3C) default\n";
print "\t -j execute test suite using jdtrace (Java API) only\n";
print "\t -l save log file of results and PIDs used by tests\n";
- print "\t -n execute test suite using dtrace(1m) only\n";
+ print "\t -n execute test suite using dtrace(8) only\n";
print "\t -q set quiet mode (only report errors and summary)\n";
print "\t -s save results files even for tests that pass\n";
- print "\t -x pass corresponding -x argument to dtrace(1M)\n";
+ print "\t -x pass corresponding -x argument to dtrace(8)\n";
exit(2);
}
@@ -397,7 +397,7 @@ sub run_tests {
}
#
- # DTrace is gone. Now update_drv(1M), and rip
+ # DTrace is gone. Now update_drv(8), and rip
# everything out again.
#
system("update_drv dtrace");
diff --git a/usr/src/cmd/dtrace/test/tst/common/cpc/err.cputrackfailtostart.ksh b/usr/src/cmd/dtrace/test/tst/common/cpc/err.cputrackfailtostart.ksh
index f62b83d571..2e78256216 100644
--- a/usr/src/cmd/dtrace/test/tst/common/cpc/err.cputrackfailtostart.ksh
+++ b/usr/src/cmd/dtrace/test/tst/common/cpc/err.cputrackfailtostart.ksh
@@ -25,7 +25,7 @@
# Use is subject to license terms.
#
-# This script ensures that cputrack(1M) will fail to start when the cpc
+# This script ensures that cputrack(8) will fail to start when the cpc
# provider has active enablings.
#
# The script will fail if:
diff --git a/usr/src/cmd/dtrace/test/tst/common/ip/get.ipv4remote.pl b/usr/src/cmd/dtrace/test/tst/common/ip/get.ipv4remote.pl
index d2dc8fdbee..439614a3a0 100755
--- a/usr/src/cmd/dtrace/test/tst/common/ip/get.ipv4remote.pl
+++ b/usr/src/cmd/dtrace/test/tst/common/ip/get.ipv4remote.pl
@@ -28,7 +28,7 @@
#
# get.ipv4remote.pl [tcpport]
#
-# Find an IPv4 reachable remote host using both ifconfig(1M) and ping(1M).
+# Find an IPv4 reachable remote host using both ifconfig(8) and ping(8).
# If a tcpport is specified, return a host that is also listening on this
# TCP port. Print the local address and the remote address, or an
# error message if no suitable remote host was found. Exit status is 0 if
diff --git a/usr/src/cmd/dtrace/test/tst/common/ip/get.ipv6remote.pl b/usr/src/cmd/dtrace/test/tst/common/ip/get.ipv6remote.pl
index 3b1999f62b..a8956cd158 100755
--- a/usr/src/cmd/dtrace/test/tst/common/ip/get.ipv6remote.pl
+++ b/usr/src/cmd/dtrace/test/tst/common/ip/get.ipv6remote.pl
@@ -28,7 +28,7 @@
#
# get.ipv6remote.pl
#
-# Find an IPv6 reachable remote host using both ifconfig(1M) and ping(1M).
+# Find an IPv6 reachable remote host using both ifconfig(8) and ping(8).
# Print the local address and the remote address, or print nothing if either
# no IPv6 interfaces or remote hosts were found. (Remote IPv6 testing is
# considered optional, and so not finding another IPv6 host is not an error
diff --git a/usr/src/cmd/dtrace/test/tst/common/pid/tst.killonerror.ksh b/usr/src/cmd/dtrace/test/tst/common/pid/tst.killonerror.ksh
index 587878c3fc..c8c389b3d2 100644
--- a/usr/src/cmd/dtrace/test/tst/common/pid/tst.killonerror.ksh
+++ b/usr/src/cmd/dtrace/test/tst/common/pid/tst.killonerror.ksh
@@ -33,7 +33,7 @@ fi
dtrace=$1
#
-# Make sure we kill a process if the dtrace(1M) command fails.
+# Make sure we kill a process if the dtrace(8) command fails.
#
rc=`$dtrace -c date -n jarod 2>/dev/null | /usr/bin/wc -l`
diff --git a/usr/src/cmd/dtrace/test/tst/common/proc/tst.exitcore.ksh b/usr/src/cmd/dtrace/test/tst/common/proc/tst.exitcore.ksh
index df3fdb3d6d..2567ba75ba 100644
--- a/usr/src/cmd/dtrace/test/tst/common/proc/tst.exitcore.ksh
+++ b/usr/src/cmd/dtrace/test/tst/common/proc/tst.exitcore.ksh
@@ -23,14 +23,13 @@
# Copyright 2007 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
#
-# ident "%Z%%M% %I% %E% SMI"
#
# This script tests that the proc:::exit probe fires with the correct argument
# when the process core dumps. The problematic bit here is making sure that
# a process _can_ dump core -- if core dumps are disabled on both a global
# and per-process basis, this test will fail. Rather than having this test
-# muck with coreadm(1M) settings, it will fail explicitly in this case and
+# muck with coreadm(8) settings, it will fail explicitly in this case and
# provide a hint as to the problem. In general, machines should never be
# running with both per-process and global core dumps disabled -- so this
# should be a non-issue in practice.
@@ -52,7 +51,7 @@ script()
/curpsinfo->pr_ppid == $child &&
curpsinfo->pr_psargs == "$longsleep" && args[0] != CLD_DUMPED/
{
- printf("Child process could not dump core. Check coreadm(1M)");
+ printf("Child process could not dump core. Check coreadm(8)");
printf(" settings; either per-process or global core dumps ");
printf("must be enabled for this test to work properly.");
exit(1);
diff --git a/usr/src/cmd/dtrace/test/tst/common/speculation/err.D_ACT_SPEC.SpeculateWithBreakPoint.d b/usr/src/cmd/dtrace/test/tst/common/speculation/err.D_ACT_SPEC.SpeculateWithBreakPoint.d
index 958ce68612..7774f117c8 100644
--- a/usr/src/cmd/dtrace/test/tst/common/speculation/err.D_ACT_SPEC.SpeculateWithBreakPoint.d
+++ b/usr/src/cmd/dtrace/test/tst/common/speculation/err.D_ACT_SPEC.SpeculateWithBreakPoint.d
@@ -25,14 +25,12 @@
* Use is subject to license terms.
*/
-#pragma ident "%Z%%M% %I% %E% SMI"
-
/*
* ASSERTION:
* Destructive actions may never be speculative.
*
* SECTION: Speculative Tracing/Using a Speculation
- * SECTION: dtrace(1M) Utility/ -w option
+ * SECTION: dtrace(8) Utility/ -w option
*
*/
#pragma D option quiet
diff --git a/usr/src/cmd/dtrace/test/tst/common/speculation/err.D_ACT_SPEC.SpeculateWithChill.d b/usr/src/cmd/dtrace/test/tst/common/speculation/err.D_ACT_SPEC.SpeculateWithChill.d
index ebb3b01601..7d7d07671a 100644
--- a/usr/src/cmd/dtrace/test/tst/common/speculation/err.D_ACT_SPEC.SpeculateWithChill.d
+++ b/usr/src/cmd/dtrace/test/tst/common/speculation/err.D_ACT_SPEC.SpeculateWithChill.d
@@ -25,14 +25,12 @@
* Use is subject to license terms.
*/
-#pragma ident "%Z%%M% %I% %E% SMI"
-
/*
* ASSERTION:
* Destructive actions may never be speculative.
*
* SECTION: Speculative Tracing/Using a Speculation
- * SECTION: dtrace (1M) Utility/ -w option
+ * SECTION: dtrace(8) Utility/ -w option
*
*/
#pragma D option quiet
diff --git a/usr/src/cmd/dtrace/test/tst/common/speculation/err.D_ACT_SPEC.SpeculateWithCopyOut.d b/usr/src/cmd/dtrace/test/tst/common/speculation/err.D_ACT_SPEC.SpeculateWithCopyOut.d
index 9c14bb5a59..11420e40f5 100644
--- a/usr/src/cmd/dtrace/test/tst/common/speculation/err.D_ACT_SPEC.SpeculateWithCopyOut.d
+++ b/usr/src/cmd/dtrace/test/tst/common/speculation/err.D_ACT_SPEC.SpeculateWithCopyOut.d
@@ -25,14 +25,12 @@
* Use is subject to license terms.
*/
-#pragma ident "%Z%%M% %I% %E% SMI"
-
/*
* ASSERTION:
* Destructive actions may never be speculative.
*
* SECTION: Speculative Tracing/Using a Speculation
- * SECTION: dtrace(1M) Utility/ -w option
+ * SECTION: dtrace(8) Utility/ -w option
*
*/
#pragma D option quiet
diff --git a/usr/src/cmd/dtrace/test/tst/common/speculation/err.D_ACT_SPEC.SpeculateWithCopyOutStr.d b/usr/src/cmd/dtrace/test/tst/common/speculation/err.D_ACT_SPEC.SpeculateWithCopyOutStr.d
index 695eb8c8de..d14bf67dfa 100644
--- a/usr/src/cmd/dtrace/test/tst/common/speculation/err.D_ACT_SPEC.SpeculateWithCopyOutStr.d
+++ b/usr/src/cmd/dtrace/test/tst/common/speculation/err.D_ACT_SPEC.SpeculateWithCopyOutStr.d
@@ -25,14 +25,12 @@
* Use is subject to license terms.
*/
-#pragma ident "%Z%%M% %I% %E% SMI"
-
/*
* ASSERTION:
* Destructive actions may never be speculative.
*
* SECTION: Speculative Tracing/Using a Speculation
- * SECTION: dtrace(1M) Utility/ -w option
+ * SECTION: dtrace(8) Utility/ -w option
*/
#pragma D option quiet
diff --git a/usr/src/cmd/dtrace/test/tst/common/speculation/err.D_ACT_SPEC.SpeculateWithPanic.d b/usr/src/cmd/dtrace/test/tst/common/speculation/err.D_ACT_SPEC.SpeculateWithPanic.d
index dcba080194..b5d80910d4 100644
--- a/usr/src/cmd/dtrace/test/tst/common/speculation/err.D_ACT_SPEC.SpeculateWithPanic.d
+++ b/usr/src/cmd/dtrace/test/tst/common/speculation/err.D_ACT_SPEC.SpeculateWithPanic.d
@@ -25,14 +25,12 @@
* Use is subject to license terms.
*/
-#pragma ident "%Z%%M% %I% %E% SMI"
-
/*
* ASSERTION:
* Destructive actions may never be speculative.
*
* SECTION: Speculative Tracing/Using a Speculation
- * SECTION: dtrace(1M) Utility/ -w option
+ * SECTION: dtrace(8) Utility/ -w option
*
*/
#pragma D option quiet
diff --git a/usr/src/cmd/dtrace/test/tst/common/speculation/err.D_ACT_SPEC.SpeculateWithRaise.d b/usr/src/cmd/dtrace/test/tst/common/speculation/err.D_ACT_SPEC.SpeculateWithRaise.d
index e4fe06b6a3..a463b25702 100644
--- a/usr/src/cmd/dtrace/test/tst/common/speculation/err.D_ACT_SPEC.SpeculateWithRaise.d
+++ b/usr/src/cmd/dtrace/test/tst/common/speculation/err.D_ACT_SPEC.SpeculateWithRaise.d
@@ -25,14 +25,12 @@
* Use is subject to license terms.
*/
-#pragma ident "%Z%%M% %I% %E% SMI"
-
/*
* ASSERTION:
* Destructive actions may never be speculative.
*
* SECTION: Speculative Tracing/Using a Speculation
- * SECTION: dtrace(1M) Utility/ -w option
+ * SECTION: dtrace(8) Utility/ -w option
*/
#pragma D option quiet
diff --git a/usr/src/cmd/dtrace/test/tst/common/speculation/err.D_ACT_SPEC.SpeculateWithStop.d b/usr/src/cmd/dtrace/test/tst/common/speculation/err.D_ACT_SPEC.SpeculateWithStop.d
index 468e8f20e2..c02064c0d2 100644
--- a/usr/src/cmd/dtrace/test/tst/common/speculation/err.D_ACT_SPEC.SpeculateWithStop.d
+++ b/usr/src/cmd/dtrace/test/tst/common/speculation/err.D_ACT_SPEC.SpeculateWithStop.d
@@ -25,14 +25,12 @@
* Use is subject to license terms.
*/
-#pragma ident "%Z%%M% %I% %E% SMI"
-
/*
* ASSERTION:
* Destructive actions may never be speculative.
*
* SECTION: Speculative Tracing/Using a Speculation
- * SECTION: dtrace(1M) Utility/ -w option
+ * SECTION: dtrace(8) Utility/ -w option
*/
#pragma D option quiet
diff --git a/usr/src/cmd/dtrace/test/tst/sparc/ustack/tst.trapstat.ksh b/usr/src/cmd/dtrace/test/tst/sparc/ustack/tst.trapstat.ksh
index 84af800676..2adbba1d45 100644
--- a/usr/src/cmd/dtrace/test/tst/sparc/ustack/tst.trapstat.ksh
+++ b/usr/src/cmd/dtrace/test/tst/sparc/ustack/tst.trapstat.ksh
@@ -24,11 +24,10 @@
# Copyright 2007 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
#
-# ident "%Z%%M% %I% %E% SMI"
#
# This script verifies that user-land stacks can be walked safely
-# when the trapstat(1M) utility is running. An arbitrary program, w(1),
+# when the trapstat(8) utility is running. An arbitrary program, w(1),
# is started once a second to ensure stacks can be walked at all stages
# of the process lifecycle.
#
diff --git a/usr/src/cmd/dumpadm/dconf.c b/usr/src/cmd/dumpadm/dconf.c
index 6e549afaa7..b5c86098cf 100644
--- a/usr/src/cmd/dumpadm/dconf.c
+++ b/usr/src/cmd/dumpadm/dconf.c
@@ -264,7 +264,7 @@ dconf_write(dumpconf_t *dcp)
(void) fputs("#\n# dumpadm.conf\n#\n"
"# Configuration parameters for system crash dump.\n"
- "# Do NOT edit this file by hand -- use dumpadm(1m) instead.\n"
+ "# Do NOT edit this file by hand -- use dumpadm(8) instead.\n"
"#\n", dcp->dc_conf_fp);
for (tokp = tokens; tokp->tok_name != NULL; tokp++) {
@@ -360,9 +360,9 @@ dconf_dev_ioctl(dumpconf_t *dcp, int cmd)
break;
default:
/*
- * NOTE: The stmsboot(1M) command's boot-up script parses this
+ * NOTE: The stmsboot(8) command's boot-up script parses this
* error to get the dump device name. If you change the format
- * of this message, make sure that stmsboot(1M) is in sync.
+ * of this message, make sure that stmsboot(8) is in sync.
*/
warn(gettext("cannot use %s as dump device"), dcp->dc_device);
}
diff --git a/usr/src/cmd/dumpadm/dumpadm.xml b/usr/src/cmd/dumpadm/dumpadm.xml
index 65f7fdb900..df8a280703 100644
--- a/usr/src/cmd/dumpadm/dumpadm.xml
+++ b/usr/src/cmd/dumpadm/dumpadm.xml
@@ -42,8 +42,8 @@
<single_instance />
<!--
- The dumpadm(1M) service reconfigures the kernel's dump settings
- from /etc/dumpadm.conf and then invokes savecore(1M) to locate
+ The dumpadm(8) service reconfigures the kernel's dump settings
+ from /etc/dumpadm.conf and then invokes savecore(8) to locate
and retrieve any saved crash dumps. It therefore needs to have
local filesystems mounted, and must also have an *optional*
dependency on nfs.client and autofs in case dumpadm -s has been
@@ -107,7 +107,7 @@
<documentation>
<manpage
title='dumpadm'
- section='1M'
+ section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/dumpadm/svc-dumpadm b/usr/src/cmd/dumpadm/svc-dumpadm
index 488ba8d54d..bf574df0cb 100644
--- a/usr/src/cmd/dumpadm/svc-dumpadm
+++ b/usr/src/cmd/dumpadm/svc-dumpadm
@@ -97,7 +97,7 @@ fi
#
# Now run dumpadm to configure the dump device based on the settings
-# previously saved by dumpadm. See dumpadm(1m) for instructions on
+# previously saved by dumpadm. See dumpadm(8) for instructions on
# how to modify the dump settings.
#
if [ -x /usr/sbin/dumpadm ]; then
diff --git a/usr/src/cmd/dumpadm/swap.c b/usr/src/cmd/dumpadm/swap.c
index 8f6ac7033e..ddae2228dc 100644
--- a/usr/src/cmd/dumpadm/swap.c
+++ b/usr/src/cmd/dumpadm/swap.c
@@ -24,8 +24,6 @@
* All rights reserved.
*/
-#pragma ident "%Z%%M% %I% %E% SMI"
-
#include <sys/param.h>
#include <string.h>
#include <stdlib.h>
@@ -89,7 +87,7 @@ swap_list(void)
/*
* If the pathname isn't absolute, assume it begins
- * with /dev as swap(1m) does.
+ * with /dev as swap(8) does.
*/
if (swt->swt_ent[n].ste_path[0] != '/') {
char buf[MAXPATHLEN];
diff --git a/usr/src/cmd/expr/compile.c b/usr/src/cmd/expr/compile.c
index 92d71f20f3..b68e0a267e 100644
--- a/usr/src/cmd/expr/compile.c
+++ b/usr/src/cmd/expr/compile.c
@@ -119,7 +119,7 @@ advance(const char *instr, const char *expbuf)
/*
* the compile and step routines here simulate the old libgen routines of
- * compile/step Re: regexpr(3G). in order to do this, we must assume
+ * compile/step Re: regexpr(3GEN). in order to do this, we must assume
* that expbuf[] consists of the following format:
* 1) the first two bytes consist of a special encoding - see below.
* 2) the next part is a regex_t used by regexec()/regcomp() for step
diff --git a/usr/src/cmd/fcinfo/fcinfo.c b/usr/src/cmd/fcinfo/fcinfo.c
index 44e93541e3..08db555299 100644
--- a/usr/src/cmd/fcinfo/fcinfo.c
+++ b/usr/src/cmd/fcinfo/fcinfo.c
@@ -334,7 +334,7 @@ main(int argc, char *argv[])
/* call the CLI parser */
ret = cmdParse(argc, argv, synTables, subcommandArgs, &funcRet);
if (ret == 1) {
- fprintf(stdout, "%s %s(1M)\n",
+ fprintf(stdout, "%s %s(8)\n",
gettext("For more information, please see"), cmdName);
return (1);
} else if (ret == -1) {
diff --git a/usr/src/cmd/fcoesvc/fcoe_initiator.xml b/usr/src/cmd/fcoesvc/fcoe_initiator.xml
index 4fc2081d71..61d492558e 100644
--- a/usr/src/cmd/fcoesvc/fcoe_initiator.xml
+++ b/usr/src/cmd/fcoesvc/fcoe_initiator.xml
@@ -92,7 +92,7 @@ Service manifests for the FCoE initiator configuration
</loctext>
</common_name>
<documentation>
- <manpage title='fcadm' section='1M'
+ <manpage title='fcadm' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/fcoesvc/fcoe_target.xml b/usr/src/cmd/fcoesvc/fcoe_target.xml
index 75860465de..7d487207e7 100644
--- a/usr/src/cmd/fcoesvc/fcoe_target.xml
+++ b/usr/src/cmd/fcoesvc/fcoe_target.xml
@@ -99,7 +99,7 @@ Service manifests for the FCoE target configuration
</loctext>
</common_name>
<documentation>
- <manpage title='fcadm' section='1M'
+ <manpage title='fcadm' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/fdisk/fdisk.c b/usr/src/cmd/fdisk/fdisk.c
index ba647a77e2..b0b3911c10 100644
--- a/usr/src/cmd/fdisk/fdisk.c
+++ b/usr/src/cmd/fdisk/fdisk.c
@@ -32,7 +32,7 @@
/* All Rights Reserved */
/*
- * PROGRAM: fdisk(1M)
+ * PROGRAM: fdisk(8)
* This program reads the partition table on the specified device and
* also reads the drive parameters. The user can perform various
* operations from a supplied menu or from the command line. Diagnostic
@@ -102,7 +102,7 @@
#define VTOC_RWERR 3 /* couldn't read or write VTOC */
/*
- * Support for fdisk(1M) on the SPARC platform
+ * Support for fdisk(8) on the SPARC platform
* In order to convert little endian values to big endian for SPARC,
* byte/short and long values must be swapped.
* These swapping macros will be used to access information in the
diff --git a/usr/src/cmd/file/magic b/usr/src/cmd/file/magic
index 84e2915162..5df2d4d7c4 100644
--- a/usr/src/cmd/file/magic
+++ b/usr/src/cmd/file/magic
@@ -534,7 +534,7 @@
0 string \043\040PaCkAgE\040DaTaStReAm package datastream
0 short 0xcff1 CTF data file
0 string \177DOF DTrace DOF data file
-0 string \177FCF fmd(1M) checkpoint file
+0 string \177FCF fmd(8) checkpoint file
0 string EFT\0 Fault tree file,
>4 ushort x v%u
>6 ushort x rev %u,
diff --git a/usr/src/cmd/flowadm/flowadm.conf b/usr/src/cmd/flowadm/flowadm.conf
index 3977ddf645..c4a4450b27 100644
--- a/usr/src/cmd/flowadm/flowadm.conf
+++ b/usr/src/cmd/flowadm/flowadm.conf
@@ -24,5 +24,5 @@
#
# DO NOT EDIT OR PARSE THIS FILE!
#
-# Use the flowadm(1m) command to change the contents of this file.
+# Use the flowadm(8) command to change the contents of this file.
diff --git a/usr/src/cmd/flowadm/flowprop.conf b/usr/src/cmd/flowadm/flowprop.conf
index ad6f802040..8d96210f51 100644
--- a/usr/src/cmd/flowadm/flowprop.conf
+++ b/usr/src/cmd/flowadm/flowprop.conf
@@ -25,5 +25,5 @@
#
# DO NOT EDIT OR PARSE THIS FILE!
#
-# Use the flowadm(1m) command to change the contents of this file.
+# Use the flowadm(8) command to change the contents of this file.
diff --git a/usr/src/cmd/fm/dicts/FMD.po b/usr/src/cmd/fm/dicts/FMD.po
index 16d7fd7c8d..4ff7e82e2d 100644
--- a/usr/src/cmd/fm/dicts/FMD.po
+++ b/usr/src/cmd/fm/dicts/FMD.po
@@ -61,7 +61,7 @@ msgstr "An illumos Fault Manager component generated a diagnosis for which no me
msgid "FMD-8000-11.response"
msgstr "The diagnosis has been saved in the fault log for examination by your illumos distribution team."
msgid "FMD-8000-11.impact"
-msgstr "The fault log will need to be manually examined using fmdump(1M) in order to determine if any human response is required."
+msgstr "The fault log will need to be manually examined using fmdump(8) in order to determine if any human response is required."
msgid "FMD-8000-11.action"
msgstr "Use fmdump -v -u <EVENT-ID> to view the diagnosis result. Ensure that fault management software is installed properly."
#
diff --git a/usr/src/cmd/fm/dicts/SCA1000.po b/usr/src/cmd/fm/dicts/SCA1000.po
index 2a8e1c8ab4..2767582f00 100644
--- a/usr/src/cmd/fm/dicts/SCA1000.po
+++ b/usr/src/cmd/fm/dicts/SCA1000.po
@@ -38,4 +38,4 @@ msgstr "The module has been disabled and un-registered as a hardware provider to
msgid "SCA1000-8000-0V.impact"
msgstr "The card will no longer function as a cryptographic accelerator."
msgid "SCA1000-8000-0V.action"
-msgstr "Ensure that the board is securely installed on the system.\n\nUse the cryptoadm(1M) command\n\ncryptoadm list -p\n\n\nto check whether 'dca/x' (where x is a number) is listed under 'kernel hardware\nproviders'. If so, run diagnostics on the hardware provider\nfollowing the procedures described in the Sun Crypto Accelerator 1000 Board\nUser's Guide.\n\nUse the fmdump(1M) command\n\nfmdump -vu event-id\n\n\nto view the results of diagnosis and the specific Field Replaceable\nUnit (FRU) identified for replacement.\n\nThe event-id can be found in the EVENT-ID field of the message.\nFor example:\n\n\nEVENT-ID: 39b30371-f009-c76c-90ee-b245784d2277\n"
+msgstr "Ensure that the board is securely installed on the system.\n\nUse the cryptoadm(8) command\n\ncryptoadm list -p\n\n\nto check whether 'dca/x' (where x is a number) is listed under 'kernel hardware\nproviders'. If so, run diagnostics on the hardware provider\nfollowing the procedures described in the Sun Crypto Accelerator 1000 Board\nUser's Guide.\n\nUse the fmdump(8) command\n\nfmdump -vu event-id\n\n\nto view the results of diagnosis and the specific Field Replaceable\nUnit (FRU) identified for replacement.\n\nThe event-id can be found in the EVENT-ID field of the message.\nFor example:\n\n\nEVENT-ID: 39b30371-f009-c76c-90ee-b245784d2277\n"
diff --git a/usr/src/cmd/fm/dicts/SCA500.po b/usr/src/cmd/fm/dicts/SCA500.po
index 46a0475572..74cd55b4cb 100644
--- a/usr/src/cmd/fm/dicts/SCA500.po
+++ b/usr/src/cmd/fm/dicts/SCA500.po
@@ -38,4 +38,4 @@ msgstr "The module has been disabled and un-registered as a hardware provider to
msgid "SCA500-8000-0D.impact"
msgstr "The card will no longer function as a cryptographic accelerator."
msgid "SCA500-8000-0D.action"
-msgstr "Ensure that the board is securely installed on the system.\n\nUse the cryptoadm(1M) command\n\ncryptoadm list -p\n\n\nto check whether 'dca/x' (where x is a number) is listed under 'kernel hardware\nproviders'. If so, run diagnostics on the hardware provider\nfollowing the procedures described in the Sun Crypto Accelerator 500 Board\nUser's Guide.\n\nUse the fmdump(1M) command\n\nfmdump -vu event-id\n\n\nto view the results of diagnosis and the specific Field Replaceable\nUnit (FRU) identified for replacement.\n\nThe event-id can be found in the EVENT-ID field of the message.\nFor example:\n\n\nEVENT-ID: 39b30371-f009-c76c-90ee-b245784d2277\n"
+msgstr "Ensure that the board is securely installed on the system.\n\nUse the cryptoadm(8) command\n\ncryptoadm list -p\n\n\nto check whether 'dca/x' (where x is a number) is listed under 'kernel hardware\nproviders'. If so, run diagnostics on the hardware provider\nfollowing the procedures described in the Sun Crypto Accelerator 500 Board\nUser's Guide.\n\nUse the fmdump(8) command\n\nfmdump -vu event-id\n\n\nto view the results of diagnosis and the specific Field Replaceable\nUnit (FRU) identified for replacement.\n\nThe event-id can be found in the EVENT-ID field of the message.\nFor example:\n\n\nEVENT-ID: 39b30371-f009-c76c-90ee-b245784d2277\n"
diff --git a/usr/src/cmd/fm/dicts/SUN4U.po b/usr/src/cmd/fm/dicts/SUN4U.po
index e6ea7d53e7..5451b04642 100644
--- a/usr/src/cmd/fm/dicts/SUN4U.po
+++ b/usr/src/cmd/fm/dicts/SUN4U.po
@@ -565,7 +565,7 @@ msgstr "The illumos Fault Manager received an event from the IO subsystem for wh
msgid "SUN4U-8001-2X.response"
msgstr "The error information has been saved for examination by your illumos distribution team."
msgid "SUN4U-8001-2X.impact"
-msgstr "The error log will need to be manually examined using fmdump(1M) in order to determine if any human response is required."
+msgstr "The error log will need to be manually examined using fmdump(8) in order to determine if any human response is required."
msgid "SUN4U-8001-2X.action"
msgstr "Use fmdump -ev -u <EVENT-ID> to view and record the undiagnosed errors."
#
diff --git a/usr/src/cmd/fm/dicts/SUNOS.po b/usr/src/cmd/fm/dicts/SUNOS.po
index caccdfc1b3..1dc86cc0ea 100644
--- a/usr/src/cmd/fm/dicts/SUNOS.po
+++ b/usr/src/cmd/fm/dicts/SUNOS.po
@@ -322,7 +322,7 @@ msgstr "Major"
msgid "SUNOS-8000-KL.description"
msgstr "The system has rebooted after a kernel panic. Refer to %s for more information."
msgid "SUNOS-8000-KL.response"
-msgstr "The failed system image was dumped to the dump device. If savecore is enabled (see dumpadm(1M)) a copy of the dump will be written to the savecore directory %<fault-list[0].dump-dir>."
+msgstr "The failed system image was dumped to the dump device. If savecore is enabled (see dumpadm(8)) a copy of the dump will be written to the savecore directory %<fault-list[0].dump-dir>."
msgid "SUNOS-8000-KL.impact"
msgstr "There may be some performance impact while the panic is copied to the savecore directory. Disk space usage by panics can be substantial."
msgid "SUNOS-8000-KL.action"
diff --git a/usr/src/cmd/fm/eversholt/files/common/disk.esc b/usr/src/cmd/fm/eversholt/files/common/disk.esc
index c94a0b675d..bd19f3a72c 100644
--- a/usr/src/cmd/fm/eversholt/files/common/disk.esc
+++ b/usr/src/cmd/fm/eversholt/files/common/disk.esc
@@ -33,7 +33,7 @@ asru P;
/*
* Over all comments for this file:
* <disk-as-detector> The disk-as-detector DE provides the mapping between
- * ereports generated by a kernel disk driver sd(7D) and resulting faults.
+ * ereports generated by a kernel disk driver sd(4D) and resulting faults.
*/
/*
diff --git a/usr/src/cmd/fm/fmd/common/fmd.xml b/usr/src/cmd/fm/fmd/common/fmd.xml
index 92881321f4..ceb59fff17 100644
--- a/usr/src/cmd/fm/fmd/common/fmd.xml
+++ b/usr/src/cmd/fm/fmd/common/fmd.xml
@@ -105,7 +105,7 @@
<documentation>
<manpage
title='fmd'
- section='1M'
+ section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/fm/fmd/common/fmd_ctl.c b/usr/src/cmd/fm/fmd/common/fmd_ctl.c
index b2c4d1fd5a..72a07b2bee 100644
--- a/usr/src/cmd/fm/fmd/common/fmd_ctl.c
+++ b/usr/src/cmd/fm/fmd/common/fmd_ctl.c
@@ -25,8 +25,6 @@
* Use is subject to license terms.
*/
-#pragma ident "%Z%%M% %I% %E% SMI"
-
/*
* FMD Control Event Subsystem
*
@@ -84,7 +82,7 @@ fmd_ctl_addhrt(nvlist_t *nvl)
fmd_time_addhrtime(delta);
/*
- * If the non-adjustable clock has reached the apocalypse, fmd(1M)
+ * If the non-adjustable clock has reached the apocalypse, fmd(8)
* should exit gracefully: queue a SIGTERM for the main thread.
*/
if (fmd_time_gethrtime() == INT64_MAX)
diff --git a/usr/src/cmd/fm/fmd/common/fmd_eventq.c b/usr/src/cmd/fm/fmd/common/fmd_eventq.c
index f245a8473c..f6778e8c7b 100644
--- a/usr/src/cmd/fm/fmd/common/fmd_eventq.c
+++ b/usr/src/cmd/fm/fmd/common/fmd_eventq.c
@@ -266,7 +266,7 @@ top:
* If we dequeued a control event, release it and go back to sleep.
* fmd_event_rele() on the event will block as described in fmd_ctl.c.
* This effectively renders control events invisible to our callers
- * as well as to statistics and observability tools (e.g. fmstat(1M)).
+ * as well as to statistics and observability tools (e.g. fmstat(8)).
*/
if (FMD_EVENT_TYPE(ep) == FMD_EVT_CTL) {
fmd_event_rele(ep);
diff --git a/usr/src/cmd/fm/fmd/common/fmd_log.c b/usr/src/cmd/fm/fmd/common/fmd_log.c
index 7f86d30767..ad182f2594 100644
--- a/usr/src/cmd/fm/fmd/common/fmd_log.c
+++ b/usr/src/cmd/fm/fmd/common/fmd_log.c
@@ -24,8 +24,6 @@
* Use is subject to license terms.
*/
-#pragma ident "%Z%%M% %I% %E% SMI"
-
/*
* FMD Log File Subsystem
*
@@ -619,10 +617,10 @@ fmd_log_append(fmd_log_t *lp, fmd_event_t *e, fmd_case_t *cp)
* Before writing the record, check to see if this would cause the free
* space in the filesystem to drop below our minfree threshold. If so,
* don't bother attempting the write and instead pretend it failed. As
- * fmd(1M) runs as root, it will be able to access the space "reserved"
+ * fmd(8) runs as root, it will be able to access the space "reserved"
* for root, and therefore can run the system of out of disk space in a
* heavy error load situation, violating the basic design principle of
- * fmd(1M) that we don't want to make a bad situation even worse.
+ * fmd(8) that we don't want to make a bad situation even worse.
*/
(void) pthread_mutex_lock(&lp->log_lock);
@@ -1006,7 +1004,7 @@ fmd_log_update(fmd_log_t *lp)
/*
* Rotate the specified log by renaming its underlying file to a staging file
- * that can be handed off to logadm(1M) or an administrator script. If the
+ * that can be handed off to logadm(8) or an administrator script. If the
* rename succeeds, open a new log file using the old path and return it.
* Note that we are relying our caller to use some higher-level mechanism to
* ensure that fmd_log_rotate() cannot be called while other threads are
diff --git a/usr/src/cmd/fm/fmd/common/fmd_module.h b/usr/src/cmd/fm/fmd/common/fmd_module.h
index 04917065b7..89f21dd521 100644
--- a/usr/src/cmd/fm/fmd/common/fmd_module.h
+++ b/usr/src/cmd/fm/fmd/common/fmd_module.h
@@ -65,7 +65,7 @@ typedef struct fmd_modhash {
} fmd_modhash_t;
/*
- * Statistics maintained by fmd itself on behalf of all modules for fmstat(1M).
+ * Statistics maintained by fmd itself on behalf of all modules for fmstat(8).
* NOTE: FMD_TYPE_STRING statistics should not be used here. If they are
* required in the future, the FMD_ADM_MODDSTAT service routine must change.
*/
diff --git a/usr/src/cmd/fm/fmd/common/fmd_rpc_adm.c b/usr/src/cmd/fm/fmd/common/fmd_rpc_adm.c
index 5890c6dc99..fec7969997 100644
--- a/usr/src/cmd/fm/fmd/common/fmd_rpc_adm.c
+++ b/usr/src/cmd/fm/fmd/common/fmd_rpc_adm.c
@@ -167,7 +167,7 @@ fmd_adm_moddstat_1_svc(char *name,
* Note: the bcopy() here is valid only if no FMD_TYPE_STRING stats
* are present in mp->mod_stats. We don't use any for the daemon-
* maintained stats and provide this function in order to reduce the
- * overhead of the fmstat(1M) default view, where these minimal stats
+ * overhead of the fmstat(8) default view, where these minimal stats
* must be retrieved for all of the active modules.
*/
(void) pthread_mutex_lock(&mp->mod_stats_lock);
diff --git a/usr/src/cmd/fm/fmd/common/fmd_scheme.c b/usr/src/cmd/fm/fmd/common/fmd_scheme.c
index 367ecde455..a04a5764a5 100644
--- a/usr/src/cmd/fm/fmd/common/fmd_scheme.c
+++ b/usr/src/cmd/fm/fmd/common/fmd_scheme.c
@@ -40,7 +40,7 @@
/*
* The fmd resource scheme, used for fmd modules, must be implemented here for
- * the benefit of fmd-self-diagnosis and also in schemes/fmd for fmdump(1M).
+ * the benefit of fmd-self-diagnosis and also in schemes/fmd for fmdump(8).
*/
ssize_t
fmd_scheme_fmd_nvl2str(nvlist_t *nvl, char *buf, size_t buflen)
diff --git a/usr/src/cmd/fm/fmd/common/fmd_sysevent.c b/usr/src/cmd/fm/fmd/common/fmd_sysevent.c
index 9f46f13411..06ec7f2d4d 100644
--- a/usr/src/cmd/fm/fmd/common/fmd_sysevent.c
+++ b/usr/src/cmd/fm/fmd/common/fmd_sysevent.c
@@ -535,8 +535,8 @@ sysev_init(fmd_hdl_t *hdl)
* the system default, we do *not* want to unsubscribe because the kernel will
* remove the subscriber queue and any events published in our absence will
* therefore be lost. This scenario may occur when, for example, fmd is sent
- * a SIGTERM by init(1M) during reboot but an error is detected and makes it
- * into the sysevent channel queue before init(1M) manages to call uadmin(2).
+ * a SIGTERM by init(8) during reboot but an error is detected and makes it
+ * into the sysevent channel queue before init(8) manages to call uadmin(2).
*/
void
sysev_fini(fmd_hdl_t *hdl)
diff --git a/usr/src/cmd/fm/fmstat/common/fmstat.c b/usr/src/cmd/fm/fmstat/common/fmstat.c
index e779fca00b..69fa34c7a3 100644
--- a/usr/src/cmd/fm/fmstat/common/fmstat.c
+++ b/usr/src/cmd/fm/fmstat/common/fmstat.c
@@ -540,7 +540,7 @@ stat_mod(const char *name, int aflag, int zflag)
if (fmd_adm_stats_read(g_adm, name, &ams) != 0) {
die("failed to retrieve statistics for %s",
- name ? name : "fmd(1M)");
+ name ? name : "fmd(8)");
}
(void) printf("%20s %-16s %s\n", "NAME", "VALUE", "DESCRIPTION");
diff --git a/usr/src/cmd/fm/modules/SUNW,Netra-CP3060/etm/etm.conf b/usr/src/cmd/fm/modules/SUNW,Netra-CP3060/etm/etm.conf
index 496754759c..f90226df2c 100644
--- a/usr/src/cmd/fm/modules/SUNW,Netra-CP3060/etm/etm.conf
+++ b/usr/src/cmd/fm/modules/SUNW,Netra-CP3060/etm/etm.conf
@@ -21,7 +21,6 @@
# Copyright 2008 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
#
-#ident "%Z%%M% %I% %E% SMI"
# transport these FMA events from the domain to the SP
subscribe fault.cpu.*
@@ -48,7 +47,7 @@ subscribe list.repaired
# The "etm_alert_facility" property may only be configured to use
# LOG_DAEMON (which is the default) or one of LOG_LOCAL[0-7]. For
# information about the use of local log facilities, refer to syslog(3C),
-# syslogd(1M), and syslog.conf(4).
+# syslogd(8), and syslog.conf(5).
#
# Example settings:
# setprop etm_alert_console true
diff --git a/usr/src/cmd/fm/modules/SUNW,Netra-CP3260/etm/etm.conf b/usr/src/cmd/fm/modules/SUNW,Netra-CP3260/etm/etm.conf
index 6d03fba94c..301291548c 100644
--- a/usr/src/cmd/fm/modules/SUNW,Netra-CP3260/etm/etm.conf
+++ b/usr/src/cmd/fm/modules/SUNW,Netra-CP3260/etm/etm.conf
@@ -21,7 +21,6 @@
# Copyright 2008 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
#
-#ident "%Z%%M% %I% %E% SMI"
# transport these FMA events from the domain to the SP
subscribe fault.cpu.*
@@ -49,7 +48,7 @@ subscribe list.repaired
# The "etm_alert_facility" property may only be configured to use
# LOG_DAEMON (which is the default) or one of LOG_LOCAL[0-7]. For
# information about the use of local log facilities, refer to syslog(3C),
-# syslogd(1M), and syslog.conf(4).
+# syslogd(8), and syslog.conf(5).
#
# Example settings:
# setprop etm_alert_console true
diff --git a/usr/src/cmd/fm/modules/SUNW,Netra-T5220/etm/etm.conf b/usr/src/cmd/fm/modules/SUNW,Netra-T5220/etm/etm.conf
index 6d03fba94c..301291548c 100644
--- a/usr/src/cmd/fm/modules/SUNW,Netra-T5220/etm/etm.conf
+++ b/usr/src/cmd/fm/modules/SUNW,Netra-T5220/etm/etm.conf
@@ -21,7 +21,6 @@
# Copyright 2008 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
#
-#ident "%Z%%M% %I% %E% SMI"
# transport these FMA events from the domain to the SP
subscribe fault.cpu.*
@@ -49,7 +48,7 @@ subscribe list.repaired
# The "etm_alert_facility" property may only be configured to use
# LOG_DAEMON (which is the default) or one of LOG_LOCAL[0-7]. For
# information about the use of local log facilities, refer to syslog(3C),
-# syslogd(1M), and syslog.conf(4).
+# syslogd(8), and syslog.conf(5).
#
# Example settings:
# setprop etm_alert_console true
diff --git a/usr/src/cmd/fm/modules/SUNW,Netra-T5440/etm/etm.conf b/usr/src/cmd/fm/modules/SUNW,Netra-T5440/etm/etm.conf
index e61897c85a..463952123c 100644
--- a/usr/src/cmd/fm/modules/SUNW,Netra-T5440/etm/etm.conf
+++ b/usr/src/cmd/fm/modules/SUNW,Netra-T5440/etm/etm.conf
@@ -21,7 +21,6 @@
# Copyright 2008 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
#
-#ident "%Z%%M% %I% %E% SMI"
# transport these FMA events from the domain to the SP
subscribe fault.cpu.*
@@ -51,7 +50,7 @@ subscribe list.repaired
# The "etm_alert_facility" property may only be configured to use
# LOG_DAEMON (which is the default) or one of LOG_LOCAL[0-7]. For
# information about the use of local log facilities, refer to syslog(3C),
-# syslogd(1M), and syslog.conf(4).
+# syslogd(8), and syslog.conf(5).
#
# Example settings:
# setprop etm_alert_console true
diff --git a/usr/src/cmd/fm/modules/SUNW,SPARC-Enterprise-T5120/etm/etm.conf b/usr/src/cmd/fm/modules/SUNW,SPARC-Enterprise-T5120/etm/etm.conf
index 6d03fba94c..301291548c 100644
--- a/usr/src/cmd/fm/modules/SUNW,SPARC-Enterprise-T5120/etm/etm.conf
+++ b/usr/src/cmd/fm/modules/SUNW,SPARC-Enterprise-T5120/etm/etm.conf
@@ -21,7 +21,6 @@
# Copyright 2008 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
#
-#ident "%Z%%M% %I% %E% SMI"
# transport these FMA events from the domain to the SP
subscribe fault.cpu.*
@@ -49,7 +48,7 @@ subscribe list.repaired
# The "etm_alert_facility" property may only be configured to use
# LOG_DAEMON (which is the default) or one of LOG_LOCAL[0-7]. For
# information about the use of local log facilities, refer to syslog(3C),
-# syslogd(1M), and syslog.conf(4).
+# syslogd(8), and syslog.conf(5).
#
# Example settings:
# setprop etm_alert_console true
diff --git a/usr/src/cmd/fm/modules/SUNW,Sun-Blade-T6300/etm/etm.conf b/usr/src/cmd/fm/modules/SUNW,Sun-Blade-T6300/etm/etm.conf
index be3964512c..f90226df2c 100644
--- a/usr/src/cmd/fm/modules/SUNW,Sun-Blade-T6300/etm/etm.conf
+++ b/usr/src/cmd/fm/modules/SUNW,Sun-Blade-T6300/etm/etm.conf
@@ -21,7 +21,6 @@
# Copyright 2008 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
#
-# ident "%Z%%M% %I% %E% SMI"
# transport these FMA events from the domain to the SP
subscribe fault.cpu.*
@@ -48,7 +47,7 @@ subscribe list.repaired
# The "etm_alert_facility" property may only be configured to use
# LOG_DAEMON (which is the default) or one of LOG_LOCAL[0-7]. For
# information about the use of local log facilities, refer to syslog(3C),
-# syslogd(1M), and syslog.conf(4).
+# syslogd(8), and syslog.conf(5).
#
# Example settings:
# setprop etm_alert_console true
diff --git a/usr/src/cmd/fm/modules/SUNW,Sun-Blade-T6320/etm/etm.conf b/usr/src/cmd/fm/modules/SUNW,Sun-Blade-T6320/etm/etm.conf
index 224a7d5f4b..301291548c 100644
--- a/usr/src/cmd/fm/modules/SUNW,Sun-Blade-T6320/etm/etm.conf
+++ b/usr/src/cmd/fm/modules/SUNW,Sun-Blade-T6320/etm/etm.conf
@@ -21,7 +21,6 @@
# Copyright 2008 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
#
-# ident "%Z%%M% %I% %E% SMI"
# transport these FMA events from the domain to the SP
subscribe fault.cpu.*
@@ -49,7 +48,7 @@ subscribe list.repaired
# The "etm_alert_facility" property may only be configured to use
# LOG_DAEMON (which is the default) or one of LOG_LOCAL[0-7]. For
# information about the use of local log facilities, refer to syslog(3C),
-# syslogd(1M), and syslog.conf(4).
+# syslogd(8), and syslog.conf(5).
#
# Example settings:
# setprop etm_alert_console true
diff --git a/usr/src/cmd/fm/modules/SUNW,Sun-Fire-T200/etm/etm.conf b/usr/src/cmd/fm/modules/SUNW,Sun-Fire-T200/etm/etm.conf
index be3964512c..f90226df2c 100644
--- a/usr/src/cmd/fm/modules/SUNW,Sun-Fire-T200/etm/etm.conf
+++ b/usr/src/cmd/fm/modules/SUNW,Sun-Fire-T200/etm/etm.conf
@@ -21,7 +21,6 @@
# Copyright 2008 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
#
-# ident "%Z%%M% %I% %E% SMI"
# transport these FMA events from the domain to the SP
subscribe fault.cpu.*
@@ -48,7 +47,7 @@ subscribe list.repaired
# The "etm_alert_facility" property may only be configured to use
# LOG_DAEMON (which is the default) or one of LOG_LOCAL[0-7]. For
# information about the use of local log facilities, refer to syslog(3C),
-# syslogd(1M), and syslog.conf(4).
+# syslogd(8), and syslog.conf(5).
#
# Example settings:
# setprop etm_alert_console true
diff --git a/usr/src/cmd/fm/modules/SUNW,T5140/etm/etm.conf b/usr/src/cmd/fm/modules/SUNW,T5140/etm/etm.conf
index e61897c85a..463952123c 100644
--- a/usr/src/cmd/fm/modules/SUNW,T5140/etm/etm.conf
+++ b/usr/src/cmd/fm/modules/SUNW,T5140/etm/etm.conf
@@ -21,7 +21,6 @@
# Copyright 2008 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
#
-#ident "%Z%%M% %I% %E% SMI"
# transport these FMA events from the domain to the SP
subscribe fault.cpu.*
@@ -51,7 +50,7 @@ subscribe list.repaired
# The "etm_alert_facility" property may only be configured to use
# LOG_DAEMON (which is the default) or one of LOG_LOCAL[0-7]. For
# information about the use of local log facilities, refer to syslog(3C),
-# syslogd(1M), and syslog.conf(4).
+# syslogd(8), and syslog.conf(5).
#
# Example settings:
# setprop etm_alert_console true
diff --git a/usr/src/cmd/fm/modules/SUNW,USBRDT-5240/etm/etm.conf b/usr/src/cmd/fm/modules/SUNW,USBRDT-5240/etm/etm.conf
index 0b12e90d96..f481dd6f77 100644
--- a/usr/src/cmd/fm/modules/SUNW,USBRDT-5240/etm/etm.conf
+++ b/usr/src/cmd/fm/modules/SUNW,USBRDT-5240/etm/etm.conf
@@ -21,7 +21,6 @@
# Copyright 2008 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
#
-# ident "%Z%%M% %I% %E% SMI"
# transport these FMA events from the domain to the SP
subscribe fault.cpu.*
@@ -50,7 +49,7 @@ subscribe list.repaired
# The "etm_alert_facility" property may only be configured to use
# LOG_DAEMON (which is the default) or one of LOG_LOCAL[0-7]. For
# information about the use of local log facilities, refer to syslog(3C),
-# syslogd(1M), and syslog.conf(4).
+# syslogd(8), and syslog.conf(5).
#
# Example settings:
# setprop etm_alert_console true
diff --git a/usr/src/cmd/fm/modules/common/syslog-msgs/syslog-msgs.conf b/usr/src/cmd/fm/modules/common/syslog-msgs/syslog-msgs.conf
index 313ec49ac2..61c2774799 100644
--- a/usr/src/cmd/fm/modules/common/syslog-msgs/syslog-msgs.conf
+++ b/usr/src/cmd/fm/modules/common/syslog-msgs/syslog-msgs.conf
@@ -23,7 +23,6 @@
# Copyright 2004 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
#
-#ident "%Z%%M% %I% %E% SMI"
#
# syslog-msgs agent properties:
@@ -36,7 +35,7 @@
#
# The "facility" property may only be configured to use LOG_DAEMON (which is
# the default) or one of LOG_LOCAL[0-7]. For information about the use of
-# local log facilities, refer to syslog(3C), syslogd(1M), and syslog.conf(4).
+# local log facilities, refer to syslog(3C), syslogd(8), and syslog.conf(5).
#
# Example settings:
# setprop gmt true
diff --git a/usr/src/cmd/fm/modules/common/syslog-msgs/syslog.c b/usr/src/cmd/fm/modules/common/syslog-msgs/syslog.c
index 8f54d3493c..7837910fb6 100644
--- a/usr/src/cmd/fm/modules/common/syslog-msgs/syslog.c
+++ b/usr/src/cmd/fm/modules/common/syslog-msgs/syslog.c
@@ -49,8 +49,8 @@ static struct stats {
} syslog_stats = {
{ "bad_vers", FMD_TYPE_UINT64, "event version is missing or invalid" },
{ "bad_code", FMD_TYPE_UINT64, "event code has no dictionary name" },
- { "log_err", FMD_TYPE_UINT64, "failed to log message to log(7D)" },
- { "msg_err", FMD_TYPE_UINT64, "failed to log message to sysmsg(7D)" },
+ { "log_err", FMD_TYPE_UINT64, "failed to log message to log(4D)" },
+ { "msg_err", FMD_TYPE_UINT64, "failed to log message to sysmsg(4D)" },
{ "no_msg", FMD_TYPE_UINT64, "message logging suppressed" }
};
@@ -72,18 +72,18 @@ static const struct facility {
static fmd_msg_hdl_t *syslog_msghdl; /* handle for libfmd_msg calls */
static int syslog_msgall; /* set to message all faults */
-static log_ctl_t syslog_ctl; /* log(7D) meta-data for each msg */
-static int syslog_logfd = -1; /* log(7D) file descriptor */
-static int syslog_msgfd = -1; /* sysmsg(7D) file descriptor */
+static log_ctl_t syslog_ctl; /* log(4D) meta-data for each msg */
+static int syslog_logfd = -1; /* log(4D) file descriptor */
+static int syslog_msgfd = -1; /* sysmsg(4D) file descriptor */
static int syslog_file; /* log to syslog_logfd */
static int syslog_cons; /* log to syslog_msgfd */
static const char SYSLOG_POINTER[] = "syslog-msgs-pointer";
/*
* Ideally we would just use syslog(3C) for outputting our messages, but our
- * messaging standard defines a nice multi-line format and syslogd(1M) is very
+ * messaging standard defines a nice multi-line format and syslogd(8) is very
* inflexible and stupid when it comes to multi-line messages. It pulls data
- * out of log(7D) and splits it up by \n, printing each line to the console
+ * out of log(4D) and splits it up by \n, printing each line to the console
* with its usual prefix of date and sender; it uses the same behavior for the
* messages file as well. Further, syslog(3C) provides no CE_CONT equivalent
* for userland callers (which at least works around repeated file prefixing).
@@ -97,12 +97,12 @@ static const char SYSLOG_POINTER[] = "syslog-msgs-pointer";
* messages and some knowledge of how the Solaris log drivers work. We first
* construct an enlarged format string containing the appropriate msgid(1).
* We then format the caller's message using the provided format and buffer.
- * We send this message to log(7D) using putmsg() with SL_CONSOLE | SL_LOGONLY
+ * We send this message to log(4D) using putmsg() with SL_CONSOLE | SL_LOGONLY
* set in the log_ctl_t. The log driver allows us to set SL_LOGONLY when we
* construct messages ourself, indicating that syslogd should only emit the
* message to /var/adm/messages and any remote hosts, and skip the console.
* Then we emit the message a second time, without the special prefix, to the
- * sysmsg(7D) device, which handles console redirection and also permits us
+ * sysmsg(4D) device, which handles console redirection and also permits us
* to output any characters we like to the console, including \n and \r.
*/
static void
diff --git a/usr/src/cmd/fm/modules/sun4v/etm/etm.c b/usr/src/cmd/fm/modules/sun4v/etm/etm.c
index af8768f6d3..cde89e5065 100644
--- a/usr/src/cmd/fm/modules/sun4v/etm/etm.c
+++ b/usr/src/cmd/fm/modules/sun4v/etm/etm.c
@@ -233,10 +233,10 @@ etm_fma_resp_wait_time = 30; /* time (sec) wait for fma event resp */
static pthread_mutex_t
etm_write_lock = PTHREAD_MUTEX_INITIALIZER; /* for write operations */
-static log_ctl_t syslog_ctl; /* log(7D) meta-data for each msg */
-static int syslog_facility; /* log(7D) facility (part of priority) */
-static int syslog_logfd = -1; /* log(7D) file descriptor */
-static int syslog_msgfd = -1; /* sysmsg(7D) file descriptor */
+static log_ctl_t syslog_ctl; /* log(4D) meta-data for each msg */
+static int syslog_facility; /* log(4D) facility (part of priority) */
+static int syslog_logfd = -1; /* log(4D) file descriptor */
+static int syslog_msgfd = -1; /* sysmsg(4D) file descriptor */
static int syslog_file = 0; /* log to syslog_logfd */
static int syslog_cons = 0; /* log to syslog_msgfd */
@@ -517,9 +517,9 @@ static struct stats {
/* Alert logging errors */
{ "etm_log_err", FMD_TYPE_UINT64,
- "failed to log message to log(7D)" },
+ "failed to log message to log(4D)" },
{ "etm_msg_err", FMD_TYPE_UINT64,
- "failed to log message to sysmsg(7D)" },
+ "failed to log message to sysmsg(4D)" },
/* miscellaneous stats */
@@ -1342,7 +1342,7 @@ etm_post_to_fmd(fmd_hdl_t *hdl, fmd_xprt_t *fmd_xprt, nvlist_t *evp)
* that would create the situation where this module's openlog() would
* have the monopoly on syslog(3C) for the daemon and all its modules.
* To avoid that situation, this module uses the same logic as the
- * syslog-msgs FM module to directly call into the log(7D) and sysmsg(7D)
+ * syslog-msgs FM module to directly call into the log(4D) and sysmsg(4D)
* devices for syslog and console.
*/
diff --git a/usr/src/cmd/fm/modules/sun4v/etm/etm.conf b/usr/src/cmd/fm/modules/sun4v/etm/etm.conf
index b5118e2b19..4291a9ca20 100644
--- a/usr/src/cmd/fm/modules/sun4v/etm/etm.conf
+++ b/usr/src/cmd/fm/modules/sun4v/etm/etm.conf
@@ -21,7 +21,6 @@
# Copyright 2006 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
#
-#ident "%Z%%M% %I% %E% SMI"
# transport these FMA events from the domain to the SP
@@ -45,7 +44,7 @@ subscribe list.repaired
# The "etm_alert_facility" property may only be configured to use
# LOG_DAEMON (which is the default) or one of LOG_LOCAL[0-7]. For
# information about the use of local log facilities, refer to syslog(3C),
-# syslogd(1M), and syslog.conf(4).
+# syslogd(8), and syslog.conf(5).
#
# Example settings:
# setprop etm_alert_console true
diff --git a/usr/src/cmd/fm/notify/notify-params.xml b/usr/src/cmd/fm/notify/notify-params.xml
index 800383c29b..7e3d2a72bd 100644
--- a/usr/src/cmd/fm/notify/notify-params.xml
+++ b/usr/src/cmd/fm/notify/notify-params.xml
@@ -85,16 +85,16 @@
<stability value='Evolving' />
<template>
- <common_name>
- <loctext xml:lang='C'>
+ <common_name>
+ <loctext xml:lang='C'>
Solaris Fault Manager notification parameters
</loctext>
</common_name>
<documentation>
- <manpage
+ <manpage
title='smf'
- section='5'
+ section='7'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/fm/notify/smtp-notify/common/smtp-notify.xml b/usr/src/cmd/fm/notify/smtp-notify/common/smtp-notify.xml
index 4e6437a924..95668dcde1 100644
--- a/usr/src/cmd/fm/notify/smtp-notify/common/smtp-notify.xml
+++ b/usr/src/cmd/fm/notify/smtp-notify/common/smtp-notify.xml
@@ -103,13 +103,13 @@
<stability value='Evolving' />
<template>
- <common_name>
- <loctext xml:lang='C'>
+ <common_name>
+ <loctext xml:lang='C'>
Solaris Email Event Notification Agent
</loctext>
</common_name>
<documentation>
- <manpage title='smtp-notify' section='1M'
+ <manpage title='smtp-notify' section='8'
manpath='/usr/share/man' />
</documentation>
<pg_pattern name='config' type='application' target='this'
@@ -134,7 +134,7 @@ The root directory that will be used for all pathnames evaluated by smtp-notify
<visibility value='readwrite'/>
<cardinality min='1' max='1'/>
</prop_pattern>
- </pg_pattern>
+ </pg_pattern>
</template>
</service>
diff --git a/usr/src/cmd/fm/notify/snmp-notify/common/snmp-notify.xml b/usr/src/cmd/fm/notify/snmp-notify/common/snmp-notify.xml
index 17dc4b2923..539c671b41 100644
--- a/usr/src/cmd/fm/notify/snmp-notify/common/snmp-notify.xml
+++ b/usr/src/cmd/fm/notify/snmp-notify/common/snmp-notify.xml
@@ -104,13 +104,13 @@
<stability value='Evolving' />
<template>
- <common_name>
- <loctext xml:lang='C'>
+ <common_name>
+ <loctext xml:lang='C'>
Solaris SNMP Event Notification Agent
</loctext>
</common_name>
<documentation>
- <manpage title='snmp-notify' section='1M'
+ <manpage title='snmp-notify' section='8'
manpath='/usr/share/man' />
</documentation>
<pg_pattern name='config' type='application' target='this'
@@ -135,7 +135,7 @@ The root directory that will be used for all pathnames evaluated by snmp-notify
<visibility value='readwrite'/>
<cardinality min='1' max='1'/>
</prop_pattern>
- </pg_pattern>
+ </pg_pattern>
</template>
</service>
diff --git a/usr/src/cmd/fm/schemes/fmd/scheme.c b/usr/src/cmd/fm/schemes/fmd/scheme.c
index 0b2039cd81..929b4dbd0b 100644
--- a/usr/src/cmd/fm/schemes/fmd/scheme.c
+++ b/usr/src/cmd/fm/schemes/fmd/scheme.c
@@ -27,7 +27,7 @@
/*
* This routine should be kept in sync with the built-in version provided
- * as part of fmd(1M) itself -- see usr/src/cmd/fm/fmd/common/fmd_scheme.c
+ * as part of fmd(8) itself -- see usr/src/cmd/fm/fmd/common/fmd_scheme.c
*/
ssize_t
fmd_fmri_nvl2str(nvlist_t *nvl, char *buf, size_t buflen)
diff --git a/usr/src/cmd/fm/scripts/fmsim.ksh b/usr/src/cmd/fm/scripts/fmsim.ksh
index 6e20f25d43..907bebecff 100644
--- a/usr/src/cmd/fm/scripts/fmsim.ksh
+++ b/usr/src/cmd/fm/scripts/fmsim.ksh
@@ -23,7 +23,6 @@
# Copyright 2006 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
#
-#ident "%Z%%M% %I% %E% SMI"
export PATH=/usr/bin:/usr/sbin:/usr/ccs/bin
unset ENV TMPDIR
@@ -176,13 +175,13 @@ if $opt_h || [[ -z "$files" && $opt_i = false ]]; then
"[-t args] [file ...]"
echo "\t-d set the simulation root directory to the given location"
- echo "\t-D start fmd(1M) using dtrace(1M) and specified D script"
+ echo "\t-D start fmd(8) using dtrace(8) and specified D script"
echo "\t-e display error log content instead of fault log content"
echo "\t-h display usage information for fmsim and exit"
echo "\t-i set interactive mode: do not stop after sending events"
- echo "\t-o set fmd(1M) option to specified value during simulation"
+ echo "\t-o set fmd(8) option to specified value during simulation"
echo "\t-s set up simulation world but do not actually run simulation"
- echo "\t-t start fmd(1M) using truss(1) and specified arguments"
+ echo "\t-t start fmd(8) using truss(1) and specified arguments"
echo "\t-v set verbose mode: display additional event detail"
echo "\t-V set very verbose mode: display complete event contents"
echo "\t-w wait for a keypress after simulation completes"
@@ -255,7 +254,7 @@ cat >$simscript <<EOS
#ident "@(#)fmsim.ksh 1.5 06/10/11 SMI"
#
-# fmsim(1M) script generated for $simroot $(date)
+# fmsim(8) script generated for $simroot $(date)
#
export LD_LIBRARY_PATH=$simroot/usr/lib:$simroot/usr/lib/fm
@@ -282,7 +281,7 @@ fi
export LD_LIBRARY_PATH=$simroot/usr/lib:$simroot/usr/lib/fm
export LD_LIBRARY_PATH_64=$simroot/usr/lib/64:$simroot/usr/lib/fm/$isa64
-echo "fmsim: simulation $$ running fmd(1M)\c"
+echo "fmsim: simulation $$ running fmd(8)\c"
./usr/lib/fm/fmd/fmd -V | cut -d: -f2
./$simscript &
diff --git a/usr/src/cmd/fmthard/fmthard.c b/usr/src/cmd/fmthard/fmthard.c
index 4bc20da317..8a44358f97 100644
--- a/usr/src/cmd/fmthard/fmthard.c
+++ b/usr/src/cmd/fmthard/fmthard.c
@@ -121,7 +121,7 @@ static diskaddr_t lastlba = 0; /* last LBA on 64-bit VTOC */
static char *uboot = "boot";
#elif defined(i386)
-/* use installboot(1M) to install boot blocks */
+/* use installboot(8) to install boot blocks */
static char *uboot = "";
#else
#error No platform defined.
@@ -168,7 +168,7 @@ main(int argc, char **argv)
case 'b':
(void) fprintf(stderr,
"fmthard: -p and -b no longer supported."
- " Use installboot(1M) to install boot blocks\n");
+ " Use installboot(8) to install boot blocks\n");
break;
#endif /* defined(i386) */
diff --git a/usr/src/cmd/format/label.c b/usr/src/cmd/format/label.c
index 9ce00d0082..56a5f3d394 100644
--- a/usr/src/cmd/format/label.c
+++ b/usr/src/cmd/format/label.c
@@ -670,7 +670,7 @@ read_efi_label(int fd, struct efi_info *label, struct disk_info *disk_info)
/*
* We've read a 64-bit label which has no geometry information. Use
* some heuristics to fake up a geometry that would match the disk in
- * order to make the rest of format(1M) happy.
+ * order to make the rest of format(8) happy.
*/
static int
vtoc64_to_label(struct efi_info *label, struct dk_gpt *vtoc)
diff --git a/usr/src/cmd/fs.d/autofs/auto_subr.c b/usr/src/cmd/fs.d/autofs/auto_subr.c
index 200d118ea8..97ccb2387d 100644
--- a/usr/src/cmd/fs.d/autofs/auto_subr.c
+++ b/usr/src/cmd/fs.d/autofs/auto_subr.c
@@ -939,7 +939,7 @@ trace_prt(int id, char *fmt, ...)
}
/*
- * Extract the isalist(5) for userland from the kernel.
+ * Extract the isalist(7) for userland from the kernel.
*/
static char *
isalist(void)
diff --git a/usr/src/cmd/fs.d/autofs/autofs.dfl b/usr/src/cmd/fs.d/autofs/autofs.dfl
index 8d3c53e6b9..c7b44d3f0d 100644
--- a/usr/src/cmd/fs.d/autofs/autofs.dfl
+++ b/usr/src/cmd/fs.d/autofs/autofs.dfl
@@ -23,5 +23,5 @@
#
#
-# Moved to SMF. Use sharectl(1M) to manage AUTOFS properties.
+# Moved to SMF. Use sharectl(8) to manage AUTOFS properties.
#
diff --git a/usr/src/cmd/fs.d/autofs/autofs.xml b/usr/src/cmd/fs.d/autofs/autofs.xml
index f750fd7560..f0e165029b 100644
--- a/usr/src/cmd/fs.d/autofs/autofs.xml
+++ b/usr/src/cmd/fs.d/autofs/autofs.xml
@@ -124,7 +124,7 @@
</loctext>
</common_name>
<documentation>
- <manpage title='automount' section='1M'
+ <manpage title='automount' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/fs.d/nfs/etc/nfs.dfl b/usr/src/cmd/fs.d/nfs/etc/nfs.dfl
index 13bdb75d68..0abad9ac63 100644
--- a/usr/src/cmd/fs.d/nfs/etc/nfs.dfl
+++ b/usr/src/cmd/fs.d/nfs/etc/nfs.dfl
@@ -23,5 +23,5 @@
#
#
-# Moved to SMF. Use sharectl(1M) to manage NFS properties.
+# Moved to SMF. Use sharectl(8) to manage NFS properties.
#
diff --git a/usr/src/cmd/fs.d/nfs/nfsmapid/nfsmapid_server.c b/usr/src/cmd/fs.d/nfs/nfsmapid/nfsmapid_server.c
index 3fde3ce099..66ffafbdb5 100644
--- a/usr/src/cmd/fs.d/nfs/nfsmapid/nfsmapid_server.c
+++ b/usr/src/cmd/fs.d/nfs/nfsmapid/nfsmapid_server.c
@@ -832,7 +832,7 @@ check_domain(int sighup)
}
/*
- * Need to be able to open the DIAG_FILE before nfsmapid(1m)
+ * Need to be able to open the DIAG_FILE before nfsmapid(8)
* releases it's root priviledges. The DIAG_FILE then remains
* open for the duration of this nfsmapid instance via n4_fd.
*/
@@ -880,7 +880,7 @@ update_diag_file(char *new)
/*
* Callback function for libmapid. This will be called
- * by the lib, everytime the nfsmapid(1m) domain changes.
+ * by the lib, everytime the nfsmapid(8) domain changes.
*/
void *
cb_update_domain(void *arg)
diff --git a/usr/src/cmd/fs.d/nfs/svc/cbd.xml b/usr/src/cmd/fs.d/nfs/svc/cbd.xml
index fed8bd027d..f4ee82bee2 100644
--- a/usr/src/cmd/fs.d/nfs/svc/cbd.xml
+++ b/usr/src/cmd/fs.d/nfs/svc/cbd.xml
@@ -69,7 +69,7 @@
grouping='require_all'
restart_on='error'
type='service'>
- <service_fmri value='svc:/system/filesystem/minimal' />
+ <service_fmri value='svc:/system/filesystem/minimal' />
</dependency>
<exec_method
@@ -105,7 +105,7 @@
</loctext>
</common_name>
<documentation>
- <manpage title='nfs4cbd' section='1M'
+ <manpage title='nfs4cbd' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/fs.d/nfs/svc/client.xml b/usr/src/cmd/fs.d/nfs/svc/client.xml
index 7ece2fae75..e6a0d55e44 100644
--- a/usr/src/cmd/fs.d/nfs/svc/client.xml
+++ b/usr/src/cmd/fs.d/nfs/svc/client.xml
@@ -136,7 +136,7 @@
</loctext>
</common_name>
<documentation>
- <manpage title='mount_nfs' section='1M'
+ <manpage title='mount_nfs' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/fs.d/nfs/svc/mapid.xml b/usr/src/cmd/fs.d/nfs/svc/mapid.xml
index 69dda6fb57..7b12099b0a 100644
--- a/usr/src/cmd/fs.d/nfs/svc/mapid.xml
+++ b/usr/src/cmd/fs.d/nfs/svc/mapid.xml
@@ -20,7 +20,7 @@
CDDL HEADER END
- Copyright (c) 2004, 2010, Oracle and/or its affiliates. All rights reserved.
+ Copyright (c) 2004, 2010, Oracle and/or its affiliates. All rights reserved.
NOTE: This service manifest is not editable; its contents will
be overwritten by package or patch operations, including
@@ -71,7 +71,7 @@
grouping='require_all'
restart_on='error'
type='service'>
- <service_fmri value='svc:/system/filesystem/minimal' />
+ <service_fmri value='svc:/system/filesystem/minimal' />
</dependency>
<exec_method
@@ -111,7 +111,7 @@
</loctext>
</common_name>
<documentation>
- <manpage title='nfsmapid' section='1M'
+ <manpage title='nfsmapid' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/fs.d/nfs/svc/nfslogd.xml b/usr/src/cmd/fs.d/nfs/svc/nfslogd.xml
index fa168a6660..b520506491 100644
--- a/usr/src/cmd/fs.d/nfs/svc/nfslogd.xml
+++ b/usr/src/cmd/fs.d/nfs/svc/nfslogd.xml
@@ -59,7 +59,7 @@
</loctext>
</common_name>
<documentation>
- <manpage title='nfslogd' section='1M'
+ <manpage title='nfslogd' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/fs.d/nfs/svc/nlockmgr.xml b/usr/src/cmd/fs.d/nfs/svc/nlockmgr.xml
index 957ff00856..af629c08fd 100644
--- a/usr/src/cmd/fs.d/nfs/svc/nlockmgr.xml
+++ b/usr/src/cmd/fs.d/nfs/svc/nlockmgr.xml
@@ -110,7 +110,7 @@
</loctext>
</common_name>
<documentation>
- <manpage title='lockd' section='1M'
+ <manpage title='lockd' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/fs.d/nfs/svc/rquota.xml b/usr/src/cmd/fs.d/nfs/svc/rquota.xml
index 1f7e6554f3..546a0d87aa 100644
--- a/usr/src/cmd/fs.d/nfs/svc/rquota.xml
+++ b/usr/src/cmd/fs.d/nfs/svc/rquota.xml
@@ -121,7 +121,7 @@
</loctext>
</common_name>
<documentation>
- <manpage title='rquotad' section='1M'
+ <manpage title='rquotad' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/fs.d/nfs/svc/server.xml b/usr/src/cmd/fs.d/nfs/svc/server.xml
index d4d2cbb063..9393d9da55 100644
--- a/usr/src/cmd/fs.d/nfs/svc/server.xml
+++ b/usr/src/cmd/fs.d/nfs/svc/server.xml
@@ -192,7 +192,7 @@
</loctext>
</common_name>
<documentation>
- <manpage title='nfsd' section='1M'
+ <manpage title='nfsd' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/fs.d/nfs/svc/status.xml b/usr/src/cmd/fs.d/nfs/svc/status.xml
index dce8cba446..330d06ec2c 100644
--- a/usr/src/cmd/fs.d/nfs/svc/status.xml
+++ b/usr/src/cmd/fs.d/nfs/svc/status.xml
@@ -60,7 +60,7 @@
grouping='require_all'
restart_on='error'
type='service'>
- <service_fmri value='svc:/system/filesystem/local' />
+ <service_fmri value='svc:/system/filesystem/local' />
</dependency>
<exec_method
@@ -102,7 +102,7 @@
</loctext>
</common_name>
<documentation>
- <manpage title='statd' section='1M'
+ <manpage title='statd' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/fs.d/pcfs/mount/mount.c b/usr/src/cmd/fs.d/pcfs/mount/mount.c
index 9936ebdc36..b47e608aac 100644
--- a/usr/src/cmd/fs.d/pcfs/mount/mount.c
+++ b/usr/src/cmd/fs.d/pcfs/mount/mount.c
@@ -18,7 +18,6 @@
*
* CDDL HEADER END
*/
-#pragma ident "%Z%%M% %I% %E% SMI"
/*
* Copyright 2007 Sun Microsystems, Inc. All rights reserved.
@@ -195,7 +194,7 @@ main(int argc, char *argv[])
tzset();
/*
* We perform this validation only in case the user of
- * mount(1m) specified the "timezone=..." option. That's
+ * mount(8) specified the "timezone=..." option. That's
* because we don't want PCFS mounts to fail due to a
* botched $TZ environment variable. If the admin's
* environment contains garbage, it'll just parse as
diff --git a/usr/src/cmd/fs.d/reparsed/reparsed.xml b/usr/src/cmd/fs.d/reparsed/reparsed.xml
index 62f5e5cb21..b07703fd1d 100644
--- a/usr/src/cmd/fs.d/reparsed/reparsed.xml
+++ b/usr/src/cmd/fs.d/reparsed/reparsed.xml
@@ -62,7 +62,7 @@
grouping='require_all'
restart_on='error'
type='service'>
- <service_fmri value='svc:/system/filesystem/minimal' />
+ <service_fmri value='svc:/system/filesystem/minimal' />
</dependency>
<exec_method
@@ -99,7 +99,7 @@
</loctext>
</common_name>
<documentation>
- <manpage title='reparsed' section='1M'
+ <manpage title='reparsed' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/fs.d/smbclnt/svc/client.xml b/usr/src/cmd/fs.d/smbclnt/svc/client.xml
index f8b601ca62..9fed9e4829 100644
--- a/usr/src/cmd/fs.d/smbclnt/svc/client.xml
+++ b/usr/src/cmd/fs.d/smbclnt/svc/client.xml
@@ -106,7 +106,7 @@
</loctext>
</common_name>
<documentation>
- <manpage title='mount_smbfs' section='1M'
+ <manpage title='mount_smbfs' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/fs.d/udfs/mkfs/mkfs.c b/usr/src/cmd/fs.d/udfs/mkfs/mkfs.c
index 115ada72ff..dce29722a6 100644
--- a/usr/src/cmd/fs.d/udfs/mkfs/mkfs.c
+++ b/usr/src/cmd/fs.d/udfs/mkfs/mkfs.c
@@ -390,7 +390,7 @@ main(int32_t argc, int8_t *argv[])
(void) fprintf(stdout,
gettext("can't check mount point; "));
(void) fprintf(stdout,
- gettext("%s is mounted but not in mnttab(4)\n"),
+ gettext("%s is mounted but not in mnttab(5)\n"),
special);
exit(32);
}
diff --git a/usr/src/cmd/fs.d/ufs/fsck/inode.c b/usr/src/cmd/fs.d/ufs/fsck/inode.c
index d5ba38d358..db24d93976 100644
--- a/usr/src/cmd/fs.d/ufs/fsck/inode.c
+++ b/usr/src/cmd/fs.d/ufs/fsck/inode.c
@@ -1331,7 +1331,7 @@ truncino(fsck_ino_t ino, offset_t new_length, int update)
*/
pwarn("Could not determine former parent of "
"inode %d, link counts are possibly\n"
- "incorrect. Please rerun fsck(1M) to "
+ "incorrect. Please rerun fsck(8) to "
"correct this.\n",
ino);
iscorrupt = 1;
diff --git a/usr/src/cmd/fs.d/ufs/fsck/setup.c b/usr/src/cmd/fs.d/ufs/fsck/setup.c
index b128533412..c31ede6a8f 100644
--- a/usr/src/cmd/fs.d/ufs/fsck/setup.c
+++ b/usr/src/cmd/fs.d/ufs/fsck/setup.c
@@ -640,7 +640,7 @@ find_superblock(caddr_t devstr)
"YOU MUST USE THE -o b OPTION\n"
"TO FSCK TO SPECIFY THE LOCATION OF A VALID "
"ALTERNATE SUPERBLOCK TO\n"
- "SUPPLY NEEDED INFORMATION; SEE fsck(1M).\n");
+ "SUPPLY NEEDED INFORMATION; SEE fsck(8).\n");
bflag = 0;
retval = -1;
goto finish;
@@ -669,7 +669,7 @@ find_superblock(caddr_t devstr)
if (cg >= 0) {
pwarn("Please verify that the indicated block "
"contains a proper\nsuperblock for the "
- "filesystem (see fsdb(1M)).\n");
+ "filesystem (see fsdb(8)).\n");
if (yflag)
pwarn("\nFSCK was running in YES "
"mode. If you wish to run in "
@@ -1231,7 +1231,7 @@ badsb(int listerr, caddr_t s)
pwarn("e.g. fsck [-F ufs] -o b=# [special ...] \n");
exitstat = EXERRFATAL;
pfatal(
- "where # is the alternate super block. SEE fsck_ufs(1M). \n");
+ "where # is the alternate super block. SEE fsck_ufs(8). \n");
}
/* we're expected to return if not preening */
}
diff --git a/usr/src/cmd/fs.d/ufs/fsdb/fsdb.c b/usr/src/cmd/fs.d/ufs/fsdb/fsdb.c
index 1fee268983..3d4a865fe7 100644
--- a/usr/src/cmd/fs.d/ufs/fsdb/fsdb.c
+++ b/usr/src/cmd/fs.d/ufs/fsdb/fsdb.c
@@ -404,7 +404,7 @@ main(int argc, char *argv[])
"Warning: The '-z' option of 'fsdb_ufs' has been declared obsolete",
"and may not be supported in a future version of Solaris.",
"While this functionality is currently still supported, the",
-"recommended procedure to clear an inode is to use clri(1M).");
+"recommended procedure to clear an inode is to use clri(8).");
if (isnumber(optarg)) {
inum = atoi(optarg);
special = argv[optind];
diff --git a/usr/src/cmd/fs.d/ufs/mkfs/mkfs.c b/usr/src/cmd/fs.d/ufs/mkfs/mkfs.c
index 940827d156..110c66c49b 100644
--- a/usr/src/cmd/fs.d/ufs/mkfs/mkfs.c
+++ b/usr/src/cmd/fs.d/ufs/mkfs/mkfs.c
@@ -1090,11 +1090,11 @@ main(int argc, char *argv[])
dprintf(("DeBuG mtb : %c\n", mtb));
/*
- * With newer and much larger disks, the newfs(1M) and mkfs_ufs(1M)
+ * With newer and much larger disks, the newfs(8) and mkfs_ufs(8)
* commands had problems in correctly handling the "native" geometries
* for various storage devices.
*
- * To handle the new age disks, mkfs_ufs(1M) will use the EFI style
+ * To handle the new age disks, mkfs_ufs(8) will use the EFI style
* for non-EFI disks that are larger than the CHS addressing limit
* ( > 8GB approx ) and ignore the disk geometry information for
* these drives. This is what is currently done for multi-terrabyte
@@ -3807,7 +3807,7 @@ lockexit(int exitstatus)
if (isbad) {
(void) fprintf(stderr, gettext(
"Filesystem is currently inconsistent. It "
- "must be repaired with fsck(1M)\nbefore being "
+ "must be repaired with fsck(8)\nbefore being "
"used. Use the following command to "
"do this:\n\n\tfsck %s\n\n"), fsys);
@@ -3946,7 +3946,7 @@ checksummarysize()
/*
* checksblock() has two uses:
- * - One is to sanity test the superblock and is used when newfs(1M)
+ * - One is to sanity test the superblock and is used when newfs(8)
* is invoked with the "-N" option. If any discrepancy was found,
* just return whatever error was found and do not exit.
* - the other use of it is in places where you expect the superblock
@@ -4242,7 +4242,7 @@ checkmount(struct mnttab *mntp, char *bdevname)
}
if (statdir.st_dev != statdev.st_rdev) {
(void) fprintf(stderr, gettext(
- "%s is not mounted on %s; mnttab(4) wrong\n"),
+ "%s is not mounted on %s; mnttab(5) wrong\n"),
mntp->mnt_special, mntp->mnt_mountp);
lockexit(32);
}
diff --git a/usr/src/cmd/fs.d/ufs/mount/mount.c b/usr/src/cmd/fs.d/ufs/mount/mount.c
index 38d44db746..a98de3c65d 100644
--- a/usr/src/cmd/fs.d/ufs/mount/mount.c
+++ b/usr/src/cmd/fs.d/ufs/mount/mount.c
@@ -302,37 +302,37 @@ reportlogerror(int ret, char *mp, char *special, char *cmd, fiolog_t *flp)
(void) fprintf(stderr, gettext("Solaris Volume Manager logging"
" is already enabled.\n"));
(void) fprintf(stderr, gettext("Please see the"
- " commands metadetach(1M)"
- " or metaclear(1M).\n"));
+ " commands metadetach(8)"
+ " or metaclear(8).\n"));
break;
case FIOLOG_EROFS :
(void) fprintf(stderr, gettext("File system is mounted read "
"only.\n"));
(void) fprintf(stderr, gettext("Please see the remount "
- "option described in mount_ufs(1M).\n"));
+ "option described in mount_ufs(8).\n"));
break;
case FIOLOG_EULOCK :
(void) fprintf(stderr, gettext("File system is locked.\n"));
(void) fprintf(stderr, gettext("Please see the -u option "
- "described in lockfs(1M).\n"));
+ "described in lockfs(8).\n"));
break;
case FIOLOG_EWLOCK :
(void) fprintf(stderr, gettext("The file system could not be"
" write locked.\n"));
(void) fprintf(stderr, gettext("Please see the -w option "
- "described in lockfs(1M).\n"));
+ "described in lockfs(8).\n"));
break;
case FIOLOG_ECLEAN :
(void) fprintf(stderr, gettext("The file system may not be"
" stable.\n"));
(void) fprintf(stderr, gettext("Please see the -n option"
- " for fsck(1M).\n"));
+ " for fsck(8).\n"));
break;
case FIOLOG_ENOULOCK :
(void) fprintf(stderr, gettext("The file system could not be"
" unlocked.\n"));
(void) fprintf(stderr, gettext("Please see the -u option "
- "described in lockfs(1M).\n"));
+ "described in lockfs(8).\n"));
break;
default :
(void) fprintf(stderr, gettext("Unknown internal error"
diff --git a/usr/src/cmd/fwflash/common/fwflash.h b/usr/src/cmd/fwflash/common/fwflash.h
index 46bffe3372..d4ae6f1948 100644
--- a/usr/src/cmd/fwflash/common/fwflash.h
+++ b/usr/src/cmd/fwflash/common/fwflash.h
@@ -72,7 +72,7 @@ struct fw_plugin {
*
* eg /usr/lib/fwflash/identify/ses.so
* is the identification plugin for devices attached to
- * the host using the ses(7D) driver.
+ * the host using the ses(4D) driver.
*/
char *filename;
@@ -140,7 +140,7 @@ struct pluginlist {
*
* eg /usr/lib/fwflash/identify/ses.so
* is the identification plugin for devices attached to
- * the host using the ses(7D) driver.
+ * the host using the ses(4D) driver.
*/
char *filename;
@@ -218,7 +218,7 @@ struct devicelist {
struct vpr *ident;
/*
- * In the original fwflash(1M), it was possible to select a
+ * In the original fwflash(8), it was possible to select a
* device for flashing by using an index number called a
* dev_num. We retain that concept for pluggable fwflash, with
* the following change - whenever our identification plugin has
@@ -240,7 +240,7 @@ struct devicelist {
/*
* Pointer to the plugin needed to flash this device, and
* to use for printing appropriate device-specific information
- * as required by the "-l" option to fwflash(1M).
+ * as required by the "-l" option to fwflash(8).
*/
struct fw_plugin *plugin;
diff --git a/usr/src/cmd/fwflash/plugins/transport/common/ufm.c b/usr/src/cmd/fwflash/plugins/transport/common/ufm.c
index ec21b27efd..5e9cb3abc6 100644
--- a/usr/src/cmd/fwflash/plugins/transport/common/ufm.c
+++ b/usr/src/cmd/fwflash/plugins/transport/common/ufm.c
@@ -14,7 +14,7 @@
*/
/*
- * fwflash(1M) backend for UFMs.
+ * fwflash(8) backend for UFMs.
*/
#include <libdevinfo.h>
diff --git a/usr/src/cmd/fwflash/plugins/vendor/sd-GENERIC.c b/usr/src/cmd/fwflash/plugins/vendor/sd-GENERIC.c
index e99655d3e5..3322297928 100644
--- a/usr/src/cmd/fwflash/plugins/vendor/sd-GENERIC.c
+++ b/usr/src/cmd/fwflash/plugins/vendor/sd-GENERIC.c
@@ -15,9 +15,9 @@
/*
* This is a general firmware flash plugin that does basic verification for
- * devices backed by sd(7D).
+ * devices backed by sd(4D).
*
- * The sd(7D) target for firmware flashing uses the general SCSI WRITE BUFFER
+ * The sd(4D) target for firmware flashing uses the general SCSI WRITE BUFFER
* options with various modes to instruct the drive to download and install
* microcode (what SPC-3 calls firmware). To verify that something fits, we can
* use the READ BUFFER command with mode 03h to indicate that we want to
diff --git a/usr/src/cmd/getfacl/getfacl.c b/usr/src/cmd/getfacl/getfacl.c
index 337a09a960..6cd12bb492 100644
--- a/usr/src/cmd/getfacl/getfacl.c
+++ b/usr/src/cmd/getfacl/getfacl.c
@@ -110,7 +110,7 @@ main(int argc, char *argv[])
(void) fprintf(stderr,
gettext("File system doesn't support "
"aclent_t style ACL's.\n"
- "See acl(5) for more information on "
+ "See acl(7) for more information on "
"POSIX-draft ACL support.\n"));
exit(2);
}
diff --git a/usr/src/cmd/growfs/growfs.sh b/usr/src/cmd/growfs/growfs.sh
index f17199aad1..fa9855cada 100644
--- a/usr/src/cmd/growfs/growfs.sh
+++ b/usr/src/cmd/growfs/growfs.sh
@@ -131,8 +131,8 @@ if [ $retv -eq $UFS_MKFS_NOTENOUGHSPACE ]; then
done
echo \
"\nThe incremental grow has successfully completed, but since the first growth \
-attempt failed (see output from first mkfs(1M) run), the filesystem is still \
-locked and needs to be checked with fsck(1M).\n\
+attempt failed (see output from first mkfs(8) run), the filesystem is still \
+locked and needs to be checked with fsck(8).\n\
Please run \`fsck -F ufs $raw_special' and then unlock the filesystem \
with \`lockfs -u $mount_pt'." | fmt;
diff --git a/usr/src/cmd/gss/gssd/gss.xml b/usr/src/cmd/gss/gssd/gss.xml
index 0dcdf947c9..6da0460752 100644
--- a/usr/src/cmd/gss/gssd/gss.xml
+++ b/usr/src/cmd/gss/gssd/gss.xml
@@ -93,7 +93,7 @@
<propval name='endpoint_type' type='astring' value='tli' />
<propval name='name' type='astring' value='100234' />
<propval name='proto' type='astring' value='ticotsord' />
- <propval name='isrpc' type='boolean' value='true' />
+ <propval name='isrpc' type='boolean' value='true' />
<propval name='rpc_low_version' type='integer' value='1' />
<propval name='rpc_high_version' type='integer' value='1' />
<propval name='wait' type='boolean' value='true' />
@@ -108,7 +108,7 @@
</loctext>
</common_name>
<documentation>
- <manpage title='gssd' section='1M'
+ <manpage title='gssd' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/gss/gssd/gssd.c b/usr/src/cmd/gss/gssd/gssd.c
index 9b9e1e5546..0c5975c9d7 100644
--- a/usr/src/cmd/gss/gssd/gssd.c
+++ b/usr/src/cmd/gss/gssd/gssd.c
@@ -102,7 +102,7 @@ main(int argc, char **argv)
/*
* Take special note that "getuid()" is called here. This call is used
- * rather than app_krb5_user_uid(), to ensure gssd(1M) is running as
+ * rather than app_krb5_user_uid(), to ensure gssd(8) is running as
* root.
*/
#ifdef DEBUG
diff --git a/usr/src/cmd/hal/hald/solaris/hal.xml b/usr/src/cmd/hal/hald/solaris/hal.xml
index 24045bac34..e673e4bb9b 100644
--- a/usr/src/cmd/hal/hald/solaris/hal.xml
+++ b/usr/src/cmd/hal/hald/solaris/hal.xml
@@ -91,7 +91,7 @@
</loctext>
</common_name>
<documentation>
- <manpage title='hald' section='1M' manpath='/usr/man' />
+ <manpage title='hald' section='8' manpath='/usr/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/hal/probing/printer/probe-printer.c b/usr/src/cmd/hal/probing/printer/probe-printer.c
index 181008e10d..d6df17ddcc 100644
--- a/usr/src/cmd/hal/probing/printer/probe-printer.c
+++ b/usr/src/cmd/hal/probing/printer/probe-printer.c
@@ -1,6 +1,6 @@
/***************************************************************************
*
- * probe-printer.c : Probe for prnio(7i) printer device information
+ * probe-printer.c : Probe for prnio(4I) printer device information
*
* Copyright 2007 Sun Microsystems, Inc. All rights reserved.
* Use is subject to license terms.
@@ -9,8 +9,6 @@
*
**************************************************************************/
-#pragma ident "%Z%%M% %I% %E% SMI"
-
#ifdef HAVE_CONFIG_H
#include <config.h>
#endif
@@ -69,8 +67,8 @@ prnio_out:
}
/*
- * It is assumed that all devices that support prnio(7i), also have a link
- * in /dev/printers.
+ * It is assumed that all devices that support prnio(4I), also have a link
+ * in /dev/printers.
*/
static char *
prnio_device_name(void)
@@ -135,7 +133,7 @@ main(int argc, char *argv[])
goto out;
}
- /* Probe the printer for characteristics via prnio(7i) */
+ /* Probe the printer for characteristics via prnio(4I) */
ret = prnio_printer_info(device_file, &manufacturer, &model,
&description, &serial_number, &command_set);
if (ret < 0) {
diff --git a/usr/src/cmd/hal/tools/hal-fdi-validate.sh b/usr/src/cmd/hal/tools/hal-fdi-validate.sh
index 280c30bf34..5efff9e4a7 100644
--- a/usr/src/cmd/hal/tools/hal-fdi-validate.sh
+++ b/usr/src/cmd/hal/tools/hal-fdi-validate.sh
@@ -1,13 +1,11 @@
#
-# hal-fdi-validate.sh : Validate one or more fdi(4) files
+# hal-fdi-validate.sh : Validate one or more fdi(5) files
#
# Copyright 2006 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
#
# Licensed under the Academic Free License version 2.1
#
-# ident "%Z%%M% %I% %E% SMI"
-#
usage() {
echo "Usage: hal-fdi-validate [-f dtd] file [file ...]"
diff --git a/usr/src/cmd/halt/halt.c b/usr/src/cmd/halt/halt.c
index 6d32972a00..9b4825b98b 100644
--- a/usr/src/cmd/halt/halt.c
+++ b/usr/src/cmd/halt/halt.c
@@ -46,7 +46,7 @@
/*
- * Common code for halt(1M), poweroff(1M), and reboot(1M). We use
+ * Common code for halt(8), poweroff(8), and reboot(8). We use
* argv[0] to determine which behavior to exhibit.
*/
@@ -1542,7 +1542,7 @@ main(int argc, char *argv[])
/*
* If we're not forcing a crash dump, mark the system as quiescing for
- * smf(5)'s benefit, and idle the init process.
+ * smf(7)'s benefit, and idle the init process.
*/
if (cmd != A_DUMP) {
if (direct_init(PCDSTOP) == -1) {
diff --git a/usr/src/cmd/halt/smf.i386/boot-config.xml b/usr/src/cmd/halt/smf.i386/boot-config.xml
index a94ae87454..ee053cc700 100644
--- a/usr/src/cmd/halt/smf.i386/boot-config.xml
+++ b/usr/src/cmd/halt/smf.i386/boot-config.xml
@@ -90,7 +90,7 @@
<property_group name='config' type='application'>
<stability value='Stable' />
<propval name='auto-reboot-safe' type='boolean'
- value='false' />
+ value='false' />
<propval name='fastreboot_default' type='boolean'
value='true' />
<propval name='fastreboot_onpanic' type='boolean'
@@ -98,7 +98,7 @@
<propval name='value_authorization' type='astring'
value='solaris.system.shutdown' />
<propval name='uadmin_boot_archive_sync' type='boolean'
- value='false' />
+ value='false' />
</property_group>
<property_group name='fastreboot_blacklist' type='application'>
@@ -129,9 +129,9 @@ Apply the configuration defined in this service by uploading the configuration t
</loctext>
</description>
<documentation>
- <manpage title='reboot' section='1M'
+ <manpage title='reboot' section='8'
manpath='/usr/share/man' />
- <manpage title='init' section='1M'
+ <manpage title='init' section='8'
manpath='/usr/share/man' />
<manpage title='uadmin' section='2'
manpath='/usr/share/man' />
@@ -159,7 +159,7 @@ Parameters for controlling the reboot behavior.
</common_name>
<description>
<loctext xml:lang='C'>
-When set to true, reboot(1M) and init(1M) 6 will call uadmin(2) with AD_FASTREOOT, which will bypass firmware.
+When set to true, reboot(8) and init(8) 6 will call uadmin(2) with AD_FASTREOOT, which will bypass firmware.
</loctext>
</description>
</prop_pattern>
diff --git a/usr/src/cmd/halt/smf.sparc/boot-config.xml b/usr/src/cmd/halt/smf.sparc/boot-config.xml
index 2373176e50..80a2f2414b 100644
--- a/usr/src/cmd/halt/smf.sparc/boot-config.xml
+++ b/usr/src/cmd/halt/smf.sparc/boot-config.xml
@@ -97,7 +97,7 @@
<propval name='value_authorization' type='astring'
value='solaris.system.shutdown' />
<propval name='uadmin_boot_archive_sync' type='boolean'
- value='false' />
+ value='false' />
</property_group>
<property_group name='fastreboot_blacklist' type='application'>
@@ -128,9 +128,9 @@ Apply the configuration defined in this service by uploading the configuration t
</loctext>
</description>
<documentation>
- <manpage title='reboot' section='1M'
+ <manpage title='reboot' section='8'
manpath='/usr/share/man' />
- <manpage title='init' section='1M'
+ <manpage title='init' section='8'
manpath='/usr/share/man' />
<manpage title='uadmin' section='2'
manpath='/usr/share/man' />
@@ -158,7 +158,7 @@ Parameters for controlling the reboot behavior.
</common_name>
<description>
<loctext xml:lang='C'>
-When set to true, reboot(1M) and init(1M) 6 will call uadmin(2) with AD_FASTREOOT, which will bypass firmware.
+When set to true, reboot(8) and init(8) 6 will call uadmin(2) with AD_FASTREOOT, which will bypass firmware.
</loctext>
</description>
</prop_pattern>
diff --git a/usr/src/cmd/hotplug/hotplug.c b/usr/src/cmd/hotplug/hotplug.c
index 8ffb8d48dd..2b457f8cd4 100644
--- a/usr/src/cmd/hotplug/hotplug.c
+++ b/usr/src/cmd/hotplug/hotplug.c
@@ -1208,7 +1208,7 @@ print_error(int error)
(void) fprintf(stderr,
gettext("ERROR: there are no connections to display.\n"));
(void) fprintf(stderr,
- gettext("(See hotplug(1m) for more information.)\n"));
+ gettext("(See hotplug(8) for more information.)\n"));
break;
case ENXIO:
(void) fprintf(stderr,
diff --git a/usr/src/cmd/hotplugd/hotplug.xml b/usr/src/cmd/hotplugd/hotplug.xml
index 19b0ad5572..1478f5889d 100644
--- a/usr/src/cmd/hotplugd/hotplug.xml
+++ b/usr/src/cmd/hotplugd/hotplug.xml
@@ -87,7 +87,7 @@
</loctext>
</common_name>
<documentation>
- <manpage title='hotplugd' section='1M'
+ <manpage title='hotplugd' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/hotplugd/svc-hotplug b/usr/src/cmd/hotplugd/svc-hotplug
index ad140b6b39..2aa45c6896 100644
--- a/usr/src/cmd/hotplugd/svc-hotplug
+++ b/usr/src/cmd/hotplugd/svc-hotplug
@@ -26,7 +26,7 @@
#
#
-# Startup script for the hotplugd(1M) daemon.
+# Startup script for the hotplugd(8) daemon.
#
. /lib/svc/share/smf_include.sh
diff --git a/usr/src/cmd/ibd_upgrade/ibd-post-upgrade.xml b/usr/src/cmd/ibd_upgrade/ibd-post-upgrade.xml
index 2540d6de14..a09985135e 100644
--- a/usr/src/cmd/ibd_upgrade/ibd-post-upgrade.xml
+++ b/usr/src/cmd/ibd_upgrade/ibd-post-upgrade.xml
@@ -83,7 +83,7 @@
<documentation>
<manpage
title='ibp'
- section='7D'
+ section='4D'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/idmap/idmap/idmap.c b/usr/src/cmd/idmap/idmap/idmap.c
index 64644f4aae..d95a7d226a 100644
--- a/usr/src/cmd/idmap/idmap/idmap.c
+++ b/usr/src/cmd/idmap/idmap/idmap.c
@@ -2983,7 +2983,7 @@ do_show_mapping(flag_t *f, int argc, char **argv, cmd_pos_t *pos)
if (stat != IDMAP_SUCCESS) {
print_error(pos,
gettext("Unable to create handle for communicating"
- " with idmapd(1M) (%s)\n"),
+ " with idmapd(8) (%s)\n"),
idmap_stat2string(stat));
idmap_get_destroy(ghandle);
goto cleanup;
@@ -3078,7 +3078,7 @@ do_show_mapping(flag_t *f, int argc, char **argv, cmd_pos_t *pos)
* idmapd returns fallback uid/gid in case of errors. However
* it uses special sentinel value i.e 4294967295 (or -1) to
* indicate that falbback pid is not available either. In such
- * case idmap(1M) should not display the mapping because there
+ * case idmap(8) should not display the mapping because there
* is no fallback mapping.
*/
diff --git a/usr/src/cmd/idmap/idmapd/idmap.xml b/usr/src/cmd/idmap/idmapd/idmap.xml
index 2b6f7b7ad5..da6104d480 100644
--- a/usr/src/cmd/idmap/idmapd/idmap.xml
+++ b/usr/src/cmd/idmap/idmapd/idmap.xml
@@ -154,9 +154,9 @@
</loctext>
</common_name>
<documentation>
- <manpage title='idmapd' section='1M'
+ <manpage title='idmapd' section='8'
manpath='/usr/share/man' />
- <manpage title='idmap' section='1M'
+ <manpage title='idmap' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/idmap/idmapd/idmap_config.c b/usr/src/cmd/idmap/idmapd/idmap_config.c
index 5d92d12503..eeec9562ea 100644
--- a/usr/src/cmd/idmap/idmapd/idmap_config.c
+++ b/usr/src/cmd/idmap/idmapd/idmap_config.c
@@ -25,7 +25,7 @@
/*
- * Config routines common to idmap(1M) and idmapd(1M)
+ * Config routines common to idmap(8) and idmapd(8)
*/
#include <stdlib.h>
diff --git a/usr/src/cmd/idmap/idmapd/idmapd.c b/usr/src/cmd/idmap/idmapd/idmapd.c
index 51db388832..207cedc063 100644
--- a/usr/src/cmd/idmap/idmapd/idmapd.c
+++ b/usr/src/cmd/idmap/idmapd/idmapd.c
@@ -25,7 +25,7 @@
/*
- * main() of idmapd(1M)
+ * main() of idmapd(8)
*/
#include "idmapd.h"
diff --git a/usr/src/cmd/init/init.c b/usr/src/cmd/init/init.c
index 625d827746..e195573349 100644
--- a/usr/src/cmd/init/init.c
+++ b/usr/src/cmd/init/init.c
@@ -42,8 +42,8 @@
*/
/*
- * init(1M) is the general process spawning program. Its primary job is to
- * start and restart svc.startd for smf(5). For backwards-compatibility it also
+ * init(8) is the general process spawning program. Its primary job is to
+ * start and restart svc.startd for smf(7). For backwards-compatibility it also
* spawns and respawns processes according to /etc/inittab and the current
* run-level. It reads /etc/default/inittab for general configuration.
*
@@ -59,35 +59,35 @@
* which each inittab entry is valid.
*
* State File and Restartability
- * Premature exit by init(1M) is handled as a special case by the kernel:
- * init(1M) will be immediately re-executed, retaining its original PID. (PID
+ * Premature exit by init(8) is handled as a special case by the kernel:
+ * init(8) will be immediately re-executed, retaining its original PID. (PID
* 1 in the global zone.) To track the processes it has previously spawned,
- * as well as other mutable state, init(1M) regularly updates a state file
+ * as well as other mutable state, init(8) regularly updates a state file
* such that its subsequent invocations have knowledge of its various
* dependent processes and duties.
*
* Process Contracts
- * We start svc.startd(1M) in a contract and transfer inherited contracts when
+ * We start svc.startd(8) in a contract and transfer inherited contracts when
* restarting it. Everything else is started using the legacy contract
* template, and the created contracts are abandoned when they become empty.
*
* utmpx Entry Handling
- * Because init(1M) no longer governs the startup process, its knowledge of
+ * Because init(8) no longer governs the startup process, its knowledge of
* when utmpx becomes writable is indirect. However, spawned processes
* expect to be constructed with valid utmpx entries. As a result, attempts
* to write normal entries will be retried until successful.
*
* Maintenance Mode
- * In certain failure scenarios, init(1M) will enter a maintenance mode, in
- * which it invokes sulogin(1M) to allow the operator an opportunity to
+ * In certain failure scenarios, init(8) will enter a maintenance mode, in
+ * which it invokes sulogin(8) to allow the operator an opportunity to
* repair the system. Normally, this operation is performed as a
* fork(2)-exec(2)-waitpid(3C) sequence with the parent waiting for repair or
* diagnosis to be completed. In the cases that fork(2) requests themselves
- * fail, init(1M) will directly execute sulogin(1M), and allow the kernel to
- * restart init(1M) on exit from the operator session.
+ * fail, init(8) will directly execute sulogin(8), and allow the kernel to
+ * restart init(8) on exit from the operator session.
*
- * One scenario where init(1M) enters its maintenance mode is when
- * svc.startd(1M) begins to fail rapidly, defined as when the average time
+ * One scenario where init(8) enters its maintenance mode is when
+ * svc.startd(8) begins to fail rapidly, defined as when the average time
* between recent failures drops below a given threshold.
*/
@@ -550,7 +550,7 @@ static char startd_svc_aux[SVC_AUX_SIZE];
static char startd_cline[256] = ""; /* svc.startd's command line */
static int do_restart_startd = 1; /* Whether to restart svc.startd. */
static char *smf_options = NULL; /* Options to give to startd. */
-static int smf_debug = 0; /* Messages for debugging smf(5) */
+static int smf_debug = 0; /* Messages for debugging smf(7) */
static time_t init_boot_time; /* Substitute for kernel boot time. */
#define NSTARTD_FAILURE_TIMES 3 /* trigger after 3 failures */
@@ -943,8 +943,8 @@ update_boot_archive(int new_state)
/*
* void enter_maintenance()
- * A simple invocation of sulogin(1M), with no baggage, in the case that we
- * are unable to activate svc.startd(1M). We fork; the child runs sulogin;
+ * A simple invocation of sulogin(8), with no baggage, in the case that we
+ * are unable to activate svc.startd(8). We fork; the child runs sulogin;
* we wait for it to exit.
*/
static void
@@ -2024,7 +2024,7 @@ boot_init()
(void) strcpy(glob_envp[0], INIT_PATH);
/*
- * Scan inittab(4) and process the special svc.startd entry, initdefault
+ * Scan inittab(5) and process the special svc.startd entry, initdefault
* and sysinit entries.
*/
while (getcmd(&cmd, &line[0]) == TRUE) {
@@ -2107,7 +2107,7 @@ boot_init()
write_ioctl_syscon();
/*
- * Start svc.startd(1M), which does most of the work.
+ * Start svc.startd(8), which does most of the work.
*/
if (startd_cline[0] != '\0' && startd_tmpl >= 0) {
/* Start svc.startd. */
@@ -2226,7 +2226,7 @@ setup_pipe()
}
/*
- * siglvl - handle an asynchronous signal from init(1M) telling us that we
+ * siglvl - handle an asynchronous signal from init(8) telling us that we
* should change the current run level. We set new_state accordingly.
*/
void
@@ -2236,7 +2236,7 @@ siglvl(int sig, siginfo_t *sip, ucontext_t *ucp)
struct sigaction act;
/*
- * If the signal was from the kernel (rather than init(1M)) then init
+ * If the signal was from the kernel (rather than init(8)) then init
* itself tripped the signal. That is, we might have a bug and tripped
* a real SIGSEGV instead of receiving it as an alias for SIGLVLa. In
* such a case we reset the disposition to SIG_DFL, block all signals
@@ -3073,7 +3073,7 @@ get_scope:
case SCF_ERROR_NOT_FOUND:
(void) fputs(gettext(
- "smf(5) repository missing local scope.\n"),
+ "smf(7) repository missing local scope.\n"),
stderr);
exit(1);
/* NOTREACHED */
@@ -3265,12 +3265,12 @@ scferr(void)
case SCF_ERROR_CONNECTION_BROKEN:
console(B_TRUE, gettext(
- "Connection to smf(5) repository server broken.\n"));
+ "Connection to smf(7) repository server broken.\n"));
break;
case SCF_ERROR_NO_RESOURCES:
console(B_TRUE, gettext(
- "smf(5) repository server is out of memory.\n"));
+ "smf(7) repository server is out of memory.\n"));
break;
case SCF_ERROR_PERMISSION_DENIED:
@@ -3305,7 +3305,7 @@ lscf_set_runlevel(char rl)
switch (scf_error()) {
case SCF_ERROR_NO_SERVER:
console(B_TRUE,
- gettext("smf(5) repository server not running.\n"));
+ gettext("smf(7) repository server not running.\n"));
goto bail;
default:
@@ -3895,7 +3895,7 @@ st_init()
do {
/*
* If we can exclusively create the file, then we're the
- * initial invocation of init(1M).
+ * initial invocation of init(8).
*/
st_fd = open(init_state_file, O_RDWR | O_CREAT | O_EXCL,
S_IRUSR | S_IWUSR);
@@ -4165,7 +4165,7 @@ contracts_init()
if (legacy_tmpl < 0 && startd_tmpl < 0) {
/* The creation errors have already been reported. */
console(B_TRUE,
- "Ignoring contract events. Core smf(5) services will not "
+ "Ignoring contract events. Core smf(7) services will not "
"be restarted.\n");
return;
}
@@ -4179,7 +4179,7 @@ contracts_init()
;
if (fd < 0) {
console(B_TRUE,
- "Couldn't open process pbundle: %s. Core smf(5) services "
+ "Couldn't open process pbundle: %s. Core smf(7) services "
"will not be restarted.\n", strerror(errno));
return;
}
@@ -4345,11 +4345,11 @@ contract_event(struct pollfd *poll)
}
/*
- * svc.startd(1M) Management
+ * svc.startd(8) Management
*/
/*
- * (Re)start svc.startd(1M). old_ctid should be the contract ID of the old
+ * (Re)start svc.startd(8). old_ctid should be the contract ID of the old
* contract, or 0 if we're starting it for the first time. If wait is true
* we'll wait for and return the exit value of the child.
*/
diff --git a/usr/src/cmd/initpkg/dfstab.sh b/usr/src/cmd/initpkg/dfstab.sh
index 9ee99002e8..d4e93f9832 100644
--- a/usr/src/cmd/initpkg/dfstab.sh
+++ b/usr/src/cmd/initpkg/dfstab.sh
@@ -25,12 +25,12 @@
# Copyright 2006 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
#
-#ident "%Z%%M% %I% %E% SMI" /* SVr4.0 1.1.2.1 */
+
case "$MACH" in
"u3b2"|"sparc"|"i386"|"ppc" )
echo "
# Do not modify this file directly.
-# Use the sharemgr(1m) command for all share management
+# Use the sharemgr(8) command for all share management
# This file is reconstructed and only maintained for backward
# compatibility. Configuration lines could be lost.
#
diff --git a/usr/src/cmd/initpkg/init.d/README b/usr/src/cmd/initpkg/init.d/README
index d70545ccc7..bf817a7699 100644
--- a/usr/src/cmd/initpkg/init.d/README
+++ b/usr/src/cmd/initpkg/init.d/README
@@ -19,14 +19,14 @@
#
# CDDL HEADER END
#
-#ident "%Z%%M% %I% %E% SMI"
+
Copyright 2004 Sun Microsystems, Inc. All rights reserved.
Use is subject to license terms.
NOTE: This directory contains legacy initialization and termination
scripts for managing services. The preferred method of service
management is via the Service Management Facility; to read more about
-SMF, consult smf(5).
+SMF, consult smf(7).
File names in rc?.d directories are of the form [SK]nn<init.d filename>
where 'S' means start this job, 'K' means kill this job, and 'nn' is the
@@ -44,7 +44,7 @@ be sourced, allowing scripts to modify the environment of other scripts
executed later. This behavior is no longer supported; for altering the
environment in which services are run, refer to the SMF documentation.
-Legacy services are reported by the default svcs(1m) output, and (where
+Legacy services are reported by the default svcs(1) output, and (where
appropriate) the utility's '-p' option. This reporting assumes a
behavior as described above, such that each 'S' script has a suitable
matching 'K' script, and they are both hard linked to a script in
diff --git a/usr/src/cmd/initpkg/init.d/README.rc2 b/usr/src/cmd/initpkg/init.d/README.rc2
index d5267e5ca4..fc85f0e9c5 100644
--- a/usr/src/cmd/initpkg/init.d/README.rc2
+++ b/usr/src/cmd/initpkg/init.d/README.rc2
@@ -19,14 +19,14 @@
#
# CDDL HEADER END
#
-#ident "%Z%%M% %I% %E% SMI"
+
Copyright 2004 Sun Microsystems, Inc. All rights reserved.
Use is subject to license terms.
NOTE: This directory contains legacy initialization and termination
scripts for managing services. The preferred method of service
management is via the Service Management Facility; to read more about
-SMF, consult smf(5).
+SMF, consult smf(7).
For a general discussion of the mechanism used to invoke these scripts
see the file /etc/init.d/README.
diff --git a/usr/src/cmd/initpkg/init.d/README.rc3 b/usr/src/cmd/initpkg/init.d/README.rc3
index cb3f9a1377..a37a7b3a37 100644
--- a/usr/src/cmd/initpkg/init.d/README.rc3
+++ b/usr/src/cmd/initpkg/init.d/README.rc3
@@ -19,14 +19,14 @@
#
# CDDL HEADER END
#
-#ident "%Z%%M% %I% %E% SMI"
+
Copyright 2004 Sun Microsystems, Inc. All rights reserved.
Use is subject to license terms.
NOTE: This directory contains legacy initialization and termination
scripts for managing services. The preferred method of service
management is via the Service Management Facility; to read more about
-SMF, consult smf(5).
+SMF, consult smf(7).
For a general discussion of the mechanism used to invoke these scripts
see the file /etc/init.d/README.
diff --git a/usr/src/cmd/initpkg/init.d/README.rcS b/usr/src/cmd/initpkg/init.d/README.rcS
index f2e151645c..4534b40cd1 100644
--- a/usr/src/cmd/initpkg/init.d/README.rcS
+++ b/usr/src/cmd/initpkg/init.d/README.rcS
@@ -19,14 +19,14 @@
#
# CDDL HEADER END
#
-#ident "%Z%%M% %I% %E% SMI"
+
Copyright 2004 Sun Microsystems, Inc. All rights reserved.
Use is subject to license terms.
NOTE: This directory contains legacy initialization and termination
scripts for managing services. The preferred method of service
management is via the Service Management Facility; to read more about
-SMF, consult smf(5).
+SMF, consult smf(7).
For a general discussion of the mechanism used to invoke these scripts
see the file /etc/init.d/README.
diff --git a/usr/src/cmd/initpkg/init.d/sysetup b/usr/src/cmd/initpkg/init.d/sysetup
index b6fced4e9b..b939093eda 100644
--- a/usr/src/cmd/initpkg/init.d/sysetup
+++ b/usr/src/cmd/initpkg/init.d/sysetup
@@ -24,7 +24,6 @@
# Copyright 2005 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
#
-# ident "%Z%%M% %I% %E% SMI"
if [ -z "$_INIT_PREV_LEVEL" ]; then
set -- `/usr/bin/who -r`
@@ -42,7 +41,7 @@ fi
#
# Run rctladm to configure system resource controls based on the settings
-# previously saved by rctladm. See rctladm(1m) for instructions on how to
+# previously saved by rctladm. See rctladm(8) for instructions on how to
# modify resource control settings.
#
if [ -f /etc/rctladm.conf ] && [ -x /usr/sbin/rctladm ]; then
diff --git a/usr/src/cmd/initpkg/inittab b/usr/src/cmd/initpkg/inittab
index 1e615cd8f5..6059a3e701 100644
--- a/usr/src/cmd/initpkg/inittab
+++ b/usr/src/cmd/initpkg/inittab
@@ -19,14 +19,14 @@
#
# Copyright (c) 1988, 2010, Oracle and/or its affiliates. All rights reserved.
#
-# The /etc/inittab file controls the configuration of init(1M); for more
-# information refer to init(1M) and inittab(4). It is no longer
-# necessary to edit inittab(4) directly; administrators should use the
+# The /etc/inittab file controls the configuration of init(8); for more
+# information refer to init(8) and inittab(5). It is no longer
+# necessary to edit inittab(5) directly; administrators should use the
# Solaris Service Management Facility (SMF) to define services instead.
-# Refer to smf(5) and the System Administration Guide for more
+# Refer to smf(7) and the System Administration Guide for more
# information on SMF.
#
-# For modifying parameters passed to ttymon, use svccfg(1m) to modify
+# For modifying parameters passed to ttymon, use svccfg(8) to modify
# the SMF repository. For example:
#
# # svccfg
diff --git a/usr/src/cmd/initpkg/rc0.sh b/usr/src/cmd/initpkg/rc0.sh
index 8b1018ad57..cc798b32bb 100644
--- a/usr/src/cmd/initpkg/rc0.sh
+++ b/usr/src/cmd/initpkg/rc0.sh
@@ -33,7 +33,7 @@
PATH=/usr/sbin:/usr/bin
if [ -z "$SMF_RESTARTER" ]; then
- echo "Cannot be run outside smf(5)"
+ echo "Cannot be run outside smf(7)"
exit 1
fi
diff --git a/usr/src/cmd/initpkg/rc1.sh b/usr/src/cmd/initpkg/rc1.sh
index edb61f7b9b..ba68bb3d66 100644
--- a/usr/src/cmd/initpkg/rc1.sh
+++ b/usr/src/cmd/initpkg/rc1.sh
@@ -28,12 +28,11 @@
# Copyright 2004 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
#
-#ident "%Z%%M% %I% %E% SMI"
# "Run Commands" executed when the system is changing to init state 1
if [ -z "$SMF_RESTARTER" ]; then
- echo "Cannot be run outside smf(5)"
+ echo "Cannot be run outside smf(7)"
exit 1
fi
diff --git a/usr/src/cmd/initpkg/rc2.sh b/usr/src/cmd/initpkg/rc2.sh
index 05dda3cd59..0a2b14aa93 100644
--- a/usr/src/cmd/initpkg/rc2.sh
+++ b/usr/src/cmd/initpkg/rc2.sh
@@ -27,7 +27,6 @@
# Copyright 2006 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
#
-# ident "%Z%%M% %I% %E% SMI"
# Run Commands executed when the system is changing to init state 2,
# traditionally called "multi-user". Pick up start-up packages for mounts,
@@ -36,7 +35,7 @@
PATH=/usr/sbin:/usr/bin
if [ -z "$SMF_RESTARTER" ]; then
- echo "Cannot be run outside smf(5)"
+ echo "Cannot be run outside smf(7)"
exit 1
fi
diff --git a/usr/src/cmd/initpkg/rc3.sh b/usr/src/cmd/initpkg/rc3.sh
index fc9d743cb2..1277e56776 100644
--- a/usr/src/cmd/initpkg/rc3.sh
+++ b/usr/src/cmd/initpkg/rc3.sh
@@ -27,7 +27,6 @@
# Copyright 2006 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
#
-# ident "%Z%%M% %I% %E% SMI"
# Run Commands executed when the system is changing to init state 3,
# same as state 2 (multi-user) but with remote file sharing.
@@ -35,7 +34,7 @@
PATH=/usr/sbin:/usr/bin
if [ -z "$SMF_RESTARTER" ]; then
- echo "This script cannot be run outside smf(5)."
+ echo "This script cannot be run outside smf(7)."
exit 1
fi
diff --git a/usr/src/cmd/initpkg/rcS.sh b/usr/src/cmd/initpkg/rcS.sh
index 5e41614d7e..2ee19e0ab8 100644
--- a/usr/src/cmd/initpkg/rcS.sh
+++ b/usr/src/cmd/initpkg/rcS.sh
@@ -23,7 +23,7 @@
# Copyright 2006 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
#
-# ident "%Z%%M% %I% %E% SMI"
+
#
# Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T.
# All rights reserved.
@@ -43,7 +43,7 @@
# check and mount other file systems to be mounted in single user mode
if [ -z "$SMF_RESTARTER" ]; then
- echo "Cannot be run outside smf(5)"
+ echo "Cannot be run outside smf(7)"
exit 1
fi
diff --git a/usr/src/cmd/initpkg/shutdown.sh b/usr/src/cmd/initpkg/shutdown.sh
index e93de5568c..038289b630 100644
--- a/usr/src/cmd/initpkg/shutdown.sh
+++ b/usr/src/cmd/initpkg/shutdown.sh
@@ -218,7 +218,7 @@ fi
echo "Changing to init state $initstate - please wait"
# We might be racing with a system that's still booting.
-# Before starting init, check to see if smf(5) is running. The easiest way
+# Before starting init, check to see if smf(7) is running. The easiest way
# to do this is to check for the existence of the repository service door.
i=0
diff --git a/usr/src/cmd/intrd/intrd.xml b/usr/src/cmd/intrd/intrd.xml
index f516856c8b..cd6ab0aa57 100644
--- a/usr/src/cmd/intrd/intrd.xml
+++ b/usr/src/cmd/intrd/intrd.xml
@@ -24,8 +24,6 @@
Copyright 2005 Sun Microsystems, Inc. All rights reserved.
Use is subject to license terms.
- ident "%Z%%M% %I% %E% SMI"
-
NOTE: This service manifest is not editable; its contents will
be overwritten by package or patch operations, including
operating system upgrade. Make customizations in a different
@@ -71,7 +69,7 @@
</loctext>
</common_name>
<documentation>
- <manpage title='intrd' section='1M'
+ <manpage title='intrd' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/ipf/etc/ipf.conf b/usr/src/cmd/ipf/etc/ipf.conf
index 2fa701c9ee..59e158093c 100644
--- a/usr/src/cmd/ipf/etc/ipf.conf
+++ b/usr/src/cmd/ipf/etc/ipf.conf
@@ -3,5 +3,5 @@
#
# IP Filter rules to be loaded during startup
#
-# See ipf(4) manpage for more information on
+# See ipf(5) manpage for more information on
# IP Filter rules syntax.
diff --git a/usr/src/cmd/ipf/svc/ipfilter.xml b/usr/src/cmd/ipf/svc/ipfilter.xml
index 72a9750d88..1dade14f5b 100644
--- a/usr/src/cmd/ipf/svc/ipfilter.xml
+++ b/usr/src/cmd/ipf/svc/ipfilter.xml
@@ -157,7 +157,7 @@
</loctext>
</description>
<documentation>
- <manpage title='ipfilter' section='5'
+ <manpage title='ipfilter' section='7'
manpath='/usr/share/man' />
</documentation>
diff --git a/usr/src/cmd/ipf/tools/ipfzone.c b/usr/src/cmd/ipf/tools/ipfzone.c
index d4e1bb8427..d82360db6f 100644
--- a/usr/src/cmd/ipf/tools/ipfzone.c
+++ b/usr/src/cmd/ipf/tools/ipfzone.c
@@ -27,7 +27,7 @@ extern char *optarg;
/*
* Get the zonename if it's the last argument and set the zonename
- * in ipfzo to it. This is used by ipf(1m) only - all of the other tools
+ * in ipfzo to it. This is used by ipf(8) only - all of the other tools
* specify the zone with the -z option, and therefore use getzoneopt() below.
*/
void
diff --git a/usr/src/cmd/iscsiadm/iscsiadm_main.c b/usr/src/cmd/iscsiadm/iscsiadm_main.c
index 2ccf2cf66e..c7b0dd143a 100644
--- a/usr/src/cmd/iscsiadm/iscsiadm_main.c
+++ b/usr/src/cmd/iscsiadm/iscsiadm_main.c
@@ -5449,7 +5449,7 @@ checkServiceStatus(void)
gettext("Unable to query the service status of"
" iSCSI initiator."),
gettext("For more information, please refer to"
- " iscsi(7D)."));
+ " iscsi(4D)."));
return (B_FALSE);
}
@@ -5459,7 +5459,7 @@ checkServiceStatus(void)
" try 'svcadm enable network/iscsi/initiator' to"
" enable the service."),
gettext("For more information, please refer to"
- " iscsi(7D)."));
+ " iscsi(4D)."));
return (B_FALSE);
}
@@ -5478,7 +5478,7 @@ seeMan(void)
if (sent)
return;
- (void) fprintf(stdout, "%s %s(1M)\n",
+ (void) fprintf(stdout, "%s %s(8)\n",
gettext("For more information, please see"), cmdName);
sent = 1;
diff --git a/usr/src/cmd/iscsid/iscsi-initiator.xml b/usr/src/cmd/iscsid/iscsi-initiator.xml
index 5f74945ac6..d132815117 100644
--- a/usr/src/cmd/iscsid/iscsi-initiator.xml
+++ b/usr/src/cmd/iscsid/iscsi-initiator.xml
@@ -38,10 +38,10 @@ default back ones) in the "inetd_private" property group of the service.
This means that only the "proto" field can be specialized for an instance, which
limits the creation of instances of a service to only those with all fields
common, bar the "proto" field. This would enable the following two services
-to be created as instances of a common service:
+to be created as instances of a common service:
exec stream tcp nowait root /usr/sbin/in.rexecd in.rexecd
-exec stream tcp6 nowait root /usr/sbin/in.rexecd in.rexecd
+exec stream tcp6 nowait root /usr/sbin/in.rexecd in.rexecd
but dissallow common service create for these (different socket type):
@@ -61,7 +61,7 @@ also, so an instance can't have a different method than its service.
Inetd is soon going to change to use instance composition for its configuration.
This will mean that any of the properties/methods can be present in either the
instance or the service (with the instance one overriding in the case both are
-present) and that multiple instances can be created for a service with the
+present) and that multiple instances can be created for a service with the
potential to specialize all the properties/methods.
-->
@@ -141,7 +141,7 @@ potential to specialize all the properties/methods.
/>
</method_context>
</exec_method>
-
+
<exec_method
type='method'
name='stop'
@@ -155,7 +155,7 @@ potential to specialize all the properties/methods.
/>
</method_context>
</exec_method>
-
+
<!--
Create an enabled instance.
-->
@@ -176,7 +176,7 @@ potential to specialize all the properties/methods.
<documentation>
<manpage
title='iscsi'
- section='7D'
+ section='4D'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/iscsitsvc/iscsi-target.xml b/usr/src/cmd/iscsitsvc/iscsi-target.xml
index 4598d27380..27b8617ab0 100644
--- a/usr/src/cmd/iscsitsvc/iscsi-target.xml
+++ b/usr/src/cmd/iscsitsvc/iscsi-target.xml
@@ -25,7 +25,7 @@ CDDL HEADER END
Copyright 2008 Sun Microsystems, Inc. All rights reserved.
Use is subject to license terms.
-Service manifests for iSCSI Target
+Service manifests for iSCSI Target
-->
<!--
@@ -71,7 +71,7 @@ Service manifests for iSCSI Target
/>
</method_context>
</exec_method>
-
+
<exec_method
type='method'
name='stop'
@@ -100,7 +100,7 @@ Service manifests for iSCSI Target
</loctext>
</common_name>
<documentation>
- <manpage title='itadm' section='1M'
+ <manpage title='itadm' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/isns/isnsadm/isnsadm_msg.c b/usr/src/cmd/isns/isnsadm/isnsadm_msg.c
index a84bc274c7..28fdcbb881 100644
--- a/usr/src/cmd/isns/isnsadm/isnsadm_msg.c
+++ b/usr/src/cmd/isns/isnsadm/isnsadm_msg.c
@@ -128,7 +128,7 @@ char *getTextMessage(msg_code_t code) {
"server failed."));
case ERROR_ISNS_SMF_SERVICE_NOT_ONLINE:
return (gettext
- ("Error: network/isns_server smf(5) "
+ ("Error: network/isns_server smf(7) "
"service is not online."));
case ERROR_MALLOC_FAILED:
return (gettext
diff --git a/usr/src/cmd/isns/isnsd/isns_server.xml b/usr/src/cmd/isns/isnsd/isns_server.xml
index 9d60bdd641..3c70873a96 100644
--- a/usr/src/cmd/isns/isnsd/isns_server.xml
+++ b/usr/src/cmd/isns/isnsd/isns_server.xml
@@ -67,7 +67,7 @@ Service manifests for the iSNS Server
/>
</method_context>
</exec_method>
-
+
<exec_method
type='method'
name='stop'
@@ -81,7 +81,7 @@ Service manifests for the iSNS Server
/>
</method_context>
</exec_method>
-
+
<exec_method
type='method'
name='refresh'
@@ -97,7 +97,7 @@ Service manifests for the iSNS Server
</exec_method>
<property_group name='general' type='framework'>
- <!-- to start stop isns -->
+ <!-- to start stop isns -->
<propval name='action_authorization' type='astring'
value='solaris.smf.manage.isns' />
<!-- to manage prop values -->
@@ -128,9 +128,9 @@ Service manifests for the iSNS Server
</loctext>
</common_name>
<documentation>
- <manpage title='isns' section='1M'
+ <manpage title='isns' section='8'
manpath='/usr/share/man' />
- <manpage title='isnsadm' section='1M'
+ <manpage title='isnsadm' section='8'
manpath='/usr/share /man' />
</documentation>
</template>
diff --git a/usr/src/cmd/kbd/keymap.xml b/usr/src/cmd/kbd/keymap.xml
index c6ec168c28..92b9d807c9 100644
--- a/usr/src/cmd/kbd/keymap.xml
+++ b/usr/src/cmd/kbd/keymap.xml
@@ -95,7 +95,7 @@
<documentation>
<manpage
title='kbd'
- section='1M'
+ section='8'
manpath='/usr/share/man' />
</documentation>
diff --git a/usr/src/cmd/keyserv/keylogin.c b/usr/src/cmd/keyserv/keylogin.c
index d42595ccd9..5816dde923 100644
--- a/usr/src/cmd/keyserv/keylogin.c
+++ b/usr/src/cmd/keyserv/keylogin.c
@@ -36,8 +36,6 @@
* contributors.
*/
-#pragma ident "%Z%%M% %I% %E% SMI"
-
/*
* Set secret key on local machine
*/
@@ -238,7 +236,7 @@ oldkeylogin(char *fullname, char *pass)
"The system default domain '%s' is different from the Secure RPC\n\
domain %s where the key is stored. The Secure RPC domainname is\n\
defined by the directory object stored in the /var/nis/NIS_COLD_START file.\n\
-If you need to change this Secure RPC domainname, please use the nisinit(1M)\n\
+If you need to change this Secure RPC domainname, please use the nisinit(8)\n\
command with the `-k` option.\n", local_domain, sec_domain);
} else {
fprintf(stderr,
diff --git a/usr/src/cmd/keyserv/keyserv.c b/usr/src/cmd/keyserv/keyserv.c
index 8bb6171772..2b5420a166 100644
--- a/usr/src/cmd/keyserv/keyserv.c
+++ b/usr/src/cmd/keyserv/keyserv.c
@@ -40,9 +40,9 @@
/*
* keyserv - server for storing private encryption keys
- * keyserv(1M) performs multiple functions: it stores secret keys per uid; it
+ * keyserv(8) performs multiple functions: it stores secret keys per uid; it
* performs public key encryption and decryption operations; and it generates
- * "random" keys. keyserv(1M) will talk to no one but a local root process on
+ * "random" keys. keyserv(8) will talk to no one but a local root process on
* the local transport only.
*/
diff --git a/usr/src/cmd/keyserv/keyserv.dfl b/usr/src/cmd/keyserv/keyserv.dfl
index bed51f1614..77048988fc 100644
--- a/usr/src/cmd/keyserv/keyserv.dfl
+++ b/usr/src/cmd/keyserv/keyserv.dfl
@@ -1,4 +1,3 @@
-#ident "%Z%%M% %I% %E% SMI"
# Copyright 2005 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
#
@@ -25,10 +24,10 @@
#
# /etc/default/keyserv
#
-# keyserv default settings processed via keyserv(1M).
+# keyserv default settings processed via keyserv(8).
#
# ENABLE_NOBODY_KEYS affects whether default keys for nobody are used, see
-# keyserv(1M) for details. The default value is "YES". A value of "NO"
+# keyserv(8) for details. The default value is "YES". A value of "NO"
# (any case) results in disabling of these keys; any other value is
# ignored.
#
diff --git a/usr/src/cmd/keyserv/keyserv.xml b/usr/src/cmd/keyserv/keyserv.xml
index 9f70e6a993..86dd806183 100644
--- a/usr/src/cmd/keyserv/keyserv.xml
+++ b/usr/src/cmd/keyserv/keyserv.xml
@@ -24,8 +24,6 @@
CDDL HEADER END
- ident "%Z%%M% %I% %E% SMI"
-
NOTE: This service manifest is not editable; its contents will
be overwritten by package or patch operations, including
operating system upgrade. Make customizations in a different
@@ -78,7 +76,7 @@
</loctext>
</common_name>
<documentation>
- <manpage title='keyserv' section='1M'
+ <manpage title='keyserv' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/keyserv/setkey.c b/usr/src/cmd/keyserv/setkey.c
index 39ac5dfaef..05de2e5ce7 100644
--- a/usr/src/cmd/keyserv/setkey.c
+++ b/usr/src/cmd/keyserv/setkey.c
@@ -34,8 +34,6 @@
* contributors.
*/
-#pragma ident "%Z%%M% %I% %E% SMI"
-
/*
* Do the real work of the keyserver.
* Store secret keys. Compute common keys,
@@ -1838,8 +1836,8 @@ hash_keys(pub, sec)
}
/*
- * problem: keyserv loads keys from /etc/.rootkey based on nisauthconf(1M)
- * which is too nis+-centric (see secure_rpc(3N)).
+ * problem: keyserv loads keys from /etc/.rootkey based on nisauthconf(8)
+ * which is too nis+-centric (see secure_rpc(3NSL)).
*
* So we want to make sure there is always a AUTH_DES compat entry
* in the "list" of nis+ mechs so that the 192bit key always gets loaded so
diff --git a/usr/src/cmd/krb5/kadmin/cli/kadmin.c b/usr/src/cmd/krb5/kadmin/cli/kadmin.c
index 0d86fb06e4..88556cda9b 100644
--- a/usr/src/cmd/krb5/kadmin/cli/kadmin.c
+++ b/usr/src/cmd/krb5/kadmin/cli/kadmin.c
@@ -1360,8 +1360,8 @@ void kadmin_addprinc(argc, argv)
gettext("while doing a get_principal on \"%s\"."), canon);
printf(gettext("\nWarning: Principal \"%s\" could have incomplete "
"flag settings, as a result of a failed get_principal.\n"
- "Check the 'default_principal_flags' setting in kdc.conf(4).\n"
- "If there is a mismatch, use modprinc in kadmin(1M) to rectify "
+ "Check the 'default_principal_flags' setting in kdc.conf(5).\n"
+ "If there is a mismatch, use modprinc in kadmin(8) to rectify "
"the same.\n\n"), canon);
}
diff --git a/usr/src/cmd/krb5/kadmin/kclient/kclient.sh b/usr/src/cmd/krb5/kadmin/kclient/kclient.sh
index 575f0a8c63..ab579e9757 100644
--- a/usr/src/cmd/krb5/kadmin/kclient/kclient.sh
+++ b/usr/src/cmd/krb5/kadmin/kclient/kclient.sh
@@ -608,7 +608,7 @@ function setup_keytab {
#
# 2. Do we want to create and/or add service principal(s) for fqdn's
- # other than the one listed in resolv.conf(4) ?
+ # other than the one listed in resolv.conf(5) ?
#
if [[ -z $options ]]; then
query "$(gettext "Do you have multiple DNS domains spanning the Kerberos realm") $realm ?"
@@ -1456,7 +1456,7 @@ EOF
if [[ ${#enctypes[@]} -eq 0 ]]
then
printf "$(gettext "No enctypes are supported").\n"
- printf "$(gettext "Please enable arcfour or 1DES, then re-join; see cryptoadm(1M)").\n" >&2
+ printf "$(gettext "Please enable arcfour or 1DES, then re-join; see cryptoadm(8)").\n" >&2
error_message
fi
@@ -1787,7 +1787,7 @@ else
# /etc/resolv.conf not present, exit ...
#
printf "\n$(gettext "%s does not exist and is required for Kerberos setup")\n" $RESOLV_CONF_FILE >&2
- printf "$(gettext "Refer to resolv.conf(4), exiting").\n" >&2
+ printf "$(gettext "Refer to resolv.conf(5), exiting").\n" >&2
error_message
fi
@@ -1798,7 +1798,7 @@ check_nss_conf || printf "$(gettext "/etc/nsswitch.conf does not make use of DNS
if [[ -z $dnsarg && (-z $options || -z $filepath) ]]; then
query "$(gettext "Do you want to use DNS for kerberos lookups") ?"
if [[ $answer == yes ]]; then
- printf "\n$(gettext "Valid DNS lookup options are dns_lookup_kdc, dns_lookup_realm,\nand dns_fallback. Refer krb5.conf(4) for further details").\n"
+ printf "\n$(gettext "Valid DNS lookup options are dns_lookup_kdc, dns_lookup_realm,\nand dns_fallback. Refer krb5.conf(5) for further details").\n"
printf "\n$(gettext "Enter required DNS option"): "
read dnsarg
checkval="DNS_OPTIONS"; check_value $dnsarg
@@ -1948,7 +1948,7 @@ doKRB5config
if [[ $no_keytab != yes ]]; then
setup_keytab
else
- printf "\n$(gettext "Note: %s file not created, please refer to verify_ap_req_nofail in krb5.conf(4) for the implications").\n" $KRB5_KEYTAB_FILE
+ printf "\n$(gettext "Note: %s file not created, please refer to verify_ap_req_nofail in krb5.conf(5) for the implications").\n" $KRB5_KEYTAB_FILE
printf "$(gettext "Client will also not be able to host services that use Kerberos").\n"
fi
diff --git a/usr/src/cmd/krb5/kadmin/kdcmgr/klookup.c b/usr/src/cmd/krb5/kadmin/kdcmgr/klookup.c
index 6fa9641093..c962ea1faf 100644
--- a/usr/src/cmd/krb5/kadmin/kdcmgr/klookup.c
+++ b/usr/src/cmd/krb5/kadmin/kdcmgr/klookup.c
@@ -43,7 +43,7 @@
* klooukp [ target [ RR_type ] ]
*
* Utitilizes DNS lookups to discover domain and realm information. This CLI
- * is used primarily by kdcmgr(1M) and kclient(1M).
+ * is used primarily by kdcmgr(8) and kclient(8).
*/
int
diff --git a/usr/src/cmd/krb5/kadmin/server/ipropd_svc.c b/usr/src/cmd/krb5/kadmin/server/ipropd_svc.c
index 6e75e2428d..e708ad17a3 100644
--- a/usr/src/cmd/krb5/kadmin/server/ipropd_svc.c
+++ b/usr/src/cmd/krb5/kadmin/server/ipropd_svc.c
@@ -348,7 +348,7 @@ iprop_full_resync_1(
#else
(void) signal(SIGCHLD, SIG_DFL);
#endif /* POSIX_SIGNALS */
- /* run kdb5_util(1M) dump for IProp */
+ /* run kdb5_util(8) dump for IProp */
pret = pclose(popen(ubuf, "w"));
DPRINT(("%s: pclose=%d\n", whoami, pret));
if (pret == -1) {
diff --git a/usr/src/cmd/krb5/kadmin/server/kadmin.xml b/usr/src/cmd/krb5/kadmin/server/kadmin.xml
index e006030c13..4d37e822fa 100644
--- a/usr/src/cmd/krb5/kadmin/server/kadmin.xml
+++ b/usr/src/cmd/krb5/kadmin/server/kadmin.xml
@@ -4,8 +4,6 @@
Copyright 2008 Sun Microsystems, Inc. All rights reserved.
Use is subject to license terms.
- ident "%Z%%M% %I% %E% SMI"
-
NOTE: This service manifest is not editable; its contents will
be overwritten by package or patch operations, including
operating system upgrade. Make customizations in a different
@@ -61,7 +59,7 @@
Kerberos administration daemon </loctext>
</common_name>
<documentation>
- <manpage title='kadmind' section='1M'
+ <manpage title='kadmind' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/krb5/kadmin/server/ovsec_kadmd.c b/usr/src/cmd/krb5/kadmin/server/ovsec_kadmd.c
index 11fe918c06..ad015d52b1 100644
--- a/usr/src/cmd/krb5/kadmin/server/ovsec_kadmd.c
+++ b/usr/src/cmd/krb5/kadmin/server/ovsec_kadmd.c
@@ -720,7 +720,7 @@ int main(int argc, char *argv[])
* The option value is "1". This will allow the server to restart
* whilst the previous process is cleaning up after itself in a
* FIN_WAIT_2 or TIME_WAIT state. If another process is started
- * outside of smf(5) then bind will fail anyway, which is what we want.
+ * outside of smf(7) then bind will fail anyway, which is what we want.
*/
reqbuf[sizeof (struct opthdr)] = 1;
diff --git a/usr/src/cmd/krb5/krb5kdc/krb5kdc.xml b/usr/src/cmd/krb5/krb5kdc/krb5kdc.xml
index 05f1159d76..7b5167d8a4 100644
--- a/usr/src/cmd/krb5/krb5kdc/krb5kdc.xml
+++ b/usr/src/cmd/krb5/krb5kdc/krb5kdc.xml
@@ -4,8 +4,6 @@
Copyright 2008 Sun Microsystems, Inc. All rights reserved.
Use is subject to license terms.
- ident "%Z%%M% %I% %E% SMI"
-
NOTE: This service manifest is not editable; its contents will
be overwritten by package or patch operations, including
operating system upgrade. Make customizations in a different
@@ -28,7 +26,7 @@
<dependency
name='dns'
grouping='require_all'
- restart_on='error'
+ restart_on='error'
type='service'>
<service_fmri value='svc:/network/dns/client' />
</dependency>
@@ -62,7 +60,7 @@
</loctext>
</common_name>
<documentation>
- <manpage title='krb5kdc' section='1M'
+ <manpage title='krb5kdc' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/krb5/kwarn/ktkt_warn.xml b/usr/src/cmd/krb5/kwarn/ktkt_warn.xml
index 3bcc648fac..ec91ce147a 100644
--- a/usr/src/cmd/krb5/kwarn/ktkt_warn.xml
+++ b/usr/src/cmd/krb5/kwarn/ktkt_warn.xml
@@ -81,7 +81,7 @@
</loctext>
</common_name>
<documentation>
- <manpage title='ktkt_warnd' section='1M'
+ <manpage title='ktkt_warnd' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/krb5/kwarn/kwarnd.c b/usr/src/cmd/krb5/kwarn/kwarnd.c
index 34355b4143..395367c7e3 100644
--- a/usr/src/cmd/krb5/kwarn/kwarnd.c
+++ b/usr/src/cmd/krb5/kwarn/kwarnd.c
@@ -92,7 +92,7 @@ main(int argc, char **argv)
/*
* Take special note that "getuid()" is called here. This call is used
- * rather that app_krb5_user_uid(), to ensure ktkt_warnd(1M) is running
+ * rather that app_krb5_user_uid(), to ensure ktkt_warnd(8) is running
* as root.
*/
#ifdef DEBUG
diff --git a/usr/src/cmd/krb5/slave/krb5_prop.xml b/usr/src/cmd/krb5/slave/krb5_prop.xml
index 1d62424494..00581ae1ff 100644
--- a/usr/src/cmd/krb5/slave/krb5_prop.xml
+++ b/usr/src/cmd/krb5/slave/krb5_prop.xml
@@ -4,8 +4,6 @@
Copyright 2008 Sun Microsystems, Inc. All rights reserved.
Use is subject to license terms.
- pragma ident "%Z%%M% %I% %E% SMI"
-
NOTE: This service manifest is not editable; its contents will
be overwritten by package or patch operations, including
operating system upgrade. Make customizations in a different
@@ -20,7 +18,7 @@
the old mode of nonincremental
passively receives full propagations from the master KDC
- refer to kdc.conf(4) to configure incremental or nonincremental modes
+ refer to kdc.conf(5) to configure incremental or nonincremental modes
-->
<service_bundle type='manifest' name='SUNWkdcr:kpropd'>
@@ -50,7 +48,7 @@
user='root'
group='other'
privileges='basic,!file_link_any,!proc_info,!proc_session,net_privaddr'
- />
+ />
</method_context>
</exec_method>
@@ -69,7 +67,7 @@
</loctext>
</common_name>
<documentation>
- <manpage title='kpropd' section='1M'
+ <manpage title='kpropd' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/ldap/ns_ldap/idsconfig.sh b/usr/src/cmd/ldap/ns_ldap/idsconfig.sh
index 4d3df78e42..786c95ce07 100644
--- a/usr/src/cmd/ldap/ns_ldap/idsconfig.sh
+++ b/usr/src/cmd/ldap/ns_ldap/idsconfig.sh
@@ -56,7 +56,7 @@ EOF
Note: idsconfig has created entries for VLV indexes.
- For DS5.x, use the directoryserver(1m) script on ${IDS_SERVER}
+ For DS5.x, use the directoryserver(8) script on ${IDS_SERVER}
to stop the server. Then, using directoryserver, follow the
directoryserver examples below to create the actual VLV indexes.
@@ -266,7 +266,7 @@ EOF
HELP - Name of the configuration profile with which the clients will be
configured. A directory server can store various profiles for multiple
- groups of clients. The initialization tool, (ldapclient(1M)), assumes
+ groups of clients. The initialization tool, (ldapclient(8)), assumes
"default" unless another is specified.
EOF
@@ -347,7 +347,7 @@ EOF
;;
keyserv_help) cat <<EOF
-HELP - The authentication method(s) to be used by newkey(1M) and chkey(1)
+HELP - The authentication method(s) to be used by newkey(8) and chkey(1)
when contacting the directory server. This is a ordered list and
if provided will override the default authentication method
parameter.
@@ -428,7 +428,7 @@ HELP - Using Service Search Descriptors (SSD), you can override the
used to override the default search base DN, the default search
scope, and the default search filter to be used for directory
lookups. SSD are supported for all services (databases)
- defined in nsswitch.conf(4). The default base DN is defined
+ defined in nsswitch.conf(5). The default base DN is defined
in ldap(1).
Note: SSD are powerful tools in defining configuration profiles
@@ -472,12 +472,12 @@ EOF
HELP - Enter 'y' to set up the LDAP server for shadow update.
The setup will add an administrator identity/credential
and modify the necessary access controls for the client
- to update shadow(4) data on the LDAP server. If sasl/GSSAPI
+ to update shadow(5) data on the LDAP server. If sasl/GSSAPI
is in use, the Kerberos host principal will be used as the
administrator identity.
Shadow data is used for password aging and account locking.
- Please refer to the shadow(4) manual page for details.
+ Please refer to the shadow(5) manual page for details.
EOF
;;
@@ -485,10 +485,10 @@ EOF
HELP - Start the setup to add an administrator identity/credential
and to modify access controls for the client to update
- shadow(4) data on the LDAP server.
+ shadow(5) data on the LDAP server.
Shadow data is used for password aging and account locking.
- Please refer to the shadow(4) manual page for details.
+ Please refer to the shadow(5) manual page for details.
EOF
;;
@@ -496,11 +496,11 @@ EOF
HELP - A profile with a 'sasl/GSSAPI' authentication method and a 'self'
credential level is detected, enter 'y' to modify the necessary
- access controls for allowing the client to update shadow(4) data
+ access controls for allowing the client to update shadow(5) data
on the LDAP server.
Shadow data is used for password aging and account locking.
- Please refer to the shadow(4) manual page for details.
+ Please refer to the shadow(5) manual page for details.
EOF
;;
@@ -5230,7 +5230,7 @@ cleanup()
# This script assumes that the iPlanet Directory Server (iDS) is
# installed and that setup has been run. This script takes the
# iDS server from that point and sets up the infrastructure for
-# LDAP Naming Services. After running this script, ldapaddent(1M)
+# LDAP Naming Services. After running this script, ldapaddent(8)
# or some other tools can be used to populate data.
# Initialize the variables that need to be set to NULL, or some
diff --git a/usr/src/cmd/ldap/ns_ldap/ldapaddent.c b/usr/src/cmd/ldap/ns_ldap/ldapaddent.c
index 6c4e83f0b9..0f95da88c5 100644
--- a/usr/src/cmd/ldap/ns_ldap/ldapaddent.c
+++ b/usr/src/cmd/ldap/ns_ldap/ldapaddent.c
@@ -575,7 +575,7 @@ check_ipaddr(char *addr, char **newaddr)
}
/*
- * Verifies that project name meets the restrictions defined by project(4).
+ * Verifies that project name meets the restrictions defined by project(5).
*/
static int
check_projname(char *addr)
@@ -2357,7 +2357,7 @@ genent_publickey(char *line, int (*cback)())
* {DES} and {DH192-0} means same thing.
* However, nisplus uses "DES" and ldap uses "DH192-0"
* internally.
- * See newkey(1M), __nis_mechalias2authtype() which is
+ * See newkey(8), __nis_mechalias2authtype() which is
* called by __nis_keyalg2authtype() and getkey_ldap_g()
*/
(void) strlcpy(auth_type, "DH192-0", BUFSIZ+1);
diff --git a/usr/src/cmd/ldap/ns_ldap/ldapclient.c b/usr/src/cmd/ldap/ns_ldap/ldapclient.c
index c36401f35e..b5fcbccb13 100644
--- a/usr/src/cmd/ldap/ns_ldap/ldapclient.c
+++ b/usr/src/cmd/ldap/ns_ldap/ldapclient.c
@@ -79,7 +79,7 @@
* generate (gen_profile). (formerly -P)
* profileTTL
* Client info TTL. If set to 0 this information will not be
- * automatically updated by the ldap_cachemgr(1M).
+ * automatically updated by the ldap_cachemgr(8).
* (formerly -e)
* proxyDN
* Binding DN. Ex. cn=client,ou=people,cd=eng,dc=sun,dc=com
@@ -1964,7 +1964,7 @@ usage(void)
gettext("<args> take the form of \'-a attrName=attrVal\' as "
"described in the\n"),
stderr);
- CLIENT_FPUTS(gettext("man page: ldapclient(1M)\n"), stderr);
+ CLIENT_FPUTS(gettext("man page: ldapclient(8)\n"), stderr);
}
diff --git a/usr/src/cmd/ldapcachemgr/client.xml b/usr/src/cmd/ldapcachemgr/client.xml
index c5dfe78354..53d90d76c4 100644
--- a/usr/src/cmd/ldapcachemgr/client.xml
+++ b/usr/src/cmd/ldapcachemgr/client.xml
@@ -23,8 +23,6 @@
CDDL HEADER END
- ident "%Z%%M% %I% %E% SMI"
-
NOTE: This service manifest is not editable; its contents will
be overwritten by package or patch operations, including
operating system upgrade. Make customizations in a different
@@ -95,7 +93,7 @@ Information Service lookups
</loctext>
</description>
<documentation>
- <manpage title='ldap_cachemgr' section='1M' manpath='/usr/share/man' />
+ <manpage title='ldap_cachemgr' section='8' manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/ldmad/ldoms-agents.xml b/usr/src/cmd/ldmad/ldoms-agents.xml
index d968745f19..d5fea93b4b 100644
--- a/usr/src/cmd/ldmad/ldoms-agents.xml
+++ b/usr/src/cmd/ldmad/ldoms-agents.xml
@@ -76,7 +76,7 @@
</loctext>
</common_name>
<documentation>
- <manpage title='ldmad' section='1M'
+ <manpage title='ldmad' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/lofiadm/main.c b/usr/src/cmd/lofiadm/main.c
index 6ed5b49050..f1c360ec6f 100644
--- a/usr/src/cmd/lofiadm/main.c
+++ b/usr/src/cmd/lofiadm/main.c
@@ -29,7 +29,7 @@
*/
/*
- * lofiadm - administer lofi(7d). Very simple, add and remove file<->device
+ * lofiadm - administer lofi(4D). Very simple, add and remove file<->device
* associations, and display status. All the ioctls are private between
* lofi and lofiadm, and so are very simple - device information is
* communicated via a minor number.
@@ -1753,7 +1753,7 @@ lofi_compress(int *lfd, const char *filename, int compress_index,
/*
* Round up the compressed file size to be a multiple of
- * DEV_BSIZE. lofi(7D) likes it that way.
+ * DEV_BSIZE. lofi(4D) likes it that way.
*/
if ((offset = statbuf.st_size % DEV_BSIZE) > 0) {
diff --git a/usr/src/cmd/logadm/conf.c b/usr/src/cmd/logadm/conf.c
index bb037041f9..c910dabef7 100644
--- a/usr/src/cmd/logadm/conf.c
+++ b/usr/src/cmd/logadm/conf.c
@@ -652,7 +652,7 @@ conf_print(FILE *cstream, FILE *tstream)
exclude_opts++; /* -P option goes to config file */
} else {
(void) fprintf(tstream, gettext(
- "# This file holds internal data for logadm(1M).\n"
+ "# This file holds internal data for logadm(8).\n"
"# Do not edit.\n"));
}
for (cp = Confinfo; cp; cp = cp->cf_next) {
diff --git a/usr/src/cmd/logadm/logadm-upgrade b/usr/src/cmd/logadm/logadm-upgrade
index e606b32365..04a1114af5 100644
--- a/usr/src/cmd/logadm/logadm-upgrade
+++ b/usr/src/cmd/logadm/logadm-upgrade
@@ -33,7 +33,7 @@ GREP=/usr/bin/grep
#
# This is a temporary service to allow addition (only) to /etc/logadm.conf
-# It is temporary in the sense that logadm(1M) should have its configuration
+# It is temporary in the sense that logadm(8) should have its configuration
# migrated to SMF in the future.
#
diff --git a/usr/src/cmd/logadm/logadm.conf b/usr/src/cmd/logadm/logadm.conf
index 39eea57578..6c0df38306 100644
--- a/usr/src/cmd/logadm/logadm.conf
+++ b/usr/src/cmd/logadm/logadm.conf
@@ -24,7 +24,7 @@
# logadm.conf
#
# Default settings for system log file management.
-# The -w option to logadm(1M) is the preferred way to write to this file,
+# The -w option to logadm(8) is the preferred way to write to this file,
# but if you do edit it by hand, use "logadm -V" to check it for errors.
#
# The format of lines in this file is:
@@ -50,10 +50,10 @@ vminfod_logs /var/svc/log/*vminfod*.log -C 168 -S 1g -c -p 1h -t '/var/log/vm/vm
/var/log/*.debug -C 2 -s 5m -c
smf_logs /var/svc/log/*.log -C 8 -s 1m -c
#
-# The entry below is used by turnacct(1M)
+# The entry below is used by turnacct(8)
#
/var/adm/pacct -C 0 -N -a '/usr/lib/acct/accton pacct' -g adm -m 664 -o adm -p never
#
-# The entry below manages the Dynamic Resource Pools daemon (poold(1M)) logfile.
+# The entry below manages the Dynamic Resource Pools daemon (poold(8)) logfile.
#
/var/log/pool/poold -N -s 512k -a 'pkill -HUP poold; true'
diff --git a/usr/src/cmd/logadm/tester b/usr/src/cmd/logadm/tester
index 742bc03209..242df62cdf 100644
--- a/usr/src/cmd/logadm/tester
+++ b/usr/src/cmd/logadm/tester
@@ -274,7 +274,7 @@ sub set_testconffile {
# logadm.conf
#
# Default settings for system log file management.
-# The -w option to logadm(1M) is the preferred way to write to this file,
+# The -w option to logadm(8) is the preferred way to write to this file,
# but if you do edit it by hand, use "logadm -V" to check it for errors.
#
# The format of lines in this file is:
@@ -290,7 +290,7 @@ sub set_testconffile {
/var/cron/log -s 512k -t /var/cron/olog
/var/lp/logs/lpsched -C 2 -N -t '$file.$N'
#
-# The entry below is used by turnacct(1M)
+# The entry below is used by turnacct(8)
#
/var/adm/pacct -C 0 -a '/usr/lib/acct/accton pacct' -g adm -m 664 -o adm -p never
apache -C 24 -a '/usr/apache/bin/apachectl graceful' -p 1m -t '/var/apache/old-logs/$basename.%Y-%m' '/var/apache/logs/*{access,error}_log'
@@ -1171,7 +1171,7 @@ sub logadm7 {
# this comment # has at least another #-sign in it #...
#
# Default settings for system log file management.
-# The -w option to logadm(1M) is the preferred way to write to this file,
+# The -w option to logadm(8) is the preferred way to write to this file,
# but if you do edit it by hand, use "logadm -V" to check it for errors.
# but if you do edit it by hand, use "logadm -V" to check it for errors.
#
@@ -1187,7 +1187,7 @@ sub logadm7 {
dir1/syslog -C 8 -a 'echo kill -HUP `cat /var/run/*syslog*pid` >> cmd.out'
dir2/messages -C 4 -a 'echo kill -HUP `cat /var/run/*syslog*pid` >> cmd.out'
#
-# The entry below is used by turnacct(1M)
+# The entry below is used by turnacct(8)
#
/var/adm/pacct -C 0 -a '/usr/lib/acct/accton pacct' -g adm -m 664 -o adm -p never
EOF
@@ -1202,7 +1202,7 @@ second kill -HUP $pid
EOF
set_file('sed.out.expect', <<'EOF');
-# This file holds internal data for logadm(1M).
+# This file holds internal data for logadm(8).
# Do not edit.
dir1/syslog
dir2/messages
@@ -1382,7 +1382,7 @@ dir2/messages -P '$lessthanweek'
EOF
set_file('sed.out.expect', <<"EOF");
-# This file holds internal data for logadm(1M).
+# This file holds internal data for logadm(8).
# Do not edit.
dir1/syslog
dir2/log
@@ -1740,7 +1740,7 @@ sub logadm14 {
# logadm.conf
#
# Default settings for system log file management.
-# The -w option to logadm(1M) is the preferred way to write to this file,
+# The -w option to logadm(8) is the preferred way to write to this file,
# but if you do edit it by hand, use "logadm -V" to check it for errors.
# but if you do edit it by hand, use "logadm -V" to check it for errors.
#
@@ -1756,7 +1756,7 @@ sub logadm14 {
dir1/syslog -C 8 -a 'echo kill -HUP `cat /var/run/*syslog*pid` >> cmd.out'
dir2/messages -C 4 -a 'echo kill -HUP `cat /var/run/*syslog*pid` >> cmd.out'
#
-# The entry below is used by turnacct(1M)
+# The entry below is used by turnacct(8)
#
/var/adm/pacct -C 0 -a '/usr/lib/acct/accton pacct' -g adm -m 664 -o adm -p never
EOF
@@ -2155,7 +2155,7 @@ dir3/test.log -A 3d
EOF
set_file('logadm.timestamps', <<'EOF');
-# This file holds internal data for logadm(1M).
+# This file holds internal data for logadm(8).
# Do not edit.
dir1/foo.log -P 'Thu Nov 1 16:56:42 2001'
dir2/test.log -P 'Thu Nov 1 16:56:42 2001'
@@ -2194,7 +2194,7 @@ wildcard_test -A 3d dir1/*.log
EOF
set_file('logadm.timestamps', <<'EOF');
-# This file holds internal data for logadm(1M).
+# This file holds internal data for logadm(8).
# Do not edit.
dir1/foo.log -P 'Thu Nov 1 16:56:42 2001'
dir2/test.log -P 'Thu Nov 1 16:56:42 2001'
diff --git a/usr/src/cmd/login/login.dfl b/usr/src/cmd/login/login.dfl
index 4515dfcc6a..f747f95201 100644
--- a/usr/src/cmd/login/login.dfl
+++ b/usr/src/cmd/login/login.dfl
@@ -84,8 +84,8 @@ SYSLOG=YES
# RETRIES determines the number of failed logins that will be
# allowed before login exits. Default is 5 and maximum is 15.
-# If account locking is configured (user_attr(4)/policy.conf(4))
-# for a local user's account (passwd(4)/shadow(4)), that account
+# If account locking is configured (user_attr(5)/policy.conf(5))
+# for a local user's account (passwd(5)/shadow(5)), that account
# will be locked if failed logins equals or exceeds RETRIES.
#
#RETRIES=5
diff --git a/usr/src/cmd/login/logindevperm.sh b/usr/src/cmd/login/logindevperm.sh
index d02ff2aeca..32ff330877 100644
--- a/usr/src/cmd/login/logindevperm.sh
+++ b/usr/src/cmd/login/logindevperm.sh
@@ -51,7 +51,7 @@ cat <<EOM
# ending in "/*", such as "/dev/fbs/*", specifies all entries (except "."
# and "..") in a directory. A '#' begins a comment and may appear
# anywhere in an entry.
-# In addition, regular expressions may be used. Refer to logindevperm(4)
+# In addition, regular expressions may be used. Refer to logindevperm(5)
# man page.
# Note that any changes in this file should be made when logged in as
# root as devfs provides persistence on minor node attributes.
diff --git a/usr/src/cmd/lp/cmd/lpsched/server.xml b/usr/src/cmd/lp/cmd/lpsched/server.xml
index d8df778cd9..bb8c653ff4 100644
--- a/usr/src/cmd/lp/cmd/lpsched/server.xml
+++ b/usr/src/cmd/lp/cmd/lpsched/server.xml
@@ -111,7 +111,7 @@
<propval name='ipf_method' type='astring'
value='/lib/svc/method/print-svc ipfilter' />
</property_group>
-
+
<property_group name='firewall_config' type='com.sun,fw_configuration'>
<propval name='policy' type='astring' value='use_global' />
<propval name='block_policy' type='astring'
@@ -135,7 +135,7 @@
</loctext>
</common_name>
<documentation>
- <manpage title='lpsched' section='1M'
+ <manpage title='lpsched' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/lp/crontab/lp b/usr/src/cmd/lp/crontab/lp
index 610cf71a44..dad7bcf43c 100644
--- a/usr/src/cmd/lp/crontab/lp
+++ b/usr/src/cmd/lp/crontab/lp
@@ -22,7 +22,7 @@
#
# CDDL HEADER END
#
-#ident "%Z%%M% %I% %E% SMI"
+
#
# At 03:13am on Sundays:
# Move a weeks worth of 'requests' to 'requests.1'.
@@ -31,5 +31,5 @@
#
13 3 * * 0 cd /var/lp/logs; if [ -f requests ]; then if [ -f requests.1 ]; then /bin/mv requests.1 requests.2; fi; /usr/bin/cp requests requests.1; >requests; fi
#
-# Rotating of the "lpsched" log files is handled by logadm(1M).
+# Rotating of the "lpsched" log files is handled by logadm(8).
#
diff --git a/usr/src/cmd/lp/filter/postscript/postio/parallel.c b/usr/src/cmd/lp/filter/postscript/postio/parallel.c
index a8bca7e41e..75c1cee7a4 100644
--- a/usr/src/cmd/lp/filter/postscript/postio/parallel.c
+++ b/usr/src/cmd/lp/filter/postscript/postio/parallel.c
@@ -24,8 +24,6 @@
* Use is subject to license terms.
*/
-#pragma ident "%Z%%M% %I% %E% SMI"
-
extern char *postbegin;
#include <stdio.h>
@@ -101,7 +99,7 @@ char *BppState(int state)
static char buf[BUFSIZ];
memset(buf, 0, sizeof(buf));
- sprintf(buf, "State (0x%.4x) - (%s%s%s%s)\n", state,
+ sprintf(buf, "State (0x%.4x) - (%s%s%s%s)\n", state,
((state & BPP_SLCT_ERR) ? "offline " : ""),
((state & BPP_BUSY_ERR) ? "busy " : ""),
((state & BPP_PE_ERR) ? "paper " : ""),
@@ -121,10 +119,10 @@ int bpp_state(int fd)
exit(PRINTER_IO_ERROR);
state = bpp_stat.pin_status;
-#if defined(DEBUG) && defined(NOTDEF)
+#if defined(DEBUG) && defined(NOTDEF)
logit("%s", BppState(state));
#endif
-
+
if (state == (BPP_PE_ERR | BPP_ERR_ERR | BPP_SLCT_ERR)) {
/* paper is out */
return(PRINTER_ERROR_PAPER_OUT);
@@ -148,7 +146,7 @@ int bpp_state(int fd)
return(0);
}
-int
+int
get_ecpp_status(int fd)
{
int state;
@@ -179,7 +177,7 @@ get_ecpp_status(int fd)
}
/**
- * For prnio(7I) - generic printer interface
+ * For prnio(4I) - generic printer interface
**/
int is_a_prnio(int fd)
{
@@ -235,7 +233,7 @@ int prnio_state(int fd)
}
return(0);
}
-
+
/**
* Common routines
**/
diff --git a/usr/src/cmd/lp/include/lp.h b/usr/src/cmd/lp/include/lp.h
index a07acfd494..81a11f88b6 100644
--- a/usr/src/cmd/lp/include/lp.h
+++ b/usr/src/cmd/lp/include/lp.h
@@ -240,7 +240,7 @@ typedef struct FALERT {
although a common cause is that the printer's buffer capacity\n\
was exceeded. Using XON/XOFF flow control, adding carriage-return\n\
delays, or lowering the baud rate may fix the problem.\n\
-See stty(1) and lpadmin(1M) man-pages for help in doing this.\n"
+See stty(1) and lpadmin(8) man-pages for help in doing this.\n"
#define PIPE_FAULT \
"The output ``port'', a FIFO, was closed before all output was written.\n"
@@ -266,7 +266,7 @@ See stty(1) and lpadmin(1M) man-pages for help in doing this.\n"
#define LP_EKEYWORD 12
#define LP_EPATTERN 13
#define LP_ERESULT 14
-#define LP_EREGEX 15 /* and see extern int regerrno, regexpr(3G) */
+#define LP_EREGEX 15 /* and see extern int regerrno, regexpr(3GEN) */
#define LP_ENOMEM 99
extern int lp_errno;
diff --git a/usr/src/cmd/lp/lib/oam/msg.source b/usr/src/cmd/lp/lib/oam/msg.source
index d0650c00cf..4c762fed65 100644
--- a/usr/src/cmd/lp/lib/oam/msg.source
+++ b/usr/src/cmd/lp/lib/oam/msg.source
@@ -19,8 +19,6 @@
* CDDL HEADER END
*/
-#pragma ident "%Z%%M% %I% %E% SMI"
-
/*
* Copyright 2007 Sun Microsystems, Inc. All rights reserved.
* Use is subject to license terms.
@@ -344,7 +342,7 @@ E_FL_BADTEMPLATE
"There appears to be an incomplete option\ntemplate. This can be caused by a double\ncomma in the option list. Resubmit the\nentire input."
E_FL_BADKEY
"Unrecognized keyword in option template."
- "Resubmit the entire input. Check the\nlpfilter(1M) manual page for the list of\nvalid keywords."
+ "Resubmit the entire input. Check the\nlpfilter(8) manual page for the list of\nvalid keywords."
E_FL_BADPATT
"Missing pattern in option template."
"Resubmit the entire input; make sure all\noption templates include a keyword,\npattern, and replacement:\nkeyword pattern = replacement\n(e.g. MODES * = -m *)."
diff --git a/usr/src/cmd/lp/model/lp.cat.c b/usr/src/cmd/lp/model/lp.cat.c
index 1b94b0afd8..8575427c50 100644
--- a/usr/src/cmd/lp/model/lp.cat.c
+++ b/usr/src/cmd/lp/model/lp.cat.c
@@ -196,7 +196,7 @@ get_ecpp_status(int fd)
}
/*
- * For prnio(7I) - generic printer interface
+ * For prnio(4I) - generic printer interface
*/
int
is_a_prnio(int fd)
diff --git a/usr/src/cmd/mailwrapper/mailer.conf b/usr/src/cmd/mailwrapper/mailer.conf
index fc17c7e16d..9abfb6ab9d 100644
--- a/usr/src/cmd/mailwrapper/mailer.conf
+++ b/usr/src/cmd/mailwrapper/mailer.conf
@@ -1,7 +1,7 @@
#
-# This file configures mailwrapper(1M).
-# For details see mailer.conf(4).
-# The following configuration is correct for sendmail(1M).
+# This file configures mailwrapper(8).
+# For details see mailer.conf(5).
+# The following configuration is correct for sendmail(8).
#
sendmail /usr/lib/smtp/sendmail/sendmail
diff --git a/usr/src/cmd/mailx/hdr/rcv.h b/usr/src/cmd/mailx/hdr/rcv.h
index ba68da067f..d61639d5d2 100644
--- a/usr/src/cmd/mailx/hdr/rcv.h
+++ b/usr/src/cmd/mailx/hdr/rcv.h
@@ -33,8 +33,6 @@
* contributors.
*/
-#pragma ident "%Z%%M% %I% %E% SMI"
-
/*
* mailx -- a modified version of a University of California at Berkeley
* mail program
@@ -44,7 +42,7 @@
*/
/*#define USG 1 */ /* System V */
-#define USG_TTY 1 /* termio(7) */
+#define USG_TTY 1 /* termio(4I) */
#include "def.h"
#include "glob.h"
diff --git a/usr/src/cmd/man/man.c b/usr/src/cmd/man/man.c
index 3935305932..ec8c361190 100644
--- a/usr/src/cmd/man/man.c
+++ b/usr/src/cmd/man/man.c
@@ -74,6 +74,7 @@ static const struct map_entry {
char *old_name;
char *new_name;
} map[] = {
+ { "1m", "8" },
{ "3b", "3ucb" },
{ "3e", "3elf" },
{ "3g", "3gen" },
@@ -85,6 +86,16 @@ static const struct map_entry {
{ "3x", "3curses" },
{ "3xc", "3xcurses" },
{ "3xn", "3xnet" },
+ { "4", "5" },
+ { "5", "7" },
+ { "7", "4" },
+ { "7b", "4b" },
+ { "7d", "4d" },
+ { "7fs", "4fs" },
+ { "7i", "4i" },
+ { "7ipp", "4ipp" },
+ { "7m", "4m" },
+ { "7p", "4p" },
{ NULL, NULL }
};
@@ -135,18 +146,18 @@ static struct pathmap {
dev_t dev;
ino_t ino;
} bintoman[] = {
- { "/sbin", "/usr/share/man,1m", 0, 0 },
- { "/usr/sbin", "/usr/share/man,1m", 0, 0 },
- { "/usr/ucb", "/usr/share/man,1b", 0, 0 },
- { "/usr/bin", "/usr/share/man,1,1m,1s,1t,1c", 0, 0 },
- { "/usr/xpg4/bin", "/usr/share/man,1", 0, 0 },
- { "/usr/xpg6/bin", "/usr/share/man,1", 0, 0 },
- { NULL, NULL, 0, 0 }
+ { "/sbin", "/usr/share/man,8,1m", 0, 0 },
+ { "/usr/sbin", "/usr/share/man,8,1m", 0, 0 },
+ { "/usr/ucb", "/usr/share/man,1b", 0, 0 },
+ { "/usr/bin", "/usr/share/man,1,8,1m,1s,1t,1c", 0, 0 },
+ { "/usr/xpg4/bin", "/usr/share/man,1", 0, 0 },
+ { "/usr/xpg6/bin", "/usr/share/man,1", 0, 0 },
+ { NULL, NULL, 0, 0 }
};
struct man_node {
char *path; /* mandir path */
- char **secv; /* submandir suffices */
+ char **secv; /* submandir suffixes */
int defsrch; /* hint for man -p */
int frompath; /* hint for man -d */
struct man_node *next;
@@ -159,17 +170,16 @@ static int found = 0;
static int list = 0;
static int makewhatis = 0;
static int printmp = 0;
-static int sargs = 0;
static int psoutput = 0;
static int lintout = 0;
static int whatis = 0;
static int makewhatishere = 0;
-static char *mansec;
+static char *mansec = NULL;
static char *pager = NULL;
static char *addlocale(char *);
-static struct man_node *build_manpath(char **, int);
+static struct man_node *build_manpath(char **, char *, int);
static void do_makewhatis(struct man_node *);
static char *check_config(char *);
static int cmp(const void *, const void *);
@@ -182,11 +192,11 @@ static void fullpaths(struct man_node **);
static void get_all_sect(struct man_node *);
static int getdirs(char *, char ***, int);
static void getpath(struct man_node *, char **);
-static void getsect(struct man_node *, char **);
+static void getsect(struct man_node *, char **, char *);
static void init_bintoman(void);
static void lower(char *);
static void mandir(char **, char *, char *, int);
-static int manual(struct man_node *, char *);
+static int manual(struct man_node *, char *, char *);
static char *map_section(char *, char *);
static char *path_to_manpath(char *);
static void print_manpath(struct man_node *);
@@ -283,7 +293,6 @@ main(int argc, char **argv)
break;
case 's':
mansec = optarg;
- sargs++;
break;
case 'r':
lintout++;
@@ -334,8 +343,7 @@ main(int argc, char **argv)
manpath = DEFMANDIR;
}
pathv = split(manpath, ':');
- mandirs = build_manpath(pathv, bmp_flags);
- freev(pathv);
+ mandirs = build_manpath(pathv, mansec, bmp_flags);
fullpaths(&mandirs);
if (makewhatis) {
@@ -377,7 +385,7 @@ main(int argc, char **argv)
for (i = 0; i < argc; i++) {
char *cmd;
static struct man_node *mp;
- char *pv[2];
+ char *pv[2] = {NULL, NULL};
/*
* If full path to command specified, customize
@@ -389,23 +397,56 @@ main(int argc, char **argv)
err(1, "strdup");
pv[1] = NULL;
*cmd = '/';
- mp = build_manpath(pv,
+ mp = build_manpath(pv, mansec,
BMP_ISPATH | BMP_FALLBACK_DEFMANDIR);
} else {
mp = mandirs;
}
- if (apropos)
+ if (apropos) {
whatapro(mp, argv[i]);
- else
- ret += manual(mp, argv[i]);
+ } else {
+ /*
+ * If a page is specified with an embedded section,
+ * such as 'printf.3c' First try to find it literally
+ * (which has historically worked due to the
+ * implementation of mandir() and has come to be
+ * relied upon), if that doesn't work split it at the
+ * right most '.' to separate a hypothetical name and
+ * section, and explicitly search under the specified
+ * section, which will trigger the section name
+ * compatibility logic.
+ *
+ * The error that the page they initially requested
+ * does not exist will still be produced at this
+ * point, and indicate (unless clobbered by the pager)
+ * what has been done.
+ */
+ int lret = 0;
+
+ lret = manual(mp, argv[i], NULL);
+ if (lret != 0) {
+ char *sec = NULL;
+
+ if ((sec = strrchr(argv[i], '.')) != NULL) {
+ char *page = NULL;
+ *sec++ = '\0';
+ if ((page = strdup(argv[i])) == NULL)
+ err(1, "strdup");
+ mp = build_manpath(pathv, sec, 0);
+ lret = manual(mp, page, sec);
+ free(page);
+ }
+ }
+ ret += lret;
+ }
if (mp != NULL && mp != mandirs) {
free(pv[0]);
free_manp(mp);
}
}
-
+ freev(pathv);
return (ret == 0 ? 0 : 1);
}
@@ -415,7 +456,7 @@ main(int argc, char **argv)
* flags.
*/
static struct man_node *
-build_manpath(char **pathv, int flags)
+build_manpath(char **pathv, char *sec, int flags)
{
struct man_node *manpage = NULL;
struct man_node *currp = NULL;
@@ -458,7 +499,7 @@ build_manpath(char **pathv, int flags)
lastp = manpage = currp;
getpath(currp, p);
- getsect(currp, p);
+ getsect(currp, p, sec);
/*
* If there are no new elements in this path,
@@ -518,7 +559,7 @@ getpath(struct man_node *manp, char **pv)
* directories) into the manp structure.
*/
static void
-getsect(struct man_node *manp, char **pv)
+getsect(struct man_node *manp, char **pv, char *explicit_sec)
{
char *sections;
char **sectp;
@@ -529,9 +570,10 @@ getsect(struct man_node *manp, char **pv)
DPRINTF("-- Adding %s\n", manp->path);
manp->secv = NULL;
get_all_sect(manp);
- } else if (sargs) {
- DPRINTF("-- Adding %s: sections=%s\n", manp->path, mansec);
- manp->secv = split(mansec, ',');
+ } else if (explicit_sec != NULL) {
+ DPRINTF("-- Adding %s: sections=%s\n", manp->path,
+ explicit_sec);
+ manp->secv = split(explicit_sec, ',');
for (sectp = manp->secv; *sectp; sectp++)
lower(*sectp);
} else if ((sections = strchr(*pv, ',')) != NULL) {
@@ -743,12 +785,12 @@ search_whatis(char *whatpath, char *word)
if (regcomp(&preg, pkwd, REG_BASIC | REG_ICASE | REG_NOSUB) != 0)
err(1, "regcomp");
- if (sargs)
+ if (mansec != NULL)
ss = split(mansec, ',');
while (getline(&line, &linecap, fp) > 0) {
if (regexec(&preg, line, 0, NULL, 0) == 0) {
- if (sargs) {
+ if (mansec != NULL) {
/* Section-restricted search */
for (i = 0; ss[i] != NULL; i++) {
(void) snprintf(s, sizeof (s), "(%s)",
@@ -939,7 +981,7 @@ cmp(const void *arg1, const void *arg2)
* Find a manpage.
*/
static int
-manual(struct man_node *manp, char *name)
+manual(struct man_node *manp, char *name, char *sec)
{
struct man_node *p;
struct man_node *local;
@@ -964,7 +1006,7 @@ manual(struct man_node *manp, char *name)
if (ndirs != 0) {
ldirs[0] = ldir;
ldirs[1] = NULL;
- local = build_manpath(ldirs, 0);
+ local = build_manpath(ldirs, mansec, 0);
DPRINTF("-- Locale specific subdir: %s\n",
ldir);
mandir(local->secv, ldir, name, 1);
@@ -985,10 +1027,10 @@ manual(struct man_node *manp, char *name)
}
if (!found) {
- if (sargs) {
+ if (sec != NULL) {
(void) fprintf(stderr, gettext(
"No manual entry for %s in section(s) %s\n"),
- fullname, mansec);
+ fullname, sec);
} else {
(void) fprintf(stderr,
gettext("No manual entry for %s\n"), fullname);
diff --git a/usr/src/cmd/mandoc/mandoc_msg.c b/usr/src/cmd/mandoc/mandoc_msg.c
index edd804d9a3..beec5059a2 100644
--- a/usr/src/cmd/mandoc/mandoc_msg.c
+++ b/usr/src/cmd/mandoc/mandoc_msg.c
@@ -58,7 +58,7 @@ static const char *const type_message[MANDOCERR_MAX] = {
"generic style suggestion",
- "legacy man(5) date format",
+ "legacy man(7) date format",
"normalizing date format to",
"lower case character in document title",
"duplicate RCS id",
@@ -257,7 +257,7 @@ static const char *const type_message[MANDOCERR_MAX] = {
"bad option value",
"duplicate option value",
"no such tag",
- "-Tmarkdown unsupported for man(5) input",
+ "-Tmarkdown unsupported for man(7) input",
/* system errors */
NULL,
diff --git a/usr/src/cmd/mandoc/mdoc_validate.c b/usr/src/cmd/mandoc/mdoc_validate.c
index 5a12c7f440..1870a76114 100644
--- a/usr/src/cmd/mandoc/mdoc_validate.c
+++ b/usr/src/cmd/mandoc/mdoc_validate.c
@@ -2548,18 +2548,13 @@ post_sh_head(POST_ARGS)
goodsec = NULL;
switch (sec) {
case SEC_ERRORS:
+ case SEC_RETURN_VALUES:
if (*mdoc->meta.msec == '4')
break;
if (*mdoc->meta.msec == '7')
break;
goodsec = "2, 3, 4, 7, 9";
/* FALLTHROUGH */
- case SEC_RETURN_VALUES:
- if (*mdoc->meta.msec == '7')
- break;
- if (NULL == goodsec)
- goodsec = "2, 3, 7, 9";
- /* FALLTHROUGH */
case SEC_LIBRARY:
if (*mdoc->meta.msec == '2')
break;
diff --git a/usr/src/cmd/mandoc/msec.in b/usr/src/cmd/mandoc/msec.in
index 09069603b7..e11aba10b9 100644
--- a/usr/src/cmd/mandoc/msec.in
+++ b/usr/src/cmd/mandoc/msec.in
@@ -17,7 +17,6 @@ LINE("1", "User Commands")
LINE("1B", "BSD Compatibility Package Commands")
LINE("1C", "Communication Commands")
LINE("1HAS", "User Commands")
-LINE("1M", "Maintenance Commands")
LINE("1ONBLD", "illumos Build Tools")
LINE("1S", "illumos Specific Commands")
LINE("2", "System Calls")
@@ -95,17 +94,17 @@ LINE("3XCURSES", "X/Open Curses Library Functions")
LINE("3XNET", "X/Open Networking Services Library Functions")
LINE("3F", "Fortran Library Routines")
LINE("3X", "Miscellaneous Library Functions")
-LINE("4", "File Formats and Configurations")
-LINE("5", "Standards, Environments, and Macros")
+LINE("4", "Device and Network Interfaces")
+LINE("4D", "Devices")
+LINE("4FS", "File Systems")
+LINE("4I", "Ioctl Requests")
+LINE("4IPP", "IP Quality of Service Modules")
+LINE("4M", "STREAMS Modules")
+LINE("4P", "Protocols")
+LINE("5", "File Formats and Configurations")
LINE("6", "Games and Demos")
-LINE("7", "Device and Network Interfaces")
-LINE("7D", "Devices")
-LINE("7FS", "File Systems")
-LINE("7I", "Ioctl Requests")
-LINE("7IPP", "IP Quality of Service Modules")
-LINE("7M", "STREAMS Modules")
-LINE("7P", "Protocols")
-LINE("8", "Maintenance Procedures")
+LINE("7", "Standards, Environments, and Macros")
+LINE("8", "Maintenance Commands and Procedures")
LINE("9", "Kernel Concepts")
LINE("9E", "Driver Entry Points")
LINE("9F", "Kernel Functions for Drivers")
diff --git a/usr/src/cmd/mdb/common/mdb/mdb_cmds.c b/usr/src/cmd/mdb/common/mdb/mdb_cmds.c
index 4a71c04dfb..00a23aacb9 100644
--- a/usr/src/cmd/mdb/common/mdb/mdb_cmds.c
+++ b/usr/src/cmd/mdb/common/mdb/mdb_cmds.c
@@ -1738,7 +1738,7 @@ showrev_objectversions(int showall)
}
/*
- * Display information similar to what showrev(1M) displays when invoked
+ * Display information similar to what showrev(8) displays when invoked
* with no arguments.
*/
static int
@@ -1755,7 +1755,7 @@ showrev_sysinfo(void)
}
/*
- * Match the order of the showrev(1M) output and put "Application
+ * Match the order of the showrev(8) output and put "Application
* architecture" before "Kernel version"
*/
if ((s = mdb_tgt_isa(mdb.m_target)) != NULL)
diff --git a/usr/src/cmd/mdb/common/mdb/mdb_io.c b/usr/src/cmd/mdb/common/mdb/mdb_io.c
index 752c6f5c35..988fc7aa71 100644
--- a/usr/src/cmd/mdb/common/mdb/mdb_io.c
+++ b/usr/src/cmd/mdb/common/mdb/mdb_io.c
@@ -1168,8 +1168,8 @@ iob_getvar(const char *s, size_t len)
/*
* The iob_doprnt function forms the main engine of the debugger's output
* formatting capabilities. Note that this is NOT exactly compatible with
- * the printf(3S) family, nor is it intended to be so. We support some
- * extensions and format characters not supported by printf(3S), and we
+ * the printf(3C) family, nor is it intended to be so. We support some
+ * extensions and format characters not supported by printf(3C), and we
* explicitly do NOT provide support for %C, %S, %ws (wide-character strings),
* do NOT provide for the complete functionality of %f, %e, %E, %g, %G
* (alternate double formats), and do NOT support %.x (precision specification).
diff --git a/usr/src/cmd/mdb/common/mdb/mdb_target.c b/usr/src/cmd/mdb/common/mdb/mdb_target.c
index 29339f734f..57d91ba3dd 100644
--- a/usr/src/cmd/mdb/common/mdb/mdb_target.c
+++ b/usr/src/cmd/mdb/common/mdb/mdb_target.c
@@ -92,7 +92,7 @@
* +------------------------------+
*
* The MDB execution control model is based upon the synchronous debugging
- * model exported by Solaris proc(4). A target program is set running or the
+ * model exported by Solaris proc(5). A target program is set running or the
* debugger is attached to a running target. On ISTOP (stop on event of
* interest), one target thread is selected as the representative. The
* algorithm for selecting the representative is target-specific, but we assume
diff --git a/usr/src/cmd/mdb/common/mdb/mdb_termio.c b/usr/src/cmd/mdb/common/mdb/mdb_termio.c
index f1d0f55654..1a951ead65 100644
--- a/usr/src/cmd/mdb/common/mdb/mdb_termio.c
+++ b/usr/src/cmd/mdb/common/mdb/mdb_termio.c
@@ -45,7 +45,7 @@
* response to editing commands.
*
* The terminal backend is also responsible for maintaining and manipulating
- * the settings (see stty(1) and termio(7I)) associated with the terminal.
+ * the settings (see stty(1) and termio(4I)) associated with the terminal.
* The debugger makes use of four distinct sets of terminal attributes:
*
* (1) the settings used by the debugger's parent process (tio_ptios),
@@ -834,7 +834,7 @@ termio_resume_tty(termio_data_t *td, struct termios *iosp)
warn("failed to reset terminal attributes");
/*
- * Compute the terminal speed as described in termio(7I), and then
+ * Compute the terminal speed as described in termio(4I), and then
* look up the corresponding microseconds-per-char in our table.
*/
if (ntios->c_cflag & CBAUDEXT)
@@ -926,7 +926,7 @@ termio_delay(termio_data_t *td, uint_t usec)
}
/*
- * Parse the terminfo(4) padding sequence "$<...>" and delay for the specified
+ * Parse the terminfo(5) padding sequence "$<...>" and delay for the specified
* amount of time by sending pad characters to the terminal.
*/
static const char *
@@ -1020,7 +1020,7 @@ termio_puts(termio_data_t *td, const char *s, uint_t lines)
/*
* Print a padded escape sequence string to the terminal. The caller specifies
* the string 's' and a count of the affected lines. If the string contains an
- * embedded delay sequence delimited by "$<>" (see terminfo(4)), appropriate
+ * embedded delay sequence delimited by "$<>" (see terminfo(5)), appropriate
* padding will be included in the output. We determine whether or not padding
* is required during initialization, and set tio_putp to the proper subroutine.
*/
@@ -1476,7 +1476,7 @@ termio_setup_attrs(termio_data_t *td, const char *name)
* While "xenl" doesn't dictate our TIO_AUTOWRAP setting, it does have
* a subtle impact on the way we process input: in addition to its
* eponymous behavior of eating newlines, "xenl" denotes a second,
- * entirely orthogonal idiosyncracy. As terminfo(4) tells it: "Those
+ * entirely orthogonal idiosyncracy. As terminfo(5) tells it: "Those
* terminals whose cursor remains on the right-most column until
* another character has been received, rather than wrapping
* immediately upon receiving the right- most character, such as the
diff --git a/usr/src/cmd/mdb/common/mdb/mdb_typedef.c b/usr/src/cmd/mdb/common/mdb/mdb_typedef.c
index bff36274a3..4d2ed85bfd 100644
--- a/usr/src/cmd/mdb/common/mdb/mdb_typedef.c
+++ b/usr/src/cmd/mdb/common/mdb/mdb_typedef.c
@@ -729,7 +729,7 @@ static char typedef_desc[] =
"All built up definitions may be exported as a valid CTF container that can\n"
"be used again with ::typedef -r or anything that uses libctf. To write them\n"
"out, use ::typedef -w and specify the name of a file. For more information\n"
-"on the CTF file format, see ctf(4).\n"
+"on the CTF file format, see ctf(5).\n"
"\n";
static char typedef_opts[] =
diff --git a/usr/src/cmd/mdb/common/modules/dtrace/dtrace.c b/usr/src/cmd/mdb/common/modules/dtrace/dtrace.c
index 8acc470844..aaf430f82d 100644
--- a/usr/src/cmd/mdb/common/modules/dtrace/dtrace.c
+++ b/usr/src/cmd/mdb/common/modules/dtrace/dtrace.c
@@ -84,7 +84,7 @@ dtrace_help(void)
mdb_printf("Given a dtrace_state_t structure that represents a "
"DTrace consumer, prints\n"
- "dtrace(1M)-like output for in-kernel DTrace data. (The "
+ "dtrace(8)-like output for in-kernel DTrace data. (The "
"dtrace_state_t\n"
"structures for all DTrace consumers may be obtained by running "
"the \n"
@@ -1653,7 +1653,7 @@ dtrace_state_help(void)
"no state structure is provided, iterates\nover all state "
"structures.\n\n"
"Addresses in ADDR column may be provided to ::dtrace to obtain\n"
- "dtrace(1M)-like output for in-kernel DTrace data.\n");
+ "dtrace(8)-like output for in-kernel DTrace data.\n");
}
int
@@ -2764,7 +2764,7 @@ dtrace_probes(uintptr_t addr, uint_t flags, int argc, const mdb_arg_t *argv)
const mdb_dcmd_t kernel_dcmds[] = {
{ "id2probe", ":", "translate a dtrace_id_t to a dtrace_probe_t",
id2probe },
- { "dtrace", ":[-c cpu]", "print dtrace(1M)-like output",
+ { "dtrace", ":[-c cpu]", "print dtrace(8)-like output",
dtrace, dtrace_help },
{ "dtrace_errhash", ":", "print DTrace error hash", dtrace_errhash },
{ "dtrace_helptrace", ":", "print DTrace helper trace",
diff --git a/usr/src/cmd/mdb/common/modules/genunix/genunix.c b/usr/src/cmd/mdb/common/modules/genunix/genunix.c
index acc239b9a6..2166f27bd7 100644
--- a/usr/src/cmd/mdb/common/modules/genunix/genunix.c
+++ b/usr/src/cmd/mdb/common/modules/genunix/genunix.c
@@ -2463,7 +2463,7 @@ kgrep_subr(kgrep_cb_func *cb, void *cbdata)
if (mdb_get_state() == MDB_STATE_RUNNING) {
mdb_warn("kgrep can only be run on a system "
- "dump or under kmdb; see dumpadm(1M)\n");
+ "dump or under kmdb; see dumpadm(8)\n");
return (DCMD_ERR);
}
@@ -4021,7 +4021,7 @@ panicinfo(uintptr_t addr, uint_t flags, int argc, const mdb_arg_t *argv)
if (!mdb_prop_postmortem) {
mdb_warn("panicinfo can only be run on a system "
- "dump; see dumpadm(1M)\n");
+ "dump; see dumpadm(8)\n");
return (DCMD_ERR);
}
diff --git a/usr/src/cmd/mdb/common/modules/genunix/kmem.c b/usr/src/cmd/mdb/common/modules/genunix/kmem.c
index 87ae1430f9..7bc93f0d84 100644
--- a/usr/src/cmd/mdb/common/modules/genunix/kmem.c
+++ b/usr/src/cmd/mdb/common/modules/genunix/kmem.c
@@ -1010,7 +1010,7 @@ kmem_read_magazines(kmem_cache_t *cp, uintptr_t addr, int ncpus,
* list plus at most two magazines per CPU (the loaded and the
* spare). Toss in 100 magazines as a fudge factor in case this
* is live (the number "100" comes from the same fudge factor in
- * crash(1M)).
+ * crash(8)).
*/
magmax = (cp->cache_full.ml_total + 2 * ncpus + 100) * magsize;
magbsize = offsetof(kmem_magazine_t, mag_round[magsize]);
@@ -3937,7 +3937,7 @@ kmalog(uintptr_t addr, uint_t flags, int argc, const mdb_arg_t *argv)
}
/*
- * As the final lure for die-hard crash(1M) users, we provide ::kmausers here.
+ * As the final lure for die-hard crash(8) users, we provide ::kmausers here.
* The first piece is a structure which we use to accumulate kmem_cache_t
* addresses of interest. The kmc_add is used as a callback for the kmem_cache
* walker; we either add all caches, or ones named explicitly as arguments.
diff --git a/usr/src/cmd/mdb/common/modules/genunix/leaky_subr.c b/usr/src/cmd/mdb/common/modules/genunix/leaky_subr.c
index 4f69c2f7bf..f435ce4646 100644
--- a/usr/src/cmd/mdb/common/modules/genunix/leaky_subr.c
+++ b/usr/src/cmd/mdb/common/modules/genunix/leaky_subr.c
@@ -382,7 +382,7 @@ leaky_subr_estimate(size_t *estp)
if ((state = mdb_get_state()) == MDB_STATE_RUNNING) {
mdb_warn("findleaks: can only be run on a system "
- "dump or under kmdb; see dumpadm(1M)\n");
+ "dump or under kmdb; see dumpadm(8)\n");
return (DCMD_ERR);
}
diff --git a/usr/src/cmd/mdb/common/modules/genunix/typegraph.c b/usr/src/cmd/mdb/common/modules/genunix/typegraph.c
index ad68c39279..ea97c78460 100644
--- a/usr/src/cmd/mdb/common/modules/genunix/typegraph.c
+++ b/usr/src/cmd/mdb/common/modules/genunix/typegraph.c
@@ -2383,7 +2383,7 @@ typegraph(uintptr_t addr, uint_t flags, int argc, const mdb_arg_t *argv)
if (!mdb_prop_postmortem) {
mdb_warn("typegraph: can only be run on a system "
- "dump; see dumpadm(1M)\n");
+ "dump; see dumpadm(8)\n");
return (DCMD_ERR);
}
diff --git a/usr/src/cmd/mdb/common/modules/libumem/misc.c b/usr/src/cmd/mdb/common/modules/libumem/misc.c
index 8f07d475df..e72c41ee91 100644
--- a/usr/src/cmd/mdb/common/modules/libumem/misc.c
+++ b/usr/src/cmd/mdb/common/modules/libumem/misc.c
@@ -44,7 +44,7 @@ umem_debug(uintptr_t addr, uint_t flags, int argc, const mdb_arg_t *argv)
/*
* To further confuse the issue, this dmod can run against either
- * libumem.so.1 *or* the libstandumem.so linked into kmdb(1M). To figure
+ * libumem.so.1 *or* the libstandumem.so linked into kmdb(1). To figure
* out which one we are working against, we look up "umem_alloc" in both
* libumem.so and the executable.
*
diff --git a/usr/src/cmd/mdb/common/modules/libumem/umem.c b/usr/src/cmd/mdb/common/modules/libumem/umem.c
index a1b3df481b..85fd2abcd6 100644
--- a/usr/src/cmd/mdb/common/modules/libumem/umem.c
+++ b/usr/src/cmd/mdb/common/modules/libumem/umem.c
@@ -927,7 +927,7 @@ umem_read_magazines(umem_cache_t *cp, uintptr_t addr,
* list plus at most two magazines per CPU (the loaded and the
* spare). Toss in 100 magazines as a fudge factor in case this
* is live (the number "100" comes from the same fudge factor in
- * crash(1M)).
+ * crash(8)).
*/
magmax = (cp->cache_full.ml_total + 2 * umem_max_ncpus + 100) * magsize;
magbsize = offsetof(umem_magazine_t, mag_round[magsize]);
@@ -3543,7 +3543,7 @@ umalog(uintptr_t addr, uint_t flags, int argc, const mdb_arg_t *argv)
}
/*
- * As the final lure for die-hard crash(1M) users, we provide ::umausers here.
+ * As the final lure for die-hard crash(8) users, we provide ::umausers here.
* The first piece is a structure which we use to accumulate umem_cache_t
* addresses of interest. The umc_add is used as a callback for the umem_cache
* walker; we either add all caches, or ones named explicitly as arguments.
diff --git a/usr/src/cmd/mdb/common/modules/sockfs/sockfs.c b/usr/src/cmd/mdb/common/modules/sockfs/sockfs.c
index 01e888657f..3fb06bcacf 100644
--- a/usr/src/cmd/mdb/common/modules/sockfs/sockfs.c
+++ b/usr/src/cmd/mdb/common/modules/sockfs/sockfs.c
@@ -143,7 +143,7 @@ sockparams_help(void)
mdb_printf("Print sockparams information for a give sockparams ptr.\n"
"Without the address, list available sockparams. Default "
"behavior is to list only entries that were installed by the "
- "admin (via soconfig(1M)).\n\n"
+ "admin (via soconfig(8)).\n\n"
"Options:\n"
" -e:\t\tlist ephemeral sockparams\n"
" -E:\t\tonly list ephemeral sockparams\n");
diff --git a/usr/src/cmd/mdb/i86pc/modules/uppc/uppc.c b/usr/src/cmd/mdb/i86pc/modules/uppc/uppc.c
index d3ebde66b3..09146f4247 100644
--- a/usr/src/cmd/mdb/i86pc/modules/uppc/uppc.c
+++ b/usr/src/cmd/mdb/i86pc/modules/uppc/uppc.c
@@ -57,7 +57,7 @@ interrupt_print_bus(uintptr_t dip_addr)
/*
* uppc_interrupt_dump:
- * Dump uppc(7d) interrupt information.
+ * Dump uppc(4D) interrupt information.
*/
/* ARGSUSED */
int
diff --git a/usr/src/cmd/mdb/i86xpv/modules/xpv_uppc/xpv_uppc.c b/usr/src/cmd/mdb/i86xpv/modules/xpv_uppc/xpv_uppc.c
index f5b4144285..eea3573477 100644
--- a/usr/src/cmd/mdb/i86xpv/modules/xpv_uppc/xpv_uppc.c
+++ b/usr/src/cmd/mdb/i86xpv/modules/xpv_uppc/xpv_uppc.c
@@ -286,7 +286,7 @@ ec_interrupt_dump(int i)
/*
* uppc_interrupt_dump:
- * Dump uppc(7d) interrupt information.
+ * Dump uppc(4D) interrupt information.
*/
/* ARGSUSED */
int
@@ -308,8 +308,8 @@ xen_uppc_interrupt_dump(uintptr_t addr, uint_t flags, int argc,
return (DCMD_ERR);
/*
- * By default, on all x86 systems ::interrupts from xen_uppc(7d) gets
- * loaded first. For APIC systems the ::interrupts from xpv_psm(7d)
+ * By default, on all x86 systems ::interrupts from xen_uppc(4D) gets
+ * loaded first. For APIC systems the ::interrupts from xpv_psm(4D)
* ought to be executed. Confusion stems as both modules export the
* same dcmd.
*/
@@ -407,8 +407,8 @@ evtchns_dump(uintptr_t addr, uint_t flags, int argc, const mdb_arg_t *argv)
return (DCMD_ERR);
/*
- * By default, on all x86 systems ::evtchns from xen_uppc(7d) gets
- * loaded first. For APIC systems the ::evtchns from xpv_psm(7d)
+ * By default, on all x86 systems ::evtchns from xen_uppc(4D) gets
+ * loaded first. For APIC systems the ::evtchns from xpv_psm(4D)
* ought to be executed. Confusion stems as both modules export the
* same dcmd.
*/
diff --git a/usr/src/cmd/modload/extra_privs b/usr/src/cmd/modload/extra_privs
index efce95ad52..8b444f400a 100644
--- a/usr/src/cmd/modload/extra_privs
+++ b/usr/src/cmd/modload/extra_privs
@@ -22,11 +22,11 @@
#
# CDDL HEADER END
#
-#ident "%Z%%M% %I% %E% SMI"
+
#
# File which defines additional driver specific privileges.
#
-# This file is loaded by devfsadm(1m) at system boot.
+# This file is loaded by devfsadm(8) at system boot.
#
-# DO NOT EDIT. This file is maintained by add_drv(1m),
-# rem_drv(1m) and update_drv(1m).
+# DO NOT EDIT. This file is maintained by add_drv(8),
+# rem_drv(8) and update_drv(8).
diff --git a/usr/src/cmd/modload/rem_drv.c b/usr/src/cmd/modload/rem_drv.c
index 14b6d45959..d155a01336 100644
--- a/usr/src/cmd/modload/rem_drv.c
+++ b/usr/src/cmd/modload/rem_drv.c
@@ -131,7 +131,7 @@ main(int argc, char *argv[])
exit(1);
}
- /* must be only running version of add_drv/mod_drv/rem_drv */
+ /* must be only running version of add_drv/update_drv/rem_drv */
enter_lock();
if ((check_perms_aliases(1, 1)) == ERROR)
diff --git a/usr/src/cmd/mpathadm/mpathadm.c b/usr/src/cmd/mpathadm/mpathadm.c
index 85256368b1..cf2a231762 100644
--- a/usr/src/cmd/mpathadm/mpathadm.c
+++ b/usr/src/cmd/mpathadm/mpathadm.c
@@ -3399,7 +3399,7 @@ main(int argc, char *argv[])
ret = cmdParse(argc, argv, /* SUB_COMMAND_ISSUED, */ synTables,
subcommandArgs, &funcRet);
if (ret == 1) {
- (void) fprintf(stdout, "%s %s(1M)\n",
+ (void) fprintf(stdout, "%s %s(8)\n",
getTextString(TEXT_MORE_INFO), cmdName);
return (ERROR_CLI_FAILED);
} else if (ret == -1) {
diff --git a/usr/src/cmd/ndmpd/ndmp.xml b/usr/src/cmd/ndmpd/ndmp.xml
index da788ea2c5..e7ff506677 100644
--- a/usr/src/cmd/ndmpd/ndmp.xml
+++ b/usr/src/cmd/ndmpd/ndmp.xml
@@ -40,7 +40,7 @@ INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
POSSIBILITY OF SUCH DAMAGE.
-
+
-->
<service_bundle type='manifest' name='SUNWndmpr:ndmpd'>
@@ -150,7 +150,7 @@ POSSIBILITY OF SUCH DAMAGE.
<loctext xml:lang='C'> NDMP Service</loctext>
</common_name>
<documentation>
- <manpage title='ndmpd' section='1M'
+ <manpage title='ndmpd' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/netfiles/nsswitch.ad b/usr/src/cmd/netfiles/nsswitch.ad
index bec5c72c2d..a7d7b0c5ad 100644
--- a/usr/src/cmd/netfiles/nsswitch.ad
+++ b/usr/src/cmd/netfiles/nsswitch.ad
@@ -29,10 +29,10 @@
# uses Microsoft's Active Directory (AD) for passwd and group; DNS for
# hosts lookups; and files for the remaining databases.
#
-# AD name service currently only supports passwd(4) and group(4)
+# AD name service currently only supports passwd(5) and group(5)
# databases.
#
-# Other name service databases such as audit_user(4) and user_attr(4)
+# Other name service databases such as audit_user(5) and user_attr(5)
# that follow passwd entry in nsswitch.conf are not supported by AD.
# If the AD backend is processed (based on the configuration) it will
# return NOT FOUND for these databases.
diff --git a/usr/src/cmd/netfiles/nsswitch.dns b/usr/src/cmd/netfiles/nsswitch.dns
index cb58c3bc0a..c649f1e8b9 100644
--- a/usr/src/cmd/netfiles/nsswitch.dns
+++ b/usr/src/cmd/netfiles/nsswitch.dns
@@ -38,8 +38,8 @@ passwd: files
group: files
# You must also set up the /etc/resolv.conf file for DNS name
-# server lookup. See resolv.conf(4). For lookup via mdns
-# svc:/network/dns/multicast:default must also be enabled. See mdnsd(1M)
+# server lookup. See resolv.conf(5). For lookup via mdns
+# svc:/network/dns/multicast:default must also be enabled. See mdnsd(8)
hosts: files dns mdns
# Note that IPv4 addresses are searched for in all of the ipnodes databases
diff --git a/usr/src/cmd/nsadmin/system b/usr/src/cmd/nsadmin/system
index 8ab13b7d3f..f9663c7db2 100644
--- a/usr/src/cmd/nsadmin/system
+++ b/usr/src/cmd/nsadmin/system
@@ -31,7 +31,7 @@
* files in /etc/system.d are combined in alphabetical order and read by
* the kernel before this file (/etc/system) is processed.
*
-* Refer to the system(4) manual page for more information and
+* Refer to the system(5) manual page for more information and
* recommendations on naming fragment files.
*
* !!!!!!!!!!!!!!!!!!!!!!!!!!!!!! NOTE !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
@@ -100,7 +100,7 @@
* set:
*
* Set an integer variable in the kernel or a module to a new value.
-* This facility should be used with caution. See system(4).
+* This facility should be used with caution. See system(5).
*
* Examples:
*
diff --git a/usr/src/cmd/nscd/name-service-cache.xml b/usr/src/cmd/nscd/name-service-cache.xml
index e85f22278c..a10ff234ed 100644
--- a/usr/src/cmd/nscd/name-service-cache.xml
+++ b/usr/src/cmd/nscd/name-service-cache.xml
@@ -23,8 +23,6 @@
CDDL HEADER END
- ident "%Z%%M% %I% %E% SMI"
-
NOTE: This service manifest is not editable; its contents will
be overwritten by package or patch operations, including
operating system upgrade. Make customizations in a different
@@ -107,7 +105,7 @@
</loctext>
</common_name>
<documentation>
- <manpage title='nscd' section='1M' manpath='/usr/share/man' />
+ <manpage title='nscd' section='8' manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/nscd/nscd_switch.c b/usr/src/cmd/nscd/nscd_switch.c
index 40f0e5da62..5234debbde 100644
--- a/usr/src/cmd/nscd/nscd_switch.c
+++ b/usr/src/cmd/nscd/nscd_switch.c
@@ -771,7 +771,7 @@ nss_search(nss_db_root_t *rootp, nss_db_initf_t initf, int search_fnum,
/*
* If no privilege to look up, skip.
- * 'files' requires PRIV_FILE_DAC_READ to read shadow(4) data,
+ * 'files' requires PRIV_FILE_DAC_READ to read shadow(5) data,
* 'ldap' requires all zones privilege.
*/
if (params.privdb == 1 && swret != NULL) {
diff --git a/usr/src/cmd/nvmeadm/nvmeadm.c b/usr/src/cmd/nvmeadm/nvmeadm.c
index d288ac1865..ee9e26c997 100644
--- a/usr/src/cmd/nvmeadm/nvmeadm.c
+++ b/usr/src/cmd/nvmeadm/nvmeadm.c
@@ -157,13 +157,13 @@ static const nvmeadm_cmd_t nvmeadm_cmds[] = {
},
{
"detach",
- "detach blkdev(7d) from namespace(s) of a controller",
+ "detach blkdev(4D) from namespace(s) of a controller",
NULL,
do_attach_detach, usage_attach_detach, B_FALSE
},
{
"attach",
- "attach blkdev(7d) to namespace(s) of a controller",
+ "attach blkdev(4D) to namespace(s) of a controller",
NULL,
do_attach_detach, usage_attach_detach, B_FALSE
},
@@ -1231,7 +1231,7 @@ static void
usage_attach_detach(const char *c_name)
{
(void) fprintf(stderr, "%s <ctl>[/<ns>]\n\n"
- " %c%s blkdev(7d) %s one or all namespaces of the "
+ " %c%s blkdev(4D) %s one or all namespaces of the "
"specified NVMe controller.\n",
c_name, toupper(c_name[0]), &c_name[1],
c_name[0] == 'd' ? "from" : "to");
diff --git a/usr/src/cmd/oamuser/user/messages.c b/usr/src/cmd/oamuser/user/messages.c
index a0e0661a03..2345923dc0 100644
--- a/usr/src/cmd/oamuser/user/messages.c
+++ b/usr/src/cmd/oamuser/user/messages.c
@@ -68,7 +68,7 @@ char *errmsgs[] = {
"ERROR: Unable to %s: %s.\n",
"ERROR: %s is not a full path name. Choose another.\n",
"ERROR: %s is the primary group name. Choose another.\n",
- "ERROR: Inconsistent password files. See pwconv(1M).\n",
+ "ERROR: Inconsistent password files. See pwconv(8).\n",
"ERROR: %s is not a local user.\n",
"ERROR: Permission denied.\n",
"WARNING: Group entry exceeds 2048 char: /etc/group entry truncated.\n",
diff --git a/usr/src/cmd/oamuser/user/messages.h b/usr/src/cmd/oamuser/user/messages.h
index 5e208574f2..c01708320b 100644
--- a/usr/src/cmd/oamuser/user/messages.h
+++ b/usr/src/cmd/oamuser/user/messages.h
@@ -98,7 +98,7 @@ extern void errmsg(int, ...);
/* ERROR: %s is the primary group name. Choose another. */
#define M_SAME_GRP 20
-/* ERROR: Inconsistent password files. See pwconv(1M). */
+/* ERROR: Inconsistent password files. See pwconv(8). */
#define M_HOSED_FILES 21
/* ERROR: %s is not a local user. */
diff --git a/usr/src/cmd/oamuser/user/useradd.c b/usr/src/cmd/oamuser/user/useradd.c
index de4f97e953..156402db91 100644
--- a/usr/src/cmd/oamuser/user/useradd.c
+++ b/usr/src/cmd/oamuser/user/useradd.c
@@ -76,10 +76,10 @@
* base_dir - a directory
* login - a string of printable chars except colon(:)
* authorization - One or more comma separated authorizations defined
- * in auth_attr(4).
+ * in auth_attr(5).
* profile - One or more comma separated execution profiles defined
- * in prof_attr(4)
- * role - One or more comma-separated role names defined in user_attr(4)
+ * in prof_attr(5)
+ * role - One or more comma-separated role names defined in user_attr(5)
* project - One or more comma-separated project names or numbers
*
*/
diff --git a/usr/src/cmd/oamuser/user/usermod.c b/usr/src/cmd/oamuser/user/usermod.c
index 0264660fe3..91c8d2a44f 100644
--- a/usr/src/cmd/oamuser/user/usermod.c
+++ b/usr/src/cmd/oamuser/user/usermod.c
@@ -74,11 +74,11 @@
* inactive - number of days a login maybe inactive before it is locked
* expire - date when a login is no longer valid
* authorization - One or more comma separated authorizations defined
- * in auth_attr(4).
+ * in auth_attr(5).
* profile - One or more comma separated execution profiles defined
- * in prof_attr(4)
- * role - One or more comma-separated role names defined in user_attr(4)
- * key=value - One or more -K options each specifying a valid user_attr(4)
+ * in prof_attr(5)
+ * role - One or more comma-separated role names defined in user_attr(5)
+ * key=value - One or more -K options each specifying a valid user_attr(5)
* attribute.
*
*/
diff --git a/usr/src/cmd/oplhpd/oplhpd.xml b/usr/src/cmd/oplhpd/oplhpd.xml
index bb192612b3..841345a759 100644
--- a/usr/src/cmd/oplhpd/oplhpd.xml
+++ b/usr/src/cmd/oplhpd/oplhpd.xml
@@ -5,25 +5,23 @@
Use is subject to license terms.
CDDL HEADER START
-
+
The contents of this file are subject to the terms of the
Common Development and Distribution License (the "License").
You may not use this file except in compliance with the License.
-
+
You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
or http://www.opensolaris.org/os/licensing.
See the License for the specific language governing permissions
and limitations under the License.
-
+
When distributing Covered Code, include this CDDL HEADER in each
file and include the License file at usr/src/OPENSOLARIS.LICENSE.
If applicable, add the following below this CDDL HEADER, with the
fields enclosed by brackets "[]" replaced with your own identifying
information: Portions Copyright [yyyy] [name of copyright owner]
-
- CDDL HEADER END
- ident "%Z%%M% %I% %E% SMI"
+ CDDL HEADER END
NOTE: This service manifest is not editable; its contents will
be overwritten by package or patch operations, including
@@ -88,7 +86,7 @@
</loctext>
</common_name>
<documentation>
- <manpage title='oplhpd' section='1M'
+ <manpage title='oplhpd' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/passwd/passwd.dfl b/usr/src/cmd/passwd/passwd.dfl
index baa3c705fe..a6fd54ea8d 100644
--- a/usr/src/cmd/passwd/passwd.dfl
+++ b/usr/src/cmd/passwd/passwd.dfl
@@ -1,4 +1,3 @@
-#ident "%Z%%M% %I% %E% SMI"
#
# Copyright 2005 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
@@ -42,13 +41,13 @@ PASSLENGTH=6
# The maximum value of HISTORY is 26.
#
# This flag is only enforced for user accounts defined in the
-# local passwd(4)/shadow(4) files.
+# local passwd(5)/shadow(5) files.
#
#HISTORY=0
#
# Password complexity tunables. The values listed are the defaults
# which are compatible with previous releases of passwd.
-# See passwd(1) and pam_authtok_check(5) for use warnings and
+# See passwd(1) and pam_authtok_check(7) for use warnings and
# discussion of the use of these options.
#
#MINDIFF=3
@@ -64,8 +63,8 @@ PASSLENGTH=6
#
# passwd performs dictionary lookups if DICTIONLIST or DICTIONDBDIR
# is defined. If the password database does not yet exist, it is
-# created by passwd. See passwd(1), pam_authtok_check(5) and
-# mkpwdict(1M) for more information.
+# created by passwd. See passwd(1), pam_authtok_check(7) and
+# mkpwdict(8) for more information.
#
#DICTIONLIST=
#DICTIONDBDIR=/var/passwd
diff --git a/usr/src/cmd/pcidr/pcidr_common.c b/usr/src/cmd/pcidr/pcidr_common.c
index 31f198520c..eb919c0e90 100644
--- a/usr/src/cmd/pcidr/pcidr_common.c
+++ b/usr/src/cmd/pcidr/pcidr_common.c
@@ -24,8 +24,6 @@
* Use is subject to license terms.
*/
-#pragma ident "%Z%%M% %I% %E% SMI"
-
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
@@ -51,7 +49,7 @@
*
* Be careful of some priorities (facility + severity) that get "lost" by
* default since they have no syslog.conf entries such as daemon.info and
- * daemon.debug; see syslog(3C) and syslog.conf(4) for more info
+ * daemon.debug; see syslog(3C) and syslog.conf(5) for more info
*/
int dpritab[] = {LOG_INFO, LOG_WARNING, LOG_NOTICE, LOG_NOTICE};
int dpritab_len = sizeof (dpritab) / sizeof (dpritab[0]);
diff --git a/usr/src/cmd/pcieadm/pcieadm.h b/usr/src/cmd/pcieadm/pcieadm.h
index 7ebdc148ca..de7fd43e47 100644
--- a/usr/src/cmd/pcieadm/pcieadm.h
+++ b/usr/src/cmd/pcieadm/pcieadm.h
@@ -17,7 +17,7 @@
#define _PCIEADM_H
/*
- * Common definitions for pcieadm(1M).
+ * Common definitions for pcieadm(8).
*/
#include <libdevinfo.h>
diff --git a/usr/src/cmd/perl/contrib/Sun/Solaris/Lgrp/pod/Lgrp.pod b/usr/src/cmd/perl/contrib/Sun/Solaris/Lgrp/pod/Lgrp.pod
index 00d07c0a9c..8f75ba3e36 100644
--- a/usr/src/cmd/perl/contrib/Sun/Solaris/Lgrp/pod/Lgrp.pod
+++ b/usr/src/cmd/perl/contrib/Sun/Solaris/Lgrp/pod/Lgrp.pod
@@ -23,8 +23,6 @@
# Copyright 2006 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
#
-# ident "%Z%%M% %I% %E% SMI"
-#
#
# Sun::Solaris::Lgrp documentation.
@@ -702,7 +700,7 @@ version 1.
=head1 ATTRIBUTES
-See L<attributes(5)> for descriptions of the following attributes:
+See L<attributes(7)> for descriptions of the following attributes:
___________________________________________________________
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
@@ -733,6 +731,6 @@ L<lgrp_version(3LGRP)>,
L<lgrp_view(3LGRP)>,
L<lgrp_resources(3LGRP)>,
L<lgrp_latency_cookie(3LGRP)>,
-L<attributes(5)>
+L<attributes(7)>
=cut
diff --git a/usr/src/cmd/perl/contrib/Sun/Solaris/Project/Project.pm b/usr/src/cmd/perl/contrib/Sun/Solaris/Project/Project.pm
index aaeff1a450..0e9c6c8256 100644
--- a/usr/src/cmd/perl/contrib/Sun/Solaris/Project/Project.pm
+++ b/usr/src/cmd/perl/contrib/Sun/Solaris/Project/Project.pm
@@ -5,7 +5,7 @@
#
# Project.pm provides the bootstrap for the Sun::Solaris::Project module, and
-# also functions for reading, validating and writing out project(4) format
+# also functions for reading, validating and writing out project(5) format
# files.
#
################################################################################
@@ -132,7 +132,7 @@ sub projf_combine_errors
#
# projf_read(filename, flags)
#
-# Reads and parses a project(4) file, and returns a list of projent hashes.
+# Reads and parses a project(5) file, and returns a list of projent hashes.
#
# Inputs:
# filename - file to read
@@ -979,7 +979,7 @@ sub projent_attribute2string
#
# Converts a ref to a projent hash (as returned by projent_parse()) to
-# a project(4) database entry line.
+# a project(5) database entry line.
#
sub projent_2string
{
diff --git a/usr/src/cmd/perl/contrib/Sun/Solaris/Project/README b/usr/src/cmd/perl/contrib/Sun/Solaris/Project/README
index e35f759204..43eed14003 100644
--- a/usr/src/cmd/perl/contrib/Sun/Solaris/Project/README
+++ b/usr/src/cmd/perl/contrib/Sun/Solaris/Project/README
@@ -15,7 +15,7 @@ Description
This module provided access to the Solaris Project subsystem, which is part of
the Solaris resource management infrastructure.
-For more information on Solaris Projects, see the project(4) manpage and the
+For more information on Solaris Projects, see the project(5) manpage and the
following on-line documentation:
System Administration Guide: Resource Management and Network Services
diff --git a/usr/src/cmd/perl/contrib/Sun/Solaris/Project/pod/Project.pod b/usr/src/cmd/perl/contrib/Sun/Solaris/Project/pod/Project.pod
index 2f9771df89..0e9d1e00d2 100644
--- a/usr/src/cmd/perl/contrib/Sun/Solaris/Project/pod/Project.pod
+++ b/usr/src/cmd/perl/contrib/Sun/Solaris/Project/pod/Project.pod
@@ -89,7 +89,7 @@ process.
B<C<fgetprojent($filehandle)>>
This function returns the next project entry from C<$filehandle>, a Perl file
-handle that must refer to a previously opened file in C<project(4)> format.
+handle that must refer to a previously opened file in C<project(5)> format.
Return values are the same as for C<getprojent()>.
B<C<inproj($user, $project)>>
@@ -129,7 +129,7 @@ used to selectively import constants and functions defined in this module:
=head1 ATTRIBUTES
-See C<attributes(5)> for descriptions of the following attributes:
+See C<attributes(7)> for descriptions of the following attributes:
___________________________________________________________
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
@@ -142,4 +142,4 @@ See C<attributes(5)> for descriptions of the following attributes:
=head1 SEE ALSO
C<getprojid(2)>, C<getdefaultproj(3PROJECT)>, C<inproj(3PROJECT)>,
-C<libproject(3LIB)>, C<setproject(3PROJECT)>, C<project(4)>, C<attributes(5)>
+C<libproject(3LIB)>, C<setproject(3PROJECT)>, C<project(5)>, C<attributes(7)>
diff --git a/usr/src/cmd/perl/contrib/Sun/Solaris/Task/README b/usr/src/cmd/perl/contrib/Sun/Solaris/Task/README
index 119e6cda5a..4c6d716c0e 100644
--- a/usr/src/cmd/perl/contrib/Sun/Solaris/Task/README
+++ b/usr/src/cmd/perl/contrib/Sun/Solaris/Task/README
@@ -15,7 +15,7 @@ Description
This module provided access to the Solaris Task subsystem, which is part of
the Solaris resource management infrastructure.
-For more information on Solaris Tasks, see the project(4) manpage and the
+For more information on Solaris Tasks, see the project(5) manpage and the
following on-line documentation:
System Administration Guide: Resource Management and Network Services
diff --git a/usr/src/cmd/perl/contrib/Sun/Solaris/Task/pod/Task.pod b/usr/src/cmd/perl/contrib/Sun/Solaris/Task/pod/Task.pod
index 9927ec5b6c..e96f92ea5a 100644
--- a/usr/src/cmd/perl/contrib/Sun/Solaris/Task/pod/Task.pod
+++ b/usr/src/cmd/perl/contrib/Sun/Solaris/Task/pod/Task.pod
@@ -57,7 +57,7 @@ used to selectively import constants and functions defined in this module:
=head1 ATTRIBUTES
-See C<attributes(5)> for descriptions of the following attributes:
+See C<attributes(7)> for descriptions of the following attributes:
___________________________________________________________
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
@@ -69,4 +69,4 @@ See C<attributes(5)> for descriptions of the following attributes:
=head1 SEE ALSO
-C<gettaskid(2)>, C<settaskid(2)>, C<attributes(5)>
+C<gettaskid(2)>, C<settaskid(2)>, C<attributes(7)>
diff --git a/usr/src/cmd/pfexecd/pfexecd.c b/usr/src/cmd/pfexecd/pfexecd.c
index ae04a5fe4c..c75d8c4314 100644
--- a/usr/src/cmd/pfexecd/pfexecd.c
+++ b/usr/src/cmd/pfexecd/pfexecd.c
@@ -79,7 +79,7 @@ init_isa_regex(void)
char *p;
/*
- * Extract the isalist(5) for userland from the kernel.
+ * Extract the isalist(7) for userland from the kernel.
*/
isalist = malloc(isalen);
do {
diff --git a/usr/src/cmd/picl/picld/picl.xml b/usr/src/cmd/picl/picld/picl.xml
index 5a8f38d988..44a7486dc5 100644
--- a/usr/src/cmd/picl/picld/picl.xml
+++ b/usr/src/cmd/picl/picld/picl.xml
@@ -23,8 +23,6 @@
CDDL HEADER END
- ident "%Z%%M% %I% %E% SMI"
-
NOTE: This service manifest is not editable; its contents will
be overwritten by package or patch operations, including
operating system upgrade. Make customizations in a different
@@ -86,8 +84,8 @@
</loctext>
</common_name>
<documentation>
- <manpage title='picld' section='1M' manpath='/usr/share/man' />
- <manpage title='prtpicl' section='1M' manpath='/usr/share/man' />
+ <manpage title='picld' section='8' manpath='/usr/share/man' />
+ <manpage title='prtpicl' section='8' manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/picl/plugins/common/devtree/picldevtree.c b/usr/src/cmd/picl/plugins/common/devtree/picldevtree.c
index c74c5f85a7..ce58a8f1ed 100644
--- a/usr/src/cmd/picl/plugins/common/devtree/picldevtree.c
+++ b/usr/src/cmd/picl/plugins/common/devtree/picldevtree.c
@@ -1764,7 +1764,7 @@ update_subtree(picl_nodehdl_t nodeh, di_node_t dinode)
}
/*
- * Check for a stale OBP node. EINVAL is returned from the openprom(7D) driver
+ * Check for a stale OBP node. EINVAL is returned from the openprom(4D) driver
* if the nodeid stored in the snapshot is not valid.
*/
static int
diff --git a/usr/src/cmd/pools/poold/poold.properties b/usr/src/cmd/pools/poold/poold.properties
index 2e56ce9d4a..ad8d0cbe3b 100644
--- a/usr/src/cmd/pools/poold/poold.properties
+++ b/usr/src/cmd/pools/poold/poold.properties
@@ -22,9 +22,9 @@
#
# CDDL HEADER END
#
-#ident "%Z%%M% %I% %E% SMI"
+
#
-# NOTICE: This file contains default settings for poold(1M). Do not
+# NOTICE: This file contains default settings for poold(8). Do not
# edit this file. Its format and contents are subject to change in
# future releases of Solaris.
@@ -37,7 +37,7 @@ pset.objectives= com.sun.solaris.domain.pools.LocalityObjective, com.sun.solaris
.level= ALL
# Set defaults for all logfiles (poold and API-generated) which are suitable
-# for management by logadm(1M).
+# for management by logadm(8).
java.util.logging.FileHandler.limit = 0
java.util.logging.FileHandler.count = 1
java.util.logging.FileHandler.append = true
diff --git a/usr/src/cmd/pools/poold/poold.xml b/usr/src/cmd/pools/poold/poold.xml
index 87d7ff1f2d..591118ca1f 100644
--- a/usr/src/cmd/pools/poold/poold.xml
+++ b/usr/src/cmd/pools/poold/poold.xml
@@ -23,8 +23,6 @@
Copyright 2005 Sun Microsystems, Inc. All rights reserved.
Use is subject to license terms.
- ident "%Z%%M% %I% %E% SMI"
-
NOTE: This service manifest is not editable; its contents will
be overwritten by package or patch operations, including
operating system upgrade. Make customizations in a different
@@ -100,7 +98,7 @@
</loctext>
</common_name>
<documentation>
- <manpage title='poold' section='1M' manpath='/usr/share/man' />
+ <manpage title='poold' section='8' manpath='/usr/share/man' />
</documentation>
</template>
</service>
diff --git a/usr/src/cmd/pools/pools.xml b/usr/src/cmd/pools/pools.xml
index a9feaa7b39..78141fe9cf 100644
--- a/usr/src/cmd/pools/pools.xml
+++ b/usr/src/cmd/pools/pools.xml
@@ -23,8 +23,6 @@
Copyright 2005 Sun Microsystems, Inc. All rights reserved.
Use is subject to license terms.
- ident "%Z%%M% %I% %E% SMI"
-
NOTE: This service manifest is not editable; its contents will
be overwritten by package or patch operations, including
operating system upgrade. Make customizations in a different
@@ -94,10 +92,10 @@
</common_name>
<documentation>
<manpage title='libpool' section='3LIB' manpath='/usr/share/man' />
- <manpage title='pooladm' section='1M' manpath='/usr/share/man' />
- <manpage title='poolbind' section='1M' manpath='/usr/share/man' />
- <manpage title='poolcfg' section='1M' manpath='/usr/share/man' />
- <manpage title='poolstat' section='1M' manpath='/usr/share/man' />
+ <manpage title='pooladm' section='8' manpath='/usr/share/man' />
+ <manpage title='poolbind' section='8' manpath='/usr/share/man' />
+ <manpage title='poolcfg' section='8' manpath='/usr/share/man' />
+ <manpage title='poolstat' section='8' manpath='/usr/share/man' />
</documentation>
</template>
</service>
diff --git a/usr/src/cmd/power/power.dfl b/usr/src/cmd/power/power.dfl
index 7f29d24425..c06fd37528 100644
--- a/usr/src/cmd/power/power.dfl
+++ b/usr/src/cmd/power/power.dfl
@@ -1,4 +1,3 @@
-#pragma ident "%Z%%M% %I% %E% SMI"
# Copyright 2005 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
#
@@ -24,8 +23,8 @@
#
#
# This file contains tunable parameters for Power Management (PM) and
-# Checkpoint-Resume (CPR). See power.conf(4), pmconfig(1M), pm(7D),
-# and cpr(7) for details.
+# Checkpoint-Resume (CPR). See power.conf(5), pmconfig(8), pm(4D),
+# and cpr(4) for details.
#
#
#
diff --git a/usr/src/cmd/power/power.xml b/usr/src/cmd/power/power.xml
index 6183222f41..52ab900e71 100644
--- a/usr/src/cmd/power/power.xml
+++ b/usr/src/cmd/power/power.xml
@@ -24,8 +24,6 @@
CDDL HEADER END
- ident "%Z%%M% %I% %E% SMI"
-
NOTE: This service manifest is not editable; its contents will
be overwritten by package or patch operations, including
operating system upgrade. Make customizations in a different
@@ -99,10 +97,10 @@
</loctext>
</common_name>
<documentation>
- <manpage title='powerd' section='1M' manpath='/usr/share/man' />
- <manpage title='pmconfig' section='1M' manpath='/usr/share/man' />
- <manpage title='dtpower' section='1M' manpath='/usr/share/man' />
- <manpage title='power.conf' section='4' manpath='/usr/share/man' />
+ <manpage title='powerd' section='8' manpath='/usr/share/man' />
+ <manpage title='pmconfig' section='8' manpath='/usr/share/man' />
+ <manpage title='dtpower' section='8' manpath='/usr/share/man' />
+ <manpage title='power.conf' section='5' manpath='/usr/share/man' />
</documentation>
</template>
</service>
diff --git a/usr/src/cmd/power/sys-suspend.c b/usr/src/cmd/power/sys-suspend.c
index 048b86d89a..34481c57d1 100644
--- a/usr/src/cmd/power/sys-suspend.c
+++ b/usr/src/cmd/power/sys-suspend.c
@@ -173,7 +173,7 @@ change_audit_file(void)
int retries = RETRY_COUNT;
/*
- * Wait for audit(1M) -n process to complete
+ * Wait for audit(8) -n process to complete
*
*/
do {
@@ -219,9 +219,9 @@ alarm_handler(int sig)
*/
/*
- * pm_poweroff - similar to poweroff(1M)
- * This should do the same auditing as poweroff(1m) would do when it
- * becomes a libpower function. Till then we use poweroff(1m).
+ * pm_poweroff - similar to poweroff(8)
+ * This should do the same auditing as poweroff(8) would do when it
+ * becomes a libpower function. Till then we use poweroff(8).
*/
static void
pm_poweroff(void)
@@ -236,7 +236,7 @@ pm_poweroff(void)
closelog();
/*
- * Call poweroff(1m) to shut down the system.
+ * Call poweroff(8) to shut down the system.
*/
(void) execl("/usr/sbin/poweroff", "poweroff", NULL);
diff --git a/usr/src/cmd/print/bsd-sysv-commands/rfc1179.xml b/usr/src/cmd/print/bsd-sysv-commands/rfc1179.xml
index b6783bca28..2181b25cb9 100644
--- a/usr/src/cmd/print/bsd-sysv-commands/rfc1179.xml
+++ b/usr/src/cmd/print/bsd-sysv-commands/rfc1179.xml
@@ -37,7 +37,7 @@
type='service'
version='1'>
- <create_default_instance enabled='false' />
+ <create_default_instance enabled='false' />
<restarter>
<service_fmri value='svc:/network/inetd:default' />
@@ -100,7 +100,7 @@
</loctext>
</common_name>
<documentation>
- <manpage title='in.lpd' section='1M'
+ <manpage title='in.lpd' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/print/ppdmgr/ppd-cache-update.xml b/usr/src/cmd/print/ppdmgr/ppd-cache-update.xml
index 67ade9b999..57baa310bf 100644
--- a/usr/src/cmd/print/ppdmgr/ppd-cache-update.xml
+++ b/usr/src/cmd/print/ppdmgr/ppd-cache-update.xml
@@ -24,8 +24,6 @@
Copyright 2007 Sun Microsystems, Inc. All rights reserved.
Use is subject to license terms.
- ident "%Z%%M% %I% %E% SMI"
-
NOTE: This service manifest is not editable; its contents will
be overwritten by package or patch operations, including
operating system upgrade. Make customizations in a different
@@ -81,7 +79,7 @@
</loctext>
</common_name>
<documentation>
- <manpage title='ppdmgr' section='1M'
+ <manpage title='ppdmgr' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/AddAccess.rawhlp b/usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/AddAccess.rawhlp
index 9898ecfa8e..54eb381ad6 100644
--- a/usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/AddAccess.rawhlp
+++ b/usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/AddAccess.rawhlp
@@ -29,7 +29,7 @@
<p>
Use the Add Access to Printer dialog to make an installed printer
-accessible to print client computers. See the printers.conf(4) man
+accessible to print client computers. See the printers.conf(5) man
page if you need more information about print client commands.
<p>
diff --git a/usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/AddAccessFailed.rawhlp b/usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/AddAccessFailed.rawhlp
index b0153bb465..65fb190f04 100644
--- a/usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/AddAccessFailed.rawhlp
+++ b/usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/AddAccessFailed.rawhlp
@@ -23,7 +23,6 @@
-- Copyright 2001 Sun Microsystems, Inc. All rights reserved.
-- Use is subject to license terms.
--
--- ident "%Z%%M% %I% %E% SMI"
-->
<!-- Tag=AddAccessFailed -->
@@ -33,7 +32,7 @@
You must enter a printer name and a printer server name; the printer
server must be a remote server (not the current server). See the man
-page for lpadmin(1M) for more information.
+page for lpadmin(8) for more information.
<p>
diff --git a/usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/AddPrinterFailed.rawhlp b/usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/AddPrinterFailed.rawhlp
index 948abce0f6..0fc7163331 100644
--- a/usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/AddPrinterFailed.rawhlp
+++ b/usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/AddPrinterFailed.rawhlp
@@ -23,7 +23,6 @@
-- Copyright 2001 Sun Microsystems, Inc. All rights reserved.
-- Use is subject to license terms.
--
--- ident "%Z%%M% %I% %E% SMI"
-->
<!-- Tag=AddPrinterFailed -->
@@ -40,7 +39,7 @@ or underscores. A printer name can be a maximum of 14 characters long.
Display the Command-Line Console to help pinpoint where the error
may have occurred. Choose Show Command-Line Console from the Print
Manager menu to display the Command-Line Console. See the man
-page for lpadmin(1M) for more information.
+page for lpadmin(8) for more information.
<p>
diff --git a/usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/DeletePrinterFailed.rawhlp b/usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/DeletePrinterFailed.rawhlp
index ea10c85462..57e56f291d 100644
--- a/usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/DeletePrinterFailed.rawhlp
+++ b/usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/DeletePrinterFailed.rawhlp
@@ -22,7 +22,6 @@
-- Copyright 2001 Sun Microsystems, Inc. All rights reserved.
-- Use is subject to license terms.
--
--- ident "%Z%%M% %I% %E% SMI"
-->
<!-- Tag=DeletePrinterFailed -->
@@ -34,7 +33,7 @@ If the Delete printer process fails, follow the instructions in the
error dialog. If the instructions are incomplete or unclear, display
the Command-Line Console to help pinpoint where the error may have
occurred. Choose Show Command-Line Console from the Print Manager menu
-to display the Command-Line Console. See the man page for lpadmin(1M)
+to display the Command-Line Console. See the man page for lpadmin(8)
for more information.
<p>
diff --git a/usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/InstallLocal.rawhlp b/usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/InstallLocal.rawhlp
index ff8602be43..6a604e064a 100644
--- a/usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/InstallLocal.rawhlp
+++ b/usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/InstallLocal.rawhlp
@@ -97,7 +97,7 @@ Note that this is the last place the print subsystem looks to
determine where a particular print job will be printed; the
destination option of the lp command is the first place looked, and
other environment variables are checked before this one. See the man
-page for printers.conf(4) for a full explanation of the search order.
+page for printers.conf(5) for a full explanation of the search order.
<p>
@@ -129,7 +129,7 @@ If you want to restrict its use to individual users, enter a user name
in the text field below the list and click Add. Other legal constructs
are system-name!login-ID (user "login-ID" on system "system-name"),
system-name!all (all users on system "system-name"), and all!login-ID
-(user "login-ID" on all systems). Use the lpadmin(1M) command to deny
+(user "login-ID" on all systems). Use the lpadmin(8) command to deny
access to users.
<p>
diff --git a/usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/InstallLocalPPD.rawhlp b/usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/InstallLocalPPD.rawhlp
index c344d43861..d024810d8f 100644
--- a/usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/InstallLocalPPD.rawhlp
+++ b/usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/InstallLocalPPD.rawhlp
@@ -103,7 +103,7 @@ Note that this is the last place the print subsystem looks to
determine where a particular print job will be printed; the
destination option of the lp command is the first place looked, and
other environment variables are checked before this one. See the man
-page for printers.conf(4) for a full explanation of the search order.
+page for printers.conf(5) for a full explanation of the search order.
<p>
@@ -135,7 +135,7 @@ If you want to restrict its use to individual users, enter a user name
in the text field below the list and click Add. Other legal constructs
are system-name!login-ID (user "login-ID" on system "system-name"),
system-name!all (all users on system "system-name"), and all!login-ID
-(user "login-ID" on all systems). Use the lpadmin(1M) command to deny
+(user "login-ID" on all systems). Use the lpadmin(8) command to deny
access to users.
<p>
diff --git a/usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/InstallNetwork.rawhlp b/usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/InstallNetwork.rawhlp
index c6d372193e..a4f5afb56a 100644
--- a/usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/InstallNetwork.rawhlp
+++ b/usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/InstallNetwork.rawhlp
@@ -102,7 +102,7 @@ for the naming service, also.
determine where a particular print job will be printed; the
destination option of the lp command is the first place looked, and
other environment variables are checked before this one. See the man
-page for printers.conf(4) for a full explanation of the search order.
+page for printers.conf(5) for a full explanation of the search order.
<p>
diff --git a/usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/InstallNetworkPPD.rawhlp b/usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/InstallNetworkPPD.rawhlp
index 77c3217898..cb41672c9f 100644
--- a/usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/InstallNetworkPPD.rawhlp
+++ b/usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/InstallNetworkPPD.rawhlp
@@ -111,7 +111,7 @@ for the naming service, also.
determine where a particular print job will be printed; the
destination option of the lp command is the first place looked, and
other environment variables are checked before this one. See the man
-page for printers.conf(4) for a full explanation of the search order.
+page for printers.conf(5) for a full explanation of the search order.
<p>
diff --git a/usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/LDAPAuthentication.rawhlp b/usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/LDAPAuthentication.rawhlp
index 2e6070dc66..2951b9d9c5 100644
--- a/usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/LDAPAuthentication.rawhlp
+++ b/usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/LDAPAuthentication.rawhlp
@@ -45,7 +45,7 @@ different server name if appropriate.
2. Check the Distinguished Name (DN) for correctness. You may enter a
different distinguished name of another user if appropriate. This may be the DN
of any directory user who has permissions (directory update privileges) to
-update printer entries in the LDAP directory for the current ldapclient (1M)
+update printer entries in the LDAP directory for the current ldapclient(8)
naming service (NS) domain.
<p>
@@ -77,14 +77,14 @@ the default distinguished name is "cn=Directory Manager".
If the LDAP server is Sun Directory Server then an example
of the distinguished name is "cn=admin, dc=XYZ, dc=COM".
-The Oracle Solaris Print Manager uses ldapclient(1M) to determine
+The Oracle Solaris Print Manager uses ldapclient(8) to determine
the default LDAP server name. If there is more than one
server specified then the first one will be used.
<p>
The Print Manager always displays printer entries from the current
-ldapclient (1M) server. If this is not the domain Master LDAP server then
+ldapclient(8) server. If this is not the domain Master LDAP server then
the list of printers displayed may <b>not</b> be the current list of printers,
this is because the ldapclient replica server may not have been updated by the
master server and so be out of sync with the master. Replica servers can have
@@ -105,7 +105,7 @@ Users can use the ldap command line utilities (ldapadd (1) & ldapmodify (1))
to update printer entries in the directory, but this is not recommended. If
these utilities are used then the user <b>must ensure</b> that the printer-name
attribute value is unique within the ou=printers container. If it is not unique
-the result of modifies done by the print manager (or lpset (1M)) may not be
+the result of modifies done by the print manager (or lpset(8)) may not be
predictable.
<p>
diff --git a/usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/LoginFailed.rawhlp b/usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/LoginFailed.rawhlp
index 8844f2323b..e0bbdcb5d8 100644
--- a/usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/LoginFailed.rawhlp
+++ b/usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/LoginFailed.rawhlp
@@ -32,7 +32,7 @@ If the NIS naming service is being used, you will need to know the
password for the naming service master. If LDAP is being used then
a fully distinguished name with update privilege and password will
be required. Note that default values may need to be overridden.
-See the man page for lpadmin(1M) and the help articles, "About
+See the man page for lpadmin(8) and the help articles, "About
Naming Services" and "NIS Authentication," for further information.
<p>
diff --git a/usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/Modify.rawhlp b/usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/Modify.rawhlp
index 019f379c43..b09304a420 100644
--- a/usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/Modify.rawhlp
+++ b/usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/Modify.rawhlp
@@ -92,7 +92,7 @@ Note that this is the last place the print subsystem looks to
determine where a particular print job will be printed; the
destination option of the lp command is the first place looked, and
other environment variables are checked before this one. See the man
-page for printers.conf(4) for a full explanation of the search order.
+page for printers.conf(5) for a full explanation of the search order.
<p>
@@ -124,7 +124,7 @@ If you want to restrict its use to individual users, enter a user name
in the text field below the list and click Add. Other legal constructs
are system-name!login-ID (user "login-ID" on system "system-name"),
system-name!all (all users on system "system-name"), and all!login-ID
-(user "login-ID" on all systems). Use the lpadmin(1M) command to deny
+(user "login-ID" on all systems). Use the lpadmin(8) command to deny
access to users.
<p>
diff --git a/usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/ModifyFailed.rawhlp b/usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/ModifyFailed.rawhlp
index 97a59c6a46..477cf95fdd 100644
--- a/usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/ModifyFailed.rawhlp
+++ b/usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/ModifyFailed.rawhlp
@@ -23,7 +23,6 @@
-- Copyright 2001 Sun Microsystems, Inc. All rights reserved.
-- Use is subject to license terms.
--
--- ident "%Z%%M% %I% %E% SMI"
-->
<!-- Tag=ModifyFailed -->
@@ -39,7 +38,7 @@ someone has deleted the printer before this modify operation completed.
Display the Command-Line Console to help pinpoint where the error
may have occurred. Choose Show Command-Line Console from the Print
Manager menu to display the Command-Line Console. See the man page for
-lpadmin(1M) for further information.
+lpadmin(8) for further information.
</CONTENT>
diff --git a/usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/ModifyPPD.rawhlp b/usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/ModifyPPD.rawhlp
index 6399b8ac94..507a9681a9 100644
--- a/usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/ModifyPPD.rawhlp
+++ b/usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/ModifyPPD.rawhlp
@@ -100,7 +100,7 @@ Note that this is the last place the print subsystem looks to
determine where a particular print job will be printed; the
destination option of the lp command is the first place looked, and
other environment variables are checked before this one. See the man
-page for printers.conf(4) for a full explanation of the search order.
+page for printers.conf(5) for a full explanation of the search order.
<p>
@@ -132,7 +132,7 @@ If you want to restrict its use to individual users, enter a user name
in the text field below the list and click Add. Other legal constructs
are system-name!login-ID (user "login-ID" on system "system-name"),
system-name!all (all users on system "system-name"), and all!login-ID
-(user "login-ID" on all systems). Use the lpadmin(1M) command to deny
+(user "login-ID" on all systems). Use the lpadmin(8) command to deny
access to users.
<p>
diff --git a/usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/NISAuthentication.rawhlp b/usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/NISAuthentication.rawhlp
index 6294176d9b..1d28ee3761 100644
--- a/usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/NISAuthentication.rawhlp
+++ b/usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/NISAuthentication.rawhlp
@@ -59,7 +59,7 @@ Manager to update printer information in the NIS name service:
- If your network is set up with NIS master and slave servers,
the NIS slaves may not see the updated printer information
-until the NIS slaves are updated. See ypmake(1M) for more
+until the NIS slaves are updated. See ypmake(8) for more
information.
<p>
diff --git a/usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/NameService.rawhlp b/usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/NameService.rawhlp
index 885356086f..0914d54f79 100644
--- a/usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/NameService.rawhlp
+++ b/usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/NameService.rawhlp
@@ -57,13 +57,13 @@ the file /etc/printers.conf.
<b>NIS</b>: Use the printers.conf.byname map stored in the Network
Information Service for retrieving or updating printer information.
-See the ypserv(1M) man page for more information.
+See the ypserv(8) man page for more information.
<p>
<b>Note: </b>When a site is set up with a NIS master and slaves, if the
host binds to a slave, a user may not see NIS updates made through
-Print Manager until the slave computers are updated. See the ypmake(1M)
+Print Manager until the slave computers are updated. See the ypmake(8)
man page for more information.
<p>
@@ -75,7 +75,7 @@ See the ldap(1) man page for more information.
<p>
To used the LDAP naming service the host computer must be configured as a
-LDAP client, see ldapclient(1M).
+LDAP client, see ldapclient(8).
<p>
@@ -115,7 +115,7 @@ rhosts entry on the NIS server allowing root on the print server root
access on the NIS server. You must have explicit permissions on the
NIS master server to update the maps. This means an entry for your
host name must reside in root's .rhosts file on the NIS master server.
-See the hosts.equiv(4) man page for more information.
+See the hosts.equiv(5) man page for more information.
<p>
diff --git a/usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/PrinterType.rawhlp b/usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/PrinterType.rawhlp
index 5ef9a49fce..6485d36493 100644
--- a/usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/PrinterType.rawhlp
+++ b/usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/PrinterType.rawhlp
@@ -23,7 +23,6 @@
-- Copyright 2001 Sun Microsystems, Inc. All rights reserved.
-- Use is subject to license terms.
--
--- ident "%Z%%M% %I% %E% SMI"
-->
<!-- Tag=PrinterType -->
@@ -40,7 +39,7 @@ understands the printer type. Examples are PostScript, Daisy, and Diablo.
If you have a PostScript printer, for example, select PostScript as
the Printer Type. To install a printer type that is not listed select
Other. The printer type you enter must correspond to an entry in the
-/usr/share/lib/terminfo directories. See the terminfo(4) man page for
+/usr/share/lib/terminfo directories. See the terminfo(5) man page for
more information.
<p>
diff --git a/usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/ToAddAccess.rawhlp b/usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/ToAddAccess.rawhlp
index d1c994ae88..06700297f1 100644
--- a/usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/ToAddAccess.rawhlp
+++ b/usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/ToAddAccess.rawhlp
@@ -29,7 +29,7 @@
<p>
Do the following to make an installed printer accessible to print
-client computers. See the printers.conf(4) man page for more
+client computers. See the printers.conf(5) man page for more
information about print client commands.
<p>
@@ -38,7 +38,7 @@ information about print client commands.
add access to a private printer (one that is not listed in the naming
service) or to make the printer usable even if the naming service
server is down. This adds access for all users in the naming service
-domain; see the man page for domainname(1M) for more information about
+domain; see the man page for domainname(8) for more information about
domains.
<p>
@@ -83,7 +83,7 @@ Print Manager.
Note that this is the last place the print commands will look to
determine the printer for a specific print command; see the
-man page for printers.conf(4) for more information about resolving
+man page for printers.conf(5) for more information about resolving
printer conflicts.
<p>
diff --git a/usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/ToInstallLocal.rawhlp b/usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/ToInstallLocal.rawhlp
index ce6cc22764..3c79d71ac0 100644
--- a/usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/ToInstallLocal.rawhlp
+++ b/usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/ToInstallLocal.rawhlp
@@ -113,7 +113,7 @@ If you want to restrict its use to individual users, enter a user name
in the text field below the list and click Add. Other legal constructs
are system-name!login-ID (user "login-ID" on system "system-name"),
system-name!all (all users on system "system-name"), and all!login-ID
-(user "login-ID" on all systems). Use the lpadmin(1M) command to deny
+(user "login-ID" on all systems). Use the lpadmin(8) command to deny
access to users.
<p>
diff --git a/usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/ToInstallNetwork.rawhlp b/usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/ToInstallNetwork.rawhlp
index 60c41b168d..d2d9747d04 100644
--- a/usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/ToInstallNetwork.rawhlp
+++ b/usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/ToInstallNetwork.rawhlp
@@ -121,7 +121,7 @@ If you want to restrict its use to individual users, enter a user name
in the text field below the list and click Add. Other legal constructs
are system-name!login-ID (user "login-ID" on system "system-name"),
system-name!all (all users on system "system-name"), and all!login-ID
-(user "login-ID" on all systems). Use the lpadmin(1M) command to deny
+(user "login-ID" on all systems). Use the lpadmin(8) command to deny
access to users.
<p>
diff --git a/usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/ToSelectName.rawhlp b/usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/ToSelectName.rawhlp
index 80eebff891..dc3e2a6e22 100644
--- a/usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/ToSelectName.rawhlp
+++ b/usr/src/cmd/print/printmgr/com/sun/admin/pm/client/raw-help/ToSelectName.rawhlp
@@ -63,7 +63,7 @@ naming service's printer configuration database.
<p>
-See the man page for printers.conf(4) for more information.
+See the man page for printers.conf(5) for more information.
</CONTENT>
diff --git a/usr/src/cmd/print/scripts/printers.conf b/usr/src/cmd/print/scripts/printers.conf
index 69327e9915..7d1f2616cd 100644
--- a/usr/src/cmd/print/scripts/printers.conf
+++ b/usr/src/cmd/print/scripts/printers.conf
@@ -22,10 +22,9 @@
# Copyright 1996 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
#
-# ident "%Z%%M% %I% %E% SMI"
#
# If you hand edit this file, comments and structure may change.
# The prefered method of modifying this file is though the use of
-# lpset(1M) or lpadmin(1M)
+# lpset(8) or lpadmin(8)
#
diff --git a/usr/src/cmd/prtdiag/i386/smbios.c b/usr/src/cmd/prtdiag/i386/smbios.c
index a7ba98d562..aa43e3fcb9 100644
--- a/usr/src/cmd/prtdiag/i386/smbios.c
+++ b/usr/src/cmd/prtdiag/i386/smbios.c
@@ -33,7 +33,7 @@
* Most modern x86 systems support a System Management BIOS, which is a memory
* buffer filled in by the BIOS at boot time that describes the hardware. This
* data format is described by DMTF specification DSP0134 (see http://dmtf.org)
- * This file implements a rudimentary prtdiag(1M) display using the SMBIOS.
+ * This file implements a rudimentary prtdiag(8) display using the SMBIOS.
* Access to the data is provided by libsmbios: see <sys/smbios.h> for info.
*
* NOTE: It is important to understand that x86 hardware varies extremely
@@ -44,7 +44,7 @@
* file should not be extended to report every SMBIOS tidbit or structure in
* the spec unless we have good reason to believe it tends to be reliable.
*
- * Similarly, the prtdiag(1M) utility itself should not be used to spit out
+ * Similarly, the prtdiag(8) utility itself should not be used to spit out
* every possible bit of x86 configuration data from every possible source;
* otherwise this code will become an unmaintainable and untestable disaster.
* Extensions to prtdiag should prefer to use more stable kernel mechanisms
@@ -52,7 +52,7 @@
* and should generally limit themselves to commonly needed h/w data. As such,
* extensions to x86 prtdiag should focus on integration with the device tree.
*
- * The prtdiag(1M) utility is for service personnel and system administrators:
+ * The prtdiag(8) utility is for service personnel and system administrators:
* it is not your personal ACPI disassembler or CPUID decoder ring. The
* complete SMBIOS data is available from smbdump(1), and other specialized
* tools can be created to display the state of other x86 features, especially
diff --git a/usr/src/cmd/psrinfo/psrinfo.c b/usr/src/cmd/psrinfo/psrinfo.c
index a6d8a99c60..19c4ef41ba 100644
--- a/usr/src/cmd/psrinfo/psrinfo.c
+++ b/usr/src/cmd/psrinfo/psrinfo.c
@@ -16,7 +16,7 @@
*/
/*
- * This implements psrinfo(1M), a utility to report various information
+ * This implements psrinfo(8), a utility to report various information
* about processors, cores, and threads (virtual cpus). This is mostly
* intended for human consumption - this utility doesn't do much more than
* simply process kstats for human readability.
diff --git a/usr/src/cmd/ptools/pargs/pargs.c b/usr/src/cmd/ptools/pargs/pargs.c
index 6d82af21ba..2f8e069a10 100644
--- a/usr/src/cmd/ptools/pargs/pargs.c
+++ b/usr/src/cmd/ptools/pargs/pargs.c
@@ -140,7 +140,7 @@ safe_strdup(const char *s1)
/*
* Given a wchar_t which might represent an 'escapable' sequence (see
- * formats(5)), return the base ascii character needed to print that
+ * formats(7)), return the base ascii character needed to print that
* sequence.
*
* The comparisons performed may look suspect at first, but all are valid;
@@ -202,7 +202,7 @@ unctrl_str_strict_ascii(const char *src, int escape_slash, int *unprintable)
}
/*
- * Convert control characters as described in format(5) to their readable
+ * Convert control characters as described in formats(7) to their readable
* representation; special care is taken to handle multibyte character sets.
*
* If escape_slash is true, escaping of '\' occurs. The first time a string
diff --git a/usr/src/cmd/ramdiskadm/main.c b/usr/src/cmd/ramdiskadm/main.c
index 429cebf40f..58fc1e0798 100644
--- a/usr/src/cmd/ramdiskadm/main.c
+++ b/usr/src/cmd/ramdiskadm/main.c
@@ -23,14 +23,12 @@
* Copyright 2002-2003 Sun Microsystems, Inc. All rights reserved.
* Use is subject to license terms.
*
- * ramdiskadm - administer ramdisk(7d). Allows creation and deletion of
+ * ramdiskadm - administer ramdisk(4D). Allows creation and deletion of
* ramdisks, and display status. All the ioctls are private between
* ramdisk and ramdiskadm, and so are very simple - device information is
* communicated via a name or a minor number.
*/
-#pragma ident "%Z%%M% %I% %E% SMI"
-
#include <sys/types.h>
#include <sys/param.h>
#include <sys/ramdisk.h>
diff --git a/usr/src/cmd/rcap/rcapd/rcap.xml b/usr/src/cmd/rcap/rcapd/rcap.xml
index 41fae6decf..777f093fcb 100644
--- a/usr/src/cmd/rcap/rcapd/rcap.xml
+++ b/usr/src/cmd/rcap/rcapd/rcap.xml
@@ -23,8 +23,6 @@
CDDL HEADER END
- ident "%Z%%M% %I% %E% SMI"
-
NOTE: This service manifest is not editable; its contents will
be overwritten by package or patch operations, including
operating system upgrade. Make customizations in a different
@@ -106,11 +104,11 @@
</loctext>
</common_name>
<documentation>
- <manpage title='rcapd' section='1M'
+ <manpage title='rcapd' section='8'
manpath='/usr/share/man' />
- <manpage title='rcapstat' section='1M'
+ <manpage title='rcapstat' section='8'
manpath='/usr/share/man' />
- <manpage title='rcapadm' section='1M'
+ <manpage title='rcapadm' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/rcap/rcapd/rcapd_collection.c b/usr/src/cmd/rcap/rcapd/rcapd_collection.c
index fdaf8dbfe0..b6072d37fe 100644
--- a/usr/src/cmd/rcap/rcapd/rcapd_collection.c
+++ b/usr/src/cmd/rcap/rcapd/rcapd_collection.c
@@ -23,8 +23,6 @@
* Use is subject to license terms.
*/
-#pragma ident "%Z%%M% %I% %E% SMI"
-
#include <stdio.h>
#include <stdlib.h>
#include <strings.h>
@@ -34,7 +32,7 @@
/*
* An abstract "collection" of processes. Multiple types of collections can
* exist, one of which is selected at run-time. Currently, the only one
- * defined corresponds to project(4)s.
+ * defined corresponds to project(5)s.
*/
#define MAX(x, y) (((x) > (y)) ? (x) : (y))
diff --git a/usr/src/cmd/rcap/rcapd/rcapd_main.c b/usr/src/cmd/rcap/rcapd/rcapd_main.c
index 4dda9818be..abeea97fc6 100644
--- a/usr/src/cmd/rcap/rcapd/rcapd_main.c
+++ b/usr/src/cmd/rcap/rcapd/rcapd_main.c
@@ -25,12 +25,12 @@
/*
* rcapd is a long-running daemon enforcing project-based resource caps (see
- * rcapd(1M)). Each instance of a process aggregate (project or, generically,
+ * rcapd(8)). Each instance of a process aggregate (project or, generically,
* "collection") may have a memory cap. A single thread monitors the resource
* utilization of capped collections, enforces caps when they are exceeded (and
* other conditions are met), and incorporates changes in configuration or
* caps. Each of these actions occurs not more frequently than the rate
- * specified with rcapadm(1M).
+ * specified with rcapadm(8).
*/
#include <sys/priocntl.h>
diff --git a/usr/src/cmd/rcm_daemon/common/SUNW,vdevices.pl b/usr/src/cmd/rcm_daemon/common/SUNW,vdevices.pl
index 0c5d4d9ca7..3bac48673f 100755
--- a/usr/src/cmd/rcm_daemon/common/SUNW,vdevices.pl
+++ b/usr/src/cmd/rcm_daemon/common/SUNW,vdevices.pl
@@ -24,8 +24,6 @@
# Copyright 2008 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
#
-#pragma ident "%Z%%M% %I% %E% SMI"
-#
#
# RCM script to allow/deny removal of miscellaneous virtual devices
@@ -95,7 +93,7 @@ sub do_queryremove
print "rcm_log_debug=do_queryremove: '$rsrc'\n";
#
- # fuser(1M) sends to stdout the pids of any processes using the
+ # fuser(8) sends to stdout the pids of any processes using the
# device. Some other information always appears on stderr and
# must be discarded to avoid invalidating the test.
#
diff --git a/usr/src/cmd/rcm_daemon/common/dump_rcm.c b/usr/src/cmd/rcm_daemon/common/dump_rcm.c
index 2cbe3b99d3..f2edeab32c 100644
--- a/usr/src/cmd/rcm_daemon/common/dump_rcm.c
+++ b/usr/src/cmd/rcm_daemon/common/dump_rcm.c
@@ -23,8 +23,6 @@
* Use is subject to license terms.
*/
-#pragma ident "%Z%%M% %I% %E% SMI"
-
/*
* RCM module for managing dump device during dynamic
* reconfiguration.
@@ -313,10 +311,10 @@ dump_remove(rcm_handle_t *hdl, char *rsrcname, id_t id, uint_t flags,
}
/*
- * For dedicated dump devices, invoke dumpadm(1M)
+ * For dedicated dump devices, invoke dumpadm(8)
* to relocate dump to swap. For dump device on
* swap, this is a no-op as the RCM swap module
- * will relocate by invoking swap(1M).
+ * will relocate by invoking swap(8).
*
* Call with cache_lock held.
*/
diff --git a/usr/src/cmd/rcm_daemon/common/ip_rcm.c b/usr/src/cmd/rcm_daemon/common/ip_rcm.c
index 3c86f2b868..7f6785e9a7 100644
--- a/usr/src/cmd/rcm_daemon/common/ip_rcm.c
+++ b/usr/src/cmd/rcm_daemon/common/ip_rcm.c
@@ -482,14 +482,14 @@ ip_offline(rcm_handle_t *hd, char *rsrc, id_t id, uint_t flags,
/*
* This is an IPMP interface that can be offlined.
- * Request in.mpathd(1M) to offline the physical interface.
+ * Request in.mpathd(8) to offline the physical interface.
*/
if ((retval = ip_ipmp_offline(node)) != IPMP_SUCCESS)
ip_log_err(node, errorp, "in.mpathd offline failed");
if (retval == IPMP_EMINRED && !detachable) {
/*
- * in.mpathd(1M) could not offline the device because it was
+ * in.mpathd(8) could not offline the device because it was
* the last interface in the group. However, it's possible
* that it's still okay to offline it as long as there are
* higher-level failover mechanisms for the addresses it owns
diff --git a/usr/src/cmd/rcm_daemon/common/swap_rcm.c b/usr/src/cmd/rcm_daemon/common/swap_rcm.c
index 8b7bc0d2a9..a5d3ed15d4 100644
--- a/usr/src/cmd/rcm_daemon/common/swap_rcm.c
+++ b/usr/src/cmd/rcm_daemon/common/swap_rcm.c
@@ -23,8 +23,6 @@
* Use is subject to license terms.
*/
-#pragma ident "%Z%%M% %I% %E% SMI"
-
/*
* RCM module providing support for swap areas
* during reconfiguration operations.
@@ -323,7 +321,7 @@ swap_remove(rcm_handle_t *hdl, char *rsrcname, id_t id, uint_t flags,
/*
* Delete all swap areas for swap file.
- * Invoke swap(1M) instead of swapctl(2) to
+ * Invoke swap(8) instead of swapctl(2) to
* handle relocation of dump device.
* If dump device is configured, fail if
* unable to relocate dump.
@@ -345,7 +343,7 @@ swap_delete(swap_file_t *sf, char **errstr)
have_dump = 0;
for (sa = sf->areas; sa != NULL; sa = sa->next) {
- /* swap(1M) is not idempotent */
+ /* swap(8) is not idempotent */
if (sa->cache_flags & SWAP_CACHE_OFFLINED) {
continue;
}
@@ -399,7 +397,7 @@ out:
}
/*
- * Invoke swap(1M) to add each registered swap area.
+ * Invoke swap(8) to add each registered swap area.
*
* Call with cache_lock held.
*/
@@ -413,7 +411,7 @@ swap_add(swap_file_t *sf, char **errstr)
int rv = RCM_SUCCESS;
for (sa = sf->areas; sa != NULL; sa = sa->next) {
- /* swap(1M) is not idempotent */
+ /* swap(8) is not idempotent */
if (!(sa->cache_flags & SWAP_CACHE_OFFLINED)) {
continue;
}
diff --git a/usr/src/cmd/rctladm/rctladm.c b/usr/src/cmd/rctladm/rctladm.c
index c60cb9471b..c1b0f68315 100644
--- a/usr/src/cmd/rctladm/rctladm.c
+++ b/usr/src/cmd/rctladm/rctladm.c
@@ -161,7 +161,7 @@ rctladm_save_config()
"# rctladm.conf\n"
"#\n"
"# Parameters for resource controls configuration.\n"
- "# Do NOT edit this file by hand -- use rctladm(1m) instead.\n"
+ "# Do NOT edit this file by hand -- use rctladm(8) instead.\n"
"#\n",
fp);
diff --git a/usr/src/cmd/rmvolmgr/rmvolmgr.xml b/usr/src/cmd/rmvolmgr/rmvolmgr.xml
index 29a3e209d7..72d936c360 100644
--- a/usr/src/cmd/rmvolmgr/rmvolmgr.xml
+++ b/usr/src/cmd/rmvolmgr/rmvolmgr.xml
@@ -100,7 +100,7 @@
</loctext>
</common_name>
<documentation>
- <manpage title='rmvolmgr' section='1M' manpath='/usr/man' />
+ <manpage title='rmvolmgr' section='8' manpath='/usr/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/rmvolmgr/vold.c b/usr/src/cmd/rmvolmgr/vold.c
index 30a2f267e8..8bf6985674 100644
--- a/usr/src/cmd/rmvolmgr/vold.c
+++ b/usr/src/cmd/rmvolmgr/vold.c
@@ -158,7 +158,7 @@ vold_init(int argc, char **argv)
}
/*
- * Old version of rmmount(1M)
+ * Old version of rmmount(8)
*/
/* ARGSUSED */
int
@@ -601,7 +601,7 @@ vold_action(struct action_arg *aap)
if (result == TRUE) {
/*
* File Manager is running. return 0.
- * see man page rmmount.conf(4).
+ * see man page rmmount.conf(5).
*/
return (0);
} else {
diff --git a/usr/src/cmd/rpcbind/bind.xml b/usr/src/cmd/rpcbind/bind.xml
index c1f264e5f4..eb26f25d9b 100644
--- a/usr/src/cmd/rpcbind/bind.xml
+++ b/usr/src/cmd/rpcbind/bind.xml
@@ -3,24 +3,24 @@
<!--
CDDL HEADER START
-
+
The contents of this file are subject to the terms of the
Common Development and Distribution License (the "License").
You may not use this file except in compliance with the License.
-
+
You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
or http://www.opensolaris.org/os/licensing.
See the License for the specific language governing permissions
and limitations under the License.
-
+
When distributing Covered Code, include this CDDL HEADER in each
file and include the License file at usr/src/OPENSOLARIS.LICENSE.
If applicable, add the following below this CDDL HEADER, with the
fields enclosed by brackets "[]" replaced with your own identifying
information: Portions Copyright [yyyy] [name of copyright owner]
-
+
CDDL HEADER END
-
+
Copyright 2016 Hans Rosenfeld <rosenfeld@grumpf.hope-2000.org>
Copyright 2015 Nexenta Systems, Inc. All rights reserved.
Copyright 2014 OmniTI Computer Consulting, Inc. All rights reserved.
@@ -42,7 +42,7 @@
type='service'
version='1'>
- <create_default_instance enabled='true' />
+ <create_default_instance enabled='true' />
<single_instance />
@@ -55,7 +55,7 @@
</dependency>
<!--
- rpcbind(1M) depends on multicast routes installed by the
+ rpcbind(8) depends on multicast routes installed by the
routing-setup service, and should be started after any IPsec
policy is configured and TCP ndd tunables are set (both
currently carried out by network/initial).
@@ -113,14 +113,14 @@
</exec_method>
<property_group name='config' type='application' >
- <!-- default property settings for rpcbind(1M). -->
+ <!-- default property settings for rpcbind(8). -->
<!-- enable_tcpwrappers affects the wrapping of rpcbind,
- see rpcbind(1M) and tcpd(1M) for details.
+ see rpcbind(8) and tcpd(8) for details.
The default value is 'false'.
A values of 'true' results in wrapping all UDP/TCP
calls to the portmapper with libwrap. Note that
- rpcbind(1M) will not resolve or lookup names while
+ rpcbind(8) will not resolve or lookup names while
doing tcp wrapper processing.
-->
<propval
@@ -213,7 +213,7 @@
</loctext>
</common_name>
<documentation>
- <manpage title='rpcbind' section='1M'
+ <manpage title='rpcbind' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/rpcsvc/rpc.bootparamd/bootparams.xml b/usr/src/cmd/rpcsvc/rpc.bootparamd/bootparams.xml
index 0fd6257a73..5ce31ed599 100644
--- a/usr/src/cmd/rpcsvc/rpc.bootparamd/bootparams.xml
+++ b/usr/src/cmd/rpcsvc/rpc.bootparamd/bootparams.xml
@@ -122,7 +122,7 @@ diskless clients at boot time.
</loctext>
</description>
<documentation>
- <manpage title='rpc.bootparamd' section='1M'
+ <manpage title='rpc.bootparamd' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/rpcsvc/rstat.xml b/usr/src/cmd/rpcsvc/rstat.xml
index 7d3676eca7..ac9fcb3906 100644
--- a/usr/src/cmd/rpcsvc/rstat.xml
+++ b/usr/src/cmd/rpcsvc/rstat.xml
@@ -82,7 +82,7 @@
<stability value='Evolving' />
<propval name='name' type='astring' value='rstatd' />
<propval name='endpoint_type' type='astring' value='tli' />
- <propval name='proto' type='astring' value='datagram_v'
+ <propval name='proto' type='astring' value='datagram_v'
override='true' />
<propval name='isrpc' type='boolean' value='true' />
<propval name='rpc_low_version' type='integer' value='2' />
@@ -113,9 +113,9 @@
</loctext>
</common_name>
<documentation>
- <manpage title='rpc.rstatd' section='1M'
+ <manpage title='rpc.rstatd' section='8'
manpath='/usr/share/man' />
- <manpage title='rstatd' section='1M'
+ <manpage title='rstatd' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/rpcsvc/rusers.xml b/usr/src/cmd/rpcsvc/rusers.xml
index c033136ac4..4086a5b64d 100644
--- a/usr/src/cmd/rpcsvc/rusers.xml
+++ b/usr/src/cmd/rpcsvc/rusers.xml
@@ -117,9 +117,9 @@
</loctext>
</common_name>
<documentation>
- <manpage title='rpc.rusersd' section='1M'
+ <manpage title='rpc.rusersd' section='8'
manpath='/usr/share/man' />
- <manpage title='rusersd' section='1M'
+ <manpage title='rusersd' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/rpcsvc/spray.xml b/usr/src/cmd/rpcsvc/spray.xml
index 03f886b05e..cc7a47e305 100644
--- a/usr/src/cmd/rpcsvc/spray.xml
+++ b/usr/src/cmd/rpcsvc/spray.xml
@@ -113,9 +113,9 @@
</loctext>
</common_name>
<documentation>
- <manpage title='rpc.sprayd' section='1M'
+ <manpage title='rpc.sprayd' section='8'
manpath='/usr/share/man' />
- <manpage title='sprayd' section='1M'
+ <manpage title='sprayd' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/rpcsvc/wall.xml b/usr/src/cmd/rpcsvc/wall.xml
index acf23ede82..777eac7bc8 100644
--- a/usr/src/cmd/rpcsvc/wall.xml
+++ b/usr/src/cmd/rpcsvc/wall.xml
@@ -113,9 +113,9 @@
</loctext>
</common_name>
<documentation>
- <manpage title='rpc.rwalld' section='1M'
+ <manpage title='rpc.rwalld' section='8'
manpath='/usr/share/man' />
- <manpage title='rwalld' section='1M'
+ <manpage title='rwalld' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/sa/sar.xml b/usr/src/cmd/sa/sar.xml
index f091f2849f..2ec80604f8 100644
--- a/usr/src/cmd/sa/sar.xml
+++ b/usr/src/cmd/sa/sar.xml
@@ -24,8 +24,6 @@
CDDL HEADER END
- ident "%Z%%M% %I% %E% SMI"
-
NOTE: This service manifest is not editable; its contents will
be overwritten by package or patch operations, including
operating system upgrade. Make customizations in a different
@@ -90,7 +88,7 @@
</loctext>
</common_name>
<documentation>
- <manpage title='sar' section='1M' manpath='/usr/share/man' />
+ <manpage title='sar' section='8' manpath='/usr/share/man' />
</documentation>
</template>
</service>
diff --git a/usr/src/cmd/saf/sac.xml b/usr/src/cmd/saf/sac.xml
index 9cd385bb1f..c887e04ee4 100644
--- a/usr/src/cmd/saf/sac.xml
+++ b/usr/src/cmd/saf/sac.xml
@@ -24,8 +24,6 @@
CDDL HEADER END
- ident "%Z%%M% %I% %E% SMI"
-
NOTE: This service manifest is not editable; its contents will
be overwritten by package or patch operations, including
operating system upgrade. Make customizations in a different
@@ -52,7 +50,7 @@
</dependency>
<!--
- sac(1M) has historically started as prior to run level 2. Its
+ sac(8) has historically started as prior to run level 2. Its
components have no dependents of their own.
-->
<dependency
@@ -101,7 +99,7 @@
</loctext>
</common_name>
<documentation>
- <manpage title='sac' section='1M' manpath='/usr/share/man' />
+ <manpage title='sac' section='8' manpath='/usr/share/man' />
</documentation>
</template>
</service>
diff --git a/usr/src/cmd/sasinfo/sasinfo.c b/usr/src/cmd/sasinfo/sasinfo.c
index 5e032543fd..af2c3b6eda 100644
--- a/usr/src/cmd/sasinfo/sasinfo.c
+++ b/usr/src/cmd/sasinfo/sasinfo.c
@@ -204,7 +204,7 @@ main(int argc, char *argv[])
/* call the CLI parser */
ret = cmdParse(argc, argv, synTables, subcommandArgs, &funcRet);
if (ret == 1) {
- (void *) fprintf(stdout, "%s %s(1M)\n",
+ (void *) fprintf(stdout, "%s %s(8)\n",
gettext("For more information, please see"), cmdName);
return (1);
} else if (ret == -1) {
diff --git a/usr/src/cmd/savecore/savecore.c b/usr/src/cmd/savecore/savecore.c
index e0e281f61e..16529d8d9f 100644
--- a/usr/src/cmd/savecore/savecore.c
+++ b/usr/src/cmd/savecore/savecore.c
@@ -1556,7 +1556,7 @@ build_corefile(const char *namelist, const char *corefile)
/*
* When the system panics, the kernel saves all undelivered messages (messages
- * that never made it out to syslogd(1M)) in the dump. At a mimimum, the
+ * that never made it out to syslogd(8)) in the dump. At a mimimum, the
* panic message itself will always fall into this category. Upon reboot,
* the syslog startup script runs savecore -m to recover these messages.
*
@@ -1567,7 +1567,7 @@ build_corefile(const char *namelist, const char *corefile)
*
* Note: since savecore -m is used *only* for this purpose, it does *not*
* attempt to save the crash dump. The dump will be saved later, after
- * syslogd(1M) starts, by the savecore startup script.
+ * syslogd(8) starts, by the savecore startup script.
*/
static int
message_save(void)
@@ -1972,7 +1972,7 @@ main(int argc, char *argv[])
logprint(lvl | ec,
"Panic crashdump pending on dump device%s "
- "run savecore(1M) manually to extract. "
+ "run savecore(8) manually to extract. "
"Image UUID %s%s.",
disabled ? " but dumpadm -n in effect;" : ";",
corehdr.dump_uuid,
diff --git a/usr/src/cmd/sckmd/sckmd.xml b/usr/src/cmd/sckmd/sckmd.xml
index 7745e669df..289ba60958 100644
--- a/usr/src/cmd/sckmd/sckmd.xml
+++ b/usr/src/cmd/sckmd/sckmd.xml
@@ -23,8 +23,6 @@
CDDL HEADER END
- ident "%Z%%M% %I% %E% SMI"
-
NOTE: This service manifest is not editable; its contents will
be overwritten by package or patch operations, including
operating system upgrade. Make customizations in a different
@@ -98,7 +96,7 @@
</loctext>
</common_name>
<documentation>
- <manpage title='sckmd' section='1M'
+ <manpage title='sckmd' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/sendmail/include/sm/conf.h b/usr/src/cmd/sendmail/include/sm/conf.h
index b5cbc00b9c..5575ff6849 100644
--- a/usr/src/cmd/sendmail/include/sm/conf.h
+++ b/usr/src/cmd/sendmail/include/sm/conf.h
@@ -420,7 +420,7 @@ typedef int pid_t;
# endif /* SOLARIS >= 20600 || (SOLARIS < 10000 && SOLARIS >= 206) */
# if SOLARIS < 207 || (SOLARIS > 10000 && SOLARIS < 20700)
# ifndef LA_TYPE
-# define LA_TYPE LA_KSTAT /* use kstat(3k) -- may work in < 2.5 */
+# define LA_TYPE LA_KSTAT /* use kstat(3KSTAT) -- may work in < 2.5 */
# endif /* ! LA_TYPE */
# ifndef RANDOMSHIFT /* random() doesn't work well (sometimes) */
# define RANDOMSHIFT 8
diff --git a/usr/src/cmd/sendmail/lib/sendmail-client.xml b/usr/src/cmd/sendmail/lib/sendmail-client.xml
index 4acebbeee8..3cb60d9c71 100644
--- a/usr/src/cmd/sendmail/lib/sendmail-client.xml
+++ b/usr/src/cmd/sendmail/lib/sendmail-client.xml
@@ -2,24 +2,24 @@
<!DOCTYPE service_bundle SYSTEM "/usr/share/lib/xml/dtd/service_bundle.dtd.1">
<!--
CDDL HEADER START
-
+
The contents of this file are subject to the terms of the
Common Development and Distribution License (the "License").
You may not use this file except in compliance with the License.
-
+
You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
or http://www.opensolaris.org/os/licensing.
See the License for the specific language governing permissions
and limitations under the License.
-
+
When distributing Covered Code, include this CDDL HEADER in each
file and include the License file at usr/src/OPENSOLARIS.LICENSE.
If applicable, add the following below this CDDL HEADER, with the
fields enclosed by brackets "[]" replaced with your own identifying
information: Portions Copyright [yyyy] [name of copyright owner]
-
+
CDDL HEADER END
-
+
Copyright 2009 Sun Microsystems, Inc. All rights reserved.
Use is subject to license terms.
@@ -125,7 +125,7 @@
<propval name='path_to_submit_mc'
type='astring' value='' />
</property_group>
-
+
<template>
<common_name>
<loctext xml:lang='C'>
@@ -133,7 +133,7 @@
</loctext>
</common_name>
<documentation>
- <manpage title='sendmail' section='1M'
+ <manpage title='sendmail' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/sendmail/lib/smtp-sendmail b/usr/src/cmd/sendmail/lib/smtp-sendmail
index be3149ba42..cf372d5e6f 100644
--- a/usr/src/cmd/sendmail/lib/smtp-sendmail
+++ b/usr/src/cmd/sendmail/lib/smtp-sendmail
@@ -82,7 +82,7 @@ case "$1" in
# "s1:c1.1,c1.2 s2:c2.1 s3:c3.1,c3.2,c3.3"
# i.e., white-space separated groups of server:client where
# client can be one or more comma-separated names; N.B. that
- # the :client part is optional; see etrn(1M) for details.
+ # the :client part is optional; see etrn(8) for details.
# server is the name of the server to prod; a mail queue run
# is requested for each client name. This is comparable to
# running "/usr/lib/sendmail -qRclient" on the host server.
diff --git a/usr/src/cmd/sendmail/lib/smtp-sendmail.xml b/usr/src/cmd/sendmail/lib/smtp-sendmail.xml
index 168d98b4c1..137a858c44 100644
--- a/usr/src/cmd/sendmail/lib/smtp-sendmail.xml
+++ b/usr/src/cmd/sendmail/lib/smtp-sendmail.xml
@@ -2,24 +2,24 @@
<!DOCTYPE service_bundle SYSTEM "/usr/share/lib/xml/dtd/service_bundle.dtd.1">
<!--
CDDL HEADER START
-
+
The contents of this file are subject to the terms of the
Common Development and Distribution License (the "License").
You may not use this file except in compliance with the License.
-
+
You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
or http://www.opensolaris.org/os/licensing.
See the License for the specific language governing permissions
and limitations under the License.
-
+
When distributing Covered Code, include this CDDL HEADER in each
file and include the License file at usr/src/OPENSOLARIS.LICENSE.
If applicable, add the following below this CDDL HEADER, with the
fields enclosed by brackets "[]" replaced with your own identifying
information: Portions Copyright [yyyy] [name of copyright owner]
-
+
CDDL HEADER END
-
+
Copyright 2009 Sun Microsystems, Inc. All rights reserved.
Use is subject to license terms.
@@ -183,7 +183,7 @@
<propval name='value_authorization' type='astring'
value='solaris.smf.value.sendmail' />
</property_group>
-
+
<template>
<common_name>
<loctext xml:lang='C'>
@@ -191,7 +191,7 @@
</loctext>
</common_name>
<documentation>
- <manpage title='sendmail' section='1M'
+ <manpage title='sendmail' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/sendmail/src/conf.c b/usr/src/cmd/sendmail/src/conf.c
index 8c8ca6e788..551edfef26 100644
--- a/usr/src/cmd/sendmail/src/conf.c
+++ b/usr/src/cmd/sendmail/src/conf.c
@@ -1385,7 +1385,7 @@ init_vendor_macros(e)
#define LA_DGUX 9 /* special DGUX implementation */
#define LA_HPUX 10 /* special HPUX implementation */
#define LA_IRIX6 11 /* special IRIX 6.2 implementation */
-#define LA_KSTAT 12 /* special Solaris kstat(3k) implementation */
+#define LA_KSTAT 12 /* special Solaris kstat(3KSTAT) implementation */
#define LA_DEVSHORT 13 /* read short from a device */
#define LA_ALPHAOSF 14 /* Digital UNIX (OSF/1 on Alpha) table() call */
#define LA_PSET 15 /* Solaris per-processor-set load average */
@@ -6436,4 +6436,3 @@ char *FFRCompileOptions[] =
#endif /* _FFR_USE_SETLOGIN */
NULL
};
-
diff --git a/usr/src/cmd/setfacl/setfacl.c b/usr/src/cmd/setfacl/setfacl.c
index d069945661..c7c3cdba05 100644
--- a/usr/src/cmd/setfacl/setfacl.c
+++ b/usr/src/cmd/setfacl/setfacl.c
@@ -200,7 +200,7 @@ get_acl_info(char *filep, aclent_t **aclpp)
(void) fprintf(stderr,
gettext("File system doesn't support aclent_t "
"style ACL's.\n"
- "See acl(5) for more information on "
+ "See acl(7) for more information on "
"POSIX-draft ACL support.\n"));
return (-1);
}
diff --git a/usr/src/cmd/sf880drd/sf880drd.xml b/usr/src/cmd/sf880drd/sf880drd.xml
index 08f87bd19c..b6b14d918c 100644
--- a/usr/src/cmd/sf880drd/sf880drd.xml
+++ b/usr/src/cmd/sf880drd/sf880drd.xml
@@ -24,8 +24,6 @@
CDDL HEADER END
- ident "%Z%%M% %I% %E% SMI"
-
NOTE: This service manifest is not editable; its contents will
be overwritten by package or patch operations, including
operating system upgrade. Make customizations in a different
@@ -79,7 +77,7 @@ SunFire-880 dynamic reconfiguration
</loctext>
</common_name>
<documentation>
- <manpage title='sf880drd' section='1M'
+ <manpage title='sf880drd' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/sgs/elfdump/common/corenote.c b/usr/src/cmd/sgs/elfdump/common/corenote.c
index 7b768a0309..d848221648 100644
--- a/usr/src/cmd/sgs/elfdump/common/corenote.c
+++ b/usr/src/cmd/sgs/elfdump/common/corenote.c
@@ -47,7 +47,7 @@
/*
* This module contains the code that displays data from the note
* sections found in Solaris core files. The format of these
- * note sections are described in the core(4) manpage.
+ * note sections are described in the core(5) manpage.
*/
diff --git a/usr/src/cmd/sgs/include/libld.h b/usr/src/cmd/sgs/include/libld.h
index 01734885f0..bf451f8f2a 100644
--- a/usr/src/cmd/sgs/include/libld.h
+++ b/usr/src/cmd/sgs/include/libld.h
@@ -1497,7 +1497,7 @@ typedef enum {
/*
* Structure to manage archive member caching. Each archive has an archive
* descriptor (Ar_desc) associated with it. This contains pointers to the
- * archive symbol table (obtained by elf_getarsyms(3e)) and an auxiliary
+ * archive symbol table (obtained by elf_getarsyms(3ELF)) and an auxiliary
* structure (Ar_uax[]) that parallels this symbol table. The member element
* of this auxiliary table indicates whether the archive member associated with
* the symbol offset has already been extracted (AREXTRACTED) or partially
diff --git a/usr/src/cmd/sgs/include/rtc.h b/usr/src/cmd/sgs/include/rtc.h
index 4418702026..8b967fd587 100644
--- a/usr/src/cmd/sgs/include/rtc.h
+++ b/usr/src/cmd/sgs/include/rtc.h
@@ -26,8 +26,6 @@
#ifndef _RTC_H
#define _RTC_H
-#pragma ident "%Z%%M% %I% %E% SMI"
-
/*
* Global include file for the runtime configuration support.
*/
@@ -148,7 +146,7 @@ typedef struct {
#define RTC_OBJ_NOEXIST 0x0004 /* object does not exist */
#define RTC_OBJ_EXEC 0x0008 /* object identifies executable */
#define RTC_OBJ_ALTER 0x0010 /* object has an alternate */
-#define RTC_OBJ_DUMP 0x0020 /* alternate created by dldump(3x) */
+#define RTC_OBJ_DUMP 0x0020 /* alternate created by dldump(3C) */
#define RTC_OBJ_REALPTH 0x0040 /* object identifies real path */
#define RTC_OBJ_NOALTER 0x0080 /* object can't have an alternate */
#define RTC_OBJ_GROUP 0x0100 /* object was expanded as a group */
diff --git a/usr/src/cmd/sgs/include/rtld.h b/usr/src/cmd/sgs/include/rtld.h
index 0378b7390e..cab7896559 100644
--- a/usr/src/cmd/sgs/include/rtld.h
+++ b/usr/src/cmd/sgs/include/rtld.h
@@ -823,7 +823,7 @@ typedef struct rt_map32 {
#define FLG_RT_CAP 0x00000010 /* process $CAPABILITY expansion */
#define FLG_RT_OBJECT 0x00000020 /* object processing (ie. .o's) */
#define FLG_RT_NEWLOAD 0x00000040 /* object is newly loaded */
-#define FLG_RT_NODUMP 0x00000080 /* object can't be dldump(3x)'ed */
+#define FLG_RT_NODUMP 0x00000080 /* object can't be dldump(3C)'ed */
#define FLG_RT_DELETE 0x00000100 /* object can be deleted */
#define FLG_RT_ANALYZED 0x00000200 /* object has been analyzed */
#define FLG_RT_INITDONE 0x00000400 /* objects .init has been completed */
diff --git a/usr/src/cmd/sgs/libconv/common/corenote.c b/usr/src/cmd/sgs/libconv/common/corenote.c
index 76e6c78c49..0b8510a95a 100644
--- a/usr/src/cmd/sgs/libconv/common/corenote.c
+++ b/usr/src/cmd/sgs/libconv/common/corenote.c
@@ -519,7 +519,7 @@ conv_cnote_pr_what(short why, short what, Conv_fmt_flags_t fmt_flags,
{
/*
* The meaning of pr_what depends on the corresponding
- * value of pr_why, as discussed in the proc(4) manpage.
+ * value of pr_why, as discussed in the proc(5) manpage.
*/
switch (why) {
case PR_SIGNALLED:
diff --git a/usr/src/cmd/sgs/libcrle/common/audit.c b/usr/src/cmd/sgs/libcrle/common/audit.c
index d5e94d7679..75ab6472b5 100644
--- a/usr/src/cmd/sgs/libcrle/common/audit.c
+++ b/usr/src/cmd/sgs/libcrle/common/audit.c
@@ -56,7 +56,7 @@
* process (used for CRLE_AUD_DEPENDS and CRLE_AUD_DUMP).
*
* CRLE_FLAGS this signals CRLE_AUD_DLDUMP mode, and indicates the required
- * flags for the dldump(3x) calls.
+ * flags for the dldump(3C) calls.
*/
static int auflag;
diff --git a/usr/src/cmd/sgs/prof/common/symintErr.c b/usr/src/cmd/sgs/prof/common/symintErr.c
index a2450543c4..a209b50d38 100644
--- a/usr/src/cmd/sgs/prof/common/symintErr.c
+++ b/usr/src/cmd/sgs/prof/common/symintErr.c
@@ -26,9 +26,6 @@
/* Copyright (c) 1988 AT&T */
/* All Rights Reserved */
-
-#pragma ident "%Z%%M% %I% %E% SMI"
-
#include "symint.h"
#include <stdio.h>
@@ -48,8 +45,8 @@
/*
* _err_exit(format_s, va_alist)
- * format_s - printf(3S) arg string.
- * va_alist - var_args(3?) printf() arguments.
+ * format_s - printf(3C) arg string.
+ * va_alist - varargs(3EXT) printf() arguments.
*
* does not return - prints message and calls exit(3).
*
diff --git a/usr/src/cmd/sgs/tsort/common/zfopen.c b/usr/src/cmd/sgs/tsort/common/zfopen.c
index b574c0750a..6e80503d60 100644
--- a/usr/src/cmd/sgs/tsort/common/zfopen.c
+++ b/usr/src/cmd/sgs/tsort/common/zfopen.c
@@ -28,11 +28,8 @@
/* Copyright (c) 1988 AT&T */
/* All Rights Reserved */
-
-#pragma ident "%Z%%M% %I% %E% SMI"
-
/*
- * fopen(3S) with error checking
+ * fopen(3C) with error checking
*/
#include "errmsg.h"
diff --git a/usr/src/cmd/smbsrv/smbadm/smbadm.c b/usr/src/cmd/smbsrv/smbadm/smbadm.c
index 4d06c00b36..e41667200c 100644
--- a/usr/src/cmd/smbsrv/smbadm/smbadm.c
+++ b/usr/src/cmd/smbsrv/smbadm/smbadm.c
@@ -123,7 +123,7 @@ static int smbadm_user_delete(int, char **);
static int smbadm_user_disable(int, char **);
static int smbadm_user_enable(int, char **);
-/* Please keep the order consistent with smbadm(1M) man page */
+/* Please keep the order consistent with smbadm(8) man page */
static smbadm_cmdinfo_t smbadm_cmdtable[] =
{
{ "create", smbadm_group_create, HELP_CREATE,
diff --git a/usr/src/cmd/smbsrv/smbd/server.xml b/usr/src/cmd/smbsrv/smbd/server.xml
index 7dad5cc0b9..44e3666067 100644
--- a/usr/src/cmd/smbsrv/smbd/server.xml
+++ b/usr/src/cmd/smbsrv/smbd/server.xml
@@ -280,7 +280,7 @@ file.
<loctext xml:lang='C'> smbd daemon</loctext>
</common_name>
<documentation>
- <manpage title='smbd' section='1M'
+ <manpage title='smbd' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/smserverd/smediad.c b/usr/src/cmd/smserverd/smediad.c
index dcd3dd7028..d4e6378cc8 100644
--- a/usr/src/cmd/smserverd/smediad.c
+++ b/usr/src/cmd/smserverd/smediad.c
@@ -121,7 +121,7 @@
* The sole function of this descriptor HAD been to inform the server of
* the untimely death of the client. This descriptor is no longer used, though
* it is still created, as libsmedia expects to use it. This descriptor's
- * service procedure had used pthread cancellation(5) to terminate the thread of
+ * service procedure had used pthread cancellation(7) to terminate the thread of
* the associated client_door_descriptor. The client_door_descriptor now
* handles the scenarios where a door_call/client are aborted/terminated.
*
@@ -1374,8 +1374,8 @@ sm_server_thread(void *arg)
door_dp->dd_cdoor_descriptor);
/*
- * Set these two cancellation(5) attributes. Ensure that the
- * pthread we create has cancellation(5) DISABLED and DEFERRED,
+ * Set these two cancellation(7) attributes. Ensure that the
+ * pthread we create has cancellation(7) DISABLED and DEFERRED,
* as our implementation is based on this. DEFERRED is the
* default, but set it anyways, in case the defaults change in
* the future.
diff --git a/usr/src/cmd/smserverd/smserver.xml b/usr/src/cmd/smserverd/smserver.xml
index 7496d6e9c7..cdb30366bd 100644
--- a/usr/src/cmd/smserverd/smserver.xml
+++ b/usr/src/cmd/smserverd/smserver.xml
@@ -103,7 +103,7 @@
</loctext>
</common_name>
<documentation>
- <manpage title='rpc.smserverd' section='1M'
+ <manpage title='rpc.smserverd' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/srptsvc/target.xml b/usr/src/cmd/srptsvc/target.xml
index c21b4fe471..37ee523322 100644
--- a/usr/src/cmd/srptsvc/target.xml
+++ b/usr/src/cmd/srptsvc/target.xml
@@ -64,7 +64,7 @@ Service manifests for SRP Target Port Provider
/>
</method_context>
</exec_method>
-
+
<exec_method
type='method'
name='stop'
@@ -93,7 +93,7 @@ Service manifests for SRP Target Port Provider
</loctext>
</common_name>
<documentation>
- <manpage title='srpt' section='7D'
+ <manpage title='srpt' section='4D'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/stmfsvc/stmf.xml b/usr/src/cmd/stmfsvc/stmf.xml
index b3119da1a0..d55405544a 100644
--- a/usr/src/cmd/stmfsvc/stmf.xml
+++ b/usr/src/cmd/stmfsvc/stmf.xml
@@ -26,7 +26,7 @@ Copyright 2008 Sun Microsystems, Inc. All rights reserved.
Use is subject to license terms.
-Service manifests for SCSI Target Mode Framework
+Service manifests for SCSI Target Mode Framework
-->
<!--
@@ -65,7 +65,7 @@ Service manifests for SCSI Target Mode Framework
/>
</method_context>
</exec_method>
-
+
<exec_method
type='method'
name='stop'
@@ -103,13 +103,13 @@ Service manifests for SCSI Target Mode Framework
<template>
<common_name>
<loctext xml:lang='C'>
- STMF
+ STMF
</loctext>
</common_name>
<documentation>
- <manpage title='stmf' section='7D'
+ <manpage title='stmf' section='4D'
manpath='/usr/share/man' />
- <manpage title='stmfadm' section='1M'
+ <manpage title='stmfadm' section='8'
manpath='/usr/share /man' />
</documentation>
</template>
diff --git a/usr/src/cmd/stmfsvc/stmfsvc.c b/usr/src/cmd/stmfsvc/stmfsvc.c
index 9f83338edb..c5f86276b4 100644
--- a/usr/src/cmd/stmfsvc/stmfsvc.c
+++ b/usr/src/cmd/stmfsvc/stmfsvc.c
@@ -172,11 +172,11 @@ svcStart(int operandLen, char *operands[], cmdOptions_t *options,
gettext("For information on reverting the "
"stmf:default instance to a previously "
"running configuration see the man page "
- "for svccfg(1M)"));
+ "for svccfg(8)"));
(void) fprintf(stderr, "%s: %s\n", cmdName,
gettext("After reverting the instance "
"you must clear the service maintenance "
- "state. See the man page for svcadm(1M)"));
+ "state. See the man page for svcadm(8)"));
break;
}
return (1);
diff --git a/usr/src/cmd/stmsboot/mpxio-upgrade.xml b/usr/src/cmd/stmsboot/mpxio-upgrade.xml
index d3c8fac461..c7e9e9a37b 100644
--- a/usr/src/cmd/stmsboot/mpxio-upgrade.xml
+++ b/usr/src/cmd/stmsboot/mpxio-upgrade.xml
@@ -28,7 +28,7 @@
operating system upgrade. Make customizations in a different
file.
- Service manifest for mpxio upgrade, enabled by stmsboot(1M).
+ Service manifest for mpxio upgrade, enabled by stmsboot(8).
-->
<service_bundle type='manifest' name='SUNWcsr:mpxio-upgrade'>
@@ -86,7 +86,7 @@
<documentation>
<manpage
title='stmsboot'
- section='1M'
+ section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/svc/common/i.manifest b/usr/src/cmd/svc/common/i.manifest
index 18d2c2622d..62e73ee50f 100644
--- a/usr/src/cmd/svc/common/i.manifest
+++ b/usr/src/cmd/svc/common/i.manifest
@@ -23,7 +23,7 @@
# Copyright 2009 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
#
-# i.manifest - smf(5) service manifest install class action script
+# i.manifest - smf(7) service manifest install class action script
#
repfile=$PKG_INSTALL_ROOT/etc/svc/repository.db
@@ -75,7 +75,7 @@ svc_deathrow()
#
# If the repository does not yet exist, create it from the appropriate seed. If
-# for some reason the seeds do not exist, svccfg(1M) will create the repository
+# for some reason the seeds do not exist, svccfg(8) will create the repository
# automatically.
#
if [ ! -f $repfile ]; then
@@ -93,8 +93,8 @@ fi
if [ ! -r $PKG_INSTALL_ROOT/etc/svc/volatile/repository_door ]; then
#
- # smf(5) is not presently running for the destination environment.
- # Since we presently cannot refresh without a running svc.startd(1M), we
+ # smf(7) is not presently running for the destination environment.
+ # Since we presently cannot refresh without a running svc.startd(8), we
# cannot consistently handle dependent placement. Defer to next boot.
#
while read src dst; do
diff --git a/usr/src/cmd/svc/common/r.manifest b/usr/src/cmd/svc/common/r.manifest
index 98c6e48f19..e47494f67a 100644
--- a/usr/src/cmd/svc/common/r.manifest
+++ b/usr/src/cmd/svc/common/r.manifest
@@ -24,7 +24,7 @@
# Use is subject to license terms.
#
#
-# r.manifest - smf(5) manifest remove class action script
+# r.manifest - smf(7) manifest remove class action script
#
MFSTSCAN=/lib/svc/bin/mfstscan
diff --git a/usr/src/cmd/svc/configd/backend.c b/usr/src/cmd/svc/configd/backend.c
index 4c3a7d0816..40726dd1d0 100644
--- a/usr/src/cmd/svc/configd/backend.c
+++ b/usr/src/cmd/svc/configd/backend.c
@@ -28,7 +28,7 @@
/*
* sqlite is not compatible with _FILE_OFFSET_BITS=64, but we need to
* be able to statvfs(2) possibly large systems. This define gives us
- * access to the transitional interfaces. See lfcompile64(5) for how
+ * access to the transitional interfaces. See lfcompile64(7) for how
* _LARGEFILE64_SOURCE works.
*/
#define _LARGEFILE64_SOURCE
@@ -1979,7 +1979,7 @@ integrity_fail:
} else {
(void) fprintf(stderr,
"\n"
-"svc.configd: smf(5) database integrity check of:\n"
+"svc.configd: smf(7) database integrity check of:\n"
"\n"
" %s\n"
"\n"
@@ -1988,7 +1988,7 @@ integrity_fail:
" your service provider%s%s\n"
"\n"
" The system will not be able to boot until you have restored a working\n"
-" database. svc.startd(1M) will provide a sulogin(1M) prompt for recovery\n"
+" database. svc.startd(8) will provide a sulogin(8) prompt for recovery\n"
" purposes. The command:\n"
"\n"
" /lib/svc/bin/restore_repository\n"
diff --git a/usr/src/cmd/svc/configd/restore_repository.sh b/usr/src/cmd/svc/configd/restore_repository.sh
index fa3b5e2e4f..4d7bd233a6 100644
--- a/usr/src/cmd/svc/configd/restore_repository.sh
+++ b/usr/src/cmd/svc/configd/restore_repository.sh
@@ -87,7 +87,7 @@ fi
echo >&2 "
See http://illumos.org/msg/SMF-8000-MY for more information on the use of
-this script to restore backup copies of the smf(5) repository.
+this script to restore backup copies of the smf(7) repository.
If there are any problems which need human intervention, this script will
give instructions and then exit back to your shell."
@@ -97,7 +97,7 @@ if [ "$myroot" = "/" ]; then
[ "`/sbin/zonename`" != global ] && system="zone"
echo >&2 "
Note that upon full completion of this script, the $system will be rebooted
-using reboot(1M), which will interrupt any active services.
+using reboot(8), which will interrupt any active services.
"
fi
@@ -242,7 +242,7 @@ new="$repo"_old_"`date +%Y''%m''%d'_'%H''%M''%S`"
steps=
if [ "$myroot" = / ]; then
steps="$steps
-svc.startd(1M) and svc.configd(1M) will be quiesced, if running."
+svc.startd(8) and svc.configd(8) will be quiesced, if running."
fi
if [ -r $repo ]; then
@@ -265,7 +265,7 @@ $file
EOF
if [ "$myroot" = / ]; then
- echo "and the system will be rebooted with reboot(1M)."
+ echo "and the system will be rebooted with reboot(8)."
fi
echo
@@ -291,11 +291,11 @@ if [ "$myroot" = / ]; then
startd="`pgrep -z "$zone" -f svc.startd`"
echo
- echo "Quiescing svc.startd(1M) and svc.configd(1M): \c"
+ echo "Quiescing svc.startd(8) and svc.configd(8): \c"
if [ -n "$startd" ]; then
pstop $startd
startd_msg=\
-"To start svc.start(1M) running, do: /usr/bin/prun $startd"
+"To start svc.start(8) running, do: /usr/bin/prun $startd"
fi
pkill -z "$zone" -f svc.configd
diff --git a/usr/src/cmd/svc/dtd/service_bundle.dtd.1 b/usr/src/cmd/svc/dtd/service_bundle.dtd.1
index b92b70c6c4..032b77aabe 100644
--- a/usr/src/cmd/svc/dtd/service_bundle.dtd.1
+++ b/usr/src/cmd/svc/dtd/service_bundle.dtd.1
@@ -34,7 +34,7 @@
XInclude support
A series of service bundles may be composed via the xi:include tag.
- smf(5) tools enforce that all bundles be of the same type.
+ smf(7) tools enforce that all bundles be of the same type.
-->
<!--
@@ -67,7 +67,7 @@
stability
This element associates an SMI stability level with the parent
- element. See attributes(5) for an explanation of interface
+ element. See attributes(7) for an explanation of interface
stability levels.
Its attribute is
@@ -529,7 +529,7 @@
resource_pool The resource pool name to launch the method on.
":default" can be used as a token to indicate use of the
- pool specified in the project(4) entry given in the
+ pool specified in the project(5) entry given in the
"project" attribute above.
-->
<!ELEMENT method_context
@@ -562,7 +562,7 @@
instance of this service is delegated.
exec The string identifying the action to take. For
- svc.startd(1M), this is a string suitable to pass to
+ svc.startd(8), this is a string suitable to pass to
exec(2).
timeout_seconds [integer] Duration, in seconds, to wait for this
@@ -668,7 +668,7 @@
Its sole attribute is
xml:lang The name of the locale, in the form accepted by LC_ALL,
- etc. See locale(5).
+ etc. See locale(7).
-->
<!ELEMENT loctext
(#PCDATA) >
@@ -1017,7 +1017,7 @@
element, a set of dependencies on other services, potentially
customized methods or configuration data, an optional method
context, and a pointer to its restarter. (If no restarter is
- specified, the master restarter, svc.startd(1M), is assumed to be
+ specified, the master restarter, svc.startd(8), is assumed to be
responsible for the service.)
Its attributes are
diff --git a/usr/src/cmd/svc/lsvcrun/lsvcrun.c b/usr/src/cmd/svc/lsvcrun/lsvcrun.c
index 74eeaefe5a..7599766a01 100644
--- a/usr/src/cmd/svc/lsvcrun/lsvcrun.c
+++ b/usr/src/cmd/svc/lsvcrun/lsvcrun.c
@@ -31,7 +31,7 @@
* group identifies a service, named in the form 'rc2_d_S10foo'.
*
* Each group has the following properties: name, the script name
- * displayed by svcs(1m); state_timestamp; contract, contract ID;
+ * displayed by svcs(1); state_timestamp; contract, contract ID;
* inode, the inode of the script; and suffix, the suffix of the
* script name, e.g. 'foo'.
*
@@ -818,7 +818,7 @@ main(int argc, char *argv[], char *envp[])
/* Make sure we were run by svc.startd. */
if ((restarter = getenv("SMF_RESTARTER")) == NULL ||
strcmp(restarter, SCF_SERVICE_STARTD) != 0)
- uu_die(gettext("invocation outside smf(5) inappropriate\n"));
+ uu_die(gettext("invocation outside smf(7) inappropriate\n"));
while ((o = getopt(argc, argv, "s")) != -1) {
switch (o) {
diff --git a/usr/src/cmd/svc/milestone/README.share b/usr/src/cmd/svc/milestone/README.share
index e69a82cedc..fe16191b42 100644
--- a/usr/src/cmd/svc/milestone/README.share
+++ b/usr/src/cmd/svc/milestone/README.share
@@ -24,21 +24,21 @@ Use is subject to license terms.
/lib/svc/share/README
-smf(5): Notes on maintenance mode and recovery
+smf(7): Notes on maintenance mode and recovery
Failures that bring the system to maintenance mode may include hardware
or critical software failures. The procedures below are given so that
some software repairs can be made; the recommended exit approach once a
repair has been made is to reboot the system. The system can be brought
-to maintenance mode deliberately via the '-s' option to boot(1M), or via
-the 's' option to init(1M).
+to maintenance mode deliberately via the '-s' option to boot(8), or via
+the 's' option to init(8).
-In failure scenarios, smf(5) may or may not be running, depending on
-which component has failed. If smf(5) is running, and the /usr
-filesystem is reachable, then the usual svcadm(1M) invocations to clear
+In failure scenarios, smf(7) may or may not be running, depending on
+which component has failed. If smf(7) is running, and the /usr
+filesystem is reachable, then the usual svcadm(8) invocations to clear
maintenance state and restart services instances can be used.
Otherwise, the following instructions describe the direct execution of
-service methods, so that capabilities that svc.startd(1M) would normally
+service methods, so that capabilities that svc.startd(8) would normally
start automatically can be started manually. In the case that the
document recommends an invocation like
@@ -85,13 +85,13 @@ to directly execute the corresponding service methods
# /lib/svc/method/fs-minimal
to mount the various filesystems. In the case that these methods fail,
-a direct invocation of mount(1M), and potentially fsck(1M), should be
+a direct invocation of mount(8), and potentially fsck(8), should be
attempted for file systems required for recovery purposes.
/lib/svc/method/fs-usr attempts to remount the root file system
read-write, such that persistent changes can be made to the system's
configuration. If this method is failing, one can directly remount
-using the mount(1M) command via
+using the mount(8) command via
# /sbin/mount -o rw,remount /
@@ -99,44 +99,44 @@ using the mount(1M) command via
private use. It may prove a useful location to create mount points if
the root file system cannot be remounted read-write.
-3. Failure to run svc.configd(1M).
+3. Failure to run svc.configd(8).
-svc.configd(1M) will give detailed instructions for recovery if the
-corruption is detected in the repository. If svc.configd(1M) cannot be
+svc.configd(8) will give detailed instructions for recovery if the
+corruption is detected in the repository. If svc.configd(8) cannot be
run because of missing or corrupt library components, then the affected
components will need to be replaced. Components could be copied from a
CD-ROM or DVD-ROM, or from another system.
-4. Failure to run svc.startd(1M).
+4. Failure to run svc.startd(8).
-If the inittab(4) line to invoke svc.startd(1M) is missing or incorrect,
+If the inittab(5) line to invoke svc.startd(8) is missing or incorrect,
it will need to be restored. A valid entry is
smf::sysinit:/lib/svc/bin/svc.startd >/dev/msglog 2<>/dev/msglog </dev/console
-If svc.startd(1M) cannot be run because of missing or corrupt library
+If svc.startd(8) cannot be run because of missing or corrupt library
components, then the affected components will need to be replaced, as
-for svc.configd(1M) above.
+for svc.configd(8) above.
5. Activating basic networking configuration.
-If svc.startd(1M) did not execute successfully, it may also be necessary
+If svc.startd(8) did not execute successfully, it may also be necessary
to activate network interfaces manually, such that other hosts can be
contacted. The service methods can be invoked directly as
# /lib/svc/method/net-loopback
# /lib/svc/method/net-physical
-If these methods fail, a direct invocation of ifconfig(1M) can be
+If these methods fail, a direct invocation of ifconfig(8) can be
attempted.
-In some scenarios, one may be able to use routeadm(1M) to activate more
+In some scenarios, one may be able to use routeadm(8) to activate more
dynamic route management functionality; restoring the default dynamic
routing behaviour can be done using the '-u' option. (Invoking routeadm
with no arguments will display which commands must be accessible for the
current routing configuration to be invoked.) Otherwise, once
interfaces are up, a default route can be manually added using the
-route(1M) command. On typical IPv4 networks, this invocation would be
+route(8) command. On typical IPv4 networks, this invocation would be
# /sbin/route add net default _gateway_IP_
diff --git a/usr/src/cmd/svc/milestone/console-login b/usr/src/cmd/svc/milestone/console-login
index 8ddaaf29ac..8cc6495b2d 100644
--- a/usr/src/cmd/svc/milestone/console-login
+++ b/usr/src/cmd/svc/milestone/console-login
@@ -29,7 +29,7 @@
# console login.
#
# For modifying parameters passed to ttymon, do not edit
-# this script. Instead use svccfg(1m) to modify the SMF
+# this script. Instead use svccfg(8) to modify the SMF
# repository. For example:
#
# # svccfg
diff --git a/usr/src/cmd/svc/milestone/early-manifest-import.xml b/usr/src/cmd/svc/milestone/early-manifest-import.xml
index 270ffc8029..f10437c793 100644
--- a/usr/src/cmd/svc/milestone/early-manifest-import.xml
+++ b/usr/src/cmd/svc/milestone/early-manifest-import.xml
@@ -64,7 +64,7 @@
<!--
Make service transient, so that startd doesn't try to restart
- the service when there are no processes associated with it.
+ the service when there are no processes associated with it.
-->
<property_group name='startd' type='framework'>
<propval name='duration' type='astring'
@@ -87,13 +87,13 @@ early manifest import
</loctext>
</description>
<documentation>
- <manpage title='svc.startd' section='1M'
+ <manpage title='svc.startd' section='8'
manpath='/usr/share/man' />
- <manpage title='smf_method' section='5'
+ <manpage title='smf_method' section='7'
manpath='/usr/share/man' />
- <manpage title='smf' section='5'
+ <manpage title='smf' section='7'
manpath='/usr/share/man' />
- <manpage title='smf_bootstrap' section='5'
+ <manpage title='smf_bootstrap' section='7'
manpath='/usr/share/man' />
</documentation>
diff --git a/usr/src/cmd/svc/milestone/global.xml b/usr/src/cmd/svc/milestone/global.xml
index 4ebc6ddaf0..10597f8211 100644
--- a/usr/src/cmd/svc/milestone/global.xml
+++ b/usr/src/cmd/svc/milestone/global.xml
@@ -68,9 +68,9 @@ system-wide configuration definitions
</loctext>
</common_name>
<documentation>
- <manpage title='smf' section='5'
+ <manpage title='smf' section='7'
manpath='/usr/share/man' />
- <manpage title='smf_template' section='5'
+ <manpage title='smf_template' section='7'
manpath='/usr/share/man' />
</documentation>
@@ -540,7 +540,7 @@ The project ID in numeric or text form. ":default" can be used as a token to in
<description>
<loctext xml:lang='C'>
The resource pool name in which to launch the method. ":default" can be used
-as a token to indicate the pool specified in the project(4) entry given in
+as a token to indicate the pool specified in the project(5) entry given in
the project attribute.
</loctext>
</description>
@@ -550,7 +550,7 @@ the project attribute.
required='false'>
<description>
<loctext xml:lang='C'>
-An optional string specifying the security flags as defined in security-flags(5).
+An optional string specifying the security flags as defined in security-flags(7).
</loctext>
</description>
<cardinality min='1' max='1'/>
@@ -589,7 +589,7 @@ in numeric or text form.
required='false'>
<description>
<loctext xml:lang='C'>
-An optional string specifying the privilege set as defined in privileges(5).
+An optional string specifying the privilege set as defined in privileges(7).
</loctext>
</description>
<cardinality min='1' max='1'/>
@@ -599,7 +599,7 @@ An optional string specifying the privilege set as defined in privileges(5).
<description>
<loctext xml:lang='C'>
An optional string specifying the limit privilege set as defined in
-privileges(5).
+privileges(7).
</loctext>
</description>
<cardinality min='1' max='1'/>
@@ -621,7 +621,7 @@ user, group, privileges, and limit_privileges properties.
<description>
<loctext xml:lang='C'>
The name of an RBAC (role-based access control) profile which, along with the
-method executable, identifies an entry in exec_attr(4).
+method executable, identifies an entry in exec_attr(5).
</loctext>
</description>
<cardinality min='1' max='1'/>
@@ -649,7 +649,7 @@ Service name
</common_name>
<description>
<loctext xml:lang='C'>
-IANA name or RPC name for non-inetd service, equivalent to inetd/name property. For RPC services, the value of this property is not an IANA name but is either an RPC program number or name, see rpc(4).
+IANA name or RPC name for non-inetd service, equivalent to inetd/name property. For RPC services, the value of this property is not an IANA name but is either an RPC program number or name, see rpc(5).
</loctext>
</description>
</prop_pattern>
diff --git a/usr/src/cmd/svc/milestone/identity.xml b/usr/src/cmd/svc/milestone/identity.xml
index 3fdcf56496..140cb562d6 100644
--- a/usr/src/cmd/svc/milestone/identity.xml
+++ b/usr/src/cmd/svc/milestone/identity.xml
@@ -24,8 +24,6 @@
CDDL HEADER END
- ident "%Z%%M% %I% %E% SMI"
-
NOTE: This service manifest is not editable; its contents will
be overwritten by package or patch operations, including
operating system upgrade. Make customizations in a different
@@ -80,7 +78,7 @@
</loctext>
</common_name>
<documentation>
- <manpage title='nodename' section='4'
+ <manpage title='nodename' section='5'
manpath='/usr/share/man' />
</documentation>
</template>
@@ -110,9 +108,9 @@
</loctext>
</common_name>
<documentation>
- <manpage title='domainname' section='1M'
+ <manpage title='domainname' section='8'
manpath='/usr/share/man' />
- <manpage title='defaultdomain' section='4'
+ <manpage title='defaultdomain' section='5'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/svc/milestone/make-console-login-xml b/usr/src/cmd/svc/milestone/make-console-login-xml
index 2b78164e78..bcb13c1c7c 100644
--- a/usr/src/cmd/svc/milestone/make-console-login-xml
+++ b/usr/src/cmd/svc/milestone/make-console-login-xml
@@ -124,7 +124,7 @@ cat >console-login.xml <<EOF
<!-- these are passed to ttymon in the method script.
note that value_authorization is not passed to ttymon
- and it's for smf_security(5).
+ and it's for smf_security(7).
-->
<property_group name='ttymon' type='application'>
<propval name='value_authorization' type='astring'
@@ -239,7 +239,7 @@ Console login
</loctext>
</common_name>
<documentation>
- <manpage title='ttymon' section='1M'
+ <manpage title='ttymon' section='8'
manpath='/usr/share/man' />
</documentation>
diff --git a/usr/src/cmd/svc/milestone/manifest-import b/usr/src/cmd/svc/milestone/manifest-import
index 43fb677b92..b67361183f 100644
--- a/usr/src/cmd/svc/milestone/manifest-import
+++ b/usr/src/cmd/svc/milestone/manifest-import
@@ -243,13 +243,13 @@ function import_manifests {
$X /usr/sbin/svccfg import $dirs > $logf 2>&1
fi
- grep "Loaded .*. smf(5) service descriptions" $logf > /dev/null 2>&1
+ grep "Loaded .*. smf(7) service descriptions" $logf > /dev/null 2>&1
if [ $? -eq 0 ]; then
activity=true
fi
if [ -s $logf ]; then
- grep "smf(5) service descriptions failed to load" $logf > /dev/null 2>&1
+ grep "smf(7) service descriptions failed to load" $logf > /dev/null 2>&1
failures=$?
if [ $failures -eq 0 ]; then
echo "svccfg warnings:"
@@ -322,7 +322,7 @@ function apply_profile {
#
# 4. Upgrade handling. The upgrade file generally consists of a series
-# of svcadm(1M) and svccfg(1M) commands.
+# of svcadm(8) and svccfg(8) commands.
#
function handle_upgrade {
diff --git a/usr/src/cmd/svc/milestone/manifest-import.xml b/usr/src/cmd/svc/milestone/manifest-import.xml
index 2ef9021401..18723d957d 100644
--- a/usr/src/cmd/svc/milestone/manifest-import.xml
+++ b/usr/src/cmd/svc/milestone/manifest-import.xml
@@ -24,8 +24,6 @@
CDDL HEADER END
- ident "%Z%%M% %I% %E% SMI"
-
NOTE: This service manifest is not editable; its contents will
be overwritten by package or patch operations, including
operating system upgrade. Make customizations in a different
@@ -81,7 +79,7 @@
</loctext>
</common_name>
<documentation>
- <manpage title='smf_bootstrap' section='5'
+ <manpage title='smf_bootstrap' section='7'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/svc/milestone/multi-user-server.xml b/usr/src/cmd/svc/milestone/multi-user-server.xml
index a4e48fd9ac..7c590be9c4 100644
--- a/usr/src/cmd/svc/milestone/multi-user-server.xml
+++ b/usr/src/cmd/svc/milestone/multi-user-server.xml
@@ -24,8 +24,6 @@
CDDL HEADER END
- ident "%Z%%M% %I% %E% SMI"
-
NOTE: This service manifest is not editable; its contents will
be overwritten by package or patch operations, including
operating system upgrade. Make customizations in a different
@@ -103,7 +101,7 @@ multi-user plus exports milestone
</loctext>
</common_name>
<documentation>
- <manpage title='init' section='1M'
+ <manpage title='init' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/svc/milestone/multi-user.xml b/usr/src/cmd/svc/milestone/multi-user.xml
index a5b6698e47..8e59064861 100644
--- a/usr/src/cmd/svc/milestone/multi-user.xml
+++ b/usr/src/cmd/svc/milestone/multi-user.xml
@@ -24,8 +24,6 @@
CDDL HEADER END
- ident "%Z%%M% %I% %E% SMI"
-
NOTE: This service manifest is not editable; its contents will
be overwritten by package or patch operations, including
operating system upgrade. Make customizations in a different
@@ -135,7 +133,7 @@ multi-user milestone
</loctext>
</common_name>
<documentation>
- <manpage title='init' section='1M'
+ <manpage title='init' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/svc/milestone/net-loc b/usr/src/cmd/svc/milestone/net-loc
index e4d0a8c994..b8358b64ff 100644
--- a/usr/src/cmd/svc/milestone/net-loc
+++ b/usr/src/cmd/svc/milestone/net-loc
@@ -66,12 +66,12 @@ SCRIPT_PATH=/etc/svc/volatile/nwam
#
# echoes DHCP controlled interfaces separated by commas
#
-# Don't parse the output of ifconfig(1M) because interfaces that haven't
+# Don't parse the output of ifconfig(8) because interfaces that haven't
# acquired a DHCP lease also have the DHCP flag set.
#
get_dhcp_interfaces () {
#
- # 1. parse netstat(1M) output for v4 interfaces in BOUND
+ # 1. parse netstat(8) output for v4 interfaces in BOUND
# or INFORMATION state
# 2. make a space-separated list of interface names
#
@@ -302,7 +302,7 @@ do_nis () {
#
# do_ldap <location>
#
-# Installs LDAP information using ldapclient(1M) for location
+# Installs LDAP information using ldapclient(8) for location
#
# Returns 0 on success, 1 on failure
#
@@ -334,7 +334,7 @@ do_ldap () {
;;
esac
- # Use ldapclient(1M) to initialize LDAP client settings.
+ # Use ldapclient(8) to initialize LDAP client settings.
if [ -n "$DEFAULT_DOMAIN" -o -n "$LDAP_SERVERS" ]; then
$LDAPCLIENT init -a domainName=$DEFAULT_DOMAIN \
$LDAP_SERVERS
@@ -367,9 +367,9 @@ do_ns () {
stop_svc $LDAP_CLIENT_FMRI
#
- # Remove /etc/defaultdomain and unset domainname(1M). If NIS
+ # Remove /etc/defaultdomain and unset domainname(8). If NIS
# and/or LDAP is configured, they will create /etc/defaultdomain
- # and set the domainname(1M).
+ # and set the domainname(8).
#
$RM -f $ETC_DEFAULT_DOMAIN
$DOMAINNAME " "
diff --git a/usr/src/cmd/svc/milestone/net-nwam b/usr/src/cmd/svc/milestone/net-nwam
index 9f1de2fd76..fb012d7bee 100644
--- a/usr/src/cmd/svc/milestone/net-nwam
+++ b/usr/src/cmd/svc/milestone/net-nwam
@@ -203,7 +203,7 @@ create_legacy_loc () {
done
fi
- # Gather LDAP info via ldapclient(1M).
+ # Gather LDAP info via ldapclient(8).
if [ -f /var/ldap/ldap_client_file ]; then
copy_to_legacy /var/ldap/ldap_client_file
NAMESERVICES="${NAMESERVICES}ldap,"
@@ -350,7 +350,7 @@ revert_to_legacy_loc () {
$SVCADM enable dns/client
fi
- # set /etc/defaultdomain and domainname(1M)
+ # set /etc/defaultdomain and domainname(8)
DEFAULT_DOMAIN=`nwam_get_loc_prop Legacy default-domain`
if [ -n "$DEFAULT_DOMAIN" ]; then
$DOMAINNAME $DEFAULT_DOMAIN
@@ -526,7 +526,7 @@ case "$1" in
#
# Upgrade handling. The upgrade file consists of a series
- # of dladm(1M) commands. Note that after we are done, we
+ # of dladm(8) commands. Note that after we are done, we
# cannot rename the upgrade script file as the file system
# is still read-only at this point. Defer this to the
# manifest-import service.
diff --git a/usr/src/cmd/svc/milestone/net-routing-setup b/usr/src/cmd/svc/milestone/net-routing-setup
index 7f6d457b33..3ac6a3f7aa 100644
--- a/usr/src/cmd/svc/milestone/net-routing-setup
+++ b/usr/src/cmd/svc/milestone/net-routing-setup
@@ -53,7 +53,7 @@ smf_configure_ip || exit $SMF_EXIT_OK
/sbin/routeadm -u
#
-# Are we routing dynamically? routeadm(1M) reports this in the
+# Are we routing dynamically? routeadm(8) reports this in the
# "current" values of ipv4/6-routing - if either are true, we are running
# routing daemons (or at least they are enabled to run).
#
@@ -177,7 +177,7 @@ else
fi
#
-# Use routeadm(1M) to configure forwarding and launch routing daemons
+# Use routeadm(8) to configure forwarding and launch routing daemons
# for IPv4 and IPv6 based on preset values. These settings only apply
# to the global zone. For IPv4 dynamic routing, the system will default
# to disabled if a default route was previously added via BOOTP, DHCP,
diff --git a/usr/src/cmd/svc/milestone/net-svc b/usr/src/cmd/svc/milestone/net-svc
index 0ede5cfb3f..c7bea42f53 100644
--- a/usr/src/cmd/svc/milestone/net-svc
+++ b/usr/src/cmd/svc/milestone/net-svc
@@ -123,7 +123,7 @@ dhcp_edits ()
# it is important to preserve order of domain entries vs. search
# entries; the search entries are reserved for administrator
# customization and if placed after the domain entry will override
-# it. See resolv.conf(4).
+# it. See resolv.conf(5).
#
# The first arg should be the dns servers string, the second
# should be the dns domain.
diff --git a/usr/src/cmd/svc/milestone/network-initial.xml b/usr/src/cmd/svc/milestone/network-initial.xml
index b0f3a9e87b..f4414f18b4 100644
--- a/usr/src/cmd/svc/milestone/network-initial.xml
+++ b/usr/src/cmd/svc/milestone/network-initial.xml
@@ -85,7 +85,7 @@ initial network services
</loctext>
</description>
<documentation>
- <manpage title='ifconfig' section='1M'
+ <manpage title='ifconfig' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/svc/milestone/network-install.xml b/usr/src/cmd/svc/milestone/network-install.xml
index 69e49986f4..461a6c4832 100644
--- a/usr/src/cmd/svc/milestone/network-install.xml
+++ b/usr/src/cmd/svc/milestone/network-install.xml
@@ -105,7 +105,7 @@
</loctext>
</common_name>
<documentation>
- <manpage title='ipadm' section='1M'
+ <manpage title='ipadm' section='8'
manpath='/usr/share/man' />
</documentation>
<pg_pattern name='install_ipv4_interface' type='application'
@@ -116,14 +116,14 @@
<prop_pattern name='name' type='astring'
required='true'>
<description> <loctext xml:lang='C'>
- The "addrobj" value to be passed to the ipadm(1M) "create-addr" command.
+ The "addrobj" value to be passed to the ipadm(8) "create-addr" command.
</loctext> </description>
<cardinality min='1' max='1'/>
</prop_pattern>
<prop_pattern name='address_type' type='astring'
required='true'>
<description> <loctext xml:lang='C'>
- The "-T" option value to be passed to the ipadm(1M) "create-addr" command.
+ The "-T" option value to be passed to the ipadm(8) "create-addr" command.
</loctext> </description>
<cardinality min='1' max='1'/>
<constraints>
@@ -142,14 +142,14 @@
<prop_pattern name='static_address'
type='net_address_v4' required='false'>
<description> <loctext xml:lang='C'>
- The "local" address value to be passed to the ipadm(1M) "create-addr" command. Only required if "address_type" has a value of "static".
+ The "local" address value to be passed to the ipadm(8) "create-addr" command. Only required if "address_type" has a value of "static".
</loctext> </description>
<cardinality min='1' max='1'/>
</prop_pattern>
<prop_pattern name='dhcp_wait' type='astring'
required='false'>
<description> <loctext xml:lang='C'>
- The "-w" option value to be passed to the ipadm(1M) "create-addr" command. Represents the maximum time to wait for DHCP offer.
+ The "-w" option value to be passed to the ipadm(8) "create-addr" command. Represents the maximum time to wait for DHCP offer.
</loctext> </description>
<units>
<loctext xml:lang='C'>seconds</loctext>
@@ -159,7 +159,7 @@
<prop_pattern name='default_route'
type='net_address_v4' required='false'>
<description> <loctext xml:lang='C'>
- The default route associated with this interface. Used to add a default route using route(1M).
+ The default route associated with this interface. Used to add a default route using route(8).
</loctext> </description>
<cardinality min='1' max='1'/>
</prop_pattern>
@@ -172,14 +172,14 @@
<prop_pattern name='name' type='astring'
required='true'>
<description> <loctext xml:lang='C'>
- The "addrobj" value to be passed to the ipadm(1M) "create-addr" command.
+ The "addrobj" value to be passed to the ipadm(8) "create-addr" command.
</loctext> </description>
<cardinality min='1' max='1'/>
</prop_pattern>
<prop_pattern name='address_type' type='astring'
required='true'>
<description> <loctext xml:lang='C'>
- The "-T" option value to be passed to the ipadm(1M) "create-addr" command.
+ The "-T" option value to be passed to the ipadm(8) "create-addr" command.
</loctext> </description>
<cardinality min='1' max='1'/>
<constraints>
@@ -198,14 +198,14 @@
<prop_pattern name='static_address'
type='net_address_v6' required='false'>
<description> <loctext xml:lang='C'>
- The "local" address value to be passed to the ipadm(1M) "create-addr" command. Only required if "address_type" has a value of "static".
+ The "local" address value to be passed to the ipadm(8) "create-addr" command. Only required if "address_type" has a value of "static".
</loctext> </description>
<cardinality min='1' max='1'/>
</prop_pattern>
<prop_pattern name='interface_id'
type='net_address_v6' required='false'>
<description> <loctext xml:lang='C'>
- The "-i" token value to be passed to the ipadm(1M) "create-addr" command. Ignored if "address_type" has a value of "static".
+ The "-i" token value to be passed to the ipadm(8) "create-addr" command. Ignored if "address_type" has a value of "static".
</loctext> </description>
<cardinality min='1' max='1'/>
</prop_pattern>
@@ -213,7 +213,7 @@
<prop_pattern name='stateless'
type='astring' required='false'>
<description> <loctext xml:lang='C'>
- The "stateless" value to be passed to the ipadm(1M) "create-addr" command. Ignored if "address_type" has a value of "static".
+ The "stateless" value to be passed to the ipadm(8) "create-addr" command. Ignored if "address_type" has a value of "static".
</loctext> </description>
<cardinality min='1' max='1'/>
<constraints>
@@ -224,7 +224,7 @@
<prop_pattern name='stateful'
type='astring' required='false'>
<description> <loctext xml:lang='C'>
- The "stateful" value to be passed to the ipadm(1M) "create-addr" command. Ignored if "address_type" has a value of "static".
+ The "stateful" value to be passed to the ipadm(8) "create-addr" command. Ignored if "address_type" has a value of "static".
</loctext> </description>
<cardinality min='1' max='1'/>
<constraints>
@@ -235,7 +235,7 @@
<prop_pattern name='default_route'
type='net_address_v6' required='false'>
<description> <loctext xml:lang='C'>
- The default route associated with this interface. Used to add a default route using route(1M).
+ The default route associated with this interface. Used to add a default route using route(8).
</loctext> </description>
<cardinality min='1' max='1'/>
</prop_pattern>
diff --git a/usr/src/cmd/svc/milestone/network-ipqos.xml b/usr/src/cmd/svc/milestone/network-ipqos.xml
index c1fcdb0fcd..d8d5e9159e 100644
--- a/usr/src/cmd/svc/milestone/network-ipqos.xml
+++ b/usr/src/cmd/svc/milestone/network-ipqos.xml
@@ -89,7 +89,7 @@
</loctext>
</description>
<documentation>
- <manpage title='ipqosconf' section='1M'
+ <manpage title='ipqosconf' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/svc/milestone/network-iptun.xml b/usr/src/cmd/svc/milestone/network-iptun.xml
index d55df08553..1bc04d1ae6 100644
--- a/usr/src/cmd/svc/milestone/network-iptun.xml
+++ b/usr/src/cmd/svc/milestone/network-iptun.xml
@@ -85,7 +85,7 @@
</loctext>
</description>
<documentation>
- <manpage title='dladm' section='1M'
+ <manpage title='dladm' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/svc/milestone/network-location.xml b/usr/src/cmd/svc/milestone/network-location.xml
index 5e23d92481..f669d38d4c 100644
--- a/usr/src/cmd/svc/milestone/network-location.xml
+++ b/usr/src/cmd/svc/milestone/network-location.xml
@@ -33,8 +33,8 @@
<!--
network/location is used as a medium to refresh and restart SMF
- services dependent on network/location whenever nwamd(1M) changes
- locations. nwamd(1M) updates the different configuration files
+ services dependent on network/location whenever nwamd(8) changes
+ locations. nwamd(8) updates the different configuration files
according to the location being (de)activated and refreshes
network/location. This causes the services dependent on network/location
to restart and read in the updated configuration files.
@@ -69,7 +69,7 @@
<instance name='default' enabled='false'>
<!--
- nwamd(1M) refreshes network/location when a new location is
+ nwamd(8) refreshes network/location when a new location is
activated, thus the "restart_on none" dependency.
-->
<dependency
@@ -88,7 +88,7 @@
<service_fmri value='svc:/system/filesystem/usr' />
</dependency>
- <!--
+ <!--
This dependency on system/manifest-import is just for the
case of the boot after upgrade. We don't want
network/location starting up until network/netcfg has been
@@ -149,7 +149,7 @@
</dependent>
<!--
- The following three dependents will be refreshed by
+ The following three dependents will be refreshed by
/lib/svc/method/net-loc, rather than restarted,
when network/location is refreshed.
-->
@@ -224,7 +224,7 @@
</loctext>
</common_name>
<documentation>
- <manpage title='nwamd' section='1M'
+ <manpage title='nwamd' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/svc/milestone/network-loopback.xml b/usr/src/cmd/svc/milestone/network-loopback.xml
index bd51e960cd..7388c0651b 100644
--- a/usr/src/cmd/svc/milestone/network-loopback.xml
+++ b/usr/src/cmd/svc/milestone/network-loopback.xml
@@ -24,8 +24,6 @@
CDDL HEADER END
- ident "%Z%%M% %I% %E% SMI"
-
NOTE: This service manifest is not editable; its contents will
be overwritten by package or patch operations, including
operating system upgrade. Make customizations in a different
@@ -68,7 +66,7 @@
</loctext>
</common_name>
<documentation>
- <manpage title='ifconfig' section='1M'
+ <manpage title='ifconfig' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/svc/milestone/network-netcfg.xml b/usr/src/cmd/svc/milestone/network-netcfg.xml
index edc15da18f..fe7748bad1 100644
--- a/usr/src/cmd/svc/milestone/network-netcfg.xml
+++ b/usr/src/cmd/svc/milestone/network-netcfg.xml
@@ -93,7 +93,7 @@
</loctext>
</common_name>
<documentation>
- <manpage title='netcfgd' section='1M'
+ <manpage title='netcfgd' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/svc/milestone/network-netmask.xml b/usr/src/cmd/svc/milestone/network-netmask.xml
index 31caeb3f1d..48499f9d8c 100644
--- a/usr/src/cmd/svc/milestone/network-netmask.xml
+++ b/usr/src/cmd/svc/milestone/network-netmask.xml
@@ -31,7 +31,7 @@
<service_bundle type='manifest' name='SUNWcsr:network-netmask'>
-<!--
+<!--
network/netmask service resets the netmask and broadcast address
whenever new information is available from NIS.
-->
@@ -107,7 +107,7 @@
</loctext>
</description>
<documentation>
- <manpage title='ifconfig' section='1M'
+ <manpage title='ifconfig' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/svc/milestone/network-physical.xml b/usr/src/cmd/svc/milestone/network-physical.xml
index f26c9647a1..d0eb7db1b9 100644
--- a/usr/src/cmd/svc/milestone/network-physical.xml
+++ b/usr/src/cmd/svc/milestone/network-physical.xml
@@ -103,7 +103,7 @@
</loctext>
</common_name>
<documentation>
- <manpage title='ifconfig' section='1M'
+ <manpage title='ifconfig' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/svc/milestone/network-routing-setup.xml b/usr/src/cmd/svc/milestone/network-routing-setup.xml
index 85a74756da..c84a88577e 100644
--- a/usr/src/cmd/svc/milestone/network-routing-setup.xml
+++ b/usr/src/cmd/svc/milestone/network-routing-setup.xml
@@ -23,8 +23,6 @@
CDDL HEADER END
- ident "%Z%%M% %I% %E% SMI"
-
NOTE: This service manifest is not editable; its contents will
be overwritten by package or patch operations, including
operating system upgrade. Make customizations in a different
@@ -110,7 +108,7 @@
<instance name='default' enabled='true' >
- <!-- Properties in this group are used by routeadm (1M) -->
+ <!-- Properties in this group are used by routeadm(8) -->
<property_group name='routeadm' type='framework'>
<stability value='Evolving' />
<!-- set if routeadm -e/d ipv4-routing is explicitly invoked -->
@@ -147,7 +145,7 @@
</loctext>
</common_name>
<documentation>
- <manpage title='routeadm' section='1M'
+ <manpage title='routeadm' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/svc/milestone/network-service.xml b/usr/src/cmd/svc/milestone/network-service.xml
index ec12896e53..598d4d99f4 100644
--- a/usr/src/cmd/svc/milestone/network-service.xml
+++ b/usr/src/cmd/svc/milestone/network-service.xml
@@ -120,7 +120,7 @@
</loctext>
</description>
<documentation>
- <manpage title='ifconfig' section='1M'
+ <manpage title='ifconfig' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/svc/milestone/process-security.xml b/usr/src/cmd/svc/milestone/process-security.xml
index bd4b2ac6b7..bc081692e5 100644
--- a/usr/src/cmd/svc/milestone/process-security.xml
+++ b/usr/src/cmd/svc/milestone/process-security.xml
@@ -76,7 +76,7 @@
<loctext xml:lang='C'>Security Flag Configuration</loctext>
</common_name>
<documentation>
- <manpage title='security-flags' section='5'
+ <manpage title='security-flags' section='7'
manpath='/usr/share/man' />
<manpage title='psecflags' section='1'
manpath='/usr/share/man' />
diff --git a/usr/src/cmd/svc/milestone/restarter.xml b/usr/src/cmd/svc/milestone/restarter.xml
index c867736d51..f25d133192 100644
--- a/usr/src/cmd/svc/milestone/restarter.xml
+++ b/usr/src/cmd/svc/milestone/restarter.xml
@@ -72,11 +72,11 @@ master restarter
</loctext>
</common_name>
<documentation>
- <manpage title='svc.startd' section='1M'
+ <manpage title='svc.startd' section='8'
manpath='/usr/share/man' />
- <manpage title='smf_method' section='5'
+ <manpage title='smf_method' section='7'
manpath='/usr/share/man' />
- <manpage title='smf' section='5'
+ <manpage title='smf' section='7'
manpath='/usr/share/man' />
</documentation>
@@ -650,7 +650,7 @@ method context resource pool
<description>
<loctext xml:lang='C'>
The resource pool name on which to launch the method. :default can be used
-as a token to indicate the pool specified in the project(4) entry given in
+as a token to indicate the pool specified in the project(5) entry given in
the project attribute.
</loctext>
</description>
@@ -666,7 +666,7 @@ method credential security flags
</common_name>
<description>
<loctext xml:lang='C'>
-An optional string specifying the security flags as defined in security-flags(5).
+An optional string specifying the security flags as defined in security-flags(7).
</loctext>
</description>
<cardinality min='1' max='1'/>
@@ -727,7 +727,7 @@ method credential privileges
</common_name>
<description>
<loctext xml:lang='C'>
-An optional string specifying the privilege set as defined in privileges(5).
+An optional string specifying the privilege set as defined in privileges(7).
</loctext>
</description>
<cardinality min='1' max='1'/>
@@ -743,7 +743,7 @@ method credential limit privilege set
<description>
<loctext xml:lang='C'>
An optional string specifying the limit privilege set as defined in
-privileges(5).
+privileges(7).
</loctext>
</description>
<cardinality min='1' max='1'/>
@@ -771,7 +771,7 @@ method profile RBAC profile specification
<description>
<loctext xml:lang='C'>
The name of an RBAC (role-based access control) profile which, along with the
-method executable, identifies an entry in exec_attr(4).
+method executable, identifies an entry in exec_attr(5).
</loctext>
</description>
<cardinality min='1' max='1'/>
@@ -913,7 +913,7 @@ method context resource pool
<description>
<loctext xml:lang='C'>
The resource pool name on which to launch the method. :default can be used
-as a token to indicate the pool specified in the project(4) entry given in
+as a token to indicate the pool specified in the project(5) entry given in
the project attribute.
</loctext>
</description>
@@ -929,7 +929,7 @@ method credential security flags
</common_name>
<description>
<loctext xml:lang='C'>
-An optional string specifying the security flags as defined in security-flags(5).
+An optional string specifying the security flags as defined in security-flags(7).
</loctext>
</description>
<cardinality min='1' max='1'/>
@@ -990,7 +990,7 @@ method credential privileges
</common_name>
<description>
<loctext xml:lang='C'>
-An optional string specifying the privilege set as defined in privileges(5).
+An optional string specifying the privilege set as defined in privileges(7).
</loctext>
</description>
<cardinality min='1' max='1'/>
@@ -1006,7 +1006,7 @@ method credential limit privilege set
<description>
<loctext xml:lang='C'>
An optional string specifying the limit privilege set as defined in
-privileges(5).
+privileges(7).
</loctext>
</description>
<cardinality min='1' max='1'/>
@@ -1034,7 +1034,7 @@ method profile RBAC profile specification
<description>
<loctext xml:lang='C'>
The name of an RBAC (role-based access control) profile which, along with the
-method executable, identifies an entry in exec_attr(4).
+method executable, identifies an entry in exec_attr(5).
</loctext>
</description>
<cardinality min='1' max='1'/>
@@ -1176,7 +1176,7 @@ method context resource pool
<description>
<loctext xml:lang='C'>
The resource pool name on which to launch the method. :default can be used
-as a token to indicate the pool specified in the project(4) entry given in
+as a token to indicate the pool specified in the project(5) entry given in
the project attribute.
</loctext>
</description>
@@ -1191,7 +1191,7 @@ method security flags
</common_name>
<description>
<loctext xml:lang='C'>
-An optional string specifying the security flags as defined in security-flags(5).
+An optional string specifying the security flags as defined in security-flags(7).
</loctext>
</description>
<cardinality min='1' max='1'/>
@@ -1252,7 +1252,7 @@ method credential privileges
</common_name>
<description>
<loctext xml:lang='C'>
-An optional string specifying the privilege set as defined in privileges(5).
+An optional string specifying the privilege set as defined in privileges(7).
</loctext>
</description>
<cardinality min='1' max='1'/>
@@ -1268,7 +1268,7 @@ method credential limit privilege set
<description>
<loctext xml:lang='C'>
An optional string specifying the limit privilege set as defined in
-privileges(5).
+privileges(7).
</loctext>
</description>
<cardinality min='1' max='1'/>
@@ -1296,7 +1296,7 @@ method profile RBAC profile specification
<description>
<loctext xml:lang='C'>
The name of an RBAC (role-based access control) profile which, along with the
-method executable, identifies an entry in exec_attr(4).
+method executable, identifies an entry in exec_attr(5).
</loctext>
</description>
<cardinality min='1' max='1'/>
diff --git a/usr/src/cmd/svc/milestone/rmtmpfiles b/usr/src/cmd/svc/milestone/rmtmpfiles
index f08782a9a8..8c09c0387f 100644
--- a/usr/src/cmd/svc/milestone/rmtmpfiles
+++ b/usr/src/cmd/svc/milestone/rmtmpfiles
@@ -24,7 +24,7 @@
# Use is subject to license terms.
# For modifying the behavior of rmtmpfiles, do not edit this script.
-# Instead use svccfg(1m) to modify the SMF repository. To achieve
+# Instead use svccfg(8) to modify the SMF repository. To achieve
# traditional System V treatment of /var/tmp, invoke the following
# commands.:
#
diff --git a/usr/src/cmd/svc/milestone/single-user.xml b/usr/src/cmd/svc/milestone/single-user.xml
index 579ecb5ddd..88b846a2ce 100644
--- a/usr/src/cmd/svc/milestone/single-user.xml
+++ b/usr/src/cmd/svc/milestone/single-user.xml
@@ -128,7 +128,7 @@
</loctext>
</common_name>
<documentation>
- <manpage title='init' section='1M'
+ <manpage title='init' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/svc/milestone/vtdaemon.xml b/usr/src/cmd/svc/milestone/vtdaemon.xml
index 920792bc5b..6168413d51 100644
--- a/usr/src/cmd/svc/milestone/vtdaemon.xml
+++ b/usr/src/cmd/svc/milestone/vtdaemon.xml
@@ -101,7 +101,7 @@ vtdaemon for virtual console secure switch
</loctext>
</common_name>
<documentation>
- <manpage title='vtdaemon' section='1M'
+ <manpage title='vtdaemon' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/svc/profile/README b/usr/src/cmd/svc/profile/README
index 6e93615b5f..e0f11ab7e4 100644
--- a/usr/src/cmd/svc/profile/README
+++ b/usr/src/cmd/svc/profile/README
@@ -24,8 +24,6 @@
# Use is subject to license terms.
#
-#pragma ident "%Z%%M% %I% %E% SMI"
-
Notes Regarding Modification of generic_open.xml
Any changes made to generic_open.xml will need to be considered for
@@ -35,7 +33,7 @@ in PSARC/2004/781:
...
The generic_limited_net profile explicitly disables all
- smf(5) converted inetd services that are not required to
+ smf(7) converted inetd services that are not required to
run the window system, SVM, or vold. It retains ssh and
X remote login as the remote login methods available.
...
diff --git a/usr/src/cmd/svc/profile/generic_limited_net.xml b/usr/src/cmd/svc/profile/generic_limited_net.xml
index 44814441e6..a79d59c1f7 100644
--- a/usr/src/cmd/svc/profile/generic_limited_net.xml
+++ b/usr/src/cmd/svc/profile/generic_limited_net.xml
@@ -44,7 +44,7 @@
<xi:include href='file:/etc/svc/profile/name_service.xml' />
<!--
- svc.startd(1M) services
+ svc.startd(8) services
-->
<service name='system/coreadm' version='1' type='service'>
<instance name='default' enabled='true'/>
@@ -201,7 +201,7 @@
</service>
<!--
- default inetd(1M) services
+ default inetd(8) services
-->
<service name='network/finger' version='1' type='service'>
<instance name='default' enabled='false'/>
@@ -220,7 +220,7 @@
</service>
<!--
- non-default inetd(1M) services
+ non-default inetd(8) services
-->
<service name='network/uucp' version='1' type='service'>
<instance name='default' enabled='false'/>
@@ -262,7 +262,7 @@
</service>
<!--
- default inetd(1M) RPC services enabled
+ default inetd(8) RPC services enabled
-->
<service name='network/rpc/gss' version='1' type='service'>
<instance name='default' enabled='true'/>
@@ -278,7 +278,7 @@
</service>
<!--
- default inetd(1M) RPC services disabled
+ default inetd(8) RPC services disabled
-->
<service name='network/rpc/rstat' version='1' type='service'>
<instance name='default' enabled='false'/>
@@ -288,7 +288,7 @@
</service>
<!--
- non-default inetd(1M) RPC services disabled
+ non-default inetd(8) RPC services disabled
-->
<service name='network/rpc/rex' version='1' type='service'>
<instance name='default' enabled='false'/>
diff --git a/usr/src/cmd/svc/profile/generic_open.xml b/usr/src/cmd/svc/profile/generic_open.xml
index ce23b8efdd..47b00fb4de 100644
--- a/usr/src/cmd/svc/profile/generic_open.xml
+++ b/usr/src/cmd/svc/profile/generic_open.xml
@@ -41,7 +41,7 @@
<xi:include href='file:/etc/svc/profile/name_service.xml' />
<!--
- svc.startd(1M) services
+ svc.startd(8) services
-->
<service name='system/coreadm' version='1' type='service'>
<instance name='default' enabled='true'/>
@@ -186,7 +186,7 @@
</service>
<!--
- Include inetd(1M) services profile.
+ Include inetd(8) services profile.
-->
<xi:include href='file:/etc/svc/profile/inetd_services.xml' />
</service_bundle>
diff --git a/usr/src/cmd/svc/profile/inetd_generic.xml b/usr/src/cmd/svc/profile/inetd_generic.xml
index 8d2df20219..e95a0608ba 100644
--- a/usr/src/cmd/svc/profile/inetd_generic.xml
+++ b/usr/src/cmd/svc/profile/inetd_generic.xml
@@ -32,7 +32,7 @@
-->
<service_bundle type='profile' name='default'>
<!--
- inetd(1M) services
+ inetd(8) services
-->
<service name='network/finger' version='1' type='service'>
<instance name='default' enabled='true'/>
@@ -48,7 +48,7 @@
</service>
<!--
- inetd(1M) RPC services
+ inetd(8) RPC services
-->
<service name='network/nfs/rquota' version='1' type='service'>
<instance name='default' enabled='true'/>
diff --git a/usr/src/cmd/svc/shell/fs_include.sh b/usr/src/cmd/svc/shell/fs_include.sh
index 99810383cc..f0ee2748a7 100644
--- a/usr/src/cmd/svc/shell/fs_include.sh
+++ b/usr/src/cmd/svc/shell/fs_include.sh
@@ -27,7 +27,6 @@
# All rights reserved.
#
#
-#ident "%Z%%M% %I% %E% SMI"
vfstab=${vfstab:=/etc/vfstab}
@@ -43,7 +42,7 @@ vfstab=${vfstab:=/etc/vfstab}
# fsckdev raw device
# mountp mount point (must match $1, if found)
# fstype file system type
-# fsckpass fsck(1M) pass number
+# fsckpass fsck(8) pass number
# automnt automount flag (yes or no)
# mntopts file system-specific mount options.
#
@@ -307,7 +306,7 @@ mounted() {
# to our service log.
#
# Arguments:
-# $opts - options for mount(1M) [optional]
+# $opts - options for mount(8) [optional]
# $path - mount point
# $type - file system type [optional]
# $fsopts - file system specific options (-o) [optional]
@@ -315,7 +314,7 @@ mounted() {
#
# Return codes:
# 0 - success.
-# otherwise - error code returned by mount(1M).
+# otherwise - error code returned by mount(8).
#
mountfs() {
opts="$1"
diff --git a/usr/src/cmd/svc/shell/smf_include.sh b/usr/src/cmd/svc/shell/smf_include.sh
index 9f8a5f6cd9..7aef5c73a9 100644
--- a/usr/src/cmd/svc/shell/smf_include.sh
+++ b/usr/src/cmd/svc/shell/smf_include.sh
@@ -243,7 +243,7 @@ smf_kill_contract() {
}
#
-# smf(5) method and monitor exit status definitions
+# smf(7) method and monitor exit status definitions
# SMF_EXIT_ERR_OTHER, although not defined, encompasses all non-zero
# exit status values.
#
diff --git a/usr/src/cmd/svc/startd/fork.c b/usr/src/cmd/svc/startd/fork.c
index 7bce347854..df91d174ca 100644
--- a/usr/src/cmd/svc/startd/fork.c
+++ b/usr/src/cmd/svc/startd/fork.c
@@ -94,7 +94,7 @@ startd_fork1(int *forkerr)
/*
* void fork_mount(char *, char *)
- * Run mount(1M) with the given options and mount point. (mount(1M) has much
+ * Run mount(8) with the given options and mount point. (mount(8) has much
* hidden knowledge; it's much less correct to reimplement that logic here to
* save a fork(2)/exec(2) invocation.)
*/
@@ -116,7 +116,7 @@ fork_mount(char *path, char *opts)
(void) waitpid(pid, &status, 0);
/*
- * If our mount(1M) invocation exited by peculiar means, or with
+ * If our mount(8) invocation exited by peculiar means, or with
* a non-zero status, our mount likelihood is low.
*/
if (!WIFEXITED(status) ||
@@ -183,8 +183,8 @@ fork_common(const char *name, const char *svc_fmri, int retries, ctid_t *ctidp,
for (pid = fork1(); pid == -1; pid = fork1()) {
if (++tries > retries) {
/*
- * When we exit the sulogin session, init(1M)
- * will restart svc.startd(1M).
+ * When we exit the sulogin session, init(8)
+ * will restart svc.startd(8).
*/
err = errno;
(void) ct_tmpl_clear(ctfd);
@@ -217,7 +217,7 @@ fork_common(const char *name, const char *svc_fmri, int retries, ctid_t *ctidp,
* is ended, we continue. This is the last fallback action for system
* maintenance.
*
- * If immediate is true, fork_sulogin() executes sulogin(1M) directly, without
+ * If immediate is true, fork_sulogin() executes sulogin(8) directly, without
* forking.
*
* Because fork_sulogin() is needed potentially before we daemonize, we leave
diff --git a/usr/src/cmd/svc/startd/graph.c b/usr/src/cmd/svc/startd/graph.c
index d514b19c38..685c1c262c 100644
--- a/usr/src/cmd/svc/startd/graph.c
+++ b/usr/src/cmd/svc/startd/graph.c
@@ -127,8 +127,8 @@
* stn_global for the system-wide set. They are re-read when instances are
* refreshed.
*
- * The GPEC events published by svc.startd are consumed by fmd(1M). After
- * processing these events, fmd(1M) publishes the processed events to
+ * The GPEC events published by svc.startd are consumed by fmd(8). After
+ * processing these events, fmd(8) publishes the processed events to
* notification agents. The notification agents read the notification
* parameters from the SMF repository through libscf(3LIB) interfaces and send
* the notification, or not, based on those parameters.
diff --git a/usr/src/cmd/svc/startd/log.c b/usr/src/cmd/svc/startd/log.c
index 7ea39a9a1c..bce86b75fd 100644
--- a/usr/src/cmd/svc/startd/log.c
+++ b/usr/src/cmd/svc/startd/log.c
@@ -28,13 +28,13 @@
* log.c - debugging and logging functions
*
* Logging destinations
- * svc.startd(1M) supports three logging destinations: the system log, a
+ * svc.startd(8) supports three logging destinations: the system log, a
* daemon-specific log (in the /var/svc/log hierarchy by default), and to the
* standard output (redirected to the /var/svc/log/svc.startd.log file by
* default). Any or all of these destinations may be used to
* communicate a specific message; the audiences for each destination differ.
*
- * Generic messages associated with svc.startd(1M) are made by the
+ * Generic messages associated with svc.startd(8) are made by the
* log_framework() and log_error() functions. For these messages, svc.startd
* logs under its own name and under the LOG_DAEMON facility when issuing
* events to the system log. By design, severities below LOG_NOTICE are never
@@ -64,30 +64,30 @@
*
* LOG_ALERT An unrecoverable operation requiring external
* intervention has occurred. Includes an inability to
- * write to the smf(5) repository (due to svc.configd(1M)
+ * write to the smf(7) repository (due to svc.configd(8)
* absence, due to permissions failures, etc.). Message
* should identify component at fault.
*
- * LOG_CRIT An unrecoverable operation internal to svc.startd(1M)
+ * LOG_CRIT An unrecoverable operation internal to svc.startd(8)
* has occurred. Failure should be recoverable by restart
- * of svc.startd(1M).
+ * of svc.startd(8).
*
- * LOG_ERR An smf(5) event requiring administrative intervention
+ * LOG_ERR An smf(7) event requiring administrative intervention
* has occurred. Includes instance being moved to the
* maintenance state.
*
- * LOG_WARNING A potentially destabilizing smf(5) event not requiring
+ * LOG_WARNING A potentially destabilizing smf(7) event not requiring
* administrative intervention has occurred.
*
- * LOG_NOTICE A noteworthy smf(5) event has occurred. Includes
+ * LOG_NOTICE A noteworthy smf(7) event has occurred. Includes
* individual instance failures.
*
- * LOG_INFO A noteworthy operation internal to svc.startd(1M) has
+ * LOG_INFO A noteworthy operation internal to svc.startd(8) has
* occurred. Includes recoverable failures or otherwise
* unexpected outcomes.
*
* LOG_DEBUG An internal operation only of interest to a
- * svc.startd(1M) developer has occurred.
+ * svc.startd(8) developer has occurred.
*
* Logging configuration
* The preferred approach is to set the logging property values
diff --git a/usr/src/cmd/svc/startd/protocol.c b/usr/src/cmd/svc/startd/protocol.c
index e4fc9f73c5..a21e7e709a 100644
--- a/usr/src/cmd/svc/startd/protocol.c
+++ b/usr/src/cmd/svc/startd/protocol.c
@@ -476,7 +476,7 @@ restarter_protocol_send_event(const char *inst, evchan_t *chan,
/*
* For the purposes of loading state after interruption, this is
- * sufficient, as svc.startd(1M) won't receive events on the contracts
+ * sufficient, as svc.startd(8) won't receive events on the contracts
* associated with each delegate.
*/
MUTEX_LOCK(&st->st_load_lock);
diff --git a/usr/src/cmd/svc/startd/restarter.c b/usr/src/cmd/svc/startd/restarter.c
index 70f84a06d6..6003c81c87 100644
--- a/usr/src/cmd/svc/startd/restarter.c
+++ b/usr/src/cmd/svc/startd/restarter.c
@@ -2272,7 +2272,7 @@ restarter_contracts_event_thread(void *unused)
startd_close(sfd);
/*
- * svc.configd(1M) restart handling performed by the
+ * svc.configd(8) restart handling performed by the
* fork_configd_thread. We don't acknowledge, as that thread
* will do so.
*/
diff --git a/usr/src/cmd/svc/startd/specials.c b/usr/src/cmd/svc/startd/specials.c
index 3c8858b527..5f7c328a83 100644
--- a/usr/src/cmd/svc/startd/specials.c
+++ b/usr/src/cmd/svc/startd/specials.c
@@ -23,12 +23,10 @@
* Use is subject to license terms.
*/
-#pragma ident "%Z%%M% %I% %E% SMI"
-
/*
* specials.c - knowledge of special services
*
- * svc.startd(1M) has duties that cannot be carried out without knowledge of the
+ * svc.startd(8) has duties that cannot be carried out without knowledge of the
* transition of various services, such as the milestones, to their online
* states. Hooks are called with the restarter instance's ri_lock held, so
* operations on all instances (or on the graph) should be performed
diff --git a/usr/src/cmd/svc/startd/startd.c b/usr/src/cmd/svc/startd/startd.c
index d28687e761..ea9c4efbe4 100644
--- a/usr/src/cmd/svc/startd/startd.c
+++ b/usr/src/cmd/svc/startd/startd.c
@@ -47,16 +47,16 @@
* There are a few different components that make up SMF and are responsible
* for different pieces of functionality that are used:
*
- * svc.startd(1M): A daemon that is in charge of starting, stopping, and
+ * svc.startd(8): A daemon that is in charge of starting, stopping, and
* restarting services and instances.
- * svc.configd(1M): A daemon that manages the repository that stores
+ * svc.configd(8): A daemon that manages the repository that stores
* information, property groups, and state of the different services and
* instances.
* libscf(3LIB): A C library that provides the glue for communicating,
* accessing, and updating information about services and instances.
- * svccfg(1M): A utility to add and remove services as well as change the
+ * svccfg(8): A utility to add and remove services as well as change the
* properties associated with different services and instances.
- * svcadm(1M): A utility to control the different instance of a service. You
+ * svcadm(8): A utility to control the different instance of a service. You
* can use this to enable and disable them among some other useful things.
* svcs(1): A utility that reports on the status of various services on the
* system.
diff --git a/usr/src/cmd/svc/startd/utmpx.c b/usr/src/cmd/svc/startd/utmpx.c
index 1b3ca95010..1fd55b6592 100644
--- a/usr/src/cmd/svc/startd/utmpx.c
+++ b/usr/src/cmd/svc/startd/utmpx.c
@@ -31,7 +31,7 @@
/*
* utmpx.c - utmpx utility routines
*
- * Since svc.startd(1M) places utmpx records for its launched instances, it must
+ * Since svc.startd(8) places utmpx records for its launched instances, it must
* also mark them as dead once completed.
*/
diff --git a/usr/src/cmd/svc/startd/wait.c b/usr/src/cmd/svc/startd/wait.c
index 12856ff639..970bd63f6d 100644
--- a/usr/src/cmd/svc/startd/wait.c
+++ b/usr/src/cmd/svc/startd/wait.c
@@ -294,7 +294,7 @@ wait_thread(void *args)
psi.pr_lwp.pr_lwpid != 0) {
/*
* We have determined, in accordance with the
- * definition in proc(4), this process is not a
+ * definition in proc(5), this process is not a
* zombie. Reassociate.
*/
if (port_associate(port_fd, PORT_SOURCE_FD, fd,
diff --git a/usr/src/cmd/svc/svcadm/svcadm.c b/usr/src/cmd/svc/svcadm/svcadm.c
index c5a046565f..0330305c98 100644
--- a/usr/src/cmd/svc/svcadm/svcadm.c
+++ b/usr/src/cmd/svc/svcadm/svcadm.c
@@ -167,7 +167,7 @@ usage()
"\t%1$s clear [<service> ...]\t\t- clear maintenance state\n"
"\t%1$s milestone [-d] <milestone>\t- advance to a service milestone\n"
"\n\t"
- "Services can be specified using an FMRI, abbreviation, or fnmatch(5)\n"
+ "Services can be specified using an FMRI, abbreviation, or fnmatch(7)\n"
"\tpattern, as shown in these examples for svc:/network/smtp:sendmail\n"
"\n"
"\t%1$s <cmd> svc:/network/smtp:sendmail\n"
diff --git a/usr/src/cmd/svc/svccfg/svccfg_engine.c b/usr/src/cmd/svc/svccfg/svccfg_engine.c
index d0d690f231..cafaeac254 100644
--- a/usr/src/cmd/svc/svccfg/svccfg_engine.c
+++ b/usr/src/cmd/svc/svccfg/svccfg_engine.c
@@ -467,13 +467,13 @@ fail:
/*
* Initialize svccfg state. We recognize four environment variables:
*
- * SVCCFG_REPOSITORY Create a private instance of svc.configd(1M) to answer
+ * SVCCFG_REPOSITORY Create a private instance of svc.configd(8) to answer
* requests for the specified repository file.
* SVCCFG_DOOR_PATH Directory for door creation.
*
* SVCCFG_DOOR Rendezvous via an alternative repository door.
*
- * SVCCFG_CONFIGD_PATH Resolvable path to alternative svc.configd(1M) binary.
+ * SVCCFG_CONFIGD_PATH Resolvable path to alternative svc.configd(8) binary.
*/
void
engine_init()
@@ -761,7 +761,7 @@ engine_import(uu_list_t *args)
if (progress_out != NULL)
(void) fprintf(progress_out,
- "Loading smf(5) service descriptions: ");
+ "Loading smf(7) service descriptions: ");
failed_manifests = 0;
progress_count = 0;
@@ -793,11 +793,11 @@ engine_import(uu_list_t *args)
if (dirarg && total_manifests > 0) {
char *msg;
- msg = "Loaded %d smf(5) service descriptions\n";
+ msg = "Loaded %d smf(7) service descriptions\n";
warn(gettext(msg), progress_count);
if (failed_manifests) {
- msg = "%d smf(5) service descriptions failed to load\n";
+ msg = "%d smf(7) service descriptions failed to load\n";
warn(gettext(msg), failed_manifests);
}
}
diff --git a/usr/src/cmd/svc/svccfg/svccfg_libscf.c b/usr/src/cmd/svc/svccfg/svccfg_libscf.c
index 1e565d795f..a1a3a44ad2 100644
--- a/usr/src/cmd/svc/svccfg/svccfg_libscf.c
+++ b/usr/src/cmd/svc/svccfg/svccfg_libscf.c
@@ -756,7 +756,7 @@ remove_tempfile(void)
}
/*
- * Launch private svc.configd(1M) for manipulating alternate repositories.
+ * Launch private svc.configd(8) for manipulating alternate repositories.
*/
static void
start_private_repository(engine_state_t *est)
@@ -832,7 +832,7 @@ void
lscf_cleanup(void)
{
/*
- * In the case where we've launched a private svc.configd(1M)
+ * In the case where we've launched a private svc.configd(8)
* instance, we must terminate our child and remove the temporary
* rendezvous point.
*/
diff --git a/usr/src/cmd/svc/svccfg/svccfg_tmpl.c b/usr/src/cmd/svc/svccfg/svccfg_tmpl.c
index 2f17e6b85d..e7b71950f5 100644
--- a/usr/src/cmd/svc/svccfg/svccfg_tmpl.c
+++ b/usr/src/cmd/svc/svccfg/svccfg_tmpl.c
@@ -25,7 +25,7 @@
*/
/*
- * This file provides the code that allows svccfg(1M) to validate a
+ * This file provides the code that allows svccfg(8) to validate a
* manifest against the template specifications. svccfg uses the
* validation facilities for the import and validate subcommands.
*
diff --git a/usr/src/cmd/svc/svccfg/svccfg_xml.c b/usr/src/cmd/svc/svccfg/svccfg_xml.c
index c0810de2ab..70e62a83bd 100644
--- a/usr/src/cmd/svc/svccfg/svccfg_xml.c
+++ b/usr/src/cmd/svc/svccfg/svccfg_xml.c
@@ -552,7 +552,7 @@ lxml_store_value(value_t *v, element_t type, const xmlChar *value)
/*
* Although an SC_COUNT represents a uint64_t the use
* of a negative value is acceptable due to the usage
- * established by inetd(1M).
+ * established by inetd(8).
*/
errno = 0;
v->sc_u.sc_count = strtoull((char *)value, &endptr, 10);
@@ -1085,7 +1085,7 @@ lxml_get_exec_method(entity_t *entity, xmlNodePtr emeth)
/*
* Although an SC_COUNT represents a uint64_t the use
* of a negative value is acceptable due to the usage
- * established by inetd(1M).
+ * established by inetd(8).
*/
errno = 0;
u_timeout = strtoull((char *)timeout, &endptr, 10);
diff --git a/usr/src/cmd/svc/svcs/svcs.c b/usr/src/cmd/svc/svcs/svcs.c
index 402b40f4ca..9beb62047c 100644
--- a/usr/src/cmd/svc/svcs/svcs.c
+++ b/usr/src/cmd/svc/svcs/svcs.c
@@ -89,7 +89,7 @@
#define LEGACY_UNKNOWN "unknown"
/*
- * Per proc(4) when pr_nlwp, pr_nzomb, and pr_lwp.pr_lwpid are all 0,
+ * Per proc(5) when pr_nlwp, pr_nzomb, and pr_lwp.pr_lwpid are all 0,
* the process is a zombie.
*/
#define IS_ZOMBIE(_psip) \
@@ -1824,7 +1824,7 @@ description_of_column(int c)
switch (c) {
case 0:
- s = gettext("contract ID for service (see contract(4))");
+ s = gettext("contract ID for service (see contract(5))");
break;
case 1:
s = gettext("human-readable description of the service");
@@ -1921,7 +1921,7 @@ print_help(const char *progname)
"\t-z from global zone, show services in a specified zone\n"
"\t-Z from global zone, show services in all zones\n"
"\n\t"
- "Services can be specified using an FMRI, abbreviation, or fnmatch(5)\n"
+ "Services can be specified using an FMRI, abbreviation, or fnmatch(7)\n"
"\tpattern, as shown in these examples for svc:/network/smtp:sendmail\n"
"\n"
"\t%1$s [opts] svc:/network/smtp:sendmail\n"
diff --git a/usr/src/cmd/svr4pkg/libinst/open_package_datastream.c b/usr/src/cmd/svr4pkg/libinst/open_package_datastream.c
index 2896a99e80..4cc1965024 100644
--- a/usr/src/cmd/svr4pkg/libinst/open_package_datastream.c
+++ b/usr/src/cmd/svr4pkg/libinst/open_package_datastream.c
@@ -135,7 +135,7 @@ open_package_datastream(int a_argc, char **a_argv, char *a_spoolDir,
* _getvol verifies that the specified device is accessible and
* that a volume of the appropriate medium has been inserted.
* _getvol is in libadm.h - delivered by ON as part of SUNWcsl
- * is somewhat analagous to getvol(1M) - args are:
+ * is somewhat analagous to getvol(8) - args are:
* - char *device
* - char *label
* - int options
diff --git a/usr/src/cmd/svr4pkg/pkgadd/main.c b/usr/src/cmd/svr4pkg/pkgadd/main.c
index 4f05b28318..ee5e8e5f3f 100644
--- a/usr/src/cmd/svr4pkg/pkgadd/main.c
+++ b/usr/src/cmd/svr4pkg/pkgadd/main.c
@@ -631,7 +631,7 @@ main(int argc, char **argv)
/*
* Public interface: Identify a file or directory which
- * contains output from a previous pkgask(1M)
+ * contains output from a previous pkgask(8)
* session. This file supplies the interaction responses
* that would be requested by the package in interactive
* mode. response must be a full pathname.
@@ -698,7 +698,7 @@ main(int argc, char **argv)
/*
* Public interface: Install packages based on the value
* of the CATEGORY parameter stored in the package's
- * pkginfo(4) file. All packages on the source medium
+ * pkginfo(5) file. All packages on the source medium
* whose CATEGORY matches one of the specified categories
* will be selected for installation or spooling. Install
* packages that contain the same CATEGORY as the one
@@ -910,7 +910,7 @@ main(int argc, char **argv)
/*
* This function is in the libinst library; it reads the specified
- * admin(4) file and, using fpkgparam(), sets the global "adm" structure
+ * admin(5) file and, using fpkgparam(), sets the global "adm" structure
* values to match what is in the specified admin file.
*/
diff --git a/usr/src/cmd/svr4pkg/pkgcond/main.c b/usr/src/cmd/svr4pkg/pkgcond/main.c
index e5710241e4..b09129cd83 100644
--- a/usr/src/cmd/svr4pkg/pkgcond/main.c
+++ b/usr/src/cmd/svr4pkg/pkgcond/main.c
@@ -31,7 +31,7 @@
/*
* Program: pkgcond
*
- * Function: Implements the package command suite public utility pkgcond(1M)
+ * Function: Implements the package command suite public utility pkgcond(8)
*
* Usage: pkgcond [-nv] [-O debug] condition [ argument ]
*
diff --git a/usr/src/cmd/svr4pkg/pkginstall/main.c b/usr/src/cmd/svr4pkg/pkginstall/main.c
index 666d7e3a32..cbe50ebcb9 100644
--- a/usr/src/cmd/svr4pkg/pkginstall/main.c
+++ b/usr/src/cmd/svr4pkg/pkginstall/main.c
@@ -686,7 +686,7 @@ main(int argc, char *argv[])
/*
* Same as pkgadd: Identify a file or directory which
- * contains output from a previous pkgask(1M)
+ * contains output from a previous pkgask(8)
* session. This file supplies the interaction responses
* that would be requested by the package in interactive
* mode. response must be a full pathname.
diff --git a/usr/src/cmd/svr4pkg/pkgscripts/pkgserv.xml b/usr/src/cmd/svr4pkg/pkgscripts/pkgserv.xml
index fdc2102d7c..43ee6cc045 100644
--- a/usr/src/cmd/svr4pkg/pkgscripts/pkgserv.xml
+++ b/usr/src/cmd/svr4pkg/pkgscripts/pkgserv.xml
@@ -77,7 +77,7 @@
<template>
<common_name>
<loctext xml:lang='C'>
- Flush package command database to disk (see pkgadm(1m)).
+ Flush package command database to disk (see pkgadm(8)).
</loctext>
</common_name>
</template>
diff --git a/usr/src/cmd/swap/swap.c b/usr/src/cmd/swap/swap.c
index 6b4522745d..6370eeb23b 100644
--- a/usr/src/cmd/swap/swap.c
+++ b/usr/src/cmd/swap/swap.c
@@ -497,7 +497,7 @@ dumpadm_err(const char *warning)
{
(void) fprintf(stderr, "%s (%s):\n", warning, strerror(errno));
(void) fprintf(stderr, gettext(
- "run dumpadm(1M) to verify dump configuration\n"));
+ "run dumpadm(8) to verify dump configuration\n"));
}
static int
@@ -535,7 +535,7 @@ delete(char *path, off_t offset)
if (ioctl(fd, DIOCGETDEV, dumpdev) == -1) {
if (errno == ENODEV) {
(void) printf(gettext("%s was dump device --\n"
- "invoking dumpadm(1M) -d swap to "
+ "invoking dumpadm(8) -d swap to "
"select new dump device\n"), path);
/*
* Close /dev/dump prior to executing dumpadm
@@ -643,7 +643,7 @@ add(char *path, off_t offset, off_t cnt, int flags)
(void) printf(
gettext("operating system crash dump was previously "
- "disabled --\ninvoking dumpadm(1M) -d swap to select "
+ "disabled --\ninvoking dumpadm(8) -d swap to select "
"new dump device\n"));
if (system("/usr/sbin/dumpadm -ud swap") == -1)
diff --git a/usr/src/cmd/sysdef/sdevinfo.c b/usr/src/cmd/sysdef/sdevinfo.c
index 448833ae61..cc43f7b052 100644
--- a/usr/src/cmd/sysdef/sdevinfo.c
+++ b/usr/src/cmd/sysdef/sdevinfo.c
@@ -23,8 +23,6 @@
* Copyright (c) 1990 - 1997, Sun Microsystems, Inc.
*/
-#pragma ident "%Z%%M% %I% %E% SMI"
-
/*
* For machines that support the openprom, fetch and print the list
* of devices that the kernel has fetched from the prom or conjured up.
@@ -103,7 +101,7 @@ dump_node(di_node_t node, void *arg)
}
} else {
/*
- * prtconf(1M) compatible..
+ * prtconf(8) compatible..
*/
(void) printf("%s", di_node_name(node));
if (di_instance(node) >= 0)
diff --git a/usr/src/cmd/syseventd/etc/README b/usr/src/cmd/syseventd/etc/README
index 27287c08c0..c6fb286679 100644
--- a/usr/src/cmd/syseventd/etc/README
+++ b/usr/src/cmd/syseventd/etc/README
@@ -20,13 +20,13 @@
# CDDL HEADER END
#
#
-# ident "%Z%%M% %I% %E% SMI"
+
#
# Copyright (c) 2001 by Sun Microsystems, Inc.
# All rights reserved.
#
-Configuration files for syseventd(1M).
+Configuration files for syseventd(8).
These files are not intended to be edited and any changes made
will not be preserved across upgrades.
diff --git a/usr/src/cmd/syseventd/sysevent.xml b/usr/src/cmd/syseventd/sysevent.xml
index a136c877a0..3e3eb0e2d6 100644
--- a/usr/src/cmd/syseventd/sysevent.xml
+++ b/usr/src/cmd/syseventd/sysevent.xml
@@ -92,7 +92,7 @@
<documentation>
<manpage
title='syseventd'
- section='1M'
+ section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/syslogd/newsyslog b/usr/src/cmd/syslogd/newsyslog
index 09041e2833..71ba3c9df8 100644
--- a/usr/src/cmd/syslogd/newsyslog
+++ b/usr/src/cmd/syslogd/newsyslog
@@ -24,9 +24,9 @@
# Copyright (c) 1997-2001 by Sun Microsystems, Inc.
# All rights reserved.
#
-#ident "%Z%%M% %I% %E% SMI"
+
#
-# NOTE: This script is no longer used -- see logadm(1M)
+# NOTE: This script is no longer used -- see logadm(8)
#
# Running this script checks to see if /var/log/syslog or /var/adm/messages
# need rotating, according to the policies in /etc/logadm.conf. Since logadm
diff --git a/usr/src/cmd/syslogd/syslogd.dfl b/usr/src/cmd/syslogd/syslogd.dfl
index 3055a926b7..6035891e0d 100644
--- a/usr/src/cmd/syslogd/syslogd.dfl
+++ b/usr/src/cmd/syslogd/syslogd.dfl
@@ -1,4 +1,3 @@
-#ident "%Z%%M% %I% %E% SMI"
#
# CDDL HEADER START
#
@@ -24,14 +23,14 @@
#
# /etc/default/syslogd
#
-# Legacy configuration file for syslogd(1M). See syslogd(1M).
+# Legacy configuration file for syslogd(8). See syslogd(8).
#
# This file should no longer be directly used to configure syslogd.
# These settings are kept here for backwards compatibility only.
-# Please use svccfg(1M) to modify the properties of syslogd(1M).
+# Please use svccfg(8) to modify the properties of syslogd(8).
#
# The LOG_FROM_REMOTE setting used to affect the logging of remote
-# messages. Its definition here will override the svccfg(1M) settings
+# messages. Its definition here will override the svccfg(8) settings
# for log_from_remote.
#
#LOG_FROM_REMOTE=YES
diff --git a/usr/src/cmd/syslogd/system-log b/usr/src/cmd/syslogd/system-log
index 7f7ad92d96..d8b3eaf9d7 100644
--- a/usr/src/cmd/syslogd/system-log
+++ b/usr/src/cmd/syslogd/system-log
@@ -42,11 +42,11 @@ convert()
exit $SMF_EXIT_ERR_CONFIG
fi
fi
- echo "Incorporated ${OLD_CONF} settings into SMF. See syslogd(1m)."
+ echo "Incorporated ${OLD_CONF} settings into SMF. See syslogd(8)."
awk '{
if ($1 ~ /^LOG_FROM_REMOTE=/) {
print "# LOG_FROM_REMOTE is now set using "
- "svccfg(1m), see syslog(1m).";
+ "svccfg(8), see syslogd(8).";
} else {
print $0;
}
diff --git a/usr/src/cmd/syslogd/system-log.xml b/usr/src/cmd/syslogd/system-log.xml
index 8802d363b7..71cd75bf72 100644
--- a/usr/src/cmd/syslogd/system-log.xml
+++ b/usr/src/cmd/syslogd/system-log.xml
@@ -2,24 +2,24 @@
<!DOCTYPE service_bundle SYSTEM "/usr/share/lib/xml/dtd/service_bundle.dtd.1">
<!--
CDDL HEADER START
-
+
The contents of this file are subject to the terms of the
Common Development and Distribution License (the "License").
You may not use this file except in compliance with the License.
-
+
You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
or http://www.opensolaris.org/os/licensing.
See the License for the specific language governing permissions
and limitations under the License.
-
+
When distributing Covered Code, include this CDDL HEADER in each
file and include the License file at usr/src/OPENSOLARIS.LICENSE.
If applicable, add the following below this CDDL HEADER, with the
fields enclosed by brackets "[]" replaced with your own identifying
information: Portions Copyright [yyyy] [name of copyright owner]
-
+
CDDL HEADER END
-
+
Copyright 2009 Sun Microsystems, Inc. All rights reserved.
Use is subject to license terms.
@@ -51,7 +51,7 @@
</dependency>
<!--
- syslogd(1M) can log to non-root local directories.
+ syslogd(8) can log to non-root local directories.
-->
<dependency
name='filesystem'
@@ -62,7 +62,7 @@
</dependency>
<!--
- syslogd(1M) can log to automounted files.
+ syslogd(8) can log to automounted files.
-->
<dependency
name='autofs'
@@ -73,7 +73,7 @@
</dependency>
<!--
- syslogd(1M) needs nameservice resolution to log to remote hosts.
+ syslogd(8) needs nameservice resolution to log to remote hosts.
-->
<dependency
name='name-services'
@@ -119,7 +119,7 @@
</property_group>
<property_group name='config' type='application'>
- <!-- default property settings for syslogd(1m) -->
+ <!-- default property settings for syslogd(8) -->
<!-- Specifies whether remote messages are logged.
log_from_remote=false is equivalent to the -t
@@ -162,7 +162,7 @@
</loctext>
</common_name>
<documentation>
- <manpage title='syslogd' section='1M'
+ <manpage title='syslogd' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/th_tools/th_define.c b/usr/src/cmd/th_tools/th_define.c
index 955dc724fa..a196dc70e9 100644
--- a/usr/src/cmd/th_tools/th_define.c
+++ b/usr/src/cmd/th_tools/th_define.c
@@ -181,7 +181,7 @@ static FILE *outfile;
* the errdef become satisfied (in practice, this will occur when the access
* counts go to zero).
*
- * When the resulting errdef is activated using the th_manage(1M) user command
+ * When the resulting errdef is activated using the th_manage(8) user command
* utility, the bofi driver will act upon the errdef by matching the number of
* hardware accesses - specified in count, that are of the type specified in
* acc_types, made by instance number instance - of the driver whose name is
diff --git a/usr/src/cmd/tnf/prex/help.c b/usr/src/cmd/tnf/prex/help.c
index 4af6ee3317..33ca6c8821 100644
--- a/usr/src/cmd/tnf/prex/help.c
+++ b/usr/src/cmd/tnf/prex/help.c
@@ -23,8 +23,6 @@
* Copyright (c) 1994, by Sun Microsytems, Inc.
*/
-#pragma ident "%Z%%M% %I% %E% SMI"
-
#include <stdio.h>
#include <strings.h>
#include "expr.h"
@@ -85,7 +83,7 @@ static char *helptopicstrings[NUMHELPTOPICS] = {
"Controlling Kernel Probes\n"
"\n"
"The Solaris kernel is instrumented with a small number of strategically\n"
-"placed probes, documented in tnf_kernel_probes(4). The superuser can\n"
+"placed probes, documented in tnf_kernel_probes(5). The superuser can\n"
"control these probes by running prex with the \"-k\" option.\n"
"\n"
"In kernel mode, trace output is written to an in-core buffer, rather\n"
diff --git a/usr/src/cmd/troff/troff.d/tmac.d/an b/usr/src/cmd/troff/troff.d/tmac.d/an
index f4abe08263..2884709215 100644
--- a/usr/src/cmd/troff/troff.d/tmac.d/an
+++ b/usr/src/cmd/troff/troff.d/tmac.d/an
@@ -138,16 +138,14 @@
.if '\\$2'1' .ds ]D User Commands
.if '\\$2'1B' .ds ]D SunOS/BSD Compatibility Package Commands
.if '\\$2'1b' .ds ]D SunOS/BSD Compatibility Package Commands
-.if '\\$2'1C' .ds ]D Communication Commands
+.if '\\$2'1C' .ds ]D Communication Commands
.if '\\$2'1c' .ds ]D Communication Commands
-.if '\\$2'1F' .ds ]D FMLI Commands
+.if '\\$2'1F' .ds ]D FMLI Commands
.if '\\$2'1f' .ds ]D FMLI Commands
-.if '\\$2'1G' .ds ]D Graphics and CAD Commands
-.if '\\$2'1g' .ds ]D Graphics and CAD Commands
+.if '\\$2'1G' .ds ]D Graphics and CAD Commands
+.if '\\$2'1g' .ds ]D Graphics and CAD Commands
.if '\\$2'1HAS' .ds ]D User Commands
.if '\\$2'1has' .ds ]D User Commands
-.if '\\$2'1M' .ds ]D Maintenance Commands
-.if '\\$2'1m' .ds ]D Maintenance Commands
.if '\\$2'1S' .ds ]D SunOS Specific Commands
.if '\\$2'1s' .ds ]D SunOS Specific Commands
.if '\\$2'2' .ds ]D System Calls
@@ -328,29 +326,29 @@
.if '\\$2'3x' .ds ]D Miscellaneous Library Functions
.if '\\$2'3XC' .ds ]D X/Open Curses Library Functions
.if '\\$2'3xc' .ds ]D X/Open Curses Library Functions
-.if '\\$2'3XN' .ds ]D X/Open Networking Services Library Functions
+.if '\\$2'3XN' .ds ]D X/Open Networking Services Library Functions
.if '\\$2'3xn' .ds ]D X/Open Networking Services Library Functions
-.if '\\$2'4' .ds ]D File Formats
-.if '\\$2'4B' .ds ]D SunOS/BSD Compatibility Package File Formats
-.if '\\$2'4b' .ds ]D SunOS/BSD Compatibility Package File Formats
-.if '\\$2'5' .ds ]D Standards, Environments, and Macros
+.if '\\$2'4' .ds ]D Device and Network Interfaces
+.if '\\$2'4B' .ds ]D SunOS/BSD Compatibility Special Files
+.if '\\$2'4b' .ds ]D SunOS/BSD Compatibility Special Files
+.if '\\$2'4D' .ds ]D Devices
+.if '\\$2'4d' .ds ]D Devices
+.if '\\$2'4FS' .ds ]D File Systems
+.if '\\$2'4fs' .ds ]D File Systems
+.if '\\$2'4I' .ds ]D Ioctl Requests
+.if '\\$2'4i' .ds ]D Ioctl Requests
+.if '\\$2'4IPP' .ds ]D IP Quality of Service Modules
+.if '\\$2'4ipp' .ds ]D IP Quality of Service Modules
+.if '\\$2'4M' .ds ]D STREAMS Modules
+.if '\\$2'4m' .ds ]D STREAMS Modules
+.if '\\$2'4P' .ds ]D Protocols
+.if '\\$2'4p' .ds ]D Protocols
+.if '\\$2'5' .ds ]D File Formats
+.if '\\$2'5B' .ds ]D SunOS/BSD Compatibility Package File Formats
+.if '\\$2'5b' .ds ]D SunOS/BSD Compatibility Package File Formats
.if '\\$2'6' .ds ]D Games and Demos
-.if '\\$2'7' .ds ]D Device and Network Interfaces
-.if '\\$2'7B' .ds ]D SunOS/BSD Compatibility Special Files
-.if '\\$2'7b' .ds ]D SunOS/BSD Compatibility Special Files
-.if '\\$2'7D' .ds ]D Devices
-.if '\\$2'7d' .ds ]D Devices
-.if '\\$2'7FS' .ds ]D File Systems
-.if '\\$2'7fs' .ds ]D File Systems
-.if '\\$2'7I' .ds ]D Ioctl Requests
-.if '\\$2'7i' .ds ]D Ioctl Requests
-.if '\\$2'7IPP' .ds ]D IP Quality of Service Modules
-.if '\\$2'7ipp' .ds ]D IP Quality of Service Modules
-.if '\\$2'7M' .ds ]D STREAMS Modules
-.if '\\$2'7m' .ds ]D STREAMS Modules
-.if '\\$2'7P' .ds ]D Protocols
-.if '\\$2'7p' .ds ]D Protocols
-.if '\\$2'8' .ds ]D Maintenance Procedures
+.if '\\$2'7' .ds ]D Standards, Environments, and Macros
+.if '\\$2'8' .ds ]D Maintenance Commands and Procedures
.if '\\$2'8C' .ds ]D Maintenance Procedures
.if '\\$2'8c' .ds ]D Maintenance Procedures
.if '\\$2'8S' .ds ]D Maintenance Procedures
diff --git a/usr/src/cmd/troff/troff.d/tmac.d/ansun b/usr/src/cmd/troff/troff.d/tmac.d/ansun
index f1303bccd3..0893087b80 100644
--- a/usr/src/cmd/troff/troff.d/tmac.d/ansun
+++ b/usr/src/cmd/troff/troff.d/tmac.d/ansun
@@ -1,6 +1,5 @@
-.\" Copyright Notice
-.\" ident "%Z%%M% %I% %E% SMI"
-.\"Notice of copyright on this source code product does not indicate
+.\" Copyright Notice
+.\"Notice of copyright on this source code product does not indicate
.\"publication.
.\"
.\" Copyright 2005 Sun Microsystems, Inc. All rights reserved.
@@ -201,7 +200,7 @@
. ds ]L
. ds T1 \\*(]W
. ds ]W
-. bp
+. bp
. \}
. \}
.\}
@@ -209,14 +208,12 @@
.if '\\$2'1' .ds ]D User Commands
.if '\\$2'1B' .ds ]D SunOS/BSD Compatibility Package Commands
.if '\\$2'1b' .ds ]D SunOS/BSD Compatibility Package Commands
-.if '\\$2'1C' .ds ]D Communication Commands
+.if '\\$2'1C' .ds ]D Communication Commands
.if '\\$2'1c' .ds ]D Communication Commands
-.if '\\$2'1F' .ds ]D FMLI Commands
+.if '\\$2'1F' .ds ]D FMLI Commands
.if '\\$2'1f' .ds ]D FMLI Commands
-.if '\\$2'1G' .ds ]D Graphics and CAD Commands
-.if '\\$2'1g' .ds ]D Graphics and CAD Commands
-.if '\\$2'1M' .ds ]D Maintenance Commands
-.if '\\$2'1m' .ds ]D Maintenance Commands
+.if '\\$2'1G' .ds ]D Graphics and CAD Commands
+.if '\\$2'1g' .ds ]D Graphics and CAD Commands
.if '\\$2'1S' .ds ]D SunOS Specific Commands
.if '\\$2'1s' .ds ]D SunOS Specific Commands
.if '\\$2'2' .ds ]D System Calls
@@ -333,27 +330,29 @@
.if '\\$2'3x' .ds ]D Miscellaneous Library Functions
.if '\\$2'3XC' .ds ]D X/Open Curses Library Functions
.if '\\$2'3xc' .ds ]D X/Open Curses Library Functions
-.if '\\$2'3XN' .ds ]D X/Open Networking Services Library Functions
+.if '\\$2'3XN' .ds ]D X/Open Networking Services Library Functions
.if '\\$2'3xn' .ds ]D X/Open Networking Services Library Functions
-.if '\\$2'4' .ds ]D File Formats
-.if '\\$2'4B' .ds ]D SunOS/BSD Compatibility Package File Formats
-.if '\\$2'4b' .ds ]D SunOS/BSD Compatibility Package File Formats
-.if '\\$2'5' .ds ]D Standards, Environments, and Macros
+.if '\\$2'4' .ds ]D Device and Network Interfaces
+.if '\\$2'4B' .ds ]D SunOS/BSD Compatibility Special Files
+.if '\\$2'4b' .ds ]D SunOS/BSD Compatibility Special Files
+.if '\\$2'4D' .ds ]D Devices
+.if '\\$2'4d' .ds ]D Devices
+.if '\\$2'4FS' .ds ]D File Systems
+.if '\\$2'4fs' .ds ]D File Systems
+.if '\\$2'4I' .ds ]D Ioctl Requests
+.if '\\$2'4i' .ds ]D Ioctl Requests
+.if '\\$2'4IPP' .ds ]D IP Quality of Service Modules
+.if '\\$2'4ipp' .ds ]D IP Quality of Service Modules
+.if '\\$2'4M' .ds ]D STREAMS Modules
+.if '\\$2'4m' .ds ]D STREAMS Modules
+.if '\\$2'4P' .ds ]D Protocols
+.if '\\$2'4p' .ds ]D Protocols
+.if '\\$2'5' .ds ]D File Formats
+.if '\\$2'5B' .ds ]D SunOS/BSD Compatibility Package File Formats
+.if '\\$2'5b' .ds ]D SunOS/BSD Compatibility Package File Formats
.if '\\$2'6' .ds ]D Games and Demos
-.if '\\$2'7' .ds ]D Device and Network Interfaces
-.if '\\$2'7B' .ds ]D SunOS/BSD Compatibility Special Files
-.if '\\$2'7b' .ds ]D SunOS/BSD Compatibility Special Files
-.if '\\$2'7D' .ds ]D Devices
-.if '\\$2'7d' .ds ]D Devices
-.if '\\$2'7FS' .ds ]D File Systems
-.if '\\$2'7fs' .ds ]D File Systems
-.if '\\$2'7I' .ds ]D Ioctl Requests
-.if '\\$2'7i' .ds ]D Ioctl Requests
-.if '\\$2'7M' .ds ]D STREAMS Modules
-.if '\\$2'7m' .ds ]D STREAMS Modules
-.if '\\$2'7P' .ds ]D Protocols
-.if '\\$2'7p' .ds ]D Protocols
-.if '\\$2'8' .ds ]D Maintenance Procedures
+.if '\\$2'7' .ds ]D Standards, Environments, and Macros
+.if '\\$2'8' .ds ]D Maintenance Commands and Procedures
.if '\\$2'8C' .ds ]D Maintenance Procedures
.if '\\$2'8c' .ds ]D Maintenance Procedures
.if '\\$2'8S' .ds ]D Maintenance Procedures
@@ -467,7 +466,7 @@
.ie \\$1RETURN \{
. if \\$2VALUES \{
. ds s1 \\$1\\ \\$2
-. ds s2
+. ds s2
. \}
.\}
.el \{\
@@ -501,7 +500,7 @@
.de }X
.if t .rs
.}E
-.if t .in \\$1
+.if t .in \\$1
.if n .ti \\$1
.sp \\n()Pu
.sp \\n()Pu
@@ -509,7 +508,7 @@
.ne 2
.if t .mk #H
.if t .nr )R 1i
-.if n .nr )R 0n
+.if n .nr )R 0n
.fi
.it 1 }N
.if t .ll 1.25i
@@ -581,7 +580,7 @@
..
. # small and boldface
.de SB
-.ps -1
+.ps -1
.it 1 }N
.if !"\\$1"" \&\f3\\$1 \\$2 \\$3 \\$4 \\$5 \\$6
..
@@ -597,7 +596,7 @@
.ne 2
.}E
.nr )I .5i
-.ns
+.ns
..
. # paragraph distance
.de PD
diff --git a/usr/src/cmd/troff/troff.d/tmac.d/tz.map b/usr/src/cmd/troff/troff.d/tmac.d/tz.map
index 61b6fa3c4d..6166ad5c31 100644
--- a/usr/src/cmd/troff/troff.d/tmac.d/tz.map
+++ b/usr/src/cmd/troff/troff.d/tmac.d/tz.map
@@ -65,13 +65,13 @@
.if '\\$1'PROGUTILS' .ds Tz "Programming Utilities Guide
.if '\\$1'REFMAN' .ds Tz "SunOS Reference Manual
.if '\\$1'REFMAN1' .ds Tz "man Pages(1): User Commands
-.if '\\$1'REFMAN1M' .ds Tz "man Pages(1M): System Administration Commands
.if '\\$1'REFMAN2' .ds Tz "man Pages(2): System Calls
.if '\\$1'REFMAN3' .ds Tz "man Pages(3): Library Routines
-.if '\\$1'REFMAN4' .ds Tz "man Pages(4): File Formats
-.if '\\$1'REFMAN5' .ds Tz "man Pages(5): Headers, Tables and Macros
+.if '\\$1'REFMAN4' .ds Tz "man Pages(4): Device and Network Interfaces
+.if '\\$1'REFMAN5' .ds Tz "man Pages(5): File Formats
.if '\\$1'REFMAN6' .ds Tz "man Pages(6): Demos
-.if '\\$1'REFMAN7' .ds Tz "man Pages(7): Device and Network Interfaces
+.if '\\$1'REFMAN7' .ds Tz "man Pages(7): Headers, Tables and Macros
+.if '\\$1'REFMAN8' .ds Tz "man Pages(8): System Administration Commands
.if '\\$1'REFMAN9' .ds Tz "man Pages(9): Device Driver Interfaces
.if '\\$1'REFMAN9E' .ds Tz "man Pages(9E): Driver Entry Points
.if '\\$1'REFMAN9F' .ds Tz "man Pages(9F): Kernel Functions for Drivers
diff --git a/usr/src/cmd/truss/main.c b/usr/src/cmd/truss/main.c
index 9b7d7bac54..4be915b37b 100644
--- a/usr/src/cmd/truss/main.c
+++ b/usr/src/cmd/truss/main.c
@@ -2003,7 +2003,7 @@ xcreat(char *path)
/*
* Make sure it's not one of 0, 1, or 2.
- * This allows truss to work when spawned by init(1m).
+ * This allows truss to work when spawned by init(8).
*/
if (0 <= fd && fd <= 2) {
int dfd = fcntl(fd, F_DUPFD, 3);
diff --git a/usr/src/cmd/tsol/labeld/svc-labeld b/usr/src/cmd/tsol/labeld/svc-labeld
index ed8f0ab647..d2f0143892 100644
--- a/usr/src/cmd/tsol/labeld/svc-labeld
+++ b/usr/src/cmd/tsol/labeld/svc-labeld
@@ -366,7 +366,7 @@ case "$1" in
# native
if [ -z "$SMF_FMRI" ]; then
- echo "$0: this script can only be invoked by smf(5)"
+ echo "$0: this script can only be invoked by smf(7)"
exit $SMF_EXIT_ERR_NOSMF
fi
diff --git a/usr/src/cmd/tsol/tnctl/tnctl.xml b/usr/src/cmd/tsol/tnctl/tnctl.xml
index 0960d6b118..68c08c1032 100644
--- a/usr/src/cmd/tsol/tnctl/tnctl.xml
+++ b/usr/src/cmd/tsol/tnctl/tnctl.xml
@@ -22,8 +22,6 @@
Copyright 2007 Sun Microsystems, Inc. All rights reserved.
Use is subject to license terms.
-
- ident "%Z%%M% %I% %E% SMI"
-->
<service_bundle type='manifest' name='SUNWtsg:tnctl'>
@@ -81,7 +79,7 @@
</loctext>
</common_name>
<documentation>
- <manpage title='tnctl' section='1M'
+ <manpage title='tnctl' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/tsol/tnd/tnd.xml b/usr/src/cmd/tsol/tnd/tnd.xml
index 7bcec09138..f45d9828f1 100644
--- a/usr/src/cmd/tsol/tnd/tnd.xml
+++ b/usr/src/cmd/tsol/tnd/tnd.xml
@@ -23,7 +23,6 @@
Copyright 2007 Sun Microsystems, Inc. All rights reserved.
Use is subject to license terms.
- ident "%Z%%M% %I% %E% SMI"
-->
<service_bundle type='manifest' name='SUNWtsg:tnd'>
@@ -118,7 +117,7 @@
</loctext>
</common_name>
<documentation>
- <manpage title='tnd' section='1M'
+ <manpage title='tnd' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/tsol/tsol-zones/tsol-zones.xml b/usr/src/cmd/tsol/tsol-zones/tsol-zones.xml
index bb157c457a..c91e22552b 100644
--- a/usr/src/cmd/tsol/tsol-zones/tsol-zones.xml
+++ b/usr/src/cmd/tsol/tsol-zones/tsol-zones.xml
@@ -69,7 +69,7 @@
<documentation>
<manpage
title='tsol'
- section='5'
+ section='7'
manpath='/usr/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/tsol/zones/SUNWtsoldef.xml b/usr/src/cmd/tsol/zones/SUNWtsoldef.xml
index cc0cf6f47c..49c77dd9f4 100644
--- a/usr/src/cmd/tsol/zones/SUNWtsoldef.xml
+++ b/usr/src/cmd/tsol/zones/SUNWtsoldef.xml
@@ -22,7 +22,7 @@
Copyright 2010 Sun Microsystems, Inc. All rights reserved.
Use is subject to license terms.
- DO NOT EDIT THIS FILE. Use zonecfg(1M) instead.
+ DO NOT EDIT THIS FILE. Use zonecfg(8) instead.
-->
<!DOCTYPE zone PUBLIC "-//Sun Microsystems Inc//DTD Zones//EN" "file:///usr/share/lib/xml/dtd/zonecfg.dtd.1">
diff --git a/usr/src/cmd/uadmin/uadmin.c b/usr/src/cmd/uadmin/uadmin.c
index 25fd7f8f7d..896060df6b 100644
--- a/usr/src/cmd/uadmin/uadmin.c
+++ b/usr/src/cmd/uadmin/uadmin.c
@@ -47,7 +47,7 @@
#include <sys/wait.h>
#define SMF_RST "/etc/svc/volatile/resetting"
-#define RETRY_COUNT 15 /* number of 1 sec retries for audit(1M) to complete */
+#define RETRY_COUNT 15 /* number of 1 sec retries for audit(8) to complete */
static const char *Usage = "Usage: %s cmd fcn [mdep]\n";
@@ -411,7 +411,7 @@ change_audit_file(void)
int retries = RETRY_COUNT;
/*
- * Wait for audit(1M) -n process to complete
+ * Wait for audit(8) -n process to complete
*
*/
do {
diff --git a/usr/src/cmd/utmpd/utmp.xml b/usr/src/cmd/utmpd/utmp.xml
index 5e16f07f3d..7070b3940f 100644
--- a/usr/src/cmd/utmpd/utmp.xml
+++ b/usr/src/cmd/utmpd/utmp.xml
@@ -24,8 +24,6 @@
CDDL HEADER END
- ident "%Z%%M% %I% %E% SMI"
-
NOTE: This service manifest is not editable; its contents will
be overwritten by package or patch operations, including
operating system upgrade. Make customizations in a different
@@ -84,9 +82,9 @@
</loctext>
</common_name>
<documentation>
- <manpage title='utmpd' section='1M'
+ <manpage title='utmpd' section='8'
manpath='/usr/share/man' />
- <manpage title='utmpx' section='4'
+ <manpage title='utmpx' section='5'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/utmpd/utmpd.c b/usr/src/cmd/utmpd/utmpd.c
index d1abc313b8..74a9238a81 100644
--- a/usr/src/cmd/utmpd/utmpd.c
+++ b/usr/src/cmd/utmpd/utmpd.c
@@ -51,7 +51,7 @@
* the process has removed its entry it cleans the entry when the
* the process terminates.
* The AT&T Copyright above is there since we borrowed the pipe
- * mechanism from init(1m).
+ * mechanism from init(8).
*/
@@ -1093,7 +1093,7 @@ warn_utmp()
if (lstat(UTMP_FILE, &s) == 0 &&
s.st_size % sizeof (struct utmp) == 0) {
nonfatal("WARNING: /var/adm/utmp exists!\nSee "
- "utmp(4) for more information");
+ "utmp(5) for more information");
}
}
diff --git a/usr/src/cmd/varpd/varpd.c b/usr/src/cmd/varpd/varpd.c
index cfba560e9f..84283cce5c 100644
--- a/usr/src/cmd/varpd/varpd.c
+++ b/usr/src/cmd/varpd/varpd.c
@@ -22,7 +22,7 @@
*
* varpd's purpose it to provide a means for looking up the destination on the
* underlay network for a host on an overlay network and to also be a door
- * server such that dladm(1M) via libdladm can configure and get useful status
+ * server such that dladm(8) via libdladm can configure and get useful status
* information. The heavy lifting is all done by libvarpd and the various lookup
* plugins.
*
diff --git a/usr/src/cmd/vntsd/auth.c b/usr/src/cmd/vntsd/auth.c
index e3c3e6995f..439e2c876f 100644
--- a/usr/src/cmd/vntsd/auth.c
+++ b/usr/src/cmd/vntsd/auth.c
@@ -45,7 +45,7 @@
* such as 'root'); the group name in this example is "ldg1" :
* solaris.vntsd.console-ldg1:::Access Specific LDoms Guest Console::
*
- * Specific users are authorized with usermod(1M). To add an authorization
+ * Specific users are authorized with usermod(8). To add an authorization
* (to /etc/user_attr) type a command similar to this (when user NOT
* logged in):
*
diff --git a/usr/src/cmd/vntsd/svc-vntsd b/usr/src/cmd/vntsd/svc-vntsd
index 3bea6c0274..0711252b18 100644
--- a/usr/src/cmd/vntsd/svc-vntsd
+++ b/usr/src/cmd/vntsd/svc-vntsd
@@ -25,7 +25,7 @@
# Start script for vntsd
#
# For modifying parameters passed to vntsd, do not edit
-# this script. Instead use svccfg(1m) to modify the SMF
+# this script. Instead use svccfg(8) to modify the SMF
# repository. For example:
#
# svccfg
diff --git a/usr/src/cmd/vntsd/vntsd.xml b/usr/src/cmd/vntsd/vntsd.xml
index 4d04e07162..ed623c402a 100644
--- a/usr/src/cmd/vntsd/vntsd.xml
+++ b/usr/src/cmd/vntsd/vntsd.xml
@@ -68,7 +68,7 @@
<!-- these are passed to vntsd in the method script -->
<property_group name='vntsd' type='application'>
- <propval name='vcc_device' type='astring'
+ <propval name='vcc_device' type='astring'
value='virtual-console-concentrator@0' />
<propval name='listen_addr' type='astring' value='localhost' />
<propval name='timeout_minutes' type='integer' value='0' />
@@ -84,7 +84,7 @@
</loctext>
</common_name>
<documentation>
- <manpage title='vntsd' section='1M'
+ <manpage title='vntsd' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/vscan/vscand/vs_main.c b/usr/src/cmd/vscan/vscand/vs_main.c
index bcc4a055ae..5e13bf5870 100644
--- a/usr/src/cmd/vscan/vscand/vs_main.c
+++ b/usr/src/cmd/vscan/vscand/vs_main.c
@@ -139,7 +139,7 @@ vscand_sig_handler(int sig)
/*
* main
*
- * main must return SMF return code (see smf_method (5)) if vscand
+ * main must return SMF return code (see smf_method(7)) if vscand
* is invoked directly by smf (see manifest: vscan.xml)
* Exit codes: SMF_EXIT_ERR_CONFIG - error
* SMF_EXIT_ERR_FATAL - fatal error
diff --git a/usr/src/cmd/vscan/vscand/vscan.xml b/usr/src/cmd/vscan/vscand/vscan.xml
index 87648f4f26..d8b750e3d1 100644
--- a/usr/src/cmd/vscan/vscand/vscan.xml
+++ b/usr/src/cmd/vscan/vscand/vscan.xml
@@ -116,7 +116,7 @@
<loctext xml:lang='C'> VSCAN Service daemon</loctext>
</common_name>
<documentation>
- <manpage title='vscand' section='1M'
+ <manpage title='vscand' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/vt/vtdaemon.c b/usr/src/cmd/vt/vtdaemon.c
index 585f23a6db..a64b5d00e7 100644
--- a/usr/src/cmd/vt/vtdaemon.c
+++ b/usr/src/cmd/vt/vtdaemon.c
@@ -26,7 +26,7 @@
/*
* vtdaemon is responsible for the session secure switch via hotkeys.
*
- * vtdaemon itself, like ttymon(1M), is also running on a virtual
+ * vtdaemon itself, like ttymon(8), is also running on a virtual
* console device (/dev/vt/1), and provides a text console session
* for password input and authentication. The /dev/vt/1 special text
* console is reserved and end users cannot switch to it via hotkeys.
diff --git a/usr/src/cmd/xargs/xargs.c b/usr/src/cmd/xargs/xargs.c
index d16ff2fc16..7e46ad1135 100644
--- a/usr/src/cmd/xargs/xargs.c
+++ b/usr/src/cmd/xargs/xargs.c
@@ -718,7 +718,7 @@ getarg(char *arg)
*
* Assumes that message has already been gettext()'d. It would be
* nice if we could just do the gettext() here, but we can't, since
- * since xgettext(1M) wouldn't be able to pick up our error message.
+ * since xgettext(1) wouldn't be able to pick up our error message.
*/
/* PRINTFLIKE1 */
static void
diff --git a/usr/src/cmd/xvm/ipagent/ipagent.xml b/usr/src/cmd/xvm/ipagent/ipagent.xml
index 05ae970ab9..9c020cefef 100644
--- a/usr/src/cmd/xvm/ipagent/ipagent.xml
+++ b/usr/src/cmd/xvm/ipagent/ipagent.xml
@@ -74,7 +74,7 @@
</loctext>
</common_name>
<documentation>
- <manpage title='xVM' section='5'
+ <manpage title='xVM' section='7'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/ypcmd/client.xml b/usr/src/cmd/ypcmd/client.xml
index b7c1c587a1..d77f79fe6d 100644
--- a/usr/src/cmd/ypcmd/client.xml
+++ b/usr/src/cmd/ypcmd/client.xml
@@ -98,7 +98,7 @@
</loctext>
</common_name>
<documentation>
- <manpage title='ypstart' section='1M'
+ <manpage title='ypstart' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/ypcmd/net_files/publickey b/usr/src/cmd/ypcmd/net_files/publickey
index dd81478400..db1c6ef27a 100644
--- a/usr/src/cmd/ypcmd/net_files/publickey
+++ b/usr/src/cmd/ypcmd/net_files/publickey
@@ -19,11 +19,11 @@
#
# CDDL HEADER END
#
-#ident "%Z%%M% %I% %E% SMI" /* SVr4.0 1.2 */
+
# Public Key Database
#
# To add an entry to this file, an administrator should use the command
-# newkey(1M) on the local machine.
+# newkey(8) on the local machine.
# Non root users are not allowed to change their key-pair in this file.
# Entries in this file are only available to services on the local host
# and can be compromised. Hence, we recommend that Users store their
diff --git a/usr/src/cmd/ypcmd/server.xml b/usr/src/cmd/ypcmd/server.xml
index e0baf7a0fa..affa1037e0 100644
--- a/usr/src/cmd/ypcmd/server.xml
+++ b/usr/src/cmd/ypcmd/server.xml
@@ -24,8 +24,6 @@
CDDL HEADER END
- ident "%Z%%M% %I% %E% SMI"
-
NOTE: This service manifest is not editable; its contents will
be overwritten by package or patch operations, including
operating system upgrade. Make customizations in a different
@@ -86,7 +84,7 @@
</loctext>
</common_name>
<documentation>
- <manpage title='ypserv' section='1M'
+ <manpage title='ypserv' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/ypcmd/xfr.xml b/usr/src/cmd/ypcmd/xfr.xml
index 805b64abb6..17acdd0c72 100644
--- a/usr/src/cmd/ypcmd/xfr.xml
+++ b/usr/src/cmd/ypcmd/xfr.xml
@@ -24,8 +24,6 @@
CDDL HEADER END
- ident "%Z%%M% %I% %E% SMI"
-
NOTE: This service manifest is not editable; its contents will
be overwritten by package or patch operations, including
operating system upgrade. Make customizations in a different
@@ -78,7 +76,7 @@
</loctext>
</common_name>
<documentation>
- <manpage title='ypxfrd' section='1M'
+ <manpage title='ypxfrd' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/ypcmd/yp2lscripts/inityp2l.sh b/usr/src/cmd/ypcmd/yp2lscripts/inityp2l.sh
index 1d3ad768a1..f4e41fdc6b 100644
--- a/usr/src/cmd/ypcmd/yp2lscripts/inityp2l.sh
+++ b/usr/src/cmd/ypcmd/yp2lscripts/inityp2l.sh
@@ -293,7 +293,7 @@ HELP - The bind DN of the proxy user the ypserv to read or write
to read and modify LDAP data. There is no default value. If
the value ends with a comma, the value of the context for
the current domain (as defined by a nisLDAPdomainContext
- attribute (NISLDAPmapping(4))) is appended.
+ attribute (NISLDAPmapping(5))) is appended.
EOF
;;
@@ -2030,8 +2030,8 @@ put_config_file_copyright_info
echo "\
#
-# Configuration file for ypserv(1M); see ypserv(4) for more information,
-# and NISLDAPmapping(4) for configuration of NIS to LDAP mapping.
+# Configuration file for ypserv(8); see ypserv(5) for more information,
+# and NISLDAPmapping(5) for configuration of NIS to LDAP mapping.
# Unless otherwise noted, commented lines show default values.
" >> $CONFIG_FILE
@@ -3746,7 +3746,7 @@ nisLDAPnameFields passwd: \
#
# It is believed that 'min','max' and 'def' labels were reserved fields in
# SunOS 4.x and are now unused. 'always' and 'never' audit information is
-# now contained in audit_user(4) so is now unused.
+# now contained in audit_user(5) so is now unused.
#
' >> $MAP_FILE
diff --git a/usr/src/cmd/ypcmd/yppasswd/passwd.xml b/usr/src/cmd/ypcmd/yppasswd/passwd.xml
index 763af491e8..a1f9d5cdca 100644
--- a/usr/src/cmd/ypcmd/yppasswd/passwd.xml
+++ b/usr/src/cmd/ypcmd/yppasswd/passwd.xml
@@ -24,8 +24,6 @@
CDDL HEADER END
- ident "%Z%%M% %I% %E% SMI"
-
NOTE: This service manifest is not editable; its contents will
be overwritten by package or patch operations, including
operating system upgrade. Make customizations in a different
@@ -78,7 +76,7 @@
</loctext>
</common_name>
<documentation>
- <manpage title='rpc.yppasswdd' section='1M'
+ <manpage title='rpc.yppasswdd' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/ypcmd/ypupdated/update.xml b/usr/src/cmd/ypcmd/ypupdated/update.xml
index 0515239573..42fe6cb065 100644
--- a/usr/src/cmd/ypcmd/ypupdated/update.xml
+++ b/usr/src/cmd/ypcmd/ypupdated/update.xml
@@ -24,8 +24,6 @@
CDDL HEADER END
- ident "%Z%%M% %I% %E% SMI"
-
NOTE: This service manifest is not editable; its contents will
be overwritten by package or patch operations, including
operating system upgrade. Make customizations in a different
@@ -78,7 +76,7 @@
</loctext>
</common_name>
<documentation>
- <manpage title='rpc.ypupdated' section='1M'
+ <manpage title='rpc.ypupdated' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/zfs/zfs_main.c b/usr/src/cmd/zfs/zfs_main.c
index 89ad29c4c0..7e81e2143b 100644
--- a/usr/src/cmd/zfs/zfs_main.c
+++ b/usr/src/cmd/zfs/zfs_main.c
@@ -6308,7 +6308,7 @@ share_mount_one(zfs_handle_t *zhp, int op, int flags, char *protocol,
(void) fprintf(stderr, gettext("cannot share '%s': "
"legacy share\n"), zfs_get_name(zhp));
- (void) fprintf(stderr, gettext("use share(1M) to "
+ (void) fprintf(stderr, gettext("use share(8) to "
"share this filesystem, or set "
"sharenfs property on\n"));
return (1);
@@ -6325,7 +6325,7 @@ share_mount_one(zfs_handle_t *zhp, int op, int flags, char *protocol,
(void) fprintf(stderr, gettext("cannot %s '%s': "
"legacy mountpoint\n"), cmdname, zfs_get_name(zhp));
- (void) fprintf(stderr, gettext("use %s(1M) to "
+ (void) fprintf(stderr, gettext("use %s(8) to "
"%s this filesystem\n"), cmdname, cmdname);
return (1);
}
@@ -6826,7 +6826,7 @@ unshare_unmount_path(int op, char *path, int flags, boolean_t is_manual)
(void) fprintf(stderr, gettext("cannot unshare "
"'%s': legacy share\n"), path);
(void) fprintf(stderr, gettext("use "
- "unshare(1M) to unshare this filesystem\n"));
+ "unshare(8) to unshare this filesystem\n"));
} else if (!zfs_is_shared(zhp)) {
(void) fprintf(stderr, gettext("cannot unshare '%s': "
"not currently shared\n"), path);
@@ -6845,7 +6845,7 @@ unshare_unmount_path(int op, char *path, int flags, boolean_t is_manual)
(void) fprintf(stderr, gettext("cannot unmount "
"'%s': legacy mountpoint\n"),
zfs_get_name(zhp));
- (void) fprintf(stderr, gettext("use umount(1M) "
+ (void) fprintf(stderr, gettext("use umount(8) "
"to unmount this filesystem\n"));
} else {
ret = zfs_unmountall(zhp, flags);
@@ -7101,7 +7101,7 @@ unshare_unmount(int op, int argc, char **argv)
"unshare '%s': legacy share\n"),
zfs_get_name(zhp));
(void) fprintf(stderr, gettext("use "
- "unshare(1M) to unshare this "
+ "unshare(8) to unshare this "
"filesystem\n"));
ret = 1;
} else if (!zfs_is_shared(zhp)) {
@@ -7120,7 +7120,7 @@ unshare_unmount(int op, int argc, char **argv)
"unmount '%s': legacy "
"mountpoint\n"), zfs_get_name(zhp));
(void) fprintf(stderr, gettext("use "
- "umount(1M) to unmount this "
+ "umount(8) to unmount this "
"filesystem\n"));
ret = 1;
} else if (!zfs_is_mounted(zhp, NULL)) {
@@ -7249,7 +7249,7 @@ manual_mount(int argc, char **argv)
"instead.\n"), path);
(void) fprintf(stderr, gettext("If you must use 'mount -F zfs' "
"or /etc/vfstab, use 'zfs set mountpoint=legacy'.\n"));
- (void) fprintf(stderr, gettext("See zfs(1M) for more "
+ (void) fprintf(stderr, gettext("See zfs(8) for more "
"information.\n"));
ret = 1;
}
diff --git a/usr/src/cmd/zlogin/zlogin.c b/usr/src/cmd/zlogin/zlogin.c
index fb219918c5..5438549648 100644
--- a/usr/src/cmd/zlogin/zlogin.c
+++ b/usr/src/cmd/zlogin/zlogin.c
@@ -39,7 +39,7 @@
* "already authenticated") is employed to take care of the initialization
* of the user's session.
*
- * - "non-interactive login" is similar to su(1M); the user could issue
+ * - "non-interactive login" is similar to su(8); the user could issue
* 'zlogin my-zone ls -l' and the command would be run as specified.
* In this mode, zlogin sets up pipes as the communication channel, and
* 'su' is used to do the login setup work.
@@ -1043,7 +1043,7 @@ retry:
}
/*
- * Fetch the user_cmd brand hook for getting a user's passwd(4) entry.
+ * Fetch the user_cmd brand hook for getting a user's passwd(5) entry.
*/
static const char *
zone_get_user_cmd(brand_handle_t bh, const char *login, char *user_cmd,
@@ -1164,8 +1164,8 @@ zone_login_cmd(brand_handle_t bh, const char *login)
}
/*
- * Prepare argv array for exec'd process. If commands are passed to the new
- * process and su(1M) is avalable, use it for the invocation. Otherwise, use
+ * Prepare argv array for exec'd process; if we're passing commands to the
+ * new process, then use su(8) to do the invocation. Otherwise, use
* 'login -z <from_zonename> -f' (-z is an undocumented option which tells
* login that we're coming from another zone, and to disregard its CONSOLE
* checks).
@@ -1716,7 +1716,7 @@ noninteractive_login(char *zonename, const char *user_cmd, zoneid_t zoneid,
* When the user types ^D, we get a zero length message on STDIN.
* We need to echo that down the pipe to send it to the other side;
* but by default, pipes don't propagate zero-length messages. We
- * toggle that behavior off using I_SWROPT. See streamio(7i).
+ * toggle that behavior off using I_SWROPT. See streamio(4I).
*/
if (ioctl(stdin_pipe[0], I_SWROPT, SNDZERO) != 0) {
zperror(gettext("could not configure STDIN pipe"));
@@ -2376,7 +2376,7 @@ main(int argc, char **argv)
/*
* Get the brand specific user_cmd. This command is used to get
- * a passwd(4) entry for login.
+ * a passwd(5) entry for login.
*/
if (!interactive && !failsafe) {
if (zone_get_user_cmd(bh, login, user_cmd,
diff --git a/usr/src/cmd/zoneadm/resource-mgmt.xml b/usr/src/cmd/zoneadm/resource-mgmt.xml
index 264f26733f..75ee87b210 100644
--- a/usr/src/cmd/zoneadm/resource-mgmt.xml
+++ b/usr/src/cmd/zoneadm/resource-mgmt.xml
@@ -23,8 +23,6 @@
CDDL HEADER END
- ident "%Z%%M% %I% %E% SMI"
-
NOTE: This service manifest is not editable; its contents will
be overwritten by package or patch operations, including
operating system upgrade. Make customizations in a different
@@ -104,10 +102,10 @@
</loctext>
</common_name>
<documentation>
- <manpage title='zones' section='5' manpath='/usr/share/man' />
+ <manpage title='zones' section='7' manpath='/usr/share/man' />
<manpage
title='zonecfg'
- section='1M'
+ section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/zoneadm/svc-zones b/usr/src/cmd/zoneadm/svc-zones
index 41f6b3325f..09a9dc4d10 100644
--- a/usr/src/cmd/zoneadm/svc-zones
+++ b/usr/src/cmd/zoneadm/svc-zones
@@ -160,7 +160,7 @@ shutdown_zones()
[ ! -x /usr/sbin/zoneadm ] && exit 0 # SUNWzoneu not installed
if [ -z "$SMF_FMRI" ]; then
- echo "this script can only be invoked by smf(5)"
+ echo "this script can only be invoked by smf(7)"
exit $SMF_EXIT_ERR_NOSMF
fi
diff --git a/usr/src/cmd/zoneadm/zoneadm.c b/usr/src/cmd/zoneadm/zoneadm.c
index 3487dcc7e6..05a5006e42 100644
--- a/usr/src/cmd/zoneadm/zoneadm.c
+++ b/usr/src/cmd/zoneadm/zoneadm.c
@@ -229,7 +229,7 @@ long_help(int cmd_num)
return (gettext("Print usage message."));
case CMD_BOOT:
return (gettext("Activates (boots) specified zone. See "
- "zoneadm(1m) for valid boot\n\targuments."));
+ "zoneadm(8) for valid boot\n\targuments."));
case CMD_HALT:
return (gettext("Halts specified zone, bypassing shutdown "
"scripts and removing runtime\n\tresources of the zone."));
@@ -239,11 +239,11 @@ long_help(int cmd_num)
case CMD_SHUTDOWN:
return (gettext("Gracefully shutdown the zone or reboot if "
"the '-r' option is specified.\n\t"
- "See zoneadm(1m) for valid boot arguments."));
+ "See zoneadm(8) for valid boot arguments."));
case CMD_REBOOT:
return (gettext("Restarts the zone (equivalent to a halt / "
"boot sequence).\n\tFails if the zone is not active. "
- "See zoneadm(1m) for valid boot\n\targuments."));
+ "See zoneadm(8) for valid boot\n\targuments."));
case CMD_LIST:
return (gettext("Lists the current zones, or a "
"specific zone if indicated. By default,\n\tall "
@@ -267,12 +267,12 @@ long_help(int cmd_num)
case CMD_INSTALL:
return (gettext("Install the configuration on to the system. "
"All arguments are passed to the brand installation "
- "function;\n\tsee brands(5) for more information."));
+ "function;\n\tsee brands(7) for more information."));
case CMD_UNINSTALL:
return (gettext("Uninstall the configuration from the system. "
"The -F flag can be used\n\tto force the action. All "
"other arguments are passed to the brand\n\tuninstall "
- "function; see brands(5) for more information."));
+ "function; see brands(7) for more information."));
case CMD_CLONE:
return (gettext("Clone the installation of another zone. "
"The -m option can be used to\n\tspecify 'copy' which "
@@ -282,7 +282,7 @@ long_help(int cmd_num)
"snapshot will be used as the source\n\tinstead of "
"creating a new ZFS snapshot. All other arguments are "
"passed\n\tto the brand clone function; see "
- "brands(5) for more information."));
+ "brands(7) for more information."));
case CMD_MOVE:
return (gettext("Move the zone to a new zonepath."));
case CMD_DETACH:
@@ -295,7 +295,7 @@ long_help(int cmd_num)
"needed to attach\n\tthe zone is sent to standard output "
"but the zone is not actually\n\tdetached. All other "
"arguments are passed to the brand detach function;\n\tsee "
- "brands(5) for more information."));
+ "brands(7) for more information."));
case CMD_ATTACH:
return (gettext("Attach the zone to the system. The zone "
"state must be 'configured'\n\tprior to attach; upon "
@@ -311,7 +311,7 @@ long_help(int cmd_num)
"can\n\tbe '-' to specify standard input. The -F and -n "
"options are mutually\n\texclusive. All other arguments "
"are passed to the brand attach\n\tfunction; see "
- "brands(5) for more information."));
+ "brands(7) for more information."));
case CMD_MARK:
return (gettext("Set the state of the zone. This can be used "
"to force the zone\n\tstate to 'incomplete' "
@@ -1546,16 +1546,16 @@ sanity_check(char *zone, int cmd_num, boolean_t need_running,
if (getzoneid() != GLOBAL_ZONEID) {
switch (cmd_num) {
case CMD_HALT:
- zerror(gettext("use %s to %s this zone."), "halt(1M)",
+ zerror(gettext("use %s to %s this zone."), "halt(8)",
cmd_to_str(cmd_num));
break;
case CMD_SHUTDOWN:
zerror(gettext("use %s to %s this zone."),
- "shutdown(1M)", cmd_to_str(cmd_num));
+ "shutdown(8)", cmd_to_str(cmd_num));
break;
case CMD_REBOOT:
zerror(gettext("use %s to %s this zone."),
- "reboot(1M)", cmd_to_str(cmd_num));
+ "reboot(8)", cmd_to_str(cmd_num));
break;
default:
zerror(gettext("must be in the global zone to %s a "
@@ -2341,7 +2341,7 @@ free_local_netifs(int if_cnt, struct net_if **if_list)
/*
* Get a list of the network interfaces, along with their address families,
- * that are plumbed in the global zone. See if_tcp(7p) for a description
+ * that are plumbed in the global zone. See if_tcp(4P) for a description
* of the ioctls used here.
*/
static int
@@ -2682,10 +2682,10 @@ no_net:
modctl(MODLOAD, 1, "fs/lofs", NULL) != 0) {
if (errno == ENXIO)
(void) fprintf(stderr, gettext("could not verify "
- "lofs(7FS): possibly excluded in /etc/system\n"));
+ "lofs(4FS): possibly excluded in /etc/system\n"));
else
(void) fprintf(stderr, gettext("could not verify "
- "lofs(7FS): %s\n"), strerror(errno));
+ "lofs(4FS): %s\n"), strerror(errno));
return_code = Z_ERR;
}
@@ -5262,7 +5262,7 @@ check_sched_fss(zone_dochandle_t handle)
"FSS is not the default scheduling class for this zone. "
"FSS will be\nused for processes in the zone but to get "
"the full benefit of FSS,\nit should be the default "
- "scheduling class. See dispadmin(1M) for\nmore details."));
+ "scheduling class. See dispadmin(8) for\nmore details."));
return (Z_SYSTEM);
}
diff --git a/usr/src/cmd/zoneadm/zones.xml b/usr/src/cmd/zoneadm/zones.xml
index b094bc660b..91b9f0eda4 100644
--- a/usr/src/cmd/zoneadm/zones.xml
+++ b/usr/src/cmd/zoneadm/zones.xml
@@ -109,10 +109,10 @@
</loctext>
</common_name>
<documentation>
- <manpage title='zones' section='5' manpath='/usr/share/man' />
+ <manpage title='zones' section='7' manpath='/usr/share/man' />
<manpage
title='zonecfg'
- section='1M'
+ section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/zoneadmd/vplat.c b/usr/src/cmd/zoneadmd/vplat.c
index bc276fd079..d38d78c0cf 100644
--- a/usr/src/cmd/zoneadmd/vplat.c
+++ b/usr/src/cmd/zoneadmd/vplat.c
@@ -1286,7 +1286,7 @@ mount_one(zlog_t *zlogp, struct zone_fstab *fsptr, const char *rootpath,
/*
* In general the strategy here is to do just as much verification as
* necessary to avoid crashing or otherwise doing something bad; if the
- * administrator initiated the operation via zoneadm(1m), they'll get
+ * administrator initiated the operation via zoneadm(8), they'll get
* auto-verification which will let them know what's wrong. If they
* modify the zone configuration of a running zone, and don't attempt
* to verify that it's OK, then we won't crash but won't bother trying
@@ -2243,6 +2243,9 @@ configure_one_interface(zlog_t *zlogp, zoneid_t zone_id,
if (ioctl(s, SIOCLIFADDIF, (caddr_t)&lifr) < 0) {
/*
* Here, we know that the interface can't be brought up.
+ * A similar warning message was already printed out to
+ * the console by zoneadm(8) so instead we log the
+ * message to syslog and continue.
*/
(void) close(s);
return (Z_OK);
@@ -2385,7 +2388,7 @@ configure_one_interface(zlog_t *zlogp, zoneid_t zone_id,
*/
char buffer[INET6_ADDRSTRLEN];
void *addr;
- const char *nomatch = "no matching subnet found in netmasks(4)";
+ const char *nomatch = "no matching subnet found in netmasks(5)";
if (af == AF_INET)
addr = &((struct sockaddr_in *)
@@ -4201,7 +4204,7 @@ get_zone_label(zlog_t *zlogp, priv_set_t *privs)
if (zcent == NULL) {
zerror(zlogp, B_FALSE, "zone requires a label assignment. "
- "See tnzonecfg(4)");
+ "See tnzonecfg(5)");
} else {
if (zlabel == NULL)
zlabel = m_label_alloc(MAC_LABEL);
@@ -4431,7 +4434,7 @@ setup_zone_rm(zlog_t *zlogp, char *zone_name, zoneid_t zoneid)
"scheduling class for\nthis zone. FSS will be "
"used for processes\nin the zone but to get the "
"full benefit of FSS,\nit should be the default "
- "scheduling class.\nSee dispadmin(1M) for more "
+ "scheduling class.\nSee dispadmin(8) for more "
"details.");
if (zone_setattr(zoneid, ZONE_ATTR_SCHED_CLASS, "FSS",
@@ -4474,7 +4477,7 @@ setup_zone_rm(zlog_t *zlogp, char *zone_name, zoneid_t zoneid)
"enabled.\nThe system will not dynamically adjust the\n"
"processor allocation within the specified range\n"
"until svc:/system/pools/dynamic is enabled.\n"
- "See poold(1M).");
+ "See poold(8).");
}
/* The following is a warning, not an error. */
diff --git a/usr/src/cmd/zoneadmd/zcons.c b/usr/src/cmd/zoneadmd/zcons.c
index efc3c390d4..09a9f9ba8e 100644
--- a/usr/src/cmd/zoneadmd/zcons.c
+++ b/usr/src/cmd/zoneadmd/zcons.c
@@ -29,8 +29,8 @@
/*
* Console support for zones requires a significant infrastructure. The
* core pieces are contained in this file, but other portions of note
- * are in the zlogin(1M) command, the zcons(7D) driver, and in the
- * devfsadm(1M) misc_link generator.
+ * are in the zlogin(1) command, the zcons(4D) driver, and in the
+ * devfsadm(8) misc_link generator.
*
* Care is taken to make the console behave in an "intuitive" fashion for
* administrators. Essentially, we try as much as possible to mimic the
@@ -71,7 +71,7 @@
* to online new instances of zcons as needed. Care is taken to
* prune and manage these appropriately; see init_console_dev() and
* destroy_console_dev(). The end result is the creation of the
- * zcons(7D) instance and an open file descriptor to the manager side.
+ * zcons(4D) instance and an open file descriptor to the manager side.
* zcons instances are associated with zones via their zonename device
* property. This the console instance to persist across reboots,
* and while the zone is halted.
diff --git a/usr/src/cmd/zoneadmd/zoneadmd.c b/usr/src/cmd/zoneadmd/zoneadmd.c
index ba17c587a4..1c38d5b282 100644
--- a/usr/src/cmd/zoneadmd/zoneadmd.c
+++ b/usr/src/cmd/zoneadmd/zoneadmd.c
@@ -36,7 +36,7 @@
* console device; configure process runtime attributes such as resource
* controls, pool bindings, fine-grained privileges.
*
- * - Launch the zone's init(1M) process.
+ * - Launch the zone's init(8) process.
*
* - Implement a door server; clients (like zoneadm) connect to the door
* server and request zone state changes. The kernel is also a client of
@@ -316,7 +316,8 @@ strnappend(char *dest, size_t destsize, const char *src)
}
/*
- * Since illumos boot arguments are getopt(3c) compatible (see kernel(1m)), we
+ * Emit a warning for any boot arguments which are unrecognized. Since
+ * Solaris boot arguments are getopt(3c) compatible (see kernel(8)), we
* put the arguments into an argv style array, use getopt to process them,
* and put the resultant argument string back into outargs. Non-native brands
* may support alternate forms of boot arguments so we must handle that as well.
@@ -1337,10 +1338,10 @@ zone_bootup(zlog_t *zlogp, const char *bootargs, int zstate, boolean_t debug)
goto bad;
}
- /* Get the path for this zone's init(1M) (or equivalent) process. */
+ /* Get the path for this zone's init(8) (or equivalent) process. */
if (get_initname(bh, init_file, MAXPATHLEN) != 0) {
zerror(zlogp, B_FALSE,
- "unable to determine zone's init(1M) location");
+ "unable to determine zone's init(8) location");
brand_close(bh);
goto bad;
}
@@ -2220,7 +2221,7 @@ setup_door(zlog_t *zlogp)
}
/*
- * zoneadm(1m) will start zoneadmd if it thinks it isn't running; this
+ * zoneadm(8) will start zoneadmd if it thinks it isn't running; this
* is where zoneadmd itself will check to see that another instance of
* zoneadmd isn't already controlling this zone.
*
@@ -2235,7 +2236,7 @@ setup_door(zlog_t *zlogp)
* There is no fattach(3c)ed door, so we have a chance of becoming
* the managing zoneadmd. We attempt to lock the file: if it is
* already locked, that means someone else raced us here, so we
- * lose and give up. zoneadm(1m) will try to contact the zoneadmd
+ * lose and give up. zoneadm(8) will try to contact the zoneadmd
* that beat us to it.
*
* - If the file we opened is a namefs file:
@@ -2245,7 +2246,7 @@ setup_door(zlog_t *zlogp)
* will succeed in acquiring it since the vnode locked by the
* "winning" zoneadmd was a regular one, and the one we locked was
* the fattach(3c)'ed door node. At any rate, no harm is done, and
- * we just return to zoneadm(1m) which knows to retry.
+ * we just return to zoneadm(8) which knows to retry.
*/
static int
make_daemon_exclusive(zlog_t *zlogp)
@@ -2303,7 +2304,7 @@ top:
*
* If the door has been revoked, the zoneadmd
* process currently managing the zone is going
- * away. We'll return control to zoneadm(1m)
+ * away. We'll return control to zoneadm(8)
* which will try again (by which time zoneadmd
* will hopefully have exited).
*/
diff --git a/usr/src/cmd/zonecfg/zonecfg.c b/usr/src/cmd/zonecfg/zonecfg.c
index 20f30e6e0c..f7bd684606 100644
--- a/usr/src/cmd/zonecfg/zonecfg.c
+++ b/usr/src/cmd/zonecfg/zonecfg.c
@@ -1117,7 +1117,7 @@ usage(boolean_t verbose, uint_t flags)
cmd_to_str(CMD_REMOVE), pt_to_str(PT_OPTIONS),
gettext("<file-system options>"));
(void) fprintf(fp, gettext("Consult the file-system "
- "specific manual page, such as mount_ufs(1M), "
+ "specific manual page, such as mount_ufs(8), "
"for\ndetails about file-system options. Note "
"that any file-system options with an\nembedded "
"'=' character must be enclosed in double quotes, "
@@ -1145,7 +1145,7 @@ usage(boolean_t verbose, uint_t flags)
pt_to_str(PT_GNIC), gettext("<global zone NIC>"));
(void) fprintf(fp, "\t%s %s=%s\n", cmd_to_str(CMD_SET),
pt_to_str(PT_VLANID), gettext("<vlan ID>"));
- (void) fprintf(fp, gettext("See ifconfig(1M) for "
+ (void) fprintf(fp, gettext("See ifconfig(8) for "
"details of the <interface> string.\n"));
(void) fprintf(fp, gettext("%s %s is valid "
"if the %s property is set to %s, otherwise it "
@@ -4554,7 +4554,7 @@ valid_fs_type(const char *type)
strcmp(type, ".") == 0 || strcmp(type, "..") == 0)
return (B_FALSE);
/*
- * More detailed verification happens later by zoneadm(1m).
+ * More detailed verification happens later by zoneadm(8).
*/
return (B_TRUE);
}
@@ -6456,7 +6456,7 @@ brand_verify(zone_dochandle_t handle)
}
/*
- * Track the network interfaces listed in zonecfg(1m) in a linked list
+ * Track the network interfaces listed in zonecfg(8) in a linked list
* so that we can later check that defrouter is specified for an exclusive IP
* zone if and only if at least one allowed-address has been specified.
*/
diff --git a/usr/src/cmd/zonecfg/zonecfg_grammar.y b/usr/src/cmd/zonecfg/zonecfg_grammar.y
index d8b2fadb2f..107f8252a8 100644
--- a/usr/src/cmd/zonecfg/zonecfg_grammar.y
+++ b/usr/src/cmd/zonecfg/zonecfg_grammar.y
@@ -26,7 +26,7 @@
*/
/*
- * This file defines zonecfg(1M)'s grammar.
+ * This file defines zonecfg(8)'s grammar.
*
* Reduction rules that consume TOKENs must invoke claim_token() immediately
* before freeing the TOKENs or adding them to data structures (e.g., cmd) that
diff --git a/usr/src/cmd/zonestat/zonestat/zonestat.c b/usr/src/cmd/zonestat/zonestat/zonestat.c
index 358c31c4fa..c65344dec7 100644
--- a/usr/src/cmd/zonestat/zonestat/zonestat.c
+++ b/usr/src/cmd/zonestat/zonestat/zonestat.c
@@ -288,7 +288,7 @@ zonestat_usage(boolean_t explicit)
" \"%s\"\n"
" \"%s\"\n"
" Name of a pool processor set\n"
-" Id of a processor set created with psrset(1m)\n"
+" Id of a processor set created with psrset(8)\n"
" Name of a zone using dedicated-cpu\n"),
"-z", "-n",
ZONESTAT_NAME_MEM_DEFAULT, ZONESTAT_NAME_VM_DEFAULT);
diff --git a/usr/src/cmd/zonestat/zonestatd/zonestat.xml b/usr/src/cmd/zonestat/zonestatd/zonestat.xml
index e756cc273a..86287e73d4 100644
--- a/usr/src/cmd/zonestat/zonestatd/zonestat.xml
+++ b/usr/src/cmd/zonestat/zonestatd/zonestat.xml
@@ -40,11 +40,11 @@
<single_instance/>
<dependency
- name='fs'
- grouping='require_any'
- restart_on='none'
- type='service'>
- <service_fmri value='svc:/system/filesystem/minimal' />
+ name='fs'
+ grouping='require_any'
+ restart_on='none'
+ type='service'>
+ <service_fmri value='svc:/system/filesystem/minimal' />
</dependency>
<dependency
@@ -56,11 +56,11 @@
</dependency>
<dependency
- name='process_accounting'
- grouping='optional_all'
- restart_on='none'
- type='service'>
- <service_fmri value='svc:/system/extended-accounting:process' />
+ name='process_accounting'
+ grouping='optional_all'
+ restart_on='none'
+ type='service'>
+ <service_fmri value='svc:/system/extended-accounting:process' />
</dependency>
<dependency
@@ -100,17 +100,17 @@
<property_group name='config' type='application'>
<propval name='sample_interval' type='count' value='5' />
- <propval name='value_authorization' type='astring'
- value='solaris.zones.manage' />
+ <propval name='value_authorization' type='astring'
+ value='solaris.zones.manage' />
</property_group>
- <property_group name='general' type='framework'>
- <!-- to start/stop zones monitoring service -->
- <propval name='action_authorization' type='astring'
- value='solaris.zones.manage' />
- <propval name='value_authorization' type='astring'
- value='solaris.zones.manage' />
- </property_group>
+ <property_group name='general' type='framework'>
+ <!-- to start/stop zones monitoring service -->
+ <propval name='action_authorization' type='astring'
+ value='solaris.zones.manage' />
+ <propval name='value_authorization' type='astring'
+ value='solaris.zones.manage' />
+ </property_group>
<stability value='Stable' />
@@ -121,7 +121,7 @@
</loctext>
</common_name>
<documentation>
- <manpage title='zonestatd' section='1M'
+ <manpage title='zonestatd' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/cmd/zpool/zpool_main.c b/usr/src/cmd/zpool/zpool_main.c
index 43da32d439..5eb4eacc46 100644
--- a/usr/src/cmd/zpool/zpool_main.c
+++ b/usr/src/cmd/zpool/zpool_main.c
@@ -503,7 +503,7 @@ usage(boolean_t requested)
(void) fprintf(fp, "YES disabled | enabled | active\n");
(void) fprintf(fp, gettext("\nThe feature@ properties must be "
- "appended with a feature name.\nSee zpool-features(5).\n"));
+ "appended with a feature name.\nSee zpool-features(7).\n"));
}
/*
@@ -7194,7 +7194,7 @@ status_callback(zpool_handle_t *zhp, void *data)
(void) printf(gettext("action: Enable all features using "
"'zpool upgrade'. Once this is done,\n\tthe pool may no "
"longer be accessible by software that does not support\n\t"
- "the features. See zpool-features(5) for details.\n"));
+ "the features. See zpool-features(7) for details.\n"));
break;
case ZPOOL_STATUS_UNSUP_FEAT_READ:
@@ -7715,7 +7715,7 @@ upgrade_list_disabled_cb(zpool_handle_t *zhp, void *arg)
"pool may become incompatible with "
"software\nthat does not support "
"the feature. See "
- "zpool-features(5) for "
+ "zpool-features(7) for "
"details.\n\n"));
(void) printf(gettext("POOL "
"FEATURE\n"));
diff --git a/usr/src/cmd/zpool/zpool_vdev.c b/usr/src/cmd/zpool/zpool_vdev.c
index 652bece3ab..88acaa7f81 100644
--- a/usr/src/cmd/zpool/zpool_vdev.c
+++ b/usr/src/cmd/zpool/zpool_vdev.c
@@ -295,7 +295,7 @@ check_file(const char *file, boolean_t force, boolean_t isspare)
libdiskmgt_error(err);
else
vdev_error(gettext("%s is currently used by swap. "
- "Please see swap(1M).\n"), file);
+ "Please see swap(8).\n"), file);
return (-1);
}
diff --git a/usr/src/common/smbios/mktables.sh b/usr/src/common/smbios/mktables.sh
index 7256eedfb8..8cb9d60052 100644
--- a/usr/src/common/smbios/mktables.sh
+++ b/usr/src/common/smbios/mktables.sh
@@ -31,7 +31,7 @@
#
# The SMBIOS interfaces defined in <sys/smbios.h> include a set of integer-to-
# string conversion routines for the various constants defined in the SMBIOS
-# spec. These functions are used by smbios(1M) and prtdiag(1M) and can be
+# spec. These functions are used by smbios(8) and prtdiag(8) and can be
# leveraged by other clients as well. To simplify maintenance of the source
# base, this shell script automatically generates the source code for all of
# these functions from the <sys/smbios.h> header file and its comments. Each
diff --git a/usr/src/common/svc/repcache_protocol.h b/usr/src/common/svc/repcache_protocol.h
index 07504a467e..a334cea34a 100644
--- a/usr/src/common/svc/repcache_protocol.h
+++ b/usr/src/common/svc/repcache_protocol.h
@@ -34,7 +34,7 @@
* 1. Introduction
* ---------------
* This header file defines the private protocols between libscf(3lib) and
- * svc.configd(1m). There are two separate protocols:
+ * svc.configd(8). There are two separate protocols:
*
* 1. The 'global' protocol, accessible via an fattach(3C)ed door located
* at REPOSITORY_DOOR_NAME.
@@ -50,7 +50,7 @@
* 1. If libscf(3lib) recieves an EINTR from door_call(), it doesn't know
* whether or not the server recieved (and is processing) its request.
*
- * 2. When svc.configd(1M) calls door_return(), the client may have already
+ * 2. When svc.configd(8) calls door_return(), the client may have already
* received an EINTR, aborting its door_call(). In this case, the
* returned values are dropped on the floor.
*
diff --git a/usr/src/common/util/string.c b/usr/src/common/util/string.c
index de22fb78d9..8e1247f381 100644
--- a/usr/src/common/util/string.c
+++ b/usr/src/common/util/string.c
@@ -61,7 +61,7 @@
* described by <fmt, args> as possible. The string will always be
* null-terminated, so the maximum string length is 'buflen - 1'.
* Returns the number of bytes that would be necessary to render the
- * entire string, not including null terminator (just like vsnprintf(3S)).
+ * entire string, not including null terminator (just like vsnprintf(3C)).
* To determine buffer size in advance, use vsnprintf(NULL, 0, fmt, args) + 1.
*
* There is no support for floating point, and the C locale is assumed.
diff --git a/usr/src/common/zfs/zfs_prop.c b/usr/src/common/zfs/zfs_prop.c
index 6f633147a3..434e5bc90d 100644
--- a/usr/src/common/zfs/zfs_prop.c
+++ b/usr/src/common/zfs/zfs_prop.c
@@ -396,14 +396,14 @@ zfs_prop_init(void)
PROP_INHERIT, ZFS_TYPE_FILESYSTEM, "<path> | legacy | none",
"MOUNTPOINT");
zprop_register_string(ZFS_PROP_SHARENFS, "sharenfs", "off",
- PROP_INHERIT, ZFS_TYPE_FILESYSTEM, "on | off | share(1M) options",
+ PROP_INHERIT, ZFS_TYPE_FILESYSTEM, "on | off | share(8) options",
"SHARENFS");
zprop_register_string(ZFS_PROP_TYPE, "type", NULL, PROP_READONLY,
ZFS_TYPE_DATASET | ZFS_TYPE_BOOKMARK,
"filesystem | volume | snapshot | bookmark", "TYPE");
zprop_register_string(ZFS_PROP_SHARESMB, "sharesmb", "off",
PROP_INHERIT, ZFS_TYPE_FILESYSTEM,
- "on | off | sharemgr(1M) options", "SHARESMB");
+ "on | off | sharemgr(8) options", "SHARESMB");
zprop_register_string(ZFS_PROP_MLSLABEL, "mlslabel",
ZFS_MLSLABEL_DEFAULT, PROP_INHERIT, ZFS_TYPE_DATASET,
"<sensitivity label>", "MLSLABEL");
diff --git a/usr/src/contrib/ast/src/cmd/ksh93/Makefile b/usr/src/contrib/ast/src/cmd/ksh93/Makefile
index f56a1e1cc0..b285b12e7e 100644
--- a/usr/src/contrib/ast/src/cmd/ksh93/Makefile
+++ b/usr/src/contrib/ast/src/cmd/ksh93/Makefile
@@ -40,7 +40,7 @@ SHOPT_MULTIBYTE == 1 /* multibyte character handling */
SHOPT_NAMESPACE == 1 /* allow namespaces */
SHOPT_OLDTERMIO == /* support both TCGETA and TCGETS */
SHOPT_OPTIMIZE == 1 /* optimize loop invariants */
-SHOPT_PFSH == 1 /* solaris exec_attr(4) profile execution */
+SHOPT_PFSH == 1 /* solaris exec_attr(5) profile execution */
SHOPT_P_SUID == /* real uid's that require -p for set[ug]id */
SHOPT_RAWONLY == 1 /* make viraw the only vi mode */
SHOPT_REGRESS == /* enable __regress__ builtin and instrumented intercepts for testing */
diff --git a/usr/src/contrib/ast/src/cmd/ksh93/sh/path.c b/usr/src/contrib/ast/src/cmd/ksh93/sh/path.c
index 73670fe833..926dee5c06 100644
--- a/usr/src/contrib/ast/src/cmd/ksh93/sh/path.c
+++ b/usr/src/contrib/ast/src/cmd/ksh93/sh/path.c
@@ -121,7 +121,7 @@ static pid_t path_pfexecve(Shell_t *shp,const char *path, char *argv[],char *con
/* system call so we can save us to call access(2) first */
/* we can exec the command directly instead of via pfexec(1) if */
- /* there is a matching entry without attributes in exec_attr(4) */
+ /* there is a matching entry without attributes in exec_attr(5) */
if(!path_xattr(shp,path,resolvedpath))
return(execve(path, argv, envp));
--argv;
diff --git a/usr/src/contrib/ast/src/lib/libcmd/expr.c b/usr/src/contrib/ast/src/lib/libcmd/expr.c
index a19b042215..8a30c3b0d0 100644
--- a/usr/src/contrib/ast/src/lib/libcmd/expr.c
+++ b/usr/src/contrib/ast/src/lib/libcmd/expr.c
@@ -107,7 +107,7 @@ USAGE_LICENSE
"[+2?Invalid expressions.]"
"[+>2?An error occurred.]"
"}"
-"[+SEE ALSO?\bregcomp\b(5), \bgrep\b(1), \bsh\b(1)]"
+"[+SEE ALSO?\bregex\b(5), \bgrep\b(1), \bsh\b(1)]"
;
#include <cmd.h>
diff --git a/usr/src/data/terminfo/termcap.src b/usr/src/data/terminfo/termcap.src
index ba9fa1b3df..e77b43694c 100644
--- a/usr/src/data/terminfo/termcap.src
+++ b/usr/src/data/terminfo/termcap.src
@@ -96,7 +96,7 @@
# library can handle multiple tc capabilities in an entry. 4.4BSD has this
# capability. Older versions of GNU termcap, through 1.3, do not.
#
-# For details on these formats, see terminfo(5) in the ncurses distribution,
+# For details on these formats, see terminfo(7) in the ncurses distribution,
# and termcap(5) in the 4.4BSD Unix Programmer's Manual. Be aware that 4.4BSD
# curses has been declared obsolete by the caretakers of the 4.4BSD sources
# as of June 1995; they are encouraging everyone to migrate to ncurses.
diff --git a/usr/src/data/terminfo/terminfo.src b/usr/src/data/terminfo/terminfo.src
index dfa1b722b3..0a265bc9b1 100644
--- a/usr/src/data/terminfo/terminfo.src
+++ b/usr/src/data/terminfo/terminfo.src
@@ -96,7 +96,7 @@
# library can handle multiple tc capabilities in an entry. 4.4BSD has this
# capability. Older versions of GNU termcap, through 1.3, do not.
#
-# For details on these formats, see terminfo(5) in the ncurses distribution,
+# For details on these formats, see terminfo(7) in the ncurses distribution,
# and termcap(5) in the 4.4BSD Unix Programmer's Manual. Be aware that 4.4BSD
# curses has been declared obsolete by the caretakers of the 4.4BSD sources
# as of June 1995; they are encouraging everyone to migrate to ncurses.
diff --git a/usr/src/data/zoneinfo/README b/usr/src/data/zoneinfo/README
index adcc2258f7..b43f23531d 100644
--- a/usr/src/data/zoneinfo/README
+++ b/usr/src/data/zoneinfo/README
@@ -1,7 +1,7 @@
Copyright (c) 1999, 2010, Oracle and/or its affiliates. All rights reserved.
The /usr/share/lib/zoneinfo/src directory contains zoneinfo timezone source
-files. These source files have been compiled using zic(1M) to create
+files. These source files have been compiled using zic(8) to create
the zoneinfo data files in /usr/share/lib/zoneinfo. The zic command can be
used with the zoneinfo source files to create additional data files.
@@ -13,7 +13,7 @@ the zoneinfo files is based on tzdata2010k.tar.gz.
The /usr/share/lib/zoneinfo/GMT[+-]* timezones listed below have been
removed from the release. Replace usage of the
/usr/share/lib/zoneinfo/GMT[+-]* files with the equivalent quoted timezone
-(see environ(5)). Note the signs of the offsets of the equivalent quoted
+(see environ(7)). Note the signs of the offsets of the equivalent quoted
timezone are reversed from the signs of the /usr/share/lib/zoneinfo/GMT[+-]*
files.
@@ -63,5 +63,5 @@ offset from standard time, and could return incorrect values. This affects
64-bit versions of interfaces such as ascftime(3C), cftime(3C), ctime(3C),
getdate(3C), ftime(3C), mktime(3C), and localtime(3C).
-For more information see zic(1M), zdump(1M), environ(5), TIMEZONE(4),
+For more information see zic(8), zdump(8), environ(7), TIMEZONE(5),
ctime(3C), and mktime(3C) man pages.
diff --git a/usr/src/grub/grub-0.97/stage2/tparm.c b/usr/src/grub/grub-0.97/stage2/tparm.c
index 6e35002a42..7c6e26544f 100644
--- a/usr/src/grub/grub-0.97/stage2/tparm.c
+++ b/usr/src/grub/grub-0.97/stage2/tparm.c
@@ -71,7 +71,7 @@ typedef char grub_bool;
* tparm(string, ...)
*
* Substitute the given parameters into the given string by the following
- * rules (taken from terminfo(5)):
+ * rules (taken from terminfo(7)):
*
* Cursor addressing and other strings requiring parame-
* ters in the terminal are described by a parameterized string
diff --git a/usr/src/grub/menu.lst b/usr/src/grub/menu.lst
index e72a53e76d..b5500f6ada 100644
--- a/usr/src/grub/menu.lst
+++ b/usr/src/grub/menu.lst
@@ -46,8 +46,8 @@ timeout 10
# module$ /platform/i86pc/$ISADIR/boot_archive
#
-# To override Solaris boot args (see kernel(1M)), console device and
-# properties set via eeprom(1M) edit the "kernel" line to:
+# To override Solaris boot args (see kernel(8)), console device and
+# properties set via eeprom(8) edit the "kernel" line to:
#
# kernel /platform/i86pc/kernel/unix <boot-args> -B prop1=val1,prop2=val2,...
#
diff --git a/usr/src/head/arpa/inet.h b/usr/src/head/arpa/inet.h
index 5b72bee523..03a8e9c321 100644
--- a/usr/src/head/arpa/inet.h
+++ b/usr/src/head/arpa/inet.h
@@ -54,7 +54,7 @@ extern "C" {
/*
* External definitions for
- * functions in inet(3N)
+ * functions in inet(3C)
*/
#if !defined(_XPG4_2) || defined(__EXTENSIONS__)
extern int inet_net_pton(int, const char *, void *, size_t);
diff --git a/usr/src/head/dlfcn.h b/usr/src/head/dlfcn.h
index f150e90bc3..bc61ba064e 100644
--- a/usr/src/head/dlfcn.h
+++ b/usr/src/head/dlfcn.h
@@ -125,7 +125,7 @@ extern Dl_amd64_unwindinfo *dlamd64getunwind(void *, Dl_amd64_unwindinfo *);
#endif /* !defined(_XOPEN_SOURCE) || defined(__EXTENSIONS__) */
/*
- * Valid values for handle argument to dlsym(3x).
+ * Valid values for handle argument to dlsym(3C).
*/
#define RTLD_NEXT (void *)-1 /* look in `next' dependency */
#define RTLD_DEFAULT (void *)-2 /* look up symbol from scope */
diff --git a/usr/src/head/libzonecfg.h b/usr/src/head/libzonecfg.h
index 4121b6a490..ffea74505e 100644
--- a/usr/src/head/libzonecfg.h
+++ b/usr/src/head/libzonecfg.h
@@ -143,7 +143,7 @@ extern "C" {
#define ZONE_INDEX_GID 3 /* sys */
#define ZONE_INDEX_MODE 0644
-/* The maximum length of the VERSION string in the pkginfo(4) file. */
+/* The maximum length of the VERSION string in the pkginfo(5) file. */
#define ZONE_PKG_VERSMAX 256
/*
diff --git a/usr/src/head/listen.h b/usr/src/head/listen.h
index baac41c0ec..59231ec060 100644
--- a/usr/src/head/listen.h
+++ b/usr/src/head/listen.h
@@ -114,7 +114,7 @@ struct call_list {
*
* the variables should be accessed via library routines.
*
- * see nlsgetcall(3X) and nlsprovider(3X).
+ * see nlsgetcall(3NSL) and nlsprovider(3NSL).
*/
#define NLSADDR "NLSADDR"
diff --git a/usr/src/head/nss_common.h b/usr/src/head/nss_common.h
index 3d2d775e5e..fb6f68adbc 100644
--- a/usr/src/head/nss_common.h
+++ b/usr/src/head/nss_common.h
@@ -46,7 +46,7 @@ extern "C" {
* The name-service switch
* -----------------------
*
- * From nsswitch.conf(4):
+ * From nsswitch.conf(5):
*
* The operating system uses a number of "databases" of information
* about hosts, users (passwd/shadow), groups and so forth. Data for
@@ -203,7 +203,7 @@ extern "C" {
* Backend routines return the following status codes to the switch engine:
*
* SUCCESS, UNAVAIL, NOTFOUND, TRYAGAIN (these are the same codes that may
- * be specified in the config information; see nsswitch.conf(4))
+ * be specified in the config information; see nsswitch.conf(5))
*
* The remaining conditions/errors are internally generated and if
* necessary are translated, as to one of the above external errors,
diff --git a/usr/src/head/rpcsvc/ypclnt.h b/usr/src/head/rpcsvc/ypclnt.h
index 6506f76ae6..9bbe3e94fb 100644
--- a/usr/src/head/rpcsvc/ypclnt.h
+++ b/usr/src/head/rpcsvc/ypclnt.h
@@ -45,7 +45,7 @@ extern "C" {
* ypclnt.h
* This defines the symbols used in the c language
* interface to the yp client functions. A description of this interface
- * can be read in ypclnt(3N).
+ * can be read in ypclnt(3NSL).
*/
/*
diff --git a/usr/src/head/tzfile.h b/usr/src/head/tzfile.h
index f2fec4304d..9b23f2c5dd 100644
--- a/usr/src/head/tzfile.h
+++ b/usr/src/head/tzfile.h
@@ -29,8 +29,6 @@
#ifndef _TZFILE_H
#define _TZFILE_H
-#pragma ident "%Z%%M% %I% %E% SMI"
-
/*
* A part of this file comes from public domain source, so
* clarified as of June 5, 1996 by Arthur David Olson
@@ -45,7 +43,7 @@
* future releases.
*/
-/* For further information, see ctime(3C) and zic(1M) man pages. */
+/* For further information, see ctime(3C) and zic(8) man pages. */
/*
* This file is in the public domain, so clarified as of
diff --git a/usr/src/lib/auditd_plugins/binfile/binfile.c b/usr/src/lib/auditd_plugins/binfile/binfile.c
index 1d1a5db642..2582d6c16b 100644
--- a/usr/src/lib/auditd_plugins/binfile/binfile.c
+++ b/usr/src/lib/auditd_plugins/binfile/binfile.c
@@ -333,7 +333,7 @@ loadauditlist(char *dirstr, char *minfreestr)
}
if (rc == -2) {
(void) pthread_mutex_lock(&log_mutex);
- DPRINT((dbfp, "loadauditlist: close / open audit.log(4)\n"));
+ DPRINT((dbfp, "loadauditlist: close / open audit.log(5)\n"));
if (open_log(listhead) == 0) {
openNewFile = 1; /* try again later */
} else {
@@ -934,7 +934,7 @@ auditd_plugin(const char *input, size_t in_len, uint64_t sequence, char **error)
/*
* It may be called multiple times as auditd handles SIGHUP and SIGUSR1
- * corresponding to the audit(1M) flags -s and -n
+ * corresponding to the audit(8) flags -s and -n
*
* kvlist is NULL only if auditd caught a SIGUSR1 (audit -n), so after the first
* time open is called; the reason is -s if kvlist != NULL and -n otherwise.
diff --git a/usr/src/lib/auditd_plugins/remote/audit_remote.c b/usr/src/lib/auditd_plugins/remote/audit_remote.c
index 9224022daa..6cc8eb15a2 100644
--- a/usr/src/lib/auditd_plugins/remote/audit_remote.c
+++ b/usr/src/lib/auditd_plugins/remote/audit_remote.c
@@ -97,7 +97,7 @@ FILE *dfile; /* debug file */
/*
* set_transq_count_max() - sets the transq_count_max value based on kernel
* audit queue high water mark. This is backup solution for a case, when the
- * the default qsize zero value is (intentionally) set in the audit_remote(5)
+ * the default qsize zero value is (intentionally) set in the audit_remote(7)
* plugin configuration.
*/
static auditd_rc_t
@@ -696,7 +696,7 @@ auditd_plugin(const char *input, size_t in_len, uint64_t sequence, char **error)
/*
* auditd_plugin_open() may be called multiple times; on initial open or
* `audit -s`, then kvlist != NULL; on `audit -n`, then kvlist == NULL.
- * For more information see audit(1M).
+ * For more information see audit(8).
*
* Note, that space on stack allocated for any error message returned along
* with AUDITD_RETRY is subsequently freed by auditd.
@@ -803,7 +803,7 @@ auditd_plugin_open(const kva_t *kvlist, char **ret_list, char **error)
/*
* auditd_plugin_close() performs shutdown operations. The return values are
- * used by auditd to output warnings via the audit_warn(1M) script and the
+ * used by auditd to output warnings via the audit_warn(8) script and the
* string returned via "error_text", is passed to audit_warn.
*
* Note, that space on stack allocated for any error message returned along
diff --git a/usr/src/lib/auditd_plugins/remote/audit_remote.h b/usr/src/lib/auditd_plugins/remote/audit_remote.h
index 69e27c98a0..49c9737bf3 100644
--- a/usr/src/lib/auditd_plugins/remote/audit_remote.h
+++ b/usr/src/lib/auditd_plugins/remote/audit_remote.h
@@ -75,7 +75,7 @@ struct hostlist_s {
hostlist_t *next_host;
struct hostent *host;
in_port_t port; /* TCP port number */
- gss_OID mech; /* GSS mechanism - see mech(4) */
+ gss_OID mech; /* GSS mechanism - see mech(5) */
};
/* transq_t - single, already sent token in the transmit queue. */
diff --git a/usr/src/lib/brand/ipkg/zone/SUNWblank.xml b/usr/src/lib/brand/ipkg/zone/SUNWblank.xml
index 759f22a150..50e3886d86 100644
--- a/usr/src/lib/brand/ipkg/zone/SUNWblank.xml
+++ b/usr/src/lib/brand/ipkg/zone/SUNWblank.xml
@@ -23,7 +23,7 @@
CDDL HEADER END
- DO NOT EDIT THIS FILE. Use zonecfg(1M) instead.
+ DO NOT EDIT THIS FILE. Use zonecfg(8) instead.
-->
<!DOCTYPE zone PUBLIC "-//Sun Microsystems Inc//DTD Zones//EN" "file:///usr/share/lib/xml/dtd/zonecfg.dtd.1">
diff --git a/usr/src/lib/brand/joyent/zone/SUNWdefault.xml b/usr/src/lib/brand/joyent/zone/SUNWdefault.xml
index 070412f6c1..2ab9089dfe 100644
--- a/usr/src/lib/brand/joyent/zone/SUNWdefault.xml
+++ b/usr/src/lib/brand/joyent/zone/SUNWdefault.xml
@@ -23,7 +23,7 @@
CDDL HEADER END
- DO NOT EDIT THIS FILE. Use zonecfg(1M) instead.
+ DO NOT EDIT THIS FILE. Use zonecfg(8) instead.
-->
<!DOCTYPE zone PUBLIC "-//Sun Microsystems Inc//DTD Zones//EN" "file:///usr/share/lib/xml/dtd/zonecfg.dtd.1">
diff --git a/usr/src/lib/brand/shared/zone/common.ksh b/usr/src/lib/brand/shared/zone/common.ksh
index 9d1bbbb2d6..b0a0cd88f7 100644
--- a/usr/src/lib/brand/shared/zone/common.ksh
+++ b/usr/src/lib/brand/shared/zone/common.ksh
@@ -386,7 +386,7 @@ get_archiver()
#
# Unpack flar into current directory (which should be zoneroot). The flash
-# archive is standard input. See flash_archive(4) man page.
+# archive is standard input. See flash_archive(5) man page.
#
# We can't use "flar split" since it will only unpack into a directory called
# "archive". We need to unpack in place in order to properly handle nested
@@ -458,7 +458,7 @@ install_flar()
#
# Otherwise skip past this section; read lines until detecting
- # section_end. According to flash_archive(4) we can have
+ # section_end. According to flash_archive(5) we can have
# an arbitrary number of sections but the archive section
# must be last.
#
diff --git a/usr/src/lib/brand/sn1/zone/SUNWsn1.xml b/usr/src/lib/brand/sn1/zone/SUNWsn1.xml
index 92b2a92bb8..8d49bcf0bb 100644
--- a/usr/src/lib/brand/sn1/zone/SUNWsn1.xml
+++ b/usr/src/lib/brand/sn1/zone/SUNWsn1.xml
@@ -23,7 +23,7 @@
CDDL HEADER END
- DO NOT EDIT THIS FILE. Use zonecfg(1M) instead.
+ DO NOT EDIT THIS FILE. Use zonecfg(8) instead.
-->
<!DOCTYPE zone PUBLIC "-//Sun Microsystems Inc//DTD Zones//EN" "file:///usr/share/lib/xml/dtd/zonecfg.dtd.1">
diff --git a/usr/src/lib/brand/solaris10/s10_brand/common/s10_brand.c b/usr/src/lib/brand/solaris10/s10_brand/common/s10_brand.c
index e854260a30..7ebd4f30f2 100644
--- a/usr/src/lib/brand/solaris10/s10_brand/common/s10_brand.c
+++ b/usr/src/lib/brand/solaris10/s10_brand/common/s10_brand.c
@@ -561,7 +561,7 @@ typedef struct s10_ct_param {
} s10_ct_param_t;
/*
- * We have to emulate process contract ioctls for init(1M) because the
+ * We have to emulate process contract ioctls for init(8) because the
* ioctl parameter structure changed between S10 and Nevada. This is
* a relatively simple process of filling Nevada structure fields,
* shuffling values, and initiating a native system call.
@@ -1838,7 +1838,7 @@ brand_init(int argc, char *argv[], char *envp[])
/*
* Cache the pid of the zone's init process and determine if
- * we're init(1m) for the zone. Remember: we might be init
+ * we're init(8) for the zone. Remember: we might be init
* now, but as soon as we fork(2) we won't be.
*/
(void) get_initpid_info();
diff --git a/usr/src/lib/brand/solaris10/zone/SUNWsolaris10.xml b/usr/src/lib/brand/solaris10/zone/SUNWsolaris10.xml
index 3b5bffb6f1..a13aa1c8f2 100644
--- a/usr/src/lib/brand/solaris10/zone/SUNWsolaris10.xml
+++ b/usr/src/lib/brand/solaris10/zone/SUNWsolaris10.xml
@@ -23,7 +23,7 @@
CDDL HEADER END
- DO NOT EDIT THIS FILE. Use zonecfg(1M) instead.
+ DO NOT EDIT THIS FILE. Use zonecfg(8) instead.
-->
<!DOCTYPE zone PUBLIC "-//Sun Microsystems Inc//DTD Zones//EN" "file:///usr/share/lib/xml/dtd/zonecfg.dtd.1">
diff --git a/usr/src/lib/brand/solaris10/zone/image_install.ksh b/usr/src/lib/brand/solaris10/zone/image_install.ksh
index 86b9345d27..349d16ce1d 100644
--- a/usr/src/lib/brand/solaris10/zone/image_install.ksh
+++ b/usr/src/lib/brand/solaris10/zone/image_install.ksh
@@ -59,7 +59,7 @@ $(gettext "you must specify an installation source using '-a', '-d' or '-r'.\n%s
cfgchoice_missing=\
$(gettext "you must specify -u (sys-unconfig) or -p (preserve identity).\n%s")
-mount_failed=$(gettext "ERROR: zonecfg(1M) 'fs' mount failed")
+mount_failed=$(gettext "ERROR: zonecfg(8) 'fs' mount failed")
not_flar=$(gettext "Input is not a flash archive")
bad_flar=$(gettext "Flash archive is a corrupt")
diff --git a/usr/src/lib/brand/solaris10/zone/s10_boot.ksh b/usr/src/lib/brand/solaris10/zone/s10_boot.ksh
index 9f3cc08740..b167540087 100644
--- a/usr/src/lib/brand/solaris10/zone/s10_boot.ksh
+++ b/usr/src/lib/brand/solaris10/zone/s10_boot.ksh
@@ -273,7 +273,7 @@ safe_copy /lib/svc/share/net_include.sh $filename
#
# PSARC 2009/306 removed the ND_SET/ND_GET ioctl's for modifying
-# IP/TCP/UDP/SCTP/ICMP tunables. If S10 ndd(1M) is used within an
+# IP/TCP/UDP/SCTP/ICMP tunables. If S10 ndd(8) is used within an
# S10 container, the kernel will return EINVAL. So we need this.
#
replace_with_native /usr/sbin/ndd 0555 root:bin
@@ -302,7 +302,7 @@ replace_with_native /usr/lib/fs/autofs/automount 0555 root:bin
replace_with_native /usr/lib/autofs/automountd 0555 root:bin
#
-# The class-specific dispadmin(1M) and priocntl(1) binaries must be native
+# The class-specific dispadmin(8) and priocntl(1) binaries must be native
# wrappers, and we must have all of the ones the native zone does. This
# allows new scheduling classes to appear without causing dispadmin and
# priocntl to be unhappy.
diff --git a/usr/src/lib/cfgadm_plugins/fp/common/cfga_fp.c b/usr/src/lib/cfgadm_plugins/fp/common/cfga_fp.c
index 4bd9c5e2a2..14a72525ea 100644
--- a/usr/src/lib/cfgadm_plugins/fp/common/cfga_fp.c
+++ b/usr/src/lib/cfgadm_plugins/fp/common/cfga_fp.c
@@ -27,7 +27,7 @@
/*
* This file contains the entry points to the plug-in as defined in the
- * config_admin(3X) man page.
+ * config_admin(3CFGADM) man page.
*/
/*
diff --git a/usr/src/lib/cfgadm_plugins/fp/common/cfga_rep.c b/usr/src/lib/cfgadm_plugins/fp/common/cfga_rep.c
index 17cd3c0b17..f44b6084aa 100644
--- a/usr/src/lib/cfgadm_plugins/fp/common/cfga_rep.c
+++ b/usr/src/lib/cfgadm_plugins/fp/common/cfga_rep.c
@@ -36,8 +36,8 @@ static char *HDR =
"# fabric_WWN_map\n"
"#\n"
"# The physical ap_id list of configured fabric devices.\n"
-"# Do NOT edit this file by hand -- refer to the cfgadm_fp(1M)\n"
-"# man page and use cfgadm(1m) instead.\n"
+"# Do NOT edit this file by hand -- refer to the cfgadm_fp(8)\n"
+"# man page and use cfgadm(8) instead.\n"
"#\n";
/*
diff --git a/usr/src/lib/cfgadm_plugins/fp/common/devices-fc-fabric.xml b/usr/src/lib/cfgadm_plugins/fp/common/devices-fc-fabric.xml
index 06607a60c9..427467c169 100644
--- a/usr/src/lib/cfgadm_plugins/fp/common/devices-fc-fabric.xml
+++ b/usr/src/lib/cfgadm_plugins/fp/common/devices-fc-fabric.xml
@@ -79,7 +79,7 @@ Use is subject to license terms.
</loctext>
</common_name>
<documentation>
- <manpage title='cfgadm_fp' section='1M'
+ <manpage title='cfgadm_fp' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/lib/cfgadm_plugins/ib/common/cfga_ib.c b/usr/src/lib/cfgadm_plugins/ib/common/cfga_ib.c
index 79bb9a8b7c..bc510135a0 100644
--- a/usr/src/lib/cfgadm_plugins/ib/common/cfga_ib.c
+++ b/usr/src/lib/cfgadm_plugins/ib/common/cfga_ib.c
@@ -28,7 +28,7 @@
/*
* cfga_ib.c:
- * All cfgadm entry points that are defined in the config_admin(3X)
+ * All cfgadm entry points that are defined in the config_admin(3CFGADM)
* needed for InfiniBand support are described here. These cfgadm
* interfaces issue ioctl(s) to the IB nexus driver. Attachment points
* supported are - IOC, VPPA, Port, HCA_SVC and Pseudo dynamic ap_ids,
@@ -531,7 +531,7 @@ ib_verify_valid_apid(const char *ap_id)
* ib_verify_params
* Input:
* ap_id - The attachment point of an IB fabric
- * options - command options passed by the cfgadm(1M)
+ * options - command options passed by the cfgadm(8)
* errstring - This contains error msg if command fails
* Output:
* NONE
@@ -843,11 +843,11 @@ ib_do_control_ioctl(char *ap_id, uint_t sub_cmd1, uint_t sub_cmd2,
* Input:
* state_change_cmd - Argument to the cfgadm -c command
* ap_id - The attachment point of an IB fabric
- * options - State Change command options passed by the cfgadm(1M)
+ * options - State Change command options passed by the cfgadm(8)
* confp - Whether this command requires confirmation?
* msgp - cfgadm error message for this plugin
* errstring - This contains error msg if command fails
- * flags - Cfgadm(1m) flags
+ * flags - cfgadm(8) flags
* Output:
* NONE
* Returns:
@@ -1031,11 +1031,11 @@ cfga_change_state(cfga_cmd_t state_change_cmd, const char *ap_id,
* func - The private function (passed w/ -x option)
* ap_id - The attachment point of an IB fabric
* options - Private function command options passed
- * by the cfgadm(1M)
+ * by the cfgadm(8)
* confp - Whether this command requires confirmation?
* msgp - cfgadm error message for this plugin
* errstring - This contains error msg if command fails
- * flags - Cfgadm(1m) flags
+ * flags - cfgadm(8) flags
* Output:
* NONE
* Returns:
@@ -1514,10 +1514,10 @@ cfga_private_func(const char *func, const char *ap_id, const char *options,
* cfga_test
* Input:
* ap_id - The attachment point of an IB fabric
- * options - Test command options passed by the cfgadm(1M)
+ * options - Test command options passed by the cfgadm(8)
* msgp - cfgadm error message for this plugin
* errstring - This contains error msg if command fails
- * flags - Cfgadm(1m) flags
+ * flags - cfgadm(8) flags
* Output:
* NONE
* Returns:
@@ -1624,10 +1624,10 @@ ib_fill_static_apids(char *ap_id, cfga_list_data_t *clp)
* ap_id - The attachment point of an IB fabric
* ap_id_list - The returned "list" information array
* nlistp - Number of elements in the "list" information array
- * options - List command options passed by the cfgadm(1M)
+ * options - List command options passed by the cfgadm(8)
* listopts - "-s" specific options
* errstring - This contains error msg if command fails
- * flags - Cfgadm(1m) flags
+ * flags - cfgadm(8) flags
* Output:
* NONE
* Returns:
@@ -2027,9 +2027,9 @@ cfga_msg(struct cfga_msg *msgp, const char *str)
* Function:
* cfga_help
* Input:
- * msgp - Help message passed on to cfgadm(1M)
- * options - Help message options passed on to cfgadm(1M)
- * flags - Cfgadm(1m) flags
+ * msgp - Help message passed on to cfgadm(8)
+ * options - Help message options passed on to cfgadm(8)
+ * flags - cfgadm(8) flags
* Output:
* NONE
* Returns:
diff --git a/usr/src/lib/cfgadm_plugins/sata/common/cfga_sata.c b/usr/src/lib/cfgadm_plugins/sata/common/cfga_sata.c
index dd74b7d210..27cd493960 100644
--- a/usr/src/lib/cfgadm_plugins/sata/common/cfga_sata.c
+++ b/usr/src/lib/cfgadm_plugins/sata/common/cfga_sata.c
@@ -35,7 +35,7 @@
/*
* This file contains the entry points to the plug-in as defined in the
- * config_admin(3X) man page.
+ * config_admin(3CFGADM) man page.
*/
/*
diff --git a/usr/src/lib/cfgadm_plugins/sbd/common/ap_sbd.c b/usr/src/lib/cfgadm_plugins/sbd/common/ap_sbd.c
index 7c3b34b1f0..b1444a980a 100644
--- a/usr/src/lib/cfgadm_plugins/sbd/common/ap_sbd.c
+++ b/usr/src/lib/cfgadm_plugins/sbd/common/ap_sbd.c
@@ -374,7 +374,7 @@ apd_alloc(const char *ap_id, cfga_flags_t flags, char **errstring,
}
/*
- * The type field is defined to be parsable by cfgadm(1M): It
+ * The type field is defined to be parsable by cfgadm(8): It
* must not contain white space characters. This function
* converts white space to underscore.
*/
diff --git a/usr/src/lib/cfgadm_plugins/scsi/common/cfga_scsi.c b/usr/src/lib/cfgadm_plugins/scsi/common/cfga_scsi.c
index c11f48165f..14d83936c8 100644
--- a/usr/src/lib/cfgadm_plugins/scsi/common/cfga_scsi.c
+++ b/usr/src/lib/cfgadm_plugins/scsi/common/cfga_scsi.c
@@ -27,7 +27,7 @@
/*
* This file contains the entry points to the plug-in as defined in the
- * config_admin(3X) man page.
+ * config_admin(3CFGADM) man page.
*/
/*
diff --git a/usr/src/lib/cfgadm_plugins/shp/common/shp.c b/usr/src/lib/cfgadm_plugins/shp/common/shp.c
index 587e042fab..b1ee7d1bf7 100644
--- a/usr/src/lib/cfgadm_plugins/shp/common/shp.c
+++ b/usr/src/lib/cfgadm_plugins/shp/common/shp.c
@@ -69,7 +69,7 @@ extern int class_pci_items;
#define MSG_HOTPLUG_DISABLED \
"Error: hotplug service is probably not running, " \
"please use 'svcadm enable hotplug' to enable the service. " \
- "See cfgadm_shp(1M) for more details."
+ "See cfgadm_shp(8) for more details."
#define DEVICES_DIR "/devices"
#define SLASH "/"
diff --git a/usr/src/lib/cfgadm_plugins/usb/common/cfga_usb.c b/usr/src/lib/cfgadm_plugins/usb/common/cfga_usb.c
index 12e144af82..47976fb058 100644
--- a/usr/src/lib/cfgadm_plugins/usb/common/cfga_usb.c
+++ b/usr/src/lib/cfgadm_plugins/usb/common/cfga_usb.c
@@ -41,7 +41,7 @@ static char *usb_get_devicepath(const char *);
/*
* This file contains the entry points to the plugin as defined in the
- * config_admin(3X) man page.
+ * config_admin(3CFGADM) man page.
*/
/*
diff --git a/usr/src/lib/efcode/efdaemon/efdaemon.xml b/usr/src/lib/efcode/efdaemon/efdaemon.xml
index 415d692b88..9589353820 100644
--- a/usr/src/lib/efcode/efdaemon/efdaemon.xml
+++ b/usr/src/lib/efcode/efdaemon/efdaemon.xml
@@ -24,8 +24,6 @@
CDDL HEADER END
- ident "%Z%%M% %I% %E% SMI"
-
NOTE: This service manifest is not editable; its contents will
be overwritten by package or patch operations, including
operating system upgrade. Make customizations in a different
@@ -73,7 +71,7 @@
</loctext>
</common_name>
<documentation>
- <manpage title='efdaemon' section='1M' manpath='/usr/share/man' />
+ <manpage title='efdaemon' section='8' manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/lib/efcode/efdaemon/efdaemon_sun4v.xml b/usr/src/lib/efcode/efdaemon/efdaemon_sun4v.xml
index 36ee00184b..592689f77e 100644
--- a/usr/src/lib/efcode/efdaemon/efdaemon_sun4v.xml
+++ b/usr/src/lib/efcode/efdaemon/efdaemon_sun4v.xml
@@ -23,8 +23,6 @@
CDDL HEADER END
- ident "%Z%%M% %I% %E% SMI"
-
NOTE: This service manifest is not editable; its contents will
be overwritten by package or patch operations, including
operating system upgrade. Make customizations in a different
@@ -72,7 +70,7 @@
</loctext>
</common_name>
<documentation>
- <manpage title='efdaemon' section='1M' manpath='/usr/share/man' />
+ <manpage title='efdaemon' section='8' manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/lib/fm/libfmd_adm/common/fmd_adm.c b/usr/src/lib/fm/libfmd_adm/common/fmd_adm.c
index 33c68f4a05..d102735eb7 100644
--- a/usr/src/lib/fm/libfmd_adm/common/fmd_adm.c
+++ b/usr/src/lib/fm/libfmd_adm/common/fmd_adm.c
@@ -117,9 +117,9 @@ fmd_adm_svc_errmsg(enum fmd_adm_error err)
case FMD_ADM_ERR_MODEXIST:
return ("module using same name is already loaded");
case FMD_ADM_ERR_MODINIT:
- return ("module failed to initialize (consult fmd(1M) log)");
+ return ("module failed to initialize (consult fmd(8) log)");
case FMD_ADM_ERR_MODLOAD:
- return ("module failed to load (consult fmd(1M) log)");
+ return ("module failed to load (consult fmd(8) log)");
case FMD_ADM_ERR_RSRCSRCH:
return ("specified resource is not cached by fault manager");
case FMD_ADM_ERR_RSRCNOTF:
@@ -131,7 +131,7 @@ fmd_adm_svc_errmsg(enum fmd_adm_error err)
case FMD_ADM_ERR_ROTSRCH:
return ("invalid log file name");
case FMD_ADM_ERR_ROTFAIL:
- return ("failed to rotate log file (consult fmd(1M) log)");
+ return ("failed to rotate log file (consult fmd(8) log)");
case FMD_ADM_ERR_ROTBUSY:
return ("log file is too busy to rotate (try again later)");
case FMD_ADM_ERR_CASESRCH:
diff --git a/usr/src/lib/fm/libfmd_log/common/fmd_log.h b/usr/src/lib/fm/libfmd_log/common/fmd_log.h
index be705571b9..9e9c0c2eae 100644
--- a/usr/src/lib/fm/libfmd_log/common/fmd_log.h
+++ b/usr/src/lib/fm/libfmd_log/common/fmd_log.h
@@ -26,8 +26,6 @@
#ifndef _FMD_LOG_H
#define _FMD_LOG_H
-#pragma ident "%Z%%M% %I% %E% SMI"
-
#include <libnvpair.h>
#include <exacct.h>
#include <regex.h>
@@ -60,12 +58,12 @@ extern int fmd_log_errno(fmd_log_t *);
typedef struct fmd_log_header {
const char *log_creator; /* ea_get_creator(3EXACCT) string */
const char *log_hostname; /* ea_get_hostname(3EXACCT) string */
- const char *log_label; /* fmd(1M) log file label */
- const char *log_version; /* fmd(1M) log file version */
+ const char *log_label; /* fmd(8) log file label */
+ const char *log_version; /* fmd(8) log file version */
const char *log_osrelease; /* uname(1) -r value at creation time */
const char *log_osversion; /* uname(1) -v value at creation time */
const char *log_platform; /* uname(1) -i value at creation time */
- const char *log_uuid; /* fmd(1M) log file uuid */
+ const char *log_uuid; /* fmd(8) log file uuid */
} fmd_log_header_t;
extern void fmd_log_header(fmd_log_t *, fmd_log_header_t *);
@@ -114,7 +112,7 @@ typedef struct fmd_log_filter_nvarg {
/*
* fmd_log_xiter() can be used to perform sophisticated iteration over an fmd
- * log file such as that required by fmdump(1M). The arguments are as follows:
+ * log file such as that required by fmdump(8). The arguments are as follows:
*
* fmd_log_t *lp - log to use for iteration from fmd_log_open()
* uint_t iflags - FMD_LOG_XITER_* flags (see above)
diff --git a/usr/src/lib/fm/libfmd_msg/common/fmd_msg.c b/usr/src/lib/fm/libfmd_msg/common/fmd_msg.c
index 6f7ae70ab9..a36e6bbcda 100644
--- a/usr/src/lib/fm/libfmd_msg/common/fmd_msg.c
+++ b/usr/src/lib/fm/libfmd_msg/common/fmd_msg.c
@@ -36,7 +36,7 @@
* fmd_msg_init - set up the library and return a handle
* fmd_msg_fini - destroy the handle from fmd_msg_init
*
- * fmd_msg_locale_set - set the default locale (initially based on environ(5))
+ * fmd_msg_locale_set - set the default locale (initially based on environ(7))
* fmd_msg_locale_get - get the default locale
*
* fmd_msg_url_set - set the default URL for knowledge articles
@@ -310,7 +310,7 @@ fmd_msg_init(const char *root, int version)
* directory for our default catalog, and set fmh_binding as the same
* directory prefixed with the new root directory. This simply turns
* usr/lib/locale into <rootdir>/usr/lib/locale, but handles all of the
- * environ(5) settings that can change the default messages binding.
+ * environ(7) settings that can change the default messages binding.
*/
if (root != NULL && root[0] != '\0' && strcmp(root, "/") != 0) {
if (root[0] != '/')
diff --git a/usr/src/lib/fm/libfmd_snmp/mibs/SUN-FM-MIB.mib b/usr/src/lib/fm/libfmd_snmp/mibs/SUN-FM-MIB.mib
index 3d18fc9056..63a59f92b4 100644
--- a/usr/src/lib/fm/libfmd_snmp/mibs/SUN-FM-MIB.mib
+++ b/usr/src/lib/fm/libfmd_snmp/mibs/SUN-FM-MIB.mib
@@ -68,7 +68,7 @@ SunFmUuidString ::= TEXTUAL-CONVENTION
SunFmModuleState ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
- "Represents the status of an fmd(1M) module."
+ "Represents the status of an fmd(8) module."
SYNTAX INTEGER {
other(1), -- Unknown or unsupported
active(2),
@@ -146,7 +146,7 @@ sunFmProblemUUIDIndex OBJECT-TYPE
STATUS current
DESCRIPTION
"The Universal Unique Identifier (UUID) for this problem, as
- recorded by fmd(1M) and shown by fmadm(1M) or fmdump(1M).
+ recorded by fmd(8) and shown by fmadm(8) or fmdump(8).
This is the index into sunFmProblemTable."
::= { sunFmProblemEntry 1 }
@@ -156,7 +156,7 @@ sunFmProblemUUID OBJECT-TYPE
STATUS current
DESCRIPTION
"The Universal Unique Identifier (UUID) for this problem, as
- recorded by fmd(1M) and shown by fmadm(1M) or fmdump(1M)."
+ recorded by fmd(8) and shown by fmadm(8) or fmdump(8)."
::= { sunFmProblemEntry 2 }
sunFmProblemCode OBJECT-TYPE
@@ -165,7 +165,7 @@ sunFmProblemCode OBJECT-TYPE
STATUS current
DESCRIPTION
"The SUNW-MSG-ID static message identifier for this class of
- problem, as recorded by fmd(1M) and shown by fmdump(1M). The
+ problem, as recorded by fmd(8) and shown by fmdump(8). The
message identifier can be used as a key at http://illumos.org/msg/"
::= { sunFmProblemEntry 3 }
@@ -202,7 +202,7 @@ sunFmProblemSuspectCount OBJECT-TYPE
DESCRIPTION
"The number of individual suspect defects or faults
associated with this problem diagnosis, as shown by
- fmdump(1M) -v -u <UUID>."
+ fmdump(8) -v -u <UUID>."
::= { sunFmProblemEntry 7 }
--
@@ -218,7 +218,7 @@ sunFmFaultEventTable OBJECT-TYPE
STATUS current
DESCRIPTION
"List of individual suspect defects or faults associated with
- a problem diagnosis, as shown by fmdump(1M) -v -u <UUID>."
+ a problem diagnosis, as shown by fmdump(8) -v -u <UUID>."
::= { sunFmMIB 2 }
sunFmFaultEventEntry OBJECT-TYPE
@@ -324,7 +324,7 @@ sunFmFaultEventStatus OBJECT-TYPE
STATUS current
DESCRIPTION
"The current status of this suspect for this diagnosis.
- See fmadm(1M) faulty."
+ See fmadm(8) faulty."
::= { sunFmFaultEventEntry 9 }
sunFmFaultEventLocation OBJECT-TYPE
@@ -346,7 +346,7 @@ sunFmModuleTable OBJECT-TYPE
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
- "List of modules configured in fmd(1M)."
+ "List of modules configured in fmd(8)."
::= { sunFmMIB 3 }
sunFmModuleEntry OBJECT-TYPE
@@ -354,7 +354,7 @@ sunFmModuleEntry OBJECT-TYPE
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
- "A module which has been loaded into fmd(1M) to handle events.
+ "A module which has been loaded into fmd(8) to handle events.
The information provided is equivalent to the output of
fmadm(1) config'"
INDEX { sunFmModuleIndex }
@@ -425,7 +425,7 @@ sunFmResourceTable OBJECT-TYPE
DESCRIPTION
"A table containing information about all resources for which
the fault manager has received telemetry. This is the same
- information provided by the fmadm(1M) faulty command."
+ information provided by the fmadm(8) faulty command."
::= { sunFmMIB 5 }
sunFmResourceEntry OBJECT-TYPE
@@ -467,7 +467,7 @@ sunFmResourceStatus OBJECT-TYPE
MAX-ACCESS read-only
STATUS current
DESCRIPTION
- "The current status of the resource. See fmadm(1M) faulty."
+ "The current status of the resource. See fmadm(8) faulty."
::= { sunFmResourceEntry 3 }
sunFmResourceDiagnosisUUID OBJECT-TYPE
@@ -477,7 +477,7 @@ sunFmResourceDiagnosisUUID OBJECT-TYPE
DESCRIPTION
"The Universal Unique Identifier (UUID) for the problem
associated with the fault in this resource, as recorded by
- fmd(1M) and shown by fmadm(1M)."
+ fmd(8) and shown by fmadm(8)."
::= { sunFmResourceEntry 4 }
sunFmObjectGroups OBJECT IDENTIFIER ::= { sunFmMIB 6 }
@@ -529,7 +529,7 @@ sunFmProblemTrap NOTIFICATION-TYPE
STATUS current
DESCRIPTION
"Trap notification that a diagnosis has been made or the
- fault manager fmd(1M) has restarted and the corresponding
+ fault manager fmd(8) has restarted and the corresponding
problem is still believed to be present in the managed entity."
::= { sunFmTraps 1 }
diff --git a/usr/src/lib/fm/libfmevent/common/libfmevent.h b/usr/src/lib/fm/libfmevent/common/libfmevent.h
index 8fad3511aa..a90343b34c 100644
--- a/usr/src/lib/fm/libfmevent/common/libfmevent.h
+++ b/usr/src/lib/fm/libfmevent/common/libfmevent.h
@@ -143,7 +143,7 @@ extern const char *fmev_strerror(fmev_err_t);
* Subscribe to FMA protocol events published by the fault management
* daemon, receiving a callback for each matching event.
*
- * This is a Committed interface (see attributes(5) for a definition).
+ * This is a Committed interface (see attributes(7) for a definition).
*/
/*
diff --git a/usr/src/lib/fm/topo/libtopo/common/libtopo.h b/usr/src/lib/fm/topo/libtopo/common/libtopo.h
index 02d7828a79..93884718c6 100644
--- a/usr/src/lib/fm/topo/libtopo/common/libtopo.h
+++ b/usr/src/lib/fm/topo/libtopo/common/libtopo.h
@@ -318,7 +318,7 @@ extern void topo_debug_set(topo_hdl_t *, const char *, const char *);
/*
* Each topology node advertises the name and data stability of each of its
- * modules and properties. (see attributes(5)).
+ * modules and properties. (see attributes(7)).
*/
/*
diff --git a/usr/src/lib/fm/topo/libtopo/common/topo_fmri.c b/usr/src/lib/fm/topo/libtopo/common/topo_fmri.c
index 13dfe11031..b6f7426512 100644
--- a/usr/src/lib/fm/topo/libtopo/common/topo_fmri.c
+++ b/usr/src/lib/fm/topo/libtopo/common/topo_fmri.c
@@ -45,7 +45,7 @@
* Topology node properties and method operations may be accessed by FMRI.
* The FMRI used to perform property look-ups and method operations is
* the FMRI contained in the matching topology node's protocol property
- * grouping for the resource property. The full range of fmd(1M)
+ * grouping for the resource property. The full range of fmd(8)
* scheme plugin operations are supported as long as a backend method is
* supplied by a scheme-specific enumerator or the enumerator module that
* created the matching topology node. Support for fmd scheme operations
diff --git a/usr/src/lib/fm/topo/modules/common/ses/ses.c b/usr/src/lib/fm/topo/modules/common/ses/ses.c
index 6b9be28bd5..0273009bbe 100644
--- a/usr/src/lib/fm/topo/modules/common/ses/ses.c
+++ b/usr/src/lib/fm/topo/modules/common/ses/ses.c
@@ -3849,7 +3849,7 @@ ses_enum(topo_mod_t *mod, tnode_t *rnode, const char *name,
goto error;
/*
- * We search both the ses(7D) and sgen(7D) locations, so we are
+ * We search both the ses(4D) and sgen(4D) locations, so we are
* independent of any particular driver class bindings.
*/
if (ses_process_dir("/dev/es", data) != 0 ||
diff --git a/usr/src/lib/gss_mechs/mech_dh/backend/mech/name.c b/usr/src/lib/gss_mechs/mech_dh/backend/mech/name.c
index 6ccb78fe51..788240729a 100644
--- a/usr/src/lib/gss_mechs/mech_dh/backend/mech/name.c
+++ b/usr/src/lib/gss_mechs/mech_dh/backend/mech/name.c
@@ -27,8 +27,6 @@
*
*/
-#pragma ident "%Z%%M% %I% %E% SMI"
-
#include "dh_gssapi.h"
#include <pwd.h>
#include <string.h>
@@ -260,7 +258,7 @@ do_username_nametype(OM_uint32 *minor, char *uname, gss_name_t *output)
}
/*
* If node is null, assume local host. If domain is
- * null assume local domain. See host2netname(3N)
+ * null assume local domain. See host2netname(3NSL)
*/
if (!host2netname(netname, node, domain)) {
*minor = DH_NETNAME_FAILURE;
@@ -281,7 +279,7 @@ do_username_nametype(OM_uint32 *minor, char *uname, gss_name_t *output)
return (GSS_S_FAILURE);
}
- /* If domain is null assume local domain. See user2netname(3N) */
+ /* If domain is null assume local domain. See user2netname(3NSL) */
if (!user2netname(netname, pwd.pw_uid, domain)) {
*minor = DH_NETNAME_FAILURE;
free(user);
diff --git a/usr/src/lib/gss_mechs/mech_krb5/krb5/ccache/cc_file.c b/usr/src/lib/gss_mechs/mech_krb5/krb5/ccache/cc_file.c
index 634227b8dd..4eab406379 100644
--- a/usr/src/lib/gss_mechs/mech_krb5/krb5/ccache/cc_file.c
+++ b/usr/src/lib/gss_mechs/mech_krb5/krb5/ccache/cc_file.c
@@ -1622,7 +1622,7 @@ krb5_fcc_initialize(krb5_context context, krb5_ccache id, krb5_principal princ)
/*
* SUN14resync
- * This is not needed and can cause problems with ktkt_warnd(1M)
+ * This is not needed and can cause problems with ktkt_warnd(8)
* because it does tricks with getuid and if we enable this fchmod
* we get EPERM [file_owner] failures on fchmod.
*/
diff --git a/usr/src/lib/gss_mechs/mech_krb5/krb5/keytab/kt_solaris.c b/usr/src/lib/gss_mechs/mech_krb5/krb5/keytab/kt_solaris.c
index ea6e8e2d86..0338434fe0 100644
--- a/usr/src/lib/gss_mechs/mech_krb5/krb5/keytab/kt_solaris.c
+++ b/usr/src/lib/gss_mechs/mech_krb5/krb5/keytab/kt_solaris.c
@@ -128,7 +128,7 @@ cleanup:
*
* Note: this function is used for adding service principals to the
* local /etc/krb5/krb5.keytab (unless KRB5_KTNAME has been set to something
- * different, see krb5envvar(5)) file when the client belongs to an AD domain.
+ * different, see krb5envvar(7)) file when the client belongs to an AD domain.
* The keytab file is populated differently for an AD domain as the various
* service principals share the same key material, unlike MIT based
* implementations.
diff --git a/usr/src/lib/gss_mechs/mech_krb5/krb5/krb/getuid.c b/usr/src/lib/gss_mechs/mech_krb5/krb5/krb/getuid.c
index 783a2945ef..73738fff33 100644
--- a/usr/src/lib/gss_mechs/mech_krb5/krb5/krb/getuid.c
+++ b/usr/src/lib/gss_mechs/mech_krb5/krb5/krb/getuid.c
@@ -24,8 +24,6 @@
* Use is subject to license terms.
*/
-#pragma ident "%Z%%M% %I% %E% SMI"
-
#include <sys/types.h>
#include <unistd.h>
#include <dlfcn.h>
@@ -34,8 +32,8 @@
#define KRB5_UID "app_krb5_user_uid"
/*
- * mech_krb5 makes various calls to getuid(). When employed by gssd(1M) and
- * ktkt_warnd(1M), app_krb5_user_uid() is used to select a given user's
+ * mech_krb5 makes various calls to getuid(). When employed by gssd(8) and
+ * ktkt_warnd(8), app_krb5_user_uid() is used to select a given user's
* credential cache, rather than the id of the process.
*/
uid_t
@@ -49,7 +47,7 @@ krb5_getuid()
* Specifically look for app_krb5_user_uid() in the application,
* and don't fall into an exhaustive search through all of the
* process dependencies. This interface is suplied from
- * gssd(1M) and ktkt_warnd(1M).
+ * gssd(8) and ktkt_warnd(8).
*/
if (((handle = dlopen(0, (RTLD_LAZY | RTLD_FIRST))) == NULL) ||
((gptr = (uid_t (*)())dlsym(handle, KRB5_UID)) == NULL)) {
diff --git a/usr/src/lib/gss_mechs/mech_krb5/krb5/os/locate_kdc.c b/usr/src/lib/gss_mechs/mech_krb5/krb5/os/locate_kdc.c
index 38bb3c1363..f8c6e0b6f6 100644
--- a/usr/src/lib/gss_mechs/mech_krb5/krb5/os/locate_kdc.c
+++ b/usr/src/lib/gss_mechs/mech_krb5/krb5/os/locate_kdc.c
@@ -898,7 +898,7 @@ krb5int_locate_server (krb5_context context, const krb5_data *realm,
* Solaris Kerberos:
* If kpasswd_server has not been configured and dns_lookup_kdc -
* dns_fallback are not configured then admin_server should
- * be inferred, per krb5.conf(4).
+ * be inferred, per krb5.conf(5).
*/
if (code && svc == locate_service_kpasswd &&
!maybe_use_dns(context, "dns_lookup_kdc", 0)) {
@@ -948,28 +948,28 @@ krb5int_locate_server (krb5_context context, const krb5_data *realm,
krb5_set_error_message(context,
KRB5_REALM_CANT_RESOLVE,
dgettext(TEXT_DOMAIN,
- "Cannot find a master KDC entry in krb5.conf(4) or DNS Service Location records for realm '%.*s'"),
+ "Cannot find a master KDC entry in krb5.conf(5) or DNS Service Location records for realm '%.*s'"),
realm->length, realm->data);
break;
case locate_service_kadmin:
krb5_set_error_message(context,
KRB5_REALM_CANT_RESOLVE,
dgettext(TEXT_DOMAIN,
- "Cannot find a kadmin KDC entry in krb5.conf(4) or DNS Service Location records for realm '%.*s'"),
+ "Cannot find a kadmin KDC entry in krb5.conf(5) or DNS Service Location records for realm '%.*s'"),
realm->length, realm->data);
break;
case locate_service_kpasswd:
krb5_set_error_message(context,
KRB5_REALM_CANT_RESOLVE,
dgettext(TEXT_DOMAIN,
- "Cannot find a kpasswd KDC entry in krb5.conf(4) or DNS Service Location records for realm '%.*s'"),
+ "Cannot find a kpasswd KDC entry in krb5.conf(5) or DNS Service Location records for realm '%.*s'"),
realm->length, realm->data);
break;
default: /* locate_service_kdc: */
krb5_set_error_message(context,
KRB5_REALM_CANT_RESOLVE,
dgettext(TEXT_DOMAIN,
- "Cannot find any KDC entries in krb5.conf(4) or DNS Service Location records for realm '%.*s'"),
+ "Cannot find any KDC entries in krb5.conf(5) or DNS Service Location records for realm '%.*s'"),
realm->length, realm->data);
}
@@ -1039,7 +1039,7 @@ krb5int_locate_server (krb5_context context, const krb5_data *realm,
hostlist_str = hostlist2str(hostlist);
krb5_set_error_message(context, KRB5_REALM_CANT_RESOLVE,
dgettext(TEXT_DOMAIN,
- "Cannot resolve network address for KDCs '%s' specified in krb5.conf(4) for realm %.*s"),
+ "Cannot resolve network address for KDCs '%s' specified in krb5.conf(5) for realm %.*s"),
hostlist_str ? hostlist_str : "unknown",
realm->length, realm->data);
if (hostlist_str)
diff --git a/usr/src/lib/gss_mechs/mech_krb5/mech/store_cred.c b/usr/src/lib/gss_mechs/mech_krb5/mech/store_cred.c
index d744d9a7cc..cfabbaca16 100644
--- a/usr/src/lib/gss_mechs/mech_krb5/mech/store_cred.c
+++ b/usr/src/lib/gss_mechs/mech_krb5/mech/store_cred.c
@@ -24,8 +24,6 @@
* Use is subject to license terms.
*/
-#pragma ident "%Z%%M% %I% %E% SMI"
-
#include <k5-int.h>
#include <gssapiP_krb5.h>
#include <memory.h>
@@ -231,7 +229,7 @@ gss_cred_usage_t *cred_usage_stored;
if (GSS_ERROR(maj))
goto cleanup;
- /* Alert ktkt_warnd(1M) */
+ /* Alert ktkt_warnd(8) */
maj = krb5_unparse_name(ctx, cred->princ, &client_name);
if (GSS_ERROR(maj))
goto cleanup;
@@ -239,7 +237,7 @@ gss_cred_usage_t *cred_usage_stored;
if (kwarn_add_warning(client_name, cred->tgt_expire) != 0) {
syslog(LOG_AUTH|LOG_NOTICE,
"store_cred: kwarn_add_warning"
- " failed: ktkt_warnd(1M) down? ");
+ " failed: ktkt_warnd(8) down? ");
}
free(client_name);
client_name = NULL;
diff --git a/usr/src/lib/gss_mechs/mech_krb5/profile/prof_solaris.c b/usr/src/lib/gss_mechs/mech_krb5/profile/prof_solaris.c
index 96958c1408..117ccd9c80 100644
--- a/usr/src/lib/gss_mechs/mech_krb5/profile/prof_solaris.c
+++ b/usr/src/lib/gss_mechs/mech_krb5/profile/prof_solaris.c
@@ -25,7 +25,7 @@
/*
* prof_solaris.c:
- * Abstracted contract private interfaces for configuring krb5.conf(4).
+ * Abstracted contract private interfaces for configuring krb5.conf(5).
*/
#include <ctype.h>
diff --git a/usr/src/lib/libbrand/dtd/brand.dtd.1 b/usr/src/lib/libbrand/dtd/brand.dtd.1
index 1f1e13837c..0d2317b254 100644
--- a/usr/src/lib/libbrand/dtd/brand.dtd.1
+++ b/usr/src/lib/libbrand/dtd/brand.dtd.1
@@ -278,13 +278,13 @@
<!--
user_cmd
- Path to the binary that will translate a user name to a passwd(4) entry.
+ Path to the binary that will translate a user name to a passwd(5) entry.
The following replacements are performed:
%u User login name
- It has no attributes. The passwd(4) entry is used to determine $LOGNAME,
+ It has no attributes. The passwd(5) entry is used to determine $LOGNAME,
$HOME, and $SHELL for non-interactive "zlogin -l <user> <cmd>".
-->
<!ELEMENT user_cmd (#PCDATA) >
@@ -624,7 +624,7 @@
<!--
security-flags
Specifies the default security flags applied to zones of this brand. This
- set can be overridden via security-flags in zonecfg(1m).
+ set can be overridden via security-flags in zonecfg(8).
-->
<!ELEMENT security-flags (#PCDATA) >
<!ATTLIST security-flags>
@@ -636,12 +636,12 @@
zones of this brand with ip-type matched. If a privilege is added
to the default set all zones of this brand with ip-type matched on
the system will inherit this privilege unless the privilege is
- removed via limitpriv in zonecfg(1m). If a privilege is added to
+ removed via limitpriv in zonecfg(8). If a privilege is added to
the prohibited set it can not be added to any zones with ip-type
- matched via limitpriv in zonecfg(1m). If a privilege is added to
+ matched via limitpriv in zonecfg(8). If a privilege is added to
the required set then all zones of this brand with ip-type matched
on the system will inherit this privilege and it can't be removed via
- limitpriv in zonecfg(1m).
+ limitpriv in zonecfg(8).
Its attributes are
set The name of the set the privilege should go into.
diff --git a/usr/src/lib/libbsm/audit_event.txt b/usr/src/lib/libbsm/audit_event.txt
index 2db2fc017e..7ba3bc733d 100644
--- a/usr/src/lib/libbsm/audit_event.txt
+++ b/usr/src/lib/libbsm/audit_event.txt
@@ -390,16 +390,16 @@
6157:AUE_mountd_umount:unmount:na
6158:AUE_rshd:rsh access:lo
6159:AUE_su:su:lo
-6160:AUE_halt_solaris:halt(1m):ss
-6161:AUE_reboot_solaris:reboot(1m):ss
+6160:AUE_halt_solaris:halt(8):ss
+6161:AUE_reboot_solaris:reboot(8):ss
6162:AUE_rexecd:rexecd:lo
6163:AUE_passwd:passwd:lo
6164:AUE_rexd:rexd:lo
6165:AUE_ftpd:ftp access:lo
-6166:AUE_init_solaris:init(1m):ss
-6167:AUE_uadmin_solaris:uadmin(1m):no
+6166:AUE_init_solaris:init(8):ss
+6167:AUE_uadmin_solaris:uadmin(8):no
6168:AUE_shutdown_solaris:shutdown(1b):ss
-6169:AUE_poweroff_solaris:poweroff(1m):ss
+6169:AUE_poweroff_solaris:poweroff(8):ss
6170:AUE_crontab_mod:crontab-modify:ua
6171:AUE_ftpd_logout:ftp logout:lo
6172:AUE_ssh:login - ssh:lo
@@ -460,16 +460,16 @@
6234:AUE_pool_export:export device from pool:ot
6235:AUE_dladm_create_secobj:create network security object:as,cy
6236:AUE_dladm_delete_secobj:delete network security object:as,cy
-6237:AUE_uadmin_shutdown:uadmin(1m) - shutdown:ss
-6238:AUE_uadmin_reboot:uadmin(1m) - reboot:ss
-6239:AUE_uadmin_dump:uadmin(1m) - dump:ss
-6240:AUE_uadmin_freeze:uadmin(1m) - freeze:ss
-6241:AUE_uadmin_remount:uadmin(1m) - remount:ss
-6242:AUE_uadmin_ftrace:uadmin(1m) - ftrace:ss
-6243:AUE_uadmin_swapctl:uadmin(1m) - swapctl:ss
-6244:AUE_smbd_session:smbd(1m) session setup:lo
-6245:AUE_smbd_logoff:smbd(1m) session logoff:lo
-6246:AUE_vscan_quarantine:vscand(1m) quarantine infected file:na
+6237:AUE_uadmin_shutdown:uadmin(8) - shutdown:ss
+6238:AUE_uadmin_reboot:uadmin(8) - reboot:ss
+6239:AUE_uadmin_dump:uadmin(8) - dump:ss
+6240:AUE_uadmin_freeze:uadmin(8) - freeze:ss
+6241:AUE_uadmin_remount:uadmin(8) - remount:ss
+6242:AUE_uadmin_ftrace:uadmin(8) - ftrace:ss
+6243:AUE_uadmin_swapctl:uadmin(8) - swapctl:ss
+6244:AUE_smbd_session:smbd(8) session setup:lo
+6245:AUE_smbd_logoff:smbd(8) session logoff:lo
+6246:AUE_vscan_quarantine:vscand(8) quarantine infected file:na
6247:AUE_ndmp_connect:ndmp connect:na
6248:AUE_ndmp_disconnect:ndmp disconnect:na
6249:AUE_ndmp_backup:ndmp backup:na
@@ -477,11 +477,11 @@
6251:AUE_cpu_ondemand:set ondemand CPU freq governor:ss
6252:AUE_cpu_performance:set max CPU freq governor:ss
6253:AUE_cpu_threshold:set CPU freq threshold:ss
-6254:AUE_uadmin_thaw:uadmin(1m) - thaw after freeze:ss,na
-6255:AUE_uadmin_config:uadmin(1m) - config:ss
+6254:AUE_uadmin_thaw:uadmin(8) - thaw after freeze:ss,na
+6255:AUE_uadmin_config:uadmin(8) - config:ss
#
-# SMF(5) svc.configd events (svcadm(1M) related)
+# smf(7) svc.configd events (svcadm(8) related)
#
6260:AUE_smf_enable:persistently enable service instance:ss
6261:AUE_smf_tmp_enable:temporarily enable service instance:ss
@@ -498,11 +498,11 @@
6272:AUE_smf_tmp_maintenance:set service instance maintenance temporary state:ss
6273:AUE_smf_milestone:set service management facility milestone:ss
#
-# SMF(5) svc.configd miscellaneous events
+# smf(7) svc.configd miscellaneous events
#
6275:AUE_smf_read_prop:read restricted access property value:as
#
-# SMF(5) svc.configd events (svccfg(1M) related)
+# smf(7) svc.configd events (svccfg(8) related)
#
6280:AUE_smf_create:create service instance object:as
6281:AUE_smf_delete:delete service instance object:as
@@ -518,12 +518,12 @@
6291:AUE_smf_change_prop:change service instance property:as
6292:AUE_smf_delete_prop:delete service instance property:as
#
-# nwamd(1M) events
+# nwamd(8) events
#
6300:AUE_nwam_enable:enable nwam profile object:ss
6301:AUE_nwam_disable:disable nwam profile object:ss
#
-# ilbd(1M) events
+# ilbd(8) events
#
6310:AUE_ilb_create_healthcheck:create ILB health check:as
6311:AUE_ilb_delete_healthcheck:delete ILB health check:as
@@ -538,7 +538,7 @@
6320:AUE_ilb_create_servergroup:create ILB server group:as
6321:AUE_ilb_delete_servergroup:delete ILB server group:as
#
-# netcfgd(1M) events
+# netcfgd(8) events
#
6330:AUE_netcfg_update:create or modify configuration object:ss
6331:AUE_netcfg_remove:remove configuration object from repository:ss
@@ -566,7 +566,7 @@
6418:AUE_tpm_fieldupgrade:update TPM protected capabilities:as
6419:AUE_tpm_resetlockvalue:reset TPM failed authorization attempt lock:as
#
-# hotplugd(1m) events
+# hotplugd(8) events
#
6500:AUE_hotplug_state:change hotplug connection state:ss
6501:AUE_hotplug_set:set hotplug bus private options:ss
@@ -574,7 +574,7 @@
#
# sudo event
#
-6650:AUE_sudo:sudo(1m):lo,ua,as
+6650:AUE_sudo:sudo(8):lo,ua,as
#
# Trusted Extensions events:
diff --git a/usr/src/lib/libbsm/common/adt.xml b/usr/src/lib/libbsm/common/adt.xml
index d16c904bc0..9dd74f0de5 100644
--- a/usr/src/lib/libbsm/common/adt.xml
+++ b/usr/src/lib/libbsm/common/adt.xml
@@ -66,7 +66,7 @@ Copyright (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved.
omitted, the internal name is the same as the
external name.
- title, these tags are used by auditrecord(1M) build to create
+ title, these tags are used by auditrecord(8) build to create
program, audit_record_attr database from adt events.
see Following example demonstrates their semantics:
@@ -85,7 +85,7 @@ Copyright (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved.
If the length of string in any of the given
elements is longer than defined, the string is
silently truncated to the defined length in the
- auditrecord(1M) runtime:
+ auditrecord(8) runtime:
element <= max (non-truncated) string length
title <= 46
@@ -175,11 +175,11 @@ Copyright (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved.
If the type is an array, its length must be given
explicitly.
- comment Used by auditrecord(1M) build to generate
+ comment Used by auditrecord(8) build to generate
audit_record_attr. Comment is explanation note
printed with token type. Colon (':') may not be
used in a comment. See example above for other
- tags related to auditrecord(1M).
+ tags related to auditrecord(8).
token Define allowed token names.
- id is the name of token; this name is used
@@ -189,7 +189,7 @@ Copyright (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved.
"TSOL" is defined; it means that this data is
to be used only in Trusted Solaris implementations.
See also example above for "token" tag relation to
- the auditrecord(1M) output.
+ the auditrecord(8) output.
msg_list Define a set of text strings.
- id is the name to be used for this group of text
@@ -664,7 +664,7 @@ Copyright (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved.
<event id="AUE_su" header="0" idNo="30" omit="JNI">
<title>su</title>
<program>/usr/bin/su</program>
- <see>su(1M)</see>
+ <see>su(8)</see>
<entry id="subject">
<internal token="subject"/>
<external opt="none"/>
@@ -887,14 +887,14 @@ Copyright (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved.
header="0" idNo="39" omit="JNI">
<title>su</title>
<program>/usr/bin/su</program>
- <see>su(1M)</see>
+ <see>su(8)</see>
</event>
<event id="AUE_role_logout" instance_of="AUE_generic_basic"
header="0" idNo="40" omit="JNI">
<title>su</title>
<program>/usr/bin/su</program>
- <see>su(1M)</see>
+ <see>su(8)</see>
</event>
<event id="AUE_newgrp_login" header="0" idNo="41" omit="JNI">
@@ -1069,13 +1069,13 @@ Copyright (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved.
header="0" idNo="47" omit="JNI">
<title>create wifi security object</title>
<program>/usr/sbin/dladm</program>
- <see>dladm(1M)</see>
+ <see>dladm(8)</see>
</event>
<event id="AUE_dladm_delete_secobj" instance_of="AUE_dladm_generic"
header="0" idNo="48" omit="JNI">
<title>delete wifi security object</title>
<program>/usr/sbin/dladm</program>
- <see>dladm(1M)</see>
+ <see>dladm(8)</see>
</event>
<!-- Trusted eXtensions (TX) events -->
@@ -1153,7 +1153,7 @@ Copyright (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved.
</entry>
</event>
- <!-- uadmin(1m) events -->
+ <!-- uadmin(8) events -->
<event id="AUE_uadmin_generic" type="generic" omit="always">
<entry id="subject">
<internal token="subject"/>
@@ -1194,34 +1194,34 @@ Copyright (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved.
<title>uadmin shutdown</title>
<program>/sbin/uadmin</program>
<program>/usr/sbin/uadmin</program>
- <see>uadmin(1M)</see>
+ <see>uadmin(8)</see>
</event>
<event id="AUE_uadmin_reboot" instance_of="AUE_uadmin_generic"
header="0" idNo="52" omit="JNI">
<title>uadmin reboot</title>
<program>/sbin/uadmin</program>
<program>/usr/sbin/uadmin</program>
- <see>uadmin(1M)</see>
+ <see>uadmin(8)</see>
</event>
<event id="AUE_uadmin_dump" instance_of="AUE_uadmin_generic"
header="0" idNo="53" omit="JNI">
<title>uadmin dump</title>
<program>/sbin/uadmin</program>
<program>/usr/sbin/uadmin</program>
- <see>uadmin(1M)</see>
+ <see>uadmin(8)</see>
</event>
<event id="AUE_uadmin_freeze" instance_of="AUE_uadmin_generic"
header="0" idNo="54" omit="JNI">
<title>uadmin freeze</title>
<program>/sbin/uadmin</program>
<program>/usr/sbin/uadmin</program>
- <see>uadmin(1M)</see>
+ <see>uadmin(8)</see>
</event>
<event id="AUE_uadmin_remount" header="0" idNo="55" omit="JNI">
<title>uadmin remount</title>
<program>/sbin/uadmin</program>
<program>/usr/sbin/uadmin</program>
- <see>uadmin(1M)</see>
+ <see>uadmin(8)</see>
<entry id="subject">
<internal token="subject"/>
<external opt="none"/>
@@ -1237,20 +1237,20 @@ Copyright (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved.
<title>uadmin ftrace</title>
<program>/sbin/uadmin</program>
<program>/usr/sbin/uadmin</program>
- <see>uadmin(1M)</see>
+ <see>uadmin(8)</see>
</event>
<event id="AUE_uadmin_swapctl" instance_of="AUE_uadmin_generic_fcn"
header="0" idNo="57" omit="JNI">
<title>uadmin swapctl</title>
<program>/sbin/uadmin</program>
<program>/usr/sbin/uadmin</program>
- <see>uadmin(1M)</see>
+ <see>uadmin(8)</see>
</event>
<event id="AUE_uadmin_thaw" header="0" idNo="96" omit="JNI">
<title>thaw after freeze</title>
<program>/sbin/uadmin</program>
<program>/usr/sbin/uadmin</program>
- <see>uadmin(1M)</see>
+ <see>uadmin(8)</see>
<entry id="subject">
<internal token="subject"/>
<external opt="none"/>
@@ -1271,7 +1271,7 @@ Copyright (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved.
<title>uadmin config</title>
<program>/sbin/uadmin</program>
<program>/usr/sbin/uadmin</program>
- <see>uadmin(1M)</see>
+ <see>uadmin(8)</see>
</event>
<!-- smbd service event; smbd session setup -->
@@ -1331,7 +1331,7 @@ Copyright (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved.
<event id="AUE_vscan_quarantine" header="0" idNo="60" omit="JNI">
<title>VSCAN: quarantine infected file</title>
<program>/usr/lib/vscan/vscand</program>
- <see>vscand(1M), ICAP RFC 3507 (Extensions)</see>
+ <see>vscand(8), ICAP RFC 3507 (Extensions)</see>
<entry id="subject">
<internal token="subject"/>
<external opt="none"/>
@@ -1357,7 +1357,7 @@ Copyright (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved.
idNo="61" omit="JNI">
<title>NDMP Connect</title>
<program>/usr/lib/ndmp/ndmpd</program>
- <see>ndmpd(1M)</see>
+ <see>ndmpd(8)</see>
</event>
<!-- ndmp service event; ndmp client disconnect -->
@@ -1365,14 +1365,14 @@ Copyright (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved.
idNo="62" omit="JNI">
<title>NDMP Disconnect</title>
<program>/usr/lib/ndmp/ndmpd</program>
- <see>ndmpd(1M)</see>
+ <see>ndmpd(8)</see>
</event>
<!-- ndmp service event; ndmp backup -->
<event id="AUE_ndmp_backup" header="0" idNo="63" omit="JNI">
<title>NDMP Backup</title>
<program>/usr/lib/ndmp/ndmpd</program>
- <see>ndmpd(1M)</see>
+ <see>ndmpd(8)</see>
<entry id="subject">
<internal token="subject"/>
<external opt="none"/>
@@ -1402,7 +1402,7 @@ Copyright (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved.
<event id="AUE_ndmp_restore" header="0" idNo="64" omit="JNI">
<title>NDMP Restore</title>
<program>/usr/lib/ndmp/ndmpd</program>
- <see>ndmpd(1M)</see>
+ <see>ndmpd(8)</see>
<entry id="subject">
<internal token="subject"/>
<external opt="none"/>
@@ -1488,110 +1488,110 @@ Copyright (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved.
<event id="AUE_smf_enable" instance_of="AUE_smf_generic" header="0"
idNo="65" omit="JNI">
- <program>svc.configd(1M)</program>
- <see>svcadm(1M)</see>
+ <program>svc.configd(8)</program>
+ <see>svcadm(8)</see>
</event>
<event id="AUE_smf_tmp_enable" instance_of="AUE_smf_generic" header="0"
idNo="66" omit="JNI">
- <program>svc.configd(1M)</program>
- <see>svcadm(1M)</see>
+ <program>svc.configd(8)</program>
+ <see>svcadm(8)</see>
</event>
<event id="AUE_smf_disable" instance_of="AUE_smf_generic" header="0"
idNo="67" omit="JNI">
- <program>svc.configd(1M)</program>
- <see>svcadm(1M)</see>
+ <program>svc.configd(8)</program>
+ <see>svcadm(8)</see>
</event>
<event id="AUE_smf_tmp_disable" instance_of="AUE_smf_generic" header="0"
idNo="68" omit="JNI">
- <program>svc.configd(1M)</program>
- <see>svcadm(1M)</see>
+ <program>svc.configd(8)</program>
+ <see>svcadm(8)</see>
</event>
<event id="AUE_smf_restart" instance_of="AUE_smf_generic" header="0"
idNo="69" omit="JNI">
- <program>svc.configd(1M)</program>
- <see>svcadm(1M)</see>
+ <program>svc.configd(8)</program>
+ <see>svcadm(8)</see>
</event>
<event id="AUE_smf_refresh" instance_of="AUE_smf_generic" header="0"
idNo="70" omit="JNI">
- <program>svc.configd(1M)</program>
- <see>svcadm(1M)</see>
+ <program>svc.configd(8)</program>
+ <see>svcadm(8)</see>
</event>
<event id="AUE_smf_clear" instance_of="AUE_smf_generic" header="0"
idNo="71" omit="JNI">
- <program>svc.configd(1M)</program>
- <see>svcadm(1M)</see>
+ <program>svc.configd(8)</program>
+ <see>svcadm(8)</see>
</event>
<event id="AUE_smf_degrade" instance_of="AUE_smf_generic" header="0"
idNo="72" omit="JNI">
- <program>svc.configd(1M)</program>
- <see>svcadm(1M)</see>
+ <program>svc.configd(8)</program>
+ <see>svcadm(8)</see>
</event>
<event id="AUE_smf_immediate_degrade" instance_of="AUE_smf_generic"
header="0" idNo="73" omit="JNI">
- <program>svc.configd(1M)</program>
- <see>svcadm(1M)</see>
+ <program>svc.configd(8)</program>
+ <see>svcadm(8)</see>
</event>
<event id="AUE_smf_maintenance" instance_of="AUE_smf_generic" header="0"
idNo="74" omit="JNI">
- <program>svc.configd(1M)</program>
- <see>svcadm(1M)</see>
+ <program>svc.configd(8)</program>
+ <see>svcadm(8)</see>
</event>
<event id="AUE_smf_immediate_maintenance" instance_of="AUE_smf_generic"
header="0" idNo="75" omit="JNI">
- <program>svc.configd(1M)</program>
- <see>svcadm(1M)</see>
+ <program>svc.configd(8)</program>
+ <see>svcadm(8)</see>
</event>
<event id="AUE_smf_immtmp_maintenance" instance_of="AUE_smf_generic"
header="0" idNo="76" omit="JNI">
- <program>svc.configd(1M)</program>
- <see>svcadm(1M)</see>
+ <program>svc.configd(8)</program>
+ <see>svcadm(8)</see>
</event>
<event id="AUE_smf_tmp_maintenance" instance_of="AUE_smf_generic" header="0"
idNo="77" omit="JNI">
- <program>svc.configd(1M)</program>
- <see>svcadm(1M)</see>
+ <program>svc.configd(8)</program>
+ <see>svcadm(8)</see>
</event>
<event id="AUE_smf_milestone" instance_of="AUE_smf_generic" header="0"
idNo="78" omit="JNI">
- <program>svc.configd(1M)</program>
- <see>svcadm(1M)</see>
+ <program>svc.configd(8)</program>
+ <see>svcadm(8)</see>
</event>
<event id="AUE_smf_create" instance_of="AUE_smf_generic" header="0"
idNo="79" omit="JNI">
- <program>svc.configd(1M)</program>
- <see>svccfg(1M)</see>
+ <program>svc.configd(8)</program>
+ <see>svccfg(8)</see>
</event>
<event id="AUE_smf_delete" instance_of="AUE_smf_generic" header="0"
idNo="80" omit="JNI">
- <program>svc.configd(1M)</program>
- <see>svccfg(1M)</see>
+ <program>svc.configd(8)</program>
+ <see>svccfg(8)</see>
</event>
<event id="AUE_smf_create_pg" instance_of="AUE_smf_generic_pg" header="0"
idNo="81" omit="JNI">
- <program>svc.configd(1M)</program>
- <see>svccfg(1M)</see>
+ <program>svc.configd(8)</program>
+ <see>svccfg(8)</see>
</event>
<event id="AUE_smf_create_npg" instance_of="AUE_smf_generic_pg" header="0"
idNo="82" omit="JNI">
- <program>svc.configd(1M)</program>
- <see>svccfg(1M)</see>
+ <program>svc.configd(8)</program>
+ <see>svccfg(8)</see>
</event>
<event id="AUE_smf_delete_pg" instance_of="AUE_smf_generic_pg" header="0"
idNo="83" omit="JNI">
- <program>svc.configd(1M)</program>
- <see>svccfg(1M)</see>
+ <program>svc.configd(8)</program>
+ <see>svccfg(8)</see>
</event>
<event id="AUE_smf_delete_npg" instance_of="AUE_smf_generic_pg" header="0"
idNo="84" omit="JNI">
- <program>svc.configd(1M)</program>
- <see>svccfg(1M)</see>
+ <program>svc.configd(8)</program>
+ <see>svccfg(8)</see>
</event>
<event id="AUE_smf_create_snap" header="0" idNo="85" omit="JNI">
- <program>svc.configd(1M)</program>
- <see>svccfg(1M)</see>
+ <program>svc.configd(8)</program>
+ <see>svccfg(8)</see>
<entry id="subject">
<internal token="subject"/>
<external opt="none"/>
@@ -1617,8 +1617,8 @@ Copyright (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved.
</entry>
</event>
<event id="AUE_smf_delete_snap" header="0" idNo="86" omit="JNI">
- <program>svc.configd(1M)</program>
- <see>svccfg(1M)</see>
+ <program>svc.configd(8)</program>
+ <see>svccfg(8)</see>
<entry id="subject">
<internal token="subject"/>
<external opt="none"/>
@@ -1644,8 +1644,8 @@ Copyright (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved.
</entry>
</event>
<event id="AUE_smf_attach_snap" header="0" idNo="87" omit="JNI">
- <program>svc.configd(1M)</program>
- <see>svccfg(1M)</see>
+ <program>svc.configd(8)</program>
+ <see>svccfg(8)</see>
<entry id="subject">
<internal token="subject"/>
<external opt="none"/>
@@ -1682,8 +1682,8 @@ Copyright (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved.
</event>
<event id="AUE_smf_annotation" header="0" idNo="88" omit="JNI">
- <program>svc.configd(1M)</program>
- <see>svccfg(1M)</see>
+ <program>svc.configd(8)</program>
+ <see>svccfg(8)</see>
<entry id="subject">
<internal token="subject"/>
<external opt="none"/>
@@ -1705,8 +1705,8 @@ Copyright (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved.
</event>
<event id="AUE_smf_create_prop" header="0" idNo="89" omit="JNI">
- <program>svc.configd(1M)</program>
- <see>svccfg(1M)</see>
+ <program>svc.configd(8)</program>
+ <see>svccfg(8)</see>
<entry id="subject">
<internal token="subject"/>
<external opt="none"/>
@@ -1738,8 +1738,8 @@ Copyright (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved.
</event>
<event id="AUE_smf_change_prop" header="0" idNo="90" omit="JNI">
- <program>svc.configd(1M)</program>
- <see>svccfg(1M)</see>
+ <program>svc.configd(8)</program>
+ <see>svccfg(8)</see>
<entry id="subject">
<internal token="subject"/>
<external opt="none"/>
@@ -1770,8 +1770,8 @@ Copyright (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved.
</entry>
</event>
<event id="AUE_smf_delete_prop" header="0" idNo="91" omit="JNI">
- <program>svc.configd(1M)</program>
- <see>svccfg(1M)</see>
+ <program>svc.configd(8)</program>
+ <see>svccfg(8)</see>
<entry id="subject">
<internal token="subject"/>
<external opt="none"/>
@@ -1794,8 +1794,8 @@ Copyright (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved.
<event id="AUE_smf_read_prop" instance_of="AUE_smf_generic" header="0"
idNo="92" omit="JNI">
- <program>svc.configd(1M)</program>
- <see>svccfg(1M)</see>
+ <program>svc.configd(8)</program>
+ <see>svccfg(8)</see>
</event>
<!-- CPUFreq related events -->
@@ -1803,7 +1803,7 @@ Copyright (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved.
<event id="AUE_cpu_ondemand" header="0" idNo="93" omit="JNI">
<title>set CPU freq to minimal unless load increases</title>
<program>/usr/lib/hal/hald-addon-cpufreq</program>
- <see>hald(1M)</see>
+ <see>hald(8)</see>
<entry id="subject">
<internal token="subject"/>
<external opt="none"/>
@@ -1821,7 +1821,7 @@ Copyright (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved.
<event id="AUE_cpu_performance" header="0" idNo="94" omit="JNI">
<title>set CPU freq to Max</title>
<program>/usr/lib/hal/hald-addon-cpufreq</program>
- <see>hald(1M)</see>
+ <see>hald(8)</see>
<entry id="subject">
<internal token="subject"/>
<external opt="none"/>
@@ -1839,7 +1839,7 @@ Copyright (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved.
<event id="AUE_cpu_threshold" header="0" idNo="95" omit="JNI">
<title>set CPU frequency threshold percentage</title>
<program>/usr/lib/hal/hald-addon-cpufreq</program>
- <see>hald(1M)</see>
+ <see>hald(8)</see>
<entry id="subject">
<internal token="subject"/>
<external opt="none"/>
@@ -1987,12 +1987,12 @@ Copyright (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved.
<see>tcsd(8)</see>
</event>
-<!-- hotplug events recorded by hotplugd(1m) -->
+<!-- hotplug events recorded by hotplugd(8) -->
<event id="AUE_hotplug_state" header="0" idNo="117" omit="JNI">
<title>change hotplug connection state</title>
<program>/usr/lib/hotplugd</program>
- <see>hotplugd(1M)</see>
+ <see>hotplugd(8)</see>
<entry id="subject">
<internal token="subject"/>
<external opt="none"/>
@@ -2031,7 +2031,7 @@ Copyright (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved.
<event id="AUE_hotplug_set" header="0" idNo="118" omit="JNI">
<title>set hotplug bus private options</title>
<program>/usr/lib/hotplugd</program>
- <see>hotplugd(1M)</see>
+ <see>hotplugd(8)</see>
<entry id="subject">
<internal token="subject"/>
<external opt="none"/>
@@ -2065,7 +2065,7 @@ Copyright (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved.
<event id="AUE_ilb_create_healthcheck" header="0" idNo="120" omit="JNI">
<title>Create Integrated Loadbalancer healthcheck object</title>
<program>/usr/sbin/ilbadm</program>
- <see>ilbadm(1m)</see>
+ <see>ilbadm(8)</see>
<entry id="subject">
<internal token="subject"/>
<external opt="none"/>
@@ -2116,7 +2116,7 @@ Copyright (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved.
<event id="AUE_ilb_delete_healthcheck" header="0" idNo="121" omit="JNI">
<title>Delete Integrated Loadbalancer healthcheck object</title>
<program>/usr/sbin/ilbadm</program>
- <see>ilbadm(1m)</see>
+ <see>ilbadm(8)</see>
<entry id="subject">
<internal token="subject"/>
<external opt="none"/>
@@ -2140,7 +2140,7 @@ Copyright (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved.
<event id="AUE_ilb_create_rule" header="0" idNo="122" omit="JNI">
<title>Create Integrated Loadbalancer rule</title>
<program>/usr/sbin/ilbadm</program>
- <see>ilbadm(1m)</see>
+ <see>ilbadm(8)</see>
<entry id="subject">
<internal token="subject"/>
<external opt="none"/>
@@ -2271,27 +2271,27 @@ Copyright (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved.
header="0" idNo="123">
<title>Delete Integrated Loadbalancer rule</title>
<program>/usr/sbin/ilbadm</program>
- <see>ilbadm(1m)</see>
+ <see>ilbadm(8)</see>
</event>
<event id="AUE_ilb_disable_rule" instance_of="AUE_generic_ILB_rule"
header="0" idNo="124">
<title>Disable Integrated Loadbalancer rule</title>
<program>/usr/sbin/ilbadm</program>
- <see>ilbadm(1m)</see>
+ <see>ilbadm(8)</see>
</event>
<event id="AUE_ilb_enable_rule" instance_of="AUE_generic_ILB_rule"
header="0" idNo="125">
<title>Enable Integrated Loadbalancer rule</title>
<program>/usr/sbin/ilbadm</program>
- <see>ilbadm(1m)</see>
+ <see>ilbadm(8)</see>
</event>
<event id="AUE_ilb_add_server" header="0" idNo="126" omit="JNI">
<title>Add server to Integrated Loadbalancer</title>
<program>/usr/sbin/ilbadm</program>
- <see>ilbadm(1m)</see>
+ <see>ilbadm(8)</see>
<entry id="subject">
<internal token="subject"/>
<external opt="none"/>
@@ -2343,7 +2343,7 @@ Copyright (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved.
<event id="AUE_ilb_disable_server" header="0" idNo="127" omit="JNI">
<title>Disable server to Integrated Loadbalancer</title>
<program>/usr/sbin/ilbadm</program>
- <see>ilbadm(1m)</see>
+ <see>ilbadm(8)</see>
<entry id="subject">
<internal token="subject"/>
<external opt="none"/>
@@ -2375,7 +2375,7 @@ Copyright (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved.
<event id="AUE_ilb_enable_server" header="0" idNo="128" omit="JNI">
<title>Enable server to Integrated Loadbalancer</title>
<program>/usr/sbin/ilbadm</program>
- <see>ilbadm(1m)</see>
+ <see>ilbadm(8)</see>
<entry id="subject">
<internal token="subject"/>
<external opt="none"/>
@@ -2407,7 +2407,7 @@ Copyright (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved.
<event id="AUE_ilb_remove_server" header="0" idNo="129" omit="JNI">
<title>Remove server from Integrated Loadbalancer</title>
<program>/usr/sbin/ilbadm</program>
- <see>ilbadm(1m)</see>
+ <see>ilbadm(8)</see>
<entry id="subject">
<internal token="subject"/>
<external opt="none"/>
@@ -2444,7 +2444,7 @@ Copyright (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved.
<event id="AUE_ilb_create_servergroup" header="0" idNo="130" omit="JNI">
<title>Create server group for Integrated Loadbalancer</title>
<program>/usr/sbin/ilbadm</program>
- <see>ilbadm(1m)</see>
+ <see>ilbadm(8)</see>
<entry id="subject">
<internal token="subject"/>
<external opt="none"/>
@@ -2468,7 +2468,7 @@ Copyright (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved.
<event id="AUE_ilb_delete_servergroup" header="0" idNo="131" omit="JNI">
<title>Delete server group from Integrated Loadbalancer</title>
<program>/usr/sbin/ilbadm</program>
- <see>ilbadm(1m)</see>
+ <see>ilbadm(8)</see>
<entry id="subject">
<internal token="subject"/>
<external opt="none"/>
@@ -2761,7 +2761,7 @@ Copyright (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved.
<msg id="ANON_USER">No anonymous</msg>
</msg_list>
-<!-- msg list for uadmin(1m) fcn argument (next action, see uadmin(2)) -->
+<!-- msg list for uadmin(8) fcn argument (next action, see uadmin(2)) -->
<msg_list id="uadmin_fcn" header="0" start="3000" public="true">
<msg id="AD_HALT">Halt the processor(s)</msg>
<msg id="AD_POWEROFF">Halt the processor(s) and turn off the power</msg>
diff --git a/usr/src/lib/libbsm/common/audit_scf.c b/usr/src/lib/libbsm/common/audit_scf.c
index fa990fc669..e2946abf28 100644
--- a/usr/src/lib/libbsm/common/audit_scf.c
+++ b/usr/src/lib/libbsm/common/audit_scf.c
@@ -22,7 +22,7 @@
* Copyright (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved.
*/
-/* auditd smf(5)/libscf(3LIB) interface - set and display audit parameters */
+/* auditd smf(7)/libscf(3LIB) interface - set and display audit parameters */
#include <audit_scf.h>
#include <audit_policy.h>
@@ -691,7 +691,7 @@ do_getpolicy_scf(uint32_t *policy_mask)
bzero(prop_vect, sizeof (prop_vect));
bzero(policy_arr, sizeof (policy_arr));
- /* prepare the smf(5) query */
+ /* prepare the smf(7) query */
for (i = 0; i < POLICY_TBL_SZ; i++) {
cur_policy_str = policy_table[i].policy_str;
diff --git a/usr/src/lib/libbsm/common/audit_scf.h b/usr/src/lib/libbsm/common/audit_scf.h
index 09b826e97b..d913dc57d0 100644
--- a/usr/src/lib/libbsm/common/audit_scf.h
+++ b/usr/src/lib/libbsm/common/audit_scf.h
@@ -30,7 +30,7 @@ extern "C" {
#endif
/*
- * auditd smf(5)/libscf(3LIB) interface - set and display audit parameters
+ * auditd smf(7)/libscf(3LIB) interface - set and display audit parameters
*/
#include <audit_plugin.h>
@@ -110,7 +110,7 @@ typedef struct scf_qctrl scf_qctrl_t;
#define PRESELECTION_NAFLAGS "naflags"
#define PRESELECTION_MAXBUF 256 /* max. length of na/flags */
-/* auditd(1M) plugin related well known properties */
+/* auditd(8) plugin related well known properties */
#define PLUGIN_ACTIVE "active" /* plugin state */
#define PLUGIN_PATH "path" /* plugin shared object */
#define PLUGIN_QSIZE "qsize" /* plugin queue size */
diff --git a/usr/src/lib/libc/i386/sys/ptrace.c b/usr/src/lib/libc/i386/sys/ptrace.c
index c4ecdd34f4..13865136b5 100644
--- a/usr/src/lib/libc/i386/sys/ptrace.c
+++ b/usr/src/lib/libc/i386/sys/ptrace.c
@@ -25,11 +25,9 @@
*/
/*
- * ptrace(2) interface built on top of proc(4).
+ * ptrace(2) interface built on top of proc(5).
*/
-#pragma ident "%Z%%M% %I% %E% SMI"
-
#pragma weak _ptrace = ptrace
#include "lint.h"
diff --git a/usr/src/lib/libc/port/gen/crypt.c b/usr/src/lib/libc/port/gen/crypt.c
index 812062644f..016da3202a 100644
--- a/usr/src/lib/libc/port/gen/crypt.c
+++ b/usr/src/lib/libc/port/gen/crypt.c
@@ -128,7 +128,7 @@ static char *_unix_crypt_gensalt(char *gsbuffer, size_t gsbufflen,
* This function encodes strings in a suitable for for secure storage
* as passwords. It generates the password hash given the plaintext and salt.
*
- * If the first character of salt is "$" then we use crypt.conf(4) to
+ * If the first character of salt is "$" then we use crypt.conf(5) to
* determine which plugin to use and run the crypt_genhash_impl(3c) function
* from it.
* Otherwise we use the old unix algorithm.
@@ -166,7 +166,7 @@ crypt(const char *plaintext, const char *salt)
/*
* Find the algorithm name from the salt and look it up in
- * crypt.conf(4) to find out what shared object to use.
+ * crypt.conf(5) to find out what shared object to use.
* If we can't find it in crypt.conf then getalgbyname would
* have returned with found = B_FALSE so we use the unix algorithm.
* If alg is NULL but found = B_TRUE then there is a problem with
@@ -472,12 +472,12 @@ alg_valid(const char *algname, const struct crypt_policy_s *policy)
}
/*
- * getalgbyname - read crypt.conf(4) looking for algname
+ * getalgbyname - read crypt.conf(5) looking for algname
*
* RETURN VALUES
* On error NULL and errno is set
* On success the alg details including an open handle to the lib
- * If crypt.conf(4) is okay but algname doesn't exist in it then
+ * If crypt.conf(5) is okay but algname doesn't exist in it then
* return NULL the caller should then use the default algorithm
* as per the policy.
*/
diff --git a/usr/src/lib/libc/port/gen/getusershell.c b/usr/src/lib/libc/port/gen/getusershell.c
index df10f2f6fd..c744828a8a 100644
--- a/usr/src/lib/libc/port/gen/getusershell.c
+++ b/usr/src/lib/libc/port/gen/getusershell.c
@@ -134,7 +134,7 @@ initshells(void)
return ((char **)okshells);
/*
* The +1 in the malloc() below is needed to handle the final
- * fgets() NULL terminator. From fgets(3S):
+ * fgets() NULL terminator. From fgets(3C):
*
* char *fgets(char *s, int n, FILE *stream);
*
diff --git a/usr/src/lib/libc/port/gen/isaexec.c b/usr/src/lib/libc/port/gen/isaexec.c
index c3807ead39..5db6ccf29a 100644
--- a/usr/src/lib/libc/port/gen/isaexec.c
+++ b/usr/src/lib/libc/port/gen/isaexec.c
@@ -57,7 +57,7 @@ isaexec(const char *execname, char *const *argv, char *const *envp)
int saved_errno;
/*
- * Extract the isalist(5) for userland from the kernel.
+ * Extract the isalist(7) for userland from the kernel.
*/
isalist = malloc(isalen);
do {
diff --git a/usr/src/lib/libc/port/gen/localtime.c b/usr/src/lib/libc/port/gen/localtime.c
index 65c202821d..a2cb012c46 100644
--- a/usr/src/lib/libc/port/gen/localtime.c
+++ b/usr/src/lib/libc/port/gen/localtime.c
@@ -79,8 +79,8 @@
*
* A zoneinfo timezone is a reference to a file that contains a set of
* rules that describe the timezone. In Solaris, the file is in
- * /usr/share/lib/zoneinfo. The file is generated by zic(1M), based
- * on zoneinfo rules "source" files. This is all described on the zic(1M)
+ * /usr/share/lib/zoneinfo. The file is generated by zic(8), based
+ * on zoneinfo rules "source" files. This is all described on the zic(8)
* man page.
*/
@@ -1410,7 +1410,7 @@ posix_daylight(long long *janfirst, int year, posix_daylight_t *pdaylightp)
/*
* Try to load zoneinfo file into internal transition tables using name
- * indicated in TZ, and do validity checks. The format of zic(1M)
+ * indicated in TZ, and do validity checks. The format of zic(8)
* compiled zoneinfo files isdescribed in tzfile.h
*/
static int
diff --git a/usr/src/lib/libc/port/locale/gb18030.c b/usr/src/lib/libc/port/locale/gb18030.c
index 3901270a8d..920da0a97e 100644
--- a/usr/src/lib/libc/port/locale/gb18030.c
+++ b/usr/src/lib/libc/port/locale/gb18030.c
@@ -29,7 +29,7 @@
/*
* PRC National Standard GB 18030-2000 encoding of Chinese text.
*
- * See gb18030(5) for details.
+ * See gb18030(7) for details.
*/
#include "lint.h"
diff --git a/usr/src/lib/libc/port/regex/regex.c b/usr/src/lib/libc/port/regex/regex.c
index 769761daef..6e4c86e17e 100644
--- a/usr/src/lib/libc/port/regex/regex.c
+++ b/usr/src/lib/libc/port/regex/regex.c
@@ -27,8 +27,6 @@
/* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */
/* All Rights Reserved */
-#pragma ident "%Z%%M% %I% %E% SMI"
-
/*
* IMPORTANT NOTE:
*
@@ -328,7 +326,7 @@ regex(const char *regexp, const char *stringp, ...)
*
* NOTE:
*
- * According to manual page regcmp(3G), regex() returns substrings
+ * According to manual page regcmp(3C), regex() returns substrings
* that match subexpressions even when no substring matches the
* entire regular expression.
*/
diff --git a/usr/src/lib/libc/port/stdio/README.design b/usr/src/lib/libc/port/stdio/README.design
index 748f7f9913..80305bf22b 100644
--- a/usr/src/lib/libc/port/stdio/README.design
+++ b/usr/src/lib/libc/port/stdio/README.design
@@ -266,7 +266,7 @@ Extended File and fileno()
The 32-bit libc has historically been limited to 255 open streams
because of the use of an unsigned char. This problem does not impact the
64-bit libc. To deal with this, libc uses a series of techniques which
-are summarized for users in extendedFILE(5). The usage of extendedFILE
+are summarized for users in extendedFILE(7). The usage of extendedFILE
can also be enabled by passing the special 'F' character to fopen(3C).
The '_magic' member in the 32-bit 'struct __FILE_TAG' contains what used
diff --git a/usr/src/lib/libc/port/sys/epoll.c b/usr/src/lib/libc/port/sys/epoll.c
index 230860d391..d497856083 100644
--- a/usr/src/lib/libc/port/sys/epoll.c
+++ b/usr/src/lib/libc/port/sys/epoll.c
@@ -68,7 +68,7 @@
/*
* The defined behavior for epoll_wait/epoll_pwait when using a timeout less
* than 0 is to wait for events until they arrive (or interrupted by a signal).
- * While poll(7d) operates in this manner for a timeout of -1, using other
+ * While poll(4D) operates in this manner for a timeout of -1, using other
* negative values results in an immediate timeout, as if it had been set to 0.
* For that reason, negative values are clamped to -1.
*/
diff --git a/usr/src/lib/libc/port/threads/door_calls.c b/usr/src/lib/libc/port/threads/door_calls.c
index baa1f573aa..87124a6a37 100644
--- a/usr/src/lib/libc/port/threads/door_calls.c
+++ b/usr/src/lib/libc/port/threads/door_calls.c
@@ -809,7 +809,7 @@ door_server_create(door_server_func_t *create_func)
/*
* Thread start function for door_create_server() below.
- * Create door server threads with cancellation(5) disabled.
+ * Create door server threads with cancellation(7) disabled.
*/
static void *
door_create_func(void *arg)
diff --git a/usr/src/lib/libc/sparc/sys/ptrace.c b/usr/src/lib/libc/sparc/sys/ptrace.c
index 796e0dac5c..0153088f0f 100644
--- a/usr/src/lib/libc/sparc/sys/ptrace.c
+++ b/usr/src/lib/libc/sparc/sys/ptrace.c
@@ -25,7 +25,7 @@
*/
/*
- * ptrace(2) interface built on top of proc(4).
+ * ptrace(2) interface built on top of proc(5).
*/
diff --git a/usr/src/lib/libc_db/common/thread_db.c b/usr/src/lib/libc_db/common/thread_db.c
index 53e1f6b1c7..93b54ef65f 100644
--- a/usr/src/lib/libc_db/common/thread_db.c
+++ b/usr/src/lib/libc_db/common/thread_db.c
@@ -2134,7 +2134,7 @@ __td_thr_validate(const td_thrhandle_t *th_p)
/*
* Get a thread's private binding to a given thread specific
- * data(TSD) key(see thr_getspecific(3T). If the thread doesn't
+ * data(TSD) key(see thr_getspecific(3C). If the thread doesn't
* have a binding for a particular key, then NULL is returned.
*/
#pragma weak td_thr_tsd = __td_thr_tsd
diff --git a/usr/src/lib/libcryptoutil/README b/usr/src/lib/libcryptoutil/README
index 371374e42d..77280391ee 100644
--- a/usr/src/lib/libcryptoutil/README
+++ b/usr/src/lib/libcryptoutil/README
@@ -105,7 +105,7 @@ Consumers:
command line args to mech numbers. They will need to
add the "CKM_" prefix before calling pkc11_str2mech()
- cryptoadm(1m) for output to user, and for storing in pkcs11.conf
+ cryptoadm(8) for output to user, and for storing in pkcs11.conf
file.
Debug code.
@@ -114,7 +114,7 @@ Consumers:
The "pkcs11.conf" configuration file parsing code and data structures are
shared between:
- cryptoadm(1m), libpkcs11(3crypto).
+ cryptoadm(8), libpkcs11(3crypto).
2.3.1 Data Structures:
diff --git a/usr/src/lib/libcryptoutil/common/debug.c b/usr/src/lib/libcryptoutil/common/debug.c
index 84ac2ec4be..b2537c8ded 100644
--- a/usr/src/lib/libcryptoutil/common/debug.c
+++ b/usr/src/lib/libcryptoutil/common/debug.c
@@ -68,7 +68,7 @@ cryptodebug(const char *fmt, ...)
/*
* cryptoerror
*
- * This is intended to be used both by interactive commands like cryptoadm(1m)
+ * This is intended to be used both by interactive commands like cryptoadm(8)
* digest(1) etc, and by libraries libpkcs11, libelfsign etc.
*
* A library probably wants most (all?) of its errors going to syslog but
diff --git a/usr/src/lib/libdevinfo/devinfo_devlink.c b/usr/src/lib/libdevinfo/devinfo_devlink.c
index 8d4d0ed709..138f75eab2 100644
--- a/usr/src/lib/libdevinfo/devinfo_devlink.c
+++ b/usr/src/lib/libdevinfo/devinfo_devlink.c
@@ -67,7 +67,7 @@ static const char *skip_files[] = {
*
* This file contains two sets of interfaces which operate on the reverse
* links database. One set (which includes di_devlink_open()/_close())
- * allows link generators like devfsadm(1M) and ucblinks(1B) (writers) to
+ * allows link generators like devfsadm(8) and ucblinks(1B) (writers) to
* populate the database with /devices -> /dev mappings. Another set
* of interfaces (which includes di_devlink_init()/_fini()) allows
* applications (readers) to lookup the database for /dev links corresponding
@@ -3731,7 +3731,7 @@ walk_cache_node(di_devlink_handle_t hdp, const char *path, link_desc_t *linkp)
* are selected.
* If neither flag is specified, all devlinks are selected.
*
- * re An extended regular expression in regex(5) format which
+ * re An extended regular expression in regex(7) format which
* selects the /dev links to be returned. The regular
* expression should use link pathnames relative to
* /dev. i.e. without the leading "/dev/" prefix.
diff --git a/usr/src/lib/libdevinfo/devinfo_dim.c b/usr/src/lib/libdevinfo/devinfo_dim.c
index 141f5a9514..073fc60543 100644
--- a/usr/src/lib/libdevinfo/devinfo_dim.c
+++ b/usr/src/lib/libdevinfo/devinfo_dim.c
@@ -23,8 +23,6 @@
* Use is subject to license terms.
*/
-#pragma ident "%Z%%M% %I% %E% SMI"
-
#include "libdevinfo.h"
#include <strings.h>
#include <sys/modctl.h>
@@ -35,7 +33,7 @@
* information into /devices and /dev paths. It does this using interfaces to
* the kernel instance tree so that it can provide translations for devices
* which are no longer present. An example consumer of these interfaces is
- * iostat(1M) - which shows, in its first iteration, activity since reboot.
+ * iostat(8) - which shows, in its first iteration, activity since reboot.
* With persistant kstats, a device which was busy a long time ago can still
* have a decaying presence in iostat output, and that output, when '-n' is
* used, should show the public name.
diff --git a/usr/src/lib/libdhcpagent/common/dhcpagent_ipc.c b/usr/src/lib/libdhcpagent/common/dhcpagent_ipc.c
index a70eb2bbdc..9c669a7047 100644
--- a/usr/src/lib/libdhcpagent/common/dhcpagent_ipc.c
+++ b/usr/src/lib/libdhcpagent/common/dhcpagent_ipc.c
@@ -438,7 +438,7 @@ dhcp_ipc_init(int *listen_fd)
/*
* we use SO_REUSEADDR here since in the case where there
* really is another daemon running that is using the agent's
- * port, bind(3N) will fail. so we can't lose.
+ * port, bind(3SOCKET) will fail. so we can't lose.
*/
(void) setsockopt(*listen_fd, SOL_SOCKET, SO_REUSEADDR, &on,
@@ -477,7 +477,7 @@ dhcp_ipc_accept(int listen_fd, int *fd, int *is_priv)
/*
* if we were extremely concerned with portability, we would
* set the socket into nonblocking mode before doing the
- * accept(3N), since on BSD-based networking stacks, there is
+ * accept(3SOCKET), since on BSD-based networking stacks, there is
* a potential race that can occur if the socket which
* connected to us performs a TCP RST before we accept, since
* BSD handles this case entirely in the kernel and as a
diff --git a/usr/src/lib/libdhcpagent/common/dhcpagent_ipc.h b/usr/src/lib/libdhcpagent/common/dhcpagent_ipc.h
index beed5b1ffc..2f1cb8c1ee 100644
--- a/usr/src/lib/libdhcpagent/common/dhcpagent_ipc.h
+++ b/usr/src/lib/libdhcpagent/common/dhcpagent_ipc.h
@@ -159,7 +159,7 @@ extern int dhcp_ipc_getinfo(dhcp_optnum_t *, DHCP_OPT **, int32_t);
/*
* private dhcpagent ipc "server side" functions -- these are only for
- * use by dhcpagent(1M) and are subject to change.
+ * use by dhcpagent(8) and are subject to change.
*/
extern int dhcp_ipc_init(int *);
diff --git a/usr/src/lib/libdhcputil/README.inittab b/usr/src/lib/libdhcputil/README.inittab
index b6ec2763e6..1f18d08517 100644
--- a/usr/src/lib/libdhcputil/README.inittab
+++ b/usr/src/lib/libdhcputil/README.inittab
@@ -24,7 +24,6 @@ All rights reserved.
Inittab Purpose, Goals, and Functionality
Peter Memishian
-ident "%Z%%M% %I% %E% SMI"
PROBLEM STATEMENT
=================
@@ -41,8 +40,8 @@ in core Solaris (in.dhcpd, dhcpinfo, snoop, and dhcpmgr), the
situation has spiraled out of control. In addition to the obvious
maintenance headache caused by the redundant code, it has also become
a burden to our customers, who already have to cope with multiple
-places where DHCP option information is stored (dhcptags(4),
-dhcptab(4)).
+places where DHCP option information is stored (dhcptags(5),
+dhcptab(5)).
The inittab API is designed to reduce the confusion, both for the
customer and the application developer. Its goal is to provide a
@@ -61,7 +60,7 @@ new DHCP options, but this should be rare.
The inittab file consists of inittab records, each being one line long
and describing a particular option. The format is based heavily on
-the format for defining symbols in dhcptab(4). Each line has the
+the format for defining symbols in dhcptab(5). Each line has the
following syntax:
option_name category, code, type, granularity, maximum, consumers
@@ -69,7 +68,7 @@ following syntax:
where:
`option_name' is user-interpretable name of the option (for use with
- dhcpinfo(1M) for instance). This field should at least be per-
+ dhcpinfo(1) for instance). This field should at least be per-
category unique and ideally should be unique across all categories.
Of particular note is that options names in the STANDARD, SITE, and
VENDOR spaces should not overlap, or the behavior is undefined.
@@ -132,7 +131,7 @@ for all DHCP option consumers, with the following exceptions and notes:
programs, even if they are listed as a `consumer' of the given
option. An example of this is that the DHCP server never
requests any fields with the VENDOR category. (VENDOR information
- for the DHCP server comes from dhcptab(4) instead).
+ for the DHCP server comes from dhcptab(5) instead).
o In general, changing provided information in a released inittab
file is ill-advised. Adding new entries should be the extent
@@ -145,9 +144,9 @@ for all DHCP option consumers, with the following exceptions and notes:
absolutely necessary, since it nullifies some of the advantages
of having an inittab.
- o Where a symbol is defined both in the inittab and in dhcptab(4),
+ o Where a symbol is defined both in the inittab and in dhcptab(5),
inittab is authoritative. EXTEND symbol definitions in
- dhcptab(4) will be deprecated in a future release of Solaris.
+ dhcptab(5) will be deprecated in a future release of Solaris.
C-LEVEL API
===========
diff --git a/usr/src/lib/libdiskmgt/common/entry.c b/usr/src/lib/libdiskmgt/common/entry.c
index 425255ae45..1680d20652 100644
--- a/usr/src/lib/libdiskmgt/common/entry.c
+++ b/usr/src/lib/libdiskmgt/common/entry.c
@@ -1065,12 +1065,12 @@ dm_get_usage_string(char *what, char *how, char **usage_string)
if (strcmp(what, DM_USE_MOUNT) == 0) {
if (strcmp(how, "swap") == 0) {
*usage_string = dgettext(TEXT_DOMAIN,
- "%s is currently used by swap. Please see swap(1M)."
+ "%s is currently used by swap. Please see swap(8)."
"\n");
} else {
*usage_string = dgettext(TEXT_DOMAIN,
"%s is currently mounted on %s."
- " Please see umount(1M).\n");
+ " Please see umount(8).\n");
}
} else if (strcmp(what, DM_USE_VFSTAB) == 0) {
*usage_string = dgettext(TEXT_DOMAIN,
@@ -1084,28 +1084,28 @@ dm_get_usage_string(char *what, char *how, char **usage_string)
"%s is part of VxVM volume %s.\n");
} else if (strcmp(what, DM_USE_LU) == 0) {
*usage_string = dgettext(TEXT_DOMAIN,
- "%s is in use for live upgrade %s. Please see ludelete(1M)."
+ "%s is in use for live upgrade %s. Please see ludelete(8)."
"\n");
} else if (strcmp(what, DM_USE_DUMP) == 0) {
*usage_string = dgettext(TEXT_DOMAIN,
- "%s is in use by %s. Please see dumpadm(1M)."
+ "%s is in use by %s. Please see dumpadm(8)."
"\n");
} else if (strcmp(what, DM_USE_EXPORTED_ZPOOL) == 0) {
*usage_string = dgettext(TEXT_DOMAIN,
"%s is part of exported or potentially active ZFS pool %s. "
- "Please see zpool(1M).\n");
+ "Please see zpool(8).\n");
} else if (strcmp(what, DM_USE_ACTIVE_ZPOOL) == 0) {
*usage_string = dgettext(TEXT_DOMAIN,
- "%s is part of active ZFS pool %s. Please see zpool(1M)."
+ "%s is part of active ZFS pool %s. Please see zpool(8)."
"\n");
} else if (strcmp(what, DM_USE_SPARE_ZPOOL) == 0) {
*usage_string = dgettext(TEXT_DOMAIN,
"%s is reserved as a hot spare for ZFS pool %s. Please "
- "see zpool(1M).\n");
+ "see zpool(8).\n");
} else if (strcmp(what, DM_USE_L2CACHE_ZPOOL) == 0) {
*usage_string = dgettext(TEXT_DOMAIN,
"%s is in use as a cache device for ZFS pool %s. "
- "Please see zpool(1M).\n");
+ "Please see zpool(8).\n");
}
}
void
diff --git a/usr/src/lib/libdladm/common/libdladm.c b/usr/src/lib/libdladm/common/libdladm.c
index 17c4530cd2..ad1151d25b 100644
--- a/usr/src/lib/libdladm/common/libdladm.c
+++ b/usr/src/lib/libdladm/common/libdladm.c
@@ -128,7 +128,7 @@ dladm_open(dladm_handle_t *handle)
return (dladm_errno2status(errno));
/*
- * Don't open DLMGMT_DOOR now. dlmgmtd(1M) is not able to
+ * Don't open DLMGMT_DOOR now. dlmgmtd(8) is not able to
* open the door when the dladm handle is opened because the
* door hasn't been created yet at that time. Thus, we must
* open it on-demand in dladm_door_fd(). Move the open()
diff --git a/usr/src/lib/libdladm/common/libdlaggr.c b/usr/src/lib/libdladm/common/libdlaggr.c
index d54920d432..8ceff4e287 100644
--- a/usr/src/lib/libdladm/common/libdlaggr.c
+++ b/usr/src/lib/libdladm/common/libdlaggr.c
@@ -45,7 +45,7 @@
/*
* Link Aggregation Administration Library.
*
- * This library is used by administration tools such as dladm(1M) to
+ * This library is used by administration tools such as dladm(8) to
* configure link aggregations.
*/
diff --git a/usr/src/lib/libdladm/common/libdlbridge.c b/usr/src/lib/libdladm/common/libdlbridge.c
index bbf8fe762e..aaf2fede13 100644
--- a/usr/src/lib/libdladm/common/libdlbridge.c
+++ b/usr/src/lib/libdladm/common/libdlbridge.c
@@ -47,7 +47,7 @@
/*
* Bridge Administration Library.
*
- * This library is used by administration tools such as dladm(1M) to configure
+ * This library is used by administration tools such as dladm(8) to configure
* bridges, and by the bridge daemon to retrieve configuration information.
*/
diff --git a/usr/src/lib/libdladm/common/libdliptun.c b/usr/src/lib/libdladm/common/libdliptun.c
index 21c4f5dbd1..8e4855fff5 100644
--- a/usr/src/lib/libdladm/common/libdliptun.c
+++ b/usr/src/lib/libdladm/common/libdliptun.c
@@ -44,7 +44,7 @@
/*
* IP Tunneling Administration Library.
- * This library is used by dladm(1M) and to configure IP tunnel links.
+ * This library is used by dladm(8) and to configure IP tunnel links.
*/
#define IPTUN_CONF_TYPE "type"
diff --git a/usr/src/lib/libdladm/common/libdllink.c b/usr/src/lib/libdladm/common/libdllink.c
index 7e952b97e9..ac1bcba556 100644
--- a/usr/src/lib/libdladm/common/libdllink.c
+++ b/usr/src/lib/libdladm/common/libdllink.c
@@ -240,7 +240,7 @@ dladm_walk_macaddr(dladm_handle_t handle, datalink_id_t linkid, void *arg,
}
/*
- * These routines are used by administration tools such as dladm(1M) to
+ * These routines are used by administration tools such as dladm(8) to
* iterate through the list of MAC interfaces
*/
diff --git a/usr/src/lib/libdladm/common/libdlvlan.c b/usr/src/lib/libdladm/common/libdlvlan.c
index 34c1e6682d..c54480cf0e 100644
--- a/usr/src/lib/libdladm/common/libdlvlan.c
+++ b/usr/src/lib/libdladm/common/libdlvlan.c
@@ -30,7 +30,7 @@
/*
* VLAN Administration Library.
*
- * This library is used by administration tools such as dladm(1M) to
+ * This library is used by administration tools such as dladm(8) to
* configure VLANs.
*/
diff --git a/usr/src/lib/libdladm/common/linkprop.c b/usr/src/lib/libdladm/common/linkprop.c
index 2c29e6ab80..3e6e8e0912 100644
--- a/usr/src/lib/libdladm/common/linkprop.c
+++ b/usr/src/lib/libdladm/common/linkprop.c
@@ -3333,7 +3333,7 @@ i_dladm_add_ap_module(const char *module, struct dlautopush *dlap)
/*
* Currently, both '.' and ' '(space) can be used as the delimiters between
* autopush modules. The former is used in dladm set-linkprop, and the
- * latter is used in the autopush(1M) file.
+ * latter is used in the autopush(8) file.
*/
/* ARGSUSED */
static dladm_status_t
diff --git a/usr/src/lib/libdlpi/common/libdlpi.c b/usr/src/lib/libdlpi/common/libdlpi.c
index 11d975f694..b1bebd6787 100644
--- a/usr/src/lib/libdlpi/common/libdlpi.c
+++ b/usr/src/lib/libdlpi/common/libdlpi.c
@@ -191,8 +191,8 @@ dlpi_open_zone(const char *linkname, const char *zonename, dlpi_handle_t *dhp,
/*
* Special case: DLPI_SERIAL flag is set to indicate a synchronous
- * serial line interface (see syncinit(1M), syncstat(1M),
- * syncloop(1M)), which is not a DLPI link.
+ * serial line interface (see syncinit(8), syncstat(8),
+ * syncloop(8)), which is not a DLPI link.
*/
if (dip->dli_oflags & DLPI_SERIAL) {
if ((retval = i_dlpi_style2_open(dip)) != DLPI_SUCCESS) {
@@ -1279,7 +1279,7 @@ i_dlpi_attach(dlpi_impl_t *dip)
* if this request fails, as this indicates the underlying DLPI device does
* not support link aggregation (pre-GLDV3 device drivers), and thus will
* see the expected behavior without failing with DL_SYSERR/EBUSY when issuing
- * DLPI primitives like DL_BIND_REQ. For further info see dlpi(7p).
+ * DLPI primitives like DL_BIND_REQ. For further info see dlpi(4P).
*/
static void
i_dlpi_passive(dlpi_impl_t *dip)
diff --git a/usr/src/lib/libdlpi/common/libdlpi_impl.h b/usr/src/lib/libdlpi/common/libdlpi_impl.h
index 8969cce7cb..7e51ce6558 100644
--- a/usr/src/lib/libdlpi/common/libdlpi_impl.h
+++ b/usr/src/lib/libdlpi/common/libdlpi_impl.h
@@ -59,7 +59,7 @@ extern "C" {
/*
* Publicly available DLPI notification types. This list may change if
- * new DLPI notification types are made public. See dlpi(7P).
+ * new DLPI notification types are made public. See dlpi(4P).
*
*/
#define DLPI_NOTIFICATION_TYPES (DL_NOTE_LINK_DOWN | DL_NOTE_LINK_UP | \
diff --git a/usr/src/lib/libdscp/svc/dscp.ppp.options b/usr/src/lib/libdscp/svc/dscp.ppp.options
index d46df31de3..22b2cb226e 100644
--- a/usr/src/lib/libdscp/svc/dscp.ppp.options
+++ b/usr/src/lib/libdscp/svc/dscp.ppp.options
@@ -23,11 +23,9 @@
#
# dscp.ppp.options
#
-#ident "%Z%%M% %I% %E% SMI"
-#
#
-# These are options for running pppd(1M) to provide a DSCP
+# These are options for running pppd(8) to provide a DSCP
# link between a service processor and a domain in OPL. All
# options are explicitly set here so that site customizations
# of the global options files will not affect DSCP.
diff --git a/usr/src/lib/libdscp/svc/dscp.xml b/usr/src/lib/libdscp/svc/dscp.xml
index f5fd9a41d4..4b646f2f3d 100644
--- a/usr/src/lib/libdscp/svc/dscp.xml
+++ b/usr/src/lib/libdscp/svc/dscp.xml
@@ -23,8 +23,6 @@
CDDL HEADER END
- ident "%Z%%M% %I% %E% SMI"
-
NOTE: This service manifest is not editable; its contents will
be overwritten by package or patch operations, including
operating system upgrade. Make customizations in a different
@@ -86,9 +84,9 @@
</dependent>
<!--
- The 'ntp' service on an OPL domain can be configured
+ The 'ntp' service on an OPL domain can be configured
with SP as the NTP server, so create a dependency such that
- the 'ntp' service is started after the DSCP service.
+ the 'ntp' service is started after the DSCP service.
-->
<dependent
name='dscp_ntp'
@@ -135,7 +133,7 @@
</loctext>
</description>
<documentation>
- <manpage title='prtdscp' section='1M'
+ <manpage title='prtdscp' section='8'
manpath='/usr/share/man' />
</documentation>
</template>
diff --git a/usr/src/lib/libdtrace/common/dlink_audit.c b/usr/src/lib/libdtrace/common/dlink_audit.c
index 57ca8d7fb7..b196e97ac3 100644
--- a/usr/src/lib/libdtrace/common/dlink_audit.c
+++ b/usr/src/lib/libdtrace/common/dlink_audit.c
@@ -22,7 +22,7 @@
* of helper providers. The default disposition for a helper provider -- USDT
* and ustack helpers -- is to load itself from it's containing object's .init
* section. In cases where startup time is deemed critical, USDT authors can
- * use the -xlazyload option to dtrace(1M) to disable automatic loading (it's
+ * use the -xlazyload option to dtrace(8) to disable automatic loading (it's
* difficult to make the case for the utility of this feature for anything
* other than libc which, indeed, was the sole motivation). If a binary has
* been compiled with automatic loading disabled, this audit library may be
diff --git a/usr/src/lib/libdtrace/common/dlink_common.c b/usr/src/lib/libdtrace/common/dlink_common.c
index c47ec273ab..976abca82a 100644
--- a/usr/src/lib/libdtrace/common/dlink_common.c
+++ b/usr/src/lib/libdtrace/common/dlink_common.c
@@ -30,7 +30,7 @@
/*
* Common functions for helper provider loading both compiled into the
- * executable via drti.o and dtrace(1M) -G, and the libdaudit.so library.
+ * executable via drti.o and dtrace(8) -G, and the libdaudit.so library.
*/
#include <errno.h>
diff --git a/usr/src/lib/libdtrace/common/dlink_init.c b/usr/src/lib/libdtrace/common/dlink_init.c
index 7c00a49c21..b6bfd550cc 100644
--- a/usr/src/lib/libdtrace/common/dlink_init.c
+++ b/usr/src/lib/libdtrace/common/dlink_init.c
@@ -30,7 +30,7 @@
/*
* This is the basis for drti.o which dt_link.c links into the object file
- * generated by dtrace(1M) -G by default (note that -xlazyload disables this).
+ * generated by dtrace(8) -G by default (note that -xlazyload disables this).
*/
#include <dlfcn.h>
diff --git a/usr/src/lib/libdtrace/common/dt_buf.c b/usr/src/lib/libdtrace/common/dt_buf.c
index 324e778213..d34d359025 100644
--- a/usr/src/lib/libdtrace/common/dt_buf.c
+++ b/usr/src/lib/libdtrace/common/dt_buf.c
@@ -24,14 +24,12 @@
* Use is subject to license terms.
*/
-#pragma ident "%Z%%M% %I% %E% SMI"
-
/*
* DTrace Memory Buffer Routines
*
* The routines in this file are used to create an automatically resizing
* memory buffer that can be written to like a file. Memory buffers are
- * used to construct DOF to ioctl() to dtrace(7D), and provide semantics that
+ * used to construct DOF to ioctl() to dtrace(4D), and provide semantics that
* simplify caller code. Specifically, any allocation errors result in an
* error code being set inside the buffer which is maintained persistently and
* propagates to another buffer if the buffer in error is concatenated. These
diff --git a/usr/src/lib/libdtrace/common/dt_dof.c b/usr/src/lib/libdtrace/common/dt_dof.c
index c1f5dc827e..2c5173491d 100644
--- a/usr/src/lib/libdtrace/common/dt_dof.c
+++ b/usr/src/lib/libdtrace/common/dt_dof.c
@@ -496,7 +496,7 @@ dof_add_provider(dt_dof_t *ddo, const dt_provider_t *pvp)
if (pvp->pv_flags & DT_PROVIDER_IMPL) {
/*
- * ignore providers that are exported by dtrace(7D)
+ * ignore providers that are exported by dtrace(4D)
*/
return (0);
}
diff --git a/usr/src/lib/libdtrace/common/dt_grammar.y b/usr/src/lib/libdtrace/common/dt_grammar.y
index a7e7de7bc1..a61e8434c2 100644
--- a/usr/src/lib/libdtrace/common/dt_grammar.y
+++ b/usr/src/lib/libdtrace/common/dt_grammar.y
@@ -312,7 +312,7 @@ probe_definition:
* it. This can only occur if the next token is EOF or
* an ambiguous predicate was slurped up as a comment.
* We cannot perform this check if input() is a string
- * because dtrace(1M) [-fmnP] also use the compiler and
+ * because dtrace(8) [-fmnP] also use the compiler and
* things like dtrace -n BEGIN have to be accepted.
*/
if (yypcb->pcb_fileptr != NULL) {
diff --git a/usr/src/lib/libdtrace/common/dt_impl.h b/usr/src/lib/libdtrace/common/dt_impl.h
index 6841eca4e6..988b7f6fb7 100644
--- a/usr/src/lib/libdtrace/common/dt_impl.h
+++ b/usr/src/lib/libdtrace/common/dt_impl.h
@@ -125,7 +125,7 @@ typedef struct dt_module {
uint_t dm_asrsv; /* actual reserved size of dm_asmap */
uint_t dm_aslen; /* number of entries in dm_asmap */
uint_t dm_flags; /* module flags (see below) */
- int dm_modid; /* modinfo(1M) module identifier */
+ int dm_modid; /* modinfo(8) module identifier */
GElf_Addr dm_text_va; /* virtual address of text section */
GElf_Xword dm_text_size; /* size in bytes of text section */
GElf_Addr dm_data_va; /* virtual address of data section */
diff --git a/usr/src/lib/libdtrace/common/dt_open.c b/usr/src/lib/libdtrace/common/dt_open.c
index d515669e0c..f3d25f3499 100644
--- a/usr/src/lib/libdtrace/common/dt_open.c
+++ b/usr/src/lib/libdtrace/common/dt_open.c
@@ -641,7 +641,7 @@ inline long NULL = 0; \n\
* Default DTrace configuration to use when opening libdtrace DTRACE_O_NODEV.
* If DTRACE_O_NODEV is not set, we load the configuration from the kernel.
* The use of CTF_MODEL_NATIVE is more subtle than it might appear: we are
- * relying on the fact that when running dtrace(1M), isaexec will invoke the
+ * relying on the fact that when running dtrace(8), isaexec will invoke the
* binary with the same bitness as the kernel, which is what we want by default
* when generating our DIF. The user can override the choice using oflags.
*/
diff --git a/usr/src/lib/libdtrace/common/dt_parser.c b/usr/src/lib/libdtrace/common/dt_parser.c
index e652f337d9..176d9b7d48 100644
--- a/usr/src/lib/libdtrace/common/dt_parser.c
+++ b/usr/src/lib/libdtrace/common/dt_parser.c
@@ -2584,7 +2584,7 @@ dt_node_provider(char *name, dt_node_t *probes)
/*
* Check to see if the provider is already defined or visible through
- * dtrace(7D). If so, set dn_provred to treat it as a re-declaration.
+ * dtrace(4D). If so, set dn_provred to treat it as a re-declaration.
* If not, create a new provider and set its interface-only flag. This
* flag may be cleared later by calls made to dt_probe_declare().
*/
@@ -4438,7 +4438,7 @@ dt_cook_provider(dt_node_t *dnp, uint_t idflags)
/*
* If we're declaring a provider for the first time and it is unknown
- * to dtrace(7D), insert the probe definitions into the provider's hash.
+ * to dtrace(4D), insert the probe definitions into the provider's hash.
* If we're redeclaring a known provider, verify the interface matches.
*/
for (pnp = dnp->dn_probes; pnp != NULL; pnp = pnp->dn_list) {
diff --git a/usr/src/lib/libdtrace/common/dt_proc.c b/usr/src/lib/libdtrace/common/dt_proc.c
index 03fe05f21f..80823aae60 100644
--- a/usr/src/lib/libdtrace/common/dt_proc.c
+++ b/usr/src/lib/libdtrace/common/dt_proc.c
@@ -34,7 +34,7 @@
* This file provides a set of routines that permit libdtrace and its clients
* to create and grab process handles using libproc, and to share these handles
* between library mechanisms that need libproc access, such as ustack(), and
- * client mechanisms that need libproc access, such as dtrace(1M) -c and -p.
+ * client mechanisms that need libproc access, such as dtrace(8) -c and -p.
* The library provides several mechanisms in the libproc control layer:
*
* Reference Counting: The library code and client code can independently grab
diff --git a/usr/src/lib/libdtrace/common/dt_provider.c b/usr/src/lib/libdtrace/common/dt_provider.c
index ef4b4470d5..aefa7590e9 100644
--- a/usr/src/lib/libdtrace/common/dt_provider.c
+++ b/usr/src/lib/libdtrace/common/dt_provider.c
@@ -226,7 +226,7 @@ dt_probe_key(const dtrace_probedesc_t *pdp, char *s)
}
/*
- * If a probe was discovered from the kernel, ask dtrace(7D) for a description
+ * If a probe was discovered from the kernel, ask dtrace(4D) for a description
* of each of its arguments, including native and translated types.
*/
static dt_probe_t *
@@ -365,7 +365,7 @@ dt_probe_discover(dt_provider_t *pvp, const dtrace_probedesc_t *pdp)
/*
* Lookup a probe declaration based on a known provider and full or partially
* specified module, function, and name. If the probe is not known to us yet,
- * ask dtrace(7D) to match the description and then cache any useful results.
+ * ask dtrace(4D) to match the description and then cache any useful results.
*/
dt_probe_t *
dt_probe_lookup(dt_provider_t *pvp, const char *s)
@@ -392,7 +392,7 @@ dt_probe_lookup(dt_provider_t *pvp, const char *s)
/*
* If the probe isn't known, use the probe description computed above
- * to ask dtrace(7D) to find the first matching probe.
+ * to ask dtrace(4D) to find the first matching probe.
*/
if (dt_ioctl(dtp, DTRACEIOC_PROBEMATCH, &pd) == 0)
return (dt_probe_discover(pvp, &pd));
@@ -769,7 +769,7 @@ dt_probe_info(dtrace_hdl_t *dtp,
}
/*
- * If we matched a probe exported by dtrace(7D), then discover
+ * If we matched a probe exported by dtrace(4D), then discover
* the real attributes. Otherwise grab the static declaration.
*/
if (pd.dtpd_id != DTRACE_IDNONE)
diff --git a/usr/src/lib/libdtrace/common/dt_subr.c b/usr/src/lib/libdtrace/common/dt_subr.c
index 25e206eb4c..e93617ef59 100644
--- a/usr/src/lib/libdtrace/common/dt_subr.c
+++ b/usr/src/lib/libdtrace/common/dt_subr.c
@@ -736,7 +736,7 @@ dt_difo_free(dtrace_hdl_t *dtp, dtrace_difo_t *dp)
}
/*
- * dt_gmatch() is similar to gmatch(3GEN) and dtrace(7D) globbing, but also
+ * dt_gmatch() is similar to gmatch(3GEN) and dtrace(4D) globbing, but also
* implements the behavior that an empty pattern matches any string.
*/
int
diff --git a/usr/src/lib/libdtrace/common/dtrace.h b/usr/src/lib/libdtrace/common/dtrace.h
index dd591296aa..73433e9354 100644
--- a/usr/src/lib/libdtrace/common/dtrace.h
+++ b/usr/src/lib/libdtrace/common/dtrace.h
@@ -48,7 +48,7 @@ extern "C" {
* Solaris system and DTrace subsystem and are subject to change at any time
* without notice. Applications and drivers using these interfaces will fail
* to run on future releases. These interfaces should not be used for any
- * purpose except those expressly outlined in dtrace(7D) and libdtrace(3LIB).
+ * purpose except those expressly outlined in dtrace(4D) and libdtrace(3LIB).
* Please refer to the "Solaris Dynamic Tracing Guide" for more information.
*/
@@ -61,7 +61,7 @@ typedef struct dtrace_prog dtrace_prog_t;
typedef struct dtrace_vector dtrace_vector_t;
typedef struct dtrace_aggdata dtrace_aggdata_t;
-#define DTRACE_O_NODEV 0x01 /* do not open dtrace(7D) device */
+#define DTRACE_O_NODEV 0x01 /* do not open dtrace(4D) device */
#define DTRACE_O_NOSYS 0x02 /* do not load /system/object modules */
#define DTRACE_O_LP64 0x04 /* force D compiler to be LP64 */
#define DTRACE_O_ILP32 0x08 /* force D compiler to be ILP32 */
@@ -530,7 +530,7 @@ extern struct dt_node *dt_compile_sugar(dtrace_hdl_t *,
*
* Library clients can use these functions to iterate over the set of available
* probe definitions and inquire as to their attributes. The probe iteration
- * interfaces report probes that are declared as well as those from dtrace(7D).
+ * interfaces report probes that are declared as well as those from dtrace(4D).
*/
typedef struct dtrace_probeinfo {
dtrace_attribute_t dtp_attr; /* name attributes */
@@ -550,7 +550,7 @@ extern int dtrace_probe_info(dtrace_hdl_t *,
/*
* DTrace Vector Interface
*
- * The DTrace library normally speaks directly to dtrace(7D). However,
+ * The DTrace library normally speaks directly to dtrace(4D). However,
* this communication may be vectored elsewhere. Consumers who wish to
* perform a vectored open must fill in the vector, and use the dtrace_vopen()
* entry point to obtain a library handle.
diff --git a/usr/src/lib/libdtrace/common/procfs.d.in b/usr/src/lib/libdtrace/common/procfs.d.in
index 9381e1ecf0..968435e76f 100644
--- a/usr/src/lib/libdtrace/common/procfs.d.in
+++ b/usr/src/lib/libdtrace/common/procfs.d.in
@@ -32,7 +32,7 @@
#pragma D depends_on module procfs
/*
- * The following miscellaneous constants are used by the proc(4) translators
+ * The following miscellaneous constants are used by the proc(5) translators
* defined below. These are assigned the latest values from the system .h's.
*/
inline char SSLEEP = @SSLEEP@;
@@ -207,7 +207,7 @@ inline int POLL_HUP = @POLL_HUP@;
#pragma D binding "1.0" POLL_HUP
/*
- * Translate from the kernel's proc_t structure to a proc(4) psinfo_t struct.
+ * Translate from the kernel's proc_t structure to a proc(5) psinfo_t struct.
* We do not provide support for pr_size, pr_rssize, pr_pctcpu, and pr_pctmem.
* We also do not fill in pr_lwp (the lwpsinfo_t for the representative LWP)
* because we do not have the ability to select and stop any representative.
@@ -252,7 +252,7 @@ translator psinfo_t < proc_t *T > {
};
/*
- * Translate from the kernel's kthread_t structure to a proc(4) psinfo_t
+ * Translate from the kernel's kthread_t structure to a proc(5) psinfo_t
* struct. Lacking a facility to define one translator only in terms of
* another, we explicitly define each member by using the proc_t-to-psinfo_t
* translator, above; any members added to that translator should also be
@@ -287,7 +287,7 @@ translator psinfo_t < kthread_t *T > {
};
/*
- * Translate from the kernel's kthread_t structure to a proc(4) lwpsinfo_t.
+ * Translate from the kernel's kthread_t structure to a proc(5) lwpsinfo_t.
* We do not provide support for pr_nice, pr_oldpri, pr_cpu, or pr_pctcpu.
* Also, for the moment, pr_start and pr_time are not supported, but these
* could be supported by DTrace in the future using subroutines.
diff --git a/usr/src/lib/libdtrace_jni/java/docs/html/fast.html b/usr/src/lib/libdtrace_jni/java/docs/html/fast.html
index 23898130c0..e9114c7451 100644
--- a/usr/src/lib/libdtrace_jni/java/docs/html/fast.html
+++ b/usr/src/lib/libdtrace_jni/java/docs/html/fast.html
@@ -49,7 +49,7 @@ Guide</h1>
To demonstrate how to use the Java DTrace API, let's write a simple Java
program that runs a D script, in this case <tt>hello.d</tt> (prints
"hello, world" and exits). You will need root permission to use the
-Java DTrace API (just as you do to use the <tt>dtrace(1M)</tt> command).
+Java DTrace API (just as you do to use the <tt>dtrace(8)</tt> command).
You may want to eliminate this inconvenience by adding the following
line to <tt>/etc/user_attr</tt>:
<br>
diff --git a/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/Aggregate.java b/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/Aggregate.java
index fb595333dc..2c83a281cb 100644
--- a/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/Aggregate.java
+++ b/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/Aggregate.java
@@ -237,7 +237,7 @@ public final class Aggregate implements Serializable
* </code></pre>
* Use {@code getOrderedRecords()} instead of {@code getRecords()}
* when you want to list records as they would be ordered by {@code
- * dtrace(1M)}.
+ * dtrace(8)}.
*
* @return a newly created list of this aggregate's records
* in the order used by the native DTrace library
diff --git a/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/AggregationRecord.java b/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/AggregationRecord.java
index 35fa877fbf..c6ca540bd6 100644
--- a/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/AggregationRecord.java
+++ b/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/AggregationRecord.java
@@ -22,8 +22,6 @@
/*
* Copyright 2008 Sun Microsystems, Inc. All rights reserved.
* Use is subject to license terms.
- *
- * ident "%Z%%M% %I% %E% SMI"
*/
package org.opensolaris.os.dtrace;
@@ -174,7 +172,7 @@ public final class AggregationRecord implements Record, Serializable {
* Option#aggsortkey aggsortkey}, {@link Option#aggsortkeypos
* aggsortkeypos}, {@link Option#aggsortpos aggsortpos}, and {@link
* Option#aggsortrev aggsortrev} DTrace options and matches the way
- * that the records would be ordered by {@code dtrace(1M)}.
+ * that the records would be ordered by {@code dtrace(8)}.
*
* @return non-negative ordinal from zero (first) to n-1 (last)
* within the {@code Aggregate} containing this record
diff --git a/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/Consumer.java b/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/Consumer.java
index b732fa454d..22d3f4fb04 100644
--- a/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/Consumer.java
+++ b/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/Consumer.java
@@ -782,7 +782,7 @@ public interface Consumer {
* Gets the version of the native DTrace library.
*
* @return version string generated by the native DTrace library
- * (same as the output of {@code dtrace(1M)} with the {@code -V}
+ * (same as the output of {@code dtrace(8)} with the {@code -V}
* option)
*/
public String getVersion();
diff --git a/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/InterfaceAttributes.java b/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/InterfaceAttributes.java
index 80f14e5ba6..4735658e45 100644
--- a/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/InterfaceAttributes.java
+++ b/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/InterfaceAttributes.java
@@ -31,7 +31,7 @@ import java.beans.*;
/**
* Triplet of attributes consisting of two stability levels and a
* dependency class. Attributes may vary independently. They use
- * labels described in the {@code attributes(5)} man page to help set
+ * labels described in the {@code attributes(7)} man page to help set
* expectations for what kinds of changes might occur in different kinds
* of future releases. The D compiler includes features to dynamically
* compute the stability levels of D programs you create. For more
@@ -227,7 +227,7 @@ public final class InterfaceAttributes implements Serializable {
UNKNOWN("Unknown"),
/**
* The interface is specific to the CPU model of the current
- * system. You can use the {@code psrinfo(1M)} utility's {@code
+ * system. You can use the {@code psrinfo(8)} utility's {@code
* -v} option to display the current CPU model and
* implementation names. Interfaces with CPU model dependencies
* might not be available on other CPU implementations, even if
diff --git a/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/Option.java b/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/Option.java
index 67f896cff9..c30e7088c7 100644
--- a/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/Option.java
+++ b/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/Option.java
@@ -520,7 +520,7 @@ public final class Option implements Serializable {
* Only output explicitly traced data (no option value). Makes no
* difference to generated {@link ProbeData}, but user apps may use
* the {@code quiet} flag as a rendering hint similar to the {@code
- * -q} {@code dtrace(1M)} command option. Runtime option.
+ * -q} {@code dtrace(8)} command option. Runtime option.
*/
public static final String quiet = "quiet";
/** Speculation buffer size (size). Runtime option. */
diff --git a/usr/src/lib/libelfsign/README b/usr/src/lib/libelfsign/README
index 059b4c7869..3e00452dc8 100644
--- a/usr/src/lib/libelfsign/README
+++ b/usr/src/lib/libelfsign/README
@@ -23,8 +23,6 @@
# Copyright 2007 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
#
-#ident "%Z%%M% %I% %E% SMI"
-
Note that this library does not have a spec file.
@@ -34,5 +32,5 @@ here are ever elevated to a public taxonomy then a spec file needs to
be introduced.
A 64 bit version of this library does not exist.
-That isn't an issue since kcfd(1m) and elfsign(1) are 32 bit
+That isn't an issue since kcfd(8) and elfsign(1) are 32 bit
applications and are the only consumers.
diff --git a/usr/src/lib/libeti/form/common/regcmp.c b/usr/src/lib/libeti/form/common/regcmp.c
index 147ac0faec..d9802a6c9d 100644
--- a/usr/src/lib/libeti/form/common/regcmp.c
+++ b/usr/src/lib/libeti/form/common/regcmp.c
@@ -36,7 +36,7 @@
#include <stdlib.h>
#include "utility.h"
-/* this code was taken from REGCMP(3X) */
+/* this code was taken from regcmp(3C) */
#define SSIZE 16
#define TGRP 48
diff --git a/usr/src/lib/libeti/form/common/regex.c b/usr/src/lib/libeti/form/common/regex.c
index 3993c286a7..f077f465f7 100644
--- a/usr/src/lib/libeti/form/common/regex.c
+++ b/usr/src/lib/libeti/form/common/regex.c
@@ -38,7 +38,7 @@
#include "utility.h"
/*
- * this code was taken from REGCMP(3X)
+ * this code was taken from regcmp(3C)
*/
/*VARARGS*/
/*ARGSUSED*/
diff --git a/usr/src/lib/libeti/form/common/ty_regexp.c b/usr/src/lib/libeti/form/common/ty_regexp.c
index baad199f2d..5d7b012b7b 100644
--- a/usr/src/lib/libeti/form/common/ty_regexp.c
+++ b/usr/src/lib/libeti/form/common/ty_regexp.c
@@ -28,8 +28,6 @@
* Use is subject to license terms.
*/
-#pragma ident "%Z%%M% %I% %E% SMI" /* SVr4.0 1.2 */
-
/*LINTLIBRARY*/
#include <sys/types.h>
@@ -42,7 +40,7 @@
* usage:
* set_field_type(f, TYPE_REGEXP, expression);
*
- * char * expression; regular expression REGCMP(3X)
+ * char * expression; regular expression regcmp(3C)
*/
extern char *libform_regcmp(char *, char *);
extern char *libform_regex(char *, char *, char *);
diff --git a/usr/src/lib/libexacct/demo/README b/usr/src/lib/libexacct/demo/README
index 04f259301d..974a7b8797 100644
--- a/usr/src/lib/libexacct/demo/README
+++ b/usr/src/lib/libexacct/demo/README
@@ -23,8 +23,6 @@
Copyright 2002 Sun Microsystems, Inc. All rights reserved.
Use is subject to license terms.
-#ident "%Z%%M% %I% %E% SMI"
-
1. Introduction
This directory contains source code for the "exdump" utility that uses
@@ -64,7 +62,7 @@ execute the default "make all" target.
4. References
Exacct files: /var/adm/exacct/proc, /var/adm/exacct/task
-Man pages: acctadm(1M), libexacct(3LIB)
+Man pages: acctadm(8), libexacct(3LIB)
Documentation: "System Administration Guide:
Resource Management and Network Services"
"System Administration Guide: IP Services"
diff --git a/usr/src/lib/libfakekernel/common/sys/mutex.h b/usr/src/lib/libfakekernel/common/sys/mutex.h
index 0301cc24f5..1eb400fad7 100644
--- a/usr/src/lib/libfakekernel/common/sys/mutex.h
+++ b/usr/src/lib/libfakekernel/common/sys/mutex.h
@@ -49,7 +49,7 @@ extern "C" {
* either MUTEX_ADAPTIVE or MUTEX_SPIN depending on the iblock cookie.
*
* Mutex statistics can be gathered on the fly, without rebooting or
- * recompiling the kernel, via the lockstat driver (lockstat(7D)).
+ * recompiling the kernel, via the lockstat driver (lockstat(4D)).
*/
typedef enum {
MUTEX_ADAPTIVE = 0, /* spin if owner is running, otherwise block */
diff --git a/usr/src/lib/libgen/common/p2open.c b/usr/src/lib/libgen/common/p2open.c
index f7c70d0e55..3f0a778ec1 100644
--- a/usr/src/lib/libgen/common/p2open.c
+++ b/usr/src/lib/libgen/common/p2open.c
@@ -27,10 +27,8 @@
/* Copyright (c) 1988 AT&T */
/* All Rights Reserved */
-#pragma ident "%Z%%M% %I% %E% SMI"
-
/*
- * Similar to popen(3S) but with pipe to cmd's stdin and from stdout.
+ * Similar to popen(3C) but with pipe to cmd's stdin and from stdout.
*/
#include <sys/types.h>
diff --git a/usr/src/lib/libhotplug/common/libhotplug_impl.h b/usr/src/lib/libhotplug/common/libhotplug_impl.h
index e75170bcb2..a9e7a9c241 100644
--- a/usr/src/lib/libhotplug/common/libhotplug_impl.h
+++ b/usr/src/lib/libhotplug/common/libhotplug_impl.h
@@ -64,7 +64,7 @@ struct hp_node {
#define HP_INFO_TIME "hp_info.last_change"
/*
- * Definitions for the door interface to hotplugd(1m).
+ * Definitions for the door interface to hotplugd(8).
*/
#define HOTPLUGD_PID "/var/run/hotplugd.pid"
#define HOTPLUGD_DOOR "/var/run/hotplugd_door"
diff --git a/usr/src/lib/libipadm/common/ipadm_addr.c b/usr/src/lib/libipadm/common/ipadm_addr.c
index 6bdfc487d3..46bb609bdb 100644
--- a/usr/src/lib/libipadm/common/ipadm_addr.c
+++ b/usr/src/lib/libipadm/common/ipadm_addr.c
@@ -1052,7 +1052,7 @@ i_ipadm_set_zone(ipadm_handle_t iph, const void *arg,
/*
* To modify the zone assignment such that it persists across
- * reboots, zonecfg(1M) must be used.
+ * reboots, zonecfg(8) must be used.
*/
if (flags & IPADM_OPT_PERSIST) {
return (IPADM_NOTSUP);
diff --git a/usr/src/lib/libipadm/common/ipadm_if.c b/usr/src/lib/libipadm/common/ipadm_if.c
index 73508c0d34..7699937c4a 100644
--- a/usr/src/lib/libipadm/common/ipadm_if.c
+++ b/usr/src/lib/libipadm/common/ipadm_if.c
@@ -1910,11 +1910,11 @@ ipadm_disable_if(ipadm_handle_t iph, const char *ifname, uint32_t flags)
}
/*
- * FIXME Remove this when ifconfig(1M) is updated to use IPMP support
+ * FIXME Remove this when ifconfig(8) is updated to use IPMP support
* in libipadm.
*/
/*
- * This workaround is required by ifconfig(1M) whenever an
+ * This workaround is required by ifconfig(8) whenever an
* interface is moved into an IPMP group to update the daemon's
* in-memory mapping of `aobjname' to 'lifnum'.
*
diff --git a/usr/src/lib/libipadm/common/libipadm.c b/usr/src/lib/libipadm/common/libipadm.c
index 005d86fc0c..da124f18b1 100644
--- a/usr/src/lib/libipadm/common/libipadm.c
+++ b/usr/src/lib/libipadm/common/libipadm.c
@@ -1027,7 +1027,7 @@ i_ipadm_call_ipmgmtd(ipadm_handle_t iph, void *garg, size_t garg_size,
/*
* ipadm_is_nil_hostname() : Determine if the `hostname' is nil: i.e.,
* NULL, empty, or a single space (e.g., as returned by
- * domainname(1M)/sysinfo).
+ * domainname(8)/sysinfo).
*
* input: const char *: the hostname to inspect;
* output: boolean_t: B_TRUE if `hostname' is not NULL satisfies the
diff --git a/usr/src/lib/libipmp/common/ipmp_mpathd.c b/usr/src/lib/libipmp/common/ipmp_mpathd.c
index 80a7e579a1..ffda238c52 100644
--- a/usr/src/lib/libipmp/common/ipmp_mpathd.c
+++ b/usr/src/lib/libipmp/common/ipmp_mpathd.c
@@ -25,7 +25,7 @@
*/
/*
- * Low-level interfaces for communicating with in.mpathd(1M).
+ * Low-level interfaces for communicating with in.mpathd(8).
*
* These routines are not intended for use outside of libipmp.
*/
diff --git a/usr/src/lib/libipsecutil/common/algs.c b/usr/src/lib/libipsecutil/common/algs.c
index 2018b7f079..752f0f614b 100644
--- a/usr/src/lib/libipsecutil/common/algs.c
+++ b/usr/src/lib/libipsecutil/common/algs.c
@@ -35,11 +35,11 @@
#include <errno.h>
static char *preamble =
-"# /etc/inet/ipsecalgs output from ipsecalgs(1m)\n"
+"# /etc/inet/ipsecalgs output from ipsecalgs(8)\n"
"#\n"
"# DO NOT EDIT OR PARSE THIS FILE!\n"
"#\n"
-"# Use the ipsecalgs(1m) command to change the contents of this file.\n"
+"# Use the ipsecalgs(8) command to change the contents of this file.\n"
"# The algorithm descriptions contained in this file are synchronised to the\n"
"# kernel with ipsecalgs -s, the kernel validates the entries at this point."
"\n\n"
diff --git a/usr/src/lib/libipsecutil/common/ipsec_util.c b/usr/src/lib/libipsecutil/common/ipsec_util.c
index e27a47e63b..a369ee90a5 100644
--- a/usr/src/lib/libipsecutil/common/ipsec_util.c
+++ b/usr/src/lib/libipsecutil/common/ipsec_util.c
@@ -56,7 +56,7 @@
/*
* This file contains support functions that are shared by the ipsec
- * utilities and daemons including ipseckey(1m), ikeadm(1m) and in.iked(1m).
+ * utilities and daemons including ipseckey(8), ikeadm(8) and in.iked(8).
*/
@@ -370,7 +370,7 @@ dump_sockaddr(struct sockaddr *sa, uint8_t prefixlen, boolean_t addr_only,
* value, this will also be part of the dumped key. The last "saltbits" of the
* key string, reading left to right will be the salt value. To make it easier
* to see which bits make up the key, the salt value is enclosed in []'s.
- * This function can also be called when ipseckey(1m) -s is run, this "saves"
+ * This function can also be called when ipseckey(8) -s is run, this "saves"
* the SAs, including the key to a file. When this is the case, the []'s are
* not printed.
*
@@ -850,12 +850,12 @@ do_interactive(FILE *infile, char *configfile, char *promptstring,
/*
* There were errors. Putting the service in maintenance mode.
- * When svc.startd(1M) allows services to degrade themselves,
+ * When svc.startd(8) allows services to degrade themselves,
* this should be revisited.
*
* If this function was called from a program running as a
- * smf_method(5), print a warning message. Don't spew out the
- * errors as these will end up in the smf(5) log file which is
+ * smf_method(7), print a warning message. Don't spew out the
+ * errors as these will end up in the smf(7) log file which is
* publically readable, the errors may contain sensitive
* information.
*/
@@ -867,7 +867,7 @@ do_interactive(FILE *infile, char *configfile, char *promptstring,
"errors.\n"
"Manually check the configuration with:\n"
"ipseckey -c %s\n"
- "Use svcadm(1M) to clear maintenance "
+ "Use svcadm(8) to clear maintenance "
"condition when errors are resolved.\n"),
lines_parsed - lines_added, configfile);
} else {
@@ -3381,24 +3381,24 @@ rparseidtype(uint16_t type)
/*
* This is a general purpose exit function, calling functions can specify an
- * error type. If the command calling this function was started by smf(5) the
+ * error type. If the command calling this function was started by smf(7) the
* error type could be used as a hint to the restarter. In the future this
* function could be used to do something more intelligent with a process that
* encounters an error. If exit() is called with an error code other than those
- * defined by smf(5), the program will just get restarted. Unless restarting
+ * defined by smf(7), the program will just get restarted. Unless restarting
* is likely to resolve the error condition, its probably sensible to just
* log the error and keep running.
*
* The SERVICE_* exit_types mean nothing if the command was run from the
* command line, just exit(). There are two special cases:
*
- * SERVICE_DEGRADE - Not implemented in smf(5), one day it could hint that
+ * SERVICE_DEGRADE - Not implemented in smf(7), one day it could hint that
* the service is not running as well is it could. For
* now, don't do anything, just record the error.
* DEBUG_FATAL - Something happened, if the command was being run in debug
* mode, exit() as you really want to know something happened,
* otherwise just keep running. This is ignored when running
- * under smf(5).
+ * under smf(7).
*
* The function will handle an optional variable args error message, this
* will be written to the error stream, typically a log file or stderr.
@@ -3437,7 +3437,7 @@ ipsecutil_exit(exit_type_t type, char *fmri, FILE *fp, const char *fmt, ...)
break;
}
} else {
- /* Command being run as a smf(5) method. */
+ /* Command being run as a smf(7) method. */
switch (type) {
case SERVICE_EXIT_OK:
exit_status = SMF_EXIT_OK;
diff --git a/usr/src/lib/libipsecutil/common/ipsec_util.h b/usr/src/lib/libipsecutil/common/ipsec_util.h
index 7f779bb95f..bd0a4bb65a 100644
--- a/usr/src/lib/libipsecutil/common/ipsec_util.h
+++ b/usr/src/lib/libipsecutil/common/ipsec_util.h
@@ -65,7 +65,7 @@ extern "C" {
* Input buffer size limits maximum line length for both file parsing and
* interactive mode. 4K chars should be enough even for broad commands and
* all possible key lenghts of today's symmetric ciphers entered via
- * ipseckey(1M) which has the most bifurcated grammar from all IPsec commands.
+ * ipseckey(8) which has the most bifurcated grammar from all IPsec commands.
*/
#define IBUF_SIZE 4096
@@ -128,7 +128,7 @@ typedef struct keywdtab {
* when a program needs to exit because of an error. These exit_types
* are used in macros, defined later in this file, which call ipsecutil_exit().
* What happens when ipsecutil_exit() may differ if the command was started
- * on the command line or via smf(5), See ipsecutil_exit() source for details.
+ * on the command line or via smf(7), See ipsecutil_exit() source for details.
*
* Note: The calling function should decide what "debug mode" is before calling
* ipsecutil_exit() with DEBUG_FATAL.
@@ -138,10 +138,10 @@ typedef enum exit_type {
SERVICE_DEGRADE, /* A hint that service should be degraded. */
SERVICE_BADPERM, /* A Permission error occured. */
SERVICE_BADCONF, /* Misconfiguration. */
- SERVICE_MAINTAIN, /* smf(5) to put service in maintenance mode. */
- SERVICE_DISABLE, /* Tell smf(5) to disable me. */
+ SERVICE_MAINTAIN, /* smf(7) to put service in maintenance mode. */
+ SERVICE_DISABLE, /* Tell smf(7) to disable me. */
SERVICE_FATAL, /* Whatever happened is not fixable. */
- SERVICE_RESTART, /* Tell smf(5) to restart the service. */
+ SERVICE_RESTART, /* Tell smf(7) to restart the service. */
DEBUG_FATAL /* Exit in debug mode. */
} exit_type_t;
diff --git a/usr/src/lib/libmapid/common/mapid.c b/usr/src/lib/libmapid/common/mapid.c
index 42eceb21b4..3af9649802 100644
--- a/usr/src/lib/libmapid/common/mapid.c
+++ b/usr/src/lib/libmapid/common/mapid.c
@@ -747,7 +747,7 @@ get_dns_txt_domain(cb_t *argp)
if (stat(_PATH_RESCONF, &st) < 0 && errno == ENOENT) {
/*
* If /etc/resolv.conf is not there, then we'll
- * get the domain from domainname(1M). No real
+ * get the domain from domainname(8). No real
* reason to query DNS or fire a thread since we
* have no nameserver addresses.
*/
@@ -1011,7 +1011,7 @@ get_dns_domain(void)
case ENOENT:
/*
* The resolver defaults to obtaining the
- * domain off of the NIS domainname(1M) if
+ * domain off of the NIS domainname(8) if
* /etc/resolv.conf does not exist, so we
* move forward.
*/
diff --git a/usr/src/lib/libnisdb/db_dictionary.cc b/usr/src/lib/libnisdb/db_dictionary.cc
index 2eef6d3b6e..85ff29ccf4 100644
--- a/usr/src/lib/libnisdb/db_dictionary.cc
+++ b/usr/src/lib/libnisdb/db_dictionary.cc
@@ -699,7 +699,7 @@ db_dictionary::change_table_name(db_table_desc *clone, char *tok, char *repl)
while (clone) {
/*
* Special case for a tok="". This is used for the
- * nisrestore(1M), when restoring a replica in another
+ * nisrestore(8), when restoring a replica in another
* domain. This routine is used to change the datafile
* names in the data.dict (see bugid #4031273). This will not
* effect massage_dict(), since it never generates an empty
diff --git a/usr/src/lib/libnisdb/ldap_parse.h b/usr/src/lib/libnisdb/ldap_parse.h
index 10bf13afc1..f0f987bb90 100644
--- a/usr/src/lib/libnisdb/ldap_parse.h
+++ b/usr/src/lib/libnisdb/ldap_parse.h
@@ -24,8 +24,6 @@
* Use is subject to license terms.
*/
-#pragma ident "%Z%%M% %I% %E% SMI"
-
#ifndef _LDAP_PARSE_H
#define _LDAP_PARSE_H
@@ -301,7 +299,7 @@ typedef struct __nis_mapping_item_struct {
* __nis_mapping_item_t's are shortened to just the item name.
*
* (1) String value consisting of the string "{crypt}" followed by the
- * value of the 'passwd' column. The NIS+LDAPmapping(4) representation
+ * value of the 'passwd' column. The NIS+LDAPmapping(5) representation
* is
* ("{crypt}%s", passwd)
* and the element.print contains
diff --git a/usr/src/lib/libnisdb/nis_parse_ldap_yp_util.c b/usr/src/lib/libnisdb/nis_parse_ldap_yp_util.c
index 206007aa4a..927ae57de4 100644
--- a/usr/src/lib/libnisdb/nis_parse_ldap_yp_util.c
+++ b/usr/src/lib/libnisdb/nis_parse_ldap_yp_util.c
@@ -1196,7 +1196,7 @@ getfullmapname(char **mapname, const char *domainname)
* existing fqdn table mapping structure results. That would be the
* case when a full qualified domain specific attribute was present.
*
- * Note that per NISLDAPmapping(4) such an attribute MUST be listed
+ * Note that per NISLDAPmapping(5) such an attribute MUST be listed
* in the mapping file BEFORE its non-fqdn counterpart.
*
* RETURNS: 0 normal exit, 1 if an existing structure found, -1 for all
diff --git a/usr/src/lib/libnsl/nss/getipnodeby.c b/usr/src/lib/libnsl/nss/getipnodeby.c
index a4e4515273..be485d1cb3 100644
--- a/usr/src/lib/libnsl/nss/getipnodeby.c
+++ b/usr/src/lib/libnsl/nss/getipnodeby.c
@@ -570,7 +570,7 @@ getipnodebyaddr(const void *src, size_t len, int type, int *error_num)
/*
* Step 2: AF_INET, v4 lookup. Since we're going to search the
* ipnodes (v6) path first, we need to treat this as a v4mapped
- * address. nscd(1m) caches v4 from ipnodes as mapped v6's. The
+ * address. nscd(8) caches v4 from ipnodes as mapped v6's. The
* switch backend knows to lookup v4's (not v4mapped) from the
* name services.
*/
diff --git a/usr/src/lib/libnsl/rpc/auth_des.c b/usr/src/lib/libnsl/rpc/auth_des.c
index 4bb4b929c8..dfa6777c96 100644
--- a/usr/src/lib/libnsl/rpc/auth_des.c
+++ b/usr/src/lib/libnsl/rpc/auth_des.c
@@ -32,8 +32,6 @@
* California.
*/
-#pragma ident "%Z%%M% %I% %E% SMI"
-
/*
* auth_des.c, client-side implementation of DES authentication
*
@@ -185,7 +183,7 @@ authdes_pk_seccreate(const char *servername, netobj *pkey, uint_t window,
if (ckey == NULL) {
if (key_gendes(&auth->ah_key) < 0) {
syslog(LOG_ERR,
- "authdes_seccreate: keyserv(1m) is unable to generate session key");
+ "authdes_seccreate: keyserv(8) is unable to generate session key");
goto failed;
}
} else
@@ -423,7 +421,7 @@ authdes_refresh(AUTH *auth, void *dummy)
pkey.n_len = (uint_t)strlen((char *)ad->ad_pkey) + 1;
if (key_encryptsession_pk(ad->ad_servername, &pkey, &ad->ad_xkey) < 0) {
syslog(LOG_INFO,
- "authdes_refresh: keyserv(1m) is unable to encrypt session key");
+ "authdes_refresh: keyserv(8) is unable to encrypt session key");
return (FALSE);
}
cred->adc_fullname.key = ad->ad_xkey;
diff --git a/usr/src/lib/libnwam/README b/usr/src/lib/libnwam/README
index 01cdc74b75..7ed4db9285 100644
--- a/usr/src/lib/libnwam/README
+++ b/usr/src/lib/libnwam/README
@@ -533,4 +533,4 @@ ATTRIBUTES
SEE ALSO
- nwamd(1M), nwamcfg(1M), nwamadm(1M)
+ nwamd(8), nwamcfg(8), nwamadm(8)
diff --git a/usr/src/lib/libnwam/common/libnwam_loc.c b/usr/src/lib/libnwam/common/libnwam_loc.c
index 23adbba00b..59a67da0ad 100644
--- a/usr/src/lib/libnwam/common/libnwam_loc.c
+++ b/usr/src/lib/libnwam/common/libnwam_loc.c
@@ -84,7 +84,7 @@ struct nwam_prop_table_entry loc_prop_table_entries[] = {
{NWAM_LOC_PROP_NAMESERVICES_CONFIG_FILE, NWAM_VALUE_TYPE_STRING,
B_FALSE, 0, 1, nwam_valid_file,
"specifies path to configuration file for name services switch "
- "for this location - see nsswitch.conf(4)",
+ "for this location - see nsswitch.conf(5)",
NWAM_TYPE_ANY, NWAM_CLASS_ANY},
{NWAM_LOC_PROP_DNS_NAMESERVICE_CONFIGSRC, NWAM_VALUE_TYPE_UINT64,
B_FALSE, 0, NWAM_MAX_NUM_VALUES, valid_configsrc,
@@ -123,7 +123,7 @@ struct nwam_prop_table_entry loc_prop_table_entries[] = {
NWAM_TYPE_ANY, NWAM_CLASS_ANY},
{NWAM_LOC_PROP_DEFAULT_DOMAIN, NWAM_VALUE_TYPE_STRING, B_FALSE, 0, 1,
nwam_valid_domain,
- "specifies the domainname(1M) to be set for this location",
+ "specifies the domainname(8) to be set for this location",
NWAM_TYPE_ANY, NWAM_CLASS_ANY},
{NWAM_LOC_PROP_NFSV4_DOMAIN, NWAM_VALUE_TYPE_STRING, B_FALSE, 0, 1,
nwam_valid_domain,
@@ -131,7 +131,7 @@ struct nwam_prop_table_entry loc_prop_table_entries[] = {
NWAM_TYPE_ANY, NWAM_CLASS_ANY},
{NWAM_LOC_PROP_IPFILTER_CONFIG_FILE, NWAM_VALUE_TYPE_STRING, B_FALSE,
0, 1, nwam_valid_file,
- "specifies an absolute path to an ipf.conf(4) file for this "
+ "specifies an absolute path to an ipf.conf(5) file for this "
"location",
NWAM_TYPE_ANY, NWAM_CLASS_ANY},
{NWAM_LOC_PROP_IPFILTER_V6_CONFIG_FILE, NWAM_VALUE_TYPE_STRING,
@@ -141,23 +141,23 @@ struct nwam_prop_table_entry loc_prop_table_entries[] = {
NWAM_TYPE_ANY, NWAM_CLASS_ANY},
{NWAM_LOC_PROP_IPNAT_CONFIG_FILE, NWAM_VALUE_TYPE_STRING, B_FALSE, 0,
1, nwam_valid_file,
- "specifies an absolute path to an ipnat.conf(4) file for this "
+ "specifies an absolute path to an ipnat.conf(5) file for this "
"location",
NWAM_TYPE_ANY, NWAM_CLASS_ANY},
{NWAM_LOC_PROP_IPPOOL_CONFIG_FILE, NWAM_VALUE_TYPE_STRING, B_FALSE, 0,
1, nwam_valid_file,
- "specifies an absolute path to an ippool.conf(4) file for this "
+ "specifies an absolute path to an ippool.conf(5) file for this "
"location",
NWAM_TYPE_ANY, NWAM_CLASS_ANY},
{NWAM_LOC_PROP_IKE_CONFIG_FILE, NWAM_VALUE_TYPE_STRING, B_FALSE, 0, 1,
nwam_valid_file,
"specifies an absolute path to an ike config file "
- "(see ike.config(4))",
+ "(see ike.config(5))",
NWAM_TYPE_ANY, NWAM_CLASS_ANY},
{NWAM_LOC_PROP_IPSECPOLICY_CONFIG_FILE, NWAM_VALUE_TYPE_STRING,
B_FALSE, 0, 1, nwam_valid_file,
"specifies an absolute path to an IPsec policy configuration file "
- "(see ipsecconf(1M)",
+ "(see ipsecconf(8)",
NWAM_TYPE_ANY, NWAM_CLASS_ANY},
};
diff --git a/usr/src/lib/libpam/pam.conf b/usr/src/lib/libpam/pam.conf
index 4f4ec81be2..e50ae416c8 100644
--- a/usr/src/lib/libpam/pam.conf
+++ b/usr/src/lib/libpam/pam.conf
@@ -131,5 +131,5 @@ other password requisite pam_authtok_check.so.1
other password required pam_authtok_store.so.1
#
# Support for Kerberos V5 authentication and example configurations can
-# be found in the pam_krb5(5) man page under the "EXAMPLES" section.
+# be found in the pam_krb5(7) man page under the "EXAMPLES" section.
#
diff --git a/usr/src/lib/libpcsc/common/winscard.h b/usr/src/lib/libpcsc/common/winscard.h
index bec4960040..f144f13da9 100644
--- a/usr/src/lib/libpcsc/common/winscard.h
+++ b/usr/src/lib/libpcsc/common/winscard.h
@@ -26,7 +26,7 @@
* https://docs.microsoft.com/en-us/windows/win32/api/winscard/
*
* New consumers should not use this library and instead should leverage
- * ccid(7D) instead.
+ * ccid(4D) instead.
*/
#include <stdint.h>
diff --git a/usr/src/lib/libpkg/common/isdir.c b/usr/src/lib/libpkg/common/isdir.c
index 4589b0a56b..1e5b1e94bb 100644
--- a/usr/src/lib/libpkg/common/isdir.c
+++ b/usr/src/lib/libpkg/common/isdir.c
@@ -353,7 +353,7 @@ _InitRemoteFstypes(void)
}
/*
- * Read the remote file system type database; from fstypes(4):
+ * Read the remote file system type database; from fstypes(5):
*
* fstypes resides in directory /etc/dfs and lists distributed file
* system utilities packages installed on the system. For each installed
diff --git a/usr/src/lib/libproc/common/Pcontrol.c b/usr/src/lib/libproc/common/Pcontrol.c
index 3438109e55..7e7c254bfc 100644
--- a/usr/src/lib/libproc/common/Pcontrol.c
+++ b/usr/src/lib/libproc/common/Pcontrol.c
@@ -407,7 +407,7 @@ dupfd(int fd, int dfd)
/*
* Make fd be greater than 255 (the 32-bit stdio limit),
* or at least make it greater than 2 so that the
- * program will work when spawned by init(1m).
+ * program will work when spawned by init(8).
* Also, if dfd is non-zero, dup the fd to be dfd.
*/
if ((mfd = minfd) == 0)
diff --git a/usr/src/lib/libproc/common/Pcore.c b/usr/src/lib/libproc/common/Pcore.c
index ab7b75f807..b83153cb93 100644
--- a/usr/src/lib/libproc/common/Pcore.c
+++ b/usr/src/lib/libproc/common/Pcore.c
@@ -2171,7 +2171,7 @@ core_exec_open(const char *path, void *efp)
/*
* Attempt to load any section headers found in the core file. If present,
* this will refer to non-loadable data added to the core file by the kernel
- * based on coreadm(1M) settings, including CTF data and the symbol table.
+ * based on coreadm(8) settings, including CTF data and the symbol table.
*/
static void
core_load_shdrs(struct ps_prochandle *P, elf_file_t *efp)
diff --git a/usr/src/lib/libresolv2/install.xml b/usr/src/lib/libresolv2/install.xml
index a01a2b83cf..e2f7bd8bf2 100644
--- a/usr/src/lib/libresolv2/install.xml
+++ b/usr/src/lib/libresolv2/install.xml
@@ -111,21 +111,21 @@
<prop_pattern name='nameserver' type='net_address'
required='true'>
<description> <loctext xml:lang='C'>
- The value used to construct the "nameserver" directive in resolv.conf(4).
+ The value used to construct the "nameserver" directive in resolv.conf(5).
</loctext> </description>
<cardinality min='1' max='3'/>
</prop_pattern>
<prop_pattern name='domain' type='astring'
required='false'>
<description> <loctext xml:lang='C'>
- The value used to construct the "domain" directive in resolv.conf(4).
+ The value used to construct the "domain" directive in resolv.conf(5).
</loctext> </description>
<cardinality min='1' max='1'/>
</prop_pattern>
<prop_pattern name='search' type='astring'
required='false'>
<description> <loctext xml:lang='C'>
- The value used to construct the "search" directive in resolv.conf(4).
+ The value used to construct the "search" directive in resolv.conf(5).
</loctext> </description>
<cardinality min='1' max='6'/>
</prop_pattern>
diff --git a/usr/src/lib/librestart/common/librestart.c b/usr/src/lib/librestart/common/librestart.c
index cebaf54884..c2009bfb2f 100644
--- a/usr/src/lib/librestart/common/librestart.c
+++ b/usr/src/lib/librestart/common/librestart.c
@@ -2755,7 +2755,7 @@ out:
*
* If no method_context is defined, original init context is provided, where
* the working directory is '/', and uid/gid are 0/0. But if a method_context
- * is defined at any level the smf_method(5) method_context defaults are used.
+ * is defined at any level the smf_method(7) method_context defaults are used.
*
* Return an error message structure containing the error message
* with context, and the error so the caller can make a decision
diff --git a/usr/src/lib/libsec/common/acl_lex.l b/usr/src/lib/libsec/common/acl_lex.l
index 0c388f2832..ab61d5bf0e 100644
--- a/usr/src/lib/libsec/common/acl_lex.l
+++ b/usr/src/lib/libsec/common/acl_lex.l
@@ -397,7 +397,7 @@ INHERIT_STR [fdinFSI-]+
dgettext(TEXT_DOMAIN,
"The ',' is not a valid permission field "
"separator.\nThe comma is used to separate "
- "access control entries.\nSee acl(5) for "
+ "access control entries.\nSee acl(7) for "
"examples of specifying ACL entries.\n"));
yylval.val = EACL_PERM_MASK_ERROR;
return (ERROR);
@@ -630,7 +630,7 @@ INHERIT_STR [fdinFSI-]+
dgettext(TEXT_DOMAIN,
"The ',' is not a valid inheritance field "
"separator.\nThe comma is used to separate "
- "access control entries.\nSee acl(5) for "
+ "access control entries.\nSee acl(7) for "
"examples of specifying ACL entries.\n"));
yylval.val = EACL_INVALID_ACCESS_TYPE;
return (ERROR);
diff --git a/usr/src/lib/libsecdb/auth_attr.txt b/usr/src/lib/libsecdb/auth_attr.txt
index a1a99aee82..b083187445 100644
--- a/usr/src/lib/libsecdb/auth_attr.txt
+++ b/usr/src/lib/libsecdb/auth_attr.txt
@@ -25,7 +25,7 @@
#
# /etc/security/auth_attr
#
-# authorizations. see auth_attr(4)
+# authorizations. see auth_attr(5)
#
solaris.:::All Solaris Authorizations::help=AllSolAuthsHeader.html
solaris.grant:::Grant All Solaris Authorizations::help=PriAdmin.html
diff --git a/usr/src/lib/libsecdb/common/i.rbac b/usr/src/lib/libsecdb/common/i.rbac
index 0ed2cc1cde..a7c1ffa46b 100644
--- a/usr/src/lib/libsecdb/common/i.rbac
+++ b/usr/src/lib/libsecdb/common/i.rbac
@@ -107,15 +107,15 @@ dbmerge() {
#
$sed_cmd -e '/^# \/etc\/security\/exec_attr/d' -e '/^#$/d' \
-e '/^# execution attributes for profiles./d' \
- -e '/^# See exec_attr(4)/d' \
+ -e '/^# See exec_attr([45])/d' \
-e '/^# \/etc\/user_attr/d' \
- -e '/^# user attributes. see user_attr(4)/d' \
+ -e '/^# user attributes. see user_attr([45])/d' \
-e '/^# \/etc\/security\/prof_attr/d' \
- -e '/^# profiles attributes. see prof_attr(4)/d' \
- -e '/^# See prof_attr(4)/d' \
+ -e '/^# profiles attributes. see prof_attr([45])/d' \
+ -e '/^# See prof_attr([45])/d' \
-e '/^# \/etc\/security\/auth_attr/d' \
- -e '/^# authorizations. see auth_attr(4)/d' \
- -e '/^# authorization attributes. see auth_attr(4)/d' \
+ -e '/^# authorizations. see auth_attr([45])/d' \
+ -e '/^# authorization attributes. see auth_attr([45])/d' \
$4.old > $4.$$
$mv_cmd $4.$$ $4.old
#
diff --git a/usr/src/lib/libsecdb/exec_attr.txt b/usr/src/lib/libsecdb/exec_attr.txt
index f63bfc3961..dc86dc9342 100644
--- a/usr/src/lib/libsecdb/exec_attr.txt
+++ b/usr/src/lib/libsecdb/exec_attr.txt
@@ -23,7 +23,7 @@
#
# /etc/security/exec_attr
#
-# execution attributes for profiles. see exec_attr(4)
+# execution attributes for profiles. see exec_attr(5)
#
#
All:suser:cmd:::*:
diff --git a/usr/src/lib/libsecdb/help/auths/NetworkAutoconfRead.html b/usr/src/lib/libsecdb/help/auths/NetworkAutoconfRead.html
index c734350c34..86a8f1644a 100644
--- a/usr/src/lib/libsecdb/help/auths/NetworkAutoconfRead.html
+++ b/usr/src/lib/libsecdb/help/auths/NetworkAutoconfRead.html
@@ -32,6 +32,6 @@ meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"
<body>
When View Network Auto-Magic Config is in the Authorizations Included
column, it grants permission to view the configuration repository used
-by the nwamd(1M) daemon to manage network configuration.
+by the nwamd(8) daemon to manage network configuration.
</body>
</html>
diff --git a/usr/src/lib/libsecdb/help/auths/NetworkAutoconfSelect.html b/usr/src/lib/libsecdb/help/auths/NetworkAutoconfSelect.html
index 966530c655..2f0889c9d7 100644
--- a/usr/src/lib/libsecdb/help/auths/NetworkAutoconfSelect.html
+++ b/usr/src/lib/libsecdb/help/auths/NetworkAutoconfSelect.html
@@ -31,7 +31,7 @@ meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"
</head>
<body>
When Enable/Disable Network Auto-Magic Config is in the Authorizations Included
-column, it grants permission to enable and disable profiles by nwamd(1M) via
-the nwam-manager GUI or the nwamadm(1M) command.
+column, it grants permission to enable and disable profiles by nwamd(8) via
+the nwam-manager GUI or the nwamadm(8) command.
</body>
</html>
diff --git a/usr/src/lib/libsecdb/help/auths/NetworkAutoconfWlan.html b/usr/src/lib/libsecdb/help/auths/NetworkAutoconfWlan.html
index ee9827885d..0d9cbcac72 100644
--- a/usr/src/lib/libsecdb/help/auths/NetworkAutoconfWlan.html
+++ b/usr/src/lib/libsecdb/help/auths/NetworkAutoconfWlan.html
@@ -32,7 +32,7 @@ meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"
<body>
When Create Network Auto-Magic Config for Known WLANs is in the Authorizations
Included column, it grants permission to create or modify Known WLAN data in
-the configuration repository used by the nwamd(1M) daemon to manage network
+the configuration repository used by the nwamd(8) daemon to manage network
configuration.
</body>
</html>
diff --git a/usr/src/lib/libsecdb/help/auths/NetworkAutoconfWrite.html b/usr/src/lib/libsecdb/help/auths/NetworkAutoconfWrite.html
index ae9b0fbde5..77b137f68f 100644
--- a/usr/src/lib/libsecdb/help/auths/NetworkAutoconfWrite.html
+++ b/usr/src/lib/libsecdb/help/auths/NetworkAutoconfWrite.html
@@ -32,6 +32,6 @@ meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"
<body>
When Create Network Auto-Magic Config is in the Authorizations Included
column, it grants permission to create or modify data in the configuration
-repository used by the nwamd(1M) daemon to manage network configuration.
+repository used by the nwamd(8) daemon to manage network configuration.
</body>
</html>
diff --git a/usr/src/lib/libsecdb/help/auths/NetworkILBconf.html b/usr/src/lib/libsecdb/help/auths/NetworkILBconf.html
index b0a175258d..e711fce969 100644
--- a/usr/src/lib/libsecdb/help/auths/NetworkILBconf.html
+++ b/usr/src/lib/libsecdb/help/auths/NetworkILBconf.html
@@ -32,10 +32,10 @@ meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"
<body>
When Network ILB Configuration is in the Authorizations
Included column, it grants permission to administrate the add,
-create and destroy subcommands of ilbadm(1M)
+create and destroy subcommands of ilbadm(8)
<p>
Note, to retrieve configuration and state information about ILB by
-using ilbadm(1M) doesn't require Network ILB Configuration
+using ilbadm(8) doesn't require Network ILB Configuration
authorization.
</body>
</html>
diff --git a/usr/src/lib/libsecdb/help/auths/NetworkILBenable.html b/usr/src/lib/libsecdb/help/auths/NetworkILBenable.html
index 3cb93b237e..54720abc45 100644
--- a/usr/src/lib/libsecdb/help/auths/NetworkILBenable.html
+++ b/usr/src/lib/libsecdb/help/auths/NetworkILBenable.html
@@ -32,10 +32,10 @@ meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"
<body>
When Network ILB Enable Configuration is in the Authorizations
Included column, it grants permission to administrate the enable
-and disable subcommands of ilbadm(1M).
+and disable subcommands of ilbadm(8).
<p>
Note, to retrieve configuration and state information about ILB by
-using ilbadm(1M) doesn't require Network ILB Configuration
+using ilbadm(8) doesn't require Network ILB Configuration
authorization.
</body>
</html>
diff --git a/usr/src/lib/libsecdb/help/auths/NetworkVRRP.html b/usr/src/lib/libsecdb/help/auths/NetworkVRRP.html
index e641c0c9d8..3b3871418c 100644
--- a/usr/src/lib/libsecdb/help/auths/NetworkVRRP.html
+++ b/usr/src/lib/libsecdb/help/auths/NetworkVRRP.html
@@ -32,10 +32,10 @@ meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"
<body>
When Administer VRRP is in the Authorizations Included column, it grants
authorization to administrate the VRRP service, which is provided by the
-vrrpd(1M) daemon. In particularly, the user is allowed to create, delete,
-modify, disable, re-enable VRRP routers using the vrrpadm(1M) command.
+vrrpd(8) daemon. In particularly, the user is allowed to create, delete,
+modify, disable, re-enable VRRP routers using the vrrpadm(8) command.
<p>
Note, querying configuration and state information of a VRRP router using
-vrrpadm(1M) doesn't require the Administer VRRP authorization.
+vrrpadm(8) doesn't require the Administer VRRP authorization.
</body>
</html>
diff --git a/usr/src/lib/libsecdb/help/auths/WifiConfig.html b/usr/src/lib/libsecdb/help/auths/WifiConfig.html
index 966df7274b..9182d4231d 100644
--- a/usr/src/lib/libsecdb/help/auths/WifiConfig.html
+++ b/usr/src/lib/libsecdb/help/auths/WifiConfig.html
@@ -24,9 +24,6 @@
CDDL HEADER END
-->
-<!-- SCCS keyword
-#pragma ident "%Z%%M% %I% %E% SMI"
--->
<HEAD>
<!--
@@ -37,7 +34,7 @@ META NAME="GENERATOR" CONTENT="Mozilla/4.02 [en] (X11; U; SunOS 5.6 sun4u) [Nets
-->
</HEAD>
<BODY>
-When Wifi Config is in the Authorizations Included column, it grants permission to manage all the parameters of the wifi interface apart from wep key using wificonfig(1m) command.
+When Wifi Config is in the Authorizations Included column, it grants permission to manage all the parameters of the wifi interface apart from wep key using wificonfig(8) command.
<p>
If Wifi Config is grayed, then you are not entitled to Add or Remove this authorization.
<BR>&nbsp;
diff --git a/usr/src/lib/libsecdb/help/auths/WifiWep.html b/usr/src/lib/libsecdb/help/auths/WifiWep.html
index 7e18d440d3..5ef9e419ea 100644
--- a/usr/src/lib/libsecdb/help/auths/WifiWep.html
+++ b/usr/src/lib/libsecdb/help/auths/WifiWep.html
@@ -24,9 +24,6 @@
CDDL HEADER END
-->
-<!-- SCCS keyword
-#pragma ident "%Z%%M% %I% %E% SMI"
--->
<HEAD>
<!--
@@ -37,7 +34,7 @@ META NAME="GENERATOR" CONTENT="Mozilla/4.02 [en] (X11; U; SunOS 5.6 sun4u) [Nets
-->
</HEAD>
<BODY>
-When Wifi Wep is in the Authorizations Included column, it grants permission to configurate the wep key of the wifi interface using the wificonfig(1m) command.
+When Wifi Wep is in the Authorizations Included column, it grants permission to configurate the wep key of the wifi interface using the wificonfig(8) command.
<p>
If Wifi Wep is grayed, then you are not entitled to Add or Remove this authorization.
<BR>&nbsp;
diff --git a/usr/src/lib/libsecdb/help/profiles/RtConsUser.html b/usr/src/lib/libsecdb/help/profiles/RtConsUser.html
index 7e7b956193..5a042d6e56 100644
--- a/usr/src/lib/libsecdb/help/profiles/RtConsUser.html
+++ b/usr/src/lib/libsecdb/help/profiles/RtConsUser.html
@@ -28,14 +28,12 @@
</HEAD>
<BODY>
-<!-- ident "%Z%%M% %I% %E% SMI" -->
-
When Console User is in the Rights Included column, it grants the right
for a user or role to do operations often associated with ownership of a
Solaris workstation or laptop.
<p>
-These Rights are typically granted automatically through policy.conf(4)
+These Rights are typically granted automatically through policy.conf(5)
to the user logged in on the workstation console. It can be, but is
generally not directly assigned to a user or role.
<p>
diff --git a/usr/src/lib/libsecdb/help/profiles/RtNetAutoconfAdmin.html b/usr/src/lib/libsecdb/help/profiles/RtNetAutoconfAdmin.html
index 5825f2d74d..cbdbabbcdb 100644
--- a/usr/src/lib/libsecdb/help/profiles/RtNetAutoconfAdmin.html
+++ b/usr/src/lib/libsecdb/help/profiles/RtNetAutoconfAdmin.html
@@ -28,9 +28,9 @@
<body>
When Network Autoconf Admin is in the Rights Included column, it grants the
right to create and edit the data in the configuration repository (using the
-nwamcfg(1M) command or the nwam-manager GUI) and to apply the changes made to
-the configuration repository to the system by nwamd(1M) daemon (using the
-nwamadm(1M) command or the nwam-manager GUI).
+nwamcfg(8) command or the nwam-manager GUI) and to apply the changes made to
+the configuration repository to the system by nwamd(8) daemon (using the
+nwamadm(8) command or the nwam-manager GUI).
<p>
If Network Autoconf Admin is grayed, then you are not entitled to Add or
Remove this right.
diff --git a/usr/src/lib/libsecdb/help/profiles/RtNetAutoconfUser.html b/usr/src/lib/libsecdb/help/profiles/RtNetAutoconfUser.html
index d8ad5cd1b3..25d9c5d594 100644
--- a/usr/src/lib/libsecdb/help/profiles/RtNetAutoconfUser.html
+++ b/usr/src/lib/libsecdb/help/profiles/RtNetAutoconfUser.html
@@ -28,7 +28,7 @@
<body>
When Network Autoconf User is in the Rights Included column, it grants the
right to enable and disable different profiles and select WiFi networks using
-the nwamadm(1M) command or the nwam-manager GUI.
+the nwamadm(8) command or the nwam-manager GUI.
<p>
If Network Autoconf User is grayed, then you are not entitled to Add or
Remove this right.
diff --git a/usr/src/lib/libsecdb/help/profiles/RtNetILB.html b/usr/src/lib/libsecdb/help/profiles/RtNetILB.html
index 95a7f99bef..f1c22e0f10 100644
--- a/usr/src/lib/libsecdb/help/profiles/RtNetILB.html
+++ b/usr/src/lib/libsecdb/help/profiles/RtNetILB.html
@@ -27,7 +27,7 @@
</head>
<body>
When Network ILB is in the Rights Included column, it grants the
-right to manage the configuration of ILB feature by using ilbadm(1M)
+right to manage the configuration of ILB feature by using ilbadm(8)
command.
<p>
If Network ILB is grayed, then you are not entitled to Add or
diff --git a/usr/src/lib/libsecdb/help/profiles/RtNetVRRP.html b/usr/src/lib/libsecdb/help/profiles/RtNetVRRP.html
index 18c94e178e..45da90dd79 100644
--- a/usr/src/lib/libsecdb/help/profiles/RtNetVRRP.html
+++ b/usr/src/lib/libsecdb/help/profiles/RtNetVRRP.html
@@ -27,7 +27,7 @@
</head>
<body>
When Network VRRP is in the Rights Included column, it grants the
-right to administer the VRRP routers using the vrrpadm(1M) command.
+right to administer the VRRP routers using the vrrpadm(8) command.
<p>
If Network VRRP is grayed, then you are not entitled to Add or
Remove this right.
diff --git a/usr/src/lib/libsecdb/policy.conf b/usr/src/lib/libsecdb/policy.conf
index 60fea9f5f3..8009a24c8b 100644
--- a/usr/src/lib/libsecdb/policy.conf
+++ b/usr/src/lib/libsecdb/policy.conf
@@ -24,7 +24,7 @@
#
# /etc/security/policy.conf
#
-# security policy configuration for user attributes. see policy.conf(4)
+# security policy configuration for user attributes. see policy.conf(5)
#
AUTHS_GRANTED=solaris.device.cdrw
@@ -46,7 +46,7 @@ CRYPT_ALGORITHMS_ALLOW=1,2a,md5,5,6
# The illumos default is a SHA512 based algorithm. To revert to
# the policy present in former Solaris releases set CRYPT_DEFAULT=__unix__,
-# which is not listed in crypt.conf(4) since it is internal to libc.
+# which is not listed in crypt.conf(5) since it is internal to libc.
#
CRYPT_DEFAULT=6
#
@@ -73,8 +73,8 @@ CRYPT_DEFAULT=6
#PRIV_LIMIT=all
#
# LOCK_AFTER_RETRIES specifies the default account locking policy for local
-# user accounts (passwd(4)/shadow(4)). The default may be overridden by
-# a user's user_attr(4) "lock_after_retries" value.
+# user accounts (passwd(5)/shadow(5)). The default may be overridden by
+# a user's user_attr(5) "lock_after_retries" value.
# YES enables local account locking, NO disables local account locking.
# The default value is NO.
#
diff --git a/usr/src/lib/libsecdb/prof_attr.txt b/usr/src/lib/libsecdb/prof_attr.txt
index ec638b1732..b186fde8a9 100644
--- a/usr/src/lib/libsecdb/prof_attr.txt
+++ b/usr/src/lib/libsecdb/prof_attr.txt
@@ -24,7 +24,7 @@
#
# /etc/security/prof_attr
#
-# profiles attributes. see prof_attr(4)
+# profiles attributes. see prof_attr(5)
#
All:::Execute any command as the user or role:help=RtAll.html
Audit Configuration:::Configure Solaris Audit:auths=solaris.smf.value.audit;help=RtAuditCfg.html
diff --git a/usr/src/lib/libsecdb/user_attr.txt b/usr/src/lib/libsecdb/user_attr.txt
index 227468d7c0..2960468e49 100644
--- a/usr/src/lib/libsecdb/user_attr.txt
+++ b/usr/src/lib/libsecdb/user_attr.txt
@@ -23,7 +23,7 @@
#
# /etc/user_attr
#
-# user attributes. see user_attr(4)
+# user attributes. see user_attr(5)
#
#
adm::::profiles=Log Management
diff --git a/usr/src/lib/libshare/common/libsharecore.c b/usr/src/lib/libshare/common/libsharecore.c
index 042bb00726..c15291d19d 100644
--- a/usr/src/lib/libshare/common/libsharecore.c
+++ b/usr/src/lib/libshare/common/libsharecore.c
@@ -58,7 +58,7 @@
#define DFSTAB_NOTICE_LINES 5
static char *notice[DFSTAB_NOTICE_LINES] = {
"# Do not modify this file directly.\n",
- "# Use the sharemgr(1m) command for all share management\n",
+ "# Use the sharemgr(8) command for all share management\n",
"# This file is reconstructed and only maintained for backward\n",
"# compatibility. Configuration lines could be lost.\n",
"#\n"
diff --git a/usr/src/lib/libsldap/common/ns_internal.h b/usr/src/lib/libsldap/common/ns_internal.h
index f6fb0f0bb0..86c197e528 100644
--- a/usr/src/lib/libsldap/common/ns_internal.h
+++ b/usr/src/lib/libsldap/common/ns_internal.h
@@ -59,7 +59,7 @@ extern "C" {
#define LDAPMAXHARDLOOKUPTIME 256
#define DONOTEDIT \
"Do not edit this file manually; your changes will be lost." \
- "Please use ldapclient (1M) instead."
+ "Please use ldapclient(8) instead."
#define MAXPORTNUMBER 65535
#define MAXPORTNUMBER_STR "65535"
#define CREDFILE 0
diff --git a/usr/src/lib/libsldap/common/ns_sldap.h b/usr/src/lib/libsldap/common/ns_sldap.h
index fbee323739..0507910a48 100644
--- a/usr/src/lib/libsldap/common/ns_sldap.h
+++ b/usr/src/lib/libsldap/common/ns_sldap.h
@@ -582,7 +582,7 @@ typedef struct ns_standalone_conf {
* and naming context. During all further operations on behalf
* of the application requested a standalone schema libsldap will use
* the information obtained by __ns_ldap_initStandalone() instead of
- * door_call(3C)ing ldap_cachemgr(1M).
+ * door_call(3C)ing ldap_cachemgr(8).
*
* conf
* A structure describing where and in which way to obtain all the
diff --git a/usr/src/lib/libsldap/common/ns_standalone.c b/usr/src/lib/libsldap/common/ns_standalone.c
index 3d998d16ae..119c148b41 100644
--- a/usr/src/lib/libsldap/common/ns_standalone.c
+++ b/usr/src/lib/libsldap/common/ns_standalone.c
@@ -1367,7 +1367,7 @@ __ns_ldap_getRootDSE(const char *server_addr,
* Fallback to anonymous, non-SSL mode for backward
* compatibility reasons. This mode should only be used when
* this function (__ns_ldap_getRootDSE) is called from
- * ldap_cachemgr(1M).
+ * ldap_cachemgr(8).
*/
syslog(LOG_WARNING,
gettext("libsldap: Falling back to anonymous, non-SSL"
@@ -1965,7 +1965,7 @@ __ns_ldap_initAuth(const char *auth_mech,
* and naming context. During all further operations on behalf
* of the application requested a standalone schema libsldap will use
* the information obtained by __ns_ldap_initStandalone() instead of
- * door_call(3C)ing ldap_cachemgr(1M).
+ * door_call(3C)ing ldap_cachemgr(8).
*
* INPUT:
* sa_conf - a structure describing where and in which way to obtain all
diff --git a/usr/src/lib/libsldap/common/ns_writes.c b/usr/src/lib/libsldap/common/ns_writes.c
index 0774eb7524..85a9ea8938 100644
--- a/usr/src/lib/libsldap/common/ns_writes.c
+++ b/usr/src/lib/libsldap/common/ns_writes.c
@@ -1262,7 +1262,7 @@ __ns_ldap_is_shadow_update_enabled(void)
* to modify. When the Native LDAP client is configured with 'shadow update
* enabled', Shadowshadow(4) entries can only be modified by privileged users.
* Such users use the NS_LDAP_UPDATE_SHADOW flag to indicate the call is
- * for such a shadow(4) update, which would be forwarded to ldap_cachemgr
+ * for such a shadow(5) update, which would be forwarded to ldap_cachemgr
* for performing the LDAP modify operation. ldap_cachemgr would call
* this function again and use the special service NS_ADMIN_SHADOW_UPDATE
* to identify itself, so that admin credential would be obtained and
diff --git a/usr/src/lib/libslp/clib/slp_auth.c b/usr/src/lib/libslp/clib/slp_auth.c
index 923fd5dd45..6b8167f3ab 100644
--- a/usr/src/lib/libslp/clib/slp_auth.c
+++ b/usr/src/lib/libslp/clib/slp_auth.c
@@ -24,8 +24,6 @@
* All rights reserved.
*/
-#pragma ident "%Z%%M% %I% %E% SMI"
-
/*
* This file contains all authentication-related functionality for
* SLP. Two interfaces are exported:
@@ -41,7 +39,7 @@
* sun.net.slp.authBackend; the value of this property should contain
* either the name of a shared object which implements the necessary
* interfaces, or a full or relative path to such an object. This value
- * will be passed to dlopen(3X) to resolve the symbols.
+ * will be passed to dlopen(3C) to resolve the symbols.
*
* The shared object must implement the following AMI interfaces:
*
diff --git a/usr/src/lib/libslp/etc/slp.conf.example b/usr/src/lib/libslp/etc/slp.conf.example
index 53660e3eb4..4fc951b483 100644
--- a/usr/src/lib/libslp/etc/slp.conf.example
+++ b/usr/src/lib/libslp/etc/slp.conf.example
@@ -22,15 +22,14 @@
# Copyright 1999 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
#
-# ident "%Z%%M% %I% %E% SMI"
#
# Example configuration file for SLP. This file lists and explains
# each property you can set for SLP. No properties are acutally set,
# so uncomment and edit any properties you wish to change. The
-# file /etc/inet/slp.conf must exist in order for slpd(1m) to start,
+# file /etc/inet/slp.conf must exist in order for slpd(8) to start,
# so copy this file to /etc/inet/slp.conf to enable SLP. See
-# slp.conf(4), slpd(1m), or RFC 2614 for more information.
+# slp.conf(5), slpd(8), or RFC 2614 for more information.
#
# Specifies if slpd should act as a DA. Default is false.
diff --git a/usr/src/lib/libstmf/common/store.c b/usr/src/lib/libstmf/common/store.c
index 0d3cfcba53..cc593eb4ce 100644
--- a/usr/src/lib/libstmf/common/store.c
+++ b/usr/src/lib/libstmf/common/store.c
@@ -40,7 +40,7 @@
/*
* This file's functions are responsible for all store and retrieve operations
- * against the STMF smf(5) database. The following shows the currently defined
+ * against the STMF smf(7) database. The following shows the currently defined
* schema for the STMF database:
*
* Description of property groups for service: svc:/system/stmf
diff --git a/usr/src/lib/libsysevent/libevchannel.c b/usr/src/lib/libsysevent/libevchannel.c
index b86a7d3e13..979671f17c 100644
--- a/usr/src/lib/libsysevent/libevchannel.c
+++ b/usr/src/lib/libsysevent/libevchannel.c
@@ -149,7 +149,7 @@ sysevent_evc_bind(const char *channel, evchan_t **scpp, uint32_t flags)
/*
* Enable sysevent driver. Fallback if the device link doesn't exist;
* this situation can arise if a channel is bound early in system
- * startup, prior to devfsadm(1M) being invoked.
+ * startup, prior to devfsadm(8) being invoked.
*/
EV_FD(scp) = open(DEVSYSEVENT, O_RDWR);
if (EV_FD(scp) == -1) {
diff --git a/usr/src/lib/libsysevent/libsysevent.c b/usr/src/lib/libsysevent/libsysevent.c
index 9aa2178301..8bca21c6fe 100644
--- a/usr/src/lib/libsysevent/libsysevent.c
+++ b/usr/src/lib/libsysevent/libsysevent.c
@@ -736,7 +736,7 @@ se_print(FILE *fp, sysevent_t *ev)
* registration notifications and each subscriber creates a door for event
* delivery.
*
- * Most of these routines are used by syseventd(1M), the sysevent publisher
+ * Most of these routines are used by syseventd(8), the sysevent publisher
* for the syseventd channel. Processes wishing to receive sysevent
* notifications from syseventd may use a set of public
* APIs designed to subscribe to syseventd sysevents. The subscription
@@ -2553,7 +2553,7 @@ sysevent_unbind_publisher(sysevent_handle_t *shp)
}
/*
- * Evolving APIs to subscribe to syseventd(1M) system events.
+ * Evolving APIs to subscribe to syseventd(8) system events.
*/
static sysevent_handle_t *
@@ -2648,7 +2648,7 @@ sysevent_unbind_handle(sysevent_handle_t *shp)
/*
* sysevent_subscribe_event - Subscribe to system event notification from
- * syseventd(1M) for the class and subclasses specified.
+ * syseventd(8) for the class and subclasses specified.
*/
int
sysevent_subscribe_event(sysevent_handle_t *shp, const char *event_class,
diff --git a/usr/src/lib/libxcurses/src/libc/xcurses/tparm.c b/usr/src/lib/libxcurses/src/libc/xcurses/tparm.c
index 5504d6fa5d..1b5f82b530 100644
--- a/usr/src/lib/libxcurses/src/libc/xcurses/tparm.c
+++ b/usr/src/lib/libxcurses/src/libc/xcurses/tparm.c
@@ -24,8 +24,6 @@
* All rights reserved.
*/
-#pragma ident "%Z%%M% %I% %E% SMI"
-
/*
* tparm.c
*
@@ -42,8 +40,8 @@ static char rcsID[] = "$Header: /rd/src/libc/xcurses/rcs/tparm.c 1.2 1995/08/31
#endif
/*l
- * Substitute the given parameters into the given string by the
- * following rules (taken from terminfo(5)):
+ * Substitute the given parameters into the given string by the
+ * following rules (taken from terminfo(7)):
*
* Cursor addressing and other strings requiring parameters
* in the terminal are described by a parameterized string
@@ -54,14 +52,14 @@ static char rcsID[] = "$Header: /rd/src/libc/xcurses/rcs/tparm.c 1.2 1995/08/31
* screen visible to the user, not to any unseen memory.) If
* the terminal has memory relative cursor addressing, that can
* be indicated by
- *
+ *
* The parameter mechanism uses a stack and special %
* codes to manipulate it. Typically a sequence will push one
* of the parameters onto the stack and then print it in some
* format. Often more complex operations are necessary.
- *
+ *
* The % encodings have the following meanings:
- *
+ *
* %% outputs `%'
* %d print pop() like %d in printf()
* %2d print pop() like %2d in printf()
@@ -70,25 +68,25 @@ static char rcsID[] = "$Header: /rd/src/libc/xcurses/rcs/tparm.c 1.2 1995/08/31
* %03d print pop() like %03d in printf()
* %c print pop() like %c in printf()
* %s print pop() like %s in printf()
- *
+ *
* %p[1-9] push ith parm
* %P[a-z] set variable [a-z] to pop()
* %g[a-z] get variable [a-z] and push it
* %'c' push char constant c
* %{nn} push integer constant nn
- *
+ *
* %+ %- %* %/ %m
* arithmetic (%m is mod): push(pop() op pop())
* %& %| %^ bit operations: push(pop() op pop())
* %= %> %< logical operations: push(pop() op pop())
* %! %~ unary operations push(op pop())
* %i add 1 to first two parms (for ANSI terminals)
- *
+ *
* %? expr %t thenpart %e elsepart %;
* if-then-else, %e elsepart is optional.
* else-if's are possible ala Algol 68:
* %? c1 %t b1 %e c2 %t b2 %e c3 %t b3 %e c4 %t b4 %e b5 %;
- *
+ *
* For those of the above operators which are binary and not commutative,
* the stack works in the usual way, with
* %gx %gy %m
@@ -136,7 +134,7 @@ long p1, p2, p3, p4, p5, p6, p7, p8, p9;
char *bufptr = buffer;
#ifdef STDARG_VERSION
- /* We've had too many problems porting this particular module
+ /* We've had too many problems porting this particular module
* to different compilers and machines, in particular RISC,
* that we can't make clever assumptions about how variable
* arguments might be handled. The best solution is the
@@ -186,7 +184,7 @@ long p1, p2, p3, p4, p5, p6, p7, p8, p9;
break;
case '0':
len = -(*++string - '0');
- if ((len == (char)-2 || len == (char)-3)
+ if ((len == (char)-2 || len == (char)-3)
&& *++string == 'd')
bufptr += sprintf(
bufptr, "%0*ld", len, npop()
@@ -321,7 +319,7 @@ long p1, p2, p3, p4, p5, p6, p7, p8, p9;
if (x) {
/* do nothing; keep executing */
} else {
- /* scan forward for %e or %; at
+ /* scan forward for %e or %; at
* level zero */
string++;
level = 0;
diff --git a/usr/src/lib/libxcurses2/src/libc/xcurses/tparm.c b/usr/src/lib/libxcurses2/src/libc/xcurses/tparm.c
index bba9f916ad..6173a81d92 100644
--- a/usr/src/lib/libxcurses2/src/libc/xcurses/tparm.c
+++ b/usr/src/lib/libxcurses2/src/libc/xcurses/tparm.c
@@ -24,8 +24,6 @@
* All rights reserved.
*/
-#pragma ident "%Z%%M% %I% %E% SMI"
-
/* LINTLIBRARY */
/*
@@ -48,7 +46,7 @@ static char rcsID[] =
/*
* Substitute the given parameters into the given string by the
- * following rules (taken from terminfo(5)):
+ * following rules (taken from terminfo(7)):
*
* Cursor addressing and other strings requiring parameters
* in the terminal are described by a parameterized string
diff --git a/usr/src/lib/libzfs/Makefile.com b/usr/src/lib/libzfs/Makefile.com
index eba6f3d1f7..628cae354f 100644
--- a/usr/src/lib/libzfs/Makefile.com
+++ b/usr/src/lib/libzfs/Makefile.com
@@ -58,7 +58,7 @@ OBJECTS= $(OBJS_COMMON) $(OBJS_SHARED)
include ../../Makefile.lib
-# libzfs must be installed in the root filesystem for mount(1M)
+# libzfs must be installed in the root filesystem for mount(8)
include ../../Makefile.rootfs
LIBS= $(DYNLIB)
diff --git a/usr/src/lib/libzfs/common/libzfs.h b/usr/src/lib/libzfs/common/libzfs.h
index f69cb861c4..5afdb2a0ba 100644
--- a/usr/src/lib/libzfs/common/libzfs.h
+++ b/usr/src/lib/libzfs/common/libzfs.h
@@ -89,8 +89,8 @@ typedef enum zfs_error {
EZFS_ZONED, /* used improperly in local zone */
EZFS_MOUNTFAILED, /* failed to mount dataset */
EZFS_UMOUNTFAILED, /* failed to unmount dataset */
- EZFS_UNSHARENFSFAILED, /* unshare(1M) failed */
- EZFS_SHARENFSFAILED, /* share(1M) failed */
+ EZFS_UNSHARENFSFAILED, /* unshare(8) failed */
+ EZFS_SHARENFSFAILED, /* share(8) failed */
EZFS_PERM, /* permission denied */
EZFS_NOSPC, /* out of space */
EZFS_FAULT, /* bad address */
diff --git a/usr/src/lib/libzfs/common/libzfs_pool.c b/usr/src/lib/libzfs/common/libzfs_pool.c
index beae63a0ca..70bdf9ad18 100644
--- a/usr/src/lib/libzfs/common/libzfs_pool.c
+++ b/usr/src/lib/libzfs/common/libzfs_pool.c
@@ -4730,7 +4730,7 @@ zpool_label_disk(libzfs_handle_t *hdl, zpool_handle_t *zhp, const char *name,
efi_free(vtoc);
zfs_error_aux(hdl, dgettext(TEXT_DOMAIN,
- "try using fdisk(1M) and then provide a specific slice"));
+ "try using fdisk(8) and then provide a specific slice"));
return (zfs_error(hdl, EZFS_LABELFAILED, errbuf));
}
diff --git a/usr/src/lib/libzfs/common/libzfs_util.c b/usr/src/lib/libzfs/common/libzfs_util.c
index 5077fe2b73..87ccf2492e 100644
--- a/usr/src/lib/libzfs/common/libzfs_util.c
+++ b/usr/src/lib/libzfs/common/libzfs_util.c
@@ -142,9 +142,9 @@ libzfs_error_description(libzfs_handle_t *hdl)
case EZFS_UMOUNTFAILED:
return (dgettext(TEXT_DOMAIN, "umount failed"));
case EZFS_UNSHARENFSFAILED:
- return (dgettext(TEXT_DOMAIN, "unshare(1M) failed"));
+ return (dgettext(TEXT_DOMAIN, "unshare(8) failed"));
case EZFS_SHARENFSFAILED:
- return (dgettext(TEXT_DOMAIN, "share(1M) failed"));
+ return (dgettext(TEXT_DOMAIN, "share(8) failed"));
case EZFS_UNSHARESMBFAILED:
return (dgettext(TEXT_DOMAIN, "smb remove share failed"));
case EZFS_SHARESMBFAILED:
diff --git a/usr/src/lib/libzfs_core/Makefile.com b/usr/src/lib/libzfs_core/Makefile.com
index 5693e9ab0f..47dec8b0ae 100644
--- a/usr/src/lib/libzfs_core/Makefile.com
+++ b/usr/src/lib/libzfs_core/Makefile.com
@@ -35,7 +35,7 @@ OBJECTS= $(OBJS_COMMON) $(OBJS_SHARED)
include ../../Makefile.lib
-# libzfs_core must be installed in the root filesystem for mount(1M)
+# libzfs_core must be installed in the root filesystem for mount(8)
include ../../Makefile.rootfs
LIBS= $(DYNLIB)
diff --git a/usr/src/lib/libzonecfg/common/libzonecfg.c b/usr/src/lib/libzonecfg/common/libzonecfg.c
index 4fded0980b..2ba7196967 100644
--- a/usr/src/lib/libzonecfg/common/libzonecfg.c
+++ b/usr/src/lib/libzonecfg/common/libzonecfg.c
@@ -1360,7 +1360,7 @@ zonecfg_save(zone_dochandle_t handle)
return (Z_MISC_FS);
addcomment(handle, "\n DO NOT EDIT THIS "
- "FILE. Use zonecfg(1M) instead.\n");
+ "FILE. Use zonecfg(8) instead.\n");
/*
* Update user_attr first so that it will be older
@@ -1441,7 +1441,7 @@ zonecfg_detach_save(zone_dochandle_t handle, uint_t flags)
return (err);
addcomment(handle, "\n DO NOT EDIT THIS FILE. "
- "Use zonecfg(1M) and zoneadm(1M) attach.\n");
+ "Use zonecfg(8) and zoneadm(8) attach.\n");
/*
* We do a final validation of the document. Since the library has
@@ -5503,7 +5503,7 @@ zonecfg_endadminent(zone_dochandle_t handle)
}
/*
- * The privileges available on the system and described in privileges(5)
+ * The privileges available on the system and described in privileges(7)
* fall into four categories with respect to non-global zones:
*
* Default set of privileges considered safe for all non-global
@@ -5521,7 +5521,7 @@ zonecfg_endadminent(zone_dochandle_t handle)
* non-global zone.
*
* Set of privileges required in order to get a zone booted and
- * init(1M) started. These cannot be removed from the zone's
+ * init(8) started. These cannot be removed from the zone's
* privilege set.
*
* All other privileges are optional and are potentially useful for
diff --git a/usr/src/lib/libzutil/Makefile.com b/usr/src/lib/libzutil/Makefile.com
index f51c13aef2..62ebe5ea4a 100644
--- a/usr/src/lib/libzutil/Makefile.com
+++ b/usr/src/lib/libzutil/Makefile.com
@@ -23,7 +23,7 @@ OBJECTS= \
include ../../Makefile.lib
-# libzutil must be installed in the root filesystem for mount(1M)
+# libzutil must be installed in the root filesystem for mount(8)
include ../../Makefile.rootfs
LIBS= $(DYNLIB)
diff --git a/usr/src/lib/nsswitch/ad/common/getgrent.c b/usr/src/lib/nsswitch/ad/common/getgrent.c
index 84481bb09f..78d984a606 100644
--- a/usr/src/lib/nsswitch/ad/common/getgrent.c
+++ b/usr/src/lib/nsswitch/ad/common/getgrent.c
@@ -96,7 +96,7 @@ getbynam(ad_backend_ptr be, void *a)
return ((nss_status_t)NSS_NOTFOUND);
}
- /* Create group(4) style string */
+ /* Create group(5) style string */
if (update_buffer(be, argp, name, dname, gid) < 0)
return ((nss_status_t)NSS_NOTFOUND);
@@ -137,12 +137,12 @@ getbygid(ad_backend_ptr be, void *a)
/*
* NULL winname implies a local SID or unresolvable SID both of
- * which cannot be used to generated group(4) entry
+ * which cannot be used to generated group(5) entry
*/
if (winname == NULL)
goto out;
- /* Create group(4) style string */
+ /* Create group(5) style string */
if (update_buffer(be, argp, winname, windomain, argp->key.gid) < 0)
goto out;
diff --git a/usr/src/lib/nsswitch/ad/common/getpwnam.c b/usr/src/lib/nsswitch/ad/common/getpwnam.c
index ff2140b59b..babde81322 100644
--- a/usr/src/lib/nsswitch/ad/common/getpwnam.c
+++ b/usr/src/lib/nsswitch/ad/common/getpwnam.c
@@ -366,7 +366,7 @@ getbyname(ad_backend_ptr be, void *a)
return ((nss_status_t)NSS_NOTFOUND);
}
- /* Create passwd(4) style string */
+ /* Create passwd(5) style string */
if (update_buffer(be, argp, name, dname,
be->uid, gid, "", "", "") < 0)
return ((nss_status_t)NSS_NOTFOUND);
@@ -418,7 +418,7 @@ getbyuid(ad_backend_ptr be, void *a)
/*
* NULL winname implies a local SID or unresolvable SID both of
- * which cannot be used to generated passwd(4) entry
+ * which cannot be used to generated passwd(5) entry
*/
if (winname == NULL)
goto out;
@@ -453,7 +453,7 @@ getbyuid(ad_backend_ptr be, void *a)
goto out;
}
- /* Create passwd(4) style string */
+ /* Create passwd(5) style string */
if (update_buffer(be, argp, winname, windomain,
argp->key.uid, gid, "", "", "") < 0)
goto out;
diff --git a/usr/src/lib/nsswitch/ad/common/getspent.c b/usr/src/lib/nsswitch/ad/common/getspent.c
index a66d8b122b..ca58a484ae 100644
--- a/usr/src/lib/nsswitch/ad/common/getspent.c
+++ b/usr/src/lib/nsswitch/ad/common/getspent.c
@@ -105,7 +105,7 @@ getbynam(ad_backend_ptr be, void *a)
return ((nss_status_t)NSS_NOTFOUND);
}
- /* Create shadow(4) style string */
+ /* Create shadow(5) style string */
if (update_buffer(be, argp, name, dname) < 0)
return ((nss_status_t)NSS_NOTFOUND);
diff --git a/usr/src/lib/nsswitch/files/common/getpwnam.c b/usr/src/lib/nsswitch/files/common/getpwnam.c
index 570eec84ad..b50eb616cf 100644
--- a/usr/src/lib/nsswitch/files/common/getpwnam.c
+++ b/usr/src/lib/nsswitch/files/common/getpwnam.c
@@ -180,7 +180,7 @@ validate_passwd_ids(char *line, int *linelenp, int buflen, int extra_chars)
int linelen = *linelenp, newlinelen;
/*
- * +name entries in passwd(4) do not override uid and gid
+ * +name entries in passwd(5) do not override uid and gid
* values. Therefore no need to validate the ids in these
* entries.
*/
diff --git a/usr/src/lib/pam_modules/authtok_check/authtok_check.c b/usr/src/lib/pam_modules/authtok_check/authtok_check.c
index 2334b9c9cd..ad45f66b7e 100644
--- a/usr/src/lib/pam_modules/authtok_check/authtok_check.c
+++ b/usr/src/lib/pam_modules/authtok_check/authtok_check.c
@@ -332,7 +332,7 @@ get_passwd_defaults(pam_handle_t *pamh, char *user, struct pwdefaults *p)
syslog(LOG_ERR, "%s: pam_authtok_check: The configured "
"minimum password length (PASSLENGTH=%d) is larger than "
"the number of significant characters the current "
- "encryption algorithm uses (%d). See policy.conf(4) for "
+ "encryption algorithm uses (%d). See policy.conf(5) for "
"alternative password encryption algorithms.", progname);
/* this won't lead to failure */
}
diff --git a/usr/src/lib/pam_modules/krb5/krb5_setcred.c b/usr/src/lib/pam_modules/krb5/krb5_setcred.c
index 743cda3297..5f43c0babc 100644
--- a/usr/src/lib/pam_modules/krb5/krb5_setcred.c
+++ b/usr/src/lib/pam_modules/krb5/krb5_setcred.c
@@ -568,13 +568,13 @@ error:
if (kwarn_del_warning(client_name) != 0) {
__pam_log(LOG_AUTH | LOG_NOTICE,
"PAM-KRB5 (setcred): kwarn_del_warning"
- " failed: ktkt_warnd(1M) down?");
+ " failed: ktkt_warnd(8) down?");
}
if (kwarn_add_warning(client_name, endtime) != 0) {
__pam_log(LOG_AUTH | LOG_NOTICE,
"PAM-KRB5 (setcred): kwarn_add_warning"
- " failed: ktkt_warnd(1M) down?");
+ " failed: ktkt_warnd(8) down?");
}
}
diff --git a/usr/src/lib/pam_modules/krb5_migrate/krb5_migrate_authenticate.c b/usr/src/lib/pam_modules/krb5_migrate/krb5_migrate_authenticate.c
index b437359bfe..f8e19deefa 100644
--- a/usr/src/lib/pam_modules/krb5_migrate/krb5_migrate_authenticate.c
+++ b/usr/src/lib/pam_modules/krb5_migrate/krb5_migrate_authenticate.c
@@ -331,7 +331,7 @@ int pam_sm_authenticate(pam_handle_t *pamh, int flags,
/*
* Since this is a new krb5 principal, do a pam_set_data()
- * for possible use by the acct_mgmt routine of pam_krb5(5)
+ * for possible use by the acct_mgmt routine of pam_krb5(7)
*/
if (pam_get_data(pamh, KRB5_AUTOMIGRATE_DATA,
(const void **)&olduserdata) == PAM_SUCCESS) {
diff --git a/usr/src/lib/pam_modules/unix_cred/unix_cred.c b/usr/src/lib/pam_modules/unix_cred/unix_cred.c
index fcaeecb320..036d2fc3f0 100644
--- a/usr/src/lib/pam_modules/unix_cred/unix_cred.c
+++ b/usr/src/lib/pam_modules/unix_cred/unix_cred.c
@@ -524,7 +524,7 @@ adt_done:
default:
/*
* Resource control assignment failed. Unlike
- * newtask(1m), we treat this as an error.
+ * newtask(1), we treat this as an error.
*/
if (error < 0) {
/*
diff --git a/usr/src/lib/passwdutil/files_attr.c b/usr/src/lib/passwdutil/files_attr.c
index 8a250b90df..c1021b361c 100644
--- a/usr/src/lib/passwdutil/files_attr.c
+++ b/usr/src/lib/passwdutil/files_attr.c
@@ -1135,7 +1135,7 @@ files_putpwnam(char *name, char *oldpw, pwu_repository_t *rep, void *buf)
/*
* NOTE: This is all covered under the repository lock held for updating
- * passwd(4) and shadow(4).
+ * passwd(5) and shadow(5).
*/
int
files_update_history(char *name, struct spwd *spwd)
diff --git a/usr/src/lib/passwdutil/ldap_attr.c b/usr/src/lib/passwdutil/ldap_attr.c
index 4c43eb7adb..42489c8473 100644
--- a/usr/src/lib/passwdutil/ldap_attr.c
+++ b/usr/src/lib/passwdutil/ldap_attr.c
@@ -181,7 +181,7 @@ free_ldapbuf(ldapbuf_t *p)
*
* If the Shadow Update functionality is enabled, then we check to
* see if the caller has 0 as the euid or has all zone privs. If so,
- * the caller would be able to modify shadow(4) data stored on the
+ * the caller would be able to modify shadow(5) data stored on the
* LDAP server. Otherwise, when LDAP Shadow Update is not enabled,
* we can't determine whether the user is "privileged" in the LDAP
* sense. The operation should be attempted and will succeed if the
diff --git a/usr/src/lib/pkcs11/libpkcs11/common/pkcs11Conf.c b/usr/src/lib/pkcs11/libpkcs11/common/pkcs11Conf.c
index dd66f6b808..d33f8808a8 100644
--- a/usr/src/lib/pkcs11/libpkcs11/common/pkcs11Conf.c
+++ b/usr/src/lib/pkcs11/libpkcs11/common/pkcs11Conf.c
@@ -64,7 +64,7 @@ metaslot_config_t metaslot_config;
void (*Tmp_GetThreshold)(void *) = NULL;
cipher_mechs_threshold_t meta_mechs_threshold[MAX_NUM_THRESHOLD];
-static const char *conf_err = "See cryptoadm(1M). Skipping this plug-in.";
+static const char *conf_err = "See cryptoadm(8). Skipping this plug-in.";
/*
* Set up metaslot for the framework using either user configuration
@@ -95,7 +95,7 @@ setup_metaslot(uentry_t *metaslot_entry) {
*/
cryptoerror(LOG_ERR,
"libpkcs11: Policy invalid or corrupted "
- "for metaslot. Use cryptoadm(1M) to fix "
+ "for metaslot. Use cryptoadm(8) to fix "
"this. Disabling metaslot functionality.\n");
metaslot_enabled = B_FALSE;
return (rv);
@@ -532,7 +532,7 @@ pkcs11_slot_mapping(uentrylist_t *pplist, CK_VOID_PTR pInitArgs)
*/
cryptoerror(LOG_ERR,
"libpkcs11: Policy invalid or corrupted "
- "for %s. Use cryptoadm(1M) to fix "
+ "for %s. Use cryptoadm(8) to fix "
"this. Skipping this plug-in.",
fullpath);
(void) prov_funcs->C_Finalize(NULL);
diff --git a/usr/src/lib/print/libpapi-dynamic/common/nss.c b/usr/src/lib/print/libpapi-dynamic/common/nss.c
index 5ab245e936..ed665e8567 100644
--- a/usr/src/lib/print/libpapi-dynamic/common/nss.c
+++ b/usr/src/lib/print/libpapi-dynamic/common/nss.c
@@ -170,7 +170,7 @@ fill_printer_uri_supported(papi_attribute_t ***list)
return;
}
- /* do we have a printers.conf(4) "bsdaddr" to convert */
+ /* do we have a printers.conf(5) "bsdaddr" to convert */
papiAttributeListGetString(*list, NULL, "bsdaddr", &string);
if (string != NULL) { /* parse it, convert it, add it */
char *uri = bsdaddr_to_uri(*list, string);
@@ -184,7 +184,7 @@ fill_printer_uri_supported(papi_attribute_t ***list)
}
}
- /* do we have a printers.conf(4) "rm" (and "rp") to convert */
+ /* do we have a printers.conf(5) "rm" (and "rp") to convert */
papiAttributeListGetString(*list, NULL, "rm", &string);
if (string != NULL) {
char *rp = NULL;
diff --git a/usr/src/lib/print/libprint/common/nss_write.c b/usr/src/lib/print/libprint/common/nss_write.c
index 0eb6ef7e35..3225598092 100644
--- a/usr/src/lib/print/libprint/common/nss_write.c
+++ b/usr/src/lib/print/libprint/common/nss_write.c
@@ -141,7 +141,7 @@ _file_put_printer(const char *file, const ns_printer_t *printer)
(void) fprintf(ofp,
"#\n#\tIf you hand edit this file, comments and structure may change.\n"
"#\tThe preferred method of modifying this file is through the use of\n"
- "#\tlpset(1M)\n#\n");
+ "#\tlpset(8)\n#\n");
/*
* Handle the special case of lpset -x all
diff --git a/usr/src/lib/smbsrv/libmlsvc/common/smb_autohome.c b/usr/src/lib/smbsrv/libmlsvc/common/smb_autohome.c
index c9e634f515..114db29cbb 100644
--- a/usr/src/lib/smbsrv/libmlsvc/common/smb_autohome.c
+++ b/usr/src/lib/smbsrv/libmlsvc/common/smb_autohome.c
@@ -64,7 +64,7 @@ static void smb_autohome_parse_options(smb_share_t *);
static int smb_autohome_add_private(const char *, uid_t, gid_t);
/*
- * Add an autohome share. See smb_autohome(4) for details.
+ * Add an autohome share. See smb_autohome(5) for details.
*
* If share directory contains backslash path separators, they will
* be converted to forward slash to support NT/DOS path style for
diff --git a/usr/src/lib/varpd/libvarpd/common/libvarpd_provider.h b/usr/src/lib/varpd/libvarpd/common/libvarpd_provider.h
index 17ea02fe03..050b9e600a 100644
--- a/usr/src/lib/varpd/libvarpd/common/libvarpd_provider.h
+++ b/usr/src/lib/varpd/libvarpd/common/libvarpd_provider.h
@@ -258,7 +258,7 @@
* vpr_name
*
* This is the name of the plugin. This is how users will refer to it in
- * the context of running dladm(1M) commands. Note, this name must be
+ * the context of running dladm(8) commands. Note, this name must be
* unique across the different plugins, as it will cause others with the
* same name not to be registered.
*
diff --git a/usr/src/man/Makefile b/usr/src/man/Makefile
index d2a1fbe134..0927a6ea6b 100644
--- a/usr/src/man/Makefile
+++ b/usr/src/man/Makefile
@@ -19,7 +19,6 @@ SUBDIRS= man1 \
man1b \
man1c \
man1has \
- man1m \
man1s \
man2 \
man3 \
@@ -90,14 +89,15 @@ SUBDIRS= man1 \
man3xcurses \
man3xnet \
man4 \
+ man4d \
+ man4fs \
+ man4i \
+ man4ipp \
+ man4m \
+ man4p \
man5 \
man7 \
- man7d \
- man7fs \
- man7i \
- man7ipp \
- man7m \
- man7p \
+ man8 \
man9 \
man9e \
man9f \
diff --git a/usr/src/man/man1/Intro.1 b/usr/src/man/man1/Intro.1
index 72236e4926..a6927f9d91 100644
--- a/usr/src/man/man1/Intro.1
+++ b/usr/src/man/man1/Intro.1
@@ -48,20 +48,20 @@ See the following sections of the SunOS Reference Manual for more information.
.TP
.ie t \(bu
.el o
-Section 1M for system maintenance commands.
+Section 5 for information on file formats.
.RE
.RS +4
.TP
.ie t \(bu
.el o
-Section 4 for information on file formats.
+Section 7 for descriptions of publicly available files and miscellaneous
+information pages.
.RE
.RS +4
.TP
.ie t \(bu
.el o
-Section 5 for descriptions of publicly available files and miscellaneous
-information pages.
+Section 8 for system maintenance commands.
.RE
.sp
.LP
@@ -486,7 +486,7 @@ They are provided here for the use of anyone wanting to author utilities
following this syntax.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for a discussion of the attributes listed in this
+See \fBattributes\fR(7) for a discussion of the attributes listed in this
section.
.SH ACKNOWLEDGMENTS
.LP
@@ -518,8 +518,11 @@ http://www.opengroup.org/unix/online.html\&.
This notice shall appear on any product containing this material.
.SH SEE ALSO
.LP
-\fBgetopts\fR(1), \fBwait\fR(1), \fBexit\fR(2), \fBgetopt\fR(3C),
-\fBattributes\fR(5)
+.BR getopts (1),
+.BR wait (1),
+.BR exit (2),
+.BR getopt (3C),
+.BR attributes (7)
.SH DIAGNOSTICS
.LP
Upon termination, each command returns two bytes of status, one supplied by the
diff --git a/usr/src/man/man1/acctcom.1 b/usr/src/man/man1/acctcom.1
index 8a44c7af7c..ad1836099a 100644
--- a/usr/src/man/man1/acctcom.1
+++ b/usr/src/man/man1/acctcom.1
@@ -316,7 +316,7 @@ active processes accounting file
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -332,10 +332,21 @@ CSI Enabled
.SH SEE ALSO
.sp
.LP
-\fBps\fR(1), \fBacct\fR(1M), \fBacctcms\fR(1M), \fBacctcon\fR(1M),
-\fBacctmerg\fR(1M), \fBacctprc\fR(1M), \fBacctsh\fR(1M), \fBfwtmp\fR(1M),
-\fBrunacct\fR(1M), \fBsu\fR(1M), \fBacct\fR(2), \fBregcmp\fR(3C),
-\fBacct.h\fR(3HEAD), \fButmp\fR(4), \fBattributes\fR(5)
+.BR ps (1),
+.BR acct (2),
+.BR regcmp (3C),
+.BR acct.h (3HEAD),
+.BR utmp (5),
+.BR attributes (7),
+.BR acct (8),
+.BR acctcms (8),
+.BR acctcon (8),
+.BR acctmerg (8),
+.BR acctprc (8),
+.BR acctsh (8),
+.BR fwtmp (8),
+.BR runacct (8),
+.BR su (8)
.sp
.LP
\fISystem Administration Guide: Basic Administration\fR
diff --git a/usr/src/man/man1/adb.1 b/usr/src/man/man1/adb.1
index 08e5f05a0c..0ec804622a 100644
--- a/usr/src/man/man1/adb.1
+++ b/usr/src/man/man1/adb.1
@@ -30,7 +30,8 @@ existing syntax and features of \fBadb\fR, including support for processing
\fBadb\fR link is executed.
.SH SEE ALSO
.LP
-\fBmdb\fR(1), \fBattributes\fR(5)
+.BR mdb (1),
+.BR attributes (7)
.sp
.LP
\fIModular Debugger Guide\fR:
diff --git a/usr/src/man/man1/addbib.1 b/usr/src/man/man1/addbib.1
index 127e6f01aa..8992f7aa39 100644
--- a/usr/src/man/man1/addbib.1
+++ b/usr/src/man/man1/addbib.1
@@ -288,5 +288,12 @@ should be supplied.
.SH SEE ALSO
.sp
.LP
-\fBed\fR(1), \fBex\fR(1), \fBindxbib\fR(1), \fBlookbib\fR(1), \fBrefer\fR(1),
-\fBroffbib\fR(1), \fBsortbib\fR(1), \fBvi\fR(1), \fBattributes\fR(5)
+.BR ed (1),
+.BR ex (1),
+.BR indxbib (1),
+.BR lookbib (1),
+.BR refer (1),
+.BR roffbib (1),
+.BR sortbib (1),
+.BR vi (1),
+.BR attributes (7)
diff --git a/usr/src/man/man1/alias.1 b/usr/src/man/man1/alias.1
index 4cec7aa6d2..acb1b25ba8 100644
--- a/usr/src/man/man1/alias.1
+++ b/usr/src/man/man1/alias.1
@@ -387,7 +387,7 @@ example% \fBalias nohup="nohup "\fR
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBalias\fR and \fBunalias\fR: \fBLANG\fR,
\fBLC_ALL\fR, \fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.SH EXIT STATUS
@@ -428,7 +428,7 @@ definition, or an error occurred.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.SS "\fBcsh, ksh\fR"
.sp
@@ -441,7 +441,7 @@ ATTRIBUTE TYPE ATTRIBUTE VALUE
_
Interface Stability Committed
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SS "\fBksh93\fR"
@@ -460,5 +460,10 @@ Interface Stability Uncommitted
.SH SEE ALSO
.sp
.LP
-\fBcsh\fR(1), \fBksh\fR(1), \fBksh93\fR(1), \fBshell_builtins\fR(1),
-\fBattributes\fR(5), \fBenviron\fR(5), \fBstandards\fR(5)
+.BR csh (1),
+.BR ksh (1),
+.BR ksh93 (1),
+.BR shell_builtins (1),
+.BR attributes (7),
+.BR environ (7),
+.BR standards (7)
diff --git a/usr/src/man/man1/allocate.1 b/usr/src/man/man1/allocate.1
index 2e60ba0f90..4251214107 100644
--- a/usr/src/man/man1/allocate.1
+++ b/usr/src/man/man1/allocate.1
@@ -34,7 +34,7 @@ with \fIdevice\fR to the \fBuid\fR of the current process.
.sp
.LP
Only authorized users may allocate a device. The required authorizations are
-specified in \fBdevice_allocate\fR(4).
+specified in \fBdevice_allocate\fR(5).
.sp
.LP
When the system is configured with Trusted Extensions, \fBallocate\fR runs the
@@ -165,7 +165,7 @@ An error occurred.
\fB/etc/security/lib/*\fR
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -184,14 +184,19 @@ The invocation is Uncommitted. The options are Uncommitted. The output is
Not-an-Interface.
.SH SEE ALSO
.LP
-\fBdeallocate\fR(1), \fBlist_devices\fR(1),
-\fBdminfo\fR(1M), \fBmkdevalloc\fR(1M), \fBmkdevmaps\fR(1M),
-\fBdevice_allocate\fR(4), \fBdevice_maps\fR(4), \fBattributes\fR(5)
+.BR deallocate (1),
+.BR list_devices (1),
+.BR device_allocate (5),
+.BR device_maps (5),
+.BR attributes (7),
+.BR dminfo (8),
+.BR mkdevalloc (8),
+.BR mkdevmaps (8)
.SH NOTES
.LP
On systems configured with Trusted Extensions, the functionality is enabled by
default.
.sp
.LP
-\fB/etc/security/dev\fR, \fBmkdevalloc\fR(1M), and \fBmkdevmaps\fR(1M) might
+\fB/etc/security/dev\fR, \fBmkdevalloc\fR(8), and \fBmkdevmaps\fR(8) might
not be supported in a future release of the Solaris Operating Environment.
diff --git a/usr/src/man/man1/amt.1 b/usr/src/man/man1/amt.1
index 7c192c6461..baefe6b968 100644
--- a/usr/src/man/man1/amt.1
+++ b/usr/src/man/man1/amt.1
@@ -73,7 +73,7 @@ Incorrect command line argument.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -89,4 +89,4 @@ Interface Stability Committed
.SH SEE ALSO
.sp
.LP
-\fBattributes\fR(5)
+.BR attributes (7)
diff --git a/usr/src/man/man1/appcert.1 b/usr/src/man/man1/appcert.1
index 78577f4ba9..835cb363ad 100644
--- a/usr/src/man/man1/appcert.1
+++ b/usr/src/man/man1/appcert.1
@@ -662,7 +662,7 @@ rare.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -678,6 +678,14 @@ Interface stability Stable
.SH SEE ALSO
.sp
.LP
-\fBcc\fR(1), \fBfind\fR(1), \fBisalist\fR(1), \fBld\fR(1), \fBldd\fR(1),
-\fBld.so.1\fR(1), \fBpvs\fR(1), \fBdlopen\fR(3C), \fBstrerror\fR(3C),
-\fBIntro\fR(4), \fBattributes\fR(5)
+.BR cc (1),
+.BR find (1),
+.BR isalist (1),
+.BR ld (1),
+.BR ld.so.1 (1),
+.BR ldd (1),
+.BR pvs (1),
+.BR dlopen (3C),
+.BR strerror (3C),
+.BR Intro (5),
+.BR attributes (7)
diff --git a/usr/src/man/man1/apptrace.1 b/usr/src/man/man1/apptrace.1
index 87214993d7..e18fc65bda 100644
--- a/usr/src/man/man1/apptrace.1
+++ b/usr/src/man/man1/apptrace.1
@@ -81,7 +81,7 @@ Traces calls from a comma-separated list of shared objects. Only calls from
these shared objects will be traced. The default is to trace calls from the
main executable only. Only the basename of the shared object is required. For
example, \fIlibc\fR will match \fI/usr/lib/libc.so.1\fR. Additionally, shell
-style wildcard characters are supported as described in \fBfnmatch\fR(5). A
+style wildcard characters are supported as described in \fBfnmatch\fR(7). A
list preceded by a ``!'' defines a list of objects from which calls should not
be traced. If the tracing of calls from \fIcommand\fR is required, then
\fIcommand\fR must be a member of \fItracefromlist\fR.
@@ -263,7 +263,7 @@ formatted printing of arguments.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -279,8 +279,12 @@ Interface Stability Unstable
.SH SEE ALSO
.sp
.LP
-\fBld.so.1\fR(1), \fBtruss\fR(1), \fBvwprintw\fR(3XCURSES),
-\fBvwscanw\fR(3XCURSES), \fBattributes\fR(5), \fBfnmatch\fR(5)
+.BR ld.so.1 (1),
+.BR truss (1),
+.BR vwprintw (3XCURSES),
+.BR vwscanw (3XCURSES),
+.BR attributes (7),
+.BR fnmatch (7)
.sp
.LP
\fILinker and Libraries Guide\fR
diff --git a/usr/src/man/man1/apropos.1 b/usr/src/man/man1/apropos.1
index 8edb11ba22..805a4e36b1 100644
--- a/usr/src/man/man1/apropos.1
+++ b/usr/src/man/man1/apropos.1
@@ -130,4 +130,4 @@ Enabled.
.Nm Committed .
.Sh SEE ALSO
.Xr man 1 ,
-.Xr catman 1M
+.Xr catman 8
diff --git a/usr/src/man/man1/ar.1 b/usr/src/man/man1/ar.1
index 0a922efc28..5ccea66de9 100644
--- a/usr/src/man/man1/ar.1
+++ b/usr/src/man/man1/ar.1
@@ -393,7 +393,7 @@ options \fB-m\fR and \fB-r\fR.
.RE
.SH ENVIRONMENT VARIABLES
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBar\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, \fBLC_TIME\fR, and \fBNLSPATH\fR.
.sp
@@ -438,7 +438,7 @@ An error occurred.
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.SS "\fB/usr/bin/ar\fR"
.TS
box;
@@ -458,13 +458,21 @@ ATTRIBUTE TYPE ATTRIBUTE VALUE
_
Interface Stability Committed
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
-\fBbasename\fR(1), \fBcpio\fR(1), \fBld\fR(1), \fBlorder\fR(1), \fBstrip\fR(1),
-\fBtar\fR(1), \fBar.h\fR(3HEAD), \fBa.out\fR(4), \fBattributes\fR(5),
-\fBenviron\fR(5), \fBstandards\fR(5)
+.BR basename (1),
+.BR cpio (1),
+.BR ld (1),
+.BR lorder (1),
+.BR strip (1),
+.BR tar (1),
+.BR ar.h (3HEAD),
+.BR a.out (5),
+.BR attributes (7),
+.BR environ (7),
+.BR standards (7)
.SH NOTES
If the same file is mentioned twice in an argument list, it may be put in the
archive twice.
diff --git a/usr/src/man/man1/arch.1 b/usr/src/man/man1/arch.1
index 5bfef3971e..5d4c23e5ae 100644
--- a/usr/src/man/man1/arch.1
+++ b/usr/src/man/man1/arch.1
@@ -84,7 +84,10 @@ An error occurred.
.SH SEE ALSO
.sp
.LP
-\fBmach\fR(1), \fBps\fR(1), \fBuname\fR(1), \fBattributes\fR(5)
+.BR mach (1),
+.BR ps (1),
+.BR uname (1),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man1/asa.1 b/usr/src/man/man1/asa.1
index 5c869a41d5..5ccf7dd9c2 100644
--- a/usr/src/man/man1/asa.1
+++ b/usr/src/man/man1/asa.1
@@ -237,7 +237,7 @@ asa < MyOutputFile | lp\fR
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBasa\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.SH EXIT STATUS
@@ -265,7 +265,7 @@ An error occurred.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -281,4 +281,7 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBlp\fR(1), \fBattributes\fR(5), \fBenviron\fR(5), \fBstandards\fR(5)
+.BR lp (1),
+.BR attributes (7),
+.BR environ (7),
+.BR standards (7)
diff --git a/usr/src/man/man1/at.1 b/usr/src/man/man1/at.1
index fa450e6827..4729533243 100644
--- a/usr/src/man/man1/at.1
+++ b/usr/src/man/man1/at.1
@@ -140,7 +140,7 @@ be denied access to \fBat\fR. If neither file exists, only a user with the
.sp
.LP
\fBcron\fR and \fBat\fR jobs are not be executed if the user's account is
-locked. Only accounts which are not locked as defined in \fBshadow\fR(4) will
+locked. Only accounts which are not locked as defined in \fBshadow\fR(5) will
have their job or process executed.
.SS "batch"
.sp
@@ -175,7 +175,7 @@ are respectively equivalent to:
where queue \fBb\fR is a special \fBat\fR queue, specifically for batch jobs.
Batch jobs are submitted to the batch queue for immediate execution. Execution
of submitted jobs can be delayed by limits on the number of jobs allowed to run
-concurrently. See \fBqueuedefs\fR(4).
+concurrently. See \fBqueuedefs\fR(5).
.SH OPTIONS
.sp
.LP
@@ -562,7 +562,7 @@ diff file1 file2 2>&1 >outfile | mailx mygroup
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBat\fR and \fBbatch\fR: \fBLANG\fR,
\fBLC_ALL\fR, \fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, \fBNLSPATH\fR, and
\fBLC_TIME\fR.
@@ -655,7 +655,7 @@ names of users, one per line, who are denied access to the \fBat\fR and
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.SS "/usr/bin/at"
.sp
@@ -719,14 +719,27 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBauths\fR(1), \fBcrontab\fR(1), \fBcsh\fR(1), \fBdate\fR(1), \fBksh\fR(1),
-\fBsh\fR(1), \fBtouch\fR(1), \fBulimit\fR(1), \fBumask\fR(1), \fBcron\fR(1M),
-\fBgetdate\fR(3C), \fBauth_attr\fR(4), \fBshadow\fR(4), \fBqueuedefs\fR(4),
-\fBattributes\fR(5), \fBenviron\fR(5), \fBstandards\fR(5)
+.BR auths (1),
+.BR crontab (1),
+.BR csh (1),
+.BR date (1),
+.BR ksh (1),
+.BR sh (1),
+.BR touch (1),
+.BR ulimit (1),
+.BR umask (1),
+.BR getdate (3C),
+.BR auth_attr (5),
+.BR queuedefs (5),
+.BR shadow (5),
+.BR attributes (7),
+.BR environ (7),
+.BR standards (7),
+.BR cron (8)
.SH NOTES
.sp
.LP
-Regardless of queue used, \fBcron\fR(1M) has a limit of 100 jobs in execution
+Regardless of queue used, \fBcron\fR(8) has a limit of 100 jobs in execution
at any time.
.sp
.LP
diff --git a/usr/src/man/man1/atq.1 b/usr/src/man/man1/atq.1
index 35ef28c941..c954d04963 100644
--- a/usr/src/man/man1/atq.1
+++ b/usr/src/man/man1/atq.1
@@ -63,5 +63,9 @@ spool area for at jobs.
.SH SEE ALSO
.sp
.LP
-\fBat\fR(1), \fBatrm\fR(1), \fBauths\fR(1), \fBcron\fR(1M), \fBauth_attr\fR(4),
-\fBattributes\fR(5)
+.BR at (1),
+.BR atrm (1),
+.BR auths (1),
+.BR auth_attr (5),
+.BR attributes (7),
+.BR cron (8)
diff --git a/usr/src/man/man1/atrm.1 b/usr/src/man/man1/atrm.1
index ad1ce8c87c..8dffc6bb44 100644
--- a/usr/src/man/man1/atrm.1
+++ b/usr/src/man/man1/atrm.1
@@ -72,7 +72,7 @@ Spool area for \fBat\fR jobs
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBatrm\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_COLLATE\fR, \fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.sp
@@ -84,9 +84,15 @@ the behavior of ranges, equivalence classes, and multi-character collating
elements used in the expression defined for \fByesexpr\fR. The locale specified
in \fBLC_CTYPE\fR determines the locale for interpretation of sequences of
bytes of text data a characters, the behavior of character classes used in the
-expression defined for the \fByesexpr\fR. See \fBlocale\fR(5)
+expression defined for the \fByesexpr\fR. See \fBlocale\fR(7)
.SH SEE ALSO
.sp
.LP
-\fBat\fR(1), \fBatq\fR(1), \fBauths\fR(1), \fBcron\fR(1M), \fBauth_attr\fR(4),
-\fBattributes\fR(5), \fBenviron\fR(5), \fBlocale\fR(5)
+.BR at (1),
+.BR atq (1),
+.BR auths (1),
+.BR auth_attr (5),
+.BR attributes (7),
+.BR environ (7),
+.BR locale (7),
+.BR cron (8)
diff --git a/usr/src/man/man1/audioconvert.1 b/usr/src/man/man1/audioconvert.1
index 8dd302761c..e4be8de9de 100644
--- a/usr/src/man/man1/audioconvert.1
+++ b/usr/src/man/man1/audioconvert.1
@@ -320,7 +320,7 @@ unrecognized file header.
.RE
.SH USAGE
-See \fBlargefile\fR(5) for the description of the behavior of
+See \fBlargefile\fR(7) for the description of the behavior of
\fBaudioconvert\fR when encountering files greater than or equal to 2 Gbyte
(2^31 bytes).
.SH EXAMPLES
@@ -368,8 +368,10 @@ example% \fBaudioconvert -p -i voice -f sun *.au\fR
.sp
.SH SEE ALSO
-\fBaudioplay\fR(1), \fBaudiorecord\fR(1), \fBfile\fR(1),
-\fBlargefile\fR(5)
+.BR audioplay (1),
+.BR audiorecord (1),
+.BR file (1),
+.BR largefile (7)
.SH NOTES
The algorithm used for converting multi-channel data to mono is implemented by
simply summing the channels together. If the input data is perfectly in phase
diff --git a/usr/src/man/man1/audioctl.1 b/usr/src/man/man1/audioctl.1
index 1916b82ed7..22aecba43e 100644
--- a/usr/src/man/man1/audioctl.1
+++ b/usr/src/man/man1/audioctl.1
@@ -157,5 +157,7 @@ Interface. The format of the state files used by the
\fBsave-controls\fR and \fBload-controls\fR subcommands is Committed
Private.
.SH SEE ALSO
-\fBaudioplay\fR(1), \fBaudiorecord\fR(1), \fBdsp\fR(7I),
-\fBmixer\fR(7I)
+.BR audioplay (1),
+.BR audiorecord (1),
+.BR dsp (4I),
+.BR mixer (4I)
diff --git a/usr/src/man/man1/audioplay.1 b/usr/src/man/man1/audioplay.1
index 64f6115201..1e7fa05d24 100644
--- a/usr/src/man/man1/audioplay.1
+++ b/usr/src/man/man1/audioplay.1
@@ -102,7 +102,7 @@ variable is consulted (see below).
.RE
.SH USAGE
-See \fBlargefile\fR(5) for the description of the behavior of \fBaudioplay\fR
+See \fBlargefile\fR(7) for the description of the behavior of \fBaudioplay\fR
when encountering files greater than or equal to 2 Gbyte (2^31 bytes).
.SH ENVIRONMENT VARIABLES
.ne 2
@@ -127,8 +127,10 @@ set, only the current directory is searched.
.RE
.SH SEE ALSO
-\fBaudioconvert\fR(1), \fBaudiorecord\fR(1),
-\fBlargefile\fR(5), \fBaudio\fR(7I)
+.BR audioconvert (1),
+.BR audiorecord (1),
+.BR audio (4I),
+.BR largefile (7)
.SH BUGS
\fBaudioplay\fR currently supports a limited set of audio format conversions.
If the audio file is not in a format supported by the audio device, it must
diff --git a/usr/src/man/man1/audiorecord.1 b/usr/src/man/man1/audiorecord.1
index 7ffedbd976..3bd2c588e7 100644
--- a/usr/src/man/man1/audiorecord.1
+++ b/usr/src/man/man1/audiorecord.1
@@ -179,7 +179,7 @@ file suffix.
.RE
.SH USAGE
-See \fBlargefile\fR(5) for the description of the behavior of \fBaudiorecord\fR
+See \fBlargefile\fR(7) for the description of the behavior of \fBaudiorecord\fR
when encountering files greater than or equal to 2 Gbyte (2^31 bytes).
.SH ENVIRONMENT VARIABLES
.ne 2
@@ -193,5 +193,7 @@ used.
.RE
.SH SEE ALSO
-\fBaudioconvert\fR(1), \fBaudioplay\fR(1),
-\fBlargefile\fR(5), \fBaudio\fR(7I)
+.BR audioconvert (1),
+.BR audioplay (1),
+.BR audio (4I),
+.BR largefile (7)
diff --git a/usr/src/man/man1/audiotest.1 b/usr/src/man/man1/audiotest.1
index 67e6a77b6e..9829f1cc6a 100644
--- a/usr/src/man/man1/audiotest.1
+++ b/usr/src/man/man1/audiotest.1
@@ -93,8 +93,9 @@ The path to the device to test, for example, \fB/dev/dsp0\fR.
.RE
.SH SEE ALSO
-\fBaudioconvert\fR(1), \fBaudiorecord\fR(1),
-\fBaudio\fR(7I)
+.BR audioconvert (1),
+.BR audiorecord (1),
+.BR audio (4I)
.SH BUGS
\fBaudiotest\fR has no way to detect the number of actual audio channels
supported by the physical device.
diff --git a/usr/src/man/man1/auths.1 b/usr/src/man/man1/auths.1
index 0708da4105..4439929bb1 100644
--- a/usr/src/man/man1/auths.1
+++ b/usr/src/man/man1/auths.1
@@ -33,10 +33,10 @@ authorizations.
An asterisk (\fB*\fR) indicates all authorizations in a class.
.sp
.LP
-A user's authorizations are looked up in \fBuser_attr\fR(4) and in the
-\fB/etc/security/policy.conf\fR file (see \fBpolicy.conf\fR(4)). Authorizations
-may be specified directly in \fBuser_attr\fR(4) or indirectly through
-\fBprof_attr\fR(4). Authorizations may also be assigned to every user in the
+A user's authorizations are looked up in \fBuser_attr\fR(5) and in the
+\fB/etc/security/policy.conf\fR file (see \fBpolicy.conf\fR(5)). Authorizations
+may be specified directly in \fBuser_attr\fR(5) or indirectly through
+\fBprof_attr\fR(5). Authorizations may also be assigned to every user in the
system directly as default authorizations or indirectly as default profiles in
the \fB/etc/security/policy.conf\fR file.
.SH EXAMPLES
@@ -100,6 +100,11 @@ An error occurred.
.SH SEE ALSO
.sp
.LP
-\fBprofiles\fR(1), \fBroles\fR(1), \fBgetauthattr\fR(3SECDB),
-\fBauth_attr\fR(4), \fBpolicy.conf\fR(4), \fBprof_attr\fR(4),
-\fBuser_attr\fR(4), \fBattributes\fR(5)
+.BR profiles (1),
+.BR roles (1),
+.BR getauthattr (3SECDB),
+.BR auth_attr (5),
+.BR policy.conf (5),
+.BR prof_attr (5),
+.BR user_attr (5),
+.BR attributes (7)
diff --git a/usr/src/man/man1/awk.1 b/usr/src/man/man1/awk.1
index 2b86e7e8b0..2d004d5ee4 100644
--- a/usr/src/man/man1/awk.1
+++ b/usr/src/man/man1/awk.1
@@ -718,7 +718,7 @@ separator value, though, this will be set to the empty string (\fB""\fR).
.SS "Regular Expressions"
The \fBawk\fR utility makes use of the extended regular expression notation
-(see \fBregex\fR(5)) except that it allows the use of C-language conventions to
+(see \fBregex\fR(7)) except that it allows the use of C-language conventions to
escape special characters within the EREs, namely \fB\e\e\fR, \fB\ea\fR,
\fB\eb\fR, \fB\ef\fR, \fB\en\fR, \fB\er\fR, \fB\et\fR, \fB\ev\fR, and those
specified in the following table. These escape sequences are recognized both
@@ -1494,7 +1494,7 @@ rather than an explicit operator, it is often necessary to use parentheses to
enforce the proper evaluation precedence.
.sp
.LP
-See \fBlargefile\fR(5) for the description of the behavior of \fBawk\fR when
+See \fBlargefile\fR(7) for the description of the behavior of \fBawk\fR when
encountering files greater than or equal to 2 Gbyte (2^31 bytes).
.SH EXAMPLES
@@ -1776,7 +1776,7 @@ then the command line
prints the file \fBinput\fR, filling in page numbers starting at 5.
.SH ENVIRONMENT VARIABLES
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect execution: \fBLC_COLLATE\fR, \fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and
\fBNLSPATH\fR.
.sp
@@ -1818,10 +1818,20 @@ The exit status can be altered within the program by using an \fBexit\fR
expression.
.SH SEE ALSO
-\fBed\fR(1), \fBegrep\fR(1), \fBgrep\fR(1), \fBlex\fR(1), \fBoawk\fR(1),
-\fBsed\fR(1), \fBpopen\fR(3C), \fBprintf\fR(3C), \fBsystem\fR(3C),
-\fBattributes\fR(5), \fBenviron\fR(5), \fBlargefile\fR(5), \fBregex\fR(5),
-\fBXPG4\fR(5)
+.BR ed (1),
+.BR egrep (1),
+.BR grep (1),
+.BR lex (1),
+.BR oawk (1),
+.BR sed (1),
+.BR popen (3C),
+.BR printf (3C),
+.BR system (3C),
+.BR XPG4 (7),
+.BR attributes (7),
+.BR environ (7),
+.BR largefile (7),
+.BR regex (7)
.sp
.LP
Aho, A. V., B. W. Kernighan, and P. J. Weinberger, \fIThe AWK Programming
diff --git a/usr/src/man/man1/banner.1 b/usr/src/man/man1/banner.1
index b61ac24088..5c5bd9e5e5 100644
--- a/usr/src/man/man1/banner.1
+++ b/usr/src/man/man1/banner.1
@@ -20,4 +20,5 @@ letters on the standard output.
.SH SEE ALSO
.sp
.LP
-\fBecho\fR(1), \fBattributes\fR(5)
+.BR echo (1),
+.BR attributes (7)
diff --git a/usr/src/man/man1/basename.1 b/usr/src/man/man1/basename.1
index 176274cc91..6080bd0b0a 100644
--- a/usr/src/man/man1/basename.1
+++ b/usr/src/man/man1/basename.1
@@ -121,7 +121,7 @@ example% \fBmv a.out `basename $1 .c`\fR
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBbasename\fR and \fBdirname\fR: \fBLANG\fR,
\fBLC_ALL\fR, \fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.SH EXIT STATUS
@@ -149,5 +149,8 @@ An error occurred.
.SH SEE ALSO
.sp
.LP
-\fBexpr\fR(1), \fBbasename\fR(3C), \fBattributes\fR(5), \fBenviron\fR(5),
-\fBstandards\fR(5)
+.BR expr (1),
+.BR basename (3C),
+.BR attributes (7),
+.BR environ (7),
+.BR standards (7)
diff --git a/usr/src/man/man1/bc.1 b/usr/src/man/man1/bc.1
index bc76faf47e..7e481b9d7f 100644
--- a/usr/src/man/man1/bc.1
+++ b/usr/src/man/man1/bc.1
@@ -431,7 +431,7 @@ or
.sp
.SH ENVIRONMENT VARIABLES
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBbc\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.SH EXIT STATUS
@@ -473,7 +473,7 @@ to define BC_ parameters
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -487,8 +487,11 @@ Interface Stability Standard
.TE
.SH SEE ALSO
-\fBdc\fR(1), \fBawk\fR(1), \fBattributes\fR(5), \fBenviron\fR(5),
-\fBstandards\fR(5)
+.BR awk (1),
+.BR dc (1),
+.BR attributes (7),
+.BR environ (7),
+.BR standards (7)
.SH NOTES
The \fBbc\fR command does not recognize the logical operators \fB&&\fR and
\fB|\||\fR.
diff --git a/usr/src/man/man1/bdiff.1 b/usr/src/man/man1/bdiff.1
index ce4e29c439..76743aa3b9 100644
--- a/usr/src/man/man1/bdiff.1
+++ b/usr/src/man/man1/bdiff.1
@@ -60,7 +60,7 @@ Note: However, this does not suppress possible diagnostic messages from
.SH USAGE
.sp
.LP
-See \fBlargefile\fR(5) for the description of the behavior of \fBbdiff\fR when
+See \fBlargefile\fR(7) for the description of the behavior of \fBbdiff\fR when
encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
.SH FILES
.sp
@@ -69,7 +69,7 @@ encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -85,7 +85,9 @@ CSI enabled
.SH SEE ALSO
.sp
.LP
-\fBdiff\fR(1), \fBattributes\fR(5), \fBlargefile\fR(5)
+.BR diff (1),
+.BR attributes (7),
+.BR largefile (7)
.SH DIAGNOSTICS
.sp
.LP
diff --git a/usr/src/man/man1/break.1 b/usr/src/man/man1/break.1
index ac065495a7..8b16244539 100644
--- a/usr/src/man/man1/break.1
+++ b/usr/src/man/man1/break.1
@@ -176,5 +176,9 @@ splitting and file name generation are not performed.
.SH SEE ALSO
.sp
.LP
-\fBcsh\fR(1), \fBexit\fR(1), \fBksh\fR(1), \fBksh93\fR(1), \fBsh\fR(1),
-\fBattributes\fR(5)
+.BR csh (1),
+.BR exit (1),
+.BR ksh (1),
+.BR ksh93 (1),
+.BR sh (1),
+.BR attributes (7)
diff --git a/usr/src/man/man1/builtin.1 b/usr/src/man/man1/builtin.1
index 1625cf2551..a6ebb87918 100644
--- a/usr/src/man/man1/builtin.1
+++ b/usr/src/man/man1/builtin.1
@@ -147,7 +147,7 @@ David Korn, \fBdgk@research.att.com\fR
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -163,4 +163,6 @@ Interface Stability Uncommitted
.SH SEE ALSO
.sp
.LP
-\fBksh93\fR(1), \fBwhence\fR(1), \fBattributes\fR(5)
+.BR ksh93 (1),
+.BR whence (1),
+.BR attributes (7)
diff --git a/usr/src/man/man1/cal.1 b/usr/src/man/man1/cal.1
index efc987aa35..04dc438a62 100644
--- a/usr/src/man/man1/cal.1
+++ b/usr/src/man/man1/cal.1
@@ -83,7 +83,7 @@ integer from \fB1\fR to \fB9999\fR. The default is the current year.
.SH ENVIRONMENT VARIABLES
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBcal\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_CTYPE\fR, \fBLC_TIME\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.sp
@@ -118,7 +118,7 @@ An error occurred.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -133,7 +133,9 @@ Interface Stability Standard
.SH SEE ALSO
.LP
-\fBattributes\fR(5), \fBenviron\fR(5), \fBstandards\fR(5)
+.BR attributes (7),
+.BR environ (7),
+.BR standards (7)
.SH NOTES
.LP
An unusual calendar is printed for September 1752. That is the month 11 days
diff --git a/usr/src/man/man1/cancel.1 b/usr/src/man/man1/cancel.1
index 7db11ba4ce..08f068dc92 100644
--- a/usr/src/man/man1/cancel.1
+++ b/usr/src/man/man1/cancel.1
@@ -46,8 +46,8 @@ also cancel print requests from the print server.
.sp
.LP
The print client commands locate destination information using the
-\fBprinters\fR database in the name service switch. See \fBnsswitch.conf\fR(4),
-\fBprinters\fR(4), and \fBprinters.conf\fR(4) for details.
+\fBprinters\fR database in the name service switch. See \fBnsswitch.conf\fR(5),
+\fBprinters\fR(5), and \fBprinters.conf\fR(5) for details.
.SH OPTIONS
.LP
The following options are supported:
@@ -72,12 +72,12 @@ The following operands are supported:
.RS 15n
The destination on which the print requests are to be canceled.
\fIdestination\fR is the name of a printer or class of printers (see
-\fBlpadmin\fR(1M)). If \fIdestination\fR is not specified, \fBcancel\fR cancels
+\fBlpadmin\fR(8)). If \fIdestination\fR is not specified, \fBcancel\fR cancels
the requested print request on all destinations. Specify \fIdestination\fR
using atomic, URI-style (\fIscheme\fR\fB://\fR\fIendpoint\fR), or POSIX-style
(\fIserver\fR\fB:\fR\fIdestination\fR), names. See Notes for information
regarding using URI-style or POSIX-style destination names with \fBcancel\fR.
-See \fBprinters.conf\fR(4) for more information.
+See \fBprinters.conf\fR(5) for more information.
.RE
.sp
@@ -159,7 +159,7 @@ LDAP version of \fB/etc/printers.conf\fR
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -174,14 +174,22 @@ Interface Stability Obsolete
.SH SEE ALSO
.LP
-\fBlp\fR(1), \fBlpq\fR(1B), \fBlpr\fR(1B), \fBlprm\fR(1B), \fBlpstat\fR(1),
-\fBlpadmin\fR(1M), \fBnsswitch.conf\fR(4), \fBprinters\fR(4),
-\fBprinters.conf\fR(4), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR lp (1),
+.BR lpstat (1),
+.BR lpq (1B),
+.BR lpr (1B),
+.BR lprm (1B),
+.BR nsswitch.conf (5),
+.BR printers (5),
+.BR printers.conf (5),
+.BR attributes (7),
+.BR standards (7),
+.BR lpadmin (8)
.SH NOTES
.LP
URI-style and POSIX-style destination names (\fIserver\fR:\fIdestination\fR)
are treated as print requests if \fIdestination\fR has the same format as an
-\fBLP-style\fR \fIrequest-ID\fR. See \fBstandards\fR(5).
+\fBLP-style\fR \fIrequest-ID\fR. See \fBstandards\fR(7).
.sp
.LP
Some print servers send cancellation notifications to job owners when their
diff --git a/usr/src/man/man1/cat.1 b/usr/src/man/man1/cat.1
index d32987e417..a055e007b4 100644
--- a/usr/src/man/man1/cat.1
+++ b/usr/src/man/man1/cat.1
@@ -328,7 +328,7 @@ occurrences of \fB\|\(mi\|\fR as \fIfile\fR.
.RE
.SH USAGE
-See \fBlargefile\fR(5) for the description of the behavior of \fBcat\fR when
+See \fBlargefile\fR(7) for the description of the behavior of \fBcat\fR when
encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
.SH EXAMPLES
\fBExample 1 \fRConcatenating a File
@@ -408,7 +408,7 @@ condition would be detected immediately when \fB\|\(mi\|\fR was referenced the
second time.
.SH ENVIRONMENT VARIABLES
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBcat\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.SH EXIT STATUS
@@ -432,7 +432,7 @@ An error occurred.
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.SS "\fB/usr/bin/cat\fR"
.TS
@@ -445,7 +445,7 @@ CSI Enabled
_
Interface Stability Committed
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SS "\fBksh93\fR"
@@ -464,8 +464,11 @@ Interface Stability See below.
The \fBksh93\fR built-in binding to \fB/bin\fR and \fB/usr/bin\fR is Volatile.
The built-in interfaces are Uncommitted.
.SH SEE ALSO
-\fBtouch\fR(1), \fBattributes\fR(5), \fBenviron\fR(5), \fBlargefile\fR(5),
-\fBstandards\fR(5)
+.BR touch (1),
+.BR attributes (7),
+.BR environ (7),
+.BR largefile (7),
+.BR standards (7)
.SH NOTES
Redirecting the output of \fBcat\fR onto one of the files being read causes the
loss of the data originally in the file being read. For example,
diff --git a/usr/src/man/man1/cd.1 b/usr/src/man/man1/cd.1
index be4a3ea80e..396b147f74 100644
--- a/usr/src/man/man1/cd.1
+++ b/usr/src/man/man1/cd.1
@@ -279,7 +279,7 @@ Otherwise, there is no output.
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBcd\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.sp
@@ -352,7 +352,7 @@ An error occurred.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.SS "csh, ksh, sh"
.sp
@@ -365,7 +365,7 @@ ATTRIBUTE TYPE ATTRIBUTE VALUE
_
Interface Stability Committed
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SS "ksh93"
@@ -384,5 +384,12 @@ Interface Stability Uncommitted
.SH SEE ALSO
.sp
.LP
-\fBcsh\fR(1), \fBksh\fR(1), \fBksh93\fR(1), \fBpwd\fR(1), \fBsh\fR(1),
-\fBchdir\fR(2), \fBattributes\fR(5), \fBenviron\fR(5), \fBstandards\fR(5)
+.BR csh (1),
+.BR ksh (1),
+.BR ksh93 (1),
+.BR pwd (1),
+.BR sh (1),
+.BR chdir (2),
+.BR attributes (7),
+.BR environ (7),
+.BR standards (7)
diff --git a/usr/src/man/man1/cdrw.1 b/usr/src/man/man1/cdrw.1
index 74133c4698..9e41533570 100644
--- a/usr/src/man/man1/cdrw.1
+++ b/usr/src/man/man1/cdrw.1
@@ -76,7 +76,7 @@ the \fB-l\fR option provides a list of CD or DVD writers.
.sp
.LP
For instructions on adding a USB-mass-storage-class-compliant CD-RW or DVD-RW
-device to your system, see \fBscsa2usb\fR(7D).
+device to your system, see \fBscsa2usb\fR(4D).
.SS "Creating Data CDs"
.LP
When creating data CDs, \fBcdrw\fR uses the Track-At-Once mode of writing. Use
@@ -591,9 +591,14 @@ example% \fBmkisofs -o /tmp/image2 -r -C 0,173464 -M \e
.SH SEE ALSO
.LP
-\fBaudioconvert\fR(1), \fBpriocntl\fR(1), \fBpolicy.conf\fR(4),
-\fBattributes\fR(5), \fBrbac\fR(5), \fBscsa2usb\fR(7D), \fBsd\fR(7D),
-\fBmkisofs\fR(8)
+.BR audioconvert (1),
+.BR priocntl (1),
+.BR scsa2usb (4D),
+.BR sd (4D),
+.BR policy.conf (5),
+.BR attributes (7),
+.BR rbac (7),
+.BR mkisofs (8)
.sp
.LP
\fISystem Administration Guide: Devices and File Systems\fR
@@ -623,7 +628,7 @@ the \fB-p\fR option. Some commercially available drives handle the drive speed
setting command differently, so use this option judiciously.
.sp
.LP
-The \fBcdrw\fR command uses \fBrbac\fR(5) to control user access to the
+The \fBcdrw\fR command uses \fBrbac\fR(7) to control user access to the
devices. By default, \fBcdrw\fR is accessible to all users but can be
restricted to individual users. Refer to the \fISystem Administration Guide:
Devices and File Systems\fR for more information.
@@ -638,4 +643,4 @@ The user must be logged onto the console. \fB/dev/console\fR is also correct.
Previously, users could log in remotely, for example, by using \fBtelnet\fR or
\fBssh\fR, and be able to burn CDs. This would work unless the administrator
had changed the default configuration to deny \fBsolaris.device.cdrw\fR
-authorization. See \fBpolicy.conf\fR(4).
+authorization. See \fBpolicy.conf\fR(5).
diff --git a/usr/src/man/man1/checknr.1 b/usr/src/man/man1/checknr.1
index 63c192c256..c821579121 100644
--- a/usr/src/man/man1/checknr.1
+++ b/usr/src/man/man1/checknr.1
@@ -40,7 +40,7 @@ Macros that come in open .\|.\|. close forms, for example, the \fB\&.TS\fR and
.RE
.sp
.LP
-\fBchecknr\fR knows about the \fBms\fR(5) and \fBme\fR(5) macro packages.
+\fBchecknr\fR knows about the \fBms\fR(7) and \fBme\fR(7) macro packages.
.sp
.LP
\fBchecknr\fR is intended to be used on documents that are prepared with
@@ -98,8 +98,12 @@ undefined.
.SH SEE ALSO
.sp
.LP
-\fBeqn\fR(1), \fBnroff\fR(1), \fBtroff\fR(1), \fBattributes\fR(5), \fBme\fR(5),
-\fBms\fR(5)
+.BR eqn (1),
+.BR nroff (1),
+.BR troff (1),
+.BR attributes (7),
+.BR me (7),
+.BR ms (7)
.SH BUGS
.sp
.LP
diff --git a/usr/src/man/man1/chgrp.1 b/usr/src/man/man1/chgrp.1
index cab549e34b..70c34013a9 100644
--- a/usr/src/man/man1/chgrp.1
+++ b/usr/src/man/man1/chgrp.1
@@ -132,7 +132,7 @@ set rstchown = 0
.sp
.LP
-\fB_POSIX_CHOWN_RESTRICTED\fR is enabled by default. See \fBsystem\fR(4) and
+\fB_POSIX_CHOWN_RESTRICTED\fR is enabled by default. See \fBsystem\fR(5) and
\fBfpathconf\fR(2).
.SH OPTIONS
.LP
@@ -252,11 +252,11 @@ A path name of a file whose group ID is to be modified.
.SH USAGE
.LP
-See \fBlargefile\fR(5) for the description of the behavior of \fBchgrp\fR when
+See \fBlargefile\fR(7) for the description of the behavior of \fBchgrp\fR when
encountering files greater than or equal to 2 Gbyte (2^31 bytes).
.SH ENVIRONMENT VARIABLES
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBchgrp\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.SH EXIT STATUS
@@ -291,7 +291,7 @@ group file
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.TS
box;
@@ -303,14 +303,23 @@ CSI Enabled. See NOTES.
_
Interface Stability Committed
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.LP
-\fBchmod\fR(1), \fBchown\fR(1), \fBid\fR(1M), \fBchown\fR(2),
-\fBfpathconf\fR(2), \fBgroup\fR(4), \fBpasswd\fR(4), \fBsystem\fR(4),
-\fBattributes\fR(5), \fBenviron\fR(5), \fBlargefile\fR(5), \fBstandards\fR(5)
+.BR chmod (1),
+.BR chown (1),
+.BR chown (2),
+.BR fpathconf (2),
+.BR group (5),
+.BR passwd (5),
+.BR system (5),
+.BR attributes (7),
+.BR environ (7),
+.BR largefile (7),
+.BR standards (7),
+.BR id (8)
.SH NOTES
.LP
\fBchgrp\fR is CSI-enabled except for the \fIgroup\fR name.
diff --git a/usr/src/man/man1/chkey.1 b/usr/src/man/man1/chkey.1
index 2cb89471a5..8f8a5a4440 100644
--- a/usr/src/man/man1/chkey.1
+++ b/usr/src/man/man1/chkey.1
@@ -19,21 +19,21 @@ chkey \- change user's secure RPC key pair
\fBchkey\fR is used to change a user's secure \fBRPC\fR public key and secret
key pair. \fBchkey\fR prompts for the old secure-rpc password and verifies that
it is correct by decrypting the secret key. If the user has not already used
-\fBkeylogin\fR(1) to decrypt and store the secret key with \fBkeyserv\fR(1M),
-\fBchkey\fR registers the secret key with the local \fBkeyserv\fR(1M) daemon.
+\fBkeylogin\fR(1) to decrypt and store the secret key with \fBkeyserv\fR(8),
+\fBchkey\fR registers the secret key with the local \fBkeyserv\fR(8) daemon.
If the secure-rpc password does not match the login password, \fBchkey\fR
prompts for the login password. \fBchkey\fR uses the login password to encrypt
the user's secret Diffie-Hellman (192 bit) cryptographic key.
.sp
.LP
\fBchkey\fR ensures that the login password and the secure-rpc password(s) are
-kept the same, thus enabling password shadowing. See \fBshadow\fR(4).
+kept the same, thus enabling password shadowing. See \fBshadow\fR(5).
.sp
.LP
The key pair can be stored in the \fB/etc/publickey\fR file (see
-\fBpublickey\fR(4)) or the \fBNIS\fR \fBpublickey\fR map.
+\fBpublickey\fR(5)) or the \fBNIS\fR \fBpublickey\fR map.
If a new secret key is generated, it will be
-registered with the local \fBkeyserv\fR(1M) daemon.
+registered with the local \fBkeyserv\fR(8) daemon.
.sp
.LP
Keys for specific mechanisms can be changed or reencrypted using the \fB-m\fR
@@ -43,7 +43,7 @@ options can be used to change one or more keys.
.LP
If the source of the \fBpublickey\fR is not specified with the \fB-s\fR
option, \fBchkey\fR consults the \fBpublickey\fR entry in the name service
-switch configuration file. See \fBnsswitch.conf\fR(4). If the \fBpublickey\fR
+switch configuration file. See \fBnsswitch.conf\fR(5). If the \fBpublickey\fR
entry specifies one and only one source, then \fBchkey\fR will change the key
in the specified name service. However, if multiple name services are listed,
\fBchkey\fR can not decide which source to update and will display an error
@@ -121,6 +121,11 @@ Changes or re-encrypt the secret key for the specified mechanism.
.SH SEE ALSO
.LP
-\fBkeylogin\fR(1), \fBkeylogout\fR(1), \fBkeyserv\fR(1M), \fBnewkey\fR(1M),
-\fBnsswitch.conf\fR(4),
-\fBpublickey\fR(4), \fBshadow\fR(4), \fBattributes\fR(5)
+.BR keylogin (1),
+.BR keylogout (1),
+.BR nsswitch.conf (5),
+.BR publickey (5),
+.BR shadow (5),
+.BR attributes (7),
+.BR keyserv (8),
+.BR newkey (8)
diff --git a/usr/src/man/man1/chmod.1 b/usr/src/man/man1/chmod.1
index 4590328971..112924bd65 100644
--- a/usr/src/man/man1/chmod.1
+++ b/usr/src/man/man1/chmod.1
@@ -1555,7 +1555,7 @@ A path name of a file whose file mode bits are to be modified.
.SH USAGE
.LP
-See \fBlargefile\fR(5) for the description of the behavior of \fBchmod\fR when
+See \fBlargefile\fR(7) for the description of the behavior of \fBchmod\fR when
encountering files greater than or equal to 2 Gbyte (2^31 bytes).
.SH EXAMPLES
.LP
@@ -2625,7 +2625,7 @@ cleared are also cleared on \fBfile2\fR.
.SH ENVIRONMENT VARIABLES
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBchmod\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.SH EXIT STATUS
@@ -2651,7 +2651,7 @@ An error occurred.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -2668,9 +2668,17 @@ Interface Stability Committed
.SH SEE ALSO
.LP
-\fBgetfacl\fR(1), \fBls\fR(1), \fBsetfacl\fR(1), \fBchmod\fR(2),
-\fBfgetattr\fR(3C), \fBacl\fR(5), \fBattributes\fR(5), \fBenviron\fR(5),
-\fBfsattr\fR(5), \fBlargefile\fR(5), \fBstandards\fR(5)
+.BR getfacl (1),
+.BR ls (1),
+.BR setfacl (1),
+.BR chmod (2),
+.BR fgetattr (3C),
+.BR acl (7),
+.BR attributes (7),
+.BR environ (7),
+.BR fsattr (7),
+.BR largefile (7),
+.BR standards (7)
.SH NOTES
.LP
Absolute changes do not work for the set-group-\fBID\fR bit of a directory. You
diff --git a/usr/src/man/man1/chown.1 b/usr/src/man/man1/chown.1
index 6ec6a8247a..8eef3b7470 100644
--- a/usr/src/man/man1/chown.1
+++ b/usr/src/man/man1/chown.1
@@ -110,7 +110,7 @@ To disable this option, include the following line in \fB/etc/system\fR:
.sp
.LP
-\fB{_POSIX_CHOWN_RESTRICTED}\fR is enabled by default. See \fBsystem\fR(4) and
+\fB{_POSIX_CHOWN_RESTRICTED}\fR is enabled by default. See \fBsystem\fR(5) and
\fBfpathconf\fR(2).
.SH OPTIONS
.LP
@@ -236,7 +236,7 @@ A path name of a file whose user \fBID\fR is to be modified.
.SH USAGE
.LP
-See \fBlargefile\fR(5) for the description of the behavior of \fBchown\fR when
+See \fBlargefile\fR(7) for the description of the behavior of \fBchown\fR when
encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
.SH EXAMPLES
.LP
@@ -256,7 +256,7 @@ example% \fBchown \(miR \(mih \fIowner\fR[:group] \fIfile\fR...\fR
.SH ENVIRONMENT VARIABLES
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBchown\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.SH EXIT STATUS
@@ -291,7 +291,7 @@ System password file
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.TS
@@ -304,14 +304,22 @@ CSI Enabled. See \fBNOTES\fR.
_
Interface Stability Committed
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.LP
-\fBchgrp\fR(1), \fBchmod\fR(1), \fBksh93\fR(1), \fBchown\fR(2),
-\fBfpathconf\fR(2), \fBpasswd\fR(4), \fBsystem\fR(4), \fBattributes\fR(5),
-\fBenviron\fR(5), \fBlargefile\fR(5), \fBstandards\fR(5)
+.BR chgrp (1),
+.BR chmod (1),
+.BR ksh93 (1),
+.BR chown (2),
+.BR fpathconf (2),
+.BR passwd (5),
+.BR system (5),
+.BR attributes (7),
+.BR environ (7),
+.BR largefile (7),
+.BR standards (7)
.SH NOTES
.LP
\fBchown\fR is \fBCSI\fR-enabled except for the \fIowner\fR and \fIgroup\fR
diff --git a/usr/src/man/man1/ckdate.1 b/usr/src/man/man1/ckdate.1
index 4425a0b2d8..0318d120d6 100644
--- a/usr/src/man/man1/ckdate.1
+++ b/usr/src/man/man1/ckdate.1
@@ -276,7 +276,7 @@ Garbled format argument.
.SH SEE ALSO
.sp
.LP
-\fBattributes\fR(5)
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man1/ckgid.1 b/usr/src/man/man1/ckgid.1
index 2265acdf21..ba57484218 100644
--- a/usr/src/man/man1/ckgid.1
+++ b/usr/src/man/man1/ckgid.1
@@ -192,7 +192,7 @@ User termination (quit).
.SH SEE ALSO
.sp
.LP
-\fBattributes\fR(5)
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man1/ckint.1 b/usr/src/man/man1/ckint.1
index f7d43e2229..6062647c6b 100644
--- a/usr/src/man/man1/ckint.1
+++ b/usr/src/man/man1/ckint.1
@@ -195,7 +195,7 @@ User termination (quit).
.SH SEE ALSO
.sp
.LP
-\fBattributes\fR(5)
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man1/ckitem.1 b/usr/src/man/man1/ckitem.1
index bd71006491..ffa494dadb 100644
--- a/usr/src/man/man1/ckitem.1
+++ b/usr/src/man/man1/ckitem.1
@@ -266,7 +266,7 @@ No choices from which to choose.
.SH SEE ALSO
.sp
.LP
-\fBattributes\fR(5)
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man1/ckkeywd.1 b/usr/src/man/man1/ckkeywd.1
index 296ce82886..01eac4aed7 100644
--- a/usr/src/man/man1/ckkeywd.1
+++ b/usr/src/man/man1/ckkeywd.1
@@ -163,7 +163,7 @@ User termination (quit).
.SH SEE ALSO
.sp
.LP
-\fBattributes\fR(5)
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man1/ckpath.1 b/usr/src/man/man1/ckpath.1
index b1786bc906..b6f488703f 100644
--- a/usr/src/man/man1/ckpath.1
+++ b/usr/src/man/man1/ckpath.1
@@ -407,4 +407,5 @@ Mutually exclusive options.
.SH SEE ALSO
.sp
.LP
-\fBsignal.h\fR(3HEAD), \fBattributes\fR(5)
+.BR signal.h (3HEAD),
+.BR attributes (7)
diff --git a/usr/src/man/man1/ckrange.1 b/usr/src/man/man1/ckrange.1
index 7ee12795a4..cfa48f22fa 100644
--- a/usr/src/man/man1/ckrange.1
+++ b/usr/src/man/man1/ckrange.1
@@ -322,5 +322,8 @@ User termination (quit).
.SH SEE ALSO
.sp
.LP
-\fBIntro\fR(1), \fBgetopt\fR(1), \fBstrtol\fR(3C), \fBattributes\fR(5),
-\fBsignal.h\fR(3HEAD)
+.BR Intro (1),
+.BR getopt (1),
+.BR strtol (3C),
+.BR signal.h (3HEAD),
+.BR attributes (7)
diff --git a/usr/src/man/man1/ckstr.1 b/usr/src/man/man1/ckstr.1
index c1d53e5c97..4e25cd0bbf 100644
--- a/usr/src/man/man1/ckstr.1
+++ b/usr/src/man/man1/ckstr.1
@@ -299,4 +299,5 @@ User termination (quit).
.SH SEE ALSO
.sp
.LP
-\fBsignal.h\fR(3HEAD), \fBattributes\fR(5)
+.BR signal.h (3HEAD),
+.BR attributes (7)
diff --git a/usr/src/man/man1/cksum.1 b/usr/src/man/man1/cksum.1
index 05d8144496..ed279dd703 100644
--- a/usr/src/man/man1/cksum.1
+++ b/usr/src/man/man1/cksum.1
@@ -154,12 +154,12 @@ Implementations performing such transformations may extend \fBcksum\fR to
handle such situations.
.sp
.LP
-See \fBlargefile\fR(5) for the description of the behavior of \fBcksum\fR when
+See \fBlargefile\fR(7) for the description of the behavior of \fBcksum\fR when
encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBcksum\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.SH EXIT STATUS
@@ -187,7 +187,7 @@ An error occurred.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -203,5 +203,10 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBdigest\fR(1), \fBsum\fR(1), \fBbart\fR(1M), \fBattributes\fR(5),
-\fBenviron\fR(5), \fBlargefile\fR(5), \fBstandards\fR(5)
+.BR digest (1),
+.BR sum (1),
+.BR attributes (7),
+.BR environ (7),
+.BR largefile (7),
+.BR standards (7),
+.BR bart (8)
diff --git a/usr/src/man/man1/cktime.1 b/usr/src/man/man1/cktime.1
index daf4f94235..49d60aeab2 100644
--- a/usr/src/man/man1/cktime.1
+++ b/usr/src/man/man1/cktime.1
@@ -220,7 +220,7 @@ Garbled format argument.
.SH SEE ALSO
.sp
.LP
-\fBattributes\fR(5)
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man1/ckuid.1 b/usr/src/man/man1/ckuid.1
index fc896ae7ab..69649a4f21 100644
--- a/usr/src/man/man1/ckuid.1
+++ b/usr/src/man/man1/ckuid.1
@@ -201,7 +201,7 @@ User termination (quit).
.SH SEE ALSO
.sp
.LP
-\fBattributes\fR(5)
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man1/ckyorn.1 b/usr/src/man/man1/ckyorn.1
index ec471294d7..9fff3c9651 100644
--- a/usr/src/man/man1/ckyorn.1
+++ b/usr/src/man/man1/ckyorn.1
@@ -192,7 +192,7 @@ User termination (quit).
.SH SEE ALSO
.sp
.LP
-\fBattributes\fR(5)
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man1/clear.1 b/usr/src/man/man1/clear.1
index 33f0530bd7..d5662bfa56 100644
--- a/usr/src/man/man1/clear.1
+++ b/usr/src/man/man1/clear.1
@@ -33,4 +33,5 @@ the default is taken from the environment variable \fBTERM\fR.
.SH SEE ALSO
.sp
.LP
-\fBtput\fR(1), \fBattributes\fR(5)
+.BR tput (1),
+.BR attributes (7)
diff --git a/usr/src/man/man1/cmp.1 b/usr/src/man/man1/cmp.1
index 098bcc4e86..fefeea54e3 100644
--- a/usr/src/man/man1/cmp.1
+++ b/usr/src/man/man1/cmp.1
@@ -118,7 +118,7 @@ results.
.SH USAGE
.sp
.LP
-See \fBlargefile\fR(5) for the description of the behavior of \fBcmp\fR when
+See \fBlargefile\fR(7) for the description of the behavior of \fBcmp\fR when
encountering files greater than or equal to 2 Gbyte (2^31 bytes).
.SH EXAMPLES
.LP
@@ -143,7 +143,7 @@ It skips the first 1024 bytes in \fIfile2\fR before starting the comparison.
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBcmp\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.SH EXIT STATUS
@@ -181,7 +181,7 @@ An error occurred.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -199,5 +199,9 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBcomm\fR(1), \fBdiff\fR(1), \fBattributes\fR(5), \fBenviron\fR(5),
-\fBlargefile\fR(5), \fBstandards\fR(5)
+.BR comm (1),
+.BR diff (1),
+.BR attributes (7),
+.BR environ (7),
+.BR largefile (7),
+.BR standards (7)
diff --git a/usr/src/man/man1/col.1 b/usr/src/man/man1/col.1
index 5e7da1a4d2..236a112274 100644
--- a/usr/src/man/man1/col.1
+++ b/usr/src/man/man1/col.1
@@ -152,7 +152,7 @@ wherever possible. Tab stops are considered to be at each column position
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBcol\fR: \fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and
\fBNLSPATH\fR.
.SH EXIT STATUS
@@ -180,7 +180,7 @@ An error occurred.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -195,8 +195,11 @@ CSI enabled
.SH SEE ALSO
.sp
.LP
-\fBnroff\fR(1), \fBtbl\fR(1), \fBascii\fR(5), \fBattributes\fR(5),
-\fBenviron\fR(5)
+.BR nroff (1),
+.BR tbl (1),
+.BR ascii (7),
+.BR attributes (7),
+.BR environ (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man1/comm.1 b/usr/src/man/man1/comm.1
index 9ef4e48aca..dae5a66608 100644
--- a/usr/src/man/man1/comm.1
+++ b/usr/src/man/man1/comm.1
@@ -123,7 +123,7 @@ the standard input is used.
.SH USAGE
.sp
.LP
-See \fBlargefile\fR(5) for the description of the behavior of \fBcomm\fR when
+See \fBlargefile\fR(7) for the description of the behavior of \fBcomm\fR when
encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
.SH EXAMPLES
.LP
@@ -174,7 +174,7 @@ not specified in \fIfile1\fR.
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBcomm\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_COLLATE\fR, \fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.SH EXIT STATUS
@@ -202,7 +202,7 @@ An error occurred.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -220,5 +220,11 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBcmp\fR(1), \fBdiff\fR(1), \fBsort\fR(1), \fBuniq\fR(1), \fBattributes\fR(5),
-\fBenviron\fR(5), \fBlargefile\fR(5), \fBstandards\fR(5)
+.BR cmp (1),
+.BR diff (1),
+.BR sort (1),
+.BR uniq (1),
+.BR attributes (7),
+.BR environ (7),
+.BR largefile (7),
+.BR standards (7)
diff --git a/usr/src/man/man1/command.1 b/usr/src/man/man1/command.1
index d14d96acfb..f67c7a29b7 100644
--- a/usr/src/man/man1/command.1
+++ b/usr/src/man/man1/command.1
@@ -344,7 +344,7 @@ could define functions to spoof the application.
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBcommand\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.sp
@@ -451,7 +451,7 @@ If \fIcommand\fR is invoked, the exit status of \fBcommand\fR is that of
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.SS "/usr/bin/command"
.sp
@@ -464,7 +464,7 @@ ATTRIBUTE TYPE ATTRIBUTE VALUE
_
Interface Stability Committed
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SS "ksh93"
@@ -483,5 +483,10 @@ Interface Stability Uncommitted
.SH SEE ALSO
.sp
.LP
-\fBksh93\fR(1), \fBsh\fR(1), \fBtype\fR(1), \fBwhence\fR(1),
-\fBattributes\fR(5), \fBenviron\fR(5), \fBstandards\fR(5)
+.BR ksh93 (1),
+.BR sh (1),
+.BR type (1),
+.BR whence (1),
+.BR attributes (7),
+.BR environ (7),
+.BR standards (7)
diff --git a/usr/src/man/man1/compress.1 b/usr/src/man/man1/compress.1
index e7a9f63519..576298588e 100644
--- a/usr/src/man/man1/compress.1
+++ b/usr/src/man/man1/compress.1
@@ -186,11 +186,11 @@ standard input is used.
.RE
.SH USAGE
-See \fBlargefile\fR(5) for the description of the behavior of \fBcompress\fR,
+See \fBlargefile\fR(7) for the description of the behavior of \fBcompress\fR,
\fBuncompress\fR, and \fBzcat\fR when encountering files greater than or equal
to 2 Gbyte (2^31 bytes).
.SH ENVIRONMENT VARIABLES
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBcompress\fR, \fBuncompress\fR, and \fBzcat\fR:
\fBLANG\fR, \fBLC_ALL\fR, \fBLC_COLLATE\fR, \fBLC_CTYPE\fR, \fBLC_MESSAGES\fR,
and \fBNLSPATH\fR.
@@ -203,7 +203,7 @@ the behavior of ranges, equivalence classes, and multi-character collating
elements used in the expression defined for \fByesexpr\fR. The locale specified
in \fBLC_CTYPE\fR determines the locale for interpretation of sequences of
bytes of text data a characters, the behavior of character classes used in the
-expression defined for the \fByesexpr\fR. See \fBlocale\fR(5).
+expression defined for the \fByesexpr\fR. See \fBlocale\fR(7).
.SH EXIT STATUS
The following error values are returned:
.sp
@@ -244,7 +244,7 @@ An error occurred.
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -258,13 +258,19 @@ CSI Enabled
_
Interface Stability Committed
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
-\fBln\fR(1), \fBpack\fR(1), \fBfgetattr\fR(3C), \fBfsetattr\fR(3C),
-\fBattributes\fR(5), \fBenviron\fR(5), \fBlargefile\fR(5), \fBlocale\fR(5),
-\fBstandards\fR(5)
+.BR ln (1),
+.BR pack (1),
+.BR fgetattr (3C),
+.BR fsetattr (3C),
+.BR attributes (7),
+.BR environ (7),
+.BR largefile (7),
+.BR locale (7),
+.BR standards (7)
.SH DIAGNOSTICS
.ne 2
.na
diff --git a/usr/src/man/man1/cp.1 b/usr/src/man/man1/cp.1
index 97b64289ad..d204d2d6c2 100644
--- a/usr/src/man/man1/cp.1
+++ b/usr/src/man/man1/cp.1
@@ -341,7 +341,7 @@ A pathname of a directory to contain the copied files.
.RE
.SH USAGE
-See \fBlargefile\fR(5) for the description of the behavior of \fBcp\fR when
+See \fBlargefile\fR(7) for the description of the behavior of \fBcp\fR when
encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
.SH EXAMPLES
\fBExample 1 \fRCopying a File
@@ -448,7 +448,7 @@ $ ls -/c /tmp/file1
.sp
.SH ENVIRONMENT VARIABLES
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBcp\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_COLLATE\fR, \fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.sp
@@ -460,7 +460,7 @@ the behavior of ranges, equivalence classes, and multi-character collating
elements used in the expression defined for \fByesexpr\fR. The locale specified
in \fBLC_CTYPE\fR determines the locale for interpretation of sequences of
bytes of text data a characters, the behavior of character classes used in the
-expression defined for the \fByesexpr\fR. See \fBlocale\fR(5).
+expression defined for the \fByesexpr\fR. See \fBlocale\fR(7).
.SH EXIT STATUS
The following exit values are returned:
.sp
@@ -482,7 +482,7 @@ An error occurred.
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.SS "/usr/bin/cp"
.TS
box;
@@ -508,9 +508,17 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBchmod\fR(1), \fBchown\fR(1), \fBsetfacl\fR(1), \fButime\fR(2),
-\fBfgetattr\fR(3C), \fBattributes\fR(5), \fBenviron\fR(5), \fBfsattr\fR(5),
-\fBlargefile\fR(5), \fBlocale\fR(5), \fBstandards\fR(5)
+.BR chmod (1),
+.BR chown (1),
+.BR setfacl (1),
+.BR utime (2),
+.BR fgetattr (3C),
+.BR attributes (7),
+.BR environ (7),
+.BR fsattr (7),
+.BR largefile (7),
+.BR locale (7),
+.BR standards (7)
.SH NOTES
The permission modes of the source file are preserved in the copy.
.sp
diff --git a/usr/src/man/man1/cpio.1 b/usr/src/man/man1/cpio.1
index d8e03602ad..83873143f5 100644
--- a/usr/src/man/man1/cpio.1
+++ b/usr/src/man/man1/cpio.1
@@ -316,7 +316,7 @@ header format.
\fBASCII\fR header with small device numbers. This is the IEEE/P1003 Data
Interchange Standard cpio header and format. It has the widest range of
portability of any of the header formats. It is the official format for
-transferring files between POSIX-conforming systems (see \fBstandards\fR(5)).
+transferring files between POSIX-conforming systems (see \fBstandards\fR(7)).
Use this format to communicate with SunOS 4 and Interactive UNIX. This header
format allows \fBUID\fRs and \fBGID\fRs up to 262143 to be stored in the
header.
@@ -669,7 +669,7 @@ in the current directory might be used.
.SH USAGE
.sp
.LP
-See \fBlargefile\fR(5) for the description of the behavior of \fBcpio\fR when
+See \fBlargefile\fR(7) for the description of the behavior of \fBcpio\fR when
encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
.SH EXAMPLES
.sp
@@ -749,7 +749,7 @@ same as the first reel). To stop, type a RETURN and \fBcpio\fR ends.
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBcpio\fR: \fBLC_COLLATE\fR, \fBLC_CTYPE\fR,
\fBLC_MESSAGES\fR, \fBLC_TIME\fR, \fBTZ\fR, and \fBNLSPATH\fR.
.sp
@@ -787,7 +787,7 @@ An error occurred.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -805,10 +805,22 @@ Interface Stability Committed
.SH SEE ALSO
.sp
.LP
-\fBar\fR(1), \fBcat\fR(1), \fBecho\fR(1), \fBfind\fR(1), \fBls\fR(1),
-\fBpax\fR(1), \fBsetfacl\fR(1), \fBsh\fR(1), \fBtar\fR(1), \fBchown\fR(2),
-\fBarchives.h\fR(3HEAD), \fBattributes\fR(5), \fBenviron\fR(5),
-\fBfsattr\fR(5), \fBlargefile\fR(5), \fBstandards\fR(5)
+.BR ar (1),
+.BR cat (1),
+.BR echo (1),
+.BR find (1),
+.BR ls (1),
+.BR pax (1),
+.BR setfacl (1),
+.BR sh (1),
+.BR tar (1),
+.BR chown (2),
+.BR archives.h (3HEAD),
+.BR attributes (7),
+.BR environ (7),
+.BR fsattr (7),
+.BR largefile (7),
+.BR standards (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man1/cputrack.1 b/usr/src/man/man1/cputrack.1
index 2ed9e5ce42..efaa7db87c 100644
--- a/usr/src/man/man1/cputrack.1
+++ b/usr/src/man/man1/cputrack.1
@@ -210,7 +210,7 @@ timebase as \fBgethrtime\fR(3C).
The \fBcputrack\fR utility attaches performance counter context to each process
that it examines. The presence of this context allows the performance counters
to be multiplexed between different processes on the system, but it cannot be
-used at the same time as the \fBcpustat\fR(1M) utility.
+used at the same time as the \fBcpustat\fR(8) utility.
.sp
.LP
Once an instance of the \fBcpustat\fR utility is running, further attempts to
@@ -244,7 +244,7 @@ performance counter values for each LWP, some of the events that can be counted
will inevitably be impacted by other activities occurring on the system,
particularly for limited resources that are shared between processes (for
example, cache miss rates). For such events, it may also be interesting to
-observe overall system behavior with \fBcpustat\fR(1M).
+observe overall system behavior with \fBcpustat\fR(8).
.sp
.LP
For the \fB-T\fR \fIinterval\fR option, if \fIinterval\fR is specified as zero,
@@ -364,7 +364,7 @@ example% \fBcputrack -c ITLB_reference,emask=1 date\fR
.SH WARNINGS
.LP
-By running any instance of the \fBcpustat\fR(1M) utility, all existing
+By running any instance of the \fBcpustat\fR(8) utility, all existing
performance counter context is forcibly invalidated across the machine. This
may in turn cause all invocations of the \fBcputrack\fR command to exit
prematurely with unspecified errors.
@@ -391,7 +391,7 @@ If a short interval is requested, \fBcputrack\fR may not be able to keep up
with the desired sample rate. In this case, some samples may be dropped.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -405,9 +405,24 @@ Interface Stability Evolving
.SH SEE ALSO
.LP
-\fBnawk\fR(1), \fBperl\fR(1), \fBproc\fR(1), \fBtruss\fR(1), \fBprstat\fR(1M),
-\fBcpustat\fR(1M), \fBexec\fR(2), \fBexit\fR(2), \fBfork\fR(2),
-\fBsetuid\fR(2), \fBvfork\fR(2), \fBgethrtime\fR(3C), \fBstrtoll\fR(3C),
-\fBcpc\fR(3CPC), \fBcpc_bind_pctx\fR(3CPC), \fBcpc_enable\fR(3CPC),
-\fBcpc_open\fR(3CPC), \fBlibcpc\fR(3LIB), \fBlibpctx\fR(3LIB), \fBproc\fR(4),
-\fBattributes\fR(5)
+.BR nawk (1),
+.BR perl (1),
+.BR proc (1),
+.BR truss (1),
+.BR exec (2),
+.BR exit (2),
+.BR fork (2),
+.BR setuid (2),
+.BR vfork (2),
+.BR gethrtime (3C),
+.BR strtoll (3C),
+.BR cpc (3CPC),
+.BR cpc_bind_pctx (3CPC),
+.BR cpc_enable (3CPC),
+.BR cpc_open (3CPC),
+.BR libcpc (3LIB),
+.BR libpctx (3LIB),
+.BR proc (5),
+.BR attributes (7),
+.BR cpustat (8),
+.BR prstat (8)
diff --git a/usr/src/man/man1/crle.1 b/usr/src/man/man1/crle.1
index c6dabcf56f..8544d9341b 100644
--- a/usr/src/man/man1/crle.1
+++ b/usr/src/man/man1/crle.1
@@ -962,7 +962,7 @@ Disable alternative object processing from a configuration file.
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes.
+See \fBattributes\fR(7) for descriptions of the following attributes.
.sp
.sp
@@ -976,8 +976,12 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBfile\fR(1), \fBld\fR(1), \fBld.so.1\fR(1), \fBdldump\fR(3C),
-\fBtempnam\fR(3C), \fBattributes\fR(5)
+.BR file (1),
+.BR ld (1),
+.BR ld.so.1 (1),
+.BR dldump (3C),
+.BR tempnam (3C),
+.BR attributes (7)
.sp
.LP
\fILinker and Libraries Guide\fR
diff --git a/usr/src/man/man1/crontab.1 b/usr/src/man/man1/crontab.1
index 334e012dc6..4a5d196e7c 100644
--- a/usr/src/man/man1/crontab.1
+++ b/usr/src/man/man1/crontab.1
@@ -99,7 +99,7 @@ crontab \- user crontab file
.SH DESCRIPTION
The \fBcrontab\fR utility manages a user's access with \fBcron\fR (see
-\fBcron\fR(1M)) by copying, creating, listing, and removing \fBcrontab\fR
+\fBcron\fR(8)) by copying, creating, listing, and removing \fBcrontab\fR
files. If invoked without options, \fBcrontab\fR copies the specified file, or
the standard input if no file is specified, into a directory that holds all
users' crontabs.
@@ -263,7 +263,7 @@ executed must explicitly do so in the \fBcrontab\fR file. \fBcron\fR supplies
a default environment for every shell, defining HOME, LOGNAME, SHELL, TZ, and
PATH. The default PATH for user \fBcron\fR jobs is \fB/usr/bin\fR; while root
\fBcron\fR jobs default to \fB/usr/sbin:/usr/bin\fR. The default PATH can be
-set in \fB/etc/default/cron\fR (see \fBcron\fR(1M)). The TZ, HOME, and SHELL
+set in \fB/etc/default/cron\fR (see \fBcron\fR(8)). The TZ, HOME, and SHELL
environment variables are set to match those that are in effect in the
\fBcrontab\fR file at the time.
.sp
@@ -571,7 +571,7 @@ Korn shell. The file concludes with \fBTZ\fR, \fBHOME\fR, and \fBSHELL\fR
entries that return those variable to their default values.
.SH ENVIRONMENT VARIABLES
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBcrontab\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.SS "\fB/usr/bin/crontab\fR"
@@ -710,7 +710,7 @@ spool area for \fBcrontab\fR
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.SS "\fB/usr/bin/crontab\fR"
.TS
@@ -745,9 +745,18 @@ Interface Stability Standard
.TE
.SH SEE ALSO
-\fBatq\fR(1), \fBatrm\fR(1), \fBauths\fR(1), \fBed\fR(1), \fBsh\fR(1),
-\fBvi\fR(1), \fBcron\fR(1M), \fBsu\fR(1M), \fBauth_attr\fR(4),
-\fBattributes\fR(5), \fBenviron\fR(5), \fBstandards\fR(5)
+.BR atq (1),
+.BR atrm (1),
+.BR auths (1),
+.BR ed (1),
+.BR sh (1),
+.BR vi (1),
+.BR auth_attr (5),
+.BR attributes (7),
+.BR environ (7),
+.BR standards (7),
+.BR cron (8),
+.BR su (8)
.SH NOTES
If you inadvertently enter the \fBcrontab\fR command with no arguments, do not
attempt to get out with Control-d. This removes all entries in your
@@ -769,7 +778,7 @@ seconds after the current date and time.
.LP
If an authorized user other than root modifies another user's \fBcrontab\fR
file, the resulting behavior can be unpredictable. Instead, the authorized user
-should first use \fBsu\fR(1M) to become superuser to the other user's login
+should first use \fBsu\fR(8) to become superuser to the other user's login
before making any changes to the \fBcrontab\fR file.
.sp
.LP
diff --git a/usr/src/man/man1/crypt.1 b/usr/src/man/man1/crypt.1
index 7621f1f099..c3fa63e93f 100644
--- a/usr/src/man/man1/crypt.1
+++ b/usr/src/man/man1/crypt.1
@@ -75,5 +75,9 @@ for typed key
.SH SEE ALSO
.sp
.LP
-\fBdes\fR(1), \fBed\fR(1), \fBex\fR(1), \fBps\fR(1), \fBvi\fR(1),
-\fBattributes\fR(5)
+.BR des (1),
+.BR ed (1),
+.BR ex (1),
+.BR ps (1),
+.BR vi (1),
+.BR attributes (7)
diff --git a/usr/src/man/man1/csh.1 b/usr/src/man/man1/csh.1
index 0ac366ac46..78560945bc 100644
--- a/usr/src/man/man1/csh.1
+++ b/usr/src/man/man1/csh.1
@@ -949,7 +949,7 @@ Match any single character.
Match any single character in the enclosed list(s) or range(s). A list is a
string of characters. A range is two characters separated by a dash
(\fB\(mi\fR), and includes all the characters in between in the \fBASCII\fR
-collating sequence (see \fBascii\fR(5)).
+collating sequence (see \fBascii\fR(7)).
.RE
.sp
@@ -1262,7 +1262,7 @@ When a pathname is found that has proper execute permissions, the shell forks a
new process and passes it, along with its arguments, to the kernel using the
\fBexecve\fR(\|) system call (see \fBexec\fR(2)). The kernel then attempts to
overlay the new process with the desired program. If the file is an executable
-binary (in \fBa.out\fR(4) format) the kernel succeeds and begins executing the
+binary (in \fBa.out\fR(5) format) the kernel succeeds and begins executing the
new process. If the file is a text file and the first line begins with
\fB#!\fR, the next word is taken to be the pathname of a shell (or command) to
interpret that script. Subsequent words on the first line are taken as options
@@ -1761,7 +1761,7 @@ Limit the consumption by the current process or any process it spawns, each not
to exceed \fImax-use\fR on the specified \fIresource\fR. The string
\fBunlimited\fR requests that the current limit, if any, be removed. If
\fImax-use\fR is omitted, print the current limit. If \fIresource\fR is
-omitted, display all limits. Run the \fBsysdef\fR(1M) command to display
+omitted, display all limits. Run the \fBsysdef\fR(8) command to display
maximum limits for certain resources in your system (although it does not
report stack size). The values reported are in hexadecimal, but can be
translated into decimal numbers using the \fBbc\fR(1) command.
@@ -1793,7 +1793,7 @@ Maximum \fBCPU\fR seconds per process.
.ad
.RS 23n
Largest single file allowed. Limited to the size of the filesystem. (See
-\fBdf\fR(1M)).
+\fBdf\fR(8)).
.RE
.sp
@@ -1803,7 +1803,7 @@ Largest single file allowed. Limited to the size of the filesystem. (See
.ad
.RS 23n
Maximum data size (including stack) for the process. This is the size of your
-virtual memory See \fBswap\fR(1M).
+virtual memory See \fBswap\fR(8).
.RE
.sp
@@ -2136,7 +2136,7 @@ when changed within the C shell.
.sp
If any of the \fBLC_*\fR variables (\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR,
\fBLC_TIME\fR, \fBLC_COLLATE\fR, \fBLC_NUMERIC\fR, and \fBLC_MONETARY\fR) (see
-\fBenviron\fR(5)) are not set in the environment, the operational behavior of
+\fBenviron\fR(7)) are not set in the environment, the operational behavior of
\fBcsh\fR for each corresponding locale category is determined by the value of
the \fBLANG\fR environment variable. If \fBLC_ALL\fR is set, its contents are
used to override both the \fBLANG\fR and the other \fBLC_*\fR variables. If
@@ -2911,7 +2911,7 @@ Display each command after history substitution takes place.
.SS "Large File Behavior"
.LP
-See \fBlargefile\fR(5) for the description of the behavior of \fBcsh\fR when
+See \fBlargefile\fR(7) for the description of the behavior of \fBcsh\fR when
encountering files greater than or equal to 2 Gbyte (2^31 bytes).
.SH FILES
.ne 2
@@ -2978,7 +2978,7 @@ Source of home directories for `~\fIname\fR'.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -2993,12 +2993,32 @@ CSI Enabled
.SH SEE ALSO
.LP
-\fBbc\fR(1), \fBecho\fR(1), \fBlimit\fR(1), \fBlogin\fR(1), \fBls\fR(1),
-\fBmore\fR(1), \fBpfcsh\fR(1), \fBpfexec\fR(1), \fBps\fR(1), \fBsh\fR(1),
-\fBshell_builtins\fR(1), \fBtset\fR(1B), \fBwhich\fR(1), \fBdf\fR(1M),
-\fBswap\fR(1M), \fBsysdef\fR(1M), \fBaccess\fR(2), \fBexec\fR(2),
-\fBfork\fR(2), \fBpipe\fR(2), \fBa.out\fR(4), \fBascii\fR(5),
-\fBattributes\fR(5), \fBenviron\fR(5), \fBlargefile\fR(5), \fBtermio\fR(7I)
+.BR bc (1),
+.BR echo (1),
+.BR limit (1),
+.BR login (1),
+.BR ls (1),
+.BR more (1),
+.BR pfcsh (1),
+.BR pfexec (1),
+.BR ps (1),
+.BR sh (1),
+.BR shell_builtins (1),
+.BR which (1),
+.BR tset (1B),
+.BR access (2),
+.BR exec (2),
+.BR fork (2),
+.BR pipe (2),
+.BR termio (4I),
+.BR a.out (5),
+.BR ascii (7),
+.BR attributes (7),
+.BR environ (7),
+.BR largefile (7),
+.BR df (8),
+.BR swap (8),
+.BR sysdef (8)
.SH DIAGNOSTICS
.ne 2
.na
diff --git a/usr/src/man/man1/csplit.1 b/usr/src/man/man1/csplit.1
index 944858b6b8..b33f7e571c 100644
--- a/usr/src/man/man1/csplit.1
+++ b/usr/src/man/man1/csplit.1
@@ -184,7 +184,7 @@ current position and the end of the file.
.SH USAGE
.sp
.LP
-See \fBlargefile\fR(5) for the description of the behavior of \fBcsplit\fR when
+See \fBlargefile\fR(7) for the description of the behavior of \fBcsplit\fR when
encountering files greater than or equal to 2 Gbyte (2^31 bytes).
.SH EXAMPLES
.LP
@@ -253,7 +253,7 @@ example% \fBcsplit -k prog.c '%main(%' '/^}/+1' {20}\fR
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBcsplit\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_COLLATE\fR, \fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.SH EXIT STATUS
@@ -281,7 +281,7 @@ An error occurred.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -299,8 +299,12 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBsed\fR(1), \fBsplit\fR(1), \fBattributes\fR(5), \fBenviron\fR(5),
-\fBlargefile\fR(5), \fBstandards\fR(5)
+.BR sed (1),
+.BR split (1),
+.BR attributes (7),
+.BR environ (7),
+.BR largefile (7),
+.BR standards (7)
.SH DIAGNOSTICS
.sp
.LP
diff --git a/usr/src/man/man1/ctfdiff.1 b/usr/src/man/man1/ctfdiff.1
index 145d8ff194..459f7d35b9 100644
--- a/usr/src/man/man1/ctfdiff.1
+++ b/usr/src/man/man1/ctfdiff.1
@@ -76,7 +76,7 @@ all the same.
For more information on the specifics for what we look at
for each kind of type, and the kinds themselves, see the information we
use to encode them in
-.Xr ctf 4 .
+.Xr ctf 5 .
If the option
.Fl I
is specified, then the names of basic integer types are ignored.
@@ -90,7 +90,7 @@ container found inside of either
or
.Em file2
has been uniquified (see
-.Xr ctf 4
+.Xr ctf 5
for more on uniquification), then the parent
.Sy CTF
container is also required for the diff to complete.
@@ -169,7 +169,7 @@ This option is required if
.Em file1
has been uniquified.
For more information on uniquification, see
-.Xr ctf 4 .
+.Xr ctf 5 .
.Ed
.It Fl P Ar parent2
.Bd -filled -compact
@@ -182,7 +182,7 @@ This option is required if
.Em file1
has been uniquified.
For more information on uniquification, see
-.Xr ctf 4 .
+.Xr ctf 5 .
.Ed
.It Fl q
.Bd -filled -compact
@@ -345,4 +345,4 @@ The output format is
.Sh SEE ALSO
.Xr ctfdump 1 ,
.Xr diff 1 ,
-.Xr ctf 4
+.Xr ctf 5
diff --git a/usr/src/man/man1/ctfdump.1 b/usr/src/man/man1/ctfdump.1
index 106eb47a7e..4a11726e3b 100644
--- a/usr/src/man/man1/ctfdump.1
+++ b/usr/src/man/man1/ctfdump.1
@@ -173,7 +173,7 @@ Each line in the section describes the value of one of the
members of the header.
For more information on the meaning and interpretation of these members,
see
-.Xr ctf 4 .
+.Xr ctf 5 .
.Ss Label Table
This section describes information about the labels present in the
.Sy CTF
@@ -201,7 +201,7 @@ For more information on how labels are used with
information, see the section
.Em The Label Section
in
-.Xr ctf 4 .
+.Xr ctf 5 .
.Ss Data Objects
This section describes the type information relating to data objects
from the symbol table.
@@ -270,7 +270,7 @@ If the type identifier is enclosed in angle brackets, then that
represents that it is a root type or top-level type.
If it is square brackets, then it is not.
For more information on root types, see
-.Xr ctf 4 .
+.Xr ctf 5 .
.Pp
Next, the type will have its name and kind.
If it is an array, it will be followed with a subscript that describes
@@ -443,4 +443,4 @@ The output format is
.Xr dump 1 ,
.Xr elfdump 1 ,
.Xr mdb 1 ,
-.Xr ctf 4
+.Xr ctf 5
diff --git a/usr/src/man/man1/ctrun.1 b/usr/src/man/man1/ctrun.1
index e6840ec89f..6d07ceea10 100644
--- a/usr/src/man/man1/ctrun.1
+++ b/usr/src/man/man1/ctrun.1
@@ -20,8 +20,8 @@ The \fBctrun\fR utility starts a command in a newly created process contract.
events that occur within the contract.
.sp
.LP
-For additional information about process contracts, see \fBcontract\fR(4) and
-\fBprocess\fR(4).
+For additional information about process contracts, see \fBcontract\fR(5) and
+\fBprocess\fR(5).
.SH OPTIONS
.sp
.LP
@@ -375,7 +375,7 @@ Invalid arguments were provided to \fBctrun\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -394,5 +394,9 @@ Human Readable Output is Uncommitted. Invocation is Committed.
.SH SEE ALSO
.sp
.LP
-\fBctstat\fR(1), \fBctwatch\fR(1), \fBexec\fR(2), \fBcontract\fR(4),
-\fBprocess\fR(4), \fBattributes\fR(5)
+.BR ctstat (1),
+.BR ctwatch (1),
+.BR exec (2),
+.BR contract (5),
+.BR process (5),
+.BR attributes (7)
diff --git a/usr/src/man/man1/ctstat.1 b/usr/src/man/man1/ctstat.1
index eac5c7d6df..de667ae425 100644
--- a/usr/src/man/man1/ctstat.1
+++ b/usr/src/man/man1/ctstat.1
@@ -358,7 +358,7 @@ Invalid arguments.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -377,5 +377,8 @@ The human readable output is Uncommitted. The invocation is Committed.
.SH SEE ALSO
.sp
.LP
-\fBctrun\fR(1), \fBctwatch\fR(1), \fBcontract\fR(4), \fBprocess\fR(4),
-\fBattributes\fR(5)
+.BR ctrun (1),
+.BR ctwatch (1),
+.BR contract (5),
+.BR process (5),
+.BR attributes (7)
diff --git a/usr/src/man/man1/ctwatch.1 b/usr/src/man/man1/ctwatch.1
index 77ad32ebc1..e950b300df 100644
--- a/usr/src/man/man1/ctwatch.1
+++ b/usr/src/man/man1/ctwatch.1
@@ -203,7 +203,7 @@ Invalid arguments.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -222,8 +222,12 @@ Human Readable Output is Unstable. Invocation is Evolving.
.SH SEE ALSO
.sp
.LP
-\fBctrun\fR(1), \fBctstat\fR(1), \fBcontract\fR(4), \fBprocess\fR(4),
-\fBattributes\fR(5), \fBprivileges\fR(5)
+.BR ctrun (1),
+.BR ctstat (1),
+.BR contract (5),
+.BR process (5),
+.BR attributes (7),
+.BR privileges (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man1/cut.1 b/usr/src/man/man1/cut.1
index f2e92abb9e..a50c0e8e8a 100644
--- a/usr/src/man/man1/cut.1
+++ b/usr/src/man/man1/cut.1
@@ -179,7 +179,7 @@ A path name of an input file. If no \fIfile\fR operands are specified, or if a
.SH USAGE
.sp
.LP
-See \fBlargefile\fR(5) for the description of the behavior of \fBcut\fR when
+See \fBlargefile\fR(7) for the description of the behavior of \fBcut\fR when
encountering files greater than or equal to 2 Gbyte (2^31 bytes).
.SH EXAMPLES
.LP
@@ -213,7 +213,7 @@ example$ \fBname=\(gawho am i | cut -f1 -d' '\(ga\fR
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBcut\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.SH EXIT STATUS
@@ -241,7 +241,7 @@ An error occurred.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -259,8 +259,12 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBgrep\fR(1), \fBpaste\fR(1), \fBattributes\fR(5), \fBenviron\fR(5),
-\fBlargefile\fR(5), \fBstandards\fR(5)
+.BR grep (1),
+.BR paste (1),
+.BR attributes (7),
+.BR environ (7),
+.BR largefile (7),
+.BR standards (7)
.SH DIAGNOSTICS
.sp
.ne 2
diff --git a/usr/src/man/man1/date.1 b/usr/src/man/man1/date.1
index 8e2d25a5ba..23eaafa8b8 100644
--- a/usr/src/man/man1/date.1
+++ b/usr/src/man/man1/date.1
@@ -91,7 +91,7 @@ written.
Specifications of native language translations of month and weekday names are
supported. The month and weekday names used for a language are based on the
locale specified by the environment variable \fBLC_TIME\fR. See
-\fBenviron\fR(5).
+\fBenviron\fR(7).
.sp
.LP
The following is the default form for the "C" locale:
@@ -307,7 +307,7 @@ conversion to and from local standard and daylight time. Only the super-user
may change the date. After successfully setting the date and time, \fBdate\fR
displays the new date according to the default format. The \fBdate\fR command
uses \fBTZ\fR to determine the correct time zone information; see
-\fBenviron\fR(5).
+\fBenviron\fR(7).
.SH EXAMPLES
.LP
\fBExample 1 \fRGenerating Output
@@ -379,7 +379,7 @@ Thu Jan 01 00:30:00 GMT 2000
.SH ENVIRONMENT VARIABLES
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBdate\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_CTYPE\fR, \fBLC_TIME\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.sp
@@ -416,7 +416,7 @@ An error occurred.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.SS "/usr/bin/date"
.TS
@@ -443,7 +443,10 @@ Interface Stability Standard
.SH SEE ALSO
.LP
-\fBstrftime\fR(3C), \fBattributes\fR(5), \fBenviron\fR(5), \fBstandards\fR(5)
+.BR strftime (3C),
+.BR attributes (7),
+.BR environ (7),
+.BR standards (7)
.SH DIAGNOSTICS
.ne 2
.na
diff --git a/usr/src/man/man1/dc.1 b/usr/src/man/man1/dc.1
index f395d7e8a0..a0b8c8ff35 100644
--- a/usr/src/man/man1/dc.1
+++ b/usr/src/man/man1/dc.1
@@ -356,7 +356,8 @@ lyx
.SH SEE ALSO
.sp
.LP
-\fBbc\fR(1), \fBattributes\fR(5)
+.BR bc (1),
+.BR attributes (7)
.SH DIAGNOSTICS
.sp
.ne 2
diff --git a/usr/src/man/man1/deallocate.1 b/usr/src/man/man1/deallocate.1
index be14c951c0..cb3f056859 100644
--- a/usr/src/man/man1/deallocate.1
+++ b/usr/src/man/man1/deallocate.1
@@ -23,7 +23,7 @@ deallocate \- device deallocation
The \fBdeallocate\fR command frees an allocated device. It resets the ownership
and permissions on all device special files associated with the device,
disabling access to that device. \fBdeallocate\fR runs the device cleaning
-program for that device as specified in \fBdevice_allocate\fR(4).
+program for that device as specified in \fBdevice_allocate\fR(5).
.sp
.LP
The default \fBdeallocate\fR operation deallocates devices allocated to the
@@ -160,7 +160,7 @@ An error occurred.
\fB/etc/security/lib/*\fR
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -179,14 +179,19 @@ The invocation is Uncommitted. The options are Uncommitted. The output is
Not-an-Interface.
.SH SEE ALSO
.LP
-\fBallocate\fR(1), \fBlist_devices\fR(1), \fBdminfo\fR(1M),
-\fBmkdevalloc\fR(1M), \fBmkdevmaps\fR(1M), \fBdevice_allocate\fR(4),
-\fBdevice_maps\fR(4), \fBattributes\fR(5)
+.BR allocate (1),
+.BR list_devices (1),
+.BR device_allocate (5),
+.BR device_maps (5),
+.BR attributes (7),
+.BR dminfo (8),
+.BR mkdevalloc (8),
+.BR mkdevmaps (8)
.SH NOTES
.LP
On systems configured with Trusted Extensions, the functionality is enabled by
default.
.sp
.LP
-\fB/etc/security/dev\fR, \fBmkdevalloc\fR(1M), and \fBmkdevmaps\fR(1M) might
+\fB/etc/security/dev\fR, \fBmkdevalloc\fR(8), and \fBmkdevmaps\fR(8) might
not be supported in a future release of the Solaris Operating Environment.
diff --git a/usr/src/man/man1/deroff.1 b/usr/src/man/man1/deroff.1
index 74f061b343..51dfa5a7b9 100644
--- a/usr/src/man/man1/deroff.1
+++ b/usr/src/man/man1/deroff.1
@@ -70,7 +70,11 @@ The \fB-i\fR option causes \fBderoff\fR to ignore \fB\&.so\fR and
.SH SEE ALSO
.sp
.LP
-\fBeqn\fR(1), \fBnroff\fR(1), \fBtbl\fR(1), \fBtroff\fR(1), \fBattributes\fR(5)
+.BR eqn (1),
+.BR nroff (1),
+.BR tbl (1),
+.BR troff (1),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man1/dhcpinfo.1 b/usr/src/man/man1/dhcpinfo.1
index 7222ffeb60..adedd15787 100644
--- a/usr/src/man/man1/dhcpinfo.1
+++ b/usr/src/man/man1/dhcpinfo.1
@@ -22,17 +22,17 @@ dhcpinfo \- display values of parameters received through DHCP
The \fBdhcpinfo\fR utility prints the \fBDHCP\fR-supplied value(s) of the
parameter requested on the command line. The parameter can be identified either
by its numeric code in the \fBDHCP\fR specification, or by its mnemonic
-identifier, as listed in \fBdhcp_inittab\fR(4). This command is intended to be
+identifier, as listed in \fBdhcp_inittab\fR(5). This command is intended to be
used in command substitutions in the shell scripts invoked at system boot or
-in event scripts as described in \fBdhcpagent\fR(1M). It first contacts the
-DHCP client daemon \fBdhcpagent\fR(1M) to verify that \fBDHCP\fR has
+in event scripts as described in \fBdhcpagent\fR(8). It first contacts the
+DHCP client daemon \fBdhcpagent\fR(8) to verify that \fBDHCP\fR has
successfully completed on the requested interface. If \fBDHCP\fR has
successfully completed on the requested interface, \fBdhcpinfo\fR retrieves the
values for the requested parameter. Parameter values echoed by \fBdhcpinfo\fR
should not be used without checking its exit status. See \fBexit\fR(1).
.sp
.LP
-See \fBdhcp_inittab\fR(4) for the list of mnemonic identifier codes for all
+See \fBdhcp_inittab\fR(5) for the list of mnemonic identifier codes for all
\fBDHCP\fR parameters. See \fIRFC 2132, DHCP Options and BOOTP Vendor
Extensions\fR for more details on DHCPv4 parameters, and RFC 3315, Dynamic Host
Configuration Protocol for IPv6 (DHCPv6), for more details on DHCPv6
@@ -42,11 +42,11 @@ The output from \fBdhcpinfo\fR consists of one or more lines of \fBASCII\fR
text; the format of the output depends upon the requested parameter. The number
of values returned per line and the total number of lines output for a given
parameter are determined by the parameter's \fBgranularity\fR and \fBmaximum\fR
-values, respectively, as defined by \fBdhcp_inittab\fR(4).
+values, respectively, as defined by \fBdhcp_inittab\fR(5).
.sp
.LP
The format of each individual value is determined by the data type of the
-option, as determined by \fBdhcp_inittab\fR(4). The possible data types and
+option, as determined by \fBdhcp_inittab\fR(5). The possible data types and
their formats are listed below:
.sp
@@ -54,7 +54,7 @@ their formats are listed below:
.TS
c c c
l l l .
-Data Type Format \fBdhcp_inittab\fR(4) type
+Data Type Format \fBdhcp_inittab\fR(5) type
Unsigned Number One or more decimal digits T{
\fBUNUMBER8\fR, \fBUNUMBER16\fR, \fBUNUMBER32\fR, \fBUNUMBER64\fR
T}
@@ -97,13 +97,13 @@ Specifies the interface to retrieve values for \fBDHCP\fR parameters from. If
this option is not specified, the primary interface is used.
.sp
If a primary interface has not been selected for the system by
-\fBifconfig\fR(1M) or for this command by \fB-i\fR, the system automatically
+\fBifconfig\fR(8) or for this command by \fB-i\fR, the system automatically
selects an interface to consider as primary for the current command invocation.
The selection chooses the interface whose name sorts lexically first, and that
has DHCP parameters attached. This selection does not affect system state. Use
-\fBifconfig\fR(1M) to set a primary interface.
+\fBifconfig\fR(8) to set a primary interface.
.sp
-The recommended practice in the \fBdhcpagent\fR(1M) \fBeventhook\fR scripts is
+The recommended practice in the \fBdhcpagent\fR(8) \fBeventhook\fR scripts is
to specify the desired interface with \fB-i\fR, rather than relying on primary
selection.
.sp
@@ -150,7 +150,7 @@ the actual vendor code for DHCPv4, and \fB65536\fR for DHCPv6.
.ad
.RS 14n
Mnemonic symbol for the requested \fBDHCP\fR parameter, as listed in
-\fBdhcp_inittab\fR(4).
+\fBdhcp_inittab\fR(5).
.RE
.SH EXIT STATUS
@@ -203,7 +203,7 @@ System error (should never occur).
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -217,8 +217,10 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBdhcpagent\fR(1M), \fBifconfig\fR(1M), \fBdhcp_inittab\fR(4),
-\fBattributes\fR(5)
+.BR dhcp_inittab (5),
+.BR attributes (7),
+.BR dhcpagent (8),
+.BR ifconfig (8)
.sp
.LP
Alexander, S., and R. Droms, \fIRFC 2132, DHCP Options and BOOTP Vendor
diff --git a/usr/src/man/man1/diff.1 b/usr/src/man/man1/diff.1
index 5078d84803..11be316331 100644
--- a/usr/src/man/man1/diff.1
+++ b/usr/src/man/man1/diff.1
@@ -369,7 +369,7 @@ directory file with a filename that is the same as the last component of the
non-directory file.
.Sh USAGE
See
-.Xr largefile 5
+.Xr largefile 7
for the description of the behavior of
.Nm
when encountering files greater than or equal to 2 Gbyte
@@ -424,7 +424,7 @@ diff -r dir1/x/date.out dir2/x/date.out
.Ed
.Sh ENVIRONMENT VARIABLES
See
-.Xr environ 5
+.Xr environ 7
for descriptions of the following environment variables that affect the
execution of
.Nm :
@@ -461,10 +461,10 @@ is
.Xr ed 1 ,
.Xr pr 1 ,
.Xr sdiff 1 ,
-.Xr attributes 5 ,
-.Xr environ 5 ,
-.Xr largefile 5 ,
-.Xr standards 5
+.Xr attributes 7 ,
+.Xr environ 7 ,
+.Xr largefile 7 ,
+.Xr standards 7
.Sh NOTES
Editing scripts produced under the
.Fl e
@@ -473,6 +473,7 @@ or
options are na\(:ive about creating lines consisting of a single dot
.Sq \&. .
.Pp
+>>>>>>> master
Missing NEWLINE at end of file indicates that the last line of the file in
question did not have a NEWLINE.
If the lines are different, they will be flagged and output, although the
diff --git a/usr/src/man/man1/diff3.1 b/usr/src/man/man1/diff3.1
index 46b1b7ae2a..7a569fd863 100644
--- a/usr/src/man/man1/diff3.1
+++ b/usr/src/man/man1/diff3.1
@@ -155,7 +155,7 @@ Produce a script to incorporate only changes flagged \fB====3\fR.
.SH USAGE
.sp
.LP
-See \fBlargefile\fR(5) for the description of the behavior of \fBdiff3\fR when
+See \fBlargefile\fR(7) for the description of the behavior of \fBdiff3\fR when
encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
.SH FILES
.sp
@@ -214,7 +214,7 @@ of \fBdiff3\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -230,7 +230,9 @@ CSI Enabled
.SH SEE ALSO
.sp
.LP
-\fBdiff\fR(1), \fBattributes\fR(5), \fBlargefile\fR(5)
+.BR diff (1),
+.BR attributes (7),
+.BR largefile (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man1/diffmk.1 b/usr/src/man/man1/diffmk.1
index 2aef743146..4a87b82b80 100644
--- a/usr/src/man/man1/diffmk.1
+++ b/usr/src/man/man1/diffmk.1
@@ -27,7 +27,7 @@ single \fB*\fR.
.SH USAGE
.sp
.LP
-See \fBlargefile\fR(5) for the description of the behavior of \fBdiffmk\fR when
+See \fBlargefile\fR(7) for the description of the behavior of \fBdiffmk\fR when
encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
.SH EXAMPLES
.LP
@@ -75,8 +75,12 @@ If the characters \fB|\fR and \fB*\fR are inappropriate, you might run
.SH SEE ALSO
.sp
.LP
-\fBdiff\fR(1), \fBnroff\fR(1), \fBsed\fR(1), \fBtroff\fR(1),
-\fBattributes\fR(5), \fBlargefile\fR(5)
+.BR diff (1),
+.BR nroff (1),
+.BR sed (1),
+.BR troff (1),
+.BR attributes (7),
+.BR largefile (7)
.SH BUGS
.sp
.LP
diff --git a/usr/src/man/man1/digest.1 b/usr/src/man/man1/digest.1
index ec18edb247..82a9566df2 100644
--- a/usr/src/man/man1/digest.1
+++ b/usr/src/man/man1/digest.1
@@ -163,7 +163,7 @@ An error occurred.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -178,6 +178,11 @@ Interface Stability Committed
.SH SEE ALSO
.LP
-\fBcksum\fR(1), \fBencrypt\fR(1), \fBmac\fR(1), \fBbart\fR(1M),
-\fBcryptoadm\fR(1M), \fBlibpkcs11\fR(3LIB), \fBattributes\fR(5),
-\fBpkcs11_softtoken\fR(5)
+.BR cksum (1),
+.BR encrypt (1),
+.BR mac (1),
+.BR libpkcs11 (3LIB),
+.BR attributes (7),
+.BR pkcs11_softtoken (7),
+.BR bart (8),
+.BR cryptoadm (8)
diff --git a/usr/src/man/man1/dircmp.1 b/usr/src/man/man1/dircmp.1
index 869bb6e581..ba4f9714c9 100644
--- a/usr/src/man/man1/dircmp.1
+++ b/usr/src/man/man1/dircmp.1
@@ -115,12 +115,12 @@ A path name of a directory to be compared.
.SH USAGE
.sp
.LP
-See \fBlargefile\fR(5) for the description of the behavior of \fBdircmp\fR when
+See \fBlargefile\fR(7) for the description of the behavior of \fBdircmp\fR when
encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBdircmp\fR: \fBLC_COLLATE\fR, \fBLC_CTYPE\fR,
\fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.SH EXIT STATUS
@@ -149,5 +149,8 @@ errors.)
.SH SEE ALSO
.sp
.LP
-\fBcmp\fR(1), \fBdiff\fR(1), \fBattributes\fR(5), \fBenviron\fR(5),
-\fBlargefile\fR(5)
+.BR cmp (1),
+.BR diff (1),
+.BR attributes (7),
+.BR environ (7),
+.BR largefile (7)
diff --git a/usr/src/man/man1/dis.1 b/usr/src/man/man1/dis.1
index 103fd48509..def59c1f7f 100644
--- a/usr/src/man/man1/dis.1
+++ b/usr/src/man/man1/dis.1
@@ -206,7 +206,7 @@ A path name of an object file or an archive (see \fBar\fR(1)) of object files.
.SH ENVIRONMENT VARIABLES
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBdis\fR: \fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and
\fBNLSPATH\fR.
.sp
@@ -252,7 +252,7 @@ default \fBLIBDIR\fR
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -271,8 +271,12 @@ The human readable output is Uncommitted. The command line options are
Committed.
.SH SEE ALSO
.LP
-\fBar\fR(1), \fBas\fR(1), \fBld\fR(1), \fBa.out\fR(4), \fBattributes\fR(5),
-\fBenviron\fR(5)
+.BR ar (1),
+.BR as (1),
+.BR ld (1),
+.BR a.out (5),
+.BR attributes (7),
+.BR environ (7)
.SH DIAGNOSTICS
.LP
The self-explanatory diagnostics indicate errors in the command line or
diff --git a/usr/src/man/man1/disown.1 b/usr/src/man/man1/disown.1
index e4e59cbdcc..ab49dc9cf0 100644
--- a/usr/src/man/man1/disown.1
+++ b/usr/src/man/man1/disown.1
@@ -140,7 +140,7 @@ David Korn, \fBdgk@research.att.com\fR
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -156,4 +156,8 @@ Interface Stability Uncommitted
.SH SEE ALSO
.sp
.LP
-\fBbg\fR(1), \fBjobs\fR(1), \fBksh93\fR(1), \fBwait\fR(1), \fBattributes\fR(5)
+.BR bg (1),
+.BR jobs (1),
+.BR ksh93 (1),
+.BR wait (1),
+.BR attributes (7)
diff --git a/usr/src/man/man1/dispgid.1 b/usr/src/man/man1/dispgid.1
index 0fc506d9ff..737b1c9ecf 100644
--- a/usr/src/man/man1/dispgid.1
+++ b/usr/src/man/man1/dispgid.1
@@ -42,4 +42,4 @@ Cannot read the group file.
.SH SEE ALSO
.sp
.LP
-\fBattributes\fR(5)
+.BR attributes (7)
diff --git a/usr/src/man/man1/dispuid.1 b/usr/src/man/man1/dispuid.1
index df10df4455..8c435bef75 100644
--- a/usr/src/man/man1/dispuid.1
+++ b/usr/src/man/man1/dispuid.1
@@ -42,4 +42,4 @@ Cannot read the password file.
.SH SEE ALSO
.sp
.LP
-\fBattributes\fR(5)
+.BR attributes (7)
diff --git a/usr/src/man/man1/dos2unix.1 b/usr/src/man/man1/dos2unix.1
index 0fe479ad55..f824ea75e3 100644
--- a/usr/src/man/man1/dos2unix.1
+++ b/usr/src/man/man1/dos2unix.1
@@ -138,7 +138,9 @@ The new file in \fBISO\fR format that has been converted from the original
.SH SEE ALSO
.sp
.LP
-\fBunix2dos\fR(1), \fBls\fR(1), \fBattributes\fR(5)
+.BR ls (1),
+.BR unix2dos (1),
+.BR attributes (7)
.SH DIAGNOSTICS
.sp
.ne 2
diff --git a/usr/src/man/man1/download.1 b/usr/src/man/man1/download.1
index e11751d54c..8de4d9f59d 100644
--- a/usr/src/man/man1/download.1
+++ b/usr/src/man/man1/download.1
@@ -146,7 +146,10 @@ An error occurred.
.SH SEE ALSO
.LP
-\fBdpost\fR(1), \fBpostio\fR(1), \fBpostprint\fR(1), \fBattributes\fR(5)
+.BR dpost (1),
+.BR postio (1),
+.BR postprint (1),
+.BR attributes (7)
.SH NOTES
.LP
The \fBdownload\fR program should be part of a more general program.
diff --git a/usr/src/man/man1/dpost.1 b/usr/src/man/man1/dpost.1
index c977e416ad..c785cc0889 100644
--- a/usr/src/man/man1/dpost.1
+++ b/usr/src/man/man1/dpost.1
@@ -316,8 +316,12 @@ An error occurred.
.SH SEE ALSO
.LP
-\fBdownload\fR(1), \fBpostio\fR(1), \fBpostprint\fR(1), \fBpostreverse\fR(1),
-\fBtroff\fR(1), \fBattributes\fR(5)
+.BR download (1),
+.BR postio (1),
+.BR postprint (1),
+.BR postreverse (1),
+.BR troff (1),
+.BR attributes (7)
.SH NOTES
.LP
Output files often do not conform to Adobe's file structuring conventions.
diff --git a/usr/src/man/man1/du.1 b/usr/src/man/man1/du.1
index 08859ebd70..df20280d3e 100644
--- a/usr/src/man/man1/du.1
+++ b/usr/src/man/man1/du.1
@@ -239,11 +239,11 @@ The output from \fBdu\fR consists of the amount of the space allocated to a
file and the name of the file.
.SH USAGE
.LP
-See \fBlargefile\fR(5) for the description of the behavior of \fBdu\fR when
+See \fBlargefile\fR(7) for the description of the behavior of \fBdu\fR when
encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
.SH ENVIRONMENT VARIABLES
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBdu\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.SH EXIT STATUS
@@ -267,7 +267,7 @@ An error occurred.
.RE
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.SS "/usr/bin/du"
.TS
@@ -296,8 +296,13 @@ Interface Stability Standard
.SH SEE ALSO
.LP
-\fBls\fR(1), \fBstat\fR(2), \fBattributes\fR(5), \fBenviron\fR(5),
-\fBfsattr\fR(5), \fBlargefile\fR(5), \fBstandards\fR(5)
+.BR ls (1),
+.BR stat (2),
+.BR attributes (7),
+.BR environ (7),
+.BR fsattr (7),
+.BR largefile (7),
+.BR standards (7)
.LP
\fISystem Administration Guide: Basic Administration\fR
.SH NOTES
diff --git a/usr/src/man/man1/dump.1 b/usr/src/man/man1/dump.1
index 6c1c4ff317..a69459b1d6 100644
--- a/usr/src/man/man1/dump.1
+++ b/usr/src/man/man1/dump.1
@@ -315,5 +315,8 @@ meaningful way, printing certain information in character, hexadecimal, octal,
or decimal representation as appropriate.
.SH SEE ALSO
.LP
-\fBelfdump\fR(1), \fBnm\fR(1), \fBar.h\fR(3HEAD), \fBa.out\fR(4),
-\fBattributes\fR(5)
+.BR elfdump (1),
+.BR nm (1),
+.BR ar.h (3HEAD),
+.BR a.out (5),
+.BR attributes (7)
diff --git a/usr/src/man/man1/dumpcs.1 b/usr/src/man/man1/dumpcs.1
index ae5f6242b2..c1bc8da38a 100644
--- a/usr/src/man/man1/dumpcs.1
+++ b/usr/src/man/man1/dumpcs.1
@@ -94,7 +94,8 @@ POSIX.1 "C" locale.
.SH SEE ALSO
.sp
.LP
-\fBlocaledef\fR(1), \fBattributes\fR(5)
+.BR localedef (1),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man1/echo.1 b/usr/src/man/man1/echo.1
index 98b49e017d..f5b6ca4f19 100644
--- a/usr/src/man/man1/echo.1
+++ b/usr/src/man/man1/echo.1
@@ -320,7 +320,7 @@ example% \fB/usr/ucb/echo -n "$USER's current directory is $PWD"\fR
.SH ENVIRONMENT VARIABLES
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBecho\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
@@ -347,7 +347,7 @@ An error occurred.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -361,14 +361,21 @@ CSI Enabled
_
Interface Stability Committed
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.LP
-\fBksh93\fR(1), \fBprintf\fR(1), \fBshell_builtins\fR(1), \fBtr\fR(1),
-\fBwc\fR(1), \fBecho\fR(1B), \fBascii\fR(5), \fBattributes\fR(5),
-\fBenviron\fR(5), \fBstandards\fR(5)
+.BR ksh93 (1),
+.BR printf (1),
+.BR shell_builtins (1),
+.BR tr (1),
+.BR wc (1),
+.BR echo (1B),
+.BR ascii (7),
+.BR attributes (7),
+.BR environ (7),
+.BR standards (7)
.SH NOTES
.LP
When representing an 8-bit character by using the escape convention
@@ -403,4 +410,4 @@ the three digits "033" rather than just the two digits "33" after the
.sp
.LP
-For the octal equivalents of each character, see \fBascii\fR(5).
+For the octal equivalents of each character, see \fBascii\fR(7).
diff --git a/usr/src/man/man1/ed.1 b/usr/src/man/man1/ed.1
index 016c8f0cfa..a7610ad68d 100644
--- a/usr/src/man/man1/ed.1
+++ b/usr/src/man/man1/ed.1
@@ -88,7 +88,7 @@ commands via \fB!\fR\fIshell command\fR. Attempts to bypass these restrictions
result in an error message (\fIrestricted shell\fR).
.sp
.LP
-Both \fBed\fR and \fBred\fR support the \fBfspec\fR(4) formatting capability.
+Both \fBed\fR and \fBred\fR support the \fBfspec\fR(5) formatting capability.
The default terminal mode is either \fBstty\fR \fB-tabs\fR or \fBstty tab3\fR,
where tab stops are set at eight columns (see \fBstty\fR(1)). If, however, the
first line of \fIfile\fR contains a format specification, that specification
@@ -135,7 +135,7 @@ line is discussed under the description of each command.
.sp
.LP
Internationalized Basic Regular Expressions are used for all system-supplied
-locales. See \fBregex\fR(5).
+locales. See \fBregex\fR(7).
.SS "ed Commands"
.sp
.LP
@@ -1074,13 +1074,13 @@ input.
.SH USAGE
.sp
.LP
-See \fBlargefile\fR(5) for the description of the behavior of \fBed\fR and
+See \fBlargefile\fR(7) for the description of the behavior of \fBed\fR and
\fBred\fR when encountering files greater than or equal to 2 Gbyte ( 2^31
bytes).
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBed\fR: \fBHOME\fR, \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_CTYPE\fR, \fBLC_COLLATE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.SH EXIT STATUS
@@ -1149,7 +1149,7 @@ Work is saved here if the terminal is hung up.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.SS "/usr/bin/ed, /usr/bin/red"
.sp
@@ -1196,10 +1196,21 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBedit\fR(1), \fBex\fR(1), \fBgrep\fR(1), \fBksh\fR(1),
-\fBsed\fR(1), \fBsh\fR(1), \fBstty\fR(1), \fBumask\fR(1), \fBvi\fR(1),
-\fBfspec\fR(4), \fBattributes\fR(5), \fBenviron\fR(5), \fBlargefile\fR(5),
-\fBregex\fR(5), \fBstandards\fR(5)
+.BR edit (1),
+.BR ex (1),
+.BR grep (1),
+.BR ksh (1),
+.BR sed (1),
+.BR sh (1),
+.BR stty (1),
+.BR umask (1),
+.BR vi (1),
+.BR fspec (5),
+.BR attributes (7),
+.BR environ (7),
+.BR largefile (7),
+.BR regex (7),
+.BR standards (7)
.SH DIAGNOSTICS
.sp
.ne 2
diff --git a/usr/src/man/man1/eject.1 b/usr/src/man/man1/eject.1
index 142322011f..aadbe20012 100644
--- a/usr/src/man/man1/eject.1
+++ b/usr/src/man/man1/eject.1
@@ -34,7 +34,7 @@ be manually ejected.
Do not physically eject media from a device that contains mounted file systems.
\fBeject\fR automatically searches for any mounted file systems that reside on
the device, and attempts to umount them prior to ejecting the media. See
-\fBmount\fR(1M). If the unmount operation fails, \fBeject\fR prints a warning
+\fBmount\fR(8). If the unmount operation fails, \fBeject\fR prints a warning
message and exits. The \fB-f\fR option can be used to specify an eject even if
the device contains mounted partitions.
.sp
@@ -226,5 +226,8 @@ default \fBCD-ROM\fR file (deprecated)
.SH SEE ALSO
.sp
.LP
-\fBvolcheck\fR(1), \fBmount\fR(1M), \fBrmmount\fR(1M), \fBioctl\fR(2),
-\fBattributes\fR(5)
+.BR volcheck (1),
+.BR ioctl (2),
+.BR attributes (7),
+.BR mount (8),
+.BR rmmount (8)
diff --git a/usr/src/man/man1/elfdump.1 b/usr/src/man/man1/elfdump.1
index 3859847ecf..de5b434f5d 100644
--- a/usr/src/man/man1/elfdump.1
+++ b/usr/src/man/man1/elfdump.1
@@ -257,7 +257,7 @@ Dumps the contents of the \fB\&.SUNW_move\fR section.
.RS 18n
Dumps the contents of \fB\&.note\fR sections. By default, \fBelfdump\fR
displays this data without interpretation in hexadecimal form. Core files are
-an exception. A subset of the core file notes described in \fBcore\fR(4) are
+an exception. A subset of the core file notes described in \fBcore\fR(5) are
interpreted by \fBelfdump\fR and displayed in a high level format: NT_PRSTATUS,
NT_PRPSINFO, NT_PLATFORM, NT_AUXV, NT_ASRS, NT_PSTATUS, NT_PSINFO, NT_PRCRED,
NT_UTSNAME, NT_LWPSTATUS, NT_LWPSINFO, NT_PRPRIV, NT_PRPRIVINFO, NT_CONTENT,
@@ -569,7 +569,7 @@ linker debugging library
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -584,8 +584,13 @@ Interface Stability Committed
.SH SEE ALSO
.LP
-\fBar\fR(1), \fBdump\fR(1), \fBnm\fR(1), \fBpvs\fR(1), \fBelf\fR(3ELF),
-\fBcore\fR(4), \fBattributes\fR(5)
+.BR ar (1),
+.BR dump (1),
+.BR nm (1),
+.BR pvs (1),
+.BR elf (3ELF),
+.BR core (5),
+.BR attributes (7)
.sp
.LP
\fILinker and Libraries Guide\fR
diff --git a/usr/src/man/man1/elfedit.1 b/usr/src/man/man1/elfedit.1
index b8f27fa3a9..d436572005 100644
--- a/usr/src/man/man1/elfedit.1
+++ b/usr/src/man/man1/elfedit.1
@@ -893,11 +893,11 @@ editing commands.
.ad
.RS 20n
Personal \fBtecla\fR customization file for command line editing. See
-\fBtecla\fR(5).
+\fBtecla\fR(7).
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -911,9 +911,16 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBdump\fR(1), \fBelfdump\fR(1), \fBld.so.1\fR(1), \fBmore\fR(1), \fBnm\fR(1),
-\fBpvs\fR(1), \fBelf\fR(3ELF), \fBlibelf\fR(3LIB), \fBtecla\fR(5),
-\fBattributes\fR(5)
+.BR dump (1),
+.BR elfdump (1),
+.BR ld.so.1 (1),
+.BR more (1),
+.BR nm (1),
+.BR pvs (1),
+.BR elf (3ELF),
+.BR libelf (3LIB),
+.BR attributes (7),
+.BR tecla (7)
.sp
.LP
\fILinker and Libraries Guide\fR
diff --git a/usr/src/man/man1/elfsign.1 b/usr/src/man/man1/elfsign.1
index dc74316816..b10440f526 100644
--- a/usr/src/man/man1/elfsign.1
+++ b/usr/src/man/man1/elfsign.1
@@ -413,7 +413,7 @@ used
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -433,5 +433,8 @@ should not depend on the output format of \fBelfsign\fR, the output format of
the \fBlist\fR subcommand is Committed.
.SH SEE ALSO
.LP
-\fBdate\fR(1), \fBpktool\fR(1), \fBcryptoadm\fR(1M), \fBlibpkcs11\fR(3LIB),
-\fBattributes\fR(5)
+.BR date (1),
+.BR pktool (1),
+.BR libpkcs11 (3LIB),
+.BR attributes (7),
+.BR cryptoadm (8)
diff --git a/usr/src/man/man1/elfwrap.1 b/usr/src/man/man1/elfwrap.1
index fdab71ecbc..4076951dc9 100644
--- a/usr/src/man/man1/elfwrap.1
+++ b/usr/src/man/man1/elfwrap.1
@@ -185,7 +185,7 @@ The default relocatable object file created.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -201,8 +201,12 @@ Interface Stability Committed
.SH SEE ALSO
.sp
.LP
-\fBelfdump\fR(1), \fBld\fR(1), \fBstrings\fR(1), \fBelf\fR(3ELF),
-\fBattributes\fR(5), \fBddi_modopen\fR(9F)
+.BR elfdump (1),
+.BR ld (1),
+.BR strings (1),
+.BR elf (3ELF),
+.BR attributes (7),
+.BR ddi_modopen (9F)
.sp
.LP
\fILinker and Libraries Guide\fR
diff --git a/usr/src/man/man1/enable.1 b/usr/src/man/man1/enable.1
index 33b3bfbe8f..80ddbc93ff 100644
--- a/usr/src/man/man1/enable.1
+++ b/usr/src/man/man1/enable.1
@@ -86,7 +86,7 @@ The following operand is supported for both \fBenable\fR and \fBdisable\fR:
.RS 11n
The name of the printer to be enabled or disabled. Specify \fIprinter\fR using
atomic or URI-style (\fIscheme\fR\fB://\fR\fIendpoint\fR) names. See
-\fBprinters.conf\fR(4) regarding the naming conventions for destinations.
+\fBprinters.conf\fR(5) regarding the naming conventions for destinations.
.RE
.SH EXIT STATUS
@@ -148,7 +148,7 @@ LDAP version of \fB/etc/printers.conf\fR
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -165,7 +165,10 @@ CSI Enabled
.SH SEE ALSO
.LP
-\fBlp\fR(1), \fBlpstat\fR(1), \fBprinters.conf\fR(4), \fBattributes\fR(5)
+.BR lp (1),
+.BR lpstat (1),
+.BR printers.conf (5),
+.BR attributes (7)
.SH NOTES
.LP
When IPP is in use, the user is prompted for a passphrase if the remote print
diff --git a/usr/src/man/man1/encrypt.1 b/usr/src/man/man1/encrypt.1
index 69a8eef726..f9b23850ab 100644
--- a/usr/src/man/man1/encrypt.1
+++ b/usr/src/man/man1/encrypt.1
@@ -115,7 +115,7 @@ key length, and passphrases set from the terminal are always used to generate
128 bit long keys for ciphers with a variable key length.
.sp
For information on generating a key file, see the \fBgenkey\fR subcommand in
-\fBpktool\fR(1). Alternatively, \fBdd\fR(1M) can be used.
+\fBpktool\fR(1). Alternatively, \fBdd\fR(8) can be used.
.RE
.sp
@@ -357,7 +357,7 @@ An error occurred.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -373,9 +373,14 @@ Interface Stability Committed
.SH SEE ALSO
.sp
.LP
-\fBdigest\fR(1), \fBpktool\fR(1), \fBmac\fR(1), \fBdd\fR(1M),
-\fBgetpassphrase\fR(3C), \fBlibpkcs11\fR(3LIB), \fBattributes\fR(5),
-\fBpkcs11_softtoken\fR(5)
+.BR digest (1),
+.BR mac (1),
+.BR pktool (1),
+.BR getpassphrase (3C),
+.BR libpkcs11 (3LIB),
+.BR attributes (7),
+.BR pkcs11_softtoken (7),
+.BR dd (8)
.sp
.LP
\fISystem Administration Guide: Security Services\fR
diff --git a/usr/src/man/man1/enhance.1 b/usr/src/man/man1/enhance.1
index 8a18e37304..feda59ffa7 100644
--- a/usr/src/man/man1/enhance.1
+++ b/usr/src/man/man1/enhance.1
@@ -33,7 +33,7 @@ stop the input line from being re-displayed so often that it slows down output.
.sp
.LP
The user-level command-line editing facilities provided by the Tecla library
-are documented in the \fBtecla\fR(5) man page
+are documented in the \fBtecla\fR(7) man page
.SS "DEFICIENCIES"
.sp
.LP
@@ -76,7 +76,7 @@ be displayed on the next line.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -92,4 +92,6 @@ Interface Stability Evolving
.SH SEE ALSO
.sp
.LP
-\fBlibtecla\fR(3LIB), \fBattributes\fR(5), \fBtecla\fR(5)
+.BR libtecla (3LIB),
+.BR attributes (7),
+.BR tecla (7)
diff --git a/usr/src/man/man1/env.1 b/usr/src/man/man1/env.1
index e0ff364611..2d86ce1cf0 100644
--- a/usr/src/man/man1/env.1
+++ b/usr/src/man/man1/env.1
@@ -147,7 +147,7 @@ which then must reside in \fB/mybin\fR.
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBenv\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.sp
@@ -206,7 +206,7 @@ An error occurred.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.SS "/usr/bin"
.sp
@@ -238,5 +238,10 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBksh\fR(1), \fBsh\fR(1), \fBexec\fR(2), \fBprofile\fR(4),
-\fBattributes\fR(5), \fBenviron\fR(5), \fBstandards\fR(5)
+.BR ksh (1),
+.BR sh (1),
+.BR exec (2),
+.BR profile (5),
+.BR attributes (7),
+.BR environ (7),
+.BR standards (7)
diff --git a/usr/src/man/man1/eqn.1 b/usr/src/man/man1/eqn.1
index 695f44d8e0..ba5d1eb806 100644
--- a/usr/src/man/man1/eqn.1
+++ b/usr/src/man/man1/eqn.1
@@ -483,7 +483,11 @@ communicate with \fBtroff\fR when all else fails.
.SH SEE ALSO
.sp
.LP
-\fBnroff\fR(1), \fBtbl\fR(1), \fBtroff\fR(1), \fBattributes\fR(5), \fBms\fR(5)
+.BR nroff (1),
+.BR tbl (1),
+.BR troff (1),
+.BR attributes (7),
+.BR ms (7)
.SH BUGS
.sp
.LP
diff --git a/usr/src/man/man1/exec.1 b/usr/src/man/man1/exec.1
index 7276e8a975..5b7df91690 100644
--- a/usr/src/man/man1/exec.1
+++ b/usr/src/man/man1/exec.1
@@ -305,7 +305,7 @@ is the exit status of the command defined by the \fIargument\fR operands.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -319,4 +319,8 @@ ATTRIBUTE TYPE ATTRIBUTE VALUE
.SH SEE ALSO
.sp
.LP
-\fBcsh\fR(1), \fBksh\fR(1), \fBksh93\fR(1), \fBsh\fR(1), \fBattributes\fR(5)
+.BR csh (1),
+.BR ksh (1),
+.BR ksh93 (1),
+.BR sh (1),
+.BR attributes (7)
diff --git a/usr/src/man/man1/exit.1 b/usr/src/man/man1/exit.1
index 8732bfe2f2..e1c98e2eb2 100644
--- a/usr/src/man/man1/exit.1
+++ b/usr/src/man/man1/exit.1
@@ -197,7 +197,7 @@ the exit status of preceding command.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -211,5 +211,9 @@ ATTRIBUTE TYPE ATTRIBUTE VALUE
.SH SEE ALSO
.sp
.LP
-\fBbreak\fR(1), \fBcsh\fR(1), \fBksh\fR(1), \fBksh93\fR(1), \fBsh\fR(1),
-\fBattributes\fR(5)
+.BR break (1),
+.BR csh (1),
+.BR ksh (1),
+.BR ksh93 (1),
+.BR sh (1),
+.BR attributes (7)
diff --git a/usr/src/man/man1/expand.1 b/usr/src/man/man1/expand.1
index 0bc209a522..22fb1a67d4 100644
--- a/usr/src/man/man1/expand.1
+++ b/usr/src/man/man1/expand.1
@@ -176,7 +176,7 @@ The path name of a text file to be used as input.
.SH ENVIRONMENT VARIABLES
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBexpand\fR and \fBunexpand\fR: \fBLANG\fR,
\fBLC_ALL\fR, \fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.SH EXIT STATUS
@@ -202,7 +202,7 @@ An error occurred.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -219,4 +219,7 @@ Interface Stability Standard
.SH SEE ALSO
.LP
-\fBtabs\fR(1), \fBattributes\fR(5), \fBenviron\fR(5), \fBstandards\fR(5)
+.BR tabs (1),
+.BR attributes (7),
+.BR environ (7),
+.BR standards (7)
diff --git a/usr/src/man/man1/expr.1 b/usr/src/man/man1/expr.1
index 6fa0408693..db291258e4 100644
--- a/usr/src/man/man1/expr.1
+++ b/usr/src/man/man1/expr.1
@@ -158,7 +158,7 @@ The matching operator \fB:\fR (colon) compares the first argument with the
second argument, which must be an internationalized basic regular expression
(BRE), except that all patterns are anchored to the beginning of the string.
That is, only sequences starting at the first character of a string are matched
-by the regular expression. See \fBregex\fR(5) and NOTES. Normally, the
+by the regular expression. See \fBregex\fR(7) and NOTES. Normally, the
\fB/usr/bin/expr\fR matching operator returns the number of bytes matched and
the \fB/usr/xpg4/bin/expr\fR matching operator returns the number of characters
matched (\fB0\fR on failure). If the second argument contains at least one BRE
@@ -302,7 +302,7 @@ example$ \fBexpr "$VAR" : '.*'\fR
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBexpr\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_COLLATE\fR, \fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.SH EXIT STATUS
@@ -349,7 +349,7 @@ An error occurred.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -367,8 +367,14 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBbasename\fR(1), \fBed\fR(1), \fBsh\fR(1), \fBIntro\fR(3),
-\fBattributes\fR(5), \fBenviron\fR(5), \fBregex\fR(5), \fBstandards\fR(5)
+.BR basename (1),
+.BR ed (1),
+.BR sh (1),
+.BR Intro (3),
+.BR attributes (7),
+.BR environ (7),
+.BR regex (7),
+.BR standards (7)
.SH DIAGNOSTICS
.sp
.ne 2
@@ -430,4 +436,4 @@ example$ \fBexpr X$a = X=\fR
.LP
Unlike some previous versions, \fBexpr\fR uses Internationalized Basic Regular
Expressions for all system-provided locales. Internationalized Regular
-Expressions are explained on the \fBregex\fR(5) manual page.
+Expressions are explained on the \fBregex\fR(7) manual page.
diff --git a/usr/src/man/man1/exstr.1 b/usr/src/man/man1/exstr.1
index be476f0aef..ecb4bd9403 100644
--- a/usr/src/man/man1/exstr.1
+++ b/usr/src/man/man1/exstr.1
@@ -196,7 +196,7 @@ program that needs to run in an international environment and have messages
print in more than one language. \fBexstr\fR replaces text strings with
function calls that point at strings in a message data base. The data base used
depends on the run-time value of the \fBLC_MESSAGES\fR environment variable
-(see \fBenviron\fR(5)).
+(see \fBenviron\fR(7)).
.RE
.SH EXAMPLES
@@ -375,9 +375,15 @@ files created by \fBmkmsgs\fR(1)
.SH SEE ALSO
.sp
.LP
-\fBgettxt\fR(1), \fBmkmsgs\fR(1), \fBprintf\fR(1), \fBsrchtxt\fR(1),
-\fBgettxt\fR(3C), \fBprintf\fR(3C), \fBsetlocale\fR(3C), \fBattributes\fR(5),
-\fBenviron\fR(5)
+.BR gettxt (1),
+.BR mkmsgs (1),
+.BR printf (1),
+.BR srchtxt (1),
+.BR gettxt (3C),
+.BR printf (3C),
+.BR setlocale (3C),
+.BR attributes (7),
+.BR environ (7)
.SH DIAGNOSTICS
.sp
.LP
diff --git a/usr/src/man/man1/factor.1 b/usr/src/man/man1/factor.1
index f8460fc40b..d32abc5949 100644
--- a/usr/src/man/man1/factor.1
+++ b/usr/src/man/man1/factor.1
@@ -72,4 +72,4 @@ garbage input.
.SH SEE ALSO
.sp
.LP
-\fBattributes\fR(5)
+.BR attributes (7)
diff --git a/usr/src/man/man1/fdformat.1 b/usr/src/man/man1/fdformat.1
index 8a13bc7eb3..f44398b019 100644
--- a/usr/src/man/man1/fdformat.1
+++ b/usr/src/man/man1/fdformat.1
@@ -200,7 +200,7 @@ not available on all systems.
.ad
.RS 15n
Performs \fBumount\fR on any file systems and then formats. See
-\fBmount\fR(1M).
+\fBmount\fR(8).
.RE
.sp
@@ -433,18 +433,26 @@ OPERANDS for a description of \fIN\fR.
.SH SEE ALSO
.sp
.LP
-\fBcpio\fR(1), \fBeject\fR(1), \fBrmformat\fR(1), \fBtar\fR(1),
-\fBvolcheck\fR(1), \fBvolrmmount\fR(1), \fBmount\fR(1M), \fBnewfs\fR(1M),
-\fBprtvtoc\fR(1M), \fBattributes\fR(5), \fBpcfs\fR(7FS)
+.BR cpio (1),
+.BR eject (1),
+.BR rmformat (1),
+.BR tar (1),
+.BR volcheck (1),
+.BR volrmmount (1),
+.BR pcfs (4FS),
+.BR attributes (7),
+.BR mount (8),
+.BR newfs (8),
+.BR prtvtoc (8)
.SS "x86 Only"
.sp
.LP
-\fBfd\fR(7D)
+.BR fd (4D)
.SH NOTES
.sp
.LP
A diskette or \fBPCMCIA\fR memory card containing a \fBufs\fR file system
-created on a SPARC based system (by using \fBfdformat\fR and \fBnewfs\fR(1M)),
+created on a SPARC based system (by using \fBfdformat\fR and \fBnewfs\fR(8)),
is not identical to a diskette or \fBPCMCIA\fR memory card containing a ufs
file system created on an x86 based system. Do not interchange ufs diskettes or
memory cards between these platforms. Use \fBcpio\fR(1) or \fBtar\fR(1) to
diff --git a/usr/src/man/man1/file.1 b/usr/src/man/man1/file.1
index 2e84d1a3d3..ad67949b07 100644
--- a/usr/src/man/man1/file.1
+++ b/usr/src/man/man1/file.1
@@ -129,7 +129,7 @@ files that have a magic number. For example, in the Japanese locale, \fBfile\fR
will try to use \fB/usr/lib/locale/ja/LC_MESSAGES/magic\fR. If a localized
magic file does not exist, \fBfile\fR will utilize \fB/etc/magic\fR. A magic
number is a numeric or string constant that indicates the file type. See
-\fBmagic\fR(4) for an explanation of the format of \fB/etc/magic\fR.
+\fBmagic\fR(5) for an explanation of the format of \fB/etc/magic\fR.
.sp
.LP
If \fIfile\fR does not exist, cannot be read, or its file status could not be
@@ -222,7 +222,7 @@ Uses \fImfile\fR as an alternate magic file, instead of \fB/etc/magic\fR.
.ad
.RS 22n
Specifies the name of a file containing position-sensitive tests that are
-applied to a file in order to classify it (see \fBmagic\fR(4)). If the \fB-m\fR
+applied to a file in order to classify it (see \fBmagic\fR(5)). If the \fB-m\fR
option is specified without specifying the \fB-d\fR option or the \fB-M\fR
option, position-sensitive default system tests are applied after the
position-sensitive tests specified by the \fB-m\fR option.
@@ -237,7 +237,7 @@ position-sensitive tests specified by the \fB-m\fR option.
.ad
.RS 12n
Specifies the name of a file containing position-sensitive tests that are
-applied to a file in order to classify it (see \fBmagic\fR(4)). No
+applied to a file in order to classify it (see \fBmagic\fR(5)). No
position-sensitive default system tests nor context-sensitive default system
tests are applied unless the \fB-d\fR option is also specified.
.RE
@@ -264,7 +264,7 @@ A path name of a file to be tested.
.SH USAGE
.sp
.LP
-See \fBlargefile\fR(5) for the description of the behavior of \fBfile\fR when
+See \fBlargefile\fR(7) for the description of the behavior of \fBfile\fR when
encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
.SH EXAMPLES
.LP
@@ -285,7 +285,7 @@ file "$1" | grep \(miFq executable &&
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBfile\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.SH EXIT STATUS
@@ -323,7 +323,7 @@ An error occurred.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -341,5 +341,11 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBcrle\fR(1), \fBelfdump\fR(1), \fBls\fR(1), \fBmagic\fR(4),
-\fBattributes\fR(5), \fBenviron\fR(5), \fBlargefile\fR(5), \fBstandards\fR(5)
+.BR crle (1),
+.BR elfdump (1),
+.BR ls (1),
+.BR magic (5),
+.BR attributes (7),
+.BR environ (7),
+.BR largefile (7),
+.BR standards (7)
diff --git a/usr/src/man/man1/filesync.1 b/usr/src/man/man1/filesync.1
index 15b43119bc..dae2cbdcef 100644
--- a/usr/src/man/man1/filesync.1
+++ b/usr/src/man/man1/filesync.1
@@ -41,7 +41,7 @@ There are two forms of the \fBfilesync\fR command. The first form of
reconciles differences between the files and systems specified in the
\fB$HOME/.packingrules\fR file. \fB$HOME/.packingrules\fR is a packing rules
list for \fBfilesync\fR and contains a list of files to
-be kept synchronized. See \fBpackingrules\fR(4).
+be kept synchronized. See \fBpackingrules\fR(5).
.sp
.LP
The second form of \fBfilesync\fR copies specific files from a directory on the
@@ -110,7 +110,7 @@ conflicts remain.
.LP
The packing rules file \fB$HOME/.packingrules\fR contains a list of files to be
kept synchronized. The syntax of this file is described in
-\fBpackingrules\fR(4).
+\fBpackingrules\fR(5).
.LP
The \fB$HOME/.packingrules\fR file is automatically created if users invoke
\fBfilesync\fR with filename arguments. By using \fBfilesync\fR options, users
@@ -594,4 +594,5 @@ baseline summary file
.SH SEE ALSO
.LP
-\fBpackingrules\fR(4), \fBattributes\fR(5)
+.BR packingrules (5),
+.BR attributes (7)
diff --git a/usr/src/man/man1/find.1 b/usr/src/man/man1/find.1
index 3e1b3959ee..6e5c812415 100644
--- a/usr/src/man/man1/find.1
+++ b/usr/src/man/man1/find.1
@@ -791,7 +791,7 @@ The \fB-user\fR, \fB-group\fR, and \fB-newer\fR primaries each evaluate their
respective arguments only once. Invocation of \fIcommand\fR specified by
\fB-exec\fR or \fB-ok\fR does not affect subsequent primaries on the same file.
.SH USAGE
-See \fBlargefile\fR(5) for the description of the behavior of \fBfind\fR when
+See \fBlargefile\fR(7) for the description of the behavior of \fBfind\fR when
encountering files greater than or equal to 2 Gbyte (2^31 bytes).
.SH EXAMPLES
\fBExample 1 \fRWriting Out the Hierarchy Directory
@@ -963,7 +963,7 @@ example% \fBfind . -xattr\fR
.sp
.SH ENVIRONMENT VARIABLES
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBfind\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_COLLATE\fR, \fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.sp
@@ -985,7 +985,7 @@ the behavior of ranges, equivalence classes, and multi-character collating
elements used in the expression defined for \fByesexpr\fR. The locale specified
in \fBLC_CTYPE\fR determines the locale for interpretation of sequences of
bytes of text data a characters, the behavior of character classes used in the
-expression defined for the \fByesexpr\fR. See \fBlocale\fR(5).
+expression defined for the \fByesexpr\fR. See \fBlocale\fR(7).
.SH EXIT STATUS
The following exit values are returned:
.sp
@@ -1034,7 +1034,7 @@ File that registers distributed file system packages
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -1048,14 +1048,25 @@ CSI Enabled
_
Interface Stability Committed
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
-\fBchmod\fR(1), \fBcpio\fR(1), \fBsh\fR(1), \fBtest\fR(1), \fBls\fR(1B),
-\fBacl\fR(5), \fBregex\fR(5), \fBstat\fR(2), \fBumask\fR(2),
-\fBattributes\fR(5), \fBenviron\fR(5), \fBfsattr\fR(5), \fBlargefile\fR(5),
-\fBlocale\fR(5), \fBstandards\fR(5)
+.BR chmod (1),
+.BR cpio (1),
+.BR sh (1),
+.BR test (1),
+.BR ls (1B),
+.BR stat (2),
+.BR umask (2),
+.BR acl (7),
+.BR attributes (7),
+.BR environ (7),
+.BR fsattr (7),
+.BR largefile (7),
+.BR locale (7),
+.BR regex (7),
+.BR standards (7)
.SH WARNINGS
The following options are obsolete and will not be supported in future
releases:
diff --git a/usr/src/man/man1/finger.1 b/usr/src/man/man1/finger.1
index 44830a0d89..4b107c5d35 100644
--- a/usr/src/man/man1/finger.1
+++ b/usr/src/man/man1/finger.1
@@ -291,8 +291,11 @@ accounting
.SH SEE ALSO
.sp
.LP
-\fBpasswd\fR(1), \fBwho\fR(1), \fBwhois\fR(1), \fBpasswd\fR(4),
-\fBattributes\fR(5)
+.BR passwd (1),
+.BR who (1),
+.BR whois (1),
+.BR passwd (5),
+.BR attributes (7)
.sp
.LP
Zimmerman, D., \fIThe Finger User Information Protocol\fR, RFC 1288, Center for
diff --git a/usr/src/man/man1/fmt.1 b/usr/src/man/man1/fmt.1
index 1cd01eebf4..7ced037ecb 100644
--- a/usr/src/man/man1/fmt.1
+++ b/usr/src/man/man1/fmt.1
@@ -86,12 +86,15 @@ Input file.
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for a description of the \fBLC_CTYPE\fR environment
+See \fBenviron\fR(7) for a description of the \fBLC_CTYPE\fR environment
variable that affects the execution of \fBfmt\fR.
.SH SEE ALSO
.sp
.LP
-\fBnroff\fR(1), \fBvi\fR(1), \fBattributes\fR(5), \fBenviron\fR(5)
+.BR nroff (1),
+.BR vi (1),
+.BR attributes (7),
+.BR environ (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man1/fmtmsg.1 b/usr/src/man/man1/fmtmsg.1
index 4dc5a9f1a7..1ab60b1b85 100644
--- a/usr/src/man/man1/fmtmsg.1
+++ b/usr/src/man/man1/fmtmsg.1
@@ -518,4 +518,6 @@ No requested functions were executed successfully.
.SH SEE ALSO
.sp
.LP
-\fBaddseverity\fR(3C), \fBfmtmsg\fR(3C), \fBattributes\fR(5)
+.BR addseverity (3C),
+.BR fmtmsg (3C),
+.BR attributes (7)
diff --git a/usr/src/man/man1/fold.1 b/usr/src/man/man1/fold.1
index 98d7f4aae7..b1cd968c29 100644
--- a/usr/src/man/man1/fold.1
+++ b/usr/src/man/man1/fold.1
@@ -173,7 +173,7 @@ example% \fBfold -w 132 bigfile | lp\fR
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBfold\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.SH EXIT STATUS
@@ -201,7 +201,7 @@ An error occurred.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -219,8 +219,11 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBcut\fR(1), \fBpr\fR(1), \fBattributes\fR(5), \fBenviron\fR(5),
-\fBstandards\fR(5)
+.BR cut (1),
+.BR pr (1),
+.BR attributes (7),
+.BR environ (7),
+.BR standards (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man1/ftp.1 b/usr/src/man/man1/ftp.1
index 448cd3d510..3e04f0306f 100644
--- a/usr/src/man/man1/ftp.1
+++ b/usr/src/man/man1/ftp.1
@@ -85,7 +85,7 @@ Turns off interactive prompting during multiple file transfers.
.RS 14n
Specifies the \fBGSS\fR-\fBAPI\fR mechanism to use. The default is to use the
kerberos_v5 mechanism. Supported alternatives are defined in
-\fB/etc/gss/mech\fR (see \fBmech\fR(4)).
+\fB/etc/gss/mech\fR (see \fBmech\fR(5)).
.RE
.sp
@@ -473,7 +473,7 @@ By default, prints an abbreviated listing of the contents of a directory on the
remote machine. This default behavior can be changed to make \fBls\fR a synonym
of the \fBdir\fR command. This change can be achieved by setting
\fBFTP_LS_SENDS_NLST\fR to '\fBno\fR' in \fB/etc/default/ftp\fR or in the
-environment. See \fBftp\fR(4) for details.
+environment. See \fBftp\fR(5) for details.
.sp
The \fB-a\fR option lists all entries, including those that begin with a dot
(\fB\&.\fR), which are normally not listed. The \fB-l\fR option lists files in
@@ -1222,17 +1222,17 @@ The "transfer mode" can be one of \fBstream\fR, \fBblock\fR, or
\fBstream\fR.
.SH USAGE
.LP
-See \fBlargefile\fR(5) for the description of the behavior of \fBftp\fR when
+See \fBlargefile\fR(7) for the description of the behavior of \fBftp\fR when
encountering files greater than or equal to 2 Gbyte (2^31 bytes).
.sp
.LP
-The \fBftp\fR command is IPv6-enabled. See \fBip6\fR(7P).
+The \fBftp\fR command is IPv6-enabled. See \fBip6\fR(4P).
.SH FILES
.LP
\fB~/.netrc\fR
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -1247,9 +1247,18 @@ CSI enabled
.SH SEE ALSO
.LP
-\fBls\fR(1), \fBrcp\fR(1), \fBsh\fR(1), \fBtar\fR(1),
-\fBpopen\fR(3C), \fBftp\fR(4), \fBftpusers\fR(4), \fBmech\fR(4),
-\fBnetrc\fR(4), \fBattributes\fR(5), \fBlargefile\fR(5), \fBip6\fR(7P)
+.BR ls (1),
+.BR rcp (1),
+.BR sh (1),
+.BR tar (1),
+.BR popen (3C),
+.BR ip6 (4P),
+.BR ftp (5),
+.BR ftpusers (5),
+.BR mech (5),
+.BR netrc (5),
+.BR attributes (7),
+.BR largefile (7)
.sp
.LP
Allman, M., Ostermann, S., and Metz, C. \fIRFC 2428, FTP Extensions for IPv6
@@ -1270,7 +1279,7 @@ Network Working Group. June 1994.
.LP
Failure to log in can arise from an explicit denial by the remote \fBFTP\fR
server because the account is listed in \fB/etc/ftpusers\fR. See
-\fBftpusers\fR(4).
+\fBftpusers\fR(5).
.sp
.LP
Correct execution of many commands depends upon proper behavior by the remote
diff --git a/usr/src/man/man1/gcore.1 b/usr/src/man/man1/gcore.1
index e199c9d2ac..a714400454 100644
--- a/usr/src/man/man1/gcore.1
+++ b/usr/src/man/man1/gcore.1
@@ -29,7 +29,7 @@ The following options are supported:
.ad
.RS 15n
Produces core image files with the specified content. The content description
-uses the same tokens as in \fBcoreadm\fR(1M). The \fB-c\fR option does not
+uses the same tokens as in \fBcoreadm\fR(8). The \fB-c\fR option does not
apply to cores produced due to the \fB-p\fR or \fB-g\fR flags.
.RE
@@ -49,7 +49,7 @@ Force. Grabs the target process even if another process has control.
.ad
.RS 15n
Produces core image files in the global core file repository with the global
-content as configured by \fBcoreadm\fR(1M). The command fails if the user does
+content as configured by \fBcoreadm\fR(8). The command fails if the user does
not have permissions to the global core file repository.
.RE
@@ -61,7 +61,7 @@ not have permissions to the global core file repository.
.RS 15n
Substitutes \fIfilename\fR in place of \fBcore\fR as the first part of the name
of the core image files. \fIfilename\fR can contain the same tokens to be
-expanded as the paths in \fBcoreadm\fR(1M).
+expanded as the paths in \fBcoreadm\fR(8).
.RE
.sp
@@ -71,7 +71,7 @@ expanded as the paths in \fBcoreadm\fR(1M).
.ad
.RS 15n
Produces a core image file in the process-specific location with the
-process-specific content for each process as configured by \fBcoreadm\fR(1M).
+process-specific content for each process as configured by \fBcoreadm\fR(8).
The command fails if the user does not have permissions to the per-process core
file repository.
.RE
@@ -132,7 +132,7 @@ core images
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -151,8 +151,12 @@ The command syntax is Evolving. The Output Formats are Unstable.
.SH SEE ALSO
.sp
.LP
-\fBkill\fR(1), \fBcoreadm\fR(1M), \fBsetrlimit\fR(2), \fBcore\fR(4),
-\fBproc\fR(4), \fBattributes\fR(5)
+.BR kill (1),
+.BR setrlimit (2),
+.BR core (5),
+.BR proc (5),
+.BR attributes (7),
+.BR coreadm (8)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man1/gencat.1 b/usr/src/man/man1/gencat.1
index 5796f44080..baf1ddee1b 100644
--- a/usr/src/man/man1/gencat.1
+++ b/usr/src/man/man1/gencat.1
@@ -220,7 +220,7 @@ files is defined in \fBMessage Text Source File Format\fR.
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBgencat\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.SH EXIT STATUS
@@ -248,7 +248,7 @@ An error occurred.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -266,6 +266,11 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBmkmsgs\fR(1), \fBcatgets\fR(3C), \fBcatopen\fR(3C), \fBgettxt\fR(3C),
-\fBnl_types.h\fR(3HEAD), \fBattributes\fR(5), \fBenviron\fR(5),
-\fBstandards\fR(5)
+.BR mkmsgs (1),
+.BR catgets (3C),
+.BR catopen (3C),
+.BR gettxt (3C),
+.BR nl_types.h (3HEAD),
+.BR attributes (7),
+.BR environ (7),
+.BR standards (7)
diff --git a/usr/src/man/man1/genmsg.1 b/usr/src/man/man1/genmsg.1
index 8b761cfe06..8780aa10e6 100644
--- a/usr/src/man/man1/genmsg.1
+++ b/usr/src/man/man1/genmsg.1
@@ -519,7 +519,7 @@ upon \fBproj\fR and would overwrite the results to \fBexample.c\fR and
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBgenmsg\fR: \fBLC_MESSAGES\fR and \fBNLSPATH\fR.
.SH EXIT STATUS
.sp
@@ -546,8 +546,11 @@ An error occurred.
.SH SEE ALSO
.sp
.LP
-\fBgencat\fR(1), \fBcatgets\fR(3C), \fBcatopen\fR(3C), \fBattributes\fR(5),
-\fBenviron\fR(5)
+.BR gencat (1),
+.BR catgets (3C),
+.BR catopen (3C),
+.BR attributes (7),
+.BR environ (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man1/getconf.1 b/usr/src/man/man1/getconf.1
index 6302b4afa3..237692f2ce 100644
--- a/usr/src/man/man1/getconf.1
+++ b/usr/src/man/man1/getconf.1
@@ -228,7 +228,7 @@ prefixes are:
.el o
\fBCS\fR
.sp
-\fBconfstr\fR(3C),
+.BR confstr (3C),
.RE
.RS +4
.TP
@@ -236,7 +236,7 @@ prefixes are:
.el o
\fBPC\fR
.sp
-\fBpathconf\fR(2)
+.BR pathconf (2)
.RE
.RS +4
.TP
@@ -244,7 +244,7 @@ prefixes are:
.el o
\fBSC\fR
.sp
-\fBsysconf\fR(3C)
+.BR sysconf (3C)
.RE
.RS +4
.TP
@@ -252,7 +252,7 @@ prefixes are:
.el o
\fBSI\fR
.sp
-\fBsysinfo\fR(2)
+.BR sysinfo (2)
.RE
.RS +4
.TP
@@ -604,7 +604,7 @@ The symbol \fBPATH\fR also is recognized, yielding the same value as the
.SH USAGE
.sp
.LP
-See \fBlargefile\fR(5) for the description of the behavior of
+See \fBlargefile\fR(7) for the description of the behavior of
\fB/usr/bin/getconf\fR when encountering files greater than or equal to 2 Gbyte
( 2^31 bytes).
.SH EXAMPLES
@@ -691,7 +691,7 @@ program is executed.
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBgetconf\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.sp
@@ -737,7 +737,7 @@ An error occurred.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.SS "/usr/bin/getconf, /usr/xpg4/bin/getconf, /usr/xpg6/bin/getconf"
.sp
@@ -750,7 +750,7 @@ ATTRIBUTE TYPE ATTRIBUTE VALUE
_
Interface Stability Committed
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SS "ksh93"
@@ -773,6 +773,13 @@ The built-in command-line interface is Committed.
.SH SEE ALSO
.sp
.LP
-\fBksh93\fR(1), \fBsh\fR(1), \fBpathconf\fR(2), \fBsysinfo\fR(2),
-\fBconfstr\fR(3C), \fBsysconf\fR(3C), \fBattributes\fR(5), \fBenviron\fR(5),
-\fBlargefile\fR(5), \fBstandards\fR(5)
+.BR ksh93 (1),
+.BR sh (1),
+.BR pathconf (2),
+.BR sysinfo (2),
+.BR confstr (3C),
+.BR sysconf (3C),
+.BR attributes (7),
+.BR environ (7),
+.BR largefile (7),
+.BR standards (7)
diff --git a/usr/src/man/man1/getfacl.1 b/usr/src/man/man1/getfacl.1
index 8eca23b106..86b8997078 100644
--- a/usr/src/man/man1/getfacl.1
+++ b/usr/src/man/man1/getfacl.1
@@ -21,7 +21,7 @@ directories contain default \fBACL\fRs.
.sp
.LP
The \fBgetfacl\fR utility will fail if executed on a file system that supports
-NFSv4 \fBACL\fRs. See \fBacl\fR(5) for a description of the difference
+NFSv4 \fBACL\fRs. See \fBacl\fR(7) for a description of the difference
between the older POSIX-draft \fBACL\fRs and the newer NFSv4 \fBACL\fRs. The
\fBls\fR(1) utility, when used with the \fB-v\fR or \fB-V\fR options, will
display \fBACL\fRs on all types of file system.
@@ -274,7 +274,7 @@ group file
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -288,9 +288,15 @@ Interface Stability Evolving
.TE
.SH SEE ALSO
-\fBchmod\fR(1), \fBls\fR(1), \fBsetfacl\fR(1), \fBacl\fR(2),
-\fBaclsort\fR(3SEC), \fBgroup\fR(4), \fBpasswd\fR(4), \fBacl\fR(5),
-\fBattributes\fR(5)
+.BR chmod (1),
+.BR ls (1),
+.BR setfacl (1),
+.BR acl (2),
+.BR aclsort (3SEC),
+.BR group (5),
+.BR passwd (5),
+.BR acl (7),
+.BR attributes (7)
.SH NOTES
The output from \fBgetfacl\fR is in the correct format for input to the
\fBsetfacl\fR \fB-f\fR command. If the output from \fBgetfacl\fR is redirected
diff --git a/usr/src/man/man1/getlabel.1 b/usr/src/man/man1/getlabel.1
index f67e13e95f..33676508a4 100644
--- a/usr/src/man/man1/getlabel.1
+++ b/usr/src/man/man1/getlabel.1
@@ -71,7 +71,7 @@ Unable to translate label.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -90,8 +90,10 @@ The command line is Committed. The output is Not-an-Interface.
.SH SEE ALSO
.sp
.LP
-\fBsetlabel\fR(1), \fBm_label\fR(3TSOL), \fBlabel_encodings\fR(4),
-\fBattributes\fR(5)
+.BR setlabel (1),
+.BR m_label (3TSOL),
+.BR label_encodings (5),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man1/getopt.1 b/usr/src/man/man1/getopt.1
index 97eb058e6a..a1972367ed 100644
--- a/usr/src/man/man1/getopt.1
+++ b/usr/src/man/man1/getopt.1
@@ -79,7 +79,7 @@ cmd -a -oarg -- filename1 filename2\fR
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -94,8 +94,13 @@ CSI enabled
.SH SEE ALSO
.sp
.LP
-\fBIntro\fR(1), \fBgetopts\fR(1), \fBgetoptcvt\fR(1), \fBsh\fR(1),
-\fBshell_builtins\fR(1), \fBgetopt\fR(3C), \fBattributes\fR(5)
+.BR Intro (1),
+.BR getoptcvt (1),
+.BR getopts (1),
+.BR sh (1),
+.BR shell_builtins (1),
+.BR getopt (3C),
+.BR attributes (7)
.SH DIAGNOSTICS
.sp
.LP
diff --git a/usr/src/man/man1/getoptcvt.1 b/usr/src/man/man1/getoptcvt.1
index 7a1f7f11e0..1a26c3b68e 100644
--- a/usr/src/man/man1/getoptcvt.1
+++ b/usr/src/man/man1/getoptcvt.1
@@ -133,7 +133,7 @@ cmd -o xxx,z,yy b a filename\fR
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBgetopts\fR: \fBLC_CTYPE\fR, \fBLC_MESSAGES\fR,
and \fBNLSPATH\fR.
.sp
@@ -181,7 +181,7 @@ The end of options was encountered or an error occurred.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -196,8 +196,12 @@ CSI enabled
.SH SEE ALSO
.sp
.LP
-\fBIntro\fR(1), \fBgetopts\fR(1), \fBsh\fR(1), \fBshell_builtins\fR(1),
-\fBgetopt\fR(3C), \fBattributes\fR(5)
+.BR Intro (1),
+.BR getopts (1),
+.BR sh (1),
+.BR shell_builtins (1),
+.BR getopt (3C),
+.BR attributes (7)
.SH DIAGNOSTICS
.sp
.LP
diff --git a/usr/src/man/man1/getopts.1 b/usr/src/man/man1/getopts.1
index c536defdb0..ca0fe72284 100644
--- a/usr/src/man/man1/getopts.1
+++ b/usr/src/man/man1/getopts.1
@@ -419,7 +419,7 @@ The \fB-\fR option character prefix is optional. This supports the obsolete
.RS 5n
The number specifies the number of \fB-\fR characters that must prefix long
option names. The default is \fB2\fR. \fB0\fR, \fB1\fR or \fB2\fR are accepted,
-for example \fBp0\fR for \fBdd\fR(1M) and \fBp1\fR for \fBfind\fR(1).
+for example \fBp0\fR for \fBdd\fR(8) and \fBp1\fR for \fBfind\fR(1).
.RE
.sp
@@ -786,7 +786,7 @@ cmd -o xxx,z,yy -b -a filename
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBgetopts\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.sp
@@ -865,7 +865,7 @@ A usage or information message was generated.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.SS "/usr/bin/getopts, sh, ksh"
.sp
@@ -878,7 +878,7 @@ ATTRIBUTE TYPE ATTRIBUTE VALUE
_
Interface Stability Committed
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SS "ksh93"
@@ -897,9 +897,16 @@ Interface Stability Uncommitted
.SH SEE ALSO
.sp
.LP
-\fBIntro\fR(1), \fBgetoptcvt\fR(1), \fBksh\fR(1), \fBksh93\fR(1), \fBps\fR(1),
-\fBsh\fR(1), \fBgetopt\fR(3C), \fBattributes\fR(5), \fBenviron\fR(5),
-\fBstandards\fR(5)
+.BR Intro (1),
+.BR getoptcvt (1),
+.BR ksh (1),
+.BR ksh93 (1),
+.BR ps (1),
+.BR sh (1),
+.BR getopt (3C),
+.BR attributes (7),
+.BR environ (7),
+.BR standards (7)
.SH DIAGNOSTICS
.sp
.LP
diff --git a/usr/src/man/man1/gettext.1 b/usr/src/man/man1/gettext.1
index 129792825b..8d8884436b 100644
--- a/usr/src/man/man1/gettext.1
+++ b/usr/src/man/man1/gettext.1
@@ -157,8 +157,12 @@ Specifies the pathname to the message database. If present, replaces
.SH SEE ALSO
.sp
.LP
-\fBecho\fR(1), \fBmsgfmt\fR(1), \fBprintf\fR(1), \fBgettext\fR(3C),
-\fBsetlocale\fR(3C), \fBattributes\fR(5)
+.BR echo (1),
+.BR msgfmt (1),
+.BR printf (1),
+.BR gettext (3C),
+.BR setlocale (3C),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man1/gettxt.1 b/usr/src/man/man1/gettxt.1
index bbdd452a5d..9aa2e45ec1 100644
--- a/usr/src/man/man1/gettxt.1
+++ b/usr/src/man/man1/gettxt.1
@@ -97,7 +97,7 @@ will try to retrieve the 10th message from
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBgettxt\fR: \fBLC_CTYPE\fR and
\fB\fR\fBLC_MESSAGES\fR\fB\&. \fR
.sp
@@ -150,7 +150,7 @@ message files for different languages created by \fBmkmsgs\fR(1)
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -165,5 +165,10 @@ CSI Enabled
.SH SEE ALSO
.sp
.LP
-\fBexstr\fR(1), \fBmkmsgs\fR(1), \fBsrchtxt\fR(1), \fBgettxt\fR(3C),
-\fBsetlocale\fR(3C), \fBattributes\fR(5), \fBenviron\fR(5)
+.BR exstr (1),
+.BR mkmsgs (1),
+.BR srchtxt (1),
+.BR gettxt (3C),
+.BR setlocale (3C),
+.BR attributes (7),
+.BR environ (7)
diff --git a/usr/src/man/man1/getzonepath.1 b/usr/src/man/man1/getzonepath.1
index e4f5944dd7..f712b2376d 100644
--- a/usr/src/man/man1/getzonepath.1
+++ b/usr/src/man/man1/getzonepath.1
@@ -32,7 +32,7 @@ read-only operations.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -74,13 +74,14 @@ Usage error
.ad
.RS 5n
Failure; error message is the system error number from
-\fBgetzonerootbylabel\fR(3TSOL)
+.BR getzonerootbylabel (3TSOL)
.RE
.SH SEE ALSO
.sp
.LP
-\fBgetzonerootbylabel\fR(3TSOL), \fBattributes\fR(5)
+.BR getzonerootbylabel (3TSOL),
+.BR attributes (7)
.sp
.LP
\fIAcquiring a Sensitivity Label\fR in \fISolaris Trusted Extensions
diff --git a/usr/src/man/man1/glob.1 b/usr/src/man/man1/glob.1
index 2144bfec3a..de08e0e72e 100644
--- a/usr/src/man/man1/glob.1
+++ b/usr/src/man/man1/glob.1
@@ -23,4 +23,6 @@ characters in the output.
.SH SEE ALSO
.sp
.LP
-\fBcsh\fR(1), \fBecho\fR(1), \fBattributes\fR(5)
+.BR csh (1),
+.BR echo (1),
+.BR attributes (7)
diff --git a/usr/src/man/man1/gprof.1 b/usr/src/man/man1/gprof.1
index feb128771c..dc55d3b342 100644
--- a/usr/src/man/man1/gprof.1
+++ b/usr/src/man/man1/gprof.1
@@ -53,7 +53,7 @@ profile index numbers.
.sp
.LP
A single function may be split into subfunctions for profiling by means of the
-\fBMARK\fR macro. See \fBprof\fR(5).
+\fBMARK\fR macro. See \fBprof\fR(7).
.sp
.LP
Beware of quantization errors. The granularity of the sampling is shown, but
@@ -281,9 +281,17 @@ summarized dynamic call-graph and profile
.SH SEE ALSO
.LP
-\fBcc\fR(1), \fBld.so.1\fR(1), \fBprof\fR(1), \fBexit\fR(2), \fBpcsample\fR(2),
-\fBprofil\fR(2), \fBmalloc\fR(3C), \fBmalloc\fR(3MALLOC), \fBmonitor\fR(3C),
-\fBattributes\fR(5), \fBprof\fR(5)
+.BR cc (1),
+.BR ld.so.1 (1),
+.BR prof (1),
+.BR exit (2),
+.BR pcsample (2),
+.BR profil (2),
+.BR malloc (3C),
+.BR monitor (3C),
+.BR malloc (3MALLOC),
+.BR attributes (7),
+.BR prof (7)
.sp
.LP
Graham, S.L., Kessler, P.B., McKusick, M.K., \fIgprof: A Call Graph Execution
diff --git a/usr/src/man/man1/grep.1 b/usr/src/man/man1/grep.1
index be5014192d..5cdfb82bbe 100644
--- a/usr/src/man/man1/grep.1
+++ b/usr/src/man/man1/grep.1
@@ -133,11 +133,11 @@ Unless the
or
.Fl F
option is also specified, each pattern is treated as a BRE, as described in
-.Xr regex 5 .
+.Xr regex 7 .
.It Fl E
Matches using extended regular expressions.
Treats each pattern specified as an ERE, as described in
-.Xr regex 5 .
+.Xr regex 7 .
If any entire ERE pattern matches an input line, the line is matched.
A null ERE matches every line.
.It Fl f Ar pattern_file
@@ -153,7 +153,7 @@ Unless the
or
.Fl F
option is also specified, each pattern is treated as a BRE, as described in
-.Xr regex 5 .
+.Xr regex 7 .
.It Fl F
Matches using fixed strings.
Treats each pattern specified as a string instead of a regular expression.
@@ -323,7 +323,7 @@ finds a match even if
detected an access or read error on earlier file operands).
.Ss Large File Behavior
See
-.Xr largefile 5
+.Xr largefile 7
for the description of the behavior of
.Nm
when encountering files greater than or equal to 2 Gbyte (2^31 bytes).
@@ -411,7 +411,7 @@ $ for f in *.gz; do
.El
.Sh ENVIRONMENT VARIABLES
See
-.Xr environ 5
+.Xr environ 7
for descriptions of the following environment variables that affect the
execution of
.Nm :
@@ -425,11 +425,11 @@ and
.Sh SEE ALSO
.Xr sed 1 ,
.Xr sh 1 ,
-.Xr attributes 5 ,
-.Xr environ 5 ,
-.Xr largefile 5 ,
-.Xr regex 5 ,
-.Xr standards 5
+.Xr attributes 7 ,
+.Xr environ 7 ,
+.Xr largefile 7 ,
+.Xr regex 7 ,
+.Xr standards 7
.Sh STANDARDS
The
.Nm
diff --git a/usr/src/man/man1/groups.1 b/usr/src/man/man1/groups.1
index d7f86c8268..f95311ffe3 100644
--- a/usr/src/man/man1/groups.1
+++ b/usr/src/man/man1/groups.1
@@ -58,4 +58,6 @@ example%
.SH SEE ALSO
.sp
.LP
-\fBgroup\fR(4), \fBpasswd\fR(4), \fBattributes\fR(5)
+.BR group (5),
+.BR passwd (5),
+.BR attributes (7)
diff --git a/usr/src/man/man1/hash.1 b/usr/src/man/man1/hash.1
index 59552ad617..4d05160745 100644
--- a/usr/src/man/man1/hash.1
+++ b/usr/src/man/man1/hash.1
@@ -170,7 +170,7 @@ search process.
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBhash\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.sp
@@ -207,7 +207,7 @@ An error occurred.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -223,5 +223,9 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBcsh\fR(1), \fBksh\fR(1), \fBsh\fR(1), \fBattributes\fR(5), \fBenviron\fR(5),
-\fBstandards\fR(5)
+.BR csh (1),
+.BR ksh (1),
+.BR sh (1),
+.BR attributes (7),
+.BR environ (7),
+.BR standards (7)
diff --git a/usr/src/man/man1/head.1 b/usr/src/man/man1/head.1
index 5e3fd90c55..1a7289f886 100644
--- a/usr/src/man/man1/head.1
+++ b/usr/src/man/man1/head.1
@@ -276,7 +276,7 @@ standard input is used.
.RE
.SH USAGE
-See \fBlargefile\fR(5) for the description of the behavior of \fBhead\fR when
+See \fBlargefile\fR(7) for the description of the behavior of \fBhead\fR when
encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
.SH EXAMPLES
\fBExample 1 \fRWriting the First Ten Lines of All Files
@@ -294,7 +294,7 @@ example% \fBhead *\fR
.sp
.SH ENVIRONMENT VARIABLES
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBhead\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.SH EXIT STATUS
@@ -318,7 +318,7 @@ An error occurred.
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.SS "/usr/bin/head"
.TS
@@ -331,7 +331,7 @@ CSI Enabled
_
Interface Stability Committed
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SS "ksh93"
@@ -350,5 +350,12 @@ Interface Stability See below.
The \fBksh93\fR built-in binding to \fB/bin\fR and \fB/usr/bin\fR is Volatile.
The built-in interfaces are Uncommitted.
.SH SEE ALSO
-\fBcat\fR(1), \fBksh93\fR(1), \fBmore\fR(1), \fBpg\fR(1), \fBtail\fR(1),
-\fBattributes\fR(5), \fBenviron\fR(5), \fBlargefile\fR(5), \fBstandards\fR(5)
+.BR cat (1),
+.BR ksh93 (1),
+.BR more (1),
+.BR pg (1),
+.BR tail (1),
+.BR attributes (7),
+.BR environ (7),
+.BR largefile (7),
+.BR standards (7)
diff --git a/usr/src/man/man1/history.1 b/usr/src/man/man1/history.1
index 981781d18b..a51a2ddbc0 100644
--- a/usr/src/man/man1/history.1
+++ b/usr/src/man/man1/history.1
@@ -1008,7 +1008,7 @@ after the first are displayed as:
.SH ENVIRONMENT VARIABLES
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBfc\fR: \fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and
\fBNLSPATH\fR.
.sp
@@ -1091,6 +1091,12 @@ Otherwise, the exit status is that of the commands executed by \fBfc\fR or
\fBhist\fR.
.SH SEE ALSO
.LP
-\fBcsh\fR(1), \fBed\fR(1), \fBksh\fR(1), \fBksh93\fR(1), \fBset\fR(1),
-\fBsh\fR(1), \fBsource\fR(1), \fBattributes\fR(5),
-\fBenviron\fR(5)
+.BR csh (1),
+.BR ed (1),
+.BR ksh (1),
+.BR ksh93 (1),
+.BR set (1),
+.BR sh (1),
+.BR source (1),
+.BR attributes (7),
+.BR environ (7)
diff --git a/usr/src/man/man1/hostid.1 b/usr/src/man/man1/hostid.1
index fe544d7da8..5de9d82820 100644
--- a/usr/src/man/man1/hostid.1
+++ b/usr/src/man/man1/hostid.1
@@ -22,4 +22,7 @@ likely to differ when \fBhostid\fR is run on a different machine.
.SH SEE ALSO
.sp
.LP
-\fBsysinfo\fR(2), \fBgethostid\fR(3C), \fBattributes\fR(5), \fBzones\fR(5)
+.BR sysinfo (2),
+.BR gethostid (3C),
+.BR attributes (7),
+.BR zones (7)
diff --git a/usr/src/man/man1/hostname.1 b/usr/src/man/man1/hostname.1
index 74e9c16938..661ca1c048 100644
--- a/usr/src/man/man1/hostname.1
+++ b/usr/src/man/man1/hostname.1
@@ -29,7 +29,7 @@ system is configured.
For most systems, the persistent hostname is stored in the file
.Pa /etc/nodename .
See
-.Xr nodename 4
+.Xr nodename 5
for more information on how to update it.
Note, the
.Pa /etc/nodename
@@ -41,5 +41,5 @@ Prints only the part of the hostname preceding the first dot.
.El
.Sh SEE ALSO
.Xr uname 1 ,
-.Xr nodename 4 ,
-.Xr attributes 5
+.Xr nodename 5 ,
+.Xr attributes 7
diff --git a/usr/src/man/man1/iconv.1 b/usr/src/man/man1/iconv.1
index 0ea9e6a13c..087ae86d21 100644
--- a/usr/src/man/man1/iconv.1
+++ b/usr/src/man/man1/iconv.1
@@ -78,7 +78,7 @@ implementation-defined conversion is performed on this character.
.sp
.LP
The list of supported conversions and the locations of the associated
-conversion tables are provided in the \fBiconv\fR(5) manual page.
+conversion tables are provided in the \fBiconv\fR(7) manual page.
.SH OPTIONS
.sp
.LP
@@ -126,7 +126,7 @@ character. It is interpreted as the name of one of the codeset descriptions.
.ad
.RS 12n
The \fIfrommap\fR option-argument must contain a slash character. It is
-interpreted as the pathname of a charmap file as defined in \fBcharmap\fR(5).
+interpreted as the pathname of a charmap file as defined in \fBcharmap\fR(7).
If the pathname does not represent a valid, readable charmap file, the results
are undefined.
.RE
@@ -186,7 +186,7 @@ It is interpreted as the name of one of the codeset descriptions.
.ad
.RS 10n
The \fItomap\fR option-argument must contain a slash character. It is
-interpreted as the pathname of a charmap file as defined in \fBcharmap\fR(5).
+interpreted as the pathname of a charmap file as defined in \fBcharmap\fR(7).
If the pathname does not represent a valid, readable charmap file, the results
are undefined.
.RE
@@ -232,7 +232,7 @@ example% \fBiconv -f 8859 -t 646fr mail1 > mail.local\fR
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBiconv\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.SH EXIT STATUS
@@ -270,7 +270,7 @@ list of conversions supported by conversion tables
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -286,8 +286,14 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBiconv\fR(3C), \fBiconv_open\fR(3C), \fBattributes\fR(5), \fBcharmap\fR(5),
-\fBenviron\fR(5), \fBiconv\fR(5), \fBiconv_unicode\fR(5), \fBstandards\fR(5)
+.BR iconv (3C),
+.BR iconv_open (3C),
+.BR attributes (7),
+.BR charmap (7),
+.BR environ (7),
+.BR iconv (7),
+.BR iconv_unicode (7),
+.BR standards (7)
.SH NOTES
.sp
.LP
@@ -303,4 +309,4 @@ When \fIfromcode\fR or \fItocode\fR is specified for the codeset conversion,
\fBiconv\fR uses the \fBiconv_open\fR(3C) function. If \fBiconv_open\fR(3C)
fails to open the specified codeset conversion, \fBiconv\fR searches for an
appropriate conversion table. As for the supported codeset conversion by
-\fBiconv_open\fR(3C), please refer to \fBiconv\fR(5) and \fBiconv_locale\fR(5).
+\fBiconv_open\fR(3C), please refer to \fBiconv\fR(7) and \fBiconv_locale\fR(7).
diff --git a/usr/src/man/man1/indxbib.1 b/usr/src/man/man1/indxbib.1
index abb8453b8a..08436b2db9 100644
--- a/usr/src/man/man1/indxbib.1
+++ b/usr/src/man/man1/indxbib.1
@@ -94,8 +94,12 @@ reference file
.SH SEE ALSO
.sp
.LP
-\fBaddbib\fR(1), \fBlookbib\fR(1), \fBrefer\fR(1), \fBroffbib\fR(1),
-\fBsortbib\fR(1), \fBattributes\fR(5)
+.BR addbib (1),
+.BR lookbib (1),
+.BR refer (1),
+.BR roffbib (1),
+.BR sortbib (1),
+.BR attributes (7)
.SH BUGS
.sp
.LP
diff --git a/usr/src/man/man1/ipcrm.1 b/usr/src/man/man1/ipcrm.1
index 0a7688a695..95b4468239 100644
--- a/usr/src/man/man1/ipcrm.1
+++ b/usr/src/man/man1/ipcrm.1
@@ -30,7 +30,7 @@ The following option is supported:
.ad
.RS 11n
Keys specified by other options refer to facilities in the specified zone (see
-\fBzones\fR(5)). The default is the zone in which the command is executing.
+\fBzones\fR(7)). The default is the zone in which the command is executing.
This option is only useful when the command is executed in the global zone.
.RE
@@ -108,13 +108,13 @@ keys.
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBipcrm\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -130,7 +130,18 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBipcs\fR(1), \fBmsgctl\fR(2), \fBmsgget\fR(2), \fBmsgrcv\fR(2),
-\fBmsgsnd\fR(2), \fBsemctl\fR(2), \fBsemget\fR(2), \fBsemop\fR(2),
-\fBshmctl\fR(2), \fBshmget\fR(2), \fBshmop\fR(2), \fBattributes\fR(5),
-\fBenviron\fR(5), \fBstandards\fR(5), \fBzones\fR(5)
+.BR ipcs (1),
+.BR msgctl (2),
+.BR msgget (2),
+.BR msgrcv (2),
+.BR msgsnd (2),
+.BR semctl (2),
+.BR semget (2),
+.BR semop (2),
+.BR shmctl (2),
+.BR shmget (2),
+.BR shmop (2),
+.BR attributes (7),
+.BR environ (7),
+.BR standards (7),
+.BR zones (7)
diff --git a/usr/src/man/man1/ipcs.1 b/usr/src/man/man1/ipcs.1
index d029b52b52..0148b190ec 100644
--- a/usr/src/man/man1/ipcs.1
+++ b/usr/src/man/man1/ipcs.1
@@ -173,7 +173,7 @@ access permissions for all facilities, time of last \fBmsgsnd\fR(2) and last
.ad
.RS 12n
Prints information about facilities associated with the specified zone (see
-\fBzones\fR(5)). The zone can be specified as either a name or a numeric id.
+\fBzones\fR(7)). The zone can be specified as either a name or a numeric id.
The default is to display information about the zone in which the command is
executing. Notice that this option is only useful when executing in the global
zone.
@@ -551,7 +551,7 @@ The zone with which the facility is associated.
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBipcs\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.sp
@@ -585,7 +585,7 @@ user names
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -597,17 +597,29 @@ ATTRIBUTE TYPE ATTRIBUTE VALUE
_
Interface Stability Committed
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.sp
.LP
-\fBipcrm\fR(1), \fBmsgget\fR(2), \fBmsgids\fR(2), \fBmsgrcv\fR(2),
-\fBmsgsnap\fR(2), \fBmsgsnd\fR(2), \fBsemget\fR(2), \fBsemids\fR(2),
-\fBsemop\fR(2), \fBshmctl\fR(2), \fBshmget\fR(2), \fBshmids\fR(2),
-\fBshmop\fR(2), \fBattributes\fR(5), \fBenviron\fR(5), \fBstandards\fR(5),
-\fBzones\fR(5)
+.BR ipcrm (1),
+.BR msgget (2),
+.BR msgids (2),
+.BR msgrcv (2),
+.BR msgsnap (2),
+.BR msgsnd (2),
+.BR semget (2),
+.BR semids (2),
+.BR semop (2),
+.BR shmctl (2),
+.BR shmget (2),
+.BR shmids (2),
+.BR shmop (2),
+.BR attributes (7),
+.BR environ (7),
+.BR standards (7),
+.BR zones (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man1/isainfo.1 b/usr/src/man/man1/isainfo.1
index 3ecebf30fa..8384a2ddcb 100644
--- a/usr/src/man/man1/isainfo.1
+++ b/usr/src/man/man1/isainfo.1
@@ -153,5 +153,10 @@ attributes of the system on which it is running. An error message is printed to
.SH SEE ALSO
.sp
.LP
-\fBisalist\fR(1), \fBuname\fR(1), \fBpsrinfo\fR(1M), \fBgetisax\fR(2),
-\fBsysinfo\fR(2), \fBattributes\fR(5), \fBisalist\fR(5)
+.BR isalist (1),
+.BR uname (1),
+.BR getisax (2),
+.BR sysinfo (2),
+.BR attributes (7),
+.BR isalist (7),
+.BR psrinfo (8)
diff --git a/usr/src/man/man1/isalist.1 b/usr/src/man/man1/isalist.1
index 1c18b5c47e..a7cf9a7641 100644
--- a/usr/src/man/man1/isalist.1
+++ b/usr/src/man/man1/isalist.1
@@ -31,7 +31,7 @@ Programs compiled for instruction sets that do not appear in the list will most
likely experience performance degradation or not run at all on this machine.
.sp
.LP
-The instruction set names known to the system are listed in \fBisalist\fR(5).
+The instruction set names known to the system are listed in \fBisalist\fR(7).
These names might or might not match predefined names or compiler options in
the C language compilation system,
.sp
@@ -41,5 +41,9 @@ This command is obsolete and may be removed in a future version of Solaris. See
.SH SEE ALSO
.sp
.LP
-\fBisainfo\fR(1), \fBoptisa\fR(1), \fBuname\fR(1), \fBsysinfo\fR(2),
-\fBattributes\fR(5), \fBisalist\fR(5)
+.BR isainfo (1),
+.BR optisa (1),
+.BR uname (1),
+.BR sysinfo (2),
+.BR attributes (7),
+.BR isalist (7)
diff --git a/usr/src/man/man1/jobs.1 b/usr/src/man/man1/jobs.1
index ae4bf0b557..72a42a2d41 100644
--- a/usr/src/man/man1/jobs.1
+++ b/usr/src/man/man1/jobs.1
@@ -843,7 +843,7 @@ and \fBcommand\fR fields.
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBjobs\fR, \fBfg\fR, and \fBbg\fR: \fBLANG\fR,
\fBLC_ALL\fR, \fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.SH EXIT STATUS
@@ -936,7 +936,7 @@ One more jobs does not exist or there are no background jobs.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.SS "csh, sh, ksh"
.sp
@@ -949,7 +949,7 @@ ATTRIBUTE TYPE ATTRIBUTE VALUE
_
Interface Stability Committed
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SS "ksh93"
@@ -968,7 +968,17 @@ Interface Stability Uncommitted
.SH SEE ALSO
.sp
.LP
-\fBcsh\fR(1), \fBkill\fR(1), \fBksh\fR(1), \fBksh93\fR(1), \fBps\fR(1),
-\fBsh\fR(1), \fBstop\fR(1), \fBshell_builtins\fR(1), \fBstty\fR(1),
-\fBwait\fR(1), \fBsignal.h\fR(3HEAD), \fBattributes\fR(5), \fBenviron\fR(5),
-\fBstandards\fR(5)
+.BR csh (1),
+.BR kill (1),
+.BR ksh (1),
+.BR ksh93 (1),
+.BR ps (1),
+.BR sh (1),
+.BR shell_builtins (1),
+.BR stop (1),
+.BR stty (1),
+.BR wait (1),
+.BR signal.h (3HEAD),
+.BR attributes (7),
+.BR environ (7),
+.BR standards (7)
diff --git a/usr/src/man/man1/join.1 b/usr/src/man/man1/join.1
index aef58d3fcc..2e743875bf 100644
--- a/usr/src/man/man1/join.1
+++ b/usr/src/man/man1/join.1
@@ -227,7 +227,7 @@ normally the first in each line (see \fBsort\fR(1)).
.SH USAGE
.sp
.LP
-See \fBlargefile\fR(5) for the description of the behavior of \fBjoin\fR when
+See \fBlargefile\fR(7) for the description of the behavior of \fBjoin\fR when
encountering files greater than or equal to 2 Gbyte (2^31 bytes).
.SH EXAMPLES
.LP
@@ -315,7 +315,7 @@ Yasushi +2 345-678-9012 +2 345-678-9011
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBjoin\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, \fBLC_COLLATE\fR, and \fBNLSPATH\fR.
.SH EXIT STATUS
@@ -343,7 +343,7 @@ An error occurred.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -361,8 +361,14 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBawk\fR(1), \fBcomm\fR(1), \fBsort\fR(1), \fBuniq\fR(1), \fBattributes\fR(5),
-\fBenviron\fR(5), \fBlargefile\fR(5), \fBstandards\fR(5)
+.BR awk (1),
+.BR comm (1),
+.BR sort (1),
+.BR uniq (1),
+.BR attributes (7),
+.BR environ (7),
+.BR largefile (7),
+.BR standards (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man1/kbd.1 b/usr/src/man/man1/kbd.1
index c0b753a7ca..8539577654 100644
--- a/usr/src/man/man1/kbd.1
+++ b/usr/src/man/man1/kbd.1
@@ -98,17 +98,17 @@ to the
.Pa /etc/ppp/options
file or any of the other configuration files used for the connection.
See
-.Xr pppd 1M .
+.Xr pppd 8 .
.Pp
SLIP has no comparable capability, and must not be used if the Alternate Break
sequence is in use.
.Pp
The Alternate Break sequence has no effect on the keyboard abort.
For more information on the Alternate Break sequence, see
-.Xr zs 7D ,
-.Xr se 7D ,
+.Xr zs 4D ,
+.Xr se 4D ,
and
-.Xr asy 7D .
+.Xr asy 4D .
.Pp
On many systems, the default effect of the keyboard abort sequence is to
suspend the operating system and enter the debugger or the monitor.
@@ -157,9 +157,9 @@ Enables the alternate effect of the keyboard abort sequences (suspend the
operating system and enter the debugger or the monitor) upon receiving the
Alternate Break character sequence on the console.
The Alternate Break sequence is defined by the drivers
-.Xr asy 7D ,
-.Xr se 7D ,
-.Xr zs 7D .
+.Xr asy 4D ,
+.Xr se 4D ,
+.Xr zs 4D .
Due to a risk of incorrect sequence interpretation, binary protocols cannot be
run over the serial console port when this value is used.
.El
@@ -361,17 +361,17 @@ The following example sets the keyboard beeper frequency:
.Sh SEE ALSO
.Xr loadkeys 1 ,
.Xr svcs 1 ,
-.Xr kadb 1M ,
-.Xr pppd 1M ,
-.Xr svcadm 1M ,
-.Xr keytables 4 ,
-.Xr attributes 5 ,
-.Xr smf 5 ,
-.Xr asy 7D ,
-.Xr se 7D ,
-.Xr virtualkm 7D ,
-.Xr zs 7D ,
-.Xr kb 7M
+.Xr asy 4D ,
+.Xr se 4D ,
+.Xr virtualkm 4D ,
+.Xr zs 4D ,
+.Xr kb 4M ,
+.Xr keytables 5 ,
+.Xr attributes 7 ,
+.Xr smf 7 ,
+.Xr kadb 8 ,
+.Xr pppd 8 ,
+.Xr svcadm 8
.Sh NOTES
Some server systems have key switches with a
.Sy secure
@@ -391,16 +391,16 @@ setting.
The
.Nm
service is managed by the service management facility,
-.Xr smf 5 ,
+.Xr smf 7 ,
under the service identifier:
.Pp
.Dl svc:/system/keymap:default
.Pp
Administrative actions on this service, such as enabling, disabling, or
requesting restart, can be performed using
-.Xr svcadm 1M .
+.Xr svcadm 8 .
Use
-.Xr svccfg 1M
+.Xr svccfg 8
to make configuration changes and to view configuration information for this
service.
The service's status can be queried using the
diff --git a/usr/src/man/man1/kdestroy.1 b/usr/src/man/man1/kdestroy.1
index 7d37cf33dd..f0b8d19ca1 100644
--- a/usr/src/man/man1/kdestroy.1
+++ b/usr/src/man/man1/kdestroy.1
@@ -65,7 +65,7 @@ the tickets.
\fB\fBKRB5CCNAME\fR\fR
.ad
.RS 14n
-Location of the credentials (ticket) cache. See \fBkrb5envvar\fR(5) for syntax
+Location of the credentials (ticket) cache. See \fBkrb5envvar\fR(7) for syntax
and details.
.RE
@@ -82,7 +82,7 @@ Default credentials cache (\fIuid\fR is the decimal \fBUID\fR of the user).
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -102,8 +102,11 @@ Command output Unstable
.SH SEE ALSO
.sp
.LP
-\fBkinit\fR(1), \fBklist\fR(1), \fBattributes\fR(5), \fBkerberos\fR(5),
-\fBkrb5envvar\fR(5)
+.BR kinit (1),
+.BR klist (1),
+.BR attributes (7),
+.BR kerberos (7),
+.BR krb5envvar (7)
.SH BUGS
.sp
.LP
diff --git a/usr/src/man/man1/keylogin.1 b/usr/src/man/man1/keylogin.1
index 3461b5ef37..5c77b492a7 100644
--- a/usr/src/man/man1/keylogin.1
+++ b/usr/src/man/man1/keylogin.1
@@ -17,11 +17,11 @@ keylogin \- decrypt and store secret key with keyserv
.LP
The \fBkeylogin\fR command prompts for a password, and uses it to decrypt the
user's secret key. The key can be found in the \fB/etc/publickey\fR file (see
-\fBpublickey\fR(4)) or the NIS map ``publickey.byname''
+\fBpublickey\fR(5)) or the NIS map ``publickey.byname''
in the user's home domain. The sources and their lookup order
-are specified in the \fB/etc/nsswitch.conf\fR file. See \fBnsswitch.conf\fR(4).
+are specified in the \fB/etc/nsswitch.conf\fR file. See \fBnsswitch.conf\fR(5).
Once decrypted, the user's secret key is stored by the local key server
-process, \fBkeyserv\fR(1M). This stored key is used when issuing requests to
+process, \fBkeyserv\fR(8). This stored key is used when issuing requests to
any secure RPC services, such as \fBNFS\fR. The program
\fBkeylogout\fR(1) can be used to delete the key stored by \fBkeyserv\fR
\fB\&.\fR
@@ -29,7 +29,7 @@ any secure RPC services, such as \fBNFS\fR. The program
.LP
\fBkeylogin\fR fails if it cannot get the caller's key, or the password given
is incorrect. For a new user or host, a new key can be added using
-\fBnewkey\fR(1M).
+\fBnewkey\fR(8).
.SH OPTIONS
.LP
The following options are supported:
@@ -43,7 +43,7 @@ Update the \fB/etc/.rootkey\fR file. This file holds the unencrypted secret key
of the superuser. Only the superuser can use this option. It is used so that
processes running as superuser can issue authenticated requests without
requiring that the administrator explicitly run \fBkeylogin\fR as superuser at
-system startup time. See \fBkeyserv\fR(1M). The \fB-r\fR option should be used
+system startup time. See \fBkeyserv\fR(8). The \fB-r\fR option should be used
by the administrator when the host's entry in the publickey database has
changed, and the \fB/etc/.rootkey\fR file has become out-of-date with respect
to the actual key pair stored in the publickey database. The permissions on the
@@ -62,6 +62,11 @@ superuser's secret key
.SH SEE ALSO
.LP
-\fBchkey\fR(1), \fBkeylogout\fR(1), \fBlogin\fR(1), \fBkeyserv\fR(1M),
-\fBnewkey\fR(1M), \fBnsswitch.conf\fR(4), \fBpublickey\fR(4),
-\fBattributes\fR(5)
+.BR chkey (1),
+.BR keylogout (1),
+.BR login (1),
+.BR nsswitch.conf (5),
+.BR publickey (5),
+.BR attributes (7),
+.BR keyserv (8),
+.BR newkey (8)
diff --git a/usr/src/man/man1/keylogout.1 b/usr/src/man/man1/keylogout.1
index ba440b1bec..de705c74cc 100644
--- a/usr/src/man/man1/keylogout.1
+++ b/usr/src/man/man1/keylogout.1
@@ -15,7 +15,7 @@ keylogout \- delete stored secret key with keyserv
.SH DESCRIPTION
.LP
\fBkeylogout\fR deletes the key stored by the key server process
-\fBkeyserv\fR(1M). Further access to the key is revoked; however, current
+\fBkeyserv\fR(8). Further access to the key is revoked; however, current
session keys might remain valid until they expire or are refreshed.
.sp
.LP
@@ -40,6 +40,11 @@ services, such as \fBNFS,\fR that are started by the superuser.
.SH SEE ALSO
.LP
-\fBat\fR(1), \fBchkey\fR(1), \fBlogin\fR(1), \fBkeylogin\fR(1),
-\fBkeyserv\fR(1M), \fBnewkey\fR(1M), \fBpublickey\fR(4),
-\fBattributes\fR(5)
+.BR at (1),
+.BR chkey (1),
+.BR keylogin (1),
+.BR login (1),
+.BR publickey (5),
+.BR attributes (7),
+.BR keyserv (8),
+.BR newkey (8)
diff --git a/usr/src/man/man1/kill.1 b/usr/src/man/man1/kill.1
index f772da7421..9899eaca26 100644
--- a/usr/src/man/man1/kill.1
+++ b/usr/src/man/man1/kill.1
@@ -292,7 +292,7 @@ example% \fBkill -- -123\fR
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBkill\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.SH EXIT STATUS
@@ -321,7 +321,7 @@ An error occurred.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.SS "/usr/bin/kill, csh, ksh, sh"
.sp
@@ -336,7 +336,7 @@ CSI Enabled
_
Interface Stability Committed
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SS "ksh93"
@@ -357,10 +357,21 @@ Interface Stability Uncommitted
.SH SEE ALSO
.sp
.LP
-\fBcsh\fR(1), \fBgetconf\fR(1), \fBjobs\fR(1), \fBksh\fR(1), \fBksh93\fR(1),
-\fBps\fR(1), \fBsh\fR(1), \fBshell_builtins\fR(1), \fBwait\fR(1),
-\fBkill\fR(2), \fBsignal\fR(3C), \fBsignal.h\fR(3HEAD), \fBattributes\fR(5),
-\fBenviron\fR(5), \fBstandards\fR(5)
+.BR csh (1),
+.BR getconf (1),
+.BR jobs (1),
+.BR ksh (1),
+.BR ksh93 (1),
+.BR ps (1),
+.BR sh (1),
+.BR shell_builtins (1),
+.BR wait (1),
+.BR kill (2),
+.BR signal (3C),
+.BR signal.h (3HEAD),
+.BR attributes (7),
+.BR environ (7),
+.BR standards (7)
.SH NOTES
.SS "/usr/bin/kill"
.sp
diff --git a/usr/src/man/man1/kinit.1 b/usr/src/man/man1/kinit.1
index e3fbbc1eb6..ecbf329fa6 100644
--- a/usr/src/man/man1/kinit.1
+++ b/usr/src/man/man1/kinit.1
@@ -20,7 +20,7 @@ The \fBkinit\fR command is used to obtain and cache an initial ticket-granting
ticket (credential) for \fIprincipal\fR. This ticket is used for authentication
by the Kerberos system. Only users with Kerberos principals can use the
Kerberos system. For information about Kerberos principals, see
-\fBkerberos\fR(5).
+\fBkerberos\fR(7).
.sp
.LP
When you use \fBkinit\fR without options, the utility prompts for your
@@ -121,7 +121,7 @@ not specified, the default ticket lifetime (configured by each site) is used.
Specifying a ticket lifetime longer than the maximum ticket lifetime
(configured by each site) results in a ticket with the maximum lifetime. See
the \fBTime\fR \fBFormats\fR section for the valid time duration formats that
-you can specify for \fIlifetime\fR. See \fBkdc.conf\fR(4) and \fBkadmin\fR(1M)
+you can specify for \fIlifetime\fR. See \fBkdc.conf\fR(5) and \fBkadmin\fR(8)
(for \fBgetprinc\fR command to verify the lifetime values for the server
principal).
.sp
@@ -183,8 +183,8 @@ option allows a user to explicitly obtain a non-proxiable ticket.
.RS 24n
Requests renewable tickets, with a total lifetime of \fIrenewable_life\fR. See
the \fBTime\fR \fBFormats\fR section for the valid time duration formats that
-you can specify for \fIrenewable_life\fR. See \fBkdc.conf\fR(4) and
-\fBkadmin\fR(1M) (for \fBgetprinc\fR command to verify the lifetime values for
+you can specify for \fIrenewable_life\fR. See \fBkdc.conf\fR(5) and
+\fBkadmin\fR(8) (for \fBgetprinc\fR command to verify the lifetime values for
the server principal).
.sp
The renewable lifetime of the tickets returned is the minimum of the following:
@@ -527,7 +527,7 @@ Variable Description
\fB\fBKRB5CCNAME\fR\fR
.ad
.RS 14n
-Location of the credentials (ticket) cache. See \fBkrb5envvar\fR(5) for syntax
+Location of the credentials (ticket) cache. See \fBkrb5envvar\fR(7) for syntax
and details.
.RE
@@ -556,11 +556,11 @@ Default location for the local host's \fBkeytab\fR file.
.ad
.RS 25n
Default location for the local host's configuration file. See
-\fBkrb5.conf\fR(4).
+\fBkrb5.conf\fR(5).
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -577,9 +577,17 @@ Interface Stability See below.
.LP
The command arguments are Evolving. The command output is Unstable.
.SH SEE ALSO
-\fBkdestroy\fR(1), \fBklist\fR(1), \fBkadmin\fR(1M), \fBktkt_warnd\fR(1M),
-\fBlibpkcs11\fR(3LIB), \fBkdc.conf\fR(4), \fBkrb5.conf\fR(4),
-\fBattributes\fR(5), \fBkerberos\fR(5), \fBkrb5envvar\fR(5), \fBpam_krb5\fR(5)
+.BR kdestroy (1),
+.BR klist (1),
+.BR libpkcs11 (3LIB),
+.BR kdc.conf (5),
+.BR krb5.conf (5),
+.BR attributes (7),
+.BR kerberos (7),
+.BR krb5envvar (7),
+.BR pam_krb5 (7),
+.BR kadmin (8),
+.BR ktkt_warnd (8)
.SH NOTES
-On success, \fBkinit\fR notifies \fBktkt_warnd\fR(1M) to alert the user when
+On success, \fBkinit\fR notifies \fBktkt_warnd\fR(8) to alert the user when
the initial credentials (ticket-granting ticket) are about to expire.
diff --git a/usr/src/man/man1/klist.1 b/usr/src/man/man1/klist.1
index 4c367f1fc6..74d8a02e42 100644
--- a/usr/src/man/man1/klist.1
+++ b/usr/src/man/man1/klist.1
@@ -261,7 +261,7 @@ Displays the time entry timestamps for each keytab entry in the keytab file.
\fB\fBKRB5CCNAME\fR\fR
.ad
.RS 14n
-Location of the credentials (ticket) cache. See \fBkrb5envvar\fR(5) for syntax
+Location of the credentials (ticket) cache. See \fBkrb5envvar\fR(7) for syntax
and details.
.RE
@@ -291,13 +291,13 @@ Default location for the local host's \fBkeytab\fR file.
.ad
.RS 25n
Default location for the local host's configuration file. See
-\fBkrb5.conf\fR(4).
+\fBkrb5.conf\fR(5).
.RE
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -316,8 +316,12 @@ The command arguments are Evolving. The command output is Unstable.
.SH SEE ALSO
.sp
.LP
-\fBkdestroy\fR(1), \fBkinit\fR(1), \fBkrb5.conf\fR(4), \fBattributes\fR(5),
-\fBkrb5envvar\fR(5), \fBkerberos\fR(5)
+.BR kdestroy (1),
+.BR kinit (1),
+.BR krb5.conf (5),
+.BR attributes (7),
+.BR kerberos (7),
+.BR krb5envvar (7)
.SH BUGS
.sp
.LP
diff --git a/usr/src/man/man1/kmdb.1 b/usr/src/man/man1/kmdb.1
index 29d69c1d46..754c699aec 100644
--- a/usr/src/man/man1/kmdb.1
+++ b/usr/src/man/man1/kmdb.1
@@ -430,7 +430,7 @@ callback string. If the string contains meta-characters, it must be quoted.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -445,8 +445,13 @@ Interface Stability Evolving
.SH SEE ALSO
.LP
-\fBkbd\fR(1), \fBmdb\fR(1), \fBboot\fR(1M), \fBdumpadm\fR(1M), \fBkernel\fR(1M),
-\fBsystem\fR(4), \fBattributes\fR(5)
+.BR kbd (1),
+.BR mdb (1),
+.BR system (5),
+.BR attributes (7),
+.BR boot (8),
+.BR dumpadm (8),
+.BR kernel (8)
.sp
.LP
\fIModular Debugger Guide\fR:
diff --git a/usr/src/man/man1/kmfcfg.1 b/usr/src/man/man1/kmfcfg.1
index 5ea8e0fc57..b9b7ff8629 100644
--- a/usr/src/man/man1/kmfcfg.1
+++ b/usr/src/man/man1/kmfcfg.1
@@ -797,7 +797,7 @@ Default system policy database
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -811,4 +811,4 @@ Interface Stability Uncommitted
.TE
.SH SEE ALSO
-\fBattributes\fR(5)
+.BR attributes (7)
diff --git a/usr/src/man/man1/kpasswd.1 b/usr/src/man/man1/kpasswd.1
index 52b43b7a0f..8b097a996d 100644
--- a/usr/src/man/man1/kpasswd.1
+++ b/usr/src/man/man1/kpasswd.1
@@ -56,7 +56,7 @@ operation. (\fIxxxxxx\fR is a random string.)
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -72,7 +72,7 @@ CSI Enabled
.SH SEE ALSO
.sp
.LP
-\fBkerberos\fR(5)
+.BR kerberos (7)
.SH BUGS
.sp
.LP
diff --git a/usr/src/man/man1/krb5-config.1 b/usr/src/man/man1/krb5-config.1
index ddb90409b0..f9b5867764 100644
--- a/usr/src/man/man1/krb5-config.1
+++ b/usr/src/man/man1/krb5-config.1
@@ -156,7 +156,7 @@ An error occurred.
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -170,4 +170,6 @@ Interface Stability Volatile
.TE
.SH SEE ALSO
-\fBlibgss\fR(3LIB), \fBlibkrb5\fR(3LIB), \fBattributes\fR(5)
+.BR libgss (3LIB),
+.BR libkrb5 (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man1/ksh93.1 b/usr/src/man/man1/ksh93.1
index 2978f7500a..de8f73202e 100644
--- a/usr/src/man/man1/ksh93.1
+++ b/usr/src/man/man1/ksh93.1
@@ -3246,7 +3246,7 @@ The
is a list of name-value pairs that is passed to an executed program in the same
way as a normal argument list.
See
-.Xr environ 5 .
+.Xr environ 7 .
.Pp
The names must be
.Ar identifiers
@@ -7058,7 +7058,7 @@ that can be safely invoked by
.Nm rksh93 .
.Sh USAGE
See
-.Xr largefile 5
+.Xr largefile 7
for the description of the behavior of
.Nm ksh93
and
@@ -7150,12 +7150,12 @@ feature, and editing modes are
.Xr sysconf 3C ,
.Xr tcgetattr 3C ,
.Xr wait 3C ,
-.Xr a.out 4 ,
-.Xr profile 4 ,
-.Xr attributes 5 ,
-.Xr environ 5 ,
-.Xr largefile 5 ,
-.Xr standards 5
+.Xr a.out 5 ,
+.Xr profile 5 ,
+.Xr attributes 7 ,
+.Xr environ 7 ,
+.Xr largefile 7 ,
+.Xr standards 7
.Pp
.Rs
.%A Bolsky, Morris I.
diff --git a/usr/src/man/man1/ktutil.1 b/usr/src/man/man1/ktutil.1
index 4c856da907..100ef6016b 100644
--- a/usr/src/man/man1/ktutil.1
+++ b/usr/src/man/man1/ktutil.1
@@ -175,7 +175,7 @@ keytab file for Kerberos clients
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -192,4 +192,7 @@ Interface Stability See below.
.LP
The command arguments are Evolving. The command output is Unstable.
.SH SEE ALSO
-\fBkadmin\fR(1M), \fBk5srvutil\fR(1M), \fBattributes\fR(5), \fBkerberos\fR(5)
+.BR attributes (7),
+.BR kerberos (7),
+.BR k5srvutil (8),
+.BR kadmin (8)
diff --git a/usr/src/man/man1/kvmstat.1 b/usr/src/man/man1/kvmstat.1
index fa1bd7a12a..6d72aecaa9 100644
--- a/usr/src/man/man1/kvmstat.1
+++ b/usr/src/man/man1/kvmstat.1
@@ -113,6 +113,6 @@ The arguments are
while the output format is
.Sy Not an interface .
.Sh SEE ALSO
-.Xr iostat 1M ,
-.Xr mpstat 1M ,
-.Xr attributes 5
+.Xr attributes 7 ,
+.Xr iostat 8 ,
+.Xr mpstat 8
diff --git a/usr/src/man/man1/lari.1 b/usr/src/man/man1/lari.1
index ae51c87363..5835fb22d7 100644
--- a/usr/src/man/man1/lari.1
+++ b/usr/src/man/man1/lari.1
@@ -648,7 +648,7 @@ Binding output produced by \fBldd\fR(1).
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -665,8 +665,12 @@ Interface Stability See below.
.LP
The human readable output is Uncommitted. The options are Committed.
.SH SEE ALSO
-\fBld\fR(1), \fBldd\fR(1), \fBld.so.1\fR(1), \fBdlopen\fR(3C), \fBdlsym\fR(3C),
-\fBattributes\fR(5)
+.BR ld (1),
+.BR ld.so.1 (1),
+.BR ldd (1),
+.BR dlopen (3C),
+.BR dlsym (3C),
+.BR attributes (7)
.sp
.LP
\fILinker and Libraries Guide\fR
diff --git a/usr/src/man/man1/last.1 b/usr/src/man/man1/last.1
index c2f1a09e4a..53b43ef835 100644
--- a/usr/src/man/man1/last.1
+++ b/usr/src/man/man1/last.1
@@ -111,4 +111,5 @@ accounting file
.SH SEE ALSO
.LP
-\fButmpx\fR(4), \fBattributes\fR(5)
+.BR utmpx (5),
+.BR attributes (7)
diff --git a/usr/src/man/man1/lastcomm.1 b/usr/src/man/man1/lastcomm.1
index 5c1eb3dc00..aed6a72571 100644
--- a/usr/src/man/man1/lastcomm.1
+++ b/usr/src/man/man1/lastcomm.1
@@ -21,7 +21,7 @@ The \fBlastcomm\fR command gives information on previously executed commands.
recorded during the current accounting file's lifetime. If called with
arguments, \fBlastcomm\fR only displays accounting entries with a matching
\fIcommand-name\fR, \fIuser-name\fR, or \fIterminal-name\fR. If extended
-process accounting is active (see \fBacctadm\fR(1M)) and is recording the
+process accounting is active (see \fBacctadm\fR(8)) and is recording the
appropriate data items, \fBlastcomm\fR attempts to take data from the current
extended process accounting file. If standard process accounting is active,
\fBlastcomm\fR takes data from the current standard accounting file (see
@@ -176,5 +176,9 @@ extended accounting file
.SH SEE ALSO
.LP
-\fBlast\fR(1), \fBacctadm\fR(1M), \fBacct\fR(2), \fBacct.h\fR(3HEAD),
-\fBcore\fR(4), \fBattributes\fR(5)
+.BR last (1),
+.BR acct (2),
+.BR acct.h (3HEAD),
+.BR core (5),
+.BR attributes (7),
+.BR acctadm (8)
diff --git a/usr/src/man/man1/ld.1 b/usr/src/man/man1/ld.1
index 8d5e0453d1..1bb133c6ce 100644
--- a/usr/src/man/man1/ld.1
+++ b/usr/src/man/man1/ld.1
@@ -1902,7 +1902,7 @@ defining memory layouts, aligning bss, and defining non-executable stacks.
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -1916,10 +1916,21 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBas\fR(1), \fBcrle\fR(1), \fBgprof\fR(1), \fBld.so.1\fR(1), \fBldd\fR(1),
-\fBmcs\fR(1), \fBpvs\fR(1), \fBexec\fR(2), \fBstat\fR(2), \fBdlopen\fR(3C),
-\fBdldump\fR(3C), \fBelf\fR(3ELF), \fBar.h\fR(3HEAD), \fBa.out\fR(4),
-\fBattributes\fR(5)
+.BR as (1),
+.BR crle (1),
+.BR gprof (1),
+.BR ld.so.1 (1),
+.BR ldd (1),
+.BR mcs (1),
+.BR pvs (1),
+.BR exec (2),
+.BR stat (2),
+.BR dldump (3C),
+.BR dlopen (3C),
+.BR elf (3ELF),
+.BR ar.h (3HEAD),
+.BR a.out (5),
+.BR attributes (7)
.sp
.LP
\fILinker and Libraries Guide\fR
diff --git a/usr/src/man/man1/ld.so.1.1 b/usr/src/man/man1/ld.so.1.1
index 40145e65b9..a36df012d6 100644
--- a/usr/src/man/man1/ld.so.1.1
+++ b/usr/src/man/man1/ld.so.1.1
@@ -792,17 +792,31 @@ Default configuration file for 64-bit applications.
.RE
.SH SEE ALSO
-\fBcrle\fR(1), \fBgprof\fR(1), \fBlari\fR(1), \fBld\fR(1), \fBldd\fR(1),
-\fBexec\fR(2), \fBissetugid\fR(2), \fBmmapobj\fR(2), \fBprofil\fR(2),
-\fBdladdr\fR(3C), \fBdlclose\fR(3C), \fBdldump\fR(3C), \fBdlerror\fR(3C),
-\fBdlinfo\fR(3C), \fBdlopen\fR(3C), \fBdlsym\fR(3C), \fBthr_kill\fR(3C),
-\fBproc\fR(4), \fBattributes\fR(5)
+.BR crle (1),
+.BR gprof (1),
+.BR lari (1),
+.BR ld (1),
+.BR ldd (1),
+.BR exec (2),
+.BR issetugid (2),
+.BR mmapobj (2),
+.BR profil (2),
+.BR dladdr (3C),
+.BR dlclose (3C),
+.BR dldump (3C),
+.BR dlerror (3C),
+.BR dlinfo (3C),
+.BR dlopen (3C),
+.BR dlsym (3C),
+.BR thr_kill (3C),
+.BR proc (5),
+.BR attributes (7)
.sp
.LP
\fILinker and Libraries Guide\fR
.SH NOTES
Care should be exercised when using \fBLD_PROFILE\fR in combination with other
-process monitoring techniques, such as users of \fBproc\fR(4). Multiple process
+process monitoring techniques, such as users of \fBproc\fR(5). Multiple process
monitoring techniques can result in deadlock conditions that leave the profile
buffer locked. A locked buffer blocks any processes that try to record
profiling information. To reduce this likelihood, the runtime linker's profile
diff --git a/usr/src/man/man1/ldap.1 b/usr/src/man/man1/ldap.1
index fae7a45eda..12d0cd7372 100644
--- a/usr/src/man/man1/ldap.1
+++ b/usr/src/man/man1/ldap.1
@@ -11,7 +11,7 @@ ldap \- LDAP as a naming repository
.LP
LDAP refers to Lightweight Directory Access Protocol, which is an industry
standard for accessing directory servers. By initializing the client using
-\fBldapclient\fR(1M) and using the keyword \fBldap\fR in the name service
+\fBldapclient\fR(8) and using the keyword \fBldap\fR in the name service
switch file, \fB/etc/nsswitch.conf\fR, Solaris clients can obtain naming
information from an LDAP server. Information such as usernames, hostnames, and
passwords are stored on the LDAP server in a Directory Information Tree or
@@ -29,10 +29,10 @@ Administration Guide: Naming and Directory Services (DNS, NIS, and LDAP)\fR for
more details.
.sp
.LP
-The \fBldapclient\fR(1M) utility can make a Solaris machine an LDAP client by
+The \fBldapclient\fR(8) utility can make a Solaris machine an LDAP client by
setting up the appropriate directories, files, and configuration information.
The LDAP client caches this configuration information in local cache files.
-This configuration information is accessed through the \fBldap_cachemgr\fR(1M)
+This configuration information is accessed through the \fBldap_cachemgr\fR(8)
daemon. This daemon also refreshes the information in the configuration files
from the LDAP server, providing better performance and security. The
\fBldap_cachemgr\fR must run at all times for the proper operation of the
@@ -56,13 +56,13 @@ daemon when the expiration time has elapsed.
.LP
Client profiles can be stored on the LDAP server and can be used by the
\fBldapclient\fR utility to initialize an LDAP client. Using the client profile
-is the easiest way to configure a client machine. See \fBldapclient\fR(1M).
+is the easiest way to configure a client machine. See \fBldapclient\fR(8).
.sp
.LP
Credential information includes client-specific parameters that are used by a
client. This information could be the Bind DN (LDAP "login" name) of the client
and the password. If these parameters are required, they are manually defined
-during the initialization through \fBldapclient\fR(1M).
+during the initialization through \fBldapclient\fR(8).
.sp
.LP
The naming information is stored in containers on the LDAP server. A container
@@ -71,7 +71,7 @@ Containers are similar to maps in NIS. A default mapping
between the NIS databases and the containers in LDAP is presented below. The
location of these containers as well as their names can be overridden through
the use of \fBserviceSearchDescriptors\fR. For more information, see
-\fBldapclient\fR(1M).
+\fBldapclient\fR(8).
.sp
.sp
@@ -192,7 +192,7 @@ The credential level of \fBself\fR enables per-user naming service lookups, or
lookups that use the \fBGSSAPI\fR credentials of the user when connecting to
the directory server. Currently the only \fBGSSAPI\fR mechanism supported in
this model is Kerberos V5. Kerberos must be configured before you can use this
-credential level. See \fBkerberos\fR(5) for details.
+credential level. See \fBkerberos\fR(7) for details.
.sp
.LP
More protection can be provided by means of access control, allowing the server
@@ -209,9 +209,9 @@ Naming and Directory Services (DNS, NIS, and LDAP)\fR regarding the
restrictions on ACLs and ACIs when using LDAP as a naming repository.
.sp
.LP
-A sample \fBnsswitch.conf\fR(4) file called \fBnsswitch.ldap\fR is provided in
+A sample \fBnsswitch.conf\fR(5) file called \fBnsswitch.ldap\fR is provided in
the \fB/etc\fR directory. This is copied to \fB/etc/nsswitch.conf\fR by the
-\fBldapclient\fR(1M) utility. This file uses LDAP as a repository for the
+\fBldapclient\fR(8) utility. This file uses LDAP as a repository for the
different databases in the \fBnsswitch.conf\fR file.
.sp
.LP
@@ -219,7 +219,7 @@ The following is a list of the user commands related to LDAP:
.sp
.ne 2
.na
-\fB\fBidsconfig\fR(1M)\fR
+\fB\fBidsconfig\fR(8)\fR
.ad
.RS 18n
Prepares a SunOne Directory Server to be ready to support Solaris LDAP clients.
@@ -228,7 +228,7 @@ Prepares a SunOne Directory Server to be ready to support Solaris LDAP clients.
.sp
.ne 2
.na
-\fB\fBldapaddent\fR(1M)\fR
+\fB\fBldapaddent\fR(8)\fR
.ad
.RS 18n
Creates LDAP entries from corresponding \fB/etc\fR files.
@@ -237,7 +237,7 @@ Creates LDAP entries from corresponding \fB/etc\fR files.
.sp
.ne 2
.na
-\fB\fBldapclient\fR(1M)\fR
+\fB\fBldapclient\fR(8)\fR
.ad
.RS 18n
Initializes LDAP clients, or generates a configuration profile to be stored in
@@ -265,7 +265,7 @@ Lists the contents of the LDAP naming space.
.RS 30n
Files that contain the LDAP configuration of the client. Do not manually modify
these files. Their content is not guaranteed to be human readable. Use
-\fBldapclient\fR(1M) to update them.
+\fBldapclient\fR(8) to update them.
.RE
.sp
@@ -298,20 +298,31 @@ PAM framework configuration file.
.SH SEE ALSO
.LP
-\fBldaplist\fR(1), \fBidsconfig\fR(1M), \fBldap_cachemgr\fR(1M),
-\fBldapaddent\fR(1M), \fBldapclient\fR(1M), \fBnsswitch.conf\fR(4),
-\fBpam.conf\fR(4), \fBkerberos\fR(5), \fBpam_authtok_check\fR(5),
-\fBpam_authtok_get\fR(5), \fBpam_authtok_store\fR(5), \fBpam_dhkeys\fR(5),
-\fBpam_ldap\fR(5), \fBpam_passwd_auth\fR(5), \fBpam_unix_account\fR(5),
-\fBpam_unix_auth\fR(5), \fBpam_unix_session\fR(5)
+.BR ldaplist (1),
+.BR nsswitch.conf (5),
+.BR pam.conf (5),
+.BR kerberos (7),
+.BR pam_authtok_check (7),
+.BR pam_authtok_get (7),
+.BR pam_authtok_store (7),
+.BR pam_dhkeys (7),
+.BR pam_ldap (7),
+.BR pam_passwd_auth (7),
+.BR pam_unix_account (7),
+.BR pam_unix_auth (7),
+.BR pam_unix_session (7),
+.BR idsconfig (8),
+.BR ldap_cachemgr (8),
+.BR ldapaddent (8),
+.BR ldapclient (8)
.sp
.LP
\fISystem Administration Guide: Naming and Directory Services (DNS, NIS, and
LDAP)\fR
.SH NOTES
.LP
-The \fBpam_unix\fR(5) module is no longer supported. Similar functionality is
-provided by \fBpam_authtok_check\fR(5), \fBpam_authtok_get\fR(5),
-\fBpam_authtok_store\fR(5), \fBpam_dhkeys\fR(5), \fBpam_passwd_auth\fR(5),
-\fBpam_unix_account\fR(5), \fBpam_unix_auth\fR(5),
-and \fBpam_unix_session\fR(5).
+The \fBpam_unix\fR(7) module is no longer supported. Similar functionality is
+provided by \fBpam_authtok_check\fR(7), \fBpam_authtok_get\fR(7),
+\fBpam_authtok_store\fR(7), \fBpam_dhkeys\fR(7), \fBpam_passwd_auth\fR(7),
+\fBpam_unix_account\fR(7), \fBpam_unix_auth\fR(7),
+and \fBpam_unix_session\fR(7).
diff --git a/usr/src/man/man1/ldapdelete.1 b/usr/src/man/man1/ldapdelete.1
index 58e899aa9a..fcd6de6f38 100644
--- a/usr/src/man/man1/ldapdelete.1
+++ b/usr/src/man/man1/ldapdelete.1
@@ -497,7 +497,7 @@ example% \fBldapdelete -o mech=DIGEST-MD5 -o secProp=noanonymous \e
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for a description of the following attributes:
+See \fBattributes\fR(7) for a description of the following attributes:
.sp
.sp
@@ -534,9 +534,13 @@ An error occurred. A diagnostic message is written to standard error.
.SH SEE ALSO
.sp
.LP
-\fBldapadd\fR(1), \fBldapmodify\fR(1), \fBldapmodrdn\fR(1),
-\fBldapsearch\fR(1), \fBldap_get_option\fR(3LDAP),
-\fBldap_set_option\fR(3LDAP), \fBattributes\fR(5)
+.BR ldapadd (1),
+.BR ldapmodify (1),
+.BR ldapmodrdn (1),
+.BR ldapsearch (1),
+.BR ldap_get_option (3LDAP),
+.BR ldap_set_option (3LDAP),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man1/ldaplist.1 b/usr/src/man/man1/ldaplist.1
index d5b823d68a..dbedf40e5d 100644
--- a/usr/src/man/man1/ldaplist.1
+++ b/usr/src/man/man1/ldaplist.1
@@ -38,13 +38,13 @@ configuration obtained.
By default (if the \fB-h\fR \fILDAP_server\fR\fB[:\fR\fIserverPort\fR\fB]\fR
option is not specified), the utility searches for and lists the naming
information from the LDAP directory service defined in the LDAP configuration
-files generated by \fBldapclient\fR(1M) during the client initialization phase.
+files generated by \fBldapclient\fR(8) during the client initialization phase.
To use the utility in the default mode, the Solaris LDAP client must be set up
in advance.
.sp
.LP
The database is either a container name or a database name as defined in
-\fBnsswitch.conf\fR(4). A container is a non-leaf entry in the Directory
+\fBnsswitch.conf\fR(5). A container is a non-leaf entry in the Directory
Information Tree (DIT) that contains naming service information. The container
name is the LDAP Relative Distinguished Name (RDN) of the container relative to
the \fBdefaultSearchBase\fR as defined in the configuration files. For example,
@@ -69,7 +69,7 @@ an invalid database name, then \fBcn\fR is used as the attribute type.
The \fBldaplist\fR utility relies on the Schema defined in the \fIRFC
2307bis\fR, currently an IETF draft. The data stored on the LDAP server must be
stored based on this Schema, unless the profile contains schema mapping
-definitions. For more information on schema mapping see \fBldapclient\fR(1M).
+definitions. For more information on schema mapping see \fBldapclient\fR(8).
The following table lists the default mapping from the database names to the
container, the LDAP object class, and the attribute type used if not defined in
the key.
@@ -472,12 +472,12 @@ An error occurred. An error message is output.
.RS 30n
Files that contain the LDAP configuration of the client. Do not manually modify
these files. Their content is not guaranteed to be human readable. To update
-these files, use \fBldapclient\fR(1M)
+these files, use \fBldapclient\fR(8)
.RE
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -492,10 +492,18 @@ Interface Stability Committed
.SH SEE ALSO
.LP
-\fBldap\fR(1), \fBldapadd\fR(1), \fBldapdelete\fR(1), \fBldapmodify\fR(1),
-\fBldapmodrdn\fR(1), \fBldapsearch\fR(1), \fBidsconfig\fR(1M),
-\fBldap_cachemgr\fR(1M), \fBldapaddent\fR(1M), \fBldapclient\fR(1M),
-\fBresolv.conf\fR(4), \fBattributes\fR(5)
+.BR ldap (1),
+.BR ldapadd (1),
+.BR ldapdelete (1),
+.BR ldapmodify (1),
+.BR ldapmodrdn (1),
+.BR ldapsearch (1),
+.BR resolv.conf (5),
+.BR attributes (7),
+.BR idsconfig (8),
+.BR ldap_cachemgr (8),
+.BR ldapaddent (8),
+.BR ldapclient (8)
.SH NOTES
.LP
\fIRFC 2307bis\fR is an IETF informational document in draft stage that defines
diff --git a/usr/src/man/man1/ldapmodify.1 b/usr/src/man/man1/ldapmodify.1
index 9c11d48403..3669d03234 100644
--- a/usr/src/man/man1/ldapmodify.1
+++ b/usr/src/man/man1/ldapmodify.1
@@ -737,7 +737,7 @@ example% \fBldapmodify -f /tmp/badentry\fR
removes Ann Jones' entry.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for a description of the following attributes:
+See \fBattributes\fR(7) for a description of the following attributes:
.sp
.sp
@@ -750,6 +750,13 @@ Stability Level Evolving
.TE
.SH SEE ALSO
-\fBldap\fR(1), \fBldapdelete\fR(1), \fBldaplist\fR(1), \fBldapmodrdn\fR(1),
-\fBldapsearch\fR(1), \fBldapaddent\fR(1M), \fBldap_cachemgr\fR(1M),
-\fBldap_get_option\fR(3LDAP), \fBldap_set_option\fR(3LDAP), \fBattributes\fR(5)
+.BR ldap (1),
+.BR ldapdelete (1),
+.BR ldaplist (1),
+.BR ldapmodrdn (1),
+.BR ldapsearch (1),
+.BR ldap_get_option (3LDAP),
+.BR ldap_set_option (3LDAP),
+.BR attributes (7),
+.BR ldap_cachemgr (8),
+.BR ldapaddent (8)
diff --git a/usr/src/man/man1/ldapmodrdn.1 b/usr/src/man/man1/ldapmodrdn.1
index 5feb1bbc51..8f9b6053f6 100644
--- a/usr/src/man/man1/ldapmodrdn.1
+++ b/usr/src/man/man1/ldapmodrdn.1
@@ -506,7 +506,7 @@ the old cn, "Modify Me" is removed.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for a description of the following attributes:
+See \fBattributes\fR(7) for a description of the following attributes:
.sp
.sp
@@ -521,8 +521,11 @@ Stability Level Evolving
.SH SEE ALSO
.sp
.LP
-\fBldapadd\fR(1), \fBldapdelete\fR(1), \fBldapmodify\fR(1),
-\fBldapsearch\fR(1), \fBattributes\fR(5)
+.BR ldapadd (1),
+.BR ldapdelete (1),
+.BR ldapmodify (1),
+.BR ldapsearch (1),
+.BR attributes (7)
.SH DIAGNOSTICS
.sp
.LP
diff --git a/usr/src/man/man1/ldapsearch.1 b/usr/src/man/man1/ldapsearch.1
index 91571c81bd..4666a9097e 100644
--- a/usr/src/man/man1/ldapsearch.1
+++ b/usr/src/man/man1/ldapsearch.1
@@ -885,7 +885,7 @@ An error occurred. A diagnostic message is written to standard error.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for a description of the following attributes:
+See \fBattributes\fR(7) for a description of the following attributes:
.sp
.sp
@@ -900,5 +900,8 @@ Stability Level Evolving
.SH SEE ALSO
.sp
.LP
-\fBldapadd\fR(1), \fBldapdelete\fR(1), \fBldapmodify\fR(1),
-\fBldapmodrdn\fR(1), \fBattributes\fR(5)
+.BR ldapadd (1),
+.BR ldapdelete (1),
+.BR ldapmodify (1),
+.BR ldapmodrdn (1),
+.BR attributes (7)
diff --git a/usr/src/man/man1/ldd.1 b/usr/src/man/man1/ldd.1
index cdc949911f..eeec0d2409 100644
--- a/usr/src/man/man1/ldd.1
+++ b/usr/src/man/man1/ldd.1
@@ -459,9 +459,18 @@ Fake 64-bit executable loaded to check the dependencies of shared objects.
.SH SEE ALSO
.LP
-\fBcrle\fR(1), \fBdump\fR(1), \fBelfdump\fR(1), \fBlari\fR(1), \fBld\fR(1),
-\fBld.so.1\fR(1), \fBmdb\fR(1), \fBpldd\fR(1), \fBpvs\fR(1), \fBtruss\fR(1),
-\fBdlopen\fR(3C), \fBattributes\fR(5)
+.BR crle (1),
+.BR dump (1),
+.BR elfdump (1),
+.BR lari (1),
+.BR ld (1),
+.BR ld.so.1 (1),
+.BR mdb (1),
+.BR pldd (1),
+.BR pvs (1),
+.BR truss (1),
+.BR dlopen (3C),
+.BR attributes (7)
.sp
.LP
\fILinker and Libraries Guide\fR
diff --git a/usr/src/man/man1/let.1 b/usr/src/man/man1/let.1
index 6b46143c65..a2ec82e65b 100644
--- a/usr/src/man/man1/let.1
+++ b/usr/src/man/man1/let.1
@@ -83,5 +83,8 @@ The last \fIexpr\fR evaluates to \fB0\fR or an error occurred.
.SH SEE ALSO
.sp
.LP
-\fBksh\fR(1), \fBksh93\fR(1), \fBset\fR(1), \fBtypeset\fR(1),
-\fBattributes\fR(5)
+.BR ksh (1),
+.BR ksh93 (1),
+.BR set (1),
+.BR typeset (1),
+.BR attributes (7)
diff --git a/usr/src/man/man1/lex.1 b/usr/src/man/man1/lex.1
index 3aad37adf2..ba33ea760e 100644
--- a/usr/src/man/man1/lex.1
+++ b/usr/src/man/man1/lex.1
@@ -475,7 +475,7 @@ following \fByylex\fR.
.sp
.LP
The \fBlex\fR utility supports the set of Extended Regular Expressions (EREs)
-described on \fBregex\fR(5) with the following additions and exceptions to the
+described on \fBregex\fR(7) with the following additions and exceptions to the
syntax:
.sp
.ne 2
@@ -973,7 +973,7 @@ int main(int argc, char *argv[\|])
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBlex\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_COLLATE\fR, \fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.SH EXIT STATUS
@@ -1001,7 +1001,7 @@ An error occurred.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -1017,8 +1017,11 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fByacc\fR(1), \fBattributes\fR(5), \fBenviron\fR(5), \fBregex\fR(5),
-\fBstandards\fR(5)
+.BR yacc (1),
+.BR attributes (7),
+.BR environ (7),
+.BR regex (7),
+.BR standards (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man1/lgrpinfo.1 b/usr/src/man/man1/lgrpinfo.1
index cbff541e84..5e3bf5307f 100644
--- a/usr/src/man/man1/lgrpinfo.1
+++ b/usr/src/man/man1/lgrpinfo.1
@@ -220,7 +220,7 @@ Memory sizes are scaled to the unit of measure that yields an integer from
\fB0\fR to \fB1023\fR unless the \fB-u\fR option is specified as well. The
fractional part of the number is only displayed for values less than \fB10\fR.
This behavior is similar to using the \fB-h\fR option of \fBls\fR(1) or
-\fBdf\fR(1M) to display a human readable format.
+\fBdf\fR(8) to display a human readable format.
.sp
This is the default.
.RE
@@ -286,7 +286,7 @@ Specify memory units. Units should be b, k, m, g, t, p, or e for bytes,
kilobytes, megabytes, gigabytes, terabytes, petabytes, or exabytes
respectively. The fractional part of the number is only displayed for values
less than 10. This behavior is similar to using the \fB-h\fR option of
-\fBls\fR(1) or \fBdf\fR(1M) to display a human readable format.
+\fBls\fR(1) or \fBdf\fR(8) to display a human readable format.
.RE
.SH OPERANDS
@@ -541,7 +541,7 @@ Invalid syntax.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -559,6 +559,14 @@ Interface Stability See below.
The human readable output is Unstable.
.SH SEE ALSO
.LP
-\fBls\fR(1), \fBplgrp\fR(1), \fBpmap\fR(1), \fBproc\fR(1), \fBps\fR(1),
-\fBdf\fR(1M), \fBprstat\fR(1M), \fBlgrp_init\fR(3LGRP), \fBliblgrp\fR(3LIB),
-\fBproc\fR(4), \fBattributes\fR(5)
+.BR ls (1),
+.BR plgrp (1),
+.BR pmap (1),
+.BR proc (1),
+.BR ps (1),
+.BR lgrp_init (3LGRP),
+.BR liblgrp (3LIB),
+.BR proc (5),
+.BR attributes (7),
+.BR df (8),
+.BR prstat (8)
diff --git a/usr/src/man/man1/limit.1 b/usr/src/man/man1/limit.1
index 34952062af..7de7e73689 100644
--- a/usr/src/man/man1/limit.1
+++ b/usr/src/man/man1/limit.1
@@ -211,7 +211,7 @@ Maximum \fBCPU\fR seconds per process.
.ad
.RS 16n
Largest single file allowed. Limited to the size of the filesystem (see
-\fBdf\fR(1M)).
+\fBdf\fR(8)).
.RE
.sp
@@ -248,7 +248,7 @@ filesystem.
\fB\fBdescriptors\fR\fR
.ad
.RS 16n
-Maximum number of file descriptors. Run the \fBsysdef\fR(1M) command to obtain
+Maximum number of file descriptors. Run the \fBsysdef\fR(8) command to obtain
the maximum possible limits for your system. The values reported are in
hexadecimal, but can be translated into decimal numbers using the \fBbc\fR(1)
command.
@@ -776,7 +776,7 @@ memorysize unlimited
.sp
.SH ENVIRONMENT VARIABLES
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBulimit\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.SH EXIT STATUS
@@ -800,7 +800,7 @@ A request for a higher limit was rejected or an error occurred.
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.SS "/usr/bin/ulimit, csh, ksh, sh"
.TS
box;
@@ -810,7 +810,7 @@ ATTRIBUTE TYPE ATTRIBUTE VALUE
_
Interface Stability Committed
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SS "ksh93"
@@ -824,6 +824,16 @@ Interface Stability Uncommitted
.TE
.SH SEE ALSO
-\fBbc\fR(1), \fBcsh\fR(1), \fBksh\fR(1), \fBksh93\fR(1), \fBsh\fR(1),
-\fBdf\fR(1M), \fBsu\fR(1M), \fBswap\fR(1M), \fBsysdef\fR(1M),
-\fBgetrlimit\fR(2), \fBattributes\fR(5), \fBenviron\fR(5), \fBstandards\fR(5)
+.BR bc (1),
+.BR csh (1),
+.BR ksh (1),
+.BR ksh93 (1),
+.BR sh (1),
+.BR getrlimit (2),
+.BR attributes (7),
+.BR environ (7),
+.BR standards (7),
+.BR df (8),
+.BR su (8),
+.BR swap (8),
+.BR sysdef (8)
diff --git a/usr/src/man/man1/line.1 b/usr/src/man/man1/line.1
index 29b0bf93b8..9411ee3b55 100644
--- a/usr/src/man/man1/line.1
+++ b/usr/src/man/man1/line.1
@@ -85,4 +85,6 @@ End-of-file on input.
.SH SEE ALSO
.sp
.LP
-\fBsh\fR(1), \fBread\fR(2), \fBattributes\fR(5)
+.BR sh (1),
+.BR read (2),
+.BR attributes (7)
diff --git a/usr/src/man/man1/list_devices.1 b/usr/src/man/man1/list_devices.1
index 3498c54ced..85d3daef5a 100644
--- a/usr/src/man/man1/list_devices.1
+++ b/usr/src/man/man1/list_devices.1
@@ -126,9 +126,9 @@ files=\fIdevice-list\fR
.sp
where \fIdevice-attributes\fR is the contents of the \fBreserved1\fR field of
-\fBdevice_allocate\fR(4). The field is colon (\fB:\fR) separated.)
+\fBdevice_allocate\fR(5). The field is colon (\fB:\fR) separated.)
.sp
-See \fBdevice_allocate\fR(4) for a description of these attributes and their
+See \fBdevice_allocate\fR(5) for a description of these attributes and their
format.
.sp
The \fB-a\fR output has the following keys:
@@ -139,7 +139,7 @@ The \fB-a\fR output has the following keys:
.ad
.RS 10n
Specifies the list of authorizations. The value is \fBauths\fR is described in
-\fBdevice_allocate\fR(4).
+\fBdevice_allocate\fR(5).
.RE
.sp
@@ -149,7 +149,7 @@ Specifies the list of authorizations. The value is \fBauths\fR is described in
.ad
.RS 10n
Specifies the device cleaning script. The value is \fBdevice-exec\fR as
-described in \fBdevice_allocate\fR(4).
+described in \fBdevice_allocate\fR(5).
.RE
.sp
@@ -159,7 +159,7 @@ described in \fBdevice_allocate\fR(4).
.ad
.RS 10n
Specifies the device name. The value is \fBdevice-name\fR as described in
-\fBdevice_allocate\fR(4).
+\fBdevice_allocate\fR(5).
.RE
.sp
@@ -169,7 +169,7 @@ Specifies the device name. The value is \fBdevice-name\fR as described in
.ad
.RS 10n
Specifies the device file paths. The value is \fBdevice-list\fR as described in
-\fBdevice_maps\fR(4).
+\fBdevice_maps\fR(5).
.RE
.sp
@@ -179,7 +179,7 @@ Specifies the device file paths. The value is \fBdevice-list\fR as described in
.ad
.RS 10n
Specifies the device type. The value is \fBdevice-type\fR as described in
-\fBdevice_allocate\fR(4).
+\fBdevice_allocate\fR(5).
.RE
.RE
@@ -327,7 +327,7 @@ An error occurred.
\fB/usr/security/lib/*\fR
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -347,14 +347,19 @@ The invocation is Uncommitted. The options are Uncommitted. The output from the
Not-an-Interface.
.SH SEE ALSO
.LP
-\fBallocate\fR(1), \fBdeallocate\fR(1), \fBdminfo\fR(1M),
-\fBmkdevalloc\fR(1M), \fBmkdevmaps\fR(1M), \fBdevice_allocate\fR(4),
-\fBdevice_maps\fR(4), \fBattributes\fR(5)
+.BR allocate (1),
+.BR deallocate (1),
+.BR device_allocate (5),
+.BR device_maps (5),
+.BR attributes (7),
+.BR dminfo (8),
+.BR mkdevalloc (8),
+.BR mkdevmaps (8)
.SH NOTES
.LP
On systems configured with Trusted Extensions, the functionality is enabled by
default.
.sp
.LP
-\fB/etc/security/dev\fR, \fBmkdevalloc\fR(1M), and \fBmkdevmaps\fR(1M) might
+\fB/etc/security/dev\fR, \fBmkdevalloc\fR(8), and \fBmkdevmaps\fR(8) might
not be supported in a future release of the Solaris Operating Environment.
diff --git a/usr/src/man/man1/listusers.1 b/usr/src/man/man1/listusers.1
index 2112ebefb0..818a1d9c70 100644
--- a/usr/src/man/man1/listusers.1
+++ b/usr/src/man/man1/listusers.1
@@ -45,7 +45,8 @@ Multiple logins can be specified as a comma-separated list.
.SH SEE ALSO
.sp
.LP
-\fBnsswitch.conf\fR(4), \fBattributes\fR(5)
+.BR nsswitch.conf (5),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man1/ln.1 b/usr/src/man/man1/ln.1
index 059c271697..8487bca237 100644
--- a/usr/src/man/man1/ln.1
+++ b/usr/src/man/man1/ln.1
@@ -210,12 +210,12 @@ directory in which the new directory entries are to be created.
.SH USAGE
.sp
.LP
-See \fBlargefile\fR(5) for the description of the behavior of \fBln\fR when
+See \fBlargefile\fR(7) for the description of the behavior of \fBln\fR when
encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBln\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.SH EXIT STATUS
@@ -243,7 +243,7 @@ An error occurred.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.SS "/usr/bin/ln"
.sp
@@ -275,8 +275,13 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBchmod\fR(1), \fBls\fR(1), \fBstat\fR(2), \fBattributes\fR(5),
-\fBenviron\fR(5), \fBlargefile\fR(5), \fBstandards\fR(5)
+.BR chmod (1),
+.BR ls (1),
+.BR stat (2),
+.BR attributes (7),
+.BR environ (7),
+.BR largefile (7),
+.BR standards (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man1/loadkeys.1 b/usr/src/man/man1/loadkeys.1
index 9fee3e44bb..5dc3d99c64 100644
--- a/usr/src/man/man1/loadkeys.1
+++ b/usr/src/man/man1/loadkeys.1
@@ -25,7 +25,7 @@ keyboard streams module's translation tables. If no file is specified,
\fBloadkeys\fR loads the file:
\fB/usr/share/lib/keytables/type_\fR\fItt\fR\fB/layout_\fR\fIdd,\fR where
\fItt\fR is the value returned by the \fBKIOCTYPE\fR \fBioctl\fR, and \fBdd\fR
-is the value returned by the \fBKIOCLAYOUT\fR \fBioctl\fR (see \fBkb\fR(7M)).
+is the value returned by the \fBKIOCLAYOUT\fR \fBioctl\fR (see \fBkb\fR(4M)).
These keytable files specify only the entries that change between the specified
layout and the default layout for the particular keyboard type. On
self-identifying keyboards, the value returned by the \fBKIOCLAYOUT\fR
@@ -33,7 +33,7 @@ self-identifying keyboards, the value returned by the \fBKIOCLAYOUT\fR
.sp
.LP
\fBdumpkeys\fR writes the current contents of the keyboard streams module's
-translation tables, in the format specified by \fBkeytables\fR(4), to the
+translation tables, in the format specified by \fBkeytables\fR(5), to the
standard output.
.SH FILES
.sp
@@ -49,7 +49,7 @@ default keytable files
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -65,5 +65,8 @@ Interface Stability Evolving
.SH SEE ALSO
.sp
.LP
-\fBkbd\fR(1), \fBkeytables\fR(4), \fBattributes\fR(5), \fBkb\fR(7M),
-\fBusbkbm\fR(7M)
+.BR kbd (1),
+.BR kb (4M),
+.BR usbkbm (4M),
+.BR keytables (5),
+.BR attributes (7)
diff --git a/usr/src/man/man1/locale.1 b/usr/src/man/man1/locale.1
index 3bacff3339..c5636f6421 100644
--- a/usr/src/man/man1/locale.1
+++ b/usr/src/man/man1/locale.1
@@ -228,7 +228,7 @@ fi\fR
.SH ENVIRONMENT VARIABLES
.LP
-See \fBenviron\fR(5) for the descriptions of \fBLANG\fR, \fBLC_ALL\fR,
+See \fBenviron\fR(7) for the descriptions of \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.sp
.LP
@@ -258,7 +258,7 @@ An error occurred.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -275,8 +275,12 @@ Interface Stability Standard
.SH SEE ALSO
.LP
-\fBlocaledef\fR(1), \fBattributes\fR(5), \fBcharmap\fR(5), \fBenviron\fR(5),
-\fBlocale\fR(5), \fBstandards\fR(5)
+.BR localedef (1),
+.BR attributes (7),
+.BR charmap (7),
+.BR environ (7),
+.BR locale (7),
+.BR standards (7)
.SH NOTES
.LP
If \fBLC_CTYPE\fR or keywords in the category \fBLC_CTYPE\fR are specified,
diff --git a/usr/src/man/man1/localedef.1 b/usr/src/man/man1/localedef.1
index 2627e6123d..ae02600ef3 100644
--- a/usr/src/man/man1/localedef.1
+++ b/usr/src/man/man1/localedef.1
@@ -58,7 +58,7 @@ localedef \- define locale environment
The \fBlocaledef\fR utility converts source definitions for locale categories
into a format usable by the functions and utilities whose operational behavior
is determined by the setting of the locale environment variables; see
-\fBenviron\fR(5).
+\fBenviron\fR(7).
.sp
.LP
The utility reads source definitions for one or more locale categories
@@ -230,7 +230,7 @@ appropriate subdirectory of /usr/lib/locale in order the definitions to
be visible to programs linked with libc.
.sp
.SH ENVIRONMENT VARIABLES
-See \fBenviron\fR(5) for definitions of the following environment variables
+See \fBenviron\fR(7) for definitions of the following environment variables
that affect the execution of \fBlocaledef\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_COLLATE\fR, \fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.SH EXIT STATUS
@@ -287,7 +287,7 @@ The directory containing locale data.
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -301,9 +301,16 @@ Interface Stability Standard
.TE
.SH SEE ALSO
-\fBlocale\fR(1), \fBiconv_open\fR(3C), \fBnl_langinfo\fR(3C),
-\fBstrftime\fR(3C), \fBattributes\fR(5), \fBcharmap\fR(5), \fBenviron\fR(5),
-\fBextensions\fR(5), \fBlocale\fR(5), \fBstandards\fR(5)
+.BR locale (1),
+.BR iconv_open (3C),
+.BR nl_langinfo (3C),
+.BR strftime (3C),
+.BR attributes (7),
+.BR charmap (7),
+.BR environ (7),
+.BR extensions (7),
+.BR locale (7),
+.BR standards (7)
.SH WARNINGS
If warnings occur, permanent output will be created if the \fB-c\fR option was
specified. The following conditions will cause warning messages to be issued:
diff --git a/usr/src/man/man1/logger.1 b/usr/src/man/man1/logger.1
index 6d3e512b4f..0d827ee0f8 100644
--- a/usr/src/man/man1/logger.1
+++ b/usr/src/man/man1/logger.1
@@ -167,7 +167,7 @@ treated by \fBsyslogd\fR as are other messages to the facility \fBlocal0\fR.
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBlogger\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.SH EXIT STATUS
@@ -195,7 +195,7 @@ An error occurred.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -211,5 +211,10 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBmailx\fR(1), \fBwrite\fR(1), \fBsyslogd\fR(1M), \fBsyslog\fR(3C),
-\fBattributes\fR(5), \fBenviron\fR(5), \fBstandards\fR(5)
+.BR mailx (1),
+.BR write (1),
+.BR syslog (3C),
+.BR attributes (7),
+.BR environ (7),
+.BR standards (7),
+.BR syslogd (8)
diff --git a/usr/src/man/man1/login.1 b/usr/src/man/man1/login.1
index f841672f53..abf87bc419 100644
--- a/usr/src/man/man1/login.1
+++ b/usr/src/man/man1/login.1
@@ -63,7 +63,7 @@ attempts, all five can be logged in \fB/var/adm/loginlog\fR, if it exists. The
If password aging is turned on and the password has aged (see \fBpasswd\fR(1)
for more information), the user is forced to changed the password. In this case
the \fB/etc/nsswitch.conf\fR file is consulted to determine password
-repositories. See \fBnsswitch.conf\fR(4) for a list of valid nameservice
+repositories. See \fBnsswitch.conf\fR(5) for a list of valid nameservice
configurations that are permitted for the \fBpasswd\fR: database if password
aging is enabled.
.sp
@@ -77,7 +77,7 @@ silently disconnected.
After a successful login, accounting files are updated. Device owner, group,
and permissions are set according to the contents of the
\fB/etc/logindevperm\fR file, and the time you last logged in is printed (see
-\fBlogindevperm\fR(4)).
+\fBlogindevperm\fR(5)).
.sp
.LP
The user-ID, group-ID, supplementary group list, and working directory are
@@ -112,14 +112,14 @@ interactive shell executes the file named by \fB$ENV\fR (no default).
.LP
For C shell logins, the shell executes \fB/etc/.login\fR, \fB$HOME/.cshrc\fR,
and \fB$HOME/.login\fR. The default \fB/etc/profile\fR and \fB/etc/.login\fR
-files check quotas (see \fBquota\fR(1M)), print \fB/etc/motd\fR, and check for
+files check quotas (see \fBquota\fR(8)), print \fB/etc/motd\fR, and check for
mail. None of the messages are printed if the file \fB$HOME/.hushlogin\fR
exists. The name of the command interpreter is set to \fB\(mi\fR (dash),
followed by the last component of the interpreter's path name, for example,
\fB\(mish\fR\&.
.sp
.LP
-If the \fIlogin-shell\fR field in the password file (see \fBpasswd\fR(4)) is
+If the \fIlogin-shell\fR field in the password file (see \fBpasswd\fR(5)) is
empty, then the default command interpreter, \fB/usr/bin/sh\fR, is used. If
this field is * (asterisk), then the named directory becomes the root
directory. At that point, \fBlogin\fR is re-executed at the new level, which
@@ -167,11 +167,11 @@ inserting a \fB#\fR (pound sign) before the \fBCONSOLE=/dev/console\fR entry.
See FILES.
.SH SECURITY
For accounts in name services which support automatic account locking, the
-account can be configured to be automatically locked (see \fBuser_attr\fR(4)
-and \fBpolicy.conf\fR(4)) if successive failed login attempts equals or exceeds
-\fBRETRIES\fR. Currently, only the files repository (see \fBpasswd\fR(4) and
-\fBshadow\fR(4)) supports automatic account locking. See also
-\fBpam_unix_auth\fR(5).
+account can be configured to be automatically locked (see \fBuser_attr\fR(5)
+and \fBpolicy.conf\fR(5)) if successive failed login attempts equals or exceeds
+\fBRETRIES\fR. Currently, only the files repository (see \fBpasswd\fR(5) and
+\fBshadow\fR(5)) supports automatic account locking. See also
+\fBpam_unix_auth\fR(7).
.sp
.LP
The \fBlogin\fR command uses \fBpam\fR(3PAM) for authentication, account
@@ -239,7 +239,7 @@ other attempt to use \fB-d\fR causes \fBlogin\fR to quietly exit.
\fB\fB-h\fR \fIhostname\fR [\fIterminal\fR]\fR
.ad
.RS 26n
-Used by \fBin.telnetd\fR(1M) to pass information about the remote host and
+Used by \fBin.telnetd\fR(8) to pass information about the remote host and
terminal type.
.sp
Terminal type as a second argument to the \fB-h\fR option should not start with
@@ -261,7 +261,7 @@ Used to pass environment variables to the login shell.
\fB\fB-r\fR \fIhostname\fR\fR
.ad
.RS 26n
-Used by \fBin.rlogind\fR(1M) to pass information about the remote host.
+Used by \fBin.rlogind\fR(8) to pass information about the remote host.
.RE
.sp
@@ -305,7 +305,7 @@ associated with the user.
.ad
.RS 26n
Indicates the name of the person attempting to login on the remote side of the
-rlogin connection. When \fBin.rlogind\fR(1M) is operating in Kerberized mode,
+rlogin connection. When \fBin.rlogind\fR(8) is operating in Kerberized mode,
that daemon processes the terminal and remote user name information prior to
invoking \fBlogin\fR, so the "\fBruser\fR" data is indicated using this command
line parameter. Normally (non-Kerberos authenticated \fBrlogin\fR), the
@@ -537,7 +537,7 @@ for example, \fBTIMEZONE=EST5EDT\fR.
\fB\fBTIMEZONE\fR\fR
.ad
.RS 24n
-Sets the \fBTZ\fR environment variable of the shell (see \fBenviron\fR(5)).
+Sets the \fBTZ\fR environment variable of the shell (see \fBenviron\fR(7)).
.RE
.sp
@@ -661,7 +661,7 @@ not been reached or the \fBPAM\fR framework is returned \fBPAM_MAXTRIES\fR.
Default is \fB4\fR seconds. Minimum is \fB0\fR seconds. Maximum is \fB5\fR
seconds.
.sp
-Both \fBsu\fR(1M) and \fBsulogin\fR(1M) are affected by the value of
+Both \fBsu\fR(8) and \fBsulogin\fR(8) are affected by the value of
\fBSLEEPTIME\fR.
.RE
@@ -693,7 +693,7 @@ before a failed login message is logged, using the \fBsyslog\fR(3C)
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -707,21 +707,60 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBcsh\fR(1), \fBexit\fR(1), \fBksh\fR(1), \fBksh93\fR(1), \fBmail\fR(1),
-\fBmailx\fR(1), \fBnewgrp\fR(1), \fBpasswd\fR(1), \fBrlogin\fR(1),
-\fBrsh\fR(1), \fBsh\fR(1), \fBshell_builtins\fR(1), \fBtelnet\fR(1),
-\fBumask\fR(1), \fBin.rlogind\fR(1M), \fBin.telnetd\fR(1M), \fBlogins\fR(1M),
-\fBquota\fR(1M), \fBsu\fR(1M), \fBsulogin\fR(1M), \fBsyslogd\fR(1M),
-\fBuseradd\fR(1M), \fBuserdel\fR(1M), \fBpam\fR(3PAM), \fBrcmd\fR(3SOCKET),
-\fBsyslog\fR(3C), \fBttyname\fR(3C), \fBauth_attr\fR(4), \fBexec_attr\fR(4),
-\fBhosts.equiv\fR(4), \fBissue\fR(4), \fBlogindevperm\fR(4), \fBloginlog\fR(4),
-\fBnologin\fR(4), \fBnsswitch.conf\fR(4), \fBpam.conf\fR(4), \fBpasswd\fR(4),
-\fBpolicy.conf\fR(4), \fBprofile\fR(4), \fBshadow\fR(4), \fBuser_attr\fR(4),
-\fButmpx\fR(4), \fBwtmpx\fR(4), \fBattributes\fR(5), \fBenviron\fR(5),
-\fBpam_unix_account\fR(5), \fBpam_unix_auth\fR(5), \fBpam_unix_session\fR(5),
-\fBpam_authtok_check\fR(5), \fBpam_authtok_get\fR(5),
-\fBpam_authtok_store\fR(5), \fBpam_dhkeys\fR(5), \fBpam_passwd_auth\fR(5),
-\fBtermio\fR(7I)
+.BR csh (1),
+.BR exit (1),
+.BR ksh (1),
+.BR ksh93 (1),
+.BR mail (1),
+.BR mailx (1),
+.BR newgrp (1),
+.BR passwd (1),
+.BR rlogin (1),
+.BR rsh (1),
+.BR sh (1),
+.BR shell_builtins (1),
+.BR telnet (1),
+.BR umask (1),
+.BR syslog (3C),
+.BR ttyname (3C),
+.BR pam (3PAM),
+.BR rcmd (3SOCKET),
+.BR termio (4I),
+.BR auth_attr (5),
+.BR exec_attr (5),
+.BR hosts.equiv (5),
+.BR issue (5),
+.BR logindevperm (5),
+.BR loginlog (5),
+.BR nologin (5),
+.BR nsswitch.conf (5),
+.BR pam.conf (5),
+.BR passwd (5),
+.BR policy.conf (5),
+.BR profile (5),
+.BR shadow (5),
+.BR user_attr (5),
+.BR utmpx (5),
+.BR wtmpx (5),
+.BR attributes (7),
+.BR environ (7),
+.BR pam_authtok_check (7),
+.BR pam_authtok_get (7),
+.BR pam_authtok_store (7),
+.BR pam_dhkeys (7),
+.BR pam_passwd_auth (7),
+.BR pam_unix_account (7),
+.BR pam_unix_auth (7),
+.BR pam_unix_session (7),
+.BR in.rlogind (8),
+.BR in.telnetd (8),
+.BR logins (8),
+.BR quota (8),
+.BR su (8),
+.BR sulogin (8),
+.BR syslogd (8),
+.BR useradd (8),
+.BR userdel (8)
.SH DIAGNOSTICS
.ne 2
.na
@@ -749,7 +788,7 @@ Root login denied. Check the \fBCONSOLE\fR setting in \fB/etc/default/login\fR.
.ad
.sp .6
.RS 4n
-The user's home directory named in the \fBpasswd\fR(4) database cannot be found
+The user's home directory named in the \fBpasswd\fR(5) database cannot be found
or has the wrong permissions. Contact your system administrator.
.RE
@@ -760,7 +799,7 @@ or has the wrong permissions. Contact your system administrator.
.ad
.sp .6
.RS 4n
-Cannot execute the shell named in the \fBpasswd\fR(4) database. Contact your
+Cannot execute the shell named in the \fBpasswd\fR(5) database. Contact your
system administrator.
.RE
@@ -781,10 +820,10 @@ and the system does not record their last login time.
.LP
If you use the \fBCONSOLE\fR setting to disable root logins, you should arrange
that remote command execution by root is also disabled. See \fBrsh\fR(1),
-\fBrcmd\fR(3SOCKET), and \fBhosts.equiv\fR(4) for further details.
+\fBrcmd\fR(3SOCKET), and \fBhosts.equiv\fR(5) for further details.
.SH NOTES
-The \fBpam_unix\fR(5) module is no longer supported. Similar functionality is
-provided by \fBpam_unix_account\fR(5), \fBpam_unix_auth\fR(5),
-\fBpam_unix_session\fR(5), \fBpam_authtok_check\fR(5),
-\fBpam_authtok_get\fR(5), \fBpam_authtok_store\fR(5), \fBpam_dhkeys\fR(5), and
-\fBpam_passwd_auth\fR(5).
+The \fBpam_unix\fR(7) module is no longer supported. Similar functionality is
+provided by \fBpam_unix_account\fR(7), \fBpam_unix_auth\fR(7),
+\fBpam_unix_session\fR(7), \fBpam_authtok_check\fR(7),
+\fBpam_authtok_get\fR(7), \fBpam_authtok_store\fR(7), \fBpam_dhkeys\fR(7), and
+\fBpam_passwd_auth\fR(7).
diff --git a/usr/src/man/man1/logname.1 b/usr/src/man/man1/logname.1
index 932921e830..2f97c5d51e 100644
--- a/usr/src/man/man1/logname.1
+++ b/usr/src/man/man1/logname.1
@@ -57,7 +57,7 @@ function. If \fBgetlogin()\fR does not return successfully, the name
corresponding to the real user ID of the calling process is used instead.
If a name cannot be found, the user's ID will be printed.
.SH ENVIRONMENT VARIABLES
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBlogname\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.SH EXIT STATUS
@@ -99,7 +99,7 @@ user and accounting information
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -111,9 +111,14 @@ ATTRIBUTE TYPE ATTRIBUTE VALUE
_
Interface Stability Committed
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
-\fBenv\fR(1), \fBlogin\fR(1), \fBgetlogin\fR(3C), \fButmpx\fR(4),
-\fBattributes\fR(5), \fBenviron\fR(5), \fBstandards\fR(5)
+.BR env (1),
+.BR login (1),
+.BR getlogin (3C),
+.BR utmpx (5),
+.BR attributes (7),
+.BR environ (7),
+.BR standards (7)
diff --git a/usr/src/man/man1/logout.1 b/usr/src/man/man1/logout.1
index c31ae78271..4f70edb1cd 100644
--- a/usr/src/man/man1/logout.1
+++ b/usr/src/man/man1/logout.1
@@ -21,4 +21,6 @@ Terminate a login shell.
.SH SEE ALSO
.sp
.LP
-\fBcsh\fR(1), \fBlogin\fR(1), \fBattributes\fR(5)
+.BR csh (1),
+.BR login (1),
+.BR attributes (7)
diff --git a/usr/src/man/man1/look.1 b/usr/src/man/man1/look.1
index 5925621494..8e1cbe1462 100644
--- a/usr/src/man/man1/look.1
+++ b/usr/src/man/man1/look.1
@@ -68,4 +68,6 @@ spelling list
.SH SEE ALSO
.sp
.LP
-\fBgrep\fR(1), \fBsort\fR(1), \fBattributes\fR(5)
+.BR grep (1),
+.BR sort (1),
+.BR attributes (7)
diff --git a/usr/src/man/man1/lookbib.1 b/usr/src/man/man1/lookbib.1
index 63b6e08734..cc3a2635f7 100644
--- a/usr/src/man/man1/lookbib.1
+++ b/usr/src/man/man1/lookbib.1
@@ -79,8 +79,13 @@ reference file
.SH SEE ALSO
.sp
.LP
-\fBaddbib\fR(1), \fBgrep\fR(1), \fBindxbib\fR(1), \fBrefer\fR(1),
-\fBroffbib\fR(1), \fBsortbib\fR(1), \fBattributes\fR(5)
+.BR addbib (1),
+.BR grep (1),
+.BR indxbib (1),
+.BR refer (1),
+.BR roffbib (1),
+.BR sortbib (1),
+.BR attributes (7)
.SH BUGS
.sp
.LP
diff --git a/usr/src/man/man1/lorder.1 b/usr/src/man/man1/lorder.1
index 806e19403b..bbb14e6e3f 100644
--- a/usr/src/man/man1/lorder.1
+++ b/usr/src/man/man1/lorder.1
@@ -64,8 +64,12 @@ usually \fB/var/tmp\fR but can be redefined by setting the environment variable
.SH SEE ALSO
.sp
.LP
-\fBar\fR(1), \fBld\fR(1), \fBtsort\fR(1), \fBtmpnam\fR(3C), \fBar.h\fR(3HEAD),
-\fBattributes\fR(5)
+.BR ar (1),
+.BR ld (1),
+.BR tsort (1),
+.BR tmpnam (3C),
+.BR ar.h (3HEAD),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man1/lp.1 b/usr/src/man/man1/lp.1
index ff36484e18..1878abaa23 100644
--- a/usr/src/man/man1/lp.1
+++ b/usr/src/man/man1/lp.1
@@ -96,8 +96,8 @@ is in the process of printing, it is stopped and restarted from the beginning
.sp
.LP
The print client commands locate destination information using the "printers"
-database in the name service switch. See \fBnsswitch.conf\fR(4),
-\fBprinters\fR(4), and \fBprinters.conf\fR(4) for details.
+database in the name service switch. See \fBnsswitch.conf\fR(5),
+\fBprinters\fR(5), and \fBprinters.conf\fR(5) for details.
.SH OPTIONS
.LP
Printers that have a 4.\fIx\fR or \fBBSD-based print server\fR are not
@@ -128,11 +128,11 @@ printed output. \fIfile\fR is linked (as opposed to copied).
.RS 23n
Prints \fIfile\fR on a specific destination. The \fB-d\fR option is used to set
the destination only when the job is first created. (\fBNote:\fR To move
-existing jobs to a different destination, see \fBlpmove\fR(1M).)
+existing jobs to a different destination, see \fBlpmove\fR(8).)
\fIdestination\fR can be either a printer or a class of printers (see
-\fBlpadmin\fR(1M)). Specify \fIdestination\fR using atomic, URI-style
+\fBlpadmin\fR(8)). Specify \fIdestination\fR using atomic, URI-style
(\fIscheme\fR://\fIendpoint\fR), or POSIX-style
-(\fIserver\fR\fB:\fR\fIdestination\fR) names. See \fBprinters.conf\fR(4) for
+(\fIserver\fR\fB:\fR\fIdestination\fR) names. See \fBprinters.conf\fR(5) for
more information.
.RE
@@ -146,7 +146,7 @@ Prints \fIfile\fR on \fIform-name\fR. The \fBLP\fR print service ensures that
the form is mounted on the printer. The print request is rejected if the
printer does not support \fIform-name\fR, if \fIform-name\fR is not defined for
the system, or if the user is not allowed to use \fIform-name\fR (see
-\fBlpforms\fR(1M)).
+\fBlpforms\fR(8)).
.RE
.sp
@@ -360,7 +360,7 @@ an inch. Use \fBpica\fR to set character pitch to pica (\fB10\fR characters per
inch), or \fBelite\fR to set character pitch to elite (\fB12\fR characters per
inch) Use \fBcompressed\fR to set character pitch to as many characters as the
printer can handle. There is no standard number of characters per inch for all
-printers; see the \fBterminfo\fR database (see \fBterminfo\fR(4)) for the
+printers; see the \fBterminfo\fR database (see \fBterminfo\fR(5)) for the
default character pitch for your printer. This option can not be used with the
\fB-f\fR option.
.RE
@@ -450,7 +450,7 @@ rejected unless the print wheel is already mounted on the printer.
Printers Using Selectable or Programmable Character Sets: If the \fB-S\fR
option is not specified, \fBlp\fR uses the standard character set. If
\fIcharacter-set\fR is not defined in the \fBterminfo\fR database for the
-printer (see \fBterminfo\fR(4)), or is not an alias defined by the \fBLP\fR
+printer (see \fBterminfo\fR(5)), or is not an alias defined by the \fBLP\fR
administrator, the request is rejected.
.RE
@@ -519,11 +519,11 @@ specified, \fBlp\fR uses the standard input.
.SH USAGE
.LP
-See \fBlargefile\fR(5) for the description of the behavior of \fBlp\fR when
+See \fBlargefile\fR(7) for the description of the behavior of \fBlp\fR when
encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
.SH ENVIRONMENT VARIABLES
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBlp\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, \fBNLSPATH\fR, and \fBPATH\fR.
.sp
@@ -633,7 +633,7 @@ LDAP version of \fB/etc/printers.conf\fR
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -650,13 +650,33 @@ Interface Stability Standard
.SH SEE ALSO
.LP
-\fBcancel\fR(1), \fBenable\fR(1), \fBlpq\fR(1B), \fBlpr\fR(1B), \fBlprm\fR(1B),
-\fBlpstat\fR(1), \fBmail\fR(1), \fBpostprint\fR(1), \fBpr\fR(1), \fBstty\fR(1),
-\fBaccept\fR(1M), \fBlpadmin\fR(1M), \fBlpfilter\fR(1M), \fBlpforms\fR(1M),
-\fBlpmove\fR(1M), \fBlpsched\fR(1M), \fBlpshut\fR(1M), \fBlpsystem\fR(1M),
-\fBlpusers\fR(1M), \fBnsswitch.conf\fR(4), \fBprinters\fR(4),
-\fBprinters.conf\fR(4), \fBterminfo\fR(4), \fBattributes\fR(5),
-\fBenviron\fR(5), \fBlargefile\fR(5), \fBstandards\fR(5)
+.BR cancel (1),
+.BR enable (1),
+.BR lpstat (1),
+.BR mail (1),
+.BR postprint (1),
+.BR pr (1),
+.BR stty (1),
+.BR lpq (1B),
+.BR lpr (1B),
+.BR lprm (1B),
+.BR nsswitch.conf (5),
+.BR printers (5),
+.BR printers.conf (5),
+.BR terminfo (5),
+.BR attributes (7),
+.BR environ (7),
+.BR largefile (7),
+.BR standards (7),
+.BR accept (8),
+.BR lpadmin (8),
+.BR lpfilter (8),
+.BR lpforms (8),
+.BR lpmove (8),
+.BR lpsched (8),
+.BR lpshut (8),
+.BR lpsystem (8),
+.BR lpusers (8)
.SH NOTES
.LP
\fBCSI\fR-capability assumes that printer names are composed of \fBASCII\fR
diff --git a/usr/src/man/man1/lpstat.1 b/usr/src/man/man1/lpstat.1
index 75a7b34a5d..b9af5ec75a 100644
--- a/usr/src/man/man1/lpstat.1
+++ b/usr/src/man/man1/lpstat.1
@@ -111,8 +111,8 @@ prints the status of all output requests.
.sp
.LP
The print client commands locate destination information using the "printers"
-database in the name service switch. See \fBnsswitch.conf\fR(4),
-\fBprinters\fR(4), and \fBprinters.conf\fR(4) for details.
+database in the name service switch. See \fBnsswitch.conf\fR(5),
+\fBprinters\fR(5), and \fBprinters.conf\fR(5) for details.
.SH OPTIONS
.LP
The following options are supported:
@@ -205,7 +205,7 @@ omitted.
.sp
Specify printer and class names using atomic, URI-style (scheme://endpoint), or
POSIX-style (\fIserver\fR\fB:\fR\fIdestination\fR) names. See
-\fBprinters.conf\fR(4) for more information.
+\fBprinters.conf\fR(5) for more information.
.RE
.sp
@@ -414,7 +414,7 @@ LDAP version of \fB/etc/printers.conf\fR
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -429,9 +429,16 @@ Interface Stability Standard
.SH SEE ALSO
.LP
-\fBcancel\fR(1), \fBlp\fR(1), \fBlpq\fR(1B), \fBlpr\fR(1B), \fBlprm\fR(1B),
-\fBnsswitch.conf\fR(4), \fBprinters\fR(4), \fBprinters.conf\fR(4),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR cancel (1),
+.BR lp (1),
+.BR lpq (1B),
+.BR lpr (1B),
+.BR lprm (1B),
+.BR nsswitch.conf (5),
+.BR printers (5),
+.BR printers.conf (5),
+.BR attributes (7),
+.BR standards (7)
.SH NOTES
.LP
For remote print queues, the BSD print protocol provides a very limited set of
diff --git a/usr/src/man/man1/ls.1 b/usr/src/man/man1/ls.1
index f18a94f6f4..952b65c845 100644
--- a/usr/src/man/man1/ls.1
+++ b/usr/src/man/man1/ls.1
@@ -87,7 +87,7 @@ to a terminal is multi\(micolumn with entries sorted down the columns. The
format. In order to determine output formats for the \fB-C\fR, \fB-x\fR, and
\fB-m\fR options, \fBls\fR uses an environment variable, \fBCOLUMNS\fR, to
determine the number of character positions available on one output line. If
-this variable is not set, the \fBterminfo\fR(4) database is used to determine
+this variable is not set, the \fBterminfo\fR(5) database is used to determine
the number of columns, based on the environment variable, \fBTERM\fR. If this
information cannot be obtained, 80 columns are assumed. If the \fB-w\fR option
is used, the argument overrides any other column width.
@@ -2386,7 +2386,7 @@ diagnostic message is output on standard error.
.RE
.SH USAGE
-See \fBlargefile\fR(5) for the description of the behavior of \fBls\fR when
+See \fBlargefile\fR(7) for the description of the behavior of \fBls\fR when
encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
.SH EXAMPLES
\fBExample 1 \fRViewing File Permissions
@@ -2635,7 +2635,7 @@ example% ls -%crtime -tl file*
.LP
In this example the files are sorted by creation time.
.SH ENVIRONMENT VARIABLES
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBls\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_COLLATE\fR, \fBLC_CTYPE\fR, \fBLC_TIME\fR, \fBLC_MESSAGES\fR,
\fBNLSPATH\fR, and \fBTZ\fR.
@@ -2727,7 +2727,7 @@ terminal information database
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.SS "/usr/bin/ls"
.TS
@@ -2752,7 +2752,7 @@ For all options except \fB-A\fR, \fB-b\fR, \fB-e\fR, \fB-E,\fR \fB-h\fR,
\fB--escape\fR, \fB--file-type\fR, \fB--full-time\fR, \fB--human-readable\fR,
\fB--ignore-backups\fR, \fB--inode\fR, \fB--no-group\fR,
\fB--numeric-uid-gid\fR, \fB--reverse\fR, \fB--recursive\fR, \fB--si\fR,
-\fB--size\fR, and \fB--time-style\fR, see \fBstandards\fR(5).
+\fB--size\fR, and \fB--time-style\fR, see \fBstandards\fR(7).
.SS "/usr/xpg4/bin/ls"
.TS
@@ -2777,7 +2777,7 @@ For all options except \fB-A\fR, \fB-b\fR, \fB-e\fR, \fB-E,\fR \fB-h\fR,
\fB--escape\fR, \fB--file-type\fR, \fB--full-time\fR, \fB--human-readable\fR,
\fB--ignore-backups\fR, \fB--inode\fR, \fB--no-group\fR,
\fB--numeric-uid-gid\fR, \fB--reverse\fR, \fB--recursive\fR, \fB--si\fR,
-\fB--size\fR, and \fB--time-style\fR, see \fBstandards\fR(5).
+\fB--size\fR, and \fB--time-style\fR, see \fBstandards\fR(7).
.SS "/usr/xpg6/bin/ls"
.TS
@@ -2802,11 +2802,20 @@ For all options except \fB-A\fR, \fB-b\fR, \fB-e\fR, \fB-E,\fR \fB-h\fR,
\fB--escape\fR, \fB--file-type\fR, \fB--full-time\fR, \fB--human-readable\fR,
\fB--ignore-backups\fR, \fB--inode\fR, \fB--no-group\fR,
\fB--numeric-uid-gid\fR, \fB--reverse\fR, \fB--recursive\fR, \fB--si\fR,
-\fB--size\fR, and \fB--time-style\fR, see \fBstandards\fR(5).
+\fB--size\fR, and \fB--time-style\fR, see \fBstandards\fR(7).
.SH SEE ALSO
-\fBchmod\fR(1), \fBcp\fR(1), \fBsetfacl\fR(1), \fBfgetattr\fR(3C),
-\fBstrftime\fR(3C), \fBterminfo\fR(4), \fBacl\fR(5), \fBattributes\fR(5),
-\fBenviron\fR(5), \fBfsattr\fR(5), \fBlargefile\fR(5), \fBstandards\fR(5)
+.BR chmod (1),
+.BR cp (1),
+.BR setfacl (1),
+.BR fgetattr (3C),
+.BR strftime (3C),
+.BR terminfo (5),
+.BR acl (7),
+.BR attributes (7),
+.BR environ (7),
+.BR fsattr (7),
+.BR largefile (7),
+.BR standards (7)
.SH NOTES
Unprintable characters in file names can confuse the columnar output options.
.sp
diff --git a/usr/src/man/man1/m4.1 b/usr/src/man/man1/m4.1
index ffc264ec2e..861158353c 100644
--- a/usr/src/man/man1/m4.1
+++ b/usr/src/man/man1/m4.1
@@ -704,7 +704,7 @@ The value of VER is "2".
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBm4\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.SH EXIT STATUS
@@ -737,7 +737,7 @@ file.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.SS "\fB/usr/xpg4/bin/m4\fR"
.sp
@@ -754,4 +754,7 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBas\fR(1), \fBattributes\fR(5), \fBenviron\fR(5), \fBstandards\fR(5)
+.BR as (1),
+.BR attributes (7),
+.BR environ (7),
+.BR standards (7)
diff --git a/usr/src/man/man1/mac.1 b/usr/src/man/man1/mac.1
index e15ba72384..c78a5230d7 100644
--- a/usr/src/man/man1/mac.1
+++ b/usr/src/man/man1/mac.1
@@ -53,7 +53,7 @@ algorithm has specific key material requirements, as stated in the PKCS#11
specification. If \fB-k\fR is not specified, \fBmac\fR prompts for key
material using \fBgetpassphrase\fR(3C).
.sp
-For information on generating a key file, see \fBpktool\fR(1), \fBdd\fR(1M) or
+For information on generating a key file, see \fBpktool\fR(1), \fBdd\fR(8) or
the \fISystem Administration Guide: Security Services\fR.
.RE
@@ -214,7 +214,7 @@ An error occurred.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -230,8 +230,13 @@ Interface Stability Evolving
.SH SEE ALSO
.sp
.LP
-\fBdigest\fR(1), \fBpktool\fR(1), \fBdd\fR(1M), \fBgetpassphrase\fR(3C),
-\fBlibpkcs11\fR(3LIB), \fBattributes\fR(5), \fBpkcs11_softtoken\fR(5)
+.BR digest (1),
+.BR pktool (1),
+.BR getpassphrase (3C),
+.BR libpkcs11 (3LIB),
+.BR attributes (7),
+.BR pkcs11_softtoken (7),
+.BR dd (8)
.sp
.LP
\fISystem Administration Guide: Security Services\fR
diff --git a/usr/src/man/man1/mach.1 b/usr/src/man/man1/mach.1
index d24998646b..f0ca586bd0 100644
--- a/usr/src/man/man1/mach.1
+++ b/usr/src/man/man1/mach.1
@@ -19,7 +19,9 @@ The \fBmach\fR command displays the processor-type of the current host.
.SH SEE ALSO
.sp
.LP
-\fBarch\fR(1), \fBuname\fR(1), \fBattributes\fR(5)
+.BR arch (1),
+.BR uname (1),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man1/madv.so.1.1 b/usr/src/man/man1/madv.so.1.1
index bd2b437299..27cea0a51f 100644
--- a/usr/src/man/man1/madv.so.1.1
+++ b/usr/src/man/man1/madv.so.1.1
@@ -297,10 +297,21 @@ Configuration file
.SH SEE ALSO
.sp
.LP
-\fBcat\fR(1), \fBld.so.1\fR(1), \fBproc\fR(1), \fBsh\fR(1), \fBbrk\fR(2),
-\fBexec\fR(2), \fBfork\fR(2), \fBmmap\fR(2), \fBmemcntl\fR(2), \fBshmat\fR(2),
-\fBgetexecname\fR(3C), \fBmadvise\fR(3C), \fBsyslog\fR(3C), \fBproc\fR(4),
-\fBattributes\fR(5)
+.BR cat (1),
+.BR ld.so.1 (1),
+.BR proc (1),
+.BR sh (1),
+.BR brk (2),
+.BR exec (2),
+.BR fork (2),
+.BR memcntl (2),
+.BR mmap (2),
+.BR shmat (2),
+.BR getexecname (3C),
+.BR madvise (3C),
+.BR syslog (3C),
+.BR proc (5),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man1/mail.1 b/usr/src/man/man1/mail.1
index 5d8bc7b84c..43394040c3 100644
--- a/usr/src/man/man1/mail.1
+++ b/usr/src/man/man1/mail.1
@@ -639,11 +639,11 @@ recognized by \fBlogin\fR(1).
.RE
.SH USAGE
-See \fBlargefile\fR(5) for the description of the behavior of \fBmail\fR and
+See \fBlargefile\fR(7) for the description of the behavior of \fBmail\fR and
\fBrmail\fR when encountering files greater than or equal to 2 Gbyte ( 2^31
bytes).
.SH ENVIRONMENT VARIABLES
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBmail\fR: \fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and
\fBNLSPATH\fR.
.sp
@@ -767,9 +767,17 @@ temporary file
.RE
.SH SEE ALSO
-\fBchmod\fR(1), \fBcsh\fR(1), \fBlogin\fR(1), \fBmailx\fR(1), \fBuucp\fR(1C),
-\fBuuencode\fR(1C), \fBvacation\fR(1), \fBwrite\fR(1), \fBattributes\fR(5),
-\fBenviron\fR(5), \fBlargefile\fR(5)
+.BR chmod (1),
+.BR csh (1),
+.BR login (1),
+.BR mailx (1),
+.BR vacation (1),
+.BR write (1),
+.BR uucp (1C),
+.BR uuencode (1C),
+.BR attributes (7),
+.BR environ (7),
+.BR largefile (7)
.sp
.LP
\fISolaris Advanced User\&'s Guide\fR
diff --git a/usr/src/man/man1/mailcompat.1 b/usr/src/man/man1/mailcompat.1
index 5cd96ca8b1..4d356ffb71 100644
--- a/usr/src/man/man1/mailcompat.1
+++ b/usr/src/man/man1/mailcompat.1
@@ -25,7 +25,7 @@ To execute \fBmailcompat\fR, log onto the Solaris mail server and enter
program.
.SH USAGE
.LP
-See \fBlargefile\fR(5) for the description of the behavior of \fBmailcompat\fR
+See \fBlargefile\fR(7) for the description of the behavior of \fBmailcompat\fR
when encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
.SH EXAMPLES
.LP
@@ -79,4 +79,6 @@ list of recipients for forwarding messages
.SH SEE ALSO
.LP
-\fBmailx\fR(1), \fBattributes\fR(5), \fBlargefile\fR(5)
+.BR mailx (1),
+.BR attributes (7),
+.BR largefile (7)
diff --git a/usr/src/man/man1/mailstats.1 b/usr/src/man/man1/mailstats.1
index fed9e8f6bb..c42c9bf6c1 100644
--- a/usr/src/man/man1/mailstats.1
+++ b/usr/src/man/man1/mailstats.1
@@ -17,14 +17,14 @@ mailstats \- print statistics collected by sendmail
.sp
.LP
The \fBmailstats\fR utility prints out the statistics collected by the
-\fBsendmail\fR(1M) program on mailer usage. These statistics are collected if
+\fBsendmail\fR(8) program on mailer usage. These statistics are collected if
the file indicated by the \fBStatusFile\fR configuration option of
\fBsendmail\fR (defined in \fB/etc/mail/sendmail.cf\fR) exists. The default
statistics file is \fB/etc/mail/statistics\fR.
.sp
.LP
To enable \fBmailstats\fR, you must, as root, touch \fB/etc/mail/statistics\fR.
-See the \fBStatusFile\fR processing option in \fBsendmail\fR(1M).
+See the \fBStatusFile\fR processing option in \fBsendmail\fR(8).
.sp
.LP
\fBmailstats\fR first prints the time that the statistics file was created and
@@ -193,7 +193,7 @@ Output information in program-readable mode without clearing statistics.
.SH USAGE
.sp
.LP
-See \fBlargefile\fR(5) for the description of the behavior of \fBmailstats\fR
+See \fBlargefile\fR(7) for the description of the behavior of \fBmailstats\fR
when encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
.SH FILES
.sp
@@ -226,7 +226,7 @@ Default \fBsendmail\fR configuration file
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -242,5 +242,8 @@ Output Stability Unstable
.SH SEE ALSO
.sp
.LP
-\fBcrontab\fR(1), \fBcron\fR(1M), \fBsendmail\fR(1M), \fBattributes\fR(5),
-\fBlargefile\fR(5)
+.BR crontab (1),
+.BR attributes (7),
+.BR largefile (7),
+.BR cron (8),
+.BR sendmail (8)
diff --git a/usr/src/man/man1/mailx.1 b/usr/src/man/man1/mailx.1
index a710fd32fd..45997ad4f2 100644
--- a/usr/src/man/man1/mailx.1
+++ b/usr/src/man/man1/mailx.1
@@ -314,7 +314,7 @@ Print the \fBmailx\fR version number and exit.
\fB\fB-v\fR\fR
.ad
.RS 17n
-Pass the \fB-v\fR flag to \fBsendmail\fR(1M).
+Pass the \fB-v\fR flag to \fBsendmail\fR(8).
.RE
.sp
@@ -2111,7 +2111,7 @@ Remove loops in \fBuucp\fR(1C) address paths (typically generated by the
of \fBUUCP\fR routes or connections.
.RE
-Conversion is disabled by default. See also \fBsendmail\fR(1M) and the \fB-U\fR
+Conversion is disabled by default. See also \fBsendmail\fR(8) and the \fB-U\fR
command-line option.
.RE
@@ -2379,7 +2379,7 @@ file. See \fBStarting Mail\fR in USAGE above.
.ad
.RS 26n
Your "real name" to be included in the From line of messages you send. By
-default this is derived from the comment field in your \fBpasswd\fR(4) file
+default this is derived from the comment field in your \fBpasswd\fR(5) file
entry.
.RE
@@ -2542,7 +2542,7 @@ The number of lines of header to print with the \fBto\fRp command. Default is
\fB\fBverbose\fR\fR
.ad
.RS 26n
-Invoke \fBsendmail\fR(1M) with the \fB-v\fR flag.
+Invoke \fBsendmail\fR(8) with the \fB-v\fR flag.
.RE
.sp
@@ -2582,11 +2582,11 @@ the message is not sent.
.SS "Large File Behavior"
.LP
-See \fBlargefile\fR(5) for the description of the behavior of \fBmailx\fR when
+See \fBlargefile\fR(7) for the description of the behavior of \fBmailx\fR when
encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
.SH ENVIRONMENT VARIABLES
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBmailx\fR: \fBHOME\fR, \fBLANG\fR,
\fBLC_CTYPE\fR, \fBLC_TIME\fR, \fBLC_MESSAGES\fR, \fBNLSPATH\fR, and
\fBTERM\fR.
@@ -2827,7 +2827,7 @@ post office directory
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -2842,12 +2842,30 @@ Interface Stability Standard
.SH SEE ALSO
.LP
-\fBbiff\fR(1B), \fBecho\fR(1), \fBed\fR(1), \fBex\fR(1), \fBfmt\fR(1),
-\fBlp\fR(1), \fBls\fR(1), \fBmail\fR(1), \fBmail\fR(1B), \fBmailcompat\fR(1),
-\fBmore\fR(1), \fBpg\fR(1), \fBsh\fR(1), \fBuucp\fR(1C), \fBvacation\fR(1),
-\fBvi\fR(1), \fBnewaliases\fR(1M), \fBsendmail\fR(1M), \fBaliases\fR(4),
-\fBpasswd\fR(4), \fBattributes\fR(5), \fBenviron\fR(5), \fBlargefile\fR(5),
-\fBstandards\fR(5)
+.BR echo (1),
+.BR ed (1),
+.BR ex (1),
+.BR fmt (1),
+.BR lp (1),
+.BR ls (1),
+.BR mail (1),
+.BR mailcompat (1),
+.BR more (1),
+.BR pg (1),
+.BR sh (1),
+.BR vacation (1),
+.BR vi (1),
+.BR biff (1B),
+.BR mail (1B),
+.BR uucp (1C),
+.BR aliases (5),
+.BR passwd (5),
+.BR attributes (7),
+.BR environ (7),
+.BR largefile (7),
+.BR standards (7),
+.BR newaliases (8),
+.BR sendmail (8)
.SH NOTES
.LP
Where \fIshell-command\fR is shown as valid, arguments are not always allowed.
diff --git a/usr/src/man/man1/make.1 b/usr/src/man/man1/make.1
index 532c3368c1..c3dd25badc 100644
--- a/usr/src/man/man1/make.1
+++ b/usr/src/man/man1/make.1
@@ -446,7 +446,7 @@ When \fBmake\fR first starts, it reads the \fBMAKEFLAGS\fR environment variable
to obtain any of the following options specified present in its value: \fB-C\fR,
\fB-d\fR, \fB-D\fR, \fB-e\fR, \fB-i\fR, \fB-k\fR, \fB-n\fR, \fB-p\fR, \fB-q\fR,
\fB-r\fR, \fB-s\fR, \fB-S\fR, or \fB-t\fR. Due to the implementation of POSIX.2
-(see \fBPOSIX.2\fR(5), the \fBMAKEFLAGS\fR values contains a leading \fB\(mi\fR
+(see \fBPOSIX.2\fR(7), the \fBMAKEFLAGS\fR values contains a leading \fB\(mi\fR
character. The \fBmake\fR utility then reads the command line for additional
options, which also take effect.
.sp
@@ -2353,7 +2353,7 @@ a.o b.o: incl.h
.SH ENVIRONMENT VARIABLES
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBmake\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
@@ -2611,7 +2611,7 @@ state file in the local directory
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.SS "/usr/xpg4/bin/make"
.TS
box;
@@ -2621,15 +2621,27 @@ ATTRIBUTE TYPE ATTRIBUTE VALUE
_
Interface Stability Committed
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.LP
-\fBar\fR(1), \fBarch\fR(1), \fBcd\fR(1), \fBcpp\fR(1), \fBlex\fR(1),
-\fBmach\fR(1), \fBsccs-get\fR(1), \fBsh\fR(1), \fBsysV-make\fR(1),
-\fByacc\fR(1), \fBwordexp\fR(3C), \fBpasswd\fR(4), \fBattributes\fR(5),
-\fBenviron\fR(5), \fBPOSIX.2\fR(5), \fBstandards\fR(5)
+.BR ar (1),
+.BR arch (1),
+.BR cd (1),
+.BR cpp (1),
+.BR lex (1),
+.BR mach (1),
+.BR sccs-get (1),
+.BR sh (1),
+.BR sysV-make (1),
+.BR yacc (1),
+.BR wordexp (3C),
+.BR passwd (5),
+.BR POSIX.2 (7),
+.BR attributes (7),
+.BR environ (7),
+.BR standards (7)
.sp
.LP
\fISolaris Advanced User\&'s Guide\fR
diff --git a/usr/src/man/man1/makekey.1 b/usr/src/man/man1/makekey.1
index d7d30b2e03..fd17d20a2d 100644
--- a/usr/src/man/man1/makekey.1
+++ b/usr/src/man/man1/makekey.1
@@ -45,7 +45,9 @@ input and output will be pipes.
.SH SEE ALSO
.sp
.LP
-\fBed\fR(1), \fBvi\fR(1), \fBpasswd\fR(4)
+.BR ed (1),
+.BR vi (1),
+.BR passwd (5)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man1/man.1 b/usr/src/man/man1/man.1
index 1df42e4b1a..f3d0107098 100644
--- a/usr/src/man/man1/man.1
+++ b/usr/src/man/man1/man.1
@@ -52,9 +52,9 @@ If no manual page is located,
prints an error message.
.Ss "Source Format"
Reference Manual pages are marked up with either
-.Xr man 5 ,
+.Xr man 7 ,
or
-.Xr mdoc 5
+.Xr mdoc 7
language tags.
The
.Nm
@@ -342,7 +342,7 @@ or
processes the request in the usual manner.
.Sh ENVIRONMENT VARIABLES
See
-.Xr environ 5
+.Xr environ 7
for descriptions of the following environment variables
that affect the execution of
.Nm man :
@@ -426,9 +426,9 @@ Enabled.
.Xr mandoc 1 ,
.Xr more 1 ,
.Xr whatis 1 ,
-.Xr environ 5 ,
-.Xr man 5 ,
-.Xr mdoc 5
+.Xr environ 7 ,
+.Xr man 7 ,
+.Xr mdoc 7
.Sh NOTES
The
.Fl f
diff --git a/usr/src/man/man1/mandoc.1 b/usr/src/man/man1/mandoc.1
index eaafde344f..f3ed8b4e92 100644
--- a/usr/src/man/man1/mandoc.1
+++ b/usr/src/man/man1/mandoc.1
@@ -39,9 +39,9 @@ utility formats manual pages for display.
By default,
.Nm
reads
-.Xr mdoc 5
+.Xr mdoc 7
or
-.Xr man 5
+.Xr man 7
text from stdin and produces
.Fl T Cm locale
output.
@@ -67,10 +67,10 @@ It can be specified to override
Override the default operating system
.Ar name
for the
-.Xr mdoc 5
+.Xr mdoc 7
.Ic \&Os
and for the
-.Xr man 5
+.Xr man 7
.Ic \&TH
macro.
.It Fl K Ar encoding
@@ -110,20 +110,20 @@ Otherwise, input is interpreted as
With
.Fl mdoc ,
all input files are interpreted as
-.Xr mdoc 5 .
+.Xr mdoc 7 .
With
.Fl man ,
all input files are interpreted as
-.Xr man 5 .
+.Xr man 7 .
By default, the input language is automatically detected for each file:
if the first macro is
.Ic \&Dd
or
.Ic \&Dt ,
the
-.Xr mdoc 5
+.Xr mdoc 7
parser is used; otherwise, the
-.Xr man 5
+.Xr man 7
parser is used.
With other arguments,
.Fl m
@@ -223,7 +223,7 @@ reads from standard input.
Use
.Fl T Cm ascii
to force text output in 7-bit ASCII character encoding documented in the
-.Xr ascii 5
+.Xr ascii 7
manual page, ignoring the
.Xr locale 1
set in the environment.
@@ -247,14 +247,14 @@ To remove the markup, pipe the output to
instead.
.Pp
The special characters documented in
-.Xr mandoc_char 5
+.Xr mandoc_char 7
are rendered best-effort in an ASCII equivalent.
In particular, opening and closing
.Sq single quotes
are represented as characters number 0x60 and 0x27, respectively,
which agrees with all ASCII standards from 1965 to the latest
revision (2012) and which matches the traditional way in which
-.Xr roff 5
+.Xr roff 7
formatters represent single quotes in ASCII output.
This correct ASCII rendering may look strange with modern
Unicode-compatible fonts because contrary to ASCII, Unicode uses
@@ -269,18 +269,18 @@ arguments are accepted:
The left margin for normal text is set to
.Ar indent
blank characters instead of the default of five for
-.Xr mdoc 5
+.Xr mdoc 7
and seven for
-.Xr man 5 .
+.Xr man 7 .
Increasing this is not recommended; it may result in degraded formatting,
for example overfull lines or ugly line breaks.
When output is to a pager on a terminal that is less than 66 columns
wide, the default is reduced to three columns.
.It Cm mdoc
Format
-.Xr man 5
+.Xr man 7
input files in
-.Xr mdoc 5
+.Xr mdoc 7
output style.
This prints the operating system name rather than the page title
on the right side of the footer line, and it implies
@@ -288,7 +288,7 @@ on the right side of the footer line, and it implies
One useful application is for checking that
.Fl T Cm man
output formats in the same way as the
-.Xr mdoc 5
+.Xr mdoc 7
source it was generated from.
.It Cm tag Ns Op = Ns Ar term
If the formatted manual page is opened in a pager,
@@ -325,7 +325,7 @@ Output produced by
conforms to HTML5 using optional self-closing tags.
Default styles use only CSS1.
Equations rendered from
-.Xr eqn 5
+.Xr eqn 7
blocks use MathML.
.Pp
The file
@@ -440,22 +440,22 @@ This output mode can also be selected explicitly with
Use
.Fl T Cm man
to translate
-.Xr mdoc 5
+.Xr mdoc 7
input into
-.Xr man 5
+.Xr man 7
output format.
This is useful for distributing manual sources to legacy systems
lacking
-.Xr mdoc 5
+.Xr mdoc 7
formatters.
Embedded
-.Xr eqn 5
+.Xr eqn 7
and
-.Xr tbl 5
+.Xr tbl 7
code is not supported.
.Pp
If the input format of a file is
-.Xr man 5 ,
+.Xr man 7 ,
the input is copied to the output.
The parser is also run, and as usual, the
.Fl W
@@ -466,7 +466,7 @@ are displayed before copying the input to the output.
Use
.Fl T Cm markdown
to translate
-.Xr mdoc 5
+.Xr mdoc 7
input to the markdown format conforming to
.Lk http://daringfireball.net/projects/markdown/syntax.text\
"John Gruber's 2004 specification" .
@@ -489,10 +489,10 @@ instead, use
directly.
.Pp
The
-.Xr man 5 ,
-.Xr tbl 5 ,
+.Xr man 7 ,
+.Xr tbl 7 ,
and
-.Xr eqn 5
+.Xr eqn 7
input languages are not supported by
.Fl T Cm markdown
output mode.
@@ -564,9 +564,9 @@ It is useful for debugging the source code of manual pages.
The exact format is subject to change, so don't write parsers for it.
.Pp
The first paragraph shows meta data found in the
-.Xr mdoc 5
+.Xr mdoc 7
prologue, on the
-.Xr man 5
+.Xr man 7
.Ic \&TH
line, or the fallbacks used.
.Pp
@@ -577,10 +577,10 @@ The columns are:
.Bl -enum -compact
.It
For macro nodes, the macro name; for text and
-.Xr tbl 5
+.Xr tbl 7
nodes, the content.
There is a special format for
-.Xr eqn 5
+.Xr eqn 7
nodes.
.It
Node type (text, elem, block, head, body, body-end, tail, tbl, eqn).
@@ -733,11 +733,11 @@ To produce a series of PostScript manuals for A4 paper:
.Dl $ mandoc \-T ps \-O paper=a4 mdoc.5 man.5 > manuals.ps
.Pp
Convert a modern
-.Xr mdoc 5
+.Xr mdoc 7
manual to the older
-.Xr man 5
+.Xr man 7
format, for use on systems lacking an
-.Xr mdoc 5
+.Xr mdoc 7
parser:
.Pp
.Dl $ mandoc \-T man foo.mdoc > foo.man
@@ -793,7 +793,7 @@ Invalid command line arguments were specified.
No input files have been read and no output is produced.
.It Cm unsupp
An input file uses unsupported low-level
-.Xr mandoc_roff 5
+.Xr mandoc_roff 7
features.
The output may be incomplete and/or misformatted,
so using GNU troff instead of
@@ -906,16 +906,16 @@ keyword substitution as conventionally used in these operating systems.
.El
.Ss Style suggestions
.Bl -ohang
-.It Sy "legacy man(5) date format"
+.It Sy "legacy man(7) date format"
.Pq mdoc
The
.Ic \&Dd
macro uses the legacy
-.Xr man 5
+.Xr man 7
date format
.Dq yyyy-dd-mm .
Consider using the conventional
-.Xr mdoc 5
+.Xr mdoc 7
date format
.Dq "Month dd, yyyy"
instead.
@@ -1012,7 +1012,7 @@ and
command line options, the
.Ev MANPATH
environment variable, the
-.Xr man.conf 5
+.Xr man.conf 7
file and falling back to the default of
.Pa /usr/share/man : Ns Pa /usr/X11R6/man : Ns Pa /usr/local/man ,
also configurable at compile time using the
@@ -1120,14 +1120,14 @@ Consider checking whether the file name or the argument need a correction.
.It Sy "missing date, using \(dq\(dq"
.Pq mdoc, man
The document was parsed as
-.Xr mdoc 5
+.Xr mdoc 7
and it has no
.Ic \&Dd
macro, or the
.Ic \&Dd
macro has no arguments or only empty arguments;
or the document was parsed as
-.Xr man 5
+.Xr man 7
and it has no
.Ic \&TH
macro, or the
@@ -1298,7 +1298,7 @@ Probably, there are author names lacking markup.
.It Sy "obsolete macro"
.Pq mdoc
See the
-.Xr mdoc 5
+.Xr mdoc 7
manual for replacements.
.It Sy "macro neither callable nor escaped"
.Pq mdoc
@@ -1309,7 +1309,7 @@ otherwise, escape it by prepending
.Sq \e& .
.It Sy "skipping paragraph macro"
In
-.Xr mdoc 5
+.Xr mdoc 7
documents, this happens
.Bl -dash -compact
.It
@@ -1322,7 +1322,7 @@ at the end of items in non-column, non-compact lists
and for multiple consecutive paragraph macros.
.El
In
-.Xr man 5
+.Xr man 7
documents, it happens
.Bl -dash -compact
.It
@@ -1417,7 +1417,7 @@ The previous, interrupted macro is deleted from the parse tree.
.Pq roff , eqn
The macro name is missing from a macro definition request,
or an
-.Xr eqn 5
+.Xr eqn 7
control statement or operation keyword lacks its required argument.
.It Sy "conditional request controls empty scope"
.Pq roff
@@ -1485,7 +1485,7 @@ macro, at least one other argument precedes the type argument.
The
.Nm
utility copes with any argument order, but some other
-.Xr mdoc 5
+.Xr mdoc 7
implementations do not.
.It Sy "missing -width in -tag list, using 8n"
.Pq mdoc
@@ -1730,10 +1730,10 @@ A wrong font may remain active after using the character.
.It Sy "unknown font, skipping request"
.Pq man , tbl
A
-.Xr mandoc_roff 5
+.Xr mandoc_roff 7
.Ic \&ft
request or a
-.Xr tbl 5
+.Xr tbl 7
.Ic \&f
layout modifier has an unknown
.Ar font
@@ -1924,7 +1924,7 @@ some content, but the parser can continue.
.It Sy "skipping bad character"
.Pq mdoc , man , roff
The input file contains a byte that is not a printable
-.Xr ascii 5
+.Xr ascii 7
character.
The message mentions the character number.
The offending byte is replaced with a question mark
@@ -1934,11 +1934,11 @@ transliteration of the intended character.
.It Sy "skipping unknown macro"
.Pq mdoc , man , roff
The first identifier on a request or macro line is neither recognized as a
-.Xr mandoc_roff 5
+.Xr mandoc_roff 7
request, nor as a user-defined macro, nor, respectively, as an
-.Xr mdoc 5
+.Xr mdoc 7
or
-.Xr man 5
+.Xr man 7
macro.
It may be mistyped or unsupported.
The request or macro is discarded including its arguments.
@@ -1961,7 +1961,7 @@ An
macro occurs outside any
.Ic \&Bl
list, or an
-.Xr eqn 5
+.Xr eqn 7
.Ic above
delimiter occurs outside any pile.
It is discarded including its arguments.
@@ -1978,16 +1978,16 @@ It is discarded including its arguments.
Various syntax elements can only be used to explicitly close blocks
that have previously been opened.
An
-.Xr mdoc 5
+.Xr mdoc 7
block closing macro, a
-.Xr man 5
+.Xr man 7
.Ic \&ME, \&RE
or
.Ic \&UE
macro, an
-.Xr eqn 5
+.Xr eqn 7
right delimiter or closing brace, or the end of an equation, table, or
-.Xr mandoc_roff 5
+.Xr mandoc_roff 7
conditional request is encountered but no matching block is open.
The offending request or macro is discarded.
.It Sy "fewer RS blocks open, skipping"
@@ -2003,7 +2003,7 @@ macro is discarded.
.It Sy "inserting missing end of block"
.Pq mdoc , tbl
Various
-.Xr mdoc 5
+.Xr mdoc 7
macros as well as tables require explicit closing by dedicated macros.
A block that doesn't support bad nesting
ends before all of its children are properly closed.
@@ -2011,15 +2011,15 @@ The open child nodes are closed implicitly.
.It Sy "appending missing end of block"
.Pq mdoc , man , eqn , tbl , roff
At the end of the document, an explicit
-.Xr mdoc 5
+.Xr mdoc 7
block, a
-.Xr man 5
+.Xr man 7
next-line scope or
.Ic \&MT , \&RS
or
.Ic \&UR
block, an equation, table, or
-.Xr mandoc_roff 5
+.Xr mandoc_roff 7
conditional or ignore block is still open.
The open block is closed implicitly.
.It Sy "escaped character not allowed in a name"
@@ -2129,7 +2129,7 @@ macro has an unknown argument and is discarded.
An
.Ic \&it
request or an
-.Xr eqn 5
+.Xr eqn 7
.Ic \&size
or
.Ic \&gsize
@@ -2168,7 +2168,7 @@ only shows the path as it appears behind
.It Sy "skipping all arguments"
.Pq mdoc , man , eqn , roff
An
-.Xr mdoc 5
+.Xr mdoc 7
.Ic \&Bt ,
.Ic \&Ed ,
.Ic \&Ef ,
@@ -2183,18 +2183,18 @@ or
macro, an
.Ic \&It
macro in a list that don't support item heads, a
-.Xr man 5
+.Xr man 7
.Ic \&LP ,
.Ic \&P ,
or
.Ic \&PP
macro, an
-.Xr eqn 5
+.Xr eqn 7
.Ic \&EQ
or
.Ic \&EN
macro, or a
-.Xr mandoc_roff 5
+.Xr mandoc_roff 7
.Ic \&br ,
.Ic \&fi ,
or
@@ -2259,7 +2259,7 @@ Parsing is aborted as soon as the condition is detected.
.It Sy "unsupported control character"
.Pq roff
An ASCII control character supported by other
-.Xr mandoc_roff 5
+.Xr mandoc_roff 7
implementations but not by
.Nm
was found in an input file.
@@ -2274,7 +2274,7 @@ or considerable misformatting.
.It Sy "unsupported roff request"
.Pq roff
An input file contains a
-.Xr mandoc_roff 5
+.Xr mandoc_roff 7
request supported by GNU troff or Heirloom troff but not by
.Nm ,
and it is likely that this will cause information loss
@@ -2292,9 +2292,9 @@ The modifier is discarded.
.It Sy "ignoring macro in table"
.Pq tbl , mdoc , man
A table contains an invocation of an
-.Xr mdoc 5
+.Xr mdoc 7
or
-.Xr man 5
+.Xr man 7
macro or of an undefined macro.
The macro is ignored, and its arguments are handled
as if they were a text line.
@@ -2306,7 +2306,7 @@ macro.
This message is only generated in
.Fl T Cm man
output mode, where
-.Xr tbl 5
+.Xr tbl 7
input is not supported.
.It Sy "skipping eqn in -Tman mode"
.Pq mdoc , eqn
@@ -2316,7 +2316,7 @@ macro.
This message is only generated in
.Fl T Cm man
output mode, where
-.Xr eqn 5
+.Xr eqn 7
input is not supported.
.El
.Ss Bad command line arguments
@@ -2355,22 +2355,22 @@ The
.Fl O Cm tag
option was specified but the tag was not found in any of the displayed
manual pages.
-.It Sy "\-Tmarkdown unsupported for man(5) input"
+.It Sy "\-Tmarkdown unsupported for man(7) input"
.Pq man
The
.Fl T Cm markdown
option was specified but an input file uses the
-.Xr man 5
+.Xr man 7
language.
No output is produced for that input file.
.El
.Sh SEE ALSO
-.Xr eqn 5 ,
-.Xr man 5 ,
-.Xr mandoc_char 5 ,
-.Xr mandoc_roff 5 ,
-.Xr mdoc 5 ,
-.Xr tbl 5
+.Xr eqn 7 ,
+.Xr man 7 ,
+.Xr mandoc_char 7 ,
+.Xr mandoc_roff 7 ,
+.Xr mdoc 7 ,
+.Xr tbl 7
.Sh HISTORY
The
.Nm
diff --git a/usr/src/man/man1/mconnect.1 b/usr/src/man/man1/mconnect.1
index 3e9a1eedf5..651e59360c 100644
--- a/usr/src/man/man1/mconnect.1
+++ b/usr/src/man/man1/mconnect.1
@@ -61,7 +61,7 @@ The name of a given host.
.SH USAGE
.sp
.LP
-The \fBmconnect\fR command is IPv6-enabled. See \fBip6\fR(7P).
+The \fBmconnect\fR command is IPv6-enabled. See \fBip6\fR(4P).
.SH FILES
.sp
.ne 2
@@ -75,7 +75,10 @@ Help file for \fBSMTP\fR commands
.SH SEE ALSO
.sp
.LP
-\fBtelnet\fR(1), \fBsendmail\fR(1M), \fBattributes\fR(5), \fBip6\fR(7P)
+.BR telnet (1),
+.BR ip6 (4P),
+.BR attributes (7),
+.BR sendmail (8)
.sp
.LP
Postel, Jonathan B., \fIRFC 821, Simple Mail Transfer Protocol\fR, Information
diff --git a/usr/src/man/man1/mcs.1 b/usr/src/man/man1/mcs.1
index a5505c2340..6fe2745383 100644
--- a/usr/src/man/man1/mcs.1
+++ b/usr/src/man/man1/mcs.1
@@ -187,7 +187,7 @@ temporary files
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -203,8 +203,15 @@ Interface Stability Stable
.SH SEE ALSO
.sp
.LP
-\fBar\fR(1), \fBas\fR(1), \fBld\fR(1), \fBstrip\fR(1), \fBar.h\fR(3HEAD),
-\fBelf\fR(3ELF), \fBtmpnam\fR(3C), \fBa.out\fR(4), \fBattributes\fR(5)
+.BR ar (1),
+.BR as (1),
+.BR ld (1),
+.BR strip (1),
+.BR tmpnam (3C),
+.BR elf (3ELF),
+.BR ar.h (3HEAD),
+.BR a.out (5),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man1/mdb.1 b/usr/src/man/man1/mdb.1
index 54f00f4b61..1269218862 100644
--- a/usr/src/man/man1/mdb.1
+++ b/usr/src/man/man1/mdb.1
@@ -1900,7 +1900,7 @@ itself. \fBmdb\fR can only perform a context switch when examining a crash dump
if the dump contains the physical memory pages of the specified user process
(as opposed to just kernel pages). The kernel crash dump facility can be
configured to dump all pages or the pages of the current user process using
-\fBdumpadm\fR(1M). The \fB::status\fR dcmd can be used to display the contents
+\fBdumpadm\fR(8). The \fB::status\fR dcmd can be used to display the contents
of the current crash dump.
.sp
When the user requests a context switch from the kernel target, \fBmdb\fR
@@ -4274,7 +4274,7 @@ present in the current directory.
.LP
\fBmdb\fR processes all input files (including scripts, object files, core
files, and raw data files) in a large file aware fashion. See
-\fBlargefile\fR(5) for more information about the processing of large files,
+\fBlargefile\fR(7) for more information about the processing of large files,
which are files greater than or equal to 2 Gbytes (2^31 bytes).
.SH EXIT STATUS
.LP
@@ -4419,7 +4419,7 @@ information in a core file or crash dump, or from the current machine as if by
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -4434,14 +4434,38 @@ Interface Stability Evolving
.SH SEE ALSO
.LP
-\fBadb\fR(1), \fBgcore\fR(1), \fBproc\fR(1), \fBpgrep\fR(1),
-\fBps\fR(1), \fBstty\fR(1), \fBtruss\fR(1), \fBuname\fR(1), \fBcoreadm\fR(1M),
-\fBdumpadm\fR(1M), \fBlargefile\fR(5), \fBsavecore\fR(1M), \fBexec\fR(2),
-\fBfork\fR(2), \fB_lwp_self\fR(2), \fBpipe\fR(2), \fBvfork\fR(2),
-\fBdlopen\fR(3C), \fBelf\fR(3ELF), \fBlibc_db\fR(3LIB), \fBlibkvm\fR(3LIB),
-\fBlibthread\fR(3LIB), \fBsignal\fR(3C), \fBsignal.h\fR(3HEAD),
-\fBthr_self\fR(3C), \fBcore\fR(4), \fBproc\fR(4), \fBattributes\fR(5),
-\fBlargefile\fR(5), \fBthreads\fR(5), \fBksyms\fR(7D), \fBmem\fR(7D)
+.BR adb (1),
+.BR gcore (1),
+.BR pgrep (1),
+.BR proc (1),
+.BR ps (1),
+.BR stty (1),
+.BR truss (1),
+.BR uname (1),
+.BR _lwp_self (2),
+.BR exec (2),
+.BR fork (2),
+.BR pipe (2),
+.BR vfork (2),
+.BR dlopen (3C),
+.BR signal (3C),
+.BR thr_self (3C),
+.BR elf (3ELF),
+.BR signal.h (3HEAD),
+.BR libc_db (3LIB),
+.BR libkvm (3LIB),
+.BR libthread (3LIB),
+.BR ksyms (4D),
+.BR mem (4D),
+.BR core (5),
+.BR proc (5),
+.BR attributes (7),
+.BR largefile (7),
+.BR largefile (7),
+.BR threads (7),
+.BR coreadm (8),
+.BR dumpadm (8),
+.BR savecore (8)
.sp
.LP
\fILinker and Libraries Guide\fR
@@ -4480,7 +4504,7 @@ is not present in those core files, the symbol information might not match the
data present in the process at the time it dumped core. In releases later than
Solaris 9, text sections and read-only data are included in core files by
default. Users can configure their processes to exclude that information from
-core files using \fBcoreadm\fR(1M). Thus, the information presented by
+core files using \fBcoreadm\fR(8). Thus, the information presented by
\fBmdb\fR for those core files can not match the data that was present at the
time the process dumped core. Core files from x86 systems can not be
examined on SPARC systems, and vice-versa.
diff --git a/usr/src/man/man1/mesg.1 b/usr/src/man/man1/mesg.1
index 8a3de96492..8c808e4d16 100644
--- a/usr/src/man/man1/mesg.1
+++ b/usr/src/man/man1/mesg.1
@@ -89,7 +89,7 @@ Grants permission to other users to send messages to the terminal.
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBmesg\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.SH EXIT STATUS
@@ -145,7 +145,7 @@ terminal devices
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -161,5 +161,8 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBtalk\fR(1), \fBwrite\fR(1), \fBattributes\fR(5), \fBenviron\fR(5),
-\fBstandards\fR(5)
+.BR talk (1),
+.BR write (1),
+.BR attributes (7),
+.BR environ (7),
+.BR standards (7)
diff --git a/usr/src/man/man1/mkdir.1 b/usr/src/man/man1/mkdir.1
index 07e092b534..0ea12b5d0a 100644
--- a/usr/src/man/man1/mkdir.1
+++ b/usr/src/man/man1/mkdir.1
@@ -185,7 +185,7 @@ A path name of a directory to be created.
.SH USAGE
.sp
.LP
-See \fBlargefile\fR(5) for the description of the behavior of \fBmkdir\fR when
+See \fBlargefile\fR(7) for the description of the behavior of \fBmkdir\fR when
encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
.SH EXAMPLES
.LP
@@ -209,7 +209,7 @@ creates the subdirectory structure \fBltr/jd/jan\fR.
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBmkdir\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.SH EXIT STATUS
@@ -238,7 +238,7 @@ An error occurred.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.SS "/usr/bin/mkdir"
.sp
@@ -253,7 +253,7 @@ CSI Enabled
_
Interface Stability Committed
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SS "ksh93"
@@ -268,7 +268,7 @@ ATTRIBUTE TYPE ATTRIBUTE VALUE
_
Interface Stability See below.
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.sp
@@ -278,6 +278,14 @@ The built-in interfaces are Uncommitted.
.SH SEE ALSO
.sp
.LP
-\fBchmod\fR(1), \fBksh93\fR(1), \fBrm\fR(1), \fBsh\fR(1), \fBumask\fR(1),
-\fBIntro\fR(2), \fBmkdir\fR(2), \fBattributes\fR(5), \fBenviron\fR(5),
-\fBlargefile\fR(5), \fBstandards\fR(5)
+.BR chmod (1),
+.BR ksh93 (1),
+.BR rm (1),
+.BR sh (1),
+.BR umask (1),
+.BR Intro (2),
+.BR mkdir (2),
+.BR attributes (7),
+.BR environ (7),
+.BR largefile (7),
+.BR standards (7)
diff --git a/usr/src/man/man1/mkmsgs.1 b/usr/src/man/man1/mkmsgs.1
index dba369e8ec..619d60bc60 100644
--- a/usr/src/man/man1/mkmsgs.1
+++ b/usr/src/man/man1/mkmsgs.1
@@ -150,5 +150,9 @@ message files created by \fBmkmsgs\fR
.SH SEE ALSO
.sp
.LP
-\fBexstr\fR(1), \fBgettxt\fR(1), \fBsrchtxt\fR(1), \fBgettxt\fR(3C),
-\fBsetlocale\fR(3C), \fBattributes\fR(5)
+.BR exstr (1),
+.BR gettxt (1),
+.BR srchtxt (1),
+.BR gettxt (3C),
+.BR setlocale (3C),
+.BR attributes (7)
diff --git a/usr/src/man/man1/mktemp.1 b/usr/src/man/man1/mktemp.1
index f87583b952..5137610537 100644
--- a/usr/src/man/man1/mktemp.1
+++ b/usr/src/man/man1/mktemp.1
@@ -233,7 +233,7 @@ fi
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBmktemp\fR with the \fB-t\fR option:
\fBTMPDIR.\fR
.SH EXIT STATUS
@@ -261,7 +261,7 @@ An error occurred.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -277,8 +277,11 @@ Interface Stability Committed
.SH SEE ALSO
.sp
.LP
-\fBsh\fR(1), \fBmkdtemp\fR(3C), \fBmkstemp\fR(3C), \fBattributes\fR(5),
-\fBenviron\fR(5)
+.BR sh (1),
+.BR mkdtemp (3C),
+.BR mkstemp (3C),
+.BR attributes (7),
+.BR environ (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man1/moe.1 b/usr/src/man/man1/moe.1
index 994192b8a4..a835ebe19c 100644
--- a/usr/src/man/man1/moe.1
+++ b/usr/src/man/man1/moe.1
@@ -182,7 +182,7 @@ expansion returns \fB0\fR, otherwise non-zero. Without the \fB-32\fR or
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -198,8 +198,11 @@ Interface Stability Stable
.SH SEE ALSO
.sp
.LP
-\fBld.so.1\fR(1), \fBoptisa\fR(1), \fBisalist\fR(1), \fBdlmopen\fR(3C),
-\fBattributes\fR(5)
+.BR isalist (1),
+.BR ld.so.1 (1),
+.BR optisa (1),
+.BR dlmopen (3C),
+.BR attributes (7)
.sp
.LP
\fILinker and Libraries Guide\fR
diff --git a/usr/src/man/man1/more.1 b/usr/src/man/man1/more.1
index 972fcdd353..b82e003d44 100644
--- a/usr/src/man/man1/more.1
+++ b/usr/src/man/man1/more.1
@@ -328,7 +328,7 @@ processed first.
.SS "Environment"
.sp
.LP
-\fBmore\fR uses the terminal's \fBterminfo\fR(4) entry to determine its display
+\fBmore\fR uses the terminal's \fBterminfo\fR(5) entry to determine its display
characteristics.
.sp
.LP
@@ -779,13 +779,13 @@ Invoke a shell or the specified command.
.SS "Large File Behavior"
.sp
.LP
-See \fBlargefile\fR(5) for the description of the behavior of \fBmore\fR and
+See \fBlargefile\fR(7) for the description of the behavior of \fBmore\fR and
\fBpage\fR when encountering files greater than or equal to 2 Gbyte ( 2^31
bytes).
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBmore\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_COLLATE\fR (\fB/usr/xpg4/bin/more\fR only), \fBLC_CTYPE\fR,
\fBLC_MESSAGES\fR, \fBNLSPATH\fR, and \fBTERM\fR.
@@ -870,7 +870,7 @@ help file for \fB/usr/bin/more\fR and \fB/usr/bin/page\fR only.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.SS "/usr/bin/more /usr/bin/page"
.sp
@@ -902,17 +902,27 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBcat\fR(1), \fBcsh\fR(1), \fBctags\fR(1), \fBman\fR(1), \fBnroff\fR(1),
-\fBscript\fR(1), \fBsh\fR(1), \fBul\fR(1), \fBterminfo\fR(4),
-\fBattributes\fR(5), \fBenviron\fR(5), \fBlargefile\fR(5), \fBstandards\fR(5)
+.BR cat (1),
+.BR csh (1),
+.BR ctags (1),
+.BR man (1),
+.BR nroff (1),
+.BR script (1),
+.BR sh (1),
+.BR ul (1),
+.BR terminfo (5),
+.BR attributes (7),
+.BR environ (7),
+.BR largefile (7),
+.BR standards (7)
.SS "/usr/bin/more /usr/bin/page"
.sp
.LP
-\fBregcomp\fR(3C)
+.BR regcomp (3C)
.SS "/usr/xpg4/bin/more"
.sp
.LP
-\fBregex\fR(5)
+.BR regex (7)
.SH NOTES
.SS "/usr/bin/more"
.sp
diff --git a/usr/src/man/man1/mpss.so.1.1 b/usr/src/man/man1/mpss.so.1.1
index e14b891fd0..48a76e2799 100644
--- a/usr/src/man/man1/mpss.so.1.1
+++ b/usr/src/man/man1/mpss.so.1.1
@@ -217,7 +217,7 @@ Configuration file
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -233,10 +233,22 @@ Interface Stability Evolving
.SH SEE ALSO
.sp
.LP
-\fBcat\fR(1), \fBld\fR(1), \fBld.so.1\fR(1), \fBpagesize\fR(1), \fBppgsz\fR(1),
-\fBproc\fR(1), \fBsh\fR(1), \fBvi\fR(1), \fBexec\fR(2), \fBfork\fR(2),
-\fBmemcntl\fR(2), \fBgetexecname\fR(3C), \fBgetpagesize\fR(3C),
-\fBsyslog\fR(3C), \fBproc\fR(4), \fBattributes\fR(5)
+.BR cat (1),
+.BR ld (1),
+.BR ld.so.1 (1),
+.BR pagesize (1),
+.BR ppgsz (1),
+.BR proc (1),
+.BR sh (1),
+.BR vi (1),
+.BR exec (2),
+.BR fork (2),
+.BR memcntl (2),
+.BR getexecname (3C),
+.BR getpagesize (3C),
+.BR syslog (3C),
+.BR proc (5),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man1/msgcc.1 b/usr/src/man/man1/msgcc.1
index 313d06637d..3c0ccc38e7 100644
--- a/usr/src/man/man1/msgcc.1
+++ b/usr/src/man/man1/msgcc.1
@@ -206,7 +206,7 @@ Glenn Fowler, \fBgsf@research.att.com\fR
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -222,5 +222,10 @@ Interface Stability Volatile
.SH SEE ALSO
.sp
.LP
-\fBcpp\fR(1), \fBgencat\fR(1), \fBmkmsgs\fR(1), \fBmsggen\fR(1),
-\fBmsgcpp\fR(1), \fBmsgcvt\fR(1), \fBattributes\fR(5)
+.BR cpp (1),
+.BR gencat (1),
+.BR mkmsgs (1),
+.BR msgcpp (1),
+.BR msgcvt (1),
+.BR msggen (1),
+.BR attributes (7)
diff --git a/usr/src/man/man1/msgcpp.1 b/usr/src/man/man1/msgcpp.1
index 7627b912a6..9c07094772 100644
--- a/usr/src/man/man1/msgcpp.1
+++ b/usr/src/man/man1/msgcpp.1
@@ -831,7 +831,7 @@ Glenn Fowler, \fBgsf@research.att.com\fR
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -847,8 +847,13 @@ Interface Stability Volatile
.SH SEE ALSO
.sp
.LP
-\fBcpp\fR(1), \fBgencat\fR(1), \fBmsgcc\fR(1), \fBmsgcvt\fR(1),
-\fBmsggen\fR(1), \fBmake\fR(1S), \fBattributes\fR(5)
+.BR cpp (1),
+.BR gencat (1),
+.BR msgcc (1),
+.BR msgcvt (1),
+.BR msggen (1),
+.BR make (1S),
+.BR attributes (7)
.sp
.LP
Kernighan, Brian W. and Ritchie, Dennis M., \fIThe C Programming Language\fR,
diff --git a/usr/src/man/man1/msgcvt.1 b/usr/src/man/man1/msgcvt.1
index f8588e6ec6..84c5c1217e 100644
--- a/usr/src/man/man1/msgcvt.1
+++ b/usr/src/man/man1/msgcvt.1
@@ -108,7 +108,7 @@ Glenn Fowler, \fBgsf@research.att.com\fR
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -124,4 +124,7 @@ Interface Stability Volatile
.SH SEE ALSO
.sp
.LP
-\fBgencat\fR(1), \fBmsgcc\fR(1), \fBmsggen\fR(1), \fBattributes\fR(5)
+.BR gencat (1),
+.BR msgcc (1),
+.BR msggen (1),
+.BR attributes (7)
diff --git a/usr/src/man/man1/msgfmt.1 b/usr/src/man/man1/msgfmt.1
index 26ad8d4191..5555877daf 100644
--- a/usr/src/man/man1/msgfmt.1
+++ b/usr/src/man/man1/msgfmt.1
@@ -464,12 +464,12 @@ example% \fBmsgfmt -o hello.mo module1.po module2.po\fR
.SH ENVIRONMENT VARIABLES
.LP
-See \fBenviron\fR(5) for descriptions of the following environmental variables
+See \fBenviron\fR(7) for descriptions of the following environmental variables
that affect the execution of \fBmsgfmt\fR: \fBLC_CTYPE\fR, \fBLC_MESSAGES\fR,
and \fBNLSPATH\fR.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -484,8 +484,11 @@ CSI Enabled
.SH SEE ALSO
.LP
-\fBxgettext\fR(1), \fBgettext\fR(3C), \fBsetlocale\fR(3C), \fBattributes\fR(5),
-\fBenviron\fR(5)
+.BR xgettext (1),
+.BR gettext (3C),
+.BR setlocale (3C),
+.BR attributes (7),
+.BR environ (7)
.SH NOTES
.LP
Installing message catalogs under the C locale is pointless, since they are
diff --git a/usr/src/man/man1/msggen.1 b/usr/src/man/man1/msggen.1
index 994b465ee1..0ae5cf5283 100644
--- a/usr/src/man/man1/msggen.1
+++ b/usr/src/man/man1/msggen.1
@@ -340,7 +340,7 @@ Glenn Fowler, \fBgsf@research.att.com\fR
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -356,5 +356,8 @@ Interface Stability Volatile
.SH SEE ALSO
.sp
.LP
-\fBgencat\fR(1), \fBiconv\fR(1), \fBmsgcc\fR(1), \fBprintf\fR(3C),
-\fBattributes\fR(5)
+.BR gencat (1),
+.BR iconv (1),
+.BR msgcc (1),
+.BR printf (3C),
+.BR attributes (7)
diff --git a/usr/src/man/man1/msgget.1 b/usr/src/man/man1/msgget.1
index e3e1e3a138..8985fea318 100644
--- a/usr/src/man/man1/msgget.1
+++ b/usr/src/man/man1/msgget.1
@@ -111,7 +111,7 @@ Glenn Fowler, \fBgsf@research.att.com\fR
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -127,4 +127,7 @@ Interface Stability Volatile
.SH SEE ALSO
.sp
.LP
-\fBiconv\fR(1), \fBmsgcc\fR(1), \fBmsggen\fR(1), \fBattributes\fR(5)
+.BR iconv (1),
+.BR msgcc (1),
+.BR msggen (1),
+.BR attributes (7)
diff --git a/usr/src/man/man1/mt.1 b/usr/src/man/man1/mt.1
index b42ec9013a..35745318f2 100644
--- a/usr/src/man/man1/mt.1
+++ b/usr/src/man/man1/mt.1
@@ -209,7 +209,7 @@ is ignored and the command is performed only once.
.ad
.RS 16n
Reads the drives current configuration from the driver and displays it in
-\fBst.conf\fR format. See \fBst\fR(7D) for definition of fields and there
+\fBst.conf\fR format. See \fBst\fR(4D) for definition of fields and there
meanings.
.RE
@@ -356,8 +356,12 @@ magnetic tape interface
.SH SEE ALSO
.LP
-\fBtar\fR(1), \fBtcopy\fR(1), \fBar.h\fR(3HEAD), \fBattributes\fR(5),
-\fBmtio\fR(7I), \fBst\fR(7D)
+.BR tar (1),
+.BR tcopy (1),
+.BR ar.h (3HEAD),
+.BR st (4D),
+.BR mtio (4I),
+.BR attributes (7)
.SH BUGS
.LP
Not all devices support all options. Some options are hardware-dependent. Refer
diff --git a/usr/src/man/man1/mv.1 b/usr/src/man/man1/mv.1
index 11faaa86f0..03a53e2e66 100644
--- a/usr/src/man/man1/mv.1
+++ b/usr/src/man/man1/mv.1
@@ -216,12 +216,12 @@ A path name of an existing directory into which to move the input files.
.SH USAGE
.sp
.LP
-See \fBlargefile\fR(5) for the description of the behavior of \fBmv\fR when
+See \fBlargefile\fR(7) for the description of the behavior of \fBmv\fR when
encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBmv\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_COLLATE\fR, \fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.sp
@@ -233,7 +233,7 @@ the behavior of ranges, equivalence classes, and multi-character collating
elements used in the expression defined for \fByesexpr\fR. The locale specified
in \fBLC_CTYPE\fR determines the locale for interpretation of sequences of
bytes of text data a characters, the behavior of character classes used in the
-expression defined for the \fByesexpr\fR. See \fBlocale\fR(5).
+expression defined for the \fByesexpr\fR. See \fBlocale\fR(7).
.SH EXIT STATUS
.sp
.LP
@@ -259,7 +259,7 @@ An error occurred.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.SS "/usr/bin/mv"
.sp
@@ -293,9 +293,17 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBcp\fR(1), \fBcpio\fR(1), \fBln\fR(1), \fBrm\fR(1), \fBsetfacl\fR(1),
-\fBchmod\fR(2), \fBattributes\fR(5), \fBenviron\fR(5), \fBfsattr\fR(5),
-\fBlargefile\fR(5), \fBstandards\fR(5)
+.BR cp (1),
+.BR cpio (1),
+.BR ln (1),
+.BR rm (1),
+.BR setfacl (1),
+.BR chmod (2),
+.BR attributes (7),
+.BR environ (7),
+.BR fsattr (7),
+.BR largefile (7),
+.BR standards (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man1/nc.1 b/usr/src/man/man1/nc.1
index abcd5d0290..352766fe6e 100644
--- a/usr/src/man/man1/nc.1
+++ b/usr/src/man/man1/nc.1
@@ -567,7 +567,7 @@ Protocol mismatch.
.SS "\fBinetd\fR Capabilities"
.sp
.LP
-One of the possible uses is to create simple services by using \fBinetd\fR(1M).
+One of the possible uses is to create simple services by using \fBinetd\fR(8).
.sp
.LP
The following example creates a redirect from TCP port 8080 to port 80 on host
@@ -619,10 +619,10 @@ also needs the \fBnet_bindmlp\fR privilege.
.sp
.LP
Privileges can be assigned to the user or role directly, by specifying them in
-the account's default privilege set in \fBuser_attr\fR(4). However, this means
+the account's default privilege set in \fBuser_attr\fR(5). However, this means
that any application that this user or role starts have these additional
-privileges. To only grant the \fBprivileges\fR(5) when \fBnc\fR is invoked, the
-recommended approach is to create and assign an \fBrbac\fR(5) rights profile.
+privileges. To only grant the \fBprivileges\fR(7) when \fBnc\fR is invoked, the
+recommended approach is to create and assign an \fBrbac\fR(7) rights profile.
See \fBEXAMPLES\fR for additional information.
.SH EXAMPLES
.LP
@@ -730,7 +730,7 @@ $ nc -l 127.0.0.1 2222
.LP
Connect to port \fB42\fR of \fBhost.example.com\fR using an HTTP proxy at
\fB10.2.3.4\fR, port \fB8080\fR. This example could also be used by
-\fBssh\fR(1). See the \fBProxyCommand\fR directive in \fBssh_config\fR(4) for
+\fBssh\fR(1). See the \fBProxyCommand\fR directive in \fBssh_config\fR(5) for
more information.
.sp
@@ -789,7 +789,7 @@ Netcat privileged:::Allow nc to bind to privileged ports:help=None.html
.sp
.LP
-Assigning this rights profile using \fBuser_attr\fR(4) permits the user or role
+Assigning this rights profile using \fBuser_attr\fR(5) permits the user or role
to run \fBnc\fR allowing it to listen on any port. To permit a user or role to
use \fBnc\fR only to listen on specific ports a wrapper script should be
specified in the rights profiles:
@@ -837,7 +837,7 @@ neither does invoking the script without using \fBpfexec\fR or a profile shell.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -861,10 +861,23 @@ Uncommitted.
.SH SEE ALSO
.sp
.LP
-\fBcat\fR(1), \fBpfcsh\fR(1), \fBpfexec\fR(1), \fBpfksh\fR(1), \fBpfsh\fR(1),
-\fBppriv\fR(1), \fBsed\fR(1), \fBssh\fR(1), \fBtelnet\fR(1), \fBinetadm\fR(1M),
-\fBinetconv\fR(1M), \fBinetd\fR(1M), \fBssh_config\fR(4), \fBuser_attr\fR(4),
-\fBattributes\fR(5), \fBprivileges\fR(5), \fBrbac\fR(5)
+.BR cat (1),
+.BR pfcsh (1),
+.BR pfexec (1),
+.BR pfksh (1),
+.BR pfsh (1),
+.BR ppriv (1),
+.BR sed (1),
+.BR ssh (1),
+.BR telnet (1),
+.BR ssh_config (5),
+.BR user_attr (5),
+.BR attributes (7),
+.BR privileges (7),
+.BR rbac (7),
+.BR inetadm (8),
+.BR inetconv (8),
+.BR inetd (8)
.SH AUTHORS
.sp
.LP
diff --git a/usr/src/man/man1/nca.1 b/usr/src/man/man1/nca.1
index 67c06f1994..4760571da2 100644
--- a/usr/src/man/man1/nca.1
+++ b/usr/src/man/man1/nca.1
@@ -60,7 +60,7 @@ Services\fR
.sp
.LP
When native \fBPF_NCA\fR socket support does not exist in the web server, the
-\fBncad_addr\fR(4) interface must be used to provide NCA support in that web
+\fBncad_addr\fR(5) interface must be used to provide NCA support in that web
server.
.sp
.LP
@@ -69,7 +69,7 @@ processes while running \fBNCA\fR might cause undesirable behavior.
.sp
.LP
\fBNCA\fR supports the logging of in-kernel cache hits. See
-\fBncalogd.conf\fR(4). \fBNCA\fR stores logs in a binary format. Use the
+\fBncalogd.conf\fR(5). \fBNCA\fR stores logs in a binary format. Use the
\fBncab2clf\fR(1) utility to convert the log from a binary format to the Common
Log File format.
.SH FILES
@@ -131,7 +131,7 @@ match with entries in \fB/etc/hostname.{}{0-9}\fR for \fBNCA\fR to function.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -147,14 +147,30 @@ Interface Stability Committed
.SH SEE ALSO
.sp
.LP
-\fBncab2clf\fR(1), \fBncakmod\fR(1), \fBclose\fR(2), \fBread\fR(2),
-\fBwrite\fR(2), \fBsendfilev\fR(3EXT), \fBaccept\fR(3SOCKET),
-\fBbind\fR(3SOCKET), \fBconnect\fR(3SOCKET), \fBdoor_bind\fR(3C),
-\fBdoor_call\fR(3C), \fBdoor_create\fR(3C), \fBgetsockopt\fR(3SOCKET),
-\fBlisten\fR(3SOCKET), \fBsetsockopt\fR(3SOCKET), \fBshutdown\fR(3SOCKET),
-\fBsocket.h\fR(3HEAD), \fBsocket\fR(3SOCKET), \fBncad_addr\fR(4),
-\fBnca.if\fR(4), \fBncakmod.conf\fR(4), \fBncaport.conf\fR(4),
-\fBncalogd.conf\fR(4), \fBattributes\fR(5)
+.BR ncab2clf (1),
+.BR ncakmod (1),
+.BR close (2),
+.BR read (2),
+.BR write (2),
+.BR door_bind (3C),
+.BR door_call (3C),
+.BR door_create (3C),
+.BR sendfilev (3EXT),
+.BR socket.h (3HEAD),
+.BR accept (3SOCKET),
+.BR bind (3SOCKET),
+.BR connect (3SOCKET),
+.BR getsockopt (3SOCKET),
+.BR listen (3SOCKET),
+.BR setsockopt (3SOCKET),
+.BR shutdown (3SOCKET),
+.BR socket (3SOCKET),
+.BR nca.if (5),
+.BR ncad_addr (5),
+.BR ncakmod.conf (5),
+.BR ncalogd.conf (5),
+.BR ncaport.conf (5),
+.BR attributes (7)
.sp
.LP
\fISystem Administration Guide: IP Services\fR
diff --git a/usr/src/man/man1/ncab2clf.1 b/usr/src/man/man1/ncab2clf.1
index bba14f654a..6e4fcd2855 100644
--- a/usr/src/man/man1/ncab2clf.1
+++ b/usr/src/man/man1/ncab2clf.1
@@ -173,7 +173,7 @@ An error occurred.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -189,8 +189,12 @@ Interface Stability Evolving
.SH SEE ALSO
.sp
.LP
-\fBnca\fR(1), \fBncakmod\fR(1), \fBnca.if\fR(4), \fBncakmod.conf\fR(4),
-\fBncalogd.conf\fR(4), \fBattributes\fR(5)
+.BR nca (1),
+.BR ncakmod (1),
+.BR nca.if (5),
+.BR ncakmod.conf (5),
+.BR ncalogd.conf (5),
+.BR attributes (7)
.sp
.LP
\fISystem Administration Guide: IP Services\fR
diff --git a/usr/src/man/man1/ncakmod.1 b/usr/src/man/man1/ncakmod.1
index 63bb6e8691..bf36c1977e 100644
--- a/usr/src/man/man1/ncakmod.1
+++ b/usr/src/man/man1/ncakmod.1
@@ -28,7 +28,7 @@ kernel module will be activated for all physical interfaces listed in the
.nf
To stop NCA, please set the status configuration parameter
to disable in ncakmod.conf and then reboot your system. See
-the ncakmod.conf(4) manual page for more information.
+the ncakmod.conf(5) manual page for more information.
.fi
.in -2
.sp
@@ -36,7 +36,7 @@ the ncakmod.conf(4) manual page for more information.
.sp
.LP
Note that in order to properly stop \fBNCA\fR on your system, you must first
-edit the \fBncakmod.conf\fR(4) file and set the status field to "disable," then
+edit the \fBncakmod.conf\fR(5) file and set the status field to "disable," then
reboot your system.
.SH OPTIONS
.sp
@@ -94,7 +94,7 @@ Specifies configuration options for the NCA kernel module.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -110,5 +110,10 @@ Interface Stability Evolving
.SH SEE ALSO
.sp
.LP
-\fBnca\fR(1), \fBncab2clf\fR(1), \fBncad_addr\fR(4), \fBnca.if\fR(4),
-\fBncakmod.conf\fR(4), \fBncalogd.conf\fR(4), \fBattributes\fR(5)
+.BR nca (1),
+.BR ncab2clf (1),
+.BR nca.if (5),
+.BR ncad_addr (5),
+.BR ncakmod.conf (5),
+.BR ncalogd.conf (5),
+.BR attributes (7)
diff --git a/usr/src/man/man1/newform.1 b/usr/src/man/man1/newform.1
index 2a504d152e..723f53a3a5 100644
--- a/usr/src/man/man1/newform.1
+++ b/usr/src/man/man1/newform.1
@@ -67,7 +67,7 @@ Input tab specification: expands tabs to spaces, according to the tab
specifications given. \fITabspec\fR recognizes all tab specification forms
described in \fBtabs\fR(1). In addition, \fItabspec\fR may be \fB-\fR, in which
\fBnewform\fR assumes that the tab specification is to be found in the first
-line read from the standard input (see \fBfspec\fR(4)). If no \fItabspec\fR is
+line read from the standard input (see \fBfspec\fR(5)). If no \fItabspec\fR is
given, \fItabspec\fR defaults to \fB\(mi8\fR\&. A \fItabspec\fR of \fB\(mi0\fR
expects no tabs; if any are found, they are treated as \fB\(mi1\fR\&.
.RE
@@ -207,7 +207,10 @@ Operation failed.
.SH SEE ALSO
.sp
.LP
-\fBcsplit\fR(1), \fBtabs\fR(1), \fBfspec\fR(4), \fBattributes\fR(5)
+.BR csplit (1),
+.BR tabs (1),
+.BR fspec (5),
+.BR attributes (7)
.SH DIAGNOSTICS
.sp
.LP
diff --git a/usr/src/man/man1/newgrp.1 b/usr/src/man/man1/newgrp.1
index d9c4303488..bae942d031 100644
--- a/usr/src/man/man1/newgrp.1
+++ b/usr/src/man/man1/newgrp.1
@@ -227,7 +227,7 @@ command.
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBnewgrp\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.SH EXIT STATUS
@@ -267,7 +267,7 @@ System password file
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.SS "/usr/bin/newgrp, ksh, sh"
.sp
@@ -280,7 +280,7 @@ ATTRIBUTE TYPE ATTRIBUTE VALUE
_
Interface Stability Committed
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SS "ksh93"
@@ -299,6 +299,15 @@ Interface Stability Uncommitted
.SH SEE ALSO
.sp
.LP
-\fBlogin\fR(1), \fBksh\fR(1), \fBksh93\fR(1), \fBset\fR(1), \fBsh\fR(1),
-\fBIntro\fR(3), \fBgetgrnam\fR(3C), \fBgroup\fR(4), \fBpasswd\fR(4),
-\fBattributes\fR(5), \fBenviron\fR(5), \fBstandards\fR(5)
+.BR ksh (1),
+.BR ksh93 (1),
+.BR login (1),
+.BR set (1),
+.BR sh (1),
+.BR Intro (3),
+.BR getgrnam (3C),
+.BR group (5),
+.BR passwd (5),
+.BR attributes (7),
+.BR environ (7),
+.BR standards (7)
diff --git a/usr/src/man/man1/news.1 b/usr/src/man/man1/news.1
index 77b48d883c..01d98a3ead 100644
--- a/usr/src/man/man1/news.1
+++ b/usr/src/man/man1/news.1
@@ -71,7 +71,7 @@ first causes the program to terminate.
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for a description of the \fBLC_CTYPE\fR environment
+See \fBenviron\fR(7) for a description of the \fBLC_CTYPE\fR environment
variable that affects the execution of \fBnews\fR.
.SH FILES
.sp
@@ -104,4 +104,6 @@ variable that affects the execution of \fBnews\fR.
.SH SEE ALSO
.sp
.LP
-\fBprofile\fR(4), \fBattributes\fR(5), \fBenviron\fR(5)
+.BR profile (5),
+.BR attributes (7),
+.BR environ (7)
diff --git a/usr/src/man/man1/newtask.1 b/usr/src/man/man1/newtask.1
index 1f70a383c6..9210c2fee3 100644
--- a/usr/src/man/man1/newtask.1
+++ b/usr/src/man/man1/newtask.1
@@ -108,7 +108,7 @@ The following operands are supported:
.RS 11n
The project to which resource usage by the created task should be charged. The
requested project must be defined in the project databases defined in
-\fBnsswitch.conf\fR(4).
+\fBnsswitch.conf\fR(5).
.RE
.sp
@@ -226,6 +226,14 @@ Process information and control files.
.SH SEE ALSO
.sp
.LP
-\fBproc\fR(1), \fBid\fR(1M), \fBpoolbind\fR(1M), \fBexecvp\fR(2),
-\fBsetrctl\fR(2), \fBsettaskid\fR(2), \fBsetproject\fR(3PROJECT),
-\fBnsswitch.conf\fR(4), \fBproc\fR(4), \fBproject\fR(4), \fBattributes\fR(5)
+.BR proc (1),
+.BR execvp (2),
+.BR setrctl (2),
+.BR settaskid (2),
+.BR setproject (3PROJECT),
+.BR nsswitch.conf (5),
+.BR proc (5),
+.BR project (5),
+.BR attributes (7),
+.BR id (8),
+.BR poolbind (8)
diff --git a/usr/src/man/man1/nice.1 b/usr/src/man/man1/nice.1
index a65f2a8f89..9fac64c170 100644
--- a/usr/src/man/man1/nice.1
+++ b/usr/src/man/man1/nice.1
@@ -139,7 +139,7 @@ Any string to be supplied as an argument when invoking \fIcommand\fR.
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBnice\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, \fBPATH\fR, and \fBNLSPATH\fR.
.SH EXIT STATUS
@@ -178,7 +178,7 @@ An error occurred.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.SS "/usr/bin/nice"
.sp
@@ -210,6 +210,13 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBcsh\fR(1), \fBksh\fR(1), \fBnohup\fR(1), \fBpriocntl\fR(1), \fBsh\fR(1),
-\fBshell_builtins\fR(1), \fBnice\fR(2), \fBattributes\fR(5), \fBenviron\fR(5),
-\fBstandards\fR(5)
+.BR csh (1),
+.BR ksh (1),
+.BR nohup (1),
+.BR priocntl (1),
+.BR sh (1),
+.BR shell_builtins (1),
+.BR nice (2),
+.BR attributes (7),
+.BR environ (7),
+.BR standards (7)
diff --git a/usr/src/man/man1/nl.1 b/usr/src/man/man1/nl.1
index 3a328fad47..0072221bef 100644
--- a/usr/src/man/man1/nl.1
+++ b/usr/src/man/man1/nl.1
@@ -327,7 +327,7 @@ forth. The logical page delimiters are !+.
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBnl\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_COLLATE\fR, \fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.SH EXIT STATUS
@@ -376,7 +376,7 @@ Shared object containing string transformation library routines
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.SS "/usr/xpg4/bin/nl"
.sp
@@ -393,8 +393,12 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBpr\fR(1), \fBattributes\fR(5), \fBenviron\fR(5), \fBregex\fR(5),
-\fBregexp\fR(5), \fBstandards\fR(5)
+.BR pr (1),
+.BR attributes (7),
+.BR environ (7),
+.BR regex (7),
+.BR regexp (7),
+.BR standards (7)
.SH NOTES
.sp
.LP
@@ -418,5 +422,5 @@ two conditions are met:
Otherwise, Simple Regular Expressions are used.
.sp
.LP
-Internationalized Regular Expressions are explained on \fBregex\fR(5). Simple
-Regular Expressions are explained on \fBregexp\fR(5).
+Internationalized Regular Expressions are explained on \fBregex\fR(7). Simple
+Regular Expressions are explained on \fBregexp\fR(7).
diff --git a/usr/src/man/man1/nm.1 b/usr/src/man/man1/nm.1
index 8e6b82a346..3881ddf995 100644
--- a/usr/src/man/man1/nm.1
+++ b/usr/src/man/man1/nm.1
@@ -818,7 +818,7 @@ If \fB-P\fR is specified, but \fB-t\fR is not, the format is as if \fB-t\fR
\fBx\fR had been specified.
.SH ENVIRONMENT VARIABLES
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBnm\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_COLLATE\fR, \fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.SH EXIT STATUS
@@ -844,7 +844,7 @@ An error occurred.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.SH /USR/XPG4/BIN/NM
.TS
box;
@@ -857,9 +857,16 @@ Interface Stability Committed
.SH SEE ALSO
.LP
-\fBar\fR(1), \fBas\fR(1), \fBdump\fR(1), \fBld\fR(1), \fBld.so.1\fR(1),
-\fBar.h\fR(3HEAD), \fBa.out\fR(4), \fBattributes\fR(5), \fBenviron\fR(5),
-\fBstandards\fR(5)
+.BR ar (1),
+.BR as (1),
+.BR dump (1),
+.BR ld (1),
+.BR ld.so.1 (1),
+.BR ar.h (3HEAD),
+.BR a.out (5),
+.BR attributes (7),
+.BR environ (7),
+.BR standards (7)
.SH NOTES
.LP
The following options are obsolete because of changes to the object file format
diff --git a/usr/src/man/man1/nohup.1 b/usr/src/man/man1/nohup.1
index c9db7d9b11..03268d256a 100644
--- a/usr/src/man/man1/nohup.1
+++ b/usr/src/man/man1/nohup.1
@@ -303,7 +303,7 @@ example$ \fBnohup -g `pgrep -s 81079 make`\fR
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBnohup\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, \fBPATH\fR, \fBNLSPATH\fR, and \fBPATH\fR.
.sp
@@ -367,7 +367,7 @@ and if the current directory is not writable.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.SS "/usr/bin/nohup"
.sp
@@ -399,10 +399,21 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBbatch\fR(1), \fBchmod\fR(1), \fBcsh\fR(1), \fBksh\fR(1), \fBnice\fR(1),
-\fBpgrep\fR(1), \fBproc\fR(1), \fBps\fR(1), \fBsh\fR(1),
-\fBshell_builtins\fR(1), \fBsignal\fR(3C), \fBproc\fR(4), \fBattributes\fR(5),
-\fBenviron\fR(5), \fBstandards\fR(5)
+.BR batch (1),
+.BR chmod (1),
+.BR csh (1),
+.BR ksh (1),
+.BR nice (1),
+.BR pgrep (1),
+.BR proc (1),
+.BR ps (1),
+.BR sh (1),
+.BR shell_builtins (1),
+.BR signal (3C),
+.BR proc (5),
+.BR attributes (7),
+.BR environ (7),
+.BR standards (7)
.SH WARNINGS
.sp
.LP
diff --git a/usr/src/man/man1/nroff.1 b/usr/src/man/man1/nroff.1
index 953795a0bc..c9822c6568 100644
--- a/usr/src/man/man1/nroff.1
+++ b/usr/src/man/man1/nroff.1
@@ -260,7 +260,7 @@ example% \fBnroff \(mis4 \(mime users.guide\fR
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBnroff\fR: \fBLC_CTYPE\fR, \fBLC_MESSAGES\fR,
and \fBNLSPATH\fR.
.SH FILES
@@ -307,7 +307,7 @@ index to terminal description files
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -323,9 +323,17 @@ CSI Enabled
.SH SEE ALSO
.sp
.LP
-\fBchecknr\fR(1), \fBcol\fR(1), \fBeqn\fR(1), \fBman\fR(1), \fBtbl\fR(1),
-\fBtroff\fR(1), \fBattributes\fR(5), \fBenviron\fR(5), \fBme\fR(5),
-\fBms\fR(5), \fBterm\fR(5)
+.BR checknr (1),
+.BR col (1),
+.BR eqn (1),
+.BR man (1),
+.BR tbl (1),
+.BR troff (1),
+.BR attributes (7),
+.BR environ (7),
+.BR me (7),
+.BR ms (7),
+.BR term (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man1/oawk.1 b/usr/src/man/man1/oawk.1
index da7626418c..8f399142b1 100644
--- a/usr/src/man/man1/oawk.1
+++ b/usr/src/man/man1/oawk.1
@@ -404,7 +404,7 @@ and \fB\(mi1\fR for an error.
.RE
.SS "Large File Behavior"
-See \fBlargefile\fR(5) for the description of the behavior of \fBoawk\fR when
+See \fBlargefile\fR(7) for the description of the behavior of \fBoawk\fR when
encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
.SH EXAMPLES
\fBExample 1 \fRPrinting Lines Longer Than 72 Characters
@@ -554,7 +554,7 @@ example% \fBoawk -f prog n=5 input\fR
.sp
.SH ENVIRONMENT VARIABLES
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBoawk\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_COLLATE\fR, \fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, \fBNLSPATH\fR, and
\fBPATH\fR.
@@ -573,7 +573,7 @@ command-line arguments).
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.SS "/usr/bin/oawk"
.TS
@@ -586,8 +586,15 @@ CSI Not Enabled
.TE
.SH SEE ALSO
-\fBegrep\fR(1), \fBgrep\fR(1), \fBawk\fR(1), \fBsed\fR(1), \fBprintf\fR(3C),
-\fBattributes\fR(5), \fBenviron\fR(5), \fBlargefile\fR(5), \fBstandards\fR(5)
+.BR awk (1),
+.BR egrep (1),
+.BR grep (1),
+.BR sed (1),
+.BR printf (3C),
+.BR attributes (7),
+.BR environ (7),
+.BR largefile (7),
+.BR standards (7)
.SH NOTES
Input white space is not preserved on output if fields are involved.
.sp
diff --git a/usr/src/man/man1/od.1 b/usr/src/man/man1/od.1
index 222f2c200c..05e63eae84 100644
--- a/usr/src/man/man1/od.1
+++ b/usr/src/man/man1/od.1
@@ -621,7 +621,7 @@ Description of \fIoffset_string\fR is the same as for \fB/usr/bin/od\fR.
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBod\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, \fBLC_NUMERIC\fR, and \fBNLSPATH\fR.
.SH EXIT STATUS
@@ -649,7 +649,7 @@ An error occurred.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.SS "/usr/bin/od"
.sp
@@ -681,4 +681,7 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBsed\fR(1), \fBattributes\fR(5), \fBenviron\fR(5), \fBstandards\fR(5)
+.BR sed (1),
+.BR attributes (7),
+.BR environ (7),
+.BR standards (7)
diff --git a/usr/src/man/man1/optisa.1 b/usr/src/man/man1/optisa.1
index 1140913cb4..2598470b57 100644
--- a/usr/src/man/man1/optisa.1
+++ b/usr/src/man/man1/optisa.1
@@ -19,7 +19,7 @@ optisa \- determine which variant instruction set is optimal to use
the command will perform best on this machine. In this case, ``best'' is
defined by the order in which instruction set names are returned by
\fBisalist\fR(1). Possible values for \fIinstruction_set\fR are given in
-\fBisalist\fR(5).
+\fBisalist\fR(7).
.SH EXIT STATUS
.sp
.LP
@@ -47,7 +47,10 @@ that you specified with the \fBoptisa\fR command.
.SH SEE ALSO
.sp
.LP
-\fBisalist\fR(1), \fBuname\fR(1), \fBattributes\fR(5), \fBisalist\fR(5)
+.BR isalist (1),
+.BR uname (1),
+.BR attributes (7),
+.BR isalist (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man1/pack.1 b/usr/src/man/man1/pack.1
index 5dcb68a713..d422bdff32 100644
--- a/usr/src/man/man1/pack.1
+++ b/usr/src/man/man1/pack.1
@@ -253,7 +253,7 @@ place of \fBfile\fR causes the internal flag to be set and reset.
.RE
.SH USAGE
-See \fBlargefile\fR(5) for the description of the behavior of \fBpack\fR,
+See \fBlargefile\fR(7) for the description of the behavior of \fBpack\fR,
\fBpcat\fR, and \fBunpack\fR when encountering files greater than or equal to 2
Gbyte (2^31 bytes).
.SH EXAMPLES
@@ -286,7 +286,7 @@ To make an unpacked copy, say \fBnnn\fR, of a packed file named \fBfile.z\fR
\fBexample%\fR \fBpcat\fR \fBfile\fR \fB>nnn\fR
.SH ENVIRONMENT VARIABLES
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBpack\fR, \fBpcat\fR, and \fBunpack\fR:
\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.SH EXIT STATUS
@@ -312,7 +312,7 @@ returned.
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -326,5 +326,11 @@ CSI Enabled
.TE
.SH SEE ALSO
-\fBcat\fR(1), \fBcompress\fR(1), \fBzcat\fR(1), \fBfgetattr\fR(3C),
-\fBfsetattr\fR(3C), \fBattributes\fR(5), \fBenviron\fR(5), \fBlargefile\fR(5)
+.BR cat (1),
+.BR compress (1),
+.BR zcat (1),
+.BR fgetattr (3C),
+.BR fsetattr (3C),
+.BR attributes (7),
+.BR environ (7),
+.BR largefile (7)
diff --git a/usr/src/man/man1/pagesize.1 b/usr/src/man/man1/pagesize.1
index 6b78a7c9cf..28276e0cd5 100644
--- a/usr/src/man/man1/pagesize.1
+++ b/usr/src/man/man1/pagesize.1
@@ -35,5 +35,7 @@ system.
.SH SEE ALSO
.sp
.LP
-\fBppgsz\fR(1), \fBgetpagesize\fR(3C), \fBgetpagesizes\fR(3C),
-\fBattributes\fR(5)
+.BR ppgsz (1),
+.BR getpagesize (3C),
+.BR getpagesizes (3C),
+.BR attributes (7)
diff --git a/usr/src/man/man1/pargs.1 b/usr/src/man/man1/pargs.1
index 58b7bfc7f9..cff456596b 100644
--- a/usr/src/man/man1/pargs.1
+++ b/usr/src/man/man1/pargs.1
@@ -25,7 +25,7 @@ vector.
.LP
\fBpargs\fR outputs unprintable characters as escaped octal in the format
\fB\e\fR\fIxxx\fR, unless the character is one of the characters specified in
-the "\fBEscape Sequences\fR" section of \fBformats\fR(5), in which case the
+the "\fBEscape Sequences\fR" section of \fBformats\fR(7), in which case the
character is printed as specified in that section.
.sp
.LP
@@ -168,7 +168,7 @@ Process information and control files.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -183,5 +183,10 @@ Interface Stability Evolving
.SH SEE ALSO
.LP
-\fBproc\fR(1), \fBiconv\fR(3C), \fBproc\fR(4), \fBascii\fR(5),
-\fBattributes\fR(5), \fBenviron\fR(5), \fBformats\fR(5)
+.BR proc (1),
+.BR iconv (3C),
+.BR proc (5),
+.BR ascii (7),
+.BR attributes (7),
+.BR environ (7),
+.BR formats (7)
diff --git a/usr/src/man/man1/passwd.1 b/usr/src/man/man1/passwd.1
index cf8479f0dd..880cf79c0a 100644
--- a/usr/src/man/man1/passwd.1
+++ b/usr/src/man/man1/passwd.1
@@ -70,8 +70,8 @@ any login \fIname\fR.
When used to change a password, \fBpasswd\fR prompts everyone for their old
password, if any. It then prompts for the new password twice. When the old
password is entered, \fBpasswd\fR checks to see if it has aged sufficiently. If
-\fBaging\fR is insufficient, \fBpasswd\fR terminates; see \fBpwconv\fR(1M)
-and \fBshadow\fR(4) for additional information.
+\fBaging\fR is insufficient, \fBpasswd\fR terminates; see \fBpwconv\fR(8)
+and \fBshadow\fR(5) for additional information.
.sp
.LP
The \fBpwconv\fR command creates and updates \fB/etc/shadow\fR with information
@@ -96,7 +96,7 @@ Passwords must be constructed to meet the following requirements:
Each password must have \fBPASSLENGTH\fR characters, where \fBPASSLENGTH\fR is
defined in \fB/etc/default/passwd\fR and is set to \fB6\fR. Setting
\fBPASSLENGTH\fR to more than eight characters requires configuring
-\fBpolicy.conf\fR(4) with an algorithm that supports greater than eight
+\fBpolicy.conf\fR(5) with an algorithm that supports greater than eight
characters.
.RE
.RS +4
@@ -172,7 +172,7 @@ update the password of an AD user, use the \fBkpasswd\fR(1) command.
.sp
.LP
The administrator configured for updating LDAP shadow
-information can change any password attributes. See \fBldapclient\fR(1M).
+information can change any password attributes. See \fBldapclient\fR(8).
.sp
.LP
When a user has a password stored in one of the name services as well as a
@@ -182,7 +182,7 @@ to have different passwords in the name service and local files entry. Use
.sp
.LP
In the \fBfiles\fR case, super-users (for instance, real and effective uid
-equal to \fB0\fR, see \fBid\fR(1M) and \fBsu\fR(1M)) can change any password.
+equal to \fB0\fR, see \fBid\fR(8) and \fBsu\fR(8)) can change any password.
Hence, \fBpasswd\fR does not prompt privileged users for the old password.
Privileged users are not forced to comply with password aging and password
construction requirements. A privileged user can create a null password by
@@ -199,7 +199,7 @@ comply with password construction requirements.
.sp
.LP
Normally, \fBpasswd\fR entered with no arguments changes the password of the
-current user. When a user logs in and then invokes \fBsu\fR(1M) to become
+current user. When a user logs in and then invokes \fBsu\fR(8) to become
superuser or another user, \fBpasswd\fR changes the original user's password,
not the password of the superuser or the new user.
.sp
@@ -338,7 +338,7 @@ authentication and password for password change.
.LP
Locking an account (\fB-l\fR option) does not allow its use for password based
login or delayed execution (such as \fBat\fR(1), \fBbatch\fR(1), or
-\fBcron\fR(1M)). The \fB-N\fR option can be used to disallow password based
+\fBcron\fR(8)). The \fB-N\fR option can be used to disallow password based
login, while continuing to allow delayed execution.
.SH OPTIONS
.LP
@@ -573,7 +573,7 @@ User login name.
.LP
If any of the \fBLC_*\fR variables, that is, \fBLC_CTYPE\fR, \fBLC_MESSAGES\fR,
\fBLC_TIME\fR, \fBLC_COLLATE\fR, \fBLC_NUMERIC\fR, and \fBLC_MONETARY\fR (see
-\fBenviron\fR(5)), are not set in the environment, the operational behavior of
+\fBenviron\fR(7)), are not set in the environment, the operational behavior of
\fBpasswd\fR for each corresponding locale category is determined by the value
of the \fBLANG\fR environment variable. If \fBLC_ALL\fR is set, its contents
are used to override both the \fBLANG\fR and the other \fBLC_*\fR variables. If
@@ -745,7 +745,7 @@ to determine whether a password is based on a dictionary word.
If neither \fBDICTIONLIST\fR nor \fBDICTIONDBDIR\fR is specified, the system
does not perform a dictionary check.
.sp
-To pre-build the dictionary database, see \fBmkpwdict\fR(1M).
+To pre-build the dictionary database, see \fBmkpwdict\fR(8).
.RE
.sp
@@ -760,7 +760,7 @@ password history of all users to be discarded at the next password change by
any user. The default is not to define the \fBHISTORY\fR flag. The maximum
value is \fB26.\fR Currently, this functionality is enforced only for user
accounts defined in the \fBfiles\fR name service (local
-\fBpasswd\fR(4)/\fBshadow\fR(4)).
+\fBpasswd\fR(5)/\fBshadow\fR(5)).
.RE
.sp
@@ -944,7 +944,7 @@ Shell database.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -964,24 +964,52 @@ Interface Stability See below.
The human readable output is Uncommitted. The options are Committed.
.SH SEE ALSO
.LP
-\fBat\fR(1), \fBbatch\fR(1), \fBfinger\fR(1), \fBkpasswd\fR(1), \fBlogin\fR(1),
-\fBcron\fR(1M), \fBdomainname\fR(1M), \fBeeprom\fR(1M),
-\fBid\fR(1M), \fBldapclient\fR(1M), \fBmkpwdict\fR(1M), \fBpassmgmt\fR(1M),
-\fBpwconv\fR(1M), \fBsu\fR(1M), \fBuseradd\fR(1M), \fBuserdel\fR(1M),
-\fBusermod\fR(1M), \fBcrypt\fR(3C), \fBgetpwnam\fR(3C), \fBgetspnam\fR(3C),
-\fBgetusershell\fR(3C), \fBpam\fR(3PAM),
-\fBloginlog\fR(4), \fBnsswitch.conf\fR(4), \fBpam.conf\fR(4), \fBpasswd\fR(4),
-\fBpolicy.conf\fR(4), \fBshadow\fR(4), \fBshells\fR(4), \fBattributes\fR(5),
-\fBenviron\fR(5), \fBpam_authtok_check\fR(5), \fBpam_authtok_get\fR(5),
-\fBpam_authtok_store\fR(5), \fBpam_dhkeys\fR(5), \fBpam_ldap\fR(5),
-\fBpam_unix_account\fR(5), \fBpam_unix_auth\fR(5), \fBpam_unix_session\fR(5)
+.BR at (1),
+.BR batch (1),
+.BR finger (1),
+.BR kpasswd (1),
+.BR login (1),
+.BR crypt (3C),
+.BR getpwnam (3C),
+.BR getspnam (3C),
+.BR getusershell (3C),
+.BR pam (3PAM),
+.BR loginlog (5),
+.BR nsswitch.conf (5),
+.BR pam.conf (5),
+.BR passwd (5),
+.BR policy.conf (5),
+.BR shadow (5),
+.BR shells (5),
+.BR attributes (7),
+.BR environ (7),
+.BR pam_authtok_check (7),
+.BR pam_authtok_get (7),
+.BR pam_authtok_store (7),
+.BR pam_dhkeys (7),
+.BR pam_ldap (7),
+.BR pam_unix_account (7),
+.BR pam_unix_auth (7),
+.BR pam_unix_session (7),
+.BR cron (8),
+.BR domainname (8),
+.BR eeprom (8),
+.BR id (8),
+.BR ldapclient (8),
+.BR mkpwdict (8),
+.BR passmgmt (8),
+.BR pwconv (8),
+.BR su (8),
+.BR useradd (8),
+.BR userdel (8),
+.BR usermod (8)
.SH NOTES
.LP
-The \fBpam_unix\fR(5) module is no longer supported. Similar functionality is
-provided by \fBpam_unix_account\fR(5), \fBpam_unix_auth\fR(5),
-\fBpam_unix_session\fR(5), \fBpam_authtok_check\fR(5),
-\fBpam_authtok_get\fR(5), \fBpam_authtok_store\fR(5), \fBpam_dhkeys\fR(5), and
-\fBpam_passwd_auth\fR(5).
+The \fBpam_unix\fR(7) module is no longer supported. Similar functionality is
+provided by \fBpam_unix_account\fR(7), \fBpam_unix_auth\fR(7),
+\fBpam_unix_session\fR(7), \fBpam_authtok_check\fR(7),
+\fBpam_authtok_get\fR(7), \fBpam_authtok_store\fR(7), \fBpam_dhkeys\fR(7), and
+\fBpam_passwd_auth\fR(7).
.sp
.LP
The \fByppasswd\fR command is a wrapper around \fBpasswd\fR. Use of
diff --git a/usr/src/man/man1/paste.1 b/usr/src/man/man1/paste.1
index eef1ad280a..5f54fbcbe6 100644
--- a/usr/src/man/man1/paste.1
+++ b/usr/src/man/man1/paste.1
@@ -191,7 +191,7 @@ Implementations support pasting of at least 12 \fIfile\fR operands.
.SH USAGE
.sp
.LP
-See \fBlargefile\fR(5) for the description of the behavior of \fBpaste\fR when
+See \fBlargefile\fR(7) for the description of the behavior of \fBpaste\fR when
encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
.SH EXAMPLES
.LP
@@ -227,7 +227,7 @@ example% \fBpaste -s -d"\e t\e n" file\fR
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBpaste\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.SH EXIT STATUS
@@ -255,7 +255,7 @@ An error occurred.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -273,8 +273,13 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBcut\fR(1), \fBgrep\fR(1), \fBpr\fR(1), \fBattributes\fR(5),
-\fBenviron\fR(5), \fBlargefile\fR(5), \fBstandards\fR(5)
+.BR cut (1),
+.BR grep (1),
+.BR pr (1),
+.BR attributes (7),
+.BR environ (7),
+.BR largefile (7),
+.BR standards (7)
.SH DIAGNOSTICS
.sp
.ne 2
diff --git a/usr/src/man/man1/pathchk.1 b/usr/src/man/man1/pathchk.1
index f3d77e54c0..85cd74612e 100644
--- a/usr/src/man/man1/pathchk.1
+++ b/usr/src/man/man1/pathchk.1
@@ -149,7 +149,7 @@ A path to be checked.
.SH USAGE
.sp
.LP
-See \fBlargefile\fR(5) for the description of the behavior of \fBpathchk\fR
+See \fBlargefile\fR(7) for the description of the behavior of \fBpathchk\fR
when encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
.SH EXAMPLES
.LP
@@ -317,7 +317,7 @@ which will verify that the file did not already exist, but leave
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBpathchk\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.SH EXIT STATUS
@@ -345,7 +345,7 @@ An error occurred.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -361,5 +361,9 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBpax\fR(1), \fBtest\fR(1), \fBattributes\fR(5), \fBenviron\fR(5),
-\fBlargefile\fR(5), \fBstandards\fR(5)
+.BR pax (1),
+.BR test (1),
+.BR attributes (7),
+.BR environ (7),
+.BR largefile (7),
+.BR standards (7)
diff --git a/usr/src/man/man1/pax.1 b/usr/src/man/man1/pax.1
index f86373c431..f008138a9d 100644
--- a/usr/src/man/man1/pax.1
+++ b/usr/src/man/man1/pax.1
@@ -813,7 +813,7 @@ Reads an archive file from standard input.
Modifies file or archive member names named by \fIpattern\fR or \fIfile\fR
operands according to the substitution expression \fIreplstr\fR, which is based
on the \fBed\fR(1) \fBs\fR (substitution) utility, using the regular expression
-syntax of \fBregex\fR(5). The concepts of ``address'' and ``line'' are
+syntax of \fBregex\fR(7). The concepts of ``address'' and ``line'' are
meaningless in the context of the \fBpax\fR command, and must not be supplied.
The format is:
.sp
@@ -1093,7 +1093,7 @@ character, not as a SPACE.
.RS +4
.TP
3.
-In addition to the escape sequences described in the \fBformats\fR(5) manual
+In addition to the escape sequences described in the \fBformats\fR(7) manual
page, (\fB\e\e\fR, \fB\ea\fR, \fB\eb\fR, \fB\ef\fR, \fB\en\fR, \fB\er\fR,
\fB\et\fR, \fB\ev\fR), \fB\e\fR\fIddd\fR, where \fIddd\fR is a one-, two-, or
three-digit octal number, is written as a byte with the numeric value specified
@@ -1246,7 +1246,7 @@ A path name of a file to be copied or archived.
.ad
.RS 13n
A pattern matching one or more path names of archive members. A pattern must
-conform to the pattern matching notation found on the \fBfnmatch\fR(5) manual
+conform to the pattern matching notation found on the \fBfnmatch\fR(7) manual
page. The default, if no \fIpattern\fR is specified, is to select all members
in the archive.
.RE
@@ -1453,7 +1453,7 @@ whenever that file is extracted from the archive. See the \fBSEEK_DATA\fR and
when it is extracted.
.sp
.LP
-See \fBlargefile\fR(5) for the description of the behavior of \fBpax\fR when
+See \fBlargefile\fR(7) for the description of the behavior of \fBpax\fR when
encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
.SS "Standard Input"
In \fBwrite\fR mode, the standard input is used only if no \fIfile\fR operands
@@ -1580,7 +1580,7 @@ Jan 31 15:53 2003
.sp
.SH ENVIRONMENT VARIABLES
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBpax\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, \fBLC_TIME\fR, and \fBNLSPATH\fR.
.sp
@@ -2460,7 +2460,7 @@ header is treated as a \fBustar typeflag 'x'\fR extended header.
.ad
.RS 17n
A Solaris custom \fBtypeflag\fR implementation which specifies an extended
-attributes header. See \fBfsattr\fR(5).
+attributes header. See \fBfsattr\fR(7).
.RE
.sp
@@ -2748,7 +2748,7 @@ entry preceding it. A header denoting the filename trailer indicates the end of
the archive; the contents of octets in the last block of the archive following
such a header are undefined.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -2760,15 +2760,28 @@ ATTRIBUTE TYPE ATTRIBUTE VALUE
_
Interface Stability Committed
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
-\fBchmod\fR(1), \fBcpio\fR(1), \fBed\fR(1), \fBprintf\fR(1), \fBtar\fR(1),
-\fBmkdir\fR(2), \fBlseek\fR(2), \fBstat\fR(2), \fBwrite\fR(2),
-\fBarchives.h\fR(3HEAD), \fBattributes\fR(5), \fBenviron\fR(5),
-\fBfnmatch\fR(5), \fBformats\fR(5), \fBfsattr\fR(5), \fBlargefile\fR(5),
-\fBregex\fR(5), \fBstandards\fR(5)
+.BR chmod (1),
+.BR cpio (1),
+.BR ed (1),
+.BR printf (1),
+.BR tar (1),
+.BR lseek (2),
+.BR mkdir (2),
+.BR stat (2),
+.BR write (2),
+.BR archives.h (3HEAD),
+.BR attributes (7),
+.BR environ (7),
+.BR fnmatch (7),
+.BR formats (7),
+.BR fsattr (7),
+.BR largefile (7),
+.BR regex (7),
+.BR standards (7)
.sp
.LP
\fIIEEE Std 1003.1-200x\fR, \fIISO/IEC 646: 1991\fR, \fIISO POSIX-2:1993
diff --git a/usr/src/man/man1/pfexec.1 b/usr/src/man/man1/pfexec.1
index 5d5c9048ed..c058dab9fb 100644
--- a/usr/src/man/man1/pfexec.1
+++ b/usr/src/man/man1/pfexec.1
@@ -35,34 +35,28 @@ pfexec, pfsh, pfcsh, pfksh \- execute a command in a profile
.SH DESCRIPTION
.LP
The \fBpfexec\fR program is used to execute commands with the attributes
-specified by the user's profiles in the \fBexec_attr\fR(4) database. It is
+specified by the user's profiles in the \fBexec_attr\fR(5) database. It is
invoked by the profile shells, \fBpfsh\fR, \fBpfcsh\fR, and \fBpfksh\fR which
are linked to the Bourne shell, C shell, and Korn shell, respectively.
.sp
.LP
Profiles are searched in the order specified in the user's entry in the
-\fBuser_attr\fR(4) database. If the same command appears in more than one
+\fBuser_attr\fR(5) database. If the same command appears in more than one
profile, the profile shell uses the first matching entry.
.sp
.LP
The second form, \fBpfexec\fR \fB-P\fR \fIprivspec\fR, allows a user to obtain
-the additional privileges awarded to the user's profiles in \fBprof_attr\fR(4).
+the additional privileges awarded to the user's profiles in \fBprof_attr\fR(5).
The privileges specification on the commands line is parsed using
\fBpriv_str_to_set\fR(3C). The resulting privileges are intersected with the
union of the privileges specified using the "\fBprivs\fR" keyword in
-\fBprof_attr\fR(4) for all the user's profiles and added to the inheritable set
+\fBprof_attr\fR(5) for all the user's profiles and added to the inheritable set
before executing the command.
.sp
.LP
For \fBpfexec\fR to function correctly, the \fBpfexecd\fR daemon must be running
in the current zone. This is normally managed by the
-"\fBsvc:/system/pfexec:default\fR" SMF service (see \fBsmf\fR(5)).
-.SH USAGE
-.sp
-.LP
-For \fBpfexec\fR to function correctly, the \fBpfexecd\fR daemon must be running
-in the current zone. This is normally managed by the
-"\fBsvc:/system/pfexec:default\fR" SMF service (see \fBsmf\fR(5)).
+"\fBsvc:/system/pfexec:default\fR" SMF service (see \fBsmf\fR(7)).
.SH USAGE
.LP
\fBpfexec\fR is used to execute commands with predefined process attributes,
@@ -110,5 +104,12 @@ An error occurred.
.SH SEE ALSO
.LP
-\fBcsh\fR(1), \fBksh\fR(1), \fBprofiles\fR(1), \fBsh\fR(1), \fBexec_attr\fR(4),
-\fBprof_attr\fR(4), \fBuser_attr\fR(4), \fBattributes\fR(5), \fBsmf\fR(5)
+.BR csh (1),
+.BR ksh (1),
+.BR profiles (1),
+.BR sh (1),
+.BR exec_attr (5),
+.BR prof_attr (5),
+.BR user_attr (5),
+.BR attributes (7),
+.BR smf (7)
diff --git a/usr/src/man/man1/pg.1 b/usr/src/man/man1/pg.1
index 28296f9155..75f99ef6aa 100644
--- a/usr/src/man/man1/pg.1
+++ b/usr/src/man/man1/pg.1
@@ -67,7 +67,7 @@ back up and review something that has already passed. The method for doing this
is explained below.
.sp
.LP
-To determine terminal attributes, \fBpg\fR scans the \fBterminfo\fR(4) data
+To determine terminal attributes, \fBpg\fR scans the \fBterminfo\fR(5) data
base for the terminal type specified by the environment variable \fBTERM\fR. If
\fBTERM\fR is not defined, the terminal type \fBdumb\fR is assumed.
.SH OPTIONS
@@ -102,7 +102,7 @@ the current page number when the prompt is issued. The default prompt string is
.RS 15n
Home the cursor and clear the screen before displaying each page. This option
is ignored if \fBclear_screen\fR is not defined for this terminal type in the
-\fBterminfo\fR(4) data base.
+\fBterminfo\fR(5) data base.
.RE
.sp
@@ -281,7 +281,7 @@ pipe.
.sp
.LP
The following commands are available for searching for text patterns in the
-text. The regular expressions are described on the \fBregex\fR(5) manual page.
+text. The regular expressions are described on the \fBregex\fR(7) manual page.
They must always be terminated by a <\fInewline\fR>, even if the \fB-n\fR
option is specified.
.sp
@@ -414,7 +414,7 @@ more than one).
.SS "Large File Behavior"
.sp
.LP
-See \fBlargefile\fR(5) for the description of the behavior of \fBpg\fR when
+See \fBlargefile\fR(7) for the description of the behavior of \fBpg\fR when
encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
.SH EXAMPLES
.LP
@@ -430,7 +430,7 @@ The following command line uses \fBpg\fR to read the system news:
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBpg\fR: \fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and
\fBNLSPATH\fR.
.sp
@@ -526,8 +526,14 @@ terminal information database
.SH SEE ALSO
.sp
.LP
-\fBcat\fR(1), \fBgrep\fR(1), \fBmore\fR(1), \fBterminfo\fR(4),
-\fBattributes\fR(5), \fBenviron\fR(5), \fBlargefile\fR(5), \fBregex\fR(5)
+.BR cat (1),
+.BR grep (1),
+.BR more (1),
+.BR terminfo (5),
+.BR attributes (7),
+.BR environ (7),
+.BR largefile (7),
+.BR regex (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man1/pgrep.1 b/usr/src/man/man1/pgrep.1
index 57b23dfc7e..6a02aeff3e 100644
--- a/usr/src/man/man1/pgrep.1
+++ b/usr/src/man/man1/pgrep.1
@@ -284,7 +284,7 @@ Matches only processes whose zone \fBID\fR is in the given list. Each zone
\fBID\fR may be specified as either a zone name or a numerical zone \fBID\fR.
This option is only useful when executed in the global zone. If the \fBpkill\fR
utility is used to send signals to processes in other zones, the process must
-have asserted the \fB{PRIV_PROC_ZONE}\fR privilege (see \fBprivileges\fR(5)).
+have asserted the \fB{PRIV_PROC_ZONE}\fR privilege (see \fBprivileges\fR(7)).
.RE
.sp
@@ -311,7 +311,7 @@ The following operand is supported:
.RS 11n
Specifies an Extended Regular Expression (\fBERE\fR) pattern to match against
either the executable file name or full process argument string. See
-\fBregex\fR(5) for a complete description of the \fBERE\fR syntax.
+\fBregex\fR(7) for a complete description of the \fBERE\fR syntax.
.RE
.SH EXAMPLES
@@ -411,11 +411,18 @@ Process information files
.RS 22n
Process arguments.
.RE
-
-.SH SEE ALSO
-\fBkill\fR(1), \fBproc\fR(1), \fBps\fR(1), \fBtruss\fR(1), \fBkill\fR(2),
-\fBsignal.h\fR(3HEAD), \fBproc\fR(4), \fBattributes\fR(5), \fBprivileges\fR(5),
-\fBregex\fR(5), \fBzones\fR(5)
+.LP
+.BR kill (1),
+.BR proc (1),
+.BR ps (1),
+.BR truss (1),
+.BR kill (2),
+.BR signal.h (3HEAD),
+.BR proc (5),
+.BR attributes (7),
+.BR privileges (7),
+.BR regex (7),
+.BR zones (7)
.SH NOTES
Both utilities match the \fBERE\fR \fIpattern\fR argument against either the
\fBpr_fname\fR field of the \fB/proc/\fR\fInnnnn\fR\fB/psinfo\fR file, or
diff --git a/usr/src/man/man1/pkginfo.1 b/usr/src/man/man1/pkginfo.1
index e86c3b103a..8c7bc1a9b3 100644
--- a/usr/src/man/man1/pkginfo.1
+++ b/usr/src/man/man1/pkginfo.1
@@ -56,7 +56,7 @@ Specify the architecture of the package as \fBarch\fR.
.sp .6
.RS 4n
Display packages that match \fIcategory\fR. Categories are defined with the
-\fBCATEGORY\fR parameter in the \fBpkginfo\fR(4) file. If more than one
+\fBCATEGORY\fR parameter in the \fBpkginfo\fR(5) file. If more than one
category is supplied, the package needs to match only one category in the
list. The match is not case specific.
.RE
@@ -146,7 +146,7 @@ tree starting in the specified \fIroot_path\fR.
.sp .6
.RS 4n
Specify the version of the package as \fIversion\fR. The version is defined
-with the \fBVERSION\fR parameter in the \fBpkginfo\fR(4) file. All compatible
+with the \fBVERSION\fR parameter in the \fBpkginfo\fR(5) file. All compatible
versions can be requested by preceding the version name with a tilde
(\fB\(ap\fR). Multiple white spaces are replaced with a single white space
during version comparison.
@@ -215,15 +215,21 @@ default installation spool directory
.SH SEE ALSO
.sp
.LP
-\fBpkgtrans\fR(1), \fBpkgadd\fR(1M), \fBpkgask\fR(1M), \fBpkgchk\fR(1M),
-\fBpkgrm\fR(1M), \fBpkginfo\fR(4), \fBattributes\fR(5), \fBlargefile\fR(5)
+.BR pkgtrans (1),
+.BR pkginfo (5),
+.BR attributes (7),
+.BR largefile (7),
+.BR pkgadd (8),
+.BR pkgask (8),
+.BR pkgchk (8),
+.BR pkgrm (8)
.sp
.LP
\fIApplication Packaging Developer\&'s Guide\fR
.SH NOTES
.sp
.LP
-Package commands are \fBlargefile\fR(5)-aware. They handle files larger than 2
+Package commands are \fBlargefile\fR(7)-aware. They handle files larger than 2
GB in the same way they handle smaller files. In their current implementations,
-\fBpkgadd\fR(1M), \fBpkgtrans\fR(1) and other package commands can process a
+\fBpkgadd\fR(8), \fBpkgtrans\fR(1) and other package commands can process a
datastream of up to 4 GB.
diff --git a/usr/src/man/man1/pkgmk.1 b/usr/src/man/man1/pkgmk.1
index 9191ace5e2..18bf00cd78 100644
--- a/usr/src/man/man1/pkgmk.1
+++ b/usr/src/man/man1/pkgmk.1
@@ -19,19 +19,19 @@ pkgmk \- produce an installable package
.sp
.LP
The \fBpkgmk\fR utility produces an installable package to be used as input to
-the \fBpkgadd\fR(1M) command. The package contents is in directory structure
+the \fBpkgadd\fR(8) command. The package contents is in directory structure
format.
.sp
.LP
-The command uses the package \fBprototype\fR(4) file as input and creates a
-\fBpkgmap\fR(4) file. The contents for each entry in the \fBprototype\fR file
+The command uses the package \fBprototype\fR(5) file as input and creates a
+\fBpkgmap\fR(5) file. The contents for each entry in the \fBprototype\fR file
is copied to the appropriate output location. Information concerning the
contents (checksum, file size, modification date) is computed and stored in the
\fBpkgmap\fR file, along with attribute information specified in the
\fBprototype\fR file.
.sp
.LP
-\fBpkgmk\fR searches for the files listed in the \fBprototype\fR(4) file as
+\fBpkgmk\fR searches for the files listed in the \fBprototype\fR(5) file as
described in the following conditions. \fBNote:\fR If a prototype file contains
the explicit location of the file to include in the package, then the following
search explanations do not apply.
@@ -39,15 +39,15 @@ search explanations do not apply.
.TP
1.
If neither \fB-b\fR nor \fB-r\fR options are specified, the file name
-component of each file path listed in the \fBprototype\fR(4) file is expected
-to be found in the same directory as the \fBprototype\fR(4) file
+component of each file path listed in the \fBprototype\fR(5) file is expected
+to be found in the same directory as the \fBprototype\fR(5) file
.RE
.RS +4
.TP
2.
If \fB-b\fR is specified as a relative path (without a leading "\fB/\fR"),
then \fIbase_src_dir\fR is prepended to the relative file paths from the
-\fBprototype\fR(4) file. The resulting path is searched for in the
+\fBprototype\fR(5) file. The resulting path is searched for in the
\fIroot_path\fR directories. If a \fIroot_path\fR is not specified, it defaults
to "\fB/\fR".
.RE
@@ -56,14 +56,14 @@ to "\fB/\fR".
3.
If \fB-b\fR is specified as an absolute path (with a leading "\fB/\fR"),
then \fIbase_src_dir\fR is prepended to the relative paths from the
-\fBprototype\fR(4) file and the result is the location of the file.
+\fBprototype\fR(5) file and the result is the location of the file.
\fIroot_path\fR is \fBnot\fR searched.
.RE
.RS +4
.TP
4.
If \fB-r\fR is specified, then full file paths are used from the
-\fBprototype\fR(4) file. Relative paths have \fIbase_src_dir\fR prepended. If
+\fBprototype\fR(5) file. Relative paths have \fIbase_src_dir\fR prepended. If
\fIbase_src_dir\fR is not specified, it defaults to \fB""\fR. The resulting
path is searched for in each directory of the \fIroot_path\fR.
.RE
@@ -75,9 +75,9 @@ If you created your prototype file using \fB"pkgproto a/relative/path"\fRor
\fBpkgmk\fR can correctly locate your source files.
.sp
.LP
-Package commands, including \fBpkgmk\fR, are \fBlargefile\fR(5)-aware. They
+Package commands, including \fBpkgmk\fR, are \fBlargefile\fR(7)-aware. They
handle files larger than 2 GB in the same way they handle smaller files. In
-their current implementations, \fBpkgadd\fR(1M), \fBpkgtrans\fR(1) and other
+their current implementations, \fBpkgadd\fR(8), \fBpkgtrans\fR(1) and other
package commands can process a datastream of up to 4 GB.
.SH OPTIONS
.sp
@@ -89,7 +89,7 @@ The following options are supported:
\fB\fB-a\fR \fIarch\fR\fR
.ad
.RS 19n
-Overrides the architecture information provided in the \fBpkginfo\fR(4) file
+Overrides the architecture information provided in the \fBpkginfo\fR(5) file
with \fIarch\fR.
.RE
@@ -135,7 +135,7 @@ Uses the file \fIprototype\fR as input to the command. The default
.RS 19n
Specifies the maximum size in 512 byte blocks of the output device as
\fBlimit\fR. By default, if the output file is a directory or a mountable
-device, \fBpkgmk\fR employs the \fBdf\fR(1M) command to dynamically calculate
+device, \fBpkgmk\fR employs the \fBdf\fR(8) command to dynamically calculate
the amount of available space on the output device. This option is useful in
conjunction with \fBpkgtrans\fR(1) to create a package with a datastream
format.
@@ -157,7 +157,7 @@ exists.
\fB\fB-p\fR \fIpstamp\fR\fR
.ad
.RS 19n
-Overrides the production stamp definition in the \fBpkginfo\fR(4) file with
+Overrides the production stamp definition in the \fBpkginfo\fR(5) file with
\fIpstamp\fR.
.RE
@@ -180,7 +180,7 @@ specified, look for the leaf filename in the current directory.
\fB\fB-v\fR \fIversion\fR\fR
.ad
.RS 19n
-Overrides the version information provided in the \fBpkginfo\fR(4) file with
+Overrides the version information provided in the \fBpkginfo\fR(5) file with
\fIversion\fR.
.RE
@@ -191,7 +191,7 @@ Overrides the version information provided in the \fBpkginfo\fR(4) file with
.ad
.RS 19n
Places the indicated variable in the packaging environment. (See
-\fBprototype\fR(4) for definitions of variable specifications.)
+\fBprototype\fR(5) for definitions of variable specifications.)
.RE
.SH OPERANDS
@@ -237,9 +237,17 @@ An error occurred.
.SH SEE ALSO
.sp
.LP
-\fBpkgparam\fR(1), \fBpkgproto\fR(1), \fBpkgtrans\fR(1), \fBuname\fR(1),
-\fBdf\fR(1M), \fBpkgadd\fR(1M), \fBpkginfo\fR(4), \fBpkgmap\fR(4),
-\fBprototype\fR(4), \fBattributes\fR(5), \fBlargefile\fR(5)
+.BR pkgparam (1),
+.BR pkgproto (1),
+.BR pkgtrans (1),
+.BR uname (1),
+.BR pkginfo (5),
+.BR pkgmap (5),
+.BR prototype (5),
+.BR attributes (7),
+.BR largefile (7),
+.BR df (8),
+.BR pkgadd (8)
.sp
.LP
\fIApplication Packaging Developer\&'s Guide\fR
@@ -247,18 +255,18 @@ An error occurred.
.sp
.LP
Architecture information is provided on the command line with the \fB-a\fR
-option or in the \fBprototype\fR(4) file. If no architecture information is
+option or in the \fBprototype\fR(5) file. If no architecture information is
supplied, \fBpkgmk\fR uses the output of \fBuname\fR \fB-m\fR (see
\fBuname\fR(1)).
.sp
.LP
Version information is provided on the command line with the \fB-v\fR option or
-in the \fBpkginfo\fR(4) file. If no version information is supplied, a default
+in the \fBpkginfo\fR(5) file. If no version information is supplied, a default
based on the current date is provided.
.sp
.LP
Command line definitions for both architecture and version override the
-\fBprototype\fR(4) definitions.
+\fBprototype\fR(5) definitions.
.sp
.LP
\fBpkgmk\fR fails if one of the following invalid combinations of zone-related
@@ -283,4 +291,4 @@ The package contains a request script and \fBSUNW_PKG_THISZONE\fR set to
.RE
.sp
.LP
-For additional information regarding these parameters, see \fBpkginfo\fR(4).
+For additional information regarding these parameters, see \fBpkginfo\fR(5).
diff --git a/usr/src/man/man1/pkgparam.1 b/usr/src/man/man1/pkgparam.1
index 9f8ad572c4..a1e16acf78 100644
--- a/usr/src/man/man1/pkgparam.1
+++ b/usr/src/man/man1/pkgparam.1
@@ -22,7 +22,7 @@ pkgparam \- display package parameter values
.LP
\fBpkgparam\fR displays the value associated with the parameter or parameters
requested on the command line. The values are located in either the
-\fBpkginfo\fR(4) file for \fIpkginst\fR or from the specific file named with
+\fBpkginfo\fR(5) file for \fIpkginst\fR or from the specific file named with
the \fB-f\fR option.
.sp
.LP
@@ -136,8 +136,13 @@ An error occurred.
.SH SEE ALSO
.sp
.LP
-\fBpkgmk\fR(1), \fBpkgproto\fR(1), \fBpkgtrans\fR(1), \fBpkgadd\fR(1M),
-\fBpkginfo\fR(4), \fBattributes\fR(5), \fBlargefile\fR(5)
+.BR pkgmk (1),
+.BR pkgproto (1),
+.BR pkgtrans (1),
+.BR pkginfo (5),
+.BR attributes (7),
+.BR largefile (7),
+.BR pkgadd (8)
.sp
.LP
\fIApplication Packaging Developer\&'s Guide\fR
@@ -146,11 +151,11 @@ An error occurred.
.LP
With the \fB-f\fR option, you can specify the file from which parameter values
should be extracted. This file should be in the same format as a
-\fBpkginfo\fR(4) file. For example, such a file might be created during package
+\fBpkginfo\fR(5) file. For example, such a file might be created during package
development and used while testing software during this stage.
.sp
.LP
-Package commands are \fBlargefile\fR(5)-aware. They handle files larger than 2
+Package commands are \fBlargefile\fR(7)-aware. They handle files larger than 2
GB in the same way they handle smaller files. In their current implementations,
-\fBpkgadd\fR(1M), \fBpkgtrans\fR(1) and other package commands can process a
+\fBpkgadd\fR(8), \fBpkgtrans\fR(1) and other package commands can process a
datastream of up to 4 GB.
diff --git a/usr/src/man/man1/pkgproto.1 b/usr/src/man/man1/pkgproto.1
index 5c7cc316de..463395cc9f 100644
--- a/usr/src/man/man1/pkgproto.1
+++ b/usr/src/man/man1/pkgproto.1
@@ -20,7 +20,7 @@ pkgproto \- generate prototype file entries for input to pkgmk command
.SH DESCRIPTION
.sp
.LP
-\fBpkgproto\fR scans the indicated paths and generates \fBprototype\fR(4) file
+\fBpkgproto\fR scans the indicated paths and generates \fBprototype\fR(5) file
entries that may be used as input to the \fBpkgmk\fR(1) command.
.sp
.LP
@@ -30,9 +30,9 @@ the contents of the directory is searched. However, if input is read from
\fBstdin\fR, a directory specified as a pathname will not be searched.
.sp
.LP
-Package commands, such as \fBpkgproto\fR, are \fBlargefile\fR(5)-aware. They
+Package commands, such as \fBpkgproto\fR, are \fBlargefile\fR(7)-aware. They
handle files larger than 2 GB in the same way they handle smaller files. In
-their current implementations, \fBpkgadd\fR(1M), \fBpkgtrans\fR(1) and other
+their current implementations, \fBpkgadd\fR(8), \fBpkgtrans\fR(1) and other
package commands can process a datastream of up to 4 GB.
.SH OPTIONS
.sp
@@ -140,8 +140,13 @@ An error occurred.
.SH SEE ALSO
.sp
.LP
-\fBpkgmk\fR(1), \fBpkgparam\fR(1), \fBpkgtrans\fR(1), \fBpkgadd\fR(1M),
-\fBprototype\fR(4), \fBattributes\fR(5), \fBlargefile\fR(5)
+.BR pkgmk (1),
+.BR pkgparam (1),
+.BR pkgtrans (1),
+.BR prototype (5),
+.BR attributes (7),
+.BR largefile (7),
+.BR pkgadd (8)
.sp
.LP
\fIApplication Packaging Developer\&'s Guide\fR
@@ -151,7 +156,7 @@ An error occurred.
By default, \fBpkgproto\fR creates symbolic link entries for any symbolic link
encountered (\fBftype\fR=\fBs\fR). When you use the \fB-i\fR option,
\fBpkgproto\fR creates a file entry for symbolic links (\fBftype\fR=\fBf\fR).
-The \fBprototype\fR(4) file would have to be edited to assign such file types
+The \fBprototype\fR(5) file would have to be edited to assign such file types
as \fBv\fR (volatile), \fBe\fR (editable), or \fBx\fR (exclusive directory).
\fBpkgproto\fR detects linked files. If multiple files are linked together, the
first path encountered is considered the source of the link.
diff --git a/usr/src/man/man1/pkgtrans.1 b/usr/src/man/man1/pkgtrans.1
index dd128d66fb..9f2415f02f 100644
--- a/usr/src/man/man1/pkgtrans.1
+++ b/usr/src/man/man1/pkgtrans.1
@@ -45,7 +45,7 @@ The options and arguments for this command are:
\fB\fB-i\fR\fR
.ad
.RS 15n
-Copies only the \fBpkginfo\fR(4) and \fBpkgmap\fR(4) files.
+Copies only the \fBpkginfo\fR(5) and \fBpkgmap\fR(5) files.
.RE
.sp
@@ -56,7 +56,7 @@ Copies only the \fBpkginfo\fR(4) and \fBpkgmap\fR(4) files.
.RS 15n
Creates a new instance of the package on the destination device if any instance
of this package already exists, up to the number specified by the \fBMAXINST\fR
-variable in the \fBpkginfo\fR(4) file.
+variable in the \fBpkginfo\fR(5) file.
.RE
.sp
@@ -119,8 +119,8 @@ quotes (\fB\&'\fR) or preceded by a backslash (\fB\e\fR).
.SH DEVICE SPECIFIERS
.LP
-Packaging tools, including \fBpkgtrans\fR, \fBpkgadd\fR(1M), and
-\fBpkgchk\fR(1M), have options for specifying a package location by specifying
+Packaging tools, including \fBpkgtrans\fR, \fBpkgadd\fR(8), and
+\fBpkgchk\fR(8), have options for specifying a package location by specifying
the device on which it resides. Listed below are the device types that a
package can be stored to and retrieved from. Note that source and destination
devices cannot be the same.
@@ -135,7 +135,7 @@ identifier as the device. Common examples of this device type are
\fB/dev/rmt/0\fR for a removable magnetic tape and \fB/floppy/floppy0\fR for
the first floppy disk on the system. \fBpkgtrans\fR can also produce regular
file system files in a stream format, which is suitable for storage on a
-character device, web server, or as input to \fBpkgadd\fR(1M).
+character device, web server, or as input to \fBpkgadd\fR(8).
.RE
.sp
@@ -160,7 +160,7 @@ device specification are \fBspool\fR (the default package device location) and
Packages can be stored onto a directory by specifying an absolute path to a
file system directory. The package contents reside in a directory within the
specified directory. The package directory name must be identical to its
-\fBPKG\fR specification in the \fBpkginfo\fR(4) file. An example device
+\fBPKG\fR specification in the \fBpkginfo\fR(5) file. An example device
specification of this type is \fB/export/packages\fR.
.RE
@@ -228,7 +228,7 @@ example% pkgtrans /tmp/pkg1.pkg ~/tmp pkg1
.SH ENVIRONMENT VARIABLES
.LP
-The \fBMAXINST\fR variable is set in the \fBpkginfo\fR(4) file and declares the
+The \fBMAXINST\fR variable is set in the \fBpkginfo\fR(5) file and declares the
maximum number of package instances.
.SH EXIT STATUS
.ne 2
@@ -250,7 +250,7 @@ An error occurred.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -268,10 +268,19 @@ Interface Stability See below.
The command-line syntax is Evolving.
.SH SEE ALSO
.LP
-\fBpkginfo\fR(1), \fBpkgmk\fR(1), \fBpkgparam\fR(1), \fBpkgproto\fR(1),
-\fBinstallf\fR(1M), \fBpkgadd\fR(1M), \fBpkgask\fR(1M), \fBpkgrm\fR(1M),
-\fBremovef\fR(1M), \fBpkginfo\fR(4), \fBpkgmap\fR(4), \fBattributes\fR(5),
-\fBlargefile\fR(5)
+.BR pkginfo (1),
+.BR pkgmk (1),
+.BR pkgparam (1),
+.BR pkgproto (1),
+.BR pkginfo (5),
+.BR pkgmap (5),
+.BR attributes (7),
+.BR largefile (7),
+.BR installf (8),
+.BR pkgadd (8),
+.BR pkgask (8),
+.BR pkgrm (8),
+.BR removef (8)
.sp
.LP
\fIApplication Packaging Developer\&'s Guide\fR
@@ -285,7 +294,7 @@ already exists. Neither of these options are useful if the destination device
is a datastream.
.sp
.LP
-Package commands are \fBlargefile\fR(5)-aware. They handle files larger than 2
+Package commands are \fBlargefile\fR(7)-aware. They handle files larger than 2
GB in the same way they handle smaller files. In their current implementations,
-\fBpkgadd\fR(1M), \fBpkgtrans\fR and other package commands can process a
+\fBpkgadd\fR(8), \fBpkgtrans\fR and other package commands can process a
datastream of up to 4 GB.
diff --git a/usr/src/man/man1/pktool.1 b/usr/src/man/man1/pktool.1
index 0f6a805cc2..e80dce7856 100644
--- a/usr/src/man/man1/pktool.1
+++ b/usr/src/man/man1/pktool.1
@@ -1311,7 +1311,7 @@ An error occurred.
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -1325,7 +1325,8 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBattributes\fR(5), \fBpkcs11_softtoken\fR(5)
+.BR attributes (7),
+.BR pkcs11_softtoken (7)
.sp
.LP
RSA PKCS#11 v2.11 http://www.rsasecurity.com
diff --git a/usr/src/man/man1/plabel.1 b/usr/src/man/man1/plabel.1
index f5851d3095..04cc739979 100644
--- a/usr/src/man/man1/plabel.1
+++ b/usr/src/man/man1/plabel.1
@@ -81,7 +81,7 @@ Inability to allocate memory.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -100,7 +100,9 @@ The \fBplabel\fR utility is Committed. The output is Not-an-Interface.
.SH SEE ALSO
.sp
.LP
-\fBproc\fR(1), \fBgetplabel\fR(3TSOL), \fBattributes\fR(5)
+.BR proc (1),
+.BR getplabel (3TSOL),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man1/plgrp.1 b/usr/src/man/man1/plgrp.1
index 916e2d4908..41f96afdf9 100644
--- a/usr/src/man/man1/plgrp.1
+++ b/usr/src/man/man1/plgrp.1
@@ -296,7 +296,7 @@ Non-fatal error or interrupt. Something might have changed.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -314,10 +314,19 @@ Interface Stability See below.
The command syntax is Unstable. The output formats are Unstable.
.SH SEE ALSO
.LP
-\fBlgrpinfo\fR(1), \fBmadv.so.1\fR(1), \fBpmadvise\fR(1), \fBpmap\fR(1),
-\fBproc\fR(1), \fBps\fR(1), \fBprstat\fR(1M), \fBlgrp_affinity_get\fR(3LGRP),
-\fBlgrp_affinity_set\fR(3LGRP), \fBlgrp_home\fR(3LGRP), \fBliblgrp\fR(3LIB),
-\fBproc\fR(4), \fBattributes\fR(5)
+.BR lgrpinfo (1),
+.BR madv.so.1 (1),
+.BR pmadvise (1),
+.BR pmap (1),
+.BR proc (1),
+.BR ps (1),
+.BR lgrp_affinity_get (3LGRP),
+.BR lgrp_affinity_set (3LGRP),
+.BR lgrp_home (3LGRP),
+.BR liblgrp (3LIB),
+.BR proc (5),
+.BR attributes (7),
+.BR prstat (8)
.SH WARNINGS
.LP
Like the \fBproc\fR(1) tools, the \fBplgrp\fR utility stops its target
diff --git a/usr/src/man/man1/plimit.1 b/usr/src/man/man1/plimit.1
index 59eef652a6..c8098e3b27 100644
--- a/usr/src/man/man1/plimit.1
+++ b/usr/src/man/man1/plimit.1
@@ -201,4 +201,4 @@ process information and control files
.sp
.LP
\fBulimit\fR(1), \fBproc\fR(1), \fBgetrlimit\fR(2), \fBsetrlimit\fR(2),
-\fBproc\fR(4), \fBattributes\fR(5),
+\fBproc\fR(5), \fBattributes\fR(7),
diff --git a/usr/src/man/man1/pmadvise.1 b/usr/src/man/man1/pmadvise.1
index 5b1e53a602..95e6b06f85 100644
--- a/usr/src/man/man1/pmadvise.1
+++ b/usr/src/man/man1/pmadvise.1
@@ -255,7 +255,7 @@ Process files
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -273,5 +273,8 @@ Interface Stability See below.
The command syntax is Evolving. The output formats are Unstable.
.SH SEE ALSO
.LP
-\fBmadv.so.1\fR(1), \fBpmap\fR(1), \fBproc\fR(1), \fBmadvise\fR(3C),
-\fBattributes\fR(5)
+.BR madv.so.1 (1),
+.BR pmap (1),
+.BR proc (1),
+.BR madvise (3C),
+.BR attributes (7)
diff --git a/usr/src/man/man1/pmap.1 b/usr/src/man/man1/pmap.1
index 6177a853a6..78c4a9ae73 100644
--- a/usr/src/man/man1/pmap.1
+++ b/usr/src/man/man1/pmap.1
@@ -409,7 +409,7 @@ reserve swap space.
.ad
.RS 6n
The data for the mapping is not present in the core file (only applicable when
-applied to a core file). See \fBcoreadm\fR(1M) for information on configuring
+applied to a core file). See \fBcoreadm\fR(8) for information on configuring
core file content.
.RE
@@ -568,7 +568,7 @@ this mapping. See \fBmemcntl\fR(2) for further information.
The amount of swap space in kilobytes that is reserved for this mapping. That
is, swap space that is deducted from the total available pool of reservable
swap space that is displayed with the command \fBswap\fR \fB-s\fR. See
-\fBswap\fR(1M).
+\fBswap\fR(8).
.RE
.SH EXAMPLES
@@ -842,7 +842,7 @@ total Kb 50464 23496
The swap reservation information can be used to estimate the amount of virtual
swap used by each additional process. Each process consumes virtual swap from a
global virtual swap pool. Global swap reservations are reported by
-the '\fBavail\fR' field of the \fBswap\fR(1M) command.
+the '\fBavail\fR' field of the \fBswap\fR(8) command.
.LP
\fBExample 5 \fRLabeling Stacks in a Multi-threaded Process
@@ -979,7 +979,7 @@ process files
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -998,8 +998,21 @@ The command syntax is Evolving. The \fB-L\fR option and the output formats are
Unstable.
.SH SEE ALSO
.LP
-\fBldd\fR(1), \fBlgrpinfo\fR(1), \fBmadv.so.1\fR(1), \fBmdb\fR(1),
-\fBplgrp\fR(1), \fBpmadvise\fR(1), \fBproc\fR(1), \fBps\fR(1),
-\fBcoreadm\fR(1M), \fBprstat\fR(1M), \fBswap\fR(1M), \fBmmap\fR(2),
-\fBmemcntl\fR(2), \fBmeminfo\fR(2), \fBshmop\fR(2), \fBdlopen\fR(3C),
-\fBproc\fR(4), \fBattributes\fR(5)
+.BR ldd (1),
+.BR lgrpinfo (1),
+.BR madv.so.1 (1),
+.BR mdb (1),
+.BR plgrp (1),
+.BR pmadvise (1),
+.BR proc (1),
+.BR ps (1),
+.BR memcntl (2),
+.BR meminfo (2),
+.BR mmap (2),
+.BR shmop (2),
+.BR dlopen (3C),
+.BR proc (5),
+.BR attributes (7),
+.BR coreadm (8),
+.BR prstat (8),
+.BR swap (8)
diff --git a/usr/src/man/man1/postio.1 b/usr/src/man/man1/postio.1
index 3a4b1e7fec..fe8b97cf91 100644
--- a/usr/src/man/man1/postio.1
+++ b/usr/src/man/man1/postio.1
@@ -266,8 +266,11 @@ An error occurred.
.SH SEE ALSO
.LP
-\fBdownload\fR(1), \fBdpost\fR(1), \fBpostprint\fR(1), \fBpostreverse\fR(1),
-\fBattributes\fR(5)
+.BR download (1),
+.BR dpost (1),
+.BR postprint (1),
+.BR postreverse (1),
+.BR attributes (7)
.SH NOTES
.LP
The input \fIfiles\fR are handled as a single PostScript job. Sending several
diff --git a/usr/src/man/man1/postprint.1 b/usr/src/man/man1/postprint.1
index e28054b1d6..5d6d298e3e 100644
--- a/usr/src/man/man1/postprint.1
+++ b/usr/src/man/man1/postprint.1
@@ -237,5 +237,8 @@ An error occurred.
.SH SEE ALSO
.LP
-\fBdownload\fR(1), \fBdpost\fR(1), \fBpostio\fR(1), \fBpostreverse\fR(1),
-\fBattributes\fR(5)
+.BR download (1),
+.BR dpost (1),
+.BR postio (1),
+.BR postreverse (1),
+.BR attributes (7)
diff --git a/usr/src/man/man1/postreverse.1 b/usr/src/man/man1/postreverse.1
index a44d70fc42..e687320b92 100644
--- a/usr/src/man/man1/postreverse.1
+++ b/usr/src/man/man1/postreverse.1
@@ -127,8 +127,11 @@ An error occurred.
.SH SEE ALSO
.LP
-\fBdownload\fR(1), \fBdpost\fR(1), \fBpostio\fR(1), \fBpostprint\fR(1),
-\fBattributes\fR(5)
+.BR download (1),
+.BR dpost (1),
+.BR postio (1),
+.BR postprint (1),
+.BR attributes (7)
.SH NOTES
.LP
No attempt has been made to deal with redefinitions of global variables or
diff --git a/usr/src/man/man1/ppgsz.1 b/usr/src/man/man1/ppgsz.1
index c40589f026..b7ee9c3d3f 100644
--- a/usr/src/man/man1/ppgsz.1
+++ b/usr/src/man/man1/ppgsz.1
@@ -220,7 +220,7 @@ A template link-editor \fBmapfile\fR for aligning bss (see NOTES).
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -236,10 +236,21 @@ Interface Stability Evolving
.SH SEE ALSO
.sp
.LP
-\fBld\fR(1), \fBmpss.so.1\fR(1), \fBpagesize\fR(1), \fBpgrep\fR(1),
-\fBpmap\fR(1), \fBproc\fR(1), \fBbrk\fR(2), \fBexec\fR(2), \fBfork\fR(2),
-\fBmemcntl\fR(2), \fBmmap\fR(2), \fBsbrk\fR(2), \fBgetpagesize\fR(3C),
-\fBproc\fR(4), \fBattributes\fR(5)
+.BR ld (1),
+.BR mpss.so.1 (1),
+.BR pagesize (1),
+.BR pgrep (1),
+.BR pmap (1),
+.BR proc (1),
+.BR brk (2),
+.BR exec (2),
+.BR fork (2),
+.BR memcntl (2),
+.BR mmap (2),
+.BR sbrk (2),
+.BR getpagesize (3C),
+.BR proc (5),
+.BR attributes (7)
.sp
.LP
\fILinker and Libraries Guide\fR
diff --git a/usr/src/man/man1/ppriv.1 b/usr/src/man/man1/ppriv.1
index f565d90d38..2224f01602 100644
--- a/usr/src/man/man1/ppriv.1
+++ b/usr/src/man/man1/ppriv.1
@@ -180,7 +180,7 @@ of the \fBppriv\fR utility must be a super set of the controlled process's
the target's limit set. If the target's process uids do not match, the
\fB{PRIV_PROC_OWNER}\fR privilege must be asserted in the utility's effective
set. If the controlled processes have any uid with the value \fB0\fR, more
-restrictions might exist. See \fBprivileges\fR(5).
+restrictions might exist. See \fBprivileges\fR(7).
.SH EXAMPLES
.LP
\fBExample 1 \fRObtaining the Process Privileges of the Current Shell
@@ -275,7 +275,7 @@ The system call number can be mapped to a system call using
.sp
.LP
The following example lists the privileges available in the current zone (see
-\fBzones\fR(5)). When run in the global zone, all defined privileges are
+\fBzones\fR(7)). When run in the global zone, all defined privileges are
listed.
.sp
@@ -357,7 +357,7 @@ system call name to number mapping
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -376,5 +376,11 @@ The invocation is Committed. The output is Uncommitted.
.SH SEE ALSO
.sp
.LP
-\fBgcore\fR(1), \fBtruss\fR(1), \fBsetpflags\fR(2), \fBpriv_str_to_set\fR(3C),
-\fBproc\fR(4), \fBattributes\fR(5), \fBprivileges\fR(5), \fBzones\fR(5)
+.BR gcore (1),
+.BR truss (1),
+.BR setpflags (2),
+.BR priv_str_to_set (3C),
+.BR proc (5),
+.BR attributes (7),
+.BR privileges (7),
+.BR zones (7)
diff --git a/usr/src/man/man1/pr.1 b/usr/src/man/man1/pr.1
index f5ddad5635..69b052df15 100644
--- a/usr/src/man/man1/pr.1
+++ b/usr/src/man/man1/pr.1
@@ -413,7 +413,7 @@ example% \fBpr -e9 -t <file1 >file2\fR
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBpr\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, \fBLC_TIME\fR, \fBTZ\fR, and \fBNLSPATH\fR.
.SH EXIT STATUS
@@ -441,7 +441,7 @@ An error occurred.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.SS "/usr/bin/pr"
.sp
@@ -469,11 +469,14 @@ CSI Enabled
_
Interface Stability Committed
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.sp
.LP
-\fBexpand\fR(1), \fBlp\fR(1), \fBattributes\fR(5), \fBenviron\fR(5),
-\fBstandards\fR(5)
+.BR expand (1),
+.BR lp (1),
+.BR attributes (7),
+.BR environ (7),
+.BR standards (7)
diff --git a/usr/src/man/man1/praliases.1 b/usr/src/man/man1/praliases.1
index cd28e5966a..88f4c79b28 100644
--- a/usr/src/man/man1/praliases.1
+++ b/usr/src/man/man1/praliases.1
@@ -141,4 +141,7 @@ Default \fBsendmail\fR configuration file
.SH SEE ALSO
.sp
.LP
-\fBmailq\fR(1), \fBnewaliases\fR(1M), \fBsendmail\fR(1M), \fBattributes\fR(5)
+.BR mailq (1),
+.BR attributes (7),
+.BR newaliases (8),
+.BR sendmail (8)
diff --git a/usr/src/man/man1/prctl.1 b/usr/src/man/man1/prctl.1
index 5a91760ab2..18606c3036 100644
--- a/usr/src/man/man1/prctl.1
+++ b/usr/src/man/man1/prctl.1
@@ -22,7 +22,7 @@ allows access to the basic and privileged limits and the current usage on
the specified entity.
.sp
.LP
-See \fBresource_controls\fR(5) for a description of the resource controls
+See \fBresource_controls\fR(7) for a description of the resource controls
supported in the current release of the Solaris operating system.
.SH OPTIONS
The following options are supported:
@@ -177,7 +177,7 @@ well.
For compatibility with prior releases, this option is implied if \fB-v\fR is
specified, without any of \fB-e\fR, \fB-d\fR, \fB-r\fR, or \fB-x\fR.
.sp
-See \fBresource_controls\fR(5) for a description of unit modifiers and scaling
+See \fBresource_controls\fR(7) for a description of unit modifiers and scaling
factors you can use to express large values when setting a resource control
value.
.RE
@@ -210,7 +210,7 @@ Specifies the value for the resource control for a set operation. If no
disabling) is carried out on the lowest-valued resource control with the given
type.
.sp
-See \fBresource_controls\fR(5) for a description of unit modifiers and scaling
+See \fBresource_controls\fR(7) for a description of unit modifiers and scaling
factors you can use to express large values when setting a resource control
value.
.RE
@@ -428,9 +428,9 @@ The resource limit value after the change shows a new value of 300 Megabytes:
.sp
.LP
The \fBprctl\fR command can use the \fBproject.cpu-cap\fR resource control (see
-\fBresource_controls\fR(5)) to set and modify CPU caps for a project. (The same
+\fBresource_controls\fR(7)) to set and modify CPU caps for a project. (The same
resource control can be used in the \fB/etc/project\fR file. See
-\fBproject\fR(4)) The following command modifies the CPU cap to limit
+\fBproject\fR(5)) The following command modifies the CPU cap to limit
\fBuser.smith\fR to three CPUs:
.sp
@@ -472,8 +472,8 @@ To remove a CPU cap, enter:
.sp
.LP
The \fBprctl\fR command can use the \fBzone.cpu-cap\fR resource control (see
-\fBresource_controls\fR(5)) to set and modify CPU caps for a zone. (The same
-resource control can be manipulated using the \fBzonecfg\fR(1M) command.) The
+\fBresource_controls\fR(7)) to set and modify CPU caps for a zone. (The same
+resource control can be manipulated using the \fBzonecfg\fR(8) command.) The
following command modifies the CPU cap to limit the global zone to 80 percent
of a CPU:
@@ -536,7 +536,7 @@ Process information and control files
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -554,9 +554,13 @@ Interface Stability See below.
The command-line syntax is Committed. The human-readable output is Uncommitted.
The parsable output is Committed.
.SH SEE ALSO
-\fBrctladm\fR(1M), \fBzonecfg\fR(1M), \fBsetrctl\fR(2),
-\fBrctlblk_get_local_action\fR(3C), \fBproject\fR(4), \fBattributes\fR(5),
-\fBresource_controls\fR(5)
+.BR setrctl (2),
+.BR rctlblk_get_local_action (3C),
+.BR project (5),
+.BR attributes (7),
+.BR resource_controls (7),
+.BR rctladm (8),
+.BR zonecfg (8)
.SH NOTES
The valid signals that can be set on a resource control block allowing local
actions are \fBSIGABRT\fR, \fBSIGXRES\fR, \fBSIGHUP\fR, \fBSIGSTOP\fR,
diff --git a/usr/src/man/man1/preap.1 b/usr/src/man/man1/preap.1
index d23b116f43..7e1d4cb288 100644
--- a/usr/src/man/man1/preap.1
+++ b/usr/src/man/man1/preap.1
@@ -21,7 +21,7 @@ its parent. The exit status is reaped by way of the \fBwait\fR(3C),
system operation, zombies can occur, but are typically short-lived. This can
happen if a parent exits without having reaped the exit status of some or all
of its children. In that case, those children are reparented to \fBPID 1\fR.
-See \fBinit\fR(1M), which periodically reaps such processes.
+See \fBinit\fR(8), which periodically reaps such processes.
.sp
.LP
An irresponsible parent process can not exit for a very long time and thus
@@ -41,7 +41,7 @@ process which might soon be reaped by the parent, if:
.TP
.ie t \(bu
.el o
-The process is a child of \fBinit\fR(1M).
+The process is a child of \fBinit\fR(8).
.RE
.RS +4
.TP
@@ -116,8 +116,13 @@ Failure, such as no such process, permission denied, or invalid option.
.SH SEE ALSO
.sp
.LP
-\fBproc\fR(1), \fBinit\fR(1M), \fBwaitid\fR(2), \fBwait\fR(3C),
-\fBwaitpid\fR(3C), \fBproc\fR(4), \fBattributes\fR(5)
+.BR proc (1),
+.BR waitid (2),
+.BR wait (3C),
+.BR waitpid (3C),
+.BR proc (5),
+.BR attributes (7),
+.BR init (8)
.SH WARNINGS
.sp
.LP
diff --git a/usr/src/man/man1/prex.1 b/usr/src/man/man1/prex.1
index ee598efd43..201ebc68c9 100644
--- a/usr/src/man/man1/prex.1
+++ b/usr/src/man/man1/prex.1
@@ -608,7 +608,7 @@ a particular event came from. In multi-threaded programs, there is a race
condition with a thread doing a fork while the other threads are still running.
For the trace file not to get corrupted, the user should either use
\fBfork1\fR(2), or make sure that all other threads are quiescent when doing a
-\fBfork\fR(2),
+.BR fork (2),
.sp
.LP
If the target program itself (not any children it may \fBfork\fR(2)) does an
@@ -625,7 +625,7 @@ parent process will appear to have been logged by the parent.
.LP
Invoking \fBprex\fR with the \fB-k\fR flag causes \fBprex\fR to run in
\fBkernel mode\fR. In kernel mode, \fBprex\fR controls probes in the Solaris
-kernel. See \fBtnf_kernel_probes\fR(4) for a list of available probes in the
+kernel. See \fBtnf_kernel_probes\fR(5) for a list of available probes in the
Solaris kernel. A few \fBprex\fR commands are unavailable in kernel mode; many
other commands are valid in kernel mode only.
.sp
@@ -899,12 +899,27 @@ process files
.SH SEE ALSO
.sp
.LP
-\fBed\fR(1), \fBkill\fR(1), \fBksh\fR(1), \fBld\fR(1), \fBtnfdump\fR(1),
-\fBtnfxtract\fR(1), \fBtruss\fR(1), \fBexec\fR(2), \fBfork\fR(2),
-\fBfork1\fR(2), \fBvfork\fR(2), \fBTNF_DECLARE_RECORD\fR(3TNF),
-\fBTNF_PROBE\fR(3TNF), \fBdlclose\fR(3C), \fBdlopen\fR(3C),
-\fBgethrtime\fR(3C), \fBlibtnfctl\fR(3TNF), \fBtnf_process_disable\fR(3TNF),
-\fBtracing\fR(3TNF), \fBtnf_kernel_probes\fR(4), \fBattributes\fR(5)
+.BR ed (1),
+.BR kill (1),
+.BR ksh (1),
+.BR ld (1),
+.BR tnfdump (1),
+.BR tnfxtract (1),
+.BR truss (1),
+.BR exec (2),
+.BR fork (2),
+.BR fork1 (2),
+.BR vfork (2),
+.BR dlclose (3C),
+.BR dlopen (3C),
+.BR gethrtime (3C),
+.BR TNF_DECLARE_RECORD (3TNF),
+.BR TNF_PROBE (3TNF),
+.BR libtnfctl (3TNF),
+.BR tnf_process_disable (3TNF),
+.BR tracing (3TNF),
+.BR tnf_kernel_probes (5),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man1/print.1 b/usr/src/man/man1/print.1
index d872fa475d..d01c47e087 100644
--- a/usr/src/man/man1/print.1
+++ b/usr/src/man/man1/print.1
@@ -281,5 +281,8 @@ Output file is not open for writing.
.RE
.SH SEE ALSO
-\fBecho\fR(1), \fBksh\fR(1), \fBksh93\fR(1), \fBprintf\fR(1),
-\fBattributes\fR(5)
+.BR echo (1),
+.BR ksh (1),
+.BR ksh93 (1),
+.BR printf (1),
+.BR attributes (7)
diff --git a/usr/src/man/man1/printf.1 b/usr/src/man/man1/printf.1
index 113b72d84d..4ccf720d19 100644
--- a/usr/src/man/man1/printf.1
+++ b/usr/src/man/man1/printf.1
@@ -80,7 +80,7 @@ The following operands are supported by \fB/usr/bin/printf\fR:
.RS 12n
A string describing the format to use to write the remaining operands. The
\fIformat\fR operand is used as the \fIformat\fR string described on the
-\fBformats\fR(5) manual page, with the following exceptions:
+\fBformats\fR(7) manual page, with the following exceptions:
.RS +4
.TP
.ie t \(bu
@@ -100,7 +100,7 @@ A character in the format string is treated as a character, not as a
.TP
.ie t \(bu
.el o
-In addition to the escape sequences described on the \fBformats\fR(5) manual
+In addition to the escape sequences described on the \fBformats\fR(7) manual
page (\fB\e\e\fR, \fB\ea\fR, \fB\eb\fR, \fB\ef\fR, \fB\en\fR, \fB\er\fR,
\fB\et\fR, \fB\ev\fR), \fB\e\fR\fIddd\fR, where \fIddd\fR is a one-, two- or
three-digit octal number, is written as a byte with the numeric value specified
@@ -154,7 +154,7 @@ The following backslash-escape sequences are supported:
.TP
.ie t \(bu
.el o
-the escape sequences listed on the \fBformats\fR(5) manual page (\fB\e\e\fR,
+the escape sequences listed on the \fBformats\fR(7) manual page (\fB\e\e\fR,
\fB\ea\fR, \fB\eb\fR, \fB\ef\fR, \fB\en\fR, \fB\er\fR, \fB\et\fR, \fB\ev\fR),
which are converted to the characters they represent
.RE
@@ -927,7 +927,7 @@ Sunday, 3. July, 10:02
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBprintf\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, \fBLC_NUMERIC\fR, and \fBNLSPATH\fR.
.SH EXIT STATUS
@@ -955,7 +955,7 @@ An error occurred.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.SS "/usr/bin/printf"
.sp
@@ -970,7 +970,7 @@ CSI Enabled
_
Interface Stability Committed
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SS "ksh93"
@@ -989,9 +989,19 @@ Interface Stability Uncommitted
.SH SEE ALSO
.sp
.LP
-\fBawk\fR(1), \fBbc\fR(1), \fBdate\fR(1), \fBecho\fR(1), \fBksh93\fR(1),
-\fBprintf\fR(3C), \fBstrtod\fR(3C), \fBstrtol\fR(3C), \fBstrtoul\fR(3C),
-\fBattributes\fR(5), \fBenviron\fR(5), \fBformats\fR(5), \fBstandards\fR(5)
+.BR awk (1),
+.BR bc (1),
+.BR date (1),
+.BR echo (1),
+.BR ksh93 (1),
+.BR printf (3C),
+.BR strtod (3C),
+.BR strtol (3C),
+.BR strtoul (3C),
+.BR attributes (7),
+.BR environ (7),
+.BR formats (7),
+.BR standards (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man1/priocntl.1 b/usr/src/man/man1/priocntl.1
index c4da6e534f..dc90864ad8 100644
--- a/usr/src/man/man1/priocntl.1
+++ b/usr/src/man/man1/priocntl.1
@@ -567,7 +567,7 @@ real-time, the associated parameter is unaffected. If an option is omitted when
changing the class of a process to real-time from some other class, the
associated parameter is set to a default value. The default value for
\fIrtpri\fR is \fB0\fR and the default for time quantum is dependent on the
-value of \fIrtpri\fR and on the system configuration; see \fBrt_dptbl\fR(4).
+value of \fIrtpri\fR and on the system configuration; see \fBrt_dptbl\fR(5).
.sp
.LP
When using the \fB-t\fR \fItqntm\fR option, you can optionally specify a
@@ -816,7 +816,7 @@ the class of a process to fixed-priority from some other class, the associated
parameter is set to a default value. The default value for \fIfxuprilim\fR is
\fB0\fR. The default for \fIfxupri\fR is to set it equal to the \fIfxuprilim\fR
value which is being set. The default for time quantum is dependent on the
-\fIfxupri\fR and on the system configuration. See \fBfx_dptbl\fR(4).
+\fIfxupri\fR and on the system configuration. See \fBfx_dptbl\fR(5).
.sp
.LP
The time quantum of processes in the fixed-priority class can be changed
@@ -972,7 +972,7 @@ Command could not be executed at the specified priority.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -987,9 +987,19 @@ CSI Enabled
.SH SEE ALSO
.LP
-\fBkill\fR(1), \fBnice\fR(1), \fBps\fR(1), \fBdispadmin\fR(1M), \fBexec\fR(2),
-\fBfork\fR(2), \fBpriocntl\fR(2), \fBfx_dptbl\fR(4), \fBprocess\fR(4),
-\fBrt_dptbl\fR(4), \fBattributes\fR(5), \fBzones\fR(5), \fBFSS\fR(7)
+.BR kill (1),
+.BR nice (1),
+.BR ps (1),
+.BR exec (2),
+.BR fork (2),
+.BR priocntl (2),
+.BR FSS (4),
+.BR fx_dptbl (5),
+.BR process (5),
+.BR rt_dptbl (5),
+.BR attributes (7),
+.BR zones (7),
+.BR dispadmin (8)
.sp
.LP
\fISystem Administration Guide: Basic Administration\fR
diff --git a/usr/src/man/man1/proc.1 b/usr/src/man/man1/proc.1
index e61ae1d714..16b6cd3bc6 100644
--- a/usr/src/man/man1/proc.1
+++ b/usr/src/man/man1/proc.1
@@ -84,13 +84,13 @@ ptime \- proc tools
.SH DESCRIPTION
.LP
The proc tools are utilities that exercise features of \fB/proc\fR (see
-\fBproc\fR(4)). Most of them take a list of process-ids (\fIpid\fR). The tools
+\fBproc\fR(5)). Most of them take a list of process-ids (\fIpid\fR). The tools
that do take process-ids also accept \fB/proc/\fR\fInnn\fR as a process-id, so
the shell expansion \fB/proc/*\fR can be used to specify all processes in the
system.
.sp
.LP
-Some of the proc tools can also be applied to core files (see \fBcore\fR(4)).
+Some of the proc tools can also be applied to core files (see \fBcore\fR(5)).
The tools that apply to core files accept a list of either process \fBID\fRs or
names of core files or both.
.sp
@@ -166,7 +166,7 @@ process. For network endpoints, the local (and peer if connected) address
information is also provided. For sockets, the socket type, socket options and
send and receive buffer sizes are also provided. In addition, a path to the
file is reported if the information is available from \fB/proc/pid/path\fR.
-This is not necessarily the same name used to open the file. See \fBproc\fR(4)
+This is not necessarily the same name used to open the file. See \fBproc\fR(5)
for more information.
.RE
@@ -521,7 +521,7 @@ process files
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -539,12 +539,34 @@ Interface Stability See below.
The human readable output is Uncommitted. The options are Committed.
.SH SEE ALSO
.LP
-\fBgcore\fR(1), \fBldd\fR(1), \fBpargs\fR(1), \fBpauxv\fR(1), \fBpenv\fR(1),
-\fBpgrep\fR(1), \fBpkill\fR(1), \fBplimit\fR(1), \fBpmap\fR(1), \fBpreap\fR(1),
-\fBps\fR(1), \fBptree\fR(1), \fBppgsz\fR(1), \fBpwd\fR(1), \fBrlogin\fR(1),
-\fBtime\fR(1), \fBtruss\fR(1), \fBwait\fR(1), \fBfcntl\fR(2), \fBfstat\fR(2),
-\fBsetuid\fR(2), \fBdlopen\fR(3C), \fBsignal.h\fR(3HEAD), \fBcore\fR(4),
-\fBproc\fR(4), \fBprocess\fR(4), \fBattributes\fR(5), \fBzones\fR(5)
+.BR gcore (1),
+.BR ldd (1),
+.BR pargs (1),
+.BR pauxv (1),
+.BR penv (1),
+.BR pgrep (1),
+.BR pkill (1),
+.BR plimit (1),
+.BR pmap (1),
+.BR ppgsz (1),
+.BR preap (1),
+.BR ps (1),
+.BR ptree (1),
+.BR pwd (1),
+.BR rlogin (1),
+.BR time (1),
+.BR truss (1),
+.BR wait (1),
+.BR fcntl (2),
+.BR fstat (2),
+.BR setuid (2),
+.BR dlopen (3C),
+.BR signal.h (3HEAD),
+.BR core (5),
+.BR proc (5),
+.BR process (5),
+.BR attributes (7),
+.BR zones (7)
.SH WARNINGS
.LP
The following \fBproc\fR tools stop their target processes while inspecting
diff --git a/usr/src/man/man1/prof.1 b/usr/src/man/man1/prof.1
index 6c16595837..2f823d1309 100644
--- a/usr/src/man/man1/prof.1
+++ b/usr/src/man/man1/prof.1
@@ -193,7 +193,7 @@ of calls and zero time.
.sp
.LP
A single function may be split into subfunctions for profiling by means of the
-\fBMARK\fR macro. See \fBprof\fR(5).
+\fBMARK\fR macro. See \fBprof\fR(7).
.SH ENVIRONMENT VARIABLES
.sp
.ne 2
@@ -232,9 +232,15 @@ default namelist (object) file
.SH SEE ALSO
.sp
.LP
-\fBgprof\fR(1), \fBexit\fR(2), \fBpcsample\fR(2), \fBprofil\fR(2),
-\fBmalloc\fR(3C), \fBmalloc\fR(3MALLOC), \fBmonitor\fR(3C),
-\fBattributes\fR(5), \fBprof\fR(5)
+.BR gprof (1),
+.BR exit (2),
+.BR pcsample (2),
+.BR profil (2),
+.BR malloc (3C),
+.BR monitor (3C),
+.BR malloc (3MALLOC),
+.BR attributes (7),
+.BR prof (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man1/profiles.1 b/usr/src/man/man1/profiles.1
index 6a887ed47e..6e4c52a357 100644
--- a/usr/src/man/man1/profiles.1
+++ b/usr/src/man/man1/profiles.1
@@ -22,7 +22,7 @@ executable are the process attributes, such as the effective user and group
\fBID\fRs, with which the process runs when started by a privileged command
interpreter. The profile shells are \fBpfcsh\fR, \fBpfksh\fR, and \fBpfexec\fR.
See the \fBpfexec\fR(1) man page. Profiles can contain other profiles defined
-in \fBprof_attr\fR(4).
+in \fBprof_attr\fR(5).
.sp
.LP
Multiple profiles can be combined to construct the appropriate access control.
@@ -33,11 +33,11 @@ settings. For convenience, a wild card can be specified to match all commands.
.sp
.LP
When profiles are interpreted, the profile list is loaded from
-\fBuser_attr\fR(4). If any default profile is defined in
-\fB/etc/security/policy.conf\fR (see \fBpolicy.conf\fR(4)), the list of default
-profiles are added to the list loaded from \fBuser_attr\fR(4). Matching entries
-in \fBprof_attr\fR(4) provide the authorizations list, and matching entries in
-\fBexec_attr\fR(4) provide the commands list.
+\fBuser_attr\fR(5). If any default profile is defined in
+\fB/etc/security/policy.conf\fR (see \fBpolicy.conf\fR(5)), the list of default
+profiles are added to the list loaded from \fBuser_attr\fR(5). Matching entries
+in \fBprof_attr\fR(5) provide the authorizations list, and matching entries in
+\fBexec_attr\fR(5) provide the commands list.
.SH OPTIONS
.LP
The following options are supported:
@@ -127,6 +127,12 @@ An error occurred.
\fB/etc/security/policy.conf\fR
.SH SEE ALSO
.LP
-\fBauths\fR(1), \fBpfexec\fR(1), \fBroles\fR(1), \fBgetprofattr\fR(3SECDB),
-\fBexec_attr\fR(4), \fBpolicy.conf\fR(4), \fBprof_attr\fR(4),
-\fBuser_attr\fR(4), \fBattributes\fR(5)
+.BR auths (1),
+.BR pfexec (1),
+.BR roles (1),
+.BR getprofattr (3SECDB),
+.BR exec_attr (5),
+.BR policy.conf (5),
+.BR prof_attr (5),
+.BR user_attr (5),
+.BR attributes (7)
diff --git a/usr/src/man/man1/projects.1 b/usr/src/man/man1/projects.1
index 1e26afc1d4..7109227708 100644
--- a/usr/src/man/man1/projects.1
+++ b/usr/src/man/man1/projects.1
@@ -22,7 +22,7 @@ projects \- print project membership of user
.LP
The \fBprojects\fR command prints on standard output the projects to which the
invoking user or an optionally specified user belongs. Each user belongs to
-some set of projects specified in the \fBproject\fR(4) file and possibly in the
+some set of projects specified in the \fBproject\fR(5) file and possibly in the
associated \fBNIS\fR maps and \fBLDAP\fR databases for project information.
.SH OPTIONS
.sp
@@ -138,7 +138,7 @@ Local database containing valid project definitions for this machine.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for a description of the following attributes:
+See \fBattributes\fR(7) for a description of the following attributes:
.sp
.sp
@@ -156,5 +156,7 @@ The invocation is Evolving. The human-readable output is Unstable.
.SH SEE ALSO
.sp
.LP
-\fBgetdefaultproj\fR(3PROJECT), \fBgetprojent\fR(3PROJECT), \fBproject\fR(4),
-\fBattributes\fR(5)
+.BR getdefaultproj (3PROJECT),
+.BR getprojent (3PROJECT),
+.BR project (5),
+.BR attributes (7)
diff --git a/usr/src/man/man1/ps.1 b/usr/src/man/man1/ps.1
index ccce0d658b..43a8b5b0a4 100644
--- a/usr/src/man/man1/ps.1
+++ b/usr/src/man/man1/ps.1
@@ -1126,7 +1126,7 @@ The starting time or date of the process, printed with no blanks.
.ad
.RS 11n
The resident set size of the process, in kilobytes. The \fBrss\fR value
-reported by \fBps\fR is an estimate provided by \fBproc\fR(4) that might
+reported by \fBps\fR is an estimate provided by \fBproc\fR(5) that might
underestimate the actual resident set size. Users who wish to get more accurate
usage information for capacity planning should use \fBpmap\fR(1) \fB-x\fR
instead.
@@ -1272,7 +1272,8 @@ The contents of the \fBCOMMAND\fR field need not be the same due to possible
truncation.
.SH ENVIRONMENT VARIABLES
-See \fBenviron\fR(5) for descriptions of the following environment variables
+.LP
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBps\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, \fBLC_TIME\fR, and \fBNLSPATH\fR.
.sp
@@ -1342,7 +1343,8 @@ process control files
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -1356,15 +1358,26 @@ CSI Enabled (see USAGE)
_
Interface Stability Committed
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
-\fBkill\fR(1), \fBlgrpinfo\fR(1), \fBnice\fR(1), \fBpagesize\fR(1),
-\fBpmap\fR(1), \fBpriocntl\fR(1), \fBps\fR(1b), \fBwho\fR(1), \fBgetty\fR(1M),
-\fBproc\fR(4),
-\fBttysrch\fR(4), \fBattributes\fR(5), \fBenviron\fR(5),
-\fBresource_controls\fR(5), \fBstandards\fR(5), \fBzones\fR(5)
+.LP
+.BR kill (1),
+.BR lgrpinfo (1),
+.BR nice (1),
+.BR pagesize (1),
+.BR pmap (1),
+.BR priocntl (1),
+.BR who (1),
+.BR proc (5),
+.BR ttysrch (5),
+.BR attributes (7),
+.BR environ (7),
+.BR resource_controls (7),
+.BR standards (7),
+.BR zones (7),
+.BR getty (8)
.SH NOTES
Things can change while \fBps\fR is running. The snapshot it gives is true only
for a split-second, and it might not be accurate by the time you see it. Some
diff --git a/usr/src/man/man1/psecflags.1 b/usr/src/man/man1/psecflags.1
index 19ca22755e..3fbc24973f 100644
--- a/usr/src/man/man1/psecflags.1
+++ b/usr/src/man/man1/psecflags.1
@@ -46,7 +46,7 @@ or core files. The effective set is signified by '\fBE\fR', the inheritable
set by '\fBI\fR', the lower set by '\fBL\fR', and the upper set by '\fBU\fR'.
.P
The fourth invocation lists the supported process security-flags, documented
-in \fBsecurity-flags\fR(5).
+in \fBsecurity-flags\fR(7).
.SH "OPTIONS"
The following options are supported:
@@ -188,7 +188,7 @@ The security-flags of any process running in the zones matching the given
.ad
.RS 11n
List all supported process security-flags, described in
-\fBsecurity-flags\fR(5).
+\fBsecurity-flags\fR(7).
.RE
.sp
@@ -277,7 +277,7 @@ An error has occurred.
.SH "ATTRIBUTES"
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -292,7 +292,7 @@ Interface Stability Volatile
.SH "SEE ALSO"
.BR exec (2),
-.BR attributes (5),
-.BR contract (4),
-.BR security-flags (5),
-.BR zones (5)
+.BR attributes (7),
+.BR contract (5),
+.BR security-flags (7),
+.BR zones (7)
diff --git a/usr/src/man/man1/ptree.1 b/usr/src/man/man1/ptree.1
index c812b38612..545ac30f20 100644
--- a/usr/src/man/man1/ptree.1
+++ b/usr/src/man/man1/ptree.1
@@ -35,7 +35,7 @@ All. Print all processes, including children of process 0.
.ad
.RS 11n
Contracts. Print process contract memberships and their associated SMF FMRIs,
-in addition to parent-child relationships. See \fBprocess\fR(4).
+in addition to parent-child relationships. See \fBprocess\fR(5).
This option implies the \fB-a\fR option.
.RE
@@ -59,7 +59,7 @@ characters are used.
Print only processes with an SMF service FMRI matching the argument. The FMRI
may be in truncated form (such as 'console-login'). This includes child
processes even if they are not members of the service contract.
-See \fBprocess\fR(4).
+See \fBprocess\fR(5).
.RE
.sp
@@ -183,7 +183,7 @@ process files
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -200,9 +200,29 @@ Interface Stability See below.
.LP
The human readable output is Unstable. The options are Evolving.
.SH SEE ALSO
-\fBgcore\fR(1), \fBldd\fR(1), \fBpargs\fR(1), \fBpgrep\fR(1), \fBpkill\fR(1),
-\fBplimit\fR(1), \fBpmap\fR(1), \fBpreap\fR(1), \fBproc\fR(1), \fBps\fR(1),
-\fBppgsz\fR(1), \fBpwd\fR(1), \fBrlogin\fR(1), \fBtime\fR(1), \fBtruss\fR(1),
-\fBwait\fR(1), \fBfcntl\fR(2), \fBfstat\fR(2), \fBsetuid\fR(2),
-\fBdlopen\fR(3C), \fBsignal.h\fR(3HEAD), \fBcore\fR(4), \fBproc\fR(4),
-\fBprocess\fR(4), \fBattributes\fR(5), \fBzones\fR(5)
+.BR gcore (1),
+.BR ldd (1),
+.BR pargs (1),
+.BR pgrep (1),
+.BR pkill (1),
+.BR plimit (1),
+.BR pmap (1),
+.BR ppgsz (1),
+.BR preap (1),
+.BR proc (1),
+.BR ps (1),
+.BR pwd (1),
+.BR rlogin (1),
+.BR time (1),
+.BR truss (1),
+.BR wait (1),
+.BR fcntl (2),
+.BR fstat (2),
+.BR setuid (2),
+.BR dlopen (3C),
+.BR signal.h (3HEAD),
+.BR core (5),
+.BR proc (5),
+.BR process (5),
+.BR attributes (7),
+.BR zones (7)
diff --git a/usr/src/man/man1/pvs.1 b/usr/src/man/man1/pvs.1
index b6ea0d52d8..b1892147a8 100644
--- a/usr/src/man/man1/pvs.1
+++ b/usr/src/man/man1/pvs.1
@@ -412,8 +412,12 @@ definitions or version requirements are found.
.RE
.SH SEE ALSO
.LP
-\fBelfdump\fR(1), \fBld\fR(1), \fBldd\fR(1), \fBstrip\fR(1), \fBelf\fR(3ELF),
-\fBattributes\fR(5)
+.BR elfdump (1),
+.BR ld (1),
+.BR ldd (1),
+.BR strip (1),
+.BR elf (3ELF),
+.BR attributes (7)
.sp
.LP
\fILinker and Libraries Guide\fR
diff --git a/usr/src/man/man1/pwd.1 b/usr/src/man/man1/pwd.1
index 47940c4f62..2ec04779d0 100644
--- a/usr/src/man/man1/pwd.1
+++ b/usr/src/man/man1/pwd.1
@@ -66,7 +66,7 @@ Both the Bourne shell, \fBsh\fR(1), and the Korn shells, \fBksh\fR(1) and
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBpwd\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.SH EXIT STATUS
@@ -99,7 +99,7 @@ not be \fB0\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -113,15 +113,20 @@ CSI Enabled
_
Interface Stability Committed
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.sp
.LP
-\fBcd\fR(1), \fBksh\fR(1), \fBksh93\fR(1), \fBsh\fR(1),
-\fBshell_builtins\fR(1), \fBattributes\fR(5), \fBenviron\fR(5),
-\fBstandards\fR(5)
+.BR cd (1),
+.BR ksh (1),
+.BR ksh93 (1),
+.BR sh (1),
+.BR shell_builtins (1),
+.BR attributes (7),
+.BR environ (7),
+.BR standards (7)
.SH DIAGNOSTICS
.sp
.LP
diff --git a/usr/src/man/man1/ranlib.1 b/usr/src/man/man1/ranlib.1
index 734961eb6e..da21957f80 100644
--- a/usr/src/man/man1/ranlib.1
+++ b/usr/src/man/man1/ranlib.1
@@ -31,4 +31,6 @@ maintain Makefiles that are portable across a variety of operating systems.
.SH SEE ALSO
.sp
.LP
-\fBar\fR(1), \fBar.h\fR(3HEAD), \fBattributes\fR(5)
+.BR ar (1),
+.BR ar.h (3HEAD),
+.BR attributes (7)
diff --git a/usr/src/man/man1/rcapstat.1 b/usr/src/man/man1/rcapstat.1
index 875b1f73bf..78136275ee 100644
--- a/usr/src/man/man1/rcapstat.1
+++ b/usr/src/man/man1/rcapstat.1
@@ -16,7 +16,7 @@ rcapstat \- report resource cap enforcement daemon statistics
.sp
.LP
The \fBrcapstat\fR command reports on the projects or zones capped by
-\fBrcapd\fR(1M). Each report contains statistics that pertain to the project or
+\fBrcapd\fR(8). Each report contains statistics that pertain to the project or
zone and paging statistics. Paging refers to the act of relocating portions of
memory, called pages, to or from physical memory. \fBrcapd\fR pages out the
most infrequently used pages.
@@ -40,7 +40,7 @@ The following options are supported:
.ad
.RS 12n
Global statistics. Reports the minimum memory utilization for memory cap
-enforcement (see \fBrcapadm\fR(1M)) and reports current memory utilization as a
+enforcement (see \fBrcapadm\fR(8)) and reports current memory utilization as a
percentage of installed physical memory.
.RE
@@ -145,7 +145,7 @@ does not account for shared pages.
\fB\fBcap\fR\fR
.ad
.RS 11n
-The \fBRSS\fR cap for the project or zone. See \fBrcapd\fR(1M) for information
+The \fBRSS\fR cap for the project or zone. See \fBrcapd\fR(8) for information
about how to specify memory caps.
.RE
@@ -169,7 +169,7 @@ from physical memory. \fBrcapd\fR pages out the most infrequently used pages.
.RS 11n
The average amount of memory that \fBrcapd\fR attempted to page out during
each sample cycle. The rate at which \fBrcapd\fR samples \fBRSS\fR can be set
-with \fBrcapadm\fR(1M).
+with \fBrcapadm\fR(8).
.RE
.sp
@@ -328,7 +328,7 @@ example% \fBrcapstat 5 5\fR
.LP
By inhibiting cap enforcement, either by raising the cap of a project or by
changing the minimum physical memory utilization for cap enforcement (see
-\fBrcapadm\fR(1M)), the resident set can become the working set. The \fBrss\fR
+\fBrcapadm\fR(8)), the resident set can become the working set. The \fBrss\fR
column might stabilize to show the project \fBWSS\fR, as shown in the previous
example. The \fBWSS\fR is the minimum cap value that allows the project's
processes to operate without perpetually incurring page faults.
@@ -367,7 +367,9 @@ Invalid command-line options were specified.
.SH SEE ALSO
.sp
.LP
-\fBrcapadm\fR(1M), \fBrcapd\fR(1M), \fBattributes\fR(5)
+.BR attributes (7),
+.BR rcapadm (8),
+.BR rcapd (8)
.sp
.LP
\fIPhysical Memory Control Using the Resource Capping Daemon\fR in \fISystem
@@ -376,7 +378,7 @@ Administration Guide: Resource Management\fR
.sp
.LP
If the interval specified to \fBrcapstat\fR is shorter than the reporting
-interval specified to \fBrcapd\fR (with \fBrcapadm\fR(1M)), the output for some
+interval specified to \fBrcapd\fR (with \fBrcapadm\fR(8)), the output for some
intervals can be zero. This is because \fBrcapd\fR does not update statistics
more frequently than the interval specified with \fBrcapadm\fR, and this
interval is independent of (and less precise than) the sampling interval used
diff --git a/usr/src/man/man1/rcp.1 b/usr/src/man/man1/rcp.1
index 24b94a27a8..578f50af35 100644
--- a/usr/src/man/man1/rcp.1
+++ b/usr/src/man/man1/rcp.1
@@ -34,8 +34,8 @@ or a local file name (containing no \fB:\fR (colon) characters, or \fB/\fR
(backslash) before any \fB:\fR (colon) characters).
.sp
.LP
-The \fIhostname\fR can be an IPv4 or IPv6 address string. See \fBinet\fR(7P)
-and \fBinet6\fR(7P). Since IPv6 addresses already contain colons, the
+The \fIhostname\fR can be an IPv4 or IPv6 address string. See \fBinet\fR(4P)
+and \fBinet6\fR(4P). Since IPv6 addresses already contain colons, the
\fIhostname\fR should be enclosed in a pair of square brackets when an IPv6
address is used. Otherwise, the first occurrence of a colon can be interpreted
as the separator between \fIhostname\fR and \fIpath\fR. For example,
@@ -66,12 +66,12 @@ The \fBrcp\fR session can be kerberized using any of the following Kerberos
specific options : \fB-a\fR, \fB-PN\fR or \fB-PO\fR, \fB-x\fR, and \fB-k\fR
\fIrealm\fR. Some of these options (\fB-a\fR, \fB-x\fR and \fB-PN\fR or
\fB-PO\fR) can also be specified in the \fB[appdefaults]\fR section of
-\fBkrb5.conf\fR(4). The usage of these options and the expected behavior is
+\fBkrb5.conf\fR(5). The usage of these options and the expected behavior is
discussed in the OPTIONS section below. If Kerberos authentication is used,
authorization to the account is controlled by rules in
-\fBkrb5_auth_rules\fR(5). If this authorization fails, fallback to normal
+\fBkrb5_auth_rules\fR(7). If this authorization fails, fallback to normal
\fBrcp\fR using rhosts occurs only if the \fB-PO\fR option is used explicitly
-on the command line or is specified in \fBkrb5.conf\fR(4). If authorization
+on the command line or is specified in \fBkrb5.conf\fR(5). If authorization
succeeds, remote copy succeeds without any prompting of password. Also notice
that the \fB-PN\fR or \fB-PO\fR, \fB-x\fR, and \fB-k\fR \fIrealm\fR options are
just supersets of the \fB-a\fR option.
@@ -113,7 +113,7 @@ The following options are supported:
.RS 12n
This option explicitly enables Kerberos authentication and trusts the
\fB\&.k5login\fR file for access-control. If the authorization check by
-\fBin.rshd\fR(1M) on the server-side succeeds and if the \fB\&.k5login\fR file
+\fBin.rshd\fR(8) on the server-side succeeds and if the \fB\&.k5login\fR file
permits access, the user is allowed to carry out the \fBrcp\fR transfer.
.RE
@@ -124,7 +124,7 @@ permits access, the user is allowed to carry out the \fBrcp\fR transfer.
.ad
.RS 12n
Causes \fBrcp\fR to obtain tickets for the remote host in \fIrealm\fR instead
-of the remote host's realm as determined by \fBkrb5.conf\fR(4).
+of the remote host's realm as determined by \fBkrb5.conf\fR(5).
.RE
.sp
@@ -134,7 +134,7 @@ of the remote host's realm as determined by \fBkrb5.conf\fR(4).
.ad
.RS 12n
This option explicitly disables Kerberos authentication. It can be used to
-override the \fBautologin\fR variable in \fBkrb5.conf\fR(4).
+override the \fBautologin\fR variable in \fBkrb5.conf\fR(5).
.RE
.sp
@@ -161,7 +161,7 @@ Explicitly requests new (\fB-PN\fR) or old (\fB-PO\fR) version of the Kerberos
"\fBrcmd\fR" protocol. The new protocol avoids many security problems prevalent
in the old one and is regarded much more secure, but is not interoperable with
older (MIT/SEAM) servers. The new protocol is used by default, unless
-explicitly specified using these options or through \fBkrb5.conf\fR(4). If
+explicitly specified using these options or through \fBkrb5.conf\fR(5). If
Kerberos authorization fails when using the old "\fBrcmd\fR" protocol, there is
fallback to regular, non-kerberized \fBrcp\fR. This is not the case when the
new, more secure "\fBrcmd\fR" protocol is used.
@@ -189,11 +189,11 @@ are encrypted.
.RE
.SH USAGE
-See \fBlargefile\fR(5) for the description of the behavior of \fBrcp\fR when
+See \fBlargefile\fR(7) for the description of the behavior of \fBrcp\fR when
encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
.sp
.LP
-The \fBrcp\fR command is IPv6-enabled. See \fBip6\fR(7P). \fBIPv6\fR is not
+The \fBrcp\fR command is IPv6-enabled. See \fBip6\fR(4P). \fBIPv6\fR is not
currently supported with Kerberos V5 authentication.
.sp
.LP
@@ -252,7 +252,7 @@ Kerberos configuration file
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -266,10 +266,22 @@ CSI Enabled
.TE
.SH SEE ALSO
-\fBcpio\fR(1), \fBftp\fR(1), \fBrlogin\fR(1), \fBrsh\fR(1), \fBsetfacl\fR(1),
-\fBtar\fR(1), \fBtar\fR(1), \fBin.rshd\fR(1M), \fBhosts.equiv\fR(4),
-\fBkrb5.conf\fR(4), \fBattributes\fR(5), \fBlargefile\fR(5),
-\fBkrb5_auth_rules\fR(5), \fBinet\fR(7P), \fBinet6\fR(7P), \fBip6\fR(7P)
+.BR cpio (1),
+.BR ftp (1),
+.BR rlogin (1),
+.BR rsh (1),
+.BR setfacl (1),
+.BR tar (1),
+.BR tar (1),
+.BR inet (4P),
+.BR inet6 (4P),
+.BR ip6 (4P),
+.BR hosts.equiv (5),
+.BR krb5.conf (5),
+.BR attributes (7),
+.BR krb5_auth_rules (7),
+.BR largefile (7),
+.BR in.rshd (8)
.SH NOTES
\fBrcp\fR is meant to copy between different hosts. Attempting to \fBrcp\fR a
file onto itself, as with:
diff --git a/usr/src/man/man1/rdist.1 b/usr/src/man/man1/rdist.1
index 82e897ffcf..14698c9bbf 100644
--- a/usr/src/man/man1/rdist.1
+++ b/usr/src/man/man1/rdist.1
@@ -46,17 +46,17 @@ authentication. Encryption of the data being transferred is also possible. The
specific options : \fB-a\fR, \fB-PN\fR or \fB-PO\fR, \fB-x\fR, and \fB-k\fR
\fIrealm\fR. Some of these options (\fB-a\fR, \fB-x\fR, \fB-PN\fR or \fB-PO\fR,
and \fB-f\fR or \fB-F\fR) can also be specified in the \fB[appdefaults]\fR
-section of \fBkrb5.conf\fR(4). The usage of these options and the expected
+section of \fBkrb5.conf\fR(5). The usage of these options and the expected
behavior is discussed in the OPTIONS section below. If Kerberos authentication
is used, authorization to the account is controlled by rules in
-\fBkrb5_auth_rules\fR(5). If this authorization fails, fallback to normal
+\fBkrb5_auth_rules\fR(7). If this authorization fails, fallback to normal
\fBrdist\fR using rhosts occurs only if the \fB-PO\fR option is used explicitly
-on the command line or is specified in \fBkrb5.conf\fR(4). Also notice that the
+on the command line or is specified in \fBkrb5.conf\fR(5). Also notice that the
\fB-PN\fR or \fB-PO\fR, \fB-x\fR, and \fB-k\fR \fIrealm\fR options are just
supersets of the \fB-a\fR option. In order to use the non-secure version of
\fBrdist\fR across machines, each host machine must have a
\fB/etc/host.equiv\fR file, or the user must have an entry in the
-\fB\&.rhosts\fR file in the home directory. See \fBhosts.equiv\fR(4) for more
+\fB\&.rhosts\fR file in the home directory. See \fBhosts.equiv\fR(5) for more
information.
.SH OPTIONS
The following options are supported:
@@ -69,7 +69,7 @@ The following options are supported:
.RS 4n
This option explicitly enables Kerberos authentication and trusts the
\fB\&.k5login\fR file for access-control. If the authorization check by
-\fBin.rshd\fR(1M) on the server-side succeeds and if the \fB\&.k5login\fR file
+\fBin.rshd\fR(8) on the server-side succeeds and if the \fB\&.k5login\fR file
permits access, the user is allowed to carry out the \fBrdist\fR transfer.
.RE
@@ -165,7 +165,7 @@ be found.
.sp .6
.RS 4n
Causes \fBrdist\fR to obtain tickets for the remote host in \fIrealm\fR instead
-of the remote host's realm as determined by \fBkrb5.conf\fR(4).
+of the remote host's realm as determined by \fBkrb5.conf\fR(5).
.RE
.sp
@@ -176,7 +176,7 @@ of the remote host's realm as determined by \fBkrb5.conf\fR(4).
.sp .6
.RS 4n
This option explicitly disables Kerberos authentication. It can be used to
-override the \fBautologin\fR variable in \fBkrb5.conf\fR(4).
+override the \fBautologin\fR variable in \fBkrb5.conf\fR(5).
.RE
.sp
@@ -216,7 +216,7 @@ Explicitly requests new (\fB-PN\fR) or old (\fB-PO\fR) version of the Kerberos
"\fBrcmd\fR" protocol. The new protocol avoids many security problems prevalent
in the old one and is regarded much more secure, but is not interoperable with
older (MIT/SEAM) servers. The new protocol is used by default, unless
-explicitly specified using these options or through \fBkrb5.conf\fR(4). If
+explicitly specified using these options or through \fBkrb5.conf\fR(5). If
Kerberos authorization fails when using the old "\fBrcmd\fR" protocol, there is
fallback to regular, non-kerberized \fBrdist\fR. This is not the case when the
new, more secure "\fBrcmd\fR" protocol is used.
@@ -473,7 +473,7 @@ is the user's home directory on the remote host.
.RE
.SS "IPv6"
-The \fBrdist\fR command is IPv6-enabled. See \fBip6\fR(7P). \fBIPv6\fR is not
+The \fBrdist\fR command is IPv6-enabled. See \fBip6\fR(4P). \fBIPv6\fR is not
currently supported with Kerberos V5 authentication.
.SH EXAMPLES
\fBExample 1 \fRA Sample distfile
@@ -550,9 +550,17 @@ Kerberos configuration file
.RE
.SH SEE ALSO
-\fBcsh\fR(1), \fBed\fR(1), \fBmake\fR(1S), \fBsh\fR(1), \fBin.rshd\fR(1M),
-\fBstat\fR(2), \fBhosts.equiv\fR(4), \fBkrb5.conf\fR(4), \fBattributes\fR(5),
-\fBkrb5_auth_rules\fR(5), \fBip6\fR(7P)
+.BR csh (1),
+.BR ed (1),
+.BR sh (1),
+.BR make (1S),
+.BR stat (2),
+.BR ip6 (4P),
+.BR hosts.equiv (5),
+.BR krb5.conf (5),
+.BR attributes (7),
+.BR krb5_auth_rules (7),
+.BR in.rshd (8)
.SH DIAGNOSTICS
A complaint about mismatch of \fBrdist\fR version numbers might really stem
from some problem with starting your shell, for example, you are in too many
diff --git a/usr/src/man/man1/read.1 b/usr/src/man/man1/read.1
index 09f38ff594..ac9f09b0c6 100644
--- a/usr/src/man/man1/read.1
+++ b/usr/src/man/man1/read.1
@@ -349,7 +349,7 @@ done < input_file\fR
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBread\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.sp
@@ -398,7 +398,7 @@ End-of-file was detected or an error occurred.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.SS "/usr/bin/read, csh, ksh, sh"
.sp
@@ -411,7 +411,7 @@ ATTRIBUTE TYPE ATTRIBUTE VALUE
_
Interface Stability Committed
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SS "ksh93"
@@ -430,5 +430,12 @@ Interface Stability Uncommitted
.SH SEE ALSO
.sp
.LP
-\fBcsh\fR(1), \fBksh\fR(1), \fBksh93\fR(1), \fBline\fR(1), \fBset\fR(1),
-\fBsh\fR(1), \fBattributes\fR(5), \fBenviron\fR(5), \fBstandards\fR(5)
+.BR csh (1),
+.BR ksh (1),
+.BR ksh93 (1),
+.BR line (1),
+.BR set (1),
+.BR sh (1),
+.BR attributes (7),
+.BR environ (7),
+.BR standards (7)
diff --git a/usr/src/man/man1/readonly.1 b/usr/src/man/man1/readonly.1
index 0cadf2bbee..ee9830a56d 100644
--- a/usr/src/man/man1/readonly.1
+++ b/usr/src/man/man1/readonly.1
@@ -197,5 +197,8 @@ An error occurred.
.SH SEE ALSO
.LP
-\fBksh\fR(1), \fBksh93\fR(1), \fBsh\fR(1), \fBtypeset\fR(1),
-\fBattributes\fR(5)
+.BR ksh (1),
+.BR ksh93 (1),
+.BR sh (1),
+.BR typeset (1),
+.BR attributes (7)
diff --git a/usr/src/man/man1/refer.1 b/usr/src/man/man1/refer.1
index 4170b58344..8a996ecbdf 100644
--- a/usr/src/man/man1/refer.1
+++ b/usr/src/man/man1/refer.1
@@ -23,7 +23,7 @@ to the standard output, except for lines between `\fB\&.\|[\fR' and
\fBlookbib\fR(1), and are replaced by information from a bibliographic data
base. The user can avoid the search, override fields from it, or add new
fields. The reference data, from whatever source, is assigned to a set of
-\fBtroff\fR strings. Macro packages such as \fBms\fR(5) print the finished
+\fBtroff\fR strings. Macro packages such as \fBms\fR(7) print the finished
reference text from these strings. A flag is placed in the text at the point
of reference. By default, the references are indicated by numbers.
.sp
@@ -160,6 +160,13 @@ directory of default publication lists and indexes
.SH SEE ALSO
.sp
.LP
-\fBaddbib\fR(1), \fBeqn\fR(1), \fBindxbib\fR(1), \fBlookbib\fR(1),
-\fBnroff\fR(1), \fBroffbib\fR(1), \fBsortbib\fR(1), \fBtbl\fR(1),
-\fBtroff\fR(1), \fBattributes\fR(5)
+.BR addbib (1),
+.BR eqn (1),
+.BR indxbib (1),
+.BR lookbib (1),
+.BR nroff (1),
+.BR roffbib (1),
+.BR sortbib (1),
+.BR tbl (1),
+.BR troff (1),
+.BR attributes (7)
diff --git a/usr/src/man/man1/regcmp.1 b/usr/src/man/man1/regcmp.1
index e016d17456..8a38f9330c 100644
--- a/usr/src/man/man1/regcmp.1
+++ b/usr/src/man/man1/regcmp.1
@@ -88,7 +88,7 @@ applies the regular expression named \fBtelno\fR to \fBline\fR.
.sp
.LP
A general description of the usage of the \fBLC_*\fR environmental variables
-can be found in \fBenviron\fR(5).
+can be found in \fBenviron\fR(7).
.sp
.ne 2
.na
@@ -115,7 +115,7 @@ default form found in the program itself (in most cases, U.S. English).
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -130,4 +130,6 @@ CSI Enabled
.SH SEE ALSO
.sp
.LP
-\fBregcmp\fR(3C), \fBattributes\fR(5), \fBenviron\fR(5)
+.BR regcmp (3C),
+.BR attributes (7),
+.BR environ (7)
diff --git a/usr/src/man/man1/renice.1 b/usr/src/man/man1/renice.1
index 6a2ecd2b8c..78c350aed2 100644
--- a/usr/src/man/man1/renice.1
+++ b/usr/src/man/man1/renice.1
@@ -272,7 +272,7 @@ example% \fBrenice -n 4 -u 8 sas\fR
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBrenice\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.SH EXIT STATUS
@@ -310,7 +310,7 @@ map user names to user \fBID\fRs
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -326,8 +326,12 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBnice\fR(1), \fBpasswd\fR(1), \fBpriocntl\fR(1), \fBattributes\fR(5),
-\fBenviron\fR(5), \fBstandards\fR(5)
+.BR nice (1),
+.BR passwd (1),
+.BR priocntl (1),
+.BR attributes (7),
+.BR environ (7),
+.BR standards (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man1/rev.1 b/usr/src/man/man1/rev.1
index e7f4321a6e..057071128b 100644
--- a/usr/src/man/man1/rev.1
+++ b/usr/src/man/man1/rev.1
@@ -81,7 +81,7 @@ One or more files did not copy.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -99,4 +99,7 @@ Interface Stability Committed
.SH SEE ALSO
.sp
.LP
-\fBcat\fR(1), \fBksh93\fR(1), \fBtail\fR(1), \fBattributes\fR(5)
+.BR cat (1),
+.BR ksh93 (1),
+.BR tail (1),
+.BR attributes (7)
diff --git a/usr/src/man/man1/rlogin.1 b/usr/src/man/man1/rlogin.1
index 720b26666e..6177b4fdec 100644
--- a/usr/src/man/man1/rlogin.1
+++ b/usr/src/man/man1/rlogin.1
@@ -34,12 +34,12 @@ session can be kerberized using any of the following Kerberos specific options:
\fB-A\fR, \fB-PN\fR or \fB-PO\fR, \fB-x\fR, \fB-f\fR or \fB-F\fR, and \fB-k\fR
\fIrealm\fR. Some of these options (\fB-A\fR, \fB-x\fR, \fB-PN\fR or \fB-PO\fR,
and \fB-f\fR or \fB-F\fR) can also be specified in the \fB[appdefaults]\fR
-section of \fBkrb5.conf\fR(4). The usage of these options and the expected
+section of \fBkrb5.conf\fR(5). The usage of these options and the expected
behavior is discussed in the OPTIONS section below. If Kerberos authentication
is used, authorization to the account is controlled through rules in
-\fBkrb5_auth_rules\fR(5). If this authorization fails, fallback to normal
+\fBkrb5_auth_rules\fR(7). If this authorization fails, fallback to normal
\fBrlogin\fR using \fBrhosts\fR occurs only if the \fB-PO\fR option is used
-explicitly on the command line or is specified in \fBkrb5.conf\fR(4). Also
+explicitly on the command line or is specified in \fBkrb5.conf\fR(5). Also
notice that the \fB-PN\fR or \fB-PO\fR, \fB-x\fR, \fB-f\fR or \fB-F\fR, and
\fB-k\fR \fIrealm\fR options are just supersets of the \fB-A\fR option.
.sp
@@ -79,7 +79,7 @@ username.
.ad
.RS 15n
Explicitly enables Kerberos authentication and trusts the \fB\&.k5login\fR file
-for access-control. If the authorization check by \fBin.rlogind\fR(1M) on the
+for access-control. If the authorization check by \fBin.rlogind\fR(8) on the
server-side succeeds and if the \fB\&.k5login\fR file permits access, the user
is allowed to login without supplying a password.
.RE
@@ -141,7 +141,7 @@ This option is mutually exclusive with the \fB-f\fR option.
.ad
.RS 15n
Causes \fBrlogin\fR to obtain tickets for the remote host in \fIrealm\fR
-instead of the remote host's realm as determined by \fBkrb5.conf\fR(4).
+instead of the remote host's realm as determined by \fBkrb5.conf\fR(5).
.RE
.sp
@@ -151,7 +151,7 @@ instead of the remote host's realm as determined by \fBkrb5.conf\fR(4).
.ad
.RS 15n
This option explicitly disables Kerberos authentication. It can be used to
-override the \fBautologin\fR variable in \fBkrb5.conf\fR(4).
+override the \fBautologin\fR variable in \fBkrb5.conf\fR(5).
.RE
.sp
@@ -188,7 +188,7 @@ Kerberos `\fBrcmd\fR' protocol. The new protocol avoids many security problems
prevalent in the old one and is considered much more secure, but is not
interoperable with older (MIT/SEAM) servers. The new protocol is used by
default, unless explicitly specified using these options or by using
-\fBkrb5.conf\fR(4). If Kerberos authorization fails when using the old
+\fBkrb5.conf\fR(5). If Kerberos authorization fails when using the old
`\fBrcmd\fR' protocol, there is fallback to regular, non-kerberized
\fBrlogin\fR. This is not the case when the new, more secure `\fBrcmd\fR'
protocol is used.
@@ -355,9 +355,16 @@ Hosts database.
.RE
.SH SEE ALSO
-\fBrsh\fR(1), \fBstty\fR(1), \fBtty\fR(1), \fBin.rlogind\fR(1M),
-\fBhosts\fR(4), \fBhosts.equiv\fR(4), \fBkrb5.conf\fR(4), \fBnologin\fR(4),
-\fBattributes\fR(5), \fBkrb5_auth_rules\fR(5)
+.BR rsh (1),
+.BR stty (1),
+.BR tty (1),
+.BR hosts (5),
+.BR hosts.equiv (5),
+.BR krb5.conf (5),
+.BR nologin (5),
+.BR attributes (7),
+.BR krb5_auth_rules (7),
+.BR in.rlogind (8)
.SH DIAGNOSTICS
The following message indicates that the machine is in the process of being
shut down and logins have been disabled:
diff --git a/usr/src/man/man1/rm.1 b/usr/src/man/man1/rm.1
index d2e1d19e79..dc8fb7f433 100644
--- a/usr/src/man/man1/rm.1
+++ b/usr/src/man/man1/rm.1
@@ -274,7 +274,7 @@ Specifies the pathname of an empty directory to be removed.
.El
.Sh USAGE
See
-.Xr largefile 5
+.Xr largefile 7
for the description of the behavior of
.Nm rm
and
@@ -368,7 +368,7 @@ and
expand to empty strings.
.Sh ENVIRONMENT VARIABLES
See
-.Xr environ 5
+.Xr environ 7
for descriptions of the following environment variables that affect the
execution of
.Nm rm
@@ -402,7 +402,7 @@ bytes of text data a characters, the behavior of character classes used in the
expression defined for the
.Sy yesexpr .
See
-.Xr locale 5 .
+.Xr locale 7 .
.Sh INTERFACE STABILITY
.Ss "/usr/xpg4/bin/rm"
Committed
@@ -420,10 +420,10 @@ The built-in interfaces are Uncommitted.
.Xr rmdir 2 ,
.Xr rmdir 2 ,
.Xr unlink 2 ,
-.Xr attributes 5 ,
-.Xr environ 5 ,
-.Xr largefile 5 ,
-.Xr standards 5
+.Xr attributes 7 ,
+.Xr environ 7 ,
+.Xr largefile 7 ,
+.Xr standards 7
.Sh NOTES
A
.Fl
diff --git a/usr/src/man/man1/rmformat.1 b/usr/src/man/man1/rmformat.1
index 36168e60ae..846c0dbb00 100644
--- a/usr/src/man/man1/rmformat.1
+++ b/usr/src/man/man1/rmformat.1
@@ -53,7 +53,7 @@ The following options are supported:
.RS 4n
Labels the media with a SUNOS label. A SUNOS volume label name is restricted to
8 characters. For media size greater than 1 TB, an EFI label is created. For
-writing a \fBDOS\fR Volume label, the user should use \fBmkfs_pcfs\fR(1M).
+writing a \fBDOS\fR Volume label, the user should use \fBmkfs_pcfs\fR(8).
.RE
.sp
@@ -238,7 +238,7 @@ cautious in using this option on such devices.
.sp .6
.RS 4n
Performs \fBumount\fR on any file systems and then formats. See
-\fBmount\fR(1M). This option unmounts all the mounted slices and issues a long
+\fBmount\fR(8). This option unmounts all the mounted slices and issues a long
format on the device requested.
.RE
@@ -510,11 +510,24 @@ cards and other removable media devices.
.SH SEE ALSO
.sp
.LP
-\fBcpio\fR(1), \fBeject\fR(1), \fBfdformat\fR(1), \fBtar\fR(1),
-\fBvolcheck\fR(1), \fBvolrmmount\fR(1), \fBformat\fR(1M), \fBmkfs_pcfs\fR(1M),
-\fBmount\fR(1M), \fBnewfs\fR(1M), \fBprtvtoc\fR(1M), \fBrmmount\fR(1M),
-\fBrpc.smserverd\fR(1M), \fBattributes\fR(5), \fBscsa2usb\fR(7D), \fBsd\fR(7D),
-\fBpcfs\fR(7FS), \fBudfs\fR(7FS)
+.BR cpio (1),
+.BR eject (1),
+.BR fdformat (1),
+.BR tar (1),
+.BR volcheck (1),
+.BR volrmmount (1),
+.BR scsa2usb (4D),
+.BR sd (4D),
+.BR pcfs (4FS),
+.BR udfs (4FS),
+.BR attributes (7),
+.BR format (8),
+.BR mkfs_pcfs (8),
+.BR mount (8),
+.BR newfs (8),
+.BR prtvtoc (8),
+.BR rmmount (8),
+.BR rpc.smserverd (8)
.sp
.LP
\fISystem Administration Guide: Basic Administration\fR
@@ -523,12 +536,12 @@ cards and other removable media devices.
.LP
A rewritable media or \fBPCMCIA\fR memory card or \fBPCMCIA\fR ata card
containing a \fBufs\fR file system created on a SPARC-based system (using
-\fBnewfs\fR(1M)) is not identical to a rewritable media or \fBPCMCIA\fR memory
+\fBnewfs\fR(8)) is not identical to a rewritable media or \fBPCMCIA\fR memory
card containing a \fBufs\fR file system created on an x86 based system. Do not
interchange any removable media containing \fBufs\fR between these platforms;
use \fBcpio\fR(1) or \fBtar\fR(1) to transfer files on diskettes or memory
-cards between them. For interchangeable filesystems refer to \fBpcfs\fR(7FS)
-and \fBudfs\fR(7FS).
+cards between them. For interchangeable filesystems refer to \fBpcfs\fR(4FS)
+and \fBudfs\fR(4FS).
.sp
.LP
\fBrmformat\fR might not list all removable devices in virtualization
diff --git a/usr/src/man/man1/rmmount.1 b/usr/src/man/man1/rmmount.1
index dc854826db..fcf2a9c9f3 100644
--- a/usr/src/man/man1/rmmount.1
+++ b/usr/src/man/man1/rmmount.1
@@ -184,7 +184,7 @@ Default mount root.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -200,4 +200,5 @@ Interface Stability Uncommitted
.SH SEE ALSO
.sp
.LP
-\fBeject\fR(1), \fBattributes\fR(5)
+.BR eject (1),
+.BR attributes (7)
diff --git a/usr/src/man/man1/roffbib.1 b/usr/src/man/man1/roffbib.1
index 4ae604559e..d4e13670f1 100644
--- a/usr/src/man/man1/roffbib.1
+++ b/usr/src/man/man1/roffbib.1
@@ -98,7 +98,7 @@ Set register \fIa\fR (one-character) to \fIN\fR. The command-line argument
\fB-rN1\fR will number the references starting at 1.
.sp
Four command-line registers control formatting style of the bibliography, much
-like the number registers of \fBms\fR(5). The flag \fB-rV2\fR will double space
+like the number registers of \fBms\fR(7). The flag \fB-rV2\fR will double space
the bibliography, while \fB-rV1\fR will double space references but single
space annotation paragraphs. The line length can be changed from the default
6.5 inches to 6 inches with the \fB-rL6i\fR argument, and the page offset can
@@ -160,8 +160,14 @@ file of macros used by \fBnroff/troff\fR
.SH SEE ALSO
.sp
.LP
-\fBaddbib\fR(1), \fBindxbib\fR(1), \fBlookbib\fR(1), \fBnroff\fR(1)
-\fBrefer\fR(1), \fBsortbib\fR(1), \fBtroff\fR(1), \fBattributes\fR(5)
+.BR addbib (1),
+.BR indxbib (1),
+.BR lookbib (1),
+.BR nroff (1)
+.BR refer (1),
+.BR sortbib (1),
+.BR troff (1),
+.BR attributes (7)
.SH BUGS
.sp
.LP
diff --git a/usr/src/man/man1/roles.1 b/usr/src/man/man1/roles.1
index fa732a8435..069565f3f7 100644
--- a/usr/src/man/man1/roles.1
+++ b/usr/src/man/man1/roles.1
@@ -21,8 +21,8 @@ correspond to a functional responsibility rather than to an actual person
.sp
.LP
Each user may have zero or more roles. Roles have most of the attributes of
-normal users and are identified like normal users in \fBpasswd\fR(4) and
-\fBshadow\fR(4). Each role must have an entry in the \fBuser_attr\fR(4) file
+normal users and are identified like normal users in \fBpasswd\fR(5) and
+\fBshadow\fR(5). Each role must have an entry in the \fBuser_attr\fR(5) file
that identifies it as a role. Roles can have their own authorizations and
profiles. See \fBauths\fR(1) and \fBprofiles\fR(1).
.sp
@@ -35,7 +35,7 @@ the role.
.sp
.LP
A role may not assume itself or any other role. Roles are not hierarchical.
-However, rights profiles (see \fBprof_attr\fR(4)) are hierarchical and can be
+However, rights profiles (see \fBprof_attr\fR(5)) are hierarchical and can be
used to achieve the same effect as hierarchical roles.
.sp
.LP
@@ -43,10 +43,10 @@ Roles must have valid passwords and one of the shells that interprets profiles:
either \fBpfcsh\fR, \fBpfksh\fR, or \fBpfsh\fR. See \fBpfexec\fR(1).
.sp
.LP
-Role assumption may be performed using \fBsu\fR(1M), \fBrlogin\fR(1), or some
+Role assumption may be performed using \fBsu\fR(8), \fBrlogin\fR(1), or some
other service that supports the \fBPAM_RUSER\fR variable. Successful assumption
requires knowledge of the role's password and membership in the role. Role
-assignments are specified in \fBuser_attr\fR(4).
+assignments are specified in \fBuser_attr\fR(5).
.SH EXAMPLES
.LP
\fBExample 1\fR Sample output
@@ -97,6 +97,14 @@ An error occurred.
\fB/etc/security/prof_attr\fR
.SH SEE ALSO
.LP
-\fBauths\fR(1), \fBpfexec\fR(1), \fBprofiles\fR(1), \fBrlogin\fR(1),
-\fBsu\fR(1M), \fBauth_attr\fR(4), \fBpasswd\fR(4),
-\fBprof_attr\fR(4), \fBshadow\fR(4), \fBuser_attr\fR(4), \fBattributes\fR(5)
+.BR auths (1),
+.BR pfexec (1),
+.BR profiles (1),
+.BR rlogin (1),
+.BR auth_attr (5),
+.BR passwd (5),
+.BR prof_attr (5),
+.BR shadow (5),
+.BR user_attr (5),
+.BR attributes (7),
+.BR su (8)
diff --git a/usr/src/man/man1/rpcgen.1 b/usr/src/man/man1/rpcgen.1
index f3646b56f9..b4c40978b5 100644
--- a/usr/src/man/man1/rpcgen.1
+++ b/usr/src/man/man1/rpcgen.1
@@ -292,7 +292,7 @@ optimization. The default \fIsize\fR is 5.
\fB\fB-I\fR\fR
.ad
.RS 18n
-Compiles support for \fBinetd\fR(1M) in the server side stubs. Such servers can
+Compiles support for \fBinetd\fR(8) in the server side stubs. Such servers can
be self-started or can be started by \fBinetd\fR. When the server is
self-started, it backgrounds itself by default. A special define symbol
\fBRPC_SVC_FG\fR can be used to run the server process in foreground, or the
@@ -321,7 +321,7 @@ interval can be changed using the \fB-K\fR flag. To create a server that exits
immediately upon servicing a request, use \fB-K\fR \fB0\fR. To create a server
that never exits, the appropriate argument is \fB-K\fR \fB\(mi1\fR\&.
.sp
-When monitoring for a server, some portmonitors, like \fBlisten\fR(1M),
+When monitoring for a server, some portmonitors, like \fBlisten\fR(8),
\fBalways\fR spawn a new process in response to a service request. If it is
known that a server are used with such a monitor, the server should exit
immediately on completion. For such servers, \fBrpcgen\fR should be used with
@@ -589,9 +589,14 @@ An error occurred.
.SH SEE ALSO
.sp
.LP
-\fBinetd\fR(1M), \fBlisten\fR(1M), \fBrpc\fR(3NSL), \fBrpc_control\fR(3NSL),
-\fBrpc_svc_calls\fR(3NSL), \fBsyslog\fR(3C), \fBnetconfig\fR(4),
-\fBattributes\fR(5)
+.BR syslog (3C),
+.BR rpc (3NSL),
+.BR rpc_control (3NSL),
+.BR rpc_svc_calls (3NSL),
+.BR netconfig (5),
+.BR attributes (7),
+.BR inetd (8),
+.BR listen (8)
.sp
.LP
The \fBrpcgen\fR chapter in the \fIONC+ Developer\&'s Guide\fR manual.
diff --git a/usr/src/man/man1/rsh.1 b/usr/src/man/man1/rsh.1
index e98a236241..01c5bf309e 100644
--- a/usr/src/man/man1/rsh.1
+++ b/usr/src/man/man1/rsh.1
@@ -52,12 +52,12 @@ authentication. Encryption of the network session traffic is also possible. The
specific options: \fB-a\fR, \fB-PN\fR or \fB-PO\fR, \fB-x\fR, \fB-f\fR or
\fB-F\fR, and \fB-k\fR \fIrealm\fR. Some of these options (\fB-a\fR, \fB-x\fR,
\fB-PN\fR or \fB-PO\fR, and \fB-f\fR or \fB-F\fR) can also be specified in the
-\fB[appdefaults]\fR section of \fBkrb5.conf\fR(4). The usage of these options
+\fB[appdefaults]\fR section of \fBkrb5.conf\fR(5). The usage of these options
and the expected behavior is discussed in the OPTIONS section below. If
Kerberos authentication is used, authorization to the account is controlled by
-rules in \fBkrb5_auth_rules\fR(5). If this authorization fails, fallback to
+rules in \fBkrb5_auth_rules\fR(7). If this authorization fails, fallback to
normal \fBrsh\fR using \fBrhosts\fR occurs only if the \fB-PO\fR option is used
-explicitly on the command line or is specified in \fBkrb5.conf\fR(4). Also, the
+explicitly on the command line or is specified in \fBkrb5.conf\fR(5). Also, the
\fB-PN\fR or \fB-PO\fR, \fB-x\fR, \fB-f\fR or \fB-F\fR, and \fB-k\fR
\fIrealm\fR options are just supersets of the \fB-a\fR option.
.sp
@@ -91,7 +91,7 @@ The following options are supported:
.ad
.RS 15n
Explicitly enable Kerberos authentication and trusts the \fB\&.k5login\fR file
-for access-control. If the authorization check by \fBin.rshd\fR(1M) on the
+for access-control. If the authorization check by \fBin.rshd\fR(8) on the
server-side succeeds and if the \fB\&.k5login\fR file permits access, the user
is allowed to carry out the command.
.RE
@@ -135,7 +135,7 @@ the \fB-f\fR option.
.ad
.RS 15n
Causes \fBrsh\fR to obtain tickets for the remote host in \fIrealm\fR instead
-of the remote host's realm as determined by \fBkrb5.conf\fR(4).
+of the remote host's realm as determined by \fBkrb5.conf\fR(5).
.RE
.sp
@@ -145,7 +145,7 @@ of the remote host's realm as determined by \fBkrb5.conf\fR(4).
.ad
.RS 15n
This option explicitly disables Kerberos authentication. It can be used to
-override the \fBautologin\fR variable in \fBkrb5.conf\fR(4).
+override the \fBautologin\fR variable in \fBkrb5.conf\fR(5).
.RE
.sp
@@ -187,7 +187,7 @@ Explicitly request new (\fB-PN\fR) or old (\fB-PO\fR) version of the Kerberos
"\fBrcmd\fR" protocol. The new protocol avoids many security problems prevalent
in the old one and is regarded much more secure, but is not interoperable with
older (MIT/SEAM) servers. The new protocol is used by default, unless
-explicitly specified using these options or through \fBkrb5.conf\fR(4). If
+explicitly specified using these options or through \fBkrb5.conf\fR(5). If
Kerberos authorization fails when using the old "\fBrcmd\fR" protocol, there is
fallback to regular, non-kerberized \fBrsh\fR. This is not the case when the
new, more secure "\fBrcmd\fR" protocol is used.
@@ -218,12 +218,12 @@ The command to be executed on the specified \fIhostname\fR.
.RE
.SH USAGE
-See \fBlargefile\fR(5) for the description of the behavior of \fBrsh\fR and
+See \fBlargefile\fR(7) for the description of the behavior of \fBrsh\fR and
\fBremsh\fR when encountering files greater than or equal to 2 Gbyte ( 2^31
bytes).
.sp
.LP
-The \fBrsh\fR and \fBremsh\fR commands are IPv6-enabled. See \fBip6\fR(7P).
+The \fBrsh\fR and \fBremsh\fR commands are IPv6-enabled. See \fBip6\fR(4P).
\fBIPv6\fR is not currently supported with Kerberos V5 authentication.
.sp
.LP
@@ -381,7 +381,7 @@ Kerberos configuration file
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -395,10 +395,18 @@ CSI Enabled
.TE
.SH SEE ALSO
-\fBrlogin\fR(1), \fBssh\fR(1), \fBtelnet\fR(1), \fBvi\fR(1),
-\fBin.rshd\fR(1M), \fBhosts\fR(4), \fBhosts.equiv\fR(4), \fBkrb5.conf\fR(4),
-\fBattributes\fR(5), \fBkrb5_auth_rules\fR(5), \fBlargefile\fR(5),
-\fBip6\fR(7P)
+.BR rlogin (1),
+.BR ssh (1),
+.BR telnet (1),
+.BR vi (1),
+.BR ip6 (4P),
+.BR hosts (5),
+.BR hosts.equiv (5),
+.BR krb5.conf (5),
+.BR attributes (7),
+.BR krb5_auth_rules (7),
+.BR largefile (7),
+.BR in.rshd (8)
.SH NOTES
When a system is listed in \fBhosts.equiv\fR, its security must be as good as
local security. One insecure system listed in \fBhosts.equiv\fR can compromise
diff --git a/usr/src/man/man1/runat.1 b/usr/src/man/man1/runat.1
index cd644410d6..93b5e404e6 100644
--- a/usr/src/man/man1/runat.1
+++ b/usr/src/man/man1/runat.1
@@ -58,7 +58,7 @@ attributes.
.SH USAGE
.sp
.LP
-See \fBfsattr\fR(5) for a detailed description of extended file attributes.
+See \fBfsattr\fR(7) for a detailed description of extended file attributes.
.sp
.LP
The process context created by the \fBrunat\fR command has its current working
@@ -295,7 +295,7 @@ execute the provided command.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -313,7 +313,9 @@ Interface Stability Evolving
.SH SEE ALSO
.sp
.LP
-\fBopen\fR(2), \fBattributes\fR(5), \fBfsattr\fR(5)
+.BR open (2),
+.BR attributes (7),
+.BR fsattr (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man1/rup.1 b/usr/src/man/man1/rup.1
index d8c7b1c883..bfea96f15f 100644
--- a/usr/src/man/man1/rup.1
+++ b/usr/src/man/man1/rup.1
@@ -65,7 +65,8 @@ Sort the display by up time.
.SH SEE ALSO
.LP
-\fBruptime\fR(1), \fBattributes\fR(5)
+.BR ruptime (1),
+.BR attributes (7)
.SH BUGS
.LP
Broadcasting does not work through gateways.
diff --git a/usr/src/man/man1/ruptime.1 b/usr/src/man/man1/ruptime.1
index 0ae939308c..993774bb4e 100644
--- a/usr/src/man/man1/ruptime.1
+++ b/usr/src/man/man1/ruptime.1
@@ -101,4 +101,7 @@ data files
.SH SEE ALSO
.sp
.LP
-\fBuptime\fR(1), \fBrwho\fR(1), \fBin.rwhod\fR(1M), \fBattributes\fR(5)
+.BR rwho (1),
+.BR uptime (1),
+.BR attributes (7),
+.BR in.rwhod (8)
diff --git a/usr/src/man/man1/rusers.1 b/usr/src/man/man1/rusers.1
index acc7a6d958..1bc054428c 100644
--- a/usr/src/man/man1/rusers.1
+++ b/usr/src/man/man1/rusers.1
@@ -39,7 +39,7 @@ idle, the \fIidle_time\fR is not displayed.
.sp
.LP
A remote host will only respond if it is running the \fBrusersd\fR daemon,
-which may be started up from \fBinetd\fR(1M) or \fBlisten\fR(1M).
+which may be started up from \fBinetd\fR(8) or \fBlisten\fR(8).
.sp
.LP
In the absence of a name service, such as LDAP or NIS, \fBrusers\fR displays
@@ -93,5 +93,9 @@ Sort by number of users.
.SH SEE ALSO
.sp
.LP
-\fBwho\fR(1), \fBinetd\fR(1M), \fBlisten\fR(1M), \fBpmadm\fR(1M),
-\fBsacadm\fR(1M), \fBattributes\fR(5)
+.BR who (1),
+.BR attributes (7),
+.BR inetd (8),
+.BR listen (8),
+.BR pmadm (8),
+.BR sacadm (8)
diff --git a/usr/src/man/man1/rwho.1 b/usr/src/man/man1/rwho.1
index b5cb2ecb51..58105cb2ec 100644
--- a/usr/src/man/man1/rwho.1
+++ b/usr/src/man/man1/rwho.1
@@ -44,8 +44,11 @@ information about other machines
.SH SEE ALSO
.LP
-\fBfinger\fR(1), \fBruptime\fR(1), \fBwho\fR(1), \fBin.rwhod\fR(1M),
-\fBattributes\fR(5)
+.BR finger (1),
+.BR ruptime (1),
+.BR who (1),
+.BR attributes (7),
+.BR in.rwhod (8)
.SH NOTES
.LP
\fBrwho\fR does not work through gateways.
@@ -60,5 +63,5 @@ hosts on the local net increases. For large networks, the cost becomes
prohibitive.
.sp
.LP
-The \fBrwho\fR service daemon, \fBin.rwhod\fR(1M), must be enabled for this
+The \fBrwho\fR service daemon, \fBin.rwhod\fR(8), must be enabled for this
command to return useful results.
diff --git a/usr/src/man/man1/sar.1 b/usr/src/man/man1/sar.1
index 9318d3d394..8b31978d60 100644
--- a/usr/src/man/man1/sar.1
+++ b/usr/src/man/man1/sar.1
@@ -201,8 +201,8 @@ average wait time in milliseconds.
average service time in milliseconds.
.RE
-For more general system statistics, use \fBiostat\fR(1M), \fBsar\fR(1M), or
-\fBvmstat\fR(1M).
+For more general system statistics, use \fBiostat\fR(8), \fBsar\fR(8), or
+\fBvmstat\fR(8).
.sp
See \fISystem Administration Guide: Advanced Administration\fR for naming
conventions for disks.
@@ -671,8 +671,12 @@ daily data file, where \fIdd\fR are digits representing the day of the month
.SH SEE ALSO
.LP
-\fBiostat\fR(1M), \fBsar\fR(1M), \fBvmstat\fR(1M), \fBexec\fR(2),
-\fBfork\fR(2), \fBattributes\fR(5)
+.BR exec (2),
+.BR fork (2),
+.BR attributes (7),
+.BR iostat (8),
+.BR sar (8),
+.BR vmstat (8)
.sp
.LP
\fISystem Administration Guide: Advanced Administration\fR
diff --git a/usr/src/man/man1/script.1 b/usr/src/man/man1/script.1
index 8723c720cf..8e9fdf4438 100644
--- a/usr/src/man/man1/script.1
+++ b/usr/src/man/man1/script.1
@@ -44,7 +44,7 @@ including prompts.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -60,7 +60,7 @@ CSI Enabled
.SH SEE ALSO
.sp
.LP
-\fBattributes\fR(5)
+.BR attributes (7)
.SH WARNINGS
.sp
.LP
diff --git a/usr/src/man/man1/sdiff.1 b/usr/src/man/man1/sdiff.1
index 9212c1ecf4..be395a6614 100644
--- a/usr/src/man/man1/sdiff.1
+++ b/usr/src/man/man1/sdiff.1
@@ -151,7 +151,7 @@ length is 130 characters.
.SH USAGE
.sp
.LP
-See \fBlargefile\fR(5) for the description of the behavior of \fBsdiff\fR when
+See \fBlargefile\fR(7) for the description of the behavior of \fBsdiff\fR when
encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
.SH EXAMPLES
.LP
@@ -178,7 +178,7 @@ d d
.LP
If any of the \fBLC_*\fR variables ( \fBLC_CTYPE\fR, \fBLC_MESSAGES\fR,
\fBLC_TIME\fR, \fBLC_COLLATE\fR, \fBLC_NUMERIC\fR, and \fBLC_MONETARY\fR ) (see
-\fBenviron\fR(5)) are not set in the environment, the operational behavior of
+\fBenviron\fR(7)) are not set in the environment, the operational behavior of
\fBsdiff\fR for each corresponding locale category is determined by the value
of the \fBLANG\fR environment variable. If \fBLC_ALL\fR is set, its contents
are used to override both the \fBLANG\fR and the other \fBLC_*\fR variables.
@@ -198,7 +198,7 @@ valid characters for that locale.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -214,5 +214,8 @@ CSI Enabled
.SH SEE ALSO
.sp
.LP
-\fBdiff\fR(1), \fBed\fR(1), \fBattributes\fR(5), \fBenviron\fR(5),
-\fBlargefile\fR(5)
+.BR diff (1),
+.BR ed (1),
+.BR attributes (7),
+.BR environ (7),
+.BR largefile (7)
diff --git a/usr/src/man/man1/sed.1 b/usr/src/man/man1/sed.1
index f581279fc6..3eca2b5418 100644
--- a/usr/src/man/man1/sed.1
+++ b/usr/src/man/man1/sed.1
@@ -71,7 +71,7 @@ The following options are available:
Interpret regular expressions as extended (modern) regular expressions
rather than basic regular expressions (BRE's).
The
-\fBregex\fP(5)
+\fBregex\fP(7)
manual page fully describes both formats.
.TP
\fB\-a\fP
@@ -244,7 +244,7 @@ function.
The regular expressions used in
\fB,\fP
by default, are basic regular expressions (BREs, see
-\fBregex\fP(5)
+\fBregex\fP(7)
for more information), but extended (modern) regular expressions can be used
instead if the
\fB\-E\fP
@@ -511,7 +511,7 @@ where
``#''
is a digit, is replaced by the text matched
by the corresponding backreference expression (see
-\fBregex\fP(5)) .
+\fBregex\fP(7)) .
A line can be split by substituting a newline character into it.
To specify a newline character in the replacement string, precede it with
@@ -624,14 +624,14 @@ and
environment variables affect the execution of
\fBsed\fP
as described in
-\fBenviron\fP(5).
+\fBenviron\fP(7).
.SH EXIT STATUS
The \fBsed\fP utility exits 0 on success, and >0 if an error occurs.
.SH SEE ALSO
\fBawk\fP(1),
\fBed\fP(1),
\fBgrep\fP(1),
-\fBregex\fP(5)
+\fBregex\fP(7)
.SH STANDARDS
The
\fBsed\fP
diff --git a/usr/src/man/man1/sendmail-mailq.1 b/usr/src/man/man1/sendmail-mailq.1
index e750117ec6..9775dcd1d0 100644
--- a/usr/src/man/man1/sendmail-mailq.1
+++ b/usr/src/man/man1/sendmail-mailq.1
@@ -32,7 +32,7 @@ it checks for the authorization attribute, \fBsolaris.mail.mailq\fR. If the
check for the invoking user succeeds, \fBsendmail\fR \fB-bp\fR is executed with
the remaining argument vector. Otherwise, an error message is printed. This
authorization attribute is by default enabled for all users. It can be disabled
-by modifying the Basic Solaris User entry in \fBprof_attr\fR(4).
+by modifying the Basic Solaris User entry in \fBprof_attr\fR(5).
.SH OPTIONS
.sp
.LP
@@ -43,7 +43,7 @@ The following options are supported:
\fB\fB-Ac\fR\fR
.ad
.RS 17n
-Like \fBsendmail\fR(1M), this flag tells \fBmailq\fR to use \fBsubmit.cf\fR
+Like \fBsendmail\fR(8), this flag tells \fBmailq\fR to use \fBsubmit.cf\fR
rather than \fBsendmail.cf\fR even if the operation mode does not
indicate an initial mail submission. This will result in the client queue
\fB/var/spool/clientmqueue\fR being displayed rather than the default server
@@ -178,4 +178,6 @@ client queue
.SH SEE ALSO
.sp
.LP
-\fBsendmail\fR(1M), \fBprof_attr\fR(4), \fBattributes\fR(5)
+.BR prof_attr (5),
+.BR attributes (7),
+.BR sendmail (8)
diff --git a/usr/src/man/man1/set.1 b/usr/src/man/man1/set.1
index 5a0bccaaa2..e2fc43d31e 100644
--- a/usr/src/man/man1/set.1
+++ b/usr/src/man/man1/set.1
@@ -271,7 +271,7 @@ changes.
.LP
The environment variables \fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, \fBLC_TIME\fR,
\fBLC_COLLATE\fR, \fBLC_NUMERIC\fR, and \fBLC_MONETARY\fR take immediate effect
-when changed within the C shell. See \fBenviron\fR(5) for descriptions of these
+when changed within the C shell. See \fBenviron\fR(7) for descriptions of these
environment variables.
.sp
.LP
@@ -1449,5 +1449,11 @@ setenv PATH "/bin:/usr/bin:/usr/sbin:usr/ucb/bin"
.SH SEE ALSO
.LP
-\fBcsh\fR(1), \fBksh\fR(1), \fBksh93\fR(1), \fBread\fR(1), \fBsh\fR(1),
-\fBtypeset\fR(1), \fBattributes\fR(5), \fBenviron\fR(5)
+.BR csh (1),
+.BR ksh (1),
+.BR ksh93 (1),
+.BR read (1),
+.BR sh (1),
+.BR typeset (1),
+.BR attributes (7),
+.BR environ (7)
diff --git a/usr/src/man/man1/setfacl.1 b/usr/src/man/man1/setfacl.1
index 526e2c0321..ae18bffb13 100644
--- a/usr/src/man/man1/setfacl.1
+++ b/usr/src/man/man1/setfacl.1
@@ -30,7 +30,7 @@ directories.
.sp
.LP
The \fBsetfacl\fR utility can only manipulate POSIX-draft \fBACL\fRs. See
-\fBacl\fR(5) for a description of the difference between the older POSIX-draft
+\fBacl\fR(7) for a description of the difference between the older POSIX-draft
\fBACL\fRs and the newer NFSv4 \fBACL\fRs. The \fBchmod\fR(1) utility can
be used to manipulate \fBACL\fRs on all types of file system.
.sp
@@ -370,6 +370,12 @@ group file
.RE
.SH SEE ALSO
-\fBchmod\fR(1), \fBgetfacl\fR(1), \fBumask\fR(1), \fBaclcheck\fR(3SEC),
-\fBaclsort\fR(3SEC), \fBgroup\fR(4), \fBpasswd\fR(4), \fBacl\fR(5),
-\fBattributes\fR(5)
+.BR chmod (1),
+.BR getfacl (1),
+.BR umask (1),
+.BR aclcheck (3SEC),
+.BR aclsort (3SEC),
+.BR group (5),
+.BR passwd (5),
+.BR acl (7),
+.BR attributes (7)
diff --git a/usr/src/man/man1/setlabel.1 b/usr/src/man/man1/setlabel.1
index 30faacbbfe..ecd4b67413 100644
--- a/usr/src/man/man1/setlabel.1
+++ b/usr/src/man/man1/setlabel.1
@@ -162,7 +162,7 @@ example% \fBsetlabel -- -A \fIsomefile\fR\fR
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -178,7 +178,9 @@ Interface Stability Committed
.SH SEE ALSO
.sp
.LP
-\fBsetflabel\fR(3TSOL), \fBlabel_encodings\fR(4), \fBattributes\fR(5)
+.BR setflabel (3TSOL),
+.BR label_encodings (5),
+.BR attributes (7)
.SH NOTES
.sp
.LP
@@ -188,4 +190,4 @@ is configured with Trusted Extensions.
.LP
This implementation of setting a label is meaningful for the Defense
Intelligence Agency (DIA) Mandatory Access Control (MAC) policy. For more
-information, see \fBlabel_encodings\fR(4).
+information, see \fBlabel_encodings\fR(5).
diff --git a/usr/src/man/man1/setpgrp.1 b/usr/src/man/man1/setpgrp.1
index 7528f8a7de..5ac5681fcc 100644
--- a/usr/src/man/man1/setpgrp.1
+++ b/usr/src/man/man1/setpgrp.1
@@ -62,4 +62,6 @@ Otherwise, the exit status will be that of \fIcommand\fR.
.SH SEE ALSO
.sp
.LP
-\fBexec\fR(2), \fBsetpgrp\fR(2), \fBattributes\fR(5)
+.BR exec (2),
+.BR setpgrp (2),
+.BR attributes (7)
diff --git a/usr/src/man/man1/shcomp.1 b/usr/src/man/man1/shcomp.1
index 6b3d85fee1..189c90ec68 100644
--- a/usr/src/man/man1/shcomp.1
+++ b/usr/src/man/man1/shcomp.1
@@ -127,7 +127,7 @@ An error occurred.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -149,4 +149,5 @@ shell code format is Private. The output of the \fB-D\fR option is Volatile.
.SH SEE ALSO
.sp
.LP
-\fBksh93\fR(1), \fBattributes\fR(5)
+.BR ksh93 (1),
+.BR attributes (7)
diff --git a/usr/src/man/man1/shell_builtins.1 b/usr/src/man/man1/shell_builtins.1
index a5121797a7..17541aef2d 100644
--- a/usr/src/man/man1/shell_builtins.1
+++ b/usr/src/man/man1/shell_builtins.1
@@ -307,15 +307,56 @@ status of the last command executed.
.SH SEE ALSO
.sp
.LP
-\fBIntro\fR(1), \fBalias\fR(1), \fBbreak\fR(1), \fBbuiltin\fR(1), \fBcd\fR(1),
-\fBchmod\fR(1), \fBcsh\fR(1), \fBdisown\fR(1), \fBecho\fR(1), \fBexec\fR(1),
-\fBexit\fR(1), \fBfind\fR(1), \fBgetoptcvt\fR(1), \fBgetopts\fR(1),
-\fBglob\fR(1), \fBhash\fR(1), \fBhistory\fR(1), \fBjobs\fR(1), \fBkill\fR(1),
-\fBksh\fR(1), \fBksh93\fR(1), \fBlet\fR(1), \fBlimit\fR(1), \fBlogin\fR(1),
-\fBlogout\fR(1), \fBnewgrp\fR(1), \fBnice\fR(1), \fBnohup\fR(1),
-\fBprint\fR(1), \fBprintf\fR(1), \fBpwd\fR(1), \fBread\fR(1),
-\fBreadonly\fR(1), \fBset\fR(1), \fBsh\fR(1), \fBshift\fR(1), \fBsleep\fR(1),
-\fBsuspend\fR(1), \fBtest\fR(1), \fBtest\fR(1B), \fBtime\fR(1),
-\fBtimes\fR(1), \fBtrap\fR(1), \fBtypeset\fR(1), \fBumask\fR(1), \fBwait\fR(1),
-\fBchdir\fR(2), \fBchmod\fR(2), \fBcreat\fR(2), \fBumask\fR(2),
-\fBgetopt\fR(3C), \fBprofile\fR(4), \fBenviron\fR(5)
+.BR Intro (1),
+.BR alias (1),
+.BR break (1),
+.BR builtin (1),
+.BR cd (1),
+.BR chmod (1),
+.BR csh (1),
+.BR disown (1),
+.BR echo (1),
+.BR exec (1),
+.BR exit (1),
+.BR find (1),
+.BR getoptcvt (1),
+.BR getopts (1),
+.BR glob (1),
+.BR hash (1),
+.BR history (1),
+.BR jobs (1),
+.BR kill (1),
+.BR ksh (1),
+.BR ksh93 (1),
+.BR let (1),
+.BR limit (1),
+.BR login (1),
+.BR logout (1),
+.BR newgrp (1),
+.BR nice (1),
+.BR nohup (1),
+.BR print (1),
+.BR printf (1),
+.BR pwd (1),
+.BR read (1),
+.BR readonly (1),
+.BR set (1),
+.BR sh (1),
+.BR shift (1),
+.BR sleep (1),
+.BR suspend (1),
+.BR test (1),
+.BR time (1),
+.BR times (1),
+.BR trap (1),
+.BR typeset (1),
+.BR umask (1),
+.BR wait (1),
+.BR test (1B),
+.BR chdir (2),
+.BR chmod (2),
+.BR creat (2),
+.BR umask (2),
+.BR getopt (3C),
+.BR profile (5),
+.BR environ (7)
diff --git a/usr/src/man/man1/shift.1 b/usr/src/man/man1/shift.1
index 21406a4f33..6d864efc6c 100644
--- a/usr/src/man/man1/shift.1
+++ b/usr/src/man/man1/shift.1
@@ -150,4 +150,8 @@ field splitting and file name generation are not performed.
.SH SEE ALSO
.sp
.LP
-\fBcsh\fR(1), \fBksh\fR(1), \fBksh93\fR(1), \fBsh\fR(1), \fBattributes\fR(5)
+.BR csh (1),
+.BR ksh (1),
+.BR ksh93 (1),
+.BR sh (1),
+.BR attributes (7)
diff --git a/usr/src/man/man1/size.1 b/usr/src/man/man1/size.1
index ce414e402d..13d4320e62 100644
--- a/usr/src/man/man1/size.1
+++ b/usr/src/man/man1/size.1
@@ -151,8 +151,11 @@ example% \fBsize -F \fIfilename\fR\fR
.SH SEE ALSO
.sp
.LP
-\fBas\fR(1), \fBld\fR(1), \fBar.h\fR(3HEAD), \fBa.out\fR(4),
-\fBattributes\fR(5)
+.BR as (1),
+.BR ld (1),
+.BR ar.h (3HEAD),
+.BR a.out (5),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man1/sleep.1 b/usr/src/man/man1/sleep.1
index 3ee7898bfa..3efde97fee 100644
--- a/usr/src/man/man1/sleep.1
+++ b/usr/src/man/man1/sleep.1
@@ -156,7 +156,7 @@ example% sleep 0x1.0000000000000000000000000000p-01
.Ed
.Sh ENVIRONMENT VARIABLES
See
-.Xr environ 5
+.Xr environ 7
for descriptions of the following environment variables
that affect the execution of
.Nm :
@@ -173,4 +173,4 @@ and
.Xr alarm 2 ,
.Xr nanosleep 3C ,
.Xr sleep 3C ,
-.Xr environ 5
+.Xr environ 7
diff --git a/usr/src/man/man1/smbutil.1 b/usr/src/man/man1/smbutil.1
index 06a77c55b2..e98e4b9259 100644
--- a/usr/src/man/man1/smbutil.1
+++ b/usr/src/man/man1/smbutil.1
@@ -123,7 +123,7 @@ Specifies persistent password information to be used for a CIFS server user
account. When you specify this information, mounts can be done without a
password prompt in non-Kerberos configurations. Kerberos sites should use
Kerberos automatically, not prompt for a password. If a default domain is
-available in SMF or \fBnsmbrc\fR(4), the domain can be omitted. If a user name
+available in SMF or \fBnsmbrc\fR(5), the domain can be omitted. If a user name
is not specified, the Solaris user account name is used.
.sp
Use the \fB-c\fR to check whether a persistent password is set for the
@@ -145,7 +145,7 @@ Erases the persistent passwords for the user running the command.
.sp
The user name and domain name portions of the name are optional. If these names
are not specified, the user name and domain name values are taken from the
-properties set in your environment. See the \fBnsmbrc\fR(4) manual page.
+properties set in your environment. See the \fBnsmbrc\fR(5) manual page.
.sp
If you stored your password for a specific server, specify the server name in
place of the domain name.
@@ -436,7 +436,7 @@ connection.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -454,7 +454,10 @@ Interface Stability See below.
The output is Uncommitted. The rest of the interface is Committed.
.SH SEE ALSO
.LP
-\fBmount_smbfs\fR(1M), \fBnsmbrc\fR(4), \fBattributes\fR(5), \fBsmbfs\fR(7FS)
+.BR smbfs (4FS),
+.BR nsmbrc (5),
+.BR attributes (7),
+.BR mount_smbfs (8)
.SH AUTHORS
.LP
This manual page contains material originally authored by Boris Popov,
diff --git a/usr/src/man/man1/soelim.1 b/usr/src/man/man1/soelim.1
index 9183a0f526..6823ba1a4a 100644
--- a/usr/src/man/man1/soelim.1
+++ b/usr/src/man/man1/soelim.1
@@ -67,4 +67,7 @@ The following is an example of the \fBsoelim\fR command:
.SH SEE ALSO
.sp
.LP
-\fBmore\fR(1), \fBnroff\fR(1), \fBtbl\fR(1), \fBattributes\fR(5)
+.BR more (1),
+.BR nroff (1),
+.BR tbl (1),
+.BR attributes (7)
diff --git a/usr/src/man/man1/sort.1 b/usr/src/man/man1/sort.1
index 05db8b6e1d..0fa759a42f 100644
--- a/usr/src/man/man1/sort.1
+++ b/usr/src/man/man1/sort.1
@@ -463,7 +463,7 @@ input is used.
.SH USAGE
.sp
.LP
-See \fBlargefile\fR(5) for the description of the behavior of \fBsort\fR when
+See \fBlargefile\fR(7) for the description of the behavior of \fBsort\fR when
encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
.SH EXAMPLES
.sp
@@ -526,7 +526,7 @@ example% \fBsort +1.1b \(mi1.2b infile1 infile2\fR
\fBExample 4 \fRSorting by Numeric User ID
.sp
.LP
-Either of the following commands prints the \fBpasswd\fR(4) file (user
+Either of the following commands prints the \fBpasswd\fR(5) file (user
database) sorted by the numeric user ID (the third colon-separated field):
.sp
@@ -559,7 +559,7 @@ example% \fBsort -um +2.0 \(mi3.0 infile\fR
\fBExample 6 \fRSorting by Host IP Address
.sp
.LP
-Either of the following commands prints the \fBhosts\fR(4) file (IPv4 hosts
+Either of the following commands prints the \fBhosts\fR(5) file (IPv4 hosts
database), sorted by the numeric \fBIP\fR address (the first four numeric
fields):
@@ -581,7 +581,7 @@ second field is interpreted as a fractional portion of the first, and so forth.
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBsort\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_COLLATE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.sp
@@ -653,7 +653,7 @@ Temporary files
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.SS "/usr/bin/sort"
.sp
@@ -685,9 +685,17 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBcomm\fR(1), \fBjoin\fR(1), \fBuniq\fR(1), \fBnl_langinfo\fR(3C),
-\fBstrftime\fR(3C), \fBhosts\fR(4), \fBpasswd\fR(4), \fBattributes\fR(5),
-\fBenviron\fR(5), \fBlargefile\fR(5), \fBstandards\fR(5)
+.BR comm (1),
+.BR join (1),
+.BR uniq (1),
+.BR nl_langinfo (3C),
+.BR strftime (3C),
+.BR hosts (5),
+.BR passwd (5),
+.BR attributes (7),
+.BR environ (7),
+.BR largefile (7),
+.BR standards (7)
.SH DIAGNOSTICS
.sp
.LP
diff --git a/usr/src/man/man1/sortbib.1 b/usr/src/man/man1/sortbib.1
index f6f280fb89..9a7d8fd88f 100644
--- a/usr/src/man/man1/sortbib.1
+++ b/usr/src/man/man1/sortbib.1
@@ -270,8 +270,12 @@ the fourth are not meaningful.
.SH SEE ALSO
.sp
.LP
-\fBaddbib\fR(1), \fBindxbib\fR(1), \fBlookbib\fR(1), \fBrefer\fR(1),
-\fBroffbib\fR(1), \fBattributes\fR(5)
+.BR addbib (1),
+.BR indxbib (1),
+.BR lookbib (1),
+.BR refer (1),
+.BR roffbib (1),
+.BR attributes (7)
.SH BUGS
.sp
.LP
diff --git a/usr/src/man/man1/sotruss.1 b/usr/src/man/man1/sotruss.1
index 1fb9d8c410..5ac456b55e 100644
--- a/usr/src/man/man1/sotruss.1
+++ b/usr/src/man/man1/sotruss.1
@@ -100,8 +100,11 @@ ls -> libc.so.1:*exit(0x0, 0x24220, 0x2421c)
.SH SEE ALSO
.sp
.LP
-\fBld.so.1\fR(1), \fBtruss\fR(1), \fBwhocalls\fR(1), \fBfork\fR(2),
-\fBattributes\fR(5)
+.BR ld.so.1 (1),
+.BR truss (1),
+.BR whocalls (1),
+.BR fork (2),
+.BR attributes (7)
.sp
.LP
\fILinker and Libraries Guide\fR
diff --git a/usr/src/man/man1/spell.1 b/usr/src/man/man1/spell.1
index dba88c6ac2..988208004e 100644
--- a/usr/src/man/man1/spell.1
+++ b/usr/src/man/man1/spell.1
@@ -210,7 +210,7 @@ words are collected from the standard input.
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBspell\fR: \fBLC_CTYPE\fR, \fBLC_MESSAGES\fR,
and \fBNLSPATH\fR.
.SH EXIT STATUS
@@ -279,8 +279,13 @@ master dictionary
.SH SEE ALSO
.sp
.LP
-\fBderoff\fR(1), \fBeqn\fR(1), \fBsort\fR(1), \fBtbl\fR(1), \fBtroff\fR(1),
-\fBattributes\fR(5), \fBenviron\fR(5)
+.BR deroff (1),
+.BR eqn (1),
+.BR sort (1),
+.BR tbl (1),
+.BR troff (1),
+.BR attributes (7),
+.BR environ (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man1/split.1 b/usr/src/man/man1/split.1
index 6a0c38b1d5..08d976e043 100644
--- a/usr/src/man/man1/split.1
+++ b/usr/src/man/man1/split.1
@@ -157,12 +157,12 @@ and \fIsuffixlength\fR cannot exceed \fINAME_MAX\fR bytes. See OPTIONS.
.SH USAGE
.sp
.LP
-See \fBlargefile\fR(5) for the description of the behavior of \fBsplit\fR when
+See \fBlargefile\fR(7) for the description of the behavior of \fBsplit\fR when
encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBsplit\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.SH EXIT STATUS
@@ -190,7 +190,7 @@ An error occurred.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -204,11 +204,15 @@ CSI Enabled
_
Interface Stability Committed
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.sp
.LP
-\fBcsplit\fR(1), \fBstatvfs\fR(2), \fBattributes\fR(5), \fBenviron\fR(5),
-\fBlargefile\fR(5), \fBstandards\fR(5)
+.BR csplit (1),
+.BR statvfs (2),
+.BR attributes (7),
+.BR environ (7),
+.BR largefile (7),
+.BR standards (7)
diff --git a/usr/src/man/man1/srchtxt.1 b/usr/src/man/man1/srchtxt.1
index d6471dc746..339a22a5b7 100644
--- a/usr/src/man/man1/srchtxt.1
+++ b/usr/src/man/man1/srchtxt.1
@@ -102,7 +102,7 @@ commas.
.RS 14n
Search for the text string specified by \fItext\fR and display each one that
matches. \fItext\fR can take the form of a regular expression; see
-\fBregexp\fR(5).
+\fBregexp\fR(7).
.RE
.SH EXAMPLES
@@ -202,7 +202,7 @@ example% srchtxt -l german -m UX,ingress "[Dd]atei"
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for a description of the \fBLC_CTYPE\fR environment
+See \fBenviron\fR(7) for a description of the \fBLC_CTYPE\fR environment
variable that affects the execution of \fBsrchtxt\fR.
.SH FILES
.sp
@@ -228,9 +228,16 @@ message files created by \fBmkmsgs\fR(1)
.SH SEE ALSO
.sp
.LP
-\fBexstr\fR(1), \fBgettxt\fR(1), \fBlocale\fR(1), \fBmkmsgs\fR(1),
-\fBgettxt\fR(3C), \fBsetlocale\fR(3C), \fBattributes\fR(5), \fBenviron\fR(5),
-\fBlocale\fR(5), \fBregexp\fR(5)
+.BR exstr (1),
+.BR gettxt (1),
+.BR locale (1),
+.BR mkmsgs (1),
+.BR gettxt (3C),
+.BR setlocale (3C),
+.BR attributes (7),
+.BR environ (7),
+.BR locale (7),
+.BR regexp (7)
.SH DIAGNOSTICS
.sp
.LP
diff --git a/usr/src/man/man1/strchg.1 b/usr/src/man/man1/strchg.1
index 55b1e3d7f4..37426a6c86 100644
--- a/usr/src/man/man1/strchg.1
+++ b/usr/src/man/man1/strchg.1
@@ -236,7 +236,8 @@ yes
.SH SEE ALSO
.sp
.LP
-\fBattributes\fR(5), \fBstreamio\fR(7I)
+.BR streamio (4I),
+.BR attributes (7)
.SH DIAGNOSTICS
.sp
.LP
diff --git a/usr/src/man/man1/strings.1 b/usr/src/man/man1/strings.1
index ac310ea457..ba23b59387 100644
--- a/usr/src/man/man1/strings.1
+++ b/usr/src/man/man1/strings.1
@@ -166,7 +166,7 @@ specified, the \fBstrings\fR utility reads from the standard input.
.RE
.SH ENVIRONMENT VARIABLES
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBstrings\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.SH EXIT STATUS
@@ -190,7 +190,7 @@ An error occurred.
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -208,11 +208,14 @@ Interface Stability See below.
.sp
.LP
The \fBstrings\fR utility, including all options except \fB-N\fR, are specified
-by standards. See \fBstandards\fR(5). The \fB-N\fR option is not currently
+by standards. See \fBstandards\fR(7). The \fB-N\fR option is not currently
specified by any standard.
.SH SEE ALSO
-\fBelfdump\fR(1), \fBod\fR(1), \fBattributes\fR(5), \fBenviron\fR(5),
-\fBstandards\fR(5)
+.BR elfdump (1),
+.BR od (1),
+.BR attributes (7),
+.BR environ (7),
+.BR standards (7)
.SH NOTES
The algorithm for identifying strings is extremely primitive.
.sp
diff --git a/usr/src/man/man1/strip.1 b/usr/src/man/man1/strip.1
index 8079113066..f664fc19aa 100644
--- a/usr/src/man/man1/strip.1
+++ b/usr/src/man/man1/strip.1
@@ -139,7 +139,7 @@ A path name referring to an executable file.
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBstrip\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.SH EXIT STATUS
@@ -177,7 +177,7 @@ Temporary files
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -193,9 +193,17 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBar\fR(1), \fBas\fR(1), \fBld\fR(1), \fBmcs\fR(1), \fBelf\fR(3ELF),
-\fBtmpnam\fR(3C), \fBa.out\fR(4), \fBar.h\fR(3HEAD), \fBattributes\fR(5),
-\fBenviron\fR(5), \fBstandards\fR(5)
+.BR ar (1),
+.BR as (1),
+.BR ld (1),
+.BR mcs (1),
+.BR tmpnam (3C),
+.BR elf (3ELF),
+.BR ar.h (3HEAD),
+.BR a.out (5),
+.BR attributes (7),
+.BR environ (7),
+.BR standards (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man1/stty.1 b/usr/src/man/man1/stty.1
index 7ae66f824c..7f7249ce9b 100644
--- a/usr/src/man/man1/stty.1
+++ b/usr/src/man/man1/stty.1
@@ -92,10 +92,10 @@ CTRL-h. In this case, recall that CTRL-h is the same as the BACKSPACE key). The
sequence \fB^@\fR means that an option has a null value.
.sp
.LP
-See \fBtermio\fR(7I) for detailed information about the modes listed from
+See \fBtermio\fR(4I) for detailed information about the modes listed from
\fBControl\fR \fBModes\fR through \fBLocal Modes\fR. For detailed information
about the modes listed under \fBHardware\fR \fBFlow\fR \fBControl\fR
-\fBModes\fR and \fBClock Modes\fR, see \fBtermiox\fR(7I).
+\fBModes\fR and \fBClock Modes\fR, see \fBtermiox\fR(4I).
.sp
.LP
Operands described in the \fBCombination Modes\fR section are implemented using
@@ -162,7 +162,7 @@ Select odd (even) parity, or mark (space) parity if \fBparext\fR is enabled.
\fB\fBcs5\fR \fBcs6\fR \fBcs7\fR \fBcs8\fR\fR
.ad
.RS 24n
-Select character size (see \fBtermio\fR(7I)).
+Select character size (see \fBtermio\fR(4I)).
.RE
.sp
@@ -391,7 +391,7 @@ Ignore (do not ignore) parity errors.
\fB\fBparmrk\fR (\fB-parmrk\fR)\fR
.ad
.RS 22n
-Mark (do not mark) parity errors (see \fBtermio\fR(7I)).
+Mark (do not mark) parity errors (see \fBtermio\fR(4I)).
.RE
.sp
@@ -570,7 +570,7 @@ Fill characters are DELs (NULs).
\fB\fBcr0 cr1 cr2 cr3\fR\fR
.ad
.RS 23n
-Select style of delay for carriage returns (see \fBtermio\fR(7I)).
+Select style of delay for carriage returns (see \fBtermio\fR(4I)).
.RE
.sp
@@ -579,7 +579,7 @@ Select style of delay for carriage returns (see \fBtermio\fR(7I)).
\fB\fBnl0 nl1\fR\fR
.ad
.RS 23n
-Select style of delay for line-feeds (see \fBtermio\fR(7I)).
+Select style of delay for line-feeds (see \fBtermio\fR(4I)).
.RE
.sp
@@ -588,7 +588,7 @@ Select style of delay for line-feeds (see \fBtermio\fR(7I)).
\fB\fBtab0 tab1 tab2 tab3\fR\fR
.ad
.RS 23n
-Select style of delay for horizontal tabs (see \fBtermio\fR(7I)).
+Select style of delay for horizontal tabs (see \fBtermio\fR(4I)).
.RE
.sp
@@ -597,7 +597,7 @@ Select style of delay for horizontal tabs (see \fBtermio\fR(7I)).
\fB\fBbs0 bs1\fR\fR
.ad
.RS 23n
-Select style of delay for backspaces (see \fBtermio\fR(7I)).
+Select style of delay for backspaces (see \fBtermio\fR(4I)).
.RE
.sp
@@ -606,7 +606,7 @@ Select style of delay for backspaces (see \fBtermio\fR(7I)).
\fB\fBff0 ff1\fR\fR
.ad
.RS 23n
-Select style of delay for form-feeds (see \fBtermio\fR(7I)).
+Select style of delay for form-feeds (see \fBtermio\fR(4I)).
.RE
.sp
@@ -615,7 +615,7 @@ Select style of delay for form-feeds (see \fBtermio\fR(7I)).
\fB\fBvt0 vt1\fR\fR
.ad
.RS 23n
-Select style of delay for vertical tabs (see \fBtermio\fR(7I)).
+Select style of delay for vertical tabs (see \fBtermio\fR(4I)).
.RE
.SS "Local Modes"
@@ -1018,7 +1018,7 @@ Set \fIcontrol-character\fR to \fIc\fR, where:
is \fBctab\fR, \fBdiscard\fR, \fBdsusp\fR, \fBeof\fR, \fBeol\fR, \fBeol2\fR,
\fBerase\fR, \fBerase2\fR, \fBintr\fR, \fBkill\fR, \fBlnext\fR, \fBquit\fR,
\fBreprint\fR, \fBstart\fR, \fBstop\fR, \fBsusp\fR, \fBstatus\fR, \fBswtch\fR,
-or \fBwerase\fR (\fBctab\fR is used with \fB-stappl\fR, see \fBtermio\fR(7I)).
+or \fBwerase\fR (\fBctab\fR is used with \fB-stappl\fR, see \fBtermio\fR(4I)).
For information on \fBswtch\fR, see NOTES.
.RE
@@ -1338,7 +1338,7 @@ Since the \fB-a\fR format is so loosely specified, scripts that save and
restore terminal settings should use the \fB-g\fR option.
.SH ENVIRONMENT VARIABLES
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBstty\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.SH EXIT STATUS
@@ -1364,7 +1364,7 @@ An error occurred.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.SS "/usr/xpg4/bin/stty"
.TS
box;
@@ -1374,7 +1374,7 @@ ATTRIBUTE TYPE ATTRIBUTE VALUE
_
Interface Stability Committed
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SS "/usr/xpg6/bin/stty"
@@ -1386,14 +1386,21 @@ ATTRIBUTE TYPE ATTRIBUTE VALUE
_
Interface Stability Committed
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.LP
-\fBtabs\fR(1), \fBioctl\fR(2), \fBwrite\fR(2), \fBgetwidth\fR(3C),
-\fBattributes\fR(5), \fBenviron\fR(5), \fBstandards\fR(5), \fBldterm\fR(7M),
-\fBtermio\fR(7I), \fBtermiox\fR(7I)
+.BR tabs (1),
+.BR ioctl (2),
+.BR write (2),
+.BR getwidth (3C),
+.BR termio (4I),
+.BR termiox (4I),
+.BR ldterm (4M),
+.BR attributes (7),
+.BR environ (7),
+.BR standards (7)
.SH NOTES
.LP
Solaris does not support any of the actions implied by \fBswtch\fR, which was
diff --git a/usr/src/man/man1/sum.1 b/usr/src/man/man1/sum.1
index 256472c26d..6e55303854 100644
--- a/usr/src/man/man1/sum.1
+++ b/usr/src/man/man1/sum.1
@@ -673,10 +673,10 @@ A path name of a file. If no files are named, the standard input is used.
.RE
.SH USAGE
-See \fBlargefile\fR(5) for the description of the behavior of \fBsum\fR when
+See \fBlargefile\fR(7) for the description of the behavior of \fBsum\fR when
encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
.SH ENVIRONMENT VARIABLES
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBsum\fR: \fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and
\fBNLSPATH\fR.
.SH EXIT STATUS
@@ -700,7 +700,7 @@ An error occurred.
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -714,10 +714,17 @@ CSI Enabled
.TE
.SH SEE ALSO
-\fBcksum\fR(1), \fBdigest\fR(1), \fBgetconf\fR(1), \fBksh93\fR(1),
-\fBsum\fR(1B), \fBwc\fR(1),
-\fBzip\fR(1), \fBlibmd\fR(3LIB), \fBattributes\fR(5), \fBenviron\fR(5),
-\fBlargefile\fR(5)
+.BR cksum (1),
+.BR digest (1),
+.BR getconf (1),
+.BR ksh93 (1),
+.BR wc (1),
+.BR zip (1),
+.BR sum (1B),
+.BR libmd (3LIB),
+.BR attributes (7),
+.BR environ (7),
+.BR largefile (7)
.SH DIAGNOSTICS
\fBRead error\fR is indistinguishable from end of file on most devices. Check
the block count.
diff --git a/usr/src/man/man1/suspend.1 b/usr/src/man/man1/suspend.1
index 8e1944b430..1e96c01b3f 100644
--- a/usr/src/man/man1/suspend.1
+++ b/usr/src/man/man1/suspend.1
@@ -42,5 +42,9 @@ Stops the execution of the current shell (but not if it is the login shell).
.SH SEE ALSO
.sp
.LP
-\fBcsh\fR(1), \fBkill\fR(1), \fBksh\fR(1), \fBsh\fR(1), \fBsu\fR(1M),
-\fBattributes\fR(5)
+.BR csh (1),
+.BR kill (1),
+.BR ksh (1),
+.BR sh (1),
+.BR attributes (7),
+.BR su (8)
diff --git a/usr/src/man/man1/svcprop.1 b/usr/src/man/man1/svcprop.1
index fa86788ab9..5e9d5c42f0 100644
--- a/usr/src/man/man1/svcprop.1
+++ b/usr/src/man/man1/svcprop.1
@@ -30,7 +30,7 @@ effective properties. The effective properties of a service are its directly
attached properties. The effective properties of a service instance are the
union of properties in the composed view of its \fBrunning\fR snapshot and the
properties in nonpersistent property groups in the composed view of the
-instance's directly attached properties. See \fBsmf\fR(5) for an explanation of
+instance's directly attached properties. See \fBsmf\fR(7) for an explanation of
property composition. If the \fBrunning\fR snapshot does not exist then the
instance's directly attached properties are used instead.
.SS "Output Format"
@@ -168,7 +168,7 @@ message is printed and no action is taken. The -C option is implied.
.ad
.RS 14n
Uses properties from the service or instance in the specified \fIzone\fR.
-This option is only applicable from the global zone, see \fBzones\fR(5).
+This option is only applicable from the global zone, see \fBzones\fR(7).
.SH OPERANDS
The following operands are supported:
@@ -227,7 +227,7 @@ other permanent tools. If an abbreviation matches multiple instances,
.ad
.RS 11n
A glob pattern which is matched against the FMRIs of services and instances in
-the repository. See \fBfnmatch\fR(5). If a pattern matches multiple services or
+the repository. See \fBfnmatch\fR(7). If a pattern matches multiple services or
instances, \fBsvcprop\fR acts on each service or instance.
.RE
@@ -390,7 +390,15 @@ Invalid command line options were specified.
.RE
.SH SEE ALSO
-\fBsvcs\fR(1), \fBinetd\fR(1M), \fBsvcadm\fR(1M), \fBsvccfg\fR(1M),
-\fBsvc.startd\fR(1M), \fBservice_bundle\fR(4), \fBattributes\fR(5),
-\fBfnmatch\fR(5), \fBsmf\fR(5), \fBsmf_method\fR(5), \fBsmf_security\fR(5),
-\fBzones\fR(5)
+.BR svcs (1),
+.BR service_bundle (5),
+.BR attributes (7),
+.BR fnmatch (7),
+.BR smf (7),
+.BR smf_method (7),
+.BR smf_security (7),
+.BR zones (7),
+.BR inetd (8),
+.BR svc.startd (8),
+.BR svcadm (8),
+.BR svccfg (8)
diff --git a/usr/src/man/man1/svcs.1 b/usr/src/man/man1/svcs.1
index cb8b3cd120..f499cf1cbd 100644
--- a/usr/src/man/man1/svcs.1
+++ b/usr/src/man/man1/svcs.1
@@ -58,7 +58,7 @@ Error messages are printed to the standard error stream.
.sp
.LP
The output of this command can be used appropriately as input to the
-\fBsvcadm\fR(1M) command.
+\fBsvcadm\fR(8) command.
.SH OPTIONS
The following options are supported:
.sp
@@ -128,7 +128,7 @@ The following specific attributes require further explanation:
.RS 14n
Information about a dependency. The grouping and \fBrestart_on\fR properties
are displayed first and are separated by a forward slash (\fB/\fR). Next, each
-entity and its state is listed. See \fBsmf\fR(5) for information about states.
+entity and its state is listed. See \fBsmf\fR(7) for information about states.
In addition to the standard states, each service dependency can have the
following state descriptions:
.sp
@@ -146,7 +146,7 @@ No such service is defined on the system.
\fB\fBinvalid\fR\fR
.ad
.RS 12n
-The fault management resource identifier (FMRI) is invalid (see \fBsmf\fR(5)).
+The fault management resource identifier (FMRI) is invalid (see \fBsmf\fR(7)).
.RE
.sp
@@ -190,7 +190,7 @@ service's dependencies, it can consider the dependency to be unsatisfied.
\fBstat\fR(2) failed for a reason other than \fBENOENT\fR.
.RE
-See \fBsmf\fR(5) for additional details about dependencies, grouping, and
+See \fBsmf\fR(7) for additional details about dependencies, grouping, and
\fBrestart_on\fR values.
.RE
@@ -207,7 +207,7 @@ temporarily (until the next system reboot). The former is specified as either
.sp
A service might be temporarily disabled because an administrator has run
\fBsvcadm disable -t\fR, used \fBsvcadm milestone\fR, or booted the system to a
-specific milestone. See \fBsvcadm\fR(1M) for details.
+specific milestone. See \fBsvcadm\fR(8) for details.
.sp
If a service instance was disabled via
\fBsvcadm disable -c\fR
@@ -322,7 +322,7 @@ are preventing another enabled service from running.
.ad
.RS 20n
Display only the services in the \fIzone\fR. This option is only applicable
-in the global zone, see \fBzones\fR(5).
+in the global zone, see \fBzones\fR(7).
.RE
.sp
@@ -333,7 +333,7 @@ in the global zone, see \fBzones\fR(5).
.RS 20n
Display services from all zones, with an additional column indicating in which
zone the service is running. This option is only applicable in the global
-zone, see \fBzones\fR(5).
+zone, see \fBzones\fR(7).
.RE
.SH OPERANDS
@@ -345,7 +345,7 @@ The following operands are supported:
.ad
.RS 17n
A fault management resource identifier (FMRI) that specifies one or more
-instances (see \fBsmf\fR(5)). FMRIs can be abbreviated by specifying the
+instances (see \fBsmf\fR(7)). FMRIs can be abbreviated by specifying the
instance name, or the trailing portion of the service name. For example, given
the FMRI:
.sp
@@ -394,7 +394,7 @@ other permanent tools.
.ad
.RS 17n
A pattern that is matched against the \fIFMRI\fRs of service instances
-according to the "globbing" rules described by \fBfnmatch\fR(5). If the pattern
+according to the "globbing" rules described by \fBfnmatch\fR(7). If the pattern
does not begin with \fBsvc:\fR, then \fBsvc:/\fR is prepended. The following is
a typical example of a glob pattern:
.sp
@@ -506,7 +506,7 @@ The service name of the service instance.
\fB\fBSTA\fR\fR
.ad
.RS 10n
-The abbreviated state of the service instance (see \fBsmf\fR(5)):
+The abbreviated state of the service instance (see \fBsmf\fR(7)):
.sp
.ne 2
.na
@@ -574,7 +574,7 @@ Absent or unrecognized states are denoted by a question mark (\fB?\fR)
character. An asterisk (\fB*\fR) is appended for instances in transition,
unless the \fBNSTA\fR or \fBNSTATE\fR column is also being displayed.
.sp
-See \fBsmf\fR(5) for an explanation of service states.
+See \fBsmf\fR(7) for an explanation of service states.
.RE
.sp
@@ -587,7 +587,7 @@ The state of the service instance. An asterisk is appended for instances in
transition, unless the \fBNSTA\fR or \fBNSTATE\fR column is also being
displayed.
.sp
-See \fBsmf\fR(5) for an explanation of service states.
+See \fBsmf\fR(7) for an explanation of service states.
.RE
.sp
@@ -716,7 +716,7 @@ svc:/application/print/server:default (LP print server)
State: disabled since Mon Feb 13 17:56:21 2006
Reason: Disabled by an administrator.
See: http://illumos.org/msg/SMF-8000-05
- See: lpsched(1M)
+ See: lpsched(8)
Impact: 2 dependent services are not running. (Use -v for list.)
.fi
.in -2
@@ -754,7 +754,7 @@ Reason: Service svc:/network/nfs/status:default
Path: svc:/network/nfs/client:default
svc:/network/nfs/nlockmgr:default
svc:/network/nfs/status:default
- See: man -M /usr/share/man -s 1M mount_nfs
+ See: man -M /usr/share/man -s 8 mount_nfs
See: /var/svc/log/network-nfs-client:default.log
Impact: This service is not running.
.fi
@@ -791,7 +791,7 @@ Invalid command line options were specified.
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -808,6 +808,14 @@ Interface Stability See below.
.LP
Screen output is Uncommitted. The invocation is Committed.
.SH SEE ALSO
-\fBps\fR(1), \fBsvcprop\fR(1), \fBsvcadm\fR(1M), \fBsvccfg\fR(1M),
-\fBsvc.startd\fR(1M), \fBstat\fR(2), \fBlibscf\fR(3LIB), \fBattributes\fR(5),
-\fBfnmatch\fR(5), \fBsmf\fR(5), \fBzones\fR(5)
+.BR ps (1),
+.BR svcprop (1),
+.BR stat (2),
+.BR libscf (3LIB),
+.BR attributes (7),
+.BR fnmatch (7),
+.BR smf (7),
+.BR zones (7),
+.BR svc.startd (8),
+.BR svcadm (8),
+.BR svccfg (8)
diff --git a/usr/src/man/man1/symorder.1 b/usr/src/man/man1/symorder.1
index f6dfbb619a..89dd7ea105 100644
--- a/usr/src/man/man1/symorder.1
+++ b/usr/src/man/man1/symorder.1
@@ -29,4 +29,6 @@ maintain scripts that are portable across a variety of operating systems.
.SH SEE ALSO
.sp
.LP
-\fBnlist\fR(3ELF), \fBattributes\fR(5), \fBksyms\fR(7D)
+.BR nlist (3ELF),
+.BR ksyms (4D),
+.BR attributes (7)
diff --git a/usr/src/man/man1/sys-suspend.1 b/usr/src/man/man1/sys-suspend.1
index 763699c036..3608dcfd51 100644
--- a/usr/src/man/man1/sys-suspend.1
+++ b/usr/src/man/man1/sys-suspend.1
@@ -42,7 +42,7 @@ the system is successfully suspended, the resume operation always succeed
barring external influences such as hardware reconfiguration or the like.
.sp
.LP
-In case of shutdown, the system responds as if \fBpoweroff\fR(1M) was
+In case of shutdown, the system responds as if \fBpoweroff\fR(8) was
performed.
.sp
.LP
@@ -68,7 +68,7 @@ Connect to the X server specified by \fIdisplayname\fR.
\fB\fB-f\fR\fR
.ad
.RS 6n
-Force suspend. Causes a \fBpoweroff\fR(1M) to occur if the suspend fails.
+Force suspend. Causes a \fBpoweroff\fR(8) to occur if the suspend fails.
System state are not be saved, and a normal boot follows.
.RE
@@ -103,7 +103,7 @@ at resume time.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -119,5 +119,9 @@ Interface Stability Committed
.SH SEE ALSO
.sp
.LP
-\fBhalt\fR(1M), \fBpowerd\fR(1M), \fBpoweroff\fR(1M), \fBshutdown\fR(1M),
-\fBattributes\fR(5), \fBcpr\fR(7)
+.BR cpr (4),
+.BR attributes (7),
+.BR halt (8),
+.BR powerd (8),
+.BR poweroff (8),
+.BR shutdown (8)
diff --git a/usr/src/man/man1/sysV-make.1 b/usr/src/man/man1/sysV-make.1
index aa57de84a6..83b1d58ac1 100644
--- a/usr/src/man/man1/sysV-make.1
+++ b/usr/src/man/man1/sysV-make.1
@@ -424,7 +424,7 @@ make -pf \(mi2>/dev/null < /dev/null
.sp
.LP
-A tilde in the above rules refers to an SCCS file (see \fBsccsfile\fR(4)).
+A tilde in the above rules refers to an SCCS file (see \fBsccsfile\fR(5)).
Thus, the rule \fB\&.c~.o\fR would transform an SCCS C source file into an
object file (\fB\&.o\fR). Because the \fBs.\fR of the SCCS files is a prefix,
it is incompatible with the \fBmake\fR suffix point of view. Hence, the tilde
@@ -592,8 +592,12 @@ default rules for \fBmake\fR
.SH SEE ALSO
.LP
-\fBcd\fR(1), \fBmake\fR(1S), \fBsh\fR(1), \fBprintf\fR(3C), \fBsccsfile\fR(4),
-\fBattributes\fR(5)
+.BR cd (1),
+.BR sh (1),
+.BR make (1S),
+.BR printf (3C),
+.BR sccsfile (5),
+.BR attributes (7)
.SH NOTES
.LP
Some commands return non-zero status inappropriately; use \fB-i\fR or the
diff --git a/usr/src/man/man1/tabs.1 b/usr/src/man/man1/tabs.1
index 305c91ad98..0b45dcf32b 100644
--- a/usr/src/man/man1/tabs.1
+++ b/usr/src/man/man1/tabs.1
@@ -78,10 +78,10 @@ last value given takes effect:
.ad
.RS 12n
\fBtabs\fR needs to know the type of terminal in order to set tabs and margins.
-\fItype\fR is a name listed in \fBterm\fR(5). If no \fB-T\fR flag is supplied,
+\fItype\fR is a name listed in \fBterm\fR(7). If no \fB-T\fR flag is supplied,
\fBtabs\fR uses the value of the environment variable \fBTERM\fR. If the value
of \fBTERM\fR is \fINULL\fR or \fBTERM\fR is not defined in the environment
-(see \fBenviron\fR(5)), \fBtabs\fR uses \fBansi+tabs\fR as the terminal type to
+(see \fBenviron\fR(7)), \fBtabs\fR uses \fBansi+tabs\fR as the terminal type to
provide a sequence that will work for many terminals.
.RE
@@ -161,7 +161,7 @@ COBOL, normal format
COBOL compact format (columns 1-6 omitted). Using this code, the first typed
character corresponds to card column 7, one space gets you to column 8, and a
tab reaches column 12. Files using this tab setup should include a format
-specification as follows (see \fBfspec\fR(4)):
+specification as follows (see \fBfspec\fR(5)):
.sp
.in +2
.nf
@@ -181,7 +181,7 @@ specification as follows (see \fBfspec\fR(4)):
.sp
COBOL compact format (columns 1-6 omitted), with more tabs than
\fB\fR\fB-c2\fR\fB\&.\fR This is the recommended format for COBOL. The
-appropriate format specification is (see \fBfspec\fR(4)):
+appropriate format specification is (see \fBfspec\fR(5)):
.sp
.in +2
.nf
@@ -262,7 +262,7 @@ See OPERANDS.
.ad
.RS 9n
If the name of a \fIfile\fR is given, \fBtabs\fR reads the first line of the
-file, searching for a format specification (see \fBfspec\fR(4)). If it finds
+file, searching for a format specification (see \fBfspec\fR(5)). If it finds
one there, it sets the tab stops according to it, otherwise it sets them as
\fB\(mi8\fR\&. This type of specification may be used to make sure that a
tabbed file is printed with correct tab settings, and would be used with the
@@ -347,7 +347,7 @@ example% \fBtabs 1,8,36\fR
.LP
The last command is an example of using \fI-file\fR (\fBfile\fR specification)
to indicate that tabs should be set according to the first line of
-$\fBHOME\fR/fspec.list/att4425 (see \fBfspec\fR(4)).
+$\fBHOME\fR/fspec.list/att4425 (see \fBfspec\fR(5)).
.sp
.in +2
@@ -360,7 +360,7 @@ example% \fBtabs -$HOME/fspec.list/att4425\fR
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBtabs\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.sp
@@ -398,7 +398,7 @@ An error occurred.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -416,9 +416,17 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBexpand\fR(1), \fBnewform\fR(1), \fBpr\fR(1), \fBstty\fR(1), \fBtput\fR(1),
-\fBfspec\fR(4), \fBterminfo\fR(4), \fBattributes\fR(5), \fBenviron\fR(5),
-\fBterm\fR(5), \fBstandards\fR(5)
+.BR expand (1),
+.BR newform (1),
+.BR pr (1),
+.BR stty (1),
+.BR tput (1),
+.BR fspec (5),
+.BR terminfo (5),
+.BR attributes (7),
+.BR environ (7),
+.BR standards (7),
+.BR term (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man1/tail.1 b/usr/src/man/man1/tail.1
index 48c6d427bf..e5c5f92c90 100644
--- a/usr/src/man/man1/tail.1
+++ b/usr/src/man/man1/tail.1
@@ -240,7 +240,7 @@ standard input is used.
.SH USAGE
.sp
.LP
-See \fBlargefile\fR(5) for the description of the behavior of \fBtail\fR when
+See \fBlargefile\fR(7) for the description of the behavior of \fBtail\fR when
encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
.SH EXAMPLES
.LP
@@ -276,7 +276,7 @@ example% \fBtail -15cf fred\fR
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBtail\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.SH EXIT STATUS
@@ -304,7 +304,7 @@ An error occurred.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.SS "/usr/bin/tail"
.sp
@@ -336,8 +336,15 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBcat\fR(1), \fBhead\fR(1), \fBmore\fR(1), \fBpg\fR(1), \fBdd\fR(1M),
-\fBattributes\fR(5), \fBenviron\fR(5), \fBlargefile\fR(5), \fBstandards\fR(5)
+.BR cat (1),
+.BR head (1),
+.BR more (1),
+.BR pg (1),
+.BR attributes (7),
+.BR environ (7),
+.BR largefile (7),
+.BR standards (7),
+.BR dd (8)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man1/talk.1 b/usr/src/man/man1/talk.1
index 8c62974f91..6a6dedda0c 100644
--- a/usr/src/man/man1/talk.1
+++ b/usr/src/man/man1/talk.1
@@ -203,7 +203,7 @@ returned by \fBwho\fR.
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBtalk\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.sp
@@ -261,7 +261,7 @@ user and accounting information for \fBtalk\fR
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -277,9 +277,16 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBmail\fR(1), \fBmesg\fR(1), \fBpr\fR(1), \fBstty\fR(1), \fBwho\fR(1),
-\fBwrite\fR(1), \fBtermios\fR(3C), \fBattributes\fR(5), \fBenviron\fR(5),
-\fBstandards\fR(5)
+.BR mail (1),
+.BR mesg (1),
+.BR pr (1),
+.BR stty (1),
+.BR who (1),
+.BR write (1),
+.BR termios (3C),
+.BR attributes (7),
+.BR environ (7),
+.BR standards (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man1/tar.1 b/usr/src/man/man1/tar.1
index f1a3363167..2a158e2e50 100644
--- a/usr/src/man/man1/tar.1
+++ b/usr/src/man/man1/tar.1
@@ -241,7 +241,7 @@ If a named file matches a directory whose contents has been written to the
tarfile, this directory is recursively extracted. The owner, modification time,
and mode are restored (if possible); otherwise, to restore owner, you must be
the super-user. Character-special and block-special devices (created by
-\fBmknod\fR(1M)) can only be extracted by the super-user. If no \fIfile\fR
+\fBmknod\fR(8)) can only be extracted by the super-user. If no \fIfile\fR
argument is specified, the entire content of the tarfile is extracted. If the
tarfile contains several files with the same name, each file is written to the
appropriate directory, overwriting the previous one. Filename substitution
@@ -298,7 +298,7 @@ Blocking Factor. Use when reading or writing to raw magnetic archives (see
tape blocks to be included in each read or write operation performed on the
tarfile. The minimum is \fB1\fR, the default is \fB20\fR. The maximum value is
a function of the amount of memory available and the blocking requirements of
-the specific tape device involved (see \fBmtio\fR(7I) for details.) The maximum
+the specific tape device involved (see \fBmtio\fR(4I) for details.) The maximum
cannot exceed \fBINT_MAX\fR/512 (\fB4194303\fR).
.sp
When a tape archive is being read, its actual blocking factor is automatically
@@ -698,7 +698,7 @@ is the default.
.SH USAGE
.LP
-See \fBlargefile\fR(5) for the description of the behavior of \fBtar\fR when
+See \fBlargefile\fR(7) for the description of the behavior of \fBtar\fR when
encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
.sp
.LP
@@ -844,7 +844,7 @@ Notice that in some earlier releases, the above scenario did not work
correctly, and intervention with \fBmt\fR(1) between \fBtar\fR invocations was
necessary. To emulate the old behavior, use the non-rewind device name
containing the letter \fBb\fR for BSD behavior. See the \fBClose Operations\fR
-section of the \fBmtio\fR(7I) manual page.
+section of the \fBmtio\fR(4I) manual page.
.LP
\fBExample 2 \fRArchiving files from /usr/include and from /etc to default tape
@@ -1012,7 +1012,7 @@ tar: tape read error
.SH ENVIRONMENT VARIABLES
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBtar\fR: \fBLC_COLLATE\fR, \fBLC_CTYPE\fR,
\fBLC_MESSAGES\fR, \fBLC_TIME\fR, \fBTZ\fR, and \fBNLSPATH\fR.
.sp
@@ -1024,7 +1024,7 @@ the behavior of ranges, equivalence classes, and multi-character collating
elements used in the expression defined for \fByesexpr\fR. The locale specified
in \fBLC_CTYPE\fR determines the locale for interpretation of sequences of
bytes of text data a characters, the behavior of character classes used in the
-expression defined for the \fByesexpr\fR. See \fBlocale\fR(5).
+expression defined for the \fByesexpr\fR. See \fBlocale\fR(7).
.SH EXIT STATUS
.LP
The following exit values are returned:
@@ -1162,7 +1162,7 @@ Settings might look like this:
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -1180,11 +1180,24 @@ Interface Stability Committed
.SH SEE ALSO
.LP
\fBar\fR(1), \fBbasename\fR(1), \fBbzip2\fR(1), \fBcd\fR(1), \fBchown\fR(1),
-\fBcompress\fR)(1), \fBcpio\fR(1), \fBcsh\fR(1), \fBdirname\fR(1),
-\fBfind\fR(1), \fBgzip\fR(1), \fBls\fR(1), \fBmt\fR(1), \fBpax\fR(1),
-\fBsetfacl\fR(1), \fBumask\fR(1), \fBxz\fR(1), \fBmknod\fR(1M),
-\fBarchives.h\fR(3HEAD), \fBattributes\fR(5), \fBenviron\fR(5),
-\fBfsattr\fR(5), \fBlargefile\fR(5), \fBmtio\fR(7I)
+\fBcompress\fR)(1), \fBcpio\fR(1),
+.BR csh (1),
+.BR dirname (1),
+.BR find (1),
+.BR gzip (1),
+.BR ls (1),
+.BR mt (1),
+.BR pax (1),
+.BR setfacl (1),
+.BR umask (1),
+.BR xz (1),
+.BR archives.h (3HEAD),
+.BR mtio (4I),
+.BR attributes (7),
+.BR environ (7),
+.BR fsattr (7),
+.BR largefile (7),
+.BR mknod (8)
.SH DIAGNOSTICS
.LP
Diagnostic messages are output for bad key characters and tape read/write
diff --git a/usr/src/man/man1/tbl.1 b/usr/src/man/man1/tbl.1
index 6d3eb54d30..a279a4508a 100644
--- a/usr/src/man/man1/tbl.1
+++ b/usr/src/man/man1/tbl.1
@@ -133,4 +133,7 @@ l l l .
.SH SEE ALSO
.sp
.LP
-\fBeqn\fR(1), \fBnroff\fR(1), \fBtroff\fR(1), \fBattributes\fR(5)
+.BR eqn (1),
+.BR nroff (1),
+.BR troff (1),
+.BR attributes (7)
diff --git a/usr/src/man/man1/tcopy.1 b/usr/src/man/man1/tcopy.1
index 67e27b7a9d..8a52328253 100644
--- a/usr/src/man/man1/tcopy.1
+++ b/usr/src/man/man1/tcopy.1
@@ -41,7 +41,9 @@ example% \fBtcopy /dev/rmt/1b /dev/rmt/2b\fR
.SH SEE ALSO
.sp
.LP
-\fBmt\fR(1), \fBioctl\fR(2), \fBattributes\fR(5)
+.BR mt (1),
+.BR ioctl (2),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man1/tee.1 b/usr/src/man/man1/tee.1
index e7b619e306..ee208c1c67 100644
--- a/usr/src/man/man1/tee.1
+++ b/usr/src/man/man1/tee.1
@@ -169,12 +169,12 @@ are supported.
.SH USAGE
.sp
.LP
-See \fBlargefile\fR(5) for the description of the behavior of \fBtee\fR when
+See \fBlargefile\fR(7) for the description of the behavior of \fBtee\fR when
encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBtee\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.SH EXIT STATUS
@@ -226,7 +226,7 @@ An error occurred.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.SS "/usr/bin/tee"
.sp
@@ -241,7 +241,7 @@ CSI Enabled
_
Interface Stability Committed
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SS "ksh93"
@@ -264,5 +264,9 @@ The built-in interfaces are Uncommitted.
.SH SEE ALSO
.sp
.LP
-\fBcat\fR(1), \fBksh93\fR(1), \fBattributes\fR(5), \fBenviron\fR(5),
-\fBlargefile\fR(5), \fBstandards\fR(5)
+.BR cat (1),
+.BR ksh93 (1),
+.BR attributes (7),
+.BR environ (7),
+.BR largefile (7),
+.BR standards (7)
diff --git a/usr/src/man/man1/telnet.1 b/usr/src/man/man1/telnet.1
index 71c318e95e..fef92c3531 100644
--- a/usr/src/man/man1/telnet.1
+++ b/usr/src/man/man1/telnet.1
@@ -176,7 +176,7 @@ Forwards a forwardable copy of the local credentials to the remote system.
.RS 4n
If Kerberos authentication is being used, requests that \fBtelnet\fR obtain
tickets for the remote host in \fIrealm\fR instead of the remote host's default
-realm as determined in \fBkrb5.conf\fR(4).
+realm as determined in \fBkrb5.conf\fR(5).
.RE
.sp
@@ -325,9 +325,9 @@ Lists the current status of the various types of authentication.
.RS 4n
Open a connection to the named host. If no port number is specified,
\fBtelnet\fR will attempt to contact a \fBTELNET\fR server at the default port.
-The host specification may be either a host name (see \fBhosts\fR(4)) or an
-Internet address specified in the "dot notation" (see \fBinet\fR(7P) or
-\fBinet6\fR(7P)). If the \fIhost\fR is specified as \fI@hop1@hop2@host\fR, the
+The host specification may be either a host name (see \fBhosts\fR(5)) or an
+Internet address specified in the "dot notation" (see \fBinet\fR(4P) or
+\fBinet6\fR(4P)). If the \fIhost\fR is specified as \fI@hop1@hop2@host\fR, the
connection goes through hosts \fIhop1\fR and \fIhop2\fR, using loose source
routing to end at \fIhost\fR. The \fB@\fR symbol is required as a separator
between the hosts specified. If a leading \fB!\fR is used with IPv4, the
@@ -1508,9 +1508,17 @@ session
.SH SEE ALSO
.sp
.LP
-\fBrlogin\fR(1), \fBsh\fR(1), \fBstty\fR(1), \fBgetlogin\fR(3C),
-\fBhosts\fR(4), \fBkrb5.conf\fR(4), \fBnologin\fR(4), \fBtelnetrc\fR(4),
-\fBattributes\fR(5), \fBinet\fR(7P), \fBinet6\fR(7P)
+.BR rlogin (1),
+.BR sh (1),
+.BR stty (1),
+.BR getlogin (3C),
+.BR inet (4P),
+.BR inet6 (4P),
+.BR hosts (5),
+.BR krb5.conf (5),
+.BR nologin (5),
+.BR telnetrc (5),
+.BR attributes (7)
.SH DIAGNOSTICS
.sp
.ne 2
diff --git a/usr/src/man/man1/test.1 b/usr/src/man/man1/test.1
index 8558a7900f..4ed31545bc 100644
--- a/usr/src/man/man1/test.1
+++ b/usr/src/man/man1/test.1
@@ -143,7 +143,7 @@ the first open square bracket, \fB[\fR, is the required utility name.
The final close square bracket, \fB]\fR, is a required operand.
.sp
.LP
-See \fBlargefile\fR(5) for the description of the behavior of \fBtest\fR when
+See \fBlargefile\fR(7) for the description of the behavior of \fBtest\fR when
encountering files greater than or equal to 2 Gbyte (2^31 bytes).
.sp
.LP
@@ -1012,7 +1012,7 @@ fi
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBtest\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.SH EXIT STATUS
@@ -1049,7 +1049,7 @@ An error occurred.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.SS "/usr/bin/test, csh, ksh, sh"
.sp
@@ -1062,7 +1062,7 @@ ATTRIBUTE TYPE ATTRIBUTE VALUE
_
Interface Stability Committed
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SS "ksh93"
@@ -1081,8 +1081,15 @@ Interface Stability Uncommitted
.SH SEE ALSO
.sp
.LP
-\fBcsh\fR(1), \fBksh\fR(1), \fBksh93\fR(1), \fBsh\fR(1), \fBtest\fR(1B),
-\fBattributes\fR(5), \fBenviron\fR(5), \fBlargefile\fR(5), \fBstandards\fR(5)
+.BR csh (1),
+.BR ksh (1),
+.BR ksh93 (1),
+.BR sh (1),
+.BR test (1B),
+.BR attributes (7),
+.BR environ (7),
+.BR largefile (7),
+.BR standards (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man1/tftp.1 b/usr/src/man/man1/tftp.1
index 6f59363622..732b6aa74d 100644
--- a/usr/src/man/man1/tftp.1
+++ b/usr/src/man/man1/tftp.1
@@ -84,8 +84,8 @@ form is used, the specified host becomes the default for future transfers. If
the remote-directory form is used, the remote host is assumed to be running the
UNIX system.
.sp
-The \fIhost\fR can be a host name (see \fBhosts\fR(4)) or an IPv4 or IPv6
-address string (see \fBinet\fR(7P) or \fBinet6\fR(7P)). Since IPv6 addresses
+The \fIhost\fR can be a host name (see \fBhosts\fR(5)) or an IPv4 or IPv6
+address string (see \fBinet\fR(4P) or \fBinet6\fR(4P)). Since IPv6 addresses
already contain \fB":"s\fR, the \fIhost\fR should be enclosed in square
brackets when an IPv6 address is used. Otherwise, the first occurrence of a
colon will be interpreted as the separator between the \fIhost\fR and the
@@ -98,7 +98,7 @@ colon will be interpreted as the separator between the \fIhost\fR and the
.in -2
Files may be written only if they already exist and are publicly writable. See
-\fBin.tftpd\fR(1M).
+\fBin.tftpd\fR(8).
.RE
.sp
@@ -258,8 +258,11 @@ Print help information.
.SH SEE ALSO
.sp
.LP
-\fBin.tftpd\fR(1M), \fBhosts\fR(4), \fBattributes\fR(5), \fBinet\fR(7P),
-\fBinet6\fR(7P)
+.BR inet (4P),
+.BR inet6 (4P),
+.BR hosts (5),
+.BR attributes (7),
+.BR in.tftpd (8)
.sp
.LP
Malkin, G. and Harkin, A. \fIRFC 2347, TFTP Option Extension\fR. The Internet
diff --git a/usr/src/man/man1/time.1 b/usr/src/man/man1/time.1
index 0538d293cc..ac90af2710 100644
--- a/usr/src/man/man1/time.1
+++ b/usr/src/man/man1/time.1
@@ -209,7 +209,7 @@ sys 11:28.2
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBtime\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, \fBLC_NUMERIC\fR, \fBNLSPATH\fR, and
\fBPATH\fR.
@@ -249,7 +249,7 @@ An error occurred in the \fBtime\fR utility.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -265,8 +265,13 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBcsh\fR(1), \fBshell_builtins\fR(1), \fBtimex\fR(1), \fBtimes\fR(2),
-\fBattributes\fR(5), \fBenviron\fR(5), \fBstandards\fR(5)
+.BR csh (1),
+.BR shell_builtins (1),
+.BR timex (1),
+.BR times (2),
+.BR attributes (7),
+.BR environ (7),
+.BR standards (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man1/times.1 b/usr/src/man/man1/times.1
index 9979a8865f..da38de9480 100644
--- a/usr/src/man/man1/times.1
+++ b/usr/src/man/man1/times.1
@@ -60,4 +60,7 @@ splitting and file name generation are not performed.
.SH SEE ALSO
.sp
.LP
-\fBksh\fR(1), \fBsh\fR(1), \fBtime\fR(1), \fBattributes\fR(5)
+.BR ksh (1),
+.BR sh (1),
+.BR time (1),
+.BR attributes (7)
diff --git a/usr/src/man/man1/timex.1 b/usr/src/man/man1/timex.1
index f43e19844c..de173a8088 100644
--- a/usr/src/man/man1/timex.1
+++ b/usr/src/man/man1/timex.1
@@ -151,8 +151,12 @@ sub-shell:
.SH SEE ALSO
.sp
.LP
-\fBsar\fR(1), \fBtime\fR(1), \fBexec\fR(2), \fBfork\fR(2), \fBtimes\fR(2),
-\fBattributes\fR(5)
+.BR sar (1),
+.BR time (1),
+.BR exec (2),
+.BR fork (2),
+.BR times (2),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man1/tip.1 b/usr/src/man/man1/tip.1
index f10639a1ff..6bc1dd1c12 100644
--- a/usr/src/man/man1/tip.1
+++ b/usr/src/man/man1/tip.1
@@ -931,8 +931,12 @@ initialization file
.SH SEE ALSO
.sp
.LP
-\fBcu\fR(1C), \fBmail\fR(1), \fBuucp\fR(1C), \fBvi\fR(1), \fBioctl\fR(2),
-\fBattributes\fR(5)
+.BR mail (1),
+.BR vi (1),
+.BR cu (1C),
+.BR uucp (1C),
+.BR ioctl (2),
+.BR attributes (7)
.SH BUGS
.sp
.LP
diff --git a/usr/src/man/man1/tnfdump.1 b/usr/src/man/man1/tnfdump.1
index 6093cf7dc4..160f2d9e89 100644
--- a/usr/src/man/man1/tnfdump.1
+++ b/usr/src/man/man1/tnfdump.1
@@ -340,5 +340,9 @@ unsigned arguments. Their values are printed in hexadecimal when requested by
option \fB-x\fR.
.SH SEE ALSO
-\fBprex\fR(1), \fBgethrtime\fR(3C), \fBTNF_DECLARE_RECORD\fR(3TNF),
-\fBTNF_PROBE\fR(3TNF), \fBtnf_process_disable\fR(3TNF), \fBattributes\fR(5)
+.BR prex (1),
+.BR gethrtime (3C),
+.BR TNF_DECLARE_RECORD (3TNF),
+.BR TNF_PROBE (3TNF),
+.BR tnf_process_disable (3TNF),
+.BR attributes (7)
diff --git a/usr/src/man/man1/tnfxtract.1 b/usr/src/man/man1/tnfxtract.1
index 415c8e1fdf..df74485bdc 100644
--- a/usr/src/man/man1/tnfxtract.1
+++ b/usr/src/man/man1/tnfxtract.1
@@ -133,5 +133,8 @@ An error occurred.
.SH SEE ALSO
.sp
.LP
-\fBprex\fR(1), \fBtnfdump\fR(1), \fBsavecore\fR(1M),
-\fBtnf_kernel_probes\fR(4), \fBattributes\fR(5)
+.BR prex (1),
+.BR tnfdump (1),
+.BR tnf_kernel_probes (5),
+.BR attributes (7),
+.BR savecore (8)
diff --git a/usr/src/man/man1/touch.1 b/usr/src/man/man1/touch.1
index 81191a19d5..f7590dfe91 100644
--- a/usr/src/man/man1/touch.1
+++ b/usr/src/man/man1/touch.1
@@ -432,10 +432,10 @@ first operand is assumed to be a \fIfile\fR operand.
.RE
.SH USAGE
-See \fBlargefile\fR(5) for the description of the behavior of \fBtouch\fR when
+See \fBlargefile\fR(7) for the description of the behavior of \fBtouch\fR when
encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
.SH ENVIRONMENT VARIABLES
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBtouch\fR: \fBLANG\fR, \fBLC_ALL\fR, \fBLANG\fR,
\fBLC_ALL\fR, \fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.sp
@@ -474,7 +474,7 @@ which the times could not be successfully modified.
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -488,12 +488,16 @@ CSI Enabled
_
Interface Stability Committed
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
-\fBfutimens\fR(2), \fBstat\fR(2), \fBattributes\fR(5), \fBenviron\fR(5),
-\fBlargefile\fR(5), \fBstandards\fR(5)
+.BR futimens (2),
+.BR stat (2),
+.BR attributes (7),
+.BR environ (7),
+.BR largefile (7),
+.BR standards (7)
.SH NOTES
Users familiar with the BSD environment find that for the \fBtouch\fR utility,
the \fB-f\fR option is accepted but ignored. The \fB-f\fR option is unnecessary
diff --git a/usr/src/man/man1/tput.1 b/usr/src/man/man1/tput.1
index e21dee646b..e530611785 100644
--- a/usr/src/man/man1/tput.1
+++ b/usr/src/man/man1/tput.1
@@ -112,7 +112,7 @@ The following operands are supported:
.ad
.RS 12n
Indicates the capability attribute from the \fBterminfo\fR database. See
-\fBterminfo\fR(4) for a complete list of capabilities and the \fIcapname\fR
+\fBterminfo\fR(5) for a complete list of capabilities and the \fIcapname\fR
associated with each.
.sp
The following strings will be supported as operands by the implementation in
@@ -183,7 +183,7 @@ to \fBinit\fR.
If the \fBterminfo\fR database is present and an entry for the user's terminal
exists (see \fB-T\fR\fItype\fR above), then the long name of the terminal will
be put out. The long name is the last name in the first line of the terminal's
-description in the \fBterminfo\fR database (see \fBterm\fR(5)).
+description in the \fBterminfo\fR database (see \fBterm\fR(7)).
.RE
.RE
@@ -207,7 +207,7 @@ the attribute as a number.
This example initializes the terminal according to the type of terminal in the
environment variable \fBTERM\fR. This command should be included in
everyone's .profile after the environment variable \fBTERM\fR has been exported, as
-illustrated on the \fBprofile\fR(4) manual page.
+illustrated on the \fBprofile\fR(5) manual page.
.sp
.in +2
@@ -373,7 +373,7 @@ example% \fBtput -S <<!
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBtput\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.sp
@@ -531,7 +531,7 @@ database. For instance, \fBtput\fR \fB-T450\fR lines and \fBtput\fR
.RS 4n
Tab settings for some terminals, in a format appropriate to be output to the
terminal (escape sequences that set margins and tabs). For more information,
-see the "Tabs and Initialization" section of \fBterminfo\fR(4)
+see the "Tabs and Initialization" section of \fBterminfo\fR(5)
.RE
.sp
@@ -547,7 +547,7 @@ compiled terminal description database
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -563,6 +563,14 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBclear\fR(1), \fBsh\fR(1), \fBstty\fR(1), \fBtabs\fR(1),
-\fBcurses\fR(3CURSES), \fBprofile\fR(4), \fBterminfo\fR(4),
-\fBattributes\fR(5), \fBenviron\fR(5), \fBstandards\fR(5), \fBterm\fR(5)
+.BR clear (1),
+.BR sh (1),
+.BR stty (1),
+.BR tabs (1),
+.BR curses (3CURSES),
+.BR profile (5),
+.BR terminfo (5),
+.BR attributes (7),
+.BR environ (7),
+.BR standards (7),
+.BR term (7)
diff --git a/usr/src/man/man1/tr.1 b/usr/src/man/man1/tr.1
index a64186b42d..62f3dce438 100644
--- a/usr/src/man/man1/tr.1
+++ b/usr/src/man/man1/tr.1
@@ -403,7 +403,7 @@ enough to extend the \fIstring2\fR-based sequence to the length of the
.RE
.SH USAGE
-See \fBlargefile\fR(5) for the description of the behavior of \fBtr\fR when
+See \fBlargefile\fR(7) for the description of the behavior of \fBtr\fR when
encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
.SH EXAMPLES
\fBExample 1 \fRCreating a list of words
@@ -459,7 +459,7 @@ and written to \fBfile2\fR.
.sp
.SH ENVIRONMENT VARIABLES
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBtr\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_COLLATE\fR, \fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.SH EXIT STATUS
@@ -483,7 +483,7 @@ An error occurred.
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.SS "/usr/bin/tr"
.TS
box;
@@ -505,7 +505,7 @@ CSI Enabled
_
Interface Stability Committed
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SS "/usr/xpg6/bin/tr"
@@ -519,13 +519,21 @@ CSI Enabled
_
Interface Stability Committed
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
-\fBed\fR(1), \fBsed\fR(1), \fBsh\fR(1), \fBtolower\fR(3C), \fBtoupper\fR(3C),
-\fBascii\fR(5), \fBattributes\fR(5), \fBenviron\fR(5), \fBlargefile\fR(5),
-\fBregex\fR(5), \fBstandards\fR(5)
+.BR ed (1),
+.BR sed (1),
+.BR sh (1),
+.BR tolower (3C),
+.BR toupper (3C),
+.BR ascii (7),
+.BR attributes (7),
+.BR environ (7),
+.BR largefile (7),
+.BR regex (7),
+.BR standards (7)
.SH NOTES
Unlike some previous versions, \fB/usr/xpg4/bin/tr\fR correctly processes
\fBNUL\fR characters in its input stream. \fBNUL\fR characters can be stripped
diff --git a/usr/src/man/man1/trap.1 b/usr/src/man/man1/trap.1
index 86d32516de..f0a93aa36e 100644
--- a/usr/src/man/man1/trap.1
+++ b/usr/src/man/man1/trap.1
@@ -257,5 +257,10 @@ splitting and file name generation are not performed.
.SH SEE ALSO
.sp
.LP
-\fBcsh\fR(1), \fBeval\fR(1), \fBexit\fR(1), \fBksh\fR(1), \fBksh93\fR(1),
-\fBsh\fR(1), \fBattributes\fR(5)
+.BR csh (1),
+.BR eval (1),
+.BR exit (1),
+.BR ksh (1),
+.BR ksh93 (1),
+.BR sh (1),
+.BR attributes (7)
diff --git a/usr/src/man/man1/troff.1 b/usr/src/man/man1/troff.1
index cf8863409d..0695616dec 100644
--- a/usr/src/man/man1/troff.1
+++ b/usr/src/man/man1/troff.1
@@ -79,7 +79,7 @@ Read standard input after all input files are exhausted.
.RS 10n
Prepend the macro file \fB/usr/share/lib/tmac/\fR\fIname\fR to the input
\fIfilename\fRs. Note: most references to macro packages include the leading
-\fIm\fR as part of the name; for example, the \fBman\fR(5) macros reside in
+\fIm\fR as part of the name; for example, the \fBman\fR(7) macros reside in
\fB/usr/share/lib/tmac/an\fR. The macro directory can be changed by setting the
\fBTROFFMACS\fR environment variable to a specific path. Be certain to include
the trailing '\|/\|' (slash) at the end of the path.
@@ -247,9 +247,18 @@ terminal driving tables for \fBnroff\fR
.SH SEE ALSO
.sp
.LP
-\fBchecknr\fR(1), \fBcol\fR(1), \fBdpost\fR(1), \fBeqn\fR(1), \fBlp\fR(1),
-\fBman\fR(1), \fBnroff\fR(1), \fBtbl\fR(1), \fBattributes\fR(5), \fBman\fR(5),
-\fBme\fR(5), \fBms\fR(5)
+.BR checknr (1),
+.BR col (1),
+.BR dpost (1),
+.BR eqn (1),
+.BR lp (1),
+.BR man (1),
+.BR nroff (1),
+.BR tbl (1),
+.BR attributes (7),
+.BR man (7),
+.BR me (7),
+.BR ms (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man1/true.1 b/usr/src/man/man1/true.1
index a193b656cb..c6e3bd5103 100644
--- a/usr/src/man/man1/true.1
+++ b/usr/src/man/man1/true.1
@@ -86,7 +86,7 @@ which executes \fIcommand\fR forever.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -102,4 +102,6 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBsh\fR(1), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR sh (1),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man1/truss.1 b/usr/src/man/man1/truss.1
index 0167f88a0e..2aed7e239c 100644
--- a/usr/src/man/man1/truss.1
+++ b/usr/src/man/man1/truss.1
@@ -27,7 +27,7 @@ call arguments are displayed symbolically when possible using defines from
relevant system headers. For any path name pointer argument, the pointed-to
string is displayed. Error returns are reported using the error code names
described in \fBIntro\fR(3). If, in the case of an error, the kernel reports a
-missing privilege, a privilege name as described in \fBprivileges\fR(5) is
+missing privilege, a privilege name as described in \fBprivileges\fR(7) is
reported in square brackets (\fB[ ]\fR) after the error code name.
.sp
.LP
@@ -585,7 +585,7 @@ example$ \fBtruss -u a.out -u ld:: -u :: ...\fR
.sp
.LP
The following example verbosely traces the system call activity of process #1,
-\fBinit\fR(1M) (if you are a privileged user):
+\fBinit\fR(8) (if you are a privileged user):
.sp
.in +2
@@ -610,11 +610,28 @@ Process files
.SH SEE ALSO
.LP
-\fBdate\fR(1), \fBfind\fR(1), \fBproc\fR(1), \fBps\fR(1), \fBsh\fR(1),
-\fBspell\fR(1), \fBinit\fR(1M), \fBIntro\fR(3), \fBexec\fR(2), \fBfork\fR(2),
-\fBlseek\fR(2), \fBopen\fR(2), \fBread\fR(2), \fBtime\fR(2), \fBvfork\fR(2),
-\fBwrite\fR(2), \fBctime\fR(3C), \fBsignal.h\fR(3HEAD), \fBproc\fR(4),
-\fBattributes\fR(5), \fBprivileges\fR(5), \fBthreads\fR(5)
+.BR date (1),
+.BR find (1),
+.BR proc (1),
+.BR ps (1),
+.BR sh (1),
+.BR spell (1),
+.BR exec (2),
+.BR fork (2),
+.BR lseek (2),
+.BR open (2),
+.BR read (2),
+.BR time (2),
+.BR vfork (2),
+.BR write (2),
+.BR Intro (3),
+.BR ctime (3C),
+.BR signal.h (3HEAD),
+.BR proc (5),
+.BR attributes (7),
+.BR privileges (7),
+.BR threads (7),
+.BR init (8)
.sp
.LP
\fIman pages section 2: System Calls\fR
@@ -643,7 +660,7 @@ independently of \fBtruss\fR, from the point of the \fBexec()\fR.
To avoid collisions with other controlling processes, \fBtruss\fR does not
trace a process that it detects is being controlled by another process via the
\fB/proc\fR interface. This allows \fBtruss\fR to be applied to
-\fBproc\fR(4)-based debuggers as well as to another instance of itself.
+\fBproc\fR(5)-based debuggers as well as to another instance of itself.
.sp
.LP
The trace output contains tab characters under the assumption that standard tab
diff --git a/usr/src/man/man1/tsort.1 b/usr/src/man/man1/tsort.1
index b47158ae57..7bef9718ab 100644
--- a/usr/src/man/man1/tsort.1
+++ b/usr/src/man/man1/tsort.1
@@ -118,7 +118,7 @@ g
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBtsort\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.SH EXIT STATUS
@@ -146,7 +146,7 @@ An error occurred.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -162,7 +162,10 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBlorder\fR(1), \fBattributes\fR(5), \fBenviron\fR(5), \fBstandards\fR(5)
+.BR lorder (1),
+.BR attributes (7),
+.BR environ (7),
+.BR standards (7)
.SH DIAGNOSTICS
.sp
.LP
diff --git a/usr/src/man/man1/tty.1 b/usr/src/man/man1/tty.1
index 540f36c1f0..08a3ce6a05 100644
--- a/usr/src/man/man1/tty.1
+++ b/usr/src/man/man1/tty.1
@@ -130,7 +130,7 @@ instead.
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBtty\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.SH EXIT STATUS
@@ -167,7 +167,7 @@ An error occurred.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -181,14 +181,17 @@ CSI Enabled
_
Interface Stability Committed
_
-Standard \fBstandards\fR(5).
+Standard \fBstandards\fR(7).
.TE
.SH SEE ALSO
.sp
.LP
-\fBisatty\fR(3C), \fBttyname\fR(3C), \fBattributes\fR(5), \fBenviron\fR(5),
-\fBstandards\fR(5)
+.BR isatty (3C),
+.BR ttyname (3C),
+.BR attributes (7),
+.BR environ (7),
+.BR standards (7)
.SH DIAGNOSTICS
.sp
.ne 2
diff --git a/usr/src/man/man1/type.1 b/usr/src/man/man1/type.1
index 06b57d9d3d..c64e5e23c3 100644
--- a/usr/src/man/man1/type.1
+++ b/usr/src/man/man1/type.1
@@ -79,7 +79,7 @@ A name to be interpreted.
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBtype\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.sp
@@ -116,7 +116,7 @@ An error occurred.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -132,4 +132,7 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBtypeset\fR(1), \fBattributes\fR(5), \fBenviron\fR(5), \fBstandards\fR(5)
+.BR typeset (1),
+.BR attributes (7),
+.BR environ (7),
+.BR standards (7)
diff --git a/usr/src/man/man1/typeset.1 b/usr/src/man/man1/typeset.1
index 9fdacf82c8..b3c156f8a0 100644
--- a/usr/src/man/man1/typeset.1
+++ b/usr/src/man/man1/typeset.1
@@ -723,5 +723,9 @@ splitting and file name generation are not performed.
.SH SEE ALSO
.sp
.LP
-\fBksh\fR(1), \fBksh93\fR(1), \fBreadonly\fR(1), \fBset\fR(1), \fBsh\fR(1),
-\fBattributes\fR(5)
+.BR ksh (1),
+.BR ksh93 (1),
+.BR readonly (1),
+.BR set (1),
+.BR sh (1),
+.BR attributes (7)
diff --git a/usr/src/man/man1/ul.1 b/usr/src/man/man1/ul.1
index 261a19b20a..34f91ab320 100644
--- a/usr/src/man/man1/ul.1
+++ b/usr/src/man/man1/ul.1
@@ -64,7 +64,10 @@ is present in an \fBnroff\fR(1) output stream on a \fBCRT-terminal.\fR
.SH SEE ALSO
.sp
.LP
-\fBcat\fR(1), \fBman\fR(1), \fBnroff\fR(1), \fBattributes\fR(5)
+.BR cat (1),
+.BR man (1),
+.BR nroff (1),
+.BR attributes (7)
.SH BUGS
.sp
.LP
diff --git a/usr/src/man/man1/umask.1 b/usr/src/man/man1/umask.1
index 4d03e1fca8..4a4719ea26 100644
--- a/usr/src/man/man1/umask.1
+++ b/usr/src/man/man1/umask.1
@@ -136,7 +136,7 @@ If \fIooo\fR is omitted, the current value of the mask is printed.
.ie t \(bu
.el o
\fBumask\fR can be included in the user's \fB\&.profile\fR (see
-\fBprofile\fR(4)) and invoked at login to automatically set the user's
+\fBprofile\fR(5)) and invoked at login to automatically set the user's
permissions on files or directories created.
.RE
.SS "csh"
@@ -355,7 +355,7 @@ from being interpreted as an option.
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBumask\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_COLLATE\fR\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.SH EXIT STATUS
@@ -384,7 +384,7 @@ An error occurred.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.SS "/usr/bin/umask, csh, ksh, sh"
.sp
@@ -414,6 +414,15 @@ Interface Stability External
.SH SEE ALSO
.sp
.LP
-\fBchmod\fR(1), \fBcsh\fR(1), \fBksh\fR(1), \fBksh93\fR(1), \fBsh\fR(1),
-\fBchmod\fR(2), \fBcreat\fR(2), \fBumask\fR(2), \fBprofile\fR(4),
-\fBattributes\fR(5), \fBenviron\fR(5), \fBstandards\fR(5)
+.BR chmod (1),
+.BR csh (1),
+.BR ksh (1),
+.BR ksh93 (1),
+.BR sh (1),
+.BR chmod (2),
+.BR creat (2),
+.BR umask (2),
+.BR profile (5),
+.BR attributes (7),
+.BR environ (7),
+.BR standards (7)
diff --git a/usr/src/man/man1/uname.1 b/usr/src/man/man1/uname.1
index 12ed819805..a9b7c397bb 100644
--- a/usr/src/man/man1/uname.1
+++ b/usr/src/man/man1/uname.1
@@ -108,7 +108,7 @@ is an implementation specific value defined in
Only the super-user is allowed this capability.
This change does not persist across reboots of the system.
See
-.Xr nodename 4
+.Xr nodename 5
for details of how to change a host's name permanently.
.It Fl v
Prints the operating system version.
@@ -140,7 +140,7 @@ character.
.El
.Sh ENVIRONMENT VARIABLES
See
-.Xr environ 5
+.Xr environ 7
for descriptions of the following environment variables that affect the
execution of
.Nm :
@@ -154,10 +154,10 @@ and
.Xr isalist 1 ,
.Xr sysinfo 2 ,
.Xr uname 2 ,
-.Xr nodename 4 ,
-.Xr attributes 5 ,
-.Xr environ 5 ,
-.Xr standards 5
+.Xr nodename 5 ,
+.Xr attributes 7 ,
+.Xr environ 7 ,
+.Xr standards 7
.Sh NOTES
Independent software vendors (ISVs) and others who need to determine detailed
characteristics of the platform on which their software is either being
diff --git a/usr/src/man/man1/unifdef.1 b/usr/src/man/man1/unifdef.1
index 9bb36bf6d0..f11d1bd4db 100644
--- a/usr/src/man/man1/unifdef.1
+++ b/usr/src/man/man1/unifdef.1
@@ -133,7 +133,8 @@ Operation failed.
.SH SEE ALSO
.LP
-\fBdiff\fR(1), \fBattributes\fR(5)
+.BR diff (1),
+.BR attributes (7)
.SH DIAGNOSTICS
.ne 2
.na
diff --git a/usr/src/man/man1/uniq.1 b/usr/src/man/man1/uniq.1
index 74d99085ae..102a627081 100644
--- a/usr/src/man/man1/uniq.1
+++ b/usr/src/man/man1/uniq.1
@@ -429,7 +429,7 @@ example%
.sp
.SH ENVIRONMENT VARIABLES
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBuniq\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.SH EXIT STATUS
@@ -453,7 +453,7 @@ An error occurred.
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.SS "/usr/bin/uniq"
.TS
box;
@@ -465,7 +465,7 @@ CSI Enabled
_
Interface Stability Committed
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SS "ksh93"
@@ -483,5 +483,9 @@ Interface Stability See below.
The \fBksh93\fR built-in binding to \fB/bin\fR and \fB/usr/bin\fR is Volatile.
The built-in interfaces are Uncommitted.
.SH SEE ALSO
-\fBcomm\fR(1), \fBksh93\fR(1), \fBsort\fR(1),
-\fBattributes\fR(5), \fBenviron\fR(5), \fBstandards\fR(5)
+.BR comm (1),
+.BR ksh93 (1),
+.BR sort (1),
+.BR attributes (7),
+.BR environ (7),
+.BR standards (7)
diff --git a/usr/src/man/man1/units.1 b/usr/src/man/man1/units.1
index e7acfbe175..aef88bf9e4 100644
--- a/usr/src/man/man1/units.1
+++ b/usr/src/man/man1/units.1
@@ -139,4 +139,4 @@ list of units, type:
.SH SEE ALSO
.sp
.LP
-\fBattributes\fR(5)
+.BR attributes (7)
diff --git a/usr/src/man/man1/unix2dos.1 b/usr/src/man/man1/unix2dos.1
index c86781becb..de3f9b6c36 100644
--- a/usr/src/man/man1/unix2dos.1
+++ b/usr/src/man/man1/unix2dos.1
@@ -137,7 +137,9 @@ The new file in \fBDOS\fR format that has been converted from the original
.SH SEE ALSO
.sp
.LP
-\fBdos2unix\fR(1), \fBls\fR(1), \fBattributes\fR(5)
+.BR dos2unix (1),
+.BR ls (1),
+.BR attributes (7)
.SH DIAGNOSTICS
.sp
.ne 2
diff --git a/usr/src/man/man1/uptime.1 b/usr/src/man/man1/uptime.1
index 5f33575231..597d6c98c4 100644
--- a/usr/src/man/man1/uptime.1
+++ b/usr/src/man/man1/uptime.1
@@ -34,7 +34,10 @@ Below is an example of the output \fBuptime\fR provides:
.SH SEE ALSO
.sp
.LP
-\fBw\fR(1), \fBwho\fR(1), \fBwhodo\fR(1M), \fBattributes\fR(5)
+.BR w (1),
+.BR who (1),
+.BR attributes (7),
+.BR whodo (8)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man1/vacation.1 b/usr/src/man/man1/vacation.1
index 45386d2944..7f7f0003f9 100644
--- a/usr/src/man/man1/vacation.1
+++ b/usr/src/man/man1/vacation.1
@@ -291,5 +291,9 @@ A list of senders is kept in the \fBdbm\fR format files \fB\&.vacation.pag\fR
and \fB\&.vacation.dir\fR in your home directory. These files are \fBdbm\fR
files and cannot be viewed directly with text editors.
.SH SEE ALSO
-\fBvi\fR(1), \fBsendmail\fR(1M), \fBgetusershell\fR(3C),
-\fBaliases\fR(4), \fBshells\fR(4), \fBattributes\fR(5)
+.BR vi (1),
+.BR getusershell (3C),
+.BR aliases (5),
+.BR shells (5),
+.BR attributes (7),
+.BR sendmail (8)
diff --git a/usr/src/man/man1/vgrind.1 b/usr/src/man/man1/vgrind.1
index 2428245f37..d5e37e10f2 100644
--- a/usr/src/man/man1/vgrind.1
+++ b/usr/src/man/man1/vgrind.1
@@ -302,8 +302,13 @@ macro package
.SH SEE ALSO
.sp
.LP
-\fBcsh\fR(1), \fBctags\fR(1), \fBeqn\fR(1), \fBtbl\fR(1), \fBtroff\fR(1),
-\fBattributes\fR(5), \fBvgrindefs\fR(5)
+.BR csh (1),
+.BR ctags (1),
+.BR eqn (1),
+.BR tbl (1),
+.BR troff (1),
+.BR attributes (7),
+.BR vgrindefs (7)
.SH BUGS
.sp
.LP
diff --git a/usr/src/man/man1/volcheck.1 b/usr/src/man/man1/volcheck.1
index abcc463278..94fcd8db31 100644
--- a/usr/src/man/man1/volcheck.1
+++ b/usr/src/man/man1/volcheck.1
@@ -119,7 +119,9 @@ volume management control port
.SH SEE ALSO
.sp
.LP
-\fBeject\fR(1), \fBrmmount\fR(1M), \fBattributes\fR(5)
+.BR eject (1),
+.BR attributes (7),
+.BR rmmount (8)
.SH WARNINGS
.sp
.LP
diff --git a/usr/src/man/man1/volrmmount.1 b/usr/src/man/man1/volrmmount.1
index 006dedfd52..34befd2ae4 100644
--- a/usr/src/man/man1/volrmmount.1
+++ b/usr/src/man/man1/volrmmount.1
@@ -20,7 +20,7 @@ volrmmount \- call rmmount to mount or unmount media
.SH DESCRIPTION
.sp
.LP
-The \fBvolrmmount\fR utility calls \fBrmmount\fR(1M) to, in effect, simulate an
+The \fBvolrmmount\fR utility calls \fBrmmount\fR(8) to, in effect, simulate an
insertion (\fB-i\fR) or an ejection (\fB-e\fR). Simulating an insertion often
means that \fBrmmount\fR will mount the media. Conversely, simulating an
ejection often means that \fBrmmount\fR will unmount the media. However, these
@@ -179,5 +179,8 @@ volume management control port
.SH SEE ALSO
.sp
.LP
-\fBcpio\fR(1), \fBeject\fR(1), \fBtar\fR(1), \fBrmmount\fR(1M),
-\fBattributes\fR(5)
+.BR cpio (1),
+.BR eject (1),
+.BR tar (1),
+.BR attributes (7),
+.BR rmmount (8)
diff --git a/usr/src/man/man1/vtfontcvt.1 b/usr/src/man/man1/vtfontcvt.1
index e81073207f..18cc63054b 100644
--- a/usr/src/man/man1/vtfontcvt.1
+++ b/usr/src/man/man1/vtfontcvt.1
@@ -84,4 +84,4 @@ Font width is set automatically for HEX files that have a
comment before any font data.
.El
.Sh SEE ALSO
-.Xr consadm 1M
+.Xr consadm 8
diff --git a/usr/src/man/man1/w.1 b/usr/src/man/man1/w.1
index 7803ee2f49..47e71b0f35 100644
--- a/usr/src/man/man1/w.1
+++ b/usr/src/man/man1/w.1
@@ -117,7 +117,7 @@ ralph console 7:10am 1 10:05 4:31 w
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBw\fR: \fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and
\fBLC_TIME\fR.
.SH FILES
@@ -133,8 +133,12 @@ user and accounting information
.SH SEE ALSO
.sp
.LP
-\fBps\fR(1), \fBwho\fR(1), \fBwhodo\fR(1M), \fButmpx\fR(4),
-\fBattributes\fR(5), \fBenviron\fR(5)
+.BR ps (1),
+.BR who (1),
+.BR utmpx (5),
+.BR attributes (7),
+.BR environ (7),
+.BR whodo (8)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man1/wait.1 b/usr/src/man/man1/wait.1
index 67e87e8a95..97e7d8c0ed 100644
--- a/usr/src/man/man1/wait.1
+++ b/usr/src/man/man1/wait.1
@@ -295,7 +295,7 @@ wait %%
.sp
.SH ENVIRONMENT VARIABLES
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBwait\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.SH EXIT STATUS
@@ -323,7 +323,7 @@ shell environment.
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -335,9 +335,15 @@ ATTRIBUTE TYPE ATTRIBUTE VALUE
_
Interface Stability Committed
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
-\fBcsh\fR(1), \fBjobs\fR(1), \fBksh\fR(1), \fBksh93\fR(1), \fBsh\fR(1),
-\fBattributes\fR(5), \fBenviron\fR(5), \fBstandards\fR(5)
+.BR csh (1),
+.BR jobs (1),
+.BR ksh (1),
+.BR ksh93 (1),
+.BR sh (1),
+.BR attributes (7),
+.BR environ (7),
+.BR standards (7)
diff --git a/usr/src/man/man1/wc.1 b/usr/src/man/man1/wc.1
index 2ee620a56e..358ee45a23 100644
--- a/usr/src/man/man1/wc.1
+++ b/usr/src/man/man1/wc.1
@@ -260,12 +260,12 @@ standard input is used.
.SH USAGE
.sp
.LP
-See \fBlargefile\fR(5) for the description of the behavior of \fBwc\fR when
+See \fBlargefile\fR(7) for the description of the behavior of \fBwc\fR when
encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBwc\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.SH EXIT STATUS
@@ -290,7 +290,7 @@ An error occurred.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.SS "/usr/bin/wc"
.sp
@@ -305,7 +305,7 @@ CSI Enabled
_
Interface Stability Committed
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SS "ksh93"
@@ -328,6 +328,13 @@ The built-in interfaces are Uncommitted.
.SH SEE ALSO
.sp
.LP
-\fBcksum\fR(1), \fBksh93\fR(1), \fBisspace\fR(3C), \fBiswalpha\fR(3C),
-\fBiswspace\fR(3C), \fBsetlocale\fR(3C), \fBattributes\fR(5), \fBenviron\fR(5),
-\fBlargefile\fR(5), \fBstandards\fR(5)
+.BR cksum (1),
+.BR ksh93 (1),
+.BR isspace (3C),
+.BR iswalpha (3C),
+.BR iswspace (3C),
+.BR setlocale (3C),
+.BR attributes (7),
+.BR environ (7),
+.BR largefile (7),
+.BR standards (7)
diff --git a/usr/src/man/man1/which.1 b/usr/src/man/man1/which.1
index f1d7177dfa..5372d2ef91 100644
--- a/usr/src/man/man1/which.1
+++ b/usr/src/man/man1/which.1
@@ -71,7 +71,8 @@ source of aliases and path values
.SH SEE ALSO
.sp
.LP
-\fBcsh\fR(1), \fBattributes\fR(5)
+.BR csh (1),
+.BR attributes (7)
.SH DIAGNOSTICS
.sp
.LP
diff --git a/usr/src/man/man1/who.1 b/usr/src/man/man1/who.1
index 6c413c5cae..2d9d1dc3a4 100644
--- a/usr/src/man/man1/who.1
+++ b/usr/src/man/man1/who.1
@@ -99,7 +99,7 @@ The \fBwho\fR utility can list the user's name, terminal line, login time,
elapsed time since activity occurred on the line, and the process-ID of the
command interpreter (shell) for each current UNIX system user. It examines the
\fB/var/adm/utmpx\fR file to obtain its information. If \fIfile\fR is given,
-that file (which must be in \fButmpx\fR(4) format) is examined. Usually,
+that file (which must be in \fButmpx\fR(5) format) is examined. Usually,
\fIfile\fR will be \fB/var/adm/wtmpx\fR, which contains a history of all the
logins since the file was last created.
.sp
@@ -176,7 +176,7 @@ User's process id
\fB\fIcomment\fR \fR
.ad
.RS 12n
-Comment line in \fBinittab\fR(4)
+Comment line in \fBinittab\fR(5)
.RE
.sp
@@ -274,7 +274,7 @@ spawned by \fBinit\fR. The \fIname\fR field is the name of the program executed
by \fBinit\fR as found in \fB/sbin/inittab\fR. The \fIstate\fR, \fIline\fR, and
\fIidle\fR fields have no meaning. The \fIcomment\fR field shows the \fBid\fR
field of the line from \fB/sbin/inittab\fR that spawned this process. See
-\fBinittab\fR(4).
+\fBinittab\fR(5).
.RE
.sp
@@ -362,7 +362,7 @@ time is added to the end of the previous format.
.ad
.RS 7n
Indicates the last change to the system clock (using the \fBdate\fR utility) by
-\fBroot\fR. See \fBsu\fR(1M) and \fBdate\fR(1).
+\fBroot\fR. See \fBsu\fR(8) and \fBdate\fR(1).
.RE
.sp
@@ -382,7 +382,7 @@ the entry is marked \fBold\fR. This field is useful when trying to determine
whether a person is working at the terminal or not. The \fIpid\fR is the
process-ID of the user's shell. The \fIcomment\fR is the comment field
associated with this line as found in \fB/sbin/inittab\fR (see
-\fBinittab\fR(4)). This can contain information about where the terminal is
+\fBinittab\fR(5)). This can contain information about where the terminal is
located, the telephone number of the dataset, type of terminal if hard-wired,
and so forth.
.RE
@@ -417,7 +417,7 @@ users that \fBwho\fR uses by default.
.SH ENVIRONMENT VARIABLES
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBwho\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, \fBLC_TIME\fR, and \fBNLSPATH\fR.
.SH EXIT STATUS
@@ -470,7 +470,7 @@ Historic user and accounting information
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.SS "/usr/xpg4/bin/who"
.TS
box;
@@ -483,9 +483,16 @@ Interface Stability Standard
.SH SEE ALSO
.LP
-\fBdate\fR(1), \fBlogin\fR(1), \fBmesg\fR(1), \fBinit\fR(1M), \fBsu\fR(1M),
-\fBinittab\fR(4), \fButmpx\fR(4), \fBattributes\fR(5),
-\fBenviron\fR(5), \fBstandards\fR(5)
+.BR date (1),
+.BR login (1),
+.BR mesg (1),
+.BR inittab (5),
+.BR utmpx (5),
+.BR attributes (7),
+.BR environ (7),
+.BR standards (7),
+.BR init (8),
+.BR su (8)
.SH NOTES
.LP
\fBSuperuser:\fR After a shutdown to the single-user state, \fBwho\fR returns a
diff --git a/usr/src/man/man1/whocalls.1 b/usr/src/man/man1/whocalls.1
index 6c8d6b9c1a..a4fa9cbf39 100644
--- a/usr/src/man/man1/whocalls.1
+++ b/usr/src/man/man1/whocalls.1
@@ -70,7 +70,9 @@ Hello World
.SH SEE ALSO
.sp
.LP
-\fBld.so.1\fR(1), \fBsotruss\fR(1), \fBattributes\fR(5)
+.BR ld.so.1 (1),
+.BR sotruss (1),
+.BR attributes (7)
.sp
.LP
\fILinker and Libraries Guide\fR
diff --git a/usr/src/man/man1/write.1 b/usr/src/man/man1/write.1
index c5e0174a2f..1f2d77084d 100644
--- a/usr/src/man/man1/write.1
+++ b/usr/src/man/man1/write.1
@@ -203,7 +203,7 @@ Terminal identification in the same format provided by the \fBwho\fR utility.
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBwrite\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.SH EXIT STATUS
@@ -250,7 +250,7 @@ Bourne shell executable file
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -264,15 +264,23 @@ CSI Enabled
_
Interface Stability Committed
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.sp
.LP
-\fBmail\fR(1), \fBmesg\fR(1), \fBpr\fR(1), \fBsh\fR(1), \fBtalk\fR(1),
-\fBwho\fR(1), \fBsetuid\fR(2), \fBtermios\fR(3C), \fBattributes\fR(5),
-\fBenviron\fR(5), \fBstandards\fR(5)
+.BR mail (1),
+.BR mesg (1),
+.BR pr (1),
+.BR sh (1),
+.BR talk (1),
+.BR who (1),
+.BR setuid (2),
+.BR termios (3C),
+.BR attributes (7),
+.BR environ (7),
+.BR standards (7)
.SH DIAGNOSTICS
.sp
.ne 2
diff --git a/usr/src/man/man1/xargs.1 b/usr/src/man/man1/xargs.1
index 42e8ea4959..a6327c0401 100644
--- a/usr/src/man/man1/xargs.1
+++ b/usr/src/man/man1/xargs.1
@@ -294,7 +294,7 @@ The following operands are supported:
.ad
.RS 12n
The name of the utility to be invoked, found by search path using the
-\fBPATH\fR environment variable. (ee \fBenviron\fR(5).) If \fIutility\fR is
+\fBPATH\fR environment variable. (ee \fBenviron\fR(7).) If \fIutility\fR is
omitted, the default is the \fBecho\fR(1) utility. If the \fIutility\fR operand
names any of the special built-in utilities in \fBshell_builtins\fR(1), the
results are undefined.
@@ -419,7 +419,7 @@ example% \fBecho $* | xargs -n 2 diff\fR
.SH ENVIRONMENT VARIABLES
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBxargs\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_COLLATE\fR, \fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.sp
@@ -440,7 +440,7 @@ the behavior of ranges, equivalence classes, and multi-character collating
elements used in the expression defined for \fByesexpr\fR. The locale specified
in \fBLC_CTYPE\fR determines the locale for interpretation of sequences of
bytes of text data a characters, the behavior of character classes used in the
-expression defined for the \fByesexpr\fR. See \fBlocale\fR(5).
+expression defined for the \fByesexpr\fR. See \fBlocale\fR(7).
.SH EXIT STATUS
.LP
The following exit values are returned:
@@ -491,7 +491,7 @@ signal, or an invocation of the utility exits with exit status \fB255\fR, the
remaining input.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -508,5 +508,8 @@ Interface Stability Standard
.SH SEE ALSO
.LP
-\fBecho\fR(1), \fBshell_builtins\fR(1), \fBattributes\fR(5), \fBenviron\fR(5),
-\fBstandards\fR(5)
+.BR echo (1),
+.BR shell_builtins (1),
+.BR attributes (7),
+.BR environ (7),
+.BR standards (7)
diff --git a/usr/src/man/man1/xgettext.1 b/usr/src/man/man1/xgettext.1
index c1286f01b5..96c4761edd 100644
--- a/usr/src/man/man1/xgettext.1
+++ b/usr/src/man/man1/xgettext.1
@@ -184,7 +184,9 @@ Print a help message on the standard output.
.SH SEE ALSO
.sp
.LP
-\fBmsgfmt\fR(1), \fBgettext\fR(3C), \fBattributes\fR(5)
+.BR msgfmt (1),
+.BR gettext (3C),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man1/xstr.1 b/usr/src/man/man1/xstr.1
index c81584bc94..35d2cae069 100644
--- a/usr/src/man/man1/xstr.1
+++ b/usr/src/man/man1/xstr.1
@@ -168,7 +168,8 @@ temp file when \fBxstr \fR\fIfilename\fR doesn't touch \fBstrings\fR
.SH SEE ALSO
.sp
.LP
-\fBmake\fR(1S), \fBattributes\fR(5)
+.BR make (1S),
+.BR attributes (7)
.SH BUGS
.sp
.LP
diff --git a/usr/src/man/man1/yacc.1 b/usr/src/man/man1/yacc.1
index c099f0c834..38eefbe4d5 100644
--- a/usr/src/man/man1/yacc.1
+++ b/usr/src/man/man1/yacc.1
@@ -272,7 +272,7 @@ int yyerror(const char *msg)
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fByacc\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.sp
@@ -370,7 +370,7 @@ parser prototype for C programs
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -382,13 +382,16 @@ ATTRIBUTE TYPE ATTRIBUTE VALUE
_
Interface Stability Committed
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.sp
.LP
-\fBlex\fR(1), \fBattributes\fR(5), \fBenviron\fR(5), \fBstandards\fR(5)
+.BR lex (1),
+.BR attributes (7),
+.BR environ (7),
+.BR standards (7)
.SH DIAGNOSTICS
.sp
.LP
diff --git a/usr/src/man/man1/yes.1 b/usr/src/man/man1/yes.1
index fb6a77c09a..b8b82d4ace 100644
--- a/usr/src/man/man1/yes.1
+++ b/usr/src/man/man1/yes.1
@@ -27,4 +27,4 @@ interactive response.
.SH SEE ALSO
.sp
.LP
-\fBattributes\fR(5)
+.BR attributes (7)
diff --git a/usr/src/man/man1/ypcat.1 b/usr/src/man/man1/ypcat.1
index b20390ae06..afc3613441 100644
--- a/usr/src/man/man1/ypcat.1
+++ b/usr/src/man/man1/ypcat.1
@@ -20,7 +20,7 @@ by \fImname\fR, which may be either a map name or a map nickname. Since
\fBypcat\fR uses the NIS network services, no NIS server is specified.
.sp
.LP
-Refer to \fBypfiles\fR(4) for an overview of the NIS name service.
+Refer to \fBypfiles\fR(5) for an overview of the NIS name service.
.SH OPTIONS
.sp
.ne 2
@@ -54,4 +54,6 @@ Display map nicknames.
.SH SEE ALSO
.sp
.LP
-\fBypmatch\fR(1), \fBypfiles\fR(4), \fBattributes\fR(5)
+.BR ypmatch (1),
+.BR ypfiles (5),
+.BR attributes (7)
diff --git a/usr/src/man/man1/ypmatch.1 b/usr/src/man/man1/ypmatch.1
index 0b17cc92c5..1111a83c6d 100644
--- a/usr/src/man/man1/ypmatch.1
+++ b/usr/src/man/man1/ypmatch.1
@@ -108,7 +108,9 @@ An error occurred.
.SH SEE ALSO
.sp
.LP
-\fBypcat\fR(1), \fBypfiles\fR(4), \fBattributes\fR(5)
+.BR ypcat (1),
+.BR ypfiles (5),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man1/yppasswd.1 b/usr/src/man/man1/yppasswd.1
index 594e5098b4..b3108c4c64 100644
--- a/usr/src/man/man1/yppasswd.1
+++ b/usr/src/man/man1/yppasswd.1
@@ -39,15 +39,20 @@ The \fBNIS\fR password daemon, \fBrpc.yppasswdd\fR must be running on your
\fBNIS\fR server in order for the new password to take effect.
.SH SEE ALSO
.LP
-\fBkeylogin\fR(1), \fBlogin\fR(1),
-\fBpasswd\fR(1), \fBgetpwnam\fR(3C), \fBgetspnam\fR(3C),
-\fBsecure_rpc\fR(3NSL), \fBnsswitch.conf\fR(4), \fBattributes\fR(5)
+.BR keylogin (1),
+.BR login (1),
+.BR passwd (1),
+.BR getpwnam (3C),
+.BR getspnam (3C),
+.BR secure_rpc (3NSL),
+.BR nsswitch.conf (5),
+.BR attributes (7)
.SH WARNINGS
.LP
Even after the user has successfully changed his or her password using this
command, the subsequent \fBlogin\fR(1) using the new password will be
successful only if the user's password and shadow information is obtained from
-NIS. See \fBgetpwnam\fR(3C), \fBgetspnam\fR(3C), and \fBnsswitch.conf\fR(4).
+NIS. See \fBgetpwnam\fR(3C), \fBgetspnam\fR(3C), and \fBnsswitch.conf\fR(5).
.SH NOTES
.LP
The use of \fByppasswd\fR is discouraged, as it is now only a wrapper around
diff --git a/usr/src/man/man1/ypwhich.1 b/usr/src/man/man1/ypwhich.1
index 957f1acd4f..1b3bb8a568 100644
--- a/usr/src/man/man1/ypwhich.1
+++ b/usr/src/man/man1/ypwhich.1
@@ -26,7 +26,7 @@ arguments, it gives the NIS server for the local machine. If \fBhostname\fR is
specified, that machine is queried to find out which NIS master it is using.
.sp
.LP
-Refer to \fBypfiles\fR(4) for an overview of the NIS name services.
+Refer to \fBypfiles\fR(5) for an overview of the NIS name services.
.SH OPTIONS
.sp
.ne 2
@@ -78,4 +78,5 @@ Version of \fBypbind\fR, V3 is default.
.SH SEE ALSO
.sp
.LP
-\fBypfiles\fR(4), \fBattributes\fR(5)
+.BR ypfiles (5),
+.BR attributes (7)
diff --git a/usr/src/man/man1/zlogin.1 b/usr/src/man/man1/zlogin.1
index 476faab86f..8d12560b96 100644
--- a/usr/src/man/man1/zlogin.1
+++ b/usr/src/man/man1/zlogin.1
@@ -62,7 +62,7 @@ If a utility is specified and the \fB-i\fR option is not specified, \fBzlogin\fR
operates in \fBnon-interactive mode\fR. This mode can be useful for script
authors since stdin, stdout, and stderr are preserved and the exit status of
\fIutility\fR is returned upon termination. In this mode, \fBzlogin\fR invokes
-\fBsu\fR(1M) in order to set up the user's environment and to provide a login
+\fBsu\fR(8) in order to set up the user's environment and to provide a login
environment.
.sp
The specified command is passed as a string and interpreted by a shell running
@@ -205,7 +205,7 @@ in another zone.
.ad
.RS 15n
"Safe" login mode. \fBzlogin\fR does minimal processing and does not invoke
-\fBlogin\fR(1) or \fBsu\fR(1M). The \fB-S\fR option can not be used if a
+\fBlogin\fR(1) or \fBsu\fR(8). The \fB-S\fR option can not be used if a
username is specified through the \fB-l\fR option, and cannot be used with
console logins. This mode should only be used to recover a damaged zone when
other forms of login have become impossible.
@@ -299,13 +299,13 @@ Permission denied, or failure to enter the zone.
\fBAny\fR
.ad
.RS 7n
-Return code from utility, or from \fBsu\fR(1M) if operating in non-interactive
+Return code from utility, or from \fBsu\fR(8) if operating in non-interactive
mode.
.RE
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -320,8 +320,14 @@ Interface Stability Evolving
.SH SEE ALSO
.LP
-\fBlogin\fR(1), \fBrsh\fR(1), \fBvi\fR(1), \fBsu\fR(1M), \fBzoneadm\fR(1M),
-\fBzonecfg\fR(1M), \fBattributes\fR(5), \fBzones\fR(5)
+.BR login (1),
+.BR rsh (1),
+.BR vi (1),
+.BR attributes (7),
+.BR zones (7),
+.BR su (8),
+.BR zoneadm (8),
+.BR zonecfg (8)
.SH NOTES
.LP
\fBzlogin\fR fails if its open files or any portion of its address space
diff --git a/usr/src/man/man1/zonename.1 b/usr/src/man/man1/zonename.1
index 3d75a3265b..301f2b441b 100644
--- a/usr/src/man/man1/zonename.1
+++ b/usr/src/man/man1/zonename.1
@@ -41,7 +41,7 @@ An error occurred.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -57,5 +57,8 @@ Interface Stability Evolving
.SH SEE ALSO
.sp
.LP
-\fBzlogin\fR(1), \fBzoneadm\fR(1M), \fBzonecfg\fR(1M), \fBattributes\fR(5),
-\fBzones\fR(5)
+.BR zlogin (1),
+.BR attributes (7),
+.BR zones (7),
+.BR zoneadm (8),
+.BR zonecfg (8)
diff --git a/usr/src/man/man1/zonestat.1 b/usr/src/man/man1/zonestat.1
index 505a4449c8..2f448ca45e 100644
--- a/usr/src/man/man1/zonestat.1
+++ b/usr/src/man/man1/zonestat.1
@@ -288,7 +288,7 @@ An interval of
.Em default
will use the configured interval of the zones
monitoring service - see
-.Xr zonestatd 1m .
+.Xr zonestatd 8 .
.Pp
Interval is required.
An interval of zero is not permitted.
@@ -360,7 +360,7 @@ The amount of resource used as a percent of the total resource.
The amount of cpu uses as a percentage of the total cpu in a processor-set to
which the zone is bound.
A zone can only have processes bound to multiple processor sets if it is the
-global zone, or if psrset(1m) psets are used.
+global zone, or if psrset(8) psets are used.
If multiple binding are found for a zone, its %PART will be the fraction used
of all bound psets.
For [total] and [system], %PART is the percent used of all cpus on the system.
@@ -471,15 +471,15 @@ zones, will be reported as used by
.Em system .
.Sh SEE ALSO
.Xr date 1 ,
-.Xr pooladm 1m ,
-.Xr poolcfg 1m ,
-.Xr prctl 1m ,
-.Xr rcapadm 1m ,
-.Xr zoneadm 1m ,
-.Xr zonecfg 1m ,
-.Xr zonestatd 1m ,
.Xr libzonestat 3lib ,
-.Xr timezone 4 ,
-.Xr privileges 5 ,
-.Xr resource_controls 5 ,
-.Xr zones 5
+.Xr timezone 5 ,
+.Xr privileges 7 ,
+.Xr resource_controls 7 ,
+.Xr zones 7 ,
+.Xr pooladm 8 ,
+.Xr poolcfg 8 ,
+.Xr prctl 8 ,
+.Xr rcapadm 8 ,
+.Xr zoneadm 8 ,
+.Xr zonecfg 8 ,
+.Xr zonestatd 8
diff --git a/usr/src/man/man1b/basename.1b b/usr/src/man/man1b/basename.1b
index a3f07d5e15..63052b9475 100644
--- a/usr/src/man/man1b/basename.1b
+++ b/usr/src/man/man1b/basename.1b
@@ -41,4 +41,5 @@ example% \fBmv a.out `basename $1 .c`\fR
.SH SEE ALSO
.sp
.LP
-\fBsh\fR(1), \fBattributes\fR(5)
+.BR sh (1),
+.BR attributes (7)
diff --git a/usr/src/man/man1b/biff.1b b/usr/src/man/man1b/biff.1b
index 44cb302561..f05b706584 100644
--- a/usr/src/man/man1b/biff.1b
+++ b/usr/src/man/man1b/biff.1b
@@ -69,4 +69,7 @@ User's profile file
.SH SEE ALSO
.sp
.LP
-\fBcsh\fR(1), \fBmail\fR(1), \fBsh\fR(1), \fBattributes\fR(5)
+.BR csh (1),
+.BR mail (1),
+.BR sh (1),
+.BR attributes (7)
diff --git a/usr/src/man/man1b/chown.1b b/usr/src/man/man1b/chown.1b
index 80f9100217..f27421998b 100644
--- a/usr/src/man/man1b/chown.1b
+++ b/usr/src/man/man1b/chown.1b
@@ -23,7 +23,7 @@ In the default case, only the super-user of the machine where the file is
physically located can change the owner. The system configuration option
\fB{_POSIX_CHOWN_RESTRICTED}\fR and the privileges \fBPRIV_FILE_CHOWN\fR and
\fBPRIV_FILE_CHOWN_SELF\fR also affect who can change the ownership of a file.
-See \fBchown\fR(2) and \fBprivileges\fR(5).
+See \fBchown\fR(2) and \fBprivileges\fR(7).
.SH OPTIONS
.sp
.LP
@@ -51,7 +51,7 @@ changed, but they are not traversed.
.SH USAGE
.sp
.LP
-See \fBlargefile\fR(5) for the description of the behavior of \fBchown\fR when
+See \fBlargefile\fR(7) for the description of the behavior of \fBchown\fR when
encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
.SH FILES
.sp
@@ -66,5 +66,10 @@ Password file
.SH SEE ALSO
.sp
.LP
-\fBchgrp\fR(1), \fBchown\fR(2), \fBgroup\fR(4), \fBpasswd\fR(4),
-\fBattributes\fR(5), \fBlargefile\fR(5), \fBprivileges\fR(5)
+.BR chgrp (1),
+.BR chown (2),
+.BR group (5),
+.BR passwd (5),
+.BR attributes (7),
+.BR largefile (7),
+.BR privileges (7)
diff --git a/usr/src/man/man1b/df.1b b/usr/src/man/man1b/df.1b
index 8c267133fe..0cbd13b387 100644
--- a/usr/src/man/man1b/df.1b
+++ b/usr/src/man/man1b/df.1b
@@ -81,7 +81,7 @@ Note that \fBused\fR+\fBavail\fR is less than the amount of space in the file
system (kbytes); this is because the system reserves a fraction of the space in
the file system to allow its file system allocation routines to work well. The
amount reserved is typically about 10%; this can be adjusted using \fBtunefs\fR
-(see \fBtunefs\fR(1M)). When all the space on a file system except for this
+(see \fBtunefs\fR(8)). When all the space on a file system except for this
reserve is in use, only the super-user can allocate new files and data blocks
to existing files. When a file system is overallocated in this way, \fBdf\fR
can report that the file system is more than 100% utilized.
@@ -108,5 +108,8 @@ List of default parameters for each file system
.SH SEE ALSO
.sp
.LP
-\fBdu\fR(1), \fBquot\fR(1M), \fBtunefs\fR(1M), \fBmnttab\fR(4),
-\fBattributes\fR(5)
+.BR du (1),
+.BR mnttab (5),
+.BR attributes (7),
+.BR quot (8),
+.BR tunefs (8)
diff --git a/usr/src/man/man1b/du.1b b/usr/src/man/man1b/du.1b
index bf69d74d26..d025afeeb9 100644
--- a/usr/src/man/man1b/du.1b
+++ b/usr/src/man/man1b/du.1b
@@ -135,7 +135,7 @@ example% \fBdu\fR
.LP
If any of the \fBLC_*\fR variables, that is, \fBLC_CTYPE\fR, \fBLC_MESSAGES\fR,
\fBLC_TIME\fR, \fBLC_COLLATE\fR, \fBLC_NUMERIC\fR, and \fBLC_MONETARY\fR (see
-\fBenviron\fR(5)), are not set in the environment, the operational behavior of
+\fBenviron\fR(7)), are not set in the environment, the operational behavior of
\fBdu\fR for each corresponding locale category is determined by the value of
the \fBLANG\fR environment variable. If \fBLC_ALL\fR is set, its contents are
used to override both the \fBLANG\fR and the other \fBLC_*\fR variables. If
@@ -170,8 +170,12 @@ default form found in the program itself (in most cases, U.S. English).
.SH SEE ALSO
.sp
.LP
-\fBpwd\fR(1), \fBdf\fR(1M), \fBdu\fR(1), \fBquot\fR(1M), \fBattributes\fR(5),
-\fBenviron\fR(5)
+.BR du (1),
+.BR pwd (1),
+.BR attributes (7),
+.BR environ (7),
+.BR df (8),
+.BR quot (8)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man1b/echo.1b b/usr/src/man/man1b/echo.1b
index 66f05cab61..cb2cb3edd1 100644
--- a/usr/src/man/man1b/echo.1b
+++ b/usr/src/man/man1b/echo.1b
@@ -81,8 +81,13 @@ Do not add the \fINEWLINE\fR to the output.
.SH SEE ALSO
.sp
.LP
-\fBcsh\fR(1), \fBecho\fR(1), \fBksh\fR(1), \fBsh\fR(1), \fBtr\fR(1),
-\fBwc\fR(1), \fBattributes\fR(5)
+.BR csh (1),
+.BR echo (1),
+.BR ksh (1),
+.BR sh (1),
+.BR tr (1),
+.BR wc (1),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man1b/exportfs.1b b/usr/src/man/man1b/exportfs.1b
index cc9bca3af2..3b9edf8853 100644
--- a/usr/src/man/man1b/exportfs.1b
+++ b/usr/src/man/man1b/exportfs.1b
@@ -24,8 +24,8 @@ With no options or arguments, \fBexportfs\fR invokes \fBshare\fR to print out
the list of all currently shared \fBNFS\fR filesystems.
.sp
.LP
-\fBexportfs\fR is the BSD/Compatibility Package command of \fBshare\fR(1M) and
-\fBunshare\fR(1M). Use \fBshare\fR(1M)/ \fBunshare\fR(1M) whenever possible.
+\fBexportfs\fR is the BSD/Compatibility Package command of \fBshare\fR(8) and
+\fBunshare\fR(8). Use \fBshare\fR(8)/ \fBunshare\fR(8) whenever possible.
.SH OPTIONS
.sp
.ne 2
@@ -33,8 +33,8 @@ the list of all currently shared \fBNFS\fR filesystems.
\fB\fB-a\fR\fR
.ad
.RS 14n
-Invokes \fBshareall\fR(1M), or if \fB-u\fR is specified, invokes
-\fBunshareall\fR(1M).
+Invokes \fBshareall\fR(8), or if \fB-u\fR is specified, invokes
+\fBunshareall\fR(8).
.RE
.sp
@@ -52,7 +52,7 @@ Ignore options in \fB/etc/dfs/dfstab\fR.
\fB\fB-u\fR\fR
.ad
.RS 14n
-Invokes \fBunshare\fR(1M) on \fIpathname\fR.
+Invokes \fBunshare\fR(8) on \fIpathname\fR.
.RE
.sp
@@ -72,12 +72,15 @@ Verbose.
.RS 14n
Specify a comma-separated list of optional characteristics for the filesystems
being exported. \fBexportfs\fR translates \fIoptions\fR to
-\fBshare\fR-equivalent options. (see \fBshare\fR(1M) for information about
+\fBshare\fR-equivalent options. (see \fBshare\fR(8) for information about
individual options).
.RE
.SH SEE ALSO
.sp
.LP
-\fBshare\fR(1M), \fBshareall\fR(1M), \fBunshare\fR(1M), \fBunshareall\fR(1M),
-\fBattributes\fR(5)
+.BR attributes (7),
+.BR share (8),
+.BR shareall (8),
+.BR unshare (8),
+.BR unshareall (8)
diff --git a/usr/src/man/man1b/expr.1b b/usr/src/man/man1b/expr.1b
index f5ba43648d..9c710b0cfe 100644
--- a/usr/src/man/man1b/expr.1b
+++ b/usr/src/man/man1b/expr.1b
@@ -97,7 +97,7 @@ Multiplication, division, or remainder of the integer-valued arguments.
The two forms of the matching operator above are synonymous. The matching
operators \fB:\fR and \fBmatch\fR compare the first argument with the second
argument which must be a regular expression. Regular expression syntax is the
-same as that of \fBregexp\fR(5), except that all patterns are "anchored"
+same as that of \fBregexp\fR(7), except that all patterns are "anchored"
(treated as if they begin with \fB^\fR) and therefore \fB^\fR is not a special
character, in that context. Normally, the matching operator returns the number
of characters matched (\fB0\fR on failure). Alternatively, the
@@ -248,7 +248,10 @@ For invalid expressions.
.SH SEE ALSO
.sp
.LP
-\fBsh\fR(1), \fBtest\fR(1), \fBattributes\fR(5), \fBregexp\fR(5)
+.BR sh (1),
+.BR test (1),
+.BR attributes (7),
+.BR regexp (7)
.SH DIAGNOSTICS
.sp
.ne 2
diff --git a/usr/src/man/man1b/fastboot.1b b/usr/src/man/man1b/fastboot.1b
index b99dbfb65b..f50ea21b4c 100644
--- a/usr/src/man/man1b/fastboot.1b
+++ b/usr/src/man/man1b/fastboot.1b
@@ -28,5 +28,9 @@ These commands are provided for compatibility only.
.SH SEE ALSO
.sp
.LP
-\fBfsck\fR(1M), \fBhalt\fR(1M), \fBinit\fR(1M), \fBreboot\fR(1M),
-\fBinit.d\fR(4), \fBattributes\fR(5)
+.BR init.d (5),
+.BR attributes (7),
+.BR fsck (8),
+.BR halt (8),
+.BR init (8),
+.BR reboot (8)
diff --git a/usr/src/man/man1b/file.1b b/usr/src/man/man1b/file.1b
index f59b2bf8fd..38f3be1c6c 100644
--- a/usr/src/man/man1b/file.1b
+++ b/usr/src/man/man1b/file.1b
@@ -118,7 +118,8 @@ locale.
\fB/etc/magic\fR
.SH SEE ALSO
.LP
-\fBmagic\fR(4), \fBattributes\fR(5)
+.BR magic (5),
+.BR attributes (7)
.SH BUGS
.LP
\fBfile\fR often makes mistakes. In particular, it often suggests that command
diff --git a/usr/src/man/man1b/from.1b b/usr/src/man/man1b/from.1b
index 207d147f2e..8b8e88275c 100644
--- a/usr/src/man/man1b/from.1b
+++ b/usr/src/man/man1b/from.1b
@@ -34,7 +34,7 @@ Only display headers for mail sent by \fIsender\fR.
.SH USAGE
.sp
.LP
-See \fBlargefile\fR(5) for the description of the behavior of \fBfrom\fR when
+See \fBlargefile\fR(7) for the description of the behavior of \fBfrom\fR when
encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
.SH FILES
.sp
@@ -49,4 +49,7 @@ encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
.SH SEE ALSO
.sp
.LP
-\fBbiff\fR(1B), \fBmail\fR(1B), \fBattributes\fR(5), \fBlargefile\fR(5)
+.BR biff (1B),
+.BR mail (1B),
+.BR attributes (7),
+.BR largefile (7)
diff --git a/usr/src/man/man1b/groups.1b b/usr/src/man/man1b/groups.1b
index 6ce8bb7838..86924c4166 100644
--- a/usr/src/man/man1b/groups.1b
+++ b/usr/src/man/man1b/groups.1b
@@ -43,7 +43,8 @@ the file.
.SH SEE ALSO
.sp
.LP
-\fBgetgroups\fR(2), \fBattributes\fR(5)
+.BR getgroups (2),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man1b/grpck.1b b/usr/src/man/man1b/grpck.1b
index 6ac9a29abf..4b605e2f99 100644
--- a/usr/src/man/man1b/grpck.1b
+++ b/usr/src/man/man1b/grpck.1b
@@ -15,7 +15,7 @@ grpck \- check group database entries
.SH DESCRIPTION
.sp
.LP
-The \fBgrpck\fR utility checks that a file in \fBgroup\fR(4) does not contain
+The \fBgrpck\fR utility checks that a file in \fBgroup\fR(5) does not contain
any errors; it checks the \fB/etc/group\fR file by default.
.SH FILES
.sp
@@ -24,7 +24,10 @@ any errors; it checks the \fB/etc/group\fR file by default.
.SH SEE ALSO
.sp
.LP
-\fBgroups\fR(1), \fBgroup\fR(4), \fBpasswd\fR(4), \fBattributes\fR(5)
+.BR groups (1),
+.BR group (5),
+.BR passwd (5),
+.BR attributes (7)
.SH DIAGNOSTICS
.sp
.ne 2
diff --git a/usr/src/man/man1b/ln.1b b/usr/src/man/man1b/ln.1b
index 9e92109f0b..69379c2f09 100644
--- a/usr/src/man/man1b/ln.1b
+++ b/usr/src/man/man1b/ln.1b
@@ -117,7 +117,7 @@ Create a symbolic link or links.
.SH USAGE
.sp
.LP
-See \fBlargefile\fR(5) for the description of the behavior of \fBln\fR when
+See \fBlargefile\fR(7) for the description of the behavior of \fBln\fR when
encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
.SH EXAMPLES
.LP
@@ -159,9 +159,16 @@ x@ y@ z@
.SH SEE ALSO
.sp
.LP
-\fBcp\fR(1), \fBls\fR(1), \fBmv\fR(1), \fBrm\fR(1), \fBlink\fR(2),
-\fBreadlink\fR(2), \fBstat\fR(2), \fBsymlink\fR(2), \fBattributes\fR(5),
-\fBlargefile\fR(5)
+.BR cp (1),
+.BR ls (1),
+.BR mv (1),
+.BR rm (1),
+.BR link (2),
+.BR readlink (2),
+.BR stat (2),
+.BR symlink (2),
+.BR attributes (7),
+.BR largefile (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man1b/logger.1b b/usr/src/man/man1b/logger.1b
index 9ccaef7b18..4f0a72603d 100644
--- a/usr/src/man/man1b/logger.1b
+++ b/usr/src/man/man1b/logger.1b
@@ -110,4 +110,6 @@ by \fBsyslogd\fR as other messages to the facility \fBlocal0\fR are.
.SH SEE ALSO
.sp
.LP
-\fBsyslogd\fR(1M), \fBsyslog\fR(3C), \fBattributes\fR(5)
+.BR syslog (3C),
+.BR attributes (7),
+.BR syslogd (8)
diff --git a/usr/src/man/man1b/lpc.1b b/usr/src/man/man1b/lpc.1b
index 820d144f88..45f063c166 100644
--- a/usr/src/man/man1b/lpc.1b
+++ b/usr/src/man/man1b/lpc.1b
@@ -86,7 +86,7 @@ Exits from \fBlpc\fR.
Displays the status of print daemons and print queues. \fBall\fR specifies that
this command is performed on all locally attached printers. \fIprinter\fR
indicates this command is performed on specific printers. Specify \fIprinter\fR
-as an atomic name. See \fBprinters.conf\fR(4) for information regarding naming
+as an atomic name. See \fBprinters.conf\fR(5) for information regarding naming
conventions for atomic names.
.RE
@@ -104,7 +104,7 @@ Terminates an active spooling daemon. Disables printing (by preventing new
daemons from being started by \fBlpr\fR(1B)) for \fIprinter\fR. \fBall\fR
specifies this command is performed on all locally attached printers.
\fIprinter\fR indicates this command is performed on specific printers. Specify
-\fIprinter\fR as an atomic name. See \fBprinters.conf\fR(4) for information
+\fIprinter\fR as an atomic name. See \fBprinters.conf\fR(5) for information
regarding naming conventions for atomic names.
.RE
@@ -119,7 +119,7 @@ Removes files created in the print spool directory by the print daemon from
\fIprinter\fR \fI\&'s\fR print queue. \fBall\fR specifies that this command is
performed on all locally attached printers.\fIprinter\fR indicates this command
is performed on specific printers. Specify \fIprinter\fR as an atomic name. See
-\fBprinters.conf\fR(4) for information regarding naming conventions for atomic
+\fBprinters.conf\fR(5) for information regarding naming conventions for atomic
names.
.RE
@@ -134,7 +134,7 @@ Turns off the print queue for \fIprinter\fR. Prevents new printer jobs from
being entered into the print queue for \fIprinter\fR by \fBlpr\fR(1B). \fBall\fR
specifies that this command is performed on all locally attached printers.
\fIprinter\fR indicates this command is performed on specific printers. Specify
-\fIprinter\fR as an atomic name. See \fBprinters.conf\fR(4) for information
+\fIprinter\fR as an atomic name. See \fBprinters.conf\fR(5) for information
regarding naming conventions for atomic names.
.RE
@@ -151,7 +151,7 @@ to be quoted; multiple arguments to \fImessage\fR are treated as arguments are
to \fBecho\fR(1). Use \fBdown\fR to take a printer down and inform users.
\fBall\fR specifies that this command is performed on all locally attached
printers. \fIprinter\fR indicates this command is performed on specific
-printers. Specify \fIprinter\fR as an atomic name. See \fBprinters.conf\fR(4)
+printers. Specify \fIprinter\fR as an atomic name. See \fBprinters.conf\fR(5)
for information regarding naming conventions for atomic names.
.RE
@@ -165,7 +165,7 @@ for information regarding naming conventions for atomic names.
Enables \fBlpr\fR(1B) to add new jobs in the spool queue. \fBall\fR specifies
that this command is performed on all locally attached printers. \fIprinter\fR
indicates this command is performed on specific printers. Specify \fIprinter\fR
-as an atomic name. See \fBprinters.conf\fR(4) for information regarding naming
+as an atomic name. See \fBprinters.conf\fR(5) for information regarding naming
conventions for atomic names.
.RE
@@ -180,7 +180,7 @@ Attempts to start a new printer daemon. \fBrestart\fR is useful when a print
daemon dies unexpectedly and leaves jobs in the print queue. \fBall\fR
specifies that this command is performed on all locally attached printers.
\fIprinter\fR indicates that this command is performed on specific printers.
-Specify \fIprinter\fR as an atomic name. See \fBprinters.conf\fR(4) for
+Specify \fIprinter\fR as an atomic name. See \fBprinters.conf\fR(5) for
information regarding naming conventions for atomic names.
.RE
@@ -194,7 +194,7 @@ information regarding naming conventions for atomic names.
Enables printing. Starts a spooling daemon for the \fIprinter\fR. \fBall\fR
specifies that this command is performed on all locally attached printers.
\fIprinter\fR indicates the command is performed on specific printers. Specify
-\fIprinter\fR as an atomic name. See \fBprinters.conf\fR(4) for information
+\fIprinter\fR as an atomic name. See \fBprinters.conf\fR(5) for information
regarding naming conventions for atomic names.
.RE
@@ -209,7 +209,7 @@ Stops a spooling daemon after the current job is complete. Disables printing at
that time. \fBall\fR specifies that this command is performed on all locally
attached printers. \fIprinter\fR indicates this command is performed on
specific printers. Specify \fIprinter\fR as an atomic name. See
-\fBprinters.conf\fR(4) for information regarding naming conventions for atomic
+\fBprinters.conf\fR(5) for information regarding naming conventions for atomic
names.
.RE
@@ -223,7 +223,7 @@ names.
.RS 4n
Moves \fIrequest-ID\fR or print jobs belonging to \fIuser\fR on \fIprinter\fR
to the beginning of the print queue. Specify \fIuser\fR as a user's login name.
-Specify \fIprinter\fR as an atomic name. See \fBprinters.conf\fR(4) for
+Specify \fIprinter\fR as an atomic name. See \fBprinters.conf\fR(5) for
information regarding naming conventions for atomic names.
.RE
@@ -239,7 +239,7 @@ Deletes the message in the printer status file (inserted by \fBdown\fR). Use
\fBup\fR to undo the effects of \fBdown\fR. \fBall\fR specifies that this
command is performed on all locally attached printers. \fIprinter\fR indicates
this command is performed on specific printers. Specify \fIprinter\fR as an
-atomic name. See \fBprinters.conf\fR(4) for information regarding naming
+atomic name. See \fBprinters.conf\fR(5) for information regarding naming
conventions for atomic names.
.RE
@@ -300,7 +300,7 @@ LDAP version of \fB/etc/printers.conf\fR
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -314,13 +314,19 @@ Interface Stability Standard
.TE
.SH SEE ALSO
-\fBlpq\fR(1B), \fBlpr\fR(1B), \fBlprm\fR(1B), \fBlpstat\fR(1),
-\fBlpsched\fR(1M), \fBlpshut\fR(1M), \fBsvcadm\fR(1M), \fBprinters.conf\fR(4),
-\fBattributes\fR(5)
+.BR lpstat (1),
+.BR lpq (1B),
+.BR lpr (1B),
+.BR lprm (1B),
+.BR printers.conf (5),
+.BR attributes (7),
+.BR lpsched (8),
+.BR lpshut (8),
+.BR svcadm (8)
.SH DIAGNOSTICS
Use the \fBsvcs\fR(1) utility to check if \fBsvc:/application/print/server\fR
is running. If it is not running, use \fBsvcadm enable
-svc:/application/print/server\fR to start \fBlpsched\fR. See \fBsvcadm\fR(1M).
+svc:/application/print/server\fR to start \fBlpsched\fR. See \fBsvcadm\fR(8).
.SH NOTES
When IPP is in use, the user is prompted for a passphrase if the remote print
service is configured to require authentication.
diff --git a/usr/src/man/man1b/lpq.1b b/usr/src/man/man1b/lpq.1b
index b12197f7ca..7eec4d497b 100644
--- a/usr/src/man/man1b/lpq.1b
+++ b/usr/src/man/man1b/lpq.1b
@@ -60,8 +60,8 @@ input file field indicates the standard input.
.sp
.LP
The print client commands locate destination information using the
-\fBprinters\fR database in the name service switch. See \fBnsswitch.conf\fR(4),
-\fBprinters\fR(4), and \fBprinters.conf\fR(4) for details.
+\fBprinters\fR database in the name service switch. See \fBnsswitch.conf\fR(5),
+\fBprinters\fR(5), and \fBprinters.conf\fR(5) for details.
.SH OPTIONS
.LP
The following options are supported:
@@ -81,10 +81,10 @@ from which a print request originated in the display.
\fB\fB-P\fR \fIdestination\fR\fR
.ad
.RS 18n
-Displays information about printer or class of printers (see \fBlpadmin\fR(1M))
+Displays information about printer or class of printers (see \fBlpadmin\fR(8))
\fI\&.\fR Specify \fIdestination\fR using atomic, URI-style
(\fIscheme\fR\fB://\fR\fBendpoint\fR), or POSIX-style
-(\fIserver\fR\fB:\fR\fIdestination\fR) names. See \fBprinters.conf\fR(4) for
+(\fIserver\fR\fB:\fR\fIdestination\fR) names. See \fBprinters.conf\fR(5) for
information regarding destination names.
.RE
@@ -181,7 +181,7 @@ LDAP version of \fB/etc/printers.conf\fR
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -196,9 +196,17 @@ Interface Stability Standard
.SH SEE ALSO
.LP
-\fBlp\fR(1), \fBlpc\fR(1B), \fBlpr\fR(1B), \fBlprm\fR(1B), \fBlpstat\fR(1),
-\fBlpadmin\fR(1M), \fBnsswitch.conf\fR(4), \fBprinters\fR(4),
-\fBprinters.conf\fR(4), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR lp (1),
+.BR lpstat (1),
+.BR lpc (1B),
+.BR lpr (1B),
+.BR lprm (1B),
+.BR nsswitch.conf (5),
+.BR printers (5),
+.BR printers.conf (5),
+.BR attributes (7),
+.BR standards (7),
+.BR lpadmin (8)
.SH NOTES
.LP
When IPP is in use, the user is prompted for a passphrase if the remote print
diff --git a/usr/src/man/man1b/lpr.1b b/usr/src/man/man1b/lpr.1b
index 3f1e84796b..8645d78562 100644
--- a/usr/src/man/man1b/lpr.1b
+++ b/usr/src/man/man1b/lpr.1b
@@ -22,8 +22,8 @@ input.
.sp
.LP
The print client commands locate destination information using the "printers"
-database in the name service switch. See \fBnsswitch.conf\fR(4),
-\fBprinters\fR(4), and \fBprinters.conf\fR(4) for details.
+database in the name service switch. See \fBnsswitch.conf\fR(5),
+\fBprinters\fR(5), and \fBprinters.conf\fR(5) for details.
.sp
.LP
Print requests with more than 52 \fIfile\fRs specified is truncated to 52 files
@@ -102,9 +102,9 @@ is sent upon normal completion of a print request.
.sp .6
.RS 4n
Prints \fIfile\fR on a specific printer or class of printers (see
-\fBlpadmin\fR(1M)). Specify \fIdestination\fR using atomic, URI-style
+\fBlpadmin\fR(8)). Specify \fIdestination\fR using atomic, URI-style
(\fIscheme\fR\fB://\fR\fBendpoint\fR), or POSIX-style
-(\fIserver\fR\fB:\fR\fIdestination\fR) names. See \fBprinters.conf\fR(4) for
+(\fIserver\fR\fB:\fR\fIdestination\fR) names. See \fBprinters.conf\fR(5) for
information regarding destination names.
.RE
@@ -287,7 +287,7 @@ The name of the file to be printed. Specify \fIfile\fR as a pathname. If
.SH USAGE
.LP
-See \fBlargefile\fR(5) for the description of the behavior of \fBlpr\fR when
+See \fBlargefile\fR(7) for the description of the behavior of \fBlpr\fR when
encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
.SH EXIT STATUS
.LP
@@ -348,7 +348,7 @@ NIS version of \fB/etc/printers.conf\fR
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -365,11 +365,23 @@ CSI Enabled. See NOTES
.SH SEE ALSO
.LP
-\fBhostname\fR(1), \fBlp\fR(1), \fBlpc\fR(1B), \fBlpq\fR(1B), \fBlprm\fR(1B),
-\fBlpstat\fR(1), \fBmail\fR(1), \fBplot\fR(1B), \fBpr\fR(1), \fBtroff\fR(1),
-\fBlpadmin\fR(1M), \fBnsswitch.conf\fR(4), \fBprinters\fR(4),
-\fBprinters.conf\fR(4), \fBattributes\fR(5), \fBlargefile\fR(5),
-\fBstandards\fR(5)
+.BR hostname (1),
+.BR lp (1),
+.BR lpstat (1),
+.BR mail (1),
+.BR pr (1),
+.BR troff (1),
+.BR lpc (1B),
+.BR lpq (1B),
+.BR lprm (1B),
+.BR plot (1B),
+.BR nsswitch.conf (5),
+.BR printers (5),
+.BR printers.conf (5),
+.BR attributes (7),
+.BR largefile (7),
+.BR standards (7),
+.BR lpadmin (8)
.SH DIAGNOSTICS
.ne 2
.na
diff --git a/usr/src/man/man1b/lprm.1b b/usr/src/man/man1b/lprm.1b
index 590fe70661..0eb9bea348 100644
--- a/usr/src/man/man1b/lprm.1b
+++ b/usr/src/man/man1b/lprm.1b
@@ -28,8 +28,8 @@ Notes. If a superuser executes \fBlprm\fR and specifies the \fIuser\fR operand,
.sp
.LP
The print client commands locate destination information using the "printers"
-database in the name service switch. See \fBnsswitch.conf\fR(4),
-\fBprinters\fR(4), and \fBprinters.conf\fR(4) for details.
+database in the name service switch. See \fBnsswitch.conf\fR(5),
+\fBprinters\fR(5), and \fBprinters.conf\fR(5) for details.
.SH OPTIONS
.LP
The following options are supported:
@@ -39,10 +39,10 @@ The following options are supported:
\fB\fB-P\fR \fIdestination\fR\fR
.ad
.RS 18n
-The name of the printer or class of printers (see \fBlpadmin\fR(1M)) from which
+The name of the printer or class of printers (see \fBlpadmin\fR(8)) from which
to remove print requests. Specify destination using atomic, URI-style
(\fIscheme\fR\fB://\fR\fBendpoint\fR), or POSIX-style
-(\fIserver\fR\fB:\fR\fIdestination\fR) names. See \fBprinters.conf\fR(4) for
+(\fIserver\fR\fB:\fR\fIdestination\fR) names. See \fBprinters.conf\fR(5) for
information regarding the naming naming conventions for destination names.
.RE
@@ -157,7 +157,7 @@ LDAP version of \fB/etc/printers.conf\fR
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -172,9 +172,17 @@ Interface Stability Standard
.SH SEE ALSO
.LP
-\fBlp\fR(1), \fBlpc\fR(1B), \fBlpq\fR(1B), \fBlpr\fR(1B), \fBlpstat\fR(1),
-\fBlpadmin\fR(1M), \fBnsswitch.conf\fR(4), \fBprinters\fR(4),
-\fBprinters.conf\fR(4), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR lp (1),
+.BR lpstat (1),
+.BR lpc (1B),
+.BR lpq (1B),
+.BR lpr (1B),
+.BR nsswitch.conf (5),
+.BR printers (5),
+.BR printers.conf (5),
+.BR attributes (7),
+.BR standards (7),
+.BR lpadmin (8)
.SH NOTES
.LP
Users can only remove print requests associated with their user name. By
diff --git a/usr/src/man/man1b/lptest.1b b/usr/src/man/man1b/lptest.1b
index d0a810d13c..f3b6318e6d 100644
--- a/usr/src/man/man1b/lptest.1b
+++ b/usr/src/man/man1b/lptest.1b
@@ -68,4 +68,4 @@ An error occurred.
.SH SEE ALSO
.sp
.LP
-\fBattributes\fR(5)
+.BR attributes (7)
diff --git a/usr/src/man/man1b/mail.1b b/usr/src/man/man1b/mail.1b
index 6fd803fa3d..d643872550 100644
--- a/usr/src/man/man1b/mail.1b
+++ b/usr/src/man/man1b/mail.1b
@@ -29,4 +29,5 @@ these commands.
.SH SEE ALSO
.sp
.LP
-\fBmailx\fR(1), \fBattributes\fR(5)
+.BR mailx (1),
+.BR attributes (7)
diff --git a/usr/src/man/man1b/mkstr.1b b/usr/src/man/man1b/mkstr.1b
index 31f9216dd8..b16be08688 100644
--- a/usr/src/man/man1b/mkstr.1b
+++ b/usr/src/man/man1b/mkstr.1b
@@ -90,4 +90,5 @@ part of a large \fBmkstr\fRed program.
.SH SEE ALSO
.sp
.LP
-\fBxstr\fR(1), \fBattributes\fR(5)
+.BR xstr (1),
+.BR attributes (7)
diff --git a/usr/src/man/man1b/printenv.1b b/usr/src/man/man1b/printenv.1b
index 75cf1e06e6..01b6353d3a 100644
--- a/usr/src/man/man1b/printenv.1b
+++ b/usr/src/man/man1b/printenv.1b
@@ -20,8 +20,13 @@ printenv \- display environment variables currently set
.SH SEE ALSO
.sp
.LP
-\fBcsh\fR(1), \fBecho\fR(1), \fBsh\fR(1), \fBstty\fR(1), \fBtset\fR(1B),
-\fBattributes\fR(5), \fBenviron\fR(5)
+.BR csh (1),
+.BR echo (1),
+.BR sh (1),
+.BR stty (1),
+.BR tset (1B),
+.BR attributes (7),
+.BR environ (7)
.SH DIAGNOSTICS
.sp
.LP
diff --git a/usr/src/man/man1b/ps.1b b/usr/src/man/man1b/ps.1b
index 77c970fc7e..db60e40828 100644
--- a/usr/src/man/man1b/ps.1b
+++ b/usr/src/man/man1b/ps.1b
@@ -13,7 +13,7 @@ ps \- display the status of current processes
.SH DESCRIPTION
The \fBps\fR command displays information about processes. Normally, only those
processes that are running with your effective user \fBID\fR and are attached
-to a controlling terminal (see \fBtermio\fR(7I)) are shown. Additional
+to a controlling terminal (see \fBtermio\fR(4I)) are shown. Additional
categories of processes can be added to the display using various options. In
particular, the \fB-a\fR option allows you to include processes that are not
owned by you (that do not have your user \fBID\fR), and the \fB-x\fR option
@@ -383,8 +383,15 @@ the user block.
.RE
.SH SEE ALSO
-\fBkill\fR(1), \fBps\fR(1), \fBwhodo\fR(1M), \fBgetpriority\fR(3C),
-\fBnice\fR(2), \fBproc\fR(4), \fBattributes\fR(5), \fBtermio\fR(7I)
+.LP
+.BR kill (1),
+.BR ps (1),
+.BR nice (2),
+.BR getpriority (3C),
+.BR termio (4I),
+.BR proc (5),
+.BR attributes (7),
+.BR whodo (8)
.SH NOTES
Things can change while \fBps\fR is running. The picture \fBps\fR gives is only
a close approximation to the current state. Some data printed for defunct
diff --git a/usr/src/man/man1b/rusage.1b b/usr/src/man/man1b/rusage.1b
index 8af3790d51..063f150865 100644
--- a/usr/src/man/man1b/rusage.1b
+++ b/usr/src/man/man1b/rusage.1b
@@ -71,7 +71,10 @@ l l l .
.SH SEE ALSO
.sp
.LP
-\fBcsh\fR(1), \fBtime\fR(1), \fBgetrusage\fR(3C), \fBattributes\fR(5)
+.BR csh (1),
+.BR time (1),
+.BR getrusage (3C),
+.BR attributes (7)
.SH BUGS
.sp
.LP
diff --git a/usr/src/man/man1b/shutdown.1b b/usr/src/man/man1b/shutdown.1b
index d8f84bc157..00d603326e 100644
--- a/usr/src/man/man1b/shutdown.1b
+++ b/usr/src/man/man1b/shutdown.1b
@@ -27,7 +27,7 @@ mounts on that machine.
.sp
.LP
At shutdown time a message is written to the system log daemon,
-\fBsyslogd\fR(1M), containing the time of shutdown, the instigator of the
+\fBsyslogd\fR(8), containing the time of shutdown, the instigator of the
shutdown, and the reason. Then a terminate signal is sent to \fBinit\fR, which
brings the system down to single-user mode.
.SH OPTIONS
@@ -50,7 +50,7 @@ the file systems will not be checked.
\fB\fB-h\fR\fR
.ad
.RS 6n
-Execute \fBhalt\fR(1M).
+Execute \fBhalt\fR(8).
.RE
.sp
@@ -77,7 +77,7 @@ Prevent the normal \fBsync\fR(2) before stopping.
\fB\fB-r\fR\fR
.ad
.RS 6n
-Execute \fBreboot\fR(1M).
+Execute \fBreboot\fR(8).
.RE
.SH FILES
@@ -93,8 +93,14 @@ remote mounted file system table
.SH SEE ALSO
.sp
.LP
-\fBfastboot\fR(1B), \fBlogin\fR(1), \fBhalt\fR(1M), \fBreboot\fR(1M),
-\fBsyslogd\fR(1M), \fBsync\fR(2), \fBrmtab\fR(4), \fBattributes\fR(5)
+.BR login (1),
+.BR fastboot (1B),
+.BR sync (2),
+.BR rmtab (5),
+.BR attributes (7),
+.BR halt (8),
+.BR reboot (8),
+.BR syslogd (8)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man1b/stty.1b b/usr/src/man/man1b/stty.1b
index b16f2159fa..b61c855e5b 100644
--- a/usr/src/man/man1b/stty.1b
+++ b/usr/src/man/man1b/stty.1b
@@ -142,7 +142,7 @@ Select odd (even) parity, or mark (space) parity if \fBparext\fR is enabled.
.ad
.sp .6
.RS 4n
-Select character size (see \fBtermio\fR(7I)).
+Select character size (see \fBtermio\fR(4I)).
.RE
.sp
@@ -295,7 +295,7 @@ Ignore (do not ignore) parity errors.
\fB\fBparmrk\fR (\fB-parmrk\fR)\fR
.ad
.RS 22n
-Mark (do not mark) parity errors (see \fBtermio\fR(7I)).
+Mark (do not mark) parity errors (see \fBtermio\fR(4I)).
.RE
.sp
@@ -497,7 +497,7 @@ Fill characters are DELs (NULs).
\fB\fBcr0 cr1 cr2 cr3\fR\fR
.ad
.RS 23n
-Select style of delay for carriage returns (see \fBtermio\fR(7I)).
+Select style of delay for carriage returns (see \fBtermio\fR(4I)).
.RE
.sp
@@ -506,7 +506,7 @@ Select style of delay for carriage returns (see \fBtermio\fR(7I)).
\fB\fBnl0 nl1\fR\fR
.ad
.RS 23n
-Select style of delay for line-feeds (see \fBtermio\fR(7I)).
+Select style of delay for line-feeds (see \fBtermio\fR(4I)).
.RE
.sp
@@ -515,7 +515,7 @@ Select style of delay for line-feeds (see \fBtermio\fR(7I)).
\fB\fBtab0 tab1 tab2 tab3\fR\fR
.ad
.RS 23n
-Select style of delay for horizontal tabs (see \fBtermio\fR(7I)).
+Select style of delay for horizontal tabs (see \fBtermio\fR(4I)).
.RE
.sp
@@ -524,7 +524,7 @@ Select style of delay for horizontal tabs (see \fBtermio\fR(7I)).
\fB\fBbs0 bs1\fR\fR
.ad
.RS 23n
-Select style of delay for backspaces (see \fBtermio\fR(7I)).
+Select style of delay for backspaces (see \fBtermio\fR(4I)).
.RE
.sp
@@ -533,7 +533,7 @@ Select style of delay for backspaces (see \fBtermio\fR(7I)).
\fB\fBff0 ff1\fR\fR
.ad
.RS 23n
-Select style of delay for form-feeds (see \fBtermio\fR(7I)).
+Select style of delay for form-feeds (see \fBtermio\fR(4I)).
.RE
.sp
@@ -542,7 +542,7 @@ Select style of delay for form-feeds (see \fBtermio\fR(7I)).
\fB\fBvt0 vt1\fR\fR
.ad
.RS 23n
-Select style of delay for vertical tabs (see \fBtermio\fR(7I)).
+Select style of delay for vertical tabs (see \fBtermio\fR(4I)).
.RE
.SS "Local Modes"
@@ -938,7 +938,7 @@ Set \fIcontrol-character\fR to \fIc\fR, where \fIcontrol-character\fR is
\fBeol2\fR, \fBswtch\fR, \fBstart\fR, \fBstop\fR, \fBsusp\fR, \fBdsusp\fR,
\fBrprnt\fR, \fBflush\fR, \fBwerase\fR, \fBlnext\fR \fBmin\fR, \fBctab\fR,
\fBtime\fR, or \fBbrk\fR) (\fBctab\fR is used with \fB-stappl\fR; \fBmin\fR and
-\fBtime\fR are used with \fB-icanon\fR; see \fBtermio\fR(7I)). If \fIc\fR is
+\fBtime\fR are used with \fB-icanon\fR; see \fBtermio\fR(4I)). If \fIc\fR is
preceded by an (escaped from the shell) caret (\fB^\fR), then the value used is
the corresponding CTRL character (for example, ``^d'' is a Control-d). ``^?''
is interpreted as DEL and ``\fB^\(mi\fR'' is interpreted as undefined. For
@@ -1220,8 +1220,11 @@ Set horizontal window size to \fIn\fR \fIpixels\fR.
.SH SEE ALSO
.sp
.LP
-\fBtabs\fR(1), \fBioctl\fR(2), \fBattributes\fR(5), \fBtermio\fR(7I),
-\fBtermiox\fR(7I)
+.BR tabs (1),
+.BR ioctl (2),
+.BR termio (4I),
+.BR termiox (4I),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man1b/sum.1b b/usr/src/man/man1b/sum.1b
index 26c6237f9e..561aeb8e74 100644
--- a/usr/src/man/man1b/sum.1b
+++ b/usr/src/man/man1b/sum.1b
@@ -25,12 +25,15 @@ machines with different-sized \fBint\fRs.
.SH USAGE
.sp
.LP
-See \fBlargefile\fR(5) for the description of the behavior of \fBsum\fR when
+See \fBlargefile\fR(7) for the description of the behavior of \fBsum\fR when
encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
.SH SEE ALSO
.sp
.LP
-\fBsum\fR(1), \fBwc\fR(1), \fBattributes\fR(5), \fBlargefile\fR(5)
+.BR sum (1),
+.BR wc (1),
+.BR attributes (7),
+.BR largefile (7)
.SH DIAGNOSTICS
.sp
.LP
diff --git a/usr/src/man/man1b/test.1b b/usr/src/man/man1b/test.1b
index 8e474073fd..f7b907ea19 100644
--- a/usr/src/man/man1b/test.1b
+++ b/usr/src/man/man1b/test.1b
@@ -257,7 +257,9 @@ shell and, therefore, must be quoted.
.SH SEE ALSO
.sp
.LP
-\fBfind\fR(1), \fBsh\fR(1), \fBattributes\fR(5)
+.BR find (1),
+.BR sh (1),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man1b/touch.1b b/usr/src/man/man1b/touch.1b
index 1554951ee2..1e634ca765 100644
--- a/usr/src/man/man1b/touch.1b
+++ b/usr/src/man/man1b/touch.1b
@@ -60,7 +60,7 @@ unless \fB-a\fR is also specified.
.SH USAGE
.sp
.LP
-See \fBlargefile\fR(5) for the description of the behavior of \fBtouch\fR when
+See \fBlargefile\fR(7) for the description of the behavior of \fBtouch\fR when
encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
.SH EXIT STATUS
.sp
@@ -88,4 +88,6 @@ could not be successfully modified.
.SH SEE ALSO
.sp
.LP
-\fBtouch\fR(1), \fBattributes\fR(5), \fBlargefile\fR(5)
+.BR touch (1),
+.BR attributes (7),
+.BR largefile (7)
diff --git a/usr/src/man/man1b/tset.1b b/usr/src/man/man1b/tset.1b
index 66c60b8913..d3183f8f3d 100644
--- a/usr/src/man/man1b/tset.1b
+++ b/usr/src/man/man1b/tset.1b
@@ -448,8 +448,12 @@ unset noglob
.SH SEE ALSO
.sp
.LP
-\fBcsh\fR(1), \fBsh\fR(1), \fBstty\fR(1), \fBvi\fR(1), \fBattributes\fR(5),
-\fBenviron\fR(5)
+.BR csh (1),
+.BR sh (1),
+.BR stty (1),
+.BR vi (1),
+.BR attributes (7),
+.BR environ (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man1b/users.1b b/usr/src/man/man1b/users.1b
index 54aee78af9..edb1386b67 100644
--- a/usr/src/man/man1b/users.1b
+++ b/usr/src/man/man1b/users.1b
@@ -49,4 +49,5 @@ paul george ringo\fRexample%
.SH SEE ALSO
.sp
.LP
-\fBwho\fR(1), \fBattributes\fR(5)
+.BR who (1),
+.BR attributes (7)
diff --git a/usr/src/man/man1b/vipw.1b b/usr/src/man/man1b/vipw.1b
index b81e7d7a67..f66dea53df 100644
--- a/usr/src/man/man1b/vipw.1b
+++ b/usr/src/man/man1b/vipw.1b
@@ -46,4 +46,7 @@ for root.
.SH SEE ALSO
.sp
.LP
-\fBpasswd\fR(1), \fBvi\fR(1), \fBpasswd\fR(4), \fBattributes\fR(5)
+.BR passwd (1),
+.BR vi (1),
+.BR passwd (5),
+.BR attributes (7)
diff --git a/usr/src/man/man1b/whereis.1b b/usr/src/man/man1b/whereis.1b
index d7e39cc4d3..49c061d5ec 100644
--- a/usr/src/man/man1b/whereis.1b
+++ b/usr/src/man/man1b/whereis.1b
@@ -170,7 +170,8 @@ example% \fBwhereis -u -M /usr/share/man/man1 -S /usr/src/cmd -f *\fR
.SH SEE ALSO
.sp
.LP
-\fBchdir\fR(2), \fBattributes\fR(5)
+.BR chdir (2),
+.BR attributes (7)
.SH BUGS
.sp
.LP
diff --git a/usr/src/man/man1b/whoami.1b b/usr/src/man/man1b/whoami.1b
index 83d0fa7372..19f73d8dd6 100644
--- a/usr/src/man/man1b/whoami.1b
+++ b/usr/src/man/man1b/whoami.1b
@@ -33,5 +33,8 @@ username data base
.SH SEE ALSO
.sp
.LP
-\fBsu\fR(1M), \fBwho\fR(1), \fBgetuid\fR(2), \fBgetpwnam\fR(3C),
-\fBattributes\fR(5)
+.BR who (1),
+.BR getuid (2),
+.BR getpwnam (3C),
+.BR attributes (7),
+.BR su (8)
diff --git a/usr/src/man/man1c/ct.1c b/usr/src/man/man1c/ct.1c
index 9caa422593..cde2817af5 100644
--- a/usr/src/man/man1c/ct.1c
+++ b/usr/src/man/man1c/ct.1c
@@ -122,8 +122,11 @@ increases to 9, more detailed debugging information is given.
.SH SEE ALSO
.sp
.LP
-\fBcu\fR(1C), \fBlogin\fR(1), \fBuucp\fR(1C), \fBttymon\fR(1M),
-\fBattributes\fR(5)
+.BR login (1),
+.BR cu (1C),
+.BR uucp (1C),
+.BR attributes (7),
+.BR ttymon (8)
.SH NOTES
.sp
.LP
@@ -132,4 +135,4 @@ The \fBct\fR program will not work with a DATAKIT Multiplex interface.
.LP
For a shared port, one used for both dial-in and dial-out, the \fBttymon\fR
program running on the line must have the \fB-r\fR and \fB-b\fR options
-specified (see \fBttymon\fR(1M)).
+specified (see \fBttymon\fR(8)).
diff --git a/usr/src/man/man1c/cu.1c b/usr/src/man/man1c/cu.1c
index 8ff78a7d0b..c36ea4d771 100644
--- a/usr/src/man/man1c/cu.1c
+++ b/usr/src/man/man1c/cu.1c
@@ -146,7 +146,7 @@ machine disconnects and places a call back to the local machine. This option
should be used when connecting to systems with callback or dialback modems.
Once the callback occurs subsequent hangups will cause \fBcu\fR to terminate.
This option can be specified more than once. For more information about
-dialback configuration, see \fBremote\fR(4) and \fISystem Administration Guide:
+dialback configuration, see \fBremote\fR(5) and \fISystem Administration Guide:
IP Services\fR
.RE
@@ -634,7 +634,7 @@ example% \fBcu systemname\fR
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBcu\fR: \fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and
\fBNLSPATH\fR.
.SH EXIT STATUS
@@ -699,9 +699,17 @@ lock file
.SH SEE ALSO
.sp
.LP
-\fBcat\fR(1), \fBecho\fR(1), \fBstty\fR(1), \fBtip\fR(1), \fBuname\fR(1),
-\fBct\fR(1C), \fBuuname\fR(1C), \fBuucp\fR(1C), \fBremote\fR(4),
-\fBattributes\fR(5), \fBenviron\fR(5)
+.BR cat (1),
+.BR echo (1),
+.BR stty (1),
+.BR tip (1),
+.BR uname (1),
+.BR ct (1C),
+.BR uucp (1C),
+.BR uuname (1C),
+.BR remote (5),
+.BR attributes (7),
+.BR environ (7)
.sp
.LP
\fISystem Administration Guide: IP Services\fR
diff --git a/usr/src/man/man1c/rup.1c b/usr/src/man/man1c/rup.1c
index bff752c39b..2a42c0d1a4 100644
--- a/usr/src/man/man1c/rup.1c
+++ b/usr/src/man/man1c/rup.1c
@@ -33,7 +33,7 @@ queries the list of specified hosts.
.sp
.LP
A remote host will only respond if it is running the \fBrstatd\fR daemon, which
-is normally started up from \fBinetd\fR(1M).
+is normally started up from \fBinetd\fR(8).
.SH OPTIONS
.sp
.ne 2
@@ -65,7 +65,9 @@ Sort the display by up time.
.SH SEE ALSO
.sp
.LP
-\fBruptime\fR(1), \fBinetd\fR(1M), \fBattributes\fR(5)
+.BR ruptime (1),
+.BR attributes (7),
+.BR inetd (8)
.SH BUGS
.sp
.LP
diff --git a/usr/src/man/man1c/uucp.1c b/usr/src/man/man1c/uucp.1c
index 53bbd17cf6..4f6b2645ed 100644
--- a/usr/src/man/man1c/uucp.1c
+++ b/usr/src/man/man1c/uucp.1c
@@ -348,7 +348,7 @@ on the remote machine. After the first session terminates, if the remote
machine is configured to transfer the spooled files to the local machine, the
remote machine initiates a call and send the files; otherwise, the user must
"call" the remote machine to transfer the files from the spool directory to the
-local machine. This call can be done manually using \fBUutry\fR(1M), or as a
+local machine. This call can be done manually using \fBUutry\fR(8), or as a
side effect of another \fBuux\fR(1C) or \fBuucp\fR call.
.sp
.LP
@@ -362,7 +362,7 @@ files.
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBuucp\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_COLLATE\fR, \fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, \fBLC_TIME\fR,
\fBNLSPATH\fR, and \fBTZ\fR.
@@ -428,7 +428,7 @@ public directory for receiving and sending
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -444,9 +444,16 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBmail\fR(1), \fBuuglist\fR(1C), \fBuustat\fR(1C), \fBuux\fR(1C),
-\fBUutry\fR(1M), \fBuuxqt\fR(1M), \fBchmod\fR(2), \fBattributes\fR(5),
-\fBenviron\fR(5), \fBstandards\fR(5)
+.BR mail (1),
+.BR uuglist (1C),
+.BR uustat (1C),
+.BR uux (1C),
+.BR chmod (2),
+.BR attributes (7),
+.BR environ (7),
+.BR standards (7),
+.BR Uutry (8),
+.BR uuxqt (8)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man1c/uuencode.1c b/usr/src/man/man1c/uuencode.1c
index f0ed1ebc34..2ac4967161 100644
--- a/usr/src/man/man1c/uuencode.1c
+++ b/usr/src/man/man1c/uuencode.1c
@@ -162,13 +162,13 @@ The pathname of a file containing the output of \fBuuencode\fR.
.SH USAGE
.sp
.LP
-See \fBlargefile\fR(5) for the description of the behavior of \fBuuencode\fR
+See \fBlargefile\fR(7) for the description of the behavior of \fBuuencode\fR
and \fBuudecode\fR when encountering files greater than or equal to 2 Gbyte (
2^31 bytes).
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBuuencode\fR and \fBuudecode\fR: \fBLANG\fR,
\fBLC_ALL\fR, \fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.SH OUTPUT
@@ -373,7 +373,7 @@ An error occurred.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -389,8 +389,14 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBmail\fR(1), \fBmailx\fR(1), \fBuucp\fR(1C), \fBuux\fR(1C),
-\fBattributes\fR(5), \fBenviron\fR(5), \fBlargefile\fR(5), \fBstandards\fR(5)
+.BR mail (1),
+.BR mailx (1),
+.BR uucp (1C),
+.BR uux (1C),
+.BR attributes (7),
+.BR environ (7),
+.BR largefile (7),
+.BR standards (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man1c/uuglist.1c b/usr/src/man/man1c/uuglist.1c
index 9c6d5dbeef..23eb42156c 100644
--- a/usr/src/man/man1c/uuglist.1c
+++ b/usr/src/man/man1c/uuglist.1c
@@ -43,4 +43,6 @@ contains the list of service grades
.SH SEE ALSO
.sp
.LP
-\fBuucp\fR(1C), \fBuux\fR(1C), \fBattributes\fR(5)
+.BR uucp (1C),
+.BR uux (1C),
+.BR attributes (7)
diff --git a/usr/src/man/man1c/uustat.1c b/usr/src/man/man1c/uustat.1c
index 6a8b5b0eeb..fabed94596 100644
--- a/usr/src/man/man1c/uustat.1c
+++ b/usr/src/man/man1c/uustat.1c
@@ -387,7 +387,7 @@ all \fBuucp\fR requests issued by the current user.
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBuustat\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_COLLATE\fR\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, \fBLC_TIME\fR,
\fBNLSPATH\fR, and \fBTZ\fR.
@@ -444,7 +444,7 @@ performance log
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -460,7 +460,10 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBuucp\fR(1C), \fBattributes\fR(5), \fBenviron\fR(5), \fBstandards\fR(5)
+.BR uucp (1C),
+.BR attributes (7),
+.BR environ (7),
+.BR standards (7)
.SH DIAGNOSTICS
.sp
.LP
diff --git a/usr/src/man/man1c/uuto.1c b/usr/src/man/man1c/uuto.1c
index 852d4be32b..c0610aade1 100644
--- a/usr/src/man/man1c/uuto.1c
+++ b/usr/src/man/man1c/uuto.1c
@@ -259,7 +259,7 @@ A pathname of a file on the local system to be copied to \fIdestination\fR.
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBuuto\fR and \fBuupick\fR: \fBLC_TYPE\fR,
\fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.SH EXIT STATUS
@@ -297,8 +297,12 @@ An error occurred.
.SH SEE ALSO
.sp
.LP
-\fBmail\fR(1), \fBuucp\fR(1C), \fBuustat\fR(1C), \fBuux\fR(1C),
-\fBuucleanup\fR(1M), \fBattributes\fR(5)
+.BR mail (1),
+.BR uucp (1C),
+.BR uustat (1C),
+.BR uux (1C),
+.BR attributes (7),
+.BR uucleanup (8)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man1c/uux.1c b/usr/src/man/man1c/uux.1c
index 8a08fc8f48..aa2128d6d5 100644
--- a/usr/src/man/man1c/uux.1c
+++ b/usr/src/man/man1c/uux.1c
@@ -278,7 +278,7 @@ Sends success notification to the user.
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBuux\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.SH EXIT STATUS
@@ -343,7 +343,7 @@ spool directories
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -359,8 +359,14 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBcut\fR(1), \fBmail\fR(1), \fBuucp\fR(1C), \fBuuglist\fR(1C),
-\fBuustat\fR(1C), \fBattributes\fR(5), \fBenviron\fR(5), \fBstandards\fR(5)
+.BR cut (1),
+.BR mail (1),
+.BR uucp (1C),
+.BR uuglist (1C),
+.BR uustat (1C),
+.BR attributes (7),
+.BR environ (7),
+.BR standards (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man1has/ctags.1has b/usr/src/man/man1has/ctags.1has
index 16f3ddf5e1..fdd57ef9c1 100644
--- a/usr/src/man/man1has/ctags.1has
+++ b/usr/src/man/man1has/ctags.1has
@@ -250,7 +250,7 @@ example% \fBfind . \e( -name SCCS -prune -name \e\e
Notice that spaces must be entered exactly as shown.
.SH ENVIRONMENT VARIABLES
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBctags\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_COLLATE\fR, \fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
.SH EXIT STATUS
@@ -294,8 +294,14 @@ Interface Stability Standard
.TE
.SH SEE ALSO
-\fBex\fR(1), \fBlex\fR(1), \fBvgrind\fR(1), \fBvi\fR(1), \fByacc\fR(1),
-\fBattributes\fR(5), \fBenviron\fR(5), \fBstandards\fR(5)
+.BR ex (1),
+.BR lex (1),
+.BR vgrind (1),
+.BR vi (1),
+.BR yacc (1),
+.BR attributes (7),
+.BR environ (7),
+.BR standards (7)
.SH NOTES
Recognition of \fBfunctions\fR, \fBsubroutines\fR, and \fBprocedures\fR for
\fBFORTRAN\fR and Pascal is done in a very simpleminded way. No attempt is made
diff --git a/usr/src/man/man1has/edit.1has b/usr/src/man/man1has/edit.1has
index e26ab6b840..02fd723196 100644
--- a/usr/src/man/man1has/edit.1has
+++ b/usr/src/man/man1has/edit.1has
@@ -346,7 +346,7 @@ The \fIfilename\fR argument indicates one or more files to be edited.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.SS "/usr/bin/edit"
.sp
@@ -389,7 +389,11 @@ CSI Enabled
.SH SEE ALSO
.sp
.LP
-\fBed\fR(1), \fBex\fR(1), \fBvi\fR(1), \fBattributes\fR(5), \fBXPG4\fR(5)
+.BR ed (1),
+.BR ex (1),
+.BR vi (1),
+.BR XPG4 (7),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man1has/ex.1has b/usr/src/man/man1has/ex.1has
index ff8d74c28a..ac157f9e69 100644
--- a/usr/src/man/man1has/ex.1has
+++ b/usr/src/man/man1has/ex.1has
@@ -86,7 +86,7 @@ If you have used \fBed\fR you find that, in addition to having all of the
useful on \fBCRT\fR terminals. Intelligent terminals and high speed terminals
are very pleasant to use with \fBvi\fR. Generally, the \fBex\fR editor uses far
more of the capabilities of terminals than \fBed\fR does, and uses the terminal
-capability data base (see \fBterminfo\fR(4)) and the type of the terminal you
+capability data base (see \fBterminfo\fR(5)) and the type of the terminal you
are using from the environment variable \fBTERM\fR to determine how to drive
your terminal efficiently. The editor makes use of features such as insert and
delete character and line in its \fBvisual\fR command (which can be abbreviated
@@ -700,7 +700,7 @@ l l .
.SH ENVIRONMENT VARIABLES
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBex\fR: \fBHOME\fR, \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_COLLATE\fR, \fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, \fBNLSPATH\fR, \fBPATH\fR,
\fBSHELL\fR, and \fBTERM\fR.
@@ -841,7 +841,7 @@ editor startup file
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.SS "/usr/bin/ex"
.sp
@@ -887,9 +887,18 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBed\fR(1), \fBedit\fR(1), \fBgrep\fR(1), \fBsed\fR(1), \fBsort\fR(1),
-\fBvi\fR(1), \fBcurses\fR(3CURSES), \fBterm\fR(4), \fBterminfo\fR(4),
-\fBattributes\fR(5), \fBenviron\fR(5), \fBstandards\fR(5)
+.BR ed (1),
+.BR edit (1),
+.BR grep (1),
+.BR sed (1),
+.BR sort (1),
+.BR vi (1),
+.BR curses (3CURSES),
+.BR term (5),
+.BR terminfo (5),
+.BR attributes (7),
+.BR environ (7),
+.BR standards (7)
.sp
.LP
\fISolaris Advanced User\&'s Guide\fR
diff --git a/usr/src/man/man1has/sh.1has b/usr/src/man/man1has/sh.1has
index a6b73d34ed..fb948dbc3a 100644
--- a/usr/src/man/man1has/sh.1has
+++ b/usr/src/man/man1has/sh.1has
@@ -398,7 +398,7 @@ are also referred to as environment variables.
.RS 13n
The default argument (home directory) for the \fBcd\fR command, set to the
user's login directory by \fBlogin\fR(1) from the password file (see
-\fBpasswd\fR(4)).
+\fBpasswd\fR(5)).
.RE
.sp
@@ -504,7 +504,7 @@ section below) for this name.
.sp
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBsh\fR: \fBLC_CTYPE\fR and \fBLC_MESSAGES\fR.
.sp
.LP
@@ -771,7 +771,7 @@ needed to complete a command, the secondary prompt (that is, the value of
\fBPS2\fR) is issued.
.SS "Environment"
.LP
-The \fIenvironment\fR (see \fBenviron\fR(5)) is a list of name-value pairs that
+The \fIenvironment\fR (see \fBenviron\fR(7)) is a list of name-value pairs that
is passed to an executed program in the same way as a normal argument list. The
shell interacts with the environment in several ways. On invocation, the shell
scans the environment and creates a parameter for each name found, giving it
@@ -1495,9 +1495,9 @@ maximum CPU time (in seconds)
maximum size of virtual memory (in kbytes)
.RE
-Run the \fBsysdef\fR(1M) command to obtain the maximum possible limits for your
+Run the \fBsysdef\fR(8) command to obtain the maximum possible limits for your
system. The values reported are in hexadecimal, but can be translated into
-decimal numbers using the \fBbc\fR(1) utility. See \fBswap\fR(1M).)
+decimal numbers using the \fBbc\fR(1) utility. See \fBswap\fR(8).)
.sp
As an example of \fBulimit\fR, to limit the size of a core file dump to 0
Megabytes, type the following:
@@ -1596,7 +1596,7 @@ group IDs to the real user and group IDs.
.ad
.RS 15n
If the \fB-r\fR flag is present the shell is a restricted shell (see
-\fBrsh\fR(1M)).
+\fBrsh\fR(8)).
.RE
.sp
@@ -1826,7 +1826,7 @@ Stops the execution of the current shell (but not if it is the login shell).
.SS "Large File Behavior"
.LP
-See \fBlargefile\fR(5) for the description of the behavior of \fBsh\fR and
+See \fBlargefile\fR(7) for the description of the behavior of \fBsh\fR and
\fBjsh\fR when encountering files greater than or equal to 2 Gbyte ( 2^31
bytes).
.SH EXIT STATUS
@@ -1861,7 +1861,7 @@ is exited.
\fB/tmp/sh*\fR
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.SS "/usr/bin/sh, /usr/bin/jsh"
.TS
box;
@@ -1884,14 +1884,42 @@ CSI Enabled
.SH SEE ALSO
.LP
-\fBIntro\fR(1), \fBbc\fR(1), \fBecho\fR(1), \fBgetoptcvt\fR(1), \fBkill\fR(1),
-\fBksh\fR(1), \fBlogin\fR(1), \fBnewgrp\fR(1), \fBpfsh\fR(1), \fBpfexec\fR(1),
-\fBps\fR(1), \fBpwd\fR(1), \fBset\fR(1), \fBshell_builtins\fR(1),
-\fBstty\fR(1), \fBtest\fR(1), \fBumask\fR(1), \fBwait\fR(1), \fBrsh\fR(1M),
-\fBsu\fR(1M), \fBswap\fR(1M), \fBsysdef\fR(1M), \fBdup\fR(2), \fBexec\fR(2),
-\fBfork\fR(2), \fBgetrlimit\fR(2), \fBpipe\fR(2), \fBulimit\fR(2),
-\fBsetlocale\fR(3C), \fBsignal.h\fR(3HEAD), \fBpasswd\fR(4), \fBprofile\fR(4),
-\fBattributes\fR(5), \fBenviron\fR(5), \fBlargefile\fR(5), \fBXPG4\fR(5)
+.BR Intro (1),
+.BR bc (1),
+.BR echo (1),
+.BR getoptcvt (1),
+.BR kill (1),
+.BR ksh (1),
+.BR login (1),
+.BR newgrp (1),
+.BR pfexec (1),
+.BR pfsh (1),
+.BR ps (1),
+.BR pwd (1),
+.BR set (1),
+.BR shell_builtins (1),
+.BR stty (1),
+.BR test (1),
+.BR umask (1),
+.BR wait (1),
+.BR dup (2),
+.BR exec (2),
+.BR fork (2),
+.BR getrlimit (2),
+.BR pipe (2),
+.BR ulimit (2),
+.BR setlocale (3C),
+.BR signal.h (3HEAD),
+.BR passwd (5),
+.BR profile (5),
+.BR XPG4 (7),
+.BR attributes (7),
+.BR environ (7),
+.BR largefile (7),
+.BR rsh (8),
+.BR su (8),
+.BR swap (8),
+.BR sysdef (8)
.SH WARNINGS
.LP
The use of \fBsetuid\fR shell scripts is \fBstrongly\fR discouraged.
diff --git a/usr/src/man/man1has/vi.1has b/usr/src/man/man1has/vi.1has
index eb841bdbb4..41ceef8c85 100644
--- a/usr/src/man/man1has/vi.1has
+++ b/usr/src/man/man1has/vi.1has
@@ -1720,12 +1720,12 @@ retrieve \fId\fR'th last delete
.SH USAGE
.LP
-See \fBlargefile\fR(5) for the description of the behavior of \fBvi\fR and
+See \fBlargefile\fR(7) for the description of the behavior of \fBvi\fR and
\fBview\fR when encountering files greater than or equal to 2 Gbyte ( 2^31
bytes).
.SH ENVIRONMENT VARIABLES
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBvi\fR: \fBLANG\fR, \fBLC_ALL\fR,
\fBLC_COLLATE\fR, \fBLC_CTYPE\fR, \fBLC_TIME\fR, \fBLC_MESSAGES\fR,
\fBNLSPATH\fR, \fBPATH\fR, \fBSHELL\fR, and \fBTERM\fR.
@@ -1792,7 +1792,7 @@ subset of compiled terminal description database
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.SS "/usr/bin/vi, /usr/bin/view, /usr/bin/vedit"
.TS
box;
@@ -1829,8 +1829,15 @@ Interface Stability Standard
.SH SEE ALSO
.LP
-\fBIntro\fR(1), \fBctags\fR(1), \fBed\fR(1), \fBedit\fR(1), \fBex\fR(1),
-\fBattributes\fR(5), \fBenviron\fR(5), \fBlargefile\fR(5), \fBstandards\fR(5)
+.BR Intro (1),
+.BR ctags (1),
+.BR ed (1),
+.BR edit (1),
+.BR ex (1),
+.BR attributes (7),
+.BR environ (7),
+.BR largefile (7),
+.BR standards (7)
.sp
.LP
\fISolaris Advanced User\&'s Guide\fR
diff --git a/usr/src/man/man1m/6to4relay.1m b/usr/src/man/man1m/6to4relay.1m
deleted file mode 100644
index aee93d0a1d..0000000000
--- a/usr/src/man/man1m/6to4relay.1m
+++ /dev/null
@@ -1,349 +0,0 @@
-'\" te
-.\" Copyright (C) 2002, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH 6TO4RELAY 1M "Nov 19, 2002"
-.SH NAME
-6to4relay \- administer configuration for 6to4 relay router communication
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/6to4relay\fR
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/6to4relay\fR [\fB-e\fR] [\fB-a\fR \fIaddr\fR]
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/6to4relay\fR [\fB-d\fR]
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/6to4relay\fR [\fB-h\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fB6to4relay\fR command is used to configure 6to4 relay router
-communication. Relay router communication support is enabled by setting the
-value of a variable that stores an IPv4 address within the \fBtun\fR module.
-This variable is global to all tunnels and defines the policy for communication
-with relay routers. By default, the address is set to \fBINADDR_ANY\fR
-(\fB0.0.0.0\fR), and the kernel interprets the value to indicate that support
-for relay router communication is disabled. Otherwise, support is enabled, and
-the specified address is used as the IPv4 destination address when packets
-destined for native IPv6 (non-6to4) hosts are sent through the 6to4 tunnel
-interface. The \fB6to4relay\fR command uses a project private ioctl to set the
-variable.
-.sp
-.LP
-\fB6to4relay\fR used without any options outputs the current, in-kernel,
-configuration status. Use the \fB-a\fR option to send packets to a specific
-relay router's \fBunicast\fR address instead of the default \fBanycast\fR
-address. The address specified with the \fB-a\fR option does not specify the
-policy for receiving traffic from relay routers. The source relay router on a
-received packet is non-deterministic, since a different relay router may be
-chosen for each sending native IPv6 end-point.
-.sp
-.LP
-Configuration changes made by using the \fB6to4relay\fR are not persistent
-across reboot. The changes will persist in the kernel only until you take the
-tunnel down
-.SH OPTIONS
-.sp
-.LP
-The \fB6to4relay\fR command supports the following options:
-.sp
-.ne 2
-.na
-\fB\fB-a\fR \fIaddr\fR\fR
-.ad
-.RS 11n
-Use the specified address, \fIaddr\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-e\fR\fR
-.ad
-.RS 11n
-Enable support for relay router. Use \fB-a\fR \fIaddr\fR if it is specified.
-Otherwise, use the default \fBanycast\fR address, 192.88.99.1.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-d\fR\fR
-.ad
-.RS 11n
-Disable support for the relay router.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-h\fR\fR
-.ad
-.RS 11n
-Help
-.RE
-
-.SH OPERANDS
-.sp
-.LP
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fB\fIaddr\fR\fR
-.ad
-.RS 8n
-A specific relay router's unicast address. \fIaddr\fR must be specified as a
-dotted decimal representation of an IPv4 address. Otherwise, an error will
-occur, and the command will fail.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRPrinting the In-Kernel Configuration Status
-.sp
-.LP
-Use \fB/usr/sbin/6to4relay\fR without any options to print the in-kernel
-configuration status.
-
-.sp
-.in +2
-.nf
-example# \fB/usr/sbin/6to4relay\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-If 6to4 relay router communication is disabled, the administrator will see the
-following message:
-
-.sp
-.in +2
-.nf
-6to4relay: 6to4 Relay Router communication support is disabled.
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-If 6to4 router communication is enabled, the user will see this message:
-.sp
-.in +2
-.nf
-6to4relay: 6to4 Relay Router communication support is enabled.
-IPv4 destination address of Relay Router = 192.88.99.1
-.fi
-.in -2
-.sp
-
-.SH EXIT STATUS
-.sp
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR \fR
-.ad
-.RS 6n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB>\fB0\fR\fR
-.ad
-.RS 6n
-An error occurred.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/usr/sbin/6to4relay\fR \fR
-.ad
-.RS 24n
-The default installation root
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBifconfig\fR(1M), \fBattributes\fR(5)
-.sp
-.LP
-Huitema, C. \fIRFC 3068, An Anycast Prefix for 6to4 Relay Routers\fR. Network
-Working Group. June, 2001.
-.sp
-.LP
-Carpenter, B. and Moore, K. \fIRFC 3056, Connection of IPv6 Domains via IPv4
-Clouds\fR. Network Working Group. February, 2001.
-.SH DIAGNOSTICS
-.sp
-.LP
-The \fB6to4relay\fR reports the following messages:
-.sp
-.in +2
-.nf
-6to4relay: input (0.0.0.0) is not a valid IPv4 unicast address
-.fi
-.in -2
-.sp
-
-.RS +4
-\fBExample: \fR
-.sp
-.LP
-The following example provides an incorrect unicast address.
-.sp
-.in +2
-.nf
-example# \fB6to4relay -e -a 0.0.0.0\fR
-.fi
-.in -2
-.sp
-\fBDescription: \fR
-.sp
-.LP
-The address specified with the \fB-a\fR option must be a valid unicast address.
-.RE
-
-.sp
-.in +2
-.nf
-6to4relay: option requires an argument -a
-usage:
- 6to4relay
- 6to4relay -e [-a <addr>]
- 6to4relay -d
- 6to4relay -h
-.fi
-.in -2
-.sp
-
-.RS +4
-\fBExample: \fR
-.sp
-.LP
-The following example does not include an argument for the \fB-a\fR option.
-.sp
-.in +2
-.nf
-example# \fB6to4relay -e -a \fR
-.fi
-.in -2
-.sp
-\fBDescription: \fR
-.sp
-.LP
-The \fB-a\fR option requires an argument.
-.RE
-
-.sp
-.in +2
-.nf
-usage:
- 6to4relay
- 6to4relay -e [-a <addr>]
- 6to4relay -d
- 6to4relay -h
-.fi
-.in -2
-.sp
-
-.RS +4
-\fBExample: \fR
-.sp
-.LP
-The following example specifies options that are not permitted.
-.sp
-.in +2
-.nf
-example# \fB6to4relay -e -d\fR
-.fi
-.in -2
-.sp
-\fBDescription: \fR
-.sp
-.LP
-The options specified are not permitted. A usage message is output to the
-screen.
-.RE
-
-.sp
-.in +2
-.nf
-usage:
- 6to4relay
- 6to4relay -e [-a <addr>]
- 6to4relay -d
- 6to4relay -h
-.fi
-.in -2
-.sp
-
-.RS +4
-\fBExample: \fR
-.sp
-.LP
-The following example specifies the \fB-a\fR option without specifying the
-\fB-e\fR option.
-.sp
-.in +2
-.nf
-example# \fB6to4relay -a 1.2.3.4\fR
-.fi
-.in -2
-.sp
-\fBDescription: \fR
-.sp
-.LP
-The \fB-e\fR option is required in conjunction with the \fB-a\fR option. A
-usage message is output to the screen.
-.RE
-
-.sp
-.in +2
-.nf
-6to4relay: ioctl (I_STR) : Invalid argument
-.fi
-.in -2
-.sp
-
-.RS +4
-\fBExample: \fR
-.sp
-.LP
-The following example specifies an invalid address.
-.sp
-.in +2
-.nf
-example# \fB6to4relay -e -a 239.255.255.255\fR
-.fi
-.in -2
-.sp
-\fBDescription: \fR
-.sp
-.LP
-The address specified with the \fB-a\fR option must not be a class d
-\fIaddr\fR.
-.RE
-
diff --git a/usr/src/man/man1m/Intro.1m b/usr/src/man/man1m/Intro.1m
deleted file mode 100644
index 8f4e7f396b..0000000000
--- a/usr/src/man/man1m/Intro.1m
+++ /dev/null
@@ -1,142 +0,0 @@
-'\" te
-.\" Copyright 2008, Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 2015 Nexenta Systems, Inc. All rights reserved.
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH INTRO 1M "Sep 8, 2015"
-.SH NAME
-Intro, intro \- introduction to maintenance commands and application programs
-.SH DESCRIPTION
-.LP
-This section describes, in alphabetical order, commands that are used chiefly
-for system maintenance and administration purposes.
-.LP
-Because of command restructuring for the Virtual File System architecture,
-there are several instances of multiple manual pages that begin with the same
-name. For example, the \fBmount\fR, pages \(mi \fBmount\fR(1M),
-\fBmount_hsfs\fR(1M), \fBmount_nfs\fR(1M), \fBmount_tmpfs\fR(1M),
-and \fBmount_ufs\fR(1M). In each such case the first of the
-multiple pages describes the syntax and options of the generic command, that
-is, those options applicable to all FSTypes (file system types). The succeeding
-pages describe the functionality of the FSType-specific modules of the command.
-These pages list the command followed by an underscore ( _ ) and the FSType to
-which they pertain. Note that the administrator should not attempt to call
-these modules directly. The generic command provides a common interface to all
-of them. Thus the FSType-specific manual pages should not be viewed as
-describing distinct commands, but rather as detailing those aspects of a
-command that are specific to a particular FSType.
-.SH COMMAND SYNTAX
-.LP
-Unless otherwise noted, commands described in this section accept options and
-other arguments according to the following syntax:
-.sp
-.in +2
-.nf
-\fIname\fR [\fIoption\fR(\fIs\fR)] [\fIcmdarg\fR(\fIs\fR)]
-.fi
-.in -2
-
-.LP
-where:
-.sp
-.ne 2
-.na
-\fB\fIname\fR\fR
-.ad
-.RS 15n
-The name of an executable file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIoption\fR\fR
-.ad
-.RS 15n
-\fB\(mi\fR \fInoargletter\fR(\fIs\fR) or,
-.sp
-\fB\(mi\fR \fIargletter\fR<\|>\fIoptarg\fR
-.sp
-where <\|> is optional white space.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fInoargletter\fR\fR
-.ad
-.RS 15n
-A single letter representing an option without an argument.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIargletter\fR\fR
-.ad
-.RS 15n
-A single letter representing an option requiring an argument.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIoptarg\fR\fR
-.ad
-.RS 15n
-Argument (character string) satisfying preceding \fIargletter\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIcmdarg\fR\fR
-.ad
-.RS 15n
-Pathname (or other command argument) \fInot\fR beginning with \fB\(mi\fR or,
-\fB\(mi\fR by itself indicating the standard input.
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for a discussion of the attributes listed in this
-section.
-.SH ACKNOWLEDGMENTS
-.LP
-Sun Microsystems, Inc. gratefully acknowledges The Open Group for permission to
-reproduce portions of its copyrighted documentation. Original documentation
-from The Open Group can be obtained online at
-http://www.opengroup.org/bookstore/\&.
-.LP
-The Institute of Electrical and Electronics Engineers and The Open Group, have
-given us permission to reprint portions of their documentation.
-.LP
-In the following statement, the phrase ``this text'' refers to portions of the
-system documentation.
-.LP
-Portions of this text are reprinted and reproduced in electronic form in the
-SunOS Reference Manual, from IEEE Std 1003.1, 2004 Edition, Standard for
-Information Technology -- Portable Operating System Interface (POSIX), The Open
-Group Base Specifications Issue 6, Copyright (C) 2001-2004 by the Institute of
-Electrical and Electronics Engineers, Inc and The Open Group. In the event of
-any discrepancy between these versions and the original IEEE and The Open Group
-Standard, the original IEEE and The Open Group Standard is the referee
-document. The original Standard can be obtained online at
-http://www.opengroup.org/unix/online.html\&.
-.LP
-This notice shall appear on any product containing this material.
-.SH SEE ALSO
-.LP
-\fBgetopt\fR(1), \fBgetopt\fR(3C), \fBattributes\fR(5)
-.SH DIAGNOSTICS
-.LP
-Upon termination, each command returns 0 for normal termination and non-zero to
-indicate troubles such as erroneous parameters, bad or inaccessible data, or
-other inability to cope with the task at hand. It is called variously ``exit
-code,'' ``exit status,'' or ``return code,'' and is described only where
-special conventions are involved.
-.SH NOTES
-.LP
-Unfortunately, not all commands adhere to the standard syntax.
diff --git a/usr/src/man/man1m/Makefile b/usr/src/man/man1m/Makefile
deleted file mode 100644
index a75ae983f6..0000000000
--- a/usr/src/man/man1m/Makefile
+++ /dev/null
@@ -1,752 +0,0 @@
-#
-# This file and its contents are supplied under the terms of the
-# Common Development and Distribution License ("CDDL"), version 1.0.
-# You may only use this file in accordance with the terms of version
-# 1.0 of the CDDL.
-#
-# A full copy of the text of the CDDL should have accompanied this
-# source. A copy of the CDDL is also available via the Internet
-# at http://www.illumos.org/license/CDDL.
-#
-
-#
-# Copyright 2011, Richard Lowe
-# Copyright 2020 Joyent, Inc.
-# Copyright 2015 Nexenta Systems, Inc. All rights reserved.
-# Copyright (c) 2013, 2016 by Delphix. All rights reserved.
-# Copyright 2016 Toomas Soome <tsoome@me.com>
-# Copyright 2018 Nexenta Systems, Inc.
-# Copyright (c) 2017, Chris Fraire <cfraire@me.com>.
-# Copyright 2020 Peter Tribble
-# Copyright 2021 OmniOS Community Edition (OmniOSce) Association.
-#
-
-include $(SRC)/Makefile.master
-
-MANSECT= 1m
-
-_MANFILES= 6to4relay.1m \
- Intro.1m \
- Uutry.1m \
- accept.1m \
- acct.1m \
- acctadm.1m \
- acctcms.1m \
- acctcon.1m \
- acctmerg.1m \
- acctprc.1m \
- acctsh.1m \
- adbgen.1m \
- add_allocatable.1m \
- add_drv.1m \
- addbadsec.1m \
- arcstat.1m \
- arp.1m \
- atohexlabel.1m \
- audit.1m \
- audit_warn.1m \
- auditconfig.1m \
- auditd.1m \
- auditrecord.1m \
- auditreduce.1m \
- auditstat.1m \
- automount.1m \
- automountd.1m \
- autopush.1m \
- bart.1m \
- beadm.1m \
- boot.1m \
- bootadm.1m \
- busstat.1m \
- captoinfo.1m \
- catman.1m \
- ccidadm.1m \
- cfgadm.1m \
- cfgadm_cardbus.1m \
- cfgadm_fp.1m \
- cfgadm_ib.1m \
- cfgadm_pci.1m \
- cfgadm_sata.1m \
- cfgadm_sbd.1m \
- cfgadm_scsi.1m \
- cfgadm_usb.1m \
- chat.1m \
- check-hostname.1m \
- check-permissions.1m \
- chroot.1m \
- clear_locks.1m \
- clinfo.1m \
- clri.1m \
- connstat.1m \
- consadm.1m \
- conv_lp.1m \
- conv_lpd.1m \
- coreadm.1m \
- cpustat.1m \
- cron.1m \
- cryptoadm.1m \
- datadm.1m \
- dd.1m \
- devattr.1m \
- devfree.1m \
- devfsadm.1m \
- device_remap.1m \
- devinfo.1m \
- devlinks.1m \
- devnm.1m \
- devprop.1m \
- devreserv.1m \
- df.1m \
- df_ufs.1m \
- dfmounts.1m \
- dfmounts_nfs.1m \
- dfshares.1m \
- dfshares_nfs.1m \
- dhcpagent.1m \
- diskinfo.1m \
- disks.1m \
- diskscan.1m \
- dispadmin.1m \
- dladm.1m \
- dlmgmtd.1m \
- dmesg.1m \
- dminfo.1m \
- dns-sd.1m \
- domainname.1m \
- drvconfig.1m \
- dtrace.1m \
- dumpadm.1m \
- editmap.1m \
- edquota.1m \
- eeprom.1m \
- embedded_su.1m \
- etrn.1m \
- fcinfo.1m \
- fdetach.1m \
- fdisk.1m \
- ff.1m \
- ff_ufs.1m \
- fiocompress.1m \
- flowadm.1m \
- fmadm.1m \
- fmd.1m \
- fmdump.1m \
- fmstat.1m \
- fmthard.1m \
- format.1m \
- fruadm.1m \
- fsck.1m \
- fsck_pcfs.1m \
- fsck_udfs.1m \
- fsck_ufs.1m \
- fsdb.1m \
- fsdb_udfs.1m \
- fsdb_ufs.1m \
- fsirand.1m \
- fssnap.1m \
- fssnap_ufs.1m \
- fsstat.1m \
- fstyp.1m \
- fuser.1m \
- fwflash.1m \
- fwtmp.1m \
- getdev.1m \
- getdevpolicy.1m \
- getdgrp.1m \
- getent.1m \
- getty.1m \
- getvol.1m \
- groupadd.1m \
- groupdel.1m \
- groupmod.1m \
- growfs.1m \
- gsscred.1m \
- gssd.1m \
- hal-device.1m \
- hal-fdi-validate.1m \
- hal-find.1m \
- hal-get-property.1m \
- hald.1m \
- halt.1m \
- hextoalabel.1m \
- hostconfig.1m \
- hotplug.1m \
- id.1m \
- idmap.1m \
- idmapd.1m \
- idsconfig.1m \
- if_mpadm.1m \
- ifconfig.1m \
- ifparse.1m \
- ikeadm.1m \
- ikecert.1m \
- in.chargend.1m \
- in.comsat.1m \
- in.daytimed.1m \
- in.discardd.1m \
- in.echod.1m \
- in.fingerd.1m \
- in.iked.1m \
- in.lpd.1m \
- in.mpathd.1m \
- in.ndpd.1m \
- in.rarpd.1m \
- in.rdisc.1m \
- in.rexecd.1m \
- in.ripngd.1m \
- in.rlogind.1m \
- in.routed.1m \
- in.rshd.1m \
- in.rwhod.1m \
- in.talkd.1m \
- in.telnetd.1m \
- in.tftpd.1m \
- in.timed.1m \
- in.uucpd.1m \
- inetadm.1m \
- inetconv.1m \
- inetd.1m \
- infocmp.1m \
- init.1m \
- inityp2l.1m \
- install.1m \
- installboot.1m \
- installf.1m \
- installgrub.1m \
- intrd.1m \
- intrstat.1m \
- iostat.1m \
- ipaddrsel.1m \
- ipadm.1m \
- ipdadm.1m \
- ipf.1m \
- ipfs.1m \
- ipfstat.1m \
- ipmon.1m \
- ipmpstat.1m \
- ipnat.1m \
- ippool.1m \
- ipqosconf.1m \
- ipsecalgs.1m \
- ipsecconf.1m \
- ipseckey.1m \
- iscsiadm.1m \
- isns.1m \
- isnsadm.1m \
- itadm.1m \
- k5srvutil.1m \
- kadb.1m \
- kadmin.1m \
- kadmind.1m \
- kclient.1m \
- kdb5_ldap_util.1m \
- kdb5_util.1m \
- kdcmgr.1m \
- kernel.1m \
- keyserv.1m \
- killall.1m \
- kprop.1m \
- kpropd.1m \
- kproplog.1m \
- krb5kdc.1m \
- ksslcfg.1m \
- kstat.1m \
- ktkt_warnd.1m \
- labelit.1m \
- labelit_hsfs.1m \
- labelit_udfs.1m \
- labelit_ufs.1m \
- latencytop.1m \
- ldap_cachemgr.1m \
- ldapaddent.1m \
- ldapclient.1m \
- link.1m \
- listdgrp.1m \
- listen.1m \
- locator.1m \
- lockfs.1m \
- lockstat.1m \
- lofiadm.1m \
- logadm.1m \
- logins.1m \
- lpadmin.1m \
- lpfilter.1m \
- lpforms.1m \
- lpget.1m \
- lpmove.1m \
- lpsched.1m \
- lpset.1m \
- lpshut.1m \
- lpsystem.1m \
- lpusers.1m \
- luxadm.1m \
- mail.local.1m \
- mailwrapper.1m \
- makedbm.1m \
- makemap.1m \
- mdnsd.1m \
- mkdevalloc.1m \
- mkdevmaps.1m \
- mkfifo.1m \
- mkfile.1m \
- mkfs.1m \
- mkfs_pcfs.1m \
- mkfs_udfs.1m \
- mkfs_ufs.1m \
- mknod.1m \
- mkpwdict.1m \
- modinfo.1m \
- modload.1m \
- modunload.1m \
- mount.1m \
- mount_hsfs.1m \
- mount_nfs.1m \
- mount_pcfs.1m \
- mount_smbfs.1m \
- mount_tmpfs.1m \
- mount_udfs.1m \
- mount_ufs.1m \
- mountall.1m \
- mountd.1m \
- mpathadm.1m \
- mpstat.1m \
- msgid.1m \
- mvdir.1m \
- ncaconfd.1m \
- ncheck.1m \
- ncheck_ufs.1m \
- ndd.1m \
- ndp.1m \
- ndmpadm.1m \
- ndmpd.1m \
- ndmpstat.1m \
- netstat.1m \
- netstrategy.1m \
- newaliases.1m \
- newfs.1m \
- newkey.1m \
- nfs4cbd.1m \
- nfsd.1m \
- nfslogd.1m \
- nfsmapid.1m \
- nfsstat.1m \
- nlsadmin.1m \
- nscd.1m \
- nwamd.1m \
- passmgmt.1m \
- pbind.1m \
- pcitool.1m \
- picld.1m \
- ping.1m \
- pkgadd.1m \
- pkgadm.1m \
- pkgask.1m \
- pkgchk.1m \
- pkgrm.1m \
- plockstat.1m \
- pmadm.1m \
- pmconfig.1m \
- polkit-is-privileged.1m \
- pooladm.1m \
- poolbind.1m \
- poolcfg.1m \
- poold.1m \
- poolstat.1m \
- ports.1m \
- powerd.1m \
- powertop.1m \
- ppdmgr.1m \
- pppd.1m \
- pppdump.1m \
- pppoec.1m \
- pppoed.1m \
- pppstats.1m \
- praudit.1m \
- print-service.1m \
- printmgr.1m \
- projadd.1m \
- projdel.1m \
- projmod.1m \
- prstat.1m \
- prtconf.1m \
- prtdiag.1m \
- prtfru.1m \
- prtpicl.1m \
- prtvtoc.1m \
- psradm.1m \
- psrinfo.1m \
- psrset.1m \
- putdev.1m \
- putdgrp.1m \
- pwck.1m \
- pwconv.1m \
- quot.1m \
- quota.1m \
- quotacheck.1m \
- quotaon.1m \
- raidctl.1m \
- ramdiskadm.1m \
- rcapadm.1m \
- rcapd.1m \
- rctladm.1m \
- rdate.1m \
- reboot.1m \
- rem_drv.1m \
- remove_allocatable.1m \
- removef.1m \
- repquota.1m \
- rmmount.1m \
- rmt.1m \
- rmvolmgr.1m \
- roleadd.1m \
- roledel.1m \
- rolemod.1m \
- root_archive.1m \
- route.1m \
- routeadm.1m \
- rpc.bootparamd.1m \
- rpc.rstatd.1m \
- rpc.rusersd.1m \
- rpc.rwalld.1m \
- rpc.smserverd.1m \
- rpc.sprayd.1m \
- rpc.yppasswdd.1m \
- rpc.ypupdated.1m \
- rpcbind.1m \
- rpcinfo.1m \
- rquotad.1m \
- rsh.1m \
- rtc.1m \
- rtquery.1m \
- runacct.1m \
- rwall.1m \
- sac.1m \
- sacadm.1m \
- saf.1m \
- sar.1m \
- sasinfo.1m \
- savecore.1m \
- sbdadm.1m \
- scadm.1m \
- sdpadm.1m \
- sendmail.1m \
- setuname.1m \
- share.1m \
- share_nfs.1m \
- shareall.1m \
- sharectl.1m \
- sharemgr.1m \
- showmount.1m \
- shutdown.1m \
- slpd.1m \
- smbadm.1m \
- smbd.1m \
- smbiod.1m \
- smbios.1m \
- smbstat.1m \
- smrsh.1m \
- snoop.1m \
- soconfig.1m \
- sppptun.1m \
- spray.1m \
- statd.1m \
- stmfadm.1m \
- stmsboot.1m \
- strace.1m \
- strclean.1m \
- strerr.1m \
- sttydefs.1m \
- su.1m \
- sulogin.1m \
- svc.configd.1m \
- svc.ipfd.1m \
- svc.startd.1m \
- svcadm.1m \
- svccfg.1m \
- swap.1m \
- sync.1m \
- syncinit.1m \
- syncloop.1m \
- syncstat.1m \
- sysdef.1m \
- syseventadm.1m \
- syseventconfd.1m \
- syseventd.1m \
- syslogd.1m \
- tapes.1m \
- tcpd.1m \
- tcpdchk.1m \
- tcpdmatch.1m \
- th_define.1m \
- th_manage.1m \
- tic.1m \
- tnchkdb.1m \
- tnctl.1m \
- tnd.1m \
- tninfo.1m \
- tpmadm.1m \
- traceroute.1m \
- trapstat.1m \
- ttyadm.1m \
- ttymon.1m \
- tunefs.1m \
- txzonemgr.1m \
- tzreload.1m \
- tzselect.1m \
- uadmin.1m \
- ucodeadm.1m \
- ufsdump.1m \
- ufsrestore.1m \
- unshare.1m \
- unshare_nfs.1m \
- update_drv.1m \
- updatehome.1m \
- useradd.1m \
- userdel.1m \
- usermod.1m \
- utmpd.1m \
- uucheck.1m \
- uucico.1m \
- uucleanup.1m \
- uusched.1m \
- uuxqt.1m \
- vfsstat.1m \
- vmstat.1m \
- vndadm.1m \
- vndstat.1m \
- volcopy.1m \
- volcopy_ufs.1m \
- vscanadm.1m \
- vscand.1m \
- wall.1m \
- whodo.1m \
- wificonfig.1m \
- wpad.1m \
- wracct.1m \
- ypbind.1m \
- ypinit.1m \
- ypmake.1m \
- ypmap2src.1m \
- yppoll.1m \
- yppush.1m \
- ypserv.1m \
- ypset.1m \
- ypstart.1m \
- ypxfr.1m \
- zdb.1m \
- zdump.1m \
- zfs.1m \
- zfs-program.1m \
- zic.1m \
- zoneadm.1m \
- zoneadmd.1m \
- zonecfg.1m \
- zonestatd.1m \
- zpool.1m \
- zstreamdump.1m \
- ztest.1m
-
-i386_MANFILES= \
- acpidump.1m \
- acpixtract.1m \
- bhyve.1m \
- bhyvectl.1m \
- nvmeadm.1m \
- pptadm.1m \
- rdmsr.1m
-
-sparc_MANFILES= dcs.1m \
- drd.1m \
- efdaemon.1m \
- ldmad.1m \
- monitor.1m \
- obpsym.1m \
- oplhpd.1m \
- prtdscp.1m \
- sckmd.1m \
- sf880drd.1m \
- vntsd.1m
-
-MANLINKS= acctcon1.1m \
- acctcon2.1m \
- acctdisk.1m \
- acctdusg.1m \
- accton.1m \
- acctprc1.1m \
- acctprc2.1m \
- acctwtmp.1m \
- audlinks.1m \
- bootparamd.1m \
- chargefee.1m \
- ckpacct.1m \
- closewtmp.1m \
- comsat.1m \
- dcopy.1m \
- devfsadmd.1m \
- dodisk.1m \
- fcadm.1m \
- fingerd.1m \
- grpck.1m \
- hal-find-by-capability.1m \
- hal-find-by-property.1m \
- hal-set-property.1m \
- intro.1m \
- kadmin.local.1m \
- lastlogin.1m \
- monacct.1m \
- nulladm.1m \
- poweroff.1m \
- prctmp.1m \
- prdaily.1m \
- prtacct.1m \
- quotaoff.1m \
- rarpd.1m \
- rdisc.1m \
- reject.1m \
- restricted_shell.1m \
- rexecd.1m \
- rlogind.1m \
- routed.1m \
- rshd.1m \
- rstatd.1m \
- rusersd.1m \
- rwalld.1m \
- rwhod.1m \
- sa1.1m \
- sa2.1m \
- sadc.1m \
- shutacct.1m \
- sprayd.1m \
- startup.1m \
- talkd.1m \
- telinit.1m \
- telnetd.1m \
- tftpd.1m \
- turnacct.1m \
- umount.1m \
- umount_smbfs.1m \
- umountall.1m \
- unlink.1m \
- unshareall.1m \
- utmp2wtmp.1m \
- uucpd.1m \
- uutry.1m \
- wtmpfix.1m \
- yppasswdd.1m \
- ypstop.1m \
- ypupdated.1m \
- ypxfr_1perday.1m \
- ypxfr_1perhour.1m \
- ypxfr_2perday.1m \
- ypxfrd.1m
-
-MANFILES= $(_MANFILES) $($(MACH)_MANFILES)
-
-intro.1m := LINKSRC = Intro.1m
-
-uutry.1m := LINKSRC = Uutry.1m
-
-reject.1m := LINKSRC = accept.1m
-
-acctdisk.1m := LINKSRC = acct.1m
-acctdusg.1m := LINKSRC = acct.1m
-accton.1m := LINKSRC = acct.1m
-acctwtmp.1m := LINKSRC = acct.1m
-closewtmp.1m := LINKSRC = acct.1m
-utmp2wtmp.1m := LINKSRC = acct.1m
-
-acctcon1.1m := LINKSRC = acctcon.1m
-acctcon2.1m := LINKSRC = acctcon.1m
-
-acctprc1.1m := LINKSRC = acctprc.1m
-acctprc2.1m := LINKSRC = acctprc.1m
-
-chargefee.1m := LINKSRC = acctsh.1m
-ckpacct.1m := LINKSRC = acctsh.1m
-dodisk.1m := LINKSRC = acctsh.1m
-lastlogin.1m := LINKSRC = acctsh.1m
-monacct.1m := LINKSRC = acctsh.1m
-nulladm.1m := LINKSRC = acctsh.1m
-prctmp.1m := LINKSRC = acctsh.1m
-prdaily.1m := LINKSRC = acctsh.1m
-prtacct.1m := LINKSRC = acctsh.1m
-shutacct.1m := LINKSRC = acctsh.1m
-startup.1m := LINKSRC = acctsh.1m
-turnacct.1m := LINKSRC = acctsh.1m
-
-dcopy.1m := LINKSRC = clri.1m
-
-audlinks.1m := LINKSRC = devfsadm.1m
-devfsadmd.1m := LINKSRC = devfsadm.1m
-
-fcadm.1m := LINKSRC = fcinfo.1m
-
-wtmpfix.1m := LINKSRC = fwtmp.1m
-
-hal-find-by-capability.1m := LINKSRC = hal-find.1m
-hal-find-by-property.1m := LINKSRC = hal-find.1m
-
-hal-set-property.1m := LINKSRC = hal-get-property.1m
-
-poweroff.1m := LINKSRC = halt.1m
-
-comsat.1m := LINKSRC = in.comsat.1m
-fingerd.1m := LINKSRC = in.fingerd.1m
-rarpd.1m := LINKSRC = in.rarpd.1m
-rdisc.1m := LINKSRC = in.rdisc.1m
-rexecd.1m := LINKSRC = in.rexecd.1m
-rlogind.1m := LINKSRC = in.rlogind.1m
-routed.1m := LINKSRC = in.routed.1m
-rshd.1m := LINKSRC = in.rshd.1m
-rwhod.1m := LINKSRC = in.rwhod.1m
-talkd.1m := LINKSRC = in.talkd.1m
-telnetd.1m := LINKSRC = in.telnetd.1m
-tftpd.1m := LINKSRC = in.tftpd.1m
-uucpd.1m := LINKSRC = in.uucpd.1m
-
-telinit.1m := LINKSRC = init.1m
-
-kadmin.local.1m := LINKSRC = kadmin.1m
-
-unlink.1m := LINKSRC = link.1m
-
-umount.1m := LINKSRC = mount.1m
-
-umount_smbfs.1m := LINKSRC = mount_smbfs.1m
-
-umountall.1m := LINKSRC = mountall.1m
-
-grpck.1m := LINKSRC = pwck.1m
-
-quotaoff.1m := LINKSRC = quotaon.1m
-
-bootparamd.1m := LINKSRC = rpc.bootparamd.1m
-rstatd.1m := LINKSRC = rpc.rstatd.1m
-rusersd.1m := LINKSRC = rpc.rusersd.1m
-rwalld.1m := LINKSRC = rpc.rwalld.1m
-sprayd.1m := LINKSRC = rpc.sprayd.1m
-yppasswdd.1m := LINKSRC = rpc.yppasswdd.1m
-ypupdated.1m := LINKSRC = rpc.ypupdated.1m
-
-restricted_shell.1m := LINKSRC = rsh.1m
-
-sa1.1m := LINKSRC = sar.1m
-sa2.1m := LINKSRC = sar.1m
-sadc.1m := LINKSRC = sar.1m
-
-unshareall.1m := LINKSRC = shareall.1m
-
-ypxfrd.1m := LINKSRC = ypserv.1m
-
-ypstop.1m := LINKSRC = ypstart.1m
-
-ypxfr_1perday.1m := LINKSRC = ypxfr.1m
-ypxfr_1perhour.1m := LINKSRC = ypxfr.1m
-ypxfr_2perday.1m := LINKSRC = ypxfr.1m
-
-
-.KEEP_STATE:
-
-include $(SRC)/man/Makefile.man
-
-install: $(ROOTMANFILES) $(ROOTMANLINKS)
diff --git a/usr/src/man/man1m/Uutry.1m b/usr/src/man/man1m/Uutry.1m
deleted file mode 100644
index d8b001a059..0000000000
--- a/usr/src/man/man1m/Uutry.1m
+++ /dev/null
@@ -1,133 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 1997 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH UUTRY 1M "May 18, 1993"
-.SH NAME
-Uutry, uutry \- attempt to contact remote system with debugging on
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/uucp/Uutry\fR [\fB-r\fR] [\fB-c\fR \fItype\fR] [\fB-x\fR \fIdebug-level\fR] \fIsystem-name\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBUutry\fR is a shell script that is used to invoke \fBuucico\fR(1M) to call a
-remote site. Debugging is initially turned on and is set to the default value
-of \fB5\fR. The debugging output is put in file \fB/tmp/\fR\fIsystem-name.\fR
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-r\fR \fR
-.ad
-.RS 19n
-This option overrides the retry time that is set in file
-\fB/var/uucp/.Status/\fR\fIsystem-name.\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-c\fR\fI type\fR \fR
-.ad
-.RS 19n
-The first field in the \fBDevices\fR file is the "Type" field. The \fB-c\fR
-option forces \fBuucico\fR to use only entries in the "Type" field that match
-the user-specified \fBtype\fR. The specified \fBtype\fR is usually the name of
-a local area network.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-x\fR\fI debug-level\fR \fR
-.ad
-.RS 19n
-\fIdebug-level\fR is a number from \fB0\fR to \fB9\fR. Higher numbers give
-more detailed debugging information.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/uucp/Devices\fR \fR
-.ad
-.RS 28n
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/uucp/Limits\fR \fR
-.ad
-.RS 28n
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/uucp/Permissions\fR \fR
-.ad
-.RS 28n
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/uucp/Systems\fR \fR
-.ad
-.RS 28n
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/tmp/\fR\fIsystem-name\fR \fR
-.ad
-.RS 28n
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/spool/locks/*\fR \fR
-.ad
-.RS 28n
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/spool/uucp/*\fR \fR
-.ad
-.RS 28n
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/spool/uucppublic/*\fR \fR
-.ad
-.RS 28n
-
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBuucp\fR(1C), \fBuux\fR(1C), \fBuucico\fR(1M), \fBattributes\fR(5)
diff --git a/usr/src/man/man1m/accept.1m b/usr/src/man/man1m/accept.1m
deleted file mode 100644
index 7b8299a3b4..0000000000
--- a/usr/src/man/man1m/accept.1m
+++ /dev/null
@@ -1,160 +0,0 @@
-'\" te
-.\" Copyright (c) 2006 Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH ACCEPT 1M "Feb 25, 2017"
-.SH NAME
-accept, reject \- accept or reject print requests
-.SH SYNOPSIS
-.LP
-.nf
-\fBaccept\fR \fIdestination\fR...
-.fi
-
-.LP
-.nf
-\fBreject\fR [\fB-r\fR \fIreason\fR] \fIdestination\fR...
-.fi
-
-.SH DESCRIPTION
-.LP
-\fBaccept\fR allows the queueing of print requests for the named destinations.
-.sp
-.LP
-\fBreject\fR prevents queueing of print requests for the named destinations.
-.sp
-.LP
-Use \fBlpstat\fR \fB-a\fR to check if destinations are accepting or rejecting
-print requests.
-.sp
-.LP
-Generally, \fBaccept\fR and \fBreject\fR are run on the print server to control
-local print queues. Under some configurations, \fBaccept\fR and \fBreject\fR
-are run on client systems when IPP is being used to communicate between client
-and server.
-.SH OPTIONS
-.LP
-The following options are supported for \fBreject\fR:
-.sp
-.ne 2
-.na
-\fB\fB-r\fR \fIreason\fR\fR
-.ad
-.RS 13n
-Assigns a reason for rejection of print requests for \fIdestination.\fR
-.sp
-\fIreason\fR is reported by \fBlpstat\fR \fB-a\fR. By default, \fIreason\fR is
-\fBunknown reason\fR for existing destinations, and \fBnew\fR \fBprinter\fR for
-destinations added to the system but not yet accepting requests. Enclose
-\fIreason\fR in quotes if it contains blanks.
-.RE
-
-.SH OPERANDS
-.LP
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fB\fIdestination\fR\fR
-.ad
-.RS 15n
-The name of the destination accepting or rejecting print requests. Destination
-specifies the name of a printer or class of printers (see \fBlpadmin\fR(1M)).
-Specify \fIdestination\fR using atomic name or URI-style (scheme://endpoint)
-names. See \fBprinters.conf\fR(4) for information regarding the naming
-conventions for destinations.
-.RE
-
-.SH EXIT STATUS
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 12n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fBnon-zero\fR
-.ad
-.RS 12n
-An error occurred.
-.RE
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/etc/printers.conf\fR\fR
-.ad
-.RS 24n
-System printer configuration database
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB$HOME/.printers\fR\fR
-.ad
-.RS 24n
-User-configurable printer database
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBou=printers\fR\fR
-.ad
-.RS 24n
-LDAP version of \fB/etc/printers.conf\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBprinters.conf.byname\fR\fR
-.ad
-.RS 24n
-\fBNIS\fR version of \fB/etc/printers.conf\fR
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-CSI Enabled. See \fBNOTES\fR.
-_
-Interface Stability Obsolete
-.TE
-
-.SH SEE ALSO
-.LP
-\fBenable\fR(1), \fBlp\fR(1), \fBlpstat\fR(1), \fBlpadmin\fR(1M),
-\fBlpsched\fR(1M), \fBprinters.conf\fR(4), \fBattributes\fR(5)
-.SH NOTES
-.LP
-\fBaccept\fR and \fBreject\fR affect only queueing on the print server's
-spooling system. Requests made from a client system remain queued in the client
-system's queueing mechanism until they are cancelled or accepted by the print
-server's spooling system.
-.sp
-.LP
-\fBaccept\fR is CSI-enabled except for the \fIdestination\fR name.
-.sp
-.LP
-When IPP is in use, the user is prompted for a passphrase if the remote print
-service is configured to require authentication.
diff --git a/usr/src/man/man1m/acct.1m b/usr/src/man/man1m/acct.1m
deleted file mode 100644
index 969996f9bf..0000000000
--- a/usr/src/man/man1m/acct.1m
+++ /dev/null
@@ -1,209 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 2000, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH ACCT 1M "August 29, 2021"
-.SH NAME
-acct, acctdisk, acctdusg, accton, acctwtmp, closewtmp, utmp2wtmp \- overview of
-accounting and miscellaneous accounting commands
-.SH SYNOPSIS
-.nf
-\fB/usr/lib/acct/acctdisk\fR
-.fi
-
-.LP
-.nf
-\fB/usr/lib/acct/acctdusg\fR [\fB-u\fR \fIfilename\fR] [\fB-p\fR \fIfilename\fR]
-.fi
-
-.LP
-.nf
-\fB/usr/lib/acct/accton\fR [\fIfilename\fR]
-.fi
-
-.LP
-.nf
-\fB/usr/lib/acct/acctwtmp\fR \fIreason\fR \fIfilename\fR
-.fi
-
-.LP
-.nf
-\fB/usr/lib/acct/closewtmp\fR
-.fi
-
-.LP
-.nf
-\fB/usr/lib/acct/utmp2wtmp\fR
-.fi
-
-.SH DESCRIPTION
-Accounting software is structured as a set of tools (consisting of both C
-programs and shell procedures) that can be used to build accounting systems.
-\fBacctsh\fR(1M) describes the set of shell procedures built on top of the C
-programs.
-.sp
-.LP
-Connect time accounting is handled by various programs that write records into
-\fB/var/adm/wtmpx\fR, as described in \fButmpx\fR(4). The programs described in
-\fBacctcon\fR(1M) convert this file into session and charging records, which
-are then summarized by \fBacctmerg\fR(1M).
-.sp
-.LP
-Process accounting is performed by the system kernel. Upon termination of a
-process, one record per process is written to a file (normally
-\fB/var/adm/pacct\fR). The programs in \fBacctprc\fR(1M) summarize this data
-for charging purposes; \fBacctcms\fR(1M) is used to summarize command usage.
-Current process data may be examined using \fBacctcom\fR(1).
-.sp
-.LP
-Process accounting records and connect time accounting records (or any
-accounting records in the \fBtacct\fR format described in \fBacct.h\fR(3HEAD))
-can be merged and summarized into total accounting records by \fBacctmerg\fR
-(see \fBtacct\fR format in \fBacct.h\fR(3HEAD)). \fBprtacct\fR (see
-\fBacctsh\fR(1M)) is used to format any or all accounting records.
-.sp
-.LP
-\fBacctdisk\fR reads lines that contain user \fBID\fR, login name, and number
-of disk blocks and converts them to total accounting records that can be merged
-with other accounting records. \fBacctdisk\fR returns an error if the input
-file is corrupt or improperly formatted.
-.sp
-.LP
-\fBacctdusg\fR reads its standard input (usually from \fBfind\fR \fB/\fR
-\fB-\fR\fBprint\fR) and computes disk resource consumption (including indirect
-blocks) by login.
-.sp
-.LP
-\fBaccton\fR without arguments turns process accounting off. If \fIfilename\fR
-is given, it must be the name of an existing file, to which the kernel appends
-process accounting records (see \fBacct\fR(2) and \fBacct.h\fR(3HEAD)).
-.sp
-.LP
-\fBacctwtmp\fR writes a \fButmpx\fR(4) record to \fIfilename\fR. The record
-contains the current time and a string of characters that describe the
-\fIreason\fR. A record type of \fBACCOUNTING\fR is assigned (see
-\fButmpx\fR(4)) \fIreason\fR must be a string of 11 or fewer characters,
-numbers, \fB$\fR, or spaces. For example, the following are suggestions for use
-in reboot and shutdown procedures, respectively:
-.sp
-.in +2
-.nf
-acctwtmp "acctg on" /var/adm/wtmpx
-acctwtmp "acctg off" /var/adm/wtmpx
-.fi
-.in -2
-
-.sp
-.LP
-For each user currently logged on, \fBclosewtmp\fR puts a false
-\fBDEAD_PROCESS\fR record in the \fB/var/adm/wtmpx\fR file. \fBrunacct\fR (see
-\fBrunacct\fR(1M)) uses this false \fBDEAD_PROCESS\fR record so that the
-connect accounting procedures can track the time used by users logged on before
-\fBrunacct\fR was invoked.
-.sp
-.LP
-For each user currently logged on, \fBrunacct\fR uses \fButmp2wtmp\fR to create
-an entry in the file \fB/var/adm/wtmpx\fR, created by \fBrunacct\fR. Entries in
-\fB/var/adm/wtmpx\fR enable subsequent invocations of \fBrunacct\fR to account
-for connect times of users currently logged in.
-.SH OPTIONS
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-u\fR \fIfilename\fR\fR
-.ad
-.RS 15n
-Places in \fIfilename\fR records consisting of those filenames for which
-\fBacctdusg\fR charges no one (a potential source for finding users trying to
-avoid disk charges).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR \fIfilename\fR\fR
-.ad
-.RS 15n
-Specifies a password file, \fIfilename\fR. This option is not needed if the
-password file is \fB/etc/passwd\fR.
-.RE
-
-.SH ENVIRONMENT VARIABLES
-If any of the \fBLC_*\fR variables (\fBLC_TYPE\fR, \fBLC_MESSAGES\fR,
-\fBLC_TIME\fR, \fBLC_COLLATE\fR, \fBLC_NUMERIC\fR, and \fBLC_MONETARY\fR) (see
-\fBenviron\fR(5)) are not set in the environment, the operational behavior of
-\fBacct\fR for each corresponding locale category is determined by the value of
-the \fBLANG\fR environment variable. If \fBLC_ALL\fR is set, its contents are
-used to override both the \fBLANG\fR and the other \fBLC_*\fR variables. If
-none of the above variables are set in the environment, the "C" (U.S. style)
-locale determines how \fBacct\fR behaves.
-.sp
-.ne 2
-.na
-\fB\fBLC_CTYPE\fR\fR
-.ad
-.RS 12n
-Determines how \fBacct\fR handles characters. When \fBLC_CTYPE\fR is set to a
-valid value, \fBacct\fR can display and handle text and filenames containing
-valid characters for that locale. \fBacct\fR can display and handle Extended
-Unix Code (EUC) characters where any character can be 1, 2, or 3 bytes wide.
-\fBacct\fR can also handle EUC characters of 1, 2, or more column widths. In
-the "C" locale, only characters from ISO 8859-1 are valid.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBLC_TIME\fR\fR
-.ad
-.RS 12n
-Determines how \fBacct\fR handles date and time formats. In the "C" locale,
-date and time handling follows the U.S. rules.
-.RE
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/etc/passwd\fR\fR
-.ad
-.RS 18n
-Used for login name to user \fBID\fR conversions.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/acct\fR\fR
-.ad
-.RS 18n
-Holds all accounting commands listed in sub-class 1M of this manual.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/adm/pacct\fR\fR
-.ad
-.RS 18n
-Current process accounting file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/adm/wtmpx\fR\fR
-.ad
-.RS 18n
-History of user access and administration information.
-.RE
-
-.SH SEE ALSO
-\fBacctcom\fR(1), \fBacctcms\fR(1M), \fBacctcon\fR(1M), \fBacctmerg\fR(1M),
-\fBacctprc\fR(1M), \fBacctsh\fR(1M), \fBfwtmp\fR(1M), \fBrunacct\fR(1M),
-\fBacct\fR(2), \fBacct.h\fR(3HEAD), \fBpasswd\fR(4), \fButmpx\fR(4),
-\fBattributes\fR(5), \fBenviron\fR(5)
-.sp
-.LP
-\fI\fR
diff --git a/usr/src/man/man1m/acctadm.1m b/usr/src/man/man1m/acctadm.1m
deleted file mode 100644
index 2040762f06..0000000000
--- a/usr/src/man/man1m/acctadm.1m
+++ /dev/null
@@ -1,425 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH ACCTADM 1M "April 9, 2016"
-.SH NAME
-acctadm \- configure extended accounting facility
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/acctadm\fR [\fB-DEsrux\fR] [\fB-d\fR \fIresource_list\fR]
- [\fB-e\fR \fIresource_list\fR] [\fB-f\fR \fIfilename\fR]
- [task | process | flow | net]
-.fi
-
-.SH DESCRIPTION
-.LP
-\fBacctadm\fR configures various attributes of the extended accounting
-facility. Without arguments, \fBacctadm\fR displays the current status of the
-extended accounting facility.
-.SH OPTIONS
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-d\fR \fIresource_list\fR\fR
-.ad
-.sp .6
-.RS 4n
-Disable reporting of resource usage for resource. Specify \fIresource_list\fR
-as a comma-separated list of resources or resource groups.
-.sp
-This option requires an operand. See \fBOPERANDS\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-D\fR\fR
-.ad
-.sp .6
-.RS 4n
-Disable accounting of the given operand type without closing the accounting
-file. This option can be used to temporarily stop writing accounting records to
-the accounting file without closing it. To close the file use the \fB-x\fR
-option. See \fB-x\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-e\fR \fIresource_list\fR\fR
-.ad
-.sp .6
-.RS 4n
-Enable reporting of resource usage for resource. Specify \fIresource_list\fR as
-a comma-separated list of resources or resource groups.
-.sp
-This option requires an operand. See \fBOPERANDS\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-E\fR\fR
-.ad
-.sp .6
-.RS 4n
-Enable accounting of the given operand type without sending the accounting
-output to a file. This option requires an operand. See \fBOPERANDS\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR \fIfilename\fR\fR
-.ad
-.sp .6
-.RS 4n
-Send the accounting output for the given operand type to \fIfilename\fR. If
-\fIfilename\fR exists, its contents must be of the given accounting type.
-.sp
-This option requires an operand. See \fBOPERANDS\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-r\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display available resource groups.
-.sp
-When this option is used with an operand, it displays resource groups available
-for a given accounting type. When no operand is specified, this option displays
-resource groups for all available accounting types. See OPERANDS.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR\fR
-.ad
-.sp .6
-.RS 4n
-Start method for the \fBsmf\fR(5) instance. This option is used to restore the
-extended accounting configuration at boot.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-x\fR\fR
-.ad
-.sp .6
-.RS 4n
-Deactivate accounting of the given operand type. This option also closes the
-accounting file for the given accounting type if it is currently open.
-.sp
-This option requires an operand. See \fBOPERANDS\fR.
-.RE
-
-.SH OPERANDS
-.LP
-The \fB-d\fR, \fB-D\fR, \fB-e\fR, \fB-E\fR, \fB-f\fR, and \fB-x\fR options
-require an operand.
-.sp
-.LP
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fB\fBprocess\fR\fR
-.ad
-.sp .6
-.RS 4n
-Run \fBacctadm\fR on the process accounting components of the extended
-accounting facility.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBtask\fR\fR
-.ad
-.sp .6
-.RS 4n
-Run \fBacctadm\fR on the task accounting components of the extended accounting
-facility.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBflow\fR\fR
-.ad
-.sp .6
-.RS 4n
-Run \fBacctadm\fR on the IPQoS accounting components of the extended accounting
-facility.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnet\fR\fR
-.ad
-.sp .6
-.RS 4n
-Run \fBacctadm\fR on links and flows administered by \fBdladm\fR(1M) and
-\fBflowadm\fR(1M), respectively. Basic network accounting relates only to
-links, while extended network accounting includes both link and flow
-accounting.
-.RE
-
-.sp
-.LP
-The optional final parameter to \fBacctadm\fR represents whether the command
-should act on the process, system task, IPQoS, or network accounting components
-of the extended accounting facility.
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRDisplaying the Current Status
-.sp
-.LP
-The following command displays the current status. In this example, system task
-accounting is active and tracking only \fBCPU\fR resources. Process and flow
-accounting are not active.
-
-.sp
-.in +2
-.nf
-$ \fBacctadm\fR
- Task accounting: active
- Task accounting file: /var/adm/exacct/task
- Tracked task resources: extended
- Untracked task resources: host
- Process accounting: inactive
- Process accounting file: none
- Tracked process resources: none
-Untracked process resources: extended,host
- Flow accounting: inactive
- Flow accounting file: none
- Tracked flow resources: none
- Untracked flow resources: extended
- Net accounting: inactive
- Net accounting file: none
- Tracked Net resources: none
- Untracked Net resources: extended
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRActivating Basic Process Accounting
-.sp
-.LP
-The following command activates basic process accounting:
-
-.sp
-.in +2
-.nf
-$ \fBacctadm -e basic -f /var/adm/exacct/proc process\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRDisplaying Available Resource Groups
-.sp
-.LP
-The following command displays available resource groups:
-
-.sp
-.in +2
-.nf
-$ \fBacctadm -r\fR
- process:
- extended pid,uid,gid,cpu,time,command,tty,projid, \e
- taskid,ancpid,wait-status,zone,flag,memory,mstate
- basic pid,uid,gid,cpu,time,command,tty,flag
- task:
- extended taskid,projid,cpu,time,host,mstate,anctaskid,zone
- basic taskid,projid,cpu,time
- flow:
- extended saddr,daddr,sport,dport,proto,dsfield,nbytes,npkts, \e
- action,ctime,lseen,projid,uid
- basic saddr,daddr,sport,dport,proto,nbytes,npkts,action
- net:
- extended name,devname,edest,vlan_tpid,vlan_tci,sap,cpuid, \e
- priority,bwlimit,curtime,ibytes,obytes,ipkts,opks,ierrpkts \e
- oerrpkts,saddr,daddr,sport,dport,protocol,dsfield
- basic name,devname,edest,vlan_tpid,vlan_tci,sap,cpuid, \e
- priority,bwlimit,curtime,ibytes,obytes,ipkts,opks,ierrpkts \e
- oerrpkts
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-In the output above, the lines beginning with \fBextended\fR are shown with a
-backslash character. In actual \fBacctadm\fR output, these lines are displayed
-as unbroken, long lines.
-
-.LP
-\fBExample 4 \fRDisplaying Resource Groups for Task Accounting
-.sp
-.LP
-The following command displays resource groups for task accounting:
-
-.sp
-.in +2
-.nf
-$ \fBacctadm -r task\fR
- extended taskid,projid,cpu,time,host,mstate,anctaskid,zone
- basic taskid,projid,cpu,time
-.fi
-.in -2
-.sp
-
-.SH EXIT STATUS
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.sp .6
-.RS 4n
-Successful completion.
-.sp
-The modifications to the current configuration were valid and made
-successfully.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB1\fR\fR
-.ad
-.sp .6
-.RS 4n
-An error occurred.
-.sp
-A fatal error occurred either in obtaining or modifying the accounting
-configuration.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB2\fR\fR
-.ad
-.sp .6
-.RS 4n
-Invalid command line options were specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB95\fR\fR
-.ad
-.sp .6
-.RS 4n
-A fatal, non-configuration error occurred during the start of the \fBsmf\fR(5)
-service instance.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB96\fR\fR
-.ad
-.sp .6
-.RS 4n
-A fatal configuration error occurred during the start of the \fBsmf\fR(5)
-service instance.
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Committed
-.TE
-
-.SH SEE ALSO
-.LP
-\fBdladm\fR(1M), \fBflowadm\fR(1M), \fBacct\fR(2), \fBattributes\fR(5),
-\fBsmf\fR(5), \fBipqos\fR(7IPP)
-.SH NOTES
-.LP
-Both extended accounting and regular accounting can be active.
-.sp
-.LP
-Available resources can vary from system to system, and from platform to
-platform.
-.sp
-.LP
-Extended accounting configuration is stored in the service management facility
-(\fBsmf\fR(5)) repository. The configuration is restored at boot by a transient
-service instance, one per accounting type:
-.sp
-.in +2
-.nf
-svc:/system/extended-accounting:flow Flow accounting
-svc:/system/extended-accounting:process Process accounting
-svc:/system/extended-accounting:task Task accounting
-svc:/system/extended-accounting:net Network accounting
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The instances are enabled or disabled by \fBacctadm\fR as needed. Configuration
-changes are made using \fBacctadm\fR; service properties should not be modified
-directly using \fBsvccfg\fR(1M).
-.sp
-.LP
-Users can manage extended accounting (start accounting, stop accounting, change
-accounting configuration parameters) if they have the appropriate RBAC Rights
-profile for the accounting type to be managed:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Extended Accounting Flow Management
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Extended Accounting Process Management
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Extended Accounting Task Management
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Extended Accounting Network Management
-.RE
-.sp
-.LP
-The preceding profiles are for, respectively, flow accounting, process
-accounting, task accounting, and network accounting.
diff --git a/usr/src/man/man1m/acctcms.1m b/usr/src/man/man1m/acctcms.1m
deleted file mode 100644
index c4ed9a6f3e..0000000000
--- a/usr/src/man/man1m/acctcms.1m
+++ /dev/null
@@ -1,141 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 1999, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH ACCTCMS 1M "Feb 22, 1999"
-.SH NAME
-acctcms \- command summary from process accounting records
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/acct/acctcms\fR [\fB-a\fR [\fB-o\fR] [\fB-p\fR]] [\fB-c\fR] [\fB-j\fR] [\fB-n\fR] [\fB-s\fR]
- [\fB-t\fR] \fIfilename\fR...
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBacctcms\fR reads one or more \fIfilename\fRs, normally in the form described
-in \fBacct.h\fR(3HEAD). It adds all records for processes that executed
-identically named commands, sorts them, and writes them to the standard output,
-normally using an internal summary format.
-.SH OPTIONS
-.sp
-.ne 2
-.na
-\fB\fB-a\fR\fR
-.ad
-.RS 6n
-Print output in \fBASCII\fR rather than in the internal summary format. The
-output includes command name, number of times executed, total kcore-minutes,
-total \fBCPU\fR minutes, total real minutes, mean size (in K), mean \fBCPU\fR
-minutes per invocation, "hog factor," characters transferred, and blocks read
-and written, as in \fBacctcom\fR(1). Output is normally sorted by total
-kcore-minutes.
-.sp
-Use the following options only with the \fB-a\fR option:
-.sp
-.ne 2
-.na
-\fB\fB-o\fR\fR
-.ad
-.RS 6n
-Output a (non-prime) offshift-time-only command summary.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR\fR
-.ad
-.RS 6n
-Output a prime-time-only command summary.
-.RE
-
-When \fB-o\fR and \fB-p\fR are used together, a combination prime-time and
-non-prime-time report is produced. All the output summaries are total usage
-except number of times executed, CPU minutes, and real minutes, which are split
-into prime and non-prime.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-c\fR\fR
-.ad
-.RS 6n
-Sort by total \fBCPU\fR time, rather than total kcore-minutes.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-j\fR\fR
-.ad
-.RS 6n
-Combine all commands invoked only once under "***other".
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR\fR
-.ad
-.RS 6n
-Sort by number of command invocations.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR\fR
-.ad
-.RS 6n
-Any file names encountered hereafter are already in internal summary format.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-t\fR\fR
-.ad
-.RS 6n
-Process all records as total accounting records. The default internal summary
-format splits each field into prime and non-prime-time parts. This option
-combines the prime and non-prime time parts into a single field that is the
-total of both, and provides upward compatibility with old style \fBacctcms\fR
-internal summary format records.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRUsing the \fBacctcms\fR command.
-.sp
-.LP
-A typical sequence for performing daily command accounting and for maintaining
-a running total is:
-
-.sp
-.in +2
-.nf
-example%\fB acctcms filename ... > today\fR
-example% \fBcp total previoustotal\fR
-example% \fBacctcms \fR\fB-s\fR\fB today previoustotal > total\fR
-example% \fBacctcms \fR\fB-a\fR\fB \fR\fB-s\fR\fB today\fR
-.fi
-.in -2
-.sp
-
-.SH SEE ALSO
-.sp
-.LP
-\fBacctcom\fR(1), \fBacct\fR(1M), \fBacctcon\fR(1M), \fBacctmerg\fR(1M),
-\fBacctprc\fR(1M), \fBacctsh\fR(1M), \fBfwtmp\fR(1M), \fBrunacct\fR(1M),
-\fBacct\fR(2), \fBacct.h\fR(3HEAD), \fButmpx\fR(4), \fBattributes\fR(5)
-.SH NOTES
-.sp
-.LP
-Unpredictable output results if \fB-t\fR is used on new style internal summary
-format files, or if it is not used with old style internal summary format
-files.
diff --git a/usr/src/man/man1m/acctcon.1m b/usr/src/man/man1m/acctcon.1m
deleted file mode 100644
index 18b5dc41af..0000000000
--- a/usr/src/man/man1m/acctcon.1m
+++ /dev/null
@@ -1,174 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 1999 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH ACCTCON 1M "Feb 22, 1999"
-.SH NAME
-acctcon, acctcon1, acctcon2 \- connect-time accounting
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/acct/acctcon\fR [\fB-l\fR \fIlineuse\fR] [\fB-o\fR \fIreboot\fR]
-.fi
-
-.LP
-.nf
-\fB/usr/lib/acct/acctcon1\fR [\fB-p\fR] [\fB-t\fR] [\fB-l\fR \fIlineuse\fR] [\fB-o\fR \fIreboot\fR]
-.fi
-
-.LP
-.nf
-\fB/usr/lib/acct/acctcon2\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBacctcon\fR converts a sequence of login/logoff records to total accounting
-records (see the \fBtacct\fR format in \fBacct.h\fR(3HEAD)). The login/logoff
-records are read from standard input. The file \fB/var/adm/wtmpx\fR is usually
-the source of the login/logoff records; however, because it might contain
-corrupted records or system date changes, it should first be fixed using
-\fBwtmpfix\fR. The fixed version of file \fB/var/adm/wtmpx\fR can then be
-redirected to \fBacctcon\fR. The \fBtacct\fR records are written to standard
-output.
-.sp
-.LP
-\fBacctcon\fR is a combination of the programs \fBacctcon1\fR and
-\fBacctcon2\fR. \fBacctcon1\fR converts login/logoff records, taken from the
-fixed \fB/var/adm/wtmpx\fR file, to ASCII output. \fBacctcon2\fR reads the
-ASCII records produced by \fBacctcon1\fR and converts them to \fBtacct\fR
-records. \fBacctcon1\fR can be used with the \fB-l\fR and \fB-o\fR options,
-described below, as well as with the \fB-p\fR and \fB-t\fR options.
-.SH OPTIONS
-.sp
-.ne 2
-.na
-\fB\fB-p\fR\fR
-.ad
-.RS 14n
-Print input only, showing line name, login name, and time (in both numeric and
-date/time formats).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-t\fR\fR
-.ad
-.RS 14n
-\fBacctcon1\fR maintains a list of lines on which users are logged in. When it
-reaches the end of its input, it emits a session record for each line that
-still appears to be active. It normally assumes that its input is a current
-file, so that it uses the current time as the ending time for each session
-still in progress. The \fB-t\fR flag causes it to use, instead, the last time
-found in its input, thus assuring reasonable and repeatable numbers for
-non-current files.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR \fIlineuse\fR\fR
-.ad
-.RS 14n
-\fIlineuse\fR is created to contain a summary of line usage showing line name,
-number of minutes used, percentage of total elapsed time used, number of
-sessions charged, number of logins, and number of logoffs. This file helps
-track line usage, identify bad lines, and find software and hardware oddities.
-Hangup, termination of \fBlogin\fR(1) and termination of the login shell each
-generate logoff records, so that the number of logoffs is often three to four
-times the number of sessions. See \fB init\fR(1M) and \fButmpx\fR(4).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-o\fR \fIreboot\fR\fR
-.ad
-.RS 14n
-\fBreboot\fR is filled with an overall record for the accounting period, giving
-starting time, ending time, number of reboots, and number of date changes.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRUsing the \fBacctcon\fR command.
-.sp
-.LP
-The \fBacctcon\fR command is typically used as follows:
-
-.sp
-.in +2
-.nf
-example% acctcon \fB-l\fR lineuse \fB-o\fR reboots < tmpwtmp > ctacct
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The \fBacctcon1\fR and \fBacctcon2\fR commands are typically used as follows:
-
-.sp
-.in +2
-.nf
-example% acctcon1 \fB-l\fR lineuse \fB-o\fR reboots < tmpwtmp | sort +1n +2 > ctmp
-example% acctcon2 < ctmp > ctacct
-.fi
-.in -2
-.sp
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/var/adm/wtmpx\fR\fR
-.ad
-.RS 18n
-History of user access and administration information
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBacctcom\fR(1), \fBlogin\fR(1), \fBacct\fR(1M), \fBacctcms\fR(1M),
-\fBacctmerg\fR(1M), \fBacctprc\fR(1M), \fBacctsh\fR(1M), \fBfwtmp\fR(1M),
-\fBinit\fR(1M), \fBrunacct\fR(1M), \fBacct\fR(2), \fBacct.h\fR(3HEAD),
-\fButmpx\fR(4), \fBattributes\fR(5)
-.sp
-.LP
-\fI\fR
-.SH NOTES
-.sp
-.LP
-The line usage report is confused by date changes. Use \fBwtmpfix\fR (see
-\fBfwtmp\fR(1M)), with the \fB/var/adm/wtmpx\fR file as an argument, to correct
-this situation.
-.sp
-.LP
-During a single invocation of any given command, the \fBacctcon\fR,
-\fBacctcon1\fR, and \fBacctcon2\fR commands can process a maximum of:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-6000 distinct session
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-1000 distinct terminal lines
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-2000 distinct login names
-.RE
-.sp
-.LP
-If at some point the actual number of any one of these items exceeds the
-maximum, the command will not succeed.
diff --git a/usr/src/man/man1m/acctmerg.1m b/usr/src/man/man1m/acctmerg.1m
deleted file mode 100644
index b19cd3556b..0000000000
--- a/usr/src/man/man1m/acctmerg.1m
+++ /dev/null
@@ -1,116 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 1999 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH ACCTMERG 1M "Feb 22, 1999"
-.SH NAME
-acctmerg \- merge or add total accounting files
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/acct/acctmerg\fR [\fB-a\fR] [\fB-i\fR] [\fB-p\fR] [\fB-t\fR] [\fB-u\fR] [\fB-v\fR]
- [\fIfilename\fR] ...
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBacctmerg\fR reads its standard input and up to nine additional files, all in
-the \fBtacct\fR format (see \fBacct.h\fR(3HEAD)) or an \fBASCII\fR version
-thereof. It merges these inputs by adding records whose keys (normally user
-\fBID\fR and name) are identical, and expects the inputs to be sorted on those
-keys.
-.SH OPTIONS
-.sp
-.ne 2
-.na
-\fB\fB-a\fR\fR
-.ad
-.RS 6n
-Produce output in \fBASCII\fR version of \fBtacct\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-i\fR\fR
-.ad
-.RS 6n
-Produce input in \fBASCII\fR version of \fBtacct\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR\fR
-.ad
-.RS 6n
-Print input with no processing.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-t\fR\fR
-.ad
-.RS 6n
-Produce a single record that totals all input.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-u\fR\fR
-.ad
-.RS 6n
-Summarize by user \fBID,\fR rather than by user \fBID\fR and name.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.RS 6n
-Produce output in verbose \fBASCII\fR format, with more precise notation for
-floating-point numbers.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRUsing the \fBacctmerg\fR command.
-.sp
-.LP
-The following sequence is useful for making "repairs" to any file kept in this
-format:
-
-.sp
-.in +2
-.nf
-example% acctmerg \|\|\fB-v\fR \|<\fIfilename1\fR\fB\|>\fR\fIfilename2\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Edit \fIfilename2\fR as you want:
-
-.sp
-.in +2
-.nf
-\fBexample% acctmerg \|\|\fR\fB-i\fR\fB \|\fR\fI<filename2\fR\fB\|>\fR\fIfilename1\fR
-.fi
-.in -2
-.sp
-
-.SH SEE ALSO
-.sp
-.LP
-\fBacctcom\fR(1), \fBacct\fR(1M), \fBacctcms\fR(1M), \fBacctcon\fR(1M),
-\fBacctprc\fR(1M), \fBacctsh\fR(1M), \fBfwtmp\fR(1M), \fBrunacct\fR(1M),
-\fBacct\fR(2), \fBacct.h\fR(3HEAD), \fButmpx\fR(4), \fBattributes\fR(5)
-.sp
-.LP
-\fI\fR
diff --git a/usr/src/man/man1m/acctprc.1m b/usr/src/man/man1m/acctprc.1m
deleted file mode 100644
index 4224b0d2cf..0000000000
--- a/usr/src/man/man1m/acctprc.1m
+++ /dev/null
@@ -1,134 +0,0 @@
-'\" te
-.\" Copyright (c) 1996, Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH ACCTPRC 1M "Jul 15, 2004"
-.SH NAME
-acctprc, acctprc1, acctprc2 \- process accounting
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/acct/acctprc\fR
-.fi
-
-.LP
-.nf
-\fB/usr/lib/acct/acctprc1\fR [\fIctmp\fR]
-.fi
-
-.LP
-.nf
-\fB/usr/lib/acct/acctprc2\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBacctprc\fR reads the standard input and converts it to total accounting
-records (see the \fBtacct\fR record in \fBacct.h\fR(3HEAD)). \fBacctprc\fR
-divides CPU time into prime time and non-prime time and determines mean memory
-size (in memory segment units). \fBacctprc\fR then summarizes the \fBtacct\fR
-records, according to user IDs, and adds login names corresponding to the user
-IDs. The summarized records are then written to the standard output.
-\fBacctprc1\fR reads input in the form described by \fBacct.h\fR(3HEAD), adds
-login names corresponding to user \fBIDs,\fR then writes for each process an
-\fBASCII\fR line giving user \fBID,\fR login name, prime \fBCPU\fR time (tics),
-non-prime \fBCPU\fR time (tics), and mean memory size (in memory segment
-units). If \fIctmp\fR is given, it should contain a list of login sessions
-sorted by user \fBID\fR and login name. If this file is not supplied, it
-obtains login names from the password file, just as \fBacctprc\fR does. The
-information in \fIctmp\fR helps it distinguish between different login names
-that share the same user \fBID.\fR
-.sp
-.LP
-From the standard input, \fBacctprc2\fR reads records in the form written by
-\fBacctprc1\fR, summarizes them according to user \fBID\fR and name, then
-writes the sorted summaries to the standard output as total accounting records.
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRExamples of \fBacctprc\fR.
-.sp
-.LP
-The \fBacctprc\fR command is typically used as shown below:
-
-.sp
-.in +2
-.nf
-example% acctprc \|< /var/adm/pacct \|> ptacct
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The \fBacctprc1\fR and \fBacctprc2s\fR commands are typically used as shown
-below:
-
-.sp
-.in +2
-.nf
-example% acctprc1 \|ctmp \|</var/adm/pacct
-example% acctprc2 > ptacct
-.fi
-.in -2
-.sp
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/passwd\fR\fR
-.ad
-.RS 15n
-system password file
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBacctcom\fR(1), \fBacct\fR(1M), \fBacctcms\fR(1M), \fBacctcon\fR(1M),
-\fBacctmerg\fR(1M), \fBacctsh\fR(1M), \fBcron\fR(1M), \fBfwtmp\fR(1M),
-\fBrunacct\fR(1M), \fBacct\fR(2), \fBacct.h\fR(3HEAD), \fButmpx\fR(4),
-\fBattributes\fR(5)
-.SH NOTES
-.sp
-.LP
-Although it is possible for \fBacctprc1\fR to distinguish among login names
-that share user \fBIDs\fR for commands run from a command line, it is difficult
-for \fBacctprc1\fR to make this distinction for commands invoked in other ways.
-A command run from \fBcron\fR(1M) is an example of where \fBacctprc1\fR might
-have difficulty. A more precise conversion can be done using the \fBacctwtmp\fR
-program in \fBacct\fR(1M). \fBacctprc\fR does not distinguish between users
-with identical user IDs.
-.sp
-.LP
-A memory segment of the mean memory size is a unit of measure for the number of
-bytes in a logical memory segment on a particular processor.
-.sp
-.LP
-During a single invocation of any given command, the \fBacctprc\fR,
-\fBacctprc1\fR, and \fBacctprc2\fR commands can process a maximum of
-.RS +4
-.TP
-.ie t \(bu
-.el o
-6000 distinct sessions
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-1000 distinct terminal lines
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-2000 distinct login names
-.RE
-.sp
-.LP
-If at some point the actual number of any one of these items exceeds the
-maximum, the command will not succeed.
diff --git a/usr/src/man/man1m/acctsh.1m b/usr/src/man/man1m/acctsh.1m
deleted file mode 100644
index 6b2aef67be..0000000000
--- a/usr/src/man/man1m/acctsh.1m
+++ /dev/null
@@ -1,323 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 2002 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH ACCTSH 1M "Mar 15, 2002"
-.SH NAME
-acctsh, chargefee, ckpacct, dodisk, lastlogin, monacct, nulladm, prctmp,
-prdaily, prtacct, shutacct, startup, turnacct \- shell procedures for
-accounting
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/acct/chargefee\fR \fIlogin-name\fR \fInumber\fR
-.fi
-
-.LP
-.nf
-\fB/usr/lib/acct/ckpacct\fR [\fIblocks\fR]
-.fi
-
-.LP
-.nf
-\fB/usr/lib/acct/dodisk\fR [\fB-o\fR] [\fIfilename\fR]...
-.fi
-
-.LP
-.nf
-\fB/usr/lib/acct/lastlogin\fR
-.fi
-
-.LP
-.nf
-\fB/usr/lib/acct/monacct\fR \fInumber\fR
-.fi
-
-.LP
-.nf
-\fB/usr/lib/acct/nulladm\fR \fIfilename\fR...
-.fi
-
-.LP
-.nf
-\fB/usr/lib/acct/prctmp\fR \fIfilename\fR
-.fi
-
-.LP
-.nf
-\fB/usr/lib/acct/prdaily\fR [\fB-c\fR] [\fB-l\fR] [\fImmdd\fR]
-.fi
-
-.LP
-.nf
-\fB/usr/lib/acct/prtacct\fR \fIfilename\fR ['' \fIheading\fR '']
-.fi
-
-.LP
-.nf
-\fB/usr/lib/acct/shutacct\fR ['' \fIreason\fR '']
-.fi
-
-.LP
-.nf
-\fB/usr/lib/acct/startup\fR
-.fi
-
-.LP
-.nf
-\fB/usr/lib/acct/turnacct\fR on | off | switch
-.fi
-
-.SH DESCRIPTION
-.SS "chargefee Command"
-.sp
-.LP
-\fBchargefee\fR can be invoked to charge a \fInumber\fR of units to
-\fIlogin-name\fR. A record is written to \fB/var/adm/fee\fR, to be merged with
-other accounting records by \fBrunacct\fR(1M).
-.SS "ckpacct Command"
-.sp
-.LP
-\fBckpacct\fR should be initiated using \fBcron\fR(1M) to periodically check
-the size of \fB/var/adm/pacct\fR. If the size exceeds \fIblocks\fR, \fB500\fR
-by default, \fBturnacct\fR will be invoked with argument \fBswitch\fR. To avoid
-a conflict with \fBturnacct switch\fR execution in \fBrunacct\fR, do not run
-\fBckpacct\fR and \fBrunacct\fR simultaneously. If the number of free disk
-blocks in the \fB/var\fR file system falls below \fB500\fR, \fBckpacct\fR will
-automatically turn off the collection of process accounting records via the
-\fBoff\fR argument to \fBturnacct\fR. When at least \fB500\fR blocks are
-restored, the accounting will be activated again on the next invocation of
-\fBckpacct\fR. This feature is sensitive to the frequency at which
-\fBckpacct\fR is executed, usually by the \fBcron\fR(1M) command.
-.SS "dodisk Command"
-.sp
-.LP
-\fBdodisk\fR should be invoked by \fBcron\fR(1M) to perform the disk accounting
-functions.
-.SS "lastlogin Command"
-.sp
-.LP
-\fBlastlogin\fR is invoked by \fBrunacct\fR(1M) to update
-\fB/var/adm/acct/sum/loginlog\fR, which shows the last date on which each
-person logged in.
-.SS "monacct Command"
-.sp
-.LP
-\fBmonacct\fR should be invoked once each month or each accounting period.
-\fInumber\fR indicates which month or period it is. If \fInumber\fR is not
-given, it defaults to the current month (01\(mi12). This default is useful if
-\fBmonacct\fR is to executed using \fBcron\fR(1M) on the first day of each
-month. \fBmonacct\fR creates summary files in \fB/var/adm/acct/fiscal\fR and
-restarts the summary files in \fB/var/adm/acct/sum\fR.
-.SS "nulladm Command"
-.sp
-.LP
-\fBnulladm\fR creates \fIfilename\fR with mode 664 and ensures that owner and
-group are \fBadm\fR. It is called by various accounting shell procedures.
-.SS "prctmp Command"
-.sp
-.LP
-\fBprctmp\fR can be used to print the session record file (normally
-\fB/var/adm/acct/nite/ctmp\fR created by \fBacctcon1\fR (see
-\fBacctcon\fR(1M)).
-.SS "prdaily Command"
-.sp
-.LP
-\fBprdaily\fR is invoked by \fBrunacct\fR(1M) to format a report of the
-previous day's accounting data. The report resides in
-\fB/var/adm/acct/sum/rprt/mmdd\fR where \fImmdd\fR is the month and day of the
-report. The current daily accounting reports may be printed by typing
-\fBprdaily\fR. Previous days' accounting reports can be printed by using the
-\fImmdd\fR option and specifying the exact report date desired.
-.SS "prtacct Command"
-.sp
-.LP
-\fBprtacct\fR can be used to format and print any total accounting
-(\fBtacct\fR)file.
-.SS "shutacct Command"
-.sp
-.LP
-\fBshutacct\fR is invoked during a system shutdown to turn process accounting
-off and append a \fIreason\fR record to \fB/var/adm/wtmpx\fR.
-.SS "startup Command"
-.sp
-.LP
-\fBstartup\fR can be invoked when the system is brought to a multi-user state
-to turn process accounting on.
-.SS "turnacct Command"
-.sp
-.LP
-\fBturnacct\fR is an interface to \fBaccton\fR (see \fBacct\fR(1M)) to turn
-process accounting \fBon\fR or \fBoff\fR. The \fBswitch\fR argument moves the
-current \fB/var/adm/pacct\fR to the next free name in
-\fB/var/adm/pacct.\fIincr\fR\fR (where \fIincr\fR is a number starting with
-\fB0\fR and incrementing by one for each additional \fBpacct\fR file), then
-turns accounting back on again. This procedure is called by \fBckpacct\fR and
-thus can be taken care of by the \fBcron\fR(1M) command and used to keep \fB
-pacct\fR to a reasonable size. \fBshutacct\fR uses \fBturnacct\fR to stop
-process accounting. \fBstartup\fR uses \fBturnacct\fR to start process
-accounting.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-c\fR\fR
-.ad
-.RS 6n
-This option prints a report of exceptional resource usage by command, and may
-be used on current day's accounting data only.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR\fR
-.ad
-.RS 6n
-This option prints a report of exceptional usage by login id for the specified
-date. Previous daily reports are cleaned up and therefore inaccessible after
-each invocation of \fBmonacct\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-o\fR\fR
-.ad
-.RS 6n
-This option uses \fBacctdusg\fR (see \fBacct\fR(1M)) to do a slower version of
-disk accounting by login directory. \fIfilename\fRs specifies the one or more
-filesystem names where disk accounting will be done. If \fIfilename\fRs are
-used, disk accounting will be done on these filesystems only. If the \fB-o\fR
-option is used, \fIfilename\fRs should be mount points of mounted filesystems.
-If the \fB-o\fR option is omitted, \fIfilename\fRs should be the special file
-names of mountable filesystems.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/logadm.conf\fR\fR
-.ad
-.RS 30n
-Configuration file for the \fBlogadm\fR(1M) command
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/acct\fR\fR
-.ad
-.RS 30n
-Holds all accounting commands listed in section \fB1M\fR of this manual
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/acct/ptecms.awk\fR\fR
-.ad
-.RS 30n
-Contains the limits for exceptional usage by command name
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/acct/ptelus.awk\fR\fR
-.ad
-.RS 30n
-Contains the limits for exceptional usage by login \fBID\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/adm/acct/fiscal\fR\fR
-.ad
-.RS 30n
-Fiscal reports directory
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/adm/acct/nite\fR\fR
-.ad
-.RS 30n
-Working directory
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/adm/acct/sum\fR\fR
-.ad
-.RS 30n
-Summary directory that contains information for \fBmonacct\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/adm/acct/sum/loginlog\fR\fR
-.ad
-.RS 30n
-File updated by last login
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/adm/fee\fR\fR
-.ad
-.RS 30n
-Accumulator for fees
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/adm/pacct\fR\fR
-.ad
-.RS 30n
-Current file for per-process accounting
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/adm/pacct\fR\fIincr\fR\fR
-.ad
-.RS 30n
-Used if \fBpacct\fR gets large and during execution of daily accounting
-procedure
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/adm/wtmpx\fR\fR
-.ad
-.RS 30n
-History of user access and administration information
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBacctcom\fR(1), \fBacct\fR(1M), \fBacctcms\fR(1M), \fBacctcon\fR(1M),
-\fBacctmerg\fR(1M), \fBacctprc\fR(1M), \fBcron\fR(1M), \fBfwtmp\fR(1M),
-\fBlogadm\fR(1M), \fBrunacct\fR(1M), \fBacct\fR(2), \fBacct.h\fR(3HEAD),
-\fButmpx\fR(4), \fBattributes\fR(5)
-.SH NOTES
-.sp
-.LP
-See \fBrunacct\fR(1M) for the main daily accounting shell script, which
-performs the accumulation of connect, process, fee, and disk accounting on a
-daily basis. It also creates summaries of command usage.
diff --git a/usr/src/man/man1m/acpidump.1m b/usr/src/man/man1m/acpidump.1m
deleted file mode 100644
index 4c24afcbea..0000000000
--- a/usr/src/man/man1m/acpidump.1m
+++ /dev/null
@@ -1,83 +0,0 @@
-.\" This file and its contents are supplied under the terms of the
-.\" Common Development and Distribution License ("CDDL"), version 1.0.
-.\" You may only use this file in accordance with the terms of version
-.\" 1.0 of the CDDL.
-.\"
-.\" A full copy of the text of the CDDL should have accompanied this
-.\" source. A copy of the CDDL is also available via the Internet at
-.\" http://www.illumos.org/license/CDDL.
-.\"
-.\"
-.\" Copyright (c) 2017, Joyent, Inc.
-.\"
-.Dd May 12, 2017
-.Dt ACPIDUMP 1M
-.Os
-.Sh NAME
-.Nm acpidump
-.Nd dump ACPI tables
-.Sh SYNOPSIS
-.Nm
-.Op Fl bhsvxz
-.Op Fl a Ar address
-.Op Fl c Ar on|off
-.Op Fl f Ar file
-.Op Fl n Ar signature
-.Op Fl o Ar file
-.Op Fl r Ar address
-.Sh DESCRIPTION
-The
-.Nm
-utility is used to dump the system's Advanced Configuration and Power Interface
-(ACPI) tables that are provided by system firmware.
-The dumped tables can be used by other utilities, such as
-.Xr acpixtract 1M
-or
-.Sy iasl .
-.Sh OPTIONS
-The following options are supported:
-.Bl -tag -width Ds
-.It Fl a Ar address
-Get the table at the given physical address.
-.It Fl b
-Dump all tables to binary files.
-.It Fl c Ar on|off
-Enable dumping customized tables.
-The default is off.
-.It Fl f Ar file
-Read the table from the given binary file.
-.It Fl h
-Display the usage message and exit.
-.It Fl n Ar signature
-Get the table with the specified signature.
-.It Fl o Ar file
-Write output to the given file.
-.It Fl r Ar address
-Dump tables from the
-.Sy RSDP
-at the given address.
-.It Fl s
-Only print table summaries.
-.It Fl v
-Print the version.
-.It Fl x
-Do not use the
-.Sy XSDT.
-.It Fl z
-Verbose.
-.El
-.Sh EXAMPLES
-.Sy Example 1
-Dump all ACPI Tables
-.Pp
-The following example dumps all of the ACPI tables from the system.
-This can then be used with
-.Xr acpixtract 1M
-and the iasl utility to decode the ACPI tables from the system.
-In this example, all of the tables are written to the file
-.Pa acpi.out .
-.Bd -literal -offset width
-# acpidump -o acpi.dat
-.Ed
-.Sh SEE ALSO
-.Xr acpixtract 1M
diff --git a/usr/src/man/man1m/acpixtract.1m b/usr/src/man/man1m/acpixtract.1m
deleted file mode 100644
index 314dc4b7d2..0000000000
--- a/usr/src/man/man1m/acpixtract.1m
+++ /dev/null
@@ -1,113 +0,0 @@
-.\" This file and its contents are supplied under the terms of the
-.\" Common Development and Distribution License ("CDDL"), version 1.0.
-.\" You may only use this file in accordance with the terms of version
-.\" 1.0 of the CDDL.
-.\"
-.\" A full copy of the text of the CDDL should have accompanied this
-.\" source. A copy of the CDDL is also available via the Internet at
-.\" http://www.illumos.org/license/CDDL.
-.\"
-.\"
-.\" Copyright (c) 2017, Joyent, Inc.
-.\"
-.Dd May 12, 2017
-.Dt ACPIXTRACT 1M
-.Os
-.Sh NAME
-.Nm acpixtract
-.Nd extract binary ACPI tables from a dump file
-.Sh SYNOPSIS
-.Nm
-.Op Fl ahlmv
-.Op Fl s Ar signature
-.Ar file
-.Sh DESCRIPTION
-The
-.Nm
-utility extracts the binary data from a dump of the system's Advanced
-Configuration and Power Interface (ACPI) tables.
-The dump is usually obtained via the
-.Xr acpidump 1M
-command.
-The resulting binary file(s) are represented in the ACPI
-.Sy ASL
-assembly language.
-For each table extracted, a corresponding
-.Em table.dat
-file will be created.
-.Sh OPTIONS
-The following options are supported:
-.Bl -tag -width Ds
-.It Fl a
-Extract all of the tables found.
-By default only the
-.Sy DSDT
-and
-.Sy SSDT
-tables will be extracted.
-.It Fl h
-Display the usage message and exit.
-.It Fl l
-List tables only, do not extract.
-.It Fl m
-Make a single file for all of the
-.Sy DSDT
-and
-.Sy SSDT
-tables.
-.It Fl s Ar signature
-Get the table with the specified signature.
-.It Fl v
-Print the version.
-.El
-.Sh EXAMPLES
-.Sy Example 1
-Extract all ACPI tables
-.Pp
-The following example extracts all of the individual ACPI tables from a
-previously created dump of the ACPI tables from a running system.
-Such a dump can be created with the
-.Xr acpidump 1M
-utility.
-Extracted tables can then be inspected or disassembled by the
-iasl utility on any platform.
-.Bd -literal -offset width
-# acpixtract -a acpi.dat
-
-Intel ACPI Component Architecture
-ACPI Binary Table Extraction Utility version 20160527-32
-Copyright (c) 2000 - 2016 Intel Corporation
-
-Acpi table [RSDP] - 36 bytes written to rsdp.dat
-Acpi table [RSDT] - 128 bytes written to rsdt.dat
-Acpi table [XSDT] - 220 bytes written to xsdt.dat
-Acpi table [DSDT] - 213221 bytes written to dsdt.dat
-Acpi table [FACS] - 64 bytes written to facs.dat
-Acpi table [FACP] - 268 bytes written to facp.dat
-Acpi table [APIC] - 884 bytes written to apic.dat
-Acpi table [FPDT] - 68 bytes written to fpdt.dat
-Acpi table [FIDT] - 156 bytes written to fidt.dat
-Acpi table [SPMI] - 65 bytes written to spmi.dat
-Acpi table [MCFG] - 60 bytes written to mcfg.dat
-Acpi table [UEFI] - 66 bytes written to uefi.dat
-Acpi table [MCEJ] - 304 bytes written to mcej.dat
-Acpi table [HPET] - 56 bytes written to hpet.dat
-Acpi table [MSCT] - 144 bytes written to msct.dat
-Acpi table [SLIT] - 48 bytes written to slit.dat
-Acpi table [SRAT] - 4440 bytes written to srat.dat
-Acpi table [WDDT] - 64 bytes written to wddt.dat
-Acpi table [SSDT] - 94529 bytes written to ssdt1.dat
-Acpi table [NITR] - 113 bytes written to nitr.dat
-Acpi table [SSDT] - 9802 bytes written to ssdt2.dat
-Acpi table [SSDT] - 100 bytes written to ssdt3.dat
-Acpi table [PRAD] - 191 bytes written to prad.dat
-Acpi table [DMAR] - 328 bytes written to dmar.dat
-Acpi table [HEST] - 168 bytes written to hest.dat
-Acpi table [BERT] - 48 bytes written to bert.dat
-Acpi table [ERST] - 560 bytes written to erst.dat
-Acpi table [EINJ] - 336 bytes written to einj.dat
-
-28 binary ACPI tables extracted
-.Ed
-.Sh SEE ALSO
-.Xr acpidump 1M
diff --git a/usr/src/man/man1m/adbgen.1m b/usr/src/man/man1m/adbgen.1m
deleted file mode 100644
index 41e9f98dcc..0000000000
--- a/usr/src/man/man1m/adbgen.1m
+++ /dev/null
@@ -1,362 +0,0 @@
-'\" te
-.\" Copyright (c) 1998 Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH ADBGEN 1M "Feb 20, 1998"
-.SH NAME
-adbgen \- generate adb script
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/adb/adbgen\fR [\fB-m\fR \fImodel\fR] \fIfilename\fR.adb .\|.\|.
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBadbgen\fR makes it possible to write \fBadb\fR(1) scripts that do not
-contain hard-coded dependencies on structure member offsets. The input to
-\fBadbgen\fR is a file named \fIfilename\fR\fB\&.adb\fR that contains header
-information, then a null line, then the name of a structure, and finally an
-\fBadb\fR script. \fBadbgen\fR only deals with one structure per file; all
-member names are assumed to be in this structure. The output of \fBadbgen\fR is
-an \fBadb\fR script in \fIfilename\fR. \fBadbgen\fR operates by generating a C
-program which determines structure member offsets and sizes, which in turn
-generate the \fBadb\fR script.
-.sp
-.LP
-The header lines, up to the null line, are copied verbatim into the generated C
-program. Typically, these are \fB#include\fR statements, which include the
-headers containing the relevant structure declarations.
-.sp
-.LP
-The \fBadb\fR script part may contain any valid \fBadb\fR commands (see
-\fBadb\fR(1)), and may also contain \fBadbgen\fR requests, each enclosed in
-braces (\fB\|{\|}\fR\|). Request types are:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Print a structure member. The request form is
-\fB{\fR\fImember\fR\fB,\fR\fI\|format\fR\fB}.\fR \fImember\fR is a member name
-of the \fIstructure\fR given earlier, and \fBformat\fR is any valid \fBadb\fR
-format request or any of the \fBadbgen\fR format specifiers (such as
-\fB{POINTER}\fR) listed below. For example, to print the \fBp_pid\fR field of
-the \fIproc\fR structure as a decimal number, you would write \fB{p_pid,d}\fR.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Print the appropriate \fBadb\fR format character for the given \fBadbgen\fR
-format specifier. This action takes the data model into consideration. The
-request form is \fB{\fR\fIformat specifier\fR\fB}.\fR The valid \fBadbgen\fR
-format specifiers are:
-.RS
-
-.sp
-.ne 2
-.na
-\fB\fB{POINTER}\fR\fR
-.ad
-.RS 14n
-pointer value in hexadecimal
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB{LONGDEC}\fR\fR
-.ad
-.RS 14n
-long value in decimal
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB{ULONGDEC}\fR\fR
-.ad
-.RS 14n
-unsigned long value in decimal
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB{ULONGHEX}\fR\fR
-.ad
-.RS 14n
-unsigned long value in hexadecimal
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB{LONGOCT}\fR\fR
-.ad
-.RS 14n
-long value in octal
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB{ULONGOCT}\fR\fR
-.ad
-.RS 14n
-unsigned long value in octal
-.RE
-
-.RE
-
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Reference a structure member. The request form is
-\fB{*\fR\fImember\fR\fB,\fR\fI\|base\fR\fB}.\fR \fImember\fR is the member name
-whose value is desired, and \fIbase\fR is an \fBadb\fR register name which
-contains the base address of the structure. For example, to get the \fBp_pid\fR
-field of the \fIproc\fR structure, you would get the \fIproc\fR structure
-address in an \fBadb\fR register, for example \fB<f\fR, and write
-\fB{*p_pid,<f}\fR.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Tell \fBadbgen\fR that the offset is valid. The request form is
-\fB{OFFSETOK}\fR. This is useful after invoking another \fBadb\fR script which
-moves the \fBadb\fR \fIdot\fR.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Get the size of the \fIstructure\fR. The request form is \fB{SIZEOF}\fR.
-\fBadbgen\fR replaces this request with the size of the structure. This is
-useful in incrementing a pointer to step through an array of structures.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Calculate an arbitrary C expression. The request form is
-\fB{EXPR,\fR\fI\|expression\fR\fB}.\fR \fBadbgen\fR replaces this request with
-the value of the expression. This is useful when more than one structure is
-involved in the script.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Get the offset to the end of the structure. The request form is \fB{END}\fR.
-This is useful at the end of the structure to get \fBadb\fR to align the
-\fIdot\fR for printing the next structure member.
-.RE
-.sp
-.LP
-\fBadbgen\fR keeps track of the movement of the \fBadb\fR \fIdot\fR and
-generates \fBadb\fR code to move forward or backward as necessary before
-printing any structure member in a script. \fBadbgen\fR's model of the behavior
-of \fBadb\fR's \fIdot\fR is simple: it is assumed that the first line of the
-script is of the form \fIstruct_address\fR/\fIadb text\fR and that subsequent
-lines are of the form +/\fIadb text\fR. The \fBadb\fR \fIdot\fR then moves in a
-sane fashion. \fBadbgen\fR does not check the script to ensure that these
-limitations are met. \fBadbgen\fR also checks the size of the structure member
-against the size of the \fBadb\fR format code and warns if they are not equal.
-.SH OPTIONS
-.sp
-.LP
-The following option is supported:
-.sp
-.ne 2
-.na
-\fB\fB-m\fR \fImodel\fR\fR
-.ad
-.RS 12n
-Specifies the data type model to be used by \fBadbgen\fR for the macro. This
-affects the outcome of the \fB{\fR\fIformat specifier\fR\fB}\fR requests
-described under \fBDESCRIPTION\fR and the offsets and sizes of data types.
-\fImodel\fR can be \fBilp32\fR or \fBlp64\fR. If the \fB-m\fR option is not
-given, the data type model defaults to \fBilp32\fR.
-.RE
-
-.SH OPERANDS
-.sp
-.LP
-The following operand is supported:
-.sp
-.ne 2
-.na
-\fB\fIfilename\fR\fB\&.adb\fR\fR
-.ad
-.RS 18n
-Input file that contains header information, followed by a null line, the name
-of the structure, and finally an \fBadb\fR script.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRA sample \fBadbgen\fR file.
-.sp
-.LP
-For an include file \fBx.h\fR which contained
-
-.sp
-.in +2
-.nf
-struct x {
- char *x_cp;
- char x_c;
- int x_i;
-};
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-then , an \fBadbgen\fR file (call it \fBscript.adb\fR) to print the file
-\fBx.h\fR would be:
-
-.sp
-.in +2
-.nf
-#include "x.h"
-x
-\&./"x_cp"16t"x_c"8t"x_i"n{x_cp,{POINTER}}{x_c,C}{x_i,D}
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-After running \fBadbgen\fR as follows,
-
-.sp
-.in +2
-.nf
-% /usr/lib/adb/adbgen \|script.adb
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-the output file \fBscript\fR contains:
-
-.sp
-.in +2
-.nf
-\&./"x_cp"16t"x_c"8t"x_i"nXC3+D
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-For a macro generated for a 64-bit program using the \fBlp64\fR data model as
-follows,
-
-.sp
-.in +2
-.nf
-\fB% /usr/lib/adb/adbgen/ \fR\fB-m\fR\fB lp64 \|script.adb\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-the output file \fBscript\fR would contain:
-
-.sp
-.in +2
-.nf
-\&./"x_cp"16t"x_c"8t"x_i"nJC3+D
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-To invoke the script, type:
-
-.sp
-.in +2
-.nf
-example% adb program
-x$<script
-.fi
-.in -2
-.sp
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/usr/platform/\fR\fIplatform-name\fR\fB/lib/adb/*\fR\fR
-.ad
-.sp .6
-.RS 4n
-platform-specific \fBadb\fR scripts for debugging the 32-bit kernel
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/platform/\fR\fIplatform-name\fR\fB/lib/adb/sparcv9/*\fR\fR
-.ad
-.sp .6
-.RS 4n
-platform-specific \fBadb\fR scripts for debugging the 64-bit SPARC V9 kernel
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/adb/*\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBadb\fR scripts for debugging the 32-bit kernel
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/adb/sparcv9/*\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBadb\fR scripts for debugging the 64-bit SPARC V9 kernel
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBadb\fR(1), \fBuname\fR(1), \fBkadb\fR(1M), \fBattributes\fR(5)
-.SH DIAGNOSTICS
-.sp
-.LP
-Warnings are given about structure member sizes not equal to \fBadb\fR format
-items and about badly formatted requests. The C compiler complains if a
-structure member that does not exist is referenced. It also complains about an
-ampersand before array names; these complaints may be ignored.
-.SH NOTES
-.sp
-.LP
-\fIplatform-name\fR can be found using the \fB-i\fR option of \fBuname\fR(1).
-.SH BUGS
-.sp
-.LP
-\fBadb\fR syntax is ugly; there should be a higher level interface for
-generating scripts.
-.sp
-.LP
-Structure members which are bit fields cannot be handled because C will not
-give the address of a bit field. The address is needed to determine the offset.
diff --git a/usr/src/man/man1m/add_allocatable.1m b/usr/src/man/man1m/add_allocatable.1m
deleted file mode 100644
index 3a158e92f0..0000000000
--- a/usr/src/man/man1m/add_allocatable.1m
+++ /dev/null
@@ -1,248 +0,0 @@
-'\" te
-.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH ADD_ALLOCATABLE 1M "Jul 20, 2007"
-.SH NAME
-add_allocatable \- add entries to allocation databases
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/add_allocatable\fR [\fB-f\fR] [\fB-s\fR] [\fB-d\fR] \fB-n\fR \fIname\fR \fB-t\fR \fItype\fR \fB-l\fR \fIdevice-list\fR
- [\fB-a\fR \fIauthorization\fR] [\fB-c\fR \fIclean\fR] [\fB-o\fR \fIkey\fR=\fIvalue\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBadd_allocatable\fR creates new entries for user allocatable devices that are
-to be managed by the device allocation mechanism. \fBadd_allocatable\fR can
-also be used to update existing entries of such devices.
-.sp
-.LP
-\fBadd_allocatable\fR can also create and update entries for non-allocatable
-devices, such as printers, whose label range is managed by the device
-allocation mechanism.
-.sp
-.LP
-\fBadd_allocatable\fR can be used in shell scripts, such as installation
-scripts for driver packages, to automate the administrative work of setting up
-a new device.
-.sp
-.LP
-Use \fBlist_devices\fR(1) to see the names and types of allocatable devices,
-their attributes, and device paths.
-.SH OPTIONS
-.sp
-.ne 2
-.na
-\fB\fB-f\fR\fR
-.ad
-.RS 20n
-Force an update of an already-existing entry with the specified information.
-\fBadd_allocatable\fR exits with an error if this option is not specified when
-an entry with the specified device name already exists.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR\fR
-.ad
-.RS 20n
-Turn on silent mode. \fBadd_allocatable\fR does not print any error or warning
-messages.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-d\fR\fR
-.ad
-.RS 20n
-If this option is present, \fBadd_allocatable\fR updates the system-supplied
-default attributes of the device type specified with \fB-t\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR \fIname\fR\fR
-.ad
-.RS 20n
-Adds or updates an entry for device that is specified by \fIname\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-t\fR \fItype\fR\fR
-.ad
-.RS 20n
-Adds or updates device entries that are of a type that are specified by
-\fItype\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR \fIdevice-list\fR\fR
-.ad
-.RS 20n
-Adds or updates device paths to the device that is specified with \fB-n\fR.
-Multiple paths in \fIdevice-list\fR must be separated by white spaces and the
-list must be quoted.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-a\fR \fIauthorization\fR\fR
-.ad
-.RS 20n
-Adds or updates the authorization that is associated with either the device
-that is specified with \fB-n\fR or with devices of the type that is specified
-with \fB-t\fR. When more than one authorization is specified, the list must be
-separated by commas and must be quoted. When the device is not allocatable,
-\fIauthorization\fR is specified with an asterisk (*) and must be quoted. When
-the device is allocatable by any user, \fIauthorization\fR is specified with
-the at sign (@) and must be quoted. Default authorization is '@'.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-c\fR \fIclean\fR\fR
-.ad
-.RS 20n
-Specifies the \fBdevice_clean\fR(5) program \fIclean\fR to be used with the
-device that is specified with \fB-n\fR or with devices of the type that is
-specified with \fB-t\fR. The default clean program is \fB/bin/true\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-o\fR \fIkey\fR=\fIvalue\fR\fR
-.ad
-.RS 20n
-Accepts a string of colon-separated \fB\fIkey\fR=\fIvalue\fR\fR pairs for a
-device that is specified with \fB-n\fR or with devices of the type that is
-specified with \fB-t\fR. The following keys are currently interpreted by the
-system:
-.sp
-.ne 2
-.na
-\fB\fBminlabel\fR\fR
-.ad
-.RS 12n
-The minimum label at which the device can be used.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmaxlabel\fR\fR
-.ad
-.RS 12n
-The maximum label at which the device can be used.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBclass\fR\fR
-.ad
-.RS 12n
-Specifies a logical grouping of devices. For example, all Sun
-Ray\u\s-2TM\s+2\d devices of all device types is a logical grouping. The
-\fBclass\fR keyword has no default value.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBxdpy\fR\fR
-.ad
-.RS 12n
-Specifies the display name of the X session. This keyword is used to identify
-devices that are associated with the X session. The \fBxdpy\fR keyword has no
-default value.
-.RE
-
-.RE
-
-.SH EXIT STATUS
-.sp
-.LP
-When successful, \fBadd_allocate\fR returns an exit status of \fB0\fR (true).
-\fBadd_allocate\fR returns a nonzero exit status in the event of an error. The
-exit codes are as follows:
-.sp
-.ne 2
-.na
-\fB\fB1\fR\fR
-.ad
-.RS 5n
-Invocation syntax error
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB2\fR\fR
-.ad
-.RS 5n
-Unknown system error
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB3\fR\fR
-.ad
-.RS 5n
-An entry already exists for the specified device. This error occurs only when
-the \fB-f\fR option is not specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB4\fR\fR
-.ad
-.RS 5n
-Permission denied. User does not have DAC or MAC access record updates.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability See below.
-.TE
-
-.sp
-.LP
-The invocation is Uncommitted. The options are Uncommitted. The output is
-Not-an-Interface.
-.SH SEE ALSO
-.sp
-.LP
-\fBallocate\fR(1), \fBdeallocate\fR(1), \fBlist_devices\fR(1),
-\fBremove_allocatable\fR(1M), \fBattributes\fR(5), \fBdevice_clean\fR(5)
-.SH NOTES
-.sp
-.LP
-The functionality described on this manual page is available only if the system
-is configured with Trusted Extensions.
diff --git a/usr/src/man/man1m/add_drv.1m b/usr/src/man/man1m/add_drv.1m
deleted file mode 100644
index 8376e3326e..0000000000
--- a/usr/src/man/man1m/add_drv.1m
+++ /dev/null
@@ -1,636 +0,0 @@
-'\" te
-.\" Copyright (c) 2005 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH ADD_DRV 1M "May 13, 2017"
-.SH NAME
-add_drv \- add a new device driver to the system
-.SH SYNOPSIS
-.LP
-.nf
-\fBadd_drv\fR [\fB-b\fR \fIbasedir\fR] [\fB-c\fR \fIclass_name\fR]
- [\fB-i\fR '\fIidentify_name\fR...'] [\fB-m\fR '\fIpermission\fR','...']
- [\fB-p\fR '\fIpolicy\fR'] [\fB-P\fR \fIprivilege\fR] [\fB-n\fR] [\fB-f\fR] [\fB-v\fR] \fIdevice_driver\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBadd_drv\fR command is used to inform the system about newly installed
-device drivers.
-.sp
-.LP
-Each device on the system has a name associated with it. This name is
-represented by the \fBname\fR property for the device. Similarly, the device
-may also have a list of driver names associated with it. This list is
-represented by the \fBcompatible\fR property for the device.
-.sp
-.LP
-The system determines which devices will be managed by the driver being added
-by examining the contents of the \fBname\fR property and the \fBcompatible\fR
-property (if it exists) on each device. If the value in the \fBname\fR property
-does not match the driver being added, each entry in the \fBcompatible\fR
-property is tried, in order, until either a match occurs or there are no more
-entries in the \fBcompatible\fR property.
-.sp
-.LP
-In some cases, adding a new driver may require a reconfiguration boot. See the
-\fBNOTES\fR section.
-.sp
-.LP
-Aliases might require quoting (with double-quotes) if they contain numbers. See
-\fBEXAMPLES\fR.
-.SS "The \fB/etc/minor_perm\fR File"
-.LP
-\fBadd_drv\fR and \fBupdate_drv\fR(1M) read the \fB/etc/minor_perm\fR file to
-obtain permission information. The permission specified is applied to matching
-minor nodes created when a device bound to the driver is attached. A minor
-node's permission may be manually changed by \fBchmod\fR(1). For such nodes,
-the specified permissions apply, overriding the default permissions specified
-via \fBadd_drv\fR or \fBupdate_drv\fR(1M).
-.sp
-.LP
-The format of the \fB/etc/minor_perm\fR file is as follows:
-.sp
-.in +2
-.nf
-\fIname\fR\fB:\fR\fIminor_name permissions owner group\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-\fIminor_name\fR may be the actual name of the minor node, or contain shell
-metacharacters to represent several minor nodes (see \fBsh\fR(1)).
-.sp
-.LP
-For example:
-.sp
-.in +2
-.nf
-sd:* 0640 root sys
-zs:[a-z],cu 0600 uucp uucp
-mm:kmem 0640 root bin
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The first line sets all devices exported by the \fBsd\fR node to \fB0640\fR
-permissions, owned by \fBroot\fR, with group \fBsys\fR. In the second line,
-devices such as \fBa,cu\fR \fBand\fR \fBz,cu\fR exported by the \fBzs\fR driver
-are set to \fB0600\fR permission, owned by \fBuucp\fR, with group \fBuucp\fR.
-In the third line the \fBkmem\fR device exported by the \fBmm\fR driver is set
-to \fB0640\fR permission, owned by \fBroot\fR, with group \fBbin\fR.
-.SS "Running \fBadd_drv\fR from a \fBpostinstall\fR Script"
-.LP
-When running \fBadd_drv\fR from within the context of a legacy SVR4
-package's postinstall
-script, you must consider whether the package is being added to a system image
-or to a running system. When a package is being installed on a system image,
-the \fBBASEDIR\fR variable refers to the image's base directory. In this
-situation, \fBadd_drv\fR should be invoked with \fB-b\fR \fB$BASEDIR\fR. This
-causes \fBadd_drv\fR only to update the image's system files; a reboot of the
-system or client would be required to make the driver operational.
-.sp
-.LP
-When a package is being installed on the running system itself, the system
-files need to be updated, as in the case above. However, the running kernel can
-be informed of the existence of the new driver without requiring a reboot. To
-accomplish this, the postinstall script must invoke \fBadd_drv\fR without the
-\fB-b\fR option. Accordingly, \fBpostinstall\fR scripts invoking \fBadd_drv\fR
-should be written thusly:
-.sp
-.in +2
-.nf
-if [ "${BASEDIR:=/}" = "/" ]
-then
- ADD_DRV="add_drv"
-else
- ADD_DRV="add_drv -b ${BASEDIR}"
-fi
-$ADD_DRV [<options>] \fI<driver>\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-\&...or, alternatively:
-.sp
-.in +2
-.nf
-if [ "${BASEDIR:=/}" != "/" ]
-then
- BASEDIR_OPT="-b $BASEDIR"
-fi
- add_drv $BASEDIR_OPT [<options>] \fI<driver>\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The \fB-b\fR option is described below.
-.SH OPTIONS
-.ne 2
-.na
-\fB\fB-b\fR \fIbasedir\fR\fR
-.ad
-.RS 26n
-Installs the driver on the system with a root directory of \fIbasedir\fR rather
-than installing on the system executing \fBadd_drv\fR. This option was typically
-used in package post-installation scripts. The system using
-\fIbasedir\fR as its root directory must reboot to complete the driver
-installation.
-.LP
-Note -
-.sp
-.RS 2
-The root file system of any non-global zones must not be referenced with the
-\fB-b\fR option. Doing so might damage the global zone's file system, might
-compromise the security of the global zone, and might damage the non-global
-zone's file system. See \fBzones\fR(5).
-.RE
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-c\fR \fIclass_name\fR\fR
-.ad
-.RS 26n
-The driver being added to the system exports the class \fIclass_name\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR\fR
-.ad
-.RS 26n
-Normally if a reconfiguration boot is required to complete the configuration of
-the driver into the system, \fBadd_drv\fR will not add the driver. The force
-flag forces \fBadd_drv\fR to add the driver even if a reconfiguration boot is
-required. See the \fB-v\fR flag.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-i\fR \fB\&'\fR\fIidentify_name\fR\fB\&'\fR\fR
-.ad
-.RS 26n
-A white-space separated list of aliases for the driver \fIdevice_driver\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-m\fR \fB\&'\fR\fIpermission\fR\fB\&'\fR\fR
-.ad
-.RS 26n
-Specify the file system permissions for device nodes created by the system on
-behalf of \fIdevice_driver\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR\fR
-.ad
-.RS 26n
-Do not try to load and attach \fIdevice_driver\fR, just modify the system
-configuration files for the \fIdevice_driver\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR '\fIpolicy\fR\fB\&'\fR\fR
-.ad
-.RS 26n
-Specify an additional device security policy.
-.sp
-The device security policy constists of several whitespace separated tokens:
-.sp
-.in +2
-.nf
-{\fIminorspec\fR {token=value}+}+
-.fi
-.in -2
-.sp
-
-\fIminorspec\fR is a simple wildcard pattern for a minor device. A single
-\fB*\fR matches all minor devices. Only one \fB*\fR is allowed in the pattern.
-.sp
-Patterns are matched in the following order:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-entries without a wildcard
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-entries with wildcards, longest wildcard first
-.RE
-The following tokens are defined: \fBread_priv_set\fR and \fBwrite_priv_set\fR.
-\fBread_priv_set\fR defines the privileges that need to be asserted in the
-effective set of the calling process when opening a device for reading.
-\fBwrite_priv_set\fR defines the privileges that need to be asserted in the
-effective set of the calling process when opening a device for writing. See
-\fBprivileges\fR(5).
-.sp
-A missing minor spec is interpreted as a \fB*\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-P\fR '\fIprivilege\fR\fB\&'\fR\fI\fR\fR
-.ad
-.RS 26n
-Specify additional, comma separated, privileges used by the driver. You can
-also use specific privileges in the device's policy.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.RS 26n
-The verbose flag causes \fBadd_drv\fR to provide additional information
-regarding the success or failure of a driver's configuration into the system.
-See the \fBEXAMPLES\fR section.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRAdding SUNW Example Driver to the System
-.sp
-.LP
-The following example adds the \fBSUNW,example\fR driver to a 32-bit system,
-with an alias name of \fBSUNW,alias\fR. It assumes the driver has already been
-copied to \fB/usr/kernel/drv\fR.
-
-.sp
-.in +2
-.nf
-example# add_drv \fB-m\fR '* 0666 bin bin','a 0644 root sys' \e
- \fB-p\fR 'a write_priv_set=sys_config * write_priv_set=none' \e
- \fB-i\fR 'SUNW,alias' SUNW,example
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Every minor node created by the system for the \fBSUNW,example\fR driver will
-have the permission \fB0666\fR, and be owned by user \fBbin\fR in the group
-\fBbin\fR, except for the minor device \fBa\fR, which will be owned by
-\fBroot\fR, group \fBsys\fR, and have a permission of \fB0644\fR. The specified
-device policy requires no additional privileges to open all minor nodes, except
-minor device \fBa\fR, which requires the \fBsys_config\fR privilege when
-opening the device for writing.
-
-.LP
-\fBExample 2 \fRAdding Driver to the Client \fB/export/root/sun1\fR
-.sp
-.LP
-The following example adds the driver to the client \fB/export/root/sun1\fR.
-The driver is installed and loaded when the client machine, \fBsun1\fR, is
-rebooted. This second example produces the same result as the first, except the
-changes are on the diskless client, \fBsun1\fR, and the client must be
-rebooted for the driver to be installed.
-
-.sp
-.in +2
-.nf
-example# add_drv \fB-m\fR '* 0666 bin bin','a 0644 root sys' \e
- \fB-i\fR 'SUNW,alias' -b /export/root/sun1 \e
- SUNW,example
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-See the note in the description of the \fB-b\fR option, above, specifying the
-caveat regarding the use of this option with the Solaris zones feature.
-
-.LP
-\fBExample 3 \fRAdding Driver for a Device Already Managed by an Existing
-Driver
-.sp
-.LP
-The following example illustrates the case where a new driver is added for a
-device that is already managed by an existing driver. Consider a device that is
-currently managed by the driver \fBdumb_framebuffer\fR. The \fBname\fR and
-\fBcompatible\fR properties for this device are as follows:
-
-.sp
-.in +2
-.nf
-name="display"
-compatible="whizzy_framebuffer", "dumb_framebuffer"
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-If \fBadd_drv\fR is used to add the \fBwhizzy_framebuffer\fR driver, the
-following will result.
-
-.sp
-.in +2
-.nf
-example# add_drv whizzy_framebuffer
-Error: Could not install driver (whizzy_framebuffer)
-Device managed by another driver.
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-If the \fB-v\fR flag is specified, the following will result.
-
-.sp
-.in +2
-.nf
-example# add_drv -v whizzy_framebuffer
-Error: Could not install driver (whizzy_framebuffer)
-Device managed by another driver.
-Driver installation failed because the following
-entries in /devices would be affected:
-
- /devices/iommu@f,e0000000/sbus@f,e0001000/display[:*]
- (Device currently managed by driver "dumb_framebuffer")
-
-The following entries in /dev would be affected:
-
- /dev/fbs/dumb_framebuffer0
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-If the \fB-v\fR and \fB-f\fR flags are specified, the driver will be added
-resulting in the following.
-
-.sp
-.in +2
-.nf
-example# add_drv -vf whizzy_framebuffer
-A reconfiguration boot must be performed to complete the
-installation of this driver.
-
-The following entries in /devices will be affected:
-
- /devices/iommu@f,e0000000/sbus@f,e0001000/display[:*]
- (Device currently managed by driver "dumb_framebuffer"
-
-The following entries in /dev will be affected:
-
- /dev/fbs/dumb_framebuffer0
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The above example is currently only relevant to devices exporting a generic
-device name.
-
-.LP
-\fBExample 4 \fRUse of Double Quotes in Specifying Driver Alias
-.sp
-.LP
-The following example shows the use of double quotes in specifying a driver
-alias that contains numbers.
-
-.sp
-.in +2
-.nf
-example# add_drv -i '"pci10c5,25"' smc
-.fi
-.in -2
-.sp
-
-.SH EXIT STATUS
-.LP
-\fBadd_drv\fR returns \fB0\fR on success and \fB1\fR on failure.
-.SH FILES
-.ne 2
-.na
-\fB\fB/kernel/drv\fR\fR
-.ad
-.sp .6
-.RS 4n
-32-bit boot device drivers
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/sparcv9\fR\fR
-.ad
-.sp .6
-.RS 4n
-64-bit SPARC boot device drivers
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64\fR\fR
-.ad
-.sp .6
-.RS 4n
-64-bit x86 boot device drivers
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/kernel/drv\fR\fR
-.ad
-.sp .6
-.RS 4n
-other 32-bit drivers that could potentially be shared between platforms
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/kernel/drv/sparcv9\fR\fR
-.ad
-.sp .6
-.RS 4n
-other 64-bit SPARC drivers that could potentially be shared between platforms
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/kernel/drv/amd64\fR\fR
-.ad
-.sp .6
-.RS 4n
-other 64-bit x86 drivers that could potentially be shared between platforms
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/platform/`uname\fR \fB-i`/kernel/drv\fR\fR
-.ad
-.sp .6
-.RS 4n
-32-bit platform-dependent drivers
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/platform/`uname\fR \fB-i`/kernel/drv/sparcv9\fR\fR
-.ad
-.sp .6
-.RS 4n
-64-bit SPARC platform-dependent drivers
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/platform/`uname\fR \fB-i`/kernel/drv/amd64\fR\fR
-.ad
-.sp .6
-.RS 4n
-64-bit x86 platform-dependent drivers
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/driver_aliases\fR\fR
-.ad
-.sp .6
-.RS 4n
-driver aliases file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/driver_classes\fR\fR
-.ad
-.sp .6
-.RS 4n
-driver classes file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/minor_perm\fR\fR
-.ad
-.sp .6
-.RS 4n
-minor node permissions
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/name_to_major\fR\fR
-.ad
-.sp .6
-.RS 4n
-major number binding
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/security/device_policy\fR\fR
-.ad
-.sp .6
-.RS 4n
-device policy
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/security/extra_privs\fR\fR
-.ad
-.sp .6
-.RS 4n
-device privileges
-.RE
-
-.SH SEE ALSO
-.LP
-\fBboot\fR(1M), \fBchmod\fR(1), \fBdevfsadm\fR(1M), \fBkernel\fR(1M),
-\fBmodinfo\fR(1M), \fBrem_drv\fR(1M), \fBupdate_drv\fR(1M),
-\fBdriver.conf\fR(4), \fBsystem\fR(4), \fBattributes\fR(5),
-\fBprivileges\fR(5), \fBdevfs\fR(7FS), \fBddi_create_minor_node\fR(9F)
-.sp
-.LP
-\fI\fR
-.SH NOTES
-.LP
-It is possible to add a driver for a device already being managed by a
-different driver, where the driver being added appears in the device's
-\fBcompatible\fR list before the current driver. In such cases, a
-reconfiguration boot is required (see \fBboot\fR(1M) and \fBkernel\fR(1M)).
-After the reconfiguration boot, device links in \fB/dev\fR and references to
-these files may no longer be valid (see the \fB-v\fR flag). If a
-reconfiguration boot would be required to complete the driver installation,
-\fBadd_drv\fR will fail unless the \fB-f\fR option is specified. See
-\fBExample\fR \fB3\fR in the \fBEXAMPLES\fR section.
-.sp
-.LP
-With the introduction of the device policy several drivers have had their minor
-permissions changed and a device policy instated. The typical network driver
-should use the following device policy:
-.sp
-.in +2
-.nf
-add_drv -p 'read_priv_set=net_rawaccess\e
- write_priv_set=net_rawaccess' -m '* 666 root sys'\e
- mynet
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-This document does not constitute an API. \fB/etc/minor_perm\fR,
-\fB/etc/name_to_major\fR, \fB/etc/driver_classes\fR, and \fB/devices\fR may not
-exist or may have different contents or interpretations in a future release.
-The existence of this notice does not imply that any other documentation that
-lacks this notice constitutes an API.
-.sp
-.LP
-\fB/etc/minor_perm\fR can only be updated by \fBadd_drv\fR(1M),
-\fBrem_drv\fR(1M) or \fBupdate_drv\fR(1M).
-.sp
-.LP
-In the current version of \fBadd_drv\fR, the use of double quotes to specify an
-alias is optional when used from the command line. However, when using
-\fBadd_drv\fR from packaging scripts, you should continue to use double quotes
-to specify an alias.
-.SH BUGS
-.LP
-Previous versions of \fBadd_drv\fR accepted a pathname for \fIdevice_driver\fR.
-This feature is no longer supported and results in failure.
diff --git a/usr/src/man/man1m/addbadsec.1m b/usr/src/man/man1m/addbadsec.1m
deleted file mode 100644
index f47282dbf6..0000000000
--- a/usr/src/man/man1m/addbadsec.1m
+++ /dev/null
@@ -1,100 +0,0 @@
-'\" te
-.\" Copyright (c) 1998, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH ADDBADSEC 1M "Feb 24, 1998"
-.SH NAME
-addbadsec \- map out defective disk blocks
-.SH SYNOPSIS
-.LP
-.nf
-\fBaddbadsec\fR [\fB-p\fR] [\fB-a\fR \fIblkno\fR [\fIblkno\fR]...] [\fB-f\fR \fIfilename\fR] \fIraw_device\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBaddbadsec\fR is used by the system administrator to map out bad disk blocks.
-Normally, these blocks are identified during surface analysis, but occasionally
-the disk subsystem reports unrecoverable data errors indicating a bad block. A
-block number reported in this way can be fed directly into \fBaddbadsec\fR, and
-the block will be remapped. \fBaddbadsec\fR will first attempt hardware
-remapping. This is supported on \fBSCSI\fR drives and takes place at the disk
-hardware level. If the target is an \fBIDE\fR drive, then software remapping is
-used. In order for software remapping to succeed, the partition must contain an
-alternate slice and there must be room in this slice to perform the mapping.
-.sp
-.LP
-It should be understood that bad blocks lead to data loss. Remapping a
-defective block does not repair a damaged file. If a bad block occurs to a
-disk-resident file system structure such as a superblock, the entire slice
-might have to be recovered from a backup.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-a\fR\fR
-.ad
-.RS 6n
-Adds the specified blocks to the hardware or software map. If more than one
-block number is specified, the entire list should be quoted and block numbers
-should be separated by white space.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR\fR
-.ad
-.RS 6n
-Adds the specified blocks to the hardware or software map. The bad blocks are
-listed, one per line, in the specified file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR\fR
-.ad
-.RS 6n
-Causes \fBaddbadsec\fR to print the current software map. The output shows the
-defective block and the assigned alternate. This option cannot be used to print
-the hardware map.
-.RE
-
-.SH OPERANDS
-.sp
-.LP
-The following operand is supported:
-.sp
-.ne 2
-.na
-\fB\fIraw_device\fR\fR
-.ad
-.RS 14n
-The address of the disk drive (see \fBFILES\fR).
-.RE
-
-.SH FILES
-.sp
-.LP
-The raw device should be \fB/dev/rdsk/c?[t?]d?p0\fR. See \fBdisks\fR(1M) for an
-explanation of \fBSCSI\fR and \fBIDE\fR device naming conventions.
-.SH SEE ALSO
-.sp
-.LP
-\fBdisks\fR(1M), \fBdiskscan\fR(1M), \fBfdisk\fR(1M), \fBfmthard\fR(1M),
-\fBformat\fR(1M), \fBattributes\fR(5)
-.SH NOTES
-.sp
-.LP
-The \fBformat\fR(1M) utility is available to format, label, analyze, and repair
-\fBSCSI\fR disks. This utility is included with the \fBaddbadsec\fR,
-\fBdiskscan\fR(1M), \fBfdisk\fR(1M), and \fBfmthard\fR(1M) commands available
-for x86. To format an \fBIDE\fR disk, use the \fB DOS\fR "format" utility;
-however, to label, analyze, or repair \fBIDE\fR disks on x86 systems, use the
-Solaris \fBformat\fR(1M) utility.
diff --git a/usr/src/man/man1m/arcstat.1m b/usr/src/man/man1m/arcstat.1m
deleted file mode 100644
index 6fc18f250a..0000000000
--- a/usr/src/man/man1m/arcstat.1m
+++ /dev/null
@@ -1,540 +0,0 @@
-.\"
-.\" This file and its contents are supplied under the terms of the
-.\" Common Development and Distribution License ("CDDL"), version 1.0.
-.\" You may only use this file in accordance with the terms of version
-.\" 1.0 of the CDDL.
-.\"
-.\" A full copy of the text of the CDDL should have accompanied this
-.\" source. A copy of the CDDL is also available via the Internet at
-.\" http://www.illumos.org/license/CDDL.
-.\"
-.\"
-.\" Copyright 2014 Adam Stevko. All rights reserved.
-.\" Copyright (c) 2015 by Delphix. All rights reserved.
-.\"
-.TH ARCSTAT 1M "Feb 4, 2014"
-.SH NAME
-arcstat \- report ZFS ARC and L2ARC statistics
-.SH SYNOPSIS
-.nf
-\fBarcstat\fR [\fB-hvxr\fR] [\fB-f field[,field]...\fR] [\fB-o file\fR] [\fB-s string\fR]
- [\fBinterval\fR [\fBcount\fR]]
-.fi
-
-.SH DESCRIPTION
-The \fBarcstat\fR utility print various ZFS ARC and L2ARC statistics in
-vmstat-like fashion.
-.sp
-
-.sp
-.LP
-The \fBarcstat\fR command reports the following information:
-.sp
-.ne 2
-
-.\"
-.sp
-.ne 1
-.na
-\fBc \fR
-.ad
-.RS 14n
-ARC Target Size
-.RE
-
-.sp
-.ne 2
-.na
-\fBdh% \fR
-.ad
-.RS 14n
-Demand Data hit percentage
-.RE
-
-.sp
-.ne 2
-.na
-\fBdm% \fR
-.ad
-.RS 14n
-Demand Data miss percentage
-.RE
-
-.sp
-.ne 2
-.na
-\fBmfu \fR
-.ad
-.RS 14n
-MFU List hits per second
-.RE
-
-.sp
-.ne 2
-.na
-\fBmh% \fR
-.ad
-.RS 14n
-Metadata hit percentage
-.RE
-
-.sp
-.ne 2
-.na
-\fBmm% \fR
-.ad
-.RS 14n
-Metadata miss percentage
-.RE
-
-.sp
-.ne 2
-.na
-\fBmru \fR
-.ad
-.RS 14n
-MRU List hits per second
-.RE
-
-.sp
-.ne 2
-.na
-\fBph% \fR
-.ad
-.RS 14n
-Prefetch hits percentage
-.RE
-
-.sp
-.ne 2
-.na
-\fBpm% \fR
-.ad
-.RS 14n
-Prefetch miss percentage
-.RE
-
-.sp
-.ne 2
-.na
-\fBdhit \fR
-.ad
-.RS 14n
-Demand Data hits per second
-.RE
-
-.sp
-.ne 2
-.na
-\fBdmis \fR
-.ad
-.RS 14n
-Demand Data misses per second
-.RE
-
-.sp
-.ne 2
-.na
-\fBhit% \fR
-.ad
-.RS 14n
-ARC Hit percentage
-.RE
-
-.sp
-.ne 2
-.na
-\fBhits \fR
-.ad
-.RS 14n
-ARC reads per second
-.RE
-
-.sp
-.ne 2
-.na
-\fBmfug \fR
-.ad
-.RS 14n
-MFU Ghost List hits per second
-.RE
-
-.sp
-.ne 2
-.na
-\fBmhit \fR
-.ad
-.RS 14n
-Metadata hits per second
-.RE
-
-.sp
-.ne 2
-.na
-\fBmiss \fR
-.ad
-.RS 14n
-ARC misses per second
-.RE
-
-.sp
-.ne 2
-.na
-\fBmmis \fR
-.ad
-.RS 14n
-Metadata misses per second
-.RE
-
-.sp
-.ne 2
-.na
-\fBmrug \fR
-.ad
-.RS 14n
-MRU Ghost List hits per second
-.RE
-
-.sp
-.ne 2
-.na
-\fBphit \fR
-.ad
-.RS 14n
-Prefetch hits per second
-.RE
-
-.sp
-.ne 2
-.na
-\fBpmis \fR
-.ad
-.RS 14n
-Prefetch misses per second
-.RE
-
-.sp
-.ne 2
-.na
-\fBread \fR
-.ad
-.RS 14n
-Total ARC accesses per second
-.RE
-
-.sp
-.ne 2
-.na
-\fBtime \fR
-.ad
-.RS 14n
-Time
-.RE
-
-.sp
-.ne 2
-.na
-\fBarcsz \fR
-.ad
-.RS 14n
-ARC Size
-.RE
-
-.sp
-.ne 2
-.na
-\fBdread \fR
-.ad
-.RS 14n
-Demand data accesses per second
-.RE
-
-.sp
-.ne 2
-.na
-\fBeskip \fR
-.ad
-.RS 14n
-evict_skip per second
-.RE
-
-.sp
-.ne 2
-.na
-\fBmiss% \fR
-.ad
-.RS 14n
-ARC miss percentage
-.RE
-
-.sp
-.ne 2
-.na
-\fBmread \fR
-.ad
-.RS 14n
-Metadata accesses per second
-.RE
-
-.sp
-.ne 2
-.na
-\fBpread \fR
-.ad
-.RS 14n
-Prefetch accesses per second
-.RE
-
-.sp
-.ne 2
-.na
-\fBl2hit% \fR
-.ad
-.RS 14n
-L2ARC access hit percentage
-.RE
-
-.sp
-.ne 2
-.na
-\fBl2hits \fR
-.ad
-.RS 14n
-L2ARC hits per second
-.RE
-
-.sp
-.ne 2
-.na
-\fBl2miss \fR
-.ad
-.RS 14n
-L2ARC misses per second
-.RE
-
-.sp
-.ne 2
-.na
-\fBl2read \fR
-.ad
-.RS 14n
-Total L2ARC accesses per second
-.RE
-
-.sp
-.ne 2
-.na
-\fBl2pref \fR
-.ad
-.RS 14n
-L2ARC prefetch allocated size per second
-.RE
-
-.sp
-.ne 2
-.na
-\fBl2pref% \fR
-.ad
-.RS 14n
-L2ARC prefetch allocated size percentage
-.RE
-
-.sp
-.ne 2
-.na
-\fBl2mfu \fR
-.ad
-.RS 14n
-L2ARC MFU allocated size per second
-.RE
-
-.sp
-.ne 2
-.na
-\fBl2mfu% \fR
-.ad
-.RS 14n
-L2ARC MFU allocated size percentage
-.RE
-
-.sp
-.ne 2
-.na
-\fBl2mru \fR
-.ad
-.RS 14n
-L2ARC MRU allocated size per second
-.RE
-
-.sp
-.ne 2
-.na
-\fBl2mru% \fR
-.ad
-.RS 14n
-L2ARC MRU allocated size percentage
-.RE
-
-.sp
-.ne 2
-.na
-\fBl2data \fR
-.ad
-.RS 14n
-L2ARC data (buf content) allocated size per second
-.RE
-
-.sp
-.ne 2
-.na
-\fBl2data% \fR
-.ad
-.RS 14n
-L2ARC data (buf content) allocated size percentage
-.RE
-
-.sp
-.ne 2
-.na
-\fBl2meta \fR
-.ad
-.RS 14n
-L2ARC metadata (buf content) allocated size per second
-.RE
-
-.sp
-.ne 2
-.na
-\fBl2meta% \fR
-.ad
-.RS 14n
-L2ARC metadata (buf content) allocated size percentage
-.RE
-
-.sp
-.ne 2
-.na
-\fBl2size \fR
-.ad
-.RS 14n
-Size of the L2ARC
-.RE
-
-.sp
-.ne 2
-.na
-\fBmtxmis \fR
-.ad
-.RS 14n
-mutex_miss per second
-.RE
-
-.sp
-.ne 2
-.na
-\fBl2bytes \fR
-.ad
-.RS 14n
-bytes read per second from the L2ARC
-.RE
-
-.sp
-.ne 2
-.na
-\fBl2miss% \fR
-.ad
-.RS 14n
-L2ARC access miss percentage
-.RE
-
-.sp
-.ne 2
-.na
-\fBl2asize \fR
-.ad
-.RS 14n
-Actual (compressed) size of the L2ARC
-.RE
-.\"
-
-.SH OPTIONS
-The following options are supported:
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR\fR
-.ad
-.RS 12n
-Display only specific fields. See \fBDESCRIPTION\fR for supported statistics.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-h\fR\fR
-.ad
-.RS 12n
-Display help message.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-o\fR\fR
-.ad
-.RS 12n
-Report statistics to a file instead of the standard output.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR\fR
-.ad
-.RS 12n
-Display data with a specified separator (default: 2 spaces).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-x\fR\fR
-
-.ad
-.RS 12n
-Print extended stats (same as -f time,mfu,mru,mfug,mrug,eskip,mtxmis,dread,pread,read).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.RS 12n
-Show field headers and definitions
-.RE
-
-.SH OPERANDS
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fB\fIcount\fR\fR
-.ad
-.RS 12n
-Display only \fIcount\fR reports.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIinterval\fR\fR
-.ad
-.RS 12n
-Specify the sampling interval in seconds.
-.RE
-
-.SH AUTHORS
-arcstat was originally written by Neelakanth Nadgir and supported only ZFS ARC statistics.
-Mike Harsch updated it to support L2ARC statistics.
diff --git a/usr/src/man/man1m/arp.1m b/usr/src/man/man1m/arp.1m
deleted file mode 100644
index ca4e20bdc1..0000000000
--- a/usr/src/man/man1m/arp.1m
+++ /dev/null
@@ -1,247 +0,0 @@
-'\" te
-.\" Copyright (c) 2009 Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH ARP 1M "Sep 02, 2015"
-.SH NAME
-arp \- address resolution display and control
-.SH SYNOPSIS
-.LP
-.nf
-\fBarp\fR \fIhostname\fR
-.fi
-
-.LP
-.nf
-\fBarp\fR \fB-a\fR [\fB-n\fR]
-.fi
-
-.LP
-.nf
-\fBarp\fR \fB-d\fR \fIhostname\fR
-.fi
-
-.LP
-.nf
-\fBarp\fR \fB-f\fR \fIfilename\fR
-.fi
-
-.LP
-.nf
-\fBarp\fR \fB-s\fR \fIhostname\fR \fIether_address\fR [temp] [pub] [trail]
- [permanent]
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBarp\fR program displays and modifies the Internet-to-MAC address
-translation tables used by the address resolution protocol (see \fBarp\fR(7P)).
-.sp
-.LP
-With no flags, the program displays the current \fBARP\fR entry for
-\fIhostname\fR. The host may be specified by name or by number, using Internet
-dot notation.
-.sp
-.LP
-Options that modify the ARP translation tables (\fB-d\fR, \fB-f\fR, and
-\fB-s\fR) can be used only when the invoked command is granted the
-\fBPRIV_SYS_NET_CONFIG\fR privilege. See \fBprivileges\fR(5).
-.SH OPTIONS
-.ne 2
-.na
-\fB\fB-a\fR\fR
-.ad
-.RS 6n
-Display all of the current \fBARP\fR entries. The definition for the flags in
-the table are:
-.sp
-.ne 2
-.na
-\fB\fBd\fR\fR
-.ad
-.RS 5n
-Unverified; this is a local IP address that is currently undergoing Duplicate
-Address Detection. ARP will not respond to requests for this address until
-Duplicate Address Detection completes.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBo\fR\fR
-.ad
-.RS 5n
-Old; this entry is aging away. If IP requests it again, a new ARP query will be
-generated. This state is used for detecting peer address changes.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBy\fR\fR
-.ad
-.RS 5n
-Delayed; periodic address defense and conflict detection was unable to send a
-packet due to internal network use limits for non-traffic-related messages (100
-packets per hour per interface). This occurs only on interfaces with very large
-numbers of aliases.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBA\fR\fR
-.ad
-.RS 5n
-Authority; this machine is authoritative for this IP address. ARP will not
-accept updates from other machines for this entry.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBL\fR\fR
-.ad
-.RS 5n
-Local; this is a local IP address configured on one of the machine's logical
-interfaces. ARP will defend this address if another node attempts to claim it.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM\fR\fR
-.ad
-.RS 5n
-Mapping; only used for the multicast entry for \fB224.0.0.0\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBP\fR\fR
-.ad
-.RS 5n
-Publish; includes IP address for the machine and the addresses that have
-explicitly been added by the \fB-s\fR option. ARP will respond to ARP requests
-for this address.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBS\fR\fR
-.ad
-.RS 5n
-Static; entry cannot be changed by learned information. This indicates that the
-\fBpermanent\fR flag was used when creating the entry.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBU\fR\fR
-.ad
-.RS 5n
-Unresolved; waiting for ARP response.
-.RE
-
-You can use the \fB-n\fR option with the \fB-a\fR option to disable the
-automatic numeric IP address-to-name translation. Use \fBarp\fR \fB-an\fR or
-\fBarp\fR \fB-na\fR to display numeric IP addresses. The \fBarp\fR \fB-a\fR
-option is equivalent to:
-.sp
-.in +2
-.nf
-# \fBnetstat -p -f inet\fR
-.fi
-.in -2
-.sp
-
-\&...and \fB-an\fR and \fB-na\fR are equivalent to:
-.sp
-.in +2
-.nf
-# \fBnetstat -pn -f inet\fR
-.fi
-.in -2
-.sp
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-d\fR\fR
-.ad
-.RS 6n
-Delete an entry for the host called \fIhostname\fR.
-.sp
-Note that ARP entries for IPMP (IP Network Multipathing) data and test
-addresses are managed by the kernel and thus cannot be deleted.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR\fR
-.ad
-.RS 6n
-Read the file named \fIfilename\fR and set multiple entries in the \fBARP\fR
-tables. Entries in the file should be of the form:
-.sp
-.in +2
-.nf
-\fIhostname\fR \fIMACaddress\fR [temp] [pub] [trail] [permanent]
-.fi
-.in -2
-.sp
-
-See the \fB-s\fR option for argument definitions.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR\fR
-.ad
-.RS 6n
-Create an \fBARP\fR entry for the host called \fIhostname\fR with the MAC
-address \fIMACaddress\fR. For example, an Ethernet address is given as six
-hexadecimal bytes separated by colons. The entry will not be subject to
-deletion by aging unless the word \fBtemp\fR is specified in the command. If
-the word \fBpub\fR is specified, the entry will be published, which means that
-this system will respond to ARP requests for \fIhostname\fR even though the
-\fIhostname\fR is not its own. The word \fBpermanent\fR indicates that the
-system will not accept MAC address changes for \fIhostname\fR from the network.
-.sp
-Solaris does not implement trailer encapsulation, and the word \fBtrail\fR is
-accepted on entries for compatibility only.
-.sp
-\fBarp\fR \fB-s\fR can be used for a limited form of proxy ARP when a host on
-one of the directly attached networks is not physically present on a subnet.
-Another machine can then be configured to respond to ARP requests using
-\fBarp\fR \fB-s\fR. This is useful in certain SLIP configurations.
-.sp
-Non-temporary proxy ARP entries for an IPMP (IP Network Multipathing) group are
-automatically managed by the kernel. Specifically, if the hardware address in
-an entry matches the hardware address of an IP interface in an IPMP group, and
-the IP address is not local to the system, this will be regarded as an IPMP
-proxy ARP entry. This entry will have its hardware address automatically
-adjusted in order to keep the IP address reachable so long as the IPMP group
-has not entirely failed.
-.sp
-ARP entries must be consistent across an IPMP group. Therefore, ARP entries
-cannot be associated with individual underlying IP interfaces in an IPMP group,
-and must instead be associated with the corresponding IPMP IP interface.
-.sp
-Note that ARP entries for IPMP data and test addresses are managed by the
-kernel and thus cannot be changed.
-.RE
-
-.SH SEE ALSO
-.LP
-\fBifconfig\fR(1M), \fBnetstat\fR(1M), \fBndp\fR(1M), \fBattributes\fR(5),
-\fBprivileges\fR(5), \fBarp\fR(7P)
diff --git a/usr/src/man/man1m/atohexlabel.1m b/usr/src/man/man1m/atohexlabel.1m
deleted file mode 100644
index 092f72d481..0000000000
--- a/usr/src/man/man1m/atohexlabel.1m
+++ /dev/null
@@ -1,117 +0,0 @@
-'\" te
-.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH ATOHEXLABEL 1M "Jul 20, 2007"
-.SH NAME
-atohexlabel \- convert a human readable label to its internal text equivalent
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/atohexlabel\fR [\fIhuman-readable-sensitivity-label\fR]
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/atohexlabel\fR \fB-c\fR [\fIhuman-readable-clearance\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBatohexlabel\fR converts a human readable label into an internal text
-representation that is safe for storing in a public object. If no option is
-supplied, the label is assumed to be a sensitivity label.
-.sp
-.LP
-Internal conversions can later be parsed to their same value. This internal
-form is often hexadecimal. The converted label is written to the standard
-output file. If no human readable label is specified, the label is read from
-the standard input file. The expected use of this command is emergency repair
-of labels that are stored in internal databases.
-.SH OPTIONS
-.sp
-.ne 2
-.na
-\fB\fB-c\fR\fR
-.ad
-.RS 6n
-Identifies the human readable label as a clearance.
-.RE
-
-.SH EXIT STATUS
-.sp
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 13n
-On success.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB1\fR\fR
-.ad
-.RS 13n
-On failure, and writes diagnostics to the standard error file.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/security/tsol/label_encodings\fR\fR
-.ad
-.sp .6
-.RS 4n
-The label encodings file contains the classification names, words, constraints,
-and values for the defined labels of this system.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability See below.
-.TE
-
-.sp
-.LP
-The command output is Committed for systems with the same \fBlabel_encodings\fR
-file. The command invocation is Committed for systems that implement the DIA
-MAC policy.
-.SH SEE ALSO
-.sp
-.LP
-\fBhextoalabel\fR(1M), \fBlabel_to_str\fR(3TSOL), \fBstr_to_label\fR(3TSOL),
-\fBlabel_encodings\fR(4), \fBattributes\fR(5)
-.sp
-.LP
-\fIHow to Get the Hexadecimal Equivalent for a Label\fR in \fISolaris Trusted
-Extensions Administrator\&'s Procedures\fR
-.SH NOTES
-.sp
-.LP
-The functionality described on this manual page is available only if the system
-is configured with Trusted Extensions.
-.sp
-.LP
-This file is part of the Defense Intelligence Agency (DIA) Mandatory Access
-Control (MAC) policy. This file might not be applicable to other MAC policies
-that might be developed for future releases of Solaris Trusted Extensions
-software.
diff --git a/usr/src/man/man1m/audit.1m b/usr/src/man/man1m/audit.1m
deleted file mode 100644
index 4b3d63422c..0000000000
--- a/usr/src/man/man1m/audit.1m
+++ /dev/null
@@ -1,94 +0,0 @@
-'\" te
-.\" Copyright (c) 2017 Peter Tribble
-.\" Copyright (c) 1993, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH AUDIT 1M "Mar 6, 2017"
-.SH NAME
-audit \- control the behavior of the audit daemon
-.SH SYNOPSIS
-.LP
-.nf
-\fBaudit\fR \fB-n\fR | \fB-s\fR | \fB-t\fR | \fB-v\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBaudit\fR command is the system administrator's interface to maintaining
-the audit daemon \fBauditd\fR(1M). The audit daemon can be stopped, started, or
-notified to reread the configuration, stored in \fBsmf\fR(5) and managed using
-the \fBauditconfig\fR(1M) command.
-.SH OPTIONS
-.ne 2
-.na
-\fB\fB-n\fR\fR
-.ad
-.RS 11n
-Notify the audit daemon to close the current audit file and open a new audit
-file in the current audit directory.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR\fR
-.ad
-.RS 11n
-Validates the audit service configuration and, if correct, notify the audit
-daemon to reread the audit configuration. If the audit daemon is not running,
-the audit daemon is started.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-t\fR\fR
-.ad
-.RS 11n
-Direct the audit daemon to close the current audit trail file, disable
-auditing, and die. Use \fB-s\fR to restart auditing.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR
-.ad
-.RS 11n
-Validate the audit service configuration. At least one plugin must be active;
-if that plugin is \fBaudit_binfile\fR then its \fBp_dir\fR attribute must
-contain at least one valid directory, and its \fBp_minfree\fR attribute must
-be between 0 and 100.
-.RE
-
-.SH DIAGNOSTICS
-.LP
-The \fBaudit\fR command will exit with \fB0\fR upon success and a positive
-integer upon failure.
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Stability Evolving
-.TE
-
-.SH SEE ALSO
-.LP
-\fBpraudit\fR(1M), \fBauditconfig\fR(1M), \fBaudit\fR(2), \fBsmf\fR(5),
-\fBattributes\fR(5)
-.SH NOTES
-.LP
-The \fB-v\fR option can be used in any zone, but the \fB-t\fR, \fB-s\fR, and
-\fB-n\fR options are valid only in local zones and, then, only if the
-\fBperzone\fR audit policy is set. See \fBauditd\fR(1M) and
-\fBauditconfig\fR(1M) for per-zone audit configuration.
diff --git a/usr/src/man/man1m/audit_warn.1m b/usr/src/man/man1m/audit_warn.1m
deleted file mode 100644
index d1ace1257c..0000000000
--- a/usr/src/man/man1m/audit_warn.1m
+++ /dev/null
@@ -1,231 +0,0 @@
-'\" te
-.\" Copyright (c) 2017 Peter Tribble
-.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH AUDIT_WARN 1M "Mar 6, 2017"
-.SH NAME
-audit_warn \- audit daemon warning script
-.SH SYNOPSIS
-.LP
-.nf
-\fB/etc/security/audit_warn\fR [\fIoption\fR [\fIarguments\fR]]
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBaudit_warn\fR utility processes warning or error messages from the audit
-daemon. When a problem is encountered, the audit daemon, \fBauditd\fR(1M) calls
-\fBaudit_warn\fR with the appropriate arguments. The \fIoption\fR argument
-specifies the error type.
-.sp
-.LP
-The system administrator can specify a list of mail recipients to be notified
-when an audit_warn situation arises by defining a mail alias called
-\fBaudit_warn\fR in \fBaliases\fR(4). The users that make up the
-\fBaudit_warn\fR alias are typically the \fBaudit\fR and \fBroot\fR users.
-.SH OPTIONS
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fBallhard\fR \fIcount\fR\fR
-.ad
-.sp .6
-.RS 4n
-Indicates that the hard limit for all filesystems has been exceeded \fIcount\fR
-times. The default action for this option is to send mail to the
-\fBaudit_warn\fR alias only if the \fIcount\fR is \fB1\fR, and to write a
-message to the machine console every time. It is recommended that mail
-\fInot\fR be sent every time as this could result in a the saturation of the
-file system that contains the mail spool directory.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBallsoft\fR\fR
-.ad
-.sp .6
-.RS 4n
-Indicates that the soft limit for all filesystems has been exceeded. The
-default action for this option is to send mail to the \fBaudit_warn\fR alias
-and to write a message to the machine console.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBauditoff\fR\fR
-.ad
-.sp .6
-.RS 4n
-Indicates that someone other than the audit daemon changed the system audit
-state to something other than \fB\fR\fBAUC_AUDITING\fR\fB\&. \fR The audit
-daemon will have exited in this case. The default action for this option is to
-send mail to the \fBaudit_warn\fR alias and to write a message to the machine
-console.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBhard\fR \fIfilename\fR\fR
-.ad
-.sp .6
-.RS 4n
-Indicates that the hard limit for the file has been exceeded. The default
-action for this option is to send mail to the \fBaudit_warn\fR alias and to
-write a message to the machine console.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnostart\fR\fR
-.ad
-.sp .6
-.RS 4n
-Indicates that auditing could not be started. The default action for this
-option is to send mail to the \fBaudit_warn\fR alias and to write a message to
-the machine console. Some administrators may prefer to modify \fBaudit_warn\fR
-to reboot the system when this error occurs.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBplugin\fR \fIname\fR \fIerror\fR \fIcount\fR \fItext\fR\fR
-.ad
-.sp .6
-.RS 4n
-Indicates that an error occurred during execution of the \fBauditd\fR plugin
-\fIname\fR. The default action for this option is to send mail to the
-\fBaudit_warn\fR alias only if \fIcount\fR is 1, and to write a message to the
-machine console every time. (Separate counts are kept for each error type.) It
-is recommended that mail not be sent every time as this could result in the
-saturation of the file system that contains the mail spool directory. The
-\fItext\fR field provides the detailed error message passed from the plugin.
-The \fIerror\fR field is one of the following strings:
-.sp
-.ne 2
-.na
-\fB\fBload_error\fR\fR
-.ad
-.RS 16n
-Unable to load the plugin \fIname\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsys_error\fR\fR
-.ad
-.RS 16n
-The plugin \fIname\fR is not executing due to a system error such as a lack of
-resources.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBconfig_error\fR\fR
-.ad
-.RS 16n
-No plugins loaded (including the binary file plugin, \fBaudit_binfile\fR(5))
-due to configuration errors. The name string is
-\fB--\fR to indicate that no plugin name applies.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBretry\fR\fR
-.ad
-.RS 16n
-The plugin \fIname\fR reports it has encountered a temporary failure.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBno_memory\fR\fR
-.ad
-.RS 16n
-The plugin \fIname\fR reports a failure due to lack of memory.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBinvalid\fR\fR
-.ad
-.RS 16n
-The plugin \fIname\fR reports it received an invalid input.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfailure\fR\fR
-.ad
-.RS 16n
-The plugin \fIname\fR has reported an error as described in \fItext\fR.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsoft\fR \fIfilename\fR\fR
-.ad
-.sp .6
-.RS 4n
-Indicates that the soft limit for \fIfilename\fR has been exceeded. The default
-action for this option is to send mail to the \fBaudit_warn\fR alias and to
-write a message to the machine console.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBtmpfile\fR\fR
-.ad
-.sp .6
-.RS 4n
-Indicates that there was a problem creating a symlink from
-\fB/var/run/.audit.log\fR to the current audit log file..
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-.TE
-
-.sp
-.LP
-The interface stability is evolving. The file content is unstable.
-.SH SEE ALSO
-.LP
-\fBaudit\fR(1M), \fBauditd\fR(1M), \fBaliases\fR(4),
-\fBaudit.log\fR(4), \fBattributes\fR(5)
-.SH NOTES
-.LP
-If the audit policy \fBperzone\fR is set, the \fB/etc/security/audit_warn\fR
-script for the local zone is used for notifications from the local zone's
-instance of \fBauditd\fR. If the \fBperzone\fR policy is not set, all
-\fBauditd\fR errors are generated by the global zone's copy of
-\fB/etc/security/audit_warn\fR.
diff --git a/usr/src/man/man1m/auditconfig.1m b/usr/src/man/man1m/auditconfig.1m
deleted file mode 100644
index 6e200f5b71..0000000000
--- a/usr/src/man/man1m/auditconfig.1m
+++ /dev/null
@@ -1,1085 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 2015, Joyent, Inc. All Rights Reserved
-.\" Copyright (c) 2017 Peter Tribble
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH AUDITCONFIG 1M "Mar 6, 2017"
-.SH NAME
-auditconfig \- configure auditing
-.SH SYNOPSIS
-.LP
-.nf
-\fBauditconfig\fR \fIoption\fR...
-.fi
-
-.SH DESCRIPTION
-.LP
-\fBauditconfig\fR provides a command line interface to get and set kernel audit
-parameters.
-.sp
-.LP
-The setting of the \fBperzone\fR policy determines the scope of the audit
-setting controlled by \fBauditconfig\fR. If \fBperzone\fR is set, then the
-values reflect the local zone except as noted. Otherwise, the settings are for
-the entire system. Any restriction based on the \fBperzone\fR setting is noted
-for each option to which it applies.
-.sp
-.LP
-A non-global zone administrator can set all audit policy options except
-\fBperzone\fR and \fBahlt\fR. \fBperzone\fR and \fBahlt\fR apply only to the
-global zone; setting these policies requires the privileges of a global zone
-administrator. \fBperzone\fR and \fBahlt\fR are described under the
-\fB-setpolicy\fR option, below.
-.SH OPTIONS
-.ne 2
-.na
-\fB\fB-aconf\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set the non-attributable audit mask to the value set using the
-\fB-setnaflags\fR option. For example:
-.sp
-.in +2
-.nf
-# auditconfig -aconf
-Configured non-attributable event mask.
-.fi
-.in -2
-.sp
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-audit\fR \fIevent\fR \fIsorf\fR \fIretval\fR \fIstring\fR\fR
-.ad
-.sp .6
-.RS 4n
-This command constructs an audit record for audit event \fIevent\fR using the
-process's audit characteristics containing a text token \fIstring\fR. The
-return token is constructed from the \fIsorf\fR (success/failure flag) and the
-\fIretval\fR (return value). The event is type \fBchar*\fR, the \fIsorf\fR is
-0/1 for success/failure, \fIretval\fR is an errno value, \fIstring\fR is type
-\fB*char\fR. This command is useful for constructing an audit record with a
-shell script. An example of this option:
-.sp
-.in +2
-.nf
-# auditconfig -audit AUE_ftpd 0 0 "test string"
-#
-
-audit record from audit trail:
- header,76,2,ftp access,,Fri Dec 08 08:44:02 2000, + 669 msec
- subject,abc,root,other,root,other,104449,102336,235 197121 elbow
- text,test string
- return,success,0
-.fi
-.in -2
-.sp
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-chkaconf\fR\fR
-.ad
-.sp .6
-.RS 4n
-Checks that the current non-attributable event flags set in the kernel
-matches the configuration. If the runtime class mask of a
-kernel audit event does not match the configured class mask, a mismatch is
-reported.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-chkconf\fR\fR
-.ad
-.sp .6
-.RS 4n
-Check the configuration of kernel audit event to class mappings. If the runtime
-class mask of a kernel audit event does not match the configured class mask, a
-mismatch is reported.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-conf\fR\fR
-.ad
-.sp .6
-.RS 4n
-Configure kernel audit event to class mappings. Runtime class mappings are
-changed to match those in the audit event to class database file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-getasid\fR\fR
-.ad
-.sp .6
-.RS 4n
-Prints the audit session ID of the current process. For example:
-.sp
-.in +2
-.nf
-# auditconfig -getasid
-audit session id = 102336
-.fi
-.in -2
-.sp
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-getaudit\fR\fR
-.ad
-.sp .6
-.RS 4n
-Returns the audit characteristics of the current process.
-.sp
-.in +2
-.nf
-# auditconfig -getaudit
-audit id = abc(666)
-process preselection mask = lo(0x1000,0x1000)
-terminal id (maj,min,host) = 235,197121,elbow(172.146.89.77)
-audit session id = 102336
-.fi
-.in -2
-.sp
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-getauid\fR\fR
-.ad
-.sp .6
-.RS 4n
-Prints the audit ID of the current process. For example:
-.sp
-.in +2
-.nf
-# auditconfig -getauid
-audit id = abc(666)
-.fi
-.in -2
-.sp
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-getcar\fR\fR
-.ad
-.sp .6
-.RS 4n
-Prints current active root location (anchored from root [or local zone root] at
-system boot). For example:
-.sp
-.in +2
-.nf
-# auditconfig -getcar
-current active root = /
-.fi
-.in -2
-.sp
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-getclass\fR \fIevent\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display the preselection mask associated with the specified kernel audit event.
-\fIevent\fR is the kernel event number or event name.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-getcond\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display the kernel audit condition. The condition displayed is the literal
-string \fBauditing\fR meaning auditing is enabled and turned on (the kernel
-audit module is constructing and queuing audit records); \fBnoaudit\fR, meaning
-auditing is enabled but turned off (the kernel audit module is not constructing
-and queuing audit records); or \fBnospace\fR, meaning there is no space for
-saving audit records. See \fBauditon\fR(2) and \fBauditd\fR(1M) for further
-information.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-getcwd\fR\fR
-.ad
-.sp .6
-.RS 4n
-Prints current working directory (anchored from zone root at system boot). For
-example:
-.sp
-.in +2
-.nf
-# cd /usr/tmp
-# auditconfig -getcwd
-current working directory = /var/tmp
-.fi
-.in -2
-.sp
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-getestate\fR \fIevent\fR\fR
-.ad
-.sp .6
-.RS 4n
-For the specified event (string or event number), print out classes \fIevent\fR
-has been assigned. For example:
-.sp
-.in +2
-.nf
-# auditconfig -getestate 20
-audit class mask for event AUE_REBOOT(20) = 0x800
-# auditconfig -getestate AUE_RENAME
-audit class mask for event AUE_RENAME(42) = 0x30
-.fi
-.in -2
-.sp
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-getflags\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display the current active and configured user default audit flags. For
-example:
-.sp
-.in +2
-.nf
-# auditconfig -getflags
-active user default audit flags = no(0x0,0x0)
-configured user default audit flags = ex,lo(0x40001000,0x40001000)
-.fi
-.in -2
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-getkaudit\fR\fR
-.ad
-.sp .6
-.RS 4n
-Get audit characteristics of the current zone. For example:
-.sp
-.in +2
-.nf
-# auditconfig -getkaudit
-audit id = unknown(-2)
-process preselection mask = lo,na(0x1400,0x1400)
-terminal id (maj,min,host) = 0,0,(0.0.0.0)
-audit session id = 0
-.fi
-.in -2
-.sp
-
-If the audit policy \fBperzone\fR is not set, the terminal id is that of the
-global zone. Otherwise, it is the terminal id of the local zone.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-getkmask\fR\fR
-.ad
-.sp .6
-.RS 4n
-Get non-attributable pre-selection mask for the current zone. For example:
-.sp
-.in +2
-.nf
-# auditconfig -getkmask
-audit flags for non-attributable events = lo,na(0x1400,0x1400)
-.fi
-.in -2
-.sp
-
-If the audit policy \fBperzone\fR is not set, the kernel mask is that of the
-global zone. Otherwise, it is that of the local zone.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-getnaflags\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display the current active and configured non-attributable audit flags. For
-example:
-.sp
-.in +2
-.nf
-# auditconfig -getnaflags
-active non-attributable audit flags = no(0x0,0x0)
-configured non-attributable audit flags = lo(0x1000,0x1000)
-.fi
-.in -2
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-getpinfo\fR \fIpid\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display the audit ID, preselection mask, terminal ID, and audit session ID for
-the specified process.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-getplugin\fR [\fIplugin\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Display the currently installed plugins and their attributes. If \fIplugin\fR is
-specified, \fB-getplugin\fR only shows information for that \fIplugin\fR. For
-example:
-.sp
-.in +2
-.nf
-# auditconfig -getplugin
-Plugin: audit_binfile (active)
- Attributes: p_dir=/var/audit;p_fsize=0;p_minfree=0;
-
-Plugin: audit_syslog (inactive)
- Attributes: p_flags=;
-
-Plugin: audit_remote (inactive)
- Attributes: p_hosts=;p_retries=3;p_timeout=5;
-.fi
-.in -2
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-getpolicy\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display the kernel audit policy. The \fBahlt\fR and \fBperzone\fR policies
-reflect the settings from the global zone. If \fBperzone\fR is set, all other
-policies reflect the local zone's settings. If \fBperzone\fR is not set, the
-policies are machine-wide.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-getqbufsz\fR\fR
-.ad
-.sp .6
-.RS 4n
-Get audit queue write buffer size. For example:
-.sp
-.in +2
-.nf
-# auditconfig -getqbufsz
- audit queue buffer size (bytes) = 1024
-.fi
-.in -2
-.sp
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-getqctrl\fR\fR
-.ad
-.sp .6
-.RS 4n
-Get audit queue write buffer size, audit queue \fBhiwater\fR mark, audit queue
-\fBlowater\fR mark, audit queue \fBprod\fR interval (ticks).
-.sp
-.in +2
-.nf
-# auditconfig -getqctrl
-audit queue hiwater mark (records) = 100
-audit queue lowater mark (records) = 10
-audit queue buffer size (bytes) = 1024
-audit queue delay (ticks) = 20
-.fi
-.in -2
-.sp
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-getqdelay\fR\fR
-.ad
-.sp .6
-.RS 4n
-Get interval at which audit queue is prodded to start output. For example:
-.sp
-.in +2
-.nf
-# auditconfig -getqdelay
-audit queue delay (ticks) = 20
-.fi
-.in -2
-.sp
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-getqhiwater\fR\fR
-.ad
-.sp .6
-.RS 4n
-Get high water point in undelivered audit records when audit generation will
-block. For example:
-.sp
-.in +2
-.nf
-# auditconfig -getqhiwater
-audit queue hiwater mark (records) = 100
-.fi
-.in -2
-.sp
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-getqlowater\fR\fR
-.ad
-.sp .6
-.RS 4n
-Get low water point in undelivered audit records where blocked processes will
-resume. For example:
-.sp
-.in +2
-.nf
-# auditconfig -getqlowater
-audit queue lowater mark (records) = 10
-.fi
-.in -2
-.sp
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-getstat\fR\fR
-.ad
-.sp .6
-.RS 4n
-Print current audit statistics information. For example:
-.sp
-.in +2
-.nf
-# auditconfig -getstat
-gen nona kern aud ctl enq wrtn wblk rblk drop tot mem
-910 1 725 184 0 910 910 0 231 0 88 48
-.fi
-.in -2
-.sp
-
-See \fBauditstat\fR(1M) for a description of the headings in \fB-getstat\fR
-output.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-gettid\fR\fR
-.ad
-.sp .6
-.RS 4n
-Print audit terminal ID for current process. For example:
-.sp
-.in +2
-.nf
-# auditconfig -gettid
-terminal id (maj,min,host) = 235,197121,elbow(172.146.89.77)
-.fi
-.in -2
-.sp
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-lsevent\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display the currently configured (runtime) kernel and user level audit event
-information.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-lspolicy\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display the kernel audit policies with a description of each policy.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-setasid\fR \fIsession-ID\fR [\fIcmd\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Execute shell or \fIcmd\fR with specified \fIsession-ID\fR. For example:
-.sp
-.in +2
-.nf
-# auditconfig -setasid 2000 /bin/ksh
-#
-# auditconfig -getpinfo 104485
-audit id = abc(666)
-process preselection mask = lo(0x1000,0x1000)
-terminal id (maj,min,host) = 235,197121,elbow(172.146.89.77)
-audit session id = 2000
-.fi
-.in -2
-.sp
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-setaudit\fR \fIaudit-ID\fR \fIpreselect_flags\fR \fIterm-ID\fR
-\fIsession-ID\fR [\fIcmd\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Execute shell or \fIcmd\fR with the specified audit characteristics.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-setauid\fR \fIaudit-ID\fR [\fIcmd\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Execute shell or \fIcmd\fR with the specified \fIaudit-ID\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-setclass\fR \fIevent audit_flag\fR[\fI,audit_flag .\|.\|.\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Map the kernel event \fIevent\fR to the classes specified by \fIaudit_flags\fR.
-\fIevent\fR is an event number or name. An \fIaudit_flag\fR is a two character
-string representing an audit class. If \fBperzone\fR is not set, this option
-is valid only in the global zone.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-setflags\fR \fIaudit_flags\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets the user default audit flags. For example, to set execute and login
-auditing for all users:
-.sp
-.in +2
-.nf
-# auditconfig -setflags ex,lo
-user default audit flags = ex,lo(0x40001000,0x40001000)
-.fi
-.in -2
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-setkaudit\fR \fIIP-address_type\fR \fIIP_address\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set IP address of machine to specified values. \fIIP-address_type\fR is
-\fBipv6\fR or \fBipv4\fR.
-.sp
-If \fBperzone\fR is not set, this option is valid only in the global zone.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-setkmask\fR \fIaudit_flags\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set non-attributes selection flags of machine.
-.sp
-If \fBperzone\fR is not set, this option is valid only in the global zone.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-setnaflags\fR \fIaudit_flags\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets the non-attributable audit flags. For example:
-.sp
-.in +2
-.nf
-# auditconfig -setnaflags lo
-non-attributable audit flags = lo(0x1000,0x1000)
-.fi
-.in -2
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-setplugin\fR \fIname active\fR|\fIinactive\fR [\fIattributes\fR [\fIqsize\fR]]\fR
-.ad
-.sp .6
-.RS 4n
-Configures a plugin's attributes. For example:
-.sp
-.in +2
-.nf
-# auditconfig -setplugin audit_syslog active
-.fi
-.in -2
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-setpmask\fR \fIpid flags\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set the preselection mask of the specified process.
-.sp
-If \fBperzone\fR is not set, this option is valid only in the global zone.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-setpolicy\fR
-[\fI+\fR|\fI-\fR]\fIpolicy_flag\fR[\fI,policy_flag ...\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Set the kernel audit policy. A policy \fIpolicy_flag\fR is literal strings that
-denotes an audit policy. A prefix of \fB+\fR adds the policies specified to the
-current audit policies. A prefix of \fB-\fR removes the policies specified from
-the current audit policies. No policies can be set from a local zone unless the
-\fBperzone\fR policy is first set from the global zone. The following are the
-valid policy flag strings (\fBauditconfig\fR \fB-lspolicy\fR also lists the
-current valid audit policy flag strings):
-.sp
-.ne 2
-.na
-\fB\fBall\fR\fR
-.ad
-.RS 16n
-Include all policies that apply to the current zone.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBahlt\fR\fR
-.ad
-.RS 16n
-Panic is called and the system dumps core if an asynchronous audit event occurs
-that cannot be delivered because the audit queue has reached the high-water
-mark or because there are insufficient resources to construct an audit record.
-By default, records are dropped and a count is kept of the number of dropped
-records.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBarge\fR\fR
-.ad
-.RS 16n
-Include the \fBexecv\fR(2) system call environment arguments to the audit
-record. This information is not included by default.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBargv\fR\fR
-.ad
-.RS 16n
-Include the \fBexecv\fR(2) system call parameter arguments to the audit record.
-This information is not included by default.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcnt\fR\fR
-.ad
-.RS 16n
-Do not suspend processes when audit resources are exhausted. Instead, drop
-audit records and keep a count of the number of records dropped. By default,
-process are suspended until audit resources become available.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBgroup\fR\fR
-.ad
-.RS 16n
-Include the supplementary group token in audit records. By default, the group
-token is not included.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnone\fR\fR
-.ad
-.RS 16n
-Include no policies. If used in other than the global zone, the \fBahlt\fR and
-\fBperzone\fR policies are not changed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpath\fR\fR
-.ad
-.RS 16n
-Add secondary path tokens to audit record. These are typically the pathnames of
-dynamically linked shared libraries or command interpreters for shell scripts.
-By default, they are not included.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBperzone\fR\fR
-.ad
-.RS 16n
-Maintain separate configuration, queues, and logs for each zone and execute a
-separate version of \fBauditd\fR(1M) for each zone.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpublic\fR\fR
-.ad
-.RS 16n
-Audit public files. By default, read-type operations are not audited for
-certain files which meet \fBpublic\fR characteristics: owned by root, readable
-by all, and not writable by all.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBtrail\fR\fR
-.ad
-.RS 16n
-Include the trailer token in every audit record. By default, the trailer token
-is not included.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBseq\fR\fR
-.ad
-.RS 16n
-Include the sequence token as part of every audit record. By default, the
-sequence token is not included. The sequence token attaches a sequence number
-to every audit record.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBwindata_down\fR\fR
-.ad
-.RS 16n
-Include in an audit record any downgraded data moved between windows. This
-policy is available only if the system is configured with Trusted Extensions.
-By default, this information is not included.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBwindata_up\fR\fR
-.ad
-.RS 16n
-Include in an audit record any upgraded data moved between windows. This policy
-is available only if the system is configured with Trusted Extensions. By
-default, this information is not included.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBzonename\fR\fR
-.ad
-.RS 16n
-Include the \fBzonename\fR token as part of every audit record. By default, the
-\fBzonename\fR token is not included. The \fBzonename\fR token gives the name
-of the zone from which the audit record was generated.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-setqbufsz\fR \fIbuffer_size\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set the audit queue write buffer size (bytes).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-setqctrl\fR \fIhiwater\fR \fIlowater\fR \fIbufsz\fR \fIinterval\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set the audit queue write buffer size (bytes), hiwater audit record count,
-lowater audit record count, and wakeup interval (ticks). Valid within a local
-zone only if \fBperzone\fR is set.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-setqdelay\fR \fIinterval\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set the audit queue wakeup interval (ticks). This determines the interval at
-which the kernel pokes the audit queue, to write audit records to the audit
-trail. Valid within a local zone only if \fBperzone\fR is set.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-setqhiwater\fR \fIhiwater\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set the number of undelivered audit records in the audit queue at which audit
-record generation blocks. Valid within a local zone only if \fBperzone\fR is
-set.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-setqlowater\fR \fIlowater\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set the number of undelivered audit records in the audit queue at which blocked
-auditing processes unblock. Valid within a local zone only if \fBperzone\fR is
-set.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-setsmask\fR \fIasid flags\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set the preselection mask of all processes with the specified audit session ID.
-Valid within a local zone only if \fBperzone\fR is set.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-setstat\fR\fR
-.ad
-.sp .6
-.RS 4n
-Reset audit statistics counters. Valid within a local zone only if
-\fBperzone\fR is set.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-setumask\fR \fIauid flags\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set the preselection mask of all processes with the specified audit ID. Valid
-within a local zone only if \fBperzone\fR is set.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRUsing \fBauditconfig\fR
-.sp
-.LP
-The following is an example of an \fBauditconfig\fR program:
-
-.sp
-.in +2
-.nf
-#
-# map kernel audit event number 10 to the "fr" audit class
-#
-% auditconfig -setclass 10 fr
-
-#
-# turn on inclusion of exec arguments in exec audit records
-#
-% auditconfig -setpolicy +argv
-.fi
-.in -2
-.sp
-
-.SH EXIT STATUS
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 5n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB1\fR\fR
-.ad
-.RS 5n
-An error occurred.
-.RE
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/etc/security/audit_event\fR\fR
-.ad
-.RS 29n
-Stores event definitions used in the audit system.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/security/audit_class\fR\fR
-.ad
-.RS 29n
-Stores class definitions used in the audit system.
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Committed
-.TE
-
-.SH SEE ALSO
-.LP
-\fBaudit\fR(1M), \fBauditd\fR(1M), \fBauditstat\fR(1M),
-\fBpraudit\fR(1M), \fBauditon\fR(2), \fBexecv\fR(2), \fBaudit_class\fR(4),
-\fBaudit_event\fR(4), \fBattributes\fR(5),
-\fBaudit_binfile\fR(5), \fBaudit_remote\fR(5), \fBaudit_syslog\fR(5)
-.SH NOTES
-.LP
-If the \fBaudit_remote\fR or \fBaudit_syslog\fR plugins are active, the
-behavior of the system with respect to the \fB-setpolicy\fR \fB+cnt\fR and the
-\fB-setqhiwater\fR options is modified slightly. If \fB-setpolicy\fR \fB+cnt\fR
-is set, data will continue to be sent to the selected plugin, even though
-output to the binary audit log is stopped, pending the freeing of disk space.
-If \fB-setpolicy\fR \fB-cnt\fR is used, the blocking behavior is as described
-under OPTIONS, above. The value set for the queue high water mark is used
-within \fBauditd\fR as the default value for its queue limits unless overridden
-by means of the \fBqsize\fR attribute.
-.sp
-.LP
-The \fBauditconfig\fR options that modify or display process-based information
-are not affected by the \fBperzone\fR policy. Those that modify system audit
-data such as the terminal id and audit queue parameters are valid only in the
-global zone, unless the \fBperzone\fR policy is set. The display of a system
-audit reflects the local zone if \fBperzone\fR is set. Otherwise, it reflects
-the settings of the global zone.
-.sp
-.LP
-The \fB-setcond\fR option has been removed. Use \fBaudit\fR(1M) to enable or
-disable auditing.
-.sp
-.LP
-The \fB-getfsize\fR and \fB-setfsize\fR options have been removed. Use
-\fBaudit_binfile\fR(5) \fBp_fsize\fR to set the audit file size.
diff --git a/usr/src/man/man1m/auditd.1m b/usr/src/man/man1m/auditd.1m
deleted file mode 100644
index 7778cdb297..0000000000
--- a/usr/src/man/man1m/auditd.1m
+++ /dev/null
@@ -1,186 +0,0 @@
-'\" te
-.\" Copyright (c) 2017 Peter Tribble
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH AUDITD 1M "Mar 6, 2017"
-.SH NAME
-auditd \- audit daemon
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/auditd\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-The audit daemon, \fBauditd\fR, controls the generation and location of audit
-trail files and the generation of syslog messages based on its configuration,
-stored in \fBsmf\fR(5) and managed using the \fBauditconfig\fR(1M) command.
-.sp
-.LP
-\fBaudit\fR(1M) is used to control \fBauditd\fR. It can cause \fBauditd\fR to:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-close the current audit file and open a new one;
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-close the current audit file, reread its configuration and
-open a new audit file;
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-close the audit trail and terminate auditing.
-.RE
-.SS "Auditing Conditions"
-.LP
-The audit daemon invokes the program \fBaudit_warn\fR(1M) under the following
-conditions with the indicated options:
-.sp
-.ne 2
-.na
-\fB\fBaudit_warn soft\fR \fIpathname\fR\fR
-.ad
-.sp .6
-.RS 4n
-The file system upon which \fIpathname\fR resides has exceeded the minimum free
-space limit defined by the \fBp_minfree\fR attribute of the \fBaudit_binfile\fR
-plugin. A new audit trail has been opened on another file system.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBaudit_warn allsoft\fR\fR
-.ad
-.sp .6
-.RS 4n
-All available file systems have been filled beyond the minimum free space
-limit. A new audit trail has been opened anyway.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBaudit_warn hard\fR \fIpathname\fR\fR
-.ad
-.sp .6
-.RS 4n
-The file system upon which \fIpathname\fR resides has filled or for some reason
-become unavailable. A new audit trail has been opened on another file system.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBaudit_warn allhard\fR \fIcount\fR\fR
-.ad
-.sp .6
-.RS 4n
-All available file systems have been filled or for some reason become
-unavailable. The audit daemon will repeat this call to \fBaudit_warn\fR at
-intervals of at least twenty seconds until space becomes available. \fIcount\fR
-is the number of times that \fBaudit_warn\fR has been called since the problem
-arose.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBaudit_warn tmpfile\fR\fR
-.ad
-.sp .6
-.RS 4n
-There was a problem creating a symlink from \fB/var/run/.audit.log\fR to the
-current audit log file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBaudit_warn nostart\fR\fR
-.ad
-.sp .6
-.RS 4n
-There was an internal error starting auditing.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBaudit_warn auditoff\fR\fR
-.ad
-.sp .6
-.RS 4n
-The internal system audit condition has been changed to not be
-\fBAUC_AUDITING\fR by someone other than the audit daemon. This causes the
-audit daemon to exit.
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Committed
-.TE
-
-.SH SEE ALSO
-.LP
-\fBaudit\fR(1M), \fBauditconfig\fR(1M), \fBaudit_binfile\fR(5),
-\fBaudit_warn\fR(1M), \fBpraudit\fR(1M), \fBauditon\fR(2), \fBaudit.log\fR(4),
-\fBattributes\fR(5)
-.SH NOTES
-.LP
-If the audit policy \fBperzone\fR is set, \fBauditd\fR runs in each zone,
-starting automatically when the local zone boots. If a zone is running when the
-\fBperzone\fR policy is set, auditing must be started manually in local zones.
-It is not necessary to reboot the system or the local zone to start auditing in
-a local zone. \fBauditd\fR can be started with "\fB/usr/sbin/audit\fR \fB-s\fR"
-and will start automatically with future boots of the zone.
-.sp
-.LP
-When \fBauditd\fR runs in a local zone, the configuration is taken from the
-local zone's \fB/etc/security\fR directory's files:
-\fBaudit_class\fR, and \fBaudit_event\fR.
-.sp
-.LP
-Configuration changes do not affect audit sessions that are currently running,
-as the changes do not modify a process's preselection mask. To change the
-preselection mask on a running process, use the \fB-setpmask\fR option of the
-\fBauditconfig\fR command (see \fBauditconfig\fR(1M)). If the user logs out and
-logs back in, the new configuration changes will be reflected in the next audit
-session.
-.sp
-.LP
-The \fBauditd\fR service is managed by the service management facility,
-\fBsmf\fR(5), under the service identifier:
-.sp
-.in +2
-.nf
-svc:/system/auditd
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The service's status can be queried using the \fBsvcs\fR(1) command. While
-administrative actions on this service, such as enabling, disabling, or
-requesting restart, can be performed using \fBsvcadm\fR(1M), the \fBaudit\fR(1M)
-command is the preferred administrative interface.
diff --git a/usr/src/man/man1m/auditrecord.1m b/usr/src/man/man1m/auditrecord.1m
deleted file mode 100644
index ffc3514bc7..0000000000
--- a/usr/src/man/man1m/auditrecord.1m
+++ /dev/null
@@ -1,330 +0,0 @@
-'\" te
-.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH AUDITRECORD 1M "Mar 6, 2017"
-.SH NAME
-auditrecord \- display audit record formats
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/auditrecord\fR [\fB-d\fR] [ [\fB-a\fR] | [\fB-e\fR \fIstring\fR] | [\fB-c\fR \fIclass\fR] |
- [\fB-i\fR \fIid\fR] | [\fB-p\fR \fIprogramname\fR] | [\fB-s\fR \fIsystemcall\fR] | [\fB-h\fR]]
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBauditrecord\fR utility displays the event ID, audit class and selection
-mask, and record format for audit record event types defined in
-\fBaudit_event\fR(4). You can use \fBauditrecord\fR to generate a list of all
-audit record formats, or to select audit record formats based on event class,
-event name, generating program name, system call name, or event ID.
-.sp
-.LP
-There are two output formats. The default format is intended for display in a
-terminal window; the optional HTML format is intended for viewing with a web
-browser.
-.sp
-.LP
-Tokens contained in square brackets ( \fB[ ]\fR ) are optional and might not be
-present in every record.
-.SH OPTIONS
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-a\fR\fR
-.ad
-.sp .6
-.RS 4n
-List all audit records.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-c\fR \fIclass\fR\fR
-.ad
-.sp .6
-.RS 4n
-List all audit records selected by \fIclass\fR. \fIclass\fR is one of the
-two-character class codes from the file \fB/etc/security/audit_class\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-d\fR\fR
-.ad
-.sp .6
-.RS 4n
-Debug mode. Display number of audit records that are defined in
-\fBaudit_event\fR, the number of classes defined in \fBaudit_class\fR, any
-mismatches between the two files, and report which defined events do not have
-format information available to \fBauditrecord\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-e\fR \fIstring\fR\fR
-.ad
-.sp .6
-.RS 4n
-List all audit records for which the event ID label contains the string
-\fIstring\fR. The match is case insensitive.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-h\fR\fR
-.ad
-.sp .6
-.RS 4n
-Generate the output in HTML format.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-i\fR \fIid\fR\fR
-.ad
-.sp .6
-.RS 4n
-List the audit records having the numeric event ID \fIid\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR \fIprogramname\fR\fR
-.ad
-.sp .6
-.RS 4n
-List all audit records generated by the program \fIprogramname\fR, for example,
-audit records generated by a user-space program.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR \fIsystemcall\fR\fR
-.ad
-.sp .6
-.RS 4n
-List all audit records generated by the system call \fIsystemcall\fR, for
-example, audit records generated by a system call.
-.RE
-
-.sp
-.LP
-The \fB-p\fR and \fB-s\fR options are different names for the same thing and
-are mutually exclusive. The \fB-a\fR option is ignored if any of \fB-c\fR,
-\fB-e\fR, \fB-i\fR, \fB-p\fR, or \fB-s\fR are given. Combinations of \fB-c\fR,
-\fB-e\fR, \fB-i\fR, and either \fB-p\fR or \fB-s\fR are ANDed together.
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRDisplaying an Audit Record with a Specified Event ID
-.sp
-.LP
-The following example shows how to display the contents of a specified audit
-record.
-
-.sp
-.in +2
-.nf
-% auditrecord -i 6152
- terminal login
- program /usr/sbin/login see login(1)
- /usr/dt/bin/dtlogin See dtlogin
- event ID 6152 AUE_login
- class lo (0x00001000)
- header
- subject
- [text] error message
- return
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRDisplaying an Audit Record with an Event ID Label that Contains
-a Specified String
-.sp
-.LP
-The following example shows how to display the contents of a audit record with
-an event ID label that contains the string \fBlogin\fR.
-
-.sp
-.in +2
-.nf
-# auditrecord -e login
-terminal login
- program /usr/sbin/login see login(1)
- /usr/dt/bin/dtlogin See dtlogin
- event ID 6152 AUE_login
- class lo (0x00001000)
- header
- subject
- [text] error message
- return
-
-rlogin
- program /usr/sbin/login see login(1) - rlogin
- event ID 6155 AUE_rlogin
- class lo (0x00001000)
- header
- subject
- [text] error message
- return
-.fi
-.in -2
-.sp
-
-.SH EXIT STATUS
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.sp .6
-.RS 4n
-Successful operation
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnon-zero\fR\fR
-.ad
-.sp .6
-.RS 4n
-Error
-.RE
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/etc/security/audit_class\fR\fR
-.ad
-.sp .6
-.RS 4n
-Provides the list of valid classes and the associated audit mask.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/security/audit_event\fR\fR
-.ad
-.sp .6
-.RS 4n
-Provides the numeric event ID, the literal event name, and the name of the
-associated system call or program.
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-CSI Enabled
-_
-Interface Stability Obsolete Uncommitted
-.TE
-
-.SH SEE ALSO
-.LP
-\fBauditconfig\fR(1M), \fBpraudit\fR(1M), \fBaudit.log\fR(4),
-\fBaudit_class\fR(4), \fBaudit_event\fR(4), \fBattributes\fR(5)
-.SH DIAGNOSTICS
-.LP
-If unable to read either of its input files or to write its output file,
-\fBauditrecord\fR shows the name of the file on which it failed and exits with
-a non-zero return.
-.sp
-.LP
-If no options are provided, if an invalid option is provided, or if both
-\fB-s\fR and \fB-p\fR are provided, an error message is displayed and
-\fBauditrecord\fR displays a usage message then exits with a non-zero return.
-.SH NOTES
-.LP
-This command is Obsolete and may be removed and replaced with equivalent
-functionality in the future. This command was formerly known as \fBbsmrecord\fR.
-.sp
-.LP
-If \fB/etc/security/audit_event\fR has been modified to add user-defined audit
-events, \fBauditrecord\fR displays the record format as \fBundefined\fR.
-.sp
-.LP
-The audit records displayed by \fBauditrecord\fR are the core of the record that
-can be produced. Various audit policies and optional tokens, such as those
-shown below, might also be present.
-.sp
-.LP
-The following is a list of \fBpraudit\fR(1M) token names with their
-descriptions.
-.sp
-.ne 2
-.na
-\fB\fBgroup\fR\fR
-.ad
-.sp .6
-.RS 4n
-Present if the \fBgroup\fR audit policy is set.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsensitivity label\fR\fR
-.ad
-.sp .6
-.RS 4n
-Present when Trusted Extensions is enabled and represents the label of the
-subject or object with which it is associated. The \fBmandatory_label\fR token
-is noted in the basic audit record where a label is explicitly part of the
-record.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsequence\fR\fR
-.ad
-.sp .6
-.RS 4n
-Present when the \fBseq\fR audit policy is set.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBtrailer\fR\fR
-.ad
-.sp .6
-.RS 4n
-Present when the \fBtrail\fR audit policy is set.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBzone\fR\fR
-.ad
-.sp .6
-.RS 4n
-The name of the zone generating the record when the \fBzonename\fR audit policy
-is set. The \fBzonename\fR token is noted in the basic audit record where a
-zone name is explicitly part of the record.
-.RE
-
diff --git a/usr/src/man/man1m/auditreduce.1m b/usr/src/man/man1m/auditreduce.1m
deleted file mode 100644
index 0261a07778..0000000000
--- a/usr/src/man/man1m/auditreduce.1m
+++ /dev/null
@@ -1,911 +0,0 @@
-'\" te
-.\" Copyright (c) 2006 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH AUDITREDUCE 1M "Mar 6, 2017"
-.SH NAME
-auditreduce \- merge and select audit records from audit trail files
-.SH SYNOPSIS
-.LP
-.nf
-\fBauditreduce\fR [\fIoptions\fR] [\fIaudit-trail-file\fR]...
-.fi
-
-.SH DESCRIPTION
-.LP
-\fBauditreduce\fR allows you to select or merge records from audit trail files.
-Audit files can be from one or more machines.
-.sp
-.LP
-The merge function merges together audit records from one or more input audit
-trail files into a single output file. The records in an audit trail file are
-assumed to be sorted in chronological order (oldest first) and this order is
-maintained by \fBauditreduce\fR in the output file.
-.sp
-.LP
-Unless instructed otherwise, \fBauditreduce\fR will merge the entire audit
-trail, which consists of all the audit trail files in the directory structure
-\fIaudit_root_dir\fR/*/files. Unless specified with the -\fBR\fR or -\fBS\fR
-option, \fIaudit_root_dir\fR defaults to \fB/etc/security/audit\fR. By using
-the file selection options it is possible to select some subset of these files,
-or files from another directory, or files named explicitly on the command line.
-.sp
-.LP
-The select function allows audit records to be selected on the basis of
-numerous criteria relating to the record's content (see \fBaudit.log\fR(4) for
-details of record content). A record must meet all of the
-\fIrecord-selection-option\fR criteria to be selected.
-.SS "Audit Trail Filename Format"
-.LP
-Any audit trail file not named on the command line must conform to the audit
-trail filename format. Files produced by the audit system already have this
-format. Output file names produced by \fBauditreduce\fR are in this format. It
-is:
-.sp
-.in +2
-.nf
-\fIstart-time\fR\fB\&.\fR\fI\|end-time\fR\fB\&.\fR\fI\|suffix\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-where \fIstart-time\fR is the 14-character timestamp of when the file was
-opened, \fIend-time\fR is the 14-character timestamp of when the file was
-closed, and \fIsuffix\fR is the name of the machine which generated the audit
-trail file, or some other meaningful suffix (for example, \fBall\fR, if the
-file contains a combined group of records from many machines). The
-\fIend-time\fR can be the literal string \fBnot_terminated\fR, to indicate that
-the file is still being written to by the audit system. Timestamps are of the
-form \fIyyyymmddhhmmss\fR (year, month, day, hour, minute, second). The
-timestamps are in Greenwich Mean Time (GMT).
-.SH OPTIONS
-.SS "File Selection Options"
-.LP
-The file selection options indicate which files are to be processed and certain
-types of special treatment.
-.sp
-.ne 2
-.na
-\fB\fB-A\fR\fR
-.ad
-.sp .6
-.RS 4n
-All of the records from the input files will be selected regardless of their
-timestamp. This option effectively disables the \fB-a\fR, \fB-b\fR, and
-\fB-d\fR options. This is useful in preventing the loss of records if the
-\fB-D\fR option is used to delete the input files after they are processed.
-Note, however, that if a record is \fInot\fR selected due to another option,
-then \fB-A\fR will not override that.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-C\fR\fR
-.ad
-.sp .6
-.RS 4n
-Only process complete files. Files whose filename \fIend-time\fR timestamp is
-\fBnot_terminated\fR are not processed (such a file is currently being written
-to by the audit system). This is useful in preventing the loss of records if
-\fB-D\fR is used to delete the input files after they are processed. It does
-not apply to files specified on the command line.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-D\fR \fIsuffix\fR\fR
-.ad
-.sp .6
-.RS 4n
-Delete input files after they are read if the entire run is successful. If
-\fBauditreduce\fR detects an error while reading a file, then that file is not
-deleted. If \fB-D\fR is specified, \fB-A\fR, \fB-C\fR and \fB-O\fR are also
-implied. \fIsuffix\fR is given to the \fB-O\fR option. This helps prevent the
-loss of audit records by ensuring that all of the records are written, only
-complete files are processed, and the records are written to a file before
-being deleted. Note that if both \fB-D\fR and \fB-O\fR are specified in the
-command line, the order of specification is significant. The \fIsuffix\fR
-associated with the latter specification is in effect.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-M\fR \fImachine\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allows selection of records from files with \fImachine\fR as the filename
-suffix. If \fB-M\fR is not specified, all files are processed regardless of
-suffix. \fB-M\fR can also be used to allow selection of records from files that
-contain combined records from many machines and have a common suffix (such as
-\fBall\fR).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-N\fR\fR
-.ad
-.sp .6
-.RS 4n
-Select objects in \fBnew mode\fR.This flag is off by default, thus retaining
-backward compatibility. In the existing, \fBold mode\fR, specifying the
-\fB-e\fR, \fB-f\fR, \fB-g\fR, \fB-r\fR, or \fB-u\fR flags would select not only
-actions taken with those \fBID\fRs, but also certain objects owned by those
-\fBID\fRs. When running in \fBnew mode\fR, only actions are selected. In order
-to select objects, the \fB-o\fR option must be used.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-O\fR \fIsuffix\fR\fR
-.ad
-.sp .6
-.RS 4n
-Direct output stream to a file in the current \fBaudit_root_dir\fR with the
-indicated suffix. \fIsuffix\fR can alternatively contain a full pathname, in
-which case the last component is taken as the suffix, ahead of which the
-timestamps will be placed, ahead of which the remainder of the pathname will be
-placed. If the \fB-O\fR option is not specified, the output is sent to the
-standard output. When \fBauditreduce\fR places timestamps in the filename, it
-uses the times of the first and last records in the merge as the
-\fIstart-time\fR and \fIend-time\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-Q\fR\fR
-.ad
-.sp .6
-.RS 4n
-Quiet. Suppress notification about errors with input files.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-R\fR \fIpathname\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify the pathname of an alternate audit root directory \fIaudit_root_dir\fR
-to be \fIpathname\fR. Therefore, rather than using
-\fB/etc/security/audit\fR/*/files by default, \fIpathname\fR/*/files will be
-examined instead.
-.LP
-Note -
-.sp
-.RS 2
-The root file system of any non-global zones must not be referenced with the
-\fB-R\fR option. Doing so might damage the global zone's file system, might
-compromise the security of the global zone, and might damage the non-global
-zone's file system. See \fBzones\fR(5).
-.RE
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-S\fR \fIserver\fR\fR
-.ad
-.sp .6
-.RS 4n
-This option causes \fBauditreduce\fR to read audit trail files from a specific
-location (server directory). \fIserver\fR is normally interpreted as the name
-of a subdirectory of the audit root, therefore \fBauditreduce\fR will look in
-\fIaudit_root_dir\fR/\fIserver\fR/files for the audit trail files. But if
-\fIserver\fR contains any `\fB/\fR' characters, it is the name of a specific
-directory not necessarily contained in the audit root. In this case,
-\fIserver\fR/files will be consulted. This option allows archived files to be
-manipulated easily, without requiring that they be physically located in a
-directory structure like that of \fB/etc/security/audit\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-V\fR\fR
-.ad
-.sp .6
-.RS 4n
-Verbose. Display the name of each file as it is opened, and how many records
-total were written to the output stream.
-.RE
-
-.SS "Record Selection Options"
-.LP
-The record selection options listed below are used to indicate which records
-are written to the output file produced by \fBauditreduce\fR.
-.sp
-.LP
-Multiple arguments of the same type are not permitted.
-.sp
-.ne 2
-.na
-\fB\fB-a\fR \fIdate-time\fR\fR
-.ad
-.sp .6
-.RS 4n
-Select records that occurred at or after \fIdate-time\fR. The \fIdate-time\fR
-argument is described under \fBOption Arguments\fR, below. \fIdate-time\fR is
-in local time. The \fB-a\fR and \fB-b\fR options can be used together to form a
-range.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-b\fR \fIdate-time\fR\fR
-.ad
-.sp .6
-.RS 4n
-Select records that occurred before \fIdate-time\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-c\fR \fIaudit-classes\fR\fR
-.ad
-.sp .6
-.RS 4n
-Select records by audit class. Records with events that are mapped to the audit
-classes specified by \fIaudit-classes\fR are selected. Audit class names are
-defined in \fBaudit_class\fR(4). Using the \fBaudit\fR \fIflags,\fR one can
-select records based upon success and failure criteria.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-d\fR \fIdate-time\fR\fR
-.ad
-.sp .6
-.RS 4n
-Select records that occurred on a specific day (a 24-hour period beginning at
-00:00:00 of the day specified and ending at 23:59:59). The day specified is in
-local time. The time portion of the argument, if supplied, is ignored. Any
-records with timestamps during that day are selected. If any hours, minutes, or
-seconds are given in \fItime,\fR they are ignored. \fB-d\fR can not be used
-with \fB-a\fR or \fB\fR\fB-b\fR\fB\&.\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-e\fR \fIeffective-user\fR\fR
-.ad
-.sp .6
-.RS 4n
-Select records with the specified \fIeffective-user.\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR \fIeffective-group\fR\fR
-.ad
-.sp .6
-.RS 4n
-Select records with the specified \fIeffective-group.\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-g\fR \fIreal-group\fR\fR
-.ad
-.sp .6
-.RS 4n
-Select records with the specified \fIreal-group.\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-j\fR \fIsubject-ID\fR\fR
-.ad
-.sp .6
-.RS 4n
-Select records with the specified \fIsubject-ID\fR where \fIsubject-ID\fR is a
-process ID.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR \fIlabel\fR\fR
-.ad
-.sp .6
-.RS 4n
-Select records with the specified label (or label range), as explained under
-"Option Arguments," below. This option is available only if the system is
-configured with Trusted Extensions.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-m\fR \fIevent\fR\fR
-.ad
-.sp .6
-.RS 4n
-Select records with the indicated \fIevent\fR. The \fIevent\fR is the literal
-string or the \fIevent\fR number.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-o\fR \fIobject_type=objectID_value\fR\fR
-.ad
-.sp .6
-.RS 4n
-Select records by object type. A match occurs when the record contains the
-information describing the specified \fIobject_type\fR and the object ID equals
-the value specified by \fIobjectID_value.\fR The allowable object types and
-values are as follows:
-.sp
-.ne 2
-.na
-\fBfile=\fIpathname\fR\fR
-.ad
-.sp .6
-.RS 4n
-Select records containing file system objects with the specified pathname,
-where pathname is a comma separated list of regular expressions. If a regular
-expression is preceded by a tilde (\fB~\fR), files matching the expression are
-excluded from the output. For example, the option
-\fBfile=~/usr/openwin,/usr,/etc\fR would select all files in \fB/usr\fR or
-\fB/etc\fR except those in \fB/usr/openwin\fR. The order of the regular
-expressions is important because auditreduce processes them from left to right,
-and stops when a file is known to be either selected or excluded. Thus the
-option \fBfile=\fR \fB/usr\fR, \fB/etc\fR, \fB~/usr/openwin\fR would select all
-files in \fB/usr\fR and all files in \fB/etc\fR. Files in \fB/usr/openwin\fR
-are not excluded because the regular expression \fB/usr\fR is matched first.
-Care should be given in surrounding the \fIpathname\fR with quotes so as to
-prevent the shell from expanding any tildes.
-.RE
-
-.sp
-.ne 2
-.na
-\fBfilegroup\fI=group\fR\fR
-.ad
-.sp .6
-.RS 4n
-Select records containing file system objects with \fIgroup\fR as the owning
-group.
-.RE
-
-.sp
-.ne 2
-.na
-\fBfileowner=\fIuser\fR\fR
-.ad
-.sp .6
-.RS 4n
-Select records containing file system objects with \fIuser\fR as the owning
-user.
-.RE
-
-.sp
-.ne 2
-.na
-\fBmsgqid=\fIID\fR\fR
-.ad
-.sp .6
-.RS 4n
-Select records containing message queue objects with the specified \fIID\fR
-where \fIID\fR is a message queue \fBID\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBmsgqgroup=\fIgroup\fR\fR
-.ad
-.sp .6
-.RS 4n
-Select records containing message queue objects with \fIgroup\fR as the owning
-or creating group.
-.RE
-
-.sp
-.ne 2
-.na
-\fBmsgqowner=\fIuser\fR\fR
-.ad
-.sp .6
-.RS 4n
-Select records containing message queue objects with \fIuser\fR as the owning
-or creating user.
-.RE
-
-.sp
-.ne 2
-.na
-\fBpid=\fIID\fR\fR
-.ad
-.sp .6
-.RS 4n
-Select records containing process objects with the specified \fIID\fR where
-\fIID\fR is a process \fBID\fR. Process are objects when they are receivers of
-signals.
-.RE
-
-.sp
-.ne 2
-.na
-\fBprocgroup=\fIgroup\fR\fR
-.ad
-.sp .6
-.RS 4n
-Select records containing process objects with \fIgroup\fR as the real or
-effective group.
-.RE
-
-.sp
-.ne 2
-.na
-\fBprocowner=\fIuser\fR\fR
-.ad
-.sp .6
-.RS 4n
-Select records containing process objects with \fIuser\fR as the real or
-effective user.
-.RE
-
-.sp
-.ne 2
-.na
-\fBsemid=\fIID\fR\fR
-.ad
-.sp .6
-.RS 4n
-Select records containing semaphore objects with the specified \fIID\fR where
-\fIID\fR is a semaphore \fBID\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBsemgroup=\fIgroup\fR\fR
-.ad
-.sp .6
-.RS 4n
-Select records containing semaphore objects with \fIgroup\fR as the owning or
-creating group.
-.RE
-
-.sp
-.ne 2
-.na
-\fBsemowner=\fIuser\fR\fR
-.ad
-.sp .6
-.RS 4n
-Select records containing semaphore objects with \fIuser\fR as the owning or
-creating user.
-.RE
-
-.sp
-.ne 2
-.na
-\fBshmid=\fIID\fR\fR
-.ad
-.sp .6
-.RS 4n
-Select records containing shared memory objects with the specified \fIID\fR
-where \fIID\fR is a shared memory \fBID\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBshmgroup=\fIgroup\fR\fR
-.ad
-.sp .6
-.RS 4n
-Select records containing shared memory objects with \fIgroup\fR as the owning
-or creating group.
-.RE
-
-.sp
-.ne 2
-.na
-\fBshmowner=\fIuser\fR\fR
-.ad
-.sp .6
-.RS 4n
-Select records containing shared memory objects with \fIuser\fR as the owning
-or creating user.
-.RE
-
-.sp
-.ne 2
-.na
-\fBsock=\fIport_number|machine\fR\fR
-.ad
-.sp .6
-.RS 4n
-Select records containing socket objects with the specified \fIport_number\fR
-or the specified \fImachine\fR where \fImachine\fR is a machine name as defined
-in \fBhosts\fR(4).
-.RE
-
-.sp
-.ne 2
-.na
-\fBfmri=\fIservice instance\fR\fR
-.ad
-.sp .6
-.RS 4n
-Select records containing fault management resource identifier (FMRI) objects
-with the specified \fIservice instance\fR. See \fBsmf\fR(5).
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-r\fR \fIreal-user\fR\fR
-.ad
-.sp .6
-.RS 4n
-Select records with the specified \fIreal-user\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR \fIsession-id\fR\fR
-.ad
-.sp .6
-.RS 4n
-Select audit records with the specified \fIsession-id\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-u\fR \fIaudit-user\fR\fR
-.ad
-.sp .6
-.RS 4n
-Select records with the specified \fIaudit-user\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-z\fR \fIzone-name\fR\fR
-.ad
-.sp .6
-.RS 4n
-Select records from the specified zone name. The zone name selection is
-case-sensitive.
-.RE
-
-.sp
-.LP
-When one or more \fIfilename\fR arguments appear on the command line, only the
-named files are processed. Files specified in this way need not conform to the
-audit trail filename format. However, \fB-M\fR, \fB-S\fR, and \fB-R\fR must not
-be used when processing named files. If the \fIfilename\fR is ``\(mi'' then the
-input is taken from the standard input.
-.SS "Option Arguments"
-.ne 2
-.na
-\fB\fIaudit-trail-file\fR\fR
-.ad
-.sp .6
-.RS 4n
-An audit trail file as defined in \fBaudit.log\fR(4). An audit trail file not
-named on the command line must conform to the audit trail file name format.
-Audit trail files produced as output of \fBauditreduce\fR are in this format as
-well. The format is:
-.sp
-\fIstart-time . \|end-time . \|suffix\fR
-.sp
-\fIstart-time\fR is the 14 character time stamp denoting when the file was
-opened. \fIend-time\fR is the 14 character time stamp denoting when the file
-was closed. \fIend-time\fR can also be the literal string \fBnot_terminated\fR,
-indicating the file is still be written to by the audit daemon or the file was
-not closed properly (a system crash or abrupt halt occurred). \fIsuffix\fR is
-the name of the machine that generated the audit trail file (or some other
-meaningful suffix; for example, \fBall\fR would be a good suffix if the audit
-trail file contains a combined group of records from many machines).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIdate-time\fR\fR
-.ad
-.sp .6
-.RS 4n
-The \fIdate-time\fR argument to \fB-a\fR, \fB-b\fR, and \fB-d\fR can be of two
-forms: An absolute \fIdate-time\fR takes the form:
-.sp
-\fI\fR yyyymmdd [ \fIhh\fR [ \fImm\fR [ \fIss\fR ]]]
-.sp
-where \fIyyyy\fR specifies a year (with 1970 as the earliest value), \fImm\fR
-is the month (01-12), \fBdd\fR is the day (01-31), \fIhh\fR is the hour
-(00-23), \fImm\fR is the minute (00-59), and \fIss\fR is the second (00-59).
-The default is 00 for \fIhh\fR, \fImm\fR and \fIss\fR.
-.sp
-An offset can be specified as: \fB+\fR\fIn\fR \fBd\fR|\fBh\fR|\fBm\fR| \fBs\fR
-where \fIn\fR is a number of units, and the tags \fBd\fR, \fBh\fR, \fBm\fR, and
-\fBs\fR stand for days, hours, minutes and seconds, respectively. An offset is
-relative to the starting time. Thus, this form can only be used with the
-\fB-b\fR option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIevent\fR\fR
-.ad
-.sp .6
-.RS 4n
-The literal string or ordinal event number as found in \fBaudit_event\fR(4). If
-\fIevent\fR is not found in the \fBaudit_event\fR file it is considered
-invalid.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIgroup\fR\fR
-.ad
-.sp .6
-.RS 4n
-The literal string or ordinal group ID number as found in \fBgroup\fR(4). If
-\fIgroup\fR is not found in the \fBgroup\fR file it is considered invalid.
-\fIgroup\fR can be negative.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIlabel\fR\fR
-.ad
-.sp .6
-.RS 4n
-The literal string representation of a MAC label or a range of two valid MAC
-labels. To specify a range, use \fBx;y\fR where \fBx\fR and \fBy\fR are valid
-MAC labels. Only those records that are fully bounded by \fBx\fR and \fBy\fR
-will be selected. If \fBx\fR or \fBy\fR is omitted, the default uses
-\fBADMIN_LOW\fR or \fBADMIN_HIGH\fR respectively. Notice that quotes must be
-used when specifying a range.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIpathname\fR\fR
-.ad
-.sp .6
-.RS 4n
-A regular expression describing a pathname.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIuser\fR\fR
-.ad
-.sp .6
-.RS 4n
-The literal username or ordinal user ID number as found in \fBpasswd\fR(4). If
-the username is not found in the \fBpasswd\fR file it is considered invalid.
-\fIuser\fR can be negative.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRThe auditreduce command
-.sp
-.LP
-\fBpraudit\fR(1M) is available to display audit records in a human-readable
-form.
-
-.sp
-.LP
-This will display the entire audit trail in a human-readable form:
-
-.sp
-.in +2
-.nf
-% auditreduce | praudit
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-If all the audit trail files are being combined into one large file, then
-deleting the original files could be desirable to prevent the records from
-appearing twice:
-
-.sp
-.in +2
-.nf
-% auditreduce -V -D /etc/security/audit/combined/all
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-This displays what user \fBmilner\fR did on April 13, 1988. The output is
-displayed in a human-readable form to the standard output:
-
-.sp
-.in +2
-.nf
-% auditreduce -d 19880413 -u milner | praudit
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The above example might produce a large volume of data if \fBmilner\fR has been
-busy. Perhaps looking at only login and logout times would be simpler. The
-\fB-c\fR option will select records from a specified class:
-
-.sp
-.in +2
-.nf
-% auditreduce -d 19880413 -u milner -c lo | praudit
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-To see \fBmilner\fR's login/logout activity for April 13, 14, and 15, the
-following is used. The results are saved to a file in the current working
-directory. Notice that the name of the output file will have \fBmilnerlo\fR as
-the \fIsuffix\fR, with the appropriate timestamp prefixes. Notice also that the
-long form of the name is used for the \fB-c\fR option:
-
-.sp
-.in +2
-.nf
-% auditreduce -a 19880413 -b +3d -u milner -c login_logout -O milnerlo
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-To follow \fBmilner\fR's movement about the file system on April 13, 14, and 15
-the \fBchdir\fR record types could be viewed. Notice that in order to get the
-same time range as the above example we needed to specify the \fB-b\fR time as
-the day \fBafter\fR our range. This is because \fB19880416\fR defaults to
-midnight of that day, and records before that fall on \fB0415\fR, the end-day
-of the range.
-
-.sp
-.in +2
-.nf
-% auditreduce -a 19880413 -b 19880416 -u milner -m AUE_CHDIR | praudit
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-In this example, the audit records are being collected in summary form (the
-login/logout records only). The records are being written to a summary file in
-a different directory than the normal audit root to prevent the selected
-records from existing twice in the audit root.
-
-.sp
-.in +2
-.nf
-% auditreduce -d 19880330 -c lo -O /etc/security/audit_summary/logins
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-If activity for user \fBID\fR 9944 has been observed, but that user is not
-known to the system administrator, then the command in the following example
-searches the entire audit trail for any records generated by that user.
-\fBauditreduce\fR queries the system about the current validity of \fBID\fR
-9944 and displays a warning message if it is not currently active:
-
-.sp
-.in +2
-.nf
-% auditreduce -O /etc/security/audit_suspect/user9944 -u 9944
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-To get an audit log of only the global zone:
-
-.sp
-.in +2
-.nf
-% auditreduce -z global
-.fi
-.in -2
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/etc/security/audit/\fR\fIserver\fR\fB/files/*\fR\fR
-.ad
-.sp .6
-.RS 4n
-location of audit trails, when stored
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability See below.
-.TE
-
-.sp
-.LP
-The command invocation is Stable. The binary file format is Stable. The binary
-file contents is Unstable.
-.SH SEE ALSO
-.LP
-\fBpraudit\fR(1M), \fBaudit.log\fR(4), \fBaudit_class\fR(4),
-\fBgroup\fR(4), \fBhosts\fR(4), \fBpasswd\fR(4),
-\fBattributes\fR(5), \fBsmf\fR(5)
-.SH DIAGNOSTICS
-.LP
-\fBauditreduce\fR displays error messages if there are command line errors and
-then exits. If there are fatal errors during the run, \fBauditreduce\fR
-displays an explanatory message and exits. In this case, the output file might
-be in an inconsistent state (no trailer or partially written record) and
-\fBauditreduce\fR displays a warning message before exiting. Successful
-invocation returns \fB0\fR and unsuccessful invocation returns \fB1\fR.
-.sp
-.LP
-Since \fBauditreduce\fR might be processing a large number of input files, it
-is possible that the machine-wide limit on open files will be exceeded. If this
-happens, \fBauditreduce\fR displays a message to that effect, give information
-on how many file there are, and exit.
-.sp
-.LP
-If \fBauditreduce\fR displays a record's timestamp in a diagnostic message,
-that time is in local time. However, when filenames are displayed, their
-timestamps are in \fBGMT\fR.
-.SH BUGS
-.LP
-Conjunction, disjunction, negation, and grouping of record selection options
-should be allowed.
-.SH NOTES
-.LP
-The \fB-z\fR option should be used only if the audit policy \fBzonename\fR is
-set. If there is no zonename token, then no records will be selected.
diff --git a/usr/src/man/man1m/auditstat.1m b/usr/src/man/man1m/auditstat.1m
deleted file mode 100644
index 7ddcc5bb2c..0000000000
--- a/usr/src/man/man1m/auditstat.1m
+++ /dev/null
@@ -1,206 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH AUDITSTAT 1M "Mar 6, 2017"
-.SH NAME
-auditstat \- display kernel audit statistics
-.SH SYNOPSIS
-.LP
-.nf
-\fBauditstat\fR [\fB-c\fR \fIcount\fR] [\fB-h\fR \fInumlines\fR] [\fB-i\fR \fIinterval\fR] [\fB-n\fR]
- [\fB-T\fR u | d ] [\fB-v\fR]
-.fi
-
-.SH DESCRIPTION
-.LP
-\fBauditstat\fR displays kernel audit statistics. The fields displayed are as
-follows:
-.sp
-.ne 2
-.na
-\fB\fBaud\fR\fR
-.ad
-.RS 8n
-The total number of audit records processed by the \fBaudit\fR(2) system call.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBctl\fR\fR
-.ad
-.RS 8n
-This field is obsolete.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdrop\fR\fR
-.ad
-.RS 8n
-The total number of audit records that have been dropped. Records are dropped
-according to the kernel audit policy. See \fBauditon\fR(2), \fBAUDIT_CNT\fR
-policy for details.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBenq\fR\fR
-.ad
-.RS 8n
-The total number of audit records put on the kernel audit queue.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBgen\fR\fR
-.ad
-.RS 8n
-The total number of audit records that have been constructed (not the number
-written).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBkern\fR\fR
-.ad
-.RS 8n
-The total number of audit records produced by user processes (as a result of
-system calls).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmem\fR\fR
-.ad
-.RS 8n
-The total number of Kbytes of memory currently in use by the kernel audit
-module.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnona\fR\fR
-.ad
-.RS 8n
-The total number of non-attributable audit records that have been constructed.
-These are audit records that are not attributable to any particular user.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrblk\fR\fR
-.ad
-.RS 8n
-The total number of times that the audit queue has blocked waiting to process
-audit data.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBtot\fR\fR
-.ad
-.RS 8n
-The total number of Kbytes of audit data written to the audit trail.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBwblk\fR\fR
-.ad
-.RS 8n
-The total number of times that user processes blocked on the audit queue at the
-high water mark.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBwrtn\fR\fR
-.ad
-.RS 8n
-The total number of audit records written. The difference between \fBenq\fR and
-\fBwrtn\fR is the number of outstanding audit records on the audit queue that
-have not been written.
-.RE
-
-.SH OPTIONS
-.ne 2
-.na
-\fB\fB-c\fR \fIcount\fR\fR
-.ad
-.RS 15n
-Display the statistics a total of \fIcount\fR times. If \fIcount\fR is equal to
-zero, statistics are displayed indefinitely. A time interval must be specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-h\fR \fInumlines\fR\fR
-.ad
-.RS 15n
-Display a header for every \fInumlines\fR of statistics printed. The default is
-to display the header every 20 lines. If \fInumlines\fR is equal to zero, the
-header is never displayed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-i\fR \fIinterval\fR\fR
-.ad
-.RS 15n
-Display the statistics every \fIinterval\fR where \fIinterval\fR is the number
-of seconds to sleep between each collection.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR\fR
-.ad
-.RS 15n
-Display the number of kernel audit events currently configured.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-T\fR \fBu\fR | \fBd\fR\fR
-.ad
-.RS 15n
-Display a time stamp.
-.sp
-Specify \fBu\fR for a printed representation of the internal representation of
-time. See \fBtime\fR(2). Specify \fBd\fR for standard date format. See
-\fBdate\fR(1).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.RS 15n
-Display the version number of the kernel audit module software.
-.RE
-
-.SH EXIT STATUS
-.LP
-\fBauditstat\fR returns \fB0\fR upon success and \fB1\fR upon failure.
-.SH SEE ALSO
-.LP
-\fBauditconfig\fR(1M), \fBpraudit\fR(1M), \fBaudit\fR(2),
-\fBauditon\fR(2), \fBattributes\fR(5)
diff --git a/usr/src/man/man1m/automount.1m b/usr/src/man/man1m/automount.1m
deleted file mode 100644
index 111e1a512c..0000000000
--- a/usr/src/man/man1m/automount.1m
+++ /dev/null
@@ -1,728 +0,0 @@
-.\"
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.\"
-.\"
-.\" Copyright 1989 AT&T
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 2017 Nexenta Systems, Inc.
-.\"
-.Dd February 25, 2017
-.Dt AUTOMOUNT 1M
-.Os
-.Sh NAME
-.Nm automount
-.Nd install automatic mount points
-.Sh SYNOPSIS
-.Nm
-.Op Fl v
-.Op Fl t Ar duration
-.Sh DESCRIPTION
-The
-.Nm
-utility installs
-.Nm autofs
-mount points and associates an automount map with each mount point.
-It starts the
-.Xr automountd 1M
-daemon if it finds any non-trivial entries in either local or distributed
-automount maps and if the daemon is not already running.
-The
-.Nm autofs
-file system monitors attempts to access directories within it and notifies the
-.Xr automountd 1M
-daemon.
-The daemon uses the map to locate a file system, which it then mounts at the
-point of reference within the
-.Nm autofs
-file system.
-A map can be assigned to an
-.Nm autofs
-mount using an entry in the
-.Pa /etc/auto_master
-map or a direct map.
-.Pp
-If the file system is not accessed within an appropriate interval
-.Pq 10 minutes by default ,
-the
-.Nm automountd
-daemon unmounts the file system.
-.Pp
-The file
-.Pa /etc/auto_master
-determines the locations of all
-.Nm autofs
-mount points.
-By default, this file contains three entries:
-.Bd -literal -offset indent
-# Master map for automounter
-#
-+auto_master
-/net -hosts -nosuid
-/home auto_home
-.Ed
-.Pp
-The
-.Sy +auto_master
-entry is a reference to an external NIS master map.
-If one exists, then its entries are read as if they occurred in place of the
-.Sy +auto_master
-entry.
-The remaining entries in the master file specify a directory on which an
-.Nm autofs
-mount will be made followed by the automounter map to be associated with it.
-Optional mount options may be supplied as an optional third field in the each
-entry.
-These options are used for any entries in the map that do not specify mount
-options explicitly.
-The
-.Nm
-command is usually run without arguments.
-It compares the entries
-.Pa /etc/auto_master
-with the current list of
-.Nm autofs
-mounts in
-.Pa /etc/mnttab
-and adds, removes or updates
-.Nm autofs
-mounts to bring the
-.Pa /etc/mnttab
-up to date with the
-.Pa /etc/auto_master .
-At boot time it installs all
-.Nm autofs
-mounts from the master map.
-Subsequently, it may be run to install
-.Nm autofs
-mounts for new entries in the master map or the direct map, or to perform
-unmounts for entries that have been removed from these maps.
-.Ss Automount with Solaris Trusted Extensions
-If a system is configured with Solaris Trusted Extensions, additional
-processing is performed to facilitate multilevel home directory access.
-A list of zones whose labels are dominated by the current zone is generated and
-default
-.Sy auto_home
-automount maps are generated if they do not currently exist.
-These automount maps are named
-.Sy auto_home_ Ns Ar zonename ,
-where
-.Ar zonename
-is the name of each zone's lower-level zone.
-An
-.Nm autofs
-mount of each such
-.Sy auto_home
-map is then performed, regardless of whether it is explicitly or implicitly
-listed in the master map.
-Instead of
-.Nm autofs
-mounting the standard
-.Sy auto_home
-map, the zone uses an
-.Pa auto_home
-file appended with its own zone name.
-Each zone's
-.Sy auto_home
-map is uniquely named so that it can be maintained and shared by all zones using
-a common name server.
-.Pp
-By default, the home directories of lower-level zones are mounted read-only
-under
-.Pa /zone/ Ns Ar zonename Ns Pa /export/home
-when each zone is booted.
-The default
-.Sy auto_home_ Ns Ar zonename
-automount map specifies that path as the source directory for an
-.Nm lofs
-remount onto
-.Pa /zone/ Ns Ar zonename Ns Pa /home/ Ns Ar username .
-For example, the file
-.Pa auto_home_public ,
-as generated from a higher level zone would contain:
-.Bd -literal -offset indent
-+auto_home_public
-* -fstype=lofs :/zone/public/export/home/&
-.Ed
-.Pp
-When a home directory is referenced and the name does not match any other keys
-in the
-.Sy auto_home_public
-map, it will match this loopback mount specification.
-If this loopback match occurs and the name corresponds to a valid user whose
-home directory does not exist in the public zone, the directory is automatically
-created on behalf of the user.
-.Sh OPTIONS
-The following options are supported:
-.Bl -tag -width Ds
-.It Fl v
-Verbose mode.
-Notifies of
-.Nm autofs
-mounts, unmounts, or other non-essential information.
-.It Fl t Ar duration
-Specifies a
-.Ar duration ,
-in seconds, that a file system is to remain mounted when not in use.
-The default is
-.Sy 10
-minutes.
-.El
-.Sh USAGE
-.Ss Map Entry Format
-A simple map entry
-.Pq mapping
-takes the form:
-.Bd -literal -offset indent
-.Ar key Oo Fl Ns Ar mount-options Oc Ar location Ns ...
-.Ed
-.Pp
-where
-.Ar key
-is the full pathname of the directory to mount when used in a direct map, or the
-simple name of a subdirectory in an indirect map.
-.Ar mount-options
-is a comma-separated list of
-.Nm mount
-options, and
-.Ar location
-specifies a file system from which the directory may be mounted.
-In the case of a simple NFS mount, the options that can be used are specified in
-.Xr mount_nfs 1M ,
-and
-.Ar location
-takes the form:
-.Pp
-.Dl Ar host Ns \&: Ns Ar pathname
-.Pp
-.Ar host
-is the name of the host from which to mount the file system, and
-.Ar pathname
-is the absolute pathname of the directory to mount.
-.Pp
-Options to other file systems are documented in the other
-.Nm mount_*
-reference manual pages.
-.Ss Replicated File Systems
-Multiple
-.Ar location
-fields can be specified for replicated NFS file systems, in which case
-.Nm
-and the kernel will each try to use that information to increase availability.
-If the read-only flag is set in the map entry,
-.Nm automountd
-mounts a list of locations that the kernel may use, sorted by several criteria.
-Only locations available at mount time will be mounted, and thus be available to
-the kernel.
-When a server does not respond, the kernel will switch to an alternate server.
-The sort ordering of
-.Nm
-is used to determine how the next server is chosen.
-If the read-only flag is not set,
-.Nm
-will mount the best single location, chosen by the same sort ordering, and new
-servers will only be chosen when an unmount has been possible, and a remount is
-done.
-Servers on the same local subnet are given the strongest preference, and servers
-on the local net are given the second strongest preference.
-Among servers equally far away, response times will determine the order if no
-weighting factors
-.Pq see below
-are used.
-.Pp
-If the list includes server locations using both the NFS Version 2 Protocol and
-the NFS Version 3 Protocol,
-.Nm
-will choose only a subset of the server locations on the list, so that all
-entries will be the same protocol.
-It will choose servers with the NFS Version 3 Protocol so long as an NFS Version
-2 Protocol server on a local subnet will not be ignored.
-See the FIXME for additional details.
-.Pp
-If each
-.Ar location
-in the list shares the same
-.Ar pathname
-then a single
-.Ar location
-may be used with a comma-separated list of hostnames:
-.Bd -literal -offset indent
-.Ar hostname Ns \&, Ns Ar hostname Ns ...: Ns Ar pathname
-.Ed
-.Pp
-Requests for a server may be weighted, with the weighting factor appended to
-the server name as an integer in parentheses.
-Servers without a weighting are assumed to have a value of zero
-.Pq most likely to be selected .
-Progressively higher values decrease the chance of being selected.
-In the example,
-.Bd -literal -offset indent
-man -ro alpha,bravo,charlie(1),delta(4):/usr/man
-.Ed
-.Pp
-hosts
-.Sy alpha
-and
-.Sy bravo
-have the highest priority; host
-.Sy delta
-has the lowest.
-.Pp
-Server proximity takes priority in the selection process.
-In the example above, if the server
-.Sy delta
-is on the same network segment as the client, but the others are on different
-network segments, then
-.Sy delta
-will be selected; the weighting value is ignored.
-The weighting has effect only when selecting between servers with the same
-network proximity.
-The automounter always selects the localhost over other servers on the same
-network segment, regardless of weighting.
-.Pp
-In cases where each server has a different export point, the weighting can
-still be applied.
-For example:
-.Bd -literal -offset indent
-man -ro alpha:/usr/man bravo,charlie(1):/usr/share/man \e
- delta(3):/export/man
-.Ed
-.Pp
-A mapping can be continued across input lines by escaping the NEWLINE with a
-backslash
-.Pq Qq Sy \e .
-Comments begin with a number sign
-.Pq Qq Sy #
-and end at the subsequent NEWLINE.
-.Ss Map Key Substitution
-The ampersand
-.Pq Qq Sy \*(Am
-character is expanded to the value of the
-.Ar key
-field for the entry in which it occurs.
-In this case:
-.Bd -literal -offset indent
-jane sparcserver:/home/&
-.Ed
-.Pp
-the
-.Sy \*(Am
-expands to
-.Sy jane .
-.Ss Wildcard Key
-The asterisk
-.Pq Qq Sy *
-character, when supplied as the
-.Ar key
-field, is recognized as the catch-all entry.
-Such an entry will match any key not previously matched.
-For instance, if the following entry appeared in the indirect map for
-.Pa /config :
-.Bd -literal -offset indent
-* &:/export/config/&
-.Ed
-.Pp
-this would allow automatic mounts in
-.Pa /config
-of any remote file system whose location could be specified as:
-.Bd -literal -offset indent
-.Ar hostname Ns \&: Ns Pa /export/config/ Ns Ar hostname
-.Ed
-.Pp
-Note that the wildcard key does not work in conjunction with the
-.Fl browse
-option.
-.Ss Variable Substitution
-Client specific variables can be used within an
-.Nm
-map.
-For instance, if
-.Sy $HOST
-appeared within a map,
-.Nm
-would expand it to its current value for the client's host name.
-Supported variables are:
-.Bl -column "PLATFORM" "arch -k or uname -m"
-.It Sy NAME Ta Sy OUTPUT OF Ta Sy DESCRIPTION (EXAMPLE)
-.It Ev ARCH Ta Nm arch Ta architecture name Pq Qq Sy sun4
-.It Ev CPU Ta Nm uname Fl p Ta processor type Pq Qq Sy sparc
-.It Ev HOST Ta Nm uname Fl n Ta host name Pq Qq Sy myhost
-.It Ev KARCH Ta Nm arch Fl k No or Nm uname Fl m Ta kernel architecture name or
-machine hardware name
-.Pq Qq Sy sun4u
-.It Ev OSNAME Ta Nm uname Fl s Ta OS name Pq Qq Sy SunOS
-.It Ev OSREL Ta Nm name Fl r Ta OS release name Pq Qq Sy 5.3
-.It Ev OSVERS Ta Nm uname Fl v Ta OS version Pq Qq Sy beta1.0
-.It Ev NATISA Ta Nm isainfo Fl n Ta native instruction set architecture for the
-system
-.Pq Qq Sy sparcv9
-.It Ev PLATFORM Ta Nm uname Fl i Ta platform name Pq Qq Sy SUNW,Sun-Fire-V240
-.El
-.Pp
-If a reference needs to be protected from affixed characters, you can surround
-the variable name with curly braces
-.Pq Qq Sy \(lC Ns Sy \(rC .
-.Ss Multiple Mounts
-A multiple mount entry takes the form:
-.Bd -literal -offset indent
-.Ar key Oo Fl Ns Ar mount-options Oc Oo Oo Ar mountpoint Oc
-.Oo Fl Ns Ar mount-options Oc Ar location Ns ... Oc Ns ...
-.Ed
-.Pp
-The initial
-.Ar mountpoint
-is optional for the first mount and mandatory for all subsequent mounts.
-The optional
-.Ar mountpoint
-is taken as a pathname relative to the directory named by
-.Ar key .
-If
-.Ar mountpoint
-is omitted in the first occurrence, a
-.Ar mountpoint
-of
-.Pa /
-.Pq root
-is implied.
-.Pp
-Given an entry in the indirect map for
-.Pa /src :
-.Bd -literal -offset indent
-beta -ro \e
- / svr1,svr2:/export/src/beta \e
- /1.0 svr1,svr2:/export/src/beta/1.0 \e
- /1.0/man svr1,svr2:/export/src/beta/1.0/man
-.Ed
-.Pp
-All offsets must exist on the server under
-.Sy beta .
-.Nm
-will automatically mount
-.Pa /src/beta ,
-.Pa /src/beta/1.0 ,
-and
-.Pa /src/beta/1.0/man ,
-as needed, from either
-.Sy svr1
-or
-.Sy svr2 ,
-whichever host is nearest and responds first.
-.Ss Other File System Types
-The automounter assumes NFS mounts as a default file system type.
-Other file system types can be described using the
-.Sy fstype
-mount option.
-Other mount options specific to this file system type can be combined with the
-.Sy fstype
-option.
-The location field must contain information specific to the file system type.
-If the location field begins with a slash, a colon character must be prepended,
-for instance, to mount a CD file system:
-.Bd -literal -offset indent
-cdrom -fstype=hsfs,ro :/dev/sr0
-.Ed
-.Pp
-or to perform an
-.Nm autofs
-mount:
-.Bd -literal -offset indent
-src -fstype=autofs auto_src
-.Ed
-.Pp
-Use this procedure only if you are not using Volume Manager.
-.Pp
-See the
-.Sx NOTES
-section for information on option inheritance.
-.Ss Indirect Maps
-An indirect map allows you to specify mappings for the subdirectories you wish
-to mount under the
-.Ar directory
-indicated on the command line.
-In an indirect map, each
-.Ar key
-consists of a simple name that refers to one or more file systems that are to be
-mounted as needed.
-.Ss Direct Maps
-Entries in a direct map are associated directly with
-.Nm autofs
-mount points.
-Each
-.Ar key
-is the full pathname of an
-.Nm autofs
-mount point.
-The direct map as a whole is not associated with any single directory.
-.Pp
-Direct maps are distinguished from indirect maps by the
-.Sy \-
-key.
-For example:
-.Bd -literal -offset indent
-# Master map for automounter
-#
-+auto_master
-/net -hosts -nosuid,nobrowse
-/home auto_home -nobrowse
-/- auto_direct
-.Ed
-.Ss Included Maps
-The contents of another map can be included within a map with an entry of the
-form
-.Bd -literal -offset indent
-.No + Ns Ar mapname
-.Ed
-.Pp
-If
-.Ar mapname
-begins with a slash, it is assumed to be the pathname of a local file.
-Otherwise, the location of the map is determined by the policy of the name
-service switch according to the entry for the automounter in
-.Pa /etc/nsswitch.conf ,
-such as
-.Bd -literal -offset indent
-automount: files nis
-.Ed
-.Pp
-If the name service is
-.Sy files ,
-then the name is assumed to be that of a local file in
-.Pa /etc .
-If the key being searched for is not found in the included map, the search
-continues with the next entry.
-.Ss Special Maps
-There are two special maps available:
-.Sy -hosts
-and
-.Sy -null .
-The
-.Sy -hosts
-map is used with the
-.Pa /net
-directory and assumes that the map key is the hostname of an NFS server.
-The
-.Nm automountd
-daemon dynamically constructs a map entry from the server's list of exported
-file systems.
-References to a directory under
-.Pa /net/hermes
-will refer to the corresponding directory relative to
-.Sy hermes
-root.
-.Pp
-The
-.Sy -null
-map cancels a previous map for the directory indicated.
-This is most useful in the
-.Pa /etc/auto_master
-for cancelling entries that would otherwise be inherited from the
-.Sy +auto_master
-include entry.
-To be effective, the
-.Sy -null
-entries must be inserted before the included map entry.
-.Ss Executable Maps
-Local maps that have the execute bit set in their file permissions will be
-executed by the automounter and provided with a key to be looked up as an
-argument.
-The executable map is expected to return the content of an automounter map entry
-on its stdout or no output if the entry cannot be determined.
-A direct map cannot be made executable.
-.Ss Configuration and the auto_master Map
-When initiated without arguments,
-.Nm
-consults the master map for a list of
-.Nm autofs
-mount points and their maps.
-It mounts any
-.Nm autofs
-mounts that are not already mounted, and unmounts
-.Nm autofs
-mounts that have been removed from the master map or direct map.
-.Pp
-The master map is assumed to be called
-.Sy auto_master
-and its location is determined by the name service switch policy.
-Normally the master map is located initially as a local file
-.Pa /etc/auto_master .
-.Ss Browsing
-The
-.Nm automountd
-daemon supports browsability of indirect maps.
-This allows all of the potential mount points to be visible, whether or not they
-are mounted.
-The
-.Sy -nobrowse
-option can be added to any indirect
-.Nm autofs
-map to disable browsing.
-For example:
-.Bd -literal -offset indent
-/net -hosts -nosuid,nobrowse
-/home auto_home
-.Ed
-.Pp
-In this case, any
-.Ar hostname Ns s
-would only be visible in
-.Pa /net
-after they are mounted, but all potential mount points would be visible under
-.Pa /home .
-The
-.Sy -browse
-option enables browsability of
-.Nm autofs
-file systems.
-This is the default for all indirect maps.
-.Pp
-The
-.Sy -browse
-option does not work in conjunction with the wildcard key.
-.Ss Restricting Mount Maps
-Options specified for a map are used as the default options for all the entries
-in that map.
-They are ignored when map entries specify their own mount options.
-.Pp
-In some cases, however, it is desirable to force
-.Sy nosuid , nodevices , nosetuid ,
-or
-.Sy noexec
-for a complete mount map and its submounts.
-This can be done by specifying the additional mount option,
-.Sy -restrict .
-.Bd -literal -offset indent
-/home auto_home -restrict,nosuid,hard
-.Ed
-.Pp
-The
-.Sy -restrict
-option forces the inheritance of all the restrictive options
-.Sy nosuid , nodevices , nosetuid ,
-and
-.Sy noexec
-as well as the restrict option itself.
-In this particular example, the
-.Sy nosuid
-and
-.Sy restrict
-option are inherited but the
-.Sy hard
-option is not.
-The
-.Sy restrict
-option also prevents the execution of
-.Qq executable maps
-and is enforced for auto mounts established by programs with fewer than all
-privileges available in their zone.
-.Sh FILES
-.Bl -tag -width Ds
-.It Pa /etc/auto_master
-Master automount map.
-.It Pa /etc/auto_home
-Map to support automounted home directories.
-.It Pa /etc/nsswitch.conf
-Name service switch configuration file.
-See
-.Xr nsswitch.conf 4 .
-.El
-.Sh EXIT STATUS
-.Ex -std
-.Sh SEE ALSO
-.Xr isainfo 1 ,
-.Xr ls 1 ,
-.Xr svcs 1 ,
-.Xr uname 1 ,
-.Xr automountd 1M ,
-.Xr mount 1M ,
-.Xr mount_nfs 1M ,
-.Xr svcadm 1M ,
-.Xr autofs 4 ,
-.Xr attributes 5 ,
-.Xr nfssec 5 ,
-.Xr smf 5
-.Sh NOTES
-.Nm autofs
-mount points must not be hierarchically related.
-.Nm
-does not allow an
-.Nm autofs
-mount point to be created within another
-.Nm autofs
-mount.
-.Pp
-Since each direct map entry results in a new
-.Nm autofs
-mount such maps should be kept short.
-.Pp
-Entries in both direct and indirect maps can be modified at any time.
-The new information is used when
-.Nm automountd
-next uses the map entry to do a mount.
-.Pp
-New entries added to a master map or direct map will not be useful until the
-automount command is run to install them as new
-.Nm autofs
-mount points.
-New entries added to an indirect map may be used immediately.
-.Pp
-As of the Solaris 2.6 release, a listing
-.Po see
-.Xr ls 1
-.Pc
-of the
-.Nm autofs
-directory associated with an indirect map shows all potential mountable
-entries.
-The attributes associated with the potential mountable entries are temporary.
-The real file system attributes will only be shown once the file system has been
-mounted.
-.Pp
-Default mount options can be assigned to an entire map when specified as an
-optional third field in the master map.
-These options apply only to map entries that have no mount options.
-Note that map entities with options override the default options, as at this
-time, the options do not concatenate.
-The concatenation feature is planned for a future release.
-.Pp
-When operating on a map that invokes an NFS mount, the default number of
-retries for the automounter is 0, that is, a single mount attempt, with no
-retries.
-Note that this is significantly different from the default
-.Pq 10000
-for the
-.Xr mount_nfs 1M
-utility.
-.Pp
-The Network Information Service
-.Pq NIS
-was formerly known as Sun Yellow Pages
-.Pq YP .
-The functionality of the two remains the same.
-.Pp
-The
-.Nm
-service is managed by the service management facility,
-.Xr smf 5 ,
-under the service identifier:
-.Bd -literal -offset indent
-svc:/system/filesystem/autofs:default
-.Ed
-.Pp
-Administrative actions on this service, such as enabling, disabling, or
-requesting restart, can be performed using
-.Xr svcadm 1M .
-The service's status can be queried using the
-.Xr svcs 1
-command.
diff --git a/usr/src/man/man1m/automountd.1m b/usr/src/man/man1m/automountd.1m
deleted file mode 100644
index 033bc50875..0000000000
--- a/usr/src/man/man1m/automountd.1m
+++ /dev/null
@@ -1,121 +0,0 @@
-.\"
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.\"
-.\"
-.\" Copyright 1989 AT&T
-.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 2016 Nexenta Systems, Inc.
-.\"
-.Dd March 1, 2016
-.Dt AUTOMOUNTD 1M
-.Os
-.Sh NAME
-.Nm automountd
-.Nd autofs mount/unmount daemon
-.Sh SYNOPSIS
-.Nm
-.Op Fl nTv
-.Op Fl D Ar name Ns = Ns Ar value
-.Sh DESCRIPTION
-.Nm
-is an RPC server that answers file system mount and unmount requests from the
-.Nm autofs
-file system.
-It uses local files or name service maps to locate file systems to be mounted.
-These maps are described with the
-.Xr automount 1M
-command.
-.Pp
-If
-.Nm automount
-finds any non-trivial entries in either the local or distributed automount maps
-and if the daemon is not running already, the
-.Nm
-daemon is automatically invoked by
-.Xr automount 1M .
-.Nm
-enables the svc:/network/nfs/nlockmgr service
-.Pq Xr lockd 1M ,
-and the svc:/network/nfs/status service
-.Pq Xr statd 1M ,
-if NFS mounts need to be done.
-.Sh OPTIONS
-The following options are supported:
-.Bl -tag -width Ds
-.It Fl D Ar name Ns = Ns Ar value
-Assign
-.Ar value
-to the indicated
-.Nm automount
-map substitution variable.
-These assignments cannot be used to substitute variables in the master map
-.Sy auto_master .
-.It Fl n
-Turn off browsing for all
-.Nm autofs
-mount points.
-This option overrides the
-.Sy -browse
-.Nm autofs
-map option on the local host.
-.It Fl T
-Trace.
-Expand each RPC call and display it on the standard output.
-.It Fl v
-Verbose.
-Log status messages to the console.
-.El
-.Sh USAGE
-See
-.Xr largefile 5
-for the description of the behavior of
-.Nm
-when encountering files greater than or equal to 2 Gbyte
-.Pq 2^31 bytes .
-.Sh FILES
-.Bl -tag -width Ds
-.It Pa /etc/auto_master
-Master map for automounter.
-.El
-.Sh SEE ALSO
-.Xr svcs 1 ,
-.Xr automount 1M ,
-.Xr svcadm 1M ,
-.Xr autofs 4 ,
-.Xr attributes 5 ,
-.Xr largefile 5 ,
-.Xr smf 5
-.Sh NOTES
-The
-.Nm
-service is managed by the service management facility,
-.Xr smf 5 ,
-under the service identifier:
-.Bd -literal -offset indent
-svc:/system/filesystem/autofs
-.Ed
-.Pp
-Administrative actions on this service, such as enabling, disabling, or
-requesting restart, can be performed using
-.Xr svcadm 1M .
-The service's status can be queried using
-.Xr svcs 1 .
-If it is disabled, it is enabled by
-.Xr automount 1M
-unless the
-.Sy application Ns / Ns Sy auto_enable
-property is set to
-.Sy false .
diff --git a/usr/src/man/man1m/autopush.1m b/usr/src/man/man1m/autopush.1m
deleted file mode 100644
index 7f5f508074..0000000000
--- a/usr/src/man/man1m/autopush.1m
+++ /dev/null
@@ -1,195 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 2008 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH AUTOPUSH 1M "Feb 15, 2008"
-.SH NAME
-autopush \- configures lists of automatically pushed STREAMS modules
-.SH SYNOPSIS
-.LP
-.nf
-\fBautopush\fR \fB-f\fR \fIfilename\fR
-.fi
-
-.LP
-.nf
-\fBautopush\fR \fB-g\fR \fB-M\fR \fImajor\fR \fB-m\fR \fIminor\fR
-.fi
-
-.LP
-.nf
-\fBautopush\fR \fB-r\fR \fB-M\fR \fImajor\fR \fB-m\fR \fIminor\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBautopush\fR command configures the list of modules to be automatically
-pushed onto the stream when a device is opened. It can also be used to remove a
-previous setting or get information on a setting.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-f\fR \fIfilename\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets up the \fBautopush\fR configuration for each driver according to the
-information stored in \fIfilename\fR. An \fBautopush\fR file consists of lines
-of four or more fields, separated by spaces as shown below:
-.sp
-.in +2
-.nf
-\fImajor minor last-minor module1 module2 \|.\|.\|. module8\fR
-.fi
-.in -2
-.sp
-
-The first field is a string that specifies the \fImajor\fR device name, as
-listed in the \fB/kernel/drv\fR directory. The next two fields are integers
-that specify the \fIminor\fR device number and \fIlast-minor\fR device number.
-The fields following represent the names of modules. If \fIminor\fR is
-\fB\(mi1\fR, then all minor devices of a major driver specified by \fImajor\fR
-are configured, and the value for \fIlast-minor\fR is ignored. If
-\fIlast-minor\fR is \fB0\fR, then only a single minor device is configured. To
-configure a range of minor devices for a particular major, \fIminor\fR must be
-less than \fIlast-minor\fR.
-.sp
-The remaining fields list the names of modules to be automatically pushed onto
-the stream when opened, along with the position of an optional anchor. The
-maximum number of modules that can be pushed is eight. The modules are pushed
-in the order they are specified. The optional special character sequence
-\fB[anchor]\fR indicates that a STREAMS anchor should be placed on the stream
-at the module previously specified in the list; it is an error to specify more
-than one anchor or to have an anchor first in the list.
-.sp
-A nonzero exit status indicates that one or more of the lines in the specified
-file failed to complete successfully.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-g\fR\fR
-.ad
-.sp .6
-.RS 4n
-Gets the current configuration setting of a particular \fImajor\fR and
-\fIminor\fR device number specified with the \fB-M\fR and \fB-m\fR options
-respectively and displays the autopush modules associated with it. It will also
-return the starting minor device number if the request corresponds to a setting
-of a range (as described with the \fB-f\fR option).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-m\fR \fIminor\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the minor device number.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-M\fR \fImajor\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the major device number.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-r\fR\fR
-.ad
-.sp .6
-.RS 4n
-Removes the previous configuration setting of the particular \fImajor\fR and
-\fIminor\fR device number specified with the \fB-M\fR and \fB-m\fR options
-respectively. If the values of \fImajor\fR and \fIminor\fR correspond to a
-previously established setting of a range of minor devices, where \fIminor\fR
-matches the first minor device number in the range, the configuration would be
-removed for the entire range.
-.RE
-
-.SH EXIT STATUS
-.sp
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB0\fR
-.ad
-.sp .6
-.RS 4n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fBnon-zero\fR
-.ad
-.sp .6
-.RS 4n
-An error occurred.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRUsing the \fBautopush\fR command.
-.sp
-.LP
-The following example gets the current configuration settings for the
-\fImajor\fR and \fIminor\fR device numbers as indicated and displays the
-\fBautopush\fR modules associated with them for the character-special device
-\fB/dev/term/a:\fR
-
-.sp
-.in +2
-.nf
-example# autopush \fB-g\fR \fB-M\fR 29 \fB-m\fR 0
-Major Minor Lastminor Modules
- 29 0 1 ldterm ttcompat
-.fi
-.in -2
-.sp
-
-.SH FILES
-.sp
-.LP
-\fB/etc/iu.ap\fR
-.SH SEE ALSO
-.sp
-.LP
-\fBdladm\fR(1M), \fBttymon\fR(1M), \fBattributes\fR(5), \fBldterm\fR(7M),
-\fBsad\fR(7D), \fBstreamio\fR(7I), \fBttcompat\fR(7M)
-.sp
-.LP
-\fI\fR
-.SH NOTES
-.sp
-.LP
-The use of the \fBautopush\fR command is obsolete for networking data-links.
-The preferred method of configuring a list of automatically pushed STREAMS
-modules on a given networking data-link interface is the \fBdladm\fR(1M)
-\fBautopush\fR link property.
-.sp
-.LP
-Because network devices are self-cloning, the \fBautopush\fR command is
-inadequate for networking devices. The granularity of the \fBautopush\fR
-command's configuration is driver-wide, and not per-interface as one might
-expect. Another reason not to use \fBautopush\fR is that administrators are
-more familiar with the names of their network interfaces than with device major
-and minor numbers. The \fBdladm\fR(1M) command allows the configuration using
-data-link interface names.
diff --git a/usr/src/man/man1m/bart.1m b/usr/src/man/man1m/bart.1m
deleted file mode 100644
index 520ab571ed..0000000000
--- a/usr/src/man/man1m/bart.1m
+++ /dev/null
@@ -1,639 +0,0 @@
-'\" te
-.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH BART 1M "Oct 26, 2005"
-.SH NAME
-bart \- basic audit reporting tool
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/bin/bart\fR create [ \fB-n\fR] [\fB-R\fR \fIroot_directory\fR]
- [\fB-r\fR \fIrules_file\fR | -]
-.fi
-
-.LP
-.nf
-\fB/usr/bin/bart\fR create [\fB-n\fR] [\fB-R\fR \fIroot_directory\fR] \fB-I\fR
- [\fIfile_name\fR]...
-.fi
-
-.LP
-.nf
-\fB/usr/bin/bart\fR compare [\fB-i\fR \fIattribute\fR ] [\fB-p\fR]
- [\fB-r\fR \fIrules_file\fR | -] \fIcontrol-manifest\fR \fItest-manifest\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBbart\fR(1M) is a tool that performs a file-level check of the software
-contents of a system.
-.sp
-.LP
-You can also specify the files to track and the types of discrepancies to flag
-by means of a rules file, \fBbart_rules\fR. See \fBbart_rules\fR(4).
-.sp
-.LP
-The \fBbart\fR utility performs two basic functions:
-.sp
-.ne 2
-.na
-\fB\fBbart create\fR\fR
-.ad
-.RS 16n
-The manifest generator tool takes a file-level \fBsnapshot\fR of a system. The
-output is a catalog of file attributes referred to as a \fBmanifest\fR. See
-\fBbart_manifest\fR(4).
-.sp
-You can specify that the list of files be cataloged in three ways. Use \fBbart
-create\fR with no options, specify the files by name on the command line, or
-create a rules file with directives that specify which the files to monitor.
-See \fBbart_rules\fR(4).
-.sp
-By default, the manifest generator catalogs all attributes of all files in the
-root (\fB/\fR) file system. File systems mounted on the root file system are
-cataloged only if they are of the same type as the root file system.
-.sp
-For example, \fB/\fR, \fB/usr\fR, and \fB/opt\fR are separate UFS file systems.
-\fB/usr\fR and \fB/opt\fR are mounted on \fB/\fR. Therefore, all three file
-systems are cataloged. However, \fB/tmp\fR, also mounted on \fB/\fR, is not
-cataloged because it is a TMPFS file system. Mounted CD-ROMs are not cataloged
-since they are HSFS file systems.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBbart compare\fR\fR
-.ad
-.RS 16n
-The report tool compares two manifests. The output is a list of per-file
-attribute discrepancies. These discrepancies are the differences between two
-manifests: a control manifest and a test manifest.
-.sp
-A discrepancy is a change to any attribute for a given file cataloged by both
-manifests. A new file or a deleted file in a manifest is reported as a
-discrepancy.
-.sp
-The reporting mechanism provides two types of output: verbose and programmatic.
-Verbose output is localized and presented on multiple lines, while programmatic
-output is more easily parsable by other programs. See \fBOUTPUT\fR.
-.sp
-By default, the report tool generates verbose output where all discrepancies
-are reported except for modified directory timestamps (\fBdirmtime\fR
-attribute).
-.sp
-To ensure consistent and accurate comparison results, \fIcontrol-manifest\fR
-and \fItest-manifest\fR must be built with the same rules file.
-.RE
-
-.sp
-.LP
-Use the rules file to ignore specified files or subtrees when you generate a
-manifest or compare two manifests. Users can compare manifests from different
-perspectives by re-running the \fBbart compare\fR command with different rules
-files.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-i\fR \fIattribute\fR ...\fR
-.ad
-.RS 21n
-Specify the file attributes to be ignored globally. Specify attributes as a
-comma separated list.
-.sp
-This option produces the same behavior as supplying the file attributes to a
-global \fBIGNORE\fR keyword in the rules file. See \fBbart_rules\fR(4).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-I\fR [\fIfile_name\fR...]\fR
-.ad
-.RS 21n
-Specify the input list of files. The file list can be specified at the command
-line or read from standard input.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR\fR
-.ad
-.RS 21n
-Prevent computation of content signatures for all regular files in the file
-list.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR\fR
-.ad
-.RS 21n
-Display manifest comparison output in ``programmatic mode,'' which is suitable
-for programmatic parsing. The output is not localized.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-r\fR \fIrules_file\fR\fR
-.ad
-.RS 21n
-Use \fIrules_file\fR to specify which files and directories to catalog, and to
-define which file attribute discrepancies to flag. If \fIrules_file\fR is
-\fB-\fR, then the rules are read from standard input. See \fBbart_rules\fR(4)
-for the definition of the syntax.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-R\fR \fIroot_directory\fR\fR
-.ad
-.RS 21n
-Specify the root directory for the manifest. All paths specified by the rules,
-and all paths reported in the manifest, are relative to \fIroot_directory\fR.
-.LP
-Note -
-.sp
-.RS 2
-The root file system of any non-global zones must not be referenced with the
-\fB-R\fR option. Doing so might damage the global zone's file system, might
-compromise the security of the global zone, and might damage the non-global
-zone's file system. See \fBzones\fR(5).
-.RE
-.RE
-
-.SH OPERANDS
-.sp
-.LP
-bart allows quoting of operands. This is particularly important for white-space
-appearing in subtree and subtree modifier specifications.
-.sp
-.LP
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fB\fIcontrol-manifest\fR\fR
-.ad
-.RS 20n
-Specify the manifest created by \fBbart create\fR on the control system.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fItest-manifest\fR\fR
-.ad
-.RS 20n
-Specify the manifest created by \fBbart create\fR on the test system.
-.RE
-
-.SH OUTPUT
-.sp
-.LP
-The \fBbart create\fR and \fBbart compare\fR commands write output to standard
-output, and write error messages to standard error.
-.sp
-.LP
-The \fBbart create\fR command generates a system manifest. See
-\fBbart_manifest\fR(4).
-.sp
-.LP
-When the \fBbart compare\fR command compares two system manifests, it generates
-a list of file differences. By default, the comparison output is localized.
-However, if the \fB-p\fR option is specified, the output is generated in a form
-that is suitable for programmatic manipulation.
-.SS "Default Format"
-.sp
-.in +2
-.nf
-\fIfilename\fR
-\fIattribute\fR control:\fIxxxx\fR test:\fIyyyy\fR
-.fi
-.in -2
-.sp
-
-.sp
-.ne 2
-.na
-\fB\fIfilename\fR\fR
-.ad
-.RS 13n
-Name of the file that differs between \fIcontrol-manifest\fR and
-\fItest-manifest\fR. For file names that contain embedded whitespace or newline
-characters, see \fBbart_manifest\fR(4).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIattribute\fR\fR
-.ad
-.RS 13n
-The name of the file attribute that differs between the manifests that are
-compared. \fIxxxx\fR is the attribute value from \fIcontrol-manifest\fR, and
-\fIyyyy\fR is the attribute value from \fItest-manifest\fR. When discrepancies
-for multiple attributes occur for the same file, each difference is noted on a
-separate line.
-.sp
-The following attributes are supported:
-.sp
-.ne 2
-.na
-\fBacl\fR
-.ad
-.RS 12n
-ACL attributes for the file. For a file with ACL attributes, this field
-contains the output from \fBacltotext()\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBall\fR
-.ad
-.RS 12n
-All attributes.
-.RE
-
-.sp
-.ne 2
-.na
-\fBcontents\fR
-.ad
-.RS 12n
-Checksum value of the file. This attribute is only specified for regular files.
-If you turn off context checking or if checksums cannot be computed, the value
-of this field is \fB-\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBdest\fR
-.ad
-.RS 12n
-Destination of a symbolic link.
-.RE
-
-.sp
-.ne 2
-.na
-\fBdevnode\fR
-.ad
-.RS 12n
-Value of the device node. This attribute is for character device files and
-block device files only.
-.RE
-
-.sp
-.ne 2
-.na
-\fBdirmtime\fR
-.ad
-.RS 12n
-Modification time in seconds since 00:00:00 UTC, January 1, 1970 for
-directories.
-.RE
-
-.sp
-.ne 2
-.na
-\fBgid\fR
-.ad
-.RS 12n
-Numerical group ID of the owner of this entry.
-.RE
-
-.sp
-.ne 2
-.na
-\fBlnmtime\fR
-.ad
-.RS 12n
-Creation time for links.
-.RE
-
-.sp
-.ne 2
-.na
-\fBmode\fR
-.ad
-.RS 12n
-Octal number that represents the permissions of the file.
-.RE
-
-.sp
-.ne 2
-.na
-\fBmtime\fR
-.ad
-.RS 12n
-Modification time in seconds since 00:00:00 UTC, January 1, 1970 for files.
-.RE
-
-.sp
-.ne 2
-.na
-\fBsize\fR
-.ad
-.RS 12n
-File size in bytes.
-.RE
-
-.sp
-.ne 2
-.na
-\fBtype\fR
-.ad
-.RS 12n
-Type of file.
-.RE
-
-.sp
-.ne 2
-.na
-\fBuid\fR
-.ad
-.RS 12n
-Numerical user ID of the owner of this entry.
-.RE
-
-.RE
-
-.sp
-.LP
-The following default output shows the attribute differences for the
-\fB/etc/passwd\fR file. The output indicates that the \fBsize\fR, \fBmtime\fR,
-and \fBcontents\fR attributes have changed.
-.sp
-.in +2
-.nf
-/etc/passwd:
- size control:74 test:81
- mtime control:3c165879 test:3c165979
- contents control:daca28ae0de97afd7a6b91fde8d57afa
-test:84b2b32c4165887355317207b48a6ec7
-.fi
-.in -2
-.sp
-
-.SS "Programmatic Format"
-.sp
-.in +2
-.nf
-\fIfilename\fR \fIattribute\fR \fIcontrol-val\fR \fItest-val\fR [\fIattribute\fR \fIcontrol-val\fR \fItest-val\fR]*
-.fi
-.in -2
-.sp
-
-.sp
-.ne 2
-.na
-\fB\fIfilename\fR\fR
-.ad
-.sp .6
-.RS 4n
-Same as \fIfilename\fR in the default format.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIattribute\fR \fIcontrol-val\fR \fItest-val\fR\fR
-.ad
-.sp .6
-.RS 4n
-A description of the file attributes that differ between the control and test
-manifests for each file. Each entry includes the attribute value from each
-manifest. See \fBbart_manifest\fR(4) for the definition of the attributes.
-.RE
-
-.sp
-.LP
-Each line of the programmatic output describes all attribute differences for a
-single file.
-.sp
-.LP
-The following programmatic output shows the attribute differences for the
-\fB/etc/passwd\fR file. The output indicates that the \fBsize\fR, \fBmtime\fR,
-and \fBcontents\fR attributes have changed.
-.sp
-.in +2
-.nf
-/etc/passwd size 74 81 mtime 3c165879 3c165979
-contents daca28ae0de97afd7a6b91fde8d57afa 84b2b32c4165887355317207b48a6ec7
-.fi
-.in -2
-.sp
-
-.SH EXIT STATUS
-.SS "Manifest Generator"
-.sp
-.LP
-The manifest generator returns the following exit values:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 6n
-Success
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB1\fR\fR
-.ad
-.RS 6n
-Non-fatal error when processing files; for example, permission problems
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB>1\fR\fR
-.ad
-.RS 6n
-Fatal error; for example, invalid command-line options
-.RE
-
-.SS "Report Tool"
-.sp
-.LP
-The report tool returns the following exit values:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 6n
-No discrepancies reported
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB1\fR\fR
-.ad
-.RS 6n
-Discrepancies found
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB>1\fR\fR
-.ad
-.RS 6n
-Fatal error executing comparison
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRCreating a Default Manifest Without Computing Checksums
-.sp
-.LP
-The following command line creates a default manifest, which consists of all
-files in the \fB/\fR file system. The \fB-n\fR option prevents computation of
-checksums, which causes the manifest to be generated more quickly.
-
-.sp
-.in +2
-.nf
-bart create -n
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRCreating a Manifest for a Specified Subtree
-.sp
-.LP
-The following command line creates a manifest that contains all files in the
-\fB/home/nickiso\fR subtree.
-
-.sp
-.in +2
-.nf
-bart create -R /home/nickiso
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRCreating a Manifest by Using Standard Input
-.sp
-.LP
-The following command line uses output from the \fBfind\fR(1) command to
-generate the list of files to be cataloged. The \fBfind\fR output is used as
-input to the \fBbart create\fR command that specifies the \fB-I\fR option.
-
-.sp
-.in +2
-.nf
-find /home/nickiso -print | bart create -I
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 4 \fRCreating a Manifest by Using a Rules File
-.sp
-.LP
-The following command line uses a rules file, \fBrules\fR, to specify the files
-to be cataloged.
-
-.sp
-.in +2
-.nf
-bart create -r rules
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 5 \fRComparing Two Manifests and Generating Programmatic Output
-.sp
-.LP
-The following command line compares two manifests and produces output suitable
-for parsing by a program.
-
-.sp
-.in +2
-.nf
-bart compare -p manifest1 manifest2
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 6 \fRComparing Two Manifests and Specifying Attributes to Ignore
-.sp
-.LP
-The following command line compares two manifests. The \fBdirmtime\fR,
-\fBlnmtime\fR, and \fBmtime\fR attributes are not compared.
-
-.sp
-.in +2
-.nf
-bart compare -i dirmtime,lnmtime,mtime manifest1 manifest2
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 7 \fRComparing Two Manifests by Using a Rules File
-.sp
-.LP
-The following command line uses a rules file, \fBrules\fR, to compare two
-manifests.
-
-.sp
-.in +2
-.nf
-bart compare -r rules manifest1 manifest2
-.fi
-.in -2
-.sp
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBcksum\fR(1), \fBdigest\fR(1), \fBfind\fR(1), \fBbart_manifest\fR(4),
-\fBbart_rules\fR(4), \fBattributes\fR(5)
-.SH NOTES
-.sp
-.LP
-The file attributes of certain system libraries can be temporarily altered by
-the system as it boots. To avoid triggering false warnings, you should compare
-manifests only if they were both created with the system in the same state;
-that is, if both were created in single-user or both in multi-user.
diff --git a/usr/src/man/man1m/beadm.1m b/usr/src/man/man1m/beadm.1m
deleted file mode 100644
index dd544d7a24..0000000000
--- a/usr/src/man/man1m/beadm.1m
+++ /dev/null
@@ -1,932 +0,0 @@
-'\" te
-.\" Copyright 2013 Nexenta Systems, Inc. All rights reserved.
-.\" Copyright 2016 Toomas Soome <tsoome@me.com>
-.\" Copyright 2021 OmniOS Community Edition (OmniOSce) Association.
-.TH BEADM 1M "Oct 20, 2021"
-.SH NAME
-beadm \- utility for managing zfs boot environments
-.SH SYNOPSIS
-.nf
-\fBbeadm\fR \fBcreate\fR [\fB-a\fR | \fB-t\fR] [\fB-d\fR \fIdescription\fR]
- [\fB-e\fR \fInon-activeBeName\fR | \fIbeName@snapshot\fR]
- [\fB-o\fR \fIproperty=value\fR] ... [\fB-p\fR \fIzpool\fR]
- [\fB-v\fR] \fIbeName\fR
-.fi
-
-.LP
-.nf
-\fBbeadm\fR \fBcreate\fR [\fB-v\fR] \fIbeName@snapshot\fR
-.fi
-
-.LP
-.nf
-\fBbeadm\fR \fBdestroy\fR [\fB-fFsv\fR] \fIbeName\fR | \fIbeName@snapshot\fR
-.fi
-
-.LP
-.nf
-\fBbeadm\fR \fBlist\fR [\fB-a\fR | \fB-ds\fR] [\fB-H\fR]
- [\fB-k\fR|\fB-K\fR \fBdate\fR | \fBname\fR | \fBspace\fR] [\fB-v\fR] [\fIbeName\fR]
-.fi
-
-.LP
-.nf
-\fBbeadm\fR \fBmount\fR [\fB-s\fR \fBro\fR|\fBrw\fR] [\fB-v\fR] \fIbeName\fR \fImountpoint\fR
-.fi
-
-.LP
-.nf
-\fBbeadm\fR \fBunmount\fR [\fB-fv\fR] \fIbeName\fR | \fImountpoint\fR
-.fi
-
-.LP
-.nf
-\fBbeadm\fR \fBrename\fR [\fB-v\fR] \fIbeName\fR \fInewBeName\fR
-.fi
-
-.LP
-.nf
-\fBbeadm\fR \fBactivate\fR [\fB-v\fR] [\fB-t\fR | \fB-T\fR] \fIbeName\fR
-.fi
-
-.LP
-.nf
-\fBbeadm\fR \fBrollback\fR [\fB-v\fR] \fIbeName\fR \fIsnapshot\fR
-.fi
-
-.LP
-.nf
-\fBbeadm\fR \fBrollback\fR [\fB-v\fR] \fIbeName@snapshot\fR
-.fi
-
-.SH DESCRIPTION
-The \fBbeadm\fR command is the user interface for managing zfs Boot
-Environments (BEs). This utility is intended to be used by System
-Administrators who want to manage multiple Solaris Instances on a single
-system.
-.sp
-The \fBbeadm\fR command supports the following operations:
-.RS +4
-.TP
-.ie t \(bu
-.el -
-Create a new BE, based on the active BE.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el -
-Create a new BE, based on an inactive BE.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el -
-Create a snapshot of an existing BE.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el -
-Create a new BE, based on an existing snapshot.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el -
-Create a new BE, and copy it to a different zpool.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el -
-Activate an existing, inactive BE.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el -
-Mount a BE.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el -
-Unmount a BE.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el -
-Destroy a BE.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el -
-Destroy a snapshot of a BE.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el -
-Rename an existing, inactive BE.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el -
-Roll back a BE to an existing snapshot of a BE.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el -
-Display information about your snapshots and datasets.
-.RE
-
-.SH SUBCOMMANDS
-The \fBbeadm\fR command has the subcommands and options listed
-below. Also see
-EXAMPLES below.
-.sp
-.ne 2
-.na
-\fBbeadm\fR
-.ad
-.sp .6
-.RS 4n
-Lists information for all boot environments. See \fBbeadm\fR \fBlist\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBbeadm\fR \fBcreate\fR [\fB-a\fR | \fB-t\fR] [\fB-d\fR \fIdescription\fR]
- [\fB-e\fR \fInon-activeBeName\fR | \fIbeName@snapshot\fR]
- [\fB-o\fR \fIproperty=value\fR] ... [\fB-p\fR \fIzpool\fR]
- [\fB-v\fR] \fIbeName\fR
-
-.ad
-.sp .6
-.RS 4n
-Creates a new boot environment named \fIbeName\fR. If the \fB-e\fR option is
-not
-provided, the new boot environment will be created as a clone of the
-currently
-running boot environment. If the \fB-d\fR option is provided then the
-description is
-also used as the title for the BE's entry in the boot menu. If the \fB-d\fR
-option is not provided, \fIbeName\fR will be used as the title.
-.sp
-.ne 2
-.na
-\fB-a\fR
-.ad
-.sp .6
-.RS 4n
-Activate the newly created BE. The default is to not activate
-the newly created BE. See also \fB-t\fR.
-.RE
-.sp
-.ne 2
-.na
-\fB-d\fR \fIdescription\fR
-.ad
-.sp .6
-.RS 4n
-Create a new BE with a description associated with it.
-.RE
-.sp
-.ne 2
-.na
-\fB-e\fR \fInon-activeBeName\fR
-.ad
-.sp .6
-.RS 4n
-Create a new BE from an existing inactive BE.
-.RE
-.sp
-.ne 2
-.na
-\fB-e\fR \fIbeName@snapshot\fR
-.ad
-.sp .6
-.RS 4n
-Create a new BE from an existing snapshot of the BE named beName.
-.RE
-.sp
-.ne 2
-.na
-\fB-o\fR \fIproperty=value\fR
-.ad
-.sp .6
-.RS 4n
-Create the datasets for new BE with specific ZFS properties. Multiple
-\fB-o\fR
-options can be specified. See \fBzfs\fR(1M) for more information on
-the
-\fB-o\fR option.
-.RE
-.sp
-.ne 2
-.na
-\fB-p\fR \fIzpool\fR
-.ad
-.sp .6
-.RS 4n
-Create the new BE in the specified zpool. If this is not provided, the
-default
-behavior is to create the new BE in the same pool as as the origin BE.
-This option is not supported in non-global zone.
-.RE
-.ne 2
-.na
-\fB-t\fR
-.ad
-.sp .6
-.RS 4n
-Temporarily activate the newly created BE. The new BE will be
-used for the next boot only and the temporary activation will be automatically
-removed. The default is to not activate the newly created BE. See also
-\fB-a\fR.
-.RE
-.sp
-.ne 2
-.na
-\fB-v\fR
-.ad
-.sp .6
-.RS 4n
-Verbose mode. Displays verbose error messages from \fBbeadm\fR.
-.RE
-.RE
-
-.sp
-.ne 2
-.na
-\fBbeadm\fR \fBcreate\fR [\fB-v\fR] \fIbeName@snapshot\fR
-.ad
-.sp .6
-.RS 4n
-Creates a snapshot of the existing BE named beName.
-.sp
-.ne 2
-.na
-\fB-v\fR
-.ad
-.sp .6
-.RS 4n
-Verbose mode. Displays verbose error messages from \fBbeadm\fR.
-.RE
-.RE
-
-.sp
-.ne 2
-.na
-\fBbeadm\fR \fBdestroy\fR [\fB-fFsv\fR] \fIbeName\fR | \fIbeName@snapshot\fR
-.ad
-.sp .6
-.RS 4n
-Destroys the boot environment named \fIbeName\fR or destroys an existing
-snapshot of
-the boot environment named \fIbeName@snapshot\fR. Destroying a
-boot environment
-will also destroy all snapshots of that boot environment. Use
-this command
-with caution.
-.sp
-.ne 2
-.na
-\fB-f\fR
-.ad
-.sp .6
-.RS 4n
-Forcefully unmount the boot environment if it is currently mounted.
-.RE
-.sp
-.ne 2
-.na
-\fB-F\fR
-.ad
-.sp .6
-.RS 4n
-Force the action without prompting to verify the destruction of the boot
-environment.
-.RE
-.sp
-.ne 2
-.na
-\fB-s\fR
-.ad
-.sp .6
-.RS 4n
-Destroy all snapshots of the boot
-environment.
-.RE
-.sp
-.ne 2
-.na
-\fB-v\fR
-.ad
-.sp .6
-.RS 4n
-Verbose mode. Displays verbose error messages from \fBbeadm\fR.
-.RE
-.RE
-
-.sp
-.ne 2
-.na
-\fBbeadm\fR \fBlist\fR [\fB-a\fR | \fB-ds\fR] [\fB-H\fR]
- [\fB-k\fR|\fB-K\fR \fBdate\fR | \fBname\fR | \fBspace\fR] [\fB-v\fR] [\fIbeName\fR]
-.ad
-.sp .6
-.RS 4n
-Lists information about the existing boot environment named \fIbeName\fR, or
-lists
-information for all boot environments if \fIbeName\fR is not provided.
-The 'Active'
-field indicates whether the boot environment is active now,
-represented
-by 'N'; active on reboot, represented by 'R'; or both, represented
-by 'NR'. If temporary next boot configuration is used, the boot environment
-is marked with 'T'.
-In non-global zone the 'Active' field also indicates whether the
-boot environment has a non-active parent BE, represented by 'x'; is active
-on boot in a non-active parent BE, represented by 'b'. Activate, rollback
-and snapshot operations for boot environments from non-active global parent
-BE aren't supported, destroy is allowed if these boot environments aren't
-active on boot.
-.sp
-Each line in the machine parsable output has the boot environment name as the
-first field. The 'Space' field is displayed in bytes and the 'Created' field
-is displayed in UTC format. The \fB-H\fR option used with no other options
-gives
-the boot environment's uuid in the second field. This field will be
-blank if
-the boot environment does not have a uuid. See the EXAMPLES section.
-In non-global zones, this field shows the uuid of the parent BE.
-.sp
-.ne 2
-.na
-\fB-a\fR
-.ad
-.sp .6
-.RS 4n
-Lists all available information about the boot environment. This includes
-subordinate file systems and snapshots.
-.RE
-.sp
-.ne 2
-.na
-\fB-d\fR
-.ad
-.sp .6
-.RS 4n
-Lists information about all subordinate file systems belonging to the boot
-environment.
-.RE
-.sp
-.ne 2
-.na
-\fB-s\fR
-.ad
-.sp .6
-.RS 4n
-Lists information about the snapshots of the boot environment.
-.RE
-.sp
-.ne 2
-.na
-\fB-H\fR
-.ad
-.sp .6
-.RS 4n
-Do not list header information. Each field in the list information is
-separated by a semicolon.
-.RE
-.sp
-.ne 2
-.na
-\fB-k\fR \fBdate\fR
-.ad
-.sp .6
-.RS 4n
-Sort BEs by date of creation in ascending order. This is default.
-.RE
-.sp
-.ne 2
-.na
-\fB-k\fR \fBname\fR
-.ad
-.sp .6
-.RS 4n
-Lexical sort of BEs by name in ascending order.
-.RE
-.sp
-.ne 2
-.na
-\fB-k\fR \fBspace\fR
-.ad
-.sp .6
-.RS 4n
-Sort BEs by space in ascending order.
-.RE
-.sp
-.ne 2
-.na
-\fB-K date\fR | \fBname\fR | \fBspace\fR
-.ad
-.sp .6
-.RS 4n
-Same as the \fB-k\fR option, but sorts in descending order.
-.RE
-.sp
-.ne 2
-.na
-\fB-v\fR
-.ad
-.sp .6
-.RS 4n
-Verbose mode. Displays verbose error messages from \fBbeadm\fR.
-.RE
-.RE
-
-.sp
-.ne 2
-.na
-\fBbeadm\fR \fBmount\fR [\fB-s\fR \fBro\fR|\fBrw\fR] [\fB-v\fR] \fIbeName\fR \fImountpoint\fR
-.ad
-.sp .6
-.RS 4n
-Mounts a boot environment named beName at mountpoint. mountpoint must be an
-already existing empty directory.
-.sp
-.ne 2
-.na
-\fB-s\fR \fBro\fR|\fBrw\fR
-.ad
-.sp .6
-.RS 4n
-Mount the shared filesystems of the BE in read-only or read-write mode.
-.RE
-.sp
-.ne 2
-.na
-\fB-v\fR
-.ad
-.sp .6
-.RS 4n
-Verbose mode. Displays verbose error messages from \fBbeadm\fR.
-.RE
-.RE
-
-.sp
-.ne 2
-.na
-\fBbeadm\fR \fBunmount\fR [\fB-fv\fR] \fIbeName\fR | \fImountpoint\fR
-.ad
-.sp .6
-.RS 4n
-Unmounts the boot environment named beName. The command can also be given a path to a
-beName mount point on the system.
-.sp
-.ne 2
-.na
-\fB-f\fR
-.ad
-.sp .6
-.RS 4n
-Forcefully unmount the boot environment even if its currently busy.
-.RE
-.sp
-.ne 2
-.na
-\fB-v\fR
-.ad
-.sp .6
-.RS 4n
-Verbose mode. Displays verbose error messages from \fBbeadm\fR.
-.RE
-.RE
-
-.sp
-.ne 2
-.na
-\fBbeadm\fR \fBrename\fR [\fB-v\fR] \fIbeName\fR \fInewBeName\fR
-.ad
-.sp .6
-.RS 4n
-Renames the boot environment named \fIbeName\fR to \fInewBeName\fR.
-.sp
-.ne 2
-.na
-\fB-v\fR
-.ad
-.sp .6
-.RS 4n
-Verbose mode. Displays verbose error messages from \fBbeadm\fR.
-.RE
-.RE
-
-.sp
-.ne 2
-.na
-\fBbeadm\fR \fBrollback\fR [\fB-v\fR] \fIbeName\fR \fIsnapshot\fR | \fIbeName@snapshot\fR
-.ad
-.sp .6
-.RS 4n
-Roll back the boot environment named \fIbeName\fR to existing snapshot
-of the boot environment named \fIbeName@snapshot\fR.
-.sp
-.ne 2
-.na
-\fB-v\fR
-.ad
-.sp .6
-.RS 4n
-Verbose mode. Displays verbose error messages from \fBbeadm\fR.
-.RE
-.RE
-
-.sp
-.ne 2
-.na
-\fBbeadm\fR \fBactivate\fR [\fB-v\fR] [\fB-t\fR | \fB-T\fR] \fIbeName\fR
-.ad
-.sp .6
-.RS 4n
-Makes beName the active BE on next reboot.
-.sp
-.ne 2
-.na
-\fB-t\fR
-.ad
-.sp .6
-.RS 4n
-Sets temporary, one time activation. For next boot, the \fIbeName\fR
-is used for boot, and the temporary activation is removed.
-When temporary activation is removed, the next boot will use zfs dataset
-specified in boot pool \fIbootfs\fR property.
-.RE
-
-.sp
-.ne 2
-.na
-\fB-T\fR
-.ad
-.sp .6
-.RS 4n
-Removes temporary next boot configuration of \fIbeName\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB-v\fR
-.ad
-.sp .6
-.RS 4n
-Verbose mode. Displays verbose error messages from \fBbeadm\fR.
-.RE
-.RE
-
-.SH ALTERNATE BE LOCATION
-The alternate BE location outside rpool/ROOT can be configured
-by modifying the BENAME_STARTS_WITH parameter in /etc/default/be.
-For example: BENAME_STARTS_WITH=rootfs
-
-.SH EXAMPLES
-\fBExample 1\fR: Create a new BE named BE1, by cloning the current live BE.
-.sp
-.in +2
-.nf
-\fB# beadm create BE1\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2\fR: Create a new BE named BE2, by cloning the existing inactive
-BE
-named BE1.
-.sp
-.in +2
-.nf
-\fB# beadm create -e BE1 BE2\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3\fR: Create a snapshot named now of the existing BE named BE1.
-.sp
-.in +2
-.nf
-\fB# beadm create BE1@now\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 4\fR: Create a new BE named BE3, by cloning an existing snapshot of
-BE1.
-.sp
-.in +2
-.nf
-\fB# beadm create -e BE1@now BE3\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 5\fR: Create a new BE named BE4 based on the currently running BE.
-Create the new BE in rpool2.
-.sp
-.in +2
-.nf
-\fB# beadm create -p rpool2 BE4\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 6\fR: Create a new BE named BE5 based on the currently running BE.
-Create the new BE in rpool2, and create its datasets with compression turned
-on.
-.sp
-.in +2
-.nf
-\fB# beadm create -p rpool2 -o compression=on BE5\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 7\fR: Create a new BE named BE6 based on the currently running BE
-and provide a description for it.
-.sp
-.in +2
-.nf
-\fB# beadm create -d "BE6 used as test environment" BE6\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 8\fR: Activate an existing, inactive BE named BE3.
-.sp
-.in +2
-.nf
-\fB# beadm activate BE3\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 9\fR: Mount the BE named BE3 at /mnt.
-.sp
-.in +2
-.nf
-\fB# beadm mount BE3 /mnt\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 10\fR: Unmount the mounted BE named BE3.
-.sp
-.in +2
-.nf
-\fB# beadm unmount BE3\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 11\fR: Destroy the BE named BE3 without verification.
-.sp
-.in +2
-.nf
-\fB# beadm destroy -f BE3\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 12\fR: Destroy the snapshot named now of BE1.
-.sp
-.in +2
-.nf
-\fB# beadm destroy BE1@now\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 13\fR: Rename the existing, inactive BE named BE1 to BE3.
-.sp
-.in +2
-.nf
-\fB# beadm rename BE1 BE3\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 14\fR: Roll back the BE named BE1 to snapshot BE1@now.
-.sp
-.in +2
-.nf
-\fB# beadm rollback BE1 BE1@now\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 15\fR: List all existing boot environments.
-
-.sp
-.in +2
-.nf
-\fB# beadm list\fR
-BE Active Mountpoint Space Policy Created
--- ------ ---------- ----- ------ -------
-BE2 - - 72.0K static 2008-05-21 12:26
-BE3 - - 332.0K static 2008-08-26 10:28
-BE4 - - 15.78M static 2008-09-05 18:20
-BE5 NR / 7.25G static 2008-09-09 16:53
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 16\fR: List all existing boot environmets and list all dataset and
-snapshot information about those bootenvironments.
-
-.sp
-.in +2
-.nf
-\fB# beadm list -d -s\fR
-
-BE/Dataset/Snapshot Active Mountpoint Space Policy Created
-------------------- ------ ---------- ----- ------ -------
-BE2
- p/ROOT/BE2 - - 36.0K static 2008-05-21 12:26
- p/ROOT/BE2/opt - - 18.0K static 2008-05-21 16:26
- p/ROOT/BE2/opt@now - - 0 static 2008-09-08 22:43
- p/ROOT/BE2@now - - 0 static 2008-09-08 22:43
-BE3
- p/ROOT/BE3 - - 192.0K static 2008-08-26 10:28
- p/ROOT/BE3/opt - - 86.0K static 2008-08-26 10:28
- p/ROOT/BE3/opt/local - - 36.0K static 2008-08-28 10:58
-BE4
- p/ROOT/BE4 - - 15.78M static 2008-09-05 18:20
-BE5
- p/ROOT/BE5 NR / 6.10G static 2008-09-09 16:53
- p/ROOT/BE5/opt - /opt 24.55M static 2008-09-09 16:53
- p/ROOT/BE5/opt@bar - - 18.38M static 2008-09-10 00:59
- p/ROOT/BE5/opt@foo - - 18.38M static 2008-06-10 16:37
- p/ROOT/BE5@bar - - 139.44M static 2008-09-10 00:59
- p/ROOT/BE5@foo - - 912.85M static 2008-06-10 16:37
-.fi
-.in -2
-.sp
-
-\fBExample 17\fR: List all dataset and snapshot information about BE5
-
-.sp
-.in +2
-.nf
-\fB# beadm list -a BE5\fR
-
-BE/Dataset/Snapshot Active Mountpoint Space Policy Created
-------------------- ------ ---------- ----- ------ -------
-BE5
- p/ROOT/BE5 NR / 6.10G static 2008-09-09 16:53
- p/ROOT/BE5/opt - /opt 24.55M static 2008-09-09 16:53
- p/ROOT/BE5/opt@bar - - 18.38M static 2008-09-10 00:59
- p/ROOT/BE5/opt@foo - - 18.38M static 2008-06-10 16:37
- p/ROOT/BE5@bar - - 139.44M static 2008-09-10 00:59
- p/ROOT/BE5@foo - - 912.85M static 2008-06-10 16:37
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 18\fR: List machine parsable information about all boot
-environments.
-
-.sp
-.in +2
-.nf
-\fB# beadm list -H\fR
-
-BE2;;;;55296;static;1211397974
-BE3;;;;339968;static;1219771706
-BE4;;;;16541696;static;1220664051
-BE5;215b8387-4968-627c-d2d0-f4a011414bab;NR;/;7786206208;static;1221004384
-.fi
-.in -2
-.sp
-.LP
-\fBExample 19\fR: Create and list temporary activation.
-
-.sp
-.in +2
-.nf
-\fB# beadm list\fR
-BE Active Mountpoint Space Policy Created
--- ------ ---------- ----- ------ -------
-BE2 - - 4,85M static 2016-10-30 14:29
-BE3 - - 4,84M static 2016-10-30 18:53
-BE4 - - 5,54M static 2016-10-30 23:53
-BE5 NR / 12,6G static 2016-11-06 01:46
-\fB# beadm create BE6\fR
-\fB# beadm activate -t BE6\fR
-\fB# beadm list\fR
-BE Active Mountpoint Space Policy Created
--- ------ ---------- ----- ------ -------
-BE2 - - 4,85M static 2016-10-30 14:29
-BE3 - - 4,84M static 2016-10-30 18:53
-BE4 - - 5,54M static 2016-10-30 23:53
-BE5 NR / 60,0K static 2016-11-06 01:46
-BE6 T - 12,6G static 2016-11-06 12:56
-.fi
-.in -2
-.sp
-
-.SH EXIT STATUS
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB0\fR
-.ad
-.sp .6
-.RS 4n
-Successful completion
-.RE
-
-.sp
-.ne 2
-.na
-\fB>0\fR
-.ad
-.sp .6
-.RS 4n
-Failure
-.RE
-
-
-.SH FILES
-.ne 2
-.na
-\fB/var/log/beadm/<beName>/create.log.<yyyymmdd_hhmmss>\fR
-.ad
-.sp .6
-.RS 4n
-Log used for capturing beadm create output
-.sp
-.nf
-\fIyyyymmdd_hhmmss\fR - 20071130_140558
-\fIyy\fR - year; 2007
-\fImm\fR - month; 11
-\fIdd\fR - day; 30
-\fIhh\fR - hour; 14
-\fImm\fR - minute; 05
-\fIss\fR - second; 58
-.fi
-.in -2
-.sp
-.RE
-.sp
-.LP
-.ne 2
-.na
-\fB/etc/default/be\fR
-.ad
-.sp .6
-.RS 4n
-Contains default value for BENAME_STARTS_WITH parameter
-.sp
-.RE
-
-.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Uncommitted
-.TE
-
-
-.SH SEE ALSO
-.BR zfs (1M)
diff --git a/usr/src/man/man1m/bhyve.1m b/usr/src/man/man1m/bhyve.1m
deleted file mode 100644
index 689c34fdb3..0000000000
--- a/usr/src/man/man1m/bhyve.1m
+++ /dev/null
@@ -1,837 +0,0 @@
-.\" Copyright (c) 2013 Peter Grehan
-.\" All rights reserved.
-.\"
-.\" Redistribution and use in source and binary forms, with or without
-.\" modification, are permitted provided that the following conditions
-.\" are met:
-.\" 1. Redistributions of source code must retain the above copyright
-.\" notice, this list of conditions and the following disclaimer.
-.\" 2. Redistributions in binary form must reproduce the above copyright
-.\" notice, this list of conditions and the following disclaimer in the
-.\" documentation and/or other materials provided with the distribution.
-.\"
-.\" THIS SOFTWARE IS PROVIDED BY THE AUTHORS AND CONTRIBUTORS ``AS IS'' AND
-.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHORS OR CONTRIBUTORS BE LIABLE
-.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
-.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
-.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-.\" SUCH DAMAGE.
-.\"
-.\" Portions Copyright 2022 OmniOS Community Edition (OmniOSce) Association.
-.\"
-.Dd February 26, 2022
-.Dt BHYVE 1M
-.Os
-.Sh NAME
-.Nm bhyve
-.Nd "run a guest operating system inside a virtual machine"
-.Sh SYNOPSIS
-.Nm
-.Op Fl aCDdeHhPSuWwxY
-.Oo
-.Sm off
-.Fl c\~
-.Oo
-.Op Cm cpus=
-.Ar numcpus
-.Oc
-.Op Cm ,sockets= Ar n
-.Op Cm ,cores= Ar n
-.Op Cm ,threads= Ar n
-.Oc
-.Sm on
-.Oo
-.Sm off
-.Fl G\~
-.Oo Ar w Oc
-.Oo Ar bind_address Cm \&: Oc
-.Ar port
-.Oc
-.Sm on
-.Oo Fl B
-.Sm off
-.Ar type Ns \&,
-.Op Ar key Ns = Ns Ar value
-.Oo \&, Ns Ar key Ns = Ns Ar value Ns Oc \&...
-.Oc
-.Sm on
-.Op Fl k Ar config_file
-.Oo Fl l
-.Sm off
-.Ar lpcdev Op Cm \&, Ar conf
-.Sm on
-.Oc
-.Sm off
-.Oo Fl m\~
-.Ar memsize
-.Oo
-.Cm K | k | M | m | G | g | T | t
-.Oc
-.Sm on
-.Oc
-.Op Fl o Ar var Ns Cm = Ns Ar value
-.Op Fl r Ar file
-.Sm off
-.Oo Fl s\~
-.Ar slot Cm \&, Ar emulation Op Cm \&, Ar conf
-.Sm on
-.Oc
-.Op Fl U Ar uuid
-.Ar vmname
-.Nm
-.Fl l Cm help
-.Nm
-.Fl s Cm help
-.Sh DESCRIPTION
-.Nm
-is a hypervisor that runs guest operating systems inside a
-virtual machine.
-.Pp
-Parameters such as the number of virtual CPUs, amount of guest memory, and
-I/O connectivity can be specified with command-line parameters.
-.Pp
-.Nm
-runs until the guest operating system reboots or an unhandled hypervisor
-exit is detected.
-.Sh OPTIONS
-.Bl -tag -width 10n
-.It Fl a
-The guest's local APIC is configured in xAPIC mode.
-The xAPIC mode is the default setting so this option is redundant.
-It will be deprecated in a future version.
-.It Xo
-.Fl B
-.Sm off
-.Ar type Ns \&,
-.Op Ar key Ns = Ns Ar value
-.Oo \&, Ns Ar key Ns = Ns Ar value Ns Oc \&...
-.Sm on
-.Xc
-Configure smbios data.
-.Ar type
-must be set to
-.Sy 1 .
-Supported keys are:
-.Sy manufacturer ,
-.Sy product ,
-.Sy version ,
-.Sy serial ,
-.Sy sku ,
-.Sy family
-and
-.Sy uuid .
-.It Xo Fl c
-.Sm off
-.Op Oo Cm cpus= Oc Ar numcpus
-.Op Cm ,sockets= Ar n
-.Op Cm ,cores= Ar n
-.Op Cm ,threads= Ar n
-.Xc
-.Sm on
-Number of guest virtual CPUs
-and/or the CPU topology.
-The default value for each of
-.Ar numcpus ,
-.Ar sockets ,
-.Ar cores ,
-and
-.Ar threads
-is 1.
-The current maximum number of guest virtual CPUs is 32.
-If
-.Ar numcpus
-is not specified then it will be calculated from the other arguments.
-The topology must be consistent in that the
-.Ar numcpus
-must equal the product of
-.Ar sockets ,
-.Ar cores ,
-and
-.Ar threads .
-If a
-.Ar setting
-is specified more than once the last one has precedence.
-.It Fl C
-Include guest memory in core file.
-.It Fl D
-Destroy the VM on guest initiated power-off.
-.It Fl d
-Suspend CPUs at boot.
-.It Fl e
-Force
-.Nm
-to exit when a guest issues an access to an I/O port that is not emulated.
-This is intended for debug purposes.
-.It Fl G Xo
-.Sm off
-.Oo Ar w Oc
-.Oo Ar bind_address Cm \&: Oc
-.Ar port
-.Sm on
-.Xc
-Start a debug server that uses the GDB protocol to export guest state to a
-debugger.
-An IPv4 TCP socket will be bound to the supplied
-.Ar bind_address
-and
-.Ar port
-to listen for debugger connections.
-Only a single debugger may be attached to the debug server at a time.
-If the option begins with
-.Sq w ,
-.Nm
-will pause execution at the first instruction waiting for a debugger to attach.
-.It Fl H
-Yield the virtual CPU thread when a HLT instruction is detected.
-If this option is not specified, virtual CPUs will use 100% of a host CPU.
-.It Fl h
-Print help message and exit.
-.It Fl k Ar config_file
-Set configuration variables from a simple, key-value config file.
-Each line of the config file is expected to consist of a config variable
-name, an equals sign
-.Pq Sq = ,
-and a value.
-No spaces are permitted between the variable name, equals sign, or
-value.
-Blank lines and lines starting with
-.Sq #
-are ignored.
-See
-.Xr bhyve_config 4
-for more details.
-.It Fl l Cm help
-Print a list of supported LPC devices.
-.It Fl l Ar lpcdev Ns Op \&, Ns Ar conf
-Allow devices behind the LPC PCI-ISA bridge to be configured.
-The only supported devices are the TTY-class devices
-.Cm com1 , com2 , com3
-and
-.Cm com4 ,
-the boot ROM device
-.Cm bootrom ,
-and the debug/test device
-.Cm pc-testdev .
-.Pp
-The possible values for the
-.Ar conf
-argument are listed in the
-.Fl s
-flag description.
-.It Xo
-.Fl m Ar memsize Ns Oo
-.Sm off
-.Cm K | k | M | m | G | g | T | t
-.Sm on
-.Oc
-.Xc
-Set the guest physical memory size.
-The size argument may be suffixed with one of
-.Cm K , M , G
-or
-.Cm T
-.Pq either upper or lower case
-to indicate a multiple of kibibytes, mebibytes, gibibytes, or tebibytes.
-If no suffix is given, the value is assumed to be in mebibytes.
-.Pp
-The default is 256MiB.
-.It Fl o Ar var Ns Cm = Ns Ar value
-Set the configuration variable
-.Ar var
-to
-.Ar value .
-.It Fl P
-Force the guest virtual CPU to exit when a PAUSE instruction is detected.
-.It Fl S
-Wire guest memory.
-.It Fl s Cm help
-Print a list of supported PCI devices.
-.It Fl s Ar slot Ns Cm \&, Ns Ar emulation Ns Op Cm \&, Ns Ar conf
-Configure a virtual PCI slot and function.
-.Pp
-.Nm
-provides PCI bus emulation and virtual devices that can be attached to
-slots on the bus.
-There are 32 available slots, with the option of providing up to 8 functions
-per slot.
-.Pp
-The
-.Ar slot
-can be specified in one of the following formats:
-.Pp
-.Bl -bullet -compact
-.It
-.Ar pcislot
-.It
-.Sm off
-.Ar pcislot Cm \&: Ar function
-.Sm on
-.It
-.Sm off
-.Ar bus Cm \&: Ar pcislot Cm \&: Ar function
-.Sm on
-.El
-.Pp
-The
-.Ar pcislot
-value is 0 to 31.
-The optional
-.Ar function
-value is 0 to 7.
-The optional
-.Ar bus
-value is 0 to 255.
-If not specified, the
-.Ar function
-value defaults to 0.
-If not specified, the
-.Ar bus
-value defaults to 0.
-.Pp
-The
-.Ar emulation
-argument can be one of the following:
-.Bl -tag -width "amd_hostbridge"
-.It Cm hostbridge
-A simple host bridge.
-This is usually configured at slot 0, and is required by most guest
-operating systems.
-.It Cm amd_hostbridge
-Emulation identical to
-.Cm hostbridge
-but using a PCI vendor ID of AMD.
-.It Cm passthru
-PCI pass-through device.
-.It Cm virtio-net-viona
-Accelerated Virtio network interface.
-.It Cm virtio-net
-Legacy Virtio network interface.
-.It Cm virtio-blk
-Virtio block storage interface.
-.It Cm virtio-9p
-Virtio 9p (VirtFS) interface.
-.It Cm virtio-rnd
-Virtio random number generator interface.
-.It Cm virtio-console
-Virtio console interface, which exposes multiple ports
-to the guest in the form of simple char devices for simple IO
-between the guest and host userspaces.
-.It Cm ahci
-AHCI controller attached to arbitrary devices.
-.It Cm ahci-cd
-AHCI controller attached to an ATAPI CD/DVD.
-.It Cm ahci-hd
-AHCI controller attached to a SATA hard drive.
-.It Cm e1000
-Intel e82545 network interface.
-.It Cm uart
-PCI 16550 serial device.
-.It Cm lpc
-LPC PCI-ISA bridge with COM1, COM2, COM3, and COM4 16550 serial ports,
-a boot ROM, and, optionally, the debug/test device.
-The LPC bridge emulation can only be configured on bus 0.
-.It Cm fbuf
-Raw framebuffer device attached to VNC server.
-.It Cm xhci
-eXtensible Host Controller Interface (xHCI) USB controller.
-.It Cm nvme
-NVM Express (NVMe) controller.
-.El
-.Pp
-The optional parameter
-.Ar conf
-describes the backend for device emulations.
-If
-.Ar conf
-is not specified, the device emulation has no backend and can be
-considered unconnected.
-.Pp
-.Sy Host Bridge Devices
-.Bl -tag -width 10n
-.It Cm model Ns = Ns Ar model
-Specify a hostbridge model to emulate.
-Valid model strings, and their associated vendor and device IDs are:
-.Sy amd Pq 0x1022/0x7432 ,
-.Sy netapp Pq 0x1275/0x1275 ,
-.Sy i440fx Pq 0x8086/0x1237
-and
-.Sy q35 Pq 0x8086/0x29b0 .
-The default value of
-.Ar model
-is
-.Cm netapp .
-.It Cm vendor Ns = Ns Ar vendor
-PCI vendor ID.
-.It Cm devid Ns = Ns Ar devid
-PCI device ID.
-.El
-.Pp
-Providing extra configuration parameters for a host bridge is optional, but if
-parameters are provided then either
-.Va model
-by itself, or both of
-.Va vendor
-and
-.Va devid
-must be specified.
-.Pp
-.Sy Accelerated Virtio Network Backends :
-.Bl -tag -width 10n
-.It Oo Cm vnic Ns = Oc Ns Ar vnic Ns Oo , Ns Cm feature_mask Ns = Ns Ar mask Oc
-.Pp
-.Ar vnic
-is the name of a configured virtual NIC on the system.
-.Ar mask
-is applied to the virtio feature flags which are advertised to the guest.
-Bits set in the
-.Ar mask
-value are removed from the advertised features.
-.El
-.Pp
-.Sy Other Network Backends :
-.Bl -tag -width 10n
-.It Oo Cm vnic Ns = Oc Ns Ar vnic Ns Oo , Ns Ar network-backend-options Oc
-.Pp
-.Ar vnic
-is the name of a configured virtual NIC on the system.
-.El
-.Pp
-The
-.Ar network-backend-options
-are:
-.Bl -tag -width 8n
-.It Cm promiscphys
-Enable promiscuous mode at the physical level (default: false)
-.It Cm promiscsap
-Enable promiscuous mode at the SAP level (default: true)
-.It Cm promiscmulti
-Enable promiscuous mode for all multicast addresses (default: true)
-.It Cm promiscrxonly
-The selected promiscuous modes are only enabled for received traffic
-(default: true).
-.El
-.Pp
-.Sy Block storage device backends :
-.Sm off
-.Bl -bullet
-.It
-.Pa /filename Op Cm \&, Ar block-device-options
-.It
-.Pa /dev/xxx Op Cm \&, Ar block-device-options
-.El
-.Sm on
-.Pp
-The
-.Ar block-device-options
-are:
-.Bl -tag -width 10n
-.It Cm nocache
-Open the file with
-.Dv O_DIRECT .
-.It Cm direct
-Open the file using
-.Dv O_SYNC .
-.It Cm ro
-Force the file to be opened read-only.
-.It Cm sectorsize= Ns Ar logical Ns Oo Cm \&/ Ns Ar physical Oc
-Specify the logical and physical sector sizes of the emulated disk.
-The physical sector size is optional and is equal to the logical sector size
-if not explicitly specified.
-.It Cm nodelete
-Disable emulation of guest trim requests via
-.Dv DIOCGDELETE
-requests.
-.El
-.Pp
-.Sy 9P device backends :
-.Sm off
-.Bl -bullet
-.It
-.Ar sharename Cm = Ar /path/to/share Op Cm \&, Ar 9p-device-options
-.El
-.Sm on
-.Pp
-The
-.Ar 9p-device-options
-are:
-.Bl -tag -width 10n
-.It Cm ro
-Expose the share in read-only mode.
-.El
-.Pp
-.Sy TTY device backends :
-.Bl -tag -width 10n
-.It Cm stdio
-Connect the serial port to the standard input and output of
-the
-.Nm
-process.
-.It Pa /dev/xxx
-Use the host TTY device for serial port I/O.
-.El
-.Pp
-.Sy Boot ROM device backends :
-.Bl -tag -width 10n
-.It Pa romfile Ns Op Cm \&, Ns Ar varfile
-Map
-.Ar romfile
-in the guest address space reserved for boot firmware.
-If
-.Ar varfile
-is provided, that file is also mapped in the boot firmware guest
-address space, and any modifications the guest makes will be saved
-to that file.
-.El
-.Pp
-.Sy Pass-through device backends :
-.Bl -tag -width 10n
-.It Pa /dev/ppt Ns Ar N
-Connect to a PCI device on the host identified by the specified path.
-.El
-.Pp
-Guest memory must be wired using the
-.Fl S
-option when a pass-through device is configured.
-.Pp
-The host device must have been previously attached to the
-.Sy ppt
-driver.
-.Pp
-.Sy Virtio console device backends :
-.Bl -bullet
-.Sm off
-.It
-.Cm port1= Ns Ar /path/to/port1.sock Ns
-.Op Cm ,port Ns Ar N Cm \&= Ns Ar /path/to/port2.sock No \~ Ar ...
-.Sm on
-.El
-.Pp
-A maximum of 16 ports per device can be created.
-Every port is named and corresponds to a UNIX domain socket created by
-.Nm .
-.Nm
-accepts at most one connection per port at a time.
-.Pp
-Limitations:
-.Bl -bullet
-.It
-Due to lack of destructors in
-.Nm ,
-sockets on the filesystem must be cleaned up manually after
-.Nm
-exits.
-.It
-There is no way to use the
-.Dq console port
-feature, nor the console port resize at present.
-.It
-Emergency write is advertised, but no-op at present.
-.El
-.Pp
-.Sy Framebuffer device backends :
-.Bl -bullet
-.Sm off
-.It
-.Op Cm rfb= Ar ip-and-port
-.Op Cm ,w= Ar width
-.Op Cm ,h= Ar height
-.Op Cm ,vga= Ar vgaconf
-.Op Cm ,wait
-.Op Cm ,password= Ar password
-.Sm on
-.El
-.Pp
-Configuration options are defined as follows:
-.Bl -tag -width 10n
-.It Cm rfb= Ns Ar ip-and-port Pq or Cm tcp= Ns Ar ip-and-port
-An IP address and a port VNC should listen on.
-There are two formats:
-.Pp
-.Bl -bullet -compact
-.It
-.Sm off
-.Op Ar IPv4 Cm \&:
-.Ar port
-.Sm on
-.It
-.Sm off
-.Cm \&[ Ar IPv6 Cm \&] Cm \&: Ar port
-.Sm on
-.El
-.Pp
-The default is to listen on localhost IPv4 address and default VNC port 5900.
-An IPv6 address must be enclosed in square brackets.
-.It Cm unix Ns = Ns Ar path
-The path to a UNIX socket which will be created and where
-.Nm
-will accept VNC connections.
-.It Cm w= Ns Ar width No and Cm h= Ns Ar height
-A display resolution, width and height, respectively.
-If not specified, a default resolution of 1024x768 pixels will be used.
-Minimal supported resolution is 640x480 pixels,
-and maximum is 1920x1200 pixels.
-.It Cm vga= Ns Ar vgaconf
-Possible values for this option are
-.Cm io
-(default),
-.Cm on
-, and
-.Cm off .
-PCI graphics cards have a dual personality in that they are
-standard PCI devices with BAR addressing, but may also
-implicitly decode legacy VGA I/O space
-.Pq Ad 0x3c0-3df
-and memory space
-.Pq 64KB at Ad 0xA0000 .
-The default
-.Cm io
-option should be used for guests that attempt to issue BIOS calls which result
-in I/O port queries, and fail to boot if I/O decode is disabled.
-.Pp
-The
-.Cm on
-option should be used along with the CSM BIOS capability in UEFI
-to boot traditional BIOS guests that require the legacy VGA I/O and
-memory regions to be available.
-.Pp
-The
-.Cm off
-option should be used for the UEFI guests that assume that
-VGA adapter is present if they detect the I/O ports.
-An example of such a guest is
-.Ox
-in UEFI mode.
-.It Cm wait
-Instruct
-.Nm
-to only boot upon the initiation of a VNC connection, simplifying the
-installation of operating systems that require immediate keyboard input.
-This can be removed for post-installation use.
-.It Cm password= Ns Ar password
-This type of authentication is known to be cryptographically weak and is not
-intended for use on untrusted networks.
-Many implementations will want to use stronger security, such as running
-the session over an encrypted channel provided by IPsec or SSH.
-.El
-.Pp
-.Sy xHCI USB device backends :
-.Bl -tag -width 10n
-.It Cm tablet
-A USB tablet device which provides precise cursor synchronization
-when using VNC.
-.El
-.Pp
-.Sy NVMe device backends :
-.Bl -bullet
-.Sm off
-.It
-.Ar devpath
-.Op Cm ,maxq= Ar #
-.Op Cm ,qsz= Ar #
-.Op Cm ,ioslots= Ar #
-.Op Cm ,sectsz= Ar #
-.Op Cm ,ser= Ar #
-.Op Cm ,eui64= Ar #
-.Op Cm ,dsm= Ar opt
-.Sm on
-.El
-.Pp
-Configuration options are defined as follows:
-.Bl -tag -width 10n
-.It Ar devpath
-Accepted device paths are:
-.Ar /dev/blockdev
-or
-.Ar /path/to/image
-or
-.Cm ram= Ns Ar size_in_MiB .
-.It Cm maxq
-Max number of queues.
-.It Cm qsz
-Max elements in each queue.
-.It Cm ioslots
-Max number of concurrent I/O requests.
-.It Cm sectsz
-Sector size (defaults to blockif sector size).
-.It Cm ser
-Serial number with maximum 20 characters.
-.It Cm eui64
-IEEE Extended Unique Identifier (8 byte value).
-.It Cm dsm
-DataSet Management support.
-Supported values are:
-.Cm auto , enable ,
-and
-.Cm disable .
-.El
-.Pp
-.Sy AHCI device backends :
-.Bl -bullet
-.It
-.Sm off
-.Op Oo Cm hd\&: | cd\&: Oc Ar path
-.Op Cm ,nmrr= Ar nmrr
-.Op Cm ,ser= Ar #
-.Op Cm ,rev= Ar #
-.Op Cm ,model= Ar #
-.Sm on
-.El
-.Pp
-Configuration options are defined as follows:
-.Bl -tag -width 10n
-.It Cm nmrr
-Nominal Media Rotation Rate, known as RPM.
-Value 1 will indicate device as Solid State Disk.
-Default value is 0, not report.
-.It Cm ser
-Serial Number with maximum 20 characters.
-.It Cm rev
-Revision Number with maximum 8 characters.
-.It Cm model
-Model Number with maximum 40 characters.
-.El
-.It Fl U Ar uuid
-Set the universally unique identifier
-.Pq UUID
-in the guest's System Management BIOS System Information structure.
-By default a UUID is generated from the host's hostname and
-.Ar vmname .
-.It Fl u
-RTC keeps UTC time.
-.It Fl W
-Force virtio PCI device emulations to use MSI interrupts instead of MSI-X
-interrupts.
-.It Fl w
-Ignore accesses to unimplemented Model Specific Registers (MSRs).
-This is intended for debug purposes.
-.It Fl x
-The guest's local APIC is configured in x2APIC mode.
-.It Fl Y
-Disable MPtable generation.
-.It Ar vmname
-Alphanumeric name of the guest.
-.El
-.Sh CONFIGURATION VARIABLES
-.Nm
-uses an internal tree of configuration variables to describe global and
-per-device settings.
-When
-.Nm
-starts,
-it parses command line options (including config files) in the order given
-on the command line.
-Each command line option sets one or more configuration variables.
-For example,
-the
-.Fl s
-option creates a new tree node for a PCI device and sets one or more variables
-under that node including the device model and device model-specific variables.
-Variables may be set multiple times during this parsing stage with the final
-value overriding previous values.
-.Pp
-Once all of the command line options have been processed,
-the configuration values are frozen.
-.Nm
-then uses the value of configuration values to initialize device models
-and global settings.
-.Pp
-More details on configuration variables can be found in
-.Xr bhyve_config 4 .
-.Sh SIGNAL HANDLING
-.Nm
-deals with the following signals:
-.Pp
-.Bl -tag -width SIGTERM -compact
-.It SIGTERM
-Trigger ACPI poweroff for a VM
-.El
-.Sh EXIT STATUS
-Exit status indicates how the VM was terminated:
-.Pp
-.Bl -tag -width indent -compact
-.It 0
-rebooted
-.It 1
-powered off
-.It 2
-halted
-.It 3
-triple fault
-.It 4
-exited due to an error
-.El
-.Sh EXAMPLES
-To run a virtual machine with 1GB of memory, two virtual CPUs, a virtio
-block device backed by the
-.Pa /my/image
-filesystem image, and a serial port for the console:
-.Bd -literal -offset indent
-bhyve -c 2 -s 0,hostbridge -s 1,lpc -s 2,virtio-blk,/my/image \e
- -l com1,stdio -H -P -m 1G vm1
-.Ed
-.Pp
-Run a 24GB single-CPU virtual machine with three network ports.
-.Bd -literal -offset indent
-bhyve -s 0,hostbridge -s 1,lpc -s 2:0,virtio-net-viona,vmvnic0 \e
- -s 2:1,virtio-net-viona,vmvnic1 -s 2:2,virtio-net-viona,vmvnic2 \e
- -s 3,virtio-blk,/my/image -l com1,stdio \e
- -H -P -m 24G bigvm
-.Ed
-.Pp
-Run an 8GB virtual machine with 2 quad core CPUs, 2 NVMe disks and one other
-disk attached as a Virtio block device, an AHCI ATAPI CD-ROM, a single viona
-network port, an i440fx hostbridge, and the console port connected to a socket.
-.Bd -literal -offset indent
-bhyve -c sockets=2,cores=4,threads=2 \e
- -s 0,hostbridge,model=i440fx -s 1,lpc \e
- -s 1:0,nvme,/dev/zvol/rdsk/tank/hdd0 \e
- -s 1:1,nvme,/dev/zvol/rdsk/tank/hdd1 \e
- -s 1:2,virtio-blk,/dev/zvol/rdsk/tank/hdd1 \e
- -s 2:0,ahci,cd:/images/install.iso \e
- -s 3,virtio-net-viona,vnic=vmvnic0 \e
- -l com1,socket,/tmp/vm.com1,wait \e
- -H -P -m 8G
-.Ed
-.Pp
-Run a UEFI virtual machine with a display resolution of 800 by 600 pixels
-that can be accessed via VNC at: 0.0.0.0:5900.
-.Bd -literal -offset indent
-bhyve -c 2 -m 4G -w -H \e
- -s 0,hostbridge \e
- -s 3,ahci-cd,/path/to/uefi-OS-install.iso \e
- -s 4,nvme,/dev/zvol/rdsk/tank/hdd0 \e
- -s 5,virtio-net-viona,vnic=vnmic0 \e
- -s 29,fbuf,vga=off,rfb=0.0.0.0:5900,w=800,h=600,wait \e
- -s 30,xhci,tablet \e
- -s 31,lpc -l com1,stdio \e
- -l bootrom,/usr/share/bhyve/firmware/BHYVE_UEFI.fd \e
- uefivm
-.Ed
-.Pp
-Run a UEFI virtual machine with a VARS file to save EFI variables.
-Note that
-.Nm
-will write guest modifications to the given VARS file.
-Be sure to create a per-guest copy of the template VARS file from
-.Pa /usr/share/bhyve/firmware .
-.Bd -literal -offset indent
-bhyve -c 2 -m 4g -w -H \e
- -s 0,hostbridge \e
- -s 31,lpc -p com1,stdio \e
- -l bootrom,/usr/share/bhyve/firmware/BHYVE_UEFI.fd,BHYVE_UEFI_VARS.fd \e
- uefivm
-.Ed
-.Sh SEE ALSO
-.Xr bhyvectl 1M ,
-.Xr bhyve_config 4 ,
-.Pp
-.Rs
-.%A Intel
-.%B 64 and IA-32 Architectures Software Developers' Manual
-.%V Volume 3
-.Re
diff --git a/usr/src/man/man1m/bhyvectl.1m b/usr/src/man/man1m/bhyvectl.1m
deleted file mode 100644
index baa3667320..0000000000
--- a/usr/src/man/man1m/bhyvectl.1m
+++ /dev/null
@@ -1,85 +0,0 @@
-.\" Copyright (c) 2015 Christian Brueffer
-.\" All rights reserved.
-.\"
-.\" Redistribution and use in source and binary forms, with or without
-.\" modification, are permitted provided that the following conditions
-.\" are met:
-.\" 1. Redistributions of source code must retain the above copyright
-.\" notice, this list of conditions and the following disclaimer.
-.\" 2. Redistributions in binary form must reproduce the above copyright
-.\" notice, this list of conditions and the following disclaimer in the
-.\" documentation and/or other materials provided with the distribution.
-.\"
-.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
-.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
-.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
-.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
-.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-.\" SUCH DAMAGE.
-.\"
-.\" Portions Copyright 2021 OmniOS Community Edition (OmniOSce) Association.
-.\"
-.Dd May 4, 2020
-.Dt BHYVECTL 1M
-.Os
-.Sh NAME
-.Nm bhyvectl
-.Nd "control utility for bhyve instances"
-.Sh SYNOPSIS
-.Nm
-.Fl -vm= Ns Ar <vmname>
-.Op Fl -create
-.Op Fl -destroy
-.Op Fl -get-stats
-.Op Fl -inject-nmi
-.Op Fl -force-reset
-.Op Fl -force-poweroff
-.Op Fl -checkpoint= Ns Ar <filename>
-.Op Fl -suspend= Ns Ar <filename>
-.Sh DESCRIPTION
-The
-.Nm
-command is a control utility for active
-.Xr bhyve 1M
-virtual machine instances.
-.Pp
-.Em Note :
-Most
-.Nm
-flags are intended for querying and setting the state of an active instance.
-These commands are intended for development purposes, and are not documented here.
-A complete list can be obtained by executing
-.Nm
-without any arguments.
-.Pp
-The user-facing options are as follows:
-.Bl -tag -width ".Fl d Ar argument"
-.It Fl -vm= Ns Ar <vmname>
-Operate on the virtual machine
-.Ar <vmname> .
-.It Fl -create
-Create the specified VM.
-.It Fl -destroy
-Destroy the specified VM.
-.It Fl -get-stats
-Retrieve statistics for the specified VM.
-.It Fl -inject-nmi
-Inject a non-maskable interrupt (NMI) into the VM.
-.It Fl -force-reset
-Force the VM to reset.
-.It Fl -force-poweroff
-Force the VM to power off.
-.El
-.Sh EXIT STATUS
-.Ex -std
-.Sh EXAMPLES
-Destroy the VM called fbsd10:
-.Pp
-.Dl "bhyvectl --vm=fbsd10 --destroy"
-.Sh SEE ALSO
-.Xr bhyve 1M
diff --git a/usr/src/man/man1m/boot.1m b/usr/src/man/man1m/boot.1m
deleted file mode 100644
index 2df2d7beaf..0000000000
--- a/usr/src/man/man1m/boot.1m
+++ /dev/null
@@ -1,1142 +0,0 @@
-'\" te
-.\" Copyright 2018 OmniOS Community Edition (OmniOSce) Association.
-.\" Copyright 2015 Nexenta Systems Inc.
-.\" Copyright (c) 2008 Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH BOOT 1M "Jul 20, 2018"
-.SH NAME
-boot \- start the system kernel or a standalone program
-.SH SYNOPSIS
-.SS "SPARC"
-.LP
-.nf
-\fBboot\fR [\fIOBP\fR \fInames\fR] [\fIfile\fR] [\fB-aLV\fR] [\fB-F\fR \fIobject\fR] [\fB-D\fR \fIdefault-file\fR]
- [\fB-Z\fR \fIdataset\fR] [\fIboot-flags\fR] [\fB\(mi\(mi\fR] [\fIclient-program-args\fR]
-.fi
-
-.SS "x86"
-.LP
-.nf
-\fBboot\fR [\fIboot-flags\fR] [\fB-B\fR \fIprop\fR=\fIval\fR [,\fIval\fR...]]
-.fi
-
-.SH DESCRIPTION
-.LP
-Bootstrapping is the process of loading and executing a standalone program. For
-the purpose of this discussion, bootstrapping means the process of loading and
-executing the bootable operating system. Typically, the standalone program is
-the operating system kernel (see \fBkernel\fR(1M)), but any standalone program
-can be booted instead. On a SPARC-based system, the diagnostic monitor for a
-machine is a good example of a standalone program other than the operating
-system that can be booted.
-.sp
-.LP
-If the standalone is identified as a dynamically-linked executable, \fBboot\fR
-will load the interpreter (linker/loader) as indicated by the executable format
-and then transfer control to the interpreter. If the standalone is
-statically-linked, it will jump directly to the standalone.
-.sp
-.LP
-Once the kernel is loaded, it starts the UNIX system, mounts the necessary file
-systems (see \fBvfstab\fR(4)), and runs \fB/sbin/init\fR to bring the system to
-the "initdefault" state specified in \fB/etc/inittab\fR. See \fBinittab\fR(4).
-.SS "SPARC Bootstrap Procedure"
-.LP
-On SPARC based systems, the bootstrap procedure on most machines consists of
-the following basic phases.
-.sp
-.LP
-After the machine is turned on, the system firmware (in PROM) executes power-on
-self-test (POST). The form and scope of these tests depends on the version of
-the firmware in your system.
-.sp
-.LP
-After the tests have been completed successfully, the firmware attempts to
-autoboot if the appropriate flag has been set in the non-volatile storage area
-used by the firmware. The name of the file to load, and the device to load it
-from can also be manipulated.
-.sp
-.LP
-These flags and names can be set using the \fBeeprom\fR(1M) command from the
-shell, or by using \fBPROM\fR commands from the \fBok\fR prompt after the
-system has been halted.
-.sp
-.LP
-The second level program is either a filesystem-specific boot block (when
-booting from a disk), or \fBinetboot\fR (when booting across
-the network).
-.sp
-.LP
-Network Booting
-.sp
-.LP
-Network booting occurs in two steps: the client first obtains an IP address and
-any other parameters necessary to permit it to load the second-stage booter.
-The second-stage booter in turn loads the boot archive from the boot device.
-.sp
-.LP
-An IP address can be obtained in one of three ways: RARP, DHCP, or manual
-configuration, depending on the functions available in and configuration of the
-PROM. Machines of the \fBsun4u\fR and \fBsun4v\fR kernel architectures have
-DHCP-capable PROMs.
-.sp
-.LP
-The boot command syntax for specifying the two methods of network booting are:
-.sp
-.in +2
-.nf
-boot net:rarp
-boot net:dhcp
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The command:
-.sp
-.in +2
-.nf
-boot net
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-without a \fBrarp\fR or \fBdhcp\fR specifier, invokes the default method for
-network booting over the network interface for which \fBnet\fR is an alias.
-.sp
-.LP
-The sequence of events for network booting using RARP/\fBbootparams\fR is
-described in the following paragraphs. The sequence for DHCP follows the
-RARP/\fBbootparams\fR description.
-.sp
-.LP
-When booting over the network using RARP/\fBbootparams\fR, the PROM begins by
-broadcasting a reverse ARP request until it receives a reply. When a reply is
-received, the PROM then broadcasts a TFTP request to fetch the first block of
-\fBinetboot\fR. Subsequent requests will be sent to the server that initially
-answered the first block request. After loading, \fBinetboot\fR will also use
-reverse ARP to fetch its IP address, then broadcast \fBbootparams\fR RPC calls
-(see \fBbootparams\fR(4)) to locate configuration information and its root file
-system. \fBinetboot\fR then loads the boot archive by means of NFS and
-transfers control to that archive.
-.sp
-.LP
-When booting over the network using DHCP, the PROM broadcasts the hardware
-address and kernel architecture and requests an IP address, boot parameters,
-and network configuration information. After a DHCP server responds and is
-selected (from among potentially multiple servers), that server sends to the
-client an IP address and all other information needed to boot the client. After
-receipt of this information, the client PROM examines the name of the file to
-be loaded, and will behave in one of two ways, depending on whether the file's
-name appears to be an HTTP URL. If it does not, the PROM downloads
-\fBinetboot\fR, loads that file into memory, and executes it. \fBinetboot\fR
-loads the boot archive, which takes over the machine and releases
-\fBinetboot\fR. Startup scripts then initiate the DHCP agent (see
-\fBdhcpagent\fR(1M)), which implements further DHCP activities.
-
-.SS "iSCSI Boot"
-.LP
-iSCSI boot is currently supported only on x86. The host being booted must be
-equipped with NIC(s) capable of iBFT (iSCSI Boot Firmware Table) or have the
-mainboard's BIOS be iBFT-capable. iBFT, defined in the Advanced Configuration
-and Power Interface (ACPI) 3.0b specification, specifies a block of information
-that contains various parameters that are useful to the iSCSI Boot process.
-.sp
-.LP
-Firmware implementing iBFT presents an iSCSI disk in the BIOS during startup as
-a bootable device by establishing the connection to the iSCSI target. The rest
-of the process of iSCSI booting is the same as booting from a local disk.
-.sp
-.LP
-To configure the iBFT properly, users need to refer to the documentation from
-their hardware vendors.
-.SS "Booting from Disk"
-.LP
-When booting from disk, the OpenBoot PROM firmware reads the boot blocks from
-blocks 1 to 15 of the partition specified as the boot device. This standalone
-booter usually contains a file system-specific reader capable of reading the
-boot archive.
-.sp
-.LP
-If the pathname to the standalone is relative (does not begin with a slash),
-the second level boot will look for the standalone in a platform-dependent
-search path. This path is guaranteed to contain
-\fB/platform/\fR\fIplatform-name\fR. Many SPARC platforms next search the
-platform-specific path entry \fB/platform/\fR\fIhardware-class-name\fR. See
-\fBfilesystem\fR(5). If the pathname is absolute, \fBboot\fR will use the
-specified path. The \fBboot\fR program then loads the standalone at the
-appropriate address, and then transfers control.
-.sp
-.LP
-Once the boot archive has been transferred from the boot device, Solaris can
-initialize and take over control of the machine. This process is further
-described in the "Boot Archive Phase," below, and is identical on all
-platforms.
-.sp
-.LP
-If the filename is not given on the command line or otherwise specified, for
-example, by the \fBboot-file\fR NVRAM variable, \fBboot\fR chooses an
-appropriate default file to load based on what software is installed on the
-system and the capabilities of the hardware and firmware.
-.sp
-.LP
-The path to the kernel must not contain any whitespace.
-.SS "Booting from ZFS"
-.LP
-Booting from ZFS differs from booting from UFS in that, with ZFS, a device
-specifier identifies a storage pool, not a single root file system. A storage
-pool can contain multiple bootable datasets (that is, root file systems).
-Therefore, when booting from ZFS, it is not sufficient to specify a boot
-device. One must also identify a root file system within the pool that was
-identified by the boot device. By default, the dataset selected for booting is
-the one identified by the pool's \fBbootfs\fR property. This default selection
-can be overridden by specifying an alternate bootable dataset with the \fB-Z\fR
-option.
-.SS "Boot Archive Phase"
-.LP
-The boot archive contains a file system image that is mounted using an
-in-memory disk. The image is self-describing, specifically containing a file
-system reader in the boot block. This file system reader mounts and opens the
-RAM disk image, then reads and executes the kernel contained within it. By
-default, this kernel is in:
-.sp
-.in +2
-.nf
-/platform/`uname -i`/kernel/unix
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-If booting from ZFS, the pathnames of both the archive and the kernel file are
-resolved in the root file system (that is, dataset) selected for booting as
-described in the previous section.
-.sp
-.LP
-The initialization of the kernel continues by loading necessary drivers and
-modules from the in-memory filesystem until I/O can be turned on and the root
-filesystem mounted. Once the root filesystem is mounted, the in-memory
-filesystem is no longer needed and is discarded.
-.SS "OpenBoot PROM \fBboot\fR Command Behavior"
-.LP
-The OpenBoot \fBboot\fR command takes arguments of the following form:
-.sp
-.in +2
-.nf
-ok boot [\fIdevice-specifier\fR] [\fIarguments\fR]
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The default \fBboot\fR command has no arguments:
-.sp
-.in +2
-.nf
-ok boot
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-If no \fIdevice-specifier\fR is given on the \fBboot\fR command line, OpenBoot
-typically uses the \fIboot-device\fR or \fIdiag-device\fR \fBNVRAM\fR variable.
-If no optional \fIarguments\fR are given on the command line, OpenBoot
-typically uses the \fIboot-file\fR or \fIdiag-file\fR \fBNVRAM\fR variable as
-default \fBboot\fR arguments. (If the system is in diagnostics mode,
-\fIdiag-device\fR and \fIdiag-file\fR are used instead of \fIboot-device\fR and
-\fIboot-file\fR).
-.sp
-.LP
-\fIarguments\fR may include more than one string. All \fIargument\fR strings
-are passed to the secondary booter; they are not interpreted by OpenBoot.
-.sp
-.LP
-If any \fIarguments\fR are specified on the \fBboot\fR command line, then
-neither the \fIboot-file\fR nor the \fIdiag-file\fR \fBNVRAM\fR variable is
-used. The contents of the \fBNVRAM\fR variables are not merged with command
-line arguments. For example, the command:
-.sp
-.in +2
-.nf
-ok \fBboot\fR \fB-s\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-ignores the settings in both \fIboot-file\fR and \fIdiag-file\fR; it interprets
-the string \fB"-s"\fR as \fIarguments\fR. \fBboot\fR will not use the contents
-of \fIboot-file\fR or \fIdiag-file\fR.
-.sp
-.LP
-With older PROMs, the command:
-.sp
-.in +2
-.nf
-ok \fBboot net\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-took no arguments, using instead the settings in \fIboot-file\fR or
-\fIdiag-file\fR (if set) as the default file name and arguments to pass to
-boot. In most cases, it is best to allow the \fBboot\fR command to choose an
-appropriate default based upon the system type, system hardware and firmware,
-and upon what is installed on the root file system. Changing \fIboot-file\fR or
-\fIdiag-file\fR can generate unexpected results in certain circumstances.
-.sp
-.LP
-This behavior is found on most OpenBoot 2.x and 3.x based systems. Note that
-differences may occur on some platforms.
-.sp
-.LP
-The command:
-.sp
-.LP
-ok \fBboot cdrom\fR
-.sp
-.LP
-\&...also normally takes no arguments. Accordingly, if \fIboot-file\fR is set
-to the 64-bit kernel filename and you attempt to boot the installation CD or
-DVD with \fBboot cdrom\fR, boot will fail if the installation media contains
-only a 32-bit kernel.
-.sp
-.LP
-Because the contents of \fIboot-file\fR or \fIdiag-file\fR can be ignored
-depending on the form of the \fBboot\fR command used, reliance upon
-\fIboot-file\fR should be discouraged for most production systems.
-.sp
-.LP
-Modern PROMs have enhanced the network boot support package to support the
-following syntax for arguments to be processed by the package:
-.sp
-.LP
-[\fIprotocol\fR,] [\fIkey\fR=\fIvalue\fR,]*
-.sp
-.LP
-All arguments are optional and can appear in any order. Commas are required
-unless the argument is at the end of the list. If specified, an argument takes
-precedence over any default values, or, if booting using DHCP, over
-configuration information provided by a DHCP server for those parameters.
-.sp
-.LP
-\fIprotocol\fR, above, specifies the address discovery protocol to be used.
-.sp
-.LP
-Configuration parameters, listed below, are specified as \fIkey\fR=\fIvalue\fR
-attribute pairs.
-.sp
-.ne 2
-.na
-\fB\fBtftp-server\fR\fR
-.ad
-.sp .6
-.RS 4n
-IP address of the TFTP server
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfile\fR\fR
-.ad
-.sp .6
-.RS 4n
-file to download using TFTP
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBhost-ip\fR\fR
-.ad
-.sp .6
-.RS 4n
-IP address of the client (in dotted-decimal notation)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrouter-ip\fR\fR
-.ad
-.sp .6
-.RS 4n
-IP address of the default router
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsubnet-mask\fR\fR
-.ad
-.sp .6
-.RS 4n
-subnet mask (in dotted-decimal notation)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBclient-id\fR\fR
-.ad
-.sp .6
-.RS 4n
-DHCP client identifier
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBhostname\fR\fR
-.ad
-.sp .6
-.RS 4n
-hostname to use in DHCP transactions
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBhttp-proxy\fR\fR
-.ad
-.sp .6
-.RS 4n
-HTTP proxy server specification (IPADDR[:PORT])
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBtftp-retries\fR\fR
-.ad
-.sp .6
-.RS 4n
-maximum number of TFTP retries
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdhcp-retries\fR\fR
-.ad
-.sp .6
-.RS 4n
-maximum number of DHCP retries
-.RE
-
-.sp
-.LP
-The list of arguments to be processed by the network boot support package is
-specified in one of two ways:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-As arguments passed to the package's \fBopen\fR method, or
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-arguments listed in the NVRAM variable \fBnetwork-boot-arguments\fR.
-.RE
-.sp
-.LP
-Arguments specified in \fBnetwork-boot-arguments\fR will be processed only if
-there are no arguments passed to the package's \fBopen\fR method.
-.sp
-.LP
-Argument Values
-.sp
-.LP
-\fIprotocol\fR specifies the address discovery protocol to be used. If present,
-the possible values are \fBrarp\fR or \fBdhcp\fR.
-.sp
-.LP
-If other configuration parameters are specified in the new syntax and style
-specified by this document, absence of the \fIprotocol\fR parameter implies
-manual configuration.
-.sp
-.LP
-If no other configuration parameters are specified, or if those arguments are
-specified in the positional parameter syntax currently supported, the absence
-of the \fIprotocol\fR parameter causes the network boot support package to use
-the platform-specific default address discovery protocol.
-.sp
-.LP
-Manual configuration requires that the client be provided its IP address, the
-name of the boot file, and the address of the server providing the boot file
-image. Depending on the network configuration, it might be required that
-\fBsubnet-mask\fR and \fBrouter-ip\fR also be specified.
-.sp
-.LP
-If the \fIprotocol\fR argument is not specified, the network boot support
-package uses the platform-specific default address discovery protocol.
-.sp
-.LP
-\fBtftp-server\fR is the IP address (in standard IPv4 dotted-decimal notation)
-of the TFTP server that provides the file to download if using TFTP.
-.sp
-.LP
-When using DHCP, the value, if specified, overrides the value of the TFTP
-server specified in the DHCP response.
-.sp
-.LP
-The TFTP RRQ is unicast to the server if one is specified as an argument or in
-the DHCP response. Otherwise, the TFTP RRQ is broadcast.
-.sp
-.LP
-\fIfile\fR specifies the file to be loaded by TFTP from the TFTP server.
-.sp
-.LP
-When using RARP and TFTP, the default file name is the ASCII hexadecimal
-representation of the IP address of the client, as documented in a preceding
-section of this document.
-.sp
-.LP
-When using DHCP, this argument, if specified, overrides the name of the boot
-file specified in the DHCP response.
-.sp
-.LP
-When using DHCP and TFTP, the default file name is constructed from the root
-node's \fBname\fR property, with commas (,) replaced by periods (.).
-.sp
-.LP
-When specified on the command line, the filename must not contain slashes
-(\fB/\fR).
-.sp
-.LP
-\fBhost-ip\fR specifies the IP address (in standard IPv4 dotted-decimal
-notation) of the client, the system being booted. If using RARP as the address
-discovery protocol, specifying this argument makes use of RARP unnecessary.
-.sp
-.LP
-If DHCP is used, specifying the \fBhost-ip\fR argument causes the client to
-follow the steps required of a client with an "Externally Configured Network
-Address", as specified in RFC 2131.
-.sp
-.LP
-\fBrouter-ip\fR is the IP address (in standard IPv4 dotted-decimal notation) of
-a router on a directly connected network. The router will be used as the first
-hop for communications spanning networks. If this argument is supplied, the
-router specified here takes precedence over the preferred router specified in
-the DHCP response.
-.sp
-.LP
-\fBsubnet-mask\fR (specified in standard IPv4 dotted-decimal notation) is the
-subnet mask on the client's network. If the subnet mask is not provided (either
-by means of this argument or in the DHCP response), the default mask
-appropriate to the network class (Class A, B, or C) of the address assigned to
-the booting client will be assumed.
-.sp
-.LP
-\fBclient-id\fR specifies the unique identifier for the client. The DHCP client
-identifier is derived from this value. Client identifiers can be specified as:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The ASCII hexadecimal representation of the identifier, or
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-a quoted string
-.RE
-.sp
-.LP
-Thus, \fBclient-id="openboot"\fR and \fBclient-id=6f70656e626f6f74\fR both
-represent a DHCP client identifier of 6F70656E626F6F74.
-.sp
-.LP
-Identifiers specified on the command line must must not include slash (\fB/\fR)
-or spaces.
-.sp
-.LP
-The maximum length of the DHCP client identifier is 32 bytes, or 64 characters
-representing 32 bytes if using the ASCII hexadecimal form. If the latter form
-is used, the number of characters in the identifier must be an even number.
-Valid characters are 0-9, a-f, and A-F.
-.sp
-.LP
-For correct identification of clients, the client identifier must be unique
-among the client identifiers used on the subnet to which the client is
-attached. System administrators are responsible for choosing identifiers that
-meet this requirement.
-.sp
-.LP
-Specifying a client identifier on a command line takes precedence over any
-other DHCP mechanism of specifying identifiers.
-.sp
-.LP
-\fBhostname\fR (specified as a string) specifies the hostname to be used in
-DHCP transactions. The name might or might not be qualified with the local
-domain name. The maximum length of the hostname is 255 characters.
-.LP
-Note -
-.sp
-.RS 2
-The \fBhostname\fR parameter can be used in service environments that require
-that the client provide the desired hostname to the DHCP server. Clients
-provide the desired hostname to the DHCP server, which can then register the
-hostname and IP address assigned to the client with DNS.
-.RE
-.sp
-.LP
-\fBhttp-proxy\fR is specified in the following standard notation for a host:
-.sp
-.in +2
-.nf
-\fIhost\fR [":"" \fIport\fR]
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-\&...where \fIhost\fR is specified as an IP ddress (in standard IPv4
-dotted-decimal notation) and the optional \fIport\fR is specified in decimal.
-If a port is not specified, port 8080 (decimal) is implied.
-.sp
-.LP
-\fBtftp-retries\fR is the maximum number of retries (specified in decimal)
-attempted before the TFTP process is determined to have failed. Defaults to
-using infinite retries.
-.sp
-.LP
-\fBdhcp-retries\fR is the maximum number of retries (specified in decimal)
-attempted before the DHCP process is determined to have failed. Defaults to of
-using infinite retries.
-.SS "x86 Bootstrap Procedure"
-.LP
-On x86 based systems, the bootstrapping process consists of two conceptually
-distinct phases, kernel loading and kernel initialization. Kernel loading is
-implemented in the boot loader using the BIOS ROM on the system
-board, and BIOS extensions in ROMs on peripheral boards. The BIOS loads boot
-loader, starting with the first physical sector from a hard disk, DVD, or CD. If
-supported by the ROM on the network adapter, the BIOS can also download the
-\fBpxeboot\fR binary from a network boot server. Once the boot loader is
-loaded, it in turn will load the \fBunix\fR kernel, a pre-constructed boot
-archive containing kernel modules and data, and any additional files specified
-in the boot loader configuration. Once specified files are loaded, the boot
-loader will start the kernel to complete boot.
-.sp
-.LP
-If the device identified by the boot loader as the boot device contains a ZFS
-storage pool, the \fBmenu.lst\fR file used to create the Boot Environment menu
-will be found in the dataset at the root of the pool's dataset hierarchy.
-This is the dataset with the same name as the pool itself. There is always
-exactly one such dataset in a pool, and so this dataset is well-suited for
-pool-wide data such as the \fBmenu.lst\fR file. After the system is booted,
-this dataset is mounted at /\fIpoolname\fR in the root file system.
-.sp
-.LP
-There can be multiple bootable datasets (that is, root file systems) within a
-pool. The default file system to load the kernel is identified by the boot
-pool \fBbootfs\fR property (see \fBzpool\fR(1M)). All bootable datasets are
-listed in the \fBmenu.lst\fR file, which is used by the boot loader to compose
-the Boot Environment menu, to implement support to load a kernel and boot from
-an alternate Boot Environment.
-.sp
-.LP
-Kernel initialization starts when the boot loader finishes loading the files
-specified in the boot loader configuration and hands control over to the
-\fBunix\fR binary. The Unix operating system initializes, links in the
-necessary modules from the boot archive and mounts the root file system on
-the real root device. At this point, the kernel regains
-storage I/O, mounts additional file systems (see \fBvfstab\fR(4)), and starts
-various operating system services (see \fBsmf\fR(5)).
-
-.SH OPTIONS
-.SS "SPARC"
-.LP
-The following SPARC options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-a\fR\fR
-.ad
-.sp .6
-.RS 4n
-The boot program interprets this flag to mean \fBask me\fR, and so it prompts
-for the name of the standalone. The \fB\&'\fR\fB-a\fR\fB\&'\fR flag is then
-passed to the standalone program.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-D\fR \fIdefault-file\fR\fR
-.ad
-.sp .6
-.RS 4n
-Explicitly specify the \fIdefault-file\fR. On some systems, \fBboot\fR chooses
-a dynamic default file, used when none is otherwise specified. This option
-allows the \fIdefault-file\fR to be explicitly set and can be useful when
-booting \fBkmdb\fR(1) since, by default, \fBkmdb\fR loads the default-file as
-exported by the \fBboot\fR program.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-F\fR \fIobject\fR\fR
-.ad
-.sp .6
-.RS 4n
-Boot using the named object. The object must be either an ELF executable or
-bootable object containing a boot block. The primary use is to boot the
-failsafe boot archive.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-L\fR\fR
-.ad
-.sp .6
-.RS 4n
-List the bootable datasets within a ZFS pool. You can select one of the
-bootable datasets in the list, after which detailed instructions for booting
-that dataset are displayed. Boot the selected dataset by following the
-instructions. This option is supported only when the boot device contains a ZFS
-storage pool.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-V\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display verbose debugging information.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIboot-flags\fR\fR
-.ad
-.sp .6
-.RS 4n
-The boot program passes all \fIboot-flags\fR to \fBfile\fR. They are not
-interpreted by \fBboot\fR. See the \fBkernel\fR(1M) and \fBkmdb\fR(1) manual
-pages for information about the options available with the default standalone
-program.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIclient-program-args\fR\fR
-.ad
-.sp .6
-.RS 4n
-The \fBboot\fR program passes all \fIclient-program-args\fR to \fIfile\fR. They
-are not interpreted by \fBboot\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIfile\fR\fR
-.ad
-.sp .6
-.RS 4n
-Name of a standalone program to \fBboot\fR. If a filename is not explicitly
-specified, either on the \fBboot\fR command line or in the \fIboot-file\fR
-NVRAM variable, \fBboot\fR chooses an appropriate default filename.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIOBP\fR \fInames\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify the open boot prom designations. For example, on Desktop SPARC based
-systems, the designation \fB/sbus/esp@0,800000/sd@3,0:a\fR indicates a
-\fBSCSI\fR disk (sd) at target 3, lun0 on the \fBSCSI\fR bus, with the esp host
-adapter plugged into slot 0.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-Z\fR \fIdataset\fR\fR
-.ad
-.sp .6
-.RS 4n
-Boot from the root file system in the specified ZFS dataset.
-.RE
-
-.SS "x86"
-.LP
-The following x86 options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-B\fR \fIprop\fR=\fIval\fR...\fR
-.ad
-.sp .6
-.RS 4n
-One or more property-value pairs to be passed to the kernel. Multiple
-property-value pairs must be separated by a comma. Use of this option is the
-equivalent of the command: \fBeeprom\fR \fIprop\fR=\fIval\fR. See
-\fBeeprom\fR(1M) for available properties and valid values.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIboot-flags\fR\fR
-.ad
-.sp .6
-.RS 4n
-The boot program passes all \fIboot-flags\fR to \fBfile\fR. They are not
-interpreted by \fBboot\fR. See \fBkernel\fR(1M) and \fBkmdb\fR(1) for
-information about the options available with the kernel.
-.RE
-
-.SH X86 BOOT SEQUENCE DETAILS
-.LP
-After a PC-compatible machine is turned on, the system firmware in the \fBBIOS
-ROM\fR executes a power-on self test (POST), runs \fBBIOS\fR extensions in
-peripheral board \fBROMs,\fR and invokes software interrupt INT 19h, Bootstrap.
-The INT 19h handler typically performs the standard PC-compatible boot, which
-consists of trying to read the first physical sector from the first diskette
-drive, or, if that fails, from the first hard disk. The processor then jumps to
-the first byte of the sector image in memory.
-.SH X86 PRIMARY BOOT
-.LP
-The first sector on a hard disk contains the master boot block (first stage of
-the boot program), which contains the master boot program and the Master Boot
-Record (\fBMBR\fR) table. The master boot program has recorded the location of
-the secondary stage of the boot program and using this location, master boot
-will load and start the secondary stage of the boot program.
-
-To support booting multiple operating systems, the master boot program is also
-installed as the first sector of the partition with the illumos root file
-system. This will allow configuring third party boot programs to use the
-chainload technique to boot illumos system.
-
-If the first stage is installed on the master boot block (see the \fB-m\fR
-option of \fBinstallboot\fR(1M)), then \fBstage2\fR is loaded directly
-from the Solaris partition regardless of the active partition.
-.sp
-.LP
-A similar sequence occurs for DVD or CD boot, but the master boot block location
-and contents are dictated by the El Torito specification. The El Torito boot
-will then continue in the same way as with the hard disk.
-.sp
-.LP
-Floppy booting is not longer supported. Booting from USB devices follows the
-same procedure as with hard disks.
-.sp
-.LP
-An x86 \fBMBR\fR partition for the Solaris software begins with a
-one-cylinder boot slice, which contains the boot loader \fBstage1\fR in the
-first sector, the standard Solaris disk label and volume table of contents
-(VTOC) in the second and third sectors, and in case the UFS file system is
-used for the root file system, \fBstage2\fR in the fiftieth and subsequent
-sectors.
-
-If the zfs boot is used, \fBstage2\fR is always stored in the zfs pool
-boot program area.
-.sp
-.LP
-The behavior is slightly different when a disk is using \fBEFI\fR
-partitioning.
-
-To support a UFS root file system in the \fBEFI\fR partition, the \fBstage2\fR
-must be stored on separate dedicated partition, as there is no space in UFS
-file system boot program area to store the current \fBstage2\fR. This separate
-dedicated partition is used as raw disk space, and must have enough space
-for both \fBstage1\fR and \fBstage2\fR. The type (tag) of this partition
-must be \fBboot\fR, \fBEFI\fR UUID:
-.sp
-.in +2
-.nf
-\fB6a82cb45-1dd2-11b2-99a6-080020736631\fR
-.fi
-.in -2
-.sp
-For the UUID reference, please see \fB/usr/include/sys/efi_partition.h\fR.
-
-In case of a whole disk zfs pool configuration, the \fBstage1\fR is always
-installed in the first sector of the disk, and it always loads \fBstage2\fR
-from the partition specified at the boot loader installation time.
-.sp
-.LP
-Once \fBstage2\fR is running, it will load and start the third stage boot
-program from root file system. Boot loader supports loading from the ZFS,
-UFS and PCFS file systems. The stage3 boot program defaults to be
-\fB/boot/loader\fR, and implements a user interface to load and boot the
-unix kernel.
-.sp
-.LP
-For network booting, the supported method is Intel's Preboot eXecution
-Environment (PXE) standard. When booting from the network using PXE, the system
-or network adapter BIOS uses DHCP to locate a network bootstrap program
-(\fBpxeboot\fR) on a boot server and reads it using Trivial File Transfer
-Protocol (TFTP). The BIOS executes the \fBpxeboot\fR by jumping to its first
-byte in memory. The \fBpxeboot\fR program is combined stage2 and stage2 boot
-program and implements user interface to load and boot unix kernel.
-.SH X86 KERNEL STARTUP
-.LP
-The kernel startup process is independent of the kernel loading process. During
-kernel startup, console I/O goes to the device specified by the \fBconsole\fR
-property.
-.sp
-.LP
-When booting from UFS, the root device is specified by the \fBbootpath\fR
-property, and the root file system type is specified by the \fBfstype\fR
-property. These properties should be setup by the Solaris Install/Upgrade
-process in \fB/boot/solaris/bootenv.rc\fR and can be overridden with the
-\fB-B\fR option, described above (see the \fBeeprom\fR(1M) man page).
-.sp
-.LP
-When booting from ZFS, the root device is automatically passed by the boot
-loader to the kernel as a boot parameter \fB-B\fR \fBzfs-bootfs\fR. The actual
-value used by the boot loader can be observed with the \fBeeprom bootcmd\fR
-command.
-.sp
-.LP
-If the console properties are not present, console I/O defaults to \fBscreen\fR
-and \fBkeyboard\fR. The root device defaults to \fBramdisk\fR and the file
-system defaults to \fBufs\fR.
-.SH EXAMPLES
-.SS "SPARC"
-.LP
-\fBExample 1 \fRTo Boot the Default Kernel In Single-User Interactive Mode
-.sp
-.LP
-To boot the default kernel in single-user interactive mode, respond to the
-\fBok\fR prompt with one of the following:
-
-.sp
-.in +2
-.nf
-\fBboot\fR \fB\fR\fB-as\fR
-
-\fBboot\fR \fBdisk3\fR \fB-as\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRNetwork Booting
-.sp
-.LP
-To illustrate some of the subtle repercussions of various boot command line
-invocations, assume that the \fBnetwork-boot-arguments\fR are set and that
-\fBnet\fR is devaliased as shown in the commands below.
-
-.sp
-.LP
-In the following command, device arguments in the device alias are processed by
-the device driver. The network boot support package processes arguments in
-\fBnetwork-boot-arguments\fR.
-
-.sp
-.in +2
-.nf
-\fBboot net\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The command below results in no device arguments. The network boot support
-package processes arguments in \fBnetwork-boot-arguments\fR.
-
-.sp
-.in +2
-.nf
-\fBboot net:\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The command below results in no device arguments. \fBrarp\fR is the only
-network boot support package argument. \fBnetwork-boot-arguments\fR is ignored.
-
-.sp
-.in +2
-.nf
-\fBboot net:rarp\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-In the command below, the specified device arguments are honored. The network
-boot support package processes arguments in \fBnetwork-boot-arguments\fR.
-
-.sp
-.in +2
-.nf
-\fBboot net:speed=100,duplex=full\fR
-.fi
-.in -2
-.sp
-
-.SS "x86"
-.LP
-\fBExample 3 \fRTo Boot the Default Kernel In 64-bit Single-User Interactive
-Mode
-.sp
-.LP
-To boot the default kernel in single-user interactive mode, press the ESC key
-to get the boot loader \fBok\fR prompt and enter:
-
-.sp
-.in +2
-.nf
-boot -as
-.fi
-.in -2
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/etc/inittab\fR\fR
-.ad
-.sp .6
-.RS 4n
-Table in which the \fBinitdefault\fR state is specified
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/sbin/init\fR\fR
-.ad
-.sp .6
-.RS 4n
-Program that brings the system to the \fBinitdefault\fR state
-.RE
-
-.SS "64-bit SPARC Only"
-.ne 2
-.na
-\fB\fB/platform/\fR\fIplatform-name\fR\fB/kernel/sparcv9/unix\fR\fR
-.ad
-.sp .6
-.RS 4n
-Default program to boot system.
-.RE
-
-.SS "x86 Only"
-.ne 2
-.na
-\fB\fB/boot\fR\fR
-.ad
-.sp .6
-.RS 4n
-Directory containing boot-related files.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/rpool/boot/menu.lst\fR\fR
-.ad
-.sp .6
-.RS 4n
-Menu index file of bootable operating systems displayed by the boot loader.
-.sp
-\fBNote:\fR this file is located on the root ZFS pool. While many installs
-often name their root zpool 'rpool', this is not required and the
-/rpool in the path above should be substituted with the name of
-the root pool of your current system.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/platform/i86pc/kernel/unix\fR\fR
-.ad
-.sp .6
-.RS 4n
-32-bit kernel.
-.RE
-
-.SS "64-bit x86 Only"
-.ne 2
-.na
-\fB\fB/platform/i86pc/kernel/amd64/unix\fR\fR
-.ad
-.sp .6
-.RS 4n
-64-bit kernel.
-.RE
-
-.SH SEE ALSO
-.LP
-\fBkmdb\fR(1), \fBuname\fR(1), \fBbootadm\fR(1M), \fBeeprom\fR(1M),
-\fBinit\fR(1M), \fBinstallboot\fR(1M), \fBkernel\fR(1M), \fBmonitor\fR(1M),
-\fBshutdown\fR(1M), \fBsvcadm\fR(1M), \fBumountall\fR(1M), \fBzpool\fR(1M),
-\fBuadmin\fR(2), \fBbootparams\fR(4), \fBinittab\fR(4), \fBvfstab\fR(4),
-\fBfilesystem\fR(5)
-.sp
-.LP
-RFC 903, \fIA Reverse Address Resolution Protocol\fR,
-\fBhttp://www.ietf.org/rfc/rfc903.txt\fR
-.sp
-.LP
-RFC 2131, \fIDynamic Host Configuration Protocol\fR,
-\fBhttp://www.ietf.org/rfc/rfc2131.txt\fR
-.sp
-.LP
-RFC 2132, \fIDHCP Options and BOOTP Vendor Extensions\fR,
-\fBhttp://www.ietf.org/rfc/rfc2132.txt\fR
-.sp
-.LP
-RFC 2396, \fIUniform Resource Identifiers (URI): Generic Syntax\fR,
-\fBhttp://www.ietf.org/rfc/rfc2396.txt\fR
-.sp
-.LP
-\fI\fR
-.sp
-.LP
-\fISun Hardware Platform Guide\fR
-.sp
-.LP
-\fIOpenBoot Command Reference Manual\fR
-.SH WARNINGS
-.LP
-The \fBboot\fR utility is unable to determine which files can be used as
-bootable programs. If the booting of a file that is not bootable is requested,
-the \fBboot\fR utility loads it and branches to it. What happens after that is
-unpredictable.
-.SH NOTES
-.LP
-\fIplatform-name\fR can be found using the \fB-i\fR option of \fBuname\fR(1).
-\fIhardware-class-name\fR can be found using the \fB-m\fR option of
-\fBuname\fR(1).
-.sp
-.LP
-The current release of the Solaris operating system does not support machines
-running an UltraSPARC-I CPU.
diff --git a/usr/src/man/man1m/bootadm.1m b/usr/src/man/man1m/bootadm.1m
deleted file mode 100644
index 608807a7fe..0000000000
--- a/usr/src/man/man1m/bootadm.1m
+++ /dev/null
@@ -1,543 +0,0 @@
-'\" te
-.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.\" Copyright 2016 Toomas Soome <tsoome@me.com>
-.\" Copyright 2018 OmniOS Community Edition (OmniOSce) Association.
-.TH BOOTADM 1M "Jul 05, 2018"
-.SH NAME
-bootadm \- manage bootability of the operating system
-.SH SYNOPSIS
-.LP
-.nf
-\fB/sbin/bootadm\fR update-archive [\fB-vnf\fR] [\fB-R\fR \fIaltroot\fR [\fB-p\fR \fIplatform\fR]]
- [\fB-F \fIformat\fR]
-.fi
-
-.LP
-.nf
-\fB/sbin/bootadm\fR list-archive [\fB-vn\fR] [\fB-R\fR \fIaltroot\fR [\fB-p\fR \fIplatform\fR]]
-.fi
-
-.LP
-.nf
-\fB/sbin/bootadm\fR install-bootloader [\fB-Mfv\fR] [\fB-R\fR \fIaltroot\fR] [\fB-P\fR \fIpool\fR]
-.fi
-
-.LP
-.nf
- x86 only
-.fi
-
-.LP
-.nf
-\fB/sbin/bootadm\fR set-menu [\fB-R\fR \fIaltroot\fR] \fIkey\fR=\fIvalue\fR
-.fi
-
-.LP
-.nf
-\fB/sbin/bootadm\fR list-menu [\fB-R\fR \fIaltroot\fR] [\fB-o\fR \fIkey\fR=\fIvalue\fR\fR]
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBbootadm\fR command manages the boot archive and, with x86 boot
-environments, the boot loader menu. The
-\fBupdate-archive\fR option provides a way for user to update the boot archive
-as a preventative measure or as part of a recovery procedure. The
-\fBset-menu\fR subcommand allows you to switch the \fBauto-boot\fR timeout and
-default boot entry in the boot menu.
-.sp
-.LP
-The \fBinstall-bootloader\fR subcommand installs the system boot loader on a
-ZFS pool. If ZFS pool was not specified with the \fB-P\fR option, then the boot
-loader is installed on the ZFS pool that the system booted from. If the
-system did not boot from a ZFS pool (for example, it booted an installer via PXE
-or CD-ROM) then the \fB-P\fR option is required.
-.sp
-This subcommand can be used to install, update, and repair the boot loader on a
-ZFS pool intended for booting. When disks in the ZFS pool used for booting the
-system have been replaced, one should run \fBbootadm install-bootloader\fR to
-ensure that all disks in that pool have the system boot loader installed.
-.sp
-.LP
-The \fBlist-menu\fR subcommand displays the location of the boot menu and the
-current boot menu entries. The location of the boot menu list is
-\fB/<boot pool root dataset mountpoint>/boot/menu.lst\fR.
-Use the \fBlist-menu\fR subcommand to
-locate the boot menu. See the EXAMPLES section for typical output from
-the \fBlist-menu\fR option.
-.sp
-.LP
-Note that OpenBoot PROM (OBP)-based machines, such as SPARC systems, use
-PROM variables to set boot behavior and are managed by the \fBeeprom\fR(1M)
-command.
-.sp
-.LP
-The \fBbootadm\fR command determines dynamically the options supported by the
-image to be managed, so that \fBbootadm\fR invoked on one platform can be used
-to manage diskless clients of a different platform type.
-.SH SUBCOMMANDS
-.LP
-The \fBbootadm\fR command has the following subcommands:
-.sp
-.ne 2
-.na
-\fB\fBupdate-archive\fR\fR
-.ad
-.sp .6
-.RS 4n
-Updates current boot archive if required. Applies to both SPARC and x86
-platforms. The boot archive can be created in a number of different formats;
-the default format is an IEEE/P1003 Data Interchange Standard cpio archive.
-The format is configured through the following service management facility
-(\fBsmf\fR(5)) property:
-.sp
-.in +2
-.nf
-svc:/system/boot-archive:default/config/format
-.fi
-.in -2
-
-.sp
-.LP
-This property takes one of the following values:
-.RS 8n
-
-.sp
-.ne 2
-.na
-\fBcpio\fR
-.ad
-.sp .6
-.RS 4n
-IEEE/P1003 Data Interchange Standard cpio archive (default).
-.RE
-
-.sp
-.ne 2
-.na
-\fBhsfs\fR
-.ad
-.sp .6
-.RS 4n
-ISO 9660 filesystem image (only supported if \fI/usr/bin/mkisofs\fR is
-available).
-.RE
-
-.sp
-.ne 2
-.na
-\fBufs\fR
-.ad
-.sp .6
-.RS 4n
-UFS filesystem in which the files within are compressed using gzip if
-\fI/usr/bin/gzip\fR is available.
-.RE
-
-.sp
-.ne 2
-.na
-\fBufs-nocompress\fR
-.ad
-.sp .6
-.RS 4n
-UFS filesystem. The files within are not compressed but the resulting overall
-boot archive will still be compressed if \fI/usr/bin/gzip\fR is available.
-.RE
-.RE
-
-See \fBEXAMPLES\fR for how to change this value.
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBlist-archive\fR\fR
-.ad
-.sp .6
-.RS 4n
-Lists the files and directories to be included in the boot archive. Applies to
-both SPARC and x86 platforms.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBinstall-bootloader\fR\fR
-.ad
-.sp .6
-.RS 4n
-Applies platform specific method to install the system boot loader to the disks
-that are part of the selected ZFS pool (either specified with \fB-P\fR or
-the default).
-.sp
-On SPARC, the boot loader is installed in the boot area of the disk partition
-used by the ZFS pool.
-.sp
-On x86, disks are formatted using either \fBMBR Partitioning\fR (Master Boot
-Record) or using \fBGPT Partitioning\fR (GUID Partition Tables). The first
-sector on the disk that is used by the \fBBIOS\fR to find a boot loader
-is referred to as the \fBMBR\fR (Master Boot Record) and is always used
-regardless of the partition scheme.
-.sp
-On x86, disks in a ZFS pool may be a combination of either type of partitioning
-scheme. If an entire disk was added to a ZFS pool (e.g. c0t0d0), then it was
-formatted with \fBGPT\fR partitioning and the fact is recorded. The
-\fBinstall-bootloader\fR subcommand will always update the system boot loader on
-the disks. However, unless the entire disk was given a ZFS pool or the \fB-M\fR
-option is specified, the \fBMBR\fR of the disk will not updated, as the system
-cannot guarantee that the \fBMBR\fR belongs to it. If, for example, the system
-was being dual booted, a different initial boot loader may be installed there.
-.sp
-To reinstall the boot loader on some or all of the disks, the \fB-f\fR option
-must be passed to the \fBinstall-bootloader\fR subcommand to override boot
-program version checks.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBset-menu\fR\fR
-.ad
-.sp .6
-.RS 4n
-Maintain the menu configuration. The index of menu entries is listed in the
-\fBmenu.lst\fR file, and the actual configuration of the menu entry is located
-in the boot environment \fB/boot\fR directory.
-Applies to x86 platforms only.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBlist-menu\fR\fR
-.ad
-.sp .6
-.RS 4n
-Lists the location of the \fBmenu.lst\fR, as well as the current menu
-entries. This listing includes the default entry, dataset name, and the
-title of each entry. Applies to x86 platforms only.
-.RE
-
-.SH OPTIONS
-.LP
-The \fBbootadm\fR command has the following options:
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR\fR
-.ad
-.sp .6
-.RS 4n
-In an \fBupdate-archive\fR operation, force re-generation of the boot-archive
-even if no files have changed.
-
-In an \fBinstall-bootloader\fR operation, override the boot loader versioning
-constraints.
-.RE
-
-.sp
-.ne 2
-.na
-\fB-F \fIformat\fR\fR
-.ad
-.sp .6
-.RS 4n
-In an \fBupdate-archive\fR operation, select the desired archive format. The
-format can be any of the values shown above for the
-svc:/system/boot-archive:default/config/format property.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR\fR
-.ad
-.sp .6
-.RS 4n
-In an \fBupdate-archive\fR operation, archive content is checked but not
-updated.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-o\fR\fR \fIkey\fR=\fIvalue\fR
-.ad
-.sp .6
-.RS 4n
-In a \fBlist-menu\fR operation, specify the menu entry for detailed inspection.
-Possible keys are \fBentry\fR and \fBtitle\fR, taking either entry number or
-title name as values.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR \fIplatform\fR\fR
-.ad
-.sp .6
-.RS 4n
-The platform, or machine hardware class, of the client. The platform type can
-only be specified together with \fB-R\fR, and is generally useful only for
-managing a diskless client where the client is of a different platform class
-than the server. Platform must be one of \fBi86pc\fR, \fBsun4u\fR, or
-\fBsun4v\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.sp .6
-.RS 4n
-In an \fBupdate-archive\fR operation, stale files are displayed on stderr.
-.sp
-In an \fBinstall-bootloader\fR operation, display any output from tasks
-performed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-M\fR\fR
-.ad
-.sp .6
-.RS 4n
-On x86 systems, in an \fBinstall-bootloader\fR operation, additionally installs
-the system boot loader to the \fBMBR\fR (master boot record). For more
-information, see the discussion of \fBinstall-bootloader\fR in the
-\fBSUBCOMMANDS\fR section.
-.sp
-This option is not supported on non-x86 systems, and it is an error to specify
-it.
-.RE
-
-.sp
-.ne 2
-.na
-\fB-P\fR\ \fIpool\fR
-.ad
-.sp .6
-.RS 4n
-In an \fBinstall-bootloader\fR operation, the boot loader is installed on
-the disks in the ZFS pool \fIpool\fR. If the \fB-P\fR option is not specified,
-then the boot loader is installed on the ZFS pool that the system booted from.
-If the system did not boot from a ZFS pool then the \fB-P\fR option is required.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-R\fR\ \fIaltroot\fR\fR
-.ad
-.sp .6
-.RS 4n
-Operation is applied to an alternate root path. In an \fBinstall-bootloader\fR
-operation, the boot loader is still installed on the specified pool; however,
-the boot loader itself will come from the alternate root.
-.LP
-Note -
-.sp
-.RS 2
-The root file system of any non-global zones must not be referenced with the
-\fB-R\fR option. Doing so might damage the global zone's file system, might
-compromise the security of the global zone, and might damage the non-global
-zone's file system. See \fBzones\fR(5).
-.RE
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIkey\fR=\fIvalue\fR\fR
-.ad
-.sp .6
-.RS 4n
-Possible values are:
-.sp
-.ne 2
-.na
-\fB\fBdefault=\fR\fIentrynum\fR\fR
-.ad
-.sp .6
-.RS 4n
-The item number (for example, 0, 1, or 2) in the boot menu designating the
-operating system to boot when the timer expires.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBtimeout=\fR\fIseconds\fR\fR
-.ad
-.sp .6
-.RS 4n
-The number of seconds before the operating system designated by the default
-item number is booted. If the value is -1, auto boot is disabled.
-.RE
-
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRUpdating the Current Boot Archive
-.sp
-.LP
-The following command updates the current boot archive:
-
-.sp
-.in +2
-.nf
-# bootadm update-archive
-.fi
-.in -2
-
-.LP
-\fBExample 2 \fRUpdating the Boot Archive on an Alternate Root
-.sp
-.LP
-The following command updates the boot archive on an alternate root:
-
-.sp
-.in +2
-.nf
-# bootadm update-archive -R /a
-.fi
-.in -2
-
-.LP
-\fBExample 3 \fRListing Boot Menu Entries and Location of Boot Menu
-.sp
-.LP
-The following command lists the boot environments and the location of the
-\fBmenu.lst\fR:
-
-.sp
-.in +2
-.nf
-# bootadm list-menu
-the location for the active menu is: /raid/boot/menu.lst
-Index Default Dataset Menu
-0 - raid/ROOT/test-182 test-182
-1 - raid/ROOT/test-183 test-183
-2 * raid/ROOT/test-184 test-184
-.fi
-.in -2
-
-.LP
-\fBExample 4 \fRSwitching Default Boot Entry
-.sp
-.LP
-The following command refers to the menu displayed in the previous example. The
-user selects test-183 (item 1).
-
-.sp
-.in +2
-.nf
-# bootadm set-menu default=1
-.fi
-.in -2
-
-.LP
-\fBExample 5 \fRChanging archive format
-.sp
-.LP
-The following command changes the boot archive format to \fIufs\fR
-
-.sp
-.in +2
-.nf
-# svccfg -s system/boot-archive:default setprop config/format = ufs
-# svcadm refresh system/boot-archive:default
-# bootadm update-archive -f
-.fi
-.in -2
-
-.LP
-\fBExample 6 \fRDetailed information about menu entry.
-.sp
-.LP
-The following command lists more detailed information about a boot menu entry:
-
-.sp
-.in +2
-.nf
-# bootadm list-menu -o entry=2
-the location for the active menu is: /raid/boot/menu.lst
-
-Title: test-184
-Timeout: 10
-Console: text
-Bootfs: raid/ROOT/test-184
-Kernel: /platform/i86pc/kernel/amd64/unix
-Boot-args: "-v"
-
-Modules:
-Name: boot_archive
-Path: /platform/i86pc/${ISADIR}/boot_archive
-Type: rootfs
-Status: Load
-
-Name: boot_archive.hash
-Path: /platform/i86pc/${ISADIR}/boot_archive.hash
-Type: hash
-Status: Load
-
-Name: system
-Path: /boot/modules/etc/system
-Type: file
-Hash: 4f4fe2d2dfae393a2a87ce29e3c71b803938c5fb
-Flags: name=etc/system
-Status: Load
-
-.fi
-.in -2
-
-.SH EXIT STATUS
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.sp .6
-.RS 4n
-The command completed successfully.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB1\fR\fR
-.ad
-.sp .6
-.RS 4n
-The command exited due to an error.
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Committed
-.TE
-
-.SH SEE ALSO
-.LP
-\fBboot\fR(1M), \fBbeadm\fR(1M), \fBinstallboot\fR(1M), \fBattributes\fR(5)
diff --git a/usr/src/man/man1m/busstat.1m b/usr/src/man/man1m/busstat.1m
deleted file mode 100644
index 9feb5cd343..0000000000
--- a/usr/src/man/man1m/busstat.1m
+++ /dev/null
@@ -1,321 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 1999 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH BUSSTAT 1M "Nov 1, 1999"
-.SH NAME
-busstat \- report bus-related performance statistics
-.SH SYNOPSIS
-.LP
-.nf
-\fBbusstat\fR \fB-e\fR \fIdevice-inst\fR | \fB-h\fR | \fB-l\fR
-.fi
-
-.LP
-.nf
-\fBbusstat\fR [\fB-a\fR] [\fB-n\fR]
- [\fB-w \fR \fIdevice-inst\fR [,pic0=\fIevent\fR,pic\fIn\fR=\fIevent\fR ]]...
- [\fB-r\fR \fIdevice-inst\fR]... [\fIinterval \fR [\fIcount\fR]]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBbusstat\fR provides access to the bus-related performance counters in the
-system. These performance counters allow for the measurement of statistics like
-hardware clock cycles, bus statistics including \fBDMA\fR and cache coherency
-transactions on a multiprocessor system. Each bus device that supports these
-counters can be programmed to count a number of events from a specified list.
-Each device supports one or more Performance Instrumentation Counters
-(\fBPIC\fR) that are capable of counting events independently of each other.
-.sp
-.LP
-Separate events can be selected for each \fBPIC\fR on each instance of these
-devices. \fBbusstat\fR summarizes the counts over the last interval seconds,
-repeating forever. If a count is given, the statistics are repeated count
-times.
-.sp
-.LP
- Only root users can program these counters. Non-root users have the option of
-reading the counters that have been programmed by a root user.
-.sp
-.LP
-The default value for the \fIinterval\fR argument is 1 second, and the default
-\fIcount\fR is unlimited.
-.sp
-.LP
-The devices that export these counters are highly platform-dependent and the
-data may be difficult to interpret without an in-depth understanding of the
-operation of the components that are being measured and of the system they
-reside in.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-a\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display absolute counter values. The default is \fBdelta\fR values.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-e\fR \fIdevice-inst\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display the list of events that the specified device supports for each pic.
-.sp
-Specify \fIdevice-inst\fR as device (\fBname\fR) followed by an optional
-instance number. If an instance number is specified, the events for that
-instance are displayed. If no instance number is specified, the events for the
-first instance of the specified device are displayed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-h\fR\fR
-.ad
-.sp .6
-.RS 4n
-Print a usage message.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR\fR
-.ad
-.sp .6
-.RS 4n
-List the devices in the system which support performance counters.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR\fR
-.ad
-.sp .6
-.RS 4n
-Do not display a title in the output. The default is to display titles.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-r\fR \fIdevice-inst\fR\fR
-.ad
-.sp .6
-.RS 4n
-Read and display all \fBpic\fR values for the specified device
-.sp
-Specify \fIdevice-inst\fR as \fIdevice\fR (\fBname\fR) followed by \fIinstance
-number\fR, if specifying an instance number of a device whose counters are to
-be read and displayed. If all instances of this device are to be read, use
-\fIdevice\fR (\fBname\fR) without an instance number. All \fBpic\fR values will
-be sampled when using the \fB-r\fR option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-w\fR \fIdevice-inst\fR [,pic0=\fIevent\fR] [,pic\fIn\fR=\fIevent\fR] \fR
-.ad
-.sp .6
-.RS 4n
-Program (write) the specified devices to count the specified events. Write
-access to the counters is restricted to root users only. Non-root users can use
-\fB-r\fR option.
-.sp
-Specify \fIdevice-inst\fR as \fIdevice\fR (\fBname\fR) followed by an optional
-\fIinstance number\fR. If specifying an instance number of a device to program
-these events on. If all instances of this device are to be programmed the same,
-then use \fIdevice\fR without an instance number. Specify an event to be
-counted for a specified \fBpic\fR by providing a comma separated list of
-\fBpic\fIn\fR=\fR\fIevent\fR values.
-.sp
-The \fB-e\fR option displays all valid event names for each device. Any devices
-that are programmed will be sampled every interval seconds and repeated count
-times. It is recommended that the interval specified is small enough to ensure
-that counter wraparound will be detected. The rate at which counters
-wraparound varies from device to device. If a user is programming events using
-the \fB-w\fR option and \fBbusstat\fR detects that another user has changed the
-events that are being counted, the tool will terminate as the programmed
-devices are now being controlled by another user. Only one user can be
-programming a device instance at any one time. Extra devices can be sampled
-using the \fB-r\fR option. Using multiple instances of the \fB-w\fR option on
-the same command line, with the same \fIdevice-inst\fR specifying a different
-list of events for the \fBpic\fRs will give the effect of multiplexing for that
-device. \fBbusstat\fR will switch between the list of events for that device
-every interval seconds. Event can be a string representing the event name, or
-even a number representing the bit pattern to be programmed into the
-Performance Control Register (\fBPCR\fR). This assumes explicit knowledge of
-the meaning of the control register bits for a device. The number can be
-specified in hexadecimal, decimal, or octal, using the usual conventions of
-\fBstrtol\fR(3C).
-.RE
-
-.SH EXIT STATUS
-.sp
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB0\fR
-.ad
-.RS 5n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB1\fR
-.ad
-.RS 5n
-An error occurred.
-.RE
-
-.sp
-.ne 2
-.na
-\fB2\fR
-.ad
-.RS 5n
-Another user is writing to the same devices.
-.RE
-
-.SH EXAMPLES
-.SS "SPARC Only"
-.LP
-\fBExample 1 \fRProgramming and monitoring the Address Controller counters
-.sp
-.LP
-In this example, \fBac0\fR refers to the Address Controller instance 0. The
-counters are programmed to count Memory Bank stalls on an Ultra Enterprise
-system at 10 second intervals with the values displayed in absolute form
-instead of deltas.
-
-.sp
-.in +2
-.nf
-# busstat -a -w ac0,pic0=mem_bank0_stall,pic1=mem_bank1_stall 10
-time dev event0 pic0 event1 pic1
-10 ac0 mem_bank0_stall 1234 mem_bank1_stall 5678
-20 ac0 mem_bank0_stall 5678 mem_bank1_stall 12345
-30 ac0 mem_bank0_stall 12345 mem_bank1_stall 56789
-\&...
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-For a complete list of the supported events for a device, use the \fB-e\fR
-option.
-
-.LP
-\fBExample 2 \fRProgramming and monitoring the counters on all instances of the
-Address Controller
-.sp
-.LP
-In this example, \fBac\fR refers to all \fBac\fR instances. This example
-programs all instances of the Address Controller counters to \fBcount_clock\fR
-cycles and \fBmem_bank0_rds\fR at 2 second intervals, 100 times, displaying the
-values as deltas.
-
-.sp
-.in +2
-.nf
-# busstat -w ac,pic0=clock_cycles,pic1=mem_bank0_rds 2 100
-time dev event0 pic0 event1 pic1
-2 ac0 clock_cycles 167242902 mem_bank0_rds 3144
-2 ac1 clock_cycles 167254476 mem_bank0_rds 1392
-4 ac0 clock_cycles 168025190 mem_bank0_rds 40302
-4 ac1 clock_cycles 168024056 mem_bank0_rds 40580
-\&...
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRMonitoring the events being counted
-.sp
-.LP
-This example monitors the events that are being counted on the sbus1 device,
-100 times at 1 second intervals. It suggests that a root user has changed the
-events that \fBsbus1\fR was counting to be \fBdvma_tlb_misses\fR and interrupts
-instead of \fBpio_cycles\fR.
-
-.sp
-.in +2
-.nf
-% busstat -r sbus0 1 100
-
-time dev event0 pic0 event1 pic1
-1 sbus1 pio_cycles 2321 pio_cycles 2321
-2 sbus1 pio_cycles 48 pio_cycles 48
-3 sbus1 pio_cycles 49 pio_cycles 49
-4 sbus1 pio_cycles 2281 pio_cycles 2281
-5 sbus1 dvma_tlb_misses 0 interrupts 0
-6 sbus1 dvma_tlb_misses 6 interrupts 2
-7 sbus1 dvma_tlb_misses 8 interrupts 11
-\&...
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 4 \fREvent Multiplexing
-.sp
-.LP
-This example programs \fBac0\fR to alternate between counting (clock cycles,
-\fBmem_bank0_rds\fR) and (\fBaddr_pkts\fR, \fBdata_pkts\fR) at 2 second
-intervals while also monitoring what \fBac1\fR is counting :
-
-.sp
-.LP
-It shows the expected output of the above \fBbusstat\fR command. Another root
-user on the machine has changed the events that this user had programmed and
-\fBbusstat\fR has detected this and terminates the command with a message.
-
-.sp
-.in +2
-.nf
-# busstat -w ac0,pic0=clock_cycles,pic1=mem_bank0_rds \e
- -w ac0,pic0=addr_pkts,pic1=data_pkts \e
- -r ac1 2
-
-time dev event0 pic0 event1 pic1
-2 ac0 addr_pkts 12866 data_pkts 17015
-2 ac1 rio_pkts 385 rio_pkts 385
-4 ac0 clock_cycles 168018914 mem_bank0_rds 2865
-4 ac1 rio_pkts 506 rio_pkts 506
-6 ac0 addr_pkts 144236 data_pkts 149223
-6 ac1 rio_pkts 522 rio_pkts 522
-8 ac0 clock_cycles 168021245 mem_bank0_rds 2564
-8 ac1 rio_pkts 387 rio_pkts 387
-10 ac0 addr_pkts 144292 data_pkts 159645
-10 ac1 rio_pkts 506 rio_pkts 506
-12 ac0 clock_cycles 168020364 mem_bank0_rds 2665
-12 ac1 rio_pkts 522 rio_pkts 522
-busstat: events changed (possibly by another busstat).
-#
-.fi
-.in -2
-.sp
-
-.SH SEE ALSO
-.sp
-.LP
-\fBiostat\fR(1M), \fBmpstat\fR(1M), \fBvmstat\fR(1M), \fBstrtol\fR(3C),
-\fBattributes\fR(5)
diff --git a/usr/src/man/man1m/captoinfo.1m b/usr/src/man/man1m/captoinfo.1m
deleted file mode 100644
index e49c000a0e..0000000000
--- a/usr/src/man/man1m/captoinfo.1m
+++ /dev/null
@@ -1,102 +0,0 @@
-'\" te
-.\" Copyright (c) 1996, Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH CAPTOINFO 1M "May 18, 1993"
-.SH NAME
-captoinfo \- convert a termcap description into a terminfo description
-.SH SYNOPSIS
-.LP
-.nf
-\fBcaptoinfo\fR [\fB-1\fR] [\fB-v\fR]... [\fB-V\fR] [\fB-w\fR \fIwidth\fR] \fIfilename\fR...
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBcaptoinfo\fR looks in \fIfilename\fR for \fBtermcap\fR descriptions. For
-each one found, an equivalent \fBterminfo\fR description is written to
-standard output, along with any comments found. A description which is
-expressed as relative to another description (as specified in the \fBtermcap\fR
-\fBtc = field\fR) is reduced to the minimum superset before being displayed.
-.sp
-.LP
-If no \fIfilename\fR is given, then the environment variable
-\fB\fR\fBTERM\fR\fBCAP \fR is used for the filename or entry. If
-\fB\fR\fBTERM\fR\fBCAP \fR is a full pathname to a file, only the terminal
-whose name is specified in the environment variable \fBTERM\fR is extracted
-from that file. If the environment variable \fB\fR\fBTERM\fR\fBCAP \fR is not
-set, then the file \fB/usr/share/lib/termcap\fR is read.
-.SH OPTIONS
-.sp
-.ne 2
-.na
-\fB\fB\(mi1\fR\fR
-.ad
-.RS 12n
-Display the fields one to a line. Otherwise, the fields are printed several to
-a line, with a maximum width of 60 characters.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.RS 12n
-Display tracing information on the standard error as the program runs.
-Specifying additional \fB-v\fR options displays more detailed information.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-V\fR\fR
-.ad
-.RS 12n
-Display the version of the program in use on the standard error and then exit.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-w\fR\fI width\fR\fR
-.ad
-.RS 12n
-Change the output to \fIwidth\fR characters.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/usr/share/lib/terminfo/?/*\fR\fR
-.ad
-.sp .6
-.RS 4n
-compiled terminal description database
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/share/lib/termcap\fR\fR
-.ad
-.sp .6
-.RS 4n
-
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBinfocmp\fR(1M), \fBcurses\fR(3CURSES), \fBterminfo\fR(4),
-\fBattributes\fR(5)
-.SH NOTES
-.sp
-.LP
-\fBcaptoinfo\fR should be used to convert \fBtermcap\fR entries to
-\fBterminfo\fR entries because the \fBtermcap\fR database may not be supplied
-in future releases.
diff --git a/usr/src/man/man1m/catman.1m b/usr/src/man/man1m/catman.1m
deleted file mode 100644
index 9a49874838..0000000000
--- a/usr/src/man/man1m/catman.1m
+++ /dev/null
@@ -1,72 +0,0 @@
-.\"
-.\" This file and its contents are supplied under the terms of the
-.\" Common Development and Distribution License ("CDDL"), version 1.0.
-.\" You may only use this file in accordance with the terms of version
-.\" 1.0 of the CDDL.
-.\"
-.\" A full copy of the text of the CDDL should have accompanied this
-.\" source. A copy of the CDDL is also available via the Internet at
-.\" http://www.illumos.org/license/CDDL.
-.\"
-.\"
-.\" Copyright 2014 Garrett D'Amore <garrett@damore.org>
-.\"
-.Dd April 9, 2016
-.Dt CATMAN 1M
-.Os
-.Sh NAME
-.Nm catman
-.Nd generate
-.Nm whatis
-database files
-.Sh SYNOPSIS
-.Nm
-.Op Fl M Ar path
-.Op Fl w
-.Sh DESCRIPTION
-The
-.Nm
-utility generates a set of
-.Nm whatis
-database files suitable for use with
-.Xr apropos 1
-and
-.Xr whatis 1 .
-It is supplied for compatibility reasons.
-The same databases can be generated using the
-.Fl w
-option with
-.Xr man 1 ,
-and that command should be used instead.
-.Sh OPTIONS
-.Bl -tag -width ".Fl d"
-.It Fl M Ar path
-Generate the
-.Nm whatis
-database files within the specified colon separated manual paths.
-Overrides the
-.Ev MANPATH
-environment variable.
-.It Fl w
-This option is present for backwards compatibility, and is ignored.
-.El
-.Sh ENVIRONMENT
-The following environment variables affect the execution of
-.Nm :
-.Bl -tag -width ".Ev MANPATH"
-.It Ev MANPATH
-Used to specify a colon separated list of manual paths within
-which to generate
-.Nm whatis
-database files.
-.El
-.Sh EXIT STATUS
-.Ex -std
-.Sh INTERFACE STABILITY
-.Nm "Obsolete Committed" .
-.Sh CODE SET INDEPENDENCE
-Enabled.
-.Sh SEE ALSO
-.Xr apropos 1 ,
-.Xr man 1 ,
-.Xr whatis 1
diff --git a/usr/src/man/man1m/ccidadm.1m b/usr/src/man/man1m/ccidadm.1m
deleted file mode 100644
index 87ab106363..0000000000
--- a/usr/src/man/man1m/ccidadm.1m
+++ /dev/null
@@ -1,190 +0,0 @@
-.\"
-.\" This file and its contents are supplied under the terms of the
-.\" Common Development and Distribution License ("CDDL"), version 1.0.
-.\" You may only use this file in accordance with the terms of version
-.\" 1.0 of the CDDL.
-.\"
-.\" A full copy of the text of the CDDL should have accompanied this
-.\" source. A copy of the CDDL is also available via the Internet at
-.\" http://www.illumos.org/license/CDDL.
-.\"
-.\"
-.\" Copyright 2019 Joyent, Inc.
-.\"
-.Dd September 12, 2020
-.Dt CCIDADM 1M
-.Os
-.Sh NAME
-.Nm ccidadm
-.Nd CCID administration utility
-.Sh SYNOPSIS
-.Nm
-.Cm list
-.Nm
-.Cm atr
-.Op Fl pvx
-.Op Ar device
-.Nm
-.Cm reader
-.Op Ar device
-.Sh DESCRIPTION
-The
-.Nm
-utility can be used to list the CCID controllers and their slots known to the
-.Xr ccid 7D
-driver, query the features and capabilities of a CCID controller, and print
-the ATR of an ICC (integrated circuit card) that is inserted in a slot on an
-CCID controller.
-.Pp
-The information returned by the hardware is printed by
-.Nm
-in a human-readable form where applicable.
-.Sh ARGUMENTS
-.Nm
-expects the following kinds of arguments:
-.Bl -tag -width "device"
-.It Ar command
-Any command
-.Nm
-understands.
-See section
-.Sx COMMANDS
-for more information.
-.It Ar device
-Specifies a CCID reader or a slot, either as absolute path to the device node
-or in a short-hand form.
-The short-hand form consists of the reader instance, specified by the driver
-name
-.Qq ccid
-followed by the instance number of the reader, and optionally a slot instance
-separated by a
-.Qq / ,
-consisting of the word
-.Qq slot
-followed by the slot number.
-Here's an example for slot 1 on ccid reader 5:
-.Qq ccid5/slot1
-.El
-.Sh COMMANDS
-.Bl -tag -width ""
-.It Xo
-.Nm
-.Cm list
-.Xc
-Lists the CCID controllers and their slots known to the system and prints their
-product name, device node, card state, and the transport protocol in use.
-.It Xo
-.Nm
-.Cm atr
-.Op Fl pvx
-.Op Ar device
-.Xc
-Prints the ATR of an ICC that is inserted in the specified slot.
-If a device is specified it must refer to a certain slot.
-If no device is specified the command will print the ATR of all inserted slots
-in the system.
-A human-readable summary of the ATR data is printed when no flags are given.
-The following options can be used to alter the output of the
-.Cm atr
-command:
-.Bl -tag -width Ds
-.It Fl v
-Verbose output, the individual bytes of the ATR are printed and decoded
-in a human-readable form.
-Additionally the historic data in the ATR is printed as a hexadecimal dump.
-.It Fl x
-The complete ATR is printed as a hexadecimal dump.
-.El
-.It Xo
-.Nm
-.Cm reader
-.Op Ar device
-.Xc
-Print the capabilities of the specified CCID reader.
-Specifying slot number is not required but can optionally be specified.
-If no device is given, the command will print the capabilities of all attached
-CCID readers.
-.El
-.Sh EXIT STATUS
-The
-.Nm
-utility exits 0 on success, 1 on any error opening or accessing the device, and
-2 if no command or an unknown command are given.
-.Sh EXAMPLES
-.Bl -tag -width ""
-.It Sy Example 1: List all CCID devices
-.Bd -literal
-# ccidadm list
-PRODUCT DEVICE CARD STATE TRANSPORT SUPPORTED
-Yubikey 4 OTP+U2F+CCID ccid0/slot0 activated APDU (T=1) supported
-Yubikey 4 OTP+U2F+CCID ccid1/slot0 unactivated APDU supported
-Smart Card Reader USB ccid2/slot0 missing TPDU unsupported
-Smart Card Reader USB ccid3/slot0 unactivated TPDU unsupported
-.Ed
-.It Sy Example 2: Get the ATR of a Yubikey
-.Bd -literal
-# ccidadm atr ccid0/slot0
-ATR for ccid0/slot0 (18 bytes):
-ICC supports protocol(s): T=1
-Card protocol is negotiable; starts with default T=1 parameters
-Reader will run ICC at ICC's Di/Fi values
-T=1 properties that would be negotiated:
- + Fi/Fmax Index: 1 (Fi 372/Fmax 5 MHz)
- + Di Index: 3 (Di 4)
- + Checksum: LRC
- + Extra Guardtime: 0
- + BWI: 1
- + CWI: 5
- + Clock Stop: 0 (disallowed)
- + IFSC: 254
- + CCID Supports NAD: no
-.Ed
-.It Sy Example 2: Get capabilities of a Smart Card Reader
-.Bd -literal
-# ccidadm reader ccid3
-Reader ccid3, CCID class v1.0 device:
- Product: Smart Card Reader USB
- Serial: <unknown>
- Slots Present: 1
- Maximum Busy Slots: 1
- Supported Voltages:
- + 5.0 V
- + 3.0 V
- + 1.8 V
- Supported Protocols:
- + T=0
- + T=1
- Default Clock: 3.69 MHz
- Maximum Clock: 3.69 MHz
- Supported Clock Rates: 1
- Default Data Rate: 9.92 Kbps
- Maximum Data Rate: 318 Kbps
- Supported Data Rates: 19
- Maximum IFSD (T=1 only): 254
- Synchronous Protocols Supported:
- + 2-Wire Support
- + 3-Wire Support
- + I2C Support
- Device Features:
- + Automatic ICC clock frequency change
- + Automatic baud rate change
- + Automatic PPS made by CCID
- + CCID can set ICC in clock stop mode
- + NAD value other than zero accepted
- + TPDU support
- Maximum Message Length: 271 bytes
-.Ed
-.El
-.Sh INTERFACE STABILITY
-The command line interface of
-.Nm
-is
-.Sy Evolving .
-The output of
-.Nm
-is
-.Sy Not-an-Interface
-and may change any time.
-.Sh SEE ALSO
-.Xr cfgadm 1M ,
-.Xr ccid 7D
diff --git a/usr/src/man/man1m/cfgadm.1m b/usr/src/man/man1m/cfgadm.1m
deleted file mode 100644
index 6083cd7c5d..0000000000
--- a/usr/src/man/man1m/cfgadm.1m
+++ /dev/null
@@ -1,939 +0,0 @@
-'\" te
-.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH CFGADM 1M "September 12, 2020"
-.SH NAME
-cfgadm \- configuration administration
-.SH SYNOPSIS
-.nf
-\fB/usr/sbin/cfgadm\fR [\fB-f\fR] [\fB-y\fR | \fB-n\fR] [\fB-v\fR] [\fB-o\fR \fIhardware_options\fR]
- \fB-c\fR \fIfunction\fR \fIap_id\fR...
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/cfgadm\fR [\fB-f\fR] [\fB-y\fR | \fB-n\fR] [\fB-v\fR] [\fB-o\fR \fIhardware_options\fR]
- \fB-x\fR \fIhardware_function\fR \fIap_id\fR...
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/cfgadm\fR [\fB-v\fR] [\fB-a\fR] [\fB-s\fR \fIlisting_options\fR]
- [\fB-o\fR \fIhardware_options\fR] [\fB-l\fR [\fIap_id\fR | \fIap_type\fR]]
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/cfgadm\fR [\fB-v\fR] [\fB-o\fR \fIhardware_options\fR] \fB-t\fR \fIap_id\fR...
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/cfgadm\fR [\fB-v\fR] [\fB-o\fR \fIhardware_options\fR] \fB-h\fR
- [\fIap_id\fR | \fIap_type\fR]
-.fi
-
-.SH DESCRIPTION
-The \fBcfgadm\fR command provides configuration administration operations on
-dynamically reconfigurable hardware resources. These operations include
-displaying status, (\fB-l\fR), initiating testing, (\fB-t\fR), invoking
-configuration state changes, (\fB-c\fR), invoking hardware specific functions,
-(\fB-x\fR), and obtaining configuration administration help messages
-(\fB-h\fR). Configuration administration is performed at \fBattachment
-points\fR, which are places where system software supports dynamic
-reconfiguration of hardware resources during continued operation of Solaris.
-.sp
-.LP
-Configuration administration makes a distinction between hardware resources
-that are physically present in the machine and hardware resources that are
-configured and visible to Solaris. The nature of configuration administration
-functions are hardware specific, and are performed by calling hardware specific
-libraries.
-.sp
-.LP
-Configuration administration operates on an \fBattachment point\fR. Hardware
-resources located at attachment points can or can not be physically replaceable
-during system operation, but are dynamically reconfigurable by way of the
-configuration administration interfaces.
-.sp
-.LP
-An attachment point defines two unique elements, which are distinct from the
-hardware resources that exist beyond the attachment point. The two elements of
-an attachment point are a \fBreceptacle\fR and an \fBoccupant\fR. Physical
-insertion or removal of hardware resources occurs at attachment points and
-results in a receptacle gaining or losing an occupant. Configuration
-administration supports the physical insertion and removal operations as well
-as other configuration administration functions at an attachment point.
-.sp
-.LP
-Attachment points have associated state and condition information. The
-configuration administration interfaces provide control for transitioning
-attachment point states. A receptacle can exist in one of three states:
-\fBempty\fR, \fBdisconnected\fR or \fBconnected\fR, while an occupant can exist
-in one of two states: \fBconfigured\fR or \fBunconfigured\fR.
-.sp
-.LP
-A receptacle can provide the \fBempty\fR state, which is the normal state of a
-receptacle when the attachment point has no occupants. A receptacle can also
-provide the \fBdisconnected\fR state if it has the capability of isolating its
-occupants from normal system access. Typically this state is used for various
-hardware specific testing prior to bringing the occupant's resources into full
-use by the system, or as a step in preparing an occupant for physical removal
-or reconfiguration. A receptacle in the disconnected state isolates its
-occupant from the system as much as its hardware allows, but can provide access
-for testing and setup. A receptacle must provide the \fBconnected\fR state,
-which allows normal access to hardware resources contained on any occupants.
-The connected state is the normal state of a receptacle that contains an
-occupant and that is not currently undergoing configuration administration
-operations.
-.sp
-.LP
-The hardware resources contained on an occupant in the \fBunconfigured\fR state
-are not represented by normal Solaris data structures and are thus not
-available for use by Solaris. Operations allowed on an unconfigured occupant
-are limited to configuration administration operations. The hardware resources
-of an occupant in the \fBconfigured\fR state are represented by normal Solaris
-data structures and thus some or all of those hardware resources can be in use
-by Solaris. All occupants provide both the \fBconfigured\fR and
-\fBunconfigured\fR states.
-.sp
-.LP
-An attachment point can be in one of five conditions: \fBunknown\fR, \fBok\fR,
-\fBfailing\fR, \fBfailed\fR, or \fBunusable\fR. An attachment point can enter
-the system in any condition depending upon results of power-on tests and
-non-volatile record keeping.
-.sp
-.LP
-An attachment point with an occupant in the \fBconfigured\fR state is in one of
-four conditions: \fBunknown\fR, \fBok\fR, \fBfailing\fR, or \fBfailed\fR. If
-the condition is not \fBfailing\fR or \fBfailed\fR an attachment point can
-change to \fBfailing\fR during the course of operation if a hardware dependent
-recoverable error threshold is exceeded. If the condition is not \fBfailed\fR
-an attachment point can change to \fBfailed\fR during operation as a result of
-an unrecoverable error.
-.sp
-.LP
-An attachment point with an occupant in the \fBunconfigured\fR state can be in
-any of the defined conditions. The condition of an attachment point with an
-\fBunconfigured\fR occupant can decay from \fBok\fR to \fBunknown\fR after a
-machine dependent time threshold. Initiating a test function changes the
-attachment point's condition to \fBok\fR, \fBfailing\fR or \fBfailed\fR
-depending on the outcome of the test. An attachment point that does not provide
-a test function can leave the attachment point in the \fBunknown\fR condition.
-If a test is interrupted, the attachment point's condition can be set to the
-previous condition, \fBunknown\fR or \fBfailed\fR. An attachment point in the
-\fBunknown\fR, \fBok\fR, \fBfailing\fR, or \fBfailed\fR conditions can be
-re-tested.
-.sp
-.LP
-An attachment point can exist in the \fBunusable\fR condition for a variety of
-reasons, such as inadequate power or cooling for the receptacle, an occupant
-that is unidentifiable, unsupported, incorrectly configured, etc. An attachment
-point in the \fBunusable\fR condition can never be used by the system. It
-typically remains in this condition until the physical cause is remedied.
-.sp
-.LP
-An attachment point also maintains busy information that indicates when a state
-change is in progress or the condition is being reevaluated.
-.sp
-.LP
-Attachment points are referred to using hardware specific identifiers
-(\fIap_id\fRs) that are related to the type and location of the attachment
-points in the system device hierarchy. An \fIap_id\fR can not be ambiguous, it
-must identify a single attachment point. Two types of \fIap_id\fR
-specifications are supported: physical and logical. A physical \fIap_id\fR
-contains a fully specified pathname, while a logical \fIap_id\fR contains a
-shorthand notation that identifies an attachment point in a more user-friendly
-way.
-.sp
-.LP
-For example, an attachment point representing a system's backplane slot number
-\fB7\fR could have a physical \fIap_id\fR of
-\fB/devices/central/fhc/sysctrl:slot7\fR while the logical \fIap_id\fR could be
-\fBsystem:slot7\fR. Another example, the third receptacle on the second \fBPCI
-I/O\fR bus on a system could have a logical \fIap_id\fR of \fBpci2:plug3\fR.
-.sp
-.LP
-Attachment points may also be created dynamically. A dynamic attachment point
-is named relative to a base attachment point which is present in the system.
-\fBap_id\fRs for dynamic attachment points consist of a base component followed
-by two colons (\fB::\fR) and a dynamic component. The base component is the
-base attachment point \fBap_id\fR. The dynamic component is hardware specific
-and generated by the corresponding hardware specific library.
-.sp
-.LP
-For example, consider a base attachment point, which represents a \fBSCSI
-HBA\fR, with the physical \fBap_id\fR
-\fB/devices/sbus@1f,0/SUNW,fas@e,8800000:scsi\fR and logical \fBap_id c0\fR. A
-disk attached to this \fBSCSI HBA\fR could be represented by a dynamic
-attachment point with logical \fBap_id\fR \fBc0::dsk/c0t0d0\fR where \fBc0\fR
-is the base component and \fBdsk/c0t0d0\fR is the hardware specific dynamic
-component. Similarly the physical \fBap_id\fR for this dynamic attachment point
-would be: \fB/devices/sbus@1f,0/SUNW,fas@e,8800000:scsi::dsk/c0t0d0\fR.
-.sp
-.LP
-An \fIap_type\fR is a partial form of a logical \fBap_id\fR that can be
-ambiguous and not specify a particular attachment point. An \fIap_type\fR is a
-substring of the portion of the logical \fBap_id\fR up to but not including the
-colon (\fB:\fR) separator. For example, an \fIap_type\fR of \fBpci\fR would
-show all attachment points whose logical \fIap_id\fRs begin with \fBpci\fR.
-.sp
-.LP
-The use of \fIap_types\fR is discouraged. The new select sub-option to the
-\fB-s\fR option provides a more general and flexible mechanism for selecting
-attachment points. See \fBOPTIONS\fR.
-.sp
-.LP
-The \fBcfgadm\fR command interacts primarily with hardware dependent functions
-contained in hardware specific libraries and thus its behavior is hardware
-dependent.
-.sp
-.LP
-For each configuration administration operation a service interruption can be
-required. Should the completion of the function requested require a noticeable
-service interruption to interactive users, a prompt is output on the standard
-error output for confirmation on the standard input before the function is
-started. Confirmation can be overridden using the \fB-y\fR or \fB-n\fR options
-to always answer yes or no respectively. Hardware specific options, such as
-test level, are supplied as sub-options using the \fB-o\fR option.
-.sp
-.LP
-Operations that change the state of the system configuration are audited by the
-system log daemon \fBsyslogd\fR(1M).
-.sp
-.LP
-The arguments for this command conform to the \fBgetopt\fR(3C) and
-\fBgetsubopt\fR(3C) syntax convention.
-.SH OPTIONS
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-a\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies that the \fB-l\fR option must also list dynamic attachment points.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-c\fR\fIfunction\fR\fR
-.ad
-.sp .6
-.RS 4n
-Performs the state change \fIfunction\fR on the attachment point specified by
-\fIap_id.\fR
-.sp
-Specify \fIfunction\fR as \fBinsert\fR, \fBremove\fR, \fBdisconnect\fR,
-\fBconnect\fR, \fBconfigure\fR or \fBunconfigure\fR. These functions cause
-state transitions at the attachment point by calling hardware specific library
-routines and are defined in the following list.
-.sp
-.ne 2
-.na
-\fB\fBinsert\fR\fR
-.ad
-.RS 15n
-Performs operations that allows the user to manually insert an occupant or to
-activate a hardware supplied mechanism that performs the physical insertion.
-\fBinsert\fR can have hardware specific side effects that temporarily suspend
-activity in portions of the system. In such cases the hardware specific library
-generates appropriate warning messages and informs the user of any special
-considerations or procedures unique to that hardware. Various hardware specific
-errors can cause this function to fail and set the receptacle condition to
-\fBunusable\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBremove\fR\fR
-.ad
-.RS 15n
-Performs operations that allow the user to manually remove an occupant or to
-activate a hardware supplied mechanism to perform the physical removal.
-\fBremove\fR can have hardware specific side effects that temporarily suspend
-activity in portions of the system. In such cases the hardware specific library
-generates appropriate warning messages and informs the user of any special
-considerations or procedures unique to that hardware. Various hardware specific
-errors can cause this function to fail and set the receptacle condition to
-unusable.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdisconnect\fR\fR
-.ad
-.RS 15n
-Performs hardware specific operations to put a receptacle in the disconnected
-state, which can prevent an occupant from operating in a normal fashion through
-the receptacle.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBconnect\fR\fR
-.ad
-.RS 15n
-Performs hardware specific operations to put the receptacle in the
-\fBconnected\fR state, which allows an occupant to operate in a normal fashion
-through the receptacle.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBconfigure\fR\fR
-.ad
-.RS 15n
-Performs hardware specific operations that allow an occupant's hardware
-resources to be usable by Solaris. Occupants that are configured are part of
-the system configuration and are available for manipulation by Solaris device
-manipulation maintenance commands (eg: \fBpsradm\fR(1M), \fBmount\fR(1M),
-\fBifconfig\fR(1M)).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBunconfigure\fR\fR
-.ad
-.RS 15n
-Performs hardware specific operations that logically remove an occupant's
-hardware resources from the system. The occupant must currently be configured
-and its hardware resources must not be in use by Solaris.
-.RE
-
-State transition functions can fail due to the condition of the attachment
-point or other hardware dependent considerations. All state change
-\fIfunction\fRs in the direction of adding resources, \fB(insert,\fR
-\fBconnect\fR and \fBconfigure)\fR are passed onto the hardware specific
-library when the attachment point is in the \fBok\fR or \fBunknown\fR
-condition. All other conditions require the use of the force option to allow
-these \fIfunction\fRs to be passed on to the hardware specific library.
-Attachment point condition does not prevent a hardware specific library being
-called for related to the removal (\fBremove,\fR \fBdisconnect\fR and
-\fBunconfigure\fR), of hardware resources from the system. Hardware specific
-libraries can reject state change \fIfunction\fRs if the attachment point is in
-the \fBunknown\fR condition.
-.sp
-The condition of an attachment point is not necessarily changed by the state
-change functions, however errors during state change operations can change the
-attachment point condition. An attempt to override a condition and force a
-state change that would otherwise fail can be made by specifying the force
-option (\fB-f\fR). Hardware specific safety and integrity checks can prevent
-the force option from having any effect.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR\fR
-.ad
-.sp .6
-.RS 4n
-Forces the specified action to occur. Typically, this is a hardware dependent
-override of a safety feature. Forcing a state change operation can allow use of
-the hardware resources of occupant that is not in the \fBok\fR or \fBunknown\fR
-conditions, at the discretion of any hardware dependent safety checks.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\fR\fB-h\fR [\fIap_id\fR | \fIap_type\fR \|.\|.\|. ]\fR
-.ad
-.sp .6
-.RS 4n
-Prints out the help message text. If \fIap_id\fR or \fIap_type\fR is specified,
-the help routine of the hardware specific library for the attachment point
-indicated by the argument is called.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\fR\fB-l\fR [\fIap_id\fR | \fIap_type\fR \|.\|.\|. ]\fR
-.ad
-.sp .6
-.RS 4n
-Lists the state and condition of attachment points specified. Attachment points
-can be filtered by using the \fB-s\fR option and \fBselect\fR sub-option.
-Invoking \fBcfgadm\fR without one of the action options is equivalent to
-\fB-l\fR without an argument. The format of the list display is controlled by
-the \fB-v\fR and \fB-s\fR options. When the \fB-a\fR option is specified
-attachment points are dynamically expanded.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR\fR
-.ad
-.sp .6
-.RS 4n
-Suppress any interactive confirmation and assume that the answer is \fIno\fR.
-If neither \fB-n\fR or \fB-y\fR is specified, interactive confirmation is
-obtained through the standard error output and the standard input. If either of
-these standard channels does not correspond to a terminal (as determined by
-\fBisatty\fR(3C)) then the \fB-n\fR option is assumed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-o\fR\fIhardware_options\fR\fR
-.ad
-.sp .6
-.RS 4n
-Supplies hardware specific options to the main command option. The format and
-content of the hardware option string is completely hardware specific. The
-option string \fIhardware_options\fR conforms to the \fBgetsubopt\fR(3C) syntax
-convention.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR\fIlisting_options\fR\fR
-.ad
-.sp .6
-.RS 4n
-Supplies listing options to the list (\fB-l\fR) command. \fIlisting_options\fR
-conforms to the \fBgetsubopt\fR(3C) syntax convention. The sub-options are used
-to specify the attachment point selection criteria (
-\fBselect\fR=\fIselect_string\fR), the type of matching desired
-(\fBmatch\fR=\fImatch_type\fR), order of listing (\fBsort\fR=\fIfield_spec\fR),
-the data that is displayed (\fBcols=\fR\fIfield_spec\fR and
-\fBcols2=\fR\fIfield_spec\fR), the column delimiter (\fBdelim=\fR\fIstring\fR)
-and whether to suppress column headings (\fBnoheadings\fR).
-.sp
-When the \fBselect\fR sub-option is specified, only attachment points which
-match the specified criteria will be listed. The \fBselect\fR sub-option has
-the following syntax:
-.sp
-.in +2
-.nf
-cfgadm \fB-s\fR select=attr1(value1):attr2(value2)...
-.fi
-.in -2
-.sp
-
-where an \fIattr\fR is one of \fBap_id\fR, \fBclass\fR or \fBtype\fR.
-\fBap_id\fR refers to the logical \fIap_id\fR field, \fBclass\fR refers to
-attachment point class and \fBtype\fR refers to the type field. \fIvalue1\fR,
-\fIvalue2\fR, etc. are the corresponding values to be matched. The type of
-match can be specified by the \fBmatch\fR sub-option as follows:
-.sp
-.in +2
-.nf
-cfgadm \fB-s\fR match=\fImatch_type\fR,select=attr1(value1)...
-.fi
-.in -2
-.sp
-
-where \fImatch_type\fR can be either \fBexact\fR or \fBpartial\fR. The default
-value is \fBexact\fR.
-.sp
-Arguments to the \fBselect\fR sub-option can be quoted to protect them from the
-shell.
-.sp
-A \fIfield_spec\fR is one or more \fIdata-field\fRs concatenated using colon
-(\fB:\fR), as in \fIdata-field\fR:\fIdata-field\fR:\fIdata-field\fR. A
-\fIdata-field\fR is one of \fBap_id\fR, \fBphysid\fR, \fBr_state\fR,
-\fBo_state\fR, \fBcondition\fR, \fBtype\fR, \fBbusy\fR, \fBstatus_time\fR,
-\fBstatus_time_p\fR, \fBclass\fR, and \fBinfo\fR. The \fBap_id\fR field output
-is the logical name for the attachment point, while the \fBphysid\fR field
-contains the physical name. The \fBr_state\fR field can be \fBempty\fR,
-\fBdisconnected\fR or \fBconnected\fR. The \fBo_state\fR field can be
-\fBconfigured\fR or \fBunconfigured\fR. The \fBbusy\fR field can be either
-\fBy\fR if the attachment point is busy, or \fBn\fR if it is not. The
-\fBtype\fR and \fBinfo\fR fields are hardware specific. The \fBstatus_time\fR
-field provides the time at which either the \fBr_state\fR, \fBo_state\fR, or
-condition of the attachment point last changed. The \fBstatus_time_p\fR field
-is a parsable version of the \fBstatus_time\fR field. If an attachment point
-has an associated class, the \fBclass\fR field lists the class name. If an
-attachment point does not have an associated class, the \fBclass\fR field lists
-\fBnone\fR.
-.sp
-The order of the fields in \fIfield_spec\fR is significant: For the \fBsort\fR
-sub-option, the first field given is the primary sort key. For the \fBcols\fR
-and \fBcols2\fR sub-options, the fields are printed in the order requested. The
-order of sorting on a \fIdata-field\fR can be reversed by placing a minus
-(\fB\(mi\fR) before the \fIdata-field\fR name within the \fIfield_sec\fR for
-the \fBsort\fR sub-option. The default value for \fBsort\fR is \fBap_id\fR. The
-defaults values for \fBcols\fR and \fBcols2\fR depend on whether the \fB-v\fR
-option is given: Without it \fBcols\fR is \fBap_id:r_state:o_state:condition\fR
-and \fBcols2\fR is not set. With \fB-v\fR \fBcols\fR is
-\fBap_id:r_state:o_state:condition:info\fR and \fBcols2\fR is
-\fBstatus_time:type:busy:physid:\fR. The default value for \fBdelim\fR is a
-single space. The value of \fBdelim\fR can be a string of arbitrary length. The
-delimiter cannot include comma (\fB,\fR) character, see \fBgetsubopt\fR(3C).
-These listing options can be used to create parsable output. See \fBNOTES\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-t\fR\fR
-.ad
-.sp .6
-.RS 4n
-Performs a test of one or more attachment points. The test function is used to
-re-evaluate the condition of the attachment point. Without a test level
-specifier in \fIhardware_options\fR, the fastest test that identifies hard
-faults is used.
-.sp
-More comprehensive tests are hardware specific and are selected using the
-\fIhardware_options\fR.
-.sp
-The results of the test is used to update the condition of the specified
-occupant to either \fBok\fR if no faults are found, \fBfailing\fR if
-recoverable faults are found or \fBfailed\fR if any unrecoverable faults are
-found.
-.sp
-If a test is interrupted, the attachment point's condition can be restored to
-its previous value or set to \fBunknown\fR if no errors were found or
-\fBfailing\fR if only recoverable errors were found or to \fBfailed\fR if any
-unrecoverable errors were found. The attachment point should only be set to
-\fBok\fR upon normal completion of testing with no errors.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.sp .6
-.RS 4n
-Executes in verbose mode. For the \fB-c\fR, \fB-t\fR and \fB-x\fR options
-outputs a message giving the results of each attempted operation. Outputs
-detailed help information for the \fB-h\fR option. Outputs verbose information
-for each attachment point for the \fB-l\fR option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-x\fR\fIhardware_function\fR\fR
-.ad
-.sp .6
-.RS 4n
-Performs hardware specific functions. Private hardware specific functions can
-change the state of a receptacle or occupant. Attachment point conditions can
-change as the result of errors encountered during private hardware specific
-functions. The format and content of the \fIhardware_function\fR string is
-completely hardware specific. The option string \fIhardware_function\fR
-conforms to the \fBgetsubopt\fR(3C) syntax convention.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-y\fR\fR
-.ad
-.sp .6
-.RS 4n
-Suppresses any interactive confirmation and assume that the answer is
-\fByes\fR.
-.RE
-
-.SH USAGE
-The required privileges to use this command are hardware dependent. Typically,
-a default system configuration restricts all but the list option to the
-superuser.
-.SH EXAMPLES
-\fBExample 1 \fRListing Attachment Points in the Device Tree
-.sp
-.LP
-The following example lists all attachment points except dynamic attachment
-points.
-
-.sp
-.in +2
-.nf
-example# cfgadm
-
- Ap_Id Type Receptacle Occupant Cond
-system:slot0 cpu/mem connected configured ok
-system:slot1 sbus-upa connected configured ok
-system:slot2 cpu/mem connected configured ok
-system:slot3 unknown connected unconfigured unknown
-system:slot4 dual-sbus connected configured failing
-system:slot5 cpu/mem connected configured ok
-system:slot6 unknown disconnected unconfigured unusable
-system:slot7 unknown empty unconfigured ok
-c0 scsi-bus connected configured unknown
-c1 scsi-bus connected configured unknown
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRListing All Configurable Hardware Information
-.sp
-.LP
-The following example lists all current configurable hardware information,
-including those represented by dynamic attachment points:
-
-.sp
-.in +2
-.nf
-example# cfgadm -al
-
- Ap_Id Type Receptacle Occupant Cond
-system:slot0 cpu/mem connected configured ok
-system:slot1 sbus-upa connected configured ok
-system:slot2 cpu/mem connected configured ok
-system:slot3 unknown connected unconfigured unknown
-system:slot4 dual-sbus connected configured failing
-system:slot5 cpu/mem connected configured ok
-system:slot6 unknown disconnected unconfigured unusable
-system:slot7 unknown empty unconfigured ok
-c0 scsi-bus connected configured unknown
-c0::dsk/c0t14d0 disk connected configured unknown
-c0::dsk/c0t11d0 disk connected configured unknown
-c0::dsk/c0t8d0 disk connected configured unknown
-c0::rmt/0 tape connected configured unknown
-c1 scsi-bus connected configured unknown
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRListing Selectively, Based on Attachment Point Attributes
-.sp
-.LP
-The following example lists all attachment points whose class begins with
-\fBscsi\fR, \fBap_id\fR begins with \fBc\fR and \fBtype\fR field begins with
-\fBscsi\fR. The argument to the \fB-s\fR option is quoted to protect it from
-the shell.
-
-.sp
-.in +2
-.nf
-example# cfgadm -s "match=partial,select=class(scsi):ap_id(c):type(scsi)"
-
-Ap_Id Type Receptacle Occupant Cond
- c0 scsi-bus connected configured unknown
- c1 scsi-bus connected configured unknown
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 4 \fRListing Current Configurable Hardware Information in Verbose
-Mode
-.sp
-.LP
-The following example lists current configurable hardware information for
-\fIap-type\fR \fBsystem\fR in verbose mode:
-
-.sp
-.in +2
-.nf
-example# cfgadm -v -l system
-Ap_Id Receptacle Occupant Condition Information
-When Type Busy Phys_Id
-system:slot1 connected configured ok
-Apr 4 23:50 sbus-upa n /devices/central/fhc/sysctrl:slot1
-system:slot3 connected configured ok non-detachable
-Apr 17 11:20 cpu/mem n /devices/central/fhc/sysctrl:slot3
-system:slot5 connected configured ok
-Apr 4 23:50 cpu/mem n /devices/central/fhc/sysctrl:slot5
-system:slot7 connected configured ok
-Apr 4 23:50 dual-sbus n /devices/central/fhc/sysctrl:slot7
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The \fBWhen\fR column represents the \fBstatus_time\fR field.
-.LP
-\fBExample 5 \fRTesting Two Occupants Using the Hardware Specific
-\fBExtended\fR Test
-.sp
-.LP
-The following example tests two occupants using the hardware specific
-\fBextended\fR test:
-
-.sp
-.in +2
-.nf
-example# cfgadm -v -o extended -t system:slot3 system:slot5
-Testing attachment point system:slot3 ... ok
-Testing attachment point system:slot5 ... ok
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 6 \fRConfiguring an Occupant Using the Force Option
-.sp
-.LP
-The following example configures an occupant in the \fBfailing\fR state to the
-system using the force option:
-
-.sp
-.in +2
-.nf
-example# cfgadm -f -c configure system:slot3
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 7 \fRUnconfiguring an Occupant From the System
-.sp
-.LP
-The following example unconfigures an occupant from the system:
-
-.sp
-.in +2
-.nf
-example# cfgadm -c unconfigure system:slot4
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 8 \fRConfiguring an Occupant at an Attachment Point
-.sp
-.LP
-The following example configures an occupant:
-
-.sp
-.in +2
-.nf
-example# cfgadm -c configure c0::dsk/c0t0d0
-.fi
-.in -2
-.sp
-
-.SH ENVIRONMENT VARIABLES
-See \fBenviron\fR(5) for descriptions of the following environment variables
-that affect the execution of \fBcfgadm\fR: \fBLC_TIME\fR, \fBLC_MESSAGES\fR,
-\fBNLSPATH\fR and \fBTZ\fR.
-.sp
-.ne 2
-.na
-\fB\fBLC_MESSAGES\fR\fR
-.ad
-.RS 15n
-Determines how \fBcfgadm\fR displays column headings and error messages.
-Listing output data is not affected by the setting of this variable.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBLC_TIME\fR\fR
-.ad
-.RS 15n
-Determines how \fBcfgadm\fR displays human readable status changed time
-(\fBstatus_time\fR).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBTZ\fR\fR
-.ad
-.RS 15n
-Specifies the timezone used when converting the status changed time. This
-applies to both the human readable (\fBstatus_time\fR) and parsable
-(\fBstatus_time_p\fR) formats.
-.RE
-
-.SH EXIT STATUS
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 5n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB1\fR\fR
-.ad
-.RS 5n
-An error occurred.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB2\fR\fR
-.ad
-.RS 5n
-Configuration administration not supported on specified target.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB3\fR\fR
-.ad
-.RS 5n
-Usage error.
-.RE
-
-.SH SEE ALSO
-\fBcfgadm_fp\fR(1M), \fBcfgadm_ib\fR(1M),
-\fBcfgadm_pci\fR(1M), \fBcfgadm_sbd\fR(1M), \fBcfgadm_scsi\fR(1M),
-\fBcfgadm_usb\fR(1M), \fBifconfig\fR(1M), \fBmount\fR(1M), \fBprtdiag\fR(1M),
-\fBpsradm\fR(1M), \fBsyslogd\fR(1M), \fBconfig_admin\fR(3CFGADM),
-\fBgetopt\fR(3C), \fBgetsubopt\fR(3C), \fBisatty\fR(3C), \fBattributes\fR(5),
-\fBenviron\fR(5)
-.SH DIAGNOSTICS
-Diagnostic messages appear on the standard error output. Other than options and
-usage errors, the following are diagnostic messages produced by this utility:
-.sp
-.in +2
-.nf
-cfgadm: Configuration administration not supported on \fIap_id\fR
-.fi
-.in -2
-.sp
-
-.sp
-.in +2
-.nf
-cfgadm: No library found for \fIap_id\fR
-.fi
-.in -2
-.sp
-
-.sp
-.in +2
-.nf
-cfgadm: \fIap_id\fR is ambiguous
-.fi
-.in -2
-.sp
-
-.sp
-.in +2
-.nf
-cfgadm: \fIoperation\fR: Insufficient privileges
-.fi
-.in -2
-.sp
-
-.sp
-.in +2
-.nf
-cfgadm: Attachment point is busy, try again
-.fi
-.in -2
-.sp
-
-.sp
-.in +2
-.nf
-cfgadm: No attachment points with specified attributes found
-.fi
-.in -2
-.sp
-
-.sp
-.in +2
-.nf
-cfgadm: System is busy, try again
-.fi
-.in -2
-.sp
-
-.sp
-.in +2
-.nf
-cfgadm: \fIoperation\fR: Operation requires a service interruption
-.fi
-.in -2
-.sp
-
-.sp
-.in +2
-.nf
-cfgadm: \fIoperation\fR: Data error: \fIerror_text\fR
-.fi
-.in -2
-.sp
-
-.sp
-.in +2
-.nf
-cfgadm: \fIoperation\fR: Hardware specific failure: \fIerror_text\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-See \fBconfig_admin\fR(3CFGADM) for additional details regarding error
-messages.
-.SH NOTES
-Hardware resources enter the unconfigured pool in a hardware specific manner.
-This can occur at various times such as: system initialization or as a result
-of an unconfigure operation. An occupant that is in the \fBunconfigured\fR
-state is not available for use by the system until specific intervention
-occurs. This intervention can be manifested as an operator initiated command or
-it can be by way of an automatic configuring mechanism.
-.sp
-.LP
-The listing option of the \fBcfgadm\fR command can be used to provide parsable
-input for another command, for example within a shell script. For parsable
-output, the \fB-s\fR option must be used to select the fields required. The
-\fB-s\fR option can also be used to suppress the column headings. The following
-fields always produce parsable output: \fBap_id\fR, \fBphysid\fR,
-\fBr_state\fR, \fBo_state\fR, \fBcondition\fR, \fBbusy\fR, \fBstatus_time_p\fR,
-\fBclass\fR, and \fBtype\fR. Parsable output never has white-space characters
-embedded in the field value.
-.sp
-.LP
-The following shell script fragment finds the first good \fBunconfigured\fR
-occupant of type \fBCPU.\fR
-.sp
-.in +2
-.nf
-found=
-cfgadm -l -s "noheadings,cols=ap_id:r_state:condition:type" | \e
-while read ap_id r_state cond type
-do
- if [ "$r_state" = unconfigured -a "$cond" = ok -a "$type" = CPU ]
- then
- if [ -z "$found" ]
- then
- found=$ap_id
- fi
- fi
-done
-if [ -n "$found" ]
-then
- echo "Found CPU $found"
-fi
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The format of the parsable time field (\fBstatus_time_p\fR) is
-\fIYYYYMMDDhhmmss\fR, giving the year, month, day, hour, minute and second in a
-form suitable for string comparison.
-.sp
-.LP
-Reference should be made to the hardware specific documentation for details of
-System Configuration Administration support.
diff --git a/usr/src/man/man1m/cfgadm_cardbus.1m b/usr/src/man/man1m/cfgadm_cardbus.1m
deleted file mode 100644
index 12d18b4ea7..0000000000
--- a/usr/src/man/man1m/cfgadm_cardbus.1m
+++ /dev/null
@@ -1,58 +0,0 @@
-'\" te
-.\" Copyright (c) 2003 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH CFGADM_CARDBUS 1M "Jul 11, 2006"
-.SH NAME
-cfgadm_cardbus \- cardbus hardware specific commands for cfgadm
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/cfgadm\fR [\fB-f \fR] [\fB-y \fR | \fB-n \fR] [\fB-v\fR]
- [\fB-o\fR \fIhardware_options\fR] \fB-c\fR\fI function\fR \fIap_id\fR [\fIap_id\fR]
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/cfgadm\fR [\fB-f \fR] [\fB-y \fR | \fB-n \fR] [\fB-v\fR]
- [\fB-o\fR \fIhardware_options\fR] \fB-x\fR\fI hardware_function\fR \fIap_id\fR
- [\fIap_id\fR]
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/cfgadm\fR [\fB-v\fR] [\fB-s\fR \fIlisting_options\fR]
- [\fB-o\fR \fIhardware_options\fR] [\fB-l\fR [\fIap_id\fR | \fIap_type\fR]]
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/cfgadm\fR [\fB-v\fR] [\fB-o\fR \fIharware_options\fR] \fB-t\fR \fIap_id\fR [\fIap_id\fR]
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/cfgadm\fR [\fB-v\fR] [\fB-o\fR \fIhardware_function\fR] \fB-h\fR
- [\fIap_id\fR| \fI ap_type\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The CardBus slots in Solaris are hot plug capable. This capability is supported
-by the \fBPCI\fR hardware specific library \fB/usr/lib/cfgadm/pci.so.1\fR
-through the \fBcfgadm\fR command (see \fBcfgadm\fR(1M)).
-.sp
-.LP
-The hot plug administrative models between CardBus, PCI, CompactPCI, and PCI
-Express operate the same fashion. Please refer to \fBcfgadm_pci\fR(1M) for the
-usage information.
-.SH SEE ALSO
-.sp
-.LP
-\fBcfgadm\fR(1M), \fBconfig_admin\fR(3CFGADM), \fBlibcfgadm\fR(3LIB),
-\fBattributes\fR(5)
-.sp
-.LP
-\fI\fR
diff --git a/usr/src/man/man1m/cfgadm_fp.1m b/usr/src/man/man1m/cfgadm_fp.1m
deleted file mode 100644
index d276e6b45a..0000000000
--- a/usr/src/man/man1m/cfgadm_fp.1m
+++ /dev/null
@@ -1,744 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH CFGADM_FP 1M "Jan 10, 2008"
-.SH NAME
-cfgadm_fp \- driver specific commands for cfgadm
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/cfgadm\fR [\fB-f\fR] [\fB-n\fR | \fB-y\fR] [\fB-v\fR] [\fB-o\fR \fIhardware_options\fR]
- \fB-c\fR \fIfunction\fR \fIap_id\fR [\fIap_id\fR]
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/cfgadm\fR [\fB-v\fR] [\fB-a\fR] [\fB-s\fR \fIlisting_options\fR]
- [\fB-o\fR \fIhardware_options\fR] [\fB-l\fR [\fIap_id\fR]]
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/cfgadm\fR [\fB-v\fR] [\fB-o\fR \fIhardware_options\fR] \fB-h\fR [\fIap_id\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBfp\fR port driver plug-in \fB/usr/lib/cfgadm/fp.so.1\fR provides the
-functionality for Fibre Channel Fabric device node management through
-\fBcfgadm\fR(1M). \fBcfgadm\fR operates on attachment points. Attachment points
-are locations in the system where hardware resources can be dynamically
-reconfigured. Refer to \fBcfgadm\fR(1M) for additional details on attachment
-points.
-.sp
-.LP
-For Fibre Channel Fabric device node management, each \fBfp\fR port node is
-represented by an attachment point in the device tree. In addition, each Fibre
-Channel device is represented by a dynamic attachment point. Attachment points
-are named through \fBap_ids\fR. Two types of \fBap_ids\fR are defined: logical
-and physical. The physical \fBap_id\fR is based on the physical pathname. The
-logical \fBap_id\fR is a shorter, more user-friendly name. For \fBfp\fR port
-nodes, the logical \fBap_id\fR is the corresponding disk controller number. For
-example, \fBc0\fR is a typical logical \fBap_id\fR.
-.sp
-.LP
-Fibre Channel devices are named with a port World Wide Name (WWN). If a disk
-device is connected to controller \fBc0\fR, its \fBap_id\fR can be:
-.sp
-.in +2
-.nf
-c0::50020f2300006077
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-where \fB50020f2300006077\fR identifies the port WWN of a specific Fibre
-Channel device.
-.sp
-.LP
-Each device on the Fibre Channel private loop port, Fabric port or public loop
-port is probed and made available to Solaris by default. Devices connected to
-the Fibre Channel Fabric port or public loop port can be made unavailable to
-Solaris by initiating an application or an end user operation. The operation is
-similar to the hot unplugging of devices by way of management user interfaces.
-Applications or users can use the \fB/usr/lib/cfgadm/fp.so.1\fR library to
-enable \fBlibcfgadm\fR to provide interfaces to accomplish this task.
-.sp
-.LP
-The list of currently connected Fabric devices is generated in the form of the
-attachment point.
-.sp
-.LP
-A simple listing of attachment points in the system includes attachment points
-at \fBfp\fR port nodes but not Fibre Channel devices. The following example
-uses the \fB-a\fR flag to the list option (\fB-l\fR) to list Fibre Channel
-devices:
-.sp
-.in +2
-.nf
-# \fBcfgadm -l\fR
- Ap_Id Type Receptacle Occupant Condition
- c0 fc-fabric connected configured unknown
- c1 fc-private connected configured unknown
- c2 fc-pt_to_pt connected configured unknown
- c3 fc connected unconfigured unknown
- sysctrl0:slot0 cpu/mem connected configured ok
- sysctrl0:slot1 sbus-upa connected configured ok
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The following example lists Fibre Channel devices connected to \fBfp\fR ports.
-.sp
-.in +2
-.nf
-# \fBcfgadm -al\fR
- Ap_Id Type Receptacle Occupant Condition
- c0 fc-fabric connected configured unknown
- c0::50020f2300006077 disk connected configured unknown
- c0::50020f23000063a9 disk connected configured unknown
- c0::50020f2300005f24 disk connected configured unknown
- c0::50020f2300006107 disk connected configured unknown
- c1 fc-private connected configured unknown
- c1::220000203708b69c disk connected configured unknown
- c1::220000203708ba7d disk connected configured unknown
- c1::220000203708b8d4 disk connected configured unknown
- c1::220000203708b9b2 disk connected configured unknown
- c2 fc-pt_to_pt connected configured unknown
- c2::500104f000937528 tape connected configured unknown
- c3 fc connected unconfigured unknown
- sysctrl0:slot0 cpu/mem connected configured ok
- sysctrl0:slot1 sbus-upa connected configured ok
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-In this example, the \fBfc-fabric\fR type of \fBap_id\fR \fBc0\fR indicates
-that the \fBfp\fR port is connected to Fabric. For an \fBfp\fR port with a
-Fabric-related type such as \fBfc-fabric\fR and \fBfc-public\fR, device node
-creation happens by default at the boot time and can be managed by the
-\fBcfgadm\fR configure and unconfigure operations. The \fBfc-private\fR type
-of \fBap_id c1\fR indicates that \fBfp\fR port is connected to private-loop and
-device node creation happens by default as well. The \fBfc-pt_to_pt\fR type of
-\fBap_id c2\fR indicates that the \fBfp\fR port is directly connected to
-another \fBN_port\fR and device node creation also happens by default. The
-\fBfc\fR type of \fBap_id c3\fR indicates that nothing is attached to \fBfp\fR
-port \fBc2\fR. The Type field of a Fibre Channel device \fBap_id\fR shows the
-SCSI device type of LUN 0 in the device.
-.sp
-.LP
-A Fibre Channel device with multiple FCP SCSI LUNs is configured into Solaris
-and each \fBFCP SCSI LUN\fR is available as a Solaris device. Suppose that
-ap_ids \fBc0::50020f2300006077\fR and \fBc0::50020f23000063a9\fR represent
-Fibre Channel devices with multiple \fBFCP SCSI LUN\fRs.
-.sp
-.LP
-The following example shows how to list ap_ids with \fBFCP\fR \fBSCSI\fR
-\fBLUN\fR information:
-.sp
-.in +2
-.nf
-# \fBcfgadm -al -o show_SCSI_LUN\fR
- Ap_Id Type Receptacle Occupant Condition
- c0 fc-fabric connected configured unknown
- c0::50020f2300006077,0 disk connected configured unknown
- c0::50020f2300006077,1 disk connected configured unknown
- c0::50020f2300006077,2 disk connected configured unknown
- c0::50020f2300006077,3 disk connected configured unknown
- c0::50020f23000063a9,0 disk connected configured unknown
- c0::50020f23000063a9,1 disk connected configured unknown
- c0::50020f23000063a9,2 disk connected configured unknown
- c0::50020f23000063a9,3 disk connected configured unknown
- c0::50020f2300005f24,0 disk connected unconfigured unknown
- c0::50020f2300005f24,1 disk connected unconfigured unknown
- c0::50020f2300006107,0 disk connected unconfigured unknown
- c0::50020f2300006107,1 disk connected unconfigured unknown
- c1 fc-private connected configured unknown
- c1::220000203708b69c,0 disk connected configured unknown
- c1::220000203708ba7d,0 disk connected configured unknown
- c1::220000203708b8d4,0 disk connected configured unknown
- c1::220000203708b9b2,0 disk connected configured unknown
- c2 fc-pt_to_pt connected configured unknown
- c2::500104f000937528,0 tape connected configured unknown
- c3 fc connected unconfigured unknown
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-In this example, the \fBap_id c0::50020f2300006077,0\fR identifies the \fBFCP
-SCSI LUN 0\fR of the Fibre Channel device which is represented by port \fBWWN
-50020f2300006077\fR. The Fibre Channel device is reported to have 4 \fBFCP SCSI
-LUN\fRs and they are all configured. \fB4 FCP SCSI LUN\fR level ap_ids
-associated with port \fBWWN 50020f2300006077\fR are listed. The listing also
-displays \fBFCP SCSI LUN\fRs for unconfigured Fibre Channel devices. The Fibre
-Channel device represented by \fBc0::50020f2300005f24\fR is reported to have
-two \fBFCP SCSI LUN\fRs. The configure operation \fBon c0::50020f2300005f24\fR
-creates two Solaris devices. The \fBType\fR field of \fBFCP\fR \fBSCSI\fR
-\fBLUN\fR level ap_ids show the \fBSCSI\fR device type of each \fBLUN\fR. When
-a Fibre Channel device has different device type \fBLUN\fRs, the \fBType\fR
-field reflects that.
-.sp
-.LP
-The receptacle and occupant state for attachment points at the \fBfp\fR port
-have the following meanings:
-.sp
-.ne 2
-.na
-\fBconfigured\fR
-.ad
-.sp .6
-.RS 4n
-One or more devices configured on the \fBfp\fR port
-.RE
-
-.sp
-.ne 2
-.na
-\fBconnected\fR
-.ad
-.sp .6
-.RS 4n
-\fBfp\fR port active
-.RE
-
-.sp
-.ne 2
-.na
-\fBdisconnected\fR
-.ad
-.sp .6
-.RS 4n
-\fBfp\fR port quiesced (IO activity is suspended)
-.RE
-
-.sp
-.ne 2
-.na
-\fBempty\fR
-.ad
-.sp .6
-.RS 4n
-Not applicable
-.RE
-
-.sp
-.ne 2
-.na
-\fBunconfigured\fR
-.ad
-.sp .6
-.RS 4n
-No devices configured on the \fBfp\fR port
-.RE
-
-.sp
-.LP
-The state for individual Fibre Channel devices on an \fBfp\fR port:
-.sp
-.ne 2
-.na
-\fBconfigured\fR
-.ad
-.sp .6
-.RS 4n
-Device is configured into Solaris and is available for use
-.RE
-
-.sp
-.ne 2
-.na
-\fBconnected\fR
-.ad
-.sp .6
-.RS 4n
-\fBfp\fR port to which the device is connected to is active
-.RE
-
-.sp
-.ne 2
-.na
-\fBdisconnected\fR
-.ad
-.sp .6
-.RS 4n
-\fBfp\fR port to which the device is attached is quiesced
-.RE
-
-.sp
-.ne 2
-.na
-\fBunconfigured\fR
-.ad
-.sp .6
-.RS 4n
-Device is available to be configured
-.RE
-
-.sp
-.LP
-The \fBcondition\fR field for attachment points at the \fBfp\fR port has the
-following meanings:
-.sp
-.ne 2
-.na
-\fBfailed\fR
-.ad
-.sp .6
-.RS 4n
-An error condition has prevented the \fBfp\fR port from being able to detect
-the presence or type of a Fibre Channel connection.
-.RE
-
-.sp
-.LP
-The \fBcondition\fR field for individual Fibre Channel devices on an \fBfp\fR
-port has the following meanings:
-.sp
-.ne 2
-.na
-\fBfailed\fR
-.ad
-.sp .6
-.RS 4n
-An error is encountered while probing a device on Fabric.
-.RE
-
-.sp
-.ne 2
-.na
-\fBfailing\fR
-.ad
-.sp .6
-.RS 4n
-A device was configured on a host and its state as seen by Solaris appears to
-be normal (i.e., online) but it is either not currently present or visible in
-the fabric or its presence could not be verified due to an error condition on
-the local port through which the device was configured.
-.RE
-
-.sp
-.ne 2
-.na
-\fBunusable\fR
-.ad
-.sp .6
-.RS 4n
-A device has been configured on the host, but is currently offline or failed.
-.RE
-
-.sp
-.LP
-The unknown \fBcondition\fR indicates that probing a device on Fabric completed
-without an error and the device state within Solaris host is normal if the
-device was configured previously. The internal condition of the device cannot
-be guaranteed.
-.SH OPTIONS
-.sp
-.LP
-\fBcfgadm\fR defines several types of operations in addition to listing
-(\fB-l\fR). These operations include invoking configuration state changes and
-obtaining configuration administration help messages (\fB-h\fR).
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-c\fR \fIfunction\fR\fR
-.ad
-.sp .6
-.RS 4n
-The following generic commands are defined for the \fBfp\fR-transport-specific
-library:
-.sp
-For Fibre Channel device attachment points on the \fBfc-fabric\fR type \fBfp\fR
-port attachment point, the following configuration state change operations are
-supported:
-.sp
-.ne 2
-.na
-\fB\fBconfigure\fR\fR
-.ad
-.sp .6
-.RS 4n
-Configure a connected Fibre Channel Fabric device to a host. When a Fibre
-Channel device is listed as an unknown type in the output of the list operation
-the device might not be configurable. No attempt is made to configure devices
-with unknown types. The force option (\fB-f\fR) can be used to force the
-\fBfp\fR port driver plug-in to make an attempt to configure any devices. Any
-errors in the process are reported. By default, each FCP SCSI LUN that is
-discovered on a Fibre channel Fabric device is configured. However, FCP SCSI
-LUNs that are specified in the "pwwn-lun-blacklist" property in the
-\fBfp.conf\fR file will remain unconfigured. The FCP SCSI LUN level listing
-reflects the state of such FCP SCSI LUNs. They stay in the "unconfigured" state
-after reboot or Solaris Dynamic Reconfiguration on the controller that they are
-connected through. Refer to \fBfp\fR(7D) for additional details on the
-"pwwn-lun-blacklist" property.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBunconfigure\fR\fR
-.ad
-.sp .6
-.RS 4n
-Unconfigure a Fibre Channel Fabric device from a host. This device stays
-unconfigured until the next reboot or Solaris Dynamic Reconfiguration on the
-controller that the device is connected, at which time all fabric devices are
-automatically enumerated. The default behavior may be changed through the use
-of the "manual_configuration_only" property in the \fBfp.conf\fR file. If the
-property is set, the device remains unconfigured after reboot. Refer to
-\fBfp\fR(7D) for additional details on the "manual_configuration_only"
-property.
-.RE
-
-For Fibre Channel private loop devices and \fBN_Port\fR point-to-point devices,
-the \fBconfigure\fR command returns success without doing any operation. The
-\fBunconfigure\fR command is not supported on the private loop devices and
-\fBN_Port\fR point-to-point devices. The private loop devices and \fBN_Port\fR
-point-to-point devices are configured by Solaris Fibre Channel drivers by
-default and are not managed through end user- or application-initiated
-operations. The \fBpwwn-lun-blacklist\fR property in the \fBfp.conf\fR file
-is applied to the private loop device and \fBN_Port\fR point-to-point device in
-the same way it is applied to a Fabric device.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR\fR
-.ad
-.sp .6
-.RS 4n
-Force the \fBconfigure\fR change state operation to occur irrespective of the
-\fBcondition\fR or \fBtype\fR. Refer to the above description of the
-\fBconfigure\fR change state operation.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-h\fR \fIap_id\fR\fR
-.ad
-.sp .6
-.RS 4n
-Obtain \fBfp\fR\(emtransport-specific help. Specify any \fBfp\fR attachment
-point.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-o\fR \fIhardware_options\fR\fR
-.ad
-.sp .6
-.RS 4n
-The following hardware options are supported.
-.sp
-.ne 2
-.na
-\fBshow_SCSI_LUN\fR
-.ad
-.sp .6
-.RS 4n
-Lists ap_ids associated with each FCP SCSI LUN for discovered Fibre Channel
-devices when specified with the \fBlist\fR option \fB-al\fR. Refer to the
-previously mentioned description and example of FCP SCSI LUN level listing.
-Device node creation is not supported on the FCP SCSI LUN level. See
-\fBNOTES\fR.
-.RE
-
-All Fibre Channel devices are available to Solaris by default. Enabling only a
-subset of Fabric devices available to Solaris by default can be accomplished by
-setting the property "manual_configuration_only" in \fB/kernel/drv/fp.conf\fR
-file. When "manual_configuration_only" in \fBfp.conf\fR is set, all Fabric
-devices are not available to Solaris unless an application or an end user had
-previously requested the device be configured into Solaris. The \fBconfigure\fR
-state-change command makes the device available to Solaris. After a successful
-\fBconfigure\fR operation on a Fabric device, the associated links are added to
-the \fB/dev\fR namespace. The \fBunconfigure\fR state-change command makes a
-device unavailable to Solaris.
-.sp
-When a Fibre Channel Fabric device is configured successfully to a host using
-the \fB-c\fR \fBconfigure\fR operation, its physical \fBap_id\fR is stored in a
-repository. When a Fibre Channel Fabric device is unconfigured using the
-\fB-c\fR \fBunconfigure\fR operation, its physical \fBap_id\fR is deleted from
-the same repository. All fabric devices are automatically enumerated by default
-and the repository is used only if the \fBfp.conf\fR
-"manual_configuration_only" property is set. Refer to \fBfp\fR(7D) for
-additional details on the "manual_configuration_only" property.
-.sp
-You can specify the following commands with the \fB-c\fR option to control the
-update behavior of the repository:
-.sp
-.ne 2
-.na
-\fB\fBforce_update\fR\fR
-.ad
-.sp .6
-.RS 4n
-For \fBconfigure\fR, the attachment point is unconditionally added to the
-repository; for \fBunconfigure\fR, the attachment point is unconditionally
-deleted.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBno_update\fR\fR
-.ad
-.sp .6
-.RS 4n
-No update is made to the repository regardless of the operation.
-.RE
-
-These options should not be used for normal \fBconfigure\fR and
-\fBunconfigure\fR operations. See \fBWARNINGS\fR.
-.sp
-When a Fibre Channel device has multiple \fBFCP SCSI LUN\fRs configured and any
-Solaris device associated with its \fBFCP SCSI LUN\fR is in the unusable
-condition, the whole Fibre Channel device is reported as unusable. The
-following option with the \fB-c\fR unconfigure command removes only Solaris
-devices with the unusable condition for a Fibre Channel device.
-.sp
-.ne 2
-.na
-\fB\fBunusable_SCSI_LUN\fR\fR
-.ad
-.sp .6
-.RS 4n
-For \fBunconfigure\fR operation, any offlined device nodes for a target device
-is removed.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR \fIlisting_options\fR\fR
-.ad
-.sp .6
-.RS 4n
-Refer to \fBcfgadm\fR(1M) for usage information.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-t\fR \fIap_id\fR\fR
-.ad
-.sp .6
-.RS 4n
-No test commands are available at present.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-x\fR \fIhardware_function\fR\fR
-.ad
-.sp .6
-.RS 4n
-No hardware specific functions are available at present.
-.RE
-
-.sp
-.LP
-All other options have the same meaning as defined in the \fBcfgadm\fR(1M) man
-page.
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRUnconfiguring a Disk
-.sp
-.LP
-The following command unconfigures a disk:
-
-.sp
-.in +2
-.nf
-# cfgadm -c unconfigure c0::210000203708b606
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRUnconfigure all the Configured Disks under Single Attachment
-Point
-.sp
-.LP
-The following command unconfigures all configured disks under the attachment
-point \fBc0\fR.
-
-.sp
-.in +2
-.nf
-# cfgadm -c unconfigure c0
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRConfiguring a Disk
-.sp
-.LP
-The following command configures a disk:
-
-.sp
-.in +2
-.nf
-# cfgadm -c configure c0::210000203708b606
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 4 \fRConfigure all the Unconfigured Disks under Single Attachment
-Point
-.sp
-.LP
-The following command configures all unconfigured disks under the attachment
-point \fBc0\fR.
-
-.sp
-.in +2
-.nf
-# cfgadm -c configure c0
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 5 \fRRemoving the Fibre Channel Fabric Device Attachment Point from
-Repository
-.sp
-.LP
-The following command unconditionally removes the fibre channel fabric device
-attachment point from the Fabric device repository.
-
-.sp
-.in +2
-.nf
-# cfgadm -c unconfigure -o force_update c0::210000203708b606
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 6 \fRRemoving Offlined Solaris Device Nodes for a Target Device
-.sp
-.LP
-The following command removes offlined Solaris device nodes for a target
-device:
-
-.sp
-.in +2
-.nf
-# cfgadm -c unconfigure -o unusable_SCSI_LUN c0::210000203708b606
-.fi
-.in -2
-.sp
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/cfgadm/fp.so.1\fR\fR
-.ad
-.sp .6
-.RS 4n
-Hardware-specific library for Fibre Channel Fabric device node management.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/cfg/fp/fabric_WWN_map\fR\fR
-.ad
-.sp .6
-.RS 4n
-Repository of physical \fBap_id\fRs of Fabric devices currently configured. It
-is used only to reconfigure those Fabric devices at boot time. This repository
-is only used when the "manual_configuration_only" \fB/kernel/drv/fp.conf\fR
-file is set.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/rcS.d/fdevattach\fR\fR
-.ad
-.sp .6
-.RS 4n
-Reconfigures Fabric device(s) of which physical \fBap_id\fR is listed in
-\fB/etc/cfg/fp/fabric_WWN_map\fR on boot time.
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBsvcs\fR(1), \fBcfgadm\fR(1M), \fBsvcadm\fR(1M), \fBconfig_admin\fR(3CFGADM),
-\fBlibcfgadm\fR(3LIB), \fBattributes\fR(5), \fBsmf\fR(5), \fBfp\fR(7D)
-.SH WARNINGS
-.sp
-.LP
-Do not use hardware-specific options for the repository update under normal
-\fBconfigure\fR/\fBunconfigure\fR operations. The hardware-specific options are
-expected to be used when the node creation of a Fabric device fails at boot
-time and the error condition is considered to be permanent. The
-\fBunconfigure\fR command with \fBforce_update\fR hardware-specific option
-unconditionally removes the attachment point of a failing Fabric device from
-the repository.
-.SH NOTES
-.sp
-.LP
-For devices with unknown or no SCSI device type (for example, a Fibre Channel
-Host Bus Adapter), the \fBconfigure\fR operation might not be applicable.
-.sp
-.LP
-The \fBconfigure\fR and \fBunconfigure\fR commands operate on the Fibre Channel
-device level which is represented by port WWN ap_id. If a Fibre Channel device
-has multiple FCP SCSI LUNs configured, the \fBconfigure\fR command on the
-associated port WWN ap_id results in creating a Solaris device for each \fBFCP
-SCSI LUN\fR unless it is specified in the "pwwn-lun-blacklist" property in the
-\fBfp.conf\fR file. The \fBunconfigure\fR command removes all Solaris devices
-associated with the port WWN ap_id. The \fBFCP SCSI LUN\fR level ap_id is not
-valid for the \fBconfigure\fR and \fBunconfigure\fR commands.
-.sp
-.LP
-The deprecated \fBshow_FCP_dev\fR option has been replaced by the new
-\fBshow_SCSI_LUN\fR option, and the deprecated \fBunusable_FCP_dev\fR option
-has been replaced by the new \fBunusable_SCSI_LUN\fR option.
-.sp
-.LP
-The \fBcfgadm_fp\fR service is managed by the service management facility,
-\fBsmf\fR(5), under the service identifier:
-.sp
-.in +2
-.nf
-svc:/system/device/fc-fabric:default
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Administrative actions on this service, such as enabling, disabling, or
-requesting restart, can be performed using \fBsvcadm\fR(1M). The service's
-status can be queried using the \fBsvcs\fR(1) command.
-.sp
-.LP
-No administrative actions on this service are required for Fabric device
-configuration once this service is started on boot time.
diff --git a/usr/src/man/man1m/cfgadm_ib.1m b/usr/src/man/man1m/cfgadm_ib.1m
deleted file mode 100644
index b9744b74e2..0000000000
--- a/usr/src/man/man1m/cfgadm_ib.1m
+++ /dev/null
@@ -1,861 +0,0 @@
-'\" te
-.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH CFGADM_IB 1M "Jul 2, 2008"
-.SH NAME
-cfgadm_ib \- InfiniBand hardware specific commands for cfgadm
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/cfgadm\fR \fB-f\fR [\fB-y\fR | \fB-n\fR] [\fB-v\fR] \fB-c\fR \fIfunction\fR \fIap_id\fR...
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/cfgadm\fR [\fB-f\fR] [\fB-y\fR | \fB-n\fR] [\fB-v\fR] [\fB-o\fR \fIhardware_options\fR]
- \fB-x\fR \fIhardware_function\fR \fIap_id\fR...
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/cfgadm\fR \fB-v\fR [\fB-a\fR] [\fB-s\fR \fIlisting_option\fR] [-] [\fIap_id\fR | \fIap_type...\fR]
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/cfgadm\fR \fB-v\fR \fB-h\fR [\fIap_id\fR]...
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The InfiniBand hardware specific library \fB/usr/lib/cfgadm/ib.so.1\fR provides
-the functionality for administering its fabric through the \fBcfgadm\fR(1M)
-utility. \fBcfgadm\fR operates on attachment points. See \fBcfgadm\fR(1M).
-.sp
-.LP
-An InfiniBand (\fBIB\fR) device is enumerated by the IB nexus driver,
-\fBib\fR(7D), based on the services from the IB Device Manager (IBDM).
-.sp
-.LP
-The IB nexus driver creates and initializes five types of child device nodes:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-IB Port devices
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-IB HCA service (HCA_SVC) devices
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-IB Virtual Physical Point of Attachment (VPPA) devices
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-I/O Controller (IOC)
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-IB Pseudo devices
-.RE
-.sp
-.LP
-See \fBib\fR(7D) for details on enumeration of IB Port, IB VPPA, and IB HCA_SVC
-devices. For additional information on IBDM, see \fBibdm\fR(7D). See
-\fBib\fR(4) for details on IB Pseudo devices.
-.sp
-.LP
-For IB administration, two types of static attachment point are created for the
-fabric administration as seen by the given host. There is one static attachment
-point \fBib\fR and all IB devices (either an IOC, Port, VPPA, HCA_SVC, or a
-Pseudo device) in the fabric are represented as dynamic attachment points based
-off of it. There is another static attachment point for each Host Channel
-Adapter (HCA) in the host based on its node Globally Unique Identifier (GUID)
-value.
-.sp
-.LP
-Attachment points are named through ap_ids. There are two types of ap_ids:
-logical and physical. The physical ap_id is based on the physical path name.
-For the IB fabric it is \fB/devices/ib:fabric\fR. The logical ap_id is a
-shorter, and has a more user friendly name.
-.sp
-.LP
-The static ap_id for the IB fabric is \fBib\fR. The IB devices are dynamic
-attachment points and have no physical ap_id. The logical ap_id of an IOC
-contains its GUID, \fBib::\fR\fIIOC-GUID\fR. An example of an IOC ap_id is
-\fBib::80020123456789a\fR. The logical ap_id of a Pseudo device, see ib(4) for
-details, is of the format \fBib::\fR\fIdriver_name\fR\fB,\fR\fIunit-address\fR.
-An example of a pseudo ap_id would be \fBib::sdp,0\fR where "\fBsdp\fR" is the
-driver name and "\fB0\fR" is its \fIunit-address\fR property. The logical ap_id
-of Port, VPPA and HCA_SVC device contains its Partition Key (\fIP_Key\fR),
-\fIPort GUID\fR / \fINode GUID\fR and a communication service-name. The format
-of ap_id is as below:
-.sp
-.ne 2
-.na
-\fBPort device\fR
-.ad
-.sp .6
-.RS 4n
-\fBib::\fR\fIPORT_GUID\fR\fB,\fR\fI0\fR\fB,\fR\fIservice-name\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fBVPPA device\fR
-.ad
-.sp .6
-.RS 4n
-\fBib::\fR\fIPORT_GUID\fR\fB,\fR\fIP_Key\fR\fB,\fR\fIservice-name\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fBHCA_SVC device\fR
-.ad
-.sp .6
-.RS 4n
-\fBib::\fR\fIHCA_GUID\fR\fB,\fR0\fB,\fR\fIservicename\fR
-.RE
-
-.sp
-.LP
-The Partition Key (\fIP_Key\fR) is \fB0\fR for Port and HCA_SVC devices. The
-\fIP_Key\fR helps determine the partition to which this port belongs for a VPPA
-device node. A port might have more than one \fIP_Key\fR. An example of a VPPA
-device logical ap_id point is \fBib::80245678,ffff,ipib\fR. The
-\fIport-GUID\fR is \fB80245678\fR, the \fIP_Key\fR is \fB0xffff\fR, and the
-service name is \fBipib\fR. The service-name information is obtained from the
-file \fB/kernel/drv/ib.conf\fR which contains service-name strings. The HCA's
-logical ap_id contains its node GUID value, hca:HCA-GUID. An example is
-\fBhca:21346543210a987\fR.
-.sp
-.LP
-A listing of the IB attachment points includes information on all IB devices
-(IOC, VPPA, HCA_SVC, Pseudo, and Port devices seen by the IBDM and the IB nexus
-driver) in the fabric even if they are not seen by the host and configured for
-use.
-.sp
-.LP
-The following shows a listing of five IB devices (two IOC, one VPPA, one Port,
-one HCA_SVC) and one HCA:
-.sp
-.in +2
-.nf
-example# cfgadm -al
-Ap_Id Type Receptacle Occupant Condition
-hca:21346543210a987 IB-HCA connected configured ok
-ib IB-FABRIC connected configured ok
-ib::80020123456789a IB-IOC connected configured ok
-ib::802abc9876543 IB-IOC connected unconfigured unknown
-ib::80245678,ffff,ipib IB-VPPA connected configured ok
-ib::12245678,0,nfs IB-PORT connected configured ok
-ib::21346543,0,hnfs IB-HCA_SVC connected configured ok
-ib::sdp,0 IB-PSEUDO connected configured ok
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The ap_id \fBib::802abc9876543\fR shows an IOC device that is not yet
-configured by the host for use or had been previously offlined by an explicit
-.sp
-.in +2
-.nf
-cfgadm \fB-c\fR unconfigure
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-operation. The distinction was made by the information displayed under the
-\fBCondition\fR column. The IB device with a zero P_Key and HCA GUID is a
-HCA_SVC device. Refer to \fBcfgadm\fR(1M) for more information regarding
-listing attachment points.
-.sp
-.LP
-The receptacle state for attachment points have the following meanings:
-.sp
-.ne 2
-.na
-\fBconnected\fR
-.ad
-.sp .6
-.RS 4n
-For an IOC/VPPA/Port/Pseudo/HCA_SVC device, \fBconnected\fR implies that it has
-been seen by the host. The device might not have been configured for use by
-Solaris.
-.sp
-For a HCA attachment point, \fBconnected\fR implies that it has been configured
-and is in use.
-.sp
-All IB ap_ids are always shown as connected.
-.RE
-
-.sp
-.LP
-The occupant state for attachment points have the following meanings:
-.sp
-.ne 2
-.na
-\fBconfigured\fR
-.ad
-.sp .6
-.RS 4n
-The IB device, and the HCA ap_id, are configured and usable by Solaris.
-.RE
-
-.sp
-.ne 2
-.na
-\fBunconfigured\fR
-.ad
-.sp .6
-.RS 4n
-The IB device at the ap_id was explicitly offlined using \fBcfgadm\fR \fB-c\fR
-\fBunconfigure\fR, was not successfully configured. This could be because it
-wasn not successfully configuref for use with Solaris (no driver, or a device
-problem), or because it was never configured for use by the IB nexus driver.
-.sp
-The \fBunconfigured\fR operation is not supported for the HCA attachment point.
-The IB static apid, \fBib\fR, is shown unconfigured if the system has no IB
-hardware.
-.RE
-
-.sp
-.LP
-The attachment point conditions are:
-.sp
-.ne 2
-.na
-\fBfailed\fR
-.ad
-.sp .6
-.RS 4n
-Not used.
-.RE
-
-.sp
-.ne 2
-.na
-\fBfailing\fR
-.ad
-.sp .6
-.RS 4n
-Not used.
-.RE
-
-.sp
-.ne 2
-.na
-\fBok\fR
-.ad
-.sp .6
-.RS 4n
-Normal state. Ready for use.
-.RE
-
-.sp
-.ne 2
-.na
-\fBunknown\fR
-.ad
-.sp .6
-.RS 4n
-This state is only valid for IB device that have been probed by IBDM but not
-yet configured for use by Solaris. It is also shown for devices that have been
-explicitly offlined by a \fBcfgadm\fR \fB-c\fR \fBunconfigure\fR operation.
-This condition does not apply to a HCA attachment point.
-.RE
-
-.sp
-.ne 2
-.na
-\fBunusable\fR
-.ad
-.sp .6
-.RS 4n
-Not used.
-.RE
-
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-c\fR \fIfunction\fR\fR
-.ad
-.sp .6
-.RS 4n
-The IB hardware specific library supports two generic commands
-(\fIfunction\fRs). These commands are not supported on the static attachment
-points (that is, the HCA ap_ids and the IB static \fBib\fR ap_id).
-.sp
-The following generic commands are supported:
-.sp
-.ne 2
-.na
-\fBconfigure\fR
-.ad
-.sp .6
-.RS 4n
-Configure the IB device to be used by Solaris.
-.RE
-
-.sp
-.ne 2
-.na
-\fBunconfigure\fR
-.ad
-.sp .6
-.RS 4n
-Unconfigure the IB device. If successful, \fBcfgadm\fR reports the
-\fBcondition\fR of this \fBap_id\fR as \fBunknown\fR.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR\fR
-.ad
-.sp .6
-.RS 4n
-Not supported.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-h\fR \fIap_id\fR\fR
-.ad
-.sp .6
-.RS 4n
-Obtain IB specific help for an IB attachment point.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR\fR
-.ad
-.sp .6
-.RS 4n
-List the state and condition of IB attachment points. The \fB-l\fR option works
-as described in \fBcfgadm\fR(1M).
-.sp
-When paired with the \fB-a\fR option, displays the dynamic attachment points as
-well (IOC, VPPA, Port, Pseudo, and HCA_SVC devices).
-.sp
-When paired with \fB-v\fR option, displays verbose data about the ap_ids. For
-an IOC, the \fBInfo\fR field in the
-.sp
-.in +2
-.nf
-cfgadm \fB-avl\fR
-.fi
-.in -2
-.sp
-
-output displays the following information: VendorID, IOCDeviceID,
-DeviceVersion, SubsystemVendorID, SubsystemID, Class, Subclass, Protocol,
-ProtocolVersion and IDString from the IOCControllerProfile. If the ID string
-isn't provided then nothing is displayed in its place. These fields are defined
-in the InfiniBand Specification Volume 1 (http://www.infinibandta.org).
-.sp
-For a VPPA, Port, or HCA_SVC device the \fBInfo\fR field in the \fBcfgadm
--lav\fR display shows the service name information to which this device is
-bound. If no such information exists, nothing is displayed.
-.sp
-For a Pseudo device \fBcfgadm -alv\fR displays the driver name and its
-\fBunit-address\fR information. For a HCA the verbose listing displays the
-VendorID, ProductID of the HCA, number of ports it has, and the PortGUID value
-of its ports. See \fBEXAMPLES\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-o\fR \fIhardware_option\fR\fR
-.ad
-.sp .6
-.RS 4n
-This option is not currently defined.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR \fIlisting_option\fR\fR
-.ad
-.sp .6
-.RS 4n
-Attachment points of class ib can be listed by using the select sub-option.
-Refer to the \fBcfgadm\fR(1M) man page for more information.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-x\fR \fIhardware_function\fR\fR
-.ad
-.sp .6
-.RS 4n
-Perform a hardware specific function. Note that the \fIname\fR can not be more
-than 4 characters long.
-.sp
-The following hardware specific functions are supported:
-.sp
-.ne 2
-.na
-\fB\fBadd_service\fR
-\fB-ocomm\fR\fB=[port|vppa|hca_svc],service=\fR\fIname\fR\fR
-.ad
-.sp .6
-.RS 4n
-This hardware specific function is supported on the static \fBIB\fR attachment
-point. It can be used to add a new service to \fB/kernel/drv/ib.conf\fR file
-and to update the \fBib\fR(7D) driver.
-.sp
-You must use the \fBservice=\fR\fIname\fR option to indicate the new service to
-be added. You must use the option \fBcomm=[port|vppa|hca_svc]\fR option to add
-the \fBname\fR service to either \fBport-svc-list\fR or to the
-\fBhca-svc-list\fR in the \fB/kernel/drv/ib.conf\fR file. See \fBEXAMPLES\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdelete_service\fR
-\fB-ocomm\fR\fB=[port|vppa|hca_svc],service=\fR\fIname\fR\fR
-.ad
-.sp .6
-.RS 4n
-This hardware specific function is supported on the static \fBIB\fR attachment
-point only. It can be used to delete an existing service from the
-\fB/kernel/drv/ib.conf\fR file and also from the \fBib\fR(7D) driver's data
-base. You must use the \fBservice=name\fR option to indicate which service to
-delete. You must use the \fBcomm=[port|vppa|hca_svc]\fR option to delete this
-service from the \fBport-svc-list\fR, \fBvppa-svc-list\fR, or
-\fBvppa-svc-list\fR of the \fB/kernel/drv/ib.conf\fR file. See \fBEXAMPLES\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBlist_clients\fR\fR
-.ad
-.sp .6
-.RS 4n
-Supported on \fBHCA\fR attachment points. Displays all the kernel IB clients
-using this \fBHCA\fR. It also displays the respective ap_ids of these kernel IB
-clients and if they have opened an alternate \fBHCA\fR device. See
-\fBEXAMPLES\fR.
-.sp
-\&.
-.sp
-If a given kernel IB client does not have a valid ap_id then a \fB-\fR is
-displayed in that column.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBlist_services\fR\fR
-.ad
-.sp .6
-.RS 4n
-This hardware specific function is supported on the static \fBIB\fR attachment
-point only. It lists all the Port and VPPA services as read from the
-\fB/kernel/drv/ib.conf\fR file. See \fBEXAMPLES\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBunconfig_clients\fR\fR
-.ad
-.sp .6
-.RS 4n
-This hardware specific function is supported on the static HCA attachment point
-only. It can be used to unconfigure all IB kernel clients of this given HCA.
-Only IB kernel clients that do not have an alternate HCA are unconfigured. See
-\fBEXAMPLES\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBupdate_ioc_config\fR\fR
-.ad
-.sp .6
-.RS 4n
-This hardware specific function is supported on static ib attachment point and
-the IOC attachment points. For the \fBib\fR APID, this function updates
-properties of all the IOC device nodes. For the IOC APID, this function updates
-the properties of specified IOC device node. This command updates the
-\fBport-list\fR, \fBport-entries\fR, \fBservice-id\fR, and \fBservice-name\fR
-IOC node properties .
-.sp
-See \fBib\fR(7D).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBupdate_pkey_tbls\fR\fR
-.ad
-.sp .6
-.RS 4n
-Supported on the static \fBib\fR attachment point. Updates the \fBPKEY\fR
-information inside \fBIBTL\fR. \fBIBTL\fR re-reads the \fBP_Key\fR tables for
-all the ports on each \fBHCA\fR present on the host.
-.sp
-See \fBibtl\fR(7D).
-.RE
-
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRListing the State and Condition of IB Devices
-.sp
-.LP
-The following command lists the state and condition of IB devices on the
-system. It only shows the static attachment points.
-
-.sp
-.in +2
-.nf
-example# cfgadm
-hca:21346543210a987 IB-HCA connected configured ok
-ib IB-FABRIC connected configured ok
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The \fB-a\fR option lists all attachment points. The following example uses the
-\fB-a\fR option and lists all attachment points:
-
-.sp
-.in +2
-.nf
-example# cfgadm -a
-hca:21346543210a987 IB-HCA connected configured ok
-ib IB-FABRIC connected configured ok
-ib::80020123456789a IB-IOC connected unconfigured ok
-ib::80245678,ffff,ipib IB-VPPA connected configured ok
-ib::21346543,0,hnfs IB-HCA_SVC connected configured ok
-ib::12245678,0,nfs IB-PORT connected configured ok
-ib::sdp,0 IB-PSEUDO connected configured ok
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRListing the Verbose Status of a IB VPPA Device
-.sp
-.LP
-The following command lists the verbose status of a IB VPPA device:
-
-.sp
-.in +2
-.nf
-example# cfgadm -alv ib::80245678,ffff,ipib
-Ap_Id Receptacle Occupant Condition Information
-When Type Busy Phys_Id
-ib::80245678,ffff,ipib connected configured ok ipib
-unavailable IB-VPPA n /devices/ib:fabric::80245678,ffff,ipib
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-A verbose listing of an IOC shows additional information. The following command
-shows a verbose listing:
-
-.sp
-.in +2
-.nf
-example# cfgadm -alv ib::80020123456789a
-Ap_Id Receptacle Occupant Condition Information
-When Type Busy Phys_Id
-ib::80020123456789a connected configured ok VID: 0xeaea
-DEVID: 0xeaea VER: 0x5 SUBSYS_VID: 0x0 SUBSYS_ID: 0x0 CLASS: 0xffff
-SUBCLASS: 0xff PROTO: 0xff PROTOVER: 0x1 ID_STRING: Sample Host Adapter
-unavailable IB-IOC n /devices/ib:fabric::80020123456789a
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-A verbose listing of a Pseudo device shows:
-
-.sp
-.in +2
-.nf
-example# cfgadm -alv ib::sdp,0
-Ap_Id Receptacle Occupant Condition Information
-When Type Busy Phys_Id
-ib::sdp,0 connected configured ok Driver = "sd
-p" Unit-address = "0"
-unavailable IB-PSEUDO n /devices/ib:fabric::sdp,0
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-A verbose listing of a HCA shows:
-
-.sp
-.in +2
-.nf
-example# cfgadm -alv hca:21346543210a987
-Ap_Id Receptacle Occupant Condition Information
-When Type Busy Phys_Id
-hca:21346543210a987 connected configured ok VID: 0x15b3,
-PID: 0x5a44, #ports: 0x2, port1 GUID: 0x80245678, port2 GUID: 0x80245679
-unavailable IB-HCA n /devices/ib:21346543210a987
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-You can obtain more user-friendly output if you specify these following
-\fBcfgadm\fR class and field selection options: \fB\fR\fB-s\fR
-\fB"select=class(ib),cols=ap_id:info"\fR
-
-.sp
-.LP
-The following command displays only IB ap_ids. The output only includes the
-\fBap_id\fR and \fBInformation\fR fields.
-
-.sp
-.in +2
-.nf
-
-# cfgadm -al -s "cols=ap_id:info" ib::80245678,ffff,ipib
-Ap_Id Information
-ib::80245678,ffff,ipib ipib
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRUnconfiguring an Existing IB IOC
-.sp
-.LP
-The following command unconfigures the IB IOC attached to
-\fBib::80020123456789a\fR, then displays the status of the \fBap_id\fR:
-
-.sp
-.in +2
-.nf
-# cfgadm -c unconfigure ib::80020123456789a
-Unconfigure the device: /devices/ib:fabric::80020123456789a
-This operation will suspend activity on the IB device
-Continue (yes/no)?
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Enter: \fBy\fR
-
-.sp
-.in +2
-.nf
-IB device unconfigured successfully.
-# cfgadm -al ib::80020123456789a
-Ap_Id Type Receptacle Occupant Condition
-ib::80020123456789 IB-IOC connected unconfigured unknown
-#
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The condition unknown implies that the device node doesn't exist anymore and
-this IB device's existence is known only to the IB Device Manager.
-
-.LP
-\fBExample 4 \fRConfiguring an IB IOC
-.sp
-.LP
-The following series of commands configures an IB device attached to
-\fBib::80020123456789a\fR:
-
-.sp
-.in +2
-.nf
-# cfgadm -yc configure ib::80020123456789a
-# cfgadm -al ib::80020123456789a
-Ap_Id Type Receptacle Occupant Condition
-ib::80020123456789a IB-IOC connected configured ok
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 5 \fRListing All Kernel IB Clients of a HCA
-.sp
-.LP
-The following command lists all kernel IB clients of an HCA attached to
-\fBhca:21346543210a987\fR:
-
-.sp
-.in +2
-.nf
-# cfgadm -x list_clients hca:21346543210a987
-Attachment Point Clients Alternate HCA
-ib::80020123456789a ioc1 Yes
-ib::80245678,ffff,ipib ipib No
-ib::21346543,0,hnfs hnfs No
-- ibdm No
-- ibmf No
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 6 \fRAdding a Port Service
-.sp
-.LP
-The following command adds a new Port service called \fBsrp\fR:
-
-.sp
-.in +2
-.nf
- # cfgadm -o comm=port,service=srp -x add_service ib
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 7 \fRDeleting a VPPA Service
-.sp
-.LP
-The following command deletes the \fBibd\fR VPPA service \fBibd\fR:
-
-.sp
-.in +2
-.nf
-# cfgadm -o comm=vppa,service=ipib -x delete_service ib
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 8 \fRListing Port, VPPA, HCA_SVC Services
-.sp
-.LP
-The following command lists all Port, VPPA, and HCA_SVC services:
-
-.sp
-.in +2
-.nf
-# cfgadm -x list_services ib
-Port communication services:
- srp
-
-VPPA communication services:
- ipib
- nfs
-
-HCA_SVC communication services:
- hnfs
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 9 \fRReprobing IOC Devices
-.sp
-.LP
-The following command reprobes all IOC device nodes.
-
-.sp
-.in +2
-.nf
-# cfgadm -x update_ioc_config ib
-This operation can update properties of IOC devices.
-Continue (yes/no)?
-
-Enter: y
-
-#
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 10 \fRUnconfiguring All Kernel Clients of a HCA
-.sp
-.LP
-The following command unconfigures all kernel clients of a HCA
-
-.sp
-.in +2
-.nf
-# cfgadm -x unconfig_clients hca:21346543
- This operation will unconfigure clients of this HCA.
- Continue (yes/no)?
-
- Enter: y
-.fi
-.in -2
-.sp
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/cfgadm/ib.so.1\fR\fR
-.ad
-.sp .6
-.RS 4n
-Hardware-specific library for generic InfiniBand device administration
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBcfgadm\fR(1M), \fBconfig_admin\fR(3CFGADM), \fBlibcfgadm\fR(3LIB),
-\fBib\fR(4), \fBattributes\fR(5), \fBib\fR(7D), \fBibdm\fR(7D), \fBibtl\fR(7D)
-.sp
-.LP
-InfiniBand Specification Volume 1 (http://www.infinibandta.org)
-.SH NOTES
-.sp
-.LP
-Apart from the listing (\fBcfgadm\fR \fB-l\fR or \fBcfgadm\fR \fB-x\fR
-\fBlist_clients\fR), only the superuser can execute any functions on an
-attachment point.
diff --git a/usr/src/man/man1m/cfgadm_pci.1m b/usr/src/man/man1m/cfgadm_pci.1m
deleted file mode 100644
index f89982cbbb..0000000000
--- a/usr/src/man/man1m/cfgadm_pci.1m
+++ /dev/null
@@ -1,944 +0,0 @@
-'\" te
-.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH CFGADM_PCI 1M "June 20, 2021"
-.SH NAME
-cfgadm_pci \- PCI, CompactPCI, and PCI Express Hotplug hardware specific
-commands for cfgadm
-.SH SYNOPSIS
-.nf
-\fB/usr/sbin/cfgadm\fR [\fB-f\fR] [\fB-y\fR | \fB-n\fR] [\fB-v\fR]
- [\fB-o\fR \fIhardware_options\fR] \fB-c\fR \fIfunction\fR \fIap_id\fR [\fIap_id\fR]
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/cfgadm\fR [\fB-f\fR] [\fB-y\fR | \fB-n\fR] [\fB-v\fR]
- [\fB-o\fR \fIhardware_options\fR] \fB-x\fR \fIhardware_function\fR \fIap_id\fR
- [\fIap_id\fR]
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/cfgadm\fR [\fB-v\fR] [\fB-s\fR \fIlisting_options\fR]
- [\fB-o\fR \fIhardware_options\fR] [\fB-l\fR [\fIap_id\fR | \fIap_type\fR]]
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/cfgadm\fR [\fB-v\fR] [\fB-o\fR \fIharware_options\fR] \fB-t\fR \fIap_id\fR [\fIap_id\fR]
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/cfgadm\fR [\fB-v\fR] [\fB-o\fR \fIhardware_function\fR] \fB-h\fR
- [\fIap_id\fR| \fIap_type\fR]
-.fi
-
-.SH DESCRIPTION
-The PCI hardware specific library, \fB/usr/lib/cfgadm/pci.so.1\fR, provides the
-support for hot plugging PCI, CompactPCI, and PCI Express adapter cards into
-the respective hot pluggable slots in a system that is hot plug capable,
-through the \fBcfgadm\fR command (see \fBcfgadm\fR(1M)). Hot plug
-administrative models between PCI, CompactPCI, and PCI Express remain the same
-except where noted in this document.
-.sp
-.LP
-For PCI Hot Plug, each hot plug slot on a specific PCI bus is represented by an
-attachment point of that specific PCI bus.
-.sp
-.LP
-An attachment point consist of two parts: a receptacle and an occupant. The
-\fBreceptacle\fR under PCI hot plug is usually referred to as the physical hot
-pluggable slot; and the \fBoccupant\fR is usually referred to as the PCI
-adapter card that plugs into the slot.
-.sp
-.LP
-Attachment points are named through \fBap_id\fRs. There are two types of
-\fBap_id\fRs: logical and physical. The physical \fBap_id\fR is based on the
-physical pathname, that is, \fB/devices/pci@1/hpc0_slot3\fR, whereas the
-logical \fBap_id\fR is a shorter, and more user-friendly name. For PCI hot
-pluggable slots, the logical \fBap_id\fR is usually the corresponding hot plug
-controller driver name plus the logical slot number, that is,
-\fBpci0:hpc0slot1\fR; PCI nexus driver, with hot plug controller driver named
-\fBhpc\fR and slot number \fB1\fR. The \fBap_type\fR for Hot plug PCI is
-\fBpci\fR.
-.sp
-.LP
-Note that the \fBap_type\fR is not the same as the information in the
-\fBType\fR field.
-.sp
-.LP
-See the \fI\fR for a detailed description of the hot plug procedure.
-.SS "PCI Express ap_id naming"
-For attachment points located in a PCI Express hierarchy (that is, the parent
-or an ancestor is a PCI Express device), including attachment points which are
-not PCI Express devices themselves, the following naming scheme is used:
-.sp
-.in +2
-.nf
-Grammar:
- APID : absolute-slot-path
-
- absolute-slot-path : \fIslot-path\fR[\fI:slot-path\fR[\fI:slotpath\fR ...]]
-
- slot-path : [\fIfru-id\fR.]\fIslot-id\fR
- where \fIfru-id\fR indicates the chassis FRU, if any,
- containing the \fIslot-id\fR
-
- fru-id : \fIfru-type\fR[\fIserialid#\fR]
- where \fIfru-type\fR is "iob" for PCI Express expansion
- chassis, followed by its serial number \fIserialid#\fR,
- if available
-
- slot-id: \fIslot-name\fR | \fIdevice-type\fR \fIphysical-slot#\fR |\e
- \fInexus-driver-name\fR \fInexus-driver-instance\fR.\e
- \fIdevice-type\fR \fIpci-device-number\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-where \fIslot-name\fR is a name assigned by the platform or hardware itself;
-\fIdevice-type\fR is either "pcie"for PCI Express devices or "pci" for PCI
-devices; \fInexus-driver-name\fR is the driver name for the device component;
-\fIphysical-slot#\fR is the hardware slot number; and \fIpci-device-number\fR
-is the PCI device number in standard PCI nomenclature.
-.sp
-.LP
-First, an \fIabsolute-slot-path\fR is constructed that attempts to describe the
-attachment point's topological location in more physically identifiable terms
-for the user. This \fIabsolute-slot-path\fR consists of \fIslot-path\fR
-components each separated by a ":" (colon). The leaf or left-most
-\fIslot-path\fR component describes the device of the attachment point itself
-while its right adjacent \fIslot-path\fR component up to the right or top-most
-\fIslot-path\fR component describes the parent up to the root devices,
-respectively.
-.sp
-.LP
-Each \fIslot-path\fR consists of a \fIslot-id\fR optionally preceded by an
-\fIfru-id\fR, which indicates an expansion chassis containing the device
-described by \fIslot-id\fR (detailed below). \fIfru-id\fR consists of
-\fIfru-type\fR followed by an optional \fIserialid#\fR. \fIfru-type\fR is "iob"
-for PCI Express expansion chassis types, while \fIserialid#\fR is either a
-64-bit hexadecimal number indicating a raw serial number obtained from the
-expansion chassis hardware, or a 4 upper-case ASCII character sequence for Sun
-branded expansion chassis.
-.sp
-.LP
-Each \fIslot-id\fR consists of one of three possible forms:
-.sp
-.ne 2
-.na
-\fBslot-id form (1)\fR
-.ad
-.sp .6
-.RS 4n
-\fIslot-names\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fBslot-id form (2)\fR
-.ad
-.sp .6
-.RS 4n
-\fIdevice-type\fR \fIphysical-slot#\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fBslot-id form (3)\fR
-.ad
-.sp .6
-.RS 4n
-\fInexus-driver-name\fR \fInexus-driver-instance\fR. \fIdevice-type\fR
-\fIpci-device-number\fR
-.RE
-
-.sp
-.LP
-The precedence of which form to select flows from the lowest form number to the
-highest form number, or from top to bottom as described above. If a form
-cannot be successfully constructed, then the next numerically higher form is
-attempted.
-.sp
-.LP
-The \fIslot-names\fR in "slot-id form (1)" is taken from the "slot-names"
-property of the corresponding node in the device tree and is a name assigned by
-hardware or the platform. This format is not predefined or established.
-.sp
-.LP
-In "slot-id form (2)", \fIdevice-type\fR indicates the device type of the
-component's slot, and is either "pcie" for PCI Express or "pci" for PCI, while
-\fIphysical-slot#\fR, take from the "physical-slot#" property of its
-corresponding device node, indicates the hardware slot number of the component.
-.sp
-.LP
-"slot-id form (3)" is used when all other forms cannot successfully be
-constructed, and is considered to be the default form. \fInexus-driver-name\fR
-is the component's driver name; \fInexus-driver-instance\fR is such driver's
-instance; \fIdevice-type\fR is the same as described in form (2);
-\fIpci-device-type\fR is the PCI device number as described and used for device
-configuration cycles in standard PCI nomenclature.
-.sp
-.LP
-In summary of the \fIslot-path\fR component, expanding the optional FRU
-component that may precede it, \fIslot-path\fR will consist one of the
-following forms in order:
-.sp
-.in +2
-.nf
-(1) [ iob[serialid#]. ] slot-names
-(2) [ iob[serialid#]. ] device_type physical_slot#
-(2) [ iob[serialid#]. ]
- nexus-driver-name nexus-driver-instance.
- device_type pci-device-number
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Lastly, the final form of the actual \fIap_id\fR name used in \fBcfgadm\fR is
-decided as follows, specified in order of precedence:
-.sp
-.ne 2
-.na
-\fBap_id form (1)\fR
-.ad
-.sp .6
-.RS 4n
-if the \fIabsolute-slot-path\fR can fit within the fixed length limit of
-\fBcfgadm\fR's \fIap_id\fR field, then \fIabsolute-slot-path\fR itself is used
-.RE
-
-.sp
-.ne 2
-.na
-\fBap_id form (2)\fR
-.ad
-.sp .6
-.RS 4n
-(\fIabsolute-slot-path\fR exceeds the \fIap_id\fR length limit) if the last
-\fIslot_path\fR component is contained within an expansion chassis, and it
-contains a \fIserialid#\fR, then the last \fIslot_path\fR component is used.
-The requirement for a \fIserialid#\fR in this form is to ensure a globally
-unique \fIap_id\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBap_id form (3)\fR
-.ad
-.sp .6
-.RS 4n
-(\fIabsolute-slot-path\fR exceeds the \fIap_id\fR length limit) the default
-form, "slot-id form (3)", of the last \fIslot_path\fR component is used
-.RE
-
-.sp
-.LP
-Whichever final \fIap_id\fR name is used, the \fIabsolute-slot-path\fR is
-stored in the Information ("info") field which can be displayed using the
-\fB-s\fR or \fB-v\fR options. This information can be used to physically locate
-any \fIap_id\fRs named using "ap_id form (2)" or "ap_id form (3)". The
-\fIabsolute-slot-path\fR is transformed slightly when stored in the information
-field, by the replacement of a colon (":") with forward slashes ("/") to more
-closely denote a topological context. The \fIabsolute-slot-path\fR can include
-\fIslot-path\fR components that are not hotpluggable above the leaf or
-right-most \fIslot-path\fR component up to the onboard host slot.
-.sp
-.LP
-See the EXAMPLES section for a list of hotpluggable examples.
-.SH OPTIONS
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-c\fR \fIfunction\fR\fR
-.ad
-.sp .6
-.RS 4n
-The following \fIfunction\fRs are supported for PCI hot pluggable slots:
-.sp
-.ne 2
-.na
-\fBconfigure\fR
-.ad
-.sp .6
-.RS 4n
-Configure the PCI device in the slot to be used by Solaris.
-.RE
-
-.sp
-.ne 2
-.na
-\fBconnect\fR
-.ad
-.sp .6
-.RS 4n
-Connect the slot to PCI bus.
-.RE
-
-.sp
-.ne 2
-.na
-\fBdisconnect\fR
-.ad
-.sp .6
-.RS 4n
-Disconnect the slot from the PCI bus.
-.RE
-
-.sp
-.ne 2
-.na
-\fBinsert\fR
-.ad
-.sp .6
-.RS 4n
-Not supported.
-.RE
-
-.sp
-.ne 2
-.na
-\fBremove\fR
-.ad
-.sp .6
-.RS 4n
-Not supported.
-.RE
-
-.sp
-.ne 2
-.na
-\fBunconfigure\fR
-.ad
-.sp .6
-.RS 4n
-Logically remove the PCI device's resources from the system.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR\fR
-.ad
-.sp .6
-.RS 4n
-Not supported.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-h\fR \fIap_id\fR | \fIap_type\fR\fR
-.ad
-.sp .6
-.RS 4n
-Print out PCI hot plug specific help message.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR \fIlist\fR\fR
-.ad
-.sp .6
-.RS 4n
-List the values of PCI Hot Plug slots.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-o\fR \fIhardware_options\fR\fR
-.ad
-.sp .6
-.RS 4n
-No hardware specific options are currently defined.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR \fIlisting_options\fR\fR
-.ad
-.sp .6
-.RS 4n
-Same as the generic \fBcfgadm\fR(1M).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-t\fR \fIap_id\fR\fR
-.ad
-.sp .6
-.RS 4n
-This command is only supported on platforms which support testing capability on
-the slot.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.sp .6
-.RS 4n
-Execute in verbose mode.
-.sp
-When the \fB-v\fR option is used with the \fB-l\fR option, the \fBcfgadm\fR
-command outputs information about the attachment point. For attachment points
-located in a PCI Express hierarhcy, the Information field will contain the
-attachment point's absolute slot path location, including any hardware or
-platform specific labeling information for each component in the slot path.
-Each component in the slot path will be separated by a "/" (forward slash). See
-the PCI Express ap_id naming section. For PCI Hot Plug attachment points not
-located in a PCI Express hierarchy, the \fBInformation\fR field will be the
-slot's system label, if any. This string will be obtained from the
-\fBslot-name\fR property of the slot's bus node. The information in the Type
-field is printed with or without the \fB-v\fR option. The occupant \fBType\fR
-field will describe the contents of the slot. There are 2 possible values:
-.sp
-.ne 2
-.na
-\fBunknown\fR
-.ad
-.sp .6
-.RS 4n
-The slot is empty. If a card is in the slot, the card is not configured or
-there is no driver for the device on the card.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIsubclass\fR/\fIboard\fR\fR
-.ad
-.sp .6
-.RS 4n
-The card in the slot is either a single-function or multi-function device.
-.sp
-\fIsubclass\fR is a string representing the subclass code of the device, for
-example, SCSI, \fBethernet\fR, \fBpci-isa\fR, and so forth. If the card is a
-multi-functional device, \fBMULT\fR will get printed instead.
-.sp
-\fIboard\fR is a string representing the board type of the device. For example,
-hp is the string used for a PCI Hot Plug adapter, hs is used for a Hot Swap
-Board, nhs for a Non\(emHot Swap cPCI Board, bhs for a Basic Hot Swap cPCI
-Board, and fhs for a Full Hot Swap cPCI Board.
-.sp
-Most PCI cards with more than one device are not multi-function devices, but
-are implemented as a PCI bridge with arbitrary devices behind them. In those
-cases, the subclass displayed is that of the PCI bridge. Most commonly, the
-bridges are \fBpci-pci,\fR a generic PCI to PCI bridge or \fBstpci\fR, a
-semi-transparent PCI bridge.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-x\fR \fIhardware_function\fR\fR
-.ad
-.sp .6
-.RS 4n
-Perform hardware specific function. These hardware specific functions should
-not normally change the state of a receptacle or occupant.
-.sp
-The following \fIhardware_functions\fR are supported:
-.sp
-.ne 2
-.na
-\fBenable_slot | disable_slot\fR
-.ad
-.sp .6
-.RS 4n
-Change the state of the slot and preserve the state of slot across reboot.
-Preservation of state across reboot is only supported on select platforms.
-.sp
-\fBenable_slot\fR enables the addition of hardware to this slot for hot
-plugging and at boot time.
-.sp
-\fBdisable_slot\fR disables the addition of hardware to this slot for hot
-plugging and at boot time. When a slot is disabled its condition is shown as
-unusable.
-.RE
-
-.sp
-.ne 2
-.na
-\fBenable_autoconfig | disable_autoconfig\fR
-.ad
-.sp .6
-.RS 4n
-Change the ability to autoconfigure the occupant of the slot. Only platforms
-that support auto configuration support this feature.
-.sp
-\fBenable_autoconfig\fR enables the ability to autoconfigure the slot.
-.sp
-\fBdiable_autoconfig\fR disables the ability to autoconfigure the slot.
-.sp
-Autoconfiguration is done through the attention button on the PCI Express
-platforms and through the injector/ejector latch on the CompactPCI platforms.
-When autoconfiguration is disabled, the attention button or latch mechanism
-cannot be used to configure the occupant of the slot.
-.RE
-
-.sp
-.ne 2
-.na
-\fBled=[\fIled_sub_arg\fR],mode=[\fImode_sub_arg\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Without sub-arguments, print a list of the current LED settings. With
-sub-arguments, set the mode of a specific LED for a slot.
-.sp
-Specify \fIled_sub_arg\fR as \fBfault\fR, \fBpower\fR, \fBattn\fR, or
-\fBactive\fR.
-.sp
-Specify \fImode_sub_arg\fR as \fBon\fR, \fBoff\fR or \fBblink\fR.
-.sp
-For PCI Express, only the power and attn LEDs are valid and only the state of
-the \fBattn\fR LED can be changed.
-.sp
-Changing the state of the LED does not change the state of the receptacle or
-occupant. Normally, the LEDs are controlled by the hot plug controller, no user
-intervention is necessary. Use this command for testing purposes.
-.sp
-\fBCaution:\fR Changing the state of the LED can misrepresent the state of
-occupant or receptacle.
-.sp
-The following command prints the values of LEDs:
-.sp
-.in +2
-.nf
-example# \fBcfgadm -x led pci0:hpc0_slot1\fR
-Ap_Id Led
-pci0:hpc0_slot1 power=on,fault=off,active=off,attn=off
-.fi
-.in -2
-.sp
-
-The following command turns on the Fault LED:
-.sp
-.in +2
-.nf
-example# \fBcfgadm -x led=fault,mode=on pci0:hpc0_slot1\fR
-.fi
-.in -2
-.sp
-
-The following command turns off the Power LED:
-.sp
-.in +2
-.nf
-example# \fBcfgadm -x led=power,mode=off pci0:hpc0_slot0\fR
-.fi
-.in -2
-.sp
-
-The following command sets the \fBactive\fR LED to blink to indicate the
-location of the slot:
-.sp
-.in +2
-.nf
-example# \fBcfgadm -x led=active,mode=on pci0:hpc0_slot3\fR
-.fi
-.in -2
-.sp
-
-.RE
-
-.RE
-
-.SH EXAMPLES
-\fBExample 1 \fRPrinting out the Value of Each Slot
-.sp
-.LP
-The following command prints out the values of each slot:
-
-.sp
-.in +2
-.nf
-example# \fBcfgadm -l\fR
-Ap_Id Type Receptacle Occupant Condition
-c0 scsi-bus connected configured unknown
-c1 scsi-bus connected unconfigured unknown
-c2 scsi-bus connected unconfigured unknown
-cpci_slot1 stpci/fhs connected configured ok
-cpci_slot2 unknown empty unconfigured unknown
-cpci_slot4 stpci/fhs connected configured ok
-cpci_slot5 stpci/fhs connected configured ok
-pcie7 etherne/hp connected configured ok
-pcie8 unknown empty unconfigured unknown
-pcie9 fibre/hp connected configured ok
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRReplacing a Card
-.sp
-.LP
-The following command lists all DR-capable attachment points:
-
-.sp
-.in +2
-.nf
-example# \fBcfgadm\fR
-
-
-Type Receptacle Occupant Condition
-c0 scsi-bus connected configured unknown
-c1 scsi-bus connected unconfigured unknown
-c2 scsi-bus connected unconfigured unknown
-cpci_slot1 stpci/fhs connected configured ok
-cpci_slot2 unknown empty unconfigured unknown
-cpci_slot4 stpci/fhs connected configured ok
-cpci_slot5 stpci/fhs connected configured ok
-pcie7 etherne/hp connected configured ok
-pcie8 unknown empty unconfigured unknown
-pcie9 fibre/hp connected configured ok
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The following command unconfigures and electrically disconnects the card:
-
-.sp
-.in +2
-.nf
-example# \fBcfgadm -c disconnect cpci_slot4\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The change can be verified by entering the following command:
-
-.sp
-.in +2
-.nf
-example# \fBcfgadm cpci_slot4\fR
-
-
-Ap_Id Type Receptacle Occupant Condition
-cpci_slot4 unknown disconnected unconfigured unknown
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Now the card can be swapped. The following command electrically connects and
-configures the card:
-
-.sp
-.in +2
-.nf
-example# \fBcfgadm -c configure cpci_slot4\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The change can be verified by entering the following command:
-
-.sp
-.in +2
-.nf
-example# \fBcfgadm cpci_slot4\fR
-
-
-Ap_Id Type Receptacle Occupant Condition
-cpci_slot4 stpcipci/fhs connected configured ok
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRInterpreting ApIds for devices in a PCI Express topology
-.sp
-.LP
-The following command shows a listing for a topology with both PCI Express and
-PCI attachment points in I/O expansion chassis connected to hotpluggable slots
-at the host level:
-
-.sp
-.in +2
-.nf
-example# \fBcfgadm -s cols=ap_id:info\fR
-
-
-Ap_Id Information
-iou#0-pci#0 Location: iou#0-pci#0
-iou#0-pci#1 Location: iou#0-pci#1
-iou#0-pci#1:iob.pci3 Location: iou#0-pci#1/iob.pci3
-iou#0-pci#1:iob.pci4 Location: iou#0-pci#1/iob.pci4
-iou#0-pci#2 Location: iou#0-pci#2
-iou#0-pci#2:iob58071.pcie1 Location: iou#0-pci#2/iob58071.pcie1
-iou#0-pci#2:iob58071.special Location: iou#0-pci#2/iob58071.special
-iou#0-pci#3 Location: iou#0-pci#3
-iou#0-pci#3:iobBADF.pcie1 Location: iou#0-pci#3/iobBADF.pcie1
-iou#0-pci#3:iobBADF.pcie2 Location: iou#0-pci#3/iobBADF.pcie2
-iou#0-pci#3:iobBADF.pcie3 Location: iou#0-pci#3/iobBADF.pcie3
-iou#0-pci#3:iobBADF.pci1 Location: iou#0-pci#3/iobBADF.pci1
-iou#0-pci#3:iobBADF.pci2 Location: iou#0-pci#3/iobBADF.pci2
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-In this example, the "iou#0-pci#[0-3]" represents the top-most hotpluggable
-slots in the system. Since the "iou#<n>-pci#<n>" form does not match any of the
-forms stated in the grammar specification section described earlier, we can
-infer that such a name for the base component in this hotplug topology is
-derived from the platform through the "slot-names" property.
-
-.sp
-.ne 2
-.na
-\fBSlot iou#0-pci#0\fR
-.ad
-.sp .6
-.RS 4n
-this slot is empty or its occupant is unconfigured
-.RE
-
-.sp
-.ne 2
-.na
-\fBSlot iou#0-pci#1\fR
-.ad
-.sp .6
-.RS 4n
-this slot contains an expansion chassis with two hotpluggable slots, "pci3" and
-"pci4". "pci3" and "pci4" represent two PCI slots contained within that
-expansion chassis with physical slot numbers 3 and 4 respectively. The
-expansion chassis in this case does not have or exports a \fIserial-id\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBSlot iou#0-pci#2\fR
-.ad
-.sp .6
-.RS 4n
-this slot contains a third party expansion chassis with a hexadecimal
-\fIserial-id\fR of 58071. Within that expansion chassis are two hotpluggable
-slots, "pcie1" and "special". "pcie1" represents a PCI Express slot with
-physical slot number 1. The slot "special" has a label which is derived from
-the platform, hardware or firmware.
-.RE
-
-.sp
-.ne 2
-.na
-\fBSlot iou#0-pci#3\fR
-.ad
-.sp .6
-.RS 4n
-this slot contains a Sun expansion chassis with an FRU identifier of "BADF".
-This expansion chassis contains three PCI Express slots, "pcie1", "pcie2", and
-"pcie3" with physical slot numbers 1, 2, and 3 respectively; and two PCI slots,
-"pci1" and "pci2" with physical slot numbers 1 and 2, respectively.
-.RE
-
-.sp
-.LP
-The following command shows a listing for a topology with both PCI Express and
-PCI attachment points in I/O expansion chassis connected hotpluggable and
-non-hotpluggable host slots:
-
-.sp
-.in +2
-.nf
-example# \fBcfgadm -s cols=ap_id:info\fR
-
-
-Ap_Id Information
-Slot1 Location: Slot1
-Slot2:iob4ffa56.pcie1 Location: Slot2/iob4ffa56.pcie1
-Slot2:iob4ffa56.pcie2 Location: Slot2/iob4ffa56.pcie2
-Slot5:iob3901.pci1 Location: Slot2/iob3901.pci1
-Slot5:iob3901.pci2 Location: Slot2/iob3901.pci2
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-In this example, the host system only has one hotpluggable slot, "Slot1". We
-can infer that "Slot2" and "Slot5" are not hotpluggable slots because they do
-not appear as attachment points themselves in \fBcfgadm\fR. However, "Slot2"
-and "Slot5" each contains a third party expansion chassis with hotpluggable
-slots.
-
-.sp
-.LP
-The following command shows a listing for a topology with attachment points
-that are lacking in certain device properties:
-
-.sp
-.in +2
-.nf
-example# \fBcfgadm -s cols=ap_id:info\fR
-
-Ap_Id Information
-px_pci7.pcie0 Location: px_pci7.pcie0
-px_pci11.pcie0 Location: px_pci11.pcie0
-px_pci11.pcie0:iob.pcie1 Location: px_pci11.pcie0/iob.pcie1
-px_pci11.pcie0:iob.pcie2 Location: px_pci11.pcie0/iob.pcie2
-px_pci11.pcie0:iob.pcie3 Location: px_pci11.pcie0/iob.pcie3
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-In this example, the host system contains two hotpluggable slots,
-"px_pci7.pcie0" and "px_pci11.pcie0". In this case, it uses "slot-id form (3)"
-( the default form) for the base \fIslot-path\fR component in the
-\fIabsolute-slot-path\fR because the framework could not obtain enough
-information to produce other more descriptive forms of higher precedence.
-
-.sp
-.LP
-Interpreting right-to-left, attachment point "px_pci7.pcie0" represents a PCI
-Express slot with PCI device number 0 (which does not imply a physical slot
-number of the same), bound to nexus driver "px_pci", instance 7. Likewise,
-attachment point "px_pci11.pcie0" represents a PCI Express slot with PCI device
-number 0 bound to driver instance 11 of px_pci.
-
-.sp
-.LP
-Under "px_pci11.pcie0" is a third party expansion chassis without a
-\fIserial-id\fR and with three hotpluggable PCI Express slots.
-
-.sp
-.LP
-The following command shows a listing for a topology with attachment point
-paths exceeding the \fIApId\fR field length limit:
-
-.sp
-.in +2
-.nf
-example# \fBcfgadm -s cols=ap_id:info\fR
-
-Ap_Id Information
-pcie4 Location: pcie4
-pcie4:iobSUNW.pcie1 Location: pcie4/iobSUNW.pcie1
-pcie4:iobSUNW.pcie2 Location: pcie4/iobSUNW.pcie2
-iob8879c3f3.pci1
- Location: pcie4/iobSUNW.pcie2/iob8879c3f3.pci1
-iob8879c3f3.pci2
- Location: pcie4/iobSUNW.pcie2/iob8879c3f3.pci2
-iob8879c3f3.pci3
- Location: pcie4/iobSUNW.pcie2/iob8879c3f3.pci3
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-In this example, there is only one hotpluggable slot, "pcie4" in the host.
-Connected under "pcie4" is a SUN expansion chassis with FRU identifier "SUNW".
-Nested under PCI Express slot "pcie2" of that expansion chassis (ApId
-pcie4:iobSUNW.pcie2) lies another expansion chassis with three hotpluggable PCI
-slots.
-
-.sp
-.LP
-Because the length of the \fIabsolute-slot-path\fR form of
-"pcie4/iobSUNW.pcie2/iob8879c3f3.pci1...3" exceeds the \fIApId\fR field length
-limit, and the leaf \fIslot-path\fR component is globally unique, "ap_id form
-(2)" is used, where the leaf \fIslot-path\fR component in the
-\fIabsolute-slot-path\fR is used as the final \fIApId\fR.
-
-.sp
-.LP
-The following command shows a listing for a topology with attachment point
-paths exceeding the \fIApId\fR field length limit and lacking enough
-information to uniquely identify the leaf \fIslot-id\fR on its own (for
-instance, missing the \fIserial-id\fR):
-
-.sp
-.in +2
-.nf
-example# \fBcfgadm -s cols=ap_id:info\fR
-
-
-Ap_Id Information
-pcie4 Location: pcie4
-pcie4:iob4567812345678.pcie3 Location: pcie4/iob4567812345678.pcie3
-px_pci20.pcie0
- Location: pcie4/iob4567812345678.pcie3/iob.pcie1
-px_pci21.pcie0
- Location: pcie4/iob4567812345678.pcie3/iob.pcie2
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-In this example, there is only one hotpluggable slot, "pcie4" in the host.
-Connected under "pcie4" is a third party expansion chassis with hexadecimal
-\fIserial-id\fR 4567812345678. Nested under the PCI Express slot "pcie3" of
-that expansion chassis (ApId pcie4:iob4567812345678.pcie3), lies another third
-part expansion chassis without a \fIserial-id\fR and with two hotpluggable PCI
-Express slots.
-
-.sp
-.LP
-Because the length of the \fIabsolute-slot-path\fR form of
-"pcie4/iob4567812345678.pcie3/iob.pcie1...2" exceeds the \fIApId\fR field
-length limit, and the leaf \fIslot-path\fR component is not globally unique,
-"ap_id form (3)" is used. "ap_id form (2)" is where \fIslot-id\fR form (3)
-(default form) of the leaf \fIslot-path\fR component in the
-\fIabsolute-slot-path\fR is used as the final \fIApId\fR.
-
-.sp
-.LP
-The default form or "slot-id form (3)" of the leaf component
-".../iob.pcie1"represents a PCI Express slot with device number 0, bound to
-driver instance 20 of "px_pci". Likewise, the default form of the leaf
-component ".../iob.pcie2" represents a PCI Express slot with device number 0,
-bound to driver instance 21 of "px_pci"
-
-.SH FILES
-.ne 2
-.na
-\fB/usr/lib/cfgadm/pci.so.1\fR
-.ad
-.sp .6
-.RS 4n
-Hardware specific library for PCI hot plugging.
-.RE
-
-.SH SEE ALSO
-\fBcfgadm\fR(1M), \fBconfig_admin\fR(3CFGADM), \fBlibcfgadm\fR(3LIB),
-\fBattributes\fR(5)
-.sp
-.LP
-\fI\fR
diff --git a/usr/src/man/man1m/cfgadm_sata.1m b/usr/src/man/man1m/cfgadm_sata.1m
deleted file mode 100644
index a77b9f177c..0000000000
--- a/usr/src/man/man1m/cfgadm_sata.1m
+++ /dev/null
@@ -1,833 +0,0 @@
-'\" te
-.\" Copyright (c) 2007 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH CFGADM_SATA 1M "Aug 27, 2007"
-.SH NAME
-cfgadm_sata \- SATA hardware-specific commands for cfgadm
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/cfgadm\fR [\fB-f\fR] [\fB-y\fR | \fB-n\fR] [\fB-v\fR] [\fB-o\fR \fIhardware_options\fR]
- \fB-c\fR \fIfunction\fR \fIap_id\fR...
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/cfgadm\fR [\fB-f\fR] [\fB-y\fR | \fB-n\fR] [\fB-v\fR] [\fB-o\fR \fIhardware_options\fR]
- \fB-x\fR \fIhardware_function\fR \fIap_id\fR...
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/cfgadm\fR [\fB-v\fR] [\fB-a\fR] [\fB-s\fR \fIlisting_options\fR]
- [\fB-o\fR \fIhardware_options\fR] [\fB-l\fR [\fIap_id\fR | \fIap_type\fR]...]
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/cfgadm\fR [\fB-v\fR] [\fB-o\fR \fIharware_options\fR] \fB-t\fR \fIap_id\fR...
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/cfgadm\fR [\fB-v\fR] [\fB-o\fR \fIhardware_options\fR] \fB-h\fR [\fIap_id\fR]...
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBSATA\fR hardware specific library, \fB/usr/lib/cfgadm/sata.so.1\fR,
-provides the functionality for \fBSATA\fR hot plugging through the \fBcfgadm\fR
-command. \fBcfgadm\fR operates on attachment points, which are locations in the
-system where hardware resources can be dynamically reconfigured. See
-\fBcfgadm\fR(1M) for information regarding attachment points.
-.sp
-.LP
-Each \fBSATA\fR controller's and port multiplier's device port is represented
-by an attachment point in the device tree. \fBSATA\fR devices, connected and
-configured in the system are shown as the attachment point name extension. The
-terms "attachment point" and "\fBSATA\fR port" are used interchangeably in the
-following description.
-.sp
-.LP
-Attachment points are named through \fBap_id\fRs. All the \fBSATA\fR attachment
-points \fBap_id\fR consist of a string in the following form:
-.sp
-.in +2
-.nf
-sataX/P[.M][::dsk/cXtYd0]
-.fi
-.in -2
-
-.sp
-.LP
-where
-.sp
-.ne 2
-.na
-\fBX\fR
-.ad
-.RS 14n
-is the \fBSATA\fR controller number
-.RE
-
-.sp
-.ne 2
-.na
-\fBP\fR
-.ad
-.RS 14n
-is the \fBSATA\fR controller's device port number (0 to 31)
-.RE
-
-.sp
-.ne 2
-.na
-\fBM\fR
-.ad
-.RS 14n
-is the port multiplier's device port number (0 to 14) the port multiplier host
-port number (15). It is used only when the port multiplier is attached to the
-\fBSATA\fR controller's device port.
-.RE
-
-.sp
-.ne 2
-.na
-\fBdev/cXtYd0\fR
-.ad
-.RS 14n
-identifies the attached \fBSATA\fR device
-.RE
-
-.sp
-.ne 2
-.na
-\fBY\fR
-.ad
-.RS 14n
-is a target number
-.RE
-
-.sp
-.LP
-In general, the device identifier is derived from the corresponding logical
-link for the device in /\fIdev\fR. Because only one \fBLUN\fR (\fBLUN\fR 0) is
-supported by the \fBSATA\fR device, the "d" component of the device string will
-always have number 0 (zero).
-.sp
-.LP
-For example, the logical \fBap_id\fR of the device port 4 of the port
-multiplier connected to the device port 5 of the \fBSATA\fR controller 2 would
-be:
-.sp
-.in +2
-.nf
-sata2/5.4
-.fi
-.in -2
-
-.sp
-.LP
-If the \fBSATA\fR disk or \fBCD\fR/\fBDVD\fR device is connected to this
-attachment point, and the device is configured, the \fIap_id\fR would be:
-.sp
-.in +2
-.nf
-sata2/5.4::dsk/c2t645d0
-.fi
-.in -2
-
-.sp
-.LP
-The \fIcXtYd0\fR string identifying a device has one-to-one correspondence to
-the device attachment point.
-.sp
-.LP
-A simple listing of attachment points in the system will include all \fBSATA\fR
-device ports and attached devices. For example:
-.sp
-.in +2
-.nf
-#\fBcfgadm -l\fR
-Ap_Id Type Receptacle Occupant Condition
- sata0/0::dev/c0t0d0 disk connected configured ok
- sata0/1::dev/c0t1d0 disk connected configured ok
- sata0/2::dev/c0t2d0 cd-dvd connected configured ok
- sata0/3 sata-port empty unconfigured ok
- sata1/0 sata-port disconnected unconfigured unknown
- sata1/1 sata port disconnected unconfigured unknown
- sata1/2 sata port empty unconfigured ok
- sata1/3.15 sata-pmult connected configured ok
- sata1/3.0::dev/c0t512d0 disk connected configured ok
- sata1/3.1 sata-port empty unconfigured ok
- sata1/3.2 sata-port empty unconfigured ok
- sata1/3.3 sata-port empty unconfigured ok
- usb0/1 unknown empty unconfigured ok
- usb0/2 unknown empty unconfigured ok
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-See \fBcfgadm\fR(1M)for more information regarding listing of attachment
-points.
-.sp
-.LP
-The receptacle state for attachment point at the \fBSATA\fR port have the
-following meanings:
-.sp
-.ne 2
-.na
-\fBempty\fR
-.ad
-.RS 16n
-The \fBSATA\fR port is powered-on and enabled. No device presence was detected
-on this port.
-.RE
-
-.sp
-.ne 2
-.na
-\fBdisconnected\fR
-.ad
-.RS 16n
-The \fBSATA\fR port is not enabled or the \fBSATA\fR device presence was
-detected but no communication with the device was established, or the port has
-failed.
-.RE
-
-.sp
-.ne 2
-.na
-\fBconnected\fR
-.ad
-.RS 16n
-The \fBSATA\fR device is detected on the port the communication with the device
-is established.
-.RE
-
-.sp
-.LP
-The occupant (device attached to the \fBSATA\fR port) state have the following
-meanings:
-.sp
-.ne 2
-.na
-\fBconfigured\fR
-.ad
-.RS 16n
-The attached \fBSATA\fR device is configured and ready to use by the operating
-system.
-.RE
-
-.sp
-.ne 2
-.na
-\fBunconfigured\fR
-.ad
-.RS 16n
-No device is attached, or the \fBSATA\fR device attached to the \fBSATA\fR port
-was not yet configured. To configure it, run the command "\fBcfgadm -c
-configure ap_id\fR".
-.RE
-
-.sp
-.LP
-The attachment point (\fBSATA\fR port) condition have the following meanings:
-.sp
-.ne 2
-.na
-\fBok\fR
-.ad
-.RS 11n
-The \fBSATA\fR port is powered-on and enabled, and is ready for use.
-.RE
-
-.sp
-.ne 2
-.na
-\fBfailed\fR
-.ad
-.RS 11n
-The \fBSATA\fR port failed. It may be disabled and/or powered-off by the
-system. It is unusable and its condition is unknown. It may be due to the
-device plugged-in.
-.RE
-
-.sp
-.ne 2
-.na
-\fBunknown\fR
-.ad
-.RS 11n
-The \fBSATA\fR port is disabled and its condition is unknown.
-.RE
-
-.sp
-.LP
-A "state table" is the combination of an attachment point receptacle state, an
-occupant state, and an attachment point (\fBSATA\fR port) condition. The valid
-states are:
-.sp
-.ne 2
-.na
-\fBempty/unconfigured/ok\fR
-.ad
-.sp .6
-.RS 4n
-The \fBSATA\fR port is enabled and active. No device presence was detected.
-.RE
-
-.sp
-.ne 2
-.na
-\fBdisconnected/unconfigured/ok\fR
-.ad
-.sp .6
-.RS 4n
-The \fBSATA\fR port is enabled and a device presence was detected but no
-communications with the device was established.
-.RE
-
-.sp
-.ne 2
-.na
-\fBdisconnected/unconfigured/unknown\fR
-.ad
-.sp .6
-.RS 4n
-The \fBSATA\fR Port is disabled and its condition is unknown.
-.RE
-
-.sp
-.ne 2
-.na
-\fBdisconnected/unconfigured/failed\fR
-.ad
-.sp .6
-.RS 4n
-The \fBSATA\fR Port is disabled and unusable. The port was disabled by the
-system due to a system-detected failure.
-.RE
-
-.sp
-.ne 2
-.na
-\fBconnected/unconfigured/ok\fR
-.ad
-.sp .6
-.RS 4n
-The \fBSATA\fR Port is enabled and active. A device presence was detected and
-the communication with a device was established. The device is not configured
-to be used by the \fBOS\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBconnected/configured/ok\fR
-.ad
-.sp .6
-.RS 4n
-The device is present and configured, and is ready to use by the \fBOS\fR.
-.RE
-
-.SH OPTIONS
-.sp
-.LP
-\fBcfgadm\fR defines several types of operations besides listing (\fB-l\fR).
-These operations include testing, (\fB-t\fR), invoking configuration state
-changes, (\fB-c\fR), invoking hardware specific functions (\fB-x\fR), and
-obtaining configuration administration help messages (\fB-h\fR).
-.sp
-.ne 2
-.na
-\fB\fB-c\fR \fIfunction\fR\fR
-.ad
-.sp .6
-.RS 4n
-The following generic \fIfunction\fRs are defined for the \fBSATA\fR hardware
-specific library. For \fBSATA\fR port attachment point, the following
-configuration state change operations are supported:
-.sp
-.ne 2
-.na
-\fBconnect\fR
-.ad
-.sp .6
-.RS 4n
-Enable (activate) the \fBSATA\fR port and establish the communication with an
-attached device. This operation implies powering-on the port if necessary.
-.RE
-
-.sp
-.ne 2
-.na
-\fBdisconnect\fR
-.ad
-.sp .6
-.RS 4n
-Unconfigure the attached device, if it is not already unconfigured, and disable
-(deactivate) the \fBSATA\fR port. A subsequent "\fBconnect\fR" command enables
-\fBSATA\fR port operation but does not bring a device to the "configured"
-state.
-.RE
-
-For a \fBSATA\fR device attached to the \fBSATA\fR port following state change
-operations are supported:
-.sp
-.ne 2
-.na
-\fBconfigure\fR
-.ad
-.RS 15n
-Configure new device for use by the operating system if it is not already
-configured. This command also implies connect operation, if necessary.
-.RE
-
-.sp
-.ne 2
-.na
-\fBunconfigure\fR
-.ad
-.RS 15n
-Unconfigure the device connected to the \fBSATA\fR port if it is not already
-unconfigured.
-.RE
-
-The \fBconfigure\fR and \fBunconfigure\fR operations cannot be used for an
-attachment point where the port multiplier is connected. Port multipliers are
-configured and unconfigured automatically by the system. However, configure and
-unconfigure operations apply to all \fBSATA\fR devices connected to the port
-multiplier's device ports.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR\fR
-.ad
-.sp .6
-.RS 4n
-Not supported.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-h\fR \fIap_id\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBSATA\fR specific help can be obtained by using the help option with any
-\fBSATA\fR attachment point.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR [\fB-v\fR]\fR
-.ad
-.sp .6
-.RS 4n
-The \fB-l\fR option works as described in \fBcfgadm\fR(1M). When paired with
-the \fB-v\fR option, the "Information" field contains the following
-\fBSATA\fR-specific information:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Mfg: manufacturer string
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Product: product string
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-No: product Serial Number
-.RE
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-o\fR \fIhardware_options\fR\fR
-.ad
-.sp .6
-.RS 4n
-No hardware specific options are currently defined.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR \fIlisting_options\fR\fR
-.ad
-.sp .6
-.RS 4n
-Attachment points of class \fBSATA\fR can be listed by using the select
-suboption. See \fBcfgadm\fR(1M).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-t\fR \fIap_id\fR\fR
-.ad
-.sp .6
-.RS 4n
-Perform self-test of the \fBSATA\fR port, if supported by the \fBSATA\fR
-controller. If a port self-test operation is not supported by the \fBSATA\fR
-controller, an error message is issued.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-x\fR \fIhardware_function\fR\fR
-.ad
-.sp .6
-.RS 4n
-Perform hardware specific function.
-.sp
-Some of the following commands used on the \fBSATA\fR ports or the \fBSATA\fR
-controller may affect any \fBSATA\fR devices that have been attached, as noted.
-\fBap_id\fR refers to \fBSATA\fR port or the entire \fBSATA\fR controller, as
-noted. If the operation implies unconfiguring a device, but it cannot be
-unconfigured (that is, the device contains a mounted filesystem), an error
-message is issued and the operation is not performed. An error message will be
-also issued if the \fBSATA\fR controller does not support specified operation.
-.sp
-.ne 2
-.na
-\fBsata_reset_device ap_id\fR
-.ad
-.sp .6
-.RS 4n
-Reset the \fBSATA\fR device attached to \fBap_id\fR \fBSATA\fR port. The
-\fBSATA\fR port state does not change.
-.RE
-
-.sp
-.ne 2
-.na
-\fBsata_reset_port ap_id\fR
-.ad
-.sp .6
-.RS 4n
-Reset the \fBSATA\fR port specified by \fBap_id\fR. If a \fBSATA\fR device is
-attached to the port, it is also reset. This operation may be also performed on
-the port to which a port multiplier is connected. If a port multiplier is
-connected to the \fBSATA\fR controller port, the \fBSATA\fR devices attached to
-the port multiplier may not be reset
-.RE
-
-.sp
-.ne 2
-.na
-\fBsata_reset_all ap_id\fR
-.ad
-.sp .6
-.RS 4n
-Reset \fBSATA\fR controller specified by the controller number part in
-\fBap_id\fR and all attached devices and re-enumerate all connected devices,
-including port multipliers and devices connected to port multipliers' device
-ports.
-.sp
-This operations implies unconfiguring all attached devices prior to the
-operation. Any newly enumerated devices will be left unconfigured.
-.RE
-
-.sp
-.ne 2
-.na
-\fBsata_port_deactivate ap_id\fR
-.ad
-.sp .6
-.RS 4n
-Force the deactivation of the port when all else fails. This is meant as an
-emergency step; use with caution.
-.RE
-
-.sp
-.ne 2
-.na
-\fBsata_port_activate ap_id\fR
-.ad
-.sp .6
-.RS 4n
-Force the activation of a port. This is meant for emergency situations on a
-port which was deactivated to recover from errors.
-.RE
-
-.sp
-.ne 2
-.na
-\fBsata_port_self_test ap_id\fR
-.ad
-.sp .6
-.RS 4n
-Perform self-test operation on the \fBSATA\fR controller. This operation
-implies unconfiguring all devices and resetting the \fBSATA\fR controller.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.sp .6
-.RS 4n
-Execute in verbose mode.
-.sp
-The following Transitions table reports the state transitions resulting from
-the \fB-c\fR operations and hotplugging actions:
-.sp
-.in +2
-.nf
-current state operation possible new state
-------------- --------- ------------------
-empty/
-unconfigured/ok device plug-in connected/unconfigured/ok, or
- disconnected/unconfigured/ok, or
- disconnected/unconfigured/failed
-
-empty/
-unconfigured/ok -c unconfigure error message, no state change
-
-empty/
-unconfigured/ok -c configure error message, no state change
-
-empty/
-unconfigured/ok -c connect error message, no state change
-
-empty/
-unconfigured/ok -c disconnect disconnected/unconfigured/unknown, or
- disconnected/unconfigured/failed
-
-disconnected/
-unconfigured/ok device unplug no state change
-
-disconnected/
-unconfigured/ok -c unconfigure error message, no state change
-
-disconnected/
-unconfigured/ok -c configure error message, no state change
-
-disconnected/
-unconfigured/ok -c connect error message, no state change
-
-disconnected/
-unconfigured/ok -c disconnect error message, no state change
-
-disconnected/
-unconfigured/
-unknown
-(no disk plugged) -c configure error message, state change to
- empty/unconfigured/ok, or
- disconnected/unconfigured/failed
-
-disconnected/
-unconfigured/
-unknown -c configure state change to
-(disk plugged) connected/configured/ok or,
- connected/unconfigured/ok, or
- disconnected/unconfigured/failed and
- possible error message
-
-disconnected/
-unconfigured/
-unknown -c connect empty/unconfigured/ok, or
- connected/unconfigured/ok, or
- disconnected/unconfigured/ok, or
- disconnected/unconfigured/unknown, or
- disconnected/unconfigured/failed
-
-disconnected/
-unconfigured/
-unknown -c disconnect error message, no state change
-
-disconnected/
-unconfigured/
-failed any command error message, no state change
- other than
- -x commands
-
-connected/
-unconfigured/ok disk unplug error message and state:
- empty/unconfigured/ok, or
- disconnected/unconfigured/failed
-
-connected/
-unconfigured/ok -c configure connected/unconfigured/ok, or
- connected/configured/ok, or
- disconnected/unconfigured/ok, or
- disconnected/unconfigured/failed
-
-connected/
-unconfigured/ok -c unconfigure error message, no state change
-
-connected/
-unconfigured/ok -c connect error message, no state change
-
-connected/
-unconfigured/ok -c disconnect disconnected/unconfigured/unknown, or
- disconnected/unconfigured/failed
-
-connected/
-configured/ok disk unplug error message and state:
- empty/unconfigured/ok, or
- disconnected/unconfigured/failed
-
-connected/
-configured/ok -c configure error message, no state change
-
-connected/
-configured/ok -c unconfigure error message, if device cannot be
- unconfigured, no state change, or
- connected/unconfigured/ok, or
- disconnected/unconfigured/ok, or
- disconnected/unconfigured/failed
-
-connected/
-configured/ok -c connect error message, no state change
-
-connected/
-configured/ok -c disconnect error message, if device cannot be
- unconfigured, no state change, or
- disconnected/unconfigured/unknown, or
- disconnected/unconfigured/failed
-.fi
-.in -2
-.sp
-
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRConfiguring a Disk
-.sp
-.LP
-The following command configures a disk attached to \fBSATA\fR controller 0,
-port 0:
-
-.sp
-.in +2
-.nf
-example# \fBcfgadm -c configure sata0/0\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-This command should be issued only when there is a device connected to the
-\fBSATA\fR port.
-
-.LP
-\fBExample 2 \fRUnconfiguring a Disk
-.sp
-.LP
-The following command unconfigures a disk attached to \fBSATA\fR controller 0,
-port 3:
-
-.sp
-.in +2
-.nf
-example# \fBcfgadm -c unconfigure sata0/3::dsk/c0t3d0\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The device identifying string is shown when the attachment point receptacle
-state is "connected" and occupant state is "configured".
-
-.LP
-\fBExample 3 \fREncountering a Mounted File System While Unconfiguring a Disk
-.sp
-.LP
-The following command illustrates encountering a mounted file system while
-unconfiguring a disk:
-
-.sp
-.in +2
-.nf
-example# \fBcfgadm -c unconfigure sata1/5::dsk/c01t35d0\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The system responds with the following:
-
-.sp
-.in +2
-.nf
-cfgadm: Component system is busy, try again: failed to offline:
-/devices/pci@0,0/pci8086,244e@1e/pci1095,3124@1/sd@5,0
- Resource Information
------------------- --------------------------
-/dev/dsk/c1t5d0s0 mounted filesystem "/mnt"
-.fi
-.in -2
-.sp
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB/usr/lib/cfgadm/sata.so.1\fR
-.ad
-.RS 29n
-Hardware specific library for generic \fBSATA\fR hot plugging.
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBcfgadm\fR(1M), \fBconfig_admin\fR(3CFGADM), \fBlibcfgadm\fR(3LIB),
-\fBattributes\fR(5)
-.SH NOTES
-.sp
-.LP
-The emergency "sata_port_deactivate" operation is not supported on ports with
-attached disks containing critical partitions such as root (/), /usr, swap, or
-/var. The deactivate operation should not be attempted on such ports. Incorrect
-usage can result in a system hang and require a reboot.
-.sp
-.LP
-Hotplugging operations are not supported by all \fBSATA\fR controllers.
-.sp
-.LP
-If \fBSATA\fR connectors are the hot-pluggable type and the \fBSATA\fR
-controller supports hotplugging, a \fBSATA\fR device can be hotplugged at any
-time. The system detects the event and establishes the communication with the
-device. The device has to be configured by the explicit "\fBcfgadm -c configure
-ap_id\fR" command.
-.sp
-.LP
-If the \fBSATA\fR connectors are the hot-pluggable type and the \fBSATA\fR
-controller supports hotplugging, unplugging a device without unconfiguring it
-may result in system hang or data loss. If a device is unconfigured but
-receptacle state is not in a disconnected state, unplugging a device from the
-\fBSATA\fR port will result in error message.
-.SH WARNINGS
-.sp
-.LP
-The connectors on some \fBSATA\fR devices do not conform to \fBSATA\fR hotplug
-specifications. Performing hotplug operations on such devices can cause damage
-to the \fBSATA\fR controller and/or the \fBSATA\fR device.
diff --git a/usr/src/man/man1m/cfgadm_sbd.1m b/usr/src/man/man1m/cfgadm_sbd.1m
deleted file mode 100644
index 3abd85cd38..0000000000
--- a/usr/src/man/man1m/cfgadm_sbd.1m
+++ /dev/null
@@ -1,1324 +0,0 @@
-'\" te
-.\" Copyright 2003 (c), Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH CFGADM_SBD 1M "Oct 13, 2003"
-.SH NAME
-cfgadm_sbd \- \fBcfgadm\fR commands for system board administration
-.SH SYNOPSIS
-.LP
-.nf
-\fBcfgadm \fR \fB-l\fR [\fB-a\fR] [\fB-o\fR parsable] \fI ap_id\fR...
-.fi
-
-.LP
-.nf
-\fBcfgadm \fR \fB-c \fR \fIfunction\fR [\fB-f\fR] [\fB-y\fR | \fB-n\fR]
- [\fB-o\fR unassign | nopoweroff] [\fB-v\fR] \fI ap_id\fR...
-.fi
-
-.LP
-.nf
-\fBcfgadm \fR \fB-t\fR [\fB-v\fR] \fI ap_id\fR...
-.fi
-
-.LP
-.nf
-\fBcfgadm \fR \fB-x \fR [\fB-f\fR] [\fB-v\fR] \fIfunction\fR \fI ap_id\fR...
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBcfgadm_sbd\fR plugin provides dynamic reconfiguration functionality for
-connecting, configuring, unconfiguring, and disconnecting class \fBsbd\fR
-system boards. It also enables you to connect or disconnect a system board from
-a running system without having to reboot the system.
-.sp
-.LP
-The \fBcfgadm\fR command resides in \fB/usr/sbin\fR. See \fBcfgadm\fR(1M). The
-\fBcfgadm_sbd\fR plugin resides \fB/usr/platform/sun4u/lib/cfgadm\fR.
-.sp
-.LP
-Each board slot appears as a single attachment point in the device tree. Each
-component appears as a dynamic attachment point. You can view the type, state,
-and condition of each component, and the states and condition of each board
-slot by using the \fB-a\fR option.
-.sp
-.LP
-The \fBcfgadm\fR options perform differently depending on the platform.
-Additionally, the form of the attachment points is different depending on the
-platform. See the \fBPlatform Notes\fR section for more information.
-.SS "Component Conditions"
-.sp
-.LP
-The following are the names and descriptions of the component conditions:
-.sp
-.ne 2
-.na
-\fBfailed\fR
-.ad
-.RS 11n
-The component failed testing.
-.RE
-
-.sp
-.ne 2
-.na
-\fBok\fR
-.ad
-.RS 11n
-The component is operational.
-.RE
-
-.sp
-.ne 2
-.na
-\fBunknown\fR
-.ad
-.RS 11n
-The component has not been tested.
-.RE
-
-.SS "Component States"
-.sp
-.LP
-The following is the name and description of the receptacle state for
-components:
-.sp
-.ne 2
-.na
-\fBconnected\fR
-.ad
-.RS 13n
-The component is connected to the board slot.
-.RE
-
-.sp
-.LP
-The following are the names and descriptions of the occupant states for
-components:
-.sp
-.ne 2
-.na
-\fBconfigured\fR
-.ad
-.RS 16n
-The component is available for use by the Solaris operating environment.
-.RE
-
-.sp
-.ne 2
-.na
-\fBunconfigured\fR
-.ad
-.RS 16n
-The component is not available for use by the Solaris operating environment.
-.RE
-
-.SS "Board Conditions"
-.sp
-.LP
-The following are the names and descriptions of the board conditions.
-.sp
-.ne 2
-.na
-\fBfailed\fR
-.ad
-.RS 12n
-The board failed testing.
-.RE
-
-.sp
-.ne 2
-.na
-\fBok\fR
-.ad
-.RS 12n
-The board is operational.
-.RE
-
-.sp
-.ne 2
-.na
-\fBunknown\fR
-.ad
-.RS 12n
-The board has not been tested.
-.RE
-
-.sp
-.ne 2
-.na
-\fBunusable\fR
-.ad
-.RS 12n
-The board slot is unusable.
-.RE
-
-.SS "Board States"
-.sp
-.LP
-Inserting a board changes the receptacle state from empty to disconnected.
-Removing a board changes the receptacle state from disconnected to empty.
-.sp
-.LP
-\fBCaution:\fR Removing a board that is in the connected state or that is
-powered on and in the disconnected state crashes the operating system and can
-result in permanent damage to the system.
-.sp
-.LP
-The following are the names and descriptions of the receptacle states for
-boards:
-.sp
-.ne 2
-.na
-\fBconnected\fR
-.ad
-.RS 16n
-The board is powered on and connected to the system bus. You can view the
-components on a board only after it is in the connected state.
-.RE
-
-.sp
-.ne 2
-.na
-\fBdisconnected\fR
-.ad
-.RS 16n
-The board is disconnected from the system bus. A board can be in the
-disconnected state without being powered off. However, a board must be powered
-off and in the disconnected state before you remove it from the slot.
-.RE
-
-.sp
-.ne 2
-.na
-\fBempty\fR
-.ad
-.RS 16n
-A board is not present.
-.RE
-
-.sp
-.LP
-The occupant state of a disconnected board is always unconfigured. The
-following table contains the names and descriptions of the occupant states for
-boards:
-.sp
-.ne 2
-.na
-\fBconfigured\fR
-.ad
-.RS 16n
-At least one component on the board is configured.
-.RE
-
-.sp
-.ne 2
-.na
-\fBunconfigured\fR
-.ad
-.RS 16n
-All of the components on the board are unconfigured.
-.RE
-
-.SS "Dynamic System Domains"
-.sp
-.LP
-Platforms based on dynamic system domains (DSDs, referred to as domains in this
-document) divide the slots in the chassis into electrically isolated hardware
-partitions (that is, DSDs). Platforms that are not based on DSDs assign all
-slots to the system permanently.
-.sp
-.LP
-A slot can be empty or populated, and it can be assigned or available to any
-number of domains. The number of slots available to a given domain is
-controlled by an available component list (\fBACL\fR) that is maintained on the
-system controller. The \fBACL\fR is not the access control list provided by the
-Solaris operating environment.
-.sp
-.LP
-A slot is visible to a domain only if the slot is in the domain's \fBACL\fR and
-if it is not assigned to another domain. An unassigned slot is visible to all
-domains that have the slot in their \fBACL\fR. After a slot has been assigned
-to a domain, the slot is no longer visible to any other domain.
-.sp
-.LP
-A slot that is visible to a domain, but not assigned, must first be assigned to
-the domain before any other state changing commands are applied. The assign can
-be done explicitly using \fB\fR\fB-x\fR\fB assign\fR or implicitly as part of a
-connect. A slot must be unassigned from a domain before it can be used by
-another domain. The unassign is always explicit, either directly using
-\fB\fR\fB-x\fR\fB unassign\fR or as an option to disconnect using
-\fB\fR\fB-o\fR\fB unassign\fR.
-.SS "State Change Functions"
-.sp
-.LP
-Functions that change the state of a board slot or a component on the board can
-be issued concurrently against any attachment point. Only one state changing
-operation is permitted at a given time. A \fBY\fR in the Busy field in the
-state changing information indicates an operation is in progress.
-.sp
-.LP
-The following list contains the functions that change the state:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-configure
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-unconfigure
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-connect
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-disconnect
-.RE
-.SS "Availability Change Functions"
-.sp
-.LP
-Commands that change the availability of a board can be issued concurrently
-against any attachment point. Only one availability change operation is
-permitted at a given time. These functions also change the information string
-in the \fBcfgadm\fR \fB-l\fR output. A \fBY\fR in the Busy field indicates that
-an operation is in progress.
-.sp
-.LP
-The following list contains the functions that change the availability:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBassign\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBunassign\fR
-.RE
-.SS "Condition Change Functions"
-.sp
-.LP
-Functions that change the condition of a board slot or a component on the board
-can be issued concurrently against any attachment point. Only one condition
-change operation is permitted at a given time. These functions also change the
-information string in the \fBcfgadm\fR \fB-l\fR output. A \fBY\fR in the Busy
-field indicates an operation is in progress.
-.sp
-.LP
-The following list contains the functions that change the condition:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBpoweron\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBpoweroff\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBtest\fR
-.RE
-.SS "Unconfigure Process"
-.sp
-.LP
-This section contains a description of the unconfigure process, and illustrates
-the states of source and target boards at different stages during the process
-of moving permanent memory.
-.sp
-.LP
-In the following code examples, the permanent memory on board 0 must be moved
-to another board in the domain. Thus, board 0 is the source, and board 1 is the
-target.
-.sp
-.LP
-A status change operation cannot be initiated on a board while it is marked as
-busy. For brevity, the \fBCPU\fR information has been removed from the code
-examples.
-.sp
-.LP
-The process is started with the following command:
-.sp
-.in +2
-.nf
-# \fBcfgadm -c unconfigure -y SB0::memory &\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-First, the memory on board 1 in the same address range as the permanent memory
-on board 0 must be deleted. During this phase, the source board, the target
-board, and the memory attachment points are marked as busy. You can display the
-status with the following command:
-.sp
-.in +2
-.nf
-# \fBcfgadm -a -s cols=ap_id:type:r_state:o_state:busy SB0 SB1\fR
-
-Ap_Id Type Receptacle Occupant Busy
-SB0 CPU connected configured y
-SB0::memory memory connected configured y
-SB1 CPU connected configured y
-SB1::memory memory connected configured y
-
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-After the memory has been deleted on board 1, it is marked as unconfigured. The
-memory on board 0 remains configured, but it is still marked as busy, as in the
-following example.
-.sp
-.in +2
-.nf
-Ap_Id Type Receptacle Occupant Busy
-SB0 CPU connected configured y
-SB0::memory memory connected configured y
-SB1 CPU connected configured y
-SB1::memory memory connected unconfigured n
-
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The memory from board 0 is then copied to board 1. After it has been copied,
-the occupant state for the memory is switched. The memory on board 0 becomes
-unconfigured, and the memory on board 1 becomes configured. At this point in
-the process, only board 0 remains busy, as in the following example.
-.sp
-.in +2
-.nf
-Ap_Id Type Receptacle Occupant Busy
-SB0 CPU connected configured y
-SB0::memory memory connected unconfigured n
-SB1 CPU connected configured n
-SB1::memory memory connected configured n
-
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-After the entire process has been completed, the memory on board 0 remains
-unconfigured, and the attachment points are not busy, as in the following
-example.
-.sp
-.in +2
-.nf
-Ap_Id Type Receptacle Occupant Busy
-SB0 CPU connected configured n
-SB0::memory memory connected unconfigured n
-SB1 CPU connected configured n
-SB1::memory memory connected configured n
-
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The permanent memory has been moved, and the memory on board 0 has been
-unconfigured. At this point, you can initiate a new state changing operation on
-either board.
-.SS "Platform-Specific Options"
-.sp
-.LP
-You can specify platform-specific options that follow the options interpreted
-by the system board plugin. All platform-specific options must be preceded by
-the \fBplatform\fR keyword. The following example contains the general format
-of a command with platform-specific options:
-.sp
-.LP
-\fB\fIcommand\fR -o \fIsbd_options\fR,platform=\fIplatform_options\fR\fR
-.SH OPTIONS
-.sp
-.LP
-This man page does not include the \fB-v\fR, \fB-a\fR, \fB-s\fR, or \fB-h\fR
-options for the \fBcfgadm\fR command. See \fBcfgadm\fR(1M) for descriptions of
-those options. The following options are supported by the \fBcfgadm_sbd\fR
-plugin:
-.sp
-.ne 2
-.na
-\fB\fB-c \fR\fIfunction\fR\fR
-.ad
-.RS 15n
-Performs a state change function. You can use the following functions:
-.sp
-.ne 2
-.na
-\fBunconfigure\fR
-.ad
-.RS 15n
-Changes the occupant state to unconfigured. This function applies to system
-board slots and to all of the components on the system board.
-.sp
-The \fBunconfigure\fR function removes the \fBCPU\fRs from the \fBCPU\fR list
-and deletes the physical memory from the system memory pool. If any device is
-still in use, the \fBcfgadm\fR command fails and reports the failure to the
-user. You can retry the command as soon as the device is no longer busy. If a
-\fBCPU\fR is in use, you must ensure that it is off line before you proceed.
-See \fBpbind\fR(1M), \fBpsradm\fR(1M) and \fBpsrinfo\fR(1M).
-.sp
-The \fBunconfigure\fR function moves the physical memory to another system
-board before it deletes the memory from the board you want to unconfigure.
-Depending of the type of memory being moved, the command fails if it cannot
-find enough memory on another board or if it cannot find an appropriate
-physical memory range.
-.sp
-For permanent memory, the operating system must be suspended (that is,
-quiesced) while the memory is moved and the memory controllers are
-reprogrammed. If the operating system must be suspended, you will be prompted
-to proceed with the operation. You can use the \fB-y\fR or \fB-n\fR options to
-always answer yes or no respectively.
-.sp
-Moving memory can take several minutes to complete, depending on the amount of
-memory and the system load. You can monitor the progress of the operation by
-issuing a status command against the memory attachment point. You can also
-interrupt the memory operation by stopping the \fBcfgadm\fR command. The
-deleted memory is returned to the system memory pool.
-.RE
-
-.sp
-.ne 2
-.na
-\fBdisconnect\fR
-.ad
-.RS 15n
-Changes the receptacle state to disconnected. This function applies only to
-system board slots.
-.sp
-If the occupant state is configured, the \fBdisconnect\fR function attempts to
-unconfigure the occupant. It then powers off the system board. At this point,
-the board can be removed from the slot.
-.sp
-This function leaves the board in the assigned state on platforms that support
-dynamic system domains.
-.sp
-If you specify \fB-o nopoweroff\fR, the \fBdisconnect\fR function leaves the
-board powered on. If you specify \fB-o unassign\fR, the \fBdisconnect\fR
-function unassigns the board from the domain.
-.sp
-If you unassign a board from a domain, you can assign it to another domain.
-However, if it is assigned to another domain, it is not available to the domain
-from which is was unassigned.
-.RE
-
-.sp
-.ne 2
-.na
-\fBconfigure\fR
-.ad
-.RS 15n
-Changes the occupant state to configured. This function applies to system board
-slots and to any components on the system board.
-.sp
-If the receptacle state is disconnected, the \fBconfigure\fR function attempts
-to connect the receptacle. It then walks the tree of devices that is created by
-the \fBconnect\fR function, and attaches the devices if necessary. Running this
-function configures all of the components on the board, except those that have
-already been configured.
-.sp
-For \fBCPU\fRs, the \fBconfigure\fR function adds the \fBCPU\fRs to the
-\fBCPU\fR list. For memory, the \fBconfigure\fR function ensures that the
-memory is initialized then adds the memory to the system memory pool. The
-\fBCPU\fRs and the memory are ready for use after the \fBconfigure\fR function
-has been completed successfully.
-.sp
-For I/O devices, you must use the \fBmount\fR and the \fBifconfig\fR commands
-before the devices can be used. See \fBifconfig\fR(1M) and \fBmount\fR(1M).
-.RE
-
-.sp
-.ne 2
-.na
-\fBconnect\fR
-.ad
-.RS 15n
-Changes the receptacle state to connected. This function applies only to system
-board slots.
-.sp
-If the board slot is not assigned to the domain, the \fBconnect\fR function
-attempts to assign the slot to the domain. Next, it powers on and tests the
-board, then it connects the board electronically to the system bus and probes
-the components.
-.sp
-After the \fBconnect\fR function is completed successfully, you can use the
-\fB-a\fR option to view the status of the components on the board. The
-\fBconnect\fR function leaves all of the components in the unconfigured state.
-.sp
-The assignment step applies only to platforms that support dynamic system
-domains.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR\fR
-.ad
-.RS 15n
-Overrides software state changing constraints.
-.sp
-The \fB-f\fR option never overrides fundamental safety and availability
-constraints of the hardware and operating system.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR\fR
-.ad
-.RS 15n
-Lists the state and condition of attachment points specified in the format
-controlled by the \fB-s\fR, \fB-v\fR, and \fB-a\fR options as specified in
-\fBcfgadm\fR(1M). The \fBcfgadm_sbd\fR plugin provides specific information in
-the info field as described below. The format of this information might be
-altered by the \fB\fR\fB-o\fR\fB parsable\fR option.
-.sp
-The parsable \fBinfo\fR field is composed of the following:
-.sp
-.ne 2
-.na
-\fBcpu\fR
-.ad
-.RS 10n
-The \fBcpu\fR type displays the following information:
-.sp
-.ne 2
-.na
-\fB\fBcpuid=\fR\fI#\fR\fB[,\fR\fI#\fR\fB\&.\|.\|.]\fR\fR
-.ad
-.RS 24n
-Where \fI#\fR is a number, and represents the \fBID\fR of the \fBCPU\fR. If
-more than one \fI#\fR is present, this \fBCPU\fR has multiple active virtual
-processors.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBspeed=\fR\fI#\fR\fR
-.ad
-.RS 24n
-Where \fI#\fR is a number and represents the speed of the \fBCPU\fR in
-\fBMHz\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBecache=\fR\fI#\fR\fR
-.ad
-.RS 24n
-Where \fI#\fR is a number and represents the size of the ecache in MBytes. If
-the \fBCPU\fR has multiple active virtual processors, the ecache could either
-be shared among the virtual processors, or divided between them.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fBmemory\fR
-.ad
-.RS 10n
-The \fBmemory\fR type displays the following information, as appropriate:
-.sp
-.ne 2
-.na
-\fBaddress=\fI#\fR\fR
-.ad
-.RS 26n
-Where \fI#\fR is a number, representing the base physical address.
-.RE
-
-.sp
-.ne 2
-.na
-\fBsize=\fI#\fR\fR
-.ad
-.RS 26n
-Where \fI#\fR is a number, representing the size of the memory in \fBKBytes\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBpermanent=\fI#\fR\fR
-.ad
-.RS 26n
-Where \fI#\fR is a number, representing the size of permanent memory in
-\fBKBytes\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBunconfigurable\fR
-.ad
-.RS 26n
-An operating system setting that prevents the memory from being unconfigured.
-.RE
-
-.sp
-.ne 2
-.na
-\fBinter-board-interleave\fR
-.ad
-.RS 26n
-The board is participating in interleaving with other boards.
-.RE
-
-.sp
-.ne 2
-.na
-\fBsource=\fIap_id\fR\fR
-.ad
-.RS 26n
-Represents the source attachment point.
-.RE
-
-.sp
-.ne 2
-.na
-\fBtarget=\fIap_id\fR\fR
-.ad
-.RS 26n
-Represents the target attachment point.
-.RE
-
-.sp
-.ne 2
-.na
-\fBdeleted=\fI#\fR\fR
-.ad
-.RS 26n
-Where \fI#\fR is a number, representing the amount of memory that has already
-been deleted in \fBKBytes\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBremaining=\fI#\fR\fR
-.ad
-.RS 26n
-Where \fI#\fR is a number, representing the amount of memory to be deleted in
-\fBKBytes\fR.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fBio\fR
-.ad
-.RS 10n
-The \fBio\fR type displays the following information:
-.sp
-.ne 2
-.na
-\fBdevice=\fIpath\fR\fR
-.ad
-.RS 15n
-Represents the physical path to the I/O component.
-.RE
-
-.sp
-.ne 2
-.na
-\fBreferenced\fR
-.ad
-.RS 15n
-The I/O component is referenced.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fBboard\fR
-.ad
-.RS 10n
-The \fBboard\fR type displays the following boolean names. If they are not
-present, then the opposite applies.
-.sp
-.ne 2
-.na
-\fBassigned\fR
-.ad
-.RS 14n
-The board is assigned to the domain.
-.RE
-
-.sp
-.ne 2
-.na
-\fBpowered-on\fR
-.ad
-.RS 14n
-The board is powered on.
-.RE
-
-The same items appear in the \fBinfo\fR field in a more readable format if the
-\fB-o\fR \fBparsable\fR option is not specified.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-o\fR parsable\fR
-.ad
-.RS 15n
-Returns the information in the \fBinfo\fR field as a boolean \fIname\fR or a
-set of \fBname=value\fR pairs, separated by a space character.
-.sp
-The \fB-o parsable\fR option can be used in conjunction with the \fB-s\fR
-option. See the \fBcfgadm\fR(1M) man page for more information about the
-\fB-s\fR option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-t\fR\fR
-.ad
-.RS 15n
-Tests the board.
-.sp
-Before a board can be connected, it must pass the appropriate level of testing.
-.sp
-Use of this option always attempts to test the board, even if it has already
-passed the appropriate level of testing. Testing is also performed when a
-\fB\fR\fB-c\fR\fB connect\fR state change function is issued, in which case the
-test step can be skipped if the board already shows an appropriate level of
-testing. Thus the \fB-t\fR option can be used to explicitly request that the
-board be tested.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-x\fR\fI function\fR\fR
-.ad
-.RS 15n
-Performs an sbd-class function. You can use the following functions:
-.sp
-.ne 2
-.na
-\fBassign\fR
-.ad
-.RS 12n
-Assigns a board to a domain.
-.sp
-The receptacle state must be disconnected or empty. The board must also be
-listed in the domain available component list. See Dynamic System Domains.
-.RE
-
-.sp
-.ne 2
-.na
-\fBunassign\fR
-.ad
-.RS 12n
-Unassigns a board from a domain.
-.sp
-The receptacle state must be disconnected or empty. The board must also be
-listed in the domain available component list. See Dynamic System Domains.
-.RE
-
-.sp
-.ne 2
-.na
-\fBpoweron\fR
-.ad
-.RS 12n
-Powers the system board on.
-.sp
-The receptacle state must be disconnected.
-.RE
-
-.sp
-.ne 2
-.na
-\fBpoweroff\fR
-.ad
-.RS 12n
-Powers the system board off.
-.sp
-The receptacle state must be disconnected.
-.RE
-
-.RE
-
-.SH OPERANDS
-.sp
-.LP
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fBReceptacle \fIap_id\fR\fR
-.ad
-.RS 20n
-For the Sun Fire high-end systems such as the Sun Fire 15K , the receptacle
-attachment point \fBID\fR takes the form \fBSB\fIX\fR\fR or \fBIO\fIX\fR\fR,
-where \fIX\fR equals the slot number.
-.sp
-The exact format depends on the platform and typically corresponds to the
-physical labelling on the machine. See the platform specific information in the
-\fBNOTES\fR section.
-.RE
-
-.sp
-.ne 2
-.na
-\fBComponent \fIap_id\fR\fR
-.ad
-.RS 20n
-The component attachment point \fBID\fR takes the form \fIcomponent_typeX\fR,
-where \fIcomponent_type\fR equals one of the component types described in
-"Component Types" and \fIX\fR equals the component number. The component number
-is a board-relative unit number.
-.sp
-The above convention does not apply to memory compontents. Any DR action on a
-memory attachment point affects all of the memory on the system board.
-.RE
-
-.SH EXAMPLES
-.sp
-.LP
-The following examples show user input and system output on a Sun Fire 15K
-system. User input, specifically references to attachment points and system
-output might differ on other Sun Fire systems, such as the Sun Fire midrange
-systems such as the 6800. Refer to the Platform Notes for specific information
-about using the \fBcfgadm_sbd\fR plugin on non-Sun Fire high-end models.
-.LP
-\fBExample 1 \fRListing All of the System Board
-.sp
-.in +2
-.nf
-# \fBcfgadm -a -s "select=class(sbd)"\fR
-
-Ap_Id Type Receptacle Occupant Condition
-SB0 CPU connected configured ok
-SB0::cpu0 cpu connected configured ok
-SB0::memory memory connected configured ok
-IO1 HPCI connected configured ok
-IO1::pci0 io connected configured ok
-IO1::pci1 io connected configured ok
-SB2 CPU disconnected unconfigured failed
-SB3 CPU disconnected unconfigured unusable
-SB4 unknown empty unconfigured unknown
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-This example demonstrates the mapping of the following conditions:
-
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The board in Slot 2 failed testing.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Slot 3 is unusable; thus, you cannot hot plug a board into that slot.
-.RE
-.LP
-\fBExample 2 \fRListing All of the \fBCPU\fRs on the System Board
-.sp
-.in +2
-.nf
-# \fBcfgadm -a -s "select=class(sbd):type(cpu)"\fR
-
-Ap_Id Type Receptacle Occupant Condition
-SB0::cpu0 cpu connected configured ok
-SB0::cpu1 cpu connected configured ok
-SB0::cpu2 cpu connected configured ok
-SB0::cpu3 cpu connected configured ok
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRDisplaying the \fBCPU\fR Information Field
-.sp
-.in +2
-.nf
-# \fBcfgadm -l -s noheadings,cols=info SB0::cpu0\fR
-
-cpuid 16, speed 400 MHz, ecache 8 Mbytes
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 4 \fRDisplaying the \fBCPU\fR Information Field in Parsable Format
-.sp
-.in +2
-.nf
-# \fBcfgadm -l -s noheadings,cols=info -o parsable SB0::cpu0\fR
-
-cpuid=16 speed=400 ecache=8
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 5 \fRDisplaying the Devices on an I/O Board
-.sp
-.in +2
-.nf
-# \fBcfgadm -a -s noheadings,cols=ap_id:info -o parsable IO1\fR
-
-IO1 powered-on assigned
-IO1::pci0 device=/devices/saf@0/pci@0,2000 referenced
-IO1::pci1 device=/devices/saf@0/pci@1,2000 referenced
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 6 \fRMonitoring an Unconfigure Operation
-.sp
-.LP
-In the following example, the memory sizes are displayed in Kbytes.
-
-.sp
-.in +2
-.nf
-# \fBcfgadm -c unconfigure -y SB0::memory &\fR
-# \fBcfgadm -l -s noheadings,cols=info -o parsable SB0::memory SB1::memory\fR
-
-address=0x0 size=2097152 permanent=752592 target=SB1::memory
- deleted=1273680 remaining=823472
-address=0x1000000 size=2097152 source=SB0::memory
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 7 \fRAssigning a Slot to a Domain
-.sp
-.in +2
-.nf
-# \fBcfgadm -x assign SB2\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 8 \fRUnassigning a Slot from a Domain
-.sp
-.in +2
-.nf
-# \fBcfgadm -x unassign SB3\fR
-.fi
-.in -2
-.sp
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for a description of the following attribute:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Stability See below.
-.TE
-
-.sp
-.LP
-The interface stability is evolving. The output stability is unstable.
-.SH SEE ALSO
-.sp
-.LP
-\fBcfgadm\fR(1M), \fBdevfsadm\fR(1M), \fBifconfig\fR(1M), \fBmount\fR(1M),
-\fBpbind\fR(1M), \fBpsradm\fR(1M), \fBpsrinfo\fR(1M),
-\fBconfig_admin\fR(3CFGADM), \fBattributes\fR(5)
-.SH NOTES
-.sp
-.LP
-This section contains information on how to monitor the progress of a memory
-delete operation. It also contains platform specific information.
-.SS "Memory Delete Monitoring"
-.sp
-.LP
-The following shell script can be used to monitor the progress of a memory
-delete operation.
-.sp
-.in +2
-.nf
-# \fBcfgadm -c unconfigure -y SB0::memory &\fR
-# \fBwatch_memdel SB0\fR
-
-#!/bin/sh
-# This is the watch_memdel script.
-
-if [ -z "$1" ]; then
- printf "usage: %s board_id\en" `basename $0`
- exit 1
-fi
-
-board_id=$1
-
-cfgadm_info='cfgadm -s noheadings,cols=info -o parsable'
-
-eval `$cfgadm_info $board_id::memory`
-
-if [ -z "$remaining" ]; then
- echo no memory delete in progress involving $board_id
- exit 0
-fi
-
-echo deleting target $target
-
-while true
-do
- eval `$cfgadm_info $board_id::memory`
-
- if [ -n "$remaining" -a "$remaining" -ne 0 ]
- then
- echo $deleted KBytes deleted, $remaining KBytes remaining
- remaining=
- else
- echo memory delete is done
- exit 0
- fi
- sleep 1
-done
-exit 0
-.fi
-.in -2
-.sp
-
-.SS "Sun Enterprise 10000 Platform Notes"
-.sp
-.LP
-The following syntax is used to refer to Platform Notes attachment points on
-the Sun Enterprise 10000 system:
-.sp
-.in +2
-.nf
-\fIboard\fR::\fIcomponent\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
- where \fIboard\fR refers to the system board; and \fIcomponent\fR refers to
-the individual component. System boards can range from \fBSB0\fR (zero) to
-\fBSB15\fR. A maximum of sixteen system boards are available.
-.sp
-.LP
-The DR 3.0 model running on a Sun Enterprise 10000 domain supports a limited
-subset of the functionality provided by the \fBcfgadm_sbd\fR plugin. The only
-supported operation is to view the status of attachment points in the domain.
-This corresponds to the \fB-l\fR option and all of its associated options.
-.sp
-.LP
-Attempting to perform any other operation from the domain will result in an
-error that states that the operation is not supported. All operations to add or
-remove a system board must be initiated from the System Service Processor.
-.SS "Sun Fire High-End System Platform Notes"
-.sp
-.LP
-The following syntax is used to refer to attachment points on the Sun Fire
-high-end systems:
-.sp
-.in +2
-.nf
-\fIboard\fR::\fIcomponent\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-where \fIboard\fR refers to the system board or I/O board; and \fIcomponent\fR
-refers to the individual component.
-.sp
-.LP
-Depending on the system's configuration, system boards can range from \fBSB0\fR
-(zero) through \fBSB17\fR, and I/O boards can range from \fBIO0\fR (IO zero)
-through \fBIO17\fR. (A maximum of eighteen system and I/O boards are
-available).
-.sp
-.LP
-The \fB-t\fR and \fB-x\fR options behave differently on the Sun Fire high-end
-system platforms. The following list describes their behavior:
-.sp
-.ne 2
-.na
-\fB\fB-t\fR\fR
-.ad
-.RS 24n
-The system controller uses a CPU to test system boards by running \fBLPOST\fR,
-sequenced by the \fBhpost\fR command. To test I/O boards, the driver starts the
-testing in response to the \fB-t\fR option, and the test runs automatically
-without user intervention. The driver unconfigures a CPU and a stretch of
-contiguous physical memory. Then, it sends a command to the system controller
-to test the board. The system controller uses the CPU and memory to test the
-I/O board from inside of a transaction/error cage. You can only use CPUs from
-system boards (not MCPU boards) to test I/O boards.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-x\fR \fBassign | unassign\fR\fR
-.ad
-.RS 24n
-In the Sun Fire high-end system administration model, the platform
-administrator controls the platform hardware through the use of an available
-component list for each domain. This information is maintained on the system
-controller. Only the platform administrator can modify the available component
-list for a domain.
-.sp
-The domain administrator is only allowed to assign or unassign a board if it is
-in the available component list for that domain. The platform administrator
-does not have this restriction, and can assign or unassign a board even if it
-is not in the available component list for a domain.
-.RE
-
-.SS "Sun Fire 15K Component Types"
-.sp
-.LP
-The following are the names and descriptions of the component types:
-.sp
-.ne 2
-.na
-\fB\fBcpu\fR\fR
-.ad
-.RS 10n
-\fBCPU\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBio\fR\fR
-.ad
-.RS 10n
-\fBI/O\fR device
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmemory\fR\fR
-.ad
-.RS 10n
-Memory
-.RE
-
-.sp
-.LP
-\fBNote:\fR An operation on a memory component affects all of the memory
-components on the board.
-.SS "Sun Fire Midrange Systems Platform Notes"
-.sp
-.LP
-References to attachment points are slightly different on Sun Fire midrange
-servers such as the 6800, 4810, 4800, and 3800 systems than on the Sun Fire
-high-end systems. The following syntax is used to refer to attachment points on
-Sun Fire systems other than the Sun Fire 15K:
-.sp
-.in +2
-.nf
-N#.\fIboard\fR::\fIcomponent\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-where \fBN#\fR refers to the node; \fIboard\fR refers to the system board or
-I/O board; and \fIcomponent\fR refers to the individual component.
-.sp
-.LP
-Depending on the system's configuration, system boards can range from \fBSB0\fR
-through \fBSB5\fR, and I/O boards can range from \fBIB6\fR through \fBIB9\fR.
-(A maximum of six system and four I/O boards are available).
-.SS "Sun Fire Midrange System Component Types"
-.sp
-.LP
-The following are the names and descriptions of the component types:
-.sp
-.ne 2
-.na
-\fB\fBcpu\fR\fR
-.ad
-.RS 10n
-\fBCPU\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpci\fR\fR
-.ad
-.RS 10n
-\fBI/O\fR device
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmemory\fR\fR
-.ad
-.RS 10n
-Memory
-.RE
-
-.sp
-.LP
-\fBNote:\fR An operation on a memory component affects all of the memory
-components on the board.
diff --git a/usr/src/man/man1m/cfgadm_scsi.1m b/usr/src/man/man1m/cfgadm_scsi.1m
deleted file mode 100644
index d4781ea505..0000000000
--- a/usr/src/man/man1m/cfgadm_scsi.1m
+++ /dev/null
@@ -1,744 +0,0 @@
-'\" te
-.\" Copyright (c) 2003 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH CFGADM_SCSI 1M "Jun 6, 2006"
-.SH NAME
-cfgadm_scsi \- SCSI hardware specific commands for cfgadm
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/cfgadm\fR [\fB-f\fR] [\fB-y\fR | \fB-n\fR] [\fB-v\fR] [\fB-o\fR \fIhardware_option\fR]
- \fB-c\fR \fIfunction\fR \fIap_id\fR...
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/cfgadm\fR [\fB-f\fR] [\fB-y\fR | \fB-n\fR] [\fB-v\fR] [\fB-o\fR \fIhardware_option\fR]
- \fB-x\fR \fIhardware_function\fR \fIap_id\fR...
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/cfgadm\fR [\fB-v\fR] [\fB-a\fR] [\fB-s\fR\fI listing_option\fR] [\fB-o\fR \fIhardware_option\fR]
- [\fB-l\fR [\fIap_id\fR | \fIap_type ...\fR ]]
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/cfgadm\fR [\fB-v\fR] [\fB-o\fR\fI hardware_option\fR] \fB-t\fR \fIap_id\fR...
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/cfgadm\fR [\fB-v\fR] [\fB-o\fR\fI hardware_option\fR] \fB-h\fR [\fIap_id\fR]...
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBSCSI\fR hardware specific library \fB/usr/lib/cfgadm/scsi.so.1\fR
-provides the functionality for \fBSCSI\fR hot-plugging through the
-\fBcfgadm\fR(1M) command. \fBcfgadm\fR operates on attachment points, which are
-locations in the system where hardware resources can be dynamically
-reconfigured. Refer to \fBcfgadm\fR(1M) for information regarding attachment
-points.
-.sp
-.LP
-For \fBSCSI\fR hot-plugging, each \fBSCSI\fR controller is represented by an
-attachment point in the device tree. In addition, each \fBSCSI \fRdevice is
-represented by a dynamic attachment point. Attachment points are named through
-\fBap_ids\fR. Two types of \fBap_ids\fR are defined: logical and physical. The
-physical \fBap_id\fR is based on the physical pathname, whereas the logical
-\fBap_id\fR is a shorter more user-friendly name. For \fBSCSI \fRcontrollers,
-the logical \fBap_id\fR is usually the corresponding disk controller number.
-For example, a typical logical \fBap_id\fR would be \fBc0\fR.
-.sp
-.LP
-\fBSCSI\fR devices are named relative to the controller \fBap_id\fR. Thus if a
-disk device is attached to controller \fBc0\fR, its \fBap_id\fR can be:
-.sp
-.in +2
-.nf
-c0::dsk/c0t0d0
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-where \fBdsk/c0t0d0\fR identifies the specific device. In general, the device
-identifier is derived from the corresponding logical link for the device in
-\fB/dev\fR. For example, a \fBSCSI\fR tape drive logical \fBap_id\fR could be
-\fBc0::rmt/0\fR. Here \fBc0\fR is the logical \fBap_id\fR for the \fBSCSI\fR
-controller and \fBrmt/0\fR is derived from the logical link for the tape drive
-in \fB/dev/rmt\fR. If an identifier can not be derived from the link in
-\fB/dev\fR, a unique identifier will be assigned to it. For example, if the
-tape device has no link in \fB/dev\fR, it can be assigned an \fBap_id\fR of the
-form \fBc0::st3\fR where \fBst3\fR is a unique internally generated identifier.
-.sp
-.LP
-A simple listing of attachment points in the system will include attachment
-points at \fBSCSI \fRcontrollers but not \fBSCSI\fR devices. Use the \fB-a\fR
-flag to the list option (\fB-l\fR) to list \fBSCSI\fR devices as well. For
-example:
-.sp
-.in +2
-.nf
-# cfgadm -l
- Ap_Id Type Receptacle Occupant Condition
- c0 scsi-bus connected configured unknown
- sysctrl0:slot0 cpu/mem connected configured ok
- sysctrl0:slot1 sbus-upa connected configured ok
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-To list \fBSCSI\fR devices in addition to \fBSCSI\fR controllers:
-.sp
-.in +2
-.nf
-# cfgadm -al
-
-Ap_Id Type Receptacle Occupant Condition
-c0 scsi-bus connected configured unknown
-c0::dsk/c0t14d0 disk connected configured unknown
-c0::dsk/c0t11d0 disk connected configured unknown
-c0::dsk/c0t8d0 disk connected configured unknown
-c0::dsk/c0t0d0 disk connected configured unknown
-c0::rmt/0 tape connected configured unknown
-sysctrl0:slot0 cpu/mem connected configured ok
-sysctrl0:slot1 sbus-upa connected configured ok
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Refer to \fBcfgadm\fR(1M) for more information regarding listing attachment
-points. The receptacle and occupant state for attachment points at the
-\fBSCSI\fR controller have the following meanings:
-.sp
-.ne 2
-.na
-\fBempty\fR
-.ad
-.RS 16n
-not applicable
-.RE
-
-.sp
-.ne 2
-.na
-\fBdisconnected\fR
-.ad
-.RS 16n
-bus quiesced (\fBI/O\fR activity on bus is suspended)
-.RE
-
-.sp
-.ne 2
-.na
-\fBconnected\fR
-.ad
-.RS 16n
-bus active
-.RE
-
-.sp
-.ne 2
-.na
-\fBconfigured\fR
-.ad
-.RS 16n
-one or more devices on the bus is configured
-.RE
-
-.sp
-.ne 2
-.na
-\fBunconfigured\fR
-.ad
-.RS 16n
-no device on the bus is configured
-.RE
-
-.sp
-.LP
-The corresponding states for individual \fBSCSI\fR devices are:
-.sp
-.ne 2
-.na
-\fBempty\fR
-.ad
-.RS 16n
-not applicable
-.RE
-
-.sp
-.ne 2
-.na
-\fBdisconnected\fR
-.ad
-.RS 16n
-bus to which the device is attached is quiesced
-.RE
-
-.sp
-.ne 2
-.na
-\fBconnected\fR
-.ad
-.RS 16n
-bus to which device is attached is active
-.RE
-
-.sp
-.ne 2
-.na
-\fBconfigured\fR
-.ad
-.RS 16n
-device is configured
-.RE
-
-.sp
-.ne 2
-.na
-\fBunconfigured\fR
-.ad
-.RS 16n
-device is not configured
-.RE
-
-.SH OPTIONS
-.sp
-.LP
-\fBcfgadm\fR defines several types of operations besides listing
-(\fB-l\fR).These operations include testing, (\fB-t\fR), invoking configuration
-state changes, (\fB-c\fR), invoking hardware specific functions (\fB-x\fR), and
-obtaining configuration administration help messages (\fB-h\fR).
-.sp
-.ne 2
-.na
-\fB\fB-c\fR \fIfunction\fR\fR
-.ad
-.RS 24n
-The following generic commands are defined for the \fBSCSI \fRhardware specific
-library:
-.sp
-For \fBSCSI\fR controller attachment points, the following configuration state
-change operations are supported:
-.sp
-.ne 2
-.na
-\fBconnect\fR
-.ad
-.RS 15n
-Unquiesce the \fBSCSI\fR bus.
-.RE
-
-.sp
-.ne 2
-.na
-\fBdisconnect\fR
-.ad
-.RS 15n
-Quiesce the bus (suspend \fBI/O\fR activity on bus).
-.sp
-Incorrect use of this command can cause the system to hang. See \fBNOTES\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBconfigure\fR
-.ad
-.RS 15n
-Configure new devices on \fBSCSI\fR bus.
-.RE
-
-.sp
-.ne 2
-.na
-\fBunconfigure\fR
-.ad
-.RS 15n
-Unconfigure all devices connected to bus.
-.RE
-
-The following generic commands are defined for \fBSCSI\fR devices:
-.sp
-.ne 2
-.na
-\fBconfigure\fR
-.ad
-.RS 15n
-configure a specific device
-.RE
-
-.sp
-.ne 2
-.na
-\fBunconfigure\fR
-.ad
-.RS 15n
-unconfigure a specific device
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR\fR
-.ad
-.RS 24n
-When used with the \fBdisconnect\fR command, forces a quiesce of the \fBSCSI\fR
-bus, if supported by hardware.
-.sp
-Incorrect use of this command can cause the system to hang. See \fBNOTES\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-h\fR \fIap_id\fR\fR
-.ad
-.RS 24n
-SCSI specific help can be obtained by using the help option with any SCSI
-attachment point.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-o\fR \fIhardware_option\fR\fR
-.ad
-.RS 24n
-No hardware specific options are currently defined.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR \fIlisting_option\fR\fR
-.ad
-.RS 24n
-Attachment points of class \fBscsi\fR can be listed by using the \fBselect\fR
-sub-option. Refer to the \fBcfgadm\fR(1M) man page for additional information.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-t\fR \fIap_id\fR\fR
-.ad
-.RS 24n
-No test commands are available at present.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-x\fR \fIhardware_function\fR\fR
-.ad
-.RS 24n
-Some of the following commands can only be used with SCSI controllers and some
-only with SCSI devices.
-.sp
-In the following, \fIcontroller_ap_id\fR refers to an \fBap_id\fR for a SCSI
-controller, for example, \fBc0\fR. \fIdevice_ap_id\fR refers to an \fBap_id\fR
-for a \fBSCSI\fR device, for example: \fBc0::dsk/c0dt3d0\fR.
-.sp
-The following hardware specific functions are defined:
-.sp
-.ne 2
-.na
-\fBinsert_device \fIcontroller_ap_id\fR\fR
-.ad
-.sp .6
-.RS 4n
-Add a new device to the SCSI controller, \fIcontroller_ap_id\fR.
-.sp
-This command is intended for interactive use only.
-.RE
-
-.sp
-.ne 2
-.na
-\fBremove_device \fIdevice_ap_id\fR\fR
-.ad
-.sp .6
-.RS 4n
-Remove device \fIdevice_ap_id\fR.
-.sp
-This command is intended for interactive use only.
-.RE
-
-.sp
-.ne 2
-.na
-\fBreplace_device \fIdevice_ap_id\fR\fR
-.ad
-.sp .6
-.RS 4n
-Remove device \fIdevice_ap_id\fR and replace it with another device of the same
-kind.
-.sp
-This command is intended for interactive use only.
-.RE
-
-.sp
-.ne 2
-.na
-\fBreset_device \fIdevice_ap_id\fR\fR
-.ad
-.sp .6
-.RS 4n
-Reset \fIdevice_ap_id\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBreset_bus \fIcontroller_ap_id\fR\fR
-.ad
-.sp .6
-.RS 4n
-Reset bus \fIcontroller_ap_id\fR without resetting any devices attached to the
-bus.
-.RE
-
-.sp
-.ne 2
-.na
-\fBreset_all \fIcontroller_ap_id\fR\fR
-.ad
-.sp .6
-.RS 4n
-Reset bus \fIcontroller_ap_id\fR and all devices on the bus.
-.RE
-
-.sp
-.ne 2
-.na
-\fBlocator [=on|off] \fIdevice_ap_id\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets or gets the hard disk locator \fBLED\fR, if it is provided by the
-platform. If the [on|off] suboption is not set, the state of the hard disk
-locator is printed.
-.RE
-
-.sp
-.ne 2
-.na
-\fBled[=LED,mode=on|off|blink] \fIdevice_ap_id\fR\fR
-.ad
-.sp .6
-.RS 4n
-If no sub-arguments are set, this function print a list of the current
-\fBLED\fR settings. If sub-arguments are set, this function sets the mode of a
-specific \fBLED\fR for a slot.
-.RE
-
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRConfiguring a Disk
-.sp
-.LP
-The following command configures a disk attached to controller \fBc0\fR:
-
-.sp
-.in +2
-.nf
-# \fBcfgadm -c configure c0::dsk/c0t3d0\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRUnconfiguring a Disk
-.sp
-.LP
-The following command unconfigures a disk attached to controller \fBc0\fR:
-
-.sp
-.in +2
-.nf
-# \fBcfgadm -c unconfigure c0::dsk/c0t3d0\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRAdding a New Device
-.sp
-.LP
-The following command adds a new device to controller \fBc0\fR:
-
-.sp
-.in +2
-.nf
-# \fBcfgadm -x insert_device c0\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The system responds with the following:
-
-.sp
-.in +2
-.nf
-Adding device to SCSI HBA: /devices/sbus@1f,0/SUNW,fas@e,8800000
-This operation will suspend activity on SCSI bus c0
-Continue (yes/no)?
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Enter:
-
-.sp
-.in +2
-.nf
-\fBy\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The system responds with the following:
-
-.sp
-.in +2
-.nf
-SCSI bus quiesced successfully.
-It is now safe to proceed with hotplug operation.
-Enter y if operation is complete or n to abort (yes/no)?
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Enter:
-
-.sp
-.in +2
-.nf
-\fBy\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 4 \fRReplacing a Device
-.sp
-.LP
-The following command replaces a device attached to controller \fBc0\fR:
-
-.sp
-.in +2
-.nf
-# \fBcfgadm \fR\fB-x\fR\fB replace_device c0::dsk/c0t3d0\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The system responds with the following:
-
-.sp
-.in +2
-.nf
-Replacing SCSI device: /devices/sbus@1f,0/SUNW,fas@e,8800000/sd@3,0
-This operation will suspend activity on SCSI bus: c0
-Continue (yes/no)?
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Enter:
-
-.sp
-.in +2
-.nf
-\fBy\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The system responds with the following:
-
-.sp
-.in +2
-.nf
-SCSI bus quiesced successfully.
-It is now safe to proceed with hotplug operation.
-Enter y if operation is complete or n to abort (yes/no)?
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Enter:
-
-.sp
-.in +2
-.nf
-\fBy\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 5 \fREncountering a Mounted File System While Unconfiguring a Disk
-.sp
-.LP
-The following command illustrates encountering a mounted file system while
-unconfiguring a disk:
-
-.sp
-.in +2
-.nf
-# \fBcfgadm -c unconfigure c1::dsk/c1t0d0\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The system responds with the following:
-
-.sp
-.in +2
-.nf
-cfgadm: Component system is busy, try again: failed to offline:
-/devices/pci@1f,4000/scsi@3,1/sd@1,0
- Resource Information
------------------- --------------------------
-/dev/dsk/c1t0d0s0 mounted filesystem "/mnt"
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 6 \fRDisplay the Value of the Locator for a Disk
-.sp
-.LP
-The following command displays the value of the locator for a disk. This
-example is specific to the \fBSPARC\fR Enterprise Server family:
-
-.sp
-.in +2
-.nf
-# \fBcfgadm -x locator c0::dsk/c0t6d0\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The system responds with the following:
-
-.sp
-.in +2
-.nf
-Disk Led
-c0t6d0 locator=on
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 7 \fRSet the Value of the Locator for a Disk
-.sp
-.LP
-The following command sets the value of the locator for a disk. This example is
-specific to the \fBSPARC\fR Enterprise Server family:
-
-.sp
-.in +2
-.nf
-# \fBcfgadm -x locator=off c0::dsk/c0t6d0\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The system does not print anything in response.
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/cfgadm/scsi.so.1\fR\fR
-.ad
-.sp .6
-.RS 4n
-hardware-specific library for generic \fBSCSI\fR hot-plugging
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/platform/SPARC-Enterprise/lib/cfgadm/scsi.so.1\fR\fR
-.ad
-.sp .6
-.RS 4n
-platform-specific library for generic \fBSCSI\fR hot-plugging
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBcfgadm\fR(1M), \fBluxadm\fR(1M), \fBconfig_admin\fR(3CFGADM),
-\fBlibcfgadm\fR(3LIB), \fBattributes\fR(5)
-.SH NOTES
-.sp
-.LP
-The \fBdisconnect\fR (quiesce) operation is not supported on controllers which
-control disks containing critical partitions such as \fBroot\fR (\fB/\fR),
-\fB/usr\fR, \fBswap\fR, or \fB/var\fR. The \fBdisconnect\fR operation should
-not be attempted on such controllers. Incorrect usage can result in a system
-hang and require a reboot.
-.sp
-.LP
-When a controller is in the disconnected (quiesced) state, there is a potential
-for deadlocks occurring in the system. The \fBdisconnect\fR operation should be
-used with caution. A controller should be kept in the disconnected state for
-the minimum period of time required to accomplish the \fBDR\fR operation. The
-\fBdisconnect\fR command is provided only to allow the replacement of the
-\fBSCSI\fR cables while the system is running. It should not be used for any
-other purpose. The only fix for a deadlock (if it occurs) is to reboot the
-system.
-.sp
-.LP
-Hotplugging operations are not supported by all \fBSCSI\fR controllers.
-.SH WARNINGS
-.sp
-.LP
-The connectors on some \fBSCSI\fR devices do not conform to \fBSCSI\fR hotplug
-specifications. Performing hotplug operations on such devices can cause damage
-to the hardware on the \fBSCSI\fR bus. Refer to your hardware manual for
-additional information.
diff --git a/usr/src/man/man1m/cfgadm_usb.1m b/usr/src/man/man1m/cfgadm_usb.1m
deleted file mode 100644
index 5fa2432cb8..0000000000
--- a/usr/src/man/man1m/cfgadm_usb.1m
+++ /dev/null
@@ -1,987 +0,0 @@
-'\" te
-.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH CFGADM_USB 1M "Mar 1, 2007"
-.SH NAME
-cfgadm_usb \- USB hardware-specific commands for cfgadm
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/cfgadm\fR [\fB-f\fR] [\fB-y\fR | \fB-n\fR] [\fB-v\fR] \fB-c\fR \fIfunction\fR \fIap_id\fR...
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/cfgadm\fR \fB-f\fR [\fB-y\fR | \fB-n\fR] [\fB-v\fR] [\fB-o\fR \fIhardware_options\fR]
- \fB-x\fR \fIhardware_function\fR \fIap_id\fR...
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/cfgadm\fR \fB-v\fR [\fB-a\fR] [\fB-s\fR \fIlisting_option\fR]
- [\fB-l\fR [\fIap_id\fR | \fIap_type\fR...]]
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/cfgadm\fR \fB-v\fR \fB-h\fR [\fIap_id\fR]...
-.fi
-
-.SH DESCRIPTION
-.LP
-The Universal Serial Bus (\fBUSB\fR) hardware-specific library
-\fB/usr/lib/cfgadm/usb.so.1\fR provides the functionality for administering
-\fBUSB\fR devices via the \fBcfgadm\fR(1M) command. \fBcfgadm\fR operates on
-attachment points. For details regarding attachment points, refer to
-\fBcfgadm\fR(1M).
-.sp
-.LP
-For \fBUSB\fR administration, the only attachment points supported are the
-ports of hubs attached to the \fBUSB\fR bus.
-.sp
-.LP
-Attachment points are named through attachment point IDs (\fIap_ids\fR). The
-\fBUSB\fR bus is hierarchical, so the \fIap_ids\fR are as well. \fBUSB\fR hubs
-have ports, numbered from \fB1\fR to \fIn\fR. All \fBUSB\fR \fIap_ids\fR
-consist of a string of the following form:
-.sp
-.in +2
-.nf
-usb\fIN\fR/\fIA\fR[.\fIB\fR[.\fIC\fR[...]]]
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-where
-.br
-.in +2
-\fIN\fR is the \fIN\fRth \fBUSB\fR host controller on the system,
-.in -2
-.br
-.in +2
-\fIA\fR is port #\fIA\fR on the root (top) hub.
-.in -2
-.br
-.in +2
-\fIB\fR is port #\fIB\fR of the hub plugged into port #\fIA\fR of the hub above
-it.
-.in -2
-.br
-.in +2
-\fIC\fR is port #\fIC\fR of the hub plugged into port #\fIB \fRof the hub above
-it, and so forth.
-.in -2
-.sp
-.LP
-For example, the first port on the root hub of USB controller \fB0\fR (the only
-controller), has a logical \fIap_id\fR:
-.sp
-.in +2
-.nf
-usb0/1
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Similarly, the second port on the first external hub plugged into the first
-port on the root hub of the first \fBUSB\fR controller has a logical
-\fIap_id\fR:
-.sp
-.in +2
-.nf
-usb0/1.2
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-For example, if the \fIap_id\fR is \fBusb0/1.4.3.4\fR, it represents port
-\fB4\fR of the hub plugged into port \fB3\fR of the hub plugged into port
-\fB4\fR of the hub plugged into port \fB1\fR of the root hub of the first
-\fBUSB\fR host controller on the system.
-.sp
-.in +2
-.nf
-example# \fBcfgadm -l\fR
-Ap_Id Type Receptacle Occupant Condition
-usb0/1 USB-hub connected configured ok
-usb0/2 unknown empty unconfigured ok
-usb0/1.1 USB-storage connected configured ok
-usb0/1.2 unknown empty unconfigured ok
-usb0/1.3 unknown empty unconfigured ok
-usb0/1.4 USB-device connected configured ok
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-\fBUSB 2.0\fR chips have one \fBEHCI\fR host \fBUSB 2.0\fR host controller and a
-number of companion \fBUSB 1.\fR\fIx\fR host controllers (either \fBOHCI\fR or
-\fBUHCI\fR host controllers).
-.sp
-.LP
-When a \fBUSB 2.0\fR device has been plugged in, it shows up on the \fBEHCI\fR
-logical ports which might not have a \fB1\fR to \fB1\fR mapping to external
-physical port numbers on the system. When a \fBUSB 1.\fR\fIx\fR device is
-plugged in, the \fBEHCI\fR host controller reroutes the device to a companion
-host controller and the device shows up on the companion's logical port
-number.
-.sp
-.LP
-The mapping of logical port numbers to physical port numbers can get quite
-complicated. For example:
-.sp
-.in +2
-.nf
-% cfgadm
-Ap_Id Type Receptacle Occupant Condition
-c0 scsi-bus connected configured unknown
-usb0/1 usb-mouse connected configured ok
-usb0/2 usb-kbd connected configured ok
-usb0/3 unknown empty unconfigured ok
-usb0/4 usb-hub connected configured ok
-usb0/4.1 unknown empty unconfigured ok
-usb0/4.2 unknown empty unconfigured ok
-usb0/4.3 unknown empty unconfigured ok
-usb0/4.4 usb-storage connected configured ok
-usb1/1 unknown empty unconfigured ok
-usb1/2 unknown empty unconfigured ok
-usb1/3 unknown empty unconfigured ok
-usb2/1 unknown empty unconfigured ok
-usb2/2 usb-device connected configured ok
-usb3/1 unknown empty unconfigured ok
-usb3/2 unknown empty unconfigured ok
-usb3/3 unknown empty unconfigured ok
-usb3/4 unknown empty unconfigured ok
-usb3/5 unknown empty unconfigured ok
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-In this example \fBusb0\fR is the onboard USB 1.\fIx\fR host controller.
-\fBusb1\fR and \fBusb2\fR are companion \fBOHCI USB 1.\fR\fIx\fR host
-controllers and \fBusb3\fR is an \fBEHCI USB 2.0\fR host controller.
-.sp
-.LP
-The following table shows the somewhat confusing routing for this USB 2.0 chip:
-.sp
-.in +2
-.nf
-logical port number physical port number
-------------------- --------------------
- usb1/1 internal port 1
- usb1/2 external port 1
- usb1/3 external port 3
-
- usb2/1 internal port 2
- usb2/2 external port 2
-
- usb3/1 internal port 1
- usb3/2 internal port 2
- usb3/3 external port 1
- usb3/4 external port 2
- usb3/5 external port 3
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Unfortunately, the exact routing can often only be determined by
-experimentation.
-.sp
-.LP
-The receptacle states for attachment points at the \fBUSB\fR port have the
-following meanings:
-.sp
-.ne 2
-.na
-\fB\fBconnected\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBUSB\fR port is powered on and enabled. A USB device is plugged in to the
-port. The device is logically connected to the USB bus.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdisconnected\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBUSB\fR port is powered on and enabled. A \fBUSB\fR device is plugged into
-the port. The device has been logically disconnected from the \fBUSB\fR bus
-(using the \fBcfgadm\fR \fB-c\fR \fBdisconnect\fR command).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBempty\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBUSB\fR port is powered on, but no device is plugged in to it.
-.RE
-
-.sp
-.LP
-The occupant states for devices at \fBUSB\fR port attachment points at the
-\fBUSB\fR port have the following meanings:
-.sp
-.ne 2
-.na
-\fB\fBconfigured\fR\fR
-.ad
-.sp .6
-.RS 4n
-The \fBUSB\fR device at the \fBUSB\fR port is configured and usable by Solaris.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBunconfigured\fR\fR
-.ad
-.sp .6
-.RS 4n
-The \fBUSB\fR device at the \fBUSB\fR port was explicitly off-lined using
-\fBcfgadm\fR \fB-c\fR \fBunconfigure\fR, or was not successfully configured for
-use with Solaris, for example, having no driver or a device problem.
-.RE
-
-.sp
-.LP
-The attachment point conditions are:
-.sp
-.ne 2
-.na
-\fB\fBok\fR\fB\fR\fR
-.ad
-.sp .6
-.RS 4n
-Normal state - ready for use.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfailing\fR\fR
-.ad
-.sp .6
-.RS 4n
-Not used.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfailed\fR\fR
-.ad
-.sp .6
-.RS 4n
-Not used.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBunusable\fR\fR
-.ad
-.sp .6
-.RS 4n
-The user has physically removed a device while an application had the device
-open (there might be outstanding \fBI/O\fR). Users need to reinsert the same
-physical device and close the application properly before removing the device
-again. The port cannot configure other inserted devices until this is done.
-.sp
-If the original device cannot be reinserted into the port, see the \fI\fR for
-instructions for clearing this attachment point condition.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBunknown\fR\fR
-.ad
-.sp .6
-.RS 4n
-Not used.
-.RE
-
-.sp
-.LP
-A \fBUSB\fR device can be hotplugged or hotunplugged at any time, and the
-system detects the event and takes the appropriate action.
-.sp
-.LP
-It is not necessary to transition a receptacle to the \fBdisconnected\fR state
-before removing its device from the \fBUSB\fR. However, it is not recommended
-to hot-remove devices currently in use (such as removable disks currently
-opened by a volume manager or some other application).
-.SH OPTIONS
-.LP
-\fBcfgadm\fR defines several types of operations. These operations include
-invoking configuration state changes (\fB-c\fR), invoking hardware-specific
-functions (\fB-x\fR), and obtaining configuration administration help messages
-(\fB-h\fR).
-.sp
-.LP
-If any of these operations fail, the device and attachment point might not be
-in the expected state. Use the \fBcfgadm\fR \fB-l\fR command to display the
-device's current status.
-.sp
-.LP
-All other options have the same meaning as defined in \fBcfgadm\fR(1M).
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-c\fR \fIfunction\fR\fR
-.ad
-.sp .6
-.RS 4n
-The following generic commands are defined for the \fBUSB\fR hardware specific
-library. The following configuration state change operations are supported:
-.sp
-.ne 2
-.na
-\fB\fBconfigure\fR\fR
-.ad
-.sp .6
-.RS 4n
-If there is a \fBUSB\fR device plugged into the port, this command attempts to
-configure it and set everything up so that it is usable by Solaris. This
-command does an implied \fBconnect\fR (reverse of \fBdisconnect\fR) if
-necessary. This command accomplishes nothing, and returns an error message, if
-the device at that port is already configured. After successful execution of
-this command, the device is ready for use under Solaris.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdisconnect\fR\fR
-.ad
-.sp .6
-.RS 4n
-Performs an \fBunconfigure\fR on the \fIap_id\fR (if it is not already
-\fBunconfigured\fR), and then transitions the receptacle to the
-\fBdisconnected\fR state, even though a device is still be plugged into the
-port. Issuing a \fBcfgadm\fR \fB-c\fR \fBconfigure\fR, or physically
-hotplugging the device, brings the device back to the \fBconnected\fR
-receptacle state, and to the \fBconfigured\fR occupant state, assuming a driver
-can be found and there are no problems enumerating and configuring the device.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBunconfigure\fR\fR
-.ad
-.sp .6
-.RS 4n
-Makes the device plugged into the port unusable by Solaris (offline it). If
-successful, \fBcfgadm\fR reports this \fIap_id\fR's occupant state as
-\fBunconfigured\fR. Issuing a \fBconfigure\fR to the \fIap_id\fR (if
-successful) brings its occupant back to the \fBconfigured\fR (online)
-condition, as it physically hotplugging the device on the port.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR\fR
-.ad
-.sp .6
-.RS 4n
-Not supported.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-h\fR \fIap_id\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBUSB\fR specific help can be obtained by using the help option with any
-\fBUSB\fR attachment point.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR[\fBv\fR]\fR
-.ad
-.sp .6
-.RS 4n
-The \fB-l\fR option works as described in \fBcfgadm\fR(1M). When paired with
-the \fB-v\fR option, the \fBInformation\fR field contains the following
-\fBUSB\fR-specific information:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBMfg\fR: manufacturer string (\fBiManufacturer\fR)
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBProduct\fR: product string (\fBiProduct\fR)
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBNConfigs\fR: total number of configurations the device supports
-(\fBbNumConfigurations\fR).
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBConfig\fR: current configuration setting in decimal (configuration index,
-not configuration value).
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The configuration string descriptor for the current configuration
-(\fBiConfiguration\fR)
-.RE
-See the Universal Serial Bus specification for a description of these fields.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-o\fR \fIhardware_options\fR\fR
-.ad
-.sp .6
-.RS 4n
-Hardware options are only supported for the hardware-specific command, \fB-x\fR
-\fBusb_config\fR. See the description of that command below for an explanation
-of the options available.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR \fIlisting_options\fR\fR
-.ad
-.sp .6
-.RS 4n
-Attachment points of class \fBUSB\fR can be listed by using the \fBselect\fR
-sub-option. See \fBcfgadm\fR(1M).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-x\fR \fIhardware_function\fR\fR
-.ad
-.sp .6
-.RS 4n
-The following hardware-specific functions are defined:
-.sp
-.ne 2
-.na
-\fB\fBusb_config\fR \fB-o\fR \fBconfig=\fR\fIn\fR\fR
-.ad
-.sp .6
-.RS 4n
-This command requires the mandatory \fBconfig\fR value to be specified using
-the \fB-o\fR option.
-.sp
-Sets the \fBUSB\fR configuration of a multi-configuration \fBUSB\fR device at
-\fIap_id\fR to configuration index \fIn\fR. The device is set to this
-configuration henceforth and this setting persists across reboots, hot-removes,
-and unconfigure/configure of the device.
-.sp
-Valid values of \fIn\fR range from \fB0\fR to (\fBNconfigs -1\fR). The device
-is reset by a \fBdisconnect\fR followed by a \fBconfigure\fR. The
-\fBconfigure\fR causes the device to be configured to the new configuration
-setting.
-.sp
-If any of these steps fail, the configuration file and the device are restored
-to their previous state and an error message is issued.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBusb_reset\fR\fR
-.ad
-.sp .6
-.RS 4n
-Performs a software reset (re-enumeration) of the device. This is the
-equivalent of removing the device and inserting it back again. The port on the
-hub is power cycled if the hub supports power cycling of individual ports.
-.sp
-If the connected device is a hub, this function has the effect of resetting
-that hub and any devices down the tree of which it is the root.
-.sp
-If any of these steps fail, the device is restored to its previous state and an
-error message is issued.
-.RE
-
-.RE
-
-.sp
-.LP
-State table: attachment points state versus commands:
-.sp
-.in +2
-.nf
-Valid states:
- empty/unconfigured \(-> no device connected
-
- disconnected/unconfigured \(-> logically disconnected,
- unavailable,
- devinfo node removed,
- device physically connected
-
- connected/unconfigured \(-> logically connected,
- unavailable,
- devinfo node present
-
- connected/configured \(-> connected, available
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The table below clarifies the state transitions resulting from actions or
-commands:
-.sp
-.in +2
-.nf
-current state operation new state
-------------- --------- ---------
-empty/
-unconfigured:
- device plugged in: connected/configured or
- connected/unconfigured
- (if enumeration failed)
- device removed: n/a
- cfgadm -c unconfigure: empty/unconfigured
- cfgadm -c configure: empty/unconfigured
- cfgadm -c disconnect: empty/unconfigured
- (no-op and error)
-
-disconnected/
-unconfigured:
- device plugged in: n/a
- device removed: empty/unconfigured
- cfgadm -c unconfigure: disconnected/unconfigured
- cfgadm -c configure: connected/configured, or
- connected/unconfigured
- (if reenumeration failed)
- cfgadm -c disconnect: disconnected/unconfigured
-
-connected/unconfigured:
- device plugged in: n/a
- device removed: empty/unconfigured
- cfgadm -c unconfigure: connected/unconfigured
- cfgadm -c configure: connected/configured, or
- connected/unconfigured
- (if reenumeration failed)
- cfgadm -c disconnect: disconnected/unconfigured
-
-connected/configured:
- device plugged in: n/a
- device removed: empty/unconfigured or
- connected/configured,
- but with ap condition
- 'unusable' if device
- was open when removed
- cfgadm -c unconfigure: connected/unconfigured
- cfgadm -c configure: connected/configured
- cfgadm -c disconnect: disconnected/unconfigured
-.fi
-.in -2
-.sp
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRListing the Status of All USB Devices
-.sp
-.LP
-The following command lists the status of all \fBUSB\fR devices on the system:
-
-.sp
-.in +2
-.nf
-# cfgadm
-Ap_Id Type Receptacle Occupant Condition
-usb0/1 USB-hub connected configured ok
-usb0/2 unknown empty unconfigured ok
-usb0/1.1 USB-storage connected configured ok
-usb0/1.2 unknown empty unconfigured ok
-usb0/1.3 unknown empty unconfigured ok
-usb0/1.4 USB-device connected configured ok
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Notice that \fBcfgadm\fR treats the \fBUSB-device\fR device at \fBap_id
-usb0/1.4\fR as a single unit, since it cannot currently control individual
-interfaces.
-
-.LP
-\fBExample 2 \fRListing the Status of a Port with No Device Plugged In
-.sp
-.LP
-The following command lists the status of a port with no device plugged in:
-
-.sp
-.in +2
-.nf
-example# \fBcfgadm -l usb0/1.3\fR
-Ap_Id Type Receptacle Occupant Condition
-usb0/1.3 unknown empty unconfigured ok
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRListing the Status of the Same Port with a Device Plugged In
-.sp
-.LP
-The following command lists the status of the same port after physically
-plugging in a device that configures without problems:
-
-.sp
-.in +2
-.nf
-example# \fBcfgadm -l usb0/1.3\fR
-Ap_Id Type Receptacle Occupant Condition
-usb0/1.3 USB-hub connected configured ok
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 4 \fRUnconfiguring an Existing USB Device
-.sp
-.LP
-The following command unconfigures the \fBUSB\fR device attached to
-\fBusb0/1.3\fR, then displays the status of the \fBap_id\fR:
-
-.sp
-.in +2
-.nf
-example# \fBcfgadm -c unconfigure usb0/1.3\fR
-Unconfigure the device: /devices/pci@0,0/pci8086,7112@7,2/hub@2:2.3
-This operation suspends activity on the USB device
-Continue (yes/no)?
-
-Enter:
-
-\fBy\fR
-
-example# \fBcfgadm -l usb0/1.3\fR
-Ap_Id Type Receptacle Occupant Condition
-usb0/1.3 unknown connected unconfigured ok
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 5 \fRUnconfiguring and Logically Disconnecting an Existing USB
-Device
-.sp
-.LP
-The following command unconfigures and logically disconnects a \fBUSB\fR device
-attached to \fBusb0/1.3\fR:
-
-.sp
-.in +2
-.nf
-example# \fBcfgadm -c disconnect usb0/1.3\fR
-Disconnect the device: /devices/pci@0,0/pci8086,7112@7,2/hub@2:2.3
-This operation suspends activity on the USB device
-Continue (yes/no)?
-
-Enter:
-
-\fBy\fR
-
-example# \fBcfgadm -l usb0/1.3\fR
-Ap_Id Type Receptacle Occupant Condition
-usb0/1.3 unknown disconnected unconfigured ok
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-A \fBdisconnect\fR implies that \fBcfgadm\fR does an \fBunconfigure\fR first.
-The receptacle status now shows \fBdisconnected\fR, even though the device is
-still physically connected. In this case, a physical hotplug or using the
-\fBcfgadm \fR\fB-c\fR \fBconfigure\fR on the \fBap_id\fR brings it back
-on-line.
-
-.LP
-\fBExample 6 \fRConfiguring a Previously Unconfigured USB Device
-.sp
-.LP
-The following command configures a \fBUSB\fR device that was previously
-attached to \fBusb0/1.3\fR:
-
-.sp
-.in +2
-.nf
-example # \fBcfgadm -yc configure usb0/1.3\fR
-example# \fBcfgadm -l usb0/1.3\fR
-Ap_Id Type Receptacle Occupant Condition
-usb0/1.3 unknown connected configured ok
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 7 \fRResetting a USB Device
-.sp
-.LP
-The following command resets a \fBUSB\fR device:
-
-.sp
-.in +2
-.nf
-example# \fBcfgadm -x usb_reset usb0/1.3\fR
-Reset the device: /devices/pci@0,0/pci8086,7112@7,2/hub@2:2.3
-This operation suspends activity on the USB device
-Continue (yes/no)?
-
-Enter:
-
-\fBy\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 8 \fRDisplaying Detailed Information About a USB Device
-.sp
-.LP
-The following command displays detailed information about a \fBUSB\fR device.
-This device shows the following \fBUSB\fR-specific information in
-the '\fBInformation\fR' field:
-
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Manufacturer string: Iomega
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Product string: \fBUSB Zip 250\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Number of configurations supported: 1
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Configuration currently active: 0
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Configuration string descriptor for configuration 0: Default
-.RE
-.sp
-.in +2
-.nf
-example# \fBcfgadm -lv usb0/1.5\fR
-Ap_Id Receptacle Occupant Condition Information
-When Type Busy Phys_Id
-usb0/1.5 connected configured ok Mfg:"Io
-mega" Product:"USB Zip 250" NConfigs:1 Config:0 : Default
-.fi
-.in -2
-.sp
-
-.sp
-.in +2
-.nf
-example# \fBcfgadm -l -s "cols=ap_id:info" usb0/1.5\fR
-Ap_Id Information
-usb0/1.5 Mfg:"Iomega" Product:"USB Zip 250"
-NConfigs:1 Config:0 : Default
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 9 \fRDisplaying Detailed Information About All USB Devices
-.sp
-.LP
-The following command displays detailed information about all \fBUSB\fR devices
-on the system:
-
-.sp
-.in +2
-.nf
-example# \fBcfgadm -l -s "select=class(usb),cols=ap_id:info"\fR
-Ap_Id Information
-usb0/1 Mfg:<undefined> Product:<undefined>
-NConfigs:1 Config:0 <no cfg str descr>
-usb0/2
-usb0/1.1 Mfg:<undefined> Product:<undefined>
-NConfigs:1 Config:0 <no cfg str descr>
-usb0/1.2
-usb0/1.3
-usb0/1.4 Mfg:"Wizard" Product:"Modem/ISDN"
-NConfigs:3 Config:1 : V.90 Analog Modem
-usb0/1.5 Mfg:"Iomega" Product:"USB Zip 250"
-NConfigs:1 Config:0 : Default
-usb0/1.6 Mfg:"SOLID YEAR" Product:"SOLID YEAR
-USB"NConfigs:1 Config:0 <no cfg str descr>
-usb0/1.7
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Lines containing only an \fBap_id\fR are empty ports. These can be filtered
-out. This example only lists \fBUSB\fR \fBap_id\fRs with connected devices, and
-information about those devices.
-
-.sp
-.in +2
-.nf
-example# \fBcfgadm -l -s "select=class(usb),cols=ap_id:info" | grep Mfg\fR
-usb0/1 Mfg:<undefined> Product:<undefined>
-NConfigs:1 Config:0 <no cfg str descr>
-usb0/1.1 Mfg:<undefined> Product:<undefined>
-NConfigs:1 Config:0 <no cfg str descr>
-usb0/1.4 Mfg:"Wizard" Product:"Modem/ISDN"
-NConfigs:3 Config:1 : V.90 Analog Modem
-usb0/1.5 Mfg:"Iomega" Product:"USB Zip 250"
-NConfigs:1 Config:0 : Default
-usb0/1.6 Mfg:"SOLID YEAR" Product:"SOLID YEAR USB"
-Config:0 <no cfg str descr>
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 10 \fRListing Information About a Multi-configuration USB Device
-.sp
-.LP
-The following example lists information about a multi-configuration \fBUSB\fR
-device.
-
-.sp
-.LP
-Notice the \fBNConfigs\fR field: the configurations available for this device
-are \fB0\fR, \fB1\fR, and \fB2\fR (\fB0\fR to (\fIN\fR\fBConfigs-1\fR)).
-
-.sp
-.in +2
-.nf
-example# \fBcfgadm -l -s "cols=ap_id:info" usb0/1.4\fR
-Ap_Id Information
-usb0/1.4 Mfg:"Wizard" Product:"Modem/ISDN"
-NConfigs:3 Config:1 V.90 Analog Modem"
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 11 \fRSetting the Current Configuration of a Multi-configuration USB
-Device
-.sp
-.LP
-The following example sets the current configuration of a multi-configuration
-USB device:
-
-.sp
-.in +2
-.nf
-example# \fBcfgadm -o config=2 -x usb_config usb0/1.4\fR
-Setting the device: /devices/pci@1f,2000/usb@1/device@3
-to USB configuration 2
-This operation suspends activity on the USB device
-Continue (yes/no)?
-
-Enter:
-
-\fBy\fR
-
-USB configuration changed successfully.
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The device path should be checked to ensure that the right instance of a device
-is being referred to, in the case where multiple devices of the exact same type
-are on the same bus. This information is available in the '\fBInformation\fR'
-field.
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/usr/lib/cfgadm/usb.so.1\fR\fR
-.ad
-.sp .6
-.RS 4n
-Hardware specific library for generic USB device administration
-.RE
-
-.SH SEE ALSO
-.LP
-\fBcfgadm\fR(1M), \fBconfig_admin\fR(3CFGADM), \fBattributes\fR(5),
-\fBscsa2usb\fR(7D), \fBusba\fR(7D)
-.sp
-.LP
-Universal Serial Bus 1.1 Specification (\fBwww.usb.org\fR)
-.sp
-.LP
-\fI\fR
-.SH NOTES
-.LP
-\fBcfgadm\fR(1M) can not unconfigure, disconnect, reset, or change the
-configuration of any \fBUSB\fR device currently opened by any application.
-These operations also fail on a hub if a device in its hierarchy is opened by
-an application. See \fBscsa2usb\fR(7D) for unconfiguring a \fBUSB\fR
-mass-storage device that is currently in use.
-.sp
-.LP
-Only super-users can execute any functions on an attachment point. However, one
-need not be a super-user to list the attachment points.
diff --git a/usr/src/man/man1m/chat.1m b/usr/src/man/man1m/chat.1m
deleted file mode 100644
index 94745d550f..0000000000
--- a/usr/src/man/man1m/chat.1m
+++ /dev/null
@@ -1,745 +0,0 @@
-'\" te
-.\" This manual page is based on documentation obtained from Karl Fox.
-.\" Portions Copyright (C) 2008, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH CHAT 1M "August 29, 2021"
-.SH NAME
-chat \- automated conversational exchange tool
-.SH SYNOPSIS
-.nf
-\fBchat\fR [\fIoptions\fR] \fIscript\fR
-.fi
-
-.SH DESCRIPTION
-The \fBchat\fR program implements a conversational text-based exchange between
-the computer and any serial device, including (but not limited to) a modem, an
-ISDN TA, and the remote peer itself, establishing a connection between the
-Point-To-Point Protocol daemon (\fBpppd\fR) and the remote \fBpppd\fR process.
-.SH OPTIONS
-The \fBchat\fR command supports the following options:
-.sp
-.ne 2
-.na
-\fB\fB-f\fR \fI<chat file>\fR\fR
-.ad
-.RS 23n
-Read the \fBchat\fR script from the \fBchat\fR file. This option is mutually
-exclusive with the \fBchat\fR script parameters. You must have \fBread\fR
-access to use the file. Multiple lines are permitted in the file. Use the space
-or horizontal tab characters to separate the strings.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-t\fR \fB\fI<timeout>\fR\fR \fR
-.ad
-.RS 23n
-Set the timeout for the expected string to be received. If the string is not
-received within the time limit, the reply string is not sent. If specified,
-a 'subexpect' (alternate reply) string can be sent. Otherwise, if no alternate
-reply strings remain, the \fBchat\fR script fails. A failed script will cause
-the \fBchat\fR program to terminate with a non-zero error code.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-r\fR \fB\fI<report file> \fR\fR \fR
-.ad
-.RS 23n
-Set the file for output of the report strings. If you use the keyword
-\fBREPORT\fR, the resulting strings are written to this file. If the \fB-r\fR
-option is not used and you use the \fBREPORT\fR keyword, the \fBstderr\fR file
-is used for the report strings.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-e\fR \fR
-.ad
-.RS 23n
-Start with the echo option turned on. You turn echo on or off at specific
-points in the \fBchat\fR script using the \fBECHO\fR keyword. When echoing is
-enabled, all output from the modem is echoed to \fBstderr\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-E\fR \fR
-.ad
-.RS 23n
-Enables environment variable substitution within \fBchat\fR scripts using the
-standard \fI$xxx\fR syntax.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR \fR
-.ad
-.RS 23n
-Request that the \fBchat\fR script execute in a verbose mode. The \fBchat\fR
-program logs the execution state of the \fBchat\fR script as well as all text
-received from the modem and output strings sent to the modem. The default is to
-log through \fBsyslog\fR(3C) with facility \fBlocal\fR2; the logging method is
-alterable using the \fB-S\fR and \fB-s\fR options.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-V\fR \fR
-.ad
-.RS 23n
-Request that the \fBchat\fR script be executed in a \fBstderr\fR verbose mode.
-The \fBchat\fR program logs all text received from the modem and output strings
-sent to the modem to \fBstderr\fR. \fBstderr\fR is usually the local console at
-the station running the \fBchat\fR or \fBpppd\fR program.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR\fR
-.ad
-.RS 23n
-Use \fBstderr\fR. Log messages from \fB-v\fR and error messages are sent to
-\fBstderr\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-S\fR\fR
-.ad
-.RS 23n
-Do not use syslog. By default, error messages are set to syslog. This option
-prevents log messages from \fB-v\fR and error messages from being sent to
-syslog.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-T\fR \fB\fI<phone number>\fR\fR\fR
-.ad
-.RS 23n
-Pass in an arbitrary string (usually a telephone number) that will be
-substituted for the \fB\eT\fR substitution metacharacter in a send string.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-U\fR \fB\fI<phone number 2>\fR\fR\fR
-.ad
-.RS 23n
-Pass in a second string (usually a telephone number) that will be substituted
-for the \fB\eU\fR substitution metacharacter in a send string. This is useful
-when dialing an ISDN terminal adapter that requires two numbers.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBscript\fR \fR
-.ad
-.RS 23n
-If the script is not specified in a file with the \fB-f\fR option, the script
-is included as parameters to the \fBchat\fR program.
-.RE
-
-.SH EXTENDED DESCRIPTION
-.SS "Chat Script"
-The \fBchat\fR script defines communications. A script consists of one or more
-"expect-send" pairs of strings separated by spaces, with an optional
-"subexpect-subsend" string pair, separated by a dash (as in the following
-example:)
-.sp
-.LP
-ogin:-BREAK-ogin: ppp ssword: hello2u2
-.sp
-.LP
-The example indicates that the \fBchat\fR program should expect the string
-"ogin:". If it fails to receive a login prompt within the time interval
-allotted, it sends a break sequence to the remote and then expects the string
-"ogin:". If the first "ogin:" is received, the break sequence is not generated.
-.sp
-.LP
-Upon receiving the login prompt, the \fBchat\fR program sends the string "ppp"
-and then expects the prompt "ssword:". When the password prompt is received, it
-sends the password hello2u2.
-.sp
-.LP
-A carriage return is normally sent following the reply string. It is not
-expected in the "expect" string unless it is specifically requested by using
-the \fB\er\fR character sequence.
-.sp
-.LP
-The expect sequence should contain only what is needed to identify the received
-data. Because it's stored on a disk file, it should not contain variable
-information. Generally it is not acceptable to look for time strings, network
-identification strings, or other variable pieces of data as an expect string.
-.sp
-.LP
-To correct for characters that are corrupted during the initial sequence, look
-for the string "ogin:" rather than "login:". The leading "l" character may be
-received in error, creating problems in finding the string. For this reason,
-scripts look for "ogin:" rather than "login:" and "ssword:" rather than
-"password:".
-.sp
-.LP
-An example of a simple script follows:
-.sp
-.in +2
-.nf
-ogin: ppp ssword: hello2u2
-.fi
-.in -2
-
-.sp
-.LP
-The example can be interpreted as: expect ogin:, send ppp, expect ...ssword:,
-send hello2u2.
-.sp
-.LP
-When login to a remote peer is necessary, simple scripts are rare. At minimum,
-you should include sub-expect sequences in case the original string is not
-received. For example, consider the following script:
-.sp
-.in +2
-.nf
-ogin:--ogin: ppp ssword: hello2u2
-.fi
-.in -2
-
-.sp
-.LP
-This script is more effective than the simple one used earlier. The string
-looks for the same login prompt; however, if one is not received, a single
-return sequence is sent and then the script looks for login: again. If line
-noise obscures the first login prompt, send the empty line to generate a login
-prompt again.
-.SS "Comments"
-Comments can be embedded in the \fBchat\fR script. Comment lines are ignored by
-the chat program. A comment starts with the hash ("#") character in column one.
-If a \fB#\fR character is expected as the first character of the expect
-sequence, quote the expect string. If you want to wait for a prompt that starts
-with a \fB#\fR character, write something like this:
-.sp
-.in +2
-.nf
-# Now wait for the prompt and send logout string
-\&'# ' logout
-.fi
-.in -2
-
-.SS "Sending Data From A File"
-If the string to send begins with an at sign ("@"), the remainder of the string
-is interpreted as the name of the file that contains the string. If the last
-character of the data read is a newline, it is removed. The file can be a named
-pipe (or fifo) instead of a regular file. This enables \fBchat\fR to
-communicate with another program, for example, a program to prompt the user and
-receive a password typed in.
-.SS "Abort "
-Many modems report the status of a call as a string. These status strings are
-often "CONNECTED" or "NO CARRIER" or "BUSY." If the modem fails to connect to
-the remote, you can terminate the script. Abort strings may be specified in the
-script using the ABORT sequence. For example:
-.sp
-.in +2
-.nf
-ABORT BUSY ABORT 'NO CARRIER' '' ATZ OK ATDT5551212 CONNECT
-.fi
-.in -2
-
-.sp
-.LP
-This sequence expects nothing and sends the string ATZ. The expected response
-is the string OK. When OK is received, the string ATDT5551212 dials the
-telephone. The expected string is CONNECT. If CONNECT is received, the
-remainder of the script is executed. When the modem finds a busy telephone, it
-sends the string BUSY, causing the string to match the abort character
-sequence. The script fails because it found a match to the abort string. If the
-NO CARRIER string is received, it aborts for the same reason.
-.SS "Clr_Abort "
-The CLR_ABORT sequence clears previously set ABORT strings. ABORT strings are
-kept in an array of a pre-determined size; CLR_ABORT reclaims the space for
-cleared entries, enabling new strings to use that space.
-.SS "Say "
-The SAY string enables the script to send strings to a user at a terminal via
-standard error. If \fBchat\fR is being run by \fBpppd\fR and \fBpppd\fR is
-running as a daemon (detached from its controlling terminal), standard error is
-normally redirected to the \fB/etc/ppp/connect-errors\fR file.
-.sp
-.LP
-SAY strings must be enclosed in single or double quotes. If carriage return and
-line feed are required for the output, you must explicitly add them to your
-string.
-.sp
-.LP
-The SAY string can provide progress messages to users even with "ECHO OFF." For
-example, add a line similar to the following to the script:
-.sp
-.in +2
-.nf
-ABORT BUSY
-ECHO OFF
-SAY "Dialing your ISP...\en"
-\&'' ATDT5551212
-TIMEOUT 120
-SAY "Waiting up to 2 minutes for connection ..."
-CONNECT ''
-SAY "Connected, now logging in ...\en"
-ogin: account
-ssword: pass
-$ \ec
-SAY "Logged in OK ... \en"
-.fi
-.in -2
-
-.sp
-.LP
-This sequence hides script detail while presenting the SAY string to the user.
-In this case, you will see:
-.sp
-.in +2
-.nf
-Dialing your ISP...
-Waiting up to 2 minutes for connection...Connected, now logging in...
-Logged in OK ...
-.fi
-.in -2
-
-.SS "Report"
-REPORT is similar to the ABORT string. With REPORT, however, strings and all
-characters to the next control character (such as a carriage return), are
-written to the report file.
-.sp
-.LP
-REPORT strings can be used to isolate a modem's transmission rate from its
-CONNECT string and return the value to the \fBchat\fR user. Analysis of the
-REPORT string logic occurs in conjunction with other string processing, such as
-looking for the expect string. It's possible to use the same string for a
-REPORT and ABORT sequence, but probably not useful.
-.sp
-.LP
-Report strings may be specified in the script using the REPORT sequence. For
-example:
-.sp
-.in +2
-.nf
-REPORT CONNECT
-ABORT BUSY
-ATDT5551212 CONNECT
-ogin: account
-.fi
-.in -2
-
-.sp
-.LP
-The above sequence expects nothing, then sends the string ATDT5551212 to dial
-the telephone. The expected string is CONNECT. If CONNECT is received, the
-remainder of the script is executed. In addition, the program writes the string
-CONNECT to the report file (specified by \fB-r\fR) in addition to any
-characters that follow.
-.SS "Clr_Report"
-CLR_REPORT clears previously set REPORT strings. REPORT strings are kept in an
-array of a pre-determined size; CLR_REPORT reclaims the space for cleared
-entries so that new strings can use that space.
-.SS "Echo"
-ECHO determines if modem output is echoed to \fBstderr\fR. This option may be
-set with the \fB-e\fR option, but can also be controlled by the ECHO keyword.
-The "expect-send" pair ECHO ON enables echoing, and ECHO OFF disables it. With
-ECHO, you can select which parts of the conversation should be visible. In the
-following script:
-.sp
-.in +2
-.nf
-ABORT 'BUSY'
-ABORT 'NO CARRIER'
-"" AT&F
-OK\er\en ATD1234567
-\er\en \ec
-ECHO ON
-CONNECT \ec
-ogin: account
-.fi
-.in -2
-
-.sp
-.LP
-All output resulting from modem configuration and dialing is not visible, but
-output is echoed beginning with the CONNECT (or BUSY) message.
-.SS "Hangup"
-The HANGUP option determines if a modem hangup is considered as an error.
-HANGUP is useful for dialing systems that hang up and call your system back.
-HANGUP can be ON or OFF. When HANGUP is set to OFF and the modem hangs up (for
-example, following the first stage of logging in to a callback system),
-\fBchat\fR continues running the script (for example, waiting for the incoming
-call and second stage login prompt). When the incoming call is connected, use
-the HANGUP ON string to reinstall normal hang up signal behavior. An example of
-a simple script follows:
-.sp
-.in +2
-.nf
-ABORT 'BUSY'
- "" AT&F
- OK\er\en ATD1234567
- \er\en \ec
- CONNECT \ec
- 'Callback login:' call_back_ID
- HANGUP OFF
- ABORT "Bad Login"
- 'Callback Password:' Call_back_password
- TIMEOUT 120
- CONNECT \ec
- HANGUP ON
- ABORT "NO CARRIER"
- ogin:--BREAK--ogin: real_account
-.fi
-.in -2
-
-.SS "Timeout"
-The initial timeout value is 45 seconds. Use the \fB-t\fR parameter to change
-the initial timeout value.
-.sp
-.LP
-To change the timeout value for the next expect string, the following example
-can be used:
-.sp
-.in +2
-.nf
-\&''"AT&F
- OK ATDT5551212
- CONNECT \ec
- TIMEOUT 10
- ogin:--ogin: username
- TIMEOUT 5
- assword: hello2u2
-.fi
-.in -2
-
-.sp
-.LP
-The example changes the timeout to ten seconds when it expects the login:
-prompt. The timeout is changed to five seconds when it looks for the password
-prompt.
-.sp
-.LP
-Once changed, the timeout value remains in effect until it is changed again.
-.SS " EOT"
-The EOT special reply string instructs the \fBchat\fR program to send an EOT
-character to the remote. This is equivalent to using ^D\ec as the reply string.
-The EOT string normally indicates the end-of-file character sequence. A return
-character is not sent following the EOT. The EOT sequence can embedded into the
-send string using the sequence ^D.
-.SS " BREAK"
-The BREAK special reply string sends a break condition. The break is a special
-transmitter signal. Many UNIX systems handle break by cycling through available
-bit rates, and sending break is often needed when the remote system does not
-support autobaud. BREAK is equivalent to using \eK\ec as the reply string.
-You embed the break sequence into the send string using the \eK sequence.
-.SS "Escape Sequences"
-Expect and reply strings can contain escape sequences. Reply strings accept all
-escape sequences, while expect strings accept most sequences. A list of escape
-sequences is presented below. Sequences that are not accepted by expect strings
-are indicated.
-.sp
-.ne 2
-.na
-\fB\fB\&''\fR \fR
-.ad
-.RS 10n
-Expects or sends a null string. If you send a null string, \fBchat\fR sends
-the return character. If you expect a null string, \fBchat\fR proceeds to the
-reply string without waiting. This sequence can be a pair of apostrophes or
-quote mark characters.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\eb\fR \fR
-.ad
-.RS 10n
-Represents a backspace character.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\ec\fR \fR
-.ad
-.RS 10n
-Suppresses the newline at the end of the reply string. This is the only method
-to send a string without a trailing return character. This sequence must be at
-the end of the send string. For example, the sequence hello\ec will simply send
-the characters h, e, l, l, o. (Not valid in expect.)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\ed\fR \fR
-.ad
-.RS 10n
-Delay for one second. The program uses \fBsleep\fR(1) which delays to a maximum
-of one second. (Not valid in expect.)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\eK\fR \fR
-.ad
-.RS 10n
-Insert a BREAK. (Not valid in expect.)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\en\fR \fR
-.ad
-.RS 10n
-Send a newline or linefeed character.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\eN\fR \fR
-.ad
-.RS 10n
-Send a null character. The same sequence may be represented by \e0. (Not valid
-in expect.)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\ep\fR \fR
-.ad
-.RS 10n
-Pause for 1/10th of a second. (Not valid in expect.)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\eq\fR \fR
-.ad
-.RS 10n
-Suppress writing the string to syslog. The string ?????? is written to the log
-in its place. (Not valid in expect.)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\er\fR \fR
-.ad
-.RS 10n
-Send or expect a carriage return.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\es\fR \fR
-.ad
-.RS 10n
-Represents a space character in the string. Can be used when it is not
-desirable to quote the strings which contains spaces. The sequence 'HI\ TIM'
-and HI\esTIM are the same.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\et\fR \fR
-.ad
-.RS 10n
-Send or expect a tab character.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\eT\fR \fR
-.ad
-.RS 10n
-Send the phone number string as specified with the \fB-T\fR option. (Not valid
-in expect.)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\eU\fR \fR
-.ad
-.RS 10n
-Send the phone number 2 string as specified with the \fB-U\fR option. (Not
-valid in expect.)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\e\e\fR \fR
-.ad
-.RS 10n
-Send or expect a backslash character.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\eddd\fR \fR
-.ad
-.RS 10n
-Collapse the octal digits (ddd) into a single ASCII character and send that
-character. (\e000 is not valid in an expect string.)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB^C\fR \fR
-.ad
-.RS 10n
-Substitute the sequence with the control character represented by C. For
-example, the character DC1 (17) is shown as ^Q. (Some characters are not valid
-in expect.)
-.RE
-
-.SH ENVIRONMENT VARIABLES
-Environment variables are available within \fBchat\fR scripts if the \fB-E\fR
-option is specified on the command line. The metacharacter \fB$\fR introduces
-the name of the environment variable to substitute. If the substitution fails
-because the requested environment variable is not set, nothing is replaced for
-the variable.
-.SH EXIT STATUS
-The \fBchat\fR program terminates with the following completion codes:
-.sp
-.ne 2
-.na
-\fB\fB0\fR \fR
-.ad
-.RS 10n
-Normal program termination. Indicates that the script was executed without
-error to normal conclusion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB1\fR \fR
-.ad
-.RS 10n
-One or more of the parameters are invalid or an expect string was too large for
-the internal buffers. Indicates that the program was not properly executed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB2\fR \fR
-.ad
-.RS 10n
-An error occurred during the execution of the program. This may be due to a
-read or write operation failing or \fBchat\fR receiving a signal such as
-SIGINT.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB3\fR \fR
-.ad
-.RS 10n
-A timeout event occurred when there was an expect string without having a
-"-subsend" string. This indicates that you may not have programmed the script
-correctly for the condition or that an unexpected event occurred and the
-expected string could not be found.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB4\fR \fR
-.ad
-.RS 10n
-The first string marked as an ABORT condition occurred.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB5\fR \fR
-.ad
-.RS 10n
-The second string marked as an ABORT condition occurred.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB6\fR \fR
-.ad
-.RS 10n
-The third string marked as an ABORT condition occurred.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB7\fR \fR
-.ad
-.RS 10n
-The fourth string marked as an ABORT condition occurred.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\&...\fR \fR
-.ad
-.RS 10n
-The other termination codes are also strings marked as an ABORT condition.
-.RE
-
-.sp
-.LP
-To determine which event terminated the script, use the termination code. It is
-possible to decide if the string "BUSY" was received from the modem versus "NO
-DIALTONE." While the first event may be retried, the second probably will not
-succeed during a retry.
-.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-\fBsleep\fR(1), \fBuucp\fR(1C), \fBpppd\fR(1M), \fBuucico\fR(1M),
-\fBsyslog\fR(3C), \fBattributes\fR(5)
-.sp
-.LP
-Additional information on \fBchat\fR scripts are available with UUCP
-documentation. The \fBchat\fR script format was taken from scripts used by the
-\fBuucico\fR program.
diff --git a/usr/src/man/man1m/check-hostname.1m b/usr/src/man/man1m/check-hostname.1m
deleted file mode 100644
index a69698b84c..0000000000
--- a/usr/src/man/man1m/check-hostname.1m
+++ /dev/null
@@ -1,72 +0,0 @@
-'\" te
-.\" Copyright (c) 2006 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH CHECK-HOSTNAME 1M "Mar 8, 2006"
-.SH NAME
-check-hostname \- check if sendmail can determine the system's fully-qualified
-host name
-.SH SYNOPSIS
-.LP
-.nf
-\fB /usr/sbin/check-hostname\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBcheck-hostname\fR script is a migration aid for \fBsendmail\fR(1M). This
-script tries to determine the local host's fully-qualified host name (FQHN) in
-a manner similar to \fBsendmail\fR(1M). If \fBcheck-hostname\fR is able to
-determine the \fBFQHN\fR of the local host, it reports success. Otherwise,
-\fBcheck-hostname\fR reports how to reconfigure the system so that the
-\fBFQHN\fR can be properly determined.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/hosts\fR\fR
-.ad
-.RS 22n
-Host name database
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/nsswitch.conf\fR\fR
-.ad
-.RS 22n
-Name service switch configuration file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/resolv.conf\fR\fR
-.ad
-.RS 22n
-Configuration file for name server routines
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBdomainname\fR(1M), \fBsendmail\fR(1M), \fBhosts\fR(4), \fBattributes\fR(5)
diff --git a/usr/src/man/man1m/check-permissions.1m b/usr/src/man/man1m/check-permissions.1m
deleted file mode 100644
index d5c86ff0bf..0000000000
--- a/usr/src/man/man1m/check-permissions.1m
+++ /dev/null
@@ -1,99 +0,0 @@
-'\" te
-.\" Copyright (c) 2003 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH CHECK-PERMISSIONS 1M "Nov 10, 2003"
-.SH NAME
-check-permissions \- check permissions on mail rerouting files
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/check-permissions\fR [\fIlogin\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBcheck-permissions\fR script is intended as a migration aid for
-\fBsendmail\fR(1M). It checks the \fB/etc/mail/sendmail.cf\fR file for all
-configured alias files, and checks the alias files for \fB:include:\fR files.
-It also checks for certain \fB\&.forward\fR files. For each file that
-\fBcheck-permissions\fR checks, it verifies that none of the parent directories
-are group- or world-writable. If any directories are overly permissive, it is
-reported. Otherwise it reports that no unsafe directories were found.
-.sp
-.LP
-As to which \fB\&.forward\fR files are checked, it depends on the arguments
-included on the command line. If no argument is given, the current user's home
-directory is checked for the presence of a \fB\&.forward\fR file. If any
-arguments are given, they are assumed to be valid logins, and the home
-directory of each one is checked.
-.sp
-.LP
-If the special argument \fBALL\fR is given, the \fBpasswd\fR entry in the
-\fB/etc/nsswitch.conf\fR file is checked, and all password entries that can be
-obtained through the switch file are checked. In large domains, this can be
-time-consuming.
-.SH OPERANDS
-.sp
-.LP
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fB\fIlogin\fR\fR
-.ad
-.RS 9n
-Where \fIlogin\fR is a valid user name, checks the home directory for
-\fIlogin\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBALL\fR\fR
-.ad
-.RS 9n
-Checks the home directory of \fBall\fR users.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/mail/sendmail.cf\fR\fR
-.ad
-.RS 25n
-Defines environment for \fBsendmail\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/mail/aliases\fR\fR
-.ad
-.RS 25n
-Ascii mail aliases file
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBgetent\fR(1M), \fBsendmail\fR(1M), \fBaliases\fR(4), \fBattributes\fR(5)
diff --git a/usr/src/man/man1m/chroot.1m b/usr/src/man/man1m/chroot.1m
deleted file mode 100644
index 1c58398f24..0000000000
--- a/usr/src/man/man1m/chroot.1m
+++ /dev/null
@@ -1,133 +0,0 @@
-'\" te
-.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 1989 AT&T
-.\"
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.\"
-.\" Portions Copyright 2021 OmniOS Community Edition (OmniOSce) Association.
-.\"
-.Dd March 18, 2021
-.Dt CHROOT 1M
-.Os
-.Sh NAME
-.Nm chroot
-.Nd change root directory for a command
-.Sh SYNOPSIS
-.Nm
-.Ar newroot
-.Ar command
-.Sh DESCRIPTION
-The
-.Nm
-utility causes
-.Ar command
-to be executed relative to
-.Ar newroot .
-The meaning of any initial slash
-.Pq /
-in the path names is changed to
-.Ar newroot
-for
-.Ar command
-and any of its child processes.
-Upon execution, the initial working directory is
-.Ar newroot .
-.Pp
-Notice that redirecting the output of
-.Ar command
-to a file, such as in:
-.Pp
-.D1 Nm chroot Ar newroot Ar command Sy > Pa xyz
-.Pp
-will create the file
-.Pa xyz
-relative to the original root of
-.Ar command ,
-not the new one.
-.Pp
-The new root path name is always relative to the current root.
-Even if a
-.Nm
-is currently in effect, the
-.Ar newroot
-argument is relative to the current root of the running process.
-.Pp
-This command can be run only by the super-user.
-.Sh EXIT STATUS
-The exit status of
-.Nm
-is the exit status of
-.Ar command .
-.Sh OPERANDS
-The following operands are supported:
-.Bl -tag -width Ar
-.It Ar newroot
-The new root directory.
-.It Ar command
-The command to be executed relative to
-.Ar newroot .
-.El
-.Sh EXAMPLES
-.Sy Example 1
-Using the
-.Nm
-Utility
-.Pp
-The
-.Nm
-utility provides an easy way to extract
-.Sy tar
-files
-.Pq see Xr tar 1
-written with absolute filenames to a different location.
-It is necessary to copy the shared libraries used by
-.Sy tar
-.Pq see Xr ldd 1
-to the
-.Ar newroot
-filesystem.
-.Bd -literal -offset indent
-example# mkdir -p /tmp/lib /tmp/usr/lib
-example# cd /lib && cp ld.so.1 \e
- libavl.so.1 libc.so.1 libcmdutils.so.1 libcustr.so.1 \e
- libm.so.2 libmd.so.1 libmp.so.2 libnsl.so.1 \e
- libnvpair.so.1 libsec.so.1 libsecdb.so.1 libtsol.so.2 \e
- libuutil.so.1 /tmp/lib/
-example# cp /usr/lib/libidmap.so.1 /tmp/usr/lib/
-example# cp /usr/bin/tar /tmp
-example# dd if=/dev/rmt/0 | chroot /tmp tar xvf -
-.Ed
-.Sh SEE ALSO
-.Xr cd 1 ,
-.Xr ldd 1 ,
-.Xr tar 1 ,
-.Xr chroot 2 ,
-.Xr ttyname 3C ,
-.Xr attributes 5
-.Sh NOTES
-Exercise extreme caution when referencing device files in the new root file
-system.
-.Pp
-References by routines such as
-.Xr ttyname 3C
-to
-.Dv stdin ,
-.Dv stdout ,
-and
-.Dv stderr
-will find that the device associated with the file descriptor is unknown after
-.Nm
-is run.
diff --git a/usr/src/man/man1m/clear_locks.1m b/usr/src/man/man1m/clear_locks.1m
deleted file mode 100644
index 3cf88bc6d7..0000000000
--- a/usr/src/man/man1m/clear_locks.1m
+++ /dev/null
@@ -1,94 +0,0 @@
-'\" te
-.\" Copyright (c) 1996, Sun Microsystems, Inc.
-.\" All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH CLEAR_LOCKS 1M "Oct 6, 2004"
-.SH NAME
-clear_locks \- clear locks held on behalf of an NFS client
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/clear_locks\fR [\fB-s\fR] \fIhostname\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBclear_locks\fR command removes all file, record, and share locks created
-by the \fIhostname\fR and held on the current host, regardless of which process
-created or owns the locks.
-.sp
-.LP
-This command can be run only by the super-user.
-.sp
-.LP
-This command should only be used to repair the rare case of a client crashing
-and failing to clear held locks. Clearing locks held by an active client may
-cause applications to fail in an unexpected manner.
-.SH OPTIONS
-.sp
-.ne 2
-.na
-\fB\fB-s\fR\fR
-.ad
-.RS 6n
-Remove all locks created by the current machine and held by the server
-\fIhostname\fR.
-.RE
-
-.SH OPERANDS
-.sp
-.LP
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fB\fIhostname\fR\fR
-.ad
-.RS 12n
-name of host server
-.RE
-
-.SH EXIT STATUS
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 5n
-Successful operation.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB1\fR\fR
-.ad
-.RS 5n
-If not root.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB2\fR\fR
-.ad
-.RS 5n
-Usage error.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB3\fR\fR
-.ad
-.RS 5n
-If unable to contact server (\fBRPC\fR).
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBfcntl\fR(2), \fBattributes\fR(5)
diff --git a/usr/src/man/man1m/clinfo.1m b/usr/src/man/man1m/clinfo.1m
deleted file mode 100644
index 4eb59dfa9c..0000000000
--- a/usr/src/man/man1m/clinfo.1m
+++ /dev/null
@@ -1,83 +0,0 @@
-'\" te
-.\" Copyright (c) 2002, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH CLINFO 1M "Mar 12, 2002"
-.SH NAME
-clinfo \- display cluster information
-.SH SYNOPSIS
-.LP
-.nf
-\fBclinfo\fR [\fB-nh\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBclinfo\fR command displays cluster configuration information about the
-node from which the command is executed.
-.sp
-.LP
-Without arguments, \fBclinfo\fR returns an exit status of \fB0\fR if the node
-is configured and booted as part of a cluster. Otherwise, \fBclinfo\fR returns
-an exit status of \fB1\fR.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-h\fR\fR
-.ad
-.RS 6n
-Displays the highest node number allowed to be configured. This is different
-from the maximum number of nodes supported in a given cluster. The current
-highest configured node number can change immediately after the command returns
-since new nodes can be dynamically added to a running cluster.
-.sp
-For example, \fBclinfo\fR \fB-h\fR might return \fB64\fR, meaning that the
-highest number you can use to identify a node is \fB64\fR. See the \fISun
-Cluster 3.0 System Administration Guide\fR for a description of utilities you
-can use to determine the number of nodes in a cluster.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR\fR
-.ad
-.RS 6n
-Prints the number of the node from which \fBclinfo\fR is executed.
-.RE
-
-.SH EXIT STATUS
-.sp
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 5n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB1\fR\fR
-.ad
-.RS 5n
-An error occurred.
-.sp
-This is usually because the node is not configured or booted as part of a
-cluster.
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBattributes\fR(5)
diff --git a/usr/src/man/man1m/clri.1m b/usr/src/man/man1m/clri.1m
deleted file mode 100644
index 43fa71abac..0000000000
--- a/usr/src/man/man1m/clri.1m
+++ /dev/null
@@ -1,99 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 1996, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH CLRI 1M "Sep 16, 1996"
-.SH NAME
-clri, dcopy \- clear inode
-.SH SYNOPSIS
-.LP
-.nf
-\fBclri\fR [\fB-F\fR \fIFSType\fR] [\fB-V\fR] \fIspecial\fR \fIi-number\fR
-.fi
-
-.LP
-.nf
-\fBdcopy\fR [\fB-F\fR \fIFSType\fR] [\fB-V\fR] \fIspecial\fR \fIi-number\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBclri\fR writes zeros on the inodes with the decimal \fIi-number\fR on the
-file system stored on \fIspecial\fR. After \fBclri\fR, any blocks in the
-affected file show up as missing in an \fBfsck\fR(1M) of \fIspecial\fR.
-.sp
-.LP
-Read and write permission is required on the specified file system device. The
-inode becomes allocatable.
-.sp
-.LP
-The primary purpose of this routine is to remove a file that for some reason
-appears in no directory. If it is used to zap an inode that does appear in a
-directory, care should be taken to track down the entry and remove it.
-Otherwise, when the inode is reallocated to some new file, the old entry will
-still point to that file. At that point, removing the old entry will destroy
-the new file. The new entry will again point to an unallocated inode, so the
-whole cycle is likely to be repeated again and again.
-.sp
-.LP
-\fBdcopy\fR is a symbolic link to \fBclri\fR.
-.SH OPTIONS
-.sp
-.ne 2
-.na
-\fB\fB-F\fR\fI FSType\fR\fR
-.ad
-.RS 13n
-Specify the \fIFSType\fR on which to operate. The \fIFSType\fR should either
-be specified here or be determinable from \fB/etc/vfstab\fR by matching
-\fIspecial\fR with an entry in the table, or by consulting
-\fB/etc/default/fs\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-V\fR\fR
-.ad
-.RS 13n
-Echo the complete command line, but do not execute the command. The command
-line is generated by using the options and arguments provided by the user and
-adding to them information derived from \fB/etc/vfstab\fR. This option should
-be used to verify and validate the command line.
-.RE
-
-.SH USAGE
-.sp
-.LP
-See \fBlargefile\fR(5) for the description of the behavior of \fBclri\fR and
-\fBdcopy\fR when encountering files greater than or equal to 2 Gbyte ( 2^31
-bytes).
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/default/fs\fR\fR
-.ad
-.RS 19n
-Default local file system type
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/vfstab\fR\fR
-.ad
-.RS 19n
-List of default parameters for each file system
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBfsck\fR(1M), \fBvfstab\fR(4), \fBattributes\fR(5), \fBlargefile\fR(5)
-.SH NOTES
-.sp
-.LP
-This command might not be supported for all \fIFSTypes\fR.
diff --git a/usr/src/man/man1m/connstat.1m b/usr/src/man/man1m/connstat.1m
deleted file mode 100644
index e87edbe3eb..0000000000
--- a/usr/src/man/man1m/connstat.1m
+++ /dev/null
@@ -1,399 +0,0 @@
-.\"
-.\" CDDL HEADER START
-.\"
-.\" This file and its contents are supplied under the terms of the
-.\" Common Development and Distribution License ("CDDL"), version 1.0.
-.\" You may only use this file in accordance with the terms of version
-.\" 1.0 of the CDDL.
-.\"
-.\" A full copy of the text of the CDDL should have accompanied this
-.\" source. A copy of the CDDL is also available via the Internet at
-.\" http://www.illumos.org/license/CDDL.
-.\"
-.\" CDDL HEADER END
-.\"
-.\"
-.\" Copyright (c) 2016 by Delphix. All rights reserved.
-.\" Copyright 2019 Joyent, Inc.
-.\"
-.Dd August 15, 2019
-.Dt CONNSTAT 1M
-.Os
-.Sh NAME
-.Nm connstat
-.Nd report TCP connection statistics
-.Sh SYNOPSIS
-.Nm
-.Op Fl eLP
-.Op Fl 4 Ns | Ns Fl 6
-.Op Fl T Sy d Ns | Ns Sy u
-.Op Fl F Ar filter
-.Op Fl i Ar interval
-.Op Fl c Ar count
-.Op Fl o Ar field Ns Oo , Ns Ar field Oc Ns ...
-.Sh DESCRIPTION
-The
-.Nm
-command reports TCP connection statistics in tabular form.
-Each row of the table represents the activity of one connection.
-The
-.Nm
-command adds virtually no overhead to run as it is aggregating statistics that
-are always collected in the kernel.
-.Pp
-With no arguments,
-.Nm
-prints a single report containing all TCP connections, and includes a basic
-set of fields representing IP address and port information, as well as connection
-state.
-The
-.Fl o
-flag can be used to specify which fields to display, and other arguments to
-filter the set of connections included in the output.
-.Sh OPTIONS
-The arguments are as follows:
-.Bl -tag -width ""
-.It Fl 4 , Fl -ipv4
-Only displays IPv4 connections.
-.It Fl 6 , Fl -ipv6
-Only displays IPv6 connections
-.It Fl c Ar count , Fl -count Ns = Ns Ar count
-Print a specified number of reports before exiting.
-This is used in conjunction with
-.Fl i .
-.It Fl e , Fl -established
-Only display connections that are in state ESTABLISHED.
-This is equivalent to including
-.Sy state=ESTABLISHED
-in the filter argument to the
-.Fl F
-option.
-.It Fl F Ar filter , Fl -filter Ns = Ns Ar filter
-Only display connections that match the filter argument provided.
-The format of the filter is:
-.Pp
-.Ar field Ns = Ns Ar value Ns Oo , Ns Ar field Ns = Ns Ar value Oc Ns ...
-.Pp
-Fields that can currently be filtered are
-.Ar laddr , Ar lport , Ar raddr , Ar rport , and Ar state .
-See the
-.Sx Fields
-section for a description of these fields.
-The filter matches a connection if all of the filter elements match, and a
-field must only appears once in the filter.
-.It Fl i Ar interval , Fl -interval Ns = Ns Ar interval
-Specify an output interval in seconds.
-For each interval, a report containing all connections appropriate given other
-command-line options is printed.
-.It Fl L , Fl -no-loopback
-Exclude connections to the loopback address.
-.It Fl o Ar fields , Fl -output Ns = Ns Ar fields
-Restrict the output to the specified comma-delimited list of field names.
-See the
-.Sx Fields
-section for information about possible fields.
-.It Fl P , Fl -parsable
-Display using a stable, machine-parsable output format.
-The
-.Fl o
-flag must also be given to specify which fields to output and their order.
-Each line of output will consist of comma-delimited (,) fields,
-and no header will be emittted.
-When also using the
-.Fl T
-option, lines indicating the current time will begin with
-.Dq "= " .
-See
-.Sx Example 4
-for an example of how to process parsable output.
-.It Fl T Sy d Ns | Ns Sy u , Fl -timestamp Ns = Ns Sy d Ns | Ns Sy u
-Print a timestamp before each block of output.
-.Pp
-Specify
-.Sy u
-for a printed representation of the internal representation of time (see
-.Xr time 2 Ns ).
-Specify
-.Sy d
-for standard date format (see
-.Xr date 1 Ns ).
-.El
-.Ss Fields
-The following fields are supported.
-Field names are case insensitive.
-Unless otherwise indicated, the values of fields that represent a count (e.g.
-bytes or segments) are cumulative since the connection was established.
-Some of these fields refer to data segments, which are segments that contain
-non-zero amount of data.
-All sizes are in bytes.
-.Bl -tag -width "inunorderbytes"
-.It Sy cwnd
-The size of the local TCP congestion window at this instant.
-.It Sy inbytes
-The number of data bytes received.
-This does not include duplicate bytes received.
-.It Sy insegs
-The number of data segments received.
-This does not include duplicate segments received.
-.It Sy inunorderbytes
-The number of data bytes that were received out of order.
-.It Sy inunordersegs
-The number of data segments that were received out of order.
-.It Sy laddr
-The local IP address.
-.It Sy lport
-The local TCP port.
-.It Sy mss
-The maximum TCP segment size for this connection.
-.It Sy outbytes
-The number of data bytes sent.
-This does not include retransmitted bytes counted by
-.Sy retransbytes .
-.It Sy outsegs
-The number of data segments sent.
-This does not include segments containing retransmitted bytes counted by
-.Sy retranssegs .
-.It Sy raddr
-The remote IP address.
-.It Sy retransbytes
-The number of data bytes retransmitted.
-.It Sy retranssegs
-The number of data segments sent that contained retransmitted bytes.
-.It Sy rport
-The remote TCP port.
-.It Sy rto
-The current retransmission timeout in milliseconds.
-.It Sy rtt
-The current smoothed round-trip time to the peer in microseconds.
-The smoothed RTT average algorithm used is as described in RFC 6298.
-.It Sy rttvar
-The current smoothed variation of the round-trip time to the peer in
-microseconds.
-.It Sy rttc
-The number of times that a round-trip sample was added to
-.Sy rtts .
-See
-.Sy rtts
-for a description of how these two fields can be used together to calculate the
-average round-trip over a given period.
-.It Sy rtts
-The sum of all round-trip samples taken over the lifetime of the connection in
-microseconds.
-Each time TCP updates the value of
-.Sy rtt
-with a new sample, that sample's value is added to
-.Sy rtts .
-To calculate the average round-trip over a given period (e.g. between T1 and T2),
-take samples of
-.Sy rtts
-and
-.Sy rttc
-at T1 and T2, and calculate
-.br
-((
-.Sy rtts Ns
-_T2 -
-.Sy rtts Ns
-_T1 ) / (
-.Sy rttc Ns
-_T2 -
-.Sy rttc Ns
-_T1 )).
-.br
-See
-.Sx Example 4
-for an example of how this can be done programmatically from a shell script.
-.It Sy rwnd
-The size of the local TCP receive window at this instant.
-.It Sy state
-The TCP connection state.
-Possible values are:
-.Bl -tag -width "SYN_RECEIVED"
-.It Sy BOUND
-Bound, ready to connect or listen.
-.It Sy CLOSED
-Closed.
-The local endpoint (e.g. socket) is not being used.
-.It Sy CLOSING
-Closed, but still waiting for a termination acknowledgment from the peer.
-.It Sy CLOSE_WAIT
-The peer has shutdown; waiting for the local endpoint to close.
-.It Sy ESTABLISHED
-Connection has been established and data can be transferred.
-.It Sy FIN_WAIT_1
-Local endpoint is closed, but waiting for termination acknowledgment from the
-peer.
-.It Sy FIN_WAIT_2
-Local endpoint is closed, but waiting for a termination request from the peer.
-.It Sy IDLE
-The local endpoint (e.g. socket) has been opened, but is not bound.
-.It Sy LAST_ACK
-The remote endpoint has terminated, and the local endpoint has sent a termination
-request.
-The acknowledgment for this request has not been received.
-.It Sy LISTEN
-Listening for incoming connections.
-.It Sy SYN_RECEIVED
-Initial connection request has been received and acknowledged, and a connection
-request has been sent but not yet acknowledged.
-.It Sy SYN_SENT
-A connection establishment request has been sent but not yet acknowledged.
-.It Sy TIME_WAIT
-Waiting for time to pass after having sent an acknowledgment for the peer's
-connection termination request.
-.El
-.Pp
-See RFC 793 for a more complete understanding of the TCP protocol and TCP
-connection states.
-.It Sy suna
-The number of unacknowledged bytes outstanding at this instant.
-.It Sy swnd
-The size of the local TCP send window (the peer's receive window) at this
-instant.
-.It Sy unsent
-The number of unsent bytes in the local TCP transmit queue at this instant.
-.El
-.Sh EXIT STATUS
-The
-.Nm
-utility exits 0 on success, or 1 if an error occurs.
-.Sh EXAMPLES
-.Bl -tag -width ""
-.It Sy Example 1 List established connections.
-By default, connstat lists basic connection details.
-Using the
-.Fl e
-option allows the user to get a quick glance of established connections.
-.Bd -literal
-$ connstat -e
- LADDR LPORT RADDR RPORT STATE
- 10.43.37.172 51275 172.16.105.4 389 ESTABLISHED
- 10.43.37.172 22 172.16.98.16 62270 ESTABLISHED
- 10.43.37.172 1020 172.16.100.162 2049 ESTABLISHED
- 10.43.37.172 1019 10.43.11.64 2049 ESTABLISHED
- 10.43.37.172 22 172.16.98.16 61520 ESTABLISHED
- 10.43.37.172 80 10.43.16.132 59467 ESTABLISHED
-.Ed
-.It Sy Example 2 Show one connection's I/O stats every second
-The
-.Fl F
-option is used to filter a specific connection,
-.Fl o
-is used to output specific fields, and
-.Fl i
-to provide the output interval in seconds.
-.Bd -literal
-$ connstat -F lport=22,rport=49675,raddr=172.16.168.30 \e
- -o inbytes,outbytes -i 1
- INBYTES OUTBYTES
- 9589 18101
- INBYTES OUTBYTES
- 9589 18341
- INBYTES OUTBYTES
- 9589 18501
- INBYTES OUTBYTES
- 9589 18661
- ...
-.Ed
-.It Sy Example 3 Understanding the bottleneck for a given connection
-Understanding the transmit bottleneck for a connection requires knowing the
-size of the congestion window, whether the window is full, and the round-trip
-time to the peer.
-The congestion window is full when
-.Sy suna
-is equal to
-.Sy cwnd .
-If the window is full, then the throughput is limited by the size of the window
-and the round-trip time.
-In that case, knowing these two values is critical.
-Either the window is small because of retransmissions, or the round-trip
-latency is high, or both.
-In the example below, the window is small due to high congestion or an
-unreliable network.
-.Bd -literal
-$ connstat -F lport=41934,rport=50001 \e
- -o outbytes,suna,cwnd,unsent,retransbytes,rtt -T d -i 1
-July 7, 2016 11:04:40 AM EDT
- OUTBYTES SUNA CWND UNSENT RETRANSBYTES RTT
- 1647048093 47784 47784 3017352 3701844 495
-July 7, 2016 11:04:41 AM EDT
- OUTBYTES SUNA CWND UNSENT RETRANSBYTES RTT
- 1660720109 41992 41992 1535032 3765556 673
-July 7, 2016 11:04:42 AM EDT
- OUTBYTES SUNA CWND UNSENT RETRANSBYTES RTT
- 1661875613 26064 26064 4311688 3829268 571
-July 7, 2016 11:04:43 AM EDT
- OUTBYTES SUNA CWND UNSENT RETRANSBYTES RTT
- 1681478637 41992 41992 437304 3932076 1471
-July 7, 2016 11:04:44 AM EDT
- OUTBYTES SUNA CWND UNSENT RETRANSBYTES RTT
- 1692028765 44888 44888 1945800 4014612 921
-\&...
-.Ed
-.It Sy Example 4 Calculating average RTT over intervals
-As described in the
-.Sx Fields
-section, the
-.Sy rtts
-and
-.Sy rttc
-fields can be used to calculate average RTT over a period of time.
-The following example combines machine parsable output with these fields to do
-this programmatically.
-The script:
-.Bd -literal
-#!/bin/bash
-
-i=0
-connstat -P -F lport=41934,rport=50001 -o rttc,rtts -i 1 | \e
- while IFS=, read rttc[$i] rtts[$i]; do
- if [[ $i != 0 ]]; then
- let rtt="(${rtts[$i]} - ${rtts[$i - 1]}) / \e
- (${rttc[$i]} - ${rttc[$i - 1]})"
- print "avg rtt = ${rtt}us"
- fi
- ((i++))
-done
-.Ed
-.Pp
-The output:
-.Bd -literal
-\&...
-avg rtt = 992us
-avg rtt = 829us
-avg rtt = 712us
-avg rtt = 869us
-\&...
-.Ed
-.It Sy Example 5 Show HTTP server connections in TIME_WAIT state
-Connections accumulating in TIME_WAIT state can sometimes be an issue, as these
-connections linger and take up port number space while their time wait timer
-is ticking.
-.Bd -literal
-$ connstat -F state=time_wait,lport=80
- LADDR LPORT RADDR RPORT STATE
- 10.43.37.172 80 172.16.168.30 56067 TIME_WAIT
- 10.43.37.172 80 172.16.168.30 56068 TIME_WAIT
- 10.43.37.172 80 172.16.168.30 56070 TIME_WAIT
-.Ed
-.El
-.Sh INTERFACE STABILITY
-The command line options for this command are stable, but the output format
-when not using the
-.Fl P
-option and diagnostic messages are not.
-.Sh SEE ALSO
-.Xr netstat 1M
-.Rs
-.%A J. Postel
-.%B Transmission Control Protocol, STD 7, RFC 793
-.%D September 1981
-.Re
-.Rs
-.%A V. Paxson
-.%A M. Allman
-.%A J. Chu
-.%A M. Sargent
-.%B Computing TCP's Retransmission Timer, RFC 6298
-.%D June 2011
-.Re
diff --git a/usr/src/man/man1m/consadm.1m b/usr/src/man/man1m/consadm.1m
deleted file mode 100644
index 6a173559c5..0000000000
--- a/usr/src/man/man1m/consadm.1m
+++ /dev/null
@@ -1,225 +0,0 @@
-'\" te
-.\" Copyright (c) 2004 Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH CONSADM 1M "Oct 27, 2004"
-.SH NAME
-consadm \- select or display devices used as auxiliary console devices
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/consadm\fR
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/consadm\fR [\fB-a\fR \fIdevice\fR.\|.\|.] [\fB-p\fR]
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/consadm\fR [\fB-d\fR \fIdevice\fR.\|.\|.] [\fB-p\fR]
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/consadm\fR [\fB-p\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBconsadm\fR selects the hardware \fIdevice\fR or devices to be used as
-auxiliary console devices, or displays the current device. Only superusers are
-allowed to make or display auxiliary console device selections.
-.sp
-.LP
-Auxiliary console devices receive copies of \fBconsole\fR messages, and can be
-used as the console during \fBsingle user\fR mode. In particular, they receive
-kernel messages and messages directed to \fB/dev/sysmsg\fR. On Solaris x86
-based systems they can also be used for interaction with the bootstrap.
-.sp
-.LP
-By default, selecting a display device to be used as an auxiliary console
-device selects that device for the duration the system remains up. If the
-administrator needs the selection to persist across reboots the \fB-p\fR option
-can be specified.
-.sp
-.LP
-\fBconsadm\fR runs a daemon in the background, monitoring auxiliary console
-devices. Any devices that are disconnected (hang up, lose carrier) are removed
-from the auxiliary console device list, though not from the persistent list.
-While auxiliary console devices may have been removed from the device list
-receiving copies of \fBconsole\fR messages, those messages will always continue
-to be displayed by the default console device.
-.sp
-.LP
-The daemon will not run if it finds there are not any auxiliary devices
-configured to monitor. Likewise, after the last auxiliary console is removed,
-the daemon will shut itself down. Therefore the daemon persists for only as
-long as auxiliary console devices remain active.
-.sp
-.LP
-See \fBeeprom\fR(1M) for instructions on assigning an auxiliary console device
-as the system console.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-a\fR \fIdevice\fR\fR
-.ad
-.RS 13n
-Adds \fIdevice\fR to the list of auxiliary console devices. Specify
-\fIdevice\fR as the path name to the device or devices to be added to the
-auxiliary console device list.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-d\fR \fIdevice\fR\fR
-.ad
-.RS 13n
-Removes \fIdevice\fR from the list of auxiliary console devices. Specify
-\fIdevice\fR as the path name to the device or devices to be removed from the
-auxiliary console device list.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR\fR
-.ad
-.RS 13n
-Prints the list of auxiliary consoles that will be auxiliary across reboots.
-.sp
-When invoked with the \fB-a\fR or \fB-d\fR options , tells the application to
-make the change persist across reboot.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRAdding to the list of devices that will receive console
-messages
-.sp
-.LP
-The following command adds \fB/dev/term/a\fR to the list of devices that will
-receive console messages.
-
-.sp
-.in +2
-.nf
-example# \fBconsadm -a /dev/term/a\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRRemoving from the list of devices that will receive console
-messages
-.sp
-.LP
-The following command removes \fB/dev/term/a\fR from the list of devices that
-will receive console messages. This includes removal from the persistent list.
-
-.sp
-.in +2
-.nf
-example# \fBconsadm -d -p /dev/term/a\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRPrinting the list of devices selected as auxiliary console
-devices
-.sp
-.LP
-The following command prints the name or names of the device or devices
-currently selected as auxiliary console devices.
-
-.sp
-.in +2
-.nf
-example# \fBconsadm\fR
-.fi
-.in -2
-.sp
-
-.SH ENVIRONMENT VARIABLES
-.sp
-.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
-that affect the execution of \fBconsadm\fR: \fBLC_CTYPE\fR, \fBLC_MESSAGES\fR,
-and \fBNLSPATH\fR.
-.SH EXIT STATUS
-.sp
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 6n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB>\fB0\fR\fR
-.ad
-.RS 6n
-An error occurred.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Stability Level Evolving
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBsvcs\fR(1), \fBeeprom\fR(1M), \fBsvcadm\fR(1M), \fBsyslogd\fR(1M),
-\fBkadb\fR(1M), \fBenviron\fR(5), \fBattributes\fR(5), \fBsmf\fR(5),
-\fBsysmsg\fR(7d), \fBconsole\fR(7d)
-.SH NOTES
-.sp
-.LP
-Auxiliary console devices are not usable for \fBkadb\fR or firmware \fBI/O\fR,
-do not receive panic messages, and do not receive output directed to
-\fB/dev/console\fR.
-.sp
-.LP
-The \fBconsadm\fR service is managed by the service management facility,
-\fBsmf\fR(5), under the service identifier:
-.sp
-.in +2
-.nf
-svc:/system/consadm
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Administrative actions on this service, such as enabling, disabling, or
-requesting restart, can be performed using \fBsvcadm\fR(1M). The service's
-status can be queried using the \fBsvcs\fR(1) command.
diff --git a/usr/src/man/man1m/conv_lp.1m b/usr/src/man/man1m/conv_lp.1m
deleted file mode 100644
index 8463ee775c..0000000000
--- a/usr/src/man/man1m/conv_lp.1m
+++ /dev/null
@@ -1,114 +0,0 @@
-'\" te
-.\" Copyright (c) 1996 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH CONV_LP 1M "Sep 9, 1996"
-.SH NAME
-conv_lp \- convert LP configuration
-.SH SYNOPSIS
-.LP
-.nf
-\fBconv_lp\fR [\fB-d\fR \fIdir\fR] [\fB-f\fR \fIfile\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBconv_lp\fR reads \fBLP\fR printer configuration information from a
-directory and converts it to an output file for use with print client software.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-d\fR\fI dir\fR\fR
-.ad
-.RS 11n
-The root (`\fB / \fR') directory from which \fBLP\fR configuration information
-is read. The default is root (`\fB / \fR').
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR\fI file\fR\fR
-.ad
-.RS 11n
-The output file to which \fBconv_lp\fR writes the converted \fBLP\fR
-configuration information. The default is \fB/etc/printers.conf\fR.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRConverting \fBLP\fR Configuration Information from the Default
-Directory and File
-.sp
-.LP
-The following example converts \fBLP\fR configuration information from
-directory root (\fB/\fR) to file \fB/etc/printers.conf\fR.
-
-.sp
-.in +2
-.nf
-% \fBconv_lp\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRConverting \fBLP\fR Configuration Information From a Specified
-Directory and File
-.sp
-.LP
-The following example converts \fBLP\fR configuration information from
-directory \fB/export/root/client\fR to file
-\fB/export/root/client/etc/printers.conf\fR.
-
-.sp
-.in +2
-.nf
-% \fBconv_lp -d /export/root/client -f\e
- /export/root/client/etc/printers.conf\fR
-.fi
-.in -2
-.sp
-
-.SH EXIT STATUS
-.sp
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 12n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fBnon-zero\fR
-.ad
-.RS 12n
-An error occurred.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/printers.conf\fR\fR
-.ad
-.RS 22n
-System printer configuration database.
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBlpset\fR(1M), \fBprinters.conf\fR(4), \fBattributes\fR(5)
diff --git a/usr/src/man/man1m/conv_lpd.1m b/usr/src/man/man1m/conv_lpd.1m
deleted file mode 100644
index 05efea6f71..0000000000
--- a/usr/src/man/man1m/conv_lpd.1m
+++ /dev/null
@@ -1,155 +0,0 @@
-'\" te
-.\" Copyright (c) 1996 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH CONV_LPD 1M "Sep 9, 1996"
-.SH NAME
-conv_lpd \- convert LPD configuration
-.SH SYNOPSIS
-.LP
-.nf
-\fBconv_lpd\fR [\fB-c\fR printers | \fB-c\fR printcap] [\fB-n\fR] \fIfile\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBconv_lpd\fR converts \fBLPD\fR printer configuration information from
-\fIfile\fR to a \fBprinters.conf\fR or a \fBprintcap\fR file (see
-\fBprinters.conf\fR(4)). \fIfile\fR specifies the name of the input file, and
-can be either in \fBprinters.conf\fR or \fBprintcap\fR format. If \fIfile\fR
-is in \fBprinters.conf\fR format, it converts it to a \fBprintcap\fR file. If
-\fIfile\fR is in \fBprintcap\fR format, it converts it to a
-\fBprinters.conf\fR file.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB\fR\fB-c\fR\fB printers \fR|\fB \fR\fB-c\fR\fB printcap\fR\fR
-.ad
-.RS 29n
-Specifies the type of output file produced by the conversion. \fB-c\fR
-\fBprinters\fR converts to a \fBprinters.conf\fR file. \fB-c\fR \fBprintcap\fR
-converts to a \fBprintcap\fR file. \fB-c\fR \fBprinters\fR is the default.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR\fR
-.ad
-.RS 29n
-Preserves the namelist during the conversion.
-.RE
-
-.SH OPERANDS
-.sp
-.LP
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fB\fIfile\fR\fR
-.ad
-.RS 8n
-The file to be converted.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRConverting a \fBprintcap\fR file to a \fBprinters.conf\fR
-file.
-.sp
-.LP
-The following example converts a \fBprintcap\fR file to a \fBprinters.conf\fR
-file.
-
-.sp
-.in +2
-.nf
-\fBexample% conv_lpd /etc/printcap\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRConverting a \fBprintcap\fR file to a \fBprinters.conf\fR file
-and preserving the namelist.
-.sp
-.LP
-The following example converts a \fBprintcap\fR file to a \fBprinters.conf\fR
-file and preserves the namelist.
-
-.sp
-.in +2
-.nf
-\fBexample% conv_lpd -c printers -n /etc/printcap\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRConverting a \fBprinters.conf\fR file to a \fBprintcap\fR
-file and preserving the namelist.
-.sp
-.LP
-The following example converts a \fBprinters.conf\fR file to a \fBprintcap\fR
-file and preserves the namelist.
-
-.sp
-.in +2
-.nf
-\fBexample% conv_lpd -c printcap -n /etc/printers.conf\fR
-.fi
-.in -2
-.sp
-
-.SH EXIT STATUS
-.sp
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 12n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fBnon-zero\fR
-.ad
-.RS 12n
-An error occurred.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/printers.conf\fR\fR
-.ad
-.RS 22n
-System printer configuration database.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/printcap\fR\fR
-.ad
-.RS 22n
-SunOS 4.\fIx\fR printer capability database.
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBlpset\fR(1M), \fBprinters.conf\fR(4), \fBattributes\fR(5)
diff --git a/usr/src/man/man1m/coreadm.1m b/usr/src/man/man1m/coreadm.1m
deleted file mode 100644
index 3073d5ce8c..0000000000
--- a/usr/src/man/man1m/coreadm.1m
+++ /dev/null
@@ -1,721 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 2008 Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 2021 Oxide Computer Company
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH COREADM 1M "August 3, 2021"
-.SH NAME
-coreadm \- core file administration
-.SH SYNOPSIS
-.nf
-\fBcoreadm\fR [\fB-g\fR \fIpattern\fR] [\fB-G\fR \fIcontent\fR] [\fB-i\fR \fIpattern\fR] [\fB-I\fR \fIcontent\fR]
- [\fB-d\fR \fIoption\fR]... [\fB-e\fR \fIoption\fR]...
-.fi
-
-.LP
-.nf
-\fBcoreadm\fR [\fB-p\fR \fIpattern\fR] [\fB-P\fR \fIcontent\fR] [\fIpid\fR]...
-.fi
-
-.SH DESCRIPTION
-\fBcoreadm\fR specifies the name and location of core files produced by
-abnormally-terminating processes. See \fBcore\fR(4).
-.sp
-.LP
-Only users and roles that belong to the "Maintenance and Repair" RBAC profile
-can execute the first form of the \fBSYNOPSIS\fR. This form configures
-system-wide core file options, including a global core file name pattern and a
-core file name pattern for the \fBinit\fR(1M) process. All settings are saved
-persistently and will be applied at boot.
-.sp
-.LP
-Non-privileged users can execute the second form of the \fBSYNOPSIS\fR. This
-form specifies the file name pattern and core file content that the operating
-system uses to generate a per-process core file.
-.sp
-.LP
-A core file name pattern is a normal file system path name with embedded
-variables, specified with a leading \fB%\fR character. The variables are
-expanded from values that are effective when a core file is generated by the
-operating system. The possible embedded variables are as follows:
-.sp
-.ne 2
-.na
-\fB\fB%d\fR\fR
-.ad
-.sp .6
-.RS 4n
-Executable file directory name, up to a maximum of \fBMAXPATHLEN\fR characters
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB%f\fR\fR
-.ad
-.sp .6
-.RS 4n
-Executable file name, up to a maximum of \fBMAXCOMLEN\fR characters
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB%g\fR\fR
-.ad
-.sp .6
-.RS 4n
-Effective group-\fBID\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB%m\fR\fR
-.ad
-.sp .6
-.RS 4n
-Machine name (\fBuname\fR \fB-m\fR)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB%n\fR\fR
-.ad
-.sp .6
-.RS 4n
-System node name (\fBuname\fR \fB-n\fR)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB%p\fR\fR
-.ad
-.sp .6
-.RS 4n
-Process-\fBID\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB%t\fR\fR
-.ad
-.sp .6
-.RS 4n
-Decimal value of \fBtime\fR(2)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB%u\fR\fR
-.ad
-.sp .6
-.RS 4n
-Effective user-\fBID\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB%z\fR\fR
-.ad
-.sp .6
-.RS 4n
-Name of the zone in which process executed (\fBzonename\fR)
-.RE
-
-.sp
-.ne 2
-.na
-.B %Z
-.ad
-.sp .6
-.RS 4n
-The path to the root of the zone in which process executed
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB%%\fR\fR
-.ad
-.sp .6
-.RS 4n
-Literal \fB%\fR
-.RE
-
-.sp
-.LP
-For example, the core file name pattern \fB/var/cores/core.%f.%p\fR would
-result, for command \fBfoo\fR with process-\fBID\fR \fB1234\fR, in the core
-file name \fB/var/cores/core.foo.1234\fR.
-.sp
-.LP
-A core file content description is specified using a series of tokens to
-identify parts of a process's binary image:
-.sp
-.ne 2
-.na
-\fB\fBanon\fR\fR
-.ad
-.sp .6
-.RS 4n
-Anonymous private mappings, including thread stacks that are not main thread
-stacks
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBctf\fR\fR
-.ad
-.sp .6
-.RS 4n
-CTF type information sections for loaded object files
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdata\fR\fR
-.ad
-.sp .6
-.RS 4n
-Writable private file mappings
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdebug\fR\fR
-.ad
-.sp .6
-.RS 4n
-Debug sections, commonly DWARF. All sections that begin with '.debug_'.
-Note, this does capture non-DWARF related sections that begin with the
-string pattern; however, at this time other debug formats such as STABS
-are not included. Other debug formats would be included here in the
-future.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdism\fR\fR
-.ad
-.sp .6
-.RS 4n
-DISM mappings
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBheap\fR\fR
-.ad
-.sp .6
-.RS 4n
-Process heap
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBism\fR\fR
-.ad
-.sp .6
-.RS 4n
-ISM mappings
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrodata\fR\fR
-.ad
-.sp .6
-.RS 4n
-Read-only private file mappings
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBshanon\fR\fR
-.ad
-.sp .6
-.RS 4n
-Anonymous shared mappings
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBshfile\fR\fR
-.ad
-.sp .6
-.RS 4n
-Shared mappings that are backed by files
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBshm\fR\fR
-.ad
-.sp .6
-.RS 4n
-System V shared memory
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBstack\fR\fR
-.ad
-.sp .6
-.RS 4n
-Process stack
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsymtab\fR\fR
-.ad
-.sp .6
-.RS 4n
-Symbol table sections for loaded object files
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBtext\fR\fR
-.ad
-.sp .6
-.RS 4n
-Readable and executable private file mappings
-.RE
-
-.sp
-.LP
-In addition, you can use the token \fBall\fR to indicate that core files should
-include all of these parts of the process's binary image. You can use the token
-\fBnone\fR to indicate that no mappings are to be included. The \fBdefault\fR
-token indicates inclusion of the system default content
-(\fBstack+heap+shm+ism+dism+text+data+rodata+anon+shanon+ctf+symtab\fR). The
-\fB/proc\fR file system data structures are always present in core files
-regardless of the mapping content.
-.sp
-.LP
-You can use \fB+\fR and \fB-\fR to concatenate tokens. For example, the core
-file content \fBdefault-ism\fR would produce a core file with the default set
-of mappings without any intimate shared memory mappings.
-.sp
-.LP
-The \fBcoreadm\fR command with no arguments reports the current system
-configuration, for example:
-.sp
-.in +2
-.nf
-$ coreadm
- global core file pattern: /var/cores/core.%f.%p
- global core file content: all
- init core file pattern: core
- init core file content: default
- global core dumps: enabled
- per-process core dumps: enabled
- global setid core dumps: enabled
-per-process setid core dumps: disabled
- global core dump logging: disabled
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The \fBcoreadm\fR command with only a list of process-\fBID\fRs reports each
-process's per-process core file name pattern, for example:
-.sp
-.in +2
-.nf
-$ coreadm 278 5678
- 278: core.%f.%p default
- 5678: /home/george/cores/%f.%p.%t all-ism
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Only the owner of a process or a user with the \fBproc_owner\fR privilege can
-interrogate a process in this manner.
-.sp
-.LP
-When a process is dumping core, up to three core files can be produced: one in
-the per-process location, one in the system-wide global location, and, if the
-process was running in a local (non-global) zone, one in the global location
-for the zone in which that process was running. Each core file is generated
-according to the effective options for the corresponding location.
-.sp
-.LP
-When generated, a global core file is created in mode \fB600\fR and owned by
-the superuser. Nonprivileged users cannot examine such files.
-.sp
-.LP
-Ordinary per-process core files are created in mode \fB600\fR under the
-credentials of the process. The owner of the process can examine such files.
-.sp
-.LP
-A process that is or ever has been \fBsetuid\fR or \fBsetgid\fR since its last
-\fBexec\fR(2) presents security issues that relate to dumping core. Similarly,
-a process that initially had superuser privileges and lost those privileges
-through \fBsetuid\fR(2) also presents security issues that are related to
-dumping core. A process of either type can contain sensitive information in its
-address space to which the current nonprivileged owner of the process should
-not have access. If \fBsetid\fR core files are enabled, they are created mode
-\fB600\fR and owned by the superuser.
-.SH OPTIONS
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-d\fR \fIoption\fR...\fR
-.ad
-.sp .6
-.RS 4n
-Disable the specified core file option. See the \fB-e\fR \fIoption\fR for
-descriptions of possible options.
-.sp
-Multiple \fB-e\fR and \fB-d\fR options can be specified on the command line.
-Only users and roles belonging to the "Maintenance and Repair" RBAC profile can
-use this option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-e\fR \fIoption\fR...\fR
-.ad
-.sp .6
-.RS 4n
-Enable the specified core file option. Specify \fIoption\fR as one of the
-following:
-.sp
-.ne 2
-.na
-\fBglobal\fR
-.ad
-.sp .6
-.RS 4n
-Allow core dumps that use global core pattern.
-.RE
-
-.sp
-.ne 2
-.na
-\fBglobal-setid\fR
-.ad
-.sp .6
-.RS 4n
-Allow set-id core dumps that use global core pattern.
-.RE
-
-.sp
-.ne 2
-.na
-\fBlog\fR
-.ad
-.sp .6
-.RS 4n
-Generate a \fBsyslog\fR(3C) message when generation of a global core file is
-attempted.
-.RE
-
-.sp
-.ne 2
-.na
-\fBprocess\fR
-.ad
-.sp .6
-.RS 4n
-Allow core dumps that use per-process core pattern.
-.RE
-
-.sp
-.ne 2
-.na
-\fBproc-setid\fR
-.ad
-.sp .6
-.RS 4n
-Allow set-id core dumps that use per-process core pattern.
-.sp
-Multiple \fB-e\fR and \fB-d\fR options can be specified on the command line.
-Only users and roles belonging to the "Maintenance and Repair" RBAC profile can
-use this option.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-g\fR \fIpattern\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set the global core file name pattern to \fIpattern\fR. The pattern must start
-with a \fB/\fR and can contain any of the special \fB%\fR variables that are
-described in the \fBDESCRIPTION\fR.
-.sp
-Only users and roles belonging to the "Maintenance and Repair" RBAC profile can
-use this option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-G\fR \fIcontent\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set the global core file content to content. You must specify content by using
-the tokens that are described in the \fBDESCRIPTION\fR.
-.sp
-Only users and roles belonging to the "Maintenance and Repair" RBAC profile can
-use this option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-i\fR \fIpattern\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set the default per-process core file name to \fIpattern\fR. This changes the
-per-process pattern for any process whose per-process pattern is still set to
-the default. Processes that have had their per-process pattern set or are
-descended from a process that had its per-process pattern set (using the
-\fB-p\fR option) are unaffected. This default persists across reboot.
-.sp
-Only users and roles belonging to the "Maintenance and Repair" RBAC profile can
-use this option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-I\fR \fIcontent\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set the default per-process core file content to \fIcontent\fR. This changes
-the per-process content for any process whose per-process content is still set
-to the default. Processes that have had their per-process content set or are
-descended from a process that had its per-process content set (using the
-\fB-P\fR option) are unaffected. This default persists across reboot.
-.sp
-Only users and roles belonging to the "Maintenance and Repair" RBAC profile can
-use this option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR \fIpattern\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set the per-process core file name pattern to \fIpattern\fR for each of the
-specified process-\fBID\fRs. The pattern can contain any of the special \fB%\fR
-variables described in the \fBDESCRIPTION\fR and need not begin with \fB/\fR.
-If the pattern does not begin with \fB/\fR, it is evaluated relative to the
-directory that is current when the process generates a core file.
-.sp
-A nonprivileged user can apply the \fB-p\fR option only to processes that are
-owned by that user. A user with the \fBproc_owner\fR privilege can apply the
-option to any process. The per-process core file name pattern is inherited by
-future child processes of the affected processes. See \fBfork\fR(2).
-.sp
-If no process-\fBID\fRs are specified, the \fB-p\fR option sets the per-process
-core file name pattern to \fIpattern\fR on the parent process (usually the
-shell that ran \fBcoreadm\fR).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-P\fR \fIcontent\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set the per-process core file content to \fIcontent\fR for each of the
-specified process-IDs. The content must be specified by using the tokens that
-are described in the \fBDESCRIPTION\fR.
-.sp
-A nonprivileged user can apply the \fB-p\fR option only to processes that are
-owned by that user. A user with the \fBproc_owner\fR privilege can apply the
-option to any process. The per-process core file name pattern is inherited by
-future child processes of the affected processes. See \fBfork\fR(2).
-.sp
-If no process-\fBID\fRs are specified, the \fB-P\fR option sets the per-process
-file content to \fIcontent\fR on the parent process (usually the shell that ran
-\fBcoreadm\fR).
-.RE
-
-.SH OPERANDS
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fB\fIpid\fR\fR
-.ad
-.sp .6
-.RS 4n
-process-\fBID\fR
-.RE
-
-.SH EXAMPLES
-\fBExample 1 \fRSetting the Core File Name Pattern
-.sp
-.LP
-When executed from a user's \fB$HOME/.profile\fR or \fB$HOME/.login\fR, the
-following command sets the core file name pattern for all processes that are
-run during the login session:
-
-.sp
-.in +2
-.nf
-example$ coreadm -p core.%f.%p
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Note that since the process-\fBID\fR is omitted, the per-process core file name
-pattern will be set in the shell that is currently running and is inherited by
-all child processes.
-
-.LP
-\fBExample 2 \fRDumping a User's Files Into a Subdirectory
-.sp
-.LP
-The following command dumps all of a user's core dumps into the \fBcorefiles\fR
-subdirectory of the home directory, discriminated by the system node name. This
-command is useful for users who use many different machines but have a shared
-home directory.
-
-.sp
-.in +2
-.nf
-example$ coreadm -p $HOME/corefiles/%n.%f.%p 1234
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRCulling the Global Core File Repository
-.sp
-.LP
-The following commands set up the system to produce core files in the global
-repository only if the executables were run from \fB/usr/bin\fR or
-\fB/usr/sbin\fR.
-
-.sp
-.in +2
-.nf
-example# mkdir -p /var/cores/usr/bin
-example# mkdir -p /var/cores/usr/sbin
-example# coreadm -G all -g /var/cores/%d/%f.%p.%n
-.fi
-.in -2
-.sp
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/var/cores\fR\fR
-.ad
-.sp .6
-.RS 4n
-Directory provided for global core file storage.
-.RE
-
-.SH EXIT STATUS
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB0\fR
-.ad
-.sp .6
-.RS 4n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB1\fR
-.ad
-.sp .6
-.RS 4n
-A fatal error occurred while either obtaining or modifying the system core file
-configuration.
-.RE
-
-.sp
-.ne 2
-.na
-\fB2\fR
-.ad
-.sp .6
-.RS 4n
-Invalid command-line options were specified.
-.RE
-
-.SH SEE ALSO
-\fBgcore\fR(1), \fBpfexec\fR(1), \fBsvcs\fR(1), \fBinit\fR(1M),
-\fBsvcadm\fR(1M), \fBexec\fR(2), \fBfork\fR(2), \fBsetuid\fR(2), \fBtime\fR(2),
-\fBsyslog\fR(3C), \fBcore\fR(4), \fBprof_attr\fR(4), \fBuser_attr\fR(4),
-\fBattributes\fR(5), \fBsmf\fR(5)
-.SH NOTES
-In a local (non-global) zone, the global settings apply to processes running in
-that zone. In addition, the global zone's apply to processes run in any zone.
-.sp
-.LP
-The term \fBglobal settings\fR refers to settings which are applied to the
-system or zone as a whole, and does not necessarily imply that the settings are
-to take effect in the global zone.
-.sp
-.LP
-The \fBcoreadm\fR service is managed by the service management facility,
-\fBsmf\fR(5), under the service identifier:
-.sp
-.in +2
-.nf
-svc:/system/coreadm:default
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Administrative actions on this service, such as enabling, disabling, or
-requesting restart, can be performed using \fBsvcadm\fR(1M). The service's
-status can be queried using the \fBsvcs\fR(1) command.
-.sp
-.LP
-The \fB-g\fR, \fB-G\fR, \fB-i\fR, \fB-I\fR, \fB-e\fR, and \fB-d\fR options can
-be also used by a user, role, or profile that has been granted both the
-\fBsolaris.smf.manage.coreadm\fR and \fBsolaris.smf.value.coreadm\fR
-authorizations.
diff --git a/usr/src/man/man1m/cpustat.1m b/usr/src/man/man1m/cpustat.1m
deleted file mode 100644
index 3ec2265bde..0000000000
--- a/usr/src/man/man1m/cpustat.1m
+++ /dev/null
@@ -1,346 +0,0 @@
-'\" te
-.\" Copyright (c) 2005, Sun Microsystems, Inc.
-.TH CPUSTAT 1M "April 9, 2016"
-.SH NAME
-cpustat \- monitor system behavior using CPU performance counters
-.SH SYNOPSIS
-.LP
-.nf
-\fBcpustat\fR \fB-c\fR \fIeventspec\fR [\fB-c\fR \fIeventspec\fR]... [\fB-p\fR \fIperiod\fR] [\fB-T\fR u | d ]
- [\fB-sntD\fR] [\fIinterval\fR [\fIcount\fR]]
-.fi
-
-.LP
-.nf
-\fBcpustat\fR \fB-h\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBcpustat\fR utility allows \fBCPU\fR performance counters to be used to
-monitor the overall behavior of the \fBCPU\fRs in the system.
-.sp
-.LP
-If \fIinterval\fR is specified, \fBcpustat\fR samples activity every
-\fIinterval\fR seconds, repeating forever. If a \fIcount\fR is specified, the
-statistics are repeated \fIcount\fR times. If neither are specified, an
-interval of five seconds is used, and there is no limit to the number of
-samples that are taken.
-.SH OPTIONS
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-c\fR \fIeventspec\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies a set of events for the \fBCPU\fR performance counters to monitor.
-The syntax of these event specifications is:
-.sp
-.in +2
-.nf
-[picn=]\fIeventn\fR[,attr[\fIn\fR][=\fIval\fR]][,[picn=]\fIeventn\fR
- [,attr[n][=\fIval\fR]],...,]
-.fi
-.in -2
-.sp
-
-You can use the \fB-h\fR option to obtain a list of available events and
-attributes. This causes generation of the usage message. You can omit an
-explicit counter assignment, in which case \fBcpustat\fR attempts to choose a
-capable counter automatically.
-.sp
-Attribute values can be expressed in hexadecimal, octal, or decimal notation,
-in a format suitable for \fBstrtoll\fR(3C). An attribute present in the event
-specification without an explicit value receives a default value of \fB1\fR. An
-attribute without a corresponding counter number is applied to all counters in
-the specification.
-.sp
-The semantics of these event specifications can be determined by reading the
-\fBCPU\fR manufacturer's documentation for the events.
-.sp
-Multiple \fB-c\fR options can be specified, in which case the command cycles
-between the different event settings on each sample.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-D\fR\fR
-.ad
-.sp .6
-.RS 4n
-Enables debug mode.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-h\fR\fR
-.ad
-.sp .6
-.RS 4n
-Prints an extensive help message on how to use the utility and how to program
-the processor-dependent counters.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR\fR
-.ad
-.sp .6
-.RS 4n
-Omits all header output (useful if \fBcpustat\fR is the beginning of a
-pipeline).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR \fIperiod\fR\fR
-.ad
-.sp .6
-.RS 4n
-Causes \fBcpustat\fR to cycle through the list of \fIeventspec\fRs every
-\fIperiod\fR seconds. The tool sleeps after each cycle until \fIperiod\fR
-seconds have elapsed since the first \fIeventspec\fR was measured.
-.sp
-When this option is present, the optional \fIcount\fR parameter specifies the
-number of total cycles to make (instead of the number of total samples to
-take). If \fIperiod\fR is less than the number of \fIeventspec\fRs times
-\fIinterval\fR, the tool acts as it period is \fB0\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR\fR
-.ad
-.sp .6
-.RS 4n
-Creates an idle soaker thread to spin while system-only \fIeventspec\fRs are
-bound. One idle soaker thread is bound to each CPU in the current processor
-set. System-only \fIeventspec\fRs contain both the \fBnouser\fR and the
-\fBsys\fR tokens and measure events that occur while the CPU is operating in
-privileged mode. This option prevents the kernel's idle loop from running and
-triggering system-mode events.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-T\fR \fBu\fR | \fBd\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display a time stamp.
-.sp
-Specify \fBu\fR for a printed representation of the internal representation of
-time. See \fBtime\fR(2). Specify \fBd\fR for standard date format. See
-\fBdate\fR(1).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-t\fR\fR
-.ad
-.sp .6
-.RS 4n
-Prints an additional column of processor cycle counts, if available on the
-current architecture.
-.RE
-
-.SH USAGE
-.LP
-A closely related utility, \fBcputrack\fR(1), can be used to monitor the
-behavior of individual applications with little or no interference from other
-activities on the system.
-.sp
-.LP
-The \fBcpustat\fR utility must be run by the super-user, as there is an
-intrinsic conflict between the use of the \fBCPU\fR performance counters
-system-wide by \fBcpustat\fR and the use of the \fBCPU\fR performance counters
-to monitor an individual process (for example, by \fBcputrack\fR.)
-.sp
-.LP
-Once any instance of this utility has started, no further per-process or
-per-\fBLWP\fR use of the counters is allowed until the last instance of the
-utility terminates.
-.sp
-.LP
-The times printed by the command correspond to the wallclock time when the
-hardware counters were actually sampled, instead of when the program told the
-kernel to sample them. The time is derived from the same timebase as
-\fBgethrtime\fR(3C).
-.sp
-.LP
-The processor cycle counts enabled by the \fB-t\fR option always apply to both
-user and system modes, regardless of the settings applied to the performance
-counter registers.
-.sp
-.LP
-On some hardware platforms running in system mode using the "sys" token, the
-counters are implemented using 32-bit registers. While the kernel attempts to
-catch all overflows to synthesize 64-bit counters, because of hardware
-implementation restrictions, overflows can be lost unless the sampling interval
-is kept short enough. The events most prone to wrap are those that count
-processor clock cycles. If such an event is of interest, sampling should occur
-frequently so that less than 4 billion clock cycles can occur between samples.
-.sp
-.LP
-The output of cpustat is designed to be readily parsable by \fBnawk\fR(1) and
-\fBperl\fR(1), thereby allowing performance tools to be composed by embedding
-\fBcpustat\fR in scripts. Alternatively, tools can be constructed directly
-using the same \fBAPI\fRs that \fBcpustat\fR is built upon using the facilities
-of \fBlibcpc\fR(3LIB). See \fBcpc\fR(3CPC).
-.sp
-.LP
-The \fBcpustat\fR utility only monitors the \fBCPU\fRs that are accessible to
-it in the current processor set. Thus, several instances of the utility can be
-running on the \fBCPU\fRs in different processor sets. See \fBpsrset\fR(1M) for
-more information about processor sets.
-.sp
-.LP
-Because \fBcpustat\fR uses \fBLWP\fRs bound to \fBCPU\fRs, the utility might
-have to be terminated before the configuration of the relevant processor can be
-changed.
-.SH EXAMPLES
-.SS "SPARC"
-.LP
-\fBExample 1 \fRMeasuring External Cache References and Misses
-.sp
-.LP
-The following example measures misses and references in the external cache.
-These occur while the processor is operating in user mode on an UltraSPARC
-machine.
-
-.sp
-.in +2
-.nf
-example% cpustat -c EC_ref,EC_misses 1 3
-
- time cpu event pic0 pic1
- 1.008 0 tick 69284 1647
- 1.008 1 tick 43284 1175
- 2.008 0 tick 179576 1834
- 2.008 1 tick 202022 12046
- 3.008 0 tick 93262 384
- 3.008 1 tick 63649 1118
- 3.008 2 total 651077 18204
-.fi
-.in -2
-.sp
-
-.SS "x86"
-.LP
-\fBExample 2 \fRMeasuring Branch Prediction Success on Pentium 4
-.sp
-.LP
-The following example measures branch mispredictions and total branch
-instructions in user and system mode on a Pentium 4 machine.
-
-.sp
-.in +2
-.nf
- example% cpustat -c \e
- pic12=branch_retired,emask12=0x4,pic14=branch_retired,\e
- emask14=0xf,sys 1 3
-
- time cpu event pic12 pic14
- 1.010 1 tick 458 684
- 1.010 0 tick 305 511
- 2.010 0 tick 181 269
- 2.010 1 tick 469 684
- 3.010 0 tick 182 269
- 3.010 1 tick 468 684
- 3.010 2 total 2063 3101
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRCounting Memory Accesses on Opteron
-.sp
-.LP
-The following example determines the number of memory accesses made through
-each memory controller on an Opteron, broken down by internal memory latency:
-
-.sp
-.in +2
-.nf
-cpustat -c \e
- pic0=NB_mem_ctrlr_page_access,umask0=0x01, \e
- pic1=NB_mem_ctrlr_page_access,umask1=0x02, \e
- pic2=NB_mem_ctrlr_page_access,umask2=0x04,sys \e
- 1
-
- time cpu event pic0 pic1 pic2
- 1.003 0 tick 41976 53519 7720
- 1.003 1 tick 5589 19402 731
- 2.003 1 tick 6011 17005 658
- 2.003 0 tick 43944 45473 7338
- 3.003 1 tick 7105 20177 762
- 3.003 0 tick 47045 48025 7119
- 4.003 0 tick 43224 46296 6694
- 4.003 1 tick 5366 19114 652
-.fi
-.in -2
-.sp
-
-.SH WARNINGS
-.LP
-By running the \fBcpustat\fR command, the super-user forcibly invalidates all
-existing performance counter context. This can in turn cause all invocations of
-the \fBcputrack\fR command, and other users of performance counter context, to
-exit prematurely with unspecified errors.
-.sp
-.LP
-If \fBcpustat\fR is invoked on a system that has \fBCPU\fR performance counters
-which are not supported by Solaris, the following message appears:
-.sp
-.in +2
-.nf
-cpustat: cannot access performance counters - Operation not applicable
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-This error message implies that \fBcpc_open()\fR has failed and is documented
-in \fBcpc_open\fR(3CPC). Review this documentation for more information about
-the problem and possible solutions.
-.sp
-.LP
-If a short interval is requested, \fBcpustat\fR might not be able to keep up
-with the desired sample rate. In this case, some samples might be dropped.
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-.LP
-\fBcputrack\fR(1), \fBnawk\fR(1), \fBperl\fR(1), \fBiostat\fR(1M),
-\fBprstat\fR(1M), \fBpsrset\fR(1M), \fBvmstat\fR(1M), \fBcpc\fR(3CPC),
-\fBcpc_open\fR(3CPC), \fBcpc_bind_cpu\fR(3CPC), \fBgethrtime\fR(3C),
-\fBstrtoll\fR(3C), \fBlibcpc\fR(3LIB), \fBattributes\fR(5)
-.SH NOTES
-.LP
-When \fBcpustat\fR is run on a Pentium 4 with HyperThreading enabled, a CPC set
-is bound to only one logical CPU of each physical CPU. See
-\fBcpc_bind_cpu\fR(3CPC).
diff --git a/usr/src/man/man1m/cron.1m b/usr/src/man/man1m/cron.1m
deleted file mode 100644
index 3abeda24ba..0000000000
--- a/usr/src/man/man1m/cron.1m
+++ /dev/null
@@ -1,184 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 2009 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH CRON 1M "Mar 30, 2017"
-.SH NAME
-cron \- clock daemon
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/cron\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-\fBcron\fR starts a process that executes commands at specified dates and
-times.
-.sp
-.LP
-You can specify regularly scheduled commands to \fBcron\fR according to
-instructions found in \fBcrontab\fR files in the directory
-\fB/var/spool/cron/crontabs\fR. Users can submit their own \fBcrontab\fR file
-using the \fBcrontab\fR(1) command. Commands which are to be executed only once
-can be submitted using the \fBat\fR(1) command.
-.sp
-.LP
-\fBcron\fR only examines \fBcrontab\fR or \fBat\fR command files during its own
-process initialization phase and when the \fBcrontab\fR or \fBat\fR command is
-run. This reduces the overhead of checking for new or changed files at
-regularly scheduled intervals.
-.sp
-.LP
-As \fBcron\fR never exits, it should be executed only once. This is done
-routinely by way of the \fBsvc:/system/cron:default\fR service. The file
-\fB/etc/cron.d/FIFO\fR file is used as a lock file to prevent the execution of
-more than one instance of \fBcron\fR.
-.sp
-.LP
-\fBcron\fR captures the output of the job's \fBstdout\fR and \fBstderr\fR
-streams, and, if it is not empty, mails the output to the user. If the job does
-not produce output, no mail is sent to the user. An exception is if the job is
-an \fBat\fR(1) job and the \fB-m\fR option was specified when the job was
-submitted.
-.sp
-.LP
-\fBcron\fR and \fBat\fR jobs are not executed if your account is locked.
-The \fBshadow\fR(4) file defines which accounts are not
-locked and will have their jobs executed.
-.SS "Setting cron Jobs Across Timezones"
-.LP
-The timezone of the \fBcron\fR daemon sets the system-wide timezone for
-\fBcron\fR entries. This, in turn, is by set by default system-wide using
-\fB/etc/default/init\fR. The timezone for \fBcron\fR entries can be overridden
-in a user's crontab file; see \fBcrontab\fR(1).
-.sp
-.LP
-If some form of \fBdaylight savings\fR or \fBsummer/winter time\fR is in
-effect, then jobs scheduled during the switchover period could be executed
-once, twice, or not at all.
-.SS "Setting cron Defaults"
-.LP
-To keep a log of all actions taken by \fBcron\fR, you must specify
-\fBCRONLOG=YES\fR in the \fB/etc/default/cron\fR file. If you specify
-\fBCRONLOG=NO\fR, no logging is done. Keeping the log is a user configurable
-option since \fBcron\fR usually creates huge log files.
-.sp
-.LP
-You can specify the \fBPATH\fR for \fBuser\fR cron jobs by using
-\fBPATH\fR\fB=\fR in \fB/etc/default/cron\fR. You can set the \fBPATH\fR for
-\fBroot\fR cron jobs using \fBSU\fR\fBPATH\fR\fB=\fR in
-\fB/etc/default/cron\fR. Carefully consider the security implications of
-setting \fBPATH\fR and \fBSUPATH\fR.
-.sp
-.LP
-Example \fB/etc/default/cron\fR file:
-.sp
-.in +2
-.nf
-CRONLOG=YES
-PATH=/usr/bin:/usr/ucb:
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-This example enables logging and sets the default \fBPATH\fR used by non-root
-jobs to \fB/usr/bin:/usr/ucb:\fR. Root jobs continue to use
-\fB/usr/sbin:/usr/bin\fR.
-.sp
-.LP
-The \fBcron\fR log file is periodically rotated by \fBlogadm\fR(1M).
-.SH FILES
-.ne 2
-.na
-\fB\fB/etc/cron.d\fR\fR
-.ad
-.RS 25n
-Main \fBcron\fR directory
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/cron.d/FIFO\fR\fR
-.ad
-.RS 25n
-Lock file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/default/cron\fR\fR
-.ad
-.RS 25n
-\fBcron\fR default settings file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/cron/log\fR\fR
-.ad
-.RS 25n
-\fBcron\fR history information
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/spool/cron\fR\fR
-.ad
-.RS 25n
-Spool area
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/cron.d/queuedefs\fR\fR
-.ad
-.RS 25n
-Queue description file for \fBat\fR, \fBbatch\fR, and \fBcron\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/logadm.conf\fR\fR
-.ad
-.RS 25n
-Configuration file for \fBlogadm\fR
-.RE
-
-.SH SEE ALSO
-.LP
-\fBsvcs\fR(1), \fBat\fR(1), \fBcrontab\fR(1), \fBsh\fR(1), \fBlogadm\fR(1M),
-\fBsvcadm\fR(1M), \fBqueuedefs\fR(4), \fBshadow\fR(4), \fBattributes\fR(5),
-\fBrbac\fR(5), \fBsmf\fR(5), \fBsmf_security\fR(5)
-.SH NOTES
-.LP
-The \fBcron\fR service is managed by the service management facility,
-\fBsmf\fR(5), under the service identifier:
-.sp
-.in +2
-.nf
-svc:/system/cron:default
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Administrative actions on this service, such as enabling, disabling, or
-requesting restart, can be performed using \fBsvcadm\fR(1M). The service's
-status can be queried using the \fBsvcs\fR(1) command. Most administrative
-actions may be delegated to users with the \fBsolaris.smf.manage.cron\fR
-authorization (see \fBrbac\fR(5) and \fBsmf_security\fR(5)).
-.SH DIAGNOSTICS
-.LP
-A history of all actions taken by \fBcron\fR is stored in \fB/var/cron/log\fR
-and possibly in \fB/var/cron/olog\fR.
diff --git a/usr/src/man/man1m/cryptoadm.1m b/usr/src/man/man1m/cryptoadm.1m
deleted file mode 100644
index b722c7e0ff..0000000000
--- a/usr/src/man/man1m/cryptoadm.1m
+++ /dev/null
@@ -1,815 +0,0 @@
-'\" te
-.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH CRYPTOADM 1M "Sep 1, 2009"
-.SH NAME
-cryptoadm \- cryptographic framework administration
-.SH SYNOPSIS
-.nf
-\fBcryptoadm\fR list [\fB-mpv\fR] [provider=\fIprovider-name\fR]
- [mechanism=\fImechanism-list\fR]
-.fi
-
-.LP
-.nf
-\fBcryptoadm\fR disable
- provider=\fIprovider-name\fR mechanism=\fImechanism-list\fR | random | all
-.fi
-
-.LP
-.nf
-\fBcryptoadm\fR enable
- provider=\fIprovider-name\fR mechanism=\fImechanism-list\fR | random | all
-.fi
-
-.LP
-.nf
-\fBcryptoadm\fR install provider=\fIprovider-name\fR
-.fi
-
-.LP
-.nf
-\fBcryptoadm\fR install provider=\fIprovider-name\fR
- [mechanism=\fImechanism-list\fR]
-.fi
-
-.LP
-.nf
-\fBcryptoadm\fR uninstall provider=\fIprovider-name\fR
-.fi
-
-.LP
-.nf
-\fBcryptoadm\fR unload provider=\fIprovider-name\fR
-.fi
-
-.LP
-.nf
-\fBcryptoadm\fR disable fips-140
-.fi
-
-.LP
-.nf
-\fBcryptoadm\fR enable fips-140
-.fi
-
-.LP
-.nf
-\fBcryptoadm\fR list fips-140
-.fi
-
-.LP
-.nf
-\fBcryptoadm\fR refresh
-.fi
-
-.LP
-.nf
-\fBcryptoadm\fR start
-.fi
-
-.LP
-.nf
-\fBcryptoadm\fR stop
-.fi
-
-.LP
-.nf
-\fBcryptoadm\fR \fB-\fR\fB-help\fR
-.fi
-
-.SH DESCRIPTION
-The \fBcryptoadm\fR utility displays cryptographic provider information for a
-system, configures the mechanism policy for each provider, and installs or
-uninstalls a cryptographic provider. The cryptographic framework supports three
-types of providers: a user-level provider (a PKCS11 shared library), a kernel
-software provider (a loadable kernel software module), and a kernel hardware
-provider (a cryptographic hardware device).
-.sp
-.LP
-For kernel software providers, the \fBcryptoadm\fR utility provides the
-\fBunload\fR subcommand. This subcommand instructs the kernel to unload a
-kernel software providers.
-.sp
-.LP
-For the cryptographic framework's metaslot, the \fBcryptoadm\fR utility
-provides subcommands to enable and disable the metaslot's features, list
-metaslot's configuration, specify alternate persistent object storage, and
-configure the metaslot's mechanism policy.
-.sp
-.LP
-The \fBcryptoadm\fR utility provides subcommands to enable and disable FIPS-140
-mode in the Cryptographic Framework. It also provides a \fBlist\fR subcommand
-to display the current status of FIPS-140 mode.
-.sp
-.LP
-Administrators will find it useful to use \fBsyslog\fR facilities (see
-\fBsyslogd\fR(1M) and \fBlogadm\fR(1M)) to maintain the cryptographic
-subsystem. Logging can be especially useful under the following circumstances:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-If kernel-level daemon is dead, all applications fail. You can learn this from
-syslog and use \fBsvcadm\fR(1M) to restart the \fBsvc:/system/cryptosvc\fR
-service.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-If there are bad providers plugged into the framework, you can learn this from
-syslog and remove the bad providers from the framework.
-.RE
-.sp
-.LP
-With the exception of the subcommands or options listed below, the
-\fBcryptoadm\fR command needs to be run by a privileged user.
-.RS +4
-.TP
-.ie t \(bu
-.el o
-subcommand \fBlist\fR, any options
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-subcommand \fB-\fR\fB-help\fR
-.RE
-.SH OPTIONS
-The \fBcryptoadm\fR utility has the various combinations of subcommands and
-options shown below.
-.sp
-.ne 2
-.na
-\fB\fBcryptoadm\fR \fBlist\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display the list of installed providers.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcryptoadm\fR \fBlist metaslot\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display the system-wide configuration for metaslot.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcryptoadm\fR \fBlist\fR \fB-m\fR \fB[ provider=\fIprovider-name\fR |
-metaslot ]\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display a list of mechanisms that can be used with the installed providers or
-metaslot. If a provider is specified, display the name of the specified
-provider and the mechanism list that can be used with that provider. If the
-metaslot keyword is specified, display the list of mechanisms that can be used
-with metaslot.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcryptoadm\fR \fBlist\fR \fB-p\fR \fB[ provider=\fIprovider-name\fR |
-metaslot ]\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display the mechanism policy (that is, which mechanisms are available and which
-are not) for the installed providers. Also display the provider feature policy
-or metaslot. If a provider is specified, display the name of the provider with
-the mechanism policy enforced on it only. If the metaslot keyword is specified,
-display the mechanism policy enforced on the metaslot.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcryptoadm\fR \fBlist\fR \fB-v\fR \fBprovider=\fIprovider-name\fR |
-metaslot\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display details about the specified provider if a provider is specified. If the
-metaslot keyword is specified, display details about the metaslot.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.sp .6
-.RS 4n
-For the various \fBlist\fR subcommands described above (except for \fBlist\fR
-\fB-p\fR), the \fB-v\fR (verbose) option provides details about providers,
-mechanisms and slots.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcryptoadm\fR \fBdisable provider=\fIprovider-name\fR\fR\fR
-.ad
-.br
-.na
-\fB[ mechanism=\fImechanism-list\fR | \fIprovider-feature\fR \fB\&... |\fR
-\fBall\fR ]\fR
-.ad
-.sp .6
-.RS 4n
-Disable the mechanisms or provider features specified for the provider. See
-OPERANDS for a description of \fImechanism\fR, \fIprovider-feature\fR, and the
-\fBall\fR keyword.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcryptoadm\fR \fB[ mechanism=\fImechanism-list\fR ] [ auto-key-migrate
-]\fR\fR
-.ad
-.sp .6
-.RS 4n
-Disable the metaslot feature in the cryptographic framework or disable some of
-metaslot's features. If no operand is specified, this command disables the
-metaslot feature in the cryptographic framework. If a list of mechanisms is
-specified, disable mechanisms specified for metaslot. If all mechanisms are
-disabled for metaslot, the metaslot will be disabled. See OPERANDS for a
-description of mechanism. If the \fBauto-key-migrate\fR keyword is specified,
-it disables the migration of sensitive token objects to other slots even if it
-is necessary for performing crypto operations. See OPERANDS for a description
-of \fBauto-key-migrate\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcryptoadm\fR \fBenable provider=\fIprovider-name\fR\fR\fR
-.ad
-.br
-.na
-\fB[ mechanism=\fImechanism-list\fR | \fIprovider-feature\fR \fB\&... |\fR
-\fBall\fR ]\fR
-.ad
-.sp .6
-.RS 4n
-Enable the mechanisms or provider features specified for the provider. See
-OPERANDS for a description of \fImechanism\fR, \fIprovider-feature\fR, and the
-\fBall\fR keyword.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcryptoadm\fR \fBenable metaslot [ mechanism=\fImechanism-list\fR ]
-|\fR\fR
-.ad
-.br
-.na
-\fB\fB[ [ token=\fItoken-label\fR] [ slot=\fIslot-description\fR] |\fR\fR
-.ad
-.br
-.na
-\fB\fBdefault-keystore ] | [ auto-key-migrate ]\fR\fR
-.ad
-.sp .6
-.RS 4n
-If no operand is specified, this command enables the metaslot feature in the
-cryptographic framework. If a list of mechanisms is specified, it enables only
-the list of specified mechanisms for metaslot. If \fItoken-label\fR is
-specified, the specified token will be used as the persistent object store. If
-the \fIslot-description\fR is specified, the specified slot will be used as the
-persistent object store. If both the \fItoken-label\fR and the
-\fIslot-description\fR are specified, the provider with the matching token
-label and slot description is used as the persistent object store. If the
-\fBdefault-keystore\fR keyword is specified, metaslot will use the default
-persistent object store. If the \fBauto-key-migrate\fR keyword is specified,
-sensitive token objects will automatically migrate to other slots as needed to
-complete certain crypto operations. See OPERANDS for a description of
-mechanism, token, slot, \fBdefault-keystore\fR, and \fBauto-key-migrate\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcryptoadm\fR \fBinstall provider=\fIprovider-name\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Install a user-level provider into the system. The \fIprovider\fR operand must
-be an absolute pathname of the corresponding shared library. If there are both
-32-bit and 64-bit versions for a library, this command should be run once only
-with the path name containing \fB$ISA\fR. Note that \fB$ISA\fR is not a
-reference to an environment variable. Note also that \fB$ISA\fR must be quoted
-(with single quotes [for example, \fB\&'$ISA'\fR]) or the \fB$\fR must be
-escaped to keep it from being incorrectly expanded by the shell. The user-level
-framework expands \fB$ISA\fR to an empty string or an architecture-specific
-directory, for example, \fBsparcv9\fR.
-.sp
-The preferred way of installing a user-level provider is to build a package for
-the provider. For more information, see the \fISolaris Security for Developer's
-Guide\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcryptoadm\fR \fBinstall provider=\fIprovider-name\fR\fR\fR
-.ad
-.br
-.na
-\fBmechanism=\fImechanism-list\fR\fR
-.ad
-.sp .6
-.RS 4n
-Install a kernel software provider into the system. The provider should contain
-the base name only. The \fImechanism-list\fR operand specifies the complete
-list of mechanisms to be supported by this provider.
-.sp
-The preferred way of installing a kernel software provider is to build a
-package for providers. For more information, see the \fISolaris Security for
-Developer's Guide\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcryptoadm\fR \fBuninstall provider=\fIprovider-name\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Uninstall the specified \fIprovider\fR and the associated mechanism policy from
-the system. This subcommand applies only to a user-level provider or a kernel
-software provider.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcryptoadm\fR \fBunload provider=\fIprovider-name\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Unload the kernel software module specified by \fIprovider\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcryptoadm\fR \fBdisable fips-140\fR\fR
-.ad
-.sp .6
-.RS 4n
-Disable FIPS-140 mode in the Cryptographic Framework.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcryptoadm\fR \fBenable fips-140\fR\fR
-.ad
-.sp .6
-.RS 4n
-Enable FIPS-140 mode in the Cryptographic Framework. This subcommand does not
-disable the non-FIPS approved algorithms from the user-level
-\fBpkcs11_softtoken\fR library and the kernel software providers. It is the
-consumers of the framework that are responsible for using only FIPS-approved
-algorithms.
-.sp
-Upon completion of this subcommand, a message is issued to inform the
-administrator that any plugins added that are not within the boundary might
-invalidate FIPS compliance and to check the Security Policies for those
-plugins. In addition, a warning message is issued to indicate that, in this
-release, the Cryptographic Framework has not been FIPS 140-2 certified.
-.sp
-The system will require a reboot to perform Power-Up Self Tests that include a
-cryptographic algorithm test and a software integrity test.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcryptoadm\fR \fBlist fips-140\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display the current setting of FIPS-140 mode in the Cryptographic Framework.
-The status of FIPS-140 mode is \fBenabled\fR or \fBdisabled\fR. The default
-FIPS-140 mode is \fBdisabled\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcryptoadm\fR \fBrefresh\fR\fR
-.ad
-.br
-.na
-\fB\fBcryptoadm\fR \fBstart\fR\fR
-.ad
-.br
-.na
-\fB\fBcryptoadm\fR \fBstop\fR\fR
-.ad
-.sp .6
-.RS 4n
-Private interfaces for use by \fBsmf\fR(5), these must not be used directly.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcryptoadm\fR \fB-help\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display the command usage.
-.RE
-
-.SH OPERANDS
-.ne 2
-.na
-\fBprovider=\fIprovider-name\fR\fR
-.ad
-.sp .6
-.RS 4n
-A user-level provider (a PKCS11 shared library), a kernel software provider (a
-loadable kernel software module), or a kernel hardware provider (a
-cryptographic hardware device).
-.sp
-A valid value of the \fIprovider\fR operand is one entry from the output of a
-command of the form: \fBcryptoadm\fR \fIlist\fR. A \fIprovider\fR operand for a
-user-level provider is an absolute pathname of the corresponding shared
-library. A \fIprovider\fR operand for a kernel software provider contains a
-base name only. A \fIprovider\fR operand for a kernel hardware provider is in a
-"\fIname\fR/\fInumber\fR" form.
-.RE
-
-.sp
-.ne 2
-.na
-\fBmechanism=\fImechanism-list\fR\fR
-.ad
-.sp .6
-.RS 4n
-A comma separated list of one or more PKCS #11 mechanisms. A process for
-implementing a cryptographic operation as defined in PKCS #11 specification.
-You can substitute \fBall\fR for \fImechanism-list\fR, to specify all
-mechanisms on a provider. See the discussion of the \fBall\fR keyword, below.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIprovider-feature\fR\fR
-.ad
-.sp .6
-.RS 4n
-A cryptographic framework feature for the given provider. Currently only
-\fBrandom\fR is accepted as a feature. For a user-level provider, disabling the
-random feature makes the PKCS #11 routines \fBC_GenerateRandom\fR and
-\fBC_SeedRandom\fR unavailable from the provider. For a kernel provider,
-disabling the random feature prevents \fB/dev/random\fR from gathering random
-numbers from the provider.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBall\fR\fR
-.ad
-.sp .6
-.RS 4n
-The keyword all can be used with with the \fBdisable\fR and \fBenable\fR
-subcommands to operate on all provider features.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBtoken=\fR\fItoken-label\fR\fR
-.ad
-.sp .6
-.RS 4n
-The label of a token in one of the providers in the cryptographic framework.
-.sp
-A valid value of the token operand is an item displayed under "Token Label"
-from the output of the command \fBcryptoadm list\fR \fB-v\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBslot=\fR\fIslot-description\fR\fR
-.ad
-.sp .6
-.RS 4n
-The description of a slot in one of the providers in the cryptographic
-framework.
-.sp
-A valid value of the slot operand is an item displayed under "Description" from
-the output of the command \fBcryptoadm list\fR \fB-v\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdefault-keystore\fR\fR
-.ad
-.sp .6
-.RS 4n
-The keyword \fBdefault-keystore\fR is valid only for metaslot. Specify this
-keyword to set the persistent object store for metaslot back to using the
-default store.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBauto-key-migrate\fR\fR
-.ad
-.sp .6
-.RS 4n
-The keyword auto-key-migrate is valid only for metaslot. Specify this keyword
-to configure whether metaslot is allowed to move sensitive token objects from
-the token object slot to other slots for performing cryptographic operations.
-.RE
-
-.sp
-.LP
-The keyword \fBall\fR can be used in two ways with the \fBdisable\fR and
-\fBenable\fR subcommands:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-You can substitute \fBall\fR for \fBmechanism\fR=\fImechanism-list\fR, as in:
-.sp
-.in +2
-.nf
-# \fBcryptoadm enable provider=dca/0 all\fR
-.fi
-.in -2
-.sp
-
-This command enables the mechanisms on the provider \fBand\fR any other
-provider-features, such as \fBrandom\fR.
-.sp
-.in +2
-.nf
-# \fBcryptoadm enable provider=des mechanism=all\fR
-.fi
-.in -2
-.sp
-
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-You can also use \fBall\fR as an argument to \fBmechanism\fR, as in:
-.sp
-.in +2
-.nf
-# \fBcryptoadm enable provider=des mechanism=all\fR
-.fi
-.in -2
-.sp
-
-\&...which enables all mechanisms on the provider, but enables no other
-provider-features, such as \fBrandom\fR.
-.RE
-.SH EXAMPLES
-\fBExample 1 \fRDisplay List of Providers Installed in System
-.sp
-.LP
-The following command displays a list of all installed providers:
-
-.sp
-.in +2
-.nf
-example% \fBcryptoadm list\fR
-user-level providers:
-/usr/lib/security/$ISA/pkcs11_kernel.so
-/usr/lib/security/$ISA/pkcs11_softtoken.so
-/opt/lib/libcryptoki.so.1
-/opt/SUNWconn/lib/$ISA/libpkcs11.so.1
-
-kernel software providers:
- des
- aes
- bfish
- sha1
- md5
-
-kernel hardware providers:
- dca/0
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRDisplay Mechanism List for \fBmd5\fR Provider
-.sp
-.LP
-The following command is a variation of the \fBlist\fR subcommand:
-
-.sp
-.in +2
-.nf
-example% \fBcryptoadm list -m provider=md5\fR
-md5: CKM_MD5,CKM_MD5_HMAC,CKM_MD5_HMAC_GENERAL
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRDisable Specific Mechanisms for Kernel Software Provider
-.sp
-.LP
-The following command disables mechanisms \fBCKM_DES3_ECB\fR and
-\fBCKM_DES3_CBC\fR for the kernel software provider \fBdes\fR:
-
-.sp
-.in +2
-.nf
-example# \fBcryptoadm disable provider=des\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 4 \fRDisplay Mechanism Policy for a Provider
-.sp
-.LP
-The following command displays the mechanism policy for the \fBdes\fR provider:
-
-.sp
-.in +2
-.nf
-example% \fBcryptoadm list -p provider=des\fR
-des: All mechanisms are enabled, except CKM_DES3_ECB, CKM_DES3_CBC
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 5 \fREnable Specific Mechanism for a Provider
-.sp
-.LP
-The following command enables the \fBCKM_DES3_ECB\fR mechanism for the kernel
-software provider \fBdes\fR:
-
-.sp
-.in +2
-.nf
-example# \fBcryptoadm enable provider=des mechanism=CKM_DES3_ECB\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 6 \fRInstall User-Level Provider
-.sp
-.LP
-The following command installs a user-level provider:
-
-.sp
-.in +2
-.nf
-example# \fBcryptoadm install provider=/opt/lib/libcryptoki.so.1\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 7 \fRInstall User-Level Provider That Contains 32- and 64-bit
-Versions
-.sp
-.LP
-The following command installs a user-level provider that contains both 32-bit
-and 64-bit versions:
-
-.sp
-.in +2
-.nf
-example# \fBcryptoadm install \e\fR
-provider=/opt/SUNWconn/lib/'$ISA'/libpkcs11.so.1
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 8 \fRUninstall a Provider
-.sp
-.LP
-The following command uninstalls the \fBmd5\fR provider:
-
-.sp
-.in +2
-.nf
-example# \fBcryptoadm uninstall provider=md5\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 9 \fRDisable metaslot
-.sp
-.LP
-The following command disables the metaslot feature in the cryptographic
-framework.
-
-.sp
-.in +2
-.nf
-example# \fBcryptoadm disable metaslot\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 10 \fRSpecify metaslot to Use Specified Token as Persistent Object
-Store
-.sp
-.LP
-The following command specifies that metaslot use the Venus token as the
-persistent object store.
-
-.sp
-.in +2
-.nf
-example# \fBcryptoadm enable metaslot token="SUNW,venus"\fR
-.fi
-.in -2
-.sp
-
-.SH EXIT STATUS
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.sp .6
-.RS 4n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB>0\fR\fR
-.ad
-.sp .6
-.RS 4n
-An error occurred.
-.RE
-
-.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability See below
-.TE
-
-.sp
-.LP
-The \fBstart\fR, \fBstop\fR, and \fBrefresh\fR options are Private interfaces.
-All other options are Evolving. The utility name is Stable.
-.SH SEE ALSO
-\fBlogadm\fR(1M), \fBsvcadm\fR(1M), \fBsyslogd\fR(1M), \fBlibpkcs11\fR(3LIB),
-\fBexec_attr\fR(4), \fBprof_attr\fR(4), \fBattributes\fR(5), \fBsmf\fR(5),
-\fBrandom\fR(7D)
-
-.sp
-.LP
-\fISolaris Security for Developer's Guide\fR
-.SH NOTES
-If a hardware provider's policy was made explicitly (that is, some of its
-mechanisms were disabled) and the hardware provider has been detached, the
-policy of this hardware provider is still listed.
-.sp
-.LP
-\fBcryptoadm\fR assumes that, minimally, a 32-bit shared object is delivered
-for each user-level provider. If both a 32-bit and 64-bit shared object are
-delivered, the two versions must provide the same functionality. The same
-mechanism policy applies to both.
diff --git a/usr/src/man/man1m/datadm.1m b/usr/src/man/man1m/datadm.1m
deleted file mode 100644
index ca16dff943..0000000000
--- a/usr/src/man/man1m/datadm.1m
+++ /dev/null
@@ -1,195 +0,0 @@
-'\" te
-.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH DATADM 1M "June 20, 2021"
-.SH NAME
-datadm \- maintain DAT static registry file
-.SH SYNOPSIS
-.nf
-\fB/usr/bin/datadm\fR [\fB-v\fR] [\fB-u\fR] [\fB-a\fR service_provider.conf]
- [\fB-r\fR service_provider.conf]
-.fi
-
-.SH DESCRIPTION
-The \fBdatadm\fR utility maintains the DAT static registry file,
-\fBdat.conf\fR(4).
-.sp
-.LP
-This administrative configuration program allows uDAPL service providers to add
-and remove themselves to the \fBdat.conf\fR file.
-.sp
-.LP
-You can add or remove interface adapters that a service provider supports from
-a system after its installation. You can use \fBdatadm\fR to update the
-\fBdat.conf\fR file to reflect the current state of the system. A new set of
-interface adapters for all the service providers currently installed is
-regenerated.
-.SH OPTIONS
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-a\fR \fBservice_provider.conf\fR\fR
-.ad
-.RS 28n
-Enumerate each device entry in the \fBservice_provider.conf\fR(4) file into a
-list of interface adapters, that is, interfaces to external network that are
-available to uDAPL consumers.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-r\fR \fBservice_provider.conf\fR\fR
-.ad
-.RS 28n
-Remove the list of interface adapters that corresponds to the device entry in
-the \fBservice_provider.conf\fR(4) file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-u\fR\fR
-.ad
-.RS 28n
-Update the \fBdat.conf\fR to reflect the current state of the system with an up
-to date set of interface adapters for the service providers that are currently
-listed in the DAT static registry.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.RS 28n
-Display the DAT static registry file, \fBdat.conf\fR.
-.RE
-
-.SH EXAMPLES
-\fBExample 1 \fREnumerating a Device Entry
-.sp
-.LP
-The following example enumerates a device entry in the
-\fBservice_provider.conf\fR(4) file into interface adapters in the
-\fBdat.conf\fR(4) file.
-
-.sp
-.LP
-Assume that \fBSUNW\fR has a service provider library that supports the device
-\fBtavor\fR. It has a \fBservice_provider.conf\fR(4) file installed in the
-directory \fB/usr/share/dat/SUNWudaplt.conf\fR with a single entry as follows:
-
-.sp
-.in +2
-.nf
-driver_name=tavor u1.2 nonthreadsafe default\e
- udapl_tavor.so.1 SUNW.1.0 ""
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-\fBtavor\fR is an Infiniband Host Channel Adapter with two ports. Both IB ports
-exist in a single IB partition, \fB0x8001\fR. If an IP interface is plumbed to
-each port, there are two IPoIB device instances, \fBibd0\fR and \fBibd1\fR:
-
-.sp
-.in +2
-.nf
-# ls -l /dev/ibd*
-/dev/ibd0 -> /devices/pci@1/pci15b3,5a44@0/ibport@1,8001,ipib:ibd0
-/dev/ibd1 -> /devices/pci@1/pci15b3,5a44@0/ibport@2,8001,ipib:ibd1
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Running the command, \fBdatadm -a /usr/share/dat/SUNWudaplt.conf\fR appends two
-new entries (if they do not already exist) in the
-\fB/etc/dat/dat.conf\fR file:
-
-.sp
-.in +2
-.nf
-ibd0 u1.2 nonthreadsafe default udapl_tavor.so.1 SUNW.1.0 ""
-"driver_name=tavor"
-ibd1 u1.2 nonthreadsafe default udapl_tavor.so.1 SUNW.1.0 ""
-"driver_name=tavor"
-.fi
-.in -2
-
-.LP
-\fBExample 2 \fRUpdating the \fBdat.conf\fR to Reflect the Current State of the
-System
-.sp
-.LP
-A new IB partition, 0x8002 is added to the above example covering port 1 of the
-Host Channel Adapter. If a new IP interface is plumbed to \fBport 1/partition
-0x8002\fR, there is a third IPoIB device instance: \fBibd2\fR.
-
-.sp
-.in +2
-.nf
-# ls -l /dev/ibd*
- /dev/ibd0 -> /devices/pci@1/pci15b3,5a44@0/ibport@1,8001,ipib:ibd0
- /dev/ibd1 -> /devices/pci@1/pci15b3,5a44@0/ibport@2,8001,ipib:ibd1
- /dev/ibd2 -> /devices/pci@1/pci15b3,5a44@0/ibport@1,8002,ipib:ibd2
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Running \fBdatadm -u\fR command, updates the \fB/etc/dat/dat.conf\fR file with
-a new entry added reflecting the current state of the system.
-
-.sp
-.LP
-\fBdatadm -v\fR shows that there are now three entries in the
-\fB/etc/dat/dat.conf\fR file:
-
-.sp
-.in +2
-.nf
-ibd0 u1.2 nonthreadsafe default udapl_tavor.so.1 SUNW.1.0 ""
-"driver_name=tavor"
-ibd1 u1.2 nonthreadsafe default udapl_tavor.so.1 SUNW.1.0 ""
-"driver_name=tavor"
-ibd2 u1.2 nonthreadsafe default udapl_tavor.so.1 SUNW.1.0 ""
-"driver_name=tavor"
-.fi
-.in -2
-.sp
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/etc/dat/dat.conf\fR\fR
-.ad
-.RS 21n
-DAT static registry file
-.RE
-
-.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-\fBlibdat\fR(3LIB), \fBdat.conf\fR(4),
-\fBservice_provider.conf\fR(4), \fBattributes\fR(5)
diff --git a/usr/src/man/man1m/dcs.1m b/usr/src/man/man1m/dcs.1m
deleted file mode 100644
index 36c9cd7f70..0000000000
--- a/usr/src/man/man1m/dcs.1m
+++ /dev/null
@@ -1,118 +0,0 @@
-'\" te
-.\" Copyright 2005 (c), Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 2019 Peter Tribble.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH DCS 1M "Apr 3, 2019"
-.SH NAME
-dcs \- domain configuration server
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/dcs\fR [\fB-s\fR \fIsessions\fR] [\fB-l\fR]
-.fi
-
-.SH DESCRIPTION
-.LP
-The Domain Configuration Server (DCS) is a daemon process that runs on Sun
-servers that support remote Dynamic Reconfiguration (DR) clients. It is started
-by the Service Management Facility (see \fBsmf\fR(5)) when the first DR request
-is received from a client connecting to the network service \fBsun-dr\fR. After
-the DCS accepts a DR request, it uses the \fBlibcfgadm\fR(3LIB) interface to
-execute the DR operation. After the operation is performed, the results are
-returned to the client.
-.sp
-.LP
-The DCS listens on the network service labeled \fBsun-dr\fR. Its underlying
-protocol is TCP. It is invoked as a server program by SMF using the TCP
-transport. The fault management resource identifier (FMRI) for DCS is:
-.sp
-.in +2
-.nf
-svc:/platform/sun4u/dcs:default
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-If you disable this service, DR operations initiated from a remote host fail.
-There is no negative impact on the server.
-.sp
-.LP
-Security on SPARC Enterprise Servers is not configurable. The DCS daemon uses a
-platform-specific library to configure its security options when running on
-such systems. The \fB-l\fR option is provided by SMF when invoking the DCS
-daemon on SPARC Enterprise Servers. No other security options to the DCS daemon
-should be used on SPARC Enterprise Servers.
-.SH OPTIONS
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-l\fR\fR
-.ad
-.RS 15n
-Enables the use of platform-specific security options on SPARC Enterprise
-Servers.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR \fIsessions\fR\fR
-.ad
-.RS 15n
-Sets the number of active sessions that the DCS allows at any one time. When
-the limit is reached, the DCS stops accepting connections until active sessions
-complete the execution of their DR operation. If this option is not specified,
-a default value of 128 is used.
-.RE
-
-.SH ERRORS
-.LP
-The DCS uses \fBsyslog\fR(3C) to report status and error messages. All of the
-messages are logged with the \fBLOG_DAEMON\fR facility. Error messages are
-logged with the \fBLOG_ERR\fR and \fBLOG_NOTICE\fR priorities, and
-informational messages are logged with the \fBLOG_INFO\fR priority. The default
-entries in the \fB/etc/syslog.conf\fR file log all of the DCS error messages to
-the \fB/var/adm/messages\fR log.
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-.LP
-\fBsvcs\fR(1), \fBcfgadm_sbd\fR(1M), \fBsvcadm\fR(1M),
-\fBsyslog\fR(3C), \fBconfig_admin\fR(3CFGADM), \fBlibcfgadm\fR(3LIB),
-\fBsyslog.conf\fR(4), \fBattributes\fR(5), \fBsmf\fR(5), \fBdr\fR(7D)
-.SH NOTES
-.LP
-The \fBdcs\fR service is managed by the service management facility,
-\fBsmf\fR(5), under the fault management resource identifier (FMRI):
-.sp
-.in +2
-.nf
-svc:/platform/sun4u/dcs:default
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Administrative actions on this service, such as enabling, disabling, or
-requesting restart, can be performed using \fBsvcadm\fR(1M). The service's
-status can be queried using the \fBsvcs\fR(1) command.
diff --git a/usr/src/man/man1m/dd.1m b/usr/src/man/man1m/dd.1m
deleted file mode 100644
index b2daaf1409..0000000000
--- a/usr/src/man/man1m/dd.1m
+++ /dev/null
@@ -1,774 +0,0 @@
-.\"
-.\" Sun Microsystems, Inc. gratefully acknowledges The Open Group for
-.\" permission to reproduce portions of its copyrighted documentation.
-.\" Original documentation from The Open Group can be obtained online at
-.\" http://www.opengroup.org/bookstore/.
-.\"
-.\" The Institute of Electrical and Electronics Engineers and The Open
-.\" Group, have given us permission to reprint portions of their
-.\" documentation.
-.\"
-.\" In the following statement, the phrase ``this text'' refers to portions
-.\" of the system documentation.
-.\"
-.\" Portions of this text are reprinted and reproduced in electronic form
-.\" in the SunOS Reference Manual, from IEEE Std 1003.1, 2004 Edition,
-.\" Standard for Information Technology -- Portable Operating System
-.\" Interface (POSIX), The Open Group Base Specifications Issue 6,
-.\" Copyright (C) 2001-2004 by the Institute of Electrical and Electronics
-.\" Engineers, Inc and The Open Group. In the event of any discrepancy
-.\" between these versions and the original IEEE and The Open Group
-.\" Standard, the original IEEE and The Open Group Standard is the referee
-.\" document. The original Standard can be obtained online at
-.\" http://www.opengroup.org/unix/online.html.
-.\"
-.\" This notice shall appear on any product containing this material.
-.\"
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.\"
-.\"
-.\" Copyright 1989 AT&T
-.\" Copyright (c) 1992, X/Open Company Limited All Rights Reserved
-.\" Portions Copyright (c) 1995, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright (c) 2014, Joyent, Inc. All rights Reserved.
-.\" Copyright (c) 2014 by Delphix. All rights reserved.
-.\" Copyright 2021 Oxide Computer Company
-.\"
-.Dd October 24, 2021
-.Dt DD 1M
-.Os
-.Sh NAME
-.Nm dd
-.Nd convert and copy a file
-.Sh SYNOPSIS
-.Nm
-.Op Ar operand Ns = Ns Ar value
-.Ar ...
-.Sh DESCRIPTION
-The
-.Nm
-utility copies the specified input file to the specified output
-with possible conversions.
-The standard input and output are used by default.
-The input and output block sizes may be specified to take advantage of raw
-physical I/O.
-Sizes are specified in bytes; a number may end with
-.Sy k ,
-.Sy b ,
-or
-.Sy w
-to specify multiplication by 1024, 512, or 2, respectively.
-Numbers may also be separated by
-.Sy x
-to indicate multiplication.
-.Pp
-The
-.Nm
-utility reads the input one block at a time, using the specified
-input block size.
-.Nm
-then processes the block of data actually returned,
-which could be smaller than the requested block size unless the input flag
-.Ar fullblock
-is used.
-.Nm
-applies any conversions that have been specified and writes the resulting data
-to the output in blocks of the specified output block size.
-.Pp
-.Cm cbs
-is used only if
-.Cm ascii ,
-.Cm asciib ,
-.Cm unblock ,
-.Cm ebcdic ,
-.Cm ebcdicb ,
-.Cm ibm ,
-.Cm ibmb ,
-or
-.Cm block
-conversion is specified.
-In the first two cases,
-.Cm cbs
-characters are copied into the conversion buffer, any specified character
-mapping is done, trailing blanks are trimmed, and a
-.Cm NEWLINE
-is added before sending the line to output.
-In the last three cases, characters up to
-.Cm NEWLINE
-are read into the conversion buffer and blanks are added to make up an output
-record of size
-.Cm cbs .
-.Cm ASCII
-files are presumed to contain
-.Cm NEWLINE
-characters.
-If
-.Cm cbs
-is unspecified or
-.Cm 0 ,
-the
-.Cm ascii ,
-.Cm asciib ,
-.Cm ebcdic ,
-.Cm ebcdicb ,
-.Cm ibm ,
-and
-.Cm ibmb
-options convert the character set without changing the input file's block
-structure.
-The
-.Cm unblock
-and
-.Cm block
-options become a simple file copy.
-.Pp
-After completion,
-.Nm
-reports the number of whole and partial input and output blocks.
-.Sh OPERANDS
-The following operands are supported:
-.Bl -tag -width "if=file"
-.It Cm if= Ns Ar file
-.Pp
-Specifies the input path.
-Standard input is the default.
-.It Cm of= Ns Ar file
-.Pp
-Specifies the output path.
-Standard output is the default.
-If the
-.Cm seek Ns = Ns Ar expr
-conversion is not also specified, the output file will be truncated before
-the copy begins, unless
-.Cm conv Ns = Ns Ar notrunc
-is specified.
-If
-.Cm seek Ns = Ns Ar expr
-is specified, but
-.Cm conv Ns = Ns Ar notrunc
-is not, the effect of the copy will be to preserve the blocks in the output
-file over which
-.Nm
-seeks, but no other portion of the output file will be preserved.
-(If the size of the seek plus the size of the input file is less than the
-previous size of the output file, the output file is shortened by the copy.)
-.It Cm ibs Ns = Ns Ar n
-.Pp
-Specifies the input block size in
-.Ar n
-bytes (default is 512).
-.It Cm obs Ns = Ns Ar n
-.Pp
-Specifies the output block size in
-.Ar n
-bytes (default is 512).
-.It Cm bs Ns = Ns Ar n
-.Pp
-Sets both input and output block sizes to
-.Ar n
-bytes, superseding
-.Cm ibs Ns =
-and
-.Cm obs Ns = .
-If no conversion other than
-.Cm sync ,
-.Cm noerror ,
-and
-.Cm notrunc
-is specified, each input block is copied to the output as a
-single block without aggregating short blocks.
-.It Cm cbs Ns = Ns Ar n
-.Pp
-Specifies the conversion block size for
-.Cm block
-and
-.Cm unblock
-in bytes by
-.Ar n
-(default is
-.Cm 0 Ns ).
-If
-.Cm cbs Ns =
-is omitted or given a value of
-.Cm 0 ,
-using
-.Cm block
-or
-.Cm unblock
-produces unspecified results.
-.Pp
-This option is used only if
-.Cm ASCII
-or
-.Cm EBCDIC
-conversion is specified.
-For the
-.Cm ascii
-and
-.Cm asciib
-operands, the input is handled as described for the
-.Cm unblock
-operand except that characters are converted to
-.Cm ASCII
-before the trailing
-.Cm SPACE
-characters are deleted.
-For the
-.Cm ebcdic ,
-.Cm ebcdicb ,
-.Cm ibm ,
-and
-.Cm ibmb
-operands, the input is handled as described for the
-.Cm block
-operand except that the characters are converted to
-.Cm EBCDIC
-or IBM
-.Cm EBCDIC
-after the trailing
-.Cm SPACE
-characters are added.
-.It Cm files Ns = Ns Ar n
-.Pp
-Copies and concatenates
-.Ar n
-input files before terminating (makes sense
-only where input is a magnetic tape or similar device).
-.It Cm skip Ns = Ns Ar n
-.Pp
-Skips
-.Ar n
-input blocks (using the specified input block size) before starting to copy.
-On seekable files, the implementation reads the blocks or seeks past them.
-On non-seekable files, the blocks are read and the data is discarded.
-.It Cm iseek Ns = Ns Ar n
-.Pp
-Seeks
-.Ar n
-blocks from beginning of input file before copying (appropriate
-for disk files, where
-.Cm skip
-can be incredibly slow).
-.It Cm oseek Ns = Ns Ar n
-.Pp
-Seeks
-.Ar n
-blocks from beginning of output file before copying.
-.It Cm seek Ns = Ns Ar n
-.Pp
-Skips
-.Ar n
-blocks (using the specified output block size) from beginning of
-output file before copying.
-On non-seekable files, existing blocks are read and space from the current
-end-of-file to the specified offset, if any, is filled with null bytes.
-On seekable files, the implementation seeks to the specified
-offset or reads the blocks as described for non-seekable files.
-.It Cm ostride Ns = Ns Ar n
-.Pp
-Writes every
-.Ar n Ns
-th block (using the specified output block size) when writing output.
-Skips
-.Ar n
-- 1 blocks after writing each record.
-.It Cm istride Ns = Ns Ar n
-.Pp
-Reads every
-.Ar n Ns
-th block (using the specified input block size) when reading input.
-Skips
-.Ar n
-- 1 blocks after reading each record.
-.It Cm stride Ns = Ns Ar n
-.Pp
-Reads every
-.Ar n Ns
-th block (using the specified input block size) when reading input.
-Skips
-.Ar n
-- 1 blocks after reading each record.
-Also writes every
-.Ar n Ns
-th block (using the specified output block size) when writing output.
-Skips
-.Ar n
-- 1 blocks after writing each record.
-.It Cm count Ns = Ns Ar n
-.Pp
-Copies only
-.Ar n
-input blocks.
-.It Cm conv Ns = Ns Ar value Ns Op , Ns Ar value Ns ...
-.Pp
-Where
-.Ar value Ns
-s are comma-separated symbols from the following list:
-.Bl -hang
-.It Cm ascii
-Converts
-.Cm EBCDIC
-to
-.Cm ASCII .
-.sp
-.It Cm asciib
-Converts
-.Cm EBCDIC
-to
-.Cm ASCII
-using
-.Cm BSD Ns
--compatible character translations.
-.It Cm ebcdic
-Converts
-.Cm ASCII
-to
-.Cm EBCDIC .
-If converting fixed-length
-.Cm ASCII
-records without
-.Cm NEWLINE Ns
-s, sets up a pipeline with
-.Nm
-.Cm conv Ns = Ns Ar unblock
-beforehand.
-.It Cm ebcdicb
-Converts
-.Cm ASCII
-to
-.Cm EBCDIC
-using
-.Cm BSD Ns
--compatible character translations.
-If converting fixed-length
-.Cm ASCII
-records without
-.Cm NEWLINE Ns
-s, sets up a pipeline with
-.Nm
-.Cm conv Ns = Ns Ar unblock
-beforehand.
-.It Cm ibm
-Slightly different map of
-.Cm ASCII
-to
-.Cm EBCDIC .
-If converting fixed-length
-.Cm ASCII
-records without
-.Cm NEWLINE Ns
-s, sets up a pipeline with
-.Nm
-.Cm conv Ns = Ns Ar unblock
-beforehand.
-.It Cm ibmb
-Slightly different map of
-.Cm ASCII
-to
-.Cm EBCDIC
-using
-.Cm BSD Ns
--compatible character translations.
-If converting fixed-length
-.Cm ASCII
-records without
-.Cm NEWLINE Ns
-s, sets up a pipeline with
-.Nm
-.Cm conv Ns = Ns Ar unblock
-beforehand.
-.El
-.Pp
-The
-.Cm ascii
-(or
-.Cm asciib Ns ),
-.Cm ebcdic
-(or
-.Cm ebcdicb Ns ),
-and
-.Cm ibm
-(or
-.Cm ibmb )
-values are mutually exclusive.
-.Bl -hang
-.It Cm block
-Treats the input as a sequence of
-.Cm NEWLINE Ns
--terminated or
-.Cm EOF Ns
--terminated variable-length records independent of the input block boundaries.
-Each record is converted to a record with a fixed length specified
-by the conversion block size.
-Any
-.Cm NEWLINE
-character is removed from the input line.
-.Cm SPACE
-characters are appended to lines that are shorter than their conversion block
-size to fill the block.
-Lines that are longer than the conversion block size are truncated to the
-largest number of characters that will fit into that size.
-The number of truncated lines is reported.
-.It Cm unblock
-Converts fixed-length records to variable length.
-Reads a number of bytes equal to the conversion block size (or the number of
-bytes remaining in the input, if less than the conversion block size),
-delete all trailing
-.Cm SPACE
-characters, and append a
-.Cm NEWLINE
-character.
-.El
-.Pp
-The
-.Cm block
-and
-.Cm unblock
-values are mutually exclusive.
-.Bl -hang
-.It Cm lcase
-Maps upper-case characters specified by the
-.Cm LC_CTYPE
-keyword
-.Cm tolower
-to the corresponding lower-case character.
-Characters for which no mapping is specified are not modified by this
-conversion.
-.It Cm ucase
-Maps lower-case characters specified by the
-.Cm LC_CTYPE
-keyword
-.Cm toupper
-to the corresponding upper-case character.
-Characters for which no mapping is specified are not modified by this
-conversion.
-.El
-.Pp
-The
-.Cm lcase
-and
-.Cm ucase
-symbols are mutually exclusive.
-.Bl -hang
-.It Cm swab
-Swaps every pair of input bytes.
-If the current input record is an odd number of bytes, the last byte in the
-input record is ignored.
-.It Cm noerror
-Does not stop processing on an input error.
-When an input error occurs, a diagnostic message is written on standard error,
-followed by the current input and output block counts in the same format as
-used at completion.
-If the
-.Cm sync
-conversion is specified, the missing input is replaced with null
-bytes and processed normally.
-Otherwise, the input block will be omitted from the output.
-.It Cm notrunc
-Does not truncate the output file.
-Preserves blocks in the output file not explicitly written by this invocation
-of
-.Nm .
-(See also the preceding
-.Cm of Ns = Ns Ar file
-operand.)
-.It Cm sync
-Pads every input block to the size of the
-.Cm ibs Ns =
-buffer, appending null bytes.
-(If either
-.Cm block
-or
-.Cm unblock
-is also specified, appends
-.Cm SPACE
-characters, rather than null bytes.)
-.El
-.It Cm iflag Ns = Ns Ar value Ns Op , Ns Ar value ...
-.Pp
-Where
-.Ar value Ns
-s are comma-separated symbols from the following list which
-affect the behavior of reading from the input file:
-.Bl -hang
-.It Cm fullblock
-Accumulate full blocks of input.
-.El
-.It Cm oflag Ns = Ns Ar value Ns Op , Ns Ar value ...
-.ad
-.sp .6
-Where
-.Ar value Ns
-s are comma-separated symbols from the following list which
-affect the behavior of writing the output file:
-.Bl -hang
-.It Cm dsync
-The output file is opened with the
-.Cm O_DSYNC
-flag set.
-All data writes will be synchronous.
-For more information on
-.Cm O_DSYNC
-see
-.Xr fcntl.h 3HEAD .
-.It Cm sync
-The output file is opened with the
-.Cm O_SYNC .
-All data and metadata writes will be synchronous.
-For more information on
-.Cm O_SYNC
-see
-.Xr fcntl.h 3HEAD .
-.El
-.It Cm status Ns = Ns Ar type
-Changes the way that
-.Nm
-outputs information about transfers.
-Only one
-.Ar type may be specified.
-The following are valid values for
-.Ar type :
-.Bl -hang
-.It Cm none
-The program will not output any information and statistics about the transfer.
-This includes when
-.Nm
-receives a signal such as
-.Dv SIGINFO
-and
-.Dv SIGUSR1 .
-Only errors will be emitted.
-.It Cm noxfer
-When printing statistical information such as when the program terminates or in
-response to a signal, only print information about the number of records and
-none of the statistics about the transfer
-.Pq total bytes, total time, and throughput .
-.It Cm progress
-Once a second, output the normal
-.Nm
-transfer statistics that include the total number of bytes transferred, time
-elapsed, and average throughput.
-.El
-.El
-.Pp
-If operands other than
-.Cm conv Ns =
-and
-.Cm oflag Ns =
-are specified more than once, the last specified
-.Cm operand Ns = Ns Ar value
-is used.
-.Pp
-For the
-.Cm bs Ns = ,
-.Cm cbs Ns = ,
-.Cm ibs Ns = ,
-and
-.Cm obs Ns =
-operands, the application must supply an expression specifying a size in bytes.
-The expression,
-.Cm expr ,
-can be:
-.Bl -enum -offset indent -compact
-.It
-a positive decimal number
-.Pp
-.It
-a positive decimal number followed by
-.Sy k ,
-specifying multiplication by 1024
-.Pp
-.It
-a positive decimal number followed by
-.Sy M ,
-specifying multiplication by 1024*1024
-.Pp
-.It
-a positive decimal number followed by
-.Sy G ,
-specifying multiplication by 1024*1024*1024
-.Pp
-.It
-a positive decimal number followed by
-.Sy T ,
-specifying multiplication by 1024*1024*1024*1024
-.Pp
-.It
-a positive decimal number followed by
-.Sy P ,
-specifying multiplication by 1024*1024*1024*1024*1024
-.Pp
-.It
-a positive decimal number followed by
-.Sy E ,
-specifying multiplication by 1024*1024*1024*1024*1024*1024
-.Pp
-.It
-a positive decimal number followed by
-.Sy Z ,
-specifying multiplication by 1024*1024*1024*1024*1024*1024*1024
-.Pp
-.It
-a positive decimal number followed by
-.Sy b ,
-specifying multiplication by 512
-.Pp
-.It
-two or more positive decimal numbers (with or without
-.Sy k
-or
-.Sy b )
-separated by
-.Sy x ,
-specifying the product of the indicated values.
-.El
-.Pp
-All of the operands will be processed before any input is read.
-.Sh SIGNALS
-When
-.Nm
-receives either SIGINFO or SIGUSR1,
-.Nm
-will emit the current input and output block counts, total bytes written,
-total time elapsed, and the number of bytes per second to standard error.
-This is the same information format that
-.Nm
-emits when it successfully completes.
-Users may send SIGINFO via their terminal.
-The default character is ^T, see
-.Xr stty 1
-for more information.
-.Pp
-For
-.Sy SIGINT ,
-.Nm
-writes status information to standard error before exiting.
-.Nm
-takes the standard action for all other signals.
-.Sh USAGE
-See
-.Xr largefile 5
-for the description of the behavior of
-.Nm
-when encountering files greater than or equal to 2 Gbyte (2^31 bytes).
-.Sh EXIT STATUS
-The following exit values are returned:
-.Bl -tag -width ".It Cm >0"
-.It Cm 0
-The input file was copied successfully.
-.It Cm >0
-An error occurred.
-.El
-.Pp
-If an input error is detected and the
-.Cm noerror
-conversion has not been specified, any partial output block will be written
-to the output file, a diagnostic message will be written, and the copy
-operation will be discontinued.
-If some other error is detected, a diagnostic message will be
-written and the copy operation will be discontinued.
-.Sh EXAMPLES
-.Bl -ohang
-.It Sy Example 1 No Copying from one tape drive to another
-.Pp
-The following example copies from tape drive
-.Sy 0
-to tape drive
-.Sy 1 ,
-using a common historical device naming convention.
-.Pp
-.Dl % dd if=/dev/rmt/0h of=/dev/rmt/1h
-.It Sy Example 2 No Stripping the first 10 bytes from standard input
-.Pp
-The following example strips the first 10 bytes from standard input:
-.Pp
-.Dl % dd ibs=10 skip=1
-.It Sy Example 3 No Reading a tape into an ASCII file
-.Pp
-This example reads an
-.Cm EBCDIC
-tape blocked ten 80-byte
-.Cm EBCDIC
-card images per block into the
-.Cm ASCII
-file
-.Sy x :
-.Pp
-.Dl % dd if=/dev/tape of=x ibs=800 cbs=80 conv=ascii,lcase
-.It Sy Example 4 No Using conv=sync to write to tape
-.Pp
-The following example uses
-.Cm conv Ns = Ns Ar sync
-when writing to a tape:
-.Pp
-.Dl % tar cvf - . | compress | dd obs=1024k of=/dev/rmt/0 conv=sync
-.El
-.Sh DIAGNOSTICS
-.Bl -hang
-.It Sy f+p records in(out)
-numbers of full and partial blocks read(written)
-.El
-.Sh ENVIRONMENT VARIABLES
-See
-.Xr environ 5
-for descriptions of the following environment variables
-that affect the execution of
-.Nm :
-.Ev LANG ,
-.Ev LC_ALL ,
-.Ev LC_CTYPE ,
-.Ev LC_MESSAGES ,
-and
-.Ev NLSPATH .
-.Sh INTERFACE STABILITY
-Standard
-.Sh SEE ALSO
-.Xr cp 1 ,
-.Xr sed 1 ,
-.Xr tr 1 ,
-.Xr fcntl.h 3HEAD ,
-.Xr attributes 5 ,
-.Xr environ 5 ,
-.Xr largefile 5 ,
-.Xr standards 5
-.Sh NOTES
-Do not use
-.Nm
-to copy files between file systems having different block sizes.
-.Pp
-Using a blocked device to copy a file will result in extra nulls being added
-to the file to pad the final block to the block boundary.
-.Pp
-When
-.Nm
-reads from a pipe, using the
-.Cm ibs Ns = Ns Ar X
-and
-.Cm obs Ns = Ns Ar Y
-operands, the output will always be blocked in chunks of size Y.
-When
-.Cm bs Ns = Ns Ar Z
-is used, the output blocks will be whatever was available to be read
-from the pipe at the time.
-.Pp
-When using
-.Nm
-to copy files to a tape device, the file size must be a multiple of the
-device sector size (for example, 512 Kbyte).
-To copy files of arbitrary size to a tape device, use
-.Xr tar 1
-or
-.Xr cpio 1 .
diff --git a/usr/src/man/man1m/devattr.1m b/usr/src/man/man1m/devattr.1m
deleted file mode 100644
index 7719564399..0000000000
--- a/usr/src/man/man1m/devattr.1m
+++ /dev/null
@@ -1,121 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 1997 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH DEVATTR 1M "Jul 5, 1990"
-.SH NAME
-devattr \- display device attributes
-.SH SYNOPSIS
-.LP
-.nf
-\fBdevattr\fR [\fB-v\fR] \fIdevice\fR [\fIattribute\fR]...
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBdevattr\fR displays the values for a device's attributes. The display can be
-presented in two formats. Used without the \fB-v\fR option, only the attribute
-values are shown. Used with the \fB-v\fR option, the attributes are shown in
-an \fIattribute\fR\fB=\fR\fIvalue\fR format. When no attributes are given on
-the command line, all attributes for the specified device are displayed in
-alphabetical order by attribute name. If attributes are given on the command
-line, only those attributes are shown, displayed in command line order.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.RS 6n
-Specifies verbose format. Attribute values are displayed in an
-\fIattribute\fR\fB=\fR\fIvalue\fR format.
-.RE
-
-.SH OPERANDS
-.sp
-.LP
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fB\fIattribute\fR\fR
-.ad
-.RS 13n
-Defines which attribute, or attributes, should be shown. Default is to show all
-attributes for a device. See the \fBputdev\fR(1M) manual page for a complete
-listing and description of available attributes.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIdevice\fR\fR
-.ad
-.RS 13n
-Defines the device whose attributes should be displayed. Can be the pathname of
-the device or the device alias.
-.RE
-
-.SH EXIT STATUS
-.sp
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 5n
-successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB1\fR\fR
-.ad
-.RS 5n
-Command syntax was incorrect, invalid option was used, or an internal error
-occurred.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB2\fR\fR
-.ad
-.RS 5n
-Device table could not be opened for reading.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB3\fR\fR
-.ad
-.RS 5n
-Requested device could not be found in the device table.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB4\fR\fR
-.ad
-.RS 5n
-Requested attribute was not defined for the specified device.
-.RE
-
-.SH FILES
-.sp
-.LP
-\fB/etc/device.tab\fR
-.SH SEE ALSO
-.sp
-.LP
-\fBgetdev\fR(1M), \fBputdev\fR(1M), \fBattributes\fR(5)
diff --git a/usr/src/man/man1m/devfree.1m b/usr/src/man/man1m/devfree.1m
deleted file mode 100644
index 2e143e13c3..0000000000
--- a/usr/src/man/man1m/devfree.1m
+++ /dev/null
@@ -1,122 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 1997 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH DEVFREE 1M "Jul 5, 1990"
-.SH NAME
-devfree \- release devices from exclusive use
-.SH SYNOPSIS
-.LP
-.nf
-\fBdevfree\fR \fIkey\fR [\fIdevice\fR]...
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBdevfree\fR releases devices from exclusive use. Exclusive use is requested
-with the command \fBdevreserv\fR.
-.sp
-.LP
-When \fBdevfree\fR is invoked with only the \fIkey\fR argument, it releases
-all devices that have been reserved for that \fIkey\fR. When called with
-\fIkey\fR and \fIdevice\fR arguments, \fBdevfree\fR releases the specified
-devices that have been reserved with that \fIkey\fR.
-.SH OPERANDS
-.sp
-.LP
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fB\fIdevice\fR\fR
-.ad
-.RS 10n
-Defines device that this command will release from exclusive use. \fIdevice\fR
-can be the pathname of the device or the device alias.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIkey\fR\fR
-.ad
-.RS 10n
-Designates the unique key on which the device was reserved.
-.RE
-
-.SH EXIT STATUS
-.sp
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 5n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB1\fR\fR
-.ad
-.RS 5n
-Command syntax was incorrect, an invalid option was used, or an internal error
-occurred.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB2\fR\fR
-.ad
-.RS 5n
-Device table or device reservation table could not be opened for reading.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB3\fR\fR
-.ad
-.RS 5n
-Reservation release could not be completely fulfilled because one or more of
-the devices was not reserved or was not reserved on the specified key.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/device.tab\fR\fR
-.ad
-.RS 19n
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/devlkfile\fR\fR
-.ad
-.RS 19n
-
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBdevreserv\fR(1M), \fBattributes\fR(5)
-.SH NOTES
-.sp
-.LP
-The commands \fBdevreserv\fR and \fBdevfree\fR are used to manage the
-availability of devices on a system. These commands do not place any
-constraints on the access to the device. They serve only as a centralized
-bookkeeping point for those who wish to use them. Processes that do not use
-\fBdevreserv\fR may concurrently use a device with a process that has reserved
-that device.
diff --git a/usr/src/man/man1m/devfsadm.1m b/usr/src/man/man1m/devfsadm.1m
deleted file mode 100644
index c5b55f52ee..0000000000
--- a/usr/src/man/man1m/devfsadm.1m
+++ /dev/null
@@ -1,273 +0,0 @@
-'\" te
-.\" Copyright (c) 20088888888 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH DEVFSADM 1M "Jun 23, 2008"
-.SH NAME
-devfsadm, devfsadmd \- administration command for /dev
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/devfsadm\fR [\fB-C\fR] [\fB-c\fR \fIdevice_class\fR] [\fB-i\fR \fIdriver_name\fR]
- [ \fB-n\fR] [\fB-r\fR \fIroot_dir\fR] [\fB-s\fR] [\fB-t\fR \fItable_file\fR] [\fB-v\fR]
-.fi
-
-.LP
-.nf
-\fB/usr/lib/devfsadm/devfsadmd\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBdevfsadm\fR(1M) maintains the \fB/dev\fR namespace. It replaces the previous
-suite of \fBdevfs\fR administration tools including \fBdrvconfig\fR(1M),
-\fBdisks\fR(1M), \fBtapes\fR(1M), \fBports\fR(1M), \fBaudlinks\fR(1M), and
-\fBdevlinks\fR(1M).
-.sp
-.LP
-The default operation is to attempt to load every driver in the system and
-attach to all possible device instances. Next, \fBdevfsadm\fR creates logical
-links to device nodes in \fB/dev\fR and \fB/devices\fR and loads the device
-policy.
-.sp
-.LP
-\fBdevfsadmd\fR(1M) is the daemon version of \fBdevfsadm\fR(1M). The daemon is
-started during system startup and is responsible for handling both
-reconfiguration boot processing and updating \fB/dev\fR and \fB/devices\fR in
-response to dynamic reconfiguration event notifications from the kernel.
-.sp
-.LP
-For compatibility purposes, \fBdrvconfig\fR(1M), \fBdisks\fR(1M),
-\fBtapes\fR(1M), \fBports\fR(1M), \fBaudlinks\fR(1M), and \fBdevlinks\fR(1M)
-are implemented as links to \fBdevfsadm\fR.
-.sp
-.LP
-In addition to managing \fB/dev\fR, \fBdevfsadm\fR also maintains the
-\fBpath_to_inst\fR(4) database.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-C\fR\fR
-.ad
-.RS 19n
-Cleanup mode. Prompt \fBdevfsadm\fR to cleanup dangling \fB/dev\fR links that
-are not normally removed. If the \fB-c\fR option is also used, \fBdevfsadm\fR
-only cleans up for the listed devices' classes.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-c\fR \fIdevice_class\fR\fR
-.ad
-.RS 19n
-Restrict operations to devices of class \fIdevice_class\fR. Solaris defines the
-following values for \fIdevice_class\fR: \fBdisk\fR, \fBtape\fR, \fBport\fR,
-\fBaudio\fR, and \fBpseudo\fR. This option might be specified more than once to
-specify multiple device classes.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-i\fR \fIdriver_name\fR\fR
-.ad
-.RS 19n
-Configure only the devices for the named driver, \fIdriver_name\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR\fR
-.ad
-.RS 19n
-Do not attempt to load drivers or add new nodes to the kernel device tree.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR\fR
-.ad
-.RS 19n
-Suppress any changes to \fB/dev\fR. This is useful with the \fB-v\fR option for
-debugging.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-t\fR \fItable_file\fR\fR
-.ad
-.RS 19n
-Read an alternate \fBdevlink.tab\fR file. \fBdevfsadm\fR normally reads
-\fB/etc/devlink.tab\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-r\fR \fIroot_dir\fR\fR
-.ad
-.RS 19n
-Presume that the \fB/dev\fR directory trees are found under \fIroot_dir\fR, not
-directly under \fBroot\fR (\fB/\fR). No other use or assumptions are made about
-\fIroot_dir\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.RS 19n
-Print changes to \fB/dev\fR in verbose mode.
-.RE
-
-.SH EXIT STATUS
-.sp
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 5n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB1\fR\fR
-.ad
-.RS 5n
-An error occurred.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/devices\fR\fR
-.ad
-.sp .6
-.RS 4n
-device nodes directory
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev\fR\fR
-.ad
-.sp .6
-.RS 4n
-logical symbolic links to /devices
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/devfsadm/devfsadmd\fR\fR
-.ad
-.sp .6
-.RS 4n
-devfsadm daemon
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/.devfsadm_dev.lock\fR\fR
-.ad
-.sp .6
-.RS 4n
-update lock file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/.devfsadm_daemon.lock\fR\fR
-.ad
-.sp .6
-.RS 4n
-daemon lock file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/security/device_policy\fR\fR
-.ad
-.sp .6
-.RS 4n
-device policy file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/security/extra_privs\fR\fR
-.ad
-.sp .6
-.RS 4n
-additional device privileges
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBsvcs\fR(1), \fBadd_drv\fR(1M), \fBmodinfo\fR(1M), \fBmodload\fR(1M),
-\fBmodunload\fR(1M), \fBrem_drv\fR(1M), \fBsvcadm\fR(1M), \fBtapes\fR(1M),
-\fBpath_to_inst\fR(4), \fBattributes\fR(5), \fBprivileges\fR(5), \fBsmf\fR(5),
-\fBdevfs\fR(7FS)
-.SH NOTES
-.sp
-.LP
-This document does not constitute an \fBAPI\fR. The \fB/devices\fR directory
-might not exist or might have different contents or interpretations in a future
-release. The existence of this notice does not imply that any other
-documentation that lacks this notice constitutes an \fBAPI\fR.
-.sp
-.LP
-\fBdevfsadm\fR no longer manages the \fB/devices\fR name space. See
-\fBdevfs\fR(7FS).
-.sp
-.LP
-The device configuration service is managed by the service management facility,
-\fBsmf\fR(5), under the service identifier, and can be used to start
-\fBdevfsadm\fR during reconfiguration boot by:
-.sp
-.in +2
-.nf
-svc:/system/device/local:default
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Otherwise, \fBdevfsadm\fR is started by:
-.sp
-.in +2
-.nf
-svc:/system/sysevent:default
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Administrative actions on this service, such as enabling, disabling, or
-requesting restart, can be performed using \fBsvcadm\fR(1M). The service's
-status can be queried using the \fBsvcs\fR(1) command.
diff --git a/usr/src/man/man1m/device_remap.1m b/usr/src/man/man1m/device_remap.1m
deleted file mode 100644
index 62afa3e316..0000000000
--- a/usr/src/man/man1m/device_remap.1m
+++ /dev/null
@@ -1,155 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH DEVICE_REMAP 1M "Dec 24, 2008"
-.SH NAME
-device_remap \- administer the Solaris I/O remapping feature
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/platform/sun4v/sbin/device_remap\fR [\fB-v\fR | \fB-R\fR \fIdir\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-Certain multi-node sun4v platforms, such as T5440 and T5240 servers, have an
-integrated PCI topology that cause the I/O device paths to change in a CPU node
-failover condition. The device remapping script, \fBdevice_remap\fR, remaps the
-device paths in \fB/etc/path_to_inst\fR file and the symlinks under \fB/dev\fR
-to match the hardware.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.sp .6
-.RS 4n
-Displays the \fB/etc/path_to_inst\fR and \fB/dev\fR symlink changes.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-R\fR \fIdir\fR\fR
-.ad
-.sp .6
-.RS 4n
-Perform remapping on the \fB/etc/path_to_inst\fR and \fB/etc/path_to_inst\fR
-files in the root image at \fIdir\fR.
-.RE
-
-.SH USAGE
-.sp
-.LP
-The primary function of \fBdevice_remap\fR is to remap the device paths in the
-\fB/etc/path_to_inst\fR file and the symlinks under \fB/dev\fR in a CPU node
-failover condition to match the hardware.
-.sp
-.LP
-After adding CPU node(s) or removing CPU node(s), boot the system to the OBP
-prompt and use the following procedure:
-.RS +4
-.TP
-1.
-Boot either the failsafe miniroot using: \fBboot\fR \fB-F\fR \fBfailsafe\fR
-, or an install miniroot using \fBboot net\fR \fB-s\fR or similar command.
-.RE
-.RS +4
-.TP
-2.
-Mount the root disk as \fB/mnt\fR.
-.RE
-.RS +4
-.TP
-3.
-Change directory to the mounted root disk:
-.sp
-.in +2
-.nf
-# \fBcd /mnt\fR
-.fi
-.in -2
-.sp
-
-.RE
-.RS +4
-.TP
-4.
-Run \fBdevice_remap\fR script:
-.sp
-.in +2
-.nf
-# \fB/mnt/usr/platform/sun4v/sbin/device_remap\fR
-.fi
-.in -2
-.sp
-
-.RE
-.RS +4
-.TP
-5.
-Boot the system from disk.
-.RE
-.sp
-.LP
-All the error messages are self-explanatory, except for the error message
-"missing ioaliases node" which means the firmware on the system does not
-support device remapping.
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRDisplaying Changes Following Failover
-.sp
-.LP
-The following command displays the \fBpath_to_inst\fR and \fB/dev\fR changes
-following a CPU node failover.
-
-.sp
-.in +2
-.nf
-# \fBdevice_remap -v\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRChanging Directory Prior to Any Changes
-.sp
-.LP
-The following command changes the directory on which the boot image is mounted
-prior to making any changes.
-
-.sp
-.in +2
-.nf
-# \fBdevice_remap -R /newroot\fR
-.fi
-.in -2
-.sp
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Unstable
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBboot\fR(1M), \fBattributes\fR(5)
diff --git a/usr/src/man/man1m/devinfo.1m b/usr/src/man/man1m/devinfo.1m
deleted file mode 100644
index 7a45d8c910..0000000000
--- a/usr/src/man/man1m/devinfo.1m
+++ /dev/null
@@ -1,153 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 1997, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH DEVINFO 1M "May 8, 1997"
-.SH NAME
-devinfo \- print device specific information
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/devinfo\fR \fB-i\fR \fIdevice\fR
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/devinfo\fR \fB-p\fR \fIdevice\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBdevinfo\fR command is used to print device specific information about
-disk devices on standard out. The command can only be used by the superuser.
-.SH OPTIONS
-.sp
-.ne 2
-.na
-\fB\fB-i\fR\fR
-.ad
-.RS 6n
-Prints the following device information:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Device name
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Software version (not supported and prints as \fB0\fR)
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Drive id number (not supported and prints as \fB0\fR)
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Device blocks per cylinder
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Device bytes per block
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Number of device partitions with a block size greater than zero
-.RE
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR\fR
-.ad
-.RS 6n
-Prints the following device partition information:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Device name
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Device major and minor numbers (in hexadecimal)
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Partition start block
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Number of blocks allocated to the partition
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Partition flag
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Partition tag
-.RE
-.RE
-
-.sp
-.LP
-This command is used by various other commands to obtain device specific
-information for the making of file systems and determining partition
-information. If the device cannot be opened, an error message is reported.
-.SH OPERANDS
-.sp
-.ne 2
-.na
-\fB\fIdevice\fR\fR
-.ad
-.RS 10n
-Device name.
-.RE
-
-.SH EXIT STATUS
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 5n
-Successful operation.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB2\fR\fR
-.ad
-.RS 5n
-Operation failed.
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBprtvtoc\fR(1M), \fBattributes\fR(5)
diff --git a/usr/src/man/man1m/devlinks.1m b/usr/src/man/man1m/devlinks.1m
deleted file mode 100644
index 992857dc3f..0000000000
--- a/usr/src/man/man1m/devlinks.1m
+++ /dev/null
@@ -1,307 +0,0 @@
-'\" te
-.\" Copyright (c) 2002 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH DEVLINKS 1M "Jul 15, 2002"
-.SH NAME
-devlinks \- adds /dev entries for miscellaneous devices and pseudo-devices
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/devlinks\fR [\fB-d\fR] [\fB-r\fR \fIrootdir\fR] [\fB-t\fR \fItable-file\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBdevfsadm\fR(1M) is now the preferred command for \fB/dev\fR and
-\fB/devices\fR and should be used instead of \fBdevlinks\fR.
-.sp
-.LP
-\fBdevlinks\fR creates symbolic links from the \fB/dev\fR directory tree to the
-actual block- and character-special device nodes under the \fB/devices\fR
-directory tree. The links are created according to specifications found in the
-\fItable-file\fR (by default \fB/etc/devlink.tab\fR).
-.sp
-.LP
-\fBdevlinks\fR is called each time the system is reconfiguration-booted, and
-can only be run after \fBdrvconfig\fR(1M) is run.
-.sp
-.LP
-The \fItable-file\fR (normally \fB/etc/devlink.tab\fR) is an ASCII file, with
-one line per record. Comment lines, which must contain a hash character
-(`\fB#\fR') as their first character, are allowed. Each entry must contain at
-least two fields, but may contain three fields. Fields are separated by single
-TAB characters.
-.sp
-.LP
-The fields are:
-.sp
-.ne 2
-.na
-\fB\fIdevfs-spec\fR\fR
-.ad
-.RS 18n
-Specification of devinfo nodes that will have links created for them. This
-specification consists of one or more keyword-value pairs, where the keyword is
-separated from the value by an equal-sign (`\fB=\fR'), and keyword-value pairs
-are separated from one another by semicolons.
-.sp
-The possible keywords are:
-.sp
-.ne 2
-.na
-\fB\fItype\fR\fR
-.ad
-.RS 12n
-The devinfo device type. Possible values are specified in
-\fBddi_create_minor_node\fR(9F)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIname\fR\fR
-.ad
-.RS 12n
-The name of the node. This is the portion of the \fB/devices\fR tree entry name
-that occurs before the first `\fB@\fR' or `\fB:\fR' character.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIaddr\fR[\fIn\fR]\fR
-.ad
-.RS 12n
-The address portion of a node name. This is the portion of a node name that
-occurs between the `\fB@\fR' and the `\fB:\fR' characters. It is possible that
-a node may have a name without an address part, which is the case for many of
-the pseudo-device nodes. If a number is given after the \fIaddr\fR it specifies
-a match of a particular comma-separated subfield of the address field:
-\fIaddr1\fR matches the first subfield, \fIaddr2\fR matches the second, and so
-on. \fIaddr0\fR is the same as \fIaddr\fR and matches the whole field.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIminor\fR[\fIn\fR]\fR
-.ad
-.RS 12n
-The minor portion of a node name \(mi the portion of the name after the
-`\fB:\fR'. As with \fIaddr\fR above, a number after the \fIminor\fR keyword
-specifies a subfield to match.
-.RE
-
-Of these four specifications, only the \fItype\fR specification must always be
-present.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIname\fR\fR
-.ad
-.RS 18n
-Specification of the \fB/dev\fR links that correspond to the devinfo nodes.
-This field allows \fBdevlinks\fR to determine matching \fB/dev\fR names for the
-\fB/devices\fR nodes it has found. The specification of this field uses
-escape-sequences to allow portions of the \fB/devices\fR name to be included in
-the \fB/dev\fR name, \fIor\fR to allow a counter to be used in creating node
-names. If a counter is used to create a name, the portion of the name before
-the counter must be specified absolutely, and all names in the
-\fB/dev/\fR-subdirectory that match (up to and including the counter) are
-considered to be subdevices of the same device. This means that they should all
-point to the same directory, \fBname\fR and \fBaddress\fR under the
-\fB/devices/\fR-tree
-.sp
-The possible escape-sequences are:
-.sp
-.ne 2
-.na
-\fB\fB\eD\fR\fR
-.ad
-.RS 8n
-Substitute the \fBdevice-name\fR (name) portion of the corresponding devinfo
-node-name.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\eA\fR\fIn\fR\fR
-.ad
-.RS 8n
-Substitute the \fIn\fRth component of the \fBaddress\fR component of the
-corresponding devinfo node name. Sub-components are separated by commas, and
-sub-component \fB0\fR is the whole \fBaddress\fR component.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\eM\fR\fIn\fR\fR
-.ad
-.RS 8n
-Substitute the \fIn\fRth sub-component of the \fBminor\fR component of the
-corresponding devinfo node name. Sub-components are separated by commas, and
-sub-component \fB0\fR is the whole \fBminor\fR component.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\eN\fR\fIn\fR\fR
-.ad
-.RS 8n
-Substitute the value of a 'counter' starting at \fIn\fR. There can be only one
-counter for each dev-spec, and counter-values will be selected so they are as
-low as possible while not colliding with already-existing link names.
-.sp
-In a dev-spec the \fBcounter\fR sequence should not be followed by a digit,
-either explicitly or as a result of another escape-sequence expansion. If this
-occurs, it would not be possible to correctly match already-existing links to
-their counter entries, since it would not be possible to unambiguously parse
-the already-existing \fB/dev\fR-name.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIextra-dev-link\fR\fR
-.ad
-.RS 18n
-Optional specification of an extra \fB/dev\fR link that points to the initial
-\fB/dev\fR link (specified in field 2). This field may contain a \fBcounter\fR
-escape-sequence (as described for the \fIdev-spec\fR field) but may not contain
-any of the other escape-sequences. It provides a way to specify an alias of a
-particular \fB/dev\fR name.
-.RE
-
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-d\fR\fR
-.ad
-.RS 17n
-Debugging mode \(mi print out all \fBdevinfo\fR nodes found, and indicate what
-links would be created, but do not do anything.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-r\fR \fIrootdir\fR\fR
-.ad
-.RS 17n
-Use \fIrootdir\fR as the root of the \fB/dev\fR and \fB/devices\fR directories
-under which the device nodes and links are created. Changing the root directory
-does not change the location of the \fB/etc/devlink.tab\fR default table, nor
-is the root directory applied to the filename supplied to the \fB-t\fR option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-t\fR \fItable-file\fR\fR
-.ad
-.RS 17n
-Set the table file used by \fBdevlinks\fR to specify the links that must be
-created. If this option is not given, \fB/etc/devlink.tab\fR is used. This
-option gives a way to instruct \fBdevlinks\fR just to perform a particular
-piece of work, since just the links-types that \fBdevlinks\fR is supposed to
-create can be specified in a command-file and fed to \fBdevlinks\fR.
-.RE
-
-.SH ERRORS
-.sp
-.LP
-If \fBdevlinks\fR finds an error in a line of the \fItable-file\fR it prints a
-warning message on its standard output and goes on to the next line in the
-\fItable-file\fR without performing any of the actions specified by the
-erroneous rule.
-.sp
-.LP
-If it cannot create a link for some filesystem-related reason it prints an
-error-message and continues with the current rule.
-.sp
-.LP
-If it cannot read necessary data it prints an error message and continues with
-the next \fItable-file\fR line.
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRUsing the \fB/etc/devlink.tab\fR Fields
-.sp
-.LP
-The following are examples of the \fB/etc/devlink.tab\fR fields:
-
-.sp
-.in +2
-.nf
-type=pseudo;name=win win\eM0
-type=ddi_display framebuffer/\eM0 fb\eN0
-.fi
-.in -2
-
-.sp
-.LP
-The first example states that all devices of type \fBpseudo\fR with a name
-component of \fBwin\fR will be linked to \fB/dev/win\fR\fIx,\fR where \fIx\fR
-is the minor-component of the \fIdevinfo-name\fR (this is always a single-digit
-number for the \fBwin\fR driver).
-
-.sp
-.LP
-The second example states that all devinfo nodes of type \fBddi_display\fR will
-be linked to entries under the \fB/dev/framebuffer\fR directory, with names
-identical to the entire minor component of the \fB/devices\fR name. In addition
-an extra link will be created pointing from \fB/dev/fb\fR\fIn\fR to the entry
-under \fB/dev/framebuffer\fR. This entry will use a counter to end the name.
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/dev\fR\fR
-.ad
-.RS 20n
-entries for the miscellaneous devices for general use
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/devices\fR\fR
-.ad
-.RS 20n
-device nodes
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/devlink.tab\fR\fR
-.ad
-.RS 20n
-the default rule-file
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBdevfsadm\fR(1M), \fBattributes\fR(5), \fBdevfs\fR(7FS),
-\fBddi_create_minor_node\fR(9F)
-.SH BUGS
-.sp
-.LP
-It is very easy to construct mutually-contradictory link specifications, or
-specifications that can never be matched. The program does not check for these
-conditions.
diff --git a/usr/src/man/man1m/devnm.1m b/usr/src/man/man1m/devnm.1m
deleted file mode 100644
index 666043bb92..0000000000
--- a/usr/src/man/man1m/devnm.1m
+++ /dev/null
@@ -1,71 +0,0 @@
-'\" te
-.\" Copyright (c) 1996, Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH DEVNM 1M "Sep 14, 1992"
-.SH NAME
-devnm \- device name
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/devnm\fR \fIname\fR [\fIname\fR]...
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBdevnm\fR command identifies the special file associated with the mounted
-file system where the argument \fIname\fR resides. One or more \fIname\fR can
-be specified.
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRUsing the devnm Command
-.sp
-.LP
-Assuming that \fB/usr\fR is mounted on \fB/dev/dsk/c0t3d0s6\fR, the following
-command :
-
-.sp
-.in +2
-.nf
-/usr/sbin/devnm /usr
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-produces:
-.sp
-.in +2
-.nf
-/dev/dsk/c0t3d0s6 /usr
-.fi
-.in -2
-.sp
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/dev/dsk/*\fR\fR
-.ad
-.RS 15n
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/mnttab\fR\fR
-.ad
-.RS 15n
-
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBmnttab\fR(4), \fBattributes\fR(5)
diff --git a/usr/src/man/man1m/devprop.1m b/usr/src/man/man1m/devprop.1m
deleted file mode 100644
index 3668caa8bf..0000000000
--- a/usr/src/man/man1m/devprop.1m
+++ /dev/null
@@ -1,167 +0,0 @@
-'\" te
-.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH DEVPROP 1M "Sep 26, 2007"
-.SH NAME
-devprop \- display device properties
-.SH SYNOPSIS
-.LP
-.nf
-\fB/sbin/devprop\fR [\fB-n\fR \fIdevice-path\fR] [\fB-vq\fR] [-\fB{b|i|l|s}\fR] [\fIproperty\fR[...]]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBdevprop\fR command displays named device properties from the device
-tree.
-.sp
-.LP
-If a device path is specified on the command line, \fBdevprop\fR displays
-device properties for that device node.
-.sp
-.LP
-The output formats, while Volatile, are patterned after those of
-\fBprtconf\fR(1M).
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-b\fR\fR
-.ad
-.sp .6
-.RS 4n
-The properties to be output are sequences of bytes (\fBDI_PROP_TYPE_BYTES\fR).
-\fB-b\fR, \fB-i\fR, \fB-l\fR, and \fB-s\fR are mutually exclusive of one
-another.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-i\fR\fR
-.ad
-.sp .6
-.RS 4n
-The properties to be output are integers (\fBDI_PROP_TYPE_INT\fR).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR\fR
-.ad
-.sp .6
-.RS 4n
-The properties to be output are 64-bit integers (\fBDI_PROP_TYPE_INT64\fR).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR\fR
-.ad
-.sp .6
-.RS 4n
-The properties to be output are strings (\fBDI_PROP_TYPE_STRING\fR) (the
-default).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR \fIdevice-path\fR\fR
-.ad
-.sp .6
-.RS 4n
-The path to a target device node for which properties are displayed. The
-default path is that of the root node (equivalent to specifying \fB-n\fR
-\fB/\fR).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-q\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies quoted output mode, in which string properties are output surrounded
-by double quotation marks (\fB"\fR).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies verbose mode, in which the name of the property is output before its
-value.
-.RE
-
-.SH OPERANDS
-.sp
-.LP
-The following operand is supported:
-.sp
-.ne 2
-.na
-\fB\fIproperty\fR...\fR
-.ad
-.sp .6
-.RS 4n
-Name of the property to be displayed.
-.RE
-
-.SH EXIT STATUS
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.sp .6
-.RS 4n
-No error occurred.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnon-zero\fR\fR
-.ad
-.sp .6
-.RS 4n
-An error occurred.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability See below.
-.TE
-
-.sp
-.LP
-The command invocation and output are both Volatile. The location of the
-utility is Committed.
-.SH SEE ALSO
-.sp
-.LP
-\fBprtconf\fR(1M), \fBlibdevinfo\fR(3LIB), \fBattributes\fR(5)
diff --git a/usr/src/man/man1m/devreserv.1m b/usr/src/man/man1m/devreserv.1m
deleted file mode 100644
index 44c73d0804..0000000000
--- a/usr/src/man/man1m/devreserv.1m
+++ /dev/null
@@ -1,181 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 1997 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH DEVRESERV 1M "Jul 5, 1990"
-.SH NAME
-devreserv \- reserve devices for exclusive use
-.SH SYNOPSIS
-.LP
-.nf
-\fBdevreserv\fR [\fIkey\fR [\fIdevice-list\fR]...]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBdevreserv\fR reserves devices for exclusive use. When the device is no
-longer required, use \fBdevfree\fR to release it.
-.sp
-.LP
-\fBdevreserv\fR reserves at most one device per \fIdevice-list\fR. Each list
-is searched in linear order until the first available device is found. If a
-device cannot be reserved from each list, the entire reservation fails.
-.sp
-.LP
-When \fBdevreserv\fR is invoked without arguments, it lists the devices that
-are currently reserved and shows to which key it was reserved. When
-\fBdevreserv\fR is invoked with only the \fIkey\fR argument, it lists the
-devices that are currently reserved to that key.
-.SH OPERANDS
-.sp
-.LP
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fB\fIdevice-list\fR\fR
-.ad
-.RS 15n
-Defines a list of devices that \fBdevreserv\fR will search to find an available
-device. The list must be formatted as a single argument to the shell.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIkey\fR\fR
-.ad
-.RS 15n
-Designates a unique key on which the device will be reserved. The key must be a
-positive integer.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRReserving a Floppy Disk and a Cartridge Tape
-.sp
-.LP
-The following example reserves a floppy disk and a cartridge tape:
-
-.sp
-.in +2
-.nf
-$ key=$$
-$ echo "The current Process ID is equal to: $key"
- The Current Process ID is equal to: 10658
-$ devreserv $key diskette1 ctape1
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRListing All Devices Currently Reserved
-.sp
-.LP
-The following example lists all devices currently reserved:
-
-.sp
-.in +2
-.nf
-$ devreserv
- disk1 2423
- diskette1 10658
- ctape1 10658
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRListing All Devices Currently Reserved to a Particular Key
-.sp
-.LP
-The following example lists all devices currently reserved to a particular key:
-
-.sp
-.in +2
-.nf
-$ devreserv $key
- diskette1
- ctape1
-.fi
-.in -2
-.sp
-
-.SH EXIT STATUS
-.sp
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 5n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB1\fR\fR
-.ad
-.RS 5n
-Command syntax was incorrect, an invalid was option used, or an internal error
-occurred.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB2\fR\fR
-.ad
-.RS 5n
-Device table or device reservation table could not be opened for reading.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB3\fR\fR
-.ad
-.RS 5n
-Device reservation request could not be fulfilled.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/device.tab\fR\fR
-.ad
-.RS 19n
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/devlkfile\fR\fR
-.ad
-.RS 19n
-
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBdevfree\fR(1M), \fBattributes\fR(5)
-.SH NOTES
-.sp
-.LP
-The commands \fBdevreserv\fR and \fBdevfree\fR are used to manage the
-availability of devices on a system. Their use is on a participatory basis and
-they do not place any constraints on the actual access to the device. They
-serve as a centralized bookkeeping point for those who wish to use them.
-Devices which have been reserved cannot be used by processes which utilize the
-device reservation functions until the reservation has been canceled. However,
-processes that do not use device reservation may use a device that has been
-reserved since such a process would not have checked for its reservation
-status.
diff --git a/usr/src/man/man1m/df.1m b/usr/src/man/man1m/df.1m
deleted file mode 100644
index cbb11dfca1..0000000000
--- a/usr/src/man/man1m/df.1m
+++ /dev/null
@@ -1,541 +0,0 @@
-.\"
-.\" Sun Microsystems, Inc. gratefully acknowledges The Open Group for
-.\" permission to reproduce portions of its copyrighted documentation.
-.\" Original documentation from The Open Group can be obtained online at
-.\" http://www.opengroup.org/bookstore/.
-.\"
-.\" The Institute of Electrical and Electronics Engineers and The Open
-.\" Group, have given us permission to reprint portions of their
-.\" documentation.
-.\"
-.\" In the following statement, the phrase ``this text'' refers to portions
-.\" of the system documentation.
-.\"
-.\" Portions of this text are reprinted and reproduced in electronic form
-.\" in the SunOS Reference Manual, from IEEE Std 1003.1, 2004 Edition,
-.\" Standard for Information Technology -- Portable Operating System
-.\" Interface (POSIX), The Open Group Base Specifications Issue 6,
-.\" Copyright (C) 2001-2004 by the Institute of Electrical and Electronics
-.\" Engineers, Inc and The Open Group. In the event of any discrepancy
-.\" between these versions and the original IEEE and The Open Group
-.\" Standard, the original IEEE and The Open Group Standard is the referee
-.\" document. The original Standard can be obtained online at
-.\" http://www.opengroup.org/unix/online.html.
-.\"
-.\" This notice shall appear on any product containing this material.
-.\"
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.\"
-.\"
-.\" Copyright 1989 AT&T
-.\" Portions Copyright (c) 1992, X/Open Company Limited All. Rights Reserved.
-.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved.
-.\"
-.TH DF 1M "Apr 14, 2016"
-.SH NAME
-df \- displays number of free disk blocks and free files
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/bin/df\fR [\fB-F\fR \fIFSType\fR] [\fB-abeghklmnPtVvZ\fR]
- [\fB-o\fR \fIFSType-specific_options\fR]
- [\fIblock_device\fR | \fIdirectory\fR | \fIfile\fR | \fIresource\fR ...]
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBdf\fR utility displays the amount of disk space occupied by mounted or
-unmounted file systems, the amount of used and available space, and how much of
-the file system's total capacity has been used. The file system is specified by
-device, or by referring to a file or directory on the specified file system.
-.sp
-.LP
-Used without operands or options, \fBdf\fR reports on all mounted file systems.
-.sp
-.LP
-\fBdf\fR may not be supported for all \fIFSTypes\fR.
-.sp
-.LP
-If \fBdf\fR is run on a networked mount point that the automounter has not yet
-mounted, the file system size will be reported as zero. As soon as the
-automounter mounts the file system, the sizes will be reported correctly.
-.SH OPTIONS
-.ne 2
-.na
-\fB\fB-a\fR\fR
-.ad
-.sp .6
-.RS 4n
-Reports on all file systems including ones whose entries in \fB/etc/mnttab\fR
-(see \fBmnttab\fR(4)) have the \fBignore\fR option set.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-b\fR\fR
-.ad
-.sp .6
-.RS 4n
-Prints the total number of kilobytes free.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-e\fR\fR
-.ad
-.sp .6
-.RS 4n
-Prints only the number of files free.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-F\fR \fIFSType\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the \fIFSType\fR on which to operate. The \fB-F\fR option is intended
-for use with unmounted file systems. The \fIFSType\fR should be specified here
-or be determinable from \fB/etc/vfstab\fR (see \fBvfstab\fR(4)) by matching the
-\fIdirectory\fR, \fIblock_device\fR, or \fIresource\fR with an entry in the
-table, or by consulting \fB/etc/default/fs\fR. See \fBdefault_fs\fR(4).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-g\fR\fR
-.ad
-.sp .6
-.RS 4n
-Prints the entire \fBstatvfs\fR(2) structure. This option is used only for
-mounted file systems. It can not be used with the \fB-o\fR option. This option
-overrides the \fB-b\fR, \fB-e\fR, \fB-k\fR, \fB-n\fR, \fB-P\fR, and \fB-t\fR
-options.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-h\fR\fR
-.ad
-.sp .6
-.RS 4n
-Like \fB-k\fR, except that sizes are in a more human readable format. The
-output consists of one line of information for each specified file system. This
-information includes the file system name, the total space allocated in the
-file system, the amount of space allocated to existing files, the total amount
-of space available for the creation of new files by unprivileged users, and the
-percentage of normally available space that is currently allocated to all files
-on the file system. All sizes are scaled to a human readable format, for
-example, \fB14K\fR, \fB234M\fR, \fB2.7G\fR, or \fB3.0T\fR. Scaling is done by
-repetitively dividing by \fB1024\fR.
-.sp
-This option overrides the \fB-b\fR, \fB-e\fR, \fB-g\fR, \fB-k\fR, \fB-n\fR,
-\fB-t\fR, and \fB-V\fR options. This option only works on mounted filesystems
-and can not be used together with \fB-o\fR option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-k\fR\fR
-.ad
-.sp .6
-.RS 4n
-Prints the allocation in kbytes. The output consists of one line of information
-for each specified file system. This information includes the file system name,
-the total space allocated in the file system, the amount of space allocated to
-existing files, the total amount of space available for the creation of new
-files by unprivileged users, and the percentage of normally available space
-that is currently allocated to all files on the file system. This option
-overrides the \fB-b\fR, \fB-e\fR, \fB-n\fR, and \fB-t\fR options.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR\fR
-.ad
-.sp .6
-.RS 4n
-Reports on local file systems only. This option is used only for mounted file
-systems. It can not be used with the \fB-o\fR option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-m\fR\fR
-.ad
-.sp .6
-.RS 4n
-Like -k, except prints the allocation in mbytes.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR\fR
-.ad
-.sp .6
-.RS 4n
-Prints only the \fIFSType\fR name. Invoked with no operands, this option prints
-a list of mounted file system types. This option is used only for mounted file
-systems. It can not be used with the \fB-o\fR option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-o\fR \fIFSType-specific_options\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies \fIFSType-specific\fR options. These options are comma-separated,
-with no intervening spaces. See the manual page for the \fIFSType-specific\fR
-command for details.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-t\fR\fR
-.ad
-.sp .6
-.RS 4n
-Prints full listings with totals. This option overrides the \fB-b\fR, \fB-e\fR,
-and \fB-n\fR options.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-V\fR\fR
-.ad
-.sp .6
-.RS 4n
-Echoes the complete set of file system specific command lines, but does not
-execute them. The command line is generated by using the options and operands
-provided by the user and adding to them information derived from
-\fB/etc/mnttab\fR, \fB/etc/vfstab\fR, or \fB/etc/default/fs\fR. This option may
-be used to verify and validate the command line.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-Z\fR\fR
-.ad
-.sp .6
-.RS 4n
-Displays mounts in all visible zones. By default, \fBdf\fR only displays mounts
-located within the current zone. This option has no effect in a non-global
-zone.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.sp .6
-.RS 4n
-Like \fB-k\fR, except that sizes are displayed in multiples of the smallest
-block size supported by each specified file system.
-.sp
-The output consists of one line of information for each file system. This one
-line of information includes the following:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-the file system's mount point
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-the file system's name
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-the total number of blocks allocated to the file system
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-the number of blocks allocated to existing files
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-the number of blocks available for the creation of new files by unprivileged
-users
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-the percentage of blocks in use by files
-.RE
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-P\fR\fR
-.ad
-.sp .6
-.RS 4n
-Same as \fB-h\fR except in 512-byte units.
-.RE
-
-.SH OPERANDS
-.LP
-The \fBdf\fR utility interprets operands according to the following precedence:
-\fIblock_device\fR, \fIdirectory\fR, \fIfile\fR. The following operands are
-supported:
-.sp
-.ne 2
-.na
-\fB\fIblock_device\fR\fR
-.ad
-.sp .6
-.RS 4n
-Represents a block special device (for example, \fB/dev/dsk/c1d0s7\fR).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIdirectory\fR\fR
-.ad
-.sp .6
-.RS 4n
-Represents a valid directory name. \fBdf\fR reports on the file system that
-contains \fIdirectory\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIfile\fR\fR
-.ad
-.sp .6
-.RS 4n
-Represents a valid file name. \fBdf\fR reports on the file system that contains
-\fIfile\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIresource\fR\fR
-.ad
-.sp .6
-.RS 4n
-Represents an \fBNFS\fR resource name.
-.RE
-
-.SH USAGE
-.LP
-See \fBlargefile\fR(5) for the description of the behavior of \fBdf\fR when
-encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRExecuting the \fBdf\fR command
-.sp
-.LP
-The following example shows the \fBdf\fR command and its output:
-
-.sp
-.in +2
-.nf
-example% \fB/usr/bin/df\fR
-
-/ (/dev/dsk/c0t0d0s0 ): 287530 blocks 92028 files
-/system/contract (ctfs ): 0 blocks 2147483572 files
-/system/object (objfs ): 0 blocks 2147483511 files
-/usr (/dev/dsk/c0t0d0s6 ): 1020214 blocks 268550 files
-/proc (/proc ): 0 blocks 878 files
-/dev/fd (fd ): 0 blocks 0 files
-/etc/mnttab (mnttab ): 0 blocks 0 files
-/var/run (swap ): 396016 blocks 9375 files
-/tmp (swap ): 396016 blocks 9375 files
-/opt (/dev/dsk/c0t0d0s5 ): 381552 blocks 96649 files
-/export/home (/dev/dsk/c0t0d0s7 ): 434364 blocks 108220 files
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-where the columns represent the mount point, device (or "filesystem", according
-to \fBdf\fR \fB-k\fR), free blocks, and free files, respectively. For contract
-file systems, \fB/system/contract\fR is the mount point, \fBctfs\fR is the
-contract file system (used by \fBSMF\fR) with 0 free blocks and
-2147483582(\fBINTMAX\fR-1) free files. For object file systems,
-\fB/system/object\fR is the mount point, \fBobjfs\fR is the object file system
-(see \fBobjfs\fR(7FS)) with 0 free blocks and 2147483511 free files.
-.LP
-\fBExample 2 \fRWriting Portable Information About the \fB/usr\fR File System
-.sp
-.LP
-The following example writes portable information about the \fB/usr\fR file
-system:
-
-.sp
-.in +2
-.nf
-example% \fB/usr/bin/df -P /usr\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRWriting Portable Information About the \fB/usr/src\fR file
-System
-.sp
-.LP
-Assuming that \fB/usr/src\fR is part of the \fB/usr\fR file system, the
-following example writes portable information :
-
-.sp
-.in +2
-.nf
-example% \fB/usr/bin/df -P /usr/src\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 4 \fRUsing \fBdf\fR to Display Inode Usage
-.sp
-.LP
-The following example displays inode usage on all \fBufs\fR file systems:
-
-.sp
-.in +2
-.nf
-example%\fB/usr/bin/df -F ufs -o i\fR
-.fi
-.in -2
-.sp
-
-.SH ENVIRONMENT VARIABLES
-.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
-that affect the execution of \fBdf\fR: \fBLANG\fR, \fBLC_ALL\fR,
-\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
-.SH EXIT STATUS
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.sp .6
-.RS 4n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB>0\fR\fR
-.ad
-.sp .6
-.RS 4n
-An error occurred.
-.RE
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/dev/dsk/*\fR\fR
-.ad
-.sp .6
-.RS 4n
-Disk devices
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/default/fs\fR\fR
-.ad
-.sp .6
-.RS 4n
-Default local file system type. Default values can be set for the following
-flags in \fB/etc/default/fs\fR. For example: \fBLOCAL=ufs\fR, where \fBLOCAL\fR
-is the default partition for a command if no FSType is specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/mnttab\fR\fR
-.ad
-.sp .6
-.RS 4n
-Mount table
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/vfstab\fR\fR
-.ad
-.sp .6
-.RS 4n
-List of default parameters for each file system
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Standard
-.TE
-
-.SH SEE ALSO
-.LP
-\fBfind\fR(1), \fBdf_ufs\fR(1M), \fBmount\fR(1M), \fBstatvfs\fR(2),
-\fBdefault_fs\fR(4), \fBmnttab\fR(4), \fBvfstab\fR(4), \fBattributes\fR(5),
-\fBenviron\fR(5), \fBlargefile\fR(5), \fBstandards\fR(5), \fBobjfs\fR(7FS)
-.SH NOTES
-.LP
-If \fBUFS\fR logging is enabled on a file system, the disk space used for the
-log is reflected in the \fBdf\fR report. The log is allocated from free blocks
-on the file system, and it is sized approximately \fB1\fR Mbyte per \fB1\fR
-Gbyte of file system, up to 256 Mbytes. The log size may be larger (up to a
-maximum of 512 Mbytes) depending on the number of cylinder groups present in
-the file system.
diff --git a/usr/src/man/man1m/df_ufs.1m b/usr/src/man/man1m/df_ufs.1m
deleted file mode 100644
index f797407b49..0000000000
--- a/usr/src/man/man1m/df_ufs.1m
+++ /dev/null
@@ -1,100 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 2003 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH DF_UFS 1M "Feb 25, 2005"
-.SH NAME
-df_ufs \- report free disk space on ufs file systems
-.SH SYNOPSIS
-.LP
-.nf
-\fBdf\fR \fB-F\fR ufs [\fIgeneric_options\fR] [\fB-o\fR i] [\fIdirectory\fR | \fIspecial\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBdf\fR displays the amount of disk space occupied by \fBufs\fR file systems,
-the amount of used and available space, and how much of the file system's total
-capacity has been used.The amount of space reported as used and available is
-less than the amount of space in the file system; this is because the system
-reserves a fraction of the space in the file system to allow its file system
-allocation routines to work well. The amount reserved is typically about 10%;
-this can be adjusted using \fBtunefs\fR(1M). When all the space on the file
-system except for this reserve is in use, only the superuser can allocate new
-files and data blocks to existing files. When the file system is overallocated
-in this way, \fBdf\fR might report that the file system is more than 100%
-utilized.If neither \fIdirectory\fR nor \fIspecial\fR is specified, \fBdf\fR
-displays information for all mounted ufs file systems.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fIgeneric_options\fR\fR
-.ad
-.RS 19n
-Options supported by the generic \fBdf\fR command. See \fBdf\fR(1M) for a
-description of these options.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-o\fR\fR
-.ad
-.RS 19n
-Specify \fBufs\fR file system specific options. The available option is:
-.sp
-.ne 2
-.na
-\fB\fBi\fR\fR
-.ad
-.RS 5n
-Report the number of used and free inodes. This option can not be used with
-\fIgeneric_options\fR.
-.RE
-
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/mnttab\fR\fR
-.ad
-.RS 15n
-list of file systems currently mounted
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBdf\fR(1M), \fBfsck\fR(1M), \fBfstyp\fR(1M), \fBtunefs\fR(1M),
-\fBmnttab\fR(4), \fBattributes\fR(5), \fBufs\fR(7FS),
-.SH NOTES
-.sp
-.LP
-\fBdf\fR calculates its results differently for mounted and unmounted file
-systems. For unmounted systems, the numbers reflect the 10% reservation. This
-reservation is not reflected in \fBdf\fR output for mounted file systems. For
-this reason, the available space reported by the generic command can differ
-from the available space reported by this module.
-.sp
-.LP
-\fBdf\fR might report remaining capacity even though \fBsyslog\fR warns
-\fBfilesystem full\fR. This issue can occur because \fBdf\fR only uses the
-available fragment count to calculate available space, but the file system
-requires contiguous sets of fragments for most allocations.
-.sp
-.LP
-If you suspect that you have exhausted contiguous fragments on your file
-system, you can use the \fBfstyp\fR(1M) utility with the \fB-v\fR option. In
-the \fBfstyp\fR output, look at the \fBnbfree\fR (number of blocks free) and
-\fBnffree\fR (number of fragments free) fields. On unmounted filesystems, you
-can use \fBfsck\fR(1M) and observe the last line of output, which reports,
-among other items, the number of fragments and the degree of fragmentation. See
-\fBfsck\fR(1M).
diff --git a/usr/src/man/man1m/dfmounts.1m b/usr/src/man/man1m/dfmounts.1m
deleted file mode 100644
index 11051a4ed0..0000000000
--- a/usr/src/man/man1m/dfmounts.1m
+++ /dev/null
@@ -1,137 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 1995, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH DFMOUNTS 1M "May 24, 2005"
-.SH NAME
-dfmounts \- display mounted resource information
-.SH SYNOPSIS
-.LP
-.nf
-\fBdfmounts\fR [\fB-F\fR \fIFSType\fR] [\fB-h\fR] [\fB-o\fR \fIspecific_options\fR]
- [\fIrestriction\fR]...
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBdfmounts\fR shows the local resources shared through a distributed file
-system \fIFSType\fR along with a list of clients that have the resource
-mounted. If \fIrestriction\fR is not specified, \fBdfmounts\fR shows file
-systems that are currently shared on any \fBNFS\fR server.
-\fIspecific_options\fR as well as the availability and semantics of
-\fIrestriction\fR are specific to particular distributed file system types.
-.sp
-.LP
-If \fBdfmounts\fR is entered without arguments, remote resources currently
-mounted on the local system are displayed, regardless of file system type.
-However, the \fBdfmounts\fR command does not display the names of NFS Version 4
-clients.
-.SS "\fBdfmounts\fR Output"
-.sp
-.LP
-The output of \fBdfmounts\fR consists of an optional header line (suppressed
-with the \fB-h\fR flag) followed by a list of lines containing
-whitespace-separated fields. For each resource, the fields are:
-.sp
-.in +2
-.nf
-\fIresource server pathname clients ...\fR
-.fi
-.in -2
-
-.sp
-.LP
-where:
-.sp
-.ne 2
-.na
-\fB\fIresource\fR\fR
-.ad
-.RS 12n
-Specifies the resource name that must be given to the \fBmount\fR(1M) command.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIserver\fR\fR
-.ad
-.RS 12n
-Specifies the system from which the resource was mounted.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIpathname\fR\fR
-.ad
-.RS 12n
-Specifies the pathname that must be given to the \fBshare\fR(1M) command.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIclients\fR\fR
-.ad
-.RS 12n
-Is a comma-separated list of systems that have mounted the resource. Clients
-are listed in the form \fIdomain.\fR, \fIdomain.system\fR, or \fIsystem\fR,
-depending on the file system type.
-.RE
-
-.sp
-.LP
-A field can be null. Each null field is indicated by a hyphen (\(mi) unless the
-remainder of the fields on the line are also null, in which case the hyphen can
-be omitted.
-.sp
-.LP
-Fields with whitespace are enclosed in quotation marks (\fB"\|"\fR).
-.SH OPTIONS
-.sp
-.ne 2
-.na
-\fB\fB-F\fR \fIFSType\fR\fR
-.ad
-.RS 23n
-Specify filesystem type. Defaults to the first entry in \fB/etc/dfs/fstypes\fR.
-\fBNote\fR: currently the only valid \fIFSType\fR is \fBnfs\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-h\fR\fR
-.ad
-.RS 23n
-Suppress header line in output.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-o\fR \fIspecific_options\fR\fR
-.ad
-.RS 23n
-Specify options specific to the filesystem provided by the \fB-F\fR option.
-\fBNote\fR: currently no options are supported.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/dfs/fstypes\fR\fR
-.ad
-.RS 20n
-file system types
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBdfshares\fR(1M), \fBmount\fR(1M), \fBshare\fR(1M), \fBunshare\fR(1M),
-\fBattributes\fR(5)
diff --git a/usr/src/man/man1m/dfmounts_nfs.1m b/usr/src/man/man1m/dfmounts_nfs.1m
deleted file mode 100644
index fa13968341..0000000000
--- a/usr/src/man/man1m/dfmounts_nfs.1m
+++ /dev/null
@@ -1,120 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 1995, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH DFMOUNTS_NFS 1M "Nov 6, 2000"
-.SH NAME
-dfmounts_nfs \- display mounted NFS resource information
-.SH SYNOPSIS
-.LP
-.nf
-\fBdfmounts\fR [\fB-F\fR nfs] [\fB-h\fR] [\fIserver\fR]...
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBdfmounts\fR shows the local resources shared through \fBNFS,\fR along with
-the list of clients that have mounted the resource. The \fB-F\fR flag may be
-omitted if \fBNFS\fR is the only file system type listed in the file
-\fB/etc/dfs/fstypes\fR.
-.sp
-.LP
-\fBdfmounts\fR without options, displays all remote resources mounted on the
-local system, regardless of file system type.
-.sp
-.LP
-The output of \fBdfmounts\fR consists of an optional header line (suppressed
-with the \fB-h\fR flag) followed by a list of lines containing
-whitespace-separated fields. For each resource, the fields are:
-.sp
-.in +2
-.nf
-\fIresource server pathname clients ...\fR
-.fi
-.in -2
-
-.sp
-.LP
-where
-.sp
-.ne 2
-.na
-\fB\fIresource\fR\fR
-.ad
-.RS 12n
-Does not apply to \fBNFS.\fR Printed as a hyphen (-).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIserver\fR\fR
-.ad
-.RS 12n
-Specifies the system from which the resource was mounted.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIpathname\fR\fR
-.ad
-.RS 12n
-Specifies the pathname that must be given to the \fBshare\fR(1M) command.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIclients\fR\fR
-.ad
-.RS 12n
-Is a comma-separated list of systems that have mounted the resource.
-.RE
-
-.SH OPTIONS
-.sp
-.ne 2
-.na
-\fB\fB-F\fR \fBnfs\fR\fR
-.ad
-.RS 10n
-Specifies the \fBnfs\fR-FSType.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-h\fR\fR
-.ad
-.RS 10n
-Suppress header line in output.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIserver\fR\fR
-.ad
-.RS 10n
-Displays information about the resources mounted from each server, where
-\fIserver\fR can be any system on the network. If no server is specified, the
-\fIserver\fR is assumed to be the local system.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/dfs/fstypes\fR\fR
-.ad
-.RS 20n
-
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBmount\fR(1M), \fBshare\fR(1M), \fBunshare\fR(1M), \fBattributes\fR(5)
diff --git a/usr/src/man/man1m/dfshares.1m b/usr/src/man/man1m/dfshares.1m
deleted file mode 100644
index fa724bc120..0000000000
--- a/usr/src/man/man1m/dfshares.1m
+++ /dev/null
@@ -1,127 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 1995, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH DFSHARES 1M "Nov 6, 2000"
-.SH NAME
-dfshares \- list available resources from remote or local systems
-.SH SYNOPSIS
-.LP
-.nf
-\fBdfshares\fR [\fB-F\fR \fIFSType\fR] [\fB-h\fR] [\fB-o\fR \fIspecific_options\fR] [\fIserver\fR]...
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBdfshares\fR provides information about resources available to the host
-through a distributed file system of type \fIFSType\fR. \fIspecific_options\fR
-as well as the semantics of \fIserver\fR are specific to particular distributed
-file systems.
-.sp
-.LP
-If \fBdfshares\fR is entered without arguments, all resources currently shared
-on the local system are displayed, regardless of file system type.
-.sp
-.LP
-The output of \fBdfshares\fR consists of an optional header line (suppressed
-with the \fB-h\fR flag) followed by a list of lines containing
-whitespace-separated fields. For each resource, the fields are:
-.sp
-.in +2
-.nf
-\fIresource server access transport\fR
-.fi
-.in -2
-
-.sp
-.LP
-where
-.sp
-.ne 2
-.na
-\fB\fIresource\fR\fR
-.ad
-.RS 13n
-Specifies the resource name that must be given to the \fBmount\fR(1M) command.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIserver\fR\fR
-.ad
-.RS 13n
-Specifies the name of the system that is making the resource available.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIaccess\fR\fR
-.ad
-.RS 13n
-Specifies the access permissions granted to the client systems, either \fBro\fR
-(for read-only) or \fBrw\fR (for read/write). If \fBdfshares\fR cannot
-determine access permissions, a hyphen (\fB\(mi\fR) is displayed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fItransport\fR\fR
-.ad
-.RS 13n
-Specifies the transport provider over which the resource is shared.
-.RE
-
-.sp
-.LP
-A field may be null. Each null field is indicated by a hyphen (\(mi) unless the
-remainder of the fields on the line are also null; in which case, the hyphen
-may be omitted.
-.SH OPTIONS
-.sp
-.ne 2
-.na
-\fB\fB-F\fR \fIFSType\fR\fR
-.ad
-.RS 23n
-Specify filesystem type. Defaults to the first entry in
-\fB/etc/dfs/fstypes\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-h\fR\fR
-.ad
-.RS 23n
-Suppress header line in output.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-o\fR \fIspecific_options\fR\fR
-.ad
-.RS 23n
-Specify options specific to the filesystem provided by the \fB-F\fR option.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/dfs/fstypes\fR\fR
-.ad
-.RS 20n
-
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBdfmounts\fR(1M), \fBmount\fR(1M), \fBshare\fR(1M), \fBunshare\fR(1M),
-\fBattributes\fR(5)
diff --git a/usr/src/man/man1m/dfshares_nfs.1m b/usr/src/man/man1m/dfshares_nfs.1m
deleted file mode 100644
index f9cacaf0c3..0000000000
--- a/usr/src/man/man1m/dfshares_nfs.1m
+++ /dev/null
@@ -1,126 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 1995, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH DFSHARES_NFS 1M "Nov 6, 2000"
-.SH NAME
-dfshares_nfs \- list available NFS resources from remote systems
-.SH SYNOPSIS
-.LP
-.nf
-\fBdfshares\fR [\fB-F\fR nfs] [\fB-h\fR] [\fIserver\fR]...
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBdfshares\fR provides information about resources available to the host
-through \fBNFS.\fR The \fB-F\fR flag may be omitted if \fBNFS\fR is the first
-file system type listed in the file \fB/etc/dfs/fstypes\fR.
-.sp
-.LP
-The query may be restricted to the output of resources available from one or
-more servers.
-.sp
-.LP
-\fBdfshares\fR without arguments displays all resources shared on the local
-system, regardless of file system type.
-.sp
-.LP
-Specifying \fIserver\fR displays information about the resources shared by
-each server. \fIServer\fR can be any system on the network. If no server is
-specified, then \fIserver\fR is assumed to be the local system.
-.sp
-.LP
-The output of \fBdfshares\fR consists of an optional header line (suppressed
-with the \fB-h\fR flag) followed by a list of lines containing
-whitespace-separated fields. For each resource, the fields are:
-.sp
-.in +2
-.nf
-\fIresource server access transport\fR
-.fi
-.in -2
-
-.sp
-.LP
-where
-.sp
-.ne 2
-.na
-\fB\fIresource\fR\fR
-.ad
-.RS 13n
-Specifies the resource name that must be given to the \fBmount\fR(1M) command.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIserver\fR\fR
-.ad
-.RS 13n
-Specifies the system that is making the resource available.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIaccess\fR\fR
-.ad
-.RS 13n
-Specifies the access permissions granted to the client systems; however,
-\fBdfshares\fR cannot determine this information for an \fBNFS\fR resource and
-populates the field with a hyphen (-).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fItransport\fR\fR
-.ad
-.RS 13n
-Specifies the transport provider over which the \fIresource\fR is shared;
-however, \fBdfshares\fR cannot determine this information for an \fBNFS\fR
-resource and populates the field with a hyphen (-).
-.RE
-
-.sp
-.LP
-A field may be null. Each null field is indicated by a hyphen (-) unless the
-remainder of the fields on the line are also null; in which case, the hyphen
-may be omitted.
-.SH OPTIONS
-.sp
-.ne 2
-.na
-\fB\fB-F\fR \fBnfs\fR\fR
-.ad
-.RS 10n
-Specify the \fBNFS\fR file system type
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-h\fR\fR
-.ad
-.RS 10n
-Suppress header line in output.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/dfs/fstypes\fR\fR
-.ad
-.RS 20n
-
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBmount\fR(1M), \fBshare\fR(1M), \fBunshare\fR(1M), \fBattributes\fR(5)
diff --git a/usr/src/man/man1m/dhcpagent.1m b/usr/src/man/man1m/dhcpagent.1m
deleted file mode 100644
index 780af863ee..0000000000
--- a/usr/src/man/man1m/dhcpagent.1m
+++ /dev/null
@@ -1,895 +0,0 @@
-'\" te
-.\" Copyright (c) 1992-1996 Competitive Automation, Inc. Copyright (c) 2009 Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright (c) 2016-2017, Chris Fraire <cfraire@me.com>.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH DHCPAGENT 1M "Feb 13, 2020"
-.SH NAME
-dhcpagent \- Dynamic Host Configuration Protocol (DHCP) client daemon
-.SH SYNOPSIS
-.nf
-\fBdhcpagent\fR [\fB-a\fR] [ \fB-d\fR \fIn\fR] [\fB-f\fR] [\fB-v\fR]
-.fi
-
-.SH DESCRIPTION
-\fBdhcpagent\fR implements the client half of the Dynamic Host Configuration
-Protocol \fB(DHCP)\fR for machines running illumos software.
-.sp
-.LP
-The \fBdhcpagent\fR daemon obtains configuration parameters for the client
-(local) machine's network interfaces from a \fBDHCP\fR server. These parameters
-may include a lease on an \fBIP\fR address, which gives the client machine use
-of the address for the period of the lease, which may be infinite. If the
-client wishes to use the \fBIP\fR address for a period longer than the lease,
-it must negotiate an extension using \fBDHCP\fR. For this reason,
-\fBdhcpagent\fR must run as a daemon, terminating only when the client machine
-powers down.
-.sp
-.LP
-For IPv4, the \fBdhcpagent\fR daemon is controlled through \fBipadm\fR(1M),
-\fBnwamcfg\fR(1M), or \fBifconfig\fR(1M) in much the same way that the
-\fBinit\fR(1M) daemon is controlled by \fBtelinit\fR(1M). \fBdhcpagent\fR can
-be invoked as a user process, albeit one requiring root privileges, but this is
-not necessary, as \fBipadm\fR(1M), \fBnwamcfg\fR(1M), or \fBifconfig\fR(1M)
-will start \fBdhcpagent\fR automatically.
-.sp
-.LP
-For IPv6, the \fBdhcpagent\fR daemon is invoked automatically by
-\fBin.ndpd\fR(1M). It can also be controlled through \fBifconfig\fR(1M), if
-necessary.
-.sp
-.LP
-When invoked, \fBdhcpagent\fR enters a passive state while it awaits
-instructions from \fBipadm\fR(1M), \fBnwamcfg\fR(1M), \fBifconfig\fR(1M), or
-\fBin.ndpd\fR(1M). When \fBdhcpagent\fR receives a command to configure an
-interface, \fBdhcpagent\fR brings up the interface (if necessary) and starts
-DHCP. Once DHCP is complete, \fBdhcpagent\fR can be queried for the values of
-the various network parameters. In addition, if DHCP was used to obtain a lease
-on an address for an interface, \fBdhcpagent\fR configures the address for use.
-When a lease is obtained, it is automatically renewed as necessary. If the
-lease cannot be renewed, \fBdhcpagent\fR will unconfigure the address, but the
-interface will be left up, and \fBdhcpagent\fR will attempt to acquire a new
-address lease.
-.sp
-.LP
-\fBdhcpagent\fR monitors system suspend/resume events and will validate any
-non-permanent leases with the DHCP server upon resume. Similarly,
-\fBdhcpagent\fR monitors link up/down events and will validate any
-non-permanent leases with the DHCP server when the downed link is brought back
-up. The lease validation mechanism will restart DHCP if the server indicates
-that the existing lease is no longer valid. If the server cannot be contacted,
-then the existing lease will continue. This behavior can be modified with the
-\fBVERIFIED_LEASE_ONLY\fR parameter in the \fB/etc/default/dhcpagent\fR file.
-See the description of this parameter below.
-.sp
-.LP
-For IPv4, if the configured interface is found to be unplumbed, or to have a
-different IP address, subnet mask, or broadcast address from those obtained
-from DHCP, the interface is abandoned from DHCP control.
-.sp
-.LP
-For IPv6, \fBdhcpagent\fR automatically plumbs and unplumbs logical interfaces
-as necessary for the IPv6 addresses supplied by the server. The IPv6 prefix
-length (netmask) is not set by the DHCPv6 protocol, but is instead set by
-\fBin.ndpd\fR(1M) using prefix information obtained by Router Advertisements.
-If any of the logical interfaces created by \fBdhcpagent\fR is unplumbed, or
-configured with a different IP address, it will be abandoned from DHCP control.
-If the link-local interface is unplumbed, then all addresses configured by DHCP
-on that physical interface will be removed.
-.sp
-.LP
-In addition to \fBDHCP\fR, \fBdhcpagent\fR also supports \fBBOOTP\fR (IPv4
-only). See \fIRFC 951, Bootstrap Protocol\fR. Configuration parameters obtained
-from a \fBBOOTP\fR server are treated identically to those received from a
-\fBDHCP\fR server, except that the \fBIP\fR address received from a \fBBOOTP\fR
-server always has an infinite lease.
-.sp
-.LP
-\fBDHCP\fR also acts as a mechanism to configure other information needed by
-the client, for example, the domain name and addresses of routers. Aside from
-the IP address, and for IPv4 alone, the netmask, broadcast address, and default
-router, the agent does not directly configure the workstation, but instead acts
-as a database which may be interrogated by other programs, and in particular by
-\fBdhcpinfo\fR(1).
-.sp
-.LP
-On clients with a single interface, this is quite straightforward. Clients with
-multiple interfaces may present difficulties, as it is possible that some
-information arriving on different interfaces may need to be merged, or may be
-inconsistent. Furthermore, the configuration of the interfaces is asynchronous,
-so requests may arrive while some or all of the interfaces are still
-unconfigured. To handle these cases, one interface may be designated as
-primary, which makes it the authoritative source for the values of \fBDHCP\fR
-parameters in the case where no specific interface is requested. See
-\fBdhcpinfo\fR(1) and \fBifconfig\fR(1M) for details.
-.sp
-.LP
-For IPv4, the \fBdhcpagent\fR daemon can be configured to request a particular
-Fully Qualified Domain Name (FQDN) or host name. See the \fBREQUEST_FQDN\fR or
-\fBREQUEST_HOSTNAME\fR description in the \fBFILES\fR section. When first
-configuring a client to request an FQDN or host name, you must perform the
-following steps as root to ensure that the full DHCP negotiation takes place:
-.sp
-.in +2
-.nf
-# pkill dhcpagent
-# rm /etc/dhcp/\fIinterface\fR.dhc
-# reboot
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-All DHCP packets sent by \fBdhcpagent\fR include a vendor class identifier (RFC
-2132, option code 60; RFC 3315, option code 16). This identifier is the same as
-the platform name returned by the \fBuname\fR \fB-i\fR command, except:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Any commas in the platform name are changed to periods.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-If the name does not start with a stock symbol and a comma, it is automatically
-prefixed with \fBSUNW\fR.
-.RE
-.SS "Messages"
-The \fBdhcpagent\fR daemon writes information and error messages in five
-categories:
-.sp
-.ne 2
-.na
-\fBcritical\fR
-.ad
-.sp .6
-.RS 4n
-Critical messages indicate severe conditions that prevent proper operation.
-.RE
-
-.sp
-.ne 2
-.na
-\fBerrors\fR
-.ad
-.sp .6
-.RS 4n
-Error messages are important, sometimes unrecoverable events due to resource
-exhaustion and other unexpected failure of system calls; ignoring errors may
-lead to degraded functionality.
-.RE
-
-.sp
-.ne 2
-.na
-\fBwarnings\fR
-.ad
-.sp .6
-.RS 4n
-Warnings indicate less severe problems, and in most cases, describe unusual or
-incorrect datagrams received from servers, or requests for service that cannot
-be provided.
-.RE
-
-.sp
-.ne 2
-.na
-\fBinformational\fR
-.ad
-.sp .6
-.RS 4n
-Informational messages provide key pieces of information that can be useful to
-debugging a \fBDHCP\fR configuration at a site. Informational messages are
-generally controlled by the \fB-v\fR option. However, certain critical pieces
-of information, such as the IP address obtained, are always provided.
-.RE
-
-.sp
-.ne 2
-.na
-\fBdebug\fR
-.ad
-.sp .6
-.RS 4n
-Debugging messages, which may be generated at two different levels of
-verbosity, are chiefly of benefit to persons having access to source code, but
-may be useful as well in debugging difficult DHCP configuration problems.
-Debugging messages are only generated when using the \fB-d\fR option.
-.RE
-
-.sp
-.LP
-When \fBdhcpagent\fR is run without the \fB-f\fR option, all messages are sent
-to the system logger \fBsyslog\fR(3C) at the appropriate matching priority and
-with a facility identifier \fBLOG_DAEMON\fR. When \fBdhcpagent\fR is run with
-the \fB-f\fR option, all messages are directed to standard error.
-.SS "DHCP Events and User-Defined Actions"
-If an executable (binary or script) is placed at \fB/etc/dhcp/eventhook\fR, the
-\fBdhcpagent\fR daemon will automatically run that program when any of the
-following events occur:
-.sp
-.ne 2
-.na
-\fB\fBBOUND\fR and \fBBOUND6\fR\fR
-.ad
-.sp .6
-.RS 4n
-These events occur during interface configuration. The event program is invoked
-when \fBdhcpagent\fR receives the DHCPv4 ACK or DHCPv6 Reply message from the
-DHCP server for the lease request of an address, indicating successful initial
-configuration of the interface. (See also the \fBINFORM\fR and \fBINFORM6\fR
-events, which occur when configuration parameters are obtained without address
-leases.)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEXTEND\fR and \fBEXTEND6\fR\fR
-.ad
-.sp .6
-.RS 4n
-These events occur during lease extension. The event program is invoked just
-after \fBdhcpagent\fR receives the DHCPv4 ACK or DHCPv6 Reply from the DHCP
-server for the DHCPv4 REQUEST (renew) message or the DHCPv6 Renew or Rebind
-message.
-.sp
-Note that with DHCPv6, the server might choose to remove some addresses, add
-new address leases, and ignore (allow to expire) still other addresses in a
-given Reply message. The \fBEXTEND6\fR event occurs when a Reply is received
-that leaves one or more address leases still valid, even if the Reply message
-does not extend the lease for any address. The event program is invoked just
-before any addresses are removed, but just after any new addresses are added.
-Those to be removed will be marked with the \fBIFF_DEPRECATED\fR flag.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEXPIRE\fR and \fBEXPIRE6\fR\fR
-.ad
-.sp .6
-.RS 4n
-These events occur during lease expiration. For DHCPv4, the event program is
-invoked just before the leased address is removed from an interface. For
-DHCPv6, the event program is invoked just before the last remaining leased
-addresses are removed from the interface.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBDROP\fR and \fBDROP6\fR\fR
-.ad
-.sp .6
-.RS 4n
-These events occur during the period when an interface is dropped. The event
-program is invoked just before the interface is removed from DHCP control. If
-the interface has been abandoned due the user unplumbing the interface, then
-this event will occur after the user's action has taken place. The interface
-might not be present.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBINFORM\fR and \fBINFORM6\fR\fR
-.ad
-.sp .6
-.RS 4n
-These events occur when an interface acquires new or updated configuration
-information from a DHCP server by means of the DHCPv4 \fBINFORM\fR or the
-DHCPv6 Information-Request message. These messages are sent using an
-\fBifconfig\fR(1M) \fBdhcp inform\fR command or when the DHCPv6 Router
-Advertisement \fBO\fR (letter 0) bit is set and the \fBM\fR bit is not set.
-Thus, these events occur when the DHCP client does not obtain an IP address
-lease from the server, and instead obtains only configuration parameters.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBLOSS6\fR\fR
-.ad
-.sp .6
-.RS 4n
-This event occurs during lease expiration when one or more valid leases still
-remain. The event program is invoked just before expired addresses are removed.
-Those being removed will be marked with the \fBIFF_DEPRECATED\fR flag.
-.sp
-Note that this event is not associated with the receipt of the Reply message,
-which occurs only when one or more valid leases remain, and occurs only with
-DHCPv6. If all leases have expired, then the EXPIRE6 event occurs instead.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBRELEASE\fR and \fBRELEASE6\fR\fR
-.ad
-.sp .6
-.RS 4n
-This event occurs during the period when a leased address is released. The
-event program is invoked just before \fBdhcpagent\fR relinquishes the address
-on an interface and sends the DHCPv4 \fBRELEASE\fR or DHCPv6 Release packet to
-the DHCP server.
-.RE
-
-.sp
-.LP
-The system does not provide a default event program. The file
-\fB/etc/dhcp/eventhook\fR is expected to be owned by root and have a mode of
-755.
-.sp
-.LP
-The event program will be passed two arguments, the interface name and the
-event name, respectively. For DHCPv6, the interface name is the name of the
-physical interface.
-.sp
-.LP
-The event program can use the \fBdhcpinfo\fR(1) utility to fetch additional
-information about the interface. While the event program is invoked on every
-event defined above, it can ignore those events in which it is not interested.
-The event program runs with the same privileges and environment as
-\fBdhcpagent\fR itself, except that \fBstdin\fR, \fBstdout\fR, and \fBstderr\fR
-are redirected to \fB/dev/null\fR. Note that this means that the event program
-runs with root privileges.
-.sp
-.LP
-If an invocation of the event program does not exit after 55 seconds, it is
-sent a \fBSIGTERM\fR signal. If does not exit within the next three seconds, it
-is terminated by a \fBSIGKILL\fR signal.
-.sp
-.LP
-See EXAMPLES for an example event program.
-.SH OPTIONS
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-a\fR\fR
-.ad
-.sp .6
-.RS 4n
-Adopt a configured IPv4 interface. This option is for use with diskless
-\fBDHCP\fR clients. In the case of diskless \fBDHCP\fR, \fBDHCP\fR has already
-been performed on the network interface providing the operating system image
-prior to running \fBdhcpagent\fR. This option instructs the agent to take over
-control of the interface. It is intended primarily for use in boot scripts.
-.sp
-The effect of this option depends on whether the interface is being adopted.
-.sp
-If the interface is being adopted, the following conditions apply:
-.sp
-\fBdhcpagent\fR uses the client id specified in
-\fB/chosen\fR:\fI<client_id>\fR, as published by the PROM or as specified on a
-\fBboot\fR(1M) command line. If this value is not present, the client id is
-undefined. The DHCP server then determines what to use as a client id. It is an
-error condition if the interface is an Infiniband interface and the PROM value
-is not present.
-.sp
-If the interface is not being adopted:
-.sp
-\fBdhcpagent\fR uses the value stored in \fB/etc/default/dhcpagent\fR. If this
-value is not present, the client id is undefined. If the interface is
-Infiniband and there is no value in \fB/etc/default/dhcpagent\fR, a client id
-is generated as described by the draft document on DHCP over Infiniband,
-available at:
-.sp
-.in +2
-.nf
-http://www.ietf.org
-.fi
-.in -2
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-d\fR \fIn\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set debug level to \fIn\fR. Two levels of debugging are currently available, 1
-and 2; the latter is more verbose.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR\fR
-.ad
-.sp .6
-.RS 4n
-Run in the foreground instead of as a daemon process. When this option is used,
-messages are sent to standard error instead of to \fBsyslog\fR(3C).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.sp .6
-.RS 4n
-Provide verbose output useful for debugging site configuration problems.
-.RE
-
-.SH EXAMPLES
-\fBExample 1 \fRExample Event Program
-.sp
-.LP
-The following script is stored in the file \fB/etc/dhcp/eventhook\fR, owned by
-root with a mode of 755. It is invoked upon the occurrence of the events listed
-in the file.
-
-.sp
-.in +2
-.nf
-#!/bin/sh
-
-(
-echo "Interface name: " $1
-echo "Event: " $2
-
-case $2 in
-"BOUND")
- echo "Address acquired from server "\e
- `/sbin/dhcpinfo -i $1 ServerID`
- ;;
-"BOUND6")
- echo "Addresses acquired from server " \e
- `/sbin/dhcpinfo -v6 -i $1 ServerID`
- ;;
-"EXTEND")
- echo "Lease extended for " \e
- `/sbin/dhcpinfo -i $1 LeaseTim`" seconds"
- ;;
-"EXTEND6")
- echo "New lease information obtained on $i"
- ;;
-"EXPIRE" | "DROP" | "RELEASE")
- ;;
-
-esac
-) >/var/run/dhcp_eventhook_output 2>&1
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Note the redirection of stdout and stderr to a file.
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/etc/dhcp/\fIif\fR.dhc\fR\fR
-.ad
-.br
-.na
-\fB\fB/etc/dhcp/\fIif\fR.dh6\fR\fR
-.ad
-.sp .6
-.RS 4n
-Contains the configuration for interface. The mere existence of this file does
-not imply that the configuration is correct, since the lease might have
-expired. On start-up, \fBdhcpagent\fR confirms the validity of the address
-using REQUEST (for DHCPv4) or Confirm (DHCPv6).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/dhcp/duid\fR\fR
-.ad
-.br
-.na
-\fB\fB/etc/dhcp/iaid\fR\fR
-.ad
-.sp .6
-.RS 4n
-Contains persistent storage for system-generated DUID (DHCP Unique Identifier)
-and interface-specific IAID (Identity Association Identifier) values which are
-used if no \fBCLIENT_ID\fR is defined (see below). The format of these files is
-undocumented, and applications should not read from or write to them. Instead,
-\fBdhcpinfo\fR(1) can be used to query the \fBdhcpagent\fR for \fIClientID\fR.
-For DHCPv6 interfaces, the result will contain the DUID. For DHCPv4 interfaces
-with \fBV4_DEFAULT_IAID_DUID\fR enabled (see below), the result will contain
-the IAID and DUID.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/default/dhcpagent\fR\fR
-.ad
-.sp .6
-.RS 4n
-Contains default values for tunable parameters. All values may be qualified
-with the interface they apply to by prepending the interface name and a period
-(".") to the interface parameter name. The parameters include: the interface
-parameter name.
-.sp
-To configure IPv6 parameters, place the string \fB\&.v6\fR between the
-interface name (if any) and the parameter name. For example, to set the global
-IPv6 parameter request list, use \fB\&.v6.PARAM_REQUEST_LIST\fR. To set the
-\fBCLIENT_ID\fR (\fBDUID\fR) on \fBhme0\fR, use \fBhme0.v6.CLIENT_ID\fR.
-.sp
-The parameters include:
-.sp
-.ne 2
-.na
-\fB\fBVERIFIED_LEASE_ONLY\fR\fR
-.ad
-.sp .6
-.RS 4n
-Indicates that a \fBRELEASE\fR rather than a \fBDROP\fR should be performed on
-managed interfaces when the agent terminates. Release causes the client to
-discard the lease, and the server to make the address available again. Drop
-causes the client to record the lease in \fB/etc/dhcp/\fIinterface\fR.dhc\fR or
-\fB/etc/dhcp/\fIinterface\fR.dh6\fR for later use. In addition, when the link
-status changes to \fBup\fR or when the system is resumed after a suspend, the
-client will verify the lease with the server. If the server is unreachable for
-verification, then the old lease will be discarded (even if it has time
-remaining) and a new one obtained.
-.sp
-Enabling this option is often desirable on mobile systems, such as laptops, to
-allow the system to recover quickly from moves.
-.sp
-Default value of this option is \fIno\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBOFFER_WAIT\fR\fR
-.ad
-.sp .6
-.RS 4n
-Indicates how long to wait in seconds between checking for valid
-\fBOFFER\fRs after sending a \fBDISCOVER\fR. For DHCPv6, sets the time to
-wait between checking for valid Advertisements after sending a Solicit.
-.sp
-Default value of this option is \fI3\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBCLIENT_ID\fR\fR
-.ad
-.sp .6
-.RS 4n
-Indicates the value that should be used to uniquely identify the client to the
-server. This value can take one of three basic forms:
-.sp
-.in +2
-.nf
-\fIdecimal\fR,\fIdata\fR...
-0xHHHHH...
-"\fIstring\fR...."
-.fi
-.in -2
-.sp
-
-The first form is an RFC 3315 DUID. This is legal for both IPv4 DHCP and
-DHCPv6. For IPv4, an RFC 4361 Client ID is constructed from this value. In this
-first form, the format of \fIdata\fR... depends on the decimal value. The
-following formats are defined for this first form:
-.sp
-.ne 2
-.na
-\fB1,\fIhwtype\fR,\fItime\fR,\fIlla\fR\fR
-.ad
-.sp .6
-.RS 4n
-Type 1, DUID-LLT. The \fIhwtype\fR value is an integer in the range 0-65535,
-and indicates the type of hardware. The \fItime\fR value is the number of
-seconds since midnight, January 1st, 2000 UTC, and can be omitted to use the
-current system time. The \fIlla\fR value is either a colon-separated MAC
-address or the name of a physical interface. If the name of an interface is
-used, the \fIhwtype\fR value can be omitted. For example: \fB1,,,hme0\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB2,\fIenterprise\fR,\fIhex\fR...\fR
-.ad
-.sp .6
-.RS 4n
-Type 2, DUID-EN. The \fIenterprise\fR value is an integer in the range
-0-4294967295 and represents the SMI Enterprise number for an organization. The
-\fIhex\fR string is an even-length sequence of hexadecimal digits.
-.RE
-
-.sp
-.ne 2
-.na
-\fB3,\fIhwtype\fR,\fIlla\fR\fR
-.ad
-.sp .6
-.RS 4n
-Type 3, DUID-LL. This is the same as DUID-LLT (type 1), except that a time
-stamp is not used.
-.RE
-
-.sp
-.ne 2
-.na
-\fB*,\fIhex\fR\fR
-.ad
-.sp .6
-.RS 4n
-Any other type value (0 or 4-65535) can be used with an even-length hexadecimal
-string.
-.RE
-
-The second and third forms of \fBCLIENT_ID\fR are legal for IPv4 only. These
-both represent raw Client ID (without RFC 4361), in hex, or NVT ASCII string
-format. Thus, "\fBSun\fR" and \fB0x53756E\fR are equivalent.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBV4_DEFAULT_IAID_DUID\fR\fR
-.ad
-.sp .6
-.RS 4n
-Indicates whether to use, when CLIENT_ID is not defined, a system-managed,
-RFC 3315-style (i.e., DHCPv6-style) binding identifier as documented in
-RFC 4361, "Node-specific Client Identifiers for DHCPv4," for IPv4
-interfaces which for purposes of backward compatibility do not normally get
-default binding identifiers.
-.sp
-An IPv4 interface that is not in an IP network multipathing (IPMP) group,
-that is not IP over InfiniBand (IPoIB), and that is not a logical interface
-does not normally get a default binding identifier.
-.sp
-Default value of this option is \fIno\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPARAM_REQUEST_LIST\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies a list of comma-separated integer values of options for which the
-client would like values, or symbolic \fBSite\fR or \fBOption\fR option names.
-Symbolic option names for IPv4 are resolved through \fB/etc/dhcp/inittab\fR.
-Option names for IPv6 are resolved by means of \fB/etc/dhcp/inittab6\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPARAM_IGNORE_LIST\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies a list of options (constructed in the same manner as
-\fBPARAM_REQUEST_LIST\fR) that the DHCP client will ignore. Ignored options are
-treated as though the server did not return the options specified. Ignored
-options are not visible using \fBdhcpinfo\fR(1) or acted on by the client. This
-parameter can be used, for example, to disable an unwanted client name or
-default router.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBREQUEST_FQDN\fR\fR
-.ad
-.sp .6
-.RS 4n
-Indicates the client requests the DHCP server to map the client's leased
-IPv4 address to the Fully Qualified Domain Name (FQDN) associated with the
-network interface that performs DHCP on the client and to collaborate with
-a compatible DNS server to manage A and PTR resource records for the FQDN
-for the life of the lease.
-.sp .6
-The \fIhostname\fR in the FQDN is determined from the following possible
-configurations:
-.sp
-.ne 2
-.na
-1. \fBipadm\fR(1M): include the \fB-1,--primary\fR flag when creating an
-address that uses DHCP so that \fBnodename\fR(4) is used as the
-\fIhostname\fR.
-.ad
-.sp
-.ne 2
-.na
-2. \fBipadm\fR(1M): include the \fB-h,--reqhost\fR \fIhostname\fR switch
-when executing the \fBcreate-addr -T dhcp\fR subcommand, or use the
-\fBset-addrprop -p reqhost=\fR\fIhostname\fR subcommand for any existing
-DHCP address.
-.ad
-.sp
-.ne 2
-.na
-3. \fBnwamcfg\fR(1M): set a property,
-\fBip-primary=\fR\fIon\fR, for an ncu ip that uses DHCP so that
-\fBnodename\fR(4) is used as the \fIhostname\fR.
-.ad
-.sp
-.ne 2
-.na
-4. \fBnwamcfg\fR(1M): set a property,
-\fBip-reqhost=\fR\fIhostname\fR, for an ncu ip that uses DHCP.
-.ad
-.sp
-The \fIhostname\fR value is either a Partially Qualified Domain Name (PQDN)
-or an FQDN (i.e., a "rooted" domain name ending with a '.' or one inferred
-to be an FQDN if it contains at least three DNS labels such as
-srv.example.com). If a PQDN is specified, then an FQDN is constructed if
-\fBDNS_DOMAINNAME\fR is defined or if \fBADOPT_DOMAINNAME\fR is set to
-\fIyes\fR and an eligible domain name (as described below) is available.
-.sp
-If an FQDN is sent, \fBREQUEST_HOSTNAME\fR processing will not be done,
-per RFC 4702 (3.1): "clients that send the Client FQDN option in their
-messages MUST NOT also send the Host Name."
-.sp
-Default value of this option is \fIyes\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBDNS_DOMAINNAME\fR\fR
-.ad
-.sp .6
-.RS 4n
-Indicates the value that should be appended to a PQDN specified by the
-\fB-h,--reqhost\fR option of \fBipadm\fR(1M), by the ncu \fBip-reqhost\fR
-property of \fBnwamcfg\fR(1M), or by \fBnodename\fR(4) to construct an FQDN
-for \fBREQUEST_FQDN\fR processing.
-If the \fIhostname\fR value is already an FQDN, then the value of this
-option is not used.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBADOPT_DOMAINNAME\fR\fR
-.ad
-.sp .6
-.RS 4n
-Indicates that a domain name returned by the DHCP server or the \fBdomain\fR
-from \fBresolv.conf\fR(4) should be adopted if needed to construct an FQDN
-from a PQDN specified by the \fB-h,--reqhost\fR option of \fBipadm\fR(1M),
-by the ncu \fBip-reqhost\fR property of \fBnwamcfg\fR(1M), or by
-\fBnodename\fR(4).
-If the \fIhostname\fR value is already an FQDN, then the value of this
-option is not applicable.
-The eligible DHCP option for domain name is DHCPv4 \fBDNSdmain\fR.
-.sp
-Default value of this option is \fIno\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBREQUEST_HOSTNAME\fR\fR
-.ad
-.sp .6
-.RS 4n
-Indicates the client requests the DHCP server to map the client's leased IPv4
-address to the host name associated with the network interface that performs
-DHCP on the client. The host name must be specified as documented for a
-PQDN in \fBREQUEST_FQDN\fR above or specified in the
-\fB/etc/hostname.\fIinterface\fR\fR file for the relevant interface on a line
-of the form
-.sp
-.in +2
-.nf
-inet \fIhostname\fR
-.fi
-.in -2
-.sp
-
-where \fIhostname\fR is the host name requested.
-.sp
-This option works with DHCPv4 only.
-.sp
-Default value of this option is \fIyes\fR.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/dhcp/eventhook\fR\fR
-.ad
-.sp .6
-.RS 4n
-Location of a DHCP event program.
-.RE
-
-.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Committed
-.TE
-
-.SH SEE ALSO
-\fBdhcpinfo\fR(1), \fBifconfig\fR(1M), \fBinit\fR(1M), \fBin.mpathd\fR(1M),
-\fBin.ndpd\fR(1M), \fBipadm\fR(1M), \fBnwamcfg\fR(1M), \fBsyslog\fR(3C),
-\fBnodename\fR(4), \fBresolv.conf\fR(4), \fBattributes\fR(5), \fBdhcp\fR(5)
-.sp
-.LP
-\fI\fR
-.sp
-.LP
-Croft, B. and Gilmore, J. \fIRFC 951, Bootstrap Protocol (BOOTP)\fR, Network
-Working Group, September 1985.
-.sp
-.LP
-Droms, R. \fIRFC 2131, Dynamic Host Configuration Protocol\fR, Network Working
-Group, March 1997.
-.sp
-.LP
-Lemon, T. and B. Sommerfeld. \fIRFC 4361, Node-specific Client Identifiers for
-Dynamic Host Configuration Protocol Version Four (DHCPv4)\fR. Nominum and Sun
-Microsystems. February 2006.
-.sp
-.LP
-Droms, R. \fIRFC 3315, Dynamic Host Configuration Protocol for IPv6
-(DHCPv6)\fR. Cisco Systems. July 2003.
-.SH NOTES
-The \fBdhcpagent\fR daemon can be used on IPv4 logical interfaces, just as with
-physical interfaces. When used on a logical interface, the daemon automatically
-constructs a Client ID value based on the DUID and IAID values, according to
-RFC 4361. The \fB/etc/default/dhcpagent\fR \fBCLIENT_ID\fR value, if any,
-overrides this automatic identifier.
-.sp
-.LP
-As with physical IPv4 interfaces, the \fB/etc/hostname.hme0:1\fR and
-\fB/etc/dhcp.hme0:1\fR files must also be created in order for \fBhme0:1\fR to
-be automatically plumbed and configured at boot. In addition, unlike physical
-IPv4 interfaces, \fBdhcpagent\fR does not add or remove default routes
-associated with logical interfaces.
-.sp
-.LP
-DHCP can be performed on IPMP IP interfaces to acquire and maintain IPMP data
-addresses. Because an IPMP IP interface has no hardware address, the daemon
-automatically constructs a Client ID using the same approach described above
-for IPv4 logical interfaces. In addition, the lack of a hardware address means
-the daemon must set the "broadcast" flag in all \fBDISCOVER\fR and
-\fBREQUEST\fR messages on IPMP IP interfaces. Some DHCP servers may refuse such
-requests.
-.sp
-.LP
-DHCP can be performed on IP interfaces that are part of an IPMP group (to
-acquire and maintain test addresses). The daemon will automatically set the
-\fBNOFAILOVER\fR and \fBDEPRECATED\fR flags on each test address. Additionally,
-the daemon will not add or remove default routes in this case. Note that the
-actual DHCP packet exchange may be performed over any active IP interface in
-the IPMP group. It is strongly recommended that test addresses have infinite
-leases. Otherwise, an extended network outage detectable only by probes may
-cause test address leases to expire, causing \fBin.mpathd\fR(1M) to revert to
-link-based failure detection and trigger an erroneous repair.
-.sp
-.LP
-With DHCPv6, the link-local interface must be configured using
-\fB/etc/hostname6.hme0\fR in order for DHCPv6 to run on \fBhme0\fR at boot
-time. The logical interfaces for each address are plumbed by \fBdhcpagent\fR
-automatically.
diff --git a/usr/src/man/man1m/diskinfo.1m b/usr/src/man/man1m/diskinfo.1m
deleted file mode 100644
index 8218c7f1ad..0000000000
--- a/usr/src/man/man1m/diskinfo.1m
+++ /dev/null
@@ -1,191 +0,0 @@
-.\"
-.\" This file and its contents are supplied under the terms of the
-.\" Common Development and Distribution License ("CDDL"), version 1.0.
-.\" You may only use this file in accordance with the terms of version
-.\" 1.0 of the CDDL.
-.\"
-.\" A full copy of the text of the CDDL should have accompanied this
-.\" source. A copy of the CDDL is also available via the Internet at
-.\" http://www.illumos.org/license/CDDL.
-.\"
-.\" Copyright 2014 Joyent, Inc.
-.\" Copyright 2016 Nexenta Systems, Inc.
-.\"
-.Dd July 20, 2016
-.Dt DISKINFO 1M
-.Os
-.Sh NAME
-.Nm diskinfo
-.Nd provide disk device inventory and status
-.Sh SYNOPSIS
-.Nm
-.Op Fl Hp
-.Op Fl c Ns | Ns Fl P
-.Sh DESCRIPTION
-The diskinfo tool provides information about the disk devices in the system.
-Because it interacts with the kernel's device management subsystem, this tool
-can be used only from the global zone.
-If run in any other zone, its output will be incomplete and unreliable.
-.Pp
-There are three main modes.
-The default mode, when neither the
-.Fl c
-nor
-.Fl P
-option is specified, provides a basic inventory of the disk devices in the
-system.
-Each line describes a single device and contains the device's attachment bus or
-fabric type, the base name of the device in the
-.Pa /dev/dsk
-directory, the disk's vendor and product identification strings, the size
-.Pq storage capacity
-of the device, whether the device is removable, and whether it is solid-state.
-.Pp
-The
-.Fl P
-option selects physical mode.
-In this mode, each line of output likewise describes one disk device; however,
-the fields provided indicate the base name of the device in the
-.Pa /dev/dsk
-directory, the disk's vendor and product identification strings, the serial
-number of the device, whether the device is faulty as diagnosed by
-.Xr fmd 1M ,
-whether the locate or identification indicator is on for the device
-.Pq if one is present ,
-and the chassis and bay number containing the disk if known.
-.Pp
-The
-.Fl c
-option selects compact mode.
-This mode provides all of the information provided by both the default mode and
-physical mode in a compact format.
-.Pp
-See
-.Sx OUTPUT FIELDS
-below for a detailed description of each column.
-.Sh OPTIONS
-.Bl -tag -width Ds
-.It Fl c
-Select compact mode output.
-At most one of
-.Fl c
-and
-.Fl P
-may be present on the command line.
-.It Fl H
-Do not print a header.
-This provides output suitable for passing into text processing tools.
-.It Fl P
-Select physical mode output.
-At most one of
-.Fl P
-and
-.Fl c
-may be present on the command line.
-.It Fl p
-Parsable output.
-When
-.Fl p
-is selected, the size
-.Pq storage capacity
-is output in bytes instead of in human-readable units, and the device's location
-.Pq if known
-is provided as a comma-separated chassis and bay number instead of a
-human-readable location.
-This option may be used in any output mode and is intended for use by scripts or
-other robotic tooling.
-.El
-.Sh OUTPUT FIELDS
-.Bl -tag -width "LOCATION"
-.It Sy DISK
-The base name of the device node within the
-.Pa /dev/dsk
-directory.
-The names of partitions and/or slices, if any, are derived from this name as
-described by
-.Xr prtvtoc 1M .
-.Pp
-This field is available in all output modes.
-.It Sy FLRS
-A condensed field incorporating the same information as the
-.Sy FLT , LOC , RMV ,
-and
-.Sy SSD
-fields.
-Each field is condensed to a single character.
-If the field is true, the first letter of the field name will appear in its
-position in the string; otherwise, the
-.Qq Sy -
-character will appear instead.
-.Pp
-This field is available only in compact output mode.
-.It Sy FLT
-A boolean field indicating whether the device is faulty; specifically, whether
-the fault indicator
-.Pq if one is present
-is active.
-.Pp
-This field is available only in physical output mode.
-.It Sy LOC
-A boolean field indicating whether the locate or identify indicator, if any,
-associated with the device's bay, is active.
-.Pp
-This field is available only in physical output mode.
-.It Sy LOCATION
-The physical chassis and bay name
-.Po or chassis and bay numbers, if
-.Fl p
-is given
-.Pc
-in which the device is located.
-The chassis number is identified in human-readable output within
-.Bq square brackets ;
-chassis 0 is the host chassis itself.
-The bay name, if any, is provided by the enclosure, typically via a SCSI
-Enclosure Services processor.
-.Pp
-This field is available in compact and physical output modes.
-.It Sy PID
-The product identification string reported by the device.
-.Pp
-This field is available in all output modes.
-.It Sy RMV
-A boolean field indicating whether the device is removable.
-USB storage devices, most optical drives and changers, and certain other devices
-that report themselves as removable will be identified as such.
-.Pp
-This field is available only in default output mode.
-.It Sy SERIAL
-The serial number of the device.
-The entire serial number is reported if the device and its drivers provide it.
-.Pp
-This field is available in compact and physical output modes.
-.It Sy SIZE
-The device's storage capacity.
-If the
-.Fl p
-option is given, this is reported in bytes; otherwise, it is reported in a
-human-readable format with units specified.
-All units are based on powers of 2 and are expressed in SI standard notation.
-.Pp
-This field is available in compact and default output modes.
-.It Sy SSD
-A boolean field indicating whether the device is solid-state.
-.Pp
-This field is available only in default output mode.
-.It Sy TYPE
-The transport
-.Pq fabric or bus
-type by which the storage device is attached to the host, if known.
-Typical transports include SCSI and USB.
-.Pp
-This field is available in compact and default output modes.
-.It Sy VID
-The vendor identification string reported by the device.
-.Pp
-This field is available in all output modes.
-.El
-.Sh SEE ALSO
-.Xr fmd 1M ,
-.Xr prtvtoc 1M ,
-.Xr sd 7D
diff --git a/usr/src/man/man1m/disks.1m b/usr/src/man/man1m/disks.1m
deleted file mode 100644
index cea13c7f0f..0000000000
--- a/usr/src/man/man1m/disks.1m
+++ /dev/null
@@ -1,316 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH DISKS 1M "Jul 2, 2009"
-.SH NAME
-disks \- creates /dev entries for hard disks attached to the system
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/disks\fR [\fB-C\fR] [\fB-r\fR \fIrootdir\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBdevfsadm\fR(1M) is now the preferred command for \fB/dev\fR and should be
-used instead of \fBdisks\fR.
-.sp
-.LP
-\fBdisks\fR creates symbolic links in the \fB/dev/dsk\fR and \fB/dev/rdsk\fR
-directories pointing to the actual disk device special files under the
-\fB/devices\fR directory tree. It performs the following steps:
-.RS +4
-.TP
-1.
-\fBdisks\fR searches the kernel device tree to see what hard disks are
-attached to the system. It notes the \fB/devices\fR pathnames for the slices on
-the drive and determines the physical component of the corresponding
-\fB/dev/dsk\fR or \fB/dev/rdsk\fR name.
-.RE
-.RS +4
-.TP
-2.
-The \fB/dev/dsk\fR and \fB/dev/rdsk\fR directories are checked for disk
-entries \(mi that is, symbolic links with names of the form
-\fBc\fR\fIN\fR[\fBt\fR\fIN\fR]\fBd\fR\fIN\fR\fBs\fR\fIN\fR, or
-\fBc\fR\fIN\fR[\fBt\fR\fIN\fR]\fBd\fRN\fBp\fR\fIN\fR, where \fIN\fR represents
-a decimal number. \fBc\fR\fIN\fR is the logical controller number, an arbitrary
-number assigned by this program to designate a particular disk controller. The
-first controller found on the first occasion this program is run on a system,
-is assigned number \fB0\fR. \fBt\fR\fIN\fR is the bus-address number of a
-subsidiary controller attached to a peripheral bus such as \fBSCSI\fR or
-\fBIPI\fR (the \fBtarget\fR number for \fBSCSI,\fR and the \fBfacility\fR
-number for \fBIPI\fR controllers). \fBd\fR\fIN\fR is the number of the disk
-attached to the controller. \fBs\fR\fIN\fR is the \fIslice\fR number on the
-disk. \fBp\fR\fIN\fR is the FDISK partition number used by \fBfdisk\fR(1M).
-(x86 Only)
-.RE
-.RS +4
-.TP
-3.
-If only some of the disk entries are found in \fB/dev/dsk\fR for a disk that
-has been found under the \fB/devices\fR directory tree, disks creates the
-missing symbolic links. If none of the entries for a particular disk are found
-in \fB/dev/dsk\fR, \fBdisks\fR checks to see if any entries exist for other
-disks attached to the same controller, and if so, creates new entries using the
-same controller number as used for other disks on the same controller. If no
-other \fB/dev/dsk\fR entries are found for slices of disks belonging to the
-same physical controller as the current disk, \fBdisks\fR assigns the
-lowest-unused controller number and creates entries for the disk slices using
-this newly-assigned controller number.
-.RE
-.sp
-.LP
-\fBdisks\fR is run automatically each time a reconfiguration-boot is performed
-or when \fBadd_drv\fR(1M) is executed. When invoking \fBdisks\fR manually,
-first run \fBdrvconfig\fR(1M) to ensure \fB/devices\fR is consistent with the
-current device configuration.
-.SS "Notice to Driver Writers"
-.sp
-.LP
-\fBdisks\fR considers all devices with a node type of \fBDDI_NT_BLOCK,\fR
-\fBDDI_NT_BLOCK_CHAN,\fR \fBDDI_NT_CD,\fR \fBDDI_NT_BLOCK_WWN\fR or
-\fBDDI_NT_CD_CHAN\fR to be disk devices. \fBdisks\fR requires the minor name of
-disk devices obey the following format conventions.
-.sp
-.LP
-The minor name for block interfaces consists of a single lowercase ASCII
-character, \fBa\fR through \fBu\fR, representing the slices and the primary
-partitions. The minor name for logical drive block interfaces consists of the
-strings \fBp5\fR through \fBp36\fR. The minor name for character (raw)
-interfaces consists of a single lowercase ASCII character, \fBa\fR through
-\fBa\fR, followed by the string \fB,raw\fR, representing the slices and the
-primary partitions. The minor name for logical drive character (raw) interfaces
-consists of the string \fBp5\fR through \fBp36\fR followed by \fB,raw\fR.
-.sp
-.LP
-\fBdisks\fR performs the following translations:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBa\fR through \fBp\fR to \fBs0\fR through \fBs15\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBq\fR through \fBu\fR to \fBp0\fR through \fBp4\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBp5\fR through \fBp36\fR to \fBp5\fR through \fBp36\fR
-.RE
-.sp
-.LP
-SPARC drivers should only use the first eight slices: \fBa\fR through \fBh\fR,
-while x86 drivers can use \fBa\fR through \fBu\fR, with \fBq\fR through \fBu\fR
-corresponding to \fBfdisk\fR(1M) primary partitions. \fBq\fR represents the
-entire disk, while \fBr\fR, \fBs\fR, \fBt\fR, and \fBu\fR represent up to four
-additional primary partitions. For logical drives, \fBp5\fR to \fBp36\fR
-correspond to the 32 logical drives that are supported. The device nodes for
-logical drives change dynamically as and when they are created or deleted.
-.sp
-.LP
-To prevent \fBdisks\fR from attempting to automatically generate links for a
-device, drivers must specify a private node type and refrain from using a node
-type: \fBDDI_NT_BLOCK,\fR \fBDDI_NT_BLOCK_CHAN,\fR \fBDDI_NT_CD,\fR or
-\fBDDI_NT_CD_CHAN\fR when calling \fBddi_create_minor_node\fR(9F).
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-C\fR\fR
-.ad
-.RS 14n
-Causes disks to remove any invalid links after adding any new entries to
-\fB/dev/dsk\fR and \fB/dev/rdsk\fR. Invalid links are links which refer to
-non-existent disk nodes that have been removed, powered off, or are otherwise
-inaccessible.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-r\fR \fIrootdir\fR\fR
-.ad
-.RS 14n
-Causes \fBdisks\fR to presume that the \fB/dev/dsk\fR, \fB/dev/rdsk\fR and
-\fB/devices\fR directory trees are found under \fIrootdir\fR, not directly
-under \fB/\fR.
-.RE
-
-.SH ERRORS
-.sp
-.LP
-If disks finds entries of a particular logical controller linked to different
-physical controllers, it prints an error message and exits without making any
-changes to the \fB/dev\fR directory, since it cannot determine which of the two
-alternative logical-to-physical mappings is correct. The links should be
-manually corrected or removed before another reconfiguration-boot is performed.
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRCreating Block and Character Minor Devices
-.sp
-.LP
-The following example demonstrates creating the block and character minor
-devices from within the \fBxkdisk\fR driver's \fBattach\fR(9E) function.
-
-.sp
-.in +2
-.nf
-#include <sys/dkio.h>
-/*
- * Create the minor number by combining the instance number
- * with the slice number.
- */
-#define MINOR_NUM(i, s) ((i) << 4 | (s))
-
-int
-xkdiskattach(dev_info_t *dip, ddi_attach_cmd_t cmd)
-{
- int instance, slice;
- char name[8];
-
- /* other stuff in attach... */
-
- instance = ddi_get_instance(dip);
- for (slice = 0; slice < V_NUMPAR; slice++) {
- /*
- * create block device interface
- */
- sprintf(name, "%c", slice + 'a');
- ddi_create_minor_node(dip, name, S_IFBLK,
- MINOR_NUM(instance, slice), DDI_NT_BLOCK_CHAN, 0);
-
- /*
- * create the raw (character) device interface
- */
- sprintf(name,"%c,raw", slice + 'a');
- ddi_create_minor_node(dip, name, S_IFCHR,
- MINOR_NUM(instance, slice), DDI_NT_BLOCK_CHAN, 0);
- }
-}
-.fi
-.in -2
-
-.sp
-.LP
-Installing the \fBxkdisk\fR disk driver on a Sun Fire 4800, with the driver
-controlling a \fBSCSI\fR disk (target 3 attached to an \fBisp\fR(7D) \fBSCSI
-HBA)\fR and performing a reconfiguration-boot (causing disks to be run) creates
-the following special files in \fB/devices\fR.
-
-.sp
-.in +2
-.nf
-# ls -l /devices/ssm@0,0/pci@18,700000/pci@1/SUNW,isptwo@4/
-brw-r----- 1 root sys 32, 16 Aug 29 00:02 xkdisk@3,0:a
-crw-r----- 1 root sys 32, 16 Aug 29 00:02 xkdisk@3,0:a,raw
-brw-r----- 1 root sys 32, 17 Aug 29 00:02 xkdisk@3,0:b
-crw-r----- 1 root sys 32, 17 Aug 29 00:02 xkdisk@3,0:b,raw
-brw-r----- 1 root sys 32, 18 Aug 29 00:02 xkdisk@3,0:c
-crw-r----- 1 root sys 32, 18 Aug 29 00:02 xkdisk@3,0:c,raw
-brw-r----- 1 root sys 32, 19 Aug 29 00:02 xkdisk@3,0:d
-crw-r----- 1 root sys 32, 19 Aug 29 00:02 xkdisk@3,0:d,raw
-brw-r----- 1 root sys 32, 20 Aug 29 00:02 xkdisk@3,0:e
-crw-r----- 1 root sys 32, 20 Aug 29 00:02 xkdisk@3,0:e,raw
-brw-r----- 1 root sys 32, 21 Aug 29 00:02 xkdisk@3,0:f
-crw-r----- 1 root sys 32, 21 Aug 29 00:02 xkdisk@3,0:f,raw
-brw-r----- 1 root sys 32, 22 Aug 29 00:02 xkdisk@3,0:g
-crw-r----- 1 root sys 32, 22 Aug 29 00:02 xkdisk@3,0:g,raw
-brw-r----- 1 root sys 32, 23 Aug 29 00:02 xkdisk@3,0:h
-crw-r----- 1 root sys 32, 23 Aug 29 00:02 xkdisk@3,0:h,raw
-.fi
-.in -2
-
-.sp
-.LP
-/dev/dsk will contain the disk entries to the block device nodes in
-\fB/devices\fR
-
-.sp
-.in +2
-.nf
-# ls -l /dev/dsk
-/dev/dsk/c0t3d0s0 -> ../../devices/[...]/xkdisk@3,0:a
-/dev/dsk/c0t3d0s1 -> ../../devices/[...]/xkdisk@3,0:b
-/dev/dsk/c0t3d0s2 -> ../../devices/[...]/xkdisk@3,0:c
-/dev/dsk/c0t3d0s3 -> ../../devices/[...]/xkdisk@3,0:d
-/dev/dsk/c0t3d0s4 -> ../../devices/[...]/xkdisk@3,0:e
-/dev/dsk/c0t3d0s5 -> ../../devices/[...]/xkdisk@3,0:f
-/dev/dsk/c0t3d0s6 -> ../../devices/[...]/xkdisk@3,0:g
-/dev/dsk/c0t3d0s7 -> ../../devices/[...]/xkdisk@3,0:h
-.fi
-.in -2
-
-.sp
-.LP
-and /dev/rdsk will contain the disk entries for the character device nodes in
-\fB/devices\fR
-
-.sp
-.in +2
-.nf
-# ls -l /dev/rdsk
-/dev/rdsk/c0t3d0s0 -> ../../devices/[...]/xkdisk@3,0:a,raw
-/dev/rdsk/c0t3d0s1 -> ../../devices/[...]/xkdisk@3,0:b,raw
-/dev/rdsk/c0t3d0s2 -> ../../devices/[...]/xkdisk@3,0:c,raw
-/dev/rdsk/c0t3d0s3 -> ../../devices/[...]/xkdisk@3,0:d,raw
-/dev/rdsk/c0t3d0s4 -> ../../devices/[...]/xkdisk@3,0:e,raw
-/dev/rdsk/c0t3d0s5 -> ../../devices/[...]/xkdisk@3,0:f,raw
-/dev/rdsk/c0t3d0s6 -> ../../devices/[...]/xkdisk@3,0:g,raw
-/dev/rdsk/c0t3d0s7 -> ../../devices/[...]/xkdisk@3,0:h,raw
-.fi
-.in -2
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/dev/dsk/*\fR\fR
-.ad
-.RS 15n
-Disk entries (block device interface)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/rdsk/*\fR\fR
-.ad
-.RS 15n
-Disk entries (character device interface)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/devices/*\fR\fR
-.ad
-.RS 15n
-Device special files (minor device nodes)
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBadd_drv\fR(1M), \fBdevfsadm\fR(1M), \fBfdisk\fR(1M), \fBattributes\fR(5),
-\fBisp\fR(7D), \fBdevfs\fR(7FS), \fBdkio\fR(7I), \fBattach\fR(9E),
-\fBddi_create_minor_node\fR(9F)
-.sp
-.LP
-\fI\fR
-.SH BUGS
-.sp
-.LP
-\fBdisks\fR silently ignores malformed minor device names.
diff --git a/usr/src/man/man1m/diskscan.1m b/usr/src/man/man1m/diskscan.1m
deleted file mode 100644
index d22e66752a..0000000000
--- a/usr/src/man/man1m/diskscan.1m
+++ /dev/null
@@ -1,106 +0,0 @@
-'\" te
-.\" Copyright (c) 1998, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH DISKSCAN 1M "Feb 24, 1998"
-.SH NAME
-diskscan \- perform surface analysis
-.SH SYNOPSIS
-.LP
-.nf
-\fBdiskscan\fR [\fB-W\fR] [\fB-n\fR] [\fB-y\fR] \fIraw_device\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBdiskscan\fR is used by the system administrator to perform surface analysis
-on a portion of a hard disk. The disk portion may be a raw partition or slice;
-it is identified using its raw device name. By default, the specified portion
-of the disk is read (non-destructive) and errors reported on standard error. In
-addition, a progress report is printed on standard out. The list of bad blocks
-should be saved in a file and later fed into \fBaddbadsec\fR(1M), which will
-remap them.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-n\fR\fR
-.ad
-.RS 6n
-Causes \fBdiskscan\fR to suppress linefeeds when printing progress information
-on standard out.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-W\fR\fR
-.ad
-.RS 6n
-Causes \fBdiskscan\fR to perform write and read surface analysis. This type of
-surface analysis is destructive and should be invoked with caution.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-y\fR\fR
-.ad
-.RS 6n
-Causes \fBdiskscan\fR to suppress the warning regarding destruction of
-existing data that is issued when \fB-W\fR is used.
-.RE
-
-.SH OPERANDS
-.sp
-.LP
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fB\fIraw_device\fR\fR
-.ad
-.RS 14n
-The address of the disk drive (see \fBFILES\fR).
-.RE
-
-.SH FILES
-.sp
-.LP
-The raw device should be \fB/dev/rdsk/c?[t?]d?[ps]?\fR. See \fBdisks\fR(1M) for
-an explanation of \fBSCSI\fR and \fBIDE\fR device naming conventions.
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture x86
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBaddbadsec\fR(1M), \fBdisks\fR(1M), \fBfdisk\fR(1M), \fBfmthard\fR(1M),
-\fBformat\fR(1M), \fBattributes\fR(5)
-.SH NOTES
-.sp
-.LP
-The \fBformat\fR(1M) utility is available to format, label, analyze, and repair
-\fBSCSI\fR disks. This utility is included with the \fBdiskscan\fR,
-\fBaddbadsec\fR(1M), \fBfdisk\fR(1M), and \fBfmthard\fR(1M) commands available
-for x86. To format an \fBIDE\fR disk, use the \fB DOS\fR \fBformat\fR utility;
-however, to label, analyze, or repair \fBIDE\fR disks on x86 systems, use the
-Solaris \fBformat\fR(1M) utility.
diff --git a/usr/src/man/man1m/dispadmin.1m b/usr/src/man/man1m/dispadmin.1m
deleted file mode 100644
index 0f7af2d255..0000000000
--- a/usr/src/man/man1m/dispadmin.1m
+++ /dev/null
@@ -1,242 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 2008 Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 2020 (c) Sergio Aguayo, All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH DISPADMIN 1M "Oct 7, 2008"
-.SH NAME
-dispadmin \- process scheduler administration
-.SH SYNOPSIS
-.nf
-\fBdispadmin\fR \fB-l\fR
-.fi
-
-.LP
-.nf
-\fBdispadmin\fR \fB-c\fR \fIclass\fR {\fB-g\fR [\fB-r\fR \fIres\fR] | \fB-s\fR \fIfile\fR}
-.fi
-
-.LP
-.nf
-\fBdispadmin\fR \fB-d\fR [\fIclass\fR]
-.fi
-
-.SH DESCRIPTION
-The \fBdispadmin\fR command displays or changes process scheduler parameters
-while the system is running.
-.sp
-.LP
-\fBdispadmin\fR does limited checking on the values supplied in \fIfile\fR to
-verify that they are within their required bounds. The checking, however, does
-not attempt to analyze the effect that the new values have on the performance
-of the system. Inappropriate values can have a negative effect on system
-performance. (See \fISystem Administration Guide: Advanced Administration\fR.)
-.SH OPTIONS
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-c\fR \fIclass\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the class whose parameters are to be displayed or changed. Valid
-\fIclass\fR values are: \fBRT\fR for the real-time class, \fBTS\fR for the
-time-sharing class, \fBIA\fR for the inter-active class, \fBFSS\fR for the
-fair-share class, and \fBFX\fR for the fixed-priority class. The time-sharing
-and inter-active classes share the same scheduler, so changes to the
-scheduling parameters of one will change those of the other.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-d\fR [\fIclass\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Sets or displays the name of the default scheduling class to be used on reboot
-when starting \fBsvc:/system/scheduler:default\fR. If class name is not
-specified, the name and description of the current default scheduling class is
-displayed. If class name is specified and is a valid scheduling class name,
-then it is saved in \fBdispadmin\fR's private configuration file
-\fB/etc/dispadmin.conf\fR. Only super-users can set the default scheduling
-class.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-g\fR\fR
-.ad
-.sp .6
-.RS 4n
-Gets the parameters for the specified class and writes them to the standard
-output. Parameters for the real-time class are described in \fBrt_dptbl\fR(4).
-Parameters for the time-sharing and inter-active classes are described in
-\fBts_dptbl\fR(4). Parameters for the fair-share class are described in
-\fBFSS\fR(7). Parameters for the fixed-priority class are described in
-\fBfx_dptbl\fR(4).
-.sp
-The \fB-g\fR and \fB-s\fR options are mutually exclusive: you may not retrieve
-the table at the same time you are overwriting it.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR\fR
-.ad
-.sp .6
-.RS 4n
-Lists the scheduler classes currently configured in the system.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-r\fR \fIres\fR\fR
-.ad
-.sp .6
-.RS 4n
-When using the \fB-g\fR option you may also use the \fB-r\fR option to specify
-a resolution to be used for outputting the time quantum values. If no
-resolution is specified, time quantum values are in milliseconds. If \fIres\fR
-is specified it must be a positive integer between 1 and 1000000000 inclusive,
-and the resolution used is the reciprocal of \fIres\fR in seconds. For example,
-a \fIres\fR value of 10 yields time quantum values expressed in tenths of a
-second; a \fIres\fR value of 1000000 yields time quantum values expressed in
-microseconds. If the time quantum cannot be expressed as an integer in the
-specified resolution, it is rounded up to the next integral multiple of the
-specified resolution.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR \fIfile\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets scheduler parameters for the specified class using the values in
-\fIfile\fR. These values overwrite the current values in memory\(emthey become
-the parameters that control scheduling of processes in the specified class. The
-values in \fIfile\fR must be in the format output by the \fB-g\fR option.
-Moreover, the values must describe a table that is the same size (has same
-number of priority levels) as the table being overwritten. Super-user
-privileges are required in order to use the \fB-s\fR option.
-.sp
-Time quantum values for scheduling classes are specified in system clock ticks
-rather than constant-time units. These values are based on the value of the
-kernel's \fBhz\fR variable. By default, the system operates at 1000 Hz and
-thus with a quantum of 1 millisecond. If the kernel tunable \fBhires_tick\fR
-is set to 0, this drops to 100 Hz for a larger quantum of 10 milliseconds.
-.sp
-The \fB-g\fR and \fB-s\fR options are mutually exclusive: you may not retrieve
-the table at the same time you are overwriting it.
-.RE
-
-.SH EXAMPLES
-\fBExample 1 \fRRetrieving the Current Scheduler Parameters for the real-time
-class
-.sp
-.LP
-The following command retrieves the current scheduler parameters for the
-real-time class from kernel memory and writes them to the standard output. Time
-quantum values are in microseconds.
-
-.sp
-.in +2
-.nf
-dispadmin \fB-c\fR RT \fB-g\fR \fB-r\fR 1000000
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fROverwriting the Current Scheduler Parameters for the Real-time
-Class
-.sp
-.LP
-The following command overwrites the current scheduler parameters for the
-real-time class with the values specified in \fBrt.config\fR.
-
-.sp
-.in +2
-.nf
-dispadmin \fB-c\fR RT \fB-s\fR rt.config
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRRetrieving the Current Scheduler Parameters for the
-Time-sharing Class
-.sp
-.LP
-The following command retrieves the current scheduler parameters for the
-time-sharing class from kernel memory and writes them to the standard output.
-Time quantum values are in nanoseconds.
-
-.sp
-.in +2
-.nf
-dispadmin \fB-c\fR TS \fB-g\fR \fB-r\fR 1000000000
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 4 \fROverwriting the Current Scheduler Parameters for the
-Time-sharing Class
-.sp
-.LP
-The following command overwrites the current scheduler parameters for the
-time-sharing class with the values specified in \fBts.config\fR.
-
-.sp
-.in +2
-.nf
-dispadmin \fB-c\fR TS \fB-s\fR ts.config
-.fi
-.in -2
-.sp
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/etc/dispadmin.conf\fR\fR
-.ad
-.sp .6
-.RS 4n
-Possible location for argument to \fB-s\fR option.
-.RE
-
-.SH SEE ALSO
-\fBpriocntl\fR(1), \fBsvcs\fR(1), \fBsvcadm\fR(1M), \fBpriocntl\fR(2),
-\fBfx_dptbl\fR(4), \fBrt_dptbl\fR(4), \fBts_dptbl\fR(4), \fBattributes\fR(5),
-\fBsmf\fR(5), \fBFSS\fR(7)
-.sp
-.LP
-\fI\fR \fI\fR
-.SH DIAGNOSTICS
-\fBdispadmin\fR prints an appropriate diagnostic message if it fails to
-overwrite the current scheduler parameters due to lack of required permissions
-or a problem with the specified input file.
-.SH NOTES
-The default scheduling class setting facility is managed by the service
-management facility, \fBsmf\fR(5), under the service identifier:
-.sp
-.in +2
-.nf
-svc:/system/scheduler:default
-.fi
-.in -2
-
-.sp
-.LP
-Administrative actions on this service, such as enabling, disabling, or
-requesting restart, can be performed using \fBsvcadm\fR(1M). Note that
-disabling the service while it is running will not change anything. The
-service's status can be queried using the \fBsvcs\fR(1) command.
diff --git a/usr/src/man/man1m/dladm.1m b/usr/src/man/man1m/dladm.1m
deleted file mode 100644
index fb7ad61939..0000000000
--- a/usr/src/man/man1m/dladm.1m
+++ /dev/null
@@ -1,6175 +0,0 @@
-.\"
-.\" Sun Microsystems, Inc. gratefully acknowledges The Open Group for
-.\" permission to reproduce portions of its copyrighted documentation.
-.\" Original documentation from The Open Group can be obtained online at
-.\" http://www.opengroup.org/bookstore/.
-.\"
-.\" The Institute of Electrical and Electronics Engineers and The Open
-.\" Group, have given us permission to reprint portions of their
-.\" documentation.
-.\"
-.\" In the following statement, the phrase ``this text'' refers to portions
-.\" of the system documentation.
-.\"
-.\" Portions of this text are reprinted and reproduced in electronic form
-.\" in the SunOS Reference Manual, from IEEE Std 1003.1, 2004 Edition,
-.\" Standard for Information Technology -- Portable Operating System
-.\" Interface (POSIX), The Open Group Base Specifications Issue 6,
-.\" Copyright (C) 2001-2004 by the Institute of Electrical and Electronics
-.\" Engineers, Inc and The Open Group. In the event of any discrepancy
-.\" between these versions and the original IEEE and The Open Group
-.\" Standard, the original IEEE and The Open Group Standard is the referee
-.\" document. The original Standard can be obtained online at
-.\" http://www.opengroup.org/unix/online.html.
-.\"
-.\" This notice shall appear on any product containing this material.
-.\"
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.\"
-.\"
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 2017 Joyent, Inc.
-.\" Copyright 2020 RackTop Systems, Inc.
-.\" Copyright 2021 OmniOS Community Edition (OmniOSce) Association.
-.\"
-.TH DLADM 1M "October 20, 2021"
-.SH NAME
-dladm \- administer data links
-.SH SYNOPSIS
-\fBdladm help\fR
-
-.LP
-.nf
-\fBdladm show-link\fR [\fB-P\fR] [\fB-s\fR [\fB-i\fR \fIinterval\fR]] [[\fB-p\fR] \fB-o\fR \fIfield\fR[,...]] [\fIlink\fR]
-\fBdladm rename-link\fR [\fB-R\fR \fIroot-dir\fR] [\fB-z\fR \fIzonename\fR] \fIlink\fR \fInew-link\fR
-.fi
-
-.LP
-.nf
-\fBdladm delete-phys\fR \fIphys-link\fR
-\fBdladm show-phys\fR [\fB-m\fR | \fB-H\fR | \fB-P\fR] [[\fB-p\fR] \fB-o\fR \fIfield\fR[,...]] [\fIphys-link\fR]
-.fi
-
-.LP
-.nf
-\fBdladm create-aggr\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] [\fB-P\fR \fIpolicy\fR] [\fB-L\fR \fImode\fR]
- [\fB-T\fR \fItime\fR] [\fB-u\fR \fIaddress\fR] \fB-l\fR \fIether-link1\fR [\fB-l\fR \fIether-link2\fR...] \fIaggr-link\fR
-\fBdladm modify-aggr\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] [\fB-P\fR \fIpolicy\fR] [\fB-L\fR \fImode\fR]
- [\fB-T\fR \fItime\fR] [\fB-u\fR \fIaddress\fR] \fIaggr-link\fR
-\fBdladm delete-aggr\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] \fIaggr-link\fR
-\fBdladm add-aggr\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] \fB-l\fR \fIether-link1\fR [\fB-l\fR \fIether-link2\fR...]
- \fIaggr-link\fR
-\fBdladm remove-aggr\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] \fB-l\fR \fIether-link1\fR [\fB-l\fR \fIether-link2\fR...]
- \fIaggr-link\fR
-\fBdladm show-aggr\fR [\fB-PLx\fR] [\fB-s\fR [\fB-i\fR \fIinterval\fR]] [[\fB-p\fR] \fB-o\fR \fIfield\fR[,...]]
- [\fIaggr-link\fR]
-.fi
-
-.LP
-.nf
-\fBdladm create-bridge\fR [\fB-P\fR \fIprotect\fR] [\fB-R\fR \fIroot-dir\fR] [\fB-p\fR \fIpriority\fR]
- [\fB-m\fR \fImax-age\fR] [\fB-h\fR \fIhello-time\fR] [\fB-d\fR \fIforward-delay\fR] [\fB-f\fR \fIforce-protocol\fR]
- [\fB-l\fR \fIlink\fR...] \fIbridge-name\fR
-.fi
-
-.LP
-.nf
-\fBdladm modify-bridge\fR [\fB-P\fR \fIprotect\fR] [\fB-R\fR \fIroot-dir\fR] [\fB-p\fR \fIpriority\fR]
- [\fB-m\fR \fImax-age\fR] [\fB-h\fR \fIhello-time\fR] [\fB-d\fR \fIforward-delay\fR] [\fB-f\fR \fIforce-protocol\fR]
- \fIbridge-name\fR
-.fi
-
-.LP
-.nf
-\fBdladm delete-bridge\fR [\fB-R\fR \fIroot-dir\fR] \fIbridge-name\fR
-.fi
-
-.LP
-.nf
-\fBdladm add-bridge\fR [\fB-R\fR \fIroot-dir\fR] \fB-l\fR \fIlink\fR [\fB-l\fR \fIlink\fR...]\fIbridge-name\fR
-.fi
-
-.LP
-.nf
-\fBdladm remove-bridge\fR [\fB-R\fR \fIroot-dir\fR] \fB-l\fR \fIlink\fR [\fB-l\fR \fIlink\fR...] \fIbridge-name\fR
-.fi
-
-.LP
-.nf
-\fBdladm show-bridge\fR [\fB-flt\fR] [\fB-s\fR [\fB-i\fR \fIinterval\fR]] [[\fB-p\fR] \fB-o\fR \fIfield\fR,...]
- [\fIbridge-name\fR]
-.fi
-
-.LP
-.nf
-\fBdladm create-vlan\fR [\fB-ft\fR] [\fB-R\fR \fIroot-dir\fR] \fB-l\fR \fIether-link\fR \fB-v\fR \fIvid\fR [\fIvlan-link\fR]
-\fBdladm delete-vlan\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] \fIvlan-link\fR
-\fBdladm show-vlan\fR [\fB-P\fR] [[\fB-p\fR] \fB-o\fR \fIfield\fR[,...]] [\fIvlan-link\fR]
-.fi
-
-.LP
-.nf
-\fBdladm scan-wifi\fR [[\fB-p\fR] \fB-o\fR \fIfield\fR[,...]] [\fIwifi-link\fR]
-\fBdladm connect-wifi\fR [\fB-e\fR \fIessid\fR] [\fB-i\fR \fIbssid\fR] [\fB-k\fR \fIkey\fR,...]
- [\fB-s\fR none | wep | wpa ] [\fB-a\fR open | shared] [\fB-b\fR bss | ibss] [\fB-c\fR]
- [\fB-m\fR a | b | g] [\fB-T\fR \fItime\fR] [\fIwifi-link\fR]
-\fBdladm disconnect-wifi\fR [\fB-a\fR] [\fIwifi-link\fR]
-\fBdladm show-wifi\fR [[\fB-p\fR] \fB-o\fR \fIfield\fR[,...]] [\fIwifi-link\fR]
-.fi
-
-.LP
-.nf
-\fBdladm show-ether\fR [\fB-x\fR] [[\fB-p\fR] \fB-o\fR \fIfield\fR[,...]] [\fIether-link\fR]
-.fi
-
-.LP
-.nf
-\fBdladm set-linkprop\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] [\fB-z\fR \fIzonename\fR] \fB-p\fR \fIprop\fR=\fIvalue\fR[,...]
- \fIlink\fR
-\fBdladm reset-linkprop\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] [\fB-z\fR \fIzonename\fR] [\fB-p\fR \fIprop\fR[,...]] \fIlink\fR
-\fBdladm show-linkprop\fR [\fB-P\fR] [\fB-z\fR \fIzonename\fR] [[\fB-c\fR] \fB-o\fR \fIfield\fR[,...]]
- [\fB-p\fR \fIprop\fR[,...]] [\fIlink\fR]
-.fi
-
-.LP
-.nf
-\fBdladm create-secobj\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] [\fB-f\fR \fIfile\fR] \fB-c\fR \fIclass\fR \fIsecobj\fR
-\fBdladm delete-secobj\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] \fIsecobj\fR[,...]
-\fBdladm show-secobj\fR [\fB-P\fR] [[\fB-p\fR] \fB-o\fR \fIfield\fR[,...]] [\fIsecobj\fR,...]
-.fi
-
-.LP
-.nf
-\fBdladm create-vnic\fR [\fB-t\fR] \fB-l\fR \fIlink\fR [\fB-R\fR \fIroot-dir\fR] [\fB-m\fR \fIvalue\fR | auto |
- {factory \fB-n\fR \fIslot-identifier\fR]} | {random [\fB-r\fR \fIprefix\fR]}]
- [\fB-v\fR \fIvlan-id\fR] [\fB-p\fR \fIprop\fR=\fIvalue\fR[,...]] \fIvnic-link\fR
-\fBdladm delete-vnic\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] [\fB-z\fR \fIzonename\fR] \fIvnic-link\fR
-\fBdladm show-vnic\fR [\fB-pP\fR] [\fB-s\fR [\fB-i\fR \fIinterval\fR]] [\fB-o\fR \fIfield\fR[,...]]
- [\fB-l\fR \fIlink\fR] [\fB-z\fR \fIzonename\fR] [\fIvnic-link\fR]
-.fi
-
-.LP
-.nf
-\fBdladm create-etherstub\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] \fIetherstub\fR
-\fBdladm delete-etherstub\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] \fIetherstub\fR
-\fBdladm show-etherstub\fR [\fIetherstub\fR]
-.fi
-
-.LP
-.nf
-\fBdladm create-iptun\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] \fB-T\fR \fItype\fR
- [-a {local|remote}=<addr>[,...]] \fIiptun-link\fR
-\fBdladm modify-iptun\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] [-a {local|remote}=<addr>[,...]]
- \fIiptun-link\fR
-\fBdladm delete-iptun\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] \fIiptun-link\fR
-\fBdladm show-iptun\fR [\fB-P\fR] [[\fB-p\fR] \fB-o\fR \fIfield\fR[,...]] [\fIiptun-link\fR]
-.fi
-
-.LP
-.nf
-\fBdladm create-overlay\fR [\fB-t\fR] \fB-e\fR \fIencap\fR \fB-s\fR \fIsearch\fR \fB-v\fR \fIvnetid\fR [\fB-p\fR \fIprop\fR=\fIvalue\fR[,...]] \fIoverlay\fR
-\fBdladm delete-overlay\fR \fIoverlay\fR
-\fBdladm modify-overlay\fR \fB-d\fR \fImac\fR | \fB-f\fR | \fB-s\fR \fImac=ip:port\fR \fIoverlay\fR
-\fBdladm show-overlay\fR [ \fB-f\fR | \fB-t\fR ] [[\fB-p\fR] \fB-o\fR \fIfield\fR[,...]] [\fIoverlay\fR]
-.fi
-
-.LP
-.nf
-\fBdladm show-usage\fR [\fB-a\fR] \fB-f\fR \fIfilename\fR [\fB-p\fR \fIplotfile\fR \fB-F\fR \fIformat\fR] [\fB-s\fR \fItime\fR]
- [\fB-e\fR \fItime\fR] [\fIlink\fR]
-.fi
-
-.SH DESCRIPTION
-The \fBdladm\fR command is used to administer data-links. A data-link is
-represented in the system as a \fBSTREAMS DLPI\fR (v2) interface which can be
-plumbed under protocol stacks such as \fBTCP/IP\fR. Each data-link relies on
-either a single network device or an aggregation of devices to send packets to
-or receive packets from a network.
-.sp
-.LP
-Each \fBdladm\fR subcommand operates on one of the following objects:
-.sp
-.ne 2
-.na
-\fB\fBlink\fR\fR
-.ad
-.sp .6
-.RS 4n
-A datalink, identified by a name. In general, the name can use any alphanumeric
-characters (or the underscore, \fB_\fR), but must start with an alphabetic
-character and end with a number. A datalink name can be at most 31 characters,
-and the ending number must be between 0 and 4294967294 (inclusive). The ending
-number must not begin with a zero. Datalink names between 3 and 8 characters
-are recommended.
-.sp
-Some subcommands operate only on certain types or classes of datalinks. For
-those cases, the following object names are used:
-.sp
-.ne 2
-.na
-\fB\fBphys-link\fR\fR
-.ad
-.sp .6
-.RS 4n
-A physical datalink.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBvlan-link\fR\fR
-.ad
-.sp .6
-.RS 4n
-A VLAN datalink.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBaggr-link\fR\fR
-.ad
-.sp .6
-.RS 4n
-An aggregation datalink (or a key; see NOTES).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBether-link\fR\fR
-.ad
-.sp .6
-.RS 4n
-A physical Ethernet datalink.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBwifi-link\fR\fR
-.ad
-.sp .6
-.RS 4n
-A WiFi datalink.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBvnic-link\fR\fR
-.ad
-.sp .6
-.RS 4n
-A virtual network interface created on a link, an \fBetherstub\fR, or \fBan
-overlay\fR. It is a pseudo device that can be treated as if it were an network
-interface card on a machine.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBiptun-link\fR\fR
-.ad
-.sp .6
-.RS 4n
-An IP tunnel link.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdev\fR\fR
-.ad
-.sp .6
-.RS 4n
-A network device, identified by concatenation of a driver name and an instance
-number.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBetherstub\fR\fR
-.ad
-.sp .6
-.RS 4n
-An Ethernet stub can be used instead of a physical NIC to create VNICs. VNICs
-created on an \fBetherstub\fR will appear to be connected through a virtual
-switch, allowing complete virtual networks to be built without physical
-hardware.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBbridge\fR\fR
-.ad
-.sp .6
-.RS 4n
-A bridge instance, identified by an administratively-chosen name. The name may
-use any alphanumeric characters or the underscore, \fB_\fR, but must start and
-end with an alphabetic character. A bridge name can be at most 31 characters.
-The name \fBdefault\fR is reserved, as are all names starting with \fBSUNW\fR.
-.sp
-Note that appending a zero (\fB0\fR) to a bridge name produces a valid link
-name, used for observability.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsecobj\fR\fR
-.ad
-.sp .6
-.RS 4n
-A secure object, identified by an administratively-chosen name. The name can
-use any alphanumeric characters, as well as underscore (\fB_\fR), period
-(\fB\&.\fR), and hyphen (\fB-\fR). A secure object name can be at most 32
-characters.
-.RE
-
-.sp
-.ne 2
-.na
-.B overlay
-.ad
-.sp .6
-.RS 4n
-An overlay instance, identified by an administratively-chosen name. An overlay
-can be used to create or join an existing software defined network.
-VNICs created on an overlay will appear to be connected by a local virtual
-switch and will also be connected to interfaces on matching overlays provided by
-other hosts. For more information on overlay devices, see \fBoverlay\fR(5).
-.RE
-
-.SS "Options"
-Each \fBdladm\fR subcommand has its own set of options. However, many of the
-subcommands have the following as a common option:
-.sp
-.ne 2
-.na
-\fB\fB-R\fR \fIroot-dir\fR, \fB--root-dir\fR=\fIroot-dir\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies an alternate root directory where the operation-such as creation,
-deletion, or renaming-should apply.
-.RE
-
-.SS "SUBCOMMANDS"
-When invoked with no arguments,
-\fBdladm\fR
-shows the link configuration information, in the same way as
-\fBdladm show-link\fR.
-.sp
-The following subcommands are supported:
-.sp
-.ne 2
-.na
-\fBdladm help\fR
-.ad
-.sp .6
-.RS 4n
-Display brief command usage.
-.RE
-.sp
-.ne 2
-.na
-\fB\fBdladm show-link\fR [\fB-P\fR] [\fB-s\fR [\fB-i\fR \fIinterval\fR]]
-[[\fB-p\fR] \fB-o\fR \fIfield\fR[,...]][\fIlink\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Show link configuration information (the default) or statistics, either for all
-datalinks or for the specified link \fIlink\fR. By default, the system is
-configured with one datalink for each known network device.
-.sp
-.ne 2
-.na
-\fB\fB-o\fR \fIfield\fR[,...], \fB--output\fR=\fIfield\fR[,...]\fR
-.ad
-.sp .6
-.RS 4n
-A case-insensitive, comma-separated list of output fields to display. When not
-modified by the \fB-s\fR option (described below), the field name must be one
-of the fields listed below, or the special value \fBall\fR to display all
-fields. By default (without \fB-o\fR), \fBshow-link\fR displays all fields.
-.sp
-.ne 2
-.na
-\fB\fBLINK\fR\fR
-.ad
-.sp .6
-.RS 4n
-The name of the datalink.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBCLASS\fR\fR
-.ad
-.sp .6
-.RS 4n
-The class of the datalink. \fBdladm\fR distinguishes between the following
-classes:
-.sp
-.ne 2
-.na
-\fB\fBphys\fR\fR
-.ad
-.sp .6
-.RS 4n
-A physical datalink. The \fBshow-phys\fR subcommand displays more detail for
-this class of datalink.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBaggr\fR\fR
-.ad
-.sp .6
-.RS 4n
-An IEEE 802.3ad link aggregation. The \fBshow-aggr\fR subcommand displays more
-detail for this class of datalink.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBvlan\fR\fR
-.ad
-.sp .6
-.RS 4n
-A VLAN datalink. The \fBshow-vlan\fR subcommand displays more detail for this
-class of datalink.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBvnic\fR\fR
-.ad
-.sp .6
-.RS 4n
-A virtual network interface. The \fBshow-vnic\fR subcommand displays more
-detail for this class of datalink.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBoverlay\fR\fR
-.ad
-.sp .6
-.RS 4n
-A virtual device that is used to create or join a software defined
-network. The \fBshow-overlay\fR subcommand displays more detail for this
-class of datalink.
-.RE
-
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBMTU\fR\fR
-.ad
-.sp .6
-.RS 4n
-The maximum transmission unit size for the datalink being displayed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSTATE\fR\fR
-.ad
-.sp .6
-.RS 4n
-The link state of the datalink. The state can be \fBup\fR, \fBdown\fR, or
-\fBunknown\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBBRIDGE\fR\fR
-.ad
-.sp .6
-.RS 4n
-The name of the bridge to which this link is assigned, if any.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBOVER\fR\fR
-.ad
-.sp .6
-.RS 4n
-The physical datalink(s) over which the datalink is operating. This applies to
-\fBaggr\fR, \fBbridge\fR, and \fBvlan\fR classes of datalinks. A VLAN is
-created over a single physical datalink, a bridge has multiple attached links,
-and an aggregation is comprised of one or more physical datalinks.
-.RE
-
-When the \fB-o\fR option is used in conjunction with the \fB-s\fR option, used
-to display link statistics, the field name must be one of the fields listed
-below, or the special value \fBall\fR to display all fields
-.sp
-.ne 2
-.na
-\fB\fBLINK\fR\fR
-.ad
-.sp .6
-.RS 4n
-The name of the datalink.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBIPACKETS\fR\fR
-.ad
-.sp .6
-.RS 4n
-Number of packets received on this link.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBRBYTES\fR\fR
-.ad
-.sp .6
-.RS 4n
-Number of bytes received on this link.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBIERRORS\fR\fR
-.ad
-.sp .6
-.RS 4n
-Number of input errors.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBOPACKETS\fR\fR
-.ad
-.sp .6
-.RS 4n
-Number of packets sent on this link.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBOBYTES\fR\fR
-.ad
-.sp .6
-.RS 4n
-Number of bytes sent on this link.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBOERRORS\fR\fR
-.ad
-.sp .6
-.RS 4n
-Number of output errors.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR, \fB--parsable\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display using a stable machine-parsable format. The \fB-o\fR option is
-required with \fB-p\fR. See "Parsable Output Format", below.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-P\fR, \fB--persistent\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display the persistent link configuration.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR, \fB--statistics\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display link statistics.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-i\fR \fIinterval\fR, \fB--interval\fR=\fIinterval\fR\fR
-.ad
-.sp .6
-.RS 4n
-Used with the \fB-s\fR option to specify an interval, in seconds, at which
-statistics should be displayed. If this option is not specified, statistics
-will be displayed only once.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdladm rename-link\fR [\fB-R\fR \fIroot-dir\fR] [\fB-z\fR \fIzonename\fR] \fIlink\fR \fInew-link\fR\fR
-.ad
-.sp .6
-.RS 4n
-Rename \fIlink\fR to \fInew-link\fR. This is used to give a link a meaningful
-name, or to associate existing link configuration such as link properties of a
-removed device with a new device. See the \fBEXAMPLES\fR section for specific
-examples of how this subcommand is used.
-.sp
-.ne 2
-.na
-\fB\fB-R\fR \fIroot-dir\fR, \fB--root-dir\fR=\fIroot-dir\fR\fR
-.ad
-.sp .6
-.RS 4n
-See "Options," above.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-z\fR \fIzonename\fR
-.ad
-.sp .6
-.RS 4n
-A link assigned to a zone can only be renamed while the zone is in the ready state.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdladm delete-phys\fR \fIphys-link\fR\fR
-.ad
-.sp .6
-.RS 4n
-This command is used to delete the persistent configuration of a link
-associated with physical hardware which has been removed from the system. See
-the \fBEXAMPLES\fR section.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdladm show-phys\fR [\fB-m\fR | \fB-H\fR | \fB-P\fR] [[\fB-p\fR] \fB-o\fR \fIfield\fR[,...]]
-[\fIphys-link\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Show the physical device and attributes of all physical links, or of the named
-physical link. Without \fB-P\fR, only physical links that are available on the
-running system are displayed.
-.sp
-.ne 2
-.na
-\fB\fB-H\fR\fR
-.ad
-.sp .6
-.RS 4n
-Show hardware resource usage, as returned by the NIC driver. Output from
-\fB-H\fR displays the following elements:
-.sp
-.ne 2
-.na
-\fB\fBLINK\fR\fR
-.ad
-.sp .6
-.RS 4n
-A physical device corresponding to a NIC driver.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBGROUP\fR\fR
-.ad
-.sp .6
-.RS 4n
-A collection of rings.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBGROUPTYPE\fR\fR
-.ad
-.sp .6
-.RS 4n
-RX or TX. All rings in a group are of the same group type.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBRINGS\fR\fR
-.ad
-.sp .6
-.RS 4n
-A hardware resource used by a data link, subject to assignment by a driver to
-different groups.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBCLIENTS\fR\fR
-.ad
-.sp .6
-.RS 4n
-MAC clients that are using the rings within a group.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-m\fR\fR
-.ad
-.sp .6
-.RS 4n
-Show MAC addresses and related information. Output from \fB-m\fR
-displays the following elements:
-.sp
-.ne 2
-.na
-\fB\fBLINK\fR\fR
-.ad
-.sp .6
-.RS 4n
-A physical device corresponding to a NIC driver.
-.RE
-.sp
-.ne 2
-.na
-\fB\fBSLOT\fR\fR
-.ad
-.sp .6
-.RS 4n
-When a given physical device has multiple factory MAC addresses, this
-indicates the slot of the corresponding MAC address which can be used as
-part of a call to \fBcreate-vnic\fR.
-.RE
-.sp
-.ne 2
-.na
-\fB\fBADDRESS\fR\fR
-.ad
-.sp .6
-.RS 4n
-Displays the MAC address of the device.
-.RE
-.sp
-.ne 2
-.na
-\fB\fBINUSE\fR\fR
-.ad
-.sp .6
-.RS 4n
-Displays whether or not a MAC Address is actively being used.
-.RE
-.sp
-.ne 2
-.na
-\fB\fBCLIENT\fR\fR
-.ad
-.sp .6
-.RS 4n
-MAC clients that are using the address.
-.RE
-.RE
-.sp
-.ne 2
-.na
-\fB\fB-o\fR \fIfield\fR, \fB--output\fR=\fIfield\fR\fR
-.ad
-.sp .6
-.RS 4n
-A case-insensitive, comma-separated list of output fields to display. The field
-name must be one of the fields listed below, or the special value \fBall\fR, to
-display all fields. Note that if either \fB-H\fR or \fB-m\fR are specified, then
-the valid options are those described in their respective sections. For each
-link, the following fields can be displayed:
-.sp
-.ne 2
-.na
-\fB\fBLINK\fR\fR
-.ad
-.sp .6
-.RS 4n
-The name of the datalink.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBMEDIA\fR\fR
-.ad
-.sp .6
-.RS 4n
-The media type provided by the physical datalink.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSTATE\fR\fR
-.ad
-.sp .6
-.RS 4n
-The state of the link. This can be \fBup\fR, \fBdown\fR, or \fBunknown\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSPEED\fR\fR
-.ad
-.sp .6
-.RS 4n
-The current speed of the link, in megabits per second.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBDUPLEX\fR\fR
-.ad
-.sp .6
-.RS 4n
-For Ethernet links, the full/half duplex status of the link is displayed if the
-link state is \fBup\fR. The duplex is displayed as \fBunknown\fR in all other
-cases.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBDEVICE\fR\fR
-.ad
-.sp .6
-.RS 4n
-The name of the physical device under this link.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR, \fB--parsable\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display using a stable machine-parsable format. The \fB-o\fR option is
-required with \fB-p\fR. See "Parsable Output Format", below.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-P\fR, \fB--persistent\fR\fR
-.ad
-.sp .6
-.RS 4n
-This option displays persistent configuration for all links, including those
-that have been removed from the system. The output provides a \fBFLAGS\fR
-column in which the \fBr\fR flag indicates that the physical device associated
-with a physical link has been removed. For such links, \fBdelete-phys\fR can be
-used to purge the link's configuration from the system.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdladm create-aggr\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] [\fB-P\fR
-\fIpolicy\fR] [\fB-L\fR \fImode\fR] [\fB-T\fR \fItime\fR] [\fB-u\fR
-\fIaddress\fR] \fB-l\fR \fIether-link1\fR [\fB-l\fR \fIether-link2\fR...]
-\fIaggr-link\fR\fR
-.ad
-.sp .6
-.RS 4n
-Combine a set of links into a single IEEE 802.3ad link aggregation named
-\fIaggr-link\fR. The use of an integer \fIkey\fR to generate a link name for
-the aggregation is also supported for backward compatibility. Many of the
-\fB*\fR\fB-aggr\fR subcommands below also support the use of a \fIkey\fR to
-refer to a given aggregation, but use of the aggregation link name is
-preferred. See the \fBNOTES\fR section for more information on keys.
-.sp
-\fBdladm\fR supports a number of port selection policies for an aggregation of
-ports. (See the description of the \fB-P\fR option, below.) If you do not
-specify a policy, \fBcreate-aggr\fR uses the default, the L4 policy, described
-under the \fB-P\fR option.
-.sp
-.ne 2
-.na
-\fB\fB-l\fR \fIether-link\fR, \fB--link\fR=\fIether-link\fR\fR
-.ad
-.sp .6
-.RS 4n
-Each Ethernet link (or port) in the aggregation is specified using an \fB-l\fR
-option followed by the name of the link to be included in the aggregation.
-Multiple links are included in the aggregation by specifying multiple \fB-l\fR
-options. For backward compatibility with previous versions of Solaris, the
-\fBdladm\fR command also supports the using the \fB-d\fR option (or
-\fB--dev\fR) with a device name to specify links by their underlying device
-name. The other \fB*\fR\fB-aggr\fR subcommands that take \fB-l\fR options also
-accept \fB-d\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-t\fR, \fB--temporary\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies that the aggregation is temporary. Temporary aggregations last until
-the next reboot.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-R\fR \fIroot-dir\fR, \fB--root-dir\fR=\fIroot-dir\fR\fR
-.ad
-.sp .6
-.RS 4n
-See "Options," above.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-P\fR \fIpolicy\fR, \fB--policy\fR=\fIpolicy\fR\fR
-.ad
-.br
-.na
-\fB\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the port selection policy to use for load spreading of outbound
-traffic. The policy specifies which \fIdev\fR object is used to send packets. A
-policy is a list of one or more layers specifiers separated by commas. A layer
-specifier is one of the following:
-.sp
-.ne 2
-.na
-\fB\fBL2\fR\fR
-.ad
-.sp .6
-.RS 4n
-Select outbound device according to source and destination \fBMAC\fR addresses
-of the packet.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBL3\fR\fR
-.ad
-.sp .6
-.RS 4n
-Select outbound device according to source and destination \fBIP\fR addresses
-of the packet.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBL4\fR\fR
-.ad
-.sp .6
-.RS 4n
-Select outbound device according to the upper layer protocol information
-contained in the packet. For \fBTCP\fR and \fBUDP\fR, this includes source and
-destination ports. For IPsec, this includes the \fBSPI\fR (Security Parameters
-Index).
-.RE
-
-For example, to use upper layer protocol information, the following policy can
-be used:
-.sp
-.in +2
-.nf
--P L4
-.fi
-.in -2
-.sp
-
-Note that policy L4 is the default.
-.sp
-To use the source and destination \fBMAC\fR addresses as well as the source and
-destination \fBIP\fR addresses, the following policy can be used:
-.sp
-.in +2
-.nf
--P L2,L3
-.fi
-.in -2
-.sp
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-L\fR \fImode\fR, \fB--lacp-mode\fR=\fImode\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies whether \fBLACP\fR should be used and, if used, the mode in which it
-should operate. Supported values are \fBoff\fR, \fBactive\fR or \fBpassive\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-T\fR \fItime\fR, \fB--lacp-timer\fR=\fItime\fR\fR
-.ad
-.br
-.na
-\fB\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the \fBLACP\fR timer value. The supported values are \fBshort\fR or
-\fBlong\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-u\fR \fIaddress\fR, \fB--unicast\fR=\fIaddress\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies a fixed unicast hardware address to be used for the aggregation. If
-this option is not specified, then an address is automatically chosen from the
-set of addresses of the component devices.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdladm modify-aggr\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] [\fB-P\fR
-\fIpolicy\fR] [\fB-L\fR \fImode\fR] [\fB-T\fR \fItime\fR] [\fB-u\fR
-\fIaddress\fR] \fIaggr-link\fR\fR
-.ad
-.sp .6
-.RS 4n
-Modify the parameters of the specified aggregation.
-.sp
-.ne 2
-.na
-\fB\fB-t\fR, \fB--temporary\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies that the modification is temporary. Temporary aggregations last until
-the next reboot.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-R\fR \fIroot-dir\fR, \fB--root-dir\fR=\fIroot-dir\fR\fR
-.ad
-.sp .6
-.RS 4n
-See "Options," above.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-P\fR \fIpolicy\fR, \fB--policy\fR=\fIpolicy\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the port selection policy to use for load spreading of outbound
-traffic. See \fBdladm create-aggr\fR for a description of valid policy values.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-L\fR \fImode\fR, \fB--lacp-mode\fR=\fImode\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies whether \fBLACP\fR should be used and, if used, the mode in which it
-should operate. Supported values are \fBoff\fR, \fBactive\fR, or \fBpassive\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-T\fR \fItime\fR, \fB--lacp-timer\fR=\fItime\fR\fR
-.ad
-.br
-.na
-\fB\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the \fBLACP\fR timer value. The supported values are \fBshort\fR or
-\fBlong\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-u\fR \fIaddress\fR, \fB--unicast\fR=\fIaddress\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies a fixed unicast hardware address to be used for the aggregation. If
-this option is not specified, then an address is automatically chosen from the
-set of addresses of the component devices.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdladm delete-aggr\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR]
-\fIaggr-link\fR\fR
-.ad
-.sp .6
-.RS 4n
-Deletes the specified aggregation.
-.sp
-.ne 2
-.na
-\fB\fB-t\fR, \fB--temporary\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies that the deletion is temporary. Temporary deletions last until the
-next reboot.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-R\fR \fIroot-dir\fR, \fB--root-dir\fR=\fIroot-dir\fR\fR
-.ad
-.sp .6
-.RS 4n
-See "Options," above.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdladm add-aggr\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] \fB-l\fR
-\fIether-link1\fR [\fB--link\fR=\fIether-link2\fR...] \fIaggr-link\fR\fR
-.ad
-.sp .6
-.RS 4n
-Adds links to the specified aggregation.
-.sp
-.ne 2
-.na
-\fB\fB-l\fR \fIether-link\fR, \fB--link\fR=\fIether-link\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies an Ethernet link to add to the aggregation. Multiple links can be
-added by supplying multiple \fB-l\fR options.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-t\fR, \fB--temporary\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies that the additions are temporary. Temporary additions last until the
-next reboot.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-R\fR \fIroot-dir\fR, \fB--root-dir\fR=\fIroot-dir\fR\fR
-.ad
-.sp .6
-.RS 4n
-See "Options," above.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdladm remove-aggr\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] \fB-l\fR
-\fIether-link1\fR [\fB--l\fR=\fIether-link2\fR...] \fIaggr-link\fR\fR
-.ad
-.sp .6
-.RS 4n
-Removes links from the specified aggregation.
-.sp
-.ne 2
-.na
-\fB\fB-l\fR \fIether-link\fR, \fB--link\fR=\fIether-link\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies an Ethernet link to remove from the aggregation. Multiple links can
-be added by supplying multiple \fB-l\fR options.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-t\fR, \fB--temporary\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies that the removals are temporary. Temporary removal last until the
-next reboot.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-R\fR \fIroot-dir\fR, \fB--root-dir\fR=\fIroot-dir\fR\fR
-.ad
-.sp .6
-.RS 4n
-See "Options," above.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdladm show-aggr\fR [\fB-PLx\fR] [\fB-s\fR [\fB-i\fR \fIinterval\fR]]
-[[\fB-p\fR] \fB-o\fR \fIfield\fR[,...]] [\fIaggr-link\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Show aggregation configuration (the default), \fBLACP\fR information, or
-statistics, either for all aggregations or for the specified aggregation.
-.sp
-By default (with no options), the following fields can be displayed:
-.sp
-.ne 2
-.na
-\fB\fBLINK\fR\fR
-.ad
-.sp .6
-.RS 4n
-The name of the aggregation link.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPOLICY\fR\fR
-.ad
-.sp .6
-.RS 4n
-The LACP policy of the aggregation. See the \fBcreate-aggr\fR \fB-P\fR option
-for a description of the possible values.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBADDRPOLICY\fR\fR
-.ad
-.sp .6
-.RS 4n
-Either \fBauto\fR, if the aggregation is configured to automatically configure
-its unicast MAC address (the default if the \fB-u\fR option was not used to
-create or modify the aggregation), or \fBfixed\fR, if \fB-u\fR was used to set
-a fixed MAC address.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBLACPACTIVITY\fR\fR
-.ad
-.sp .6
-.RS 4n
-The LACP mode of the aggregation. Possible values are \fBoff\fR, \fBactive\fR,
-or \fBpassive\fR, as set by the \fB-l\fR option to \fBcreate-aggr\fR or
-\fBmodify-aggr\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBLACPTIMER\fR\fR
-.ad
-.sp .6
-.RS 4n
-The LACP timer value of the aggregation as set by the \fB-T\fR option of
-\fBcreate-aggr\fR or \fBmodify-aggr\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBFLAGS\fR\fR
-.ad
-.sp .6
-.RS 4n
-A set of state flags associated with the aggregation. The only possible flag is
-\fBf\fR, which is displayed if the administrator forced the creation the
-aggregation using the \fB-f\fR option to \fBcreate-aggr\fR. Other flags might
-be defined in the future.
-.RE
-
-The \fBshow-aggr\fR command accepts the following options:
-.sp
-.ne 2
-.na
-\fB\fB-L\fR, \fB--lacp\fR\fR
-.ad
-.sp .6
-.RS 4n
-Displays detailed \fBLACP\fR information for the aggregation link and each
-underlying port. Most of the state information displayed by this option is
-defined by IEEE 802.3. With this option, the following fields can be displayed:
-.sp
-.ne 2
-.na
-\fB\fBLINK\fR\fR
-.ad
-.sp .6
-.RS 4n
-The name of the aggregation link.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPORT\fR\fR
-.ad
-.sp .6
-.RS 4n
-The name of one of the underlying aggregation ports.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBAGGREGATABLE\fR\fR
-.ad
-.sp .6
-.RS 4n
-Whether the port can be added to the aggregation.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSYNC\fR\fR
-.ad
-.sp .6
-.RS 4n
-If \fByes\fR, the system considers the port to be synchronized and part of the
-aggregation.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBCOLL\fR\fR
-.ad
-.sp .6
-.RS 4n
-If \fByes\fR, collection of incoming frames is enabled on the associated port.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBDIST\fR\fR
-.ad
-.sp .6
-.RS 4n
-If \fByes\fR, distribution of outgoing frames is enabled on the associated
-port.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBDEFAULTED\fR\fR
-.ad
-.sp .6
-.RS 4n
-If \fByes\fR, the port is using defaulted partner information (that is, has not
-received LACP data from the LACP partner).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEXPIRED\fR\fR
-.ad
-.sp .6
-.RS 4n
-If \fByes\fR, the receive state of the port is in the \fBEXPIRED\fR state.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-x\fR, \fB--extended\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display additional aggregation information including detailed information on
-each underlying port. With \fB-x\fR, the following fields can be displayed:
-.sp
-.ne 2
-.na
-\fB\fBLINK\fR\fR
-.ad
-.sp .6
-.RS 4n
-The name of the aggregation link.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPORT\fR\fR
-.ad
-.sp .6
-.RS 4n
-The name of one of the underlying aggregation ports.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSPEED\fR\fR
-.ad
-.sp .6
-.RS 4n
-The speed of the link or port in megabits per second.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBDUPLEX\fR\fR
-.ad
-.sp .6
-.RS 4n
-The full/half duplex status of the link or port is displayed if the link state
-is \fBup\fR. The duplex status is displayed as \fBunknown\fR in all other
-cases.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSTATE\fR\fR
-.ad
-.sp .6
-.RS 4n
-The link state. This can be \fBup\fR, \fBdown\fR, or \fBunknown\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBADDRESS\fR\fR
-.ad
-.sp .6
-.RS 4n
-The MAC address of the link or port.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPORTSTATE\fR\fR
-.ad
-.sp .6
-.RS 4n
-This indicates whether the individual aggregation port is in the \fBstandby\fR
-or \fBattached\fR state.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-o\fR \fIfield\fR[,...], \fB--output\fR=\fIfield\fR[,...]\fR
-.ad
-.sp .6
-.RS 4n
-A case-insensitive, comma-separated list of output fields to display. The field
-name must be one of the fields listed above, or the special value \fBall\fR, to
-display all fields. The fields applicable to the \fB-o\fR option are limited to
-those listed under each output mode. For example, if using \fB-L\fR, only the
-fields listed under \fB-L\fR, above, can be used with \fB-o\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR, \fB--parsable\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display using a stable machine-parsable format. The \fB-o\fR option is
-required with \fB-p\fR. See "Parsable Output Format", below.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-P\fR, \fB--persistent\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display the persistent aggregation configuration rather than the state of the
-running system.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR, \fB--statistics\fR\fR
-.ad
-.sp .6
-.RS 4n
-Displays aggregation statistics.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-i\fR \fIinterval\fR, \fB--interval\fR=\fIinterval\fR\fR
-.ad
-.sp .6
-.RS 4n
-Used with the \fB-s\fR option to specify an interval, in seconds, at which
-statistics should be displayed. If this option is not specified, statistics
-will be displayed only once.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdladm create-bridge\fR [ \fB-P\fR \fIprotect\fR] [\fB-R\fR
-\fIroot-dir\fR] [ \fB-p\fR \fIpriority\fR] [ \fB-m\fR \fImax-age\fR] [ \fB-h\fR
-\fIhello-time\fR] [ \fB-d\fR \fIforward-delay\fR] [ \fB-f\fR
-\fIforce-protocol\fR] [\fB-l\fR \fIlink\fR...] \fIbridge-name\fR\fR
-.ad
-.sp .6
-.RS 4n
-Create an 802.1D bridge instance and optionally assign one or more network
-links to the new bridge. By default, no bridge instances are present on the
-system.
-.sp
-In order to bridge between links, you must create at least one bridge instance.
-Each bridge instance is separate, and there is no forwarding connection between
-bridges.
-.sp
-.ne 2
-.na
-\fB\fB-P\fR \fIprotect\fR, \fB--protect\fR=\fIprotect\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies a protection method. The defined protection methods are \fBstp\fR for
-the Spanning Tree Protocol and trill for \fBTRILL\fR, which is used on
-RBridges. The default value is \fBstp\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-R\fR \fIroot-dir\fR, \fB--root-dir\fR=\fIroot-dir\fR\fR
-.ad
-.sp .6
-.RS 4n
-See "Options," above.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR \fIpriority\fR, \fB--priority\fR=\fIpriority\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the Bridge Priority. This sets the IEEE STP priority value for
-determining the root bridge node in the network. The default value is
-\fB32768\fR. Valid values are \fB0\fR (highest priority) to \fB61440\fR (lowest
-priority), in increments of 4096.
-.sp
-If a value not evenly divisible by 4096 is used, the system silently rounds
-downward to the next lower value that is divisible by 4096.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-m\fR \fImax-age\fR, \fB--max-age\fR=\fImax-age\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the maximum age for configuration information in seconds. This sets
-the STP Bridge Max Age parameter. This value is used for all nodes in the
-network if this node is the root bridge. Bridge link information older than
-this time is discarded. It defaults to 20 seconds. Valid values are from 6 to
-40 seconds. See the \fB-d\fR \fIforward-delay\fR parameter for additional
-constraints.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-h\fR \fIhello-time\fR, \fB--hello-time\fR=\fIhello-time\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the STP Bridge Hello Time parameter. When this node is the root node,
-it sends Configuration BPDUs at this interval throughout the network. The
-default value is 2 seconds. Valid values are from 1 to 10 seconds. See the
-\fB-d\fR \fIforward-delay\fR parameter for additional constraints.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-d\fR \fIforward-delay\fR, \fB--forward-delay\fR=\fIforward-delay\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the STP Bridge Forward Delay parameter. When this node is the root
-node, then all bridges in the network use this timer to sequence the link
-states when a port is enabled. The default value is 15 seconds. Valid values
-are from 4 to 30 seconds.
-.sp
-Bridges must obey the following two constraints:
-.sp
-.in +2
-.nf
-2 * (\fIforward-delay\fR - 1.0) >= \fImax-age\fR
-
-\fImax-age\fR >= 2 * (\fIhello-time\fR + 1.0)
-.fi
-.in -2
-.sp
-
-Any parameter setting that would violate those constraints is treated as an
-error and causes the command to fail with a diagnostic message. The message
-provides valid alternatives to the supplied values.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR \fIforce-protocol\fR,
-\fB--force-protocol\fR=\fIforce-protocol\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the MSTP forced maximum supported protocol. The default value is 3.
-Valid values are non-negative integers. The current implementation does not
-support RSTP or MSTP, so this currently has no effect. However, to prevent MSTP
-from being used in the future, the parameter may be set to \fB0\fR for STP only
-or \fB2\fR for STP and RSTP.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR \fIlink\fR, \fB--link\fR=\fIlink\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies one or more links to add to the newly-created bridge. This is similar
-to creating the bridge and then adding one or more links, as with the
-\fBadd-bridge\fR subcommand. However, if any of the links cannot be added, the
-entire command fails, and the new bridge itself is not created. To add multiple
-links on the same command line, repeat this option for each link. You are
-permitted to create bridges without links. For more information about link
-assignments, see the \fBadd-bridge\fR subcommand.
-.RE
-
-Bridge creation and link assignment require the \fBPRIV_SYS_DL_CONFIG\fR
-privilege. Bridge creation might fail if the optional bridging feature is not
-installed on the system.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdladm modify-bridge\fR [ \fB-P\fR \fIprotect\fR] [\fB-R\fR
-\fIroot-dir\fR] [ \fB-p\fR \fIpriority\fR] [ \fB-m\fR \fImax-age\fR] [ \fB-h\fR
-\fIhello-time\fR] [ \fB-d\fR \fIforward-delay\fR] [ \fB-f\fR
-\fIforce-protocol\fR] [\fB-l\fR \fIlink\fR...] \fIbridge-name\fR\fR
-.ad
-.sp .6
-.RS 4n
-Modify the operational parameters of an existing bridge. The options are the
-same as for the \fBcreate-bridge\fR subcommand, except that the \fB-l\fR option
-is not permitted. To add links to an existing bridge, use the \fBadd-bridge\fR
-subcommand.
-.sp
-Bridge parameter modification requires the \fBPRIV_SYS_DL_CONFIG\fR privilege.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdladm delete-bridge\fR [\fB-R\fR \fIroot-dir\fR] \fIbridge-name\fR\fR
-.ad
-.sp .6
-.RS 4n
-Delete a bridge instance. The bridge being deleted must not have any attached
-links. Use the \fBremove-bridge\fR subcommand to deactivate links before
-deleting a bridge.
-.sp
-Bridge deletion requires the \fBPRIV_SYS_DL_CONFIG\fR privilege.
-.sp
-The \fB-R\fR (\fB--root-dir\fR) option is the same as for the
-\fBcreate-bridge\fR subcommand.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdladm add-bridge\fR [\fB-R\fR \fIroot-dir\fR] \fB-l\fR \fIlink\fR
-[\fB-l\fR \fIlink\fR...] \fIbridge-name\fR\fR
-.ad
-.sp .6
-.RS 4n
-Add one or more links to an existing bridge. If multiple links are specified,
-and adding any one of them results in an error, the command fails and no
-changes are made to the system.
-.sp
-Link addition to a bridge requires the \fBPRIV_SYS_DL_CONFIG\fR privilege.
-.sp
-A link may be a member of at most one bridge. An error occurs when you attempt
-to add a link that already belongs to another bridge. To move a link from one
-bridge instance to another, remove it from the current bridge before adding it
-to a new one.
-.sp
-The links assigned to a bridge must not also be VLANs, VNICs, or tunnels. Only
-physical Ethernet datalinks, aggregation datalinks, wireless links, and
-Ethernet stubs are permitted to be assigned to a bridge.
-.sp
-Links assigned to a bridge must all have the same MTU. This is checked when the
-link is assigned. The link is added to the bridge in a deactivated form if it
-is not the first link on the bridge and it has a differing MTU.
-.sp
-Note that systems using bridging should not set the \fBeeprom\fR(1M)
-\fBlocal-mac-address?\fR variable to false.
-.sp
-The options are the same as for the \fBcreate-bridge\fR subcommand.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdladm remove-bridge\fR [\fB-R\fR \fIroot-dir\fR] \fB-l\fR \fIlink\fR
-[\fB-l\fR \fIlink\fR...] \fIbridge-name\fR\fR
-.ad
-.sp .6
-.RS 4n
-Remove one or more links from a bridge instance. If multiple links are
-specified, and removing any one of them would result in an error, the command
-fails and none are removed.
-.sp
-Link removal from a bridge requires the \fBPRIV_SYS_DL_CONFIG\fR privilege.
-.sp
-The options are the same as for the \fBcreate-bridge\fR subcommand.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdladm show-bridge\fR [\fB-flt\fR] [\fB-s\fR [\fB-i\fR \fIinterval\fR]]
-[[\fB-p\fR] \fB-o\fR \fIfield\fR,...] [\fIbridge-name\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Show the running status and configuration of bridges, their attached links,
-learned forwarding entries, and \fBTRILL\fR nickname databases. When showing
-overall bridge status and configuration, the bridge name can be omitted to show
-all bridges. The other forms require a specified bridge.
-.sp
-The show-bridge subcommand accepts the following options:
-.sp
-.ne 2
-.na
-\fB\fB-i\fR \fIinterval\fR, \fB--interval\fR=\fIinterval\fR\fR
-.ad
-.sp .6
-.RS 4n
-Used with the \fB-s\fR option to specify an interval, in seconds, at which
-statistics should be displayed. If this option is not specified, statistics
-will be displayed only once.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR, \fB--statistics\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display statistics for the specified bridges or for a given bridge's attached
-links. This option cannot be used with the \fB-f\fR and \fB-t\fR options.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR, \fB--parsable\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display using a stable machine-parsable format. See "Parsable Output Format,"
-below.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-o\fR \fIfield\fR[,...], \fB--output\fR=\fIfield\fR[,...]\fR
-.ad
-.sp .6
-.RS 4n
-A case-insensitive, comma-separated list of output fields to display. The field
-names are described below. The special value all displays all fields. Each set
-of fields has its own default set to display when \fB-o\fR is not specified.
-.RE
-
-By default, the \fBshow-bridge\fR subcommand shows bridge configuration. The
-following fields can be shown:
-.sp
-.ne 2
-.na
-\fB\fBBRIDGE\fR\fR
-.ad
-.sp .6
-.RS 4n
-The name of the bridge.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBADDRESS\fR\fR
-.ad
-.sp .6
-.RS 4n
-The Bridge Unique Identifier value (MAC address).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIORITY\fR\fR
-.ad
-.sp .6
-.RS 4n
-Configured priority value; set by \fB-p\fR with \fBcreate-bridge\fR and
-\fBmodify-bridge\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBBMAXAGE\fR\fR
-.ad
-.sp .6
-.RS 4n
-Configured bridge maximum age; set by \fB-m\fR with \fBcreate-bridge\fR and
-\fBmodify-bridge\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBBHELLOTIME\fR\fR
-.ad
-.sp .6
-.RS 4n
-Configured bridge hello time; set by \fB-h\fR with \fBcreate-bridge\fR and
-\fBmodify-bridge\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBBFWDDELAY\fR\fR
-.ad
-.sp .6
-.RS 4n
-Configured forwarding delay; set by \fB-d\fR with \fBcreate-bridge\fR and
-\fBmodify-bridge\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBFORCEPROTO\fR\fR
-.ad
-.sp .6
-.RS 4n
-Configured forced maximum protocol; set by \fB-f\fR with \fBcreate-bridge\fR
-and \fBmodify-bridge\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBTCTIME\fR\fR
-.ad
-.sp .6
-.RS 4n
-Time, in seconds, since last topology change.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBTCCOUNT\fR\fR
-.ad
-.sp .6
-.RS 4n
-Count of the number of topology changes.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBTCHANGE\fR\fR
-.ad
-.sp .6
-.RS 4n
-This indicates that a topology change was detected.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBDESROOT\fR\fR
-.ad
-.sp .6
-.RS 4n
-Bridge Identifier of the root node.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBROOTCOST\fR\fR
-.ad
-.sp .6
-.RS 4n
-Cost of the path to the root node.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBROOTPORT\fR\fR
-.ad
-.sp .6
-.RS 4n
-Port number used to reach the root node.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBMAXAGE\fR\fR
-.ad
-.sp .6
-.RS 4n
-Maximum age value from the root node.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBHELLOTIME\fR\fR
-.ad
-.sp .6
-.RS 4n
-Hello time value from the root node.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBFWDDELAY\fR\fR
-.ad
-.sp .6
-.RS 4n
-Forward delay value from the root node.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBHOLDTIME\fR\fR
-.ad
-.sp .6
-.RS 4n
-Minimum BPDU interval.
-.RE
-
-By default, when the \fB-o\fR option is not specified, only the \fBBRIDGE\fR,
-\fBADDRESS\fR, \fBPRIORITY\fR, and \fBDESROOT\fR fields are shown.
-.sp
-When the \fB-s\fR option is specified, the \fBshow-bridge\fR subcommand shows
-bridge statistics. The following fields can be shown:
-.sp
-.ne 2
-.na
-\fB\fBBRIDGE\fR\fR
-.ad
-.sp .6
-.RS 4n
-Bridge name.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBDROPS\fR\fR
-.ad
-.sp .6
-.RS 4n
-Number of packets dropped due to resource problems.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBFORWARDS\fR\fR
-.ad
-.sp .6
-.RS 4n
-Number of packets forwarded from one link to another.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBMBCAST\fR\fR
-.ad
-.sp .6
-.RS 4n
-Number of multicast and broadcast packets handled by the bridge.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBRECV\fR\fR
-.ad
-.sp .6
-.RS 4n
-Number of packets received on all attached links.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSENT\fR\fR
-.ad
-.sp .6
-.RS 4n
-Number of packets sent on all attached links.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBUNKNOWN\fR\fR
-.ad
-.sp .6
-.RS 4n
-Number of packets handled that have an unknown destination. Such packets are
-sent to all links.
-.RE
-
-By default, when the \fB-o\fR option is not specified, only the \fBBRIDGE\fR,
-\fBDROPS\fR, and \fBFORWARDS\fR fields are shown.
-.sp
-The \fBshow-bridge\fR subcommand also accepts the following options:
-.sp
-.ne 2
-.na
-\fB\fB-l\fR, \fB--link\fR\fR
-.ad
-.sp .6
-.RS 4n
-Displays link-related status and statistics information for all links attached
-to a single bridge instance. By using this option and without the \fB-s\fR
-option, the following fields can be displayed for each link:
-.sp
-.ne 2
-.na
-\fB\fBLINK\fR\fR
-.ad
-.sp .6
-.RS 4n
-The link name.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBINDEX\fR\fR
-.ad
-.sp .6
-.RS 4n
-Port (link) index number on the bridge.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSTATE\fR\fR
-.ad
-.sp .6
-.RS 4n
-State of the link. The state can be \fBdisabled\fR, \fBdiscarding\fR,
-\fBlearning\fR, \fBforwarding\fR, \fBnon-stp\fR, or \fBbad-mtu\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBUPTIME\fR\fR
-.ad
-.sp .6
-.RS 4n
-Number of seconds since the last reset or initialization.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBOPERCOST\fR\fR
-.ad
-.sp .6
-.RS 4n
-Actual cost in use (1-65535).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBOPERP2P\fR\fR
-.ad
-.sp .6
-.RS 4n
-This indicates whether point-to-point (\fBP2P\fR) mode been detected.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBOPEREDGE\fR\fR
-.ad
-.sp .6
-.RS 4n
-This indicates whether edge mode has been detected.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBDESROOT\fR\fR
-.ad
-.sp .6
-.RS 4n
-The Root Bridge Identifier that has been seen on this port.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBDESCOST\fR\fR
-.ad
-.sp .6
-.RS 4n
-Path cost to the network root node through the designated port.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBDESBRIDGE\fR\fR
-.ad
-.sp .6
-.RS 4n
-Bridge Identifier for this port.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBDESPORT\fR\fR
-.ad
-.sp .6
-.RS 4n
-The ID and priority of the port used to transmit configuration messages for
-this port.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBTCACK\fR\fR
-.ad
-.sp .6
-.RS 4n
-This indicates whether Topology Change Acknowledge has been seen.
-.RE
-
-When the \fB-l\fR option is specified without the \fB-o\fR option, only the
-\fBLINK\fR, \fBSTATE\fR, \fBUPTIME\fR, and \fBDESROOT\fR fields are shown.
-.sp
-When the \fB-l\fR option is specified, the \fB-s\fR option can be used to
-display the following fields for each link:
-.sp
-.ne 2
-.na
-\fB\fBLINK\fR\fR
-.ad
-.sp .6
-.RS 4n
-Link name.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBCFGBPDU\fR\fR
-.ad
-.sp .6
-.RS 4n
-Number of configuration BPDUs received.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBTCNBPDU\fR\fR
-.ad
-.sp .6
-.RS 4n
-Number of topology change BPDUs received.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBRSTPBPDU\fR\fR
-.ad
-.sp .6
-.RS 4n
-Number of Rapid Spanning Tree BPDUs received.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBTXBPDU\fR\fR
-.ad
-.sp .6
-.RS 4n
-Number of BPDUs transmitted.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBDROPS\fR\fR
-.ad
-.sp .6
-.RS 4n
-Number of packets dropped due to resource problems.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBRECV\fR\fR
-.ad
-.sp .6
-.RS 4n
-Number of packets received by the bridge.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBXMIT\fR\fR
-.ad
-.sp .6
-.RS 4n
-Number of packets sent by the bridge.
-.RE
-
-When the \fB-o\fR option is not specified, only the \fBLINK\fR, \fBDROPS\fR,
-\fBRECV\fR, and \fBXMIT\fR fields are shown.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR, \fB--forwarding\fR\fR
-.ad
-.sp .6
-.RS 4n
-Displays forwarding entries for a single bridge instance. With this option, the
-following fields can be shown for each forwarding entry:
-.sp
-.ne 2
-.na
-\fB\fBDEST\fR\fR
-.ad
-.sp .6
-.RS 4n
-Destination MAC address.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBAGE\fR\fR
-.ad
-.sp .6
-.RS 4n
-Age of entry in seconds and milliseconds. Omitted for local entries.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBFLAGS\fR\fR
-.ad
-.sp .6
-.RS 4n
-The \fBL\fR (local) flag is shown if the MAC address belongs to an attached
-link or to a VNIC on one of the attached links.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBOUTPUT\fR\fR
-.ad
-.sp .6
-.RS 4n
-For local entries, this is the name of the attached link that has the MAC
-address. Otherwise, for bridges that use Spanning Tree Protocol, this is the
-output interface name. For RBridges, this is the output \fBTRILL\fR nickname.
-.RE
-
-When the \fB-o\fR option is not specified, the \fBDEST\fR, \fBAGE\fR,
-\fBFLAGS\fR, and \fBOUTPUT\fR fields are shown.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-t\fR, \fB--trill\fR\fR
-.ad
-.sp .6
-.RS 4n
-Displays \fBTRILL\fR nickname entries for a single bridge instance. With this
-option, the following fields can be shown for each \fBTRILL\fR nickname entry:
-.sp
-.ne 2
-.na
-\fB\fBNICK\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBTRILL\fR nickname for this RBridge, which is a number from 1 to 65535.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBFLAGS\fR\fR
-.ad
-.sp .6
-.RS 4n
-The \fBL\fR flag is shown if the nickname identifies the local system.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBLINK\fR\fR
-.ad
-.sp .6
-.RS 4n
-Link name for output when sending messages to this RBridge.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBNEXTHOP\fR\fR
-.ad
-.sp .6
-.RS 4n
-MAC address of the next hop RBridge that is used to reach the RBridge with this
-nickname.
-.RE
-
-When the \fB-o\fR option is not specified, the \fBNICK\fR, \fBFLAGS\fR,
-\fBLINK\fR, and \fBNEXTHOP\fR fields are shown.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdladm create-vlan\fR [\fB-ft\fR] [\fB-R\fR \fIroot-dir\fR] \fB-l\fR
-\fIether-link\fR \fB-v\fR \fIvid\fR [\fIvlan-link\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Create a tagged VLAN link with an ID of \fIvid\fR over Ethernet link
-\fIether-link\fR. The name of the VLAN link can be specified as
-\fIvlan\fR-\fIlink\fR. If the name is not specified, a name will be
-automatically generated (assuming that \fIether-link\fR is \fIname\fR\fIPPA\fR)
-as:
-.sp
-.in +2
-.nf
-<\fIname\fR><1000 * \fIvlan-tag\fR + \fIPPA\fR>
-.fi
-.in -2
-.sp
-
-For example, if \fIether-link\fR is \fBbge1\fR and \fIvid\fR is 2, the name
-generated is \fBbge2001\fR.
-.sp
-.ne 2
-.na
-\fB\fB-f\fR, \fB--force\fR\fR
-.ad
-.sp .6
-.RS 4n
-Force the creation of the VLAN link. Some devices do not allow frame sizes
-large enough to include a VLAN header. When creating a VLAN link over such a
-device, the \fB-f\fR option is needed, and the MTU of the IP interfaces on the
-resulting VLAN must be set to 1496 instead of 1500.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR \fIether-link\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies Ethernet link over which VLAN is created.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-t\fR, \fB--temporary\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies that the VLAN link is temporary. Temporary VLAN links last until the
-next reboot.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-R\fR \fIroot-dir\fR, \fB--root-dir\fR=\fIroot-dir\fR\fR
-.ad
-.sp .6
-.RS 4n
-See "Options," above.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdladm delete-vlan\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR]
-\fIvlan-link\fR\fR
-.ad
-.sp .6
-.RS 4n
-Delete the VLAN link specified.
-.sp
-The \fBdelete-vlan\fR subcommand accepts the following options:
-.sp
-.ne 2
-.na
-\fB\fB-t\fR, \fB--temporary\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies that the deletion is temporary. Temporary deletions last until the
-next reboot.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-R\fR \fIroot-dir\fR, \fB--root-dir\fR=\fIroot-dir\fR\fR
-.ad
-.sp .6
-.RS 4n
-See "Options," above.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdladm show-vlan\fR [\fB-P\fR] [[\fB-p\fR] \fB-o\fR \fIfield\fR[,...]]
-[\fIvlan-link\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Display VLAN configuration for all VLAN links or for the specified VLAN link.
-.sp
-The \fBshow-vlan\fR subcommand accepts the following options:
-.sp
-.ne 2
-.na
-\fB\fB-o\fR \fIfield\fR[,...], \fB--output\fR=\fIfield\fR[,...]\fR
-.ad
-.sp .6
-.RS 4n
-A case-insensitive, comma-separated list of output fields to display. The field
-name must be one of the fields listed below, or the special value \fBall\fR, to
-display all fields. For each VLAN link, the following fields can be displayed:
-.sp
-.ne 2
-.na
-\fB\fBLINK\fR\fR
-.ad
-.sp .6
-.RS 4n
-The name of the VLAN link.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBVID\fR\fR
-.ad
-.sp .6
-.RS 4n
-The ID associated with the VLAN.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBOVER\fR\fR
-.ad
-.sp .6
-.RS 4n
-The name of the physical link over which this VLAN is configured.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBFLAGS\fR\fR
-.ad
-.sp .6
-.RS 4n
-A set of flags associated with the VLAN link. Possible flags are:
-.sp
-.ne 2
-.na
-\fB\fBf\fR\fR
-.ad
-.sp .6
-.RS 4n
-The VLAN was created using the \fB-f\fR option to \fBcreate-vlan\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBi\fR\fR
-.ad
-.sp .6
-.RS 4n
-The VLAN was implicitly created when the DLPI link was opened. These VLAN links
-are automatically deleted on last close of the DLPI link (for example, when the
-IP interface associated with the VLAN link is unplumbed).
-.RE
-
-Additional flags might be defined in the future.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR, \fB--parsable\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display using a stable machine-parsable format. The \fB-o\fR option is
-required with \fB-p\fR. See "Parsable Output Format", below.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-P\fR, \fB--persistent\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display the persistent VLAN configuration rather than the state of the running
-system.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdladm scan-wifi\fR [[\fB-p\fR] \fB-o\fR \fIfield\fR[,...]]
-[\fIwifi-link\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Scans for \fBWiFi\fR networks, either on all \fBWiFi\fR links, or just on the
-specified \fIwifi-link\fR.
-.sp
-By default, currently all fields but \fBBSSTYPE\fR are displayed.
-.sp
-.ne 2
-.na
-\fB\fB-o\fR \fIfield\fR[,...], \fB--output\fR=\fIfield\fR[,...]\fR
-.ad
-.sp .6
-.RS 4n
-A case-insensitive, comma-separated list of output fields to display. The field
-name must be one of the fields listed below, or the special value \fBall\fR to
-display all fields. For each \fBWiFi\fR network found, the following fields can
-be displayed:
-.sp
-.ne 2
-.na
-\fB\fBLINK\fR\fR
-.ad
-.sp .6
-.RS 4n
-The name of the link the \fBWiFi\fR network is on.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBESSID\fR\fR
-.ad
-.sp .6
-.RS 4n
-The \fBESSID\fR (name) of the \fBWiFi\fR network.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBBSSID\fR\fR
-.ad
-.sp .6
-.RS 4n
-Either the hardware address of the \fBWiFi\fR network's Access Point (for
-\fBBSS\fR networks), or the \fBWiFi\fR network's randomly generated unique
-token (for \fBIBSS\fR networks).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSEC\fR\fR
-.ad
-.sp .6
-.RS 4n
-Either \fBnone\fR for a \fBWiFi\fR network that uses no security, \fBwep\fR for
-a \fBWiFi\fR network that requires WEP (Wired Equivalent Privacy), or \fBwpa\fR
-for a WiFi network that requires WPA (Wi-Fi Protected Access).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBMODE\fR\fR
-.ad
-.sp .6
-.RS 4n
-The supported connection modes: one or more of \fBa\fR, \fBb\fR, or \fBg\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSTRENGTH\fR\fR
-.ad
-.sp .6
-.RS 4n
-The strength of the signal: one of \fBexcellent\fR, \fBvery good\fR,
-\fBgood\fR, \fBweak\fR, or \fBvery weak\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSPEED\fR\fR
-.ad
-.sp .6
-.RS 4n
-The maximum speed of the \fBWiFi\fR network, in megabits per second.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBBSSTYPE\fR\fR
-.ad
-.sp .6
-.RS 4n
-Either \fBbss\fR for \fBBSS\fR (infrastructure) networks, or \fBibss\fR for
-\fBIBSS\fR (ad-hoc) networks.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR, \fB--parsable\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display using a stable machine-parsable format. The \fB-o\fR option is
-required with \fB-p\fR. See "Parsable Output Format", below.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdladm connect-wifi\fR [\fB-e\fR \fIessid\fR] [\fB-i\fR \fIbssid\fR]
-[\fB-k\fR \fIkey\fR,...] [\fB-s\fR \fBnone\fR | \fBwep\fR | \fBwpa\fR]
-[\fB-a\fR \fBopen\fR|\fBshared\fR] [\fB-b\fR \fBbss\fR|\fBibss\fR] [\fB-c\fR]
-[\fB-m\fR \fBa\fR|\fBb\fR|\fBg\fR] [\fB-T\fR \fItime\fR] [\fIwifi-link\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Connects to a \fBWiFi\fR network. This consists of four steps: \fIdiscovery\fR,
-\fIfiltration\fR, \fIprioritization\fR, and \fIassociation\fR. However, to
-enable connections to non-broadcast \fBWiFi\fR networks and to improve
-performance, if a \fBBSSID\fR or \fBESSID\fR is specified using the \fB-e\fR or
-\fB-i\fR options, then the first three steps are skipped and \fBconnect-wifi\fR
-immediately attempts to associate with a \fBBSSID\fR or \fBESSID\fR that
-matches the rest of the provided parameters. If this association fails, but
-there is a possibility that other networks matching the specified criteria
-exist, then the traditional discovery process begins as specified below.
-.sp
-The discovery step finds all available \fBWiFi\fR networks on the specified
-WiFi link, which must not yet be connected. For administrative convenience, if
-there is only one \fBWiFi\fR link on the system, \fIwifi-link\fR can be
-omitted.
-.sp
-Once discovery is complete, the list of networks is filtered according to the
-value of the following options:
-.sp
-.ne 2
-.na
-\fB\fB-e\fR \fIessid,\fR \fB--essid\fR=\fIessid\fR\fR
-.ad
-.sp .6
-.RS 4n
-Networks that do not have the same \fIessid\fR are filtered out.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-b\fR \fBbss\fR|\fBibss\fR, \fB--bsstype\fR=\fBbss\fR|\fBibss\fR\fR
-.ad
-.sp .6
-.RS 4n
-Networks that do not have the same \fBbsstype\fR are filtered out.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-m\fR \fBa\fR|\fBb\fR|\fBg\fR, \fB--mode\fR=\fBa\fR|\fBb\fR|\fBg\fR\fR
-.ad
-.sp .6
-.RS 4n
-Networks not appropriate for the specified 802.11 mode are filtered out.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-k\fR \fIkey,...\fR, \fB--key\fR=\fIkey, ...\fR\fR
-.ad
-.sp .6
-.RS 4n
-Use the specified \fBsecobj\fR named by the key to connect to the network.
-Networks not appropriate for the specified keys are filtered out.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR \fBnone\fR|\fBwep\fR|\fBwpa\fR,
-\fB--sec\fR=\fBnone\fR|\fBwep\fR|\fBwpa\fR\fR
-.ad
-.sp .6
-.RS 4n
-Networks not appropriate for the specified security mode are filtered out.
-.RE
-
-Next, the remaining networks are prioritized, first by signal strength, and
-then by maximum speed. Finally, an attempt is made to associate with each
-network in the list, in order, until one succeeds or no networks remain.
-.sp
-In addition to the options described above, the following options also control
-the behavior of \fBconnect-wifi\fR:
-.sp
-.ne 2
-.na
-\fB\fB-a\fR \fBopen\fR|\fBshared\fR, \fB--auth\fR=\fBopen\fR|\fBshared\fR\fR
-.ad
-.sp .6
-.RS 4n
-Connect using the specified authentication mode. By default, \fBopen\fR and
-\fBshared\fR are tried in order.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-c\fR, \fB--create-ibss\fR\fR
-.ad
-.sp .6
-.RS 4n
-Used with \fB-b ibss\fR to create a new ad-hoc network if one matching the
-specified \fBESSID\fR cannot be found. If no \fBESSID\fR is specified, then
-\fB-c -b ibss\fR always triggers the creation of a new ad-hoc network.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-T\fR \fItime\fR, \fB--timeout\fR=\fItime\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the number of seconds to wait for association to succeed. If
-\fItime\fR is \fBforever\fR, then the associate will wait indefinitely. The
-current default is ten seconds, but this might change in the future. Timeouts
-shorter than the default might not succeed reliably.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-k\fR \fIkey,...\fR, \fB--key\fR=\fIkey,...\fR\fR
-.ad
-.sp .6
-.RS 4n
-In addition to the filtering previously described, the specified keys will be
-used to secure the association. The security mode to use will be based on the
-key class; if a security mode was explicitly specified, it must be compatible
-with the key class. All keys must be of the same class.
-.sp
-For security modes that support multiple key slots, the slot to place the key
-will be specified by a colon followed by an index. Therefore, \fB-k mykey:3\fR
-places \fBmykey\fR in slot 3. By default, slot 1 is assumed. For security modes
-that support multiple keys, a comma-separated list can be specified, with the
-first key being the active key.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdladm disconnect-wifi\fR [\fB-a\fR] [\fIwifi-link\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Disconnect from one or more \fBWiFi\fR networks. If \fIwifi-link\fR specifies a
-connected \fBWiFi\fR link, then it is disconnected. For administrative
-convenience, if only one \fBWiFi\fR link is connected, \fIwifi-link\fR can be
-omitted.
-.sp
-.ne 2
-.na
-\fB\fB-a\fR, \fB--all-links\fR\fR
-.ad
-.sp .6
-.RS 4n
-Disconnects from all connected links. This is primarily intended for use by
-scripts.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdladm show-wifi\fR [[\fB-p\fR] \fB-o\fR \fIfield\fR,...]
-[\fIwifi-link\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Shows \fBWiFi\fR configuration information either for all \fBWiFi\fR links or
-for the specified link \fIwifi-link\fR.
-.sp
-.ne 2
-.na
-\fB\fB-o\fR \fIfield,...\fR, \fB--output\fR=\fIfield\fR\fR
-.ad
-.sp .6
-.RS 4n
-A case-insensitive, comma-separated list of output fields to display. The field
-name must be one of the fields listed below, or the special value \fBall\fR, to
-display all fields. For each \fBWiFi\fR link, the following fields can be
-displayed:
-.sp
-.ne 2
-.na
-\fB\fBLINK\fR\fR
-.ad
-.sp .6
-.RS 4n
-The name of the link being displayed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSTATUS\fR\fR
-.ad
-.sp .6
-.RS 4n
-Either \fBconnected\fR if the link is connected, or \fBdisconnected\fR if it is
-not connected. If the link is disconnected, all remaining fields have the value
-\fB--\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBESSID\fR\fR
-.ad
-.sp .6
-.RS 4n
-The \fBESSID\fR (name) of the connected \fBWiFi\fR network.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBBSSID\fR\fR
-.ad
-.sp .6
-.RS 4n
-Either the hardware address of the \fBWiFi\fR network's Access Point (for
-\fBBSS\fR networks), or the \fBWiFi\fR network's randomly generated unique
-token (for \fBIBSS\fR networks).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSEC\fR\fR
-.ad
-.sp .6
-.RS 4n
-Either \fBnone\fR for a \fBWiFi\fR network that uses no security, \fBwep\fR for
-a \fBWiFi\fR network that requires WEP, or \fBwpa\fR for a WiFi network that
-requires WPA.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBMODE\fR\fR
-.ad
-.sp .6
-.RS 4n
-The supported connection modes: one or more of \fBa\fR, \fBb\fR, or \fBg\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSTRENGTH\fR\fR
-.ad
-.sp .6
-.RS 4n
-The connection strength: one of \fBexcellent\fR, \fBvery good\fR, \fBgood\fR,
-\fBweak\fR, or \fBvery weak\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSPEED\fR\fR
-.ad
-.sp .6
-.RS 4n
-The connection speed, in megabits per second.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBAUTH\fR\fR
-.ad
-.sp .6
-.RS 4n
-Either \fBopen\fR or \fBshared\fR (see \fBconnect-wifi\fR).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBBSSTYPE\fR\fR
-.ad
-.sp .6
-.RS 4n
-Either \fBbss\fR for \fBBSS\fR (infrastructure) networks, or \fBibss\fR for
-\fBIBSS\fR (ad-hoc) networks.
-.RE
-
-By default, currently all fields but \fBAUTH\fR, \fBBSSID\fR, \fBBSSTYPE\fR are
-displayed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR, \fB--parsable\fR\fR
-.ad
-.sp .6
-.RS 4n
-Displays using a stable machine-parsable format. The \fB-o\fR option is
-required with \fB-p\fR. See "Parsable Output Format", below.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdladm show-ether\fR [\fB-x\fR] [[\fB-p\fR] \fB-o\fR \fIfield\fR,...]
-[\fIether-link\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Shows state information either for all physical Ethernet links or for a
-specified physical Ethernet link.
-.sp
-The \fBshow-ether\fR subcommand accepts the following options:
-.sp
-.ne 2
-.na
-\fB\fB-o\fR \fIfield\fR,..., \fB--output\fR=\fIfield\fR\fR
-.ad
-.sp .6
-.RS 4n
-A case-insensitive, comma-separated list of output fields to display. The field
-name must be one of the fields listed below, or the special value \fBall\fR to
-display all fields. For each link, the following fields can be displayed:
-.sp
-.ne 2
-.na
-\fB\fBLINK\fR\fR
-.ad
-.sp .6
-.RS 4n
-The name of the link being displayed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPTYPE\fR\fR
-.ad
-.sp .6
-.RS 4n
-Parameter type, where \fBcurrent\fR indicates the negotiated state of the link,
-\fBcapable\fR indicates capabilities supported by the device, \fBadv\fR
-indicates the advertised capabilities, and \fBpeeradv\fR indicates the
-capabilities advertised by the link-partner.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSTATE\fR\fR
-.ad
-.sp .6
-.RS 4n
-The state of the link.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBAUTO\fR\fR
-.ad
-.sp .6
-.RS 4n
-A \fByes\fR/\fBno\fR value indicating whether auto-negotiation is advertised.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSPEED-DUPLEX\fR\fR
-.ad
-.sp .6
-.RS 4n
-Combinations of speed and duplex values available. The units of speed are
-encoded with a trailing suffix of \fBG\fR (Gigabits/s) or \fBM\fR (Mb/s).
-Duplex values are encoded as \fBf\fR (full-duplex) or \fBh\fR (half-duplex).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAUSE\fR\fR
-.ad
-.sp .6
-.RS 4n
-Flow control information. Can be \fBno\fR, indicating no flow control is
-available; \fBtx\fR, indicating that the end-point can transmit pause frames,
-but ignores any received pause frames; \fBrx\fR, indicating that the end-point
-receives and acts upon received pause frames; or \fBbi\fR, indicating
-bi-directional flow-control.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBREM_FAULT\fR\fR
-.ad
-.sp .6
-.RS 4n
-Fault detection information. Valid values are \fBnone\fR or \fBfault\fR.
-.RE
-
-By default, all fields except \fBREM_FAULT\fR are displayed for the "current"
-\fBPTYPE\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR, \fB--parsable\fR\fR
-.ad
-.sp .6
-.RS 4n
-Displays using a stable machine-parsable format. The \fB-o\fR option is
-required with \fB-p\fR. See "Parsable Output Format", below.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-x\fR, \fB--extended\fR\fR
-.ad
-.sp .6
-.RS 4n
-Extended output is displayed for \fBPTYPE\fR values of \fBcurrent\fR,
-\fBcapable\fR, \fBadv\fR and \fBpeeradv\fR.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdladm set-linkprop\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] [\fB-z\fR \fIzonename\fR] \fB-p\fR \fIprop\fR=\fIvalue\fR[,...] \fIlink\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets the values of one or more properties on the link specified. The list of
-properties and their possible values depend on the link type, the network
-device driver, and networking hardware. These properties can be retrieved using
-\fBshow-linkprop\fR.
-.sp
-.ne 2
-.na
-\fB\fB-t\fR, \fB--temporary\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies that the changes are temporary. Temporary changes last until the next
-reboot.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-R\fR \fIroot-dir\fR, \fB--root-dir\fR=\fIroot-dir\fR\fR
-.ad
-.sp .6
-.RS 4n
-See "Options," above.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-z\fR \fIzonename\fR
-.ad
-.sp .6
-.RS 4n
-Operate on a link that has been delegated to the specified zone.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR \fIprop\fR=\fIvalue\fR[,...], \fB--prop\fR
-\fIprop\fR=\fIvalue\fR[,...]\fR
-.ad
-.br
-.na
-\fB\fR
-.ad
-.sp .6
-.RS 4n
-A comma-separated list of properties to set to the specified values.
-.RE
-
-Note that when the persistent value is set, the temporary value changes to the
-same value.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdladm reset-linkprop\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] [\fB-z\fR \fIzonename\fR] [\fB-p\fR \fIprop\fR,...] \fIlink\fR\fR
-.ad
-.sp .6
-.RS 4n
-Resets one or more properties to their values on the link specified. Properties
-are reset to the values they had at startup. If no properties are specified,
-all properties are reset. See \fBshow-linkprop\fR for a description of
-properties.
-.sp
-.ne 2
-.na
-\fB\fB-t\fR, \fB--temporary\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies that the resets are temporary. Values are reset to default values.
-Temporary resets last until the next reboot.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-R\fR \fIroot-dir\fR, \fB--root-dir\fR=\fIroot-dir\fR\fR
-.ad
-.sp .6
-.RS 4n
-See "Options," above.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-z\fR \fIzonename\fR
-.ad
-.sp .6
-.RS 4n
-Operate on a link that has been delegated to the specified zone.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR \fIprop, ...\fR, \fB--prop\fR=\fIprop, ...\fR\fR
-.ad
-.sp .6
-.RS 4n
-A comma-separated list of properties to reset.
-.RE
-
-Note that when the persistent value is reset, the temporary value changes to
-the same value.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdladm show-linkprop\fR [\fB-P\fR] [\fB-z\fR \fIzonename\fR] [[\fB-c\fR] \fB-o\fR \fIfield\fR[,...]][\fB-p\fR \fIprop\fR[,...]] [\fIlink\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Show the current or persistent values of one or more properties, either for all
-datalinks or for the specified link. By default, current values are shown. If
-no properties are specified, all available link properties are displayed. For
-each property, the following fields are displayed:
-.sp
-.ne 2
-.na
-\fB\fB-o\fR \fIfield\fR[,...], \fB--output\fR=\fIfield\fR\fR
-.ad
-.sp .6
-.RS 4n
-A case-insensitive, comma-separated list of output fields to display. The field
-name must be one of the fields listed below, or the special value \fBall\fR to
-display all fields. For each link, the following fields can be displayed:
-.sp
-.ne 2
-.na
-\fB\fBLINK\fR\fR
-.ad
-.sp .6
-.RS 4n
-The name of the datalink.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPROPERTY\fR\fR
-.ad
-.sp .6
-.RS 4n
-The name of the property.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPERM\fR\fR
-.ad
-.sp .6
-.RS 4n
-The read/write permissions of the property. The value shown is one of \fBro\fR
-or \fBrw\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBVALUE\fR\fR
-.ad
-.sp .6
-.RS 4n
-The current (or persistent) property value. If the value is not set, it is
-shown as \fB--\fR. If it is unknown, the value is shown as \fB?\fR. Persistent
-values that are not set or have been reset will be shown as \fB--\fR and will
-use the system \fBDEFAULT\fR value (if any).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBDEFAULT\fR\fR
-.ad
-.sp .6
-.RS 4n
-The default value of the property. If the property has no default value,
-\fB--\fR is shown.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPOSSIBLE\fR\fR
-.ad
-.sp .6
-.RS 4n
-A comma-separated list of the values the property can have. If the values span
-a numeric range, \fImin\fR - \fImax\fR might be shown as shorthand. If the
-possible values are unknown or unbounded, \fB--\fR is shown.
-.RE
-
-The list of properties depends on the link type and network device driver, and
-the available values for a given property further depends on the underlying
-network hardware and its state. General link properties are documented in the
-\fBLINK PROPERTIES\fR section. However, link properties that begin with
-"\fB_\fR" (underbar) are specific to a given link or its underlying network
-device and subject to change or removal. See the appropriate network device
-driver man page for details.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-c\fR, \fB--parsable\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display using a stable machine-parsable format. The \fB-o\fR option is
-required with this option. See "Parsable Output Format", below.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-P\fR, \fB--persistent\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display persistent link property information
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-z\fR \fIzonename\fR
-.ad
-.sp .6
-.RS 4n
-Operate on a link that has been delegated to the specified zone.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR \fIprop, ...\fR, \fB--prop\fR=\fIprop, ...\fR\fR
-.ad
-.sp .6
-.RS 4n
-A comma-separated list of properties to show. See the sections on link
-properties following subcommand descriptions.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdladm create-secobj\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] [\fB-f\fR
-\fIfile\fR] \fB-c\fR \fIclass\fR \fIsecobj\fR\fR
-.ad
-.sp .6
-.RS 4n
-Create a secure object named \fIsecobj\fR in the specified \fIclass\fR to be
-later used as a WEP or WPA key in connecting to an encrypted network. The value
-of the secure object can either be provided interactively or read from a file.
-The sequence of interactive prompts and the file format depends on the class of
-the secure object.
-.sp
-Currently, the classes \fBwep\fR and \fBwpa\fR are supported. The \fBWEP\fR
-(Wired Equivalent Privacy) key can be either 5 or 13 bytes long. It can be
-provided either as an \fBASCII\fR or hexadecimal string -- thus, \fB12345\fR
-and \fB0x3132333435\fR are equivalent 5-byte keys (the \fB0x\fR prefix can be
-omitted). A file containing a \fBWEP\fR key must consist of a single line using
-either \fBWEP\fR key format. The WPA (Wi-Fi Protected Access) key must be
-provided as an ASCII string with a length between 8 and 63 bytes.
-.sp
-This subcommand is only usable by users or roles that belong to the "Network
-Link Security" \fBRBAC\fR profile.
-.sp
-.ne 2
-.na
-\fB\fB-c\fR \fIclass\fR, \fB--class\fR=\fIclass\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fIclass\fR can be \fBwep\fR or \fBwpa\fR. See preceding discussion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-t\fR, \fB--temporary\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies that the creation is temporary. Temporary creation last until the
-next reboot.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-R\fR \fIroot-dir\fR, \fB--root-dir\fR=\fIroot-dir\fR\fR
-.ad
-.sp .6
-.RS 4n
-See "Options," above.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR \fIfile\fR, \fB--file\fR=\fIfile\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies a file that should be used to obtain the secure object's value. The
-format of this file depends on the secure object class. See the \fBEXAMPLES\fR
-section for an example of using this option to set a \fBWEP\fR key.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdladm delete-secobj\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR]
-\fIsecobj\fR[,...]\fR
-.ad
-.sp .6
-.RS 4n
-Delete one or more specified secure objects. This subcommand is only usable by
-users or roles that belong to the "Network Link Security" \fBRBAC\fR profile.
-.sp
-.ne 2
-.na
-\fB\fB-t\fR, \fB--temporary\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies that the deletions are temporary. Temporary deletions last until the
-next reboot.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-R\fR \fIroot-dir\fR, \fB--root-dir\fR=\fIroot-dir\fR\fR
-.ad
-.sp .6
-.RS 4n
-See "Options," above.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdladm show-secobj\fR [\fB-P\fR] [[\fB-p\fR] \fB-o\fR \fIfield\fR[,...]]
-[\fIsecobj\fR,...]\fR
-.ad
-.sp .6
-.RS 4n
-Show current or persistent secure object information. If one or more secure
-objects are specified, then information for each is displayed. Otherwise, all
-current or persistent secure objects are displayed.
-.sp
-By default, current secure objects are displayed, which are all secure objects
-that have either been persistently created and not temporarily deleted, or
-temporarily created.
-.sp
-For security reasons, it is not possible to show the value of a secure object.
-.sp
-.ne 2
-.na
-\fB\fB-o\fR \fIfield\fR[,...] , \fB--output\fR=\fIfield\fR[,...]\fR
-.ad
-.sp .6
-.RS 4n
-A case-insensitive, comma-separated list of output fields to display. The field
-name must be one of the fields listed below. For displayed secure object, the
-following fields can be shown:
-.sp
-.ne 2
-.na
-\fB\fBOBJECT\fR\fR
-.ad
-.sp .6
-.RS 4n
-The name of the secure object.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBCLASS\fR\fR
-.ad
-.sp .6
-.RS 4n
-The class of the secure object.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR, \fB--parsable\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display using a stable machine-parsable format. The \fB-o\fR option is
-required with \fB-p\fR. See "Parsable Output Format", below.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-P\fR, \fB--persistent\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display persistent secure object information
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdladm create-vnic\fR [\fB-t\fR] \fB-l\fR \fIlink\fR [\fB-R\fR
-\fIroot-dir\fR] [\fB-m\fR \fIvalue\fR | auto | {factory [\fB-n\fR
-\fIslot-identifier\fR]} | {random [\fB-r\fR \fIprefix\fR]}] [\fB-v\fR
-\fIvlan-id\fR] [\fB-p\fR \fIprop\fR=\fIvalue\fR[,...]] \fIvnic-link\fR\fR
-.ad
-.sp .6
-.RS 4n
-Create a VNIC with name \fIvnic-link\fR over the specified link.
-.sp
-.ne 2
-.na
-\fB\fB-t\fR, \fB--temporary\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies that the VNIC is temporary. Temporary VNICs last until the next
-reboot.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-R\fR \fIroot-dir\fR, \fB--root-dir\fR=\fIroot-dir\fR\fR
-.ad
-.sp .6
-.RS 4n
-See "Options," above.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR \fIlink\fR, \fB--link\fR=\fIlink\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fIlink\fR can be a physical link or an \fBetherstub\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-m\fR \fIvalue\fR | \fIkeyword\fR, \fB--mac-address\fR=\fIvalue\fR |
-\fIkeyword\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets the VNIC's MAC address based on the specified value or keyword. If
-\fIvalue\fR is not a keyword, it is interpreted as a unicast MAC address, which
-must be valid for the underlying NIC. The following special keywords can be
-used:
-.sp
-.ne 2
-.na
-\fBfactory [\fB-n\fR \fIslot-identifier\fR],\fR
-.ad
-.br
-.na
-\fBfactory [\fB--slot\fR=\fIslot-identifier\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Assign a factory MAC address to the VNIC. When a factory MAC address is
-requested, \fB-m\fR can be combined with the \fB-n\fR option to specify a MAC
-address slot to be used. If \fB-n\fR is not specified, the system will choose
-the next available factory MAC address. The \fB-m\fR option of the
-\fBshow-phys\fR subcommand can be used to display the list of factory MAC
-addresses, their slot identifiers, and their availability.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fR
-.ad
-.br
-.na
-\fBrandom [\fB-r\fR \fIprefix\fR],\fR
-.ad
-.br
-.na
-\fBrandom [\fB--mac-prefix\fR=\fIprefix\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Assign a random MAC address to the VNIC. A default prefix consisting of a valid
-IEEE OUI with the local bit set will be used. That prefix can be overridden
-with the \fB-r\fR option.
-.RE
-
-.sp
-.ne 2
-.na
-\fBauto\fR
-.ad
-.sp .6
-.RS 4n
-Try and use a factory MAC address first. If none is available, assign a random
-MAC address. \fBauto\fR is the default action if the \fB-m\fR option is not
-specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR \fIvlan-id\fR\fR
-.ad
-.sp .6
-.RS 4n
-Enable VLAN tagging for this VNIC. The VLAN tag will have id \fIvlan-id\fR.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR \fIprop\fR=\fIvalue\fR,..., \fB--prop\fR
-\fIprop\fR=\fIvalue\fR,...\fR
-.ad
-.sp .6
-.RS 4n
-A comma-separated list of properties to set to the specified values.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdladm delete-vnic\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] [\fB-z\fR \fIzonename\fR] \fIvnic-link\fR\fR
-.ad
-.sp .6
-.RS 4n
-Deletes the specified VNIC.
-.sp
-.ne 2
-.na
-\fB\fB-t\fR, \fB--temporary\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies that the deletion is temporary. Temporary deletions last until the
-next reboot.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-R\fR \fIroot-dir\fR, \fB--root-dir\fR=\fIroot-dir\fR\fR
-.ad
-.sp .6
-.RS 4n
-See "Options," above.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-z\fR \fIzonename\fR
-.ad
-.sp .6
-.RS 4n
-Operate on a link that has been delegated to the specified zone.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdladm show-vnic\fR [\fB-pP\fR] [\fB-s\fR [\fB-i\fR \fIinterval\fR]] [\fB-o\fR \fIfield\fR[,...]] [\fB-l\fR \fIlink\fR] [\fB-z\fR \fIzonename\fR] [\fIvnic-link\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Show VNIC configuration information (the default) or statistics, for all VNICs,
-all VNICs on a link, or only the specified \fIvnic-link\fR.
-.sp
-.ne 2
-.na
-\fB\fB-o\fR \fIfield\fR[,...] , \fB--output\fR=\fIfield\fR[,...]\fR
-.ad
-.sp .6
-.RS 4n
-A case-insensitive, comma-separated list of output fields to display. The field
-name must be one of the fields listed below. The field name must be one of the
-fields listed below, or the special value \fBall\fR to display all fields. By
-default (without \fB-o\fR), \fBshow-vnic\fR displays all fields.
-.sp
-.ne 2
-.na
-\fB\fBLINK\fR\fR
-.ad
-.sp .6
-.RS 4n
-The name of the VNIC.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBOVER\fR\fR
-.ad
-.sp .6
-.RS 4n
-The name of the physical link over which this VNIC is configured.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSPEED\fR\fR
-.ad
-.sp .6
-.RS 4n
-The maximum speed of the VNIC, in megabits per second.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBMACADDRESS\fR\fR
-.ad
-.sp .6
-.RS 4n
-MAC address of the VNIC.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBMACADDRTYPE\fR\fR
-.ad
-.sp .6
-.RS 4n
-MAC address type of the VNIC. \fBdladm\fR distinguishes among the following MAC
-address types:
-.sp
-.ne 2
-.na
-\fB\fBrandom\fR\fR
-.ad
-.sp .6
-.RS 4n
-A random address assigned to the VNIC.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfactory\fR\fR
-.ad
-.sp .6
-.RS 4n
-A factory MAC address used by the VNIC.
-.RE
-
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR, \fB--parsable\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display using a stable machine-parsable format. The \fB-o\fR option is
-required with \fB-p\fR. See "Parsable Output Format", below.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-P\fR, \fB--persistent\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display the persistent VNIC configuration.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR, \fB--statistics\fR\fR
-.ad
-.sp .6
-.RS 4n
-Displays VNIC statistics.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-i\fR \fIinterval\fR, \fB--interval\fR=\fIinterval\fR\fR
-.ad
-.sp .6
-.RS 4n
-Used with the \fB-s\fR option to specify an interval, in seconds, at which
-statistics should be displayed. If this option is not specified, statistics
-will be displayed only once.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR \fIlink\fR, \fB--link\fR=\fIlink\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display information for all VNICs on the named link.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-z\fR \fIzonename\fR
-.ad
-.sp .6
-.RS 4n
-Operate on a link that has been delegated to the specified zone.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fR
-.ad
-.br
-.na
-\fB\fBdladm create-etherstub\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR]
-\fIetherstub\fR\fR
-.ad
-.sp .6
-.RS 4n
-Create an etherstub with the specified name.
-.sp
-.ne 2
-.na
-\fB\fB-t\fR, \fB--temporary\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies that the etherstub is temporary. Temporary etherstubs do not persist
-across reboots.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-R\fR \fIroot-dir\fR, \fB--root-dir\fR=\fIroot-dir\fR\fR
-.ad
-.sp .6
-.RS 4n
-See "Options," above.
-.RE
-
-VNICs can be created on top of etherstubs instead of physical NICs. As with
-physical NICs, such a creation causes the stack to implicitly create a virtual
-switch between the VNICs created on top of the same etherstub.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fR
-.ad
-.br
-.na
-\fB\fBdladm delete-etherstub\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR]
-\fIetherstub\fR\fR
-.ad
-.sp .6
-.RS 4n
-Delete the specified etherstub.
-.sp
-.ne 2
-.na
-\fB\fB-t\fR, \fB--temporary\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies that the deletion is temporary. Temporary deletions last until the
-next reboot.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-R\fR \fIroot-dir\fR, \fB--root-dir\fR=\fIroot-dir\fR\fR
-.ad
-.sp .6
-.RS 4n
-See "Options," above.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdladm show-etherstub\fR [\fIetherstub\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Show all configured etherstubs by default, or the specified etherstub if
-\fIetherstub\fR is specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdladm create-iptun\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] \fB-T\fR
-\fItype\fR [-a {local|remote}=<addr>[,...]] \fIiptun-link\fR\fR
-.ad
-.sp .6
-.RS 4n
-Create an IP tunnel link named \fIiptun-link\fR. Such links can additionally be
-protected with IPsec using \fBipsecconf\fR(1M).
-.sp
-An IP tunnel is conceptually comprised of two parts: a virtual link between two
-or more IP nodes, and an IP interface above this link that allows the system to
-transmit and receive IP packets encapsulated by the underlying link. This
-subcommand creates a virtual link. The \fBifconfig\fR(1M) command is used to
-configure IP interfaces above the link.
-.sp
-.ne 2
-.na
-\fB\fB-t\fR, \fB--temporary\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies that the IP tunnel link is temporary. Temporary tunnels last until
-the next reboot.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-R\fR \fIroot-dir\fR, \fB--root-dir\fR=\fIroot-dir\fR\fR
-.ad
-.sp .6
-.RS 4n
-See "Options," above.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-T\fR \fItype\fR, \fB--tunnel-type\fR=\fItype\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the type of tunnel to be created. The type must be one of the
-following:
-.sp
-.ne 2
-.na
-\fB\fBipv4\fR\fR
-.ad
-.sp .6
-.RS 4n
-A point-to-point, IP-over-IP tunnel between two IPv4 nodes. This type of tunnel
-requires IPv4 source and destination addresses to function. IPv4 and IPv6
-interfaces can be plumbed above such a tunnel to create IPv4-over-IPv4 and
-IPv6-over-IPv4 tunneling configurations.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBipv6\fR\fR
-.ad
-.sp .6
-.RS 4n
-A point-to-point, IP-over-IP tunnel between two IPv6 nodes as defined in IETF
-RFC 2473. This type of tunnel requires IPv6 source and destination addresses to
-function. IPv4 and IPv6 interfaces can be plumbed above such a tunnel to create
-IPv4-over-IPv6 and IPv6-over-IPv6 tunneling configurations.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB6to4\fR\fR
-.ad
-.sp .6
-.RS 4n
-A 6to4, point-to-multipoint tunnel as defined in IETF RFC 3056. This type of
-tunnel requires an IPv4 source address to function. An IPv6 interface is
-plumbed on such a tunnel link to configure a 6to4 router.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-a\fR \fBlocal=\fR\fIaddr\fR
-.ad
-.sp .6
-.RS 4n
-Literal IP address or hostname corresponding to the tunnel source. If a
-hostname is specified, it will be resolved to IP addresses, and one of those IP
-addresses will be used as the tunnel source. Because IP tunnels are created
-before naming services have been brought online during the boot process, it is
-important that any hostname used be included in \fB/etc/hosts\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-a\fR \fBremote=\fR\fIaddr\fR
-.ad
-.sp .6
-.RS 4n
-Literal IP address or hostname corresponding to the tunnel destination.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdladm modify-iptun\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR]
-[-a {local|remote}=<addr>[,...]] \fIiptun-link\fR\fR
-.ad
-.sp .6
-.RS 4n
-Modify the parameters of the specified IP tunnel.
-.sp
-.ne 2
-.na
-\fB\fB-t\fR, \fB--temporary\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies that the modification is temporary. Temporary modifications last
-until the next reboot.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-R\fR \fIroot-dir\fR, \fB--root-dir\fR=\fIroot-dir\fR\fR
-.ad
-.sp .6
-.RS 4n
-See "Options," above.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-a\fR \fBlocal=\fR\fIaddr\fR
-.ad
-.sp .6
-.RS 4n
-Specifies a new tunnel source address. See \fBcreate-iptun\fR for a
-description.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-a\fR \fBremote=\fR\fIaddr\fR
-.ad
-.sp .6
-.RS 4n
-Specifies a new tunnel destination address. See \fBcreate-iptun\fR for a
-description.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdladm delete-iptun\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR]
-\fIiptun-link\fR\fR
-.ad
-.sp .6
-.RS 4n
-Delete the specified IP tunnel link.
-.sp
-.ne 2
-.na
-\fB\fB-t\fR, \fB--temporary\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies that the deletion is temporary. Temporary deletions last until the
-next reboot.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-R\fR \fIroot-dir\fR, \fB--root-dir\fR=\fIroot-dir\fR\fR
-.ad
-.sp .6
-.RS 4n
-See "Options," above.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdladm show-iptun\fR [\fB-P\fR] [[\fB-p\fR] \fB-o\fR \fIfield\fR[,...]]
-[\fIiptun-link\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Show IP tunnel link configuration for a single IP tunnel or all IP tunnels.
-.sp
-.ne 2
-.na
-\fB\fB-P\fR, \fB--persistent\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display the persistent IP tunnel configuration.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR, \fB--parsable\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display using a stable machine-parsable format. The -o option is required with
--p. See "Parsable Output Format", below.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-o\fR \fIfield\fR[,...], \fB--output\fR=\fIfield\fR[,...]\fR
-.ad
-.sp .6
-.RS 4n
-A case-insensitive, comma-separated list of output fields to display. The field
-name must be one of the fields listed below, or the special value \fBall\fR, to
-display all fields. By default (without \fB-o\fR), \fBshow-iptun\fR displays
-all fields.
-.sp
-.ne 2
-.na
-\fB\fBLINK\fR\fR
-.ad
-.sp .6
-.RS 4n
-The name of the IP tunnel link.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBTYPE\fR\fR
-.ad
-.sp .6
-.RS 4n
-Type of tunnel as specified by the \fB-T\fR option of \fBcreate-iptun\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBFLAGS\fR\fR
-.ad
-.sp .6
-.RS 4n
-A set of flags associated with the IP tunnel link. Possible flags are:
-.sp
-.ne 2
-.na
-\fB\fBs\fR\fR
-.ad
-.sp .6
-.RS 4n
-The IP tunnel link is protected by IPsec policy. To display the IPsec policy
-associated with the tunnel link, enter:
-.sp
-.in +2
-.nf
-# \fBipsecconf -ln -i \fItunnel-link\fR\fR
-.fi
-.in -2
-.sp
-
-See \fBipsecconf\fR(1M) for more details on how to configure IPsec policy.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBi\fR\fR
-.ad
-.sp .6
-.RS 4n
-The IP tunnel link was implicitly created with \fBifconfig\fR(1M), and will be
-automatically deleted when it is no longer referenced (that is, when the last
-IP interface over the tunnel is unplumbed). See \fBifconfig\fR(1M) for details
-on implicit tunnel creation.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSOURCE\fR\fR
-.ad
-.sp .6
-.RS 4n
-The tunnel source address.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBDESTINATION\fR\fR
-.ad
-.sp .6
-.RS 4n
-The tunnel destination address.
-.RE
-
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fBdladm create-overlay\fR \fB-e\fR \fIencap\fR \fB-s\fR \fIsearch\fR
-\fB-v\fR \fIvnetid\fR [\fB-p\fR \fIprop\fR=\fIvalue\fR[,...]] \fIoverlay\fR
-.ad
-.sp .6
-.RS 4n
-Create an overlay device named \fIoverlay\fR.
-.sp
-Overlay devices are similar to etherstubs. VNICs can be created on top
-of them. However, unlike an etherstub which is local to the system, an
-overlay device can be configured to communicate to remote hosts,
-providing a means for network virtualization. The way in which it does
-this is described by the encapsulation module and the search plugin. For
-more information on these, see \fBoverlay\fR(5).
-.sp
-An overlay device has a series of required and optional properties. These
-properties vary based upon the search and encapsulation modules and are fully
-specified in \fBoverlay\fR(5). Not every property needs to be specified - some
-have default values which will be used if nothing specific is specified. For
-example, the default port for VXLAN comes from its IANA standard. If a
-required property is missing, the command will fail and inform you of the
-missing properties.
-.sp
-.ne 2
-.na
-\fB\fB-t\fR, \fB--temporary\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies that the overlay is temporary. Temporary overlays last until
-the next reboot.
-.RE
-
-.sp
-.ne 2
-.na
-\fB-e\fR \fIencap\fR, \fB--encap\fR=\fIencap\fR
-.ad
-.sp .6
-.RS 4n
-Use \fIencap\fR as the encapsulation plugin for the overlay device
-\fIoverlay\fR. The encapsulation plugin determines how packets are transformed
-before being put on the wire.
-.RE
-
-.sp
-.ne 2
-.na
-\fB-s\fR \fIsearch\fR, \fB--search\fR=\fIsearch\fR
-.ad
-.sp .6
-.RS 4n
-Use \fIsearch\fR as the search plugin for \fIoverlay\fR. The search plugin
-determines how non-local targets are found and where packets are directed to.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR \fIprop\fR=\fIvalue\fR,..., \fB--prop\fR
-\fIprop\fR=\fIvalue\fR,...\fR
-.ad
-.sp .6
-.RS 4n
-A comma-separated list of properties to set to the specified values.
-.RE
-
-.sp
-.ne 2
-.na
-\fB-v\fR \fIvnetid\fR, \fB--vnetid\fR=\fIvnetid\fR
-.ad
-.sp .6
-.RS 4n
-Sets the virtual networking identifier to \fIvnetid\fR. A virtual network
-identifier determines is similar to a VLAN identifier, in that it identifies a
-unique virtual network. All overlay devices on the system share the same space
-for the virtual network identifier. However, the valid range of identifiers is
-determined by the encapsulation plugin specified by \fB-e\fR.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fBdladm delete-overlay\fR \fIoverlay\fR
-.ad
-.sp .6
-.RS 4n
-Delete the specified overlay. This will fail if there are VNICs on top of the
-device.
-.RE
-
-.sp
-.ne 2
-.na
-\fBdladm modify-overlay\fR \fB-d\fR \fImac\fR | \fB-f\fR | \fB-s\fR \fImac=ip:port\fR \fIoverlay\fR
-.ad
-.sp .6
-.RS 4n
-Modifies the target tables for the specified overlay.
-.sp
-The different options allow for different ways of modifying the target table.
-One of \fB-d\fR, \fB-f\fR, and \fB-s\fR is required. This is not applicable for
-all kinds of overlay devices. For more information, see \fBoverlay\fR(5).
-.sp
-.ne 2
-.na
-\fB-d\fR \fImac\fR, \fB--delete-entry\fR=\fImac\fR
-.ad
-.sp .6
-.RS 4n
-Deletes the entry for \fImac\fR from the target table for \fIoverlay\fR. Note,
-if a lookup is pending or outstanding, this does not cancel it or stop it from
-updating the value.
-.RE
-
-.sp
-.ne 2
-.na
-\fB-f\fR, \fB--flush-table\fR
-.ad
-.sp .6
-.RS 4n
-Flushes all values in the target table for \fIoverlay\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB-s\fR \fImac\fR=\fIvalue\fR, \fB--set-entry\fR=\fImac\fR=\fIvalue\fR
-.ad
-.sp .6
-.RS 4n
-Sets the value of \fIoverlay\fR's target table entry for \fImac\fR to the
-specified value. The specified value varies upon the encapsulation plugin. The
-value may be a combination of a MAC address, IP address, and port. Generally,
-this looks like [\fImac\fR,][\fIIP\fR:][\fIport\fR]. If a component is the last
-one, then there is no need for a separator. eg. if just the MAC address or IP
-is needed, it would look like \fImac\fR and \fIIP\fR respectively.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fBdladm show-overlay\fR [ \fB-f\fR | \fB-t\fR ] [[\fB-p\fR] \fB-o\fR \fIfield\fR[,...]] [\fIoverlay\fR]
-.ad
-.sp .6
-.RS 4n
-Shows overlay configuration (the default), internal target tables (\fB-t\fR), or
-the FMA state (\fB-f\fR), either for all overlays or the specified overlay.
-.sp
-By default (with neither \fB-f\fR or \fB-t\fR specified), the following fields
-will be displayed:
-.sp
-.ne 2
-.na
-\fB\fBLINK\fR\fR
-.ad
-.sp .6
-.RS 4n
-The name of the overlay.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPROPERTY\fR\fR
-.ad
-.sp .6
-.RS 4n
-The name of the property.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPERM\fR\fR
-.ad
-.sp .6
-.RS 4n
-The read/write permissions of the property. The value shown is one of \fBr-\fR
-or \fBrw\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBVALUE\fR\fR
-.ad
-.sp .6
-.RS 4n
-The current property value. If the value is not set, it is shown as \fB--\fR.
-If it is unknown, the value is shown as \fB?\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBDEFAULT\fR\fR
-.ad
-.sp .6
-.RS 4n
-The default value of the property. If the property has no default value,
-\fB--\fR is shown.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPOSSIBLE\fR\fR
-.ad
-.sp .6
-.RS 4n
-A comma-separated list of the values the property can have. If the values span
-a numeric range, \fImin\fR - \fImax\fR might be shown as shorthand. If the
-possible values are unknown or unbounded, \fB--\fR is shown.
-.RE
-
-.sp
-When the \fB-f\fR option is displayed, the following fields will be displayed:
-.sp
-.ne 2
-.na
-\fB\fBLINK\fR\fR
-.ad
-.sp .6
-.RS 4n
-The name of the overlay.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSTATUS\fR\fR
-.ad
-.sp .6
-.RS 4n
-Either \fBONLINE\fR or \fBDEGRADED\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBDETAILS\fR\fR
-.ad
-.sp .6
-.RS 4n
-When the \fBoverlay\fR's status is \fBONLINE\fR, then this has the value
-\fB--\fR. Otherwise, when it is \fBDEGRADED\fR, this field provides a more
-detailed explanation as to why it's degraded.
-.RE
-
-.sp
-When the \fB-t\fR option is displayed, the following fields will be displayed:
-.sp
-.ne 2
-.na
-\fB\fBLINK\fR\fR
-.ad
-.sp .6
-.RS 4n
-The name of the overlay.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBTARGET\fR\fR
-.ad
-.sp .6
-.RS 4n
-The target MAC address of a table entry.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBDESTINATION\fR\fR
-.ad
-.sp .6
-.RS 4n
-The address that an encapsulated packet will be sent to when a packet has the
-address specified by \fBTARGET\fR.
-.RE
-
-The \fBshow-overlay\fR command supports the following options:
-
-.sp
-.ne 2
-.na
-\fB-f\fR, \fB--fma\fR
-.ad
-.sp .6
-.RS 4n
-Displays information about an overlay device's FMA state. For more
-information on the target table, see \fBoverlay\fR(5).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-o\fR \fIfield\fR[,...], \fB--output\fR=\fIfield\fR\fR
-.ad
-.sp .6
-.RS 4n
-A case-insensitive, comma-separated list of output fields to display. The field
-name must be one of the fields listed above, or the special value \fBall\fR, to
-display all fields. The fields applicable to the \fB-o\fR option are limited to
-those listed under each output mode. For example, if using \fB-L\fR, only the
-fields listed under \fB-L\fR, above, can be used with \fB-o\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR, \fB--parsable\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display using a stable machine-parsable format. The \fB-o\fR option is
-required with \fB-p\fR. See "Parsable Output Format", below.
-.RE
-
-.sp
-.ne 2
-.na
-\fB-t\fR, \fB--target\fR
-.ad
-.sp .6
-.RS 4n
-Displays information about an overlay device's target table. For more
-information on the target table, see \fBoverlay\fR(5).
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdladm show-usage\fR [\fB-a\fR] \fB-f\fR \fIfilename\fR [\fB-p\fR
-\fIplotfile\fR \fB-F\fR \fIformat\fR] [\fB-s\fR \fItime\fR] [\fB-e\fR
-\fItime\fR] [\fIlink\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Show the historical network usage from a stored extended accounting file.
-Configuration and enabling of network accounting through \fBacctadm\fR(1M) is
-required. The default output will be the summary of network usage for the
-entire period of time in which extended accounting was enabled.
-.sp
-.ne 2
-.na
-\fB\fB-a\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display all historical network usage for the specified period of time during
-which extended accounting is enabled. This includes the usage information for
-the links that have already been deleted.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR \fIfilename\fR, \fB--file\fR=\fIfilename\fR\fR
-.ad
-.sp .6
-.RS 4n
-Read extended accounting records of network usage from \fIfilename\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-F\fR \fIformat\fR, \fB--format\fR=\fIformat\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the format of \fIplotfile\fR that is specified by the \fB-p\fR
-option. As of this release, \fBgnuplot\fR is the only supported format.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR \fIplotfile\fR, \fB--plot\fR=\fIplotfile\fR\fR
-.ad
-.sp .6
-.RS 4n
-Write network usage data to a file of the format specified by the \fB-F\fR
-option, which is required.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR \fItime\fR, \fB--start\fR=\fItime\fR\fR
-.ad
-.br
-.na
-\fB\fB-e\fR \fItime\fR, \fB--stop\fR=\fItime\fR\fR
-.ad
-.sp .6
-.RS 4n
-Start and stop times for data display. Time is in the format
-\fIMM\fR/\fIDD\fR/\fIYYYY\fR,\fIhh\fR:\fImm\fR:\fIss\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIlink\fR\fR
-.ad
-.sp .6
-.RS 4n
-If specified, display the network usage only for the named link. Otherwise,
-display network usage for all links.
-.RE
-
-.RE
-
-.SS "Parsable Output Format"
-Many \fBdladm\fR subcommands have an option that displays output in a
-machine-parsable format. The output format is one or more lines of colon
-(\fB:\fR) delimited fields. The fields displayed are specific to the subcommand
-used and are listed under the entry for the \fB-o\fR option for a given
-subcommand. Output includes only those fields requested by means of the
-\fB-o\fR option, in the order requested.
-.sp
-.LP
-When you request multiple fields, any literal colon characters are escaped by a
-backslash (\fB\e\fR) before being output. Similarly, literal backslash
-characters will also be escaped (\fB\e\e\fR). This escape format is parsable
-by using shell \fBread\fR(1) functions with the environment variable
-\fBIFS=:\fR (see \fBEXAMPLES\fR, below). Note that escaping is not done when
-you request only a single field.
-.SS "General Link Properties"
-The following general link properties are supported:
-.sp
-.ne 2
-.na
-\fB\fBallow-all-dhcp-cids\fR\fR
-.ad
-.sp .6
-.RS 4n
-One of \fBtrue\fR or \fBfalse\fR, to indicate whether or not all DHCP Client
-Identifiers should be permitted on this interface when DHCP spoofing protection
-is being used. This can be useful in cases where a DHCP client is using RFC
-4361-style Client Identifiers, which are based on a value that is opaque to the
-Global Zone, but enforcement of MAC addresses in DHCP packets is still desired.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBallowed-dhcp-cids\fR\fR
-.ad
-.sp .6
-.RS 4n
-A comma-separated list of DHCP Client Identifiers that are allowed on the
-interface.
-.sp
-Client identifiers can be written in three different formats: a string of
-hexadecimal characters prefixed by \fB0x\fR, indicating the exact bytes used in
-the Client Identifier; an RFC 3315 DUID of the form
-"1.<hardware\ type>.<time>.<link-layer\ address>" (DUID-LLT),
-"2.<enterprise\ number>.<hex\ string>" (DUID-EN), or
-"3.<hardware\ type>.<link-layer\ address>" (DUID-LL); or a string of characters
-whose byte values should be used as the Client Identifier.
-.sp
-When specifying a string of hexadecimal characters prefixed by \fB0x\fR or as
-part of a DUID-EN string, an even number of hexadecimal characters must be
-provided in order to fully specify each byte.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBallowed-ips\fR\fR
-.ad
-.sp .6
-.RS 4n
-A comma-separated list of IP addresses that are allowed on the interface.
-.sp
-An address in CIDR format with no host address specified is used to indicate
-that any address on that subnet is allowed (e.g. 192.168.10.0/24 means any
-address in the range 192.168.10.0 - 192.168.10.255 is allowed).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBautopush\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the set of STREAMS modules to push on the stream associated with a
-link when its DLPI device is opened. It is a space-delimited list of modules.
-.sp
-The optional special character sequence \fB[anchor]\fR indicates that a STREAMS
-anchor should be placed on the stream at the module previously specified in the
-list. It is an error to specify more than one anchor or to have an anchor first
-in the list.
-.sp
-The \fBautopush\fR property is preferred over the more general
-\fBautopush\fR(1M) command.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcpus\fR\fR
-.ad
-.sp .6
-.RS 4n
-Bind the processing of packets for a given data link to a processor or a set of
-processors. The value can be a comma-separated list of one or more processor
-ids. If the list consists of more than one processor, the processing will
-spread out to all the processors. Connection to processor affinity and packet
-ordering for any individual connection will be maintained.
-.sp
-The processor or set of processors are not exclusively reserved for the link.
-Only the kernel threads and interrupts associated with processing of the link
-are bound to the processor or the set of processors specified. In case it is
-desired that processors be dedicated to the link, \fBpsrset\fR(1M) can be used
-to create a processor set and then specifying the processors from the processor
-set to bind the link to.
-.sp
-If the link was already bound to processor or set of processors due to a
-previous operation, the binding will be removed and the new set of processors
-will be used instead.
-.sp
-The default is no CPU binding, which is to say that the processing of packets
-is not bound to any specific processor or processor set.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdynamic-methods\fR\fR
-.ad
-.sp .6
-.RS 4n
-When using IP spoofing protection (see \fBprotection\fR), addresses can be
-learned dynamically by monitoring certain network traffic, like DHCP
-transactions or IPv6 Stateless Address Autoconfiguration (SLAAC). By default,
-all learning methods are permitted, but if \fBallowed-ips\fR contains any
-addresses, then all methods are disabled, and any packets sent from addresses
-previously learned will be dropped. This property allows selecting which ones
-are re-enabled, where valid options are \fBdhcpv4\fR, \fBdhcpv6\fR, and
-\fBslaac\fR. \fBaddrconf\fR is available as an alias for enabling both
-\fBdhcpv6\fR and \fBslaac\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBlearn_limit\fR\fR
-.ad
-.sp .6
-.RS 4n
-Limits the number of new or changed MAC sources to be learned over a bridge
-link. When the number exceeds this value, learning on that link is temporarily
-disabled. Only non-VLAN, non-VNIC type links have this property.
-.sp
-The default value is \fB1000\fR. Valid values are greater or equal to 0.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBlearn_decay\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the decay rate for source changes limited by \fBlearn_limit\fR. This
-number is subtracted from the counter for a bridge link every 5 seconds. Only
-non-VLAN, non-VNIC type links have this property.
-.sp
-The default value is \fB200\fR. Valid values are greater or equal to 0.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmaxbw\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets the full duplex bandwidth for the link. The bandwidth is specified as an
-integer with one of the scale suffixes (\fBK\fR, \fBM\fR, or \fBG\fR for Kbps,
-Mbps, and Gbps). If no units are specified, the input value will be read as
-Mbps. The default is no bandwidth limit.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpriority\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets the relative priority for the link. The value can be given as one of the
-tokens \fBhigh\fR, \fBmedium\fR, or \fBlow\fR. The default is \fBhigh\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBprotection\fR\fR
-.ad
-.sp .6
-.RS 4n
-This property enables various forms of link protections, which prevent sending
-applicable traffic out of this link. Note that since this enforcement happens
-late in the networking stack, some observability tools like \fBsnoop\fR(1M) may
-still see dropped outbound packets.
-
-This property should be set to a comma-separated list of protections to enable
-on this link, where available protections are:
-.sp
-.ne 2
-.na
-\fBip-nospoof\fR
-.ad
-.sp .6
-.RS 4n
-Prevents sending from IPv4 and IPv6 addresses that have not been permitted
-over the NIC. Addresses can be learned dynamically (see \fBdynamic-methods\fR)
-or specified explicitly (see \fBallowed-ips\fR).
-.RE
-.sp
-.ne 2
-.na
-\fBdhcp-nospoof\fR
-.ad
-.sp .6
-.RS 4n
-Prevents sending DHCP packets whose client hardware address
-(CHADDR) field differs from the link-layer address, or from using a Client
-Identifier whose value cannot be confirmed to be derived from the link-layer
-address. Additional Client Identifiers can be permitted through the
-\fBallowed-dhcp-cids\fR and \fBallow-all-dhcp-cids\fR link properties.
-.RE
-.sp
-.ne 2
-.na
-\fBmac-nospoof\fR
-.ad
-.sp .6
-.RS 4n
-Prevents sending packets with a link-layer address that differs from the one
-associated with the NIC. Additional addresses to allow can be added using the
-\fBseconday-macs\fR property.
-.RE
-.sp
-.ne 2
-.na
-\fBrestricted\fR
-.ad
-.sp .6
-.RS 4n
-Prevents using a VLAN ID not associated with the NIC and sending packets that
-are not IPv4, IPv6 or ARP.
-.RE
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBstp\fR\fR
-.ad
-.sp .6
-.RS 4n
-Enables or disables Spanning Tree Protocol on a bridge link. Setting this value
-to \fB0\fR disables Spanning Tree, and puts the link into forwarding mode with
-BPDU guarding enabled. This mode is appropriate for point-to-point links
-connected only to end nodes. Only non-VLAN, non-VNIC type links have this
-property. The default value is \fB1\fR, to enable STP.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBforward\fR\fR
-.ad
-.sp .6
-.RS 4n
-Enables or disables forwarding for a VLAN. Setting this value to \fB0\fR
-disables bridge forwarding for a VLAN link. Disabling bridge forwarding removes
-that VLAN from the "allowed set" for the bridge. The default value is \fB1\fR,
-to enable bridge forwarding for configured VLANs.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdefault_tag\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets the default VLAN ID that is assumed for untagged packets sent to and
-received from this link. Only non-VLAN, non-VNIC type links have this property.
-Setting this value to \fB0\fR disables the bridge forwarding of untagged
-packets to and from the port. The default value is \fBVLAN ID 1\fR. Valid
-values values are from 0 to 4094.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpromisc-filtered\fR\fR
-.ad
-.sp .6
-.RS 4n
-Enables or disables the default filtering of promiscuous mode for certain
-classes of links. By default, VNICs will only see unicast traffic destined for it
-in promiscuous mode. Not all the unicast traffic from the underlying device
-makes it to the VNIC. Disabling this would cause a VNIC, for example, to be able
-to see all unicast traffic from the device it is created over. The default value
-is on.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBstp_priority\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets the STP and RSTP Port Priority value, which is used to determine the
-preferred root port on a bridge. Lower numerical values are higher priority.
-The default value is \fB128\fR. Valid values range from 0 to 255.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBstp_cost\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets the STP and RSTP cost for using the link. The default value is \fBauto\fR,
-which sets the cost based on link speed, using \fB100\fR for 10Mbps, \fB19\fR
-for 100Mbps, \fB4\fR for 1Gbps, and \fB2\fR for 10Gbps. Valid values range from
-1 to 65535.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBstp_edge\fR\fR
-.ad
-.sp .6
-.RS 4n
-Enables or disables bridge edge port detection. If set to \fB0\fR (false), the
-system assumes that the port is connected to other bridges even if no bridge
-PDUs of any type are seen. The default value is \fB1\fR, which detects edge
-ports automatically.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBstp_p2p\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets bridge point-to-point operation mode. Possible values are \fBtrue\fR,
-\fBfalse\fR, and \fBauto\fR. When set to \fBauto\fR, point-to-point connections
-are automatically discovered. When set to \fBtrue\fR, the port mode is forced
-to use point-to-point. When set to \fBfalse\fR, the port mode is forced to use
-normal multipoint mode. The default value is \fBauto\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBstp_mcheck\fR\fR
-.ad
-.sp .6
-.RS 4n
-Triggers the system to run the RSTP \fBForce BPDU Migration Check\fR procedure
-on this link. The procedure is triggered by setting the property value to
-\fB1\fR. The property is automatically reset back to \fB0\fR. This value cannot
-be set unless the following are true:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The link is bridged
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The bridge is protected by Spanning Tree
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The bridge \fBforce-protocol\fR value is at least 2 (RSTP)
-.RE
-The default value is 0.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBzone\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the zone to which the link belongs. This property can be modified
-only temporarily through \fBdladm\fR, and thus the \fB-t\fR option must be
-specified. To modify the zone assignment such that it persists across reboots,
-please use \fBzonecfg\fR(1M). Possible values consist of any exclusive-IP zone
-currently running on the system. By default, the zone binding is as per
-\fBzonecfg\fR(1M).
-.RE
-
-.SS "Wifi Link Properties"
-The following \fBWiFi\fR link properties are supported. Note that the ability
-to set a given property to a given value depends on the driver and hardware.
-.sp
-.ne 2
-.na
-\fB\fBchannel\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the channel to use. This property can be modified only by certain
-\fBWiFi\fR links when in \fBIBSS\fR mode. The default value and allowed range
-of values varies by regulatory domain.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpowermode\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the power management mode of the \fBWiFi\fR link. Possible values are
-\fBoff\fR (disable power management), \fBmax\fR (maximum power savings), and
-\fBfast\fR (performance-sensitive power management). Default is \fBoff\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBradio\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the radio mode of the \fBWiFi\fR link. Possible values are \fBon\fR
-or \fBoff\fR. Default is \fBon\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBspeed\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies a fixed speed for the \fBWiFi\fR link, in megabits per second. The
-set of possible values depends on the driver and hardware (but is shown by
-\fBshow-linkprop\fR); common speeds include 1, 2, 11, and 54. By default, there
-is no fixed speed.
-.RE
-
-.SS "Ethernet Link Properties"
-The following MII Properties, as documented in \fBieee802.3\fR(5), are
-supported in read-only mode:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBduplex\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBstate\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBadv_autoneg_cap\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBadv_10gfdx_cap\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBadv_1000fdx_cap\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBadv_1000hdx_cap\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBadv_100fdx_cap\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBadv_100hdx_cap\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBadv_10fdx_cap\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBadv_10hdx_cap\fR
-.RE
-.sp
-.LP
-Each \fBadv_\fR property (for example, \fBadv_10fdx_cap\fR) also has a
-read/write counterpart \fBen_\fR property (for example, \fBen_10fdx_cap\fR)
-controlling parameters used at auto-negotiation. In the absence of Power
-Management, the \fBadv\fR* speed/duplex parameters provide the values that are
-both negotiated and currently effective in hardware. However, with Power
-Management enabled, the speed/duplex capabilities currently exposed in hardware
-might be a subset of the set of bits that were used in initial link parameter
-negotiation. Thus the MII \fBadv_\fR* parameters are marked read-only, with an
-additional set of \fBen_\fR* parameters for configuring speed and duplex
-properties at initial negotiation.
-.sp
-.LP
-Note that the \fBadv_autoneg_cap\fR does not have an \fBen_autoneg_cap\fR
-counterpart: the \fBadv_autoneg_cap\fR is a 0/1 switch that turns off/on
-auto-negotiation itself, and therefore cannot be impacted by Power Management.
-.sp
-.LP
-In addition, the following Ethernet properties are reported:
-.sp
-.ne 2
-.na
-\fB\fBspeed\fR\fR
-.ad
-.sp .6
-.RS 4n
-(read-only) The operating speed of the device, in Mbps.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmtu\fR\fR
-.ad
-.sp .6
-.RS 4n
-The maximum client SDU (Send Data Unit) supported by the device. Valid range is
-68-65536.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBflowctrl\fR\fR
-.ad
-.sp .6
-.RS 4n
-Establishes flow-control modes that will be advertised by the device. Valid
-input is one of:
-.sp
-.ne 2
-.na
-\fB\fBno\fR\fR
-.ad
-.sp .6
-.RS 4n
-No flow control enabled.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrx\fR\fR
-.ad
-.sp .6
-.RS 4n
-Receive, and act upon incoming pause frames.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBtx\fR\fR
-.ad
-.sp .6
-.RS 4n
-Transmit pause frames to the peer when congestion occurs, but ignore received
-pause frames.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBbi\fR\fR
-.ad
-.sp .6
-.RS 4n
-Bidirectional flow control.
-.RE
-
-Note that the actual settings for this value are constrained by the
-capabilities allowed by the device and the link partner.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBen_fec_cap\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets the Forward Error Correct (FEC) code(s) to be advertised by the
-device.
-Valid values are:
-.sp
-.ne 2
-.na
-\fB\fBnone\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow the device not to use FEC.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBauto\fR\fR
-.ad
-.sp .6
-.RS 4n
-The device will automatically decide which FEC code to use.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrs\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow Reed-Solomon FEC code.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBbase-r\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow Base-R (also known as FireCode) code.
-.RE
-
-Valid input is either \fBauto\fR as a single value, or a comma separated
-combination of \fBnone\fR, \fBrs\fR and \fBbase-r\fR.
-The default value is \fBauto\fR.
-.sp
-.LP
-Note the actual FEC settings and combinations are constrained by the
-capabilities allowed by the device and the link partner.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBadv_fec_cap\fR\fR
-.ad
-.sp .6
-.RS 4n
-(read only) The current negotiated Forward Error Correction code.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsecondary-macs\fR\fR
-.ad
-.sp .6
-.RS 4n
-A comma-separated list of additional MAC addresses that are allowed on the
-interface.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBtagmode\fR\fR
-.ad
-.sp .6
-.RS 4n
-This link property controls the conditions in which 802.1Q VLAN tags will be
-inserted in packets being transmitted on the link. Two mode values can be
-assigned to this property:
-.sp
-.ne 2
-.na
-\fB\fBnormal\fR\fR
-.ad
-.RS 12n
-Insert a VLAN tag in outgoing packets under the following conditions:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The packet belongs to a VLAN.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The user requested priority tagging.
-.RE
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBvlanonly\fR\fR
-.ad
-.RS 12n
-Insert a VLAN tag only when the outgoing packet belongs to a VLAN. If a tag is
-being inserted in this mode and the user has also requested a non-zero
-priority, the priority is honored and included in the VLAN tag.
-.RE
-
-The default value is \fBvlanonly\fR.
-.RE
-
-.SS "IP Tunnel Link Properties"
-The following IP tunnel link properties are supported.
-.sp
-.ne 2
-.na
-\fB\fBhoplimit\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the IPv4 TTL or IPv6 hop limit for the encapsulating outer IP header
-of a tunnel link. This property exists for all tunnel types. The default value
-is 64.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBencaplimit\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the IPv6 encapsulation limit for an IPv6 tunnel as defined in RFC
-2473. This value is the tunnel nesting limit for a given tunneled packet. The
-default value is 4. A value of 0 disables the encapsulation limit.
-.RE
-
-.SH EXAMPLES
-\fBExample 1 \fRConfiguring an Aggregation
-.sp
-.LP
-To configure a data-link over an aggregation of devices \fBbge0\fR and
-\fBbge1\fR with key 1, enter the following command:
-
-.sp
-.in +2
-.nf
-# \fBdladm create-aggr -d bge0 -d bge1 1\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRConnecting to a WiFi Link
-.sp
-.LP
-To connect to the most optimal available unsecured network on a system with a
-single \fBWiFi\fR link (as per the prioritization rules specified for
-\fBconnect-wifi\fR), enter the following command:
-
-.sp
-.in +2
-.nf
-# \fBdladm connect-wifi\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRCreating a WiFi Key
-.sp
-.LP
-To interactively create the \fBWEP\fR key \fBmykey\fR, enter the following
-command:
-
-.sp
-.in +2
-.nf
-# \fBdladm create-secobj -c wep mykey\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Alternatively, to non-interactively create the \fBWEP\fR key \fBmykey\fR using
-the contents of a file:
-
-.sp
-.in +2
-.nf
-# \fBumask 077\fR
- # \fBcat >/tmp/mykey.$$ <<EOF\fR
- \fB12345\fR
- \fBEOF\fR
- # \fBdladm create-secobj -c wep -f /tmp/mykey.$$ mykey\fR
- # \fBrm /tmp/mykey.$$\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 4 \fRConnecting to a Specified Encrypted WiFi Link
-.sp
-.LP
-To use key \fBmykey\fR to connect to \fBESSID\fR \fBwlan\fR on link \fBath0\fR,
-enter the following command:
-
-.sp
-.in +2
-.nf
-# \fBdladm connect-wifi -k mykey -e wlan ath0\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 5 \fRChanging a Link Property
-.sp
-.LP
-To set \fBpowermode\fR to the value \fBfast\fR on link \fBpcwl0\fR, enter the
-following command:
-
-.sp
-.in +2
-.nf
-# \fBdladm set-linkprop -p powermode=fast pcwl0\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 6 \fRConnecting to a WPA-Protected WiFi Link
-.sp
-.LP
-Create a WPA key \fBpsk\fR and enter the following command:
-
-.sp
-.in +2
-.nf
-# \fBdladm create-secobj -c wpa psk\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-To then use key \fBpsk\fR to connect to ESSID \fBwlan\fR on link \fBath0\fR,
-enter the following command:
-
-.sp
-.in +2
-.nf
-# \fBdladm connect-wifi -k psk -e wlan ath0\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 7 \fRRenaming a Link
-.sp
-.LP
-To rename the \fBbge0\fR link to \fBmgmt0\fR, enter the following command:
-
-.sp
-.in +2
-.nf
-# \fBdladm rename-link bge0 mgmt0\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 8 \fRReplacing a Network Card
-.sp
-.LP
-Consider that the \fBbge0\fR device, whose link was named \fBmgmt0\fR as shown
-in the previous example, needs to be replaced with a \fBce0\fR device because
-of a hardware failure. The \fBbge0\fR NIC is physically removed, and replaced
-with a new \fBce0\fR NIC. To associate the newly added \fBce0\fR device with
-the \fBmgmt0\fR configuration previously associated with \fBbge0\fR, enter the
-following command:
-
-.sp
-.in +2
-.nf
-# \fBdladm rename-link ce0 mgmt0\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 9 \fRRemoving a Network Card
-.sp
-.LP
-Suppose that in the previous example, the intent is not to replace the
-\fBbge0\fR NIC with another NIC, but rather to remove and not replace the
-hardware. In that case, the \fBmgmt0\fR datalink configuration is not slated to
-be associated with a different physical device as shown in the previous
-example, but needs to be deleted. Enter the following command to delete the
-datalink configuration associated with the \fBmgmt0\fR datalink, whose physical
-hardware (\fBbge0\fR in this case) has been removed:
-
-.sp
-.in +2
-.nf
-# \fBdladm delete-phys mgmt0\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 10 \fRUsing Parsable Output to Capture a Single Field
-.sp
-.LP
-The following assignment saves the MTU of link \fBnet0\fR to a variable named
-\fBmtu\fR.
-
-.sp
-.in +2
-.nf
-# \fBmtu=`dladm show-link -p -o mtu net0`\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 11 \fRUsing Parsable Output to Iterate over Links
-.sp
-.LP
-The following script displays the state of each link on the system.
-
-.sp
-.in +2
-.nf
-# \fBdladm show-link -p -o link,state | while IFS=: read link state; do
- print "Link $link is in state $state"
- done\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 12 \fRConfiguring VNICs
-.sp
-.LP
-Create two VNICs with names \fBhello0\fR and \fBtest1\fR over a single physical
-link \fBbge0\fR:
-
-.sp
-.in +2
-.nf
-# \fBdladm create-vnic -l bge0 hello0\fR
-# \fBdladm create-vnic -l bge0 test1\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 13 \fRConfiguring VNICs and Allocating Bandwidth and Priority
-.sp
-.LP
-Create two VNICs with names \fBhello0\fR and \fBtest1\fR over a single physical
-link \fBbge0\fR and make \fBhello0\fR a high priority VNIC with a
-factory-assigned MAC address with a maximum bandwidth of 50 Mbps. Make
-\fBtest1\fR a low priority VNIC with a random MAC address and a maximum
-bandwidth of 100Mbps.
-
-.sp
-.in +2
-.nf
-# \fBdladm create-vnic -l bge0 -m factory -p maxbw=50,priority=high hello0\fR
-# \fBdladm create-vnic -l bge0 -m random -p maxbw=100M,priority=low test1\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 14 \fRConfiguring a VNIC with a Factory MAC Address
-.sp
-.LP
-First, list the available factory MAC addresses and choose one of them:
-
-.sp
-.in +2
-.nf
-# \fBdladm show-phys -m bge0\fR
-LINK SLOT ADDRESS INUSE CLIENT
-bge0 primary 0:e0:81:27:d4:47 yes bge0
-bge0 1 8:0:20:fe:4e:a5 no
-bge0 2 8:0:20:fe:4e:a6 no
-bge0 3 8:0:20:fe:4e:a7 no
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Create a VNIC named \fBhello0\fR and use slot 1's address:
-
-.sp
-.in +2
-.nf
-# \fBdladm create-vnic -l bge0 -m factory -n 1 hello0\fR
-# \fBdladm show-phys -m bge0\fR
-LINK SLOT ADDRESS INUSE CLIENT
-bge0 primary 0:e0:81:27:d4:47 yes bge0
-bge0 1 8:0:20:fe:4e:a5 yes hello0
-bge0 2 8:0:20:fe:4e:a6 no
-bge0 3 8:0:20:fe:4e:a7 no
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 15 \fRCreating a VNIC with User-Specified MAC Address, Binding it to
-Set of Processors
-.sp
-.LP
-Create a VNIC with name \fBhello0\fR, with a user specified MAC address, and a
-processor binding \fB0, 1, 2, 3\fR.
-
-.sp
-.in +2
-.nf
-# \fBdladm create-vnic -l bge0 -m 8:0:20:fe:4e:b8 -p cpus=0,1,2,3 hello0\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 16 \fRCreating a Virtual Network Without a Physical NIC
-.sp
-.LP
-First, create an etherstub with name \fBstub1\fR:
-
-.sp
-.in +2
-.nf
-# \fBdladm create-etherstub stub1\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Create two VNICs with names \fBhello0\fR and \fBtest1\fR on the etherstub. This
-operation implicitly creates a virtual switch connecting \fBhello0\fR and
-\fBtest1\fR.
-
-.sp
-.in +2
-.nf
-# \fBdladm create-vnic -l stub1 hello0\fR
-# \fBdladm create-vnic -l stub1 test1\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 17 \fRShowing Network Usage
-.sp
-.LP
-Network usage statistics can be stored using the extended accounting facility,
-\fBacctadm\fR(1M).
-
-.sp
-.in +2
-.nf
-# \fBacctadm -e basic -f /var/log/net.log net\fR
-# \fBacctadm net\fR
- Network accounting: active
- Network accounting file: /var/log/net.log
- Tracked Network resources: basic
- Untracked Network resources: src_ip,dst_ip,src_port,dst_port,protocol,
- dsfield
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The saved historical data can be retrieved in summary form using the
-\fBshow-usage\fR subcommand:
-
-.sp
-.in +2
-.nf
-# \fBdladm show-usage -f /var/log/net.log\fR
-LINK DURATION IPACKETS RBYTES OPACKETS OBYTES BANDWIDTH
-e1000g0 80 1031 546908 0 0 2.44 Kbps
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 18 \fRDisplaying Bridge Information
-.sp
-.LP
-The following commands use the \fBshow-bridge\fR subcommand with no and various
-options.
-
-.sp
-.in +2
-.nf
-# \fBdladm show-bridge\fR
-BRIDGE PROTECT ADDRESS PRIORITY DESROOT
-foo stp 32768/8:0:20:bf:f 32768 8192/0:d0:0:76:14:38
-bar stp 32768/8:0:20:e5:8 32768 8192/0:d0:0:76:14:38
-
-# \fBdladm show-bridge -l foo\fR
-LINK STATE UPTIME DESROOT
-hme0 forwarding 117 8192/0:d0:0:76:14:38
-qfe1 forwarding 117 8192/0:d0:0:76:14:38
-
-# \fBdladm show-bridge -s foo\fR
-BRIDGE DROPS FORWARDS
-foo 0 302
-
-# \fBdladm show-bridge -ls foo\fR
-LINK DROPS RECV XMIT
-hme0 0 360832 31797
-qfe1 0 322311 356852
-
-# \fBdladm show-bridge -f foo\fR
-DEST AGE FLAGS OUTPUT
-8:0:20:bc:a7:dc 10.860 -- hme0
-8:0:20:bf:f9:69 -- L hme0
-8:0:20:c0:20:26 17.420 -- hme0
-8:0:20:e5:86:11 -- L qfe1
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 19 \fRCreating an IPv4 Tunnel
-.sp
-.LP
-The following sequence of commands creates and then displays a persistent IPv4
-tunnel link named \fBmytunnel0\fR between 66.1.2.3 and 192.4.5.6:
-
-.sp
-.in +2
-.nf
-# \fBdladm create-iptun -T ipv4 -s 66.1.2.3 -d 192.4.5.6 mytunnel0\fR
-# \fBdladm show-iptun mytunnel0\fR
-LINK TYPE FLAGS SOURCE DESTINATION
-mytunnel0 ipv4 -- 66.1.2.3 192.4.5.6
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-A point-to-point IP interface can then be created over this tunnel link:
-
-.sp
-.in +2
-.nf
-# \fBifconfig mytunnel0 plumb 10.1.0.1 10.1.0.2 up\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-As with any other IP interface, configuration persistence for this IP interface
-is achieved by placing the desired \fBifconfig\fR commands (in this case, the
-command for "\fB10.1.0.1 10.1.0.2\fR") into \fB/etc/hostname.mytunnel0\fR.
-
-.LP
-\fBExample 20 \fRCreating a 6to4 Tunnel
-.sp
-.LP
-The following command creates a 6to4 tunnel link. The IPv4 address of the 6to4
-router is 75.10.11.12.
-
-.sp
-.in +2
-.nf
-# \fBdladm create-iptun -T 6to4 -s 75.10.11.12 sitetunnel0\fR
-# \fBdladm show-iptun sitetunnel0\fR
-LINK TYPE FLAGS SOURCE DESTINATION
-sitetunnel0 6to4 -- 75.10.11.12 --
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The following command plumbs an IPv6 interface on this tunnel:
-
-.sp
-.in +2
-.nf
-# \fBifconfig sitetunnel0 inet6 plumb up\fR
-# \fBifconfig sitetunnel0 inet6\fR
-sitetunnel0: flags=2200041 <UP,RUNNING,NONUD,IPv6> mtu 65515 index 3
- inet tunnel src 75.10.11.12
- tunnel hop limit 64
- inet6 2002:4b0a:b0c::1/16
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Note that the system automatically configures the IPv6 address on the 6to4 IP
-interface. See \fBifconfig\fR(1M) for a description of how IPv6 addresses are
-configured on 6to4 tunnel links.
-
-.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-.LP
-\fB/usr/sbin\fR
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Committed
-.TE
-
-.sp
-.LP
-\fB/sbin\fR
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Committed
-.TE
-
-.SH SEE ALSO
-\fBacctadm\fR(1M), \fBautopush\fR(1M), \fBifconfig\fR(1M), \fBipsecconf\fR(1M),
-\fBndd\fR(1M), \fBpsrset\fR(1M), \fBwpad\fR(1M), \fBzonecfg\fR(1M),
-\fBattributes\fR(5), \fBieee802.3\fR(5), \fBoverlay\fR(5), \fBdlpi\fR(7P)
-.sp
-.LP
-R. Droms, Ed., J. Bound, B. Volz, T. Lemon, C. Perkins, M. Carney. \fIRFC 3315:
-Dynamic Host Configuration Protocol for IPv6 (DHCPv6)\fR. The Internet Society.
-July 2003.
-.sp
-.LP
-T. Lemon, B. Sommerfeld. February 2006. \fIRFC 4361: Node-specific Client
-Identifiers for Dynamic Host Configuration Protocol Version Four (DHCPv4)\fR.
-The Internet Society. January 2006.
-.SH NOTES
-The preferred method of referring to an aggregation in the aggregation
-subcommands is by its link name. Referring to an aggregation by its integer
-\fIkey\fR is supported for backward compatibility, but is not necessary. When
-creating an aggregation, if a \fIkey\fR is specified instead of a link name,
-the aggregation's link name will be automatically generated by \fBdladm\fR as
-\fBaggr\fR\fIkey\fR.
diff --git a/usr/src/man/man1m/dlmgmtd.1m b/usr/src/man/man1m/dlmgmtd.1m
deleted file mode 100644
index e32e95b82c..0000000000
--- a/usr/src/man/man1m/dlmgmtd.1m
+++ /dev/null
@@ -1,62 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH DLMGMTD 1M "Jul 30, 2008"
-.SH NAME
-dlmgmtd \- datalink management daemon
-.SH SYNOPSIS
-.LP
-.nf
-\fB/sbin/dlmgmtd\fR
-.fi
-
-.LP
-.nf
-svc:/network/datalink-management:default
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBdlmgmtd\fR is a system daemon that handles administrative events for network
-datalink interfaces. It is controlled through the service management facility
-(SMF) service instance:
-.sp
-.in +2
-.nf
-svc:/network/datalink-management:default
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The daemon should not be invoked directly. It does not constitute an
-administrative nor a programming interface. The administrative interface for
-managing datalinks is \fBdladm\fR(1M).
-.SH OPTIONS
-.sp
-.LP
-The daemon has no options.
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Private
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBdladm\fR(1M), \fBattributes\fR(5)
diff --git a/usr/src/man/man1m/dmesg.1m b/usr/src/man/man1m/dmesg.1m
deleted file mode 100644
index 37f76065e7..0000000000
--- a/usr/src/man/man1m/dmesg.1m
+++ /dev/null
@@ -1,30 +0,0 @@
-'\" te
-.\" Copyright (c) 1980 Regents of the University of California. All rights reserved. The Berkeley software License Agreement specifies the terms and conditions for redistribution.
-.\" Copyright (c) 1999 Sun Microsystems, Inc. All Rights Reserved.
-.TH DMESG 1M "Jul 9, 2003"
-.SH NAME
-dmesg \- collect system diagnostic messages to form error log
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/bin/dmesg\fR
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/dmesg\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBdmesg\fR is made obsolete by \fBsyslogd\fR(1M) for maintenance of the system
-error log.
-.sp
-.LP
-\fBdmesg\fR looks in a system buffer for recently printed diagnostic messages
-and prints them on the standard output.
-.SH SEE ALSO
-.sp
-.LP
-\fBsyslogd\fR(1M), \fBattributes\fR(5)
diff --git a/usr/src/man/man1m/dminfo.1m b/usr/src/man/man1m/dminfo.1m
deleted file mode 100644
index 41f28a9c22..0000000000
--- a/usr/src/man/man1m/dminfo.1m
+++ /dev/null
@@ -1,152 +0,0 @@
-'\" te
-.\" Copyright (c) 1993, Sun Microsystems, Inc.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH DMINFO 1M "Mar 6, 2017"
-.SH NAME
-dminfo \- report information about a device entry in a device maps file
-.SH SYNOPSIS
-.LP
-.nf
-\fBdminfo\fR [\fB-v\fR] [\fB-a\fR] [\fB-f\fR \fIpathname\fR]
-.fi
-
-.LP
-.nf
-\fBdminfo\fR [\fB-v\fR] [\fB-a\fR] [\fB-f\fR \fIpathname\fR] \fB-n\fR \fIdev\fR \fB-\fIname\fR\fR...
-.fi
-
-.LP
-.nf
-\fBdminfo\fR [\fB-v\fR] [\fB-a\fR] [\fB-f\fR \fIpathname\fR] \fB-d\fR \fIdev\fR \fB-\fIpath\fR\fR...
-.fi
-
-.LP
-.nf
-\fBdminfo\fR [\fB-v\fR] [\fB-a\fR] [\fB-f\fR \fIpathname\fR] \fB-t\fR \fIdev\fR \fB-\fItype\fR\fR...
-.fi
-
-.LP
-.nf
-\fBdminfo\fR [\fB-v\fR] [\fB-f\fR \fIpathname\fR] \fB-u\fR \fIdm\fR -\fIentry\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-\fBdminfo\fR reports and updates information about the \fBdevice_maps\fR(4)
-file.
-.SH OPTIONS
-.LP
-The following options are supported
-.sp
-.ne 2
-.na
-\fB\fB-a\fR\fR
-.ad
-.RS 18n
-Succeed if any of the requested entries are found. If used with \fB-v\fR, all
-entries that match the requested case(s) are printed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-d\fR \fIdev\(mipath\fR\fR
-.ad
-.RS 18n
-Search by \fIdev\(mipath\fR. Search \fBdevice_maps\fR(4) for a device special
-pathname in the \fIdevice_list\fR field matching the \fIdev\(mipath\fR
-argument. This option cannot be used with \fB-n\fR, \fB-t\fR or \fB-u\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR \fIpathname\fR\fR
-.ad
-.RS 18n
-Use a device_maps file with \fIpathname\fR instead of
-\fB/etc/security/device_maps\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR \fIdev\(miname\fR\fR
-.ad
-.RS 18n
-Search by \fIdev\(miname\fR. Search \fBdevice_maps\fR(4) for a
-\fIdevice_name\fR field matching \fIdev\(miname\fR. This option cannot be used
-with \fB-d\fR, \fB-t\fR or \fB-u\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-t\fR \fIdev\(mitype\fR\fR
-.ad
-.RS 18n
-Search by \fIdev\(mitype\fR. Search \fBdevice_maps\fR(4) for a
-\fIdevice_type\fR field matching the given \fIdev\(mitype\fR. This option
-cannot be used with \fB-d\fR, \fB-n\fR or \fB-u\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-u\fR \fIdm\(mientry\fR\fR
-.ad
-.RS 18n
-Update the \fBdevice_maps\fR(4) file. This option is provided to add entries to
-the \fBdevice_maps\fR(4) file. The \fIdm\(mientry\fR must be a complete
-\fBdevice_maps\fR(4) file entry. The \fIdm\(mientry\fR has fields, as in the
-\fBdevice_maps\fR file. It uses the colon (\fB:\fR) as a field separator, and
-white space as the \fIdevice_list\fR subfield separators. The \fIdm\(mientry\fR
-is not made if any fields are missing, or if the \fIdm\(mientry\fR would be a
-duplicate. The default device maps file can be updated only by the super user.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.RS 18n
-Verbose. Print the requested entry or entries, one line per entry, on the
-standard output. If no entries are specified, all are printed.
-.RE
-
-.SH EXIT STATUS
-.ne 2
-.na
-\fB0\fR
-.ad
-.RS 5n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB1\fR
-.ad
-.RS 5n
-Request failed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB2\fR
-.ad
-.RS 5n
-Incorrect syntax.
-.RE
-
-.SH FILES
-.LP
-\fB/etc/security/device_maps\fR
-.SH SEE ALSO
-.LP
-\fBdevice_maps\fR(4), \fBattributes\fR(5)
diff --git a/usr/src/man/man1m/dns-sd.1m b/usr/src/man/man1m/dns-sd.1m
deleted file mode 100644
index ff9f2dea11..0000000000
--- a/usr/src/man/man1m/dns-sd.1m
+++ /dev/null
@@ -1,275 +0,0 @@
-.\" -*- tab-width: 4 -*-
-.\"
-.\" Copyright (c) 2004 Apple Computer, Inc. All Rights Reserved.
-.\"
-.\" Licensed under the Apache License, Version 2.0 (the "License");
-.\" you may not use this file except in compliance with the License.
-.\" You may obtain a copy of the License at
-.\"
-.\" http://www.apache.org/licenses/LICENSE-2.0
-.\"
-.\" Unless required by applicable law or agreed to in writing, software
-.\" distributed under the License is distributed on an "AS IS" BASIS,
-.\" WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-.\" See the License for the specific language governing permissions and
-.\" limitations under the License.
-.\"
-.\" Copyright 2016 Toomas Soome <tsoome@me.com>
-.\"
-.Dd Jan 28, 2016 \" Date
-.Dt DNS-SD 1M \" Document Title
-.Os illumos \" Operating System
-.\"
-.Sh NAME
-.Nm dns-sd
-.Nd Multicast DNS (mDNS) & DNS Service Discovery (DNS-SD) Test Tool \" For whatis
-.\"
-.Sh SYNOPSIS
-.Nm
-.Op Fl E
-.Pp
-.Nm
-.Op Fl F
-.Pp
-.Nm
-.Op Fl R Ar name type domain port Op Ar key=value ...
-.Pp
-.Nm
-.Op Fl B Ar type domain
-.Pp
-.Nm
-.Op Fl L Ar name type domain
-.Pp
-.Nm
-.Op Fl P Ar name type domain port host IP Op Ar key=value ...
-.Pp
-.Nm
-.Op Fl q Ar name rrtype rrclass
-.Pp
-.Nm
-.Op Fl Z Ar type domain
-.Pp
-.Nm
-.Op Fl G Ns \ v4/v6/v4v6 Ar name
-.Pp
-.Nm
-.Op Fl V
-.\"
-.Sh DESCRIPTION
-The
-.Nm
-command is a network diagnostic tool, much like
-.Xr ping 1M
-or
-.Xr traceroute 1M .
-However, unlike those tools, most of its functionality is not implemented in the
-.Nm
-executable itself, but in library code that is available to any application.
-The library API that
-.Nm
-uses is documented in
-.Pa /usr/include/dns_sd.h .
-The
-.Nm
-command replaces the older
-mDNS
-command.
-.Pp
-The
-.Nm
-command is primarily intended for interactive use.
-Because its command-line arguments and output format are subject to change,
-invoking it from a shell script will generally be fragile.
-Additionally, the asynchronous nature of DNS Service Discovery does
-not lend itself easily to script-oriented programming.
-For example, calls like "browse" never complete; the action of performing a
-"browse" sets in motion machinery to notify the client whenever instances of
-that service type appear or disappear from the network.
-These notifications continue to be delivered indefinitely, for minutes,
-hours, or even days, as services come and go, until the client
-explicitly terminates the call.
-This style of asynchronous interaction works best with applications that are
-either multi-threaded, or use a main event-handling loop to receive keystrokes,
-network data, and other asynchronous event notifications as they happen.
-.br
-If you wish to perform DNS Service Discovery operations from a
-scripting language, then the best way to do this is not to execute the
-.Nm
-command and then attempt to decipher the textual output, but instead to
-directly call the DNS-SD APIs using a binding for your chosen language.
-.br
-For example, if you are programming in Ruby, then you can
-directly call DNS-SD APIs using the dnssd package documented at
-.Pa <http://rubyforge.org/projects/dnssd/> .
-.br
-Similar bindings for other languages are also in development.
-.Bl -tag -width E
-.It Nm Fl E
-return a list of domains recommended for registering(advertising) services.
-.It Nm Fl F
-return a list of domains recommended for browsing services.
-.Pp
-Normally, on your home network, the only domain you are likely to see is
-"local".
-However if your network administrator has created Domain Enumeration records,
-then you may also see other recommended domains for registering and browsing.
-.It Nm Fl R Ar name type domain port Op Ar key=value ...
-register (advertise) a service in the specified
-.Ar domain
-with the given
-.Ar name
-and
-.Ar type
-as listening (on the current machine) on
-.Ar port.
-.Pp
-.Ar name
-can be arbitrary unicode text, containing any legal unicode characters
-(including dots, spaces, slashes, colons, etc. without restriction),
-up to 63 UTF-8 bytes long.
-.Ar type
-must be of the form "_app-proto._tcp" or "_app-proto._udp", where
-"app-proto" is an application protocol name registered at
-.Pa http://www.iana.org/assignments/service-names-port-numbers/service-names-port-numbers.xml .
-.Pp
-.Ar domain
-is the domain in which to register the service.
-In current implementations, only the local multicast domain "local" is
-supported.
-In the future, registering will be supported in any arbitrary domain that has a
-working DNS Update server [RFC 2136].
-The
-.Ar domain
-"." is a synonym for "pick a sensible default" which today
-means "local".
-.Pp
-.Ar port
-is a number from 0 to 65535, and is the TCP or UDP port number upon
-which the service is listening.
-.Pp
-Additional attributes of the service may optionally be described by
-key/value pairs, which are stored in the advertised service's DNS TXT
-record.
-Allowable keys and values are listed with the service registration at
-.Pa http://www.iana.org/assignments/service-names-port-numbers/service-names-port-numbers.xml .
-.It Nm Fl B Ar type domain
-browse for instances of service
-.Ar type
-in
-.Ar domain .
-.Pp
-For valid
-.Ar type Ns s
-see
-.Pa http://www.iana.org/assignments/service-names-port-numbers/service-names-port-numbers.xml .
-as described above.
-Omitting the
-.Ar domain
-or using "." means "pick a sensible default."
-.It Nm Fl L Ar name type domain
-look up and display the information necessary to contact and use the
-named service: the hostname of the machine where that service is
-available, the port number on which the service is listening, and (if
-present) TXT record attributes describing properties of the service.
-.Pp
-Note that in a typical application, browsing may only happen rarely, while
-lookup (or "resolving") happens every time the service is used.
-For example, a user browses the network to pick a default printer fairly rarely,
-but once a default printer has been picked, that named service is resolved to
-its current IP address and port number every time the user presses Cmd-P to
-print.
-.It Nm Fl P Ar name type domain port host IP Op Ar key=value ...
-create a proxy advertisement for a service running on(offered by) some other
-machine.
-The two new options are Host, a name for the device and IP, the address of it.
-.Pp
-The service for which you create a proxy advertisement does not necessarily have
-to be on your local network.
-You can set up a local proxy for a website on the Internet.
-.It Nm Fl q Ar name rrtype rrclass
-look up any DNS name, resource record type, and resource record class,
-not necessarily DNS-SD names and record types.
-If rrtype is not specified, it queries for the IPv4 address of the name,
-if rrclass is not specified, IN class is assumed.
-If the name is not a fully qualified domain name, then search domains may be
-appended.
-.It Nm Fl Z Ar type domain
-browse for service instances and display output in zone file format.
-.It Nm Fl G Ns \ v4/v6/v4v6 Ar name
-look up the IP address information of the name.
-If v4 is specified, the IPv4 address of the name is looked up,
-if v6 is specified the IPv6 address is looked up.
-If v4v6 is specified both the IPv4 and IPv6 address is looked up.
-If the name is not a fully qualified domain name, then search domains may be
-appended.
-.It Nm Fl V
-return the version of the currently running daemon/system service.
-.El
-.Sh FILES
-.Pa /usr/bin/dns-sd \" Pathname
-.\"
-.Sh EXAMPLES
-To advertise the existence of LPR printing service on port 515 on this
-machine, such that it will be discovered by the Mac OS X printing software
-and other DNS-SD compatible printing clients, use:
-.Pp
-.Dl Nm Fl R Ns \ \&"My Test\&" _printer._tcp. \&. 515 pdl=application/postscript
-.Pp
-For this registration to be useful, you need to actually have LPR service
-available on port 515.
-Advertising a service that does not exist is not very useful, and will be
-confusing and annoying to other people on the network.
-.Pp
-Similarly, to advertise a web page being served by an HTTP
-server on port 80 on this machine, such that it will show up in the
-Bonjour list in Safari and other DNS-SD compatible Web clients, use:
-.Pp
-.Dl Nm Fl R Ns \ \&"My Test\&" _http._tcp \&. 80 path=/path-to-page.html
-.Pp
-To find the advertised web pages on the local network (the same list that
-Safari shows), use:
-.Pp
-.Dl Nm Fl B Ns \ _http._tcp
-.Pp
-While that command is running, in another window, try the
-.Nm Fl R
-example given above to advertise a web page, and you should see the
-"Add" event reported to the
-.Nm Fl B
-window.
-Now press Ctrl-C in the
-.Nm Fl R
-window and you should see the "Remove" event reported to the
-.Nm Fl B
-window.
-.Pp
-In the example below, the www.apple.com web page is advertised as a service
-called "apple",
-running on a target host called apple.local, which resolves to 17.149.160.49.
-.Pp
-.Dl Nm Fl P Ns \ apple _http._tcp \&"\&"\& 80 apple.local 17.149.160.49
-.Pp
-The Bonjour menu in the Safari web browser will now show "apple".
-The same IP address can be reached by entering apple.local in the web browser.
-In either case, the request will be resolved to the IP address and browser will
-show contents associated with www.apple.com.
-.Pp
-If a client wants to be notified of changes in server state, it can
-initiate a query for the service's particular record and leave it running.
-For example, to monitor the status of an iChat user you can use:
-.Pp
-.Dl Nm Fl q Ns \ someone@ex1._presence._tcp.local txt
-.Pp
-Everytime status of that user(someone) changes, you will see a new TXT record
-result reported.
-.Pp
-You can also query for a unicast name like www.apple.com and monitor its status.
-.Pp
-.Dl Nm Fl q Ns \ www.apple.com
-.Sh INTERFACE STABILITY
-.Sy Volatile .
-.Sh SEE ALSO
-.Xr mdnsd 1M ,
-.Xr ping 1M ,
-.Xr traceroute 1M ,
-.Xr resolv.conf 4
diff --git a/usr/src/man/man1m/domainname.1m b/usr/src/man/man1m/domainname.1m
deleted file mode 100644
index 98f59f378f..0000000000
--- a/usr/src/man/man1m/domainname.1m
+++ /dev/null
@@ -1,112 +0,0 @@
-'\" te
-.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH DOMAINNAME 1M "May 13, 2017"
-.SH NAME
-domainname \- set or display name of the current domain
-.SH SYNOPSIS
-.LP
-.nf
-\fBdomainname\fR [\fIname-of-domain\fR]
-.fi
-
-.SH DESCRIPTION
-.LP
-Without an argument, \fBdomainname\fR displays the name of the current domain
-name used in RPC exchanges, usually referred to as the NIS domain name.
-This name typically encompasses a group of \fBhosts\fR or \fBpasswd\fR entries
-under the same administration. The \fBdomainname\fR command is used by various
-components of Solaris to resolve names for entries such as are found in
-\fBpasswd\fR, \fBhosts\fR and \fBaliases\fR. By default, naming services such
-as \fBNIS\fR use \fBdomainname\fR to resolve names.
-.sp
-.LP
-With appropriate privileges (root or an equivalent role [see \fBrbac\fR(5)]),
-you can set the name of the domain by specifying the name as an argument to the
-\fBdomainname\fR command.
-.sp
-.LP
-The domain name for various naming services can also be set by other means. For
-example, \fBypinit\fR can be used to specify a different domain for all
-\fBNIS\fR calls. The domain name of the machine is usually set during boot time
-through the \fBdomainname\fR command by the \fBsvc:/system/identity:domain\fR
-service. If the new domain name is not saved in the \fB/etc/defaultdomain\fR
-file, the machine reverts to the old domain after it reboots.
-.sp
-.LP
-The \fBsendmail\fR(1M) daemon, as shipped with Solaris, and the \fBsendmail\fR
-implementation provided by \fBsendmail.org\fR (formerly referred to as
-"Berkeley 8.x sendmail") both attempt to determine a local host's fully
-qualified host name at startup and both pursue follow-up actions if the initial
-search fails. It is in these follow-up actions that the two implementations
-differ.
-.sp
-.LP
-Both implementations use a standard Solaris or Unix system call to determine
-its fully qualified host name at startup, following the name service priorities
-specified in \fBnsswitch.conf\fR(4). To this point, the Solaris and
-\fBsendmail.org\fR versions behave identically.
-.sp
-.LP
-If the request for a fully qualified host name fails, the \fBsendmail.org\fR
-\fBsendmail\fR sleeps for 60 seconds, tries again, and, upon continuing
-failure, resorts to a short name. The Solaris version of \fBsendmail\fR makes
-the same initial request, but then, following initial failure, calls
-\fBdomainname\fR. If successful, the sleep is avoided.
-.sp
-.LP
-On a Solaris machine, if you run the \fBsendmail.org\fR version of sendmail,
-you get the startup behavior (omitting the \fBdomainname\fR call) described
-above. If you run the Solaris \fBsendmail\fR, the \fBdomainname\fR call is made
-if needed.
-.sp
-.LP
-If the Solaris \fBsendmail\fR cannot determine the fully qualified host name,
-use \fBcheck-hostname\fR(1M) as a troubleshooting aid. This script can offer
-guidance as to appropriate corrective action.
-.SH FILES
-.ne 2
-.na
-\fB\fB/etc/defaultdomain\fR\fR
-.ad
-.RS 22n
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/nsswitch.conf\fR\fR
-.ad
-.RS 22n
-
-.RE
-
-.SH SEE ALSO
-.LP
-\fBsvcs\fR(1),
-\fBcheck-hostname\fR(1M), \fBhostconfig\fR(1M), \fBnamed\fR(1M),
-\fBsendmail\fR(1M), \fBsvcadm\fR(1M), \fBypinit\fR(1M),
-\fBaliases\fR(4), \fBdefaultdomain\fR(4),
-\fBhosts\fR(4), \fBnsswitch.conf\fR(4), \fBpasswd\fR(4), \fBattributes\fR(5),
-\fBrbac\fR(5), \fBsmf\fR(5)
-.SH NOTES
-.LP
-The \fBdomainname\fR service is managed by the service management facility,
-\fBsmf\fR(5), under the service identifier:
-.sp
-.in +2
-.nf
-svc:/system/identity:domain
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Administrative actions on this service, such as enabling, disabling, or
-requesting restart, can be performed using \fBsvcadm\fR(1M). The service's
-status can be queried using the \fBsvcs\fR(1) command.
diff --git a/usr/src/man/man1m/drd.1m b/usr/src/man/man1m/drd.1m
deleted file mode 100644
index 96b8bedb32..0000000000
--- a/usr/src/man/man1m/drd.1m
+++ /dev/null
@@ -1,72 +0,0 @@
-'\" te
-.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH DRD 1M "Jul 10, 2006"
-.SH NAME
-drd \- Logical Domain Dynamic Reconfiguration daemon
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/ldoms/drd\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBdrd\fR daemon is part of the framework that enables the addition and
-removal of resources from a Logical Domain. This framework is collectively
-called Dynamic Reconfiguration (DR).
-.sp
-.LP
-\fBdrd\fR is responsible for various aspects of DR on a Logical Domain and must
-be enabled to ensure proper DR functionality. It is started at boot time and
-has no configuration options.
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Unstable
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBsvcs\fR(1), \fBsvcadm\fR(1M), \fBsyslog\fR(3C), \fBsyslog.conf\fR(4),
-\fBattributes\fR(5), \fBsmf\fR(5)
-.SH ERRORS
-.sp
-.LP
-\fBdrd\fR uses \fBsyslog\fR(3C) to report status and error messages. All of the
-messages are logged with the \fBLOG_DAEMON\fR facility. Error messages are
-logged with the \fBLOG_ERR\fR and \fBLOG_NOTICE\fR priorities, and
-informational messages are logged with the \fBLOG_INFO\fR priority. The default
-entries in the \fB/etc/syslog.conf\fR file log all the \fBdrd\fR error messages
-to the \fB/var/adm/messages\fR log.
-.SH NOTES
-.sp
-.LP
-The \fBdrd\fR service is managed by the service management facility,
-\fBsmf\fR(5), under the service identifier:
-.sp
-.in +2
-.nf
-svc:/platform/sun4v/drd:default
-.fi
-.in -2
-
-.sp
-.LP
-Administrative actions on this service, such as enabling, disabling, or
-requesting restart, can be performed using \fBsvcadm\fR(1M). The service's
-status can be queried using the \fBsvcs\fR(1) command.
diff --git a/usr/src/man/man1m/drvconfig.1m b/usr/src/man/man1m/drvconfig.1m
deleted file mode 100644
index aafa6948b8..0000000000
--- a/usr/src/man/man1m/drvconfig.1m
+++ /dev/null
@@ -1,168 +0,0 @@
-'\" te
-.\" Copyright (c) 2002 Sun Microsystems, Inc. All
-.\" Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH DRVCONFIG 1M "Aug 9, 2004"
-.SH NAME
-drvconfig \- apply permission and ownership changes to devices
-.SH SYNOPSIS
-.LP
-.nf
-\fBdrvconfig\fR [\fB-bn\fR] [\fB-a\fR \fIalias_name\fR] [\fB-c\fR \fIclass_name\fR]
- [\fB-i\fR \fIdrivername\fR] [\fB-m\fR \fImajor_num\fR] [\fB-r\fR \fIroot_dir\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBdevfsadm\fR(1M) is now the preferred command and should be used instead of
-\fBdrvconfig\fR.
-.sp
-.LP
-The default operation of \fBdrvconfig\fR is to apply permission and ownership
-changes to devices. Normally, this command is run automatically after a new
-driver has been installed (with \fBadd_drv\fR(1M)) and the system has been
-rebooted.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-a\fR\fIalias_name\fR\fR
-.ad
-.RS 16n
-Add the name \fIalias_name\fR to the list of aliases that this driver is known
-by. This option, if used, must be used with the \fB-m\fR \fImajor_num\fR, the
-\fB-b\fR and the \fB-i\fR \fIdrivername\fR options.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-b\fR\fR
-.ad
-.RS 16n
-Add a new major number to name binding into the kernel's internal
-\fBname_to_major\fR tables. This option is not normally used directly, but is
-used by other utilities such as \fBadd_drv\fR(1M). Use of the \fB-b\fR option
-requires that \fB-i\fR and \fB-m\fR be used also. No \fB/devices\fR entries are
-created.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-c\fR\fIclass_name\fR\fR
-.ad
-.RS 16n
-The driver being added to the system exports the class \fIclass_name\fR. This
-option is not normally used directly, but is used by other utilities. It is
-only effective when used with the \fB-b\fR option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-i\fR\fIdrivername\fR\fR
-.ad
-.RS 16n
-Only configure the devices for the named driver. The following options are used
-by the implementation of \fBadd_drv\fR(1M) and \fBrem_drv\fR(1M), and may not
-be supported in future versions of Solaris:
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-m\fR\fImajor_num\fR\fR
-.ad
-.RS 16n
-Specify the major number \fImajor_num\fR for this driver to add to the kernel's
-\fBname_to_major\fR binding tables.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR\fR
-.ad
-.RS 16n
-Do not try to load and attach any drivers, or if the \fB-i\fR option is given,
-do not try to attach the driver named \fIdrivername\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-r\fR\fIroot_dir\fR\fR
-.ad
-.RS 16n
-Perform operations under \fIroot_dir\fR, rather than directly under \fBroot\fR.
-.RE
-
-.SH EXIT STATUS
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 12n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fBnon-zero\fR
-.ad
-.RS 12n
-An error occurred.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/devices\fR\fR
-.ad
-.RS 23n
-Device nodes directory
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/minor_perm\fR\fR
-.ad
-.RS 23n
-Minor mode permissions
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/name_to_major\fR\fR
-.ad
-.RS 23n
-Major number binding
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/driver_classes\fR\fR
-.ad
-.RS 23n
-Driver class binding file
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBsh\fR(1), \fBadd_drv\fR(1M), \fBmodinfo\fR(1M), \fBmodload\fR(1M),
-\fBmodunload\fR(1M), \fBrem_drv\fR(1M), \fBupdate_drv\fR(1M),
-\fBpath_to_inst\fR(4), \fBattributes\fR(5), \fBdevfs\fR(7FS)
diff --git a/usr/src/man/man1m/dtrace.1m b/usr/src/man/man1m/dtrace.1m
deleted file mode 100644
index 2a51cbaa68..0000000000
--- a/usr/src/man/man1m/dtrace.1m
+++ /dev/null
@@ -1,765 +0,0 @@
-'\" te
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH DTRACE 1M "Dec 10, 2017"
-.SH NAME
-dtrace \- DTrace dynamic tracing compiler and tracing utility
-.SH SYNOPSIS
-.LP
-.nf
-\fBdtrace\fR [\fB-32\fR | \fB-64\fR] [\fB-aACeFGHhlqSvVwZ\fR] [\fB-b\fR \fIbufsz\fR] [\fB-c\fR \fIcmd\fR]
- [\fB-D\fR \fIname\fR [\fI=value\fR]] [\fB-I\fR \fIpath\fR] [\fB-L\fR \fIpath\fR] [\fB-o\fR \fIoutput\fR]
- [\fB-s\fR \fIscript\fR] [\fB-U\fR \fIname\fR] [\fB-x\fR \fIarg\fR [\fI=val\fR]]
- [\fB-X\fR a | c | s | t] [\fB-p\fR \fIpid\fR]
- [\fB-P\fR \fIprovider\fR [[\fIpredicate\fR] \fIaction\fR]]
- [\fB-m\fR [\fIprovider:\fR] \fImodule\fR [[\fIpredicate\fR] \fIaction\fR]]
- [\fB-f\fR [[\fIprovider:\fR] \fImodule:\fR] \fIfunction\fR [[\fIpredicate\fR] \fIaction\fR]]
- [\fB-n\fR [[[\fIprovider:\fR] \fImodule:\fR] \fIfunction:\fR] \fIname\fR [[\fIpredicate\fR] \fIaction\fR]]
- [\fB-i\fR \fIprobe-id\fR [[\fIpredicate\fR] \fIaction\fR]]
-.fi
-
-.SH DESCRIPTION
-.LP
-DTrace is a comprehensive dynamic tracing framework.
-DTrace provides a powerful infrastructure that permits administrators,
-developers, and service personnel to concisely answer arbitrary questions about
-the behavior of the operating system and user programs.
-.sp
-.LP
-The \fIDynamic Tracing Guide\fR describes how to use DTrace to observe,
-debug, and tune system behavior. Refer to this book for a detailed description
-of DTrace features, including the bundled DTrace observability tools,
-instrumentation providers, and the D programming language.
-.sp
-.LP
-The \fBdtrace\fR command provides a generic interface to the essential services
-provided by the DTrace facility, including:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Options that list the set of probes and providers currently published by DTrace
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Options that enable probes directly using any of the probe description
-specifiers (provider, module, function, name)
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Options that run the D compiler and compile one or more D program files or
-programs written directly on the command line
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Options that generate anonymous tracing programs
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Options that generate program stability reports
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Options that modify DTrace tracing and buffering behavior and enable additional
-D compiler features
-.RE
-.sp
-.LP
-You can use \fBdtrace\fR to create D scripts by using it in a \fB#!\fR
-declaration to create an interpreter file. You can also use \fBdtrace\fR to
-attempt to compile D programs and determine their properties without actually
-enabling tracing using the \fB-e\fR option. See \fBOPTIONS\fR. See the
-\fIDynamic Tracing Guide\fR for detailed examples of how to use the
-\fBdtrace\fR utility to perform these tasks.
-.SH OPTIONS
-.LP
-The arguments accepted by the \fB-P\fR, \fB-m\fR, \fB-f\fR, \fB-n\fR, and
-\fB-i\fR options can include an optional D language \fIpredicate\fR enclosed in
-slashes \fB//\fR and optional D language \fIaction\fR statement list enclosed
-in braces \fB{}\fR. D program code specified on the command line must be
-appropriately quoted to avoid interpretation of meta-characters by the shell.
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-32\fR | \fB-64\fR\fR
-.ad
-.sp .6
-.RS 4n
-The D compiler produces programs using the native data model of the operating
-system kernel. You can use the \fBisainfo\fR \fB-b\fR command to determine the
-current operating system data model. If the \fB-32\fR option is specified,
-\fBdtrace\fR forces the D compiler to compile a D program using the 32-bit data
-model. If the \fB-64\fR option is specified, \fBdtrace\fR forces the D compiler
-to compile a D program using the 64-bit data model. These options are typically
-not required as \fBdtrace\fR selects the native data model as the default. The
-data model affects the sizes of integer types and other language properties. D
-programs compiled for either data model can be executed on both 32-bit and
-64-bit kernels. The \fB-32\fR and \fB-64\fR options also determine the ELF file
-format (ELF32 or ELF64) produced by the \fB-G\fR option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-a\fR\fR
-.ad
-.sp .6
-.RS 4n
-Claim anonymous tracing state and display the traced data. You can combine the
-\fB-a\fR option with the \fB-e\fR option to force \fBdtrace\fR to exit
-immediately after consuming the anonymous tracing state rather than continuing
-to wait for new data. See the \fIDynamic Tracing Guide\fR for more
-information about anonymous tracing.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-A\fR\fR
-.ad
-.sp .6
-.RS 4n
-Generate \fBdriver.conf\fR(4) directives for anonymous tracing. This option
-constructs a set of \fBdtrace\fR(7D) configuration file directives to enable
-the specified probes for anonymous tracing and then exits. By default,
-\fBdtrace\fR attempts to store the directives to the file
-\fB/kernel/drv/dtrace.conf\fR. You can modify this behavior if you use the
-\fB-o\fR option to specify an alternate output file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-b\fR \fIbufsz\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set principal trace buffer size (\fIbufsz\fR). The trace buffer size can
-include any of the size suffixes \fBk\fR, \fBm\fR, \fBg\fR, or \fBt\fR. If the
-buffer space cannot be allocated, \fBdtrace\fR attempts to reduce the buffer
-size or exit depending on the setting of the \fBbufresize\fR property.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-c\fR \fIcmd\fR\fR
-.ad
-.sp .6
-.RS 4n
-Run the specified command \fIcmd\fR and exit upon its completion. If more than
-one \fB-c\fR option is present on the command line, \fBdtrace\fR exits when all
-commands have exited, reporting the exit status for each child process as it
-terminates. The process-ID of the first command is made available to any D
-programs specified on the command line or using the \fB-s\fR option through the
-\fB$target\fR macro variable. Refer to the \fIDynamic Tracing Guide\fR
-for more information on macro variables.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-C\fR\fR
-.ad
-.sp .6
-.RS 4n
-Run the C preprocessor \fBcpp\fR(1) over D programs before compiling them. You
-can pass options to the C preprocessor using the \fB-D\fR, \fB-U\fR, \fB-I\fR,
-and \fB-H\fR options. You can select the degree of C standard conformance if
-you use the \fB-X\fR option. For a description of the set of tokens defined by
-the D compiler when invoking the C preprocessor, see \fB-X\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-D\fR \fIname\fR \fB[=\fR\fIvalue\fR\fB]\fR\fR
-.ad
-.sp .6
-.RS 4n
-Define \fIname\fR when invoking \fBcpp\fR(1) (enabled using the \fB-C\fR
-option). If you specify the equals sign (\fB=\fR) and additional \fIvalue\fR,
-the name is assigned the corresponding value. This option passes the \fB-D\fR
-option to each \fBcpp\fR invocation.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-e\fR\fR
-.ad
-.sp .6
-.RS 4n
-Exit after compiling any requests and consuming anonymous tracing state
-(\fB-a\fR option) but prior to enabling any probes. You can combine this option
-with the \fB-a\fR option to print anonymous tracing data and exit. You can also
-combine this option with D compiler options. This combination verifies that the
-programs compile without actually executing them and enabling the corresponding
-instrumentation.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR\fB[[\fR\fIprovider\fR\fB:]\fR\fImodule\fR\fB:]\fR\fIfunction\fR\fB[
-[\fR\fIpredicate\fR\fB]\fR\fIaction\fR\fB]]\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify function name to trace or list (\fB-l\fR option). The corresponding
-argument can include any of the probe description forms
-\fIprovider:module:function\fR, \fImodule:function\fR, or \fIfunction\fR.
-Unspecified probe description fields are left blank and match any probes
-regardless of the values in those fields. If no qualifiers other than
-\fIfunction\fR are specified in the description, all probes with the
-corresponding \fIfunction\fR are matched. The \fB-f\fR argument can be suffixed
-with an optional D probe clause. You can specify more than one \fB-f\fR option
-on the command line at a time.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-F\fR\fR
-.ad
-.sp .6
-.RS 4n
-Coalesce trace output by identifying function entry and return. Function entry
-probe reports are indented and their output is prefixed with \fB->\fR. Function
-return probe reports are unindented and their output is prefixed with
-\fB<-\fR\&. System call entry probe reports are indented and their output is
-prefixed with \fB=>\fR. System call return probe reports are unindented and
-their output is prefixed with \fB<=\fR\&.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-G\fR\fR
-.ad
-.sp .6
-.RS 4n
-Generate an ELF file containing an embedded DTrace program. The DTrace probes
-specified in the program are saved inside of a relocatable ELF object which can
-be linked into another program. If the \fB-o\fR option is present, the ELF file
-is saved using the pathname specified as the argument for this operand. If the
-\fB-o\fR option is not present and the DTrace program is contained with a file
-whose name is \fB\fIfilename\fR.d\fR, then the ELF file is saved using the name
-\fB\fIfilename\fR.o\fR. Otherwise the ELF file is saved using the name
-\fBd.out\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-H\fR\fR
-.ad
-.sp .6
-.RS 4n
-Print the pathnames of included files when invoking \fBcpp\fR(1) (enabled using
-the \fB-C\fR option). This option passes the \fB-H\fR option to each \fBcpp\fR
-invocation, causing it to display the list of pathnames, one for each line, to
-\fBstderr\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-h\fR\fR
-.ad
-.sp .6
-.RS 4n
-Generate a header file containing macros that correspond to probes in the
-specified provider definitions. This option should be used to generate a header
-file that is included by other source files for later use with the \fB-G\fR
-option. If the \fB-o\fR option is present, the header file is saved using the
-pathname specified as the argument for that option. If the \fB-o\fR option is
-not present and the DTrace program is contained with a file whose name is
-\fIfilename\fR\fB\&.d\fR, then the header file is saved using the name
-\fIfilename\fR\fB\&.h\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-i\fR \fIprobe-id\fR\fB[[\fR\fIpredicate\fR] \fIaction\fR\fB]\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify probe identifier (\fIprobe-id\fR) to trace or list (\fB-l\fR option).
-You can specify probe IDs using decimal integers as shown by \fBdtrace\fR
-\fB-l\fR. The \fB-i\fR argument can be suffixed with an optional D probe
-clause. You can specify more than one \fB-i\fR option at a time.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-I\fR \fIpath\fR\fR
-.ad
-.sp .6
-.RS 4n
-Add the specified directory \fIpath\fR to the search path for \fB#include\fR
-files when invoking \fBcpp\fR(1) (enabled using the \fB-C\fR option). This
-option passes the \fB-I\fR option to each \fBcpp\fR invocation. The specified
-\fIpath\fR is inserted into the search path ahead of the default directory
-list.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-L\fR \fIpath\fR\fR
-.ad
-.sp .6
-.RS 4n
-Add the specified directory \fIpath\fR to the search path for DTrace libraries.
-DTrace libraries are used to contain common definitions that can be used when
-writing D programs. The specified \fIpath\fR is added after the default library
-search path.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR\fR
-.ad
-.sp .6
-.RS 4n
-List probes instead of enabling them. If the \fB-l\fR option is specified,
-\fBdtrace\fR produces a report of the probes matching the descriptions given
-using the \fB-P\fR, \fB-m\fR, \fB-f\fR, \fB-n\fR, \fB-i\fR, and \fB-s\fR
-options. If none of these options are specified, this option lists all probes.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-m\fR [[\fIprovider:\fR] \fImodule:\fR [[\fIpredicate\fR]
-\fIaction\fR]]\fR
-.ad
-.sp .6
-.RS 4n
-Specify module name to trace or list (\fB-l\fR option). The corresponding
-argument can include any of the probe description forms \fIprovider:module\fR
-or \fImodule\fR. Unspecified probe description fields are left blank and match
-any probes regardless of the values in those fields. If no qualifiers other
-than \fImodule\fR are specified in the description, all probes with a
-corresponding \fImodule\fR are matched. The \fB-m\fR argument can be suffixed
-with an optional D probe clause. More than one \fB-m\fR option can be specified
-on the command line at a time.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR [[[\fIprovider:\fR] \fImodule:\fR] \fIfunction:\fR] \fIname\fR
-[[\fIpredicate\fR] \fIaction\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Specify probe name to trace or list (\fB-l\fR option). The corresponding
-argument can include any of the probe description forms
-\fIprovider:module:function:name\fR, \fImodule:function:name\fR,
-\fIfunction:name\fR, or \fIname\fR. Unspecified probe description fields are
-left blank and match any probes regardless of the values in those fields. If no
-qualifiers other than \fIname\fR are specified in the description, all probes
-with a corresponding \fIname\fR are matched. The \fB-n\fR argument can be
-suffixed with an optional D probe clause. More than one \fB-n\fR option can be
-specified on the command line at a time.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-o\fR \fIoutput\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify the \fIoutput\fR file for the \fB-A\fR, \fB-G\fR, \fB-h\fR, and
-\fB-l\fR options, or for the traced data itself. If the \fB-A\fR option is
-present and \fB-o\fR is not present, the default output file is
-\fB/kernel/drv/dtrace.conf\fR. If the \fB-G\fR option is present and the
-\fB-s\fR option's argument is of the form \fB\fIfilename\fR.d\fR and \fB-o\fR
-is not present, the default output file is \fB\fIfilename\fR.o\fR. Otherwise
-the default output file is \fBd.out\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR \fIpid\fR\fR
-.ad
-.sp .6
-.RS 4n
-Grab the specified process-ID \fIpid\fR, cache its symbol tables, and exit upon
-its completion. If more than one \fB-p\fR option is present on the command
-line, \fBdtrace\fR exits when all commands have exited, reporting the exit
-status for each process as it terminates. The first process-ID is made
-available to any D programs specified on the command line or using the \fB-s\fR
-option through the \fB$target\fR macro variable. Refer to the \fIDynamic
-Tracing Guide\fR for more information on macro variables.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-P\fR \fIprovider\fR \fB[[\fR\fIpredicate\fR\fB]\fR \fIaction\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Specify provider name to trace or list (\fB-l\fR option). The remaining probe
-description fields module, function, and name are left blank and match any
-probes regardless of the values in those fields. The \fB-P\fR argument can be
-suffixed with an optional D probe clause. You can specify more than one
-\fB-P\fR option on the command line at a time.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-q\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set quiet mode. \fBdtrace\fR suppresses messages such as the number of probes
-matched by the specified options and D programs and does not print column
-headers, the CPU ID, the probe ID, or insert newlines into the output. Only
-data traced and formatted by D program statements such as \fBtrace()\fR and
-\fBprintf()\fR is displayed to \fBstdout\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR\fR
-.ad
-.sp .6
-.RS 4n
-Compile the specified D program source file. If the \fB-e\fR option is present,
-the program is compiled but instrumentation is not enabled. If the \fB-l\fR
-option is present, the program is compiled and the set of probes matched by it
-is listed, but instrumentation is not enabled. If none of \fB-e\fR, \fB-l\fR,
-\fB-G\fR, or \fB-A\fR are present, the instrumentation specified by the D
-program is enabled and tracing begins.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-S\fR\fR
-.ad
-.sp .6
-.RS 4n
-Show D compiler intermediate code. The D compiler produces a report of the
-intermediate code generated for each D program to \fBstderr\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-U\fR \fIname\fR\fR
-.ad
-.sp .6
-.RS 4n
-Undefine the specified \fIname\fR when invoking \fBcpp\fR(1) (enabled using the
-\fB-C\fR option). This option passes the \fB-U\fR option to each \fBcpp\fR
-invocation.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set verbose mode. If the \fB-v\fR option is specified, \fBdtrace\fR produces a
-program stability report showing the minimum interface stability and dependency
-level for the specified D programs. DTrace stability levels are explained in
-further detail in the \fIDynamic Tracing Guide\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-V\fR\fR
-.ad
-.sp .6
-.RS 4n
-Report the highest D programming interface version supported by \fBdtrace\fR.
-The version information is printed to \fBstdout\fR and the \fBdtrace\fR command
-exits. Refer to the \fIDynamic Tracing Guide\fR for more information
-about DTrace versioning features.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-w\fR\fR
-.ad
-.sp .6
-.RS 4n
-Permit destructive actions in D programs specified using the \fB-s\fR,
-\fB-P\fR, \fB-m\fR, \fB-f\fR, \fB-n\fR, or \fB-i\fR options. If the \fB-w\fR
-option is not specified, \fBdtrace\fR does not permit the compilation or
-enabling of a D program that contains destructive actions.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-x\fR \fIarg\fR [\fI=val\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Enable or modify a DTrace runtime option or D compiler option. The list of
-options is found in the \fIDynamic Tracing Guide\fR. Boolean options
-are enabled by specifying their name. Options with values are set by separating
-the option name and value with an equals sign (\fB=\fR).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-X\fR \fBa | c | s | t\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify the degree of conformance to the ISO C standard that should be selected
-when invoking \fBcpp\fR(1) (enabled using the \fB-C\fR option). The \fB-X\fR
-option argument affects the value and presence of the \fB__STDC__\fR macro
-depending upon the value of the argument letter.
-.sp
-The \fB-X\fR option supports the following arguments:
-.sp
-.ne 2
-.na
-\fB\fBa\fR\fR
-.ad
-.RS 5n
-Default. ISO C plus K&R compatibility extensions, with semantic changes
-required by ISO C. This is the default mode if \fB-X\fR is not specified. The
-predefined macro \fB__STDC__\fR has a value of 0 when \fBcpp\fR is invoked in
-conjunction with the \fB-Xa\fR option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBc\fR\fR
-.ad
-.RS 5n
-Conformance. Strictly conformant ISO C, without K&R C compatibility extensions.
-The predefined macro \fB__STDC__\fR has a value of 1 when \fBcpp\fR is invoked
-in conjunction with the \fB-Xc\fR option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBs\fR\fR
-.ad
-.RS 5n
-K&R C only. The macro \fB__STDC__\fR is not defined when \fBcpp\fR is invoked
-in conjunction with the \fB-Xs\fR option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBt\fR\fR
-.ad
-.RS 5n
-Transition. ISO C plus K&R C compatibility extensions, without semantic changes
-required by ISO C. The predefined macro \fB__STDC__\fR has a value of 0 when
-\fBcpp\fR is invoked in conjunction with the \fB-Xt\fR option.
-.RE
-
-As the \fB-X\fR option only affects how the D compiler invokes the C
-preprocessor, the \fB-Xa\fR and \fB-Xt\fR options are equivalent from the
-perspective of D and both are provided only to ease re-use of settings from a C
-build environment.
-.sp
-Regardless of the \fB-X\fR mode, the following additional C preprocessor
-definitions are always specified and valid in all modes:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fB__sun\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fB__unix\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fB__SVR4\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fB__sparc\fR (on SPARC systems only)
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fB__sparcv9\fR (on SPARC systems only when 64-bit programs are compiled)
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fB__i386\fR (on x86 systems only when 32-bit programs are compiled)
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fB__amd64\fR (on x86 systems only when 64-bit programs are compiled)
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fB__\fI`uname -s`\fR_\fI`uname -r`\fR\fR (for example, \fB__SunOS_5_10\fR)
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fB__SUNW_D=1\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fB__SUNW_D_VERSION=0x\fIMMmmmuuu\fR\fR
-.sp
-Where \fIMM\fR is the major release value in hexadecimal, \fImmm\fR is the
-minor release value in hexadecimal, and \fIuuu\fR is the micro release value in
-hexadecimal. Refer to the \fIDynamic Tracing Guide\fR for more
-information about DTrace versioning.
-.RE
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-Z\fR\fR
-.ad
-.sp .6
-.RS 4n
-Permit probe descriptions that match zero probes. If the \fB-Z\fR option is not
-specified, \fBdtrace\fR reports an error and exits if any probe descriptions
-specified in D program files (\fB-s\fR option) or on the command line
-(\fB-P\fR, \fB-m\fR, \fB-f\fR, \fB-n\fR, or \fB-i\fR options) contain
-descriptions that do not match any known probes.
-.RE
-
-.SH OPERANDS
-.LP
-You can specify zero or more additional arguments on the \fBdtrace\fR command
-line to define a set of macro variables (\fB$1\fR, \fB$2\fR, and so forth). The
-additional arguments can be used in D programs specified using the \fB-s\fR
-option or on the command line. The use of macro variables is described further
-in the \fIDynamic Tracing Guide\fR.
-.SH EXIT STATUS
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB0\fR
-.ad
-.RS 5n
-Successful completion.
-.sp
-For D program requests, an exit status of \fB0\fR indicates that programs were
-successfully compiled, probes were successfully enabled, or anonymous state was
-successfully retrieved. \fBdtrace\fR returns \fB0\fR even if the specified
-tracing requests encountered errors or drops.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB1\fR\fR
-.ad
-.RS 5n
-An error occurred.
-.sp
-For D program requests, an exit status of \fB1\fR indicates that program
-compilation failed or that the specified request could not be satisfied.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB2\fR\fR
-.ad
-.RS 5n
-Invalid command line options or arguments were specified.
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability See below.
-.TE
-
-.sp
-.LP
-The command-line syntax is Committed. The human-readable output is Uncommitted.
-.SH SEE ALSO
-.LP
-\fBcpp\fR(1), \fBisainfo\fR(1), \fBssh\fR(1), \fBlibdtrace\fR(3LIB),
-\fBdriver.conf\fR(4), \fBattributes\fR(5), \fBdtrace\fR(7D)
-.sp
-.LP
-\fIDynamic Tracing Guide\fR:
-.sp
-.LP
-https://illumos.org/books/dtrace/
-
-.SH NOTES
-.LP
-When using the \fB-p\fR flag, \fBdtrace\fR stops the target processes while it
-is inspecting them and reporting results. A process can do nothing while it is
-stopped. This means that, if, for example, the X server is inspected by
-\fBdtrace\fR running in a window under the X server's control, the whole window
-system can become deadlocked, because the \fBproc\fR tool would be attempting
-to display its results to a window that cannot be refreshed. In such a case,
-logging in from another system using \fBssh\fR(1) and killing the offending
-\fBproc\fR tool clears the deadlock.
diff --git a/usr/src/man/man1m/dumpadm.1m b/usr/src/man/man1m/dumpadm.1m
deleted file mode 100644
index 86f7285487..0000000000
--- a/usr/src/man/man1m/dumpadm.1m
+++ /dev/null
@@ -1,524 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 2015 Nexenta Systems, Inc. All Rights Reserved.
-.\" Copyright (c) 2013 by Delphix. All rights reserved.
-.\" Copyright 2019 Joyent, Inc.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH DUMPADM 1M "Jun 15, 2019"
-.SH NAME
-dumpadm \- configure operating system crash dump
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/dumpadm\fR [\fB-enuy\fR] [\fB-c\fR \fIcontent-type\fR] [\fB-d\fR \fIdump-device\fR]
- [\fB-k\fR \fIkey-file\fR] [\fB-m\fR \fImin\fRk | \fImin\fRm | \fImin\fR%] [\fB-s\fR \fIsavecore-dir\fR]
- [\fB-r\fR \fIroot-dir\fR] [\fB-z\fR on | off]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBdumpadm\fR program is an administrative command that manages the
-configuration of the operating system crash dump facility. A crash dump is a
-disk copy of the physical memory of the computer at the time of a fatal system
-error. When a fatal operating system error occurs, a message describing the
-error is printed to the console. The operating system then generates a crash
-dump by writing the contents of physical memory to a predetermined dump device,
-which is typically a local disk partition. The dump device can be configured by
-way of \fBdumpadm\fR. Once the crash dump has been written to the dump device,
-the system will reboot.
-.sp
-.LP
-Fatal operating system errors can be caused by bugs in the operating system,
-its associated device drivers and loadable modules, or by faulty hardware.
-Whatever the cause, the crash dump itself provides invaluable information to
-your support engineer to aid in diagnosing the problem. As such, it is vital
-that the crash dump be retrieved and given to your support provider. Following
-an operating system crash, the \fBsavecore\fR(1M) utility is executed
-automatically during boot to retrieve the crash dump from the dump device, and
-write it to the file system. The directory in which the crash
-dump is saved on reboot can also be configured using \fBdumpadm\fR.
-.sp
-.LP
-A crash dump is always compressed on the dump device. The dump is decompressed
-by the \fBsavecore\fR(1M) utility, which can optionally store the dump in its
-compressed state, thereby deferring decompression to a subsequent invocation
-of \fBsavecore\fR. This behavior is controlled by the \fB-z\fR option.
-When compression is turned on, the \fBsavecore\fR(1M) utility writes one file
-to the file system named \fIvmdump.X\fR. If compression is disabled, it instead
-writes two files named \fIunix.X\fR and \fIvmcore.X\fR. In the uncompressed
-case, both data files form the \fIsaved crash dump\fR. In both cases X is an
-integer identifying the dump.
-.sp
-.LP
-Crash dump encryption may be optionally enabled via the \fB-k\fR option, which
-specifies a file that contains an encryption key. When crash dump encryption
-is enabled, the contents of kernel memory as stored in the dump device will be
-encrypted. Decryption of a kernel crash dump must occur when the dump is
-extracted via \fBsavecore\fR (to which the encryption key must be separately
-provided). Decompression can only occur on a decrypted dump; when dump
-encryption is enabled, \fBsavecore\fR must store the dump in its compressed
-state. Note that \fBsavecore\fR cannot extract an encrypted dump without also
-decrypting it; when dump encryption is enabled, the operator should be sure
-to only operate \fBsavecore\fR on a directory that is separately encrypted
-or otherwise secured. Finally, note that \fBdumpadm\fR does not store the
-crash dump encryption key persistently: upon system reset, crash dump
-encryption is always disabled.
-.sp
-.LP
-For systems with a UFS root file system, the default dump device is configured
-to be an appropriate swap partition. Swap partitions are disk partitions
-reserved as virtual memory backing store for the operating system. Thus, no
-permanent information resides in swap to be overwritten by the dump. See
-\fBswap\fR(1M). For systems with a ZFS root file system, dedicated ZFS volumes
-are used for swap and dump areas. For further information about setting up a
-dump area with ZFS, see the \fIZFS Administration Guide\fR. To view the
-current dump configuration, use the \fBdumpadm\fR command with no arguments:
-.sp
-.in +2
-.nf
-example# \fBdumpadm\fR
-
- Dump content: kernel pages
- Dump device: /dev/dsk/c0t0d0s1 (swap)
-Savecore directory: /var/crash/saturn
- Savecore enabled: yes
- Save compressed: on
- Dump encrypted: no
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-When no options are specified, \fBdumpadm\fR prints the current crash dump
-configuration. The example shows the set of default values: the dump content is
-set to kernel memory pages only, the dump device is a swap disk partition, the
-directory for \fBsavecore\fR files is set to
-\fB/var/crash/\fR\fIhostname\fR\fB,\fR \fBsavecore\fR is set to run
-automatically on reboot, and compression is turned on.
-.sp
-.LP
-When one or more options are specified, \fBdumpadm\fR verifies that your
-changes are valid, and if so, reconfigures the crash dump parameters and
-displays the resulting configuration. You must be \fBroot\fR to view or change
-dump parameters.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-c\fR \fIcontent-type\fR\fR
-.ad
-.sp .6
-.RS 4n
-Modify the dump configuration so that the crash dump consists of the specified
-dump content. The content should be one of the following:
-.sp
-.ne 2
-.na
-\fB\fBkernel\fR\fR
-.ad
-.sp .6
-.RS 4n
-Kernel memory pages only.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBall\fR\fR
-.ad
-.sp .6
-.RS 4n
-All memory pages.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcurproc\fR\fR
-.ad
-.sp .6
-.RS 4n
-Kernel memory pages, and the memory pages of the process whose thread was
-currently executing on the CPU on which the crash dump was initiated. If the
-thread executing on that CPU is a kernel thread not associated with any user
-process, only kernel pages will be dumped.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-d\fR \fIdump-device\fR\fR
-.ad
-.sp .6
-.RS 4n
-Modify the dump configuration to use the specified dump device. The dump device
-may be one of the following:
-.sp
-.ne 2
-.na
-\fB\fIdump-device\fR\fR
-.ad
-.sp .6
-.RS 4n
-A specific dump device specified as an absolute pathname, such as
-\fB/dev/dsk/\fR\fIcNtNdNsN\fR when the system is running a UFS root file
-system. Or, specify a ZFS volume, such as \fB/dev/zvol/dsk/rpool/dump\fR, when
-the system is running a ZFS root file system.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBswap\fR\fR
-.ad
-.sp .6
-.RS 4n
-If the special token \fBswap\fR is specified as the dump device, \fBdumpadm\fR
-examines the active swap entries and selects the most appropriate entry to
-configure as the dump device. See \fBswap\fR(1M). Refer to the \fBNOTES\fR
-below for details of the algorithm used to select an appropriate swap entry.
-When the system is first installed with a UFS root file system, \fBdumpadm\fR
-uses the value for \fBswap\fR to determine the initial dump device setting. A
-given ZFS volume cannot be configured for both the swap area and the dump
-device.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnone\fR\fR
-.ad
-.sp .6
-.RS 4n
-If the special token \fBnone\fR is specified, the active dump device is removed
-and crash dumps are disabled.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-e\fR\fR
-.ad
-.sp .6
-.RS 4n
-Estimates the size of the dump for the current running system.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-k\fR \fIkey-file\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies that the dump should be encrypted based on the key found in
-\fIkey-file\fR. Note that any invocations of \fBsavecore\fR will need to
-specify the same key to be able to correctly retrieve the dump.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-m\fR \fImin\fR\fBk\fR | \fImin\fR\fBm\fR | \fImin\fR\fB%\fR\fR
-.ad
-.sp .6
-.RS 4n
-Create a \fBminfree\fR file in the current savecore directory indicating that
-\fBsavecore\fR should maintain at least the specified amount of free space in
-the file system where the savecore directory is located. The \fBmin\fR argument
-can be one of the following:
-.sp
-.ne 2
-.na
-\fB\fBk\fR\fR
-.ad
-.sp .6
-.RS 4n
-A positive integer suffixed with the unit \fBk\fR specifying kilobytes.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBm\fR\fR
-.ad
-.sp .6
-.RS 4n
-A positive integer suffixed with the unit \fBm\fR specifying megabytes.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB%\fR\fR
-.ad
-.sp .6
-.RS 4n
-A % symbol, indicating that the \fBminfree\fR value should be computed as the
-specified percentage of the total current size of the file system containing
-the savecore directory.
-.RE
-
-The \fBsavecore\fR command will consult the \fBminfree\fR file, if present,
-prior to writing the dump files. If the size of these files would decrease the
-amount of free disk space below the \fBminfree\fR threshold, no dump files are
-written and an error message is logged. The administrator should immediately
-clean up the savecore directory to provide adequate free space, and re-execute
-the \fBsavecore\fR command manually. The administrator can also specify an
-alternate directory on the \fBsavecore\fR command-line.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR\fR
-.ad
-.sp .6
-.RS 4n
-Modify the dump configuration to not run \fBsavecore\fR automatically on
-reboot. This is not the recommended system configuration; if the dump device is
-a swap partition, the dump data will be overwritten as the system begins to
-swap. If \fBsavecore\fR is not executed shortly after boot, crash dump
-retrieval may not be possible.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-r\fR \fIroot-dir\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify an alternate root directory relative to which \fBdumpadm\fR should
-create files. If no \fB-r\fR argument is specified, the default root directory
-\fB/\fR is used.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR \fIsavecore-dir\fR\fR
-.ad
-.sp .6
-.RS 4n
-Modify the dump configuration to use the specified directory to save files
-written by \fBsavecore\fR. The directory should be an absolute path and exist
-on the system. If upon reboot the directory does not exist, it will be created
-prior to the execution of \fBsavecore\fR. See the \fBNOTES\fR section below for
-a discussion of security issues relating to access to the savecore directory.
-The default savecore directory is \fB/var/crash/\fIhostname\fR\fR where
-\fIhostname\fR is the output of the \fB-n\fR option to the \fBuname\fR(1)
-command.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-u\fR\fR
-.ad
-.sp .6
-.RS 4n
-Forcibly update the kernel dump configuration based on the contents of
-\fB/etc/dumpadm.conf\fR. Normally this option is used only on reboot when
-starting \fBsvc:/system/dumpadm:default\fR, when the \fBdumpadm\fR settings
-from the previous boot must be restored. Your dump configuration is saved in
-the configuration file for this purpose. If the configuration file is missing
-or contains invalid values for any dump properties, the default values are
-substituted. Following the update, the configuration file is resynchronized
-with the kernel dump configuration.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-y\fR\fR
-.ad
-.sp .6
-.RS 4n
-Modify the dump configuration to automatically run \fBsavecore\fR on reboot.
-This is the default for this dump setting.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-z on | off\fR\fR
-.ad
-.sp .6
-.RS 4n
-Turns crash dump compression \fBon\fR or \fBoff\fR.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRReconfiguring The Dump Device To A Dedicated Dump Device:
-.sp
-.LP
-The following command reconfigures the dump device to a dedicated dump device:
-
-.sp
-.in +2
-.nf
-example# dumpadm -d /dev/dsk/c0t2d0s2
-
- Dump content: kernel pages
- Dump device: /dev/dsk/c0t2d0s2 (dedicated)
- Savecore directory: /var/crash/saturn
- Savecore enabled: yes
- Save compressed: on
- Dump encrypted: no
-.fi
-.in -2
-.sp
-
-.SH EXIT STATUS
-.sp
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.sp .6
-.RS 4n
-Dump configuration is valid and the specified modifications, if any, were made
-successfully.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB1\fR\fR
-.ad
-.sp .6
-.RS 4n
-A fatal error occurred in either obtaining or modifying the dump configuration.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB2\fR\fR
-.ad
-.sp .6
-.RS 4n
-Invalid command line options were specified.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/dev/dump\fR\fR
-.ad
-.sp .6
-.RS 4n
-Dump device.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/dumpadm.conf\fR\fR
-.ad
-.sp .6
-.RS 4n
-Contains configuration parameters for \fBdumpadm\fR. Modifiable only through
-that command.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIsavecore-directory\fR\fB/minfree\fR\fR
-.ad
-.sp .6
-.RS 4n
-Contains minimum amount of free space for \fIsavecore-directory\fR. See
-\fBsavecore\fR(1M).
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBsvcs\fR(1), \fBuname\fR(1), \fBsavecore\fR(1M), \fBsvcadm\fR(1M),
-\fBswap\fR(1M), \fBattributes\fR(5), \fBsmf\fR(5)
-.SH NOTES
-.sp
-.LP
-The system crash dump service is managed by the service management facility,
-\fBsmf\fR(5), under the service identifier:
-.sp
-.in +2
-.nf
-svc:/system/dumpadm:default
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Administrative actions on this service, such as enabling, disabling, or
-requesting restart, can be performed using \fBsvcadm\fR(1M). The service's
-status can be queried using the \fBsvcs\fR(1) command.
-.SS "Dump Device Selection"
-.sp
-.LP
-When the special \fBswap\fR token is specified as the argument to \fBdumpadm\fR
-\fB-d\fR the utility will attempt to configure the most appropriate swap device
-as the dump device. \fBdumpadm\fR configures the largest swap block device as
-the dump device; if no block devices are available for swap, the largest swap
-entry is configured as the dump device. If no swap entries are present, or none
-can be configured as the dump device, a warning message will be displayed.
-While local and remote swap files can be configured as the dump device, this is
-not recommended.
-.SS "Dump Device/Swap Device Interaction (UFS File Systems Only)"
-.sp
-.LP
-In the event that the dump device is also a swap device, and the swap device is
-deleted by the administrator using the \fBswap\fR \fB-d\fR command, the
-\fBswap\fR command will automatically invoke \fBdumpadm\fR \fB-d\fR \fBswap\fR
-in order to attempt to configure another appropriate swap device as the dump
-device. If no swap devices remain or none can be configured as the dump device,
-the crash dump will be disabled and a warning message will be displayed.
-Similarly, if the crash dump is disabled and the administrator adds a new swap
-device using the \fBswap\fR \fB-a\fR command, \fBdumpadm\fR \fB-d\fR \fBswap\fR
-will be invoked to re-enable the crash dump using the new swap device.
-.sp
-.LP
-Once \fBdumpadm\fR \fB-d\fR \fBswap\fR has been issued, the new dump device is
-stored in the configuration file for subsequent reboots. If a larger or more
-appropriate swap device is added by the administrator, the dump device is not
-changed; the administrator must re-execute \fBdumpadm\fR \fB-d\fR \fBswap\fR to
-reselect the most appropriate device fom the new list of swap devices.
-.SS "Minimum Free Space"
-.sp
-.LP
-If the \fBdumpadm\fR \fB-m\fR option is used to create a \fBminfree\fR file
-based on a percentage of the total size of the file system containing the
-savecore directory, this value is not automatically recomputed if the file
-system subsequently changes size. In this case, the administrator must
-re-execute \fBdumpadm\fR \fB-m\fR to recompute the \fBminfree\fR value. If no
-such file exists in the savecore directory, \fBsavecore\fR will default to a
-free space threshold of one megabyte. If no free space threshold is desired, a
-minfree file containing size 0 can be created.
-.SS "Security Issues"
-.sp
-.LP
-If, upon reboot, the specified savecore directory is not present, it will be
-created prior to the execution of \fBsavecore\fR with permissions 0700 (read,
-write, execute by owner only) and owner \fBroot\fR. It is recommended that
-alternate savecore directories also be created with similar permissions, as the
-operating system crash dump files themselves may contain secure information.
diff --git a/usr/src/man/man1m/editmap.1m b/usr/src/man/man1m/editmap.1m
deleted file mode 100644
index 43c6e14168..0000000000
--- a/usr/src/man/man1m/editmap.1m
+++ /dev/null
@@ -1,209 +0,0 @@
-'\" te
-.\" Copyright (c) 1983 Eric P. Allman
-.\" Copyright (c) 1988, 1993 The Regents of the University of California. All rights reserved.
-.\" Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
-.\" 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 3. All advertising materials mentioning features or use of this software must display
-.\" the following acknowledgement: This product includes software developed by the University of California, Berkeley and its contributors. 4. Neither the name of the University nor the names of its contributors may be used to endorse or promote products derived from this software without specific
-.\" prior written permission. THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR
-.\" CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
-.\" IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-.\" Copyright (c) 1998-2006, 2008 Sendmail, Inc. and its suppliers. All rights reserved.
-.\" The following license terms and conditions apply, unless a different license is obtained from Sendmail, Inc., 6425 Christie Ave, Fourth Floor, Emeryville, CA 94608, USA, or by electronic mail at license@sendmail.com. License Terms: Use, Modification and Redistribution
-.\" (including distribution of any modified or derived work) in source and binary forms is permitted only if each of the following conditions is met: 1. Redistributions qualify as "freeware" or "Open Source Software" under one of the following terms: (a) Redistributions are made at no charge
-.\" beyond the reasonable cost of materials and delivery. (b) Redistributions are accompanied by a copy of the Source Code or by an irrevocable offer to provide a copy of the Source Code for up to three years at the cost of materials and delivery. Such redistributions
-.\" must allow further use, modification, and redistribution of the Source Code under substantially the same terms as this license. For the purposes of redistribution "Source Code" means the complete compilable and linkable source code of sendmail including all modifications.
-.\" 2. Redistributions of source code must retain the copyright notices as they appear in each source code file, these license terms, and the disclaimer/limitation of liability set forth as paragraph 6 below. 3. Redistributions in binary form must reproduce the Copyright Notice, these license
-.\" terms, and the disclaimer/limitation of liability set forth as paragraph 6 below, in the documentation and/or other materials provided with the distribution. For the purposes of binary distribution the "Copyright Notice" refers to the following language: "Copyright (c) 1998-2004 Sendmail,
-.\" Inc. All rights reserved." 4. Neither the name of Sendmail, Inc. nor the University of California nor the names of their contributors may be used to endorse or promote products derived from this software without specific prior written permission. The name "sendmail" is a trademark
-.\" of Sendmail, Inc. 5. All redistributions must comply with the conditions imposed by the University of California on certain embedded code, whose copyright notice and conditions for redistribution are as follows: (a) Copyright (c) 1988, 1993 The Regents of the University of California.
-.\" All rights reserved. (b) Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: (i) Redistributions of source code must retain the above copyright notice, this list of
-.\" conditions and the following disclaimer. (ii) Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
-.\" (iii) Neither the name of the University nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. 6. Disclaimer/Limitation of Liability: THIS SOFTWARE IS PROVIDED BY SENDMAIL,
-.\" INC. AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL SENDMAIL, INC., THE REGENTS OF THE UNIVERSITY OF CALIFORNIA OR CONTRIBUTORS
-.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
-.\" IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
-.\" Portions Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright (c) 2019 Peter Tribble.
-.TH EDITMAP 1M "Jan 21, 2019"
-.SH NAME
-editmap \- query and edit single records in database maps for sendmail
-.SH SYNOPSIS
-.LP
-.nf
-\fBeditmap\fR \fB-C\fR \fIfile\fR [\fB-N\fR] [\fB-f\fR] [\fB-q\fR | \fB-u\fR | \fB-x\fR] \fImaptype\fR \fImapname\fR \fIkey\fR
- ["\fIvalue\fR"]...
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBeditmap\fR command queries or edits one record in a database maps used
-by the keyed map lookups in \fBsendmail\fR(1M). Arguments are passed on the
-command line and output (for queries) is directed to standard output.
-.sp
-.LP
-Depending on how it is compiled, \fBeditmap\fR handles up to three different
-database formats, selected using the \fImaptype\fR parameter. See
-\fBOPERANDS\fR.
-.sp
-.LP
-If the \fBTrustedUser\fR option is set in the \fBsendmail\fR configuration
-file and \fBeditmap\fR is invoked as root, the generated files are owned by the
-specified \fBTrustedUser\fR.
-.SH OPTIONS
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB-C\fR \fIfile\fR
-.ad
-.RS 11n
-Use the specified \fBsendmail\fR configuration file (\fIfile\fR) to look up the
-\fBTrustedUser\fR option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB-f\fR
-.ad
-.RS 11n
-Disable the folding of all upper case letters in the key to lower case.
-Normally, all upper case letters in the key are folded to lower case. This is
-intended to mesh with the \fB-f\fR flag in the \fBK\fR line in
-\fBsendmail.cf\fR. The value is never case folded.
-.RE
-
-.sp
-.ne 2
-.na
-\fB-N\fR
-.ad
-.RS 11n
-Include the null byte that terminates strings in the map (for alias maps).
-.RE
-
-.sp
-.ne 2
-.na
-\fB-q\fR
-.ad
-.RS 11n
-Query the map for the specified key. If found, print value to standard output
-and exit with \fB0\fR. If not found then print an error message to \fBstdout\fR
-and exit with \fBEX_UNAVAILABLE\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB-u\fR
-.ad
-.RS 11n
-Update the record for the specified key with the specified value or inserts a
-new record if one doesn't exist. Exits with \fB0\fR on success or
-\fBEX_IOERR\fR on failure.
-.RE
-
-.sp
-.ne 2
-.na
-\fB-x\fR
-.ad
-.RS 11n
-Delete the specified key from the map. Exits with \fB0\fR on success or
-\fBEX_IOERR\fR on failure.
-.RE
-
-.SH OPERANDS
-.LP
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fIkey\fR
-.ad
-.RS 12n
-The left hand side of a record.
-.sp
-Each record is of the form:
-.sp
-.in +2
-.nf
-\fIkey\fR \fIvalue\fR
-.fi
-.in -2
-.sp
-
-\fIkey\fR and \fIvalue\fR are separated by white space.
-.RE
-
-.sp
-.ne 2
-.na
-\fImapname\fR
-.ad
-.RS 12n
-File name of the database map being created.
-.RE
-
-.sp
-.ne 2
-.na
-\fImaptype\fR
-.ad
-.RS 12n
-Specifies the database format. The following \fImaptype\fR parameters are
-available:
-.sp
-.ne 2
-.na
-\fBdbm\fR
-.ad
-.RS 10n
-Specifies \fBDBM\fR format maps.
-.RE
-
-.sp
-.ne 2
-.na
-\fBbtree\fR
-.ad
-.RS 10n
-Specifies B-Tree format maps.
-.RE
-
-.sp
-.ne 2
-.na
-\fBhash\fR
-.ad
-.RS 10n
-Specifies hash format maps.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fIvalue\fR
-.ad
-.RS 12n
-The right hand side of a record.
-.sp
-Each record is of the form:
-.sp
-.in +2
-.nf
-\fIkey\fR \fIvalue\fR
-.fi
-.in -2
-.sp
-
-\fIkey\fR and \fIvalue\fR are separated by white space.
-.RE
-
-.SH SEE ALSO
-.LP
-\fBmakemap\fR(1M), \fBsendmail\fR(1M), \fBattributes\fR(5)
diff --git a/usr/src/man/man1m/edquota.1m b/usr/src/man/man1m/edquota.1m
deleted file mode 100644
index 59b801b261..0000000000
--- a/usr/src/man/man1m/edquota.1m
+++ /dev/null
@@ -1,132 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 2003 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH EDQUOTA 1M "Feb 14, 2003"
-.SH NAME
-edquota \- edit user quotas for ufs file system
-.SH SYNOPSIS
-.LP
-.nf
-\fBedquota\fR [\fB-p\fR \fIproto_user\fR] \fIusername\fR...
-.fi
-
-.LP
-.nf
-\fBedquota\fR \fB-t\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBedquota\fR is a quota editor. One or more users may be specified on the
-command line. For each user a temporary file is created with an \fBASCII\fR
-representation of the current disk quotas for that user for each mounted ufs
-file system that has a \fBquotas\fR file, and an editor is then invoked on the
-file. The quotas may then be modified, new quotas added, etc. Upon leaving the
-editor, \fBedquota\fR reads the temporary file and modifies the binary quota
-files to reflect the changes made.
-.sp
-.LP
-The editor invoked is \fBvi\fR(1) unless the \fBEDITOR\fR environment variable
-specifies otherwise.
-.sp
-.LP
-Only the super-user may edit quotas. In order for quotas to be established on
-a file system, the root directory of the file system must contain a file, owned
-by root, called \fBquotas\fR. (See \fBquotaon\fR(1M).)
-.sp
-.LP
-\fIproto_user\fR and \fIusername\fR can be numeric, corresponding to the
-\fBUID\fR of a user. Unassigned UIDs may be specified; unassigned names may
-not. In this way, default quotas can be established for users who are later
-assigned a UID.
-.sp
-.LP
-If no options are specified, the temporary file created will have one or more
-lines of the format, where a block is considered to be a 1024 byte (1K) block:
-.sp
-.in +2
-.nf
-fs\fI mount_point\fR blocks (soft =\fInumber\fR, \e
- hard =\fInumber\fR ) inodes (soft =\fInumber\fR, \e
- hard =\fInumber\fR)
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The \fInumber\fR fields may be modified to reflect desired values.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-p\fR\fR
-.ad
-.RS 6n
-Duplicate the quotas of the \fIproto_user\fR specified for each \fIusername\fR
-specified. This is the normal mechanism used to initialize quotas for groups of
-users.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-t\fR\fR
-.ad
-.RS 6n
-Edit the soft time limits for each file system. If the time limits are zero,
-the default time limits in \fB/usr/include/sys/fs/ufs_quota.h\fR are used. The
-temporary file created will have one or more lines of the form
-.sp
-fs \fImount_point\fR blocks time limit = \fInumber tmunit\fR, files time limit
-= \fInumber tmunit\fR
-.RE
-
-.sp
-.LP
-\fItmunit\fR may be one of ``month'', ``week'', ``day'', ``hour'', ``min'' or
-``sec''; characters appended to these keywords are ignored, so you may write
-``months'' or ``minutes'' if you prefer. The \fInumber\fR and\fI tmunit\fR
-fields may be modified to set desired values. Time limits are printed in the
-greatest possible time unit such that the value is greater than or equal to
-one. If ``default'' is printed after the \fItmunit\fR, this indicates that the
-value shown is zero (the default).
-.SH USAGE
-.sp
-.LP
-See \fBlargefile\fR(5) for the description of the behavior of \fBedquota\fR
-when encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fBquotas\fR\fR
-.ad
-.RS 15n
-quota file at the file system root
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/mnttab\fR\fR
-.ad
-.RS 15n
-table of mounted file systems
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBvi\fR(1), \fBquota\fR(1M), \fBquotacheck\fR(1M), \fBquotaon\fR(1M),
-\fBrepquota\fR(1M), \fBattributes\fR(5), \fBlargefile\fR(5), \fBquotactl\fR(7I)
-.SH NOTES
-.sp
-.LP
-All \fBUID\fRs can be assigned quotas.
diff --git a/usr/src/man/man1m/eeprom.1m b/usr/src/man/man1m/eeprom.1m
deleted file mode 100644
index a1723ec9bf..0000000000
--- a/usr/src/man/man1m/eeprom.1m
+++ /dev/null
@@ -1,1305 +0,0 @@
-'\" te
-.\" Copyright 2019 Peter Tribble.
-.\" Copyright 2020 Carlos Neira <cneirabustos@gmail.com>.
-.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH EEPROM 1M "Jun 13, 2019"
-.SH NAME
-eeprom \- EEPROM display and load utility
-.SH SYNOPSIS
-.nf
-\fB/usr/sbin/eeprom\fR [\fB-\fR] [\fB-f\fR \fIdevice\fR] [\fIparameter\fR[=\fIvalue\fR]]
-.fi
-
-.SH DESCRIPTION
-\fBeeprom\fR displays or changes the values of parameters in the \fBEEPROM.\fR
-It processes parameters in the order given. When processing a \fIparameter\fR
-accompanied by a \fIvalue\fR, \fBeeprom\fR makes the indicated alteration to
-the \fBEEPROM;\fR otherwise, it displays the \fIparameter\fR's value. When
-given no parameter specifiers, \fBeeprom\fR displays the values of all
-\fBEEPROM\fR parameters. A `\|\(mi\fB\&'\fR (hyphen) flag specifies that
-parameters and values are to be read from the standard input (one
-\fIparameter\fR or \fIparameter\fR\fB=\fR\fIvalue\fR per line).
-.sp
-.LP
-Only the super-user may alter the \fBEEPROM\fR contents.
-.sp
-.LP
-\fBeeprom\fR verifies the \fBEEPROM\fR checksums and complains if they are
-incorrect.
-.sp
-.LP
-\fIplatform-name\fR is the name of the platform implementation and can be found
-using the \fB-i\fR option of \fBuname\fR(1).
-.SS "SPARC"
-\fBSPARC\fR based systems implement firmware password protection with
-\fBeeprom\fR, using the \fBsecurity-mode\fR, \fBsecurity-password\fR and
-\fBsecurity-#badlogins\fR properties.
-.SS "x86"
-\fBEEPROM\fR storage is simulated using a file residing in the
-platform-specific boot area. The \fB/boot/solaris/bootenv.rc\fR file simulates
-\fBEEPROM\fR storage.
-.sp
-.LP
-Because x86 based systems typically implement password protection in the system
-\fBBIOS,\fR there is no support for password protection in the \fBeeprom\fR
-program. While it is possible to set the \fBsecurity-mode\fR,
-\fBsecurity-password\fR and \fBsecurity-#badlogins\fR properties on x86 based
-systems, these properties have no special meaning or behavior on x86 based
-systems.
-.SH OPTIONS
-.ne 2
-.na
-\fB\fB-f\fR \fIdevice\fR\fR
-.ad
-.sp .6
-.RS 4n
-Use \fIdevice\fR as the \fBEEPROM\fR device.
-.RE
-
-.SH OPERANDS
-.SS "x86 Only"
-.ne 2
-.na
-\fB\fIacpi-user-options\fR\fR
-.ad
-.sp .6
-.RS 4n
-A configuration variable that controls the use of Advanced Configuration and
-Power Interface (ACPI), a power management specification. The acceptable values
-for this variable depend on the release of the Solaris operating system you are
-using.
-.sp
-For all releases of Solaris 10 and Solaris 11, a value of of \fB0x0\fR means
-that there will be an attempt to use ACPI if it is available on the system. A
-value of \fB0x2\fR disables the use of ACPI.
-.sp
-For the Solaris 10 1/06 release, a value of \fB0x8\fR means that there will be
-an attempt to use ACPI in a mode compatible with previous releases of Solaris
-10 if it is available on the system. The default for Solaris 10 1/06 is
-\fB0x8\fR.
-.sp
-For releases of Solaris 10 after the 1/06 release and for Solaris 11, the
-default is \fB0x0\fR.
-.sp
-Most users can safely accept the default value, which enables ACPI if
-available. If issues related to the use of ACPI are suspected on releases of
-Solaris after Solaris 1/06, it is suggested to first try a value of \fB0x8\fR
-and then, if you do not obtain satisfactory results, \fB0x02\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIconsole\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the console device.
-Possible values are \fBttya\fR, \fBttyb\fR, \fBttyc\fR, \fBttyd\fR, and
-\fBtext\fR. In \fBtext\fR mode, console output goes to the frame buffer and
-input comes from the keyboard. For SPARC, when this property is not present,
-the console device falls back to the device specified by \fBinput-device\fR and
-\fBoutput-device\fR. When neither the console property or the
-\fBinput-device\fR and \fBoutput-device\fR property pair are present, the
-console defaults to the frame buffer and keyboard.
-.RE
-
-.ne 2
-.na
-\fB\fIos_console\fR\fR
-.ad
-.sp .6
-.RS 4n
-While \fBconsole\fR controls both boot loader and kernel console, setting
-\fBos_console\fR allows setting console device only for kernel. Values
-are the same as for \fBconsole\fR.
-.RE
-
-.ne 2
-.na
-\fB\fIdiag-device\fR\fR
-.ad
-.sp .6
-.RS 4n
-The \fBdiag-device\fR is currently implemented to support serial port
-as output for system early boot diagnostic messages and input and output
-for \fBkmdb\fR debugger. For early boot, all the console messages are mirrored
-to \fBdiag-device\fR, until the console drivers are loaded.
-After that, only \fBkmdb\fR will continue to use the \fBdiag-device\fR.
-.RE
-
-.ne 2
-.na
-\fB\fIsegkpsize\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the amount in \fBbytes\fR of kernel pageable memory available.
-Increasing this variable allows either larger stacks for the same number
-of kernel threads or more kernel threads, by default this value is \fB0x80000000 (2GiB)\fR.
-If the value specified exceeds the size of physical memory it will be automatically capped to
-that.
-
-Valid Ranges: 0xC800000 - 0x200000000(200MiB - 8GiB)
-
-
-.RE
-
-
-.SH NVRAM CONFIGURATION PARAMETERS
-Not all OpenBoot systems support all parameters. Defaults vary depending on the
-system and the \fBPROM\fR revision. See the output in the "Default Value"
-column of the \fBprintenv\fR command, as entered at the \fBok\fR (OpenBoot)
-prompt, to determine the default for your system.
-.sp
-.ne 2
-.na
-\fBauto-boot?\fR
-.ad
-.sp .6
-.RS 4n
-If \fBtrue\fR, boots automatically after power-on or reset. Defaults to
-\fBtrue\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBansi-terminal?\fR
-.ad
-.sp .6
-.RS 4n
-Configuration variable used to control the behavior of the terminal emulator.
-The value \fBfalse\fR makes the terminal emulator stop interpreting \fBANSI\fR
-escape sequences; instead, echoes them to the output device. Defaults to
-\fBtrue\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBboot-args\fR
-.ad
-.sp .6
-.RS 4n
-Holds a string of arguments that are passed to the boot subsystem. For example,
-you can use \fBboot-args=' - install dhcp'\fR to request a customer jumpstart
-installation. See \fBboot\fR(1M), \fBkadb\fR(1M) and \fBkernel\fR(1M).
-.RE
-
-.sp
-.ne 2
-.na
-\fBboot-command\fR
-.ad
-.sp .6
-.RS 4n
-Command executed if \fBauto-boot?\fR is \fBtrue\fR. Defaults to \fBboot\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBboot-device\fR
-.ad
-.sp .6
-.RS 4n
-Device from which to boot. \fIboot-device\fR may contain 0 or more device
-specifiers separated by spaces. Each device specifier may be either a prom
-device alias or a prom device path. The boot prom will attempt to open each
-successive device specifier in the list beginning with the first device
-specifier. The first device specifier that opens successfully will be used as
-the device to boot from. Defaults to \fBdisk net\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBboot-file\fR
-.ad
-.sp .6
-.RS 4n
-File to boot (an empty string lets the secondary booter choose default).
-Defaults to empty string.
-.RE
-
-.sp
-.ne 2
-.na
-\fBboot-from\fR
-.ad
-.sp .6
-.RS 4n
-Boot device and file (OpenBoot PROM version 1.\fIx\fR only). Defaults to
-\fBvmunix\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBboot-from-diag\fR
-.ad
-.sp .6
-.RS 4n
-Diagnostic boot device and file (OpenBoot PROM version 1.\fIx\fR only).
-Defaults to \fBle(\|)unix\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBboot-ncpus\fR
-.ad
-.sp .6
-.RS 4n
-Configuration variable that controls the number of processors with which the
-system should boot. By default, the system boots with maximum supported number
-of processors.
-.RE
-
-.sp
-.ne 2
-.na
-\fBcom\fIX\fR-noprobe\fR
-.ad
-.sp .6
-.RS 4n
-Where \fIX\fR is the number of the serial port, prevents device probe on serial
-port \fIX.\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fBdiag-device\fR
-.ad
-.sp .6
-.RS 4n
-Diagnostic boot source device. Defaults to \fBnet\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBdiag-file\fR
-.ad
-.sp .6
-.RS 4n
-File from which to boot in diagnostic mode. Defaults to empty string.
-.RE
-
-.sp
-.ne 2
-.na
-\fBdiag-level\fR
-.ad
-.sp .6
-.RS 4n
-Diagnostics level. Values include \fBoff\fR, \fBmin\fR, \fBmax\fR and
-\fBmenus\fR. There may be additional platform-specific values. When set to
-\fBoff\fR, \fBPOST\fR is not called. If \fBPOST\fR is called, the value is made
-available as an argument to, and is interpreted by \fBPOST.\fR Defaults to
-\fBplatform-dependent\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBdiag-switch?\fR
-.ad
-.sp .6
-.RS 4n
-If \fBtrue\fR, run in diagnostic mode. Defaults to \fBfalse\fR on most desktop
-systems, \fBtrue\fR on most servers.
-.RE
-
-.sp
-.ne 2
-.na
-\fBerror-reset-recovery\fR
-.ad
-.sp .6
-.RS 4n
-Recover after an error reset trap. Defaults to platform-specific setting.
-.sp
-On platforms supporting this variable, it replaces the \fBwatchdog-reboot?\fR,
-\fBwatchdog-sync?\fR, \fBredmode-reboot?\fR, \fBredmode-sync?\fR,
-\fBsir-sync?\fR, and \fBxir-sync?\fR parameters.
-.sp
-The options are:
-.sp
-.ne 2
-.na
-\fBnone\fR
-.ad
-.sp .6
-.RS 4n
-Print a message describing the reset trap and go to OpenBoot PROM's user
-interface, \fBaka\fR \fBOK\fR prompt.
-.RE
-
-.sp
-.ne 2
-.na
-\fBsync\fR
-.ad
-.sp .6
-.RS 4n
-Invoke OpenBoot PROM's \fBsync\fR word after the reset trap. Some platforms may
-treat this as \fBnone\fR after an externally initiated reset (\fBXIR\fR) trap.
-.RE
-
-.sp
-.ne 2
-.na
-\fBboot\fR
-.ad
-.sp .6
-.RS 4n
-Reboot after the reset trap. Some platforms may treat this as \fBnone\fR after
-an \fBXIR\fR trap.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fBfcode-debug?\fR
-.ad
-.sp .6
-.RS 4n
-If \fBtrue\fR, include name parameter for plug-in device FCodes. Defaults to
-\fBfalse\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBhardware-revision\fR
-.ad
-.sp .6
-.RS 4n
-System version information.
-.RE
-
-.sp
-.ne 2
-.na
-\fBinput-device\fR
-.ad
-.sp .6
-.RS 4n
-Input device used at power-on (usually \fBkeyboard\fR, \fBttya\fR,
-\fBttyb\fR, \fBttyc\fR, or \fBttyd\fR). Defaults to \fBkeyboard\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBkeyboard-click?\fR
-.ad
-.sp .6
-.RS 4n
-If \fBtrue\fR, enable keyboard click. Defaults to \fBfalse\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBkeyboard-layout\fR
-.ad
-.sp .6
-.RS 4n
-A string that specifies the layout name for non-self-identifying keyboards
-(type 7c). Invoke \fBkbd\fR \fB-s\fR to obtain a list of acceptable layout
-names. See \fBkbd\fR(1).
-.RE
-
-.sp
-.ne 2
-.na
-\fBkeymap\fR
-.ad
-.sp .6
-.RS 4n
-Keymap for custom keyboard.
-.RE
-
-.sp
-.ne 2
-.na
-\fBlast-hardware-update\fR
-.ad
-.sp .6
-.RS 4n
-System update information.
-.RE
-
-.sp
-.ne 2
-.na
-\fBload-base\fR
-.ad
-.sp .6
-.RS 4n
-Default load address for client programs. Default value is \fB16384\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBlocal-mac-address?\fR
-.ad
-.sp .6
-.RS 4n
-If true, network drivers use their own MAC address, not the system's. Defaults
-to \fBfalse\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBmfg-mode\fR
-.ad
-.sp .6
-.RS 4n
-Manufacturing mode argument for \fBPOST.\fR Possible values include \fBoff\fR
-or \fBchamber\fR. The value is passed as an argument to \fBPOST.\fR Defaults to
-\fBoff\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBmfg-switch?\fR
-.ad
-.sp .6
-.RS 4n
-If true, repeat system self-tests until interrupted with STOP-A. Defaults to
-\fBfalse\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBnvramrc\fR
-.ad
-.sp .6
-.RS 4n
-Contents of NVRAMRC. Defaults to empty.
-.RE
-
-.sp
-.ne 2
-.na
-\fBnetwork-boot-arguments\fR
-.ad
-.sp .6
-.RS 4n
-Arguments to be used by the PROM for network booting. Defaults to an empty
-string. \fBnetwork-boot-arguments\fR can be used to specify the boot protocol
-(RARP/DHCP) to be used and a range of system knowledge to be used in the
-process.
-.sp
-The syntax for arguments supported for network booting is:
-.sp
-.in +2
-.nf
-[\fIprotocol\fR,] [\fIkey\fR=\fIvalue\fR,]*
-.fi
-.in -2
-.sp
-
-All arguments are optional and can appear in any order. Commas are required
-unless the argument is at the end of the list. If specified, an argument takes
-precedence over any default values, or, if booting using DHCP, over
-configuration information provided by a DHCP server for those parameters.
-.sp
-\fIprotocol\fR, above, specifies the address discovery protocol to be used.
-.sp
-Configuration parameters, listed below, are specified as \fIkey\fR=\fIvalue\fR
-attribute pairs.
-.sp
-.ne 2
-.na
-\fB\fBtftp-server\fR\fR
-.ad
-.sp .6
-.RS 4n
-IP address of the TFTP server
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfile\fR\fR
-.ad
-.sp .6
-.RS 4n
-file to download using TFTP or URL for WAN boot
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBhost-ip\fR\fR
-.ad
-.sp .6
-.RS 4n
-IP address of the client (in dotted-decimal notation)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrouter-ip\fR\fR
-.ad
-.sp .6
-.RS 4n
-IP address of the default router (in dotted-decimal notation)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsubnet-mask\fR\fR
-.ad
-.sp .6
-.RS 4n
-subnet mask (in dotted-decimal notation)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBclient-id\fR\fR
-.ad
-.sp .6
-.RS 4n
-DHCP client identifier
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBhostname\fR\fR
-.ad
-.sp .6
-.RS 4n
-hostname to use in DHCP transactions
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBhttp-proxy\fR\fR
-.ad
-.sp .6
-.RS 4n
-HTTP proxy server specification (IPADDR[:PORT])
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBtftp-retries\fR\fR
-.ad
-.sp .6
-.RS 4n
-maximum number of TFTP retries
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdhcp-retries\fR\fR
-.ad
-.sp .6
-.RS 4n
-maximum number of DHCP retries
-.RE
-
-If no parameters are specified (that is, \fBnetwork-boot-arguments\fR is an
-empty string), the PROM will use the platform-specific default address
-discovery protocol.
-.sp
-Absence of the protocol parameter when other configuration parameters are
-specified implies manual configuration.
-.sp
-Manual configuration requires that the client be provided with all the
-information necessary for boot. If using manual configuration, information
-required by the PROM to load the second-stage boot program must be provided in
-\fBnetwork-boot-arguments\fR while information required for the second-stage
-boot program can be specified either as arguments to the \fBboot\fR program or
-by means of the \fBboot\fR program's interactive command interpreter.
-.sp
-Information required by the PROM when using manual configuration includes the
-booting client's IP address, name of the boot file, and the address of the
-server providing the boot file image. Depending on network configuration, it
-might be required that the subnet mask and address of the default router to use
-also be specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fBoem-banner\fR
-.ad
-.sp .6
-.RS 4n
-Custom OEM banner (enabled by setting \fBoem-banner?\fR to \fBtrue\fR).
-Defaults to empty string.
-.RE
-
-.sp
-.ne 2
-.na
-\fBoem-banner?\fR
-.ad
-.sp .6
-.RS 4n
-If \fBtrue\fR, use custom \fBOEM\fR banner. Defaults to \fBfalse\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBoem-logo\fR
-.ad
-.sp .6
-.RS 4n
-Byte array custom OEM logo (enabled by setting \fBoem-logo?\fR to \fBtrue\fR).
-Displayed in hexadecimal.
-.RE
-
-.sp
-.ne 2
-.na
-\fBoem-logo?\fR
-.ad
-.sp .6
-.RS 4n
-If \fBtrue\fR, use custom OEM logo (else, use Sun logo). Defaults to
-\fBfalse\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBpci-mem64?\fR
-.ad
-.sp .6
-.RS 4n
-If true, the OpenBoot PROM allocates 64-bit PCI memory addresses to a PCI
-device that can support 64-bit addresses.
-.sp
-This variable is available on SPARC platforms only and is optional. Some
-versions of SunOS do not support PCI \fBMEM64\fR addresses and will fail in
-unexpected ways if the OpenBoot PROM allocates PCI \fBMEM64\fR addresses.
-.sp
-The default value is system-dependent. If the variable exists, the default
-value is appropriate to the lowest version of the SunOS that shipped with a
-specific platform.
-.RE
-
-.sp
-.ne 2
-.na
-\fBoutput-device\fR
-.ad
-.sp .6
-.RS 4n
-Output device used at power-on (usually \fBscreen\fR, \fBttya\fR,
-\fBttyb\fR, \fBttyc\fR, or \fBttyd\fR). Defaults to \fBscreen\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBrootpath\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the root device of the operating system.
-.RE
-
-.sp
-.ne 2
-.na
-\fBsbus-probe-list\fR
-.ad
-.sp .6
-.RS 4n
-Designate which SBus slots are probed and in what order. Defaults to
-\fB0123\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBscreen-#columns\fR
-.ad
-.sp .6
-.RS 4n
-Number of on-screen columns (characters/line). Defaults to \fB80\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBscreen-#rows\fR
-.ad
-.sp .6
-.RS 4n
-Number of on-screen rows (lines). Defaults to \fB34\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBscsi-initiator-id\fR
-.ad
-.sp .6
-.RS 4n
-\fBSCSI\fR bus address of host adapter, range 0-7. Defaults to \fB7\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBsd-targets\fR
-.ad
-.sp .6
-.RS 4n
-Map \fBSCSI\fR disk units (OpenBoot PROM version 1.\fIx\fR only). Defaults to
-\fB31204567\fR, which means that unit 0 maps to target \fB3\fR, unit 1 maps to
-target \fB1\fR, and so on.
-.RE
-
-.sp
-.ne 2
-.na
-\fBsecurity-#badlogins\fR
-.ad
-.sp .6
-.RS 4n
-Number of incorrect security password attempts.This property has no special
-meaning or behavior on x86 based systems.
-.RE
-
-.sp
-.ne 2
-.na
-\fBsecurity-mode\fR
-.ad
-.sp .6
-.RS 4n
-Firmware security level (options: \fBnone\fR, \fBcommand\fR, or \fBfull\fR). If
-set to \fBcommand\fR or \fBfull\fR, system will prompt for \fBPROM\fR security
-password. Defaults to \fBnone\fR.This property has no special meaning or
-behavior on x86 based systems.
-.RE
-
-.sp
-.ne 2
-.na
-\fBsecurity-password\fR
-.ad
-.sp .6
-.RS 4n
-Firmware security password (never displayed). Can be set only when
-\fBsecurity-mode\fR is set to \fBcommand\fR or \fBfull\fR.This property has no
-special meaning or behavior on x86 based systems.
-.sp
-.in +2
-.nf
-example# eeprom security-password=
-Changing PROM password:
-New password:
-Retype new password:
-.fi
-.in -2
-.sp
-
-.RE
-
-.sp
-.ne 2
-.na
-\fBselftest-#megs\fR
-.ad
-.sp .6
-.RS 4n
-Megabytes of \fBRAM\fR to test. Ignored if \fBdiag-switch?\fR is \fBtrue\fR.
-Defaults to \fB1\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBskip-vme-loopback?\fR
-.ad
-.sp .6
-.RS 4n
-If \fBtrue\fR, POST does not do VMEbus loopback tests. Defaults to \fBfalse\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBst-targets\fR
-.ad
-.sp .6
-.RS 4n
-Map \fBSCSI\fR tape units (OpenBoot PROM version 1.\fIx\fR only). Defaults to
-\fB45670123\fR, which means that unit 0 maps to target \fB4\fR, unit 1 maps to
-target \fB5\fR, and so on.
-.RE
-
-.sp
-.ne 2
-.na
-\fBsunmon-compat?\fR
-.ad
-.sp .6
-.RS 4n
-If \fBtrue\fR, display Restricted Monitor prompt (\|>). Defaults to
-\fBfalse\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBtestarea\fR
-.ad
-.sp .6
-.RS 4n
-One-byte scratch field, available for read/write test. Defaults to \fB0\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBtpe-link-test?\fR
-.ad
-.sp .6
-.RS 4n
-Enable 10baseT link test for built-in twisted pair Ethernet. Defaults to
-\fBtrue\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBttya-mode\fR
-.ad
-.sp .6
-.RS 4n
-\fBTTYA\fR (baud rate, #bits, parity, #stop, handshake). Defaults to
-\fB9600,8,n,1,\(mi\fR.
-.sp
-Fields, in left-to-right order, are:
-.sp
-.ne 2
-.na
-\fBBaud rate:\fR
-.ad
-.sp .6
-.RS 4n
-110, 300, 1200, 4800, 9600\|.\|.\|.
-.RE
-
-.sp
-.ne 2
-.na
-\fBData bits:\fR
-.ad
-.sp .6
-.RS 4n
-5, 6, 7, 8
-.RE
-
-.sp
-.ne 2
-.na
-\fBParity:\fR
-.ad
-.sp .6
-.RS 4n
-n(none), e(even), o(odd), m(mark), s(space)
-.RE
-
-.sp
-.ne 2
-.na
-\fBStop bits:\fR
-.ad
-.sp .6
-.RS 4n
-1, 1.5, 2
-.RE
-
-.sp
-.ne 2
-.na
-\fBHandshake:\fR
-.ad
-.sp .6
-.RS 4n
-\(mi(none), h(hardware:rts/cts), s(software:xon/xoff)
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fBtty\fIX\fR-mode\fR
-.ad
-.sp .6
-.RS 4n
-\fBTTYB, TTYC, or TTYD\fR (baud rate, #bits, parity, #stop, handshake). Defaults to
-\fB9600,8,n,1,\(mi\fR.
-.sp
-Fields, in left-to-right order, are:
-.sp
-.ne 2
-.na
-\fBBaud rate:\fR
-.ad
-.sp .6
-.RS 4n
-110, 300, 1200, 4800, 9600\|.\|.\|.
-.RE
-
-.sp
-.ne 2
-.na
-\fBData bits:\fR
-.ad
-.sp .6
-.RS 4n
-5, 6, 7, 8
-.RE
-
-.sp
-.ne 2
-.na
-\fBStop bits:\fR
-.ad
-.sp .6
-.RS 4n
-1, 1.5, 2
-.RE
-
-.sp
-.ne 2
-.na
-\fBParity:\fR
-.ad
-.sp .6
-.RS 4n
-n(none), e(even), o(odd), m(mark), s(space)
-.RE
-
-.sp
-.ne 2
-.na
-\fBHandshake:\fR
-.ad
-.sp .6
-.RS 4n
-\(mi(none), h(hardware:rts/cts), s(software:xon/xoff)
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fBttya-ignore-cd\fR
-.ad
-.sp .6
-.RS 4n
-If \fBtrue\fR, operating system ignores carrier-detect on TTYA. Defaults to
-\fBtrue\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBtty\fIX\fR-ignore-cd\fR
-.ad
-.sp .6
-.RS 4n
-If \fBtrue\fR, operating system ignores carrier-detect on TTYB, TTYC, or TTYD.
-Defaults to \fBtrue\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBttya-rts-dtr-off\fR
-.ad
-.sp .6
-.RS 4n
-If \fBtrue\fR, operating system does not assert DTR and RTS on TTYA. Defaults
-to \fBfalse\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBtty\fIX\fR-rts-dtr-off\fR
-.ad
-.sp .6
-.RS 4n
-If \fBtrue\fR, operating system does not assert DTR and RTS on TTYB, TTYC,
-or TTYD. Defaults to \fBfalse\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBuse-nvramrc?\fR
-.ad
-.sp .6
-.RS 4n
-If \fBtrue\fR, execute commands in \fBNVRAMRC\fR during system start-up.
-Defaults to \fBfalse\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBverbosity\fR
-.ad
-.sp .6
-.RS 4n
-Controls the level of verbosity of PROM messages. Can be one of \fBdebug\fR,
-\fBmax\fR, \fBnormal\fR, \fBmin\fR, or \fBnone\fR. Defaults to \fBnormal\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBversion2?\fR
-.ad
-.sp .6
-.RS 4n
-If \fBtrue\fR, hybrid (1.\fIx\fR/2.\fIx\fR) PROM comes up in version 2.\fIx\fR.
-Defaults to \fBtrue\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBwatchdog-reboot?\fR
-.ad
-.sp .6
-.RS 4n
-If \fBtrue\fR, reboot after watchdog reset. Defaults to \fBfalse\fR.
-.RE
-
-.SH EXAMPLES
-\fBExample 1 \fRChanging the Number of Megabytes of RAM.
-.sp
-.LP
-The following example demonstrates the method for changing from one to two the
-number of megabytes of \fBRAM\fR that the system will test.
-
-.sp
-.in +2
-.nf
-example# \fBeeprom selftest-#megs\fR
-selftest-#megs=1
-
-example# eeprom selftest-#megs=2
-
-example# \fBeeprom selftest-#megs\fR
-selftest-#megs=2
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRSetting the \fBauto-boot?\fR Parameter to \fBtrue\fR.
-.sp
-.LP
-The following example demonstrates the method for setting the \fBauto-boot?\fR
-parameter to \fBtrue\fR.
-
-.sp
-.in +2
-.nf
-example# \fBeeprom auto-boot?=true\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-When the \fBeeprom\fR command is executed in user mode, the parameters with a
-trailing question mark (?) need to be enclosed in double quotation marks (" ")
-to prevent the shell from interpreting the question mark. Preceding the
-question mark with an escape character (\fB\e\fR) will also prevent the shell
-from interpreting the question mark.
-
-.sp
-.in +2
-.nf
-\fBexample% eeprom "auto-boot?"=true\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRUsing \fBnetwork-boot-arguments\fR
-.sp
-.LP
-To use DHCP as the boot protocol and a hostname of \fBabcd.example.com\fR for
-network booting, set these values in \fBnetwork-boot-arguments\fR as:
-
-.sp
-.in +2
-.nf
-example# \fBeeprom network-boot-arguments="dhcp,hostname=abcd.example.com"\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-\&...then boot using the command:
-
-.sp
-.in +2
-.nf
-ok \fBboot net\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Note that network boot arguments specified from the PROM command line cause the
-contents of \fBnetwork-boot-arguments\fR to be ignored. For example, with
-\fBnetwork-boot-arguments\fR set as shown above, the \fBboot\fR command:
-
-.sp
-.in +2
-.nf
-ok \fBboot net:dhcp\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-\&...causes DHCP to be used, but the \fBhostname\fR specified in
-\fBnetwork-boot-arguments\fR will not be used during network boot.
-
-.LP
-\fBExample 4 \fRSetting System Console to Auxiliary Device
-.sp
-.LP
-The command below assigns the device \fB/dev/term/a\fR as the system console
-device. You would make such an assignment prior to using \fBtip\fR(1) to
-establish a \fBtip\fR connection to a host.
-
-.sp
-.LP
-On a SPARC machine:
-
-.sp
-.in +2
-.nf
-# \fBeeprom output-device=/dev/term/a\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-On an x86 machine:
-
-.sp
-.in +2
-.nf
-# \fBeeprom console=ttya\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-On a SPARC machine, the preceding command would be sufficient for assigning the
-console to an auxiliary device. For an x86 machine, you might, in addition,
-need to set the characteristics of the serial line, for which you would have to
-consult the BIOS documentation for that machine. Also, on some x86 machines,
-you might use a device other than device \fBa\fR, as shown above. For example,
-you could set console to \fBttyb\fR if the second serial port is present.
-
-\fBExample 5 \fRChanging segkpsize.
-.sp
-.LP
-The following example demonstrates the method for changing the
-number of bytes that will be used for kernel pageable memory.
-Running the following command will set segkpsize to 3GiB.
-.sp
-.in +2
-.nf
-# \fBeeprom segkpsize=0xC0000000\fR
-
-.fi
-.in -2
-.sp
-
-
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/boot/solaris/bootenv.rc\fR\fR
-.ad
-.sp .6
-.RS 4n
-File storing \fBeeprom\fR values on x86 machines.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/openprom\fR\fR
-.ad
-.sp .6
-.RS 4n
-Device file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/platform/\fR\fIplatform-name\fR\fB/sbin/eeprom\fR\fR
-.ad
-.sp .6
-.RS 4n
-Platform-specific version of \fBeeprom\fR. Use \fBuname\fR \fB-i\fR to obtain
-\fIplatform-name\fR.
-.RE
-
-
-.SH SEE ALSO
-\fBpasswd\fR(1), \fBsh\fR(1), \fBsvcs\fR(1), \fBtip\fR(1), \fBuname\fR(1),
-\fBboot\fR(1M), \fBkadb\fR(1M), \fBkernel\fR(1M), \fBinit\fR(1M),
-\fBsvcadm\fR(1M), \fBattributes\fR(5), \fBsmf\fR(5)
-.sp
-.LP
-\fIOpenBoot 3.x Command Reference Manual\fR
-.sp
-.LP
-\fI\fR
diff --git a/usr/src/man/man1m/efdaemon.1m b/usr/src/man/man1m/efdaemon.1m
deleted file mode 100644
index cdf6c3aec8..0000000000
--- a/usr/src/man/man1m/efdaemon.1m
+++ /dev/null
@@ -1,104 +0,0 @@
-'\" te
-.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH EFDAEMON 1M "Aug 10, 2004"
-.SH NAME
-efdaemon \- embedded FCode interpreter daemon
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/efcode/sparcv9/efdaemon\fR [\fB-d\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBefdaemon\fR, the embedded \fBFCode\fR interpreter daemon, invokes the
-embedded \fBFCode\fR interpreter when the daemon receives an interpretation
-request. A new session of the interpreter is started for each unique request by
-invoking the script \fB/usr/lib/efcode/efcode\fR.
-.sp
-.LP
-\fBefdaemon\fR is used on selected platforms as part of the processing of some
-dynamic reconfiguration events.
-.SH OPTIONS
-.sp
-.LP
-The following option is supported:
-.sp
-.ne 2
-.na
-\fB\fB-d\fR\fR
-.ad
-.RS 6n
-Set debug output. Log debug messages as \fBLOG_DEBUG\fR level messages by using
-\fBsyslog()\fR. See \fBsyslog\fR(3C).
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/dev/fcode\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBFCode\fR interpreter pseudo device, which is a portal for receipt of
-\fBFCode\fR interpretation requests
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/efcode/efcode\fR\fR
-.ad
-.sp .6
-.RS 4n
-Shell script that invokes the embedded \fBFCode\fR interpreter
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/efcode/interpreter\fR\fR
-.ad
-.sp .6
-.RS 4n
-Embedded \fBFCode\fR interpreter
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/efcode/sparcv9/interpreter\fR\fR
-.ad
-.sp .6
-.RS 4n
-Embedded \fBFCode\fR interpreter
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBsvcs\fR(1), \fBprtconf\fR(1M), \fBsvcadm\fR(1M), \fBsyslog\fR(3C),
-\fBattributes\fR(5), \fBsmf\fR(5)
-.SH NOTES
-.sp
-.LP
-The \fBefdaemon\fR service is managed by the service management facility,
-\fBsmf\fR(5), under the service identifier:
-.sp
-.in +2
-.nf
-svc:/platform/sun4u/efdaemon:default
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Administrative actions on this service, such as enabling, disabling, or
-requesting restart, can be performed using \fBsvcadm\fR(1M). The service's
-status can be queried using the \fBsvcs\fR(1) command.
diff --git a/usr/src/man/man1m/embedded_su.1m b/usr/src/man/man1m/embedded_su.1m
deleted file mode 100644
index 43cc654090..0000000000
--- a/usr/src/man/man1m/embedded_su.1m
+++ /dev/null
@@ -1,326 +0,0 @@
-'\" te
-.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH EMBEDDED_SU 1M "Feb 10, 2005"
-.SH NAME
-embedded_su \- allow an application to prompt for credentials and execute
-commands as the super user or another user
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/embedded_su\fR [\fB-\fR] [\fIusername\fR [arg...]]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBembedded_su\fR command allows an application to prompt the user for
-security credentials and then use those credentials to execute a program as
-another user or role (see \fBrbac\fR(5) for information on role-based access
-control). The default \fIusername\fR is \fBroot\fR (super user).
-.sp
-.LP
-\fBembedded_su\fR is identical to \fBsu\fR(1M), except that the user
-interaction is packaged in a form suitable for another program to interpret and
-display. Typically, \fBembedded_su\fR would be used to allow a graphical
-program to prompt for the super user password and execute a command as the
-super user, without requiring that the requesting program be run as the super
-user.
-.SS "PROTOCOL"
-.sp
-.LP
-\fBembedded_su\fR implements a simple protocol over standard input, standard
-output, and standard error. This protocol consists of three phases, roughly
-corresponding to \fBPAM\fR initialization, the \fBPAM\fR dialog, and \fBPAM\fR
-completion.
-.SS "Phase 1: Initialization"
-.sp
-.LP
-After starting \fBembedded_su\fR, the application must send an initialization
-block on \fBembedded_su\fR's standard input. This block is a text block, as
-described under "Text Blocks". There are currently no initialization parameters
-defined; the application should send an empty block by sending a line
-consisting solely of a period (.).
-.SS "Phase 2: Conversation"
-.sp
-.LP
-\fBembedded_su\fR then emits zero or more conversation blocks on its standard
-output. Each conversation block may require zero or more responses.
-.sp
-.LP
-A conversation block starts with a line consisting of the word \fBCONV\fR,
-followed by whitespace, followed by the number of messages in the conversation
-block as a decimal integer. The number of messages may be followed by
-whitespace and additional data. This data, if present, must be ignored.
-.sp
-.LP
-Each message consists of a line containing a header followed by a text block,
-as described under "Text Blocks". A single newline is appended to each message,
-allowing the message to end with a line that does not end with a newline.
-.sp
-.LP
-A message header line consists of a \fBPAM\fR message style name, as described
-in \fBpam_start\fR(3PAM). The message header values are:
-.sp
-.ne 2
-.na
-\fB\fBPAM_PROMPT_ECHO_OFF\fR\fR
-.ad
-.RS 23n
-The application is to prompt the user for a value, with echoing disabled.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_PROMPT_ECHO_ON\fR\fR
-.ad
-.RS 23n
-The application is to prompt the user for a value, with echoing enabled.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_ERROR_MSG\fR\fR
-.ad
-.RS 23n
-The application is to display the message in a form appropriate for displaying
-an error.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_TEXT_INFO\fR\fR
-.ad
-.RS 23n
-The application is to display the message in a form appropriate for general
-information.
-.RE
-
-.sp
-.LP
-The \fBPAM\fR message style may be followed by whitespace and additional data.
-This data, if present, must be ignored.
-.sp
-.LP
-After writing all of the messages in the conversation block, if any of them
-were \fBPAM_PROMPT_ECHO_OFF\fR or \fBPAM_PROMPT_ECHO_ON\fR, \fBembedded_su\fR
-waits for the response values. It expects the response values one per line, in
-the order the messages were given.
-.SS "Phase 3: Completion"
-.sp
-.LP
-After zero or more conversation blocks, \fBembedded_su\fR emits a result block
-instead of a conversation block.
-.sp
-.LP
-Upon success, \fBembedded_su\fR emits a single line containing the word
-"\fBSUCCESS\fR". The word \fBSUCCESS\fR may be followed by whitespace and
-additional data. This data, if present, must be ignored.
-.sp
-.LP
-Upon failure, \fBembedded_su\fR emits a single line containing the word
-"\fBERROR\fR", followed by a text block as described under "Text Bocks". The
-text block gives an error message. The word \fBERROR\fR may be followed by
-whitespace and additional data. This data, if present, must be ignored.
-.SS "Text Blocks"
-.sp
-.LP
-Initialization blocks, message blocks, and error blocks are all text blocks.
-These are blocks of text that are terminated by a line containing a single
-period (.). Lines in the block that begin with a "." have an extra "."
-prepended to them.
-.SS "Internationalization"
-.sp
-.LP
-All messages are localized to the current locale; no further localization is
-required.
-.SS "SECURITY"
-.sp
-.LP
-\fBembedded_su\fR uses \fBpam\fR(3PAM) for authentication, account management,
-and session management. Its primary function is to export the \fBPAM\fR
-conversation mechanism to an unprivileged program. Like \fBsu\fR(1M), the
-\fBPAM\fR configuration policy can be used to control \fBembedded_su\fR. The
-\fBPAM\fR service name used is "embedded_su".
-.sp
-.LP
-\fBembedded_su\fR is almost exactly equivalent to \fBsu\fR(1M) for security
-purposes. The only exception is that it is slightly easier to use
-\fBembedded_su\fR in writing a malicious program that might trick a user into
-providing secret data. For those sites needing maximum security, potentially at
-the expense of application functionality, the EXAMPLES section shows how to
-disable \fBembedded_su\fR.
-.SH EXAMPLES
-.sp
-.LP
-In the following examples, left angle brackets (<<<) indicate a line written by
-\fBembedded_su\fR and read by the invoking application. Right angle brackets
-(>>>) indicate a line written by the application and read by \fBembedded_su\fR.
-.LP
-\fBExample 1 \fRExecuting a command with the Correct Password
-.sp
-.LP
-The following example shows an attempt to execute "somecommand" as "someuser",
-with the correct password supplied:
-
-.sp
-.in +2
-.nf
- /usr/lib/embedded_su someuser -c somecommand
- >>>.
- <<<CONV 1
- <<<PAM_PROMPT_ECHO_OFF
- <<<Password:
- <<<.
- >>>[ correct password ]
- <<<SUCCESS
- [ somecommand executes ]
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRExecuting a command with the Incorrect Password
-.sp
-.LP
-The following example shows an attempt to execute "somecommand" as "someuser",
-with the incorrect password supplied:
-
-.sp
-.in +2
-.nf
- /usr/lib/embedded_su someuser -c somecommand
- >>>.
- <<<CONV 1
- <<<PAM_PROMPT_ECHO_OFF
- <<<Password:
- <<<.
- >>>[ incorrect password ]
- [ delay ]
- <<<ERROR
- <<<embedded_su:Sorry
- <<<.
- [ exit ]
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRMessage Examples
-.sp
-.LP
-A \fBpam_message\fR structure with \fImsg_style\fR equal to \fBPAM_TEXT_INFO\fR
-and \fBmsg\fR equal to "foo" produces:
-
-.sp
-.in +2
-.nf
-PAM_TEXT_INFO
-foo
-\&.
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-A \fBpam_message\fR structure with \fImsg_style\fR equal to
-\fBPAM_ERROR_MESSAGE\fR and \fBmsg\fR equal to "bar\en" produces:
-
-.sp
-.in +2
-.nf
-PAM_ERROR_MESSAGE
-bar
-[ blank line ]
-\&.
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-A \fBpam_message\fR structure with \fImsg_style\fR equal to
-\fBPAM_ERROR_MESSAGE\fR and \fBmsg\fR equal to "aaa\enbbb" produces:
-
-.sp
-.in +2
-.nf
-PAM_ERROR_MESSAGE
-aaa
-bbb
-\&.
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-A \fBpam_message\fR structure with \fImsg_style\fR equal to \fBPAM_TEXT_INFO\fR
-and \fBmsg\fR equal to "" produces:
-
-.sp
-.in +2
-.nf
-PAM_TEXT_INFO
-[ blank line ]
-\&.
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-A \fBpam_message\fR structure with \fImsg_style\fR equal to \fBPAM_TEXT_INFO\fR
-and \fBmsg\fR equal to NULL produces:
-
-.sp
-.in +2
-.nf
-PAM_TEXT_INFO
-\&.
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 4 \fRDisabling embedded_su
-.sp
-.LP
-To disable \fBembedded_su\fR, add a line to the \fB/etc/pam.conf\fR file
-similar to:
-
-.sp
-.in +2
-.nf
-embedded_su auth requisite pam_deny.so.1
-.fi
-.in -2
-.sp
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Stable
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBsu\fR(1M), \fBpam\fR(3PAM), \fBpam_start\fR(3PAM), \fBattributes\fR(5),
-\fBrbac\fR(5)
diff --git a/usr/src/man/man1m/etrn.1m b/usr/src/man/man1m/etrn.1m
deleted file mode 100644
index 76665411eb..0000000000
--- a/usr/src/man/man1m/etrn.1m
+++ /dev/null
@@ -1,183 +0,0 @@
-'\" te
-.\" Copyright (c) 2004, Sun Microsystems, Inc.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH ETRN 1M "November 22, 2021"
-.SH NAME
-etrn \- start mail queue run
-.SH SYNOPSIS
-.nf
-\fBetrn\fR [\fB-b\fR] [\fB-v\fR] \fIserver-host\fR [\fIclient-hosts\fR]
-.fi
-
-.SH DESCRIPTION
-SMTP's \fBETRN\fR command allows an SMTP client and server to interact, giving
-the server an opportunity to start the processing of its queues for messages to
-go to a given host. This is meant to be used in start-up conditions, as well as
-for mail nodes that have transient connections to their service providers.
-.sp
-.LP
-The \fBetrn\fR utility initiates an SMTP session with the host
-\fIserver-host\fR and sends one or more \fBETRN\fR commands as follows: If no
-\fIclient-hosts\fR are specified, \fBetrn\fR looks up every host name for which
-\fBsendmail\fR(1M) accepts email and, for each name, sends an \fBETRN\fR
-command with that name as the argument. If any \fIclient-hosts\fR are
-specified, \fBetrn\fR uses each of these as arguments for successive \fBETRN\fR
-commands.
-.SH OPTIONS
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-b\fR\fR
-.ad
-.RS 6n
-System boot special case. Make sure localhost is accepting SMTP connections
-before initiating the SMTP session with server-host.
-.sp
-This option is useful because it prevents race conditions between
-\fBsendmail\fR(1M) accepting connections and \fIserver-host\fR attempting to
-deliver queued mail. This check is performed automatically if no
-\fIclient-hosts\fR are specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.RS 6n
-The normal mode of operation for \fBetrn\fR is to do all of its work silently.
-The \fB-v\fR option makes it verbose, which causes \fBetrn\fR to display its
-conversations with the remote SMTP server.
-.RE
-
-.SH ENVIRONMENT VARIABLES
-No environment variables are used. However, at system start-up,
-\fBsvc:/network/smtp:sendmail\fR reads \fB/etc/default/sendmail\fR. In this
-file, if the variable \fBETRN_HOSTS\fR is set, \fBsvc:/network/smtp:sendmail\fR
-parses this variable and invokes \fBetrn\fR appropriately. \fBETRN_HOSTS\fR
-should be of the form:
-.sp
-.in +2
-.nf
-"s1:c1.1,c1.2 s2:c2.1 s3:c3.1,c3.2,c3.3"
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-That is, white-space separated groups of \fIserver:client\fR where \fIclient\fR
-can be one or more comma-separated names. The \fI:client\fR part is optional.
-\fIserver\fR is the name of the server to prod; a mail queue run is requested
-for each \fIclient\fR name. This is comparable to running:
-.sp
-.in +2
-.nf
-/usr/lib/sendmail -qR \fIclient\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-on the host \fIserver\fR.
-.SH EXAMPLES
-\fBExample 1 \fRUsing \fBetrn\fR
-.sp
-.LP
-Inserting the line:
-
-.sp
-.in +2
-.nf
-ETRN_HOSTS="s1.example.com:clnt.example.com s2.example.com:clnt.example.com"
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-in \fB/etc/default/sendmail\fR results in \fBsvc:/network/smtp:sendmail\fR
-invoking \fBetrn\fR such that \fBETRN\fR commands are sent to both
-\fBs1.example.com\fR and \fBs2.example.com\fR, with both having
-\fBclnt.example.com\fR as the \fBETRN\fR argument.
-
-.sp
-.LP
-The line:
-
-.sp
-.in +2
-.nf
-ETRN_HOSTS="server.example.com:client1.example.com,client2.example.com"
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-results in two \fBETRN\fR commands being sent to \fBserver.example.com\fR, one
-with the argument \fBclient1.example.com\fR, the other with the argument
-\fBclient2.example.com\fR.
-
-.sp
-.LP
-The line:
-
-.sp
-.in +2
-.nf
-ETRN_HOSTS="server1.example.com server2.example.com"
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-results in set of a \fBETRN\fR commands being sent to both
-\fBserver1.example.com\fR and \fBserver2.example.com\fR; each set contains one
-\fBETRN\fR command for each host name for which \fBsendmail\fR(1M) accepts
-email, with that host name as the argument.
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/etc/mail/sendmail.cf\fR\fR
-.ad
-.RS 25n
-\fBsendmail\fR configuration file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/default/sendmail\fR\fR
-.ad
-.RS 25n
-Variables used by \fBsvc:/network/smtp:sendmail\fR
-.RE
-
-.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Stable
-.TE
-
-.SH SEE ALSO
-\fBsendmail\fR(1M), \fBattributes\fR(5)
-.sp
-.LP
-RFC 1985
-.SH NOTES
-Not all SMTP servers support \fBETRN\fR.
diff --git a/usr/src/man/man1m/fcinfo.1m b/usr/src/man/man1m/fcinfo.1m
deleted file mode 100644
index 9663635408..0000000000
--- a/usr/src/man/man1m/fcinfo.1m
+++ /dev/null
@@ -1,1258 +0,0 @@
-'\" te
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
-.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH FCINFO 1M "Jul 26, 2009"
-.SH NAME
-fcinfo, fcadm \- Fibre Channel HBA Port Command Line Interface
-.SH SYNOPSIS
-.LP
-.nf
-\fBfcinfo\fR hba-port [\fB-lite\fR] [\fIHBA_port_WWN\fR]...
-.fi
-
-.LP
-.nf
-\fBfcadm\fR hba-port [\fB-lite\fR] [\fIHBA_port_WWN\fR]...
-.fi
-
-.LP
-.nf
-\fBfcinfo\fR remote-port [\fB-ls\fR] [\fB-p\fR \fIHBA_port_WWN\fR]
- [\fIREMOTE_port_WWN\fR]...
-.fi
-
-.LP
-.nf
-\fBfcadm\fR remote-port [\fB-ls\fR] [\fB-p\fR \fIHBA_port_WWN\fR]
- [\fIREMOTE_port_WWN\fR]...
-.fi
-
-.LP
-.nf
-\fBfcinfo\fR logical-unit | lu [\fB-v\fR] [OS \fIdevice_path\fR]
-.fi
-
-.LP
-.nf
-\fBfcadm\fR logical-unit | lu [\fB-v\fR] [OS \fIdevice_path\fR]
-.fi
-
-.LP
-.nf
-\fBfcadm\fR create-npiv-port \fB-p\fR \fIVirtual_Port_WWN\fR [\fB-n\fR \fIVirtual_Node_WWN\fR]
- \fIPhysicalPort_port_WWN\fR
-.fi
-
-.LP
-.nf
-\fBfcadm\fR delete-npiv-port \fB-p\fR \fIVirtual_Port_WWN\fR [\fB-n\fR \fIVirtual_Node_WWN\fR]
- \fIPhysicalPort_port_WWN\fR
-.fi
-
-.LP
-.nf
-\fBfcadm\fR create-fcoe-port [\fB-tf\fR] \fB-p\fR \fIPort_WWN\fR [\fB-n\fR \fINode_WWN\fR]
- \fIMAC_Interface\fR
-.fi
-
-.LP
-.nf
-\fBfcadm\fR delete-fcoe-port \fIMAC_Interface\fR
-.fi
-
-.LP
-.nf
-\fBfcadm\fR list-fcoe-ports \fIMAC_Interface\fR
-.fi
-
-.LP
-.nf
-\fBfcadm\fR force-lip \fIPort_WWN\fR
-.fi
-
-.LP
-.nf
-\fBfcinfo\fR [\fB-V\fR]
-.fi
-
-.LP
-.nf
-\fBfcadm\fR [\fB-V\fR]
-.fi
-
-.LP
-.nf
-\fBfcinfo\fR [\fB-?\fR]
-.fi
-
-.LP
-.nf
-\fBfcadm\fR [\fB-?\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBfcinfo\fR and \fBfcadm\fR are command line interfaces that collect
-administrative information on fibre channel host bus adapter (\fBHBA\fR) ports
-on a host. They also collect data on any fibre channel targets that might be
-connected to those ports in a Storage Area Network (\fBSAN\fR).
-.sp
-.LP
-A port can be either in initiator mode or target mode. The same FC attribute
-information and remote port information are applied to both the initiator and
-the target modes port except that SCSI-related operations described below do
-not apply for the target mode port.
-.SS "SUBCOMMANDS"
-.sp
-.LP
-The following subcommands are supported by both \fBfcinfo\fR and \fBfcadm\fR:
-.sp
-.ne 2
-.na
-\fB\fBhba-port\fR\fR
-.ad
-.RS 21n
-Lists information for the \fBHBA\fR port referenced by the specified
-\fIHBA_port_WWN\fR. If \fIHBA_port_WWN\fR is not specified, all initiator mode
-and target mode fibre channel \fBHBA\fR ports on the host will be listed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBremote-port\fR\fR
-.ad
-.RS 21n
-Lists the \fIremote-port\fR information for those remote ports that are
-specified. If no \fIREMOTE_port_WWN\fR is specified, all remote ports that are
-visible through \fIHBA_port_WWN\fR are listed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBlogical-unit\fR | \fBlu\fR\fR
-.ad
-.RS 21n
-Lists the logical unit referenced by the specified \fIdevice_path\fR. If
-\fIdevice_path\fR is not specified, all fibre channel logical units will be
-listed. This subcommand applies only to the initiator mode.
-.RE
-
-.sp
-.LP
-The following subcommands, which administer N_Port ID Virtualization (NPIV) HBA
-ports, are supported only by \fBfcadm\fR:
-.sp
-.ne 2
-.na
-\fB\fBcreate-npiv-port\fR\fR
-.ad
-.sp .6
-.RS 4n
-Create an NPIV virtual port on the specified adapter.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdelete-npiv-port\fR\fR
-.ad
-.sp .6
-.RS 4n
-Delete an NPIV virtual port. This delete only ports create by \fBfcadm\fR.
-.RE
-
-.sp
-.LP
-The following subcommands, which administer Fibre Channel over Ethernet (FCoE)
-ports, are supported only by \fBfcadm\fR:
-.sp
-.ne 2
-.na
-\fB\fBcreate-fcoe-port\fR\fR
-.ad
-.sp .6
-.RS 4n
-Creates a FCoE port associated with the given MAC interface and the given
-\fIPort_WWN\fR/\fINode_WWN\fR. If \fB-p\fR or \fB-n\fR is not specified, the
-Port WWN or Node WWN will be generated automatically. If the specified MAC
-interface does not support multiple unicast address, no FCoE port will be
-created and you receive a message indicating that you can add an \fB-f\fR
-option to force enabling promiscuous mode on the specified MAC interface to
-enable FCoE.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdelete-fcoe-port\fR\fR
-.ad
-.sp .6
-.RS 4n
-Deletes the FCoE port associated with the specified MAC interface.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBlist-fcoe-ports\fR\fR
-.ad
-.sp .6
-.RS 4n
-List information of FCoE ports.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBforce-lip\fR\fR
-.ad
-.sp .6
-.RS 4n
-Force the link to reinitialize. When issuing this subcommand on the target
-port side, causes a reset of the target port. When issuing it from the host
-port side, resets the host port. When an FC switch is connected, other FC ports
-in the SAN will get a RSCN (Remote State Change Notification). Furthermore,
-other initiators will always rediscover the port after this, and the FC login
-session will be established or reused. Also, I/Os will be continued. This
-command is disruptive to I/Os, but it is not destructive, as it does not cause
-any data loss.
-.RE
-
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-e\fR, \fB--fcoe\fR\fR
-.ad
-.sp .6
-.RS 4n
-Lists the information for all FCoE ports.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR, \fB--fcoe-promiscuous\fR\fR
-.ad
-.sp .6
-.RS 4n
-Used with \fBcreate-fcoe-port\fR to create an FCoE port on a MAC interface
-associated with a NIC that does not support multiple unicast address.
-Promiscuous mode will be enabled for the specified MAC interface.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR, \fB--linkstat\fR\fR
-.ad
-.sp .6
-.RS 4n
-Lists the link error statistics information for the port referenced by the
-specified \fIHBA_port_WWN\fR or \fIREMOTE_port_WWN\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR \fIHBA_node_WWN\fR, \fB--node\fR \fIHBA_node_WWN\fR\fR
-.ad
-.sp .6
-.RS 4n
-When used with NPIV options, specify a virtual node WWN. If used with
-\fBcreate-npiv-port\fR, it can be omitted, and a random based WWN will be used.
-It is mandatory for \fBdelete-npiv-port\fR.
-.sp
-When used with \fBcreate-fcoe-port\fR subcommand, specify the node WWN for the
-FCoE port. It can be omitted, in which case a WWN will be generated based on
-the MAC address of the specified MAC interface.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR \fIHBA_port_WWN\fR, \fB--port\fR \fIHBA_port_WWN\fR\fR
-.ad
-.sp .6
-.RS 4n
-Retrieve remote port information from the \fIHBA_port_WWN\fR of the local
-\fBHBA\fR port on the host. When used with the \fBremote-port\fR subcommand,
-the \fB-p\fR option is mandatory.
-.sp
-When used with NPIV options, specify a virtual port WWN. If used with
-\fBcreate-npiv-port\fR, it can be omitted, and a random based WWN will be used.
-It is mandatory for \fBdelete-npiv-port\fR.
-.sp
-When used with \fBcreate-fcoe-port\fR subcommand, specify the port WWN for the
-FCoE port. It can be omitted, in which case a WWN will be generated based on
-the MAC address of the specified MAC interface.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR, \fB--scsi-target\fR\fR
-.ad
-.sp .6
-.RS 4n
-Lists the \fBSCSI\fR target information for all remote ports the user has asked
-for. The \fB-p\fR, \fB--port\fR option must always be specified and must be a
-valid \fBHBA\fR port on the host. This \fBHBA\fR port will be used as the
-initiator for which to retrieve the \fBSCSI\fR level target information. Note
-that this will only function on remote port fibre channel World-Wide Names that
-support an FC4 type of \fBSCSI\fR. This option applies only to an initiator
-mode port.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-t\fR [\fIHBA_node_WWN\fR], \fB-target\fR [\fIHBA_node_WWN\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Lists the information for the port with the target mode referenced by the
-specified \fIHBA_node_WWN\fR or all target mode ports discovered in the host.
-.sp
-When used with \fBcreate-fcoe-port\fR, create a FCoE target mode port.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR, \fB--verbose\fR\fR
-.ad
-.sp .6
-.RS 4n
-When used with the \fBlogical-unit\fR subcommand, the \fB-v\fR displays
-additional information for the logical unit, including \fBSCSI\fR vendor and
-product information and device type as well as the \fBFC\fR World-Wide names
-for the local and remote fibre channel ports to which this device is attached.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-V\fR, \fB--version\fR\fR
-.ad
-.sp .6
-.RS 4n
-Displays the version information.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-?\fR, \fB--help\fR\fR
-.ad
-.sp .6
-.RS 4n
-Displays the usage information.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRListing All HBA Ports
-.sp
-.LP
-The following command lists all initiator mode fibre channel \fBHBA\fR ports on
-the host:
-
-.sp
-.in +2
-.nf
-# \fBfcinfo hba-port\fR
-
-HBA Port WWN: 210000e08b074cb5
- Port Mode: Initiator
- OS Device Name: /dev/cfg/c1
- Manufacturer: QLogic Corp.
- Model: 375-3108-xx
- Firmware Version: 3.3.116
- FCode/BIOS Version: 1.13.08
- Serial Number: not available
- Driver Name: qlc
- Driver Version: 20070212-2.19
- Type: N-port
- State: online
- Supported Speeds: 1Gb 2Gb
- Current Speed: 2Gb
- Node WWN: 200000e08b074cb5
-NPIV Port List:
- Virtual Port 1:
- Port WWN: 200000e08b074cb1
- Node WWN: 200000e08b074cb3
-HBA Port WWN: 210100e08b274cb5
- Port Mode: Initiator
- OS Device Name: /dev/cfg/c2
- Manufacturer: QLogic Corp.
- Model: 375-3108-xx
- Firmware Version: 3.3.116
- FCode/BIOS Version: 1.13.08
- Serial Number: not available
- Driver Name: qlc
- Driver Version: 20070212-2.19
- Type: N-port
- State: online
- Supported Speeds: 1Gb 2Gb
- Current Speed: 2Gb
- Node WWN: 200100e08b274cb5
-HBA Port WWN: 210000e08b072ab5
- Port Mode: Initiator
- OS Device Name: /dev/cfg/c3
- Manufacturer: QLogic Corp.
- Firmware Version: 3.3.116
- FCode/BIOS Version: 1.13.08
- Model: 375-3108-xx
- Serial Number: not available
- Driver Name: qlc
- Driver Version: 20070212-2.19
- Type: L-port
- State: online
- Supported Speeds: 1Gb 2Gb
- Current Speed: 2Gb
- Node WWN: 200000e08b072ab5
-HBA Port WWN: 210100e08b272ab5
- Port Mode: Initiator
- OS Device Name: /dev/cfg/c4
- Manufacturer: QLogic Corp.
- Model: 375-3108-xx
- Firmware Version: 3.3.116
- FCode/BIOS Version: 1.13.08
- Serial Number: 0402F00-0549112808
- Driver Name: qlc
- Driver Version: 20070212-2.19
- Type: N-port
- State: online
- Supported Speeds: 1Gb 2Gb
- Current Speed: 2Gb
- Node WWN: 200100e08b272ab5
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRListing Target Mode HBA Ports
-.sp
-.LP
-The following command lists all target mode fibre channel HBA ports on the
-host:
-
-.sp
-.in +2
-.nf
-# \fBfcinfo hba-port -t\fR
- HBA Port WWN: 210100e08bb09221
- Port Mode: Target
- Port ID: 10700
- OS Device Name: Not Applicable
- Manufacturer: QLogic Corp.
- Model: d30ac7e0
- Firmware Version: 4.0.109
- FCode/BIOS Version: N/A
- Type: F-port
- State: online
- Supported Speeds: not established
- Current Speed: 2Gb
- Node WWN: 200100e08bb09221
- HBA Port WWN: 210000e08b909221
- Port Mode: Target
- Port ID: 10900
- OS Device Name: Not Applicable
- Manufacturer: QLogic Corp.
- Model: d37ad1e0
- Firmware Version: 4.0.109
- FCode/BIOS Version: N/A
- Type: F-port
- State: online
- Supported Speeds: not established
- Current Speed: 2Gb
- Node WWN: 200000e08b909221
- HBA Port WWN: 200000144fc2d508
- Port Mode: Target
- Port ID: 9a0025
- OS Device Name: Not Applicable
- Manufacturer: Sun Microsystems, Inc.
- Model: FCoE Virtual FC HBA
- Firmware Version: N/A
- FCode/BIOS Version: N/A
- Serial Number: N/A
- Driver Name: COMSTAR FCOET
- Driver Version: 1.0
- Type: F-port
- State: online
- Supported Speeds: 1Gb 10Gb
- Current Speed: 10Gb
- Node WWN: 100000144fc2d508
- HBA Port WWN: 200000144fc2d509
- Port Mode: Target
- Port ID: 9a0023
- OS Device Name: Not Applicable
- Manufacturer: Sun Microsystems, Inc.
- Model: FCoE Virtual FC HBA
- Firmware Version: N/A
- FCode/BIOS Version: N/A
- Serial Number: N/A
- Driver Name: COMSTAR FCOET
- Driver Version: 1.0
- Type: F-port
- State: online
- Supported Speeds: 1Gb 10Gb
- Current Speed: 10Gb
- Node WWN: 100000144fc2d509
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRListing HBA Ports and Link Statistics
-.sp
-.LP
-The following command lists information for the \fBHBA\fR ports and the link
-statistics for those ports:
-
-.sp
-.in +2
-.nf
-# \fBfcinfo hba-port -l 210000e08b074cb5 210100e08b274cb5\fR
-
-HBA Port WWN: 210000e08b074cb5
- Port Mode: Initiator
- OS Device Name: /dev/cfg/c1
- Manufacturer: QLogic Corp.
- Model: 375-3108-xx
- Firmware Version: 3.3.116
- FCode/BIOS Version: 1.13.08
- Serial Number: 0402F00-0549112808
- Driver Name: qlc
- Driver Version: 20070212-2.19
- Type: N-port
- State: online
- Supported Speeds: 1Gb 2Gb
- Current Speed: 2Gb
- Node WWN: 200000e08b074cb5
- Link Error Statistics:
- Link Failure Count: 0
- Loss of Sync Count: 0
- Loss of Signal Count: 0
- Primitive Seq Protocol Error Count: 0
- Invalid Tx Word Count: 0
- Invalid CRC Count: 0
-HBA Port WWN: 210100e08b274cb5
- Port Mode: Initiator
- OS Device Name: /dev/cfg/c2
- Manufacturer: QLogic Corp.
- Model: 375-3108-xx
- Firmware Version: 3.3.116
- FCode/BIOS Version: 1.13.08
- Serial Number: 0402F00-0549112808
- Driver Name: qlc
- Driver Version: 20070212-2.19
- Type: N-port
- State: online
- Supported Speeds: 1Gb 2Gb
- Current Speed: 2Gb
- Node WWN: 200100e08b274cb5
- Link Error Statistics:
- Link Failure Count: 0
- Loss of Sync Count: 0
- Loss of Signal Count: 0
- Primitive Seq Protocol Error Count: 0
- Invalid Tx Word Count: 0
- Invalid CRC Count: 0
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 4 \fRListing All Remote Ports
-.sp
-.LP
-The following command lists all remote ports that are visible through the given
-\fBHBA\fR port:
-
-.sp
-.in +2
-.nf
-# \fBfcinfo remote-port -p 210100e08b274cb5\fR
-
-Remote Port WWN: 50020f230000b4af
- Active FC4 Types: SCSI
- SCSI Target: yes
- Port Symbolic Name: unknown
- Node WWN: 50020f200000b4af
-Remote Port WWN: 210000e08b07daa6
- Active FC4 Types: SCSI
- SCSI Target: no
- Port Symbolic Name: unknown
- Node WWN: 200000e08b07daa6
-Remote Port WWN: 20030003ba27c788
- Active FC4 Types: SCSI
- SCSI Target: yes
- Port Symbolic Name: unknown
- Node WWN: 10000003ba27c788
-Remote Port WWN: 210000e08b096a60
- Active FC4 Types: SCSI,IP
- SCSI Target: no
- Port Symbolic Name: unknown
- Node WWN: 200000e08b096a60
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 5 \fRListing Remote Ports and Link Statistics
-.sp
-.LP
-The following command lists information for the remote ports and the link
-statistics for those ports:
-
-.sp
-.in +2
-.nf
-# \fBfcinfo remote-port -l -p 210100e08b272ab5\fR
-
-Remote Port WWN: 210100e08b296a60
- Active FC4 Types: SCSI,IP
- SCSI Target: no
- Port Symbolic Name: unknown
- Node WWN: 200100e08b296a60
- Link Error Statistics:
- Link Failure Count: 0
- Loss of Sync Count: 0
- Loss of Signal Count: 0
- Primitive Seq Protocol Error Count: 0
- Invalid Tx Word Count: 0
- Invalid CRC Count: 0
-Remote Port WWN: 20030003ba27d56d
- Active FC4 Types: SCSI
- SCSI Target: yes
- Port Symbolic Name: unknown
- Node WWN: 10000003ba27d56d
- Link Error Statistics:
- Link Failure Count: 0
- Loss of Sync Count: 4765165
- Loss of Signal Count: 4765165
- Primitive Seq Protocol Error Count: 0
- Invalid Tx Word Count: 0
- Invalid CRC Count: 0
-Remote Port WWN: 210100e08b27f7a6
- Active FC4 Types: SCSI
- SCSI Target: no
- Port Symbolic Name: unknown
- Node WWN: 200100e08b27f7a6
- Link Error Statistics:
- Link Failure Count: 0
- Loss of Sync Count: 0
- Loss of Signal Count: 0
- Primitive Seq Protocol Error Count: 0
- Invalid Tx Word Count: 0
- Invalid CRC Count: 0
-Remote Port WWN: 50020f230000b897
- Active FC4 Types: SCSI
- SCSI Target: yes
- Port Symbolic Name: unknown
- Node WWN: 50020f200000b897
- Link Error Statistics:
- Link Failure Count: 0
- Loss of Sync Count: 7
- Loss of Signal Count: 7
- Primitive Seq Protocol Error Count: 0
- Invalid Tx Word Count: 0
- Invalid CRC Count: 0
-Remote Port WWN: 210100e08b27daa6
- Active FC4 Types: SCSI
- SCSI Target: no
- Port Symbolic Name: unknown
- Node WWN: 200100e08b27daa6
- Link Error Statistics:
- Link Failure Count: 0
- Loss of Sync Count: 0
- Loss of Signal Count: 0
- Primitive Seq Protocol Error Count: 0
- Invalid Tx Word Count: 0
- Invalid CRC Count: 0
-Remote Port WWN: 210000e08b074cb5
- Active FC4 Types: SCSI,IP
- SCSI Target: no
- Port Symbolic Name: unknown
- Node WWN: 200000e08b074cb5
- Link Error Statistics:
- Link Failure Count: 0
- Loss of Sync Count: 0
- Loss of Signal Count: 0
- Primitive Seq Protocol Error Count: 0
- Invalid Tx Word Count: 0
- Invalid CRC Count: 0
-Remote Port WWN: 210100e08b296060
- Active FC4 Types: SCSI
- SCSI Target: no
- Port Symbolic Name: unknown
- Node WWN: 200100e08b296060
- Link Error Statistics:
- Link Failure Count: 0
- Loss of Sync Count: 0
- Loss of Signal Count: 0
- Primitive Seq Protocol Error Count: 0
- Invalid Tx Word Count: 0
- Invalid CRC Count: 0
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 6 \fRListing All SCSI Targets and Link Statistics
-.sp
-.LP
-The following command lists all remote ports as well as the link statistics and
-\fIscsi-target\fR information:
-
-.sp
-.in +2
-.nf
-# \fBfcinfo remote-port -sl -p 210100e08b272ab5\fR
-
-Remote Port WWN: 210100e08b296a60
- Active FC4 Types: SCSI,IP
- SCSI Target: no
- Port Symbolic Name: unknown
- Node WWN: 200100e08b296a60
- Link Error Statistics:
- Link Failure Count: 0
- Loss of Sync Count: 0
- Loss of Signal Count: 0
- Primitive Seq Protocol Error Count: 0
- Invalid Tx Word Count: 0
- Invalid CRC Count: 0
-Remote Port WWN: 20030003ba27d56d
- Active FC4 Types: SCSI
- SCSI Target: yes
- Port Symbolic Name: unknown
- Node WWN: 10000003ba27d56d
- Link Error Statistics:
- Link Failure Count: 0
- Loss of Sync Count: 4765165
- Loss of Signal Count: 4765165
- Primitive Seq Protocol Error Count: 0
- Invalid Tx Word Count: 0
- Invalid CRC Count: 0
- LUN: 0
- Vendor: SUN
- Product: T4
- OS Device Name: /dev/rdsk/c4t20030003BA27D56Dd0s2
- LUN: 1
- Vendor: SUN
- Product: T4
- OS Device Name: /dev/rdsk/c4t20030003BA27D56Dd1s2
-Remote Port WWN: 210100e08b27f7a6
- Active FC4 Types: SCSI
- SCSI Target: no
- Port Symbolic Name: unknown
- Node WWN: 200100e08b27f7a6
- Link Error Statistics:
- Link Failure Count: 0
- Loss of Sync Count: 0
- Loss of Signal Count: 0
- Primitive Seq Protocol Error Count: 0
- Invalid Tx Word Count: 0
- Invalid CRC Count: 0
-Remote Port WWN: 50020f230000b897
- Active FC4 Types: SCSI
- SCSI Target: yes
- Port Symbolic Name: unknown
- Node WWN: 50020f200000b897
- Link Error Statistics:
- Link Failure Count: 0
- Loss of Sync Count: 7
- Loss of Signal Count: 7
- Primitive Seq Protocol Error Count: 0
- Invalid Tx Word Count: 0
- Invalid CRC Count: 0
- LUN: 0
- Vendor: SUN
- Product: T300
- OS Device Name: Unknown
- LUN: 1
- Vendor: SUN
- Product: T300
- OS Device Name: /dev/rdsk/c4t50020F230000B897d1s2
- LUN: 2
- Vendor: SUN
- Product: T300
- OS Device Name: /dev/rdsk/c4t50020F230000B897d2s2
- LUN: 3
- Vendor: SUN
- Product: T300
- OS Device Name: /dev/rdsk/c4t50020F230000B897d3s2
- LUN: 4
- Vendor: SUN
- Product: T300
- OS Device Name: /dev/rdsk/c4t50020F230000B897d4s2
- LUN: 5
- Vendor: SUN
- Product: T300
- OS Device Name: /dev/rdsk/c4t50020F230000B897d5s2
- LUN: 6
- Vendor: SUN
- Product: T300
- OS Device Name: /dev/rdsk/c4t50020F230000B897d6s2
- LUN: 7
- Vendor: SUN
- Product: T300
- OS Device Name: /dev/rdsk/c4t50020F230000B897d7s2
- LUN: 8
- Vendor: SUN
- Product: T300
- OS Device Name: /dev/rdsk/c4t50020F230000B897d8s2
- LUN: 9
- Vendor: SUN
- Product: T300
- OS Device Name: /dev/rdsk/c4t50020F230000B897d9s2
- LUN: 10
- Vendor: SUN
- Product: T300
- OS Device Name: /dev/rdsk/c4t50020F230000B897d10s2
- LUN: 11
- Vendor: SUN
- Product: T300
- OS Device Name: /dev/rdsk/c4t50020F230000B897d11s2
- LUN: 12
- Vendor: SUN
- Product: T300
- OS Device Name: /dev/rdsk/c4t50020F230000B897d12s2
- LUN: 13
- Vendor: SUN
- Product: T300
- OS Device Name: /dev/rdsk/c4t50020F230000B897d13s2
- LUN: 14
- Vendor: SUN
- Product: T300
- OS Device Name: /dev/rdsk/c4t50020F230000B897d14s2
- LUN: 15
- Vendor: SUN
- Product: T300
- OS Device Name: /dev/rdsk/c4t50020F230000B897d15s2
-Remote Port WWN: 210100e08b27daa6
- Active FC4 Types: SCSI
- SCSI Target: no
- Port Symbolic Name: unknown
- Node WWN: 200100e08b27daa6
- Link Error Statistics:
- Link Failure Count: 0
- Loss of Sync Count: 0
- Loss of Signal Count: 0
- Primitive Seq Protocol Error Count: 0
- Invalid Tx Word Count: 0
- Invalid CRC Count: 0
-Remote Port WWN: 210000e08b074cb5
- Active FC4 Types: SCSI,IP
- SCSI Target: no
- Port Symbolic Name: unknown
- Node WWN: 200000e08b074cb5
- Link Error Statistics:
- Link Failure Count: 0
- Loss of Sync Count: 0
- Loss of Signal Count: 0
- Primitive Seq Protocol Error Count: 0
- Invalid Tx Word Count: 0
- Invalid CRC Count: 0
-Remote Port WWN: 210100e08b296060
- Active FC4 Types: SCSI
- SCSI Target: no
- Port Symbolic Name: unknown
- Node WWN: 200100e08b296060
- Link Error Statistics:
- Link Failure Count: 0
- Loss of Sync Count: 0
- Loss of Signal Count: 0
- Primitive Seq Protocol Error Count: 0
- Invalid Tx Word Count: 0
- Invalid CRC Count: 0
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 7 \fRListing SCSI Target Information
-.sp
-.LP
-The following command lists all remote ports as well as the \fIscsi-target\fR
-information:
-
-.sp
-.in +2
-.nf
-# \fBfcinfo remote-port -s -p 210100e08b272ab5\fR
-
-Remote Port WWN: 210100e08b296a60
- Active FC4 Types: SCSI,IP
- SCSI Target: no
- Port Symbolic Name: unknown
- Node WWN: 200100e08b296060
-Remote Port WWN: 20030003ba27d56d
- Active FC4 Types: SCSI
- SCSI Target: yes
- Port Symbolic Name: unknown
- Node WWN: 10000003ba27d56d
- LUN: 0
- Vendor: SUN
- Product: T4
- OS Device Name: /dev/rdsk/c4t20030003BA27D56Dd0s2
- LUN: 1
- Vendor: SUN
- Product: T4
- OS Device Name: /dev/rdsk/c4t20030003BA27D56Dd1s2
-Remote Port WWN: 210100e08b27f7a6
- Active FC4 Types: SCSI
- SCSI Target: no
- Port Symbolic Name: unknown
- Node WWN: 200100e08b27f7a6
-Remote Port WWN: 50020f230000b897
- Active FC4 Types: SCSI
- SCSI Target: yes
- Port Symbolic Name: unknown
- Node WWN: 50020f200000b897
- LUN: 0
- Vendor: SUN
- Product: T300
- OS Device Name: Unknown
- LUN: 1
- Vendor: SUN
- Product: T300
- OS Device Name: /dev/rdsk/c4t50020F230000B897d1s2
- LUN: 2
- Vendor: SUN
- Product: T300
- OS Device Name: /dev/rdsk/c4t50020F230000B897d2s2
- LUN: 3
- Vendor: SUN
- Product: T300
- OS Device Name: /dev/rdsk/c4t50020F230000B897d3s2
- LUN: 4
- Vendor: SUN
- Product: T300
- OS Device Name: /dev/rdsk/c4t50020F230000B897d4s2
- LUN: 5
- Vendor: SUN
- Product: T300
- OS Device Name: /dev/rdsk/c4t50020F230000B897d5s2
- LUN: 6
- Vendor: SUN
- Product: T300
- OS Device Name: /dev/rdsk/c4t50020F230000B897d6s2
- LUN: 7
- Vendor: SUN
- Product: T300
- OS Device Name: /dev/rdsk/c4t50020F230000B897d7s2
- LUN: 8
- Vendor: SUN
- Product: T300
- OS Device Name: /dev/rdsk/c4t50020F230000B897d8s2
- LUN: 9
- Vendor: SUN
- Product: T300
- OS Device Name: /dev/rdsk/c4t50020F230000B897d9s2
- LUN: 10
- Vendor: SUN
- Product: T300
- OS Device Name: /dev/rdsk/c4t50020F230000B897d10s2
- LUN: 11
- Vendor: SUN
- Product: T300
- OS Device Name: /dev/rdsk/c4t50020F230000B897d11s2
- LUN: 12
- Vendor: SUN
- Product: T300
- OS Device Name: /dev/rdsk/c4t50020F230000B897d12s2
- LUN: 13
- Vendor: SUN
- Product: T300
- OS Device Name: /dev/rdsk/c4t50020F230000B897d13s2
- LUN: 14
- Vendor: SUN
- Product: T300
- OS Device Name: /dev/rdsk/c4t50020F230000B897d14s2
- LUN: 15
- Vendor: SUN
- Product: T300
- OS Device Name: /dev/rdsk/c4t50020F230000B897d15s2
-Remote Port WWN: 210100e08b27daa6
- Active FC4 Types: SCSI
- SCSI Target: no
- Port Symbolic Name: unknown
- Node WWN: 200100e08b27daa6
-Remote Port WWN: 210000e08b074cb5
- Active FC4 Types: SCSI,IP
- SCSI Target: no
- Port Symbolic Name: unknown
- Node WWN: 200000e08b074cb5
-Remote Port WWN: 210100e08b296060
- Active FC4 Types: SCSI
- SCSI Target: no
- Port Symbolic Name: unknown
- Node WWN: 200100e08b296060
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 8 \fRListing the Logical Unit
-.sp
-.LP
-The following command lists the logical unit:
-
-.sp
-.in +2
-.nf
-# \fBfcinfo logical-unit\fR
-
-/dev/rdsk/c0t600C0FF0000000000036223AE73EB705d0s2
-/dev/rdsk/c0t600C0FF00000000000362272539E5B03d0s2
-/dev/rmt/0n
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 9 \fRDisplaying Additional Information for the Logical Unit
-.sp
-.LP
-The following command displays additional information about the logical unit
-using the \fB-v\fR option for device \fB/dev/rmt/On\fR:
-
-.sp
-.in +2
-.nf
-# \fBfcinfo lu -v /dev/rmt/On\fR
-
- OS Device Name: /dev/rmt/0n
- HBA Port WWN: 210000e07c030b91
- Remote Port WWN: 21010003b7830a6
- LUN: 0
- Vendor: STK
- Product: 9940A
- Device Type: Tape device
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The following command displays additional information about the logical unit
-using the \fB-v\fR option for device
-\fB/dev/rdsk/c0t600C0FF0000000000036223AE73EB705d0s2\fR
-
-.sp
-.in +2
-.nf
-# \fBfcinfo logical-unit -v \e\fR
- \fB/dev/rdsk/c0t600C0FF0000000000036223AE73EB705d0s2\fR
-
- OS Device Name: /dev/rdsk/c0t600C0FF0000000000036223AE73EB705d0s2
- HBA Port WWN: 210100e08b27a8a1
- Remote Port WWN: 256000c0ffc03622
- LUN: 0
- Remote Port WWN: 216000c0ff803622
- LUN: 0
- HBA Port WWN: 210000e08b07a8a1
- Remote Port WWN: 256000c0ffc03622
- LUN: 0
- Remote Port WWN: 216000c0ff803622
- LUN: 0
- Vendor: SUN
- Product: StorEdge 3510
- Device Type: Disk device
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 10 \fRAdding an NIPV Port
-.sp
-.LP
-The following command adds an NPIV port to the HBA with a port name:
-
-.sp
-.in +2
-.nf
-210000e08b170f1c
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The NPIV port has a port name of \fB2000000000000001\fR and a node name of
-\fB2100000000000001\fR.
-
-.sp
-.in +2
-.nf
-# \fBfcadm create-npiv-port -p 2000000000000001 -n 2100000000000001 \e
-210000e08b170f1c\fR
-
-Created NPIV Port:
- HBA Port WWN: 2000000000000001
- Node WWN: 2100000000000001
- Physical HBA Port WWN: 210000e08b170f1c
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 11 \fRAdding an NIPV Port with Random WWN
-.sp
-.LP
-The following command adds an NPIV port to the HBA with a randomly assigned
-port name of \fB210000e08b170f1c\fR.
-
-.sp
-.in +2
-.nf
-# \fBfcadm create-npiv-port 210000e08b170f1c\fR
-
-Created NPIV Port:
- HBA Port WWN: 2038295824942801
- Node WWN: 2100392849248001
- Physical HBA Port WWN: 210000e08b170f1c
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 12 \fRDeleting an NIPV Port
-.sp
-.LP
-The following command deletes an NPIV port.
-
-.sp
-.in +2
-.nf
-# \fBfcadm delete-npiv-port -p 2000000000000001 -w 2100000000000001 \e
-210000e08b170f1c\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 13 \fRCreating an FCoE Target Port
-.sp
-.LP
-The following command creates an FCoE port associated with the MAC interface
-\fBnxge0\fR.
-
-.sp
-.in +2
-.nf
-# \fBfcadm create-fcoe-port -t nxge0\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 14 \fRDeleting an FCoE Port
-.sp
-.LP
-The following command deletes the FCoE port associated with the MAC interface
-\fBnxge0\fR.
-
-.sp
-.in +2
-.nf
-# \fBfcadm delete-fcoe-port -t nxge0\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 15 \fRListing Information for an FCoE Port
-.sp
-.LP
-The following command lists information for FCoE ports.
-
-.sp
-.in +2
-.nf
-# \fBfcadm list-fcoe-ports\fR
-HBA Port WWN: 200000144fc2d508
- Port Type: Target
- MAC Name: nxge0
- MTU Size: 9194
- MAC Factory Address: 00144fc2d508
- MAC Current Address: 00144fc2d508
-HBA Port WWN: 200000144fc2d509
- Port Type: Target
- MAC Name: nxge1
- MTU Size: 9194
- MAC Factory Address: 00144fc2d509
- MAC Current Address: 00144fc2d509
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 16 \fRReinitializing the Link of an FC Port
-.sp
-.LP
-The following command forces the link connected with the port
-\fB200000144fc2d508\fR to reinitialize.
-
-.sp
-.in +2
-.nf
-# \fBfcadm force-lip 200000144fc2d508\fR
-.fi
-.in -2
-.sp
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Committed
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBattributes\fR(5)
-.SH ERROR MESSAGES
-.sp
-.LP
-Errors that can occur in addition to the errors normally associated with system
-administration commands:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fB\fIHBA_port_WWN\fR: not found\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fB\fIRemote_port_WWN\fR: not found\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fB\fIHBA_port_WWN\fR: NPIV not supported on this HBA\fR
-.RE
diff --git a/usr/src/man/man1m/fdetach.1m b/usr/src/man/man1m/fdetach.1m
deleted file mode 100644
index 319e51f7b0..0000000000
--- a/usr/src/man/man1m/fdetach.1m
+++ /dev/null
@@ -1,49 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 1997 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH FDETACH 1M "Jul 5, 1990"
-.SH NAME
-fdetach \- detach a name from a STREAMS-based file descriptor
-.SH SYNOPSIS
-.LP
-.nf
-\fBfdetach\fR \fIpath\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBfdetach\fR command detaches a \fBSTREAMS-based\fR file descriptor from a
-name in the file system. Use the \fIpath\fR operand to specify the path name of
-the object in the file system name space, which was previously attached. See
-\fBfattach\fR(3C).
-.sp
-.LP
-The user must be the owner of the file or a user with the appropriate
-privileges. All subsequent operations on \fIpath\fR will operate on the
-underlying file system entry and not on the \fBSTREAMS\fR file. The permissions
-and status of the entry are restored to the state they were in before the
-\fBSTREAMS\fR file was attached to the entry.
-.SH OPERANDS
-.sp
-.LP
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fB\fIpath\fR\fR
-.ad
-.RS 8n
-Specifies the path name of the object in the file system name space, which was
-previously attached.
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBfattach\fR(3C), \fBfdetach\fR(3C), \fBattributes\fR(5), \fBstreamio\fR(7I)
-.sp
-.LP
-\fI\fR
diff --git a/usr/src/man/man1m/fdisk.1m b/usr/src/man/man1m/fdisk.1m
deleted file mode 100644
index ac625ab16e..0000000000
--- a/usr/src/man/man1m/fdisk.1m
+++ /dev/null
@@ -1,856 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 2018 OmniOS Community Edition (OmniOSce) Association.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
-.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH FDISK 1M "Dec 06, 2018"
-.SH NAME
-fdisk \- create or modify fixed disk partition table
-.SH SYNOPSIS
-.LP
-.nf
-\fBfdisk\fR [\fB-o\fR \fIoffset\fR] [\fB-s\fR \fIsize\fR] [\fB-P\fR \fIfill_patt\fR] [\fB-S\fR \fIgeom_file\fR]
- [\fB-w\fR | \fB-r\fR | \fB-d\fR | \fB-n\fR | \fB-I\fR | \fB-B\fR | \fB-t\fR | \fB-T\fR | \fB-g\fR | \fB-G\fR | \fB-R\fR]
- [-\fB-F\fR \fIfdisk_file\fR] [ [\fB-v\fR] \fB-W\fR {\fIfdisk_file\fR | \(mi}]
- [\fB-h\fR] [\fB-b\fR \fImasterboot\fR]
- [\fB-A\fR \fIid\fR : \fIact\fR : \fIbhead\fR : \fIbsect\fR : \fIbcyl\fR : \fIehead\fR : \fIesect\fR :
- \fIecyl\fR : \fIrsect\fR : \fInumsect\fR]
- [\fB-D\fR \fIid\fR : \fIact\fR : \fIbhead:\fR \fIbsect\fR : \fIbcyl\fR : \fIehead:\fR \fIesect\fR :
- \fIecyl\fR : \fIrsect\fR : \fInumsect\fR] \fIrdevice\fR
- [\fB-E\fR [\fIslot\fR : \fIactive\fR]]
- \fIrdevice\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-This command is used to do the following:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Create and modify an \fBfdisk\fR partition table on x86 systems
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Create and modify an \fBfdisk\fR partition table on removable media on SPARC or
-x86 systems
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Install the master boot record that is put in the first sector of the fixed
-disk on x86 systems only
-.RE
-.sp
-.LP
-This table is used by the first-stage bootstrap (or firmware) to identify parts
-of the disk reserved for different operating systems, and to identify the
-partition containing the second-stage bootstrap (the \fIactive\fR Solaris
-partition). The \fIrdevice\fR argument must be used to specify the raw device
-associated with the fixed disk, for example, \fB/dev/rdsk/c0t0d0p0\fR.
-.sp
-.LP
-The program can operate in three different modes. The first is interactive
-mode. In interactive mode, the program displays the partition table as it
-exists on the disk, and then presents a menu allowing the user to modify the
-table. The menu, questions, warnings, and error messages are intended to be
-self-explanatory.
-.sp
-.LP
-In interactive mode, if there is no partition table on the disk, the user is
-given the options of creating a default partitioning or specifying the initial
-table values. The default partitioning allocates the entire disk for the
-Solaris system and makes the Solaris system partition active. In either case,
-when the initial table is created, \fBfdisk\fR also writes out the first-stage
-bootstrap (x86 only) code along with the partition table. In this mode, (x86
-only) when creating an entry for a non-EFI partition on a disk that is larger
-than 2 TB (terabytes), \fBfdisk\fR warns that the maximum size of the partition
-is 2 TB. Under these conditions percentages displayed by \fBfdisk\fR are based
-on 2 TB.
-.sp
-.LP
-The second mode of operation is used for automated entry addition, entry
-deletion, or replacement of the entire \fBfdisk\fR table. This mode can add or
-delete an entry described on the command line. In this mode the entire
-\fBfdisk\fR table can be read in from a file replacing the original table.
-\fBfdisk\fR can also be used to create this file. There is a command line
-option that will cause \fBfdisk\fR to replace any \fBfdisk\fR table with the
-default of the whole disk for the Solaris system.
-.sp
-.LP
-The third mode of operation is used for disk diagnostics. In this mode, a
-section of the disk can be filled with a user-specified pattern and mode
-sections of the disk can also be read or written.
-.LP
-Note -
-.sp
-.RS 2
-The third mode of operation is not currently supported for extended partitions
-.RE
-.sp
-.LP
-When \fBfdisk\fR creates a partition, the space is allocated in the \fBfdisk\fR
-partition table, but the allocated disk space is not initialized.
-\fBnewfs\fR(1M) is required to create and write file system metadata to the new
-partition, and \fBformat\fR(1M) is required to write the VTOC or EFI/GPT
-metadata.
-.SS "Menu Options"
-.LP
-The menu options for interactive mode given by the \fBfdisk\fR program are:
-.sp
-.ne 2
-.na
-\fB\fBCreate a partition\fR\fR
-.ad
-.sp .6
-.RS 4n
-This option allows the user to create a new partition. The maximum number of
-partitions is 4. The program will ask for the type of the partition (SOLARIS,
-MS-DOS, UNIX, or other). It will then ask for the size of the partition as a
-percentage of the disk. The user may also enter the letter \fBc\fR at this
-point, in which case the program will ask for the starting cylinder number and
-size of the partition in cylinders. If a \fBc\fR is not entered, the program
-will determine the starting cylinder number where the partition will fit. In
-either case, if the partition would overlap an existing partition or will not
-fit, a message is displayed and the program returns to the original menu.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBChange Active (Boot from) partition\fR\fR
-.ad
-.sp .6
-.RS 4n
-This option allows the user to specify the partition where the first-stage
-bootstrap will look for the second-stage bootstrap, otherwise known as the
-\fIactive\fR partition.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBDelete a partition\fR\fR
-.ad
-.sp .6
-.RS 4n
-This option allows the user to delete a previously created partition. Note that
-this will destroy all data in that partition.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBChange between Solaris and Solaris2 Partition IDs\fR\fR
-.ad
-.sp .6
-.RS 4n
-This option allows the user to switch between the current \fBfdisk\fR operating
-system partition identifier and the previous one. This does not affect any data
-in the disk partition and is provided for compatibility with older software.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEdit/View extended partitions\fR\fR
-.ad
-.sp .6
-.RS 4n
-This option provides the extended partition menu to the user. Use the extended
-partition menu to add and delete logical drives, change the sysid of the
-logical drives, and display logical drive information. To commit the changes
-made in the extended partition, you must return to the main menu using the
-extended partition submenu option \fBr\fR. There is also an option to display
-the list of options that the extended partition submenu supports. Given below
-is the list:
-.sp
-.ne 2
-.na
-\fB\fBa\fR\fR
-.ad
-.RS 5n
-Add a logical drive.
-.sp
-Use this submenu option to add a logical drive. There are three pieces of
-information that are required: The beginning cylinder, the size (in cylinders
-or in human readable form - KB, MB, or GB), and the partition ID. While
-specifying the partition ID, there is an option (\fBI\fR) that you can use to
-list the supported partitions.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBd\fR\fR
-.ad
-.RS 5n
-Delete a logical drive.
-.sp
-Use this submenu option to delete a logical drive. The only input required is
-the number of the logical drive that is to be deleted.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBh\fR\fR
-.ad
-.RS 5n
-Display the help menu.
-.sp
-This submenu option displays the supported operations in the extended partition
-submenu.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBi\fR\fR
-.ad
-.RS 5n
-Change the id of the logical drive.
-.sp
-Use this submenu option to change the system ID of the existing logical drives.
-A list of supported system IDs is displayed when you use the \fBI\fR option
-when in this submenu.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBp\fR\fR
-.ad
-.RS 5n
-Display the logical drive layout.
-.sp
-Displays the logical drive information to stdout. This output reflects any
-changes made during the current run of the \fBfdisk\fR program. The changes are
-not committed to the disk until return to the main menu (using the submenu
-\fBr\fR) and choose the option to commit the changes to the disk.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBr\fR\fR
-.ad
-.RS 5n
-Return to the main \fBfdisk\fR menu.
-.sp
-Exit the extended partition submenu and return to the main menu.
-.RE
-
-.RE
-
-.sp
-.LP
-Use the following options to include your modifications to the partition table
-at this time or to cancel the session without modifying the table:
-.sp
-.ne 2
-.na
-\fB\fBExit\fR\fR
-.ad
-.RS 10n
-This option writes the new version of the table created during this session
-with \fBfdisk\fR out to the fixed disk, and exits the program.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBCancel\fR\fR
-.ad
-.RS 10n
-This option exits without modifying the partition table.
-.RE
-
-.SH OPTIONS
-.LP
-The following options apply to \fBfdisk\fR:
-.sp
-.ne 2
-.na
-\fB\fB-A\fR \fIid:act:bhead:bsect:bcyl:ehead:esect:ecyl:rsect:numsect\fR\fR
-.ad
-.sp .6
-.RS 4n
-Add a partition as described by the argument (see the \fB-F\fR option below for
-the format). Use of this option will zero out the \fBVTOC\fR on the Solaris
-partition if the \fBfdisk\fR table changes.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-b\fR \fImaster_boot\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify the file \fImaster_boot\fR as the master boot program. The default
-master boot program is \fB/boot/pmbr\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-B\fR\fR
-.ad
-.sp .6
-.RS 4n
-Default to one Solaris partition that uses the whole disk. On an x86 machine,
-if the disk is larger than 2 TB (terabytes), the default size of the Solaris
-partition will be limited to 2 TB.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-d\fR\fR
-.ad
-.sp .6
-.RS 4n
-Turn on verbose \fIdebug\fR mode. This will cause \fBfdisk\fR to print its
-state on stderr as it is used. The output from this option should not be used
-with \fB-F\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-D\fR \fIid:act:bhead:bsect:bcyl:ehead:esect:ecyl:rsect:numsect\fR\fR
-.ad
-.sp .6
-.RS 4n
-Delete a partition as described by the argument (see the \fB-F\fR option below
-for the format). Note that the argument must be an exact match or the entry
-will not be deleted! Use of this option will zero out the \fBVTOC\fR on the
-Solaris partition if the \fBfdisk\fR table changes.
-.RE
-
-.sp
-.ne 2
-.na
-\fB-E\fR [\fIslot\fR:\fIactive\fR]
-.ad
-.sp .6
-.RS 4n
-Create an \fBEFI\fR partition that uses the entire disk.
-.sp
-By default this partition entry will be placed into the first slot within the
-partition table and will not be marked active. The remaining slots within the
-table will be zeroed out.
-.sp
-Some broken firmware implementations have issues booting in CSM/Legacy/BIOS
-mode from EFI partitions that are not set active. Others have issues with
-booting from EFI partitions without UEFI if the protective partition table
-entry is in the first slot. To work around these problems, the \fB-E\fR
-option takes an optional argument which can be used to override the defaults
-described above.
-
-.sp
-.ne 2
-.na
-\fB\fIslot\fR\fR
-.ad
-.RS 11n
-Specify the MBR slot into which the EFI partition should be placed. This accepts a value in the range 0 to 3 with the default being 0.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIactive\fR\fR
-.ad
-.RS 11n
-Specify whether the EFI partition entry should be marked active; \fB0\fR specifies not active (the default) and \fB1\fR means active.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-F\fR \fIfdisk_file\fR\fR
-.ad
-.sp .6
-.RS 4n
-Use fdisk file \fIfdisk_file\fR to initialize table. Use of this option will
-zero out the \fBVTOC\fR on the Solaris partition if the \fBfdisk\fR table
-changes.
-.sp
-The \fIfdisk_file\fR contains four specification lines for the primary
-partitions followed by specification lines for the logical drives. You must
-have four lines for the primary partitions if there is at least one logical
-drive. In this case, if the number of primary partitions to be configured is
-less than four, the remaining lines should be filled with zeros.
-.sp
-Each line is composed of entries that are position-dependent, are separated by
-whitespace or colons, and have the following format:
-.sp
-\fIid act bhead bsect bcyl ehead esect ecyl rsect numsect\fR
-.sp
-\&...where the entries have the following values:
-.sp
-.ne 2
-.na
-\fB\fIid\fR\fR
-.ad
-.RS 11n
-This is the type of partition and the correct numeric values may be found in
-\fBfdisk.h\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIact\fR\fR
-.ad
-.RS 11n
-This is the active partition flag; \fB0\fR means not active and \fB128\fR means
-active. For logical drives, this flag will always be set to 0 even if specified
-as 128 by the user.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIbhead\fR\fR
-.ad
-.RS 11n
-This is the head where the partition starts. If this is set to \fB0\fR,
-\fBfdisk\fR will correctly fill this in from other information.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIbsect\fR\fR
-.ad
-.RS 11n
-This is the sector where the partition starts. If this is set to \fB0\fR,
-\fBfdisk\fR will correctly fill this in from other information.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIbcyl\fR\fR
-.ad
-.RS 11n
-This is the cylinder where the partition starts. If this is set to \fB0\fR,
-\fBfdisk\fR will correctly fill this in from other information.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIehead\fR\fR
-.ad
-.RS 11n
-This is the head where the partition ends. If this is set to \fB0\fR,
-\fBfdisk\fR will correctly fill this in from other information.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIesect\fR\fR
-.ad
-.RS 11n
-This is the sector where the partition ends. If this is set to \fB0\fR,
-\fBfdisk\fR will correctly fill this in from other information.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIecyl\fR\fR
-.ad
-.RS 11n
-This is the cylinder where the partition ends. If this is set to \fB0\fR,
-\fBfdisk\fR will correctly fill this in from other information.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIrsect\fR\fR
-.ad
-.RS 11n
-The relative sector from the beginning of the disk where the partition starts.
-This must be specified and can be used by \fBfdisk\fR to fill in other fields.
-For logical drives, you must make sure that there are at least 63 free sectors
-before the \fIrsect\fR specified for a logical drive.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fInumsect\fR\fR
-.ad
-.RS 11n
-The size in sectors of this disk partition. This must be specified and can be
-used by \fBfdisk\fR to fill in other fields.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-g\fR\fR
-.ad
-.sp .6
-.RS 4n
-Get the label geometry for disk and display on stdout (see the \fB-S\fR option
-for the format).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-G\fR\fR
-.ad
-.sp .6
-.RS 4n
-Get the physical geometry for disk and display on stdout (see the \fB-S\fR
-option for the format).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-h\fR\fR
-.ad
-.sp .6
-.RS 4n
-Issue verbose message; message will list all options and supply an explanation
-for each.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-I\fR\fR
-.ad
-.sp .6
-.RS 4n
-Forgo device checks. This is used to generate a file image of what would go on
-a disk without using the device. Note that you must use \fB-S\fR with this
-option (see above).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR\fR
-.ad
-.sp .6
-.RS 4n
-Don't update \fBfdisk\fR table unless explicitly specified by another option.
-If no other options are used, \fB-n\fR will only write the master boot record
-to the disk. In addition, note that \fBfdisk\fR will not come up in interactive
-mode if the \fB-n\fR option is specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-o\fR \fIoffset\fR\fR
-.ad
-.sp .6
-.RS 4n
-Block offset from start of disk. This option is used for \fB-P\fR, \fB-r\fR,
-and \fB-w\fR. Zero is assumed when this option is not used.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-P\fR \fIfill_patt\fR\fR
-.ad
-.sp .6
-.RS 4n
-Fill disk with pattern \fIfill_patt\fR. \fIfill_patt\fR can be decimal or hex
-and is used as number for constant long word pattern. If \fIfill_patt\fR is
-\fB#\fR, then pattern is block # for each block. Pattern is put in each block
-as long words and fills each block (see \fB-o\fR and \fB-s\fR).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-r\fR\fR
-.ad
-.sp .6
-.RS 4n
-Read from disk and write to stdout. See \fB-o\fR and \fB-s\fR, which specify
-the starting point and size of the operation.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-R\fR\fR
-.ad
-.sp .6
-.RS 4n
-Treat disk as read-only. This is for testing purposes.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR \fIsize\fR\fR
-.ad
-.sp .6
-.RS 4n
-Number of blocks to perform operation on (see \fB-o\fR).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-S\fR \fIgeom_file\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set the label geometry to the content of the \fIgeom_file\fR. The
-\fIgeom_file\fR contains one specification line. Each line is delimited by a
-new-line character (\fB\en\fR). If the first character of a line is an asterisk
-(*), the line is treated as a comment. Each line is composed of entries that
-are position-dependent, are separated by white space, and have the following
-format:
-.sp
-.in +2
-.nf
-\fIpcyl ncyl acyl bcyl nheads nsectors sectsiz\fR
-.fi
-.in -2
-.sp
-
-where the entries have the following values:
-.sp
-.ne 2
-.na
-\fB\fIpcyl\fR\fR
-.ad
-.RS 12n
-This is the number of physical cylinders for the drive.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIncyl\fR\fR
-.ad
-.RS 12n
-This is the number of usable cylinders for the drive.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIacyl\fR\fR
-.ad
-.RS 12n
-This is the number of alt cylinders for the drive.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIbcyl\fR\fR
-.ad
-.RS 12n
-This is the number of offset cylinders for the drive (should be zero).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fInheads\fR\fR
-.ad
-.RS 12n
-The number of heads for this drive.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fInsectors\fR\fR
-.ad
-.RS 12n
-The number of sectors per track.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIsectsiz\fR\fR
-.ad
-.RS 12n
-The size in bytes of a sector.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-t\fR\fR
-.ad
-.sp .6
-.RS 4n
-Adjust incorrect slice table entries so that they will not cross partition
-table boundaries.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-T\fR\fR
-.ad
-.sp .6
-.RS 4n
-Remove incorrect slice table entries that span partition table boundaries.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.sp .6
-.RS 4n
-Output the HBA (virtual) geometry dimensions. This option must be used in
-conjunction with the \fB-W\fR flag. This option will work for platforms which
-support virtual geometry. (x86 only)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-w\fR\fR
-.ad
-.sp .6
-.RS 4n
-Write to disk and read from stdin. See \fB-o\fR and \fB-s\fR, which specify the
-starting point and size of the operation.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-W\fR \fB\(mi\fR\fR
-.ad
-.sp .6
-.RS 4n
-Output the disk table to \fBstdout\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-W\fR \fIfdisk_file\fR\fR
-.ad
-.sp .6
-.RS 4n
-Create an \fBfdisk\fR file \fIfdisk_file\fR from disk table. This can be used
-with the \fB-F\fR option below.
-.RE
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/dev/rdsk/c0t0d0p0\fR\fR
-.ad
-.RS 25n
-Raw device associated with the fixed disk.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/boot/pmbr\fR\fR
-.ad
-.RS 25n
-Default master boot program.
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture x86 and SPARC
-.TE
-
-.SH SEE ALSO
-.LP
-\fBuname\fR(1), \fBfmthard\fR(1M), \fBformat\fR(1M), \fBnewfs\fR(1M),
-\fBprtvtoc\fR(1M), \fBattributes\fR(5)
-.SH DIAGNOSTICS
-.LP
-Most messages will be self-explanatory. The following may appear immediately
-after starting the program:
-.sp
-.ne 2
-.na
-\fB\fBFdisk\fR: \fBcannot open\fR <\fBdevice\fR>\fR
-.ad
-.sp .6
-.RS 4n
-This indicates that the device name argument is not valid.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBFdisk\fR: \fBunable to get device parameters for device\fR
-<\fBdevice\fR>\fR
-.ad
-.sp .6
-.RS 4n
-This indicates a problem with the configuration of the fixed disk, or an error
-in the fixed disk driver.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBFdisk\fR: \fBerror reading partition table\fR\fR
-.ad
-.sp .6
-.RS 4n
-This indicates that some error occurred when trying initially to read the fixed
-disk. This could be a problem with the fixed disk controller or driver, or with
-the configuration of the fixed disk.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBFdisk\fR: \fBerror writing boot record\fR\fR
-.ad
-.sp .6
-.RS 4n
-This indicates that some error occurred when trying to write the new partition
-table out to the fixed disk. This could be a problem with the fixed disk
-controller, the disk itself, the driver, or the configuration of the fixed
-disk.
-.RE
-
diff --git a/usr/src/man/man1m/ff.1m b/usr/src/man/man1m/ff.1m
deleted file mode 100644
index 98673c9ad1..0000000000
--- a/usr/src/man/man1m/ff.1m
+++ /dev/null
@@ -1,236 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 1997, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH FF 1M "Feb 10, 1997"
-.SH NAME
-ff \- list file names and statistics for a file system
-.SH SYNOPSIS
-.LP
-.nf
-\fBff\fR [\fB-F\fR \fIFSType\fR] [\fB-V\fR] [\fIgeneric_options\fR] [\fB-o\fR \fIspecific_options\fR] \fIspecial\fR...
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBff\fR prints the pathnames and inode numbers of files in the file system
-which resides on the special device \fIspecial\fR. Other information about the
-files may be printed using options described below. Selection criteria may be
-used to instruct \fBff\fR to only print information for certain files. If no
-selection criteria are specified, information for all files considered will be
-printed (the default); the \fB-i\fR option may be used to limit files to those
-whose inodes are specified.
-.sp
-.LP
-Output is sorted in ascending inode number order. The default line produced
-by \fBff\fR is:
-.sp
-.LP
-\fIpath-name\fR \|i-number
-.sp
-.LP
-The maximum information the command will provide is:
-.sp
-.LP
-\fIpath-name\fR \|i-number \|size \|uid
-.SH OPTIONS
-.sp
-.ne 2
-.na
-\fB\fB-F\fR\fR
-.ad
-.RS 19n
-Specify the \fIFSType\fR on which to operate. The \fIFSType\fR should either
-be specified here or be determinable from \fB/etc/vfstab\fR by matching the
-\fIspecial\fR with an entry in the table, or by consulting
-\fB/etc/default/fs\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-V\fR\fR
-.ad
-.RS 19n
-Echo the complete command line, but do not execute the command. The command
-line is generated by using the options and arguments provided by the user and
-adding to them information derived from \fB/etc/vfstab\fR. This option may be
-used to verify and validate the command line.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIgeneric_options\fR\fR
-.ad
-.RS 19n
-Options that are supported by most FSType-specific modules of the command. The
-following options are available:
-.sp
-.ne 2
-.na
-\fB\fB-I\fR\fR
-.ad
-.RS 18n
-Do not print the i-node number after each path name.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR\fR
-.ad
-.RS 18n
-Generate a supplementary list of all path names for multiply-linked files.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR\fI prefix\fR\fR
-.ad
-.RS 18n
-The specified \fIprefix\fR will be added to each generated path name. The
-default is `.' (dot).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR\fR
-.ad
-.RS 18n
-Print the file size, in bytes, after each path name.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-u\fR\fR
-.ad
-.RS 18n
-Print the owner's login name after each path name.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-a\fR \fB-\fR\fIn\fR\fR
-.ad
-.RS 18n
-Select if the file has been accessed in \fIn\fR days.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-m\fR \fB-\fR\fIn\fR\fR
-.ad
-.RS 18n
-Select if the file has been written or created in \fIn\fR days.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-c\fR \fB-\fR\fIn\fR\fR
-.ad
-.RS 18n
-Select if file's status has been changed in \fIn\fR days.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR\fI file\fR\fR
-.ad
-.RS 18n
-Select if the file has been modified more recently than the argument
-\fBfile\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-i\fR\fI i-node-list\fR\fR
-.ad
-.RS 18n
-Generate names for only those i-nodes specified in \fIi-node-list\fR.
-\fIi-node-list\fR is a list of numbers separated by commas (with no intervening
-spaces).
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-o\fR\fR
-.ad
-.RS 19n
-Specify \fIFSType\fR-specific options in a comma separated (without spaces)
-list of suboptions and keyword-attribute pairs for interpretation by the
-\fIFSType\fR-specific module of the command.
-.RE
-
-.SH OPERANDS
-.sp
-.ne 2
-.na
-\fB\fIspecial\fR\fR
-.ad
-.RS 11n
-A special device.
-.RE
-
-.SH USAGE
-.sp
-.LP
-See \fBlargefile\fR(5) for the description of the behavior of \fBff\fR when
-encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/default/fs\fR\fR
-.ad
-.RS 19n
-default local file system type. Default values can be set for the following
-flags in \fB/etc/default/fs\fR. For example: \fBLOCAL=ufs\fR
-.sp
-.ne 2
-.na
-\fB\fBLOCAL\fR\fR
-.ad
-.RS 9n
-The default partition for a command if no FSType is specified.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/vfstab\fR\fR
-.ad
-.RS 19n
-list of default parameters for each file system
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBfind\fR(1), \fBncheck\fR(1M), \fBstat\fR(2), \fBvfstab\fR(4),
-\fBattributes\fR(5), \fBlargefile\fR(5) Manual pages for the
-\fIFSType\fR-specific modules of \fBff\fR.
-.SH NOTES
-.sp
-.LP
-This command may not be supported for all \fIFSTypes\fR.
-.sp
-.LP
-The \fB-a\fR, \fB-m\fR, and \fB-c\fR flags examine the \fBst_atime\fR,
-\fBst_mtime\fR, and \fBst_ctime\fR fields of the \fBstat\fR structure
-respectively. (See \fBstat\fR(2).)
diff --git a/usr/src/man/man1m/ff_ufs.1m b/usr/src/man/man1m/ff_ufs.1m
deleted file mode 100644
index e0b9801065..0000000000
--- a/usr/src/man/man1m/ff_ufs.1m
+++ /dev/null
@@ -1,69 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 1997, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH FF_UFS 1M "Feb 10, 1997"
-.SH NAME
-ff_ufs \- list file names and statistics for a ufs file system
-.SH SYNOPSIS
-.LP
-.nf
-\fBff\fR \fB-F\fR ufs [\fIgeneric_options\fR] [\fB-o\fR a,m,s] \fIspecial\fR...
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBff\fR prints the pathnames and inode numbers of files in the file system
-which resides on the special device \fIspecial\fR.
-.sp
-.LP
-See \fBff\fR(1M) for information regarding the \fBff\fR command. See
-\fBOPTIONS\fR for information regarding the ufs-specific options.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-o\fR\fR
-.ad
-.RS 6n
-Specify \fBufs\fR file system specific options. The following options available
-are:
-.sp
-.ne 2
-.na
-\fB\fBa\fR\fR
-.ad
-.RS 5n
-Print the `\fI\&.\fR' and `\fI\&.\|.\fR' directory entries.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBm\fR\fR
-.ad
-.RS 5n
-Print mode information. This option must be specified in conjunction with the
-\fB\fR\fB-i\fR\fB \fR\fIi-node-list\fR option (see \fBff\fR(1M)).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBs\fR\fR
-.ad
-.RS 5n
-Print only special files and files with set-user-ID mode.
-.RE
-
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBfind\fR(1), \fBff\fR(1M), \fBncheck\fR(1M), \fBattributes\fR(5)
diff --git a/usr/src/man/man1m/fiocompress.1m b/usr/src/man/man1m/fiocompress.1m
deleted file mode 100644
index df18c346a2..0000000000
--- a/usr/src/man/man1m/fiocompress.1m
+++ /dev/null
@@ -1,127 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH FIOCOMPRESS 1M "Dec 10, 2008"
-.SH NAME
-fiocompress \- file compression utility
-.SH SYNOPSIS
-.LP
-.nf
-\fB/sbin/fiocompress\fR \fB-c\fR [\fB-m\fR] [\fB-b\fR \fIblock_size\fR] \fIinput_file\fR \fIoutput_file\fR
-.fi
-
-.LP
-.nf
-\fB/sbin/fiocompress\fR \fB-d\fR \fIinput_file\fR \fIoutput_file\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBfiocompress\fR utility is a file compression tool that works together
-with the \fBdcfs\fR(7FS) file system to perform per-file compression. You can
-use \fBfiocompress\fR to decompress a compressed file or mark a compressed file
-as compressed, causing automatic decompression on read. The primary use of
-\fBfiocompress\fR is to compress files in the boot archive.
-.sp
-.LP
-Note that this utility is not a Committed interface. See \fBattributes\fR(5).
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-b\fR \fIblock_size\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify a block size for compression. The default block size is 8192.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-c\fR\fR
-.ad
-.sp .6
-.RS 4n
-Compress the specified file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-d\fR\fR
-.ad
-.sp .6
-.RS 4n
-Decompress the specified file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-m\fR\fR
-.ad
-.sp .6
-.RS 4n
-Mark the compressed file for automatic decompression on read. Can be used only
-in conjunction with \fB-c\fR.
-.RE
-
-.SH EXIT STATUS
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.sp .6
-.RS 4n
-The command completed successfully.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-1\fR\fR
-.ad
-.sp .6
-.RS 4n
-The command exited due to an error.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Private
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBboot\fR(1M), \fBbootadm\fR(1M), \fBdcfs\fR(7FS), \fBufs\fR(7FS),
-\fBattributes\fR(5)
-.SH NOTES
-.sp
-.LP
-This compression/decompression utility works only with files stored in a UFS
-file system.
-.sp
-.LP
-There is no obvious way to determine whether a given file is compressed, other
-than copying the file and comparing the number of disk blocks of the copy
-against the original.
diff --git a/usr/src/man/man1m/flowadm.1m b/usr/src/man/man1m/flowadm.1m
deleted file mode 100644
index 81d5259065..0000000000
--- a/usr/src/man/man1m/flowadm.1m
+++ /dev/null
@@ -1,847 +0,0 @@
-'\" te
-.\" Copyright 2020 Peter Tribble
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright (c) 2011, Joyent, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH FLOWADM 1M "February 5, 2022"
-.SH NAME
-flowadm \- administer bandwidth resource control and priority for protocols,
-services, containers, and virtual machines
-.SH SYNOPSIS
-.LP
-.nf
-\fBflowadm show-flow\fR [\fB-pP\fR] [\fB-S\fR] [\fB-s\fR [\fB-i\fR \fIinterval\fR]] [\fB-l\fR \fIlink\fR]
- [\fB-o\fR \fIfield\fR[,...]] [\fB-z\fR \fIzonename\fR] [\fIflow\fR]
-.fi
-
-.LP
-.nf
-\fBflowadm add-flow\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] [\fB-z\fR \fIzonename\fR] \fB-l\fR \fIlink\fR
- \fB-a\fR \fIattr\fR=\fIvalue\fR[,...] \fB-p\fR \fIprop\fR=\fIvalue\fR[,...] \fIflow\fR
-\fBflowadm remove-flow\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] [\fB-z\fR \fIzonename\fR] {\fB-l\fR \fIlink\fR | \fIflow\fR}
-.fi
-
-.LP
-.nf
-\fBflowadm set-flowprop\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] \fB-p\fR \fIprop\fR=\fIvalue\fR[,...] \fIflow\fR
-\fBflowadm reset-flowprop\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] [\fB-p\fR \fIprop\fR[,...]] \fIflow\fR
-\fBflowadm show-flowprop\fR [\fB-cP\fR] [\fB-l\fR \fIlink\fR] [\fB-o\fR \fIfield\fR[,...]]
- [\fB-p\fR \fIprop\fR[,...]] [\fIflow\fR]
-.fi
-
-.SH DESCRIPTION
-The \fBflowadm\fR command is used to create, modify, remove, and show
-networking bandwidth and associated resources for a type of traffic on a
-particular link.
-.sp
-.LP
-The \fBflowadm\fR command allows users to manage networking bandwidth resources
-for a transport, service, or a subnet. The service is specified as a
-combination of transport and local port. The subnet is specified by its IP
-address and subnet mask. The command can be used on any type of data link,
-including physical links, virtual NICs, and link aggregations.
-.sp
-.LP
-A flow is defined as a set of attributes based on Layer 3 and Layer 4 headers,
-which can be used to identify a protocol, service, or a virtual machine. When a
-flow is identified based on flow attributes, separate kernel resources
-including layer 2, 3, and 4 queues, their processing threads, and other
-resources are uniquely created for it, such that other traffic has minimal or
-zero impact on it.
-.sp
-.LP
-Inbound and outbound packet are matched to flows in a very fast and scalable
-way, so that limits can be enforced with minimal performance impact.
-.sp
-.LP
-The \fBflowadm\fR command can be used to define a flow without imposing any
-bandwidth resource control. This would result in the traffic type getting its
-own resources and queues so that it is isolated from rest of the networking
-traffic for more observable and deterministic behavior.
-.sp
-.LP
-\fBflowadm\fR is implemented as a set of subcommands with corresponding
-options. Options are described in the context of each subcommand.
-.SH SUBCOMMANDS
-The following subcommands are supported:
-.sp
-.ne 2
-.na
-\fB\fBflowadm show-flow\fR [\fB-pP\fR] [\fB-s\fR [\fB-i\fR \fIinterval\fR]] [\fB-o\fR \fIfield\fR[,...]] [\fB-l\fR \fIlink\fR] [\fB-z\fR \fIzonename\fR] [\fIflow\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Adds a flow to the system. The flow is identified by its flow attributes and
-properties.
-.sp
-As part of identifying a particular flow, its bandwidth resource can be limited
-and its relative priority to other traffic can be specified. If no bandwidth
-limit or priority is specified, the traffic still gets its unique layer 2, 3,
-and 4 queues and processing threads, including NIC hardware resources (when
-supported), so that the selected traffic can be separated from others and can
-flow with minimal impact from other traffic.
-.sp
-.ne 2
-.na
-\fB\fB-t\fR, \fB--temporary\fR\fR
-.ad
-.sp .6
-.RS 4n
-The changes are temporary and will not persist across reboots. Persistence is
-the default.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-R\fR \fIroot-dir\fR, \fB--root-dir\fR=\fIroot-dir\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies an alternate root directory where \fBflowadm\fR should apply
-persistent creation.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR \fIlink\fR, \fB--link\fR=\fIlink\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify the link to which the flow will be added.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-a\fR \fIattr\fR=\fIvalue\fR[,...], \fB--attr\fR=\fIvalue\fR\fR
-.ad
-.sp .6
-.RS 4n
-A mandatory comma-separated list of attributes to be set to the specified
-values.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR \fIprop\fR=\fIvalue\fR[,...], \fB--prop\fR=\fIvalue\fR[,...]\fR
-.ad
-.sp .6
-.RS 4n
-An optional comma-separated list of properties to be set to the specified
-values. Flow properties are documented in the "Flow Properties" section, below.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBflowadm remove-flow\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] \fB-l\fR
-{\fIlink\fR | \fIflow\fR}\fR
-.ad
-.sp .6
-.RS 4n
-Remove an existing flow identified by its link or name.
-.sp
-.ne 2
-.na
-\fB\fB-t\fR, \fB--temporary\fR\fR
-.ad
-.sp .6
-.RS 4n
-The changes are temporary and will not persist across reboots. Persistence is
-the default.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-R\fR \fIroot-dir\fR, \fB--root-dir\fR=\fIroot-dir\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies an alternate root directory where \fBflowadm\fR should apply
-persistent removal.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR \fIlink\fR | \fIflow\fR, \fB--link\fR=\fIlink\fR | \fIflow\fR\fR
-.ad
-.sp .6
-.RS 4n
-If a link is specified, remove all flows from that link. If a single flow is
-specified, remove only that flow.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBflowadm show-flow\fR [\fB-pP\fR] [\fB-s\fR [\fB-i\fR \fIinterval\fR]]
-[\fB-o\fR \fIfield\fR[,...]] [\fB-l\fR \fIlink\fR] [\fIflow\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Show flow configuration information, either for all
-flows, all flows on a link, or for the specified \fIflow\fR.
-.sp
-.ne 2
-.na
-\fB\fB-o\fR \fIfield\fR[,...]\fR
-.ad
-.sp .6
-.RS 4n
-A case-insensitive, comma-separated list of output fields to display. The field
-name must be one of the fields listed below, or a special value \fBall\fR, to
-display all fields. For each flow found, the following fields can be displayed:
-.sp
-.ne 2
-.na
-\fB\fBflow\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display information for all flows on the named link or information for the
-named flow.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-z\fR \fIzonename\fR
-.ad
-.sp .6
-.RS 4n
-Operate on a link that has been delegated to the specified zone.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBflowadm add-flow\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] [\fB-z\fR \fIzonename\fR] \fB-l\fR \fIlink\fR \fB-a\fR \fIattr\fR=\fIvalue\fR[,...] \fB-p\fR \fIprop\fR=\fIvalue\fR[,...] \fIflow\fR\fR
-.ad
-.sp .6
-.RS 4n
-The name of the link the flow is on.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBipaddr\fR\fR
-.ad
-.sp .6
-.RS 4n
-IP address of the flow. This can be either local or remote depending on how the
-flow was defined.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBproto\fR\fR
-.ad
-.sp .6
-.RS 4n
-The name of the layer for protocol to be used.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-z\fR \fIzonename\fR
-.ad
-.sp .6
-.RS 4n
-Operate on a link that has been delegated to the specified zone.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR \fIlink\fR, \fB--link\fR=\fIlink\fR\fR
-.ad
-.sp .6
-.RS 4n
-Local port of service for flow.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrport\fR\fR
-.ad
-.sp .6
-.RS 4n
-Remote port of service for flow.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdsfld\fR\fR
-.ad
-.sp .6
-.RS 4n
-Differentiated services value for flow and mask used with \fBDSFIELD\fR value
-to state the bits of interest in the differentiated services field of the IP
-header.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBflowadm remove-flow\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] [\fB-z\fR \fIzonename\fR] \fB-l\fR {\fIlink\fR | \fIflow\fR}\fR
-.ad
-.sp .6
-.RS 4n
-Remove an existing flow identified by its link or name.
-.sp
-.ne 2
-.na
-\fB\fB-t\fR, \fB--temporary\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display using a stable machine-parsable format.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-P\fR, \fB--persistent\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display persistent flow property information.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-z\fR \fIzonename\fR
-.ad
-.sp .6
-.RS 4n
-Operate on a link that has been delegated to the specified zone.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR \fIlink\fR | \fIflow\fR, \fB--link\fR=\fIlink\fR | \fIflow\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display information for all flows on the named link or information for the
-named flow.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBflowadm set-flowprop\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] \fB-p\fR
-\fIprop\fR=\fIvalue\fR[,...] \fIflow\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set values of one or more properties on the flow specified by name. The
-complete list of properties can be retrieved using the \fBshow-flowprop\fR
-subcommand.
-.sp
-.ne 2
-.na
-\fB\fB-t\fR, \fB--temporary\fR\fR
-.ad
-.sp .6
-.RS 4n
-The changes are temporary and will not persist across reboots. Persistence is
-the default.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-R\fR \fIroot-dir\fR, \fB--root-dir\fR=\fIroot-dir\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies an alternate root directory where \fBflowadm\fR should apply
-persistent setting of properties.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR \fIprop\fR=\fIvalue\fR[,...], \fB--prop\fR=\fIvalue\fR[,...]\fR
-.ad
-.sp .6
-.RS 4n
-A comma-separated list of properties to be set to the specified values.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBflowadm reset-flowprop\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] \fB-p\fR
-[\fIprop\fR=\fIvalue\fR[,...]] \fIflow\fR\fR
-.ad
-.sp .6
-.RS 4n
-Resets one or more properties to their default values on the specified flow. If
-no properties are specified, all properties are reset. See the
-\fBshow-flowprop\fR subcommand for a description of properties, which includes
-their default values.
-.sp
-.ne 2
-.na
-\fB\fB-t\fR, \fB--temporary\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies that the resets are temporary. Temporary resets last until the next
-reboot.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-R\fR \fIroot-dir\fR, \fB--root-dir\fR=\fIroot-dir\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies an alternate root directory where \fBflowadm\fR should apply
-persistent setting of properties.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR \fIprop\fR=\fIvalue\fR[,...], \fB--prop\fR=\fIvalue\fR[,...]\fR
-.ad
-.sp .6
-.RS 4n
-A comma-separated list of properties to be reset.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBflowadm show-flowprop\fR [\fB-cP\fR] [\fB-l\fR \fIlink\fR] [\fB-p\fR
-\fIprop\fR[,...]] [\fIflow\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Show the current or persistent values of one or more properties, either for all
-flows, flows on a specified link, or for the specified flow.
-.sp
-By default, current values are shown. If no properties are specified, all
-available flow properties are displayed. For each property, the following
-fields are displayed:
-.sp
-.ne 2
-.na
-\fB\fBFLOW\fR\fR
-.ad
-.sp .6
-.RS 4n
-The name of the flow.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPROPERTY\fR\fR
-.ad
-.sp .6
-.RS 4n
-The name of the property.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBVALUE\fR\fR
-.ad
-.sp .6
-.RS 4n
-The current (or persistent) property value. The value is shown as \fB--\fR
-(double hyphen), if it is not set, and \fB?\fR (question mark), if the value is
-unknown. Persistent values that are not set or have been reset will be shown as
-\fB--\fR and will use the system \fBDEFAULT\fR value (if any).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBDEFAULT\fR\fR
-.ad
-.sp .6
-.RS 4n
-The default value of the property. If the property has no default value,
-\fB--\fR (double hyphen), is shown.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPOSSIBLE\fR\fR
-.ad
-.sp .6
-.RS 4n
-A comma-separated list of the values the property can have. If the values span
-a numeric range, the minimum and maximum values might be shown as shorthand. If
-the possible values are unknown or unbounded, \fB--\fR (double hyphen), is
-shown.
-.RE
-
-Flow properties are documented in the "Flow Properties" section, below.
-.sp
-.ne 2
-.na
-\fB\fB-c\fR
-.ad
-.sp .6
-.RS 4n
-Display using a stable machine-parsable format.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-P\fR, \fB--persistent\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display persistent flow property information.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR \fIprop\fR[,...], \fB--prop\fR=\fIprop\fR[,...]\fR
-.ad
-.sp .6
-.RS 4n
-A comma-separated list of properties to show.
-.RE
-
-.RE
-
-.SS "Flow Attributes"
-The flow operand that identifies a flow in a \fBflowadm\fR command is a
-comma-separated list of one or more keyword, value pairs from the list below.
-.sp
-.ne 2
-.na
-\fB\fBlocal_ip\fR=\fIvalue\fR[\fB/\fR\fIprefix_len\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Identifies a network flow by the local IP address. \fIvalue\fR must be a IPv4
-address in dotted-decimal notation or an IPv6 address in colon-separated
-notation. \fIprefix_len\fR is optional.
-.sp
-If \fIprefix_len\fR is specified, it describes the netmask for a subnet
-address, following the same notation convention of \fBifconfig\fR(1M) and
-\fBroute\fR(1M) addresses. If unspecified, the given IP address will be
-considered as a host address for which the default prefix length for a IPv4
-address is \fB/32\fR and for IPv6 is \fB/128\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBremote_ip\fR=\fIvalue\fR[\fB/\fR\fIprefix_len\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Identifies a network flow by the remote IP address. The syntax is the same as
-the \fBlocal_ip\fR attribute.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBtransport\fR={\fBtcp\fR|\fBudp\fR|\fBsctp\fR|\fBicmp\fR|\fBicmpv6\fR}\fR
-.ad
-.sp .6
-.RS 4n
-Identifies a layer 4 protocol to be used. It is typically used in combination
-with local_port to identify the service that needs special attention.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBlocal_port\fR=\fIport\fR\fR
-.ad
-.sp .6
-.RS 4n
-Identifies a service specified by the local port.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBremote_port\fR=\fIport\fR\fR
-.ad
-.sp .6
-.RS 4n
-Identifies a service specified by the remote port.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdsfield\fR=\fIvalue\fR[\fB:\fR\fIdsfield_mask\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Identifies the 8-bit differentiated services field (as defined in RFC 2474).
-.sp
-The optional \fIdsfield_mask\fR is used to state the bits of interest in the
-differentiated services field when comparing with the \fBdsfield\fR value. A
-\fB0\fR in a bit position indicates that the bit value needs to be ignored and
-a \fB1\fR indicates otherwise. The mask can range from \fB0x01\fR to
-\fB0xff\fR. If \fIdsfield_mask\fR is not specified, the default mask \fB0xff\fR
-is used. Both the \fBdsfield\fR value and mask must be in hexadecimal.
-.RE
-
-.sp
-.LP
-The following six types of combinations of attributes are supported:
-.sp
-.in +2
-.nf
-local_ip=\fIaddress\fR[/\fIprefixlen\fR]
-remote_ip=\fIaddress\fR[/\fIprefixlen\fR]
-transport={tcp|udp|sctp|icmp|icmpv6}
-transport={tcp|udp|sctp},local_port=\fIport\fR
-transport={tcp|udp|sctp},remote_port=\fIport\fR
-dsfield=\fIval\fR[:\fIdsfield_mask\fR]
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-On a given link, the types of combinations above are mutually exclusive. An
-attempt to create flows of different types on a given link will fail.
-.SS "Restrictions"
-There are individual flow restrictions and flow restrictions per zone.
-.SS "Individual Flow Restrictions"
-Restrictions on individual flows do not require knowledge of other flows that
-have been added to the link.
-.sp
-.LP
-An attribute can be listed only once for each flow. For example, the following
-command is not valid:
-.sp
-.in +2
-.nf
-# \fBflowadm add-flow -l vnic1 -a local_port=80,local_port=8080 httpflow\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-\fBtransport\fR and \fBlocal_port\fR:
-.sp
-.LP
-TCP, UDP, or SCTP flows can be specified with a local port. An ICMP or ICMPv6
-flow that specifies a port is not allowed. The following commands are valid:
-.sp
-.in +2
-.nf
-# \fBflowadm add-flow -l e1000g0 -a transport=udp udpflow\fR
-# \fBflowadm add-flow -l e1000g0 -a transport=tcp,local_port=80 \e
-udp80flow\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The following commands are not valid:
-.sp
-.in +2
-.nf
-# \fBflowadm add-flow -l e1000g0 -a local_port=25 flow25\fR
-# \fBflowadm add-flow -l e1000g0 -a transport=icmpv6,local_port=16 \e
-flow16\fR
-.fi
-.in -2
-.sp
-
-.SS "Flow Restrictions Per Zone"
-Within a zone, no two flows can have the same name. After adding a flow with
-the link specified, the link will not be required for display, modification, or
-deletion of the flow.
-.SS "Flow Properties"
-The following flow properties are supported. Note that the ability to set a
-given property to a given value depends on the driver and hardware.
-.sp
-.ne 2
-.na
-\fB\fBmaxbw\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets the full duplex bandwidth for the flow. The bandwidth is specified as an
-integer with one of the scale suffixes(\fBK\fR, \fBM\fR, or \fBG\fR for Kbps,
-Mbps, and Gbps). If no units are specified, the input value will be read as
-Mbps. The default is no bandwidth limit.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpriority\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets the relative priority for the flow. The value can be given as one of the
-tokens \fBhigh\fR, \fBmedium\fR, or \fBlow\fR. The default is \fBmedium\fR.
-.RE
-
-.SH EXAMPLES
-\fBExample 1 \fRCreating a Policy Around a Mission-Critical Port
-.sp
-.LP
-The command below creates a policy around inbound HTTPS traffic on an HTTPS
-server so that HTTPS obtains dedicated NIC hardware and kernel TCP/IP
-resources. The name specified, \fBhttps-1\fR, can be used later to modify or
-delete the policy.
-
-.sp
-.in +2
-.nf
-# \fBflowadm add-flow -l bge0 -a transport=TCP,local_port=443 https-1\fR
-# \fBflowadm show-flow -l bge0\fR
-FLOW LINK IPADDR PROTO LPORT RPORT DSFLD
-https1 bge0 -- tcp 443 -- --
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRModifying an Existing Policy to Add Bandwidth Resource Control
-.sp
-.LP
-The following command modifies the \fBhttps-1\fR policy from the preceding
-example. The command adds bandwidth control and give the policy a high
-priority.
-
-.sp
-.in +2
-.nf
-# \fBflowadm set-flowprop -p maxbw=500M,priority=high https-1\fR
-# \fBflowadm show-flow https-1\fR
-FLOW LINK IPADDR PROTO LPORT RPORT DSFLD
-https-1 bge0 -- tcp 443 -- --
-
-# \fBflowadm show-flowprop https-1\fR
-FLOW PROPERTY VALUE DEFAULT POSSIBLE
-https-1 maxbw 500 -- --
-https-1 priority high -- low,medium,high
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRLimiting the UDP Bandwidth Usage
-.sp
-.LP
-The following command creates a policy for UDP protocol so that it cannot
-consume more than 100Mbps of available bandwidth. The flow is named
-\fBlimit-udp-1\fR.
-
-.sp
-.in +2
-.nf
-# \fBflowadm add-flow -l bge0 -a transport=UDP -p maxbw=100M, \e
-priority=low limit-udp-1\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 4 \fRSetting Policy, Making Use of \fBdsfield\fR Attribute
-.sp
-.LP
-The following command sets a policy for EF PHB (DSCP value of 101110 from RFC
-2598) with a bandwidth of 500 Mbps and a high priority. The \fBdsfield\fR value
-for this flow will be \fB0x2e\fR (101110) with the \fBdsfield_mask\fR being
-\fB0xfc\fR (because we want to ignore the 2 least significant bits).
-
-.sp
-.in +2
-.nf
-# \fBflowadm add-flow -l bge0 -a dsfield=0x2e:0xfc \e
--p maxbw=500M,priority=high efphb-flow\fR
-.fi
-.in -2
-.sp
-
-.SH EXIT STATUS
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.sp .6
-.RS 4n
-All actions were performed successfully.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB>0\fR\fR
-.ad
-.sp .6
-.RS 4n
-An error occurred.
-.RE
-
-.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Committed
-.TE
-
-.SH SEE ALSO
-\fBdladm\fR(1M), \fBflowstat\fR(1M), \fBifconfig\fR(1M),
-\fBroute\fR(1M), \fBattributes\fR(5)
-
-.SH NOTES
-The display of statistics by the \fBshow-flow\fR subcommand, and the
-\fBshow-usage\fR subcommand, have been removed. This functionality can
-now be accessed using the \fBflowstat\fR(1M) utility.
diff --git a/usr/src/man/man1m/fmadm.1m b/usr/src/man/man1m/fmadm.1m
deleted file mode 100644
index 637875aaa2..0000000000
--- a/usr/src/man/man1m/fmadm.1m
+++ /dev/null
@@ -1,468 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 2012 Joshua M. Clulow <josh@sysmgr.org>
-.\" Copyright 2019 Peter Tribble
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH FMADM 1M "Jan 14, 2020"
-.SH NAME
-fmadm \- fault management configuration tool
-.SH SYNOPSIS
-.nf
-\fBfmadm\fR [\fB-q\fR] [\fIsubcommand\fR [\fIarguments\fR]]
-.fi
-
-.SH DESCRIPTION
-The \fBfmadm\fR utility can be used by administrators and service personnel to
-view and modify system configuration parameters maintained by the Fault
-Manager, \fBfmd\fR(1M). \fBfmd\fR receives telemetry information relating to
-problems detected by the system software, diagnoses these problems, and
-initiates proactive self-healing activities such as disabling faulty
-components.
-.sp
-.LP
-\fBfmadm\fR can be used to:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-view the set of diagnosis engines and agents that are currently participating
-in fault management,
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-view the list of system components that have been diagnosed as faulty, and
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-perform administrative tasks related to these entities.
-.RE
-.sp
-.LP
-The Fault Manager attempts to automate as many activities as possible, so use
-of \fBfmadm\fR is typically not required. When the Fault Manager needs help
-from a human administrator, it produces a message indicating its needs. It also
-refers you to a knowledge article on http://illumos.org/msg/. This web site
-might ask you to use \fBfmadm\fR or one of the other fault management utilities
-to gather more information or perform additional tasks. The documentation for
-\fBfmd\fR(1M), \fBfmdump\fR(1M), and \fBfmstat\fR(1M) describe more about tools
-to observe fault management activities.
-.sp
-.LP
-The \fBfmadm\fR utility requires the user to possess the \fBPRIV_SYS_ADMIN\fR
-privilege. See \fBprivileges\fR(5). The \fBfmadm\fR \fBload\fR subcommand
-requires that the user possess all privileges.
-.SS "SUBCOMMANDS"
-\fBfmadm\fR accepts the following subcommands. Some of the subcommands accept
-or require additional options and operands:
-.sp
-.ne 2
-.na
-\fB\fBfmadm acquit\fR \fIfmri\fR \fB|\fR \fIlabel\fR [\fIuuid\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Notify the Fault Manager that the specified resource is not to be considered to
-be a suspect in the fault event identified by \fIuuid\fR, or if no UUID is
-specified, then in any fault or faults that have been detected. The \fBfmadm
-acquit\fR subcommand should be used only at the direction of a documented
-repair procedure. Administrators might need to apply additional commands to
-re-enable a previously faulted resource.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfmadm acquit\fR \fIuuid\fR\fR
-.ad
-.sp .6
-.RS 4n
-Notify the Fault Manager that the fault event identified by \fIuuid\fR can be
-safely ignored. The \fBfmadm acquit\fR subcommand should be used only at the
-direction of a documented repair procedure. Administrators might need to
-apply additional commands to re-enable any previously faulted resources.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfmadm config\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display the configuration of the Fault Manager itself, including the module
-name, version, and description of each component module. Fault Manager modules
-provide services such as automated diagnosis, self-healing, and messaging for
-hardware and software present on the system.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfmadm faulty\fR [\fB-afgiprsv\fR] [\fB-n\fR \fImax\fR] [\fB-u\fR
-\fIuuid\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Display status information for resources that the Fault Manager currently
-believes to be faulty.
-.sp
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-a\fR\fR
-.ad
-.RS 10n
-Display all faults. By default, the \fBfmadm faulty\fR command only lists
-output for resources that are currently present and faulty. If you specify the
-\fB-a\fR option, all resource information cached by the Fault Manager is
-listed, including faults which have been automatically corrected or where no
-recovery action is needed. The listing includes information for resources that
-might no longer be present in the system.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR\fR
-.ad
-.RS 10n
-Display faulty \fBfru's\fR (Field replaceable units).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-g\fR\fR
-.ad
-.RS 10n
-Group together faults which have the same fru, class and fault message.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-i\fR\fR
-.ad
-.RS 10n
-Display persistent cache identifier for each resource in the Fault Manager.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR \fImax\fR\fR
-.ad
-.RS 10n
-If faults or resources are grouped together with the \fB-a\fR or \fB-g\fR
-options, limit the output to \fImax\fR entries.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR\fR
-.ad
-.RS 10n
-Pipe output through pager with form feed between each fault.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-r\fR\fR
-.ad
-.RS 10n
-Display Fault Management Resource with their Identifier (FMRI) and their fault
-management state.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR\fR
-.ad
-.RS 10n
-Display 1 line fault summary for each fault event.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-u\fR \fIuuid\fR\fR
-.ad
-.RS 10n
-Only display fault with given \fBuuid\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.RS 10n
-Display full output.
-.RE
-
-The percentage certainty is displayed if a fault has multiple suspects, either
-of different classes or on different \fBfru\fR's. If more than one resource is
-on the same \fBfru\fR and it is not 100% certain that the fault is associated
-with the \fBfru\fR, the maximum percentage certainty of the possible suspects
-on the \fBfru\fR is displayed.
-.RE
-
-.sp
-.LP
-The Fault Manager associates the following states with every resource for which
-telemetry information has been received:
-.sp
-.ne 2
-.na
-\fB\fBok\fR\fR
-.ad
-.sp .6
-.RS 4n
-The resource is present and in use and has no known problems so far as the
-Fault Manager is concerned.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBunknown\fR\fR
-.ad
-.sp .6
-.RS 4n
-The resource is not present or not usable but has no known problems. This might
-indicate the resource has been disabled or deconfigured by an administrator.
-Consult appropriate management tools for more information.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfaulted\fR\fR
-.ad
-.sp .6
-.RS 4n
-The resource is present but is not usable because one or more problems have
-been diagnosed by the Fault Manager. The resource has been disabled to prevent
-further damage to the system.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdegraded\fR\fR
-.ad
-.sp .6
-.RS 4n
-The resource is present and usable, but one or more problems have been
-diagnosed in the resource by the Fault Manager.
-.sp
-If all affected resources are in the same state, this is reflected in the
-message at the end of the list. Otherwise the state is given after each
-affected resource.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfmadm flush\fR \fIfmri\fR\fR
-.ad
-.sp .6
-.RS 4n
-Flush the information cached by the Fault Manager for the specified resource,
-named by its FMRI. This subcommand should only be used when indicated by a
-documented repair procedure. Typically, the use of this command is not
-necessary as the Fault Manager keeps its cache up-to-date automatically. If a
-faulty resource is flushed from the cache, administrators might need to apply
-additional commands to enable the specified resource.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfmadm load\fR \fIpath\fR\fR
-.ad
-.sp .6
-.RS 4n
-Load the specified Fault Manager module. \fIpath\fR must be an absolute path
-and must refer to a module present in one of the defined directories for
-modules. Typically, the use of this command is not necessary as the Fault
-Manager loads modules automatically when the operating system initially boots
-or as needed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfmadm unload\fR \fImodule\fR\fR
-.ad
-.sp .6
-.RS 4n
-Unload the specified Fault Manager module. Specify \fImodule\fR using the
-basename listed in the \fBfmadm config\fR output. Typically, the use of this
-command is not necessary as the Fault Manager loads and unloads modules
-automatically based on the system configuration
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfmadm repaired\fR \fIfmri\fR \fB|\fR \fIlabel\fR\fR
-.ad
-.sp .6
-.RS 4n
-Notify the Fault Manager that a repair procedure has been carried out on the
-specified resource. The \fBfmadm repaired\fR subcommand should be used only at
-the direction of a documented repair procedure. Administrators might need
-to apply additional commands to re-enable a previously faulted resource.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfmadm replaced\fR \fIfmri\fR \fB|\fR \fIlabel\fR\fR
-.ad
-.sp .6
-.RS 4n
-Notify the Fault Manager that the specified resource has been replaced. This
-command should be used in those cases where the Fault Manager is unable to
-automatically detect the replacement. The \fBfmadm replaced\fR subcommand
-should be used only at the direction of a documented repair procedure.
-Administrators might need to apply additional commands to re-enable a
-previously faulted resource.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfmadm reset\fR [\fB-s\fR \fIserd\fR\fB]\fR \fImodule\fR\fR
-.ad
-.sp .6
-.RS 4n
-Reset the specified Fault Manager module or module subcomponent. If the
-\fB-s\fR option is present, the specified Soft Error Rate Discrimination (SERD)
-engine is reset within the module. If the \fB-s\fR option is not present, the
-entire module is reset and all persistent state associated with the module is
-deleted. The \fBfmadm reset\fR subcommand should only be used at the direction
-of a documented repair procedure. The use of this command is typically not
-necessary as the Fault Manager manages its modules automatically.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfmadm rotate\fR \fBerrlog | fltlog\fR\fR
-.ad
-.sp .6
-.RS 4n
-The \fBrotate\fR subcommand is a helper command for \fBlogadm\fR(1M), so that
-\fBlogadm\fR can rotate live log files correctly. It is not intended to be
-invoked directly. Use one of the following commands to cause the appropriate
-logfile to be rotated, if the current one is not zero in size:
-.sp
-.in +2
-.nf
-# \fBlogadm -p now -s 1b /var/fm/fmd/errlog\fR
-# \fBlogadm -p now -s 1b /var/fm/fmd/fltlog\fR
-.fi
-.in -2
-.sp
-
-.RE
-
-.SH OPTIONS
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-q\fR\fR
-.ad
-.RS 6n
-Set quiet mode. \fBfmadm\fR does not produce messages indicating the result of
-successful operations to standard output.
-.RE
-
-.SH OPERANDS
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fB\fIcmd\fR\fR
-.ad
-.RS 8n
-The name of a subcommand listed in \fBSUBCOMMANDS\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIargs\fR\fR
-.ad
-.RS 8n
-One or more options or arguments appropriate for the selected \fIsubcommand\fR,
-as described in \fBSUBCOMMANDS\fR.
-.RE
-
-.SH EXIT STATUS
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 5n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB1\fR\fR
-.ad
-.RS 5n
-An error occurred. Errors include a failure to communicate with \fBfmd\fR or
-insufficient privileges to perform the requested operation.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB2\fR\fR
-.ad
-.RS 5n
-Invalid command-line options were specified.
-.RE
-
-.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability See below.
-.TE
-
-.sp
-.LP
-The command-line options are Committed. The human-readable output is
-not-an-interface.
-.SH SEE ALSO
-\fBfmd\fR(1M), \fBfmdump\fR(1M), \fBfmstat\fR(1M), \fBlogadm\fR(1M),
-\fBsyslogd\fR(1M), \fBattributes\fR(5), \fBprivileges\fR(5)
-.sp
-.LP
-http://illumos.org/msg/
diff --git a/usr/src/man/man1m/fmd.1m b/usr/src/man/man1m/fmd.1m
deleted file mode 100644
index c88175d6dc..0000000000
--- a/usr/src/man/man1m/fmd.1m
+++ /dev/null
@@ -1,175 +0,0 @@
-'\" te
-.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 2012 Joshua M. Clulow <josh@sysmgr.org>
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH FMD 1M "Nov 26, 2017"
-.SH NAME
-fmd \- fault manager daemon
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/fm/fmd/fmd\fR [\fB-V\fR] [\fB-f\fR \fIfile\fR] [\fB-o\fR \fIopt\fR=\fIval\fR] [\fB-R\fR \fIdir\fR]
-.fi
-
-.SH DESCRIPTION
-.LP
-\fBfmd\fR is a daemon that runs in the background on each system.
-\fBfmd\fR receives telemetry information relating to problems detected by the
-system software, diagnoses these problems, and initiates proactive self-healing
-activities such as disabling faulty components. When appropriate, the fault
-manager also sends a message to the \fBsyslogd\fR(1M) service to notify an
-administrator that a problem has been detected. The message directs
-administrators to a knowledge article on http://illumos.org/msg/, which
-explains more about the problem impact and appropriate responses.
-.sp
-.LP
-Each problem diagnosed by the fault manager is assigned a Universal Unique
-Identifier (\fBUUID\fR). The \fBUUID\fR uniquely identifies this particular
-problem across any set of systems. The \fBfmdump\fR(1M) utility can be used to
-view the list of problems diagnosed by the fault manager, along with their
-\fBUUID\fRs and knowledge article message identifiers. The \fBfmadm\fR(1M)
-utility can be used to view the resources on the system believed to be faulty.
-The \fBfmstat\fR(1M) utility can be used to report statistics kept by the fault
-manager. The fault manager is started automatically when the operating system
-boots, so it is not necessary to use the \fBfmd\fR command directly.
-.SH OPTIONS
-.LP
-The following options are supported
-.sp
-.ne 2
-.na
-\fB\fB-f\fR \fIfile\fR\fR
-.ad
-.RS 16n
-Read the specified configuration \fIfile\fR prior to searching for any of the
-default fault manager configuration files.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-o\fR \fIopt\fR\fB=\fR\fIvalue\fR\fR
-.ad
-.RS 16n
-Set the specified fault manager option to the specified value. Fault manager
-options are currently a Private interface; see \fBattributes\fR(5) for
-information about Private interfaces.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-R\fR \fIdir\fR\fR
-.ad
-.RS 16n
-Use the specified root directory for all pathnames evaluated by the fault
-manager, instead of the default root (\fB/\fR).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-V\fR\fR
-.ad
-.RS 16n
-Print the fault manager's version to stdout and exit.
-.RE
-
-.SH EXIT STATUS
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR \fR
-.ad
-.RS 6n
-Successful completion
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB1\fR\fR
-.ad
-.RS 6n
-An error occurred which prevented the fault manager from initializing, such as
-failure to open the telemetry transport.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB2\fR\fR
-.ad
-.RS 6n
-Invalid command-line options were specified.
-.RE
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/etc/fm/fmd\fR \fR
-.ad
-.RS 20n
-Fault manager configuration directory
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/fm/fmd\fR \fR
-.ad
-.RS 20n
-Fault manager library directory
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/fm/fmd\fR\fR
-.ad
-.RS 20n
-Fault manager log directory
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-.LP
-\fBsvcs\fR(1), \fBfmadm\fR(1M), \fBfmdump\fR(1M), \fBfmstat\fR(1M),
-\fBsyslogd\fR(1M), \fBattributes\fR(5), \fBsmf\fR(5)
-.sp
-.LP
-http://illumos.org/msg/
-.SH NOTES
-.LP
-The Fault Manager is managed by the service management facility, \fBsmf\fR(5),
-under the service identifier:
-.sp
-.in +2
-.nf
- svc:/system/fmd:default
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The service's status can be queried using the \fBsvcs\fR(1) command.
-Administrators should not disable the Fault Manager service.
diff --git a/usr/src/man/man1m/fmdump.1m b/usr/src/man/man1m/fmdump.1m
deleted file mode 100644
index 9b5b951d1e..0000000000
--- a/usr/src/man/man1m/fmdump.1m
+++ /dev/null
@@ -1,644 +0,0 @@
-'\" te
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 2012 Joshua M. Clulow <josh@sysmgr.org>
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH FMDUMP 1M "Jan 14, 2020"
-.SH NAME
-fmdump \- fault management log viewer
-.SH SYNOPSIS
-.nf
-\fBfmdump\fR [\fB-efmvV\fR] [\fB-c\fR \fIclass\fR] [\fB-R\fR \fIdir\fR] [\fB-t\fR \fItime\fR] [\fB-T\fR \fItime\fR]
- [\fB-u\fR \fIuuid\fR] [\fB-n\fR \fIname\fR[.\fIname\fR]*[=\fIvalue\fR]] [\fIfile\fR]
-.fi
-
-.SH DESCRIPTION
-The \fBfmdump\fR utility can be used to display the contents of any of the log
-files associated with the Fault Manager, \fBfmd\fR(1M). The Fault
-Manager runs in the background on each system. It receives telemetry
-information relating to problems detected by the system software, diagnoses
-these problems, and initiates proactive self-healing activities such as
-disabling faulty components.
-.sp
-.LP
-The Fault Manager maintains two sets of log files for use by administrators and
-service personnel:
-.sp
-.ne 2
-.na
-\fBerror log\fR
-.ad
-.RS 13n
-A log which records error telemetry, the symptoms of problems detected by the
-system.
-.RE
-
-.sp
-.ne 2
-.na
-\fBfault log\fR
-.ad
-.RS 13n
-A log which records fault diagnosis information, the problems believed to
-explain these symptoms.
-.RE
-
-.sp
-.LP
-By default, \fBfmdump\fR displays the contents of the fault log, which records
-the result of each diagnosis made by the fault manager or one of its component
-modules.
-.sp
-.LP
-An example of a default \fBfmdump\fR display follows:
-.sp
-.in +2
-.nf
-# fmdump
-TIME UUID SUNW-MSG-ID
-Dec 28 13:01:27.3919 bf36f0ea-9e47-42b5-fc6f-c0d979c4c8f4 FMD-8000-11
-Dec 28 13:01:49.3765 3a186292-3402-40ff-b5ae-810601be337d FMD-8000-11
-Dec 28 13:02:59.4448 58107381-1985-48a4-b56f-91d8a617ad83 FMD-8000-OW
-\&...
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Each problem recorded in the fault log is identified by:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The time of its diagnosis
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-A Universal Unique Identifier (UUID) that can be used to uniquely identify this
-particular problem across any set of systems
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-A message identifier that can be used to access a corresponding knowledge
-article located on http://illumos.org/msg/
-.RE
-.sp
-.LP
-If a problem requires action by a human administrator or service technician or
-affects system behavior, the Fault Manager also issues a human-readable message
-to \fBsyslogd\fR(1M). This message provides a summary of the problem and a
-reference to the knowledge article on http://illumos.org/msg/.
-.sp
-.LP
-You can use the \fB-v\fR and \fB-V\fR options to expand the display from a
-single-line summary to increased levels of detail for each event recorded in
-the log. The \fB-c\fR, \fB-t\fR, \fB-T\fR, and \fB-u\fR options can be used to
-filter the output by selecting only those events that match the specified
-\fIclass\fR, range of times, or \fIuuid\fR.
-.sp
-.LP
-If more than one filter option is present on the command-line, the options
-combine to display only those events that are selected by the logical \fBAND\fR
-of the options. If more than one instance of the same filter option is present
-on the command-line, the like options combine to display any events selected by
-the logical \fBOR\fR of the options. For example, the command:
-.sp
-.in +2
-.nf
-# fmdump -u uuid1 -u uuid2 -t 02Dec03
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-selects events whose attributes are \fB(uuid1 OR uuid2\fR) \fBAND\fR (time on
-or after 02Dec03).
-.SH OPTIONS
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-c\fR \fIclass\fR\fR
-.ad
-.sp .6
-.RS 4n
-Select events that match the specified class. The class argument can use the
-glob pattern matching syntax described in \fBsh\fR(1). The class represents a
-hierarchical classification string indicating the type of telemetry event.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-e\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display events from the fault management error log instead of the fault log.
-This option is shorthand for specifying the pathname of the error log file.
-.sp
-The error log file contains Private telemetry information. This information is
-recorded to facilitate post-mortem analysis of problems and event replay, and
-should not be parsed or relied upon for the development of scripts or other
-tools.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR\fR
-.ad
-.sp .6
-.RS 4n
-Follow the growth of the log file by waiting for additional data. \fBfmdump\fR
-enters an infinite loop where it will sleep for a second, attempt to read and
-format new data from the log file, and then go back to sleep. This loop can be
-terminated at any time by sending an interrupt (\fBControl-C\fR).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-m\fR\fR
-.ad
-.sp .6
-.RS 4n
-Print the localized diagnosis message associated with each entry in the fault
-log.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR \fIname\fR[.\fIname\fR]*[=\fIvalue\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Select fault log or error log events, depending on the \fB-e\fR option, that
-have properties with a matching name (and optionally a matching value). For
-string properties the value can be a regular expression match. Regular
-expression syntax is described in the EXTENDED REGULAR EXPRESSIONS section of
-the \fBregex\fR(5) manual page. Be careful when using the characters:
-.sp
-.in +2
-.nf
-$ * { ^ | ( ) \e
-.fi
-.in -2
-.sp
-
-\&...or a regular expression, because these are meaningful to the shell. It is
-safest to enclose any of these in single quotes. For numeric properties, the
-value can be octal, hex, or decimal.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-R\fR \fIdir\fR\fR
-.ad
-.sp .6
-.RS 4n
-Use the specified root directory for the log files accessed by \fBfmdump\fR,
-instead of the default root (\fB/\fR).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-t\fR \fItime\fR\fR
-.ad
-.sp .6
-.RS 4n
-Select events that occurred at or after the specified time. The time can be
-specified using any of the following forms:
-.sp
-.ne 2
-.na
-\fB\fB\fImm\fR/\fIdd\fR/\fIyy hh\fR:\fImm\fR:\fIss\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Month, day, year, hour in 24-hour format, minute, and second. Any amount of
-whitespace can separate the date and time. The argument should be quoted so
-that the shell interprets the two strings as a single argument.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\fImm\fR/\fIdd\fR/\fIyy hh\fR:\fImm\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Month, day, year, hour in 24-hour format, and minute. Any amount of whitespace
-can separate the date and time. The argument should be quoted so that the shell
-interprets the two strings as a single argument.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\fImm\fR/\fIdd\fR/\fIyy\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-12:00:00AM on the specified month, day, and year.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\fIddMonyy hh\fR:\fImm\fR:\fIss\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Day, month name, year, hour in 24-hour format, minute, and second. Any amount
-of whitespace can separate the date and time. The argument should be quoted so
-that the shell interprets the two strings as a single argument.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\fIddMonyy hh\fR:\fImm\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Day, month name, year, hour in 24-hour format, and minute. Any amount of
-whitespace can separate the date and time. The argument should be quoted so
-that the shell interprets the two strings as a single argument.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\fIMon\fR \fIdd\fR \fIhh\fR:\fImm\fR:\fIss\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Month, day, hour in 24-hour format, minute, and second of the current year.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\fIyyyy\fR-\fImm\fR-\fIdd\fR [T \fIhh\fR:\fImm\fR[:\fIss\fR]]\fR\fR
-.ad
-.sp .6
-.RS 4n
-Year, month, day, and optional hour in 24-hour format, minute, and second. The
-second, or hour, minute, and second, can be optionally omitted.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIddMonyy\fR\fR
-.ad
-.sp .6
-.RS 4n
-12:00:00AM on the specified day, month name, and year.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\fIhh\fR:\fImm\fR:\fIss\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Hour in 24-hour format, minute, and second of the current day.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\fIhh\fR:\fImm\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Hour in 24-hour format and minute of the current day.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIT\fR\fBns\fR | \fIT\fR\fBnsec\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fIT\fR nanoseconds ago where T is an integer value specified in base 10.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\fIT\fRus |\fIT\fRusec\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fIT\fR microseconds ago where T is an integer value specified in base 10.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIT\fR\fBms\fR | \fIT\fR\fBmsec\fR\fR
-.ad
-.sp .6
-.RS 4n
-T milliseconds ago where T is an integer value specified in base 10.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\fIT\fRs | \fIT\fRsec\fR\fR
-.ad
-.sp .6
-.RS 4n
-T seconds ago where \fIT\fR is an integer value specified in base 10.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\fIT\fRm |\fIT\fRmin\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fIT\fR minutes ago where \fIT\fR is an integer value specified in base 10.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\fIT\fRh |\fIT\fRhour\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fIT\fR hours ago where \fIT\fR is an integer value specified in base 10.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\fIT\fRd |\fIT\fRday\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fIT\fR days ago where \fIT\fR is an integer value specified in base 10.
-.RE
-
-You can append a decimal fraction of the form \fB\&.\fR\fIn\fR to any \fB-t\fR
-option argument to indicate a fractional number of seconds beyond the specified
-time.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-T\fR \fItime\fR\fR
-.ad
-.sp .6
-.RS 4n
-Select events that occurred at or before the specified time. \fItime\fR can be
-specified using any of the time formats described for the \fB-t\fR option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-u\fR \fIuuid\fR\fR
-.ad
-.sp .6
-.RS 4n
-Select fault diagnosis events that exactly match the specified \fIuuid\fR. Each
-diagnosis is associated with a Universal Unique Identifier (UUID) for
-identification purposes. The \fB-u\fR option can be combined with other options
-such as \fB-v\fR to show all of the details associated with a particular
-diagnosis.
-.sp
-If the \fB-e\fR option and \fB-u\fR option are both present, the error events
-that are cross-referenced by the specified diagnosis are displayed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display verbose event detail. The event display is enlarged to show additional
-common members of the selected events.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-V\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display very verbose event detail. The event display is enlarged to show every
-member of the name-value pair list associated with each event. In addition, for
-fault logs, the event display includes a list of cross-references to the
-corresponding errors that were associated with the diagnosis.
-.RE
-
-.SH OPERANDS
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fB\fIfile\fR\fR
-.ad
-.RS 8n
-Specifies an alternate log file to display instead of the system fault log. The
-\fBfmdump\fR utility determines the type of the specified log automatically and
-produces appropriate output for the selected log.
-.RE
-
-.SH EXAMPLES
-\fBExample 1 \fRRetrieving Given Class from \fBfmd\fR Log
-.sp
-.LP
-Use any of the following commands to retrieve information about a specified
-class from the \fBfmd\fR log. The complete class name is
-\fBereport.io.ddi.context\fR.
-
-.sp
-.in +2
-.nf
-# \fBfmdump -Ve -c 'ereport.io.ddi.context'\fR
-# \fBfmdump -Ve -c 'ereport.*.context'\fR
-# \fBfmdump -Ve -n 'class=ereport.io.ddi.context'\fR
-# \fBfmdump -Ve -n 'class=ereport.*.context'\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Any of the preceding commands produces the following output:
-
-.sp
-.in +2
-.nf
-Oct 06 2007 11:53:20.975021712 ereport.io.ddi.context
- nvlist version: 0
- class = ereport.io.ddi.context
- ena = 0x1b03a15ecf00001
- detector = (embedded nvlist)
- nvlist version: 0
- version = 0x0
- scheme = dev
- device-path = /
- (end detector)
-
- __ttl = 0x1
- __tod = 0x470706b0 0x3a1da690
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRRetrieving Specific Detector Device Path from \fBfmd\fR Log
-.sp
-.LP
-The following command retrieves a detector device path from the \fBfmd\fR log.
-
-.sp
-.in +2
-.nf
-# \fBfmdump -Ve -n 'detector.device-path=.*/disk@1,0$'\fR
-Oct 06 2007 12:04:28.065660760 ereport.io.scsi.disk.rqs
-nvlist version: 0
- class = ereport.io.scsi.disk.rqs
- ena = 0x453ff3732400401
- detector = (embedded nvlist)
- nvlist version: 0
- version = 0x0
- scheme = dev
- device-path = /pci@0,0/pci1000,3060@3/disk@1,0
- (end detector)
-
- __ttl = 0x1
- __tod = 0x4707094c 0x3e9e758
-.fi
-.in -2
-.sp
-
-.SH EXIT STATUS
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 5n
-Successful completion. All records in the log file were examined successfully.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB1\fR\fR
-.ad
-.RS 5n
-A fatal error occurred. This prevented any log file data from being examined,
-such as failure to open the specified file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB2\fR\fR
-.ad
-.RS 5n
-Invalid command-line options were specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB3\fR\fR
-.ad
-.RS 5n
-The log file was opened successfully, but one or more log file records were not
-displayed, either due to an I/O error or because the records themselves were
-malformed. \fBfmdump\fR issues a warning message for each record that could not
-be displayed, and then continues on and attempts to display other records.
-.RE
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/var/fm/fmd\fR\fR
-.ad
-.RS 22n
-Fault management log directory
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/fm/fmd/errlog\fR\fR
-.ad
-.RS 22n
-Fault management error log
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/fm/fmd/fltlog\fR\fR
-.ad
-.RS 22n
-Fault management fault log
-.RE
-
-.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability See below.
-.TE
-
-.sp
-.LP
-The command-line options are Evolving. The human-readable error log output is
-Private. The human-readable fault log output is Evolving.
-.SH SEE ALSO
-\fBsh\fR(1), \fBfmadm\fR(1M), \fBfmd\fR(1M), \fBfmstat\fR(1M),
-\fBsyslogd\fR(1M), \fBlibexacct\fR(3LIB), \fBattributes\fR(5), \fBregex\fR(5)
-.sp
-.LP
-\fI\fR
-.sp
-.LP
-http://illumos.org/msg/
-.SH NOTES
-Fault logs contain references to records stored in error logs that can be
-displayed using \fBfmdump\fR \fB-V\fR to understand the errors that were used
-in the diagnosis of a particular fault. These links are preserved if an error
-log is renamed as part of log rotation. They can be broken by removing an error
-log file, or by moving it to another filesystem directory. \fBfmdump\fR can not
-display error information for such broken links. It continues to display any
-and all information present in the fault log.
diff --git a/usr/src/man/man1m/fmstat.1m b/usr/src/man/man1m/fmstat.1m
deleted file mode 100644
index 6186c124d6..0000000000
--- a/usr/src/man/man1m/fmstat.1m
+++ /dev/null
@@ -1,308 +0,0 @@
-'\" te
-.\" Copyright (c) 2005, Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 2019 Peter Tribble
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
-.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH FMSTAT 1M "Aug 26, 2019"
-.SH NAME
-fmstat \- report fault management module statistics
-.SH SYNOPSIS
-.nf
-\fBfmstat\fR [\fB-astTz\fR] [\fB-d\fR u | d ] [\fB-m\fR \fImodule\fR] [\fIinterval\fR [\fIcount\fR]]
-.fi
-
-.SH DESCRIPTION
-The \fBfmstat\fR utility can be used by administrators and service personnel to
-report statistics associated with the Fault Manager, \fBfmd\fR(1M) and
-its associated set of modules. The Fault Manager runs in the background on each
-system. It receives telemetry information relating to problems detected
-by the system software, diagnoses these problems, and initiates proactive
-self-healing activities such as disabling faulty components.
-.sp
-.LP
-You can use \fBfmstat\fR to view statistics for diagnosis engines and agents
-that are currently participating in fault management. The documentation for
-\fBfmd\fR(1M), \fBfmadm\fR(1M), and \fBfmdump\fR(1M) describes more about tools
-to observe fault management activities.
-.sp
-.LP
-If the \fB-m\fR option is present or the \fB-t\fR option is present,
-\fBfmstat\fR reports any statistics kept by the specified fault management
-module. The module list can be obtained using \fBfmadm config\fR.
-.sp
-.LP
-If the \fB-m\fR option is not present, \fBfmstat\fR reports the following
-statistics for each of its client modules:
-.sp
-.ne 2
-.na
-\fB\fBmodule\fR\fR
-.ad
-.RS 11n
-The name of the fault management module, as reported by \fBfmadm config\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBev_recv\fR\fR
-.ad
-.RS 11n
-The number of telemetry events received by the module.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBev_acpt\fR\fR
-.ad
-.RS 11n
-The number of events accepted by the module as relevant to a diagnosis.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBwait\fR\fR
-.ad
-.RS 11n
-The average number of telemetry events waiting to be examined by the module.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsvc_t\fR\fR
-.ad
-.RS 11n
-The average service time for telemetry events received by the module, in
-milliseconds.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB%w\fR\fR
-.ad
-.RS 11n
-The percentage of time that there were telemetry events waiting to be examined
-by the module.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB%b\fR\fR
-.ad
-.RS 11n
-The percentage of time that the module was busy processing telemetry events.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBopen\fR\fR
-.ad
-.RS 11n
-The number of active cases (open problem investigations) owned by the module.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsolve\fR\fR
-.ad
-.RS 11n
-The total number of cases solved by this module since it was loaded.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmemsz\fR\fR
-.ad
-.RS 11n
-The amount of dynamic memory currently allocated by this module.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBbufsz\fR\fR
-.ad
-.RS 11n
-The amount of persistent buffer space currently allocated by this module.
-.RE
-
-.sp
-.LP
-The \fBfmstat\fR utility requires the user to possess the \fBPRIV_SYS_ADMIN\fR
-privilege. See \fBprivileges\fR(5).
-.SH OPTIONS
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-a\fR\fR
-.ad
-.RS 13n
-Print all statistics for a module, including those kept on its behalf by
-\fBfmd\fR. If the \fB-a\fR option is not present, only those statistics kept by
-the module are reported. If the \fB-a\fR option is used without the \fB-m\fR
-\fImodule\fR, a set of global statistics associated with \fBfmd\fR are
-displayed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-d\fR \fBu\fR | \fBd\fR\fR
-.ad
-.RS 13n
-Display a time stamp.
-.sp
-Specify \fBu\fR for a printed representation of the internal representation of
-time. See \fBtime\fR(2). Specify \fBd\fR for standard date format. See
-\fBdate\fR(1).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-m\fR \fImodule\fR\fR
-.ad
-.RS 13n
-Print a report on the statistics associated with the specified fault management
-module, instead of the default statistics report. Modules can publish an
-arbitrary set of statistics to help Sun service the fault management software
-itself. The module statistics constitute a Private interface. See
-\fBattributes\fR(5) for information on Sun's rules for Private interfaces.
-Scripts should not be written that depend upon the values of fault management
-module statistics as they can change without notice.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR\fR
-.ad
-.RS 13n
-Print a report on Soft Error Rate Discrimination (SERD) engines associated with
-the module instead of the default module statistics report. A SERD engine is a
-construct used by fault management software to determine if a statistical
-threshold measured as \fIN\fR events in some time \fIT\fR has been exceeded.
-The \fB-s\fR option can only be used in combination with the \fB-m\fR option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-t\fR\fR
-.ad
-.RS 13n
-Print a report on the statistics associated with each fault management event
-transport. Each fault management module can provide the implementation of one
-or more event transports.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-T\fR\fR
-.ad
-.RS 13n
-Print a table of the authority information associated with each fault
-management event transport. If the \fB-m\fR option is present, only transports
-associated with the specified module are displayed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-z\fR\fR
-.ad
-.RS 13n
-Omit statistics with a zero value from the report associated with the specified
-fault management module. The \fB-z\fR option can only be used in combination
-with the \fB-m\fR option.
-.RE
-
-.SH OPERANDS
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fB\fIcount\fR\fR
-.ad
-.RS 12n
-Print only count reports, and then exit.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIinterval\fR\fR
-.ad
-.RS 12n
-Print a new report every \fIinterval\fR seconds.
-.RE
-
-.sp
-.LP
-If no \fIinterval\fR and no \fIcount\fR are specified, a single report is
-printed and \fBfmstat\fR exits. If an \fIinterval\fR is specified but no
-\fIcount\fR is specified, \fBfmstat\fR prints reports every \fIinterval\fR
-seconds indefinitely until the command is interrupted.
-.SH EXIT STATUS
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 5n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB1\fR\fR
-.ad
-.RS 5n
-A fatal error occurred. A fatal error could be the failure to communicate with
-\fBfmd\fR(1M). It could also be that insufficient privileges were available to
-perform the requested operation.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB2\fR\fR
-.ad
-.RS 5n
-Invalid command-line options were specified.
-.RE
-
-.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability See below.
-.TE
-
-.sp
-.LP
-The command-line options are Evolving. The human-readable default report is
-Unstable. The human-readable module report is Private.
-.SH SEE ALSO
-\fBfmadm\fR(1M), \fBfmd\fR(1M), \fBfmdump\fR(1M), \fBattributes\fR(5),
-\fBprivileges\fR(5)
diff --git a/usr/src/man/man1m/fmthard.1m b/usr/src/man/man1m/fmthard.1m
deleted file mode 100644
index 45682d4b1b..0000000000
--- a/usr/src/man/man1m/fmthard.1m
+++ /dev/null
@@ -1,227 +0,0 @@
-.\"
-.\" CDDL HEADER START
-.\"
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.\"
-.\" CDDL HEADER END
-.\"
-.\" Copyright 1989 AT&T
-.\" Copyright (c) 2002, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 2022 Toomas Soome <tsoome@me.com>
-.\"
-.Dd January 31, 2022
-.Dt FMTHARD 1M
-.Os
-.Sh NAME
-.Nm fmthard
-.Nd populate label on hard disks
-.Sh SYNOPSIS
-.Nm
-.Fl d Ar data | Fl n Ar volume_name | Fl s Ar datafile Op Fl i
-.Sm off
-.Ar /dev/rdsk/c? Oo t? Oc d?s2
-.Sm on
-.Sh DESCRIPTION
-The
-.Nm
-command updates the
-.Sy VTOC
-.Pq Volume Table of Contents
-on hard disks.
-One or more of the options
-.Fl s Ar datafile ,
-.Fl d Ar data ,
-or
-.Fl n Ar volume_name
-must be used to request modifications to the disk label.
-To print disk label contents, see
-.Xr prtvtoc 1M .
-The
-.Sm off
-.Ar /dev/rdsk/c? Oo t? Oc d?s2
-.Sm on
-file must be the character special file of the device where the new label
-is to be installed.
-On x86 systems,
-.Xr fdisk 1M
-must be run on the drive before
-.Nm .
-.Pp
-If you are using an x86 system, note that the term
-.Sq partition
-in this page refers to
-.Em slices
-within the x86
-.Sy fdisk
-partition on x86 machines.
-Do not confuse the partitions created by
-.Nm
-with the partitions created by
-.Xr fdisk 1M .
-.Sh OPTIONS
-The following options are supported:
-.Bl -tag -width Ds
-.It Fl d Ar data
-The
-.Ar data
-argument of this option is a string representing the information
-for a particular partition in the current
-.Sy VTOC .
-The string must be of the format
-.Em part:tag:flag:start:size
-where
-.Em part
-is the partition number,
-.Em tag
-is the
-.Sy ID
-TAG of the partition,
-.Em flag
-is the set of permission flags,
-.Em start
-is the starting sector number of the partition, and
-.Em size
-is the number of sectors in the partition.
-See the description of the
-.Ar datafile
-below for more information on these fields.
-.It Fl i
-This option allows the command to create the desired
-.Sy VTOC
-table, but prints the information to standard output instead of modifying the
-.Sy VTOC
-on the disk.
-.It Fl n Ar volume_name
-This option is used to give the disk a
-.Ar volume_name
-up to 8 characters long.
-.It Fl s Ar datafile
-This option is used to populate the
-.Sy VTOC
-according to a
-.Ar datafile
-created by the user.
-If the
-.Ar datafile
-is
-.Sy \(mi Pq a hyphen ,
-.Nm
-reads from standard input.
-The
-.Ar datafile
-format is described below.
-This option causes all of the disk partition timestamp fields to be set
-to zero.
-.sp
-Every
-.Sy VTOC
-generated by
-.Nm
-will also have partition 2, by convention, that corresponds to the whole disk.
-If the input in
-.Ar datafile
-does not specify an entry for partition 2, a default partition 2 entry will be
-created automatically in
-.Sy VTOC
-with the tag
-.Sy V_BACKUP
-and size equal to the full size of the disk.
-.sp
-The
-.Ar datafile
-contains one specification line for each partition, starting with partition 0.
-Each line is delimited by a new-line character
-.Pq Sy \en .
-If the first character of a line is an asterisk
-.Pq \&* ,
-the line is treated as a comment.
-Each line is composed of entries that are position-dependent,
-separated by white space and having the following format:
-.sp
-.Em partition tag flag starting_sector size_in_sectors
-.sp
-where the entries have the following values:
-.Bl -tag -width Ds
-.It Em partition
-The partition number.
-Currently, for Solaris SPARC, a disk can have up to 8 partitions,
-.Sy 0\(mi7 .
-Even though the
-.Em partition
-field has 4 bits, only 3 bits are currently used.
-For x86, all 4 bits are used to allow slices
-.Sy 0\(mi15 .
-Each Solaris
-.Sy fdisk
-partition can have up to 16 slices.
-.It Em tag
-The partition tag: a decimal number.
-The following are reserved codes:
-.Sy 0 Pq Sy V_UNASSIGNED ,
-.Sy 1 Pq Sy V_BOOT ,
-.Sy 2 Pq Sy V_ROOT ,
-.Sy 3 Pq Sy V_SWAP ,
-.Sy 4 Pq Sy V_USR ,
-.Sy 5 Pq Sy V_BACKUP ,
-.Sy 6 Pq Sy V_STAND ,
-.Sy 7 Pq Sy V_VAR ,
-and
-.Sy 8 Pq Sy V_HOME .
-.It Em flag
-The flag allows a partition to be flagged as unmountable or read only, the
-masks being:
-.Sy V_UNMNT 0x01 ,
-and
-.Sy V_RONLY 0x10 .
-For mountable partitions use
-.Sy 0x00 .
-.It Em starting_sector
-The sector number (decimal) on which the partition starts.
-.It Em size_in_sectors
-The number (decimal) of sectors occupied by the partition.
-.El
-.sp
-You can save the output of a
-.Xr prtvtoc 1M
-command to a file, edit the file, and use it as the
-.Ar datafile
-argument to the
-.Fl s
-option.
-.El
-.Sh SEE ALSO
-.Xr uname 1 ,
-.Xr format 1M ,
-.Xr installboot 1M ,
-.Xr prtvtoc 1M ,
-.Xr attributes 5
-.Ss "x86 Only"
-.Xr fdisk 1M
-.Sh NOTES
-Special care should be exercised when overwriting an existing
-.Sy VTOC ,
-as incorrect entries could result in current data being inaccessible.
-As a precaution, save the old
-.Sy VTOC .
-.sp
-For disks under two terabytes,
-.Nm
-cannot write a
-.Sy VTOC
-on an unlabeled disk.
-Use
-.Xr format 1M
-for this purpose.
diff --git a/usr/src/man/man1m/format.1m b/usr/src/man/man1m/format.1m
deleted file mode 100644
index 03f2dd6983..0000000000
--- a/usr/src/man/man1m/format.1m
+++ /dev/null
@@ -1,441 +0,0 @@
-'\" te
-.\" Copyright (c) 2002, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH FORMAT 1M "August 29, 2021"
-.SH NAME
-format \- disk partitioning and maintenance utility
-.SH SYNOPSIS
-.nf
-\fBformat\fR [\fB-f\fR \fIcommand-file\fR] [\fB-l\fR \fIlog-file\fR] [\fB-x\fR \fIdata-file\fR]
- [\fB-d\fR \fIdisk-name\fR] [\fB-t\fR \fIdisk-type\fR] [\fB-p\fR \fIpartition-name\fR]
- [\fB-s\fR] [\fB-m\fR] [\fB-M\fR] [\fB-e\fR] [\fIdisk-list\fR]
-.fi
-
-.SH DESCRIPTION
-\fBformat\fR enables you to format, label, repair, and analyze disks on your
-system. Unlike previous disk maintenance programs, \fBformat\fR runs under
-SunOS. Because there are limitations to what can be done to the system disk
-while the system is running, \fBformat\fR is also supported within the
-memory-resident system environment. For most applications, however, running
-\fBformat\fR under SunOS is the more convenient approach.
-.sp
-.LP
-\fBformat\fR first uses the disk list defined in \fIdata-file\fR if the
-\fB-x\fR option is used. \fBformat\fR then checks for the \fBFORMAT_PATH\fR
-environment variable, a colon-separated list of filenames and/or directories.
-In the case of a directory, \fBformat\fR searches for a file named
-\fBformat.dat\fR in that directory; a filename should be an absolute pathname,
-and is used without change. \fBformat\fR adds all disk and partition
-definitions in each specified file to the working set. Multiple identical
-definitions are silently ignored. If \fBFORMAT_PATH\fR is not set, the path
-defaults to \fB/etc/format.dat\fR.
-.sp
-.LP
-\fIdisk-list\fR is a list of disks in the form \fBc?t?d?\fR or
-\fB/dev/rdsk/c?t?d?s?\fR. With the latter form, shell wildcard specifications
-are supported. For example, specifying \fB/dev/rdsk/c2*\fR causes \fBformat\fR
-to work on all drives connected to controller \fBc2\fR only. If no
-\fIdisk-list\fR is specified, \fBformat\fR lists all the disks present in the
-system that can be administered by \fBformat\fR.
-.sp
-.LP
-Removable media devices are listed only when users execute \fBformat\fR in
-expert mode (option \fB-e\fR). This feature is provided for backward
-compatibility. Use \fBrmformat\fR(1) for rewritable removable media devices.
-.SH OPTIONS
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-d\fR \fIdisk-name\fR\fR
-.ad
-.RS 21n
-Specify which disk should be made current upon entry into the program. The disk
-is specified by its logical name (for instance, \fB-d\fR \fBc0t1d0\fR). This
-can also be accomplished by specifying a single disk in the disk list.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-e\fR\fR
-.ad
-.RS 21n
-Enable \fBSCSI\fR expert menu. Note this option is not recommended for casual
-use.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR \fIcommand-file\fR\fR
-.ad
-.RS 21n
-Take command input from \fIcommand-file\fR rather than the standard input. The
-file must contain commands that appear just as they would if they had been
-entered from the keyboard. With this option, \fBformat\fR does not issue
-\fBcontinue?\fR prompts; there is no need to specify y(es) or n(o) answers in
-the \fIcommand-file\fR. In non-interactive mode, \fBformat\fR does not
-initially expect the input of a disk selection number. The user must specify
-the current working disk with the \fB-d\fR \fIdisk-name\fR option when format
-is invoked, or specify \fBdisk\fR and the disk selection number in the
-\fIcommand-file\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR \fIlog-file\fR\fR
-.ad
-.RS 21n
-Log a transcript of the \fBformat\fR session to the indicated \fIlog-file\fR,
-including the standard input, the standard output and the standard error.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-m\fR\fR
-.ad
-.RS 21n
-Enable extended messages. Provides more detailed information in the event of an
-error.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-M\fR\fR
-.ad
-.RS 21n
-Enable extended and diagnostic messages. Provides extensive information on the
-state of a \fBSCSI\fR device's mode pages, during formatting.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR \fIpartition-name\fR\fR
-.ad
-.RS 21n
-Specify the partition table for the disk which is current upon entry into the
-program. The table is specified by its name as defined in the data file. This
-option can be used only if a disk is being made current, and its type is either
-specified or available from the disk label.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR\fR
-.ad
-.RS 21n
-Silent. Suppress all of the standard output. Error messages are still
-displayed. This is generally used in conjunction with the \fB-f\fR option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-t\fR \fIdisk-type\fR\fR
-.ad
-.RS 21n
-Specify the type of disk which is current upon entry into the program. A disk's
-type is specified by name in the data file. This option can only be used if a
-disk is being made current as described above.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-x\fR \fIdata-file\fR\fR
-.ad
-.RS 21n
-Use the list of disks contained in \fIdata-file\fR.
-.RE
-
-.SH USAGE
-When you invoke format with no options or with the \fB-e\fR, \fB-l\fR,
-\fB-m\fR, \fB-M\fR, or \fB-s\fR options, the program displays a numbered list
-of available disks and prompts you to specify a disk by list number. If the
-machine has more than 10 disks, press SPACE to see the next screenful of disks.
-.sp
-.LP
-You can specify a disk by list number even if the disk is not displayed in the
-current screenful. For example, if the current screen shows disks 11-20, you
-can enter \fB25\fR to specify the twenty-fifth disk on the list. If you enter a
-number for a disk that is not currently displayed, \fBformat\fR prompts you to
-verify your selection. If you enter a number from the displayed list,
-\fBformat\fR silently accepts your selection.
-.sp
-.LP
-After you specify a disk, \fBformat\fR displays its main menu. This menu
-enables you to perform the following tasks:
-.sp
-.ne 2
-.na
-\fBanalyze\fR
-.ad
-.RS 13n
-Run read, write, compare tests, and data purge. The data purge function
-implements the National Computer Security Center Guide to Understanding Data
-Remnance (\fBNCSC-TG-025\fR version 2) Overwriting Algorithm. See NOTES.
-.RE
-
-.sp
-.ne 2
-.na
-\fBbackup\fR
-.ad
-.RS 13n
-Search for backup labels.
-.RE
-
-.sp
-.ne 2
-.na
-\fBcache\fR
-.ad
-.RS 13n
-Enable, disable, and query the state of the write cache and read cache. This
-menu item only appears when \fBformat\fR is invoked with the \fB-e\fR option,
-and is only supported on \fBSCSI\fR devices.
-.RE
-
-.sp
-.ne 2
-.na
-\fBcurrent\fR
-.ad
-.RS 13n
-Display the device name, the disk geometry, and the pathname to the disk
-device.
-.RE
-
-.sp
-.ne 2
-.na
-\fBdefect\fR
-.ad
-.RS 13n
-Retrieve and print defect lists. This option is supported only on \fBSCSI\fR
-devices. \fBIDE\fR disks perform automatic defect management. Upon using the
-\fBdefect\fR option on an \fBIDE\fR disk, you receive the message:
-.sp
-.in +2
-.nf
-Controller does not support defect management
-or disk supports automatic defect management.
-.fi
-.in -2
-.sp
-
-.RE
-
-.sp
-.ne 2
-.na
-\fBdisk\fR
-.ad
-.RS 13n
-Choose the disk that will be used in subsequent operations (known as the
-current disk.)
-.RE
-
-.sp
-.ne 2
-.na
-\fBfdisk\fR
-.ad
-.RS 13n
-Run the \fBfdisk\fR(1M) program to create a \fBfdisk\fR partition for Solaris
-software (x86 based systems only).
-.RE
-
-.sp
-.ne 2
-.na
-\fBformat\fR
-.ad
-.RS 13n
-Format and verify the current disk. This option is supported only on \fBSCSI\fR
-devices. \fBIDE\fR disks are pre-formatted by the manufacturer. Upon using the
-\fBformat\fR option on an \fBIDE\fR disk, you receive the message:
-.sp
-.in +2
-.nf
-Cannot format this drive. Please use your
-manufacturer-supplied formatting utility.
-.fi
-.in -2
-.sp
-
-.RE
-
-.sp
-.ne 2
-.na
-\fBinquiry\fR
-.ad
-.RS 13n
-Display the vendor, product name, and revision level of the current drive.
-.RE
-
-.sp
-.ne 2
-.na
-\fBlabel\fR
-.ad
-.RS 13n
-Write a new label to the current disk.
-.RE
-
-.sp
-.ne 2
-.na
-\fBpartition\fR
-.ad
-.RS 13n
-Create and modify slices.
-.RE
-
-.sp
-.ne 2
-.na
-\fBquit\fR
-.ad
-.RS 13n
-Exit the format menu.
-.RE
-
-.sp
-.ne 2
-.na
-\fBrepair\fR
-.ad
-.RS 13n
-Repair a specific block on the disk.
-.RE
-
-.sp
-.ne 2
-.na
-\fBsave\fR
-.ad
-.RS 13n
-Save new disk and slice information.
-.RE
-
-.sp
-.ne 2
-.na
-\fBtype\fR
-.ad
-.RS 13n
-Select (define) a disk type.
-.RE
-
-.sp
-.ne 2
-.na
-\fBverify\fR
-.ad
-.RS 13n
-Read and display labels. Print information such as the number of cylinders,
-alternate cylinders, heads, sectors, and the partition table.
-.RE
-
-.sp
-.ne 2
-.na
-\fBvolname\fR
-.ad
-.RS 13n
-Label the disk with a new eight character volume name.
-.RE
-
-.SH ENVIRONMENT VARIABLES
-.ne 2
-.na
-\fB\fBFORMAT_PATH\fR\fR
-.ad
-.RS 15n
-a colon-separated list of filenames and/or directories of disk and partition
-definitions. If a directory is specified, \fBformat\fR searches for the file
-\fBformat.dat\fR in that directory.
-.RE
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/etc/format.dat\fR\fR
-.ad
-.RS 19n
-default data file
-.RE
-
-.SH SEE ALSO
-\fBfmthard\fR(1M), \fBprtvtoc\fR(1M), \fBrmformat\fR(1), \fBformat.dat\fR(4),
-\fBattributes\fR(5), \fBsd\fR(7D)
-.sp
-.LP
-\fI\fR
-.SS "x86 Only"
-\fBfdisk\fR(1M)
-.SH WARNINGS
-When the \fBformat\fR function is selected to format the Maxtor 207MB disk, the
-following message displays:
-.sp
-.in +2
-.nf
-Mode sense page(4) reports rpm value as 0, adjusting it to 3600
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-This is a drive bug that may also occur with older third party drives. The
-above message is not an error; the drive will still function correctly.
-.sp
-.LP
-Cylinder 0 contains the partition table (disk label), which can be overwritten
-if used in a raw disk partition by third party software.
-.sp
-.LP
-\fBformat\fR supports writing \fBEFI\fR-compliant disk labels in order to
-support disks or \fBLUN\fRs with capacities greater than one terabyte. However,
-care should be exercised since many software components, such as filesystems
-and volume managers, are still restricted to capacities of one terabyte or
-less. See the \fISystem Administration Guide: Basic Administration\fR for
-additional information.
-.sp
-.LP
-By default, on an unlabeled disk, EFI labels will be written on disks larger
-than 2 TB. When \fBformat\fR is invoked with the \fB-e\fR option, on writing
-the label, the label type can be chosen. Booting is not currently supported on
-a disk with an EFI label.
-.SH NOTES
-\fBformat\fR provides a help facility you can use whenever format is expecting
-input. You can request help about what information is expected by simply
-entering a question mark (\fB?\fR) and \fBformat\fR prints a brief description
-of what type of input is needed. If you enter a \fB?\fR at the menu prompt, a
-list of available commands is displayed.
-.sp
-.LP
-For \fBSCSI\fR disks, formatting is done with both Primary and Grown defects
-list by default. However, if only Primary list is extracted in defect menu
-before formatting, formatting will be done with Primary list only.
-.sp
-.LP
-Changing the state of the caches is only supported on \fBSCSI\fR devices, and
-not all \fBSCSI\fR devices support changing or saving the state of the caches.
-.sp
-.LP
-The \fBNCSC-TG-025\fR algorithm for overwriting meets the \fBDoD\fR 5200.28-M
-(\fBADP\fR Security Manual) Eraser Procedures specification. The \fBNIST\fR
-Guidelines for Media Sanitization (\fBNIST\fR \fBSP\fR 800-88) also reference
-this algorithm.
diff --git a/usr/src/man/man1m/fruadm.1m b/usr/src/man/man1m/fruadm.1m
deleted file mode 100644
index a4683179c3..0000000000
--- a/usr/src/man/man1m/fruadm.1m
+++ /dev/null
@@ -1,214 +0,0 @@
-'\" te
-.\" Copyright (c) 2002, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH FRUADM 1M "Feb 22, 2002"
-.SH NAME
-fruadm \- prints and updates customer data associated with FRUs
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/platform/sun4u/sbin/fruadm\fR
-.fi
-
-.LP
-.nf
-\fB/usr/platform/sun4u/sbin/fruadm\fR \fB-l\fR
-.fi
-
-.LP
-.nf
-\fB/usr/platform/sun4u/sbin/fruadm\fR [\fB-r\fR] \fIpath\fR [\fItext\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBfruadm\fR prints or sets the customer data for Field-Replaceable Units
-(\fBFRU\fRs).
-.sp
-.LP
-Without arguments, \fBfruadm\fR prints the paths of all \fBFRU ID\fR-capable
-\fBFRU\fRs (containers) in the system, along with the contents of the customer
-data record, if present, for each such \fBFRU\fR; for \fBFRU\fRs without
-customer data, \fBfruadm\fR prints only the container's path.
-.sp
-.LP
- Only a privileged user can create or update data in containers. The privileges
-required to perform these write operations are hardware dependent. Typically, a
-default system configuration restricts write operations to the superuser or to
-the platform-administrator user.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-l\fR\fR
-.ad
-.RS 6n
-List the system's frutree paths.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-r\fR\fR
-.ad
-.RS 6n
-Recursively display or update the data for all containers rooted at the
-argument \fIpath\fR.
-.RE
-
-.SH OPERANDS
-.sp
-.LP
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fB\fIpath\fR\fR
-.ad
-.RS 8n
-A full or partial system frutree path for or under which to print or set the
-customer data. The first field of each line of output of \fBfruadm \fR\fB-l\fR
-gives the valid full \fBfrutree\fR paths for the system.
-.sp
-Paths can include shell meta-characters; such paths should be quoted
-appropriately for the user's shell. For partial paths, the first matching full
-path is selected for display or update. Without the \fB-r\fR option, the path
-must be that of a container; with the \fB-r\fR option, all containers (if any)
-under \fIpath\fR will be selected.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fItext\fR\fR
-.ad
-.RS 8n
-Up to 80 characters of text set as the customer data. If the text contains
-white space or shell metacharacters, it should be quoted appropriately for the
-user's shell.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRDisplaying All Customer Data
-.sp
-.LP
-The following example prints all customer data available from \fBFRU\fRs on the
-system. For containers with no customer data, only the containers' paths will
-be listed.
-
-.sp
-.in +2
-.nf
-example% fruadm
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRDisplaying Customer Data For a Single FRU
-.sp
-.LP
-The following command prints the customer data, if present, for the specified
-\fBFRU\fR:
-
-.sp
-.in +2
-.nf
-example% fruadm /frutree/chassis/system-board
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRDisplaying Customer Data For a Single FRU
-.sp
-.LP
-The following command prints the customer data, if present, for the first
-\fBmem-module\fR found:
-
-.sp
-.in +2
-.nf
-example% fruadm mem-module
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 4 \fR Setting Customer Data
-.sp
-.LP
-The following example sets the customer data for a \fBFRU\fR:
-
-.sp
-.in +2
-.nf
-example# fruadm system-board 'Asset Tag 123456'
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 5 \fRSetting Customer Data
-.sp
-.LP
-The following command sets the customer data for all \fBFRU\fRs under
-\fBchassis\fR:
-
-.sp
-.in +2
-.nf
-example# fruadm -r /frutree/chassis "Property of XYZ, Inc."
-.fi
-.in -2
-.sp
-
-.SH EXIT STATUS
-.sp
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR \fR
-.ad
-.RS 6n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB>\fB0\fR\fR
-.ad
-.RS 6n
-An error occurred.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Unstable
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBprtfru\fR(1M), \fBattributes\fR(5)
diff --git a/usr/src/man/man1m/fsck.1m b/usr/src/man/man1m/fsck.1m
deleted file mode 100644
index 42fbf3a186..0000000000
--- a/usr/src/man/man1m/fsck.1m
+++ /dev/null
@@ -1,394 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 2015 Nexenta Systems, Inc. All rights reserved.
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH FSCK 1M "Sep 8, 2015"
-.SH NAME
-fsck \- check and repair file systems
-.SH SYNOPSIS
-.LP
-.nf
-\fBfsck\fR [\fB-F\fR \fIFSType\fR] [\fB-m\fR] [\fB-V\fR] [\fB-v\fR] [\fIspecial\fR]...
-.fi
-
-.LP
-.nf
-\fBfsck\fR [\fB-F\fR \fIFSType\fR] [\fB-n\fR | N | y | Y] [\fB-V\fR] [\fB-v\fR]
- [\fB-o\fR \fIFSType-specific-options\fR] [\fIspecial\fR]...
-.fi
-
-.SH DESCRIPTION
-.LP
-\fBfsck\fR audits and interactively repairs inconsistent file system
-conditions. If the file system is inconsistent the default action for each
-correction is to wait for the user to respond \fByes\fR or \fBno\fR. If the
-user does not have write permission \fBfsck\fR defaults to a \fBno\fR action.
-Some corrective actions will result in loss of data. The amount and severity of
-data loss can be determined from the diagnostic output.
-.sp
-.LP
-\fIFSType-specific-options\fR are options specified in a comma-separated (with
-no intervening spaces) list of options or keyword-attribute pairs for
-interpretation by the \fIFSType-\fRspecific module of the command.
-.sp
-.LP
-\fIspecial\fR represents the character special device on which the file system
-resides, for example, \fB/dev/rdsk/c1t0d0s7\fR. Note: the character special
-device, not the block special device, should be used. \fBfsck\fR will not work
-if the block device is mounted.
-.sp
-.LP
-If no \fIspecial\fR device is specified \fBfsck\fR checks the file systems
-listed in \fB/etc/vfstab\fR. Those entries in \fB/etc/vfstab\fR which have a
-character special device entry in the \fBfsckdev\fR field and have a non-zero
-numeric entry in the \fBfsckpass\fR field will be checked. Specifying \fB-F\fR
-\fIFSType\fR limits the file systems to be checked to those of the type
-indicated.
-.sp
-.LP
-If \fIspecial\fR is specified, but \fB-F\fR is not, the file system type will
-be determined by looking for a matching entry in \fB/etc/vfstab\fR. If no entry
-is found, the default local file system type specified in \fB/etc/default/fs\fR
-will be used.
-.sp
-.LP
-If a file system type supports parallel checking, for example, \fBufs,\fR some
-file systems eligible for checking may be checked in parallel. Consult the file
-system-specific man page (for example, \fBfsck_ufs\fR(1M)) for more
-information.
-.SH OPTIONS
-.LP
-The following generic options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-F\fR \fIFSType\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify the file system type on which to operate.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-m\fR\fR
-.ad
-.sp .6
-.RS 4n
-Check but do not repair. This option checks that the file system is suitable
-for mounting, returning the appropriate exit status. If the file system is
-ready for mounting, \fBfsck\fR displays a message such as:
-.sp
-.in +2
-.nf
-ufs fsck: sanity check: /dev/rdsk/c0t3d0s1 okay
-.fi
-.in -2
-.sp
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR | \fB-N\fR\fR
-.ad
-.sp .6
-.RS 4n
-Assume a \fBno\fR response to all questions asked by \fBfsck\fR; do not open
-the file system for writing.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-V\fR\fR
-.ad
-.sp .6
-.RS 4n
-Echo the expanded command line but do not execute the command. This option may
-be used to verify and to validate the command line.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.sp .6
-.RS 4n
-Enables verbose output. Might not be supported by all filesystem-specific
-\fBfsck\fR implementations.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-y\fR | \fBY\fR\fR
-.ad
-.sp .6
-.RS 4n
-Assume a \fByes\fR response to all questions asked by \fBfsck\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-o\fR \fIspecific-options\fR\fR
-.ad
-.sp .6
-.RS 4n
-These \fIspecific-options\fR can be any combination of the following separated
-by commas (with no intervening spaces).
-.sp
-.ne 2
-.na
-\fB\fBb=\fR\fIn\fR\fR
-.ad
-.sp .6
-.RS 4n
-Use block \fIn\fR as the super block for the file system. Block 32 is always
-one of the alternate super blocks. Determine the location of other super blocks
-by running \fBnewfs\fR(1M) with the \fB-Nv\fR options specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBc\fR\fR
-.ad
-.sp .6
-.RS 4n
-If the file system is in the old (static table) format, convert it to the new
-(dynamic table) format. If the file system is in the new format, convert it to
-the old format provided the old format can support the file system
-configuration. In interactive mode, \fBfsck\fR will list the direction the
-conversion is to be made and ask whether the conversion should be done. If a
-negative answer is given, no further operations are done on the file system. In
-preen mode, the direction of the conversion is listed and done if possible
-without user interaction. Conversion in preen mode is best used when all the
-file systems are being converted at once. The format of a file system can be
-determined from the first line of output from \fBfstyp\fR(1M). Note: the
-\fBc\fR option is seldom used and is included only for compatibility with
-pre-4.1 releases. There is no guarantee that this option will be included in
-future releases.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBf\fR\fR
-.ad
-.sp .6
-.RS 4n
-Force checking of file systems regardless of the state of their super block
-clean flag.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBp\fR\fR
-.ad
-.sp .6
-.RS 4n
-Check and fix the file system non-interactively ("preen"). Exit immediately if
-there is a problem requiring intervention. This option is required to enable
-parallel file system checking.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBw\fR\fR
-.ad
-.sp .6
-.RS 4n
-Check writable file systems only.
-.RE
-
-.RE
-
-.SH EXIT STATUS
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.sp .6
-.RS 4n
-file system is unmounted and OK
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB1\fR\fR
-.ad
-.sp .6
-.RS 4n
-erroneous parameters are specified
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB32\fR\fR
-.ad
-.sp .6
-.RS 4n
-file system is unmounted and needs checking (\fBfsck\fR \fB-m\fR only)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB33\fR\fR
-.ad
-.sp .6
-.RS 4n
-file system is already mounted
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB34\fR\fR
-.ad
-.sp .6
-.RS 4n
-cannot stat device
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB35\fR\fR
-.ad
-.sp .6
-.RS 4n
-a filesystem that is mounted read/write was modified - reboot
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB36\fR\fR
-.ad
-.sp .6
-.RS 4n
-uncorrectable errors detected - terminate normally
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB37\fR\fR
-.ad
-.sp .6
-.RS 4n
-a signal was caught during processing
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB39\fR\fR
-.ad
-.sp .6
-.RS 4n
-uncorrectable errors detected - terminate immediately
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB40\fR\fR
-.ad
-.sp .6
-.RS 4n
-file system is mounted read-only and is OK
-.RE
-
-.SH USAGE
-.LP
-The \fBfsck\fR command is \fBlarge file aware\fR for UFS file systems, per the
-\fBlargefile\fR(5) man page.
-.SH FILES
-.ne 2
-.na
-\fB\fB/etc/default/fs\fR\fR
-.ad
-.sp .6
-.RS 4n
-default local file system type. Default values can be set for the following
-flags in \fB/etc/default/fs\fR. For example: \fBLOCAL=ufs.\fR
-.sp
-.ne 2
-.na
-\fB\fBLOCAL\fR\fR
-.ad
-.sp .6
-.RS 4n
-The default partition for a command if no FSType is specified.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/vfstab\fR\fR
-.ad
-.sp .6
-.RS 4n
-list of default parameters for each file system
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Committed
-.TE
-
-.SH SEE ALSO
-.LP
-\fBclri\fR(1M), \fBfsck_ufs\fR(1M), \fBfsdb_ufs\fR(1M),
-\fBfsirand\fR(1M), \fBfstyp\fR(1M), \fBmkfs\fR(1M), \fBmkfs_ufs\fR(1M),
-\fBmountall\fR(1M), \fBnewfs\fR(1M), \fBreboot\fR(1M), \fBvfstab\fR(4),
-\fBattributes\fR(5), \fBlargefile\fR(5), \fBufs\fR(7FS)
-.SH WARNINGS
-.LP
-The operating system buffers file system data. Running \fBfsck\fR on a mounted
-file system can cause the operating system's buffers to become out of date with
-respect to the disk. For this reason, the file system should be \fIunmounted\fR
-when \fBfsck\fR is used. If this is not possible, care should be taken that the
-system is quiescent and that it is rebooted immediately after \fBfsck\fR is
-run. Quite often, however, this will not be sufficient. A panic will probably
-occur if running \fBfsck\fR on a file system modifies the file system.
-.SH NOTES
-.LP
-This command may not be supported for all \fIFSTypes\fR.
-.LP
-Starting with Solaris 9, \fBfsck\fR manages extended attribute data on the
-disk. (See \fBfsattr\fR(5) for a description of extended file attributes.) A
-file system with extended attributes can be mounted on versions of Solaris that
-are not attribute-aware (versions prior to Solaris 9), but the attributes will
-not be accessible and \fBfsck\fR will strip them from the files and place them
-in \fBlost+found\fR. Once the attributes have been stripped, the file system is
-completely stable on versions of Solaris that are not attribute-aware, but
-would be considered corrupted on attribute-aware versions. In the latter
-circumstance, run the attribute-aware \fBfsck\fR to stabilize the file system
-before using it in an attribute-aware environment.
diff --git a/usr/src/man/man1m/fsck_pcfs.1m b/usr/src/man/man1m/fsck_pcfs.1m
deleted file mode 100644
index 55c16de8b2..0000000000
--- a/usr/src/man/man1m/fsck_pcfs.1m
+++ /dev/null
@@ -1,207 +0,0 @@
-'\" te
-.\" Copyright (c) 2000, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH FSCK_PCFS 1M "Jan 28, 2000"
-.SH NAME
-fsck_pcfs \- file system consistency check and interactive repair
-.SH SYNOPSIS
-.LP
-.nf
-\fBfsck\fR \fB-F\fR pcfs [\fIgeneric_options\fR] \fIspecial\fR
-.fi
-
-.LP
-.nf
-\fBfsck\fR \fB-F\fR pcfs [\fIgeneric_options\fR] [\fB-o\fR \fIspecific_options\fR] \fIspecial\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBfsck\fR utility audits and interactively repairs inconsistent conditions
-on file systems. \fIspecial\fR represents the character special device on which
-the file system resides, for example \fB/dev/rdiskette\fR. The character
-special device, not the block special device, should be used.
-.sp
-.LP
-In the case of correcting serious inconsistencies, by default, \fBfsck\fR asks
-for confirmation before making a repair and waits for the operator to respond
-either \fByes\fR or \fBno\fR. If the operator does not have write permission on
-the file system, \fBfsck\fR defaults to a \fB-n\fR (no corrections) action. See
-\fBfsck\fR(1M).
-.sp
-.LP
-Repairing some file system inconsistencies may result in loss of data. The
-amount and severity of data loss may be determined from the diagnostic output.
-.sp
-.LP
-When executed with the verify option (\fB\fR\fB-o\fR\fB v\fR), \fBfsck_pcfs\fR
-automatically scans the entire file system to verify that all of its allocation
-units are accessible. If it finds any units inaccessible, it updates the file
-allocation table (\fBFAT\fR) appropriately. It also updates any effected
-directory entries to reflect the problem. This directory update includes
-truncating the file at the point in its allocation chain where the file data is
-no longer accessible. Any remaining accessible allocation units become
-orphaned.
-.sp
-.LP
-Orphaned chains of accessible allocation units are, with the operator's
-concurrence, linked back into the file system as files in the root directory.
-These files are assigned names of the form file\fINNNN\fR.chk, where the
-\fIN\fRs are digits in the integral range from \fB0\fR through \fB9\fR.
-.sp
-.LP
-After successfully scanning and correcting any errors in the file system,
-\fBfsck\fR displays a summary of information about the file system. This
-summary includes the size of the file system in bytes, the number of bytes used
-in directories and individual files, and the number of available allocation
-units remaining in the file system.
-.SH OPTIONS
-.sp
-.ne 2
-.na
-\fB\fIgeneric_options\fR\fR
-.ad
-.RS 23n
-The following generic options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-m\fR\fR
-.ad
-.RS 11n
-Check but do not repair. This option checks that the file system is suitable
-for mounting, returning the appropriate exit status. If the file system is
-ready for mounting, \fBfsck\fR displays a message such as:
-.sp
-.in +2
-.nf
-pcfs fsck: sanity check:
-\fB/dev/rdiskette\fR okay
-.fi
-.in -2
-.sp
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR | \fB-N\fR\fR
-.ad
-.RS 11n
- Assume a no response to all questions asked by \fBfsck\fR; do not open the
-file system for writing.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-V\fR\fR
-.ad
-.RS 11n
-Echo the expanded command line, but do not execute the command. This option
-may be used to verify and to validate the command line.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-y\fR | \fB-Y\fR\fR
-.ad
-.RS 11n
-Assume a \fByes\fR response to all questions asked by \fBfsck\fR.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-o\fR \fIspecific_options\fR\fR
-.ad
-.RS 23n
-Specify \fBpcfs\fR file system specific options in a comma-separated list, in
-any combination, with no intervening spaces.
-.sp
-.ne 2
-.na
-\fBv\fR
-.ad
-.RS 5n
-Verify all allocation units are accessible prior to correcting inconsistencies
-in the metadata.
-.RE
-
-.sp
-.ne 2
-.na
-\fBp\fR
-.ad
-.RS 5n
-Check and fix the file system non-interactively (\fBpreen\fR). Exit
-immediately if there is a problem requiring intervention.
-.RE
-
-.sp
-.ne 2
-.na
-\fBw\fR
-.ad
-.RS 5n
-Check writable file systems only.
-.RE
-
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fIspecial\fR\fR
-.ad
-.RS 11n
-The device which contains the pcfs. The device name for a diskette is specified
-as \fB/dev/rdiskette0\fR for the first diskette drive, or \fB/dev/rdiskette1\fR
-for a second diskette drive. A hard disk device or high-capacity removable
-device name much be qualified with a suffix to indicate the proper \fBFDISK\fR
-partition.
-.sp
-For example, in the names: \fB/dev/rdsk/c0t0d0p0:c\fR and
-\fB/dev/rdsk/c0t4d0s2:c\fR, the \fB:c\fR suffix indicates the first partition
-on the disk contains the \fBpcfs\fR.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Stable
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBfsck\fR(1M), \fBfstyp\fR(1M), \fBfdisk\fR(1M), \fBmkfs\fR(1M),
-\fBmkfs_pcfs\fR(1M), \fBmountall\fR(1M), \fBattributes\fR(5), \fBpcfs\fR(7FS),
-.SH WARNINGS
-.sp
-.LP
-The operating system buffers file system data. Running \fBfsck\fR on a mounted
-file system can cause the operating system's buffers to become out of date with
-respect to the disk. For this reason, the file system should be unmounted when
-\fBfsck\fR is used. If this is not possible, care should be taken that the
-system is quiescent and that it is rebooted immediately after \fBfsck\fR is
-run. Quite often, however, this is not sufficient. A panic will probably occur
-if running \fBfsck\fR on a file system modifies the file system.
diff --git a/usr/src/man/man1m/fsck_udfs.1m b/usr/src/man/man1m/fsck_udfs.1m
deleted file mode 100644
index d8253b3d9c..0000000000
--- a/usr/src/man/man1m/fsck_udfs.1m
+++ /dev/null
@@ -1,329 +0,0 @@
-'\" te
-.\" Copyright (c) 2000 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH FSCK_UDFS 1M "Nov 26, 2017"
-.SH NAME
-fsck_udfs \- file system consistency check and interactive repair
-.SH SYNOPSIS
-.LP
-.nf
-\fBfsck\fR \fB-F\fR udfs [\fIgeneric_options\fR] [\fIspecial \|.\|.\|.\fR]
-.fi
-
-.LP
-.nf
-\fBfsck\fR \fB-F\fR udfs [\fIgeneric_options\fR] [\fB-o\fR \fIspecific_options\fR]
- [\fIspecial \|.\|.\|.\fR]
-.fi
-
-.SH DESCRIPTION
-.LP
-\fBfsck\fR audits and interactively repairs inconsistent conditions on file
-systems. A file system to be checked can be specified by giving the name of the
-block or character special device or by giving the name of its mount point if a
-matching entry exists in \fB/etc/vfstab\fR.
-.sp
-.LP
-\fIspecial\fR represents the character special device, for example,
-\fB/dev/rdsk/c0t2d0s0\fR, on which the file system resides. The character
-special device, not the block special device should be used. \fBfsck\fR does
-not work on a mounted block device.
-.sp
-.LP
-If no special device is specified, all \fBudfs\fR file systems specified in the
-\fBvfstab\fR file with a \fBfsckdev\fR entry are checked. If the \fB-p\fR
-(\fBpreen\fR) option is specified, \fBudfs\fR file systems with an
-\fBfsckpass\fR number greater than \fB1\fR are checked in parallel. See
-\fBfsck\fR(1M).
-.sp
-.LP
-In the case of correcting serious inconsistencies, by default, \fBfsck\fR asks
-for confirmation before making a repair and waits for the operator to respond
-with either \fByes\fR or \fBno\fR. If the operator does not have write
-permission on the file system, \fBfsck\fR defaults to the \fB-n\fR (no
-corrections) option. See \fBfsck\fR(1M).
-.sp
-.LP
-Repairing some file system inconsistencies can result in loss of data. The
-amount and severity of data loss can be determined from the diagnostic output.
-.sp
-.LP
-\fBfsck\fR automatically corrects innocuous inconsistencies. It displays a
-message for each corrected inconsistency that identifies the nature of the
-correction which took place on the file system. After successfully correcting a
-file system, \fBfsck\fR prints the number of files on that file system and the
-number of used and free blocks.
-.sp
-.LP
-Inconsistencies checked are as follows:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Blocks claimed by more than one file or the free list
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Blocks claimed by a file or the free list outside the range of the file system
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Incorrect link counts in file entries
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Incorrect directory sizes
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Bad file entry format
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Blocks not accounted for anywhere
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Directory checks, file pointing to unallocated file entry and absence of a
-parent directory entry
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Descriptor checks, more blocks for files than there are in the file system
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Bad free block list format
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Total free block count incorrect
-.RE
-.SH OPTIONS
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fIgeneric_options\fR\fR
-.ad
-.RS 23n
-The following \fIgeneric_options\fR are supported:
-.sp
-.ne 2
-.na
-\fB\fB-m\fR\fR
-.ad
-.RS 11n
-Check but do not repair. This option checks to be sure that the file system is
-suitable for mounting, and returns the appropriate exit status. If the file
-system is ready for mounting, \fBfsck \fRdisplays a message such as:
-.sp
-.in +2
-.nf
-udfs fsck: sanity check: /dev/rdsk/c0t2d0s0 okay
-.fi
-.in -2
-.sp
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR | \fB-N\fR\fR
-.ad
-.RS 11n
-Assume a \fBno\fR response to all questions asked by \fBfsck\fR; do not open
-the file system for writing.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-V\fR\fR
-.ad
-.RS 11n
-Echo the expanded command line, but do not execute the command. This option can
-be used to verify and to validate the command line.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-y\fR | \fB-Y\fR\fR
-.ad
-.RS 11n
-Assume a \fByes\fR response to all questions asked by \fBfsck\fR.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-o\fR \fIspecific_options\fR\fR
-.ad
-.RS 23n
-Specify \fBudfs\fR file system specific options in a comma-separated list with
-no intervening spaces. The following \fIspecific_options\fR are available:
-.sp
-.ne 2
-.na
-\fB\fBf\fR\fR
-.ad
-.RS 5n
-Force checking of file systems regardless of the state of their logical volume
-integrity state.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBp\fR\fR
-.ad
-.RS 5n
-Check and fix the file system non-interactively (\fBpreen\fR). Exit immediately
-if there is a problem that requires intervention. This option is required to
-enable parallel file system checking.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBw\fR\fR
-.ad
-.RS 5n
-Check writable file systems only.
-.RE
-
-.RE
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/etc/vfstab\fR\fR
-.ad
-.RS 15n
-List of default parameters for each file system.
-.RE
-
-.SH SEE ALSO
-.LP
-\fBfsck\fR(1M), \fBfsdb_udfs\fR(1M), \fBfstyp\fR(1M), \fBmkfs\fR(1M),
-\fBmkfs_udfs\fR(1M), \fBmountall\fR(1M), \fBreboot\fR(1M), \fBvfstab\fR(4),
-\fBattributes\fR(5)
-.SH WARNINGS
-.LP
-The operating system buffers file system data. Running \fBfsck\fR on a mounted
-file system can cause the operating system's buffers to become out of date with
-respect to the disk. For this reason, use \fBfsck\fR only when the file system
-is unmounted. If this is not possible, take care that the system is quiescent
-and that it is rebooted immediately after running \fBfsck\fR. A panic will
-probably occur if running \fBfsck\fR on a file system that modifies the file
-system while it is mounted.
-.sp
-.LP
-If an unmount of the file system is not done before the system is shut down,
-the file system might become corrupted. In this case, a file system check needs
-to be completed before the next mount operation.
-.SH DIAGNOSTICS
-.ne 2
-.na
-\fBnot writable\fR
-.ad
-.sp .6
-.RS 4n
-You cannot write to the device.
-.RE
-
-.sp
-.ne 2
-.na
-\fBCurrently Mounted on\fR
-.ad
-.sp .6
-.RS 4n
-The device is already mounted and cannot run \fBfsck\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBFILE SYSTEM WAS MODIFIED\fR
-.ad
-.sp .6
-.RS 4n
-File system has been modified to bring it to a consistent state.
-.RE
-
-.sp
-.ne 2
-.na
-\fBCan't read allocation extent\fR
-.ad
-.sp .6
-.RS 4n
-Cannot read the block containing allocation extent.
-.RE
-
-.sp
-.ne 2
-.na
-\fBBad tag on alloc extent\fR
-.ad
-.sp .6
-.RS 4n
-Invalid tag detected when expecting an allocation extent.
-.RE
-
-.sp
-.ne 2
-.na
-\fBVolume sequence tag error\fR
-.ad
-.sp .6
-.RS 4n
-Invalid tag detected in the volume sequence.
-.RE
-
-.sp
-.ne 2
-.na
-\fBSpace bitmap tag error\fR
-.ad
-.sp .6
-.RS 4n
-Invalid tag detected in the space bitmap.
-.RE
-
-.sp
-.ne 2
-.na
-\fBUNEXPECTED INCONSISTENCY; RUN fsck MANUALLY\fR
-.ad
-.sp .6
-.RS 4n
-Use \fBfsck\fR in interactive mode.
-.RE
-
diff --git a/usr/src/man/man1m/fsck_ufs.1m b/usr/src/man/man1m/fsck_ufs.1m
deleted file mode 100644
index 1263d958ba..0000000000
--- a/usr/src/man/man1m/fsck_ufs.1m
+++ /dev/null
@@ -1,320 +0,0 @@
-'\" te
-.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH FSCK_UFS 1M "Aug 2, 2005"
-.SH NAME
-fsck_ufs \- file system consistency check and interactive repair
-.SH SYNOPSIS
-.LP
-.nf
-\fBfsck\fR \fB-F\fR ufs [\fIgeneric-options\fR] [\fIspecial\fR]...
-.fi
-
-.LP
-.nf
-\fBfsck\fR \fB-F\fR ufs [\fIgeneric-options\fR] [\fB-o\fR \fIspecific-options\fR]
- [\fIspecial\fR]...
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBfsck\fR utility audits and interactively repairs inconsistent conditions
-on file systems. A file system to be checked may be specified by giving the
-name of the block or character \fIspecial\fR device or by giving the name of
-its mount point if a matching entry exists in \fB/etc/vfstab\fR.
-.sp
-.LP
-The \fIspecial\fR parameter represents the character special device, for
-example, \fB/dev/rdsk/c1t0d0s7\fR, on which the file system resides. The
-character special device, not the block special device should be used. The
-\fBfsck\fR utility will not work if the block device is mounted, unless the
-file system is error-locked.
-.sp
-.LP
-If no \fIspecial\fR device is specified, all \fBufs\fR file systems specified
-in the \fBvfstab\fR with a \fBfsckdev\fR entry will be checked. If the \fB-p\fR
-(``preen'') option is specified, \fBufs\fR file systems with an \fBfsckpass\fR
-number greater than \fB1\fR are checked in parallel. See \fBfsck\fR(1M).
-.sp
-.LP
-In the case of correcting serious inconsistencies, by default, \fBfsck\fR asks
-for confirmation before making a repair and waits for the operator to respond
-either \fByes\fR or \fBno\fR. If the operator does not have write permission on
-the file system, \fBfsck\fR will default to a \fB-n\fR (no corrections) action.
-See \fBfsck\fR(1M).
-.sp
-.LP
-Repairing some file system inconsistencies can result in loss of data. The
-amount and severity of data loss can be determined from the diagnostic output.
-.sp
-.LP
-The \fBfsck\fR utility automatically corrects innocuous inconsistencies such as
-unreferenced inodes, too-large link counts in inodes, missing blocks in the
-free list, blocks appearing in the free list and also in files, or incorrect
-counts in the super block. It displays a message for each inconsistency
-corrected that identifies the nature of the correction on the file system which
-took place. After successfully correcting a file system, \fBfsck\fR prints the
-number of files on that file system, the number of used and free blocks, and
-the percentage of fragmentation.
-.sp
-.LP
-Inconsistencies checked include:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Blocks claimed by more than one inode or the free list.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Blocks claimed by an inode or the free list outside the range of the file
-system.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Incorrect link counts.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Incorrect directory sizes.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Bad inode format.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Blocks not accounted for anywhere.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Directory checks, file pointing to unallocated inode, inode number out of
-range, and absence of `\fB\&.\fR' and `\fB\&.\|.\fR' as the first two entries
-in each directory.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Super Block checks: more blocks for inodes than there are in the file system.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Bad free block list format.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Total free block and/or free inode count incorrect.
-.RE
-.sp
-.LP
-Orphaned files and directories (allocated but unreferenced) are, with the
-operator's concurrence, reconnected by placing them in the \fBlost+found\fR
-directory. The name assigned is the inode number. If the \fBlost+found\fR
-directory does not exist, it is created. If there is insufficient space in the
-\fBlost+found\fR directory, its size is increased.
-.sp
-.LP
-An attempt to mount a \fBufs\fR file system with the \fB\fR\fB-o\fR\fB
-nolargefiles\fR option will fail if the file system has ever contained a large
-file (a file whose size is greater than or equal to 2 Gbyte). Invoking
-\fBfsck\fR resets the file system state if no large files are present in the
-file system. A successful mount of the file system after invoking \fBfsck\fR
-indicates the absence of large files in the file system. An unsuccessful mount
-attempt indicates the presence of at least one large file. See
-\fBmount_ufs\fR(1M).
-.SH OPTIONS
-.sp
-.LP
-The \fIgeneric-options\fR consist of the following options:
-.sp
-.ne 2
-.na
-\fB\fB-m\fR\fR
-.ad
-.RS 12n
-Check but do not repair. This option checks that the file system is suitable
-for mounting, returning the appropriate exit status. If the file system is
-ready for mounting, \fBfsck\fR displays a message such as:
-.sp
-.ne 2
-.na
-\fB\fR
-.ad
-.sp .6
-.RS 4n
-\fBufs fsck: sanity check: /dev/rdsk/c0t3d0s1 okay\fR
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR\||\|\fBN\fR\fR
-.ad
-.RS 12n
-Assume a \fBno\fR response to all questions asked by \fBfsck\fR; do not open
-the file system for writing.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-V\fR\fR
-.ad
-.RS 12n
-Echo the expanded command line, but do not execute the command. This option may
-be used to verify and to validate the command line.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.RS 12n
-Enables verbose output. Might not be supported by all filesystem-specific
-\fBfsck\fR implementations.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-y\fR\||\|\fBY\fR\fR
-.ad
-.RS 12n
-Assume a \fByes\fR response to all questions asked by \fBfsck\fR.
-.RE
-
-.sp
-.LP
-See generic \fBfsck\fR(1M) for the details for specifying \fIspecial\fR.
-.sp
-.ne 2
-.na
-\fB\fB-o\fR \fIspecific-options\fR\fR
-.ad
-.RS 23n
-Specify \fBufs\fR file system specific options. These options can be any
-combination of the following separated by commas (with no intervening spaces).
-.sp
-.ne 2
-.na
-\fB\fBb=\fR\fIn\fR\fR
-.ad
-.RS 7n
-Use block \fIn\fR as the super block for the file system. Block 32 is always
-one of the alternate super blocks. Determine the location of other super blocks
-by running \fBnewfs\fR(1M) with the \fB-Nv\fR options specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBf\fR\fR
-.ad
-.RS 7n
-Force checking of file systems regardless of the state of their super block
-clean flag.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBp\fR\fR
-.ad
-.RS 7n
-Check and fix the file system non-interactively ("preen"). Exit immediately if
-there is a problem requiring intervention. This option is required to enable
-parallel file system checking.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBw\fR\fR
-.ad
-.RS 7n
-Check writable file systems only.
-.RE
-
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/vfstab\fR\fR
-.ad
-.RS 15n
-list of default parameters for each file system
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBclri\fR(1M), \fBfsck\fR(1M), \fBfsdb_ufs\fR(1M), \fBfsirand\fR(1M),
-\fBfstyp\fR(1M), \fBmkfs\fR(1M), \fBmkfs_ufs\fR(1M), \fBmount_ufs\fR(1M),
-\fBmountall\fR(1M), \fBnewfs\fR(1M), \fBreboot\fR(1M), \fBvfstab\fR(4),
-\fBattributes\fR(5), \fBlargefile\fR(5), \fBufs\fR(7FS)
-.SH WARNINGS
-.sp
-.LP
-The operating system buffers file system data. Running \fBfsck\fR on a mounted
-file system can cause the operating system's buffers to become out of date with
-respect to the disk. For this reason, the file system should be \fIunmounted\fR
-when \fBfsck\fR is used. If this is not possible, care should be taken that the
-system is quiescent and that it is rebooted immediately after \fBfsck\fR is
-run. Quite often, however, this will not be sufficient. A panic will probably
-occur if running \fBfsck\fR on a file system modifies the file system.
-.SH NOTES
-.sp
-.LP
-It is usually faster to check the character special device than the block
-special device.
-.sp
-.LP
-Running \fBfsck\fR on file systems larger than 2 Gb fails if the user chooses
-to use the block interface to the device:
-.sp
-.ne 2
-.na
-\fB\fBfsck\fR \fB/dev/dsk/c?t?d?s?\fR\fR
-.ad
-.RS 26n
-
-.RE
-
-.sp
-.LP
-rather than the raw (character special) device:
-.sp
-.ne 2
-.na
-\fB\fBfsck\fR \fB/dev/rdsk/c?t?d?s?\fR\fR
-.ad
-.RS 27n
-
-.RE
-
diff --git a/usr/src/man/man1m/fsdb.1m b/usr/src/man/man1m/fsdb.1m
deleted file mode 100644
index 4b9cab6eed..0000000000
--- a/usr/src/man/man1m/fsdb.1m
+++ /dev/null
@@ -1,101 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 1996, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH FSDB 1M "Sep 16, 1996"
-.SH NAME
-fsdb \- file system debugger
-.SH SYNOPSIS
-.LP
-.nf
-\fBfsdb\fR [\fB-F\fR \fIFSType\fR] [\fB-V\fR] [\fB-o\fR \fIFSType-specific_options\fR] \fIspecial\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBfsdb\fR is a file system debugger that allows for the manual repair of a
-file system after a crash. \fIspecial\fR is a special device used to
-indicate the file system to be debugged. \fBfsdb\fR is intended for experienced
-users only. \fIFSType\fR is the file system type to be debugged. Since
-different \fIFSTypes\fR have different structures and hence different debugging
-capabilities, the manual pages for the \fIFSType-\fRspecific \fBfsdb\fR should
-be consulted for a more detailed description of the debugging capabilities.
-.SH OPTIONS
-.sp
-.ne 2
-.na
-\fB\fB-F\fR\fR
-.ad
-.RS 6n
-Specify the \fIFSType\fR on which to operate. The \fIFSType\fR should either
-be specified here or be determinable from \fB/etc/vfstab\fR by matching the
-\fIspecial\fR with an entry in the table, or by consulting
-\fB/etc/default/fs\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-V\fR\fR
-.ad
-.RS 6n
-Echo the complete command line, but do not execute the command. The command
-line is generated by using the options and arguments provided by the user and
-adding to them information derived from \fB/etc/vfstab\fR. This option may be
-used to verify and validate the command line.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-o\fR\fR
-.ad
-.RS 6n
-Specify \fIFSType-\fRspecific options.
-.RE
-
-.SH USAGE
-.sp
-.LP
-See \fBlargefile\fR(5) for the description of the behavior of \fBfsdb\fR when
-encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/default/fs\fR\fR
-.ad
-.RS 19n
-default local file system type. Default values can be set for the following
-flags in \fB/etc/default/fs\fR. For example: \fBLOCAL=ufs\fR
-.sp
-.ne 2
-.na
-\fB\fBLOCAL:\fR\fR
-.ad
-.RS 10n
-The default partition for a command if no FSType is specified.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/vfstab\fR\fR
-.ad
-.RS 19n
-list of default parameters for each file system
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBvfstab\fR(4), \fBattributes\fR(5), \fBlargefile\fR(5) Manual pages for the
-\fIFSType\fR-specific modules of \fBfsdb\fR.
-.SH NOTES
-.sp
-.LP
-This command may not be supported for all \fIFSTypes\fR.
diff --git a/usr/src/man/man1m/fsdb_udfs.1m b/usr/src/man/man1m/fsdb_udfs.1m
deleted file mode 100644
index 45be584aea..0000000000
--- a/usr/src/man/man1m/fsdb_udfs.1m
+++ /dev/null
@@ -1,1006 +0,0 @@
-'\" te
-.\" Copyright (c) 1999 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH FSDB_UDFS 1M "August 29, 2021"
-.SH NAME
-fsdb_udfs \- udfs file system debugger
-.SH SYNOPSIS
-.nf
-\fBfsdb \fR [\fB-F\fR] udfs [\fIgeneric_option\fR] [\fB-o \fR\fIspecific_option\fR] \fIspecial\fR
-.fi
-
-.SH DESCRIPTION
-The \fBfsdb_udfs\fR command is an interactive tool that can be used to patch up
-a damaged \fBudfs\fR file system. \fBfsdb_udfs\fR has conversions to translate
-block and i-numbers into their corresponding disk addresses. Mnemonic offsets
-to access different parts of an inode are also included. Mnemonic offsets
-greatly simplify the process of correcting control block entries or descending
-the file system tree.
-.sp
-.LP
-\fBfsdb\fR contains several error-checking routines to verify inode and block
-addresses. These can be disabled if necessary by invoking \fBfsdb\fR with the
-\fB-o\fR option or by using the \fBo\fR command.
-.sp
-.LP
-\fBfsdb\fR reads one block at a time, and therefore works with raw as well as
-block \fBI/O\fR devices. A buffer management routine is used to retain commonly
-used blocks of data in order to reduce the number of read system calls. All
-assignment operations result in an immediate write-through of the corresponding
-block. In order to modify any portion of the disk, \fBfsdb\fR must be invoked
-with the \fB-w\fR option.
-.sp
-.LP
-Wherever possible, \fBadb\fR-like syntax has been adopted to promote the use of
-\fBfsdb\fR through familiarity.
-.SH OPTIONS
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-o\fR \fIspecific_option\fR\fR
-.ad
-.RS 22n
-Specify \fBudfs\fR file system specific options in a comma-separated list with
-no intervening spaces. The following specific options are supported:
-.sp
-.ne 2
-.na
-\fBo\fR
-.ad
-.RS 12n
-Override some error conditions.
-.RE
-
-.sp
-.ne 2
-.na
-\fBp=\fIstring\fR\fR
-.ad
-.RS 12n
-Set prompt to \fIstring\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBw\fR
-.ad
-.RS 12n
-Open for write.
-.RE
-
-.sp
-.ne 2
-.na
-\fB?\fR
-.ad
-.RS 12n
-Display usage.
-.RE
-
-.RE
-
-.SH USAGE
-Numbers are considered hexadecimal by default. The user has control over how
-data is to be displayed or accepted. The \fBbase\fR command displays or sets
-the input and output base. Once set, all input defaults to this base and all
-output displays in this base. The base can be overridden temporarily for input
-by preceding hexadecimal numbers by \fB0x\fR, preceding decimal numbers with a
-\fB0t\fR, or octal numbers with a \fB0\fR. Hexadecimal numbers beginning with
-\fBa\fR-\fBf\fR or \fBA\fR-\fBF\fR must be preceded with a \fB0x\fR to
-distinguish them from commands.
-.sp
-.LP
-Disk addressing by \fBfsdb\fR is at the byte level. However, \fBfsdb\fR offers
-many commands to convert a desired inode, directory entry, block, and so forth,
-to a byte address. After the address has been calculated, \fBfsdb\fR records
-the result in the current address (\fBdot\fR).
-.sp
-.LP
-Several global values are maintained by \fBfsdb\fR\fB\fR:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Current base (referred to as \fBbase\fR)
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Current address (referred to as \fBdot\fR)
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Current inode (referred to as \fBinode\fR)
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Current count (referred to as \fBcount\fR)
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Current type (referred to as \fBtype\fR)
-.RE
-.sp
-.LP
-Most commands use the preset value of \fBdot\fR in their execution. For
-example,
-.sp
-.in +2
-.nf
- > 2:inode
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-first sets the value of dot (\fB\&.\fR) to \fB2\fR, colon (\fB:\fR), signifies
-the start of a command, and the \fBinode\fR command sets \fBinode\fR to
-\fB2\fR. A count is specified after a comma (\fB,\fR). Once set, count remains
-at this value until a new command is encountered that resets the value back to
-\fB1\fR (the default).
-.sp
-.LP
-So, if
-.sp
-.in +2
-.nf
-> 2000,400/X
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-is entered, \fB400\fR hex longs are listed from \fB2000\fR, and when completed,
-the value of dot is \fB 2000 + 400 * sizeof\fR (long). If a RETURN is then
-entered, the output routine uses the current values of \fBdot\fR, \fBcount\fR,
-and \fBtype\fR and displays \fB400 \fRmore hex longs. An asterisk (\fB*\fR)
-causes the entire block to be displayed. An example showing several commands
-and the use of RETURN would be:
-.sp
-.in +2
-.nf
-> 2:ino; 0:dir?d
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-or
-.sp
-.in +2
-.nf
-> 2:ino; 0:db:block?d
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The two examples are synonymous for getting to the first directory entry of the
-root of the file system. Once there, subsequently entering a RETURN, plus
-(\fB+\fR), or minus (\fB-\fR) advances to subsequent entries. Notice that
-.sp
-.in +2
-.nf
-> 2:inode; :ls
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-or
-.sp
-.in +2
-.nf
-> :ls /
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-is again synonymous.
-.SS "Expressions"
-The following symbols are recognized by \fBfsdb\fR:
-.sp
-.ne 2
-.na
-\fBRETURN\fR
-.ad
-.RS 13n
-Update the value of dot by the current value of \fItype\fR and \fIdisplay\fR
-using the current value of \fIcount\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fI#\fR\fR
-.ad
-.RS 13n
-Update the value of dot by specifying a numeric expression. Specify numeric
-expressions using addition, subtraction, multiplication, and division
-operators ( \fB+\fR, \fB-\fR, \fB*\fR, and \fB%\fR). Numeric expressions are
-evaluated from left to right and can use parentheses. After evaluation, the
-value of dot is updated.
-.RE
-
-.sp
-.ne 2
-.na
-\fB, \fIcount\fR\fR
-.ad
-.RS 13n
-Update the count indicator. The global value of \fIcount\fR is updated to
-\fIcount\fR. The value of \fIcount\fR remains until a new command is run. A
-\fIcount\fR specifier of \fB*\fR attempts to show a blocks's worth of
-information. The default for \fIcount\fR is \fB1\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB? \fI f\fR\fR
-.ad
-.RS 13n
-Display in structured style with format specifier \fBf\fR. See \fBFormatted
-Output\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB/ \fIf\fR\fR
-.ad
-.RS 13n
-Display in unstructured style with format specifier \fBf\fR. See \fBFormatted
-Output\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\&.\fR
-.ad
-.RS 13n
-Display the value of dot.
-.RE
-
-.sp
-.ne 2
-.na
-\fB+\fIe\fR\fR
-.ad
-.RS 13n
-Increment the value of dot by the expression \fIe\fR. The amount actually
-incremented is dependent on the size of type: \fBdot = dot + \fR\fIe \fR\fB*
-\fR\fBsizeof\fR (\fItype\fR) The default for \fIe\fR is \fB1\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\(mi\fIe\fR\fR
-.ad
-.RS 13n
-Decrement the value of dot by the expression \fIe \fR. See \fB+\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB*\fIe\fR\fR
-.ad
-.RS 13n
-Multiply the value of dot by the expression \fIe\fR. Multiplication and
-division don't use \fItype\fR. In the above calculation of dot, consider the
-\fBsizeof\fR (\fItype\fR) to be \fB1\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB%\fIe\fR\fR
-.ad
-.RS 13n
-Divide the value of dot by the expression \fIe\fR. See \fB*\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB< \fIname\fR\fR
-.ad
-.RS 13n
-Restore an address saved in register \fIname\fR. \fIname\fR must be a single
-letter or digit.
-.RE
-
-.sp
-.ne 2
-.na
-\fB> \fIname\fR\fR
-.ad
-.RS 13n
-Save an address in register \fIname\fR. \fIname\fR must be a single letter or
-digit.
-.RE
-
-.sp
-.ne 2
-.na
-\fB= \fIf\fR\fR
-.ad
-.RS 13n
-Display indicator. If \fIf\fR is a legitimate format specifier (see
-\fBFormatted Output\fR), then the value of dot is displayed using format
-specifier \fIf\fR. Otherwise, assignment is assumed. See \fB= [s] [e]\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB= [\fIs\fR] [\fIe\fR]\fR
-.ad
-.RS 13n
-Change the value of dot using an assignment indicator. The address pointed to
-by dot has its contents changed to the value of the expression \fIe\fR or to
-the \fBASCII\fR representation of the quoted (\fB"\fR) string \fIs\fR. This can
-be useful for changing directory names or \fBASCII\fR file information.
-.RE
-
-.sp
-.ne 2
-.na
-\fB=+ \fIe\fR\fR
-.ad
-.RS 13n
-Change the value of dot using an incremental assignment. The address pointed to
-by dot has its contents incremented by expression \fIe\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB=- e\fR
-.ad
-.RS 13n
-Change the value of dot using a decremental assignment. Decrement the contents
-of the address pointed to by dot by expression \fIe\fR.
-.RE
-
-.SS "Commands"
-A command must be prefixed by a colon (\fB:\fR). Only enough letters of the
-command to uniquely distinguish it are needed. Multiple commands can be entered
-on one line by separating them by a SPACE, TAB, or semicolon (\fB;\fR).
-.sp
-.LP
-To view a potentially unmounted disk in a reasonable manner, \fBfsdb\fR
-supports the \fBcd\fR, \fBpwd\fR, \fBls\fR, and \fBfind\fR commands. The
-functionality of each of these commands basically matches that of its UNIX
-counterpart. See \fBcd\fR(1), \fBpwd\fR(1), \fBls\fR(1), and \fBfind\fR(1) for
-details. The \fB*\fR, \fB,\fR, \fB?\fR, and \fB-\fR wildcard characters are
-also supported.
-.sp
-.LP
-The following commands are supported:
-.sp
-.ne 2
-.na
-\fBbase[=\fIb\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Display or set the base. All input and output is governed by the current base.
-Without the \fB=\fR \fIb\fR, displays the current base. Otherwise, sets the
-current base to \fIb\fR. Base is interpreted using the old value of base, so to
-ensure correctness use the \fB0\fR, \fB0t\fR, or \fB0x\fR prefix when changing
-the base. The default for base is hexadecimal.
-.RE
-
-.sp
-.ne 2
-.na
-\fBblock\fR
-.ad
-.sp .6
-.RS 4n
-Convert the value of dot to a block address.
-.RE
-
-.sp
-.ne 2
-.na
-\fBcd [\fIdir\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Change the current directory to directory \fIdir\fR. The current values of
-inode and dot are also updated. If \fBdir\fR is not specified, changes
-directories to inode 2, root (\fB/\fR).
-.RE
-
-.sp
-.ne 2
-.na
-\fBdirectory\fR
-.ad
-.sp .6
-.RS 4n
-If the current inode is a directory, converts the value of dot to a directory
-slot offset in that directory, and dot now points to this entry.
-.RE
-
-.sp
-.ne 2
-.na
-\fBfile\fR
-.ad
-.sp .6
-.RS 4n
-Set the value of dot as a relative block count from the beginning of the file.
-The value of dot is updated to the first byte of this block.
-.RE
-
-.sp
-.ne 2
-.na
-\fBfind \fIdir\fR [\fB-name\fR \fIn\fR] | [\fB-inum\fR\fI i\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Find files by name or i-number. Recursively searches directory \fIdir\fR and
-below for file names whose i-number matches \fBi\fR or whose name matches
-pattern \fIn\fR. Only one of the two options (\fB-name\fR or \fB-inum\fR) can
-be used at one time. The find \fB-print\fR is not necessary or accepted.
-.RE
-
-.sp
-.ne 2
-.na
-\fBfill=\fIp\fR\fR
-.ad
-.sp .6
-.RS 4n
-Fill an area of disk with pattern \fIp\fR. The area of disk is delimited by dot
-and count.
-.RE
-
-.sp
-.ne 2
-.na
-\fBinode\fR
-.ad
-.sp .6
-.RS 4n
-Convert the value of dot to an inode address. If successful, the current value
-of inode is updated as well as the value of dot. As a convenient shorthand, if
-\fB:inode\fR appears at the beginning of the line, the value of dot is set to
-the current inode and that inode is displayed in inode format.
-.RE
-
-.sp
-.ne 2
-.na
-\fBls [ \fB-R\fR ] [\fB-l\fR ] \fIpat1\fR \fIpat2\fR...\fR
-.ad
-.sp .6
-.RS 4n
-List directories or files. If no file is specified, the current directory is
-assumed. Either or both of the options can be used (but, if used, must be
-specified before the filename specifiers). Wild card characters are available
-and multiple arguments are acceptable. The long listing shows only the i-number
-and the name; use the inode command with \fB?i\fR to get more information.
-.RE
-
-.sp
-.ne 2
-.na
-\fBoverride\fR
-.ad
-.sp .6
-.RS 4n
-Toggle the value of override. Some error conditions might be overridden if
-override is toggled to \fBon\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBprompt "\fIp\fR"\fR
-.ad
-.sp .6
-.RS 4n
-Change the \fBfsdb\fR prompt to \fIp\fR. \fIp\fR must be enclosed in quotes.
-.RE
-
-.sp
-.ne 2
-.na
-\fBpwd\fR
-.ad
-.sp .6
-.RS 4n
-Display the current working directory.
-.RE
-
-.sp
-.ne 2
-.na
-\fBquit\fR
-.ad
-.sp .6
-.RS 4n
-Quit \fBfsdb\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBtag\fR
-.ad
-.sp .6
-.RS 4n
-Convert the value of dot and if this is a valid tag, print the volume structure
-according to the tag.
-.RE
-
-.sp
-.ne 2
-.na
-\fB!\fR
-.ad
-.sp .6
-.RS 4n
-Escape to the shell.
-.RE
-
-.SS "Inode Commands"
-In addition to the above commands, several other commands deal with inode
-fields and operate directly on the current inode (they still require the colon
-(\fB:\fR). They can be used to more easily display or change the particular
-fields. The value of dot is only used by the \fB:db\fR and \fB:ib\fR commands.
-Upon completion of the command, the value of dot is changed so that it points
-to that particular field. For example,
-.sp
-.in +2
-.nf
-> :ln=+1
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-increments the link count of the current inode and sets the value of dot to the
-address of the link count field.
-.sp
-.LP
-The following inode commands are supported:
-.sp
-.ne 2
-.na
-\fBat\fR
-.ad
-.RS 8n
-Access time
-.RE
-
-.sp
-.ne 2
-.na
-\fBbs\fR
-.ad
-.RS 8n
-Block size
-.RE
-
-.sp
-.ne 2
-.na
-\fBct\fR
-.ad
-.RS 8n
-Creation time
-.RE
-
-.sp
-.ne 2
-.na
-\fBgid\fR
-.ad
-.RS 8n
-Group id
-.RE
-
-.sp
-.ne 2
-.na
-\fBln\fR
-.ad
-.RS 8n
-Link number
-.RE
-
-.sp
-.ne 2
-.na
-\fBmt\fR
-.ad
-.RS 8n
-Modification time
-.RE
-
-.sp
-.ne 2
-.na
-\fBmd\fR
-.ad
-.RS 8n
-Mode
-.RE
-
-.sp
-.ne 2
-.na
-\fBmaj\fR
-.ad
-.RS 8n
-Major device number
-.RE
-
-.sp
-.ne 2
-.na
-\fBmin\fR
-.ad
-.RS 8n
-Minor device number
-.RE
-
-.sp
-.ne 2
-.na
-\fBnm\fR
-.ad
-.RS 8n
-This command actually operates on the directory name field. Once poised at
-the desired directory entry (using the \fBdirectory\fR command), this command
-allows you to change or display the directory name. For example,
-.sp
-.in +2
-.nf
- > 7:dir:nm="foo"
-.fi
-.in -2
-.sp
-
-gets the \fB7\fRth directory entry of the current inode and changes its name to
-\fBfoo\fR. Directory names cannot be made larger than the field allows. If an
-attempt is made to make a directory name larger than the field allows, the
-string is truncated to fit and a warning message is displayed.
-.RE
-
-.sp
-.ne 2
-.na
-\fBsz\fR
-.ad
-.RS 8n
-File size
-.RE
-
-.sp
-.ne 2
-.na
-\fBuid\fR
-.ad
-.RS 8n
-User \fBID\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fBuniq\fR
-.ad
-.RS 8n
-Unique \fBID\fR
-.RE
-
-.SS "Formatted Output"
-Formatted output comes in two styles and many format types. The two styles of
-formatted output are: structured and unstructured. Structured output is used to
-display inodes, directories, and so forth. Unstructured output displays raw
-data.
-.sp
-.LP
-Format specifiers are preceded by the slash (\fB/\fR) or question mark
-(\fB?\fR) character. \fItype\fR is updated as necessary upon completion.
-.sp
-.LP
-The following format specifiers are preceded by the \fB?\fR character:
-.sp
-.ne 2
-.na
-\fBi\fR
-.ad
-.RS 5n
-Display as inodes in the current base.
-.RE
-
-.sp
-.ne 2
-.na
-\fBd\fR
-.ad
-.RS 5n
-Display as directories in the current base.
-.RE
-
-.sp
-.LP
-The following format specifiers are preceded by the \fB/\fR character:
-.sp
-.ne 2
-.na
-\fBb\fR
-.ad
-.RS 9n
-Display as bytes in the current base.
-.RE
-
-.sp
-.ne 2
-.na
-\fBc\fR
-.ad
-.RS 9n
-Display as characters.
-.RE
-
-.sp
-.ne 2
-.na
-\fBo | O\fR
-.ad
-.RS 9n
-Display as octal shorts or longs.
-.RE
-
-.sp
-.ne 2
-.na
-\fBd | D\fR
-.ad
-.RS 9n
-Display as decimal shorts or longs.
-.RE
-
-.sp
-.ne 2
-.na
-\fBx | X\fR
-.ad
-.RS 9n
-Display as hexadecimal shorts or longs.
-.RE
-
-.SH EXAMPLES
-\fBExample 1 \fRUsing fsdb as a calculator for complex arithmetic
-.sp
-.LP
-The following command displays \fB2010\fR in decimal format, and is an example
-of using \fBfsdb\fR as a calculator for complex arithmetic.
-
-.sp
-.in +2
-.nf
-> 2000+400%(20+20)=D
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRUsing fsdb to display an i-number in inode format
-.sp
-.LP
-The following command displays the i-number \fB386\fR in inode format.\fB386\fR
-becomes the current inode.
-
-.sp
-.in +2
-.nf
-> 386:ino?i
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRUsing fsdb to change the link count
-.sp
-.LP
-The following command changes the link count for the current inode to \fB4\fR.
-
-.sp
-.in +2
-.nf
-> :ln=4
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 4 \fRUsing fsdb to increment the link count
-.sp
-.LP
-The following command increments the link count by \fB1\fR.
-
-.sp
-.in +2
-.nf
-> :ln=+1
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 5 \fRUsing fsdb to display the creation time as a hexadecimal long
-.sp
-.LP
-The following command displays the creation time as a hexadecimal long.
-
-.sp
-.in +2
-.nf
-> :ct=X
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 6 \fRUsing fsdb to display the modification time in time format
-.sp
-.LP
-The following command displays the modification time in time format.
-
-.sp
-.in +2
-.nf
-> :mt=t
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 7 \fRUsing fsdb to display in ASCII
-.sp
-.LP
-The following command displays, in \fBASCII\fR, block \fB0\fR of the file
-associated with the current inode.
-
-.sp
-.in +2
-.nf
-> 0:file/c
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 8 \fRUsing fsdb to display the directory entries for the root inode
-.sp
-.LP
-The following command displays the first block's directory entries for the root
-inode of this file system. This command stops prematurely if the \fBEOF\fR is
-reached.
-
-.sp
-.in +2
-.nf
-> 2:ino,*?d
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 9 \fRUsing fsdb to change the current inode
-.sp
-.LP
- The following command changes the current inode to that associated with the
-\fB5\fRth directory entry (numbered from \fB0\fR) of the current inode. The
-first logical block of the file is then displayed in \fBASCII\fR.
-
-.sp
-.in +2
-.nf
-> 5:dir:inode; 0:file,*/c
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 10 \fRUsing fsdb to change the i-number
-.sp
-.LP
- The following command changes the i-number for the \fB7\fRth directory slot in
-the root directory to \fB3\fR.
-
-.sp
-.in +2
-.nf
-> 2:inode; 7:dir=3
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 11 \fRUsing fsdb to change the name field
-.sp
-.LP
-The following command changes the \fIname\fR field in the directory slot to
-\fBname\fR.
-
-.sp
-.in +2
-.nf
- > 7:dir:nm="name"
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 12 \fRUsing fsdb to display the a block
-.sp
-.LP
-The following command displays the \fB3\fRrd block of the current inode as
-directory entries.
-
-.LP
-\fBExample 13 \fRUsing fsdb to set the contents of address
-.sp
-.LP
-The following command sets the contents of address \fB2050\fR to
-\fB0xffffffff\fR. \fB0xffffffff\fR can be truncated, depending on the current
-type.
-
-.sp
-.in +2
-.nf
-> 2050=0xffff
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 14 \fRUsing fsdb to place an ASCII string at an address
-.sp
-.LP
-The following command places the \fBASCII\fR string \fBthis is some text\fR at
-address \fB1c92434\fR.
-
-.sp
-.in +2
-.nf
-> 1c92434="this is some text"
-.fi
-.in -2
-.sp
-
-.SH SEE ALSO
-\fBclri\fR(1M), \fBfsck_udfs\fR(1M), \fBdir\fR(4), \fBattributes\fR(5)
diff --git a/usr/src/man/man1m/fsdb_ufs.1m b/usr/src/man/man1m/fsdb_ufs.1m
deleted file mode 100644
index 9aabf7591b..0000000000
--- a/usr/src/man/man1m/fsdb_ufs.1m
+++ /dev/null
@@ -1,1226 +0,0 @@
-'\" te
-.\" Copyright (c) 1988 Regents of the University
-.\" of California. All rights reserved. Copyright (c) 2003 Sun Microsystems,
-.\" Inc. All Rights Reserved.
-.TH FSDB_UFS 1M "Apr 14, 2003"
-.SH NAME
-fsdb_ufs \- ufs file system debugger
-.SH SYNOPSIS
-.LP
-.nf
-\fBfsdb\fR \fB-F\fR ufs [\fIgeneric_options\fR] [\fIspecific_options\fR] \fIspecial\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBfsdb_ufs\fR command is an interactive tool that can be used to patch up
-a damaged \fBUFS\fR file system. It has conversions to translate block and
-i-numbers into their corresponding disk addresses. Also included are mnemonic
-offsets to access different parts of an inode. These greatly simplify the
-process of correcting control block entries or descending the file system tree.
-.sp
-.LP
-\fBfsdb\fR contains several error-checking routines to verify inode and block
-addresses. These can be disabled if necessary by invoking \fBfsdb\fR with the
-\fB-o\fR option or by the use of the \fBo\fR command.
-.sp
-.LP
-\fBfsdb\fR reads a block at a time and will therefore work with raw as well as
-block \fBI/O\fR devices. A buffer management routine is used to retain commonly
-used blocks of data in order to reduce the number of read system calls. All
-assignment operations result in an immediate write-through of the corresponding
-block. Note that in order to modify any portion of the disk, \fBfsdb\fR must be
-invoked with the \fBw\fR option.
-.sp
-.LP
-Wherever possible, \fBadb-\fRlike syntax was adopted to promote the use of
-\fBfsdb\fR through familiarity.
-.SH OPTIONS
-.LP
-The following option is supported:
-.sp
-.ne 2
-.na
-\fB\fB-o\fR\fR
-.ad
-.RS 6n
-Specify \fBUFS\fR file system specific options. These options can be any
-combination of the following separated by commas (with no intervening spaces).
-The options available are:
-.sp
-.ne 2
-.na
-\fB\fB?\fR\fR
-.ad
-.RS 14n
-Display usage
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBo\fR\fR
-.ad
-.RS 14n
-Override some error conditions
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBp='string'\fR\fR
-.ad
-.RS 14n
-set prompt to string
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBw\fR\fR
-.ad
-.RS 14n
-open for write
-.RE
-
-.RE
-
-.SH USAGE
-.LP
-Numbers are considered hexadecimal by default. However, the user has control
-over how data is to be displayed or accepted. The \fBbase\fR command will
-display or set the input/output base. Once set, all input will default to this
-base and all output will be shown in this base. The base can be overridden
-temporarily for input by preceding hexadecimal numbers with \&'\fB0x\fR',
-preceding decimal numbers with '\fB0t\fR', or octal numbers with '\fB0\fR'.
-Hexadecimal numbers beginning with \fBa-f\fR or \fBA-F\fR must be preceded with
-\&'\fB0x\fR' to distinguish them from commands.
-.sp
-.LP
-Disk addressing by \fBfsdb\fR is at the byte level. However, \fBfsdb\fR offers
-many commands to convert a desired inode, directory entry, block, superblock
-and so forth to a byte address. Once the address has been calculated,
-\fBfsdb\fR will record the result in dot (\fB\&.\fR).
-.sp
-.LP
-Several global values are maintained by \fBfsdb\fR:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-the current base (referred to as \fBbase\fR),
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-the current address (referred to as \fBdot\fR),
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-the current inode (referred to as \fBinode\fR),
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-the current count (referred to as \fBcount\fR),
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-and the current type (referred to as \fBtype\fR).
-.RE
-.sp
-.LP
-Most commands use the preset value of \fBdot\fR in their execution. For
-example,
-.sp
-.LP
-\fB> 2:inode\fR
-.sp
-.LP
-will first set the value of \fBdot\fR to 2, ':', will alert the start of a
-command, and the \fBinode\fR command will set \fBinode\fR to 2. A count is
-specified after a ','. Once set, \fBcount\fR will remain at this value until a
-new command is encountered which will then reset the value back to 1 (the
-default). So, if
-.sp
-.LP
-\fB> 2000,400/X\fR
-.sp
-.LP
-is typed, 400 hex longs are listed from 2000, and when completed, the value of
-\fBdot\fR will be \fB2000 + 400 * sizeof (long)\fR. If a \fBRETURN\fR is then
-typed, the output routine will use the current values of \fBdot\fR,
-\fBcount\fR, and \fBtype\fR and display 400 more hex longs. A '*' will cause
-the entire block to be displayed.
-.sp
-.LP
-End of fragment, block and file are maintained by \fBfsdb\fR. When displaying
-data as fragments or blocks, an error message will be displayed when the end of
-fragment or block is reached. When displaying data using the \fBdb\fR,
-\fBib\fR, \fBdirectory\fR, or \fBfile\fR commands an error message is displayed
-if the end of file is reached. This is mainly needed to avoid passing the end
-of a directory or file and getting unknown and unwanted results.
-.sp
-.LP
-An example showing several commands and the use of \fBRETURN\fR would be:
-.sp
-.in +2
-.nf
-\fB> 2:ino; 0:dir?d\fR
- or
-\fB> 2:ino; 0:db:block?d\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The two examples are synonymous for getting to the first directory entry of the
-root of the file system. Once there, any subsequent \fBRETURN\fR (or +, -)
-will advance to subsequent entries. Note that
-.sp
-.in +2
-.nf
-\fB> 2:inode; :ls\fR
- or
-\fB> :ls /\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-is again synonymous.
-.SS "Expressions"
-.LP
-The symbols recognized by \fBfsdb\fR are:
-.sp
-.ne 2
-.na
-\fB\fBRETURN\fR\fR
-.ad
-.RS 13n
-update the value of \fBdot\fR by the current value of \fBtype\fR and display
-using the current value of \fBcount\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB#\fR\fR
-.ad
-.RS 13n
-numeric expressions may be composed of +, -, *, and % operators (evaluated left
-to right) and may use parentheses. Once evaluated, the value of \fBdot\fR is
-updated.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB,\fR\fI count\fR\fR
-.ad
-.RS 13n
-count indicator. The global value of \fBcount\fR will be updated to
-\fBcount\fR. The value of \fBcount\fR will remain until a new command is run. A
-count specifier of '*' will attempt to show a \fIblocks's\fR worth of
-information. The default for \fBcount\fR is 1.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB?\fR\fI f\fR\fR
-.ad
-.RS 13n
-display in structured style with format specifier \fIf\fR. See
-\fBFormatted Output\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/\fR\fI f\fR\fR
-.ad
-.RS 13n
-display in unstructured style with format specifier \fIf\fR. See
-\fBFormatted Output\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\&.\fR\fR
-.ad
-.RS 13n
-the value of \fBdot\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB+\fR\fIe\fR\fR
-.ad
-.RS 13n
-increment the value of \fBdot\fR by the expression \fIe.\fR The amount actually
-incremented is dependent on the size of \fBtype\fR:
-.sp
-\fBdot = dot + e * sizeof (type)\fR
-.sp
-The default for \fIe\fR is \fB1\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-\fR\fIe\fR\fR
-.ad
-.RS 13n
-decrement the value of \fBdot\fR by the expression \fIe\fR. See \fB+\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB*\fR\fIe\fR\fR
-.ad
-.RS 13n
-multiply the value of \fBdot\fR by the expression \fIe.\fR Multiplication and
-division don't use \fBtype\fR. In the above calculation of \fBdot\fR, consider
-the \fBsizeof(type)\fR to be \fB1\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB%\fR\fIe\fR\fR
-.ad
-.RS 13n
-divide the value of \fBdot\fR by the expression \fIe\fR. See \fB*\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB<\fR\fI name\fR\fR
-.ad
-.RS 13n
-restore an address saved in register \fIname\fR. \fIname\fR must be a single
-letter or digit.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB>\fR\fI name\fR\fR
-.ad
-.RS 13n
-save an address in register \fIname\fR. \fIname\fR must be a single letter or
-digit.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB=\fR\fI f\fR\fR
-.ad
-.RS 13n
-display indicator. If \fIf\fR is a legitimate format specifier, then the value
-of \fBdot\fR is displayed using the format specifier \fIf\fR. See
-\fBFormatted Output\fR. Otherwise, assignment is assumed. See \fB=\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB= [\fR\fIs\fR\fB] [\fR\fIe\fR\fB]\fR\fR
-.ad
-.RS 13n
-assignment indicator. The address pointed to by \fBdot\fR has its contents
-changed to the value of the expression \fIe\fR or to the \fBASCII\fR
-representation of the quoted (") string \fIs\fR. This may be useful for
-changing directory names or \fBASCII\fR file information.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB=+\fR\fI e\fR\fR
-.ad
-.RS 13n
-incremental assignment. The address pointed to by \fBdot\fR has its contents
-incremented by expression \fIe\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB=-\fR\fI e\fR\fR
-.ad
-.RS 13n
-decremental assignment. The address pointed to by \fBdot\fR has its contents
-decremented by expression \fIe\fR.
-.RE
-
-.SS "Commands"
-.LP
-A command must be prefixed by a ':' character. Only enough letters of the
-command to uniquely distinguish it are needed. Multiple commands may be entered
-on one line by separating them by a \fBSPACE,\fR \fBTAB\fR or ';'.
-.sp
-.LP
-In order to view a potentially unmounted disk in a reasonable manner,
-\fBfsdb\fR offers the \fBcd\fR, \fBpwd\fR, \fBls\fR and \fBfind\fR commands.
-The functionality of these commands substantially matches those of its UNIX
-counterparts. See individual commands for details. The '*', '?', and '[-]' wild
-card characters are available.
-.sp
-.ne 2
-.na
-\fB\fBbase=b\fR\fR
-.ad
-.sp .6
-.RS 4n
-display or set base. As stated above, all input and output is governed by the
-current \fBbase\fR. If the \fB=b\fR is omitted, the current \fBbase\fR is
-displayed. Otherwise, the current \fBbase\fR is set to \fIb.\fR Note that this
-is interpreted using the old value of \fBbase\fR, so to ensure correctness use
-the '0', '0t', or '0x' prefix when changing the \fBbase\fR. The default for
-\fBbase\fR is hexadecimal.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBblock\fR\fR
-.ad
-.sp .6
-.RS 4n
-convert the value of \fBdot\fR to a block address.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcd \fR\fIdir\fR\fR
-.ad
-.sp .6
-.RS 4n
-change the current directory to directory \fIdir\fR. The current values of
-\fBinode\fR and \fBdot\fR are also updated. If no \fIdir\fR is specified, then
-change directories to inode \fB2\fR ("/").
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcg\fR\fR
-.ad
-.sp .6
-.RS 4n
-convert the value of \fBdot\fR to a cylinder group.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdirectory\fR\fR
-.ad
-.sp .6
-.RS 4n
-If the current \fBinode\fR is a directory, then the value of \fBdot\fR is
-converted to a directory slot offset in that directory and \fBdot\fR now points
-to this entry.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfile\fR\fR
-.ad
-.sp .6
-.RS 4n
-the value of \fBdot\fR is taken as a relative block count from the beginning of
-the file. The value of \fBdot\fR is updated to the first byte of this block.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfind\fR \fIdir\fR [ \fB-name\fR \fIn\fR] [\fB-inum\fR \fIi\fR]\fR
-.ad
-.sp .6
-.RS 4n
-find files by name or i-number. \fBfind\fR recursively searches directory
-\fBdir\fR and below for filenames whose i-number matches \fIi\fR or whose name
-matches pattern \fIn\fR. Note that only one of the two options (-name or -inum)
-may be used at one time. Also, the -print is not needed or accepted.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfill\fR\fI=p\fR\fR
-.ad
-.sp .6
-.RS 4n
-fill an area of disk with pattern \fIp\fR. The area of disk is delimited by
-\fBdot\fR and \fBcount\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfragment\fR\fR
-.ad
-.sp .6
-.RS 4n
-convert the value of \fIdot\fR to a fragment address. The only difference
-between the \fBfragment\fR command and the \fBblock\fR command is the amount
-that is able to be displayed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBinode\fR\fR
-.ad
-.sp .6
-.RS 4n
-convert the value of \fIdot\fR to an inode address. If successful, the current
-value of \fBinode\fR will be updated as well as the value of \fIdot\fR. As a
-convenient shorthand, if ':inode' appears at the beginning of the line, the
-value of \fIdot\fR is set to the current \fBinode\fR and that inode is
-displayed in inode format.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBlog_chk\fR\fR
-.ad
-.sp .6
-.RS 4n
-run through the valid log entries without printing any information and verify
-the layout.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBlog_delta\fR\fR
-.ad
-.sp .6
-.RS 4n
-count the number of deltas into the log, using the value of dot as an offset
-into the log. No checking is done to make sure that offset is within the
-head/tail offsets.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBlog_head\fR\fR
-.ad
-.sp .6
-.RS 4n
-display the header information about the file system logging. This shows the
-block allocation for the log and the data structures on the disk.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBlog_otodb\fR\fR
-.ad
-.sp .6
-.RS 4n
-return the physical disk block number, using the value of dot as an offset into
-the log.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBlog_show\fR\fR
-.ad
-.sp .6
-.RS 4n
-display all deltas between the beginning of the log (BOL) and the end of the
-log (EOL).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBls\fR\fR
-.ad
-.sp .6
-.RS 4n
-[ \fB-R\fR ] [ \fB-l\fR ] \fIpat1 pat2\fR\|.\|.\|. list directories or files.
-If no file is specified, the current directory is assumed. Either or both of
-the options may be used (but, if used, \fImust\fR be specified before the
-filename specifiers). Also, as stated above, wild card characters are available
-and multiple arguments may be given. The long listing shows only the i-number
-and the name; use the \fBinode\fR command with '?i' to get more information.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBoverride\fR\fR
-.ad
-.sp .6
-.RS 4n
-toggle the value of override. Some error conditions may be overridden if
-override is toggled on.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBprompt\fR\fI p\fR\fR
-.ad
-.sp .6
-.RS 4n
-change the \fBfsdb\fR prompt to \fIp\fR. \fIp\fR must be surrounded by (")s.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpwd\fR\fR
-.ad
-.sp .6
-.RS 4n
-display the current working directory.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBquit\fR\fR
-.ad
-.sp .6
-.RS 4n
-quit \fBfsdb\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsb\fR\fR
-.ad
-.sp .6
-.RS 4n
-the value of \fIdot\fR is taken as a cylinder group number and then converted
-to the address of the superblock in that cylinder group. As a shorthand, ':sb'
-at the beginning of a line will set the value of \fIdot\fR to \fIthe\fR
-superblock and display it in superblock format.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBshadow\fR\fR
-.ad
-.sp .6
-.RS 4n
-if the current inode is a shadow inode, then the value of \fIdot\fR is set to
-the beginning of the shadow inode data.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB!\fR\fR
-.ad
-.sp .6
-.RS 4n
-escape to shell
-.RE
-
-.SS "Inode Commands"
-.LP
-In addition to the above commands, there are several commands that deal with
-inode fields and operate directly on the current \fBinode\fR (they still
-require the ':'). They may be used to more easily display or change the
-particular fields. The value of \fIdot\fR is only used by the '\fB:db\fR'
-and '\fB:ib\fR' commands. Upon completion of the command, the value of \fIdot\fR is
-changed to point to that particular field. For example,
-.sp
-.LP
-\fB> :ln=+1\fR
-.sp
-.LP
-would increment the link count of the current \fBinode\fR and set the value of
-\fIdot\fR to the address of the link count field.
-.sp
-.ne 2
-.na
-\fB\fBat\fR\fR
-.ad
-.RS 7n
-access time.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBbs\fR\fR
-.ad
-.RS 7n
-block size.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBct\fR\fR
-.ad
-.RS 7n
-creation time.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdb\fR\fR
-.ad
-.RS 7n
-use the current value of \fIdot\fR as a direct block index, where direct blocks
-number from 0 - 11. In order to display the block itself, you need to 'pipe'
-this result into the \fBblock\fR or \fBfragment\fR command. For example,
-.sp
-.in +2
-.nf
-\fB > 1:db:block,20/X\fR
-.fi
-.in -2
-.sp
-
-would get the contents of data block field 1 from the inode and convert it to a
-block address. 20 longs are then displayed in hexadecimal. See
-\fBFormatted Output\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBgid\fR\fR
-.ad
-.RS 7n
-group id.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBib\fR\fR
-.ad
-.RS 7n
-use the current value of \fIdot\fR as an indirect block index where indirect
-blocks number from 0 - 2. This will only get the indirect block itself (the
-block containing the pointers to the actual blocks). Use the \fBfile\fR command
-and start at block 12 to get to the actual blocks.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBln\fR\fR
-.ad
-.RS 7n
-link count.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmt\fR\fR
-.ad
-.RS 7n
-modification time.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmd\fR\fR
-.ad
-.RS 7n
-mode.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmaj\fR\fR
-.ad
-.RS 7n
-major device number.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmin\fR\fR
-.ad
-.RS 7n
-minor device number.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnm\fR\fR
-.ad
-.RS 7n
-although listed here, this command actually operates on the directory name
-field. Once poised at the desired directory entry (using the \fIdirectory\fR
-command), this command will allow you to change or display the directory name.
-For example,
-.sp
-\fB> 7:dir:nm="foo"\fR
-.sp
-will get the \fB7\fRth directory entry of the current \fBinode\fR and change
-its name to foo. Note that names cannot be made larger than the field is set up
-for. If an attempt is made, the string is truncated to fit and a warning
-message to this effect is displayed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsi\fR\fR
-.ad
-.RS 7n
-shadow inode.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsz\fR\fR
-.ad
-.RS 7n
-file size.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBuid\fR\fR
-.ad
-.RS 7n
-user id.
-.RE
-
-.SS "Formatted Output"
-.LP
-There are two styles and many format types. The two styles are structured and
-unstructured. Structured output is used to display inodes, directories,
-superblocks and the like. Unstructured displays raw data. The following shows
-the different ways of displaying:
-.sp
-.ne 2
-.na
-\fB\fB?\fR\fR
-.ad
-.RS 5n
-.sp
-.ne 2
-.na
-\fB\fBc\fR\fR
-.ad
-.RS 5n
-display as cylinder groups
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBi\fR\fR
-.ad
-.RS 5n
-display as inodes
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBd\fR\fR
-.ad
-.RS 5n
-display as directories
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBs\fR\fR
-.ad
-.RS 5n
-display as superblocks
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBS\fR\fR
-.ad
-.RS 5n
-display as shadow inode data
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/\fR\fR
-.ad
-.RS 5n
-.sp
-.ne 2
-.na
-\fB\fBb\fR\fR
-.ad
-.RS 7n
-display as bytes
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBc\fR\fR
-.ad
-.RS 7n
-display as characters
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBo O\fR\fR
-.ad
-.RS 7n
-display as octal shorts or longs
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBd D\fR\fR
-.ad
-.RS 7n
-display as decimal shorts or longs
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBx X\fR\fR
-.ad
-.RS 7n
-display as hexadecimal shorts or longs
-.RE
-
-The format specifier immediately follows the '/' or '?' character. The values
-displayed by '/b' and all '?' formats are displayed in the current \fBbase\fR.
-Also, \fBtype\fR is appropriately updated upon completion.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRDisplaying in Decimal
-.sp
-.LP
-The following command displays \fB2010\fR in decimal (use of \fBfsdb\fR as a
-calculator for complex arithmetic):
-
-.sp
-.in +2
-.nf
-> 2000+400%(20+20)=D
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRDisplaying an i-number in Inode Format
-.sp
-.LP
-The following command displays i-number \fB386\fR in an inode format. This now
-becomes the current \fBinode\fR:
-
-.sp
-.in +2
-.nf
-> 386:ino?i
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRChanging the Link Count
-.sp
-.LP
-The following command changes the link count for the current \fBinode\fR to
-\fB4\fR:
-
-.sp
-.in +2
-.nf
-> :ln=4
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 4 \fRIncrementing the Link Count
-.sp
-.LP
-The following command increments the link count by \fB1\fR:
-
-.sp
-.in +2
-.nf
-> :ln=+1
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 5 \fRDisplaying the Creation Time
-.sp
-.LP
-The following command displays the creation time as a hexadecimal long:
-
-.sp
-.in +2
-.nf
-> :ct=X
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 6 \fRDisplaying the Modification Time
-.sp
-.LP
-The following command displays the modification time in time format:
-
-.sp
-.in +2
-.nf
-> :mt=t
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 7 \fRDisplaying in ASCII
-.sp
-.LP
-The following command displays in \fBASCII,\fR block zero of the file
-associated with the current \fBinode\fR:
-
-.sp
-.in +2
-.nf
-> 0:file/c
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 8 \fRDisplaying the First Block's Worth of Directorty Entries
-.sp
-.LP
-The following command displays the first block's worth of directory entries for
-the root inode of this file system. It will stop prematurely if the \fBEOF\fR
-is reached:
-
-.sp
-.in +2
-.nf
-> 2:ino,*?d
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 9 \fRDisplaying Changes to the Current Inode
-.sp
-.LP
-The following command displays changes the current inode to that associated
-with the \fB5\fRth directory entry (numbered from zero) of the current
-\fBinode\fR. The first logical block of the file is then displayed in
-\fBASCII\fR:
-
-.sp
-.in +2
-.nf
-> 5:dir:inode; 0:file,*/c
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 10 \fRDisplaying the Superblock
-.sp
-.LP
-The following command displays the superblock of this file system:
-
-.sp
-.in +2
-.nf
-> :sb
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 11 \fRDisplaying the Cylinder Group
-.sp
-.LP
-The following command displays cylinder group information and summary for
-cylinder group \fB1\fR:
-
-.sp
-.in +2
-.nf
-> 1:cg?c
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 12 \fRChanging the i-number
-.sp
-.LP
-The following command changes the i-number for the seventh directory slot in
-the root directory to \fB3\fR:
-
-.sp
-.in +2
-.nf
-> 2:inode; 7:dir=3
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 13 \fRDisplaying as Directory Entries
-.sp
-.LP
-The following command displays the third block of the current \fBinode\fR as
-directory entries:
-
-.sp
-.in +2
-.nf
-> 2:db:block,*?d
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 14 \fRChanging the Name Field
-.sp
-.LP
-The following command changes the name field in the directory slot to
-\fIname\fR:
-
-.sp
-.in +2
-.nf
-> 7:dir:nm="name"
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 15 \fRGetting and Filling Elements
-.sp
-.LP
-The following command gets fragment \fB3c3\fR and fill \fB20\fR \fBtype\fR
-elements with \fB0x20\fR:
-
-.sp
-.in +2
-.nf
-> 3c3:fragment,20:fill=0x20
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 16 \fRSetting the Contents of an Address
-.sp
-.LP
-The following command sets the contents of address \fB2050\fR to
-\fB0xffffffff\fR. \fB0xffffffff\fR may be truncated depending on the current
-\fBtype\fR:
-
-.sp
-.in +2
-.nf
-> 2050=0xffff
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 17 \fRPlacing ASCII
-.sp
-.LP
-The following command places the \fBASCII\fR for the string at \fB1c92434\fR:
-
-.sp
-.in +2
-.nf
-> 1c92434="this is some text"
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 18 \fRDisplaying Shadow Inode Data
-.sp
-.LP
-The following command displays all of the shadow inode data in the shadow inode
-associated with the root inode of this file system:
-
-.sp
-.in +2
-.nf
-> 2:ino:si:ino;0:shadow,*?S
-.fi
-.in -2
-.sp
-
-.SH SEE ALSO
-.LP
-\fBclri\fR(1M), \fBfsck_ufs\fR(1M), \fBdir_ufs\fR(4), \fBattributes\fR(5),
-\fBufs\fR(7FS)
-.SH WARNINGS
-.LP
-Since \fBfsdb\fR reads the disk raw, extreme caution is advised in determining
-its availability of \fBfsdb\fR on the system. Suggested permissions are 600 and
-owned by bin.
-.SH NOTES
-.LP
-The old command line syntax for clearing i-nodes using the ufs-specific
-\fB\&'-z i-number'\fR option is still supported by the new debugger, though it
-is obsolete and will be removed in a future release. Use of this flag will
-result in correct operation, but an error message will be printed warning of
-the impending obsolesence of this option to the command. The equivalent
-functionality is available using the more flexible \fBclri\fR(1M) command.
diff --git a/usr/src/man/man1m/fsirand.1m b/usr/src/man/man1m/fsirand.1m
deleted file mode 100644
index 11ba825ec7..0000000000
--- a/usr/src/man/man1m/fsirand.1m
+++ /dev/null
@@ -1,47 +0,0 @@
-'\" te
-.\" Copyright (c) 1996, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH FSIRAND 1M "Sep 16, 1996"
-.SH NAME
-fsirand \- install random inode generation numbers
-.SH SYNOPSIS
-.LP
-.nf
-\fBfsirand\fR [\fB-p\fR] \fIspecial\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBfsirand\fR installs random inode generation numbers on all the inodes on
-device \fIspecial\fR, and also installs a file system \fBID\fR in the
-superblock. This helps increase the security of file systems exported by
-\fBNFS.\fR
-.sp
-.LP
-\fBfsirand\fR must be used only on an unmounted file system that has been
-checked with \fBfsck\fR(1M) The only exception is that it can be used on the
-root file system in single-user mode, if the system is immediately re-booted
-afterwards.
-.SH OPTIONS
-.sp
-.ne 2
-.na
-\fB\fB-p\fR\fR
-.ad
-.RS 6n
-Print out the generation numbers for all the inodes, but do not change the
-generation numbers.
-.RE
-
-.SH USAGE
-.sp
-.LP
-See \fBlargefile\fR(5) for the description of the behavior of \fBfsirand\fR
-when encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
-.SH SEE ALSO
-.sp
-.LP
-\fBfsck\fR(1M), \fBattributes\fR(5), \fBlargefile\fR(5)
diff --git a/usr/src/man/man1m/fssnap.1m b/usr/src/man/man1m/fssnap.1m
deleted file mode 100644
index fec15a73fe..0000000000
--- a/usr/src/man/man1m/fssnap.1m
+++ /dev/null
@@ -1,169 +0,0 @@
-'\" te
-.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH FSSNAP 1M "Aug 11, 2004"
-.SH NAME
-fssnap \- create temporary snapshots of a file system
-.SH SYNOPSIS
-.LP
-.nf
-\fBfssnap\fR [\fB-F\fR \fIFSType\fR] [\fB-V\fR] \fB-o\fR \fIspecial_options\fR \fI/mount/point\fR
-.fi
-
-.LP
-.nf
-\fBfssnap \fR \fB-d\fR [\fB-F\fR \fI FSType\fR] [\fB-V\fR] \fI/mount/point\fR | \fIdev\fR
-.fi
-
-.LP
-.nf
-\fBfssnap\fR \fB-i\fR [\fB-F\fR \fIFSType\fR] [\fB-V\fR] [\fB-o\fR \fIspecial_options\fR]
- [\fI/mount/point\fR | \fIdev\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBfssnap\fR command creates a stable, read-only snapshot of a file system
-when given either an active mount point or a special device containing a
-mounted file system, as in the first form of the synopsis. A snapshot is a
-temporary image of a file system intended for backup operations.
-.sp
-.LP
-While the snapshot file system is stable and consistent, an application
-updating files when the snapshot is created might leave these files in an
-internally inconsistent, truncated, or otherwise unusable state. In such a
-case, the snapshot will contain these partially written or corrupted files. It
-is a good idea to ensure active applications are suspended or checkpointed and
-their associated files are also consistent during snapshot creation.
-.sp
-.LP
-File access times are not updated while the snapshot is being created.
-.sp
-.LP
-A path to the virtual device that contains this snapshot is printed to standard
-output when a snapshot is created.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-d\fR\fR
-.ad
-.RS 22n
-Deletes the snapshot associated with the given file system.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-F\fR \fIFSType\fR\fR
-.ad
-.RS 22n
-Specifies the file system type to be used. The \fBFSType\fR should either be
-specified here or be determined by matching the block special device with an
-entry in the \fB/etc/vfstab\fR table, or by consulting \fB/etc/default/fs\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-i\fR\fR
-.ad
-.RS 22n
-Displays the state of any given \fBFSType\fR snapshot. If a mount-point or
-device is not given, a list of all snapshots on the system is displayed. When a
-mount-point or device is specified, detailed information is provided for the
-specified file system snapshot by default. The format and meaning of this
-information is file-system dependent. See the \fBFSType\fR-specific
-\fBfssnap\fR man page for details.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-o\fR \fIspecial_options\fR\fR
-.ad
-.RS 22n
-See the \fBFSType\fR-specific man page for \fBfssnap\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-V\fR\fR
-.ad
-.RS 22n
-Echoes the complete command line, but does not execute the command.
-.RE
-
-.SH OPERANDS
-.sp
-.LP
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fB\fI/mount/point\fR\fR
-.ad
-.RS 16n
-The directory where the file system resides.
-.RE
-
-.SH EXAMPLES
-.sp
-.LP
-See \fBFSType\fR-specific man pages for examples.
-.SH EXIT STATUS
-.sp
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 6n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB>\fB0\fR\fR
-.ad
-.RS 6n
-An error occurred.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/vfstab\fR\fR
-.ad
-.RS 19n
-Specifies file system type.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/default/fs\fR\fR
-.ad
-.RS 19n
-Specifies the default local file system type.
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBfssnap_ufs\fR(1M), \fBattributes\fR(5)
-.SH NOTES
-.sp
-.LP
-This command might not be supported for all \fBFSTypes\fR.
diff --git a/usr/src/man/man1m/fssnap_ufs.1m b/usr/src/man/man1m/fssnap_ufs.1m
deleted file mode 100644
index ca58f36e3f..0000000000
--- a/usr/src/man/man1m/fssnap_ufs.1m
+++ /dev/null
@@ -1,537 +0,0 @@
-'\" te
-.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
-.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH FSSNAP_UFS 1M "May 13, 2017"
-.SH NAME
-fssnap_ufs \- create a temporary snapshot of a UFS file system
-.SH SYNOPSIS
-.LP
-.nf
-\fBfssnap\fR [\fB-F\fR ufs] [\fB-V\fR] \fB-o\fR \fIbacking-store\fR=\fIpath\fR,
- [\fIspecific-options\fR] \fI/mount/point\fR
-.fi
-
-.LP
-.nf
-\fBfssnap\fR \fB-d\fR [\fB-F\fR ufs] [\fB-V\fR] \fI/mount/point\fR | \fIdev\fR
-.fi
-
-.LP
-.nf
-\fBfssnap\fR \fB-i\fR [\fB-F\fR ufs] [\fB-V\fR] [\fB-o\fR \fIspecific-options\fR] \fI/mount/point\fR | \fIdev\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBfssnap\fR command queries, creates, or deletes a temporary snapshot of a
-\fBUFS\fR file system. A snapshot is a point-in-time image of a file system
-that provides a stable and unchanging device interface for backups.
-.sp
-.LP
-When creating a file system snapshot, you must specify the file system to be
-captured and the backing-store file. The backing-store file(s) are where the
-snapshot subsystem saves old file system data before it is overwritten. Beyond
-the first backing-store file, \fBfssnap\fR automatically creates additional
-backing-store files on an as-needed basis.
-.sp
-.LP
-The number and size of the backing store files varies with the amount of
-activity in the file system. The destination path must have enough free space
-to hold the backing-store file(s). This location must be different from the
-file system that is being captured in a snapshot. The backing-store file(s) can
-reside on any type of file system, including another \fBUFS\fR file system or
-an \fBNFS\fR-mounted file system.
-.SH OPTIONS
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-d\fR\fR
-.ad
-.sp .6
-.RS 4n
-Deletes the snapshot associated with the given file system.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-i\fR\fR
-.ad
-.sp .6
-.RS 4n
-Displays the state of one or all \fBUFS\fR snapshots. If a mount-point or
-device is not specified, a list of all snapshots on the system is displayed.
-When a mount-point or device is specified, detailed information is provided for
-the specified file system snapshot by default.
-.sp
-Use the \fB-o\fR options with the \fB-i\fR option to specify what snapshot
-information is displayed. Since this feature is provided primarily for use in
-scripts and on the command line, no labels are displayed for the data. Sizes
-are all in bytes, and the output is not internationalized or localized. The
-information is displayed on one line per option. Unrecognized options display a
-single \fB?\fR on the line. One line per option guarantees that there are the
-same number of lines as options specified and there is a one-to-one
-correspondence between an output line and an option.
-.sp
-The following \fB-o\fR options display specific information for a given
-snapshot. See the EXAMPLES section for examples of how to use these options.
-.sp
-.ne 2
-.na
-\fB\fBsnapnumber\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display the snapshot number.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBblockdevname\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display the block device path.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrawdevname\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display the raw device path.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmountpoint\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display the mount point of the master file system.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBstate\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display the state of the snapshot device.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBbacking-store\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display the location of the first backing-store file for this snapshot. If
-there are multiple backing-store files, subsequent files have the same name as
-the first file, with the suffixes \fB\&.2\fR, \fB\&.3\fR, and so forth.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBbacking-store-len\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display the sum of the sizes of the backing-store files.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmaxsize\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display the \fBmaxsize\fR value specified for the backing-store file(s).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcreatetime\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display the time that the snapshot was created.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBchunksize\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display the copy-on-write granularity.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-o\fR \fIspecific-options\fR\fR
-.ad
-.sp .6
-.RS 4n
-Without \fB-d\fR or \fB-i\fR, the default action is to create a snapshot.
-Specify the following options when creating a snapshot. All of these options
-are discretionary, except for the backing-store file, which is required.
-.sp
-.ne 2
-.na
-\fB\fBbacking-store=\fR\fIpath\fR\fR
-.ad
-.sp .6
-.RS 4n
-Uses \fIpath\fR in the creation of the backing-store file(s). \fIpath\fR must
-not reside on the file system that is being captured in a snapshot and must not
-be the name of an existing file. If \fIpath\fR is a directory, then a
-backing-store file is created within it using a name that is generated
-automatically. If \fIpath\fR is not a directory and does not already exist,
-then a backing-store file with that name is created. If more than one
-backing-store file is required, \fBfssnap\fR creates subsequent files
-automatically. The second and subsequent files have the same name as the first
-file, with suffixes of \fB\&.2\fR, \fB\&.3\fR, and so forth.
-.sp
-This option can be abbreviated as \fBbf=\fR\fIpath\fR or \fBbs=\fR\fIpath\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBunlink\fR\fR
-.ad
-.sp .6
-.RS 4n
-Unlinks the backing-store file after the snapshot is created. This option
-specifies that the backing-store file does not need to be removed manually when
-the snapshot is deleted. This might make administration more difficult since
-the file is not visible in the file system. If this option is not specified,
-the backing-store files should be removed manually after the snapshot is
-deleted.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBchunksize=\fR\fIn\fR [\fBk\fR,\fBm\fR,\fBg\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Uses \fIn\fR for the chunk size. Chunk size is the granularity of the data that
-is sent to the backing store.
-.sp
-Specify \fBchunksize\fR in the following units: \fBk\fR for kilobytes, \fBm\fR
-for megabytes, or \fBg\fR for gigabytes. By default, chunk size is four times
-the block size of the file system (typically \fB32k\fR).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmaxsize=\fR\fIn\fR[\fBk\fR,\fBm\fR,\fBg\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Does not allow the sum of the sizes of the backing-store file(s) to exceed
-\fIn\fR, where \fIn\fR is the unit specified. The snapshot is deleted
-automatically when the sum of the sizes of the backing-store file(s) exceeds
-\fBmaxsize\fR.
-.sp
-Specify \fBmaxsize\fR in the following units: \fBk\fR for kilobytes, \fBm\fR
-for megabytes, or \fBg\fR for gigabytes.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBraw\fR\fR
-.ad
-.sp .6
-.RS 4n
-Displays to standard output the name of the raw device instead of the block
-device when a snapshot is created. The block device is printed by default (when
-\fBraw\fR is not specified). This option makes it easier to embed \fBfssnap\fR
-commands in the command line for commands that require the raw device instead.
-Both devices are always created. This option affects only the output.
-.RE
-
-.RE
-
-.SH OPERANDS
-.LP
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fB\fImount-point\fR\fR
-.ad
-.sp .6
-.RS 4n
-The directory where the file system resides.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIspecial\fR\fR
-.ad
-.sp .6
-.RS 4n
-The physical device for the file system, such as \fB/dev/dsk/c0t0d0s7\fR.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRCreating a Snapshot of a File System
-.sp
-.LP
-The following example creates a snapshot of a file system. The block special
-device created for the snapshot is \fB/dev/fssnap/0\fR.
-
-.sp
-.in +2
-.nf
-# fssnap -F ufs -o backing-store=/var/tmp /export/home
-/dev/fssnap/0
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRBacking Up a File System Snapshot Without Having To Unmount the
-File System
-.sp
-.LP
-The following example backs up a file system snapshot without having to unmount
-the file system. Since \fBufsdump\fR requires the path to a raw device, the
-\fBraw\fR option is used. The \fB/export/home\fR file system snapshot is
-removed in the second command.
-
-.sp
-.in +2
-.nf
-# ufsdump 0uf /dev/rmt/0 `fssnap -F ufs
- -o raw,bs=/export/snap /export/home`
-\fI<output from ufsdump>\fR
-# fssnap -F ufs -d /export/home
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRBacking Up a File System
-.sp
-.LP
-When backing up a file system, do not let the backing-store file(s) exceed
-\fB400\fR \fBMbytes\fR. The second command removes the \fB/export/home\fR file
-system snapshot.
-
-.sp
-.in +2
-.nf
-# ufsdump 0uf /dev/rmt/0 `fssnap -F ufs
- -o maxsize=400m,backing-store=/export/snap,raw
- /export/home`
-# fssnap -F ufs -d /export/home
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 4 \fRPerforming an Incremental Dump of a Snapshot
-.sp
-.LP
-The following example uses \fBufsdump\fR to back up a snapshot of \fB/var\fR.
-Note the use of the \fBN\fR option to \fBufsdump\fR, which writes the name of
-the device being dumped, rather than the name of the snapshot device, to
-\fB/etc/dumpdates\fR file. See \fBufsdump\fR(1M) for details on the \fBN\fR
-flag.
-
-.sp
-.in +2
-.nf
-# ufsdump lfNu /dev/rmt/0 /dev/rdsk/c0t3d0s2 `fssnap -F ufs
--o raw,bs=/export/scratch,unlink /var`
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 5 \fRFinding Out What Snapshots Currently Exist
-.sp
-.LP
-The following command displays the currently existing snapshots.
-
-.sp
-.in +2
-.nf
-# fssnap -i
-0 /src
-1 /export/home
-\fI<output continues>\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 6 \fRMounting a File System Snapshot
-.sp
-.LP
-The following example creates a file system snapshot. After you create a file
-system snapshot, mount it on \fB/tmp/mount\fR for temporary read-only access.
-
-.sp
-.in +2
-.nf
-# fssnap -F ufs -o backing-store=/nfs/server/scratch /export/home
-/dev/fssnap/1
-# mkdir /tmp/mount
-# mount -F ufs -o ro /dev/fssnap/1 /tmp/mount
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 7 \fRCreating a File System Snapshot and Unlinking the Backing-store
-File
-.sp
-.LP
-The following example creates a file system snapshot and unlinks the
-backing-store file. After creating a file system snapshot and unlinking the
-backing-store file, check the state of the snapshot.
-
-.sp
-.in +2
-.nf
-# fssnap -o bs=/scratch,unlink /src
-/dev/fssnap/0
-# fssnap -i /src
-Snapshot number : 0
-Block Device : /dev/fssnap/0
-Raw Device : /dev/rfssnap/0
-Mount point : /src
-Device state : active
-Backing store path : /scratch/snapshot2 <UNLINKED>
-Backing store size : 192 KB
-Maximum backing store size : Unlimited
-Snapshot create time : Sat May 06 10:55:11 2000
-Copy-on-write granularity : 32 KB
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 8 \fRDisplaying the Size and Location of the Backing-store File(s)
-and the Creation Time for the Snapshot
-.sp
-.LP
-The following example displays the size of the backing-store file(s) in bytes,
-the location of the backing store, and the creation time for the snapshot of
-the \fB/test\fR file system.
-
-.sp
-.in +2
-.nf
-# fssnap -i -o backing-store-len,backing-store,createtime /test
-196608
-/snapshot2
-Sat May 6 10:55:11 2000
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Note that if there are multiple backing-store files stored in \fB/snapshot2\fR,
-they will have names of the form \fIfile\fR (for the first file), \fIfile\fR.1,
-\fIfile\fR.2, and so forth.
-
-.SH EXIT STATUS
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.sp .6
-.RS 4n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB>\fB0\fR\fR
-.ad
-.sp .6
-.RS 4n
-An error occurred.
-.RE
-
-.sp
-.LP
-The script-readable output mode is a stable interface that can be added to, but
-will not change. All other interfaces are subject to change.
-.SH SEE ALSO
-.LP
-\fBmlock\fR(3C), \fBattributes\fR(5)
-.SH NOTES
-.LP
-The \fBfssnap\fR device files should be treated like a regular disk block or
-character device.
-.sp
-.LP
-The association between a file system and the snapshot is lost when the
-snapshot is deleted or the system reboots. Snapshot persistence across reboots
-is not supported.
-.sp
-.LP
-To avoid unnecessary performance impacts, perform the snapshot and system
-backup when the system is least active.
-.sp
-.LP
-It is not possible to perform a snapshot of a file system if any of the
-following conditions are true:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The file system is in use by system accounting
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The file system contains a local swap file
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The file system is used as backing store by an application that uses
-\fBmlock\fR(3C) to lock its pages. Typically, these are real time applications,
-such as \fBntpd\fR.
-.RE
-.sp
-.LP
-These conditions result in \fBfssnap\fR being unable to write lock the file
-system prior to performing the snapshot.
diff --git a/usr/src/man/man1m/fsstat.1m b/usr/src/man/man1m/fsstat.1m
deleted file mode 100644
index fce7a1bf64..0000000000
--- a/usr/src/man/man1m/fsstat.1m
+++ /dev/null
@@ -1,850 +0,0 @@
-'\" te
-.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH FSSTAT 1M "Jan 5, 2007"
-.SH NAME
-fsstat \- report file system statistics
-.SH SYNOPSIS
-.LP
-.nf
-\fBfsstat\fR [\fB-a|f|i|n|v\fR] [\fB-T\fR | u|d] {\fB-F\fR | {\fIfstype\fR|\fIpath\fR}...}
- [\fIinterval\fR [\fIcount\fR]]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBfsstat\fR reports kernel file operation activity by the file system type
-(\fIfstype\fR) or by the path name, which is converted to a mount point. The
-first set of lines of output reports all activity since:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The file system module was loaded (in the case of \fIfstype\fR)
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The file system was mounted (in the case of mount point)
-.RE
-.sp
-.LP
-Statistics are gathered at the file system independent layer at both the
-\fIfstype\fR and the mount point levels. However, not all file system types are
-represented in the gathering of statistics. (See the NOTES section of this man
-page.)
-.sp
-.LP
-The output of \fBfsstat\fR is dependent on the mode (option) requested. All
-statistic fields are displayed using "smart numbers" which automatically scale
-the units in a human readable form that fits in a maximum of 5 characters. For
-example:
-.sp
-.ne 2
-.na
-\fB100\fR
-.ad
-.RS 11n
-is displayed as 100
-.RE
-
-.sp
-.ne 2
-.na
-\fB2048\fR
-.ad
-.RS 11n
-is displayed as 2K
-.RE
-
-.sp
-.ne 2
-.na
-\fB3000000\fR
-.ad
-.RS 11n
-is displayed as 2.86M
-.RE
-
-.sp
-.LP
-The unit modifiers are: K (Kbyte), M (Mbyte), G (Gbyte), T (terabyte), P
-(petabyte), and E (exabyte).
-.sp
-.LP
-During the execution of \fBfsstat\fR, the state of the system can change. If
-relevant, a state change message is included in the \fBfsstat\fR output in one
-of the following forms:
-.sp
-.in +2
-.nf
-<<mount point no longer available: {path}>>
-<<file system module no longer loaded: {fstype}>>
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-After the state change messages are displayed, \fBfsstat\fR continues to
-display the statistics as directed. If all of the \fIfstypes\fR and mount
-points that \fBfsstat\fR was reporting on are no longer available, then
-\fBfsstat\fR exits.
-.sp
-.LP
-The user is required to specify the \fB-F\fR option (all available file system
-types) or a list of one or more \fIfstypes\fR and/or mount points.
-.sp
-.LP
-The default report shows general file system activity. This display combines
-similar operations into general categories as follows:
-.sp
-.ne 2
-.na
-\fBnew file\fR
-.ad
-.RS 15n
-Number of creation operations for file system objects (for example, files,
-directories, symlinks, etc.)
-.RE
-
-.sp
-.ne 2
-.na
-\fBname remov\fR
-.ad
-.RS 15n
-Number of name removal operations
-.RE
-
-.sp
-.ne 2
-.na
-\fBname chng\fR
-.ad
-.RS 15n
-Number of name change operations
-.RE
-
-.sp
-.ne 2
-.na
-\fBattr get\fR
-.ad
-.RS 15n
-Number of object attribute retrieval operations
-.RE
-
-.sp
-.ne 2
-.na
-\fBattr set\fR
-.ad
-.RS 15n
-Number of object attribute change operations
-.RE
-
-.sp
-.ne 2
-.na
-\fBlookup ops\fR
-.ad
-.RS 15n
-Number of object lookup operations
-.RE
-
-.sp
-.ne 2
-.na
-\fBrddir ops\fR
-.ad
-.RS 15n
-Number of read directory operations
-.RE
-
-.sp
-.ne 2
-.na
-\fBread ops\fR
-.ad
-.RS 15n
-Number of data read operations
-.RE
-
-.sp
-.ne 2
-.na
-\fBread bytes\fR
-.ad
-.RS 15n
-Bytes transferred by data read operations
-.RE
-
-.sp
-.ne 2
-.na
-\fBwrite ops\fR
-.ad
-.RS 15n
-Number of data write operations
-.RE
-
-.sp
-.ne 2
-.na
-\fBwrite bytes\fR
-.ad
-.RS 15n
-Bytes transferred by data write operations
-.RE
-
-.sp
-.LP
-The entity being reported on (\fIfstype\fR or mount point) is displayed in the
-last column.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-a\fR\fR
-.ad
-.RS 10n
-Report the activity for kernel attribute operations. The following statistics
-are reported:
-.sp
-.ne 2
-.na
-\fBgetattr\fR
-.ad
-.RS 11n
-Number of file attribute retrieval calls
-.RE
-
-.sp
-.ne 2
-.na
-\fBsetattr\fR
-.ad
-.RS 11n
-Number of file attribute modification calls
-.RE
-
-.sp
-.ne 2
-.na
-\fBgetsec\fR
-.ad
-.RS 11n
-Number of file security attribute retrieval calls
-.RE
-
-.sp
-.ne 2
-.na
-\fBsetsec\fR
-.ad
-.RS 11n
-Number of file security attribute modification calls
-.RE
-
-The entity being reported on (\fIfstype\fR or mount point) is displayed in the
-last column.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR\fR
-.ad
-.RS 10n
-Report the full activity for all kernel file operations. Each file operation is
-listed in the left column. The following statistics are reported for each
-operation:
-.sp
-.ne 2
-.na
-\fB#ops\fR
-.ad
-.RS 9n
-Number of calls for this operation
-.RE
-
-.sp
-.ne 2
-.na
-\fBbytes\fR
-.ad
-.RS 9n
-Average transfer size in bytes (only applies to read, write, readdir)
-.RE
-
-The entity being reported on (\fIfstype\fR or mount point) is displayed in the
-first row.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-i\fR\fR
-.ad
-.RS 10n
-Reports the activity for kernel I/O operations. The following statistics are
-reported:
-.sp
-.ne 2
-.na
-\fBread ops\fR
-.ad
-.RS 15n
-Number of data read calls
-.RE
-
-.sp
-.ne 2
-.na
-\fBread bytes\fR
-.ad
-.RS 15n
-Number of bytes read
-.RE
-
-.sp
-.ne 2
-.na
-\fBwrite ops\fR
-.ad
-.RS 15n
-Number of data write calls
-.RE
-
-.sp
-.ne 2
-.na
-\fBwrite bytes\fR
-.ad
-.RS 15n
-Number of bytes written
-.RE
-
-.sp
-.ne 2
-.na
-\fBrddir ops\fR
-.ad
-.RS 15n
-Number of read directory calls
-.RE
-
-.sp
-.ne 2
-.na
-\fBrddir bytes\fR
-.ad
-.RS 15n
-Number of bytes read by reading directories
-.RE
-
-.sp
-.ne 2
-.na
-\fBrwlock ops\fR
-.ad
-.RS 15n
-Number of internal file system lock operations
-.RE
-
-.sp
-.ne 2
-.na
-\fBrwulock ops\fR
-.ad
-.RS 15n
-Number of internal file system unlock operations
-.RE
-
-The entity being reported on (\fIfstype\fR or mount point) is displayed in the
-last column.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR\fR
-.ad
-.RS 10n
-Reports the activity for kernel naming operations. The following statistics are
-reported:
-.sp
-.ne 2
-.na
-\fBlookup\fR
-.ad
-.RS 11n
-Number of file name retrieval calls
-.RE
-
-.sp
-.ne 2
-.na
-\fBcreat\fR
-.ad
-.RS 11n
-Number of file creation calls
-.RE
-
-.sp
-.ne 2
-.na
-\fBremov\fR
-.ad
-.RS 11n
-Number of file remove calls
-.RE
-
-.sp
-.ne 2
-.na
-\fBlink\fR
-.ad
-.RS 11n
-Number of link calls
-.RE
-
-.sp
-.ne 2
-.na
-\fBrenam\fR
-.ad
-.RS 11n
-Number of file renaming calls
-.RE
-
-.sp
-.ne 2
-.na
-\fBmkdir\fR
-.ad
-.RS 11n
-Number of directory creation calls
-.RE
-
-.sp
-.ne 2
-.na
-\fBrmdir\fR
-.ad
-.RS 11n
-Number of directory removal calls
-.RE
-
-.sp
-.ne 2
-.na
-\fBrddir\fR
-.ad
-.RS 11n
-Number of directory read calls
-.RE
-
-.sp
-.ne 2
-.na
-\fBsymlink\fR
-.ad
-.RS 11n
-Number of symlink creation calls
-.RE
-
-.sp
-.ne 2
-.na
-\fBrdlink\fR
-.ad
-.RS 11n
-Number of symlink read calls
-.RE
-
-The entity being reported on (\fIfstype\fR or mount point) is displayed in the
-last column.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.RS 10n
-Reports the activity for calls to the virtual memory operations. The following
-statistics are reported.
-.sp
-.ne 2
-.na
-\fBmap\fR
-.ad
-.RS 10n
-Number of calls mapping a file
-.RE
-
-.sp
-.ne 2
-.na
-\fBaddmap\fR
-.ad
-.RS 10n
-Number of calls setting additional mapping to a mapped file
-.RE
-
-.sp
-.ne 2
-.na
-\fBdelmap\fR
-.ad
-.RS 10n
-Number of calls deleting mapping to a file
-.RE
-
-.sp
-.ne 2
-.na
-\fBgetpag\fR
-.ad
-.RS 10n
-Number of calls retrieving a page of data from a file
-.RE
-
-.sp
-.ne 2
-.na
-\fBputpag\fR
-.ad
-.RS 10n
-Number of calls writing a page of data to a file
-.RE
-
-.sp
-.ne 2
-.na
-\fBpagio\fR
-.ad
-.RS 10n
-Number of calls to transfer pages in file system swap files
-.RE
-
-The entity being reported on (fstype or mount point) is displayed in the last
-column.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-F\fR\fR
-.ad
-.RS 10n
-Report on all available file system types.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-T\fR \fIu\fR|\fId\fR\fR
-.ad
-.RS 10n
-Display a time stamp.
-.sp
-Specify \fIu\fR for a printed representation of the internal representation of
-time (see \fBtime\fR(2)) Specify \fId\fR for the standard date format. (See
-\fBdate\fR(1)). The time stamp is only used when an interval is set.
-.RE
-
-.SH OPERANDS
-.sp
-.LP
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fB\fIcount\fR\fR
-.ad
-.RS 12n
-Display only \fIcount\fR reports.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIfstype\fR\fR
-.ad
-.RS 12n
-Explicitly specify the file system type(s) to be reported. The file system
-module must be loaded.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIinterval\fR\fR
-.ad
-.RS 12n
-Report once each \fIinterval\fR seconds.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIpath\fR\fR
-.ad
-.RS 12n
-Specify the path(s) of the mount point(s) to be reported. If path is not a
-mount point, the mount point containing path will be determined and displayed
-in the output.
-.RE
-
-.sp
-.LP
-If no \fIinterval\fR and no \fIcount\fR are specified, a single report is
-printed and \fBfsstat\fR exits. If an \fIinterval\fR is specified but no
-\fIcount\fR is specified, \fBfsstat\fR prints reports every \fIinterval\fR
-seconds indefinitely until the command is interrupted.
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRDisplaying General Activity
-.sp
-.LP
-The following example shows general activity for all file system types.
-
-.sp
-.in +2
-.nf
-\fB$ fsstat -F\fR
- new name name attr attr lookup rddir read read write write
- file remov chng get set ops ops ops bytes ops bytes
- 313K 214K 38.5K 2.16M 56.2K 8.36M 52.8K 19.7M 39.9G 18.8M 39.1G ufs
- 0 0 0 2.95K 0 3.81K 282 2.52K 466K 0 0 proc
- 0 0 0 0 0 0 0 0 0 0 0 nfs
- 10 8 2 86 9 98 15 413 103M 8.43K 1.05G zfs
- 13 14 4 98 16 125 10 1.01K 258M 15.9K 127M lofs
-8.73K 3.29K 5.25K 55.3K 37 1.20M 44 37.9K 38.3M 47.2K 35.9M tmpfs
- 0 0 0 4.93K 0 0 0 1.08K 913K 0 0 mntfs
- 3 2 1 503 3 897 13 122 25.8K 128 272K nfs3
- 10 8 0 615 10 10.1K 18 61 45.6K 292 2.26M nfs4
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRDisplaying Naming Activity
-.sp
-.LP
-The following example shows the naming activity for ufs, nfs, nfs3, nfs4, and
-tmpfs:
-
-.sp
-.in +2
-.nf
-\fB$ fsstat -n ufs nfs nfs3 nfs4 tmpfs\fR
-lookup creat remov link renam mkdir rmdir rddir symlnk rdlnk
-3.57M 3.10K 586 6 24 115 100 30.2K 5 330K ufs
- 0 0 0 0 0 0 0 0 0 0 nfs
-18.3K 3 5 0 0 0 0 1.03K 2 346 nfs3
- 535 0 0 0 0 0 0 46 0 4 nfs4
- 146 24 15 0 0 4 0 4 0 0 tmpfs
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRDisplaying Attribute Activity
-.sp
-.LP
-The following example shows the attribute activity for the FS type ufs and the
-mounted file systems "/" and "/export/home" every three seconds for every third
-iteration:
-
-.sp
-.in +2
-.nf
-\fB# fsstat -a ufs / /export/home 3 3\fR
-getattr setattr getsec setsec
- 378K 91.9K 11.8K 0 ufs
- 367K 82.3K 11.6K 0 /
- 11.3K 9.6K 198 0 /export/home
- 4.97K 2.27K 163 0 ufs
- 3.94K 1.36K 162 0 /
- 1.03K 927 1 0 /export/home
- 2.30K 1.06K 73 0 ufs
- 1.95K 766 71 0 /
- 361 317 2 0 /export/home
- 2.33K 1.06K 78 0 ufs
- 1.64K 451 77 0 /
- 711 631 1 0 /export/home
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 4 \fRDisplaying File Operation Statistics
-.sp
-.LP
-The following example shows the statistics for each file operation for "/"
-(using the \fB-f\fR option):
-
-.sp
-.in +2
-.nf
-\fB$ fsstat -f /\fR
-Mountpoint: /
- operation #ops bytes
- open 8.54K
- close 9.8K
- read 43.6K 65.9M
- write 1.57K 2.99M
- ioctl 2.06K
- setfl 4
- getattr 40.3K
- setattr 38
- access 9.19K
- lookup 203K
- create 595
- remove 56
- link 0
- rename 9
- mkdir 19
- rmdir 0
- readdir 2.02K 2.27M
- symlink 4
- readlink 8.31K
- fsync 199
- inactive 2.96K
- fid 0
- rwlock 47.2K
- rwunlock 47.2K
- seek 29.1K
- cmp 42.9K
- frlock 4.45K
- space 8
- realvp 3.25K
- getpage 104K
- putpage 2.69K
- map 13.2K
- addmap 34.4K
- delmap 33.4K
- poll 287
- dump 0
- pathconf 54
- pageio 0
- dumpctl 0
- dispose 23.8K
-getsecattr 697
-setsecattr 0
- shrlock 0
- vnevent 0
-.fi
-.in -2
-.sp
-
-.SH ENVIRONMENT VARIABLES
-.sp
-.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
-that affect the execution of \fBfsstat\fR: \fBLANG\fR, \fBLC_ALL\fR,
-\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, \fBLC_TIME\fR, and \fBNLSPATH\fR.
-.SH EXIT STATUS
-.sp
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 5n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB1\fR\fR
-.ad
-.RS 5n
-A fatal error occurred. A fatal error could be a failed system call or another
-internal error.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB2\fR\fR
-.ad
-.RS 5n
-Invalid command-line options were specified.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-CSI Enabled
-_
-Interface Stability See below.
-.TE
-
-.sp
-.LP
-The command-line options are Unstable. The human-readable output is not
-considered an interface.
-.SH SEE ALSO
-.sp
-.LP
-\fBdate\fR(1), \fBtime\fR(2), \fBattributes\fR(5)
-.SH NOTES
-.sp
-.LP
-All display options (\fB-a\fR, \fB-f\fR, \fB-i\fR, \fB-n\fR, \fB-v\fR) are
-mutually exclusive. Entering more than one of these options will result in an
-error.
-.sp
-.LP
-The \fIfstype\fR and \fIpath\fR operands must appear after the option, but
-before the \fIinterval\fR or \fIcount\fR on the command line. For example,
-"\fBfsstat\fR \fB-a\fR \fIfstype\fR \fIinterval\fR". Preference is given to
-\fIfstype\fR so that if a user wishes to see the statistics for a directory
-that has the same name as an \fIfstype\fR (for example, ufs), then the path
-must be specified unambiguously (for example, ./ufs). Similarly, in order to
-define a file with a numeric name (for example, "10") from an interval or count
-operand, the name should be prefixed accordingly (for example, ./10).
-.sp
-.LP
-When an interval is used, headers repeat after more than 12 lines of statistics
-have been displayed and the set of lines to be displayed in the current
-interval have completed.
-.sp
-.LP
-Statistics are not displayed for all pseudo-filesystems. The output displayed
-with the \fB-F\fR option shows which of the loaded filesystem types are
-supported.
-.sp
-.LP
-Unbundled file systems may not be recognized by \fBfsstat\fR.
-.sp
-.LP
-The command-line options are classified as Unstable and could change. The
-output is not considered to be an interface. The construction of higher level
-software tools depend on either the command-line options or the output of
-\fBfsstat\fR is not recommended.
diff --git a/usr/src/man/man1m/fstyp.1m b/usr/src/man/man1m/fstyp.1m
deleted file mode 100644
index 14cd484cfb..0000000000
--- a/usr/src/man/man1m/fstyp.1m
+++ /dev/null
@@ -1,161 +0,0 @@
-'\" te
-.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH FSTYP 1M "June 20, 2021"
-.SH NAME
-fstyp \- determine file system type
-.SH SYNOPSIS
-.nf
-\fBfstyp\fR [\fB-a\fR | \fB-v\fR] \fIspecial\fR [:\fIlogical-drive\fR]
-.fi
-
-.SH DESCRIPTION
-\fBfstyp\fR allows the user to determine the file system type of unmounted file
-systems using heuristic programs.
-.sp
-.LP
-An \fBfstyp\fR module for each file system type to be checked is executed; each
-of these modules applies an appropriate heuristic to determine whether the
-supplied \fIspecial\fR file is of the type for which it checks. If it is, the
-program prints on standard output the usual file system identifier for that
-type (for example, ``ufs'') and exits with a return code of \fB0\fR; if none of
-the modules succeed, the error message \fBunknown_fstyp (no matches)\fR is
-returned and the exit status is \fB1\fR. If more than one module succeeds, the
-error message \fBunknown_fstyp (multiple matches)\fR is returned and the exit
-status is \fB2\fR. Other errors are printed in the same format.
-.sp
-.LP
-This command is unreliable and its results should not be used to make any
-decisions about subsequent use of a storage device or disk partition.
-.SH OPTIONS
-.ne 2
-.na
-\fB\fB-a\fR\fR
-.ad
-.RS 6n
-Output all available file system attributes. If a file system has been
-successfully identified, and this option is specified, the \fIFSType\fR
-identifier is followed by one or more "name-value" pairs, one per line, in the
-format:
-.sp
-.in +2
-.nf
-name: value
-.fi
-.in -2
-.sp
-
-The following conventions are recognized for the file system attributes:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-String values are put in single quotes.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Nested "name-value" list increases the indentation of its values by four
-whitespaces.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-For an array of "name-value" pairs, one array entry is printed per line, with
-the index following the name in square brackets.
-.RE
-For instance, in the following example, "\fItop_list\fR" is a "name-value"
-list, consisting of a string array "\fIstring_array\fR" and a "name-value" list
-array "\fIlist_array\fR". The second "list_array" element is an integer array
-"\fIint_array\fR" containing three elements.
-.sp
-.in +2
-.nf
-top_string: 'String'
-top_list:
- string_array[0]: 'S0'
- string_array[1]: 'S1'
- list_array[0]:
- int_one: 1
- string_two: 'S2'
- list_array[1]:
- int_array[0]: 1
- int_array[1]: 2
- int_array[2]: 3
-.fi
-.in -2
-.sp
-
-In addition to the \fIFSType\fR-specific attributes, the following generic
-attributes may be present:
-.sp
-.ne 2
-.na
-\fB\fIgen_clean\fR\fR
-.ad
-.RS 13n
-Allowable values are "true" or "false". If the value is "false", the file
-system is damaged or was not unmounted cleanly and the \fBfsck\fR(1M) command
-must be run before this file system can be mounted.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIgen_guid\fR\fR
-.ad
-.RS 12n
-Globally unique identifier. This string uniquely identifies the file system.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIgen_version\fR\fR
-.ad
-.RS 15n
-A string describing the file system version.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIgen_volume_label\fR\fR
-.ad
-.RS 20n
-Volume label, a human-readable string used to either describe or identify the
-file system.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.RS 6n
-Produce verbose output. This is usually information about the file systems
-superblock and varies across different \fIFSTypes\fR. See \fBufs\fR(7FS),
-\fBmkfs_ufs\fR(1M), and \fBtunefs\fR(1M) for details.
-.RE
-
-.SH USAGE
-See \fBlargefile\fR(5) for the description of the behavior of \fBfstyp\fR when
-encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
-.SH SEE ALSO
-\fBfsck\fR(1M), \fBmkfs_ufs\fR(1M), \fBtunefs\fR(1M), \fBattributes\fR(5),
-\fBlibfstyp\fR(3LIB), \fBlargefile\fR(5), \fBhsfs\fR(7FS), \fBufs\fR(7FS),
-\fBpcfs\fR(7FS)
-.SH NOTES
-The use of heuristics implies that the result of \fBfstyp\fR is not guaranteed
-to be accurate.
-.sp
-.LP
-This command is unreliable and its results should not be used to make any
-decisions about subsequent use of a storage device or disk partition.
diff --git a/usr/src/man/man1m/fuser.1m b/usr/src/man/man1m/fuser.1m
deleted file mode 100644
index 66f371e2c8..0000000000
--- a/usr/src/man/man1m/fuser.1m
+++ /dev/null
@@ -1,284 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 2003 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH FUSER 1M "Oct 21, 2003"
-.SH NAME
-fuser \- identify users of files and devices
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/fuser\fR [\fB-c\fR | \fB-d\fR | \fB-f\fR] [\fB-nu\fR] [\fB-k\fR | \fB-s\fR \fIsig\fR] \fIfiles\fR
- [ [\fB- \fR] [\fB-c\fR | \fB-d\fR | \fB-f\fR] [\fB-nu\fR] [\fB-k\fR | \fB-s\fR \fIsig\fR] \fIfiles\fR] ...
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBfuser\fR utility displays the process \fBID\fRs of the processes that
-are using the \fIfiles\fR specified as arguments.
-.sp
-.LP
-Each process \fBID\fR is followed by a letter code. These letter codes are
-interpreted as follows. If the process is using the file as
-.sp
-.ne 2
-.na
-\fB\fBc\fR\fR
-.ad
-.RS 5n
-Indicates that the process is using the file as its current directory.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBm\fR\fR
-.ad
-.RS 5n
-Indicates that the process is using a file mapped with \fBmmap\fR(2). See
-\fBmmap\fR(2) for details.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBn\fR\fR
-.ad
-.RS 5n
-Indicates that the process is holding a non-blocking mandatory lock on the
-file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBo\fR\fR
-.ad
-.RS 5n
-Indicates that the process is using the file as an open file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBr\fR\fR
-.ad
-.RS 5n
-Indicates that the process is using the file as its root directory.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBt\fR\fR
-.ad
-.RS 5n
-Indicates that the process is using the file as its text file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBy\fR\fR
-.ad
-.RS 5n
-Indicates that the process is using the file as its controlling terminal.
-.RE
-
-.sp
-.LP
-For block special devices with mounted file systems, all processes using any
-file on that device are listed. For all types of files (text files,
-executables, directories, devices, and so forth), only the processes using that
-file are reported.
-.sp
-.LP
-For all types of devices, \fBfuser\fR also displays any known kernel consumers
-that have the device open. Kernel consumers are displayed in one of the
-following formats:
-.sp
-.in +2
-.nf
-[\fImodule_name\fR]
-[\fImodule_name\fR,dev_path=\fIpath\fR]
-[\fImodule_name\fR,dev=(\fImajor\fR,\fIminor\fR)]
-[\fImodule_name\fR,dev=(\fImajor\fR,\fIminor\fR),dev_path=\fIpath\fR]
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-If more than one group of files are specified, the options may be respecified
-for each additional group of files. A lone dash cancels the options currently
-in force.
-.sp
-.LP
-The process IDs are printed as a single line on the standard output, separated
-by spaces and terminated with a single new line. All other output is written on
-standard error.
-.sp
-.LP
-Any user can run fuser, but only the superuser can terminate another user's
-process.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-c\fR\fR
-.ad
-.RS 10n
-Reports on files that are mount points for file systems, and any files within
-that mounted file system.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-d\fR\fR
-.ad
-.RS 10n
-Report device usage information for all minor nodes bound to the same device
-node as the specified minor node. This option does not report file usage for
-files within a mounted file system.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR\fR
-.ad
-.RS 10n
-Prints a report for the named file, not for files within a mounted file system.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-k\fR\fR
-.ad
-.RS 10n
-Sends the \fBSIGKILL\fR signal to each process. Since this option spawns kills
-for each process, the kill messages may not show up immediately (see
-\fBkill\fR(2)). No signals will be sent to kernel file consumers.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR\fR
-.ad
-.RS 10n
-Lists only processes with non-blocking mandatory locks on a file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR \fIsig\fR\fR
-.ad
-.RS 10n
-Sends a signal to each process. The \fIsig\fR option argument specifies one of
-the symbolic names defined in the \fB<signal.h>\fR header, or a decimal integer
-signal number. If \fIsig\fR is a symbolic name, it is recognized in a
-case-independent fashion, without the \fBSIG\fR prefix. The \fB-k\fR option is
-equivalent to \fB-s\fR \fBKILL\fR or \fB-s\fR \fB9\fR. No signals will be sent
-to kernel file consumers.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-u\fR\fR
-.ad
-.RS 10n
-Displays the user login name in parentheses following the process \fBID\fR.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRReporting on the Mount Point and Files
-.sp
-.LP
-The following example reports on the mount point and files within the mounted
-file system.
-
-.sp
-.in +2
-.nf
-example% \fBfuser -c /export/foo\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRRestricting Output when Reporting on the Mount Point and Files
-.sp
-.LP
-The following example reports on the mount point and files within the mounted
-file system, but the output is restricted to processes that hold non-blocking
-mandatory locks.
-
-.sp
-.in +2
-.nf
-example% \fBfuser -cn /export/foo\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRSending SIGTERM to Processes Holding a Non-blocking Mandatory
-Lock
-.sp
-.LP
-The following command sends \fBSIGTERM\fR to any processes that hold a
-non-blocking mandatory lock on file \fB/export/foo/my_file\fR.
-
-.sp
-.in +2
-.nf
-example% \fBfuser -fn -s term /export/foo/my_file\fR
-.fi
-.in -2
-.sp
-
-.SH ENVIRONMENT VARIABLES
-.sp
-.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
-that affect the execution of \fBfuser\fR: \fBLANG\fR, \fBLC_ALL\fR
-\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Standard
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBps\fR(1), \fBmount\fR(1M), \fBkill\fR(2), \fBmmap\fR(2), \fBsignal\fR(3C),
-\fBattributes\fR(5), \fBenviron\fR(5), \fBstandards\fR(5)
-.SH NOTES
-.sp
-.LP
-Because \fBfuser\fR works with a snapshot of the system image, it may miss
-processes that begin using a file while \fBfuser\fR is running. Also, processes
-reported as using a file may have stopped using it while \fBfuser\fR was
-running. These factors should discourage the use of the \fB-k\fR option.
diff --git a/usr/src/man/man1m/fwflash.1m b/usr/src/man/man1m/fwflash.1m
deleted file mode 100644
index eecda587a4..0000000000
--- a/usr/src/man/man1m/fwflash.1m
+++ /dev/null
@@ -1,428 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 2020 Oxide Computer Company
-.\" Copyright 2021 Peter Tribble
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH FWFLASH 1M "June 20, 2021"
-.SH NAME
-fwflash \- firmware query and update utility
-.SH SYNOPSIS
-.nf
-\fB/usr/sbin/fwflash\fR [\fB-l\fR [\fB-c\fR \fIdevice_class\fR | \fBALL\fR ]]
- | [\fB-v\fR] | [\fB-h\fR]
-.fi
-
-.LP
-.nf
-\fBfwflash\fR [\fB-f\fR \fIfile1\fR,\fIfile2\fR,\fIfile3\fR,... | \fB-r\fR \fIfile\fR]
- [\fB-y\fR] [\fB-d\fR \fIdevice_path\fR]
-.fi
-
-.SH DESCRIPTION
-The \fBfwflash\fR command writes a binary image file to supported flashable
-devices attached to a Solaris host. It also provides the ability to read
-firmware to a file if supported by the device. Because changing the firmware in
-a device can have significant impact on the stability of a system, only users
-with the privilege \fBAll\fR are allowed to execute this command. Users
-authorized to run \fBfwflash\fR can be granted the "Firmware Flash Update"
-Rights Profile.
-.sp
-.LP
-The first form of the command, above, provides information about devices. It
-lists all devices currently available on the system that are supported by
-\fBfwflash\fR for firmware upgrade. You can filter the list operation, to
-display only specified classes of devices. The second form of the command
-provides the operations to read or write the firmware images to specific
-devices.
-.SH OPTIONS
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-c\fR \fIdevice_class\fR\fR
-.ad
-.sp .6
-.RS 4n
-An optional parameter, valid only when used with the \fB-l\fR option. This
-option causes the command to list only devices of a specific class type.
-Currently supported classes are \fBIB\fR, \fBses\fR, \fBsd\fR, \fBufm\fR, or
-\fBALL\fR. If \fB-c\fR is not specified for the \fB-l\fR option, the class
-defaults to \fBALL\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-d\fR \fIdev_path\fR\fR
-.ad
-.sp .6
-.RS 4n
-The \fIdev_path\fR is the absolute path name of the device that the user wants
-to modify with the \fB-f\fR or \fB-r\fR option. If the device cannot be found,
-the command fails. If the \fB-d\fR option is specified, then either \fB-f\fR or
-\fB-r\fR must also be specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR \fIfile1\fR,\fIfile2\fR,\fIfile3\fR,...\fR
-.ad
-.sp .6
-.RS 4n
-Specify the path to one or more binary firmware image files you want to write
-to the device. \fBfwflash\fR will verify that each file is a valid firmware
-image for the specified device. If it is not, the command fails with an
-appropriate error message.
-.sp
-If multiple firmware image files are specified, each image is verified and
-flashed to the device in the order given on the command line. If any of the
-specified files cannot be successfully flashed, then an appropriate message is
-displayed.
-.sp
-After a new firmware image is flashed to a device, a reboot is required to
-correctly activate the new firmware.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-h\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display the command line usage message for \fBfwflash\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR\fR
-.ad
-.sp .6
-.RS 4n
-List the devices on a system available for firmware upgrade and display
-information specific to each device or device class.
-.sp
-For InfiniBand (IB) devices, the list operation displays the \fBguid\fRs
-(Globally Unique Identifier) currently set for the HCA, as well as the current
-firmware revision installed. There are four separate \fBguid\fRs on the HCA;
-two of them can be set with the same value.
-.sp
-For SCSI Enclosure Services (\fBses\fR or \fBsgen\fR) devices, an identifying
-target-port worldwide name is displayed, if available.
-.sp
-For \fBufm\fR(7D) based devices, identifying information such as PCI
-identifiers and supported capabilities such as the ability to read
-firmware images or slot information is reported. For each firmware image
-on the device, each slot is displayed along with information about the
-slot's version and attributes.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-r\fR \fIfile\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify the path to a file to create when reading the firmware from the device.
-The \fB-f\fR and \fB-r\fR options are mutually exclusive.
-.sp
-Not all flashable devices support reading firmware images back from the device.
-A message will be displayed if the selected device does not support this
-operation.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display \fBfwflash\fR version information and exit.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-y\fR\fR
-.ad
-.sp .6
-.RS 4n
-Valid only when a flash read (\fB-r\fR) or write (\fB-f\fR) option is
-specified. This option causes \fBfwflash\fR not to prompt for confirmation
-during operation and operate non-interactively. Note that there is no option
-that allows you to forcibly flash an incompatible firmware image onto a device.
-.RE
-
-.SH EXAMPLES
-\fBExample 1 \fREntering Command Without Arguments
-.sp
-.LP
-The following command shows \fBfwflash\fR output when the command is entered
-without arguments.
-
-.sp
-.in +2
-.nf
-example# \fBfwflash\fR
-Usage:
- fwflash [-l [-c device_class | ALL]] | [-v] | [-h]
- fwflash [-f file1,file2,file3,... | -r file] [-y] -d device_path
-
- -l list flashable devices in this system
- -c device_class limit search to a specific class
- eg IB for InfiniBand, ses for SCSI Enclosures
- -v print version number of fwflash utility
- -h print this usage message
-
- -f file1,file2,file3,...
- firmware image file list to flash
- -r file file to dump device firmware to
- -y answer Yes/Y/y to prompts
- -d device_path pathname of device to be flashed
-
- If -d device_path is specified, then one of -f <files>
- or -r <file> must also be specified
-
- If multiple firmware images are required to be flashed
- they must be listed together, separated by commas. The
- images will be flashed in the order specified.
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRListing Devices Available to Flash
-.sp
-.LP
-The following command lists the devices available to be flashed.
-
-.sp
-.in +2
-.nf
-example# \fBfwflash -l\fR
-List of available devices:
-Device[0], /devices/pci@0,0/pci8086,3595@2/pci8086,32a@0,2/\e
- pci15b3,5a46@c/pci15b3,5a44@0:devctl
- Class [IB]
- GUID: System Image - 0002c901081e33b3
- Node - 0000000000003446
- Port 1 - 0002c901081e33b1
- Port 2 - 0002c901081e33b2
- Firmware revision: 3.3.0002
- No hardware information available for this device
-
-Device[1], /devices/pci@0,0/pci8086,3597@4/pci15b3,6278@0:devctl
- Class [IB]
- GUID: System Image - 0002c9010a99e3b3
- Node - 0002c9010a99e3b0
- Port 1 - 0002c9010a99e3b1
- Port 2 - 0002c9010a99e3b2
- Firmware revision: 4.8.00c8
- Product : MTLP25208-CF256T (Lion cub)
- PSID : MT_00B0000001
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Alternatively, for a SAS Expander presented as a SCSI Enclosure Services device,
-we might see output such as this:
-
-.sp
-.in +2
-.nf
-example# \fBfwflash -l\fR
-List of available devices:
-Device[0] /devices/pci@0/pci@0/pci@2/scsi@0/ses@3,0:ses
- Class [sgen]
- Target port WWN : 500605b00002453d
- Vendor : SUN
- Product : 16Disk Backplane
- Firmware revision: 5021
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Finally, for devices that support the system's upgradeable firmware
-module APIs (see \fBufm\fR(7D)), one might see output like:
-
-.sp
-.in +2
-.nf
-example# \fBfwflash -l\fR
-List of available devices:
-Device[0] /devices/pci@0,0/pci1022,1483@3,2/pci8086,390d@0
-Class [ufm]
- Vendor: Intel Corporation
- Device: SSD 660P Series
- Capabilities: Report
- Image 0: Firmware
- Slot 0 (-|w|a): 002C
- Slot 1 (-|w|-): 002C
-
-
-Device[1] /devices/pci@3d,0/pci1022,1483@3,1/pci1849,1521@0
-Class [ufm]
- Vendor: Intel Corporation
- Device: I350 Gigabit Network Connection
- Capabilities: Report, Read Image
- Image 0: NVM
- Slot 0 (r|w|a): 1.69
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRFlash Upgrading an IB HCA Device
-.sp
-.LP
-The following command flash upgrades an IB HCA device.
-
-.sp
-.in +2
-.nf
-example# \fBfwflash -f ./version.3.2.0000 \e
- -d /devices/pci@0,0/pci8086,3597@4/pci15b3,6278@0:devctl\fR
-About to update firmware on:
- /devices/pci@0,0/pci8086,3597@4/pci15b3,6278@0:devctl
-Continue (Y/N): \fBY\fR
-
-Updating . . . . . . . . . . . .
-Done. New image will be active after the system is rebooted.
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Note that you are prompted before the upgrading proceeds and that it is
-mandatory that you reboot your host to activate the new firmware image.
-
-.sp
-.LP
-The following command adds the \fB-y\fR option to the command.
-
-.sp
-.in +2
-.nf
-example# \fBfwflash -y -f ./version.3.2.0000 \e
- -d /devices/pci@0,0/pci8086,3597@4/pci15b3,6278@0:devctl\fR
-About to update firmware on:
- /devices/pci@0,0/pci8086,3597@4/pci15b3,6278@0:devctl
-
-Updating . . . . . . . . . . . .
-Done. New image will be active after the system is rebooted.
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 4 \fRReading Device Firmware to File
-.sp
-.LP
-The command shown below reads the device firmware to a file. The command uses
-the \fB-y\fR option so that read occurs without prompting.
-
-.sp
-.in +2
-.nf
-example# \fBfwflash -y -r ./firmware.bin \e
- -d /devices/pci@1d,700000/pci@1/pci15b3,5a44@0:devctl\fR
-About to read firmware on:
- /devices/pci@1d,700000/pci@1/pci15b3,5a44@0:devctl
-to filename: ./firmware.bin
-
-Reading . . .
-Done.
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 5 \fRWhen No Flashable Devices Are Found
-.sp
-.LP
-The command output shown below informs the user that there are no supported
-flashable devices found in the system:
-
-.sp
-.in +2
-.nf
-example# \fBfwflash -l\fR
-fwflash: No flashable devices attached with the ses driver in this system
-fwflash: No flashable devices attached with the sgen driver in this system
-fwflash: No flashable devices attached with the tavor driver in this system
-fwflash: No flashable devices in this system
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Each plugin found in \fB/usr/lib/fwflash/identify\fR is loaded in turn, and
-walks the system device tree, determining whether any currently-attached
-devices can be flashed.
-
-.SH RETURN VALUES
-The \fBfwflash\fR command returns the following values:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.sp .6
-.RS 4n
-Success
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB1\fR\fR
-.ad
-.sp .6
-.RS 4n
-Failure
-.RE
-
-.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Committed
-.TE
-
-.SH SEE ALSO
-\fBattributes\fR(5), \fBhermon\fR(7D), \fBses\fR(7D), \fBtavor\fR(7D),
-\fBufm\fR(7D)
-.sp
-.LP
-The InfiniBand Trade Association website, http://www.infinibandta.org
-.sp
-.LP
-The SCSI Storage Interfaces committee website, http://www.t10.org
-.sp
-.LP
-\fISCSI Primary Commands-4, SPC4\fR
-.sp
-.LP
-\fISCSI Enclosure Services-2, SES2\fR
-.sp
-.LP
-\fISerial Attached SCSI-2, SAS2\fR
diff --git a/usr/src/man/man1m/fwtmp.1m b/usr/src/man/man1m/fwtmp.1m
deleted file mode 100644
index 7a11b7fb9a..0000000000
--- a/usr/src/man/man1m/fwtmp.1m
+++ /dev/null
@@ -1,82 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 1999 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH FWTMP 1M "Feb 22, 1999"
-.SH NAME
-fwtmp, wtmpfix \- manipulate connect accounting records
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/acct/fwtmp\fR [\fB-ic\fR]
-.fi
-
-.LP
-.nf
-\fB/usr/lib/acct/wtmpfix\fR [\fIfile\fR]...
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBfwtmp\fR reads from the standard input and writes to the standard output,
-converting binary records of the type found in \fB/var/adm/wtmpx\fR to
-formatted ASCII records. The ASCII version is useful when it is necessary to
-edit bad records.
-.sp
-.LP
-\fBwtmpfix\fR examines the standard input or named files in \fButmpx\fR format,
-corrects the time/date stamps to make the entries consistent, and writes to the
-standard output. A hyphen (\fB\(mi\fR) can be used in place of \fIfile\fR to
-indicate the standard input. If time/date corrections are not performed,
-\fBacctcon\fR(1M) will fault when it encounters certain date-change records.
-.sp
-.LP
-Each time the date is set, a pair of date change records are written to
-\fB/var/adm/wtmpx\fR. The first record is the old date denoted by the string
-"\fBold time\fR" placed in the \fBline\fR field and the flag
-\fB\fR\fBOLD_TIME\fR\fB\fR placed in the \fBtype\fR field of the \fButmpx\fR
-structure. The second record specifies the new date and is denoted by the
-string \fBnew time\fR placed in the \fBline\fR field and the flag
-\fB\fR\fBNEW_TIME\fR\fB\fR placed in the \fBtype\fR field. \fBwtmpfix\fR uses
-these records to synchronize all time stamps in the file.
-.sp
-.LP
-In addition to correcting time/date stamps, \fBwtmpfix\fR will check the
-validity of the \fBname\fR field to ensure that it consists solely of
-alphanumeric characters or spaces. If it encounters a name that is considered
-invalid, it will change the login name to \fB\fR\fBINVALID\fR\fB\fR and write a
-diagnostic to the standard error. In this way, \fBwtmpfix\fR reduces the chance
-that \fBacctcon\fR will fail when processing connect accounting records.
-.SH OPTIONS
-.sp
-.ne 2
-.na
-\fB\fB-ic\fR\fR
-.ad
-.RS 7n
-Denotes that input is in ASCII form, and output is to be written in binary
-form.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/var/adm/wtmpx\fR\fR
-.ad
-.RS 18n
-history of user access and administration information
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBacctcom\fR(1), \fBed\fR(1), \fBacct\fR(1M), \fBacctcms\fR(1M),
-\fBacctcon\fR(1M), \fBacctmerg\fR(1M), \fBacctprc\fR(1M), \fBacctsh\fR(1M),
-\fBrunacct\fR(1M), \fBacct\fR(2), \fBacct.h\fR(3HEAD), \fButmpx\fR(4),
-\fBattributes\fR(5)
-.sp
-.LP
-\fI\fR
diff --git a/usr/src/man/man1m/getdev.1m b/usr/src/man/man1m/getdev.1m
deleted file mode 100644
index e26d40885b..0000000000
--- a/usr/src/man/man1m/getdev.1m
+++ /dev/null
@@ -1,171 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 1997 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH GETDEV 1M "Jul 5, 1990"
-.SH NAME
-getdev \- lists devices based on criteria
-.SH SYNOPSIS
-.LP
-.nf
-\fBgetdev\fR [\fB-ae\fR] [\fIcriteria\fR]... [\fIdevice\fR]...
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBgetdev\fR generates a list of devices that match certain criteria. The
-criteria includes a list of attributes (given in expressions) and a list of
-devices. If no criteria are given, all devices are included in the list.
-.sp
-.LP
-Devices must satisfy at least one of the criteria in the list unless the
-\fB-a\fR option is used. Then, only those devices which match all of the
-criteria in a list will be included.
-.sp
-.LP
-Devices which are defined on the command line and which match the criteria are
-included in the generated list. However, if the \fB-e\fR option is used, the
-list becomes a set of devices to be \fIexcluded\fR from the list. See
-\fBOPTIONS\fR and \fBOPERANDS\fR.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-a\fR\fR
-.ad
-.RS 6n
-Specifies that a device must match all criteria to be included in the list
-generated by this command. The option has no effect if no criteria are defined.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-e\fR\fR
-.ad
-.RS 6n
-Specifies that the list of devices which follows on the command line should be
-\fIexcluded\fR from the list generated by this command. Without the \fB-e\fR
-the named devices are \fIincluded\fR in the generated list. The flag has no
-effect if no devices are defined.
-.RE
-
-.SH OPERANDS
-.sp
-.LP
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fB\fIcriteria\fR\fR
-.ad
-.RS 12n
-Defines the criteria that a device must match to be included in the generated
-list. \fIcriteria\fR is specified by expressions.
-.sp
-There are four possible expression types which the criteria specified in the
-\fIcriteria\fR argument may follow:
-.sp
-.ne 2
-.na
-\fB\fIattribute\fR\fB=\fR\fIvalue\fR\fR
-.ad
-.RS 20n
-Selects all devices whose attribute \fIattribute\fR is defined and is equal to
-\fIvalue\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIattribute\fR\fB!=\fR\fIvalue\fR\fR
-.ad
-.RS 20n
-Selects all devices whose attribute \fIattribute\fR is defined and does not
-equal \fIvalue\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIattribute\fR\fB:*\fR\fR
-.ad
-.RS 20n
-Selects all devices which have the attribute \fIattribute\fR defined.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIattribute\fR\fB!:*\fR\fR
-.ad
-.RS 20n
-Selects all devices which do not have the attribute \fIattribute\fR defined.
-.RE
-
-See the \fBputdev\fR(1M) manual page for a complete listing and description of
-available attributes.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIdevice\fR\fR
-.ad
-.RS 12n
-Defines the devices which should be included in the generated list. This can be
-the pathname of the device or the device alias.
-.RE
-
-.SH EXIT STATUS
-.sp
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 5n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB1\fR\fR
-.ad
-.RS 5n
-Command syntax was incorrect, invalid option was used, or an internal error
-occurred.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB2\fR\fR
-.ad
-.RS 5n
-Device table could not be opened for reading.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/device.tab\fR\fR
-.ad
-.RS 19n
-
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBdevattr\fR(1M), \fBgetdgrp\fR(1M), \fBputdev\fR(1M), \fBputdgrp\fR(1M),
-\fBattributes\fR(5)
diff --git a/usr/src/man/man1m/getdevpolicy.1m b/usr/src/man/man1m/getdevpolicy.1m
deleted file mode 100644
index 838d392671..0000000000
--- a/usr/src/man/man1m/getdevpolicy.1m
+++ /dev/null
@@ -1,70 +0,0 @@
-'\" te
-.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH GETDEVPOLICY 1M "April 9, 2016"
-.SH NAME
-getdevpolicy \- inspect the system's device policy
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/getdevpolicy\fR [\fIdevice\fR\&.\|.\|.]
-.fi
-
-.SH DESCRIPTION
-.LP
-Without arguments, \fBgetdevpolicy\fR outputs the device policy in effect to
-standard output.
-.sp
-.LP
-With arguments, each argument is treated as a pathname to a device and the
-device policy in effect for that specific device is printed preceded by the
-supplied pathname.
-.SH USAGE
-.LP
- The device policy adds access restrictions over and above the file
-permissions.
-.SH EXIT STATUS
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR \fR
-.ad
-.RS 12n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnon-zero\fR\fR
-.ad
-.RS 12n
-An error occurred.
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability See below
-.TE
-
-.sp
-.LP
-The invocation is evolving. The output is unstable.
-.SH SEE ALSO
-.LP
-\fBadd_drv\fR(1M), \fBrem_drv\fR(1M), \fBupdate_drv\fR(1M),
-\fBattributes\fR(5), \fBprivileges\fR(5), \fBdevfs\fR(7FS)
diff --git a/usr/src/man/man1m/getdgrp.1m b/usr/src/man/man1m/getdgrp.1m
deleted file mode 100644
index 87f7f71a74..0000000000
--- a/usr/src/man/man1m/getdgrp.1m
+++ /dev/null
@@ -1,197 +0,0 @@
-'\" te
-.\" Copyright (c) 1996, Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH GETDGRP 1M "Jul 5, 1990"
-.SH NAME
-getdgrp \- lists device groups which contain devices that match criteria
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/getdgrp\fR [\fB-ael\fR] [\fIcriteria\fR]... [\fIdgroup\fR]...
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBgetdgrp\fR generates a list of device groups that contain devices matching
-the given criteria. The criteria is given in the form of expressions.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-a\fR\fR
-.ad
-.RS 6n
-Specifies that a device must match all criteria to be included in the list
-generated by this command. The option has no effect if no criteria are defined.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-e\fR\fR
-.ad
-.RS 6n
-Specifies that the list of device groups on the command line should be
-\fIexcluded\fR from the list generated by this command. Without the \fB-e\fR
-option the named device groups are \fIincluded\fR in the generated list. The
-flag has no effect if no devices are defined.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR\fR
-.ad
-.RS 6n
-Specifies that all device groups (subject to the \fB-e\fR option and the
-\fIdgroup\fR list) should be listed even if they contain no valid device
-members. This option has no affect if \fIcriteria\fR is specified on the
-command line.
-.RE
-
-.SH OPERANDS
-.sp
-.LP
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fB\fIcriteria\fR\fR
-.ad
-.RS 12n
-Defines criteria that a device must match before a device group to which it
-belongs can be included in the generated list. Specify \fIcriteria\fR as an
-expression or a list of expressions which a device must meet for its group to
-be included in the list generated by \fBgetdgrp\fR. If no criteria are given,
-all device groups are included in the list.
-.sp
-Devices must satisfy at least one of the criteria in the list. However, the
-\fB-a\fR option can be used to define that a "logical and" operation should be
-performed. Then, only those groups containing devices which match all of the
-criteria in a list will be included.
-.sp
-There are four possible expressions types which the criteria specified in the
-\fIcriteria\fR argument may follow:
-.sp
-.ne 2
-.na
-\fB\fIattribute\fR\fB=\fR\fIvalue\fR\fR
-.ad
-.RS 20n
-Selects all device groups with a member whose attribute \fIattribute\fR is
-defined and is equal to \fIvalue\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIattribute\fR\fB!=\fR\fIvalue\fR\fR
-.ad
-.RS 20n
-Selects all device groups with a member whose attribute \fIattribute\fR is
-defined and does not equal \fIvalue\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIattribute\fR\fB:*\fR\fR
-.ad
-.RS 20n
-Selects all device groups with a member which has the attribute
-\fIattribute\fR defined.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIattribute\fR\fB!:*\fR\fR
-.ad
-.RS 20n
-Selects all device groups with a member which does not have the attribute
-\fIattribute\fR defined.
-.RE
-
-See \fBputdev\fR(1M) for a complete listing and description of available
-attributes.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIdgroup\fR\fR
-.ad
-.RS 12n
-Defines a set of device groups which should be included in or excluded from the
-generated list. Device groups that are defined and which contain devices
-matching the criteria are included.
-.sp
-If the \fB-e\fR option is used, this list defines a set of device groups to be
-excluded. When the \fB-e\fR option is used and \fIcriteria\fR is also
-defined, the generated list will include device groups containing devices
-which match the criteria and are not in the command line list.
-.RE
-
-.SH EXIT STATUS
-.sp
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 5n
-Successful completion of the task.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB1\fR\fR
-.ad
-.RS 5n
-Command syntax was incorrect, invalid option was used, or an internal error
-occurred.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB2\fR\fR
-.ad
-.RS 5n
-Device table or device group table could not be opened for reading.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/device.tab\fR\fR
-.ad
-.RS 19n
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/dgroup.tab\fR\fR
-.ad
-.RS 19n
-
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBdevattr\fR(1M), \fBgetdev\fR(1M), \fBputdev\fR(1M), \fBputdgrp\fR(1M),
-\fBattributes\fR(5)
diff --git a/usr/src/man/man1m/getent.1m b/usr/src/man/man1m/getent.1m
deleted file mode 100644
index 71a71c496f..0000000000
--- a/usr/src/man/man1m/getent.1m
+++ /dev/null
@@ -1,322 +0,0 @@
-.\"
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.\"
-.\"
-.\" Copyright (C) 1999, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright (c) 2014 Gary Mills
-.\" Copyright (c) 2018 Peter Tribble
-.\"
-.Dd June 17, 2021
-.Dt GETENT 1M
-.Os
-.Sh NAME
-.Nm getent
-.Nd get entries from administrative database
-.Sh SYNOPSIS
-.Nm
-.Ar database
-.Oo Ar key Oc Ns ...
-.Sh DESCRIPTION
-.Nm
-gets a list of entries from the administrative database specified by
-.Ar database .
-The information generally comes from one or more of the sources that are
-specified for the
-.Ar database
-in
-.Pa /etc/nsswitch.conf .
-.Pp
-.Ar database
-is the name of the database to be examined.
-This can be
-.Cm passwd ,
-.Cm shadow ,
-.Cm group ,
-.Cm hosts ,
-.Cm ipnodes ,
-.Cm services ,
-.Cm protocols ,
-.Cm ethers ,
-.Cm project ,
-.Cm networks ,
-.Cm netmasks ,
-.Cm auth_attr ,
-.Cm exec_attr ,
-.Cm prof_attr ,
-.Cm user_attr ,
-or
-.Cm netgroup .
-For each of these databases,
-.Nm
-uses the appropriate library routines described in
-.Xr getpwnam 3C ,
-.Xr getspnam 3C ,
-.Xr getgrnam 3C ,
-.Xr getnetgrent 3C ,
-.Xr gethostbyaddr 3NSL ,
-.Xr gethostbyname 3NSL ,
-.Xr getipnodebyaddr 3SOCKET ,
-.Xr getipnodebyname 3SOCKET ,
-.Xr getservbyname 3SOCKET ,
-.Xr getprotobyname 3SOCKET ,
-.Xr ethers 3SOCKET ,
-.Xr getprojbyname 3PROJECT ,
-.Xr getnetbyname 3SOCKET ,
-.Xr getauthattr 3SECDB ,
-.Xr getexecattr 3SECDB ,
-.Xr getprofattr 3SECDB ,
-and
-.Xr getuserattr 3SECDB
-respectively.
-.Pp
-Each
-.Ar key
-must be in a format appropriate for searching on the respective database.
-For example, it can be a username or numeric-uid for
-.Cm passwd ;
-hostname or IP address for
-.Cm hosts ;
-or service, service/protocol, port, or port/proto for
-.Cm services .
-.Pp
-.Nm
-prints out the database entries that match each of the supplied keys, one per
-line, in the format of the matching administrative file:
-.Xr passwd 4 ,
-.Xr shadow 4 ,
-.Xr group 4 ,
-.Xr project 4 ,
-.Xr hosts 4 ,
-.Xr services 4 ,
-.Xr protocols 4 ,
-.Xr ethers 4 ,
-.Xr netgroup 4 ,
-.Xr networks 4 ,
-.Xr netmasks 4 ,
-.Xr auth_attr 4 ,
-.Xr exec_attr 4 ,
-.Xr prof_attr 4 ,
-or
-.Xr user_attr 4 .
-If no key is given, all entries returned by the corresponding enumeration
-library routine, for example,
-.Xr getpwent 3C
-or
-.Xr gethostent 3NSL ,
-are printed.
-Enumeration is not supported on
-.Cm ipnodes ,
-.Cm ethers ,
-.Cm netgroup ,
-or
-.Cm netmasks .
-.Ss Key Interpretation for passwd, group, netgroup, and user_attr Databases
-When
-.Nm
-is invoked with
-.Ar database
-set to
-.Cm passwd ,
-each key value is processed as follows:
-.Bl -bullet
-.It
-If the key value consists only of numeric characters,
-.Nm
-assumes that the key value is a numeric user ID and searches the
-.Cm passwd
-database for a matching user ID.
-.It
-If the user ID is not found in the
-.Cm passwd
-database or if the key value contains any non-numeric characters,
-.Nm
-assumes the key value is a user name and searches the
-.Cm passwd
-database for a matching user name.
-.El
-.Pp
-When
-.Nm
-is invoked with
-.Ar database
-set to
-.Cm group ,
-each key value is processed as follows:
-.Bl -bullet
-.It
-If the key value consists only of numeric characters,
-.Nm
-assumes that the key value is a numeric group ID and searches the
-.Cm group
-database for a matching group ID.
-.It
-If the group ID is not found in the
-.Cm group
-database or if the key value contains any non-numeric characters,
-.Nm
-assumes the key value is a group name and searches the
-.Cm group
-database for a matching group name.
-.El
-.Pp
-When
-.Nm
-is invoked with
-.Ar database
-set to
-.Cm netgroup ,
-only a single lookup key is supported, which must be in the following format:
-.Bd -ragged -offset Ds
-.Ar netgroup Oo Ar host Ar user Ar domain Oc
-.Ed
-.Pp
-Specifying only the
-.Ar netgroup
-name will result in entries from the selected netgroup being displayed as
-string triples
-.Pq hostname, username, domain ,
-in a format compatible with
-.Xr netgroup 4 .
-.Pp
-Specifying the
-.Ar netgroup
-along with
-.Ar host ,
-.Ar user
-and
-.Ar domain
-will filter the netgroup display based on these entries.
-An asterisk
-.Pq \&*
-can be used as a wildcard for the
-.Ar host ,
-.Ar user
-or
-.Ar domain
-fields.
-.Pp
-Since the
-.Cm netgroup
-database does not support enumeration, a lookup key must always be specified.
-.Pp
-When
-.Nm
-is invoked with
-.Ar database
-set to
-.Cm user_attr ,
-each key value is processed as follows:
-.Bl -bullet
-.It
-If the key value consists only of numeric characters,
-.Nm
-assumes that the key value is a numeric user ID and searches the
-.Cm passwd
-database for a matching user name, which is then used as the key for
-.Cm user_attr .
-.It
-If the user ID is not found in the
-.Cm passwd
-database or if the key value contains any non-numeric characters,
-.Nm
-assumes the key value is a user name and searches the
-.Cm user_attr
-database for a matching entry.
-.El
-.Sh FILES
-.Bl -tag -width Pa
-.It Pa /etc/nsswitch.conf
-name service switch configuration file
-.It Pa /etc/passwd
-password file
-.It Pa /etc/shadow
-shadowed password file
-.It Pa /etc/group
-group file
-.It Pa /etc/inet/hosts
-IPv4 and IPv6 host name database
-.It Pa /etc/services
-Internet services and aliases
-.It Pa /etc/project
-project file
-.It Pa /etc/protocols
-protocol name database
-.It Pa /etc/ethers
-Ethernet address to hostname database or domain
-.It Pa /etc/networks
-network name database
-.It Pa /etc/netmasks
-network mask database
-.It Pa /etc/netgroup
-network group database
-.It Pa /etc/user_attr
-extended user attributes database
-.It Pa /etc/security/auth_attr
-authorization description database
-.It Pa /etc/security/exec_attr
-execution profiles database
-.It Pa /etc/security/prof_attr
-profile description database
-.El
-.Sh EXIT STATUS
-The following exit values are returned:
-.Pp
-.Bl -tag -width Ds -compact
-.It Sy 0
-Successful completion.
-.It Sy 1
-Command syntax was incorrect, an invalid option was used, or an internal error
-occurred.
-.It Sy 2
-At least one of the specified entry names was not found in the database.
-.It Sy 3
-There is no support for enumeration on this database.
-.El
-.Sh SEE ALSO
-.Xr getgrnam 3C ,
-.Xr getnetgrent 3C ,
-.Xr getpwnam 3C ,
-.Xr getspnam 3C ,
-.Xr gethostbyaddr 3NSL ,
-.Xr gethostbyname 3NSL ,
-.Xr gethostent 3NSL ,
-.Xr getprojbyname 3PROJECT ,
-.Xr getauthattr 3SECDB ,
-.Xr getexecattr 3SECDB ,
-.Xr getprofattr 3SECDB ,
-.Xr getuserattr 3SECDB ,
-.Xr ethers 3SOCKET ,
-.Xr getipnodebyaddr 3SOCKET ,
-.Xr getipnodebyname 3SOCKET ,
-.Xr getnetbyname 3SOCKET ,
-.Xr getprotobyname 3SOCKET ,
-.Xr getservbyname 3SOCKET ,
-.Xr auth_attr 4 ,
-.Xr ethers 4 ,
-.Xr exec_attr 4 ,
-.Xr group 4 ,
-.Xr hosts 4 ,
-.Xr netmasks 4 ,
-.Xr networks 4 ,
-.Xr nsswitch.conf 4 ,
-.Xr passwd 4 ,
-.Xr prof_attr 4 ,
-.Xr project 4 ,
-.Xr protocols 4 ,
-.Xr services 4 ,
-.Xr shadow 4 ,
-.Xr user_attr 4 ,
-.Xr attributes 5
diff --git a/usr/src/man/man1m/getty.1m b/usr/src/man/man1m/getty.1m
deleted file mode 100644
index b304d67334..0000000000
--- a/usr/src/man/man1m/getty.1m
+++ /dev/null
@@ -1,132 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 1997 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH GETTY 1M "Sep 14, 1992"
-.SH NAME
-getty \- set terminal type, modes, speed, and line discipline
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/saf/ttymon\fR [\fB-h\fR] [\fB-t\fR \fItimeout\fR] \fIline\fR
- [\fIspeed\fR [\fItype\fR [\fIlinedisc\fR]]]
-.fi
-
-.LP
-.nf
-\fB/usr/lib/saf/ttymon\fR \fB-c\fR \fIfile\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBgetty\fR sets terminal type, modes, speed, and line discipline. \fBgetty\fR
-is a symbolic link to \fB/usr/lib/saf/ttymon\fR. It is included for
-compatibility with previous releases for the few applications that still call
-\fBgetty\fR directly.
-.sp
-.LP
-\fBgetty\fR can only be executed by the super-user, (a process with the user
-\fBID\fR \fBroot\fR). Initially \fBgetty\fR prints the login prompt, waits for
-the user's login name, and then invokes the \fBlogin\fR command. \fBgetty\fR
-attempts to adapt the system to the terminal speed by using the options and
-arguments specified on the command line.
-.sp
-.LP
-Without optional arguments, \fBgetty\fR specifies the following: The
-\fIspeed\fR of the interface is set to 300 baud, either parity is allowed,
-\fBNEWLINE\fR characters are converted to carriage return-line feed, and tab
-expansion is performed on the standard output. \fBgetty\fR types the login
-prompt before reading the user's name a character at a time. If a null
-character (or framing error) is received, it is assumed to be the result of
-the user pressing the \fBBREAK\fR key. This will cause \fBgetty\fR to attempt
-the next \fIspeed\fR in the series. The series that \fBgetty\fR tries is
-determined by what it finds in \fB/etc/ttydefs \fR.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-h\fR\fR
-.ad
-.RS 14n
-If the \fB-h\fR flag is not set, a hangup will be forced by setting the speed
-to zero before setting the speed to the default or a specified speed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-t\fR\fI timeout\fR\fR
-.ad
-.RS 14n
-Specifies that \fBgetty\fR should exit if the open on the line succeeds and no
-one types anything in \fItimeout\fR seconds.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-c\fR\fI file\fR\fR
-.ad
-.RS 14n
-The \fB-c\fR option is no longer supported. Instead use
-\fB/usr/sbin/sttydefs\fR \fB-l\fR to list the contents of the
-\fB/etc/ttydefs\fR file and perform a validity check on the file.
-.RE
-
-.SH OPERANDS
-.sp
-.LP
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fB\fIline\fR\fR
-.ad
-.RS 21n
-The name of a \fBTTY\fR line in \fB/dev\fR to which \fBgetty\fR is to attach
-itself. \fBgetty\fR uses this string as the name of a file in the \fB/dev\fR
-directory to open for reading and writing.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIspeed\fR\fR
-.ad
-.RS 21n
-The \fIspeed\fR argument is a label to a speed and \fBTTY\fR definition in
-the file \fB/etc/ttydefs\fR. This definition tells \fBgetty\fR at what speed to
-run initially, what the initial \fBTTY\fR settings are, and what speed to try
-next, (should the user press the \fBBREAK\fR key to indicate that the speed is
-inappropriate). The default \fIspeed\fR is 300 baud.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fItype\fR and \fIlinedisc\fR\fR
-.ad
-.RS 21n
-These options are obsolete and will be ignored.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/ttydefs\fR\fR
-.ad
-.RS 16n
-
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBct\fR(1C), \fBlogin\fR(1), \fBsttydefs\fR(1M), \fBttymon\fR(1M),
-\fBioctl\fR(2), \fBattributes\fR(5), \fBtty\fR(7D)
diff --git a/usr/src/man/man1m/getvol.1m b/usr/src/man/man1m/getvol.1m
deleted file mode 100644
index 6ff725922d..0000000000
--- a/usr/src/man/man1m/getvol.1m
+++ /dev/null
@@ -1,167 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 1997 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH GETVOL 1M "Jul 5, 1990"
-.SH NAME
-getvol \- verifies device accessibility
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/bin/getvol\fR \fB-n\fR [\fB-l\fR \fIlabel\fR] \fIdevice\fR
-.fi
-
-.LP
-.nf
-\fB/usr/bin/getvol\fR [\fB-f\fR | \fB-F\fR] [\fB-ow\fR] [\fB-l\fR \fIlabel\fR | \fB-x\fR \fIlabel\fR] \fIdevice\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBgetvol\fR verifies that the specified device is accessible and that a volume
-of the appropriate medium has been inserted. The command is interactive and
-displays instructional prompts, describes errors, and shows required label
-information.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-n\fR\fR
-.ad
-.RS 12n
-Runs the command in non-interactive mode. The volume is assumed to be inserted
-upon command invocation.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR\fI label\fR\fR
-.ad
-.RS 12n
-Specifies that the label \fIlabel\fR must exist on the inserted volume (can be
-overridden by the \fB-o\fR option).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR\fR
-.ad
-.RS 12n
-Formats the volume after insertion, using the format command defined for this
-device in the device table.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-F\fR\fR
-.ad
-.RS 12n
-Formats the volume after insertion and places a file system on the device. Also
-uses the format command defined for this device in the device table.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-o\fR\fR
-.ad
-.RS 12n
-Allows the administrator to override a label check.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-w\fR\fR
-.ad
-.RS 12n
-Allows administrator to write a new label on the device. User is prompted to
-supply the label text. This option is ineffective if the \fB-n\fR option is
-enabled.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-x\fR\fI label\fR\fR
-.ad
-.RS 12n
-Specifies that the label \fIlabel\fR must exist on the device. This option
-should be used in place of the \fB-l\fR option when the label can only be
-verified by visual means. Use of the option causes a message to be displayed
-asking the administrator to visually verify that the label is indeed
-\fIlabel\fR.
-.RE
-
-.SH OPERANDS
-.sp
-.LP
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fB\fIdevice\fR\fR
-.ad
-.RS 10n
-Specifies the device to be verified for accessibility.
-.RE
-
-.SH EXIT STATUS
-.sp
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 5n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB1\fR\fR
-.ad
-.RS 5n
-Command syntax was incorrect, invalid option was used, or an internal error
-occurred.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB3\fR\fR
-.ad
-.RS 5n
-Device table could not be opened for reading.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/device.tab\fR\fR
-.ad
-.RS 19n
-
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBattributes\fR(5)
-.SH NOTES
-.sp
-.LP
-This command uses the device table to determine the characteristics of the
-device when performing the volume label checking.
diff --git a/usr/src/man/man1m/groupadd.1m b/usr/src/man/man1m/groupadd.1m
deleted file mode 100644
index 6029feb6c5..0000000000
--- a/usr/src/man/man1m/groupadd.1m
+++ /dev/null
@@ -1,151 +0,0 @@
-'\" te
-.\" Copyright (c) 2018 Peter Tribble.
-.\" Copyright 1989 AT&T Copyright (c) 1998 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH GROUPADD 1M "Jan 7, 2018"
-.SH NAME
-groupadd \- add (create) a new group definition on the system
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/groupadd\fR [\fB-g\fR \fIgid\fR [\fB-o\fR]] \fIgroup\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBgroupadd\fR command creates a new group definition on the system by
-adding the appropriate entry to the \fB/etc/group\fR file.
-.SH OPTIONS
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-g\fR \fIgid\fR\fR
-.ad
-.RS 10n
-Assigns the group id \fIgid\fR for the new group. This group id must be a
-non-negative decimal integer below \fBMAXUID\fR as defined in
-\fB<sys/param.h>\fR. The group \fBID\fR defaults to the next
-available (unique) number above the highest number currently assigned. For
-example, if groups \fB100\fR, \fB105\fR, and \fB200\fR are assigned as
-groups, the next default group number will be \fB201\fR. (Group \fBIDs\fR from
-\fB0\fR\(mi\fB99\fR are reserved for future applications.)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-o\fR\fR
-.ad
-.RS 10n
-Allows the \fIgid\fR to be duplicated (non-unique).
-.RE
-
-.SH OPERANDS
-.LP
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fB\fIgroup\fR\fR
-.ad
-.RS 9n
-A string consisting of characters from the set of lower case alphabetic
-characters and numeric characters. A warning message will be written if the
-string exceeds \fBMAXGLEN,\fR which is usually set at eight characters. The
-\fIgroup\fR field must contain at least one character; it accepts lower case or
-numeric characters or a combination of both, and must not contain a colon
-(\fB:\fR) or \fBNEWLINE.\fR
-.RE
-
-.SH EXIT STATUS
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 6n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB2\fR\fR
-.ad
-.RS 6n
-Invalid command syntax. A usage message for the \fBgroupadd\fR command is
-displayed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB3\fR\fR
-.ad
-.RS 6n
-An invalid argument was provided to an option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB4\fR\fR
-.ad
-.RS 6n
-The \fIgid\fR is not unique (when \fB-o\fR option is not used).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB9\fR\fR
-.ad
-.RS 6n
-The \fIgroup\fR is not unique.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB10\fR\fR
-.ad
-.RS 6n
-The \fB/etc/group\fR file cannot be updated.
-.RE
-
-.SH FILES
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fB/etc/group\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fB/usr/include/userdefs.h\fR
-.RE
-.SH SEE ALSO
-.LP
-\fBgroupdel\fR(1M), \fBgroupmod\fR(1M), \fBgrpck\fR(1M),
-\fBlogins\fR(1M), \fBpwck\fR(1M), \fBuseradd\fR(1M), \fBuserdel\fR(1M),
-\fBusermod\fR(1M), \fBgroup\fR(4), \fBattributes\fR(5)
-.SH NOTES
-.LP
-\fBgroupadd\fR only adds a group definition to the local system. If a network
-name service is being used to supplement the
-local \fB/etc/group\fR file with additional entries, \fBgroupadd\fR cannot
-change information supplied by the network name service. However,
-\fBgroupadd\fR will verify the uniqueness of group name and group \fBID\fR
-against the external name service.
-.sp
-.LP
-If the number of characters in a \fBgroup\fR entry exceeds 2047, group
-maintenance commands, such as \fBgroupdel\fR(1M) and \fBgroupmod\fR(1M), fail.
diff --git a/usr/src/man/man1m/groupdel.1m b/usr/src/man/man1m/groupdel.1m
deleted file mode 100644
index 3f31f03e75..0000000000
--- a/usr/src/man/man1m/groupdel.1m
+++ /dev/null
@@ -1,91 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 1997, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH GROUPDEL 1M "Jan 7, 2018"
-.SH NAME
-groupdel \- delete a group definition from the system
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/groupdel\fR \fIgroup\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBgroupdel\fR utility deletes a group definition from the system. It
-deletes the appropriate entry from the \fB/etc/group\fR file.
-.SH OPERANDS
-.ne 2
-.na
-\fB\fIgroup\fR\fR
-.ad
-.RS 9n
-An existing group name to be deleted.
-.RE
-
-.SH EXIT STATUS
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 6n
-Success.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB2\fR\fR
-.ad
-.RS 6n
-Invalid command syntax. A usage message for the \fBgroupdel\fR command is
-displayed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB6\fR\fR
-.ad
-.RS 6n
-\fIgroup\fR does not exist.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB10\fR\fR
-.ad
-.RS 6n
-Cannot update the \fB/etc/group\fR file.
-.RE
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/etc/group\fR\fR
-.ad
-.RS 14n
-system file containing group definitions
-.RE
-
-.SH SEE ALSO
-.LP
-\fBgroupadd\fR(1M), \fBgroupmod\fR(1M), \fBlogins\fR(1M),
-\fBuseradd\fR(1M), \fBuserdel\fR(1M), \fBusermod\fR(1M), \fBattributes\fR(5)
-.SH NOTES
-.LP
-The \fBgroupdel\fR utility only deletes a group definition that is in the local
-\fB/etc/group\fR file. If a network nameservice
-is being used to supplement the local \fB/etc/group\fR file with additional
-entries, \fBgroupdel\fR cannot change information supplied by the network
-nameservice.
-.sp
-.LP
-\fBgroupdel\fR fails if a group entry (a single line in \fB/etc/group\fR)
-exceeds 2047 characters.
diff --git a/usr/src/man/man1m/groupmod.1m b/usr/src/man/man1m/groupmod.1m
deleted file mode 100644
index 670777c7df..0000000000
--- a/usr/src/man/man1m/groupmod.1m
+++ /dev/null
@@ -1,164 +0,0 @@
-'\" te
-.\" Copyright (c) 2018 Peter Tribble.
-.\" Copyright 1989 AT&T Copyright (c) 1997, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH GROUPMOD 1M "Jan 7, 2018"
-.SH NAME
-groupmod \- modify a group definition on the system
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/groupmod\fR [\fB-g\fR \fIgid\fR [\fB-o\fR]] [\fB-n\fR \fIname\fR] \fIgroup\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBgroupmod\fR command modifies the definition of the specified group by
-modifying the appropriate entry in the \fB/etc/group\fR file.
-.SH OPTIONS
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-g\fR \fIgid\fR\fR
-.ad
-.RS 11n
-Specify the new group \fBID\fR for the group. This group \fBID\fR must be a
-non-negative decimal integer less than \fBMAXUID\fR, as defined in
-\fB<sys/param.h>\fR\&. The group \fBID\fR defaults to the next available
-(unique) number above 99. (Group IDs from 0-99 are reserved for future
-applications.)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR \fIname\fR\fR
-.ad
-.RS 11n
-Specify the new name for the group. The \fIname\fR argument is a string of no
-more than eight bytes consisting of characters from the set of lower case
-alphabetic characters and numeric characters. A warning message will be
-written if these restrictions are not met. A future release may refuse
-to accept group fields that do not meet these requirements. The \fIname\fR
-argument must contain at least one character and must not include a colon
-(\fB:\fR) or \fBNEWLINE\fR (\fB\en\fR).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-o\fR\fR
-.ad
-.RS 11n
-Allow the \fIgid\fR to be duplicated (non-unique).
-.RE
-
-.SH OPERANDS
-.LP
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fB\fIgroup\fR\fR
-.ad
-.RS 9n
-An existing group name to be modified.
-.RE
-
-.SH EXIT STATUS
-.LP
-The \fBgroupmod\fR utility exits with one of the following values:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 6n
-Success.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB2\fR\fR
-.ad
-.RS 6n
-Invalid command syntax. A usage message for the \fBgroupmod\fR command is
-displayed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB3\fR\fR
-.ad
-.RS 6n
-An invalid argument was provided to an option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB4\fR\fR
-.ad
-.RS 6n
-\fIgid\fR is not unique (when the \fB-o\fR option is not used).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB6\fR\fR
-.ad
-.RS 6n
-\fIgroup\fR does not exist.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB9\fR\fR
-.ad
-.RS 6n
-\fIname\fR already exists as a group name.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB10\fR\fR
-.ad
-.RS 6n
-Cannot update the \fB/etc/group\fR file.
-.RE
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/etc/group\fR\fR
-.ad
-.RS 14n
-group file
-.RE
-
-.SH SEE ALSO
-.LP
-\fBgroupadd\fR(1M), \fBgroupdel\fR(1M), \fBlogins\fR(1M),
-\fBuseradd\fR(1M), \fBuserdel\fR(1M), \fBusermod\fR(1M), \fBgroup\fR(4),
-\fBattributes\fR(5)
-.SH NOTES
-.LP
-The \fBgroupmod\fR utility only modifies group definitions in the
-\fB/etc/group\fR file. If a network name service
-is being used to supplement the local \fB/etc/group\fR file with
-additional entries, \fBgroupmod\fR cannot change information supplied by the
-network name service. The \fBgroupmod\fR utility will, however, verify the
-uniqueness of group name and group \fBID\fR against the external name service.
-.sp
-.LP
-\fBgroupmod\fR fails if a group entry (a single line in \fB/etc/group\fR)
-exceeds 2047 characters.
diff --git a/usr/src/man/man1m/growfs.1m b/usr/src/man/man1m/growfs.1m
deleted file mode 100644
index 4421fa12ed..0000000000
--- a/usr/src/man/man1m/growfs.1m
+++ /dev/null
@@ -1,118 +0,0 @@
-'\" te
-.\" Copyright (c) 2009, Sun Microsystems, Inc.
-.\" All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH GROWFS 1M "Apr 20, 2009"
-.SH NAME
-growfs \- non-destructively expand a UFS file system
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/growfs\fR [\fB-M\fR \fImount-point\fR] [\fInewfs-options\fR]
- [\fIraw-device\fR]
-.fi
-
-.SH DESCRIPTION
-.LP
-\fBgrowfs\fR non-destructively expands a mounted or unmounted UNIX file system
-(UFS) to the size of the file system's slice(s).
-.sp
-.LP
-Typically, disk space is expanded by first adding a slice to a metadevice, then
-running the \fBgrowfs\fR command. When adding space to a mirror, you expand
-each submirror before expanding the file system.
-.sp
-.LP
-\fBgrowfs\fR will ``write-lock'' (see \fBlockfs\fR(1M)) a mounted file system
-when expanding. The length of time the file system is write-locked can be
-shortened by expanding the file system in stages. For instance, to expand a 1
-Gbyte file system to 2 Gbytes, the file system can be grown in 16 Mbyte stages
-using the \fB-s\fR option to specify the total size of the new file system at
-each stage. The argument for \fB-s\fR is the number of sectors, and must be a
-multiple of the cylinder size. Note: The file system cannot be grown if a
-cylinder size of less than 2 is specified. Refer to the \fBnewfs\fR(1M) man
-page for information on the options available when growing a file system.
-.sp
-.LP
-\fBgrowfs\fR displays the same information as \fBmkfs\fR during the expansion
-of the file system.
-.sp
-.LP
-If \fBgrowfs\fR is aborted, recover any lost free space by unmounting the file
-system and running the \fBfsck\fR command, or run the \fBgrowfs\fR command
-again.
-.sp
-.LP
-\fBNote:\fR If \fBgrowfs\fR is aborted and the file system is used before
-\fBfsck\fR is run on it, UFS metadata might be left in an incomplete state,
-with the result that the file system would be corrupted. In such a
-circumstance, you would have to restore the file system from backups.
-.SH OPTIONS
-.LP
-Root privileges are required for all of the following options.
-.sp
-.ne 2
-.na
-\fB\fB-M\fR \fImount-point\fR\fR
-.ad
-.RS 18n
-The file system to be expanded is mounted on \fImount-point\fR. File system
-locking (\fBlockfs\fR) will be used.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fInewfs-options\fR\fR
-.ad
-.RS 18n
-The options are documented in the \fBnewfs\fR man page.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIraw-device\fR\fR
-.ad
-.RS 18n
-Specifies the name of a raw metadevice or raw special device, residing in
-\fB/dev/md/rdsk\fR, or \fB/dev/rdsk\fR, respectively, including the disk slice,
-where you want the file system to be grown.
-.RE
-
-.SH EXIT STATUS
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 6n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB>0\fR\fR
-.ad
-.RS 6n
-An error occurred.
-.RE
-
-.SH SEE ALSO
-.LP
-\fBfsck\fR(1M), \fBlockfs\fR(1M), \fBmkfs\fR(1M), \fBnewfs\fR(1M),
-\fBattributes\fR(5)
-.SH LIMITATIONS
-.LP
-Only UFS file systems (either mounted or unmounted) can be expanded using the
-\fBgrowfs\fR command. Once a file system is expanded, it cannot be decreased in
-size. The following conditions prevent you from expanding file systems: When
-\fBacct\fR is activated and the accounting file is on the target device. When
-C2 security is activated and the logging file is on the target file system.
-When there is a local \fBswap\fR file in the target file system. When the file
-system is root (\fB/\fR), \fB/usr\fR, or \fBswap\fR.
diff --git a/usr/src/man/man1m/gsscred.1m b/usr/src/man/man1m/gsscred.1m
deleted file mode 100644
index c4d8e07035..0000000000
--- a/usr/src/man/man1m/gsscred.1m
+++ /dev/null
@@ -1,246 +0,0 @@
-'\" te
-.\" Copyright (c) 1998, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH GSSCRED 1M "Feb 11, 2004"
-.SH NAME
-gsscred \- add, remove, and list gsscred table entries
-.SH SYNOPSIS
-.LP
-.nf
-\fBgsscred\fR [\fB-n\fR \fIuser\fR [\fB-o\fR \fIoid\fR] [\fB-u\fR \fIuid\fR]] [\fB-c\fR \fIcomment\fR] \fB-m\fR \fImech\fR \fB-a\fR
-.fi
-
-.LP
-.nf
-\fBgsscred\fR [\fB-n\fR \fIuser\fR [\fB-o\fR \fIoid\fR]] [\fB-u\fR \fIuid\fR] [\fB-m\fR \fImech\fR] \fB-r\fR
-.fi
-
-.LP
-.nf
-\fBgsscred\fR [\fB-n\fR \fIuser\fR [\fB-o\fR \fIoid\fR]] [\fB-u\fR \fIuid\fR] [\fB-m\fR \fImech\fR] \fB-l\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBgsscred\fR utility is used to create and maintain a mapping between a
-security principal name and a local UNIX \fIuid\fR. The format of the user name
-is assumed to be \fBGSS_C_NT_USER_NAME\fR. You can use the \fB-o\fR option to
-specify the object identifier of the \fIname\fR type. The \fBOID\fR must be
-specified in dot-separated notation, for example: \fB1.2.3.45464.3.1\fR
-.sp
-.LP
-The \fBgsscred\fR table is used on server machines to lookup the \fIuid\fR of
-incoming clients connected using \fBRPCSEC_GSS\fR.
-.sp
-.LP
-When adding users, if no \fIuser\fR name is specified, an entry is created in
-the table for each user from the \fBpasswd\fR table. If no \fIcomment\fR is
-specified, the \fBgsscred\fR utility inserts a comment that specifies the user
-name as an \fBASCII\fR string and the \fBGSS-API\fRsecurity mechanism that
-applies to it. The security mechanism will be in string representation as
-defined in the \fB/etc/gss/mech\fR file.
-.sp
-.LP
-The parameters are interpreted the same way by the \fBgsscred\fR utility to
-delete users as they are to create users. At least one of the following options
-must be specified: \fB-n\fR, \fB-u\fR, or \fB-m\fR. If no security mechanism is
-specified, then all entries will be deleted for the user identified by either
-the \fIuid\fR or \fIuser\fR name. If only the security mechanism is specified,
-then all \fIuser\fR entries for that security mechanism will be deleted.
-.sp
-.LP
-Again, the parameters are interpreted the same way by the \fBgsscred\fR utility
-to search for users as they are to create users. If no options are specified,
-then the entire table is returned. If the \fIuser\fR name or \fIuid\fR is
-specified, then all entries for that \fIuser\fR are returned. If a security
-mechanism is specified, then all \fIuser\fR entries for that security mechanism
-are returned.
-.SH OPTIONS
-.sp
-.ne 2
-.na
-\fB\fB-a\fR\fR
-.ad
-.RS 14n
-Add a table entry.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-c\fR \fIcomment\fR\fR
-.ad
-.RS 14n
-Insert comment about this table entry.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR\fR
-.ad
-.RS 14n
-Search table for entry.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-m\fR \fImech\fR\fR
-.ad
-.RS 14n
-Specify the mechanism for which this name is to be translated.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR \fIuser\fR\fR
-.ad
-.RS 14n
-Specify the optional principal name.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-o\fR \fIoid\fR\fR
-.ad
-.RS 14n
-Specify the OID indicating the name type of the user.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-r\fR\fR
-.ad
-.RS 14n
-Remove the entry from the table.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-u\fR \fIuid\fR\fR
-.ad
-.RS 14n
-Specify the \fIuid\fR for the \fIuser\fR if the \fIuser\fR is not local.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRCreating a \fBgsscred\fR Table for the Kerberos v5 Security
-Mechanism
-.sp
-.LP
-The following shows how to create a \fBgsscred\fR table for the kerberos v5
-security mechanism. \fBgsscred\fR obtains \fIuser\fR names and \fIuid\fR's from
-the \fBpasswd\fR table to populate the table.
-
-.sp
-.in +2
-.nf
-example% \fBgsscred -m kerberos_v5 -a\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRAdding an Entry for \fBroot/host1\fR for the Kerberos v5
-Security Mechanism
-.sp
-.LP
-The following shows how to add an entry for \fBroot/host1\fR with a specified
-\fIuid\fR of \fB0\fR for the kerberos v5 security mechanism.
-
-.sp
-.in +2
-.nf
-example% \fBgsscred -m kerberos_v5 -n root/host1 -u 0 -a\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRListing All User Mappings for the Kerberos v5 Security
-Mechanism
-.sp
-.LP
-The following lists all user mappings for the kerberos v5 security mechanism.
-
-.sp
-.in +2
-.nf
-example% \fBgsscred -m kerberos_v5 -l\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 4 \fRListing All Mappings for All Security Mechanism for a Specified
-User
-.sp
-.LP
-The following lists all mappings for all security mechanisms for the user
-\fBbsimpson\fR.
-
-.sp
-.in +2
-.nf
-example% \fBgsscred -n bsimpson -l\fR
-.fi
-.in -2
-.sp
-
-.SH EXIT STATUS
-.sp
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 6n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB>\fB0\fR\fR
-.ad
-.RS 6n
-An error occurred.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBgssd\fR(1m), \fBgsscred.conf\fR(4), \fBattributes\fR(5)
-.SH NOTES
-.sp
-.LP
-Some GSS mechanisms, such as \fBkerberos_v5\fR, provide their own
-authenticated-name-to-local-name (uid) mapping and thus do not usually have to
-be mapped using \fBgsscred\fR. See \fBgsscred.conf\fR(4) for more information.
diff --git a/usr/src/man/man1m/gssd.1m b/usr/src/man/man1m/gssd.1m
deleted file mode 100644
index 1be025e661..0000000000
--- a/usr/src/man/man1m/gssd.1m
+++ /dev/null
@@ -1,110 +0,0 @@
-'\" te
-.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH GSSD 1M "Apr 25, 2007"
-.SH NAME
-gssd \- generates and validates GSS-API tokens for kernel RPC
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/gss/gssd\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fB\fR\fBgssd\fR is the user mode daemon that operates between the kernel rpc
-and the Generic Security Service Application Program Interface (\fBGSS-API\fR)
-to generate and validate \fBGSS-API\fR security tokens. In addition, \fBgssd\fR
-maps the \fBGSS-API\fR principal names to the local user and group ids. By
-default, all groups that the requested user belongs to will be included in the
-grouplist credential. \fBgssd\fR is invoked by the Internet daemon
-\fBinetd\fR(1m) the first time that the kernel \fBRPC\fR requests \fBGSS-API\fR
-services.
-.SH EXIT STATUS
-.sp
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 6n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB>\fB0\fR\fR
-.ad
-.RS 6n
-An error occurred.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBkill\fR(1), \fBpkill\fR(1), \fBsvcs\fR(1), \fBinetadm\fR(1M),
-\fBinetd\fR(1M), \fBgsscred\fR(1M), \fBsvcadm\fR(1M), \fBgsscred.conf\fR(4),
-\fBresolv.conf\fR(4), \fBattributes\fR(5), \fBsmf\fR(5)
-.sp
-.LP
-\fIRFC 2078\fR
-.SH NOTES
-.sp
-.LP
-The following signal has the specified effect when sent to the server process
-using the \fBkill\fR(1) command:
-.sp
-.ne 2
-.na
-\fB\fBSIGHUP\fR\fR
-.ad
-.RS 10n
-\fBgssd\fR rereads the \fBgsscred.conf\fR(4) options.
-.RE
-
-.sp
-.LP
-When one of the mechanisms being used is Kerberos, then the \fBgssd\fR process
-must be restarted after adding or changing the \fBresolv.conf\fR(4) file.
-.sp
-.LP
-The \fBgssd\fR service is managed by the service management facility,
-\fBsmf\fR(5), under the service identifier:
-.sp
-.in +2
-.nf
-svc:/network/rpc/gss:default
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Administrative actions on this service, such as enabling, disabling, or
-requesting restart, can be performed using \fBsvcadm\fR(1M). Responsibility for
-initiating and restarting this service is delegated to \fBinetd\fR(1M). Use
-\fBinetadm\fR(1M) to make configuration changes and to view configuration
-information for this service. The service's status can be queried using the
-\fBsvcs\fR(1) command.
diff --git a/usr/src/man/man1m/hal-device.1m b/usr/src/man/man1m/hal-device.1m
deleted file mode 100644
index e88e202fa9..0000000000
--- a/usr/src/man/man1m/hal-device.1m
+++ /dev/null
@@ -1,75 +0,0 @@
-'\" te
-.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH HAL-DEVICE 1M "Aug 25, 2006"
-.SH NAME
-hal-device \- manage HAL devices
-.SH SYNOPSIS
-.LP
-.nf
-\fBhal-device\fR [\fB-h\fR] [\fB--a\fR \fIudi\fR | \fB--r\fR \fIudi\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The Hardware Abstraction Layer (HAL) provides a view of the various hardware
-attached to a system. The \fBhal-device\fR command enables you to manage
-devices that conform to the HAL standard. Specifically, \fBhal-device\fR lets
-you add or remove a device to or from the HAL global device list. Device
-properties are read from stdin in \fBlshal(1M)\fR syntax.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-a\fR, \fB--add\fR \fIudi\fR\fR
-.ad
-.RS 20n
-Add device specified by Universal Device Identifier \fIudi\fR to HAL's global
-device list.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-h\fR\fR
-.ad
-.RS 20n
-Display usage information.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-r\fR, \fB--remove\fR \fIudi\fR\fR
-.ad
-.RS 20n
-Remove device specified by Universal Device Identifier \fIudi\fR from HAL's
-global device list.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Volatile
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBhald\fR(1M), \fBattributes\fR(5), \fBhal\fR(5)
diff --git a/usr/src/man/man1m/hal-fdi-validate.1m b/usr/src/man/man1m/hal-fdi-validate.1m
deleted file mode 100644
index fbacc14419..0000000000
--- a/usr/src/man/man1m/hal-fdi-validate.1m
+++ /dev/null
@@ -1,66 +0,0 @@
-'\" te
-.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH HAL-FDI-VALIDATE 1M "Aug 28, 2006"
-.SH NAME
-hal-fdi-validate \- validate HAL device information files
-.SH SYNOPSIS
-.LP
-.nf
-\fBhal-fdi-validate\fR [\fB-f\fR \fIdtd\fR] \fIfile\fR [\fIfile\fR]...
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBhal-fdi-validate\fR command validates one or more device information
-files. See \fBfdi\fR(4). The standard DTD file will be used unless the \fB-f\fR
-option is used to specify a different file.
-.SH OPTIONS
-.sp
-.LP
-The following option is supported:
-.sp
-.ne 2
-.na
-\fB\fB-f\fR \fIdtd\fR\fR
-.ad
-.RS 10n
-Specify path to a DTD file.
-.RE
-
-.SH OPERANDS
-.sp
-.LP
-The \fBhal-fdi-validate\fR command accepts the following operand(s):
-.sp
-.ne 2
-.na
-\fB\fIfile\fR [\fIfile\fR...]\fR
-.ad
-.RS 18n
-One or more DTD files to be validated.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Volatile
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBhald\fR(1M), \fBfdi\fR(4), \fBattributes\fR(5), \fBhal\fR(5)
diff --git a/usr/src/man/man1m/hal-find.1m b/usr/src/man/man1m/hal-find.1m
deleted file mode 100644
index fe37b83703..0000000000
--- a/usr/src/man/man1m/hal-find.1m
+++ /dev/null
@@ -1,110 +0,0 @@
-'\" te
-.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH HAL-FIND 1M "Aug 22, 2006"
-.SH NAME
-hal-find, hal-find-by-capability, hal-find-by-property \- search HAL global
-device list
-.SH SYNOPSIS
-.LP
-.nf
-\fBhal-find-by-capability\fR \fB--capability\fR \fIcapability\fR [\fB--help\fR]
- [\fB--verbose\fR] [\fB--version\fR]
-.fi
-
-.LP
-.nf
-\fBhal-find-by-property\fR \fB--key\fR \fIkey\fR \fB--string\fR \fIvalue\fR [\fB--help\fR]
- [\fB--verbose\fR] [\fB--version\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBhal-find\fR commands, \fBhal-find-by-capability\fR and
-\fBhal-find-by-property\fR, search the Hardware Abstraction Layer (HAL) device
-list by specified criteria and displays results on the standard output.
-\fBhal-find-by-capability\fR searches by capability, such as \fBvolume\fR or
-\fBblock\fR. \fBhal-find-by-property\fR searches by property, such as
-\fBblock.is_volume\fR or \fBvolume.disc.has_audio\fR.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB--capability\fR \fIcapability\fR\fR
-.ad
-.RS 27n
-HAL device capability to search for.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB--help\fR\fR
-.ad
-.RS 27n
-Display list of options.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB--key\fR \fIkey\fR\fR
-.ad
-.RS 27n
-The \fIkey\fR to the property that is the basis of the search.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB--string\fR \fIvalue\fR\fR
-.ad
-.RS 27n
-The string \fIvalue\fR associated with the property that is the basis of the
-search.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB--verbose\fR\fR
-.ad
-.RS 27n
-Verbose mode.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB--version\fR\fR
-.ad
-.RS 27n
-Display version and exit.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Volatile
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBhald\fR(1M), \fBattributes\fR(5), \fBhal\fR(5)
diff --git a/usr/src/man/man1m/hal-get-property.1m b/usr/src/man/man1m/hal-get-property.1m
deleted file mode 100644
index f3670ab8dd..0000000000
--- a/usr/src/man/man1m/hal-get-property.1m
+++ /dev/null
@@ -1,200 +0,0 @@
-'\" te
-.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH HAL-GET-PROPERTY 1M "Sep 7, 2018"
-.SH NAME
-hal-get-property, hal-set-property \- get and set HAL device properties
-.SH SYNOPSIS
-.LP
-.nf
-\fBhal-get-property\fR \fB--udi\fR \fIudi\fR \fB--key\fR \fIkey\fR [\fB--help\fR] [\fB--verbose\fR]
- [\fB--version\fR]
-.fi
-
-.LP
-.nf
-\fBhal-set-property\fR \fB--udi\fR \fIudi\fR \fB--key\fR \fIkey\fR {\fB--int\fR \fIvalue\fR | \fB--uint64\fR \fIvalue\fR
- | \fB--string\fR \fIvalue\fR | \fB--bool\fR \fIvalue\fR | \fB--strlist-pre\fR \fIvalue\fR
- | \fB--strlist-post\fR \fIvalue\fR | \fB--strlist-rem\fR \fIvalue\fR | \fB--double\fR \fIvalue\fR
- | \fB--remove\fR \fIvalue\fR} [\fB--direct\fR] [\fB--help\fR] [\fB--version\fR]
-.fi
-
-.SH DESCRIPTION
-.LP
-The Hardware Abstraction Layer (HAL) provides a view of the various hardware
-attached to a system. This view is updated dynamically as hardware
-configuration changes by means of hotplug or other mechanisms. HAL represents a
-piece of hardware as a device object. A device object is identified by a unique
-identifier and carries a set of key/value pairs, referred to as device
-properties. Some properties are derived from the actual hardware, some are
-merged from device information files (\fB\&.fdi\fR files), and some are related
-to the actual device configuration.
-.sp
-.LP
-The \fBhal-get-property\fR and \fBhal-set-property\fR commands allow you to get
-and set properties of hardware that conforms to HAL specifications.
-.SH OPTIONS
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB--udi\fR \fIudi\fR\fR
-.ad
-.sp .6
-.RS 4n
-Unique device ID.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB--key\fR \fIkey\fR\fR
-.ad
-.sp .6
-.RS 4n
-Key of the property to set.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB--int\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set value to an integer. Accepts decimal or hexadecimal value prefixed with
-\fB0x\fR or \fBx\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB--uint64\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set value to an integer. Accepts decimal or hexadecimal value prefixed with
-\fB0x\fR or \fBx\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB--string\fR \fIvalue\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set value to a string.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB--double\fR \fIvalue\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set value to a floating point number.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB--boolean\fR \fIvalue\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set value to a boolean, that is, true or false
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB--strlist-pre\fR \fIvalue\fR\fR
-.ad
-.sp .6
-.RS 4n
-Prepend a string to a list.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB--strlist-post\fR \fIvalue\fR\fR
-.ad
-.sp .6
-.RS 4n
-Append a string to a list.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB--strlist-rem\fR \fIvalue\fR\fR
-.ad
-.sp .6
-.RS 4n
-Remove a string from a list.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB--remove\fR \fIvalue\fR\fR
-.ad
-.sp .6
-.RS 4n
-Indicates that the property should be removed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB--direct\fR\fR
-.ad
-.sp .6
-.RS 4n
-Use direct HAL connection
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB--version\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display version and exit.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB--help\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display list of options and exit
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Volatile
-.TE
-
-.SH SEE ALSO
-.LP
-\fBhald\fR(1M), \fBattributes\fR(5), \fBhal\fR(5)
diff --git a/usr/src/man/man1m/hald.1m b/usr/src/man/man1m/hald.1m
deleted file mode 100644
index da1d7f0679..0000000000
--- a/usr/src/man/man1m/hald.1m
+++ /dev/null
@@ -1,136 +0,0 @@
-'\" te
-.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH HALD 1M "Jul 2, 2008"
-.SH NAME
-hald \- daemon that supports hardware abstraction layer
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/hal/hald\fR [\fB--daemon\fR={\fByes\fR | \fBno\fR}]] [\fB--help\fR] [\fB--use-syslog\fR]
- [\fB--verbose\fR={\fByes\fR | \fBno\fR}] [\fB--version\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBhald\fR daemon supports the recognition of hardware changes for devices
-that conform to the Hardware Abstraction Layer (HAL) specification.
-.sp
-.LP
-The enabling and disabling of \fBhald\fR can be performed through the service
-management facility (SMF) (see \fBsmf\fR(5)). \fBhald\fR is managed using the
-fault management resource identifier (FMRI) \fBsvc:/system/hal\fR. Options can
-be specified as SMF properties. See EXAMPLES.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB--daemon\fR\fR
-.ad
-.RS 16n
-Run as a daemon.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB--help\fR\fR
-.ad
-.RS 16n
-Display usage information and exit.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB--use-syslog\fR\fR
-.ad
-.RS 16n
-Display debug messages to \fBsyslog\fR instead of \fBstderr\fR. Use this option
-to record debug messages if HAL runs as daemon.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB--verbose\fR\fR
-.ad
-.RS 16n
-Display debug information.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB--version\fR\fR
-.ad
-.RS 16n
-Display version information and exit.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRSpecifying a Property
-.sp
-.LP
-The following \fBsvccfg\fR(1M) command specifies the \fB--verbose\fR option.
-
-.sp
-.in +2
-.nf
-example# \fBsvccfg\fR
-svc:> \fBselect hal\fR
-svc:/system/hal> \fBlistprop hal/*\fR
-hal/verbose boolean false
-hal/use_syslog boolean false
-svc:/system/hal> \fBsetprop hal/verbose=true\fR
-svc:/system/hal> \fBexit\fR
-.fi
-.in -2
-.sp
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/hal\fR\fR
-.ad
-.RS 16n
-HAL-related files
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/hal/fdi\fR\fR
-.ad
-.RS 16n
-Device information files
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Volatile
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBsvccfg\fR(1M), \fBattributes\fR(5), \fBhal\fR(5), \fBsmf\fR(5)
diff --git a/usr/src/man/man1m/halt.1m b/usr/src/man/man1m/halt.1m
deleted file mode 100644
index e2bc05695b..0000000000
--- a/usr/src/man/man1m/halt.1m
+++ /dev/null
@@ -1,106 +0,0 @@
-'\" te
-.\" Copyright (c) 2004 Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright (c) 2013, Joyent, Inc. All rights reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH HALT 1M "Jul 26, 2013"
-.SH NAME
-halt, poweroff \- stop the processor
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/halt\fR [\fB-dlnqy\fR]
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/poweroff\fR [\fB-dlnqy\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBhalt\fR and \fBpoweroff\fR utilities write any pending information to
-the disks and then stop the processor. The \fBpoweroff\fR utility has the
-machine remove power, if possible.
-.sp
-.LP
-The \fBhalt\fR and \fBpoweroff\fR utilities normally log the system shutdown to
-the system log daemon, \fBsyslogd\fR(1M), and place a shutdown record in the
-login accounting file \fB/var/adm/wtmpx\fR. These actions are inhibited if the
-\fB-n\fR or \fB-q\fR options are present.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-d\fR\fR
-.ad
-.RS 6n
-Force a system crash dump before rebooting. See \fBdumpadm\fR(1M) for
-information on configuring system crash dumps.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR\fR
-.ad
-.RS 6n
-Suppress sending a message to the system log daemon, \fBsyslogd\fR(1M), about
-who executed \fBhalt\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR\fR
-.ad
-.RS 6n
-Prevent the \fBsync\fR(1M) before stopping.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-q\fR\fR
-.ad
-.RS 6n
-Quick halt. No graceful shutdown is attempted.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-y\fR\fR
-.ad
-.RS 6n
-This option is ignored for backwards compatibility.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/var/adm/wtmpx\fR\fR
-.ad
-.RS 18n
-History of user access and administration information.
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBdumpadm\fR(1M), \fBinit\fR(1M), \fBreboot\fR(1M), \fBshutdown\fR(1M),
-\fBsync\fR(1M), \fBsyslogd\fR(1M), \fBinittab\fR(4), \fBattributes\fR(5),
-\fBsmf\fR(5)
-.SH NOTES
-.sp
-.LP
-The \fBhalt\fR and \fBpoweroff\fR utilities do not cleanly shutdown
-\fBsmf\fR(5) services. Execute the scripts in \fB/etc/rcnum.d\fR or execute
-shutdown actions in \fBinittab\fR(4). To ensure a complete shutdown of system
-services, use \fBshutdown\fR(1M) or \fBinit\fR(1M) to reboot a Solaris system.
diff --git a/usr/src/man/man1m/hextoalabel.1m b/usr/src/man/man1m/hextoalabel.1m
deleted file mode 100644
index 69a5556f96..0000000000
--- a/usr/src/man/man1m/hextoalabel.1m
+++ /dev/null
@@ -1,116 +0,0 @@
-'\" te
-.\" Copyright (c) 2007, Sun Microsystems Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH HEXTOALABEL 1M "Jul 20, 2007"
-.SH NAME
-hextoalabel \- convert an internal text label to its human readable equivalent
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/hextoalabel\fR [\fIinternal-text-sensitivity-label\fR]
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/hextoalabel\fR \fB-c\fR [\fIinternal-text-clearance\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBhextoalabel\fR converts an internal text label into its human readable
-equivalent and writes the result to the standard output file. This internal
-form is often hexadecimal. If no option is supplied, the label is assumed to be
-a sensitivity label.
-.sp
-.LP
-If no internal text label is specified, the label is read from the standard
-input file. The expected use of this command is emergency repair of labels that
-are stored in internal databases.
-.SH OPTIONS
-.sp
-.ne 2
-.na
-\fB\fB-c\fR\fR
-.ad
-.RS 6n
-Identifies the internal text label as a clearance.
-.RE
-
-.SH EXIT STATUS
-.sp
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 5n
-On success.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB1\fR\fR
-.ad
-.RS 5n
-On failure, and writes diagnostics to the standard error file.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability See below.
-.TE
-
-.sp
-.LP
-The command output is Committed for systems with the same \fBlabel_encodings\fR
-file. The command invocation is Committed for systems that implement the DIA
-MAC policy.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/security/tsol/label_encodings\fR\fR
-.ad
-.sp .6
-.RS 4n
-The label encodings file contains the classification names, words, constraints,
-and values for the defined labels of this system.
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBatohexlabel\fR(1M), \fBlabel_to_str\fR(3TSOL), \fBstr_to_label\fR(3TSOL),
-\fBlabel_encodings\fR(4), \fBattributes\fR(5)
-.sp
-.LP
-\fIHow to Get a Readable Label From Its Hexadecimal Form\fR in \fISolaris
-Trusted Extensions Administrator\&'s Procedures\fR
-.SH NOTES
-.sp
-.LP
-The functionality described on this manual page is available only if the system
-is configured with Trusted Extensions.
-.sp
-.LP
-This file is part of the Defense Intelligence Agency (DIA) Mandatory Access
-Control (MAC) policy. This file might not be applicable to other MAC policies
-that might be developed for future releases of Solaris Trusted Extensions
-software.
diff --git a/usr/src/man/man1m/hostconfig.1m b/usr/src/man/man1m/hostconfig.1m
deleted file mode 100644
index ab28428320..0000000000
--- a/usr/src/man/man1m/hostconfig.1m
+++ /dev/null
@@ -1,149 +0,0 @@
-'\" te
-.\" Copyright (c) 1999, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH HOSTCONFIG 1M "Nov 6, 2000"
-.SH NAME
-hostconfig \- configure a system's host parameters
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/hostconfig\fR \fB-p\fR \fIprotocol\fR [\fB-d\fR] [ \fB-h\fR] [\fB-n\fR] [\fB-v\fR]
- [\fB-i\fR \fIinterface\fR] [\fB-f\fR \fIhostname\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBhostconfig\fR program uses a network protocol to acquire a machine's
-\fBhost parameters\fR and set these parameters on the system.
-.sp
-.LP
-The program selects which protocol to use based on the argument to the required
-\fB-p\fR flag. Different protocols may set different host parameters.
-Currently, only one protocol (\fBbootparams\fR) is defined.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-d\fR\fR
-.ad
-.RS 16n
-Enable \fBdebug\fR output.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR\fI hostname\fR\fR
-.ad
-.RS 16n
-Run the protocol as if this machine were named \fBhostname\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-h\fR\fR
-.ad
-.RS 16n
-Echo the received \fBhostname\fR to \fBstdout\fR, rather than setting
-\fBhostname\fR using the system name directly.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-i\fR\fI interface\fR\fR
-.ad
-.RS 16n
-Use only the named network interface to run the protocol.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR\fR
-.ad
-.RS 16n
-Run the network protocol, but do not set the acquired parameters into the
-system.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR \fIprotocol\fR\fR
-.ad
-.RS 16n
-Run \fBhostconfig\fR using \fIprotocol\fR. Currently, only one protocol
-(\fBbootparams\fR) is available. This option is required.
-.sp
-Specifying the \fB-p\fR \fBbootparams\fR option uses the \fBwhoami\fR call of
-the RPC \fBbootparams\fR protocol. This sets the system's \fBhostname\fR,
-\fBdomainname\fR, and default IP router parameters.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.RS 16n
-Enable verbose output.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRConfiguring Host Parameters with Verbose Output
-.sp
-.LP
-The following command configures a machine's host parameters using the
-\fBwhoami\fR call of the RPC \fBbootparams\fR protocol with a verbose output.
-
-.sp
-.in +2
-.nf
-example# hostconfig \fB-p\fR bootparams \fB-v\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRDisplaying Host Parameters
-.sp
-.LP
-The following command displays the parameters that would be set using the
-\fBwhoami\fR call of the RPC \fBbootparams\fR protocol.
-
-.sp
-.in +2
-.nf
-example# hostconfig \fB-p\fR bootparams \fB-n\fR \fB-v\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRConfiguring Host Parameters Less the System Name
-.sp
-.LP
-The following command configures a machine's host parameters, less the system
-name, using the \fBwhoami\fR call of the RPC \fBbootparams\fR protocol.
-
-.sp
-.in +2
-.nf
-example# hostconfig='hostconfig \fB-p\fR bootparams \fB-h\fR'
-.fi
-.in -2
-.sp
-
-.SH SEE ALSO
-.sp
-.LP
-\fBhostname\fR(1), \fBdomainname\fR(1M), \fBroute\fR(1M), \fBattributes\fR(5)
diff --git a/usr/src/man/man1m/hotplug.1m b/usr/src/man/man1m/hotplug.1m
deleted file mode 100644
index 0c5c8266fc..0000000000
--- a/usr/src/man/man1m/hotplug.1m
+++ /dev/null
@@ -1,330 +0,0 @@
-.\"
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.\"
-.\"
-.\" Copyright (c) 2010, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 2020 Joyent, Inc.
-.\"
-.Dd March 2, 2020
-.Dt HOTPLUG 1M
-.Os
-.Sh NAME
-.Nm hotplug
-.Nd configure hotplug connectors and ports
-.Sh SYNOPSIS
-.Nm
-.Fl \&?
-.Nm
-.Cm list
-.Op Fl lv
-.Op Ar path
-.Op Ar connection
-.Nm
-.Cm online
-.Ar path
-.Ar port
-.Nm
-.Cm offline
-.Op Fl fq
-.Ar path
-.Ar port
-.Nm
-.Cm enable
-.Ar path
-.Ar connector
-.Nm
-.Cm disable
-.Op Fl fq
-.Ar path
-.Ar connector
-.Nm
-.Cm poweron
-.Ar path
-.Ar connector
-.Nm
-.Cm poweroff
-.Op Fl fq
-.Ar path
-.Ar connector
-.Nm
-.Cm set
-.Fl o Ar options
-.Ar path
-.Ar connector
-.Nm
-.Cm get
-.Fl o Ar options
-.Ar path
-.Ar connector
-.Sh DESCRIPTION
-The
-.Nm
-command is used to manage hotplug connections.
-A connection can be a connector or port.
-A hotplug connector is a representation of a physical point in the system where
-components can be inserted or removed.
-A hotplug port is a representation of a logical point in the system device tree
-where the connection of a device to the system is managed.
-.Pp
-The
-.Nm
-command only supports hotplug operations on hotplug connectors for PCI Express
-buses and PCI buses that implement the Standard PCI Hotplug feature.
-Hotplug ports on PCI Express and PCI buses in systems with PCI Express fabrics
-are also supported.
-Additional buses may be supported in the future.
-.Pp
-The
-.Nm
-command operates on the following kinds of objects:
-.Bl -tag -width "connection"
-.It Cm path
-Hotplug connectors and ports are integrated into the system device tree.
-The names of connectors and ports are unique relative only to their bus
-controller.
-A device path is required to uniquely reference a connector or port.
-.It Cm connector
-If a hardware component supports being physically inserted or removed, then a
-hotplug connector represents the location where this action may occur.
-When a connector exists, it has a hierarchy of ports and device nodes that
-depend upon it.
-.It Cm port
-All device nodes can be virtually hotplugged, even if their hardware does not
-support physical hotplugging.
-A hotplug port exists between a device node and its parent node in the system
-device tree.
-It represents the location where the device node and its dependents can be
-managed.
-.It Cm connection
-A hotplug connection is a generic term to refer to either a hotplug connector or
-a hotplug port.
-.El
-.Pp
-Hotplug connectors and ports are managed according to a state model.
-The
-.Nm
-command can list information about the hotplug connections in a system, or it
-can initiate change of state operations on specific hotplug connections.
-.Pp
-Hotplug connectors can be in the following states:
-.Bl -tag -width "present"
-.It Cm empty
-A component is not physically inserted in the connector.
-.It Cm present
-A component is physically inserted in the connector, but the component is
-powered off.
-The component is not in use.
-.It Cm powered
-A component is physically inserted in the connector, and the component is
-powered on.
-The component is disabled and is not in use.
-.It Cm enabled
-A component is physically inserted in the connector.
-The component is powered on and has been probed and tested.
-The component is enabled and devices that represent its functions can be used.
-.El
-.Pp
-Hotplug ports can be in the following states:
-.Bl -tag -width "port-present"
-.It Cm port-empty
-No device exists for the hotplug port.
-.It Cm port-present
-A device exists for the hotplug port, but the device has not been probed and it
-has no attached device driver.
-The device is not in use.
-.It Cm offline
-A device exists for the hotplug port, and the device has been probed.
-A device driver is not attached, and the device is not in use.
-.It Cm online
-A device exists for the hotplug port, and its device driver is fully attached.
-The device is in use.
-.It Cm maintenance
-A device exists for the hotplug port, and its device driver is fully attached.
-The device is in use, but not fully operational.
-A maintenance or fault management operation is affecting the device.
-.El
-.Pp
-The
-.Nm
-command can also access bus private properties for each hotplug connector.
-The current values of bus private properties can be displayed.
-New values for each bus private property can be set directly.
-.Sh EXIT STATUS
-.Bl -diag
-.It 0
-Successful completion.
-.It 1
-Invalid command line options were specified.
-.It 2
-The specified path or connection does not exist.
-.It 3
-A fatal error occurred.
-One or more error messages are displayed on standard error.
-.It 4
-The hotplug service is not available.
-.El
-.Sh EXAMPLES
-.Bl -tag -width 0n
-.It Sy Example 1 No Showing All Hotplug Connections
-The following command shows all hotplug connections:
-.Bd -literal
-# hotplug list -v
-pci@0,0
- <pci.2,1> (ONLINE)
- pci108e,534a@2,1
- [pci30] (EMPTY)
- <pci.e,0> (ONLINE)
- pci10de,5d@e
- <pci.b,0> (ONLINE)
- display@b
- [NEM0] (ENABLED)
- <pci.a,0> (ONLINE)
- pci108e,534a@a,0
- { Network interface nge0 }
- { nge0: hosts IP addresses: 10.0.0.1 }
- <pci.a,1> (MAINTENANCE)
- pci108e,534a@a,1
- [NEM1] (EMPTY)
- <pci.c,0> (OFFLINE)
- pci108e,534a@4
-.Ed
-.Pp
-To show the full paths of hotplug connections and devices, enter the following
-command:
-.Bd -literal
-# hotplug list -l
-/pci@0,0 <pci.2,1> (ONLINE)
-/pci@0,0/pci108e,534a@2,1 [pci30] (EMPTY)
-/pci@0,0 pci.e,0> (ONLINE)
-/pci@0,0/pci10de,5d@e <pci.b,0> (ONLINE)
-/pci@0,0/pci10de,5d@e/display@b
-/pci@0,0/pci10de,5d@e [NEM0] (ENABLED)
-/pci@0,0/pci10de,5d@e <pci.a,0> (ONLINE)
-/pci@0,0/pci10de,5d@e/pci108e,534a@a,0
-/pci@0,0/pci10de,5d@e <pci.a,1> (MAINTENANCE)
-/pci@0,0/pci10de,5d@e/pci108e,534a@a,0
-/pci@0,0/pci10de,5d@e [NEM1] (EMPTY)
-/pci@0,0 pci.c,0> (OFFLINE)
-/pci@0,0/pci108e,534a@4
-.Ed
-.It Sy Example 2 No Reporting Failure During State Change Operation
-If a change of state operation fails, an explanation is displayed to describe
-the failure.
-An attempt to offline a hotplug port with dependent devices that are currently
-in use by the system might fail as follows:
-.Bd -literal
-# hotplug offline /pci@0,0/pci10de,5d@e pci.a,0
-ERROR: devices or resources are busy.
-pci108e,534a@a,0:
- { Network interface nge0 }
- { nge0: hosts IP addresses: 10.0.0.1 }
- { Plumbed IP Address }
-.Ed
-.It Sy Example 3 No Displaying Bus-Specific Properties and Values
-The following command displays all supported bus-specific properties and their
-possible values:
-.Bd -literal
-# hotplug get -o help /pci@0,0 pci.2,1
-power_led=<on|off|blink>
-fault_led=<on|off|blink>
-active_led=<on|off|blink>
-attn_led=<on|off|blink>
-card_type=<type description>
-board_type=<type description>
-.Ed
-.It Sy Example 4 Displaying Bus-Specific Options
-The following command displays the card type and the current state of the Power
-LED of a PCI hotplug connector:
-.Bd -literal
-# hotplug get -o card_type,power_led /pci@0,0 pci.2,1
-card_type=fibre
-power_led=on
-.Ed
-.It Sy Example 5 No Setting a Bus-Specific Property
-The following command turns on the attention LED of a PCI hotplug connector:
-.Bd -literal
-# hotplug set -o attn_led=on /pci@0,0 pci.2,1
-.Ed
-.El
-.Sh DIAGNOSTICS
-The following error message is displayed on systems that do not have any
-supported I/O buses:
-.Bd -literal
-ERROR: there are no connections to display.
-(See hotplug(1m) for more information.)
-.Ed
-.Pp
-If this error message is seen, note that the system might still have other I/O
-devices that support hotplugging, through the
-.Xr cfgadm 1M
-command instead of
-.Nm .
-.Sh INTERFACE STABILITY
-.Sy Committed
-.Sh SEE ALSO
-.Xr cfgadm 1M ,
-.Xr hotplugd 1M ,
-.Xr getsubopt 3C ,
-.Xr rcmscript 4 ,
-.Xr attributes 5
-.Sh NOTES
-The
-.Nm
-service
-.Po FMRI
-.Pa svc:/system/hotplug
-.Pc
-must be enabled as a prerequisite for using the
-.Nm
-command.
-See
-.Xr hotplugd 1M .
-.Pp
-The authorization
-.Pa solaris.hotplug.modify
-must be granted in order to perform change-of-state operations.
-Alternatively, the rights profile
-.Qq Hotplug Management
-can be granted, which includes that authorization.
-.Pp
-Verbose usage information is gathered from the RCM framework.
-Its format and content is subject to change.
-.Pp
-The following bus specific properties are supported in PCI bus controllers:
-.Bl -tag -width Ds
-.It Cm power_led No \&| Cm fault_led No \&| Cm attn_led No \&| Cm active_led
-States of a specific LED of a slot.
-The value could be
-.Cm on , off ,
-or
-.Cm blink .
-.Pp
-They can all be used with
-.Cm get
-subcommand, but only property
-.Cm attn_led
-can be used with
-.Cm set
-subcommand.
-.It Cm card_type No \&| Cm board_type
-Type of a card or board of a slot.
-.Pp
-They can all be used with
-.Cm get
-subcommand, but neither can be used with
-.Cm set
-subcommand.
-.El
diff --git a/usr/src/man/man1m/id.1m b/usr/src/man/man1m/id.1m
deleted file mode 100644
index 58023b7445..0000000000
--- a/usr/src/man/man1m/id.1m
+++ /dev/null
@@ -1,416 +0,0 @@
-.\"
-.\" Sun Microsystems, Inc. gratefully acknowledges The Open Group for
-.\" permission to reproduce portions of its copyrighted documentation.
-.\" Original documentation from The Open Group can be obtained online at
-.\" http://www.opengroup.org/bookstore/.
-.\"
-.\" The Institute of Electrical and Electronics Engineers and The Open
-.\" Group, have given us permission to reprint portions of their
-.\" documentation.
-.\"
-.\" In the following statement, the phrase ``this text'' refers to portions
-.\" of the system documentation.
-.\"
-.\" Portions of this text are reprinted and reproduced in electronic form
-.\" in the SunOS Reference Manual, from IEEE Std 1003.1, 2004 Edition,
-.\" Standard for Information Technology -- Portable Operating System
-.\" Interface (POSIX), The Open Group Base Specifications Issue 6,
-.\" Copyright (C) 2001-2004 by the Institute of Electrical and Electronics
-.\" Engineers, Inc and The Open Group. In the event of any discrepancy
-.\" between these versions and the original IEEE and The Open Group
-.\" Standard, the original IEEE and The Open Group Standard is the referee
-.\" document. The original Standard can be obtained online at
-.\" http://www.opengroup.org/unix/online.html.
-.\"
-.\" This notice shall appear on any product containing this material.
-.\"
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.\"
-.\"
-.\" Copyright (c) 1992, X/Open Company Limited. All Rights Reserved.
-.\" Portions Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved.
-.\"
-.TH ID 1M "Sep 10, 2013"
-.SH NAME
-id \- return user identity
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/bin/id\fR [\fB-p\fR] [\fIuser\fR]
-.fi
-
-.LP
-.nf
-\fB/usr/bin/id\fR \fB-a\fR [\fB-p\fR] [\fIuser\fR]
-.fi
-
-.LP
-.nf
-\fB/usr/bin/id\fR \fB-G\fR [\fB-n\fR] [\fIuser\fR]
-.fi
-
-.LP
-.nf
-\fB/usr/bin/id\fR \fB-g\fR [\fB-nr\fR] [\fIuser\fR]
-.fi
-
-.LP
-.nf
-\fB/usr/bin/id\fR \fB-u\fR [\fB-nr\fR] [\fIuser\fR]
-.fi
-
-.LP
-.nf
-\fB/usr/xpg4/bin/id\fR [\fB-p\fR] [\fIuser\fR]
-.fi
-
-.LP
-.nf
-\fB/usr/xpg4/bin/id\fR \fB-a\fR [\fB-p\fR] [\fIuser\fR]
-.fi
-
-.LP
-.nf
-\fB/usr/xpg4/bin/id\fR \fB-G\fR [\fB-n\fR] [\fIuser\fR]
-.fi
-
-.LP
-.nf
-\fB/usr/xpg4/bin/id\fR \fB-g\fR [\fB-nr\fR] [\fIuser\fR]
-.fi
-
-.LP
-.nf
-\fB/usr/xpg4/bin/id\fR \fB-u\fR [\fB-nr\fR] [\fIuser\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-If no \fIuser\fR operand is provided, the \fBid\fR utility writes the user and
-group \fBID\fRs and the corresponding user and group names of the invoking
-process to standard output. If the effective and real \fBID\fRs do not match,
-both are written. If multiple groups are supported by the underlying system,
-\fB/usr/xpg4/bin/id\fR also writes the supplementary group affiliations of the
-invoking process.
-.sp
-.LP
-If a \fIuser\fR operand is provided and the process has the appropriate
-privileges, the user and group \fBID\fRs of the selected user are written. In
-this case, effective \fBID\fRs are assumed to be identical to real \fBID\fRs.
-If the selected user has more than one allowable group membership listed in the
-group database, \fB/usr/xpg4/bin/id\fR writes them in the same manner as the
-supplementary groups described in the preceding paragraph.
-.SS "Formats"
-.sp
-.LP
-The following formats are used when the \fBLC_MESSAGES\fR locale category
-specifies the "C" locale. In other locales, the strings \fBuid\fR, \fBgid\fR,
-\fBeuid\fR, \fBegid\fR, and \fBgroups\fR may be replaced with more appropriate
-strings corresponding to the locale.
-.sp
-.in +2
-.nf
-"uid=%u(%s) gid=%u(%s)\en" <\fIreal user ID\fR>, <\fIuser-name\fR>,
- <\fIreal group ID\fR>, <\fIgroup-name\fR>
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-If the effective and real user \fBID\fRs do not match, the following are
-inserted immediately before the \fB\en\fR character in the previous format:
-.sp
-.in +2
-.nf
-" euid=%u(%s)"
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-with the following arguments added at the end of the argument list:
-.sp
-.in +2
-.nf
-<\fIeffective user ID\fR>, <\fIeffective user-name\fR>
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-If the effective and real group \fBID\fRs do not match, the following is
-inserted directly before the \fB\en\fR character in the format string (and
-after any addition resulting from the effective and real user \fBID\fRs not
-matching):
-.sp
-.in +2
-.nf
-" egid=%u(%s)"
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-with the following arguments added at the end of the argument list:
-.sp
-.in +2
-.nf
-<\fIeffectivegroup-ID\fR>, <\fIeffectivegroupname\fR>
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-If the process has supplementary group affiliations or the selected user is
-allowed to belong to multiple groups, the first is added directly before the
-\fBNEWLINE\fR character in the format string:
-.sp
-.in +2
-.nf
-" groups=%u(%s)"
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-with the following arguments added at the end of the argument list:
-.sp
-.in +2
-.nf
-<\fIsupplementary group ID\fR>, <\fIsupplementary group name\fR>
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-and the necessary number of the following added after that for any remaining
-supplementary group \fBID\fRs:
-.sp
-.in +2
-.nf
-",%u(%s)"
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-and the necessary number of the following arguments added at the end of the
-argument list:
-.sp
-.in +2
-.nf
-<\fIsupplementary group ID\fR>, <\fIsupplementary group name\fR>
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-If any of the user \fBID\fR, group \fBID\fR, effective user \fBID\fR, effective
-group \fBID\fR or supplementary/multiple group \fBID\fRs cannot be mapped by
-the system into printable user or group names, the corresponding (\fB%s\fR) and
-name argument is omitted from the corresponding format string.
-.sp
-.LP
-When any of the options are specified, the output format is as described under
-OPTIONS.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported by both \fB/usr/bin/id\fR and
-\fB/usr/xpg4/bin/id\fR. The \fB-p\fR and \fB-a\fR options are invalid if
-specified with any of the \fB-G\fR, \fB-g\fR, or \fB-u\fR options.
-.sp
-.ne 2
-.na
-\fB\fB-p\fR\fR
-.ad
-.RS 6n
-Reports additionally the current project membership of the invoking process.
-The project is reported using the format:
-.sp
-.in +2
-.nf
-"projid=%u(%s)"
-.fi
-.in -2
-.sp
-
-which is inserted prior to the \fB\en\fR character of the default format
-described in the \fBFormats\fR section. The arguments
-.sp
-.in +2
-.nf
-<\fIproject ID\fR>,<\fIproject name\fR>
-.fi
-.in -2
-.sp
-
-are appended to the end of the argument list. If the project \fBID\fR cannot
-be mapped by the system into a printable project name, the corresponding
-\fB(%s)\fR and name argument is omitted from the corresponding format string.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-a\fR\fR
-.ad
-.RS 6n
-Reports user name, user \fBID\fR and all the groups to which the user belongs.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-G\fR\fR
-.ad
-.RS 6n
-Outputs all different group \fBID\fRs (effective, real and supplementary) only,
-using the format \fB"%u\en"\fR. If there is more than one distinct group
-affiliation, output each such affiliation, using the format \fB" %u"\fR, before
-the \fBNEWLINE\fR character is output.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-g\fR\fR
-.ad
-.RS 6n
-Outputs only the effective group \fBID\fR, using the format \fB"%u\en"\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR\fR
-.ad
-.RS 6n
-Outputs the name in the format \fB"%s"\fR instead of the numeric \fBID\fR using
-the format \fB"%u"\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-r\fR\fR
-.ad
-.RS 6n
-Outputs the real \fBID\fR instead of the effective \fBID\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-u\fR\fR
-.ad
-.RS 6n
-Outputs only the effective user \fBID\fR, using the format \fB"%u\en"\fR.
-.RE
-
-.SH OPERANDS
-.sp
-.LP
-The following operand is supported:
-.sp
-.ne 2
-.na
-\fB\fIuser\fR\fR
-.ad
-.RS 8n
-The user (login) name for which information is to be written.
-.RE
-
-.SH ENVIRONMENT VARIABLES
-.sp
-.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
-that affect the execution of \fBid\fR: \fBLANG\fR, \fBLC_ALL\fR,
-\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
-.SH EXIT STATUS
-.sp
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 6n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB>0\fR\fR
-.ad
-.RS 6n
-An error occurred.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.SS "/usr/bin/id"
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Stable
-.TE
-
-.SS "/usr/xpg4/bin/id"
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Standard
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBfold\fR(1), \fBlogname\fR(1), \fBwho\fR(1), \fBgetgid\fR(2),
-\fBgetgroups\fR(2), \fBgetprojid\fR(2), \fBgetuid\fR(2), \fBattributes\fR(5),
-\fBenviron\fR(5), \fBstandards\fR(5)
-.SH NOTES
-.sp
-.LP
-Output produced by the \fB-G\fR option and by the default case could
-potentially produce very long lines on systems that support large numbers of
-supplementary groups.
diff --git a/usr/src/man/man1m/idmap.1m b/usr/src/man/man1m/idmap.1m
deleted file mode 100644
index 585760e0fd..0000000000
--- a/usr/src/man/man1m/idmap.1m
+++ /dev/null
@@ -1,1307 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH IDMAP 1M "November 22, 2021"
-.SH NAME
-idmap \- configure and manage the Native Identity Mapping service
-.SH SYNOPSIS
-.nf
-\fBidmap\fR
-.fi
-
-.LP
-.nf
-\fBidmap\fR \fB-f\fR \fIcommand-file\fR
-.fi
-
-.LP
-.nf
-\fBidmap\fR add [\fB-d\fR] \fIname1\fR \fIname2\fR
-.fi
-
-.LP
-.nf
-\fBidmap\fR dump [\fB-n\fR] [\fB-v\fR]
-.fi
-
-.LP
-.nf
-\fBidmap\fR export [\fB-f\fR \fIfile\fR] \fIformat\fR
-.fi
-
-.LP
-.nf
-\fBidmap\fR get-namemap \fIname\fR
-.fi
-
-.LP
-.nf
-\fBidmap\fR help
-.fi
-
-.LP
-.nf
-\fBidmap\fR import [\fB-F\fR] [\fB-f\fR \fIfile\fR] \fIformat\fR
-.fi
-
-.LP
-.nf
-\fBidmap\fR list
-.fi
-
-.LP
-.nf
-\fBidmap\fR remove [\fB-t\fR|\fB-f\fR] \fIname\fR
-.fi
-
-.LP
-.nf
-\fBidmap\fR remove \fB-a\fR
-.fi
-
-.LP
-.nf
-\fBidmap\fR remove [\fB-d\fR] \fIname1\fR \fIname2\fR
-.fi
-
-.LP
-.nf
-\fBidmap\fR set-namemap [\fB-a\fR \fIauthenticationMethod\fR] [\fB-D\fR \fIbindDN\fR]
- [\fB-j\fR \fIpasswdfile\fR] \fIname1\fR \fIname2\fR
-.fi
-
-.LP
-.nf
-\fBidmap\fR show [\fB-c\fR] [\fB-v\fR] \fIidentity\fR [\fItarget-type\fR]
-.fi
-
-.LP
-.nf
-\fBidmap\fR unset-namemap [\fB-a\fR \fIauthenticationMethod\fR] [\fB-D\fR \fIbindDN\fR]
- [\fB-j\fR \fIpasswdfile\fR] \fIname\fR [\fItarget-type\fR]
-.fi
-
-.SH DESCRIPTION
-The \fBidmap\fR utility is used to configure and manage the Native Identity
-Mapping service.
-.sp
-.LP
-The Native Identity Mapping service supports the following types of mappings
-between Windows security identities (SIDs) and POSIX user IDs and group IDs
-(UIDs and GIDs):
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBName-based mapping.\fR An administrator maps Windows and UNIX users and
-groups by name.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBEphemeral ID mapping.\fR A UID or GID is dynamically allocated for every SID
-that is not already mapped by name.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBLocal-SID mapping.\fR A non-ephemeral UID or GID is mapped to an
-algorithmically generated local SID.
-.RE
-.sp
-.LP
-The \fBidmap\fR utility can be used to create and manage the name-based
-mappings and to monitor the mappings in effect.
-.sp
-.LP
-If the \fBidmap\fR utility is invoked without a subcommand or option, it reads
-the subcommands from standard input. When standard input is a TTY, the
-\fBidmap\fR command prints the usage message and exits.
-.SS "Mapping Mechanisms"
-The \fBidmapd\fR(1M) daemon maps Windows user and group SIDs to UNIX UIDs and
-GIDs as follows:
-.RS +4
-.TP
-1.
-SIDs are mapped by name.
-.sp
-This mapping uses the name-based mappings that are manually set up by the
-system administrator.
-.RE
-.RS +4
-.TP
-2.
-If no name-based mapping is found, the SID is mapped to a dynamically
-allocated ephemeral ID.
-.sp
-This allocation uses the next available UID or GID from 2^31 to 2^32 - 2.
-.RE
-.sp
-.LP
-Local SID mappings are used to map from UNIX to Windows.
-.sp
-.LP
-To prevent aliasing problems, all file systems, archive and backup formats, and
-protocols must store SIDs or map all UIDs and GIDs in the 2^31 to 2^32 - 2
-range to the \fBnobody\fR user and group.
-.sp
-.LP
-It is possible to create also diagonal mappings. They are the mappings between
-Windows groups and Solaris users and between Solaris groups and Windows users.
-They are needed when Windows uses a group identity as a file owner or vice
-versa.
-.SS "Name-based Mappings"
-Name-based mappings establish name equivalence between Windows users and groups
-and their counterparts in the UNIX name service. These mappings persist across
-reboots. For example, the following command maps Windows users to UNIX users
-with the same name:
-.sp
-.in +2
-.nf
-# \fBidmap add "winuser:*@example.com" "unixuser:*"\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-If configured to use a directory service, \fBidmapd\fR(1M) will first try to
-use the mapping information that is stored in user or group objects in the
-Active Directory (AD) and/or the native LDAP directory service. For example, an
-AD object for a given Windows user or group can be augmented to include the
-corresponding Solaris user or group name or numeric id. Similarly, the native
-LDAP object for a given Solaris user or group can be augmented to include the
-corresponding Windows user or group name.
-.sp
-.LP
-\fBidmapd\fR(1M) can be configured to use AD and/or native LDAP directory-based
-name mappings by setting the appropriate service management facility (SMF)
-properties of the \fBidmap\fR service. See "Service Properties," below, for
-more details.
-.sp
-.LP
-If directory-based name mapping is not configured or if configured but not
-found, then \fBidmapd\fR(1M) will process locally stored name-based mapping
-rules.
-.sp
-.LP
-\fBidmap\fR supports the mapping of Windows well-known names. A few of these
-are listed below:
-.sp
-.in +2
-.nf
-Administrator
-Guest
-KRBTGT
-Domain Admins
-Domain Users
-Domain Guest
-Domain Computers
-Domain Controllers
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-When \fBidmap\fR rules are added, these well-known names will be expanded to
-canonical form. That is, either the default domain name will be added (for
-names that are not well-known) or an appropriate built-in domain name will be
-added. Depending on the particular well-known name, this domain name might be
-null, \fBBUILTIN\fR, or the local host name.
-.sp
-.LP
-The following sequence of \fBidmap\fR commands illustrate the treatment of the
-non-well-known name \fBfred\fR and the well-known names \fBadministrator\fR and
-\fBguest\fR.
-.sp
-.in +2
-.nf
-# \fBidmap add winname:fred unixuser:fredf\fR
-add winname:fred unixuser:fredf
-
-# \fBidmap add winname:administrator unixuser:root\fR
-add winname:administrator unixuser:root
-
-# \fBidmap add winname:guest unixuser:nobody\fR
-add winname:guest unixuser:nobody
-
-# \fBidmap add wingroup:administrators sysadmin\fR
-add wingroup:administrators unixgroup:sysadmin
-
-# \fBidmap list\fR
-add winname:Administrator@examplehost unixuser:root
-add winname:Guest@examplehost unixuser:nobody
-add wingroup:Administrators@BUILTIN unixgroup:sysadmin
-add winname:fred@example.com unixuser:fredf
-.fi
-.in -2
-.sp
-
-.SS "Ephemeral Mappings"
-The \fBidmapd\fR daemon attempts to preserve ephemeral ID mappings across
-daemon restarts. However, when IDs cannot be preserved, the daemon maps each
-previously mapped SID to a new ephemeral UID or GID value. The daemon will
-never re-use ephemeral UIDs or GIDs. If the \fBidmapd\fR daemon runs out of
-ephemeral UIDs and GIDs, it returns an error as well as a default UID or GID
-for SIDs that cannot be mapped by name.
-.sp
-.LP
-The dynamic ID mappings are not retained across reboots. So, any SIDs that are
-dynamically mapped to UNIX UIDs or GIDs are most likely mapped to different IDs
-after rebooting the system.
-.SS "Local SID Mappings"
-If no name-based mapping is found, a non-ephemeral UID or GID is mapped to an
-algorithmically generated local SID. The mapping is generated as follows:
-.sp
-.in +2
-.nf
-local SID for UID = \fI<machine SID>\fR - \fI<1000 + UID>\fR
-local SID for GID = \fI<machine SID>\fR - \fI<2^31 + GID>\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-\fI<machine SID>\fR is a unique SID generated by the \fBidmap\fR service for
-the host on which it runs.
-.SS "Rule Lookup Order"
-When mapping a Windows name to a UNIX name, lookup for name-based mapping rules
-is performed in the following order:
-.RS +4
-.TP
-1.
-\fIwindows-name\fR\fB@\fR\fIdomain\fR to \fB""\fR
-.RE
-.RS +4
-.TP
-2.
-\fIwindows-name\fR\fB@\fR\fIdomain\fR to \fIunix-name\fR
-.RE
-.RS +4
-.TP
-3.
-\fIwindows-name\fR\fB@*\fR to \fB""\fR
-.RE
-.RS +4
-.TP
-4.
-\fIwindows-name\fR\fB@*\fR to \fIunix-name\fR
-.RE
-.RS +4
-.TP
-5.
-\fB*@\fR\fIdomain\fR to \fB*\fR
-.RE
-.RS +4
-.TP
-6.
-\fB*@\fR\fIdomain\fR to \fB""\fR
-.RE
-.RS +4
-.TP
-7.
-\fB*@\fR\fIdomain\fR to \fIunix-name\fR
-.RE
-.RS +4
-.TP
-8.
-\fB*@*\fR to \fB*\fR
-.RE
-.RS +4
-.TP
-9.
-\fB*@*\fR to \fB""\fR
-.RE
-.RS +4
-.TP
-10.
-\fB*@*\fR to \fIunix-name\fR
-.RE
-.sp
-.LP
-When mapping a UNIX name to a Windows name, lookup for name-based mapping rules
-is performed in the following order:
-.RS +4
-.TP
-1.
-\fIunix-name\fR to \fB""\fR
-.RE
-.RS +4
-.TP
-2.
-\fIunix-name\fR to \fIwindows-name\fR\fB@\fR\fIdomain\fR
-.RE
-.RS +4
-.TP
-3.
-\fB*\fR to \fB*@\fR\fIdomain\fR
-.RE
-.RS +4
-.TP
-4.
-\fB*\fR to \fB""\fR
-.RE
-.RS +4
-.TP
-5.
-\fB*\fR to \fIwindows-name\fR\fB@\fR\fIdomain\fR
-.RE
-.SS "Service Properties"
-The service properties determine the behavior of the \fBidmapd\fR(1M) daemon.
-These properties are stored in the SMF repository (see \fBsmf\fR(5)) under
-property group \fBconfig\fR. They can be accessed and modified using
-\fBsvccfg\fR(1M), which requires \fBsolaris.smf.value.idmap\fR authorization.
-The service properties for the \fBidmap\fR service are:
-.sp
-.ne 2
-.na
-\fB\fBconfig/ad_unixuser_attr\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify the name of the AD attribute that contains the UNIX user name. There is
-no default.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBconfig/ad_unixgroup_attr\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify the name of the AD attribute that contains the UNIX group name. There
-is no default.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBconfig/nldap_winname_attr\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify the name of the Native LDAP attribute that contains the Windows
-user/group name. There is no default.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBconfig/directory_based_mapping\fR\fR
-.ad
-.sp .6
-.RS 4n
-Controls support for identity mapping using data stored in a directory service.
-.sp
-\fBnone\fR disables directory-based mapping.
-.sp
-\fBname\fR enables name-based mapping using the properties described above.
-.sp
-\fBidmu\fR enables mapping using Microsoft's Identity Management for UNIX
-(IDMU). This Windows component allows the administrator to specify a UNIX user
-ID for each Windows user, mapping the Windows identity to the corresponding
-UNIX identity. Only IDMU data from the domain the Solaris system is a member of
-is used.
-.RE
-
-.sp
-.LP
-Changes to service properties do not affect a running \fBidmap\fR service. The
-service must be refreshed (with \fBsvcadm\fR(1M)) for the changes to take
-effect.
-.SH OPERANDS
-The \fBidmap\fR command uses the following operands:
-.sp
-.ne 2
-.na
-\fB\fIformat\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the format in which user name mappings are described for the
-\fBexport\fR and \fBimport\fR subcommands. The Netapp \fBusermap.cfg\fR and
-Samba \fBsmbusers\fR external formats are supported. These external formats are
-\fBonly\fR for users, not groups.
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The \fBusermap.cfg\fR rule-mapping format is as follows:
-.sp
-.in +2
-.nf
-\fIwindows-username\fR [\fIdirection\fR] \fIunix-username\fR
-.fi
-.in -2
-.sp
-
-\fIwindows-username\fR is a Windows user name in either the
-\fIdomain\fR\e\fIusername\fR or \fIusername\fR\fB@\fR\fIdomain\fR format.
-.sp
-\fIunix-username\fR is a UNIX user name.
-.sp
-.LP
-\fIdirection\fR is one of the following:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fB==\fR means a bidirectional mapping, which is the default.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fB=>\fR or \fB<=\fR means a unidirectional mapping.
-.RE
-The IP qualifier is not supported.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The \fBsmbusers\fR rule-mapping format is as follows:
-.sp
-.in +2
-.nf
-\fIunixname\fR = \fIwinname1\fR \fIwinname2\fR ...
-.fi
-.in -2
-.sp
-
-If \fIwinname\fR includes whitespace, escape the whitespace by enclosing the
-value in double quotes. For example, the following file shows how to specify
-whitespace in a valid format for the \fBidmap\fR command:
-.sp
-.in +2
-.nf
-$ \fBcat myusermap\fR
-terry="Terry Maddox"
-pat="Pat Flynn"
-cal=cbrown
-.fi
-.in -2
-.sp
-
-The mappings are imported as unidirectional mappings from Windows names to UNIX
-names.
-.sp
-The format is based on the "username map" entry of the \fBsmb.conf\fR man page,
-which is available on the \fBsamba.org\fR web site. The use of an asterisk
-(\fB*\fR) for \fIwindows-name\fR is supported. However, the \fB@group\fR
-directive and the chaining of mappings are not supported.
-.sp
-By default, if no mapping entries are in the \fBsmbusers\fR file, Samba maps a
-\fIwindows-name\fR to the equivalent \fIunix-name\fR, if any. If you want to
-set up the same mapping as Samba does, use the following \fBidmap\fR command:
-.sp
-.in +2
-.nf
-idmap add -d "winuser:*@*" "unixuser:*"
-.fi
-.in -2
-.sp
-
-.RE
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIidentity\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies a user name, user ID, group name, or group ID. \fIidentity\fR is
-specified as \fItype\fR\fB:\fR\fIvalue\fR. \fItype\fR is one of the following:
-.sp
-.ne 2
-.na
-\fB\fBusid\fR\fR
-.ad
-.RS 13n
-Windows user SID in text format
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBgsid\fR\fR
-.ad
-.RS 13n
-Windows group SID in text format
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsid\fR\fR
-.ad
-.RS 13n
-Windows group SID in text format that can belong either to a user or to a group
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBuid\fR\fR
-.ad
-.RS 13n
-Numeric POSIX UID
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBgid\fR\fR
-.ad
-.RS 13n
-Numeric POSIX GID
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBunixuser\fR\fR
-.ad
-.RS 13n
-UNIX user name
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBunixgroup\fR\fR
-.ad
-.RS 13n
-UNIX group name
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBwinuser\fR\fR
-.ad
-.RS 13n
-Windows user name
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBwingroup\fR\fR
-.ad
-.RS 13n
-Windows group name
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBwinname\fR\fR
-.ad
-.RS 13n
-Windows user or group name
-.RE
-
-\fIvalue\fR is a number or string that is appropriate to the specified
-\fItype\fR. For instance, \fBunixgroup:staff\fR specifies the UNIX group name,
-\fBstaff\fR. The identity \fBgid:10\fR represents GID 10, which corresponds to
-the UNIX group \fBstaff\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIname\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies a UNIX name (\fBunixuser\fR, \fBunixgroup\fR) or a Windows name
-(\fBwinuser\fR, \fBwingroup\fR) that can be used for name-based mapping rules.
-.sp
-.LP
-A Windows security entity name can be specified in one of these ways:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fIdomain\fR\e\fIname\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fIname\fR\fB@\fR\fIdomain\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fIname\fR, which uses the default mapping domain
-.RE
-If \fIname\fR is the empty string (\fB""\fR), mapping is inhibited. Note that a
-name of \fB""\fR should not be used to preclude logins by unmapped Windows
-users.
-.sp
-If \fIname\fR uses the wildcard (\fB*\fR), it matches all names that are not
-matched by other mappings. Similarly, if \fIname\fR is the wildcard Windows
-name (\fB*@*\fR), it matches all names in all domains that are not matched by
-other mappings.
-.sp
-If \fIname\fR uses the wildcard on both sides of the mapping rule, the name is
-the same for both Windows and Solaris users. For example, if the rule is
-\fB"*@domain" == "*"\fR, the \fBjp@domain\fR Windows user name matches this
-rule and maps to the \fBjp\fR Solaris user name.
-.sp
-Specifying the type of \fIname\fR is optional if the type can be deduced from
-other arguments or types specified on the command line.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fItarget-type\fR\fR
-.ad
-.sp .6
-.RS 4n
-Used with the \fBshow\fR and \fBunset-namemap\fR subcommands. For \fBshow\fR,
-specifies the mapping type that should be shown. For example, if
-\fItarget-type\fR is \fBsid\fR, \fBidmap show\fR returns the SID mapped to the
-identity specified on the command line. For \fBunset-namemap\fR, identifies an
-attribute within the object specified by the \fIname\fR operand.
-.RE
-
-.SH OPTIONS
-The \fBidmap\fR command supports one option and a set of subcommands. The
-subcommands also have options.
-.SS "Command-Line Option"
-.ne 2
-.na
-\fB\fB-f\fR \fIcommand-file\fR\fR
-.ad
-.sp .6
-.RS 4n
-Reads and executes \fBidmap\fR subcommands from \fIcommand-file\fR. The
-\fBidmap\fR \fB-f\fR \fB-\fR command reads from standard input. This option is
-not used by any subcommands.
-.RE
-
-.SS "Subcommands"
-The following subcommands are supported:
-.sp
-.ne 2
-.na
-\fB\fBadd\fR [\fB-d\fR] \fIname1\fR \fIname2\fR\fR
-.ad
-.sp .6
-.RS 4n
-Adds a name-based mapping rule. By default, the name mapping is bidirectional.
-If the \fB-d\fR option is used, a unidirectional mapping is created from
-\fIname1\fR to \fIname2\fR.
-.sp
-Either \fIname1\fR or \fIname2\fR must be a Windows name, and the other must be
-a UNIX name. For the Windows name, the \fBwinname\fR identity type must not be
-used. Instead, specify one of the \fBwinuser\fR or \fBwingroup\fR types. See
-"Operands" for information about the \fIname\fR operand.
-.sp
-Note that two unidirectional mappings between the same two names in two
-opposite directions are equivalent to one bidirectional mapping.
-.sp
-This subcommand requires the \fBsolaris.admin.idmap.rules\fR authorization.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdump\fR [\fB-n\fR] [\fB-v\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Dumps all the mappings cached since the last system boot. The \fB-n\fR option
-shows the names, as well. By default, only \fBsid\fRs, \fBuid\fRs, and
-\fBgid\fRs are shown. The \fB-v\fR option shows how the mappings were
-generated.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBexport\fR [\fB-f\fR \fIfile\fR] \fIformat\fR\fR
-.ad
-.sp .6
-.RS 4n
-Exports name-based mapping rules to standard output in the specified
-\fIformat\fR. The \fB-f\fR \fIfile\fR option writes the rules to the specified
-output file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBget-namemap\fR \fIname\fR\fR
-.ad
-.sp .6
-.RS 4n
-Get the directory-based name mapping information from the AD or native LDAP
-user or group object represented by the specified name.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBhelp\fR\fR
-.ad
-.sp .6
-.RS 4n
-Displays the usage message.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBimport\fR [\fB-F\fR] [\fB-f\fR \fIfile\fR] \fIformat\fR\fR
-.ad
-.sp .6
-.RS 4n
-Imports name-based mapping rules from standard input by using the specified
-\fIformat\fR. The \fB-f\fR \fIfile\fR option reads the rules from the specified
-file. The \fB-F\fR option flushes existing name-based mapping rules before
-adding new ones.
-.sp
-Regardless of the external format used, the imported rules are processed by
-using the semantics and order described in the section "Rule Lookup Order,"
-above.
-.sp
-This subcommand requires the \fBsolaris.admin.idmap.rules\fR authorization.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBlist\fR\fR
-.ad
-.sp .6
-.RS 4n
-Lists all name-based mapping rules. Each rule appears in its \fBidmap add\fR
-form.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBremove\fR [\fB-t\fR|\fB-f\fR] \fIname\fR\fR
-.ad
-.sp .6
-.RS 4n
-Removes any name-based mapping rule that involves the specified name.
-\fIname\fR can be either a UNIX or Windows user name or group name.
-.sp
-The \fB-f\fR option removes rules that use \fIname\fR as the source. The
-\fB-t\fR option removes rules that use \fIname\fR as the destination. These
-options are mutually exclusive.
-.sp
-This subcommand requires the \fBsolaris.admin.idmap.rules\fR authorization.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBremove\fR \fB-a\fR\fR
-.ad
-.sp .6
-.RS 4n
-Removes all name-based mapping rules.
-.sp
-This subcommand requires the \fBsolaris.admin.idmap.rules\fR authorization.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBremove\fR [\fB-d\fR] \fIname1\fR \fIname2\fR\fR
-.ad
-.sp .6
-.RS 4n
-Removes name-based mapping rules between \fIname1\fR and \fIname2\fR. If the
-\fB-d\fR option is specified, rules from \fIname1\fR to \fIname2\fR are
-removed.
-.sp
-Either \fIname1\fR or \fIname2\fR must be a Windows name, and the other must be
-a UNIX name.
-.sp
-This subcommand requires the \fBsolaris.admin.idmap.rules\fR authorization.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBset-namemap\fR [\fB-a\fR \fIauthenticationMethod\fR] [\fB-D\fR
-\fIbindDN\fR] [\fB-j\fR \fIpasswdfile\fR] \fIname1\fR \fIname2\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets name mapping information in the AD or native LDAP user or group object.
-Either \fIname1\fR or \fIname2\fR must be a Windows name, and the other must be
-a UNIX name.
-.sp
-If \fIname1\fR is a Windows name, then the UNIX name \fIname2\fR is added to
-the AD object represented by \fIname1\fR. Similarly, if \fIname1\fR is a UNIX
-name then the Windows name \fIname2\fR is added to the native LDAP entry
-represented by \fIname1\fR.
-.sp
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-a\fR \fIauthenticationMethod\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify authentication method when modifying native LDAP entry. See
-\fBldapaddent\fR(1M) for details. Default value is \fBsasl/GSSAPI\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-D\fR \fIbindDN\fR\fR
-.ad
-.sp .6
-.RS 4n
-Uses the distinguished name \fIbindDN\fR to bind to the directory.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-j\fR \fIpasswdfile\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify a file containing the password for authentication to the directory.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBshow\fR [\fB-c\fR] [\fB-v\fR] \fIname\fR [\fItarget-type\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Shows the identity of type, \fItarget-type\fR, that the specified \fIname\fR
-maps to. If the optional \fItarget-type\fR is omitted, the non-diagonal mapping
-is shown.
-.sp
-By default, this subcommand shows only mappings that have been established
-already. The \fB-c\fR option forces the evaluation of name-based mapping
-configurations or the dynamic allocation of IDs.
-.sp
-The \fB-v\fR option shows how the mapping was generated and also whether the
-mapping was just generated or was retrieved from the cache.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBunset-namemap\fR [\fB-a\fR \fIauthenticationMethod\fR] [\fB-D\fR
-\fIbindDN\fR] [\fB-j\fR \fIpasswdfile\fR] \fIname\fR [\fItarget-type\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Unsets directory-based name mapping information from the AD or native LDAP user
-or group object represented by the specified name and optional target type.
-.sp
-See the \fBset-namemap\fR subcommand for options.
-.RE
-
-.SH EXAMPLES
-\fBExample 1 \fRUsing a Wildcard on Both Sides of a Name-Based Mapping Rule
-.sp
-.LP
-The following command maps all Windows user names in the \fBexample.com\fR domain
-to the UNIX users with the same names provided that one exists and is not
-otherwise mapped. If such a rule is matched but the UNIX user name does not
-exist, an ephemeral ID mapping is used.
-
-.sp
-.in +2
-.nf
-# \fBidmap add "winuser:*@example.com" "unixuser:*"\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRUsing a Wildcard on One Side of a Name-Based Mapping Rule
-.sp
-.LP
-The following command maps all unmapped Windows users in the \fBexample.com\fR
-domain to the \fBguest\fR UNIX user. The \fB-d\fR option specifies a
-unidirectional mapping from \fB*@example.com\fR users to the \fBguest\fR user.
-
-.sp
-.in +2
-.nf
-# \fBidmap add -d "winuser:*@example.com" unixuser:guest\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRAdding a Bidirectional Name-Based Mapping Rule
-.sp
-.LP
-The following command maps Windows user, \fBfoobar@example.com\fR, to UNIX
-user, \fBfoo\fR, and conversely:
-
-.sp
-.in +2
-.nf
-# \fBidmap add winuser:foobar@example.com unixuser:foo\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-This command shows how to remove the mapping added by the previous command:
-
-.sp
-.in +2
-.nf
-# \fBidmap remove winuser:foobar@example.com unixuser:foo\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 4 \fRShowing a UID-to-SID Mapping
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The following command shows the SID that the specified UID, \fBuid:50000\fR,
-maps to:
-.sp
-.in +2
-.nf
-# \fBidmap show uid:50000 sid\fR
-uid:50000 -> usid:S-1-5-21-3223191800-2000
-.fi
-.in -2
-.sp
-
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The following command shows the UNIX user name that the specified Windows user
-name, \fBjoe@example.com\fR, maps to:
-.sp
-.in +2
-.nf
-# \fBidmap show joe@example.com unixuser\fR
-winuser:joe@example.com -> unixuser:joes
-.fi
-.in -2
-.sp
-
-.RE
-.LP
-\fBExample 5 \fRListing the Cached SID-to-UID Mappings
-.sp
-.LP
-The following command shows all of the SID-to-UID mappings that are in the
-cache:
-
-.sp
-.in +2
-.nf
-# \fBidmap dump | grep "uid:"\fR
-usid:S-1-5-21-3223191800-2000 == uid:50000
-usid:S-1-5-21-3223191800-2001 == uid:50001
-usid:S-1-5-21-3223191800-2006 == uid:50010
-usid:S-1-5-21-3223191900-3000 == uid:2147491840
-usid:S-1-5-21-3223191700-4000 => uid:60001
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 6 \fRBatching \fBidmap\fR Requests
-.sp
-.LP
-The following commands show how to batch \fBidmap\fR requests. This particular
-command sequence does the following:
-
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Removes any previous rules for \fBfoobar@example.com\fR.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Maps Windows user \fBfoobar@example.com\fR to UNIX user \fBbar\fR and
-vice-versa.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Maps Windows group \fBmembers\fR to UNIX group \fBstaff\fR and vice-versa.
-.RE
-.sp
-.in +2
-.nf
-# \fBidmap <<EOF\fR
- \fBremove winuser:foobar@example.com\fR
- \fBadd winuser:foobar@example.com unixuser:bar\fR
- \fBadd wingroup:members unixgroup:staff\fR
-\fBEOF\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 7 \fRListing Name-Based Mapping Rules
-.sp
-.LP
-The following command shows how to list the name-based mapping rules:
-
-.sp
-.in +2
-.nf
-# \fBidmap list\fR
-add winuser:foobar@example.com unixuser:bar
-add wingroup:members unixgroup:staff
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 8 \fRImporting Name-Based Mapping Rules From the \fBusermap.cfg\fR
-File
-.sp
-.LP
-The \fBusermap.cfg\fR file can be used to configure name-based mapping rules.
-The following \fBusermap.cfg\fR file shows mapping rules that map Windows user
-\fBfoo@example.com\fR to UNIX user \fBfoo\fR, and that map
-\fBfoobar@example.com\fR to the UNIX user \fBfoo\fR.
-
-.sp
-.in +2
-.nf
-# \fBcat usermap.cfg\fR
-foo@example.com == foo
-foobar@example.com => foo
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The following \fBidmap\fR command imports \fBusermap.cfg\fR information to the
-\fBidmapd\fR database:
-
-.sp
-.in +2
-.nf
-# \fBcat usermap.cfg | idmap import usermap.cfg\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-This command does the same as the previous command:
-
-.sp
-.in +2
-.nf
-# \fBidmap import -f usermap.cfg usermap.cfg\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The following commands are equivalent to the previous \fBidmap import\fR
-commands:
-
-.sp
-.in +2
-.nf
-# \fBidmap <<EOF\fR
- \fBadd winuser:foo@example.com unixuser:foo\fR
- \fBadd -d winuser:foobar@example.com unixuser:foo\fR
-\fBEOF\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 9 \fRUsing Name-Based and Ephemeral ID Mapping With Identity
-Function Mapping and Exceptions
-.sp
-.LP
-The following commands map all users in the \fBexample.com\fR Windows domain to
-UNIX user accounts of the same name. The command also specifies mappings for
-the following Windows users: \fBjoe@example.com\fR, \fBjane.doe@example.com\fR,
-\fBadministrator@example.com\fR. The \fBadministrator\fR from all domains is
-mapped to \fBnobody\fR. Any Windows users without corresponding UNIX accounts
-are mapped dynamically to available ephemeral UIDs.
-
-.sp
-.in +2
-.nf
-# \fBidmap import usermap.cfg <<EOF\fR
- \fBjoe@example.com == joes\fR
- \fBjane.doe@example.com == janed\fR
- \fBadministrator@* => nobody\fR
- \fB*@example.com == *\fR
- \fB*@example.com => nobody\fR
-\fBEOF\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 10 \fRAdding Directory-based Name Mapping to AD User Object
-.sp
-.LP
-The following command maps Windows user \fBjoe@example.com\fR to UNIX user
-\fBjoe\fR by adding the UNIX name to AD object for \fBjoe@example.com\fR.
-
-.sp
-.in +2
-.nf
-# \fBidmap set-namemap winuser:joe@example.com joes\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 11 \fRAdding Directory-based Name Mapping to Native LDAP User Object
-.sp
-.LP
-The following command maps UNIX user \fBfoo\fR to Windows user
-\fBfoobar@example.com\fR by adding the Windows name to native LDAP object for
-\fBfoo\fR.
-
-.sp
-.in +2
-.nf
-# \fBidmap set-namemap unixuser:foo foobar@example.com\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 12 \fRRemoving Directory-based Name Mapping from AD User Object
-.sp
-.LP
-The following command removes the UNIX username \fBunixuser\fR from the AD
-object representing \fBjoe@example.com\fR.
-
-.sp
-.in +2
-.nf
-# \fBidmap unset-namemap winuser:joe@example.com unixuser\fR
-.fi
-.in -2
-.sp
-
-.SH EXIT STATUS
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 6n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB>0\fR\fR
-.ad
-.RS 6n
-An error occurred. A diagnostic message is written to standard error.
-.RE
-
-.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Uncommitted
-.TE
-
-.SH SEE ALSO
-\fBsvcs\fR(1), \fBidmapd\fR(1M), \fBldapaddent\fR(1M), \fBsvcadm\fR(1M),
-\fBsvccfg\fR(1M), \fBattributes\fR(5), \fBsmf\fR(5)
-.SH NOTES
-The \fBidmapd\fR service is managed by the service management facility,
-\fBsmf\fR(5). The service identifier for the \fBidmapd\fR service is
-\fBsvc:/system/idmap\fR.
-.sp
-.LP
-Use the \fBsvcadm\fR command to perform administrative actions on this service,
-such as enabling, disabling, or restarting the service. These actions require
-the \fBsolaris.smf.manage.idmap\fR authorization. Use the \fBsvcs\fR command to
-query the service's status.
-.sp
-.LP
-Windows user names are case-insensitive, while UNIX user names are
-case-sensitive. The case of Windows names as they appear in \fBidmap\fR
-name-rules and \fBidmap show\fR command lines is irrelevant.
-.sp
-.LP
-Because common practice in UNIX environments is to use all-lowercase user
-names, wildcard name-rules map Windows names to UNIX user/group names as
-follows: first, the canonical Windows name (that is, in the case as it appears
-in the directory) is used as a UNIX user or group name. If there is no such
-UNIX entity, then the Windows name's case is folded to lowercase and the result
-is used as the UNIX user or group name.
-.sp
-.LP
-As a result of this differing treatment of case, user names that appear to be
-alike might not be recognized as matches. You must create rules to handle such
-pairings of strings that differ only in case. For example, to map the Windows
-user \fBsam@example\fR to the Solaris user \fBSam\fR, you must create the
-following rules:
-.sp
-.in +2
-.nf
-# \fBidmap add "winuser:*@example" "unixuser:*"\fR
-# \fBidmap add winuser:sam@example unixuser:Sam\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-For guidance on modifying an Active Directory schema, consult the Microsoft
-document, \fIStep-by-Step Guide to Using Active Directory Schema and Display
-Specifiers\fR, which you can find at their \fBtechnet\fR web site,
-http://technet.microsoft.com/\&.
diff --git a/usr/src/man/man1m/idmapd.1m b/usr/src/man/man1m/idmapd.1m
deleted file mode 100644
index 715470b231..0000000000
--- a/usr/src/man/man1m/idmapd.1m
+++ /dev/null
@@ -1,116 +0,0 @@
-'\" te
-.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH IDMAPD 1M "Jun 5, 2007"
-.SH NAME
-idmapd \- Native Identity Mapping service daemon
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/idmapd\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBidmapd\fR daemon maps Windows Security Identifiers (SIDs) to POSIX
-Identifiers (UIDs/GIDs) and conversely.
-.sp
-.LP
-The \fBidmap\fR(1M) utility provides a front end to the \fBidmapd\fR daemon.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/var/idmap/idmap.db\fR\fR
-.ad
-.sp .6
-.RS 4n
-Database in which to store local name-based ID mapping rules. The contents of
-the database are private. The database should not be accessed or modified
-directly.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/run/idmap/idmap.db\fR\fR
-.ad
-.sp .6
-.RS 4n
-Database in which to cache ID mappings that are generated by ephemeral ID
-mapping and by name-based mapping. The contents of the database are private.
-The database should not be accessed or modified directly.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability See below.
-.TE
-
-.sp
-.LP
-Interface stability for these components is as follows:
-.sp
-.ne 2
-.na
-\fB\fBsvc:/system/idmap\fR\fR
-.ad
-.sp .6
-.RS 4n
-Committed
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/idmap/idmap.db\fR\fR
-.ad
-.sp .6
-.RS 4n
-Project Private
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/run/idmap/idmap.db\fR\fR
-.ad
-.sp .6
-.RS 4n
-Project Private
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBsvcs\fR(1), \fBidmap\fR(1M), \fBsvcadm\fR(1M), \fBsvccfg\fR(1M),
-\fBdefaultdomain\fR(4), \fBattributes\fR(5), \fBsmf\fR(5)
-.SH NOTES
-.sp
-.LP
-The \fBidmapd\fR service is managed by the service management facility (SMF).
-The service identifier for the \fBidmapd\fR service is \fBsvc:/system/idmap\fR.
-.sp
-.LP
-Use the \fBsvcadm\fR command to perform administrative actions on this service,
-such as enabling, disabling, or restarting the service. These actions require
-the \fBsolaris.smf.manage.idmap\fR authorization. Use the \fBsvcs\fR command to
-query the service's status.
-.sp
-.LP
-The functionality of this daemon might change in a future release of the
-Solaris operating system.
diff --git a/usr/src/man/man1m/idsconfig.1m b/usr/src/man/man1m/idsconfig.1m
deleted file mode 100644
index adb5081a09..0000000000
--- a/usr/src/man/man1m/idsconfig.1m
+++ /dev/null
@@ -1,180 +0,0 @@
-'\" te
-.\" Copyright (C) 2001, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH IDSCONFIG 1M "May 13, 2017"
-.SH NAME
-idsconfig \- prepare an iPlanet Directory Server (iDS) to be populated with
-data and serve LDAP clients
-.SH SYNOPSIS
-.LP
-.nf
-\fB /usr/lib/ldap/idsconfig\fR [\fB-v\fR] [\fB-i\fR \fIinput_configfile\fR]
- [\fB-o\fR \fIoutput_configfile\fR]
-.fi
-
-.SH DESCRIPTION
-.LP
-Use the \fBidsconfig\fR tool to set up an iPlanet Directory Server (iDS). You
-can specify the input configuration file with the \fB-i\fR option on the
-command line. Alternatively, the tool will prompt the user for configuration
-information. The input configuration file is created by \fBidsconfig\fR with
-the \fB-o\fR option on a previous run.
-.sp
-.LP
-The first time a server is set up, the user is prompted for all the required
-information. Future installations on that machine can use the configuration
-file previously generated by \fBidsconfig\fR using the \fB-o\fR option.
-.sp
-.LP
-The output configuration file contains the directory administrator's password
-in clear text. Thus, if you are creating an output configuration file, take
-appropriate security precautions.
-.sp
-.LP
-You should back up the directory server's configuration and data prior to
-running this command.
-.SH OPTIONS
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-i\fR \fIinput_configfile\fR\fR
-.ad
-.RS 24n
-Specify the file name for \fBidsconfig\fR to use as a configuration file. This
-file will be read by \fBidsconfig\fR, and the values in the file will be used
-to configure the server. Do not manually edit \fIinput_configfile\fR. The
-\fIinput_configfile\fR is only partially validated, as \fBidsconfig\fR assumes
-that the file was created by a previous invocation of the command.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-o\fR \fIoutput_configfile\fR\fR
-.ad
-.RS 24n
-Create a configuration file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.RS 24n
-Verbose output.
-.RE
-
-.SH OPERANDS
-.LP
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fB\fIinput_configfile\fR\fR
-.ad
-.RS 21n
-Name of configuration file for \fBidsconfig\fR to use.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIoutput_configfile\fR\fR
-.ad
-.RS 21n
-Configuration file created by \fBidsconfig\fR.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRPrompting the User for Input
-.sp
-.LP
-In the following example, the user is prompted for information to set up iDS.
-
-.sp
-.in +2
-.nf
-example# \fBidsconfig\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRCreating an Output Configuration File
-.sp
-.LP
-In the following example, the user is prompted for information to set up iDS,
-and an output configuration file, \fBconfig.1\fR, is created when completed.
-
-.sp
-.in +2
-.nf
-example# \fBidsconfig -o config.1\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRSetting up iDS Using the Specified Configuration File
-.sp
-.LP
-In the following example, iDS is set up by using the values specified in the
-configuration file, \fBconfig.1\fR. The verbose mode is specified, so detailed
-information will print to the screen.
-
-.sp
-.in +2
-.nf
-example# \fBidsconfig -v -i config.1\fR
-.fi
-.in -2
-.sp
-
-.SH EXIT STATUS
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR \fR
-.ad
-.RS 6n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB>\fB0\fR\fR
-.ad
-.RS 6n
-An error occurred.
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-.LP
-\fBldap\fR(1), \fBldapadd\fR(1), \fBldapdelete\fR(1), \fBldaplist\fR(1),
-\fBldapmodify\fR(1), \fBldapmodrdn\fR(1), \fBldapsearch\fR(1),
-\fBldap_cachemgr\fR(1M), \fBldapaddent\fR(1M), \fBldapclient\fR(1M),
-\fBresolv.conf\fR(4), \fBattributes\fR(5)
diff --git a/usr/src/man/man1m/if_mpadm.1m b/usr/src/man/man1m/if_mpadm.1m
deleted file mode 100644
index f726e8adc8..0000000000
--- a/usr/src/man/man1m/if_mpadm.1m
+++ /dev/null
@@ -1,133 +0,0 @@
-'\" te
-.\" Copyright (C) 2009, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH IF_MPADM 1M "Sep 02, 2015"
-.SH NAME
-if_mpadm \- administer interfaces in an IP multipathing group
-.SH SYNOPSIS
-.LP
-.nf
-\fBif_mpadm\fR \fB-d\fR | \fB-r\fR \fIifname\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBif_mpadm\fR utility administers IP interfaces that are part of an IP
-Multipathing (IPMP) group. Currently, administration is limited to offlining IP
-interfaces and undoing previous offline operations.
-.LP
-When an IP interface is taken offline, all IP data traffic that was flowing
-over the IP interface is moved to another IP interface in the IPMP group. In
-addition, all \fBUP\fR IP addresses hosted on the IP interface are brought
-down, causing \fBin.mpathd\fR(1M) to stop probe-based failure detection on the
-IP interface. As a result, an offline IP interface will not be used for any
-inbound or outbound IP traffic. Only IP interfaces that are in an IPMP group
-may be brought offline. If the IP interface is the last functioning interface
-in the IPMP group, the offline operation will fail.
-.LP
-When an offline operation is undone, any IP addresses hosted on that IP
-interface are brought \fBUP\fR and will be considered by \fBin.mpathd\fR for
-probe-based failure detection. In addition, provided the IP interface is
-otherwise active (see \fBin.mpathd\fR(1M)), it will again be used to send and
-receive IP data traffic for the IPMP group. Note that not all offline
-operations can be undone. For instance, \fBin.mpathd\fR may have offlined an IP
-interface because its hardware address was not unique within its IPMP group.
-The \fBipmpstat\fR utility can be used to determine why an IP interface is
-offline, identify which IP interfaces in a group are being used for inbound and
-outbound IP traffic, and more; see \fBipmpstat\fR(1M).
-.SH OPTIONS
-.LP
-The \fBif_mpadm\fR utility supports the following options:
-.sp
-.ne 2
-.na
-\fB\fB-d\fR \fIifname\fR\fR
-.ad
-.RS 13n
-Offline the IP interface specified by \fIifname\fR. If \fIifname\fR is not in
-an IPMP group, or the offline would cause the IPMP group to lose network
-connectivity, the operation will fail.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-r\fR \fIifname\fR\fR
-.ad
-.RS 13n
-Undo a previous offline of the IP interface specified by \fIifname\fR. If
-\fIifname\fR is not offline, the operation will fail.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fROfflining an IP Interface
-.LP
-The following command offlines the IP interface \fBunder0\fR, causing any IP
-packets that were being sent and received through it to be handled by another
-IP interface in its group.
-
-.sp
-.in +2
-.nf
-example% \fBif_mpadm -d under0\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRUndoing a Previous Offline Operation
-.LP
-Use the following command to undo the operation in the previous example:
-
-.sp
-.in +2
-.nf
-example% \fBif_mpadm -r under0\fR
-.fi
-.in -2
-.sp
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Unstable
-.TE
-
-.SH SEE ALSO
-.LP
-\fBifconfig\fR(1M), \fBin.mpathd\fR(1M), \fBipmpstat\fR(1M),
-\fBattributes\fR(5)
-.SH DIAGNOSTICS
-.LP
-cannot offline: no other functioning interfaces are in its IPMP group.
-.RS +4
-\fBDescription: \fR
-.sp
-.LP
-This message means that offlining the IP interface would leave the IPMP group
-without network connectivity.
-.RE
-
-.sp
-.LP
-cannot offline: not a physical interface or not in an IPMP group
-.RS +4
-\fBDescription: \fR
-.sp
-.LP
-This means that the IP interface is not an underlying interface in an IPMP
-group, and therefore is not eligible to be offlined.
-.RE
-
diff --git a/usr/src/man/man1m/ifconfig.1m b/usr/src/man/man1m/ifconfig.1m
deleted file mode 100644
index 83547719d3..0000000000
--- a/usr/src/man/man1m/ifconfig.1m
+++ /dev/null
@@ -1,2527 +0,0 @@
-'\" te
-.\" Copyright (C) 2012, Darren Reed. All rights reserved
-.\" Copyright (C) 2009, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 1989 AT&T
-.\" Copyright (c) 1983 Regents of the University of California. All rights reserved. The Berkeley software License Agreement specifies the terms and conditions for redistribution.
-.TH IFCONFIG 1M "June 13, 2021"
-.SH NAME
-ifconfig \- configure network interface parameters
-.SH SYNOPSIS
-.nf
-\fBifconfig\fR \fIinterface\fR [\fIaddress_family\fR] [\fIaddress\fR [\fI/prefix_length\fR]
- [\fIdest_address\fR]] [\fBaddif\fR \fIaddress\fR [\fI/prefix_length\fR]]
- [\fBremoveif\fR \fIaddress\fR [\fI/prefix_length\fR]] [\fBarp\fR | \fB-arp\fR]
- [\fBauth_algs\fR \fIauthentication algorithm\fR] [\fBencr_algs\fR \fIencryption algorithm\fR]
- [\fBencr_auth_algs\fR \fIauthentication algorithm\fR] [\fBauto-revarp\fR]
- [\fBbroadcast\fR \fIaddress\fR] [\fBdeprecated\fR | \fB-deprecated\fR]
- [\fBpreferred\fR | \fB-preferred\fR] [\fBdestination\fR \fIdest_address\fR]
- [ether [\fIaddress\fR]] [\fBfailover\fR | \fB-failover\fR] [\fBgroup\fR
- [\fIname\fR | ""\fB\fR]] [\fBindex\fR \fIif_index\fR] [ipmp] [\fBmetric\fR \fIn\fR] [modlist]
- [modinsert \fImod_name@pos\fR] [modremove \fImod_name@pos\fR]
- [\fBmtu\fR \fIn\fR] [\fBnetmask\fR \fImask\fR] [\fBplumb\fR] [\fBunplumb\fR] [\fBprivate\fR
- | \fB-private\fR] [\fBnud\fR | \fB-nud\fR] [\fBset\fR [\fIaddress\fR] [\fI/netmask\fR]]
- [\fBstandby\fR | \fB-standby\fR] [\fBsubnet\fR \fIsubnet_address\fR] [\fBtdst\fR
- \fItunnel_dest_address\fR] [\fBtoken\fR \fIaddress\fR/\fIprefix_length\fR]
- [\fBtsrc\fR \fItunnel_src_address\fR] [\fBtrailers\fR | \fB-trailers\fR]
- [\fBup\fR] [\fBdown\fR] [\fBusesrc\fR [\fIname\fR | none]] [\fBxmit\fR | \fB-xmit\fR]
- [\fBencaplimit\fR \fIn\fR | \fB-encaplimit\fR] [\fBthoplimit\fR \fIn\fR] [\fBrouter\fR
- | \fB-router\fR] [zone \fIzonename\fR | \fB-zone\fR | \fB-all-zones\fR]
-.fi
-
-.LP
-.nf
-\fBifconfig\fR [\fIaddress_family\fR] \fIinterface\fR {\fBauto-dhcp\fR | \fBdhcp\fR} [\fBprimary\fR]
- [\fBwait\fR \fIseconds\fR] \fBdrop\fR | \fBextend\fR | \fBinform\fR | \fBping\fR
- | \fBrelease\fR | \fBstart\fR | \fBstatus\fR
-.fi
-
-.SH DESCRIPTION
-The command \fBifconfig\fR is used to assign an address to a network interface
-and to configure network interface parameters. The \fBifconfig\fR command must
-be used at boot time to define the network address of each interface present on
-a machine; it may also be used at a later time to redefine an interface's
-address or other operating parameters. If no option is specified,
-\fBifconfig\fR displays the current configuration for a network interface. If
-an address family is specified, \fBifconfig\fR reports only the details
-specific to that address family. Only privileged users may modify the
-configuration of a network interface. Options appearing within braces
-(\fB{\|}\fR) indicate that one of the options must be specified.
-.SS Network Interface Observability
-Network interface observability with \fBifconfig\fR is limited to those
-network interfaces that have been prepared for use with the IP
-protocol suite. The preferred method for configuring a network
-interface for use with TCP/IP is with \fBipadm\fR and alternatively
-with the use of the \fBplumb\fR option as documented below. Network
-interfaces that have not been configured for use with the IP
-protocol suite can only be observed by using the \fBdladm\fR command.
-.SS DHCP Configuration
-The forms of \fBifconfig\fR that use the \fBauto-dhcp\fR or \fBdhcp\fR
-arguments are used to control the Dynamic Host Configuration Protocol
-("\fBDHCP\fR") configuration of the interface. In this mode, \fBifconfig\fR is
-used to control operation of \fBdhcpagent\fR(1M), the \fBDHCP\fR client daemon.
-Once an interface is placed under \fBDHCP\fR control by using the \fBstart\fR
-operand, \fBifconfig\fR should not, in normal operation, be used to modify the
-address or characteristics of the interface. If the address of an interface
-under \fBDHCP\fR is changed, \fBdhcpagent\fR will remove the interface from its
-control.
-.SH OPTIONS
-When the \fBifconfig\fR command is executed without any options
-its behavior is the same as when the \fB\-a\fR option is supplied
-with no other options or arguments.
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fBaddif\fR \fIaddress\fR\fR
-.ad
-.sp .6
-.RS 4n
-Create the next unused logical interface on the specified physical interface.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBall-zones\fR\fR
-.ad
-.sp .6
-.RS 4n
-Make the interface available to every shared-IP zone on the system. The
-appropriate zone to which to deliver data is determined using the
-\fBtnzonecfg\fR database. This option is available only if the system is
-configured with the Solaris Trusted Extensions feature.
-.sp
-The \fBtnzonecfg\fR database is described in the \fBtnzonecfg(4)\fR man page,
-which is part of the \fISolaris Trusted Extensions Reference Manual\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBanycast\fR\fR
-.ad
-.sp .6
-.RS 4n
-Marks the logical interface as an anycast address by setting the \fBANYCAST\fR
-flag. See "INTERFACE FLAGS," below, for more information on anycast.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-anycast\fR\fR
-.ad
-.sp .6
-.RS 4n
-Marks the logical interface as not an anycast address by clearing the
-\fBANYCAST\fR flag.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBarp\fR\fR
-.ad
-.sp .6
-.RS 4n
-Enable the use of the Address Resolution Protocol ("\fBARP\fR") in mapping
-between network level addresses and link level addresses (default). This is
-currently implemented for mapping between IPv4 addresses and MAC addresses.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-arp\fR\fR
-.ad
-.sp .6
-.RS 4n
-Disable the use of the \fBARP\fR on a physical interface. ARP cannot be
-disabled on an IPMP IP interface.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBauth_algs\fR \fIauthentication algorithm\fR\fR
-.ad
-.sp .6
-.RS 4n
-For a tunnel, enable IPsec \fBAH\fR with the authentication algorithm
-specified. The algorithm can be either a number or an algorithm name, including
-\fIany\fR to express no preference in algorithm. All IPsec tunnel properties
-must be specified on the same command line. To disable tunnel security, specify
-an \fBauth_alg\fR of \fBnone\fR.
-.sp
-It is now preferable to use the \fBipsecconf\fR(1M) command when configuring a
-tunnel's security properties. If \fBipsecconf\fR was used to set a tunnel's
-security properties, this keyword will not affect the tunnel.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBauto-dhcp\fR\fR
-.ad
-.sp .6
-.RS 4n
-Use DHCP to automatically acquire an address for this interface. This option
-has a completely equivalent alias called \fBdhcp\fR.
-.sp
-For IPv6, the interface specified must be the zeroth logical interface (the
-physical interface name), which has the link-local address.
-.sp
-.ne 2
-.na
-\fBprimary\fR
-.ad
-.sp .6
-.RS 4n
-Defines the interface as the \fBprimary\fR. The interface is defined as the
-preferred one for the delivery of client-wide configuration data. Only one
-interface can be the primary at any given time. If another interface is
-subsequently selected as the primary, it replaces the previous one. Nominating
-an interface as the primary one will not have much significance once the client
-work station has booted, as many applications will already have started and
-been configured with data read from the previous primary interface.
-.RE
-
-.sp
-.ne 2
-.na
-\fBwait \fIseconds\fR\fR
-.ad
-.sp .6
-.RS 4n
-The \fBifconfig\fR command will wait until the operation either completes or
-for the interval specified, whichever is the sooner. If no wait interval is
-given, and the operation is one that cannot complete immediately,
-\fBifconfig\fR will wait 30 seconds for the requested operation to complete.
-The symbolic value \fBforever\fR may be used as well, with obvious meaning.
-.RE
-
-.sp
-.ne 2
-.na
-\fBdrop\fR
-.ad
-.sp .6
-.RS 4n
-Remove the specified interface from \fBDHCP\fR control without notifying the
-DHCP server, and record the current lease for later use. Additionally, for
-IPv4, set the IP address to zero. For IPv6, unplumb all logical interfaces
-plumbed by \fBdhcpagent\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBextend\fR
-.ad
-.sp .6
-.RS 4n
-Attempt to extend the lease on the interface's IP address. This is not
-required, as the agent will automatically extend the lease well before it
-expires.
-.RE
-
-.sp
-.ne 2
-.na
-\fBinform\fR
-.ad
-.sp .6
-.RS 4n
-Obtain network configuration parameters from \fBDHCP\fR without obtaining a
-lease on \fBIP\fR addresses. This is useful in situations where an \fBIP\fR
-address is obtained through mechanisms other than \fBDHCP\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBping\fR
-.ad
-.sp .6
-.RS 4n
-Check whether the interface given is under \fBDHCP\fR control, which means that
-the interface is managed by the \fBDHCP\fR agent and is working properly. An
-exit status of \fB0\fR means success.
-.RE
-
-.sp
-.ne 2
-.na
-\fBrelease\fR
-.ad
-.sp .6
-.RS 4n
-Relinquish the IP addresses on the interface by notifying the server and
-discard the current lease. For IPv4, set the IP address to zero. For IPv6, all
-logical interfaces plumbed by \fBdhcpagent\fR are unplumbed.
-.RE
-
-.sp
-.ne 2
-.na
-\fBstart\fR
-.ad
-.sp .6
-.RS 4n
-Start \fBDHCP\fR on the interface.
-.RE
-
-.sp
-.ne 2
-.na
-\fBstatus\fR
-.ad
-.sp .6
-.RS 4n
-Display the \fBDHCP\fR configuration status of the interface.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBauto-revarp\fR\fR
-.ad
-.sp .6
-.RS 4n
-Use the Reverse Address Resolution Protocol (RARP) to automatically acquire an
-address for this interface. This will fail if the interface does not support
-RARP; for example, IPoIB (IP over InfiniBand), and on IPv6 interfaces.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBbroadcast\fR \fIaddress\fR\fR
-.ad
-.sp .6
-.RS 4n
-For IPv4 only. Specify the address to use to represent broadcasts to the
-network. The default broadcast address is the address with a host part of all
-\fB1\fR's. A "\fB+\fR" (plus sign) given for the broadcast value causes the
-broadcast address to be reset to a default appropriate for the (possibly new)
-address and netmask. The arguments of \fBifconfig\fR are interpreted left to
-right. Therefore
-.sp
-.in +2
-.nf
-example% ifconfig -a netmask + broadcast +
-.fi
-.in -2
-.sp
-
-and
-.sp
-.in +2
-.nf
-example% ifconfig -a broadcast + netmask +
-.fi
-.in -2
-.sp
-
-may result in different values being assigned for the broadcast addresses of
-the interfaces.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdeprecated\fR\fR
-.ad
-.sp .6
-.RS 4n
-Marks the logical interface as deprecated. An address associated with a
-deprecated interface will not be used as source address for outbound packets
-unless either there are no other addresses available on the interface or the
-application has bound to this address explicitly. The status display shows
-\fBDEPRECATED\fR as part of flags. See for information on the flags supported
-by \fBifconfig\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-deprecated\fR\fR
-.ad
-.sp .6
-.RS 4n
-Marks a logical interface as not deprecated. An address associated with such an
-interface could be used as a source address for outbound packets.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpreferred\fR\fR
-.ad
-.sp .6
-.RS 4n
-Marks the logical interface as preferred. This option is only valid for IPv6
-addresses. Addresses assigned to preferred logical interfaces are preferred as
-source addresses over all other addresses configured on the system, unless the
-address is of an inappropriate scope relative to the destination address.
-Preferred addresses are used as source addresses regardless of which physical
-interface they are assigned to. For example, you can configure a preferred
-source address on the loopback interface and advertise reachability of this
-address by using a routing protocol.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-preferred\fR\fR
-.ad
-.sp .6
-.RS 4n
-Marks the logical interface as not preferred.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdestination\fR \fIdest_address\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set the destination address for a point-to point interface.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdhcp\fR\fR
-.ad
-.sp .6
-.RS 4n
-This option is an alias for option \fBauto-dhcp\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdown\fR\fR
-.ad
-.sp .6
-.RS 4n
-Mark a logical interface as "down". (That is, turn off the \fBIFF_UP\fR bit.)
-When a logical interface is marked "down," the system does not attempt to use
-the address assigned to that interface as a source address for outbound packets
-and will not recognize inbound packets destined to that address as being
-addressed to this host. Additionally, when all logical interfaces on a given
-physical interface are "down," the physical interface itself is disabled.
-.sp
-When a logical interface is down, all routes that specify that interface as the
-output (using the \fB-ifp\fR option in the \fBroute\fR(1M) command or
-\fBRTA_IFP\fR in a \fBroute\fR(7P) socket) are removed from the forwarding
-table. Routes marked with \fBRTF_STATIC\fR are returned to the table if the
-interface is brought back up, while routes not marked with \fBRTF_STATIC\fR are
-simply deleted.
-.sp
-When all logical interfaces that could possibly be used to reach a particular
-gateway address are brought down (specified without the interface option as in
-the previous paragraph), the affected gateway routes are treated as though they
-had the \fBRTF_BLACKHOLE\fR flag set. All matching packets are discarded
-because the gateway is unreachable.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBencaplimit\fR \fIn\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set the tunnel encapsulation limit for the interface to n. This option applies
-to IPv4-in-IPv6 and IPv6-in-IPv6 tunnels only, and it simply modifies the
-\fBencaplimit\fR link property of the underlying IPv6 tunnel link (see
-\fBdladm\fR(1M)). The tunnel encapsulation limit controls how many more tunnels
-a packet can enter before it leaves any tunnel, that is, the tunnel nesting
-level.
-.sp
-This option is obsolete, superseded by the \fBdladm\fR(1M) \fBencaplimit\fR
-link property.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-encaplimit\fR\fR
-.ad
-.sp .6
-.RS 4n
-Disable generation of the tunnel encapsulation limit. This option applies only
-to IPv4-in-IPv6 and IPv6-in-IPv6 tunnels. This simply sets the \fBencaplimit\fR
-link property of the underlying IPv6 tunnel link to 0 (see \fBdladm\fR(1M)
-\fBencaplimit\fR).
-.sp
-This option is obsolete, superseded by the \fBdladm\fR(1M) \fBencaplimit\fR
-link property.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBencr_auth_algs\fR \fIauthentication algorithm\fR\fR
-.ad
-.sp .6
-.RS 4n
-For a tunnel, enable IPsec \fBESP\fR with the authentication algorithm
-specified. It can be either a number or an algorithm name, including \fBany\fR
-or \fBnone\fR, to indicate no algorithm preference. If an \fBESP\fR encryption
-algorithm is specified but the authentication algorithm is not, the default
-value for the \fBESP\fR authentication algorithm will be \fBany\fR.
-.sp
-It is now preferable to use the \fBipsecconf\fR(1M) command when configuring a
-tunnel's security properties. If \fBipsecconf\fR was used to set a tunnel's
-security properties, this keyword will not affect the tunnel.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBencr_algs\fR \fIencryption algorithm\fR\fR
-.ad
-.sp .6
-.RS 4n
-For a tunnel, enable IPsec \fBESP\fR with the encryption algorithm specified.
-It can be either a number or an algorithm name. Note that all IPsec tunnel
-properties must be specified on the same command line. To disable tunnel
-security, specify the value of \fBencr_alg\fR as \fBnone\fR. If an \fBESP\fR
-authentication algorithm is specified, but the encryption algorithm is not, the
-default value for the \fBESP\fR encryption will be \fBnull\fR.
-.sp
-It is now preferable to use the \fBipsecconf\fR(1M) command when configuring a
-tunnel's security properties. If \fBipsecconf\fR was used to set a tunnel's
-security properties, this keyword will not affect the tunnel.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBether\fR [ \fIaddress\fR ]\fR
-.ad
-.sp .6
-.RS 4n
-If no address is given and the user is root or has sufficient privileges to
-open the underlying datalink, then display the current Ethernet address
-information.
-.sp
-Otherwise, if the user is root or has sufficient privileges, set the Ethernet
-address of the interfaces to \fIaddress\fR. The address is an Ethernet address
-represented as \fIx:x:x:x:x:x\fR where \fIx\fR is a hexadecimal number between
-0 and FF. Similarly, for the IPoIB (IP over InfiniBand) interfaces, the address
-will be 20 bytes of colon-separated hex numbers between \fB0\fR and \fBFF\fR.
-.sp
-Some, though not all, Ethernet interface cards have their own addresses. To use
-cards that do not have their own addresses, refer to section 3.2.3(4) of the
-IEEE 802.3 specification for a definition of the locally administered address
-space. Note that all IP interfaces in an IPMP group must have unique hardware
-addresses; see \fBin.mpathd\fR(1M).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-failover\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set \fBNOFAILOVER\fR on the logical interface. This makes the associated
-address available for use by \fBin.mpathd\fR to perform probe-based failure
-detection for the associated physical IP interface. As a side effect,
-\fBDEPRECATED\fR will also be set on the logical interface. This operation is
-not permitted on an IPMP IP interface.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfailover\fR\fR
-.ad
-.sp .6
-.RS 4n
-Clear \fBNOFAILOVER\fR on the logical interface. This is the default. These
-logical interfaces are subject to migration when brought up (see \fBIP
-MULTIPATHING GROUPS\fR).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBgroup\fR [ \fIname\fR |\fB""\fR]\fR
-.ad
-.sp .6
-.RS 4n
-When applied to a physical interface, it places the interface into the named
-group. If the group does not exist, it will be created, along with one or more
-IPMP IP interfaces (for IPv4, IPv6, or both). Any \fBUP\fR addresses that are
-not also marked \fBNOFAILOVER\fR are subject to migration to the IPMP IP
-interface (see \fBIP MULTIPATHING GROUPS\fR). Specifying a group name of
-\fB""\fR removes the physical IP interface from the group.
-.sp
-When applied to a physical IPMP IP interface, it renames the IPMP group to have
-the new name. If the name already exists, or a name of \fB""\fR is specified,
-it fails. Renaming IPMP groups is discouraged. Instead, the IPMP IP interface
-should be given a meaningful name when it is created by means of the \fBipmp\fR
-subcommand, which the system will also use as the IPMP group name.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBindex\fR \fIn\fR\fR
-.ad
-.sp .6
-.RS 4n
-Change the interface index for the interface. The value of \fIn\fR must be an
-interface index (\fIif_index\fR) that is not used on another interface.
-\fIif_index\fR will be a non-zero positive number that uniquely identifies the
-network interface on the system.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBipmp\fR\fR
-.ad
-.sp .6
-.RS 4n
-Create an IPMP IP interface with the specified name. An interface must be
-separately created for use by IPv4 and IPv6. The \fIaddress_family\fR parameter
-controls whether the command applies to IPv4 or IPv6 (IPv4 if unspecified). All
-IPMP IP interfaces have the \fBIPMP\fR flag set.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmetric\fR \fIn\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set the routing metric of the interface to \fIn\fR; if no value is specified,
-the default is \fB0\fR. The routing metric is used by the routing protocol.
-Higher metrics have the effect of making a route less favorable. Metrics are
-counted as addition hops to the destination network or host.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmodinsert\fR \fImod_name@pos\fR\fR
-.ad
-.sp .6
-.RS 4n
-Insert a module with name \fImod_name\fR to the stream of the device at
-position \fIpos\fR. The position is relative to the stream head. Position
-\fB0\fR means directly under stream head.
-.sp
-Based upon the example in the \fBmodlist\fR option, use the following command
-to insert a module with name \fBipqos\fR under the \fBip\fR module and above
-the firewall module:
-.sp
-.in +2
-.nf
-example% ifconfig eri0 modinsert ipqos@2
-.fi
-.in -2
-.sp
-
-A subsequent listing of all the modules in the stream of the device follows:
-.sp
-.in +2
-.nf
-example% ifconfig eri0 modlist
-0 arp
-1 ip
-2 ipqos
-3 firewall
-4 eri
-.fi
-.in -2
-.sp
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmodlist\fR\fR
-.ad
-.sp .6
-.RS 4n
-List all the modules in the stream of the device.
-.sp
-The following example lists all the modules in the stream of the device:
-.sp
-.in +2
-.nf
-example% ifconfig eri0 modlist
-0 arp
-1 ip
-2 firewall
-4 eri
-.fi
-.in -2
-.sp
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmodremove\fR \fImod_name@pos\fR\fR
-.ad
-.sp .6
-.RS 4n
-Remove a module with name \fImod_name\fR from the stream of the device at
-position \fIpos\fR. The position is relative to the stream head.
-.sp
-Based upon the example in the \fBmodinsert\fR option, use the following command
-to remove the firewall module from the stream after inserting the \fBipqos\fR
-module:
-.sp
-.in +2
-.nf
-example% ifconfig eri0 modremove firewall@3
-.fi
-.in -2
-.sp
-
-A subsequent listing of all the modules in the stream of the device follows:
-.sp
-.in +2
-.nf
-example% ifconfig eri0 modlist
-0 arp
-1 ip
-2 ipqos
-3 eri
-.fi
-.in -2
-.sp
-
-Note that the core IP stack modules, for example, \fBip\fR and \fBtun\fR
-modules, cannot be removed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmtu\fR \fIn\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set the maximum transmission unit of the interface to \fIn\fR. For many types
-of networks, the \fBmtu\fR has an upper limit, for example, \fB1500\fR for
-Ethernet. This option sets the \fBFIXEDMTU\fR flag on the affected interface.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnetmask\fR \fImask\fR\fR
-.ad
-.sp .6
-.RS 4n
-For IPv4 only. Specify how much of the address to reserve for subdividing
-networks into subnetworks. The mask includes the network part of the local
-address and the subnet part, which is taken from the host field of the address.
-The mask contains 1's for the bit positions in the 32-bit address which are to
-be used for the network and subnet parts, and 0's for the host part. The mask
-should contain at least the standard network portion, and the subnet field
-should be contiguous with the network portion. The mask can be specified in one
-of four ways:
-.RS +4
-.TP
-1.
-with a single hexadecimal number with a leading 0x,
-.RE
-.RS +4
-.TP
-2.
-with a dot-notation address,
-.RE
-.RS +4
-.TP
-3.
-with a "\fB+\fR" (plus sign) address, or
-.RE
-.RS +4
-.TP
-4.
-with a pseudo host name/pseudo network name found in the network database
-\fBnetworks\fR(4).
-.RE
-If a "\fB+\fR" (plus sign) is given for the netmask value, the mask is looked
-up in the \fBnetmasks\fR(4) database. This lookup finds the longest matching
-netmask in the database by starting with the interface's IPv4 address as the
-key and iteratively masking off more and more low order bits of the address.
-This iterative lookup ensures that the \fBnetmasks\fR(4) database can be used
-to specify the netmasks when variable length subnetmasks are used within a
-network number.
-.sp
-If a pseudo host name/pseudo network name is supplied as the netmask value,
-netmask data may be located in the \fBhosts\fR or \fBnetworks\fR database.
-Names are looked up by first using \fBgethostbyname\fR(3NSL). If not found
-there, the names are looked up in \fBgetnetbyname\fR(3SOCKET). These interfaces
-may in turn use \fBnsswitch.conf\fR(4) to determine what data store(s) to use
-to fetch the actual value.
-.sp
-For both \fBinet\fR and \fBinet6\fR, the same information conveyed by
-\fImask\fR can be specified as a \fIprefix_length\fR attached to the
-\fIaddress\fR parameter.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnud\fR\fR
-.ad
-.sp .6
-.RS 4n
-Enables the neighbor unreachability detection mechanism on a point-to-point
-physical interface.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-nud\fR\fR
-.ad
-.sp .6
-.RS 4n
-Disables the neighbor unreachability detection mechanism on a point-to-point
-physical interface.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBplumb\fR\fR
-.ad
-.sp .6
-.RS 4n
-For a physical IP interface, open the datalink associated with the physical
-interface name and set up the plumbing needed for IP to use the datalink. When
-used with a logical interface name, this command is used to create a specific
-named logical interface on an existing physical IP interface.
-.sp
-An interface must be separately plumbed for IPv4 and IPv6 according to the
-\fIaddress_family\fR parameter (IPv4 if unspecified). Before an interface has
-been plumbed, it will not be shown by \fBifconfig\fR \fB-a\fR.
-.sp
-Note that IPMP IP interfaces are not tied to a specific datalink and are
-instead created with the \fBipmp\fR subcommand.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBprivate\fR\fR
-.ad
-.sp .6
-.RS 4n
-Tells the \fBin.routed\fR routing daemon that a specified logical interface
-should not be advertised.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-private\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify unadvertised interfaces.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBremoveif\fR \fIaddress\fR\fR
-.ad
-.sp .6
-.RS 4n
-Remove the logical interface on the physical interface specified that matches
-the \fIaddress\fR specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrouter\fR\fR
-.ad
-.sp .6
-.RS 4n
-Enable IP forwarding on the interface. When enabled, the interface is marked
-\fBROUTER\fR, and IP packets can be forwarded to and from the interface.
-Enabling \fBROUTER\fR on any IP interface in an IPMP group enables it on all IP
-interfaces in that IPMP group.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-router\fR\fR
-.ad
-.sp .6
-.RS 4n
-Disable IP forwarding on the interface. IP packets are not forwarded to and
-from the interface. Disabling \fBROUTER\fR on any IP interface in an IPMP group
-disables it on all IP interfaces in that IPMP group.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBset\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set the \fIaddress\fR, \fIprefix_length\fR or both, for a logical interface.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBstandby\fR\fR
-.ad
-.sp .6
-.RS 4n
-Mark the physical IP interface as a \fBSTANDBY\fR interface. If an interface is
-marked \fBSTANDBY\fR and is part of an IPMP group, the interface will not be
-used for data traffic unless another interface in the IPMP group becomes
-unusable. When a \fBSTANDBY\fR interface is functional but not being used for
-data traffic, it will also be marked \fBINACTIVE\fR. This operation is not
-permitted on an IPMP IP interface.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-standby\fR\fR
-.ad
-.sp .6
-.RS 4n
-Clear \fBSTANDBY\fR on the interface. This is the default.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsubnet\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set the subnet \fIaddress\fR for an interface.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBtdst\fR \fItunnel_dest_address\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set the destination address of a tunnel. The address should not be the same as
-the \fBdest_address\fR of the tunnel, because no packets leave the system over
-such a tunnel.
-.sp
-This option is obsolete, superseded by the \fBdladm\fR(1M) \fBcreate-iptun\fR
-and \fBmodify-iptun\fR subcommands.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBthoplimit\fR \fIn\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set the hop limit for a tunnel interface. The hop limit value is used as the
-\fBTTL\fR in the IPv4 header for the IPv6-in-IPv4 and IPv4-in-IPv4 tunnels. For
-IPv6-in-IPv6 and IPv4-in-IPv6 tunnels, the hop limit value is used as the hop
-limit in the IPv6 header. This option simply modifies the \fBhoplimit\fR link
-property of the underlying IP tunnel link (see \fBdladm\fR(1M)).
-.sp
-This option is obsolete, superseded by the \fBdladm\fR(1M) \fBhoplimit\fR link
-property.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBtoken\fR \fIaddress\fR/\fIprefix_length\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set the IPv6 token of an interface to be used for address autoconfiguration.
-.sp
-.in +2
-.nf
-example% \fBifconfig eri0 inet6 token ::1/64\fR
-.fi
-.in -2
-.sp
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBtrailers\fR\fR
-.ad
-.sp .6
-.RS 4n
-This flag previously caused a nonstandard encapsulation of IPv4 packets on
-certain link levels. Drivers supplied with this release no longer use this
-flag. It is provided for compatibility, but is ignored.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-trailers\fR\fR
-.ad
-.sp .6
-.RS 4n
-Disable the use of a "trailer" link level encapsulation.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBtsrc\fR \fItunnel_src_address\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set the source address of a tunnel. This is the source address on an outer
-encapsulating \fBIP\fR header. It must be an address of another interface
-already configured using \fBifconfig\fR.
-.sp
-This option is obsolete, superseded by the \fBdladm\fR(1M) \fBcreate-iptun\fR
-and \fBmodify-iptun\fR subcommands.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBunplumb\fR\fR
-.ad
-.sp .6
-.RS 4n
-For a physical or IPMP interface, remove all associated logical IP interfaces
-and tear down any plumbing needed for IP to use the interface. For an IPMP IP
-interface, this command will fail if the group is not empty. For a logical
-interface, the logical interface is removed.
-.sp
-An interface must be separately unplumbed for IPv4 and IPv6 according to the
-\fIaddress_family\fR parameter (IPv4 if unspecified). Upon success, the
-interface name will no longer appear in the output of \fBifconfig\fR \fB-a\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBup\fR\fR
-.ad
-.sp .6
-.RS 4n
-Mark a logical interface \fBUP\fR. As a result, the IP module will accept
-packets destined to the associated address (unless the address is zero), along
-with any associated multicast and broadcast IP addresses. Similarly, the IP
-module will allow packets to be sent with the associated address as a source
-address. At least one logical interface must be \fBUP\fR for the associated
-physical interface to send or receive packets
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBusesrc\fR [ \fIname\fR | \fBnone\fR ]\fR
-.ad
-.sp .6
-.RS 4n
-Specify a physical interface to be used for source address selection. If the
-keyword \fBnone\fR is used, then any previous selection is cleared.
-.sp
-When an application does not choose a non-zero source address using
-\fBbind\fR(3SOCKET), the system will select an appropriate source address based
-on the outbound interface and the address selection rules (see
-\fBipaddrsel\fR(1M)).
-.sp
-When \fBusesrc\fR is specified and the specified interface is selected in the
-forwarding table for output, the system looks first to the specified physical
-interface and its associated logical interfaces when selecting a source
-address. If no usable address is listed in the forwarding table, the ordinary
-selection rules apply. For example, if you enter:
-.sp
-.in +2
-.nf
-# \fBifconfig eri0 usesrc vni0\fR
-.fi
-.in -2
-.sp
-
-\&...and \fBvni0\fR has address 10.0.0.1 assigned to it, the system will prefer
-10.0.0.1 as the source address for any packets originated by local connections
-that are sent through \fBeri0\fR. Further examples are provided in the
-\fBEXAMPLES\fR section.
-.sp
-While you can specify any physical interface (or even loopback), be aware that
-you can also specify the virtual IP interface (see \fBvni\fR(7D)). The virtual
-IP interface is not associated with any physical hardware and is thus immune to
-hardware failures. You can specify any number of physical interfaces to use the
-source address hosted on a single virtual interface. This simplifies the
-configuration of routing-based multipathing. If one of the physical interfaces
-were to fail, communication would continue through one of the remaining,
-functioning physical interfaces. This scenario assumes that the reachability of
-the address hosted on the virtual interface is advertised in some manner, for
-example, through a routing protocol.
-.sp
-Because the \fBifconfig\fR \fBpreferred\fR option is applied to all interfaces,
-it is coarser-grained than the \fBusesrc\fR option. It will be overridden by
-\fBusesrc\fR and \fBsetsrc\fR (route subcommand), in that order.
-.sp
-IPMP and the \fBusesrc\fR option are mutually exclusive. That is, if an
-interface is part of an IPMP group or marked \fBSTANDBY\fR, then it cannot be
-specified by means of \fBusesrc\fR, and vice-versa.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBxmit\fR\fR
-.ad
-.sp .6
-.RS 4n
-Enable a logical interface to transmit packets. This is the default behavior
-when the logical interface is up.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-xmit\fR\fR
-.ad
-.sp .6
-.RS 4n
-Disable transmission of packets on an interface. The interface will continue to
-receive packets.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBzone\fR \fIzonename\fR\fR
-.ad
-.sp .6
-.RS 4n
-Place the logical interface in zone \fIzonename\fR. The named zone must be
-active in the kernel in the ready or running state. The interface is unplumbed
-when the zone is halted or rebooted. The zone must be configured to be an
-shared-IP zone. \fBzonecfg\fR(1M) is used to assign network interface names to
-exclusive-IP zones.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-zone\fR\fR
-.ad
-.sp .6
-.RS 4n
-Place IP interface in the global zone. This is the default.
-.RE
-
-.SH OPERANDS
-The \fIinterface\fR operand, as well as address parameters that affect it, are
-described below.
-.sp
-.ne 2
-.na
-\fB\fIinterface\fR\fR
-.ad
-.sp .6
-.RS 4n
-A string of one of the following forms:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fIname physical-unit\fR, for example, \fBeri0\fR or \fBce1\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fIname physical-unit\fR\fB:\fR\fIlogical-unit\fR, for example, \fBeri0:1\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBip.tun\fR\fIN\fR, \fBip6.tun\fR\fIN\fR, or \fBip6to4.tun\fR\fIN\fR for
-implicit IP tunnel links
-.RE
-If the interface name starts with a dash (-), it is interpreted as a set of
-options which specify a set of interfaces. In such a case, \fB-a\fR must be
-part of the options and any of the additional options below can be added in any
-order. If one of these interface names is given, the commands following it are
-applied to all of the interfaces that match.
-.sp
-.ne 2
-.na
-\fB\fB-a\fR\fR
-.ad
-.sp .6
-.RS 4n
-Apply the command to all interfaces of the specified address family. If no
-address family is supplied, either on the command line or by means of
-\fB/etc/default/inet_type\fR, then all address families will be selected.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-d\fR\fR
-.ad
-.sp .6
-.RS 4n
-Apply the commands to all "down" interfaces in the system.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-D\fR\fR
-.ad
-.sp .6
-.RS 4n
-Apply the commands to all interfaces not under \fBDHCP\fR (Dynamic Host
-Configuration Protocol) control.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-u\fR\fR
-.ad
-.sp .6
-.RS 4n
-Apply the commands to all "up" interfaces in the system.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-Z\fR\fR
-.ad
-.sp .6
-.RS 4n
-Apply the commands to all interfaces in the user's zone.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-4\fR\fR
-.ad
-.sp .6
-.RS 4n
-Apply the commands to all IPv4 interfaces.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-6\fR\fR
-.ad
-.sp .6
-.RS 4n
-Apply the commands to all IPv6 interfaces.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIaddress_family\fR\fR
-.ad
-.sp .6
-.RS 4n
-The address family is specified by the \fIaddress_family\fR parameter. The
-\fBifconfig\fR command currently supports the following families: \fBinet\fR
-and \fBinet6\fR. If no address family is specified, the default is \fBinet\fR.
-.sp
-\fBifconfig\fR honors the \fBDEFAULT_IP\fR setting in the
-\fB/etc/default/inet_type\fR file when it displays interface information . If
-\fBDEFAULT_IP\fR is set to \fBIP_VERSION4\fR, then \fBifconfig\fR will omit
-information that relates to IPv6 interfaces. However, when you explicitly
-specify an address family (\fBinet\fR or \fBinet6\fR) on the \fBifconfig\fR
-command line, the command line overrides the \fBDEFAULT_IP\fR settings.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIaddress\fR\fR
-.ad
-.sp .6
-.RS 4n
-For the IPv4 family (\fBinet\fR), the \fIaddress\fR is either a host name
-present in the host name data base (see \fBhosts\fR(4)) or in the Network
-Information Service (NIS) map \fBhosts\fR, or an IPv4 address expressed in the
-Internet standard "dot notation".
-.sp
-For the IPv6 family (\fBinet6\fR), the \fIaddress\fR is either a host name
-present in the host name data base (see \fBhosts\fR(4)) or in the Network
-Information Service (\fBNIS\fR) map \fBipnode\fR, or an IPv6 address expressed
-in the Internet standard colon-separated hexadecimal format represented as
-\fIx:x:x:x:x:x:x:x\fR where \fIx\fR is a hexadecimal number between \fB0\fR and
-\fBFFFF\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIprefix_length\fR\fR
-.ad
-.sp .6
-.RS 4n
-For the IPv4 and IPv6 families (\fBinet\fR and \fBinet6\fR), the
-\fIprefix_length\fR is a number between 0 and the number of bits in the
-address. For \fBinet\fR, the number of bits in the address is 32; for
-\fBinet6\fR, the number of bits in the address is 128. The \fIprefix_length\fR
-denotes the number of leading set bits in the netmask.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIdest_address\fR\fR
-.ad
-.sp .6
-.RS 4n
-If the \fIdest_address\fR parameter is supplied in addition to the
-\fIaddress\fR parameter, it specifies the address of the correspondent on the
-other end of a point-to-point link.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fItunnel_dest_address\fR\fR
-.ad
-.sp .6
-.RS 4n
-An address that is or will be reachable through an interface other than the
-tunnel being configured. This tells the tunnel where to send the tunneled
-packets. This address must not be the same as the interface destination address
-being configured.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fItunnel_src_address\fR\fR
-.ad
-.sp .6
-.RS 4n
-An address that is attached to an already configured interface that has been
-configured "up" with \fBifconfig\fR.
-.RE
-
-.SH INTERFACE FLAGS
-The \fBifconfig\fR command supports the following interface flags. The term
-"address" in this context refers to a logical interface, for example,
-\fBeri0:0\fR, while "interface" refers to the physical interface, for example,
-\fBeri0\fR.
-.sp
-.ne 2
-.na
-\fB\fBADDRCONF\fR\fR
-.ad
-.sp .6
-.RS 4n
-The address is from stateless \fBaddrconf\fR. The stateless mechanism allows a
-host to generate its own address using a combination of information advertised
-by routers and locally available information. Routers advertise prefixes that
-identify the subnet associated with the link, while the host generates an
-"interface identifier" that uniquely identifies an interface in a subnet. In
-the absence of information from routers, a host can generate link-local
-addresses. This flag is specific to IPv6.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBANYCAST\fR\fR
-.ad
-.sp .6
-.RS 4n
-Indicates an \fBanycast\fR address. An \fBanycast\fR address identifies the
-nearest member of a group of systems that provides a particular type of
-service. An \fBanycast\fR address is assigned to a group of systems. Packets
-are delivered to the nearest group member identified by the \fBanycast\fR
-address instead of being delivered to all members of the group.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBBROADCAST\fR\fR
-.ad
-.sp .6
-.RS 4n
-This \fBbroadcast\fR address is valid. This flag and \fBPOINTTOPOINT\fR are
-mutually exclusive
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBCoS\fR\fR
-.ad
-.sp .6
-.RS 4n
-This interface supports some form of Class of Service (CoS) marking. An example
-is the 802.1D user priority marking supported on \fBVLAN\fR interfaces. For
-IPMP IP interfaces, this will only be set if all interfaces in the group have
-CoS set.
-.sp
-Note that this flag is only set on interfaces over VLAN links and over Ethernet
-links that have their \fBdladm\fR(1M) \fBtagmode\fR link property set to
-\fBnormal\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBDEPRECATED\fR\fR
-.ad
-.sp .6
-.RS 4n
-This address is deprecated. This address will not be used as a source address
-for outbound packets unless there are no other addresses on this interface or
-an application has explicitly bound to this address. An IPv6 deprecated address
-is part of the standard mechanism for renumbering in IPv6 and will eventually
-be deleted when not used. For both IPv4 and IPv6, \fBDEPRECATED\fR is also set
-on all \fBNOFAILOVER\fR addresses, though this may change in a future release.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBDHCPRUNNING\fR\fR
-.ad
-.sp .6
-.RS 4n
-The logical interface is managed by \fBdhcpagent\fR(1M).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBDUPLICATE\fR\fR
-.ad
-.sp .6
-.RS 4n
-The logical interface has been disabled because the IP address configured on
-the interface is a duplicate. Some other node on the network is using this
-address. If the address was configured by DHCP or is temporary, the system will
-choose another automatically, if possible. Otherwise, the system will attempt
-to recover this address periodically and the interface will recover when the
-conflict has been removed from the network. Changing the address or netmask, or
-setting the logical interface to \fBup\fR will restart duplicate detection.
-Setting the interface to \fBdown\fR terminates recovery and removes the
-\fBDUPLICATE\fR flag.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBFAILED\fR\fR
-.ad
-.sp .6
-.RS 4n
-The \fBin.mpathd\fR daemon has determined that the interface has failed.
-\fBFAILED\fR interfaces will not be used to send or receive IP data traffic. If
-this is set on a physical IP interface in an IPMP group, IP data traffic will
-continue to flow over other usable IP interfaces in the IPMP group. If this is
-set on an IPMP IP interface, the entire group has failed and no data traffic
-can be sent or received over any interfaces in that group.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBFIXEDMTU\fR\fR
-.ad
-.sp .6
-.RS 4n
-The MTU has been set using the \fB-mtu\fR option. This flag is read-only.
-Interfaces that have this flag set have a fixed MTU value that is unaffected by
-dynamic MTU changes that can occur when drivers notify IP of link MTU changes.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBINACTIVE\fR\fR
-.ad
-.sp .6
-.RS 4n
-The physical interface is functioning but is not used to send or receive data
-traffic according to administrative policy. This flag is initially set by the
-\fBstandby\fR subcommand and is subsequently controlled by \fBin.mpathd\fR. It
-also set when \fBFAILBACK=no\fR mode is enabled (see \fBin.mpathd\fR(1M)) to
-indicate that the IP interface has repaired but is not being used.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBIPMP\fR\fR
-.ad
-.sp .6
-.RS 4n
-Indicates that this is an IPMP IP interface.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBLOOPBACK\fR\fR
-.ad
-.sp .6
-.RS 4n
-Indicates that this is the loopback interface.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBMULTI_BCAST\fR\fR
-.ad
-.sp .6
-.RS 4n
-Indicates that the broadcast address is used for multicast on this interface.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBMULTICAST\fR\fR
-.ad
-.sp .6
-.RS 4n
-The interface supports multicast. \fBIP\fR assumes that any interface that
-supports hardware broadcast, or that is a point-to-point link, will support
-multicast.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBNOARP\fR\fR
-.ad
-.sp .6
-.RS 4n
-There is no address resolution protocol (\fBARP\fR) for this interface that
-corresponds to all interfaces for a device without a broadcast address. This
-flag is specific to IPv4.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBNOFAILOVER\fR\fR
-.ad
-.sp .6
-.RS 4n
-The address associated with this logical interface is available to
-\fBin.mpathd\fR for probe-based failure detection of the associated physical IP
-interface.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBNOLOCAL\fR\fR
-.ad
-.sp .6
-.RS 4n
-The interface has no address, just an on-link subnet.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBNONUD\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBNUD\fR is disabled on this interface. \fBNUD\fR (neighbor unreachability
-detection) is used by a node to track the reachability state of its neighbors,
-to which the node actively sends packets, and to perform any recovery if a
-neighbor is detected to be unreachable. This flag is specific to IPv6.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBNORTEXCH\fR\fR
-.ad
-.sp .6
-.RS 4n
-The interface does not exchange routing information. For RIP-2, routing packets
-are not sent over this interface. Additionally, messages that appear to come
-over this interface receive no response. The subnet or address of this
-interface is not included in advertisements over other interfaces to other
-routers.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBNOXMIT\fR\fR
-.ad
-.sp .6
-.RS 4n
-Indicates that the address does not transmit packets. RIP-2 also does not
-advertise this address.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBOFFLINE\fR\fR
-.ad
-.sp .6
-.RS 4n
-The interface is offline and thus cannot send or receive IP data traffic. This
-is only set on IP interfaces in an IPMP group. See \fBif_mpadm\fR(1M) and
-\fBcfgadm\fR(1M).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPOINTOPOINT\fR\fR
-.ad
-.sp .6
-.RS 4n
-Indicates that the address is a point-to-point link. This flag and
-\fBBROADCAST\fR are mutually exclusive
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPREFERRED\fR\fR
-.ad
-.sp .6
-.RS 4n
-This address is a preferred IPv6 source address. This address will be used as a
-source address for IPv6 communication with all IPv6 destinations, unless
-another address on the system is of more appropriate scope. The
-\fBDEPRECATED\fR flag takes precedence over the \fBPREFERRED\fR flag.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIVATE\fR\fR
-.ad
-.sp .6
-.RS 4n
-Indicates that this address is not advertised. For RIP-2, this interface is
-used to send advertisements. However, neither the subnet nor this address are
-included in advertisements to other routers.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPROMISC\fR\fR
-.ad
-.sp .6
-.RS 4n
-A read-only flag indicating that an interface is in promiscuous mode. All
-addresses associated with an interface in promiscuous mode will display (in
-response to \fBifconfig\fR \fB-a\fR, for example) the \fBPROMISC\fR flag.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBROUTER\fR\fR
-.ad
-.sp .6
-.RS 4n
-Indicates that IP packets can be forwarded to and from the interface.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBRUNNING\fR\fR
-.ad
-.sp .6
-.RS 4n
-Indicates that the required resources for an interface are allocated. For some
-interfaces this also indicates that the link is up. For IPMP IP interfaces,
-\fBRUNNING\fR is set as long as one IP interface in the group is active.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSTANDBY\fR\fR
-.ad
-.sp .6
-.RS 4n
-Indicates that this physical interface will not be used for data traffic unless
-another interface in the IPMP group becomes unusable. The \fBINACTIVE\fR and
-\fBFAILED\fR flags indicate whether it is actively being used.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBTEMPORARY\fR\fR
-.ad
-.sp .6
-.RS 4n
-Indicates that this is a temporary IPv6 address as defined in RFC 3041.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBUNNUMBERED\fR\fR
-.ad
-.sp .6
-.RS 4n
-This flag is set when the local IP address on the link matches the local
-address of some other link in the system
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBUP\fR\fR
-.ad
-.sp .6
-.RS 4n
-Indicates that the logical interface (and the associated physical interface) is
-up. The IP module will accept packets destined to \fBUP\fR addresses (unless
-the address is zero), along with any associated multicast and broadcast IP
-addresses. Similarly, the IP module will allow packets to be sent with an
-\fBUP\fR address as a source address.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBVIRTUAL\fR\fR
-.ad
-.sp .6
-.RS 4n
-Indicates that the physical interface has no underlying hardware. It is not
-possible to transmit or receive packets through a virtual interface. These
-interfaces are useful for configuring local addresses that can be used on
-multiple interfaces. (See also the \fBusesrc\fR option.)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBXRESOLV\fR\fR
-.ad
-.sp .6
-.RS 4n
-Indicates that the interface uses an IPv6 external resolver.
-.RE
-
-.SH LOGICAL INTERFACES
-Solaris \fBTCP/IP\fR allows multiple logical interfaces to be associated with a
-physical network interface. This allows a single machine to be assigned
-multiple \fBIP\fR addresses, even though it may have only one network
-interface. Physical network interfaces have names of the form \fIdriver-name
-physical-unit-number\fR, while logical interfaces have names of the form
-\fIdriver-name physical-unit-number\fR\fB:\fR\fIlogical-unit-number\fR. A
-physical interface is configured into the system using the \fBplumb\fR command.
-For example:
-.sp
-.in +2
-.nf
-example% \fBifconfig eri0 plumb\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Once a physical interface has been "plumbed", logical interfaces associated
-with the physical interface can be configured by separate \fB-plumb\fR or
-\fB-addif\fR options to the \fBifconfig\fR command.
-.sp
-.in +2
-.nf
-example% \fBifconfig eri0:1 plumb\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-allocates a specific logical interface associated with the physical interface
-\fBeri0\fR. The command
-.sp
-.in +2
-.nf
-example% \fBifconfig eri0 addif 192.168.200.1/24 up\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-allocates the next available logical unit number on the \fBeri0\fR physical
-interface and assigns an \fIaddress\fR and \fIprefix_length\fR.
-.sp
-.LP
-A logical interface can be configured with parameters (\fIaddress\fR,
-\fIprefix_length\fR, and so on) different from the physical
-interface with which it is associated. Logical interfaces that are associated
-with the same physical interface can be given different parameters as well.
-Each logical interface must be associated with an existing and "up" physical
-interface. So, for example, the logical interface \fBeri0:1\fR can only be
-configured after the physical interface \fBeri0\fR has been plumbed.
-.sp
-.LP
-To delete a logical interface, use the \fBunplumb\fR or \fBremoveif\fR options.
-For example,
-.sp
-.in +2
-.nf
-example% \fBifconfig eri0:1 down unplumb\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-will delete the logical interface \fBeri0:1\fR.
-.SH IP MULTIPATHING GROUPS
-Physical interfaces that share the same link-layer broadcast domain \fBmust\fR
-be collected into a single IP Multipathing (IPMP) group using the \fBgroup\fR
-subcommand. Each IPMP group has an associated IPMP IP interface, which can
-either be explicitly created (the preferred method) by using the \fBipmp\fR
-subcommand or implicitly created by \fBifconfig\fR in response to placing an IP
-interface into a new IPMP group. Implicitly-created IPMP interfaces will be
-named \fBipmp\fR\fIN\fR where \fIN\fR is the lowest integer that does not
-conflict with an existing IP interface name or IPMP group name.
-.sp
-.LP
-Each IPMP IP interface is created with a matching IPMP group name, though it
-can be changed using the \fBgroup\fR subcommand. Each IPMP IP interface hosts a
-set of highly-available IP addresses. These addresses will remain reachable so
-long as at least one interface in the group is active, where "active" is
-defined as having at least one \fBUP\fR address and having \fBINACTIVE\fR,
-\fBFAILED\fR, and \fBOFFLINE\fR clear. IP addresses hosted on the IPMP IP
-interface may either be configured statically or configured through DHCP by
-means of the \fBdhcp\fR subcommand.
-.sp
-.LP
-Interfaces assigned to the same IPMP group are treated as equivalent and
-monitored for failure by \fBin.mpathd\fR. Provided that active interfaces in
-the group remain, IP interface failures (and any subsequent repairs) are
-handled transparently to sockets-based applications. IPMP is also integrated
-with the Dynamic Reconfiguration framework (see \fBcfgadm\fR(1M)), which
-enables network adapters to be replaced in a way that is invisible to
-sockets-based applications.
-.sp
-.LP
-The IP module automatically load-spreads all outbound traffic across all active
-interfaces in an IPMP group. Similarly, all \fBUP\fR addresses hosted on the
-IPMP IP interface will be distributed across the active interfaces to promote
-inbound load-spreading. The \fBipmpstat\fR(1M) utility allows many aspects of
-the IPMP subsystem to be observed, including the current binding of IP data
-addresses to IP interfaces.
-.sp
-.LP
-When an interface is placed into an IPMP group, any \fBUP\fR logical interfaces
-are "migrated" to the IPMP IP interface for use by the group, unless:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-the logical interface is marked \fBNOFAILOVER\fR;
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-the logical interface hosts an IPv6 link-local address;
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-the logical interface hosts an IPv4 0.0.0.0 address.
-.RE
-.sp
-.LP
-Likewise, once an interface is in a group, if changes are made to a logical
-interface such that it is \fBUP\fR and not exempted by one of the conditions
-above, it will also migrate to the associated IPMP IP interface. Logical
-interfaces never migrate back, even if the physical interface that contributed
-the address is removed from the group.
-.sp
-.LP
-Each interface placed into an IPMP group may be optionally configured with a
-"test" address that \fBin.mpathd\fR will use for probe-based failure detection;
-see \fBin.mpathd\fR(1M). These addresses must be marked \fBNOFAILOVER\fR (using
-the \fB-failover\fR subcommand) prior to being marked \fBUP\fR. Test addresses
-may also be acquired through DHCP by means of the \fBdhcp\fR subcommand.
-.sp
-.LP
-For more background on IPMP, please see the IPMP-related chapters of the
-\fISystem Administration Guide: Network Interfaces and Network
-Virtualization\fR.
-.SH CONFIGURING IPV6 INTERFACES
-When an IPv6 physical interface is plumbed and configured "up" with
-\fBifconfig\fR, it is automatically assigned an IPv6 link-local address for
-which the last 64 bits are calculated from the \fBMAC\fR address of the
-interface.
-.sp
-.in +2
-.nf
-example% \fBifconfig eri0 inet6 plumb up\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The following example shows that the link-local address has a prefix of
-\fBfe80::/10\fR.
-.sp
-.in +2
-.nf
-example% \fBifconfig eri0 inet6\fR
-ce0: flags=2000841<UP,RUNNING,MULTICAST,IPv6>
- mtu 1500 index 2 \
- inet6 fe80::a00:20ff:fe8e:f3ad/10
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Link-local addresses are only used for communication on the local subnet and
-are not visible to other subnets.
-.sp
-.LP
-If an advertising IPv6 router exists on the link advertising prefixes, then the
-newly plumbed IPv6 interface will autoconfigure logical interface(s) depending
-on the prefix advertisements. For example, for the prefix advertisement
-\fB2001:0db8:3c4d:0:55::/64\fR, the autoconfigured interface will look like:
-.sp
-.in +2
-.nf
-eri0:2: flags=2080841<UP,RUNNING,MULTICAST,ADDRCONF,IPv6>
- mtu 1500 index 2
- inet6 2001:0db8:3c4d:55:a00:20ff:fe8e:f3ad/64
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Even if there are no prefix advertisements on the link, you can still assign
-global addresses manually, for example:
-.sp
-.in +2
-.nf
-example% \fBifconfig eri0 inet6 addif \e
-2001:0db8:3c4d:55:a00:20ff:fe8e:f3ad/64 up\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-To configure boot-time defaults for the interface \fBeri0\fR, place the
-following entry in the \fB/etc/hostname6.eri0\fR file:
-.sp
-.in +2
-.nf
-addif 2001:0db8:3c4d:55:a00:20ff:fe8e:f3ad/64 up
-.fi
-.in -2
-
-.SS "Configuring IP-over-IP Tunnel Interfaces"
-An IP tunnel is conceptually comprised of two parts: a virtual link between two
-or more IP nodes, and an IP interface above this link which allows the system
-to transmit and receive IP packets encapsulated by the underlying link.
-.sp
-.LP
-The \fBdladm\fR(1M) command is used to configure tunnel links, and
-\fBifconfig\fR is used to configure IP interfaces over those tunnel links. An
-IPv4-over-IPv4 tunnel is created by plumbing an IPv4 interface over an IPv4
-tunnel link. An IPv6-over-IPv4 tunnel is created by plumbing an IPv6 interface
-over an IPv6 tunnel link, and so forth.
-.sp
-.LP
-When IPv6 interfaces are plumbed over IP tunnel links, their IPv6 addresses are
-automatically set. For IPv4 and IPv6 tunnels, source and destination link-local
-addresses of the form \fBfe80::\fR\fIinterface-id\fR are configured. For IPv4
-tunnels, the \fIinterface-id\fR is the IPv4 tunnel source or destination
-address. For IPv6 tunnels, the \fIinterface-id\fR is the last 64 bits of the
-IPv6 tunnel source or destination address. For example, for an IPv4 tunnel
-between 10.1.2.3 and 10.4.5.6, the IPv6 link-local source and destination
-addresses of the IPv6 interface would be \fBfe80::a01:203\fR and
-\fBfe80::a04:506\fR. For an IPv6 tunnel between \fB2000::1234:abcd\fR and
-\fB3000::5678:abcd\fR, the IPv6 link-local source and destination addresses of
-the interface would be \fBfe80::1234:abcd\fR and \fBfe80::5678:abcd\fR. These
-default link-local addresses can be overridden by specifying the addresses
-explicitly, as with any other point-to-point interface.
-.sp
-.LP
-For 6to4 tunnels, a 6to4 global address of the form \fB2002:\fItsrc\fR::1/16\fR
-is configured. The \fItsrc\fR portion is the tunnel source IPv4 address. The
-prefix length of the 6to4 interface is automatically set to 16, as all 6to4
-packets (destinations in the \fB2002::/16\fR range) are forwarded to the 6to4
-tunnel interface. For example, for a 6to4 link with a tunnel source of
-75.1.2.3, the IPv6 interface would have an address of
-\fB2002:4b01:203::1/16\fR.
-.sp
-.LP
-Additional IPv6 addresses can be added using the \fBaddif\fR option or by
-plumbing additional logical interfaces.
-.sp
-.LP
-For backward compatibility, the plumbing of tunnel IP interfaces with special
-names will implicitly result in the creation of tunnel links without invoking
-\fBdladm create-iptun\fR. These tunnel names are:
-.sp
-.ne 2
-.na
-\fB\fBip.tun\fR\fIN\fR\fR
-.ad
-.RS 15n
-An IPv4 tunnel
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBip6.tun\fR\fIN\fR\fR
-.ad
-.RS 15n
-An IPv6 tunnel
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBip.6to4tun\fR\fIN\fR\fR
-.ad
-.RS 15n
-A 6to4 tunnel
-.RE
-
-.sp
-.LP
-These tunnels are "implicit tunnels", denoted with the \fBi\fR flag in \fBdladm
-show-iptun\fR output. The tunnel links over which these special IP interfaces
-are plumbed are automatically created, and they are automatically deleted when
-the last reference is released (that is, when the last IP interface is
-unplumbed).
-.sp
-.LP
-The \fBtsrc\fR, \fBtdst\fR, \fBencaplim\fR, and \fBhoplimit\fR options to
-\fBifconfig\fR are obsolete and maintained only for backward compatibility.
-They are equivalent to their \fBdladm\fR(1M) counterparts.
-.SS "Display of Tunnel Security Settings"
-The \fBifconfig\fR output for IP tunnel interfaces indicates whether IPsec
-policy is configured for the underlying IP tunnel link. For example, a line of
-the following form will be displayed if IPsec policy is present:
-.sp
-.in +2
-.nf
-tunnel security settings --> use 'ipsecconf -ln -i ip.tun1'
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-If you do net set security policy, using either \fBifconfig\fR or
-\fBipsecconf\fR(1M), there is no tunnel security setting displayed.
-.SH EXAMPLES
-\fBExample 1 \fRUsing the \fBifconfig\fR Command
-.sp
-.LP
-If your workstation is not attached to an Ethernet, the network interface, for
-example, \fBeri0\fR, should be marked "down" as follows:
-
-.sp
-.in +2
-.nf
-example% \fBifconfig eri0 down\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRPrinting Addressing Information
-.sp
-.LP
-To print out the addressing information for each interface, use the following
-command:
-
-.sp
-.in +2
-.nf
-example% \fBifconfig -a\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRResetting the Broadcast Address
-.sp
-.LP
-To reset each interface's broadcast address after the netmasks have been
-correctly set, use the next command:
-
-.sp
-.in +2
-.nf
-example% \fBifconfig -a broadcast +\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 4 \fRChanging the Ethernet Address
-.sp
-.LP
-To change the Ethernet address for interface \fBce0\fR, use the following
-command:
-
-.sp
-.in +2
-.nf
-example% \fBifconfig ce0 ether aa:1:2:3:4:5\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 5 \fRConfiguring an IP-in-IP Tunnel
-.sp
-.LP
-To configure an IP-in-IP tunnel, first create an IP tunnel link (\fBtunsrc\fR
-and \fBtundst\fR are hostnames with corresponding IPv4 entries in
-\fB/etc/hosts\fR):
-
-.sp
-.in +2
-.nf
-example% \fBdladm create-iptun -T ipv4 -s tunsrc -d tundst tun0\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Then plumb a point-to-point interface, supplying the source and destination
-addresses (\fBmysrc\fR and \fBthedst\fR are hostnames with corresponding IPv4
-entries in \fB/etc/hosts\fR):
-
-.sp
-.in +2
-.nf
-example% \fBifconfig tun0 plumb mysrc thedst up\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Use \fBipsecconf\fR(1M), as described above, to configure tunnel security
-properties.
-
-.sp
-.LP
-Configuring IPv6 tunnels is done by using a tunnel type of \fBipv6\fR with
-\fBcreate-iptun\fR. IPv6 interfaces can also be plumbed over either type of
-tunnel.
-
-.LP
-\fBExample 6 \fRConfiguring 6to4 Tunnels
-.sp
-.LP
-To configure 6to4 tunnels, first create a 6to4 tunnel link (\fBmyv4addr\fR is a
-hostname with a corresponding IPv4 entry in \fB/etc/hosts\fR):
-
-.sp
-.in +2
-.nf
-example% \fBdladm create-iptun -T 6to4 -s myv4addr my6to4tun0\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Then an IPv6 interface is plumbed over this link:
-
-.sp
-.in +2
-.nf
-example% \fBifconfig my6to4tun0 inet6 plumb up\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The IPv6 address of the interface is automatically set as described above.
-
-.LP
-\fBExample 7 \fRConfiguring IP Forwarding on an Interface
-.sp
-.LP
-To enable IP forwarding on a single interface, use the following command:
-
-.sp
-.in +2
-.nf
-example% \fBifconfig eri0 router\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-To disable IP forwarding on a single interface, use the following command:
-
-.sp
-.in +2
-.nf
-example% \fBifconfig eri0 -router\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 8 \fRConfiguring Source Address Selection Using a Virtual Interface
-.sp
-.LP
-The following command configures source address selection such that every
-packet that is locally generated with no bound source address and going out on
-\fBqfe2\fR prefers a source address hosted on \fBvni0\fR.
-
-.sp
-.in +2
-.nf
-example% \fBifconfig qfe2 usesrc vni0\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The \fBifconfig\fR \fB-a\fR output for the \fBqfe2\fR and \fBvni0\fR interfaces
-displays as follows:
-
-.sp
-.in +2
-.nf
-qfe2: flags=1100843<UP,BROADCAST,RUNNING,MULTICAST,ROUTER,IPv4> mtu
- 1500 index 4
- usesrc vni0
- inet 1.2.3.4 netmask ffffff00 broadcast 1.2.3.255
- ether 0:3:ba:17:4b:e1
-vni0: flags=20011100c1<UP,RUNNING,NOARP,NOXMIT,ROUTER,IPv4,VIRTUAL>
- mtu 0 index 5
- srcof qfe2
- inet 3.4.5.6 netmask ffffffff
-.fi
-.in -2
-
-.sp
-.LP
-Observe, above, the \fBusesrc\fR and \fBsrcof\fR keywords in the \fBifconfig\fR
-output. These keywords also appear on the logical instances of the physical
-interface, even though this is a per-physical interface parameter. There is no
-\fBsrcof\fR keyword in \fBifconfig\fR for configuring interfaces. This
-information is determined automatically from the set of interfaces that have
-\fBusesrc\fR set on them.
-
-.sp
-.LP
-The following command, using the \fBnone\fR keyword, undoes the effect of the
-preceding \fBifconfig\fR \fBusesrc\fR command.
-
-.sp
-.in +2
-.nf
-example% \fBifconfig qfe2 usesrc none\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Following this command, \fBifconfig\fR \fB-a\fR output displays as follows:
-
-.sp
-.in +2
-.nf
-qfe2: flags=1100843<UP,BROADCAST,RUNNING,MULTICAST,ROUTER,IPv4> mtu
- 1500 index 4
- inet 1.2.3.4 netmask ffffff00 broadcast 1.2.3.255
- ether 0:3:ba:17:4b:e1
-vni0: flags=20011100c1<UP,RUNNING,NOARP,NOXMIT,ROUTER,IPv4,VIRTUAL>
- mtu 0 index 5
- inet 3.4.5.6 netmask ffffffff
-.fi
-.in -2
-
-.sp
-.LP
-Note the absence of the \fBusesrc\fR and \fBsrcof\fR keywords in the output
-above.
-
-.LP
-\fBExample 9 \fRConfiguring Source Address Selection for an IPv6 Address
-.sp
-.LP
-The following command configures source address selection for an IPv6 address,
-selecting a source address hosted on \fBvni0\fR.
-
-.sp
-.in +2
-.nf
-example% \fBifconfig qfe1 inet6 usesrc vni0\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Following this command, \fBifconfig\fR \fB-a\fR output displays as follows:
-
-.sp
-.in +2
-.nf
-qfe1: flags=2000841<UP,RUNNING,MULTICAST,IPv6> mtu 1500 index 3
- usesrc vni0
- inet6 fe80::203:baff:fe17:4be0/10
- ether 0:3:ba:17:4b:e0
-vni0: flags=2002210041<UP,RUNNING,NOXMIT,NONUD,IPv6,VIRTUAL> mtu 0
- index 5
- srcof qfe1
- inet6 fe80::203:baff:fe17:4444/128
-vni0:1: flags=2002210040<RUNNING,NOXMIT,NONUD,IPv6,VIRTUAL> mtu 0
- index 5
- srcof qfe1
- inet6 fec0::203:baff:fe17:4444/128
-vni0:2: flags=2002210040<RUNNING,NOXMIT,NONUD,IPv6,VIRTUAL> mtu 0
- index 5
- srcof qfe1
- inet6 2000::203:baff:fe17:4444/128
-.fi
-.in -2
-
-.sp
-.LP
-Depending on the scope of the destination of the packet going out on
-\fBqfe1\fR, the appropriately scoped source address is selected from \fBvni0\fR
-and its aliases.
-
-.LP
-\fBExample 10 \fRUsing Source Address Selection with Shared-IP Zones
-.sp
-.LP
-The following is an example of how the \fBusesrc\fR feature can be used with
-the \fBzones\fR(5) facility in Solaris. The following commands are invoked in
-the global zone:
-
-.sp
-.in +2
-.nf
-example% \fBifconfig hme0 usesrc vni0\fR
-example% \fBifconfig eri0 usesrc vni0\fR
-example% i\fBfconfig qfe0 usesrc vni0\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Following the preceding commands, the \fBifconfig\fR \fB-a\fR output for the
-virtual interfaces would display as:
-
-.sp
-.in +2
-.nf
-vni0: flags=20011100c1<UP,RUNNING,NOARP,NOXMIT,ROUTER,IPv4,VIRTUAL>
- mtu 0 index 23
- srcof hme0 eri0 qfe0
- inet 10.0.0.1 netmask ffffffff
-vni0:1:
- flags=20011100c1<UP,RUNNING,NOARP,NOXMIT,ROUTER,IPv4,VIRTUAL> mtu 0
- index 23
- zone test1
- srcof hme0 eri0 qfe0
- inet 10.0.0.2 netmask ffffffff
-vni0:2:
- flags=20011100c1<UP,RUNNING,NOARP,NOXMIT,ROUTER,IPv4,VIRTUAL> mtu 0
- index 23
- zone test2
- srcof hme0 eri0 qfe0
- inet 10.0.0.3 netmask ffffffff
-vni0:3:
- flags=20011100c1<UP,RUNNING,NOARP,NOXMIT,ROUTER,IPv4,VIRTUAL> mtu 0
- index 23
- zone test3
- srcof hme0 eri0 qfe0
- inet 10.0.0.4 netmask ffffffff
-.fi
-.in -2
-
-.sp
-.LP
-There is one virtual interface alias per zone (\fBtest1\fR, \fBtest2\fR, and
-\fBtest3\fR). A source address from the virtual interface alias in the same
-zone is selected. The virtual interface aliases were created using
-\fBzonecfg\fR(1M) as follows:
-
-.sp
-.in +2
-.nf
-example% \fBzonecfg -z test1\fR
-zonecfg:test1> \fBadd net\fR
-zonecfg:test1:net> \fBset physical=vni0\fR
-zonecfg:test1:net> \fBset address=10.0.0.2\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The \fBtest2\fR and \fBtest3\fR zone interfaces and addresses are created in
-the same way.
-
-.LP
-\fBExample 11 \fRTurning Off DHCPv6
-.sp
-.LP
-The following example shows how to disable automatic use of DHCPv6 on all
-interfaces, and immediately shut down DHCPv6 on the interface named \fBhme0\fR.
-See \fBin.ndpd\fR(1M) and \fBndpd.conf\fR(4) for more information on the
-automatic DHCPv6 configuration mechanism.
-
-.sp
-.in +2
-.nf
-example% \fBecho ifdefault StatefulAddrConf false >> /etc/inet/ndpd.conf\fR
-example% \fBpkill -HUP -x in.ndpd\fR
-example% \fBifconfig hme0 dhcp release\fR
-.fi
-.in -2
-.sp
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/etc/netmasks\fR\fR
-.ad
-.sp .6
-.RS 4n
-Netmask data.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/default/inet_type\fR\fR
-.ad
-.sp .6
-.RS 4n
-Default Internet protocol type.
-.RE
-
-.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-T{
-Interface Stability for command-line options
-T} Committed
-_
-Interface Stability for command output Uncommitted
-.TE
-
-.SH SEE ALSO
-\fBdhcpinfo\fR(1), \fBcfgadm\fR(1M), \fBdhcpagent\fR(1M), \fBdladm\fR(1M),
-\fBif_mpadm\fR(1M), \fBin.mpathd\fR(1M), \fBin.ndpd\fR(1M),
-\fBin.routed\fR(1M), \fBipmpstat\fR(1M), \fBipsecconf\fR(1M), \fBndd\fR(1M),
-\fBnetstat\fR(1M), \fBzoneadm\fR(1M), \fBzonecfg\fR(1M), \fBethers\fR(3SOCKET),
-\fBgethostbyname\fR(3NSL), \fBgetnetbyname\fR(3SOCKET), \fBhosts\fR(4),
-\fBinet_type\fR(4), \fBndpd.conf\fR(4), \fBnetmasks\fR(4), \fBnetworks\fR(4),
-\fBnsswitch.conf\fR(4), \fBattributes\fR(5), \fBprivileges\fR(5),
-\fBzones\fR(5), \fBarp\fR(7P), \fBipsecah\fR(7P), \fBipsecesp\fR(7P)
-.sp
-.LP
-\fISystem Administration Guide: IP Services\fR
-.SH DIAGNOSTICS
-\fBifconfig\fR sends messages that indicate if:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-the specified interface does not exist
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-the requested address is unknown
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-the user is not privileged and tried to alter an interface's configuration
-.RE
-.SH NOTES
-Do not select the names \fBbroadcast\fR, \fBdown\fR, \fBprivate\fR,
-\fBtrailers\fR, \fBup\fR or other possible option names when you choose host
-names. If you choose any one of these names as host names, it can cause unusual
-problems that are extremely difficult to diagnose.
diff --git a/usr/src/man/man1m/ifparse.1m b/usr/src/man/man1m/ifparse.1m
deleted file mode 100644
index c55283522b..0000000000
--- a/usr/src/man/man1m/ifparse.1m
+++ /dev/null
@@ -1,180 +0,0 @@
-'\" te
-.\" Copyright (C) 2001, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH IFPARSE 1M "May 9, 2001"
-.SH NAME
-ifparse \- parse \fBifconfig\fR command line
-.SH SYNOPSIS
-.LP
-.nf
-\fB/sbin/ifparse\fR [\fB-fs\fR] \fIaddr_family\fR \fIcommands\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-Use the \fBifparse\fR command to parse the \fBifconfig\fR(1M) command line
-options and output substrings, one per line, as appropriate. If no options are
-specified, \fBifparse\fR returns the entire \fBifconfig\fR command line as a
-series of substrings, one per line.
-.SH OPTIONS
-.sp
-.LP
-The \fBifparse\fR command supports the following options:
-.sp
-.ne 2
-.na
-\fB\fB-f\fR\fR
-.ad
-.RS 6n
-Lists only substrings of the \fBifconfig\fR command line that are relevant to
-IP network multipath failover
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR\fR
-.ad
-.RS 6n
- Lists only substrings of the \fBifconfig\fR command line that are not relevant
-to IP network multipath failover
-.RE
-
-.SH OPERANDS
-.sp
-.LP
-The \fBifparse\fR command \fBdoes not\fR support the \fIinterface\fR operand of
-the \fBifconfig\fR command.
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRParsing Command Line Options Relevant to Failover
-.sp
-.LP
-The following example shows the use of the \fBifparse\fR command to parse the
-command line options relevant to IP network multipath failover:
-
-.sp
-.in +2
-.nf
-example# \fBifparse -f inet 1.2.3.4 up group one addif 1.2.3.5 -failover up\fR
-set 1.2.3.4 up
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRParsing Command Line Options That Are Not Relevant to Failover
-.sp
-.LP
-The following example shows the use of the \fBifparse\fR command to parse the
-command line options that are not relevant to IP network multipath failover:
-
-.sp
-.in +2
-.nf
-example# \fBifparse -s inet 1.2.3.4 up group one addif 1.2.3.5 -failover up\fR
-group one
-addif 1.2.3.5 -failover up
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRParsing the Command Line For All Options
-.sp
-.LP
-The following example shows the use of the \fBifparse\fR command to parse the
-command line for all \fBifconfig\fR options:
-
-.sp
-.in +2
-.nf
-example# \fBifparse inet 1.2.3.4 up group one addif 1.2.3.5 -failover up\fR
-group one
-set 1.2.3.4 up
-addif 1.2.3.5 -failover up
-.fi
-.in -2
-.sp
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Stability Level Obsolete
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBifconfig\fR(1M), \fBattributes\fR(5)
-.SH DIAGNOSTICS
-.sp
-.LP
-usage: \fB-fs\fR <addr_family> <commands>
-.RS +4
-\fBDescription: \fR
-.sp
-.LP
-This message indicates an invalid command line.
-.RE
-
-.sp
-.LP
-\fBifparse\fR: Not enough space
-.RS +4
-\fBDescription: \fR
-.sp
-.LP
-This message indicates insufficient memory.
-.RE
-
-.sp
-.LP
-\fBifparse\fR: dhcp not supported for inet6
-.RS +4
-\fBDescription: \fR
-.sp
-.LP
-DHCP operations are not supported for the \fBinet6\fR address family.
-.RE
-
-.sp
-.LP
-\fBifparse\fR: Operation <operation> not supported for <addr_family>
-.RS +4
-\fBDescription: \fR
-.sp
-.LP
-Most operations cannot be used with all address families. For example, the
-\fBbroadcast\fR operation is not supported on the \fBinet6\fR address family.
-.RE
-
-.sp
-.LP
-\fBifparse\fR: no argument for <operation>
-.RS +4
-\fBDescription: \fR
-.sp
-.LP
-Some operations, for example \fBbroadcast\fR, require an argument.
-.RE
-
-.SH NOTES
-.sp
-.LP
-The \fBifparse\fR command is classified as an obsolete interface. It will
-likely be removed in a future release. You should not develop applications that
-depend upon this interface.
diff --git a/usr/src/man/man1m/ikeadm.1m b/usr/src/man/man1m/ikeadm.1m
deleted file mode 100644
index 4a06e11b45..0000000000
--- a/usr/src/man/man1m/ikeadm.1m
+++ /dev/null
@@ -1,835 +0,0 @@
-'\" te
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH IKEADM 1M "Jan 27, 2009"
-.SH NAME
-ikeadm \- manipulate Internet Key Exchange (IKE) parameters and state
-.SH SYNOPSIS
-.LP
-.nf
-\fBikeadm\fR [\fB-np\fR]
-.fi
-
-.LP
-.nf
-\fBikeadm\fR [\fB-np\fR] get [debug | priv | stats | defaults]
-.fi
-
-.LP
-.nf
-\fBikeadm\fR [\fB-np\fR] set [debug | priv] [level] [file]
-.fi
-
-.LP
-.nf
-\fBikeadm\fR [\fB-np\fR] [get | del] [p1 | rule | preshared] [id]
-.fi
-
-.LP
-.nf
-\fBikeadm\fR [\fB-np\fR] add [rule | preshared] { \fIdescription\fR }
-.fi
-
-.LP
-.nf
-ikeadm [\fB-np\fR] token [login | logout] \fIPKCS#11_Token_Object\fR
-.fi
-
-.LP
-.nf
-\fBikeadm\fR [\fB-np\fR] [read | write] [rule | preshared | certcache] \fIfile\fR
-.fi
-
-.LP
-.nf
-\fBikeadm\fR [\fB-np\fR] [dump | pls | rule | preshared]
-.fi
-
-.LP
-.nf
-\fBikeadm\fR [\fB-np\fR] flush [p1 | certcache]
-.fi
-
-.LP
-.nf
-\fBikeadm\fR help
- [get | set | add | del | read | write | dump | flush | token]
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBikeadm\fR utility retrieves information from and manipulates the
-configuration of the Internet Key Exchange (\fBIKE\fR) protocol daemon,
-\fBin.iked\fR(1M).
-.sp
-.LP
-\fBikeadm\fR supports a set of operations, which may be performed on one or
-more of the supported object types. When invoked without arguments,
-\fBikeadm\fR enters interactive mode which prints a prompt to the standard
-output and accepts commands from the standard input until the end-of-file is
-reached.
-.sp
-.LP
-Because \fBikeadm\fR manipulates sensitive keying information, you must be
-superuser to use this command. Additionally, some of the commands available
-require that the daemon be running in a privileged mode, which is established
-when the daemon is started.
-.sp
-.LP
-For details on how to use this command securely see .
-.SH OPTIONS
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-n\fR\fR
-.ad
-.sp .6
-.RS 4n
-Prevent attempts to print host and network names symbolically when reporting
-actions. This is useful, for example, when all name servers are down or are
-otherwise unreachable.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR\fR
-.ad
-.sp .6
-.RS 4n
-Paranoid. Do not print any keying material, even if saving Security
-Associations. Instead of an actual hexadecimal digit, print an \fBX\fR when
-this flag is turned on.
-.RE
-
-.SH USAGE
-.SS "Commands"
-.LP
-The following commands are supported:
-.sp
-.ne 2
-.na
-\fB\fBadd\fR\fR
-.ad
-.sp .6
-.RS 4n
-Add the specified object. This option can be used to add a new policy rule or a
-new preshared key to the current (running) in.iked configuration. When adding a
-new preshared key, the command cannot be invoked from the command line, as it
-will contain keying material. The rule or key being added is specified using
-appropriate id-value pairs as described in the \fBID FORMATS\fR section.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdel\fR\fR
-.ad
-.sp .6
-.RS 4n
-Delete a specific object or objects from \fBin.iked\fR's current configuration.
-This operation is available for \fBIKE\fR (Phase 1) \fBSA\fRs, policy rules,
-and preshared keys. The object to be deleted is specified as described in the
-\fBId Formats\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdump\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display all objects of the specified type known to \fBin.iked\fR. This option
-can be used to display all Phase 1 \fBSA\fRs, policy rules, preshared keys, or
-the certificate cache. A large amount of output may be generated by this
-command.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBflush\fR\fR
-.ad
-.sp .6
-.RS 4n
-Remove all \fBIKE\fR (Phase 1) \fBSA\fRs or cached certificates from
-\fBin.iked\fR.
-.sp
-Note that flushing the \fBcertcache\fR will also (as a side-effect) update IKE
-with any new certificates added or removed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBget\fR\fR
-.ad
-.sp .6
-.RS 4n
-Lookup and display the specified object. May be used to view the current debug
-or privilege level, global statistics and default values for the daemon, or a
-specific \fBIKE\fR (Phase 1) \fBSA\fR, policy rule, or preshared key. The
-latter three object types require that identifying information be passed in;
-the appropriate specification for each object type is described below.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBhelp\fR\fR
-.ad
-.sp .6
-.RS 4n
-Print a brief summary of commands, or, when followed by a command, prints
-information about that command.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBread\fR\fR
-.ad
-.sp .6
-.RS 4n
-Update the current \fBin.iked\fR configuration by reading the policy rules or
-preshared keys from either the default location or from the file specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBset\fR\fR
-.ad
-.sp .6
-.RS 4n
-Adjust the current debug or privilege level. If the debug level is being
-modified, an output file may optionally be specified; the output file
-\fBmust\fR be specified if the daemon is running in the background and is not
-currently printing to a file. When changing the privilege level, adjustments
-may only be made to lower the access level; it cannot be increased using
-ikeadm.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBwrite\fR\fR
-.ad
-.sp .6
-.RS 4n
-Write the current \fBin.iked\fR policy rule set or preshared key set to the
-specified file. A destination file must be specified. This command should not
-be used to overwrite the existing configuration files.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBtoken\fR\fR
-.ad
-.sp .6
-.RS 4n
-Log into a PKCS#11 token object and grant access to keying material or log out
-and invalidate access to keying material.
-.sp
-\fBtoken\fR can be run as a normal user with the following authorizations:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBtoken\fR login: \fBsolaris.network.ipsec.ike.token.login\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBtoken\fR logout: \fBsolaris.network.ipsec.ike.token.logout\fR
-.RE
-.RE
-
-.SS "Object Types"
-.ne 2
-.na
-\fBdebug\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the daemon's debug level. This determines the amount and type of
-output provided by the daemon about its operations. The debug level is actually
-a bitmask, with individual bits enabling different types of information.
-.sp
-
-.sp
-.TS
-c c c
-l l l .
-Description Flag Nickname
-_
-Certificate management 0x0001 cert
-Key management 0x0002 key
-Operational 0x0004 op
-Phase 1 SA creation 0x0008 phase1
-Phase 2 SA creation 0x0010 phase2
-PF_KEY interface 0x0020 pfkey
-Policy management 0x0040 policy
-Proposal construction 0x0080 prop
-Door interface 0x0100 door
-Config file processing 0x0200 config
-All debug flags 0x3ff all
-.TE
-
-When specifying the debug level, either a number (decimal or hexadecimal) or a
-string of nicknames may be given. For example, \fB88\fR, \fB0x58\fR, and
-\fBphase1\fR+\fBphase2\fR+\fBpolicy\fR are all equivalent, and will turn on
-debug for \fBphase 1\fR \fBsa\fR creation, \fBphase 2 sa\fR creation, and
-policy management. A string of nicknames may also be used to remove certain
-types of information; \fBall-op\fR has the effect of turning on all debug
-\fBexcept\fR for operational messages; it is equivalent to the numbers
-\fB1019\fR or \fB0x3fb\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBpriv\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the daemon's access privilege level. The possible values are:
-.sp
-.in +2
-.nf
-Description Level Nickname
-Base level 0 base
-Access to preshared key info 1 modkeys
-Access to keying material 2 keymat
-.fi
-.in -2
-.sp
-
-By default, \fBin.iked\fR is started at the base level. A command-line option
-can be used to start the daemon at a higher level. \fBikeadm\fR can be used to
-lower the level, but it cannot be used to raise the level.
-.sp
-Either the numerical level or the nickname may be used to specify the target
-privilege level.
-.sp
-In order to get, add, delete, dump, read, or write preshared keys, the
-privilege level must at least give access to preshared key information.
-However, when viewing preshared keys (either using the get or dump command),
-the key itself will only be available if the privilege level gives access to
-keying material. This is also the case when viewing Phase 1 \fBSA\fRs.
-.RE
-
-.sp
-.ne 2
-.na
-\fBstats\fR
-.ad
-.sp .6
-.RS 4n
-Global statistics from the daemon, covering both successful and failed Phase 1
-\fBSA\fR creation.
-.sp
-Reported statistics include:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Count of current P1 \fBSA\fRs which the local entity initiated
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Count of current P1 \fBSA\fRs where the local entity was the responder
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Count of all P1 \fBSA\fRs which the local entity initiated since boot
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Count of all P1 \fBSA\fRs where the local entity was the responder since boot
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Count of all attempted \fBP1\fR \fBSA\fRs since boot, where the local entity
-was the initiator; includes failed attempts
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Count of all attempted P1 \fBSA\fRs since boot, where the local entity was the
-responder; includes failed attempts
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Count of all failed attempts to initiate a \fBP1\fR \fBSA\fR, where the failure
-occurred because the peer did not respond
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Count of all failed attempts to initiate a P1 \fBSA\fR, where the peer
-responded
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Count of all failed \fBP1\fR \fBSA\fRs where the peer was the initiator
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Whether a PKCS#11 library is in use, and if applicable, the PKCS#11 library
-that is loaded. See .
-.RE
-.RE
-
-.sp
-.ne 2
-.na
-\fBdefaults\fR
-.ad
-.sp .6
-.RS 4n
-Display default values used by the \fBin.iked\fR daemon. Some values can be
-overridden in the daemon configuration file (see \fBike.config\fR(4)); for these
-values, the token name is displayed in the \fBget defaults\fR output. The
-output will reflect where a configuration token has changed the default.
-.sp
-Default values might be ignored in the event a peer system makes a valid
-alternative proposal or they can be overridden by per-rule values established in
-\fBike.config\fR. In such instances, a \fBget defaults\fR command continues to
-display the default values, not the values used to override the defaults.
-.RE
-
-.sp
-.ne 2
-.na
-\fBp1\fR
-.ad
-.sp .6
-.RS 4n
-An \fBIKE\fR Phase 1 \fBSA\fR. A \fBp1\fR object is identified by an \fBIP\fR
-address pair or a cookie pair; identification formats are described below.
-.RE
-
-.sp
-.ne 2
-.na
-\fBrule\fR
-.ad
-.sp .6
-.RS 4n
-An \fBIKE\fR policy rule, defining the acceptable security characteristics for
-Phase 1 \fBSA\fRs between specified local and remote identities. A rule is
-identified by its label; identification formats are described below.
-.RE
-
-.sp
-.ne 2
-.na
-\fBpreshared\fR
-.ad
-.sp .6
-.RS 4n
-A preshared key, including the local and remote identification and applicable
-\fBIKE\fR mode. A preshared key is identified by an \fBIP\fR address pair or an
-identity pair; identification formats are described below.
-.RE
-
-.SS "Id Formats"
-.LP
-Commands like \fBadd\fR, \fBdel\fR, and \fBget\fR require that additional
-information be specified on the command line. In the case of the delete and get
-commands, all that is required is to minimally identify a given object; for the
-add command, the full object must be specified.
-.sp
-.LP
-Minimal identification is accomplished in most cases by a pair of values. For
-\fBIP\fR addresses, the local addr and then the remote addr are specified,
-either in dot-notation for IPv4 addresses, colon-separated hexadecimal format
-for IPv6 addresses, or a host name present in the host name database. If a host
-name is given that expands to more than one address, the requested operation
-will be performed multiple times, once for each possible combination of
-addresses.
-.sp
-.LP
-Identity pairs are made up of a local type-value pair, followed by the remote
-type-value pair. Valid types are:
-.sp
-.ne 2
-.na
-\fBprefix\fR
-.ad
-.sp .6
-.RS 4n
-An address prefix.
-.RE
-
-.sp
-.ne 2
-.na
-\fBfqdn\fR
-.ad
-.sp .6
-.RS 4n
-A fully-qualified domain name.
-.RE
-
-.sp
-.ne 2
-.na
-\fBdomain\fR
-.ad
-.sp .6
-.RS 4n
-Domain name, synonym for fqdn.
-.RE
-
-.sp
-.ne 2
-.na
-\fBuser_fqdn\fR
-.ad
-.sp .6
-.RS 4n
-User identity of the form \fIuser\fR@fqdn.
-.RE
-
-.sp
-.ne 2
-.na
-\fBmailbox\fR
-.ad
-.sp .6
-.RS 4n
-Synonym for \fBuser_fqdn\fR.
-.RE
-
-.sp
-.LP
-A cookie pair is made up of the two cookies assigned to a Phase 1 Security
-Association (\fBSA\fR) when it is created; first is the initiator's, followed
-by the responder's. A cookie is a 64-bit number.
-.sp
-.LP
-Finally, a label (which is used to identify a policy rule) is a character
-string assigned to the rule when it is created.
-.sp
-.LP
-Formatting a rule or preshared key for the add command follows the format rules
-for the in.iked configuration files. Both are made up of a series of id-value
-pairs, contained in curly braces (\fB{\fR and \fB}\fR). See \fBike.config\fR(4)
-and \fBike.preshared\fR(4) for details on the formatting of rules and preshared
-keys.
-.SH SECURITY
-.LP
-The \fBikeadm\fR command allows a privileged user to enter cryptographic keying
-information. If an adversary gains access to such information, the security of
-IPsec traffic is compromised. The following issues should be taken into account
-when using the \fBikeadm\fR command.
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Is the \fBTTY\fR going over a network (interactive mode)?
-.sp
-If it is, then the security of the keying material is the security of the
-network path for this \fBTTY\fR's traffic. Using \fBikeadm\fR over a clear-text
-telnet or rlogin session is risky. Even local windows may be vulnerable to
-attacks where a concealed program that reads window events is present.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Is the file accessed over the network or readable to the world (read/write
-commands)?
-.sp
-A network-mounted file can be sniffed by an adversary as it is being read. A
-world-readable file with keying material in it is also risky.
-.RE
-.sp
-.LP
-If your source address is a host that can be looked up over the network, and
-your naming system itself is compromised, then any names used will no longer be
-trustworthy.
-.sp
-.LP
-Security weaknesses often lie in misapplication of tools, not the tools
-themselves. It is recommended that administrators are cautious when using the
-\fBikeadm\fR command. The safest mode of operation is probably on a console, or
-other hard-connected \fBTTY\fR.
-.sp
-.LP
-For additional information regarding this subject, see the afterward by Matt
-Blaze in Bruce Schneier's \fIApplied Cryptography: Protocols, Algorithms, and
-Source Code in C.\fR
-.SH EXAMPLES
-.LP
-\fBExample 1 \fREmptying out all Phase 1 Security Associations
-.sp
-.LP
-The following command empties out all Phase 1 Security Associations:
-
-.sp
-.in +2
-.nf
-example# \fBikeadm flush p1\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRDisplaying all Phase 1 Security Associations
-.sp
-.LP
-The following command displays all Phase 1 Security Associations:
-
-.sp
-.in +2
-.nf
-example# \fBikeadm dump p1\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRDeleting a Specific Phase 1 Security Association
-.sp
-.LP
-The following command deletes the specified Phase 1 Security Associations:
-
-.sp
-.in +2
-.nf
-example# \fBikeadm del p1 local_ip remote_ip\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 4 \fRAdding a Rule From a File
-.sp
-.LP
-The following command adds a rule from a file:
-
-.sp
-.in +2
-.nf
-example# \fBikeadm add rule rule_file\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 5 \fRAdding a Preshared Key
-.sp
-.LP
-The following command adds a preshared key:
-
-.sp
-.in +2
-.nf
-example# \fBikeadm\fR
- ikeadm> \fBadd preshared { localidtype ip localid local_ip
- remoteidtype ip remoteid remote_ip ike_mode main
- key 1234567890abcdef1234567890abcdef }\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 6 \fRSaving All Preshared Keys to a File
-.sp
-.LP
-The following command saves all preshared keys to a file:
-
-.sp
-.in +2
-.nf
-example# \fBikeadm write preshared target_file\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 7 \fRViewing a Particular Rule
-.sp
-.LP
-The following command views a particular rule:
-
-.sp
-.in +2
-.nf
-example# \fBikeadm get rule rule_label\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 8 \fRReading in New Rules from \fBike.config\fR
-.sp
-.LP
-The following command reads in new rules from the ike.config file:
-
-.sp
-.in +2
-.nf
-example# \fBikeadm read rules\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 9 \fRLowering the Privilege Level
-.sp
-.LP
-The following command lowers the privilege level:
-
-.sp
-.in +2
-.nf
-example# \fBikeadm set priv base\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 10 \fRViewing the Debug Level
-.sp
-.LP
-The following command shows the current debug level
-
-.sp
-.in +2
-.nf
-example# \fBikeadm get debug\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 11 \fRUsing stats to Verify Hardware Accelerator
-.sp
-.LP
-The following example shows how stats may include an optional line at the end
-to indicate if IKE is using a PKCS#11 library to accelerate public-key
-operations, if applicable.
-
-.sp
-.in +2
-.nf
-example# \fBikeadm get stats\fR
-Phase 1 SA counts:
-Current: initiator: 0 responder: 0
-Total: initiator: 21 responder: 27
-Attempted:initiator: 21 responder: 27
-Failed: initiator: 0 responder: 0
- initiator fails include 0 time-out(s)
-PKCS#11 library linked in from /opt/SUNWconn/lib/libpkcs11.so
-example#
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 12 \fRDisplaying the Certificate Cache
-.sp
-.LP
-The following command shows the certificate cache and the status of associated
-private keys, if applicable:
-
-.sp
-.in +2
-.nf
-example# \fBikeadm dump certcache\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 13 \fRLogging into a PKCS#11 Token
-.sp
-.LP
-The following command shows logging into a PKCS#11 token object and unlocking
-private keys:
-
-.sp
-.in +2
-.nf
-example# \fBikeadm token login "Sun Metaslot"\fR
-Enter PIN for PKCS#11 token:
-ikeadm: PKCS#11 operation successful
-.fi
-.in -2
-.sp
-
-.SH EXIT STATUS
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 12n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnon-zero\fR\fR
-.ad
-.RS 12n
-An error occurred. Writes an appropriate error message to standard error.
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Not an Interface
-.TE
-
-.SH SEE ALSO
-.LP
-\fBin.iked\fR(1M), \fBike.config\fR(4), \fBike.preshared\fR(4),
-\fBattributes\fR(5), \fBipsec\fR(7P)
-.sp
-.LP
-Schneier, Bruce, \fIApplied Cryptography: Protocols, Algorithms, and Source
-Code in C\fR, Second Edition, John Wiley & Sons, New York, NY, 1996.
-.SH NOTES
-.LP
-As \fBin.iked\fR can run only in the global zone and exclusive-IP zones, this
-command is not useful in shared-IP zones.
diff --git a/usr/src/man/man1m/ikecert.1m b/usr/src/man/man1m/ikecert.1m
deleted file mode 100644
index da2a53cd08..0000000000
--- a/usr/src/man/man1m/ikecert.1m
+++ /dev/null
@@ -1,1027 +0,0 @@
-'\" te
-.\" Copyright (C) 2009, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
-.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH IKECERT 1M "June 20, 2021"
-.SH NAME
-ikecert \- manipulates the machine's on-filesystem public-key certificate
-databases
-.SH SYNOPSIS
-.nf
-\fBikecert\fR certlocal
- [\fB-a\fR | \fB-e\fR | \fB-h\fR | \fB-k\fR | \fB-l\fR | \fB-r\fR | \fB-U\fR | \fB-C\fR | \fB-L\fR]
- [[\fB-p\fR] \fB-T\fR \fIPKCS#11 token identifier\fR]
- [\fIoption_specific_arguments\fR]...
-.fi
-
-.LP
-.nf
-\fBikecert\fR certdb [\fB-a\fR | \fB-e\fR | \fB-h\fR | \fB-l\fR | \fB-r\fR | \fB-U\fR | \fB-C\fR | \fB-L\fR]
- [[\fB-p\fR] \fB-T\fR \fIPKCS#11 token identifier\fR]
- [\fIoption_specific_arguments\fR]...
-.fi
-
-.LP
-.nf
-\fBikecert\fR certrldb [\fB-a\fR | \fB-e\fR | \fB-h\fR | \fB-l\fR | \fB-r\fR]
- [\fIoption_specific_arguments\fR]...
-.fi
-
-.LP
-.nf
-\fBikecert\fR tokens
-.fi
-
-.SH DESCRIPTION
-The \fBikecert\fR command manipulates the machine's on-filesystem public-key
-certificate databases. See the "Files" section, below.
-.sp
-.LP
-\fBikecert\fR has three subcommands, one for each of the three major
-repositories, plus one for listing available hardware tokens:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBcertlocal\fR deals with the private-key repository,
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBcertdb\fR deals with the public-key repository, and:
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBcertrldb\fR deals with the certificate revocation list (\fBCRL\fR)
-repository.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBtokens\fR shows the available PKCS#11 tokens for a given PKCS#11 library.
-.RE
-.sp
-.LP
-The only supported PKCS#11 library and hardware is the Sun Cryptographic
-Accelerator 4000.
-.SH OPTIONS
-Except for \fBtokens\fR, each subcommand requires one option, possibly followed
-by one or more option-specific arguments.
-.sp
-.LP
-The \fBtokens\fR subcommand lists all available tokens in the PKCS#11 library
-specified in \fB/etc/inet/ike/config\fR.
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-a\fR\fR
-.ad
-.sp .6
-.RS 4n
-.sp
-.ne 2
-.na
-\fBcertlocal\fR
-.ad
-.sp .6
-.RS 4n
-When specified with the \fBcertlocal\fR subcommand, this option installs (adds)
-a private key into the Internet Key Exchange (\fBIKE\fR) local \fBID\fR
-database. The key data is read from standard input, and is in either
-Solaris-only format or unencrypted PKCS#8 DER format. Key format is
-automatically detected. PKCS#8 key files in PEM format and files in password
-protected, encrypted format are not recognized, but can be converted
-appropriately using tools available in OpenSSL.
-.sp
-This option cannot be used with PKCS#11 hardware objects when the corresponding
-public certificate is not already present in the \fBIKE\fR database. When
-importing both a public certificate and a private key, the public portion must
-be imported first using the \fBcertdb\fR subcommand.
-.RE
-
-.sp
-.ne 2
-.na
-\fBcertdb\fR
-.ad
-.sp .6
-.RS 4n
-When specified with the \fBcertdb\fR subcommand, this option reads a
-certificate from standard input and adds it to the \fBIKE\fR certificate
-database. The certificate must be a \fBX.509\fR certificate in \fBPEM Base64\fR
-or \fBASN.1 BER\fR encoding. The certificate adopts the name of its identity.
-.sp
-This option can import a certificate into a PKCS#11 hardware key store one of
-two ways: Either a matching public key object \fBand\fR an existing private key
-object were created using the \fBcertlocal\fR \fB-kc\fR option, or if a PKCS#11
-token is explicitly specified using the \fB-T\fR option.
-.RE
-
-.sp
-.ne 2
-.na
-\fBcertrldb\fR
-.ad
-.sp .6
-.RS 4n
-When specified with the \fBcertrldb\fR subcommand, this option installs (adds)
-a \fBCRL\fR into the \fBIKE\fR database. The \fBCRL\fR reads from standard
-input.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-e\fR [\fB-f\fR pkcs8] \fIslot\fR\fR
-.ad
-.sp .6
-.RS 4n
-.sp
-.ne 2
-.na
-\fBcertlocal\fR
-.ad
-.sp .6
-.RS 4n
-When specified with the \fBcertlocal\fR subcommand, this option extracts a
-private key from the \fBIKE\fR local \fBID\fR database. The key data are
-written to standard output. The slot specifies which private key to extract.
-Private keys are only extracted in binary/ber format.
-.sp
-\fBUse this option with extreme caution.\fR See the "Security" section, below.
-.sp
-This option will not work with PKCS#11 hardware objects.
-.sp
-When used in conjunction with "\fB-f\fR \fBpkcs8\fR", the private key is
-extracted in unencrypted PKCS#8 format.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-e\fR [\fB-f\fR \fIoutput-format\fR] \fBcertspec\fR\fR
-.ad
-.sp .6
-.RS 4n
-.sp
-.ne 2
-.na
-\fBcertdb\fR
-.ad
-.sp .6
-.RS 4n
-When specified with the \fBcertdb\fR subcommand, this option extracts a
-certificate from the IKE certificate database which matches the certspec and
-writes it to standard output. The \fIoutput-format\fR option specifies the
-encoding format. Valid options are \fBPEM\fR and \fBBER\fR. This extracts the
-first matching identity. The default output format is \fBPEM\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBcertrldb\fR
-.ad
-.sp .6
-.RS 4n
-When specified with the \fBcertrldb\fR subcommand, this option extracts a
-\fBCRL\fR from the IKE database. The key data are written to standard output.
-The \fBcertspec\fR specifies which CRL that is extracted. The first one that
-matches in the database is extracted. See \fBNOTES\fR, below, for details on
-\fBcertspec\fR patterns.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-kc\fR \fB-m\fR \fIkeysize\fR \fB-t\fR \fIkeytype\fR \fB-D\fR \fIdname\fR
-\fB-A\fR \fIaltname\fR[ ... ]\fR
-.ad
-.br
-.na
-\fB[\fB-S\fR \fIvalidity start_time\fR][\fB-F\fR \fIvalidity end_time\fR]\fR
-.ad
-.br
-.na
-\fB[\fB-T\fR \fIPKCS#11 token identifier\fR]\fR
-.ad
-.sp .6
-.RS 4n
-.sp
-.ne 2
-.na
-\fBcertlocal\fR
-.ad
-.sp .6
-.RS 4n
-When specified with the \fBcertlocal\fR subcommand, this option generates a IKE
-public/private key pair and adds it into the local ID database. It also
-generates a certificate request and sends that to standard output. For details
-on the above options see for details on the \fIdname\fR argument and see
-ALTERNATIVE NAMES for details on the \fIaltname\fR argument(s) to this command.
-.sp
-If \fB-T\fR is specified, the hardware token will generate the pair of keys.
-.sp
-If \fB-p\fR is specified with \fB-T\fR, the PKCS#11 token pin is stored in the
-clear on-disk, with root-protected file permissions. If not specified, one must
-unlock the token with \fBikeadm\fR(1M) once \fBin.iked\fR(1M) is running.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-ks\fR \fB-m\fR \fIkeysize\fR \fB-t\fR \fIkeytype\fR \fB-D\fR \fIdname\fR
-\fB-A\fR \fIaltname\fR[ ... ]\fR
-.ad
-.br
-.na
-\fB[\fB-S\fR \fIvalidity start_time\fR][\fB-F\fR \fIvalidity end_time\fR]\fR
-.ad
-.br
-.na
-\fB[\fB-f\fR \fIoutput-format\fR][[\fB-p\fR] \fB-T\fR \fIPKCS#11 token
-identifier\fR]\fR
-.ad
-.br
-.na
-\fB\fR
-.ad
-.sp .6
-.RS 4n
-.sp
-.ne 2
-.na
-\fBcertlocal\fR
-.ad
-.sp .6
-.RS 4n
-When specified with the \fBcertlocal\fR subcommand, generates a public/private
-key pair and adds it into the local ID database. This option also generates a
-self-signed certificate and installs it into the certificate database. See
-\fBNOTES\fR, below, for details on the \fIdname\fR and \fIaltname\fR arguments
-to this command.
-.sp
-If \fB-T\fR is specified, the hardware token will generate the pair of keys,
-and the self-signed certificate will also be stored in the hardware.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR [\fB-v\fR] [\fIslot\fR]\fR
-.ad
-.sp .6
-.RS 4n
-.sp
-.ne 2
-.na
-\fBcertlocal\fR
-.ad
-.sp .6
-.RS 4n
-When specified with the \fBcertlocal\fR subcommand, this option lists private
-keys in the local ID database. The \fB-v\fR option switches output to a verbose
-mode where the entire certificate is printed.
-.sp
-\fBUse the\fR \fB-v\fR\fBoption with extreme caution.\fR See the "Security"
-section, below. The \fB-v\fR option will not work with PKCS#11 hardware
-objects.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR [\fB-v\fR] [certspec]\fR
-.ad
-.sp .6
-.RS 4n
-.sp
-.ne 2
-.na
-\fBcertdb\fR
-.ad
-.sp .6
-.RS 4n
-When specified with the \fBcertdb\fR subcommand, this option lists certificates
-in the IKE certificate database matching the certspec, if any pattern is given.
-The list displays the identity string of the certificates, as well as, the
-private key if in the key database. The \fB-v\fR switches the output to a
-verbose mode where the entire certificate is printed.
-.sp
-If the matching certificate is on a hardware token, the token ID is also
-listed.
-.RE
-
-.sp
-.ne 2
-.na
-\fBcertrldb\fR
-.ad
-.sp .6
-.RS 4n
-When specified with the \fBcertrldb\fR subcommand, this option lists the CRLs
-in the IKE database along with any certificates that reside in the database and
-match the Issuer Name. \fBcertspec\fR can be used to specify to list a specific
-CRL. The \fB-v\fR option switches the output to a verbose mode where the entire
-certificate is printed. See \fBNOTES\fR, below, for details on \fBcertspec\fR
-patterns.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-r\fR \fIslot\fR\fR
-.ad
-.sp .6
-.RS 4n
-.sp
-.ne 2
-.na
-\fBcertlocal\fR
-.ad
-.sp .6
-.RS 4n
-When specified with the \fBcertlocal\fR subcommand, deletes the local ID in the
-specified slot. If there is a corresponding public key, it is not be deleted.
-If this slot is deemed as "corrupted" or otherwise unrecognizable, it is
-deleted as well.
-.sp
-If this is invoked on a PKCS#11 hardware object, it will also delete the
-PKCS#11 public key and private key objects. If the public key object was
-already deleted by \fBcertdb\fR \fB-r\fR, that is not a problem.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-r\fR certspec\fR
-.ad
-.sp .6
-.RS 4n
-.sp
-.ne 2
-.na
-\fBcertdb\fR
-.ad
-.sp .6
-.RS 4n
-Removes certificates from the IKE certificate database. Certificates matching
-the specified certificate pattern are deleted. Any private keys in the
-\fBcertlocal\fR database corresponding to these certificates are not deleted.
-This removes the first matching identity.
-.sp
-If the pattern specifies a slot and the slot is deemed as "corrupted" or
-otherwise unrecognizable, it is deleted as well.
-.sp
-If this is invoked on a PKCS#11 hardware object, it will also delete the
-certificate and the PKCS#11 public key object. If the public key object was
-already deleted by \fBcertlocal\fR \fB-r\fR, that is not a problem.
-.RE
-
-.sp
-.ne 2
-.na
-\fBcertrldb\fR
-.ad
-.sp .6
-.RS 4n
-When specified with the \fBcertrldb\fR subcommand, this option deletes the CRL
-with the given \fBcertspec\fR.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-U\fR slot\fR
-.ad
-.sp .6
-.RS 4n
-.sp
-.ne 2
-.na
-\fB\fBcertlocal\fR\fR
-.ad
-.sp .6
-.RS 4n
-When specified with the \fBcertlocal\fR subcommand and the \fB-T\fR flag, this
-option unlinks a PKCS#11 private key object from the IKE database. There will
-be no attempt to access the hardware keystore or to validate or remove the
-on-token private key object. The object is simply disassociated from the IKE
-database.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcertdb\fR\fR
-.ad
-.sp .6
-.RS 4n
-When specified with the \fBcertdb\fR subcommand and the \fB-T\fR flag, this
-option unlinks a PKCS#11 certificate object from the IKE database. There will
-be no attempt to access the hardware keystore or to validate or remove the
-on-token certificate or public key objects. The objects are simply
-disassociated from the IKE database.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-C\fR certspec\fR
-.ad
-.sp .6
-.RS 4n
-.sp
-.ne 2
-.na
-\fBcertlocal\fR
-.ad
-.sp .6
-.RS 4n
-When specified with the \fBcertlocal\fR subcommand, this option copies both the
-private key and its corresponding certificate and the public key from the
-on-disk keystore to the hardware keystore specified by its PKCS#11 token. This
-subcommand attempts to create each of these components, even if one part fails.
-In all cases, the original on-disk private key and public certificate are still
-retained and must be deleted separately. Some hardware keystores, such as
-FIPS-140 compliant devices, may not support migration of private key objects in
-this manner.
-.RE
-
-.sp
-.ne 2
-.na
-\fBcertdb\fR
-.ad
-.sp .6
-.RS 4n
-When specified with the \fBcertdb\fR subcommand, this option copies the
-certificate matching the given \fBcertspec\fR and corresponding public key from
-the on-disk keystore to the hardware keystore specified by its PKCS#11 token.
-The original public certificate is still retained and must be deleted
-separately, if desired.
-.sp
-If \fB-p\fR is specified, the PKCS#11 token pin is stored in the clear on-disk,
-with root-protected file permissions. If not specified, one must unlock the
-token with \fBikeadm\fR(1M) once \fBin.iked\fR(1M) is running.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-L\fR pattern\fR
-.ad
-.sp .6
-.RS 4n
-.sp
-.ne 2
-.na
-\fBcertlocal\fR
-.ad
-.sp .6
-.RS 4n
-When specified with the \fBcertlocal\fR subcommand, this option links an
-existing on-token private key object to the \fBIKE\fR database. The object
-itself remains on the token. This option simply lets the \fBIKE\fR
-infrastructure know that the object exists, as if it had been originally
-created on-token with the Solaris \fBIKE\fR utilities.
-.RE
-
-.sp
-.ne 2
-.na
-\fBcertdb\fR
-.ad
-.sp .6
-.RS 4n
-When specified with the \fBcertdb\fR subcommand, this option links an existing
-on-token certificate object to the \fBIKE\fR database. The object itself
-remains on the token. This option simply lets the \fBIKE\fR infrastructure know
-that the object exists, as if it had been originally created on-token with the
-Solaris \fBIKE\fR utilities.
-.sp
-If \fB-p\fR is specified, the PKCS#11 token pin is stored in the clear on-disk,
-with root-protected file permissions. If not specified, one must unlock the
-token with \fBikeadm\fR(1M) once \fBin.iked\fR(1M) is running.
-.RE
-
-.RE
-
-.SH PARAMETERS
-The following parameters are supported:
-.sp
-.ne 2
-.na
-\fBcertspec\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the pattern matching of certificate specifications. Valid
-\fBcertspec\fRs are the Subject Name, Issuer Name, and Subject Alternative
-Names.
-.sp
-These can be specified as certificates that match the given \fBcertspec\fR
-values and that do not match other \fBcertspec\fR values. To signify a
-\fBcertspec\fR value that is not supposed to be present in a certificate, place
-an \fB!\fR in front of the tag.
-.sp
-Valid \fBcertspec\fRs are:
-.sp
-.in +2
-.nf
-<Subject Names>
-SUBJECT=<Subject Names>
-ISSUER=<Issuer Names>
-SLOT=<Slot Number in the certificate database>
-
-Example:"ISSUER=C=US, O=SUN" IP=1.2.3.4 !DNS=example.com
-Example:"C=US, O=CALIFORNIA" IP=5.4.2.1 DNS=example.com
-.fi
-.in -2
-.sp
-
-Valid arguments to the alternative names are as follows:
-.sp
-.in +2
-.nf
-IP=<IPv4 address>
-DNS=<Domain Name Server address>
-EMAIL=<email (RFC 822) address>
-URI=<Uniform Resource Indicator value>
-DN=<LDAP Directory Name value>
-RID=<Registered Identifier value>
-.fi
-.in -2
-.sp
-
-Valid Slot numbers can be specified without the keyword tag. Alternative name
-can also be issued with keyword tags.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-A\fR\fR
-.ad
-.sp .6
-.RS 4n
-Subject Alternative Names the certificate. The argument that follows the
-\fB-A\fR option should be in the form of \fItag\fR=\fIvalue\fR. Valid tags are
-\fBIP\fR, \fBDNS\fR, \fBEMAIL\fR, \fBURI\fR, \fBDN\fR, and \fBRID\fR (See
-example below).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-D\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBX.509\fR distinguished name for the certificate subject. It typically has
-the form of: \fBC\fR=country, \fBO\fR=organization, \fBOU\fR=organizational
-unit, \fBCN\fR=common name. Valid tags are: \fBC\fR, \fBO\fR, \fBOU\fR, and
-\fBCN\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR\fR
-.ad
-.sp .6
-.RS 4n
-Encoding output format. \fBpem\fR for \fBPEM Base64\fR or \fBber\fR for
-\fBASN.1 BER\fR. If \fB-f\fR is not specified, \fBpem\fR is assumed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-F\fR \fIvalidity end_time\fR\fR
-.ad
-.sp .6
-.RS 4n
-Finish certificate validity time. If the \fB-F\fR flag is not specified, the
-validity end time is calculated at four years from the validity start time. See
-\fBNOTES\fR for an explanation for the validity date and time syntax.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-m\fR\fR
-.ad
-.sp .6
-.RS 4n
-Key size. It can be \fB512\fR, \fB1024\fR, \fB2048\fR, \fB3072\fR, or
-\fB4096\fR. Use the following command to determine the key sizes supported by
-the Solaris Cryptographic Framework:
-.sp
-.in +2
-.nf
-% \fBcryptoadm list -vm\fR
-.fi
-.in -2
-.sp
-
-The mechanisms displayed by the preceding command are described in
-\fBpkcs11_softtoken\fR(5). If your system has hardware acceleration, the
-mechanisms supported by the hardware will be listed in a separate section for
-each provider. Mechanisms can be any of:
-.sp
-.in +2
-.nf
-CKM_RSA_PKCS_KEY_PAIR_GEN
-CKM_DSA_KEY_PAIR_GEN
-CKM_DH_PKCS_KEY_PAIR_GEN
-.fi
-.in -2
-.sp
-
-.LP
-Note -
-.sp
-.RS 2
-Some hardware does not support all key sizes. For example, the Sun
-Cryptographic Accelerator 4000's keystore (when using the \fB-T\fR option,
-below), supports only up to 2048-bit keys for RSA and 1024-bit keys for DSA.
-.RE
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-S\fR \fIvalidity start_time\fR\fR
-.ad
-.sp .6
-.RS 4n
-Start certificate validity time. If the \fB-S\fR flag is not specified, the
-current date and time is used for the validity start time. See \fBNOTES\fR,
-below, for an explanation for the validity date and time syntax.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-t\fR\fR
-.ad
-.sp .6
-.RS 4n
-Key type. It can be \fBrsa-sha1\fR, \fBrsa-md5\fR, or \fBdsa-sha1\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-T\fR\fR
-.ad
-.sp .6
-.RS 4n
-PKCS#11 token identifier for hardware key storage. This specifies a hardware
-device instance in conformance to the PKCS#11 standard. A PKCS#11 library must
-be specified in \fB/etc/inet/ike/config\fR. (See \fBike.config\fR(4).)
-.sp
-A token identifier is a 32-character space-filled string. If the token given is
-less than 32 characters long, it will be automatically padded with spaces.
-.sp
-If there is more than one PKCS#11 library on a system, keep in mind that only
-one can be specified at a time in \fB/etc/inet/ike/config\fR. There can be
-multiple tokens (each with individual key storage) for a single PKCS#11 library
-instance.
-.RE
-
-.SH SECURITY
-This command can save private keys of a public-private key pair into a file.
-Any exposure of a private key may lead to compromise if the key is somehow
-obtained by an adversary.
-.sp
-.LP
-The PKCS#11 hardware object functionality can address some of the shortcomings
-of on-disk private keys. Because IKE is a system service, user intervention at
-boot is not desirable. The token's PIN, however, is still needed. The PIN for
-the PKCS#11 token, therefore, is stored where normally the on-disk
-cryptographic keys would reside. This design decision is deemed acceptable
-because, with a hardware key store, \fBpossession\fR of the key is still
-unavailable, only \fBuse\fR of the key is an issue if the host is compromised.
-Beyond the PIN, the security of \fBikecert\fR then reduces to the security of
-the PKCS#11 implementation. The PKCS#11 implementation should be scrutinized
-also.
-.sp
-.LP
-Refer to the afterword by Matt Blaze in Bruce Schneier's \fIApplied
-Cryptography: Protocols, Algorithms, and Source Code in C\fR for additional
-information.
-.SH EXAMPLES
-\fBExample 1 \fRGenerating a Self-Signed Certificate
-.sp
-.LP
-The following is an example of a self-signed certificate:
-
-.sp
-.in +2
-.nf
-example# \fBikecert certlocal -ks -m 512 -t rsa-md5 -D "C=US, O=SUN" -A\fR
-IP=1.2.3.4
-Generating, please wait...
-Certificate generated.
-Certificate added to database.
------BEGIN X509 CERTIFICATE-----
-MIIBRDCB76ADAgECAgEBMA0GCSqGSIb3DQEBBAUAMBsxCzAJBgNVBAYTAlVTMQww
-CgYDVQQKEwNTVU4wHhcNMDEwMzE0MDEzMDM1WhcNMDUwMzE0MDEzMDM1WjAbMQsw
-CQYDVQQGEwJVUzEMMAoGA1UEChMDU1VOMFowDQYJKoZIhvcNAQEBBQADSQAwRgJB
-APDhqpKgjgRoRUr6twTMTtSuNsReEnFoReVer!ztpXpQK6ybYlRH18JIqU/uCV/r
-26R/cVXTy5qc5NbMwA40KzcCASOjIDAeMAsGA1UdDwQEAwIFoDAPBgNVHREECDAG
-hwQBAgMEMA0GCSqGSIb3DQEBBAUAA0EApTRD23KzN95GMvPD71hwwClukslKLVg8
-f1xm9ZsHLPJLRxHFwsqqjAad4j4wwwriiUmGAHLTGB0lJMl8xsgxag==
------END X509 CERTIFICATE-----
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRGenerating a CA Request
-.sp
-.LP
-Generating a \fBCA\fR request appears the same as the self-signed certificate.
-The only differences between the two is the option \fB-c\fR instead of
-\fB-s\fR, and the certificate data is a \fBCA\fR request.
-
-.sp
-.in +2
-.nf
-example# \fBikecert certlocal -kc -m 512 -t rsa-md5 \e
- -D "C=US, O=SUN" -A IP=1.2.3.4\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRA CA Request Using a Hardware Key Store
-.sp
-.LP
-The following example illustrates the specification of a token using the
-\fB-T\fR option.
-
-.sp
-.in +2
-.nf
-example# \fB# ikecert certlocal -kc -m 1024 -t rsa-md5 -T vca0-keystore \e
- -D "C=US, O=SUN" -A IP=1.2.3.4\fR
-.fi
-.in -2
-.sp
-
-.SH EXIT STATUS
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.sp .6
-.RS 4n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnon-zero\fR\fR
-.ad
-.sp .6
-.RS 4n
-An error occurred. Writes an appropriate error message to standard error.
-.RE
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/etc/inet/secret/ike.privatekeys/*\fR\fR
-.ad
-.sp .6
-.RS 4n
-Private keys. A private key \fBmust\fR have a matching public-key certificate
-with the same filename in \fB/etc/inet/ike/publickeys/\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/inet/ike/publickeys/*\fR\fR
-.ad
-.sp .6
-.RS 4n
-Public-key certificates. The names are only important with regard to matching
-private key names.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/inet/ike/crls/*\fR\fR
-.ad
-.sp .6
-.RS 4n
-Public key certificate revocation lists.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/inet/ike/config\fR\fR
-.ad
-.sp .6
-.RS 4n
-Consulted for the pathname of a PKCS#11 library.
-.RE
-
-.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-\fBikeadm\fR(1M), \fBin.iked\fR(1M), \fBgetdate\fR(3C), \fBike.config\fR(4),
-\fBattributes\fR(5), \fBpkcs11_softtoken\fR(5)
-.sp
-.LP
-Schneier, Bruce. \fIApplied Cryptography: Protocols, Algorithms, and Source
-Code in C\fR. Second Edition. John Wiley & Sons. New York, NY. 1996.
-.sp
-.LP
-RSA Labs, PKCS#11 v2.11: \fICryptographic Token Interface Standards\fR,
-November 2001.
-.SH NOTES
-The following is the validity date and time syntax when the \fB-F\fR or
-\fB-S\fR flags are used:
-.sp
-.LP
-For relative dates, the syntax is as follows:
-.sp
-.in +2
-.nf
-{+,-}[Ns][Nm][Nh][Nd][Nw][NM][Ny]
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-where:
-.sp
-.ne 2
-.na
-\fBN\fR
-.ad
-.sp .6
-.RS 4n
-represents an integer
-.RE
-
-.sp
-.ne 2
-.na
-\fBs\fR
-.ad
-.sp .6
-.RS 4n
-represents seconds
-.RE
-
-.sp
-.ne 2
-.na
-\fBm\fR
-.ad
-.sp .6
-.RS 4n
-represents minutes
-.RE
-
-.sp
-.ne 2
-.na
-\fBh\fR
-.ad
-.sp .6
-.RS 4n
-represents hours
-.RE
-
-.sp
-.ne 2
-.na
-\fBd\fR
-.ad
-.sp .6
-.RS 4n
-represents days
-.RE
-
-.sp
-.ne 2
-.na
-\fBw\fR
-.ad
-.sp .6
-.RS 4n
-represents weeks
-.RE
-
-.sp
-.ne 2
-.na
-\fBM\fR
-.ad
-.sp .6
-.RS 4n
-represents months
-.RE
-
-.sp
-.ne 2
-.na
-\fBy\fR
-.ad
-.sp .6
-.RS 4n
-represents years
-.RE
-
-.sp
-.LP
-These parameters can be given in any order. For example, "+3d12h" is three and
-a half days from now, and "-3y2M" is three years and 2 months ago.
-.sp
-.LP
-All parameters with fixed values can be added up in absolute seconds. Months
-and years, which have variable numbers of seconds, are calculated using
-calendar time. Months and years, which are not of fixed length, are defined
-such that adding a year or month means the same day next year or month. For
-instance, if it is Jan 26, 2005 and the certificate should expire 3 years and 1
-month from today, the expiration (end validity time) date will be Feb 26, 2008.
-Overflows are dealt with accordingly. For example, one month from Jan 31, 2005
-is March 3, 2005, since February has only 28 days.
-.sp
-.LP
-For absolute dates, the syntax of the date formats included in the file
-\fB/etc/datemsk\fR are accepted (See \fBgetdate\fR(3C) for details). Any date
-string prepended with a "+" or "-" is treated as a time relative to the current
-time, while others are treated as absolute dates. Sanity checking is also done
-to ensure that the end validity date is greater than the start validity date.
-For example, the following command would create a certificate with start date 1
-day and 2 hours ago and an end date of Jan 22nd, 2007 at 12:00:00 local time.
-.sp
-.in +2
-.nf
-# ikecert certlocal -ks -t rsa-sha1 -m 1024 \e
- -D "CN=mycert, O=Sun, C=US" \e
- -S -1d2h -F "01/22/2007 12:00:00"
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-As \fBin.iked\fR(1M) can run only in the global zone and exclusive-IP zones,
-this command is not useful in shared-IP zones.
diff --git a/usr/src/man/man1m/in.chargend.1m b/usr/src/man/man1m/in.chargend.1m
deleted file mode 100644
index e9673be03c..0000000000
--- a/usr/src/man/man1m/in.chargend.1m
+++ /dev/null
@@ -1,86 +0,0 @@
-'\" te
-.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH IN.CHARGEND 1M "Aug 23, 2004"
-.SH NAME
-in.chargend \- UDP or TCP character generator service daemon
-.SH SYNOPSIS
-.LP
-.nf
-\fBin.chargend\fR
-.fi
-
-.LP
-.nf
-FMRI \fIsvc\fR:/internet/chargen:default
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-FMRI stands for Fault Management Resource Identifier. It is used to identify
-resources managed by the Fault Manager. See \fBfmd\fR(1M) and \fBsmf\fR(5).
-.sp
-.LP
-The \fBin.chargend\fR service provides the server-side of the
-character-generator protocol. This protocol is used for debugging and bandwidth
-measurement and is available on both TCP and UDP transports, through port 19.
-.sp
-.LP
-The in.chargend service is an \fBinetd\fR(1M) \fBsmf\fR(5) delegated service.
-The \fBin.chargend\fR detects which transport is requested by examining the
-socket it is passed by the \fBinetd\fR daemon.
-.sp
-.ne 2
-.na
-\fBTCP-based service\fR
-.ad
-.RS 21n
-Once a connection is established, the \fBin.chargend\fR generates a stream of
-data. Any data received is discarded. The server generates data until the
-client program terminates the connection. Note that the data flow is limited by
-TCP flow control mechanisms.
-.RE
-
-.sp
-.ne 2
-.na
-\fBUDP-based service\fR
-.ad
-.RS 21n
-The \fBin.chargend\fR listens for UDP datagrams. When a datagram is received,
-the server generates a UDP datagram in response containing a random number of
-ASCII characters (ranging from 0 to 512 characters). Any received data is
-ignored.
-.RE
-
-.sp
-.LP
-The \fBin.chargend\fR data consists of a pattern of 72 character lines
-containing the printable, 7-bit ASCII characters. Each line is terminated with
-a carriage return and a line feed character.
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBinetd\fR(1M), \fBattributes\fR(5), \fBsmf\fR(5)
-.sp
-.LP
-RFC 864
diff --git a/usr/src/man/man1m/in.comsat.1m b/usr/src/man/man1m/in.comsat.1m
deleted file mode 100644
index 37d8007be7..0000000000
--- a/usr/src/man/man1m/in.comsat.1m
+++ /dev/null
@@ -1,76 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 2004 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH IN.COMSAT 1M "Jul 27, 2004"
-.SH NAME
-in.comsat, comsat \- biff server
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/in.comsat\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBcomsat\fR is the server process which listens for reports of incoming mail
-and notifies users who have requested to be told when mail arrives. It is
-invoked as needed by \fBinetd\fR(1M), and times out if inactive for a few
-minutes.
-.sp
-.LP
-\fBcomsat\fR listens on a datagram port associated with the \fBbiff\fR service
-specification (see \fBservices\fR(4)) for one line messages of the form
-.sp
-.LP
-\fIuser\fR\fB@\fR\fImailbox\fR\fB-\fR\fIoffset\fR
-.sp
-.LP
-If the \fIuser\fR specified is logged in to the system and the associated
-terminal has the owner execute bit turned on (by a \fBbiff y\fR), the
-\fIoffset\fR is used as a seek offset into the appropriate mailbox file, and
-the first 7 lines or 560 characters of the message are printed on the user's
-terminal. Lines which appear to be part of the message header other than the
-\fBFrom\fR, \fBTo\fR, \fBDate\fR, or \fBSubject\fR lines are not printed when
-displaying the message.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/var/adm/utmpx\fR\fR
-.ad
-.RS 18n
-user access and administration information
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBsvcs\fR(1), \fBinetadm\fR(1M), \fBinetd\fR(1M),
-\fBsvcadm\fR(1M), \fBservices\fR(4), \fBattributes\fR(5), \fBsmf\fR(5)
-.SH NOTES
-.sp
-.LP
-The message header filtering is prone to error.
-.sp
-.LP
-The \fBin.comsat\fR service is managed by the service management facility,
-\fBsmf\fR(5), under the service identifier:
-.sp
-.in +2
-.nf
-svc:/network/comsat:default
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Administrative actions on this service, such as enabling, disabling, or
-requesting restart, can be performed using \fBsvcadm\fR(1M). Responsibility for
-initiating and restarting this service is delegated to \fBinetd\fR(1M). Use
-\fBinetadm\fR(1M) to make configuration changes and to view configuration
-information for this service. The service's status can be queried using the
-\fBsvcs\fR(1) command.
diff --git a/usr/src/man/man1m/in.daytimed.1m b/usr/src/man/man1m/in.daytimed.1m
deleted file mode 100644
index c986ea9d4e..0000000000
--- a/usr/src/man/man1m/in.daytimed.1m
+++ /dev/null
@@ -1,81 +0,0 @@
-'\" te
-.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH IN.DAYTIMED 1M "Aug 23, 2004"
-.SH NAME
-in.daytimed \- UDP or TCP daytime protocol service daemon
-.SH SYNOPSIS
-.LP
-.nf
-\fBin.daytimed\fR
-.fi
-
-.LP
-.nf
-FMRI \fIsvc\fR:/internet/daytime:default
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-FMRI stands for Fault Management Resource Identifier. It is used to identify
-resources managed by the Fault Manager. See \fBfmd\fR(1M) and \fBsmf\fR(5).
-.sp
-.LP
-The \fBin.daytimed\fR service provides the server-side of the daytime protocol.
-This protocol is used for debugging and bandwidth measurement and is available
-on both TCP and UDP transports, through port 13.
-.sp
-.LP
-The \fBin.daytimed\fR service is an \fBinetd\fR(1M) \fBsmf\fR(5) delegated
-service. The \fBin.daytimed\fR detects which transport is requested by
-examining the socket it is passed by the \fBinetd\fR daemon.
-.sp
-.ne 2
-.na
-\fBTCP-based service\fR
-.ad
-.RS 21n
-Once a connection is established, the \fBin.daytimed\fR generates the current
-date and time in \fBctime\fR(3C) format as 7-bit ASCII and sends it through the
-connection. The server then closes the connection. Any data received from the
-client side of the connection is discarded.
-.RE
-
-.sp
-.ne 2
-.na
-\fBUDP-based service\fR
-.ad
-.RS 21n
-The \fBin.daytimed\fR listens for UDP datagrams. When a datagram is received,
-the server generates the current date and time in \fBctime\fR(3C) format as
-7-bit ASCII and inserts it in a UDP datagram sent in response to the client's
-request. Any received data is ignored.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBinetd\fR(1M), \fBattributes\fR(5), \fBsmf\fR(5)
-.sp
-.LP
-RFC 867
diff --git a/usr/src/man/man1m/in.discardd.1m b/usr/src/man/man1m/in.discardd.1m
deleted file mode 100644
index 7da93a01a6..0000000000
--- a/usr/src/man/man1m/in.discardd.1m
+++ /dev/null
@@ -1,81 +0,0 @@
-'\" te
-.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH IN.DISCARDD 1M "Aug 23, 2004"
-.SH NAME
-in.discardd \- UDP or TCP discard protocol service
-.SH SYNOPSIS
-.LP
-.nf
-\fBin.discardd\fR
-.fi
-
-.LP
-.nf
-FMRI \fIsvc\fR:/internet/discard:default
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-FMRI stands for Fault Management Resource Identifier. It is used to identify
-resources managed by the Fault Manager. See \fBfmd\fR(1M) and \fBsmf\fR(5).
-.sp
-.LP
-The \fBin.discardd\fR service provides the server-side of the discard protocol.
-This protocol is used for debugging and bandwidth measurement and is available
-on both TCP and UDP transports through port 9.
-.sp
-.LP
-The \fBin.discardd\fR service is an \fBinetd\fR(1M) \fBsmf\fR(5) delegated
-service. The \fBin.discardd\fR detects which transport is requested by
-examining the socket it is passed by the \fBinetd\fR daemon.
-.sp
-.LP
-The discard service simply throws away any data it receives from the client.
-.sp
-.ne 2
-.na
-\fBTCP-based service\fR
-.ad
-.RS 21n
-Once a connection is established, the \fBin.discardd\fR discards any data
-received. No response is generated. The connection remains open until the
-client terminates it.
-.RE
-
-.sp
-.ne 2
-.na
-\fBUDP-based service\fR
-.ad
-.RS 21n
-The \fBin.discardd\fR listens for UDP datagrams. When a datagram is received,
-the server discards it. No response is sent.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBinetd\fR(1M), \fBattributes\fR(5), \fBsmf\fR(5)
-.sp
-.LP
-RFC 863
diff --git a/usr/src/man/man1m/in.echod.1m b/usr/src/man/man1m/in.echod.1m
deleted file mode 100644
index 4229828c2d..0000000000
--- a/usr/src/man/man1m/in.echod.1m
+++ /dev/null
@@ -1,79 +0,0 @@
-'\" te
-.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH IN.ECHOD 1M "Aug 23, 2004"
-.SH NAME
-in.echod \- UDP or TCP echo protocol service daemon
-.SH SYNOPSIS
-.LP
-.nf
-\fBin.echod\fR
-.fi
-
-.LP
-.nf
-FMRI \fIsvc\fR:/internet/echo:default
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-FMRI stands for Fault Management Resource Identifier. It is used to identify
-resources managed by the Fault Manager. See \fBfmd\fR(1M) and \fBsmf\fR(5).
-.sp
-.LP
-The \fBin.echod\fR service provides the server-side of the echo protocol. This
-protocol is used for debugging and bandwidth measurement and is available on
-both TCP and UDP transports, through port 7.
-.sp
-.LP
-The \fBin.echod\fR service is an \fBinetd\fR(1M) \fBsmf\fR(5) delegated
-service. The \fBin.echod\fR detects which transport is requested by examining
-the socket it is passed by the \fBinetd\fR daemon.
-.sp
-.ne 2
-.na
-\fBTCP-based service\fR
-.ad
-.RS 21n
-Once a connection is established, the \fBin.echod\fR echoes any data received
-from the client back to the client. The server echoes data until the client
-program terminates the connection.
-.RE
-
-.sp
-.ne 2
-.na
-\fBUDP-based service\fR
-.ad
-.RS 21n
-The \fBin.echod\fR listens for UDP datagrams. When a datagram is received, the
-server creates a UDP datagram containing the data it received and sends it to
-the client.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBinetd\fR(1M), \fBattributes\fR(5), \fBsmf\fR(5)
-.sp
-.LP
-RFC 862
diff --git a/usr/src/man/man1m/in.fingerd.1m b/usr/src/man/man1m/in.fingerd.1m
deleted file mode 100644
index a8dfa6ceac..0000000000
--- a/usr/src/man/man1m/in.fingerd.1m
+++ /dev/null
@@ -1,118 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T
-.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH IN.FINGERD 1M "Jul 31, 2004"
-.SH NAME
-in.fingerd, fingerd \- remote user information server
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/in.fingerd\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBfingerd\fR implements the server side of the Name/Finger protocol, specified
-in \fIRFC 742\fR. The Name/Finger protocol provides a remote interface to
-programs which display information on system status and individual users. The
-protocol imposes little structure on the format of the exchange between client
-and server. The client provides a single command line to the finger server
-which returns a printable reply.
-.sp
-.LP
-\fBfingerd\fR waits for connections on \fBTCP\fR port 79. Once connected, it
-reads a single command line terminated by RETURN-LINEFEED and passes the
-arguments to \fBfinger\fR(1), prepended with \fB-s\fR. \fBfingerd\fR closes its
-connections as soon as the output is finished.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/var/adm/utmpx\fR\fR
-.ad
-.RS 20n
-User and accounting information.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/passwd\fR\fR
-.ad
-.RS 20n
-System password file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/adm/lastlog\fR\fR
-.ad
-.RS 20n
-Last login times.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB$HOME/.plan \fR\fR
-.ad
-.RS 20n
-User's plans.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB$HOME/.project \fR\fR
-.ad
-.RS 20n
-User's projects.
-.RE
-
-.SH USAGE
-.sp
-.LP
-\fBfingerd\fR and \fBin.fingerd\fR are IPv6-enabled. See \fBip6\fR(7P).
-.SH SEE ALSO
-.sp
-.LP
-\fBfinger\fR(1), \fBsvcs\fR(1), \fBinetadm\fR(1M), \fBinetd\fR(1M),
-\fBsvcadm\fR(1M), \fBattributes\fR(5), \fBsmf\fR(5), \fBip6\fR(7P)
-.sp
-.LP
-Harrenstien, Ken, \fIRFC 742, NAME/FINGER\fR, Network Information Center, SRI
-International, Menlo Park, Calif., December 1977.
-.SH NOTES
-.sp
-.LP
-Connecting directly to the server from a \fBTIP\fR or an equally narrow-minded
-TELNET-protocol user program can result in meaningless attempts at option
-negotiation being sent to the server, which foul up the command line
-interpretation. \fBfingerd\fR should be taught to filter out \fBIAC\fR's and
-perhaps even respond negatively (\fBIAC\fR does not) to all option commands
-received.
-.sp
-.LP
-The \fBin.fingerd\fR service is managed by the service management facility,
-\fBsmf\fR(5), under the service identifier:
-.sp
-.in +2
-.nf
-svc:/network/finger:default
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Administrative actions on this service, such as enabling, disabling, or
-requesting restart, can be performed using \fBsvcadm\fR(1M). Responsibility for
-initiating and restarting this service is delegated to \fBinetd\fR(1M). Use
-\fBinetadm\fR(1M) to make configuration changes and to view configuration
-information for this service. The service's status can be queried using the
-\fBsvcs\fR(1) command.
diff --git a/usr/src/man/man1m/in.iked.1m b/usr/src/man/man1m/in.iked.1m
deleted file mode 100644
index f0bca2a63f..0000000000
--- a/usr/src/man/man1m/in.iked.1m
+++ /dev/null
@@ -1,460 +0,0 @@
-'\" te
-.\" Copyright (C) 2009, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH IN.IKED 1M "Jan 27, 2009"
-.SH NAME
-in.iked \- daemon for the Internet Key Exchange (IKE)
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/inet/in.iked\fR [\fB-d\fR] [\fB-f\fR \fIfilename\fR] [\fB-p\fR \fIlevel\fR]
-.fi
-
-.LP
-.nf
-\fB/usr/lib/inet/in.iked\fR \fB-c\fR [\fB-f\fR \fIfilename\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBin.iked\fR performs automated key management for IPsec using the Internet
-Key Exchange (\fBIKE\fR) protocol.
-.sp
-.LP
-\fBin.iked\fR implements the following:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBIKE\fR authentication with either pre-shared keys, \fBDSS\fR signatures,
-\fBRSA\fR signatures, or \fBRSA\fR encryption.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Diffie-Hellman key derivation using either \fB768\fR, \fB1024\fR, or
-\fB1536\fR-bit public key moduli.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Authentication protection with cipher choices of \fBAES\fR, \fBDES\fR,
-Blowfish, or \fB3DES\fR, and hash choices of either \fBHMAC-MD5\fR or
-\fBHMAC-SHA-1\fR. Encryption in \fBin.iked\fR is limited to the \fBIKE\fR
-authentication and key exchange. See \fBipsecesp\fR(7P) for information
-regarding IPsec protection choices.
-.RE
-.sp
-.LP
-\fBin.iked\fR is managed by the following \fBsmf\fR(5) service:
-.sp
-.in +2
-.nf
-svc:/network/ipsec/ike
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-This service is delivered disabled because the configuration file needs to be
-created before the service can be enabled. See \fBike.config\fR(4) for the
-format of this file.
-.sp
-.LP
-See "Service Management Facility" for information on managing the \fBsmf\fR(5)
-service.
-.sp
-.LP
-\fBin.iked\fR listens for incoming \fBIKE\fR requests from the network and for
-requests for outbound traffic using the \fBPF_KEY\fR socket. See
-\fBpf_key\fR(7P).
-.sp
-.LP
-\fBin.iked\fR has two support programs that are used for IKE administration and
-diagnosis: \fBikeadm\fR(1M) and \fBikecert\fR(1M).
-.sp
-.LP
-The \fBikeadm\fR(1M) command can read the \fB/etc/inet/ike/config\fR file as a
-\fBrule\fR, then pass the configuration information to the running
-\fBin.iked\fR daemon using a doors interface.
-.sp
-.in +2
-.nf
-example# \fBikeadm read rule /etc/inet/ike/config\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Refreshing the \fBike\fR \fBsmf\fR(5) service provided to manage the
-\fBin.iked\fR daemon sends a \fBSIGHUP\fR signal to the \fBin.iked\fR daemon,
-which will (re)read \fB/etc/inet/ike/config\fR and reload the certificate
-database.
-.sp
-.LP
-The preceding two commands have the same effect, that is, to update the running
-IKE daemon with the latest configuration. See "Service Management Facility" for
-more details on managing the \fBin.iked\fR daemon.
-.SS "Service Management Facility"
-.sp
-.LP
-The IKE daemon (\fBin.iked\fR) is managed by the service management facility,
-\fBsmf\fR(5). The following group of services manage the components of IPsec:
-.sp
-.in +2
-.nf
-svc:/network/ipsec/ipsecalgs (See ipsecalgs(1M))
-svc:/network/ipsec/policy (See ipsecconf(1M))
-svc:/network/ipsec/manual-key (See ipseckey(1M))
-svc:/network/ipsec/ike (see ike.config(4))
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The manual-key and \fBike\fR services are delivered \fBdisabled\fR because the
-system administrator must create configuration files for each service, as
-described in the respective man pages listed above.
-.sp
-.LP
-The correct administrative procedure is to create the configuration file for
-each service, then enable each service using \fBsvcadm\fR(1M).
-.sp
-.LP
-The \fBike\fR service has a dependency on the \fBipsecalgs\fR and \fBpolicy\fR
-services. These services should be enabled before the \fBike\fR service.
-Failure to do so results in the \fBike\fR service entering maintenance mode.
-.sp
-.LP
-If the configuration needs to be changed, edit the configuration file then
-refresh the service, as follows:
-.sp
-.in +2
-.nf
-example# \fBsvcadm refresh ike\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The following properties are defined for the \fBike\fR service:
-.sp
-.ne 2
-.na
-\fB\fBconfig/admin_privilege\fR\fR
-.ad
-.sp .6
-.RS 4n
-Defines the level that \fBikeadm\fR(1M) invocations can change or observe the
-running \fBin.iked\fR. The acceptable values for this property are the same as
-those for the \fB-p\fR option. See the description of \fB-p\fR in
-\fBOPTIONS\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBconfig/config_file\fR\fR
-.ad
-.sp .6
-.RS 4n
-Defines the configuration file to use. The default value is
-\fB/etc/inet/ike/config\fR. See \fBike.config\fR(4) for the format of this
-file. This property has the same effect as the \fB-f\fR flag. See the
-description of \fB-f\fR in \fBOPTIONS\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBconfig/debug_level\fR\fR
-.ad
-.sp .6
-.RS 4n
-Defines the amount of debug output that is written to the \fBdebug_logfile\fR
-file, described below. The default value for this is \fBop\fR or
-\fBoperator\fR. This property controls the recording of information on events
-such as re-reading the configuration file. Acceptable value for
-\fBdebug_level\fR are listed in the \fBikeadm\fR(1M) man page. The value
-\fBall\fR is equivalent to the \fB-d\fR flag. See the description of \fB-d\fR
-in \fBOPTIONS\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBconfig/debug_logfile\fR\fR
-.ad
-.sp .6
-.RS 4n
-Defines where debug output should be written. The messages written here are
-from debug code within \fBin.iked\fR. Startup error messages are recorded by
-the \fBsmf\fR(5) framework and recorded in a service-specific log file. Use any
-of the following commands to examine the \fBlogfile\fR property:
-.sp
-.in +2
-.nf
-example# \fBsvcs -l ike\fR
-example# \fBsvcprop ike\fR
-example# \fBsvccfg -s ike listprop\fR
-.fi
-.in -2
-.sp
-
-The values for these log file properties might be different, in which case both
-files should be inspected for errors.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBconfig/ignore_errors\fR\fR
-.ad
-.sp .6
-.RS 4n
-A boolean value that controls \fBin.iked\fR's behavior should the configuration
-file have syntax errors. The default value is \fBfalse\fR, which causes
-\fBin.iked\fR to enter maintenance mode if the configuration is invalid.
-.sp
-Setting this value to \fBtrue\fR causes the IKE service to stay online, but
-correct operation requires the administrator to configure the running daemon
-with \fBikeadm\fR(1M). This option is provided for compatibility with previous
-releases.
-.RE
-
-.sp
-.LP
-These properties can be modified using \fBsvccfg\fR(1M) by users who have been
-assigned the following authorization:
-.sp
-.in +2
-.nf
-solaris.smf.value.ipsec
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-PKCS#11 token objects can be unlocked or locked by using \fBikeadm\fR token
-login and \fBikeadm\fR token logout, respectively. Availability of private
-keying material stored on these PKCS#11 token objects can be observed with:
-\fBikeadm dump certcache\fR. The following authorizations allow users to log
-into and out of PKCS#11 token objects:
-.sp
-.in +2
-.nf
-solaris.network.ipsec.ike.token.login
-solaris.network.ipsec.ike.token.logout
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-See \fBauths\fR(1), \fBikeadm\fR(1M), \fBuser_attr\fR(4), \fBrbac\fR(5).
-.sp
-.LP
-The service needs to be refreshed using \fBsvcadm\fR(1M) before a new property
-value is effective. General, non-modifiable properties can be viewed with the
-\fBsvcprop\fR(1) command.
-.sp
-.in +2
-.nf
-# \fBsvccfg -s ipsec/ike setprop config/config_file = \e
-/new/config_file\fR
-# \fBsvcadm refresh ike\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Administrative actions on this service, such as enabling, disabling,
-refreshing, and requesting restart can be performed using \fBsvcadm\fR(1M). A
-user who has been assigned the authorization shown below can perform these
-actions:
-.sp
-.in +2
-.nf
-solaris.smf.manage.ipsec
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The service's status can be queried using the \fBsvcs\fR(1) command.
-.sp
-.LP
-The \fBin.iked\fR daemon is designed to be run under \fBsmf\fR(5) management.
-While the \fBin.iked\fR command can be run from the command line, this is
-discouraged. If the \fBin.iked\fR command is to be run from the command line,
-the \fBike\fR \fBsmf\fR(5) service should be disabled first. See
-\fBsvcadm\fR(1M).
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-c\fR\fR
-.ad
-.RS 15n
-Check the syntax of a configuration file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-d\fR\fR
-.ad
-.RS 15n
-Use debug mode. The process stays attached to the controlling terminal and
-produces large amounts of debugging output. This option is deprecated. See
-"Service Management Facility" for more details.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR \fIfilename\fR\fR
-.ad
-.RS 15n
-Use \fIfilename\fR instead of \fB/etc/inet/ike/config\fR. See
-\fBike.config\fR(4) for the format of this file. This option is deprecated. See
-"Service Management Facility" for more details.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR \fIlevel\fR\fR
-.ad
-.RS 15n
-Specify privilege level (\fIlevel\fR). This option sets how much
-\fBikeadm\fR(1M) invocations can change or observe about the running
-\fBin.iked\fR.
-.sp
-Valid \fIlevels\fR are:
-.sp
-.ne 2
-.na
-\fB0\fR
-.ad
-.RS 5n
-Base level
-.RE
-
-.sp
-.ne 2
-.na
-\fB1\fR
-.ad
-.RS 5n
-Access to preshared key info
-.RE
-
-.sp
-.ne 2
-.na
-\fB2\fR
-.ad
-.RS 5n
-Access to keying material
-.RE
-
-If \fB-p\fR is not specified, \fIlevel\fR defaults to \fB0\fR.
-.sp
-This option is deprecated. See "Service Management Facility" for more details.
-.RE
-
-.SH SECURITY
-.sp
-.LP
-This program has sensitive private keying information in its image. Care should
-be taken with any core dumps or system dumps of a running \fBin.iked\fR daemon,
-as these files contain sensitive keying information. Use the \fBcoreadm\fR(1M)
-command to limit any corefiles produced by \fBin.iked\fR.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/inet/ike/config\fR\fR
-.ad
-.sp .6
-.RS 4n
-Default configuration file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/inet/secret/ike.privatekeys/*\fR\fR
-.ad
-.sp .6
-.RS 4n
-Private keys. A private key \fBmust\fR have a matching public-key certificate
-with the same filename in \fB/etc/inet/ike/publickeys/\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/inet/ike/publickeys/*\fR\fR
-.ad
-.sp .6
-.RS 4n
-Public-key certificates. The names are only important with regard to matching
-private key names.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/inet/ike/crls/*\fR\fR
-.ad
-.sp .6
-.RS 4n
-Public key certificate revocation lists.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/inet/secret/ike.preshared\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBIKE\fR pre-shared secrets for Phase I authentication.
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBsvcs\fR(1), \fBcoreadm\fR(1M), \fBikeadm\fR(1M), \fBikecert\fR(1M),
-\fBsvccfg\fR(1M), \fBsvcadm\fR(1M), \fBike.config\fR(4), \fBattributes\fR(5),
-\fBsmf\fR(5), \fBipsecesp\fR(7P), \fBpf_key\fR(7P)
-.sp
-.LP
-Harkins, Dan and Carrel, Dave. \fIRFC 2409, Internet Key Exchange (IKE)\fR.
-Network Working Group. November 1998.
-.sp
-.LP
-Maughan, Douglas, Schertler, M., Schneider, M., Turner, J. \fIRFC 2408,
-Internet Security Association and Key Management Protocol (ISAKMP)\fR. Network
-Working Group. November 1998.
-.sp
-.LP
-Piper, Derrell, \fIRFC 2407, The Internet IP Security Domain of Interpretation
-for ISAKMP\fR. Network Working Group. November 1998.
diff --git a/usr/src/man/man1m/in.lpd.1m b/usr/src/man/man1m/in.lpd.1m
deleted file mode 100644
index 3f448b8dae..0000000000
--- a/usr/src/man/man1m/in.lpd.1m
+++ /dev/null
@@ -1,122 +0,0 @@
-'\" te
-.\" Copyright (C) 2004, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH IN.LPD 1M "Feb 25, 2017"
-.SH NAME
-in.lpd \- BSD print protocol adaptor
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/print/in.lpd\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-\fBin.lpd\fR implements the network listening service for the \fBBSD\fR print
-protocol specified in \fBRFC\fR 1179. The \fBBSD\fR print protocol provides a
-remote interface for systems to interact with a local spooling system. The
-protocol defines five standard requests from the client to the server: starting
-queue processing, transferring print jobs, retrieving terse status, retrieving
-verbose status, and canceling print jobs.
-.sp
-.LP
-The \fBin.lpd\fR service is managed by the service management facility,
-\fBsmf\fR(5), under the service identifier:
-.sp
-.in +2
-.nf
-svc:/network/lp
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Administrative actions on this service, such as enabling, disabling, or
-requesting restart, can be performed using \fBsvcadm\fR(1M). Responsibility for
-initiating and restarting this service is delegated to \fBinetd\fR(1M). Use
-\fBinetadm\fR(1M) to make configuration changes and to view configuration
-information for this service. The service's status can be queried using the
-\fBsvcs\fR(1) command.
-.sp
-.LP
-\fBin.lpd\fR uses the \fBconfig/log_from_remote\fR property to allow or
-disallow remote access. The default value of this property, \fBlocalhost\fR,
-disallows remote access.
-.sp
-.LP
-\fBinetd\fR waits for connections on \fBTCP\fR port 515. Upon receipt of a
-connect request, \fBin.lpd\fR is started to service the connection. Once the
-request has been filled, \fBin.lpd\fR closes the connection and exits.
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRAllowing Remote Access
-.sp
-.LP
-The following command allows remote access to \fBin.lpd\fR.
-
-.sp
-.in +2
-.nf
-# \fBinetadm -m svc:/application/print/rfc1179:default bind_addr=""\fR
-.fi
-.in -2
-.sp
-
-.SH EXIT STATUS
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 12n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fBnon-zero\fR
-.ad
-.RS 12n
-An error occurred.
-.RE
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/etc/printers.conf\fR\fR
-.ad
-.sp .6
-.RS 4n
-System printer configuration database.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBprinters.conf.byname\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBNIS\fR version of \fB/etc/printers.conf\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/print/bsd-adaptor/bsd_*.so*\fR\fR
-.ad
-.sp .6
-.RS 4n
-Spooler translation modules.
-.RE
-
-.SH SEE ALSO
-.LP
-\fBsvcs\fR(1), \fBinetadm\fR(1M), \fBinetd\fR(1M), \fBsvcadm\fR(1M),
-\fBprinters.conf\fR(4), \fBattributes\fR(5), \fBsmf\fR(5)
diff --git a/usr/src/man/man1m/in.mpathd.1m b/usr/src/man/man1m/in.mpathd.1m
deleted file mode 100644
index aaef8d5542..0000000000
--- a/usr/src/man/man1m/in.mpathd.1m
+++ /dev/null
@@ -1,358 +0,0 @@
-'\" te
-.\" Copyright (C) 2009, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH IN.MPATHD 1M "May 13, 2009"
-.SH NAME
-in.mpathd \- IP multipathing daemon
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/inet/in.mpathd\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBin.mpathd\fR daemon performs failure and repair detection for IP
-interfaces that have been placed into an IPMP group (or optionally, for all IP
-interfaces on the system). It also controls which IP interfaces in an IPMP
-group are "active" (being used by the system to send or receive IP data
-traffic) in a manner that is consistent with the administrator's configured
-policy.
-.sp
-.LP
-The \fBin.mpathd\fR daemon can detect IP interface failure and repair through
-two methods: by monitoring the \fBIFF_RUNNING\fR flag for each IP interface
-(link-based failure detection), and by sending and receiving ICMP probes on
-each IP interface (probe-based failure detection). Link-based failure detection
-is instantaneous and is always enabled (provided the network driver supports
-the feature); probe-based failure detection must be enabled through the
-configuration of one or more test addresses (described below), but tests the
-entire IP interface send and receive path. The \fBipmpstat\fR(1M) utility can
-be used to check which failure detection methods are enabled.
-.sp
-.LP
-If only link-based failure detection is enabled, then the health of the
-interface is determined solely from the state of the \fBIFF_RUNNING\fR flag.
-Otherwise, the interface is considered failed if either of the two methods
-indicate a failure, and repaired once both methods indicate the failure has
-been corrected. Not all interfaces in a group need to be configured with the
-same failure detection methods.
-.sp
-.LP
-As mentioned above, to perform probe-based failure detection \fBin.mpathd\fR
-requires a test address on each IP interface for the purpose of sending and
-receiving probes. Each address must be marked \fBNOFAILOVER\fR (see
-\fBifconfig\fR(1M)) and \fBin.mpathd\fR will be limited to probing targets on
-the same subnet. Each address may be configured statically or acquired by means
-of DHCP. To find targets, \fBin.mpathd\fR first consults the routing table for
-routes on the same subnet, and uses the specified next-hop. If no routes match,
-it sends all-hosts ICMP probes and selects a subset of the systems that
-respond. Thus, for probe-based failure detection to operate, there must be at
-least one neighbor on each subnet that responds to ICMP echo request probes.
-The \fBipmpstat\fR(1M) utility can be used to display both the current probe
-target information and the status of sent probes.
-.sp
-.LP
-Both IPv4 and IPv6 are supported. If an IP interface is plumbed for IPv4 and an
-IPv4 test address is configured then \fBin.mpathd\fR will start sending ICMPv4
-probes over that IP interface. Similarly, if an IP interface is plumbed for
-IPv6 and an IPv6 test address is configured, then \fBin.mpathd\fR will start
-sending ICMPv6 probes over that IP interface. However, note that
-\fBin.mpathd\fR will ignore IPv6 test addresses that are not link-local. If
-both IPv4 and IPv6 are plumbed, it is sufficient to configure only one of the
-two, that is, either an IPv4 test address or an IPv6 test address. If both IPv4
-and IPv6 test addresses are configured, \fBin.mpathd\fR probes using both
-ICMPv4 and ICMPv6.
-.sp
-.LP
-As mentioned above, \fBin.mpathd\fR also controls which IP interfaces in an
-IPMP group are "active" (used by the system to send and receive IP data
-traffic). Specifically, \fBin.mpathd\fR tracks the administrative configuration
-of each IPMP group and attempts to keep the number of active IP interfaces in
-each group consistent with that configuration. Therefore, if an active IP
-interface fails, \fBin.mpathd\fR will activate an \fBINACTIVE\fR interface in
-the group, provided one exists (it will prefer \fBINACTIVE\fR interfaces that
-are also marked \fBSTANDBY\fR). Likewise, if an IP interface repairs and the
-resulting repair leaves the IPMP group with more active interfaces than the
-administrative configuration specifies, \fBin.mpathd\fR will deactivate one of
-the interfaces (preferably one marked \fBSTANDBY\fR), except when the
-\fBFAILBACK\fR variable is used, as described below. Similar adjustments will
-be made by \fBin.mpathd\fR when offlining IP interfaces (for instance, in
-response to \fBif_mpadm\fR(1M)).
-.sp
-.LP
-The \fBin.mpathd\fR daemon accesses three variable values in
-\fB/etc/default/mpathd\fR: \fBFAILURE_DETECTION_TIME\fR, \fBFAILBACK\fR and
-\fBTRACK_INTERFACES_ONLY_WITH_GROUPS\fR.
-.sp
-.LP
-The \fBFAILURE_DETECTION_TIME\fR variable specifies the probe-based failure
-detection time. The shorter the failure detection time, the more probe traffic.
-The default value of \fBFAILURE_DETECTION_TIME\fR is 10 seconds. This means
-that IP interface failure will be detected by \fBin.mpathd\fR within 10
-seconds. The IP interface repair detection time is always twice the value of
-\fBFAILURE_DETECTION_TIME\fR. Note that failures and repairs detected by
-link-based failure detection are acted on immediately, though \fBin.mpathd\fR
-may ignore link state changes if it suspects that the link state is flapping
-due to defective hardware; see \fBDIAGNOSTICS\fR.
-.sp
-.LP
-By default, \fBin.mpathd\fR limits failure and repair detection to IP
-interfaces that are configured as part of a named IPMP group. Setting
-\fBTRACK_INTERFACES_ONLY_WITH_GROUPS\fR to \fBno\fR enables failure and repair
-detection on all IP interfaces, even if they are not part of a named IPMP
-group. IP interfaces that are tracked but not part of a named IPMP group are
-considered to be part of the "anonymous" IPMP group. In addition to having no
-name, this IPMP group is special in that its IP interfaces are not equivalent
-and thus cannot take over for one another in the event of an IP interface
-failure. That is, the anonymous IPMP group can only be used for failure and
-repair detection, and provides no high-availability or load-spreading.
-.sp
-.LP
-As described above, when \fBin.mpathd\fR detects that an IP interface has
-repaired, it activates it so that it will again be used to send and receive IP
-data traffic. However, if \fBFAILBACK\fR is set to \fBno\fR, then the IP
-interface will only be activated if no other active IP interfaces in the group
-remain. However, the interface may subsequently be activated if another IP
-interface in the group fails.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/default/mpathd\fR\fR
-.ad
-.RS 23n
-Contains default values used by the \fBin.mpathd\fR daemon.
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBif_mpadm\fR(1M), \fBifconfig\fR(1M), \fBipmpstat\fR(1M),
-\fBattributes\fR(5), \fBicmp\fR(7P), \fBicmp6\fR(7P),
-.sp
-.LP
-\fISystem Administration Guide: IP Services\fR
-.SH DIAGNOSTICS
-.sp
-.LP
-IP interface \fIinterface_name\fR has a hardware address which is not unique in
-group \fIgroup_name\fR; offlining
-.RS +4
-\fBDescription: \fR
-.sp
-.LP
-For probe-based failure detection, load-spreading, and other code IPMP features
-to work properly, each IP interface in an IPMP group must have a unique
-hardware address. If this requirement is not met, \fBin.mpathd\fR will
-automatically offline all but one of the IP interfaces with duplicate hardware
-addresses.
-.RE
-
-.sp
-.LP
-IP interface \fIinterface_name\fR now has a unique hardware address in group
-\fIgroup_name\fR; onlining
-.RS +4
-\fBDescription: \fR
-.sp
-.LP
-The previously-detected duplicate hardware address is now unique, and therefore
-\fBin.mpathd\fR has brought \fIinterface_name\fR back online.
-.RE
-
-.sp
-.LP
-Test address \fIaddress\fR is not unique in group; disabling probe-based
-failure detection on \fIinterface_name\fR
-.RS +4
-\fBDescription: \fR
-.sp
-.LP
-For \fBin.mpathd\fR to perform probe-based failure detection, each test address
-in the group must be unique.
-.RE
-
-.sp
-.LP
-No test address configured on interface \fIinterface_name\fR disabling
-probe-based failure detection on it
-.RS +4
-\fBDescription: \fR
-.sp
-.LP
-For \fBin.mpathd\fR to perform probe-based failure detection on an IP
-interface, it must be configured with a test address: IPv4, IPv6, or both.
-.RE
-
-.sp
-.LP
-IP \fIinterface_name\fR in group \fIgroup_name\fR is not plumbed for IPv[4|6],
-affecting IPv[4|6] connectivity
-.RS +4
-\fBDescription: \fR
-.sp
-.LP
-All IP interfaces in a multipathing group must be homogeneously plumbed. For
-example, if one IP interface is plumbed for IPv4, then all IP interfaces in the
-group must be plumbed for IPv4, or IPv4 packets will not be able to be reliably
-sent and received. The STREAMS modules pushed on all IP interfaces must also be
-identical.
-.RE
-
-.sp
-.LP
-The link has come up on \fIinterface_name\fR more than 2 times in the last
-minute; disabling repair until it stabilizes.
-.RS +4
-\fBDescription: \fR
-.sp
-.LP
-To limit the impact of interfaces with intermittent hardware (such as a bad
-cable), \fBin.mpathd\fR will not consider an IP interface with a frequently
-changing link state as repaired until the link state stabilizes.
-.RE
-
-.sp
-.LP
-Invalid failure detection time of \fItime\fR, assuming default 10000 ms
-.RS +4
-\fBDescription: \fR
-.sp
-.LP
-An invalid value was encountered for \fBFAILURE_DETECTION_TIME\fR in the
-\fB/etc/default/mpathd\fR file.
-.RE
-
-.sp
-.LP
-Too small failure detection time of \fItime\fR, assuming minimum of 100 ms
-.RS +4
-\fBDescription: \fR
-.sp
-.LP
-The minimum value that can be specified for \fBFAILURE_DETECTION_TIME\fR is
-currently 100 milliseconds.
-.RE
-
-.sp
-.LP
-Invalid value for FAILBACK \fIvalue\fR
-.RS +4
-\fBDescription: \fR
-.sp
-.LP
-Valid values for the boolean variable \fBFAILBACK\fR are \fByes\fR or \fBno\fR.
-.RE
-
-.sp
-.LP
-Invalid value for TRACK_INTERFACES_ONLY_WITH_GROUPS \fIvalue\fR
-.RS +4
-\fBDescription: \fR
-.sp
-.LP
-Valid values for the boolean variable \fBTRACK_INTERFACES_ONLY_WITH_GROUPS\fR
-are \fByes\fR or \fBno\fR.
-.RE
-
-.sp
-.LP
-Cannot meet requested failure detection time of \fItime\fR ms on (inet[6]
-\fIinterface_name\fR) new failure detection time for group \fIgroup_name\fR is
-\fItime\fR ms
-.RS +4
-\fBDescription: \fR
-.sp
-.LP
-The round trip time for \fBICMP\fR probes is higher than necessary to maintain
-the current failure detection time. The network is probably congested or the
-probe targets are loaded. \fBin.mpathd\fR automatically increases the failure
-detection time to whatever it can achieve under these conditions.
-.RE
-
-.sp
-.LP
-Improved failure detection time \fItime\fR ms on (inet[6] \fIinterface_name\fR)
-for group \fIgroup_name\fR
-.RS +4
-\fBDescription: \fR
-.sp
-.LP
-The round trip time for \fBICMP\fR probes has now decreased and \fBin.mpathd\fR
-has lowered the failure detection time correspondingly.
-.RE
-
-.sp
-.LP
-IP interface failure detected on \fIinterface_name\fR
-.RS +4
-\fBDescription: \fR
-.sp
-.LP
-\fBin.mpathd\fR has detected a failure on \fIinterface_name\fR, and has set the
-\fBIFF_FAILED\fR flag on \fIinterface_name\fR, ensuring that it will not be
-used for IP data traffic.
-.RE
-
-.sp
-.LP
-IP interface repair detected on \fIinterface_name\fR
-.RS +4
-\fBDescription: \fR
-.sp
-.LP
-\fBin.mpathd\fR has detected a repair on \fIinterface_name\fR, and has cleared
-the \fBIFF_FAILED\fR flag. Depending on the administrative configuration, the
-\fIinterface_name\fR may again be used for IP data traffic.
-.RE
-
-.sp
-.LP
-All IP interfaces in group \fIgroup\fR are now unusable
-.RS +4
-\fBDescription: \fR
-.sp
-.LP
-\fBin.mpathd\fR has determined that none of the IP interfaces in \fIgroup\fR
-can be used for IP data traffic, breaking network connectivity for the group.
-.RE
-
-.sp
-.LP
-At least 1 IP interface (\fIinterface_name\fR) in group \fIgroup\fR is now
-usable
-.RS +4
-\fBDescription: \fR
-.sp
-.LP
-\fBin.mpathd\fR has determined that at least one of the IP interfaces in
-\fIgroup\fR can again be used for IP data traffic, restoring network
-connectivity for the group.
-.RE
-
-.sp
-.LP
-The link has gone down on \fIinterface_name\fR
-.RS +4
-\fBDescription: \fR
-.sp
-.LP
-\fBin.mpathd\fR has detected that the \fBIFF_RUNNING\fR flag for
-\fIinterface_name\fR has been cleared, indicating that the link has gone down.
-.RE
-
-.sp
-.LP
-The link has come up on \fIinterface_name\fR
-.RS +4
-\fBDescription: \fR
-.sp
-.LP
-\fBin.mpathd\fR has detected that the \fBIFF_RUNNING\fR flag for
-\fIinterface_name\fR has been set, indicating that the link has come up.
-.RE
-
diff --git a/usr/src/man/man1m/in.ndpd.1m b/usr/src/man/man1m/in.ndpd.1m
deleted file mode 100644
index f967d1f652..0000000000
--- a/usr/src/man/man1m/in.ndpd.1m
+++ /dev/null
@@ -1,265 +0,0 @@
-'\" te
-.\" Copyright (C) 2003, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH IN.NDPD 1M "September 12, 2020"
-.SH NAME
-in.ndpd \- daemon for IPv6 autoconfiguration
-.SH SYNOPSIS
-.nf
-\fB/usr/lib/inet/in.ndpd\fR [\fB-adt\fR] [\fB-f\fR \fIconfig_file\fR]
-.fi
-
-.SH DESCRIPTION
-\fBin.ndpd\fR provides both the host and router autoconfiguration components of
-Neighbor Discovery for IPv6 and Stateless and Stateful Address
-Autoconfiguration for IPv6. In particular, \fBin.ndpd\fR implements:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-router discovery;
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-prefix discovery;
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-parameter discovery;
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-invocation of stateful address autoconfiguration;
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-stateless address autoconfiguration; and
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-privacy extensions for stateless address autoconfiguration.
-.RE
-.sp
-.LP
-Other aspects of Neighbor Discovery are implemented by \fBip6\fR(7P),
-including:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-address resolution;
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-neighbor unreachability detection; and
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-redirect.
-.RE
-.sp
-.LP
-The duplicate address detection function is implemented by the system kernel.
-.sp
-.LP
-\fBin.ndpd\fR is managed by the service management facility (SMF), by means of
-the service identifier:
-.sp
-.in +2
-.nf
-svc:/network/routing/ndp:default
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-If the \fB/etc/inet/ndpd.conf\fR file does not exist or does not set the
-variable \fBAdvSendAdvertisements\fR to true for a network interface, then
-\fBin.ndpd\fR will make the node a host for that interface, that is, sending
-router solicitation messages and then using router advertisement messages it
-receives to autoconfigure the node. Note that \fBin.ndpd\fR only autoconfigures
-the addresses of global or site-local scope from the prefix advertisement.
-.sp
-.LP
-If \fBAdvSendAdvertisements\fR is set to true for an interface, then
-\fBin.ndpd\fR will perform router functions on that interface, that is, sending
-router advertisement messages to autoconfigure the attached hosts, but not use
-any advertisements it receives for autoconfiguration. However, when sending
-advertisements, \fBin.ndpd\fR will use the advertisements it sends itself to
-autoconfigure its prefixes.
-.sp
-.LP
-Stateless autoconfiguration requires no manual configuration of hosts, minimal
-(if any) configuration of routers, and no additional servers. The stateless
-mechanism enables a host to generate its own addresses and uses local
-information as well as non-local information that is advertised by routers to
-generate the addresses. \fBin.ndpd\fR will plumb logical interfaces for each of
-these addresses.
-.sp
-.LP
-Stateful autoconfiguration involves the \fBdhcpagent\fR(1M) daemon and the use
-of the DHCPv6 protocol. The \fBdhcpagent\fR daemon is responsible for plumbing
-the logical interfaces for the acquired addresses, maintaining the leases, and
-handling duplicate addresses. \fBin.ndpd\fR starts the \fBdhcpagent\fR daemon
-automatically and signals when DHCPv6 should be started. \fBin.ndpd\fR also
-detects when \fBdhcpagent\fR configures the logical interfaces, and sets the
-appropriate prefix length on each according to received Routing Advertisement
-messages. \fBin.ndpd\fR will not stop \fBdhcpagent\fR; use \fBifconfig\fR(1M)
-to control \fBdhcpagent\fR if necessary.
-.sp
-.LP
-Temporary addresses that are autoconfigured for an interface can also be
-implemented. A temporary address token is enabled for one or more interfaces on
-a host. However, unlike standard, autoconfigured IPv6 addresses, a temporary
-address consists of the site prefix and a randomly generated 64 bit number.
-This random number becomes the interface ID segment of the IPv6 address. A
-link-local address is not generated with the temporary address as the interface
-ID.
-.sp
-.LP
-If the kernel detects a duplicate temporary address, \fBin.ndpd\fR will
-automatically choose another.
-.sp
-.LP
-Routers advertise all prefixes that have been assigned on the link. IPv6 hosts
-use Neighbor Discovery to obtain a subnet prefix from a local router. Hosts
-automatically create IPv6 addresses by combining the subnet prefix with an
-interface IDs that is generated from an interface's MAC address. In the absence
-of routers, a host can generate only link-local addresses. Link-local addresses
-can only be used for communication with nodes on the same link.
-.sp
-.LP
-For information on how to enable IPv6 address autoconfiguration, see
-\fISystem Administration Guide: IP Services\fR.
-.SH OPTIONS
-Supported options and equivalent SMF service properties are listed below. SMF
-service properties are set using a command of the form:
-.sp
-.in +2
-.nf
-# \fBrouteadm -m ndp:default \fIkey\fR=\fIvalue\fR\fR
-.fi
-.in -2
-.sp
-
-.sp
-.ne 2
-.na
-\fB\fB-a\fR\fR
-.ad
-.sp .6
-.RS 4n
-Turn off stateless and stateful address auto configuration. When set, the
-daemon does not autoconfigure any addresses and does not renumber any
-addresses. This option does the same thing as the following lines in
-\fBndpd.conf\fR(4):
-.sp
-.in +2
-.nf
-ifdefault StatefulAddrConf off
-ifdefault StatelessAddrConf off
-.fi
-.in -2
-
-Use of this option is equivalent to setting the \fBstateless_addr_conf\fR
-property to false.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-d\fR\fR
-.ad
-.sp .6
-.RS 4n
-Turn on large amounts of debugging output on \fBstdout\fR. When set, the
-program runs in the foreground and stays attached to the controlling terminal.
-Use of this option is equivalent to setting the \fBdebug\fR property to true.
-.RE
-
-.sp
-.ne 2
-.na
-\fB-f\fR \fIconfig_file\fR
-.ad
-.sp .6
-.RS 4n
-Use \fIconfig_file\fR for configuration information instead of the default
-\fB/etc/inet/ndpd.conf\fR. Use of this option is equivalent to setting the
-\fBconfig_file\fR property to the configuration file to be used.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-t\fR\fR
-.ad
-.sp .6
-.RS 4n
-Turn on tracing (printing) of all sent and received packets to \fBstdout\fR.
-When set, the program runs in the foreground and stays attached to the
-controlling terminal. As such, this option cannot be run under the SMF.
-.RE
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/etc/inet/ndpd.conf\fR\fR
-.ad
-.RS 23n
-Configuration file. This file is not necessary on a host, but it is required on
-a router to enable \fBin.ndpd\fR to advertise autoconfiguration information to
-the hosts.
-.RE
-
-.SH SEE ALSO
-\fBdhcpagent\fR(1M), \fBifconfig\fR(1M), \fBndp\fR(1M), \fBrouteadm\fR(1M),
-\fBsvcadm\fR(1M), \fBndpd.conf\fR(4), \fBattributes\fR(5), \fBsmf\fR(5),
-\fBicmp6\fR(7P), \fBip6\fR(7P), \fBndp\fR(7P)
-.sp
-.LP
-Narten, T., Nordmark, E., Simpson, W. \fIRFC 2461, Neighbor Discovery for IP
-Version 6 (IPv6)\fR. The Internet Society. December 1998.
-.sp
-.LP
-Thomson, S., Narten, T. \fIRFC 2462, IPv6 Stateless Address
-Autoconfiguration\fR. The Internet Society. December 1998.
-.sp
-.LP
-Narten, T., and Draves, R. \fIRFC 3041, Privacy Extensions for Stateless
-Address Autoconfiguration in IPv6\fR. The Internet Society. January 2001.
-.SH DIAGNOSTICS
-Receipt of a \fBSIGHUP\fR signal will make \fBin.ndpd\fR restart and reread
-\fB/etc/inet/ndpd.conf\fR.
-.SH NOTES
-The \fBin.ndpd\fR daemon service is managed by the service management facility,
-\fBsmf\fR(5), under the service identifier:
-.sp
-.in +2
-.nf
-svc:/network/routing/ndp:default
-.fi
-.in -2
-
-.sp
-.LP
-Administrative actions on this service, such as enabling, disabling, or
-requesting restart, can be performed using \fBsvcadm\fR(1M) or
-\fBrouteadm\fR(1M).
diff --git a/usr/src/man/man1m/in.rarpd.1m b/usr/src/man/man1m/in.rarpd.1m
deleted file mode 100644
index c6b911e53e..0000000000
--- a/usr/src/man/man1m/in.rarpd.1m
+++ /dev/null
@@ -1,171 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 2004 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH IN.RARPD 1M "Aug 20, 2004"
-.SH NAME
-in.rarpd, rarpd \- DARPA Reverse Address Resolution Protocol server
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/in.rarpd\fR [\fB-d\fR] \fB-a\fR
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/in.rarpd\fR [\fB-d\fR] \fIdevice\fR \fIunit\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBin.rarpd\fR starts a daemon that responds to Reverse Address Resolution
-Protocol (RARP) requests. The daemon forks a copy of itself that runs in
-background. It must be run as root.
-.sp
-.LP
-RARP is used by machines at boot time to discover their Internet Protocol (IP)
-address. The booting machine provides its Ethernet address in a \fBRARP\fR
-request message. Using the \fBethers\fR and \fBhosts\fR databases,
-\fBin.rarpd\fR maps this Ethernet address into the corresponding \fBIP\fR
-address which it returns to the booting machine in an \fBRARP\fR reply message.
-The booting machine must be listed in both databases for \fBin.rarpd\fR to
-locate its \fBIP\fR address. \fBin.rarpd\fR issues no reply when it fails to
-locate an \fBIP\fR address.
-.sp
-.LP
-\fBin.rarpd\fR uses the \fBSTREAMS-based\fR Data Link Provider Interface (DLPI)
-message set to communicate directly with the datalink device driver.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-a\fR\fR
-.ad
-.RS 6n
-Get the list of available network interfaces from \fBIP\fR using the
-\fBSIOCGIFADDR\fR ioctl and start a \fBRARP\fR daemon process on each interface
-returned.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-d\fR\fR
-.ad
-.RS 6n
-Print assorted debugging messages while executing.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRStarting An \fBin.rarpd\fR Daemon For Each Network Interface
-Name Returned From \fB/dev/ip:\fR
-.sp
-.LP
-The following command starts an \fBin.rarpd\fR for each network interface name
-returned from \fB/dev/ip:\fR
-
-.sp
-.in +2
-.nf
-example# /usr/sbin/in.rarpd \fB-a\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRStarting An \fBin.rarpd\fR Daemon On The Device \fB/dev/le\fR
-With The Device Instance Number \fB0\fR
-.sp
-.LP
-The following command starts one \fBin.rarpd\fR on the device \fB/dev/le\fR
-with the device instance number \fB0\fR.
-
-.sp
-.in +2
-.nf
-example# /usr/sbin/in.rarpd le 0
-.fi
-.in -2
-.sp
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/ethers\fR\fR
-.ad
-.RS 15n
-File or other source, as specified by \fBnsswitch.conf\fR(4).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/hosts\fR\fR
-.ad
-.RS 15n
-File or other source, as specified by \fBnsswitch.conf\fR(4).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/tftpboot\fR\fR
-.ad
-.RS 15n
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/ip\fR\fR
-.ad
-.RS 15n
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/arp\fR\fR
-.ad
-.RS 15n
-
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBsvcs\fR(1), \fBboot\fR(1M), \fBifconfig\fR(1M), \fBsvcadm\fR(1M),
-\fBethers\fR(4), \fBhosts\fR(4), \fBnetconfig\fR(4),
-\fBnsswitch.conf\fR(4), \fBattributes\fR(5), \fBsmf\fR(5), \fBdlpi\fR(7P)
-.sp
-.LP
-Finlayson, R., Mann, T., Mogul, J., and Theimer, M., \fIRFC 903, A Reverse
-Address Resolution Protocol\fR, Network Information Center, SRI International,
-June 1984.
-.SH NOTES
-.sp
-.LP
-The \fBin.rarpd\fR service is managed by the service management facility,
-\fBsmf\fR(5), under the service identifier:
-.sp
-.in +2
-.nf
-svc:/network/rarp
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Administrative actions on this service, such as enabling, disabling, or
-requesting restart, can be performed using \fBsvcadm\fR(1M). The service's
-status can be queried using the \fBsvcs\fR(1) command.
diff --git a/usr/src/man/man1m/in.rdisc.1m b/usr/src/man/man1m/in.rdisc.1m
deleted file mode 100644
index 780d168805..0000000000
--- a/usr/src/man/man1m/in.rdisc.1m
+++ /dev/null
@@ -1,190 +0,0 @@
-'\" te
-.\" Copyright (c) 2004 Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH IN.RDISC 1M "Nov 9, 2006"
-.SH NAME
-in.rdisc, rdisc \- network router discovery daemon
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/in.rdisc\fR [\fB-a\fR] [\fB-f\fR] [\fB-s\fR] [\fIsend-address\fR] [\fIreceive-address\fR]
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/in.rdisc\fR \fB-r\fR [\fB-p\fR \fIpreference\fR] [\fB-T\fR \fIinterval\fR]
- [\fIsend-address\fR] [\fIreceive-address\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBin.rdisc\fR remains part of the software distribution of the Solaris
-Operating Environment. It is, however, not used by default. \fBin.routed\fR(1M)
-includes the functionality provided by \fBin.rdisc\fR. See \fBrouteadm\fR(1M)
-for details of how to specify the IPV4 routing daemon.
-.sp
-.LP
-\fBin.rdisc\fR implements the \fBICMP\fR router discovery protocol. The first
-form of the command is used on hosts and the second form is used on routers.
-.sp
-.LP
-\fBin.rdisc\fR can be invoked in either the first form (host mode) or second
-form (router mode).
-.sp
-.LP
-On a host, \fBin.rdisc\fR populates the network routing tables with default
-routes. On a router, advertises the router to all the hosts.
-.sp
-.LP
-\fBin.rdisc\fR is managed by the service management facility (SMF), by means of
-the service identifier:
-.sp
-.in +2
-.nf
-svc:/network/routing/rdisc:default
-.fi
-.in -2
-.sp
-
-.SS "Host (First Form)"
-.sp
-.LP
-On a host, \fBin.rdisc\fR listens on the \fBALL_HOSTS\fR (224.0.0.1) multicast
-address for \fBROUTER_ADVERTISE\fR messages from routers. The received messages
-are handled by first ignoring those listed router addresses with which the host
-does not share a network. Among the remaining addresses, the ones with the
-highest preference are selected as default routers and a default route is
-entered in the kernel routing table for each one of them.
-.sp
-.LP
-Optionally, \fBin.rdisc\fR can avoid waiting for routers to announce themselves
-by sending out a few \fBROUTER_SOLICITATION\fR messages to the
-\fBALL_ROUTERS\fR (224.0.0.2) multicast address when it is started.
-.sp
-.LP
-A timer is associated with each router address. The address will no longer be
-considered for inclusion in the routing tables if the timer expires before a
-new \fIadvertise\fR message is received from the router. The address will also
-be excluded from consideration if the host receives an \fIadvertise\fR message
-with the preference being maximally negative or with a lifetime of zero.
-.SS "Router (Second Form)"
-.sp
-.LP
-When \fBin.rdisc\fR is started on a router, it uses the \fBSIOCGIFCONF\fR
-\fBioctl\fR(2) to find the interfaces configured into the system and it starts
-listening on the \fBALL_ROUTERS\fR multicast address on all the interfaces that
-support multicast. It sends out \fIadvertise\fR messages to the \fBALL_HOSTS\fR
-multicast address advertising all its \fBIP\fR addresses. A few initial
-\fIadvertise\fR messages are sent out during the first 30 seconds and after
-that it will transmit \fIadvertise\fR messages approximately every 600 seconds.
-.sp
-.LP
-When \fBin.rdisc\fR receives a \fIsolicitation\fR message, it sends an
-\fIadvertise\fR message to the host that sent the \fIsolicitation\fR message.
-.sp
-.LP
-When \fBin.rdisc\fR is terminated by a signal, it sends out an \fIadvertise\fR
-message with the preference being maximally negative.
-.SH OPTIONS
-.sp
-.LP
-Supported options and equivalent SMF service properties are listed below. SMF
-service properties are set using a command of the form:
-.sp
-.in +2
-.nf
-# \fBrouteadm -m rdisc:default \fIkey\fR=\fIvalue\fR\fR
-.fi
-.in -2
-.sp
-
-.sp
-.ne 2
-.na
-\fB\fB-a\fR\fR
-.ad
-.RS 17n
-Accept all routers independent of the preference they have in their
-\fIadvertise\fR messages. Normally, \fBin.rdisc\fR only accepts (and enters in
-the kernel routing tables) the router or routers with the highest preference.
-Use of this option is equivalent to setting the \fBaccept_all\fR property to
-true.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR\fR
-.ad
-.RS 17n
-Run \fBin.rdisc\fR forever even if no routers are found. Normally,
-\fBin.rdisc\fR gives up if it has not received any \fIadvertise\fR message
-after soliciting three times, in which case it exits with a non-zero exit code.
-If \fB-f\fR is not specified in the first form then \fB-s\fR must be specified.
-For SMF execution, this option is required.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-r\fR\fR
-.ad
-.RS 17n
-Act as a router, rather than a host. Use of this option is equivalent to
-setting the \fBact_as_router\fR property to true.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR\fR
-.ad
-.RS 17n
-Send three \fIsolicitation\fR messages initially to quickly discover the
-routers when the system is booted. When \fB-s\fR is specified, \fBin.rdisc\fR
-exits with a non-zero exit code if it can not find any routers. This can be
-overridden with the \fB-f\fR option. This option is not compatible with SMF
-execution and is not supported for the \fBrdisc\fR service.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR \fIpreference\fR\fR
-.ad
-.RS 17n
-Set the preference transmitted in the \fIsolicitation\fR messages. The default
-is zero. Use of this option is equivalent to setting the \fBpreference\fR
-property.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-T\fR \fIinterval\fR\fR
-.ad
-.RS 17n
-Set the interval between transmitting the \fIadvertise\fR messages. The default
-time is 600 seconds. Use of this option is equivalent to setting the
-\fBtransmit_interval\fR property.
-.RE
-
-.sp
-.LP
-The \fBsend-address\fR and \fBreceive-address\fR daemon options can be set by
-means of the \fBsend_address\fR and \fBreceive_address\fR properties.
-.SH SEE ALSO
-.sp
-.LP
-\fBin.routed\fR(1M), \fBrouteadm\fR(1M), \fBsvcadm\fR(1M), \fBioctl\fR(2),
-\fBgateways\fR(4), \fBattributes\fR(5), \fBsmf\fR(5), \fBicmp\fR(7P),
-\fBinet\fR(7P)
-.sp
-.LP
-Deering, S.E., editor, \fIICMP Router Discovery Messages\fR, \fBRFC\fR 1256,
-Network Information Center, SRI International, Menlo Park, California,
-September 1991.
diff --git a/usr/src/man/man1m/in.rexecd.1m b/usr/src/man/man1m/in.rexecd.1m
deleted file mode 100644
index aa0031afa7..0000000000
--- a/usr/src/man/man1m/in.rexecd.1m
+++ /dev/null
@@ -1,179 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T
-.\" Copyright (C) 2004, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH IN.REXECD 1M "Nov 4, 2004"
-.SH NAME
-in.rexecd, rexecd \- remote execution server
-.SH SYNOPSIS
-.LP
-.nf
-\fBin.rexecd\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBin.rexecd\fR is the server for the \fBrexec\fR(3SOCKET) routine. The server
-provides remote execution facilities with authentication based on user names
-and passwords. It is invoked automatically as needed by \fBinetd\fR(1M), and
-then executes the following protocol:
-.RS +4
-.TP
-1.
-The server reads characters from the socket up to a null (\fB\e0\fR) byte.
-The resultant string is interpreted as an \fBASCII\fR number, base 10.
-.RE
-.RS +4
-.TP
-2.
-If the number received in step 1 is non-zero, it is interpreted as the port
-number of a secondary stream to be used for the \fBstderr\fR. A second
-connection is then created to the specified port on the client's machine.
-.RE
-.RS +4
-.TP
-3.
-A null terminated user name of at most 16 characters is retrieved on the
-initial socket.
-.RE
-.RS +4
-.TP
-4.
-A null terminated password of at most 16 characters is retrieved on the
-initial socket.
-.RE
-.RS +4
-.TP
-5.
-A null terminated command to be passed to a shell is retrieved on the
-initial socket. The length of the command is limited by the upper bound on the
-size of the system's argument list.
-.RE
-.RS +4
-.TP
-6.
-\fBrexecd\fR then validates the user as is done at login time and, if the
-authentication was successful, changes to the user's home directory, and
-establishes the user and group protections of the user. If any of these steps
-fail the connection is aborted and a diagnostic message is returned.
-.RE
-.RS +4
-.TP
-7.
-A null byte is returned on the connection associated with the \fBstderr\fR
-and the command line is passed to the normal login shell of the user. The
-shell inherits the network connections established by \fBrexecd\fR.
-.RE
-.SH USAGE
-.sp
-.LP
-\fBin.rexecd\fR and \fBrexecd\fR are IPv6-enabled. See \fBip6\fR(7P).
-.SH SEE ALSO
-.sp
-.LP
-\fBsvcs\fR(1), \fBinetd\fR(1M), \fBinetadm\fR(1M), \fBsvcadm\fR(1M),
-\fBrexec\fR(3SOCKET), \fBattributes\fR(5), \fBsmf\fR(5), \fBip6\fR(7P)
-.SH DIAGNOSTICS
-.sp
-.LP
-All diagnostic messages are returned on the connection associated with the
-\fBstderr\fR, after which any network connections are closed. An error is
-indicated by a leading byte with a value of 1 (0 is returned in step 7 above
-upon successful completion of all the steps prior to the command execution).
-.sp
-.ne 2
-.na
-\fB\fBusername too long\fR\fR
-.ad
-.RS 24n
-The name is longer than 16 characters.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpassword too long\fR\fR
-.ad
-.RS 24n
-The password is longer than 16 characters.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcommand too long\fR\fR
-.ad
-.RS 24n
-The command line passed exceeds the size of the argument list (as configured
-into the system).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBLogin incorrect.\fR\fR
-.ad
-.RS 24n
-No password file entry for the user name existed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPassword incorrect.\fR\fR
-.ad
-.RS 24n
-The wrong password was supplied.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBNo remote directory.\fR\fR
-.ad
-.RS 24n
-The \fBchdir\fR command to the home directory failed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBTry again.\fR\fR
-.ad
-.RS 24n
-A \fBfork\fR by the server failed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/bin/sh: ...\fR\fR
-.ad
-.RS 24n
-The user's login shell could not be started.
-.RE
-
-.SH NOTES
-.sp
-.LP
-The \fBin.rexecd\fR service is managed by the service management facility,
-\fBsmf\fR(5), under the service identifier:
-.sp
-.in +2
-.nf
-svc:/network/rexec:default
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Administrative actions on this service, such as enabling, disabling, or
-requesting restart, can be performed using \fBsvcadm\fR(1M). Responsibility for
-initiating and restarting this service is delegated to \fBinetd\fR(1M). Use
-\fBinetadm\fR(1M) to make configuration changes and to view configuration
-information for this service. The service's status can be queried using the
-\fBsvcs\fR(1) command.
diff --git a/usr/src/man/man1m/in.ripngd.1m b/usr/src/man/man1m/in.ripngd.1m
deleted file mode 100644
index df3a10ace8..0000000000
--- a/usr/src/man/man1m/in.ripngd.1m
+++ /dev/null
@@ -1,226 +0,0 @@
-'\" te
-.\" Copyright (C) 2006, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH IN.RIPNGD 1M "Jan 26, 2007"
-.SH NAME
-in.ripngd \- network routing daemon for IPv6
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/in.ripngd\fR [\fB-s\fR] [\fB-q\fR] [\fB-t\fR] [\fB-p\fR \fIn\fR] [\fB-P\fR] [\fB-v\fR ]
- [\fIlogfile\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBin.ripngd\fR is the IPv6 equivalent of \fBin.routed\fR(1M). It is invoked at
-boot time to manage the network routing tables. The routing daemon uses the
-Routing Information Protocol for IPv6.
-.sp
-.LP
-\fBin.ripngd\fR is managed by the service management facility (SMF), by means
-of the service identifier:
-.sp
-.in +2
-.nf
-svc:/network/routing/ripng:default
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-In normal operation, \fBin.ripngd\fR listens on the \fBudp\fR(7P) socket port
-521 for routing information packets. If the host is an internetwork router, it
-periodically supplies copies of its routing tables to any directly connected
-hosts and networks.
-.sp
-.LP
-When \fBin.ripngd\fR is started, it uses the \fBSIOCGLIFCONF\fR \fBioctl\fR(2)
-to find those directly connected IPv6 interfaces configured into the system and
-marked "up"; the software loopback interface is ignored. If multiple interfaces
-are present, it is assumed the host will forward packets between networks.
-\fBin.ripngd\fR then multicasts a request packet on each IPv6 interface and
-enters a loop, listening for request and response packets from other hosts.
-.sp
-.LP
-When a request packet is received, \fBin.ripngd\fR formulates a reply based on
-the information maintained in its internal tables. The response packet contains
-a list of known routes. With each route is a number specifying the number of
-bits in the prefix. The prefix is the number of bits in the high order part of
-an address that indicate the subnet or network that the route describes. Each
-route reported also has a "\fIhop count\fR" metric. A count of 16 or greater is
-considered "infinity." The metric associated with each route returned provides
-a metric relative to the sender.
-.sp
-.LP
-The request packets received by \fBin.ripngd\fR are used to update the routing
-tables if one of the following conditions is satisfied:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-No routing table entry exists for the destination network or host, and the
-metric indicates the destination is "reachable", that is, the \fIhop count\fR
-is not infinite.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The source host of the packet is the same as the router in the existing routing
-table entry. That is, updated information is being received from the very
-internetwork router through which packets for the destination are being routed.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The existing entry in the routing table has not been updated for a period of
-time, defined to be 90 seconds, and the route is at least as cost-effective as
-the current route.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The new route describes a shorter route to the destination than the one
-currently stored in the routing tables; this is determined by comparing the
-metric of the new route against the one stored in the table.
-.RE
-.sp
-.LP
-When an update is applied, \fBin.ripngd\fR records the change in its internal
-tables and generates a response packet to all directly connected hosts and
-networks. To allow possible unstable situations to settle, \fBin.ripngd\fR
-waits a short period of time (no more than 30 seconds) before modifying the
-kernel's routing tables.
-.sp
-.LP
-In addition to processing incoming packets, \fBin.ripngd\fR also periodically
-checks the routing table entries. If an entry has not been updated for 3
-minutes, the entry's metric is set to infinity and marked for deletion.
-Deletions are delayed an additional 60 seconds to insure the invalidation is
-propagated throughout the internet.
-.sp
-.LP
-Hosts acting as internetwork routers gratuitously supply their routing tables
-every 30 seconds to all directly connected hosts and networks.
-.SH OPTIONS
-.sp
-.LP
-\fB\fR\fBin.ripngd\fR supports the options listed below. Listed with the
-options are the equivalent SMF property values. These are set for the
-\fBripng:default\fR service with a command of the form:
-.sp
-.in +2
-.nf
-# \fBrouteadm -m ripng:default \fIkey\fR=\fIvalue\fR\fR
-.fi
-.in -2
-.sp
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR \fIn\fR\fR
-.ad
-.RS 8n
-Send and receive the routing packets from other routers using the \fBUDP \fR
-port number \fIn\fR. Use of this option is equivalent to setting the
-\fBudp_port\fR property.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-P\fR\fR
-.ad
-.RS 8n
-Do not use poison reverse. Use of this option is equivalent to setting the
-\fBpoison_reverse\fR property to false.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-q\fR\fR
-.ad
-.RS 8n
-Do not supply routing information. Use of this option is equivalent to setting
-the \fBquiet_mode\fR property to true.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR\fR
-.ad
-.RS 8n
-Force \fBin.ripngd\fR to supply routing information whether it is acting as an
-internetwork router or not. Use of this option is equivalent to setting the
-\fBsupply_routes\fR property to true.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-t\fR\fR
-.ad
-.RS 8n
-Print all packets sent or received to standard output. \fBin.ripngd\fR will not
-divorce itself from the controlling terminal. Accordingly, interrupts from the
-keyboard will kill the process. Not supported by the \fBripng\fR service.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.RS 8n
-Print all changes made to the routing tables to standard output with a
-timestamp. Use of this option is equivalent to setting the \fBverbose\fR
-property to true.
-.sp
-Any other argument supplied to this option is interpreted as the name of the
-file in which the actions of \fBin.ripngd\fR, as specified by this option or by
-\fB-t\fR, should be logged instead of being sent to standard output.
-.sp
-The logfile can be specified for the \fBripng\fR service by means of the
-\fBlog_file\fR property.
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBin.routed\fR(1M), \fBrouteadm\fR(1M), \fBsvcadm\fR(1M), \fBioctl\fR(2),
-\fBattributes\fR(5), \fBsmf\fR(5), \fBudp\fR(7P)
-.sp
-.LP
-G. Malkin, R. Minnear, \fIRFC 2080, RIPng for IPv6\fR, January 1997.
-.SH NOTES
-.sp
-.LP
-The kernel's routing tables may not correspond to those of \fBin.ripngd\fR for
-short periods of time while processes that utilize existing routes exit; the
-only remedy for this is to place the routing process in the kernel.
-.sp
-.LP
-\fBin.ripngd\fR currently does not support all of the functionality of
-\fBin.routed\fR(1M). Future releases may support more if appropriate.
-.sp
-.LP
-\fBin.ripngd\fR initially obtains a routing table by examining the interfaces
-configured on a machine. It then sends a request on all directly connected
-networks for more routing information. \fBin.ripngd\fR does not recognize or
-use any routing information already established on the machine prior to
-startup. With the exception of interface changes, \fBin.ripngd\fR does not see
-any routing table changes that have been done by other programs on the machine,
-for example, routes added, deleted or flushed by means of the \fBroute\fR(1M)
-command. Therefore, these types of changes should not be done while
-\fBin.ripngd\fR is running. Rather, shut down \fBin.ripngd\fR, make the changes
-required, and then restart \fBin.ripngd\fR.
diff --git a/usr/src/man/man1m/in.rlogind.1m b/usr/src/man/man1m/in.rlogind.1m
deleted file mode 100644
index 4504cd5c8a..0000000000
--- a/usr/src/man/man1m/in.rlogind.1m
+++ /dev/null
@@ -1,378 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T
-.\" Copyright (C) 2005, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH IN.RLOGIND 1M "February 5, 2022"
-.SH NAME
-in.rlogind, rlogind \- remote login server
-.SH SYNOPSIS
-.nf
-\fB/usr/sbin/in.rlogind\fR [\fB-k5eExXciPp\fR] [\fB-s\fR \fItos\fR] [\fB-S\fR \fIkeytab\fR]
- [\fB-M\fR \fIrealm\fR]
-.fi
-
-.SH DESCRIPTION
-\fBin.rlogind\fR is the server for the \fBrlogin\fR(1) program. The server
-provides a remote login facility with authentication based on Kerberos V5 or
-privileged port numbers.
-.sp
-.LP
-\fBin.rlogind\fR is invoked by \fBinetd\fR(1M) when a remote login connection
-is established. When Kerberos V5 authentication is required (see option
-\fB-k\fR below), the authentication sequence is as follows:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Check Kerberos V5 authentication.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Check authorization according to the rules in \fBkrb5_auth_rules\fR(5).
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Prompt for a password if any checks fail and \fB/etc/pam.conf\fR is configured
-to do so.
-.RE
-.sp
-.LP
-In order for Kerberos authentication to work, a \fBhost/\fR\fI<FQDN>\fR
-Kerberos principal must exist for each Fully Qualified Domain Name associated
-with the \fBin.rlogind\fR server. Each of these \fBhost/\fR\fI<FQDN>\fR
-principals must have a \fBkeytab\fR entry in the \fB/etc/krb5/krb5.keytab\fR
-file on the \fBin.rlogind\fR server. An example principal might be:
-.sp
-.LP
-\fBhost/bigmachine.eng.example.com\fR
-.sp
-.LP
-See \fBkadmin\fR(1M) for instructions on adding a principal to a
-\fBkrb5.keytab\fR file. See \fI\fR for a discussion of Kerberos
-authentication.
-.sp
-.LP
-If Kerberos V5 authentication is not enabled, then the authentication procedure
-follows the standard \fBrlogin\fR protocol:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The server checks the client's source port. If the port is not in the range
-512-1023, the server aborts the connection.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The server checks the client's source address. If an entry for the client
-exists in both \fB/etc/hosts\fR and \fB/etc/hosts.equiv\fR, a user logging in
-from the client is not prompted for a password. If the address is associated
-with a host for which no corresponding entry exists in \fB/etc/hosts\fR, the
-user is prompted for a password, regardless of whether or not an entry for the
-client is present in \fB/etc/hosts.equiv\fR. See \fBhosts\fR(4) and
-\fBhosts.equiv\fR(4).
-.RE
-.sp
-.LP
-Once the source port and address have been checked, \fBin.rlogind\fR allocates
-a pseudo-terminal and manipulates file descriptors so that the subsidiary half
-of the pseudo-terminal becomes the \fBstdin\fR, \fBstdout\fR, and \fBstderr\fR
-for a login process. The login process is an instance of the \fBlogin\fR(1)
-program, invoked with the \fB-r\fR.
-.sp
-.LP
-The login process then proceeds with the \fBpam\fR(3PAM) authentication
-process. See \fBSECURITY\fR below. If automatic authentication fails, it
-reprompts the user to login.
-.sp
-.LP
-The parent of the login process manipulates the manager side of the
-pseudo-terminal, operating as an intermediary between the login process and the
-client instance of the \fBrlogin\fR program. In normal operation, a packet
-protocol is invoked to provide Ctrl-S and Ctrl-Q type facilities and propagate
-interrupt signals to the remote programs. The login process propagates the
-client terminal's baud rate and terminal type, as found in the environment
-variable, \fBTERM\fR.
-.SH OPTIONS
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-5\fR\fR
-.ad
-.RS 13n
-Same as \fB-k\fR, for backwards compatibility.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-c\fR\fR
-.ad
-.RS 13n
-Requires Kerberos V5 clients to present a cryptographic checksum of initial
-connection information like the name of the user that the client is trying to
-access in the initial authenticator. This checksum provides additionl security
-by preventing an attacker from changing the initial connection information.
-This option is mutually exclusive with the \fB-i\fR option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-e\fR\fR
-.ad
-.RS 13n
-Creates an encrypted session.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-E\fR\fR
-.ad
-.RS 13n
-Same as \fB-e\fR, for backwards compatibility.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-i\fR\fR
-.ad
-.RS 13n
-Ignores authenticator checksums if provided. This option ignores authenticator
-checksums presented by current Kerberos clients to protect initial connection
-information. Option \fB-i\fR is the opposite of option \fB-c\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-k\fR\fR
-.ad
-.RS 13n
-Allows Kerberos V5 authentication with the \fB\&.k5login\fR access control file
-to be trusted. If this authentication system is used by the client and the
-authorization check is passed, then the user is allowed to log in.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-M\fR \fIrealm\fR\fR
-.ad
-.RS 13n
-Uses the indicated Kerberos V5 realm. By default, the daemon will determine its
-realm from the settings in the \fBkrb5.conf\fR(4) file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR\fR
-.ad
-.RS 13n
-Prompts for authentication only if other authentication checks fail.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-P\fR\fR
-.ad
-.RS 13n
-Prompts for a password in addition to other authentication methods.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR \fItos\fR\fR
-.ad
-.RS 13n
-Sets the \fBIP\fR \fBTOS\fR option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-S\fR \fIkeytab\fR\fR
-.ad
-.RS 13n
-Sets the \fBKRB5\fR keytab file to use. The \fB/etc/krb5/krb5.keytab\fR file is
-used by default.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-x\fR\fR
-.ad
-.RS 13n
-Same as \fB-e\fR, for backwards compatibility.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-X\fR\fR
-.ad
-.RS 13n
-Same as \fB-e\fR, for backwards compatibility.
-.RE
-
-.SH USAGE
-\fBrlogind\fR and \fBin.rlogind\fR are IPv6-enabled. See \fBip6\fR(7P).
-\fBIPv6\fR is not currently supported with Kerberos V5 authentication.
-.sp
-.LP
-Typically, Kerberized \fBrlogin\fR service runs on port 543 (klogin) and
-Kerberized, encrypted \fBrlogin\fR service runs on port 2105 (eklogin). The
-corresponding FMRI entries are:
-.sp
-.in +2
-.nf
-svc:/network/login:klogin (rlogin with kerberos)
-svc:/network/login:eklogin (rlogin with kerberos and encryption)
-.fi
-.in -2
-.sp
-
-.SH SECURITY
-\fBin.rlogind\fR uses \fBpam\fR(3PAM) for authentication, account management,
-and session management. The \fBPAM\fR configuration policy, listed through
-\fB/etc/pam.conf\fR, specifies the modules to be used for \fBin.rlogind\fR.
-Here is a partial \fBpam.conf\fR file with entries for the \fBrlogin\fR command
-using the "rhosts" and UNIX authentication modules, and the UNIX account,
-session management, and password management modules.
-.sp
-
-.sp
-.TS
-l l l
-l l l .
-rlogin auth sufficient pam_rhosts_auth.so.1
-rlogin auth requisite pam_authtok_get.so.1
-rlogin auth required pam_dhkeys.so.1
-rlogin auth required pam_unix_auth.so.1
-
-rlogin account required pam_unix_roles.so.1
-rlogin account required pam_unix_projects.so.1
-rlogin account required pam_unix_account.so.1
-
-rlogin session required pam_unix_session.so.1
-.TE
-
-.sp
-.LP
-With this configuration, the server checks the client's source address. If an
-entry for the client exists in both \fB/etc/hosts\fR and
-\fB/etc/hosts.equiv\fR, a user logging in from the client is not prompted for a
-password. If the address is associated with a host for which no corresponding
-entry exists in \fB/etc/hosts\fR, the user is prompted for a password,
-regardless of whether or not an entry for the client is present in
-\fB/etc/hosts.equiv\fR. See \fBhosts\fR(4) and \fBhosts.equiv\fR(4).
-.sp
-.LP
-When running a Kerberized rlogin service (with or without the encryption
-option), the pam service name that should be used is "\fBkrlogin\fR".
-.sp
-.LP
-If there are no entries for the \fBrlogin\fR service, then the entries for the
-"other" service will be used. If multiple authentication modules are listed,
-then the user may be prompted for multiple passwords. Removing the
-\fBpam_rhosts_auth.so.1\fR entry will disable the \fB/etc/hosts.equiv\fR and
-\fB~/.rhosts\fR authentication protocol and the user would always be forced to
-type the password. The \fIsufficient\fR flag indicates that authentication
-through the \fBpam_rhosts_auth.so.1\fR module is sufficient to authenticate the
-user. Only if this authentication fails is the next authentication module used.
-.SH SEE ALSO
-\fBlogin\fR(1), \fBsvcs\fR(1), \fBrlogin\fR(1),
-\fBin.rshd\fR(1M), \fBinetadm\fR(1M), \fBinetd\fR(1M), \fBkadmin\fR(1M),
-\fBsvcadm\fR(1M), \fBpam\fR(3PAM), \fBhosts\fR(4), \fBhosts.equiv\fR(4),
-\fBkrb5.conf\fR(4), \fBpam.conf\fR(4), \fBattributes\fR(5), \fBenviron\fR(5),
-\fBkrb5_auth_rules\fR(5), \fBpam_authtok_check\fR(5), \fBpam_authtok_get\fR(5),
-\fBpam_authtok_store\fR(5), \fBpam_dhkeys\fR(5), \fBpam_passwd_auth\fR(5),
-\fBpam_unix_account\fR(5), \fBpam_unix_auth\fR(5), \fBpam_unix_session\fR(5),
-\fBsmf\fR(5)
-.sp
-.LP
-\fI\fR
-.SH DIAGNOSTICS
-All diagnostic messages are returned on the connection associated with the
-\fBstderr\fR, after which any network connections are closed. An error is
-indicated by a leading byte with a value of 1.
-.sp
-.ne 2
-.na
-\fB\fBHostname for your address unknown.\fR\fR
-.ad
-.sp .6
-.RS 4n
-No entry in the host name database existed for the client's machine.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBTry again.\fR\fR
-.ad
-.sp .6
-.RS 4n
-A \fIfork\fR by the server failed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/bin/sh:\fR .\|.\|.\fR
-.ad
-.sp .6
-.RS 4n
-The user's login shell could not be started.
-.RE
-
-.SH NOTES
-The authentication procedure used here assumes the integrity of each client
-machine and the connecting medium. This is insecure, but it is useful in an
-``open'' environment.
-.sp
-.LP
-A facility to allow all data exchanges to be encrypted should be present.
-.sp
-.LP
-The \fBpam_unix\fR(5) module is no longer supported. Similar functionality is
-provided by \fBpam_authtok_check\fR(5), \fBpam_authtok_get\fR(5),
-\fBpam_authtok_store\fR(5), \fBpam_dhkeys\fR(5), \fBpam_passwd_auth\fR(5),
-\fBpam_unix_account\fR(5), \fBpam_unix_auth\fR(5), and
-\fBpam_unix_session\fR(5).
-.sp
-.LP
-The \fBin.rlogind\fR service is managed by the service management facility,
-\fBsmf\fR(5), under the service identifier:
-.sp
-.in +2
-.nf
-svc:/network/login:rlogin (rlogin)
-svc:/network/login:klogin (rlogin with kerberos)
-svc:/network/login:eklogin (rlogin with kerberos and encryption)
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Administrative actions on this service, such as enabling, disabling, or
-requesting restart, can be performed using \fBsvcadm\fR(1M). Responsibility for
-initiating and restarting this service is delegated to \fBinetd\fR(1M). Use
-\fBinetadm\fR(1M) to make configuration changes and to view configuration
-information for this service. The service's status can be queried using the
-\fBsvcs\fR(1) command.
diff --git a/usr/src/man/man1m/in.routed.1m b/usr/src/man/man1m/in.routed.1m
deleted file mode 100644
index 59c8a61856..0000000000
--- a/usr/src/man/man1m/in.routed.1m
+++ /dev/null
@@ -1,498 +0,0 @@
-'\" te
-.\" Copyright (c) 2008 Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH IN.ROUTED 1M "Jul 24, 2008"
-.SH NAME
-in.routed, routed \- network routing daemon
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/in.routed\fR [\fB-AdghmnqsStVz\fR] [\fB-T\fR \fItracefile\fR [\fB-v\fR]]
- [\fB-F\fR \fInet\fR[/mask ][,metric]] [\fB-P\fR \fIparams\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The daemon \fBin.routed\fR, often referred to as \fBrouted\fR, is invoked at
-boot time to manage the network routing tables. It uses Routing Information
-Protocol, RIPv1 (RFC 1058), RIPv2 (RFC 2453), and Internet Router Discovery
-Protocol (RFC 1256) to maintain the kernel routing table. The RIPv1 protocol is
-based on the reference 4.3BSD daemon.
-.sp
-.LP
-\fBin.routed\fR is managed by means of the service management facility (SMF),
-using the fault management resource identifier (FMRI):
-.sp
-.in +2
-.nf
-svc:/network/routing/route:default
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The daemon listens on a \fBudp\fR socket for the \fBroute\fR service (see
-\fBservices\fR(4)) for Routing Information Protocol packets. It also sends and
-receives multicast Router Discovery ICMP messages. If the host is a router,
-\fBin.routed\fR periodically supplies copies of its routing tables to any
-directly connected hosts and networks. It also advertises or solicits default
-routes using Router Discovery ICMP messages.
-.sp
-.LP
-When started (or when a network interface is later turned on), \fBin.routed\fR
-uses an \fBAF_ROUTE\fR address family facility to find those directly connected
-interfaces configured into the system and marked "up". It adds necessary routes
-for the interfaces to the kernel routing table. Soon after being first started,
-and provided there is at least one interface on which RIP has not been
-disabled, \fBin.routed\fR deletes all pre-existing non-static routes in the
-kernel table. Static routes in the kernel table are preserved and included in
-RIP responses if they have a valid RIP metric (see \fBroute\fR(1M)).
-.sp
-.LP
-If more than one interface is present (not counting the loopback interface), it
-is assumed that the host should forward packets among the connected networks.
-After transmitting a RIP request and Router Discovery Advertisements or
-Solicitations on a new interface, the daemon enters a loop, listening for RIP
-request and response and Router Discovery packets from other hosts.
-.sp
-.LP
-When a request packet is received, \fBin.routed\fR formulates a reply based on
-the information maintained in its internal tables. The response packet
-generated contains a list of known routes, each marked with a "hop count"
-metric (a count of 16 or greater is considered "infinite"). Advertised metrics
-reflect the metric associated with an interface (see \fBifconfig\fR(1M)), so
-setting the metric on an interface is an effective way to steer traffic.
-.sp
-.LP
-Responses do not include routes with a first hop on the requesting network, to
-implement in part split-horizon. Requests from query programs such as
-\fBrtquery\fR(1M) are answered with the complete table.
-.sp
-.LP
-The routing table maintained by the daemon includes space for several gateways
-for each destination to speed recovery from a failing router. RIP response
-packets received are used to update the routing tables, provided they are from
-one of the several currently recognized gateways or advertise a better metric
-than at least one of the existing gateways.
-.sp
-.LP
-When an update is applied, \fBin.routed\fR records the change in its own tables
-and updates the kernel routing table if the best route to the destination
-changes. The change in the kernel routing table is reflected in the next batch
-of response packets sent. If the next response is not scheduled for a while, a
-flash update response containing only recently changed routes is sent.
-.sp
-.LP
-In addition to processing incoming packets, in.routed also periodically checks
-the routing table entries. If an entry has not been updated for 3 minutes, the
-entry's metric is set to infinity and marked for deletion. Deletions are
-delayed until the route has been advertised with an infnite metric to insure
-the invalidation is propagated throughout the local internet. This is a form of
-poison reverse.
-.sp
-.LP
-Routes in the kernel table that are added or changed as a result of ICMP
-Redirect messages are deleted after a while to minimize black-holes. When a TCP
-connection suffers a timeout, the kernel tells \fBin.routed\fR, which deletes
-all redirected routes through the gateway involved, advances the age of all RIP
-routes through the gateway to allow an alternate to be chosen, and advances of
-the age of any relevant Router Discovery Protocol default routes.
-.sp
-.LP
-Hosts acting as internetwork routers gratuitously supply their routing tables
-every 30 seconds to all directly connected hosts and networks. These RIP
-responses are sent to the broadcast address on nets that support broadcasting,
-to the destination address on point-to-point links, and to the router's own
-address on other networks. If RIPv2 is enabled, multicast packets are sent on
-interfaces that support multicasting.
-.sp
-.LP
-If no response is received on a remote interface, if there are errors while
-sending responses, or if there are more errors than input or output (see
-\fBnetstat\fR(1M)), then the cable or some other part of the interface is
-assumed to be disconnected or broken, and routes are adjusted appropriately.
-.sp
-.LP
-The Internet Router Discovery Protocol is handled similarly. When the daemon is
-supplying RIP routes, it also listens for Router Discovery Solicitations and
-sends Advertisements. When it is quiet and listening to other RIP routers, it
-sends Solicitations and listens for Advertisements. If it receives a good
-Advertisement and it is not multi-homed, it stops listening for broadcast or
-multicast RIP responses. It tracks several advertising routers to speed
-recovery when the currently chosen router dies. If all discovered routers
-disappear, the daemon resumes listening to RIP responses. It continues
-listening to RIP while using Router Discovery if multi-homed to ensure all
-interfaces are used.
-.sp
-.LP
-The Router Discovery standard requires that advertisements have a default
-"lifetime" of 30 minutes. That means should something happen, a client can be
-without a good route for 30 minutes. It is a good idea to reduce the default to
-45 seconds using \fB\fR\fB-P\fR \fBrdisc_interval=45\fR on the command line or
-\fBrdisc_interval=45\fR in the \fB/etc/gateways\fR file. See \fBgateways\fR(4).
-.sp
-.LP
-While using Router Discovery (which happens by default when the system has a
-single network interface and a Router Discover Advertisement is received),
-there is a single default route and a variable number of redirected host routes
-in the kernel table. On a host with more than one network interface, this
-default route will be via only one of the interfaces. Thus, multi-homed hosts
-running with \fB-q\fR might need the \fBno_rdisc\fR argument described below.
-.sp
-.LP
-To support "legacy" systems that can handle neither RIPv2 nor Router Discovery,
-you can use the \fBpm_rdisc\fR parameter in the \fB/etc/gateways\fR. See
-\fBgateways\fR(4).
-.sp
-.LP
-By default, neither Router Discovery advertisements nor solicitations are sent
-over point-to-point links (for example, PPP). The Solaris OE uses a netmask of
-all ones (255.255.255.255) on point-to-point links.
-.sp
-.LP
-\fBin.routed\fR supports the notion of "distant" passive or active gateways.
-When the daemon is started, it reads the file \fB/etc/gateways\fR to find such
-distant gateways that cannot be located using only information from a routing
-socket, to discover if some of the local gateways are passive, and to obtain
-other parameters. Gateways specified in this manner should be marked passive if
-they are not expected to exchange routing information, while gateways marked
-active should be willing to exchange RIP packets. Routes through passive
-gateways are installed in the kernel's routing tables once upon startup and are
-not included in transmitted RIP responses.
-.sp
-.LP
-Distant active gateways are treated like network interfaces. RIP responses are
-sent to the distant active gateway. If no responses are received, the
-associated route is deleted from the kernel table and RIP responses are
-advertised via other interfaces. If the distant gateway resumes sending RIP
-responses, the associated route is restored.
-.sp
-.LP
-Distant active gateways can be useful on media that do not support broadcasts
-or multicasts but otherwise act like classic shared media, such as some ATM
-networks. One can list all RIP routers reachable on the HIPPI or ATM network in
-\fB/etc/gateways\fR with a series of "host" lines. Note that it is usually
-desirable to use RIPv2 in such situations to avoid generating lists of inferred
-host routes.
-.sp
-.LP
-Gateways marked external are also passive, but are not placed in the kernel
-routing table, nor are they included in routing updates. The function of
-external entries is to indicate that another routing process will install such
-a route if necessary, and that other routes to that destination should not be
-installed by \fBin.routed\fR. Such entries are required only when both routers
-might learn of routes to the same destination.
-.SH OPTIONS
-.sp
-.LP
-Listed below are available options. Any other argument supplied is interpreted
-as the name of a file in which the actions of \fBin.routed\fR should be logged.
-It is better to use \fB-T\fR (described below) instead of appending the name of
-the trace file to the command. Associated SMF properties for these options are
-described, and can be set by means of a command of the form:
-.sp
-.in +2
-.nf
-# \fBrouteadm -m route:default \fIname\fR=\fIvalue\fR\fR
-.fi
-.in -2
-.sp
-
-.sp
-.ne 2
-.na
-\fB\fB-A\fR\fR
-.ad
-.sp .6
-.RS 4n
-Do not ignore RIPv2 authentication if we do not care about RIPv2
-authentication. This option is required for conformance with RFC 2453. However,
-it makes no sense and breaks using RIP as a discovery protocol to ignore all
-RIPv2 packets that carry authentication when this machine does not care about
-authentication. This option is equivalent to setting the \fBignore_auth\fR
-property value to false.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-d\fR\fR
-.ad
-.sp .6
-.RS 4n
-Do not run in the background. This option is meant for interactive use and is
-not usable under the SMF.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-F\fR \fBnet[/\fImask\fR][,\fImetric\fR]\fR\fR
-.ad
-.sp .6
-.RS 4n
-Minimize routes in transmissions via interfaces with addresses that match
-\fInet\fR (network number)/\fImask\fR (netmask), and synthesizes a default
-route to this machine with the \fImetric\fR. The intent is to reduce RIP
-traffic on slow, point-to-point links, such as PPP links, by replacing many
-large UDP packets of RIP information with a single, small packet containing a
-"fake" default route. If \fImetric\fR is absent, a value of 14 is assumed to
-limit the spread of the "fake" default route. This is a dangerous feature that,
-when used carelessly, can cause routing loops. Notice also that more than one
-interface can match the specified network number and mask. See also \fB-g\fR.
-Use of this option is equivalent to setting the \fBminimize_routes\fR property.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-g\fR\fR
-.ad
-.sp .6
-.RS 4n
-Used on internetwork routers to offer a route to the "default" destination. It
-is equivalent to \fB-F\fR \fB0/0,1\fR and is present mostly for historical
-reasons. A better choice is \fB-P\fR \fBpm_rdisc\fR on the command line or
-\fBpm_rdisc\fR in the \fB/etc/gateways\fR file. A larger metric will be used
-with the latter alternatives, reducing the spread of the potentially dangerous
-default route. The \fB-g\fR (or \fB-P\fR) option is typically used on a gateway
-to the Internet, or on a gateway that uses another routing protocol whose
-routes are not reported to other local routers. Note that because a metric of 1
-is used, this feature is dangerous. Its use more often creates chaos with a
-routing loop than solves problems. Use of this option is equivalent to setting
-the \fBoffer_default_route\fR property to true.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-h\fR\fR
-.ad
-.sp .6
-.RS 4n
-Causes host or point-to-point routes not to be advertised, provided there is a
-network route going the same direction. That is a limited kind of aggregation.
-This option is useful on gateways to LANs that have other gateway machines
-connected with point-to-point links such as SLIP. Use of this option is
-equivalent to setting the \fBadvertise_host_routes\fR property to false.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-m\fR\fR
-.ad
-.sp .6
-.RS 4n
-Cause the machine to advertise a host or point-to-point route to its primary
-interface. It is useful on multi-homed machines such as NFS servers. This
-option should not be used except when the cost of the host routes it generates
-is justified by the popularity of the server. It is effective only when the
-machine is supplying routing information, because there is more than one
-interface. The \fB-m\fR option overrides the \fB-q\fR option to the limited
-extent of advertising the host route. Use of this option is equivalent to
-setting the \fBadvertise_host_routes_primary\fR property to true.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR\fR
-.ad
-.sp .6
-.RS 4n
-Do not install routes in kernel. By default, routes are installed in the
-kernel. Use of this option is equivalent to setting the \fBinstall_routes\fR
-property to false.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-P\fR \fIparams\fR\fR
-.ad
-.sp .6
-.RS 4n
-Equivalent to adding the parameter line \fIparams\fR to the \fB/etc/gateways\fR
-file. Can also be set by means of the \fBparameters\fR property.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-q\fR\fR
-.ad
-.sp .6
-.RS 4n
-Opposite of the \fB-s\fR option. This is the default when only one interface is
-present. With this explicit option, the daemon is always in "quiet mode" for
-RIP and does not supply routing information to other computers. Use of this
-option is equivalent to setting the \fBquiet_mode\fR property to true.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR\fR
-.ad
-.sp .6
-.RS 4n
-Force \fBin.routed\fR to supply routing information. This is the default if
-multiple network interfaces are present on which RIP or Router Discovery have
-not been disabled, and if the \fB/dev/ip\fR \fBndd\fR variable
-\fBip_forwarding\fR is set to 1. Use of this option is equivalent to setting
-the \fBsupply_routes\fR property to true.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-S\fR\fR
-.ad
-.sp .6
-.RS 4n
-If \fBin.routed\fR is not acting as an internetwork router, instead of entering
-the whole routing table in the kernel, it enters only a default route for each
-internetwork router. This reduces the memory requirements without losing any
-routing reliability. This option is provided for compatibility with the
-previous, RIPv1-only \fBin.routed\fR. Use of this option is generally
-discouraged. Use of this option is equivalent to setting the
-\fBdefault_routes_only\fR property to true.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-t\fR\fR
-.ad
-.sp .6
-.RS 4n
-Runs in the foreground (as with \fB-d\fR) and logs the contents of the packets
-received (as with \fB-zz\fR). This is for compatibility with prior versions of
-Solaris and has no SMF equivalent.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-T\fR \fItracefile\fR\fR
-.ad
-.sp .6
-.RS 4n
-Increases the debugging level to at least 1 and causes debugging information to
-be appended to the trace file. Because of security concerns, do not to run
-\fBin.routed\fR routinely with tracing directed to a file. Use of this option
-is equivalent to setting the \fBlog_file\fR property to \fBtrace file path\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.sp .6
-.RS 4n
-Enables debug. Similar to \fB-z\fR, except, where \fB-z\fR increments
-\fBtrace_level\fR, \fB-v\fR sets \fBtrace_level\fR to 1. Also, \fB-v\fR
-requires the \fB-T\fR option. Use of this option is equivalent to setting the
-\fBdebug\fR property to true.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-V\fR\fR
-.ad
-.sp .6
-.RS 4n
-Displays the version of the daemon.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-z\fR\fR
-.ad
-.sp .6
-.RS 4n
-Increase the debugging level, which causes more information to be logged on the
-tracefile specified with \fB-T\fR or stdout. The debugging level can be
-increased or decreased with the \fBSIGUSR1\fR or \fBSIGUSR2\fR signals or with
-the \fBrtquery\fR(1M) command.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/defaultrouter\fR\fR
-.ad
-.RS 22n
-If this file is present and contains the address of a default router, the
-system startup script does not run \fBin.routed\fR. See \fBdefaultrouter\fR(4).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/gateways\fR\fR
-.ad
-.RS 22n
-List of distant gateways and general configuration options for \fBin.routed\fR.
-See \fBgateways\fR(4).
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBroute\fR(1M), \fBrouteadm\fR(1M), \fBrtquery\fR(1M), \fBsvcadm\fR(1M),
-\fBioctl\fR(2), \fBinet\fR(3SOCKET), \fBdefaultrouter\fR(4), \fBgateways\fR(4),
-\fBattributes\fR(5), \fBicmp\fR(7P), \fBinet\fR(7P), \fBudp\fR(7P)
-.sp
-.LP
-\fIInternet Transport Protocols, XSIS 028112, Xerox System Integration
-Standard\fR
-.sp
-.LP
-\fIRouting Information Protocol, v2 (RFC 2453, STD 0056, November 1998)\fR
-.sp
-.LP
-\fIRIP-v2 MD5 Authentication (RFC 2082, January 1997)\fR
-.sp
-.LP
-\fIRouting Information Protocol, v1 (RFC 1058, June 1988)\fR
-.sp
-.LP
-\fIICMP Router Discovery Messages (RFC 1256, September 1991)\fR
-.SH NOTES
-.sp
-.LP
-In keeping with its intended design, this daemon deviates from RFC 2453 in two
-notable ways:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-By default, \fBin.routed\fR does not discard authenticated RIPv2 messages when
-RIP authentication is not configured. There is little to gain from dropping
-authenticated packets when RIPv1 listeners will gladly process them. Using the
-\fB-A\fR option causes \fBin.routed\fR to conform to the RFC in this case.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Unauthenticated RIP requests are never discarded, even when RIP authentication
-is configured. Forwarding tables are not secret and can be inferred through
-other means such as test traffic. RIP is also the most common router-discovery
-protocol, and hosts need to send queries that will be answered.
-.RE
-.sp
-.LP
-\fBin.routed\fR does not always detect unidirectional failures in network
-interfaces, for example, when the output side fails.
diff --git a/usr/src/man/man1m/in.rshd.1m b/usr/src/man/man1m/in.rshd.1m
deleted file mode 100644
index 50ac4db395..0000000000
--- a/usr/src/man/man1m/in.rshd.1m
+++ /dev/null
@@ -1,437 +0,0 @@
-'\" te
-.\" Copyright (C) 2005, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH IN.RSHD 1M "June 20, 2021"
-.SH NAME
-in.rshd, rshd \- remote shell server
-.SH SYNOPSIS
-.nf
-\fBin.rshd\fR [\fB-k5eciU\fR] [\fB-s\fR \fItos\fR] [\fB-S\fR \fIkeytab\fR] [\fB-M\fR \fIrealm\fR]
- [\fB-L\fR \fIenv_var\fR] \fIhost.port\fR
-.fi
-
-.SH DESCRIPTION
-\fBin.rshd\fR is the server for the \fBrsh\fR(1) program. The server provides
-remote execution facilities with authentication based on Kerberos V5 or
-privileged port numbers.
-.sp
-.LP
-\fBin.rshd\fR is invoked by \fBinetd\fR(1M) each time a shell service is
-requested.
-.sp
-.LP
-When Kerberos V5 authentication is required (this can be set with
-Kerberos-specific options listed below), the following protocol is initiated:
-.RS +4
-.TP
-1.
-Check Kerberos V5 authentication.
-.RE
-.RS +4
-.TP
-2.
-Check authorization according to rules in \fBkrb5_auth_rules\fR(5).
-.RE
-.RS +4
-.TP
-3.
-A null byte is returned on the initial socket and the command line is passed
-to the normal login shell of the user. (The \fBPATH\fR variable is set to
-\fB/usr/bin\fR.) The shell inherits the network connections established by
-\fBin.rshd\fR.
-.RE
-.sp
-.LP
-In order for Kerberos authentication to work, a \fBhost/\fR\fI<FQDN>\fR
-Kerberos principal must exist for each Fully Qualified Domain Name associated
-with the \fBin.rshd\fR server. Each of these \fBhost/\fR\fI<FQDN>\fR principals
-must have a \fBkeytab\fR entry in the \fB/etc/krb5/krb5.keytab\fR file on the
-\fBin.rshd\fR server. An example principal might be:
-.sp
-.LP
-\fBhost/bigmachine.eng.example.com\fR
-.sp
-.LP
-See \fBkadmin\fR(1M) for instructions on adding a principal to a
-\fBkrb5.keytab\fR file. See \fI\fR for a discussion of Kerberos
-authentication.
-.sp
-.LP
-If Kerberos V5 authentication is not enabled, then \fBin.rshd\fR executes the
-following protocol:
-.RS +4
-.TP
-1.
-The server checks the client's source port. If the port is not in the range
-512-1023, the server aborts the connection. The client's host address (in hex)
-and port number (in decimal) are the arguments passed to \fBin.rshd\fR.
-.RE
-.RS +4
-.TP
-2.
-The server reads characters from the socket up to a null (\fB\e0\fR) byte.
-The resultant string is interpreted as an \fBASCII\fR number, base 10.
-.RE
-.RS +4
-.TP
-3.
-If the number received in step 2 is non-zero, it is interpreted as the port
-number of a secondary stream to be used for the \fBstderr\fR. A second
-connection is then created to the specified port on the client's machine. The
-source port of this second connection is also in the range 512-1023.
-.RE
-.RS +4
-.TP
-4.
-A null-terminated user name of at most 16 characters is retrieved on the
-initial socket. This user name is interpreted as the user identity on the
-\fIclient\fR's machine.
-.RE
-.RS +4
-.TP
-5.
-A null terminated user name of at most 16 characters is retrieved on the
-initial socket. This user name is interpreted as a user identity to use on the
-\fIserver\fR's machine.
-.RE
-.RS +4
-.TP
-6.
-A null terminated command to be passed to a shell is retrieved on the
-initial socket. The length of the command is limited by the upper bound on the
-size of the system's argument list.
-.RE
-.RS +4
-.TP
-7.
-\fBin.rshd\fR then validates the user according to the following steps. The
-remote user name is looked up in the password file and a \fBchdir\fR is
-performed to the user's home directory. If the lookup fails, the connection is
-terminated. If the \fBchdir\fR fails, it does a \fBchdir\fR to \fB/\fR (root).
-If the user is not the superuser, (user \fBID\fR 0), and if the pam_rhosts_auth
-\fBPAM\fR module is configured for authentication, the file
-\fB/etc/hosts.equiv\fR is consulted for a list of hosts considered
-"equivalent". If the client's host name is present in this file, the
-authentication is considered successful. See the SECURITY section below for a
-discussion of \fBPAM\fR authentication.
-.sp
-If the lookup fails, or the user is the superuser, then the file
-\fB\&.rhosts\fR in the home directory of the remote user is checked for the
-machine name and identity of the user on the client's machine. If this lookup
-fails, the connection is terminated
-.RE
-.RS +4
-.TP
-8.
-A null byte is returned on the initial connection and the command line is
-passed to the normal login shell of the user. The \fBPATH\fR variable is set to
-\fB/usr/bin\fR. The shell inherits the network connections established by
-\fBin.rshd\fR.
-.RE
-.SH OPTIONS
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-5\fR\fR
-.ad
-.RS 14n
-Same as \fB-k\fR, for backwards compatibility
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-c\fR\fR
-.ad
-.RS 14n
-Requires Kerberos V5 clients to present a cryptographic checksum of initial
-connection information like the name of the user that the client is trying to
-access in the initial authenticator. This checksum provides additionl security
-by preventing an attacker from changing the initial connection information.
-This option is mutually exclusive with the \fB-i\fR option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-e\fR\fR
-.ad
-.RS 14n
-Requires the client to encrypt the connection.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-i\fR\fR
-.ad
-.RS 14n
-Ignores authenticator checksums if provided. This option ignores authenticator
-checksums presented by current Kerberos clients to protect initial connection
-information. Option \fB-i\fR is the opposite of option \fB-c\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-k\fR\fR
-.ad
-.RS 14n
-Allows Kerberos V5 authentication with the \fB\&.k5login\fR access control file
-to be trusted. If this authentication system is used by the client and the
-authorization check is passed, then the user is allowed to log in.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-L\fR \fIenv_var\fR\fR
-.ad
-.RS 14n
-List of environment variables that need to be saved and passed along.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-M\fR \fIrealm\fR\fR
-.ad
-.RS 14n
-Uses the indicated Kerberos V5 realm. By default, the daemon will determine its
-realm from the settings in the \fBkrb5.conf\fR(4) file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR \fItos\fR\fR
-.ad
-.RS 14n
-Sets the \fBIP\fR \fBTOS\fR option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-S\fR \fIkeytab\fR\fR
-.ad
-.RS 14n
-Sets the \fBKRB5\fR keytab file to use. The \fB/etc/krb5/krb5.keytab\fR file is
-used by default.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-U\fR\fR
-.ad
-.RS 14n
-Refuses connections that cannot be mapped to a name through the
-\fBgetnameinfo\fR(3SOCKET) function.
-.RE
-
-.SH USAGE
-\fBrshd\fR and \fBin.rshd\fR are IPv6-enabled. See \fBip6\fR(7P). \fBIPv6\fR is
-not currently supported with Kerberos V5 authentication.
-.sp
-.LP
-The Kerberized \fBrshd\fR service runs on port 544 (kshell). The corresponding
-FMRI entry is: :
-.sp
-.in +2
-.nf
-svc:/network/shell:kshell (rshd with kerberos (ipv4 only))
-.fi
-.in -2
-.sp
-
-.SH SECURITY
-\fBin.rshd\fR uses \fBpam\fR(3PAM) for authentication, account management, and
-session management. The \fBPAM\fR configuration policy, listed through
-\fB/etc/pam.conf\fR, specifies the modules to be used for \fBin.rshd\fR. Here
-is a partial \fBpam.conf\fR file with entries for the \fBrsh\fR command using
-rhosts authentication, \fBUNIX\fR account management, and session management
-module.
-.sp
-
-.sp
-.TS
-l l l l
-l l l l .
-rsh auth required pam_rhosts_auth.so.1
-
-rsh account required pam_unix_roles.so.1
-rsh session required pam_unix_projects.so.1
-rsh session required pam_unix_account.so.1
-
-rsh session required pam_unix_session.so.1
-.TE
-
-.sp
-.LP
-If there are no entries for the \fBrsh\fR service, then the entries for the
-"other" service are used. To maintain the authentication requirement for
-\fBin.rshd\fR, the rsh entry must always be configured with the
-\fBpam_rhosts_auth.so.1\fR module.
-.sp
-.LP
-\fBin.rshd\fR can authenticate using Kerberos V5 authentication or
-\fBpam\fR(3PAM). For Kerberized \fBrsh\fR service, the appropriate \fBPAM\fR
-service name is \fBkrsh\fR.
-.SH FILES
-\fB/etc/hosts.equiv\fR
-.sp
-.ne 2
-.na
-\fB\fB$HOME/.k5login\fR\fR
-.ad
-.RS 23n
-File containing Kerberos principals that are allowed access.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/krb5/krb5.conf\fR\fR
-.ad
-.RS 23n
-Kerberos configuration file.
-.RE
-
-.SH SEE ALSO
-\fBrsh\fR(1), \fBsvcs\fR(1), \fBinetadm\fR(1M),
-\fBinetd\fR(1M), \fBkadmin\fR(1M), \fBsvcadm\fR(1M), \fBpam\fR(3PAM),
-\fBgetnameinfo\fR(3SOCKET), \fBhosts\fR(4), \fBkrb5.conf\fR(4),
-\fBpam.conf\fR(4), \fBattributes\fR(5), \fBenviron\fR(5),
-\fBkrb5_auth_rules\fR(5), \fBpam_authtok_check\fR(5), \fBpam_authtok_get\fR(5),
-\fBpam_authtok_store\fR(5), \fBpam_dhkeys\fR(5), \fBpam_passwd_auth\fR(5),
-\fBpam_rhosts_auth\fR(5), \fBpam_unix_account\fR(5), \fBpam_unix_auth\fR(5),
-\fBpam_unix_session\fR(5), \fBsmf\fR(5), \fBip6\fR(7P)
-.sp
-.LP
-\fI\fR
-.SH DIAGNOSTICS
-The following diagnostic messages are returned on the connection associated
-with \fBstderr\fR, after which any network connections are closed. An error is
-indicated by a leading byte with a value of 1 in step 8 above (\fB0\fR is
-returned above upon successful completion of all the steps prior to the command
-execution).
-.sp
-.ne 2
-.na
-\fB\fBlocuser too long\fR\fR
-.ad
-.sp .6
-.RS 4n
-The name of the user on the client's machine is longer than 16 characters.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBremuser too long\fR\fR
-.ad
-.sp .6
-.RS 4n
-The name of the user on the remote machine is longer than 16 characters.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcommand too long\fR\fR
-.ad
-.sp .6
-.RS 4n
-The command line passed exceeds the size of the argument list (as configured
-into the system).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBHostname for your address unknown.\fR\fR
-.ad
-.sp .6
-.RS 4n
-No entry in the host name database existed for the client's machine.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBLogin incorrect.\fR\fR
-.ad
-.sp .6
-.RS 4n
-No password file entry for the user name existed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPermission denied.\fR\fR
-.ad
-.sp .6
-.RS 4n
-The authentication procedure described above failed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBCan't make pipe.\fR\fR
-.ad
-.sp .6
-.RS 4n
-The pipe needed for the \fBstderr\fR was not created.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBTry again.\fR\fR
-.ad
-.sp .6
-.RS 4n
-A \fIfork\fR by the server failed.
-.RE
-
-.SH NOTES
-The authentication procedure used here assumes the integrity of each client
-machine and the connecting medium. This is insecure, but it is useful in an
-"open" environment.
-.sp
-.LP
-A facility to allow all data exchanges to be encrypted should be present.
-.sp
-.LP
-The \fBpam_unix\fR(5) module is no longer supported. Similar functionality is
-provided by \fBpam_authtok_check\fR(5), \fBpam_authtok_get\fR(5),
-\fBpam_authtok_store\fR(5), \fBpam_dhkeys\fR(5), \fBpam_passwd_auth\fR(5),
-\fBpam_unix_account\fR(5), \fBpam_unix_auth\fR(5), and
-\fBpam_unix_session\fR(5).
-.sp
-.LP
-The \fBin.rshd\fR service is managed by the service management facility,
-\fBsmf\fR(5), under the service identifier:
-.sp
-.in +2
-.nf
-svc:/network/shell:default
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Administrative actions on this service, such as enabling, disabling, or
-requesting restart, can be performed using \fBsvcadm\fR(1M). Responsibility for
-initiating and restarting this service is delegated to \fBinetd\fR(1M). Use
-\fBinetadm\fR(1M) to make configuration changes and to view configuration
-information for this service. The service's status can be queried using the
-\fBsvcs\fR(1) command.
diff --git a/usr/src/man/man1m/in.rwhod.1m b/usr/src/man/man1m/in.rwhod.1m
deleted file mode 100644
index 674aa9ed4a..0000000000
--- a/usr/src/man/man1m/in.rwhod.1m
+++ /dev/null
@@ -1,133 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T
-.\" Copyright (C) 2001, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH IN.RWHOD 1M "Dec 8, 2001"
-.SH NAME
-in.rwhod, rwhod \- system status server
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/in.rwhod\fR [\fB-m\fR [\fIttl\fR]]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBin.rwhod\fR is the server which maintains the database used by the
-\fBrwho\fR(1) and \fBruptime\fR(1) programs. Its operation is predicated on
-the ability to broadcast or multicast messages on a network.
-.sp
-.LP
-\fBin.rwhod\fR operates as both a producer and consumer of status information.
-As a producer of information it periodically queries the state of the system
-and constructs status messages which are broadcast or multicast on a network.
-As a consumer of information, it listens for other \fBin.rwhod\fR servers'
-status messages, validating them, then recording them in a collection of files
-located in the directory \fB/var/spool/rwho\fR.
-.sp
-.LP
-The \fBrwho\fR server transmits and receives messages at the port indicated in
-the \fBrwho\fR service specification, see \fBservices\fR(4). The messages sent
-and received are defined in \fB/usr/include/protocols/rwhod.h\fR and are of the
-form:
-.sp
-.in +2
-.nf
-struct outmp {
- char out_line[8]; /* tty name */
- char out_name[8]; /* user id */
- long out_time; /* time on */
-};
-struct whod {
- char wd_vers;
- char wd_type;
- char wd_fill[2];
- int wd_sendtime;
- int wd_recvtime;
- char wd_hostname[32];
- int wd_loadav[3];
- int wd_boottime;
- struct whoent {
- struct outmp we_utmp;
- int we_idle;
- } wd_we[1024 / sizeof (struct whoent)];
- };
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-All fields are converted to network byte order prior to transmission. The load
-averages are as calculated by the \fBw\fR(1) program, and represent load
-averages over the 1, 5, and 15 minute intervals prior to a server's
-transmission. The host name included is that returned by the \fBuname\fR(2)
-system call. The array at the end of the message contains information about the
-users who are logged in to the sending machine. This information includes the
-contents of the \fButmpx\fR(4) entry for each non-idle terminal line and a
-value indicating the time since a character was last received on the terminal
-line.
-.sp
-.LP
-Messages received by the \fBrwho\fR server are discarded unless they originated
-at a \fBrwho\fR server's port. In addition, if the host's name, as specified
-in the message, contains any unprintable \fBASCII\fR characters, the message is
-discarded. Valid messages received by \fBin.rwhod\fR are placed in files named
-\fBwhod.\fR\fBhostname\fR in the directory \fB/var/spool/rwho\fR. These files
-contain only the most recent message, in the format described above.
-.sp
-.LP
-Status messages are generated approximately once every 3 minutes.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB\fR\fB-m\fR\fB \fR[\fI ttl \fR]\fR
-.ad
-.RS 14n
-Use the rwho \fBIP\fR multicast address (224.0.1.3) when transmitting. Receive
-announcements both on this multicast address and on the \fBIP\fR broadcast
-address. If \fIttl\fR is not specified \fBin.rwhod\fR multicasts on all
-interfaces but with the \fBIP\fR TimeToLive set to 1 (that is, packets are not
-forwarded by multicast routers.) If \fIttl\fR is specified \fBin.rwhod\fR
-only transmits packets on one interface and setting the \fBIP\fR TimeToLive to
-the specified \fIttl\fR.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/var/spool/rwho/whod.*\fR\fR
-.ad
-.RS 26n
-information about other machines
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBruptime\fR(1), \fBrwho\fR(1), \fBw\fR(1), \fBuname\fR(2), \fBservices\fR(4),
-\fButmpx\fR(4), \fBattributes\fR(5)
-.SH WARNINGS
-.sp
-.LP
-This service can cause network performance problems when used by several hosts
-on the network. It is not run at most sites by default. If used, include the
-\fB-m\fR multicast option.
-.SH NOTES
-.sp
-.LP
-This service takes up progressively more network bandwidth as the number of
-hosts on the local net increases. For large networks, the cost becomes
-prohibitive.
-.sp
-.LP
-\fBin.rwhod\fR should relay status information between networks. People often
-interpret the server dying as a machine going down.
diff --git a/usr/src/man/man1m/in.talkd.1m b/usr/src/man/man1m/in.talkd.1m
deleted file mode 100644
index 79e4e5d4a2..0000000000
--- a/usr/src/man/man1m/in.talkd.1m
+++ /dev/null
@@ -1,51 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 2004Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH IN.TALKD 1M "Jul 31, 2004"
-.SH NAME
-in.talkd, talkd \- server for talk program
-.SH SYNOPSIS
-.LP
-.nf
-\fBin.talkd\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBtalkd\fR is a server used by the \fBtalk\fR(1) program. It listens at the
-\fBUDP\fR port indicated in the ``talk'' service description; see
-\fBservices\fR(4). The actual conversation takes place on a \fBTCP\fR
-connection that is established by negotiation between the two machines
-involved.
-.SH SEE ALSO
-.sp
-.LP
-\fBsvcs\fR(1), \fBtalk\fR(1), \fBinetadm\fR(1M), \fBinetd\fR(1M),
-\fBsvcadm\fR(1M), \fBservices\fR(4), \fBattributes\fR(5), \fBsmf\fR(5)
-.SH NOTES
-.sp
-.LP
-The protocol is architecture dependent.
-.sp
-.LP
-The \fBin.talkd\fR service is managed by the service management facility,
-\fBsmf\fR(5), under the service identifier:
-.sp
-.in +2
-.nf
-svc:/network/talk
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Administrative actions on this service, such as enabling, disabling, or
-requesting restart, can be performed using \fBsvcadm\fR(1M). Responsibility for
-initiating and restarting this service is delegated to \fBinetd\fR(1M). Use
-\fBinetadm\fR(1M) to make configuration changes and to view configuration
-information for this service. The service's status can be queried using the
-\fBsvcs\fR(1) command.
diff --git a/usr/src/man/man1m/in.telnetd.1m b/usr/src/man/man1m/in.telnetd.1m
deleted file mode 100644
index b736fa082a..0000000000
--- a/usr/src/man/man1m/in.telnetd.1m
+++ /dev/null
@@ -1,395 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T
-.\" Copyright (C) 2005, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH IN.TELNETD 1M "February 5, 2022"
-.SH NAME
-in.telnetd, telnetd \- DARPA TELNET protocol server
-.SH SYNOPSIS
-.nf
-\fB/usr/sbin/in.telnetd\fR [\fB-a\fR \fIauthmode\fR] [\fB-EXUh\fR] [\fB-s\fR \fItos\fR]
- [\fB-S\fR \fIkeytab\fR] [\fB-M\fR \fIrealm\fR]
-.fi
-
-.SH DESCRIPTION
-\fBin.telnetd\fR is a server that supports the \fBDARPA\fR standard
-\fBTELNET\fR virtual terminal protocol. \fBin.telnetd\fR is normally invoked in
-the internet server (see \fBinetd\fR(1M)), for requests to connect to the
-\fBTELNET\fR port as indicated by the \fB/etc/services\fR file (see
-\fBservices\fR(4)).
-.sp
-.LP
-\fBin.telnetd\fR operates by allocating a pseudo-terminal device for a client,
-then creating a login process which has the subsidiary side of the
-pseudo-terminal as its standard input, output, and error. \fBin.telnetd\fR
-manipulates the manager side of the pseudo-terminal, implementing the
-\fBTELNET\fR protocol and passing characters between the remote client and the
-login process.
-.sp
-.LP
-When a \fBTELNET\fR session starts up, \fBin.telnetd\fR sends \fBTELNET\fR
-options to the client side indicating a willingness to do \fIremote\fR
-\fBecho\fR of characters, and to \fIsuppress\fR \fIgo\fR \fIahead\fR. The
-pseudo-terminal allocated to the client is configured to operate in "cooked"
-mode, and with \fBXTABS\fR, \fBICRNL\fR and \fBONLCR\fR enabled. See
-\fBtermio\fR(7I).
-.sp
-.LP
-\fBin.telnetd\fR is willing to do: \fIecho\fR, \fIbinary\fR, \fIsuppress\fR
-\fIgo\fR \fIahead\fR, and \fItiming\fR \fImark\fR. \fBin.telnetd\fR is willing
-to have the remote client do: \fIbinary\fR, \fIterminal\fR \fItype\fR,
-\fIterminal\fR \fIsize\fR, \fIlogout\fR \fIoption\fR, and \fIsuppress\fR
-\fIgo\fR \fIahead\fR.
-.sp
-.LP
-\fBin.telnetd\fR also allows environment variables to be passed, provided that
-the client negotiates this during the initial option negotiation. The
-\fBDISPLAY\fR environment variable may be sent this way, either by the
-\fBTELNET\fR general environment passing methods, or by means of the
-\fBXDISPLOC\fR \fBTELNET\fR option. \fBDISPLAY\fR can be passed in the
-environment option during the same negotiation where \fBXDISPLOC\fR is used.
-Note that if you use both methods, use the same value for both. Otherwise, the
-results may be unpredictable.
-.sp
-.LP
-These options are specified in Internet standards \fIRFC 1096\fR, \fIRFC
-1408\fR, \fIRFC 1510\fR, \fIRFC 1571\fR, \fIRFC 2941\fR, \fIRFC 2942\fR, \fIRFC
-2946\fR, and \fIRFC 1572\fR. The following Informational draft is also
-supported: \fIRFC 2952\fR.
-.sp
-.LP
-The banner printed by \fBin.telnetd\fR is configurable. The default is (more or
-less) equivalent to `\fBuname\fR \fB-sr\fR` and will be used if no banner is
-set in \fB/etc/default/telnetd\fR. To set the banner, add a line of the form
-.sp
-.in +2
-.nf
-BANNER="..."
-.fi
-.in -2
-
-.sp
-.LP
-to \fB/etc/default/telnetd\fR. Nonempty banner strings are fed to shells for
-evaluation. The default banner may be obtained by
-.sp
-.in +2
-.nf
-BANNER="\e\er\e\en\e\er\e\en`uname -s` `uname -r`\e\er\e\en\e\er\e\en"
-.fi
-.in -2
-
-.sp
-.LP
-and no banner will be printed if \fB/etc/default/telnetd\fR contains
-.sp
-.in +2
-.nf
-BANNER=""
-.fi
-.in -2
-
-.SH OPTIONS
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-a\fR \fIauthmode\fR\fR
-.ad
-.RS 15n
-This option may be used for specifying what mode should be used for
-authentication. There are several valid values for \fIauthmode\fR:
-.sp
-.ne 2
-.na
-\fB\fBvalid\fR\fR
-.ad
-.RS 9n
-Only allows connections when the remote user can provide valid authentication
-information to identify the remote user, and is allowed access to the specified
-account without providing a password.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBuser\fR\fR
-.ad
-.RS 9n
-Only allows connections when the remote user can provide valid authentication
-information to identify the remote user. The \fBlogin\fR(1) command will
-provide any additional user verification needed if the remote user is not
-allowed automatic access to the specified account.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnone\fR\fR
-.ad
-.RS 9n
-This is the default state. Authentication information is not required. If no or
-insufficient authentication information is provided, then the \fBlogin\fR(1)
-program provides the necessary user verification.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBoff\fR\fR
-.ad
-.RS 9n
-This disables the authentication code. All user verification happens through
-the \fBlogin\fR(1) program.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-E\fR\fR
-.ad
-.RS 15n
-Disables encryption support negotiation.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-h\fR\fR
-.ad
-.RS 15n
-Disables displaying host specific information before login has been completed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-M\fR \fIrealm\fR\fR
-.ad
-.RS 15n
-Uses the indicated Kerberos V5 realm. By default, the daemon will determine its
-realm from the settings in the \fBkrb5.conf\fR(4) file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR \fItos\fR\fR
-.ad
-.RS 15n
-Sets the \fBIP\fR \fBTOS\fR option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-S\fR \fIkeytab\fR\fR
-.ad
-.RS 15n
-Sets the \fBKRB5\fR keytab file to use. The \fB/etc/krb5/krb5.keytab\fR file is
-used by default.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-U\fR\fR
-.ad
-.RS 15n
-Refuses connections that cannot be mapped to a name through the
-\fBgetnameinfo\fR(3SOCKET) function.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-X\fR\fR
-.ad
-.RS 15n
-Disables Kerberos V5 authentication support negotiation.
-.RE
-
-.SH USAGE
-\fBtelnetd\fR and \fBin.telnetd\fR are IPv6-enabled. See \fBip6\fR(7P).
-.SH SECURITY
-\fBin.telnetd\fR can authenticate using Kerberos V5 authentication,
-\fBpam\fR(3PAM), or both. By default, the telnet server will accept valid
-Kerberos V5 authentication credentials from a \fBtelnet\fR client that supports
-Kerberos. \fBin.telnetd\fR can also support an encrypted session from such a
-client if the client requests it.
-.sp
-.LP
-The \fBtelnet\fR protocol only uses single DES for session
-protection\(emclients request service tickets with single DES session keys. The
-KDC must know that host service principals that offer the \fBtelnet\fR service
-support single DES, which, in practice, means that such principals must have
-single DES keys in the KDC database.
-.sp
-.LP
-In order for Kerberos authentication to work, a \fBhost/\fR\fI<FQDN>\fR
-Kerberos principal must exist for each Fully Qualified Domain Name associated
-with the \fBtelnetd\fR server. Each of these \fBhost/\fR\fI<FQDN>\fR principals
-must have a \fBkeytab\fR entry in the \fB/etc/krb5/krb5.keytab\fR file on the
-\fBtelnetd\fR server. An example principal might be:
-.sp
-.LP
-\fBhost/bigmachine.eng.example.com\fR
-.sp
-.LP
-See \fBkadmin\fR(1M) for instructions on adding a principal to a
-\fBkrb5.keytab\fR file. See \fI\fR for a discussion of Kerberos
-authentication.
-.sp
-.LP
-\fBin.telnetd\fR uses \fBpam\fR(3PAM) for authentication, account management,
-session management, and password management. The \fBPAM\fR configuration
-policy, listed through \fB/etc/pam.conf\fR, specifies the modules to be used
-for \fBin.telnetd\fR. Here is a partial \fBpam.conf\fR file with entries for
-the \fBtelnet\fR command using the UNIX authentication, account management,
-session management, and password management modules.
-.sp
-.in +2
-.nf
-telnet auth requisite pam_authtok_get.so.1
-telnet auth required pam_dhkeys.so.1
-telnet auth required pam_unix_auth.so.1
-
-telnet account requisite pam_roles.so.1
-telnet account required pam_projects.so.1
-telnet account required pam_unix_account.so.1
-
-telnet session required pam_unix_session.so.1
-
-telnet password required pam_dhkeys.so.1
-telnet password requisite pam_authtok_get.so.1
-telnet password requisite pam_authtok_check.so.1
-telnet password required pam_authtok_store.so.1
-.fi
-.in -2
-
-.sp
-.LP
-If there are no entries for the \fBtelnet\fR service, then the entries for the
-"other" service will be used. If multiple authentication modules are listed,
-then the user may be prompted for multiple passwords.
-.sp
-.LP
-For a Kerberized telnet service, the correct \fBPAM\fR service name is
-\fBktelnet\fR.
-.SH FILES
-.ne 2
-.na
-\fB\fB/etc/default/telnetd\fR\fR
-.ad
-.RS 24n
-
-.RE
-
-.SH SEE ALSO
-\fBlogin\fR(1), \fBsvcs\fR(1), \fBtelnet\fR(1),
-\fBinetadm\fR(1M), \fBinetd\fR(1M), \fBkadmin\fR(1M), \fBsvcadm\fR(1M),
-\fBpam\fR(3PAM), \fBgetnameinfo\fR(3SOCKET), \fBissue\fR(4),
-\fBkrb5.conf\fR(4), \fBpam.conf\fR(4), \fBservices\fR(4), \fBattributes\fR(5),
-\fBpam_authtok_check\fR(5), \fBpam_authtok_get\fR(5),
-\fBpam_authtok_store\fR(5), \fBpam_dhkeys\fR(5), \fBpam_passwd_auth\fR(5),
-\fBpam_unix_account\fR(5), \fBpam_unix_auth\fR(5), \fBpam_unix_session\fR(5),
-\fBsmf\fR(5), \fBip6\fR(7P), \fBtermio\fR(7I)
-.sp
-.LP
-\fI\fR
-.sp
-.LP
-Alexander, S. \fIRFC 1572, TELNET Environment Option\fR. Network Information
-Center, SRI International, Menlo Park, Calif., January 1994.
-.sp
-.LP
-Borman, Dave. \fIRFC 1408, TELNET Environment Option\fR. Network Information
-Center, SRI International, Menlo Park, Calif., January 1993.
-.sp
-.LP
-Borman, Dave. \fIRFC 1571, TELNET Environment Option Interoperability
-Issues\fR. Network Information Center, SRI International, Menlo Park, Calif.,
-January 1994.
-.sp
-.LP
-Crispin, Mark. \fIRFC 727, TELNET Logout Option\fR. Network Information Center,
-SRI International, Menlo Park, Calif., April 1977.
-.sp
-.LP
-Marcy, G. \fIRFC 1096, TELNET X Display Location Option\fR. Network Information
-Center, SRI International, Menlo Park, Calif., March 1989.
-.sp
-.LP
-Postel, Jon, and Joyce Reynolds. \fIRFC 854, TELNET Protocol Specification\fR.
-Network Information Center, SRI International, Menlo Park, Calif., May 1983.
-.sp
-.LP
-Waitzman, D. \fIRFC 1073, TELNET Window Size Option\fR. Network Information
-Center, SRI International, Menlo Park, Calif., October 1988.
-.sp
-.LP
-Kohl, J., Neuman, C., \fIThe Kerberos Network Authentication Service (V5), RFC
-1510\fR. September 1993.
-.sp
-.LP
-Ts'o, T. and J. Altman, \fITelnet Authentication Option, RFC 2941\fR. September
-2000.
-.sp
-.LP
-Ts'o, T., \fITelnet Authentication: Kerberos Version 5, RFC 2942\fR. September
-2000.
-.sp
-.LP
-Ts'o, T., \fITelnet Data Encryption Option, RFC 2946\fR. September 2000.
-.sp
-.LP
-Ts'o, T., \fITelnet Encryption: DES 64 bit Cipher Feedback, RFC 2952\fR.
-September 2000.
-.SH NOTES
-Some \fBTELNET\fR commands are only partially implemented.
-.sp
-.LP
-Binary mode has no common interpretation except between similar operating
-systems.
-.sp
-.LP
-The terminal type name received from the remote client is converted to lower
-case.
-.sp
-.LP
-The \fIpacket\fR interface to the pseudo-terminal should be used for more
-intelligent flushing of input and output queues.
-.sp
-.LP
-\fBin.telnetd\fR never sends \fBTELNET\fR \fIgo\fR \fIahead\fR commands.
-.sp
-.LP
-The \fBpam_unix\fR(5) module is no longer supported.. Similar functionality is
-provided by \fBpam_authtok_check\fR(5), \fBpam_authtok_get\fR(5),
-\fBpam_authtok_store\fR(5), \fBpam_dhkeys\fR(5), \fBpam_passwd_auth\fR(5),
-\fBpam_unix_account\fR(5), \fBpam_unix_auth\fR(5), and
-\fBpam_unix_session\fR(5).
-.sp
-.LP
-The \fBin.telnetd\fR service is managed by the service management facility,
-\fBsmf\fR(5), under the service identifier:
-.sp
-.in +2
-.nf
-svc:/network/telnet
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Administrative actions on this service, such as enabling, disabling, or
-requesting restart, can be performed using \fBsvcadm\fR(1M). Responsibility for
-initiating and restarting this service is delegated to \fBinetd\fR(1M). Use
-\fBinetadm\fR(1M) to make configuration changes and to view configuration
-information for this service. The service's status can be queried using the
-\fBsvcs\fR(1) command.
diff --git a/usr/src/man/man1m/in.tftpd.1m b/usr/src/man/man1m/in.tftpd.1m
deleted file mode 100644
index e67bb435d4..0000000000
--- a/usr/src/man/man1m/in.tftpd.1m
+++ /dev/null
@@ -1,116 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T
-.\" Copyright (C) 2008, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 2015 Nexenta Systems, Inc. All rights reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH IN.TFTPD 1M "Jun 17, 2015"
-.SH NAME
-in.tftpd, tftpd \- Internet Trivial File Transfer Protocol server
-.SH SYNOPSIS
-.LP
-.nf
-\fBin.tftpd\fR [\fB-d\fR] [\fB-T\fR \fIrexmtval\fR] [\fB-s\fR] [\fIhomedir\fR]
-.fi
-
-.SH DESCRIPTION
-.LP
-\fBtftpd\fR is a server that supports the Internet Trivial File Transfer
-Protocol (TFTP).
-.sp
-.LP
-Before responding to a request, the server attempts to change its current
-directory to \fIhomedir\fR; the default directory is \fB/tftpboot\fR.
-.sp
-.LP
-The use of \fBtftp\fR does not require an account or password on the remote
-system. Due to the lack of authentication information, \fBin.tftpd\fR will
-allow only publicly readable files to be accessed. Files may be written only if
-they already exist and are publicly writable. Note that this extends the
-concept of "public" to include all users on all hosts that can be reached
-through the network. This may not be appropriate on all systems, and its
-implications should be considered before enabling this service.
-.sp
-.LP
-\fBin.tftpd\fR runs with the user \fBID\fR and group \fBID\fR set to
-\fB[GU]ID_NOBODY\fR under the assumption that no files exist with that owner or
-group. However, nothing checks this assumption or enforces this restriction.
-.SH OPTIONS
-.ne 2
-.na
-\fB\fB-d\fR\fR
-.ad
-.RS 15n
-Debug. When specified it sets the \fBSO_DEBUG\fR socket option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR\fR
-.ad
-.RS 15n
-Secure. When specified, the directory change to \fIhomedir\fR must succeed. The
-daemon also changes its root directory to \fIhomedir\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-T\fR \fIrexmtval\fR\fR
-.ad
-.RS 15n
-Specifies the value of the retransmission timeout in seconds. This also affects
-the maximum session timeout in that the latter is set to five times the
-retransmission timeout value.
-.RE
-
-.SH USAGE
-.LP
-The \fBin.tftpd\fR server is IPv6-enabled. See \fBip6\fR(7P).
-.LP
-\fBin.tftpd\fR supports transfers of greater than 32 MB, per RFC 2348.
-.SH SEE ALSO
-.LP
-\fBsvcs\fR(1), \fBtftp\fR(1), \fBinetadm\fR(1M), \fBinetd\fR(1M),
-\fBsvcadm\fR(1M), \fBnetconfig\fR(4), \fBattributes\fR(5), \fBsmf\fR(5),
-\fBip6\fR(7P)
-.LP
-Malkin, G. and Harkin, A. \fIRFC 2347, TFTP Option Extension\fR. The Internet
-Society. May 1998
-.sp
-.LP
-Malkin, G. and Harkin, A. \fIRFC 2348, TFTP Blocksize Option\fR. The Internet
-Society. May 1998
-.sp
-.LP
-Malkin, G. and Harkin, A. \fIRFC 2349, TFTP Timeout Interval and Transfer Size
-Options\fR. The Internet Society. May 1998
-.sp
-.LP
-Sollins, K.R. \fIRFC 1350, The TFTP Protocol (Revision 2)\fR. Network Working
-Group. July 1992.
-.SH NOTES
-.LP
-The \fBtftpd\fR server only acknowledges the transfer size option that is sent
-with a \fBread\fR request when the octet transfer mode is specified.
-.LP
-The \fBin.tftpd.1m\fR service is managed by the service management facility,
-\fBsmf\fR(5), under the service identifier:
-.sp
-.in +2
-.nf
-svc:/network/tftp/udp6:default
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Administrative actions on this service, such as enabling, disabling, or
-requesting restart, can be performed using \fBsvcadm\fR(1M). Responsibility for
-initiating and restarting this service is delegated to \fBinetd\fR(1M). Use
-\fBinetadm\fR(1M) to make configuration changes and to view configuration
-information for this service. The service's status can be queried using the
-\fBsvcs\fR(1) command.
diff --git a/usr/src/man/man1m/in.timed.1m b/usr/src/man/man1m/in.timed.1m
deleted file mode 100644
index f80a8c839f..0000000000
--- a/usr/src/man/man1m/in.timed.1m
+++ /dev/null
@@ -1,79 +0,0 @@
-'\" te
-.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH IN.TIMED 1M "Aug 23, 2004"
-.SH NAME
-in.timed \- UDP or TCP time protocol service daemon
-.SH SYNOPSIS
-.LP
-.nf
-\fBin.timed\fR
-.fi
-
-.LP
-.nf
-FMRI \fIsvc\fR:/internet/time:default
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-FMRI stands for Fault Management Resource Identifier. It is used to identify
-resources managed by the Fault Manager. See \fBfmd\fR(1M) and \fBsmf\fR(5).
-.sp
-.LP
-The \fBin.timed\fR service provides the server-side of the time protocol. The
-time server sends to requestors the time in seconds since midnight, January 1,
-1900. The time protocol is available on both TCP and UDP transports through
-port 37.
-.sp
-.LP
-The in.timed service is an \fBinetd\fR(1M) \fBsmf\fR(5) delegated service. The
-\fBin.timed\fR detects which transport is requested by examining the socket it
-is passed by the \fBinetd\fR daemon.
-.sp
-.ne 2
-.na
-\fBTCP-based service\fR
-.ad
-.RS 21n
-Once a connection is established, the \fBin.timed\fR sends the time as a 32-bit
-binary number and closes the connection. Any received data is ignored.
-.RE
-
-.sp
-.ne 2
-.na
-\fBUDP-based service\fR
-.ad
-.RS 21n
-The \fBin.timed\fR listens for UDP datagrams. When a datagram is received, the
-server generates a UDP datagram containing the time as a 32-bit binary number
-and sends it to the client. Any received data is ignored.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBinetd\fR(1M), \fBattributes\fR(5), \fBsmf\fR(5)
-.sp
-.LP
-RFC 868
diff --git a/usr/src/man/man1m/in.uucpd.1m b/usr/src/man/man1m/in.uucpd.1m
deleted file mode 100644
index f8fac56b7c..0000000000
--- a/usr/src/man/man1m/in.uucpd.1m
+++ /dev/null
@@ -1,177 +0,0 @@
-'\" te
-.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH IN.UUCPD 1M "Aug 12, 2004"
-.SH NAME
-in.uucpd, uucpd \- UUCP server
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/in.uucpd\fR [\fB-n\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBin.uucpd\fR is the server for supporting \fBUUCP\fR connections over
-networks.
-.sp
-.LP
-\fBin.uucpd\fR is invoked by \fBinetd\fR(1M) when a \fBUUCP\fR connection is
-established, that is, a connection to the port indicated in the "uucp" service
-specification, and executes the following protocol. See \fBservices\fR(4):
-.RS +4
-.TP
-1.
-The server prompts with \fBlogin:\fR. The \fBuucico\fR(1M) process at the
-other end must supply a username.
-.RE
-.RS +4
-.TP
-2.
-Unless the username refers to an account without a password, the server then
-prompts with \fBPassword:\fR. The \fBuucico\fR process at the other end must
-supply the password for that account.
-.RE
-.sp
-.LP
-If the username is not valid, or is valid but refers to an account that does
-not have \fB/usr/lib/uucp/uucico\fR as its login shell, or if the password is
-not the correct password for that account, the connection is dropped.
-Otherwise, \fBuucico\fR is run, with the user \fBID\fR, group \fBID\fR, group
-set, and home directory for that account, with the environment variables
-\fBUSER\fR and \fB LOGNAME\fR set to the specified username, and with a
-\fB-u\fR flag specifying the username. Unless the \fB-n\fR flag is specified,
-entries are made in \fB/var/adm/utmpx\fR, \fB/var/adm/wtmpx\fR, and
-\fB/var/adm/lastlog\fR for the username. \fBin.uucpd\fR must be invoked by a
-user with appropriate privilege (usually root) in order to be able to verify
-that the password is correct.
-.SH SECURITY
-.sp
-.LP
-\fBin.uucpd\fR uses \fBpam\fR(3PAM) for authentication, account management, and
-session management. The \fBPAM\fR configuration policy, listed through
-\fB/etc/pam.conf\fR, specifies the modules to be used for \fBin.uucpd\fR. Here
-is a partial \fBpam.conf\fR file with entries for \fBuucp\fR using the UNIX
-authentication, account management, and session management module.
-.sp
-.in +2
-.nf
-uucp auth requisite pam_authtok_get.so.1
-uucp auth required pam_dhkeys.so.1
-uucp auth required pam_unix_auth.so.1
-
-uucp account requisite pam_roles.so.1
-uucp account required pam_projects.so.1
-uucp account required pam_unix_account.so.1
-
-uucp session required pam_unix_session.so.1
-.fi
-.in -2
-
-.sp
-.LP
-If there are no entries for the \fBuucp\fR service, then the entries for the
-"other" service will be used. If multiple authentication modules are listed,
-then the peer may be prompted for multiple passwords.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/var/adm/utmpx\fR\fR
-.ad
-.RS 20n
-accounting
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/adm/wtmpx\fR\fR
-.ad
-.RS 20n
-accounting
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/adm/lastlog\fR\fR
-.ad
-.RS 20n
-time of last login
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBsvcs\fR(1), \fBinetadm\fR(1M), \fBinetd\fR(1M), \fBsvcadm\fR(1M),
-\fBuucico\fR(1M), \fBpam\fR(3PAM), \fBpam.conf\fR(4), \fBservices\fR(4),
-\fBattributes\fR(5), \fBpam_authtok_check\fR(5), \fBpam_authtok_get\fR(5),
-\fBpam_authtok_store\fR(5), \fBpam_dhkeys\fR(5), \fBpam_passwd_auth\fR(5),
-\fBpam_unix_account\fR(5), \fBpam_unix_auth\fR(5), \fBpam_unix_session\fR(5),
-\fBsmf\fR(5)
-.SH DIAGNOSTICS
-.sp
-.LP
-All diagnostic messages are returned on the connection, after which the
-connection is closed.
-.sp
-.ne 2
-.na
-\fB\fBuser read\fR\fR
-.ad
-.RS 20n
-An error occurred while reading the username.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpasswd read\fR\fR
-.ad
-.RS 20n
-An error occurred while reading the password.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBLogin incorrect.\fR\fR
-.ad
-.RS 20n
-The username is invalid or refers to an account with a login shell other than
-\fB/usr/lib/uucp/uucico\fR, or the password is not the correct password for the
-account.
-.RE
-
-.SH NOTES
-.sp
-.LP
-The \fBin.uucpd\fR service is managed by the service management facility,
-\fBsmf\fR(5), under the service identifier:
-.sp
-.in +2
-.nf
-svc:/network/uucp
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Administrative actions on this service, such as enabling, disabling, or
-requesting restart, can be performed using \fBsvcadm\fR(1M). Responsibility for
-initiating and restarting this service is delegated to \fBinetd\fR(1M). Use
-\fBinetadm\fR(1M) to make configuration changes and to view configuration
-information for this service. The service's status can be queried using the
-\fBsvcs\fR(1) command.
-.sp
-.LP
-The \fBpam_unix\fR(5) module is no longer supported. Similar functionality is
-provided by \fBpam_authtok_check\fR(5), \fBpam_authtok_get\fR(5),
-\fBpam_authtok_store\fR(5), \fBpam_dhkeys\fR(5), \fBpam_passwd_auth\fR(5),
-\fBpam_unix_account\fR(5), \fBpam_unix_auth\fR(5), and
-\fBpam_unix_session\fR(5).
diff --git a/usr/src/man/man1m/inetadm.1m b/usr/src/man/man1m/inetadm.1m
deleted file mode 100644
index e172e5e428..0000000000
--- a/usr/src/man/man1m/inetadm.1m
+++ /dev/null
@@ -1,335 +0,0 @@
-'\" te
-.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH INETADM 1M "April 9, 2016"
-.SH NAME
-inetadm \- observe or configure inetd-controlled services
-.SH SYNOPSIS
-.LP
-.nf
-\fBinetadm\fR
-.fi
-
-.LP
-.nf
-\fBinetadm\fR \fB-?\fR
-.fi
-
-.LP
-.nf
-\fBinetadm\fR \fB-p\fR
-.fi
-
-.LP
-.nf
-\fBinetadm\fR \fB-l\fR {\fIFMRI\fR | \fIpattern\fR}
-.fi
-
-.LP
-.nf
-\fBinetadm\fR \fB-e\fR {\fIFMRI\fR | \fIpattern\fR}
-.fi
-
-.LP
-.nf
-\fBinetadm\fR \fB-d\fR {\fIFMRI\fR | \fIpattern\fR}
-.fi
-
-.LP
-.nf
-\fBinetadm\fR \fB-m\fR {\fIFMRI\fR | \fIpattern\fR}... {\fIname\fR=\fIvalue\fR}...
-.fi
-
-.LP
-.nf
-\fBinetadm\fR \fB-M\fR {\fIname\fR=\fIvalue\fR}...
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBinetadm\fR utility provides the following capabilities for
-\fBinetd\fR-managed SMF services:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Provides a list of all such services installed.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Lists the services' properties and values.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Allows enabling and disabling of services.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Allows modification of the services'property values, as well as the default
-values provided by \fBinetd\fR.
-.RE
-.sp
-.LP
-See \fBsmf\fR(5) for a description of an SMF service.
-.sp
-.LP
-With no arguments, \fBinetadm\fR lists all services under \fBinetd\fR(1M)
-control, including such attributes as their current run state and whether or
-not they are enabled.
-.SH OPTIONS
-.LP
-For options taking one or more FMRI operands (see \fBsmf\fR(5) for a
-description of an FMRI), if the operand specifies a service (instead of a
-service instance), and that service has only a single instance, \fBinetadm\fR
-operates on that instance.
-.sp
-.LP
-If a service name is supplied and it contains more than one instance or a
-pattern is supplied and it matches more than one instance, a warning
-message is displayed and that operand is ignored.
-.sp
-.LP
-For those options taking \fIname\fR=\fIvalue\fR parameters, a description of
-each of the possible names and the allowed values is found in the
-\fBinetd\fR(1M) man page.
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-?\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display a usage message.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR\fR
-.ad
-.sp .6
-.RS 4n
-Lists all default \fBinet\fR service property values provided by \fBinetd\fR in
-the form of \fIname\fR=\fIvalue\fR pairs. If the value is of boolean type, it
-is listed as TRUE or FALSE.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR {\fIFMRI\fR | \fIpattern\fR}...\fR
-.ad
-.sp .6
-.RS 4n
-List all properties for the specified service instances as
-\fIname\fR=\fIvalue\fR pairs. In addition, if the property value is inherited
-from the default value provided by \fBinetd\fR, the \fIname\fR=\fIvalue\fR pair
-is identified by the token (default). Property inheritance occurs when
-properties do not have a specified service instance default.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-e\fR {\fIFMRI\fR | \fIpattern\fR}...\fR
-.ad
-.sp .6
-.RS 4n
-Enable the specified service instances.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-d\fR {\fIFMRI\fR | \fIpattern\fR}...\fR
-.ad
-.sp .6
-.RS 4n
-Disable the specified service instances.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-m\fR {\fIFMRI\fR | \fIpattern\fR}...{\fIname\fR=\fIvalue\fR}...\fR
-.ad
-.sp .6
-.RS 4n
-Change the values of the specified properties of the identified service
-instances. Properties are specified as whitespace-separated
-\fIname\fR=\fIvalue\fR pairs. To remove an instance-specific value and accept
-the default value for a property, simply specify the property without a value,
-for example, \fBname=\fR .
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-M\fR {\fIname\fR=\fIvalue\fR}...\fR
-.ad
-.sp .6
-.RS 4n
-Change the values of the specified \fBinetd\fR default properties. Properties
-are specified as whitespace-separated \fIname\fR=\fIvalue\fR pairs.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRDisplaying Properties for a Service
-.sp
-.LP
-The following command displays the properties for the \fBspray\fR service.
-
-.sp
-.in +2
-.nf
-# inetadm -l network/rpc/spray:default
-SCOPE NAME=VALUE
- name="sprayd"
- endpoint_type="tli"
- proto="datagram_v"
- isrpc=TRUE
- rpc_low_version=1
- rpc_high_version=1
- wait=TRUE
- exec="/usr/lib/netsvc/spray/rpc.sprayd"
- user="root"
-default bind_addr=""
-default bind_fail_max=-1
-default bind_fail_interval=-1
-default max_con_rate=-1
-default max_copies=-1
-default con_rate_offline=-1
-default failrate_cnt=40
-default failrate_interval=60
-default inherit_env=TRUE
-default tcp_trace=FALSE
-default tcp_wrappers=FALSE
-default connection_backlog=10
-.fi
-.in -2
-
-.LP
-\fBExample 2 \fRDisplaying Default Properties
-.sp
-.LP
-The following command displays default properties.
-
-.sp
-.in +2
-.nf
-# inetadm -p
-NAME=VALUE
-bind_addr=""
-bind_fail_max=-1
-bind_fail_interval=-1
-max_con_rate=-1
-max_copies=-1
-con_rate_offline=-1
-failrate_cnt=40
-failrate_interval=60
-inherit_env=TRUE
-tcp_trace=FALSE
-tcp_wrappers=FALSE
-default connection_backlog=10
-.fi
-.in -2
-
-.LP
-\fBExample 3 \fRChanging Property Values for a Service
-.sp
-.LP
-The following command changes \fBrpc_high_version\fR to \fB3\fR and
-\fBtcp_trace\fR to \fBTRUE\fR for the \fBspray\fR service.
-
-.sp
-.in +2
-.nf
-# inetadm -m network/rpc/spray:default \e
- rpc_high_version=3 tcp_trace=TRUE
-# inetadm -l network/rpc/spray:default
-SCOPE NAME=VALUE
- name="sprayd"
- endpoint_type="tli"
- proto="datagram_v"
- isrpc=TRUE
- rpc_low_version=1
- rpc_high_version=3
- wait=TRUE
- exec="/usr/lib/netsvc/spray/rpc.sprayd"
- user="root"
-default bind_addr=""
-default bind_fail_max=-1
-default bind_fail_interval=-1
-default max_con_rate=-1
-default max_copies=-1
-default con_rate_offline=-1
-default failrate_cnt=40
-default failrate_interval=60
-default inherit_env=TRUE
- tcp_trace=TRUE
-default tcp_wrappers=FALSE
-default connection_backlog=10
-.fi
-.in -2
-
-.SH EXIT STATUS
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 5n
-Operation completed successfully.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB1\fR\fR
-.ad
-.RS 5n
-A fatal error occurred. An accompanying error message will provide further
-information.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB2\fR\fR
-.ad
-.RS 5n
-Invalid arguments were supplied, such as an ambiguous service FMRI or pattern.
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-.LP
-\fBinetd\fR(1M), \fBsvccfg\fR(1M), \fBattributes\fR(5), \fBsmf\fR(5)
diff --git a/usr/src/man/man1m/inetconv.1m b/usr/src/man/man1m/inetconv.1m
deleted file mode 100644
index 6e7aff1b2f..0000000000
--- a/usr/src/man/man1m/inetconv.1m
+++ /dev/null
@@ -1,252 +0,0 @@
-'\" te
-.\" Copyright (c) 2004, Sun Microsystems, Inc.
-.\" All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH INETCONV 1M "Oct 21, 2004"
-.SH NAME
-inetconv \- convert \fBinetd.conf\fR entries into smf service manifests, import
-them into smf repository
-.SH SYNOPSIS
-.LP
-.nf
-\fBinetconv\fR \fB-?\fR
-.fi
-
-.LP
-.nf
-\fBinetconv\fR [\fB-f\fR] [\fB-n\fR] [\fB-i\fR \fIsrcfile\fR] [\fB-o\fR \fIdestdir\fR]
-.fi
-
-.LP
-.nf
-\fBinetconv\fR \fB-e\fR [\fB-n\fR] [\fB-i\fR \fIsrcfile\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBinetconv\fR utility converts a file containing records of
-\fBinetd.conf\fR(4) into \fBsmf\fR(5) service manifests, and then import those
-manifests into the \fBsmf\fR repository. Once the \fBinetd.conf\fR file has
-been converted, the only way to change aspects of an inet service is to use the
-\fBinetadm\fR(1M) utility.
-.sp
-.LP
-There is a one-to-one correspondence between a service line in the input file
-and the manifest generated. By default, the manifests are named using the
-following template:
-.sp
-.in +2
-.nf
-\fI<svcname>\fR-\fI<proto>\fR\fB\&.xml\fR
-.fi
-.in -2
-
-.sp
-.LP
-The \fI<svcname>\fR token is replaced by the service's name and the
-\fI<proto>\fR token by the service's protocol. Any slash (\fB/\fR) characters
-that exist in the source line for the service name or protocol are replaced
-with underscores (\fB_\fR).
-.sp
-.LP
-The service line is recorded as a property of the converted service.
-.sp
-.LP
-During the conversion process, if a service line is found to be malformed or to
-be for an internal \fBinetd\fR service, no manifest is generated and that
-service line is skipped.
-.sp
-.LP
-The input file is left untouched by the conversion process.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-?\fR\fR
-.ad
-.RS 14n
-Display a usage message.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-e\fR\fR
-.ad
-.RS 14n
-Enable \fBsmf\fR services which are listed in the input file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR\fR
-.ad
-.RS 14n
-If a service manifest of the same name as the one to be generated is found in
-the destination directory, \fBinetconv\fR will overwrite that manifest if this
-option is specified. Otherwise, an error message is generated and the
-conversion of that service is not performed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-i\fR \fIsrcfile\fR\fR
-.ad
-.RS 14n
-Permits the specification of an alternate input file \fIsrcfile\fR. If this
-option is not specified, then the \fBinetd.conf\fR(4) file is used as input.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR\fR
-.ad
-.RS 14n
-Turns off the auto-import of the manifests generated during the conversion
-process. Later, if you want to import a generated manifest into the
-\fBsmf\fR(5) repository, you can do so through the use of the \fBsvccfg\fR(1M)
-utility.
-.sp
-If the \fB-e\fR option is specified, the \fB-n\fR option only displays the
-\fBsmf\fR services that would be enabled.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-o\fR\fR
-.ad
-.RS 14n
-Permits the specification of an alternate destination directory \fIdestdir\fR
-for the generated manifests. If this option is not specified, then the
-manifests are placed in \fB/var/svc/manifest/network/rpc\fR, if the service is
-a RPC service, or \fB/var/svc/manifest/network\fR otherwise.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRGenerating \fBsmf\fR Manifests from \fBinetd.conf\fR
-.sp
-.LP
-The following command generates \fBsmf\fR(5) manifests from \fBinetd.conf\fR(4)
-and places them in \fB/var/tmp\fR, overwriting any preexisting manifests of the
-same name, and then imports them into the \fBsmf\fR repository.
-
-.sp
-.in +2
-.nf
-# inetconv -f -o /var/tmp
-100232/10 -> /var/tmp/100232_10-rpc_udp.xml
-Importing 100232_10-rpc_udp.xml ...Done
-telnet -> /var/tmp/telnet-tcp6.xml
-Importing telnet-tcp6.xml ...Done
-.fi
-.in -2
-
-.LP
-\fBExample 2 \fRGenerating Manifests from an Alternate Input File
-.sp
-.LP
-The following command specifies a different input file and does not load the
-resulting manifests into the \fBsmf\fR repository.
-
-.sp
-.in +2
-.nf
-# inetconv -n -i /export/test/inet.svcs -o /var/tmp
-100232/10 -> /var/tmp/100232_10-rpc_udp.xml
-telnet -> /var/tmp/telnet-tcp6.xml
-.fi
-.in -2
-
-.SH EXIT STATUS
-.sp
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 5n
-Operation completed successfully (no errors).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB1\fR\fR
-.ad
-.RS 5n
-Invalid options specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB2\fR\fR
-.ad
-.RS 5n
-One or more service lines are malformed, and thus no manifest(s) were generated
-for them.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB3\fR\fR
-.ad
-.RS 5n
-An error occurred importing one or more of the generated manifests.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB4\fR\fR
-.ad
-.RS 5n
-A system error occurred.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/var/svc/manifest/network/{rpc}/\fI<svcname>\fR-\fI<proto>\fR\&.xml\fR\fR
-.ad
-.sp .6
-.RS 4n
-default output manifest file name
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBinetadm\fR(1M), \fBinetd\fR(1M), \fBsvccfg\fR(1M), \fBinetd.conf\fR(4),
-\fBattributes\fR(5), \fBsmf\fR(5)
diff --git a/usr/src/man/man1m/inetd.1m b/usr/src/man/man1m/inetd.1m
deleted file mode 100644
index 6b360cec6f..0000000000
--- a/usr/src/man/man1m/inetd.1m
+++ /dev/null
@@ -1,852 +0,0 @@
-'\" te
-.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH INETD 1M "May 13, 2017"
-.SH NAME
-inetd \- Service Management Facility delegated restarter for inet services
-.SH SYNOPSIS
-.LP
-.nf
-\fBinetd\fR [\fIconfiguration-file\fR] start | stop | refresh
-.fi
-
-.LP
-.nf
- svc:/network/inetd:default
-.fi
-
-.SH DESCRIPTION
-.LP
-\fBinetd\fR is the delegated restarter for internet services for the Service
-Management Facility (SMF). Its basic responsibilities are to manage service
-states in response to administrative requests, system failures, and service
-failures; and, when appropriate, to listen for network requests for services.
-.sp
-.LP
-Services are no longer managed by editing the inetd configuration file,
-\fBinetd.conf\fR(4). Instead, you use \fBinetconv\fR(1M) to convert the
-configuration file content into SMF format services, then manage these services
-using \fBinetadm\fR(1M) and \fBsvcadm\fR(1M). Once a service has been converted
-by \fBinetconv\fR, any changes to the legacy data in the \fBinetd\fR config
-file will not become effective. However, \fBinetd\fR does alert the
-administrator when it notices change in the configuration file. See the start
-description under the "inetd Methods" section for further information.
-.sp
-.LP
-Also note that the current \fBinetd\fR cannot be run from outside the SMF. This
-means it cannot be run from the command line, as was supported by the previous
-\fBinetd\fR. If you attempt to do this, a message is sent to stderr displaying
-mappings between the options supported by the previous \fBinetd\fR to the SMF
-version of \fBinetd\fR.
-.sp
-.LP
-\fBinetd\fR listens for connections on behalf of all services that are in
-either the \fBonline\fR or \fBdegraded\fR state. A service enters one of these
-states when the service is enabled by the user and \fBinetd\fR manages to
-listen on its behalf. A listen attempt can fail if another server (whether
-standalone or a third-party internet service) is already listening on the same
-port. When this occurs, \fBinetd\fR logs this condition and continues trying to
-bind to the port at configured intervals a configured number of times. See the
-property \fBbind_fail_max\fR under "Service Properties," below, for more
-details.
-.sp
-.LP
-The configuration of all \fBinetd\fR's managed SMF services is read when it is
-started. It is reread when \fBinetd\fR is refreshed, which occurs in response
-to an SMF request, or when it receives a SIGHUP signal. See the \fBrefresh\fR
-description under "inetd Methods" for the behavior on configuration refresh.
-.sp
-.LP
-You can use the \fBinetadm\fR(1M) or \fBsvccfg\fR(1M) utilities to make
-configuration changes to Internet services within the SMF repository.
-\fBinetadm\fR has the advantage over \fBsvccfg\fR in that it provides an
-Internet/RPC service context.
-.SS "Service States"
-.LP
-As part of its service management duties, \fBinetd\fR implements a state
-machine for each of its managed services. The states in this machine are made
-up of the \fBsmf\fR(5) set of states. The semantics of these states are as
-follows:
-.sp
-.ne 2
-.na
-\fB\fBuninitialized\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBinetd\fR has yet to process this service.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBonline\fR\fR
-.ad
-.sp .6
-.RS 4n
-The service is handling new network requests and might have existing
-connections active.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdegraded\fR\fR
-.ad
-.sp .6
-.RS 4n
-The service has entered this state because it was able to listen and process
-requests for some, but not all, of the protocols specified for the service,
-having exhausted its listen retries. Existing network connections might be
-active.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBoffline\fR\fR
-.ad
-.sp .6
-.RS 4n
-Connections might be active, but no new requests are being handled. This is a
-transient state. A service might be \fBoffline\fR for any of the following
-reasons:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The service's dependencies are unmet. When its dependencies become met the
-service's state will be re-evaluated.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The service has exceeded its configured connection rate limit,
-\fBmax_con_rate\fR. The service's state is re-evaluated when its connection
-offline timer, \fBcon_rate_offline\fR, expires.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The service has reached its allowed number of active connections,
-\fBmax_copies\fR. The service's state is re-evaluated when the number of active
-connections drops below \fBmax_copies\fR.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBinetd\fR failed to listen on behalf of the service on all its protocols. As
-mentioned above, \fBinetd\fR retries up to a configured maximum number of
-times, at configured intervals.The service's state is re-evaluated when either
-a listen attempt is successful or the retry limit is reached.
-.RE
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdisabled\fR\fR
-.ad
-.sp .6
-.RS 4n
-The service has been turned off by an administrator, is not accepting new
-connections, and has none active. Administrator intervention is required to
-exit this state.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmaintenance\fR\fR
-.ad
-.sp .6
-.RS 4n
-A service is in this state because it is either malfunctioning and needs
-administrator attention or because an administrator has requested it.
-.sp
-Events constituting malfunctioning include: \fBinetd\fR's inability to listen
-on behalf on any of the service's protocols before exceeding the service's bind
-retry limit, non-start methods returning with non-success return values, and
-the service exceeding its failure rate.
-.sp
-You request the maintenance state to perform maintenance on the service, such
-as applying a patch. No new requests are handled in this state, but existing
-connections might be active. Administrator intervention is required to exit
-this state.
-.RE
-
-.sp
-.LP
-Use \fBinetadm\fR(1M) to obtain the current state of a managed service.
-.SS "Service Methods"
-.LP
-As part of certain state transitions \fBinetd\fR will execute, if supplied, one
-of a set of methods provided by the service. The set of supported methods are:
-.sp
-.ne 2
-.na
-\fB\fBinetd_start\fR\fR
-.ad
-.sp .6
-.RS 4n
-Executed to handle a request for an \fBonline\fR or \fBdegraded\fR service.
-Since there is no separate state to distinguish a service with active
-connections, this method is not executed as part of a state transition.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBinetd_offline\fR\fR
-.ad
-.sp .6
-.RS 4n
-Executed when a service is taken from the \fBonline\fR or \fBdegraded\fR state
-to the \fBoffline\fR state. For a \fBwait\fR-type service that at the time of
-execution is performing its own listening, this method should result in it
-ceasing listening. This method will be executed before the \fBdisable\fR method
-in the case an \fBonline\fR/\fBdegraded\fR service is disabled. This method is
-required to be implemented for a \fBwait\fR-type service.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBinetd_online\fR\fR
-.ad
-.sp .6
-.RS 4n
-Executed when a service transitions from the \fBoffline\fR state to the
-\fBonline\fR state. This method allows a service author to carry out some
-preparation prior to a service starting to handle requests.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBinetd_disable\fR\fR
-.ad
-.sp .6
-.RS 4n
-Executed when a service transitions from the \fBoffline\fR state to the
-\fBdisabled\fR state. It should result in any active connections for a service
-being terminated.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBinetd_refresh\fR\fR
-.ad
-.sp .6
-.RS 4n
-Executed when both of the following conditions are met:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBinetd\fR is refreshed, by means of the framework or a SIGHUP, or a request
-comes in to refresh the service, and
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-the service is currently in the \fBonline\fR state and there are no
-configuration changes that would result in the service needing to be taken
-\fBoffline\fR and brought back again.
-.RE
-.RE
-
-.sp
-.LP
-The only compulsory method is the \fBinetd_start\fR method. In the absence of
-any of the others, \fBinetd\fR runs no method but behaves as if one was run
-successfully.
-.SS "Service Properties"
-.LP
-Configuration for SMF-managed services is stored in the SMF repository. The
-configuration is made up of the basic configuration of a service, the
-configuration for each of the service's methods, and the default configuration
-applicable to all \fBinetd\fR-managed services.
-.sp
-.LP
-For details on viewing and modifying the configuration of a service and the
-defaults, refer to \fBinetadm\fR(1M).
-.sp
-.LP
-The basic configuration of a service is stored in a property group named
-\fBinetd\fR in the service. The properties comprising the basic configuration
-are as follows:
-.sp
-.ne 2
-.na
-\fB\fBbind_addr\fR\fR
-.ad
-.sp .6
-.RS 4n
-The address of the network interface to which the service should be bound. An
-empty string value causes the service to accept connections on any network
-interface.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBbind_fail_interval\fR\fR
-.ad
-.sp .6
-.RS 4n
-The time interval in seconds between a failed bind attempt and a retry. The
-values \fB0\fR and \fB-1\fR specify that no retries are attempted and the first
-failure is handled the same as exceeding \fBbind_fail_max\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBbind_fail_max\fR\fR
-.ad
-.sp .6
-.RS 4n
-The maximum number of times \fBinetd\fR retries binding to a service's
-associated port before giving up. The value \fB-1\fR specifies that no retry
-limit is imposed. If none of the service's protocols were bound to before any
-imposed limit is reached, the service goes to the \fBmaintenance\fR state;
-otherwise, if not all of the protocols were bound to, the service goes to the
-\fBdegraded\fR state.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcon_rate_offline\fR\fR
-.ad
-.sp .6
-.RS 4n
-The time in seconds a service will remain offline if it exceeds its configured
-maximum connection rate, \fBmax_con_rate\fR. The values \fB0\fR and \fB-1\fR
-specify that connection rate limiting is disabled.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBconnection_backlog\fR\fR
-.ad
-.sp .6
-.RS 4n
-The backlog queue size. Represents a limit on the number of incoming client
-requests that can be queued at the listening endpoints for servers.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBendpoint_type\fR\fR
-.ad
-.sp .6
-.RS 4n
-The type of the socket used by the service or the value \fBtli\fR to signify a
-TLI-based service. Valid socket type values are: \fBstream\fR, \fBdgram\fR,
-\fBraw\fR, \fBseqpacket\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfailrate_cnt\fR\fR
-.ad
-.sp .6
-.RS 4n
-The count portion of the service's failure rate limit. The failure rate limit
-applies to \fBwait\fR-type services and is reached when \fIcount\fR instances
-of the service are started within a given time. Exceeding the rate results in
-the service being transitioned to the \fBmaintenance\fR state. This is
-different from the behavior of the previous \fBinetd\fR, which continued to
-retry every 10 minutes, indefinitely. The \fBfailrate_cnt\fR check accounts for
-badly behaving servers that fail before consuming the service request and which
-would otherwise be continually restarted, taxing system resources. Failure rate
-is equivalent to the \fB-r\fR option of the previous \fBinetd\fR. The values
-\fB0\fR and \fB-1\fR specify that this feature is disabled.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfailrate_interval\fR\fR
-.ad
-.sp .6
-.RS 4n
-The time portion in seconds of the service's failure rate. The values \fB0\fR
-and \fB-1\fR specify that the failure rate limit feature is disabled.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBinherit_env\fR\fR
-.ad
-.sp .6
-.RS 4n
-If true, pass \fBinetd\fR's environment on to the service's start method.
-Regardless of this setting, \fBinetd\fR will set the variables \fBSMF_FMRI\fR,
-\fBSMF_METHOD\fR, and \fBSMF_RESTARTER\fR in the start method's environment, as
-well as any environment variables set in the method context. These variables
-are described in \fBsmf_method\fR(5).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBisrpc\fR\fR
-.ad
-.sp .6
-.RS 4n
-If true, this is an RPC service.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmax_con_rate\fR\fR
-.ad
-.sp .6
-.RS 4n
-The maximum allowed connection rate, in connections per second, for a
-\fBnowait\fR-type service. The values \fB0\fR and \fB-1\fR specify that that
-connection rate limiting is disabled.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmax_copies\fR\fR
-.ad
-.sp .6
-.RS 4n
-The maximum number of copies of a \fBnowait\fR service that can run
-concurrently. The values \fB0\fR and \fB-1\fR specify that copies limiting is
-disabled.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBname\fR\fR
-.ad
-.sp .6
-.RS 4n
-Can be set to one of the following values:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-a service name understood by \fBgetservbyname\fR(3SOCKET);
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-if \fBisrpc\fR is set to \fBtrue\fR, a service name understood by
-\fBgetrpcbyname\fR(3NSL);
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-if \fBisrpc\fR is set to \fBtrue\fR, a valid RPC program number.
-.RE
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBproto\fR\fR
-.ad
-.sp .6
-.RS 4n
-In the case of socket-based services, this is a list of protocols supported by
-the service. Valid protocols are: \fBtcp\fR, \fBtcp6\fR, \fBtcp6only\fR,
-\fBudp\fR, \fBudp6\fR, and \fBudp6only\fR. In the case of TLI services, this is
-a list of netids recognized by \fBgetnetconfigent\fR(3NSL) supported by the
-service, plus the values \fBtcp6only\fR and \fBudp6only\fR. RPC/TLI services
-also support nettypes in this list, and \fBinetd\fR first tries to interpret
-the list member as a nettype for these service types. The values \fBtcp6only\fR
-and \fBudp6only\fR are new to \fBinetd\fR; these values request that
-\fBinetd\fR listen only for and pass on true \fBIPv6\fR requests (not IPv4
-mapped ones). See "Configuring Protocols for Sockets-Based Services," below.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrpc_low_version\fR\fR
-.ad
-.sp .6
-.RS 4n
-Lowest supported RPC version. Required when \fBisrpc\fR is set to \fBtrue\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrpc_high_version\fR\fR
-.ad
-.sp .6
-.RS 4n
-Highest supported RPC version. Required when \fBisrpc\fR is set to \fBtrue\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBtcp_trace\fR\fR
-.ad
-.sp .6
-.RS 4n
-If true, and this is a \fBnowait\fR-type service, \fBinetd\fR logs the client's
-IP address and TCP port number, along with the name of the service, for each
-incoming connection, using the \fBsyslog\fR(3C) facility. \fBinetd\fR uses the
-\fBsyslog\fR facility \fBcode\fR daemon and \fBnotice\fR priority level. See
-\fBsyslog.conf\fR(4) for a description of \fBsyslog\fR codes and severity
-levels. This logging is separate from the logging done by the TCP wrappers
-facility.
-.sp
-\fBtcp_trace\fR is equivalent to the previous \fBinetd\fR's \fB-t\fR option
-(and the \fB/etc/default/inetd\fR property \fBENABLE_CONNECTION_LOGGING\fR).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBtcp_wrappers\fR\fR
-.ad
-.sp .6
-.RS 4n
-If \fBtrue\fR, enable TCP wrappers access control. This applies only to
-services with \fBendpoint_type\fR set to \fBstreams\fR and \fBwait\fR set to
-\fBfalse\fR. The \fBsyslog\fR facility \fBcode\fR daemon is used to log allowed
-connections (using the \fBnotice\fR severity level) and denied traffic (using
-the \fBwarning\fR severity level). See \fBsyslog.conf\fR(4) for a description
-of \fBsyslog\fR codes and severity levels. The stability level of the TCP
-wrappers facility and its configuration files is External. As the TCP wrappers
-facility is not controlled by Sun, intra-release incompatibilities are not
-uncommon. See \fBattributes\fR(5).
-.sp
-For more information about configuring TCP wrappers, refer to
-\fBtcpd\fR(1M) and \fBhosts_access\fR(4).
-.sp
-\fBtcp_wrappers\fR is equivalent to the previous inetd's
-\fB/etc/default/inetd\fR property \fBENABLE_TCPWRAPPERS\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBwait\fR\fR
-.ad
-.sp .6
-.RS 4n
-If \fBtrue\fR this is a \fBwait\fR-type service, otherwise it is a
-\fBnowait\fR-type service. A \fBwait\fR-type service has the following
-characteristics:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Its \fBinetd_start\fR method will take over listening duties on the service's
-bound endpoint when it is executed.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBinetd\fR will wait for it to exit after it is executed before it resumes
-listening duties.
-.RE
-Datagram servers must be configured as being of type \fBwait\fR, as they are
-always invoked with the original datagram endpoint that will participate in
-delivering the service bound to the specified service. They do not have
-separate "listening" and "accepting" sockets. Connection-oriented services,
-such as TCP stream services can be designed to be either of type \fBwait\fR or
-\fBnowait\fR.
-.RE
-
-.sp
-.LP
-A number of the basic properties are optional for a service. In their absence,
-their values are taken from the set of default values present in the
-\fBdefaults\fR property group in the \fBinetd\fR service. These properties,
-with their seed values, are listed below. Note that these values are
-configurable through \fBinetadm\fR(1M).
-.sp
-.in +2
-.nf
-bind_fail_interval -1
-bind_fail_max -1
-con_rate_offline -1
-connection_backlog 10
-failrate_count 40
-failrate_time 60
-inherit_env true
-max_con_rate -1
-max_copies -1
-tcp_trace false
-tcp_wrappers false
-.fi
-.in -2
-
-.sp
-.LP
-Each method specified for a service will have its configuration stored in the
-SMF repository, within a property group of the same name as the method. The set
-of properties allowable for these methods includes those specified for the
-services managed by \fBsvc.startd\fR(1M). (See \fBsvc.startd\fR(1M) for further
-details.) Additionally, for the \fBinetd_start\fR method, you can set the
-\fBarg0\fR property.
-.sp
-.LP
-The \fBarg0\fR property allows external wrapper programs to be used with
-\fBinetd\fR services. Specifically, it allows the first argument,
-\fBargv[0]\fR, of the service's start method to be something other than the
-path of the server program.
-.sp
-.LP
-In the case where you want to use an external wrapper program and pass
-arguments to the service's daemon, the arguments should be incorporated as
-arguments to the wrapper program in the \fBexec\fR property. For example:
-.sp
-.in +2
-.nf
-exec='/path/to/wrapper/prog service_daemon_args'
-arg0='/path/to/service/daemon'
-.fi
-.in -2
-
-.sp
-.LP
-In addition to the special method tokens mentioned in \fBsmf_method\fR(5),
-\fBinetd\fR also supports the \fB:kill_process\fR token for \fBwait\fR-type
-services. This results in behavior identical to that if the \fB:kill\fR token
-were supplied, except that the \fBkill\fR signal is sent only to the parent
-process of the \fBwait\fR-type service's \fBstart\fR method, not to all members
-of its encompassing process contract (see \fBprocess\fR(4)).
-.SS "Configuring Protocols for Sockets-Based Services"
-.LP
-When configuring \fBinetd\fR for a sockets-based service, you have the choice,
-depending on what is supported by the service, of the alternatives described
-under the \fBproto\fR property, above. The following are guidelines for which
-\fBproto\fR values to use:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-For a service that supports only IPv4: \fBtcp\fR and \fBudp\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-For a service that supports only IPv6: \fBtcp6only\fR and \fBudp6only\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-For a service that supports both IPv4 and IPv6:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Obsolete and not recommended: \fBtcp6\fR and \fBudp6\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Recommended: use two separate entries that differ only in the proto field. One
-entry has \fBtcp\fR and the other has \fBtcp6only\fR, or \fBudp\fR plus
-\fBudp6only\fR.
-.RE
-.RE
-.sp
-.LP
-See EXAMPLES for an example of a configuration of a service that supports both
-IPv4 and IPv6.
-.SS "\fBinetd\fR Methods"
-.LP
-\fBinetd\fR provides the methods listed below for consumption by the master
-restarter, \fBsvc.startd\fR(1M).
-.sp
-.ne 2
-.na
-\fB\fBstart\fR\fR
-.ad
-.sp .6
-.RS 4n
-Causes \fBinetd\fR to start providing service. This results in \fBinetd\fR
-beginning to handle \fBsmf\fR requests for its managed services and network
-requests for those services that are in either the \fBonline\fR or
-\fBdegraded\fR state.
-.sp
-In addition, \fBinetd\fR also checks if the \fBinetd.conf\fR(4)-format
-configuration file it is monitoring has changed since the last
-\fBinetconv\fR(1M) conversion was carried out. If it has, then a message
-telling the administrator to re-run \fBinetconv\fR to effect the changes made
-is logged in \fBsyslog\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBstop\fR\fR
-.ad
-.sp .6
-.RS 4n
-Causes \fBinetd\fR to stop providing service. At this point, \fBinetd\fR
-transitions each of its services that are not in either the \fBmaintenance\fR
-or \fBdisabled\fR states to the \fBoffline\fR state, running any appropriate
-methods in the process.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrefresh\fR\fR
-.ad
-.sp .6
-.RS 4n
-Results in a refresh being performed for each of its managed services and the
-\fBinetd.conf\fR(4) format configuration file being checked for change, as in
-the \fBstart\fR method. When a service is refreshed, its behavior depends on
-its current state:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-if it is in the \fBmaintenance\fR or \fBdisabled\fR states, no action is
-performed because the configuration will be read and consumed when the service
-leaves the state;
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-if it is in the \fBoffline\fR state, the configuration will be read and any
-changes consumed immediately;
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-if it is in the \fBonline\fR or \fBdegraded\fR state and the configuration has
-changed such that a re-binding is necessary to conform to it, then the service
-will be transitioned to the \fBoffline\fR state and back again, using the new
-configuration for the bind;
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-if it is in the \fBonline\fR state and a re-binding is not necessary, then the
-\fBinetd_refresh\fR method of the service, if provided, will be run to allow
-\fBonline\fR \fBwait\fR-type services to consume any other changes.
-.RE
-.RE
-
-.SH OPTIONS
-.LP
-No options are supported.
-.SH OPERANDS
-.ne 2
-.na
-\fB\fIconfiguration-file\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies an alternate location for the legacy service file
-(\fBinetd.conf\fR(4)).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBstart\fR|\fBstop\fR|\fBrefresh\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies which of \fBinetd\fR's methods should be run.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRConfiguring a Service that Supports Both IPv4 and IPv6
-.sp
-.LP
-The following commands illustrate the existence of services that support both
-IPv4 and IPv6 and assign \fBproto\fR properties to those services.
-
-.sp
-.in +2
-.nf
-example# \fBsvcs -a | grep mysvc\fR
-online 15:48:29 svc:/network/mysvc:dgram4
-online 15:48:29 svc:/network/mysvc:dgram6
-online 15:51:47 svc:/network/mysvc:stream4
-online 15:52:10 svc:/network/mysvc:stream6
-
-# \fBinetadm -M network/rpc/mysvc:dgram4 proto=udp\fR
-# \fBinetadm -M network/rpc/mysvc:dgram6 proto=udp6only\fR
-# \fBinetadm -M network/rpc/mysvc:stream4 proto=tcp\fR
-# \fBinetadm -M network/rpc/mysvc:stream6 proto=tcp6only\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-See \fBsvcs\fR(1) and \fBinetadm\fR(1M) for descriptions of those commands.
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-.LP
-\fBfmd\fR(1M), \fBinetadm\fR(1M), \fBinetconv\fR(1M), \fBsvcadm\fR(1M),
-\fBsvccfg\fR(1M), \fBsvcs\fR(1), \fBsvc.startd\fR(1M), \fBsyslog\fR(3C),
-\fBgetnetconfigent\fR(3NSL), \fBgetrpcbyname\fR(3NSL),
-\fBgetservbyname\fR(3SOCKET), \fBinetd.conf\fR(4), \fBprocess\fR(4),
-\fBsyslog.conf\fR(4), \fBattributes\fR(5), \fBsmf\fR(5), \fBsmf_method\fR(5)
-.SH NOTES
-.LP
-The \fBinetd\fR daemon performs the same function as, but is implemented
-significantly differently from, the daemon of the same name in Solaris 9 and
-prior Solaris operating system releases. In the current Solaris release,
-\fBinetd\fR is part of the Service Management Facility (see \fBsmf\fR(5)) and
-will run only within that facility.
-.sp
-.LP
-The \fB/etc/default/inetd\fR file has been deprecated. The functionality
-represented by the properties \fBENABLE_CONNECTION_LOGGING\fR and
-\fBENABLE_TCP_WRAPPERS\fR are now available as the \fBtcp_trace\fR and
-\fBtcp_wrappers\fR properties, respectively. These properties are described
-above, under "Service Properties".
diff --git a/usr/src/man/man1m/infocmp.1m b/usr/src/man/man1m/infocmp.1m
deleted file mode 100644
index 2e0b81abc0..0000000000
--- a/usr/src/man/man1m/infocmp.1m
+++ /dev/null
@@ -1,335 +0,0 @@
-'\" te
-.\" Copyright (c) 1996, Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH INFOCMP 1M "Jul 5, 1990"
-.SH NAME
-infocmp \- compare or print out terminfo descriptions
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/bin/infocmp\fR [\fB-d\fR] [\fB-c\fR] [\fB-n\fR] [\fB-I\fR] [\fB-L\fR] [\fB-C\fR] [\fB-r\fR] [\fB-u\fR]
- [\fB-s\fR | d | i | l | c] [\fB-v\fR] [\fB-V\fR] [\fB-1\fR] [\fB-w\fR \fIwidth\fR]
- [\fB-A\fR \fI directory\fR] [\fB-B\fR \fIdirectory\fR] [\fItermname\fR]...
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBinfocmp\fR compares a binary \fBterminfo\fR entry with other terminfo
-entries, rewrites a \fBterminfo\fR description to take advantage of the
-\fBuse=\fR terminfo field, or prints out a \fBterminfo\fR description from the
-binary file ( \fBterm\fR ) in a variety of formats. It displays boolean fields
-first, then numeric fields, followed by the string fields. If no options are
-specified and zero, or one \fItermname\fR is specified, the \fB-I\fR option is
-assumed. If more than one \fItermname\fR is specified, the \fB-d\fR option is
-assumed.
-.SH OPTIONS
-.sp
-.LP
-The \fB-d\fR \fB,\fR \fB-c\fR \fB,\fR and \fB-n\fR options can be used for
-comparisons. \fBinfocmp\fR compares the \fBterminfo\fR description of the first
-terminal \fItermname\fR with each of the descriptions given by the entries for
-the other terminal's \fItermname\fR. If a capability is defined for only one of
-the terminals, the value returned will depend on the type of the capability:
-\fBF\fR for boolean variables, \fB\(mi1\fR for integer variables, and
-\fINULL\fR for string variables.
-.sp
-.ne 2
-.na
-\fB\fB-d\fR\fR
-.ad
-.RS 6n
-Produce a list of each capability that is different between two entries. This
-option is useful to show the difference between two entries, created by
-different people, for the same or similar terminals.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-c\fR\fR
-.ad
-.RS 6n
-Produce a list of each capability that is common between two entries.
-Capabilities that are not set are ignored. This option can be used as a quick
-check to see if the \fB-u\fR option is worth using.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR\fR
-.ad
-.RS 6n
-Produce a list of each capability that is in neither entry. If no
-\fItermname\fR is given, the environment variable \fBTERM\fR will be used for
-both of the \fItermname\fRs. This can be used as a quick check to see if
-anything was left out of a description.
-.RE
-
-.sp
-.LP
-The \fB-I\fR \fB,\fR \fB-L\fR \fB,\fR and \fB-C\fR options will produce a
-source listing for each terminal named.
-.sp
-.ne 2
-.na
-\fB\fB-I\fR\fR
-.ad
-.RS 6n
-Use the \fBterminfo\fR names.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-L\fR\fR
-.ad
-.RS 6n
-Use the long C variable name listed in < \fBterm.h\fR >.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-C\fR\fR
-.ad
-.RS 6n
-Use the \fBtermcap\fR names. The source produced by the \fB-C\fR option may be
-used directly as a \fBtermcap\fR entry, but not all of the parameterized
-strings may be changed to the \fBtermcap\fR format. \fBinfocmp\fR will attempt
-to convert most of the parameterized information, but anything not converted
-will be plainly marked in the output and commented out. These should be edited
-by hand.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-r\fR\fR
-.ad
-.RS 6n
-When using \fB-C\fR \fB,\fR put out all capabilities in \fBtermcap\fR form.
-.RE
-
-.sp
-.LP
-If no \fItermname\fR is given, the environment variable \fBTERM\fR will be used
-for the terminal name.
-.sp
-.LP
-All padding information for strings will be collected together and placed at
-the beginning of the string where \fBtermcap\fR expects it. Mandatory padding
-(padding information with a trailing '/') will become optional.
-.sp
-.LP
-All \fBtermcap\fR variables no longer supported by \fBterminfo ,\fR but are
-derivable from other \fBterminfo\fR variables, will be displayed. Not all
-\fBterminfo\fR capabilities will be translated; only those variables which were
-part of \fBtermcap\fR will normally be displayed. Specifying the \fB-r\fR
-option will take off this restriction, allowing all capabilities to be
-displayed in \fBtermcap\fR form.
-.sp
-.LP
-Note that because padding is collected to the beginning of the capability, not
-all capabilities are displayed. Mandatory padding is not supported. Because
-\fBtermcap\fR strings are not as flexible, it is not always possible to convert
-a \fBterminfo\fR string capability into an equivalent \fBtermcap\fR format. A
-subsequent conversion of the \fBtermcap\fR file back into \fBterminfo\fR format
-will not necessarily reproduce the original \fBterminfo\fR source.
-.sp
-.LP
-Some common \fBterminfo\fR parameter sequences, their \fBtermcap\fR
-equivalents, and some terminal types which commonly have such sequences, are:
-.sp
-.in +2
-.nf
-\fBterminfo termcap\fR Representative Terminals
-\fB%p1%c %.\fR adm
-\fB%p1%d %d\fR hp, ANSI standard, vt100
-\fB%p1%'x'%+%c %+x\fR concept
-\fB%i %i\fR ANSI standard, vt100
-\fB%p1%?%'x'%>%t%p1%'y'%+%; %>xy\fR concept
-\fB%p2\fR is printed before \fB%p1 %r\fR hp
-.fi
-.in -2
-.sp
-
-.sp
-.ne 2
-.na
-\fB\fB-u\fR\fR
-.ad
-.RS 6n
-Produce a \fBterminfo\fR source description of the first terminal
-\fItermname\fR which is relative to the sum of the descriptions given by the
-entries for the other terminals' \fItermname\fRs. It does this by analyzing the
-differences between the first \fItermname\fR and the other \fItermnames\fR and
-producing a description with \fBuse=\fR fields for the other terminals. In this
-manner, it is possible to retrofit generic \fBterminfo\fR entries into a
-terminal's description. Or, if two similar terminals exist, but were coded at
-different times, or by different people so that each description is a full
-description, using \fBinfocmp\fR will show what can be done to change one
-description to be relative to the other.
-.RE
-
-.sp
-.LP
-A capability is displayed with an at-sign (@) if it no longer exists in the
-first \fItermname\fR, but one of the other \fItermname\fR entries contains a
-value for it. A capability's value is displayed if the value in the first
-\fItermname\fR is not found in any of the other \fItermname\fR entries, or if
-the first of the other \fItermname\fR entries that has this capability gives a
-different value for that capability.
-.sp
-.LP
-The order of the other \fItermname\fR entries is significant. Since the
-\fBterminfo\fR compiler \fBtic\fR does a left-to-right scan of the
-capabilities, specifying two \fBuse=\fR entries that contain differing entries
-for the same capabilities will produce different results, depending on the
-order in which the entries are given. \fBinfocmp\fR will flag any such
-inconsistencies between the other \fItermname\fR entries as they are found.
-.sp
-.LP
-Alternatively, specifying a capability \fIafter\fR a \fBuse=\fR entry that
-contains, it will cause the second specification to be ignored. Using
-\fBinfocmp\fR to recreate a description can be a useful check to make sure that
-everything was specified correctly in the original source description.
-.sp
-.LP
-Another error that does not cause incorrect compiled files, but will slow down
-the compilation time, is specifying superfluous \fBuse=\fR fields.
-\fBinfocmp\fR will flag any superfluous \fBuse=\fR fields.
-.sp
-.ne 2
-.na
-\fB\fB-s\fR\fR
-.ad
-.RS 11n
-Sorts the fields within each type according to the argument below:
-.sp
-.ne 2
-.na
-\fB\fBd\fR\fR
-.ad
-.RS 5n
-Leave fields in the order that they are stored in the \fBterminfo\fR database.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBi\fR\fR
-.ad
-.RS 5n
-Sort by \fBterminfo\fR name.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBl\fR\fR
-.ad
-.RS 5n
-Sort by the long C variable name.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBc\fR\fR
-.ad
-.RS 5n
-Sort by the \fBtermcap\fR name.
-.RE
-
-If the \fB-s\fR option is not given, the fields are sorted alphabetically by
-the \fBterminfo\fR name within each type, except in the case of the \fB-C\fR or
-the \fB-L\fR options, which cause the sorting to be done by the \fBtermcap\fR
-name or the long C variable name, respectively.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.RS 11n
-Print out tracing information on standard error as the program runs.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-V\fR\fR
-.ad
-.RS 11n
-Print out the version of the program in use on standard error and exit.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\(mi1\fR\fR
-.ad
-.RS 11n
-Print the fields one to a line. Otherwise, the fields are printed several to a
-line to a maximum width of 60 characters.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-w\fR\fIwidth\fR\fR
-.ad
-.RS 11n
-Changes the output to \fIwidth\fR characters.
-.RE
-
-.sp
-.LP
-The location of the compiled \fBterminfo\fR database is taken from the
-environment variable \fB\fR\fBTERM\fR\fBINFO \fR. If the variable is not
-defined, or the terminal is not found in that location, the system
-\fBterminfo\fR database, usually in \fB/usr/share/lib/terminfo\fR, is used. The
-options \fB-A\fR and \fB-B\fR may be used to override this location.
-.sp
-.ne 2
-.na
-\fB\fB-A\fR \fIdirectory\fR\fR
-.ad
-.RS 16n
-Set \fB\fR\fBTERM\fR\fBINFO \fR for the first \fItermname\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-B\fR \fIdirectory\fR\fR
-.ad
-.RS 16n
-Set \fB\fR\fBTERM\fR\fBINFO \fR for the other \fItermname\fRs. With this, it is
-possible to compare descriptions for a terminal with the same name located in
-two different databases. This is useful for comparing descriptions for the same
-terminal created by different people.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/usr/share/lib/terminfo/?/*\fR\fR
-.ad
-.sp .6
-.RS 4n
-Compiled terminal description database.
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBcaptoinfo\fR(1M), \fBtic\fR(1M), \fBcurses\fR(3CURSES), \fBterminfo\fR(4),
-\fBattributes\fR(5)
diff --git a/usr/src/man/man1m/init.1m b/usr/src/man/man1m/init.1m
deleted file mode 100644
index 4c95a9571c..0000000000
--- a/usr/src/man/man1m/init.1m
+++ /dev/null
@@ -1,575 +0,0 @@
-'\" te
-.\" Copyright (C) 2009, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH INIT 1M "Sep 2, 2009"
-.SH NAME
-init, telinit \- process control initialization
-.SH SYNOPSIS
-.LP
-.nf
-\fB/sbin/init\fR [0123456abcQqSs]
-.fi
-
-.LP
-.nf
-\fB/etc/telinit\fR [0123456abcQqSs]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBinit\fR is the default primordial user process. (Options given to the kernel
-during boot may result in the invocation of an alternative primordial user
-process, as described on \fBkernel\fR(1M)). \fBinit\fR initiates the core
-components of the service management facility, \fBsvc.configd\fR(1M) and
-\fBsvc.startd\fR(1M), and restarts these components if they fail. For backwards
-compatibility, \fBinit\fR also starts and restarts general processes according
-to \fB/etc/inittab\fR, as desribed below.
-.sp
-.LP
-The run levels and system booting descriptions given below are provided for
-compatibility purposes only, and otherwise made obsolete by the service
-management facility, \fBsmf\fR(5).
-.SS "init Failure"
-.sp
-.LP
-If \fBinit\fR exits for any reason other than system shutdown, it will be
-restarted with process-\fBID\fR 1.
-.SS "Run Level Defined"
-.sp
-.LP
-At any given time, the system is in one of eight possible run levels. A run
-level is a software configuration under which only a selected group of
-processes exists. Processes spawned by \fBinit\fR for each of these run levels
-are defined in \fB/etc/inittab\fR. \fBinit\fR can be in one of eight run
-levels, \fB0\(mi6\fR and \fBS\fR or \fBs\fR (\fBS\fR and \fBs\fR are
-identical). The run level changes when a privileged user runs \fB/sbin/init\fR.
-.SS "init and System Booting"
-.sp
-.LP
-When the system is booted, \fBinit\fR is invoked and the following occurs.
-First, it reads \fB/etc/default/init\fR to set environment variables. This is
-typically where \fBTZ\fR (time zone) and locale-related environments such as
-\fBLANG\fR or \fBLC_CTYPE\fR get set. (See the FILES section at the end of this
-page.) \fBinit\fR then looks in \fB/etc/inittab\fR for the \fBinitdefault\fR
-entry (see \fBinittab\fR(4)). If the \fBinitdefault\fR entry:
-.sp
-.ne 2
-.na
-\fBexists\fR
-.ad
-.sp .6
-.RS 4n
-\fBinit\fR usually uses the run level specified in that entry as the initial
-run level to enter only if the options/milestone property has not been
-specified for \fBsvc.startd\fR(1M).
-.RE
-
-.sp
-.ne 2
-.na
-\fBdoes not exist\fR
-.ad
-.sp .6
-.RS 4n
-The service management facility, \fBsmf\fR(5), examines its configuration
-specified in \fBsvc.startd\fR(1M), and enters the milestone specified by the
-options/milestone property.
-.RE
-
-.sp
-.LP
-The \fBinitdefault\fR entry in \fB/etc/inittab\fR corresponds to the following
-run levels:
-.sp
-.ne 2
-.na
-\fB\fBS\fR or \fBs\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBinit\fR goes to the single-user state. In this state, the system console
-device (\fB/dev/console\fR) is opened for reading and writing and the command
-\fB/sbin/su\fR, (see \fBsu\fR(1M)), is invoked. Use either \fBinit\fR or
-\fBtelinit\fR to change the run level of the system. Note that if the shell is
-terminated (using an end-of-file), \fBinit\fR only re-initializes to the
-single-user state if \fB/etc/inittab\fR does not exist.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB0-6\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBinit\fR enters the corresponding run level. Run levels \fB0\fR, \fB5\fR, and
-\fB6\fR are reserved states for shutting the system down. Run levels \fB2\fR,
-\fB3\fR, and \fB4\fR are available as multi-user operating states.
-.RE
-
-.sp
-.LP
-If this is the first time since power up that \fBinit\fR has entered a run
-level other than single-user state, \fBinit\fR first scans \fB/etc/inittab\fR
-for \fBboot\fR and \fBbootwait\fR entries (see \fBinittab\fR(4)). These entries
-are performed before any other processing of \fB/etc/inittab\fR takes place,
-providing that the run level entered matches that of the entry. In this way any
-special initialization of the operating system, such as mounting file systems,
-can take place before users are allowed onto the system. \fBinit\fR then scans
-\fB/etc/inittab\fR and executes all other entries that are to be processed for
-that run level.
-.sp
-.LP
-To spawn each process in \fB/etc/inittab\fR, \fBinit\fR reads each entry and
-for each entry that should be respawned, it forks a child process. After it has
-spawned all of the processes specified by \fB/etc/inittab\fR, \fBinit\fR waits
-for one of its descendant processes to die, a \fBpowerfail\fR signal, or a
-signal from another \fBinit\fR or \fBtelinit\fR process to change the system's
-run level. When one of these conditions occurs, \fBinit\fR re-examines
-\fB/etc/inittab\fR.
-.SS "inittab Additions"
-.sp
-.LP
-New entries can be added to \fB/etc/inittab\fR at any time; however, \fBinit\fR
-still waits for one of the above three conditions to occur before re-examining
-\fB/etc/inittab\fR. To get around this, \fBinit Q\fR or \fBinit q\fR command
-wakes \fBinit\fR to re-examine \fB/etc/inittab\fR immediately.
-.sp
-.LP
-When \fBinit\fR comes up at boot time and whenever the system changes from the
-single-user state to another run state, \fBinit\fR sets the \fBioctl\fR(2)
-states of the console to those modes saved in the file \fB/etc/ioctl.syscon\fR.
-\fBinit\fR writes this file whenever the single-user state is entered.
-.SS "Run Level Changes"
-.sp
-.LP
-When a run level change request is made, \fBinit\fR or a designate sends the
-warning signal (\fBSIGTERM\fR) to all processes that are undefined in the
-target run level. A minimum interval of five seconds is observed before
-\fBinit\fR or its designate forcibly terminates these processes by sending a
-kill signal (\fBSIGKILL\fR). Additionally, init informs \fBsvc.startd\fR(1M)
-that the run level is changing. \fBsvc.startd\fR(1M) then restricts the system
-to the set of services which the milestone corresponding to the run-level
-change depends on.
-.sp
-.LP
-When \fBinit\fR receives a signal telling it that a process it spawned has
-died, it records the fact and the reason it died in \fB/var/adm/utmpx\fR and
-\fB/var/adm/wtmpx\fR if it exists (see \fBwho\fR(1)). A history of the
-processes spawned is kept in \fB/var/adm/wtmpx.\fR
-.sp
-.LP
-If \fBinit\fR receives a \fBpowerfail\fR signal (\fBSIGPWR\fR) it scans
-\fB/etc/inittab\fR for special entries of the type \fBpowerfail\fR and
-\fBpowerwait\fR. These entries are invoked (if the run levels permit) before
-any further processing takes place. In this way \fBinit\fR can perform various
-cleanup and recording functions during the powerdown of the operating system.
-.SS "Environment Variables in /etc/default/init"
-.sp
-.LP
-You can set default values for environment variables, for such items as
-timezone and character formatting, in \fB/etc/default/init\fR. See the FILES
-section, below, for a list of these variables.
-.SS "telinit"
-.sp
-.LP
-\fBtelinit\fR, which is linked to \fB/sbin/init\fR, is used to direct the
-actions of \fBinit\fR. It takes a one-character argument and signals \fBinit\fR
-to take the appropriate action.
-.SH SECURITY
-.sp
-.LP
-\fBinit\fR uses \fBpam\fR(3PAM) for session management. The \fBPAM\fR
-configuration policy, listed through \fB/etc/pam.conf\fR, specifies the session
-management module to be used for \fBinit\fR. Here is a partial \fBpam.conf\fR
-file with entries for \fBinit\fR using the UNIX session management module.
-.sp
-.in +2
-.nf
-init session required pam_unix_session.so.1
-.fi
-.in -2
-
-.sp
-.LP
-If there are no entries for the \fBinit\fR service, then the entries for the
-"other" service will be used.
-.SH OPTIONS
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.sp .6
-.RS 4n
-Go into firmware.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB1\fR\fR
-.ad
-.sp .6
-.RS 4n
-Put the system in system administrator mode. All local file systems are
-mounted. Only a small set of essential kernel processes are left running. This
-mode is for administrative tasks such as installing optional utility packages.
-All files are accessible and no users are logged in on the system.
-.sp
-This request corresponds to a request for \fBsmf\fR(5) to restrict the system
-milestone to svc:/milestone/single-user:default.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB2\fR\fR
-.ad
-.sp .6
-.RS 4n
-Put the system in multi-user mode. All multi-user environment terminal
-processes and daemons are spawned. This state is commonly referred to as the
-multi-user state.
-.sp
-This request corresponds to a request for \fBsmf\fR(5) to restrict the system
-milestone to svc:/milestone/multi-user:default.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB3\fR\fR
-.ad
-.sp .6
-.RS 4n
-Extend multi-user mode by making local resources available over the network.
-.sp
-This request corresponds to a request for \fBsmf\fR(5) to restrict the system
-milestone to svc:/milestone/multi-user-server:default.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB4\fR\fR
-.ad
-.sp .6
-.RS 4n
-Is available to be defined as an alternative multi-user environment
-configuration. It is not necessary for system operation and is usually not
-used.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB5\fR\fR
-.ad
-.sp .6
-.RS 4n
-Shut the machine down so that it is safe to remove the power. Have the machine
-remove power, if possible.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB6\fR\fR
-.ad
-.sp .6
-.RS 4n
-Stop the operating system and reboot to the state defined by the
-\fBinitdefault\fR entry in \fB/etc/inittab\fR.
-.sp
-On x86 systems, service \fBsvc:/system/boot-config:default\fR is enabled by
-default. When the \fBconfig/fastreboot_default\fR property is set to
-\fBtrue\fR, \fBinit 6\fR will bypass the firmware.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBa\fR,\fBb\fR,\fBc\fR\fR
-.ad
-.sp .6
-.RS 4n
-Process only those \fB/etc/inittab\fR entries having the \fBa\fR, \fBb\fR, or
-\fBc\fR run level set. These are pseudo-states, which may be defined to run
-certain commands, but which do not cause the current run level to change.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBQ\fR,\fBq\fR\fR
-.ad
-.sp .6
-.RS 4n
-Re-examine \fB/etc/inittab\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBS\fR, \fBs\fR\fR
-.ad
-.sp .6
-.RS 4n
-Enter single-user mode. This is the only run level that doesn't require the
-existence of a properly formatted \fB/etc/inittab\fR file. If this file does
-not exist, then by default, the only legal run level that \fBinit\fR can enter
-is the single-user mode. When in single-user mode, the filesystems required for
-basic system operation will be mounted. When the system comes down to
-single-user mode, these file systems will remain mounted (even if provided by a
-remote file server), and any other local filesystems will also be left mounted.
-During the transition down to single-user mode, all processes started by
-\fBinit\fR or \fBinit.d\fR scripts that should only be running in multi-user
-mode are killed. In addition, any process that has a \fButmpx\fR entry will be
-killed. This last condition insures that all port monitors started by the
-\fBSAC\fR are killed and all services started by these port monitors, including
-\fBttymon\fR login services, are killed.
-.sp
-This request corresponds to a request for \fBsmf\fR(5) to restrict the system
-milestone to svc:/milestone/single-user:default.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/dev/console\fR\fR
-.ad
-.sp .6
-.RS 4n
-System console device.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/default/init\fR\fR
-.ad
-.sp .6
-.RS 4n
-Contains environment variables and their default values. For example, for the
-timezone variable, \fBTZ\fR, you might specify \fBTZ=US/Pacific\fR. The
-variables are:
-.sp
-.ne 2
-.na
-\fB\fBTZ\fR\fR
-.ad
-.sp .6
-.RS 4n
-Either specifies the timezone information (see \fBctime\fR(3C)) or the name of
-a timezone information file \fB/usr/share/lib/zoneinfo\fR.
-.sp
-Refer to the \fBTIMEZONE\fR(4) man page before changing this setting.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBCMASK\fR\fR
-.ad
-.sp .6
-.RS 4n
-The mask (see \fBumask\fR(1)) that \fBinit\fR uses and that every process
-inherits from the \fBinit\fR process. If not set, \fBinit\fR uses the mask it
-inherits from the kernel. Note that \fBinit\fR always attempts to apply a
-\fBumask\fR of 022 before creating a file, regardless of the setting of
-\fBCMASK\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBLC_CTYPE\fR\fR
-.ad
-.sp .6
-.RS 4n
-Character characterization information
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBLC_MESSAGES\fR\fR
-.ad
-.sp .6
-.RS 4n
-Message translation
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBLC_MONETARY\fR\fR
-.ad
-.sp .6
-.RS 4n
-Monetary formatting information
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBLC_NUMERIC\fR\fR
-.ad
-.sp .6
-.RS 4n
-Numeric formatting information
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBLC_TIME\fR\fR
-.ad
-.sp .6
-.RS 4n
-Time formatting information
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBLC_ALL\fR\fR
-.ad
-.sp .6
-.RS 4n
-If set, all other \fBLC_*\fR environmental variables take-on this value.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBLANG\fR\fR
-.ad
-.sp .6
-.RS 4n
-If \fBLC_ALL\fR is not set, and any particular \fBLC_*\fR is also not set, the
-value of \fBLANG\fR is used for that particular environmental variable.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/inittab\fR\fR
-.ad
-.sp .6
-.RS 4n
-Controls process dispatching by \fBinit\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/ioctl.syscon\fR\fR
-.ad
-.sp .6
-.RS 4n
-ioctl states of the console, as saved by \fBinit\fR when single-user state is
-entered.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/svc/volatile/init.state\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBinit\fR state necessary to recover from failure.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/adm/utmpx\fR\fR
-.ad
-.sp .6
-.RS 4n
-User access and administration information.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/adm/wtmpx\fR\fR
-.ad
-.sp .6
-.RS 4n
-History of user access and administration information.
-.RE
-
-.sp
-.ne 2
-.na
-\fB/var/run/initpipe\fR
-.ad
-.sp .6
-.RS 4n
-A named pipe used for internal communication.
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBlogin\fR(1), \fBsh\fR(1), \fBstty\fR(1), \fBwho\fR(1), \fBkernel\fR(1M),
-\fBshutdown\fR(1M), \fBsu\fR(1M), \fBsvc.configd\fR(1M), \fBsvc.startd\fR(1M),
-\fBttymon\fR(1M), \fBioctl\fR(2), \fBkill\fR(2), \fBctime\fR(3C),
-\fBpam\fR(3PAM), \fBinit.d\fR(4), \fBinittab\fR(4), \fBpam.conf\fR(4),
-\fBTIMEZONE\fR(4), \fButmpx\fR(4), \fBattributes\fR(5),
-\fBpam_unix_session\fR(5), \fBsmf\fR(5), \fBtermio\fR(7I)
-.SH DIAGNOSTICS
-.sp
-.LP
-If \fBinit\fR finds that it is respawning an entry from \fB/etc/inittab\fR more
-than ten times in two minutes, it assumes that there is an error in the command
-string in the entry and generates an error message on the system console. It
-then refuses to respawn this entry until either five minutes has elapsed or it
-receives a signal from a user-spawned \fBinit\fR or \fBtelinit\fR command. This
-prevents \fBinit\fR from eating up system resources when someone makes a
-typographical error in the \fBinittab\fR file, or a program is removed that is
-referenced in \fB/etc/inittab\fR.
-.SH NOTES
-.sp
-.LP
-\fBinit\fR and \fBtelinit\fR can be run only by a privileged user.
-.sp
-.LP
-The \fBS\fR or \fBs\fR state must not be used indiscriminately in
-\fB/etc/inittab\fR. When modifying this file, it is best to avoid adding this
-state to any line other than \fBinitdefault\fR.
-.sp
-.LP
-If a default state is not specified in the \fBinitdefault\fR entry in
-\fB/etc/inittab\fR, state \fB6\fR is entered. Consequently, the system will
-loop by going to firmware and rebooting continuously.
-.sp
-.LP
-If the \fButmpx\fR file cannot be created when booting the system, the system
-will boot to state "\fBs\fR" regardless of the state specified in the
-\fBinitdefault\fR entry in \fB/etc/inittab\fR. This can occur if the \fB/var\fR
-file system is not accessible.
-.sp
-.LP
-When a system transitions down to the \fBS\fR or \fBs\fR state, the
-\fB/etc/nologin\fR file (see \fBnologin\fR(4)) is created. Upon subsequent
-transition to run level 2, this file is removed.
-.sp
-.LP
-\fBinit\fR uses \fB/var/run/initpipe\fR, a named pipe, for internal
-communication.
-.sp
-.LP
-The \fBpam_unix\fR(5) module is no longer supported. Similar functionality is
-provided by \fBpam_unix_session\fR(5).
diff --git a/usr/src/man/man1m/inityp2l.1m b/usr/src/man/man1m/inityp2l.1m
deleted file mode 100644
index c2ccd49379..0000000000
--- a/usr/src/man/man1m/inityp2l.1m
+++ /dev/null
@@ -1,130 +0,0 @@
-'\" te
-.\" Copyright (C) 2003, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH INITYP2L 1M "Apr 10, 2003"
-.SH NAME
-inityp2l \- create NIS (YP) to LDAP configuration files
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/netsvc/yp/inityp2l\fR [\fB-m\fR \fImapping_file_name\fR]
- [\fB-c\fR \fIconfig_file_name\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBinityp2l\fR utility assists with creation of the \fBNISLDAPmapping\fR
-and \fBypserv\fR files. See \fBNISLDAPmapping\fR(4) and \fBypserv\fR(4).
-\fBinityp2l\fR examines the NIS maps on a system. and through a dialogue with
-the user, determines which NIS to (and from) LDAP mappings are required. A
-\fBNISLDAPmapping\fR file is then created based on this information. The
-utility asks users about their LDAP server configuration and a \fBypserv\fR
-file is created based on this information.
-.sp
-.LP
-The \fBinityp2l\fR utility handles mappings for standard NIS maps and the
-\fBauto.*\fR series of maps. If requested, it creates default mappings for
-custom maps, with each map entry represented as a single DIT string.
-\fBinityp2l\fR does not handle full custom mapping, but if requested,
-\fBinityp2l\fR will insert comments into the \fBNISLDAPmapping\fR file that
-indicate where these should be added.
-.sp
-.LP
-To write to the \fBNISLDAPmapping\fR or \fBypserv\fR files is potentially
-dangerous. \fBinityp2l\fR warns the user and asks for confirmation before:
-.RS +4
-.TP
-1.
-it overwrites either file
-.RE
-.RS +4
-.TP
-2.
-it writes to the default \fBNISLDAPmapping\fR file location, if this file
-did not previously exist. This is important because the existence of a file in
-this location causes NIS components to work NIS to LDAP (N2L) mode when next
-restarted, rather than to traditional NIS mode.
-.RE
-.sp
-.LP
-\fBinityp2l\fR assists with rapid creation of a simple N2L configuration files.
-It is not a general purpose tool for the management of these files. An
-advanced user who would like to maintain the files or use custom mappings
-should examine the output of \fBinityp2l\fR and customize it by using a
-standard text editor.
-.SH OPTIONS
-.sp
-.LP
-\fBinityp2l\fR supports the following options:
-.sp
-.ne 2
-.na
-\fB\fB-c\fR\fR
-.ad
-.RS 6n
-Specify the name of the generated \fBypserv\fR file. The default location is
-described in .
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-m\fR\fR
-.ad
-.RS 6n
-Specify the name of the generated \fBNISLDAPmapping\fR file. The default is
-described in .
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/var/yp\fR \fR
-.ad
-.RS 26n
-The directory to be searched for candidate domains (\fB/var/yp/*\fR) and NIS
-maps (\fB/var/yp/*/*\fR)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/yp/NISLDAPmapping\fR\fR
-.ad
-.RS 26n
-The default location for the generated \fBNISLDAPmapping\fR file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/default/ypserv\fR\fR
-.ad
-.RS 26n
-The default location for the generated \fBypserv\fR file
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Obsolete
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBNISLDAPmapping\fR(4), \fBypserv\fR(4), \fBattributes\fR(5)
diff --git a/usr/src/man/man1m/install.1m b/usr/src/man/man1m/install.1m
deleted file mode 100644
index f7494d2ada..0000000000
--- a/usr/src/man/man1m/install.1m
+++ /dev/null
@@ -1,223 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH INSTALL 1M "Nov 3, 2005"
-.SH NAME
-install \- install commands
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/install\fR \fB-c\fR \fIdira\fR [\fB-m\fR \fImode\fR] [\fB-u\fR \fIuser\fR] [\fB-g\fR \fIgroup\fR]
- [\fB-o\fR] [\fB-s\fR] \fIfile\fR
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/install\fR \fB-f\fR \fIdirb\fR [\fB-m\fR \fImode\fR] [\fB-u\fR \fIuser\fR] [\fB-g\fR \fIgroup\fR]
- [\fB-o\fR] [\fB-s\fR] \fIfile\fR
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/install\fR \fB-n\fR \fIdirc\fR [\fB-m\fR \fImode\fR] [\fB-u\fR \fIuser\fR] [\fB-g\fR \fIgroup\fR]
- [\fB-o\fR] [\fB-s\fR] \fIfile\fR
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/install\fR \fB-d\fR | \fB-i\fR [\fB-m\fR \fImode\fR] [\fB-u\fR \fIuser\fR] [\fB-g\fR \fIgroup\fR]
- [\fB-o\fR] [\fB-s\fR] \fIdirx\fR...
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/install\fR [\fB-m\fR \fImode\fR] [\fB-u\fR \fIuser\fR] [\fB-g\fR \fIgroup\fR] [\fB-o\fR] [\fB-s\fR] \fIfile\fR
- [\fIdirx\fR]...
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBinstall\fR is most commonly used in ``makefiles'' (see \fBmake\fR(1S)) to
-install a \fBfile\fR in specific locations, or to create directories within a
-file system. Each \fBfile\fR is installed by copying it into the appropriate
-directory.
-.sp
-.LP
-\fBinstall\fR uses no special privileges to copy files from one place to
-another. The implications of this are:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-You must have permission to read the files to be installed.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-You must have permission to copy into the destination directory.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-You must have permission to change the modes on the final copy of the file if
-you want to use the \fB-m\fR option.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-You must be super-user if you want to specify the ownership of the installed
-file with the \fB-u\fR or \fB-g\fR options. If you are not the super-user, the
-installed file is owned by you, regardless of who owns the original.
-.RE
-.sp
-.LP
-Note that if the \fBROOT\fR environment variable is set, each of the default
-directory paths are prefixed by its value (for example, \fB$ROOT/bin\fR and so
-on).
-.sp
-.LP
-\fBinstall\fR prints messages telling the user exactly what files it is
-replacing or creating and where they are going.
-.sp
-.LP
-If no options or directories (\fIdirx\fR .\|.\|.) are given, \fBinstall\fR
-searches a set of default directories ( \fB/bin\fR, \fB/usr/bin\fR, \fB/etc\fR,
-\fB/lib\fR, and \fB/usr/lib\fR, in that order) for a file with the same name as
-\fBfile\fR. When the first occurrence is found, \fBinstall\fR issues a message
-saying that it is overwriting that file with \fBfile\fR, and proceeds to do so.
-If the file is not found, the program states this and exits.
-.sp
-.LP
-If one or more directories (\fIdirx\fR .\|.\|.) are specified after \fBfile\fR,
-those directories are searched before the default directories.
-.sp
-.LP
-This version of \fBinstall\fR (\fB/usr/sbin/install\fR) is not compatible with
-the \fBinstall\fR binaries in many versions of Unix other than Solaris. For a
-higher degree of compatibility with other Unix versions, use
-\fB/usr/ucb/install\fR, which is described in the \fBinstall\fR(1B) man page.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-c\fR \fIdira\fR\fR
-.ad
-.RS 12n
-Install \fBfile\fR in the directory specified by \fIdira\fR, if \fBfile\fR does
-not yet exist. If it is found, \fBinstall\fR issues a message saying that the
-file already exists, and exits without overwriting it.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR \fIdirb\fR\fR
-.ad
-.RS 12n
-Force \fBfile\fR to be installed in given directory, even if the file already
-exists. If the file being installed does not already exist, the mode and owner
-of the new file is set to \fB755\fR and \fBbin\fR \fB,\fR respectively. If the
-file already exists, the mode and owner is that of the already existing file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR \fIdirc\fR\fR
-.ad
-.RS 12n
-If \fBfile\fR is not found in any of the searched directories, it is put in the
-directory specified in \fIdirc\fR. The mode and owner of the new file is set to
-\fB755\fR and \fBbin\fR, respectively.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-d\fR\fR
-.ad
-.RS 12n
-Create a directory. Missing parent directories are created as required as in
-\fBmkdir \fR\fB-p\fR. If the directory already exists, the owner, group and
-mode is set to the values given on the command line.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-i\fR\fR
-.ad
-.RS 12n
-Ignore default directory list, searching only through the given directories
-(\fIdirx\fR .\|.\|.).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-m\fR \fImode\fR\fR
-.ad
-.RS 12n
-The mode of the new file is set to \fImode\fR. Set to \fB0755\fR by default.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-u\fR \fIuser\fR\fR
-.ad
-.RS 12n
-The owner of the new file is set to \fIuser\fR. Only available to the
-super-user. Set to \fBbin\fR by default.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-g\fR \fIgroup\fR\fR
-.ad
-.RS 12n
-The group id of the new file is set to \fIgroup\fR. Only available to the
-super-user. Set to \fBbin\fR by default.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-o\fR\fR
-.ad
-.RS 12n
-If \fBfile\fR is found, save the ``found'' file by copying it to
-\fBOLD\fR\fBfile\fR in the directory in which it was found. This option is
-useful when installing a frequently used file such as \fB/bin/sh\fR or
-\fB/lib/saf/ttymon\fR, where the existing file cannot be removed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR\fR
-.ad
-.RS 12n
-Suppress printing of messages other than error messages.
-.RE
-
-.SH USAGE
-.sp
-.LP
-See \fBlargefile\fR(5) for the description of the behavior of \fBinstall\fR
-when encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
-.SH SEE ALSO
-.sp
-.LP
-\fBchgrp\fR(1), \fBchmod\fR(1), \fBchown\fR(1), \fBcp\fR(1), \fBinstall\fR(1B),
-\fBmake\fR(1S), \fBmkdir\fR(1), \fBattributes\fR(5), \fBlargefile\fR(5)
diff --git a/usr/src/man/man1m/installboot.1m b/usr/src/man/man1m/installboot.1m
deleted file mode 100644
index b575355ed4..0000000000
--- a/usr/src/man/man1m/installboot.1m
+++ /dev/null
@@ -1,246 +0,0 @@
-.\"
-.\" This file and its contents are supplied under the terms of the
-.\" Common Development and Distribution License ("CDDL"), version 1.0.
-.\" You may only use this file in accordance with the terms of version
-.\" 1.0 of the CDDL.
-.\"
-.\" A full copy of the text of the CDDL should have accompanied this
-.\" source. A copy of the CDDL is also available via the Internet at
-.\" http://www.illumos.org/license/CDDL.
-.\"
-.\"
-.\" Copyright 2021 Toomas Soome <tsoome@me.com>
-.\"
-.Dd Oct 16, 2021
-.Dt INSTALLBOOT 1M
-.Os
-.Sh NAME
-.Nm installboot
-.Nd install bootloader in a disk partition
-.Sh SYNOPSIS
-.Ss SPARC
-.Nm
-.Op Fl fn
-.Op Fl F Sy zfs Ns | Ns Sy ufs Ns | Ns Sy hsfs
-.Op Fl u Ar verstr
-.Ar bootblk raw-device
-.Nm
-.Op Fl enV
-.Fl F Sy zfs
-.Fl i
-.Ar raw-device | Ar file
-.Nm
-.Op Fl n
-.Fl F Sy zfs
-.Fl M
-.Ar raw-device attach-raw-device
-.Ss x86
-.Nm
-.Op Fl fFmn
-.Op Fl b Ar boot_dir
-.Op Fl u Ar verstr
-.Op Ar stage1 stage2
-raw-device
-.Nm
-.Op Fl enV
-.Fl i
-.Ar raw-device | Ar file
-.Nm
-.Op Fl n
-.Fl M
-.Ar raw-device attach-raw-device
-.Sh DESCRIPTION
-The
-.Xr boot 1M
-boot program is loaded from disk and is responsible of loading kernel and its
-support files from specific file system.
-.Pp
-The SPARC systems have one boot loader program file to be installed on the boot
-area of a disk slice.
-As the SPARC zfs boot loader is too large to fit into boot area at the start of
-the disk slice,
-.Nm
-command will split the zfs boot loader between disk slice boot area, and zfs
-pool boot area.
-.Pp
-The x86 BIOS systems have boot loader implemented as three stages:
-.Bl -tag -width Ds
-.It Sy stage1
-.Pa /boot/pmbr
-is used as master boot record
-.Pq MBR
-and partition boot program.
-.It Sy stage2
-.Pa /boot/gptzfsboot
-is responsible for loading files from file system.
-The
-.Sy stage2
-on x86 systems is always installed to zfs pool boot area, and therefore only zfs
-boot is supported.
-.Nm
-command will record the location of
-.Sy stage2
-to
-.Sy stage1 ,
-which is always installed at least on partition
-.Pq MBR or GPT
-boot area, making it possible to boot via chainload from other boot loaders.
-.Pp
-When
-.Nm
-command is used with the
-.Fl m
-option,
-.Nm
-installs the stage1 file on the master boot sector of the disk as well.
-.It Sy stage3
-.Pa /boot/loader
-is read from file system and executed by
-.Sy stage2
-and will provide boot loader user environment and is responsible of loading
-and starting the operating system kernel.
-.Pp
-In case of GPT partitioning scheme, if the file system to boot from is either
-UFS or PCFS, there must be
-.Sy boot
-partition defined to store stage2 boot program.
-This is needed because UFS and PCFS do not have sufficient space reserved to
-store boot programs.
-.Pp
-The boot partition must use following GPT UUID:
-.Bd -literal -offset indent
-6a82cb45-1dd2-11b2-99a6-080020736631
-.Ed
-.Pp
-which is provided by
-.Qq boot
-tag in
-.Xr format 1M
-partition menu.
-.El
-.Pp
-The x86 UEFI systems load and start boot loader program from
-.Sy /EFI/Boot
-directory of the EFI System Partition (ESP).
-The boot loader program in ESP is named
-.Sy bootx64.efi
-for AMD64 system and
-.Sy bootia32.efi
-for i386 system.
-Note, only a 64-bit kernel is supported, even on i386 systems.
-The
-.Sy bootia32.efi
-boot program is only provided to support systems with 32-bit UEFI firmware,
-but which can support 64-bit mode.
-.Pp
-The
-.Sy bootx64.efi
-is copied from
-.Sy /boot/loader64.efi
-and
-.Sy bootia32.efi
-is copied from
-.Sy /boot/loader32.efi .
-.Ss Options
-The
-.Nm
-command accepts the following options:
-.Bl -tag -width Ds
-.It Fl b Ar boot_dir
-Provide path to the directory, where loader boot programs are located.
-.Nm
-will automatically pick the needed programs and will install to the
-specified disk device.
-.It Fl h
-Prints short usage message.
-.It Fl m
-Installs
-.Sy stage1
-on the master boot sector interactively.
-You must use this option if OS is installed on an extended FDISK or an EFI/GPT
-partition.
-.It Fl f
-Suppresses interaction when overwriting the master boot sector on x86.
-Force update on SPARC.
-.It Fl n
-Dry run session.
-Will not write to disk.
-.It Fl F
-On SPARC, specify file system type.
-On x86, inhibit version check and enforce boot loader update.
-.It Fl u Ar verstr
-Specify custom version string.
-Can be used to add version on non-versioned boot loader or change built in
-version string.
-.It Fl i
-Print version string from installed boot loader or from indicated file.
-.It Fl e
-Print version string from installed boot loader without description.
-.It Fl V
-Print version string from installed boot loader with full description.
-.It Fl M
-Mirror boot loader from installed disk partition.
-.El
-.Ss Operands
-The
-.Nm
-command accepts the following operands:
-.Bl -tag -width Ds
-.It Ar bootblk
-The name of the SPARC boot loader code.
-.It Ar stage1
-The name of the loader stage 1 file.
-.It Ar stage2
-The name of the loader stage 2 file.
-.It Ar raw-device
-The name of the device onto which bootloader code is to be installed.
-It must be a character device that is readable and writable and part of boot
-pool.
-.El
-.Sh FILES
-.Bl -tag -width Ds
-.It Pa /boot
-Directory where x86 loader files reside.
-.It Pa /usr/platform/platform name/lib/fs
-Directory where SPARC boot loader files reside.
-.El
-.Sh EXAMPLES
-.Bl -tag -width Ds
-.It Sy Example 1 No Installing zfs boot loader on SPARC disk slice
-The following command installs zfs boot loader on SPARC system:
-.Bd -literal
-# installboot -F zfs /usr/platform/`uname -i`/lib/fs/zfs/bootblk \e
- /dev/rdsk/c0t0d0s0
-.Ed
-.It Sy Example 2 No Installing boot loader on x86 system
-The following command installs loader stage files and master boot record:
-.Bd -literal
-# installboot -m /boot/pmbr /boot/gptzfsboot /dev/rdsk/c0t0d0s0
-.Ed
-.El
-.Sh INTERFACE STABILITY
-.Sy Uncommitted
-.Sh SEE ALSO
-.Xr boot 1M ,
-.Xr bootadm 1M ,
-.Xr fdisk 1M ,
-.Xr fmthard 1M ,
-.Xr format 1M ,
-.Xr kernel 1M ,
-.Xr attributes 5
-.Sh WARNINGS
-Installing
-.Sy stage1
-on the master boot sector
-.Po
-.Fl m
-option
-.Pc
-overrides any boot loader currently installed on the machine.
-The system will always boot the current OS partition regardless of which fdisk
-partition is active.
-.Pp
-If version string indicates the source boot loader might be more recent,
-.Nm
-will also verify md5 checksums to determine if update is really necessary.
-If checksums match, the install will not be performed.
diff --git a/usr/src/man/man1m/installf.1m b/usr/src/man/man1m/installf.1m
deleted file mode 100644
index 5adc8fed43..0000000000
--- a/usr/src/man/man1m/installf.1m
+++ /dev/null
@@ -1,439 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH INSTALLF 1M "Oct 30, 2007"
-.SH NAME
-installf \- add a file to the software installation database
-.SH SYNOPSIS
-.LP
-.nf
-\fBinstallf\fR [\fB-c\fR \fIclass\fR] [ [\fB-M\fR] \fB-R\fR \fIroot_path\fR] [\fB-V\fR \fIfs_file\fR] \fIpkginst\fR \fIpathname\fR
- [\fIftype\fR [\fImajor\fR \fIminor\fR] [\fImode\fR \fIowner\fR \fIgroup\fR]]
-.fi
-
-.LP
-.nf
-\fBinstallf\fR [\fB-c\fR \fIclass\fR] [ [\fB-M\fR] \fB-R\fR \fIroot_path\fR] [\fB-V\fR \fIfs_file\fR] \fIpkginst\fR -
-.fi
-
-.LP
-.nf
-\fBinstallf\fR \fB-f\fR [\fB-c\fR \fIclass\fR] [ [\fB-M\fR] \fB-R\fR \fIroot_path\fR] [\fB-V\fR \fIfs_file\fR] \fIpkginst\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBinstallf\fR informs the system that a pathname not listed in the
-\fBpkgmap\fR(4) file is being created or modified. It should be invoked before
-any file modifications have occurred.
-.sp
-.LP
-When the second synopsis is used, the pathname descriptions will be read from
-standard input. These descriptions are the same as would be given in the first
-synopsis but the information is given in the form of a list. The descriptions
-should be in the form:
-.sp
-.LP
-\fIpathname\fR [ \fIftype\fR [\| \fImajor\fR \fIminor\fR ] [ \fImode\fR
-\fIowner\fR \fIgroup\fR ]\|]
-.sp
-.LP
-After all files have been appropriately created and/or modified, \fBinstallf\fR
-should be invoked with the \fB-f\fR synopsis to indicate that installation is
-final. Links will be created at this time and, if attribute information for a
-pathname was not specified during the original invocation of \fBinstallf\fR, or
-was not already stored on the system, the current attribute values for the
-pathname will be stored. Otherwise, \fBinstallf\fR verifies that attribute
-values match those given on the command line, making corrections as necessary.
-In all cases, the current content information is calculated and stored
-appropriately.
-.sp
-.LP
-Package commands are \fBlargefile\fR(5)-aware. They handle files larger than 2
-GB in the same way they handle smaller files. In their current implementations,
-\fBpkgadd\fR(1M), \fBpkgtrans\fR(1) and other package commands can process a
-datastream of up to 4 GB.
-.SH OPTIONS
-.sp
-.ne 2
-.na
-\fB\fB-c\fR \fIclass\fR\fR
-.ad
-.RS 16n
-Class to which installed objects should be associated. Default class is
-\fBnone\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR\fR
-.ad
-.RS 16n
-Indicates that installation is complete. This option is used with the final
-invocation of \fBinstallf\fR (for all files of a given class).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-M\fR\fR
-.ad
-.RS 16n
-Instruct \fBinstallf\fR not to use the \fB$\fR\fIroot_path\fR\fB/etc/vfstab\fR
-file for determining the client's mount points. This option assumes the mount
-points are correct on the server and it behaves consistently with Solaris 2.5
-and earlier releases.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\fR\fB-R\fR \fIroot_path\fR\fR
-.ad
-.RS 16n
-Define the full path name of a directory to use as the \fIroot_path\fR. All
-files, including package system information files, are relocated to a directory
-tree starting in the specified \fIroot_path\fR. The \fIroot_path\fR can be
-specified when installing to a client from a server (for example,
-\fB/export/root/client1\fR).
-.sp
-\fBinstallf\fR inherits the value of the \fBPKG_INSTALL_ROOT\fR environment
-variable. (See ENVIRONMENT VARIABLES, below.) If \fBPKG_INSTALL_ROOT\fR is set,
-such as when the \fB-R\fR option is used with \fBpkgadd\fR(1M) or
-\fBpkgrm\fR(1M), there is no need to use the \fBinstallf\fR \fB-R\fR option.
-.LP
-Note -
-.sp
-.RS 2
-The root file system of any non-global zones must not be referenced with the
-\fB-R\fR option. Doing so might damage the global zone's file system, might
-compromise the security of the global zone, and might damage the non-global
-zone's file system. See \fBzones\fR(5).
-.RE
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-V\fR \fIfs_file\fR\fR
-.ad
-.RS 16n
-Specify an alternative \fIfs_file\fR to map the client's file systems. For
-example, used in situations where the \fB$\fR\fIroot_path\fR\fB/etc/vfstab\fR
-file is non-existent or unreliable.
-.RE
-
-.SH OPERANDS
-.sp
-.ne 2
-.na
-\fB\fIpkginst\fR\fR
-.ad
-.RS 12n
-Name of package instance with which the pathname should be associated.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIpathname\fR\fR
-.ad
-.RS 12n
-Pathname that is being created or modified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIftype\fR\fR
-.ad
-.RS 12n
-A one-character field that indicates the file type. Possible file types
-include:
-.sp
-.ne 2
-.na
-\fB\fBb\fR\fR
-.ad
-.RS 5n
-block special device
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBc\fR\fR
-.ad
-.RS 5n
-character special device
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBd\fR\fR
-.ad
-.RS 5n
-directory
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBe\fR\fR
-.ad
-.RS 5n
-a file to be edited upon installation or removal
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBf\fR\fR
-.ad
-.RS 5n
-a standard executable or data file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBl\fR\fR
-.ad
-.RS 5n
-linked file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBp\fR\fR
-.ad
-.RS 5n
-named pipe
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBs\fR\fR
-.ad
-.RS 5n
-symbolic link
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBv\fR\fR
-.ad
-.RS 5n
-volatile file (one whose contents are expected to change)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBx\fR\fR
-.ad
-.RS 5n
-an exclusive directory
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fImajor\fR\fR
-.ad
-.RS 12n
-The major device number. The field is only specified for block or character
-special devices.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIminor\fR\fR
-.ad
-.RS 12n
-The minor device number. The field is only specified for block or character
-special devices.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fImode\fR\fR
-.ad
-.RS 12n
-The octal mode of the file (for example, 0664). A question mark (\fB?\fR)
-indicates that the mode will be left unchanged, implying that the file already
-exists on the target machine. This field is not used for linked or symbolically
-linked files.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIowner\fR\fR
-.ad
-.RS 12n
-The owner of the file (for example, \fBbin\fR or \fBroot\fR). The field is
-limited to 14 characters in length. A question mark (\fB?\fR) indicates that
-the owner will be left unchanged, implying that the file already exists on the
-target machine. This field is not used for linked or symbolically linked files.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIgroup\fR\fR
-.ad
-.RS 12n
-The group to which the file belongs (for example, \fBbin\fR or \fBsys\fR). The
-field is limited to 14 characters in length. A question mark (\fB?\fR)
-indicates that the group will be left unchanged, implying that the file already
-exists on the target machine. This field is not used for linked or symbolically
-linked files.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRBasic Usage
-.sp
-.LP
-The following example shows the use of \fBinstallf\fR, invoked from an optional
-pre-install or post-install script:
-
-.sp
-.in +2
-.nf
-# create /dev/xt directory
-# (needs to be done before drvinstall)
-installf $PKGINST /dev/xt d 755 root sys ||
- exit 2
-majno=`/usr/sbin/drvinstall \fB-m\fR /etc/master.d/xt
- \fB-d\fR $BASEDIR/data/xt.o \fB-v\fR1.0` ||
- exit 2
-i=00
-while [ $i \(milt $limit ]
-do
- for j in 0 1 2 3 4 5 6 7
- do
- echo /dev/xt$i$j c $majno `expr $i ? 8 + $j`
- 644 root sys |
- echo /dev/xt$i$j=/dev/xt/$i$j
- done
- i=`expr $i + 1`
- [ $i \(mile 9 ] && i="0$i" #add leading zero
-done | installf $PKGINST \(mi || exit 2
-# finalized installation, create links
-installf \fB-f\fR $PKGINST || exit 2
-.fi
-.in -2
-.sp
-
-.SH ENVIRONMENT VARIABLES
-.sp
-.LP
-\fBinstallf\fR inherits the value of the following environment variable. This
-variable is set when \fBpkgadd\fR(1M) or \fBpkgrm\fR(1M) is invoked with the
-\fB-R\fR option.
-.sp
-.ne 2
-.na
-\fB\fBPKG_INSTALL_ROOT\fR\fR
-.ad
-.RS 20n
-If present, defines the full path name of a directory to use as the system's
-\fBPKG_INSTALL_ROOT\fR path. All product and package information files are then
-looked for in the directory tree, starting with the specified
-\fBPKG_INSTALL_ROOT\fR path. If not present, the default system path of \fB/\fR
-is used.
-.RE
-
-.SH EXIT STATUS
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 6n
-Successful operation.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB>0\fR\fR
-.ad
-.RS 6n
-An error occurred.
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBpkginfo\fR(1), \fBpkgmk\fR(1), \fBpkgparam\fR(1), \fBpkgproto\fR(1),
-\fBpkgtrans\fR(1), \fBpkgadd\fR(1M), \fBpkgask\fR(1M), \fBpkgchk\fR(1M),
-\fBpkgrm\fR(1M), \fBremovef\fR(1M), \fBpkgmap\fR(4), \fBspace\fR(4),
-\fBattributes\fR(5), \fBlargefile\fR(5)
-.sp
-.LP
-\fI\fR
-.SH NOTES
-.sp
-.LP
-When \fIftype\fR is specified, all applicable fields, as shown below, must be
-defined:
-.sp
-
-.sp
-.TS
-box;
-l l
-l l .
-\fIftype\fR Required Fields
-\fBp\fR, \fBx\fR, \fBd\fR, \fBf\fR, \fBv\fR, or \fBe\fR \fBmode owner group\fR
-\fBc\fR or \fBb\fR \fBmajor minor mode owner group\fR
-.TE
-
-.sp
-.LP
-The \fBinstallf\fR command will create directories, named pipes and special
-devices on the original invocation. Links are created when \fBinstallf\fR is
-invoked with the \fB-f\fR option to indicate installation is complete.
-.sp
-.LP
-Links should be specified as \fIpath1\fR\fB=\fR\fIpath2.\fR \fIpath1\fR
-indicates the destination and \fIpath2\fR indicates the source file.
-.sp
-.LP
-Files installed with \fBinstallf\fR will be placed in the class \fBnone\fR,
-unless a class is defined with the command. Subsequently, they will be removed
-when the associated package is deleted. If this file should not be deleted at
-the same time as the package, be certain to assign it to a class which is
-ignored at removal time. If special action is required for the file before
-removal, a class must be defined with the command and an appropriate class
-action script delivered with the package.
-.sp
-.LP
-When classes are used, \fBinstallf\fR must be used in one of the following
-forms:
-.sp
-.in +2
-.nf
-installf \fB-c\fR class1 .\|.\|.\|
-installf \fB-f\fR \fB-c\fR class1 .\|.\|.\|
-installf \fB-c\fR class2 .\|.\|.\|
-installf \fB-f\fR \fB-c\fR class2 .\|.\|.\|
-.fi
-.in -2
-.sp
-
diff --git a/usr/src/man/man1m/installgrub.1m b/usr/src/man/man1m/installgrub.1m
deleted file mode 100644
index b6d64978db..0000000000
--- a/usr/src/man/man1m/installgrub.1m
+++ /dev/null
@@ -1,148 +0,0 @@
-'\" te
-.\" Copyright 2015 Nexenta Systems Inc.
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
-.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH INSTALLGRUB 1M "Jan 14, 2015"
-.SH NAME
-installgrub \- install GRUB in a disk partition or a floppy
-.SH SYNOPSIS
-.LP
-.nf
-\fB/sbin/installgrub\fR [\fB-fm\fR] \fIstage1\fR \fIstage2\fR \fIraw-device\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBinstallgrub\fR command is an x86-only program. GRUB stands for GRand
-Unified Bootloader.
-.sp
-.LP
-\fBinstallgrub\fR installs GRUB stage 1 and stage 2 files on the boot area of a
-disk partition. If you specify the \fB-m\fR option, \fBinstallgrub\fR installs
-the stage 1 file on the master boot sector of the disk.
-.SH OPTIONS
-.LP
-The \fBinstallgrub\fR command accepts the following options:
-.sp
-.ne 2
-.na
-\fB\fB-f\fR\fR
-.ad
-.RS 6n
-Suppresses interaction when overwriting the master boot sector.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-m\fR\fR
-.ad
-.RS 6n
-Installs GRUB \fIstage1\fR on the master boot sector interactively. You must
-use this option if Solaris is installed on an extended FDISK or an EFI/GPT
-partition.
-.RE
-
-.SH OPERANDS
-.LP
-The \fBinstallgrub\fR command accepts the following operands:
-.sp
-.ne 2
-.na
-\fB\fIstage1\fR\fR
-.ad
-.RS 14n
-The name of the GRUB stage 1 file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIstage2\fR\fR
-.ad
-.RS 14n
-The name of the GRUB stage 2 file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIraw-device\fR\fR
-.ad
-.RS 14n
-The name of the device onto which GRUB code is to be installed. It must be a
-character device that is readable and writable. For disk devices, specify the
-slice where the GRUB menu file is located. (For Solaris it is the root slice.)
-For a floppy disk, it is \fB/dev/rdiskette\fR.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRInstalling GRUB on a Hard Disk Slice
-.sp
-.LP
-The following command installs GRUB on a system where the root slice is
-\fBc0d0s0\fR:
-
-.sp
-.in +2
-.nf
-example# /sbin/installgrub /boot/grub/stage1 \e
- /boot/grub/stage2 /dev/rdsk/c0d0s0
-.fi
-.in -2
-
-.LP
-\fBExample 2 \fRInstalling GRUB on a Floppy
-.sp
-.LP
-The following command installs GRUB on a formatted floppy:
-
-.sp
-.in +2
-.nf
-example# mount -F pcfs /dev/diskette /mnt
-# mkdir -p /mnt/boot/grub
-# cp /boot/grub/* /mnt/boot/grub
-# umount /mnt
-# cd /boot/grub
-# /sbin/installgrub stage1 stage2 /dev/rdiskette
-.fi
-.in -2
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/boot/grub\fR\fR
-.ad
-.RS 14n
-Directory where GRUB files reside.
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Uncommitted
-.TE
-
-.SH SEE ALSO
-.LP
-\fBboot\fR(1M), \fBfdisk\fR(1M), \fBfmthard\fR(1M), \fBkernel\fR(1M),
-\fBattributes\fR(5)
-.SH WARNINGS
-.LP
-Installing GRUB on the master boot sector (\fB-m\fR option) overrides any boot
-manager currently installed on the machine. The system will always boot the
-GRUB in the Solaris partition regardless of which \fBfdisk\fR partition is
-active.
diff --git a/usr/src/man/man1m/intrd.1m b/usr/src/man/man1m/intrd.1m
deleted file mode 100644
index efeb8d2944..0000000000
--- a/usr/src/man/man1m/intrd.1m
+++ /dev/null
@@ -1,68 +0,0 @@
-'\" te
-.\" Copyright (c) 1999, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH INTRD 1M "Jun 21, 2006"
-.SH NAME
-intrd \- interrupt distribution daemon
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/intrd\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBintrd\fR daemon is started at boot time to monitor the assignments
-between interrupts and \fBCPU\fRs. If \fBintrd\fR decides that the current
-assignments are imbalanced and harmful to system performance, it will generate
-and implement new assignments.
-.sp
-.LP
-Any notifications will be delivered via \fBsyslogd\fR(1M).
-.sp
-.LP
-Because \fBintrd\fR dynamically monitors a system for optimal performance, it
-consumes a small amount of CPU time, even on an otherwise idle system. This
-behavior is normal.
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Unstable
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBsvcs\fR(1), \fBsvcadm\fR(1M), \fBsyslogd\fR(1M), \fBattributes\fR(5),
-\fBsmf\fR(5)
-.SH NOTES
-.sp
-.LP
-The interrupt distribution daemon is managed by the service management
-facility, \fBsmf\fR(5), under the service identifier:
-.sp
-.in +2
-.nf
-svc:/system/intrd:default
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Administrative actions on this service, such as enabling, disabling, or
-requesting restart, can be performed using \fBsvcadm\fR(1M). The service's
-status can be queried using the \fBsvcs\fR(1) command.
diff --git a/usr/src/man/man1m/intrstat.1m b/usr/src/man/man1m/intrstat.1m
deleted file mode 100644
index 600628f12c..0000000000
--- a/usr/src/man/man1m/intrstat.1m
+++ /dev/null
@@ -1,208 +0,0 @@
-'\" te
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
-.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH INTRSTAT 1M "Dec 10, 2017"
-.SH NAME
-intrstat \- report interrupt statistics
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/intrstat\fR [\fB-c\fR \fIcpulist\fR | \fB-C\fR \fIprocessor_set_id\fR] [\fB-T\fR u | d ]
- [\fB-x\fR \fIopt\fR[=\fIval\fR]] [\fIinterval\fR [\fIcount\fR]]
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBintrstat\fR utility gathers and displays run-time interrupt statistics.
-The output is a table of device names and CPU IDs, where each row of the table
-denotes a device, and each column of the table denotes a CPU. Each cell in the
-table contains both the raw number of interrupts for the given device on the
-given CPU, and the percentage of absolute time spent in that device's interrupt
-handler on that CPU.
-.sp
-.LP
-The device name is given in the form of
-\fB{\fR\fIname\fR}\fI#\fR\fB{\fR\fIinstance\fR\fB}\fR. The name is the
-normalized driver name, and typically corresponds to the name of the module
-implementing the driver. See \fBddi_driver_name\fR(9F). Many Sun-delivered
-drivers have their own manual pages. See \fBIntro\fR(7).
-.sp
-.LP
-If standard output is a terminal, the table contains as many columns of data as
-can fit within the terminal width. If standard output is not a terminal, the
-table contains at most four columns of data. By default, data is gathered and
-displayed for all CPUs. If the data cannot fit in a single table, it is printed
-across multiple tables. The set of CPUs for which data is displayed can be
-optionally specified with the \fB-c\fR or \fB-C\fR option.
-.sp
-.LP
-By default, \fBintrstat\fR displays data once per second and runs indefinitely.
-Both of these behaviors can be optionally controlled with the interval and
-count parameters, respectively. See \fBOPERANDS\fR.
-.sp
-.LP
-Because \fBintrstat\fR uses dynamic discovery, it reports only on devices that
-raise interrupts while the command is running. Any devices that are silent
-while \fBintrstat\fR is running are not displayed.
-.sp
-.LP
-\fBintrstat\fR induces a small system-wide performance degradation. As a
-result, only the super-user can run \fBintrstat\fR by default. The
-\fIDynamic Tracing Guide\fR explains how administrators can grant privileges to
-other users to permit them to run \fBintrstat\fR.
-.SH OPTIONS
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-c\fR \fIcpulist\fR\fR
-.ad
-.sp .6
-.RS 4n
-Displays data for the CPUs specified by \fIcpulist\fR.
-.sp
-\fIcpulist\fR can be a single processor ID (for example, \fB4\fR), a range of
-processor IDs (for example, \fB4-6\fR), or a comma separated list of processor
-IDs or processor ID ranges (for example, \fB4,5,6\fR or \fB4,6-8\fR).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-C\fR \fIprocessor_set_id\fR\fR
-.ad
-.sp .6
-.RS 4n
-Displays data for the CPUs in the processor set specified by
-\fIprocessor_set_id\fR.
-.sp
-\fBintrstat\fR modifies its output to always reflect the CPUs in the specified
-processor set. If a CPU is added to the set, \fBintrstat\fR modifies its output
-to include the added CPU. If a CPU is removed from the set, \fBintrstat\fR
-modifies its output to exclude the removed CPU. At most one processor set can
-be specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-T\fR \fBu\fR | \fBd\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display a time stamp.
-.sp
-Specify \fBu\fR for a printed representation of the internal representation of
-time. See \fBtime\fR(2). Specify \fBd\fR for standard date format. See
-\fBdate\fR(1).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-x\fR \fIopt\fR[=\fIval\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Enable or modify a DTrace runtime option or D compiler option. The list of
-options is found in the \fIDynamic Tracing Guide\fR. A boolean option
-is enabled by specifying its name. Options with values are set by separating
-the option name and value with an equal sign (\fB=\fR)
-.RE
-
-.SH OPERANDS
-.LP
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fB\fIcount\fR\fR
-.ad
-.sp .6
-.RS 4n
-Indicates the number of intervals to execute before exiting.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIinterval\fR\fR
-.ad
-.sp .6
-.RS 4n
-Indicates the number of seconds to be executed before exiting.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRUsing \fBintrstat\fR Without Options
-.sp
-.LP
-Without options, \fBintrstat\fR displays a table of trap types and CPUs. At
-most, four columns can fit in the default terminal width. If there are more
-than four CPUs, multiple tables are displayed.
-
-.sp
-.LP
-The following example runs \fBintrstat\fR on a uniprocessor Intel IA/32-based
-laptop:
-
-.sp
-.in +2
-.nf
-example# intrstat
- device | cpu0 %tim
- -----------------+---------------
- ata#0 | 166 0.4
- ata#1 | 0 0.0
- audioi810#0 | 6 0.0
- i8042#0 | 281 0.7
- iprb#0 | 6 0.0
- uhci#1 | 6 0.0
- uhci#2 | 6 0.0
-
- device | cpu0 %tim
- -----------------+---------------
- ata#0 | 161 0.5
- ata#1 | 0 0.0
- audioi810#0 | 6 0.0
- i8042#0 | 303 0.6
- iprb#0 | 6 0.0
- uhci#1 | 6 0.0
- uhci#2 | 6 0.0
- ...
-.fi
-.in -2
-.sp
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability See below.
-.TE
-
-.sp
-.LP
-The command-line syntax is Evolving. The human-readable output is Unstable.
-.SH SEE ALSO
-.LP
-\fBdtrace\fR(1M), \fBtrapstat\fR(1M), \fBattributes\fR(5), \fBIntro\fR(7),
-\fBddi_driver_name\fR(9F)
-.sp
-.LP
-\fIDynamic Tracing Guide\fR:
-.sp
-.LP
-https://illumos.org/books/dtrace/
diff --git a/usr/src/man/man1m/iostat.1m b/usr/src/man/man1m/iostat.1m
deleted file mode 100644
index 9c54d91142..0000000000
--- a/usr/src/man/man1m/iostat.1m
+++ /dev/null
@@ -1,682 +0,0 @@
-'\" te
-.\"
-.\" CDDL HEADER START
-.\"
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.\"
-.\" CDDL HEADER END
-.\"
-.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights reserved
-.\" Copyright (c) 2012 by Delphix. All rights reserved.
-.\"
-.TH IOSTAT 1M "Mar 23, 2009"
-.SH NAME
-iostat \- report I/O statistics
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/bin/iostat\fR [\fB-cCdDeEiImMnpPrstxXYz\fR] [\fB-l\fR \fIn\fR] [\fB-T\fR u | d]
- [\fIdisk\fR]... [\fIinterval\fR [\fIcount\fR]]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBiostat\fR utility iteratively reports terminal, disk, and tape \fBI/O\fR
-activity, as well as \fBCPU\fR utilization. The first line of output is for all
-time since boot; each subsequent line is for the prior interval only.
-.sp
-.LP
-To compute this information, the kernel maintains a number of counters. For
-each disk, the kernel counts reads, writes, bytes read, and bytes written. The
-kernel also takes hi-res time stamps at queue entry and exit points, which
-allows it to keep track of the residence time and cumulative residence-length
-product for each queue. Using these values, \fBiostat\fR produces highly
-accurate measures of throughput, utilization, queue lengths, transaction rates
-and service time. For terminals collectively, the kernel simply counts the
-number of input and output characters.
-.sp
-.LP
-During execution of the kernel status command, the \fBstate\fR of the system
-can change. If relevant, a state change message is included in the \fBiostat\fR
-output, in one of the following forms:
-.sp
-.in +2
-.nf
-<<device added: sd0>>
-<<device removed: sd0>>
-<<partition added: sd0,a>>
-<<partition removed: sd0,a>>
-<<NFS mounted: nfs1>>
-<<NFS unmounted: nfs1>>
-<<multi-path added: ssd4>>
-<<multi-path removed: ssd4>>
-<<controller added: c1>>
-<<controller removed: c1>>
-<<processors added: 1, 3>>
-<<processors removed: 1, 3>>
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Note that the \fBnames\fR printed in these state change messages are affected
-by the \fB-n\fR and \fB-m\fR options as appropriate.
-.sp
-.LP
-For more general system statistics, use \fBsar\fR(1), \fBsar\fR(1M), or
-\fBvmstat\fR(1M).
-.SS "Output"
-.sp
-.LP
-The output of the \fBiostat\fR utility includes the following information.
-.sp
-.ne 2
-.na
-\fB\fBdevice\fR\fR
-.ad
-.RS 10n
-name of the disk
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBr/s\fR\fR
-.ad
-.RS 10n
-reads per second
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBw/s\fR\fR
-.ad
-.RS 10n
-writes per second
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBkr/s\fR\fR
-.ad
-.RS 10n
-kilobytes read per second
-.sp
-The average I/O size during the interval can be computed from \fBkr/s\fR
-divided by \fBr/s\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBkw/s\fR\fR
-.ad
-.RS 10n
-kilobytes written per second
-.sp
-The average I/O size during the interval can be computed from \fBkw/s\fR
-divided by \fBw/s\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBwait\fR\fR
-.ad
-.RS 10n
-average number of transactions waiting for service (queue length)
-.sp
-This is the number of I/O operations held in the device driver queue waiting
-for acceptance by the device.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBactv\fR\fR
-.ad
-.RS 10n
-average number of transactions actively being serviced (removed from the queue
-but not yet completed)
-.sp
-This is the number of I/O operations accepted, but not yet serviced, by the
-device.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsvc_t\fR\fR
-.ad
-.RS 10n
-average response time of transactions, in milliseconds
-.sp
-The \fBsvc_t\fR output reports the overall \fBresponse\fR time, rather than the
-\fBservice\fR time, of a device. The overall time includes the time that
-transactions are in queue and the time that transactions are being serviced.
-The time spent in queue is shown with the \fB-x\fR option in the \fBwsvc_t\fR
-output column. The time spent servicing transactions is the true service time.
-Service time is also shown with the \fB-x\fR option and appears in the
-\fBasvc_t\fR output column of the same report.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB%w\fR\fR
-.ad
-.RS 10n
-percent of time there are transactions waiting for service (queue non-empty)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB%b\fR\fR
-.ad
-.RS 10n
-percent of time the disk is busy (transactions in progress)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBwsvc_t\fR\fR
-.ad
-.RS 10n
-average service time in wait queue, in milliseconds
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBasvc_t\fR\fR
-.ad
-.RS 10n
-average service time of active transactions, in milliseconds
-.RE
-
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-c\fR\fR
-.ad
-.RS 12n
-Report the percentage of time the system has spent in user mode, in system
-mode, in dtrace probes, and idling. See the NOTES section and
-\fBmpstat\fR(1m) for more information.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-C\fR\fR
-.ad
-.RS 12n
-When the \fB-x\fR option is also selected, report extended disk statistics
-aggregated by \fIcontroller id\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-d\fR\fR
-.ad
-.RS 12n
-For each disk, report the number of kilobytes transferred per second, the
-number of transfers per second, and the average service time in milliseconds.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-D\fR\fR
-.ad
-.RS 12n
-For each disk, report the reads per second, writes per second, and percentage
-disk utilization.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-e\fR\fR
-.ad
-.RS 12n
-Display device error summary statistics. The total errors, hard errors, soft
-errors, and transport errors are displayed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-E\fR\fR
-.ad
-.RS 12n
-Display all device error statistics.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-i\fR\fR
-.ad
-.RS 12n
-In \fB-E\fR output, display the \fBDevice ID\fR instead of the \fBSerial No\fR.
-The \fBDevice Id\fR is a unique identifier registered by a driver through
-\fBddi_devid_register\fR(9F).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-I\fR\fR
-.ad
-.RS 12n
-Report the counts in each interval, rather than rates (where applicable).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR \fIn\fR\fR
-.ad
-.RS 12n
-Limit the number of disks included in the report to \fIn\fR; the disk limit
-defaults to 4 for \fB-d\fR and \fB-D\fR, and unlimited for \fB-x\fR. Note:
-disks explicitly requested (see \fIdisk\fR below) are not subject to this disk
-limit.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-m\fR\fR
-.ad
-.RS 12n
-Report file system mount points. This option is most useful if the \fB-P\fR or
-\fB-p\fR option is also specified or used in conjunction with \fB-Xn\fR or
-\fB-en\fR. The \fB-m\fR option is useful only if the mount point is actually
-listed in the output. This option can only be used in conjunction with the
-\fB-n\fR option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-M\fR\fR
-.ad
-.RS 12n
-Display data throughput in \fBMB\fR/sec instead of KB/sec.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR\fR
-.ad
-.RS 12n
-Display names in descriptive format. For example, \fBcXtYdZ\fR, \fBrmt/N\fR,
-\fBserver:/export/path\fR.
-.sp
-By default, disks are identified by instance names such as \fBssd23\fR or
-\fBmd301\fR. Combining the \fB-n\fR option with the \fB-x\fR option causes disk
-names to display in the \fBcXtYdZsN\fR format which is more easily associated
-with physical hardware characteristics. The \fBcXtYdZsN\fR format is
-particularly useful in FibreChannel (FC) environments where the FC World Wide
-Name appears in the \fBt\fR field.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR\fR
-.ad
-.RS 12n
-For each disk, report per-partition statistics in addition to per-device
-statistics.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-P\fR\fR
-.ad
-.RS 12n
-For each disk, report per-partition statistics only, no per-device statistics.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-r\fR\fR
-.ad
-.RS 12n
-Display data in a comma-separated format.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR\fR
-.ad
-.RS 12n
-Suppress messages related to \fBstate changes\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-t\fR\fR
-.ad
-.RS 12n
-Report the number of characters read and written to terminals per second.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-T\fR u | d\fR
-.ad
-.RS 12n
-Display a time stamp.
-.sp
-Specify \fBu\fR for a printed representation of the internal representation of
-time. See \fBtime\fR(2). Specify \fBd\fR for standard date format. See
-\fBdate\fR(1).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-X\fR\fR
-.ad
-.RS 12n
-For disks under \fBscsi_vhci\fR(7D) control, in addition to disk \fIlun\fR
-statistics, also report statistics for \fIlun\fR.\fIcontroller\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-x\fR\fR
-.ad
-.RS 12n
-Report extended disk statistics. By default, disks are identified by instance
-names such as \fBssd23\fR or \fBmd301\fR. Combining the \fBx\fR option with the
-\fB-n\fR option causes disk names to display in the \fBcXtYdZsN\fR format, more
-easily associated with physical hardware characteristics. Using the
-\fBcXtYdZsN\fR format is particularly helpful in the FibreChannel environments
-where the FC World Wide Name appears in the \fBt\fR field.
-.sp
-If no output display is requested (no \fB-x\fR, \fB-e\fR, \fB-E\fR), \fB-x\fR
-is implied.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-Y\fR\fR
-.ad
-.RS 12n
-For disks under \fBscsi_vhci\fR(7D) control, in addition to disk \fIlun\fR
-statistics, also report statistics for \fIlun\fR.\fItargetport\fR and
-\fIlun\fR.\fItargetport\fR.\fIcontroller\fR.
-.sp
-In \fB-n\fR (descriptive) mode the \fItargetport\fR is shown in using the
-\fBtarget-port\fR property of the path. Without \fB-n\fR the \fItargetport\fR
-is shown using the shorter \fBport-id\fR. All target ports with the same
-\fBtarget-port\fR property value share the same \fBport-id\fR. The
-\fBtarget-port\fR-to-\fBport-id\fR association does not persist across reboot.
-.sp
-If no output display is requested (no \fB-x\fR, \fB-e\fR, \fB-E\fR), \fB-x\fR
-is implied.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-z\fR\fR
-.ad
-.RS 12n
-Do not print lines whose underlying data values are all zeros.
-.RE
-
-.sp
-.LP
-The option set \fB-xcnCXTdz\fR \fIinterval\fR is particularly useful for
-determining whether disk I/O problems exist and for identifying problems.
-.SH OPERANDS
-.sp
-.LP
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fB\fIcount\fR\fR
-.ad
-.RS 12n
-Display only \fIcount\fR reports.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIdisk\fR\fR
-.ad
-.RS 12n
-Explicitly specify the disks to be reported; in addition to any explicit disks,
-any active disks up to the disk limit (see \fB-l\fR above) will also be
-reported.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIinterval\fR\fR
-.ad
-.RS 12n
-Report once each \fIinterval\fR seconds.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRUsing \fBiostat\fR to Generate User and System Operation
-Statistics
-.sp
-.LP
-The following command displays two reports of extended device statistics,
-aggregated by \fIcontroller id\fR, for user (\fBus\fR) and system (\fBsy\fR)
-operations. Because the \fB-n\fR option is used with the \fB-x\fR option,
-devices are identified by controller names.
-
-.sp
-.in +2
-.nf
-example% \fBiostat\fR \fB-xcnCXTdz\fR \fB5\fR
-
-
-Mon Nov 24 14:58:36 2003
- cpu
- us sy dt id
- 14 31 0 20
- extended device statistics
- r/s w/s kr/s kw wait actv wsvc_t asvc_t %w %b device
- 3.8 29.9 145.8 44.0 0.0 0.2 0.1 6.4 0 5 c0
-666.3 814.8 12577.6 17591.1 91.3 82.3 61.6 55.6 0 2 c12
-180.0 234.6 4401.1 5712.6 0.0 147.7 0.0 356.3 0 98 d10
-
-Mon Nov 24 14:58:41 2003
- cpu
- us sy dt id
- 11 31 1 22
- extended device statistics
- r/s w/s kr/s kw wait actv wsvc_t asvc_t %w %b device
- 0.8 41.0 5.2 20.5 0.0 0.2 0.2 4.4 0 6 c0
-565.3 581.7 8573.2 10458.9 0.0 26.6 0.0 23.2 0 3 c12
-106.5 81.3 3393.2 1948.6 0.0 5.7 0.0 30.1 0 99 d10
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRUsing \fBiostat\fR to Generate TTY Statistics
-.sp
-.LP
-The following command displays two reports on the activity of five disks in
-different modes of operation. Because the \fB-x\fR option is used, disks are
-identified by instance names.
-
-.sp
-.in +2
-.nf
-example% \fBiostat\fR \fB-x\fR \fBtc 5 2\fR
-
-
- extended device statistics tty cpu
-device r/s w/s kr/s kw/s wait actv svc_t %w %b tin tout us sy dt id
-sd0 0.4 0.3 10.4 8.0 0.0 0.0 36.9 0 1 0 10 0 0 0 99
-sd1 0.0 0.0 0.3 0.4 0.0 0.0 35.0 0 0
-sd6 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0 0
-nfs1 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0 0
-nfs2 0.0 0.0 0.0 0.1 0.0 0.0 35.6 0 0
- extended device statistics tty cpu
-device r/s w/s kr/s kw/s wait actv svc_t %w %b tin tout us sy dt id
-sd0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0 0 0 155 0 0 0 100
-sd1 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0 0
-sd6 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0 0
-nfs1 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0 0
-nfs2 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0 0
-
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRUsing \fBiostat\fR to Generate Partition and Device Statistics
-.sp
-.LP
-The following command generates partition and device statistics for each disk.
-Because the \fB-n\fR option is used with the \fB-x\fR option, disks are
-identified by controller names.
-
-.sp
-.in +2
-.nf
-example% \fBiostat -xnp\fR
-
- extended device statistics
-r/s w/s kr/s kw/s wait actv wsvc_t asvc_t %w %b device
-0.4 0.3 10.4 7.9 0.0 0.0 0.0 36.9 0 1 c0t0d0
-0.3 0.3 9.0 7.3 0.0 0.0 0.0 37.2 0 1 c0t0d0s0
-0.0 0.0 0.1 0.5 0.0 0.0 0.0 34.0 0 0 c0t0d0s1
-0.0 0.0 0.0 0.1 0.0 0.0 0.6 35.0 0 0 fuji:/export/home/user3
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 4 \fRShow Translation from Instance Name to Descriptive Name
-.sp
-.LP
-The following example illustrates the use of \fBiostat\fR to translate a
-specific instance name to a descriptive name.
-
-.sp
-.in +2
-.nf
-example% \fBiostat -xn sd1\fR
- extended device statistics
-r/s w/s kr/s kw/s wait actv wsvc_t asvc_t %w %b device
-0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0 0 c8t1d0
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 5 \fRShow Target Port and Controller Activity for a Specific Disk
-.sp
-.LP
-In the following example, there are four controllers, all connected to the same
-target port.
-
-.sp
-.in +2
-.nf
-# \fBiostat -Y ssd22\fR
- extended device statistics
-device r/s w/s kr/s kw/s wait actv svc_t %w %b
-ssd22 0.2 0.0 1.5 0.0 0.0 0.0 0.7 0 0
-ssd22.t2 0.2 0.0 1.5 0.0 0.0 0.0 0.0 0 0
-ssd22.t2.fp0 0.0 0.0 0.4 0.0 0.0 0.0 0.0 0 0
-ssd22.t2.fp1 0.0 0.0 0.4 0.0 0.0 0.0 0.0 0 0
-ssd22.t2.fp2 0.0 0.0 0.4 0.0 0.0 0.0 0.0 0 0
-ssd22.t2.fp3 0.0 0.0 0.4 0.0 0.0 0.0 0.0 0 0
-.fi
-.in -2
-.sp
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability See below.
-.TE
-
-.sp
-.LP
-Invocation is evolving. Human readable output is unstable.
-.SH SEE ALSO
-.sp
-.LP
-\fBdate\fR(1), \fBsar\fR(1), \fBsar\fR(1M), \fBmpstat\fR(1M), \fBvmstat\fR(1M),
-\fBtime\fR(2), \fBattributes\fR(5), \fBscsi_vhci\fR(7D)
-.SH NOTES
-.sp
-.LP
-The sum of \fBCPU\fR utilization might vary slightly from 100 because of
-rounding errors in the production of a percentage figure.
-.sp
-.LP
-The \fBsvc_t\fR response time is not particularly significant when the
-\fBI/0\fR (\fBr/s\fR+\fBw/s\fR) rates are under 0.5 per second. Harmless spikes
-are fairly normal in such cases.
-.sp
-.LP
-The \fBmpstat\fR utility reports the same \fBdt\fR, \fBusr\fR, and \fBsys\fR
-statistics. See \fBmpstat\fR(1M) for more information.
-.sp
-.LP
-When executed in a \fBzone\fR and if the pools facility is active,
-\fBiostat\fR(1M) will only provide information for those processors in the
-processor set of the pool to which the \fBzone\fR is bound.
diff --git a/usr/src/man/man1m/ipaddrsel.1m b/usr/src/man/man1m/ipaddrsel.1m
deleted file mode 100644
index 7993f75c9c..0000000000
--- a/usr/src/man/man1m/ipaddrsel.1m
+++ /dev/null
@@ -1,322 +0,0 @@
-'\" te
-.\" Copyright (C) 2006, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright (C) 2017, Sebastian Wiedenroth
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH IPADDRSEL 1M "Nov 4, 2017"
-.SH NAME
-ipaddrsel \- configure IPv6 default address selection
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/ipaddrsel\fR
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/ipaddrsel\fR \fB-f\fR \fIfile\fR
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/ipaddrsel\fR \fB-d\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-Use the \fBipaddrsel\fR utility to configure the IPv6 default address selection
-policy table. The policy table is a longest-matching-prefix lookup table that
-is used for IPv6 source address selection and for destination address ordering
-when resolving names to \fBAF_INET6\fR addresses. For a description of how the
-policy table is used for source address selection, see \fBinet6\fR(7P). For a
-description of how the policy table is used for destination address ordering,
-see \fBgetaddrinfo\fR(3SOCKET).
-.sp
-.LP
-The unmodified policy table is valid for all typical IPv6 deployments. Modify
-the table only if a circumstance exists for which the default behavior of the
-IPv6 source address selection or destination address ordering mechanism is
-unsatisfactory. See the section for examples of such circumstances. You should
-carefully consider your addressing strategy before you change the table from
-the provided default.
-.sp
-.LP
-When the \fBipaddrsel\fR command is issued without any arguments, the address
-selection policy currently in use is printed. The format of the output is
-compatible with the format of the configuration file that the \fB-f\fR option
-accepts.
-.LP
-Note -
-.sp
-.RS 2
-If the \fBusesrc\fR subcommand to \fBifconfig\fR(1M) is applied to a particular
-physical interface, the selection policy specified by \fBusesrc\fR overrides
-the source address selection policies specified by \fBipaddrsel\fR. This is
-true for packets that are locally generated and for applications that do not
-choose a non-zero source address using \fBbind\fR(3SOCKET).
-.RE
-.SS "The Configuration File"
-.LP
-The configuration file that the \fB-f\fR option accepts can contain either
-comment lines or policy entries. Comment lines have a '\fB#\fR' character as
-the first non-blank character. and they are ignored by the \fBipaddrsel\fR
-utility. Policy entry lines have the following format:
-.sp
-.in +2
-.nf
-\fIprefix\fR/\fIprefix_length\fR \fIprecedence\fR \fIlabel\fR [# \fIcomment\fR]
-.fi
-.in -2
-
-.sp
-.LP
-The \fIprefix\fR must be an IPv6 prefix in a format consistent with
-\fBinet\fR(3SOCKET). The \fIprefix_length\fR is an integer ranging from 0 to
-128. The IPv6 source address selection and destination address ordering
-algorithms determine the precedence or label of an address by doing a
-longest-prefix-match lookup using the prefixes in this table, much like
-next-hop determination for a destination is done by doing a
-longest-prefix-match lookup using an IP routing table.
-.sp
-.LP
-The precedence is a non-negative integer that represents how the destination
-address ordering mechanism will sort addresses returned from name lookups. In
-general, addresses with a higher precedence will be in front of addresses with
-a lower precedence. Other factors, such as destinations with undesirable source
-addresses can, however, override these precedence values.
-.sp
-.LP
-The label is a string of at most fifteen characters, not including the
-\fINULL\fR terminator. The label allows particular source address prefixes to
-be used with destination prefixes of the same label. Specifically, for a
-particular destination address, the IPv6 source address selection algorithm
-prefers source addresses whose label is equal that of the destination.
-.sp
-.LP
-The label may be followed by an optional comment.
-.sp
-.LP
-The file must contain a default policy entry, which is an entry with
-\fB::0/0\fR as its \fIprefix\fR and \fIprefix_length\fR. This is to ensure that
-all possible addresses match a policy.
-.SH OPTIONS
-.LP
-The \fBippadrsel\fR utility supports the following options:
-.sp
-.ne 2
-.na
-\fB\fB-f\fR \fIfile\fR\fR
-.ad
-.RS 11n
-Replace the address selection policy table with the policy specified in the
-\fIfile\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-d\fR\fR
-.ad
-.RS 11n
-Revert the kernel's address selection policy table back to the default table.
-Invoking \fBipaddrsel\fR in this way only changes the currently running
-kernel's policy table, and does not alter the configuration file
-\fB/etc/inet/ipaddrsel.conf\fR. To revert the configuration file back to its
-default settings, use \fBipaddrsel\fR \fB-d\fR, then dump the contents of the
-table to the configuration file by redirecting the output of \fBipaddrsel\fR to
-\fB/etc/inet/ipaddrsel.conf\fR.
-.sp
-.in +2
-.nf
-example# \fBipaddrsel -d\fR
-example# \fBipaddrsel > /etc/inet/ipaddrsel.conf\fR
-.fi
-.in -2
-.sp
-
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRThe Default Policy in \fB/etc/inet/ipaddrsel.conf\fR
-.sp
-.LP
-The following example is the default policy that is located in
-\fB/etc/inet/ipaddrsel.conf\fR:
-
-.sp
-.in +2
-.nf
-# Prefix Precedence Label
-::1/128 50 Loopback
-::/0 40 Default
-::ffff:0.0.0.0/96 35 IPv4
-2002::/16 30 6to4
-2001::/32 5 Teredo
-fc00::/7 3 ULA
-::/96 1 IPv4_Compatible
-fec0::/10 1 Site_Local
-3ffe::/16 1 6bone
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRAssigning a Lower Precedence to Link-local and Site-local
-Addresses
-.sp
-.LP
-By default, the destination address ordering rules sort addresses of smaller
-scope before those of larger scope. For example, if a name resolves to a global
-and a site-local address, the site local address would be ordered before the
-global address. An administrator can override this ordering rule by assigning a
-lower precedence to addresses of smaller scope, as the following table
-demonstrates.
-
-.sp
-.in +2
-.nf
-# Prefix Precedence Label
-::1/128 50 Loopback
-::/0 40 Default
-2002::/16 30 6to4
-fec0::/10 27 Site-Local
-fe80::/10 23 Link-Local
-::/96 20 IPv4_Compatible
-::ffff:0.0.0.0/96 10 IPv4
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRAssigning Higher Precedence to IPv4 Destinations
-.sp
-.LP
-By default, IPv6 addresses are ordered in front of IPv4 addresses in name
-lookups. \fB::ffff:0.0.0.0/96\fR has the precedence of 35 in the default table.
-In the following example, IPv4 addresses are assigned higher precedence and are
-ordered in front of IPv6 destinations:
-
-.sp
-.in +2
-.nf
-# Prefix Precedence Label
-::1/128 50 Loopback
-::/0 40 Default
-::ffff:0.0.0.0/96 60 IPv4
-2002::/16 30 6to4
-2001::/32 5 Teredo
-fc00::/7 3 ULA
-::/96 1 IPv4_Compatible
-fec0::/10 1 Site_Local
-3ffe::/16 1 6bone
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 4 \fREnsuring that a Particular Source Address is Used
-.sp
-.LP
-This example ensures that a particular source address is used only when
-communicating with destinations in a particular network.
-
-.sp
-.LP
-The following policy table assigns the label "ClientNet" to a particular source
-address on the local system, \fB2001:1111:1111::1\fR. The table assigns the same
-label to a network, \fB2001:2222:2222::/48\fR. The result of this policy is that
-the \fB2001:1111:1111::1\fR source address will only be used when communicating
-with destinations contained in the \fB2001:2222:2222::/48\fR network. For this
-example, this network is the \fBClientNet\fR, which could represent a
-particular client's network.
-
-.sp
-.in +2
-.nf
-# Prefix Precedence Label
-::1/128 50 Loopback
-2001:1111:1111::1/128 40 ClientNet
-2001:2222:2222::/48 40 ClientNet
-::/0 40 Default
-2002::/16 30 6to4
-::/96 20 IPv4_Compatible
-::ffff:0.0.0.0/96 10 IPv4
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-This example assumes that the local system has one physical interface, and that
-all global prefixes are assigned to that physical interface.
-
-.SH EXIT STATUS
-.LP
-\fBipaddrsel\fR returns the following exit values:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 6n
-\fBipaddrsel\fR successfully completed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB>\fB0\fR\fR
-.ad
-.RS 6n
-An error occurred. If a failure is encountered, the kernel's current policy
-table is unchanged.
-.RE
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/etc/inet/ipaddrsel.conf\fR\fR
-.ad
-.RS 28n
-The file that contains the IPv6 default address selection policy to be
-installed at boot time. This file is loaded before any Internet services are
-started.
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-.LP
-\fBnscd\fR(1M), \fBinet\fR(3SOCKET), \fBgetaddrinfo\fR(3SOCKET),
-\fBipaddrsel.conf\fR(4), \fBattributes\fR(5), \fBinet6\fR(7P)
-.SH NOTES
-.LP
-The ipnodes cache kept by \fBnscd\fR(1M) contains addresses that are ordered
-using the destination address ordering algorithm, which is one of the reasons
-why \fBipaddrsel\fR is called before \fBnscd\fR in the boot sequence. If
-\fBipaddrsel\fR is used to change the address selection policy after \fBnscd\fR
-has started, you should invalidate the \fBnscd\fR ipnodes cache by invoking the
-following command:
-.sp
-.in +2
-.nf
-example# \fB/usr/sbin/nscd -i ipnodes\fR
-.fi
-.in -2
-.sp
-
diff --git a/usr/src/man/man1m/ipadm.1m b/usr/src/man/man1m/ipadm.1m
deleted file mode 100644
index 3ab79e87d5..0000000000
--- a/usr/src/man/man1m/ipadm.1m
+++ /dev/null
@@ -1,1061 +0,0 @@
-.\"
-.\" This file and its contents are supplied under the terms of the
-.\" Common Development and Distribution License ("CDDL"), version 1.0.
-.\" You may only use this file in accordance with the terms of version
-.\" 1.0 of the CDDL.
-.\"
-.\" A full copy of the text of the CDDL should have accompanied this
-.\" source. A copy of the CDDL is also available via the Internet at
-.\" http://www.illumos.org/license/CDDL.
-.\"
-.\"
-.\" Copyright (c) 2012, Joyent, Inc. All Rights Reserved
-.\" Copyright (c) 2013, 2017 by Delphix. All rights reserved.
-.\" Copyright (c) 2016-2017, Chris Fraire <cfraire@me.com>.
-.\" Copyright 2021 OmniOS Community Edition (OmniOSce) Association.
-.\" Copyright 2021 Tintri by DDN, Inc. All rights reserved.
-.\"
-.Dd November 15, 2021
-.Dt IPADM 1M
-.Os
-.Sh NAME
-.Nm ipadm
-.Nd configure IP and IPMP interfaces, addresses and protocols
-.Sh SYNOPSIS
-.Nm
-.Ic help
-.Nm
-.Ic create-if
-.Op Fl t
-.Ar interface
-.Nm
-.Ic create-ip
-.Op Fl t
-.Ar interface
-.Nm
-.Ic delete-if
-.Ar interface
-.Nm
-.Ic delete-ip
-.Ar interface
-.Pp
-.Nm
-.Ic create-ipmp
-.Op Fl t
-.Op Fl i Ar interface Ns Oo , Ns Ar interface Oc Ns ...
-.Ar ipmp-interface
-.Nm
-.Ic delete-ipmp
-.Ar ipmp-interface
-.Nm
-.Ic add-ipmp
-.Op Fl t
-.Fl i Ar interface Ns Oo , Ns Ar interface Oc Ns ...
-.Ar ipmp-interface
-.Nm
-.Ic remove-ipmp
-.Op Fl t
-.Fl i Ar interface Ns Oo , Ns Ar interface Oc Ns ...
-.Ar ipmp-interface
-.Pp
-.Nm
-.Ic disable-if
-.Fl t
-.Ar interface
-.Nm
-.Ic enable-if
-.Fl t
-.Ar interface
-.Nm
-.Ic show-if
-.Op Oo Fl p Oc Fl o Ar field Ns Oo , Ns Ar field Oc Ns ...
-.Op Ar interface
-.Pp
-.Nm
-.Ic set-ifprop
-.Op Fl t
-.Fl p Ar prop Ns = Ns Ar value Ns Oo , Ns Ar value Oc Ns ...
-.Fl m Ar protocol
-.Ar interface
-.Nm
-.Ic reset-ifprop
-.Op Fl t
-.Fl p Ar prop
-.Fl m Ar protocol
-.Ar interface
-.Nm
-.Ic show-ifprop
-.Op Oo Fl c Oc Fl o Ar field Ns Oo , Ns Ar value Oc Ns ...
-.Op Fl p Ar prop Ns Oo , Ns Ar prop Oc Ns ...
-.Op Fl m Ar protocol
-.Op Ar interface
-.Pp
-.Nm
-.Ic create-addr
-.Op Fl t
-.Fl T Cm static
-.Op Fl d
-.Fl a Oo Cm local Ns | Ns Cm remote Ns = Oc Ns
-.Ar addr Ns Oo / Ns Ar prefixlen Oc Ns ...
-.Ar addrobj
-.Nm
-.Ic create-addr
-.Op Fl t
-.Fl T Cm dhcp
-.Op Fl 1
-.Op Fl h Ar hostname
-.Op Fl w Bro Ar seconds Ns | Ns Cm forever Brc
-.Ar addrobj
-.Nm
-.Ic create-addr
-.Op Fl t
-.Fl T Cm addrconf
-.Op Fl i Ar interface-id
-.Oo Fl p Bro Cm stateful Ns | Ns Cm stateless Brc Ns = Ns
-.Bro Cm yes Ns | Ns Cm no Brc Oc Ns ...
-.Ar addrobj
-.Nm
-.Ic delete-addr
-.Op Fl r
-.Ar addrobj
-.Nm
-.Ic show-addr
-.Op Oo Fl p Oc Fl o Ar field Ns Oo , Ns Ar field Oc Ns ...
-.Op Ar addrobj
-.Nm
-.Ic refresh-addr
-.Op Fl i
-.Ar addrobj
-.Nm
-.Ic down-addr
-.Op Fl t
-.Ar addrobj
-.Nm
-.Ic up-addr
-.Op Fl t
-.Ar addrobj
-.Nm
-.Ic disable-addr
-.Op Fl t
-.Ar addrobj
-.Nm
-.Ic enable-addr
-.Op Fl t
-.Ar addrobj
-.Pp
-.Nm
-.Ic set-addrprop
-.Op Fl t
-.Fl p Ar prop Ns = Ns Ar value Ns Oo , Ns Ar value Oc Ns ...
-.Ar addrobj
-.Nm
-.Ic reset-addrprop
-.Op Fl t
-.Fl p Ar prop
-.Ar addrobj
-.Nm
-.Ic show-addrprop
-.Op Oo Fl c Oc Fl o Ar field Ns Oo , Ns Ar field Oc Ns ...
-.Op Fl p Ar prop Ns Oo , Ns Ar prop Oc Ns ...
-.Op Ar addrobj
-.Pp
-.Nm
-.Ic set-prop
-.Op Fl t
-.Fl p Ar prop Ns Oo Cm + Ns | Ns Cm - Oc Ns = Ns
-.Ar value Ns Oo , Ns Ar value Oc Ns ...
-.Ar protocol
-.Nm
-.Ic reset-prop
-.Op Fl t
-.Fl p Ar prop
-.Ar protocol
-.Nm
-.Ic show-prop
-.Op Oo Fl c Oc Fl o Ar field Ns Oo , Ns Ar field Oc Ns ...
-.Op Fl p Ar prop Ns Oo , Ns Ar prop Oc Ns ...
-.Op Ar protocol
-.Sh DESCRIPTION
-The
-.Nm
-command is a stable replacement for the
-.Xr ifconfig 1M
-and
-.Xr ndd 1M
-commands.
-It is used to create IP interfaces and to configure IP addresses on those
-interfaces.
-It is also used to get, set or reset properties on interfaces, addresses and
-protocols.
-.Pp
-For subcommands that take an
-.Em addrobj ,
-the
-.Em addrobj
-specifies a unique address on the system.
-It is made up of two parts, delimited by a
-.Sq / .
-The first part is the name of the interface and the second part is a string up
-to 32 characters long.
-For example,
-.Qq lo0/v4
-is a loopback interface
-.Em addrobj
-name.
-.Pp
-For subcommands that take a
-.Em protocol ,
-this can be one of the following values:
-.Cm ip ,
-.Cm ipv4 ,
-.Cm ipv6 ,
-.Cm icmp ,
-.Cm tcp ,
-.Cm sctp
-or
-.Cm udp .
-.Sh SUBCOMMANDS
-When invoked with no arguments,
-.Nm
-shows the current address properties, in the same way as
-.Nm
-.Ic show-addr .
-.Pp
-The following subcommands are supported:
-.Pp
-.Bl -tag -compact -width Ds
-.It Xo
-.Nm
-.Ic help
-.Xc
-Display brief command usage.
-.Pp
-.It Xo
-.Nm
-.Ic create-if
-.Op Fl t
-.Ar interface
-.Xc
-.It Xo
-.Nm
-.Ic create-ip
-.Op Fl t
-.Ar interface
-.Xc
-Create an IP interface that will handle both IPv4 and IPv6 packets.
-The interface will be enabled as part of the creation process.
-The IPv4 interface will have the address 0.0.0.0.
-The IPv6 interface will have the address ::.
-The subcommands
-.Ic create-if
-and
-.Ic create-ip
-are functionally equivalent aliases of each other.
-.Bl -tag -width Ds
-.It Fl t Ns \&, Ns Fl -temporary
-Temporary, not persistent across reboots.
-.El
-.Pp
-.It Xo
-.Nm
-.Ic delete-if
-.Ar interface
-.Xc
-.It Xo
-.Nm
-.Ic delete-ip
-.Ar interface
-.Xc
-Permanently delete the specified IP interface.
-The subcommands
-.Ic delete-if
-and
-.Ic delete-ip
-are functionally equivalent aliases of each other.
-.Pp
-.It Xo
-.Nm
-.Ic create-ipmp
-.Op Fl t
-.Op Fl i Ar interface Ns Oo , Ns Ar interface Oc Ns ...
-.Ar ipmp-interface
-.Xc
-Create an IPMP interface that will handle both IPv4 and IPv6 packets.
-The interface will be enabled as part of the creation process.
-The IPv4 interface will have the address 0.0.0.0.
-The IPv6 interface will have the address ::.
-.Bl -tag -width Ds
-.It Fl i Ns \&, Ns Fl -interface
-Interface(s) to be added to the new IPMP interface.
-.It Fl t Ns \&, Ns Fl -temporary
-Temporary, not persistent across reboots.
-.El
-.Pp
-.It Xo
-.Nm
-.Ic delete-ipmp
-.Ar ipmp-interface
-.Xc
-Permanently delete the IPMP interface.
-.Pp
-.It Xo
-.Nm
-.Ic add-ipmp
-.Op Fl t
-.Fl i Ar interface Ns Oo , Ns Ar interface Oc Ns ...
-.Ar ipmp-interface
-.Xc
-Add the IP interface(s) to the IPMP interface.
-.Bl -tag -width ""
-.It Fl i Ns \&, Ns Fl -interface
-Interface(s) to be added to the IPMP interface.
-.It Fl t Ns \&, Ns Fl -temporary
-Temporary, not persistent across reboots.
-.El
-.Pp
-.It Xo
-.Nm
-.Ic remove-ipmp
-.Op Fl t
-.Fl i Ar interface Ns Oo , Ns Ar interface Oc Ns ...
-.Ar ipmp-interface
-.Xc
-Remove the IP interface(s) from the IPMP interface.
-.Bl -tag -width ""
-.It Fl i Ns \&, Ns Fl -interface
-Interface(s) to be removed from the IPMP interface.
-.It Fl t Ns \&, Ns Fl -temporary
-Temporary, not persistent across reboots.
-.El
-.Pp
-.It Xo
-.Nm
-.Ic disable-if
-.Fl t
-.Ar interface
-.Xc
-Disable the specified IP interface.
-.Bl -tag -width Ds
-.It Fl t Ns \&, Ns Fl -temporary
-Temporary, not persistent across reboots.
-.El
-.Pp
-.It Xo
-.Nm
-.Ic enable-if
-.Fl t
-.Ar interface
-.Xc
-Enable the specified IP interface.
-.Bl -tag -width Ds
-.It Fl t Ns \&, Ns Fl -temporary
-Temporary, not persistent across reboots.
-.El
-.Pp
-.It Xo
-.Nm
-.Ic show-if
-.Op Oo Fl p Oc Fl o Ar field Ns Oo , Ns Ar field Oc Ns ...
-.Op Ar interface
-.Xc
-Show the current IP interface configuration.
-.Bl -tag -width Ds
-.It Fl o Ns \&, Ns Fl -output
-Select which fields will be shown.
-The field value can be one of the following names:
-.Bl -tag -compact -width "PERSISTENT"
-.It Cm ALL
-Display all fields.
-.It Cm IFNAME
-The name of the interface.
-.It Cm STATE
-The state can be one of the following values:
-.Bl -tag -compact -width "disabled"
-.It Sy ok
-resources for the interface have been allocated
-.It Sy offline
-the interface is offline
-.It Sy failed
-the interface's datalink is down
-.It Sy down
-the interface is down
-.It Sy disabled
-the interface is disabled
-.El
-.It Cm CURRENT
-A set of single character flags indicating the following:
-.Bl -tag -compact -width "b"
-.It Sy b
-broadcast (mutually exclusive with
-.Sq p )
-.It Sy m
-multicast
-.It Sy p
-point-to-point (mutually exclusive with
-.Sq b )
-.It Sy v
-virtual interface
-.It Sy I
-IPMP
-.It Sy s
-IPMP standby
-.It Sy i
-IPMP inactive
-.It Sy V
-VRRP
-.It Sy a
-VRRP accept mode
-.It Sy 4
-IPv4
-.It Sy 6
-IPv6
-.El
-.It Cm PERSISTENT
-A set of single character flags showing what configuration will be used the
-next time the interface is enabled:
-.Bl -tag -compact -width "s"
-.It Sy s
-IPMP standby
-.It Sy 4
-IPv4
-.It Sy 6
-IPv6
-.El
-.El
-.It Fl p Ns \&, Ns Fl -parsable
-Print the output in a parsable format.
-.El
-.Pp
-.It Xo
-.Nm
-.Ic set-ifprop
-.Op Fl t
-.Fl p Ar prop Ns = Ns Ar value Ns Oo , Ns Ar value Oc Ns ...
-.Fl m Ar protocol
-.Ar interface
-.Xc
-Set a property's value(s) on the specified IP interface.
-.Bl -tag -width Ds
-.It Fl m Ns \&, Ns Fl -module
-Specify which protocol the setting applies to.
-.It Fl p Ns \&, Ns Fl -prop
-Specify the property name and value(s).
-The property name can be one of the following:
-.Bl -tag -compact -width "exchange_routes"
-.It Cm arp
-Address resolution protocol
-.Pq Cm on Ns / Ns Cm off .
-.It Cm exchange_routes
-Exchange of routing data
-.Pq Cm on Ns / Ns Cm off .
-.It Cm forwarding
-IP Forwarding
-.Pq Cm on Ns / Ns Cm off
-.It Cm metric
-Set the routing metric to the numeric value.
-The value is treated as extra hops to the destination.
-.It Cm mtu
-Set the maximum transmission unit to the numeric value.
-.It Cm nud
-Neighbor unreachability detection
-.Pq Cm on Ns / Ns Cm off
-.It Cm usesrc
-Indicates which interface to use for source address selection.
-A value
-.Cm none
-may also be used.
-.El
-.It Fl t Ns \&, Ns Fl -temporary
-Temporary, not persistent across reboots.
-.El
-.Pp
-.It Xo
-.Nm
-.Ic reset-ifprop
-.Op Fl t
-.Fl p Ar prop
-.Fl m Ar protocol
-.Ar interface
-.Xc
-Reset the specified IP interface's property value to the default.
-.Bl -tag -width Ds
-.It Fl m Ns \&, Ns Fl -module
-Specify which protocol the setting applies to.
-.It Fl p Ns \&, Ns Fl -prop
-Specify the property name.
-See the
-.Nm ipadm Ic set-ifprop
-subcommand for the list of property names.
-.It Fl t Ns \&, Ns Fl -temporary
-Temporary, not persistent across reboots.
-.El
-.Pp
-.It Xo
-.Nm
-.Ic show-ifprop
-.Op Oo Fl c Oc Fl o Ar field Ns Oo , Ns Ar value Oc Ns ...
-.Op Fl p Ar prop Ns Oo , Ns Ar prop Oc Ns ...
-.Op Fl m Ar protocol
-.Op Ar interface
-.Xc
-Display the property values for one or all of the IP interfaces.
-.Bl -tag -width Ds
-.It Fl c Ns \&, Ns Fl -parsable
-Print the output in a parsable format.
-.It Fl m Ns \&, Ns Fl -module
-Specify which protocol to display.
-.It Fl o Ns \&, Ns Fl -output
-Select which fields will be shown.
-The field value can be one of the following names:
-.Bl -tag -compact -width "PERSISTENT"
-.It Cm ALL
-Display all fields.
-.It Cm IFNAME
-The name of the interface.
-.It Cm PROPERTY
-The name of the property.
-.It Cm PROTO
-The name of the protocol.
-.It Cm PERM
-If the property is readable
-.Pq Qq r
-and/or writable
-.Pq Qq w .
-.It Cm CURRENT
-The value of the property.
-.It Cm PERSISTENT
-The persistent value of the property.
-.It Cm DEFAULT
-The default value of the property.
-.It Cm POSSIBLE
-The possible values for the property.
-.El
-.It Fl p Ns \&, Ns Fl -prop
-Specify which properties to display.
-See the
-.Nm ipadm Ic set-ifprop
-subcommand for the list of property names.
-.El
-.Pp
-.It Xo
-.Nm
-.Ic create-addr
-.Op Fl t
-.Fl T Cm static
-.Op Fl d
-.Fl a Oo Cm local Ns | Ns Cm remote Ns = Oc Ns
-.Ar addr Ns Oo / Ns Ar prefixlen Oc Ns ...
-.Ar addrobj
-.Xc
-Create an address on the specified IP interface using static configuration.
-The address will be enabled but can disabled using the
-.Nm ipadm Ic disable-addr
-subcommand.
-Note that
-.Cm addrconf
-address configured on the interface is required to configure
-.Cm static
-IPv6 address on the same interface.
-This takes the following options:
-.Bl -tag -width Ds
-.It Fl a Ns \&, Ns Fl -address
-Specify the address.
-The
-.Cm local
-or
-.Cm remote
-prefix can be used for a point-to-point interface.
-In this case, both addresses must be given.
-Otherwise, the equal sign
-.Pq Qq =
-should be omitted and the address should be provided by itself without second
-address.
-.It Fl d Ns \&, Ns Fl -down
-The address is down.
-.It Fl t Ns \&, Ns Fl -temporary
-Temporary, not persistent across reboots.
-.El
-.Pp
-.It Xo
-.Nm
-.Ic create-addr
-.Op Fl t
-.Fl T Cm dhcp
-.Op Fl 1
-.Op Fl h Ar hostname
-.Op Fl w Bro Ar seconds Ns | Ns Cm forever Brc
-.Ar addrobj
-.Xc
-Create an address on the specified IP interface using DHCP.
-This takes the following options:
-.Bl -tag -width Ds
-.It Fl 1 Ns \&, Ns Fl -primary
-Specify that the interface is primary.
-One effect will be that
-.Xr nodename 4
-will serve as
-.Fl h Ns \&, Ns Fl -reqhost
-if that switch is not otherwise specified.
-.It Fl h Ns \&, Ns Fl -reqhost
-Specify the host name to send to the DHCP server in order to request an
-association of a Fully Qualified Domain Name to the interface.
-An FQDN is determined from
-.Ar hostname
-if it is "rooted" (ending in a '.'), or if it consists of at least three
-DNS labels, or by appending to
-.Ar hostname
-the DNS domain name value configured in
-.Pa /etc/default/dhcpagent
-for
-.Xr dhcpagent 1m .
-N.b. that the DHCP server implementation ultimately determines whether and
-how the client-sent FQDN is used.
-.It Fl t Ns \&, Ns Fl -temporary
-Temporary, not persistent across reboots.
-.It Fl w Ns \&, Ns Fl -wait
-Specify the time, in seconds, that the command should wait to obtain an
-address; or specify
-.Cm forever
-to wait without interruption.
-The default value is 120.
-.El
-.Pp
-.It Xo
-.Nm
-.Ic create-addr
-.Op Fl t
-.Fl T Cm addrconf
-.Op Fl i Ar interface-id
-.Oo Fl p Bro Cm stateful Ns | Ns Cm stateless Brc Ns = Ns
-.Bro Cm yes Ns | Ns Cm no Brc Oc Ns ...
-.Ar addrobj
-.Xc
-Create an auto-configured address on the specified IP interface.
-This takes the following options:
-.Bl -tag -width Ds
-.It Fl i Ns \&, Ns Fl -interface-id
-Specify the interface ID to be used.
-.It Fl p Ns \&, Ns Fl -prop
-Specify which method of auto-configuration should be used.
-.It Fl t Ns \&, Ns Fl -temporary
-Temporary, not persistent across reboots.
-.El
-.Pp
-.It Xo
-.Nm
-.Ic delete-addr
-.Op Fl r
-.Ar addrobj
-.Xc
-Delete the given address.
-.Bl -tag -width Ds
-.It Fl r Ns \&, Ns Fl -release
-Indicate that the DHCP-assigned address should be released.
-.El
-.Pp
-.It Xo
-.Nm
-.Ic show-addr
-.Op Oo Fl p Oc Fl o Ar field Ns Oo , Ns Ar field Oc Ns ...
-.Op Ar addrobj
-.Xc
-Show the current address properties.
-.Bl -tag -width Ds
-.It Fl o Ns \&, Ns Fl -output
-Select which fields will be shown.
-The field value can be one of the following names:
-.Bl -tag -compact -width "PERSISTENT"
-.It Cm ALL
-Display all fields.
-.It Cm ADDROBJ
-The name of the address.
-.It Cm TYPE
-The type of the address
-.Pq Sy static Ns / Ns Sy dhcp Ns / Ns Sy addrconf .
-.It Cm STATE
-The state of the address.
-It can be one of the following values:
-.Bl -tag -compact -width "inaccessible"
-.It Sy disabled
-see the
-.Nm ipadm Ic disable-addr
-subcommand
-.It Sy down
-see the
-.Nm ipadm Ic down-addr
-subcommand
-.It Sy duplicate
-the address is duplicate
-.It Sy inaccessible
-the interface for this address has failed
-.It Sy ok
-the address is up
-.It Sy tentative
-duplicate address detection in progress
-.El
-.It Cm CURRENT
-A set of single character flags indicating the following:
-.Bl -tag -compact -width "U"
-.It Sy U
-up
-.It Sy u
-unnumbered
-.Pq matches another local address
-.It Sy p
-private, not advertised to routing
-.It Sy t
-temporary IPv6 address
-.It Sy d
-deprecated
-.Pq not used for outgoing packets
-.El
-.It Cm PERSISTENT
-A set of single character flags showing the configuration which will be used
-when the address is enabled.
-.Bl -tag -compact -width "U"
-.It Sy U
-up
-.It Sy p
-private, not advertised to routing
-.It Sy d
-deprecated
-.Pq not used for outgoing packets
-.El
-.It Cm ADDR
-The address.
-.El
-.It Fl p Ns \&, Ns Fl -parsable
-Print the output in a parsable format.
-.El
-.Pp
-.It Xo
-.Nm
-.Ic refresh-addr
-.Op Fl i
-.Ar addrobj
-.Xc
-Extend the lease for
-.Sy DHCP
-addresses.
-It also restarts duplicate address detection for
-.Cm static
-addresses.
-.Bl -tag -width ""
-.It Fl i Ns \&, Ns Fl -inform
-Obtain network configuration from DHCP without taking a lease on the address.
-.El
-.Pp
-.It Xo
-.Nm
-.Ic down-addr
-.Op Fl t
-.Ar addrobj
-.Xc
-Down the address.
-This will stop packets from being sent or received.
-.Bl -tag -width Ds
-.It Fl t Ns \&, Ns Fl -temporary
-Temporary, not persistent across reboots.
-.El
-.Pp
-.It Xo
-.Nm
-.Ic up-addr
-.Op Fl t
-.Ar addrobj
-.Xc
-Up the address.
-This will enable packets to be sent and received.
-.Bl -tag -width Ds
-.It Fl t Ns \&, Ns Fl -temporary
-Temporary, not persistent across reboots.
-.El
-.Pp
-.It Xo
-.Nm
-.Ic disable-addr
-.Op Fl t
-.Ar addrobj
-.Xc
-Disable the address.
-.Bl -tag -width Ds
-.It Fl t Ns \&, Ns Fl -temporary
-Temporary, not persistent across reboots.
-.El
-.Pp
-.It Xo
-.Nm
-.Ic enable-addr
-.Op Fl t
-.Ar addrobj
-.Xc
-Enable the address.
-.Bl -tag -width Ds
-.It Fl t Ns \&, Ns Fl -temporary
-Temporary, not persistent across reboots.
-.El
-.Pp
-.It Xo
-.Nm
-.Ic set-addrprop
-.Op Fl t
-.Fl p Ar prop Ns = Ns Ar value Ns Oo , Ns Ar value Oc Ns ...
-.Ar addrobj
-.Xc
-Set a property's value(s) on the addrobj.
-.Bl -tag -width Ds
-.It Fl p Ns \&, Ns Fl -prop
-Specify the property name and value(s).
-The property name can be one of the following:
-.Bl -tag -compact -width "deprecated"
-.It Cm broadcast
-The broadcast address (read-only).
-.It Cm deprecated
-The address should not be used to send packets but can still receive packets
-.Pq Cm on Ns / Ns Cm off .
-.It Cm prefixlen
-The number of bits in the IPv4 netmask or IPv6 prefix.
-.It Cm primary
-The DHCP primary interface flag (read-only).
-.It Cm private
-The address is not advertised to routing
-.Pq Cm on Ns / Ns Cm off .
-.It Cm reqhost
-The host name to send to the DHCP server in order to request an association
-of the FQDN to the interface.
-For a primary DHCP interface,
-.Xr nodename 4
-is sent if this property is not defined.
-See the
-.Nm
-.Ic create-addr
-.Fl T Cm dhcp
-subcommand for the explanation of how an FQDN is determined.
-.It Cm transmit
-Packets can be transmitted
-.Pq Cm on Ns / Ns Cm off .
-.It Cm zone
-The zone the addrobj is in (temporary-only--use
-.Xr zonecfg 1M
-to make persistent).
-.El
-.It Fl t Ns \&, Ns Fl -temporary
-Temporary, not persistent across reboots.
-.El
-.Pp
-.It Xo
-.Nm
-.Ic reset-addrprop
-.Op Fl t
-.Fl p Ar prop
-.Ar addrobj
-.Xc
-Reset the addrobj's property value to the default.
-.Bl -tag -width Ds
-.It Fl p Ns \&, Ns Fl -prop
-Specify the property name.
-See the
-.Nm ipadm Ic set-addrprop
-subcommand for the list of property names.
-.It Fl t Ns \&, Ns Fl -temporary
-Temporary, not persistent across reboots.
-.El
-.Pp
-.It Xo
-.Nm
-.Ic show-addrprop
-.Op Oo Fl c Oc Fl o Ar field Ns Oo , Ns Ar field Oc Ns ...
-.Op Fl p Ar prop Ns Oo , Ns Ar prop Oc Ns ...
-.Op Ar addrobj
-.Xc
-Display the property values for one or all of the addrobjs.
-.Bl -tag -width Ds
-.It Fl c Ns \&, Ns Fl -parsable
-Print the output in a parsable format.
-.It Fl o Ns \&, Ns Fl -output
-Select which fields will be shown.
-The field value can be one of the following names:
-.Bl -tag -compact -width "PERSISTENT"
-.It Cm ALL
-Display all fields.
-.It Cm ADDROBJ
-The name of the addrobj.
-.It Cm PROPERTY
-The name of the property.
-.It Cm PERM
-If the property is readable
-.Pq Qq r
-and/or writable
-.Pq Qq w .
-.It Cm CURRENT
-The value of the property.
-.It Cm PERSISTENT
-The persistent value of the property.
-.It Cm DEFAULT
-The default value of the property.
-.It Cm POSSIBLE
-The possible values for the property.
-.El
-.It Fl p Ns \&, Ns Fl -prop
-Specify which properties to display.
-See the
-.Nm ipadm Ic set-addrprop
-subcommand for the list of property names.
-.El
-.Pp
-.It Xo
-.Nm
-.Ic set-prop
-.Op Fl t
-.Fl p Ar prop Ns Oo Cm + Ns | Ns Cm - Oc Ns = Ns
-.Ar value Ns Oo , Ns Ar value Oc Ns ...
-.Ar protocol
-.Xc
-Set a property's value(s) on the protocol.
-.Bl -tag -width Ds
-.It Fl p Ns \&, Ns Fl -prop
-Specify the property name and value(s).
-The optional
-.Sy + Ns | Ns Sy -
-syntax can be used to add/remove values from the current list of values on the
-property.
-The property name can be one of the following:
-.Bl -tag -compact -width "smallest_nonpriv_port"
-.It Cm congestion_control
-The default congestion-control algorithm to be used for new connections
-.Pq TCP .
-.It Cm ecn
-Explicit congestion control
-.Pq Cm never Ns / Ns Cm passive Ns / Ns Cm active
-.Pq TCP .
-.It Cm extra_priv_ports
-Additional privileged ports
-.Pq SCTP/TCP/UDP .
-.It Cm forwarding
-Packet forwarding
-.Pq Cm on Ns / Ns Cm off .
-.It Cm hoplimit
-The IPv6 hoplimit.
-.It Cm hostmodel
-IP packet handling on multi-homed systems
-.Pq Cm weak Ns / Ns Cm strong Ns / Ns Cm src-priority
-.Pq IPv4/IPv6 .
-.Cm weak
-and
-.Cm strong
-correspond to the model definitions defined in RFC 1122.
-.Cm src-priority
-is a hybrid mode where outbound packets are sent from the interface with the
-packet's source address if possible.
-.It Cm largest_anon_port
-Largest ephemeral port
-.Pq SCTP/TCP/UDP .
-.It Cm max_buf
-Maximum receive or send buffer size
-.Pq ICMP/SCTP/TCP/UDP .
-This also sets the upper limit for the
-.Cm recv_buf
-and
-.Cm send_buf
-properties.
-.It Cm recv_buf
-Default receive buffer size
-.Pq ICMP/SCTP/TCP/UDP .
-The maximum value for this property is controlled by the
-.Cm max_buf
-property.
-.It Cm sack
-Selective acknowledgement
-.Pq Cm active Ns / Ns Cm passive Ns / Ns Cm never
-.Pq TCP .
-.It Cm send_buf
-Default send buffer size
-.Pq ICMP/SCTP/TCP/UDP .
-The maximum value for this property is controlled by the
-.Cm max_buf
-property.
-.It Cm smallest_anon_port
-Smallest ephemeral port
-.Pq SCTP/TCP/UDP .
-.It Cm smallest_nonpriv_port
-Smallest non-privileged port
-.Pq SCTP/TCP/UDP .
-.It Cm ttl
-The IPv4 time-to-live.
-.El
-.It Fl t Ns \&, Ns Fl -temporary
-Temporary, not persistent across reboots.
-.El
-.Pp
-.It Xo
-.Nm
-.Ic reset-prop
-.Op Fl t
-.Fl p Ar prop
-.Ar protocol
-.Xc
-Reset a protocol's property value to the default.
-.Bl -tag -width Ds
-.It Fl p Ns \&, Ns Fl -prop
-Specify the property name.
-See the
-.Nm ipadm Ic set-prop
-subcommand for the list of property names.
-.It Fl t Ns \&, Ns Fl -temporary
-Temporary, not persistent across reboots.
-.El
-.Pp
-.It Xo
-.Nm
-.Ic show-prop
-.Op Oo Fl c Oc Fl o Ar field Ns Oo , Ns Ar field Oc Ns ...
-.Op Fl p Ar prop Ns Oo , Ns Ar prop Oc Ns ...
-.Op Ar protocol
-.Xc
-Display the property values for one or all of the protocols.
-.Bl -tag -width Ds
-.It Fl c Ns \&, Ns Fl -parsable
-Print the output in a parsable format.
-.It Fl o Ns \&, Ns Fl -output
-Select which fields will be shown.
-The field value can be one of the following names:
-.Bl -tag -compact -width "PERSISTENT"
-.It Cm ALL
-Display all fields.
-.It Cm PROTO
-The name of the protocol.
-.It Cm PROPERTY
-The name of the property.
-.It Cm PERM
-If the property is readable
-.Pq Qq r
-and/or writable
-.Pq Qq w .
-.It Cm CURRENT
-The value of the property.
-.It Cm PERSISTENT
-The persistent value of the property.
-.It Cm DEFAULT
-The default value of the property.
-.It Cm POSSIBLE
-The possible values for the property.
-.El
-.It Fl p Ns \&, Ns Fl -prop
-Specify which properties to display.
-See the
-.Nm ipadm Ic set-prop
-subcommand for the list of property names.
-.El
-.El
-.Sh SEE ALSO
-.Xr arp 1M ,
-.Xr cfgadm 1M ,
-.Xr dhcpagent 1M ,
-.Xr dladm 1M ,
-.Xr if_mpadm 1M ,
-.Xr ifconfig 1M ,
-.Xr ndd 1M ,
-.Xr zonecfg 1M ,
-.Xr nodename 4 ,
-.Xr nsswitch.conf 4 ,
-.Xr dhcp 5
diff --git a/usr/src/man/man1m/ipdadm.1m b/usr/src/man/man1m/ipdadm.1m
deleted file mode 100644
index 90c396eef3..0000000000
--- a/usr/src/man/man1m/ipdadm.1m
+++ /dev/null
@@ -1,223 +0,0 @@
-'\" te
-.\" Copyright (c) 2012, Joyent, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH IPDADM 1M "Mar 1, 2012"
-.SH NAME
-ipdadm \- administer the Internet packet disturber
-.SH SYNOPSIS
-.LP
-.nf
-\fBipdadm\fR [\fB-z\fR \fIzonename\fR] \fIsubcommand\fR [\fIsubcommand-options\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The ipdadm utility is used to administer the illumos facility for simulating
-pathological networks by induce packet drops, delays, and corruption.
-
-This functionality is only able to the global zone and zones with exclusive
-networking stacks. If this is enabled for the global zone, any zone with a
-shared networking stack will be affected.
-
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB-z\fR
-.ad
-.sp .6
-.RS 4n
-The string of the zonename to control. If this is not specified, the current
-zone is used. For the list subcommand, this option is not supported.
-.RE
-
-.SH SUBCOMMANDS
-.sp
-.LP
-The following subcommands are supported:
-
-.sp
-.ne 2
-.na
-\fBcorrupt\fR \fIpercent\fR
-.ad
-.sp .6
-.RS 4n
-Sets the chance for packets to be corrupted to \fIpercent\fR which must be an
-integer between 0 and 100. Setting \fIpercent\fR to 0 disables packet corruption
-and is equivalent to calling \fBremove\fR \fIcorrupt\fR. When enabled, a random
-byte will have a single bit flipped.
-.sp
-.RE
-
-.sp
-.ne 2
-.na
-\fBdelay\fR \fImicroseconds\fR
-.ad
-.sp .6
-.RS 4n
-Inserts \fImicroseconds\fR of delay between both the transmit and receive of
-each packet. Setting \fImicroseconds\fR to zero is equivalent to calling
-\fBremove\fR \fIdelay\fR.
-.sp
-.RE
-
-.sp
-.ne 2
-.na
-\fBdrop\fR \fIpercent\fR
-.ad
-.sp .6
-.RS 4n
-Sets the chance for packets to be dropped to \fIpercent\fR. \fIpercent\fR must
-be an integer between 0 and 100. Setting \fIpercent\fR to zero is equivalent to
-calling \fBremove\fR \fIdrop\fR.
-.sp
-.RE
-
-.sp
-.ne 2
-.na
-\fBinfo\fR
-.ad
-.sp .6
-.RS 4n
-Prints the current values for packet corruption, packet dropping, and packet
-delay for the zone.
-.sp
-.RE
-
-.sp
-.ne 2
-.na
-\fBlist\fR
-.ad
-.sp .6
-.RS 4n
-Prints out the zonename of each zone that has active (non-zero) packet
-corruption, packet delay, and packet drop.
-.sp
-.RE
-
-.sp
-.ne 2
-.na
-\fBremove\fR \fIcorrupt\fR,\fIdelay\fR,\fIdrop\fR
-.ad
-.sp .6
-.RS 4n
-Disables the requested forms of packet perturbation for the zone. This is
-functionally equivalent to setting the value to zero. One or more of
-\fIcorrupt\fR, \fIdelay\fR, and \fIdrop\fR can be specified as a comma separated
-list.
-.sp
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRViewing zone information
-.sp
-.LP
-The following command illustrates how to obtain information about a specific
-zone while in the global zone.
-
-.sp
-.in +2
-.nf
-# \fBipdadm -z 949860c5-52e2-4f32-965d-02e60e116b72 info\fR
-ipd information for zone 949860c5-52e2-4f32-965d-02e60e116b72:
- corrupt: 0% chance of packet corruption
- drop: 0% chance of packet drop
- delay: 0 microsecond delay per packet
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRRemoving multiple perturbations
-.sp
-.LP
-The following command illustrates the use of the \fBremove\fR subcommand from
-inside of a zone.
-
-.sp
-.in +2
-.nf
-# \fBipdadm remove corrupt,drop\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fREnabling packet drops
-.sp
-.LP
-The following command illustrates the use of the \fBdrop\fR subcommand from the
-global zone.
-
-.sp
-.in +2
-.nf
-# \fBipdadm -z 949860c5-52e2-4f32-965d-02e60e116b72 drop 25\fR
-.fi
-.in -2
-.sp
-
-
-.SH EXIT STATUS
-.sp
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB0\fR
-.ad
-.RS 5n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB1\fR\fR
-.ad
-.RS 5n
-An error occurred.
-.sp
-.sp
-.ne 2
-.na
-\fB\fB2\fR\fR
-.ad
-.RS 5n
-Invalid command line options or arguments were specified.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBzonename\fR(1), \fBzoneadm\fR(1M), \fBattributes\fR(5), \fBzones(5)\fR
diff --git a/usr/src/man/man1m/ipf.1m b/usr/src/man/man1m/ipf.1m
deleted file mode 100644
index 121556e83c..0000000000
--- a/usr/src/man/man1m/ipf.1m
+++ /dev/null
@@ -1,545 +0,0 @@
-'\" te
-.\" To view license terms, attribution, and copyright for IP Filter, the default path is /usr/lib/ipf/IPFILTER.LICENCE. If the Solaris operating environment has been installed anywhere other than the default, modify the given path to access the file at the installed
-.\" location.
-.\" Portions Copyright (c) 2009, Sun Microsystems Inc. All Rights Reserved.
-.\" Portions Copyright (c) 2015, Joyent, Inc.
-.TH IPF 1M "May 17, 2020"
-.SH NAME
-ipf \- alter packet filtering lists for IP packet input and output
-.SH SYNOPSIS
-.nf
-\fBipf\fR [\fB-6AdDEGInoPRrsvVyzZ\fR] [\fB-l\fR block | pass | nomatch]
- [\fB-T\fR \fIoptionlist\fR] [\fB-F\fR i | o | a | s | S] \fB-f\fR \fIfilename\fR
- [\fB-f\fR \fIfilename\fR...] [\fIzonename\fR]
-.fi
-
-.SH DESCRIPTION
-The \fBipf\fR utility is part of a suite of commands associated with the
-Solaris IP Filter feature. See \fBipfilter\fR(5).
-.sp
-.LP
-The \fBipf\fR utility opens the filenames listed (treating a hyphen (\fB-\fR)
-as stdin) and parses the file for a set of rules which are to be added or
-removed from the packet filter rule set.
-.sp
-.LP
-If there are no parsing problems, each rule processed by \fBipf\fR is added to
-the kernel's internal lists. Rules are added to the end of the internal lists,
-matching the order in which they appear when given to \fBipf\fR.
-.sp
-.LP
-\fBipf\fR's use is restricted through access to \fB/dev/ipauth\fR,
-\fB/dev/ipl\fR, and \fB/dev/ipstate\fR. The default permissions of these files
-require \fBipf\fR to be run as root for all operations.
-.SS "Enabling Solaris IP Filter Feature"
-Solaris IP Filter is installed with the Solaris operating system. However,
-packet filtering is not enabled by default. Use the following procedure to
-activate the Solaris IP Filter feature.
-.RS +4
-.TP
-1.
-Assume a role that includes the IP Filter Management rights profile (see
-\fBrbac\fR(5)) or become superuser.
-.RE
-.RS +4
-.TP
-2.
-Configure system and services' firewall policies. See \fBsvc.ipfd\fR(1M) and
-\fBipf\fR(4).
-.RE
-.RS +4
-.TP
-3.
-(Optional) Create a network address translation (NAT) configuration file.
-See \fBipnat\fR(4).
-.RE
-.RS +4
-.TP
-4.
-(Optional) Create an address pool configuration file. See \fBippool\fR(4).
-.sp
-Create an \fBippool.conf\fR file if you want to refer to a group of addresses as
-a single address pool. If you want the address pool configuration file to be
-loaded at boot time, create a file called \fB/etc/ipf/ippool.conf\fR in which
-to put the address pool. If you do not want the address pool configuration file
-to be loaded at boot time, put the \fBippool.conf\fR file in a location other
-than \fB/etc/ipf\fR and manually activate the rules.
-.RE
-.RS +4
-.TP
-5.
-Enable Solaris IP Filter, as follows:
-.sp
-.in +2
-.nf
-# \fBsvcadm enable network/ipfilter\fR
-.fi
-.in -2
-.sp
-
-.RE
-.sp
-.LP
-To re-enable packet filtering after it has been temporarily disabled either
-reboot the machine or enter the following command:
-.sp
-.in +2
-.nf
-# \fBsvcadm enable network/ipfilter\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-\&...which essentially executes the following \fBipf\fR commands:
-.RS +4
-.TP
-1.
-Enable Solaris IP Filter:
-.sp
-.in +2
-.nf
-# \fBipf -E\fR
-.fi
-.in -2
-.sp
-
-.RE
-.RS +4
-.TP
-2.
-Load \fBippools\fR:
-.sp
-.in +2
-.nf
-\fB# ippool -f\fR \fI<ippool configuration file>\fR
-.fi
-.in -2
-.sp
-
-See \fBippool\fR(1M).
-.RE
-.RS +4
-.TP
-3.
-(Optional) Activate packet filtering:
-.sp
-.in +2
-.nf
-\fBipf -f\fR \fI<ipf configuration file>\fR
-.fi
-.in -2
-.sp
-
-.RE
-.RS +4
-.TP
-4.
-(Optional) Activate NAT:
-.sp
-.in +2
-.nf
-\fBipnat -f\fR \fI<IPNAT configuration file>\fR
-.fi
-.in -2
-.sp
-
-See \fBipnat\fR(1M).
-.RE
-.LP
-Note -
-.sp
-.RS 2
-If you reboot your system, the IPfilter configuration is automatically
-activated.
-.RE
-.SH OPTIONS
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-6\fR\fR
-.ad
-.sp .6
-.RS 4n
-This option is required to parse IPv6 rules and to have them loaded. Loading of
-IPv6 rules is subject to change in the future.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-A\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set the list to make changes to the active list (default).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-d\fR\fR
-.ad
-.sp .6
-.RS 4n
-Turn debug mode on. Causes a hex dump of filter rules to be generated as it
-processes each one.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-D\fR\fR
-.ad
-.sp .6
-.RS 4n
-Disable the filter (if enabled). Not effective for loadable kernel versions.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-E\fR\fR
-.ad
-.sp .6
-.RS 4n
-Enable the filter (if disabled). Not effective for loadable kernel versions.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-F\fR \fBi\fR | \fBo\fR | \fBa\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies which filter list to flush. The parameter should either be \fBi\fR
-(input), \fBo\fR (output) or \fBa\fR (remove all filter rules). Either a single
-letter or an entire word starting with the appropriate letter can be used. This
-option can be before or after any other, with the order on the command line
-determining that used to execute options.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-F\fR \fBs\fR | \fBS\fR\fR
-.ad
-.sp .6
-.RS 4n
-To flush entries from the state table, use the \fB-F\fR option in conjunction
-with either \fBs\fR (removes state information about any non-fully established
-connections) or \fBS\fR (deletes the entire state table). You can specify only
-one of these two options. A fully established connection will show up in
-\fBipfstat\fR \fB-s\fR output as \fB4/4\fR, with deviations either way
-indicating the connection is not fully established.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR \fIfilename\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies which files \fBipf\fR should use to get input from for modifying the
-packet filter rule lists.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-G\fR\fR
-.ad
-.sp .6
-.RS 4n
-Make changes to the Global Zone-controlled ipfilter for the zone given as an
-argument. See the \fBZONES\fR section for more information.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-I\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set the list to make changes to the inactive list.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR \fBpass\fR | \fBblock\fR | \fBnomatch\fR\fR
-.ad
-.sp .6
-.RS 4n
-Toggles default logging of packets. Valid arguments to this option are
-\fBpass\fR, \fBblock\fR and \fBnomatch\fR. When an option is set, any packet
-which exits filtering and matches the set category is logged. This is most
-useful for causing all packets that do not match any of the loaded rules to be
-logged.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR\fR
-.ad
-.sp .6
-.RS 4n
-Prevents \fBipf\fR from making any ioctl calls or doing anything which would
-alter the currently running kernel.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-o\fR\fR
-.ad
-.sp .6
-.RS 4n
-Force rules by default to be added/deleted to/from the output list, rather than
-the (default) input list.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-P\fR\fR
-.ad
-.sp .6
-.RS 4n
-Add rules as temporary entries in the authentication rule table.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-R\fR\fR
-.ad
-.sp .6
-.RS 4n
-Disable both IP address-to-hostname resolution and port number-to-service name
-resolution.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-r\fR\fR
-.ad
-.sp .6
-.RS 4n
-Remove matching filter rules rather than add them to the internal lists.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR\fR
-.ad
-.sp .6
-.RS 4n
-Swap the currently active filter list to be an alternative list.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-T\fR \fIoptionlist\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allows run-time changing of IPFilter kernel variables. To allow for changing,
-some variables require IPFilter to be in a disabled state (\fB-D\fR), others do
-not. The \fIoptionlist\fR parameter is a comma-separated list of tuning
-commands. A tuning command is one of the following:
-.sp
-.ne 2
-.na
-\fB\fBlist\fR\fR
-.ad
-.sp .6
-.RS 4n
-Retrieve a list of all variables in the kernel, their maximum, minimum, and
-current value.
-.RE
-
-.sp
-.ne 2
-.na
-\fBsingle variable name\fR
-.ad
-.sp .6
-.RS 4n
-Retrieve its current value.
-.RE
-
-.sp
-.ne 2
-.na
-\fBvariable name with a following assignment\fR
-.ad
-.sp .6
-.RS 4n
-To set a new value.
-.RE
-
-Examples follow:
-.sp
-.in +2
-.nf
-# Print out all IPFilter kernel tunable parameters
-ipf -T list
-
-# Display the current TCP idle timeout and then set it to 3600
-ipf -D -T fr_tcpidletimeout,fr_tcpidletimeout=3600 -E
-
-# Display current values for fr_pass and fr_chksrc, then set
-# fr_chksrc to 1.
-ipf -T fr_pass,fr_chksrc,fr_chksrc=1
-.fi
-.in -2
-.sp
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.sp .6
-.RS 4n
-Turn verbose mode on. Displays information relating to rule processing.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-V\fR\fR
-.ad
-.sp .6
-.RS 4n
-Show version information. This will display the version information compiled
-into the \fBipf\fR binary and retrieve it from the kernel code (if running or
-present). If it is present in the kernel, information about its current state
-will be displayed; for example, whether logging is active, default filtering,
-and so forth).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-y\fR\fR
-.ad
-.sp .6
-.RS 4n
-Manually resync the in-kernel interface list maintained by IP Filter with the
-current interface status list.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-z\fR\fR
-.ad
-.sp .6
-.RS 4n
-For each rule in the input file, reset the statistics for it to zero and
-display the statistics prior to them being zeroed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-Z\fR\fR
-.ad
-.sp .6
-.RS 4n
-Zero global statistics held in the kernel for filtering only. This does not
-affect fragment or state statistics.
-.RE
-
-.SH ZONES
-Each non-global zone has two ipfilter instances: the in-zone ipfilter, which
-can be controlled from both the zone itself and the global zone, and the
-Global Zone-controlled (GZ-controlled) instance, which can only be controlled
-from the Global Zone. The non-global zone is not able to observe or control
-the GZ-controlled ipfilter.
-
-ipf optionally takes a zone name as an argument, which will change the
-ipfilter settings for that zone, rather than the current one. The zonename
-option is only available in the Global Zone. Using it in any other zone will
-return an error. If the \fB-G\fR option is specified with this argument, the
-Global Zone-controlled ipfilter is operated on. If \fB-G\fR is not specified,
-the in-zone ipfilter is operated on. Note that ipf differs from the other
-ipfilter tools in how the zone name is specified. It takes the zone name as the
-last argument, while all of the other tools take the zone name as an argument
-to the \fB-G\fR and \fB-z\fR options.
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/dev/ipauth\fR\fR
-.ad
-.br
-.na
-\fB\fB/dev/ipl\fR\fR
-.ad
-.br
-.na
-\fB\fB/dev/ipstate\fR\fR
-.ad
-.sp .6
-.RS 4n
-Links to IP Filter pseudo devices.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/ipf/ipf.conf\fR\fR
-.ad
-.sp .6
-.RS 4n
-Location of \fBipf\fR startup configuration file. See \fBipf\fR(4).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/share/ipfilter/examples/\fR\fR
-.ad
-.sp .6
-.RS 4n
-Contains numerous IP Filter examples.
-.RE
-
-.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Committed
-.TE
-
-.SH SEE ALSO
-\fBipfstat\fR(1M), \fBipmon\fR(1M), \fBipnat\fR(1M), \fBippool\fR(1M),
-\fBsvcadm\fR(1M), \fBsvc.ipfd\fR(1M), \fBipf\fR(4), \fBipnat\fR(4),
-\fBippool\fR(4), \fBattributes\fR(5), \fBipfilter\fR(5), \fBzones(5)\fR
-.sp
-.LP
-\fI\fR
-.SH DIAGNOSTICS
-Needs to be run as root for the packet filtering lists to actually be affected
-inside the kernel.
diff --git a/usr/src/man/man1m/ipfs.1m b/usr/src/man/man1m/ipfs.1m
deleted file mode 100644
index 38a7f50c7b..0000000000
--- a/usr/src/man/man1m/ipfs.1m
+++ /dev/null
@@ -1,246 +0,0 @@
-'\" te
-.\" To view license terms, attribution, and copyright for IP Filter, the default path is /usr/lib/ipf/IPFILTER.LICENCE. If the Solaris operating environment has been installed anywhere other than the default, modify the given path to access the file at the installed
-.\" location.
-.\" Portions Copyright (c) 2008, Sun Microsystems Inc. All Rights Reserved.
-.\" Portions Copyright (c) 2013, Joyent, Inc. All Rights Reserved.
-.TH IPFS 1M "Oct 30, 2013"
-.SH NAME
-ipfs \- saves and restores information for NAT and state tables
-.SH SYNOPSIS
-.LP
-.nf
-\fBipfs\fR [\fB-G\fR | \fB-z\fR \fIzonename\fR] [\fB-nv\fR] \fB-l\fR
-.fi
-
-.LP
-.nf
-\fBipfs\fR [\fB-G\fR | \fB-z\fR \fIzonename\fR] [\fB-nv\fR] \fB-u\fR
-.fi
-
-.LP
-.nf
-\fBipfs\fR [\fB-G\fR | \fB-z\fR \fIzonename\fR] [\fB-nv\fR] [\fB-d\fR \fIdirname\fR] \fB-R\fR
-.fi
-
-.LP
-.nf
-\fBipfs\fR [\fB-G\fR | \fB-z\fR \fIzonename\fR] [\fB-nv\fR] [\fB-d\fR \fIdirname\fR] \fB-W\fR
-.fi
-
-.LP
-.nf
-\fBipfs\fR [\fB-G\fR | \fB-z\fR \fIzonename\fR] [\fB-nNSv\fR] [\fB-f\fR \fIfilename\fR] \fB-r\fR
-.fi
-
-.LP
-.nf
-\fBipfs\fR [\fB-G\fR | \fB-z\fR \fIzonename\fR] [\fB-nNSv\fR] [\fB-f\fR \fIfilename\fR] \fB-w\fR
-.fi
-
-.LP
-.nf
-\fBipfs\fR [\fB-G\fR | \fB-z\fR \fIzonename\fR] [\fB-nNSv\fR] \fB-f\fR \fIfilename\fR \fB-i\fR \fI<if1>\fR,\fI<if2>\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBipfs\fR utility enables the saving of state information across reboots.
-Specifically, the utility allows state information created for NAT entries and
-rules using "keep state" to be locked (modification prevented) and then saved
-to disk. Then, after a reboot, that information is restored. The result of this
-state-saving is that connections are not interrupted.
-.SH OPTIONS
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-d\fR\fR
-.ad
-.RS 6n
-Change the default directory used with \fB-R\fR and \fB-W\fR options for saving
-state information.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR\fR
-.ad
-.RS 6n
-Do not take any action that would affect information stored in the kernel or on
-disk.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.RS 6n
-Provides a verbose description of \fBipfs\fR activities.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-N\fR\fR
-.ad
-.RS 6n
-Operate on NAT information.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-S\fR\fR
-.ad
-.RS 6n
-Operate on filtering state information.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-u\fR\fR
-.ad
-.RS 6n
-Unlock state tables in the kernel.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR\fR
-.ad
-.RS 6n
-Lock state tables in the kernel.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-r\fR\fR
-.ad
-.RS 6n
-Read information in from the specified file and load it into the kernel. This
-requires the state tables to have already been locked and does not change the
-lock once complete.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-w\fR\fR
-.ad
-.RS 6n
-Write information out to the specified file and from the kernel. This requires
-the state tables to have already been locked and does not change the lock once
-complete.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-R\fR\fR
-.ad
-.RS 6n
-Restores all saved state information, if any, from two files, \fBipstate.ipf\fR
-and \fBipnat.ipf\fR, stored in the \fB/var/db/ipf\fR directory. This directory
-can be changed with the \fB-d\fR option. The state tables are locked at the
-beginning of this operation and unlocked once complete.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-W\fR\fR
-.ad
-.RS 6n
-Saves in-kernel state information, if any, out to two files, \fBipstate.ipf\fR
-and \fBipnat.ipf\fR, stored in the \fB/var/db/ipf\fR directory. This directory
-can be changed with the \fB-d\fR option. The state tables are locked at the
-beginning of this operation and unlocked once complete.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-z\fR \fIzonename\fR\fR
-.ad
-.RS 6n
-Operate on the in-zone state information for the specified zone. If neither
-this option nor \fB-G\fR is specified, the current zone is used. This command
-is only available in the Global Zone. See \fBZONES\fR in \fBipf\fR(1m) for
-more information.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-G\fR \fIzonename\fR\fR
-.ad
-.RS 6n
-Operate on the global zone controlled state information for the specified
-zone. If neither this option nor \fB-z\fR is specified, the current zone is
-used. This command is only available in the Global Zone. See \fBZONES\fR in
-\fBipf\fR(1m) for more information.
-.RE
-
-.SH FILES
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fB/var/db/ipf/ipstate.ipf\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fB/var/db/ipf/ipnat.ipf\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fB/dev/ipl\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fB/dev/ipstate\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fB/dev/ipnat\fR
-.RE
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Committed
-.TE
-
-.SH SEE ALSO
-.LP
-\fBipf\fR(1M), \fBipmon\fR(1M), \fBipnat\fR(1M), \fBattributes\fR(5),
-\fBzones(5)\fR
-.SH DIAGNOSTICS
-.LP
-Arguably, the \fB-W\fR and \fB-R\fR operations should set the locking and,
-rather than undo it, restore it to what it was previously.
-.sp
-.LP
-Fragment table information is currently not saved.
diff --git a/usr/src/man/man1m/ipfstat.1m b/usr/src/man/man1m/ipfstat.1m
deleted file mode 100644
index ba47f78725..0000000000
--- a/usr/src/man/man1m/ipfstat.1m
+++ /dev/null
@@ -1,423 +0,0 @@
-'\" te
-.\" To view license terms, attribution, and copyright for IP Filter, the default path is /usr/lib/ipf/IPFILTER.LICENCE. If the Solaris operating environment has been installed anywhere other than the default, modify the given path to access the file at the installed
-.\" location.
-.\" Portions Copyright (c) 2008, Sun Microsystems Inc. All Rights Reserved.
-.\" Portions Copyright (c) 2013, Joyent, Inc. All Rights Reserved.
-.TH IPFSTAT 1M "Oct 30, 2013"
-.SH NAME
-ipfstat \- reports on packet filter statistics and filter list
-.SH SYNOPSIS
-.LP
-.nf
-\fBipfstat\fR [\fB-6aACdfghIilnoRstv\fR]
-.fi
-
-.LP
-.nf
-\fBipfstat\fR [\fB-C\fR] [\fB-D\fR \fIaddrport\fR] [\fB-P\fR \fIprotocol\fR] [\fB-S\fR \fIaddrport\fR]
- [\fB-T\fR \fIrefreshtime\fR] [\fB-G\fR | \fB-z\fR \fIzonename\fR]
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBipfstat\fR command is part of a suite of commands associated with the
-Solaris IP Filter feature. See \fBipfilter\fR(5).
-.sp
-.LP
-The \fBipfstat\fR command examines \fB/dev/kmem\fR using the symbols
-\fB_fr_flags\fR, \fB_frstats\fR, \fB_filterin\fR, and \fB_filterout\fR. To run
-and work, it needs to be able to read both \fB/dev/kmem\fR and the kernel
-itself.
-.sp
-.LP
-The default behavior of \fBipfstat\fR is to retrieve and display the statistics
-which have been accumulated over time as the kernel has put packets through the
-filter.
-.sp
-.LP
-The role of \fBipfstat\fR is to display current kernel statistics gathered as a
-result of applying the filters in place (if any) to packets going in and out of
-the kernel. This is the default operation when no command line parameters are
-present. When supplied with either \fB-i\fR or \fB-o\fR, \fBipfstat\fR will
-retrieve and display the appropriate list of filter rules currently installed
-and in use by the kernel.
-.sp
-.LP
-\fBipfstat\fR uses kernel device files to obtain information. The default
-permissions of these files require \fBipfstat\fR to be run as root for all
-operations.
-.sp
-.LP
-The \fBipfstat\fR command supports the \fBkstat\fR(3KSTAT) kernel facility.
-Because of this support, as an alternative to \fBipfstat\fR, you can use
-\fBkstat\fR(1M). For example:
-.sp
-.LP
-# kstat \(hym ipf
-.sp
-.LP
-Using the \fBipfstat\fR \fB-t\fR option causes \fBipfstat\fR to enter the state
-top mode. In this mode the state table is displayed similarly to the way the
-Unix \fBtop\fR utility displays the process table. The \fB-C\fR, \fB-D\fR,
-\fB-P\fR, \fB-S\fR and \fB-T\fR command line options can be used to restrict
-the state entries that will be shown and to specify the frequency of display
-updates.
-.sp
-.LP
-In state top mode, use the following keys to influence the displayed
-information:
-.sp
-.ne 2
-.na
-\fB\fBd\fR\fR
-.ad
-.RS 5n
-Select information to display.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBl\fR\fR
-.ad
-.RS 5n
-Redraw the screen.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBq\fR\fR
-.ad
-.RS 5n
-Quit the program.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBs\fR\fR
-.ad
-.RS 5n
-Switch between different sorting criteria.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBr\fR\fR
-.ad
-.RS 5n
-Reverse the sorting criteria.
-.RE
-
-.sp
-.LP
-States can be sorted by protocol number, by number of IP packets, by number of
-bytes, and by time-to-live of the state entry. The default is to sort by the
-number of bytes. States are sorted in descending order, but you can use the
-\fBr\fR key to sort them in ascending order.
-.sp
-.LP
-It is not possible to interactively change the source, destination, and
-protocol filters or the refresh frequency. This must be done from the command
-line.
-.sp
-.LP
-The screen must have at least 80 columns for correct display. However,
-\fBipfstat\fR does not check the screen width.
-.sp
-.LP
-Only the first \fIX\fR-5 entries that match the sort and filter criteria are
-displayed (where \fIX\fR is the number of rows on the display). There is no way
-to see additional entries.
-.SH OPTIONS
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-6\fR\fR
-.ad
-.RS 18n
-Display filter lists and states for IPv6, if available. This option might
-change in the future.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-a\fR\fR
-.ad
-.RS 18n
-Display the accounting filter list and show bytes counted against each rule.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-A\fR\fR
-.ad
-.RS 18n
-Display packet authentication statistics.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-C\fR\fR
-.ad
-.RS 18n
-Valid only in combination with \fB-t\fR. Display "closed" states as well in the
-top. Normally, a TCP connection is not displayed when it reaches the
-\fBCLOSE_WAIT\fR protocol state. With this option enabled, all state entries
-are displayed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-d\fR\fR
-.ad
-.RS 18n
-Produce debugging output when displaying data.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-D\fR \fIaddrport\fR\fR
-.ad
-.RS 18n
-Valid only in combination with \fB-t\fR. Limit the state top display to show
-only state entries whose destination IP address and port match the
-\fIaddrport\fR argument. The \fIaddrport\fR specification is of the form
-\fIipaddress\fR[,\fIport\fR]. The \fIipaddress\fR and \fIport\fR should be
-either numerical or the string \fBany\fR (specifying any IP address and any
-port, in that order). If the \fB-D\fR option is not specified, it defaults to
-\fB-D\fR \fBany,any\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR\fR
-.ad
-.RS 18n
-Show fragment state information (statistics) and held state information (in the
-kernel) if any is present.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-g\fR\fR
-.ad
-.RS 18n
-Show groups currently configured (both active and inactive).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-h\fR\fR
-.ad
-.RS 18n
-Show per-rule the number of times each one scores a "hit". For use in
-combination with \fB-i\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-i\fR\fR
-.ad
-.RS 18n
-Display the filter list used for the input side of the kernel IP processing.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-I\fR\fR
-.ad
-.RS 18n
-Swap between retrieving \fBinactive\fR/\fBactive\fR filter list details. For
-use in combination with \fB-i\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR\fR
-.ad
-.RS 18n
-When used with \fB-s\fR, show a list of active state entries (no statistics).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR\fR
-.ad
-.RS 18n
-Show the rule number for each rule as it is printed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-o\fR\fR
-.ad
-.RS 18n
-Display the filter list used for the output side of the kernel IP processing.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-P\fR \fIprotocol\fR\fR
-.ad
-.RS 18n
-Valid only in combination with \fB-t\fR. Limit the state top display to show
-only state entries that match a specific protocol. The argument can be a
-protocol name (as defined in \fB/etc/protocols\fR) or a protocol number. If
-this option is not specified, state entries for any protocol are specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-R\fR\fR
-.ad
-.RS 18n
-Disable both IP address-to-hostname resolution and port number-to-service name
-resolution.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-S\fR \fIaddrport\fR\fR
-.ad
-.RS 18n
-Valid only in combination with \fB-t\fR. Limit the state top display to show
-only state entries whose source IP address and port match the \fIaddrport\fR
-argument. The \fIaddrport\fR specification is of the form
-\fIipaddress\fR[,\fIport\fR]. The \fIipaddress\fR and \fIport\fR should be
-either numerical or the string \fBany\fR (specifying any IP address and any
-port, in that order). If the \fB-S\fR option is not specified, it defaults to
-\fB-S\fR \fBany,any\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR\fR
-.ad
-.RS 18n
-Show packet/flow state information (statistics only).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-T\fR \fIrefreshtime\fR\fR
-.ad
-.RS 18n
-Valid only in combination with \fB-t\fR. Specifies how often the state
-\fBtop\fR display should be updated. The refresh time is the number of seconds
-between an update. Any positive integer can be used. The default (and minimal
-update time) is 1.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-t\fR\fR
-.ad
-.RS 18n
-Show the state table in a way similar to the way the Unix utility, \fBtop\fR,
-shows the process table. States can be sorted in a number of different ways.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.RS 18n
-Turn verbose mode on. Displays additional debugging information.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-z\fR \fIzonename\fR\fR
-.ad
-.RS 18n
-Report the in-zone statistics for the specified zone. If neither this option
-nor \fB-G\fR is specified, the current zone is used. This command is only
-available in the Global Zone. See \fBZONES\fR in \fBipf\fR(1m) for more
-information.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-G\fR \fIzonename\fR\fR
-.ad
-.RS 18n
-Report the global zone controlled statistics for the specified zone. If
-neither this option nor \fB-z\fR is specified, the current zone is used. This
-command is only available in the Global Zone. See \fBZONES\fR in \fBipf\fR(1m)
-for more information.
-.RE
-
-.SH FILES
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fB/dev/kmem\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fB/dev/ksyms\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fB/dev/ipl\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fB/dev/ipstate\fR
-.RE
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Committed
-.TE
-
-.SH SEE ALSO
-.LP
-\fBipf\fR(1M), \fBkstat\fR(1M), \fBkstat\fR(3KSTAT), \fBattributes\fR(5),
-\fBipfilter\fR(5), \fBzones(5)\fR
-.sp
-.LP
-\fI\fR
diff --git a/usr/src/man/man1m/ipmon.1m b/usr/src/man/man1m/ipmon.1m
deleted file mode 100644
index 8873fe41c1..0000000000
--- a/usr/src/man/man1m/ipmon.1m
+++ /dev/null
@@ -1,416 +0,0 @@
-'\" te
-.\" To view license terms, attribution, and copyright for IP Filter, the default path is /usr/lib/ipf/IPFILTER.LICENCE. If the Solaris operating environment has been installed anywhere other than the default, modify the given path to access the file at the installed
-.\" location.
-.\" Portions Copyright (c) 2008, Sun Microsystems Inc. All Rights Reserved.
-.\" Portions Copyright (c) 2013, Joyent, Inc. All Rights Reserved.
-.TH IPMON 1M "Oct 30, 2013"
-.SH NAME
-ipmon \- monitors /dev/ipl for logged packets
-.SH SYNOPSIS
-.LP
-.nf
-\fBipmon\fR [\fB-abDFhnpstvxX\fR] [\fB-N\fR \fIdevice\fR] [ [o] [NSI]] [\fB-O\fR [NSI]]
- [\fB-P\fR \fIpidfile\fR] [\fB-S\fR \fIdevice\fR] [\fB-f\fR \fIdevice\fR] [\fB-G\fR | \fB-z\fR \fIzonename\fR] [\fIfilename\fR]
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBipmon\fR command is part of a suite of commands associated with the
-Solaris IP Filter feature. See \fBipfilter\fR(5).
-.sp
-.LP
-The \fBipmon\fR command opens \fB/dev/ipl\fR for reading and awaits data to be
-saved from the packet filter. The binary data read from the device is reprinted
-in human readable form. However, IP addresses are not mapped back to hostnames,
-nor are ports mapped back to service names. The output goes to standard output,
-by default, or a filename, if specified on the command line. Should the
-\fB-s\fR option be used, output is sent instead to \fBsyslogd\fR(1M). Messages
-sent by means of \fBsyslog\fR have the day, month, and year removed from the
-message, but the time (including microseconds), as recorded in the log, is
-still included.
-.sp
-.LP
-Messages generated by \fBipmon\fR consist of whitespace-separated fields.
-Fields common to all messages are:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The date of packet receipt. This is suppressed when the message is sent to
-\fBsyslog\fR.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The time of packet receipt. This is in the form
-\fIHH\fR:\fIMM\fR:\fISS\fR.\fIF\fR, for hours, minutes, seconds, and fractions
-of a second (which can be several digits long).
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The name of the interface on which the packet was processed, for example,
-\fBib1\fR.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The group and rule number of the rule, for example, \fB@0:17\fR. These can be
-viewed with \fBipfstat\fR \fB-in\fR for input rules or \fBipfstat\fR \fB-in\fR
-for output rules. See \fBipfstat\fR(1M).
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The action: \fBp\fR for passed, \fBb\fR for blocked, \fBs\fR for a short
-packet, \fBn\fR did not match any rules, or \fBL\fR for a log rule.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The addresses. This is actually three fields: the source address and port
-(separated by a comma), the symbol \(->, and the destination address and port.
-For example: \fB209.53.17.22,80 \(-> 198.73.220.17,1722\fR.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBPR\fR followed by the protocol name or number, for example, \fBPR tcp\fR.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBlen\fR followed by the header length and total length of the packet, for
-example, \fBlen 20 40\fR.
-.RE
-.sp
-.LP
-If the packet is a TCP packet, there will be an additional field starting with
-a hyphen followed by letters corresponding to any flags that were set. See
-\fBipf.conf\fR(4) for a list of letters and their flags.
-.sp
-.LP
-If the packet is an ICMP packet, there will be two fields at the end, the first
-always being \fBicmp\fR, the next being the ICMP message and submessage type,
-separated by a slash. For example, \fBicmp 3/3\fR for a port unreachable
-message.
-.SH OPTIONS
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-a\fR\fR
-.ad
-.sp .6
-.RS 4n
-Open all of the device logfiles for reading log entries. All entries are
-displayed to the same output device (stderr or syslog).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-b\fR\fR
-.ad
-.sp .6
-.RS 4n
-For rules which log the body of a packet, generate hex output representing the
-packet contents after the headers.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-D\fR\fR
-.ad
-.sp .6
-.RS 4n
-Cause \fBipmon\fR to turn itself into a daemon. Using subshells or
-backgrounding of \fBipmon\fR is not required to turn it into an orphan so it
-can run indefinitely.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR \fIdevice\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify an alternative device/file from which to read the log information for
-normal IP Filter log records.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-F\fR\fR
-.ad
-.sp .6
-.RS 4n
-Flush the current packet log buffer. The number of bytes flushed is displayed,
-even if the result is zero.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-h\fR\fR
-.ad
-.sp .6
-.RS 4n
-Displays usage information.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR\fR
-.ad
-.sp .6
-.RS 4n
-IP addresses and port numbers will be mapped, where possible, back into
-hostnames and service names.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-N\fR \fIdevice\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set the logfile to be opened for reading NAT log records from or to
-\fIdevice\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-o\fR \fIletter\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify which log files from which to actually read data. \fBN\fR, NAT logfile;
-\fBS\fR, state logfile; \fBI\fR, normal IP Filter logfile. The \fB-a\fR option
-is equivalent to using \fB-o\fR \fBNSI\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-O\fR \fIletter\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify which log files you do not wish to read from. This is most commonly
-used in conjunction with the \fB-a\fR. Letters available as parameters are the
-same as for \fB-o\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR\fR
-.ad
-.sp .6
-.RS 4n
-Cause the port number in log messages always to be printed as a number and
-never attempt to look it up.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-P\fR \fIpidfile\fR\fR
-.ad
-.sp .6
-.RS 4n
-Write the PD of the \fBipmon\fR process to a file. By default this is
-\fB/var/run/ipmon.pid\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR\fR
-.ad
-.sp .6
-.RS 4n
-Packet information read in will be sent through \fBsyslogd\fR rather than saved
-to a file. The default facility when compiled and installed is \fBlocal0\fR.
-The following levels are used:
-.sp
-.ne 2
-.na
-\fB\fBLOG_INFO\fR\fR
-.ad
-.sp .6
-.RS 4n
-Packets logged using the \fBlog\fR keyword as the action rather than \fBpass\fR
-or \fBblock\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBLOG_NOTICE\fR\fR
-.ad
-.sp .6
-.RS 4n
-Packets logged that are also passed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBLOG_WARNING\fR\fR
-.ad
-.sp .6
-.RS 4n
-Packets logged that are also blocked.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBLOG_ERR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Packets that have been logged and that can be considered "short".
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-S\fR \fIdevice\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set the logfile to be opened for reading state log records from or to
-\fIdevice\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-t\fR\fR
-.ad
-.sp .6
-.RS 4n
-Read the input file/device in the way performed by \fBtail\fR(1).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.sp .6
-.RS 4n
-Show TCP \fBwindow\fR, \fBack\fR, and \fBsequence\fR fields
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-x\fR\fR
-.ad
-.sp .6
-.RS 4n
-Show the packet data in hex.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-X\fR\fR
-.ad
-.sp .6
-.RS 4n
-Show the log header record data in hex.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-z\fR \fIzonename\fR\fR
-.ad
-.sp .6
-.RS 4n
-Monitor packets the specified zone's in-zone filter. If neither this option
-nor \fB-G\fR is specified, the current zone is used. This command is only
-available in the Global Zone. See \fBZONES\fR in \fBipf\fR(1m) for more
-information.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-G\fR \fIzonename\fR\fR
-.ad
-.sp .6
-.RS 4n
-Monitor packets for the specified zone's global zone controlled filter. If
-neither this option nor \fB-z\fR is specified, the current zone is used. This
-command is only available in the Global Zone. See \fBZONES\fR in \fBipf\fR(1m)
-for more information.
-.RE
-
-.SH FILES
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fB/dev/ipl\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fB/dev/ipnat\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fB/dev/ipstate\fR
-.RE
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Committed
-.TE
-
-.SH SEE ALSO
-.LP
-\fBipf\fR(1M), \fBipfstat\fR(1M), \fBipnat\fR(1M), \fBattributes\fR(5),
-\fBipfilter\fR(5), \fBzones(5)\fR
-.sp
-.LP
-\fI\fR
-.SH DIAGNOSTICS
-.LP
-\fBipmon\fR expects data that it reads to be consistent with how it should be
-saved and aborts if it fails an assertion which detects an anomaly in the
-recorded data.
diff --git a/usr/src/man/man1m/ipmpstat.1m b/usr/src/man/man1m/ipmpstat.1m
deleted file mode 100644
index 6a9d793c4d..0000000000
--- a/usr/src/man/man1m/ipmpstat.1m
+++ /dev/null
@@ -1,856 +0,0 @@
-'\" te
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH IPMPSTAT 1M "April 9, 2016"
-.SH NAME
-ipmpstat \- display IPMP subsystem status
-.SH SYNOPSIS
-.LP
-.nf
-\fBipmpstat\fR [\fB-n\fR] [\fB-o\fR \fIfield\fR[,...] [\fB-P\fR]] \fB-a\fR|\fB-g\fR|\fB-i\fR|\fB-p\fR|\fB-t\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBipmpstat\fR command concisely displays information about the IPMP
-subsystem. It supports five different output modes, each of which provides a
-different view of the IPMP subsystem (address, group, interface, probe, and
-target), described below. At most one output mode may be specified per
-invocation, and the displayed information is guaranteed to be self-consistent.
-It also provides a parsable output format which may be used by scripts to
-examine the state of the IPMP subsystem. Only basic privileges are needed to
-invoke \fBipmpstat\fR, with the exception of probe mode which requires all
-privileges.
-.SH OPTIONS
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-a\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display IPMP data address information ("address" output mode).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-g\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display IPMP group information ("group" output mode).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-i\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display IP interface information ("interface" output mode).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display IP addresses numerically, rather than attempting to resolve them to
-hostnames. This option may be used in any output mode.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-o\fR \fIfield\fR[,...]\fR
-.ad
-.sp .6
-.RS 4n
-Display only the specified output fields, in order. The list of field names is
-case-insensitive and comma-separated. The field names that are supported depend
-on the selected output mode, described below. The special field name \fBall\fR
-may be used to display all fields for a given output mode.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display IPMP probe information ("probe" output mode).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-t\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display IPMP target information ("target" output mode).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-P\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display using a machine-parsable format, described below. If this option is
-specified, an explicit list of fields must be specified using the \fB-o\fR
-option.
-.RE
-
-.SH OUTPUT MODES
-.LP
-The \fBipmpstat\fR utility supports the output modes listed below. Note that
-these modes map to some of the options described above.
-.sp
-.ne 2
-.na
-\fBAddress Mode\fR
-.ad
-.sp .6
-.RS 4n
-Address mode displays the state of all IPMP data addresses on the system. The
-following output fields are supported:
-.sp
-.ne 2
-.na
-\fB\fBADDRESS\fR\fR
-.ad
-.sp .6
-.RS 4n
-The hostname (or IP address) associated with the information. Note that because
-duplicate down addresses may exist, the address must be taken together with the
-\fBGROUP\fR to form a unique identity. For a given IPMP group, if duplicate
-addresses exist, at most one will be displayed, and an up address will always
-take precedence.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSTATE\fR\fR
-.ad
-.sp .6
-.RS 4n
-The state of the address. Either \fBup\fR if the address is \fBIFF_UP\fR (see
-\fBifconfig\fR(1M)), or \fBdown\fR if the address is not \fBIFF_UP\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBGROUP\fR\fR
-.ad
-.sp .6
-.RS 4n
-The IPMP IP interface hosting the address.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBINBOUND\fR\fR
-.ad
-.sp .6
-.RS 4n
-The underlying IP interface that will receive packets for this address. This
-may change in response to external events such as IP interface failure. If this
-field is empty, then the system will not accept IP packets sent to this address
-(for example, because the address is down or because there are no active IP
-interfaces left in the IPMP group).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBOUTBOUND\fR\fR
-.ad
-.sp .6
-.RS 4n
-The underlying IP interfaces that will send packets using this source address.
-This may change in response to external events such as IP interface failure. If
-this field is empty, then the system will not send packets with this address as
-a source (for example, because the address is down or because there are no
-active IP interfaces left in the IPMP group).
-.RE
-
-If \fB-o\fR is not specified, all output fields are displayed.
-.RE
-
-.sp
-.ne 2
-.na
-\fBGroup Mode\fR
-.ad
-.sp .6
-.RS 4n
-Group mode displays the state of all IPMP groups on the system. The following
-output fields are supported:
-.sp
-.ne 2
-.na
-\fB\fBGROUP\fR\fR
-.ad
-.sp .6
-.RS 4n
-The IPMP IP interface name associated with the information. For the anonymous
-group (see \fBin.mpathd\fR(1M)), this field will be empty.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBGROUPNAME\fR\fR
-.ad
-.sp .6
-.RS 4n
-The IPMP group name. For the anonymous group, this field will be empty.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSTATE\fR\fR
-.ad
-.sp .6
-.RS 4n
-The state of the group:
-.sp
-.ne 2
-.na
-\fB\fBok\fR\fR
-.ad
-.RS 12n
-All interfaces in the group are usable.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdegraded\fR\fR
-.ad
-.RS 12n
-Some (but not all) interfaces in the group are usable.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfailed\fR\fR
-.ad
-.RS 12n
-No interfaces in the group are usable.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBFDT\fR\fR
-.ad
-.sp .6
-.RS 4n
-The probe-based failure detection time. If probe-based failure detection is
-disabled, this field will be empty.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBINTERFACES\fR\fR
-.ad
-.sp .6
-.RS 4n
-The list of underlying IP interfaces in the group. The list is divided into
-three parts:
-.RS +4
-.TP
-1.
-Active interfaces are listed first and not enclosed in any brackets or
-parenthesis. Active interfaces are those being used by the system to send or
-receive data traffic.
-.RE
-.RS +4
-.TP
-2.
-\fBINACTIVE\fR interfaces are listed next and enclosed in parenthesis.
-\fBINACTIVE\fR interfaces are those that are functioning, but not being used
-according to administrative policy.
-.RE
-.RS +4
-.TP
-3.
-Unusable interfaces are listed last and enclosed in brackets. Unusable
-interfaces are those that cannot be used at all in their present configuration
-(for example, \fBFAILED\fR or \fBOFFLINE\fR).
-.RE
-.RE
-
-If \fB-o\fR is not specified, all output fields are displayed.
-.RE
-
-.sp
-.ne 2
-.na
-\fBInterface Mode\fR
-.ad
-.sp .6
-.RS 4n
-Interface mode displays the state of all IP interfaces that are tracked by
-\fBin.mpathd\fR on the system. The following output fields are supported:
-.sp
-.ne 2
-.na
-\fB\fBINTERFACE\fR\fR
-.ad
-.sp .6
-.RS 4n
-The IP interface name associated with the information.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBACTIVE\fR\fR
-.ad
-.sp .6
-.RS 4n
-Either \fByes\fR or \fBno\fR, depending on whether the IP interface is being
-used by the system for IP data traffic.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBGROUP\fR\fR
-.ad
-.sp .6
-.RS 4n
-The IPMP IP interface associated with the IP interface. For IP interfaces in
-the anonymous group (see \fBin.mpathd\fR(1M)), this field will be empty.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBFLAGS\fR\fR
-.ad
-.sp .6
-.RS 4n
-Assorted information about the IP interface:
-.sp
-.ne 2
-.na
-\fB\fBi\fR\fR
-.ad
-.RS 5n
-Unusable due to being \fBINACTIVE\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBs\fR\fR
-.ad
-.RS 5n
-Marked \fBSTANDBY\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBm\fR\fR
-.ad
-.RS 5n
-Nominated to send/receive IPv4 multicast for its IPMP group.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBb\fR\fR
-.ad
-.RS 5n
-Nominated to send/receive IPv4 broadcast for its IPMP group.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM\fR\fR
-.ad
-.RS 5n
-Nominated to send/receive IPv6 multicast for its IPMP group.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBd\fR\fR
-.ad
-.RS 5n
-Unusable due to being \fBdown\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBh\fR\fR
-.ad
-.RS 5n
-Unusable due to being brought \fBOFFLINE\fR by \fBin.mpathd\fR because of a
-duplicate hardware address.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBLINK\fR\fR
-.ad
-.sp .6
-.RS 4n
-The state of link-based failure detection:
-.sp
-.ne 2
-.na
-\fB\fBup\fR\fR
-.ad
-.sp .6
-.RS 4n
-The link is up.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdown\fR\fR
-.ad
-.sp .6
-.RS 4n
-The link is down.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBunknown\fR\fR
-.ad
-.sp .6
-.RS 4n
-The network driver does not report link state changes.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPROBE\fR\fR
-.ad
-.sp .6
-.RS 4n
-The state of probe-based failure detection:
-.sp
-.ne 2
-.na
-\fB\fBok\fR\fR
-.ad
-.sp .6
-.RS 4n
-Probes detect no problems.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfailed\fR\fR
-.ad
-.sp .6
-.RS 4n
-Probes detect failure.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBunknown\fR\fR
-.ad
-.sp .6
-.RS 4n
-Probes cannot be sent since no suitable probe targets are known.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdisabled\fR\fR
-.ad
-.sp .6
-.RS 4n
-Probes have been disabled because a unique IP test address has not been
-configured.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSTATE\fR\fR
-.ad
-.sp .6
-.RS 4n
-The overall state of the interface:
-.sp
-.ne 2
-.na
-\fB\fBok\fR\fR
-.ad
-.sp .6
-.RS 4n
-The interface is online and functioning properly based on the configured
-failure detection methods.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfailed\fR\fR
-.ad
-.sp .6
-.RS 4n
-The interface is online but has a link state of \fBdown\fR or a probe state of
-\fBfailed\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBoffline\fR\fR
-.ad
-.sp .6
-.RS 4n
-The interface is offline.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBunknown\fR\fR
-.ad
-.sp .6
-.RS 4n
-The interface is online but may or may not be functioning because the
-configured failure detection methods are in \fBunknown\fR states.
-.RE
-
-.RE
-
-If \fB-o\fR is not specified, all output fields are displayed.
-.RE
-
-.sp
-.ne 2
-.na
-\fBProbe Mode\fR
-.ad
-.sp .6
-.RS 4n
-Probe mode displays information about the probes being sent by \fBin.mpathd\fR.
-Unlike other output modes, this mode runs until explicitly terminated using
-\fBCtrl-C\fR. The following output fields are supported:
-.sp
-.ne 2
-.na
-\fB\fBTIME\fR\fR
-.ad
-.sp .6
-.RS 4n
-The time the probe was sent, relative to when \fBipmpstat\fR was started. If
-the probe was sent prior to starting \fBipmpstat\fR, the time will be negative.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPROBE\fR\fR
-.ad
-.sp .6
-.RS 4n
-An identifier representing the probe. The identifier will start at zero and
-will monotonically increment for each probe sent by \fBin.mpathd\fR over a
-given interface. To enable more detailed analysis by packet monitoring tools,
-this identifier matches the \fBicmp_seq\fR field of the ICMP probe packet.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBINTERFACE\fR\fR
-.ad
-.sp .6
-.RS 4n
-The IP interface the probe was sent on.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBTARGET\fR\fR
-.ad
-.sp .6
-.RS 4n
-The hostname (or IP address) of the target the probe was sent to.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBNETRTT\fR\fR
-.ad
-.sp .6
-.RS 4n
-The network round-trip-time for the probe. This is the time between when the IP
-module sends the probe and when the IP module receives the acknowledgment. If
-\fBin.mpathd\fR has concluded that the probe has been lost, this field will be
-empty.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBRTT\fR\fR
-.ad
-.sp .6
-.RS 4n
-The total round-trip-time for the probe. This is the time between when
-\fBin.mpathd\fR starts executing the code to send the probe, and when it
-completes processing the \fBack\fR. If \fBin.mpathd\fR has concluded that the
-probe has been lost, this field will be empty. Spikes in the total round-trip
-time that are not present in the network round-trip time indicate that the
-local system itself is overloaded.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBRTTAVG\fR\fR
-.ad
-.sp .6
-.RS 4n
-The average round-trip-time to \fBTARGET\fR over \fBINTERFACE\fR. This aids
-identification of slow targets. If there is insufficient data to calculate the
-average, this field will be empty.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBRTTDEV\fR\fR
-.ad
-.sp .6
-.RS 4n
-The standard deviation for the round-trip-time to \fBTARGET\fR over
-\fBINTERFACE\fR. This aids identification of jittery targets. If there is
-insufficient data to calculate the standard deviation, this field will be
-empty.
-.RE
-
-If \fB-o\fR is not specified, all fields except for \fBRTTAVG\fR and
-\fBRTTDEV\fR are displayed.
-.RE
-
-.sp
-.ne 2
-.na
-\fBTarget Mode\fR
-.ad
-.sp .6
-.RS 4n
-Target mode displays IPMP probe target information. The following output fields
-are supported:
-.sp
-.ne 2
-.na
-\fB\fBINTERFACE\fR\fR
-.ad
-.sp .6
-.RS 4n
-The IP interface name associated with the information.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBMODE\fR\fR
-.ad
-.sp .6
-.RS 4n
-The probe target discovery mode:
-.sp
-.ne 2
-.na
-\fB\fBroutes\fR\fR
-.ad
-.RS 13n
-Probe targets found by means of the routing table.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmulticast\fR\fR
-.ad
-.RS 13n
-Probe targets found by means of multicast ICMP probes.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdisabled\fR\fR
-.ad
-.RS 13n
-Probe-based failure detection is disabled.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBTESTADDR\fR\fR
-.ad
-.sp .6
-.RS 4n
-The hostname (or IP address) that will be used for sending and receiving
-probes. If a unique test address has not been configured, this field will be
-empty. Note that if an IP interface is configured with both IPv4 and IPv6 test
-addresses, probe target information will be displayed separately for each test
-address.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBTARGETS\fR\fR
-.ad
-.sp .6
-.RS 4n
-A space-separated list of probe target hostnames (or IP addresses), in firing
-order. If no probe targets could be found, this field will be empty.
-.RE
-
-If \fB-o\fR is not specified, all output fields are displayed.
-.RE
-
-.SH OUTPUT FORMAT
-.LP
-By default, \fBipmpstat\fR uses a human-friendly tabular format for its output
-modes, where each row contains one or more fields of information about a given
-object, which is in turn uniquely identified by one or more of those fields. In
-this format, a header identifying the fields is displayed above the table (and
-after each screenful of information), fields are separated by whitespace, empty
-fields are represented by \fB--\fR (double hyphens), and other visual aids are
-used. If the value for a field cannot be determined, its value will be
-displayed as "\fB?\fR" and a diagnostic message will be output to standard
-error.
-.sp
-.LP
-Machine-parsable format also uses a tabular format, but is designed to be
-efficient to programmatically parse. Specifically, machine-parsable format
-differs from human-friendly format in the following ways:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-No headers are displayed.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Fields with empty values yield no output, rather than showing \fB--\fR.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Fields are separated by a single colon (\fB:\fR), rather than variable amounts
-of whitespace.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-If multiple fields are requested, and a literal \fB:\fR or a backslash
-(\fB\e\fR) occur in a field's value, they are escaped by prefixing them with
-\fB\e\fR\&.
-.RE
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRObtaining Failure Detection Time of a Specific Interface
-.sp
-.LP
-The following code uses the machine-parsable output format to create a
-\fBksh\fR function that outputs the failure detection time of a given IPMP IP
-interface:
-
-.sp
-.in +2
-.nf
- getfdt() {
- ipmpstat -gP -o group,fdt | while IFS=: read group fdt; do
- [[ "$group" = "$1" ]] && { echo "$fdt"; return; }
- done
- }
-.fi
-.in -2
-.sp
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-.LP
-\fB/usr/sbin/ipmpstat\fR:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Committed
-_
-Machine-Parsable Format Committed
-_
-Human-Friendly Format Not-an-Interface
-.TE
-
-.sp
-.LP
-\fB/sbin/ipmpstat\fR is not a Committed interface.
-.SH SEE ALSO
-.LP
-\fBif_mpadm\fR(1M), \fBifconfig\fR(1M), \fBin.mpathd\fR(1M),
-\fBattributes\fR(5)
diff --git a/usr/src/man/man1m/ipnat.1m b/usr/src/man/man1m/ipnat.1m
deleted file mode 100644
index e800988bb3..0000000000
--- a/usr/src/man/man1m/ipnat.1m
+++ /dev/null
@@ -1,224 +0,0 @@
-'\" te
-.\" To view license terms, attribution, and copyright for IP Filter, the default path is /usr/lib/ipf/IPFILTER.LICENCE. If the Solaris operating environment has been installed anywhere other than the default, modify the given path to access the file at the installed
-.\" location.
-.\" Portions Copyright (c) 2008, Sun Microsystems Inc. All Rights Reserved.
-.\" Portions Copyright (c) 2013, Joyent, Inc. All Rights Reserved.
-.TH IPNAT 1M "Oct 30, 2013"
-.SH NAME
-ipnat \- user interface to the NAT subsystem
-.SH SYNOPSIS
-.LP
-.nf
-\fBipnat\fR [\fB-CdFhlnRrsv\fR] [\fB-G\fR | \fB-z\fR \fIzonename\fR] \fB-f\fR \fIfilename\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBipnat\fR utility opens a specified file (treating \fB-\fR as stdin) and
-parses it for a set of rules that are to be added or removed from the IP NAT.
-.sp
-.LP
-If there are no parsing problems, each rule processed by \fBipnat\fR is added
-to the kernel's internal lists. Rules are appended to the internal lists,
-matching the order in which they appear when given to \fBipnat\fR.
-.sp
-.LP
-\fBipnat\fR's use is restricted through access to \fB/dev/ipauth\fR,
-\fB/dev/ipl\fR, and \fB/dev/ipstate\fR. The default permissions of these files
-require \fBipnat\fR to be run as root for all operations.
-.sp
-.LP
-\fBipnat\fR's use is restricted through access to \fB/dev/ipnat\fR. The default
-permissions of \fB/dev/ipnat\fR require \fBipnat\fR to be run as root for all
-operations.
-.SH OPTIONS
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-C\fR\fR
-.ad
-.RS 15n
-Delete all entries in the current NAT rule listing (NAT rules).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-d\fR\fR
-.ad
-.RS 15n
-Turn debug mode on. Causes a hex dump of filter rules to be generated as it
-processes each one.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-F\fR\fR
-.ad
-.RS 15n
-Delete all active entries in the current NAT translation table (currently
-active NAT mappings).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR \fIfilename\fR\fR
-.ad
-.RS 15n
-Parse specified file for rules to be added or removed from the IP NAT.
-\fIfilename\fR can be stdin.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-h\fR\fR
-.ad
-.RS 15n
-Print number of hits for each MAP/Redirect filter.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR\fR
-.ad
-.RS 15n
-Show the list of current NAT table entry mappings.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR\fR
-.ad
-.RS 15n
-Prevents \fBipf\fR from doing anything, such as making ioctl calls, which might
-alter the currently running kernel.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-R\fR\fR
-.ad
-.RS 15n
-Disable both IP address-to-hostname resolution and port number-to-service name
-resolution.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-r\fR\fR
-.ad
-.RS 15n
-Remove matching NAT rules rather than add them to the internal lists.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR\fR
-.ad
-.RS 15n
-Retrieve and display NAT statistics.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.RS 15n
-Turn verbose mode on. Displays information relating to rule processing and
-active rules/table entries.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-z\fR \fIzonename\fR\fR
-.ad
-.RS 15n
-Operate on the in-zone IP NAT for the specified zone. If neither this option
-nor \fB-G\fR is specified, the current zone is used. This command is only
-available in the Global Zone. See \fBZONES\fR in \fBipf\fR(1m) for more
-information.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-G\fR \fIzonename\fR\fR
-.ad
-.RS 15n
-Operate on the global zone controlled IP NAT for the specified zone. If
-neither this option nor \fB-z\fR is specified, the current zone is used. This
-command is only available in the Global Zone. See \fBZONES\fR in \fBipf\fR(1m)
-for more information.
-.RE
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/dev/ipnat\fR\fR
-.ad
-.sp .6
-.RS 4n
-Link to IP Filter pseudo device.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/kmem\fR\fR
-.ad
-.sp .6
-.RS 4n
-Special file that provides access to virtual address space.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/ipf/ipnat.conf\fR\fR
-.ad
-.sp .6
-.RS 4n
-Location of \fBipnat\fR startup configuration file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/share/ipfilter/examples/\fR\fR
-.ad
-.sp .6
-.RS 4n
-Contains numerous IP Filter examples.
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Committed
-.TE
-
-.SH SEE ALSO
-.LP
-\fBipf\fR(1M), \fBipfstat\fR(1M), \fBipnat\fR(4), \fBattributes\fR(5),
-\fBzones(5)\fR
diff --git a/usr/src/man/man1m/ippool.1m b/usr/src/man/man1m/ippool.1m
deleted file mode 100644
index b32e8355a6..0000000000
--- a/usr/src/man/man1m/ippool.1m
+++ /dev/null
@@ -1,349 +0,0 @@
-'\" te
-.\" To view license terms, attribution, and copyright for IP Filter, the default path is /usr/lib/ipf/IPFILTER.LICENCE. If the Solaris operating environment has been installed anywhere other than the default, modify the given path to access the file at the installed
-.\" location.
-.\" Portions Copyright (c) 2008, Sun Microsystems Inc. All Rights Reserved.
-.\" Portions Copyright (c) 2012, Joyent, Inc. All Rights Reserved.
-.TH IPPOOL 1M "Nov 26, 2012"
-.SH NAME
-ippool \- user interface to the IP Filter pools
-.SH SYNOPSIS
-.LP
-.nf
-\fBippool\fR \fB-a\fR [\fB-dnv\fR] [\fB-G\fR | \fB-z\fR \fIzonename\fR] [\fB-m\fR \fIpoolname\fR] [\fB-o\fR \fIrole\fR] \fB-i\fR \fIipaddr\fR
- [/\fInetmask\fR]
-.fi
-
-.LP
-.nf
-\fBippool\fR \fB-A\fR [\fB-dnv\fR] [\fB-G\fR | \fB-z\fR \fIzonename\fR] [\fB-m\fR \fIpoolname\fR] [\fB-o\fR \fIrole\fR] [\fB-S\fR \fIseed\fR]
- [\fB-t\fR \fItype\fR]
-.fi
-
-.LP
-.nf
-\fBippool\fR \fB-f\fR \fIfile\fR [\fB-G\fR | \fB-z\fR \fIzonename\fR] [\fB-dnuv\fR]
-.fi
-
-.LP
-.nf
-\fBippool\fR \fB-F\fR [\fB-dv\fR] [\fB-G\fR | \fB-z\fR \fIzonename\fR] [\fB-o\fR \fIrole\fR] [\fB-t\fR \fItype\fR]
-.fi
-
-.LP
-.nf
-\fBippool\fR \fB-h\fR [\fB-dv\fR] [\fB-G\fR | \fB-z\fR \fIzonename\fR] [\fB-m\fR \fIpoolname\fR] [\fB-t\fR \fItype\fR]
-.fi
-
-.LP
-.nf
-\fBippool\fR \fB-l\fR [\fB-dv\fR] [\fB-G\fR | \fB-z\fR \fIzonename\fR] [\fB-m\fR \fIpoolname\fR] [\fB-t\fR \fItype\fR]
-.fi
-
-.LP
-.nf
-\fBippool\fR \fB-r\fR [\fB-dnv\fR] [\fB-G\fR | \fB-z\fR \fIzonename\fR] [\fB-m\fR \fIpoolname\fR] [\fB-o\fR \fIrole\fR] \fB-i\fR \fIipaddr\fR
- [/\fInetmask\fR]
-.fi
-
-.LP
-.nf
-\fBippool\fR \fB-R\fR [\fB-dnv\fR] [\fB-G\fR | \fB-z\fR \fIzonename\fR] [\fB-m\fR \fIpoolname\fR] [\fB-o\fR \fIrole\fR] [\fB-t\fR \fItype\fR]
-.fi
-
-.LP
-.nf
-\fBippool\fR \fB-s\fR [\fB-dtv\fR] [\fB-G\fR | \fB-z\fR \fIzonename\fR] [\fB-M\fR \fIcore\fR] [\fB-N\fR \fInamelist\fR]
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBippool\fR utility is used to manage information stored in the IP pools
-subsystem of IP Filter software. Configuration file information can be parsed
-and loaded into the kernel and currently configured pools can be removed,
-changed, or inspected.
-.sp
-.LP
-\fBippool\fR's use is restricted through access to \fB/dev/ippool\fR. The
-default permissions of \fB/dev/ippool\fR require \fBippool\fR to be run as root
-for all operations.
-.sp
-.LP
-The command line options used are divided into two sections: the global options
-and the instance-specific options.
-.sp
-.LP
-\fBippool\fR's use is restricted through access to \fB/dev/ipauth\fR,
-\fB/dev/ipl\fR, and \fB/dev/ipstate\fR. The default permissions of these files
-require \fBippool\fR to be run as root for all operations.
-.SH OPTIONS
-.LP
-\fBippool\fR supports the option categories described below.
-.SS "Global Options"
-.LP
-The following global options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-d\fR\fR
-.ad
-.RS 6n
-Toggle debugging of processing the configuration file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR\fR
-.ad
-.RS 6n
-Prevents \fBippool\fR from doing anything, such as making ioctl calls, that
-would alter the currently running kernel.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.RS 6n
-Turn verbose mode on.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-z\fR \fIzonename\fR\fR
-.ad
-.RS 6n
-Manage the specified zone's in-zone IP pools. If neither this option nor
-\fB-G\fR is specified, the current zone is used. This command is only
-available in the Global Zone. See \fBZONES\fR in \fBipf\fR(1m) for more
-information.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-G\fR \fIzonename\fR\fR
-.ad
-.RS 6n
-Manage the specified zone's global zone controlled IP pools. If neither this
-option nor \fB-z\fR is specified, the current zone is used. This command is
-only available in the Global Zone. See \fBZONES\fR in \fBipf\fR(1m) for more
-information.
-.RE
-
-.SS "Instance-Specific Options"
-.LP
-The following instance-specific options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-a\fR\fR
-.ad
-.RS 11n
-Add a new data node to an existing pool in the kernel.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-A\fR\fR
-.ad
-.RS 11n
-Add a new (empty) pool to the kernel.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR \fIfile\fR\fR
-.ad
-.RS 11n
-Read in IP pool configuration information from \fIfile\fR and load it into the
-kernel.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-F\fR\fR
-.ad
-.RS 11n
-Flush loaded pools from the kernel.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-h\fR\fR
-.ad
-.RS 11n
-Display a list of pools of the type: hash loaded in the kernel.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR\fR
-.ad
-.RS 11n
-Display a list of pools of the type: tree loaded in the kernel.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-r\fR\fR
-.ad
-.RS 11n
-Remove an existing data node from a pool in the kernel.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-R\fR\fR
-.ad
-.RS 11n
-Remove an existing pool from within the kernel.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR\fR
-.ad
-.RS 11n
-Display IP pool statistical information.
-.RE
-
-.SS "Other Options"
-.LP
-The following, additional options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-i\fR \fIipaddr\fR[/\fInetmask\fR]\fR
-.ad
-.RS 23n
-Sets the IP address for the operation being undertaken with an all-one's mask
-or, optionally, a specific netmask, given in either dotted-quad notation or as
-a single integer.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-m\fR \fIpoolname\fR\fR
-.ad
-.RS 23n
-Sets the pool name for the current operation.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-M\fR \fIcore\fR\fR
-.ad
-.RS 23n
-Specify an alternative path to \fB/dev/kmem\fR from which to retrieve
-statistical information.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-N\fR \fInamelist\fR\fR
-.ad
-.RS 23n
-Specify an alternative path to lookup symbol name information when retrieving
-statistical information.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-o\fR \fIrole\fR\fR
-.ad
-.RS 23n
-Sets the role with which this pool is to be used. Currently only \fBipf\fR,
-\fBauth\fR, and \fBcount\fR are accepted as arguments to this option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-S\fR \fIseed\fR\fR
-.ad
-.RS 23n
-Sets the hashing seed to the number specified. For use with hash-type pools
-only.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-t\fR \fItype\fR\fR
-.ad
-.RS 23n
-Sets the type of pool being defined. Must be one of \fBpool\fR, \fBhash\fR, or
-\fBgroup-map\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-u\fR\fR
-.ad
-.RS 23n
-When parsing a configuration file, rather than load new pool data into the
-kernel, unload it.
-.RE
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/dev/ippool\fR\fR
-.ad
-.RS 24n
-Link to IP Filter pseudo device.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/kmem\fR\fR
-.ad
-.RS 24n
-Special file that provides access to virtual address space.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/ipf/ippool.conf\fR\fR
-.ad
-.RS 24n
-Location of \fBippool\fR startup configuration file.
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Committed
-.TE
-
-.SH SEE ALSO
-.LP
-\fBipf\fR(1M), \fBipfstat\fR(1M), \fBippool\fR(4), \fBattributes\fR(5),
-\fBzones(5)\fR
diff --git a/usr/src/man/man1m/ipqosconf.1m b/usr/src/man/man1m/ipqosconf.1m
deleted file mode 100644
index 9766afceec..0000000000
--- a/usr/src/man/man1m/ipqosconf.1m
+++ /dev/null
@@ -1,1053 +0,0 @@
-'\" te
-.\" Copyright (C) 2004, 2009 Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH IPQOSCONF 1M "Dec 18, 2008"
-.SH NAME
-ipqosconf \- configure the IPQoS facility
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/ipqosconf\fR
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/ipqosconf\fR \fB-a\fR \fIconf_file\fR [\fB-vs\fR]
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/ipqosconf\fR \fB-c\fR
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/ipqosconf\fR \fB-f\fR
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/ipqosconf\fR \fB-l\fR
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/ipqosconf\fR \fB-L\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBipqosconf\fR utility configures the Quality of Service facility of the
-Internet Protocol (\fBIP\fR). Only superusers can use this command.
-.sp
-.LP
-Without arguments, \fBipqosconf\fR displays the actual \fBIPQoS\fR
-configuration.
-.sp
-.LP
-Configuration is not preserved across reboot. You must apply the configuration
-every time that the machine reboots. To apply the configuration early in the
-boot phase, you can populate the \fB/etc/inet/ipqosinit.conf\fR file, which is
-then read from the \fBsvc:/network/initial:default\fR service.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-a\fR \fIconf_file\fR\fR
-.ad
-.RS 16n
-Apply the configuration in \fIconf_file\fR. If the \fIconf_file\fR is
-\fB\(mi\fR, \fBipqosconf\fR reads from standard input.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-c\fR\fR
-.ad
-.RS 16n
-Populate the boot file with the current configuration.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR\fR
-.ad
-.RS 16n
-Flush the configuration.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR\fR
-.ad
-.RS 16n
-List the current applied configuration.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-L\fR\fR
-.ad
-.RS 16n
-List the current configuration in verbose mode.
-.sp
-In addition to the information that the \fB-l\fR option provides, the \fB-L\fR
-option provides filters and classes configured through other means than the
-\fBiqposconf\fR command. This option also provides the full set of filters that
-were created by \fBipqosconf\fR by representing a multi-homed host in a
-configuration file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR\fR
-.ad
-.RS 16n
-Log messages to \fBsyslog\fR during an \fB-a\fR operation.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.RS 16n
-Toggle verbose mode during an \fB-a\fR operation.
-.sp
-The \fB-v\fR option causes all messages to go to the console in addition to
-their normal destination. Messages intended to go to \fBsyslog\fR, because the
-\fB-s\fR flag is set or because it is a log message, still go to \fBsyslog\fR
-as well as the console.
-.RE
-
-.SH CONFIGURATION FILE
-.sp
-.LP
-The configuration file is composed of a format version and a succession of
-configuration (action) blocks. There are different configuration blocks for
-each type of action that is being configured.
-.SS "Format Version"
-.sp
-.LP
-The first line of the configuration file specifies the format version contained
-in the configuration file.
-.sp
-.LP
-The following entry specifies the format version:
-.sp
-.in +2
-.nf
-fmt_version \fIx\fR.\fIx\fR
-.fi
-.in -2
-
-.sp
-.LP
-where \fIx\fR.\fIx\fR is the format version. \fB1.0\fR is the only supported
-version.
-.SS "Configuration Blocks"
-.sp
-.LP
-Following the format version, are a succession of configuration (action) blocks
-that are different for each type of action being configured. A configuration
-block always has the following structure:
-.sp
-.in +2
-.nf
-action {
- name action_name
- module module_name
- params_clause | ""
- cf_clauses
-}
-
-action_name ::= string
-module_name ::= ipgpc | dlcosmk | dscpmk | flowacct | tswtclmt |
- tokenmt
-
-params_clause ::= params {
- parameters
- params_stats | ""
- }
-
-parameters ::= prm_name_value parameters | ""
-
-prm_name_value ::= \fIparam_name\fR \fIparam_value\fR
-.fi
-.in -2
-.sp
-
-.SS "Modules"
-.sp
-.LP
-The \fIparam_name\fR and the types of \fIparam_value\fR are specific to a given
-module.
-.sp
-.in +2
-.nf
-params_stats ::= global_stats boolean
-
-cf_clauses ::= class_clause cf_clauses |
- filter_clause cf_clauses | ""
-
-class_clause ::= class {
- name class_name
- next_action next_action_name
- class_stats | ""
- }
-
-class_name ::= string
-next_action_name ::= string
-class_stats ::= enable_stats boolean
-boolean ::= TRUE | FALSE
-
-filter_clause ::= filter {
- name filter_name
- class class_name
- parameters
- }
-
-filter_name ::= string
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-There must be exactly one configuration block belonging to module \fBipgpc\fR.
-The action must be named \fBipgpc.classify\fR. All other actions should be
-reachable from \fBipgpc\fR by way of parameters of type action or the
-next_action of a class.
-.sp
-.LP
-The set of types that are used for parameters of the different modules are:
-.sp
-.in +2
-.nf
-action ::= string
-protocol ::= 1..255
-port ::= 1..65535
-uint8 ::= 0..255
-uint32 ::= 0..4294967296
-int32 ::= -2147483648..2147483648
-address ::= <see the description section>
-ifname ::= <interface name recognized by SIOGLIFINDEX ioctl>
-enum ::= string | { string_list }
-boolean ::= TRUE | FALSE
-integer_array ::= { range_value_list }
-map_index ::= uint32
-address ::= ip_address | ip_node_name
-user ::= uid | username
-uid ::= 0..65535
-username ::= string
-string_list ::= string sl_entrys
-sl_entrys ::= ',' string sl_entrys | ""
-range_value_list ::= range_value_entry range_value_entrys
-range_value_entry ::= range ':' integer_array_value
-range ::= uint32 '-' uint32
-integer_array_value ::= string | integer_array_number
-integer_array_number ::= uint8 | uint32
-range_value_entrys ::= ';' range_value_entry range_value_entrys | ""
-ip_node_name ::= string
-ip_address ::= v4_address | v6_address
-v4_address ::= v4_ip_address / v4_cidr_mask |
-v4_ip_address
-v4_cidr_mask ::= 1-32
-v6_address ::= v6_ip_address / v6_cidr_mask |
-v6_ip_address
-v6_cidr_mask ::= 1-128
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-METER module tokenmt configuration syntax:
-.sp
-.in +2
-.nf
-red_action_name action
-yellow_action_name action
-green_action_name action
-committed_rate uint32
-committed_burst uint32
-peak_rate uint32
-<if present this signifies that this will be a two rate meter, not
- a single rate meter>
-peak_burst uint32
-<this is the 'peak' burst size for a two rate meter, but
- the 'excess' burst size for a single rate meter>
-color_aware boolean
-color_map integer_array
-global_stats boolean
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-METER module tswtclmt configuration syntax:
-.sp
-.in +2
-.nf
-red_action_name action
-yellow_action_name action
-green_action_name action
-committed_rate uint32
-peak_rate uint32
-window uint32
-global_stats boolean
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-MARKER module dscpmk configuration syntax:
-.sp
-.in +2
-.nf
-next_action action
-dscp_map int_array
-dscp_detailed_stats boolean
-global_stats boolean
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-MARKER module dlcosmk configuration syntax:
-.sp
-.in +2
-.nf
-next_action action
-cos map_index
-global_stats boolean
-.fi
-.in -2
-
-.sp
-.LP
-CLASSIFIER module ipgpc configuration syntax:
-.sp
-.in +2
-.nf
-user user
-projid int32
-if_name ifname
-direction enum {
- LOCAL_IN,
- LOCAL_OUT,
- FWD_IN,
- FWD_OUT}
-protocol protocol
-dsfield uint8
-dsfield_mask uint8
-saddr address
-daddr address
-sport port
-dport port
-priority uint32
-precedence uint32
-ip_version enum {
- V4,
- V6 }
-global_stats boolean
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-ACCOUNTING module flowacct configuration syntax:
-.sp
-.in +2
-.nf
-next_action action
-timer uint32
-timeout uint32
-max_limit uint32
-.fi
-.in -2
-.sp
-
-.SS "Types"
-.sp
-.ne 2
-.na
-\fB\fIaction\fR\fR
-.ad
-.RS 17n
-A string of characters with a matching action definition. The character string
-can be up to twenty three characters in length. To allow for spaces the string
-needs to be enclosed in quotes and cannot span lines. Two special actions are
-pre-defined and can not have an explicit action definition. The two pre-defined
-actions are \fBcontinue\fR and \fBdrop\fR. continue causes the packet that is
-passed to it to continue normal processing. \fBdrop\fR causes the packet that
-is passed to it to be dropped.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIaddress\fR\fR
-.ad
-.RS 17n
-A machine name or address recognized by \fBgetipnodebyname\fR(3SOCKET). If a
-machine name is specified, and \fBip_version\fR has been defined, the query is
-done using that address family. If a machine name is not specified and
-\fBip_version\fR has not been defined, the query is done using the
-\fBAI_DEFAULT\fR flag to \fBgetipnodebyname()\fR(\fB\&..AF_INET6..\fR).
-\fBCIDR\fR address masks following an IP address are allowed. Specify the
-\fBCIDR\fR address masks as \fB1\fR-\fB32\fR (for \fBv4\fR) or
-\fB1\fR-\fB128\fR (for \fBv6\fR). \fBCIDR\fR addresses are disallowed for node
-names.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIenum\fR\fR
-.ad
-.RS 17n
-Either one of the supported values or comma delimited list of support values,
-enclosed in curly braces.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIifname\fR\fR
-.ad
-.RS 17n
-A non-\fINULL\fR, existing interface name recognized by the \fBSIOGLIFINDEX\fR
-socket ioctl.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIinteger_array\fR\fR
-.ad
-.RS 17n
-A comma delimited set of \fIrange\fR/\fIvalue\fR pairs, enclosed in curly
-braces.
-.sp
-Specify \fIrange\fR in the format \fIx\fR-\fIy\fR, where \fIx\fR and \fIy\fR
-are integers that denote the range of array indexes to which the value applies.
-The minimum value for both \fIx\fR and \fIy\fR is \fB0\fR. The maximum value
-for \fIx\fR is particular to the parameter. Any array indexes not referred to
-in the set of ranges are left at their previous value.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fImap_index\fR\fR
-.ad
-.RS 17n
-A non-negative integer used as an index into any maps associated with a
-parameter of this type.
-.sp
-The maximum value of this type is dictated by the number of entries in the
-associated maps. The index starts at \fB0\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIport\fR\fR
-.ad
-.RS 17n
-Either a service name recognized by \fBgetservbyname\fR(3SOCKET) or an integer
-\fB1\fR-\fB65535\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIprotocol\fR\fR
-.ad
-.RS 17n
-Either a protocol name recognized by \fBgetprotobyname\fR(3SOCKET) or an
-integer \fB1\fR-\fB255\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIstring\fR\fR
-.ad
-.RS 17n
-A character string. Enclose \fIstring\fR in quotes. \fIstring\fR cannot span
-multiple lines.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIuser\fR\fR
-.ad
-.RS 17n
-Either a valid user ID or username for the system that is being configured.
-.RE
-
-.SS "Parameters"
-.sp
-.LP
-The configuration file can contain the following parameters
-.sp
-.ne 2
-.na
-\fBcolor_aware\fR
-.ad
-.RS 23n
-A value of \fBTRUE\fR or \fBFALSE\fR, indicating whether or not the configured
-action takes account of the previous packet coloring when classifying.
-.RE
-
-.sp
-.ne 2
-.na
-\fBcolor_map\fR
-.ad
-.RS 23n
-An integer array that defines which values of the \fBdscp\fR field correspond
-with which colors for when the \fBcolor_aware\fR parameter is set to
-\fBTRUE\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBcommitted_burst\fR
-.ad
-.RS 23n
-The committed burst size in bits.
-.RE
-
-.sp
-.ne 2
-.na
-\fBcommitted_rate\fR
-.ad
-.RS 23n
-The committed rate in bits per second.
-.RE
-
-.sp
-.ne 2
-.na
-\fBcos\fR
-.ad
-.RS 23n
-The value used to determine the underlying driver level priority applied to the
-packet which is defined in \fB802.1D\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBdaddr\fR
-.ad
-.RS 23n
-The destination address of the datagram.
-.RE
-
-.sp
-.ne 2
-.na
-\fBdirection\fR
-.ad
-.RS 23n
-The value used to build a filter matching only part of the traffic.
-.sp
-This parameter is of type \fBenum\fR with valid values of \fBLOCAL_IN\fR (local
-bound traffic), \fBLOCAL_OUT\fR (local sourced traffic), \fBFWD_IN\fR
-(forwarded traffic entering the system), and \fBFWD_OUT\fR (forwarded traffic
-exiting the system).
-.RE
-
-.sp
-.ne 2
-.na
-\fBdport\fR
-.ad
-.RS 23n
-The destination port of the datagram.
-.RE
-
-.sp
-.ne 2
-.na
-\fBdscp_detailed_stats\fR
-.ad
-.RS 23n
-A value of \fBTRUE\fR or \fBFALSE\fR that determines whether detailed
-statistics are switched on for this \fBdscp\fR action.
-.sp
-Specify \fBTRUE\fR to switch on or \fBFALSE\fR to switch off.
-.RE
-
-.sp
-.ne 2
-.na
-\fBdscp_map\fR
-.ad
-.RS 23n
-The \fIinteger_array\fR that supplies the values that IP packets with a given
-\fBdscp\fR value have their dscp re-marked with.
-.sp
-The existing value is used to index into the array where the new value is taken
-from. The array is of size \fB64\fR, meaning valid indexes are \fB0\fR-\fB63\fR
-and valid values are also \fB0\fR-\fB63\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBdsfield\fR
-.ad
-.RS 23n
-The \fBDS\fR field of the \fBIP\fR datagram header. This is an 8-bit value,
-with each bit position corresponding with the same one in the header; this
-enables matches to be done on the CU bits. If you specify this parameter, you
-must also specify the \fBdsfield_mask\fR parameter.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdsfield_mask\fR\fR
-.ad
-.RS 23n
-The mask applied to the \fBdsfield\fR parameter to determine the bits against
-which to match. This is an 8-bit value, with each bit position corresponding
-with the same one in the \fBdsfield\fR parameter.
-.RE
-
-.sp
-.ne 2
-.na
-\fBglobal_stats\fR
-.ad
-.RS 23n
-A value of \fBTRUE\fR or \fBFALSE\fR to enable or disable the statistic
-collection for this action.
-.RE
-
-.sp
-.ne 2
-.na
-\fBgreen_action_name\fR
-.ad
-.RS 23n
-The action to be executed for packets that are deemed to be green.
-.RE
-
-.sp
-.ne 2
-.na
-\fBif_name\fR
-.ad
-.RS 23n
-The name of an interface recognized by the \fBSIOGLIFINDEX\fR ioctl. This
-parameter is of type \fBifname\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBip_version\fR
-.ad
-.RS 23n
-This parameter is of type \fBenum\fR and has valid values of \fBV4\fR and
-\fBV6\fR.
-.sp
-If it is set to \fBV4\fR only then only \fBipv4\fRaddresses are requested for a
-specified hostname. If it is set to \fBV6\fR, only \fBipv6\fR addresses are
-returned if there are any, otherwise \fBv4\fR mapped \fBv6\fR addresses are
-returned. If both \fBV4\fR and \fBV6\fR are specified, or if \fBip_version\fR
-is not specified, then both \fBipv4\fR and \fBipv6\fR addresses are requested
-for a specified hostname.
-.RE
-
-.sp
-.ne 2
-.na
-\fBmax_limit\fR
-.ad
-.RS 23n
-The maximum number of flow entries present at one time in the \fBflowacct\fR
-actions in the memory resident table.
-.RE
-
-.sp
-.ne 2
-.na
-\fBnext_action\fR
-.ad
-.RS 23n
-The action to be executed when the current action is complete.
-.sp
-This value can be either the name of an action defined in the configuration
-file, or one of the two special action types: \fBdrop\fR and \fBcontinue\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBpeak_burst\fR
-.ad
-.RS 23n
-The peak burst size, for a two rate meter, or excess burst size, for a single
-rate meter, in bits.
-.RE
-
-.sp
-.ne 2
-.na
-\fBpeak_rate\fR
-.ad
-.RS 23n
-The peak rate in bits per second.
-.RE
-
-.sp
-.ne 2
-.na
-\fBprecedence\fR
-.ad
-.RS 23n
-An integer that is used to order filters. If there are two matching filters
-that have the same priority value, the one with the lower precedence value is
-the one matched. This parameter should be used because the order of the filters
-in a configuration file has no influence on their relative precedence.
-.RE
-
-.sp
-.ne 2
-.na
-\fBpriority\fR
-.ad
-.RS 23n
-An integer that represents the relative priority of a filter. If there are two
-matching filters, the one with the higher priority value is the one matched.
-Multiple filters can have the same priority.
-.RE
-
-.sp
-.ne 2
-.na
-\fBprojid\fR
-.ad
-.RS 23n
-The project ID of the process sending the data. This value is always \fB-1\fR
-for received traffic.
-.RE
-
-.sp
-.ne 2
-.na
-\fBprotocol\fR
-.ad
-.RS 23n
-The Upper Layer Protocol against which this entry is matched.
-.RE
-
-.sp
-.ne 2
-.na
-\fBred_action_name\fR
-.ad
-.RS 23n
-The action to be executed for packets that are determined to be red.
-.RE
-
-.sp
-.ne 2
-.na
-\fBsaddr\fR
-.ad
-.RS 23n
-The source address of the datagram.
-.RE
-
-.sp
-.ne 2
-.na
-\fBsport\fR
-.ad
-.RS 23n
-The source port of the datagram.
-.RE
-
-.sp
-.ne 2
-.na
-\fBtimeout\fR
-.ad
-.RS 23n
-The timeout in milliseconds after which flows are written to the accounting
-file.
-.RE
-
-.sp
-.ne 2
-.na
-\fBtimer\fR
-.ad
-.RS 23n
-The period in milliseconds at which timed-out flows are checked for.
-.RE
-
-.sp
-.ne 2
-.na
-\fBuser\fR
-.ad
-.RS 23n
-The user ID or username of the process sending the data. This value is always
-\fB-1\fR for received traffic.
-.RE
-
-.sp
-.ne 2
-.na
-\fBwindow\fR
-.ad
-.RS 23n
-The window size in ms.
-.RE
-
-.sp
-.ne 2
-.na
-\fByellow_action_name\fR
-.ad
-.RS 23n
-The action to be executed for packets that are determined to be yellow.
-.RE
-
-.SH SECURITY
-.sp
-.LP
-None.
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRSending All Traffic From eng to the AF 1 Class of Service
-.sp
-.LP
-This example sends all traffic from \fBeng\fR to the \fBAF 1\fR class of
-service. It is documented in four separate steps:
-
-.sp
-.LP
-The following step creates a \fBtokenmt\fR action with three outcomes:
-
-.sp
-.in +2
-.nf
-#meter for class 1.
-action {
- name AF_CL1
- module tokenmt
- params{
- committed_rate 64
- committed_burst 75
- peak_burst 150
- global_stats TRUE
- red_action_name drop
- yellow_action_name markAF12
- green_action_name markAF11
- }
-}
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The following step creates two \fBdscpmk\fR actions:
-
-.sp
-.in +2
-.nf
-#class 1, low drop precedence.
-action {
- name markAF11
- module dscpmk
- params{
- dscp_map {0-63:28}
- dscp_detailed_stats TRUE
- global_stats TRUE
- next_action acct1
- }
-}
-#class 1, medium drop precedence.
-action {
- name markAF12
- module dscpmk
- params {
- dscp_map {0-63:30}
- dscp_detailed_stats TRUE
- global_stats TRUE
- next_action acct1
- }
-}
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The following step creates an accounting action:
-
-.sp
-.in +2
-.nf
-#billing for transmitted class 1 traffic.
-action {
- name acct1
- module flowacct
- params {
- timer 10
- timeout 30
- global_stats TRUE
-max_limit 1024
-next_action continue
- }
-}
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The following step creates an \fBipgpc\fR action:
-
-.sp
-.in +2
-.nf
-#traffic from eng sent, traffic from ebay dropped.
-action {
- name ipgpc.classify
- module ipgpc
- class {
- name from_eng
- enable_stats TRUE
- next_action AF_CL1
- }
- class {
- name from_ebay
- enable_stats TRUE
- next_action drop
- }
-
- filter {
- name from_eng
- saddr eng-subnet
- class from_eng
- }
- filter {
- name from_ebay
- saddr ebay-subnet
- class from_ebay
- }
-}
-.fi
-.in -2
-.sp
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/inet/ipqosinit.conf\fR\fR
-.ad
-.sp .6
-.RS 4n
-Contains the \fBIPQoS\fR configuration loaded at boot time. If this file
-exists, it is read from the \fBnetwork/initial:default\fR service.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/inet/ipqosconf.1.sample\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sample configuration file for an application server
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/inet/ipqosconf.2.sample\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sample configuration file that meters the traffic for a specified application
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/inet/ipqosconf.3.sample\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sample configuration file that marks the ethernet headers of web traffic with a
-given user priority
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBsyslog\fR(3C), \fBgetipnodebyname\fR(3SOCKET),
-\fBgetprotobyname\fR(3SOCKET), \fBgetservbyname\fR(3SOCKET),
-\fBattributes\fR(5), \fBdlcosmk\fR(7IPP), \fBdscpmk\fR(7IPP),
-\fBflowacct\fR(7IPP), \fBipgpc\fR(7IPP), \fBipqos\fR(7IPP),
-\fBtokenmt\fR(7IPP), \fBtswtclmt\fR(7IPP)
-.SH DIAGNOSTICS
-.sp
-.LP
-\fBipqosconf\fR sends messages to \fBsyslog\fR of facility user, severity
-notice when any changes are made to the \fBIPQoS\fR configuration.
-.sp
-.LP
-Errors that occur during an \fBipqosconf\fR operation send an error message to
-the console by default. For the application of a new configuration if the
-\fB-s\fR option is set then these messages are sent to \fBsyslog\fR as facility
-user, severity error instead. If the \fB-v\fR option is present during an
-application then all error and change notificationmessages are sent to the
-console as well as their default destination.
diff --git a/usr/src/man/man1m/ipsecalgs.1m b/usr/src/man/man1m/ipsecalgs.1m
deleted file mode 100644
index 915596ba9c..0000000000
--- a/usr/src/man/man1m/ipsecalgs.1m
+++ /dev/null
@@ -1,601 +0,0 @@
-'\" te
-.\" Copyright (C) 2006, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH IPSECALGS 1M "Jul 5, 2007"
-.SH NAME
-ipsecalgs \- configure the IPsec protocols and algorithms table
-.SH SYNOPSIS
-.LP
-.nf
-\fBipsecalgs\fR
-.fi
-
-.LP
-.nf
-\fBipsecalgs\fR \fB-l\fR
-.fi
-
-.LP
-.nf
-\fBipsecalgs\fR \fB-s\fR
-.fi
-
-.LP
-.nf
-\fBipsecalgs\fR \fB-a\fR [\fB-P\fR \fIprotocol-number\fR | \fB-p\fR \fIprotocol-name\fR] \fB-k\fR \fIkeylen-list\fR
- [\fB-i\fR \fIinc\fR] [\fB-K\fR \fIdefault-keylen\fR] \fB-b\fR \fIblocklen-list\fR \fB-n\fR \fIalg-names\fR
- \fB-N\fR \fIalg-number\fR \fB-m\fR \fImech-name\fR [\fB-f\fR] [\fB-s\fR]
-.fi
-
-.LP
-.nf
-\fBipsecalgs\fR \fB-P\fR \fIprotocol-number\fR \fB-p\fR \fIprotocol-name\fR
- [\fB-e\fR \fIexec-mode\fR] [\fB-f\fR] [\fB-s\fR]
-.fi
-
-.LP
-.nf
-\fBipsecalgs\fR \fB-r\fR \fB-p\fR \fIprotocol-name\fR [] \fB-n\fR \fIalg-name\fR [\fB-s\fR]
-.fi
-
-.LP
-.nf
-\fBipsecalgs\fR \fB-r\fR \fB-p\fR \fIprotocol-name\fR [] \fB-N\fR \fIalg-number\fR [\fB-s\fR]
-.fi
-
-.LP
-.nf
-\fBipsecalgs\fR \fB-R\fR \fB-P\fR \fIprotocol-number\fR [\fB-s\fR]
-.fi
-
-.LP
-.nf
-\fBipsecalgs\fR \fB-R\fR \fB-p\fR \fIprotocol-name\fR [\fB-s\fR]
-.fi
-
-.LP
-.nf
-\fBipsecalgs\fR \fB-e\fR \fIexec-mode\fR \fB-P\fR \fIprotocol-number\fR [\fB-s\fR]
-.fi
-
-.LP
-.nf
-\fBipsecalgs\fR \fB-e\fR \fIexec-mode\fR \fB-p\fR \fIprotocol-name\fR [\fB-s\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-Use the \fBipsecalgs\fR command to query and modify the IPsec protocol and
-algorithms stored in \fB/etc/inet/ipsecalgs\fR. You can use the \fBipsecalgs\fR
-command to do the following:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-list the currently defined IPsec protocols and algorithms
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-modify IPsec protocols definitions
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-modify IPsec algorithms definitions
-.RE
-.sp
-.LP
-\fBNever\fR edit the \fB/etc/inet/ipsecalgs\fR file manually. The valid IPsec
-protocols and algorithms are described by the ISAKMP DOI. See \fIRFC 2407\fR.
-In the general sense, a Domain of Interpretation (DOI) defines data formats,
-network traffic exchange types, and conventions for naming security-relevant
-information such as security policies or cryptographic algorithms and modes.
-For \fBipsecalgs\fR, the DOI defines naming and numbering conventions for
-algorithms and the protocols they belong to. These numbers are defined by the
-Internet Assigned Numbers Authority (IANA). Each algorithm belongs to a
-protocol. Algorithm information includes supported key lengths, block or MAC
-length, and the name of the cryptographic mechanism corresponding to that
-algorithm. This information is used by the IPsec modules, \fBipsecesp\fR(7P)
-and \fBipsecah\fR(7P), to determine the authentication and encryption
-algorithms that can be applied to IPsec traffic.
-.sp
-.LP
-The following protocols are predefined:
-.sp
-.ne 2
-.na
-\fB\fBIPSEC_PROTO_ESP\fR\fR
-.ad
-.RS 19n
-Defines the encryption algorithms (transforms) that can be used by IPsec to
-provide data confidentiality.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBIPSEC_PROTO_AH\fR\fR
-.ad
-.RS 19n
-Defines the authentication algorithms (transforms) that can be used by IPsec to
-provide authentication.
-.RE
-
-.sp
-.LP
-The mechanism name specified by an algorithm entry must correspond to a valid
-Solaris Cryptographic Framework mechanism. You can obtain the list of available
-mechanisms by using the \fBcryptoadm\fR(1M) command.
-.sp
-.LP
-Applications can retrieve the supported algorithms and their associated
-protocols by using the functions \fBgetipsecalgbyname\fR(3NSL),
-\fBgetipsecalgbynum\fR(3NSL), \fBgetipsecprotobyname\fR(3NSL) and
-\fBgetipsecprotobynum\fR(3NSL).
-.sp
-.LP
-Modifications to the protocols and algorithm by default update only the
-contents of the \fB/etc/inet/ipsecalgs\fR configuration file. In order for the
-new definitions to be used for IPsec processing, the changes must be
-communicated to the kernel using the \fB-s\fR option. See \fBNOTES\fR for a
-description of how the \fBipsecalgs\fR configuration is synchronized with the
-kernel at system restart.
-.sp
-.LP
-When invoked without arguments, \fBipsecalgs\fR displays the list of mappings
-that are currently defined in \fB/etc/inet/ipsecalgs\fR. You can obtain the
-corresponding kernel table of protocols and algorithms by using the \fB-l\fR
-option.
-.SH OPTIONS
-.sp
-.LP
-\fBipsecalgs\fR supports the following options:
-.sp
-.ne 2
-.na
-\fB\fB-a\fR\fR
-.ad
-.RS 6n
-Adds an algorithm of the protocol specified by the \fB-P\fR option. The
-algorithm name(s) are specified with the \fB-n\fR option. The supported key
-lengths and block sizes are specified with the \fB-k\fR, \fB-i\fR, and \fB-b\fR
-options.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-b\fR\fR
-.ad
-.RS 6n
-Specifies the block or MAC lengths of an algorithm, in bytes. Set more than one
-block length by separating the values with commas.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-e\fR\fR
-.ad
-.RS 6n
-Designates the execution mode of cryptographic requests for the specified
-protocol in the absence of cryptographic hardware provider. See
-\fBcryptoadm\fR(1M). \fIexec-mode\fR can be one of the following values:
-.sp
-.ne 2
-.na
-\fB\fBsync\fR\fR
-.ad
-.RS 9n
-Cryptographic requests are processed synchronously in the absence of a
-cryptographic hardware provider. This execution mode leads to better latency
-when no cryptographic hardware providers are available
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBasync\fR\fR
-.ad
-.RS 9n
-Cryptographic requests are always processed asynchronously in the absence of
-cryptographic hardware provider. This execution can improve the resource
-utilization on a multi-CPU system, but can lead to higher latency when no
-cryptographic hardware providers are available.
-.RE
-
-This option can be specified when defining a new protocol or to modify the
-execution mode of an existing protocol. By default, the \fBsync\fR execution
-mode is used in the absence of a cryptographic hardware provider.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR\fR
-.ad
-.RS 6n
-Used with the \fB-a\fR option to force the addition of an algorithm or protocol
-if an entry with the same name or number already exists.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-i\fR\fR
-.ad
-.RS 6n
-Specifies the valid key length increments in bits. This option must be used
-when the valid key lengths for an algorithm are specified by a range with the
-\fB-k\fR option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-K\fR\fR
-.ad
-.RS 6n
-Specifies the default key lengths for an algorithm, in bits. If the \fB-K\fR
-option is not specified, the minimum key length will be determined as follows:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-If the supported key lengths are specified by range, the default key length
-will be the minimum key length.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-If the supported key lengths are specified by enumeration, the default key
-length will be the first listed key length.
-.RE
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-k\fR\fR
-.ad
-.RS 6n
-Specifies the supported key lengths for an algorithm, in bits. You can
-designate the supported key lengths by enumeration or by range.
-.sp
-Without the \fB-i\fR option, \fB-k\fR specifies the supported key lengths by
-enumeration. In this case, \fIkeylen-list\fR consists of a list of one or more
-key lengths separated by commas, for example:
-.sp
-.in +2
-.nf
-128,192,256
-.fi
-.in -2
-.sp
-
-The listed key lengths need not be increasing, and the first listed key length
-will be used as the default key length for that algorithm unless the \fB-K\fR
-option is used.
-.sp
-With the \fB-i\fR option, \fB-k\fR specifies the range of supported key lengths
-for the algorithm. The minimum and maximum key lengths must be separated by a
-dash ('\fB-\fR') character, for example:
-.sp
-.in +2
-.nf
-32-448
-.fi
-.in -2
-.sp
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR\fR
-.ad
-.RS 6n
-Displays the kernel algorithm tables.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-m\fR\fR
-.ad
-.RS 6n
-Specifies the name of the cryptographic framework mechanism name corresponding
-to the algorithm. Cryptographic framework mechanisms are described in the
-\fBcryptoadm\fR(1M) man page.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-N\fR\fR
-.ad
-.RS 6n
-Specifies an algorithm number. The algorithm number for a protocol must be
-unique. IANA manages the algorithm numbers. See \fIRFC 2407\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR\fR
-.ad
-.RS 6n
-Specifies one or more names for an algorithm. When adding an algorithm with the
-\fB-a\fR option, \fIalg-names\fR contains a string or a comma-separated list of
-strings, for example:
-.sp
-.in +2
-.nf
-des-cbs,des
-.fi
-.in -2
-.sp
-
-When used with the \fB-r\fR option to remove an algorithm, \fIalg-names\fR
-contains one of the valid algorithm names.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-P\fR\fR
-.ad
-.RS 6n
-Adds a protocol of the number specified by \fIprotocol-number\fR with the name
-specified by the \fB-p\fR option. This option is also used to specify an IPsec
-protocol when used with the \fB-a\fR and the \fB-R\fR options. Protocol numbers
-are managed by the IANA. See \fIRFC 2407\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR\fR
-.ad
-.RS 6n
-Specifies the name of the IPsec protocol.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-R\fR\fR
-.ad
-.RS 6n
-Removes and IPsec protocol from the algorithm table. The protocol can be
-specified by number by using the \fB-P\fR option or by name by using the
-\fB-p\fR option. The algorithms associated with the protocol are removed as
-well.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-r\fR\fR
-.ad
-.RS 6n
-Removes the mapping for an algorithm The algorithm can be specified by
-algorithm number using the \fB-N\fR option or by algorithm name using the
-\fB-A\fR option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR\fR
-.ad
-.RS 6n
-Synchronizes the kernel with the contents of \fB/etc/inet/ipsecalgs\fR. The
-contents of \fB/etc/inet/ipsecalgs\fR are always updated, but new information
-is not passed on to the kernel unless the \fB-s\fR is used. See \fBNOTES\fR for
-a description of how the \fBipsecalgs\fR configuration is synchronized with the
-kernel at system restart.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRAdding a Protocol for IPsec Encryption
-.sp
-.LP
-The following example shows how to add a protocol for IPsec encryption:
-
-.sp
-.in +2
-.nf
-example# \fBipsecalgs -P 3 -p "IPSEC_PROTO_ESP"\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRAdding the Blowfish Algorithm
-.sp
-.LP
-The following example shows how to add the Blowfish algorithm:
-
-.sp
-.in +2
-.nf
-example# \fBipsecalgs -a -P 3 -k 32-488 -K 128 -i 8 -n "blowfish" \e
- -b 8 -N 7 -m CKM_BF_CBC\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRUpdating the Kernel Algorithm Table
-.sp
-.LP
-The following example updates the kernel algorithm table with the currently
-defined protocol and algorithm definitions:
-
-.sp
-.in +2
-.nf
-example# \fBsvcadm refresh ipsecalgs\fR
-.fi
-.in -2
-.sp
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/inet/ipsecalgs\fR\fR
-.ad
-.sp .6
-.RS 4n
-File that contains the configured IPsec protocols and algorithm definitions.
-Never edit this file manually.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBcryptoadm\fR(1M), \fBipsecconf\fR(1M), \fBipseckey\fR(1M), \fBsvcadm\fR(1M),
-\fBgetipsecalgbyname\fR(3NSL), \fBgetipsecprotobyname\fR(3NSL),
-\fBike.config\fR(4), \fBattributes\fR(5), \fBsmf\fR(5), \fBipsecah\fR(7P),
-\fBipsecesp\fR(7P)
-.sp
-.LP
-Piper, Derrell, \fIRFC 2407, The Internet IP Security Domain of Interpretation
-for ISAKMP\fR. Network Working Group. November 1998.
-.SH NOTES
-.sp
-.LP
-When protocols or algorithm definitions that are removed or altered, services
-that rely upon these definitions can become unavailable. For example, if the
-\fBIPSEC_PROTO_ESP\fR protocol is removed, then IPsec cannot encrypt and
-decrypt packets.
-.sp
-.LP
-Synchronization of the \fBipsecalgs\fR configuration with the kernel at system
-startup is provided by the following \fBsmf\fR(5) service:
-.sp
-.in +2
-.nf
-svc:/network/ipsec/ipsecalgs:default
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The IPsec services are delivered as follows:
-.sp
-.in +2
-.nf
-svc:/network/ipsec/policy:default (enabled)
-svc:/network/ipsec/ipsecalgs:default (enabled)
-svc:/network/ipsec/manual-key:default (disabled)
-svc:/network/ipsec/ike:default (disabled)
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Services that are delivered disabled are delivered that way because the system
-administrator must create configuration files for those services before
-enabling them. See \fBipseckey\fR(1M) and \fBike.config\fR(4). The default
-policy for the \fBpolicy\fR service is to allow all traffic to pass without
-IPsec protection. See \fBipsecconf\fR(1M).
-.sp
-.LP
-The correct administrative procedure is to create the configuration file for
-each service, then enable each service using \fBsvcadm\fR(1M), as shown in the
-following example:
-.sp
-.in +2
-.nf
-example# \fBsvcadm enable ipsecalgs\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The service's status can be queried using the \fBsvcs\fR(1) command.
-.sp
-.LP
-If the \fBipsecalgs\fR configuration is modified, the new configuration should
-be resynchronized as follows:
-.sp
-.in +2
-.nf
-example# \fBsvcadm refresh ipsecalgs\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Administrative actions on this service, such as enabling, disabling,
-refreshing, and requesting restart can be performed using \fBsvcadm\fR(1M). A
-user who has been assigned the authorization shown below can perform these
-actions:
-.sp
-.in +2
-.nf
-solaris.smf.manage.ipsec
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-See \fBauths\fR(1), \fBuser_attr\fR(4), \fBrbac\fR(5).
-.sp
-.LP
-The \fBipsecalgs\fR \fBsmf\fR(5) service does not have any user-configurable
-properties.
-.sp
-.LP
-The \fBsmf\fR(5) framework records any errors in the service-specific log file.
-Use any of the following commands to examine the \fBlogfile\fR property:
-.sp
-.in +2
-.nf
-example# \fBsvcs -l ipsecalgs\fR
-example# \fBsvcprop ipsecalgs\fR
-example# \fBsvccfg -s ipsecalgs listprop\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-This command requires \fBsys_ip_config\fR privilege to operate and thus can run
-in the global zone and in exclusive-IP zones. All shared-IP zones share the
-same available set of algorithms; however, you can use \fBipsecconf\fR(1M) to
-set up system policy that uses differing algorithms for various shared-IP
-zones. All exclusive-IP zones have their own set of algorithms.
diff --git a/usr/src/man/man1m/ipsecconf.1m b/usr/src/man/man1m/ipsecconf.1m
deleted file mode 100644
index 4dd2e355d4..0000000000
--- a/usr/src/man/man1m/ipsecconf.1m
+++ /dev/null
@@ -1,1859 +0,0 @@
-'\" te
-.\" Copyright (C) 2008, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
-.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH IPSECCONF 1M "April 9, 2016"
-.SH NAME
-ipsecconf \- configure system wide IPsec policy
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/ipsecconf\fR
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/ipsecconf\fR \fB-a\fR \fIfile\fR [\fB-q\fR]
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/ipsecconf\fR \fB-c\fR \fIfile\fR
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/ipsecconf\fR \fB-d\fR [\fB-i\fR \fItunnel-name\fR] {\fIindex\fR, \fItunnel-name\fR, \fIindex\fR}
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/ipsecconf\fR \fB-f\fR [\fB-i\fR \fItunnel-name\fR]
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/ipsecconf\fR \fB-F\fR
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/ipsecconf\fR \fB-l\fR [\fB-i\fR \fItunnel-name\fR] [\fB-n\fR]
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/ipsecconf\fR \fB-L\fR [\fB-n\fR]
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBipsecconf\fR utility configures the IPsec policy for a host or for one
-of its tunnels. Once the policy is configured, all outbound and inbound
-datagrams are subject to policy checks as they exit and enter the host or
-tunnel. For the host policy, if no entry is found, no policy checks will be
-completed, and all the traffic will pass through. For a tunnel, if no entry is
-found and there is at least one entry for the tunnel, the traffic will
-automatically drop. The difference in behavior is because of the assumptions
-about IPsec tunnels made in many implementations. Datagrams that are being
-forwarded will not be subjected to policy checks that are added using this
-command. See \fBifconfig\fR(1M) and \fBdladm\fR(1M) for information on how to
-protect forwarded packets. Depending upon the match of the policy entry, a
-specific action will be taken.
-.sp
-.LP
-This command can be run only by superuser.
-.sp
-.LP
-Each entry can protect traffic in either one direction (requiring a pair of
-entries) or by a single policy entry which installs the needed symmetric
-\fBsadb\fR rules.
-.sp
-.LP
-When the command is issued without any arguments, the list of file policy
-entries loaded are shown. To display the (\fBspd p.e.\fRs) use the \fB-l\fR
-option. Both will display the index number for the entry. To specify a single
-tunnel's SPD, use the \fB-i\fR option in combination with \fB-l\fR. To specify
-all SPDs, both host and for all tunnels, use \fB-L\fR.
-.sp
-.LP
-Note, since one file policy entry (\fBFPE\fR) can generate multiple SPD pol
-entries (\fBSPE\fRs), the list of FPEs may not show all the actual entries.
-However, it is still useful in determining what what rules have been added to
-get the spd into its current state.
-.sp
-.LP
-You can use the \fB-d\fR option with the index to delete a given policy in the
-system. If the \fB-d\fR option removes an FPE entry that produces multiple
-SPEs, only then SPD with the same policy index as the FPE will be removed. This
-can produce a situation where there may be SPEs when there are no FPEs.
-.sp
-.LP
-As with \fB-l\fR, \fB-d\fR can use the \fB-i\fR flag to indicate a tunnel. An
-alternate syntax is to specify a tunnel name, followed by a comma (\fB,\fR),
-followed by an index. For example, \fBip.tun0,1\fR.
-.sp
-.LP
-With no options, the entries are displayed in the order that they were added,
-which is not necessarily the order in which the traffic match takes place.
-.sp
-.LP
-To view the order in which the traffic match will take place, use the \fB-l\fR
-option. The rules are ordered such that all bypass rules are checked first,
-then ESP rules, then AH rules. After that, they are checked in the order
-entered.
-.sp
-.LP
-Policy entries are not preserved across system restarts. Permanent policy
-entries should be added to \fB/etc/inet/ipsecinit.conf\fR. This file is read by
-the following \fBsmf\fR(5) service:
-.sp
-.in +2
-.nf
-svc:/network/ipsec/policy
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-See \fBNOTES\fR for more information on managing IPsec security policy and
-\fBSECURITY\fR for issues in securing \fB/etc/inet/ipsecinit.conf\fR.
-.SH OPTIONS
-.LP
-\fBipsecconf\fR supports the following options:
-.sp
-.ne 2
-.na
-\fB\fB-a\fR \fIfile\fR\fR
-.ad
-.sp .6
-.RS 4n
-Add the IPsec policy to the system as specified by each entry in the file. An
-IPsec configuration file contains one or more entries that specify the
-configuration. Once the policy is added, all outbound and inbound datagrams are
-subject to policy checks.
-.sp
-Entries in the files are described in the section below. Examples can be found
-in the section below.
-.sp
-Policy is latched for TCP/UDP sockets on which a \fBconnect\fR(3SOCKET) or
-\fBaccept\fR(3SOCKET) is issued. So, the addition of new policy entries may not
-affect such endpoints or sockets. However, the policy will be latched for a
-socket with an existing non-null policy. Thus, make sure that there are no
-preexisting connections that will be subject to checks by the new policy
-entries.
-.sp
-The feature of policy latching explained above may change in the future. It is
-not advisable to depend upon this feature.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-c\fR \fIfile\fR\fR
-.ad
-.sp .6
-.RS 4n
-Check the syntax of the configuration file and report any errors without making
-any changes to the policy. This option is useful when debugging configurations
-and when \fBsmf\fR(5) reports a configuration error. See \fBSECURITY\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-d\fR \fIindex\fR\fR
-.ad
-.sp .6
-.RS 4n
-Delete the host policy denoted by the index. The index is obtained by invoking
-\fBipsecconf\fR without any arguments, or with the \fB-l\fR option. See
-DESCRIPTION for more information. Once the entry is deleted, all outbound and
-inbound datagrams affected by this policy entry will not be subjected to policy
-checks. Be advised that with connections for which the policy has been latched,
-packets will continue to go out with the same policy, even if it has been
-deleted. It is advisable to use the \fB-l\fR option to find the correct policy
-index.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-d\fR \fIname\fR,\fIindex\fR\fR
-.ad
-.sp .6
-.RS 4n
-Delete the policy entry denoted by \fIindex\fR on a tunnel denoted by
-\fIname\fR. Since tunnels affect traffic that might originate off-node,
-latching does not apply as it does in the host policy case. Equivalent to:
-\fB-d\fR \fIindex\fR \fB-i\fR \fIname\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR\fR
-.ad
-.sp .6
-.RS 4n
-Flush all the policies in the system. Constraints are similar to the \fB-d\fR
-option with respect to latching and host versus per-tunnel behavior.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-F\fR\fR
-.ad
-.sp .6
-.RS 4n
-Flush all policies on all tunnels and also flush all host policies.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-i\fR \fIname\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify a tunnel interface name for use with the \fB-d\fR, \fB-f\fR, or
-\fB-l\fR flags.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR\fR
-.ad
-.sp .6
-.RS 4n
-Listing of a single policy table, defaulting to the host policy. When
-\fBipsecconf\fR is invoked without any arguments, a complete list of policy
-entries with indexes added by the user since boot is displayed. The current
-table can differ from the previous one if, for example, a multi-homed entry was
-added or policy reordering occurred, or if a single rule entry generates two
-\fBspd\fR rules In the case of a multi-homed entry, all the addresses are
-listed explicitly. If a mask was not specified earlier but was instead inferred
-from the address, it will be explicitly listed here. This option is used to
-view policy entries in the correct order. The outbound and inbound policy
-entries are listed separately.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-L\fR\fR
-.ad
-.sp .6
-.RS 4n
-Lists all policy tables, including host policy and all tunnel instances
-(including configured but unplumbed).
-.sp
-If \fB-i\fR is specified, \fB-L\fR lists the policy table for a specific tunnel
-interface.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR\fR
-.ad
-.sp .6
-.RS 4n
-Show network addresses, ports, protocols in numbers. The \fB-n\fR option may
-only be used with the \fB-l\fR option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-q\fR\fR
-.ad
-.sp .6
-.RS 4n
-Quiet mode. Suppresses the warning message generated when adding policies.
-.RE
-
-.SH OPERANDS
-.LP
-Each policy entry contains three parts specified as follows:
-.sp
-.in +2
-.nf
-{pattern} action {properties}
-.fi
-.in -2
-
-.sp
-.LP
-or
-.sp
-.in +2
-.nf
-{pattern} action {properties} ["or" action {properties}]*
-.fi
-.in -2
-
-.sp
-.LP
-Every policy entry begins on a new line and can span multiple lines. If an
-entry exceeds the length of a line, you should split it only within a "braced"
-section or immediately before the first (left-hand) brace of a braced section.
-Avoid using the backslash character (\e). See EXAMPLES.
-.sp
-.LP
-The \fIpattern\fR section, as shown in the syntax above, specifies the traffic
-pattern that should be matched against the outbound and inbound datagrams. If
-there is a match, a specific \fIaction\fR determined by the second argument
-will be taken, depending upon the \fIproperties\fR of the policy entry.
-.sp
-.LP
-If there is an \fBor\fR in the rule (multiple action-properties for a given
-pattern), a transmitter will use the first action-property pair that works,
-while a receiver will use any that are acceptable.
-.sp
-.LP
-\fIpattern\fR and \fIproperties\fR are name-value pairs where name and value
-are separated by a <space>, <tab> or <newline>. Multiple name-value pairs
-should be separated by <space>, <tab> or <newline>. The beginning and end of
-the pattern and properties are marked by \fB{\fR and \fB}\fR respectively.
-.sp
-.LP
-Files can contain multiple policy entries. An unspecified name-value pair in
-the \fIpattern\fR will be considered as a wildcard. Wildcard entries match any
-corresponding entry in the datagram.
-.sp
-.LP
-One thing to remember is that UDP port 500 is always bypassed regardless of any
-policy entries. This is a requirement for \fBin.iked\fR(1M) to work.
-.sp
-.LP
-File can be commented by using a \fB#\fR as the first character. Comments may
-be inserted either at the beginning or the end of a line.
-.sp
-.LP
-The complete syntax of a policy entry is:
-.sp
-.in +2
-.nf
-policy ::= { <pattern1> } <action1> { <properties1> } |
- { <pattern2> } <action2> { <properties2> }
- [ 'or' <action2> { <properties2>} ]*
-
- pattern1 ::= <pattern_name_value_pair1>*
-
- pattern2 ::= <pattern_name_value_pair2>*
-
- action1 ::= apply | permit | bypass | pass
- action2 ::= bypass | pass | drop | ipsec
-
- properties1 ::= {<prop_name_value_pair1>}
- properties2 ::= {<prop_name_value_pair2>}
-
-
- pattern_name_value_pair1 ::=
- saddr <address>/<prefix> |
- src <address>/<prefix> |
- srcaddr <address>/<prefix> |
- smask <mask> |
- sport <port> |
- daddr <address>/<prefix> |
- dst <address>/<prefix> |
- dstaddr <address>/<prefix> |
- dmask <mask> |
- dport <port> |
- ulp <protocol> |
- proto <protocol> |
- type <icmp-type> |
- type <number>-<number> |
- code <icmp-code>
- code <number>-<number>
- tunnel <interface-name> |
- negotiate <tunnel,transport>
-
- pattern_name_value_pair2 ::=
- raddr <address>/<prefix> |
- remote <address>/<prefix> |
- rport <port> |
- laddr <address>/<prefix> |
- local <address>/<prefix> |
- lport <port> |
- ulp <protocol> |
- type <icmp-type> |
- type <number>-<number> |
- code <icmp-code> |
- code <number>-<number>
- proto <protocol> |
- tunnel <interface-name> |
- negotiate <tunnel,transport> |
- dir <dir_val2>
-
- address ::= <IPv4 dot notation> | <IPv6 colon notation> |
- <String recognized by gethostbyname>|
- <String recognized by getnetbyname>
-
- prefix ::= <number>
-
- mask ::= <0xhexdigit[hexdigit]> | <0Xhexdigit[hexdigit]> |
- <IPv4 dot notation>
-
- port ::= <number>| <String recognized by getservbyname>
-
- protocol ::= <number>| <String recognized by getprotobyname>
-
- prop_name_value_pair1 ::=
- auth_algs <auth_alg> |
- encr_algs <encr_alg> |
- encr_auth_algs <auth_alg> |
- sa <sa_val> |
- dir <dir_val1>
-
- prop_name_value_pair2 ::=
- auth_algs <auth_alg> |
- encr_algs <encr_alg> |
- encr_auth_algs <auth_alg> |
- sa <sa_val>
-
- auth_alg ::= <auth_algname> ['(' <keylen> ')']
- auth_algname ::= any | md5 | hmac-md5 | sha | sha1 | hmac-sha |
- hmac-sha1 | hmac-sha256 | hmac-sha384 |
- hmac-sha512 |<number>
-
- encr_alg ::= <encr_algname> ['(' <keylen> ')']
- encr_algname ::= any | aes | aes-cbc | des | des-cbc | 3des |
- 3des-cbc | blowfish | blowfish-cbc | <number>
-
- keylen ::= <number> | <number>'..' | '..'<number> | <number>'..' \e
- <number>
-
- sa_val ::= shared | unique
-
- dir_val1 ::= out | in
- dir_val2 ::= out | in | both
-
- number ::= < 0 | 1 | 2 ... 9> <number>
- icmp-type ::= <number> | unreach | echo | echorep | squench |
- redir | timex | paramprob | timest | timestrep |
- inforeq | inforep | maskreq | maskrep | unreach6 |
- pkttoobig6 | timex6 | paramprob6 | echo6 | echorep6 |
- router-sol6 | router-ad6 | neigh-sol6 | neigh-ad6 |
- redir6
-
- icmp-code ::= <number> | net-unr | host-unr | proto-unr | port-unr |
- needfrag | srcfail | net-unk | host-unk | isolate |
- net-prohib | host-prohib | net-tos | host-tos |
- filter-prohib | host-preced | cutoff-preced |
- no-route6 | adm-prohib6 | addr-unr6 | port-unr6 |
- hop-limex6 | frag-re-timex6 | err-head6 | unrec-head6 |
- unreq-opt6
-.fi
-.in -2
-
-.sp
-.LP
-Policy entries may contain the following (name value) pairs in the
-\fIpattern\fR field. Each (name value) pair may appear only once in given
-policy entry.
-.sp
-.ne 2
-.na
-\fBladdr/plen\fR
-.ad
-.br
-.na
-\fBlocal/plen\fR
-.ad
-.sp .6
-.RS 4n
-The value that follows is the local address of the datagram with the prefix
-length. Only plen leading bits of the source address of the packet will be
-matched. plen is optional. Local means destination on incoming and source on
-outgoing packets. The source address value can be a hostname as described in
-getaddrinfo(3SOCKET) or a network name as described in
-\fBgetnetbyname\fR(3XNET) or a host address or network address in the Internet
-standard dot notation. See \fBinet_addr\fR(3XNET). If a hostname is given and
-getaddrinfo(3SOCKET) returns multiple addresses for the host, then policy will
-be added for each of the addresses with other entries remaining the same.
-.RE
-
-.sp
-.ne 2
-.na
-\fBraddr/plen\fR
-.ad
-.br
-.na
-\fBremote/plen\fR
-.ad
-.sp .6
-.RS 4n
-The value that follows is the remote address of the datagram with the prefix
-length. Only plen leading bits of the remote address of the packet will be
-matched. plen is optional. Remote means source on incoming packets and
-destination on outgoing packets. The remote address value can be a hostname as
-described in \fBgetaddrinfo\fR(3SOCKET) or a network name as described in
-\fBgetnetbyname\fR(3XNET) or a host address or network address in the Internet
-standard dot notation. See \fBinet_addr\fR(3XNET). If a hostname is given and
-\fBgetaddrinfo\fR(3SOCKET) returns multiple addresses for the host, then policy
-will be added for each of the addresses with other entries remaining the same.
-.RE
-
-.sp
-.ne 2
-.na
-\fBsrc/plen\fR
-.ad
-.br
-.na
-\fBsrcaddr/plen\fR
-.ad
-.br
-.na
-\fBsaddr/plen\fR
-.ad
-.sp .6
-.RS 4n
-The value that follows is the source address of the datagram with the prefix
-length. Only \fIplen\fR leading bits of the source address of the packet will
-be matched. \fIplen\fR is optional.
-.sp
-The source address value can be a hostname as described in
-\fBgetaddrinfo\fR(3SOCKET) or a network name as described in
-\fBgetnetbyname\fR(3XNET) or a host address or network address in the Internet
-standard dot notation. See \fBinet_addr\fR(3XNET).
-.sp
-If a hostname is given and \fBgetaddrinfo\fR(3SOCKET) returns multiple
-addresses for the host, then policy will be added for each of the addresses
-with other entries remaining the same.
-.RE
-
-.sp
-.ne 2
-.na
-\fBdaddr/plen\fR
-.ad
-.br
-.na
-\fBdest/plen\fR
-.ad
-.br
-.na
-\fBdstaddr/plen\fR
-.ad
-.sp .6
-.RS 4n
-The value that follows is the destination address of the datagram with the
-prefix length. Only \fIplen\fR leading bits of the destination address of the
-packet will be matched. \fIplen\fR is optional.
-.sp
-See \fIsaddr\fR for valid values that can be given. If multiple source and
-destination addresses are found, then a policy entry that covers each source
-address-destination address pair will be added to the system.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIsmask\fR\fR
-.ad
-.sp .6
-.RS 4n
-For IPv4 only. The value that follows is the source mask. If prefix length is
-given with \fIsaddr\fR, this should not be given. This can be represented
-either in hexadecimal number with a leading \fB0x\fR or \fB0X\fR, for example,
-\fB0xffff0000\fR, \fB0Xffff0000\fR or in the Internet decimal dot notation, for
-example, \fB255.255.0.0\fR and \fB255.255.255.0\fR. The mask should be
-contiguous and the behavior is not defined for non-contiguous masks.
-.sp
-\fIsmask\fR is considered only when \fIsaddr\fR is given.
-.sp
-For both IPv4 and IPv6 addresses, the same information can be specified as a
-\fIslen\fR value attached to the \fIsaddr\fR parameter.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIdmask\fR\fR
-.ad
-.sp .6
-.RS 4n
-Analogous to \fIsmask.\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIlport\fR\fR
-.ad
-.sp .6
-.RS 4n
-The value that follows is the local port of the datagram. This can be either a
-port number or a string searched with a NULL proto argument, as described in
-getservbyname(3XNET)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIrport\fR\fR
-.ad
-.sp .6
-.RS 4n
-The value that follows is the remote port of the datagram. This can be either a
-port number or a string searched with a NULL proto argument, as described in
-getservbyname(3XNET)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIsport\fR\fR
-.ad
-.sp .6
-.RS 4n
-The value that follows is the source port of the datagram. This can be either a
-port number or a string searched with a \fBNULL\fR proto argument, as described
-in \fBgetservbyname\fR(3XNET)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIdport\fR\fR
-.ad
-.sp .6
-.RS 4n
-The value that follows is the destination port of the datagram. This can be
-either a port number or a string as described in \fBgetservbyname\fR(3XNET)
-searched with \fBNULL\fR proto argument.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBproto\fR \fIulp\fR\fR
-.ad
-.sp .6
-.RS 4n
-The value that follows is the Upper Layer Protocol that this entry should be
-matched against. It could be a number or a string as described in
-\fBgetprotobyname\fR(3XNET). If no smask or plen is specified, a plen of 32 for
-IPv4 or 128 for IPv6 will be used, meaning a host. If the \fIulp\fR is
-\fBicmp\fR or \fBipv6-icmp\fR, any action applying IPsec must be the same for
-all \fBicmp\fR rules.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBtype\fR \fInum\fR or \fInum\fR-\fInum\fR\fR
-.ad
-.sp .6
-.RS 4n
-The value that follows is the ICMP type that this entry should be matched
-against. \fBtype\fR must be a number from 0 to 255, or one of the appropriate
-\fBicmp-type\fR keywords. Also, \fIulp\fR must be present and must specify
-either \fBicmp\fR or \fBipv6-icmp\fR. A range of types can be specified with a
-hyphen separating numbers.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcode\fR \fInum\fR or \fInum\fR-\fInum\fR\fR
-.ad
-.sp .6
-.RS 4n
-The value that follows is the ICMP code that this entry should be matched
-against. The value following the keyword \fBcode\fR must be a number from 0 to
-254 or one of the appropriate \fBicmp-code\fR keywords. Also, \fBtype\fR must
-be present. A range of codes can be specified with a hyphen separating numbers.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBtunnel\fR \fIname\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies a tunnel network interface, as configured with \fBifconfig\fR(1M). If
-a tunnel of \fIname\fR does not yet exist, the policy entries are added anyway,
-and joined with the tunnel state when it is created. If a tunnel is unplumbed,
-its policy entries disappear.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnegotiate\fR \fItunnel\fR\fR
-.ad
-.br
-.na
-\fB\fBnegotiate\fR \fItransport\fR\fR
-.ad
-.sp .6
-.RS 4n
-For per-tunnel security, specify whether the IPsec SAs protecting the traffic
-should be tunnel-mode SAs or transport-mode SAs. If transport-mode SAs are
-specified, no addresses can appear in the policy entry. Transport-mode is
-backward compatible with Solaris 9, and tunnel IPsec policies configured with
-\fBifconfig\fR(1M) will show up as transport mode entries here.
-.RE
-
-.sp
-.LP
-Policy entries may contain the following (name-value) pairs in the properties
-field. Each (name-value) pair may appear only once in a given policy entry.
-.sp
-.ne 2
-.na
-\fB\fBauth_algs\fR\fR
-.ad
-.sp .6
-.RS 4n
-An acceptable value following this implies that IPsec \fBAH\fR header will be
-present in the outbound datagram. Values following this describe the
-authentication algorithms that will be used while applying the IPsec \fBAH\fR
-on outbound datagrams and verified to be present on inbound datagrams. See
-\fIRFC 2402\fR.
-.sp
-This entry can contain either a string or a decimal number.
-.sp
-.ne 2
-.na
-\fB\fBstring\fR\fR
-.ad
-.sp .6
-.RS 4n
-This should be either \fBMD5\fR or \fBHMAC-MD5\fR denoting the \fBHMAC-MD5\fR
-algorithm as described in \fIRFC 2403\fR, and \fBSHA1\fR, or \fBHMAC-SHA1\fR or
-\fBSHA\fR or \fBHMAC-SHA\fR denoting the \fBHMAC-SHA\fR algorithm described in
-\fIRFC 2404\fR. You can use the \fBipsecalgs\fR(1M) command to obtain the
-complete list of authentication algorithms.
-.sp
-The string can also be \fBANY\fR, which denotes no-preference for the
-algorithm. Default algorithms will be chosen based upon the \fBSA\fRs available
-at this time for manual \fBSA\fRs and the key negotiating daemon for automatic
-\fBSA\fRs. Strings are not case-sensitive.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnumber\fR\fR
-.ad
-.sp .6
-.RS 4n
-A number in the range 1-255. This is useful when new algorithms can be
-dynamically loaded.
-.RE
-
-If \fIauth_algs\fR is not present, the \fBAH\fR header will not be present in
-the outbound datagram, and the same will be verified for the inbound datagram.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBencr_algs\fR\fR
-.ad
-.sp .6
-.RS 4n
-An acceptable value following this implies that IPsec \fBESP\fR header will be
-present in the outbound datagram. The value following this describes the
-encryption algorithms that will be used to apply the IPsec \fBESP\fR protocol
-to outbound datagrams and verify it to be present on inbound datagrams. See
-\fIRFC 2406\fR.
-.sp
-This entry can contain either a string or a decimal number. Strings are not
-case-sensitive.
-.sp
-.ne 2
-.na
-\fB\fBstring\fR\fR
-.ad
-.sp .6
-.RS 4n
-Can be one of the following:
-.sp
-
-.sp
-.TS
-c c c
-l l l .
-string value: Algorithm Used: See RFC:
-_
-DES or DES-CBC DES-CBC 2405
-3DES or 3DES-CBC 3DES-CBC 2451
-BLOWFISH or BLOWFISH-CBC BLOWFISH-CBC 2451
-AES or AES-CBC AES-CBC 2451
-.TE
-
-You can use the \fBipsecalgs\fR(1M) command to obtain the complete list of
-authentication algorithms.
-.sp
-The value can be \fBNULL\fR, which implies a \fBNULL\fR encryption, pursuant to
-\fIRFC 2410\fR. This means that the payload will not be encrypted. The string
-can also be \fBANY\fR, which indicates no-preference for the algorithm. Default
-algorithms will be chosen depending upon the SAs available at the time for
-manual SAs and upon the key negotiating daemon for automatic SAs. Strings are
-not case-sensitive.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnumber\fR\fR
-.ad
-.sp .6
-.RS 4n
-A decimal number in the range 1-255. This is useful when new algorithms can be
-dynamically loaded.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBencr_auth_algs\fR\fR
-.ad
-.sp .6
-.RS 4n
-An acceptable value following \fBencr_auth_algs\fR implies that the IPsec
-\fBESP\fR header will be present in the outbound datagram. The values following
-\fBencr_auth_algs\fR describe the authentication algorithms that will be used
-while applying the IPsec \fBESP\fR protocol on outbound datagrams and verified
-to be present on inbound datagrams. See \fIRFC 2406\fR. This entry can contain
-either a string or a number. Strings are case-insensitive.
-.sp
-.ne 2
-.na
-\fB\fBstring\fR\fR
-.ad
-.sp .6
-.RS 4n
-Valid values are the same as the ones described for \fBauth_algs\fR above.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnumber\fR\fR
-.ad
-.sp .6
-.RS 4n
-This should be a decimal number in the range 1-255. This is useful when new
-algorithms can be dynamically loaded.
-.RE
-
-If \fBencr_algs\fR is present and \fBencr_auth_algs\fR is not present in a
-policy entry, the system will use an \fBESP\fR \fBSA\fR regardless of whether
-the \fBSA\fR has an authentication algorithm or not.
-.sp
-If \fBencr_algs\fR is not present and \fBencr_auth_algs\fR is present in a
-policy entry, null encryption will be provided, which is equivalent to
-\fBencr_algs\fR with \fBNULL\fR, for outbound and inbound datagrams.
-.sp
-If both \fBencr_algs\fR and \fBencr_auth_algs\fR are not present in a policy
-entry, \fBESP\fR header will not be present for outbound datagrams and the same
-will be verified for inbound datagrams.
-.sp
-If both \fBencr_algs\fR and \fBencr_auth_algs\fR are present in a policy entry,
-\fBESP\fR header with integrity checksum will be present on outbound datagrams
-and the same will be verified for inbound datagrams.
-.sp
-For \fBencr_algs\fR, \fBencr_auth_algs\fR, and \fBauth_algs\fR a key length
-specification may be present. This is either a single value specifying the only
-valid key length for the algorithm or a range specifying the valid minimum
-and/or maximum key lengths. Minimum or maximum lengths may be omitted.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdir\fR\fR
-.ad
-.sp .6
-.RS 4n
-Values following this decides whether this entry is for outbound or inbound
-datagram. Valid values are strings that should be one of the following:
-.sp
-.ne 2
-.na
-\fB\fBout\fR\fR
-.ad
-.sp .6
-.RS 4n
-This means that this policy entry should be considered only for outbound
-datagrams.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBin\fR\fR
-.ad
-.sp .6
-.RS 4n
-This means that this policy entry should be considered only for inbound
-datagrams.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBboth\fR\fR
-.ad
-.sp .6
-.RS 4n
-This means that this policy entry should be considered for both inbound and
-outbound datagrams
-.RE
-
-This entry is not needed when the action is "apply", "permit" or "ipsec". But
-if it is given while the action is "apply" or "permit", it should be "out" or
-"in" respectively. This is mandatory when the action is "bypass".
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsa\fR\fR
-.ad
-.sp .6
-.RS 4n
-Values following this decide the attribute of the security association. Value
-indicates whether a unique security association should be used or any existing
-\fBSA\fR can be used. If there is a policy requirement, \fBSA\fRs are created
-dynamically on the first outbound datagram using the key management daemon.
-Static \fBSA\fRs can be created using \fBipseckey\fR(1M). The values used here
-determine whether a new \fBSA\fR will be used/obtained. Valid values are
-strings that could be one of the following:
-.sp
-.ne 2
-.na
-\fB\fBunique\fR\fR
-.ad
-.sp .6
-.RS 4n
-Unique Association. A new/unused association will be obtained/used for packets
-matching this policy entry. If an \fBSA\fR that was previously used by the same
-5 tuples, that is, {Source address, Destination address, Source port,
-Destination Port, Protocol (for example, \fBTCP\fR/\fBUDP\fR)} exists, it will
-be reused. Thus uniqueness is expressed by the 5 tuples given above. The
-security association used by the above 5 tuples will not be used by any other
-socket. For inbound datagrams, uniqueness will not be verified.
-.sp
-For tunnel-mode tunnels, \fBunique\fR is ignored. SAs are assigned per-rule in
-tunnel-mode tunnels. For transport-mode tunnels, \fBunique\fR is implicit,
-because the enforcement happens only on the outer-packet addresses and protocol
-value of either IPv4-in-IP or IPv6-in-IP.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBshared\fR\fR
-.ad
-.sp .6
-.RS 4n
-Shared association. If an \fBSA\fR exists already for this source-destination
-pair, it will be used. Otherwise a new \fBSA\fR will be obtained. This is the
-default.
-.RE
-
-This is mandatory only for outbound policy entries and should not be given for
-entries whose action is "bypass". If this entry is not given for inbound
-entries, for example, when "dir" is in or "action" is permit, it will be
-assumed to be shared.
-.RE
-
-.sp
-.LP
-Action follows the pattern and should be given before properties. It should be
-one of the following and this field is mandatory.
-.sp
-.ne 2
-.na
-\fB\fBipsec\fR\fR
-.ad
-.sp .6
-.RS 4n
-Use IPsec for the datagram as described by the properties, if the pattern
-matches the datagram. If ipsec is given without a dir spec , the pattern is
-matched to incoming and outgoing datagrams.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBapply\fR\fR
-.ad
-.sp .6
-.RS 4n
-Apply IPsec to the datagram as described by the properties, if the pattern
-matches the datagram. If \fBapply\fR is given, the pattern is matched only on
-the outbound datagram.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpermit\fR\fR
-.ad
-.sp .6
-.RS 4n
-Permit the datagram if the pattern matches the incoming datagram and satisfies
-the constraints described by the properties. If it does not satisfy the
-properties, discard the datagram. If \fBpermit\fR is given, the pattern is
-matched only for inbound datagrams.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBbypass\fR\fR
-.ad
-.br
-.na
-\fB\fBpass\fR\fR
-.ad
-.sp .6
-.RS 4n
-Bypass any policy checks if the pattern matches the datagram. \fBdir\fR in the
-properties decides whether the check is done on outbound or inbound datagrams.
-All the \fBbypass\fR entries are checked before checking with any other policy
-entry in the system. This has the highest precedence over any other entries.
-\fBdir\fR is the only field that should be present when action is \fBbypass\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdrop\fR\fR
-.ad
-.sp .6
-.RS 4n
-Drop any packets that match the pattern.
-.RE
-
-.sp
-.LP
-If the file contains multiple policy entries, for example, they are assumed to
-be listed in the order in which they are to be applied. In cases of multiple
-entries matching the outbound and inbound datagram, the first match will be
-taken. The system will reorder the policy entry, that is, add the new entry
-before the old entry, only when:
-.sp
-.LP
-The level of protection is "stronger" than the old level of protection.
-.sp
-.LP
-Currently, strength is defined as:
-.sp
-.in +2
-.nf
-AH and ESP > ESP > AH
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The standard uses of \fBAH\fR and \fBESP\fR were what drove this ranking of
-"stronger". There are flaws with this. \fBESP \fR can be used either without
-authentication, which will allow cut-and-paste or replay attacks, or without
-encryption, which makes it equivalent or slightly weaker than \fBAH\fR. An
-administrator should take care to use \fBESP\fR properly. See
-\fBipsecesp\fR(7P) for more details.
-.sp
-.LP
-If the new entry has \fBbypass\fR as action, \fBbypass\fR has the highest
-precedence. It can be added in any order, and the system will still match all
-the \fBbypass\fR entries before matching any other entries. This is useful for
-key management daemons which can use this feature to bypass IPsec as it
-protects its own traffic.
-.sp
-.LP
-Entries with both \fBAH\fR (\fBauth_algs\fR present in the policy entry) and
-\fBESP\fR (\fBencr_auth_algs\fR or \fBencr_auth_algs\fR present in the policy
-entry) protection are ordered after all the entries with \fBAH\fR and \fBESP\fR
-and before any \fBAH\fR-only and \fBESP\fR-only entries. In all other cases the
-order specified by the user is not modified, that is, newer entries are added
-at the end of all the old entries. See .
-.sp
-.LP
-A new entry is considered duplicate of the old entry if an old entry matches
-the same traffic pattern as the new entry. See for information on duplicates.
-.SH SECURITY
-.LP
-If, for example, the policy file comes over the wire from an \fBNFS\fR mounted
-file system, an adversary can modify the data contained in the file, thus
-changing the policy configured on the machine to suit his needs. Administrators
-should be cautious about transmitting a copy of the policy file over a network.
-.sp
-.LP
-To prevent non-privileged users from modifying the security policy, ensure that
-the configuration file is writable only by trusted users.
-.sp
-.LP
-The configuration file is defined by a property of the \fBpolicy\fR
-\fBsmf\fR(5) service. The default configuration file, is
-\fB/etc/inet/ipsecinit.conf\fR. This can be changed using the \fBsvcprop\fR(1)
-command. See \fBNOTES\fR for more details.
-.sp
-.LP
-The policy description language supports the use of tokens that can be resolved
-by means of a name service, using functions such as \fBgethostbyname\fR(3NSL).
-While convenient, these functions are only secure as the name service the
-system is configured to use. Great care should be taken to secure the name
-service if it is used to resolve elements of the security policy.
-.sp
-.LP
-If your source address is a host that can be looked up over the network and
-your naming system itself is compromised, then any names used will no longer be
-trustworthy.
-.sp
-.LP
-If the name switch is configured to use a name service that is not local to the
-system, bypass policy entries might be required to prevent the policy from
-preventing communication to the name service. See \fBnsswitch.conf\fR(4).
-.sp
-.LP
-Policy is latched for \fBTCP/UDP\fR sockets on which a \fBconnect\fR(3SOCKET)
-or \fBaccept\fR(3SOCKET) has been issued. Adding new policy entries will not
-have any effect on them. This feature of latching may change in the future. It
-is not advisable to depend upon this feature.
-.sp
-.LP
-The \fBipsecconf\fR command can only be run by a user who has sufficient
-privilege to open the \fBpf_key\fR(7P) socket. The appropriate privilege can be
-assigned to a user with the Network IPsec Management profile. See
-\fBprofiles\fR(1), \fBrbac\fR(5), \fBprof_attr\fR(4).
-.sp
-.LP
-Make sure to set up the policies before starting any communications, as
-existing connections may be affected by the addition of new policy entries.
-Similarly, do not change policies in the middle of a communication.
-.sp
-.LP
-Note that certain \fBndd\fR tunables affect how policies configured with this
-tool are enforced; see \fBipsecesp\fR(7P) for more details.
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRProtecting Outbound \fBTCP\fR Traffic With \fBESP\fR and the
-\fBAES\fR Algorithm
-.sp
-.LP
-The following example specified that any \fBTCP\fR packet from spiderweb to
-arachnid should be encrypted with \fBAES\fR, and the \fB SA\fR could be a
-shared one. It does not verify whether or not the inbound traffic is encrypted.
-
-.sp
-.in +2
-.nf
-#
-# Protect the outbound TCP traffic between hosts spiderweb
-# and arachnid with ESP and use AES algorithm.
-#
-{
- laddr spiderweb
- raddr arachnid
- ulp tcp
- dir out
-} ipsec {
- encr_algs AES
-}
-.fi
-.in -2
-
-.LP
-\fBExample 2 \fRVerifying Whether or Not Inbound Traffic is Encrypted
-.sp
-.LP
-Example 1 does not verify whether or not the inbound traffic is encrypted. The
-entry in this example protects inbound traffic:
-
-.sp
-.in +2
-.nf
-#
-# Protect the TCP traffic on inbound with ESP/DES from arachnid
-# to spiderweb
-#
-{
- laddr spiderweb
- raddr arachnid
- ulp tcp
- dir in
-} ipsec {
- encr_algs AES
-}
-.fi
-.in -2
-
-.sp
-.LP
-\fBsa\fR can be absent for inbound policy entries as it implies that it can be
-a shared one. Uniqueness is not verified on inbound. Note that in both the
-above entries, authentication was never specified. This can lead to cut and
-paste attacks. As mentioned previously, though the authentication is not
-specified, the system will still use an \fBESP\fR \fBSA\fR with
-\fBencr_auth_alg\fR specified, if it was found in the \fBSA\fR tables.
-
-.LP
-\fBExample 3 \fRProtecting All Traffic Between Two Hosts
-.sp
-.LP
-The following example protects both directions at once:
-
-.sp
-.in +2
-.nf
-{
- laddr spiderweb
- raddr arachnid
- ulp tcp
-} ipsec {
- encr_algs AES
-}
-.fi
-.in -2
-
-.LP
-\fBExample 4 \fRAuthenticating All Inbound Traffic to the Telnet Port
-.sp
-.LP
-This entry specifies that any inbound datagram to telnet port should come in
-authenticated with the SHA1 algorithm. Otherwise the datagram should not be
-permitted. Without this entry, traffic destined to port number 23 can come in
-clear. \fBsa\fR is not specified, which implies that it is shared. This can be
-done only for inbound entries. You need to have an equivalent entry to protect
-outbound traffic so that the outbound traffic is authenticated as well, remove
-the dir.
-
-.sp
-.in +2
-.nf
-#
-# All the inbound traffic to the telnet port should be
-# authenticated.
-#
-{
- lport telnet
- dir in
-} ipsec {
- auth_algs sha1
-}
-.fi
-.in -2
-
-.LP
-\fBExample 5 \fRVerifying Inbound Traffic is Null-Encrypted
-.sp
-.LP
-The first entry specifies that any packet with address host-B should not be
-checked against any policies. The second entry specifies that all inbound
-traffic from network-B should be encrypted with a \fBNULL\fR encryption
-algorithm and the \fBMD5\fR authentication algorithm. \fBNULL\fR encryption
-implies that \fBESP\fR header will be used without encrypting the datagram. As
-the first entry is \fBbypass\fR it need not be given first in order, as
-\fBbypass\fR entries have the highest precedence. Thus any inbound traffic will
-be matched against all \fBbypass\fR entries before any other policy entries.
-
-.sp
-.in +2
-.nf
-#
-# Make sure that all inbound traffic from network-B is NULL
-# encrypted, but bypass for host-B alone from that network.
-# Add the bypass first.
-{
-raddr host-B
- dir in
-} bypass {}
-
-# Now add for network-B.
-{
- raddr network-B/16
- dir in
-} ipsec {
-encr_algs NULL
-encr_auth_algs md5
-}
-.fi
-.in -2
-
-.LP
-\fBExample 6 \fREntries to Bypass Traffic from IPsec
-.sp
-.LP
-The first two entries provide that any datagram leaving the machine with source
-port 53 or coming into port number 53 should not be subjected to IPsec policy
-checks, irrespective of any other policy entry in the system. Thus the latter
-two entries will be considered only for ports other than port number 53.
-
-.sp
-.in +2
-.nf
-#
-# Bypass traffic for port no 53
- #
-{lport 53} bypass {}
-{rport 53} bypass {}
-{raddr spiderweb } ipsec {encr_algs any sa unique}
-.fi
-.in -2
-
-.LP
-\fBExample 7 \fRProtecting Outbound Traffic
-.sp
-.in +2
-.nf
- #
- # Protect the outbound traffic from all interfaces.
- #
-{raddr spiderweb dir out} ipsec {auth_algs any sa unique}
-.fi
-.in -2
-
-.sp
-.LP
-If the \fBgethostbyname\fR(3XNET) call for spiderweb yields multiple addresses,
-multiple policy entries will be added for all the source address with the same
-properties.
-
-.sp
-.in +2
-.nf
-{
- laddr arachnid
- raddr spiderweb
- dir in
-} ipsec {auth_algs any sa unique}
-.fi
-.in -2
-
-.sp
-.LP
-If the \fBgethostbyname\fR(3XNET) call for spiderweb and the
-\fBgethostbyname\fR(3XNET) call for arachnid yield multiple addresses, multiple
-policy entries will be added for each (\fBsaddr\fR \fBdaddr\fR) pair with the
-same properties. Use \fBipsecconf\fR \fB-l\fR to view all the policy entries
-added.
-
-.LP
-\fBExample 8 \fRBypassing Unauthenticated Traffic
-.sp
-.in +2
-.nf
-#
-# Protect all the outbound traffic with ESP except any traffic
-# to network-b which should be authenticated and bypass anything
-# to network-c
-#
-{raddr network-b/16 dir out} ipsec {auth_algs any}
-{dir out} ipsec {encr_algs any}
-{raddr network-c/16 dir out} bypass {} # NULL properties
-.fi
-.in -2
-
-.sp
-.LP
-Note that \fBbypass\fR can be given anywhere and it will take precedence over
-all other entries. \fBNULL\fR pattern matches all the traffic.
-
-.LP
-\fBExample 9 \fREncrypting IPv6 Traffic with 3DES and MD5
-.sp
-.LP
-The following entry on the host with the link local address
-\fBfe80::a00:20ff:fe21:4483\fR specifies that any outbound traffic between the
-hosts with IPv6 link-local addresses \fBfe80::a00:20ff:fe21:4483\fR and
-\fBfe80::a00:20ff:felf:e346\fR must be encrypted with \fB3DES\fR and \fBMD5.\fR
-
-.sp
-.in +2
-.nf
-{
- laddr fe80::a00:20ff:fe21:4483
- raddr fe80::a00:20ff:felf:e346
- dir out
-} ipsec {
- encr_algs 3DES
- encr_auth_algs MD5
-}
-.fi
-.in -2
-
-.LP
-\fBExample 10 \fRVerifying IPv6 Traffic is Authenticated with SHA1
-.sp
-.LP
-The following two entries require that all IPv6 traffic to and from the IPv6
-site-local network \fBfec0:abcd::0/32\fR be authenticated with \fBSHA1\fR.
-
-.sp
-.in +2
-.nf
-{raddr fec0:abcd::0/32} ipsec { auth_algs SHA1 }
-.fi
-.in -2
-
-.LP
-\fBExample 11 \fRKey Lengths
-.sp
-.in +2
-.nf
-# use aes at any key length
-{raddr spiderweb} ipsec {encr_algs aes}
-
-# use aes with a 192 bit key
-{raddr spiderweb} ipsec {encr_algs aes(192)}
-
-# use aes with any key length up to 192 bits
-# i.e. 192 bits or less
-{raddr spiderweb} ipsec {encr_algs aes(..192)}
-
-# use aes with any key length of 192 or more
-# i.e. 192 bits or more
-{raddr spiderweb} ipsec {encr_algs aes(192..)}
-
-#use aes with any key from 192 to 256 bits
-{raddr spiderweb} ipsec {encr_algs aes(192..256)}
-
-#use any algorithm with a key of 192 bits or longer
-{raddr spiderweb} ipsec {encr_algs any(192..)}
-.fi
-.in -2
-
-.LP
-\fBExample 12 \fRCorrect and Incorrect Policy Entries
-.sp
-.LP
-The following are examples of correctly formed policy entries:
-
-.sp
-.in +2
-.nf
-{ raddr that_system rport telnet } ipsec { encr_algs 3des encr_auth_algs
-sha1 sa shared}
-
-{
- raddr that_system
- rport telnet
-} ipsec {
- encr_algs 3des
- encr_auth_algs sha1
- sa shared
-}
-
-{ raddr that_system rport telnet } ipsec
- { encr_algs 3des encr_auth_algs sha1 sa shared}
-
-{ raddr that_system rport telnet } ipsec
- { encr_algs 3des encr_auth_algs sha1 sa shared} or ipsec
- { encr_algs aes encr_auth_algs sha1 sa shared}
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-\&...and the following is an incorrectly formed entry:
-
-.sp
-.in +2
-.nf
-{ raddr that_system rport telnet } ipsec
- { encr_algs 3des encr_auth_algs sha1 sa shared}
- or ipsec { encr_algs aes encr_auth_algs sha1 sa shared}
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-In the preceding, incorrect entry, note that the third line begins with "\fBor
-ipsec\fR". Such an entry causes \fBipsecconf\fR to return an error.
-
-.LP
-\fBExample 13 \fRAllowing Neighbor Discovery to Occur in the Clear
-.sp
-.LP
-The following two entries require that all IPv6 traffic to and from the IPv6
-site-local network \fBfec0:abcd::0/32\fR be authenticated with SHA1. The second
-entry allows neighbor discovery to operate correctly.
-
-.sp
-.in +2
-.nf
-{raddr fec0:abcd::0/32} ipsec { auth_algs SHA1 }
-{raddr fec0:abcd::0/32 ulp ipv6-icmp type 133-137 dir both }
- pass { }
-.fi
-.in -2
-
-.LP
-\fBExample 14 \fRUsing "or"
-.sp
-.LP
-The following entry allows traffic using the AES or Blowfish algorithms from
-the remote machine spiderweb:
-
-.sp
-.in +2
-.nf
-{raddr spiderweb} ipsec {encr_algs aes} or ipsec {encr_algs blowfish}
-.fi
-.in -2
-
-.LP
-\fBExample 15 \fRConfiguring a Tunnel to be Backward-Compatible with Solaris 9
-.sp
-.LP
-The following example is equivalent to "\fBencr_algs aes encr_auth_algs md5\fR"
-in \fBifconfig\fR(1M):
-
-.sp
-.in +2
-.nf
-{tunnel ip.tun0 negotiate transport} ipsec {encr_algs aes
- encr_auth_algs md5}
-.fi
-.in -2
-
-.LP
-\fBExample 16 \fRConfiguring a Tunnel to a VPN client with an Assigned Address
-.sp
-.LP
-The following example assumes a distinct "inside" network with its own
-topology, such that a client's default route goes "inside".
-
-.sp
-.in +2
-.nf
-# Unlike route(1m), the default route has to be spelled-out.
-{tunnel ip.tun0 negotiate tunnel raddr client-inside/32
-laddr 0.0.0.0/0} ipsec {encr_algs aes encr_auth_algs sha1}
-.fi
-.in -2
-
-.LP
-\fBExample 17 \fRTransit VPN router between Two Tunnelled Subnets and a Third
-.sp
-.LP
-The following example specifies a configuration for a VPN router that routes
-between two tunnelled subnets and a third subnet that is on-link. Consider
-remote-site A, remote-site B, and local site C, each with a \fB/24\fR address
-allocation.
-
-.sp
-.in +2
-.nf
-# ip.tun0 between me (C) and remote-site A.
-# Cover remote-site A to remote-side B.
-{tunnel ip.tun0 negotiate tunnel raddr A-prefix/24 laddr
-B-prefix/24} ipsec {encr_algs 3des encr_auth_algs md5}
-
-# Cover remote-site A traffic to my subnet.
-{tunnel ip.tun0 negotiate tunnel raddr A-prefix/24 laddr
-C-prefix/24} ipsec {encr_algs 3des encr_auth_algs md5}
-
-# ip.tun1 between me (C) and remote-site B.
-# Cover remote-site B to remote-site A.
-{tunnel ip.tun1 negotiate tunnel raddr B-prefix/24 laddr
-A-prefix/24} ipsec {encr_algs aes encr_auth_algs sha1}
-
-# Cover remote-site B traffic to my subnet.
-{tunnel ip.tun1 negotiate tunnel raddr B-prefix/24 laddr
-C-prefix/24} ipsec {encr_algs aes encr_auth_algs md5}
-.fi
-.in -2
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/var/run/ipsecpolicy.conf\fR\fR
-.ad
-.sp .6
-.RS 4n
-Cache of IPsec policies currently configured for the system, maintained by
-\fBipsecconf\fR command. Do not edit this file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/inet/ipsecinit.conf\fR\fR
-.ad
-.sp .6
-.RS 4n
-File containing IPsec policies to be installed at system restart by the
-\fBpolicy\fR \fBsmf\fR(5) service. See \fBNOTES\fR for more information.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/inet/ipsecinit.sample\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sample input file for \fBipseconf\fR.
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Committed
-.TE
-
-.SH SEE ALSO
-.LP
-\fBauths\fR(1), \fBprofiles\fR(1), \fBsvcprop\fR(1), \fBsvcs\fR(1),
-\fBin.iked\fR(1M), \fBinit\fR(1M), \fBifconfig\fR(1M), \fBipsecalgs\fR(1M),
-\fBipseckey\fR(1M), \fBsvcadm\fR(1M), \fBsvccfg\fR(1M),
-\fBgethostbyname\fR(3NSL), \fBaccept\fR(3SOCKET), \fBconnect\fR(3SOCKET),
-\fBgethostbyname\fR(3XNET), \fBgetnetbyname\fR(3XNET),
-\fBgetprotobyname\fR(3XNET), \fBgetservbyname\fR(3XNET),
-\fBgetaddrinfo\fR(3SOCKET), \fBsocket\fR(3SOCKET), \fBike.config\fR(4),
-\fBnsswitch.conf\fR(4), \fBprof_attr\fR(4), \fBuser_attr\fR(4),
-\fBattributes\fR(5), \fBrbac\fR(5), \fBsmf\fR(5), \fBipsecah\fR(7P),
-\fBipsecesp\fR(7P), \fBpf_key\fR(7P)
-.sp
-.LP
-Glenn, R. and Kent, S. \fIRFC 2410, The NULL Encryption Algorithm and Its Use
-With IPsec\fR. The Internet Society. 1998.
-.sp
-.LP
-Kent, S. and Atkinson, R. \fIRFC 2402, IP Authentication Header\fR.The Internet
-Society. 1998.
-.sp
-.LP
-Kent, S. and Atkinson, R. \fIRFC 2406, IP Encapsulating Security Payload
-(ESP)\fR. The Internet Society. 1998.
-.sp
-.LP
-Madsen, C. and Glenn, R. \fIRFC 2403, The Use of HMAC-MD5-96 within ESP and
-AH\fR. The Internet Society. 1998.
-.sp
-.LP
-Madsen, C. and Glenn, R. \fIRFC 2404, The Use of HMAC-SHA-1-96 within ESP and
-AH\fR. The Internet Society. 1998.
-.sp
-.LP
-Madsen, C. and Doraswamy, N. \fIRFC 2405, The ESP DES-CBC Cipher Algorithm With
-Explicit IV\fR. The Internet Society. 1998.
-.sp
-.LP
-Pereira, R. and Adams, R. \fIRFC 2451, The ESP CBC-Mode Cipher Algorithms\fR.
-The Internet Society. 1998.
-.sp
-.LP
-Frankel, S. and Kelly, R. Glenn, \fIThe AES Cipher Algorithm and Its Use With
-IPsec\fR. 2001.
-.SH DIAGNOSTICS
-.ne 2
-.na
-\fBBad "string" on line \fIN\fR.\fR
-.ad
-.br
-.na
-\fBDuplicate "string" on line \fIN\fR.\fR
-.ad
-.sp .6
-.RS 4n
-\fIstring\fR refers to one of the names in pattern or properties. A Bad string
-indicates that an argument is malformed; a Duplicate string indicates that
-there are multiple arguments of a similar type, for example, multiple Source
-Address arguments.
-.RE
-
-.sp
-.ne 2
-.na
-\fBInterface name already selected\fR
-.ad
-.sp .6
-.RS 4n
-Dual use of \fB-i\fR \fIname\fR and \fIname\fR,\fIindex\fR for an index.
-.RE
-
-.sp
-.ne 2
-.na
-\fBError before or at line \fIN\fR.\fR
-.ad
-.sp .6
-.RS 4n
-Indicates parsing error before or at line \fIN\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBNon-existent index\fR
-.ad
-.sp .6
-.RS 4n
-Reported when the \fIindex\fR for delete is not a valid one.
-.RE
-
-.sp
-.ne 2
-.na
-\fBspd_msg return: File exists\fR
-.ad
-.sp .6
-.RS 4n
-Reported when there is already a policy entry that matches the traffic of this
-new entry.
-.RE
-
-.SH NOTES
-.LP
-IPsec manual keys are managed by the service management facility, \fBsmf\fR(5).
-The services listed below manage the components of IPsec. These services are
-delivered as follows:
-.sp
-.in +2
-.nf
-svc:/network/ipsec/policy:default (enabled)
-svc:/network/ipsec/ipsecalgs:default (enabled)
-svc:/network/ipsec/manual-key:default (disabled)
-svc:/network/ipsec/ike:default (disabled)
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The manual-key service is delivered disabled. The system administrator must
-create manual IPsec Security Associations (SAs), as described in
-\fBipseckey\fR(1M), before enabling that service.
-.sp
-.LP
-The policy service is delivered enabled, but without a configuration file, so
-that, as a starting condition, packets are not protected by IPsec. After you
-create the configuration file \fB/etc/inet/ipsecinit.conf\fR, as described in
-this man page, and refresh the service (\fBsvcadm refresh\fR, see below), the
-policy contained in the configuration file is applied. If there is an error in
-this file, the service enters maintenance mode.
-.sp
-.LP
-Services that are delivered disabled are delivered that way because the system
-administrator must create configuration files for those services before
-enabling them. See \fBike.config\fR(4) for the \fBike\fR service.
-.sp
-.LP
-See \fBipsecalgs\fR(1M) for the \fBipsecalgs\fR service.
-.sp
-.LP
-The correct administrative procedure is to create the configuration file for
-each service, then enable each service using \fBsvcadm\fR(1M).
-.sp
-.LP
-If the configuration needs to be changed, edit the configuration file then
-refresh the service, as follows:
-.sp
-.in +2
-.nf
-example# \fBsvcadm refresh policy\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The \fBsmf\fR(5) framework will record any errors in the service-specific log
-file. Use any of the following commands to examine the \fBlogfile\fR property:
-.sp
-.in +2
-.nf
-example# \fBsvcs -l policy\fR
-example# \fBsvcprop policy\fR
-example# \fBsvccfg -s policy listprop\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The following property is defined for the \fBpolicy\fR service:
-.sp
-.in +2
-.nf
-config/config_file
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-This property can be modified using \fBsvccfg\fR(1M) by users who have been
-assigned the following authorization:
-.sp
-.in +2
-.nf
-solaris.smf.value.ipsec
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-See \fBauths\fR(1), \fBuser_attr\fR(4), \fBrbac\fR(5).
-.sp
-.LP
-The service needs to be refreshed using \fBsvcadm\fR(1M) before the new
-property is effective. General non-modifiable properties can be viewed with the
-\fBsvcprop\fR(1) command.
-.sp
-.in +2
-.nf
-# \fBsvccfg -s ipsec/policy setprop config/config_file = /new/config_file\fR
-# \fBsvcadm refresh policy\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Administrative actions on this service, such as enabling, disabling,
-refreshing, and requesting restart can be performed using \fBsvcadm\fR(1M). A
-user who has been assigned the authorization shown below can perform these
-actions:
-.sp
-.in +2
-.nf
-solaris.smf.manage.ipsec
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The service's status can be queried using the \fBsvcs\fR(1) command.
-.sp
-.LP
-The \fBipsecconf\fR command is designed to be managed by the \fBpolicy\fR
-\fBsmf\fR(5) service. While the \fBipsecconf\fR command can be run from the
-command line, this is discouraged. If the \fBipsecconf\fR command is to be run
-from the command line, the \fBpolicy\fR \fBsmf\fR(5) service should be disabled
-first. See \fBsvcadm\fR(1M).
diff --git a/usr/src/man/man1m/ipseckey.1m b/usr/src/man/man1m/ipseckey.1m
deleted file mode 100644
index 180635151b..0000000000
--- a/usr/src/man/man1m/ipseckey.1m
+++ /dev/null
@@ -1,1628 +0,0 @@
-'\" te
-.\" Copyright (C) 2008, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH IPSECKEY 1M "November 22, 2021"
-.SH NAME
-ipseckey \- manually manipulate an IPsec Security Association Database (SADB)
-.SH SYNOPSIS
-.nf
-\fBipseckey\fR [\fB-nvp\fR]
-.fi
-
-.LP
-.nf
-\fBipseckey\fR [\fB-nvp\fR] \fB-f\fR \fIfilename\fR
-.fi
-
-.LP
-.nf
-\fBipseckey\fR \fB-c\fR \fIfilename\fR
-.fi
-
-.LP
-.nf
-\fBipseckey\fR [\fB-nvp\fR] [delete | delete-pair | get] SA_TYPE {EXTENSION \fIvalue\fR...}
-.fi
-
-.LP
-.nf
-\fBipseckey\fR [\fB-np\fR] [monitor | passive_monitor | pmonitor]
-.fi
-
-.LP
-.nf
-\fBipseckey\fR [\fB-nvp\fR] flush {SA_TYPE}
-.fi
-
-.LP
-.nf
-\fBipseckey\fR [\fB-nvp\fR] dump {SA_TYPE}
-.fi
-
-.LP
-.nf
-\fBipseckey\fR [\fB-nvp\fR] save SA_TYPE {\fIfilename\fR}
-.fi
-
-.LP
-.nf
-\fBipseckey\fR [\fB-nvp\fR] \fB-s\fR \fIfilename\fR
-.fi
-
-.SH DESCRIPTION
-The \fBipseckey\fR command is used to manually manipulate the security
-association databases of the network security services, \fBipsecah\fR(7P) and
-\fBipsecesp\fR(7P). You can use the \fBipseckey\fR command to set up security
-associations between communicating parties when automated key management is not
-available.
-.sp
-.LP
-While the \fBipseckey\fR utility has only a limited number of general options,
-it supports a rich command language. The user may specify requests to be
-delivered by means of a programmatic interface specific for manual keying. See
-\fBpf_key\fR(7P). When \fBipseckey\fR is invoked with no arguments, it will
-enter an interactive mode which prints a prompt to the standard output and
-accepts commands from the standard input until the end-of-file is reached. Some
-commands require an explicit security association ("\fBSA\fR") type, while
-others permit the \fBSA\fR type to be unspecified and act on all \fBSA\fR
-types.
-.sp
-.LP
-\fBipseckey\fR uses a \fBPF_KEY\fR socket and the message types \fBSADB_ADD\fR,
-\fBSADB_DELETE\fR, \fBSADB_GET\fR, \fBSADB_UPDATE\fR, \fBSADB_FLUSH\fR, and
-\fBSADB_X_PROMISC\fR. Thus, you must be a superuser to use this command.
-.sp
-.LP
-\fBipseckey\fR handles sensitive cryptographic keying information. Please read
-the \fBSecurity\fR section for details on how to use this command securely.
-.SH OPTIONS
-.ne 2
-.na
-\fB\fB-c\fR [\fIfilename\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Analogous to the \fB-f\fR option (see following), except that the input is not
-executed but only checked for syntactical correctness. Errors are reported to
-\fBstderr\fR. This option is provided to debug configurations without making
-changes. See \fBSECURITY\fR and "Service Management Facility" for more
-information.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR [\fIfilename\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Read commands from an input file, \fIfilename\fR. The lines of the input file
-are identical to the command line language. The \fBload\fR command provides
-similar functionality. The \fB-s\fR option or the \fBsave\fR command can
-generate files readable by the \fB-f\fR argument.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR\fR
-.ad
-.sp .6
-.RS 4n
-Prevent attempts to print host and network names symbolically when reporting
-actions. This is useful, for example, when all name servers are down or are
-otherwise unreachable.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR\fR
-.ad
-.sp .6
-.RS 4n
-Paranoid. Do not print any keying material, even if saving \fBSA\fRs. Instead
-of an actual hexadecimal digit, print an \fBX\fR when this flag is turned on.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR [\fIfilename\fR]\fR
-.ad
-.sp .6
-.RS 4n
-The opposite of the \fB-f\fR option. If '\fB-\fR' is given for a
-\fIfilename\fR, then the output goes to the standard output. A snapshot of all
-current \fBSA\fR tables will be output in a form readable by the \fB-f\fR
-option. The output will be a series of \fBadd\fR commands, but with some names
-not used. This occurs because a single name may often indicate multiple
-addresses.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.sp .6
-.RS 4n
-Verbose. Print the messages being sent into the \fBPF_KEY\fR socket, and print
-raw seconds values for lifetimes.
-.RE
-
-.SH COMMANDS
-.ne 2
-.na
-\fB\fBadd\fR\fR
-.ad
-.sp .6
-.RS 4n
-Add an \fBSA\fR. Because it involves the transfer of keying material, it cannot
-be invoked from the shell, lest the keys be visible in \fBps\fR(1) output. It
-can be used either from the interactive \fBipseckey>\fR prompt or in a command
-file specified by the \fB-f\fR command. The \fBadd\fR command accepts all
-extension-value pairs described below.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBupdate\fR\fR
-.ad
-.sp .6
-.RS 4n
-Update \fBSA\fR lifetime, and in the cases of larval \fBSA\fRs (leftover from
-aborted automated key management), keying material and other extensions. Like
-\fBadd\fR, this command cannot be invoked from the shell because keying
-material would be seen by the \fBps\fR(1) command. It can be used either from
-the interactive \fBipseckey>\fR prompt or in a command file specified by the
-\fB-f\fR command. The \fBupdate\fR command accepts all extension-value pairs,
-but normally is only used for \fBSA\fR lifetime updates.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBupdate-pair\fR\fR
-.ad
-.sp .6
-.RS 4n
-As update, but apply the update to the SA and its paired SA, if there is one.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdelete\fR\fR
-.ad
-.sp .6
-.RS 4n
-Delete a specific \fBSA\fR from a specific \fBSADB\fR. This command requires
-the \fBspi\fR extension, and the \fBdest\fR extension for IPsec \fBSA\fRs.
-Other extension-value pairs are superfluous for a delete message. If the SA to
-be deleted is paired with another SA, the SA is deleted and the paired SA is
-updated to indicate that it is now unpaired.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdelete-pair\fR\fR
-.ad
-.sp .6
-.RS 4n
-Delete a specific SA from a specific SADB. If the SA is paired with another SA,
-delete that SA too. This command requires the \fBspi\fR extension and the
-\fBdest\fR extension for the IPsec SA, or its pair.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBget\fR\fR
-.ad
-.sp .6
-.RS 4n
-Lookup and display a security association from a specific \fBSADB\fR. Like
-\fBdelete\fR, this command only requires \fBspi\fR and \fBdest\fR for IPsec.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBflush\fR\fR
-.ad
-.sp .6
-.RS 4n
-Remove all \fBSA\fR for a given \fBSA_TYPE\fR, or all \fBSA\fR for all types.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmonitor\fR\fR
-.ad
-.sp .6
-.RS 4n
-Continuously report on any \fBPF_KEY\fR messages. This uses the
-\fBSADB_X_PROMISC\fR message to enable messages that a normal \fBPF_KEY\fR
-socket would not receive to be received. See \fBpf_key\fR(7P).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpassive_monitor\fR\fR
-.ad
-.sp .6
-.RS 4n
-Like monitor, except that it does not use the \fBSADB_X_PROMISC\fR message.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpmonitor\fR\fR
-.ad
-.sp .6
-.RS 4n
-Synonym for \fBpassive_monitor\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdump\fR\fR
-.ad
-.sp .6
-.RS 4n
-Will display all \fBSA\fRs for a given \fBSA\fR type, or will display all
-\fBSA\fRs. Because of the large amount of data generated by this command, there
-is no guarantee that all \fBSA\fR information will be successfully delivered,
-or that this command will even complete.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsave\fR\fR
-.ad
-.sp .6
-.RS 4n
-Is the command analog of the \fB-s\fR option. It is included as a command to
-provide a way to snapshot a particular \fBSA\fR type, for example, \fBesp\fR or
-\fBah\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBhelp\fR\fR
-.ad
-.sp .6
-.RS 4n
-Prints a brief summary of commands.
-.RE
-
-.SS "\fBSA_TYPE\fR"
-.ne 2
-.na
-\fB\fBall\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies all known \fBSA\fR types. This type is only used for the \fBflush\fR
-and \fBdump\fR commands. This is equivalent to having no \fBSA\fR type for
-these commands.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBah\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the IPsec Authentication Header ("\fBAH\fR") \fBSA\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBesp\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the IPsec Encapsulating Security Payload ("\fBESP\fR") \fBSA\fR.
-.RE
-
-.SH EXTENSION VALUE TYPES
-Commands like \fBadd\fR, \fBdelete\fR, \fBget\fR, and \fBupdate\fR require that
-certain extensions and associated values be specified. The extensions will be
-listed here, followed by the commands that use them, and the commands that
-require them. Requirements are currently documented based upon the IPsec
-definitions of an \fBSA\fR. Required extensions may change in the future.
-\fB<number>\fR can be in either hex (\fB0xnnn\fR), decimal (\fBnnn\fR) or octal
-(\fB0nnn\fR).\fB<string>\fR is a text string. \fB<hexstr>\fR is a long
-hexadecimal number with a bit-length. Extensions are usually paired with
-values; however, some extensions require two values after them.
-.sp
-.ne 2
-.na
-\fB\fBspi \fI<number>\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the security parameters index of the \fBSA\fR. This extension is
-required for the \fBadd\fR, \fBdelete\fR, \fBget\fR and \fBupdate\fR commands.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpair-spi \fI<number>\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-When \fBpair-spi\fR is used with the \fBadd\fR or \fBupdate\fR commands, the SA
-being added or updated will be paired with the SA defined by \fBpair-spi\fR. A
-pair of SAs can be updated or deleted with a single command.
-.sp
-The two SAs that make up the pair need to be in opposite directions from the
-same pair of IP addresses. The command will fail if either of the SAs specified
-are already paired with another SA.
-.sp
-If the pair-spi token is used in a command and the SA defined by pair-spi does
-not exist, the command will fail. If the command was \fBadd\fR and the pairing
-failed, the SA to be added will instead be removed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBinbound | outbound\fR\fR
-.ad
-.sp .6
-.RS 4n
-These optional flags specify the direction of the SA. When the \fBinbound\fR or
-\fBoutbound\fR flag is specified with the \fBadd\fR command, the kernel will
-insert the new SA into the specified hash table for faster lookups. If the flag
-is omitted, the kernel will decide into which hash table to insert the new SA
-based on its knowledge the IP addresses specified with the \fBsrc\fR and
-\fBdst\fR extensions.
-.sp
-When these flags are used with the \fBupdate\fR, \fBdelete\fR,
-\fBupdate-pair\fR or \fBget\fR commands, the flags provide a hint as to the
-hash table in which the kernel should find the SA.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBreplay\fR \fI<number>\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the replay window size. If not specified, the replay window size is
-assumed to be zero. It is not recommended that manually added \fBSA\fRs have a
-replay window. This extension is used by the \fBadd\fR and \fBupdate\fR
-commands.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBreplay_value\fR \fI<number>\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the replay value of the SA. This extension is used by the \fBadd\fR
-and \fBupdate\fR commands.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBstate \fI<string>\fR|\fI<number>\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the \fBSA\fR state, either by numeric value or by the strings
-"\fBlarval\fR", "\fBmature\fR", "\fBdying\fR" or "\fBdead\fR". If not
-specified, the value defaults to \fBmature\fR. This extension is used by the
-\fBadd\fR and \fBupdate\fR commands.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBauth_alg \fI<string>\fR|\fI<number>\fR\fR\fR
-.ad
-.br
-.na
-\fB\fBauthalg <string>|<number>\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the authentication algorithm for an \fBSA\fR, either by numeric
-value, or by strings indicating an algorithm name. Current authentication
-algorithms include:
-.sp
-.ne 2
-.na
-\fB\fBHMAC-MD5\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBmd5\fR, \fBhmac-md5\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBHMAC-SH-1\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBsha\fR, \fBsha-1\fR, \fBhmac-sha1\fR, \fBhmac-sha\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBHMAC-SHA-256\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBsha256\fR, \fBsha-256\fR, \fBhmac-sha256\fR, \fBhmac-sha-256\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBHMAC-SHA-384\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBsha384\fR, \fBsha-384\fR, \fBhmac-sha384\fR, \fBhmac-sha-384\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBHMAC-SHA-512\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBsha512\fR, \fBsha-512\fR, \fBhmac-sha512\fR, \fBhmac-sha-512\fR
-.RE
-
-Often, algorithm names will have several synonyms. This extension is required
-by the \fBadd\fR command for certain \fBSA\fR types. It is also used by the
-\fBupdate\fR command.
-.sp
-Use the \fBipsecalgs\fR(1M) command to obtain the complete list of
-authentication algorithms.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBencr_alg \fI<string>\fR|\fI<number>\fR\fR\fR
-.ad
-.br
-.na
-\fB\fBencralg \fI<string>\fR|\fI<number>\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the encryption algorithm for an SA, either by numeric value, or by
-strings indicating an algorithm name. Current encryption algorithms include DES
-("\fBdes\fR"), Triple-DES ("\fB3des\fR"), Blowfish ("blowfish"), and AES
-("aes"). This extension is required by the add command for certain \fBSA\fR
-types. It is also used by the \fBupdate\fR command.
-.sp
-Use the \fBipsecalgs\fR(1M) command to obtain the complete list of encryption
-algorithms.
-.RE
-
-.sp
-.LP
-The next six extensions are lifetime extensions. There are two varieties,
-"\fBhard\fR" and "\fBsoft\fR". If a \fBhard\fR lifetime expires, the \fBSA\fR
-will be deleted automatically by the system. If a \fBsoft\fR lifetime expires,
-an \fBSADB_EXPIRE\fR message will be transmitted by the system, and its state
-will be downgraded to \fBdying\fR from \fBmature\fR. See \fBpf_key\fR(7P). The
-\fBmonitor\fR command to \fBkey\fR allows you to view \fBSADB_EXPIRE\fR
-messages.
-.sp
-.ne 2
-.na
-\fB\fBidle_addtime\fR \fI<number>\fR\fR
-.ad
-.br
-.na
-\fB\fBidle_usetime\fR \fI<number>\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the number of seconds that this SA can exist if the SA is not used
-before the SA is revalidated. If this extension is not present, the default
-value is half of the \fBhard_addtime\fR (see below). This extension is used by
-the \fBadd\fR and \fBupdate\fR commands.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsoft_bytes \fI<number>\fR\fR\fR
-.ad
-.br
-.na
-\fB\fBhard_bytes \fI<number>\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the number of bytes that this \fBSA\fR can protect. If this extension
-is not present, the default value is zero, which means that the \fBSA\fR will
-not expire based on the number of bytes protected. This extension is used by
-the \fBadd\fR and \fBupdate\fR commands.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsoft_addtime \fI<number>\fR\fR\fR
-.ad
-.br
-.na
-\fB\fBhard_addtime \fI<number>\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the number of seconds that this \fBSA\fR can exist after being added
-or updated from a larval \fBSA\fR. An update of a mature \fBSA\fR does not
-reset the initial time that it was added. If this extension is not present, the
-default value is zero, which means the \fBSA\fR will not expire based on how
-long it has been since it was added. This extension is used by the \fBadd\fR
-and \fBupdate\fR commands.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsoft_usetime \fI<number>\fR\fR\fR
-.ad
-.br
-.na
-\fB\fBhard_usetime \fI<number>\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the number of seconds this \fBSA\fR can exist after first being used.
-If this extension is not present, the default value is zero, which means the
-\fBSA\fR will not expire based on how long it has been since it was added. This
-extension is used by the \fBadd\fR and \fBupdate\fR commands.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsaddr \fIaddress\fR | \fIname\fR\fR\fR
-.ad
-.br
-.na
-\fB\fBsrcaddr \fIaddress\fR | \fIname\fR\fR\fR
-.ad
-.br
-.na
-\fB\fBsaddr6 \fIIPv6 address\fR\fR\fR
-.ad
-.br
-.na
-\fB\fBsrcaddr6 \fIIPv6 address\fR\fR\fR
-.ad
-.br
-.na
-\fB\fBsrc \fIaddress\fR | \fIname\fR\fR\fR
-.ad
-.br
-.na
-\fB\fBsrc6 \fIIPv6 address\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBsrcaddr \fIaddress\fR\fR and \fBsrc \fIaddress\fR\fR are synonyms that
-indicate the source address of the \fBSA\fR. If unspecified, the source address
-will either remain unset, or it will be set to a wildcard address if a
-destination address was supplied. To not specify the source address is valid
-for IPsec \fBSA\fRs. Future \fBSA\fR types may alter this assumption. This
-extension is used by the \fBadd\fR, \fBupdate\fR, \fBget\fR and \fBdelete\fR
-commands.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdaddr \fI<address>\fR|\fI<name>\fR\fR\fR
-.ad
-.br
-.na
-\fB\fBdstaddr \fI<address>\fR|\fI<name>\fR\fR\fR
-.ad
-.br
-.na
-\fB\fBdaddr6 \fI<IPv6 address>\fR|\fI<name>\fR\fR\fR
-.ad
-.br
-.na
-\fB\fBdstaddr6 \fI<IPv6 address>\fR|\fI<name>\fR\fR\fR
-.ad
-.br
-.na
-\fB\fBdst \fI<addr>\fR|\fI<name>\fR\fR\fR
-.ad
-.br
-.na
-\fB\fBdst6 \fI<IPv6 address>\fR|\fI<name>\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBdstaddr \fI<addr>\fR\fR and \fBdst \fI<addr>\fR\fR are synonyms that
-indicate the destination address of the \fBSA\fR. If unspecified, the
-destination address will remain unset. Because IPsec \fBSA\fRs require a
-specified destination address and \fBspi\fR for identification, this extension,
-with a specific value, is required for the \fBadd\fR, \fBupdate\fR, \fBget\fR
-and \fBdelete\fR commands.
-.sp
-If a name is given, \fBipseckey\fR will attempt to invoke the command on
-multiple \fBSA\fRs with all of the destination addresses that the name can
-identify. This is similar to how \fBipsecconf\fR handles addresses.
-.sp
-If \fBdst6\fR or \fBdstaddr6\fR is specified, only the IPv6 addresses
-identified by a name are used.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsport\fR \fI<portnum>\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBsport\fR specifies the source port number for an SA. It should be used in
-combination with an upper-layer protocol (see below), but it does not have to
-be.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdport\fR \fI<portnum>\fR\fR
-.ad
-.sp .6
-.RS 4n
-sport specifies the destination port number for an SA. It should be used in
-combination with an upper-layer protocol (see below), but it does not have to
-be.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBencap\fR \fI<protocol>\fR\fR
-.ad
-.sp .6
-.RS 4n
-Identifies the protocol used to encapsulate NAT-traversal IPsec packets. Other
-NAT-traversal parameters (\fBnat_*\fR) are below. The only acceptable value
-for \fI<protocol>\fR currently is \fBudp\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBproto\fR \fI<protocol number>\fR\fR
-.ad
-.br
-.na
-\fB\fBulp\fR \fI<protocol number>\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBproto\fR, and its synonym \fBulp\fR, specify the IP protocol number of the
-SA.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnat_loc\fR \fI<address>\fR|\fI<name>\fR\fR
-.ad
-.sp .6
-.RS 4n
-If the local address in the SA (source or destination) is behind a NAT, this
-extension indicates the NAT node's globally-routable address. This address can
-match the SA's local address if there is a \fBnat_lport\fR (see below)
-specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnat_rem\fR \fI<address>\fR|\fI<name>\fR\fR
-.ad
-.sp .6
-.RS 4n
-If the remote address in the SA (source or destination) is behind a NAT, this
-extension indicates that node's internal (that is, behind-the-NAT) address.
-This address can match the SA's local address if there is a \fBnat_rport\fR
-(see below) specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnat_lport\fR \fI<portnum>\fR\fR
-.ad
-.sp .6
-.RS 4n
-Identifies the local UDP port on which encapsulation of ESP occurs.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnat_rport\fR \fI<portnum>\fR\fR
-.ad
-.sp .6
-.RS 4n
-Identifies the remote UDP port on which encapsulation of ESP occurs.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBisrc\fR \fI<address>\fR | \fI<name>\fR[/\fI<prefix>\fR]\fR
-.ad
-.br
-.na
-\fB\fBinnersrc\fR \fI<address>\fR | \fI<name>\fR[/\fI<prefix>\fR]\fR
-.ad
-.br
-.na
-\fB\fBisrc6\fR \fI<address>\fR | \fI<name>\fR[/\fI<prefix>\fR]\fR
-.ad
-.br
-.na
-\fB\fBinnersrc6\fR \fI<address>\fR | \fI<name>\fR[/\fI<prefix>\fR]\fR
-.ad
-.br
-.na
-\fB\fBproxyaddr\fR \fI<address>\fR | \fI<name>\fR[/\fI<prefix>\fR]\fR
-.ad
-.br
-.na
-\fB\fBproxy\fR \fI<address>\fR | \fI<name>\fR[/\fI<prefix>\fR]\fR
-.ad
-.sp .6
-.RS 4n
-\fBisrc\fR \fI<address>\fR[/\fI<prefix>\fR] and \fBinnersrc\fR
-\fI<address>\fR[/\fI<prefix>\fR] are synonyms. They indicate the inner source
-address for a tunnel-mode SA.
-.sp
-An inner-source can be a prefix instead of an address. As with other address
-extensions, there are IPv6-specific forms. In such cases, use only
-IPv6-specific addresses or prefixes.
-.sp
-Previous versions referred to this value as the proxy address. The usage, while
-deprecated, remains.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBidst\fR \fI<address>\fR | \fI<name>\fR[/\fI<prefix>\fR]\fR
-.ad
-.br
-.na
-\fB\fBinnerdst\fR \fI<address>\fR | \fI<name>\fR[/\fI<prefix>\fR]\fR
-.ad
-.br
-.na
-\fB\fBidst6\fR \fI<address>\fR | \fI<name>\fR[/\fI<prefix>\fR]\fR
-.ad
-.br
-.na
-\fB\fBinnerdst6\fR \fI<address>\fR | \fI<name>\fR[/\fI<prefix>\fR]\fR
-.ad
-.sp .6
-.RS 4n
-\fBidst\fR \fI<address>\fR[/\fI<prefix>\fR] and \fBinnerdst\fR
-\fI<address>\fR[/\fI<prefix>\fR] are synonyms. They indicate the inner
-destination address for a tunnel-mode SA.
-.sp
-An inner-destination can be a prefix instead of an address. As with other
-address extensions, there are IPv6-specific forms. In such cases, use only
-IPv6-specific addresses or prefixes.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBinnersport\fR \fI<portnum>\fR\fR
-.ad
-.br
-.na
-\fB\fBisport\fR \fI<portnum>\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBinnersport\fR specifies the source port number of the inner header for a
-tunnel-mode SA. It should be used in combination with an upper-layer protocol
-(see below), but it does not have to be.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBinnerdport\fR \fI<portnum>\fR\fR
-.ad
-.br
-.na
-\fB\fBidport\fR \fI<portnum>\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBinnerdport\fR specifies the destination port number of the inner header for
-a tunnel-mode SA. It should be used in combination with an upper-layer protocol
-(see below), but it does not have to be.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBiproto\fR \fI<protocol number>\fR\fBiulp\fR \fI<protocol number>\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBiproto\fR, and its synonym \fBiulp\fR, specify the IP protocol number of the
-inner header of a tunnel-mode SA.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBauthkey \fI<hexstring>\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the authentication key for this \fBSA\fR. The key is expressed as a
-string of hexadecimal digits, with an optional \fB/\fR at the end, for example,
-\fB123/12\fR. Bits are counted from the most-significant bits down. For
-example, to express three '1' bits, the proper syntax is the string
-"\fBe/3\fR". For multi-key algorithms, the string is the concatenation of the
-multiple keys. This extension is used by the \fBadd\fR and \fBupdate\fR
-commands.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBencrkey \fI<hexstring>\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the encryption key for this \fBSA\fR. The syntax of the key is the
-same as \fBauthkey\fR. A concrete example of a multi-key encryption algorithm
-is \fB3des\fR, which would express itself as a 192-bit key, which is three
-64-bit parity-included \fBDES\fR keys. This extension is used by the \fBadd\fR
-and \fBupdate\fR commands.
-.RE
-
-.sp
-.LP
-Certificate identities are very useful in the context of automated key
-management, as they tie the \fBSA\fR to the public key certificates used in
-most automated key management protocols. They are less useful for manually
-added \fBSA\fRs. Unlike other extensions, \fBsrcidtype\fR takes two values, a
-\fItype\fR, and an actual \fIvalue\fR. The type can be one of the following:
-.sp
-.ne 2
-.na
-\fB\fBprefix\fR\fR
-.ad
-.sp .6
-.RS 4n
-An address prefix.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfqdn\fR\fR
-.ad
-.sp .6
-.RS 4n
-A fully-qualified domain name.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdomain\fR\fR
-.ad
-.sp .6
-.RS 4n
-Domain name, synonym for \fBfqdn\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBuser_fqdn\fR\fR
-.ad
-.sp .6
-.RS 4n
-User identity of the form \fB\fIuser\fR@\fIfqdn\fR\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmailbox\fR\fR
-.ad
-.sp .6
-.RS 4n
-Synonym for \fBuser_fqdn\fR.
-.RE
-
-.sp
-.LP
-The \fIvalue\fR is an arbitrary text string that should identify the
-certificate.
-.sp
-.ne 2
-.na
-\fB\fBsrcidtype \fI<type, value>\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies a source certificate identity for this \fBSA\fR. This extension is
-used by the \fBadd\fR and \fBupdate\fR commands.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdstidtype \fI<type, value>\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies a destination certificate identity for this \fBSA\fR. This extension
-is used by the \fBadd\fR and \fBupdate\fR commands
-.RE
-
-.SS "Tunnel Mode versus Transport Mode SAs"
-An IPsec SA is a Tunnel Mode SA if the "proto" value is either 4 (\fBipip\fR)
-or 41 (\fBipv6\fR) \fBand\fR there is an inner-address or inner-port value
-specified. Otherwise, the SA is a Transport Mode SA.
-.SH SECURITY
-Keying material is very sensitive and should be generated as randomly as
-possible. Some algorithms have known weak keys. IPsec algorithms have built-in
-weak key checks, so that if a weak key is in a newly added \fBSA\fR, the
-\fBadd\fR command will fail with an invalid value.
-.sp
-.LP
-The \fBipseckey\fR command allows a privileged user to enter cryptographic
-keying information. If an adversary gains access to such information, the
-security of IPsec traffic is compromised. The following issues should be taken
-into account when using the \fBipseckey\fR command.
-.RS +4
-.TP
-1.
-Is the \fBTTY\fR going over a network (interactive mode)?
-.RS +4
-.TP
-.ie t \(bu
-.el o
-If it is, then the security of the keying material is the security of the
-network path for this \fBTTY\fR's traffic. Using \fBipseckey\fR over a
-clear-text \fBtelnet\fR or \fBrlogin\fR session is risky.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Even local windows might be vulnerable to attacks where a concealed program
-that reads window events is present.
-.RE
-.RE
-.RS +4
-.TP
-2.
-Is the file accessed over the network or readable to the world (\fB-f\fR
-option)?
-.RS +4
-.TP
-.ie t \(bu
-.el o
-A network-mounted file can be sniffed by an adversary as it is being read.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-A world-readable file with keying material in it is also risky.
-.RE
-.RE
-.RS +4
-.TP
-3.
-The \fBipseckey\fR command is designed to be managed by the \fBmanual-key\fR
-\fBsmf\fR(5) service. Because the \fBsmf\fR(5) log files are world-readable,
-the \fBipseckey\fR does not record any syntax errors in the log files, as these
-errors might include secret information.
-.sp
-If a syntax error is found when the \fBmanual-key\fR \fBsmf\fR(5) service is
-enabled, the service enters maintenance mode. The log file will indicate that
-there was a syntax error, but will not specify what the error was.
-.sp
-The administrator should use \fBipeckey\fR \fB-c\fR \fIfilename\fR from the
-command line to discover the cause of the errors. See \fBOPTIONS\fR.
-.RE
-.sp
-.LP
-If your source address is a host that can be looked up over the network and
-your naming system itself is compromised, then any names used will not be
-trustworthy.
-.sp
-.LP
-Security weaknesses often lie in misapplication of tools, not in the tools
-themselves. Administrators are urged to be cautious when using \fBipseckey\fR.
-The safest mode of operation is probably on a console or other hard-connected
-\fBTTY\fR.
-.sp
-.LP
-For further thoughts on this subject, see the afterward by Matt Blaze in Bruce
-Schneier's \fIApplied Cryptography: Protocols, Algorithms, and Source Code in
-C\fR.
-.SS "Service Management Facility"
-IPsec manual keys are managed by the service management facility, \fBsmf\fR(5).
-The services listed below manage the components of IPsec. These services are
-delivered as follows:
-.sp
-.in +2
-.nf
-svc:/network/ipsec/policy:default (enabled)
-svc:/network/ipsec/ipsecalgs:default (enabled)
-svc:/network/ipsec/manual-key:default (disabled)
-svc:/network/ipsec/ike:default (disabled)
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The manual-key service is delivered disabled. The system administrator must
-create manual IPsec Security Associations (SAs), as described in this man page,
-before enabling that service.
-.sp
-.LP
-The policy service is delivered enabled, but without a configuration file, so
-that, as a starting condition, packets are not protected by IPsec. After you
-create the configuration file \fB/etc/inet/ipsecinit.conf\fR and refresh the
-service (\fBsvcadm refresh\fR, see below), the policy contained in the
-configuration file is applied. If there is an error in this file, the service
-enters maintenance mode. See \fBipsecconf\fR(1M).
-.sp
-.LP
-Services that are delivered disabled are delivered that way because the system
-administrator must create configuration files for those services before
-enabling them. See \fBike.config\fR(4) for the \fBike\fR service.
-.sp
-.LP
-See \fBipsecalgs\fR(1M) for the \fBipsecalgs\fR service.
-.sp
-.LP
-The correct administrative procedure is to create the configuration file for
-each service, then enable each service using \fBsvcadm\fR(1M).
-.sp
-.LP
-If the configuration needs to be changed, edit the configuration file then
-refresh the service, as follows:
-.sp
-.in +2
-.nf
-example# \fBsvcadm refresh manual-key\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-\fBWarning:\fR To prevent \fBipseckey\fR complaining about duplicate
-Associations, the \fBipseckey\fR command flushes the Security Association Data
-Base (SADB) when the \fBipseckey\fR command is run from \fBsmf\fR(5), before
-adding any new Security Associations defined in the configuration file. This
-differs from the command line behavior where the SADB is not flushed before
-adding new Security Associations.
-.sp
-.LP
-The \fBsmf\fR(5) framework will record any errors in the service-specific log
-file. Use any of the following commands to examine the \fBlogfile\fR property:
-.sp
-.in +2
-.nf
-example# \fBsvcs -l manual-key\fR
-example# \fBsvcprop manual-key\fR
-example# \fBsvccfg -s manual-key listprop\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The following property is defined for the \fBmanual-key\fR service:
-.sp
-.in +2
-.nf
-config/config_file
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-This property can be modified using \fBsvccfg\fR(1M) by users who have been
-assigned the following authorization:
-.sp
-.in +2
-.nf
-solaris.smf.value.ipsec
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-See \fBauths\fR(1), \fBuser_attr\fR(4), \fBrbac\fR(5).
-.sp
-.LP
-The service needs to be refreshed using \fBsvcadm\fR(1M) before the new
-property is effective. General non-modifiable properties can be viewed with the
-\fBsvcprop\fR(1) command.
-.sp
-.in +2
-.nf
-# \fBsvccfg -s ipsec/manual-key setprop config/config_file = \e
-/new/config_file\fR
-# \fBsvcadm refresh manual-key\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Administrative actions on this service, such as enabling, disabling,
-refreshing, and requesting restart can be performed using \fBsvcadm\fR(1M). A
-user who has been assigned the authorization shown below can perform these
-actions:
-.sp
-.in +2
-.nf
-solaris.smf.manage.ipsec
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The service's status can be queried using the \fBsvcs\fR(1) command.
-.sp
-.LP
-The \fBipseckey\fR command is designed to be run under \fBsmf\fR(5) management.
-While the \fBipsecconf\fR command can be run from the command line, this is
-discouraged. If the \fBipseckey\fR command is to be run from the command line,
-the \fBmanual-key\fR \fBsmf\fR(5) service should be disabled first. See
-\fBsvcadm\fR(1M).
-.SH EXAMPLES
-\fBExample 1 \fREmptying Out All \fBSA\fRs
-.sp
-.LP
-To empty out all \fBSA\fR:
-
-.sp
-.in +2
-.nf
-example# \fBipseckey flush\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRFlushing Out IPsec AH \fBSA\fRs Only
-.sp
-.LP
-To flush out only IPsec \fBAH\fR \fBSA\fRs:
-
-.sp
-.in +2
-.nf
-example# \fBipseckey flush ah\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRSaving All \fBSA\fRs To Standard Output
-.sp
-.LP
-To save all \fBSA\fRs to the standard output:
-
-.sp
-.in +2
-.nf
-example# \fBipseckey save all\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 4 \fRSaving \fBESP\fR \fBSA\fRs To The File \fB/tmp/snapshot\fR
-.sp
-.LP
-To save \fBESP\fR \fBSA\fRs to the file \fB/tmp/snapshot\fR:
-
-.sp
-.in +2
-.nf
-example# \fBipseckey save esp /tmp/snapshot\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 5 \fRDeleting an IPsec \fBSA\fR
-.sp
-.LP
-To delete an IPsec \fBSA\fR, only the \fBSPI\fR and the destination address are
-needed:
-
-.sp
-.in +2
-.nf
-example# \fBipseckey delete esp spi 0x2112 dst 224.0.0.1\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-An alternative would be to delete the SA and the SAs pair if it has one:
-
-.sp
-.in +2
-.nf
-example# \fBipseckey delete-pair esp spi 0x2112 dst 224.0.0.1\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 6 \fRGetting Information on an IPsec \fBSA\fR
-.sp
-.LP
-Likewise, getting information on a \fBSA\fR only requires the destination
-address and \fBSPI\fR:
-
-.sp
-.in +2
-.nf
-example# \fBipseckey get ah spi 0x5150 dst mypeer\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 7 \fRAdding or Updating IPsec \fBSA\fRs
-.sp
-.LP
-Adding or updating \fBSA\fRs requires entering interactive mode:
-
-.sp
-.in +2
-.nf
-example# \fBipseckey\fR
-ipseckey> \fBadd ah spi 0x90125 src me.example.com dst you.example.com \e
- authalg md5 authkey 1234567890abcdef1234567890abcdef\fR
-ipseckey> \fBupdate ah spi 0x90125 dst you.example.com hard_bytes \e
- 16000000\fR
-ipseckey> \fBexit\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Adding two SAs that are linked together as a pair:
-
-.sp
-.in +2
-.nf
-example# \fBipseckey\fR
-ipseckey> \fBadd esp spi 0x2345 src me.example.com dst you.example.com \e
- authalg md5 authkey bde359723576fdea08e56cbe876e24ad \e
- encralg des encrkey be02938e7def2839\fR
-ipseckey> \fBadd esp spi 0x5432 src me.example.com dst you.example.com \e
- authalg md5 authkey bde359723576fdea08e56cbe876e24ad \e
- encralg des encrkey be02938e7def2839 pair-spi 0x2345\fR
-ipseckey> \fBexit\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 8 \fRAdding an \fBSA\fR in the Opposite Direction
-.sp
-.LP
-In the case of IPsec, \fBSA\fRs are unidirectional. To communicate securely, a
-second \fBSA\fR needs to be added in the opposite direction. The peer machine
-also needs to add both \fBSA\fRs.
-
-.sp
-.in +2
-.nf
-example# \fBipseckey\fR
-ipseckey> \fBadd ah spi 0x2112 src you.example.com dst me.example.com \e
- authalg md5 authkey bde359723576fdea08e56cbe876e24ad \e
- hard_bytes 16000000\fR
-ipseckey> \fBexit\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 9 \fRMonitoring \fBPF_KEY\fR Messages
-.sp
-.LP
-Monitoring for \fBPF_KEY\fR messages is straightforward:
-
-.sp
-.in +2
-.nf
-example# \fBipseckey monitor\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 10 \fRUsing Commands in a File
-.sp
-.LP
-Commands can be placed in a file that can be parsed with the \fB-f\fR option.
-This file may contain comment lines that begin with the "#" symbol. For
-example:
-
-.sp
-.in +2
-.nf
-# This is a sample file for flushing out the ESP table and
-# adding a pair of SAs.
-
-flush esp
-
-### Watch out! I have keying material in this file. See the
-### SECURITY section in this manual page for why this can be
-### dangerous .
-
-add esp spi 0x2112 src me.example.com dst you.example.com \e
- authalg md5 authkey bde359723576fdea08e56cbe876e24ad \e
- encralg des encrkey be02938e7def2839 hard_usetime 28800
-add esp spi 0x5150 src you.example.com dst me.example.com \e
- authalg md5 authkey 930987dbe09743ade09d92b4097d9e93 \e
- encralg des encrkey 8bd4a52e10127deb hard_usetime 28800
-
-## End of file - This is a gratuitous comment
-.fi
-.in -2
-
-.LP
-\fBExample 11 \fRAdding SAs for IPv6 Addresses
-.sp
-.LP
-The following commands from the interactive-mode create an SA to protect IPv6
-traffic between the site-local addresses
-
-.sp
-.in +2
-.nf
-example # \fBipseckey\fR
-ipseckey> \fBadd esp spi 0x6789 src6 fec0:bbbb::4483 dst6 fec0:bbbb::7843\e
- authalg md5 authkey bde359723576fdea08e56cbe876e24ad \e
- encralg des encrkey be02938e7def2839 hard_usetime 28800\fR
-ipseckey>\fBexit\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 12 \fRLinking Two SAs as a Pair
-.sp
-.LP
-The following command links two SAs together, as a pair:
-
-.sp
-.in +2
-.nf
-example# \fBipseckey update esp spi 0x123456 dst 192.168.99.2 \e
-pair-spi 0x654321\fR
-.fi
-.in -2
-.sp
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/etc/inet/secret/ipseckeys\fR\fR
-.ad
-.sp .6
-.RS 4n
-Default configuration file used at boot time. See "Service Management Facility"
-and \fBSECURITY\fR for more information.
-.RE
-
-.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-Interface Stability Committed
-.TE
-
-.SH SEE ALSO
-\fBps\fR(1), \fBsvcprop\fR(1), \fBsvcs\fR(1), \fBipsecconf\fR(1M),
-\fBipsecalgs\fR(1M), \fBroute\fR(1M), \fBsvcadm\fR(1M), \fBsvccfg\fR(1M),
-\fBike.config\fR(4), \fBattributes\fR(5), \fBsmf\fR(5), \fBipsec\fR(7P),
-\fBipsecah\fR(7P), \fBipsecesp\fR(7P), \fBpf_key\fR(7P)
-.sp
-.LP
-Schneier, B., \fIApplied Cryptography: Protocols, Algorithms, and Source Code
-in C\fR. Second ed. New York, New York: John Wiley & Sons, 1996.
-.SH DIAGNOSTICS
-The \fBipseckey\fR command parses the configuration file and reports any
-errors. In the case of multiple errors, \fBipseckey\fR reports as many of these
-as possible.
-.sp
-.LP
-The \fBipseckey\fR command does not attempt to use a \fBCOMMAND\fR that has a
-syntax error. A \fBCOMMAND\fR might be syntactically correct but can
-nevertheless generate an error because the kernel rejected the request made to
-\fBpf_key\fR(7P). This might occur because a key had an invalid length or
-because an unsupported algorithm was specified.
-.sp
-.LP
-If there are any errors in the configuration file, ipseckey reports the number
-of valid COMMANDS and the total number of COMMANDS parsed.
-.sp
-.ne 2
-.na
-\fB\fBParse error on line \fIN\fR.\fR\fR
-.ad
-.sp .6
-.RS 4n
-If an interactive use of \fBipseckey\fR would print usage information, this
-would print instead. Usually proceeded by another diagnostic. Because
-\fBCOMMANDS\fR can cover more than a single line in the configuration file by
-using the backslash character to delimit lines, its not always possible to
-pinpoint in the configuration file the exact line that caused the error.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBUnexpected end of command line.\fR\fR
-.ad
-.sp .6
-.RS 4n
-An additional argument was expected on the command line.
-.RE
-
-.sp
-.ne 2
-.na
-\fBUnknown\fR
-.ad
-.sp .6
-.RS 4n
-A value for a specific extension was unknown.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBAddress type \fIN\fR not supported.\fR\fR
-.ad
-.sp .6
-.RS 4n
-A name-to-address lookup returned an unsupported address family.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\fIN\fR is not a bit specifier\fR\fR
-.ad
-.br
-.na
-\fB\fBbit length \fIN\fR is too big for\fR\fR
-.ad
-.br
-.na
-\fB\fBstring is not a hex string\fR\fR
-.ad
-.sp .6
-.RS 4n
-Keying material was not entered appropriately.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBCan only specify single\fR\fR
-.ad
-.sp .6
-.RS 4n
-A duplicate extension was entered.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBDon't use extension for \fI<string>\fR for \fI<command>\fR\&.\fR\fR
-.ad
-.sp .6
-.RS 4n
-An extension not used by a command was used.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBOne of the entered values is incorrect: Diagnostic code \fINN\fR:
-\fI<msg>\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-This is a general invalid parameter error. The diagnostic code and message
-provides more detail about what precise value was incorrect and why.
-.RE
-
-.SH NOTES
-In spite of its IPsec-specific name, \fBipseckey\fR is analogous to
-\fBroute\fR(1M), in that it is a command-line interface to a socket-based
-administration engine, in this case, \fBPF_KEY\fR. \fBPF_KEY\fR was originally
-developed at the United States Naval Research Laboratory.
-.sp
-.LP
-To have machines communicate securely with manual keying, \fBSA\fRs need to be
-added by all communicating parties. If two nodes wish to communicate securely,
-both nodes need the appropriate \fBSA\fRs added.
-.sp
-.LP
-In the future \fBipseckey\fR may be invoked under additional names as other
-security protocols become available to \fBPF_KEY\fR.
-.sp
-.LP
-This command requires \fBsys_ip_config\fR privilege to operate and thus can run
-in the global zone and in exclusive-IP zones. The global zone can set up
-security associations with \fBipseckey\fR to protect traffic for shared-IP
-zones on the system.
diff --git a/usr/src/man/man1m/iscsiadm.1m b/usr/src/man/man1m/iscsiadm.1m
deleted file mode 100644
index 781ce9f8d0..0000000000
--- a/usr/src/man/man1m/iscsiadm.1m
+++ /dev/null
@@ -1,1377 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH ISCSIADM 1M "Jul 16, 2009"
-.SH NAME
-iscsiadm \- enable management of iSCSI initiators
-.SH SYNOPSIS
-.LP
-.nf
-\fBiscsiadm\fR \fIsubcommand\fR \fIdirect-object\fR [\fIoptions\fR] [\fIoperand\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBiscsiadm\fR command enables management of the iSCSI (Internet SCSI)
-initiator on a host. \fBiscsiadm\fR is implemented as a set of subcommands,
-many with their own options, which are described in the section for that
-subcommand. Options not associated with a particular subcommand are described
-under OPTIONS.
-.sp
-.LP
-\fBiscsiadm\fR works only when the following service is online:
-.sp
-.in +2
-.nf
-svc:/network/iscsi/initiator:default
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The \fBiscsiadm\fR command supports the following subcommands, which are
-described in detail in subsections that follow:
-.sp
-.ne 2
-.na
-\fB\fBadd\fR\fR
-.ad
-.RS 10n
-Adds element(s) to an object.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBlist\fR\fR
-.ad
-.RS 10n
-Lists element(s) of an object.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmodify\fR\fR
-.ad
-.RS 10n
-Modifies attributes of an object.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBremove\fR\fR
-.ad
-.RS 10n
-Removes an element from an object.
-.RE
-
-.sp
-.LP
-The \fBiscsiadm\fR subcommands operate on a \fIdirect-object\fR. These are
-described in the section for each subcommand.
-.sp
-.LP
-The \fBiscsiadm\fR command supports the Internet Storage Name Service (iSNS)
-for the discovery of iSCSI targets. The command supports the Challenge
-Handshake Authentication Protocol (CHAP) for authentication.
-.SS "\fBadd\fR Subcommand"
-.sp
-.LP
-The syntax for the \fBadd\fR subcommand is:
-.sp
-.in +2
-.nf
-# iscsiadm add \fIdirect_object\fR [\fIoperands\fR...]
-.fi
-.in -2
-
-.sp
-.LP
-The \fBadd\fR subcommand adds the following \fIdirect_object\fRs:
-.sp
-.ne 2
-.na
-\fB\fBdiscovery-address\fR \fIdiscovery-address\fR [...]\fR
-.ad
-.sp .6
-.RS 4n
-Adds a target to a list of discovery addresses. A discovery address (as in the
-syntax shown below) is an IP \fIaddress\fR:\fIport\fR combination used in a
-SendTargets discovery session. Using this discovery approach, a target device
-can inform an initiator of the target address and target name of each target
-exposed by that device. Connection to a target is not attempted unless the
-SendTargets method of discovery has been enabled on the host. You enable this
-method with the \fBmodify\fR subcommand.
-.sp
-The \fIdiscovery-address\fR parameter is formatted as:
-.sp
-.in +2
-.nf
-<\fIIP address\fR>[:\fIport\fR]
-.fi
-.in -2
-
-If \fIport\fR is not specified, the default of 3260 will be used.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBisns-server\fR \fIisns-server\fR [...]\fR
-.ad
-.sp .6
-.RS 4n
-Add an iSNS server to the list of iSNS server addresses. An iSNS server address
-(specified in the syntax shown below) is an IP address-port combination used in
-an iSNS discovery session. By using iSNS discovery, an iSNS server can provide
-an initiator with information about a portal and the name of each target that
-belongs to the same discovery domain as that of the initiator. Connection to
-the iSNS server is not attempted unless the iSNS method of discovery has been
-enabled on the host. You enable this method with the \fBmodify\fR subcommand,
-described below.
-.sp
-The \fIisns-server\fR parameter is formatted as:
-.sp
-.in +2
-.nf
-\fIIP_address\fR[:\fIport\fR]
-.fi
-.in -2
-
-If a port is not specified, the default of 3205 is used.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBstatic-config\fR \fIstatic_target\fR [...]\fR
-.ad
-.sp .6
-.RS 4n
-Adds a target to the list of statically configured targets. A connection to the
-target will not be attempted unless the static configuration method of
-discovery has been enabled.
-.sp
-The \fIstatic_target\fR parameter is formatted as:
-.sp
-.in +2
-.nf
-\fI<target-name>\fR,\fI<target address>\fR[:\fIport-number\fR][,\fItpgt\fR]
-.fi
-.in -2
-
-\fI<target-name>\fR can be up to 223 characters.
-.RE
-
-.SS "\fBlist\fR Subcommand"
-.sp
-.LP
-The syntax for the \fBlist\fR subcommand is:
-.sp
-.in +2
-.nf
-# iscsiadm list \fIdirect-object\fR [\fIoptions\fR]
-.fi
-.in -2
-
-.sp
-.LP
-The \fBlist\fR subcommand displays data for the following \fIdirect-object\fRs:
-.sp
-.ne 2
-.na
-\fB\fBdiscovery\fR\fR
-.ad
-.sp .6
-.RS 4n
-Lists the discovery methods and their current activation state, enabled or
-disabled. Discovery methods are:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-iSNS (Internet Storage Name Service)
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Static
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-SendTargets
-.RE
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBinitiator-node\fR\fR
-.ad
-.sp .6
-.RS 4n
-Lists information for the initiator node on the host. The iSCSI initiator node
-represents a logical HBA and is a logical host connection point for iSCSI
-targets. The parameter values listed in the response are default parameter
-settings for the initiator. Each connected target for an initiator can have
-parameter values that differ from the parameter values on the initiator node.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBstatic-config\fR [\fIstatic_target\fR[, ...]]\fR
-.ad
-.sp .6
-.RS 4n
-Lists the target name and address for specified targets or, if no static
-targets are specified, all statically discovered targets.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBtarget\fR [\fB-S\fR] [\fB-v\fR] [\fItarget\fR[, ...]]\fR
-.ad
-.sp .6
-.RS 4n
-Lists a target's current parameters, connection state, and which method was
-used for the target's discovery. Reports information for specified targets or,
-if no targets are specified, all targets that have been discovered or have had
-parameters modified by the \fBmodify target\fR subcommand.
-.sp
-When used with the \fB-S\fR option for a specified target, this subcommand
-returns:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-target name
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-logical unit number
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-vendor ID
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-product ID
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-OS device name (for example, \fB/dev/rdsk/c0t2d0s0\fR)
-.RE
-The \fB-v\fR options gives more details, such as the current login parameters,
-the detailed connection information, and the discovery method used to discover
-the target.
-.sp
-A return of \fBNA\fR as the discovery method parameter indicates that the
-target was created with a \fBiscsiadm modify target-param\fR command and does
-not exist as a discovered object. To remove such targets, use \fBiscsiadm
-remove target-param\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBtarget-param\fR [\fB-v\fR] \fItarget\fR [...]\fR
-.ad
-.sp .6
-.RS 4n
-Lists a target's default and user-defined parameters.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdiscovery-address\fR [\fB-v\fR] [\fIdiscovery-address\fR[, ...]]\fR
-.ad
-.sp .6
-.RS 4n
-Lists the \fBdiscovery-address\fR objects that have been added using the
-\fBiscsiadm add discovery-address\fR subcommand.
-.sp
-When used with the \fB-v\fR option, lists all known targets at a specified
-\fIdiscovery-address\fR. The \fB-v\fR option returns one or more target names
-along with zero or more target addresses and associated target portal group
-tags (TPGT), if applicable.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBisns-server\fR [\fB-v\fR] [\fIisns-server\fR[, ...]]\fR
-.ad
-.sp .6
-.RS 4n
-Lists the \fBisns-server\fR objects that have been added using the
-\fBiscsiadm\fR \fBadd\fR \fBisns-server\fR subcommand.
-.sp
-When used with the \fB-v\fR option, this subcommand lists all known targets at
-a specified \fBisns-server\fR address. The \fB-v\fR option returns one of more
-target names along with zero or more target addresses and associated target
-portal group tags, if applicable.
-.RE
-
-.SS "\fBmodify\fR Subcommand"
-.sp
-.LP
-The syntax for the \fBmodify\fR subcommand is:
-.sp
-.in +2
-.nf
-# iscsiadm modify \fIdirect_object\fR [\fIoptions\fR]
-.fi
-.in -2
-
-.sp
-.LP
-The \fBmodify\fR subcommand supports the following \fIdirect_object\fRs:
-.sp
-.ne 2
-.na
-\fB\fBdiscovery\fR [\fIoptions\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Enabling a discovery method initiates a discovery using that method. Disabling
-a discovery method that is currently enabled does not affect connections to any
-targets that have already been discovered by that method.
-.sp
-Options for \fBmodify discovery\fR are as follows:
-.sp
-.ne 2
-.na
-\fB\fB-i\fR, \fB-iSNS\fR \fBenable\fR | \fBdisable\fR\fR
-.ad
-.sp .6
-.RS 4n
-Enable or disable iSNS discovery.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR, \fB-\fR\fB-static\fR \fBenable\fR | \fBdisable\fR\fR
-.ad
-.sp .6
-.RS 4n
-Enable or disable static discovery.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-t\fR, \fB-\fR\fB-sendtargets\fR \fBenable\fR | \fBdisable\fR\fR
-.ad
-.sp .6
-.RS 4n
-Enable or disable SendTargets discovery.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBinitiator-node\fR [\fIoptions\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Modifies an initiator's properties. If a target is currently connected, this
-operation can succeed. However, the modified set of parameters will not be in
-effect for that target until an existing connection session no longer exists
-and a new connection has been established. The options \fB-C\fR and
-\fB-\fR\fB-CHAP-secret\fR require a CHAP secret entry in response to a prompt.
-.sp
-For iSCSI booting when the Solaris I/O multipathing feature (formerly known as
-Sun StorEdge Traffic Manager [STMS] or MPxIO) is disabled, you can modify only
-the following initiator-node options:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fB-r\fR, \fB--radius-server\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fB-R\fR, \fB--radius-access\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fB-P\fR, \fB--radius-shared-secret\fR
-.RE
-For iSCSI booting when the Solaris I/O multipathing feature is enabled, you can
-modify only the following initiator-node options:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fB-h\fR, \fB--headerdigest\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fB-d\fR, \fB--datadigest\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fB-c\fR, \fB--configured-sessions\fR
-.RE
-Options for \fBmodify initiator-node\fR are as follows:
-.sp
-.ne 2
-.na
-\fB\fB-A\fR, \fB-\fR\fB-node-alias\fR \fI<initiator node alias>\fR\fR
-.ad
-.sp .6
-.RS 4n
-Modifies the initiator node alias. Maximum length of 223 characters.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-a\fR, \fB-\fR\fB-authentication\fR \fBchap\fR | \fBnone\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets the authentication mode.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-C\fR, \fB-\fR\fB-CHAP-secret\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets the CHAP secret value. There is no default value. Maximum length is 16
-characters; minimum required length is 12 characters.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-c\fR, \fB--configured-sessions\fR \fI<num_sessions>\fR | \fI<IP
-address>\fR[,\fI<IP address>\fR\&...]\fR
-.ad
-.sp .6
-.RS 4n
-Sets the number of configured iSCSI sessions that will be created for each
-iSCSI target. The feature should be used in combination with the Solaris I/O
-multipathing feature described in \fBscsi_vhci\fR(7D).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-d\fR, \fB--datadigest\fR \fBnone\fR | \fBCRC32\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets whether CRC32 is enabled to check SCSI data transfers.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-H\fR, \fB-\fR\fB-CHAP-name\fR \fICHAP name\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies a CHAP username. If you do not use this option, upon initialization,
-the CHAP name is set to the initiator node name. When the authentication method
-is set to CHAP (see \fB-a\fR/\fB-\fR\fB-authentication\fR option, above), the
-CHAP username is displayed with the command \fBiscsiadm list initiator-node\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-h\fR, \fB--headerdigest\fR \fBnone\fR | \fBCRC32\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets whether CRC32 is enabled to check SCSI packet headers.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-N\fR, \fB-\fR\fB-node-name\fR \fI<initiator node name>\fR\fR
-.ad
-.sp .6
-.RS 4n
-Modifies the initiator node name. Maximum of 223 characters.
-.LP
-Note -
-.sp
-.RS 2
-During Solaris installation, the initiator node name is set to a globally
-unique value. Changing this value can adversely affect operation within the
-iSCSI network.
-.RE
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-P\fR, \fB--radius-shared-secret\fR (exclusive)\fR
-.ad
-.sp .6
-.RS 4n
-Sets the RADIUS shared secret.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-R\fR, \fB--radius-access\fR \fBenable\fR | \fBdisable\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets whether a RADIUS server will be used.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-r\fR, \fB--radius-server\fR \fI<IP address>\fR[:\fI<port>\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Sets the IP address and port of the radius server to be used.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-T\fR, \fB-\fR\fB-tunable-param\fR
-<<\fItunable-prop\fR>=<\fIvalue\fR>, ...>\fR
-.ad
-.sp .6
-.RS 4n
-Specify one or more tunable parameters for all targets that initiator node
-connected.
-.LP
-Note -
-.sp
-.RS 2
-These values should only be modified by an administrator with a good working
-knowledge of the parameter's impact within the iSCSI network.
-.RE
-Supported tunable-prop options are:
-.sp
-.ne 2
-.na
-\fB\fBrecv-login-rsp-timeout\fR\fR
-.ad
-.sp .6
-.RS 4n
-Session Login Response Time
-.sp
-The \fBrecv-login-rsp-timeout\fR option specifies how long iSCSI initiator will
-wait for the response of iSCSI session login request from the iSCSI target.
-Valid value is from 0 to 60*60, default to 60 seconds.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBconn-login-max\fR\fR
-.ad
-.sp .6
-.RS 4n
-Maximized Connection Retry Time
-.sp
-The \fBconn-login-max\fR option lets the iSCSI initiator reestablish the
-connection to the target in case of IO timeout or connection failure during the
-given time window. Valid value is from 0 to 60*60, default to 180 seconds.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpolling-login-delay\fR\fR
-.ad
-.sp .6
-.RS 4n
-Login Retry Time Interval
-.sp
-The \fBpolling-login-delay\fR option specifies the time interval between each
-login retry when iSCSI initiator to target IO timeout or connection failure.
-Valid value is from 0 to 60*60, default to 60 seconds.
-.RE
-
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBtarget-param\fR [\fIoptions\fR] \fItarget\fR\fR
-.ad
-.sp .6
-.RS 4n
-Modifies a target's parameters. If a target is currently connected, the modify
-operation will succeed, although the modified settings might not take effect
-for a few seconds. To confirm that these settings are active, use \fBiscsiadm
-list target\fR \fB-v\fR. If a specified target is not associated with any
-discovery method, a target object is created with the specified parameters.
-After using this command to modify a target's parameters, the new parameters
-will persist until they are modified or removed with a \fBiscsiadm remove
-target-param\fR command on that target. The options \fB-C\fR and
-\fB-\fR\fB-CHAP-secret\fR require a CHAP secret entry in response to a prompt.
-.sp
-Options for \fBmodify target-param\fR are as follows:
-.sp
-.ne 2
-.na
-\fB\fB-B\fR, \fB-\fR\fB-bi-directional-authentication enable | disable\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets the bidirectional option. If set to \fBenable\fR, the initiator performs
-bidirectional authentication for the specified target.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-C\fR, \fB-\fR\fB-CHAP-secret\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets the target's CHAP secret value. There is no default value. Maximum
-acceptable length is 16 characters.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-c\fR, \fB-\fR\fB-configured-sessions\fR \fI<num_sessions>\fR | \fI<IP
-address>\fR[,\fI<IP address>\fR\&...]\fR
-.ad
-.sp .6
-.RS 4n
-Sets the number of configured iSCSI sessions that will be created for each
-iSCSI target. The feature should be used in combination with the Solaris I/O
-multipathing feature described in \fBscsi_vhci\fR(7D).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-d\fR, \fB-\fR\fB-datadigest\fR \fBnone\fR | \fBCRC32\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets whether CRC32 is enabled or disabled for the data.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-H\fR, \fB-\fR\fB-CHAP-name\fR \fICHAP name\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets a CHAP username. If you do not use this option, upon initialization, the
-CHAP name is set to the target name. When the authentication method is set to
-CHAP (see \fB-a\fR/\fB-\fR\fB-authentication\fR option, under the
-\fBinitiator-node\fR direct object, above), the CHAP username is displayed with
-the command \fBiscsiadm list initiator-node\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-h\fR, \fB-\fR\fB-headerdigest\fR \fBnone\fR | \fBCRC32\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets whether CRC32 is enabled or disabled for the header.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR, \fB-\fR\fB-login-param\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify one or more login parameter settings.
-.LP
-Note -
-.sp
-.RS 2
-These values should only be modified by an administrator with a good working
-knowledge of the parameter's impact within the iSCSI network.
-.RE
-The login parameters are derived from iSCSI proposed standard RFC 3720. Valid
-values are:
-.sp
-.ne 2
-.na
-\fB\fBdataseqinorder\fR\fR
-.ad
-.RS 22n
-\fByes\fR or \fBno\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdefaulttime2retain\fR\fR
-.ad
-.RS 22n
-0-3600
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdefaulttime2wait\fR\fR
-.ad
-.RS 22n
-0-3600
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfirstburstlength\fR\fR
-.ad
-.RS 22n
-512 to 2^24-1
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBimmediatedata\fR\fR
-.ad
-.RS 22n
-\fByes\fR or \fBno\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBinitialr2t\fR\fR
-.ad
-.RS 22n
-\fByes\fR or \fBno\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmaxburstlength\fR\fR
-.ad
-.RS 22n
-512 to 2^24-1
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdatapduinorder\fR\fR
-.ad
-.RS 22n
-\fByes\fR or \fBno\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmaxoutstandingr2t\fR\fR
-.ad
-.RS 22n
-1 to 65535
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmaxrecvdataseglen\fR\fR
-.ad
-.RS 22n
-512 to 2^24-1
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-T\fR, \fB-\fR\fB-tunable-param\fR
-<<\fItunable-prop\fR>=<\fIvalue\fR>, ...>\fR
-.ad
-.sp .6
-.RS 4n
-Specify one or more tunable parameters for all targets that initiator node
-connected.
-.LP
-Note -
-.sp
-.RS 2
-Tunable values should only be modified by an administrator with a good working
-knowledge of the parameter's impact within the iSCSI network.
-.RE
-Supported \fItunable-prop\fR options are:
-.sp
-.ne 2
-.na
-\fB\fBrecv-login-rsp-timeout\fR\fR
-.ad
-.sp .6
-.RS 4n
-Session Login Response Time
-.sp
-The \fBrecv-login-rsp-timeout\fR option specifies how long iSCSI initiator will
-wait for the response of iSCSI session login request from the iSCSI target.
-Valid value is from 0 to 60*60, default to 60 seconds.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBconn-login-max\fR\fR
-.ad
-.sp .6
-.RS 4n
-Maximized Connection Retry Time
-.sp
-The \fBconn-login-max\fR option lets the iSCSI initiator reestablish the
-connection to the target in case of IO timeout or connection failure during the
-given time window. Valid value is from 0 to 60*60, default to 180 seconds.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpolling-login-delay\fR\fR
-.ad
-.sp .6
-.RS 4n
-Login Retry Time Interval
-.sp
-The \fBpolling-login-delay\fR option specifies the time interval between each
-login retry when iSCSI initiator to target IO timeout or connection failure.
-Valid value is from 0 to 60*60, default to 60 seconds.
-.RE
-
-.RE
-
-.RE
-
-.SS "\fBremove\fR Subcommand"
-.sp
-.LP
-The syntax for the \fBremove\fR subcommand is:
-.sp
-.in +2
-.nf
-# iscsiadm remove \fIdirect_object\fR
-.fi
-.in -2
-
-.sp
-.LP
-The \fBremove\fR subcommand supports the following \fIdirect_object\fRs:
-.sp
-.ne 2
-.na
-\fB\fBdiscovery-address\fR \fIdiscovery-address\fR, ...\fR
-.ad
-.sp .6
-.RS 4n
-Removes a target device from the list of discovery addresses. A discovery
-address (as in the syntax shown below) is an IP address-port combination used
-in a SendTargets discovery session. Using this discovery approach, a target
-device can inform an initiator of the target address and target name of each
-target exposed by that device. If any target exposed by the discovery address
-is currently mounted or there is active I/O on the device, an error of "logical
-unit in use" is returned and the operation fails. If the associated devices are
-not in use, they are removed.
-.sp
-\fIdiscovery-address\fR must be formatted as:
-.sp
-.in +2
-.nf
-\fI<IP address>\fR[:\fI<port>\fR]
-.fi
-.in -2
-
-There are no options associated with this direct object.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBisns-server\fR \fIisns-server\fR, ...\fR
-.ad
-.sp .6
-.RS 4n
-Removes an iSNS server from the list of iSNS server addresses. An iSNS server
-address (specified in the syntax shown below) is an IP address-port combination
-used in an iSNS discovery session. By using iSNS discovery, an iSNS server can
-provide an initiator with information about a portal and the name of each
-target that belongs to the same discovery domain as that of the initiator. If
-any target discovered by means of iSNS is currently mounted or there is active
-I/O on the device, an error of "logical unit in use" is returned and the
-operation fails. If the associated devices are not in use, they are removed.
-.sp
-\fIisns-server\fR must be formatted as:
-.sp
-.in +2
-.nf
-\fIIP_address\fR[:\fIport\fR]
-.fi
-.in -2
-
-There are no options associated with this direct object.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBstatic-config\fR \fIstatic_target\fR, ...\fR
-.ad
-.sp .6
-.RS 4n
-Removes a target from the list of statically discovered targets. If the target
-being removed is currently mounted or there is active I/O on the device, an
-error of "logical unit in use" is returned and the operation fails. If a device
-is not in use, it will be removed.
-.sp
-\fIstatic_target\fR must be formatted as:
-.sp
-.in +2
-.nf
-\fI<target-name>\fR,\fI<target-address>\fR[:\fIport-number\fR][,\fItpgt\fR]
-.fi
-.in -2
-
-There are no options associated with this direct object.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBtarget-param\fR \fItarget-name\fR\fR
-.ad
-.sp .6
-.RS 4n
-Removes target specified by \fItarget-name\fR. The target name is formatted as:
-.sp
-.in +2
-.nf
-\fI<target-name>\fR
-.fi
-.in -2
-
-There are no options associated with this direct object. For iSCSI booting when
-the Solaris I/O multipathing feature (formerly known as Sun StorEdge Traffic
-Manager [STMS] or MPxIO) is enabled, you cannot remove the target.
-.RE
-
-.SS "Proper Use of Discovery Methods"
-.sp
-.LP
-Do not configure a target to be discovered by both static and dynamic discovery
-methods. The consequence of using redundant discovery methods might be slow
-performance when communicating with the iSCSI target device.
-.SH OPTIONS
-.sp
-.LP
-The following generic options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-V\fR, \fB-\fR\fB-version\fR\fR
-.ad
-.RS 17n
-Displays version information. Stops interpretation of subsequent arguments.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-?\fR, \fB-\fR\fB-help\fR\fR
-.ad
-.RS 17n
-Displays help information. Can be used following an \fBiscsiadm\fR command with
-no arguments, following a subcommand, or following a subcommand-direct object
-combination. Responds with help information appropriate for your entry. For
-example, if you enter:
-.sp
-.in +2
-.nf
-# \fBiscsiadm modify initiator-node --help\fR
-.fi
-.in -2
-.sp
-
-\&...\fBiscsiadm\fR responds with a display of the options available for that
-combination of subcommand and direct object.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRAdding a Discovery Address
-.sp
-.LP
-The following command uses the \fBadd\fR subcommand to add a discovery address.
-
-.sp
-.in +2
-.nf
-# \fBiscsiadm add discovery-address 10.0.0.1:3260 10.0.0.2:3260\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRAdding a Static Target
-.sp
-.LP
-The following command uses the \fBadd\fR subcommand to add a static target.
-
-.sp
-.in +2
-.nf
-# \fBiscsiadm add static-config \e
-iqn.1999-08.com.array:sn.01234567,10.0.0.1:3260\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRListing Current Discovery Settings
-.sp
-.LP
-The following command uses the \fBlist\fR subcommand to list current discovery
-settings.
-
-.sp
-.in +2
-.nf
-# \fBiscsiadm list discovery\fR
- Discovery:
- Static: enabled
- Send Targets: disabled
- iSNS: enabled
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 4 \fRObtaining Verbose Discovery Output
-.sp
-.LP
-The following commands uses the \fB-v\fR option (one with, one without) with
-the \fBlist\fR subcommand to obtain verbose output.
-
-.sp
-.in +2
-.nf
-# \fBiscsiadm list discovery-address\fR
- Discovery Address: 10.0.0.1:3260
- Discovery Address: 10.0.0.2:3260
-
-# \fBiscsiadm list discovery-address -v 10.0.0.1:3260\fR
- Discovery Address: 10.0.0.1:3260
- Target name: eui.210000203787d1f7
- Target address: 10.0.0.1:3260
- Target name: eui.210000203787a693
- Target address: 10.0.0.1:3260
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 5 \fRDisplaying Information on the Initiator
-.sp
-.LP
-The following command uses the \fBlist\fR subcommand to display information on
-the initiator.
-
-.sp
-.in +2
-.nf
-# \fBiscsiadm list initiator-node\fR
-Initiator node name: iqn.1986-03.com.company.central.interopv20-1
-Initiator node alias: interopv20-1
- Login Parameters (Default/Configured):
- Header Digest: NONE/NONE
- Data Digest: NONE/NONE
- Authentication Type: CHAP
- CHAP Name: iqn.1986-03.com.company.central.interopv20-1
- RADIUS Server: NONE
- RADIUS access: disabled
- Tunable Parameters (Default/Configured):
- Session Login Response Time: 60/-
- Maximum Connection Retry Time: 180/-
- Login Retry Time Interval: 60/-
- Configured Sessions: 1
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 6 \fRDisplaying Static Configuration Information
-.sp
-.LP
-The following command uses the \fBlist\fR subcommand to display information
-about static configurations.
-
-.sp
-.in +2
-.nf
-# \fBiscsiadm list static-config\fR
- Static target: eui.210000203787a693,10.0.0.1:3260
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 7 \fRDisplaying Target Information
-.sp
-.LP
-The following commands show the use of the \fBlist\fR subcommand with various
-options to display information about targets.
-
-.sp
-.in +2
-.nf
-# \fBiscsiadm list target\fR
-Target: iqn.2004-05.com.abcStorage:Tgt-1
- Alias: -
- TPGT: 12288
- ISID: 4000002a0000
- Connections: 1# \fBiscsiadm list target -v iqn.2004-05.com.abcStorage:Tgt-1\fR
-Target: iqn.2004-05.com.abcStorage:Tgt-1
- Alias: -
- TPGT: 12288
- ISID: 4000002a0000
- Connections: 1
- CID: 0
- IP address (Local): 10.4.52.158:32803
- IP address (Peer): 10.4.49.70:3260
- Discovery Method: SendTargets
- Login Parameters (Negotiated):
- Data Sequence In Order: yes
- Data PDU In Order: yes
- Default Time To Retain: 20
- Default Time To Wait: 2
- Error Recovery Level: 0
- First Burst Length: 65536
- Immediate Data: yes
- Initial Ready To Transfer (R2T): yes
- Max Burst Length: 262144
- Max Outstanding R2T: 1
- Max Receive Data Segment Length: 65536
- Max Connections: 1
- Header Digest: NONE
- Data Digest: NONE
-# \fBiscsiadm list target -S iqn.2004-05.com.abcStorage:Tgt-1\fR
-Target: iqn.2004-05.com.abcStorage:Tgt-1
- Alias: -
- TPGT: 12288
- ISID: 4000002a0000
- Connections: 1
- LUN: 6
- Vendor: ABCStorage
- Product: iSCSI Target
- OS Device Name: /dev/rdsk/c3t1d0s2
- LUN: 5
- Vendor: ABCStorage
- Product: iSCSI Target
- OS Device Name: /dev/rdsk/c3t0d0s2
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 8 \fRDisplaying Target Parameter Information
-.sp
-.LP
-The following command uses the \fBlist\fR subcommand to display target
-information for a specific target.
-
-.sp
-.in +2
-.nf
-# \fBiscsiadm list target-param -v iqn.2004-05.com.abcStorage:Tgt-1\fR
-Target: iqn.2004-05.com.abcStorage:Tgt-1
- Alias: -
- Bi-directional Authentication: disabled
- Authentication Type: NONE
- Login Parameters (Default/Configured):
- Data Sequence In Order: yes/-
- Data PDU In Order: yes/-
- Default Time To Retain: 20/-
- Default Time To Wait: 2/-
- Error Recovery Level: 0/-
- First Burst Length: 65536/-
- Immediate Data: yes/-
- Initial Ready To Transfer (R2T): yes/-
- Max Burst Length: 262144/-
- Max Outstanding R2T: 1/-
- Max Receive Data Segment Length: 65536/-
- Max Connections: 1/-
- Header Digest: NONE/-
- Data Digest: NONE/-
- Tunable Parameters (Default/Configured):
- Session Login Response Time: 60/-
- Maximum Connection Retry Time: 180/-
- Login Retry Time Interval: 60/-
- Configured Sessions: 1
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 9 \fREnabling Static Discovery Method
-.sp
-.LP
-The following command uses the \fBmodify\fR subcommand to enable the static
-discovery method.
-
-.sp
-.in +2
-.nf
-# \fBiscsiadm modify discovery --static enable\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 10 \fRSetting the IP Address for the Radius Server
-.sp
-.LP
-The following command uses the \fBmodify\fR subcommand to set the IP address
-for the radius server, which will be used for CHAP authentication.
-
-.sp
-.in +2
-.nf
-# \fBiscsiadm modify initiator --radius-server 10.0.0.1\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 11 \fRSetting the Node Name for Initiator
-.sp
-.LP
-The following command uses the \fBmodify\fR subcommand to set the node name for
-the initiator node.
-
-.sp
-.in +2
-.nf
-# \fBiscsiadm modify initiator-node -N iqn.2004-10.com.SUN.host-1\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 12 \fRChanging Target Parameters
-.sp
-.LP
-The following command uses the \fBmodify\fR subcommand to change the target
-parameters for a specified target.
-
-.sp
-.in +2
-.nf
-# \fBiscsiadm modify target-param -d none -h none eui.210000203787a693\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 13 \fRRemoving a Discovery Address
-.sp
-.LP
-The following command uses the \fBremove\fR subcommand to remove a discovery
-address.
-
-.sp
-.in +2
-.nf
-# \fBiscsiadm remove discovery-address 10.0.0.1:3260\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 14 \fRRemoving Target Parameters
-.sp
-.LP
-The following command uses the \fBremove\fR subcommand to remove a set of
-target parameters.
-
-.sp
-.in +2
-.nf
-# \fBiscsiadm remove target-param eui.210000203787a693\fR
-.fi
-.in -2
-.sp
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Committed
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBattributes\fR(5), \fBiscsi\fR(7D), \fBscsi_vhci\fR(7D)
-.sp
-.LP
-\fISystem Administration Guide: Devices and File Systems\fR
diff --git a/usr/src/man/man1m/isns.1m b/usr/src/man/man1m/isns.1m
deleted file mode 100644
index 159cff834c..0000000000
--- a/usr/src/man/man1m/isns.1m
+++ /dev/null
@@ -1,279 +0,0 @@
-'\" te
-.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH ISNS 1M "Nov 8, 2007"
-.SH NAME
-isns \- Internet Storage Name Service
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/isns\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The Internet Storage Name Service (iSNS) provides consolidated discovery
-services for Internet SCSI (iSCSI) and Internet Fibre Channel Protocol (iFCP)
-devices in an IP network. iSNS uses a client/server mechanism: servers store
-configuration information for clients, and provide that information upon a
-client's request. IETF RFC 4171 describes the protocols between the server and
-client.
-.sp
-.LP
-This man page provides a summary of the Solaris iSNS server implementation. The
-current implementation does not support iFCP devices.
-.sp
-.LP
-Solaris iSNS server is implemented as the daemon \fBisns\fR, which binds to the
-well -known port 3205 to service client requests. The daemon is started by the
-service management facility (\fBsmf\fR(5)), using the fault management resource
-identifier (FMRI):
-.sp
-.in +2
-.nf
-svc:/network/isns_server
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Use \fBsvcadm\fR(1M) to enable \fBisns\fR. Enabling the service means that it
-starts and runs automatically whenever the operating system is booted. The
-state of service can be displayed with the \fBsvcs\fR(1) command.
-.sp
-.LP
-The service properties listed below can be managed using \fBsvccfg\fR(1M). The
-default value is assigned per RFC 4171 and implementation choice.
-.sp
-.ne 2
-.na
-\fB\fBdata_store_location\fR\fR
-.ad
-.sp .6
-.RS 4n
-Configuration data store location. The default location is
-\fB/etc/isns/isnsdata.xml\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBESI_retry_threshold_count\fR\fR
-.ad
-.sp .6
-.RS 4n
-Entity Status Inquiry retry threshold counter. The default count is \fB3\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBManagement_SCNs_Enabled\fR\fR
-.ad
-.sp .6
-.RS 4n
-Boolean that determines whether Management State Change Notification is
-enabled. The default is \fByes\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBAuthorized_Control_Nodes\fR\fR
-.ad
-.sp .6
-.RS 4n
-Control node names.
-.RE
-
-.sp
-.LP
-After changing a property value, you must use \fBsvcadm\fR(1M) \fBrefresh\fR to
-enable \fBisns\fR to recognize the new value. If you change the
-\fBdata_store_location\fR property, you must enter a \fBsvcadm restart\fR
-command for the change to take effect.
-.sp
-.LP
-RFC 4171 defines the default discovery domain, the default domain set, and the
-"Default DD/DDS" setting with the intent of managing clients that have not been
-assigned to any user-defined discovery domain. The server adopts the following
-behaviors with respect to the default discovery domain and domain set:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-An unassigned client is added to the default discovery domain. A newly
-registered client or a client that was removed from its last discovery domain
-membership is considered to be an unassigned client.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-When a client gets assigned to a user-defined discovery domain, the server will
-remove the client from the default discovery domain.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The default discovery domain set is allowed to be administratively activated or
-deactivated in order to let the administrator control discovery among clients
-in the default discovery domain.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-It is not allowed to administratively add a client to the default discovery
-domain, nor to administratively add a user-defined discovery domain to the
-default discovery domain set.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The default state of the Default discovery domain set is inactive.
-.RE
-.sp
-.LP
-The \fBisns\fR server supports certain \fBrbac\fR(5) authorizations that allow
-you to administer \fBisns\fR activity. These authorizations include the
-following \fBauth_attr\fR(4) privileges:
-.sp
-.ne 2
-.na
-\fB\fBsolaris.isnsmgr.write\fR\fR
-.ad
-.sp .6
-.RS 4n
-Required to create a discovery domain or domain set, to enable/disable a
-discovery domain set and to change grouping of iSNS clients in a discovery
-domain or grouping of discovery domains in a discovery domain set.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsolaris.smf.manage.isns\fR\fR
-.ad
-.sp .6
-.RS 4n
-Required to manage the \fBisns\fR server through the \fBsmf\fR(5).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsolaris.smf.value.isns\fR\fR
-.ad
-.sp .6
-.RS 4n
-Required to change the SMF service properties associated with \fBisns\fR.
-.RE
-
-.sp
-.LP
-The iSNS Server Management profile (see \fBprof_attr\fR(4)) includes all of the
-preceding authorizations. See \fBrbac\fR(5) for an overview of roles and
-authorizations.
-.SH OPTIONS
-.sp
-.LP
-There are no options supported by the \fBisns\fR daemon.
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRStarting an \fBisns\fR Server
-.sp
-.LP
-The following command starts the \fBisns\fR server.
-
-.sp
-.in +2
-.nf
-# \fBsvcadm enable svc:/network/isns_server\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRStopping an \fBisns\fR Server
-.sp
-.LP
-The following command stops the \fBisns\fR server.
-
-.sp
-.in +2
-.nf
-# \fBsvcadm disable svc:/network/isns_server\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRChanging an \fBisns\fR Property
-.sp
-.LP
-The following sequence of commands changes the value of the
-\fBESI_retry_threshold_count\fR property.
-
-.sp
-.in +2
-.nf
-# \fBsvccfg -s svc:/network/isns_server setprop \e
-config/ESI_retry_threshold_count = 6\fR
-# \fBsvcadm refresh svc:/network/isns_server\fR
-.fi
-.in -2
-.sp
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/usr/sbin/isns\fR\fR
-.ad
-.sp .6
-.RS 4n
-iSNS daemon binary.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Standard
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBsvcs\fR(1), \fBisnsadm\fR(1M), \fBsvcadm\fR(1M), \fBsvccfg\fR(1M),
-\fBauth_attr\fR(4), \fBprof_attr\fR(4), \fBattributes\fR(5), \fBrbac\fR(5),
-\fBsmf\fR(5)
-.SH NOTES
-.sp
-.LP
-It is strongly recommended that you restart the server (\fBsvcadm restart\fR)
-after a service property is changed. This allows the server to apply a uniform
-setting for existing and new clients.
-.sp
-.LP
-A control node, as described in RFC 4171, is not required to administer the
-server. Control node operations can be achieved through the \fBisnsadm\fR(1M)
-command interface on the local host. For example, \fBisnsadm\fR enables you to
-create a discovery domain and a discovery domain set and to add a member to it,
-in order to create discovery domain and discovery domain set associations.
diff --git a/usr/src/man/man1m/isnsadm.1m b/usr/src/man/man1m/isnsadm.1m
deleted file mode 100644
index 0aee600d1d..0000000000
--- a/usr/src/man/man1m/isnsadm.1m
+++ /dev/null
@@ -1,763 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH ISNSADM 1M "Sep 25, 2008"
-.SH NAME
-isnsadm \- administer the internet Storage Name Server (iSNS) server
-.SH SYNOPSIS
-.LP
-.nf
-\fBisnsadm\fR \fIoptions\fR
-.fi
-
-.LP
-.nf
-\fBisnsadm\fR \fIsubcommand\fR [\fIsubcommand_options\fR] [\fIoperand\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBisnsadm\fR command is the command-line interface to the Internet Storage
-Name Service (iSNS) server. \fBisnsadm\fR comprises a set of subcommands,
-described in their own section, each of which accomplishes one of the iSNS
-server management functions.
-.sp
-.LP
-For any operations that will change the iSNS configurations the
-\fBsolaris.isnsmgr.write\fR authorization is required. Refer to \fBisns\fR(1M).
-For read operations, the command does not require special authorizations.
-.sp
-.LP
-\fBisnsadm\fR has a set of general options and a set of subcommand-specific
-options. The first category is described under OPTIONS; the second category is
-described in the context of each subcommand description.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-?\fR, \fB--help\fR\fR
-.ad
-.sp .6
-.RS 4n
-Displays context help. Stops interpretation of any subsequent arguments.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-V\fR, \fB--version\fR\fR
-.ad
-.sp .6
-.RS 4n
-Displays version information. Stops interpretation of any subsequent
-arguments.
-.RE
-
-.SH OPERANDS
-.sp
-.LP
-The following operands are used by one or more \fBisnsadm\fR subcommands.
-.sp
-.ne 2
-.na
-\fB\fIiscsi-node-name\fR\fR
-.ad
-.sp .6
-.RS 4n
-iSCSI target or iSCSI initiator symbolic name. A string with a maximum length
-of 223 characters.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIdiscovery-domain-name\fR\fR
-.ad
-.sp .6
-.RS 4n
-Discovery domain symbolic name. A string with a maximum length of 256
-characters.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIdiscovery-domain-set-name\fR\fR
-.ad
-.sp .6
-.RS 4n
-Discovery domain set symbolic name. A string with a maximum length of 256
-characters.
-.RE
-
-.SH SUBCOMMANDS
-.sp
-.LP
-The \fBisnsadm\fR command supports the subcommands described below.
-.SS "\fBadd-dd\fR"
-.sp
-.LP
-The \fBadd-dd\fR subcommand adds a discovery domain to a discovery domain set.
-.sp
-.LP
-The \fBadd-dd\fR subcommand has the following syntax:
-.sp
-.in +2
-.nf
-# \fBisnsadm add-dd \fIoption\fR \fIdiscovery-domain-name\fR, ...\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-\fBadd-dd\fR has the following option:
-.sp
-.ne 2
-.na
-\fB\fB-s\fR \fIdiscovery-domain-set-name\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies a discovery domain set.
-.RE
-
-.SS "\fBadd-node\fR"
-.sp
-.LP
-The \fBadd-node\fR subcommand adds a node to a specified discovery-domain.
-.sp
-.LP
-The \fBadd-node\fR subcommand has the following syntax:
-.sp
-.in +2
-.nf
-# \fBisnsadm add-node \fIoption\fR \fIiscsi-node-name\fR,...\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-\fBadd-node\fR has the following options:
-.sp
-.ne 2
-.na
-\fB\fB-d\fR,\fB--dd\fR \fIdiscovery-domain-name\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies a discovery domain.
-.RE
-
-.SS "\fBcreate-dd\fR"
-.sp
-.LP
-The \fBcreate-dd\fR subcommand creates a discovery domain with the name you
-specify.
-.sp
-.LP
-The \fBcreate-dd\fR subcommand has the following syntax:
-.sp
-.in +2
-.nf
-# \fBisnsadm create-dd \fIdiscovery-domain-name\fR, ...\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-\fBcreate-dd\fR has no options.
-.SS "\fBcreate-dd-set\fR"
-.sp
-.LP
-The \fBcreate-dd-set\fR subcommand creates a discovery domain set with the name
-you specify.
-.sp
-.LP
-The \fBcreate-dd-set\fR subcommand has the following syntax:
-.sp
-.in +2
-.nf
-# \fBisnsadm create-dd-set \fIdiscovery-domain-set-name\fR, ...\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-\fBcreate-dd-set\fR has no options.
-.SS "\fBdelete-dd\fR"
-.sp
-.LP
-The \fBdelete-dd\fR subcommand deletes a discovery domain of the name you
-specify.
-.sp
-.LP
-The \fBdelete-dd\fR subcommand has the following syntax:
-.sp
-.in +2
-.nf
-# \fBisnsadm delete-dd \fIdiscovery-domain-name\fR, ...\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-\fBdelete-dd\fR has no options.
-.SS "\fBdelete-dd-set\fR"
-.sp
-.LP
-The \fBdelete-dd-set\fR subcommand deletes a discovery domain set of the name
-you specify.
-.sp
-.LP
-The \fBdelete-dd-set\fR subcommand has the following syntax:
-.sp
-.in +2
-.nf
-# \fBisnsadm delete-dd-set \fIdiscovery-domain-set-name\fR, ...\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-\fBdelete-dd-set\fR has no options.
-.SS "\fBdisable-dd-set\fR"
-.sp
-.LP
-The \fBdisable-dd-set\fR subcommand disables a discovery domain set.
-.sp
-.LP
-The \fBdisable-dd-set\fR subcommand has the following syntax:
-.sp
-.in +2
-.nf
-# \fBisnsadm disable-dd-set \fIdiscovery-domain-set-name\fR, ...\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-\fBdisable-dd-set\fR has no options.
-.SS "\fBenable-dd-set\fR"
-.sp
-.LP
-The \fBenable-dd-set\fR subcommand enables a discovery domain set.
-.sp
-.LP
-The \fBenable-dd-set\fR subcommand has the following syntax:
-.sp
-.in +2
-.nf
-# \fBisnsadm enable-dd-set \fIdiscovery-domain-set-name\fR, ...\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-\fBenable-dd-set\fR has no options.
-.SS "\fBlist-dd\fR"
-.sp
-.LP
-The \fBlist-dd\fR subcommand displays information about discovery domains. If
-no operand is specified, it lists all discovery domains that currently exist on
-the iSNS server.
-.sp
-.LP
-The \fBlist-dd\fR subcommand has the following syntax:
-.sp
-.in +2
-.nf
-# \fBisnsadm list-dd [\fIoption\fR] [\fIdiscovery-domain-name\fR, ...]\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-\fBlist-dd\fR supports the following option:
-.sp
-.ne 2
-.na
-\fB\fB-v\fR, \fB--verbose\fR\fR
-.ad
-.sp .6
-.RS 4n
-Displays the member contents of the discovery domain(s).
-.RE
-
-.SS "\fBlist-dd-set\fR"
-.sp
-.LP
-The \fBlist-dd-set\fR subcommand lists the discovery domain sets, both enabled
-and disabled, that exist on the iSNS server. Note that there is no \fBdd-set\fR
-registration. If no operand is specified, it lists all of the discovery domain
-sets.
-.sp
-.LP
-The \fBlist-dd-set\fR subcommand has the following syntax:
-.sp
-.in +2
-.nf
-# \fBisnsadm list-dd-set [\fIoption\fR] [\fIdiscovery-domain-set-name\fR, ...]\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-\fBlist-dd-set\fR supports the following option:
-.sp
-.ne 2
-.na
-\fB\fB-v\fR, \fB--verbose\fR\fR
-.ad
-.sp .6
-.RS 4n
-Shows all discovery domains within the discovery domain set.
-.RE
-
-.SS "\fBlist-node\fR"
-.sp
-.LP
-The \fBlist-node\fR subcommand displays information about nodes that are
-currently registered with the iSNS server or that are not registered and belong
-to non-default discovery-domain(s). For the latter case, the node has its type
-field shown as \fBunknown\fR. If no operand is specified, \fBlist-node\fR lists
-all nodes known by the iSNS server.
-.sp
-.LP
-The \fBlist-node\fR subcommand has the following syntax:
-.sp
-.in +2
-.nf
-# \fBisnsadm list-node [\fIoptions\fR] [\fIiscsi-node-name\fR, ...]\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-\fBlist-node\fR supports the following options:
-.sp
-.ne 2
-.na
-\fB\fB-t\fR, \fB--target\fR\fR
-.ad
-.sp .6
-.RS 4n
-Filters the list to display only iSCSI target nodes.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-i\fR, \fB--initiator\fR\fR
-.ad
-.sp .6
-.RS 4n
-Filters the list to display only iSCSI initiator nodes.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR, \fB--verbose\fR\fR
-.ad
-.sp .6
-.RS 4n
-Displays details about a node. Without this option, only the name, alias, and
-type information are displayed.
-.RE
-
-.SS "\fBmodify-dd\fR"
-.sp
-.LP
-The \fBmodify-dd\fR subcommand modifies an attribute of a specified discovery
-domain.
-.sp
-.LP
-The \fBmodify-dd\fR subcommand has the following syntax:
-.sp
-.in +2
-.nf
-# \fBisnsadm modify-dd \fIoption\fR \fIdiscovery-domain-name\fR\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-\fBmodify-dd\fR has the following option:
-.sp
-.ne 2
-.na
-\fB\fB-n\fR \fIdiscovery-domain-name\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the new name of a discovery domain to be applied to an existing
-discovery-domain.
-.RE
-
-.SS "\fBmodify-dd-set\fR"
-.sp
-.LP
-The \fBmodify-dd-set\fR subcommand modifies a discovery domain set.
-.sp
-.LP
-The \fBmodify-dd-set\fR subcommand has the following syntax:
-.sp
-.in +2
-.nf
-# \fBisnsadm modify-dd-set \fIoption\fR \fIdiscovery-domain-set-name\fR\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-\fBmodify-dd-set\fR has the following option:
-.sp
-.ne 2
-.na
-\fB\fB-n\fR \fIdiscovery-domain-set-name\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the new name of a discovery domain set to be applied to an existing
-discovery-domain-set.
-.RE
-
-.SS "\fBremove-dd\fR"
-.sp
-.LP
-The \fBremove-dd\fR subcommand removes the association with a specified
-discovery domain set.
-.sp
-.LP
-The \fBremove-dd\fR subcommand has the following syntax:
-.sp
-.in +2
-.nf
-# \fBisnsadm remove-dd \fIoption\fR \fIdiscovery-domain-name\fR, ...\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-\fBremove-dd\fR has the following option:
-.sp
-.ne 2
-.na
-\fB\fB-s\fR \fIdiscovery-domain-set-name\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the discovery domain set from which the discovery domain will be
-removed.
-.RE
-
-.SS "\fBremove-node\fR"
-.sp
-.LP
-The \fBremove-node\fR subcommand removes a node.
-.sp
-.LP
-The \fBremove-node\fR subcommand has the following syntax:
-.sp
-.in +2
-.nf
-# \fBisnsadm remove-node \fIoption\fR \fIiscsi-node-name\fR, ...\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-\fBremove-node\fR has the following option:
-.sp
-.ne 2
-.na
-\fB\fB-d\fR \fIdiscovery-domain-name\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the discovery domain from which a node will be removed.
-.RE
-
-.SS "\fBshow-config\fR"
-.sp
-.LP
-The \fBshow-config\fR subcommand displays the iSNS server administrative
-settings. Note that the setting can be modified by means of the service
-management facility (see \fBsmf\fR(5)). Refer to \fBisns\fR(1M).
-.sp
-.LP
-The \fBshow-config\fR subcommand has the following syntax:
-.sp
-.in +2
-.nf
-# \fBisnsadm show-config\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-\fBshow-config\fR has no options.
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRDisplaying Clients
-.sp
-.LP
-The following use of the \fBlist-node\fR subcommand displays clients.
-
-.sp
-.in +2
-.nf
-# \fBisnsadm list-node -v\fR
-iSCSI Name: iqn.1986-03.com.sun:01:000e0c9f10da.45173FEA.engr
- Alias: STK5320_NAS
- Type: Target
- Network Entity: SE5310
- Portal: 172.20.57.95:3260
- Portal Group: 1
- Portal: 172.20.56.95:3260
- Portal Group: 1
- DD Name: Default
-iSCSI Name: iqn.1986-03.com.sun:01:000e0c9f10da.454F00A2.acct
- Alias:
- Type: Target
- Network Entity: SE5310
- Portal: 172.20.57.95:3260
- Portal Group: 1
- Portal: 172.20.56.95:3260
- Portal Group: 1
- DD Name: Default
-iSCSI Name: iqn.1986-03.com.sun:01:e00000000000.46fd8e2b
- Alias: host-x2100
- Type: Initiator
- Network Entity: iqn.1986-03.com.sun:01:e00000000000.46fd8e2b
- Portal: 172.20.236.123:58530
- Portal Group: 1
- DD Name: Default
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRDisplaying a Discovery Domain
-.sp
-.LP
-The following use of the \fBlist-dd\fR subcommand displays discovery domains.
-
-.sp
-.in +2
-.nf
-# \fBisnsadm list-dd -v\fR
-DD name: Default
- DD set(s): Default
- iSCSI Name: iqn.1986-03.com.sun:01:000e0c9f10da.45173FEA.engr
- iSCSI Name: iqn.1986-03.com.sun:01:000e0c9f10da.454F00A2.acct
- iSCSI name: iqn.1986-03.com.sun:01:e00000000000.46fd8e2b
-DD name: acct-dd
-DD name: engineering-dd
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRAdding a Node
-.sp
-.LP
-The following use of the \fBadd-node\fR subcommand adds a node to a discovery
-domain, creating a discovery domain membership.
-
-.sp
-.in +2
-.nf
-# \fBisnsadm add-node -d engineering-dd \e
-iqn.1986-03.com.sun:01:000e0c9f10da.454F00A2.engr\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 4 \fRRemoving a Node
-.sp
-.LP
-The following use of the \fBremove-node\fR subcommand removes a node from a
-discovery domain, thereby removing a discovery domain membership.
-
-.sp
-.in +2
-.nf
-# \fBisnsadm remove-node -d acct-dd \e
-iqn.1986-03.com.sun:01:000e0c9f10da.454F00A2.acct\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 5 \fRCreating a Discovery Domain Set
-.sp
-.LP
-The following use of the \fBcreate-dd-set\fR subcommand creates a discovery
-domain set.
-
-.sp
-.in +2
-.nf
-# \fBisnsadm create-dd-set operation-dd-set\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 6 \fRDisplaying a Discovery Domain Set
-.sp
-.LP
-The following use of the \fBlist-dd-set\fR subcommand displays discovery domain
-sets.
-
-.sp
-.in +2
-.nf
-# \fBisnsadm list-dd-set -v\fR
-DD Set name: Default
- State: Disabled
- DD Name: Default
-DD Set name: operation-dd-set
- State: Disabled
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 7 \fRAdding a Discovery Domain
-.sp
-.LP
-The following use of the \fBadd-dd\fR subcommand adds a discovery domain to a
-discovery domain set.
-
-.sp
-.in +2
-.nf
-# \fBisnsadm add-dd -s operation-dd-set engineering-dd\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 8 \fRDisplaying a Discovery Domain Set
-.sp
-.LP
-The following use of the \fBlist-dd-set\fR displays the attributes of a
-discovery domain set.
-
-.sp
-.in +2
-.nf
-# \fBisnsadm list-dd-set\fR
-DD Set name: Default
- State: Disabled
- DD Name: Default
-DD Set name: operation-dd-set
- State: Disabled
- DD Name: engineering-dd
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 9 \fREnabling a Discovery Domain Set
-.sp
-.LP
-The following use of the \fBenable-dd-set\fR subcommand enables a discovery
-domain set.
-
-.sp
-.in +2
-.nf
-# \fBisnsadm enable-dd-set Default\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 10 \fRDisabling a Discovery Domain Set
-.sp
-.LP
-The following use of the \fBdisable-dd-set\fR subcommand disables a discovery
-domain set.
-
-.sp
-.in +2
-.nf
-# \fBisnsadm disable-dd-set Default\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 11 \fRDisplaying Administrative Settings
-.sp
-.LP
-The following use of the \fBshow-config\fR subcommand displays current
-administrative settings.
-
-.sp
-.in +2
-.nf
-# \fBisnsadm show-config\fR
- Data Store Location: /etc/isns/isnsdata.xml
- Entity Status Inquiry Non-Response Threshold: 3
- Management SCN Enabled: yes
- Authorized Control Node Names: -
-.fi
-.in -2
-.sp
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Volatile
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBiscsiadm\fR(1M), \fBiscsitadm\fR(1M), \fBisns\fR(1M), \fBattributes\fR(5),
-\fBsmf\fR(5)
-.SH NOTES
-.sp
-.LP
-When a subcommand is invoked with multiple operands and there are failures on
-one or more, but not all, operands, \fBisnsadm\fR displays a generic message
-indicating partial failure, with list of failed operands. An error on a
-specific operand can be found by issuing the same subcommand on the failing
-operand.
diff --git a/usr/src/man/man1m/itadm.1m b/usr/src/man/man1m/itadm.1m
deleted file mode 100644
index f57fe25f24..0000000000
--- a/usr/src/man/man1m/itadm.1m
+++ /dev/null
@@ -1,986 +0,0 @@
-'\" t
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.\"
-.\"
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 2014 Nexenta Systems, Inc. All rights reserved.
-.\"
-.TH ITADM 1M "April 9, 2016"
-.SH NAME
-itadm \- administer iSCSI targets
-.SH SYNOPSIS
-.LP
-.nf
-\fBitadm\fR create-target [\fB-a\fR,\fB--auth-method\fR radius | chap | none | default]
- [\fB-s\fR,\fB--chap-secret\fR] [\fB-S\fR,\fB--chap-secret-file\fR \fIpath\fR]
- [\fB-u\fR,\fB--chap-user\fR \fIchap-user-name\fR] [\fB-n\fR,\fB--node-name\fR \fItarget_node_name\fR]
- [\fB-l\fR,\fB--alias\fR \fIalias\fR] [\fB-t\fR,\fB--tpg\fR \fItpg-name\fR[,\fItpg-name\fR]]
-.fi
-
-.LP
-.nf
-\fBitadm\fR modify-target [\fB-a\fR,\fB--auth-method\fR radius | chap | none | default]
- [\fB-s\fR,\fB--chap-secret\fR] [\fB-S\fR,\fB--chap-secret-file\fR \fIpath\fR]
- [\fB-u\fR,\fB--chap-user\fR \fIchap-user-name\fR] [\fB-n\fR,\fB--node-name\fR \fInew_target_node_name\fR]
- [\fB-l\fR,\fB--alias\fR \fIalias\fR] [\fB-t\fR,\fB--tpg\fR \fItpg-name\fR[,\fItpg-name\fR]] \fItarget_node_name\fR
-.fi
-
-.LP
-.nf
-\fBitadm\fR delete-target [\fB-f\fR,\fB--force\fR] \fItarget_node_name\fR
-.fi
-
-.LP
-.nf
-\fBitadm\fR list-target [\fB-p\fR,\fB--parsable\fR] [\fB-v\fR,\fB--verbose\fR] [\fItarget_node_name\fR]
-.fi
-
-.LP
-.nf
-\fBitadm\fR create-tpg \fItpg_name\fR \fIIP-address\fR[:\fIport\fR] [\fIIP-address\fR[:\fIport\fR]]...
-.fi
-
-.LP
-.nf
-\fBitadm\fR list-tpg [\fB-p\fR,\fB--parsable\fR] [\fB-v\fR,\fB--verbose\fR] [\fItpg_name\fR]
-.fi
-
-.LP
-.nf
-\fBitadm\fR delete-tpg [\fB-f\fR,\fB--force\fR] \fItpg_name\fR
-.fi
-
-.LP
-.nf
-\fBitadm\fR create-initiator [\fB-s\fR,\fB--chap-secret\fR] [\fB-S\fR,\fB--chap-secret-file\fR \fIpath\fR]
- [\fB-u\fR,\fB--chap-user\fR \fIchap-user-name\fR] \fIinitiator_node_name\fR
-.fi
-
-.LP
-.nf
-\fBitadm\fR modify-initiator [\fB-s\fR,\fB--chap-secret\fR] [\fB-S\fR,\fB--chap-secret-file\fR \fIpath\fR]
- [\fB-u\fR,\fB--chap-user\fR \fIchap-user-name\fR] \fIinitiator_node_name\fR
-.fi
-
-.LP
-.nf
-\fBitadm\fR list-initiator [\fB-p\fR,\fB--parsable\fR] [\fB-v\fR,\fB--verbose\fR] \fIinitiator_node_name\fR
-.fi
-
-.LP
-.nf
-\fBitadm\fR delete-initiator \fIinitiator_node_name\fR
-.fi
-
-.LP
-.nf
-\fBitadm\fR modify-defaults [\fB-a\fR,\fB--auth-method\fR radius | chap | none]
- [\fB-r\fR,\fB--radius-server\fR \fIIP-address\fR[:\fIport\fR]] [\fB-d\fR,\fB--radius-secret\fR]
- [\fB-D\fR,\fB--radius-secret-file\fR \fIpath\fR][\fB-i\fR,\fB--isns\fR enable | disable]
- [\fB-I\fR,\fB--isns-server\fR \fIIP-address\fR[:\fIport\fR][,\fIIP-address\fR[:\fIport\fR]]]
-.fi
-
-.LP
-.nf
-\fBitadm\fR list-defaults [\fB-p\fR,\fB--parsable\fR]
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBitadm\fR command manages Internet SCSI (iSCSI) target nodes within the
-SCSI Target Mode Framework described in \fBstmfadm\fR(1M) and
-\fBlibstmf\fR(3LIB). This allows the iSCSI initiators to access STMF logical
-units using the iSCSI protocol. In addition to iSCSI target nodes, \fBitadm\fR
-manages two other classes of managed objects: iSCSI Target Portal Groups, and
-iSCSI Initiator Node Contexts.
-.sp
-.LP
-\fBitadm\fR is implemented as a set of subcommands with options and operands
-for each subcommand. These subcommands are described in their own section,
-below. In addition to its subcommands, \fBitadm\fR has a help command, which
-displays the utility's usage information. The help command is invoked with the
-\fB-?\fR option.
-.SS "iSCSI Target Portal Groups"
-.LP
-An iSCSI Target Network Portal is an IP address and TCP port that can be used
-by an initiator node to connect to an iSCSI target. A collection of these
-portals is called a Target Portal Group (TPG). You can use a TPG to limit
-access to an iSCSI target. Use the \fBitadm modify\fR \fB-t\fR command to bind
-a specific iSCSI target to the TPG. An iSCSI listener is created on each IP
-address that belongs to the TPG, and listens for connections to the iSCSI
-target.
-.sp
-.LP
-A TPG is identified by a unique name provided when the TPG is created. A
-numerical "Target Portal Group Tag" from the range 2-65535 is automatically
-generated when the TPG is created. The Target Portal Group Tag 1 is reserved
-for the "default" target portal group that is used when no explicit Target
-Portal Groups are set on the target. The portal for the default TPG matches
-requests from all network interfaces on port 3260.
-.SS "iSCSI Initiator Node Contexts"
-.LP
-Certain operations such as authentication by means of Challenge Handshake
-Authentication Protocol (CHAP) require parameters associated with a remote
-iSCSI Initiator Node. These parameters are associated with an iSCSI Initiator
-Node Context. An iSCSI Initiator Node Context is identified by its Initiator
-Node Name, formatted in either IQN or EUI format (see RFC 3720). For example:
-.sp
-.in +2
-.nf
-iqn.1986-03.com.sun:01:e00000000000.47d55444
-eui.02004567A425678D
-.fi
-.in -2
-.sp
-
-.SS "Specifying IP Addresses"
-.LP
-A number of \fBitadm\fR subcommands require that you specify one or more IP
-addresses with optional port numbers. For IPv4, use standard dotted decimal
-notation. For IPv6, enclose addresses in square brackets. The following are
-example specifications.
-.sp
-.in +2
-.nf
-\fBIPv4\fR: 10.2.4.1
- 10.2.4.1:3260
-\fBIPv6\fR: [1080:0:0:0:8:800:200C:417A]
- [1080:0:0:0:8:800:200C:417A]:3260
-.fi
-.in -2
-.sp
-
-.SH SUBCOMMANDS
-.LP
-The following are the \fBitadm\fR subcommands with their options.
-.SS "\fBitadm create-target\fR"
-.in +2
-.nf
-itadm create-target [-a,--auth-method radius | chap | none | default]
- [-s,--chap-secret]
- [-S,--chap-secret-file \fIpath\fR] [-u,--chap-user \fIchap-user-name\fR]
- [-n,--node-name \fItarget_node_name\fR] [-l,--alias \fIalias\fR]
- [-t,--tpg \fItpg-name\fR[,\fItpg-name\fR,...]]
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Create a iSCSI target with the specified options. Options are as follows.
-.sp
-.ne 2
-.na
-\fB\fB-a\fR,\fB--auth-method\fR \fBradius | chap | none | default\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the authentication method to use for the target. Valid values are
-\fBradius\fR, \fBchap\fR, and \fBnone\fR. \fBchap\fR indicates that initiators
-connecting to this target must be authenticated using the Challenge Handshake
-Authentication Protocol (CHAP). \fBradius\fR indicates initiators should also
-be authenticated by means of CHAP but the required authentication parameters
-should be obtained from a central RADIUS server (see the \fBradius-server\fR
-and \fBradius-secret\fR options). \fBnone\fR means that no authentication is
-required to connect to the target. \fBdefault\fR means the target will use the
-global setting of this property. (See the \fBmodify-defaults\fR subcommand.)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR,\fB--chap-secret\fR\fR
-.ad
-.sp .6
-.RS 4n
-The CHAP secret to send during mutual CHAP authentication. There is no default
-for this property. Maximum length is 255 characters; minimum required length is
-12 characters.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-S\fR,\fB--chap-secret-file\fR \fIpath\fR\fR
-.ad
-.sp .6
-.RS 4n
-Path to a temporary file containing the CHAP secret as described in the
-\fB-s\fR option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-u\fR,\fB--chap-user\fR \fIchap-user-name\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the CHAP username for a target for use in mutual CHAP authentication.
-This value is allowed only for targets, cannot be set globally, and is used
-only when the initiator node is configured to use mutual CHAP authentication.
-If no value is specified then the target node name is used as the username. See
-\fBiscsiadm\fR(1M).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR,\fB--node-name\fR \fItarget_node_name\fR\fR
-.ad
-.sp .6
-.RS 4n
-An iSCSI Target Node is identified by its Target Node Name, formatted in either
-IQN or EUI format (see RFC 3720). This option establishes that name.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR,\fB--alias\fR \fIalias\fR\fR
-.ad
-.sp .6
-.RS 4n
-An alternate identifier associated with a target node. The identifier does not
-need to be unique.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-t\fR,\fB--tpg\fR \fItpg-name\fR[,\fItpg-name\fR,...]\fR
-.ad
-.sp .6
-.RS 4n
-A list of Target Portal Group (TPG) identifiers that specifies the TPGs that an
-initiator can use to access a specific target or the keyword \fBdefault\fR. If
-\fBdefault\fR is specified, the target will use the default portal,
-\fBINADDR_ANY:3260\fR.
-.RE
-
-.SS "\fBitadm modify-target\fR"
-.in +2
-.nf
-itadm modify-target [\fB-a\fR,\fB--auth-method\fR radius | chap | none | default]
- [\fB-s\fR,\fB--chap-secret\fR] [\fB-S\fR,\fB--chap-secret-file\fR \fIpath\fR]
- [\fB-u\fR,\fB--chap-user\fR \fIchap-user-name\fR] [\fB-n\fR,\fB--node-name\fR \fInew_tgt_node_name\fR]
- [\fB-l\fR,\fB--alias\fR \fIalias\fR] [\fB-t\fR,\fB--tpg\fR \fItpg-name\fR[,\fItpg-name\fR]] \fItarget_node_name\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Modify an iSCSI target according to the specified options. Options are as
-follows.
-.sp
-.ne 2
-.na
-\fB\fB-a\fR,\fB--auth-method\fR \fBradius | chap | none | default\fR\fR
-.ad
-.sp .6
-.RS 4n
-As described under the \fBcreate-target\fR subcommand, above.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR,\fB--chap-secret\fR\fR
-.ad
-.sp .6
-.RS 4n
-As described under the \fBcreate-target\fR subcommand, above.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-S\fR,\fB--chap-secret-file\fR \fIpath\fR\fR
-.ad
-.sp .6
-.RS 4n
-As described under the \fBcreate-target\fR subcommand, above.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-u\fR,\fB--chap-user\fR \fIchap-user-name\fR\fR
-.ad
-.sp .6
-.RS 4n
-As described under the \fBcreate-target\fR subcommand, above. To remove an
-explicitly set CHAP username use \fB-u\fR \fBnone\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR,\fB--node-name\fR \fItarget_node_name\fR\fR
-.ad
-.sp .6
-.RS 4n
-Renames the target. See also the description of \fB-n\fR under the
-\fBcreate-target\fR subcommand, above.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR,\fB--alias\fR \fIalias\fR\fR
-.ad
-.sp .6
-.RS 4n
-As described under the \fBcreate-target\fR subcommand, above. To remove an
-explicitly set alias use \fB-l\fR \fBnone\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-t\fR,\fB--tpg\fR \fItpg-name\fR[,\fItpg-name\fR,...]\fR
-.ad
-.sp .6
-.RS 4n
-As described under the \fBcreate-target\fR subcommand, above.
-.RE
-
-.SS "\fBitadm list-target\fR"
-.in +2
-.nf
-itadm list-target [\fB-p\fR,\fB--parsable\fR] [\fB-v\fR,\fB--verbose\fR] [\fItarget_node_name\fR]
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-List information about the configured targets. If \fItarget_node_name\fR is
-specified, list only the information for that target. Options are as follows.
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR,\fB--parsable\fR\fR
-.ad
-.sp .6
-.RS 4n
-Used for scripting mode. Do not print headers and separate fields by a single
-tab instead of arbitrary white space.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR,\fB--verbose\fR\fR
-.ad
-.sp .6
-.RS 4n
-Verbose mode.
-.RE
-
-.SS "\fBitadm delete-target\fR"
-.in +2
-.nf
-itadm delete-target [\fB-f\fR,\fB--force\fR] \fItarget_node_name\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Delete the target specified by \fItarget_node_name\fR. The target must be
-\fBoffline\fR before it can be deleted. Option is as follows.
-.sp
-.ne 2
-.na
-\fB\fB-f\fR,\fB--force\fR\fR
-.ad
-.sp .6
-.RS 4n
-If the target persists in an online state, this option attempts to offline the
-target before deleting it.
-.RE
-
-.SS "\fBitadm create-tpg\fR"
-.in +2
-.nf
-itadm create-tpg \fItpg_name\fR \fIIP-address\fR[:\fIport\fR]...
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Create an iSCSI target portal group made up of the specified portals and assign
-it the identifier \fItpg_name\fR. Each portal is an IP address and port pair.
-IPv4 portals are specified in dotted address notation, for example,
-\fB172.31.255.255\fR. IPv6 portal addresses must be enclosed in square
-brackets.
-.sp
-.LP
-This subcommand has no options.
-.SS "\fBitadm list-tpg\fR"
-.in +2
-.nf
-itadm list-tpg [\fB-p\fR,\fB--parsable\fR] [\fB-v\fR,\fB--verbose\fR] [\fItpg_name\fR]
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-List information about the configured target portal group. If \fItpg_name\fR is
-specified then list only the information about the target portal group
-associated with that \fItpg_name\fR. Options are as follows.
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR,\fB--parsable\fR\fR
-.ad
-.sp .6
-.RS 4n
-Used for scripting mode. Do not print headers and separate fields by a single
-tab instead of arbitrary white space.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR,\fB--verbose\fR\fR
-.ad
-.sp .6
-.RS 4n
-Verbose mode.
-.RE
-
-.SS "\fBitadm delete-tpg\fR"
-.in +2
-.nf
-itadm delete-tpg [\fB-f\fR,\fB--force\fR] \fItpg_name\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Delete the target portal group associated with \fItpg_name\fR. Option is as
-follows.
-.sp
-.ne 2
-.na
-\fB\fB-f\fR,\fB--force\fR\fR
-.ad
-.sp .6
-.RS 4n
-If the TPG is associated with any targets, the request to delete will be denied
-unless this option is specified.
-.RE
-
-.SS "\fBitadm create-initiator\fR"
-.in +2
-.nf
-itadm create-initiator [\fB-s\fR,\fB--chap-secret\fR] [\fB-S\fR,\fB--chap-secret-file\fR \fIpath\fR]
- [\fB-u\fR,\fB--chap-user\fR \fIchap-user-name\fR] \fIinitiator_node_name\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Configure parameters associated with the remote initiator named
-\fIinitiator_node_name\fR. Options are as follows.
-.sp
-.ne 2
-.na
-\fB\fB-s\fR,\fB--chap-secret\fR\fR
-.ad
-.sp .6
-.RS 4n
-As described under the \fBcreate-target\fR subcommand, above.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-S\fR,\fB--chap-secret-file\fR \fIpath\fR\fR
-.ad
-.sp .6
-.RS 4n
-As described under the \fBcreate-target\fR subcommand, above.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-u\fR,\fB--chap-user\fR \fIchap-user-name\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the CHAP username for an initiator, for use in CHAP authentication.
-If no value is specified then the initiator node name is used as the username.
-.RE
-
-.SS "\fBitadm modify-initiator\fR"
-.in +2
-.nf
-itadm modify-initiator [\fB-s\fR,\fB--chap-secret\fR] [\fB-S\fR,\fB--chap-secret-file\fR \fIpath\fR]
- [\fB-u\fR,\fB--chap-user\fR \fIchap-user-name\fR] \fIinitiator_node_name\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Modify parameters associated with the remote initiator named
-\fIinitiator_node_name\fR. Options are as follows.
-.sp
-.ne 2
-.na
-\fB\fB-s\fR,\fB--chap-secret\fR\fR
-.ad
-.sp .6
-.RS 4n
-As described under the \fBcreate-target\fR subcommand, above.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-S\fR,\fB--chap-secret-file\fR \fIpath\fR\fR
-.ad
-.sp .6
-.RS 4n
-As described under the \fBcreate-target\fR subcommand, above.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-u\fR,\fB--chap-user\fR \fIchap-user-name\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the CHAP username for an initiator, for use in CHAP authentication.
-If no value is specified then the initiator node name is used as the username.
-.RE
-
-.SS "\fBitadm delete-initiator\fR"
-.in +2
-.nf
-itadm delete-initiator \fIinitiator_node_name\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Delete parameters associated with the remote initiator named
-\fIinitiator_node_name\fR. This subcommand has no options.
-.SS "\fBitadm list-initiator\fR"
-.in +2
-.nf
-\fBitadm\fR list-initiator [\fB-p\fR,\fB--parsable\fR] [\fB-v\fR,\fB--verbose\fR] \fIinitiator_node_name\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-List parameters associated with the initiator named \fIinitiator_node_name\fR.
-Options are as follows.
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR,\fB--parsable\fR\fR
-.ad
-.sp .6
-.RS 4n
-Used for scripting mode. Do not print headers and separate fields by a single
-tab instead of arbitrary white space.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR,\fB--verbose\fR\fR
-.ad
-.sp .6
-.RS 4n
-Verbose mode.
-.RE
-
-.SS "\fBitadm modify-defaults\fR"
-.in +2
-.nf
-itadm modify-defaults [\fB-a\fR,\fB--auth-method\fR radius | chap | none]
- [\fB-r\fR,\fB--radius-server\fR \fIIP-address\fR[:\fIport\fR]] [\fB-d\fR,\fB--radius-secret\fR]
- [\fB-D\fR,\fB--radius-secret-file\fR \fIpath\fR][\fB-i\fR,\fB--isns\fR enable | disable]
- [\fB-I\fR,\fB--isns-server\fR \fIIP-address\fR[:\fIport\fR][,\fIIP-address\fR[:\fIport\fR]]]
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Modify default parameters. Options are as follows.
-.sp
-.ne 2
-.na
-\fB\fB-a\fR,\fB--auth-method\fR \fBradius | chap | none\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the default authentication method to use for all targets. Valid
-values are \fBradius\fR, \fBchap\fR, and \fBnone\fR. \fBchap\fR indicates that
-initiators connecting to this target must be authenticated using Challenge
-Handshake Authentication Protocol (CHAP). \fBradius\fR indicates initiators
-should also be authenticated by means of CHAP, but the required authentication
-parameters should be obtained from a central RADIUS server. (See
-\fB--radius-server\fR and \fB--radius-secret\fR options.) \fBnone\fR means that
-no authentication is required to connect to the target. Individual targets can
-override this global setting using the \fB-a\fR option of the
-\fBcreate-target\fR and \fBmodify-target\fR subcommands.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-d\fR,\fB--radius-secret\fR\fR
-.ad
-.sp .6
-.RS 4n
-RADIUS Shared Secret for centralized CHAP authentication.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-D\fR,\fB--radius-secret-file\fR \fIpath\fR\fR
-.ad
-.sp .6
-.RS 4n
-Path to a temporary file containing the CHAP secret as described in the
-\fB-d\fR option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-i\fR,\fB--sns\fR \fBenable | disable\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies whether targets should be registered with the set of defined iSCSI
-Name Service (iSNS) servers.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-I\fR,\fB--isns-server\fR
-\fIIP-address\fR[:\fIport\fR][,\fIIP-address\fR[:\fIport\fR],...]\fR
-.ad
-.sp .6
-.RS 4n
-Defines a list of iSNS servers with which iSCSI target nodes will be registered
-when the \fBisns\fR option associated with the respective target is set. Up to
-eight iSNS servers can be specified. To remove all iSNS servers, use \fB-I\fR
-\fBnone\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-r\fR,\fB--radius-server\fR \fIIP-address\fR[:\fIport\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Specify the IP address of the RADIUS server used for centralized CHAP
-authentication.
-.RE
-
-.SS "\fBitadm list-defaults\fR"
-.in +2
-.nf
-itadm list-defaults [\fB-p\fR,\fB--parsable\fR]
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-List information about the default properties. Option is as follows.
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR,\fB--parsable\fR\fR
-.ad
-.sp .6
-.RS 4n
-Used for scripting mode. Do not print headers and separate fields by a single
-tab instead of arbitrary white space.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRCreating a Target
-.sp
-.LP
-The following command creates a target.
-
-.sp
-.in +2
-.nf
-# \fBitadm create-target\fR
-Target iqn.1986-03.com.sun:02:72e1b181-7bce-c0e6-851e-ec0d8cf14b7a
-successfully created
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRCreating a Target with a Specific Name
-.sp
-.LP
-The following command creates a target with a specific IQN.
-
-.sp
-.in +2
-.nf
-# \fBitadm create-target -n eui.20387ab8943ef7548\fR
-or:
-# \fBitadm create-target \e
--n iqn.1986-03.com.sun:02:a9a366f8-cc2b-f291-840948c7f29e\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRChanging a Name
-.sp
-.LP
-The following command changes an IQN for an existing target.
-
-.sp
-.in +2
-.nf
-# \fBitadm modify-target -n eui.20387ab8943ef7548 \e
-iqn.1986-03.com.sun:02:a9a366f8-909b-cc2b-f291-840948c7f29e\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 4 \fRSetting up CHAP Authentication
-.sp
-.LP
-The following command sets up CHAP authentication for a target using the
-default CHAP username.
-
-.sp
-.in +2
-.nf
-# \fBitadm modify-initiator -s iqn.1986-03.com.sun:01:e00000000000.47d55444\fR
-\fBEnter CHAP secret:\fR *********
-\fBRe-enter secret:\fR *********
-
-# \fBitadm modify-target -a chap eui.20387ab8943ef7548\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 5 \fRCreating Target Portal Groups
-.sp
-.LP
-The following command creates two target portal groups, \fBA\fR and \fBB\fR,
-using port 8000 for the addresses in TPG 2.
-
-.sp
-.in +2
-.nf
-# \fBitadm create-tpg A 192.168.0.1 192.168.0.2\fR
-# \fBitadm create-tpg B 192.168.0.2:8000 192.168.0.2:8000\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 6 \fRConfiguring a Target to Use TPGs
-.sp
-.LP
-The following command configures a target to use TPGs A and B.
-
-.sp
-.in +2
-.nf
-# \fBitadm modify-target -t A,B eui.20387ab8943ef7548\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 7 \fRSetting up RADIUS Authentication for Specific Target
-.sp
-.LP
-The following command sets up RADIUS authentication for a specific target.
-
-.sp
-.in +2
-.nf
-# \fBitadm modify-defaults -r 192.168.10.1 -d\fR
-\fBEnter RADIUS secret:\fR *********
-\fBRe-enter secret:\fR *********
-
-# \fBitadm modify-target -a radius eui.20387ab8943ef7548\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 8 \fRSetting up RADIUS Authentication for All Targets
-.sp
-.LP
-The following command sets up RADIUS authentication for all targets.
-
-.sp
-.in +2
-.nf
-# \fBitadm modify-defaults -d -r 192.168.10.1 -a radius\fR
-\fBEnter RADIUS secret:\fR *********
-\fBRe-enter secret:\fR *********
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The preceding command assumes all targets were created with \fB-a\fR
-\fBdefault\fR.
-
-.LP
-\fBExample 9 \fRListing Default Properties
-.sp
-.LP
-The following command lists default properties.
-
-.sp
-.in +2
-.nf
-# \fBitadm list-defaults\fR
-iSCSI Target Default Properties:
-
-alias: \fInone\fR
-auth: \fInone\fR
-radiusserver: \fInone\fR
-radiussecret: unset
-isns: disabled
-isnsserver: 2.3.4.5,4.5.6.7
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 10 \fRListing Targets
-.sp
-.LP
-The following command lists targets.
-
-.sp
-.in +2
-.nf
-# \fBitadm list-target\fR
-TARGET NAME STATE SESSIONS
-iqn.1986-03.com.sun:02:72e1b181-7bce-c0e6-851e-ec0d8cf14b7a online 0
-iqn.1986-03.com.sun:02:2cb0c526-c05a-e279-e396-a367006f4227 online 0
-iqn.1986-03.com.sun:02:d14125bb-1c9d-c28d-97b0-f89259b642f3 online 0
-iqn.1986-03.com.sun:02:03ff9fc5-794a-e9b4-a081-bb82917c292a online 0
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 11 \fRListing Targets (Verbose)
-.sp
-.LP
-The following command lists targets with the verbose option.
-
-.sp
-.in +2
-.nf
-# \fBitadm list-target -v\fR
-TARGET NAME STATE SESSIONS
-iqn.1986-03.com.sun:02:d23e68d8-2d79-c988-98e7-a6361689d33c online 0
- alias: -
- auth: none (defaults)
- targetchapuser: -
- targetchapsecret: unset
- tpg-tags: default
-iqn.1986-03.com.sun:02:94ec46d4-c8e1-6993-ef03-ffc1dcd66606 online 1
- alias: -
- auth: chap
- targetchapuser: -
- targetchapsecret: unset
- tpg-tags: nge1_ipv4 = 3
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 12 \fRListing a Specific Target
-.sp
-.LP
-The following command lists targets with the verbose option.
-
-.sp
-.in +2
-.nf
-# \fBitadm list-target -v \e
-iqn.1986-03.com.sun:02:2cb0c526-c05a-e279-e396-a367006f4227\fR
-TARGET NAME STATE SESSIONS
-iqn.1986-03.com.sun:02:2cb0c526-c05a-e279-e396-a367006f4227 online 1
- alias: -
- auth: chap
- targetchapuser: -
- targetchapsecret: unset
- tpg-tags: nge1_ipv4 = 3
-.fi
-.in -2
-.sp
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Committed
-.TE
-
-.SH SEE ALSO
-.LP
-\fBiscsiadm\fR(1M), \fBstmfadm\fR(1M), \fBlibstmf\fR(3LIB), \fBattributes\fR(5)
diff --git a/usr/src/man/man1m/k5srvutil.1m b/usr/src/man/man1m/k5srvutil.1m
deleted file mode 100644
index 3520371443..0000000000
--- a/usr/src/man/man1m/k5srvutil.1m
+++ /dev/null
@@ -1,123 +0,0 @@
-'\" te
-.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH K5SRVUTIL 1M "Jul 25, 2015"
-.SH NAME
-k5srvutil \- host key table (keytab) manipulation utility
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/k5srvutil\fR \fIoperation\fR [\fB-ik\fR] [\fB-f\fR \fIfilename\fR]
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBk5srvutil\fR command allows a system manager to list or change keys
-currently in his keytab or to add new keys to the keytab.
-.sp
-.LP
-The operand \fIoperation\fR must be one of the following:
-.sp
-.ne 2
-.na
-\fB\fBlist\fR\fR
-.ad
-.RS 10n
-Lists the keys in a keytab, showing version number and principal name.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBchange\fR\fR
-.ad
-.RS 10n
-Changes all the keys in the keytab to new randomly-generated keys, updating the
-keys in the Kerberos server's database to match those by using the \fBkadmin\fR
-protocol. If a key's version number does not match the version number stored in
-the Kerberos server's database, the operation fails. The old keys are retained
-so that existing tickets continue to work. If the \fB-i\fR flag is specified,
-\fBk5srvutil\fR prompts for \fByes\fR or \fBno\fR before changing each key. If
-the \fB-k\fR option is used, the old and new keys are displayed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdelold\fR\fR
-.ad
-.RS 10n
-Deletes keys that are not the most recent version from the keytab. This
-operation should be used at some point after a change operation to remove old
-keys. If the \fB-i\fR flag is specified, \fBk5srvutil\fR asks the user whether
-the old keys associated with each principal should be removed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdelete\fR\fR
-.ad
-.RS 10n
-Deletes particular keys in the keytab, interactively prompting for each key.
-.RE
-
-.sp
-.LP
-In all cases, the default keytab file is \fB/etc/krb5/krb5.keytab\fR unless
-overridden by the \fB-f\fR option.
-.sp
-.LP
-\fBk5srvutil\fR uses the \fBkadmin\fR(1M) program to edit the keytab in place.
-However, old keys are retained, so they are available in case of failure.
-.SH OPTIONS
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-f\fR \fIfilename\fR\fR
-.ad
-.RS 15n
-Specify a keytab file other than the default file, \fB/etc/krb5/krb5.keytab\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-i\fR\fR
-.ad
-.RS 15n
-Prompts user before changing keys when using the \fBchange\fR or \fBdelold\fR
-operands.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-k\fR\fR
-.ad
-.RS 15n
-Displays old and new keys when using the \fBchange\fR operand.
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Committed
-.TE
-
-.SH SEE ALSO
-.LP
-\fBktutil\fR(1), \fBkadmin\fR(1M), \fBattributes\fR(5)
diff --git a/usr/src/man/man1m/kadb.1m b/usr/src/man/man1m/kadb.1m
deleted file mode 100644
index 25a2089f0e..0000000000
--- a/usr/src/man/man1m/kadb.1m
+++ /dev/null
@@ -1,124 +0,0 @@
-'\" te
-.\" Copyright (c) 2001 Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH KADB 1M "Dec 9, 2017"
-.SH NAME
-kadb \- a kernel debugger
-.SH SYNOPSIS
-.SS "SPARC"
-.LP
-.nf
-\fBok\fR boot \fIdevice_specifier\fR kadb [\fB-d\fR] [\fIboot-flags\fR]
-.fi
-
-.SS "x86"
-.LP
-.nf
-\fBselect\fR (b)oot or (i)nterpreter: b kadb [\fB-d\fR] [\fIboot-flags\fR]
-.fi
-
-.SH DESCRIPTION
-.LP
-\fBkadb\fR, an interactive kernel debugger, has been replaced by \fBkmdb\fR(1).
-For backwards compatibility, the methods used to load \fBkadb\fR will be
-interpreted as requests to load \fBkmdb\fR(1). Unlike with the compatibility
-link from \fBadb\fR(1) to \fBmdb\fR(1), \fBkmdb\fR(1) will always load in its
-native user interface mode, regardless of the name used to load it.
-.sp
-.LP
-\fBkmdb\fR(1) is based on \fBmdb\fR(1), and thus shares \fBmdb\fR's user
-interface style and feature set. The \fBmdb\fR(1) man page describes the
-features and operation of \fBmdb\fR. The \fBkmdb\fR(1) man page describes the
-differences between \fBmdb\fR and \fBkmdb\fR. This man page describes the major
-changes and incompatibilities between \fBkadb\fR and \fBkmdb\fR.
-.sp
-.LP
-Consult the \fIModular Debugger Guide\fR for a detailed description of
-both \fBmdb\fR and \fBkmdb\fR.
-.SS "Major changes"
-.LP
-This section briefly lists the major differences between \fBkadb\fR and
-\fBkmdb\fR. It is not intended to be exhaustive.
-.sp
-.ne 2
-.na
-\fBDebugger Loading and Unloading\fR
-.ad
-.sp .6
-.RS 4n
-\fBkmdb\fR(1) may be loaded at boot, as with \fBkadb\fR. It may also be loaded
-after boot, thus allowing for kernel debugging and execution control without
-requiring a system reboot. If \fBkmdb\fR(1) is loaded after boot, it may be
-unloaded.
-.RE
-
-.sp
-.ne 2
-.na
-\fBmdb Feature Set\fR
-.ad
-.sp .6
-.RS 4n
-The features introduced by \fBmdb\fR(1), including access to kernel type data,
-debugger commands (dcmds), debugger modules (dmods), and enhanced execution
-control facilities, are available under \fBkmdb\fR(1). Support for changing the
-representative CPU (:x) is available for both SPARC and x86. Furthermore, full
-execution-control facilities are available after the representative CPU has
-been changed.
-.RE
-
-.SS "Significant Incompatibilities"
-.LP
-This section lists the significant features that have changed incompatibly
-between \fBkadb\fR and \fBkmdb\fR(1). It is not intended to be exhaustive. All
-\fBkmdb\fR(1) commands referenced here are fully described in the \fBkmdb\fR(1)
-man page. A description as well as examples can be found in the \fIModular
-Debugger Guide\fR.
-.sp
-.ne 2
-.na
-\fBDeferred Breakpoints\fR
-.ad
-.sp .6
-.RS 4n
-The kadb-style "module#symbol:b" syntax is not supported under \fBkmdb\fR(1).
-Instead, use "::bp module`symbol".
-.RE
-
-.sp
-.ne 2
-.na
-\fBWatchpoints\fR
-.ad
-.sp .6
-.RS 4n
-The ::wp dcmd is the preferred way to set watchpoint with \fBkmdb\fR. Various
-options are available to control the type of watchpoint set, including \fB-p\fR
-for physical watchpoints (SPARC only), and \fB-i\fR for I/O port watchpoints
-(x86 only). $l is not supported, therefore, the watchpoint size must be
-specified for each watchpoint created.
-.RE
-
-.sp
-.ne 2
-.na
-\fBAccess to I/O Ports (x86 only)\fR
-.ad
-.sp .6
-.RS 4n
-The commands used to access I/O ports under \fBkadb\fR have been replaced with
-the ::in and ::out dcmds. These two dcmds allow both read and write of all I/O
-port sizes supported by \fBkadb\fR.
-.RE
-
-.SH SEE ALSO
-.LP
-\fBadb\fR(1), \fBmdb\fR(1), \fBkmdb\fR(1), \fBattributes\fR(5)
-.sp
-.LP
-\fIModular Debugger Guide\fR:
-.sp
-.LP
-https://illumos.org/books/mdb/
diff --git a/usr/src/man/man1m/kadmin.1m b/usr/src/man/man1m/kadmin.1m
deleted file mode 100644
index 0a9106ee2d..0000000000
--- a/usr/src/man/man1m/kadmin.1m
+++ /dev/null
@@ -1,1509 +0,0 @@
-'\" te
-.\" Copyright 1989 by the Massachusetts Institute of Technology. Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH KADMIN 1M "November 22, 2021"
-.SH NAME
-kadmin, kadmin.local \- Kerberos database administration program
-.SH SYNOPSIS
-.nf
-\fB/usr/sbin/kadmin\fR [\fB-r\fR \fIrealm\fR] [\fB-p\fR \fIprincipal\fR] [\fB-q\fR \fIquery\fR]
- [\fB-s\fR \fIadmin_server\fR [\fI:port\fR]] [ [\fB-c\fR \fIcredential_cache\fR]
- | [\fB-k\fR [\fB-t\fR \fIkeytab\fR]] | [\fB-w\fR \fIpassword\fR]] [\fB-x\fR \fIdb_args\fR]...
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/kadmin.local\fR [\fB-r\fR \fIrealm\fR] [\fB-p\fR \fIprincipal\fR]
- [\fB-q\fR \fIquery\fR] [\fB-d\fR \fIdbname\fR] [\fB-e\fR "\fIenc:salt...\fR"] [\fB-m\fR] [\fB-D\fR]
-.fi
-
-.SH DESCRIPTION
-\fBkadmin\fR and \fBkadmin.local\fR are interactive command-line interfaces to
-the Kerberos V5 administration system. They provide for the maintenance of
-Kerberos principals, policies, and service key tables (keytabs). \fBkadmin\fR
-and \fBkadmin.local\fR provide identical functionality; the difference is that
-\fBkadmin.local\fR can run only on the master KDC and does not use Kerberos
-authentication.
-.sp
-.LP
-Except as explicitly noted otherwise, this man page uses \fBkadmin\fR to refer
-to both versions.
-.sp
-.LP
-By default, both versions of \fBkadmin\fR attempt to determine your user name
-and perform operations on behalf of your "\fIusername\fR/\fIadmin\fR" instance.
-Operations performed are subject to privileges granted or denied to this user
-instance by the Kerberos ACL file (see \fBkadm5.acl\fR(4)). You may perform
-administration as another user instance by using the \fB-p\fR option.
-.sp
-.LP
-The remote version, \fBkadmin\fR, uses Kerberos authentication and an encrypted
-RPC to operate securely from anywhere on the network. It normally prompts for a
-password and authenticates the user to the Kerberos administration server,
-\fBkadmind\fR, whose service principal is \fBkadmin/\fR\fIfqdn\fR. Some options
-specific to the remote version permit the password prompt to be bypassed. The
-\fB-c\fR option searches the named credentials cache for a valid ticket for the
-\fBkadmin/\fR\fIfqdn\fR service and uses it to authenticate the user to the
-Kerberos admin server without a password. The \fB-k\fR option searches a keytab
-for a credential to authenticate to the \fBkadmin/\fR\fIfqdn\fR service, and
-again no password is collected. If \fBkadmin\fR has collected a password, it
-requests a \fBkadmin/\fR\fIfqdn\fR Kerberos service ticket from the KDC, and
-uses that service ticket to interact with \fBkadmind\fR.
-.sp
-.LP
-The local version, \fBkadmin.local\fR, must be run with an effective UID of
-root, and normally uses a key from the \fB/var/krb5/.k5.\fR\fIrealm\fR stash
-file (see \fBkdb5_util\fR(1M)) to decrypt information from the database rather
-than prompting for a password. The \fB-m\fR option will bypass the
-\fB\&.k5.\fR\fIrealm\fR stash file and prompt for the master password.
-.SH OPTIONS
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-c\fR \fIcredentials_cache\fR\fR
-.ad
-.sp .6
-.RS 4n
-Search \fIcredentials_cache\fR for a service ticket for the
-\fBkadmin/\fR\fIfqdn\fR service; it can be acquired with the \fBkinit\fR(1)
-program. If this option is not specified, \fBkadmin\fR requests a new service
-ticket from the KDC, and stores it in its own temporary credentials cache.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-d\fR \fIdbname\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify a non-standard database name. [Local only]
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-D\fR\fR
-.ad
-.sp .6
-.RS 4n
-Turn on debug mode. [Local only]
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-e\fR \fI"enc:salt ..."\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify a different encryption type and/or key salt. [Local only]
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-k\fR [\fB-t\fR \fIkeytab\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Use the default keytab (\fB-k\fR) or a specific keytab (\fB-t\fR \fIkeytab\fR)
-to decrypt the KDC response instead of prompting for a password. In this case,
-the default principal will be \fBhost\fR/\fBhostname\fR. This is primarily used
-for keytab maintenance.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-m\fR\fR
-.ad
-.sp .6
-.RS 4n
-Accept the database master password from the keyboard rather than using the
-\fB/var/krb5/.k5.\fIrealm\fR\fR stash file. [Local only]
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR \fIprincipal\fR\fR
-.ad
-.sp .6
-.RS 4n
-Authenticate \fIprincipal\fR to the \fBkadmin/\fR\fIfqdn\fR service. Otherwise,
-\fBkadmin\fR will append \fB/admin\fR to the primary principal name of the
-default credentials cache, the value of the \fBUSER\fR environment variable, or
-the username as obtained with \fBgetpwuid\fR, in that order of preference.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-q\fR \fIquery\fR\fR
-.ad
-.sp .6
-.RS 4n
-Pass \fIquery\fR directly to \fBkadmin\fR, which will perform \fIquery\fR and
-then exit. This can be useful for writing scripts.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-r\fR \fIrealm\fR\fR
-.ad
-.sp .6
-.RS 4n
-Use \fIrealm\fR as the default database realm.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR \fIadmin_server\fR[\fI:port\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Administer the specified \fIadmin\fR server at the specified port number
-(\fIport\fR). This can be useful in administering a realm not known to your
-client.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-w\fR \fIpassword\fR\fR
-.ad
-.sp .6
-.RS 4n
-Use \fIpassword\fR instead of prompting for one. Note that placing the password
-for a Kerberos principal with administration access into a shell script can be
-dangerous if unauthorized users gain read access to the script or can read
-arguments of this command through \fBps\fR(1).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-x\fR \fIdb_args\fR\fR
-.ad
-.sp .6
-.RS 4n
-Pass database-specific arguments to \fBkadmin\fR. Supported arguments are for
-LDAP and the \fBBerkeley-db2\fR plug-in. These arguments are:
-.sp
-.ne 2
-.na
-\fB\fBbinddn\fR=\fIbinddn\fR\fR
-.ad
-.sp .6
-.RS 4n
-LDAP simple bind DN for authorization on the directory server. Overrides the
-\fBldap_kadmind_dn\fR parameter setting in \fBkrb5.conf\fR(4).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBbindpwd\fR=\fIbindpwd\fR\fR
-.ad
-.sp .6
-.RS 4n
-Bind password.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdbname\fR=\fIname\fR\fR
-.ad
-.sp .6
-.RS 4n
-For the \fBBerkeley-db2\fR plug-in, specifies a name for the Kerberos database.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnconns\fR=\fInum\fR\fR
-.ad
-.sp .6
-.RS 4n
-Maximum number of server connections.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBport\fR=\fInum\fR\fR
-.ad
-.sp .6
-.RS 4n
-Directory server connection port.
-.RE
-
-.RE
-
-.SH COMMANDS
-.ne 2
-.na
-\fB\fBlist_requests\fR\fR
-.ad
-.sp .6
-.RS 4n
-Lists all the commands available for \fBkadmin\fR. Aliased by \fBlr\fR and
-\fB?\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBget_privs\fR\fR
-.ad
-.sp .6
-.RS 4n
-Lists the current Kerberos administration privileges (ACLs) for the principal
-that is currently running \fBkadmin\fR. The privileges are based on the
-\fB/etc/krb5/kadm5.acl\fR file on the master KDC. Aliased by \fBgetprivs\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\fR\fBadd_principal\fR \fB[\fIoptions\fR]\fR \fB\fInewprinc\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Creates a new principal, \fInewprinc\fR, prompting twice for a password. If the
-\fB-policy\fR option is not specified and a policy named \fBdefault\fR exists,
-then the \fBdefault\fR policy is assigned to the principal; note that the
-assignment of the \fBdefault\fR policy occurs automatically only when a
-principal is first created, so the \fBdefault\fR policy must already exist for
-the assignment to occur. The automatic assignment of the \fBdefault\fR policy
-can be suppressed with the \fB-clearpolicy\fR option. This command requires the
-\fBadd\fR privilege. Aliased by \fBaddprinc\fR and \fBank\fR. The options are:
-.sp
-.ne 2
-.na
-\fB\fB-expire\fR \fIexpdate\fR\fR
-.ad
-.sp .6
-.RS 4n
-Expiration date of the principal. See the \fBTime\fR \fBFormats\fR section for
-the valid absolute time formats that you can specify for \fIexpdate\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-pwexpire\fR \fIpwexpdate\fR\fR
-.ad
-.sp .6
-.RS 4n
-Password expiration date. See the \fBTime\fR \fBFormats\fR section for the
-valid absolute time formats that you can specify for \fIpwexpdate\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-maxlife\fR \fImaxlife\fR\fR
-.ad
-.sp .6
-.RS 4n
-Maximum ticket life for the principal. See the \fBTime\fR \fBFormats\fR section
-for the valid time duration formats that you can specify for \fImaxlife\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-maxrenewlife\fR \fImaxrenewlife\fR\fR
-.ad
-.sp .6
-.RS 4n
-Maximum renewable life of tickets for the principal. See the \fBTime\fR
-\fBFormats\fR section for the valid time duration formats that you can specify
-for \fImaxrenewlife\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-kvno\fR \fIkvno\fR\fR
-.ad
-.sp .6
-.RS 4n
-Explicitly set the key version number.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-policy\fR \fIpolicy\fR\fR
-.ad
-.sp .6
-.RS 4n
-Policy used by the principal. If both the \fB-policy\fR and \fB-clearpolicy\fR
-options are not specified, the \fBdefault\fR policy is used if it exists;
-otherwise, the principal will have no policy. Also note that the password and
-principal name must be different when you add a new principal with a specific
-policy or the \fBdefault\fR policy.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-clearpolicy\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fB-clearpolicy\fR prevents the \fBdefault\fR policy from being assigned when
-\fB-policy\fR is not specified. This option has no effect if the \fBdefault\fR
-policy does not exist.
-.RE
-
-.sp
-.ne 2
-.na
-\fB{\fB-\fR|\fB+\fR}\fBallow_postdated\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fB-allow_postdated\fR prohibits the principal from obtaining postdated
-tickets. (Sets the \fBKRB5_KDB_DISALLOW_POSTDATED\fR flag.)
-\fB+allow_postdated\fR clears this flag.
-.RE
-
-.sp
-.ne 2
-.na
-\fB{\fB-\fR|\fB+\fR}\fBallow_forwardable\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fB-allow_forwardable\fR prohibits the principal from obtaining forwardable
-tickets. (Sets the \fBKRB5_KDB_DISALLOW_FORWARDABLE\fR flag.)
-\fB+allow_forwardable\fR clears this flag.
-.RE
-
-.sp
-.ne 2
-.na
-\fB{\fB-\fR|\fB+\fR}\fBallow_renewable\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fB-allow_renewable\fR prohibits the principal from obtaining renewable
-tickets. (Sets the \fBKRB5_KDB_DISALLOW_RENEWABLE\fR flag.)
-\fB+allow_renewable\fR clears this flag.
-.RE
-
-.sp
-.ne 2
-.na
-\fB{\fB-\fR|\fB+\fR}\fBallow_proxiable\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fB-allow_proxiable\fR prohibits the principal from obtaining proxiable
-tickets. (Sets the \fBKRB5_KDB_DISALLOW_PROXIABLE\fR flag.)
-\fB+allow_proxiable\fR clears this flag.
-.RE
-
-.sp
-.ne 2
-.na
-\fB{\fB-\fR|\fB+\fR}\fBallow_dup_skey\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fB-allow_dup_skey\fR disables user-to-user authentication for the principal by
-prohibiting this principal from obtaining a session key for another user. (Sets
-the \fBKRB5_KDB_DISALLOW_DUP_SKEY\fR flag.) \fB+allow_dup_skey\fR clears this
-flag.
-.RE
-
-.sp
-.ne 2
-.na
-\fB{\fB-\fR|\fB+\fR}\fBrequires_preauth\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fB+requires_preauth\fR requires the principal to preauthenticate before being
-allowed to \fBkinit\fR. (Sets the \fBKRB5_KDB_REQUIRES_PRE_AUTH\fR flag.)
-\fB-requires_preauth\fR clears this flag.
-.RE
-
-.sp
-.ne 2
-.na
-\fB{\fB-\fR|\fB+\fR}\fBrequires_hwauth\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fB+requires_hwauth\fR requires the principal to preauthenticate using a
-hardware device before being allowed to kinit. (Sets the
-\fBKRB5_KDB_REQUIRES_HW_AUTH\fR flag.) \fB-requires_hwauth\fR clears this flag.
-.RE
-
-.sp
-.ne 2
-.na
-\fB{\fB-\fR|\fB+\fR}\fBallow_svr\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fB-allow_svr\fR prohibits the issuance of service tickets for the principal.
-(Sets the \fBKRB5_KDB_DISALLOW_SVR\fR flag.) \fB+allow_svr\fR clears this flag.
-.RE
-
-.sp
-.ne 2
-.na
-\fB{\fB-\fR|\fB+\fR}\fBallow_tgs_req\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fB-allow_tgs_req\fR specifies that a Ticket-Granting Service (TGS) request for
-a service ticket for the principal is not permitted. This option is useless for
-most things. \fB+allow_tgs_req\fR clears this flag. The default is
-\fB+allow_tgs_req\fR. In effect, \fB-allow_tgs_req\fR sets the
-\fBKRB5_KDB_DISALLOW_TGT_BASED\fR flag on the principal in the database.
-.RE
-
-.sp
-.ne 2
-.na
-\fB{\fB-\fR|\fB+\fR}\fBallow_tix\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fB-allow_tix\fR forbids the issuance of any tickets for the principal.
-\fB+allow_tix\fR clears this flag. The default is \fB+allow_tix\fR. In effect,
-\fB-allow_tix\fR sets the \fBKRB5_KDB_DISALLOW_ALL_TIX\fR flag on the principal
-in the database.
-.RE
-
-.sp
-.ne 2
-.na
-\fB{\fB-\fR|\fB+\fR}\fBneedchange\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fB+needchange\fR sets a flag in attributes field to force a password change;
-\fB-needchange\fR clears it. The default is \fB-needchange\fR\&. In effect,
-\fB+needchange\fR sets the \fBKRB5_KDB_REQUIRES_PWCHANGE\fR flag on the
-principal in the database.
-.RE
-
-.sp
-.ne 2
-.na
-\fB{\fB-\fR|\fB+\fR}\fBpassword_changing_service\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fB+password_changing_service\fR sets a flag in the attributes field marking
-this as a password change service principal (useless for most things).
-\fB-password_changing_service\fR clears the flag. This flag intentionally has a
-long name. The default is \fB-password_changing_service\fR\&. In effect,
-\fB+password_changing_service\fR sets the \fBKRB5_KDB_PWCHANGE_SERVICE\fR flag
-on the principal in the database.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-randkey\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets the key of the principal to a random value.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\fR\fB-pw\fR \fB\fIpassword\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets the key of the principal to the specified string and does not prompt for a
-password. Note that using this option in a shell script can be dangerous if
-unauthorized users gain read access to the script.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-e\fR "enc:salt ..."\fR
-.ad
-.sp .6
-.RS 4n
-Override the list of enctype:salttype pairs given in \fBkdc.conf\fR(4) for
-setting the key of the principal. The quotes are necessary if there are
-multiple enctype:salttype pairs. One key for each similar enctype and same
-salttype will be created and the first one listed will be used. For example, in
-a list of two similar enctypes with the same salt, "des-cbc-crc:normal
-des-cbc-md5:normal", one key will be created and it will be of type
-des-cbc-crc:normal.
-.RE
-
-.sp
-.ne 2
-.na
-\fBExample:\fR
-.ad
-.sp .6
-.RS 4n
-.sp
-.in +2
-.nf
-kadmin: \fBaddprinc tlyu/admin\fR
-WARNING: no policy specified for "tlyu/admin@EXAMPLE.COM";
-defaulting to no policy.
-Enter password for principal tlyu/admin@EXAMPLE.COM:
-Re-enter password for principal tlyu/admin@EXAMPLE.COM:
-Principal "tlyu/admin@EXAMPLE.COM" created.
-kadmin:
-.fi
-.in -2
-.sp
-
-.RE
-
-.sp
-.ne 2
-.na
-\fBErrors:\fR
-.ad
-.sp .6
-.RS 4n
-\fBKADM5_AUTH_ADD\fR (requires \fBadd\fR privilege)
-.sp
-\fBKADM5_BAD_MASK\fR (should not happen)
-.sp
-\fBKADM5_DUP\fR (principal exists already)
-.sp
-\fBKADM5_UNK_POLICY\fR (policy does not exist)
-.sp
-\fBKADM5_PASS_Q_*\fR (password quality violations)
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdelete_principal\fR [\fB-force\fR] \fIprincipal\fR\fR
-.ad
-.sp .6
-.RS 4n
-Deletes the specified principal from the database. This command prompts for
-deletion, unless the \fB-force\fR option is given. This command requires the
-\fBdelete\fR privilege. Aliased by \fBdelprinc\fR.
-.sp
-.ne 2
-.na
-\fBExample:\fR
-.ad
-.sp .6
-.RS 4n
-.sp
-.in +2
-.nf
-kadmin: \fBdelprinc mwm_user\fR
-Are you sure you want to delete the principal
-"mwm_user@EXAMPLE.COM"? (yes/no): \fByes\fR
-Principal "mwm_user@EXAMPLE.COM" deleted.
-Make sure that you have removed this principal from
-all kadmind ACLs before reusing.
-kadmin:
-.fi
-.in -2
-.sp
-
-.RE
-
-.sp
-.ne 2
-.na
-\fBErrors:\fR
-.ad
-.sp .6
-.RS 4n
-\fBKADM5_AUTH_DELETE\fR (requires \fBdelete\fR privilege)
-.sp
-\fBKADM5_UNK_PRINC\fR (principal does not exist)
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmodify_principal\fR [\fIoptions\fR] \fIprincipal\fR\fR
-.ad
-.sp .6
-.RS 4n
-Modifies the specified principal, changing the fields as specified. The options
-are as above for \fBadd_principal\fR, except that password changing is
-forbidden by this command. In addition, the option \fB-clearpolicy\fR will
-clear the current policy of a principal. This command requires the \fBmodify\fR
-privilege. Aliased by \fBmodprinc\fR.
-.sp
-.ne 2
-.na
-\fBErrors:\fR
-.ad
-.sp .6
-.RS 4n
-\fBKADM5_AUTH_MODIFY\fR (requires \fBmodify\fR privilege)
-.sp
-\fBKADM5_UNK_PRINC\fR (principal does not exist)
-.sp
-\fBKADM5_UNK_POLICY\fR (policy does not exist)
-.sp
-\fBKADM5_BAD_MASK\fR (should not happen)
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBchange_password\fR [\fIoptions\fR] \fIprincipal\fR\fR
-.ad
-.sp .6
-.RS 4n
-Changes the password of \fIprincipal\fR. Prompts for a new password if neither
-\fB-randkey\fR or \fB-pw\fR is specified. Requires the \fBchangepw\fR
-privilege, or that the principal that is running the program to be the same as
-the one changed. Aliased by \fBcpw\fR. The following options are available:
-.sp
-.ne 2
-.na
-\fB\fB-randkey\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets the key of the principal to a random value.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-pw\fR \fIpassword\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets the password to the specified string. Not recommended.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-e\fR "enc:salt ..."\fR
-.ad
-.sp .6
-.RS 4n
-Override the list of enctype:salttype pairs given in \fBkdc.conf\fR(4) for
-setting the key of the principal. The quotes are necessary if there are
-multiple enctype:salttype pairs. For each key, the first matching similar
-enctype and same salttype in the list will be used to set the new key(s).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-keepold\fR\fR
-.ad
-.sp .6
-.RS 4n
-Keeps the previous kvno's keys around. There is no easy way to delete the old
-keys, and this flag is usually not necessary except perhaps for TGS keys as it
-will allow existing valid TGTs to continue to work.
-.RE
-
-.sp
-.ne 2
-.na
-\fBExample:\fR
-.ad
-.sp .6
-.RS 4n
-.sp
-.in +2
-.nf
-kadmin: \fBcpw systest\fR
-Enter password for principal systest@EXAMPLE.COM:
-Re-enter password for principal systest@EXAMPLE.COM:
-Password for systest@EXAMPLE.COM changed.
-kadmin:
-.fi
-.in -2
-.sp
-
-.RE
-
-.sp
-.ne 2
-.na
-\fBErrors:\fR
-.ad
-.sp .6
-.RS 4n
-\fBKADM5_AUTH_MODIFY\fR (requires the \fBmodify\fR privilege)
-.sp
-\fBKADM5_UNK_PRINC\fR (principal does not exist)
-.sp
-\fBKADM5_PASS_Q_*\fR (password policy violation errors)
-.sp
-\fBKADM5_PASS_REUSE\fR (password is in principal's password history)
-.sp
-\fBKADM5_PASS_TOOSOON\fR (current password minimum life not expired)
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBget_principal\fR [\fB-terse\fR] \fIprincipal\fR\fR
-.ad
-.sp .6
-.RS 4n
-Gets the attributes of \fIprincipal\fR. Requires the \fBinquire\fR privilege,
-or that the principal that is running the program to be the same as the one
-being listed. With the \fB-terse\fR option, outputs fields as quoted
-tab-separated strings. Aliased by \fBgetprinc\fR.
-.sp
-.ne 2
-.na
-\fBExamples:\fR
-.ad
-.sp .6
-.RS 4n
-.sp
-.in +2
-.nf
-kadmin: \fBgetprinc tlyu/admin\fR
-Principal: tlyu/admin@EXAMPLE.COM
-Expiration date: [never]
-Last password change: Thu Jan 03 12:17:46 CET 2008
-Password expiration date: [none]
-Maximum ticket life: 24855 days 03:14:07
-Maximum renewable life: 24855 days 03:14:07
-Last modified: Thu Jan 03 12:17:46 CET 2008 (root/admin@EXAMPLE.COM)
-Last successful authentication: [never]
-Last failed authentication: [never]
-Failed password attempts: 0
-Number of keys: 5
-Key: vno 2, AES-256 CTS mode with 96-bit SHA-1 HMAC, no salt
-Key: vno 2, AES-128 CTS mode with 96-bit SHA-1 HMAC, no salt
-Key: vno 2, Triple DES cbc mode with HMAC/sha1, no salt
-Key: vno 2, ArcFour with HMAC/md5, no salt
-Key: vno 2, DES cbc mode with RSA-MD5, no salt
-Attributes: REQUIRES_PRE_AUTH
-Policy: [none]
-kadmin: \fBgetprinc -terse tlyu/admin\fR
-"tlyu/admin@EXAMPLE.COM" 0 1199359066 0 2147483647
-"root/admin@EXAMPLE.COM" 1199359066 128 2 0 "[none]" 21474836
-47 0 0 0 5 1 2 18 0 1 2
-17 0 1 2 16 0 1 2 23 0 12
- 3 0
-kadmin:
-.fi
-.in -2
-.sp
-
-.RE
-
-.sp
-.ne 2
-.na
-\fBErrors:\fR
-.ad
-.sp .6
-.RS 4n
-\fBKADM5_AUTH_GET\fR (requires the get [inquire] privilege)
-.sp
-\fBKADM5_UNK_PRINC\fR (principal does not exist)
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBlist_principals\fR [\fIexpression\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Retrieves all or some principal names. \fIexpression\fR is a shell-style glob
-expression that can contain the wild-card characters ?, *, and []'s. All
-principal names matching the expression are printed. If no expression is
-provided, all principal names are printed. If the expression does not contain
-an "@" character, an "@" character followed by the local realm is appended to
-the expression. Requires the \fBlist\fR privilege. Aliased by \fBlistprincs\fR,
-\fBget_principals\fR, and \fBgetprincs\fR.
-.sp
-.ne 2
-.na
-\fBExamples:\fR
-.ad
-.sp .6
-.RS 4n
-.sp
-.in +2
-.nf
-kadmin: \fBlistprincs test*\fR
-test3@EXAMPLE.COM
-test2@EXAMPLE.COM
-test1@EXAMPLE.COM
-testuser@EXAMPLE.COM
-kadmin:
-.fi
-.in -2
-.sp
-
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBadd_policy\fR [\fIoptions\fR] \fIpolicy\fR\fR
-.ad
-.sp .6
-.RS 4n
-Adds the named policy to the policy database. Requires the \fBadd\fR privilege.
-Aliased by \fBaddpol\fR. The following options are available:
-.sp
-.ne 2
-.na
-\fB\fB-maxlife\fR \fImaxlife\fR\fR
-.ad
-.sp .6
-.RS 4n
-sets the maximum lifetime of a password. See the \fBTime\fR \fBFormats\fR
-section for the valid time duration formats that you can specify for
-\fImaxlife\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-minlife\fR \fIminlife\fR\fR
-.ad
-.sp .6
-.RS 4n
-sets the minimum lifetime of a password. See the \fBTime\fR \fBFormats\fR
-section for the valid time duration formats that you can specify for
-\fIminlife\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-minlength\fR \fIlength\fR\fR
-.ad
-.sp .6
-.RS 4n
-sets the minimum length of a password.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-minclasses\fR \fInumber\fR\fR
-.ad
-.sp .6
-.RS 4n
-sets the minimum number of character classes allowed in a password. The valid
-values are:
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB1\fR\fR
-.ad
-.sp .6
-.RS 4n
-only letters (himom)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB2\fR\fR
-.ad
-.sp .6
-.RS 4n
-both letters and numbers (hi2mom)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB3\fR\fR
-.ad
-.sp .6
-.RS 4n
-letters, numbers, and punctuation (hi2mom!)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-history\fR \fInumber\fR\fR
-.ad
-.sp .6
-.RS 4n
-sets the number of past keys kept for a principal.
-.RE
-
-.sp
-.ne 2
-.na
-\fBErrors:\fR
-.ad
-.sp .6
-.RS 4n
-\fBKADM5_AUTH_ADD\fR (requires the \fBadd\fR privilege)
-.sp
-\fBKADM5_DUP\fR (policy already exists)
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdelete_policy\fR \fB[-force]\fR \fIpolicy\fR\fR
-.ad
-.sp .6
-.RS 4n
-Deletes the named policy. Unless the \fB-force\fR option is specified, prompts
-for confirmation before deletion. The command will fail if the policy is in use
-by any principals. Requires the \fBdelete\fR privilege. Aliased by
-\fBdelpol\fR.
-.sp
-.ne 2
-.na
-\fBExample:\fR
-.ad
-.sp .6
-.RS 4n
-.sp
-.in +2
-.nf
-kadmin: \fBdel_policy guests\fR
-Are you sure you want to delete the
-policy "guests"? (yes/no): \fByes\fR
-Policy "guests" deleted.
-kadmin:
-.fi
-.in -2
-.sp
-
-.RE
-
-.sp
-.ne 2
-.na
-\fBErrors:\fR
-.ad
-.sp .6
-.RS 4n
-\fBKADM5_AUTH_DELETE\fR (requires the delete privilege)
-.sp
-\fBKADM5_UNK_POLICY\fR (policy does not exist)
-.sp
-\fBKADM5_POLICY_REF\fR (reference count on policy is not zero)
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\fR\fBmodify_policy\fR \fB[\fIoptions\fR]\fR \fB\fIpolicy\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Modifies the named policy. Options are as above for \fBadd_policy\fR. Requires
-the \fBmodify\fR privilege. Aliased by \fBmodpol\fR.
-.sp
-.ne 2
-.na
-\fBErrors:\fR
-.ad
-.sp .6
-.RS 4n
-\fBKADM5_AUTH_MODIFY\fR (requires the \fBmodify\fR privilege)
-.sp
-\fBKADM5_UNK_POLICY\fR (policy does not exist)
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBget_policy\fR [\fB-terse\fR] \fIpolicy\fR\fR
-.ad
-.sp .6
-.RS 4n
-Displays the values of the named policy. Requires the \fBinquire\fR privilege.
-With the \fB-terse\fR flag, outputs the fields as quoted strings separated by
-tabs. Aliased by \fBgetpol\fR.
-.sp
-.ne 2
-.na
-\fBExamples:\fR
-.ad
-.sp .6
-.RS 4n
-.sp
-.in +2
-.nf
-kadmin: \fBget_policy admin\fR
-Policy: admin
-Maximum password life: 180 days 00:00:00
-Minimum password life: 00:00:00
-Minimum password length: 6
-Minimum number of password character classes: 2
-Number of old keys kept: 5
-Reference count: 17
-kadmin: \fBget_policy -terse\fR
-admin admin 15552000 0 6 2 5 17
-kadmin:
-.fi
-.in -2
-.sp
-
-.RE
-
-.sp
-.ne 2
-.na
-\fBErrors:\fR
-.ad
-.sp .6
-.RS 4n
-\fBKADM5_AUTH_GET\fR (requires the \fBget\fR privilege)
-.sp
-\fBKADM5_UNK_POLICY\fR (policy does not exist)
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBlist_policies\fR [\fIexpression\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Retrieves all or some policy names. \fIexpression\fR is a shell-style glob
-expression that can contain the wild-card characters ?, *, and []'s. All policy
-names matching the expression are printed. If no expression is provided, all
-existing policy names are printed. Requires the \fBlist\fR privilege. Aliased
-by \fBlistpols\fR, \fBget_policies\fR, and \fBgetpols\fR.
-.sp
-.ne 2
-.na
-\fBExamples:\fR
-.ad
-.sp .6
-.RS 4n
-.sp
-.in +2
-.nf
-kadmin: \fBlistpols\fR
-test-pol dict-only once-a-min test-pol-nopw
-kadmin: \fBlistpols t*\fR
-test-pol test-pol-nopw kadmin:
-.fi
-.in -2
-.sp
-
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBktadd\fR [\fB-k\fR \fIkeytab\fR] [\fB-q\fR] [\fB-e\fR
-\fB\fIenctype\fR:salt\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Adds a principal or all principals matching \fIprinc-exp\fR to a keytab,
-randomizing each principal's key in the process.
-.sp
-\fBktadd\fR requires the \fBinquire\fR and \fBchangepw\fR privileges. An entry
-for each of the principal's unique encryption types is added, ignoring multiple
-keys with the same encryption type but different \fBsalt\fR types. If the
-\fB-k\fR argument is not specified, the default keytab file,
-\fB/etc/krb5/krb5.keytab\fR, is used.
-.sp
-The "\fB-e\fR \fB\fIenctype\fR:salt\fR" option overrides the list of
-\fIenctypes\fR given in \fBkrb5.conf\fR(4), in the \fBpermitted_enctypes\fR
-parameter. If "\fB-e\fR \fB\fIenctype\fR:salt\fR" is not used and
-\fBpermitted_enctypes\fR is not defined in \fBkrb5.conf\fR(4), a key for each
-\fIenctype\fR supported by the system on which \fBkadmin\fR is run will be
-created and added to the \fBkeytab\fR. Restricting the \fIenctypes\fR of keys
-in the \fBkeytab\fR is useful when the system for which keys are being created
-does not support the same set of \fIenctypes\fR as the KDC. Note that
-\fBktadd\fR modifies the \fIenctype\fR of the keys in the principal database as
-well.
-.sp
-If the \fB-q\fR option is specified, less status information is displayed.
-Aliased by \fBxst\fR. The \fB-glob\fR option requires the \fBlist\fR privilege.
-Also, note that if you use \fB-glob\fR to create a keytab, you need to remove
-\fB/etc/krb5/kadm5.keytab\fR and create it again if you want to use \fB-p\fR
-\fB*/admin\fR with \fBkadmin\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBprinc-exp\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fIprinc-exp\fR follows the same rules described for the \fBlist_principals\fR
-command.
-.sp
-.ne 2
-.na
-\fBExample:\fR
-.ad
-.sp .6
-.RS 4n
-.sp
-.in +2
-.nf
-kadmin: \fBktadd -k /tmp/new-keytab nfs/chicago\fR
-Entry for principal nfs/chicago with kvno 2,
-encryption type DES-CBC-CRC added to keytab
-WRFILE:/tmp/new-keytab.
-kadmin:
-.fi
-.in -2
-.sp
-
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBktremove\fR [\fB-k\fR \fIkeytab\fR] [\fB-q\fR] \fIprincipal\fR
-[\fIkvno\fR | \fBall\fR | \fBold\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Removes entries for the specified principal from a keytab. Requires no
-privileges, since this does not require database access. If \fBall\fR is
-specified, all entries for that principal are removed; if \fBold\fR is
-specified, all entries for that principal except those with the highest kvno
-are removed. Otherwise, the value specified is parsed as an integer, and all
-entries whose \fBkvno\fR match that integer are removed. If the \fB-k\fR
-argument is not specified, the default keytab file,
-\fB/etc/krb5/krb5.keytab\fR, is used. If the \fB-q\fR option is specified, less
-status information is displayed. Aliased by \fBktrem\fR.
-.sp
-.ne 2
-.na
-\fBExample:\fR
-.ad
-.sp .6
-.RS 4n
-.sp
-.in +2
-.nf
-kadmin: \fBktremove -k /tmp/new-keytab nfs/chicago\fR
-Entry for principal nfs/chicago with kvno 2
-removed from keytab
-WRFILE:/tmp/new-keytab.
-kadmin:
-.fi
-.in -2
-.sp
-
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBquit\fR\fR
-.ad
-.sp .6
-.RS 4n
-Quits \fBkadmin\fR. Aliased by \fBexit\fR and \fBq\fR.
-.RE
-
-.SS "Time Formats"
-Various commands in \fBkadmin\fR can take a variety of time formats, specifying
-time durations or absolute times. The \fBkadmin\fR option variables
-\fImaxrenewlife\fR, \fImaxlife\fR, and \fIminlife\fR are time durations,
-whereas \fIexpdate\fR and \fIpwexpdate\fR are absolute times.
-.sp
-.ne 2
-.na
-\fBExamples:\fR
-.ad
-.sp .6
-.RS 4n
-.sp
-.in +2
-.nf
-kadmin: \fBmodprinc -expire "12/31 7pm" jdb\fR
-kadmin: \fBmodprinc -maxrenewlife "2 fortnight" jdb\fR
-kadmin: \fBmodprinc -pwexpire "this sunday" jdb\fR
-kadmin: \fBmodprinc -expire never jdb\fR
-kadmin: \fBmodprinc -maxlife "7:00:00pm tomorrow" jdb\fR
-.fi
-.in -2
-.sp
-
-.RE
-
-.sp
-.LP
-Note that times which do not have the "ago" specifier default to being absolute
-times, unless they appear in a field where a duration is expected. In that
-case, the time specifier will be interpreted as relative. Specifying "ago" in a
-duration can result in unexpected behavior.
-.sp
-.LP
-The following time formats and units can be combined to specify a time. The
-time and date format examples are based on the date and time of July 2, 1999,
-1:35:30 p.m.
-.sp
-
-.sp
-.TS
-box;
-l l
-l l .
-\fBTime Format\fR \fBExamples\fR
-\fIhh\fR[:\fImm\fR][:\fIss\fR][am/pm/a.m./p.m.] 1p.m., 1:35, 1:35:30pm
-.TE
-
-.sp
-
-.sp
-.TS
-l l
-l l .
-\fBVariable\fR \fBDescription\fR
-\fIhh\fR T{
-hour (12-hour clock, leading zero permitted but not required)
-T}
-\fImm\fR minutes
-\fIss\fR seconds
-.TE
-
-.sp
-
-.sp
-.TS
-box;
-l l
-l l .
-\fBDate Format\fR \fBExamples\fR
-\fImm\fR/\fBdd\fR[/\fIyy\fR] 07/02, 07/02/99
-\fIyyyy\fR-\fImm\fR-\fBdd\fR 1999-07-02
-\fBdd\fR-\fImonth\fR-\fIyyyy\fR 02-July-1999
-\fImonth\fR [,\fIyyyy\fR] Jul 02, July 02,1999
-\fBdd\fR \fImonth\fR[ \fIyyyy\fR] 02 JULY, 02 july 1999
-.TE
-
-.sp
-
-.sp
-.TS
-l l
-l l .
-\fBVariable\fR \fBDescription\fR
-\fBdd\fR day
-\fImm\fR month
-\fIyy\fR T{
-year within century (00-38 is 2000 to 2038; 70-99 is 1970 to 1999)
-T}
-\fIyyyy\fR year including century
-\fImonth\fR locale's full or abbreviated month name
-.TE
-
-.sp
-
-.sp
-.TS
-box;
-l l
-l l .
-\fBTime Units\fR \fBExamples\fR
-[+|- \fI#\fR] year "-2 year"
-[+|- \fI#\fR] month "2 months"
-[+|- \fI#\fR] fortnight
-[+|- \fI#\fR] week
-[+|- \fI#\fR] day
-[+|- \fI#\fR] hour
-[+|- \fI#\fR] minute
-[+|- \fI#\fR] min
-[+|- \fI#\fR] second
-[+|- \fI#\fR] sec
-tomorrow
-yesterday
-today
-now
-this "this year"
-last "last saturday"
-next "next month"
-sunday
-monday
-tuesday
-wednesday
-thursday
-friday
-saturday
-never
-.TE
-
-.sp
-.LP
-You can also use the following time modifiers: \fBfirst\fR, \fBsecond\fR,
-\fBthird\fR, \fBfourth\fR, \fBfifth\fR, \fBsixth\fR, \fBseventh\fR,
-\fBeighth\fR, \fBninth\fR, \fBtenth\fR, \fBeleventh\fR, \fBtwelfth\fR, and
-\fBago\fR.
-.SH ENVIRONMENT VARIABLES
-See \fBenviron\fR(5) for descriptions of the following environment variables
-that affect the execution of \fBkadmin\fR:
-.sp
-.ne 2
-.na
-\fB\fBPAGER\fR\fR
-.ad
-.sp .6
-.RS 4n
-The command to use as a filter for paging output. This can also be used to
-specify options. The default is \fBmore\fR(1).
-.RE
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/var/krb5/principal\fR\fR
-.ad
-.sp .6
-.RS 4n
-Kerberos principal database.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/krb5/principal.ulog\fR\fR
-.ad
-.sp .6
-.RS 4n
-The update log file for incremental propagation.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/krb5/principal.kadm5\fR\fR
-.ad
-.sp .6
-.RS 4n
-Kerberos administrative database. Contains policy information.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/krb5/principal.kadm5.lock\fR\fR
-.ad
-.sp .6
-.RS 4n
-Lock file for the Kerberos administrative database. This file works backwards
-from most other lock files (that is, \fBkadmin\fR will exit with an error if
-this file does \fInot\fR exist).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/krb5/kadm5.dict\fR\fR
-.ad
-.sp .6
-.RS 4n
-Dictionary of strings explicitly disallowed as passwords.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/krb5/kadm5.acl\fR\fR
-.ad
-.sp .6
-.RS 4n
-List of principals and their \fBkadmin\fR administrative privileges.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/krb5/kadm5.keytab\fR\fR
-.ad
-.sp .6
-.RS 4n
-Keytab for \fBkadmind\fR principals: \fBkadmin\fR/\fIfqdn\fR,
-\fBchangepw\fR/\fIfqdn\fR, and \fBkadmin\fR/\fBchangepw\fR.
-.RE
-
-.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Committed
-.TE
-
-.SH SEE ALSO
-\fBkpasswd\fR(1), \fBmore\fR(1), \fBkadmind\fR(1M),
-\fBkdb5_util\fR(1M), \fBkdb5_ldap_util\fR(1M), \fBkproplog\fR(1M),
-\fBkadm5.acl\fR(4), \fBkdc.conf\fR(4), \fBkrb5.conf\fR(4), \fBattributes\fR(5),
-\fBenviron\fR(5), \fBkerberos\fR(5), \fBkrb5envvar\fR(5)
-.SH HISTORY
-The \fBkadmin\fR program was originally written by Tom Yu at MIT, as an
-interface to the OpenVision Kerberos administration program.
-.SH DIAGNOSTICS
-The \fBkadmin\fR command is currently incompatible with the MIT \fBkadmind\fR
-daemon interface, so you cannot use this command to administer an MIT-based
-Kerberos database. However, clients running the Solaris implementation of
-Kerberos can still use an MIT-based KDC.
diff --git a/usr/src/man/man1m/kadmind.1m b/usr/src/man/man1m/kadmind.1m
deleted file mode 100644
index 99ef98295b..0000000000
--- a/usr/src/man/man1m/kadmind.1m
+++ /dev/null
@@ -1,400 +0,0 @@
-'\" te
-.\" Copyright 1987, 1989 by the Student Information Processing Board of the Massachusetts Institute of Technology. For copying and distribution information, please see the file kerberosv5/mit-sipb-copyright.h.
-.\" Portions Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH KADMIND 1M "Oct 29, 2015"
-.SH NAME
-kadmind \- Kerberos administration daemon
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/krb5/kadmind\fR [\fB-d\fR] [\fB-m\fR] [\fB-p\fR \fIport-number\fR] [\fB-r\fR \fIrealm\fR]
- \fB-x\fR \fIdb_args\fR]...
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBkadmind\fR runs on the master key distribution center (\fBKDC\fR), which
-stores the principal and policy databases. \fBkadmind\fR accepts remote
-requests to administer the information in these databases. Remote requests are
-sent, for example, by \fBkpasswd\fR(1) and \fBkadmin\fR(1M) commands, both of
-which are clients of \fBkadmind\fR. When you install a \fBKDC\fR,
-\fBkadmind\fR is set up in the \fBinit\fR scripts to start automatically
-when the \fBKDC\fR is rebooted.
-.sp
-.LP
-\fBkadmind\fR requires a number of configuration files to be set up for it to
-work:
-.sp
-.ne 2
-.na
-\fB\fB/etc/krb5/kdc.conf\fR\fR
-.ad
-.sp .6
-.RS 4n
-The \fBKDC\fR configuration file contains configuration information for the
-\fBKDC\fR and the Kerberos administration system. \fBkadmind\fR understands a
-number of configuration variables (called relations) in this file, some of
-which are mandatory and some of which are optional. In particular,
-\fBkadmind\fR uses the \fBacl_file\fR, \fBdict_file\fR, \fBadmin_keytab\fR, and
-\fBkadmind_port\fR relations in the [\fIrealms\fR] section. Refer to the
-\fBkdc.conf\fR(4) man page for information regarding the format of the
-\fBKDC\fR configuration file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/krb5/kadm5.keytab\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBkadmind\fR requires a \fBkeytab\fR (key table) containing correct entries
-for the \fBkadmin\fR/\fIfqdn\fR, \fBkadmin\fR/\fBchangepw\fR and
-\fBkadmin\fR/\fBchangepw\fR principals for every realm that \fBkadmind\fR
-answers requests. The \fBkeytab\fR can be created with the
-\fBkadmin.local\fR(1M) or \fBkdb5_util\fR(1M) command. The location of the
-keytab is determined by the \fBadmin_keytab\fR relation in the
-\fBkdc.conf\fR(4) file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/krb5/kadm5.acl\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBkadmind\fR uses an \fBACL\fR (access control list) to determine which
-principals are allowed to perform Kerberos administration actions. The path of
-the \fBACL\fR file is determined by the \fBacl_file\fR relation in the
-\fBkdc.conf\fR file. See \fBkdc.conf\fR(4). For information regarding the
-format of the \fBACL\fR file, refer to \fBkadm5.acl\fR(4).
-.sp
-The \fBkadmind\fR daemon will need to be restarted to reread the
-\fBkadm5.acl\fR file after it has been modified. You can do this, as root, with
-the following command:
-.sp
-.in +2
-.nf
-# svcadm restart svc:/network/security/kadmin:default
-.fi
-.in -2
-.sp
-
-.RE
-
-.sp
-.LP
-After \fBkadmind\fR begins running, it puts itself in the background and
-disassociates itself from its controlling terminal.
-.sp
-.LP
-\fBkadmind\fR can be configured for incremental database propagation.
-Incremental propagation allows slave KDC servers to receive principal and
-policy updates incrementally instead of receiving full dumps of the database.
-These settings can be changed in the \fBkdc.conf\fR(4) file:
-.sp
-.ne 2
-.na
-\fB\fBsunw_dbprop_enable = [true | false]\fR\fR
-.ad
-.sp .6
-.RS 4n
-Enable or disable incremental database propagation. Default is \fBfalse\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsunw_dbprop_master_ulogsize = N\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the maximum amount of log entries available for incremental
-propagation to the slave KDC servers. The maximum value that this can be is
-2500 entries. Default value is 1000 entries.
-.RE
-
-.sp
-.LP
-The \fBkiprop/\fR\fI<hostname>\fR\fB@\fR\fI<REALM>\fR principal must exist in
-the master's \fBkadm5.keytab\fR file to enable the slave to authenticate
-incremental propagation from the master. In the principal syntax above,
-\fI<hostname>\fR is the master KDC's host name and \fI<REALM>\fR is the realm
-in which the master KDC resides.
-.sp
-.LP
-Kerberos client machines can automatically migrate Unix users to the default
-Kerberos realm specified in the local \fBkrb5.conf\fR(4), if the user does not
-have a valid kerberos account already. You achieve this by using the
-\fBpam_krb5_migrate\fR(5) service module for the service in question. The
-Kerberos service principal used by the client machine attempting the migration
-needs to be validated using the \fBu\fR privilege in \fBkadm5.acl\fR(4). When
-using the \fBu\fR privilege, \fBkadmind\fR validates user passwords using PAM,
-specifically using a \fBPAM_SERVICE\fR name of \fBk5migrate\fR by calling
-\fBpam_authenticate\fR(3PAM) and \fBpam_acct_mgmt\fR(3PAM).
-.sp
-.LP
-A suitable PAM stack configuration example for \fBk5migrate\fR would look like:
-.sp
-.in +2
-.nf
-k5migrate auth required pam_unix_auth.so.1
-k5migrate account required pam_unix_account.so.1
-.fi
-.in -2
-.sp
-
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-d\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies that \fBkadmind\fR does not put itself in the background and does not
-disassociate itself from the terminal. In normal operation, you should use the
-default behavior, which is to allow the daemon to put itself in the background.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-m\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies that the master database password should be retrieved from the
-keyboard rather than from the stash file. When using \fB-m\fR, the
-\fBkadmind\fR daemon receives the password prior to putting itself in the
-background. If used in combination with the \fB-d\fR option, you must
-explicitly place the daemon in the background.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR \fIport-number\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the port on which the \fBkadmind\fR daemon listens for connections.
-The default is controlled by the \fBkadmind_port\fR relation in the
-\fBkdc.conf\fR(4) file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-r\fR \fIrealm\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the default realm that \fBkadmind\fR serves. If \fIrealm\fR is not
-specified, the default \fIrealm\fR of the host is used. \fBkadmind\fR answers
-requests for any realm that exists in the local \fBKDC\fR database and for
-which the appropriate principals are in its \fBkeytab\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-x\fR \fIdb_args\fR\fR
-.ad
-.sp .6
-.RS 4n
-Pass database-specific arguments to \fBkadmind\fR. Supported arguments are for
-LDAP and the \fBBerkeley-db2\fR plug-in. These arguments are:
-.sp
-.ne 2
-.na
-\fB\fBbinddn\fR=\fIbinddn\fR\fR
-.ad
-.sp .6
-.RS 4n
-LDAP simple bind DN for authorization on the directory server. Overrides the
-\fBldap_kadmind_dn\fR parameter setting in \fBkrb5.conf\fR(4).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBbindpwd\fR=\fIbindpwd\fR\fR
-.ad
-.sp .6
-.RS 4n
-Bind password.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdbname\fR=\fIname\fR\fR
-.ad
-.sp .6
-.RS 4n
-For the \fBBerkeley-db2\fR plug-in, specifies a name for the Kerberos database.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnconns\fR=\fInum\fR\fR
-.ad
-.sp .6
-.RS 4n
-Maximum number of server connections.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBport\fR=\fInum\fR\fR
-.ad
-.sp .6
-.RS 4n
-Directory server connection port.
-.RE
-
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/var/krb5/principal\fR\fR
-.ad
-.sp .6
-.RS 4n
-Kerberos principal database.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/krb5/principal.ulog\fR\fR
-.ad
-.sp .6
-.RS 4n
-The update log file for incremental propagation.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/krb5/principal.kadm5\fR\fR
-.ad
-.sp .6
-.RS 4n
-Kerberos administrative database containing policy information.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/krb5/principal.kadm5.lock\fR\fR
-.ad
-.sp .6
-.RS 4n
-Kerberos administrative database lock file. This file works backwards from most
-other lock files (that is, \fBkadmin\fR exits with an error if this file does
-not exist).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/krb5/kadm5.dict\fR\fR
-.ad
-.sp .6
-.RS 4n
-Dictionary of strings explicitly disallowed as passwords.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/krb5/kadm5.acl\fR\fR
-.ad
-.sp .6
-.RS 4n
-List of principals and their \fBkadmin\fR administrative privileges.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/krb5/kadm5.keytab\fR\fR
-.ad
-.sp .6
-.RS 4n
-Keytab for \fBkadmin\fR principals: \fBkadmin\fR/\fIfqdn\fR,
-\fBchangepw\fR/\fIfqdn\fR, and \fBkadmin\fR/\fBchangepw\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/krb5/kdc.conf\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBKDC\fR configuration information.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBkpasswd\fR(1), \fBsvcs\fR(1), \fBkadmin\fR(1M),
-\fBkadmin.local\fR(1M), \fBkdb5_util\fR(1M), \fBkdb5_ldap_util\fR(1M),
-\fBkproplog\fR(1M), \fBsvcadm\fR(1M), \fBpam_acct_mgmt\fR(3PAM),
-\fBpam_authenticate\fR(3PAM), \fBkadm5.acl\fR(4), \fBkdc.conf\fR(4),
-\fBkrb5.conf\fR(4), \fBattributes\fR(5), \fBkerberos\fR(5),
-\fBkrb5envvar\fR(5), \fBpam_krb5_migrate\fR(5), \fBsmf\fR(5)
-.SH NOTES
-.sp
-.LP
-The Kerberos administration daemon (\fBkadmind\fR) is now compliant with the
-change-password standard mentioned in RFC 3244, which means it can now handle
-change-password requests from non-Solaris Kerberos clients.
-.sp
-.LP
-The \fBkadmind\fR service is managed by the service management facility,
-\fBsmf\fR(5), under the service identifier:
-.sp
-.in +2
-.nf
-svc:/network/security/kadmin
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Administrative actions on this service, such as enabling, disabling, or
-requesting restart, can be performed using \fBsvcadm\fR(1M). The service's
-status can be queried using the \fBsvcs\fR(1) command.
diff --git a/usr/src/man/man1m/kclient.1m b/usr/src/man/man1m/kclient.1m
deleted file mode 100644
index caca84423a..0000000000
--- a/usr/src/man/man1m/kclient.1m
+++ /dev/null
@@ -1,589 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH KCLIENT 1M "November 22, 2021"
-.SH NAME
-kclient \- set up a machine as a Kerberos client
-.SH SYNOPSIS
-.nf
-\fB/usr/sbin/kclient\fR [\fB-n\fR] [\fB-R\fR \fIrealm\fR] [\fB-k\fR \fIkdc\fR] [\fB-a\fR \fIadminuser\fR]
- [\fB-c\fR \fIfilepath\fR] [\fB-d\fR \fIdnsarg\fR] [\fB-f\fR \fIfqdn_list\fR] [\fB-h\fR \fIlogical_host_name\fR]
- [\fB-k\fR \fIkdc_list\fR] [\fB-m\fR \fImaster_kdc\fR] [\fB-p\fR \fIprofile\fR] [\fB-s\fR \fIpam_service\fR]
- [\fB-T\fR \fIkdc_vendor\fR]
-.fi
-
-.SH DESCRIPTION
-By specifying the various command options, you can use the \fBkclient\fR
-utility to:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Configure a machine as a Kerberos client for a specified realm and for KDC by
-setting up \fBkrb5.conf\fR(4).
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Add the Kerberos host principal to the local host's \fBkeytab\fR file
-(\fB/etc/krb5/krb5.keytab\fR).
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Set up the machine to do kerberized NFS.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Bring over a master \fBkrb5.conf\fR copy from a specified pathname.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Setup a machine to do server and/or host/domain name-to-realm mapping lookups
-by means of DNS.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Configure a Kerberos client to use an MS Active Directory server. This
-generates a \fBkeytab\fR file with the Kerberos client's service keys
-populated.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Setup a Kerberos client that has no service keys. This is useful when the
-client does not require service keys, because the client does not wish to host
-a service that uses Kerberos for security.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Configure a Kerberos client that is part of a cluster. This option requires the
-logical host name of the cluster so that the proper service keys are created
-and populated in the client's \fBkeytab\fR file.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Setup a Kerberos client to join an environment that consists of Kerberos
-servers that are non-Solaris and non-MS Active Directory servers.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Configure \fBpam.conf\fR(4) to use Kerberos authentication for specified
-services.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Configure the client as a simple NTP broadcast/multicast client.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Specify custom domain/host name-to-realm name mappings.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Setup the Kerberos client to use multiple KDC servers.
-.RE
-.sp
-.LP
-The \fBkclient\fR utility needs to be run on the client machine with root
-permission and can be run either interactively or non-interactively. In the
-non-interactive mode, the user feeds in the required inputs by means of a
-profile, command-line options, or a combination of profile and command-line
-options. The user is prompted for "required" parameter values (\fBrealm\fR and
-\fBadminuser\fR), if found missing in the non-interactive run. The interactive
-mode is invoked when the utility is run without any command-line arguments.
-.sp
-.LP
-Both the interactive and non-interactive forms of \fBkclient\fR can add the
-\fBhost/fqdn\fR entry to the local host's \fBkeytab\fR file. They also can
-require the user to enter the password for the administrative user requested,
-to obtain the Kerberos Ticket Granting Ticket (TGT) for \fBadminuser\fR. The
-\fBhost/fqdn\fR, \fBnfs/fqdn\fR, and \fBroot/fqdn\fR principals can be added to
-the KDC database (if not already present) before their possible addition to the
-local host's \fBkeytab\fR.
-.sp
-.LP
-The \fBkclient\fR utility assumes that the local host has been setup for DNS
-and requires the presence of a valid \fBresolv.conf\fR(4). Also, \fBkclient\fR
-can fail if the localhost time is not synchronized with that of the KDC. For
-Kerberos to function the localhost time must be within five minutes of that of
-the KDC. It is advised that both systems run some form of time synchronization
-protocol, such as the Network Time Protocol (NTP). See the \fBntpd\fR man page,
-delivered in the \fBSUNWntpu\fR package (not a SunOS man page).
-.SH OPTIONS
-The non-interactive mode supports the following options:
-.sp
-.ne 2
-.na
-\fB\fB-n\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set up the machine for kerberized NFS. This involves making changes to
-\fBkrb5*\fR security flavors in \fBnfssec.conf\fR(4). This option will also add
-\fBnfs/fqdn\fR and \fBroot/fqdn\fR entries to the local host's \fBkeytab\fR
-file if the \fB-K\fR option has not been specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-R\fR [ \fIrealm\fR ]\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the Kerberos realm.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-k\fR \fIkdc_list\fR\fR
-.ad
-.sp .6
-.RS 4n
-The \fB-k\fR option specifies the KDC host names for the Kerberos client.
-\fIkdc_list\fR is a comma-separated list of KDCs. If the \fB-m\fR option is not
-used, it is assumed that the first (or only) host in \fIkdc_list\fR is the
-master KDC host name. Note that the list specified is used verbatim. This is
-helpful when specifying non-fully qualified KDC host names that can be
-canonicalized by DNS.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-a\fR [ \fIadminuser\fR ]\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the Kerberos administrative user.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-T\fR \fIkdc_vendor\fR\fR
-.ad
-.sp .6
-.RS 4n
-Configure the Kerberos client to associate with a third party server. Valid
-\fIkdc_vendor\fR currently supported are:
-.sp
-.ne 2
-.na
-\fB\fBms_ad\fR\fR
-.ad
-.sp .6
-.RS 4n
-Microsoft Active Directory
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmit\fR\fR
-.ad
-.sp .6
-.RS 4n
-MIT KDC server
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBheimdal\fR\fR
-.ad
-.sp .6
-.RS 4n
-Heimdal KDC server
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBshishi\fR\fR
-.ad
-.sp .6
-.RS 4n
-Shishi KDC server
-.RE
-
-Knowing the administrative password will be required to associate the client
-with the server if the \fBms_ad\fR option is specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-c\fR [ \fIfilepath\fR ]\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the pathname to the \fBkrb5.conf\fR(4) master file, to be copied over
-to the local host. The path specified normally points to a master copy on a
-remote host and brought over to the local host by means of NFS.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-d\fR [ \fIdnsarg\fR ]\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the DNS lookup option to be used and specified in the
-\fBkrb5.conf\fR(4) file. Valid \fIdnsarg\fR entries are: \fBnone\fR,
-\fBdns_lookup_kdc\fR, \fBdns_lookup_realm\fR and \fBdns_fallback\fR. Any other
-entry is considered invalid. The latter three \fIdnsarg\fR values assume the
-same meaning as those described in \fBkrb5.conf\fR. \fBdns_lookup_kdc\fR
-implies DNS lookups for the KDC and the other servers. \fBdns_lookup_realm\fR
-is for host/domain name-to-realm mapping by means of DNS. \fBdns_fallback\fR is
-a superset and does DNS lookups for both the servers and the host/domain
-name-to-realm mapping. A lookup option of \fBnone\fR specifies that DNS is not
-be used for any kind of mapping lookup.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-D\fR \fIdomain_list\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the host and/or domain names to be mapped to the Kerberos client's
-default realm name. \fIdomain_list\fR is a comma-separated list, for example
-"\fBexample.com,host1.example.com\fR". If the \fB-D\fR option is not used, then
-only the client's domain is used for this mapping. For example, if the client
-is \fBhost1.eng.example.com\fR, then the domain that is mapped to the
-\fBEXAMPLE.COM\fR realm is \fBexample.com\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-K\fR\fR
-.ad
-.sp .6
-.RS 4n
-Configure the Kerberos client without service keys, which are usually stored in
-\fB/etc/krb5/krb5.keytab\fR. This is useful in the following scenarios:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The client IP address is dynamically assigned and therefore does not host
-Kerberized services.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Client has a static IP address, but does not want to host any Kerberized
-services.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Client has a static IP address, but the local administrator does not currently
-have service keys available for the machine. It is expected that, at a later
-time, these keys will be installed on the machine.
-.RE
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR [ \fIfqdn_list\fR ]\fR
-.ad
-.sp .6
-.RS 4n
-This option creates a service principal entry (host/nfs/root) associated with
-each of the listed fqdn's, if required, and subsequently adds the entries to
-the local host's \fBkeytab\fR.
-.sp
-\fIfqdn_list\fR is a comma-separated list of one or more fully qualified DNS
-domain names.
-.sp
-This option is especially useful in Kerberos realms having systems offering
-kerberized services, but situated in multiple different DNS domains.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-h\fR \fIlogical_host_name\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies that the Kerberos client is a node in a cluster. The
-\fIlogical_host_name\fR is the logical host name given to the cluster. The
-resulting \fB/etc/krb5/krb5.conf\fR and \fB/etc/krb5/krb5.keytab\fR files must
-be manually copied over to the other members of the cluster.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-m\fR \fImaster_kdc\fR\fR
-.ad
-.sp .6
-.RS 4n
-This option specifies the master KDC to be used by the Kerberos client.
-\fImaster_kdc\fR is the host name of the master KDC for the client. If the
-\fB-m\fR option is not used, then it is assumed that the first KDC host name
-listed with the \fB-k\fR option is the master KDC.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR [ \fIprofile\fR ]\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the profile to be used to enable the reading in of the values of all
-the parameters required for setup of the machine as a Kerberos client.
-.sp
-The profile should have entries in the format:
-.sp
-.in +2
-.nf
-\fIPARAM\fR \fI<value>\fR
-.fi
-.in -2
-.sp
-
-Valid \fIPARAM\fR entries are: \fBREALM\fR, \fBKDC\fR, \fBADMIN\fR,
-\fBFILEPATH\fR, \fBNFS\fR, \fBDNSLOOKUP\fR, \fBFQDN\fR, \fBNOKEY\fR,
-\fBNOSOL\fR, \fBLHN\fR, \fBKDCVENDOR\fR, \fBRMAP\fR, \fBMAS\fR, and \fBPAM\fR.
-.sp
-These profile entries correspond to the \fB-R\fR [\fIrealm\fR], \fB-k\fR
-[\fIkdc\fR], \fB-a\fR [\fIadminuser\fR], \fB-c\fR [\fIfilepath\fR], \fB-n\fR,
-\fB-d\fR [\fIdnsarg\fR], \fB-f\fR [\fIfqdn_list\fR], \fB-K\fR, \fB-h\fR
-[\fIlogical_host_name\fR], \fB-T\fR [\fIkdc_vendor\fR], \fB-D\fR
-[\fIdomain_list\fR], \fB-m\fR [\fImaster_kdc\fR], and \fB-s\fR
-[\fIpam_service\fR] command-line options, respectively. Any other \fIPARAM\fR
-entry is considered invalid and is ignored.
-.sp
-The NFS profile entry can have a value of 0 (do nothing) or 1 (operation is
-requested). Any other value is considered invalid and is ignored.
-.sp
-Keep in mind that the command line options override the \fIPARAM\fR values
-listed in the profile.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR \fIpam_service\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies that the PAM service names, listed in \fIpam_service\fR, are
-authenticated through Kerberos before any other type of authentication. Using
-this option updates \fBpam.conf\fR(4) to include \fBpam_krb5\fR(5) to existing
-authentication stacks for the specified service(s) in \fIpam_service\fR. An
-example of a possible \fIpam_service\fR value is: \fBdtlogin,sshd-kbdint\fR.
-.RE
-
-.SH EXAMPLES
-\fBExample 1 \fRSetting Up a Kerberos Client Using Command-Line Options
-.sp
-.LP
-To setup a Kerberos client using the \fBclntconfig/admin\fR administrative
-principal for realm \fB\&'EXAMPLE.COM', kdc `example1.example.com'\fR and
-that also does kerberized NFS, enter:
-
-.sp
-.in +2
-.nf
-# /usr/sbin/kclient -n -R EXAMPLE.COM -k example1.example.com -a clntconfig
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Alternatively, to set up a Kerberos client using the \fBclntconfig/admin\fR
-administrative principal for the realm \fB`EAST.EXAMPLE.COM', kdc
-`example2.east.example.com'\fR and that also needs service principal(s) created
-and/or added to the local \fBkeytab\fR for multiple DNS domains, enter:
-
-.sp
-.in +2
-.nf
-# /usr/sbin/kclient -n -R EAST.EXAMPLE.COM -k example2.east.example.com \e
--f west.example.com,central.example.com -a clntconfig
-.fi
-.in -2
-
-.sp
-.LP
-Note that the \fBkrb5\fR administrative principal used by the administrator
-needs to have only \fBadd\fR, \fBinquire\fR, \fBchange-pwd\fR and \fBmodify\fR
-privileges (for the principals in the KDC database) in order for the
-\fBkclient\fR utility to run. A sample \fBkadm5.acl\fR(4) entry is:
-
-.sp
-.in +2
-.nf
-clntconfig/admin@EXAMPLE.COM acmi
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRSetting Up a Kerberos Client Using the Profile Option
-.sp
-.LP
-To setup a Kerberos client using the \fBclntconfig/admin\fR administrative
-principal for realm \fB`EXAMPLE.COM', kdc `example1.example.com'\fR and that
-also copies over the master \fBkrb5.conf\fR from a specified location, enter:
-
-.sp
-.in +2
-.nf
-# /usr/sbin/kclient -p /net/example1.example.com/export/profile.krb5
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The contents of \fBprofile.krb5\fR:
-
-.sp
-.in +2
-.nf
-REALM EXAMPLE.COM
-KDC example1.example.com
-ADMIN clntconfig
-FILEPATH /net/example1.example.com/export/krb5.conf
-NFS 0
-DNSLOOKUP none
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRSetting Up a Kerberos Client That Has a Dynamic IP Address
-.sp
-.LP
-In this example a Kerberos client is a DHCP client that has a dynamic IP
-address. This client does not wish to host any Kerberized services and
-therefore does not require a \fBkeytab\fR (\fB/etc/krb5/krb5.keytab\fR) file.
-
-.sp
-.LP
-For this type of client the administrator would issue the following command to
-configure this machine to be a Kerberos client of the \fBEXAMPLE.COM\fR realm
-with the KDC server \fBkdc1.example.com\fR:
-
-.sp
-.in +2
-.nf
-# \fB/usr/sbin/kclient -K -R EXAMPLE.COM -k kdc1.example.com\fR
-.fi
-.in -2
-.sp
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/etc/krb5/kadm5.acl\fR\fR
-.ad
-.sp .6
-.RS 4n
-Kerberos access control list (ACL) file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/krb5/krb5.conf\fR\fR
-.ad
-.sp .6
-.RS 4n
-Default location for the local host's configuration file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/krb5/krb5.keytab\fR\fR
-.ad
-.sp .6
-.RS 4n
-Default location for the local host's \fBkeytab\fR file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/nfssec.conf\fR\fR
-.ad
-.sp .6
-.RS 4n
-File listing NFS security modes.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/resolv.conf\fR\fR
-.ad
-.sp .6
-.RS 4n
-DNS resolver configuration file.
-.RE
-
-.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Committed
-.TE
-
-.SH SEE ALSO
-\fBencrypt\fR(1), \fBksh93\fR(1), \fBldapdelete\fR(1), \fBldapmodify\fR(1),
-\fBldapsearch\fR(1), \fBdd\fR(1M), \fBsmbadm\fR(1M), \fBkadm5.acl\fR(4),
-\fBkrb5.conf\fR(4), \fBnfssec.conf\fR(4), \fBpam.conf\fR(4),
-\fBresolv.conf\fR(4), \fBattributes\fR(5), \fBpam_krb5\fR(5)
-.SH NOTES
-\fBfqdn\fR stands for the Fully Qualified Domain Name of the local host. The
-\fBkclient\fR utility saves copies of both the \fBkrb5.conf\fR(4) and
-\fBnfssec.conf\fR(4) files to files with corresponding names and \fB\&.sav\fR
-extensions. The optional copy of the \fBkrb5.conf\fR(4) master file is neither
-encrypted nor integrity-protected and it takes place over regular NFS.
diff --git a/usr/src/man/man1m/kdb5_ldap_util.1m b/usr/src/man/man1m/kdb5_ldap_util.1m
deleted file mode 100644
index 0e8923241c..0000000000
--- a/usr/src/man/man1m/kdb5_ldap_util.1m
+++ /dev/null
@@ -1,1177 +0,0 @@
-'\" te
-.\" This manual page is derived from documentation obtained from The Massachusetts Institute of Technology.
-.\" Portions Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH KDB5_LDAP_UTIL 1M "June 20, 2021"
-.SH NAME
-kdb5_ldap_util \- Kerberos configuration utility
-.SH SYNOPSIS
-.nf
-\fBkdb5_ldap_util\fR [\fB-D\fR \fIuser_dn\fR [\fB-w\fR \fIpasswd\fR]] [\fB-H\fR \fIldap_uri\fR] \fIcommand\fR
- [\fIcommand_options\fR]
-.fi
-
-.SH DESCRIPTION
-The \fBkdb5_ldap_util\fR utility allows an administrator to manage realms,
-Kerberos services, and ticket policies. The utility offers a set of general
-options, described under OPTIONS, and a set of commands, which, in turn, have
-their own options. Commands and their options are described in their own
-subsections, below.
-.SH OPTIONS
-\fBkdb5_ldap_util\fR has a small set of general options that apply to the
-\fBkdb5_ldap_util\fR utility itself and a larger number of options that apply
-to specific commands. A number of these command-specific options apply to
-multiple commands and are described in their own section, below.
-.SS "General Options"
-The following general options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-D\fR \fIuser_dn\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the distinguished name (DN) of a user who has sufficient rights to
-perform the operation on the LDAP server.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-H\fR \fIldap_uri\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the URI of the LDAP server.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-w\fR \fIpasswd\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the password of \fIuser_dn\fR. This option is not recommended.
-.RE
-
-.SS "Common Command-specific Options"
-The following options apply to a number of \fBkdb5_ldap_util\fR commands.
-.sp
-.ne 2
-.na
-\fB\fB-subtrees\fR \fIsubtree_dn_list\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the list of subtrees containing the principals of a realm. The list
-contains the DNs of the subtree objects separated by a colon.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-sscope\fR \fIsearch_scope\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the scope for searching the principals under a subtree. The possible
-values are 1 or \fBone\fR (one level), 2 or \fBsub\fR (subtrees).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-containerref\fR \fIcontainer_reference_dn\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the DN of the container object in which the principals of a realm
-will be created. If the container reference is not configured for a realm, the
-principals will be created in the realm container.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-maxtktlife\fR \fImax_ticket_life\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies maximum ticket life for principals in this realm.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-maxrenewlife\fR \fImax_renewable_ticket_life\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies maximum renewable life of tickets for principals in this realm.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-r\fR \fIrealm\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the Kerberos realm of the database; by default the realm returned by
-\fBkrb5_default_local_realm\fR(3LIB) is used.
-.RE
-
-.SH \fBkdb5_ldap_util\fR COMMANDS
-The \fBkdb5_ldap_util\fR utility comprises a set of commands, each with its own
-set of options. These commands are described in the following subsections.
-.SS "The \fBcreate\fR Command"
-The \fBcreate\fR command creates a realm in a directory. The command has the
-following syntax:
-.sp
-.in +2
-.nf
-create \e
-[-subtrees \fIsubtree_dn_list\fR]
-[-sscope \fIsearch_scope\fR]
-[-containerref \fIcontainer_reference_dn\fR]
-[-k \fImkeytype\fR]
-[-m|-P \fIpassword\fR| -sf \fIstashfilename\fR]
-[-s]
-[-r \fIrealm\fR]
-[-maxtktlife \fImax_ticket_life\fR]
-[-kdcdn \fIkdc_service_list\fR]
-[-admindn \fIadmin_service_list\fR]
-[-maxrenewlife \fImax_renewable_ticket_life\fR]
-[\fIticket_flags\fR]
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The \fBcreate\fR command has the following options:
-.sp
-.ne 2
-.na
-\fB\fB-subtree\fR \fIsubtree_dn_list\fR\fR
-.ad
-.sp .6
-.RS 4n
-See "Common Command-specific Options," above.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-sscope\fR \fIsearch_scope\fR\fR
-.ad
-.sp .6
-.RS 4n
-See "Common Command-specific Options," above.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-containerref\fR \fIcontainer_reference_dn\fR\fR
-.ad
-.sp .6
-.RS 4n
-See "Common Command-specific Options," above.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-k\fR \fImkeytype\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the key type of the master key in the database; the default is that
-given in \fBkdc.conf\fR(4).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-m\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies that the master database password should be read from the TTY rather
-than fetched from a file on the disk.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-P\fR \fIpassword\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the master database password. This option is not recommended.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-sf\fR \fIstashfilename\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the stash file of the master database password.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies that the stash file is to be created.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-maxtktlife\fR \fImax_ticket_life\fR\fR
-.ad
-.sp .6
-.RS 4n
-See "Common Command-specific Options," above.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-maxrenewlife\fR \fImax_renewable_ticket_life\fR\fR
-.ad
-.sp .6
-.RS 4n
-See "Common Command-specific Options," above.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-r\fR \fIrealm\fR\fR
-.ad
-.sp .6
-.RS 4n
-See "Common Command-specific Options," above.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIticket_flags\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the ticket flags. If this option is not specified, by default, none
-of the flags are set. This means all the ticket options will be allowed and no
-restriction will be set. See "Ticket Flags" for a list and descriptions of
-these flags.
-.RE
-
-.SS "The \fBmodify\fR Command"
-The \fBmodify\fR command modifies the attributes of a realm. The command has
-the following syntax:
-.sp
-.in +2
-.nf
-modify \e
-[-subtrees \fIsubtree_dn_list\fR]
-[-sscope \fIsearch_scope\fR]
-[-containerref \fIcontainer_reference_dn\fR]
-[-r \fIrealm\fR]
-[-maxtktlife \fImax_ticket_life\fR]
-[-maxrenewlife \fImax_renewable_ticket_life\fR]
-[\fIticket_flags\fR]
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The \fBmodify\fR command has the following options:
-.sp
-.ne 2
-.na
-\fB\fB-subtree\fR \fIsubtree_dn_list\fR\fR
-.ad
-.sp .6
-.RS 4n
-See "Common Command-specific Options," above.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-sscope\fR \fIsearch_scope\fR\fR
-.ad
-.sp .6
-.RS 4n
-See "Common Command-specific Options," above.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-containerref\fR \fIcontainer_reference_dn\fR\fR
-.ad
-.sp .6
-.RS 4n
-See "Common Command-specific Options," above.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-maxtktlife\fR \fImax_ticket_life\fR\fR
-.ad
-.sp .6
-.RS 4n
-See "Common Command-specific Options," above.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-maxrenewlife\fR \fImax_renewable_ticket_life\fR\fR
-.ad
-.sp .6
-.RS 4n
-See "Common Command-specific Options," above.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-r\fR \fIrealm\fR\fR
-.ad
-.sp .6
-.RS 4n
-See "Common Command-specific Options," above.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIticket_flags\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the ticket flags. If this option is not specified, by default, none
-of the flags are set. This means all the ticket options will be allowed and no
-restriction will be set. See "Ticket Flags" for a list and descriptions of
-these flags.
-.RE
-
-.SS "The \fBview\fR Command"
-The \fBview\fR command displays the attributes of a realm. The command has the
-following syntax:
-.sp
-.in +2
-.nf
-view [-r \fIrealm\fR]
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The \fBview\fR command has the following option:
-.sp
-.ne 2
-.na
-\fB\fB-r\fR \fIrealm\fR\fR
-.ad
-.sp .6
-.RS 4n
-See "Common Command-specific Options," above.
-.RE
-
-.SS "The \fBdestroy\fR Command"
-The \fBdestroy\fR command destroys a realm, including the master key stash
-file. The command has the following syntax:
-.sp
-.in +2
-.nf
-destroy [-f] [-r \fIrealm\fR]
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The \fBdestroy\fR command has the following options:
-.sp
-.ne 2
-.na
-\fB\fB-f\fR\fR
-.ad
-.sp .6
-.RS 4n
-If specified, \fBdestroy\fR does not prompt you for confirmation.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-r\fR \fIrealm\fR\fR
-.ad
-.sp .6
-.RS 4n
-See "Common Command-specific Options," above.
-.RE
-
-.SS "The \fBlist\fR Command"
-The \fBlist\fR command displays the names of realms. The command has the
-following syntax:
-.sp
-.in +2
-.nf
-list
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The \fBlist\fR command has no options.
-.SS "The \fBstashsrvpw\fR Command"
-The \fBstashsrvpw\fR command enables you to store the password for service
-object in a file so that a KDC and Administration server can use it to
-authenticate to the LDAP server. The command has the following syntax:
-.sp
-.in +2
-.nf
-stashsrvpw [-f \fIfilename\fR] \fIservicedn\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The \fBstashsrvpw\fR command has the following option and argument:
-.sp
-.ne 2
-.na
-\fB\fB-f\fR \fIfilename\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the complete path of the service password file. The default is:
-.sp
-.in +2
-.nf
-/var/krb5/service_passwd
-.fi
-.in -2
-.sp
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIservicedn\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the distinguished name (DN) of the service object whose password is
-to be stored in file.
-.RE
-
-.SS "The \fBcreate_policy\fR Command"
-The \fBcreate_policy\fR command creates a ticket policy in a directory. The
-command has the following syntax:
-.sp
-.in +2
-.nf
-create_policy \e
-[-r \fIrealm\fR]
-[-maxtktlife \fImax_ticket_life\fR]
-[-maxrenewlife \fImax_renewable_ticket_life\fR]
-[\fIticket_flags\fR]
-\fIpolicy_name\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The \fBcreate_policy\fR command has the following options:
-.sp
-.ne 2
-.na
-\fB\fB-r\fR \fIrealm\fR\fR
-.ad
-.sp .6
-.RS 4n
-See "Common Command-specific Options," above.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-maxtktlife\fR \fImax_ticket_life\fR\fR
-.ad
-.sp .6
-.RS 4n
-See "Common Command-specific Options," above.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-maxrenewlife\fR \fImax_renewable_ticket_life\fR\fR
-.ad
-.sp .6
-.RS 4n
-See "Common Command-specific Options," above.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIticket_flags\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the ticket flags. If this option is not specified, by default, none
-of the flags are set. This means all the ticket options will be allowed and no
-restriction will be set. See "Ticket Flags" for a list and descriptions of
-these flags.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIpolicy_name\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the name of the ticket policy.
-.RE
-
-.SS "The \fBmodify_policy\fR Command"
-The \fBmodify_policy\fR command modifies the attributes of a ticket policy. The
-command has the following syntax:
-.sp
-.in +2
-.nf
-modify_policy \e
-[-r \fIrealm\fR]
-[-maxtktlife \fImax_ticket_life\fR]
-[-maxrenewlife \fImax_renewable_ticket_life\fR]
-[\fIticket_flags\fR]
-\fIpolicy_name\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The \fBmodify_policy\fR command has the same options and argument as those for
-the \fBcreate_policy\fR command.
-.SS "The \fBview_policy\fR Command"
-The \fBview_policy\fR command displays the attributes of a ticket policy. The
-command has the following syntax:
-.sp
-.in +2
-.nf
-view_policy [-r \fIrealm\fR] \fIpolicy_name\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The \fBview_policy\fR command has the following options:
-.sp
-.ne 2
-.na
-\fB\fB-r\fR \fIrealm\fR\fR
-.ad
-.sp .6
-.RS 4n
-See "Common Command-specific Options," above.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIpolicy_name\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the name of the ticket policy.
-.RE
-
-.SS "The \fBdestroy_policy\fR Command"
-The \fBdestroy_policy\fR command destroys an existing ticket policy. The
-command has the following syntax:
-.sp
-.in +2
-.nf
-destroy_policy [-r \fIrealm\fR] [-force] \fIpolicy_name\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The \fBdestroy_policy\fR command has the following options:
-.sp
-.ne 2
-.na
-\fB\fB-r\fR \fIrealm\fR\fR
-.ad
-.sp .6
-.RS 4n
-See "Common Command-specific Options," above.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-force\fR\fR
-.ad
-.sp .6
-.RS 4n
-Forces the deletion of the policy object. If not specified, you will be
-prompted for confirmation before the policy is deleted. Enter \fByes\fR to
-confirm the deletion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIpolicy_name\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the name of the ticket policy.
-.RE
-
-.SS "The \fBlist_policy\fR Command"
-The \fBlist_policy\fR command lists the ticket policies in the default or a
-specified realm. The command has the following syntax:
-.sp
-.in +2
-.nf
-list_policy [-r \fIrealm\fR]
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The \fBlist_policy\fR command has the following option:
-.sp
-.ne 2
-.na
-\fB\fB-r\fR \fIrealm\fR\fR
-.ad
-.sp .6
-.RS 4n
-See "Common Command-specific Options," above.
-.RE
-
-.SH TICKET FLAGS
-A number of \fBkdb5_ldap_util\fR commands have \fBticket_flag\fR options. These
-flags are described as follows:
-.sp
-.ne 2
-.na
-\fB\fB{-|+}allow_dup_skey\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fB-allow_dup_skey\fR disables user-to-user authentication for principals by
-prohibiting principals from obtaining a session key for another user. This
-setting sets the \fBKRB5_KDB_DISALLOW_DUP_SKEY\fR flag. \fB+allow_dup_skey\fR
-clears this flag.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB{-|+}allow_forwardable\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fB-allow_forwardable\fR prohibits principals from obtaining forwardable
-tickets. This setting sets the \fBKRB5_KDB_DISALLOW_FORWARDABLE\fR flag.
-\fB+allow_forwardable\fR clears this flag.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB{-|+}allow_postdated\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fB-allow_postdated\fR prohibits principals from obtaining postdated tickets.
-This setting sets the \fBKRB5_KDB_DISALLOW_POSTDATED\fR flag.
-\fB+allow_postdated\fR clears this flag.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB{-|+}allow_proxiable\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fB-allow_proxiable\fR prohibits principals from obtaining proxiable tickets.
-This setting sets the \fBKRB5_KDB_DISALLOW_PROXIABLE\fR flag.
-\fB+allow_proxiable\fR clears this flag.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB{-|+}allow_renewable\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fB-allow_renewable\fR prohibits principals from obtaining renewable tickets.
-This setting sets the \fBKRB5_KDB_DISALLOW_RENEWABLE\fR flag.
-\fB+allow_renewable\fR clears this flag.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB{-|+}allow_svr\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fB-allow_svr\fR prohibits the issuance of service tickets for principals. This
-setting sets the \fBKRB5_KDB_DISALLOW_SVR\fR flag. \fB+allow_svr\fR clears
-this flag.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB{-|+}allow_tgs_req\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fB-allow_tgs_req\fR specifies that a Ticket-Granting Service (TGS) request for
-a service ticket for principals is not permitted. This option is useless for
-most purposes. \fB+allow_tgs_req\fR clears this flag. The default is
-\fB+allow_tgs_req\fR. In effect, \fB-allow_tgs_req\fR sets the
-\fBKRB5_KDB_DISALLOW_TGT_BASED\fR flag on principals in the database.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB{-|+}allow_tix\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fB-allow_tix\fR forbids the issuance of any tickets for principals.
-\fB+allow_tix\fR clears this flag. The default is \fB+allow_tix\fR. In effect,
-\fB-allow_tix\fR sets the \fBKRB5_KDB_DISALLOW_ALL_TIX\fR flag on principals in
-the database.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB{-|+}needchange\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fB+needchange\fR sets a flag in the attributes field to force a password
-change; \fB-needchange\fR clears that flag. The default is \fB-needchange\fR.
-In effect, \fB+needchange\fR sets the \fBKRB5_KDB_REQUIRES_PWCHANGE\fR flag on
-principals in the database.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB{-|+}password_changing_service\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fB+password_changing_service\fR sets a flag in the attributes field marking a
-principal as a password-change-service principal (a designation that is most
-often not useful). \fB-password_changing_service\fR clears the flag. That this
-flag has a long name is intentional. The default is
-\fB-password_changing_service\fR. In effect, \fB+password_changing_service\fR
-sets the \fBKRB5_KDB_PWCHANGE_SERVICE\fR flag on principals in the database.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB{-|+}requires_hwauth\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fB+requires_hwauth\fR requires principals to preauthenticate using a hardware
-device before being allowed to \fBkinit\fR(1). This setting sets the
-\fBKRB5_KDB_REQUIRES_HW_AUTH\fR flag. \fB-requires_hwauth\fR clears this flag.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB{-|+}requires_preauth\fR\fR
-.ad
-.sp .6
-.RS 4n
-+\fBrequires_preauth\fR requires principals to preauthenticate before being
-allowed to \fBkinit\fR(1). This setting sets the
-\fBKRB5_KDB_REQUIRES_PRE_AUTH\fR flag. \fB-requires_preauth\fR clears this
-flag.
-.RE
-
-.SH EXAMPLES
-\fBExample 1 \fRUsing \fBcreate\fR
-.sp
-.LP
-The following is an example of the use of the \fBcreate\fR command.
-
-.sp
-.in +2
-.nf
-# \fBkdb5_ldap_util -D cn=admin,o=org -H ldaps://ldap-server1.mit.edu \e
-create -subtrees o=org -sscope SUB -r ATHENA.MIT.EDU\fR
-Password for "cn=admin,o=org": \fIpassword entered\fR
-Initializing database for realm 'ATHENA.MIT.EDU'
-You will be prompted for the database Master Password.
-It is important that you NOT FORGET this password.
-Enter KDC database master key: \fImaster key entered\fR
-Re-enter KDC database master key to verify: \fImaster key re-entered\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRUsing \fBmodify\fR
-.sp
-.LP
-The following is an example of the use of the \fBmodify\fR command.
-
-.sp
-.in +2
-.nf
-# \fBkdb5_ldap_util -D cn=admin,o=org -H ldaps://ldap-server1.mit.edu \e
-modify +requires_preauth -r ATHENA.MIT.EDU\fR
-Password for "cn=admin,o=org": \fIpassword entered\fR
-Password for "cn=admin,o=org": \fIpassword entered\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRUsing \fBview\fR
-.sp
-.LP
-The following is an example of the use of the \fBview\fR command.
-
-.sp
-.in +2
-.nf
-# \fBkdb5_ldap_util -D cn=admin,o=org -H ldaps://ldap-server1.mit.edu \e
-view -r ATHENA.MIT.EDU\fR
- Password for "cn=admin,o=org":
- Realm Name: ATHENA.MIT.EDU
- Subtree: ou=users,o=org
- Subtree: ou=servers,o=org
- SearchScope: ONE
- Maximum ticket life: 0 days 01:00:00
- Maximum renewable life: 0 days 10:00:00
- Ticket flags: DISALLOW_FORWARDABLE REQUIRES_PWCHANGE
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 4 \fRUsing \fBdestroy\fR
-.sp
-.LP
-The following is an example of the use of the \fBdestroy\fR command.
-
-.sp
-.in +2
-.nf
-# \fBkdb5_ldap_util -D cn=admin,o=org -H ldaps://ldap-server1.mit.edu \e
-destroy -r ATHENA.MIT.EDU\fR
-Password for "cn=admin,o=org": \fIpassword entered\fR
-Deleting KDC database of 'ATHENA.MIT.EDU', are you sure?
-(type 'yes' to confirm)? \fByes\fR
-OK, deleting database of 'ATHENA.MIT.EDU'...
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 5 \fRUsing \fBlist\fR
-.sp
-.LP
-The following is an example of the use of the \fBlist\fR command.
-
-.sp
-.in +2
-.nf
-# \fBkdb5_ldap_util -D cn=admin,o=org -H ldaps://ldap-server1.mit.edu list\fR
-Password for "cn=admin,o=org": \fIpassword entered\fR
-Re-enter Password for "cn=admin,o=org": \fIpassword re-entered\fR
-ATHENA.MIT.EDU
-OPENLDAP.MIT.EDU
-MEDIA-LAB.MIT.EDU
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 6 \fRUsing \fBstashsrvpw\fR
-.sp
-.LP
-The following is an example of the use of the \fBstashsrvpw\fR command.
-
-.sp
-.in +2
-.nf
-# \fBkdb5_ldap_util stashsrvpw -f \e
-/home/andrew/conf_keyfile cn=service-kdc,o=org\fR
-Password for "cn=service-kdc,o=org": \fIpassword entered\fR
-Re-enter password for "cn=service-kdc,o=org": \fIpassword re-entered\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 7 \fRUsing \fBcreate_policy\fR
-.sp
-.LP
-The following is an example of the use of the \fBcreate_policy\fR command.
-
-.sp
-.in +2
-.nf
-# \fBkdb5_ldap_util -D cn=admin,o=org -H ldaps://ldap-server1.mit.edu \e
-create_policy -r ATHENA.MIT.EDU \e
--maxtktlife "1 day" -maxrenewlife "1 week" \e
--allow_postdated +needchange -allow_forwardable \fItktpolicy\fR\fR
-Password for "cn=admin,o=org": \fIpassword entered\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 8 \fRUsing \fBmodify_policy\fR
-.sp
-.LP
-The following is an example of the use of the \fBmodify_policy\fR command.
-
-.sp
-.in +2
-.nf
-# \fBkdb5_ldap_util -D cn=admin,o=org -H ldaps://ldap-server1.mit.edu \e
-modify_policy -r ATHENA.MIT.EDU \e
--maxtktlife "60 minutes" -maxrenewlife "10 hours" \e
-+allow_postdated -requires_preauth \fItktpolicy\fR\fR
-Password for "cn=admin,o=org": \fIpassword entered\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 9 \fRUsing \fBview_policy\fR
-.sp
-.LP
-The following is an example of the use of the \fBview_policy\fR command.
-
-.sp
-.in +2
-.nf
-# \fBkdb5_ldap_util -D cn=admin,o=org -H ldaps://ldap-server1.mit.edu \e
-view_policy -r ATHENA.MIT.EDU \fItktpolicy\fR\fR
-Password for "cn=admin,o=org": \fIpassword entered\fR
- Ticket policy: tktpolicy
- Maximum ticket life: 0 days 01:00:00
- Maximum renewable life: 0 days 10:00:00
- Ticket flags: DISALLOW_FORWARDABLE REQUIRES_PWCHANGE
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 10 \fRUsing \fBdestroy_policy\fR
-.sp
-.LP
-The following is an example of the use of the \fBdestroy_policy\fR command.
-
-.sp
-.in +2
-.nf
-# \fBkdb5_ldap_util -D cn=admin,o=org -H ldaps://ldap-server1.mit.edu \e
-destroy_policy -r ATHENA.MIT.EDU \fItktpolicy\fR\fR
-Password for "cn=admin,o=org": \fIpassword entered\fR
-This will delete the policy object 'tktpolicy', are you sure?
-(type 'yes' to confirm)? \fByes\fR
-** policy object '\fItktpolicy\fR' deleted.
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 11 \fRUsing \fBlist_policy\fR
-.sp
-.LP
-The following is an example of the use of the \fBlist_policy\fR command.
-
-.sp
-.in +2
-.nf
-# \fBkdb5_ldap_util -D cn=admin,o=org -H ldaps://ldap-server1.mit.edu \e
-list_policy -r ATHENA.MIT.EDU\fR
-Password for "cn=admin,o=org": \fIpassword entered\fR
-tktpolicy
-tmppolicy
-userpolicy
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 12 \fRUsing \fBsetsrvpw\fR
-.sp
-.LP
-The following is an example of the use of the \fBsetsrvpw\fR command.
-
-.sp
-.in +2
-.nf
-# \fBkdb5_ldap_util setsrvpw -D cn=admin,o=org setsrvpw \e
--fileonly -f /home/andrew/conf_keyfile cn=service-kdc,o=org\fR
-Password for "cn=admin,o=org": \fIpassword entered\fR
-Password for "cn=service-kdc,o=org": \fIpassword entered\fR
-Re-enter password for "cn=service-kdc,o=org": \fIpassword re-entered\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 13 \fRUsing \fBcreate_service\fR
-.sp
-.LP
-The following is an example of the use of the \fBcreate_service\fR command.
-
-.sp
-.in +2
-.nf
-# \fBkdb5_ldap_util -D cn=admin,o=org create_service \e
--kdc -randpw -f /home/andrew/conf_keyfile cn=service-kdc,o=org\fR
-Password for "cn=admin,o=org": \fIpassword entered\fR
-File does not exist. Creating the file /home/andrew/conf_keyfile...
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 14 \fRUsing \fBmodify_service\fR
-.sp
-.LP
-The following is an example of the use of the \fBmodify_service\fR command.
-
-.sp
-.in +2
-.nf
-# \fBkdb5_ldap_util -D cn=admin,o=org modify_service \e
--realm ATHENA.MIT.EDU cn=service-kdc,o=org\fR
-Password for "cn=admin,o=org": \fIpassword entered\fR
-Changing rights for the service object. Please wait ... done
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 15 \fRUsing \fBview_service\fR
-.sp
-.LP
-The following is an example of the use of the \fBview_service\fR command.
-
-.sp
-.in +2
-.nf
-# \fBkdb5_ldap_util -D cn=admin,o=org view_service \e
-cn=service-kdc,o=org\fR
-Password for "cn=admin,o=org": \fIpassword entered\fR
- Service dn: cn=service-kdc,o=org
- Service type: kdc
- Service host list:
- Realm DN list: cn=ATHENA.MIT.EDU,cn=Kerberos,cn=Security
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 16 \fRUsing \fBdestroy_service\fR
-.sp
-.LP
-The following is an example of the use of the \fBdestroy_service\fR command.
-
-.sp
-.in +2
-.nf
-# \fBkdb5_ldap_util -D cn=admin,o=org destroy_service \e
-cn=service-kdc,o=org\fR
-Password for "cn=admin,o=org": \fIpassword entered\fR
-This will delete the service object 'cn=service-kdc,o=org', are you sure?
-(type 'yes' to confirm)? \fByes\fR
-** service object 'cn=service-kdc,o=org' deleted.
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 17 \fRUsing \fBlist_service\fR
-.sp
-.LP
-The following is an example of the use of the \fBlist_service\fR command.
-
-.sp
-.in +2
-.nf
-# \fBkdb5_ldap_util -D cn=admin,o=org list_service\fR
-Password for "cn=admin,o=org": \fIpassword entered\fR
-cn=service-kdc,o=org
-cn=service-adm,o=org
-cn=service-pwd,o=org
-.fi
-.in -2
-.sp
-
-.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Volatile
-.TE
-
-.SH SEE ALSO
-\fBkinit\fR(1), \fBkadmin\fR(1M), \fBkdc.conf\fR(4), \fBattributes\fR(5)
diff --git a/usr/src/man/man1m/kdb5_util.1m b/usr/src/man/man1m/kdb5_util.1m
deleted file mode 100644
index 0ec8d80a48..0000000000
--- a/usr/src/man/man1m/kdb5_util.1m
+++ /dev/null
@@ -1,519 +0,0 @@
-'\" te
-.\" Copyright (c) 2001, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH KDB5_UTIL 1M "November 22, 2021"
-.SH NAME
-kdb5_util \- Kerberos Database maintenance utility
-.SH SYNOPSIS
-.nf
-\fB/usr/sbin/kdb5_util\fR [\fB-d\fR \fIdbname\fR] [\fB-f\fR \fIstashfile_name\fR]
- [\fB-k\fR \fImkeytype\fR] [\fB-m\fR ] [\fB-M\fR \fImkeyname\fR] [\fB-P\fR \fIpassword\fR] [\fB-r\fR \fIrealm\fR]
- [\fB-x\fR \fIdb_args\fR]... \fIcmd\fR
-.fi
-
-.SH DESCRIPTION
-The \fBkdb5_util\fR utility enables you to create, dump, load, and destroy the
-Kerberos V5 database. You can also use \fBkdb5_util\fR to create a stash file
-containing the Kerberos database master key.
-.SH OPTIONS
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-d\fR \fIdbname\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify the database name. \fB\&.db\fR is appended to whatever name is
-specified. You can specify an absolute path. If you do not specify the \fB-d\fR
-option, the default database name is \fB/var/krb5/principal\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR \fIstashfile_name\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify the stash file name. You can specify an absolute path.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-k\fR \fImkeytype\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify the master key type. Valid values are \fBdes3-cbc-sha1\fR,
-\fBdes-cbc-crc\fR, \fBdes-cbc-md5\fR, \fBdes-cbc-raw\fR,
-\fBarcfour-hmac-md5\fR, \fBarcfour-hmac-md5-exp\fR,
-\fBaes128-cts-hmac-sha1-96\fR, and \fBaes256-cts-hmac-sha1-96\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-m\fR\fR
-.ad
-.sp .6
-.RS 4n
-Enter the master key manually.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-M\fR \fImkeyname\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify the master key name.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-P\fR \fIpassword\fR\fR
-.ad
-.sp .6
-.RS 4n
-Use the specified \fIpassword\fR instead of the stash file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-r\fR \fIrealm\fR\fR
-.ad
-.sp .6
-.RS 4n
-Use \fIrealm\fR as the default database realm.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-x\fR \fIdb_args\fR\fR
-.ad
-.sp .6
-.RS 4n
-Pass database-specific arguments to \fBkadmin\fR. Supported arguments are for
-LDAP and the \fBBerkeley-db2\fR plug-in. These arguments are:
-.sp
-.ne 2
-.na
-\fB\fBbinddn\fR=\fIbinddn\fR\fR
-.ad
-.sp .6
-.RS 4n
-LDAP simple bind DN for authorization on the directory server. Overrides the
-\fBldap_kadmind_dn\fR parameter setting in \fBkrb5.conf\fR(4).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBbindpwd\fR=\fIbindpwd\fR\fR
-.ad
-.sp .6
-.RS 4n
-Bind password.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdbname\fR=\fIname\fR\fR
-.ad
-.sp .6
-.RS 4n
-For the \fBBerkeley-db2\fR plug-in, specifies a name for the Kerberos database.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnconns\fR=\fInum\fR\fR
-.ad
-.sp .6
-.RS 4n
-Maximum number of server connections.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBport\fR=\fInum\fR\fR
-.ad
-.sp .6
-.RS 4n
-Directory server connection port.
-.RE
-
-.RE
-
-.SH OPERANDS
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fB\fIcmd\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies whether to create, destroy, dump, or load the database, or to create
-a stash file.
-.sp
-You can specify the following commands:
-.sp
-.ne 2
-.na
-\fB\fBcreate\fR \fB-s\fR\fR
-.ad
-.sp .6
-.RS 4n
-Creates the database specified by the \fB-d\fR option. You will be prompted for
-the database master password. If you specify \fB-s\fR, a stash file is created
-as specified by the \fB-f\fR option. If you did not specify \fB-f\fR, the
-default stash file name is \fB/var/krb5/.k5.realm\fR. If you use the \fB-f\fR,
-\fB-k\fR, or \fB-M\fR options when you create a database, then you must use the
-same options when modifying or destroying the database.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdestroy\fR\fR
-.ad
-.sp .6
-.RS 4n
-Destroys the database specified by the \fB-d\fR option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBstash\fR\fR
-.ad
-.sp .6
-.RS 4n
-Creates a stash file. If \fB-f\fR was not specified, the default stash file
-name is \fB/var/krb5/.k5.realm\fR. You will be prompted for the master database
-password. This command is useful when you want to generate the stash file from
-the password.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdump\fR [\fB-old\fR] [\fB-b6\fR] [\fB-b7\fR] [\fB-ov\fR] [\fB-verbose\fR]
-[\fB-mkey_convert\fR] [\fB-new_mkey_file\fR \fImkey_file\fR] [\fB-rev\fR]
-[\fB-recurse\fR] [\fIfilename\fR [\fIprincipals\fR...]]\fR
-.ad
-.sp .6
-.RS 4n
-Dumps the current Kerberos and KADM5 database into an ASCII file. By default,
-the database is dumped in current format, "\fBkdb5_util load_dumpversion 5\fR".
-If \fIfilename\fR is not specified or is the string "-", the dump is sent to
-standard output. Options are as follows:
-.sp
-.ne 2
-.na
-\fB\fB-old\fR\fR
-.ad
-.sp .6
-.RS 4n
-Causes the dump to be in the Kerberos 5 Beta 5 and earlier dump format
-("\fBkdb5_edit load_dump version 2.0\fR").
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-b6\fR\fR
-.ad
-.sp .6
-.RS 4n
-Causes the dump to be in the Kerberos 5 Beta 6 format ("\fBkdb5_edit load_dump
-version 3.0\fR").
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-b7\fR\fR
-.ad
-.sp .6
-.RS 4n
-Causes the dump to be in the Kerberos 5 Beta 7 format ("\fBkdb5_util load_dump
-version 4\fR"). This was the dump format produced on releases prior to 1.2.2.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-ov\fR\fR
-.ad
-.sp .6
-.RS 4n
-Causes the dump to be in \fBovsec_adm_export\fR format.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-verbose\fR\fR
-.ad
-.sp .6
-.RS 4n
-Causes the name of each principal and policy to be displayed as it is dumped.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-mkey_convert\fR\fR
-.ad
-.sp .6
-.RS 4n
-Prompts for a new master key. This new master key will be used to re-encrypt
-the key data in the dumpfile. The key data in the database will not be changed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-new_mkey_file\fR \fImkey_file\fR\fR
-.ad
-.sp .6
-.RS 4n
-The filename of a stash file. The master key in this stash file will be used to
-re-encrypt the key data in the dumpfile. The key data in the database will not
-be changed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-rev\fR\fR
-.ad
-.sp .6
-.RS 4n
-Dumps in reverse order. This might recover principals that do not dump
-normally, in cases where database corruption has occurred.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-recurse\fR\fR
-.ad
-.sp .6
-.RS 4n
-Causes the dump to walk the database recursively (\fBbtree\fR only). This might
-recover principals that do not dump normally, in cases where database
-corruption has occurred. In cases of such corruption, this option will probably
-retrieve more principals than will the \fB-rev\fR option.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBload\fR [\fB-old\fR] [\fB-b6\fR] [\fB-b7\fR] [\fB-ov\fR] [\fB-hash\fR]
-[\fB-verbose\fR] [\fB-update\fR] \fIfilename\fR \fIdbname\fR
-[\fIadmin_dbname\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Loads a database dump from \fIfilename\fR into \fIdbname\fR. Unless the
-\fB-old\fR or \fB-b6\fR option is specified, the format of the dump file is
-detected automatically and handled appropriately. Unless the \fB-update\fR
-option is specified, \fBload\fR creates a new database containing only the
-principals in the dump file, overwriting the contents of any existing database.
-The \fB-old\fR option requires the database to be in the Kerberos 5 Beta 5 or
-earlier format ("\fBkdb5_edit load_dump version 2.0\fR").
-.sp
-.ne 2
-.na
-\fB\fB-b6\fR\fR
-.ad
-.sp .6
-.RS 4n
-Requires the database to be in the Kerberos 5 Beta 6 format ("\fBkdb5_edit
-load_dump version 3.0\fR").
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-b7\fR\fR
-.ad
-.sp .6
-.RS 4n
-Requires the database to be in the Kerberos 5 Beta 7 format ("\fBkdb5_util
-load_dump version 4\fR").
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-ov\fR\fR
-.ad
-.sp .6
-.RS 4n
-Requires the database to be in \fBovsec_adm_import\fR format. Must be used with
-the \fB-update\fR option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-hash\fR\fR
-.ad
-.sp .6
-.RS 4n
-Requires the database to be stored as a hash. If this option is not specified,
-the database will be stored as a \fBbtree\fR. This option is not recommended,
-as databases stored in hash format are known to corrupt data and lose
-principals.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-verbose\fR\fR
-.ad
-.sp .6
-.RS 4n
-Causes the name of each principal and policy to be displayed as it is dumped.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-update\fR\fR
-.ad
-.sp .6
-.RS 4n
-Records from the dump file are added to or updated in the existing database.
-Otherwise, a new database is created containing only what is in the dump file
-and the old one is destroyed upon successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIfilename\fR\fR
-.ad
-.sp .6
-.RS 4n
-Required argument that specifies a path to a file containing database dump.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIdbname\fR\fR
-.ad
-.sp .6
-.RS 4n
-Required argument that overrides the value specified on the command line or
-overrides the default.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIadmin_dbname\fR\fR
-.ad
-.sp .6
-.RS 4n
-Optional argument that is derived from \fIdbname\fR if not specified.
-.RE
-
-.RE
-
-.RE
-
-.SH EXAMPLES
-\fBExample 1 \fRCreating File that Contains Information about Two Principals
-.sp
-.LP
-The following example creates a file named \fBslavedata\fR that contains the
-information about two principals, \fBjdb@EXAMPLE.COM\fR and \fBpak@EXAMPLE.COM\fR.
-
-.sp
-.in +2
-.nf
-# /usr/krb5/bin/kdb5_util dump -verbose slavedata
-jdb@EXAMPLE.COM pak@EXAMPLE.COM
-.fi
-.in -2
-.sp
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/var/krb5/principal\fR\fR
-.ad
-.sp .6
-.RS 4n
-Kerberos principal database.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/krb5/principal.kadm5\fR\fR
-.ad
-.sp .6
-.RS 4n
-Kerberos administrative database. Contains policy information.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/krb5/principal.kadm5.lock\fR\fR
-.ad
-.sp .6
-.RS 4n
-Lock file for the Kerberos administrative database. This file works backwards
-from most other lock files (that is, \fBkadmin\fR exits with an error if this
-file does not exist).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/krb5/principal.ulog\fR\fR
-.ad
-.sp .6
-.RS 4n
-The update log file for incremental propagation.
-.RE
-
-.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-\fBkpasswd\fR(1), \fBkadmin\fR(1M), \fBkadmind\fR(1M),
-\fBkadmin.local\fR(1M), \fBkdb5_ldap_util\fR(1M), \fBkproplog\fR(1M),
-\fBkadm5.acl\fR(4), \fBkdc.conf\fR(4), \fBattributes\fR(5), \fBkerberos\fR(5)
diff --git a/usr/src/man/man1m/kdcmgr.1m b/usr/src/man/man1m/kdcmgr.1m
deleted file mode 100644
index a724972cfa..0000000000
--- a/usr/src/man/man1m/kdcmgr.1m
+++ /dev/null
@@ -1,411 +0,0 @@
-'\" te
-.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH KDCMGR 1M "Sep 19, 2007"
-.SH NAME
-kdcmgr \- set up a Kerberos Key Distribution Center (KDC)
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/kdcmgr\fR [\fB-a\fR \fIadmprincipal\fR] [\fB-e\fR \fIenctype\fR]
- [\fB-h\fR] [\fB-p\fR \fIpwfile\fR] [\fB-r\fR \fIrealm\fR] \fIsubcommand\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-Use the \fBkdcmgr\fR utility to do the following:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Configure a master Key Distribution Center (KDC) server.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Configure a slave KDC. This assumes that a master KDC has already been
-configured. The default propagation method configured is incremental
-propagation. See \fBkpropd\fR(1M).
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Specify a list of slave KDCs to configure service principals and create access
-control list for those slaves on the master KDC.
-.RE
-.sp
-.LP
-If you specify no options, \fBkdcmgr\fR prompts you for required information,
-including a password to generate the master key and a password for the
-administrative principal. When you specify sufficient options, you are still
-prompted for these passwords, unless you specified the \fB-p\fR \fIpwfile\fR
-option.
-.sp
-.LP
-The \fBkdcmgr\fR utility must be run as superuser or by someone who has the
-Primary Administrator role. The command must be run on the server from which it
-is invoked.
-.sp
-.LP
-Note that \fBkdcmgr\fR requires the user to enter sensitive information, such
-as the password used to generate the database's master key and the password for
-the administrative principal. Great care must be taken to ensure that the
-connection to the server is secured over the network, by using a protocol such
-as \fBssh\fR(1).
-.sp
-.LP
-You must also exercise great care when selecting the administrative and master
-key passwords. They should be derived from non-dictionary words and a long
-string of characters consisting of all of the following character classes:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-special characters (for example, !@#$%^&*)
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-numerals (0-9)
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-uppercase letters
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-lowercase letters
-.RE
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-a\fR \fIadmprincipal\fR\fR
-.ad
-.sp .6
-.RS 4n
-When creating a master KDC, specifies the administrative principal,
-\fIadmprincipal\fR, that will be created.
-.sp
-When creating a slave KDC, \fIadmprincipal\fR is used to authenticate as the
-administrative principal.
-.sp
-If you omit \fB-a\fR, the suggested default administrative principal name is
-the output of \fBlogname\fR(1) appended by \fB/admin\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-e\fR \fIenctype\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the encryption type to be used when creating the key for the master
-key, which is used to encrypt all principal keys in the database. The set of
-valid encryption types used here are described in \fBkrb5.conf\fR(4) under the
-\fBpermitted_enctypes\fR option. Note that the encryption type specified here
-must be supported on all KDCs or else they will not be able to decrypt any of
-the principal keys. Solaris 9 and earlier releases support only the
-\fBdes-cbc-crc\fR encryption type for the master key. Therefore, if any of the
-master or slave KDCs are of these older releases, then \fB-e\fR
-\fBdes-cbc-crc\fR would need to be specified on all KDCs configured with
-\fBkdcmgr\fR.
-.sp
-The default encryption type is \fBaes128-cts-hmac-sha1-96\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-h\fR\fR
-.ad
-.sp .6
-.RS 4n
-Displays usage information for \fBkdcmgr\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR \fIpwfile\fR\fR
-.ad
-.sp .6
-.RS 4n
-Provides the location of the password file that contains the password used to
-create the administrative principal and/or master key.
-.sp
-\fBWarning:\fR This option should be used with great care. Make sure that this
-\fIpwfile\fR is accessible only by a privileged user and on a local file
-system. Once the KDC has been configured, you should remove \fIpwfile\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-r\fR \fIrealm\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set the default realm for this server.
-.sp
-If the \fB-r\fR option is not specified, \fBkdcmgr\fR attempts to obtain the
-machine's local domain name by submitting the canonical form of the machine's
-host name to DNS and using the return value to derive the domain name. If
-successful, the domain name is converted to uppercase and proposed as the
-default realm name.
-.RE
-
-.SH SUBCOMMANDS
-.sp
-.LP
-The following subcommands are supported:
-.sp
-.ne 2
-.na
-\fB\fBcreate\fR [ \fImaster\fR ]\fR
-.ad
-.br
-.na
-\fB\fBcreate\fR [ \fB-m\fR \fImasterkdc\fR ] slave\fR
-.ad
-.sp .6
-.RS 4n
-Creates a KDC. If no option is specified, an attempt to create a master KDC is
-made.
-.sp
-.ne 2
-.na
-\fB\fBcreate\fR [ \fImaster\fR ]\fR
-.ad
-.sp .6
-.RS 4n
-Create a master KDC. Upon successful configuration the \fBkrb5kdc\fR(1M) and
-\fBkadmind\fR(1M) are enabled on the machine.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcreate\fR [ \fB-m\fR \fImasterkdc\fR ] slave\fR
-.ad
-.sp .6
-.RS 4n
-Configures a slave KDC. After configuration, the \fBkrb5kdc\fR(1M) and
-\fBkpropd\fR(1M) services are enabled on the machine.
-.sp
-\fImasterkdc\fR specifies the master KDC to authenticate and with which to
-perform administrative tasks. If the \fB-m\fR option is not specified, you are
-prompted for a master KDC host name.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdestroy\fR\fR
-.ad
-.sp .6
-.RS 4n
-Remove all Kerberos configuration and database files associated with the KDC
-server. A confirmation is required before these files are deleted.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBstatus\fR\fR
-.ad
-.sp .6
-.RS 4n
-Determines the role of the KDC, master or slave, and outputs this and the state
-of such associated processes as:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBkrb5kdc\fR(1M)
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBkadmind\fR(1M)
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBkpropd\fR(1M)
-.RE
-The subcommand also displays information on incremental propagation if the
-configuration has this feature enabled, as well as any issues with dependent
-files.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRSetting up a Master KDC
-.sp
-.LP
-The following command configures a master KDC with the administrative principal
-\fBuser1/admin\fR and with the realm name \fBEXAMPLE.COM\fR:
-
-.sp
-.in +2
-.nf
-$ \fBkdcmgr -a user1/admin -r EXAMPLE.COM create\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Note that a password will be required to assign to the newly created
-\fBuser1/admin\fR principal. The password for the master key will also need to
-be provided.
-
-.LP
-\fBExample 2 \fRSetting up a Slave KDC
-.sp
-.LP
-The following command configures a slave KDC, authenticates with the
-administrative principal \fBuser1/admin\fR, specifies \fBkdc1\fR as the master,
-and uses the \fBEXAMPLE.COM\fR realm name:
-
-.sp
-.in +2
-.nf
-$ \fBkdcmgr -a user1/admin -r EXAMPLE.COM create -m kdc1 slave\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Note that you must enter the correct password for \fBuser1/admin\fR and that
-the master KDC must already have been created before entering this command. The
-correct password for the master key is also required.
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/krb5/krb5.conf\fR\fR
-.ad
-.sp .6
-.RS 4n
-Main Kerberos configuration file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/krb5/kdc.conf\fR\fR
-.ad
-.sp .6
-.RS 4n
-KDC configuration, used by both master and slave servers.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/krb5/krb5.keytab\fR\fR
-.ad
-.sp .6
-.RS 4n
-Default location of the local host's service keys.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/krb5/kadm5.acl\fR\fR
-.ad
-.sp .6
-.RS 4n
-Kerberos administrative access control list (ACL).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/krb5/kadm5.keytab\fR\fR
-.ad
-.sp .6
-.RS 4n
-Service keys specific to \fBkadmind\fR(1M).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/krb5/principal\fR\fR
-.ad
-.sp .6
-.RS 4n
-Kerberos principal database.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/krb5/principal.kadm5\fR\fR
-.ad
-.sp .6
-.RS 4n
-Kerberos policy database.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/krb5/kpropd.acl\fR\fR
-.ad
-.sp .6
-.RS 4n
-Used by slaves to indicate from which server to receive updates.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability See below
-.TE
-
-.sp
-.LP
-The command line interface (CLI) is Uncommitted. The CLI output is Not an
-Interface.
-.SH SEE ALSO
-.sp
-.LP
-\fBlogname\fR(1), \fBssh\fR(1), \fBkadmin\fR(1M), \fBkadmind\fR(1M),
-\fBkdb5_util\fR(1M), \fBkdb5_ldap_util\fR(1M), \fBkpropd\fR(1M),
-\fBkrb5kdc\fR(1M), \fBping\fR(1M), \fBsvcadm\fR(1M), \fBkdc.conf\fR(4),
-\fBkrb5.conf\fR(4), \fBattributes\fR(5)
diff --git a/usr/src/man/man1m/kernel.1m b/usr/src/man/man1m/kernel.1m
deleted file mode 100644
index f67bb37af9..0000000000
--- a/usr/src/man/man1m/kernel.1m
+++ /dev/null
@@ -1,392 +0,0 @@
-'\" te
-.\" Copyright (c) 2006 Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH KERNEL 1M "Nov 27, 2007"
-.SH NAME
-kernel \- UNIX system executable file containing basic operating system
-services
-.SH SYNOPSIS
-.LP
-.nf
-\fBkernel-name\fR [\fB-asrvx\fR] [\fB-m \fIsmf_options\fR\fR] [\fB-i \fIaltinit\fR\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The operating system image, or kernel, is the collection of software comprising
-the image files (\fBunix\fR and \fBgenunix\fR) and the modules loaded at any
-instant in time. The system will not function without a kernel to control it.
-.sp
-.LP
-The kernel is loaded by the \fBboot\fR(1M) command in a machine-specific way.
-The kernel may be loaded from disk, \fBCD-ROM\fR, or DVD (\fBdiskfull boot\fR)
-or over the network (\fBdiskless boot\fR). In either case, the directories
-under \fB/platform\fR and \fB/kernel\fR must be readable and must contain
-executable code which is able to perform the required kernel service. If the
-\fB-a\fR flag is given, the user is able to supply different pathnames for the
-default locations of the kernel and modules. See \fBboot\fR(1M) for more
-information on loading a specific kernel.
-.sp
-.LP
-The \fBmoddir\fR variable contains a list of module directories separated by
-whitespace. moddir can be set in the \fB/etc/system\fR file. The minimal
-default is:
-.sp
-.in +2
-.nf
-/platform/platform-name/kernel /kernel /usr/kernel
-.fi
-.in -2
-
-.sp
-.LP
-This default can be supplemented by a specific platform. It is common for many
-SPARC systems to override the default path with:
-.sp
-.in +2
-.nf
-/platform/\fIplatform-name\fR/kernel:/platform/\fIhardware-class-name\fR\e
- /kernel:/kernel:/usr/kernel
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-where \fIplatform-name\fR can be found using the \fB-i\fR option of
-\fBuname\fR(1), and \fIhardware-class-name\fR can be found using the \fB-m\fR
-option of \fBuname\fR(1).
-.sp
-.LP
-The kernel configuration can be controlled using the \fB/etc/system\fR file
-(see \fBsystem\fR(4)).
-.sp
-.LP
-\fBgenunix\fR is the platform-independent component of the base kernel.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-a\fR\fR
-.ad
-.sp .6
-.RS 4n
-Asks the user for configuration information, such as where to find the system
-file, where to mount \fBroot\fR, and even override the name of the kernel
-itself. Default responses will be contained in square brackets ([ ]), and the
-user may simply enter RETURN to use the default response (note that RETURN is
-labeled ENTER on some keyboards). To help repair a damaged \fB/etc/system\fR
-file, enter \fB/dev/null\fR at the prompt that asks for the pathname of the
-system configuration file. See \fBsystem\fR(4).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-i\fR \fIaltinit\fR\fR
-.ad
-.sp .6
-.RS 4n
-Select an alternative executable to be the primordial process. \fIaltinit\fR
-must be a valid path to an executable. The default primordial process is
-\fBinit\fR(1M).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-m\fR \fIsmf_options\fR\fR
-.ad
-.sp .6
-.RS 4n
-The \fIsmf_options\fR include two categories of options to control booting
-behavior of the service management facility: recovery options and messages
-options.
-.sp
-Message options determine the type and amount of messages that \fBsmf\fR(5)
-displays during boot. Service options determine the services which are used to
-boot the system.
-.sp
-Recovery options
-.sp
-.ne 2
-.na
-\fB\fIdebug\fR\fR
-.ad
-.sp .6
-.RS 4n
-Prints standard per-service output and all \fBsvc.startd\fR messages to log.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fImilestone=[milestone]\fR\fR
-.ad
-.sp .6
-.RS 4n
-Boot with some SMF services temporarily disabled, as indicated by
-\fImilestone\fR. \fImilestone\fR can be "none", "single-user", "multi-user",
-"multi-user-server", or "all". See the \fBmilestone\fR subcommand of
-\fBsvcadm\fR(1M).
-.RE
-
-Messages options
-.sp
-.ne 2
-.na
-\fB\fIquiet\fR\fR
-.ad
-.sp .6
-.RS 4n
-Prints standard per-service output and error messages requiring administrative
-intervention.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIverbose\fR\fR
-.ad
-.sp .6
-.RS 4n
-Prints standard per-service output with more informational messages.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-r\fR\fR
-.ad
-.sp .6
-.RS 4n
-Reconfiguration boot. The system will probe all attached hardware devices and
-configure the logical namespace in \fB/dev\fR. See \fBadd_drv\fR(1M) and
-\fBrem_drv\fR(1M) for additional information about maintaining device drivers.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR\fR
-.ad
-.sp .6
-.RS 4n
-Boots only to init level 's'. See \fBinit\fR(1M).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.sp .6
-.RS 4n
-Boots with verbose messages enabled. If this flag is not given, the messages
-are still printed, but the output is directed to the system logfile. See
-\fBsyslogd\fR(1M).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-x\fR\fR
-.ad
-.sp .6
-.RS 4n
-Does not boot in clustered mode. This option only has an effect when a version
-of Sun Cluster software that supports this option has been installed.
-.RE
-
-.SH EXAMPLES
-.sp
-.LP
-See \fBboot\fR(1M) for examples and instructions on how to boot.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/kernel\fR\fR
-.ad
-.sp .6
-.RS 4n
-Contains kernel components common to all platforms within a particular
-instruction set that are needed for booting the system. of the core image file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/platform/\fIplatform-name\fR/kernel\fR\fR
-.ad
-.sp .6
-.RS 4n
-The platform-specific kernel components.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/platform/\fIhardware-class-name\fR\fR\fB/kernel\fR\fR
-.ad
-.sp .6
-.RS 4n
-The kernel components specific to this hardware class.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/kernel\fR\fR
-.ad
-.sp .6
-.RS 4n
-Contains kernel components common to all platforms within a particular
-instruction set.
-.RE
-
-.sp
-.LP
-The directories in this section can potentially contain the following
-subdirectories:
-.sp
-.ne 2
-.na
-\fBdrv\fR
-.ad
-.sp .6
-.RS 4n
-Loadable device drivers
-.RE
-
-.sp
-.ne 2
-.na
-\fBexec\fR
-.ad
-.sp .6
-.RS 4n
-The modules that execute programs stored in various file formats.
-.RE
-
-.sp
-.ne 2
-.na
-\fBfs\fR
-.ad
-.sp .6
-.RS 4n
-File system modules
-.RE
-
-.sp
-.ne 2
-.na
-\fBmisc\fR
-.ad
-.sp .6
-.RS 4n
-Miscellaneous system-related modules
-.RE
-
-.sp
-.ne 2
-.na
-\fBsched\fR
-.ad
-.sp .6
-.RS 4n
-Operating system schedulers
-.RE
-
-.sp
-.ne 2
-.na
-\fBstrmod\fR
-.ad
-.sp .6
-.RS 4n
-System V STREAMS loadable modules
-.RE
-
-.sp
-.ne 2
-.na
-\fBsys\fR
-.ad
-.sp .6
-.RS 4n
-Loadable system calls
-.RE
-
-.SS "SPARC"
-.sp
-.ne 2
-.na
-\fBcpu\fR
-.ad
-.sp .6
-.RS 4n
-Processor specific modules
-.RE
-
-.sp
-.ne 2
-.na
-\fBtod\fR
-.ad
-.sp .6
-.RS 4n
-Time-Of-Day hardware interface modules
-.RE
-
-.sp
-.LP
-As only 64-bit SPARC platforms are supported, all SPARC executable modules are
-contained within \fBsparcv9\fR directories in the directories listed above.
-.SS "x86"
-.sp
-.ne 2
-.na
-\fBmach\fR
-.ad
-.sp .6
-.RS 4n
-x86 hardware support
-.RE
-
-.sp
-.LP
-Modules comprising the 32-bit x86 kernel are contained in the above
-directories, with the 64-bit x86 kernel components contained within \fBamd64\fR
-subdirectories.
-.SH SEE ALSO
-.sp
-.LP
-\fBuname\fR(1), \fBisainfo\fR(1), \fBadd_drv\fR(1M), \fBboot\fR(1M),
-\fBinit\fR(1M), \fBkadb\fR(1M), \fBrem_drv\fR(1M), \fBsavecore\fR(1M),
-\fBsvc.startd\fR(1M), \fBsvcadm\fR(1M), \fBsyslogd\fR(1M), \fBsystem\fR(4),
-\fBattributes\fR(5), \fBsmf\fR(5), \fBdevfs\fR(7FS)
-.SS "SPARC Only"
-.sp
-.LP
-\fBmonitor\fR(1M)
-.SH DIAGNOSTICS
-.sp
-.LP
-The kernel gives various warnings and error messages. If the kernel detects an
-unrecoverable fault, it will panic or halt.
-.SH NOTES
-.sp
-.LP
-Reconfiguration boot will, by design, not remove \fB/dev\fR entries for some
-classes of devices that have been physically removed from the system.
diff --git a/usr/src/man/man1m/keyserv.1m b/usr/src/man/man1m/keyserv.1m
deleted file mode 100644
index 7de20b8faa..0000000000
--- a/usr/src/man/man1m/keyserv.1m
+++ /dev/null
@@ -1,169 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T
-.\" Copyright (C) 2005, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH KEYSERV 1M "Feb 25, 2017"
-.SH NAME
-keyserv \- server for storing private encryption keys
-.SH SYNOPSIS
-.LP
-.nf
-\fBkeyserv\fR [\fB-c\fR] [\fB-d\fR | \fB-e\fR] [\fB-D\fR] [\fB-n\fR] [\fB-s\fR \fIsizespec\fR]
-.fi
-
-.SH DESCRIPTION
-.LP
-\fBkeyserv\fR is a daemon that is used for storing the private encryption keys
-of each user logged into the system. These encryption keys are used for
-accessing secure network services such as secure \fBNFS\fR.
-.sp
-.LP
-Normally, root's key is read from the file \fB/etc/.rootkey\fR when the daemon
-is started. This is useful during power-fail reboots when no one is around to
-type a password.
-.sp
-.LP
-\fBkeyserv\fR does not start up if the system does not have a secure \fBrpc\fR
-domain configured. Set up the domain name by using the
-\fB/usr/bin/domainname\fR command. Usually the
-\fBsvc:/system/identity:domain\fR service reads the domain from
-\fB/etc/defaultdomain\fR. Invoking the \fBdomainname\fR command without
-arguments tells you if you have a domain set up.
-.sp
-.LP
-The \fB/etc/default/keyserv\fR file contains the following default parameter
-settings. See .
-.sp
-.ne 2
-.na
-\fB\fBENABLE_NOBODY_KEYS\fR\fR
-.ad
-.RS 22n
-Specifies whether default keys for \fBnobody\fR are used.
-\fBENABLE_NOBODY_KEYS=NO\fR is equivalent to the \fB-d\fR command-line option.
-The default value for \fBENABLE_NOBODY_KEYS\fR is \fBYES\fR.
-.RE
-
-.SH OPTIONS
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-c\fR\fR
-.ad
-.RS 15n
-Do not use disk caches. This option overrides any \fB-s\fR option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-D\fR\fR
-.ad
-.RS 15n
-Run in debugging mode and log all requests to \fBkeyserv\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-d\fR\fR
-.ad
-.RS 15n
-Disable the use of default keys for \fBnobody\fR. See .
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-e\fR\fR
-.ad
-.RS 15n
-Enable the use of default keys for \fBnobody\fR. This is the default behavior.
-See .
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR\fR
-.ad
-.RS 15n
-Root's secret key is not read from \fB/etc/.rootkey\fR. Instead, \fBkeyserv\fR
-prompts the user for the password to decrypt root's key stored in the
-\fBpublickey\fR database and then stores the decrypted key in
-\fB/etc/.rootkey\fR for future use. This option is useful if the
-\fB/etc/.rootkey\fR file ever gets out of date or corrupted.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR \fIsizespec\fR\fR
-.ad
-.RS 15n
-Specify the size of the extended Diffie-Hellman common key disk caches. The
-\fIsizespec\fR can be one of the following forms:
-.sp
-.ne 2
-.na
-\fB\fImechtype\fR=\fBsize\fR\fR
-.ad
-.RS 17n
-\fBsize\fR is an integer specifying the maximum number of entries in the cache,
-or an integer immediately followed by the letter \fIM\fR, denoting the maximum
-size in MB.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsize\fR\fR
-.ad
-.RS 17n
-This form of \fIsizespec\fR applies to all caches.
-.RE
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/etc/.rootkey\fR\fR
-.ad
-.RS 24n
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/default/keyserv\fR\fR
-.ad
-.RS 24n
-Contains default settings. You can use command-line options to override these
-settings.
-.RE
-
-.SH SEE ALSO
-.LP
-\fBkeylogin\fR(1), \fBsvcs\fR(1), \fBkeylogout\fR(1),
-\fBsvcadm\fR(1M), \fBpublickey\fR(4), \fBattributes\fR(5), \fBsmf\fR(5)
-.SH NOTES
-.LP
-The \fBkeyserv\fR service is managed by the service management facility,
-\fBsmf\fR(5), under the service identifier:
-.sp
-.in +2
-.nf
-svc:/network/rpc/keyserv:default
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Administrative actions on this service, such as enabling, disabling, or
-requesting restart, can be performed using \fBsvcadm\fR(1M). The service's
-status can be queried using the \fBsvcs\fR(1) command.
diff --git a/usr/src/man/man1m/killall.1m b/usr/src/man/man1m/killall.1m
deleted file mode 100644
index 2f41c9da65..0000000000
--- a/usr/src/man/man1m/killall.1m
+++ /dev/null
@@ -1,36 +0,0 @@
-'\" te
-.\" Copyright (c) 1996, Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH KILLALL 1M "Sep 14, 1992"
-.SH NAME
-killall \- kill all active processes
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/killall\fR [\fIsignal\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBkillall\fR is used by \fBshutdown\fR(1M) to kill all active processes not
-directly related to the shutdown procedure.
-.sp
-.LP
-\fBkillall\fR terminates all processes with open files so that the mounted file
-systems will be unbusied and can be unmounted.
-.sp
-.LP
-\fBkillall\fR sends \fIsignal\fR (see \fBkill\fR(1)) to the active processes.
-If no \fIsignal\fR is specified, a default of \fB15\fR is used.
-.sp
-.LP
-The \fBkillall\fR command can be run only by the super-user.
-.SH SEE ALSO
-.sp
-.LP
-\fBkill\fR(1), \fBps\fR(1), \fBfuser\fR(1M), \fBshutdown\fR(1M),
-\fBsignal\fR(3C), \fBattributes\fR(5)
diff --git a/usr/src/man/man1m/kprop.1m b/usr/src/man/man1m/kprop.1m
deleted file mode 100644
index 2db594c81a..0000000000
--- a/usr/src/man/man1m/kprop.1m
+++ /dev/null
@@ -1,166 +0,0 @@
-'\" te
-.\" Copyright 1987, 1989 by the Student Information Processing Board of the Massachusetts Institute of Technology. For copying and distribution information, please see the file kerberosv5/mit-sipb-copyright.h.
-.\" Portions Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH KPROP 1M "Oct 29, 2015"
-.SH NAME
-kprop \- Kerberos database propagation program
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/krb5/kprop\fR [\fB-d\fR] [\fB-f\fR \fIfile\fR] [\fB-p\fR \fIport-number\fR]
- [\fB-r\fR \fIrealm\fR] [\fB-s\fR \fIkeytab\fR] [\fIhost\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBkprop\fR is a command-line utility used for propagating a Kerberos database
-from a master \fBKDC\fR to a slave \fBKDC\fR. This command must be run on the
-master \fBKDC\fR. See the \fISolaris System Administration Guide, Vol. 6\fR on
-how to set up periodic propagation between the master \fBKDC\fR and slave
-\fBKDC\fRs.
-.sp
-.LP
-To propagate a Kerberos database, the following conditions must be met:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The slave \fBKDC\fRs must have an \fB/etc/krb5/kpropd.acl\fR file that contains
-the principals for the master \fBKDC\fR and all the slave \fBKDC\fRs.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-A keytab containing a host principal entry must exist on each slave \fBKDC\fR.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The database to be propagated must be dumped to a file using
-\fBkdb5_util\fR(1M).
-.RE
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-d\fR\fR
-.ad
-.RS 18n
-Enable debug mode. Default is debug mode disabled.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR \fIfile\fR\fR
-.ad
-.RS 18n
-File to be sent to the slave \fBKDC\fR. Default is the
-\fB/var/krb5/slave_datatrans\fR file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR \fIport-number\fR\fR
-.ad
-.RS 18n
-Propagate \fIport-number\fR. Default is port \fB754\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-r\fR \fIrealm\fR\fR
-.ad
-.RS 18n
-Realm where propagation will occur. Default \fIrealm\fR is the local realm.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR \fIkeytab\fR\fR
-.ad
-.RS 18n
-Location of the keytab. Default location is \fB/etc/krb5/krb5.keytab\fR.
-.RE
-
-.SH OPERANDS
-.sp
-.LP
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fB\fIhost\fR\fR
-.ad
-.RS 8n
-Name of the slave \fBKDC\fR.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRPropagating the Kerberos Database
-.sp
-.LP
-The following example propagates the Kerberos database from the
-\fB/tmp/slave_data\fR file to the slave \fBKDC\fR \fBlondon\fR. The machine
-\fBlondon\fR must have a host principal keytab entry and the \fBkpropd.acl\fR
-file must contain an entry for the all the \fBKDC\fRs.
-
-.sp
-.in +2
-.nf
-# kprop -f /tmp/slave_data london
-.fi
-.in -2
-.sp
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/krb5/kpropd.acl\fR\fR
-.ad
-.RS 29n
-List of principals of all the KDCs; resides on each slave KDC.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/krb5/krb5.keytab\fR\fR
-.ad
-.RS 29n
-Keytab for Kerberos clients.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/krb5/slave_datatrans\fR\fR
-.ad
-.RS 29n
-Kerberos database propagated to the KDC slaves.
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBkpasswd\fR(1), \fBsvcs\fR(1), \fBinetadm\fR(1M),
-\fBinetd\fR(1M), \fBkadmind\fR(1M), \fBkadmin.local\fR(1M),
-\fBkdb5_util\fR(1M), \fBsvcadm\fR(1M), \fBkadm5.acl\fR(4), \fBkdc.conf\fR(4),
-\fBattributes\fR(5), \fBkerberos\fR(5), \fBsmf\fR(5)
-.sp
-.LP
-\fI\fR
diff --git a/usr/src/man/man1m/kpropd.1m b/usr/src/man/man1m/kpropd.1m
deleted file mode 100644
index 0279b6d380..0000000000
--- a/usr/src/man/man1m/kpropd.1m
+++ /dev/null
@@ -1,249 +0,0 @@
-'\" te
-.\" Copyright 1987, 1989 by the Student Information Processing Board of the Massachusetts Institute of Technology. For copying and distribution information, please see the file kerberosv5/mit-sipb-copyright.h.
-.\" Portions Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH KPROPD 1M "Jul 11, 2005"
-.SH NAME
-kpropd \- Kerberos propagation daemon for slave KDCs
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/krb5/kpropd\fR [\fB-d\fR] [\fB-f\fR \fItemp_dbfile\fR] [\fB-F\fR \fIdbfile\fR]
- [\fB-p\fR \fIkdb_util\fR] [\fB-P\fR \fIport_number\fR] [\fB-r\fR \fIrealm\fR]
- [\fB-s\fR \fIsrv_tabfile\fR] [\fB-S\fR] [\fB-a\fR \fIacl_file\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBkpropd\fR command runs on the slave KDC server. It listens for update
-requests made by \fBkprop\fR(1M) from the master KDC and periodically requests
-incremental updates from the master KDC.
-.sp
-.LP
-When the slave receives a kprop request from the master, \fBkpropd\fR copies
-principal data to a temporary text file. Next, \fBkpropd\fR invokes
-\fBkdb5_util\fR(1M) (unless a different database utility is selected) to load
-the text file in database format.
-.sp
-.LP
-When the slave periodically requests incremental updates, \fBkpropd\fR update
-its \fBprincipal.ulog\fR file with any updates from the master.
-\fBkproplog\fR(1M) can be used to view a summary of the update entry log on the
-slave KDC.
-.sp
-.LP
-kpropd is not configured for incremental database propagation by default. These
-settings can be changed in the \fBkdc.conf\fR(4) file:
-.sp
-.ne 2
-.na
-\fB\fBsunw_dbprop_enable = [true | false]\fR\fR
-.ad
-.sp .6
-.RS 4n
-Enables or disables incremental database propagation. Default is \fBfalse\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsunw_dbprop_slave_poll = N[s, m, h]\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies how often the slave KDC polls for any updates that the master might
-have. Default is \fB2m\fR (two minutes).
-.RE
-
-.sp
-.LP
-The \fBkiprop/\fI<hostname>\fR@\fI<REALM>\fR\fR principal must exist in the
-slave's \fBkeytab\fR file to enable the master to authenticate incremental
-propagation requests from the slave. In this syntax, \fI<hostname>\fR is the
-slave KDC's host name and \fI<REALM>\fR is the realm in which the slave KDC
-resides.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-d\fR\fR
-.ad
-.RS 18n
-Enable debug mode. Default is debug mode disabled.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR \fItemp_dbfile\fR\fR
-.ad
-.RS 18n
-The location of the slave's temporary principal database file. Default is
-\fB/var/krb5/from_master\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-F\fR \fIdbfile\fR\fR
-.ad
-.RS 18n
-The location of the slave's principal database file. Default is
-\fB/var/krb5/principal\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR \fIkdb_util\fR\fR
-.ad
-.RS 18n
-The location of the Kerberos database utility used for loading principal
-databases. Default is \fB/usr/sbin/kdb5_util\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-P\fR \fIport_number\fR\fR
-.ad
-.RS 18n
-Specifies the port number on which \fBkpropd\fR will listen. Default is 754
-(service name: \fBkrb5_prop\fR).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-r\fR \fIrealm\fR\fR
-.ad
-.RS 18n
-Specifies from which Kerberos realm kpropd will receive information. Default is
-specified in \fB/etc/krb5/krb5.conf\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR \fIsrv_tabfile\fR\fR
-.ad
-.RS 18n
-The location of the service table file used to authenticate the \fBkpropd\fR
-daemon.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-S\fR\fR
-.ad
-.RS 18n
-Run the daemon in standalone mode, instead of having \fBinetd\fR listen for
-requests. Default is non-standalone mode.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-a\fR \fIacl_file\fR\fR
-.ad
-.RS 18n
-The location of the \fBkpropd\fR's access control list to verify if this server
-can run the \fBkpropd\fR daemon. The file contains a list of principal name(s)
-that will be receiving updates. Default is \fB/etc/krb5/kpropd.acl\fR.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/var/krb5/principal\fR\fR
-.ad
-.RS 28n
-Kerberos principal database.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/krb5/principal.ulog\fR\fR
-.ad
-.RS 28n
-The update log file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/krb5/kdc.conf\fR\fR
-.ad
-.RS 28n
-KDC configuration information.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/krb5/kpropd.acl\fR\fR
-.ad
-.RS 28n
-List of principals of all the KDCs; resides on each slave KDC.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/krb5/from_master\fR\fR
-.ad
-.RS 28n
-Temporary file used by kpropd before loading this to the principal database.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBkdb5_util\fR(1M), \fBkprop\fR(1M), \fBkproplog\fR(1M), \fBkdc.conf\fR(4),
-\fBkrb5.conf\fR(4), \fBattributes\fR(5), \fBkerberos\fR(5)
-.SH NOTES
-.sp
-.LP
-The \fBkprop\fR service is managed by the service management facility,
-\fBsmf\fR(5), under the service identifier:
-.sp
-.in +2
-.nf
-svc:/network/security/krb5_prop:default
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Administrative actions on this service, such as enabling, disabling, or
-requesting restart, can be performed using \fBsvcadm\fR(1M). Responsibility for
-initiating and restarting this service is delegated to \fBinetd\fR(1M). Use
-\fBinetadm\fR(1M) to make configuration changes and to view configuration
-information for this service. The service's status can be queried using the
-\fBsvcs\fR(1) command.
diff --git a/usr/src/man/man1m/kproplog.1m b/usr/src/man/man1m/kproplog.1m
deleted file mode 100644
index ab362ae0c6..0000000000
--- a/usr/src/man/man1m/kproplog.1m
+++ /dev/null
@@ -1,126 +0,0 @@
-'\" te
-.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH KPROPLOG 1M "Oct 29, 2015"
-.SH NAME
-kproplog \- display the contents of the Kerberos principal update log
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/kproplog\fR [\fB-h\fR | \fB-e\fR \fInum\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBkproplog\fR displays the contents of the Kerberos principal update log
-to standard output. This command can be used to keep track of the incremental
-updates to the principal database, which is enabled by default. The
-\fB/var/krb5/principal.ulog\fR file contains the update log maintained by the
-\fBkadmind\fR(1M) process on the master KDC server and the \fBkpropd\fR(1M)
-process on the slave KDC servers. When updates occur, they are logged to this
-file. Subsequently any KDC slave configured for incremental updates will
-request the current data from the master KDC and update their
-\fBprincipal.ulog\fR file with any updates returned.
-.sp
-.LP
-The \fBkproplog\fR command can only be run on a KDC server by someone with
-privileges comparable to the superuser. It will display update entries for that
-server only.
-.sp
-.LP
-If no options are specified, the summary of the update log is displayed. If
-invoked on the master, all of the update entries are also displayed. When
-invoked on a slave KDC server, only a summary of the updates are displayed,
-which includes the serial number of the last update received and the associated
-time stamp of the last update.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-h\fR\fR
-.ad
-.RS 11n
-Display a summary of the update log. This information includes the database
-version number, state of the database, the number of updates in the log, the
-time stamp of the first and last update, and the version number of the first
-and last update entry.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-e\fR\ \fInum\fR\fR
-.ad
-.RS 11n
-Display the last \fInum\fR update entries in the log. This is useful when
-debugging synchronization between KDC servers.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.RS 11n
-Display individual attributes per update. An example of the output generated
-for one entry:
-.sp
-.in +2
-.nf
-Update Entry
- Update serial # : 4
- Update operation : Add
- Update principal : test@EXAMPLE.COM
- Update size : 424
- Update committed : True
- Update time stamp : Fri Feb 20 23:37:42 2004
- Attributes changed : 6
- Principal
- Key data
- Password last changed
- Modifying principal
- Modification time
- TL data
-.fi
-.in -2
-
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/var/krb5/principal.ulog\fR\fR
-.ad
-.RS 28n
-The update log file for incremental propagation.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBkpasswd\fR(1), \fBkadmin\fR(1M), \fBkadmind\fR(1M),
-\fBkdb5_util\fR(1M), \fBkprop\fR(1M), \fBkpropd\fR(1M), \fBkadm5.acl\fR(4),
-\fBkdc.conf\fR(4), \fBattributes\fR(5), \fBkerberos\fR(5)
diff --git a/usr/src/man/man1m/krb5kdc.1m b/usr/src/man/man1m/krb5kdc.1m
deleted file mode 100644
index 2b2f4bd017..0000000000
--- a/usr/src/man/man1m/krb5kdc.1m
+++ /dev/null
@@ -1,242 +0,0 @@
-'\" te
-.\" Copyright 1987, 1989 by the Student Information Processing Board of the Massachusetts Institute of Technology. For copying and distribution information, please see the file kerberosv5/mit-sipb-copyright.h.
-.\" Portions Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH KRB5KDC 1M "Oct 29, 2015"
-.SH NAME
-krb5kdc \- KDC daemon
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/krb5/krb5kdc\fR [\fB-d\fR \fIdbpath\fR] [\fB-r\fR \fIrealm\fR] [\fB-m\fR]
- [\fB-k\fR \fImasterenctype\fR] [\fB-M\fR \fImasterkeyname\fR]
- [\fB-p\fR \fIport\fR] [\fB-n\fR] [\fB-x\fR \fIdb_args\fR]...
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBkrb5kdc\fR is the daemon that runs on the master and slave \fBKDC\fRs to
-process the Kerberos tickets. For Kerberos to function properly, \fBkrb5kdc\fR
-must be running on at least one \fBKDC\fR that the Kerberos clients can access.
-Prior to running \fBkrb5kdc\fR, you must initialize the Kerberos database using
-\fBkdb5_util\fR(1M). See the \fI\fR for information regarding how to set up
-\fBKDC\fRs and initialize the Kerberos database.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-d\fR \fIdbpath\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify the path to the database; default value is \fB/var/krb5\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-k\fR \fImasterenctype\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify the encryption type for encrypting the database. The default value is
-\fBdes-cbc-crc\fR. \fBdes3-cbc-sha1\fR, \fBarcfour-hmac-md5\fR,
-\fBarcfour-hmac-md5-exp\fR, \fBaes128-cts-hmac-sha1-96\fR, and
-\fBaes256-cts-hmac-sha1-96\fR are also valid.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-m\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify that the master key for the database is to be entered manually.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-M\fR \fImasterkeyname\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify the principal to retrieve the master Key for the database.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify that \fBkrb5kdc\fR should not detach from the terminal.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR \fIport\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify the port that will be used by the \fBKDC\fR to listen for incoming
-requests.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-r\fR \fIrealm\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify the realm name; default is the local realm name.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-x\fR \fIdb_args\fR\fR
-.ad
-.sp .6
-.RS 4n
-Pass database-specific arguments to \fBkadmin\fR. Supported arguments are for
-the LDAP plug-in. These arguments are:
-.sp
-.ne 2
-.na
-\fB\fBbinddn\fR=\fIbinddn\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the DN of the object used by the KDC server to bind to the LDAP
-server. This object should have the rights to read the realm container,
-principal container and the subtree that is referenced by the realm. Overrides
-the \fBldap_kdc_dn\fR parameter setting in \fBkrb5.conf\fR(4).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBbindpwd\fR=\fIbindpwd\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the password for the above-mentioned \fIbinddn\fR. It is recommended
-not to use this option. Instead, the password can be stashed using the
-\fBstashsrvpw\fR command of \fBkdb5_ldap_util\fR(1M).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnconns\fR=\fInum\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the number of connections to be maintained per LDAP server.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBhost\fR=\fIldapuri\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies, by an LDAP URI, the LDAP server to which to connect.
-.RE
-
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/var/krb5/principal.db\fR\fR
-.ad
-.sp .6
-.RS 4n
-Kerberos principal database.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/krb5/principal.kadm5\fR\fR
-.ad
-.sp .6
-.RS 4n
-Kerberos administrative database. This file contains policy information.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/krb5/principal.kadm5.lock\fR\fR
-.ad
-.sp .6
-.RS 4n
-Kerberos administrative database lock file. This file works backwards from most
-other lock files (that is, \fBkadmin\fR will exit with an error if this file
-does \fInot\fR exist).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/krb5/kdc.conf\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBKDC\fR configuration file. This file is read at startup.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/krb5/kpropd.acl\fR\fR
-.ad
-.sp .6
-.RS 4n
-File that defines the access control list for propagating the Kerberos database
-using \fBkprop\fR.
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBkill\fR(1), \fBkpasswd\fR(1), \fBkadmind\fR(1M),
-\fBkadmin.local\fR(1M), \fBkdb5_util\fR(1M), \fBkdb5_ldap_util\fR(1M),
-\fBlogadm\fR(1M), \fBkrb5.conf\fR(4), \fBattributes\fR(5), \fBkrb5envvar\fR(5),
-\fBkerberos\fR(5),
-.sp
-.LP
-\fI\fR
-.SH NOTES
-.sp
-.LP
-The following signal has the specified effect when sent to the server process
-using the \fBkill\fR(1)command:
-.sp
-.ne 2
-.na
-\fB\fBSIGHUP\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBkrb5kdc\fR closes and re-opens log files that it directly opens. This can be
-useful for external log-rotation utilities such as \fBlogadm\fR(1M). If this
-method is used for log file rotation, set the \fBkrb5.conf\fR(4)
-\fBkdc_rotate\fR period relation to \fBnever\fR.
-.RE
-
diff --git a/usr/src/man/man1m/ksslcfg.1m b/usr/src/man/man1m/ksslcfg.1m
deleted file mode 100644
index efe6124d87..0000000000
--- a/usr/src/man/man1m/ksslcfg.1m
+++ /dev/null
@@ -1,409 +0,0 @@
-'\" te
-.\" Copyright (c) 2005, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH KSSLCFG 1M "November 22, 2021"
-.SH NAME
-ksslcfg \- enable and configure SMF instance of Kernel SSL
-.SH SYNOPSIS
-.nf
-\fBksslcfg\fR create \fB-f\fR pkcs11 \fB-T\fR \fItoken_label\fR \fB-C\fR \fIcertificate_label\fR
- [\fB-d\fR \fIsofttoken_directory\fR]
- [\fB-p\fR \fIpassword_file\fR [\fB-u\fR \fIusername\fR]]
- [\fB-h\fR \fIca_certchain_file\fR] [\fB-c\fR \fIciphersuites\fR]
- [\fB-t\fR \fIssl_session_cache_timeout\fR]
- [\fB-z\fR \fIssl_session_cache_size\fR] [\fB-v\fR] \fB-x\fR \fIproxy_port\fR [\fIhost\fR] \fIssl_port\fR
-.fi
-
-.LP
-.nf
-\fBksslcfg\fR create \fB-f\fR pkcs12 \fB-i\fR \fIcert_and_key_pk12file\fR
- [\fB-p\fR \fIpassword_file\fR [\fB-u\fR \fIusername\fR]]
- [\fB-c\fR \fIciphersuites\fR] [\fB-t\fR \fIssl_session_cache_timeout\fR]
- [\fB-z\fR \fIssl_session_cache_size\fR] [\fB-v\fR] \fB-x\fR \fIproxy_port\fR [\fIhost\fR] \fIssl_port\fR
-.fi
-
-.LP
-.nf
-\fBksslcfg\fR create \fB-f\fR pem \fB-i\fR \fIcert_and_key_pemfile\fR
- [\fB-p\fR \fIpassword_file\fR [\fB-u\fR \fIusername\fR]]
- [\fB-c\fR \fIciphersuites\fR] [\fB-t\fR \fIssl_session_cache_timeout\fR]
- [\fB-z\fR \fIssl_session_cache_size\fR] [\fB-v\fR] \fB-x\fR \fIproxy_port\fR [\fIhost\fR] \fIssl_port\fR
-.fi
-
-.LP
-.nf
-\fBksslcfg\fR delete [\fB-v\fR] [\fIhost\fR] \fIssl_port\fR
-.fi
-
-.LP
-.nf
-\fBksslcfg\fR \fB-V\fR
-.fi
-
-.LP
-.nf
-\fBksslcfg\fR \fB-?\fR
-.fi
-
-.SH DESCRIPTION
-\fBksslcfg\fR manages \fBsmf\fR(5) instances for the Kernel SSL proxy module.
-An SSL-enabled web server can use the services of its Kernel SSL proxy to
-improve the performance of the HTTPS packets processing. It does so by creating
-an instance of the Kernel SSL service, specifying the SSL proxy port and
-parameters, and by listening on the proxy port.
-.sp
-.LP
-The \fBcreate\fR subcommand creates an instance and enables the service for the
-given address and SSL port.
-.sp
-.LP
-The \fBdelete\fR subcommand disables the service for the given address and
-port, if it is enabled, and deletes the instance from the SMF repository.
-.sp
-.LP
-\fBksslcfg\fR can be run as root or by other users assigned to the Network
-Security profile. See \fBrbac\fR(5) and \fBuser_attr\fR(4). You must run
-\fBksslcfg\fR to configure your Kernel SSL proxy before you start your
-application.
-.sp
-.LP
-\fBksslcfg\fR allows you to specify an \fIssl_port\fR operand, described under
-OPERANDS, and, with the \fB-x\fR option, a \fIproxy_port\fR value. When
-specified for use with the Kernel SSL proxy, these values cannot also be
-configured for the Solaris Network Cache and Acceleration (NCA) feature. See
-\fBnca\fR(1) for a description of the NCA feature.
-.sp
-.LP
-The Fault Managed Resource Identifier (FMRI) for the kernel SSL proxy instances
-is \fBsvc://network/ssl/proxy\fR. \fBksslcfg\fR creates an instance of that
-service unique to the combination of host and SSL port. Instance FMRIs for
-particular proxy entries can be found with \fBsvcs\fR(1) and used for
-dependencies of other services.
-.SH OPTIONS
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-c\fR \fIciphersuites\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set of ciphers a client is allowed to negotiate in a sorted order. The
-supported SSL version3 and TLS ciphers are listed below. Note that the names
-are case-insensitive.
-.sp
-.in +2
-.nf
-rsa_rc4_128_sha
-rsa_rc4_128_md5
-rsa_aes_256_cbc_sha
-rsa_aes_128_cbc_sha
-rsa_3des_ede_cbc_sha
-rsa_des_cbc_sha
-.fi
-.in -2
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR \fIkey_format\fR\fR
-.ad
-.sp .6
-.RS 4n
-Uses the certificate/key format specified in \fIkey_format\fR. The supported
-options are \fBpkcs11\fR, \fBpkcs12\fR, and \fBpem\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-i\fR \fIkey_and_certificate_file\fR\fR
-.ad
-.sp .6
-.RS 4n
-When \fBpkcs12\fR or \fBpem\fR is specified with the \fB-f\fR option, reads a
-key and a certificate of the web server from \fIkey_and_certificate_file\fR.
-This file can also contain any intermediate CA certificates that form the
-certificate chain to the root CA for the server certificate. These certificates
-must follow the server certificate in the file and the order must be bottom up:
-lowest level CA certificate followed by the next higher level CA certificate,
-and so on.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-C\fR \fIcertificate_label\fR\fR
-.ad
-.sp .6
-.RS 4n
-PKCS#11 can store multiple certificates in single token. This option enables
-you to specify a single certificate, identified by \fIcertificate_label\fR.
-This label must match the \fBCKA_LABEL\fR on the certificate object in the
-token specified by \fB-T\fR. This option is to be used only with \fB-f\fR
-\fBpkcs11\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-d\fR \fIsofttoken_directory\fR\fR
-.ad
-.sp .6
-.RS 4n
-This option is applicable only with the \fBpkcs11\fR key format, when the token
-label is the Sun Software PKCS#11 softtoken. Use this option to override the
-default location of the PKCS#11 softtoken directory (\fB$HOME/.sunw\fR). See
-\fBpkcs11_softtoken\fR(5).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-h\fR \fIca_certchain_file\fR\fR
-.ad
-.sp .6
-.RS 4n
-When \fBpkcs11\fR is specified with the \fB-f\fR option, reads a set of
-intermediate CA certificates that form the certificate chain to the root CA for
-the server certificate (specified with the \fB-C\fR option), from
-\fIca_certchain_file\fR. The file must be in PEM format.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR \fIpassword_file\fR\fR
-.ad
-.sp .6
-.RS 4n
-Obtains the password used to encrypt the private key from \fIpassword_file\fR.
-When using the \fBpkcs11\fR option (see \fB-f\fR, above), the password is used
-to authenticate the user to the PKCS #11 token.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-t\fR \fIssl_session_cache_timeout\fR\fR
-.ad
-.sp .6
-.RS 4n
-The timeout value, in seconds, for an SSL session. It corresponds to
-\fBSSL3SessionTimeout\fR of the Sun ONE web server configuration or
-\fBSSLSessionCacheTimeout\fR of \fBmod_ssl\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-T\fR \fItoken_label\fR\fR
-.ad
-.sp .6
-.RS 4n
-When \fBpkcs11\fR is specified with \fB-f\fR, uses the PKCS#11 token specified
-in \fItoken_label\fR. Use \fBcryptoadm list\fR \fB-v\fR to display all PKCS#11
-tokens available.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-u\fR \fIusername\fR\fR
-.ad
-.sp .6
-.RS 4n
-The username of the user who owns the password file. If omitted, the system
-will try to read the password file as root.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.sp .6
-.RS 4n
-Verbose mode.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-V\fR\fR
-.ad
-.sp .6
-.RS 4n
-Displays the version.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-x\fR \fIproxy_port\fR\fR
-.ad
-.sp .6
-.RS 4n
-The SSL proxy port. The port number is designated exclusively for clear-text
-HTTP communication between the web server and the kernel SSL proxy module. No
-external HTTP packets are delivered to this port.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-z\fR \fIssl_session_cache_size\fR\fR
-.ad
-.sp .6
-.RS 4n
-The maximum number of SSL sessions that can be cached. It corresponds to
-\fBSSLCacheEntries\fR of the Sun ONE web server configuration. When this option
-is not specified, the default is 5000 entries.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-?\fR \fI\fR\fR
-.ad
-.sp .6
-.RS 4n
-Displays the usage of the command.
-.RE
-
-.SH OPERANDS
-.ne 2
-.na
-\fB\fB[\fIhost\fR] [\fIssl_port\fR]\fR\fR
-.ad
-.RS 21n
-The address and the port of the web server for which the kernel SSL entry is
-created. If \fIhost\fR is omitted, the entry will be used for all requests that
-arrived at the \fIssl_port\fR, regardless of the destination address. Both a
-host name and an IP address are acceptable forms for \fIhost\fR. \fIssl_port\fR
-is required. Typically, this has a value of 443.
-.RE
-
-.SH EXAMPLES
-\fBExample 1 \fRCreate and Enable a Kernel SSL Instance
-.sp
-.LP
-The following command creates and enables a Kernel SSL instance using a
-certificate and a key in PKCS#11 format.
-
-.sp
-.in +2
-.nf
-# \fBksslcfg create -f pkcs11 -T "Sun Software PKCS#11 softtoken" \e
--C "Server-Cert" -p /some/directory/password -u webservd \e
--x 8080 www.example.com 443\fR
-
-% \fBsvcs svc:/network/ssl/proxy\fR
-STATE STIME FMRI
-online Sep_27 svc:/network/ssl/proxy:kssl-www-example-com-443
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRCreate and Enable a Default Instance for All Addresses
-.sp
-.LP
-The following command creates and enables a default instance for all addresses
-from a certificate and key in a \fBpkcs#12\fR file.
-
-.sp
-.in +2
-.nf
-# \fBksslcfg create -x 8888 -f pkcs12 -i /some/directory/keypair.p12 \e
- -p /some/directory/password -u webservd 443\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRCreate and Enable an Instance with Specific Cipher Suites
-.sp
-.LP
-The following command creates and enables an instance with specific cipher
-suites.
-
-.sp
-.in +2
-.nf
-# \fBksslcfg create -x 8080 -f pem \e
--i /some/directory/keypair.pem -p /some/directory/password \e
--c "rsa_rc4_128_md5,rsa_rc4_128_sha" \e
-209.249.116.195 443\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 4 \fRDisable and Delete an Instance
-.sp
-.LP
-The following command disables and deletes an instance.
-
-.sp
-.in +2
-.nf
-# \fBksslcfg delete www.example.com 443\fR
-.fi
-.in -2
-.sp
-
-.SH EXIT STATUS
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 6n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB>0\fR\fR
-.ad
-.RS 6n
-An error occurred.
-.RE
-
-.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability See below.
-.TE
-
-.sp
-.LP
-Command line options are Evolving; command output is Unstable. The FMRI service
-name (\fBsvc://network/ssl/proxy\fR) is Unstable, as is the FMRI instance's
-name format. The utility name is Stable.
-.SH SEE ALSO
-\fBnca\fR(1), \fBsvcprop\fR(1), \fBsvcs\fR(1), \fBcryptoadm\fR(1M),
-\fBsvcadm\fR(1M), \fBsvccfg\fR(1M), \fBuser_attr\fR(4), \fBattributes\fR(5),
-\fBpkcs11_softtoken\fR(5), \fBrbac\fR(5), \fBsmf\fR(5)
-.SH NOTES
-\fBksslcfg\fR \fBcreate\fR without an host argument creates an \fBINADDR_ANY\fR
-\fBsmf\fR instance. \fBksslcfg\fR \fBdelete\fR without an host argument deletes
-only the \fBINADDR_ANY\fR instance. \fBksslcfg\fR \fBdelete\fR needs a host
-argument to delete any non-\fBINADDR_ANY\fR instance.
-.sp
-.LP
-On a system with \fBzones\fR(5) installed, the \fBksslcfg\fR command can be
-used only in the global zone at this time.
diff --git a/usr/src/man/man1m/kstat.1m b/usr/src/man/man1m/kstat.1m
deleted file mode 100644
index 8983df7266..0000000000
--- a/usr/src/man/man1m/kstat.1m
+++ /dev/null
@@ -1,382 +0,0 @@
-'\" te
-.\" Copyright (c) 2000, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
-.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH KSTAT 1M "April 9, 2016"
-.SH NAME
-kstat \- display kernel statistics
-.SH SYNOPSIS
-.LP
-.nf
-\fBkstat\fR [\fB-Cjlpq\fR] [\fB-T\fR u | d ] [\fB-c\fR \fIclass\fR] [\fB-m\fR \fImodule\fR]
- [\fB-i\fR \fIinstance\fR] [\fB-n\fR \fIname\fR] [\fB-s\fR \fIstatistic\fR]
- [interval [count]]
-.fi
-
-.LP
-.nf
-\fBkstat\fR [\fB-Cjlpq\fR] [\fB-T\fR u | d ] [\fB-c\fR \fIclass\fR]
- [\fImodule\fR[:\fIinstance\fR[:\fIname\fR[:\fIstatistic\fR]]]]...
- [interval [count]]
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBkstat\fR utility examines the available kernel statistics, or kstats, on
-the system and reports those statistics which match the criteria specified on
-the command line. Each matching statistic is printed with its module, instance,
-and name fields, as well as its actual value.
-.sp
-.LP
-Kernel statistics may be published by various kernel subsystems, such as
-drivers or loadable modules; each kstat has a module field that denotes its
-publisher. Since each module might have countable entities (such as multiple
-disks associated with the \fBsd\fR(7D) driver) for which it wishes to report
-statistics, the kstat also has an instance field to index the statistics for
-each entity; kstat instances are numbered starting from zero. Finally, the
-kstat is given a name unique within its module.
-.sp
-.LP
-Each kstat may be a special kstat type, an array of name-value pairs, or raw
-data. In the name-value case, each reported value is given a label, which we
-refer to as the statistic. Known raw and special kstats are given statistic
-labels for each of their values by \fBkstat\fR; thus, all published values can
-be referenced as \fImodule\fR:\fIinstance\fR:\fIname\fR:\fIstatistic\fR.
-.sp
-.LP
-When invoked without any module operands or options, kstat will match all
-defined statistics on the system. Example invocations are provided below. All
-times are displayed as fractional seconds since system boot.
-.SH OPTIONS
-.LP
-The tests specified by the following options are logically ANDed, and all
-matching kstats will be selected. A regular expression containing shell
-metacharacters must be protected from the shell by enclosing it with the
-appropriate quotes.
-.sp
-.LP
-The argument for the \fB-c\fR, \fB-i\fR, \fB-m\fR, \fB-n\fR, and \fB-s\fR
-options may be specified as a shell glob pattern, or a regular expression
-enclosed in '/' characters.
-.sp
-.ne 2
-.na
-\fB\fB-C\fR\fR
-.ad
-.RS 16n
-Displays output in parsable format with a colon as separator.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-c\fR \fIclass\fR\fR
-.ad
-.RS 16n
-Displays only kstats that match the specified class. \fIclass\fR is a
-kernel-defined string which classifies the "type" of the kstat.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-i\fR \fIinstance\fR\fR
-.ad
-.RS 16n
-Displays only kstats that match the specified instance.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-j\fR\fR
-.ad
-.RS 16n
-Displays output in JSON format.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR\fR
-.ad
-.RS 16n
-Lists matching kstat names without displaying values.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-m\fR \fImodule\fR\fR
-.ad
-.RS 16n
-Displays only kstats that match the specified module.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR \fIname\fR\fR
-.ad
-.RS 16n
-Displays only kstats that match the specified name.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR\fR
-.ad
-.RS 16n
-Displays output in parsable format. All example output in this document is
-given in this format. If this option is not specified, \fBkstat\fR produces
-output in a human-readable, table format.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-q\fR\fR
-.ad
-.RS 16n
-Displays no output, but return appropriate exit status for matches against
-given criteria.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR \fIstatistic\fR\fR
-.ad
-.RS 16n
-Displays only kstats that match the specified statistic.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-T\fR d | u\fR
-.ad
-.RS 16n
-Displays a time stamp before each statistics block, either in \fBdate\fR(1)
-format (\fBd\fR) or as an alphanumeric representation of the value returned by
-\fBtime\fR(2) (\fBu\fR).
-.RE
-
-.SH OPERANDS
-.LP
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fB\fImodule\fR:\fIinstance\fR:\fIname\fR:\fIstatistic\fR\fR
-.ad
-.sp .6
-.RS 4n
-Alternate method of specifying module, instance, name, and statistic as
-described above. Each of the module, instance, name, or statistic specifiers
-may be a shell glob pattern or a regular expression enclosed by '/'
-characters. It is possible to use both specifier types within a single operand.
-Leaving a specifier empty is equivalent to using the '*' glob pattern for that
-specifier.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIinterval\fR\fR
-.ad
-.sp .6
-.RS 4n
-The number of seconds between reports.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIcount\fR\fR
-.ad
-.sp .6
-.RS 4n
-The number of reports to be printed.
-.RE
-
-.SH EXAMPLES
-.LP
-In the following examples, all the command lines in a block produce the same
-output, as shown immediately below. The exact statistics and values will of
-course vary from machine to machine.
-.LP
-\fBExample 1 \fRUsing the \fBkstat\fR Command
-.sp
-.in +2
-.nf
-example$ \fBkstat -p -m unix -i 0 -n system_misc -s 'avenrun*'\fR
-example$ \fBkstat -p -s 'avenrun*'\fR
-example$ \fBkstat -p 'unix:0:system_misc:avenrun*'\fR
-example$ \fBkstat -p ':::avenrun*'\fR
-example$ \fBkstat -p ':::/^avenrun_[0-9]+min$/'\fR
-
-unix:0:system_misc:avenrun_15min 3
-unix:0:system_misc:avenrun_1min 4
-unix:0:system_misc:avenrun_5min 2
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRUsing the \fBkstat\fR Command
-.sp
-.in +2
-.nf
-example$ \fBkstat -p -m cpu_stat -s 'intr*'\fR
-example$ \fBkstat -p cpu_stat:::/^intr/\fR
-
-cpu_stat:0:cpu_stat0:intr 29682330
-cpu_stat:0:cpu_stat0:intrblk 87
-cpu_stat:0:cpu_stat0:intrthread 15054222
-cpu_stat:1:cpu_stat1:intr 426073
-cpu_stat:1:cpu_stat1:intrblk 51
-cpu_stat:1:cpu_stat1:intrthread 289668
-cpu_stat:2:cpu_stat2:intr 134160
-cpu_stat:2:cpu_stat2:intrblk 0
-cpu_stat:2:cpu_stat2:intrthread 131
-cpu_stat:3:cpu_stat3:intr 196566
-cpu_stat:3:cpu_stat3:intrblk 30
-cpu_stat:3:cpu_stat3:intrthread 59626
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRUsing the \fBkstat\fR Command
-.sp
-.in +2
-.nf
-example$ \fBkstat -p :::state ':::avenrun*'\fR
-example$ \fBkstat -p :::state :::/^avenrun/\fR
-
-cpu_info:0:cpu_info0:state on-line
-cpu_info:1:cpu_info1:state on-line
-cpu_info:2:cpu_info2:state on-line
-cpu_info:3:cpu_info3:state on-line
-unix:0:system_misc:avenrun_15min 4
-unix:0:system_misc:avenrun_1min 10
-unix:0:system_misc:avenrun_5min 3
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 4 \fRUsing the \fBkstat\fR Command
-.sp
-.in +2
-.nf
-example$ \fBkstat -p 'unix:0:system_misc:avenrun*' 1 3\fR
-unix:0:system_misc:avenrun_15min 15
-unix:0:system_misc:avenrun_1min 11
-unix:0:system_misc:avenrun_5min 21
-
-unix:0:system_misc:avenrun_15min 15
-unix:0:system_misc:avenrun_1min 11
-unix:0:system_misc:avenrun_5min 21
-
-unix:0:system_misc:avenrun_15min 15
-unix:0:system_misc:avenrun_1min 11
-unix:0:system_misc:avenrun_5min 21
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 5 \fRUsing the \fBkstat\fR Command
-.sp
-.in +2
-.nf
-example$ \fBkstat -p -T d 'unix:0:system_misc:avenrun*' 5 2\fR
-Thu Jul 22 19:39:50 1999
-unix:0:system_misc:avenrun_15min 12
-unix:0:system_misc:avenrun_1min 0
-unix:0:system_misc:avenrun_5min 11
-
-Thu Jul 22 19:39:55 1999
-unix:0:system_misc:avenrun_15min 12
-unix:0:system_misc:avenrun_1min 0
-unix:0:system_misc:avenrun_5min 11
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 6 \fRUsing the \fBkstat\fR Command
-.sp
-.in +2
-.nf
-example$ \fBkstat -p -T u 'unix:0:system_misc:avenrun*'\fR
-932668656
-unix:0:system_misc:avenrun_15min 14
-unix:0:system_misc:avenrun_1min 5
-unix:0:system_misc:avenrun_5min 18
-.fi
-.in -2
-.sp
-
-.SH EXIT STATUS
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 5n
-One or more statistics were matched.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB1\fR\fR
-.ad
-.RS 5n
-No statistics were matched.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB2\fR\fR
-.ad
-.RS 5n
-Invalid command line options were specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB3\fR\fR
-.ad
-.RS 5n
-A fatal error occurred.
-.RE
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/dev/kstat\fR\fR
-.ad
-.RS 14n
-kernel statistics driver
-.RE
-
-.SH SEE ALSO
-.LP
-\fBdate\fR(1), \fBsh\fR(1), \fBtime\fR(2), \fBgmatch\fR(3GEN),
-\fBkstat\fR(3KSTAT), \fBattributes\fR(5), \fBregex\fR(5), \fBkstat\fR(7D),
-\fBsd\fR(7D), \fBkstat\fR(9S)
-.SH NOTES
-.LP
-If the pattern argument contains glob or RE metacharacters which are also
-shell metacharacters, it will be necessary to enclose the pattern with
-appropriate shell quotes.
diff --git a/usr/src/man/man1m/ktkt_warnd.1m b/usr/src/man/man1m/ktkt_warnd.1m
deleted file mode 100644
index 4605b6570e..0000000000
--- a/usr/src/man/man1m/ktkt_warnd.1m
+++ /dev/null
@@ -1,78 +0,0 @@
-'\" te
-.\" Copyright 1987, 1989 by the Student Information Processing Board of the Massachusetts Institute of Technology. For copying and distribution information, please see the file kerberosv5/mit-sipb-copyright.h.
-.\" Portions Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH KTKT_WARND 1M "Mar 21, 2005"
-.SH NAME
-ktkt_warnd \- Kerberos warning daemon
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/krb5/ktkt_warnd\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBktkt_warnd\fR is a daemon on Kerberos clients that can warn users when their
-Kerberos tickets are about to expire or renew the tickets before they expire.
-It is invoked by \fBinetd\fR when a ticket-granting ticket (TGT) is obtained
-for the first time, such as after using the \fBkinit\fR command.
-\fBktkt_warnd\fR can be configured through the \fB/etc/krb5/warn.conf\fR file
-on the client. In \fBwarn.conf\fR, you can specify that you be supplied notice,
-through \fBsyslog\fR or terminal or mail, of ticket expiration or to renew the
-TGT.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/krb5/warn.conf\fR\fR
-.ad
-.RS 23n
-Kerberos warning configuration file
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBsvcs\fR(1), \fBinetadm\fR(1M), \fBinetd\fR(1M), \fBsvcadm\fR(1M),
-\fBwarn.conf\fR(4), \fBattributes\fR(5), \fBkerberos\fR(5), \fBsmf\fR(5)
-.SH NOTES
-.sp
-.LP
-The \fBktkt_warnd\fR service is managed by the service management facility,
-\fBsmf\fR(5), under the service identifier:
-.sp
-.in +2
-.nf
-svc:/network/security/ktkt_warn:default
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Administrative actions on this service, such as enabling, disabling, or
-requesting restart, can be performed using \fBsvcadm\fR(1M). Responsibility for
-initiating and restarting this service is delegated to \fBinetd\fR(1M). Use
-\fBinetadm\fR(1M) to make configuration changes and to view configuration
-information for this service. The service's status can be queried using the
-\fBsvcs\fR(1) command.
diff --git a/usr/src/man/man1m/labelit.1m b/usr/src/man/man1m/labelit.1m
deleted file mode 100644
index 914d56fe52..0000000000
--- a/usr/src/man/man1m/labelit.1m
+++ /dev/null
@@ -1,152 +0,0 @@
-'\" te
-.\" Copyright (c) 2000, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH LABELIT 1M "Oct 31, 2000"
-.SH NAME
-labelit \- list or provide labels for file systems
-.SH SYNOPSIS
-.LP
-.nf
-\fBlabelit\fR [\fB-F\fR \fIFSType\fR] [\fB-V\fR] [\fB-o\fR \fIFSType-specific-options\fR] \fIspecial\fR
- [\fIoperands\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBlabelit\fR utility is used to write or display labels on unmounted disk
-file systems.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-F\fR \fIFSType\fR\fR
-.ad
-.RS 13n
-Specify the \fIFSType\fR on which to operate. The \fIFSType\fR should either be
-specified here or be determinable from \fB/etc/vfstab\fR by matching the
-\fIspecial\fR with an entry in the table. If no matching entry is found, the
-default file system type specified in \fB/etc/default/fs\fR will be used.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-V\fR\fR
-.ad
-.RS 13n
-Echo complete command line. This option may be used to verify and validate the
-command line. Additional information obtained using a \fB/etc/vfstab\fR lookup
-is included in the output. The command is not executed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-o\fR\fR
-.ad
-.RS 13n
-Specify \fIFSType\fR-specific options. See the manual page for the
-\fBlabelit\fR module specific to the file system type.
-.RE
-
-.SH OPERANDS
-.sp
-.LP
-The following operands are supported. If no operands are specified,
-\fBlabelit\fR will display the value of the labels.
-.sp
-.ne 2
-.na
-\fB\fIspecial\fR\fR
-.ad
-.RS 12n
-The disk partition (for example, \fB/dev/rdsk/c0t3d0s6\fR). The device may not
-be on a remote machine.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIoperands\fR\fR
-.ad
-.RS 12n
-\fIFSType\fR-specific operands. Consult the manual page of the
-\fIFSType\fR-specific \fBlabelit\fR command for detailed descriptions.
-.RE
-
-.SH USAGE
-.sp
-.LP
-See \fBlargefile\fR(5) for the description of the behavior of \fBlabelit\fR
-when encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
-.SH EXIT STATUS
-.sp
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 12n
-Write or display of labels was successful.
-.RE
-
-.sp
-.ne 2
-.na
-\fBnon-zero\fR
-.ad
-.RS 12n
-An error occurred.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/vfstab\fR\fR
-.ad
-.RS 19n
-List of default parameters for each file system.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/default/fs\fR\fR
-.ad
-.RS 19n
-Default local file system type. Default values can be set for the following
-flags in \fB/etc/default/fs\fR. For example:
-.sp
-.ne 2
-.na
-\fB\fBLOCAL=ufs\fR\fR
-.ad
-.br
-.na
-\fB\fBLOCAL\fR\fR
-.ad
-.RS 13n
-The default partition for a command if no \fIFSType\fR is specified.
-.RE
-
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBlabelit_hsfs\fR(1M), \fBlabelit_udfs\fR(1M), \fBlabelit_ufs\fR(1M),
-\fBvolcopy\fR(1M), \fBvfstab\fR(4), \fBattributes\fR(5), \fBlargefile\fR(5)
-.SH NOTES
-.sp
-.LP
-This utility may not be supported for all \fIFSTypes\fR.
diff --git a/usr/src/man/man1m/labelit_hsfs.1m b/usr/src/man/man1m/labelit_hsfs.1m
deleted file mode 100644
index 0ae31154b2..0000000000
--- a/usr/src/man/man1m/labelit_hsfs.1m
+++ /dev/null
@@ -1,133 +0,0 @@
-'\" te
-.\" Copyright (c) 1992, Sun Microsystems, Inc.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH LABELIT_HSFS 1M "Mar 20, 1992"
-.SH NAME
-labelit_hsfs \- provide and print labels for hsfs file systems
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/labelit\fR \fB-F\fR hsfs [\fIgeneric_options\fR]
- [\fB-o\fR \fIspecific_options\fR] \fIspecial\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBlabelit\fR can be used to provide labels for unmounted CD-ROM images
-(CD-ROMs may not be labeled, as they are read-only media).
-.sp
-.LP
-\fIgeneric_options\fR are options supported by the generic \fBlabelit\fR
-command.
-.sp
-.LP
-If no \fIspecific_options\fR are specified, \fBlabelit\fR prints the current
-value of all label fields.
-.sp
-.LP
-The \fIspecial\fR name should be the physical disk section (for example,
-\fB/dev/dsk/c0d0s6\fR).
-.SH OPTIONS
-.sp
-.ne 2
-.na
-\fB\fB-o\fR\fR
-.ad
-.RS 6n
-Use one or more of the following \fIname\fR=\fIvalue\fR pairs separated by
-commas (with no intervening spaces) to specify values for specific label
-fields. According to the ISO 9660 specification, only certain sets of
-characters may be used to fill in these labels. Thus, ``d-characters'' below
-refers to the characters `A' through `Z', the digits `0' through `9', and the
-`_' (underscore) character. ``a-characters'' below refers to `A' through `Z',
-`0' through `9', space, and the following characters: !"%&'()*+,-./:;<=>?_.
-.sp
-.ne 2
-.na
-\fB\fBabsfile=\fR\fR
-.ad
-.RS 13n
-Abstract file identifier, d-characters, 37 characters maximum.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBapplid=\fR\fR
-.ad
-.RS 13n
-Application identifier, d-characters, 128 characters maximum.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBbibfile=\fR\fR
-.ad
-.RS 13n
-Bibliographic file identifier, d-characters, 37 characters maximum.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcopyfile=\fR\fR
-.ad
-.RS 13n
-Copyright file identifier, d-characters, 128 maximum.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBprepid=\fR\fR
-.ad
-.RS 13n
-Data preparer identifier, d-characters, 128 maximum.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpubid=\fR\fR
-.ad
-.RS 13n
-Publisher identifier, d-characters, 128 maximum.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsysid=\fR\fR
-.ad
-.RS 13n
-System identifier, a-characters, 32 maximum.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBvolid=\fR\fR
-.ad
-.RS 13n
-Volume identifier, d-characters, 32 maximum.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBvolsetid=\fR\fR
-.ad
-.RS 13n
-Volume set identifier, d-characters, 128 maximum.
-.RE
-
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBlabelit\fR(1M), \fBvolcopy\fR(1M), \fBattributes\fR(5)
diff --git a/usr/src/man/man1m/labelit_udfs.1m b/usr/src/man/man1m/labelit_udfs.1m
deleted file mode 100644
index 41f6449b7a..0000000000
--- a/usr/src/man/man1m/labelit_udfs.1m
+++ /dev/null
@@ -1,145 +0,0 @@
-'\" te
-.\" Copyright (c) 2000 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH LABELIT_UDFS 1M "Oct 31, 2000"
-.SH NAME
-labelit_udfs \- provide and print labels for udf file systems
-.SH SYNOPSIS
-.LP
-.nf
-\fBlabelit\fR \fB-F \fR udfs [\fIgeneric_options\fR] [\fB-o\fR \fIspecific_options\fR] \fIspecial\fR
- [\fIfsname\fR \fIvolume\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBlabelit\fR command writes labels on an unmounted disk that contains a
-universal disk file (\fBudf\fR) system. These labels can be used to identify
-volumes.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fIgeneric_options\fR\fR
-.ad
-.RS 23n
-Specify \fIgeneric_options\fR supported by the generic \fBlabelit\fR command.
-See \fBlabelit\fR(1M) for descriptions of supported options.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-o\fR \fIspecific_options\fR\fR
-.ad
-.RS 23n
-Specify udfs-file-system-specific options in a comma-separated list with no
-intervening spaces. The following \fIspecific_options\fR are available:
-.sp
-.ne 2
-.na
-\fB\fBlvinfo1=\fR\fIstring\fR\fR
-.ad
-.RS 18n
-Specify information to be inserted in the \fBLVInfo1\fR field of the
-Implementation Use Volume Descriptor. Information in \fBLVInfo1\fR is generally
-used to identify the person creating the file system. The maximum length of the
-string specified is 35 bytes.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBlvinfo2=\fR\fIstring\fR\fR
-.ad
-.RS 18n
-Specify information to be inserted into the \fBLVInfo2\fR field of the
-Implementation Use Volume Descriptor. Information in \fBLVInfo2\fR is generally
-used to identify the organization responsible for creating the file system. The
-maximum length of the string specified is 35 bytes.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBlvinfo3=\fR\fIstring\fR\fR
-.ad
-.RS 18n
-Specify information to be inserted into the \fBLVInfo3\fR field of the
-Implementation Use Volume Descriptor. Information in \fBLVInfo3\fR is generally
-used to identify the contact information for the medium. The maximum length of
-the string specified is 35 bytes.
-.RE
-
-.RE
-
-.SH OPERANDS
-.sp
-.LP
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fB\fIspecial\fR\fR
-.ad
-.RS 11n
-Specify \fIspecial\fR as the physical disk slice, for example,
-\fB/dev/rdsk/c0t0d0s6\fR. The device can not be on a remote machine.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIfsname\fR\fR
-.ad
-.RS 11n
-Specify \fIfsname\fR as the mount point, (for example, \fBroot\fR, \fBu1\fR,
-and so forth), of the file system.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIvolume\fR\fR
-.ad
-.RS 11n
-Specify \fIvolume\fR as the physical volume name.
-.RE
-
-.sp
-.LP
-If none of the options (\fIfsname\fR, \fIvolume\fR, \fIspecific_options\fR) is
-specified, \fBlabelit\fR prints the current values of \fIfsname\fR,
-\fIvolume\fR, \fBLVInfo1\fR, \fBLVInfo2\fR and \fBLVInfo3\fR.
-.SH EXIT STATUS
-.sp
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB0\fR
-.ad
-.RS 12n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fBnon-zero\fR
-.ad
-.RS 12n
-An error occurred.
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBlabelit\fR(1M), \fBattributes\fR(5)
diff --git a/usr/src/man/man1m/labelit_ufs.1m b/usr/src/man/man1m/labelit_ufs.1m
deleted file mode 100644
index 9111096be5..0000000000
--- a/usr/src/man/man1m/labelit_ufs.1m
+++ /dev/null
@@ -1,99 +0,0 @@
-'\" te
-.\" Copyright (c) 2003 Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH LABELIT_UFS 1M "Apr 15, 2003"
-.SH NAME
-labelit_ufs \- provide and print labels for ufs file systems
-.SH SYNOPSIS
-.LP
-.nf
-\fBlabelit\fR \fB-F\fR ufs [\fIgeneric_options\fR] \fIspecial\fR [\fIfsname\fR \fIvolume\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBlabelit\fR is used to write labels on unmounted disk file systems. Such
-labels may be used to uniquely identify volumes and are used by volume-oriented
-programs such as \fBvolcopy\fR(1M).
-.SH OPTIONS
-.sp
-.LP
-The following option is supported:
-.sp
-.ne 2
-.na
-\fB\fIgeneric_options\fR\fR
-.ad
-.RS 19n
-options supported by the generic \fBlabelit\fR command. See
-\fBlabelit\fR(1M).
-.RE
-
-.SH OPERANDS
-.sp
-.LP
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fB\fIspecial\fR\fR
-.ad
-.RS 11n
-name should be the physical disk section (for example, \fB/dev/dsk/c0d0s6\fR).
-The device may not be on a remote machine.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIfsname\fR\fR
-.ad
-.RS 11n
-represents the mount point (for example, \fBroot\fR, \fBu1\fR, and so on) of
-the file system.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIvolume\fR\fR
-.ad
-.RS 11n
-may be used to represent the physical volume name.
-.RE
-
-.sp
-.LP
-If \fIfsname\fR and \fIvolume\fR are not specified, \fBlabelit\fR prints the
-current values of these labels. Both \fIfsname\fR and \fIvolume\fR are
-limited to six or fewer characters.
-.SH EXIT STATUS
-.sp
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 12n
-Write or display of labels was successful.
-.RE
-
-.sp
-.ne 2
-.na
-\fBnon-zero\fR
-.ad
-.RS 12n
-An error occurred.
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBlabelit\fR(1M), \fBvolcopy\fR(1M), \fBattributes\fR(5), \fBufs\fR(7FS)
diff --git a/usr/src/man/man1m/latencytop.1m b/usr/src/man/man1m/latencytop.1m
deleted file mode 100644
index e0c7e7ee88..0000000000
--- a/usr/src/man/man1m/latencytop.1m
+++ /dev/null
@@ -1,303 +0,0 @@
-'\" te
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
-.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH LATENCYTOP 1M "Sep 29, 2009"
-.SH NAME
-latencytop \- report latency-related statistics in system and in applications
-.SH SYNOPSIS
-.LP
-.nf
-\fBlatencytop\fR [\fB-t\fR \fIinterval\fR] [\fB-o\fR \fIlog_file\fR] [\fB-k\fR \fIlog_level\fR]
- [\fB-f\fR [no]\fIfeature\fR,...] [\fB-l\fR \fIlog_interval\fR] [\fB-h\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-LatencyTOP is an observability tool that reports statistics about latencies in
-the system and in applications. The tool reports statistics about where and
-what kind of latencies are happening in the system and in the applications that
-are running on the system. The statistics then can be used to improve
-performance throughput of applications and system, as you remove the identified
-latencies.
-.sp
-.LP
-The tool analyzes system activity periodically and displays the data in the
-output window. Two types of latencies are tracked: an LWP going in and out of
-sleep and an LWP spinning order to acquire a synchronization object. The tool
-uses the Solaris DTrace framework to collect the statistics corresponding to
-these two scenarios of inactivity of the system and application LWPs.
-.sp
-.LP
-The output window is divided into two sections. An upper part displays the
-system-wide statistics, while the lower part displays statistics about
-individual processes. The user can navigate the list of processes (using the
-left- and right-arrow keys) and select the list they are interested in. The
-tool will then display statistics about that selected process in the lower part
-of the window. If the t or T key is pressed, the tool displays the LWP-specific
-view of that selected process. The t or T key can be used to toggle between the
-process-view and the thread-view.
-.sp
-.LP
-During execution, a user can force a refresh of the analysis by pressing the r
-or R key. The interval time is restored to the default or to a specified value
-(if -t was used). To quit the application, the user must press the q or Q key.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB-f\fR, \fB--feature\fR [\fBno\fR]\fIfeature1\fR,[\fBno\fR]\fIfeature2\fR,...
-.ad
-.sp .6
-.RS 4n
-Enables/disables features in LatencyTOP. Features can be only one of the
-following:
-.sp
-.ne 2
-.na
-[\fBno\fR]\fBfilter\fR
-.ad
-.sp .6
-.RS 4n
-Filter large interruptible latencies, for example, sleep. The default is
-\fBoff\fR.
-.RE
-
-.sp
-.ne 2
-.na
-[\fBno\fR]\fBsched\fR
-.ad
-.sp .6
-.RS 4n
-Monitors \fBsched\fR (PID=0). The default is \fBoff\fR.
-.RE
-
-.sp
-.ne 2
-.na
-[\fBno\fR]\fBsobj\fR
-.ad
-.sp .6
-.RS 4n
-Monitors synchronize objects. The default is \fBon\fR.
-.RE
-
-.sp
-.ne 2
-.na
-[\fBno\fR]\fBlow\fR
-.ad
-.sp .6
-.RS 4n
-Lower overhead by sampling small latencies. Enabling this feature will lower
-CPU utilization by estimating small latencies statistically. Use it for heavy
-workloads such as a very busy web server. The default is \fBoff\fR.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-h\fR\fR
-.ad
-.sp .6
-.RS 4n
-Displays the command's usage.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-k\fR \fIlog_level\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the level of logging in the log file. Valid values are:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 5n
-\fBnone\fR (default)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB1\fR\fR
-.ad
-.RS 5n
-\fBunknown\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB2\fR\fR
-.ad
-.RS 5n
-\fBall\fR
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR [\fIlog_interval\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Writes data to the log file every \fIlog_interval\fR seconds;
-\fIlog_interval\fR must be greater than 60.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-o\fR \fIlog_file\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the log file where output will be written. The default log file is
-\fB/var/log/latencytop.log\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-t\fR \fIinterval\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the interval, in seconds, at which the tool collects statistics from
-the system. The possible values are between 1 and 60; the default is 5 seconds.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRRunning the Tool
-.sp
-.LP
-The following command launches the tool with default values for options.
-
-.sp
-.in +2
-.nf
-% \fBlatencytop\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRSetting the Interval
-.sp
-.LP
-The following command sets the sampling interval to two seconds.
-
-.sp
-.in +2
-.nf
-% \fBlatencytop -t 2\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRSpecifying the Log File
-.sp
-.LP
-The following command sets the log file to \fB/tmp/latencytop.log\fR.
-
-.sp
-.in +2
-.nf
-% \fBlatencytop -o /tmp/latencytop.log\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 4 \fRSpecifying the Log Level
-.sp
-.LP
-The following command sets the log level to \fBall\fR.
-
-.sp
-.in +2
-.nf
-% \fBlatencytop -l 2\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 5 \fREnabling Tracing of Latencies
-.sp
-.LP
-The following command enables the tracing of latencies caused by
-synchronization objects.
-
-.sp
-.in +2
-.nf
-% \fBlatencytop -f sobj\fR
-.fi
-.in -2
-.sp
-
-.SH EXIT STATUS
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.sp .6
-.RS 4n
-Successful operation.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB1\fR\fR
-.ad
-.sp .6
-.RS 4n
-An error occurred.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture x86, SPARC
-_
-Interface Stability Volatile
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBdtrace\fR(1M), \fBkstat\fR(1M), \fBattributes\fR(5)
-.SH USAGE
-.sp
-.LP
-You must have DTrace privileges to run LatencyTOP.
diff --git a/usr/src/man/man1m/ldap_cachemgr.1m b/usr/src/man/man1m/ldap_cachemgr.1m
deleted file mode 100644
index 3709d5d50b..0000000000
--- a/usr/src/man/man1m/ldap_cachemgr.1m
+++ /dev/null
@@ -1,158 +0,0 @@
-'\" te
-.\" Copyright (C) 2005, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH LDAP_CACHEMGR 1M "May 13, 2017"
-.SH NAME
-ldap_cachemgr \- LDAP daemon to manage client configuration for LDAP based
-Network Information Service lookups
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/ldap/ldap_cachemgr\fR [\fB-l\fR \fIlog-file\fR] [\fB-g\fR]
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBldap_cachemgr\fR daemon is a process that provides an up-to-date
-configuration cache for LDAP naming services. It is started during multi-user
-boot.
-.sp
-.LP
-The \fBldap_cachemgr\fR utility provides caching for all parameters as
-specified and used by the LDAP naming service clients. The \fBldap_cachemgr\fR
-utility uses the cache files which are originally created by executing the
-\fBldapclient\fR(1M) utility, as cold start files. Updates to the cache files
-take place dynamically if profiles are used to configure the client. See the
-\fBinit\fR option to \fBldapclient\fR(1M).
-.sp
-.LP
-The \fBldap_cachemgr\fR utility helps improve the performance of the clients
-that are using LDAP as the Naming service repository. In order for the LDAP
-naming services to function properly, the \fBldap_cachemgr\fR daemon must be
-running. \fBldap_cachemgr\fR also improves system security by making the
-configuration files readable by superuser only.
-.sp
-.LP
-The cache maintained by this daemon is shared by all the processes that access
-LDAP Naming information. All processes access this cache through a door call.
-On startup, \fBldap_cachemgr\fR initializes the cache from the cache files. See
-\fBldapclient\fR(1M). Thus, the cache survives machine reboots.
-.sp
-.LP
-The \fBldap_cachemgr\fR daemon also acts as its own administration tool. If an
-instance of \fBldap_cachemgr\fR is already running, commands are passed
-transparently to the running version.
-.SH OPTIONS
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-g\fR\fR
-.ad
-.sp .6
-.RS 4n
-Print current configuration and statistics to standard output. This is the only
-option executable without superuser privileges.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR \fIlog-file\fR\fR
-.ad
-.sp .6
-.RS 4n
-Cause \fBldap_cachemgr\fR to use a log file other than the default
-\fB/var/ldap/cachemgr.log\fR.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRStopping and Restarting the \fBldap_cachemgr\fR Daemon
-.sp
-.LP
-The following example shows how to stop and to restart the \fBldap_cachemgr\fR
-daemon.
-
-.sp
-.in +2
-.nf
-example# svcadm disable network/ldap/client
-example# svcadm enable network/ldap/client
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRForcing \fBldap_cachemgr\fR to Reread Configuration Files
-.sp
-.LP
-The following example shows how to force \fBldap_cachemgr\fR to reread the
-\fB/var/ldap/ldap_client_file\fR and \fB/var/ldap/ldap_client_cred\fR files
-
-.sp
-.in +2
-.nf
-example# pkill -HUP ldap_cachemgr
-.fi
-.in -2
-.sp
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/var/ldap/cachemgr.log\fR\fR
-.ad
-.sp .6
-.RS 4n
-Default log file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/ldap/ldap_client_file\fR\fR
-.ad
-.br
-.na
-\fB\fB/var/ldap/ldap_client_cred\fR\fR
-.ad
-.sp .6
-.RS 4n
-Files containing the LDAP configuration of the client. These files are not to
-be modified manually. Their content is not guaranteed to be human readable. Use
-\fBldapclient\fR(1M) to update these files.
-.RE
-
-.SH WARNINGS
-.LP
-The \fBldap_cachemgr\fR utility is included in the current Solaris release on
-an uncommitted basis only. It is subject to change or removal in a future minor
-release.
-.SH SEE ALSO
-.LP
-\fBldap\fR(1), \fBldapadd\fR(1), \fBldapdelete\fR(1), \fBldaplist\fR(1),
-\fBldapmodify\fR(1), \fBldapmodrdn\fR(1), \fBldapsearch\fR(1), \fBpkill\fR(1),
-\fBsvcs\fR(1), \fBidsconfig\fR(1M), \fBldapaddent\fR(1M), \fBldapclient\fR(1M),
-\fBsvcadm\fR(1M), \fBsignal.h\fR(3HEAD),
-\fBresolv.conf\fR(4), \fBattributes\fR(5), \fBsmf\fR(5)
-.SH NOTES
-.LP
-The \fBldap_cachemgr\fR service is managed by the service management facility,
-\fBsmf\fR(5), under the service identifier:
-.sp
-.in +2
-.nf
-svc:/network/ldap/client
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Administrative actions on this service, such as enabling, disabling, or
-requesting restart, can be performed using \fBsvcadm\fR(1M). The service's
-status can be queried using the \fBsvcs\fR(1) command.
diff --git a/usr/src/man/man1m/ldapaddent.1m b/usr/src/man/man1m/ldapaddent.1m
deleted file mode 100644
index 2fd88040df..0000000000
--- a/usr/src/man/man1m/ldapaddent.1m
+++ /dev/null
@@ -1,575 +0,0 @@
-'\" te
-.\" Copyright (C) 2002, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH LDAPADDENT 1M "May 13, 2017"
-.SH NAME
-ldapaddent \- create LDAP entries from corresponding /etc files
-.SH SYNOPSIS
-.LP
-.nf
-\fBldapaddent\fR [\fB-cpv\fR] [\fB-a\fR \fIauthenticationMethod\fR] [\fB-b\fR \fIbaseDN\fR]
- \fB-D\fR \fIbindDN\fR [\fB-w\fR \fIbind_password\fR] [\fB-j\fR \fIpasswdFile\fR] [\fB-f\fR \fIfilename\fR]
- \fIdatabase\fR
-.fi
-
-.LP
-.nf
-\fBldapaddent\fR [\fB-cpv\fR] \fB-a\fR sasl/GSSAPI [\fB-b\fR \fIbaseDN\fR] [\fB-f\fR \fIfilename\fR]
- \fIdatabase\fR
-.fi
-
-.LP
-.nf
-\fBldapaddent\fR \fB-d\fR [\fB-v\fR] [\fB-a\fR \fIauthenticationMethod\fR] [\fB-D\fR \fIbindDN\fR]
- [\fB-w\fR \fIbind_password\fR] [\fB-j\fR \fIpasswdFile\fR] \fIdatabase\fR
-.fi
-
-.LP
-.nf
-\fBldapaddent\fR [\fB-cpv\fR] \fB-h\fR \fILDAP_server\fR[:\fIserverPort\fR] [\fB-M\fR \fIdomainName\fR]
- [\fB-N\fR \fIprofileName\fR] [\fB-P\fR \fIcertifPath\fR] [\fB-a\fR \fIauthenticationMethod\fR]
- [\fB-b\fR \fIbaseDN\fR] \fB-D\fR \fIbindDN\fR [\fB-w\fR \fIbind_password\fR] [\fB-f\fR \fIfilename\fR]
- [\fB-j\fR \fIpasswdFile\fR] \fIdatabase\fR
-.fi
-
-.LP
-.nf
-\fBldapaddent\fR [\fB-cpv\fR] \fB-h\fR \fILDAP_server\fR[:\fIserverPort\fR] [\fB-M\fR \fIdomainName\fR]
- [\fB-N\fR \fIprofileName\fR] [\fB-P\fR \fIcertifPath\fR] [\fB-a\fR \fIauthenticationMethod\fR]
- [\fB-b\fR \fIbaseDN\fR] [\fB-f\fR \fIfilename\fR] \fIdatabase\fR
-.fi
-
-.LP
-.nf
-\fBldapaddent\fR \fB-d\fR [\fB-v\fR] \fB-h\fR \fILDAP_server\fR[:\fIserverPort\fR] [\fB-M\fR \fIdomainName\fR]
- [\fB-N\fR \fIprofileName\fR] [\fB-P\fR \fIcertifPath\fR] [\fB-a\fR \fIauthenticationMethod\fR]
- [\fB-b\fR \fIbaseDN\fR] \fB-D\fR \fIbindDN\fR [\fB-w\fR \fIbind_password\fR] [\fB-j\fR \fIpasswdFile\fR]
- \fIdatabase\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-\fBldapaddent\fR creates entries in LDAP containers from their corresponding
-\fB/etc\fR files. This operation is customized for each of the standard
-containers that are used in the administration of Solaris systems. The
-\fIdatabase\fR argument specifies the type of the data being processed. Legal
-values for this type are one of \fBaliases\fR, \fBauto_*\fR, \fBbootparams\fR,
-\fBethers\fR, \fBgroup\fR, \fBhosts\fR (including both IPv4 and IPv6
-addresses), \fBipnodes\fR (alias for \fBhosts\fR), \fBnetgroup\fR,
-\fBnetmasks\fR, \fBnetworks\fR, \fBpasswd\fR, \fBshadow\fR, \fBprotocols\fR,
-\fBpublickey\fR, \fBrpc\fR, and \fBservices\fR. In addition to the preceding,
-the \fIdatabase\fR argument can be one of the RBAC-related files (see
-\fBrbac\fR(5)):
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fB/etc/user_attr\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fB/etc/security/auth_attr\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fB/etc/security/prof_attr\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fB/etc/security/exec_attr\fR
-.RE
-.sp
-.LP
-By default, \fBldapaddent\fR reads from the standard input and adds this data
-to the LDAP container associated with the database specified on the command
-line. An input file from which data can be read is specified using the \fB-f\fR
-option.
-.sp
-.LP
-If you specify the \fB-h\fR option, \fBldapaddent\fR establishes a connection
-to the server indicated by the option in order to obtain a \fBDUAProfile\fR
-specified by the \fB-N\fR option. The entries will be stored in the directory
-described by the configuration obtained.
-.sp
-.LP
-By default (if the \fB-h\fR option is not specified), entries will be stored in
-the directory based on the client's configuration. To use the utility in the
-default mode, the Solaris LDAP client must be set up in advance.
-.sp
-.LP
-The location where entries are to be written can be overridden by using the
-\fB-b\fR option.
-.sp
-.LP
-If the entry to be added exists in the directory, the command displays an error
-and exits, unless the \fB-c\fR option is used.
-.sp
-.LP
-Although, there is a \fBshadow\fR database type, there is no corresponding
-\fBshadow\fR container. Both the \fBshadow\fR and the \fBpasswd\fR data is
-stored in the \fBpeople\fR container itself. Similarly, data from
-\fBnetworks\fR and \fBnetmasks\fR databases are stored in the \fBnetworks\fR
-container.
-.sp
-.LP
-The \fBuser_attr\fR data is stored by default in the
-\fBpeople\fR container. The \fBprof_attr\fR and \fBexec_attr\fR data is stored
-by default in the \fBSolarisProfAttr\fR container.
-.sp
-.LP
-You must add entries from the \fBpasswd\fR database before you attempt to add
-entries from the \fBshadow\fR database. The addition of a \fBshadow\fR entry
-that does not have a corresponding \fBpasswd\fR entry will fail.
-.sp
-.LP
-The \fBpasswd\fR database must precede the \fBuser_attr\fR database.
-.sp
-.LP
-For better performance, the recommended order in which the databases should be
-loaded is as follows:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBpasswd\fR database followed by \fBshadow\fR database
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBnetworks\fR database followed by \fBnetmasks\fR database
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBbootparams\fR database followed by \fBethers\fR database
-.RE
-.sp
-.LP
-Only the first entry of a given type that is encountered will be added to the
-LDAP server. The \fBldapaddent\fR command skips any duplicate entries.
-.SH OPTIONS
-.LP
-The \fBldapaddent\fR command supports the following options:
-.sp
-.ne 2
-.na
-\fB\fB-a\fR \fIauthenticationMethod\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify authentication method. The default value is what has been configured in
-the profile. The supported authentication methods are:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBsimple\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBsasl/CRAM-MD5\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBsasl/DIGEST-MD5\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBsasl/GSSAPI\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBtls:simple\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBtls:sasl/CRAM-MD5\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBtls:sasl/DIGEST-MD5\fR
-.RE
-Selecting \fBsimple\fR causes passwords to be sent over the network in clear
-text. Its use is strongly discouraged. Additionally, if the client is
-configured with a profile which uses no authentication, that is, either the
-\fBcredentialLevel\fR attribute is set to \fBanonymous\fR or
-\fBauthenticationMethod\fR is set to \fBnone\fR, the user must use this option
-to provide an authentication method. If the authentication method is
-\fBsasl/GSSAPI\fR, \fIbindDN\fR and \fIbindPassword\fR is not required and the
-\fBhosts\fR and \fBipnodes\fR fields of \fB/etc/nsswitch.conf\fR must be
-configured as:
-.sp
-.in +2
-.nf
-hosts: dns files
-ipnodes: dns files
-.fi
-.in -2
-
-See \fBnsswitch.conf\fR(4).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-b\fR\ \fIbaseDN\fR\fR
-.ad
-.sp .6
-.RS 4n
-Create entries in the \fIbaseDN\fR directory. \fIbaseDN\fR is not relative to
-the client's default search base, but rather. it is the actual location where
-the entries will be created. If this parameter is not specified, the first
-search descriptor defined for the service or the default container will be
-used.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-c\fR\fR
-.ad
-.sp .6
-.RS 4n
-Continue adding entries to the directory even after an error. Entries will not
-be added if the directory server is not responding or if there is an
-authentication problem.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-D\fR\ \fIbindDN\fR\fR
-.ad
-.sp .6
-.RS 4n
-Create an entry which has write permission to the \fIbaseDN\fR. When used with
-\fB-d\fR option, this entry only needs read permission.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-d\fR\fR
-.ad
-.sp .6
-.RS 4n
-Dump the LDAP container to the standard output in the appropriate format for
-the given database.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR \fIfilename\fR\fR
-.ad
-.sp .6
-.RS 4n
-Indicates input file to read in an \fB/etc/\fR file format.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-h\fR \fILDAP_server\fR[:\fIserverPort\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Specify an address (or a name) and an optional port of the LDAP server in which
-the entries will be stored. The current naming service specified in the
-\fBnsswitch.conf\fR file is used. The default value for the port is \fB389\fR,
-except when TLS is specified as the authentication method. In this case, the
-default LDAP server port number is \fB636\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-j\fR\ \fIpasswdFile\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify a file containing the password for the bind DN or the password for the
-SSL client's key database. To protect the password, use this option in scripts
-and place the password in a secure file. This option is mutually exclusive of
-the \fB-w\fR option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-M\fR\ \fIdomainName\fR\fR
-.ad
-.sp .6
-.RS 4n
-The name of a domain served by the specified server. If not specified, the
-default domain name will be used.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-N\fR\ \fIprofileName\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify the \fBDUAProfile\fR name. A profile with such a name is supposed to
-exist on the server specified by \fB-h\fR option. Otherwise, a default
-\fBDUAProfile\fR will be used. The default value is \fBdefault\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-P\fR\ \fIcertifPath\fR\fR
-.ad
-.sp .6
-.RS 4n
-The certificate path for the location of the certificate database. The value is
-the path where security database files reside. This is used for TLS support,
-which is specified in the \fBauthenticationMethod\fR and
-\fBserviceAuthenticationMethod\fR attributes. The default is \fB/var/ldap\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR\fR
-.ad
-.sp .6
-.RS 4n
-Process the \fBpassword\fR field when loading password information from a file.
-By default, the \fBpassword\fR field is ignored because it is usually not
-valid, as the actual password appears in a \fBshadow\fR file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-w\fR\ \fIbindPassword\fR\fR
-.ad
-.sp .6
-.RS 4n
-Password to be used for authenticating the \fIbindDN\fR. If this parameter is
-missing, the command will prompt for a password. \fBNULL\fR passwords are not
-supported in LDAP.
-.sp
-When you use \fB-w\fR\ \fIbindPassword\fR to specify the password to be used
-for authentication, the password is visible to other users of the system by
-means of the \fBps\fR command, in script files or in shell history.
-.sp
-If you supply "\fB-\fR" (hyphen) as a password, you will be prompted to enter a
-password.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.sp .6
-.RS 4n
-Verbose.
-.RE
-
-.SH OPERANDS
-.LP
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fB\fIdatabase\fR\fR
-.ad
-.sp .6
-.RS 4n
-The name of the database or service name. Supported values are: \fBaliases\fR,
-\fBauto_*\fR, \fBbootparams\fR, \fBethers\fR, \fBgroup\fR, \fBhosts\fR
-(including IPv6 addresses), \fBnetgroup\fR, \fBnetmasks\fR, \fBnetworks\fR,
-\fBpasswd\fR, \fBshadow\fR, \fBprotocols\fR, \fBpublickey\fR, \fBrpc\fR, and
-\fBservices\fR. Also supported are \fBauth_attr\fR, \fBprof_attr\fR,
-\fBexec_attr\fR, \fBuser_attr\fR, and \fBprojects\fR.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRAdding Password Entries to the Directory Server
-.sp
-.LP
-The following example shows how to add password entries to the directory
-server:
-
-.sp
-.in +2
-.nf
-example# \fBldapaddent -D "cn=directory manager" -w secret \e
- -f /etc/passwd passwd\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRAdding Group Entries
-.sp
-.LP
-The following example shows how to add \fBgroup\fR entries to the directory
-server using \fBsasl/CRAM-MD5\fR as the authentication method:
-
-.sp
-.in +2
-.nf
-example# \fBldapaddent -D "cn=directory manager" -w secret \e
- -a "sasl/CRAM-MD5" -f /etc/group group\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRAdding \fBauto_master\fR Entries
-.sp
-.LP
-The following example shows how to add \fBauto_master\fR entries to the
-directory server:
-
-.sp
-.in +2
-.nf
-example# \fBldapaddent -D "cn=directory manager" -w secret \e
- -f /etc/auto_master auto_master\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 4 \fRDumping \fBpasswd\fR Entries from the Directory to File
-.sp
-.LP
-The following example shows how to dump \fBpassword\fR entries from the
-directory to a file \fBfoo\fR:
-
-.sp
-.in +2
-.nf
-example# \fBldapaddent -d passwd > foo\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 5 \fRAdding Password Entries to a Specific Directory Server
-.sp
-.LP
-The following example shows how to add password entries to a directory server
-that you specify:
-
-.sp
-.in +2
-.nf
-example# \fBldapaddent -h 10.10.10.10:3890 \e
--M another.domain.name -N special_duaprofile \e
--D "cn=directory manager" -w secret \e
--f /etc/passwd passwd\fR
-.fi
-.in -2
-.sp
-
-.SH EXIT STATUS
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.sp .6
-.RS 4n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB>\fB0\fR\fR
-.ad
-.sp .6
-.RS 4n
-An error occurred.
-.RE
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/var/ldap/ldap_client_file\fR\fR
-.ad
-.br
-.na
-\fB\fB/var/ldap/ldap_client_cred\fR\fR
-.ad
-.sp .6
-.RS 4n
-Files containing the LDAP configuration of the client. These files are not to
-be modified manually. Their content is not guaranteed to be human readable. Use
-\fBldapclient\fR(1M) to update these files.
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Committed
-.TE
-
-.SH SEE ALSO
-.LP
-\fBldap\fR(1), \fBldaplist\fR(1), \fBldapmodify\fR(1), \fBldapmodrdn\fR(1),
-\fBldapsearch\fR(1), \fBidsconfig\fR(1M), \fBldapclient\fR(1M),
-\fBnsswitch.conf\fR(4), \fBattributes\fR(5)
-.sp
-.LP
-\fI\fR
-.SH CAUTION
-.LP
-Currently StartTLS is not supported by \fBlibldap.so.5\fR, therefore the port
-number provided refers to the port used during a TLS open, rather than the port
-used as part of a StartTLS sequence. For example:
-.sp
-.in +2
-.nf
--h foo:1000 -a tls:simple
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The preceding refers to a raw TLS open on host \fBfoo\fR port 1000, not an
-open, StartTLS sequence on an unsecured port 1000. If port 1000 is unsecured
-the connection will not be made.
diff --git a/usr/src/man/man1m/ldapclient.1m b/usr/src/man/man1m/ldapclient.1m
deleted file mode 100644
index bb8162458d..0000000000
--- a/usr/src/man/man1m/ldapclient.1m
+++ /dev/null
@@ -1,1179 +0,0 @@
-'\" te
-.\" Copyright (C) 2009, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH LDAPCLIENT 1M "November 22, 2021"
-.SH NAME
-ldapclient \- initialize LDAP client machine or output an LDAP client profile
-in LDIF format
-.SH SYNOPSIS
-.nf
-\fB/usr/sbin/ldapclient\fR [\fB-v\fR | \fB-q\fR] init [\fB-a\fR profileName=\fIprofileName\fR]
- [\fB-a\fR domainName=\fIdomain\fR] [\fB-a\fR proxyDN=\fIproxyDN\fR]
- [\fB-a\fR proxyPassword=\fIpassword\fR]
- [\fB-a\fR authenticationMethod=\fIauthenticationMethod\fR]
- [\fB-a\fR enableShadowUpdate=true | false]
- [\fB-a\fR adminDN=\fIadminDN\fR]
- [\fB-a\fR adminPassword=\fIadminPassword\fR]
- [\fB-a\fR certificatePath=\fIpath\fR] [\fB-d\fR \fIbindDN\fR] [\fB-w\fR \fIbindPassword\fR]
- [\fB-j\fR \fIpasswdFile\fR] [\fB-y\fR \fIpasswdFile\fR]
- [\fB-z\fR \fIadminrPasswdFile\fR] \fILDAP_server\fR[:\fIport_number\fR]
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/ldapclient\fR [\fB-v\fR | \fB-q\fR] manual [\fB-a\fR attrName=\fIattrVal\fR]
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/ldapclient\fR [\fB-v\fR | \fB-q\fR] mod [\fB-a\fR attrName=\fIattrVal\fR]
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/ldapclient\fR [\fB-v\fR | \fB-q\fR] list
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/ldapclient\fR [\fB-v\fR | \fB-q\fR] uninit
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/ldapclient\fR [\fB-v\fR | \fB-q\fR] genprofile \fB-a\fR profileName=\fIprofileName\fR
- [\fB-a\fR attrName=\fIattrVal\fR]
-.fi
-
-.SH DESCRIPTION
-The \fBldapclient\fR utility can be used to:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-initialize LDAP client machines
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-restore the network service environment on LDAP clients
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-list the contents of the LDAP client cache in human readable format.
-.RE
-.sp
-.LP
-The \fBinit\fR form of the \fBldapclient\fR utility is used to initialize an
-LDAP client machine, using a profile stored on an LDAP server specified by
-\fBLDAP_server\fR. The LDAP client will use the attributes in the specified
-profile to determine the configuration of the LDAP client. Using a
-configuration profile allows for easy installation of LDAP client and
-propagation of configuration changes to LDAP clients. The
-\fBldap_cachemgr\fR(1M) utility will update the LDAP client configuration when
-its cache expires by reading the profile. For more information on the
-configuration profile refer to IETF document \fIA Configuration Schema for LDAP
-Based Directory User Agents\fR.
-.sp
-.LP
-The \fBmanual\fR form of the \fBldapclient\fR utility is used to initialize an
-LDAP client machine manually. The LDAP client will use the attributes specified
-on the command line. Any unspecified attributes will be assigned their default
-values. At least one server must be specified in the \fBdefaultServerList\fR or
-the \fBpreferredServerList\fR attributes.The \fBdomainName\fR attribute must be
-specified if the client's \fBdomainName\fR is not set.
-.sp
-.LP
-The \fBmod\fR form of the \fBldapclient\fR utility is used to modify the
-configuration of an LDAP client machine that was setup manually. This option
-modifies only those LDAP client configuration attributes specified on the
-command line. The \fBmod\fR option should only be used on LDAP clients that
-were initialized using the \fBmanual\fR option.
-.sp
-.LP
-Regardless of which method is used for initialization, if a client is to be
-configured to use a proxy \fBcredentialLevel\fR, proxy credentials must be
-provided using \fB-a\fR \fBproxyDN=\fIproxyDN\fR\fR and \fB-a\fR
-\fBproxyPassword=\fIproxyPassword\fR\fR options. However, if \fB-a\fR
-\fBproxyPassword=\fIproxyPassword\fR\fR is not specified, \fBldapclient\fR will
-prompt for it. Note that \fINULL\fR passwords are not allowed in LDAP. If a
-self \fBcredentialLevel\fR is configured, \fBauthenticationMethod\fR must be
-\fBsasl/GSSAPI\fR.
-.sp
-.LP
-Similarly, if a client is to be configured to enable shadow information update
-and use a proxy credentialLevel, administrator credentials must be provided
-using \fB-a\fR \fBadminDN=\fR\fIadminDN\fR and \fB-a\fR
-\fBadminPassword=\fR\fIadminPassword\fR. However, the shadow information update
-does not need the administrator credentials if a self \fBcredentialLevel\fR is
-configured.
-.sp
-.LP
-If any file is modified during installation, it will be backed up to
-\fB/var/ldap/restore\fR. The files that are typically modified during
-initialization are:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fB/etc/nsswitch.conf\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fB/etc/defaultdomain\fR (if it exists)
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fB/var/yp/binding/`domainname`\fR (for a NIS(YP) client)
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fB/var/ldap/ldap_client_file\fR (for an existing LDAP client)
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fB/var/ldap/ldap_client_cred\fR (for an existing LDAP client)
-.RE
-.sp
-.LP
-\fBldapclient\fR does not set up a client to resolve hostnames using DNS. It
-simply copies \fB/etc/nsswitch.ldap\fR to \fB/etc/nsswitch.conf\fR. If you
-prefer to use DNS for host resolution, please refer to the DNS documentation
-for information on setting up DNS. See \fBresolv.conf\fR(4). If you want to use
-\fBsasl/GSSAPI\fR as the authentication method, you have to use DNS for
-\fBhosts\fR and \fBipnodes\fR resolution.
-.sp
-.LP
-The \fBlist\fR form of the \fBldapclient\fR utility is used to list the LDAP
-client configuration. The output will be human readable. LDAP configuration
-files are not guaranteed to be human readable. Note that for security reason,
-the values for adminDN and adminPassword will not be displayed.
-.sp
-.LP
-The \fBuninit\fR form of the \fBldapclient\fR utility is used to uninitialize
-the network service environment, restoring it to the state it was in prior to
-the last execution of \fBldapclient\fR using \fBinit\fR or \fBmanual\fR. The
-restoration will succeed only if the machine was initialized with the
-\fBinit\fR or \fBmanual\fR form of \fBldapclient\fR, as it uses the backup
-files created by these options.
-.sp
-.LP
-The \fBgenprofile\fR option is used to write an LDIF formatted configuration
-profile based on the attributes specified on the command line to standard
-output. This profile can then be loaded into an LDAP server to be used as the
-client profile, which can be downloaded by means of the \fBldapclient init\fR
-command. Loading the LDIF formatted profile to the directory server can be done
-through \fBldapadd\fR(1), or through any server specific import tool. Note that
-the attributes \fBproxyDN\fR, \fBproxyPassword\fR, \fBcertificatePath\fR,
-\fBdomainName\fR, \fBenableShadowUpdate\fR, \fBadminDN\fR, and
-\fBadminPassword\fR are not part of the configuration profile and thus are not
-permitted.
-.sp
-.LP
-You must have superuser privileges to run the \fBldapclient\fR command, except
-with the \fBgenprofile\fR option.
-.sp
-.LP
-To access the information stored in the directory, clients can either
-authenticate to the directory, or use an unauthenticated connection. The LDAP
-client is configured to have a credential level of either \fBanonymous\fR or
-\fBproxy\fR. In the first case, the client does not authenticate to the
-directory. In the second case, client authenticates to the directory using a
-proxy identity for read access, and using a administrator identity for write
-access if \fBenableShadowUpdate\fR is configured. In the third case, client
-authenticates to the directory using a Kerberos principal that is mapped to an
-LDAP identity by the LDAP server. Refer to the chapter on implementing security
-in the \fISystem Administration Guide: Naming and Directory Services (DNS, NIS,
-and LDAP)\fR or your appropriate directory server documentation for identity
-mapping details.
-.sp
-.LP
-If a client is configured to use an identity, you can configure which
-authentication method the client will use. The LDAP client supports the
-following authentication methods:
-.br
-.in +2
-\fBnone\fR
-.in -2
-.br
-.in +2
-\fBsimple\fR
-.in -2
-.br
-.in +2
-\fBsasl/CRAM-MD5\fR
-.in -2
-.br
-.in +2
-\fBsasl/DIGEST-MD5\fR
-.in -2
-.br
-.in +2
-\fBsasl/GSSAPI\fR
-.in -2
-.br
-.in +2
-\fBtls:none\fR
-.in -2
-.br
-.in +2
-\fBtls:simple\fR
-.in -2
-.br
-.in +2
-\fBtls:sasl/CRAM-MD5\fR
-.in -2
-.br
-.in +2
-\fBtls:sasl/DIGEST-MD5\fR
-.in -2
-.sp
-.LP
-Note that some directory servers may not support all of these authentication
-methods. For \fBsimple\fR, be aware that the bind password will be sent in the
-clear to the LDAP server. For those authentication methods using TLS (transport
-layer security), the entire session is encrypted. You will need to install the
-appropriate certificate databases to use TLS. Note that the \fBtls:none\fR
-authentication method requires a \fBcredentialLevel\fR of \fBproxy\fR to
-take effect.
-.SS "Commands"
-The following commands are supported:
-.sp
-.ne 2
-.na
-\fB\fBinit\fR\fR
-.ad
-.sp .6
-.RS 4n
-Initialize client from a profile on a server.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmanual\fR\fR
-.ad
-.sp .6
-.RS 4n
-Manually initialize client with the specified attribute values.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmod\fR\fR
-.ad
-.sp .6
-.RS 4n
-Modify attribute values in the configuration file after a manual initialization
-of the client.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBlist\fR\fR
-.ad
-.sp .6
-.RS 4n
-Write the contents of the LDAP client cache to standard output in human
-readable form.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBuninit\fR\fR
-.ad
-.sp .6
-.RS 4n
-Uninitialize an LDAP client, assuming that \fBldapclient\fR was used to
-initialize the client.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBgenprofile\fR\fR
-.ad
-.sp .6
-.RS 4n
-Generate a configuration profile in LDIF format that can then be stored in the
-directory for clients to use, with the \fBinit\fR form of this command.
-.RE
-
-.SS "Attributes"
-The following attributes are supported:
-.sp
-.ne 2
-.na
-\fB\fBadminDN\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify the Bind Distinguished Name for the administrator identity that is used
-for shadow information update. This option is required if the credential level
-is \fBproxy\fR, and \fBenableShadowUpdate\fR is set to \fBtrue\fR. There is no
-default value.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBadminPassword\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify the administrator password. This option is required if the credential
-level is \fBproxy\fR, and \fBenableShadowUpdate\fR is set to \fBtrue\fR. There
-is no default value.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBattributeMap\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify a mapping from an attribute defined by a service to an attribute in an
-alternative schema. This can be used to change the default schema used for a
-given service. The syntax of \fBattributeMap\fR is defined in the profile IETF
-draft. This option can be specified multiple times. The default value for all
-services is \fINULL\fR. In the example,
-.sp
-.in +2
-.nf
-attributeMap: passwd:uid=employeeNumber
-.fi
-.in -2
-.sp
-
-the LDAP client would use the LDAP attribute \fBemployeeNumber\fR rather than
-\fBuid\fR for the \fBpasswd\fR service. This is a multivalued attribute.
-.sp
-To use rfc2307bis style groups (with a DN rather than username as the
-attribute value), map the \fBmemberUid\fR attribute to the group attribute
-being used (typically either \fBuniqueMember\fR or \fBmember\fR), for example:
-.sp
-.in +2
-.nf
-attributeMap: group:memberUid=uniqueMember
-.fi
-.in -2
-.sp
-
-Group membership in a given directory is expected to be maintained with
-either username format member attributes, or DN format member attributes. If
-both are present they must describe identical memberships or unexpected
-results may be obtained. For DN format attributes, the username is required
-to be the RDN of the entry. Note that nested groups are not currently
-supported, and unexpected results may be obtained if they are used.
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBauthenticationMethod\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify the default authentication method used by all services unless
-overridden by the \fBserviceAuthenticationMethod\fR attribute. Multiple values
-can be specified by using a semicolon-separated list. The default value is
-\fBnone\fR. For those services that use \fBcredentialLevel\fR and
-\fBcredentialLevel\fR is \fBanonymous\fR, this attribute is ignored. Services
-such as \fBpam_ldap\fR will use this attribute, even if \fBcredentialLevel\fR
-is anonymous. The supported authentication methods are described above. If the
-authenticationMethod is \fBsasl/GSSAPI\fR, the \fBhosts\fR and \fBipnodes\fR of
-\fB/etc/nsswitch.conf\fR must be configured with DNS support, for example:
-.sp
-.in +2
-.nf
-hosts: dns files
-ipnodes: dns files
-.fi
-.in -2
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBbindTimeLimit\fR\fR
-.ad
-.sp .6
-.RS 4n
-The maximum time in seconds that a client should spend performing a bind
-operation. Set this to a positive integer. The default value is 30.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcertificatePath\fR\fR
-.ad
-.sp .6
-.RS 4n
-The certificate path for the location of the certificate database. The value is
-the path where security database files reside. This is used for TLS support,
-which is specified in the \fBauthenticationMethod\fR and
-\fBserviceAuthenticationMethod\fR attributes. The default is \fB/var/ldap\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcredentialLevel\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify the credential level the client should use to contact the directory.
-The credential levels supported are either \fBanonymous\fR or \fBproxy\fR. If a
-\fBproxy\fR credential level is specified, then the \fBauthenticationMethod\fR
-attribute must be specified to determine the authentication mechanism. Also, if
-the credential level is \fBproxy\fR and at least one of the authentication
-methods require a bind DN, the \fBproxyDN\fR and \fBproxyPassword\fR attribute
-values must be set. In addition, if \fBenableShadowUpdate\fR is set to
-\fBtrue\fR, the \fBadminDN\fR and \fBadminPassword\fR values must be set. If a
-self credential level is specified, the \fBauthenticationMethod\fR must be
-\fBsasl/GSSAPI\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdefaultSearchBase\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify the default search base DN. There is no default. The
-\fBserviceSearchDescriptor\fR attribute can be used to override the
-\fBdefaultSearchBase\fR for given services.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdefaultSearchScope=one | sub\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify the default search scope for the client's search operations. This
-default can be overridden for a given service by specifying a
-\fBserviceSearchDescriptor\fR. The default is one level search.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdefaultServerList\fR\fR
-.ad
-.sp .6
-.RS 4n
-A space separated list of server names or server addresses, either IPv4 or
-IPv6. If you specify server names, be sure that the LDAP client can resolve the
-name without the LDAP name service. You must resolve the LDAP servers' names by
-using either \fBfiles\fR or \fBdns\fR. If the LDAP server name cannot be
-resolved, your naming service will fail.
-.sp
-The port number is optional. If not specified, the default LDAP server port
-number 389 is used, except when TLS is specified in the authentication method.
-In this case, the default LDAP server port number is 636.
-.sp
-The format to specify the port number for an IPv6 address is:
-.sp
-.in +2
-.nf
-[ipv6_addr]:port
-.fi
-.in -2
-
-To specify the port number for an IPv4 address, use the following format:
-.sp
-.in +2
-.nf
-ipv4_addr:port
-.fi
-.in -2
-
-If the host name is specified, use the format:
-.sp
-.in +2
-.nf
-host_name:port
-.fi
-.in -2
-
-If you use TLS, the LDAP server's hostname must match the hostname in the TLS
-certificate. Typically, the hostname in the TLS certificate is a fully
-qualified domain name. With TLS, the LDAP server host addresses must resolve to
-the hostnames in the TLS certificate. You must use \fBfiles\fR or \fBdns\fR to
-resolve the host address.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdomainName\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify the DNS domain name. This becomes the default domain for the machine.
-The default is the current domain name. This attribute is only used in client
-initialization.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBenableShadowUpdate=true | false\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify whether the client is allowed to update shadow information. If set to
-\fBtrue\fR and the credential level is \fBproxy\fR, \fBadminDN\fR and
-\fBadminPassword\fR must be specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfollowReferrals=true | false\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify the referral setting. A setting of true implies that referrals will be
-automatically followed and false would result in referrals not being followed.
-The default is true.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBobjectclassMap\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify a mapping from an \fBobjectclass\fR defined by a service to an
-\fBobjectclass\fR in an alternative schema. This can be used to change the
-default schema used for a given service. The syntax of \fBobjectclassMap\fR is
-defined in the profile IETF draft. This option can be specified multiple times.
-The default value for all services is \fINULL\fR. In the example,
-.sp
-.in +2
-.nf
-objectclassMap=passwd:posixAccount=unixAccount
-.fi
-.in -2
-.sp
-
-the LDAP client would use the LDAP \fBobjectclass\fR of \fBunixAccount\fR
-rather than the \fBposixAccount\fR for the \fBpasswd\fR service. This is a
-multivalued attribute.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpreferredServerList\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify the space separated list of server names or server addresses, either
-IPv4 or IPv6, to be contacted before servers specified by the
-\fBdefaultServerList\fR attribute. If you specify server names, be sure that
-the LDAP client can resolve the name without the LDAP name service. You must
-resolve the LDAP servers' names by using either \fBfiles\fR or \fBdns\fR. If
-the LDAP server name cannot be resolved, your naming service will fail.
-.sp
-The port number is optional. If not specified, the default LDAP server port
-number 389 is used, except when TLS is specified in the authentication method.
-In this case, the default LDAP server port number is 636.
-.sp
-The format to specify the port number for an IPv6 address is:
-.sp
-.in +2
-.nf
-[ipv6_addr]:port
-.fi
-.in -2
-
-To specify the port number for an IPv4 address, use the following format:
-.sp
-.in +2
-.nf
-ipv4_addr:port
-.fi
-.in -2
-
-If the host name is specified, use the format:
-.sp
-.in +2
-.nf
-host_name:port
-.fi
-.in -2
-
-If you use TLS, the LDAP server's hostname must match the hostname in the TLS
-certificate. Typically, the hostname in the TLS certificate is a fully
-qualified domain name. With TLS, the LDAP server host addresses must resolve to
-the hostnames in the TLS certificate. You must use \fBfiles\fR or \fBdns\fR to
-resolve the host address.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBprofileName\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify the profile name. For \fBldapclient init\fR, this attribute is the name
-of an existing profile which may be downloaded periodically depending on the
-value of the \fBprofileTTL\fR attribute. For \fBldapclient genprofile\fR, this
-is the name of the profile to be generated. The default value is \fBdefault\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBprofileTTL\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify the TTL value in seconds for the client information. This is only
-relevant if the machine was initialized with a client profile. If you do not
-want \fBldap_cachemgr\fR(1M) to attempt to refresh the LDAP client
-configuration from the LDAP server, set \fBprofileTTL\fR to 0 (zero). Valid
-values are either zero 0 (for no expiration) or a positive integer in seconds.
-The default value is 12 hours.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBproxyDN\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify the Bind Distinguished Name for the proxy identity. This option is
-required if the credential level is \fBproxy\fR, and at least one of the
-authentication methods requires a bind DN. There is no default value.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBproxyPassword\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify client proxy password. This option is required if the credential level
-is \fBproxy\fR, and at least one of the authentication methods requires a bind
-DN. There is no default.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsearchTimeLimit\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify maximum number of seconds allowed for an LDAP search operation. The
-default is 30 seconds. The server may have its own search time limit.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBserviceAuthenticationMethod\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify authentication methods to be used by a service in the form
-\fIservicename\fR:\fBauthenticationmethod\fR, for example:
-.sp
-.in +2
-.nf
-pam_ldap:tls:simple
-.fi
-.in -2
-
-For multiple authentication methods, use a semicolon-separated list. The
-default value is no service authentication methods, in which case, each service
-would default to the \fBauthenticationMethod\fR value. The supported
-authentications are described above.
-.sp
-Three services support this feature: \fBpasswd-cmd\fR, \fBkeyserv\fR, and
-\fBpam_ldap\fR. The \fBpasswd-cmd\fR service is used to define the
-authentication method to be used by \fBpasswd\fR(1) to change the user's
-password and other attributes. The \fBkeyserv\fR service is used to identify
-the authentication method to be used by the \fBchkey\fR(1) and \fBnewkey\fR(1M)
-utilities. The \fBpam_ldap\fR service defines the authentication method to be
-used for authenticating users when \fBpam_ldap\fR(5) is configured. If this
-attribute is not set for any of these services, the \fBauthenticationMethod\fR
-attribute is used to define the authentication method. This is a multivalued
-attribute.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBserviceCredentialLevel\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify credential level to be used by a service. Multiple values can be
-specified in a space-separated list. The default value for all services is
-\fINULL\fR. The supported credential levels are: \fBanonymous\fR or
-\fBproxy\fR. At present, no service uses this attribute. This is a multivalued
-attribute.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBserviceSearchDescriptor\fR\fR
-.ad
-.sp .6
-.RS 4n
-Override the default base DN for LDAP searches for a given service. The format
-of the descriptors also allow overriding the default search scope and search
-filter for each service. The syntax of \fBserviceSearchDescriptor\fR is defined
-in the profile IETF draft. The default value for all services is \fINULL\fR.
-This is a multivalued attribute. In the example,
-.sp
-.in +2
-.nf
-serviceSearchDescriptor=passwd:ou=people,dc=a1,dc=example,dc=com?one
-.fi
-.in -2
-.sp
-
-the LDAP client would do a one level search in
-\fBou=people,dc=a1,dc=example,dc=com\fR rather than
-\fBou=people,\fIdefaultSearchBase\fR\fR for the \fBpasswd\fR service.
-.RE
-
-.SH OPTIONS
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-a\fR \fBattrName=\fR\fIattrValue\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify \fBattrName\fR and its value. See \fBSYNOPSIS\fR for a complete list of
-possible attribute names and values.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-D\fR \fIbindDN\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies an entry that has read permission for the requested database.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-j\fR \fIpasswdFile\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify a file containing the password for the bind DN or the password for the
-SSL client's key database. To protect the password, use this option in scripts
-and place the password in a secure file. This option is mutually exclusive of
-the \fB-w\fR option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-q\fR\fR
-.ad
-.sp .6
-.RS 4n
-Quiet mode. No output is generated.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.sp .6
-.RS 4n
-Verbose output.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-w\fR \fIbindPassword\fR\fR
-.ad
-.sp .6
-.RS 4n
-Password to be used for authenticating the bind DN. If this parameter is
-missing, the command will prompt for a password. \fBNULL\fR passwords are not
-supported in LDAP.
-.sp
-When you use \fB-w\fR \fIbindPassword\fR to specify the password to be used for
-authentication, the password is visible to other users of the system by means
-of the \fBps\fR command, in script files, or in shell history.
-.sp
-If you supply "\fB-\fR" (hyphen) as a password, the command will prompt for a
-password.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-y\fR \fIpasswdFile\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify a file containing the password for the proxy DN. To protect the
-password, use this option in scripts and place the password in a secure file.
-This option is mutually exclusive of the \fB-a\fR \fIproxyPassword\fR option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-z\fR \fIadminrPasswdFile\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify a file containing the password for the \fBadminDN\fR. To protect the
-password, use this option in scripts and place the password in a secure file.
-This option is mutually exclusive of the \fB-a\fR \fIadminPassword\fR option.
-.RE
-
-.SH OPERANDS
-The following operand is supported:
-.sp
-.ne 2
-.na
-\fB\fILDAP_server\fR\fR
-.ad
-.sp .6
-.RS 4n
-An address or a name for the LDAP server from which the profile will be loaded.
-The current naming service specified in the \fBnsswitch.conf\fR file is used.
-Once the profile is loaded, the \fBpreferredServerList\fR and
-\fBdefaultServerList\fR specified in the profile are used.
-.RE
-
-.SH EXAMPLES
-\fBExample 1 \fRSetting Up a Client By Using the Default Profile Stored on a
-Specified LDAP Server
-.sp
-.LP
-The following example shows how to set up a client using the default profile
-stored on the specified LDAP server. This command will only be successful if
-either the credential level in the profile is set to \fBanonymous\fR or the
-authentication method is set to \fBnone\fR.
-
-.sp
-.in +2
-.nf
-example# \fBldapclient init 172.16.100.1\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRSetting Up a Client By Using the \fBsimple\fR Profile Stored on
-a Specified LDAP Server
-.sp
-.LP
-The following example shows how to set up a client using the \fBsimple\fR
-profile stored on the specified LDAP server. The domainname is set to
-\fBxyz.example.com\fR and the proxyPassword is \fBsecret\fR.
-
-.sp
-.in +2
-.nf
-example# \fBldapclient init -a profileName=simple \e
--a domainName=xyz.example.com \e
--a proxyDN=cn=proxyagent,ou=profile,dc=xyz,dc=example,dc=com \e
--a proxyPassword=secret '['fe80::a00:20ff:fea3:388']':386\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRSetting Up a Client Using Only One Server
-.sp
-.LP
-The following example shows how to set up a client using only one server. The
-authentication method is set to \fBnone\fR, and the search base is
-\fBdc=example,dc=com\fR.
-
-.sp
-.in +2
-.nf
-example# \fBldapclient manual -a authenticationMethod=none \e
--a defaultSearchBase=dc=example,dc=com \e
--a defaultServerList=172.16.100.1\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 4 \fRSetting Up a Client Using Only One Server That Does Not Follow
-Referrals
-.sp
-.LP
-The following example shows how to set up a client using only one server. The
-credential level is set to \fBproxy\fR. The authentication method of is
-\fBsasl/CRAM-MD5\fR, with the option not to follow referrals. The domain name
-is \fBxyz.example.com\fR, and the LDAP server is running on port number 386
-at IP address \fB172.16.100.1\fR.
-
-.sp
-.in +2
-.nf
-example# \fBldapclient manual \e
--a credentialLevel=proxy \e
--a authenticationMethod=sasl/CRAM-MD5 \e
--a proxyPassword=secret \e
--a proxyDN=cn=proxyagent,ou=profile,dc=xyz,dc=example,dc=com \e
--a defaultSearchBase=dc=xyz,dc=example,dc=com \e
--a domainName=xyz.example.com \e
--a followReferrals=false \e
--a defaultServerList=172.16.100.1:386\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 5 \fRUsing \fBgenprofile\fR to Set Only the \fBdefaultSearchBase\fR
-and the Server Addresses
-.sp
-.LP
-The following example shows how to use the \fBgenprofile\fR command to set the
-\fBdefaultSearchBase\fR and the server addresses.
-
-.sp
-.in +2
-.nf
-example# \fBldapclient genprofile -a profileName=myprofile \e
--a defaultSearchBase=dc=eng,dc=sun,dc=com \e
--a "defaultServerList=172.16.100.1 172.16.234.15:386" \e
-> myprofile.ldif\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 6 \fRCreating a Profile on IPv6 servers
-.sp
-.LP
-The following example creates a profile on IPv6 servers
-
-.sp
-.in +2
-.nf
-example# \fBldapclient genprofile -a profileName=eng \e
--a credentialLevel=proxy \e
--a authenticationMethod=sasl/DIGEST-MD5 \e
--a defaultSearchBase=dc=eng,dc=example,dc=com \e
--a "serviceSearchDescriptor=passwd:ou=people,dc=a1,dc=example,dc=com?one"\e
--a preferredServerList= '['fe80::a00:20ff:fea3:388']' \e
--a "defaultServerList='['fec0::111:a00:20ff:fea3:edcf']' \e
- '['fec0::111:a00:20ff:feb5:e41']'" > eng.ldif\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 7 \fRCreating a Profile That Overrides Every Default Value
-.sp
-.LP
-The following example shows a profile that overrides every default value.
-
-.sp
-.in +2
-.nf
-example# \fBldapclient genprofile -a profileName=eng \e
--a credentialLevel=proxy -a authenticationMethod=sasl/DIGEST-MD5 \e
--a bindTimeLimit=20 \e
--a defaultSearchBase=dc=eng,dc=example,dc=com \e
--a "serviceSearchDescriptor=passwd:ou=people,dc=a1,dc=example,dc=com?one"\e
--a serviceAuthenticationMethod=pam_ldap:tls:simple \e
--a defaultSearchScope=sub \e
--a attributeMap=passwd:uid=employeeNumber \e
--a objectclassMap=passwd:posixAccount=unixAccount \e
--a followReferrals=false -a profileTTL=6000 \e
--a preferredServerList=172.16.100.30 -a searchTimeLimit=30 \e
--a "defaultServerList=172.16.200.1 172.16.100.1 192.168.5.6" > eng.ldif\fR
-.fi
-.in -2
-.sp
-
-.SH EXIT STATUS
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB0\fR
-.ad
-.RS 5n
-The command successfully executed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB1\fR
-.ad
-.RS 5n
-An error occurred. An error message is output.
-.RE
-
-.sp
-.ne 2
-.na
-\fB2\fR
-.ad
-.RS 5n
-\fBproxyDN\fR and \fBproxyPassword\fR attributes are required, but they are not
-provided.
-.RE
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/var/ldap/ldap_client_cred\fR\fR
-.ad
-.br
-.na
-\fB\fB/var/ldap/ldap_client_file\fR\fR
-.ad
-.sp .6
-.RS 4n
-Contain the LDAP configuration of the client. These files are not to be
-modified manually. Their content is not guaranteed to be human readable. Use
-\fBldapclient\fR to update them.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/defaultdomain\fR\fR
-.ad
-.sp .6
-.RS 4n
-System default domain name, matching the domain name of the data in the LDAP
-servers. See \fBdefaultdomain\fR(4).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/nsswitch.conf\fR\fR
-.ad
-.sp .6
-.RS 4n
-Configuration file for the name-service switch. See \fBnsswitch.conf\fR(4).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/nsswitch.ldap\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sample configuration file for the name-service switch configured with LDAP and
-files.
-.RE
-
-.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-\fBchkey\fR(1), \fBldap\fR(1), \fBldapadd\fR(1), \fBldapdelete\fR(1),
-\fBldaplist\fR(1), \fBldapmodify\fR(1), \fBldapmodrdn\fR(1),
-\fBldapsearch\fR(1), \fBidsconfig\fR(1M), \fBldapaddent\fR(1M),
-\fBldap_cachemgr\fR(1M), \fBdefaultdomain\fR(4),
-\fBnsswitch.conf\fR(4), \fBresolv.conf\fR(4), \fBattributes\fR(5)
-.SH CAUTION
-Currently \fBStartTLS\fR is not supported by \fBlibldap.so.5\fR, therefore the
-port number provided refers to the port used during a TLS open, rather than the
-port used as part of a \fBStartTLS\fR sequence. To avoid timeout delays, mixed
-use of TLS and non-TLS authentication mechanisms is not recommended.
-.sp
-.LP
-For example:
-.sp
-.in +2
-.nf
--h foo:1000 -a authenticationMethod=tls:simple
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-\&...or:
-.sp
-.in +2
-.nf
-defaultServerList= foo:1000
-authenticationMethod= tls:simple
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The preceding refers to a raw TLS open on host \fBfoo\fR port 1000, not an
-open, StartTLS sequence on an unsecured port 1000. If port 1000 is unsecured
-the connection will not be made.
-.sp
-.LP
-As a second example, the following will incur a significant timeout delay while
-attempting the connection to \fBfoo:636\fR with an unsecured bind.
-.sp
-.in +2
-.nf
-defaultServerList= foo:636 foo:389
-authenticationMethod= simple
-.fi
-.in -2
-.sp
-
diff --git a/usr/src/man/man1m/ldmad.1m b/usr/src/man/man1m/ldmad.1m
deleted file mode 100644
index 49054921df..0000000000
--- a/usr/src/man/man1m/ldmad.1m
+++ /dev/null
@@ -1,74 +0,0 @@
-'\" te
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
-.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH LDMAD 1M "Sep 8, 2009"
-.SH NAME
-ldmad \- Logical Domains Agents daemon
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/ldoms/ldmad\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBldmad\fR daemon is part of the framework that enables Logical Domain
-agents to run on a Logical Domain. A Logical Domain agent is a component that
-interacts with the control domain for providing features or information.
-.sp
-.LP
-\fBldmad\fR is responsible for running agents on a Logical Domain and must be
-enabled to ensure proper functionality of all features provided by the domain
-manager on the control domain. It is started at boot time and has no
-configuration options.
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Unstable
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBsvcs\fR(1), \fBsvcadm\fR(1M), \fBsyslog\fR(3C), \fBsyslog.conf\fR(4),
-\fBattributes\fR(5), \fBsmf\fR(5)
-.SH ERRORS
-.sp
-.LP
-\fBldmad\fR uses \fBsyslog\fR(3C) to report status and error messages. All of
-the messages are logged with the \fBLOG_DAEMON\fR facility. Error messages are
-logged with the \fBLOG_ERR\fR and \fBLOG_NOTICE\fR priorities, and
-informational messages are logged with the \fBLOG_INFO\fR priority. The default
-entries in the \fB/etc/syslog.conf\fR file log all of the \fBldmad\fR error
-messages to the \fB/var/adm/messages\fR log.
-.SH NOTES
-.sp
-.LP
-The \fBldmad\fR service is managed by the service management facility,
-\fBsmf\fR(5), under the service identifier:
-.sp
-.in +2
-.nf
-svc:/ldoms/agents:default
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Administrative actions on this service, such as enabling, disabling, or
-requesting restart can be performed using \fBsvcadm\fR(1M). The service's
-status can be queried using the \fBsvcs\fR(1) command.
diff --git a/usr/src/man/man1m/link.1m b/usr/src/man/man1m/link.1m
deleted file mode 100644
index 5d49d65f29..0000000000
--- a/usr/src/man/man1m/link.1m
+++ /dev/null
@@ -1,112 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T
-.\" Copyright (c) 2002Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH LINK 1M "Oct 9, 2002"
-.SH NAME
-link, unlink \- link and unlink files and directories
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/link \fR \fIexisting-file\fR \fInew-file\fR
-.fi
-
-.LP
-.nf
-\fB/usr/xpg4/bin/link \fR \fIexisting-file\fR \fInew-file\fR
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/unlink\fR \fIfile\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBlink\fR and \fBunlink\fR commands link and unlink files and directories.
-Only super-users can use these commands on directories.
-.sp
-.LP
-Use \fBlink\fR to create a new file that points to an existing file. The
-\fIexisting-file\fR and \fInew-file\fR operands specify the existing file and
-newly-created files. See \fBOPERANDS\fR.
-.sp
-.LP
-\fBlink\fR and \fBunlink\fR directly invoke the \fBlink\fR(2) and
-\fBunlink\fR(2) system calls, performing exactly what they are told to do and
-abandoning all error checking. This differs from the \fBln\fR(1) command. See
-\fBln\fR(1).
-.sp
-.LP
-While linked files and directories can be removed using \fBunlink\fR, it is
-safer to use \fBrm\fR(1) and \fBrmdir\fR(1) instead. See \fBrm\fR(1) and
-\fBrmdir\fR(1).
-.SS "/usr/xpg4/bin/link"
-.sp
-.LP
-If the existing file being hard linked is itself a symbolic link, then the
-newly created file (\fInew-file\fR) will be a hard link to the file referenced
-by the symbolic link, not to the symbolic link object itself
-(\fIexisting-file\fR).
-.SH OPERANDS
-.sp
-.LP
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fB\fIexisting-file\fR\fR
-.ad
-.RS 17n
-Specifies the name of the existing file to be linked.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIfile\fR\fR
-.ad
-.RS 17n
-Specifies the name of the file to be unlinked.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fInew-file\fR\fR
-.ad
-.RS 17n
-Specifies the name of newly created (linked) file.
-.RE
-
-.SH ENVIRONMENT VARIABLES
-.sp
-.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
-that affect the execution of \fBlink\fR: \fBLANG\fR, \fBLC_ALL\fR,
-\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.SS "/usr/xpg4/bin/link"
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Standard
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBln\fR(1), \fBrm\fR(1), \fBlink\fR(2), \fBunlink\fR(2), \fBattributes\fR(5),
-\fBenviron\fR(5), \fBstandards\fR(5)
diff --git a/usr/src/man/man1m/listdgrp.1m b/usr/src/man/man1m/listdgrp.1m
deleted file mode 100644
index 19155b1d56..0000000000
--- a/usr/src/man/man1m/listdgrp.1m
+++ /dev/null
@@ -1,92 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 1997 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH LISTDGRP 1M "Jul 5, 1990"
-.SH NAME
-listdgrp \- lists members of a device group
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/bin/listdgrp\fR \fIdgroup\fR...
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBlistdgrp\fR displays the members of the device groups specified by the
-\fIdgroup\fR list.
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRAn example of \fBlistdgrp\fR.
-.sp
-.LP
-The following example lists the devices that belong to group \fBpartitions\fR:
-
-.sp
-.in +2
-.nf
-example% listdgrp partitions
- root
- swap
- usr
-.fi
-.in -2
-.sp
-
-.SH EXIT STATUS
-.sp
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 5n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB1\fR\fR
-.ad
-.RS 5n
-Command was syntax incorrect, an invalid option used, or an internal error
-occurred.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB2\fR\fR
-.ad
-.RS 5n
-A device group table could not be opened for reading.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB3\fR\fR
-.ad
-.RS 5n
-A device group \fIdgroup\fR could not be found in the device group table.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/dgroup.tab\fR\fR
-.ad
-.RS 19n
-Device group table.
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBputdgrp\fR(1M), \fBattributes\fR(5)
diff --git a/usr/src/man/man1m/listen.1m b/usr/src/man/man1m/listen.1m
deleted file mode 100644
index 3082f614f9..0000000000
--- a/usr/src/man/man1m/listen.1m
+++ /dev/null
@@ -1,105 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 1997 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH LISTEN 1M "Apr 3, 1997"
-.SH NAME
-listen \- network listener daemon
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/saf/listen\fR [\fB-m\fR \fIdevstem\fR] \fInet_spec\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBlisten\fR process ``listens'' to a network for service requests, accepts
-requests when they arrive, and invokes servers in response to those service
-requests. The network listener process may be used with any connection-oriented
-network (more precisely, with any connection-oriented transport provider) that
-conforms to the Transport Layer Interface (TLI) Specification.
-.sp
-.LP
-The listener internally generates a pathname for the minor device for each
-connection; it is this pathname that is used in the \fButmpx\fR entry for a
-service, if one is created. By default, this pathname is the concatenation of
-the prefix \fB/dev/\fR\fInetspec\fR with the decimal representation of the
-minor device number. In either case, the representation of the minor device
-number will be at least two digits (for example, 05 or 27), or longer when it
-is necessary to accommodate minor device numbers larger than 99.
-.SH SERVER INVOCATION
-.sp
-.LP
-When a connection indication is received, the listener creates a new transport
-endpoint and accepts the connection on that endpoint. Before giving the file
-descriptor for this new connection to the server, any designated STREAMS
-modules are pushed and the configuration script is executed, (if one exists).
-This file descriptor is appropriate for use with either TLI (see
-\fBt_sync\fR(3NSL) ) or the sockets interface library.
-.sp
-.LP
-By default, a new instance of the server is invoked for each connection. When
-the server is invoked, file descriptor 0 refers to the transport endpoint, and
-is open for reading and writing. File descriptors 1 and 2 are copies of file
-descriptor 0; no other file descriptors are open. The service is invoked with
-the user and group IDs of the user name under which the service was registered
-with the listener, and with the current directory set to the HOME directory of
-that user.
-.sp
-.LP
-Alternatively, a service may be registered so that the listener will pass
-connections to a standing server process through a FIFO or a named stream,
-instead of invoking the server anew for each connection. In this case, the
-connection is passed in the form of a file descriptor that refers to the new
-transport endpoint. Before the file descriptor is sent to the server, the
-listener interprets any configuration script registered for that service using
-\fBdoconfig\fR(3NSL), although \fBdoconfig\fR is invoked with both the
-\fBNORUN\fR and \fBNOASSIGN\fR flags. The server receives the file descriptor
-for the connection in a \fBstrrecvfd\fR structure using an \fBI_RECVFD\fR
-\fBioctl\fR(2).
-.sp
-.LP
-For more details about the listener and its administration, see
-\fBnlsadmin\fR(1M).
-.SH OPTIONS
-.sp
-.ne 2
-.na
-\fB\fB-m\fR\fIdevstem\fR\fR
-.ad
-.RS 13n
-The listener will use \fIdevstem\fR as the prefix for the pathname.
-.RE
-
-.SH FILES
-.sp
-.LP
-\fB/etc/saf/\fR\fIpmtag\fR\fB/\fR\fI*\fR
-.SH SEE ALSO
-.sp
-.LP
-\fBnlsadmin\fR(1M), \fBpmadm\fR(1M), \fBsac\fR(1M), \fBsacadm\fR(1M),
-\fBioctl\fR(2), \fBdoconfig\fR(3NSL), \fBnlsgetcall\fR(3NSL),
-\fBnlsprovider\fR(3NSL), \fBt_sync\fR(3NSL), \fBattributes\fR(5),
-\fBstreamio\fR(7I)
-.sp
-.LP
-\fI\fR
-.SH NOTES
-.sp
-.LP
-When passing a connection to a standing server, the user and group IDs
-contained in the \fBstrrecvfd\fR structure will be those for the listener (that
-is, they will both be 0); the user name under which the service was registered
-with the listener is not reflected in these IDs.
-.sp
-.LP
-When operating multiple instances of the listener on a single transport
-provider, there is a potential race condition in the binding of addresses
-during initialization of the listeners, if any of their services have
-dynamically assigned addresses. This condition would appear as an inability of
-the listener to bind a static-address service to its otherwise valid address,
-and would result from a dynamic-address service having been bound to that
-address by a different instance of the listener.
diff --git a/usr/src/man/man1m/locator.1m b/usr/src/man/man1m/locator.1m
deleted file mode 100644
index c87f500e02..0000000000
--- a/usr/src/man/man1m/locator.1m
+++ /dev/null
@@ -1,120 +0,0 @@
-'\" te
-.\" Copyright (c) 2001, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH LOCATOR 1M "Sep 4, 2001"
-.SH NAME
-locator \- location indicator control
-.SH SYNOPSIS
-.LP
-.nf
-\fB /usr/sbin/locator\fR [\fB-f\fR | \fB-n\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The locator command sets or queries the state of the system locator if such a
-device exists.
-.sp
-.LP
-Without options, the locator command reports the current state of the system.
-.sp
-.LP
-The privileges required to use this command are hardware dependent. Typically,
-only the super user can get or set a locator.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-f\fR\fR
-.ad
-.RS 6n
-Turns the locator off.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR\fR
-.ad
-.RS 6n
-Turns the locator on.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRUsing the \fBlocator\fR Command on a Platform Which Has a
-System Locator LED
-.sp
-.LP
-When issued on a platform which has a system locator \fBLED\fR, the following
-command turns the locator on:
-
-.sp
-.in +2
-.nf
-# \fBlocator \fR\fB-n\fR
-# \fBlocator\fR
-The 'system' locator is on
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRUsing the \fBlocator\fR Command on a Platform Which Does Not
-Have a System Locator LED
-.sp
-.LP
-When issued on a platform which does not have a system locator \fBLED\fR, the
-following command attempts to turn the locator on. The command returns an error
-message.
-
-.sp
-.in +2
-.nf
-# \fBlocator \fR\fB-n\fR
-\&'system' locator not found
-.fi
-.in -2
-.sp
-
-.SH EXIT STATUS
-.sp
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 5n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB1\fR\fR
-.ad
-.RS 5n
-Invalid command line input.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB2\fR\fR
-.ad
-.RS 5n
-The requested operation failed.
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBattributes\fR(5)
diff --git a/usr/src/man/man1m/lockfs.1m b/usr/src/man/man1m/lockfs.1m
deleted file mode 100644
index 3807d0461c..0000000000
--- a/usr/src/man/man1m/lockfs.1m
+++ /dev/null
@@ -1,345 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH LOCKFS 1M "Jan 2, 2008"
-.SH NAME
-lockfs \- change or report file system locks
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/lockfs\fR [\fB-adefhnuw\fR] [\fB-c\fR \fIstring\fR] [\fIfile-system\fR]...
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBlockfs\fR is used to change and report the status of file system locks.
-\fBlockfs\fR reports the lock status and unlocks the file systems that were
-improperly left locked.
-.sp
-.LP
-Using \fBlockfs\fR to lock a file system is discouraged because this requires
-extensive knowledge of SunOS internals to be used effectively and correctly.
-.sp
-.LP
-When invoked with no arguments, \fBlockfs\fR lists the \fBUFS\fR file systems
-that are locked. If \fIfile-system\fR is not specified, and \fB-a\fR is
-specified, \fBlockfs\fR is run on all mounted, \fBUFS\fR type file systems.
-.SH OPTIONS
-.sp
-.LP
-The options are mutually exclusive: \fBwndheuf\fR. If you do specify more than
-one of these options on a \fBlockfs\fR command line, the utility does not
-protest and invokes only the last option specified. In particular, you cannot
-specify a flush (\fB-f\fR) and a lock (for example, \fB-w\fR) on the same
-command line. However, all locking operations implicitly perform a flush, so
-the \fB-f\fR is superfluous when specifying a lock.
-.sp
-.LP
-You must be super-user to use any of the following options, with the exception
-of \fB-a\fR, \fB-f\fR and \fB-v\fR.
-.sp
-.LP
-The following options are supported.
-.sp
-.ne 2
-.na
-\fB\fB-a\fR\fR
-.ad
-.sp .6
-.RS 4n
-Apply command to all mounted, \fBUFS\fR type file systems. \fIfile-system\fR is
-ignored when \fB-a\fR is specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-c\fR \fIstring\fR\fR
-.ad
-.sp .6
-.RS 4n
-Accept a string that is passed as the comment field. The \fB-c\fR only takes
-affect when the lock is being set using the \fB-d\fR, \fB-h\fR, \fB-n\fR,
-\fB-u\fR, or \fB-w\fR options.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-d\fR\fR
-.ad
-.sp .6
-.RS 4n
-Delete-lock (\fBdlock\fR) the specified \fIfile-system\fR. dlock suspends
-access that could remove directory entries.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-e\fR\fR
-.ad
-.sp .6
-.RS 4n
-Error-lock (\fBelock\fR) the specified \fIfile-system\fR. elock blocks all
-local access to the locked file system and returns \fBEWOULDBLOCK\fR on all
-remote access. File systems are elocked by \fBUFS\fR on detection of internal
-inconsistency. They may only be unlocked after successful repair by \fBfsck\fR,
-which is usually done automatically (see \fBmount_ufs\fR(1M)). elocked file
-systems can be unmounted.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR\fR
-.ad
-.sp .6
-.RS 4n
-Force a synchronous flush of all data that is dirty at the time \fBfsflush\fR
-is run to its backing store for the named file system (or for all file
-systems.)
-.sp
-It is a more reliable method than using \fBsync\fR(1M) because it does not
-return until all possible data has been pushed. In the case of \fBUFS\fR
-filesystems with logging enabled, the log is also rolled before returning.
-Additional data can be modified by the time \fBfsflush\fR exits, so using one
-of the locking options is more likely to be of general use.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-h\fR\fR
-.ad
-.sp .6
-.RS 4n
-Hard-lock (\fBhlock\fR) the specified \fIfile-system\fR. hlock returns an error
-on every access to the locked file system, and cannot be unlocked. hlocked file
-systems can be unmounted.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR\fR
-.ad
-.sp .6
-.RS 4n
-Name-lock (\fBnlock\fR) the specified \fIfile-system\fR. nlock suspends
-accesses that could change or remove existing directories entries.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-u\fR\fR
-.ad
-.sp .6
-.RS 4n
-Unlock (\fBulock\fR) the specified \fIfile-system\fR. ulock awakens suspended
-accesses.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.sp .6
-.RS 4n
-Enable verbose output.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-w\fR\fR
-.ad
-.sp .6
-.RS 4n
-Write-lock (\fBwlock\fR) the specified \fIfile-system\fR. wlock suspends writes
-that would modify the file system. Access times are not kept while a file
-system is write-locked.
-.RE
-
-.SH OPERANDS
-.sp
-.LP
-The following operands are supported.
-.sp
-.ne 2
-.na
-\fB\fIfile-system\fR\fR
-.ad
-.sp .6
-.RS 4n
-A list of path names separated by whitespace. Note that \fIfile-system\fR can
-be a directory rather than the specific name of a file system, such as \fB/\fR
-or \fB/usr\fR. For example, if you specify \fB/export/home\fR as an argument to
-a \fBlockfs\fR command and \fB/export/home\fR is mounted on the root (\fB/\fR)
-file system, the \fBlockfs\fR command will take effect on the root file system.
-.RE
-
-.SH USAGE
-.sp
-.LP
-See \fBlargefile\fR(5) for the description of the behavior of \fBlockfs\fR when
-encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRUsing \fBlockfs\fR \fB-a\fR
-.sp
-.LP
-In the following examples, \fIfilesystem\fR is the pathname of the mounted-on
-directory (mount point). \fBLocktype\fR is one of "\fBwrite\fR," "\fIname\fR,"
-"\fIdelete\fR," "\fIhard\fR," or "\fIunlock\fR". When enclosed in parenthesis,
-the lock is being set. \fBComment\fR is a string set by the process that last
-issued a lock command.
-
-.sp
-.LP
-The following example shows the \fBlockfs\fR output when only the \fB-a\fR
-option is specified.
-
-.sp
-.in +2
-.nf
-example# \fB/usr/sbin/lockfs -a\fR
-.fi
-.in -2
-.sp
-
-.sp
-
-.sp
-.TS
-l l l
-l l l .
-Filesystem Locktype Comment
-/ unlock
-/var unlock
-.TE
-
-.sp
-.in +2
-.nf
-example#
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRUsing \fBlockfs\fR \fB-w\fR
-.sp
-.LP
-The following example shows the \fBlockfs\fR output when the \fB-w\fR option is
-used to write lock the \fB/var\fR file system and the comment string is set
-using the \fB-c\fR option. The \fB-a\fR option is then specified on a separate
-command line.
-
-.sp
-.in +2
-.nf
-example# \fB/usr/sbin/lockfs -w -c "lockfs: write lock example" /var\fR
-example# \fB/usr/sbin/lockfs -a\fR
-.fi
-.in -2
-.sp
-
-.sp
-
-.sp
-.TS
-l l l
-l l l .
-Filesystem Locktype Comment
-/ unlock
-/var write lockfs: write lock example
-.TE
-
-.sp
-.in +2
-.nf
-example#
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRUsing \fBlockfs\fR \fB-u\fR
-.sp
-.LP
-The following example shows the \fBlockfs\fR output when the \fB-u\fR option is
-used to unlock the \fB/var\fR file system and the comment string is set using
-the \fB-c\fR option.
-
-.sp
-.in +2
-.nf
-example# \fB/usr/sbin/lockfs -uc "lockfs: unlock example" /var\fR
-example# \fB/usr/sbin/lockfs /var\fR
-.fi
-.in -2
-.sp
-
-.sp
-
-.sp
-.TS
-l l l
-l l l .
-Filesystem Locktype Comment
-/var unlock lockfs: unlock example
-.TE
-
-.sp
-.in +2
-.nf
-example#
-.fi
-.in -2
-.sp
-
-.SH SEE ALSO
-.sp
-.LP
-\fBkill\fR(1), \fBmount_ufs\fR(1M), \fBsync\fR(1M), \fBattributes\fR(5),
-\fBlargefile\fR(5), \fBufs\fR(7FS),
-.sp
-.LP
-\fI\fR
-.SH DIAGNOSTICS
-.sp
-.ne 2
-.na
-\fB\fIfile system\fR\fB: Not owner\fR\fR
-.ad
-.sp .6
-.RS 4n
-You must be root to use this command.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIfile system\fR \fB:Deadlock condition detected/avoided\fR\fR
-.ad
-.sp .6
-.RS 4n
-A file is enabled for accounting or swapping, on \fIfile system\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIfile system\fR\fB: Device busy\fR\fR
-.ad
-.sp .6
-.RS 4n
-Another process is setting the lock on \fIfile system\fR.
-.RE
-
diff --git a/usr/src/man/man1m/lockstat.1m b/usr/src/man/man1m/lockstat.1m
deleted file mode 100644
index a6798ed849..0000000000
--- a/usr/src/man/man1m/lockstat.1m
+++ /dev/null
@@ -1,863 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH LOCKSTAT 1M "Dec 10, 2017"
-.SH NAME
-lockstat \- report kernel lock and profiling statistics
-.SH SYNOPSIS
-.LP
-.nf
-\fBlockstat\fR [\fB-ACEHI\fR] [\fB-e\fR \fIevent_list\fR] [\fB-i\fR \fIrate\fR]
- [\fB-b\fR | \fB-t\fR | \fB-h\fR | \fB-s\fR \fIdepth\fR] [\fB-n\fR \fInrecords\fR]
- [\fB-l\fR \fIlock\fR [, \fIsize\fR]] [\fB-d\fR \fIduration\fR]
- [\fB-f\fR \fIfunction\fR [, \fIsize\fR]] [\fB-T\fR] [\fB-ckgwWRpP\fR] [\fB-D\fR \fIcount\fR]
- [\fB-o\fR \fIfilename\fR] [\fB-x\fR \fIopt\fR [=val]] \fIcommand\fR [\fIargs\fR]
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBlockstat\fR utility gathers and displays kernel locking and profiling
-statistics. \fBlockstat\fR allows you to specify which events to watch (for
-example, spin on adaptive mutex, block on read access to rwlock due to waiting
-writers, and so forth) how much data to gather for each event, and how to
-display the data. By default, \fBlockstat\fR monitors all lock contention
-events, gathers frequency and timing data about those events, and displays the
-data in decreasing frequency order, so that the most common events appear
-first.
-.sp
-.LP
-\fBlockstat\fR gathers data until the specified command completes. For example,
-to gather statistics for a fixed-time interval, use \fBsleep\fR(1) as the
-command, as follows:
-.sp
-.LP
-\fBexample#\fR \fBlockstat\fR \fBsleep\fR \fB5\fR
-.sp
-.LP
-When the \fB-I\fR option is specified, \fBlockstat\fR establishes a
-per-processor high-level periodic interrupt source to gather profiling data.
-The interrupt handler simply generates a \fBlockstat\fR event whose caller is
-the interrupted PC (program counter). The profiling event is just like any
-other \fBlockstat\fR event, so all of the normal \fBlockstat\fR options are
-applicable.
-.sp
-.LP
-\fBlockstat\fR relies on DTrace to modify the running kernel's text to
-intercept events of interest. This imposes a small but measurable overhead on
-all system activity, so access to \fBlockstat\fR is restricted to super-user by
-default. The system administrator can permit other users to use \fBlockstat\fR
-by granting them additional DTrace privileges. Refer to the \fIDynamic
-Tracing Guide\fR for more information about DTrace security features.
-.SH OPTIONS
-.LP
-The following options are supported:
-.SS "Event Selection"
-.LP
-If no event selection options are specified, the default is \fB-C\fR.
-.sp
-.ne 2
-.na
-\fB\fB-A\fR\fR
-.ad
-.sp .6
-.RS 4n
-Watch all lock events. \fB-A\fR is equivalent to \fB-CH\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-C\fR\fR
-.ad
-.sp .6
-.RS 4n
-Watch contention events.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-E\fR\fR
-.ad
-.sp .6
-.RS 4n
-Watch error events.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\fR\fB-e\fR \fIevent_list\fR\fR
-.ad
-.sp .6
-.RS 4n
-Only watch the specified events. \fIevent\fR \fIlist\fR is a comma-separated
-list of events or ranges of events such as 1,4-7,35. Run \fBlockstat\fR with no
-arguments to get a brief description of all events.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-H\fR\fR
-.ad
-.sp .6
-.RS 4n
-Watch hold events.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-I\fR\fR
-.ad
-.sp .6
-.RS 4n
-Watch profiling interrupt events.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\fR\fB-i\fR \fIrate\fR\fR
-.ad
-.sp .6
-.RS 4n
-Interrupt rate (per second) for \fB-I\fR. The default is 97 Hz, so that
-profiling doesn't run in lockstep with the clock interrupt (which runs at 100
-Hz).
-.RE
-
-.SS "Data Gathering"
-.ne 2
-.na
-\fB\fB-x\fR \fIarg\fR[=\fIval\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Enable or modify a DTrace runtime option or D compiler option. The list of
-options is found in the \fI\fR. Boolean options are enabled by specifying their
-name. Options with values are set by separating the option name and value with
-an equals sign (=).
-.RE
-
-.SS "Data Gathering (Mutually Exclusive)"
-.ne 2
-.na
-\fB\fB-b\fR\fR
-.ad
-.sp .6
-.RS 4n
-Basic statistics: lock, caller, number of events.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-h\fR\fR
-.ad
-.sp .6
-.RS 4n
-Histogram: Timing plus time-distribution histograms.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\fR\fB-s\fR \fIdepth\fR\fR
-.ad
-.sp .6
-.RS 4n
-Stack trace: Histogram plus stack traces up to \fIdepth\fR frames deep.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-t\fR\fR
-.ad
-.sp .6
-.RS 4n
-Timing: Basic plus timing for all events [default].
-.RE
-
-.SS "Data Filtering"
-.ne 2
-.na
-\fB\fB\fR\fB-d\fR \fIduration\fR\fR
-.ad
-.sp .6
-.RS 4n
-Only watch events longer than \fIduration\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\fR\fB-f\fR \fIfunc[,size]\fR\fR
-.ad
-.sp .6
-.RS 4n
-Only watch events generated by \fIfunc\fR, which can be specified as a symbolic
-name or hex address. \fIsize\fR defaults to the \fBELF\fR symbol size if
-available, or \fB1\fR if not.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\fR\fB-l\fR \fIlock[,size]\fR\fR
-.ad
-.sp .6
-.RS 4n
-Only watch \fIlock\fR, which can be specified as a symbolic name or hex
-address. \fBsize\fR defaults to the \fBELF\fR symbol size or \fB1\fR if the
-symbol size is not available.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\fR\fB-n\fR \fInrecords\fR\fR
-.ad
-.sp .6
-.RS 4n
-Maximum number of data records.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-T\fR\fR
-.ad
-.sp .6
-.RS 4n
-Trace (rather than sample) events [off by default].
-.RE
-
-.SS "Data Reporting"
-.ne 2
-.na
-\fB\fB-c\fR\fR
-.ad
-.sp .6
-.RS 4n
-Coalesce lock data for lock arrays (for example, \fBpse_mutex[]\fR).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\fR\fB-D\fR \fIcount\fR\fR
-.ad
-.sp .6
-.RS 4n
-Only display the top \fIcount\fR events of each type.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-g\fR\fR
-.ad
-.sp .6
-.RS 4n
-Show total events generated by function. For example, if \fBfoo()\fR calls
-\fBbar()\fR in a loop, the work done by \fBbar()\fR counts as work generated by
-\fBfoo()\fR (along with any work done by \fBfoo()\fR itself). The \fB-g\fR
-option works by counting the total number of stack frames in which each
-function appears. This implies two things: (1) the data reported by \fB-g\fR
-can be misleading if the stack traces are not deep enough, and (2) functions
-that are called recursively might show greater than 100% activity. In light of
-issue (1), the default data gathering mode when using \fB-g\fR is \fB-s\fR
-\fB50\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-k\fR\fR
-.ad
-.sp .6
-.RS 4n
-Coalesce PCs within functions.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\fR\fB-o\fR \fIfilename\fR\fR
-.ad
-.sp .6
-.RS 4n
-Direct output to \fIfilename\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-P\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sort data by (\fIcount * time\fR) product.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR\fR
-.ad
-.sp .6
-.RS 4n
-Parsable output format.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-R\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display rates (events per second) rather than counts.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-W\fR\fR
-.ad
-.sp .6
-.RS 4n
-Whichever: distinguish events only by caller, not by lock.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-w\fR\fR
-.ad
-.sp .6
-.RS 4n
-Wherever: distinguish events only by lock, not by caller.
-.RE
-
-.SH DISPLAY FORMATS
-.LP
-The following headers appear over various columns of data.
-.sp
-.ne 2
-.na
-\fB\fBCount\fR or \fBops/s\fR\fR
-.ad
-.sp .6
-.RS 4n
-Number of times this event occurred, or the rate (times per second) if \fB-R\fR
-was specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBindv\fR\fR
-.ad
-.sp .6
-.RS 4n
-Percentage of all events represented by this individual event.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBgenr\fR\fR
-.ad
-.sp .6
-.RS 4n
-Percentage of all events generated by this function.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcuml\fR\fR
-.ad
-.sp .6
-.RS 4n
-Cumulative percentage; a running total of the individuals.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrcnt\fR\fR
-.ad
-.sp .6
-.RS 4n
-Average reference count. This will always be \fB1\fR for exclusive locks
-(mutexes, spin locks, rwlocks held as writer) but can be greater than \fB1\fR
-for shared locks (rwlocks held as reader).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnsec\fR\fR
-.ad
-.sp .6
-.RS 4n
-Average duration of the events in nanoseconds, as appropriate for the event.
-For the profiling event, duration means interrupt latency.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBLock\fR\fR
-.ad
-.sp .6
-.RS 4n
-Address of the lock; displayed symbolically if possible.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBCPU+PIL\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBCPU\fR plus processor interrupt level (\fBPIL\fR). For example, if \fBCPU\fR
-4 is interrupted while at \fBPIL\fR 6, this will be reported as \fBcpu[4]+6\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBCaller\fR\fR
-.ad
-.sp .6
-.RS 4n
-Address of the caller; displayed symbolically if possible.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRMeasuring Kernel Lock Contention
-.sp
-.in +2
-.nf
-example# \fBlockstat sleep 5\fR
-Adaptive mutex spin: 2210 events in 5.055 seconds (437 events/sec)
-.fi
-.in -2
-.sp
-
-.sp
-.in +2
-.nf
-Count indv cuml rcnt nsec Lock Caller
-------------------------------------------------------------------------
- 269 12% 12% 1.00 2160 service_queue background+0xdc
- 249 11% 23% 1.00 86 service_queue qenable_locked+0x64
- 228 10% 34% 1.00 131 service_queue background+0x15c
- 68 3% 37% 1.00 79 0x30000024070 untimeout+0x1c
- 59 3% 40% 1.00 384 0x300066fa8e0 background+0xb0
- 43 2% 41% 1.00 30 rqcred_lock svc_getreq+0x3c
- 42 2% 43% 1.00 341 0x30006834eb8 background+0xb0
- 41 2% 45% 1.00 135 0x30000021058 untimeout+0x1c
- 40 2% 47% 1.00 39 rqcred_lock svc_getreq+0x260
- 37 2% 49% 1.00 2372 0x300068e83d0 hmestart+0x1c4
- 36 2% 50% 1.00 77 0x30000021058 timeout_common+0x4
- 36 2% 52% 1.00 354 0x300066fa120 background+0xb0
- 32 1% 53% 1.00 97 0x30000024070 timeout_common+0x4
- 31 1% 55% 1.00 2923 0x300069883d0 hmestart+0x1c4
- 29 1% 56% 1.00 366 0x300066fb290 background+0xb0
- 28 1% 57% 1.00 117 0x3000001e040 untimeout+0x1c
- 25 1% 59% 1.00 93 0x3000001e040 timeout_common+0x4
- 22 1% 60% 1.00 25 0x30005161110 sync_stream_buf+0xdc
- 21 1% 60% 1.00 291 0x30006834eb8 putq+0xa4
- 19 1% 61% 1.00 43 0x3000515dcb0 mdf_alloc+0xc
- 18 1% 62% 1.00 456 0x30006834eb8 qenable+0x8
- 18 1% 63% 1.00 61 service_queue queuerun+0x168
- 17 1% 64% 1.00 268 0x30005418ee8 vmem_free+0x3c
-[...]
-
-R/W reader blocked by writer: 76 events in 5.055 seconds (15 events/sec)
-
-Count indv cuml rcnt nsec Lock Caller
-------------------------------------------------------------------------
- 23 30% 30% 1.00 22590137 0x300098ba358 ufs_dirlook+0xd0
- 17 22% 53% 1.00 5820995 0x3000ad815e8 find_bp+0x10
- 13 17% 70% 1.00 2639918 0x300098ba360 ufs_iget+0x198
- 4 5% 75% 1.00 3193015 0x300098ba360 ufs_getattr+0x54
- 3 4% 79% 1.00 7953418 0x3000ad817c0 find_bp+0x10
- 3 4% 83% 1.00 935211 0x3000ad815e8 find_read_lof+0x14
- 2 3% 86% 1.00 16357310 0x300073a4720 find_bp+0x10
- 2 3% 88% 1.00 2072433 0x300073a4720 find_read_lof+0x14
- 2 3% 91% 1.00 1606153 0x300073a4370 find_bp+0x10
- 1 1% 92% 1.00 2656909 0x300107e7400 ufs_iget+0x198
-[...]
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRMeasuring Hold Times
-.sp
-.in +2
-.nf
-example# \fBlockstat -H -D 10 sleep 1\fR
-Adaptive mutex spin: 513 events
-.fi
-.in -2
-.sp
-
-.sp
-.in +2
-.nf
-Count indv cuml rcnt nsec Lock Caller
--------------------------------------------------------------------------
- 480 5% 5% 1.00 1136 0x300007718e8 putnext+0x40
- 286 3% 9% 1.00 666 0x3000077b430 getf+0xd8
- 271 3% 12% 1.00 537 0x3000077b430 msgio32+0x2fc
- 270 3% 15% 1.00 3670 0x300007718e8 strgetmsg+0x3d4
- 270 3% 18% 1.00 1016 0x300007c38b0 getq_noenab+0x200
- 264 3% 20% 1.00 1649 0x300007718e8 strgetmsg+0xa70
- 216 2% 23% 1.00 6251 tcp_mi_lock tcp_snmp_get+0xfc
- 206 2% 25% 1.00 602 thread_free_lock clock+0x250
- 138 2% 27% 1.00 485 0x300007c3998 putnext+0xb8
- 138 2% 28% 1.00 3706 0x300007718e8 strrput+0x5b8
--------------------------------------------------------------------------
-[...]
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRMeasuring Hold Times for Stack Traces Containing a Specific
-Function
-.sp
-.in +2
-.nf
-example# \fBlockstat -H -f tcp_rput_data -s 50 -D 10 sleep 1\fR
-Adaptive mutex spin: 11 events in 1.023 seconds (11
-events/sec)
-.fi
-.in -2
-.sp
-
-.sp
-.in +2
-.nf
--------------------------------------------------------------------------
-Count indv cuml rcnt nsec Lock Caller
- 9 82% 82% 1.00 2540 0x30000031380 tcp_rput_data+0x2b90
-
- nsec ------ Time Distribution ------ count Stack
- 256 |@@@@@@@@@@@@@@@@ 5 tcp_rput_data+0x2b90
- 512 |@@@@@@ 2 putnext+0x78
- 1024 |@@@ 1 ip_rput+0xec4
- 2048 | 0 _c_putnext+0x148
- 4096 | 0 hmeread+0x31c
- 8192 | 0 hmeintr+0x36c
- 16384 |@@@ 1
-sbus_intr_wrapper+0x30
-[...]
-
-Count indv cuml rcnt nsec Lock Caller
- 1 9% 91% 1.00 1036 0x30000055380 freemsg+0x44
-
- nsec ------ Time Distribution ------ count Stack
- 1024 |@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 1 freemsg+0x44
- tcp_rput_data+0x2fd0
- putnext+0x78
- ip_rput+0xec4
- _c_putnext+0x148
- hmeread+0x31c
- hmeintr+0x36c
-
-sbus_intr_wrapper+0x30
--------------------------------------------------------------------------
-[...]
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 4 \fRBasic Kernel Profiling
-.sp
-.LP
-For basic profiling, we don't care whether the profiling interrupt sampled
-\fBfoo()\fR\fB+0x4c\fR or \fBfoo()\fR\fB+0x78\fR; we care only that it sampled
-somewhere in \fBfoo()\fR, so we use \fB-k\fR. The \fBCPU\fR and \fBPIL\fR
-aren't relevant to basic profiling because we are measuring the system as a
-whole, not a particular \fBCPU\fR or interrupt level, so we use \fB-W\fR.
-
-.sp
-.in +2
-.nf
-example# \fBlockstat -kIW -D 20 ./polltest\fR
-Profiling interrupt: 82 events in 0.424 seconds (194
-events/sec)
-.fi
-.in -2
-.sp
-
-.sp
-.in +2
-.nf
-Count indv cuml rcnt nsec Hottest CPU+PIL Caller
------------------------------------------------------------------------
- 8 10% 10% 1.00 698 cpu[1] utl0
- 6 7% 17% 1.00 299 cpu[0] read
- 5 6% 23% 1.00 124 cpu[1] getf
- 4 5% 28% 1.00 327 cpu[0] fifo_read
- 4 5% 33% 1.00 112 cpu[1] poll
- 4 5% 38% 1.00 212 cpu[1] uiomove
- 4 5% 43% 1.00 361 cpu[1] mutex_tryenter
- 3 4% 46% 1.00 682 cpu[0] write
- 3 4% 50% 1.00 89 cpu[0] pcache_poll
- 3 4% 54% 1.00 118 cpu[1] set_active_fd
- 3 4% 57% 1.00 105 cpu[0] syscall_trap32
- 3 4% 61% 1.00 640 cpu[1] (usermode)
- 2 2% 63% 1.00 127 cpu[1] fifo_poll
- 2 2% 66% 1.00 300 cpu[1] fifo_write
- 2 2% 68% 1.00 669 cpu[0] releasef
- 2 2% 71% 1.00 112 cpu[1] bt_getlowbit
- 2 2% 73% 1.00 247 cpu[1] splx
- 2 2% 76% 1.00 503 cpu[0] mutex_enter
- 2 2% 78% 1.00 467 cpu[0]+10 disp_lock_enter
- 2 2% 80% 1.00 139 cpu[1] default_copyin
------------------------------------------------------------------------
-[...]
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 5 \fRGenerated-load Profiling
-.sp
-.LP
-In the example above, 5% of the samples were in \fBpoll()\fR. This tells us how
-much time was spent inside \fBpoll()\fR itself, but tells us nothing about how
-much work was \fBgenerated\fR by \fBpoll()\fR; that is, how much time we spent
-in functions called by \fBpoll()\fR. To determine that, we use the \fB-g\fR
-option. The example below shows that although \fBpolltest\fR spends only 5% of
-its time in \fBpoll()\fR itself, \fBpoll()\fR-induced work accounts for 34% of
-the load.
-
-.sp
-.LP
-Note that the functions that generate the profiling interrupt
-(\fBlockstat_intr()\fR, \fBcyclic_fire()\fR, and so forth) appear in every
-stack trace, and therefore are considered to have generated 100% of the load.
-This illustrates an important point: the generated load percentages do
-\fBnot\fR add up to 100% because they are not independent. If 72% of all stack
-traces contain both \fBfoo()\fR and \fBbar()\fR, then both \fBfoo()\fR and
-\fBbar()\fR are 72% load generators.
-
-.sp
-.in +2
-.nf
-example# \fBlockstat -kgIW -D 20 ./polltest\fR
-Profiling interrupt: 80 events in 0.412 seconds (194 events/sec)
-.fi
-.in -2
-.sp
-
-.sp
-.in +2
-.nf
-Count genr cuml rcnt nsec Hottest CPU+PIL Caller
--------------------------------------------------------------------------
- 80 100% ---- 1.00 310 cpu[1] lockstat_intr
- 80 100% ---- 1.00 310 cpu[1] cyclic_fire
- 80 100% ---- 1.00 310 cpu[1] cbe_level14
- 80 100% ---- 1.00 310 cpu[1] current_thread
- 27 34% ---- 1.00 176 cpu[1] poll
- 20 25% ---- 1.00 221 cpu[0] write
- 19 24% ---- 1.00 249 cpu[1] read
- 17 21% ---- 1.00 232 cpu[0] write32
- 17 21% ---- 1.00 207 cpu[1] pcache_poll
- 14 18% ---- 1.00 319 cpu[0] fifo_write
- 13 16% ---- 1.00 214 cpu[1] read32
- 10 12% ---- 1.00 208 cpu[1] fifo_read
- 10 12% ---- 1.00 787 cpu[1] utl0
- 9 11% ---- 1.00 178 cpu[0] pcacheset_resolve
- 9 11% ---- 1.00 262 cpu[0] uiomove
- 7 9% ---- 1.00 506 cpu[1] (usermode)
- 5 6% ---- 1.00 195 cpu[1] fifo_poll
- 5 6% ---- 1.00 136 cpu[1] syscall_trap32
- 4 5% ---- 1.00 139 cpu[0] releasef
- 3 4% ---- 1.00 277 cpu[1] polllock
--------------------------------------------------------------------------
-[...]
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 6 \fRGathering Lock Contention and Profiling Data for a Specific
-Module
-.sp
-.LP
-In this example we use the \fB-f\fR option not to specify a single function,
-but rather to specify the entire text space of the \fBsbus\fR module. We gather
-both lock contention and profiling statistics so that contention can be
-correlated with overall load on the module.
-
-.sp
-.in +2
-.nf
-example# \fBmodinfo | grep sbus\fR
- 24 102a8b6f b8b4 59 1 sbus (SBus (sysio) nexus driver)
-.fi
-.in -2
-.sp
-
-.sp
-.in +2
-.nf
-example# \fBlockstat -kICE -f 0x102a8b6f,0xb8b4 sleep 10\fR
-Adaptive mutex spin: 39 events in 10.042 seconds (4 events/sec)
-.fi
-.in -2
-.sp
-
-.sp
-.in +2
-.nf
-Count indv cuml rcnt nsec Lock Caller
--------------------------------------------------------------------------
- 15 38% 38% 1.00 206 0x30005160528 sync_stream_buf
- 7 18% 56% 1.00 14 0x30005160d18 sync_stream_buf
- 6 15% 72% 1.00 27 0x300060c3118 sync_stream_buf
- 5 13% 85% 1.00 24 0x300060c3510 sync_stream_buf
- 2 5% 90% 1.00 29 0x300060c2d20 sync_stream_buf
- 2 5% 95% 1.00 24 0x30005161cf8 sync_stream_buf
- 1 3% 97% 1.00 21 0x30005161110 sync_stream_buf
- 1 3% 100% 1.00 23 0x30005160130 sync_stream_buf
-[...]
-
-Adaptive mutex block: 9 events in 10.042 seconds (1 events/sec)
-
-Count indv cuml rcnt nsec Lock Caller
--------------------------------------------------------------------------
- 4 44% 44% 1.00 156539 0x30005160528 sync_stream_buf
- 2 22% 67% 1.00 763516 0x30005160d18 sync_stream_buf
- 1 11% 78% 1.00 462130 0x300060c3510 sync_stream_buf
- 1 11% 89% 1.00 288749 0x30005161110 sync_stream_buf
- 1 11% 100% 1.00 1015374 0x30005160130 sync_stream_buf
-[...]
-
-Profiling interrupt: 229 events in 10.042 seconds (23 events/sec)
-
-Count indv cuml rcnt nsec Hottest CPU+PIL Caller
-
--------------------------------------------------------------------------
- 89 39% 39% 1.00 426 cpu[0]+6 sync_stream_buf
- 64 28% 67% 1.00 398 cpu[0]+6 sbus_intr_wrapper
- 23 10% 77% 1.00 324 cpu[0]+6 iommu_dvma_kaddr_load
- 21 9% 86% 1.00 512 cpu[0]+6 iommu_tlb_flush
- 14 6% 92% 1.00 342 cpu[0]+6 iommu_dvma_unload
- 13 6% 98% 1.00 306 cpu[1] iommu_dvma_sync
- 5 2% 100% 1.00 389 cpu[1] iommu_dma_bindhdl
--------------------------------------------------------------------------
-[...]
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 7 \fRDetermining the Average PIL (processor interrupt level) for a
-CPU
-.sp
-.in +2
-.nf
-example# \fBlockstat -Iw -l cpu[3] ./testprog\fR
-
-Profiling interrupt: 14791 events in 152.463 seconds (97 events/sec)
-
-Count indv cuml rcnt nsec CPU+PIL Hottest Caller
-
------------------------------------------------------------------------
-13641 92% 92% 1.00 253 cpu[3] (usermode)
- 579 4% 96% 1.00 325 cpu[3]+6 ip_ocsum+0xe8
- 375 3% 99% 1.00 411 cpu[3]+10 splx
- 154 1% 100% 1.00 527 cpu[3]+4 fas_intr_svc+0x80
- 41 0% 100% 1.00 293 cpu[3]+13 send_mondo+0x18
- 1 0% 100% 1.00 266 cpu[3]+12 zsa_rxint+0x400
------------------------------------------------------------------------
-[...]
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 8 \fRDetermining which Subsystem is Causing the System to be Busy
-.sp
-.in +2
-.nf
-example# \fBlockstat -s 10 -I sleep 20\fR
-
-Profiling interrupt: 4863 events in 47.375 seconds (103 events/sec)
-
-Count indv cuml rcnt nsec CPU+PIL Caller
-
------------------------------------------------------------------------
-1929 40% 40% 0.00 3215 cpu[0] usec_delay+0x78
- nsec ------ Time Distribution ------ count Stack
- 4096 |@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 1872 ata_wait+0x90
- 8192 | 27 acersb_get_intr_status+0x34
- 16384 | 29 ata_set_feature+0x124
- 32768 | 1 ata_disk_start+0x15c
- ata_hba_start+0xbc
- ghd_waitq_process_and \e
- _mutex_hold+0x70
- ghd_waitq_process_and \e
- _mutex_exit+0x4
- ghd_transport+0x12c
- ata_disk_tran_start+0x108
------------------------------------------------------------------------
-[...]
-.fi
-.in -2
-.sp
-
-.SH SEE ALSO
-.LP
-\fBdtrace\fR(1M), \fBplockstat\fR(1M), \fBattributes\fR(5), \fBlockstat\fR(7D),
-\fBmutex\fR(9F), \fBrwlock\fR(9F)
-.sp
-.LP
-\fIDynamic Tracing Guide\fR:
-.sp
-.LP
-https://illumos.org/books/dtrace/
-
-.SH NOTES
-.LP
-Tail-call elimination can affect call sites. For example, if
-\fBfoo()\fR\fB+0x50\fR calls \fBbar()\fR and the last thing \fBbar()\fR does is
-call \fBmutex_exit()\fR, the compiler can arrange for \fBbar()\fR to branch to
-\fBmutex_exit()\fR with a return address of \fBfoo()\fR\fB+0x58\fR. Thus, the
-\fBmutex_exit()\fR in \fBbar()\fR will appear as though it occurred at
-\fBfoo()\fR\fB+0x58\fR.
-.sp
-.LP
-The \fBPC\fR in the stack frame in which an interrupt occurs can be bogus
-because, between function calls, the compiler is free to use the return address
-register for local storage.
-.sp
-.LP
-When using the \fB-I\fR and \fB-s\fR options together, the interrupted PC will
-usually not appear anywhere in the stack since the interrupt handler is entered
-asynchronously, not by a function call from that \fBPC\fR.
-.sp
-.LP
-The \fBlockstat\fR technology is provided on an as-is basis. The format and
-content of \fBlockstat\fR output reflect the current kernel
-implementation and are therefore subject to change in future releases.
diff --git a/usr/src/man/man1m/lofiadm.1m b/usr/src/man/man1m/lofiadm.1m
deleted file mode 100644
index 079caf2502..0000000000
--- a/usr/src/man/man1m/lofiadm.1m
+++ /dev/null
@@ -1,640 +0,0 @@
-'\" te
-.\" Copyright 2016 Toomas Soome <tsoome@me.com>
-.\" Copyright 2013 Nexenta Systems, Inc. All rights reserved.
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
-.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.Dd Jun 14, 2016
-.Dt LOFIADM 1M
-.Os
-.Sh NAME
-.Nm lofiadm
-.Nd administer files available as block devices through lofi
-.Sh SYNOPSIS
-.Nm
-.Op Fl r
-.Op Fl l
-.Fl a Ar file Op Ar device
-.Nm
-.Op Fl r
-.Fl c
-.Ar crypto_algorithm
-.Fl a
-.Ar file Op Ar device
-.Nm
-.Op Fl r
-.Fl c Ar crypto_algorithm
-.Fl k Ar raw_key_file
-.Fl a Ar file Op Ar device
-.Nm
-.Op Fl r
-.Fl c Ar crypto_algorithm
-.Fl T Ar token_key
-.Fl a Ar file Op Ar device
-.Nm
-.Op Fl r
-.Fl c Ar crypto_algorithm
-.Fl T Ar token_key
-.Fl k Ar wrapped_key_file
-.Fl a Ar file Op Ar device
-.Nm
-.Op Fl r
-.Fl c Ar crypto_algorithm
-.Fl e
-.Fl a Ar file Op Ar device
-.Nm
-.Fl C Ar algorithm
-.Op Fl s Ar segment_size
-.Ar file
-.Nm
-.Fl d Ar file Ns | Ns Ar device
-.Nm
-.Fl U Ar file
-.Nm
-.Op Ar file Ns | Ns device
-.Sh DESCRIPTION
-.Nm
-administers
-.Sy lofi ,
-the loopback file driver.
-.Sy lofi
-allows a file to be associated with a block device.
-That file can then be accessed through the block device.
-This is useful when the file contains an image of some filesystem (such as a
-floppy or
-.Sy CD-ROM
-image), because the block device can then be used with the normal system
-utilities for mounting, checking or repairing filesystems.
-See
-.Xr fsck 1M
-and
-.Xr mount 1M .
-.Pp
-Use
-.Nm
-to add a file as a loopback device, remove such an
-association, or print information about the current associations.
-.Pp
-Encryption and compression options are mutually exclusive on the command line.
-Further, an encrypted file cannot be compressed later, nor can a compressed
-file be encrypted later.
-.Pp
-In the global zone,
-.Nm
-can be used on both the global
-zone devices and all devices owned by other non-global zones on the system.
-.Ss Labeled Devices
-If the command line flag,
-.Fl l ,
-is used while creating a loopack device,
-.Sy lofi
-will create a labeled loopback
-device, and will generate device links in
-.Pa /dev/{dsk,rdsk}
-directories for partitions or slices.
-.Pp
-Before using these devices, users should create or verify
-partitioning by using partition management tools such as
-.Xr format 1M and
-.Xr fdisk 1M .
-Once the device has been appropriately partitioned, the labeled
-device can be used as normal disk to create and mount file systems and to store
-data.
-Mappings created by
-.Nm
-are not permanent and not persisted by the system.
-If power is lost or the system is rebooted, then the mappings will need to be
-created again.
-.Pp
-The partition table requires space from the mapped file.
-.Sy lofi
-does not support converting previously created unlabeled loopback device images
-to labeled loopback devices.
-If an unlabeled device is used as a labeled device, writing to it will corrupt
-it.
-.Sh OPTIONS
-The following options are supported:
-.Bl -tag -width Ds
-.It Fl a Ar file Op Ar device
-Add
-.Sy file
-as a block device.
-.Pp
-If
-.Sy device
-is not specified, an available device is picked.
-.Pp
-If
-.Sy device
-is specified,
-.Nm
-attempts to assign it to
-.Sy file .
-.Sy device
-must be available or
-.Nm
-will fail.
-The ability to specify a device is provided for use in scripts that wish to
-reestablish a particular set of associations.
-A device may not be specified when using a labeled lofi device.
-.It Fl C Ar {gzip | gzip-N | lzma}
-Compress the file with the specified compression algorithm.
-.Pp
-The
-.Sy gzip
-compression algorithm uses the same compression as the open-source
-.Sy gzip
-command.
-You can specify the
-.Sy gzip
-level by using the value gzip-\fR\fIN\fR where \fIN\fR is 6 (fast) or 9
-(best compression ratio).
-Currently,
-.Sy gzip ,
-without a number, is equivalent to
-.Sy gzip-6
-(which is also the default for the
-.Sy gzip
-command).
-.Pp
-.Sy lzma
-stands for the LZMA (Lempel-Ziv-Markov) compression algorithm.
-.Pp
-Note that you cannot write to a compressed file, nor can you mount a compressed
-file read/write.
-.It Fl d Ar file Ns | Ns Ar device
-Remove an association by
-.Sy file
-or
-.Sy device
-name, if the associated block device is not busy, and deallocates the block
-device.
-.It Fl l
-This option should be used with
-.Fl a
-option to create labeled loopback device.
-If created in local zone, the device has to be enabled in zone configuration.
-.It Fl r
-If the
-.Fl r
-option is specified before the
-.Fl a
-option, the
-.Sy device
-will be opened read-only.
-.It Fl s Ar segment_size
-The segment size to use to divide the file being compressed.
-.Sy segment_size
-can be an integer multiple of 512.
-.It Fl U Ar file
-Uncompress a compressed file.
-.El
-.Pp
-The following options are used when the file is encrypted:
-.Bl -tag -width Ds
-.It Fl c Ar crypto_algorithm
-Select the encryption algorithm.
-The algorithm must be specified when encryption is enabled because the algorithm
-is not stored in the disk image.
-.Pp
-If none of
-.Fl e ,
-.Fl k ,
-or
-.Fl T
-is specified,
-.Nm
-prompts for a passphrase, with a minimum length of eight characters, to be
-entered.
-The passphrase is used to derive a symmetric encryption key using PKCS#5 PBKD2.
-.It Fl k Ar raw_key_file | Ar wrapped_key_file
-Path to raw or wrapped symmetric encryption key.
-If a PKCS#11 object is also given with the
-.Fl T
-option, then the key is wrapped by that object.
-If
-.Fl T
-is not specified, the key is used raw.
-.It Fl T Ar token_key
-The key in a PKCS#11 token to use for the encryption or for unwrapping the key
-file.
-.Pp
-If
-.Fl k
-is also specified,
-.Fl T
-identifies the unwrapping key, which must be an RSA private key.
-.It Fl e
-Generate an ephemeral symmetric encryption key.
-.El
-.Sh OPERANDS
-The following operands are supported:
-.Bl -tag -width Ds
-.It Ar crypto_algorithm
-One of:
-.Sy aes-128-cbc ,
-.Sy aes-192-cbc ,
-.Sy aes-256-cbc ,
-.Sy des3-cbc ,
-.Sy blowfish-cbc .
-.It Ar device
-Display the file name associated with the block device
-.Sy device .
-.Pp
-Without arguments, print a list of the current associations.
-Filenames must be valid absolute pathnames.
-.Pp
-When a file is added, it is opened for reading or writing by root.
-Any restrictions apply (such as restricted root access over
-.Sy NFS Ns ).
-The file is held open until the association is removed.
-It is not actually accessed until the block device is used, so it will never be
-written to if the block device is only opened read-only.
-.Pp
-Note that the filename may appear as "?" if it is not possible to resolve the
-path in the current context (for example, if it's an NFS path in a non-global
-zone).
-.It Ar file
-Display the block device associated with
-.Sy file .
-.It Ar raw_key_file
-Path to a file of the appropriate length, in bits, to use as a raw symmetric
-encryption key.
-.It Ar token_key
-PKCS#11 token object in the format:
-.Pp
-.Ar token_name Ns \&: Ns Ar manufacturer_id Ns \&: Ns
-.Ar serial_number Ns \&: Ns Ar key_label
-.Pp
-All but the key label are optional and can be empty.
-For example, to specify a token object with only its key label
-.Sy MylofiKey ,
-use
-.Fl T Sy :::MylofiKey .
-.It Ar wrapped_key_file
-Path to file containing a symmetric encryption key wrapped by the RSA private
-key specified by
-.Fl T .
-.El
-.Sh ENVIRONMENT
-See
-.Xr environ 5
-for descriptions of the following environment variables
-that affect the execution of
-.Nm
-:
-.Sy LC_CTYPE ,
-.Sy LC_MESSAGES
-and
-.Sy NLSPATH .
-.Sh EXIT STATUS
-The following exit values are returned:
-.Bl -tag -width Ds
-.It Sy 0
-Successful completion.
-.It Sy >0
-An error occurred.
-.El
-.Sh EXAMPLES
-.Bl -tag -width Ds
-.It Sy Example 1 No Mounting an Existing CD-ROM Image
-You should ensure that Solaris understands the image before creating the
-.Sy CD .
-.Sy lofi
-allows you to mount the image and see if it works.
-.Pp
-This example mounts an existing
-.Sy CD-ROM
-image
-.Pf ( Sy sparc.iso Ns ),
-of the
-.Sy Red Hat 6.0 CD
-which was downloaded from the Internet.
-It was created with the
-.Sy mkisofs
-utility from the Internet.
-.Pp
-Use
-.Nm
-to attach a block device to it:
-.Bd -literal
-# lofiadm -a /home/mike_s/RH6.0/sparc.iso
-/dev/lofi/1
-.Ed
-.Pp
-.Nm
-picks the device and prints the device name to the standard
-output.
-You can run
-.Nm
-again by issuing the following command:
-.Bd -literal
-# lofiadm
-Block Device File Options
-/dev/lofi/1 /home/mike_s/RH6.0/sparc.iso -
-.Ed
-.Pp
-Or, you can give it one name and ask for the other, by issuing the following
-command:
-.Bd -literal
-# lofiadm /dev/lofi/1
-/home/mike_s/RH6.0/sparc.iso
-.Ed
-.Pp
-Use the
-.Xr mount 1M
-command to mount the image:
-.Bd -literal
-# mount -F hsfs -o ro /dev/lofi/1 /mnt
-.Ed
-.Pp
-Check to ensure that Solaris understands the image:
-.Bd -literal
-# df -k /mnt
-Filesystem kbytes used avail capacity Mounted on
-/dev/lofi/1 512418 512418 0 100% /mnt
-# ls /mnt
-\&./ RedHat/ doc/ ls-lR rr_moved/
-\&../ TRANS.TBL dosutils/ ls-lR.gz sbin@
-\&.buildlog bin@ etc@ misc/ tmp/
-COPYING boot/ images/ mnt/ usr@
-README boot.cat* kernels/ modules/
-RPM-PGP-KEY dev@ lib@ proc/
-.Ed
-.Pp
-Solaris can mount the CD-ROM image, and understand the filenames.
-The image was created properly, and you can now create the
-.Sy CD-ROM
-with confidence.
-.Pp
-As a final step, unmount and detach the images:
-.Bd -literal
-# umount /mnt
-# lofiadm -d /dev/lofi/1
-# lofiadm
-Block Device File Options
-.Ed
-.It Sy Example 2 No Mounting a Floppy Image
-This is similar to the first example.
-.Pp
-Using
-.Sy lofi
-to help you mount files that contain floppy images is helpful
-if a floppy disk contains a file that you need, but the machine which you are
-on does not have a floppy drive.
-It is also helpful if you do not want to take the time to use the
-.Sy dd
-command to copy the image to a floppy.
-.Pp
-This is an example of getting to
-.Sy MDB
-floppy for Solaris on an x86 platform:
-.Bd -literal
-# lofiadm -a /export/s28/MDB_s28x_wos/latest/boot.3
-/dev/lofi/1
-# mount -F pcfs /dev/lofi/1 /mnt
-# ls /mnt
-\&./ COMMENT.BAT* RC.D/ SOLARIS.MAP*
-\&../ IDENT* REPLACE.BAT* X/
-APPEND.BAT* MAKEDIR.BAT* SOLARIS/
-# umount /mnt
-# lofiadm -d /export/s28/MDB_s28x_wos/latest/boot.3
-.Ed
-.It Sy Example 3 No Making a Sy UFS No Filesystem on a File
-Making a
-.Sy UFS
-filesystem on a file can be useful, particularly if a test
-suite requires a scratch filesystem.
-It can be painful (or annoying) to have to repartition a disk just for the test
-suite, but you do not have to.
-You can
-.Sy newfs
-a file with
-.Sy lofi .
-.Pp
-Create the file:
-.Bd -literal
-# mkfile 35m /export/home/test
-.Ed
-.Pp
-Attach it to a block device.
-You also get the character device that
-.Sy newfs
-requires, so
-.Sy newfs
-that:
-.Bd -literal
-# lofiadm -a /export/home/test
-/dev/lofi/1
-# newfs /dev/rlofi/1
-newfs: construct a new file system /dev/rlofi/1: (y/n)? y
-/dev/rlofi/1: 71638 sectors in 119 cylinders of 1 tracks, 602 sectors
- 35.0MB in 8 cyl groups (16 c/g, 4.70MB/g, 2240 i/g)
-super-block backups (for fsck -F ufs -o b=#) at:
- 32, 9664, 19296, 28928, 38560, 48192, 57824, 67456,
-.Ed
-.Pp
-Note that
-.Sy ufs
-might not be able to use the entire file.
-Mount and use the filesystem:
-.Bd -literal
-# mount /dev/lofi/1 /mnt
-# df -k /mnt
-Filesystem kbytes used avail capacity Mounted on
-/dev/lofi/1 33455 9 30101 1% /mnt
-# ls /mnt
-\&./ ../ lost+found/
-# umount /mnt
-# lofiadm -d /dev/lofi/1
-.Ed
-.It Sy Example 4 No Creating a PC (FAT) File System on a Unix File
-The following series of commands creates a
-.Sy FAT
-file system on a Unix file.
-The file is associated with a block device created by
-.Nm
-.
-.Bd -literal
-# mkfile 10M /export/test/testfs
-# lofiadm -a /export/test testfs
-/dev/lofi/1
-.Ed
-.Pp
-Note use of
-.Sy rlofi ,
-not
-.Sy lofi ,
-in following command.
-.Bd -literal
-# mkfs -F pcfs -o nofdisk,size=20480 /dev/rlofi/1
-Construct a new FAT file system on /dev/rlofi/1: (y/n)? y
-# mount -F pcfs /dev/lofi/1 /mnt
-# cd /mnt
-# df -k .
-Filesystem kbytes used avail capacity Mounted on
-/dev/lofi/1 10142 0 10142 0% /mnt
-.Ed
-.It Sy Example 5 No Compressing an Existing CD-ROM Image
-The following example illustrates compressing an existing CD-ROM image
-.Pf ( Sy solaris.iso Ns ),
-verifying that the image is compressed, and then uncompressing it.
-.Bd -literal
-# lofiadm -C gzip /export/home/solaris.iso
-.Ed
-.Pp
-Use
-.Nm
-to attach a block device to it:
-.Bd -literal
-# lofiadm -a /export/home/solaris.iso
- /dev/lofi/1
-.Ed
-.Pp
-Check if the mapped image is compressed:
-.Bd -literal
-# lofiadm
-Block Device File Options
-/dev/lofi/1 /export/home/solaris.iso Compressed(gzip)
-/dev/lofi/2 /export/home/regular.iso -
-.Ed
-.Pp
-Unmap the compressed image and uncompress it:
-.Bd -literal
-# lofiadm -d /dev/lofi/1
-# lofiadm -U /export/home/solaris.iso
-.Ed
-.It Sy Example 6 No Creating an Encrypted UFS File System on a File
-This example is similar to the example of making a UFS filesystem on a file,
-above.
-.Pp
-Create the file:
-.Bd -literal
-# mkfile 35m /export/home/test
-.Ed
-.Pp
-Attach the file to a block device and specify that the file image is encrypted.
-As a result of this command, you obtain the character device, which is
-subsequently used by
-.Sy newfs :
-.Bd -literal
-# lofiadm -c aes-256-cbc -a /export/home/secrets
-Enter passphrase: My-M0th3r;l0v3s_m3+4lw4ys! (not echoed)
-Re-enter passphrase: My-M0th3r;l0v3s_m3+4lw4ys! (not echoed)
-/dev/lofi/1
-
-# newfs /dev/rlofi/1
-newfs: construct a new file system /dev/rlofi/1: (y/n)? y
-/dev/rlofi/1: 71638 sectors in 119 cylinders of 1 tracks, 602 sectors
- 35.0MB in 8 cyl groups (16 c/g, 4.70MB/g, 2240 i/g)
-super-block backups (for fsck -F ufs -o b=#) at:
-32, 9664, 19296, 28928, 38560, 48192, 57824, 67456,
-.Ed
-.Pp
-The mapped file system shows that encryption is enabled:
-.Bd -literal
-# lofiadm
-Block Device File Options
-/dev/lofi/1 /export/home/secrets Encrypted
-.Ed
-.Pp
-Mount and use the filesystem:
-.Bd -literal
-# mount /dev/lofi/1 /mnt
-# cp moms_secret_*_recipe /mnt
-# ls /mnt
-\&./ moms_secret_cookie_recipe moms_secret_soup_recipe
-\&../ moms_secret_fudge_recipe moms_secret_stuffing_recipe
-lost+found/ moms_secret_meatloaf_recipe moms_secret_waffle_recipe
-# umount /mnt
-# lofiadm -d /dev/lofi/1
-.Ed
-.Pp
-Subsequent attempts to map the filesystem with the wrong key or the wrong
-encryption algorithm will fail:
-.Bd -literal
-# lofiadm -c blowfish-cbc -a /export/home/secrets\fR
-Enter passphrase: mommy (not echoed)
-Re-enter passphrase: mommy (not echoed)
-lofiadm: could not map file /root/lofi: Invalid argument
-# lofiadm
-Block Device File Options
-#
-.Ed
-.Pp
-Attempts to map the filesystem without encryption will succeed, however
-attempts to mount and use the filesystem will fail:
-.Bd -literal
-# lofiadm -a /export/home/secrets
-/dev/lofi/1
-# lofiadm
-Block Device File Options
-/dev/lofi/1 /export/home/secrets -
-# mount /dev/lofi/1 /mnt
-mount: /dev/lofi/1 is not this fstype
-#
-.Ed
-.El
-.Sh SEE ALSO
-.Xr fdisk 1M ,
-.Xr format 1M ,
-.Xr fsck 1M ,
-.Xr mount 1M ,
-.Xr mount_ufs 1M ,
-.Xr newfs 1M ,
-.Xr attributes 5 ,
-.Xr lofi 7D ,
-.Xr lofs 7FS
-.Sh NOTES
-Just as you would not directly access a disk device that has mounted file
-systems, you should not access a file associated with a block device except
-through the
-.Sy lofi
-file driver.
-It might also be appropriate to ensure that the file has appropriate permissions
-to prevent such access.
-.Pp
-The abilities of
-.Nm
-, and who can use them, are controlled by the
-permissions of
-.Pa /dev/lofictl .
-Read-access allows query operations, such as
-listing all the associations.
-Write-access is required to do any state-changing operations, like adding an
-association.
-As shipped,
-.Pa /dev/lofictl
-is owned by
-.Sy root ,
-in group
-.Sy sys ,
-and mode
-.Sy 0644 ,
-so all users can do query operations but only root can change anything.
-The administrator can give users write-access, allowing them to add or
-delete associations, but that is very likely a security hole and should
-probably only be given to a trusted group.
-.Pp
-When mounting a filesystem image, take care to use appropriate mount options.
-In particular, the
-.Sy nosuid
-mount option might be appropriate for
-.Sy UFS
-images whose origin is unknown.
-Also, some options might not be useful or appropriate, like
-.Sy logging
-or
-.Sy forcedirectio
-for
-.Sy UFS .
-For compatibility purposes, a raw device is also exported along with the block
-device.
-For example,
-.Xr newfs 1M
-requires one.
-.Pp
-The output of
-.Nm
-(without arguments) might change in future releases.
diff --git a/usr/src/man/man1m/logadm.1m b/usr/src/man/man1m/logadm.1m
deleted file mode 100644
index cd9d95933c..0000000000
--- a/usr/src/man/man1m/logadm.1m
+++ /dev/null
@@ -1,913 +0,0 @@
-'\" te
-.\" Copyright (c) 2007 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH LOGADM 1M "June 20, 2021"
-.SH NAME
-logadm \- manage endlessly growing log files
-.SH SYNOPSIS
-.nf
-\fBlogadm\fR
-.fi
-
-.LP
-.nf
-\fBlogadm\fR [\fB-\fIoptions\fR\fR] \fIlogname\fR...
-.fi
-
-.SH DESCRIPTION
-\fBlogadm\fR is a general log rotation tool that is suitable for running from
-\fBcron\fR(1M).
-.sp
-.LP
-Without arguments, \fBlogadm\fR reads the \fB/etc/logadm.conf\fR file, and for
-every entry found in that file checks the corresponding log file to see if it
-should be rotated. Typically this check is done each morning by an entry in the
-root's \fBcrontab\fR.
-.sp
-.LP
-If the \fIlogname\fR argument is specified, \fBlogadm\fR renames the
-corresponding log file by adding a suffix so that the most recent log file ends
-with \fB\&.0\fR (that is, \fIlogfile\fR\fB\&.0\fR), the next most recent ends
-with \fB\&.1\fR (that is, \fIlogfile\fR\fB\&.1\fR), and so forth. By default,
-ten versions of old log files are kept (that is, \fIlogfile\fR\fB\&.0\fR
-through \fIlogfile\fR\fB\&.9\fR). At the point when what would be the eleventh
-file is logged, \fBlogadm\fR automatically deletes the oldest version to keep
-the count of files at ten.
-.sp
-.LP
-\fBlogadm\fR takes a number of \fIoptions\fR. You can specify these options on
-the command line or in the \fB/etc/logadm.conf\fR file. The \fBlogadm\fR
-command searches \fB/etc/logadm.conf\fR for lines of the form \fIlogname\fR
-\fIoptions\fR
-.sp
-.ne 2
-.na
-\fB\fIlogname\fR\fR
-.ad
-.sp .6
-.RS 4n
-Identifies an entry in \fB/etc/logadm.conf\fR. This can be a name or the
-pathname of the log file. If you specify a log file, rather than a name, for
-this field, it must be a fully qualified pathname.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIoptions\fR\fR
-.ad
-.sp .6
-.RS 4n
-Identifies command line options exactly as they would be entered on the command
-line. This allows commonly used log rotation policies to be stored in the
-\fB/etc/logadm.conf\fR file. See \fBEXAMPLES\fR.
-.sp
-If \fIoptions\fR are specified both in \fB/etc/logadm.conf\fR and on the
-command line, those in the \fB/etc/logadm.conf\fR file are applied first.
-Therefore, the command line options override those in \fB/etc/logadm.conf\fR.
-.sp
-Log file names specified in \fB/etc/logadm.conf\fR may contain filename
-substitution characters such as \fB*\fR and \fB?\fR, that are supported by
-\fBcsh\fR(1).
-.RE
-
-.sp
-.LP
-Two options control when a log file is rotated. They are: \fB-s\fR size
-\fB-p\fR period.
-.sp
-.LP
-When using more than one of these options at a time, there is an implied
-\fBand\fR between them. This means that all conditions must be met before the
-log is rotated.
-.sp
-.LP
-If neither of these two options are specified, the default conditions for
-rotating a log file are: \fB\fR\fB-s\fR \fB1b\fR \fB-p\fR \fB1w\fR, which means
-the log file is only rotated if the size is non-zero and if at least 1 week has
-passed since the last time it was rotated.
-.sp
-.LP
-By specifying \fB\fR\fB-p\fR \fBnever\fR as a rotation condition, any other
-rotation conditions are ignored and \fBlogadm\fR moves on to the expiration of
-old log files. By specifying \fB\fR\fB-p\fR \fBnow\fR as a rotation condition,
-a log rotation is forced.
-.sp
-.LP
-Unless specified by the \fB-o\fR, \fB-g\fR, or \fB-m\fR options, \fBlogadm\fR
-replaces the log file (after renaming it) by creating an empty file whose
-owner, group ID, and permissions match the original file.
-.sp
-.LP
-Three options control when old log files are expired: \fB-A\fR age \fB-C\fR
-count \fB-S\fR size. These options expire the oldest log files until a
-particular condition or conditions are met. For example, the combination of the
-\fB\fR\fB-C\fR \fB5\fR and \fB\fR\fB-S\fR \fB10m\fR options expires old log
-files until there are no more than 5 of them \fBand\fR their combined disk usage
-is no more than 10 megabytes. If none of these options are specified, the
-default expiration is \fB\fR\fB-C\fR \fB10\fR which keeps ten old log files. If
-no files are to be expired, use \fB\fR\fB-C\fR \fB0\fR to prevent expiration by
-default.
-.SH OPTIONS
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-a\fR \fIpost_command\fR\fR
-.ad
-.sp .6
-.RS 4n
-Execute the \fIpost_command\fR after renaming the log file. \fIpost_command\fR
-is passed to \fBsh\fR \fB-c\fR.
-.sp
-Specify \fIpost_command\fR as a valid shell command. Use quotes to protect
-spaces or shell metacharacters in \fIpost_command\fR.
-.sp
-This option can be used to restart a daemon that is writing to the file. When
-rotating multiple logs with one \fBlogadm\fR command, \fIpost_command\fR is
-executed only once after all the logs are rotated, not once per rotated log.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-A\fR \fIage\fR\fR
-.ad
-.sp .6
-.RS 4n
-Delete any versions that have not been modified for the amount of time
-specified by \fIage\fR.
-.sp
-Specify \fIage\fR as a number followed by an \fBh\fR (hours), \fBd\fR (days),
-\fBw\fR(weeks), \fBm\fR (months), or \fBy\fR (years).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-b\fR \fIpre_command\fR\fR
-.ad
-.sp .6
-.RS 4n
-Execute \fIpre_command\fR before renaming the log file. \fIpre_command\fR is
-passed to \fBsh\fR \fB-c\fR.
-.sp
-Specify \fIpre_command\fR as a valid shell command. Use quotes to protect
-spaces or shell metacharacters in the \fIpre_command\fR.
-.sp
-This option can be used to stop a daemon that is writing to the file. When
-rotating multiple logs with one \fBlogadm\fR command, \fIpre_command\fR is
-executed only once before all the logs are rotated, not once per rotated log.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-c\fR\fR
-.ad
-.sp .6
-.RS 4n
-Rotate the log file by copying it and truncating the original logfile to zero
-length, rather than renaming the file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-C\fR \fIcount\fR\fR
-.ad
-.sp .6
-.RS 4n
-Delete the oldest versions until there are not more than \fIcount\fR files
-left.
-.sp
-If no expire options (\fB-A\fR, \fB-C\fR, or \fB-S\fR) are specified,
-\fB\fR\fB-C\fR \fB10\fR is the default. To prevent the default expire rule from
-being added automatically, specify \fB\fR\fB-C\fR \fB0\fR .
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-e\fR \fImail_addr\fR\fR
-.ad
-.sp .6
-.RS 4n
-Send error messages by email to \fImail_addr\fR.
-.sp
-As \fBlogadm\fR is typically run from \fBcron\fR(1M), error messages are
-captured by \fBcron\fR and mailed to the owner of the \fBcrontab\fR.
-.sp
-This option is useful if you want the mail regarding error messages to go to
-another address instead. If no errors are encountered, no mail message is
-generated.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-E\fR \fIcmd\fR\fR
-.ad
-.sp .6
-.RS 4n
-Execute \fIcmd\fR to expire the file, rather than deleting the old log file to
-expire it.
-.sp
-\fIcmd\fR is passed it to \fBsh\fR \fB-c\fR. The file is considered expired
-after \fIcmd\fR completes. If the old log file is not removed or renamed by the
-\fIcmd\fR, \fBlogadm\fR considers it for expiration the next time that it runs
-on the specified log file. If present, the keyword \fB$file\fR is expanded in
-the specified \fIcmd\fR to the name of the file being expired.
-.sp
-This option is useful for tasks such as mailing old log files to
-administrators, or copying old log files to long term storage.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR \fIconf_file\fR\fR
-.ad
-.sp .6
-.RS 4n
-Use \fIconf_file\fR instead of \fB/etc/logadm.conf\fR.
-.sp
-This option allows non-root users to keep their own \fBlogadm\fR configuration
-files.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-g\fR \fIgroup\fR\fR
-.ad
-.sp .6
-.RS 4n
-Create a new empty file with the \fBID\fR specified by \fIgroup\fR, instead of
-preserving the group \fBID\fR of the log file.
-.sp
-Specify \fIgroup\fR by name or by numeric group \fBID\fR, as accepted by
-\fBchgrp\fR(1).
-.sp
-This option requires the ability to change file group ownership using the
-\fBchgrp\fR(1) command.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-h\fR\fR
-.ad
-.sp .6
-.RS 4n
-Print a help message that describes \fBlogadm\fR's options.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR\fR
-.ad
-.sp .6
-.RS 4n
-Use local time rather than the Coordinated Universal Time (UTC) when naming
-rotated log files (see the discussion of percent sequences in the templates
-supplied with the \fB-t\fR option).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-m\fR \fImode\fR\fR
-.ad
-.sp .6
-.RS 4n
-Create a new empty file with the mode specified by \fImode\fR, instead of
-preserving the mode of the log file.
-.sp
-Specify \fImode\fR in any form that is accepted by the \fBchmod\fR(1) command.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-M\fR \fIcmd\fR\fR
-.ad
-.sp .6
-.RS 4n
-Use \fIcmd\fR to rename the log file. If the keyword \fB$file\fR is specified,
-it is expanded to the name of the log file. Similarly, the keyword \fB$nfile\fR
-is expanded to the new name of the log file. The \fB$nfile\fR keyword is only
-available with commands provided with the \fB-M\fR option. After the command
-completes, the log file is replaced by the rotate file. The default \fIcmd\fR
-is "\fB/bin/mv\fR \fB$file\fR\fB\fR\fB$nfile\fR".
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR \fI\fR\fR
-.ad
-.sp .6
-.RS 4n
-Print the actions that the \fBlogadm\fR command will perform without actually
-performing them.
-.sp
-This option is useful for checking arguments before making any changes to the
-system.
-.sp
-It is important to remember, however, that since log rotating actions are only
-printed with this option, \fBlogadm\fR might not find files that need expiring,
-but if run without the \fB-n\fR \fBlogadm\fR might create a file that needs
-expiring by performing the log rotating actions. Therefore, if you see no files
-being expired with the \fB-n\fR option, files still might be expired without
-it.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-N\fR\fR
-.ad
-.sp .6
-.RS 4n
-Prevent an error message if the specified logfile does not exist. Normally,
-\fBlogadm\fR produces an error message if the log file is not found. With
-\fB-N\fR, if the log file doesn't exist \fBlogadm\fR moves on to the expire
-rules (if any) and then to the next log file (if any), without creating the
-empty replacement log file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-o\fR \fIowner\fR\fR
-.ad
-.sp .6
-.RS 4n
-Create the new empty file with \fIowner\fR, instead of preserving the owner of
-the log file.
-.sp
-Specify \fIowner\fR in any form that is accepted by the \fBchown\fR(1) command.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR \fIperiod\fR\fR
-.ad
-.sp .6
-.RS 4n
-Rotate a log file after the specified time period (\fIperiod\fR).
-.sp
-Specify \fIperiod\fR as a number followed by \fBd\fR for days, \fBh\fR for
-hours, \fBw\fR for weeks, \fBm\fR for months (30 days) or \fBy\fR for years.
-There are also two special values for period: \fBnow\fR and \fBnever\fR.
-"\fB\fR\fB-p\fR \fBnow\fR" forces log rotation. "\fB\fR\fB-p\fR \fBnever\fR"
-forces no log rotation.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-P\fR \fItimestamp\fR\fR
-.ad
-.sp .6
-.RS 4n
-Used by \fBlogadm\fR to record the last time the log was rotated in
-\fB/etc/logadm.conf\fR.
-.sp
-This option uses \fItimestamp\fR to determine if the log rotation period has
-passed. The format of \fItimestamp\fR matches the format generated by
-\fBctime\fR(3C), with quotes around it to protect embedded spaces.
-\fItimestamp\fR is always recorded in the Coordinated Universal Time (UTC)
-timezone.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-r\fR\fR
-.ad
-.sp .6
-.RS 4n
-Remove any entries corresponding to the specified \fIlogname\fR from the
-\fB/etc/logadm.conf\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-R\fR \fIcmd\fR\fR
-.ad
-.sp .6
-.RS 4n
-Run the \fIcmd\fR when an old log file is created by a log rotation. If the
-keyword \fB$file\fR is embedded in the specified command, it is expanded to the
-name of the old log file just created by log rotation.
-.sp
-This option is useful for processing log file contents after rotating the log.
-\fIcmd\fR is executed by passing it to \fBsh\fR \fB-c\fR. When rotating
-multiple logs with one logadm command, the command supplied with \fB-R\fR is
-executed once every time a log is rotated. This is useful for post-processing a
-log file (that is, sorting it, removing uninteresting lines, etc.). The
-\fB-a\fR option is a better choice for restarting daemons after log rotation.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR \fIsize\fR\fR
-.ad
-.sp .6
-.RS 4n
-Rotate the log file only if its size is greater than or equal to \fIsize\fR.
-.sp
-Specify \fIsize\fR as a number followed by the letter \fBb\fR for bytes,
-\fBk\fR for kilobytes, \fBm\fR for megabytes, or \fBg\fR for gigabytes.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-S\fR \fIsize\fR\fR
-.ad
-.sp .6
-.RS 4n
-Delete the oldest versions until the total disk space used by the old log files
-is less than the specified size.
-.sp
-Specify \fIsize\fR as a number followed by the letter \fBb\fR for bytes,
-\fBk\fR for kilobytes, \fBm\fR for megabytes, or \fBg\fR for gigabytes.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-t\fR \fItemplate\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify the template to use when renaming log files.
-.sp
-\fItemplate\fR can be a simple name, such as \fB/var/adm/oldfile\fR, or it can
-contain special keywords which are expanded by \fBlogadm\fR and are in the form
-\fB$\fR\fIword\fR. Allowed sequences are:
-.sp
-.ne 2
-.na
-\fB$\fIbasename\fR\fR
-.ad
-.sp .6
-.RS 4n
-The log file name, without the directory name
-.RE
-
-.sp
-.ne 2
-.na
-\fB$\fIdirname\fR\fR
-.ad
-.sp .6
-.RS 4n
-The directory of the file to be rotated
-.RE
-
-.sp
-.ne 2
-.na
-\fB$\fIdomain\fR\fR
-.ad
-.sp .6
-.RS 4n
-Expands to the output of \fBdomainname\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB$\fIfile\fR\fR
-.ad
-.sp .6
-.RS 4n
-The full path name of the file to be rotated
-.RE
-
-.sp
-.ne 2
-.na
-\fB$\fIisa\fR\fR
-.ad
-.sp .6
-.RS 4n
-Expands to the output of \fBuname\fR \fB-p\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB$\fImachine\fR\fR
-.ad
-.sp .6
-.RS 4n
-Expands to the output of \fBuname\fR \fB-m\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB$\fIn\fR\fR
-.ad
-.sp .6
-.RS 4n
-The version number, \fB0\fR is most recent, \fB1\fR is next most recent, and so
-forth
-.RE
-
-.sp
-.ne 2
-.na
-\fB$\fIN\fR\fR
-.ad
-.sp .6
-.RS 4n
-The same as $\fIn\fR, but starts at \fB1\fR instead of zero
-.RE
-
-.sp
-.ne 2
-.na
-\fB$\fInodename\fR\fR
-.ad
-.sp .6
-.RS 4n
-Expands to the output of \fBuname\fR \fB-n\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB$\fIplatform\fR\fR
-.ad
-.sp .6
-.RS 4n
-Expands to the output of \fBuname\fR \fB-i\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB$\fIrelease\fR\fR
-.ad
-.sp .6
-.RS 4n
-Expands to the output of \fBuname\fR \fB-r\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB$\fIsecs\fR\fR
-.ad
-.sp .6
-.RS 4n
-The number of seconds since \fB00:00:00 UTC, January 1,1970\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB$\fIzonename\fR\fR
-.ad
-.sp .6
-.RS 4n
-Expands to the output of \fBzonename\fR(1).
-.RE
-
-To actually have the dollar sign character in the file name, use \fB$$\fR. Any
-percent sequences allowed by \fBstrftime\fR(3C) are also allowed, for example,
-\fB%d\fR expands to the day of the month. To actually have a percent sign
-character in the file name, use \fB%%\fR. Both dollar-sign keywords and percent
-sequences can appear anywhere in the template. If the template results in a
-pathname with non-existent directories, they are created as necessary when
-rotating the log file.
-.sp
-If no \fB-t\fR option is specified, the default template is \fB$file.$n\fR.
-Actual \fBrotation\fR of log files, where each version is shifted up until it
-expires is done using the \fB$n\fR keyword. If the template does not contain
-the \fB$n\fR keyword, the log file is simply renamed to the new name and then
-the expire rules, if any, are applied.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-T\fR \fIpattern\fR\fR
-.ad
-.sp .6
-.RS 4n
-Normally \fBlogadm\fR looks for a list of old log files by turning the template
-(specified with the \fB-t\fR option) into a pattern and finding existing files
-whose names match that pattern. The \fB-T\fR option causes the given pattern to
-be used instead.
-.sp
-This option is useful if another program fiddles with the old log file names,
-like a \fBcron\fR job to compress them over time. The pattern is in the form of
-a pathname with special characters such as \fB*\fR and \fB?\fR as supported by
-\fBcsh\fR(1) filename substitution.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.sp .6
-.RS 4n
-Print information about the actions being executed in verbose mode.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-V\fR\fR
-.ad
-.sp .6
-.RS 4n
-Validate the configuration file.
-.sp
-This option validates that an entry for the specified \fIlogname\fR exists in
-the \fB/etc/logadm.conf\fR file and is syntactically correct. If \fIlogname\fR
-is not specified, all entries in the configuration file are validated. If a
-\fBlogname\fR argument is specified, the command validates the syntax of that
-entry. If the entry is found, it is printed and the exit value of the command
-is true. Otherwise the exit value is false.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-w\fR \fIentryname\fR\fR
-.ad
-.sp .6
-.RS 4n
-Write an entry into the config file (that is, \fB/etc/logadm.conf\fR) that
-corresponds to the current command line arguments. If an entry already existed
-for the specified \fIentryname\fR, it is removed first. This is the preferred
-method for updating \fB/etc/logadm.conf\fR, because it prevents syntax errors.
-The \fIentryname\fR is an argument to an invocation of \fBlogadm\fR.
-\fIentryname\fR might be chosen as something easy to remember or it can be the
-pathname of the log file. If a pathname, rather than a name is used, it must be
-a fully qualified pathname.
-.sp
-If no log file name is provided on a \fBlogadm\fR command line, the entry name
-is assumed to be the same as the log file name. For example, the following two
-lines achieve the same thing, keeping two copies of rotated log files:
-.sp
-.in +2
-.nf
-% logadm -C2 -w mylog /my/really/long/log/file/name
-% logadm -C2 -w /my/really/long/log/file/name
-.fi
-.in -2
-.sp
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-z\fR \fIcount\fR\fR
-.ad
-.sp .6
-.RS 4n
-Compress old log files after all other commands have been executed. \fIcount\fR
-of the most recent log files are left uncompressed, therefore making the
-\fIcount\fR most recent files easier to peruse. Use \fIcount\fR of zero to
-compress all old logs.
-.sp
-The compression is done with \fBgzip\fR(1) and the resulting log file has the
-suffix of \fB\&.gz\fR.
-.RE
-
-.SH OPERANDS
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fB\fIlogname\fR\fR
-.ad
-.sp .6
-.RS 4n
-Identifies the name of the entry in \fB/etc/logadm.conf\fR. If the log file
-name is specified in the \fIlogname\fR field, it is assumed that \fIlogname\fR
-is the same as the actual log file name.
-.RE
-
-.SH EXAMPLES
-\fBExample 1 \fRRotating a File and Keeping Previous Versions
-.sp
-.LP
-The following example rotates the \fB/var/adm/exacct/proc\fR file, keeping ten
-previous versions in \fB/var/adm/exacct/proc.0\fR through
-\fB/var/adm/exacct/proc.9\fR.
-
-.sp
-.LP
-Tell \fBlogadm\fR to copy the file and truncate it.
-
-.sp
-.in +2
-.nf
- % logadm -c /var/adm/exacct/proc
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRRotating syslog
-.sp
-.LP
-The following example rotates \fBsyslog\fR and keeps eight log files. Old log
-files are put in the directory \fB/var/oldlogs\fR instead of \fB/var/log\fR:
-
-.sp
-.in +2
-.nf
-% logadm -C8 -t'/var/oldlogs/syslog.$n' /var/log/syslog
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRRotating /var/adm/sulog and Expiring Based on Age
-.sp
-.LP
-The following entry in the \fB/etc/logadm.conf\fR file rotates the
-\fB/var/adm/sulog\fR file and expires any copies older than 30 days.
-
-.sp
-.in +2
-.nf
-/var/adm/sulog -A 30d
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 4 \fRRotating Files and Expiring Based on Disk Usage
-.sp
-.LP
-The following entry in the \fB/etc/logadm.conf\fR file rotates the
-\fB/var/adm/sulog\fR file and expires old log files when more than 100
-megabytes are used by the sum of all the rotated log files.
-
-.sp
-.in +2
-.nf
-/var/adm/sulog -S 100m
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 5 \fRCreating an Entry that Stores the Logfile Name
-.sp
-.LP
-This example creates an entry storing the log file name and the fact that we
-want to keep 20 copies in \fB/etc/logadm.conf\fR, but the \fB\fR\fB-p\fR
-\fBnever\fR means the entry is ignored by the normal \fBlogadm\fR run from
-root's crontab every morning.
-
-.sp
-.in +2
-.nf
-% logadm -w locallog /usr/local/logfile -C20 -p never
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Use the following entry on the command line to override the \fB\fR\fB-p\fR
-\fBnever\fR option:
-
-.sp
-.in +2
-.nf
- % logadm -p now locallog
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 6 \fRRotating the apache Error and Access Logs
-.sp
-.LP
-The following example rotates the apache error and access logs monthly to
-filenames based on current year and month. It keeps the 24 most recent copies
-and tells apache to restart after renaming the logs.
-
-.sp
-.LP
-This command is run once, and since the \fB-w\fR option is specified, an entry
-is made in \fB/etc/logadm.conf\fR so the apache logs are rotated from now on.
-
-.sp
-.in +2
-.nf
- % logadm -w apache -p 1m -C 24\e
- -t '/var/apache/old-logs/$basename.%Y-%m'\e
- -a '/usr/apache/bin/apachectl graceful'\e
- '/var/apache/logs/*{access,error}_log'
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-This example also illustrates that the entry name supplied with the \fB-w\fR
-option doesn't have to match the log file name. In this example, the entry name
-is \fBapache\fR and once the line has been run, the entry in
-\fB/etc/logadm.conf\fR can be forced to run by executing the following command:
-
-.sp
-.in +2
-.nf
-% logadm -p now apache
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Because the expression matching the apache log file names was enclosed in
-quotes, the expression is stored in \fB/etc/logadm.conf\fR, rather than the
-list of files that it expands to. This means that each time \fBlogadm\fR runs
-from \fBcron\fR it expands that expression and checks all the log files in the
-resulting list to see if they need rotating.
-
-.sp
-.LP
-The following command is an example without the quotes around the log name
-expression. The shell expands the last argument into a list of log files that
-exist at the time the command is entered, and writes an entry to
-\fB/etc/logadm.conf\fR that rotates the files.
-
-.sp
-.in +2
-.nf
-logadm -w apache /var/apache/logs/*_log
-.fi
-.in -2
-.sp
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/etc/logadm.conf\fR\fR
-.ad
-.sp .6
-.RS 4n
-configuration file for \fBlogadm\fR command
-.RE
-
-.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-\fBchgrp\fR(1), \fBchmod\fR(1), \fBchown\fR(1), \fBcsh\fR(1), \fBgzip\fR(1),
-\fBcron\fR(1M), \fBctime\fR(3C), \fBstrftime\fR(3C), \fBlogadm.conf\fR(4),
-\fBattributes\fR(5)
-.SH NOTES
-When \fBlogadm\fR applies expire conditions (supplied by the \fB-A\fR,
-\fB-C\fR, and \fB-S\fR options), it deletes files, the oldest first, until the
-conditions are satisfied. If the template used for naming the old logs
-contained \fB$n\fR or \fB$N\fR, \fBlogadm\fR picks the highest value of
-\fB$n\fR or \fB$N\fR found in the old log file names first. If the template
-used is something else, \fBlogadm\fR uses the modification time to determine
-which files to expire first. This may not be the expected behavior if an old
-log file has been modified since it was rotated.
-.sp
-.LP
-Depending on log file sizes and number of log files, log file rotations can be
-very time-consuming.
-.sp
-.LP
-By default, \fBlogadm\fR works in \fBGMT\fR. Therefore, all entries written to
-the \fB/etc/logadm.conf\fR file (see \fBlogadm.conf\fR(4)) will have a
-\fBGMT\fR timestamp. Users can use the \fB-l\fR option to set \fBlogadm\fR to
-local time.
diff --git a/usr/src/man/man1m/logins.1m b/usr/src/man/man1m/logins.1m
deleted file mode 100644
index 187e7a76ab..0000000000
--- a/usr/src/man/man1m/logins.1m
+++ /dev/null
@@ -1,203 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 1997 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH LOGINS 1M "Sep 6, 2005"
-.SH NAME
-logins \- list user and system login information
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/bin/logins\fR [\fB-admopstux\fR] [\fB-g\fR \fIgroup...\fR]
- [\fB-l\fR \fIlogin_name...\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-This command displays information on user and system logins known to the
-system. Contents of the output is controlled by the command options and can
-include the following: user or system login, user id number, \fBpasswd\fR
-account field value (user name or other information), primary group name,
-primary group id, multiple group names, multiple group ids, home directory,
-login shell, and four password aging parameters. The default information is the
-following: login id, user id, primary group name, primary group id and the
-account field value. Output is sorted by user id, system logins, followed by
-user logins.
-.SH OPTIONS
-.sp
-.LP
-Options may be used together. If so, any login that matches any criteria are
-displayed.
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-a\fR\fR
-.ad
-.RS 20n
-Add two password expiration fields to the display. The fields show how many
-days a password can remain unused before it automatically becomes inactive, and
-the date that the password expires.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-d\fR\fR
-.ad
-.RS 20n
-Selects logins with duplicate uids.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\fR\fB-g\fR \fIgroup\fR\fR
-.ad
-.RS 20n
-Selects all users belonging to \fBgroup\fR, sorted by login. Multiple groups
-can be specified as a comma-separated list. When the \fB-l\fR and \fB-g\fR
-options are combined, a user is only listed once, even if the user belongs to
-more than one of the selected groups.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\fR\fB-l\fR \fIlogin_name...\fR\fR
-.ad
-.RS 20n
-Selects the requested login. Multiple logins can be specified as a
-comma-separated list. Depending on the nameservice lookup types set in
-\fB/etc/nsswitch.conf\fR, the information can come from the \fB/etc/passwd\fR
-and \fB/etc/shadow\fR files and other nameservices. When the \fB-l\fR and
-\fB-g\fR options are combined, a user is only listed once, even if the user
-belongs to more than one of the selected groups.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-m\fR\fR
-.ad
-.RS 20n
-Displays multiple group membership information.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-o\fR\fR
-.ad
-.RS 20n
-Formats output into one line of colon-separated fields.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR\fR
-.ad
-.RS 20n
-Selects logins with no passwords.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR\fR
-.ad
-.RS 20n
-Selects all system logins.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-t\fR\fR
-.ad
-.RS 20n
-Sorts output by login instead of by uid.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-u\fR\fR
-.ad
-.RS 20n
-Selects all user logins.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-x\fR\fR
-.ad
-.RS 20n
-Prints an extended set of information about each selected user. The extended
-information includes home directory, login shell and password aging
-information, each displayed on a separate line. The password information
-currently consists of password status:
-.sp
-.ne 2
-.na
-\fB\fBNP\fR\fR
-.ad
-.RS 6n
-Account has no password
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBLK\fR\fR
-.ad
-.RS 6n
-Account is locked for \fBUNIX\fR authentication
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBNL\fR\fR
-.ad
-.RS 6n
-Account is a no login account
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPS\fR\fR
-.ad
-.RS 6n
-Account probably has a valid password
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBUN\fR\fR
-.ad
-.RS 6n
-Account password status is unknown. That is, it is not a recognizable hashed
-password or any of the above entries. See \fBcrypt\fR(3C) for valid password
-hashes.
-.RE
-
-If the login is passworded, status is followed by the date the password was
-last changed, the number of days required between changes, and the number of
-days allowed before a change is required. The password aging information shows
-the time interval that the user receives a password expiration warning message
-(when logging on) before the password expires.
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBpasswd\fR(1), \fBcrypt\fR(3C), \fBattributes\fR(5)
diff --git a/usr/src/man/man1m/lpadmin.1m b/usr/src/man/man1m/lpadmin.1m
deleted file mode 100644
index 006d0994cf..0000000000
--- a/usr/src/man/man1m/lpadmin.1m
+++ /dev/null
@@ -1,1354 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH LPADMIN 1M "June 20, 2021"
-.SH NAME
-lpadmin \- configure the LP print service
-.SH SYNOPSIS
-.nf
-\fBlpadmin\fR \fB-p\fR \fIprinter\fR {\fIoptions\fR}
-.fi
-
-.LP
-.nf
-\fBlpadmin\fR \fB-x\fR \fIdest\fR
-.fi
-
-.LP
-.nf
-\fBlpadmin\fR \fB-d\fR [\fIdest\fR]
-.fi
-
-.LP
-.nf
-\fBlpadmin\fR \fB-S\fR \fIprint-wheel\fR \fB-T\fR [\fB-A\fR \fIalert-type\fR] [\fB-W\fR \fIminutes\fR]
- [\fB-Q\fR \fIrequests\fR]
-.fi
-
-.SH DESCRIPTION
-\fBlpadmin\fR configures the LP print service by defining printers and devices.
-It is used to add and change printers, to remove printers from service, to set
-or change the system default destination, to define alerts for printer faults,
-and to mount print wheels.
-.SH OPTIONS
-The \fBlpadmin\fR command has options for:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Adding or changing a printer
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Removing a printer destination
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Setting or changing the system default destination
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Setting an alert for a print wheel
-.RE
-.sp
-.LP
-The options for each of the above categories are specified in the following
-subsections.
-.sp
-.LP
-Several options support the use of lists. A list might contain, for example,
-user names, printers, printer forms, or content types. A list of multiple items
-can have the form of either comma-separated names or have the entire list
-enclosed by double quotes with a space between each name. For example, both
-lists below are acceptable:
-.sp
-.in +2
-.nf
-one,two,three
-"one two three"
-.fi
-.in -2
-
-.SS "Adding or Changing a Printer"
-The first form of the \fBlpadmin\fR command (\fBlpadmin\fR \fB-p\fR
-\fIprinter\fR {\fIoptions\fR}) configures a new printer or changes the
-configuration of an existing printer. It also starts the print scheduler.
-.sp
-.LP
-When creating a new printer, one of three options (\fB-v\fR, \fB-U\fR, or
-\fB-s\fR) must be supplied. In addition, only one of the following can be
-supplied: \fB-e\fR, \fB-i\fR, or \fB-m\fR; if none of these three options is
-supplied, the model standard is used. The \fB-h\fR and \fB-l\fR options are
-mutually exclusive. Printer and class names must be no longer than 14
-characters and must consist entirely of the characters \fBA\fR-\fBZ\fR,
-\fBa\fR-\fBz\fR, \fB0\fR-\fB9\fR, dash (\fB-\fR) and underscore (\fB_\fR). If
-\fB-s\fR is specified, the following options are invalid: \fB-A\fR, \fB-e\fR,
-\fB-F\fR, \fB-h\fR, \fB-i\fR, \fB-l\fR, \fB-M\fR, \fB-m\fR, \fB-o\fR, \fB-U\fR,
-\fB-v\fR, and \fB-W\fR.
-.sp
-.LP
-The following options can appear in any order.
-.sp
-.ne 2
-.na
-\fB\fB-A\fR \fIalert-type\fR [\fB-W\fR \fIminutes\fR]\fR
-.ad
-.sp .6
-.RS 4n
-The \fB-A\fR option is used to define an alert that informs the administrator
-when a printer fault is detected, and periodically thereafter, until the
-printer fault is cleared by the administrator. The \fIalert-types\fR are:
-.sp
-.ne 2
-.na
-\fB\fBmail\fR\fR
-.ad
-.RS 17n
-Send the alert message using mail (see \fBmail\fR(1)) to the administrator.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBwrite\fR\fR
-.ad
-.RS 17n
-Write the message to the terminal on which the administrator is logged in. If
-the administrator is logged in on several terminals, one is chosen arbitrarily.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBquiet\fR\fR
-.ad
-.RS 17n
-Do not send messages for the current condition. An administrator can use this
-option to temporarily stop receiving further messages about a known problem.
-Once the fault has been cleared and printing resumes, messages are sent again
-when another fault occurs with the printer.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBshowfault\fR\fR
-.ad
-.RS 17n
-Attempt to execute a fault handler on each system that has a print job in the
-queue. The fault handler is \fB/etc/lp/alerts/printer\fR. It is invoked with
-three parameters: \fIprinter_name\fR, \fBdate\fR, \fIfile_name\fR. The
-\fIfile_name\fR is the name of a file containing the fault message.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnone\fR\fR
-.ad
-.RS 17n
-Do not send messages; any existing alert definition for the printer is removed.
-No alert is sent when the printer faults until a different alert-type (except
-\fBquiet\fR) is used.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIshell-command\fR\fR
-.ad
-.RS 17n
-Run the \fIshell-command\fR each time the alert needs to be sent. The shell
-command should expect the message in standard input. If there are blank spaces
-embedded in the command, enclose the command in quotes. Notice that the
-\fBmail\fR and \fBwrite\fR values for this option are equivalent to the values
-\fBmail\fR \fIuser-name\fR and \fBwrite\fR \fIuser-name\fR respectively, where
-\fIuser-name\fR is the current name for the administrator. This is the login
-name of the person submitting this command unless he or she has used the
-\fBsu\fR command to change to another user ID. If the \fBsu\fR command has been
-used to change the user ID, then the \fIuser-name\fR for the new ID is used.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBlist\fR\fR
-.ad
-.RS 17n
-Display the type of the alert for the printer fault. No change is made to the
-alert.
-.RE
-
-When a fault occurs, the printing subsystem displays a message indicating that
-printing for a specified printer has stopped and the reason for the stoppage.
-The message also indicates that printing will restart in a few minutes and that
-you can enter an \fBenable\fR command if you want to restart sooner than that.
-.sp
-Following a fault that occurs in the middle of a print job, the job is
-reprinted from the beginning. An exception to this occurs when you enter a
-command, such as the one shown below, that changes the page list to be printed.
-.sp
-.in +2
-.nf
-% \fB\fR\fBlp\fR\fB \fR\fB-i\fR\fB \fIrequest-id\fR \fR\fB-P\fR\fB ...\fR
-.fi
-.in -2
-.sp
-
-For a given print request, the presence of multiple reasons for failure
-indicate multiple attempts at printing.
-.sp
-The \fBLP\fR print service can detect printer faults only through an adequate
-fast filter and only when the standard interface program or a suitable
-customized interface program is used. Furthermore, the level of recovery after
-a fault depends on the capabilities of the filter.
-.sp
-If, instead of a single printer, the keyword \fBall\fR is displayed in an
-alert, the alert applies to all printers.
-.sp
-If the \fB-W\fR option is not used to arrange fault alerting for \fIprinter\fR,
-the default procedure is to mail one message to the administrator of
-\fIprinter\fR per fault. This is equivalent to specifying \fB-W\fR \fBonce\fR
-or \fB-W\fR \fB0\fR. If \fIminutes\fR is a number greater than zero, an alert
-is sent at intervals specified by \fIminutes\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-c\fR \fIclass\fR\fR
-.ad
-.sp .6
-.RS 4n
-Insert \fIprinter\fR into the specified \fIclass\fR. \fIclass\fR is created if
-it does not already exist. This option requires the \fB-U\fR \fIdial-info\fR or
-\fB-v\fR \fIdevice\fR options.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-D\fR \fIcomment\fR\fR
-.ad
-.sp .6
-.RS 4n
-Save this \fIcomment\fR for display whenever a user asks for a full description
-of \fIprinter\fR (see \fBlpstat\fR(1)). The LP print service does not interpret
-this comment.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-e\fR \fIprinter\fR\fR
-.ad
-.sp .6
-.RS 4n
-Copy the interface program of an existing \fIprinter\fR to be the interface
-program for \fIprinter\fR. (Options \fB-i\fR and \fB-m\fR must not be specified
-with this option.)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR \fBallow\fR:\fIform-list\fR\fR
-.ad
-.br
-.na
-\fB\fB-f\fR \fBdeny\fR:\fIform-list\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow or deny the forms in \fIform-list\fR to be printed on \fIprinter\fR. By
-default no forms are allowed on a new printer.
-.sp
-For each printer, the \fBLP\fR print service keeps two lists of forms: an
-``allow-list'' of forms that can be used with the printer, and a ``deny-list''
-of forms that cannot be used with the printer. With the \fB\fR\fB-f\fR\fB
-allow\fR option, the forms listed are added to the allow-list and removed from
-the deny-list. With the \fB-f\fR \fBdeny\fR option, the forms listed are added
-to the deny-list and removed from the allow-list.
-.sp
-If the allow-list is not empty, only the forms in the list can be used on the
-printer, regardless of the contents of the deny-list. If the allow-list is
-empty, but the deny-list is not, the forms in the deny-list cannot be used with
-the printer. All forms can be excluded from a printer by specifying \fB-f\fR
-\fBdeny:all\fR. All forms can be used on a printer (provided the printer can
-handle all the characteristics of each form) by specifying \fB-f\fR
-\fBallow:all\fR.
-.sp
-The \fBLP\fR print service uses this information as a set of guidelines for
-determining where a form can be mounted. Administrators, however, are not
-restricted from mounting a form on any printer. If mounting a form on a
-particular printer is in disagreement with the information in the allow-list or
-deny-list, the administrator is warned but the mount is accepted. Nonetheless,
-if a user attempts to issue a print or change request for a form and printer
-combination that is in disagreement with the information, the request is
-accepted only if the form is currently mounted on the printer. If the form is
-later unmounted before the request can print, the request is canceled and the
-user is notified by mail.
-.sp
-If the administrator tries to specify a form as acceptable for use on a printer
-that does not have the capabilities needed by the form, the command is
-rejected.
-.sp
-Notice the other use of \fB-f\fR, with the \fB-M\fR option, below.
-.sp
-The \fB-T\fR option must be invoked first with \fBlpadmin\fR to identify the
-printer type before the \fB-f\fR option can be used.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-F\fR \fIfault-recovery\fR\fR
-.ad
-.sp .6
-.RS 4n
-This option specifies the recovery to be used for any print request that is
-stopped because of a printer fault, according to the value of
-\fIfault-recovery\fR:
-.sp
-.ne 2
-.na
-\fB\fBcontinue\fR\fR
-.ad
-.RS 13n
-Continue printing on the top of the page where printing stopped. This requires
-a filter to wait for the fault to clear before automatically continuing.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBbeginning\fR\fR
-.ad
-.RS 13n
-Start printing the request again from the beginning.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBwait\fR\fR
-.ad
-.RS 13n
-Disable printing on \fIprinter\fR and wait for the administrator or a user to
-enable printing again.
-.sp
-During the wait, the administrator or the user who submitted the stopped print
-request can issue a change request that specifies where printing should resume.
-(See the \fB-i\fR option of the \fBlp\fR command.) If no change request is made
-before printing is enabled, printing resumes at the top of the page where
-stopped, if the filter allows; otherwise, the request is printed from the
-beginning.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-h\fR\fR
-.ad
-.sp .6
-.RS 4n
-Indicate that the device associated with the printer is hardwired. If neither
-of the mutually exclusive options, \fB-h\fR and \fB-l\fR, is specified,
-\fB-h\fR is assumed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-i\fR \fIinterface\fR\fR
-.ad
-.sp .6
-.RS 4n
-Establish a new interface program for \fIprinter\fR. \fIinterface\fR is the
-pathname of the new program. (The \fB-e\fR and \fB-m\fR options must not be
-specified with this option.)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-I\fR \fIcontent-type-list\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow \fIprinter\fR to handle print requests with the content types listed in a
-\fIcontent-type-list\fR.
-.sp
-The type \fBsimple\fR is recognized as the default content type for files in
-the UNIX system. A \fBsimple\fR type of file is a data stream containing only
-printable \fBASCII\fR characters and the following control characters:
-.sp
-
-.sp
-.TS
-c c c
-l l l .
-Control Char Octal Value Meaning
-BACKSPACE 10 Move back one char, except
- at beginning of line
-TAB 11 Move to next tab stop
-LINEFEED 12 Move to beginning of
- (newline) next line
-FORMFEED 14 Move to beginning of
- next page
-RETURN 15 Move to beginning of
- current line
-.TE
-
-To prevent the print service from considering \fBsimple\fR a valid type for the
-printer, specify either an explicit value (such as the printer type) in the
-\fIcontent-type-list\fR, or an empty list. If you do want \fBsimple\fR included
-along with other types, you must include \fBsimple\fR in the
-\fIcontent-type-list\fR.
-.sp
-In addition to content types defined by the print administrator, the type
-\fBPostScript\fR is recognized and supported by the Solaris print subsystem.
-This includes filters to support \fBPostScript\fR as the printer content type.
-.sp
-The type \fBany\fR is recognized as a special content type for files. When
-declared as the input type for a printer, it signals the print sub-system not
-to do any filtering on the file before sending it to the printer.
-.sp
-Except for \fBsimple\fR and \fBany\fR, each \fIcontent-type\fR name is
-determined by the administrator. If the printer type is specified by the
-\fB-T\fR option, then the printer type is implicitly considered to be also a
-valid content type.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR\fR
-.ad
-.sp .6
-.RS 4n
-Indicate that the device associated with \fIprinter\fR is a login terminal. The
-LP scheduler (\fBlpsched\fR) disables all login terminals automatically each
-time it is started. (The \fB-h\fR option must not be specified with this
-option.)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-m\fR \fImodel\fR\fR
-.ad
-.sp .6
-.RS 4n
-Select \fImodel\fR interface program, provided with the \fBLP\fR print service,
-for the printer. (Options \fB-e\fR and \fB-i\fR must not be specified with this
-option.)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-M\fR \fB-f\fR \fIform-name\fR [\fB-a\fR [\fB-o\fR \fBfilebreak\fR]]
-[\fB-t\fR \fItray-number\fR]]\fR
-.ad
-.sp .6
-.RS 4n
-Mount the form \fIform-name\fR on \fIprinter\fR. Print requests that need the
-pre-printed form \fIform-name\fR is printed on \fIprinter\fR. If more than one
-printer has the form mounted and the user has specified \fBany\fR (with the
-\fB-d\fR option of the \fBlp\fR command) as the printer destination, then the
-print request is printed on the one printer that also meets the other needs of
-the request.
-.sp
-The page length and width, and character and line pitches needed by the form
-are compared with those allowed for the printer, by checking the capabilities
-in the \fBterminfo\fR database for the type of printer. If the form requires
-attributes that are not available with the printer, the administrator is warned
-but the mount is accepted. If the form lists a print wheel as mandatory, but
-the print wheel mounted on the printer is different, the administrator is also
-warned but the mount is accepted.
-.sp
-If the \fB-a\fR option is given, an alignment pattern is printed, preceded by
-the same initialization of the physical printer that precedes a normal print
-request, with one exception: no banner page is printed. Printing is assumed to
-start at the top of the first page of the form. After the pattern is printed,
-the administrator can adjust the mounted form in the printer and press return
-for another alignment pattern (no initialization this time), and can continue
-printing as many alignment patterns as desired. The administrator can quit the
-printing of alignment patterns by typing \fBq\fR.
-.sp
-If the \fB-o\fR \fBfilebreak\fR option is given, a formfeed is inserted between
-each copy of the alignment pattern. By default, the alignment pattern is
-assumed to correctly fill a form, so no formfeed is added.
-.sp
-If the \fB-t\fR \fItray-number\fR option is specified, printer tray
-\fItray-number\fR is used.
-.sp
-A form is ``unmounted'' either by mounting a new form in its place or by using
-the \fB-f\fR \fBnone\fR option. By default, a new printer has no form mounted.
-.sp
-Notice the other use of \fB-f\fR without the \fB-M\fR option above.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-M\fR \fB-S\fR \fIprint-wheel\fR\fR
-.ad
-.sp .6
-.RS 4n
-Mount the \fIprint-wheel\fR on \fIprinter\fR. Print requests that need the
-\fIprint-wheel\fR are printed on \fIprinter\fR. If more than one printer has
-\fIprint-wheel\fR mounted and the user has specified \fBany\fR (with the
-\fB-d\fR option of the \fBlp\fR command) as the printer destination, then the
-print request is printed on the one printer that also meets the other needs of
-the request.
-.sp
-If the \fIprint-wheel\fR is not listed as acceptable for the printer, the
-administrator is warned but the mount is accepted. If the printer does not take
-print wheels, the command is rejected.
-.sp
-A print wheel is ``unmounted'' either by mounting a new print wheel in its
-place or by using the option \fB-S\fR \fBnone\fR. By default, a new printer has
-no print wheel mounted.
-.sp
-Notice the other uses of the \fB-S\fR option without the \fB-M\fR option
-described below.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR \fIppdfilename\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify a \fBPPD\fR file for creating and modifying printer queues.
-\fIppdfilename\fR is the full path and file name to the \fBPPD\fR file. Used in
-conjunction with the \fB-p\fR, \fB-d\fR, \fB-x\fR, or \fB-S\fR options.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-o\fR \fIoption\fR\fR
-.ad
-.sp .6
-.RS 4n
-The \fB-o\fR option defines default printer configuration values given to an
-interface program. The default can be explicitly overwritten for individual
-requests by the user (see \fBlp\fR(1)), or taken from a preprinted form
-description (see \fBlpforms\fR(1M) and \fBlp\fR(1)).
-.sp
-There are several options which are predefined by the system. In addition, any
-number of key-value pairs can be defined. See the section "Predefined Options
-Used with the \fB-o\fR Option", below.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-P\fR \fIpaper-name\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify a paper type list that the printer supports.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-r\fR \fIclass\fR\fR
-.ad
-.sp .6
-.RS 4n
-Remove \fIprinter\fR from the specified \fIclass\fR. If \fIprinter\fR is the
-last member of \fIclass\fR, then \fIclass\fR is removed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-S\fR \fIlist\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow either the print wheels or aliases for character sets named in \fIlist\fR
-to be used on the printer.
-.sp
-If the printer is a type that takes print wheels, then \fIlist\fR is a comma or
-space separated list of print wheel names. These are the only print wheels
-considered mountable on the printer. (You can always force a different print
-wheel to be mounted.) Until the option is used to specify a list, no print
-wheels are considered mountable on the printer, and print requests that ask for
-a particular print wheel with this printer are rejected.
-.sp
-If the printer is a type that has selectable character sets, then \fIlist\fR is
-a list of character set name ``mappings'' or aliases. Each ``mapping'' is of
-the form \fIknown-name=alias\fR The \fIknown-name\fR is a character set number
-preceded by \fBcs\fR (such as \fBcs3\fR for character set three) or a character
-set name from the \fBterminfo\fR database entry \fBcsnm\fR. See
-\fBterminfo\fR(4). If this option is not used to specify a list, only the names
-already known from the \fBterminfo\fR database or numbers with a prefix of
-\fBcs\fR is acceptable for the printer. If \fIlist\fR is the word \fBnone\fR,
-any existing print wheel lists or character set aliases are removed.
-.sp
-Notice the other uses of the \fB-S\fR with the \fB-M\fR option described above.
-.sp
-The \fB-T\fR option must be invoked first with \fBlpadmin\fR to identify the
-printer type before the \fB-S\fR option can be used.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR \fIsystem-name\fR\fR
-.ad
-.sp .6
-.RS 4n
-The \fB-s\fR option can be used for both remote or local printers. For remote
-printers:
-.sp
-.ne 2
-.na
-\fB\fB-s\fR \fIsystem-name\fR[\fB!\fR\fIprinter-name\fR] (UUCP format)\fR
-.ad
-.br
-.na
-\fB\fB-s\fR \fIprinter-name\fR\fB@\fR\fIsystem-name\fR (RCMD format)\fR
-.ad
-.sp .6
-.RS 4n
-Make a remote printer (one that must be accessed through another system)
-accessible to users on your system. \fIsystem-name\fR is the name of the remote
-system on which the remote printer is located it. \fIprinter-name\fR is the
-name used on the remote system for that printer. For example, if you want to
-access \fIprinter1\fR on \fIsystem1\fR and you want it called \fIprinter2\fR on
-your system:
-.sp
-.in +2
-.nf
-\fB-p\fR \fIprinter2\fR \fB-s\fR \fIsystem1\fR\fB!\fR\fIprinter1\fR
-.fi
-.in -2
-.sp
-
-.sp
-.in +2
-.nf
-\fB-p\fR \fIprinter2\fR \fB-s\fR \fIprinter1\fR\fB@\fR\fIsystem1\fR
-.fi
-.in -2
-.sp
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR \fIscheme\fR\fB://\fR\fIend-point\fR (URI format)\fR
-.ad
-.sp .6
-.RS 4n
-Make a remote printer (one that must be accessed through another system)
-accessible to users on your system. The supported schemes include \fBlpd\fR and
-\fBipp\fR. Specify URI's using the \fBlpd\fR format as follows:
-.sp
-.in +2
-.nf
-\fBlpd://\fR\fIserver\fR/\fIprinters\fR/\fIqueue\fR\fB[#Solaris]\fR
-.fi
-.in -2
-.sp
-
-URI's using the \fBipp\fR format are defined by the remote print server. They
-are generally of the format:
-.sp
-.in +2
-.nf
-\fBipp://\fR\fIserver\fR\fB/\fR\fIprinters\fR\fB/\fR\fIqueue\fR
-.fi
-.in -2
-.sp
-
-In either case, \fIserver\fR specifies the hostname or IP address of the remote
-print server, \fIqueue\fR specifies the name of the print queue on the remote
-print server, and the optional \fB#Solaris\fR specifies that the remote print
-server is a Solaris server when \fBlpd\fR URI format is being used.
-.sp
-For example:
-.sp
-.in +2
-.nf
-\fB-p\fR \fIprinter\fR \fB-s\fR \fBlpd://\fR\fIserver\fR\fB/\fR\fIprinters\fR\fB/\fR\fIqueue\fR\fB#Solaris\fR
-\fB-p\fR \fIprinter\fR \fB-s\fR \fBipp://\fR\fIserver\fR\fB/\fR\fIprinters\fR\fB/\fR\fIqueue\fR
-.fi
-.in -2
-.sp
-
-.RE
-
-For local printers:
-.sp
-.ne 2
-.na
-\fB\fB-s\fR "\fBlocalhost\fR"\fR
-.ad
-.RS 18n
-Use \fBlocalhost\fR for the \fIsystem-name\fR to be used by the print service.
-In an environment where the nodename is variable, print queues are invalidated
-when the nodename changes. Using \fBlocalhost\fR as the \fIsystem-name\fR
-allows print queues to be maintained across changing nodenames. The
-\fIsystem-name\fR, as used by the print service, is only set to \fBlocalhost\fR
-when explicitly set with this option; by default, \fBlpadmin\fR sets
-\fIsystem-name\fR to \fInodename\fR. For example, if you want to configure a
-new printer on the local system, and want it called \fIprinter3\fR:
-.sp
-\fB-p\fR \fIprinter3\fR \fB-s\fR \fIlocalhost\fR \fB-v\fR \fIdevice\fR
-.sp
-This option should never be used when creating name service maps.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-T\fR \fIprinter-type-list\fR\fR
-.ad
-.sp .6
-.RS 4n
-Identify the printer as being of one or more \fIprinter-type\fRs. Each
-\fIprinter-type\fR is used to extract data from the \fBterminfo\fR database;
-this information is used to initialize the printer before printing each user's
-request. Some filters might also use a \fIprinter-type\fR to convert content
-for the printer. If this option is not used, the default \fIprinter-type\fR is
-\fBunknown\fR. No information is extracted from \fBterminfo\fR so each user
-request is printed without first initializing the printer. Also, this option
-must be used if the following are to work: \fB\fR\fB-o\fR\fB cpi\fR,
-\fB\fR\fB-o\fR\fB lpi\fR, \fB\fR\fB-o\fR width, and \fB\fR\fB-o\fR\fB length\fR
-options of the \fBlpadmin\fR and \fBlp\fR commands, and the \fB-S\fR and
-\fB-f\fR options of the \fBlpadmin\fR command.
-.sp
-If the \fIprinter-type-list\fR contains more than one type, then the
-\fIcontent-type-list\fR of the \fB-I\fR option must either be specified as
-\fBsimple\fR, as empty (\fB\fR\fB-I\fR\fB ""\fR), or not specified at all.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\fR\fB-t\fR\fInumber-of-trays\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify the number of trays when creating the printer.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-u\fR \fBallow:\fR\fIlogin-ID-list\fR\fR
-.ad
-.br
-.na
-\fB\fB-u\fR \fBdeny:\fR\fIlogin-ID-list\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow or deny the users in \fIlogin-ID-list\fR access to the printer. By
-default all users are allowed on a new printer. The \fIlogin-ID-list\fR
-argument can include any or all of the following constructs:
-.sp
-.ne 2
-.na
-\fB\fIlogin-ID\fR\fR
-.ad
-.RS 24n
-a user on any system
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIsystem-name\fR\fB!\fR\fIlogin-ID\fR\fR
-.ad
-.RS 24n
-a user on system \fIsystem-name\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIsystem-name\fR\fB!all\fR\fR
-.ad
-.RS 24n
-all users on system \fIsystem-name\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBall!\fR\fIlogin-ID\fR\fR
-.ad
-.RS 24n
-a user on all systems
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBall\fR\fR
-.ad
-.RS 24n
-all users on all systems
-.RE
-
-For each printer, the \fBLP\fR print service keeps two lists of users: an
-``allow-list'' of people allowed to use the printer, and a ``deny-list'' of
-people denied access to the printer. With the \fB\fR\fB-u\fR\fB allow\fR
-option, the users listed are added to the allow-list and removed from the
-deny-list. With the \fB\fR\fB-u\fR\fB deny\fR option, the users listed are
-added to the deny-list and removed from the allow-list.
-.sp
-If the allow-list is not empty, only the users in the list can use the printer,
-regardless of the contents of the deny-list. If the allow-list is empty, but
-the deny-list is not, the users in the deny-list cannot use the printer. All
-users can be denied access to the printer by specifying \fB\fR\fB-u\fR\fB
-deny:all\fR. All users can use the printer by specifying \fB\fR\fB-u\fR\fB
-allow:all\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fR
-.ad
-.sp .6
-.RS 4n
-The \fB-U\fR option allows your print service to access a remote printer. (It
-does not enable your print service to access a remote printer service.)
-Specifically, \fB-U\fR assigns the ``dialing'' information \fIdial-info\fR to
-the printer. \fIdial-info\fR is used with the \fBdial\fR routine to call the
-printer. Any network connection supported by the Basic Networking Utilities
-works. \fIdial-info\fR can be either a phone number for a modem connection, or
-a system name for other kinds of connections. Or, if \fB-U\fR \fBdirect\fR is
-given, no dialing takes place, because the name \fBdirect\fR is reserved for a
-printer that is directly connected. If a system name is given, it is used to
-search for connection details from the file \fB/etc/uucp/Systems\fR or related
-files. The Basic Networking Utilities are required to support this option. By
-default, \fB\fR\fB-U\fR\fB direct\fR is assumed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\fR\fB-v\fR \fIdevice\fR\fR
-.ad
-.sp .6
-.RS 4n
-Associate a \fIdevice\fR with \fIprinter\fR. \fIdevice\fR is the path name of a
-file that is writable by \fBlp\fR. Notice that the same \fIdevice\fR can be
-associated with more than one printer.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR \fIscheme\fR\fB://\fR\fIend-point\fR\fR
-.ad
-.sp .6
-.RS 4n
-Associate a network attached device with printer.
-.sp
-\fIscheme\fR is the method or protocol used to access the network attached
-device and \fIend-point\fR is the information necessary to contact that network
-attached device. Use of this device format requires the use of the \fBuri\fR
-interface script and can only be used with the \fBsmb\fR scheme at this time.
-.sp
-For example:
-.sp
-.in +2
-.nf
-# lpadmin \fB-p\fR \fIqueue\fR \fB-v\fR \fBsmb://smb-\fR\fIservice\fR\fB/\fR\fIprinter\fR \fB-m\fR \fBuri\fR
-.fi
-.in -2
-.sp
-
-See the \fBsmbspool\fR man page for details.
-.RE
-
-.SS "Removing a Printer Destination"
-The \fB-x\fR \fIdest\fR option removes the destination \fIdest\fR (a printer or
-a class), from the \fBLP\fR print service. If \fIdest\fR is a printer and is
-the only member of a class, then the class is deleted, too. If \fIdest\fR is
-\fBall\fR, all printers and classes are removed. If there are no remaining
-local printers and the scheduler is still running, the scheduler is shut down.
-.sp
-.LP
-No other \fIoptions\fR are allowed with \fB-x\fR.
-.SS "Setting/Changing the System Default Destination"
-The \fB-d\fR [\fIdest\fR] option makes \fIdest\fR (an existing printer or
-class) the new system default destination. If \fIdest\fR is not supplied, then
-there is no system default destination. No other \fIoptions\fR are allowed with
-\fB-d\fR.
-.SS "Setting an Alert for a Print Wheel"
-.ne 2
-.na
-\fB\fB-S\fR \fIprint-wheel\fR [\fB-A\fR \fIalert-type\fR] [\fB-W\fR
-\fIminutes\fR] [\fB-Q\fR \fIrequests\fR] \fB-T\fR\fR
-.ad
-.sp .6
-.RS 4n
-The \fB-S\fR \fIprint-wheel\fR option is used with the \fB-A\fR
-\fIalert-type\fR option to define an alert to mount the print wheel when there
-are jobs queued for it. If this command is not used to arrange alerting for a
-print wheel, no alert is sent for the print wheel. Notice the other use of
-\fB-A\fR, with the \fB-p\fR option, above.
-.sp
-The \fIalert-types\fR are:
-.sp
-.ne 2
-.na
-\fB\fBmail\fR\fR
-.ad
-.RS 17n
-Send the alert message using the \fBmail\fR command to the administrator.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBwrite\fR\fR
-.ad
-.RS 17n
-Write the message, using the \fBwrite\fR command, to the terminal on which the
-administrator is logged in. If the administrator is logged in on several
-terminals, one is arbitrarily chosen.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBquiet\fR\fR
-.ad
-.RS 17n
-Do not send messages for the current condition. An administrator can use this
-option to temporarily stop receiving further messages about a known problem.
-Once the \fIprint-wheel\fR has been mounted and subsequently unmounted,
-messages are sent again when the number of print requests reaches the threshold
-specified by the \fB-Q\fR option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnone\fR\fR
-.ad
-.RS 17n
-Do not send messages until the \fB-A\fR option is given again with a different
-\fIalert-type\fR (other than \fBquiet\fR).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIshell-command\fR\fR
-.ad
-.RS 17n
-Run the \fIshell-command\fR each time the alert needs to be sent. The shell
-command should expect the message in standard input. If there are blanks
-embedded in the command, enclose the command in quotes. Notice that the
-\fBmail\fR and \fBwrite\fR values for this option are equivalent to the values
-\fBmail\fR \fIuser-name\fR and \fBwrite\fR \fIuser-name\fR respectively, where
-\fIuser-name\fR is the current name for the administrator. This is the login
-name of the person submitting this command unless he or she has used the
-\fBsu\fR command to change to another user ID. If the \fBsu\fR command has been
-used to change the user ID, then the \fIuser-name\fR for the new ID is used.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBlist\fR\fR
-.ad
-.RS 17n
-Display the type of the alert for the print wheel on standard output. No change
-is made to the alert.
-.RE
-
-The message sent appears as follows:
-.sp
-.in +2
-.nf
-The print wheel \fIprint-wheel\fR needs to be mounted
-on the printer(s):
-\fIprinter\fR(\fIinteger1\fRrequests) \fIinteger2\fR print requests
-await this print wheel.
-.fi
-.in -2
-.sp
-
-The printers listed are those that the administrator had earlier specified were
-candidates for this print wheel. The number \fIinteger1\fR listed next to each
-printer is the number of requests eligible for the printer. The number
-\fIinteger2\fR shown after the printer list is the total number of requests
-awaiting the print wheel. It is less than the sum of the other numbers if some
-requests can be handled by more than one printer.
-.sp
-If the \fIprint-wheel\fR is \fBall\fR, the alerting defined in this command
-applies to all print wheels already defined to have an alert.
-.sp
-If the \fB-W\fR option is not given, the default procedure is that only one
-message is sent per need to mount the print wheel. Not specifying the \fB-W\fR
-option is equivalent to specifying \fB\fR\fB-W\fR\fB once\fR or \fB-W\fR
-\fB0\fR. If \fIminutes\fR is a number greater than zero, an alert is sent at
-intervals specified by \fIminutes\fR.
-.sp
-If the \fB-Q\fR option is also given, the alert is sent when a certain number
-(specified by the argument \fIrequests\fR) of print requests that need the
-print wheel are waiting. If the \fB-Q\fR option is not given, or \fIrequests\fR
-is 1 or \fBany\fR (which are both the default), a message is sent as soon as
-anyone submits a print request for the print wheel when it is not mounted.
-.RE
-
-.SH PREDEFINED OPTIONS USED WITH THE \fB-o\fR OPTION
-A number of options, described below, are predefined for use with \fB-o\fR.
-These options are used for adjusting printer capabilities, adjusting printer
-port characteristics, configuring network printers, and controlling the use of
-banner. The \fB-o\fR also supports an arbitrary \fB\fIkeyword\fR=\fIvalue\fR\fR
-format, which is referred to below as an undefined option.
-.SS "Adjusting Printer Capabilities"
-The \fBlength\fR, \fBwidth\fR, \fBcpi\fR, and \fBlpi\fR parameters can be used
-in conjunction with the \fB-o\fR option to adjust printer capabilities. The
-format of the parameters and their values is as follows:
-.sp
-.in +2
-.nf
-length=\fIscaled-decimal-number\fR
-width=\fIscaled-decimal-number\fR
-cpi=\fIscaled-decimal-number\fR
-lpi=\fIscaled-decimal-number\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The term \fIscaled-decimal-number\fR refers to a non-negative number used to
-indicate a unit of size. The type of unit is shown by a ``trailing'' letter
-attached to the number. Three types of \fIscaled-decimal-numbers\fR can be used
-with the LP print service: numbers that show sizes in centimeters (marked with
-a trailing \fBc\fR); numbers that show sizes in inches (marked with a trailing
-\fBi\fR); and numbers that show sizes in units appropriate to use (without a
-trailing letter), that is, lines, characters, lines per inch, or characters per
-inch.
-.sp
-.LP
-The option values must agree with the capabilities of the type of physical
-printer, as defined in the terminfo database for the printer type. If they do
-not, the command is rejected.
-.sp
-.LP
-The defaults are defined in the \fBterminfo\fR entry for the specified printer
-type. The defaults can be reset by:
-.sp
-.in +2
-.nf
-\fBlpadmin -p \fIprintername\fR -o length=
-lpadmin -p \fIprintername\fR -o width=
-lpadmin -p \fIprintername\fR -o cpi=
-lpadmin -p \fIprintername\fR -o lpi=\fR
-.fi
-.in -2
-.sp
-
-.SS "Adjusting Printer Port Characteristics"
-You use the \fBstty\fR keyword in conjunction with the o option to adjust
-printer port characteristics. The general form of the \fBstty\fR portion of the
-command is:
-.sp
-.in +2
-.nf
-\fBstty="'\fR\fIstty-option-list\fR'"
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The \fIstty-option-list\fR is not checked for allowed values, but is passed
-directly to the \fBstty\fR program by the standard interface program. Any error
-messages produced by \fBstty\fR when a request is processed (by the standard
-interface program) are mailed to the user submitting the request.
-.sp
-.LP
-The default for \fBstty\fR is:
-.sp
-.in +2
-.nf
-stty="'9600 cs8 -cstopb -parenb ixon
- -ixany opost -olcuc onlcr
- -ocrnl -onocr
- -onlret -ofill nl0 cr0 tab0 bs0 vt0 ff0'"
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The default can be reset by:
-.sp
-.in +2
-.nf
-\fBlpadmin -p \fIprintername\fR -o stty=\fR
-.fi
-.in -2
-.sp
-
-.SS "Configuring Network Printers"
-The \fBdest\fR, \fBprotocol\fR, \fBbsdctrl\fR, and \fBtimeout\fR parameters are
-used in conjunction with the \fB-o\fR option to configure network printers. The
-format of these keywords and their assigned values is as follows:
-.sp
-.in +2
-.nf
-dest=\fIstring\fR protocol=\fIstring\fR bsdctrl=\fIstring\fR \e
- timeout=\fInon-negative-integer-seconds\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-These four options are provided to support network printing. Each option is
-passed directly to the interface program; any checking for allowed values is
-done there.
-.sp
-.LP
-The value of \fBdest\fR is the name of the destination for the network printer;
-the semantics for value \fBdest\fR are dependent on the printer and the
-configuration. There is no default.
-.sp
-.LP
-The value of option \fBprotocol\fR sets the over-the-wire protocol to the
-printer. The default for option \fBprotocol\fR is \fBbsd\fR. The value of
-option \fBbsdctrl\fR sets the print order of control and data files (BSD
-protocol only); the default for this option is \fBcontrol file first\fR. The
-value of option \fBtimeout\fR sets the seed value for backoff time when the
-printer is busy. The default value for the \fBtimeout\fR option is \fB10\fR
-seconds. The defaults can be reset by:
-.sp
-.in +2
-.nf
-\fBlpadmin -p \fIprintername\fR -o protocol=
-lpadmin -p \fIprintername\fR \fR\fB-o bsdctrl=\fR
-lpadmin -p \fIprintername\fR -o timeout=
-.fi
-.in -2
-.sp
-
-.SS "Controlling the Use of the Banner Page"
-Use the following commands to control the use of the banner page:
-.sp
-.in +2
-.nf
-\fBlpadmin -p \fIprinter\fR -o nobanner\fR
-\fBlpadmin -p \fIprinter\fR -o banner\fR
-\fBlpadmin -p \fIprinter\fR -o banner=always\fR
-\fBlpadmin -p \fIprinter\fR -o banner=never\fR
-\fBlpadmin -p \fIprinter\fR -o banner=optional\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The first and fifth commands (\fB-o\fR \fBnobanner\fR and \fB-o\fR
-\fBbanner=optional\fR) are equivalent. The default is to print the banner page,
-unless a user specifies \fB-o\fR \fBnobanner\fR on an \fBlp\fR command line.
-.sp
-.LP
-The second and third commands (\fB-o\fR \fBbanner\fR and \fB-o\fR
-\fBbanner=always\fR) are equivalent. Both cause a banner page to be printed
-always, even if a user specifies \fBlp\fR \fB-o\fR \fBnobanner\fR. The root
-user can override this command.
-.sp
-.LP
-The fourth command (\fB-o\fR \fBbanner=never\fR) causes a banner page never to
-be printed, even if a user specifies \fBlp\fR \fB-o\fR \fBbanner\fR. The root
-user can override this command.
-.SS "Undefined Options"
-The \fB-o\fR option supports the use of arbitrary, user-defined options with
-the following format:
-.sp
-.ne 2
-.na
-\fB\fIkey\fR\fB=\fR\fIvalue\fR\fR
-.ad
-.sp .6
-.RS 4n
-Each \fIkey\fR\fB=\fR\fIvalue\fR is passed directly to the interface program.
-Any checking for allowed values is done in the interface program.
-.sp
-Any default values for a given \fIkey\fR\fB=\fR\fIvalue\fR option are defined
-in the interface program. If a default is provided, it can be reset by typing
-the key without any value:
-.sp
-.in +2
-.nf
-lpadmin -p \fIprintername\fR -o \fIkey\fR=
-.fi
-.in -2
-.sp
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBlpadmin\fR \fB-p\fR \fIprinter\fR \fB-o\fR \fBfoo | nofoo\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets boolean values \fBfoo=true | foo=false\fR.
-.RE
-
-.SH EXAMPLES
-In the following examples, \fIprtr\fR can be any name up to 14 characters and
-can be the same name as the \fBping\fR(1M) name.
-.LP
-\fBExample 1 \fRConfiguring an HP Postscript Printer with a Jet Direct Network
-Interface
-.sp
-.LP
-The following example configures an HP postscript printer with a jet direct
-network interface:
-
-.sp
-.in +2
-.nf
-example# \fBlpadmin -p \fIprtr\fR -v /dev/null -m netstandard \e
- -o dest=\fIping_name_of_prtr\fR:9100 -o protocol=tcp -T PS -I \e
- postscript\fR
-example# \fBenable \fIprtr\fR\fR
-example# \fBaccept \fIprtr\fR\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRConfiguring a Standard Postscript Network Printer
-.sp
-.LP
-The following example configures a standard postscript network printer:
-
-.sp
-.in +2
-.nf
-example# \fBlpadmin -p \fIprtr\fR -v /dev/null -m netstandard \e
- -o dest=\fIping_name_of_prtr\fR -T PS -I postscript\fR
-example# \fBenable \fIprtr\fR\fR
-example# \fBaccept \fIprtr\fR\fR
-.fi
-.in -2
-.sp
-
-.SH EXIT STATUS
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 12n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fBnon-zero\fR
-.ad
-.RS 12n
-An error occurred.
-.RE
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/var/spool/lp/*\fR\fR
-.ad
-.RS 26n
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/lp\fR\fR
-.ad
-.RS 26n
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/lp/alerts/printer\fR\fR
-.ad
-.RS 26n
-Fault handler for \fBlpadmin\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/printers.conf\fR\fR
-.ad
-.RS 26n
-System printer configuration database
-.RE
-
-.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Obsolete
-.TE
-
-.SH SEE ALSO
-\fBenable\fR(1), \fBlp\fR(1), \fBlpstat\fR(1), \fBmail\fR(1), \fBstty\fR(1),
-\fBaccept\fR(1M), \fBlpforms\fR(1M), \fBlpsched\fR(1M), \fBlpsystem\fR(1M),
-\fBping\fR(1M), \fBdial\fR(3NSL), \fBterminfo\fR(4), \fBattributes\fR(5)
-.sp
-.LP
-\fI\fR
-.SH NOTES
-When using lpadmin to provide access to a remote printer, remote configuration
-data is stored in \fB/etc/printers.conf\fR. This data includes a \fBbsdaddr\fR
-and a \fBprinter-uri-supported\fR attribute. The data in this file can be
-shared through the use of a network name service or replicated across multiple
-systems. If the data is shared, it is important to make sure that the
-\fBbsdaddr\fR and \fBprinter-uri-supported\fR contain hostname information that
-is correctly resolved on all hosts sharing this data. Also, the
-\fBprinter-uri-supported\fR is the preferred means of accessing remote print
-service. The \fBbsdaddr\fR is supplied for backward compatibility with Solaris
-2.6-10 systems.
diff --git a/usr/src/man/man1m/lpfilter.1m b/usr/src/man/man1m/lpfilter.1m
deleted file mode 100644
index d4a401c5e9..0000000000
--- a/usr/src/man/man1m/lpfilter.1m
+++ /dev/null
@@ -1,496 +0,0 @@
-'\" te
-.\" Copyright (c) 2000, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH LPFILTER 1M "Apr 3, 1997"
-.SH NAME
-lpfilter \- administer filters used with the LP print service
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/lpfilter\fR \fB-f\fR \fIfilter-name\fR
- {\fB-\fR | \fB-i\fR | \fB-l\fR | \fB-x\fR | \fB-F\fR \fIpathname\fR}
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBlpfilter\fR command is used to add, change, delete, or list a filter
-used with the \fBLP\fR print service. These filters convert the content of a
-file to have a content type acceptable to a printer.
-.SH OPTIONS
-.sp
-.LP
-Arguments consist of the \fB-f\fR\fIfilter-name\fR option and exactly one of
-the arguments appearing within braces (\fB{\fR\|\fB}\fR) in the SYNOPSIS.
-.sp
-.ne 2
-.na
-\fB\fB\(mi\fR\fR
-.ad
-.RS 18n
-Adds or changes a filter as specified from standard input. The format of the
-input is specified below. If \fB-f\fR \fBall\fR is specified with the
-\fB\(mi\fR option, the specified change is made to all existing filters. This
-is not useful.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR \fIfilter-name\fR\fR
-.ad
-.RS 18n
-Specifies the \fIfilter-name\fR of the filter to be added, changed, reset,
-deleted, or listed. The filter name \fBall\fR is a special filter name defined
-below. The \fB-f\fR option is required.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-F\fR \fIpathname\fR\fR
-.ad
-.RS 18n
-Adds or changes a filter as specified by the contents of the file
-\fIpathname\fR. The format of the file's contents is specified below. If
-\fB\fR\fB-f\fR\fB all\fR is specified with the \fB-F\fR option, the specified
-change is made to all existing filters. This is not useful.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-i\fR\fR
-.ad
-.RS 18n
-Resets a filter to its default settings. Using \fB\fR\fB-f\fR\fB all\fR with
-the \fB-i\fR option restores all filters for which predefined settings are
-available to their original settings.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR\fR
-.ad
-.RS 18n
-Lists a filter description. Using \fB-f\fR \fBall\fR with the \fB-l\fR option
-produces a list of all filters.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-x\fR\fR
-.ad
-.RS 18n
-Deletes a filter. Using \fB-f\fR \fBall\fR with the \fB-x\fR option results in
-all filters being deleted.
-.RE
-
-.SH USAGE
-.SS "Adding or Changing a Filter"
-.sp
-.LP
-The filter named in the \fB-f\fR option is added to the filter table. If the
-filter already exists, its description is changed to reflect the new
-information in the input.
-.sp
-.LP
-When \fB\(mi\fR is specified, standard input supplies the filter description.
-When \fB-F\fR is specified, the file \fIpathname\fR supplies the filter
-description. One of these two options must be specified to add or change a
-filter.
-.sp
-.LP
-When an existing filter is changed with the \fB-F\fR or \fB\(mi\fR option,
-lines in the filter description that are not specified in the new information
-are not changed. When a new filter is added with this command, unspecified
-lines receive default values. See below.
-.sp
-.LP
-Filters are used to convert the content of a request from its initial type
-into a type acceptable to a printer. For a given print request, the \fBLP\fR
-print service knows the following:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The content type of the request (specified by \fBlp\fR \fB-T\fR or determined
-implicitly).
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The name of the printer (specified by \fBlp\fR \fB-d\fR).
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The printer type (specified by \fBlpadmin\fR \fB-T\fR).
-.sp
-The printer type is intended to be a printer model, but some people specify it
-with a content type even though \fBlpadmin\fR \fB-I\fR is intended for this
-purpose.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The content types acceptable to the printer (specified by \fBlpadmin\fR
-\fB-I\fR\fB)\fR.
-.sp
-The values specified by the \fBlpadmin\fR \fB-T\fR are treated as if they were
-specified by the \fB-I\fR option as well.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The modes of printing asked for by the originator of the request (specified by
-various options to \fBlp\fR).
-.RE
-.sp
-.LP
-The system uses the above information to construct a list of one or more
-filters that converts the document's content type into a content type
-acceptable to the printer and consumes all \fBlp\fR arguments that invoke
-filters (\fB-y\fR and \fB-P\fR).
-.sp
-.LP
-The contents of the file (specified by the \fB-F\fR option) and the input
-stream from standard input (specified by \fB\(mi\fR) must consist of a series
-of lines, such that each line conforms to the syntax specified by one of the
-seven lines below. All lists are comma or space separated. Each item contains a
-description.
-.sp
-.in +2
-.nf
-\fBInput types: \fR\fIcontent-type-list\fR
-\fBOutput types: \fR\fIcontent-type-list\fR
-\fBPrinter types: \fR\fIprinter-type-list\fR
-\fBPrinters: \fR\fIprinter-list\fR
-\fBFilter type: \fR\fIfilter-type\fR
-\fBCommand: \fR\fIshell-command\fR
-\fBOptions: \fR\fItemplate-list\fR
-.fi
-.in -2
-.sp
-
-.sp
-.ne 2
-.na
-\fB\fBInput\fR \fBtypes\fR\fR
-.ad
-.RS 17n
-This gives the content types that can be accepted by the filter. The default is
-\fBany\fR. The document content type must be a member of this list for the
-initial filter in the sequence.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBOutput\fR \fBtypes\fR\fR
-.ad
-.RS 17n
-This gives the content types that the filter can produce from any of the input
-(content) types. The default is \fBany\fR. The intersection of the output
-types of this list and the content types acceptable to the printer (from
-\fBlpadmin\fR \fB-I\fR and \fBlpadmin \fR\fB-T\fR) must be non-null for the
-last filter in the sequence. For adjacent filters in the sequence, the
-intersection of output types of one and the input types of the next must be
-non-null.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPrinter\fR \fBtypes\fR\fR
-.ad
-.RS 17n
-This gives the printer types for which this printer can be used. The \fBLP\fR
-print service will restrict the use of the filter to these printer types (from
-\fBlpadmin\fR \fB-T\fR). The default is \fBany\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPrinters\fR\fR
-.ad
-.RS 17n
-This gives the names of the printers for which the filter can be used. The
-\fBLP\fR print service will restrict the use of the filter to just the printers
-named. The default is \fBany\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBFilter\fR \fBtype\fR\fR
-.ad
-.RS 17n
-This marks the filter as a \fBslow\fR filter or a \fBfast\fR filter. Slow
-filters are generally those that take a long time to convert their input (that
-is, minutes or hours). They are run before the job is scheduled for a printer,
-to keep the printers from being tied up while the filter is running. If a
-listed printer is on a remote system, the filter type for it must have the
-value \fBslow\fR. That is, if a client defines a filter, it must be a slow
-filter. Fast filters are generally those that convert their input quickly (that
-is, faster than the printer can process the data), or those that must be
-connected to the printer when run. Fast filters will be given to the interface
-program to run while connected to the physical printer.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBCommand\fR\fR
-.ad
-.RS 17n
-This specifies which program to run to invoke the filter. The full program
-pathname as well as fixed options must be included in the \fIshell-command\fR;
-additional options are constructed, based on the characteristics of each print
-request and on the \fBOptions\fR field. A command must be given for each
-filter. The command must accept a data stream as standard input and produce the
-converted data stream on its standard output. This allows filter pipelines to
-be constructed to convert data not handled by a single filter.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBOptions\fR\fR
-.ad
-.RS 17n
-This is a comma-separated list of templates used by the \fBLP\fR print
-service to construct options to the filter from the characteristics of each
-print request listed in the table later. The \fB-y\fR and \fB- P\fR arguments
-to the \fBlp\fR command cause a filter sequence to be built even if there is no
-need for a conversion of content types.
-.sp
-In general, each template is of the following form:
-.sp
-\fIkeyword pattern \fR\fB=\fR \fIreplacement\fR
-.sp
-The \fIkeyword\fR names the characteristic that the template attempts to map
-into a filter-specific option; each valid \fIkeyword\fR is listed in the table
-below.
-.sp
-A \fIpattern\fR is one of the following: a literal pattern of one of the forms
-listed in the table, a single asterisk (\fB*\fR), or a regular expression. If
-\fIpattern\fR matches the value of the characteristic, the template fits and
-is used to generate a filter-specific option. The \fIreplacement\fR is what
-will be used as the option.
-.sp
-Regular expressions are the same as those found on the \fBregexp\fR(5) manual
-page. This includes the \fB\e(\fR\&...\fB\e)\fR and \fB\e\fR\fIn\fR
-constructions, which can be used to extract portions of the \fIpattern\fR for
-copying into the \fIreplacement\fR, and the \fB&\fR, which can be used to copy
-the entire \fIpattern\fR into the \fIreplacement\fR.
-.sp
-The \fIreplacement\fR can also contain a \fB*\fR; it too, is replaced with the
-entire \fIpattern\fR, just like the \fB&\fR of \fBregexp\fR(5).
-.RE
-
-.sp
-.LP
-The keywords are:
-.sp
-.in +2
-.nf
-lp Option Characteristic \fIkeyword\fR Possible \fIpatterns\fR
-
--T Content type INPUT content-type
- (input)
-
-Not applicable Content type OUTPUT content-type
- (output)
-
-not applicable Printer type TERM printer-type
-
--d Printer name PRINTER \fIprinter-name\fR
-
--f, -o cpi= Character pitch CPI integer
-
--f, -o lpi= Line pitch LPI integer
-
--f, -o length= Page length LENGTH integer
-
--f, -o width= Page width WIDTH integer
-
--P Pages to print PAGES page-list
-
--S Character set CHARSET character-set-name
- Print wheel CHARSET print-wheel-name
-
--f Form name FORM form-name
-
--y Modes MODES mode
-
--n Number of COPIES \fIinteger\fR
- copies
-.fi
-.in -2
-.sp
-
-.SS "Resetting a Filter to Defaults"
-.sp
-.LP
-If the filter named is one originally delivered with the \fBLP\fR print
-service, the \fB-i\fR option restores the original filter description.
-.SS "Deleting a Filter"
-.sp
-.LP
-The \fB-x\fR option is used to delete the filter specified in filter-name
-from the \fBLP\fR filter table.
-.SS "Listing a Filter Description"
-.sp
-.LP
-The \fB-l\fR option is used to list the description of the filter named in
-filter-name. If the command is successful, the following message is sent to
-standard output:
-.sp
-.in +2
-.nf
-\fBInput types: \fR\fIcontent-type-list\fR
-\fBOutput types: \fR\fIcontent-type-list\fR
-\fBPrinter types: \fR\fIprinter-type-list\fR
-\fBPrinters: \fR\fIprinter-list\fR
-\fBFilter type: \fR\fIfilter-type\fR
-\fBCommand: \fR\fIshell-command\fR
-\fBOptions: \fR\fItemplate-list\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-If the command fails, an error message is sent to standard error.
-.SS "Large File Behavior"
-.sp
-.LP
-See \fBlargefile\fR(5) for the description of the behavior of \fBlpfilter\fR
-when encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRPrinting with the landscape option
-.sp
-.LP
-For example, the template
-
-.sp
-.in +2
-.nf
-\fBMODES landscape = \fR\fB-l\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-shows that if a print request is submitted with the \fB-y\fR \fBlandscape\fR
-option, the filter will be given the option \fB-l\fR.
-
-.LP
-\fBExample 2 \fRSelecting the printer type
-.sp
-.LP
-As another example, the template
-
-.sp
-.in +2
-.nf
-\fBTERM * = \fR\fB-T\fR\fB *\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-shows that the filter will be given the option \fB-T\fR \fIprinter-type\fR for
-whichever \fIprinter-type\fR is associated with a print request using the
-filter.
-
-.LP
-\fBExample 3 \fRUsing the keywords table
-.sp
-.LP
-Consider the template
-
-.sp
-.in +2
-.nf
-\fBMODES prwidth\e=\e(.*\e) = \fR\fB-w\fR\fB\e1\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Suppose a user gives the command
-
-.sp
-.in +2
-.nf
-\fBlp -y prwidth=10\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-From the table above, the \fBLP\fR print service determines that the \fB-y\fR
-option is handled by a \fBMODES\fR template. The \fBMODES\fR template here
-works because the pattern prwidth=) matches the prwidth=10 given by the user.
-The replacement -w1 causes the \fBLP\fR print service to generate the filter
-option \fB-w10\fR. If necessary, the \fBLP\fR print service will construct a
-filter pipeline by concatenating several filters to handle the user's file and
-all the print options. See \fBsh\fR(1) for a description of a pipeline. If the
-print service constructs a filter pipeline, the \fBINPUT\fR and \fBOUTPUT\fR
-values used for each filter in the pipeline are the types of input and output
-for that filter, not for the entire pipeline.
-
-.SH EXIT STATUS
-.sp
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 12n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fInon-zero\fR\fR
-.ad
-.RS 12n
-An error occurred.
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBlp\fR(1), \fBsh\fR(1), \fBlpadmin\fR(1M), \fBattributes\fR(5),
-\fBlargefile\fR(5), \fBregexp\fR(5)
-.sp
-.LP
-\fI\fR
-.SH NOTES
-.sp
-.LP
-If the \fBlp\fR command specifies more than one document, the filtering chain
-is determined by the first document. Other documents may have a different
-format, but they will print correctly only if the filter chain is able to
-handle their format.
diff --git a/usr/src/man/man1m/lpforms.1m b/usr/src/man/man1m/lpforms.1m
deleted file mode 100644
index bf3377968d..0000000000
--- a/usr/src/man/man1m/lpforms.1m
+++ /dev/null
@@ -1,668 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 1997 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH LPFORMS 1M "Apr 3, 1997"
-.SH NAME
-lpforms \- administer forms used with the LP print service
-.SH SYNOPSIS
-.LP
-.nf
-\fBlpforms\fR \fB-f\fR \fIform-name\fR \fIoption\fR
-.fi
-
-.LP
-.nf
-\fBlpforms\fR \fB-f\fR \fIform-name\fR \fB-A\fR \fIalert-type\fR [\fB-P\fR \fIpaper-name\fR [\fB-d\fR]]
- [\fB-Q\fR \fIrequests\fR] [\fB-W\fR \fIminutes\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBlpforms\fR command administers the use of preprinted forms, such as
-company letterhead paper, with the LP print service. A form is specified by its
-\fIform-name\fR. Users may specify a form when submitting a print request (see
-\fBlp\fR(1)). The argument \fBall\fR can be used instead of \fIform-name\fR
-with either of the command lines shown above. The first command line allows
-the administrator to add, change, and delete forms, to list the attributes of
-an existing form, and to allow and deny users access to particular forms. The
-second command line is used to establish the method by which the administrator
-is alerted that the form \fIform-name\fR must be mounted on a printer.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-f\fR \fIform-name\fR\fR
-.ad
-.RS 16n
-Specify a form.
-.RE
-
-.sp
-.LP
-The first form of \fBlpforms\fR requires that one of the following
-\fIoption\fRs (\fB\(mi\fR, \fB-l\fR, \fB-F\fR, \fB-x\fR) must be used:
-.sp
-.ne 2
-.na
-\fB\fB-F\fR \fIpathname\fR\fR
-.ad
-.RS 15n
-To add or change form \fIform-name\fR, as specified by the information in
-\fIpathname\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\(mi\fR\fR
-.ad
-.RS 15n
-To add or change form \fIform-name\fR, as specified by the information from
-standard input.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR\fR
-.ad
-.RS 15n
-To list the attributes of form \fIform-name\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-x\fR\fR
-.ad
-.RS 15n
-To delete form \fIform-name\fR (this option must be used separately; it may not
-be used with any other option).
-.RE
-
-.sp
-.LP
-The second form of the \fBlpforms\fR command requires the \fB-A\fR
-\fIalert-type\fR option. The other options are optional.
-.sp
-.ne 2
-.na
-\fB\fB-A\fR \fIalert-type\fR\fR
-.ad
-.RS 24n
-Defines an alert to mount the form when there are queued jobs which need it.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-P\fR \fIpaper-name\fR [ \fB-d\fR ]\fR
-.ad
-.RS 24n
-Specify the paper name when creating the form. If \fB-d\fR is specified, this
-paper is the default.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-Q\fR \fIrequests\fR\fR
-.ad
-.RS 24n
-An alert will be sent when a certain number of print requests that need the
-form are waiting.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-W\fR \fIminutes\fR\fR
-.ad
-.RS 24n
-An alert will be sent at intervals specified by minutes.
-.RE
-
-.SH USAGE
-.SS "Adding or Changing a Form"
-.sp
-.LP
-The \fB-F\fR \fIpathname\fR option is used to add a new form, \fIform-name\fR,
-to the LP print service, or to change the attributes of an existing form. The
-form description is taken from \fIpathname\fR if the \fB-F\fR option is given,
-or from the standard input if the \fB\(mi\fR option is used. One of these two
-options must be used to define or change a form.
-.sp
-.LP
-\fIpathname\fR is the path name of a file that contains all or any subset of
-the following information about the form.
-.sp
-.in +2
-.nf
-\fBPage length\fR: \fIscaled-decimal-number1\fR
-\fBPage width\fR: \fIscaled-decimal-number2\fR
-\fBNumber of pages\fR: \fIinteger\fR
-\fBLine pitch\fR: \fIscaled-decimal-number3\fR
-\fBCharacter pitch\fR: \fIscaled-decimal-number4\fR
-\fBCharacter set choice\fR: \fIcharacter-set/print-wheel\fR [\fBmandatory\fR]
-\fBRibbon color\fR: \fIribbon-color\fR
-\fBComment:\fR
-\fIcomment\fR
-\fBAlignment pattern\fR: [\fIcontent-type\fR]
-\fIcontent\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The term ``scaled-decimal-number'' refers to a non-negative number used to
-indicate a unit of size. The type of unit is shown by a ``trailing'' letter
-attached to the number. Three types of scaled decimal numbers can be used with
-the LP print service: numbers that show sizes in centimeters (marked with a
-trailing \fBc\fR); numbers that show sizes in inches (marked with a trailing
-\fBi\fR); and numbers that show sizes in units appropriate to use (without a
-trailing letter); lines, characters, lines per inch, or characters per inch.
-.sp
-.LP
-Except for the last two lines, the above lines may appear in any order. The
-\fBComment:\fR and \fIcomment\fR items must appear in consecutive order but may
-appear before the other items, and the \fBAlignment pattern:\fR and the
-\fIcontent\fR items must appear in consecutive order at the end of the file.
-Also, the \fIcomment\fR item may not contain a line that begins with any of the
-key phrases above, unless the key phrase is preceded with a \fB>\fR sign. Any
-leading > sign found in the \fIcomment\fR will be removed when the comment is
-displayed. There is no case distinction among the key phrases.
-.sp
-.LP
-When this command is issued, the form specified by \fIform-name\fR is added to
-the list of forms. If the form already exists, its description is changed to
-reflect the new information. Once added, a form is available for use in a print
-request, except where access to the form has been restricted, as described
-under the \fB-u\fR option. A form may also be allowed to be used on certain
-printers only.
-.sp
-.LP
-A description of each form attribute is below:
-.sp
-.ne 2
-.na
-\fB\fBPage length\fR and \fBPage Width\fR\fR
-.ad
-.sp .6
-.RS 4n
-Before printing the content of a print request needing this form, the generic
-interface program provided with the LP print service will initialize the
-physical printer to handle pages \fIscaled-decimal-number1\fR long, and
-\fIscaled-decimal-number2\fR wide using the printer type as a key into the
-\fBterminfo\fR(4) database. The page length and page width will also be passed,
-if possible, to each filter used in a request needing this form.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBNumber of pages\fR\fR
-.ad
-.sp .6
-.RS 4n
-Each time the alignment pattern is printed, the LP print service will attempt
-to truncate the \fIcontent\fR to a single form by, if possible, passing to each
-filter the page subset of 1-\fIinteger\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBLine pitch\fR and \fBCharacter pitch\fR\fR
-.ad
-.sp .6
-.RS 4n
-Before printing the content of a print request needing this form, the interface
-program provided with the LP print service will initialize the physical
-printer to handle these pitches, using the printer type as a key into the
-\fBterminfo\fR(4) database. Also, the pitches will be passed, if possible, to
-each filter used in a request needing this form. \fIscaled-decimal-number3\fR
-is in lines-per-centimeter if a \fBc\fR is appended, and lines-per-inch
-otherwise; similarly, \fIscaled-decimal-number4\fR is in
-characters-per-centimeter if a \fBc\fR is appended, and characters-per-inch
-otherwise. The character pitch can also be given as \fBelite\fR (12
-characters-per-inch), \fBpica\fR (10 characters-per-inch), or \fBcompressed\fR
-(as many characters-per-inch as possible).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBCharacter set choice\fR\fR
-.ad
-.sp .6
-.RS 4n
-When the LP print service alerts an administrator to mount this form, it will
-also mention that the print wheel \fIprint-wheel\fR should be used on those
-printers that take print wheels. If printing with this form is to be done on a
-printer that has selectable or loadable character sets instead of print wheels,
-the interface programs provided with the LP print service will automatically
-select or load the correct character set. If \fBmandatory\fR is appended, a
-user is not allowed to select a different character set for use with the form;
-otherwise, the character set or print wheel named is a suggestion and a default
-only.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBRibbon color\fR\fR
-.ad
-.sp .6
-.RS 4n
-When the LP print service alerts an administrator to mount this form, it will
-also mention that the color of the ribbon should be \fIribbon-color\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBComment\fR\fR
-.ad
-.sp .6
-.RS 4n
-The LP print service will display the \fIcomment\fR unaltered when a user asks
-about this form (see \fBlpstat\fR(1)).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBAlignment pattern\fR\fR
-.ad
-.sp .6
-.RS 4n
-When mounting this form, an administrator can ask for the \fIcontent\fR to be
-printed repeatedly, as an aid in correctly positioning the preprinted form. The
-optional \fIcontent-type\fR defines the type of printer for which \fIcontent\fR
-had been generated. If \fIcontent-type\fR is not given, \fBsimple\fR is
-assumed. Note that the \fIcontent\fR is stored as given, and will be readable
-only by the user \fBlp\fR.
-.RE
-
-.sp
-.LP
-When an existing form is changed with this command, items missing in the new
-information are left as they were. When a new form is added with this command,
-missing items will get the following defaults:
-.sp
-.in +2
-.nf
-Page Length: \fB66\fR
-Page Width: \fB80\fR
-Number of Pages: \fB1\fR
-Line Pitch: \fB6\fR
-Character Pitch: \fB10\fR
-Character Set Choice: \fBany\fR
-Ribbon Color: \fBany\fR
-.fi
-.in -2
-.sp
-
-.SS "Deleting a Form"
-.sp
-.LP
-LP print service" The \fB-x\fR option is used to delete the form
-\fIform-name\fR from the LP print service.
-.SS "Listing Form Attributes"
-.sp
-.LP
-The \fB-l\fR option is used to list the attributes of the existing form
-\fIform-name\fR. The attributes listed are those described under \fBAdding and
-Changing a Form,\fR above. Because of the potentially sensitive nature of the
-alignment pattern, only the administrator can examine the form with this
-command. Other people may use the \fBlpstat\fR(1) command to examine the
-non-sensitive part of the form description.
-.SS "Allowing and Denying Access to a Form"
-.sp
-.LP
-The \fB-u\fR option, followed by the argument \fBallow:\fR\fIlogin-ID-list\fR
-or \fB\fR\fB-u\fR \fBdeny:\fR\fIlogin-ID-list\fR lets you determine which users
-will be allowed to specify a particular form with a print request. This option
-can be used with the \fB-F\fR or \fB\(mi\fR option, each of which is described
-above under \fBAdding or Changing a Form\fR.
-.sp
-.LP
-The \fIlogin-ID-list\fR argument may include any or all of the following
-constructs:
-.sp
-.ne 2
-.na
-\fB\fIlogin-ID\fR\fR
-.ad
-.RS 24n
-A user on any system
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIsystem_name\fR\fB!\fR\fIlogin-ID\fR\fR
-.ad
-.RS 24n
-A user on system \fIsystem_name\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIsystem_name\fR\fB!all\fR\fR
-.ad
-.RS 24n
-All users on system \fIsystem_name\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBall!\fR\fIlogin-ID\fR\fR
-.ad
-.RS 24n
-A user on all systems
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBall\fR\fR
-.ad
-.RS 24n
-All users on all systems
-.RE
-
-.sp
-.LP
-The LP print service keeps two lists of users for each form: an ``allow-list''
-of people allowed to use the form, and a ``deny-list'' of people that may not
-use the form. With the \fB\fR\fB-u\fR \fBallow\fR option, the users listed are
-added to the allow-list and removed from the deny-list. With the \fB\fR\fB-u\fR
-\fBdeny\fR option, the users listed are added to the deny-list and removed
-from the allow-list. (Both forms of the \fB-u\fR option can be run together
-with the \fB-F\fR or the \fB\(mi\fR option.)
-.sp
-.LP
-If the allow-list is not empty, only the users in the list are allowed access
-to the form, regardless of the content of the deny-list. If the allow-list is
-empty but the deny-list is not, the users in the deny-list may not use the
-form, (but all others may use it). All users can be denied access to a form by
-specifying \fB\fR\fB-f\fR \fBdeny:all\fR. All users can be allowed access to a
-form by specifying \fB\fR\fB-f\fR \fBallow:all\fR. (This is the default.)
-.SS "Setting an Alert to Mount a Form"
-.sp
-.LP
-The \fB\fR\fB-f\fR \fIform-name\fR option is used with the \fB\fR\fB-A\fR
-\fIalert-type\fR option to define an alert to mount the form when there are
-queued jobs which need it. If this option is not used to arrange alerting for a
-form, no alert will be sent for that form.
-.sp
-.LP
-The method by which the alert is sent depends on the value of the
-\fIalert-type\fR argument specified with the \fB-A\fR option. The
-\fIalert-types\fR are:
-.sp
-.ne 2
-.na
-\fB\fBmail\fR\fR
-.ad
-.RS 17n
-Send the alert message using the \fBmail\fR command to the administrator.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBwrite\fR\fR
-.ad
-.RS 17n
-Write the message, using the \fBwrite\fR command, to the terminal on which the
-administrator is logged in. If the administrator is logged in on several
-terminals, one is arbitrarily chosen.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBquiet\fR\fR
-.ad
-.RS 17n
-Do not send messages for the current condition. An administrator can use this
-option to temporarily stop receiving further messages about a known problem.
-Once the form \fIform-name\fR has been mounted and subsequently unmounted,
-messages will again be sent when the number of print requests reaches the
-threshold specified by the \fB-Q\fR option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBshowfault\fR\fR
-.ad
-.RS 17n
-Attempt to execute a form alert handler on each system that has a print job for
-that form in the queue. The fault handler is \fB/etc/lp/alerts/form\fR. It is
-invoked with three parameters: \fIform_name\fR, \fBdate\fR, \fIfile_name\fR.
-\fIfile_name\fR is the name of a file containing the form alert message.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnone\fR\fR
-.ad
-.RS 17n
-Do not send messages until the \fB-A\fR option is given again with a different
-\fIalert-type\fR (other than \fBquiet\fR).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIshell-command\fR\fR
-.ad
-.RS 17n
-Run the \fIshell-command\fR each time the alert needs to be sent. The shell
-command should expect the message in standard input. If there are blank spaces
-embedded in the command, enclose the command in quotes. Note that the
-\fBmail\fR and \fBwrite\fR values for this option are equivalent to the values
-\fBmail\fR \fIlogin-ID\fR and \fBwrite\fR \fIlogin-ID\fR respectively, where
-\fIlogin-ID\fR is the current name for the administrator. This will be the
-login name of the person submitting this command unless he or she has used the
-\fBsu\fR command to change to another login-ID. If the \fBsu\fR command has
-been used to change the user ID, then the \fIuser-name\fR for the new ID is
-used.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBlist\fR\fR
-.ad
-.RS 17n
-Display the type of the alert for the form on standard output. No change is
-made to the alert.
-.RE
-
-.sp
-.LP
-The message sent appears as follows:
-.sp
-.in +2
-.nf
-The form \fIform-name\fR needs to be mounted
-on the printer(s):\fIprinter\fR (\fIinteger1\fR \fBrequests)\fR.
-\fIinteger2\fR print requests await this form.
-Use the \fIribbon-color\fR ribbon.
-Use the \fIprint-wheel\fR print wheel, if appropriate.
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The printers listed are those that the administrator has specified as
-candidates for this form. The number \fIinteger1\fR listed next to each printer
-is the number of requests eligible for the printer. The number \fIinteger2\fR
-shown after the list of printers is the total number of requests awaiting the
-form. It will be less than the sum of the other numbers if some requests can be
-handled by more than one printer. The \fIribbon-color\fR and \fIprint-wheel\fR
-are those specified in the form description. The last line in the message is
-always sent, even if none of the printers listed use print wheels, because the
-administrator may choose to mount the form on a printer that does use a print
-wheel.
-.sp
-.LP
-Where any color ribbon or any print wheel can be used, the statements above
-will read:
-.sp
-.in +2
-.nf
-\fBUse any ribbon.\fR
-\fBUse any print-wheel.\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-If \fIform-name\fR is \fBany\fR, the \fIalert-type\fR defined in this command
-applies to any form for which an alert has not yet been defined. If
-\fIform-name\fR is \fBall\fR, the \fIalert-type\fR defined in this command
-applies to all forms.
-.sp
-.LP
-If the \fB-W\fR \fIminutes\fR option is not given, the default procedure is
-that only one message will be sent per need to mount the form. Not specifying
-the \fB-W\fR option is equivalent to specifying \fB\fR\fB-W\fR \fBonce\fR or
-\fB-W\fR \fB0\fR. If \fIminutes\fR is a number greater than \fB0\fR, an alert
-will be sent at intervals specified by \fIminutes\fR.
-.sp
-.LP
-If the \fB-Q\fR \fIrequests\fR option is also given, the alert will be sent
-when a certain number (specified by the argument \fIrequests\fR) of print
-requests that need the form are waiting. If the \fB-Q\fR option is not given,
-or the value of \fIrequests\fR is \fB1\fR or \fBany\fR (which are both the
-default), a message is sent as soon as anyone submits a print request for the
-form when it is not mounted.
-.SS "Listing the Current Alert"
-.sp
-.LP
-The \fB-f\fR option, followed by the \fB-A\fR option and the argument
-\fBlist\fR is used to list the \fIalert-type\fR that has been defined for the
-specified form \fIform-name\fR. No change is made to the alert. If
-\fIform-name\fR is recognized by the LP print service, one of the following
-lines is sent to the standard output, depending on the type of alert for the
-form.
-.sp
-.ne 2
-.na
-\fB\(mi\fR
-.ad
-.RS 8n
-\fBWhen\fR \fIrequests\fR \fBrequests are queued:\fR \fBalert
-with\fR\fIshell-command\fR \fBevery\fR \fIminutes\fR \fBminutes\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\(mi\fR
-.ad
-.RS 8n
-\fBWhen\fR \fIrequests\fR \fBrequests are queued:\fR \fBwrite to\fR
-\fIuser-name\fR \fBevery\fR \fIminutes\fR \fBminutes\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\(mi\fR
-.ad
-.RS 8n
-\fBWhen\fR \fIrequests\fR \fBrequests are queued:\fR \fBmail to\fR
-\fIuser-name\fR \fBevery\fR \fIminutes\fR \fBminutes\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\(mi\fR
-.ad
-.RS 8n
-\fBNo alert\fR
-.RE
-
-.sp
-.LP
-The phrase \fBevery\fR \fIminutes\fR \fBminutes\fR is replaced with \fBonce\fR
-if \fIminutes\fR (\fB-W\fR\fI\fR\fIminutes\fR) is 0.
-.SS "Terminating an Active Alert"
-.sp
-.LP
-The \fB-A\fR \fBquiet\fR option is used to stop messages for the current
-condition. An administrator can use this option to temporarily stop receiving
-further messages about a known problem. Once the form has been mounted and then
-unmounted, messages will again be sent when the number of print requests
-reaches the threshold \fIrequests\fR.
-.SS "Removing an Alert Definition"
-.sp
-.LP
-No messages will be sent after the \fB-A\fR \fBnone\fR option is used until the
-\fB-A\fR option is given again with a different \fIalert-type\fR. This can be
-used to permanently stop further messages from being sent as any existing
-alert definition for the form will be removed.
-.SS "Large File Behavior"
-.sp
-.LP
-See \fBlargefile\fR(5) for the description of the behavior of \fBlpforms\fR
-when encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
-.SH EXIT STATUS
-.sp
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 12n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fBnon-zero\fR
-.ad
-.RS 12n
-An error occurred.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/lp/alerts/form\fR\fR
-.ad
-.RS 23n
-Fault handler for \fBlpform\fR.
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBlp\fR(1), \fBlpstat\fR(1), \fBlpadmin\fR(1M), \fBterminfo\fR(4),
-\fBattributes\fR(5), \fBlargefile\fR(5)
-.sp
-.LP
-\fI\fR
diff --git a/usr/src/man/man1m/lpget.1m b/usr/src/man/man1m/lpget.1m
deleted file mode 100644
index 19e2eeb388..0000000000
--- a/usr/src/man/man1m/lpget.1m
+++ /dev/null
@@ -1,180 +0,0 @@
-'\" te
-.\" Copyright (C) 2003, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH LPGET 1M "Feb 25, 2017"
-.SH NAME
-lpget \- get printing configuration
-.SH SYNOPSIS
-.LP
-.nf
-\fBlpget\fR [\fB-k\fR \fIkey\fR] [\fIdestination\fR... | list]
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBlpget\fR utility reads printing configuration information from the
-configuration databases in \fB$HOME/.printers\fR, \fB/etc/printers.conf\fR,
-and \fBprinters.conf.byname\fR. This
-information, called a \fIconfiguration report\fR, is displayed to the standard
-output. See \fBprinters\fR(4) and \fBprinters.conf\fR(4) for information about
-the printer configuration databases.
-.sp
-.LP
-\fBlpget\fR displays a configuration report for all keys for the specified
-destination or destinations by default. Use the \fB-k\fR option to display a
-configuration report for specific keys. Use the \fBlist\fR operand to display a
-configuration report for all configured destinations.
-.SH OPTIONS
-.LP
-The following option is supported:
-.sp
-.ne 2
-.na
-\fB\fB-k\fR \fIkey\fR\fR
-.ad
-.RS 10n
-Displays a configuration report for \fIkey\fR. See \fBprinters.conf\fR(4) for
-information about specifying \fIkey\fR.
-.RE
-
-.SH OPERANDS
-.LP
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fB\fIdestination\fR\fR
-.ad
-.RS 15n
-Displays a configuration report for \fIdestination\fR. Destination can be
-either a printer of a class of printers. See \fBlpadmin\fR(1M). Specify
-\fIdestination\fR using atomic or POSIX-style
-(\fIserver\fR\fB:\fR\fIdestination\fR) names. See \fBprinters.conf \fR(4) for
-information regarding the naming conventions for atomic names and
-\fBstandards\fR(5) for information concerning POSIX.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBlist\fR\fR
-.ad
-.RS 15n
-Displays a configuration report for all configured destinations.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRDisplaying a Configuration Report for the \fBbsdaddr\fR Key
-.sp
-.LP
-The following example displays a configuration report for the \fBbsdaddr\fR
-key for printer \fBcatalpa\fR.
-
-.sp
-.in +2
-.nf
-example% \fBlpget -k bsdaddr catalpa\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRA Configuration Report for all Keys for all Configured
-Destinations
-.sp
-.LP
-The following example displays a configuration report for all keys for all
-configured destinations.
-
-.sp
-.in +2
-.nf
-example% \fBlpget list\fR
-.fi
-.in -2
-.sp
-
-.SH EXIT STATUS
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 12n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fBnon-zero\fR
-.ad
-.RS 12n
-An error occurred.
-.RE
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/etc/printers.conf\fR\fR
-.ad
-.RS 24n
-System printer configuration database.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB$HOME/.printers\fR \fR
-.ad
-.RS 24n
-User-configurable printer database.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBprinters.conf.byname\fR\fR
-.ad
-.RS 24n
-\fBNIS\fR version of \fB/etc/printers.conf\fR.
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Stability Level Stable
-.TE
-
-.SH SEE ALSO
-.LP
-\fBldap\fR(1), \fBlp\fR(1), \fBlpc\fR(1B), \fBlpq\fR(1B), \fBlpr\fR(1B),
-\fBlpstat\fR(1), \fBlpadmin\fR(1M), \fBlpset\fR(1M), \fBprinters\fR(4),
-\fBprinters.conf\fR(4), \fBattributes\fR(5), \fBstandards\fR(5)
-.sp
-.LP
-\fI\fR
-.SH NOTES
-.LP
-Be mindful of the following if the LDAP database is used as the name service.
-If the \fBldapclient\fR(1M) server is a replica LDAP server, LDAP printer
-database updates may not appear immediately, as the replica server may not not
-have been updated by the master server and can be out of sync. For example, a
-printer that you deleted by using \fBlpset\fR(1M) may still appear in the
-printer list you display with \fBlpget\fR until the replica is updated from the
-master. Replica servers vary as to how often they are updated from the master.
-Refer to the \fI\fR for more information on LDAP replication.
diff --git a/usr/src/man/man1m/lpmove.1m b/usr/src/man/man1m/lpmove.1m
deleted file mode 100644
index 797774a118..0000000000
--- a/usr/src/man/man1m/lpmove.1m
+++ /dev/null
@@ -1,172 +0,0 @@
-'\" te
-.\" Copyright (c) 2006 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH LPMOVE 1M "Feb 25, 2017"
-.SH NAME
-lpmove \- move print requests
-.SH SYNOPSIS
-.LP
-.nf
-\fBlpmove\fR [\fIrequest-ID\fR] \fIdestination\fR
-.fi
-
-.LP
-.nf
-\fBlpmove\fR \fIsource\fR \fIdestination\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBlpmove\fR command moves print requests queued by \fBlp\fR(1) or
-\fBlpr\fR(1B) between destinations.
-.sp
-.LP
-The first form of \fBlpmove\fR moves specific print requests (\fIrequest-ID\fR)
-to a specific \fIdestination\fR.
-.sp
-.LP
-The second form of the \fBlpmove\fR command moves all print requests from one
-destination (\fIdestination1\fR) to another (\fIdestination2\fR). This form of
-\fBlpmove\fR also rejects new print requests for \fIdestination1\fR.
-.sp
-.LP
-\fBlpmove\fR moves individual requests or entire queues only within an instance
-of a print service, not between a local and a remote queues or local queues on
-different instances of a print service. Requests can only be moved if the print
-service or protocol supports it. The LP print server and IPP print protocol
-both support moving requests between queues. The BSD print protocol does not.
-.sp
-.LP
-When moving requests, \fBlpmove\fR does not check the acceptance status of the
-destination to which the print requests are being moved (see \fBaccept\fR(1M)).
-\fBlpmove\fR does not move requests that have options (for example, content
-type or requiring a special form) that cannot be handled by the new
-destination.
-.SH OPERANDS
-.LP
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fB\fIrequest-ID\fR\fR
-.ad
-.RS 15n
-The specific print request to be moved. Specify \fIrequest-ID\fR as the
-identifier associated with a print request as reported by \fBlpstat\fR. See
-\fBlpstat\fR(1).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIdestination\fR\fR
-.ad
-.RS 15n
-The name of the printer or class of printers (see \fBlpadmin\fR(1M)) to which
-\fBlpmove\fR moves a \fIspecified\fR print request. Specify \fIdestination\fR
-using atomic, URI-style (\fIscheme\fR://\fIendpoint\fR), POSIX-style
-(\fIserver\fR\fB:\fR\fIdestination\fR) syntax.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIsource\fR\fR
-.ad
-.RS 15n
-The name of the destination from which \fBlpmove\fR moves \fIall\fR print
-requests. Specify \fIdestination\fR using atomic, URI-style
-(\fIscheme\fR\fB://\fR\fIendpoint\fR), POSIX-style
-(\fIserver\fR\fB:\fR\fIdestination\fR) syntax.
-.RE
-
-.sp
-.LP
-See \fBprinters.conf\fR(4) for information regarding the naming conventions for
-atomic names and \fBstandards\fR(5) for information regarding POSIX.
-.SH EXIT STATUS
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 12n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fBnon-zero\fR
-.ad
-.RS 12n
-An error occurred.
-.RE
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/etc/printers.conf\fR\fR
-.ad
-.RS 24n
-System printer configuration database
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB$HOME/.printers\fR\fR
-.ad
-.RS 24n
-User-configurable printer database
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBou=printers\fR\fR
-.ad
-.RS 24n
-LDAP version of \fB/etc/printers.conf\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBprinters.conf.byname\fR\fR
-.ad
-.RS 24n
-\fBNIS\fR version of \fB/etc/printers.conf\fR
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Obsolete
-.TE
-
-.SH SEE ALSO
-.LP
-\fBlp\fR(1), \fBlpr\fR(1B), \fBlpstat\fR(1), \fBaccept\fR(1M),
-\fBlpadmin\fR(1M), \fBlpsched\fR(1M), \fBprinters.conf\fR(4),
-\fBattributes\fR(5), \fBstandards\fR(5)
-.sp
-.LP
-\fISystem Administration Guide: Solaris Printing\fR
-.SH NOTES
-.LP
-When IPP is in use, the user is prompted for a passphrase if the remote print
-service is configured to require authentication.
diff --git a/usr/src/man/man1m/lpsched.1m b/usr/src/man/man1m/lpsched.1m
deleted file mode 100644
index ad9a1c8072..0000000000
--- a/usr/src/man/man1m/lpsched.1m
+++ /dev/null
@@ -1,136 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 2004 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH LPSCHED 1M "Sep 3, 2004"
-.SH NAME
-lpsched \- start the LP print service
-.SH SYNOPSIS
-.LP
-.nf
-\fBlpsched\fR [\fB-f\fR \fInum_filters\fR] [\fB-n\fR \fInum_notifiers\fR] [\fB-p\fR \fIfd_limit\fR]
- [\fB-r\fR \fIreserved_fds\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBlpsched\fR command starts or restarts the \fBLP\fR print service.
-.sp
-.LP
-The \fBlpshut\fR command stops the \fBLP\fR print service. Printers that are
-restarted using \fBlpsched\fR reprint (in their entirety) print requests that
-were stopped by \fBlpshut\fR. See \fBlpshut\fR(1M).
-.sp
-.LP
-It is recommended that you start and stop the LP print service using
-\fBsvcadm\fR(1M). See \fBNOTES\fR.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-f\fR\fI num_filters\fR\fR
-.ad
-.RS 20n
-Specifies the number of concurrent slow filters that may be run on a print
-server. A default value of \fB1\fR is used if none is specified. Depending on
-server configuration, a value of \fB1\fR may cause printers to remain idle
-while there are jobs queued to them.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR\fI num_notifiers\fR\fR
-.ad
-.RS 20n
-Specifies the number of concurrent notification processes that can run on a
-print server. A default value of \fB1\fR is used when none is specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR\fI fd_limit\fR\fR
-.ad
-.RS 20n
-Specifies the file descriptor resource limit for the \fBlpsched\fR process. A
-default value of \fB4096\fR is used if none is specified. On extremely large
-and active print servers, it may be necessary to increase this value.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-r\fR\fI reserved_fds\fR\fR
-.ad
-.RS 20n
-Specifies the number of file descriptors that the scheduler reserves for
-internal communications under heavy load. A default value of \fB2\fR is used
-when none is specified. It should not be necessary to modify this value unless
-instructed to do so when troubleshooting problems under high load.
-.RE
-
-.SH EXIT STATUS
-.sp
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 12n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fBnon-zero\fR
-.ad
-.RS 12n
-An error occurred.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/var/spool/lp/*\fR\fR
-.ad
-.RS 19n
-\fBLP\fR print queue.
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBlp\fR(1), \fBsvcs\fR(1), \fBlpstat\fR(1), \fBlpadmin\fR(1M),
-\fBlpmove\fR(1M), \fBlpshut\fR(1M), \fBsvcadm\fR(1M), \fBattributes\fR(5),
-\fBsmf\fR(5)
-.sp
-.LP
-\fI\fR
-.SH NOTES
-.sp
-.LP
-The \fBlpsched\fR service is managed by the service management facility,
-\fBsmf\fR(5), under the service identifier:
-.sp
-.in +2
-.nf
-svc:/application/print/server
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Administrative actions on this service, such as enabling, disabling, or
-requesting restart, can be performed using \fBsvcadm\fR(1M). The service's
-status can be queried using the \fBsvcs\fR(1) command.
diff --git a/usr/src/man/man1m/lpset.1m b/usr/src/man/man1m/lpset.1m
deleted file mode 100644
index a25eed3fc5..0000000000
--- a/usr/src/man/man1m/lpset.1m
+++ /dev/null
@@ -1,231 +0,0 @@
-'\" te
-.\" Copyright (C) 2003, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH LPSET 1M "November 22, 2021"
-.SH NAME
-lpset \- set printing configuration in /etc/printers.conf or other supported
-databases
-.SH SYNOPSIS
-.nf
-\fBlpset\fR [\fB-n\fR system | fnsldap] [\fB-x\fR]
- [ [\fB-D\fR binddn] [\fB-w\fR passwd] [\fB-h\fR ldaphost]]
- [\fB-a\fR \fIkey=value\fR] [\fB-d\fR \fIkey\fR] \fIdestination\fR
-.fi
-
-.SH DESCRIPTION
-The \fBlpset\fR utility sets printing configuration information in the system
-configuration databases. Use \fBlpset\fR to create and update printing
-configuration in \fB/etc/printers.conf\fR.
-See \fBnsswitch.conf\fR(4) and \fBprinters.conf\fR(4).
-.sp
-.LP
-Only a superuser or a member of Group 14 may execute \fBlpset\fR.
-.SH OPTIONS
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-n\fR \fBsystem\fR|\fBldap\fR\fR
-.ad
-.RS 26n
-Create or update the configuration information for the \fIdestination\fR entry
-in \fB/etc/printers.conf\fR or LDAP printer contexts. \fBsystem\fR specifies
-that the information is created or updated in \fB/etc/printers.conf\fR.
-\fBldap\fR specifies that the information is written to an LDAP server.
-.sp
-If \fB-n\fR is not specified, \fBsystem\fR is the default.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-x\fR\fR
-.ad
-.RS 26n
-Remove all configuration for the \fIdestination\fR entry from the database
-specified by the \fB-n\fR option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-a\fR \fIkey\fR\fB=\fR\fIvalue\fR\fR
-.ad
-.RS 26n
-Configure the specified \fIkey\fR\fB=\fR\fIvalue\fR pair for the
-\fIdestination\fR. See \fBprinters.conf\fR(4) for information regarding the
-specification of \fIkey\fR\fB=\fR\fIvalue\fR pairs.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-d\fR \fIkey\fR\fR
-.ad
-.RS 26n
-Delete the configuration option specified by \fIkey\fR for the
-\fIdestination\fR entry. See \fBprinters.conf\fR(4) for information regarding
-the specification of \fIkey\fR and \fIkey\fR\fB=\fR\fIvalue\fR pairs.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-D\fR \fBbinddn\fR\fR
-.ad
-.RS 26n
-Use the distinguished name (DN) \fBbinddn\fR to bind to the LDAP directory
-server.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-w\fR \fBpasswd\fR\fR
-.ad
-.RS 26n
-Use \fBpasswd\fR as the password for authentication to the LDAP directory
-server.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-h\fR \fBldaphost\fR\fR
-.ad
-.RS 26n
-Specify an alternate host on which the LDAP server is running. This option is
-only used when \fBldap\fR is specified as the naming service. If this option is
-not specified, the default is the current host system.
-.RE
-
-.SH OPERANDS
-The following operand is supported:
-.sp
-.ne 2
-.na
-\fB\fIdestination\fR\fR
-.ad
-.RS 15n
-Specifies the entry in \fB/etc/printers.conf\fR or
-LDAP, in which to create or modify information. \fIdestination\fR names a
-printer of class of printers. See \fBlpadmin\fR(1M). Each entry in
-\fBprinters.conf\fR describes one destination. Specify \fIdestination\fR using
-atomic names. POSIX-style destination names are not acceptable. See
-\fBprinters.conf\fR(4) for information regarding the naming conventions for
-atomic names and \fBstandards\fR(5) for information regarding POSIX.
-.RE
-
-.SH EXAMPLES
-\fBExample 1 \fRRemoving All Existing Printing Configuration Information
-.sp
-.LP
-The following example removes all existing printing configuration information
-for destination \fBdogs\fR from \fB/etc/printers.conf\fR:
-
-.sp
-.in +2
-.nf
-example% \fBlpset -x dogs\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRSetting a \fBkey=value\fR Pair in LDAP
-.sp
-.in +2
-.nf
-example% \fBlpset -n ldap -h ldapl.example.com -D "cn=Directory Manager" \e
- -w passwd -a key1=value1 printer1\fR
-.fi
-.in -2
-.sp
-
-.SH EXIT STATUS
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 12n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fBnon-zero\fR
-.ad
-.RS 12n
-An error occurred.
-.RE
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/etc/printers.conf\fR\fR
-.ad
-.RS 26n
-System configuration database.
-.RE
-
-.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Stability Level Stable
-.TE
-
-.SH SEE ALSO
-\fBldap\fR(1), \fBlp\fR(1), \fBlpc\fR(1B), \fBlpq\fR(1B), \fBlpr\fR(1B),
-\fBlpstat\fR(1), \fBldapclient\fR(1M), \fBlpadmin\fR(1M), \fBlpget\fR(1M),
-\fBnsswitch.conf\fR(4), \fBprinters\fR(4), \fBprinters.conf\fR(4),
-\fBattributes\fR(5), \fBstandards\fR(5)
-.sp
-.LP
-\fI\fR
-.SH NOTES
-If the \fBldap\fR database is used, the printer administrator should be mindful
-of the following when updating printer information.
-.RS +4
-.TP
-1.
-Because the domain information for the printer being updated is extracted
-from the \fBldapclient\fR(1M) configuration, the LDAP server being updated must
-host the same domain that is used by the current \fBldapclient\fR(1M) server.
-.RE
-.RS +4
-.TP
-2.
-If the LDAP server being updated is a replica LDAP server, the updates will
-be referred to the master LDAP server and completed there. The updates might be
-out of sync and not appear immediately, as the replica server may not have
-been updated by the master server. For example, a printer that you deleted by
-using \fBlpset\fR may still appear in the printer list you display with
-\fBlpget\fR until the replica is updated from the master. Replica servers vary
-as to how often they are updated from the master. See \fISystem Administration
-Guide: Solaris Printing\fR for information on LDAP server replication.
-.RE
-.RS +4
-.TP
-3.
-Although users can use the LDAP command line utilities \fBldapadd\fR(1) and
-\fBldapmodify\fR(1) to update printer entries in the directory, the preferred
-method is to use \fBlpset\fR. Otherwise, if the \fBldapadd\fR and
-\fBldapmodify\fR utilities are used, the administrator must ensure that the
-\fBprinter-name\fR attribute value is unique within the \fBou=printers\fR
-container on the LDAP server. If the value is not unique, the result of
-modifications done using \fBlpset\fR or the Solaris Print Manager,
-\fBprintmgr\fR(1M) may be unpredictable.
-.RE
diff --git a/usr/src/man/man1m/lpshut.1m b/usr/src/man/man1m/lpshut.1m
deleted file mode 100644
index 30e58adfae..0000000000
--- a/usr/src/man/man1m/lpshut.1m
+++ /dev/null
@@ -1,62 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 1998 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH LPSHUT 1M "Jan 8, 1998"
-.SH NAME
-lpshut \- stop the LP print service
-.SH SYNOPSIS
-.LP
-.nf
-\fBlpshut\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBlpshut\fR command stops the \fBLP\fR print service.
-.sp
-.LP
-Printers that are printing when \fBlpshut\fR is invoked stop printing. Start or
-restart printers using \fBlpsched\fR(1M).
-.SH EXIT STATUS
-.sp
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 12n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fBnon-zero\fR
-.ad
-.RS 12n
-An error occurred.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/var/spool/lp/*\fR\fR
-.ad
-.RS 19n
-\fBLP\fR print queue.
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBlp\fR(1), \fBlpstat\fR(1), \fBlpadmin\fR(1M), \fBlpmove\fR(1M),
-\fBlpsched\fR(1M), \fBattributes\fR(5)
-.sp
-.LP
-\fI\fR
diff --git a/usr/src/man/man1m/lpsystem.1m b/usr/src/man/man1m/lpsystem.1m
deleted file mode 100644
index 827055fd62..0000000000
--- a/usr/src/man/man1m/lpsystem.1m
+++ /dev/null
@@ -1,39 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 1999 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH LPSYSTEM 1M "Feb 19, 1999"
-.SH NAME
-lpsystem \- register remote systems with the print service
-.SH DESCRIPTION
-.sp
-.LP
-The \fBlpsystem\fR command is obsolete, and could be removed at any time. The
-print system no longer uses the information generated by \fBlpsystem\fR. See
-\fBlpadmin\fR(1M), \fBlpusers\fR(1M) or \fBprinters.conf\fR(4) for equivalent
-functionality.
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Stability Level Obsolete*
-.TE
-
-.sp
-.LP
-* This command could be removed at any time.
-.SH SEE ALSO
-.sp
-.LP
-\fBlpadmin\fR(1M), \fBlpusers\fR(1M), \fBprinters.conf\fR(4),
-\fBattributes\fR(5)
diff --git a/usr/src/man/man1m/lpusers.1m b/usr/src/man/man1m/lpusers.1m
deleted file mode 100644
index 9637e3bdd5..0000000000
--- a/usr/src/man/man1m/lpusers.1m
+++ /dev/null
@@ -1,198 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 1996 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH LPUSERS 1M "Aug 19, 1996"
-.SH NAME
-lpusers \- set printing queue priorities
-.SH SYNOPSIS
-.LP
-.nf
-\fBlpusers\fR \fB-d\fR \fIpriority-level\fR
-.fi
-
-.LP
-.nf
-\fBlpusers\fR \fB-q\fR \fIpriority-level\fR \fB-u\fR \fIlogin-ID-list\fR
-.fi
-
-.LP
-.nf
-\fBlpusers\fR \fB-u\fR \fIlogin-ID-list\fR
-.fi
-
-.LP
-.nf
-\fBlpusers\fR \fB-q\fR \fIpriority-level\fR
-.fi
-
-.LP
-.nf
-\fBlpusers\fR \fB-l\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBlpusers\fR command sets limits to the queue priority level that can be
-assigned to jobs submitted by users of the LP print service.
-.sp
-.LP
-The first form of the command (with \fB-d\fR) sets the system-wide priority
-default to \fIpriority-level\fR, where \fIpriority-level\fR is a value of 0 to
-39, with 0 being the highest priority. If a user does not specify a priority
-level with a print request (see \fBlp\fR(1)), the default priority level is
-used. Initially, the default priority level is 20.
-.sp
-.LP
-The second form of the command (with \fB-q\fR and \fB-u\fR) sets the default
-highest \fIpriority-level\fR (\|0-39\|) that the users in \fIlogin-ID-list\fR
-can request when submitting a print request. The \fIlogin-ID-list\fR argument
-may include any or all of the following constructs:
-.sp
-.ne 2
-.na
-\fB\fIlogin-ID\fR\fR
-.ad
-.RS 24n
-A user on any system
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIsystem_name\fR\fB!\fR\fIlogin-ID\fR\fR
-.ad
-.RS 24n
-A user on the system \fIsystem_name\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIsystem_name\fR\fB!all\fR\fR
-.ad
-.RS 24n
-All users on system \fIsystem_name\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBall!\fR\fIlogin-ID\fR\fR
-.ad
-.RS 24n
-A user on all systems
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBall\fR\fR
-.ad
-.RS 24n
-All users on all systems
-.RE
-
-.sp
-.LP
-Users that have been given a limit cannot submit a print request with a higher
-priority level than the one assigned, nor can they change a request that has
-already been submitted to have a higher priority. Any print requests submitted
-with priority levels higher than allowed will be given the highest priority
-allowed.
-.sp
-.LP
-The third form of the command (with \fB-u\fR) removes any explicit priority
-level for the specified users.
-.sp
-.LP
-The fourth form of the command (with \fB-q\fR) sets the default highest
-priority level for all users not explicitly covered by the use of the second
-form of this command.
-.sp
-.LP
-The last form of the command (with \fB-l\fR) lists the default priority level
-and the priority limits assigned to users.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-d\fR\fI priority-level\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set the system-wide priority default to \fIpriority-level\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR\fR
-.ad
-.sp .6
-.RS 4n
-List the default priority level and the priority limits assigned to users.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-q\fR\fI priority-level\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set the default highest priority level for all users not explicitly covered.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-q\fR\fI priority-level\fR \fB-u\fR\fI login-ID-list\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set the default highest \fIpriority-level\fR that the users in
-\fIlogin-ID-list\fR can request when submitting a print request.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-u\fR\fI login-ID-list\fR\fR
-.ad
-.sp .6
-.RS 4n
-Remove any explicit priority level for the specified users.
-.RE
-
-.SH EXIT STATUS
-.sp
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 12n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fBnon-zero\fR
-.ad
-.RS 12n
-An error occurred.
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBlp\fR(1), \fBattributes\fR(5)
diff --git a/usr/src/man/man1m/luxadm.1m b/usr/src/man/man1m/luxadm.1m
deleted file mode 100644
index 4bd782458b..0000000000
--- a/usr/src/man/man1m/luxadm.1m
+++ /dev/null
@@ -1,1265 +0,0 @@
-'\" te
-.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH LUXADM 1M "May 17, 2020"
-.SH NAME
-luxadm \- administer Sun Fire 880 storage subsystem and FC_AL devices
-.SH SYNOPSIS
-.nf
-\fBluxadm\fR [\fIoptions\fR]... \fIsubcommand\fR [\fIoptions\fR]... \fIenclosure\fR
- [,\fIdev\fR] | \fIpathname\fR...
-.fi
-
-.SH DESCRIPTION
-The \fBluxadm\fR program is an administrative command that manages the
-\fBSENA\fR, Sun Fire 880 internal storage subsystem, and individual Fiber
-Channel Arbitrated Loop (\fBFC_AL\fR) devices. \fBluxadm\fR performs a variety
-of control and query tasks depending on the command line arguments and options
-used.
-.sp
-.LP
-The command line must contain a subcommand. The command line may also contain
-options, usually at least one enclosure name or pathname, and other parameters
-depending on the subcommand. You need specify only as many characters as are
-required to uniquely identify a subcommand.
-.sp
-.LP
-Specify the device that a subcommand interacts with by entering a pathname. For
-the \fBSENA\fR subsystem, a disk device or enclosure services controller may
-instead be specified by entering the World Wide Name (\fBWWN\fR) for the device
-or a port to the device. The device may also be specified by entering the name
-of the \fBSENA\fR enclosure, and an optional identifier for the particular
-device in the enclosure. The individual \fBFC_AL\fR devices may be specified by
-entering the \fBWWN\fR for the device or a port to the device.
-.SS "Pathname"
-Specify the device or controller by either a complete physical pathname or a
-complete logical pathname.
-.sp
-.LP
-For \fBSENA,\fR a typical physical pathname for a device is:
-.sp
-.in +2
-.nf
-/devices/sbus@1f,0/SUNW,socal@1,0/sf@0,0/ssd@w2200002037000f96,
- 0:a,raw
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-For all \fBSENA IBs\fR (Interface Boards) and Sun Fire 880 SES device
-controllers on the system, a logical link to the physical paths is kept in the
-directory \fB/dev/es\fR. An example of a logical link is \fB/dev/es/ses0\fR.
-.sp
-.LP
-The \fBWWN\fR may be used in place of the pathname to select an \fBFC_AL\fR
-device, \fBSENA\fR subsystem IB, or Sun Fire 880 internal storage subsystem.
-The \fBWWN\fR is a unique 16 hexadecimal digit value that specifies either the
-port used to access the device or the device itself. A typical \fBWWN\fR value
-is:
-.sp
-.in +2
-.nf
-2200002037000f96
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-See NOTES for more information on the \fBWWN\fR formats.
-.sp
-.LP
-For a disk in a Sun Fire 880 internal storage subsystem, a typical physical
-pathname is:
-.sp
-.in +2
-.nf
-/devices/pci@8,600000/SUNW,qlc@2/fp@0,0/ssd@w2100002037a6303c,0:a
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-and a typical logical pathname is:
-.sp
-.in +2
-.nf
-/dev/rdsk/c2t8d0s2
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-For individual FC_AL devices, a typical physical pathname is:
-.sp
-.in +2
-.nf
-/devices/sbus@3.0/SUNW,socal@d,10000/sf@0,0/ssd@w2200002037049fc3,0:a,raw
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-and a typical logical pathname is:
-.sp
-.in +2
-.nf
-/dev/rdsk/c1t0d0s2
-.fi
-.in -2
-.sp
-
-.SS "Enclosure"
-For \fBSENA,\fR a device may be identified by its enclosure name and slotname:
-.br
-.in +2
-\fIbox_name\fR[\fB,f\fR\fIslot_number\fR]
-.in -2
-.br
-.in +2
-\fIbox_name\fR[\fB,r\fR\fIslot_number\fR]
-.in -2
-.sp
-.LP
-\fIbox_name\fR is the name of the \fBSENA\fR enclosure, as specified by the
-\fBenclosure_name\fR subcommand. When used without the optional
-\fIslot_number\fR parameter, the \fIbox_name\fR identifies the \fBSENA\fR
-subsystem \fBIB.\fR
-.sp
-.LP
-\fBf\fR or \fBr\fR specifies the front or rear slots in the \fBSENA\fR
-enclosure.
-.sp
-.LP
-\fIslot_number\fR specifies the slot number of the device in the \fBSENA\fR
-enclosure, \fB0-6\fR or \fB0-10\fR.
-.sp
-.LP
-For a Sun Fire 880 internal storage subsystem, a device may also be identified
-by its enclosure name and slot name. However, there is only one set of disks:
-.sp
-.in +2
-.nf
-\fIbox_name\fR[,\fIsslot_number\fR]
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-\fIbox_name\fR is the name of the Sun Fire 880 enclosure, as specified by the
-\fBenclosure_name\fR subcommand. When used without the optional
-\fIslot_number\fR parameter, \fIbox_name\fR identifies the Sun Fire 880
-internal storage subsystem enclosure services device. Use \fIs\fR to specify
-the disk slot number in the Sun Fire 880 internal storage subsystem, \fB0\fR -
-\fB11\fR.
-.sp
-.LP
-See \fBdisks\fR(1M) and \fBdevlinks\fR(1M) for additional information on
-logical names for disks and subsystems.
-.SH OPTIONS
-The following options are supported by all subcommands:
-.sp
-.ne 2
-.na
-\fB\fB-e\fR\fR
-.ad
-.RS 6n
-Expert mode. This option is not recommended for the novice user.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.RS 6n
-Verbose mode.
-.RE
-
-.sp
-.LP
-Options that are specific to particular subcommands are described with the
-subcommand in the \fBUSAGE\fR section.
-.SH OPERANDS
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fB\fIenclosure\fR\fR
-.ad
-.sp .6
-.RS 4n
-The \fIbox_name\fR of the \fBSENA\fR or Sun Fire 880 internal storage
-subsystem.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIfibre_channel_HBA_port\fR\fR
-.ad
-.sp .6
-.RS 4n
-The path to the host controller port. A typical path is:
-.sp
-.in +2
-.nf
- /devices/pci@8,600000/pci@1/SUNW,qlc@4/fp@0,0:devctl
-.fi
-.in -2
-.sp
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIpathname\fR\fR
-.ad
-.sp .6
-.RS 4n
-The logical or physical path of a \fBSENA IB\fR, Sun Fire 880 internal storage
-subsystem, or disk device. \fIpathname\fR can also be the \fBWWN\fR of a
-\fBSENA IB\fR, \fBSENA\fR disk, or individual \fBFC_AL\fR device.
-.RE
-
-.SH USAGE
-.SS "Subcommands"
-.ne 2
-.na
-\fB\fBdisplay\fR \fIenclosure\fR[,\fIdev\fR]\|.\|.\|.\||
-\fIpathname\fR\|.\|.\|.\fR
-.ad
-.br
-.na
-\fB\fBdisplay\fR \fB-p\fR \fIpathname\fR\|.\|.\|.\fR
-.ad
-.br
-.na
-\fB\fBdisplay\fR \fB-r\fR \fIenclosure\fR[,\fIdev\fR]\|.\|.\|.\||
-\fIpathname\fR\|.\|.\|.\fR
-.ad
-.br
-.na
-\fB\fBdisplay\fR \fB-v\fR \fIenclosure\fR[,\fIdev\fR]\|.\|.\|.\||
-\fIpathname\fR\|.\|.\|.\fR
-.ad
-.sp .6
-.RS 4n
-Displays enclosure or device specific data.
-.sp
-Subsystem data consists of enclosure environmental sense information and status
-for all subsystem devices, including disks.
-.sp
-Disk data consists of inquiry, capacity, and configuration information.
-.sp
-.ne 2
-.na
-\fB\fB-p\fR\fR
-.ad
-.RS 6n
-Displays performance information for the device or subsystem specified by
-\fIpathname\fR. This option only applies to subsystems that accumulate
-performance information.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-r\fR\fR
-.ad
-.RS 6n
-Displays error information for the \fBFC_AL\fR device specified by the
-pathname, or, if the path is a \fBSENA,\fR for all devices on the loop. The
-\fB-r\fR option only applies to \fBSENA\fR subsystems and individual
-\fBFC_AL\fR devices.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.RS 6n
-Displays in verbose mode, including mode sense data.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdownload\fR [ \fB-s\fR ] [ \fB-f\fR \fIfilename_path\fR ]
-\fIenclosure\fR.\|.\|.\fR
-.ad
-.sp .6
-.RS 4n
-Download the prom image pointed to the SENA subsystem Interface Board unit or
-the Sun Fire 880 internal storage subsystem specified by the enclosure or
-pathname.
-.sp
-When the \fBSENA's\fR download is complete, the \fBSENA\fR will be reset and
-the downloaded code executed. If no filename is specified, the default prom
-image will be used. The default prom image for the \fBSENA\fR is in the
-directory \fB/usr/lib/locale/C/LC_MESSAGES\fR and is named \fBibfirmware\fR
-.sp
-When the Sun Fire 880 internal storage subsystem's download is complete, the
-subsystem resets and the downloaded code begins execution. The default firmware
-image for the Sun Fire 880 internal storage subsystem is in:
-\fB/usr/platform/SUNW,Sun-Fire-880/lib/images/int_fcbpl_fw\fR.
-.sp
-.ne 2
-.na
-\fB\fB-s\fR\fR
-.ad
-.RS 6n
-Save. The \fB-s\fR option is used to save the downloaded firmware in the
-FEPROM. If \fB-s\fR is not specified, the downloaded firmware will not be saved
-across power cycles.
-.sp
-The \fB-s\fR option does not apply to the Sun Fire 880 internal storage
-subsystem as it always stores downloaded firmware in the flash memory.
-.sp
-When using the \fB-s\fR option, the \fBdownload\fR subcommand modifies the
-\fBFEPROM\fR on the subsystem and should be used with \fIcaution\fR.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBenclosure_name\fR \fInew_name\fR \fIenclosure\fR | \fIpathname\fR\fR
-.ad
-.sp .6
-.RS 4n
-Change the enclosure name of the enclosure or enclosures specified by the
-enclosure or pathname. The new name (\fInew_name\fR) must be 16 or less
-characters. Only alphabetic or numeric characters are acceptable. This
-subcommand applies only to the SENA and the Sun Fire 880 internal storage
-subsystem.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfailover primary\fR | \fBsecondary\fR \fIpathname\fR\fR
-.ad
-.sp .6
-.RS 4n
-Select which Sun Storage T3 storage array partner group controller accesses a
-given logical volume. If \fBprimary\fR is specified, the logical volume is
-accessed through the primary controller. If \fBsecondary\fR is specified, the
-logical volume is accessed through the secondary controller specified by
-\fIpathname\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfcal_s_download\fR [ \fB-f\fR \fIfcode-file\fR ]\fR
-.ad
-.sp .6
-.RS 4n
-Download the fcode contained in the file \fIfcode-file\fR into \fIall\fR the
-\fBFC100/S\fR Sbus Cards. This command is interactive and expects user
-confirmation before downloading the fcode.
-.sp
-Use \fBfcal_s_download\fR \fIonly\fR in single-user mode. Using
-\fBfcal_s_download\fR to update a host adapter while there is \fBI/O\fR
-activity through that adapter \fIwill\fR cause the adapter to reset. Newly
-updated FCode will not be executed or visible until a system reboot.
-.sp
-.ne 2
-.na
-\fB\fB-f\fR \fIfcode-file\fR\fR
-.ad
-.RS 17n
-When invoked without the \fB-f\fR option, the current version of the fcode in
-each \fBFC100/S\fR Sbus card is printed.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfcode_download\fR \fB-p\fR\fR
-.ad
-.br
-.na
-\fB\fBfcode_download\fR \fB-d\fR \fIdir-name\fR\fR
-.ad
-.sp .6
-.RS 4n
-Locate the installed \fBFC/S\fR, \fBFC100/S, FC100/P\fR, or \fBFC100/2P\fR host
-bus adapter cards and download the FCode files in \fIdir-name\fR to the
-appropriate cards. The command determines the correct card for each type of
-file, and is interactive. User confirmation is required before downloading the
-FCode to each device.
-.sp
-Use \fBfcode_download\fR to load FCode only in single-user mode. Using
-\fBfcode_download\fR to update a host adapter while there is \fBI/O\fR activity
-through that adapter causes the adapter to reset. Newly updated FCode will not
-be executed or visible until a system reboot.
-.sp
-.ne 2
-.na
-\fB\fB-d\fR \fIdir-name\fR\fR
-.ad
-.RS 15n
-Download the FCode files contained in the directory \fIdir-name\fR to the
-appropriate adapter cards.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR\fR
-.ad
-.RS 15n
-Prints the current version of FCode loaded on each card. No download is
-performed.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBinquiry\fR \fIenclosure\fR[,\fIdev\fR ]\|.\|.\|.\| |
-\fIpathname\fR\|.\|.\|.\fR
-.ad
-.sp .6
-.RS 4n
-Display the inquiry information for the selected device specified by the
-enclosure or pathname.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBinsert_device\fR [ \fIenclosure\fR,\fIdev\fR\|.\|.\|. ]\fR
-.ad
-.sp .6
-.RS 4n
-Assist the user in the hot insertion of a new device or a chain of new devices.
-Refer to \fBNOTES\fR for limitations on hotplug operations. This subcommand
-applies only to the \fBSENA\fR, Sun Fire 880 internal storage subsystem, and
-individual FC_AL drives. For the \fBSENA\fR, if more than one enclosure has
-been specified, concurrent hot insertions on multiple busses can be performed.
-With no arguments to the subcommand, entire enclosures or individual
-\fBFC_AL\fR drives can be inserted. For the \fBSENA\fR or the Sun Fire 880
-internal storage subsystem, this subcommand guides the user interactively
-through the hot insertion steps of a new device or chain of devices. If a list
-of disks was entered it will ask the user to verify the list of devices to be
-inserted is correct, at which point the user can continue or quit. It then
-interactively asks the user to insert the disk(s) or enclosure(s) and then
-creates and displays the logical pathnames for the devices.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBled\fR \fIenclosure\fR,\fIdev\fR\|.\|.\|.\|| \fIpathname\fR.\|.\|.\fR
-.ad
-.sp .6
-.RS 4n
-Display the current state of the \fBLED\fR associated with the disk specified
-by the enclosure or pathname. This subcommand only applies to subsystems that
-support this functionality.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBled_blink\fR \fIenclosure\fR,\fIdev\fR\|.\|.\|.\||
-\fIpathname\fR\|.\|.\|.\fR
-.ad
-.sp .6
-.RS 4n
-Requests the subsystem to start blinking the \fBLED\fR associated with the disk
-specified by the enclosure or pathname. This subcommand only applies to
-subsystems that support this functionality.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBled_off\fR \fIenclosure\fR,\fIdev\fR\|.\|.\|.\||
-\fIpathname\fR\|.\|.\|.\fR
-.ad
-.sp .6
-.RS 4n
-Requests the subsystem to disable (turn off) the \fBLED\fR associated with the
-disk specified by the enclosure or pathname. On a \fBSENA\fR subsystem, this
-may or may not cause the \fBLED\fR to turn off or stop blinking depending on
-the state of the \fBSENA\fR subsystem. Refer to the \fBSENA\fR Array
-Installation and Service Manual (p/n 802-7573). This subcommand only applies to
-subsystems that support this functionality.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBled_on\fR \fIpathname\fR\|.\|.\|.\fR
-.ad
-.sp .6
-.RS 4n
-Requests the subsystem to enable (turn on) the \fBLED\fR associated with the
-disk specified by the pathname. This subcommand only applies to subsystems that
-support this functionality.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpower_off\fR [ \fB-F\fR ] \fIenclosure\fR[,\fIdev\fR]\|.\|.\|. |
-\fIpathname\fR \|.\|.\|.\fR
-.ad
-.sp .6
-.RS 4n
-When a \fBSENA\fR is addressed, this subcommand causes the \fBSENA\fR subsystem
-to go into the power-save mode. The \fBSENA\fR drives are not available when in
-the power-save mode. When a drive in a \fBSENA\fR is addressed the drive is set
-to the drive off/unmated state. In the drive off/unmated state, the drive is
-spun down (stopped) and in bypass mode. This command does not apply to the Sun
-Fire 880 internal storage subsystem.
-.sp
-.ne 2
-.na
-\fB\fB-F\fR\fR
-.ad
-.RS 6n
-The force option only applies to the \fBSENA.\fR Instructs \fBluxadm\fR to
-attempt to power off one or more devices even if those devices are being used
-by this host (and are, therefore, busy).
-.sp
-\fBWarning\fR: Powering off a device which has data that is currently being
-used will cause unpredictable results. Users should attempt to power off the
-device normally (without \fB-F\fR) first, only resorting to this option when
-sure of the consequences of overriding normal checks.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpower_on\fR \fIenclosure\fR[\fB,\fR\fIdev\fR]\|.\|.\|\fR
-.ad
-.sp .6
-.RS 4n
-Causes the \fBSENA\fR subsystem to go out of the power-save mode, when this
-subcommand is addressed to a \fBSENA.\fR. When this subcommand is addressed to
-a drive the drive is set to its normal start-up state. This command does not
-apply to the Sun Fire 880 internal storage subsystem.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBprobe\fR [ \fB-p\fR ]\fR
-.ad
-.sp .6
-.RS 4n
-Finds and displays information about all attached \fBSENA\fR subsystems, Sun
-Fire 880 internal storage subsystems, and individual \fBFC_AL\fR devices,
-including the logical pathname, the \fBWWNs,\fR and enclosure names. This
-subcommand warns the user if it finds different \fBSENAs\fR with the same
-enclosure names.
-.sp
-.ne 2
-.na
-\fB\fB-p\fR\fR
-.ad
-.RS 6n
-Includes the physical pathname in the display.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBqlgc_s_download\fR [ \fB-f\fR \fIfcode-file\fR ]\fR
-.ad
-.sp .6
-.RS 4n
-Download the FCode contained in the file \fIfcode-file\fR into all the
-\fBFC100/P\fR, \fBFC100/2P\fR \fBPCI\fR host adapter cards. This command is
-interactive and expects user confirmation before downloading the FCode to each
-device. Only use \fBqlgc_s_download\fR in single-user mode. Using
-\fBqlgc_s_download\fR to update a host adapter while there is\fB I/O\fR
-activity through that adapter will cause the adapter to reset. Newly updated
-FCode will not be executed or visible until a system reboot.
-.sp
-.ne 2
-.na
-\fB\fB-f\fR \fIfcode-file\fR\fR
-.ad
-.RS 17n
-When invoked without the \fB-f\fR option, the current version of the FCode in
-each \fBFC100/P\fR,\fB FC100/2P PCI\fR card is printed.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrelease\fR \fIpathname\fR\fR
-.ad
-.sp .6
-.RS 4n
-Release a reservation held on the specified disk. The pathname should be the
-physical or logical pathname for the disk.
-.sp
-This subcommand is included for historical and diagnostic purposes only.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBremove_device\fR [ \fB-F\fR ] \fIenclosure\fR[,\fIdev\fR]\|.\|.\|.\||
-\fIpathname\fR\|.\|.\|.\fR
-.ad
-.sp .6
-.RS 4n
-Assists the user in hot removing a device or a chain of devices. This
-subcommand can also be used to remove entire enclosures. This subcommand
-applies to the \fBSENA\fR, Sun Fire 880 internal storage subsystem, and
-individual \fBFC_AL\fR drives. Refer to \fBNOTES\fR for limitations on hotplug
-operations. For the \fBSENA\fR, Sun Fire 880 internal storage subsystem, and
-individual \fBFC_AL\fR devices, this subcommand guides the user through the hot
-removal of a device or devices. During execution it will ask the user to verify
-the list of devices to be removed is correct, at which point the user can
-continue or quit. It then prepares the disk(s) or enclosure(s) for removal and
-interactively asks the user to remove the disk(s) or enclosure(s).
-.sp
-For Multi-Hosted disk, the steps taken are:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Issue the \fBluxadm\fR \fBremove_device\fR command on the first host. When
-prompted to continue, wait.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Issue the \fBluxadm\fR \fBremove_device\fR command on the secondary hosts. When
-prompted to continue, wait.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Continue with the \fBremove_device\fR command on the first host. Remove the
-device when prompted to do so.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Complete the \fBluxadm\fR \fBremove_device\fR command on the additional hosts.
-.RE
-.sp
-.ne 2
-.na
-\fB\fB-F\fR\fR
-.ad
-.RS 6n
-Instructs \fBluxadm\fR to attempt to hot plug one or more devices even if those
-devices are being used by this host (and are, therefore, \fBbusy\fR or
-\fBreserved\fR), to \fBforce\fR the hotplugging operation.
-.sp
-\fBWarning\fR: Removal of a device which has data that is currently being used
-will cause unpredictable results. Users should attempt to hotplug normally
-(without \fB-F\fR) first, only resorting to this option when sure of the
-consequences of overriding normal hotplugging checks.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBreserve\fR \fIpathname\fR\fR
-.ad
-.sp .6
-.RS 4n
-Reserve the specified disk for exclusive use by the issuing host. The pathname
-used should be the physical or logical pathname for the disk.
-.sp
-This subcommand is included for historical and diagnostic purposes only.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBset_boot_dev\fR [ \fB-y\fR ] \fIpathname\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set the boot-device variable in the system \fBPROM\fR to the physical device
-name specified by \fIpathname\fR, which can be a block special device or the
-pathname of the directory on which the boot file system is mounted. The command
-normally runs interactively requesting confirmation for setting the default
-boot-device in the \fBPROM\fR. The \fB-y\fR option can be used to run it
-non-interactively, in which case no confirmation is requested or required.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBstart\fR \fIpathname\fR\fR
-.ad
-.sp .6
-.RS 4n
-Spin up the specified disk(s) in a SENA.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBstop\fR \fIpathname\fR...\fR
-.ad
-.sp .6
-.RS 4n
-Spin down the specified disks in a SENA.
-.RE
-
-.SS "SENA, Sun Fire 880 Internal Storage Subsystem, and Individual FC_AL Drive Expert Mode Subcommands"
-The following subcommands are for expert use only, and are applicable only to
-the \fBSENA\fR, Sun Fire 880 internal storage subsystem, and fiber channel
-loops. They should only be used by users that are knowledgeable about the
-\fBSENA\fR subsystem and fiber channel loops.
-.sp
-.LP
-If you specify a disk to an expert subcommand that operates on a bus, the
-subcommand operates on the bus to which the specified disk is attached.
-.sp
-.ne 2
-.na
-\fB\fB-e\fR \fBbypass\fR \fB[\fR\fB-ab\fR\fB]\fR \fIenclosure\fR,\fIdev\fR\fR
-.ad
-.br
-.na
-\fB\fB-e\fR \fBbypass\fR \fB-f\fR \fIenclosure\fR\fR
-.ad
-.sp .6
-.RS 4n
-Request the enclosure services controller to set the LRC (Loop Redundancy
-Circuit) to the bypassed state for the port and device specified.
-.sp
-This subcommand supports the following options:
-.sp
-.ne 2
-.na
-\fB\fB-a\fR\fR
-.ad
-.RS 6n
-Bypass port \fBa\fR of the device specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-b\fR\fR
-.ad
-.RS 6n
-Bypass port \fBb\fR of the device specified.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-e\fR \fBdump_map\fR \fIfibre_channel_HBA_port\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display WWN data for a target device or host bus adapter on the specified fibre
-channel port. If there are no target devices on the specified port, an error is
-returned.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-e\fR \fBenable\fR \fB[\fR\fB-ab\fR\fB]\fR \fIenclosure\fR,\fIdev\fR\fR
-.ad
-.br
-.na
-\fB\fB-e\fR \fBenable\fR \fB-f\fR \fIenclosure\fR\fR
-.ad
-.sp .6
-.RS 4n
-Request the enclosure services controller to set the LRC (Loop Redundancy
-Circuit) to the enabled state for the port and device specified.
-.sp
-This subcommand supports the following options:
-.sp
-.ne 2
-.na
-\fB\fB-a\fR\fR
-.ad
-.RS 6n
-Enable port \fBa\fR of the device specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-b\fR\fR
-.ad
-.RS 6n
-Enable port \fBb\fR of the device specified.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\fR\fB-e\fR \fBforcelip\fR \fIenclosure\fR[\fB,\fR\fIdev\fR] \|.\|.\|. |
-\fIpathname\fR\|.\|.\|.\fR
-.ad
-.sp .6
-.RS 4n
-Force the link to reinitialize, using the Loop Initialization Primitive
-(\fBLIP\fR) sequence. The enclosure or pathname can specify any device on the
-loop. Use the pathname to specify a specific path for multiple loop
-configurations.
-.sp
-This is an expert only command and should be used with caution. It will reset
-all ports on the loop.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\fR\fB-e\fR \fBrdls\fR \fIenclosure\fR[\fB,\fR\fIdev\fR] \|.\|.\|. |
-\fIpathname\fR\|.\|.\|.\fR
-.ad
-.sp .6
-.RS 4n
-Read and display the link error status information for all available devices on
-the loop that contains the device specified by the enclosure or pathname.
-.RE
-
-.SS "Other Expert Mode Subcommands"
-See \fBNOTES\fR for limitations of these subcommands. They should only be used
-by users that are knowledgeable about the systems they are managing.
-.sp
-.LP
-These commands do not apply to the Sun Fire 880 internal storage subsystem.
-.sp
-.ne 2
-.na
-\fB\fB\fR\fB-e\fR \fBbus_getstate\fR \fIpathname\fR\fR
-.ad
-.RS 29n
-Get and display the state of the specified bus.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\fR\fB-e\fR \fBbus_quiesce\fR \fIpathname\fR\fR
-.ad
-.RS 29n
-Quiesce the specified bus.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\fR\fB-e\fR \fBbus_reset\fR \fIpathname\fR\fR
-.ad
-.RS 29n
-Reset the specified bus only.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\fR\fB-e\fR \fBbus_resetall\fR \fIpathname\fR\fR
-.ad
-.RS 29n
-Reset the specified bus and all devices.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\fR\fB-e\fR \fBbus_unquiesce\fR \fIpathname\fR\fR
-.ad
-.RS 29n
-Unquiesce the specified bus. the specified device.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\fR\fB-e\fR \fBdev_getstate\fR \fIpathname\fR\fR
-.ad
-.RS 29n
-Get and display the state of the specified device.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\fR\fB-e\fR \fBdev_reset\fR \fIpathname\fR\fR
-.ad
-.RS 29n
-Reset the specified device.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\fR\fB-e\fR \fBoffline\fR \fIpathname\fR\fR
-.ad
-.RS 29n
-Take the specified device offline.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\fR\fB-e\fR \fBonline\fR \fIpathname\fR\fR
-.ad
-.RS 29n
-Put the specified device online.
-.RE
-
-.SH EXAMPLES
-\fBExample 1 \fRDisplaying the \fBSENA\fRs and Individual FC_AL Devices on a
-System
-.sp
-.LP
-The following example finds and displays all of the \fBSENA\fRs and individual
-\fBFC_AL\fR devices on a system:
-
-.sp
-.in +2
-.nf
-example% \fBluxadm probe\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRDisplaying a \fBSENA\fR or Sun Fire 880 Internal Storage
-Subsystem
-.sp
-.LP
-The following example displays a \fBSENA\fR or Sun Fire 880 internal storage
-subsystem:
-
-.sp
-.in +2
-.nf
-example% \fBluxadm display /dev/es/ses0\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRDisplaying Two Subsystems
-.sp
-.LP
-The following example displays two subsystems using the enclosure names:
-
-.sp
-.in +2
-.nf
-example% \fBluxadm display BOB system1\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 4 \fRDisplaying Information about the First Disk
-.sp
-.LP
-The following example displays information about the first disk in the front of
-the enclosure named \fBBOB.\fR Use \fBf\fR to specify the front disks. Use
-\fBr\fR to specify the rear disks.
-
-.sp
-.in +2
-.nf
-example% \fBluxadm display BOB,f0\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 5 \fRDisplaying Information on a Sun Fire 880 Internal Storage
-Subsystem
-.sp
-.LP
-The Sun Fire 880 internal storage subsystem has only one set of disks. In this
-case, use \fIs\fR to specify the slot:
-
-.sp
-.in +2
-.nf
-example% \fBluxadm display BOB,s0\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 6 \fRDisplaying Information about a \fBSENA\fR disk, an Enclosure,
-or an Individual \fBFC_AL\fR Drive
-.sp
-.LP
-The following example displays information about a \fBSENA\fR disk, an
-enclosure, or an individual \fBFC_AL\fR drive with the port \fBWWN\fR of
-\fB2200002037001246\fR:
-
-.sp
-.in +2
-.nf
-example% \fBluxadm display 2200002037001246\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 7 \fRUsing Unique Characters to Issue a Subcommand
-.sp
-.LP
-The following example uses only as many characters as are required to uniquely
-identify a subcommand:
-
-.sp
-.in +2
-.nf
-example% \fBluxadm disp BOB\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 8 \fRDisplaying Error Information
-.sp
-.LP
-The following example displays error information about the loop that the
-enclosure \fBBOB\fR is on:
-
-.sp
-.in +2
-.nf
-example% \fBluxadm display \fR\fB-r\fR\fB BOB\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 9 \fRDownloading New Firmware into the Interface Board
-.sp
-.LP
-The following example downloads new firmware into the Interface Board in the
-enclosure named \fBBOB\fR (using the default path for the file to download):
-
-.sp
-.in +2
-.nf
-example% \fBluxadm download \fR\fB-s\fR\fB BOB\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 10 \fRDisplaying Information from the \fBSCSI\fR Inquiry Command
-.sp
-.LP
-The following example displays information from the \fBSCSI\fR inquiry command
-from all individual disks on the system, using only as many characters as
-necessary to uniquely identify the inquiry subcommand:
-
-.sp
-.in +2
-.nf
-example% \fBluxadm inq /dev/rdsk/c?t?d?s2\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 11 \fRHotplugging
-.sp
-.LP
-The following example hotplugs a new drive into the first slot in the front of
-the enclosure named \fBBOB:\fR
-
-.sp
-.in +2
-.nf
-example% \fBluxadm insert_device BOB,f0\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The following example hotplugs a new drive into the first slot in the Sun Fire
-880 internal storage subsystem named SF880-1:
-
-.sp
-.in +2
-.nf
-example% \fBluxadm insert_device SF880-1,s0\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 12 \fRRunning an Expert Subcommand
-.sp
-.LP
-The following example runs an expert subcommand. The subcommand forces a loop
-initialization on the loop that the enclosure \fBBOB\fR is on:
-
-.sp
-.in +2
-.nf
-example% \fBluxadm \fR\fB-e\fR\fB forcelip BOB\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 13 \fRUsing the Expert Mode Hot Plugging Subcommands
-.sp
-.LP
-An example of using the expert mode hot plugging subcommands to hot remove a
-disk follows. See \fBNOTES\fR for hot plugging limitations.
-
-.sp
-.LP
-The first step reserves the SCSI device so that it can't be accessed by way of
-its second SCSI bus:
-
-.sp
-.in +2
-.nf
-example# \fBluxadm reserve /dev/rdsk/c1t8d0s2\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 14 \fRTaking the Disk to be Removed Offline
-.sp
-.LP
-The next two steps take the disk to be removed offline then quiesce the bus:
-
-.sp
-.in +2
-.nf
-example# \fBluxadm \fR\fB-e\fR\fB offline /dev/rdsk/c1t8d0s2\fR
-example# \fBluxadm -e bus_quiesce /dev/rdsk/c1t8d0s2\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 15 \fRUnquiescing the Bus
-.sp
-.LP
-The user then removes the disk and continues by unquiescing the bus, putting
-the disk back online, then unreserving it:
-
-.sp
-.in +2
-.nf
-example# \fBluxadm \fR\fB-e\fR\fB bus_unquiesce /dev/rdsk/c1t8d0s2\fR
-example# \fBluxadm \fR\fB-e\fR\fB online /dev/rdsk/c1t8d0s2\fR
-example# \fBluxadm release /dev/rdsk/c1t8d0s2\fR
-.fi
-.in -2
-.sp
-
-.SH ENVIRONMENT VARIABLES
-See \fBenviron\fR(5) for a description of the \fBLANG\fR environment variable
-that affects the execution of \fBluxadm\fR.
-.SH EXIT STATUS
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 9n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\(mi1\fR\fR
-.ad
-.RS 9n
-An error occurred.
-.RE
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/usr/lib/firmware/fc_s/fc_s_fcode\fR\fR
-.ad
-.sp .6
-.RS 4n
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/locale/C/LC_MESSAGES/ibfirmware\fR\fR
-.ad
-.sp .6
-.RS 4n
-
-.RE
-
-.SH SEE ALSO
-\fBdevlinks\fR(1M), \fBdisks\fR(1M), \fBattributes\fR(5), \fBenviron\fR(5),
-\fBses\fR(7D)
-.SH NOTES
-Currently, only some device drivers
-support hot plugging. If hot plugging is attempted on a disk or bus where it is
-not supported, an error message of the form:
-.sp
-.in +2
-.nf
-luxadm: can't acquire "PATHNAME": No such file or directory
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-will be displayed.
-.sp
-.LP
-You must be careful not to quiesce a bus that contains the root or the
-\fB/usr\fR filesystems or any swap data. If you do quiesce such a bus a
-deadlock can result, requiring a system reboot.
diff --git a/usr/src/man/man1m/mail.local.1m b/usr/src/man/man1m/mail.local.1m
deleted file mode 100644
index 8245213326..0000000000
--- a/usr/src/man/man1m/mail.local.1m
+++ /dev/null
@@ -1,209 +0,0 @@
-'\" te
-.\" Copyright (c) 1983 Eric P. Allman
-.\" Copyright (c) 1988, 1993 The Regents of the University of California. All rights reserved.
-.\" Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
-.\" 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 3. All advertising materials mentioning features or use of this software must display
-.\" the following acknowledgement: This product includes software developed by the University of California, Berkeley and its contributors. 4. Neither the name of the University nor the names of its contributors may be used to endorse or promote products derived from this software without specific
-.\" prior written permission. THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR
-.\" CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
-.\" IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-.\" Copyright (c) 1998-2006, 2008 Sendmail, Inc. and its suppliers. All rights reserved.
-.\" The following license terms and conditions apply, unless a different license is obtained from Sendmail, Inc., 6425 Christie Ave, Fourth Floor, Emeryville, CA 94608, USA, or by electronic mail at license@sendmail.com. License Terms: Use, Modification and Redistribution
-.\" (including distribution of any modified or derived work) in source and binary forms is permitted only if each of the following conditions is met: 1. Redistributions qualify as "freeware" or "Open Source Software" under one of the following terms: (a) Redistributions are made at no charge
-.\" beyond the reasonable cost of materials and delivery. (b) Redistributions are accompanied by a copy of the Source Code or by an irrevocable offer to provide a copy of the Source Code for up to three years at the cost of materials and delivery. Such redistributions
-.\" must allow further use, modification, and redistribution of the Source Code under substantially the same terms as this license. For the purposes of redistribution "Source Code" means the complete compilable and linkable source code of sendmail including all modifications.
-.\" 2. Redistributions of source code must retain the copyright notices as they appear in each source code file, these license terms, and the disclaimer/limitation of liability set forth as paragraph 6 below. 3. Redistributions in binary form must reproduce the Copyright Notice, these license
-.\" terms, and the disclaimer/limitation of liability set forth as paragraph 6 below, in the documentation and/or other materials provided with the distribution. For the purposes of binary distribution the "Copyright Notice" refers to the following language: "Copyright (c) 1998-2004 Sendmail,
-.\" Inc. All rights reserved." 4. Neither the name of Sendmail, Inc. nor the University of California nor the names of their contributors may be used to endorse or promote products derived from this software without specific prior written permission. The name "sendmail" is a trademark
-.\" of Sendmail, Inc. 5. All redistributions must comply with the conditions imposed by the University of California on certain embedded code, whose copyright notice and conditions for redistribution are as follows: (a) Copyright (c) 1988, 1993 The Regents of the University of California.
-.\" All rights reserved. (b) Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: (i) Redistributions of source code must retain the above copyright notice, this list of
-.\" conditions and the following disclaimer. (ii) Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
-.\" (iii) Neither the name of the University nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. 6. Disclaimer/Limitation of Liability: THIS SOFTWARE IS PROVIDED BY SENDMAIL,
-.\" INC. AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL SENDMAIL, INC., THE REGENTS OF THE UNIVERSITY OF CALIFORNIA OR CONTRIBUTORS
-.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
-.\" IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
-.\" Portions Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved.
-.TH MAIL.LOCAL 1M "Apr 11, 1997"
-.SH NAME
-mail.local \- store mail in a mailbox
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/mail.local\fR [\fB-f\fR \fIsender\fR] [\fB-d\fR] \fIrecipient\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBmail.local\fR reads the standard input up to an end-of-file and appends it
-to each user's mail file (mailbox). This program is intended to be used by
-\fBsendmail\fR(1M) as a mail delivery agent for local mail. It is not a user
-interface agent.
-.sp
-.LP
-Messages are appended to the user's mail file in the \fB/var/mail\fR directory.
-The user must be a valid user name.
-.sp
-.LP
-Each delivered mail message in the mailbox is preceded by a "Unix From line"
-with the following format:
-.sp
-.LP
-\fBFrom\fR \fIsender_address\fR \fItime_stamp\fR
-.sp
-.LP
-The \fIsender_address\fR is extracted from the \fBSMTP\fR envelope address (the
-envelope address is specified with the \fB-f\fR option).
-.sp
-.LP
-A trailing blank line is also added to the end of each message.
-.sp
-.LP
-The mail files are locked with a \fB\&.lock\fR file while mail is appended.
-.sp
-.LP
-The mail files are created with mode \fB660\fR, owner is set to
-\fIrecipient\fR, and group is set to \fBmail\fR. If the ``biff'' service is
-returned by \fBgetservbyname\fR(3SOCKET), the biff server is notified of
-delivered mail. This program also computes the \fBContent-Length:\fR header
-which will be used by the mailbox reader to mark the message boundary.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-f\fR \fIsender\fR\fR
-.ad
-.RS 13n
-Specifies the "envelope from address" of the message. This flag is technically
-optional, but should be used.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-d\fR\fR
-.ad
-.RS 13n
-Specifies the recipient of the message. This flag is also optional and is
-supported here for backward compatibility. That is, \fBmail.local\fR\fI
-recipient\fR is the same as \fBmail.local\fR \fB-d\fR \fIrecipient\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR\fR
-.ad
-.RS 13n
-Turn on \fBLMTP\fR mode.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-r\fR \fIfrom\fR\fR
-.ad
-.RS 13n
-Specify the sender's name (for backward compatibility).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-7\fR\fR
-.ad
-.RS 13n
-Do not advertise 8BITMIME support in \fBLMTP\fR mode.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-b\fR\fR
-.ad
-.RS 13n
-Return a permanent error instead of a temporary error if a mailbox exceeds
-quota.
-.RE
-
-.SH OPERANDS
-.sp
-.LP
-The following operand is supported:
-.sp
-.ne 2
-.na
-\fB\fIrecipient\fR\fR
-.ad
-.RS 13n
-The recipient of the mail message.
-.RE
-
-.SH ENVIRONMENT VARIABLES
-.sp
-.ne 2
-.na
-\fB\fBTZ\fR\fR
-.ad
-.RS 6n
-Used to set the appropriate time zone on the timestamp.
-.RE
-
-.SH EXIT STATUS
-.sp
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 6n
-Successful operation.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB>0\fR\fR
-.ad
-.RS 6n
-An error occurred.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/tmp/local.\fR\fIXXXXXX\fR\fR
-.ad
-.RS 23n
-temporary files
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/tmp/lochd.\fR\fIXXXXXX\fR\fR
-.ad
-.RS 23n
-temporary files
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/mail/\fR\fIuser_name\fR\fR
-.ad
-.RS 23n
-user's mail file
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBmail\fR(1), \fBcomsat\fR(1M), \fBsendmail\fR(1M),
-\fBgetservbyname\fR(3SOCKET), \fBattributes\fR(5)
diff --git a/usr/src/man/man1m/mailwrapper.1m b/usr/src/man/man1m/mailwrapper.1m
deleted file mode 100644
index e1b176f5d6..0000000000
--- a/usr/src/man/man1m/mailwrapper.1m
+++ /dev/null
@@ -1,130 +0,0 @@
-.\" $OpenBSD: mailwrapper.8,v 1.10 2009/02/07 16:58:23 martynas Exp $
-.\" $NetBSD: mailwrapper.8,v 1.11 2002/02/08 01:38:50 ross Exp $
-.\" $FreeBSD: releng/9.1/usr.sbin/mailwrapper/mailwrapper.8 205938 2010-03-30 21:54:25Z delphij $
-.\"
-.\" Copyright (c) 1998
-.\" Perry E. Metzger. All rights reserved.
-.\"
-.\" Redistribution and use in source and binary forms, with or without
-.\" modification, are permitted provided that the following conditions
-.\" are met:
-.\" 1. Redistributions of source code must retain the above copyright
-.\" notice, this list of conditions and the following disclaimer.
-.\" 2. Redistributions in binary form must reproduce the above copyright
-.\" notice, this list of conditions and the following disclaimer in the
-.\" documentation and/or other materials provided with the distribution.
-.\" 3. All advertising materials mentioning features or use of this software
-.\" must display the following acknowledgment:
-.\" This product includes software developed for the NetBSD Project
-.\" by Perry E. Metzger.
-.\" 4. The name of the author may not be used to endorse or promote products
-.\" derived from this software without specific prior written permission.
-.\"
-.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
-.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
-.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
-.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
-.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
-.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
-.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-.\"
-.Dd August 7, 2006
-.Dt MAILWRAPPER 1M
-.Os
-.Sh NAME
-.Nm \fB/usr/lib/mailwrapper\fR
-.Nd invoke appropriate MTA software based on configuration file
-.Sh SYNOPSIS
-Special.
-See below.
-.Sh DESCRIPTION
-At one time, the only Mail Transfer Agent (MTA) software easily available
-was
-.Xr sendmail 1M .
-As a result of this, most Mail User Agents (MUAs) such as
-.Xr mail 1
-had the path and calling conventions expected by
-.Xr sendmail 1M
-compiled in.
-.Pp
-Times have changed, however.
-On a modern
-.Ux
-system, the administrator may wish to use one of several
-available MTAs.
-.Pp
-It would be difficult to modify all MUA software typically available
-on a system, so most of the authors of alternative MTAs have written
-their front end message submission programs so that they use the same
-calling conventions as
-.Xr sendmail 1M
-and may be put into place instead of
-.Xr sendmail 1M
-in
-.Pa /usr/lib/sendmail .
-.Pp
-.Xr sendmail 1M
-also typically has aliases named
-.Xr mailq 1
-and
-.Xr newaliases 1M
-linked to it.
-The program knows to behave differently when its
-.Va argv[0]
-is
-.Dq mailq
-or
-.Dq newaliases
-and behaves appropriately.
-Typically, replacement MTAs provide similar
-functionality, either through a program that also switches behavior
-based on calling name, or through a set of programs that provide
-similar functionality.
-.Pp
-Although having drop-in replacements for
-.Xr sendmail 1M
-helps in installing alternative MTAs, it essentially makes the
-configuration of the system depend on hand installing new programs in
-.Pa /usr .
-This leads to configuration problems for many administrators, since
-they may wish to install a new MTA without altering the system
-provided
-.Pa /usr .
-(This may be, for example, to avoid having upgrade problems when a new
-version of the system is installed over the old.)
-They may also have a shared
-.Pa /usr
-among several
-machines, and may wish to avoid placing implicit configuration
-information in a read-only
-.Pa /usr .
-.Pp
-The
-.Nm
-utility is designed to replace
-.Pa /usr/lib/sendmail
-and to invoke an appropriate MTA instead of
-.Xr sendmail 1M
-based on configuration information placed in
-.Pa /etc/mailer.conf .
-This permits the administrator to configure which MTA is to be invoked on
-the system at run time.
-.Pp
-Other configuration files may need to be altered when replacing
-.Xr sendmail 1M .
-.Sh EXIT STATUS
-.Ex -std
-.Sh DIAGNOSTICS
-The
-.Nm
-will print a diagnostic if its configuration file is missing or malformed,
-or does not contain a mapping for the name under which it was invoked.
-.Sh SEE ALSO
-.Xr mail 1 ,
-.Xr mailq 1 ,
-.Xr newaliases 1M ,
-.Xr sendmail 1M ,
-.Xr mailer.conf 4
diff --git a/usr/src/man/man1m/makedbm.1m b/usr/src/man/man1m/makedbm.1m
deleted file mode 100644
index 07d0b4b90d..0000000000
--- a/usr/src/man/man1m/makedbm.1m
+++ /dev/null
@@ -1,178 +0,0 @@
-'\" te
-.\" Copyright (c) 1999, Sun Microsystems, Inc. Copyright 1989 AT&T All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH MAKEDBM 1M "Aug 17, 1999"
-.SH NAME
-makedbm \- make a dbm file, or get a text file from a dbm file
-.SH SYNOPSIS
-.LP
-.nf
-\fBmakedbm\fR [\fB-b\fR] [\fB-l\fR] [\fB-s\fR] [\fB-E\fR] [\fB-i\fR \fIyp_input_file\fR]
- [\fB-o\fR \fIyp_output_name\fR] [\fB-d\fR \fIyp_domain_name\fR]
- [\fB-m\fR \fIyp_master_name\fR] [\fB-S\fR \fIdelimiter\fR]
- [\fB-D\fR \fInumber_of_delimiters\fR] \fIinfile\fR \fIoutfile\fR
-.fi
-
-.LP
-.nf
-\fBmakedbm\fR [\fB-u\fR \fIdbmfilename\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBmakedbm\fR utility takes the \fIinfile\fR and converts it to a pair of
-files in \fBndbm\fR format (see \fBndbm\fR(3C)), namely
-\fIoutfile\fR\fB\&.pag\fR and \fIoutfile\fR\fB\&.dir.\fR Each line of the input
-file is converted to a single \fBdbm\fR record. All characters up to the first
-\fBTAB\fR or \fBSPACE\fR form the key, and the rest of the line is the data. If
-a line ends with `\e' (backslash), the data for that record is continued on to
-the next line. \fBmakedbm\fR does not treat `#' (pound-sign) as a special
-character.
-.sp
-.LP
-Because \fBmakedbm\fR is mainly used in generating \fBdbm\fR files for the
-\fBNIS\fR name service, it generates a special entry with the key
-\fIyp_last_modified\fR, which is the date of \fIinfile\fR (or the current time,
-if \fIinfile\fR is `\(mi'). The entries that have keys with the prefix
-\fIyp_\fR are interpreted by \fBNIS\fR server utilities.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-b\fR\fR
-.ad
-.RS 27n
-Insert the \fBYP_INTERDOMAIN\fR into the output. This key causes
-\fBypserv\fR(1M) to use \fBDNS\fR for host name and address lookups for hosts
-not found in the maps.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-d\fR\fI yp_domain_name\fR\fR
-.ad
-.RS 27n
-Create a special entry with the key \fIyp_domain_name\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-D\fR \fInumber_of delimiters\fR\fR
-.ad
-.RS 27n
-Specify \fInumber_of_delimiters\fR to skip before forming the key.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-E\fR\fR
-.ad
-.RS 27n
-Delimiters are escaped.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-i\fR\fI yp_input_file\fR\fR
-.ad
-.RS 27n
-Create a special entry with the key \fIyp_input_file\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR\fR
-.ad
-.RS 27n
-Lower case. Convert the keys of the given map to lower case, so that, for
-example, host name matches succeed independent of upper or lower case
-distinctions.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-m\fR\fI yp_master_name\fR\fR
-.ad
-.RS 27n
-Create a special entry with the key \fIyp_master_name\fR. If no master host
-name is specified, \fIyp_master_name\fR is set to the local host name.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-o\fR\fI yp_output_name\fR\fR
-.ad
-.RS 27n
-Create a special entry with the key \fIyp_output_name\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR\fR
-.ad
-.RS 27n
-Secure map. Accept connections from secure \fBNIS\fR networks only.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-S\fR \fIdelimiter\fR\fR
-.ad
-.RS 27n
-Specify the \fIdelimiter\fR to use instead of the default delimiter for forming
-the key.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-u\fR\fI dbmfilename\fR\fR
-.ad
-.RS 27n
-Undo a \fBdbm\fR file. Prints out the file in text format, one entry per line,
-with a single space separating keys from values.
-.RE
-
-.SH OPERANDS
-.sp
-.LP
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fB\fIinfile\fR\fR
-.ad
-.RS 11n
-Input file for \fBmakedbm\fR. If \fIinfile\fR is `\fB\(mi\fR\&' (dash), the
-standard input is read.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIoutfile\fR\fR
-.ad
-.RS 11n
-One of two output files in \fBndbm\fR format: \fIoutfile\fR\fB\&.pag\fR and
-\fIoutfile\fR\fB\&.dir.\fR
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBypserv\fR(1M), \fBndbm\fR(3C), \fBattributes\fR(5)
diff --git a/usr/src/man/man1m/makemap.1m b/usr/src/man/man1m/makemap.1m
deleted file mode 100644
index 6cc65bf371..0000000000
--- a/usr/src/man/man1m/makemap.1m
+++ /dev/null
@@ -1,245 +0,0 @@
-'\" te
-.\" Copyright (c) 1983 Eric P. Allman
-.\" Copyright (c) 1988, 1993 The Regents of the University of California. All rights reserved.
-.\" Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
-.\" 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 3. All advertising materials mentioning features or use of this software must display
-.\" the following acknowledgement: This product includes software developed by the University of California, Berkeley and its contributors. 4. Neither the name of the University nor the names of its contributors may be used to endorse or promote products derived from this software without specific
-.\" prior written permission. THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR
-.\" CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
-.\" IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-.\" Copyright (c) 1998-2006, 2008 Sendmail, Inc. and its suppliers. All rights reserved.
-.\" The following license terms and conditions apply, unless a different license is obtained from Sendmail, Inc., 6425 Christie Ave, Fourth Floor, Emeryville, CA 94608, USA, or by electronic mail at license@sendmail.com. License Terms: Use, Modification and Redistribution
-.\" (including distribution of any modified or derived work) in source and binary forms is permitted only if each of the following conditions is met: 1. Redistributions qualify as "freeware" or "Open Source Software" under one of the following terms: (a) Redistributions are made at no charge
-.\" beyond the reasonable cost of materials and delivery. (b) Redistributions are accompanied by a copy of the Source Code or by an irrevocable offer to provide a copy of the Source Code for up to three years at the cost of materials and delivery. Such redistributions
-.\" must allow further use, modification, and redistribution of the Source Code under substantially the same terms as this license. For the purposes of redistribution "Source Code" means the complete compilable and linkable source code of sendmail including all modifications.
-.\" 2. Redistributions of source code must retain the copyright notices as they appear in each source code file, these license terms, and the disclaimer/limitation of liability set forth as paragraph 6 below. 3. Redistributions in binary form must reproduce the Copyright Notice, these license
-.\" terms, and the disclaimer/limitation of liability set forth as paragraph 6 below, in the documentation and/or other materials provided with the distribution. For the purposes of binary distribution the "Copyright Notice" refers to the following language: "Copyright (c) 1998-2004 Sendmail,
-.\" Inc. All rights reserved." 4. Neither the name of Sendmail, Inc. nor the University of California nor the names of their contributors may be used to endorse or promote products derived from this software without specific prior written permission. The name "sendmail" is a trademark
-.\" of Sendmail, Inc. 5. All redistributions must comply with the conditions imposed by the University of California on certain embedded code, whose copyright notice and conditions for redistribution are as follows: (a) Copyright (c) 1988, 1993 The Regents of the University of California.
-.\" All rights reserved. (b) Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: (i) Redistributions of source code must retain the above copyright notice, this list of
-.\" conditions and the following disclaimer. (ii) Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
-.\" (iii) Neither the name of the University nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. 6. Disclaimer/Limitation of Liability: THIS SOFTWARE IS PROVIDED BY SENDMAIL,
-.\" INC. AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL SENDMAIL, INC., THE REGENTS OF THE UNIVERSITY OF CALIFORNIA OR CONTRIBUTORS
-.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
-.\" IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright (c) 2019 Peter Tribble.
-.TH MAKEMAP 1M "Jan 21, 2019"
-.SH NAME
-makemap \- create database maps for sendmail
-.SH SYNOPSIS
-.LP
-.nf
-\fBmakemap\fR [\fB-N\fR] [\fB-d\fR] [\fB-f\fR] [\fB-o\fR] [\fB-r\fR] [\fB-s\fR] [\fB-v\fR] [\fB-C\fR \fIfile\fR]
- [\fB-c\fR \fIcachesize\fR] [\fB-D\fR \fIcommentchar\fR] [\fB-e\fR] [\fB-l\fR] [\fB-t\fR \fIdelim\fR]
- [\fB-u\fR] \fImaptype\fR \fImapname\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-\fBmakemap\fR creates the database maps used by the keyed map lookups in
-\fBsendmail\fR(1M). \fBmakemap\fR reads from the standard input and outputs to
-the specified \fImapname\fR.
-.sp
-.LP
-In all cases, \fBmakemap\fR reads lines from the standard input consisting of
-two words separated by whitespace. The first is the database key, the second is
-the value. The value may contain \fB%\fR\fIn\fR strings to indicate parameter
-substitution. Literal percents should be doubled (\fB%%\fR). Blank lines and
-lines beginning with \fB#\fR are ignored.
-.sp
-.LP
-Depending on how it is compiled, \fBmakemap\fR handles up to three different
-database formats, selected using the \fImaptype\fR parameter. See
-\fBOPERANDS\fR.
-.SH OPTIONS
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB-c\fR \fIcachesize\fR
-.ad
-.RS 18n
-Use the specified hash and B-Tree cache size (\fIcachesize\fR).
-.RE
-
-.sp
-.ne 2
-.na
-\fB-C\fR \fIfile\fR
-.ad
-.RS 18n
-Use the specified \fBsendmail\fR configuration file (\fIfile\fR) for looking up
-the \fBTrustedUser\fR option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB-d\fR
-.ad
-.RS 18n
-Allow duplicate keys in the map. This is only allowed on B-Tree format maps. If
-two identical keys are read, both are inserted into the map.
-.RE
-
-.sp
-.ne 2
-.na
-\fB-D\fR \fIcommentchar\fR
-.ad
-.RS 18n
-Use the specified character to indicate a comment (which is ignored) instead of
-the default of '\fB#\fR'.
-.RE
-
-.sp
-.ne 2
-.na
-\fB-e\fR
-.ad
-.RS 18n
-Allow empty value (right hand side).
-.RE
-
-.sp
-.ne 2
-.na
-\fB-f\fR
-.ad
-.RS 18n
-Normally, all upper case letters in the key are folded to lower case. This flag
-disables that behavior. This is intended to mesh with the \fB-f\fR flag in the
-\fBK\fR line in \fBsendmail.cf\fR. The value is never case folded.
-.RE
-
-.sp
-.ne 2
-.na
-\fB-l\fR
-.ad
-.RS 18n
-List supported map types.
-.RE
-
-.sp
-.ne 2
-.na
-\fB-N\fR
-.ad
-.RS 18n
-Include the null byte that terminates strings in the map. This must match the
-\fB-N\fR flag in the \fBK\fR line in \fBsendmail.cf\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB-o\fR
-.ad
-.RS 18n
-Append to an old file. This allows you to augment an existing file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB-r\fR
-.ad
-.RS 18n
-Allow replacement of existing keys. Normally \fBmakemap\fR complains if you
-repeat a key, and does not do the insert.
-.RE
-
-.sp
-.ne 2
-.na
-\fB-s\fR
-.ad
-.RS 18n
-Ignore safety checks on maps being created. This includes checking for hard or
-symbolic links in world writable directories.
-.RE
-
-.sp
-.ne 2
-.na
-\fB-t\fR \fIdelim\fR
-.ad
-.RS 18n
-Use the specified delimiter (\fIdelim\fR) instead of whitespace.
-.RE
-
-.sp
-.ne 2
-.na
-\fB-u\fR
-.ad
-.RS 18n
-Dump (unmap) the content of the database to standard output. Note that, if the
-\fB-t\fR option is also provided, the specified delimiter is used when the
-content is dumped instead of whitespace.
-.RE
-
-.sp
-.ne 2
-.na
-\fB-v\fR
-.ad
-.RS 18n
-Verbosely print keys and values being added.
-.RE
-
-.SH OPERANDS
-.LP
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fImapname\fR
-.ad
-.RS 11n
-File name of the database map being created.
-.RE
-
-.sp
-.ne 2
-.na
-\fImaptype\fR
-.ad
-.RS 11n
-Specifies the database format. The following \fImaptype\fR parameters are
-available:
-.sp
-.ne 2
-.na
-\fBdbm\fR
-.ad
-.RS 9n
-Specifies \fBDBM\fR format maps.
-.RE
-
-.sp
-.ne 2
-.na
-\fBbtree\fR
-.ad
-.RS 9n
-Specifies B-Tree format maps.
-.RE
-
-.sp
-.ne 2
-.na
-\fBhash\fR
-.ad
-.RS 9n
-Specifies hash format maps.
-.RE
-
-.RE
-
-.SH SEE ALSO
-.LP
-\fBeditmap\fR(1M), \fBsendmail\fR(1M), \fBattributes\fR(5)
diff --git a/usr/src/man/man1m/mdnsd.1m b/usr/src/man/man1m/mdnsd.1m
deleted file mode 100644
index b2dcedd695..0000000000
--- a/usr/src/man/man1m/mdnsd.1m
+++ /dev/null
@@ -1,108 +0,0 @@
-.\" -*- tab-width: 4 -*-
-.\"
-.\" Copyright (c) 2003-2004 Apple Computer, Inc. All Rights Reserved.
-.\"
-.\" Licensed under the Apache License, Version 2.0 (the "License");
-.\" you may not use this file except in compliance with the License.
-.\" You may obtain a copy of the License at
-.\"
-.\" http://www.apache.org/licenses/LICENSE-2.0
-.\"
-.\" Unless required by applicable law or agreed to in writing, software
-.\" distributed under the License is distributed on an "AS IS" BASIS,
-.\" WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-.\" See the License for the specific language governing permissions and
-.\" limitations under the License.
-.\"
-.\" Copyright 2016 Toomas Soome <tsoome@me.com>
-.\"
-.Dd Jan 28, 2016 \" Date
-.Dt MDNSD 1M \" Document Title
-.Os illumos \" Operating System
-.\"
-.Sh NAME
-.Nm mdnsd
-.Nd Multicast and Unicast DNS daemon \" Name Description for whatis database
-.\"
-.Sh SYNOPSIS
-.Nm
-.\"
-.Sh DESCRIPTION
-.Nm
-(also known as
-.Nm mDNSResponder
-on some systems)
-is a daemon invoked at boot time to implement Multicast DNS and DNS Service Discovery.
-.Pp
-.Nm
-listens on UDP port 5353 for Multicast DNS Query packets.
-When it receives a query for which it knows an answer,
-.Nm
-issues the appropriate Multicast DNS Reply packet.
-.Pp
-.Nm
-also performs Unicast and Multicast DNS Queries on behalf of client processes, and
-maintains a cache of the replies.
-.Pp
-.Nm
-has no user-specifiable command-line argument, and users should not run
-.Nm
-manually.
-.Sh LOGGING
-There are several methods with which to examine
-.Nm Ns 's internal state for debugging and diagnostic purposes. The syslog(3C)
-logging levels map as follows:
-.Pp
-.Dl Error - Error messages
-.Dl Warning - Client-initiated operations
-.Dl Notice - Sleep proxy operations
-.Dl Info - Informational messages
-.Pp
-By default, only log level Error is logged.
-.Pp
-A SIGUSR1 signal toggles additional logging, with Warning and Notice
-enabled by default:
-.Pp
-.Dl % sudo pkill -USR1 mdnsd
-.Pp
-A SIGUSR2 signal toggles packet logging:
-.Pp
-.Dl % sudo pkill -USR2 mdnsd
-.Pp
-A SIGINFO signal will dump a snapshot summary of the internal state:
-.Pp
-.Dl % sudo pkill -INFO mdnsd
-.Sh FILES
-.Pa /usr/lib/inet/mdnsd \" Pathname
-.\"
-.Sh INFO
-For information on Multicast DNS, see
-.Pa http://www.multicastdns.org/
-.Pp
-For information on DNS Service Discovery, see
-.Pa http://www.dns-sd.org/
-.Pp
-For information on how to use the Multicast DNS and the
-DNS Service Discovery APIs on Mac OS X and other platforms, see
-.Pa http://developer.apple.com/bonjour/
-.Pp
-For the source code to
-.Nm , see
-.Pa http://developer.apple.com/darwin/projects/bonjour/
-.\"
-.Sh INTERFACE STABILITY
-.Sy Volatile .
-.Sh SEE ALSO
-.Xr dns-sd 1M
-.\"
-.Sh NOTES
-The
-.Nm
-service is managed by the service management facility,
-\fBsmf\fR(5), under the service identifier:
-.sp
-.Dl svc:/network/dns/multicast:default
-.sp
-Administrative actions on this service, such as enabling, disabling, or
-requesting restart, can be performed using \fBsvcadm\fR(1M). The service's
-status can be queried using the \fBsvcs\fR(1) command.
diff --git a/usr/src/man/man1m/mkdevalloc.1m b/usr/src/man/man1m/mkdevalloc.1m
deleted file mode 100644
index d7adede488..0000000000
--- a/usr/src/man/man1m/mkdevalloc.1m
+++ /dev/null
@@ -1,82 +0,0 @@
-'\" te
-.\" Copyright 2001, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH MKDEVALLOC 1M "Mar 6, 2017"
-.SH NAME
-mkdevalloc \- Make device_allocate entries
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/mkdevalloc\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBmkdevalloc\fR command writes to standard out a set of
-\fBdevice_allocate\fR(4) entries describing the system's frame buffer, audio
-and removable media devices.
-.sp
-.LP
-The \fBmkdevalloc\fR command is used by the \fBinit.d\fR(4) scripts to create
-or update the \fB/etc/security/device_allocate\fR file.
-.sp
-.LP
-Entries are generated based on the device special files found in \fB/dev\fR.
-For the different categories of devices, the \fBmkdevalloc\fR command checks
-for the following files under \fB/dev\fR:
-.sp
-.in +2
-.nf
-audio /dev/audio, /dev/audioctl, /dev/sound/...
-tape /dev/rst*, /dev/nrst*, /dev/rmt/...
-floppy /dev/diskette, /dev/fd*, /dev/rdiskette, /dev/rfd*
-removable disk /dev/sr*, /dev/nsr*, /dev/dsk/c0t?d0s?, /dev/rdsk/c0t?d0s?
-frame buffer /dev/fb
-.fi
-.in -2
-
-.sp
-.LP
-All entries set the \fIdevice-minimum\fR and \fIdevice-maximum\fR fields to the
-hex representations of \fBADMIN_LOW\fR and \fBADMIN_HIGH\fR, respectively. The
-\fIdevice-authorization\fR field is set to \fBsolaris.device.allocate\fR,
-except for the \fBframebuffer\fR entry, where it is set to \fB*\fR. The
-\fIdevice-name\fR, \fIdevice-type\fR and \fIdevice-clean\fR fields are set to
-the following values:
-.sp
-.in +2
-.nf
- device-name device-type device-clean
-
-audio audio audio audio_clean_wrapper
-tape mag_tape_0,1,... st st_clean
-floppy floppy_0,1,... fd disk_clean
-removable disk cdrom_0,1,... sr disk_clean
-frame buffer framebuffer fb /bin/true
-.fi
-.in -2
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Obsolete
-.TE
-
-.SH SEE ALSO
-.LP
-\fBallocate\fR(1), \fBattributes\fR(5)
-.SH NOTES
-.LP
-\fBmkdevalloc\fR might not be supported in a future release of the Solaris
-operating system.
diff --git a/usr/src/man/man1m/mkdevmaps.1m b/usr/src/man/man1m/mkdevmaps.1m
deleted file mode 100644
index 8479147cf9..0000000000
--- a/usr/src/man/man1m/mkdevmaps.1m
+++ /dev/null
@@ -1,61 +0,0 @@
-'\" te
-.\" Copyright 2001, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH MKDEVMAPS 1M "Mar 6, 2017"
-.SH NAME
-mkdevmaps \- make device_maps entries
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/mkdevmaps\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBmkdevmaps\fR command writes to standard out a set of
-\fBdevice_maps\fR(4) entries describing the system's frame buffer, audio, and
-removable media devices.
-.sp
-.LP
-The \fBmkdevmaps\fR command is used by the \fBinit.d\fR(4) scripts to create or
-update the \fB/etc/security/device_maps\fR file.
-.sp
-.LP
-Entries are generated based on the device special files found in \fB/dev\fR.
-For the different categories of devices, the \fBmkdevmaps\fR command checks for
-the following files under \fB/dev\fR:
-.sp
-.in +2
-.nf
-audio /dev/audio, /dev/audioctl, /dev/sound/...
-tape /dev/rst*, /dev/nrst*, /dev/rmt/...
-floppy /dev/diskette, /dev/fd*, /dev/rdiskette, /dev/rfd*
-removable disk /dev/dsk/c0t?d0s?, /dev/rdsk/c0t?d0s?
-frame buffer /dev/fb
-.fi
-.in -2
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Obsolete
-.TE
-
-.SH SEE ALSO
-.LP
-\fBallocate\fR(1), \fBattributes\fR(5)
-.SH NOTES
-.LP
-\fBmkdevmaps\fR might not be supported in a future release of the Solaris
-operating system.
diff --git a/usr/src/man/man1m/mkfifo.1m b/usr/src/man/man1m/mkfifo.1m
deleted file mode 100644
index bbfa415651..0000000000
--- a/usr/src/man/man1m/mkfifo.1m
+++ /dev/null
@@ -1,167 +0,0 @@
-.\"
-.\" Sun Microsystems, Inc. gratefully acknowledges The Open Group for
-.\" permission to reproduce portions of its copyrighted documentation.
-.\" Original documentation from The Open Group can be obtained online at
-.\" http://www.opengroup.org/bookstore/.
-.\"
-.\" The Institute of Electrical and Electronics Engineers and The Open
-.\" Group, have given us permission to reprint portions of their
-.\" documentation.
-.\"
-.\" In the following statement, the phrase ``this text'' refers to portions
-.\" of the system documentation.
-.\"
-.\" Portions of this text are reprinted and reproduced in electronic form
-.\" in the SunOS Reference Manual, from IEEE Std 1003.1, 2004 Edition,
-.\" Standard for Information Technology -- Portable Operating System
-.\" Interface (POSIX), The Open Group Base Specifications Issue 6,
-.\" Copyright (C) 2001-2004 by the Institute of Electrical and Electronics
-.\" Engineers, Inc and The Open Group. In the event of any discrepancy
-.\" between these versions and the original IEEE and The Open Group
-.\" Standard, the original IEEE and The Open Group Standard is the referee
-.\" document. The original Standard can be obtained online at
-.\" http://www.opengroup.org/unix/online.html.
-.\"
-.\" This notice shall appear on any product containing this material.
-.\"
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.\"
-.\"
-.\" Copyright 1989 AT&T
-.\" Copyright (c) 1992, X/Open Company Limited All Rights Reserved
-.\" Portions Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
-.\"
-.TH MKFIFO 1M "Jun 24, 2020"
-.SH NAME
-mkfifo \- make FIFO special file
-.SH SYNOPSIS
-.nf
-\fB/usr/bin/mkfifo\fR [\fB-m\fR \fImode\fR] \fIfile\fR...
-.fi
-
-.SS "ksh93"
-.nf
-mkfifo [ \fIoptions\fR ] \fIfile\fR...
-.fi
-
-.SH DESCRIPTION
-.SS "/usr/bin/mkfifo"
-The \fBmkfifo\fR utility creates the \fBFIFO\fR special files named by its
-argument list. The arguments are taken sequentially, in the order specified;
-and each \fBFIFO\fR special file is either created completely or, in the case
-of an error or signal, not created at all.
-.sp
-.LP
-If errors are encountered in creating one of the special files, \fBmkfifo\fR
-writes a diagnostic message to standard error and continues with the
-remaining arguments, if any.
-.sp
-.LP
-The \fBmkfifo\fR utility calls the library routine \fBmkfifo\fR(3C), with a
-\fIpath\fR argument equivalent to the \fIfile\fR argument from the command line,
-and \fImode\fR is set to the equivalent of \fBa=rw\fR, modified by the current
-value of the file mode creation mask \fBumask\fR(1).
-.SS "ksh93"
-The \fBmkfifo\fR utility creates one or more \fBFIFO\fRs. By default, the mode
-of the created FIFO is \fBa=rw\fR minus the bits set in \fBumask\fR(1).
-.SH OPTIONS
-.SS "/usr/bin/mkfifo"
-The following option is supported for \fB/usr/bin/mkfifo\fR:
-.sp
-.ne 2
-.na
-\fB\fB-m\fR \fImode\fR\fR
-.ad
-.RS 11n
-Set the file permission bits of the newly-created \fBFIFO\fR to the specified
-\fImode\fR value. The \fImode\fR option-argument will be the same as the
-\fImode\fR operand defined for the \fBchmod\fR(1) command. For a
-symbolic mode option-argument, the \fIop\fR characters \fB+\fR and \fB\(mi\fR
-will be interpreted relative to an assumed initial mode of \fBa=rw\fR.
-.RE
-
-.SS "ksh93"
-The following option is supported for \fBksh93\fR:
-.sp
-.ne 2
-.na
-\fB\fB-m\fR \fImode\fR\fR
-.ad
-.br
-.na
-\fB\fB--mode=\fR\fImode\fR\fR
-.ad
-.RS 15n
-Set the mode of the created FIFO to \fImode\fR. The \fImode\fR option-argument
-is a symbolic or octal mode as in \fBchmod\fR(1). Relative modes assume an
-initial mode of \fBa=rw\fR.
-.RE
-
-.SH OPERANDS
-The following operand is supported:
-.sp
-.ne 2
-.na
-\fB\fIfile\fR\fR
-.ad
-.RS 8n
-A path name of the \fBFIFO\fR special file to be created.
-.RE
-
-.SH USAGE
-See \fBlargefile\fR(5) for the description of the behavior of \fBmkfifo\fR when
-encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
-.SH ENVIRONMENT VARIABLES
-See \fBenviron\fR(5) for descriptions of the following environment variables
-that affect the execution of \fBmkfifo\fR: \fBLANG\fR, \fBLC_ALL\fR,
-\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
-.SH EXIT STATUS
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 6n
-All the specified \fBFIFO\fR special files were created successfully.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB>0\fR\fR
-.ad
-.RS 6n
-An error occurred.
-.RE
-
-.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Standard
-.TE
-
-.SH SEE ALSO
-\fBchmod\fR(1), \fBumask\fR(1), \fBmkfifo\fR(3C), \fBattributes\fR(5),
-\fBenviron\fR(5), \fBlargefile\fR(5), \fBstandards\fR(5)
diff --git a/usr/src/man/man1m/mkfile.1m b/usr/src/man/man1m/mkfile.1m
deleted file mode 100644
index 227c3db2a5..0000000000
--- a/usr/src/man/man1m/mkfile.1m
+++ /dev/null
@@ -1,92 +0,0 @@
-'\" te
-.\" Copyright (c) 2001, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH MKFILE 1M "Feb 20, 2008"
-.SH NAME
-mkfile \- create a file
-.SH SYNOPSIS
-.LP
-.nf
-\fBmkfile\fR [\fB-nv\fR] \fIsize\fR [g | k | b | m] \fIfilename\fR...
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBmkfile\fR creates one or more files that are suitable for use as
-\fBNFS-mounted\fR swap areas, or as local swap areas. When a root user executes
-\fBmkfile()\fR, the sticky bit is set and the file is padded with zeros by
-default. When non-root users execute \fBmkfile()\fR, they must manually set
-the sticky bit using \fBchmod\fR(1). The default \fBsize\fR is in bytes, but
-it can be flagged as gigabytes, kilobytes, blocks, or megabytes, with the
-\fBg\fR, \fBk\fR, \fBb\fR, or \fBm\fR suffixes, respectively.
-.SH OPTIONS
-.sp
-.ne 2
-.na
-\fB\fB-n\fR\fR
-.ad
-.RS 6n
-Create an empty \fIfilename\fR. The size is noted, but disk blocks are not
-allocated until data is written to them. Files created with this option cannot
-be swapped over local UFS mounts.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.RS 6n
-Verbose. Report the names and sizes of created files.
-.RE
-
-.SH EXIT STATUS
-.sp
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 6n
-Success.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB>0\fR\fR
-.ad
-.RS 6n
-An error occurred.
-.RE
-
-.SH USAGE
-.sp
-.LP
-See \fBlargefile\fR(5) for the description of the behavior of \fBmkfile\fR when
-encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Committed
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBchmod\fR(1), \fBswap\fR(1M), \fBattributes\fR(5), \fBlargefile\fR(5)
diff --git a/usr/src/man/man1m/mkfs.1m b/usr/src/man/man1m/mkfs.1m
deleted file mode 100644
index 586378219e..0000000000
--- a/usr/src/man/man1m/mkfs.1m
+++ /dev/null
@@ -1,138 +0,0 @@
-'\" te
-.\" Copyright (c) 2000, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH MKFS 1M "Nov 17, 2000"
-.SH NAME
-mkfs \- construct a file system
-.SH SYNOPSIS
-.LP
-.nf
-\fBmkfs\fR [\fB-F\fR \fIFSType\fR] [\fIgeneric_options\fR]
- [\fB-o\fR \fIFSType-specific_options\fR] \fIraw_device_file\fR
- [\fIoperands\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBmkfs\fR utility constructs a file system on the \fIraw_device_file\fR by
-calling the specific \fBmkfs\fR module indicated by \fB-F\fR\fI
-FSType\fR\fB\&.\fR
-.sp
-.LP
-\fBNote\fR: ufs file systems are normally created with the \fBnewfs\fR(1M)
-command.
-.sp
-.LP
-\fIgeneric_options\fR are independent of file system type.
-\fIFSType-specific_options\fR is a comma-separated list of
-\fIkeyword\fR=\fIvalue\fR pairs (with no intervening spaces), which are
-\fIFSType\fR-specific. \fIraw_device_file\fR specifies the disk partition on
-which to write the file system. It is required and must be the first argument
-following the \fIspecific_options\fR (if any). \fIoperands\fR are
-\fIFSType\fR-specific. See the \fIFSType\fR-specific manual page of \fBmkfs\fR
-(for example, \fBmkfs_ufs \fR(1M)) for a detailed description.
-.SH OPTIONS
-.sp
-.LP
-The following are the generic options for \fBmkfs\fR:
-.sp
-.ne 2
-.na
-\fB\fB-F\fR\fR
-.ad
-.RS 6n
-Specify the \fIFSType\fR to be constructed. If \fB-F\fR is not specified, the
-\fIFSType\fR is determined from \fB/etc/vfstab\fR by matching the
-\fIraw_device_file\fR with a \fBvfstab\fR entry, or by consulting the
-\fB/etc/default/fs\fR file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-V\fR\fR
-.ad
-.RS 6n
-Echo the complete command line, but do not execute the command. The command
-line is generated by using the options and arguments provided and adding to
-them information derived from \fB/etc/vfstab\fR or \fB/etc/default/fs\fR.
-This option may be used to verify and validate the command line.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-m\fR\fR
-.ad
-.RS 6n
-Return the command line which was used to create the file system. The file
-system must already exist. This option provides a means of determining the
-command used in constructing the file system.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-o\fR\fR
-.ad
-.RS 6n
-Specify \fIFSType\fR-specific options. See the manual page for the \fBmkfs\fR
-module specific to the file system type.
-.RE
-
-.SH USAGE
-.sp
-.LP
-See \fBlargefile\fR(5) for the description of the behavior of \fBmkfs\fR when
-encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/default/fs\fR\fR
-.ad
-.RS 19n
-Default file system type. Default values can be set for the following flags in
-\fB/etc/default/fs\fR. For example: \fBLOCAL=ufs\fR
-.sp
-.ne 2
-.na
-\fB\fBLOCAL\fR\fR
-.ad
-.RS 9n
-The default partition for a command if no \fIFSType\fR is specified.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/vfstab\fR\fR
-.ad
-.RS 19n
-List of default parameters for each file system
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBmkfs_ufs\fR(1M), \fBnewfs\fR(1M), \fBvfstab\fR(4), \fBattributes\fR(5),
-\fBlargefile\fR(5)
-.sp
-.LP
-Manual pages for the \fIFSType\fR-specific modules of \fBmkfs\fR.
-.SH NOTES
-.sp
-.LP
-This command might not be supported for all \fIFSType\fRs.
-.sp
-.LP
-You can use \fBlofiadm\fR to create a file that appears to a \fBmkfs\fR command
-as a raw device. You can then use a \fBmkfs\fR command to create a file system
-on that device. See \fBlofiadm\fR(1M) for examples of creating a UFS and a PC
-(FAT) file system (using \fBmkfs_ufs\fR(1M) and \fBmkfs_pcfs\fR(1M)) on a
-device created by \fBlofiadm\fR.
diff --git a/usr/src/man/man1m/mkfs_pcfs.1m b/usr/src/man/man1m/mkfs_pcfs.1m
deleted file mode 100644
index 7a82df10c7..0000000000
--- a/usr/src/man/man1m/mkfs_pcfs.1m
+++ /dev/null
@@ -1,375 +0,0 @@
-'\" te
-.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH MKFS_PCFS 1M "Dec 1, 2003"
-.SH NAME
-mkfs_pcfs \- construct a FAT file system
-.SH SYNOPSIS
-.LP
-.nf
-\fBmkfs\fR \fB-F\fR pcfs [\fIgeneric_options\fR] [\fB-o\fR \fIFSType_specific_options\fR] \fIraw_device_file\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBpcfs\fR-specific module of \fBmkfs\fR constructs a File Allocation Table
-(\fBFAT\fR) on removable media (diskette, JAZ disk, ZIP disk, PCMCIA card), a
-hard disk, or a file (see NOTES). \fBFAT\fRs are the standard \fBMS-DOS\fR and
-Windows file system format. Note that you can use \fBfdformat\fR(1) to
-construct a FAT file system only on a diskette or PCMCIA card.
-.sp
-.LP
-\fBmkfs\fR for \fBpcfs\fR determines an appropriate \fBFAT\fR size for the
-medium, then it installs an initial boot sector and an empty \fBFAT\fR. A
-sector size of 512 bytes is used. \fBmkfs\fR for \fBpcfs\fR can also install
-the initial file in the file system (see the \fBpcfs\fR-specific \fB-o i\fR
-option). This first file can optionally be marked as read-only, system, and/or
-hidden.
-.sp
-.LP
-If you want to construct a FAT with \fBmkfs\fR for \fBpcfs\fR on a medium that
-is not formatted, you must first perform a low-level format on the medium with
-\fBfdformat\fR(1) or \fBformat\fR(1M). Non-diskette media must also be
-partitioned with the \fBfdisk\fR(1M) utility. Note that all existing data on
-the diskette or disk partition, if any, is destroyed when a new \fBFAT\fR is
-constructed.
-.sp
-.LP
-\fIgeneric_options\fR are supported by the generic \fBmkfs\fR command. See
-\fBmkfs\fR(1M) for a description of these options.
-.sp
-.LP
-\fIraw_device_file\fR indicates the device on which to write unless the \fB-o
-N\fR option has been specified, or if the \fB-V\fR or \fB-m\fR generic options
-are passed from the generic \fBmkfs\fR module.
-.SH OPTIONS
-.sp
-.LP
-See \fBmkfs\fR(1M) for the list of supported generic options.
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-o\fR \fIFSType_specific_options\fR\fR
-.ad
-.RS 30n
-Specify \fBpcfs\fR file system-specific options in a comma-separated list with
-no intervening spaces. If invalid options are specified, a warning message is
-printed and the invalid options are ignored.
-.sp
-.ne 2
-.na
-\fBb=\fIlabel\fR\fR
-.ad
-.RS 14n
-Label the media with volume label. The volume label is restricted to 11
-uppercase characters.
-.RE
-
-.sp
-.ne 2
-.na
-\fBB=\fIfilename\fR\fR
-.ad
-.RS 14n
-Install \fIfilename\fR as the boot loader in the file system's boot sector. If
-you don't specify a boot loader, an \fBMS-DOS\fR boot loader is installed. The
-\fBMS-DOS\fR boot loader requires specific \fBMS-DOS\fR system files to make
-the diskette bootable. See \fBNOTES\fR for more information.
-.RE
-
-.sp
-.ne 2
-.na
-\fBfat=\fIn\fR\fR
-.ad
-.RS 14n
-The size of a \fBFAT\fR entry. Currently, 12, 16, and 32 are valid values. The
-default is 12 for diskettes, 16 for larger media.
-.RE
-
-.sp
-.ne 2
-.na
-\fBh\fR
-.ad
-.RS 14n
-Mark the first file installed as a hidden file. The \fB-i\fR option must also
-be specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fBhidden=\fIn\fR\fR
-.ad
-.RS 14n
-Set the number of hidden sectors to \fIn\fR. This is the number of sectors on
-the physical disk preceding the start of the volume (which is the boot sector
-itself). This defaults to 0 for diskettes or a computed valued (based on the
-fdisk table) for disks. This option may be used only in conjunction with the
-\fBnofdisk\fR option.
-.RE
-
-.sp
-.ne 2
-.na
-\fBi=\fIfilename\fR\fR
-.ad
-.RS 14n
-Install \fIfilename\fR as the initial file in the new file system. The initial
-file's contents are guaranteed to occupy consecutive clusters at the start of
-the files area. When creating bootable media, a boot program should be
-specified as the initial file.
-.RE
-
-.sp
-.ne 2
-.na
-\fBnofdisk\fR
-.ad
-.RS 14n
-Do not attempt to find an \fBfdisk\fR table on the medium. Instead rely on the
-\fBsize\fR option for determining the partition size. By default, the created
-\fBFAT\fR is 16 bits and begins at the first sector of the device. This
-origination sector can be modified with the hidden option (\fB-h\fR).
-.RE
-
-.sp
-.ne 2
-.na
-\fBnsect=\fIn\fR\fR
-.ad
-.RS 14n
-The number of sectors per track on the disk. If not specified, the value is
-determined by using a \fBdkio\fR(7I) ioctl to get the disk geometry, or (for
-diskette) from the results of an \fBFDIOGCHAR\fR ioctl.
-.RE
-
-.sp
-.ne 2
-.na
-\fBntrack=\fIn\fR\fR
-.ad
-.RS 14n
-The number of tracks per cylinder on the disk. If not specified, the value is
-determined by using a \fBdkio\fR(7I) ioctl to get the disk geometry, or (for
-diskette) from the results of an \fBFDIOGCHAR\fR ioctl.
-.RE
-
-.sp
-.ne 2
-.na
-\fBN\fR
-.ad
-.RS 14n
-No execution mode. Print normal output, but do not actually write the file
-system to the medium. This is most useful when used in conjunction with the
-verbose option.
-.RE
-
-.sp
-.ne 2
-.na
-\fBr\fR
-.ad
-.RS 14n
-Mark the first file installed as read-only. The \fB-i\fR option must also be
-specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fBreserve=\fIn\fR\fR
-.ad
-.RS 14n
-Set the number of reserved sectors to \fIn\fR. This is the number of sectors in
-the volume, preceding the start of the first \fBFAT\fR, including the boot
-sector. The value should always be at least 1, and the default value is exactly
-1.
-.RE
-
-.sp
-.ne 2
-.na
-\fBs\fR
-.ad
-.RS 14n
-Mark the first file installed as a system file. The \fB-i\fR option must also
-be specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fBsize=\fIn\fR\fR
-.ad
-.RS 14n
-The number of sectors in the file system. If not specified, the value is
-determined from the size of the partition given in the fdisk table or (for
-diskette) by way of computation using the \fBFDIOGCHAR\fR ioctl.
-.RE
-
-.sp
-.ne 2
-.na
-\fBspc=\fIn\fR\fR
-.ad
-.RS 14n
-The size of the allocation unit for space within the file system, expressed as
-a number of sectors. The default value depends on the \fBFAT\fR entry size and
-the size of the file system.
-.RE
-
-.sp
-.ne 2
-.na
-\fBv\fR
-.ad
-.RS 14n
-Verbose output. Describe, in detail, operations being performed.
-.RE
-
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fIraw_device_file\fR\fR
-.ad
-.RS 19n
-The device on which to build the \fBFAT\fR. The device name for a diskette must
-be specified as \fB/dev/rdiskette0\fR for the first diskette drive, or
-\fB/dev/rdiskette1\fR for a second diskette drive. For non-diskette media, a
-disk device name must be qualified with a suffix to indicate the proper
-partition. For example, in the name \fB/dev/rdsk/c0t0d0p0:c\fR, the \fB:c\fR
-suffix indicates that the first partition on the disk should receive the new
-\fBFAT\fR.
-.sp
-For a file, \fIraw_device_file\fR is the block device name returned by
-\fBlofiadm\fR(1M).
-.RE
-
-.SH EXAMPLES
-.sp
-.LP
-The media in these examples must be formatted before running \fBmkfs\fR for
-\fBpcfs\fR. See DESCRIPTION for more details.
-.LP
-\fBExample 1 \fRCreating a FAT File System on a Diskette
-.sp
-.LP
-The following command creates a \fBFAT\fR file system on a diskette:
-
-.sp
-.in +2
-.nf
-mkfs -F pcfs /dev/rdiskette
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRCreating a FAT File System on a Disk
-.sp
-.LP
-The following command creates a \fBFAT\fR file system on the second fdisk
-partition of a disk attached to an x86 based system:
-
-.sp
-.in +2
-.nf
-mkfs -F pcfs /dev/rdsk/c0d0p0:d
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRCreating a FAT File System on a ZIP Disk
-.sp
-.LP
-The following command creates a \fBFAT\fR file system on a ZIP disk located on
-a SPARC based system:
-
-.sp
-.in +2
-.nf
-mkfs -F pcfs /dev/rdsk/c0t4d0s2:c
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 4 \fRCreating a FAT File System on a JAZ Disk
-.sp
-.LP
-The following command creates a \fBFAT\fR file system on a JAZ disk located on
-a SPARC based system and overrides the sectors/track and tracks/cylinder values
-obtained from the device's controller:
-
-.sp
-.in +2
-.nf
-mkfs -F pcfs -o nsect=32,ntrack=64 /dev/rdsk/c0t3d0s2:c
-.fi
-.in -2
-.sp
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Stable
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBfdformat\fR(1), \fBfdisk\fR(1M), \fBformat\fR(1M), \fBlofiadm\fR(1M),
-\fBmkfs\fR(1M), \fBattributes\fR(5), \fBfd\fR(7D), \fBdkio\fR(7I),
-\fBfdio\fR(7I)
-.SH NOTES
-.sp
-.LP
-The default \fBMS-DOS\fR boot loader, which is installed by default if \fB-o
-B\fR is not specified, requires specific \fBMS-DOS\fR system files to make the
-diskette bootable. These \fBMS-DOS\fR files are not installed when you format a
-diskette with \fBmkfs\fR for \fBpcfs\fR, which makes a diskette formatted this
-way not bootable. Trying to boot from it on an x86 based system will result in
-the following message:
-.sp
-.in +2
-.nf
-Non-System disk or disk error
-Replace and strike any key when ready
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-You must format a diskette with the \fBDOS\fR \fBformat\fR command to install
-the specific \fBMS-DOS\fR system files required by the default boot loader.
-.sp
-.LP
-You can use \fBlofiadm\fR to create a file that appears to a \fBmkfs\fR command
-(for example, \fBmkfs_pcfs\fR or \fBmkfs_ufs\fR) as a raw device. You can then
-use a \fBmkfs\fR command to create a file system on that device. See
-\fBlofiadm\fR(1M) for examples of creating a UFS and a PC (FAT) file system on
-a device created by \fBlofiadm\fR.
diff --git a/usr/src/man/man1m/mkfs_udfs.1m b/usr/src/man/man1m/mkfs_udfs.1m
deleted file mode 100644
index 7d07715ca1..0000000000
--- a/usr/src/man/man1m/mkfs_udfs.1m
+++ /dev/null
@@ -1,187 +0,0 @@
-'\" te
-.\" Copyright (c) 2000 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH MKFS_UDFS 1M "Nov 17, 2000"
-.SH NAME
-mkfs_udfs \- construct a udfs file system
-.SH SYNOPSIS
-.LP
-.nf
-\fBmkfs\fR \fB-F udfs\fR [\fIgeneric_options\fR] [\fB-o\fR \fIspecific_options\fR] \fIraw_device_file\fR
- [\fIsize\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-This is the universal disk format file system (\fBudfs\fR) -specific module of
-the \fBmkfs\fR command. \fBmkfs\fR constructs a \fBudfs\fR file system with a
-root directory.
-.SH OPTIONS
-.sp
-.LP
-See \fBmkfs\fR(1M) for the list of supported \fIgeneric_options\fR.
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-o\fR \fIspecific_options\fR\fR
-.ad
-.RS 23n
-Specify a \fBudfs\fR-specific option. Specify \fBudfs\fR file system specific
-options in a comma-separated list with no intervening spaces. If invalid
-options are specified, a warning message is printed and the invalid options are
-ignored.
-.sp
-The following \fIspecific_options\fR are available:
-.sp
-.ne 2
-.na
-\fBN\fR
-.ad
-.RS 16n
-Print the file system parameters without actually creating the file system.
-.RE
-
-.sp
-.ne 2
-.na
-\fBlabel=\fIstring\fR\fR
-.ad
-.RS 16n
-Specify the label to be written into the volume header structures. Specify
-\fIstring\fR as the name of the label. If \fIstring\fR is not specified, a
-default \fIstring\fR is generated in the form of \fB*NoLabel*\fR.
-.RE
-
-.RE
-
-.SH OPERANDS
-.sp
-.LP
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fB\fIraw_device_file\fR\fR
-.ad
-.RS 19n
- Specify the disk partition on which to write.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIsize\fR\fR
-.ad
-.RS 19n
-Specify the number of 512-byte blocks in the file system.
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBfsck\fR(1M), \fBmkfs\fR(1M), \fBattributes\fR(5)
-.SH DIAGNOSTICS
-.sp
-.in +2
-.nf
-not currently a valid file system
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The specified device does not contain a valid \fBudfs\fR file system.
-.sp
-.in +2
-.nf
-Invalid size: larger than the partition size
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Number of blocks given as parameter to create the file system is larger than
-the size of the device specified.
-.sp
-.in +2
-.nf
-is mounted can't mkfs
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Device is in use, cannot create file system when the device is in use.
-.sp
-.in +2
-.nf
-preposterous size
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Negative size parameter provided is invalid.
-.sp
-.in +2
-.nf
-sector size must be between 512, 8192 bytes
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Sector size given is not in the valid range.
-.sp
-.in +2
-.nf
-Volume integrity sequence descriptors too long
-File set descriptor too long.
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Not enough space to create volume integrity sequence or file set descriptor.
-.sp
-.in +2
-.nf
-mkfs: argument out of range
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-One of the arguments is out of range.
-.sp
-.in +2
-.nf
-mkfs: bad numeric arg
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-One of the arguments is potentially a bad numeric.
-.SH NOTES
-.sp
-.LP
-You can use \fBlofiadm\fR to create a file that appears to a \fBmkfs\fR command
-(for example, \fBmkfs_pcfs\fR or \fBmkfs_ufs\fR) as a raw device. You can then
-use a \fBmkfs\fR command to create a file system on that device. See
-\fBlofiadm\fR(1M) for examples of creating a UFS and a PC (FAT) file system on
-a device created by \fBlofiadm\fR.
diff --git a/usr/src/man/man1m/mkfs_ufs.1m b/usr/src/man/man1m/mkfs_ufs.1m
deleted file mode 100644
index 9c10e6bcb5..0000000000
--- a/usr/src/man/man1m/mkfs_ufs.1m
+++ /dev/null
@@ -1,407 +0,0 @@
-'\" te
-.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH MKFS_UFS 1M "Mar 8, 2006"
-.SH NAME
-mkfs_ufs \- construct a UFS file system
-.SH SYNOPSIS
-.LP
-.nf
-\fBmkfs\fR \fB-F\fR ufs [\fIgeneric_options\fR] [\fB-o\fR \fIFSType_specific_options\fR] \fIraw_device_file\fR
- [\fIsize\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The UFS-specific module of \fBmkfs\fR builds a UFS file system with a root
-directory and a \fBlost+found\fR directory (see \fBfsck\fR(1M)).
-.sp
-.LP
-The UFS-specific \fBmkfs\fR is rarely run directly. Use the \fBnewfs\fR(1M)
-command instead.
-.sp
-.LP
-\fIraw_device_file\fR indicates the disk partition on which to create the new
-file system. If the \fB-o\fR \fBN\fR, \fB-V\fR, or \fB-m\fR options are
-specified, the \fIraw_device_file\fR is not actually modified. \fIsize\fR
-specifies the number of disk sectors in the file system, where a disk sector is
-usually 512 bytes. This argument must follow the \fIraw_device_file\fR argument
-and is required (even with \fB\fR\fB-o\fR\fB N\fR), unless the \fB-V\fR or
-\fB-m\fR generic options are specified.
-.sp
-.LP
-\fIgeneric_options\fR are supported by the generic \fBmkfs\fR command. See
-\fBmkfs\fR(1M) for a description of these options.
-.SH OPTIONS
-.sp
-.LP
-The following generic options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-m\fR\fR
-.ad
-.RS 6n
-Print the command line that was used to create the existing file system.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-V\fR\fR
-.ad
-.RS 6n
-Print the current \fBmkfs\fR command line.
-.RE
-
-.SH OPTIONS
-.sp
-.LP
-The following UFS-specific options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-o\fR\fR
-.ad
-.RS 6n
-Use one or more of the following values separated by commas (with no
-intervening spaces) to specify UFS-specific options:
-.sp
-.ne 2
-.na
-\fB\fBapc=\fR\fIn\fR\fR
-.ad
-.RS 15n
-The number of alternate sectors per cylinder to reserve for bad block
-replacement for SCSI devices only. The default is \fB0\fR.
-.sp
-This option is not applicable for disks with EFI labels and is ignored.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBbsize=\fR\fIn\fR\fR
-.ad
-.RS 15n
-The logical block size of the file system in bytes, either \fB4096\fR or
-\fB8192\fR. The default is \fB8192\fR. The sun4u architecture does not support
-the \fB4096\fR block size.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcalcbinsb\fR\fR
-.ad
-.RS 15n
-Sends to stdout a binary (machine-readable) version of the superblock that
-would be used to create a file system with the specified configuration
-parameters.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcalcsb\fR\fR
-.ad
-.RS 15n
-Sends to stdout a human-readable version of the superblock that would be used
-to create a file system with the specified configuration parameters.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcgsize=\fR\fIn\fR\fR
-.ad
-.RS 15n
-The number of cylinders per cylinder group, ranging from \fB16\fR to \fB256\fR.
-The default is calculated by dividing the number of sectors in the file system
-by the number of sectors in a gigabyte. Then, the result is multiplied by
-\fB32\fR. The default value is always between \fB16\fR and \fB256\fR.
-.sp
-The per-cylinder-group meta data must fit in a space no larger than what is
-available in one logical file system block. If too large a \fBcgsize\fR is
-requested, it is changed by the minimum amount necessary.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfragsize=\fR\fIn\fR\fR
-.ad
-.RS 15n
-The smallest amount of disk space in bytes that can be allocated to a file.
-\fBfragsize\fR must be a power of 2 divisor of \fBbsize\fR, where:
-.sp
-\fBbsize\fR / \fBfragsize\fR is 1, 2, 4, or 8.
-.sp
-This means that if the logical block size is \fB4096\fR, legal values for
-\fBfragsize\fR are \fB512\fR, \fB1024\fR, \fB2048\fR, and \fB4096\fR. When the
-logical block size is \fB8192\fR, legal values are \fB1024\fR, \fB2048\fR,
-\fB4096\fR, and \fB8192\fR. The default value is \fB1024\fR.
-.sp
-For file systems greater than 1 terabyte or for file systems created with the
-\fBmtb=y\fR option, \fBfragsize\fR is forced to match block size (\fBbsize\fR).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfree=\fR\fIn\fR\fR
-.ad
-.RS 15n
-The minimum percentage of free space to maintain in the file system between 0%
-and 99%, inclusively. This space is off-limits to users. Once the file system
-is filled to this threshold, only the superuser can continue writing to the
-file system.
-.sp
-The default is ((64 Mbytes/partition size) * 100), rounded down to the nearest
-integer and limited between 1% and 10%, inclusively.
-.sp
-This parameter can be subsequently changed using the \fBtunefs\fR(1M) command.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBgap=\fR\fIn\fR\fR
-.ad
-.RS 15n
-Rotational delay. This option is obsolete in the Solaris 10 release. The value
-is always set to \fB0\fR, regardless of the input value.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmaxcontig=\fR\fIn\fR\fR
-.ad
-.RS 15n
-The maximum number of logical blocks, belonging to one file, that are allocated
-contiguously. The default is calculated as follows:
-.sp
-.in +2
-.nf
-\fBmaxcontig =\fR \fIdisk drive maximum transfer size / disk block size\fR
-.fi
-.in -2
-.sp
-
-If the disk drive's maximum transfer size cannot be determined, the default
-value for \fBmaxcontig\fR is calculated from kernel parameters as follows:
-.sp
-If \fBmaxphys\fR is less than \fBufs_maxmaxphys\fR, which is typically 1 Mbyte,
-then \fBmaxcontig\fR is set to \fBmaxphys\fR. Otherwise, \fBmaxcontig\fR is set
-to \fBufs_maxmaxphys\fR.
-.sp
-You can set \fBmaxcontig\fR to any positive integer value.
-.sp
-The actual value will be the lesser of what has been specified and what the
-hardware supports.
-.sp
-You can subsequently change this parameter by using \fBtunefs\fR(1M).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmtb=y\fR\fR
-.ad
-.RS 15n
-Set the parameters of the file system to allow eventual growth to over a
-terabyte in total file system size. This option sets \fIfragsize\fR to be the
-same as \fIbsize\fR, and sets \fInbpi\fR to 1 Mbyte, unless the \fB-i\fR option
-is used to make it even larger. If you explicitly set the \fIfragsize\fR or
-\fInbpi\fR parameters to values that are incompatible with this option, the
-user-supplied value of \fIfragsize\fR or \fInbpi\fR is ignored.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBN\fR\fR
-.ad
-.RS 15n
-Print out the file system parameters that would be used to create the file
-system without actually creating the file system.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnbpi=\fR\fIn\fR\fR
-.ad
-.RS 15n
-The number of bytes per inode, which specifies the density of inodes in the
-file system. The number is divided into the total size of the file system to
-determine the number of inodes to create.
-.sp
-This value should reflect the expected average size of files in the file
-system. If fewer inodes are desired, a larger number should be used. To create
-more inodes, a smaller number should be given. The default is \fB2048\fR.
-.sp
-The number of inodes can increase if the file system is expanded with the
-\fBgrowfs\fR command.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnrpos=\fR\fIn\fR\fR
-.ad
-.RS 15n
-The number of different rotational positions in which to divide a cylinder
-group. The default is \fB8\fR.
-.sp
-This option is not applicable for disks with EFI labels and is ignored.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnsect=\fR\fIn\fR\fR
-.ad
-.RS 15n
-The number of sectors per track on the disk. The default is \fB32\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBntrack=\fR\fIn\fR\fR
-.ad
-.RS 15n
-The number of tracks per cylinder on the disk. The default is \fB16\fR.
-.sp
-This option is not applicable for disks with EFI labels and is ignored.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBopt=\fR\fIs\fR\||\|\fIt\fR\fR
-.ad
-.RS 15n
-The file system can either be instructed to try to minimize the \fBtime\fR
-spent allocating blocks, or to try to minimize the \fBspace\fR fragmentation on
-the disk. The default is \fItime\fR.
-.sp
-This parameter can be subsequently changed with the \fBtunefs\fR(1M) command.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrps=\fR\fIn\fR\fR
-.ad
-.RS 15n
-The rotational speed of the disk, in revolutions per second. The default is
-\fB60\fR.
-.sp
-Note that you specify \fIrps\fR for \fBmkfs\fR and \fIrpm\fR for \fBnewfs\fR.
-.sp
-This option is not applicable for disks with EFI labels and is ignored.
-.RE
-
-Alternatively, parameters can be entered as a list of space-separated values
-(without keywords) whose meaning is positional. In this case, the \fB-o\fR
-option is omitted and the list follows the size operand. This is the way
-\fBnewfs\fR passes the parameters to \fBmkfs\fR.
-.RE
-
-.SH OPERANDS
-.sp
-.LP
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fB\fIraw_device_file\fR\fR
-.ad
-.RS 19n
-The disk partition on which to write.
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBfsck\fR(1M), \fBmkfs\fR(1M), \fBnewfs\fR(1M), \fBtunefs\fR(1M),
-\fBdir_ufs\fR(4), \fBattributes\fR(5), \fBufs\fR(7FS)
-.SH DIAGNOSTICS
-.sp
-.LP
-The following error message typically occurs with very high density disks. On
-such disks, the file system structure cannot encode the proper disk layout
-information. However, such disks have enough onboard intelligence to make up
-for any layout deficiencies, so there is no actual impact on performance. The
-warning that performance might be impaired can be safely ignored.
-.sp
-.in +2
-.nf
-Warning: insufficient space in super block for
-rotational layout tables with nsect \fIsblock.fs_nsect\fR
-and ntrak \fIsblock.fs_ntrak\fR. (File system performance may be impaired.)
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The following error message occurs when the disk geometry results in a
-situation where the last truncated cylinder group cannot contain the correct
-number of data blocks. Some disk space is wasted.
-.sp
-.in +2
-.nf
-Warning: inode blocks/cyl group (\fIgrp\fR) >= data blocks (\fInum\fR) in last cylinder
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-If there is only one cylinder group and if the above condition holds true,
-\fBmkfs\fR fails with the following error:
-.sp
-.in +2
-.nf
-File system creation failed. There is only one cylinder group and that is
-not even big enough to hold the inodes.
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The following error message occurs when the best calculated file system layout
-is unable to include the last few sectors in the last cylinder group. This is
-due to the interaction between how much space is used for various pieces of
-meta data and the total blocks available in a cylinder group. Modifying
-\fBnbpi\fR and \fBcpg\fR might reduce this number, but it is rarely worth the
-effort.
-.sp
-.in +2
-.nf
-Warning: \fInum\fR sector(s) in last cylinder group unallocated
-.fi
-.in -2
-.sp
-
-.SH NOTES
-.sp
-.LP
-You can use \fBlofiadm\fR to create a file that appears to the \fBmkfs\fR
-command (for example, \fBmkfs_pcfs\fR or \fBmkfs_ufs\fR) as a raw device. You
-can then use the \fBmkfs\fR command to create a file system on that device. See
-\fBlofiadm\fR(1M) for examples of creating a \fBUFS\fR and a \fBPC\fR
-(\fBFAT\fR) file system on a device created by \fBlofiadm\fR.
-.sp
-.LP
-Both the block and character devices, such as devices in \fB/dev/dsk\fR and
-\fB/dev/rdsk\fR, must be available prior to running the \fBmkfs\fR command.
diff --git a/usr/src/man/man1m/mknod.1m b/usr/src/man/man1m/mknod.1m
deleted file mode 100644
index 11c599eec1..0000000000
--- a/usr/src/man/man1m/mknod.1m
+++ /dev/null
@@ -1,106 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 1996, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH MKNOD 1M "Sep 16, 1996"
-.SH NAME
-mknod \- make a special file
-.SH SYNOPSIS
-.LP
-.nf
-\fBmknod\fR \fIname\fR b \fImajor\fR \fIminor\fR
-.fi
-
-.LP
-.nf
-\fBmknod\fR \fIname\fR c \fImajor\fR \fIminor\fR
-.fi
-
-.LP
-.nf
-\fBmknod\fR \fIname\fR p
-.fi
-
-.SH DESCRIPTION
-.LP
-\fBmknod\fR makes a directory entry for a special file.
-.SH OPTIONS
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fBb\fR\fR
-.ad
-.RS 5n
-Create a block-type special file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBc\fR\fR
-.ad
-.RS 5n
-Create a character-type special file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBp\fR\fR
-.ad
-.RS 5n
-Create a FIFO (named pipe).
-.RE
-
-.SH OPERANDS
-.LP
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fB\fImajor\fR\fR
-.ad
-.RS 9n
-The \fImajor\fR device number.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIminor\fR\fR
-.ad
-.RS 9n
-The \fIminor\fR device number; can be either decimal or octal. The assignment
-of major device numbers is specific to each system. You must be the super-user
-to use this form of the command.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIname\fR\fR
-.ad
-.RS 9n
-A special file to be created.
-.RE
-
-.SH USAGE
-.LP
-See \fBlargefile\fR(5) for the description of the behavior of \fBmknod\fR when
-encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
-.SH SEE ALSO
-.LP
-\fBftp\fR(1), \fBmknod\fR(2), \fBsymlink\fR(2),
-\fBattributes\fR(5), \fBlargefile\fR(5)
-.SH NOTES
-.LP
-If \fBmknod\fR(2) is used to create a device, the major and minor device
-numbers are always interpreted by the kernel running on that machine.
-.sp
-.LP
-With the advent of physical device naming, it would be preferable to create a
-symbolic link to the physical name of the device (in the \fB/devices\fR
-subtree) rather than using \fBmknod\fR.
diff --git a/usr/src/man/man1m/mkpwdict.1m b/usr/src/man/man1m/mkpwdict.1m
deleted file mode 100644
index 8b896093b5..0000000000
--- a/usr/src/man/man1m/mkpwdict.1m
+++ /dev/null
@@ -1,97 +0,0 @@
-'\" te
-.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH MKPWDICT 1M "Jun 1, 2004"
-.SH NAME
-mkpwdict \- maintain password-strength checking database
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/mkpwdict\fR [\fB-s\fR \fIdict1\fR,... ,\fIdictN\fR]
- [\fB-d\fR \fIdestination-path\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBmkpwdict\fR command adds words to the dictionary-lookup database used by
-\fBpam_authtok_check\fR(5) and \fBpasswd\fR(1).
-.sp
-.LP
-Files containing words to be added to the database can be specified on the
-command-line using the \fB-s\fR flag. These source files should have a single
-word per line, much like \fB/usr/share/lib/dict/words\fR.
-.sp
-.LP
-If \fB-s\fR is omitted, \fBmkpwdict\fR will use the value of \fBDICTIONLIST\fR
-specified in \fB/etc/default/passwd\fR (see \fBpasswd\fR(1)).
-.sp
-.LP
-The database is created in the directory specified by the \fB-d\fR option. If
-this option is omitted, \fBmkpwdict\fR uses the value of \fBDICTIONDBDIR\fR
-specified in \fB/etc/default/passwd\fR (see \fBpasswd\fR(1)). The default
-location is \fB/var/passwd\fR.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-s\fR\fR
-.ad
-.RS 6n
-Specifies a comma-separated list of files containing words to be added to the
-dictionary-lookup database.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-d\fR\fR
-.ad
-.RS 6n
-Specifies the target location of the dictionary-database.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/default/passwd\fR\fR
-.ad
-.RS 23n
-See \fBpasswd\fR(1).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/passwd\fR\fR
-.ad
-.RS 23n
-default destination directory
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBpasswd\fR(1), \fBattributes\fR(5), \fBpam_authtok_check\fR(5)
diff --git a/usr/src/man/man1m/modinfo.1m b/usr/src/man/man1m/modinfo.1m
deleted file mode 100644
index c4c31d8ef0..0000000000
--- a/usr/src/man/man1m/modinfo.1m
+++ /dev/null
@@ -1,159 +0,0 @@
-'\" te
-.\" Copyright (C) 2002, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH MODINFO 1M "Oct 1, 2002"
-.SH NAME
-modinfo \- display information about loaded kernel modules
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/modinfo\fR [\fB-c\fR] [\fB-w\fR] [\fB-i\fR \fImodule-id\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBmodinfo\fR utility displays information about the loaded modules. The
-format of the information is as follows:
-.sp
-.in +2
-.nf
-\fIId\fR \fILoadaddr\fR \fISize\fR \fIInfo\fR \fIRev\fR \fIModule Name\fR
-.fi
-.in -2
-
-.sp
-.LP
-where \fIId\fR is the module ID, \fILoadaddr\fR is the starting text address in
-hexadecimal, \fISize\fR is the size of text, data, and bss in hexadecimal
-bytes, \fIInfo\fR is module specific information, \fIRev\fR is the revision of
-the loadable modules system, and \fIModule Name\fR is the filename and
-description of the module.
-.sp
-.LP
-The module specific information is the block and character major numbers for
-drivers, the system call number for system calls, and unspecified for other
-module types.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-c\fR\fR
-.ad
-.RS 16n
-Display the number of instances of the module loaded and the module's current
-state.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-i\fR\fI module-id\fR\fR
-.ad
-.RS 16n
-Display information about this module only.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-w\fR\fR
-.ad
-.RS 16n
-Do not truncate module information at \fB80\fR characters.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRDisplaying the Status of a Module
-.sp
-.LP
-The following example displays the status of module 2:
-
-.sp
-.in +2
-.nf
-example% \fBmodinfo -i 2\fR
-Id Loadaddr Size Info Rev Module Name
- 2 ff08e000 1734 - 1 swapgeneric (root and swap configuration)
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRDisplaying the Status of Kernel Modules
-.sp
-.LP
-The following example displays the status of some kernel modules:
-
-.sp
-.in +2
-.nf
-example% \fBmodinfo\fR
-Id Loadaddr Size Info Rev Module Name
- 2 ff08e000 1734 - 1 swapgeneric
- 4 ff07a000 3bc0 - 1 specfs (filesystem for specfs)
- 6 ff07dbc0 2918 - 1 TS (time sharing sched class)
- 7 ff0804d8 49c - 1 TS_DPTBL (Time sharing dispatch table)
- 8 ff04a000 24a30 2 1 ufs (filesystem for ufs)
- 9 ff080978 c640 226 1 rpcmod (RPC syscall)
- 9 ff080978 c640 - 1 rpcmod (rpc interface str mod)
-10 ff08cfb8 2031c - 1 ip (IP Streams module)
-10 ff08cfb8 2031c 2 1 ip (IP Streams device)
-
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRUsing the \fB-c\fR Option
-.sp
-.LP
-Using the \fBmodinfo\fR command with the \fB-c\fR option displays the number of
-instances of the module loaded and the module's current state.
-
-.sp
-.in +2
-.nf
-example% \fBmodinfo -c \fR
-Id Loadcnt Module Name State
- 1 0 krtld UNLOADED/UNINSTALLED
- 2 0 genunix UNLOADED/UNINSTALLED
- 3 0 platmod UNLOADED/UNINSTALLED
- 4 0 SUNW,UltraSPARC-IIi UNLOADED/UNINSTALLED
- 5 0 cl_bootstrap UNLOADED/UNINSTALLED
- 6 1 specfs LOADED/INSTALLED
- 7 1 swapgeneric UNLOADED/UNINSTALLED
- 8 1 TS LOADED/INSTALLED
- 9 1 TS_DPTBL LOADED/INSTALLED
- 10 1 ufs LOADED/INSTALLED
- 11 1 fssnap_if LOADED/INSTALLED
-.fi
-.in -2
-.sp
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBmodload\fR(1M), \fBmodunload\fR(1M), \fBattributes\fR(5)
diff --git a/usr/src/man/man1m/modload.1m b/usr/src/man/man1m/modload.1m
deleted file mode 100644
index c54e0b4550..0000000000
--- a/usr/src/man/man1m/modload.1m
+++ /dev/null
@@ -1,96 +0,0 @@
-'\" te
-.\" Copyright (c) 1993, Sun Microsystems, Inc.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH MODLOAD 1M "Dec 1, 1993"
-.SH NAME
-modload \- load a kernel module
-.SH SYNOPSIS
-.LP
-.nf
-\fBmodload\fR [\fB-p\fR] [\fB-e\fR \fIexec_file\fR] \fIfilename\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBmodload\fR command loads the loadable module \fIfilename\fR into the
-running system.
-.sp
-.LP
-\fIfilename\fR is an object file produced by \fBld \fR\fB-r\fR. If
-\fIfilename\fR is an absolute pathname then the file specified by that absolute
-path is loaded. If \fIfilename\fR does not begin with a slash (\fB/\fR), then
-the path to load \fIfilename\fR is relative to the current directory unless
-the \fB-p\fR option is specified.
-.sp
-.LP
-The kernel's \fBmodpath\fR variable can be set using the \fB/etc/system\fR
-file. The default value of the kernel's \fBmodpath\fR variable is set to the
-path where the operating system was loaded. Typically this is \fB/kernel
-/usr/kernel\fR.
-.sp
-.LP
-For example, the following command looks for \fB\&./drv/foo\fR:
-.sp
-.in +2
-.nf
-example# \fBmodload drv/foo\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The following command looks for \fB/kernel/drv/foo\fR and then
-\fB/usr/kernel/drv/foo\fR:
-.sp
-.in +2
-.nf
-example# \fBmodload -p drv/foo\fR
-.fi
-.in -2
-.sp
-
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-e\fR\fI exec_file\fR\fR
-.ad
-.RS 16n
-Specify the name of a shell script or executable image file that is executed
-after the module is successfully loaded. The first argument passed is the
-module ID (in decimal). The other argument is module specific. The module
-specific information is: the block and character major numbers for drivers, the
-system call number for system calls, or, for other module types, the index
-into the appropriate kernel table. See \fBmodinfo\fR(1M)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR\fR
-.ad
-.RS 16n
-Use the kernel's internal modpath variable as the search path for the module.
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBld\fR(1), \fBadd_drv\fR(1M), \fBkernel\fR(1M), \fBmodinfo\fR(1M),
-\fBmodunload\fR(1M), \fBsystem\fR(4), \fBattributes\fR(5), \fBmodldrv\fR(9S),
-\fBmodlinkage\fR(9S), \fBmodlstrmod\fR(9S), \fBmodule_info\fR(9S)
-.sp
-.LP
-\fI\fR
-.SH NOTES
-.sp
-.LP
-Use \fBadd_drv\fR(1M) to add device drivers, not \fBmodload\fR. See \fI\fR for
-procedures on adding device drivers.
diff --git a/usr/src/man/man1m/modunload.1m b/usr/src/man/man1m/modunload.1m
deleted file mode 100644
index be46776171..0000000000
--- a/usr/src/man/man1m/modunload.1m
+++ /dev/null
@@ -1,66 +0,0 @@
-'\" te
-.\" Copyright (c) 2005, Sun Microsystems, Inc.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH MODUNLOAD 1M "Nov 19, 2001"
-.SH NAME
-modunload \- unload a module
-.SH SYNOPSIS
-.LP
-.nf
-\fBmodunload\fR \fB-i\fR \fImodule_id\fR [\fB-e\fR \fIexec_file\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBmodunload\fR unloads a loadable module from the running system. The
-\fImodule_id\fR is the \fBID\fR of the module as shown by \fBmodinfo\fR(1M). If
-\fBID\fR is \fB0\fR, all modules that were autoloaded which are unloadable, are
-unloaded. Modules loaded by \fBmodload\fR(1M) are not affected.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-e\fR \fIexec_file\fR\fR
-.ad
-.RS 16n
-Specify the name of a shell script or executable image file to be executed
-before the module is unloaded. The first argument passed is the module id (in
-decimal). There are two additional arguments that are module specific. For
-loadable drivers, the second argument is the driver major number. For loadable
-system calls, the second argument is the system call number. For loadable exec
-classes, the second argument is the index into the \fBexecsw\fR table. For
-loadable filesystems, the second argument is the index into the \fBvfssw\fR
-table. For loadable streams modules, the second argument is the index into the
-\fBfmodsw\fR table. For loadable scheduling classes, the second argument is the
-index into the class array. Minus one is passed for an argument that does not
-apply.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-i\fR \fImodule_id\fR\fR
-.ad
-.RS 16n
-Specify the module to be unloaded.
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBmodinfo\fR(1M), \fBmodload\fR(1M), \fBupdate_drv\fR(1M), \fBattributes\fR(5)
-.SH NOTES
-.sp
-.LP
-The \fBmodunload\fR command is often used on driver modules to force the system
-to reread the associated driver configuration file. While this works in the
-current Solaris release, it is not the supported way to reread the
-configuration file and is not guaranteed to work in future releases. The
-supported way for rereading driver configuration file is through the
-\fBupdate_drv\fR(1M) command.
diff --git a/usr/src/man/man1m/monitor.1m b/usr/src/man/man1m/monitor.1m
deleted file mode 100644
index 6a14588c16..0000000000
--- a/usr/src/man/man1m/monitor.1m
+++ /dev/null
@@ -1,1774 +0,0 @@
-'\" te
-.\" Copyright (c) 2003, Sun Microsystems, Inc.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH MONITOR 1M "Jul 24, 2003"
-.SH NAME
-monitor \- SPARC system PROM monitor
-.SH SYNOPSIS
-.nf
-\fBSTOP\(miA\fR
-.fi
-
-.LP
-.nf
-\fBBREAK\fR
-.fi
-
-.LP
-.nf
-\fBinitial system power-on\fR
-.fi
-
-.LP
-.nf
-\fBexit from a client program, e.g., the Operating System\fR
-.fi
-
-.SH DESCRIPTION
-The \fBCPU\fR board of a workstation contains one or more \fBEPROMs\fR or
-\fBEEPROMs.\fR The program which executes from the \fBPROMs\fR is referred to
-as "the monitor". Among other things, the monitor performs system
-initialization at power-on and provides a user interface.
-.SS "Monitor Prompt"
-The monitor of earlier workstations was known as the \fBSunMON\fR monitor and
-displayed the \fB>\fR for its prompt. See the \fBSunMON MONITOR USAGE\fR
-section for further details.
-.sp
-.LP
-Existing workstations use a monitor which is known as the OpenBoot monitor.
-The OpenBoot monitor typically displays \fBok\fR as its prompt, but it may also
-display the \fB>\fR prompt under certain circumstances.
-.sp
-.LP
-If the \fB\&'auto-boot?'\fR \fBNVRAM\fR parameter is set to \fB\&'false'\fR
-when the workstation is powered on, the system does not attempt to boot and the
-monitor issues its prompt. If \fB\&'auto-boot'\fR is set to \fB\&'true'\fR, the
-system initiates the boot sequence. The boot sequence can be aborted by
-simultaneously pressing two keys on the system's keyboard: \fBL1\fR and \fBA\fR
-(on older keyboards), or \fBStop\fR and \fBA\fR (on newer keyboards). Either a
-lower case \fBa\fR or an upper case \fBA\fR works for the keyboard abort
-sequence. If a console has been attached by way of one of the system's serial
-ports then the abort sequence can be accomplished by sending a \fBBREAK\fR. See
-\fBtip\fR(1).
-.sp
-.LP
-When the \fBNVRAM\fR \fB\&'security-mode'\fR parameter has been turned on, or
-when the value of the \fB\&'sunmon-compat?'\fR parameter is true, then the
-OpenBoot monitor displays the message: \fBType b (boot), c (continue), or n
-(new command mode)\fR
-.sp
-.LP
-and the \fB>\fR prompt appears.
-.SH OPENBOOT PROM USAGE
-Some of the more useful commands that can be issued from OpenBoot's \fBok \fR
-prompt are described here. Refer to the book for a complete list of
-commands.
-.SS "Help"
-Help for various functional areas of the OpenBoot monitor can be obtained by
-typing \fBhelp\fR. The help listing provides a number of other key words which
-can then be used in the help command to provide further details.
-.SS "NVRAM Parameters"
-Each workstation contains one or more \fBNVRAM\fR devices which contains unique
-system ID information, as well as a set of user-configurable parameters. The
-\fBNVRAM\fR parameters allow the user a certain level of flexibility in
-configuring the system to act in a given manner under a specific set of
-circumstances.
-.sp
-.LP
-See \fBeeprom\fR(1M) for a description of the parameters and information
-regarding setting the parameters from the OS level.
-.sp
-.LP
-The following commands can be used at the OpenBoot monitor to access the
-\fBNVRAM\fR parameters.
-.sp
-.ne 2
-.na
-\fB\fBprintenv\fR\fR
-.ad
-.RS 18n
-Used to list the \fBNVRAM\fR parameters, along with their default values and
-current values.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsetenv\fR\fI pn pv\fR\fR
-.ad
-.RS 18n
-Used to set or modify a parameter. The \fIpn\fR represents the parameter name,
-and \fIpv\fR represents the parameter value.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBset-default\fR \fIpn\fR\fR
-.ad
-.RS 18n
-Used to set an individual parameter back to its default value.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBset-defaults\fR\fR
-.ad
-.RS 18n
-Used to reset all parameters to their default values. (Note that
-\fB\&'set-defaults'\fR only affects parameters that have assigned default
-values.)
-.RE
-
-.SS "Security Parameters"
-Newer OpenBoot monitors contain user interfaces that support the storage and
-listing of keys for later use by client programs.
-.sp
-.ne 2
-.na
-\fB\fBlist-security-keys\fR\fR
-.ad
-.sp .6
-.RS 4n
-Lists the names of keys currently stored on a machine.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBset-security-key\fR \fIkeyname\fR [ \fIkeydata\fR ]\fR
-.ad
-.sp .6
-.RS 4n
-Stores key data \fIkeydata\fR in a key named \fIkeyname\fR. Actual key data can
-be up to 32 bytes in length. The maximum length of \fIkeyname\fR is 64 bytes,
-which allows for the hex-formatted ASCII used to present the key data. If
-\fIkeydata\fR is not present, \fIkeyname\fR and its corresponding data is
-deleted.
-.RE
-
-.SS "Hardware Checks and Diagnostics"
-The following commands are available for testing or checking the system's
-hardware. If the \fB\&'diag-switch?'\fR \fBNVRAM\fR parameter is set to true
-when the system is powered on, then a Power-On Self Test (POST) diagnostic is
-run, if present, sending its results messages to the system's serial port A.
-Not all of the commands shown are available on all workstations.
-.sp
-.ne 2
-.na
-\fB\fBtest-all\fR\fR
-.ad
-.RS 17n
-Run the diagnostic tests on each device which has provided a self-test.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBtest\fR \fBfloppy\fR\fR
-.ad
-.RS 17n
-Run diagnostics on the system's floppy device.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBtest\fR \fB/memory\fR\fR
-.ad
-.RS 17n
-Run the main memory tests. If the \fBNVRAM\fR parameter \fB\&'diag-switch?'\fR
-is set to true, then all of main memory is tested. If the parameter is false
-then only the amount of memory specified in the \fB\&'selftest-#megs'\fR
-\fBNVRAM\fR parameter is tested.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBtest\fR \fBnet\fR\fR
-.ad
-.RS 17n
-Test the network connection for the on-board network controller.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBwatch-net\fR\fR
-.ad
-.RS 17n
-Monitor the network attached to the on-board net controller.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBwatch-net-all\fR\fR
-.ad
-.RS 17n
-Monitor the network attached to the on-board net controller, as well as the
-network controllers installed in SBus slots.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBwatch-clock\fR\fR
-.ad
-.RS 17n
-Test the system's clock function.
-.RE
-
-.SS "System Information"
-The following commands are available for displaying information about the
-system. Not all commands are available on all workstations.
-.sp
-.ne 2
-.na
-\fB\fBbanner\fR\fR
-.ad
-.RS 18n
-Display the power-on banner.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\&.enet-addr\fR\fR
-.ad
-.RS 18n
-Display the system's Ethernet address.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\&.idprom\fR\fR
-.ad
-.RS 18n
-Display the formatted contents of the \fBIDPROM.\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmodule-info\fR\fR
-.ad
-.RS 18n
-Display information about the system's processor(s).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBprobe-scsi\fR\fR
-.ad
-.RS 18n
-Identify the devices attached to the on-board \fBSCSI\fR controller.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBprobe-scsi-all\fR\fR
-.ad
-.RS 18n
-Identify the devices attached to the on-board \fBSCSI\fR controller as well as
-those devices which are attached to SBus \fBSCSI\fR controllers.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBshow-disks\fR\fR
-.ad
-.RS 18n
-Display a list of the device paths for installed \fBSCSI\fR disk controllers.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBshow-displays\fR\fR
-.ad
-.RS 18n
-Display a list of the device paths for installed display devices.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBshow-nets\fR\fR
-.ad
-.RS 18n
-Display a list of the device paths for installed Ethernet controllers.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBshow-sbus\fR\fR
-.ad
-.RS 18n
-Display list of installed SBus devices.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBshow-tapes\fR\fR
-.ad
-.RS 18n
-Display a list of the device paths for installed \fBSCSI\fR tape controllers.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBshow-ttys\fR\fR
-.ad
-.RS 18n
-Display a list of the device paths for tty devices.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\&.traps\fR\fR
-.ad
-.RS 18n
-Display a list of the SPARC trap types.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\&.version\fR\fR
-.ad
-.RS 18n
-Display the version and date of the OpenBoot PROM.
-.RE
-
-.SS "Emergency Commands"
-These commands must be typed from the keyboard, they do not work from a console
-which is attached by way of the serial ports. With the exception of the
-\fBStop-A\fR command, these commands are issued by pressing and holding down
-the indicated keys on the keyboard immediately after the system has been
-powered on. The keys must be held down until the monitor has checked their
-status. The \fBStop-A\fR command can be issued at any time after the console
-display begins, and the keys do not need to be held down once they've been
-pressed. The \fBStop-D,\fR \fBStop-F\fR and \fBStop-N\fR commands are not
-allowed when one of the security modes has been set. Not all commands are
-available on all workstations.
-.sp
-.ne 2
-.na
-\fB\fBStop (L1)\fR\fR
-.ad
-.RS 17n
-Bypass the Power-On Self Test (POST). This is only effective if the system has
-been placed into the diagnostic mode.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBStop-A (L1-A)\fR\fR
-.ad
-.RS 17n
-Abort the current operation and return to the monitor's default prompt.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBStop-D (L1-D)\fR\fR
-.ad
-.RS 17n
-Set the system's \fB\&'diag-switch?'\fR \fBNVRAM\fR parameter to
-\fB\&'true'\fR, which places the system in diagnostic mode. POST diagnostics,
-if present, are run, and the messages are displayed by way of the system's
-serial port A.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBStop-F (L1-F)\fR\fR
-.ad
-.RS 17n
-Enter the OpenBoot monitor before the monitor has probed the system for
-devices. Issue the \fB\&'fexit'\fR command to continue with system
-initialization.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBStop-N (L1-N)\fR\fR
-.ad
-.RS 17n
-Causes the \fBNVRAM\fR parameters to be reset to their default values. Note
-that not all parameters have default values.
-.RE
-
-.SS "Line Editor Commands"
-The following commands can be used while the monitor is displaying the \fBok\fR
-prompt. Not all of these editing commands are available on all workstations.
-.sp
-.ne 2
-.na
-\fB\fBCTRL-A\fR\fR
-.ad
-.RS 10n
-Place the cursor at the start of line.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBCTRL-B\fR\fR
-.ad
-.RS 10n
-Move the cursor backward one character.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBESC-B\fR\fR
-.ad
-.RS 10n
-Move the cursor backward one word.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBCTRL-D\fR\fR
-.ad
-.RS 10n
-Erase the character that the cursor is currently highlighting.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBESC-D\fR\fR
-.ad
-.RS 10n
-Erase the portion of word from the cursor's present position to the end of the
-word.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBCTRL-E\fR\fR
-.ad
-.RS 10n
-Place the cursor at the end of line.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBCTRL-F\fR\fR
-.ad
-.RS 10n
-Move the cursor forward one character.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBESC-F\fR\fR
-.ad
-.RS 10n
-Move the cursor forward one word.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBCTRL-H\fR\fR
-.ad
-.RS 10n
-Erase the character preceding the cursor (also use Delete or Back Space)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBESC-H\fR\fR
-.ad
-.RS 10n
-Erase the portion of the word which precedes the cursor (use also \fBCTRL-W)\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBCTRL-K\fR\fR
-.ad
-.RS 10n
-Erase from the cursor's present position to the end of the line.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBCTRL-L\fR\fR
-.ad
-.RS 10n
-Show the command history list.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBCTRL-N\fR\fR
-.ad
-.RS 10n
-Recall the next command from the command history list
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBCTRL-P\fR\fR
-.ad
-.RS 10n
-Recall a previous command from the command history list.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBCTRL-Q\fR\fR
-.ad
-.RS 10n
-Quote the next character (used to type a control character).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBCTRL-R\fR\fR
-.ad
-.RS 10n
-Retype the current line.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBCTRL-U\fR\fR
-.ad
-.RS 10n
-Erase from the cursor's present position to the beginning of the line.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBCTRL-Y\fR\fR
-.ad
-.RS 10n
-Insert the contents of the memory buffer into the line, in front (to the left)
-of the cursor.
-.RE
-
-.SS "nvramrc"
-The \fBnvramrc\fR is an area of the system's \fBNVRAM\fR where users may store
-Forth programs. The programs which are stored in the \fBnvramrc\fR are executed
-each time the system is reset, provided that the \fB\&'use-nvramrc?'\fR
-\fBNVRAM\fR parameter has been set to \fB\&'true'\fR. Refer to the book for
-information on how to edit and use the \fBnvramrc\fR.
-.SS "Restricted Monitor"
-The command \fB\&'old-mode'\fR is used to move OpenBoot into a restricted
-monitor mode, causing the \fB> \fR prompt to be displayed. Only three commands
-are allowed while in the restricted monitor; the \fB\&'go'\fR command (to
-resume a program which was interrupted with the \fBStop-A\fR command), the
-\fB\&'n'\fR command (to return to the normal OpenBoot monitor), and boot
-commands. The restricted monitor's boot commands approximate the older
-\fBSunMON\fR monitor's boot command syntax. If a \fB\&'security-mode'\fR has
-been turned on then the restricted monitor becomes the default monitor
-environment. The restricted monitor may also become the default environment if
-the \fB\&'sunmon-compat?' \fR \fBNVRAM\fR parameter is set to true. Not all
-workstations have the \fB\&'sunmon-compat?'\fR parameter.
-.SH SUNMON PROM USAGE
-The following commands are available systems with older \fBSunMON\fR-based
-PROM:
-.sp
-.ne 2
-.na
-\fB\fB+\fR|\fB\(mi\fR\fR
-.ad
-.sp .6
-.RS 4n
-Increment or decrement the current address and display the contents of the new
-location.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB^C\fR\fI source destination n\fR\fR
-.ad
-.sp .6
-.RS 4n
-(caret-C) Copy, byte-by-byte, a block of length \fIn\fR from the \fBsource\fR
-address to the \fIdestination\fR address.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB^I \fR\fIprogram\fR\fR
-.ad
-.sp .6
-.RS 4n
-(caret-I) Display the compilation date and location of \fIprogram\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB^T \fR\fIvirtual_address\fR\fR
-.ad
-.sp .6
-.RS 4n
-(caret-T) Display the physical address to which \fIvirtual_address\fR is
-mapped.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBb\fR [ \fB!\fR ] [ \fIdevice\fR [
-\fB(\fR\fIc\fR\fB,\fR\fIu\fR\fB,\fR\fIp\|\fR\fB)\fR\fI\fR ] ] [ \fIpathname\fR
-] [ \fIarguments_list\fR ]\fR
-.ad
-.sp .6
-.RS 4n
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBb\fR[\fB?\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Reset appropriate parts of the system and bootstrap a program. A `\fB!\fR'
-(preceding the \fIdevice\fR argument) prevents the system reset from occurring.
-Programs can be loaded from various devices (such as a disk, tape, or
-Ethernet). `\fBb\fR' with no arguments causes a default boot, either from a
-disk, or from an Ethernet controller. `\fBb?\fR' displays all boot devices and
-their \fIdevice\fRs.
-.sp
-.ne 2
-.na
-\fB\fIdevice\fR\fR
-.ad
-.RS 18n
-one of
-.sp
-.ne 2
-.na
-\fB\fBle\fR\fR
-.ad
-.RS 6n
-Lance Ethernet
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBie\fR\fR
-.ad
-.RS 6n
-Intel Ethernet
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsd\fR\fR
-.ad
-.RS 6n
-\fBSCSI\fR disk, CDROM
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBst\fR\fR
-.ad
-.RS 6n
-\fBSCSI\fR 1/4" or 1/2" tape
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfd\fR\fR
-.ad
-.RS 6n
-Diskette
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBid\fR\fR
-.ad
-.RS 6n
-IPI disk
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmt\fR\fR
-.ad
-.RS 6n
-Tape Master 9-track 1/2" tape
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBxd\fR\fR
-.ad
-.RS 6n
-Xylogics 7053 disk
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBxt\fR\fR
-.ad
-.RS 6n
-Xylogics 1/2" tape
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBxy\fR\fR
-.ad
-.RS 6n
-Xylogics 440/450 disk
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIc\fR\fR
-.ad
-.RS 18n
-A controller number (\fB0\fR if only one controller),
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIu\fR\fR
-.ad
-.RS 18n
-A unit number (\fB0\fR if only one driver), and
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIp\fR\fR
-.ad
-.RS 18n
-A partition.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIpathname\fR\fR
-.ad
-.RS 18n
-A pathname for a program such as \fB/stand/diag\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIarguments_list\fR\fR
-.ad
-.RS 18n
-A list of up to seven arguments to pass to the program being booted.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBc [\fR\fIvirtual_address\fR\fB]\fR\fR
-.ad
-.sp .6
-.RS 4n
-Resume execution of a program. When given, \fIvirtual_address\fR is the address
-at which execution resumes. The default is the current \fBPC.\fR Registers are
-restored to the values shown by the \fBd\fR, and \fBr\fR commands.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBd [\fR\fIwindow_number\fR\fB]\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display (dump) the state of the processor. The processor state is observable
-only after:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-An unexpected trap was encountered.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-A user program dropped into the monitor (by calling \fIabortent\fR).
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The user manually entered the monitor by typing \fBL1\(miA\fR or \fBBREAK.\fR
-.RE
-The display consists of the following:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The special registers: \fBPSR,\fR \fBPC,\fR nPC, \fBTBR,\fR \fBWIM,\fR and Y
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Eight global registers
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-24 window registers (8 \fIin\fR, 8 \fIlocal\fR, and 8 \fIout\fR), corresponding
-to one of the 7 available windows. If a Floating-Point Unit is on board, its
-status register along with 32 floating-point registers are also shown.
-.RE
-.sp
-.ne 2
-.na
-\fB\fIwindow_number\fR\fR
-.ad
-.RS 17n
-Display the indicated \fIwindow_number\fR, which can be any value between
-\fB0\fR and \fB6\fR, inclusive. If no window is specified and the \fBPSR's\fR
-current window pointer contains a valid window number, registers from the
-window that was active just prior to entry into the monitor are displayed.
-Otherwise, registers from window 0 are displayed.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBe\fR [\fIvirtual_address\fR]\|[\fIaction\fR] .\|.\|.\fR
-.ad
-.sp .6
-.RS 4n
-Open the 16-bit word at \fIvirtual_address\fR (default zero). The address is
-interpreted in the address space defined by the \fBs\fR command. See the
-\fBa\fR command for a description of \fIaction\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBf\fR\fI virtual_address1 virtual_address2 pattern \fR [\fIsize\|\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Fill the bytes, words, or long words from \fIvirtual_address1\fR (lower) to
-\fIvirtual_address2\fR (higher) with the constant, \fIpattern\fR. The
-\fBsize\fR argument can take one of the following values:
-.sp
-.ne 2
-.na
-\fB\fBb\fR\fR
-.ad
-.RS 5n
-byte format (the default)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBw\fR\fR
-.ad
-.RS 5n
-word format
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBl\fR\fR
-.ad
-.RS 5n
-long word format
-.RE
-
-For example, the following command fills the address block from \fB0x1000\fR to
-\fB0x2000\fR with the word pattern, \fB0xABCD\fR:
-.sp
-\fBf 1000 2000 ABCD W\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBg\fR [\fIvector\|\fR] [\fIargument\|\fR]\fR
-.ad
-.br
-.na
-\fB\fBg\fR [\fIvirtual_address\|\fR] [\fIargument\fR\|]\fR
-.ad
-.sp .6
-.RS 4n
-Goto (jump to) a predetermined or default routine (first form), or to a
-user-specified routine (second form). The value of \fIargument\fR is passed to
-the routine. If the \fIvector\fR or \fIvirtual_address\fR argument is omitted,
-the value in the \fBPC\fR is used as the address to jump to.
-.sp
-To set up a predetermined routine to jump to, a user program must, prior to
-executing the monitor's \fBg\fR command, set the variable
-\fB*romp->v_vector_cmd\fR to be equal to the virtual address of the desired
-routine. Predetermined routines need not necessarily return control to the
-monitor.
-.sp
-The default routine, defined by the monitor, prints the user-supplied
-\fIvector\fR according to the format supplied in \fIargument\fR. This format
-can be one of:
-.sp
-.ne 2
-.na
-\fB\fB%x\fR\fR
-.ad
-.RS 6n
-hexadecimal
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB%d\fR\fR
-.ad
-.RS 6n
-decimal
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBg0\fR\fR
-.ad
-.sp .6
-.RS 4n
-Force a panic and produce a crash dump when the monitor is running as a result
-of the system being interrupted,
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBg4\fR\fR
-.ad
-.sp .6
-.RS 4n
-(Sun-4 systems only) Force a kernel stack trace when the monitor is running as
-a result of the system being interrupted,
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBh\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display the help menu for monitor commands and their descriptions. To return to
-the monitor's basic command level, press \fBESCAPE\fR or \fBq\fR before
-pressing \fBRETURN.\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBi \fR[\fIcache_data_offset\fR\|] [\fIaction\fR\|]\|.\|.\|.\fR
-.ad
-.sp .6
-.RS 4n
-Modify cache data \fBRAM\fR command. Display and/or modify one or more of the
-cache data addresses. See the \fBa\fR command for a description of
-\fIaction\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBj\fR [\fIcache_tag_offset\fR\|] [\fIaction\|\fR]\|.\|.\|.\fR
-.ad
-.sp .6
-.RS 4n
-Modify cache tag \fBRAM\fR command. Display and/or modify the contents of one
-or more of the cache tag addresses. See the \fBa\fR command for a description
-of \fIaction\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBk [\fR\fIreset_level\fR\fB]\fR\fR
-.ad
-.sp .6
-.RS 4n
-Reset the system, where \fIreset_level\fR is:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 5n
-Reset \fBVMEbus,\fR interrupt registers, video monitor (Sun-4 systems). This is
-the default.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB1\fR\fR
-.ad
-.RS 5n
-Software reset.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB2\fR\fR
-.ad
-.RS 5n
-Power-on reset. Resets and clears the memory. Runs the \fBEPROM-based\fR
-diagnostic self test, which can take several minutes, depending upon how much
-memory is being tested.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBkb\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display the system banner.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBl\|\fR [\fIvirtual_address\fR\|]\|[\fIaction\fR]\|.\|.\|.\fR
-.ad
-.sp .6
-.RS 4n
-Open the long word (32 bit) at memory address \fIvirtual_address\fR (default
-zero). The address is interpreted in the address space defined by the \fBs\fR
-command (below). See the \fBa\fR command for a description of \fIaction\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBm\|\fR [\fIvirtual_address\fR\|]\|[\fIaction\fR\|]\|.\|.\|.\fR
-.ad
-.sp .6
-.RS 4n
-Open the segment map entry that maps \fIvirtual_address\fR (default zero). The
-address is interpreted in the address space defined by the \fBs\fR command. See
-the \fBa\fR command for a description of \fIaction\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBne\fR\fR
-.ad
-.sp .6
-.RS 4n
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBni\fR\fR
-.ad
-.sp .6
-.RS 4n
-Disable, enable, or invalidate the cache, respectively.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBo\|\fR [\fIvirtual_address\fR\|]\|[action\fI]\|.\|.\|.\fR\fR
-.ad
-.sp .6
-.RS 4n
-Open the byte location specified by \fIvirtual_address\fR (default zero). The
-address is interpreted in the address space defined by the \fBs\fR command. See
-the \fBa\fR command for a description of \fIaction\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBp\|\fR [\fIvirtual_address\fR\|]\|[\fIaction\fR].\|.\|.\fR
-.ad
-.sp .6
-.RS 4n
-Open the page map entry that maps \fIvirtual_address\fR (default zero) in the
-address space defined by the \fBs\fR command. See the \fBa\fR command for a
-description of \fIaction\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBq\|\fR [\fIeeprom_offset\fR\|]\|[\fIaction\fR\|].\|.\|.\fR
-.ad
-.sp .6
-.RS 4n
-Open the \fBEEPROM\fR \fIeeprom_offset\fR (default zero) in the \fBEEPROM\fR
-address space. All addresses are referenced from the beginning or base of the
-\fBEEPROM\fR in physical address space, and a limit check is performed to
-insure that no address beyond the \fBEEPROM\fR physical space is accessed. This
-command is used to display or modify configuration parameters, such as: the
-amount of memory to test during self test, whether to display a standard or
-custom banner, if a serial port (A or B) is to be the system console, etc. See
-the \fBa\fR command for a description of \fIaction\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBr\|\fR [\fIregister_number\|\fR]\fR
-.ad
-.br
-.na
-\fB\fBr\|\fR [\fIregister_type\|\fR]\fR
-.ad
-.br
-.na
-\fB\fBr\|\fR [\fIw window_number\|\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Display and/or modify one or more of the \fBIU\fR or \fBFPU\fR registers. A
-hexadecimal \fIregister_number\fR can be one of:
-.sp
-.ne 2
-.na
-\fB\fB0x00\fR\(mi\fB0x0f\fR\fR
-.ad
-.RS 16n
-window(0,i0)\(miwindow(0,i7), window(0,i0)\(emwindow(0,i7)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB0x16\fR\(mi\fB0x1f\fR\fR
-.ad
-.RS 16n
-window(1,i0)\(miwindow(1,i7), window(1,i0)\(emwindow(1,i7)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB0x20\fR\(mi\fB0x2f\fR\fR
-.ad
-.RS 16n
-window(2,i0)\(miwindow(2,i7), window(2,i0)\(emwindow(2,i7)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB0x30\fR\(mi\fB0x3f\fR\fR
-.ad
-.RS 16n
-window(3,i0)\(miwindow(3,i7), window(3,i0)\(emwindow(3,i7)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB0x40\fR\(mi\fB0x4f\fR\fR
-.ad
-.RS 16n
-window(4,i0)\(miwindow(4,i7), window(4,i0)\(emwindow(4,i7)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB0x50\fR\(mi\fB0x5f\fR\fR
-.ad
-.RS 16n
-window(5,i0)\(miwindow(5,i7), window(5,i0)\(emwindow(5,i7)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB0x60\fR\(mi\fB0x6f\fR\fR
-.ad
-.RS 16n
-window(6,i0)\(miwindow(6,i7), window(6,i0)\(emwindow(6,i7)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB0x70\fR\(mi\fB0x77\fR\fR
-.ad
-.RS 16n
-\fBg0, g1, g2, g3, g4, g5, g6, g7\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB0x78\fR\(mi\fB0x7d\fR\fR
-.ad
-.RS 16n
-\fBPSR,\fR \fBPC,\fR \fBnPC,\fR \fBWIM,\fR \fBTBR,\fR \fBY.\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB0x7e\fR\(mi\fB0x9e\fR\fR
-.ad
-.RS 16n
-\fBFSR,\fR f0\(mif31
-.RE
-
-Register numbers can only be displayed after an unexpected trap, a user program
-has entered the monitor using the \fIabortent\fR function, or the user has
-entered the monitor by manually typing \fBL1\(miA\fR or \fBBREAK.\fR
-.sp
-If a \fIregister_type\fR is given, the first register of the indicated type is
-displayed. \fIregister_type\fR can be one of:
-.sp
-.ne 2
-.na
-\fB\fBf\fR\fR
-.ad
-.RS 5n
-floating-point
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBg\fR\fR
-.ad
-.RS 5n
-global
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBs\fR\fR
-.ad
-.RS 5n
-special
-.RE
-
-If \fBw\fR and a \fIwindow_number\fR (\fB0\fR\(em\fB6\fR) are given, the first
-\fIin\fR-register within the indicated window is displayed. If
-\fIwindow_number\fR is omitted, the window that was active just prior to
-entering the monitor is used. If the \fBPSR's\fR current window pointer is
-invalid, window 0 is used.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBs [\fR\fIasi\fR\fB])\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set or display the Address Space Identifier. With no argument, \fBs\fR
-displays the current Address Space Identifier. The \fIasi\fR value can be one
-of:
-.sp
-.ne 2
-.na
-\fB\fB0x2\fR\fR
-.ad
-.RS 7n
-control space
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB0x3\fR\fR
-.ad
-.RS 7n
-segment table
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB0x4\fR\fR
-.ad
-.RS 7n
-Page table
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB0x8\fR\fR
-.ad
-.RS 7n
-user instruction
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB0x9\fR\fR
-.ad
-.RS 7n
-supervisor instruction
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB0xa\fR\fR
-.ad
-.RS 7n
-user data
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB0xb\fR\fR
-.ad
-.RS 7n
-supervisor data
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB0xc\fR\fR
-.ad
-.RS 7n
-flush segment
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB0xd\fR\fR
-.ad
-.RS 7n
-flush page
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB0xe\fR\fR
-.ad
-.RS 7n
-flush context
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB0xf\fR\fR
-.ad
-.RS 7n
-cache data
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBu\fR [ \fBecho\fR ]\fR
-.ad
-.sp .6
-.RS 4n
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBu\fR [ \fIport\fR ] [ \fIoptions\fR ] [ \fIbaud_rate\fR ]\fR
-.ad
-.sp .6
-.RS 4n
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBu\fR [ \fBu\fR ] [ \fIvirtual_address\fR ]\fR
-.ad
-.sp .6
-.RS 4n
-With no arguments, display the current I/O device characteristics including:
-current input device, current output device, baud rates for serial ports A and
-B, an input-to-output echo indicator, and virtual addresses of mapped
-\fBUART\fR devices. With arguments, set or configure the current I/O device.
-With the \fBu\fR argument (\fBuu\fR.\|.\|.), set the I/O device to be the
-\fIvirtual_address\fR of a \fBUART\fR device currently mapped.
-.sp
-.ne 2
-.na
-\fB\fBecho\fR\fR
-.ad
-.RS 13n
- Can be either \fBe\fR to enable input to be echoed to the output device, or
-\fBne\fR, to indicate that input is not echoed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIport\fR\fR
-.ad
-.RS 13n
-Assign the indicated \fIport\fR to be the current I/O device. \fIport\fR can be
-one of:
-.sp
-.ne 2
-.na
-\fB\fBa\fR\fR
-.ad
-.RS 5n
-serial port A
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBb\fR\fR
-.ad
-.RS 5n
-serial port B
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBk\fR\fR
-.ad
-.RS 5n
-the workstation keyboard
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBs\fR\fR
-.ad
-.RS 5n
-the workstation screen
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIbaud_rate\fR\fR
-.ad
-.RS 13n
-Any legal baud rate.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIoptions\fR\fR
-.ad
-.RS 11n
-can be any combination of:
-.sp
-.ne 2
-.na
-\fB\fBi\fR\fR
-.ad
-.RS 6n
-input
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBo\fR\fR
-.ad
-.RS 6n
-output
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBu\fR\fR
-.ad
-.RS 6n
-\fBUART\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBe\fR\fR
-.ad
-.RS 6n
-echo input to output
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBne\fR\fR
-.ad
-.RS 6n
-do not echo input
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBr\fR\fR
-.ad
-.RS 6n
-reset indicated serial port (\fBa\fR and \fBb\fR ports only)
-.RE
-
-If either \fBa\fR or \fBb\fR is supplied, and no \fIoptions\fR are given, the
-serial port is assigned for both input and output. If \fBk\fR is supplied with
-no options, it is assigned for input only. If \fBs\fR is supplied with no
-options, it is assigned for output only.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBv\fR\fI virtual_address1 virtual_address2 \fR [\fBsize\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Display the contents of \fIvirtual_address1\fR (lower) \fIvirtual_address2\fR
-(higher) in the format specified by \fBsize\fR:
-.sp
-.ne 2
-.na
-\fB\fBb\fR\fR
-.ad
-.RS 5n
-byte format (the default)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBw\fR\fR
-.ad
-.RS 5n
-word format
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBl\fR\fR
-.ad
-.RS 5n
-long word format
-.RE
-
-Enter return to pause for viewing; enter another return character to resume the
-display. To terminate the display at any time, press the space bar.
-.sp
-For example, the following command displays the contents of virtual address
-space from address \fB0x1000\fR to \fB0x2000\fR in word format:
-.sp
-\fBv\fR \fB1000\fR \fB2000\fR \fBW\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBw\|\fR [\fIvirtual_address\|\fR]\|[\fIargument\|\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Set the execution vector to a predetermined or default routine. Pass
-\fIvirtual_address\fR and \fIargument\fR to that routine.
-.sp
-To set up a predetermined routine to jump to, a user program must, prior to
-executing the monitor's \fBw\fR command, set the variable
-\fB*romp->v_vector_cmd\fR to be equal to the virtual address of the desired
-routine. Predetermined routines need not necessarily return control to the
-monitor.
-.sp
-The default routine, defined by the monitor, prints the user-supplied
-\fIvector\fR according to the format supplied in \fIargument\fR. This format
-can be one of:
-.sp
-.ne 2
-.na
-\fB\fB%x\fR\fR
-.ad
-.RS 6n
-hexadecimal
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB%d\fR\fR
-.ad
-.RS 6n
-decimal
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBx\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display a menu of extended tests. These diagnostics permit additional testing
-of such things as the I/O port connectors, video memory, workstation memory and
-keyboard, and boot device paths.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBy\|c\fR\fI context_number\fR\fR
-.ad
-.sp .6
-.RS 4n
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBy\|p|s\|\fR\fI context_number virtual_address\fR\fR
-.ad
-.sp .6
-.RS 4n
-Flush the indicated context, context page, or context segment.
-.sp
-.ne 2
-.na
-\fB\fBc\fR\fR
-.ad
-.RS 5n
-flush context \fIcontext_number\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBp\fR\fR
-.ad
-.RS 5n
-flush the page beginning at \fIvirtual_address\fR within context
-\fIcontext_number\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBs\fR\fR
-.ad
-.RS 5n
-flush the segment beginning at \fIvirtual_address\fR within context
-\fIcontext_number\fR
-.RE
-
-.RE
-
-.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture SPARC
-.TE
-
-.SH SEE ALSO
-\fBtip\fR(1), \fBboot\fR(1M), \fBeeprom\fR(1M), \fBattributes\fR(5)
diff --git a/usr/src/man/man1m/mount.1m b/usr/src/man/man1m/mount.1m
deleted file mode 100644
index 7f493fd757..0000000000
--- a/usr/src/man/man1m/mount.1m
+++ /dev/null
@@ -1,444 +0,0 @@
-'\" te
-.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 2015 Nexenta Systems, Inc. All rights reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH MOUNT 1M "Sep 8, 2015"
-.SH NAME
-mount, umount \- mount or unmount file systems and remote resources
-.SH SYNOPSIS
-.LP
-.nf
-\fBmount\fR [\fB-p\fR | \fB-v\fR]
-.fi
-
-.LP
-.nf
-\fBmount\fR [\fB-F\fR \fIFSType\fR] [\fIgeneric_options\fR] [\fB-o\fR \fIspecific_options\fR]
- [\fB-O\fR] \fIspecial\fR | \fImount_point\fR
-.fi
-
-.LP
-.nf
-\fBmount\fR [\fB-F\fR \fIFSType\fR] [\fIgeneric_options\fR] [\fB-o\fR \fIspecific_options\fR]
- [\fB-O\fR] \fIspecial\fR \fImount_point\fR
-.fi
-
-.LP
-.nf
-\fBmount\fR \fB-a\fR [\fB-F\fR \fIFSType\fR] [\fB-V\fR] [\fIcurrent_options\fR]
- [\fB-o\fR \fIspecific_options\fR] [\fImount_points...\fR]
-.fi
-
-.LP
-.nf
-\fBumount\fR [\fB-f\fR] [\fB-V\fR] [\fB-o\fR \fIspecific_options\fR] \fIspecial\fR | \fImount_point\fR
-.fi
-
-.LP
-.nf
-\fBumount\fR \fB-a\fR [\fB-f\fR] [\fB-V\fR] [\fB-o\fR \fIspecific_options\fR] [\fImount_points...\fR]
-.fi
-
-.SH DESCRIPTION
-.LP
-\fBmount\fR attaches a file system to the file system hierarchy at the
-\fImount_point\fR, which is the pathname of a directory. If \fImount_point\fR
-has any contents prior to the \fBmount\fR operation, these are hidden until the
-file system is unmounted.
-.LP
-\fBumount\fR unmounts a currently mounted file system, which may be specified
-either as a \fImount_point\fR or as \fIspecial\fR, the device on which the file
-system resides.
-.LP
-The table of currently mounted file systems can be found by examining the
-mounted file system information file. This is provided by a file system that is
-usually mounted on \fB/etc/mnttab\fR. The mounted file system information is
-described in \fBmnttab\fR(4). Mounting a file system adds an entry to the mount
-table; a \fBumount\fR removes an entry from the table.
-.LP
-When invoked with both the \fIspecial\fR and \fImount_point\fR arguments and
-the \fB-F\fR option, \fBmount\fR validates all arguments except for
-\fIspecial\fR and invokes the appropriate \fIFSType\fR-specific \fBmount\fR
-module. If invoked with no arguments, \fBmount\fR lists all the mounted file
-systems recorded in the mount table, \fB/etc/mnttab\fR. If invoked with a
-partial argument list (with only one of \fIspecial\fR or \fImount_point\fR, or
-with both \fIspecial\fR or \fImount_point\fR specified but not \fIFSType\fR),
-\fBmount\fR will search \fB/etc/vfstab\fR for an entry that will supply the
-missing arguments. If no entry is found, and the special argument starts with
-\fB/\fR, the default local file system type specified in \fB/etc/default/fs\fR
-will be used. Otherwise the default remote file system type will be used. The
-default remote file system type is determined by the first entry in the
-\fB/etc/dfs/fstypes\fR file. After filling in missing arguments, \fBmount\fR
-will invoke the \fIFSType\fR-specific \fBmount\fR module.
-.LP
-For file system types that support it, a file can be mounted directly as a file
-system by specifying the full path to the file as the special argument. In
-such a case, the \fBnosuid\fR option is enforced. If specific file system
-support for such loopback file mounts is not present, you can still use
-\fBlofiadm\fR(1M) to mount a file system image. In this case, no special
-options are enforced.
-.LP
-Only a user with sufficient privilege (at least \fBPRIV_SYS_MOUNT\fR) can mount
-or unmount file systems using \fBmount\fR and \fBumount\fR. However, any user
-can use \fBmount\fR to list mounted file systems and resources.
-.SH OPTIONS
-.ne 2
-.na
-\fB\fB-F\fR \fIFSType\fR\fR
-.ad
-.sp .6
-.RS 4n
-Used to specify the \fIFSType\fR on which to operate. The \fIFSType\fR must be
-specified or must be determinable from \fB/etc/vfstab\fR, or by consulting
-\fB/etc/default/fs\fR or \fB/etc/dfs/fstypes\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-a\fR [ \fImount_points\fR... ]\fR
-.ad
-.sp .6
-.RS 4n
-Perform mount or umount operations in parallel, when possible.
-.sp
-If mount points are not specified, \fBmount\fR will mount all file systems
-whose \fB/etc/vfstab\fR "mount at boot" field is \fByes\fR. If mount points are
-specified, then \fB/etc/vfstab\fR "mount at boot" field will be ignored.
-.sp
-If mount points are specified, \fBumount\fR will only \fBumount\fR those mount
-points. If none is specified, then \fBumount\fR will attempt to \fBunmount\fR
-all file systems in \fB/etc/mnttab\fR, with the exception of certain system
-required file systems: \fB/\fR, \fB/usr\fR, \fB/var\fR, \fB/var/adm\fR,
-\fB/var/run\fR, \fB/proc\fR, \fB/dev/fd\fR and \fB/tmp\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR\fR
-.ad
-.sp .6
-.RS 4n
-Forcibly unmount a file system.
-.sp
-Without this option, \fBumount\fR does not allow a file system to be unmounted
-if a file on the file system is busy. Using this option can cause data loss for
-open files; programs which access files after the file system has been
-unmounted will get an error (\fBEIO\fR).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR\fR
-.ad
-.sp .6
-.RS 4n
-Print the list of mounted file systems in the \fB/etc/vfstab\fR format. Must be
-the only option specified. See \fBBUGS\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.sp .6
-.RS 4n
-Print the list of mounted file systems in verbose format. Must be the only
-option specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-V\fR\fR
-.ad
-.sp .6
-.RS 4n
-Echo the complete command line, but do not execute the command. \fBumount\fR
-generates a command line by using the options and arguments provided by the
-user and adding to them information derived from \fB/etc/mnttab\fR. This option
-should be used to verify and validate the command line.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIgeneric_options\fR\fR
-.ad
-.sp .6
-.RS 4n
-Options that are commonly supported by most \fIFSType\fR-specific command
-modules. The following options are available:
-.sp
-.ne 2
-.na
-\fB\fB-m\fR\fR
-.ad
-.sp .6
-.RS 4n
-Mount the file system without making an entry in \fB/etc/mnttab\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-g\fR\fR
-.ad
-.sp .6
-.RS 4n
-Globally mount the file system. On a clustered system, this globally mounts the
-file system on all nodes of the cluster. On a non-clustered system this has no
-effect.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-o\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify \fIFSType\fR-specific options in a comma separated (without spaces)
-list of suboptions and keyword-attribute pairs for interpretation by the
-\fIFSType\fR-specific module of the command. (See \fBmount_ufs\fR(1M).) When
-you use \fB-o\fR with a file system that has an entry in \fB/etc/vfstab\fR, any
-\fBmount\fR options entered for that file system in \fB/etc/vfstab\fR are
-ignored.
-.sp
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fBdevices | nodevices\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow or disallow the opening of device-special files. The default is
-\fBdevices\fR.
-.sp
-If you use \fBnosuid\fR in conjunction with \fBdevices\fR, the behavior is
-equivalent to that of \fBnosuid\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBexec | noexec\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow or disallow executing programs in the file system. Allow or disallow
-\fBmmap\fR(2) with \fBPROT_EXEC\fR for files within the file system. The
-default is \fBexec\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBloop\fR\fR
-.ad
-.sp .6
-.RS 4n
-Ignored for compatibility.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnbmand | nonbmand\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow or disallow non-blocking mandatory locking semantics on this file system.
-Non-blocking mandatory locking is disallowed by default.
-.sp
-If the file system is mounted with the \fBnbmand\fR option, then applications
-can use the \fBfcntl\fR(2) interface to place non-blocking mandatory locks on
-files and the system enforces those semantics. If you enable this option, it
-can cause standards conformant applications to see unexpected errors.
-.sp
-To avoid the possibility of obtaining mandatory locks on system files, do not
-use the \fBnbmand\fR option with the following file systems:
-.sp
-.in +2
-.nf
-/
-/usr
-/etc
-/var
-/proc
-/dev
-/devices
-/system/contract
-/system/object
-/etc/mnttab
-/etc/dfs/sharetab
-.fi
-.in -2
-.sp
-
-Do not use the \fBremount\fR option to change the \fBnbmand\fR disposition of
-the file system. The \fBnbmand\fR option is mutually exclusive of the global
-option. See \fB-g\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBro | rw\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify read-only or read-write. The default is \fBrw\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsetuid | nosetuid\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow or disallow \fBsetuid\fR or \fBsetgid\fR execution. The default is
-\fBsetuid\fR.
-.sp
-If you specify \fBsetuid\fR in conjunction with \fBnosuid\fR, the behavior is
-the same as \fBnosuid\fR.
-.sp
-\fBnosuid\fR is equivalent to \fBnosetuid\fR and \fBnodevices\fR. When
-\fBsuid\fR or \fBnosuid\fR is combined with \fBsetuid\fR or \fBnosetuid\fR and
-\fBdevices\fR or \fBnodevices\fR, the most restrictive options take effect.
-.sp
-This option is highly recommended whenever the file system is shared by way of
-NFS with the \fBroot=\fR option. Without it, NFS clients could add \fBsetuid\fR
-programs to the server or create devices that could open security holes.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsuid | nosuid\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow or disallow \fBsetuid\fR or \fBsetgid\fR execution. The default is
-\fBsuid\fR. This option also allows or disallows opening any device-special
-entries that appear within the filesystem.
-.sp
-\fBnosuid\fR is equivalent to \fBnosetuid\fR and \fBnodevices\fR. When
-\fBsuid\fR or \fBnosuid\fR is combined with \fBsetuid\fR or \fBnosetuid\fR and
-\fBdevices\fR or \fBnodevices\fR, the most restrictive options take effect.
-.sp
-This option is highly recommended whenever the file system is shared using NFS
-with the \fBroot=\fIoption\fR\fR, because, without it, NFS clients could add
-\fBsetuid\fR programs to the server, or create devices that could open security
-holes.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-O\fR\fR
-.ad
-.sp .6
-.RS 4n
-Overlay mount. Allow the file system to be mounted over an existing mount
-point, making the underlying file system inaccessible. If a mount is attempted
-on a pre-existing mount point without setting this flag, the mount will fail,
-producing the error "device busy".
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-r\fR\fR
-.ad
-.sp .6
-.RS 4n
-Mount the file system read-only.
-.RE
-
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRMounting and Unmounting a DVD Image Directly
-.sp
-.LP
-The following commands mount and unmount a DVD image.
-
-.sp
-.in +2
-.nf
-# \fBmount -F hsfs /images/solaris.iso /mnt/solaris-image\fR
-# \fBumount /mnt/solaris-image\fR
-.fi
-.in -2
-.sp
-
-.SH USAGE
-.LP
-See \fBlargefile\fR(5) for the description of the behavior of \fBmount\fR and
-\fBumount\fR when encountering files greater than or equal to 2 Gbyte ( 2^31
-bytes).
-.SH FILES
-.ne 2
-.na
-\fB\fB/etc/mnttab\fR\fR
-.ad
-.sp .6
-.RS 4n
-Table of mounted file systems.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/default/fs\fR\fR
-.ad
-.sp .6
-.RS 4n
-Default local file system type. Default values can be set for the following
-flags in \fB/etc/default/fs\fR. For example: \fBLOCAL=ufs\fR
-.sp
-.ne 2
-.na
-\fB\fBLOCAL:\fR\fR
-.ad
-.sp .6
-.RS 4n
-The default partition for a command if no \fIFSType\fR is specified.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/vfstab\fR\fR
-.ad
-.sp .6
-.RS 4n
-List of default parameters for each file system.
-.RE
-
-.SH SEE ALSO
-.LP
-\fBlofiadm\fR(1M), \fBmount_hsfs\fR(1M), \fBmount_nfs\fR(1M),
-\fBmount_pcfs\fR(1M), \fBmount_smbfs\fR(1M), \fBmount_tmpfs\fR(1M),
-\fBmount_udfs\fR(1M), \fBmount_ufs\fR(1M), \fBmountall\fR(1M),
-\fBumountall\fR(1M), \fBfcntl\fR(2), \fBmmap\fR(2), \fBmnttab\fR(4),
-\fBvfstab\fR(4), \fBattributes\fR(5), \fBlargefile\fR(5),
-\fBprivileges\fR(5), \fBlofs\fR(7FS), \fBpcfs\fR(7FS)
-.SH NOTES
-.LP
-If the directory on which a file system is to be mounted is a symbolic link,
-the file system is mounted on the directory to which the symbolic link refers,
-rather than on top of the symbolic link itself.
diff --git a/usr/src/man/man1m/mount_hsfs.1m b/usr/src/man/man1m/mount_hsfs.1m
deleted file mode 100644
index 27296e0241..0000000000
--- a/usr/src/man/man1m/mount_hsfs.1m
+++ /dev/null
@@ -1,282 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH MOUNT_HSFS 1M "May 29, 2008"
-.SH NAME
-mount_hsfs \- mount hsfs file systems
-.SH SYNOPSIS
-.LP
-.nf
-\fBmount\fR \fB-F\fR hsfs [\fIgeneric_options\fR]
- [\fB-o\fR \fIFSType-specific_options\fR] [\fB-O\fR ] \fIspecial\fR | \fImount_point\fR
-.fi
-
-.LP
-.nf
-\fBmount\fR \fB-F\fR hsfs [\fIgeneric_options\fR]
- [\fB-o\fR \fIFSType-specific_options\fR] [\fB-O\fR] \fIspecial\fR \fImount_point\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBmount\fR attaches an ISO 9660 filesystem (the High Sierra file system,
-\fBhsfs\fR, is a draft predecessor to ISO 9660, so the name reflects the
-filesystem's history) to the file system hierarchy at the \fImount_point\fR,
-which is the pathname of a directory. If \fImount_point\fR has any contents
-prior to the mount operation, these are hidden until the file system is
-unmounted.
-.sp
-.LP
-If \fBmount\fR is invoked with \fIspecial\fR or \fImount_point\fR as the
-only arguments, \fBmount\fR will search \fB/etc/vfstab\fR to fill in the
-missing arguments, including the \fIFSType-specific_options\fR; see
-\fBmount\fR(1M) for more details.
-.sp
-.LP
-The \fBhsfs\fR file system supports direct mounting of files containing the
-file system as well as block devices. See \fBmount\fR(1M) and
-\fBlofiadm\fR(1M).
-.sp
-.LP
-A file system conforming to ISO 9660 can contain extensions that allow it to
-overcome limitations of the original ISO 9660:1988 (version 1) standard. The
-following types of extensions are supported by \fBhsfs\fR:
-.sp
-.ne 2
-.na
-\fBRock Ridge extensions\fR
-.ad
-.sp .6
-.RS 4n
-This is the preferred type of extension as it allows file attributes, name
-length, and types equivalent to those on other UNIX-style filesystems. Example
-of supported features are device special files, POSIX permissions, symbolic
-links, and filenames of up to 255 bytes in length. Rock Ridge extensions also
-remove the ISO9660:1988 restriction on maximum nesting depth for directories
-(eight levels). \fBhsfs\fR automatically detects the presence of Rock Ridge
-extensions and uses them, unless mount options are specified to disable the use
-of Rock Ridge or to use a different extension.
-.RE
-
-.sp
-.ne 2
-.na
-\fBISO9660:1999 (version 2) extensions\fR
-.ad
-.sp .6
-.RS 4n
-The first version of ISO9660, released in 1988, supported only uppercase ASCII
-filenames of no more than 31 characters in length. ISO9660 version 2, released
-in 1999, provides an extension that allows filenames of at least 207 bytes
-that can use UTF-8 characters and removes the limitation on the nesting depth
-for directories. Unlike Rock Ridge, it does not provide support for UNIX-style
-file types and file attributes. \fBhsfs\fR automatically detects this extension
-and will use it for filename lookup if no Rock Ridge extensions are found on
-the media.
-.RE
-
-.sp
-.ne 2
-.na
-\fBJoliet extensions\fR
-.ad
-.sp .6
-.RS 4n
-The Joliet extension was devised by Microsoft to allow Unicode (UCS-2) long
-filenames with CDROM-based media. It allows filename lengths of up to 110
-Unicode characters and does not support UNIX-style file types and attributes.
-\fBhsfs\fR falls back to using Joliet if such an extension is present and
-neither Rock Ridge nor ISO9660 version 2 extensions are found.
-.sp
-If filenames are longer than the 64 UCS-2 characters officially allowed by
-Microsoft (that is, 110 Unicode characters), they can translate to up to 330
-UTF-8 octets. Filenames that translate to more than 255 UTF-8 octets will be
-truncated.
-.RE
-
-.SH OPTIONS
-.sp
-.ne 2
-.na
-\fB\fIgeneric_options\fR\fR
-.ad
-.sp .6
-.RS 4n
-See \fBmount\fR(1M) for the list of supported options.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-o\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify \fBhsfs\fR file system specific options. If invalid options are
-specified, a warning message is printed and the invalid options are ignored.
-The following options are available:
-.sp
-.ne 2
-.na
-\fB\fBglobal\fR | \fBnoglobal\fR\fR
-.ad
-.sp .6
-.RS 4n
-If \fBglobal\fR is specified and supported on the file system, and the system
-in question is part of a cluster, the file system will be globally visible on
-all nodes of the cluster. If \fBnoglobal\fR is specified, the mount will not be
-globally visible. The default behavior is \fBnoglobal\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBro\fR\fR
-.ad
-.sp .6
-.RS 4n
-Mount the file system read-only. This option is required.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrr\fR | \fBnrr\fR\fR
-.ad
-.sp .6
-.RS 4n
-Enable (\fBrr\fR) or disable (\fBnrr\fR) the use of Rock Ridge. \fBrr\fR is the
-default and need not be specified. If you use \fBnrr\fR and Rock Ridge
-extensions are present in the file system, ignore them and search for other
-available extensions or fall back to plain ISO9660.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBvers2\fR | \fBnovers2\fR\fR
-.ad
-.sp .6
-.RS 4n
-Enable or disable the use of ISO9660 version 2 extensions. If \fBvers2\fR is
-specified and ISO9660 version 2 extensions are available, \fBhsfs\fR will use
-ISO9660 version 2 even if the file system contains the preferred Rock Ridge
-extensions as well. If \fBnovers2\fR is specified, it will fall back to using
-either Joliet extensions or plain ISO9660 even if ISO9660 version 2 extensions
-are available.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBjoliet\fR | \fBnojoliet\fR\fR
-.ad
-.sp .6
-.RS 4n
-Enable or disable the use of Joliet extensions. If \fBjoliet\fR is specified
-and Joliet extensions are available, \fBhsfs\fR will use them even if the file
-system contains the preferred Rock Ridge and/or ISO9660 version 2 extensions.
-If \fBnojoliet\fR is specified, it will fall back to using plain ISO9660.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnotraildot\fR\fR
-.ad
-.sp .6
-.RS 4n
-File names on High Sierra file systems consist of a proper name and an
-extension separated by a '.' (dot) character. By default, the separating dot
-is always considered part of the file's name for all file access operations,
-even if there is no extension present. Specifying \fBnotraildot\fR makes it
-optional to specify the trailing dot to access a file whose name lacks an
-extension.
-.sp
-\fBExceptions:\fR This option is effective only on file systems for which Rock
-Ridge, ISO9660 version 2 or Joliet extensions are not active, either because
-they are not present on the CD-ROM, or they have been deliberately disabled via
-the \fBnrr\fR, \fBnovers2\fR and \fBnojoliet\fR option. If either extension is
-active, \fBhsfs\fR quietly ignores this option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnomaplcase\fR\fR
-.ad
-.sp .6
-.RS 4n
-File names on High Sierra/ISO9660 CD-ROMs with no extensions present should be
-uppercase characters only. By default, \fBhsfs\fR maps file names read from a
-\fBnon-Rock Ridge\fR disk to all lowercase characters. \fBnomaplcase\fR turns
-off this mapping. The exceptions for \fBnotraildot\fR discussed above apply to
-\fBnomaplcase\fR.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-O\fR\fR
-.ad
-.sp .6
-.RS 4n
-Overlay mount. Allow the file system to be mounted over an existing mount
-point, making the underlying file system inaccessible. If a mount is attempted
-on a preexisting mount point without setting this flag, the mount will fail,
-producing the error: \f(CWdevice busy\fR.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRMounting and Unmounting a DVD Image Directly
-.sp
-.LP
-The following commands mount and unmount a DVD image.
-
-.sp
-.in +2
-.nf
-# \fBmount -F hsfs /images/solaris.iso /mnt/solaris-image\fR
-# \fBumount /mnt/solaris-image\fR
-.fi
-.in -2
-.sp
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/mnttab\fR\fR
-.ad
-.sp .6
-.RS 4n
-table of mounted file systems
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/vfstab\fR\fR
-.ad
-.sp .6
-.RS 4n
-list of default parameters for each file system
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBlofiadm\fR(1M), \fBmount\fR(1M), \fBmountall\fR(1M), \fBmount\fR(2),
-\fBmnttab\fR(4), \fBvfstab\fR(4), \fBattributes\fR(5)
-.SH NOTES
-.sp
-.LP
-If the directory on which a file system is to be mounted is a symbolic link,
-the file system is mounted on the directory to which the symbolic link refers,
-rather than on top of the symbolic link itself.
diff --git a/usr/src/man/man1m/mount_nfs.1m b/usr/src/man/man1m/mount_nfs.1m
deleted file mode 100644
index caf5d86175..0000000000
--- a/usr/src/man/man1m/mount_nfs.1m
+++ /dev/null
@@ -1,838 +0,0 @@
-.\"
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.\"
-.\"
-.\" Copyright 1989 AT&T
-.\" Copyright (c) 2009 Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 2017 Nexenta Systems, Inc.
-.\"
-.Dd March 12, 2016
-.Dt MOUNT_NFS 1M
-.Os
-.Sh NAME
-.Nm mount_nfs
-.Nd mount remote NFS resources
-.Sh SYNOPSIS
-.Nm mount
-.Op Fl F Sy nfs
-.Op Ar generic_options
-.Op Fl o Ar specific_options
-.Ar resource
-.Nm mount
-.Op Fl F Sy nfs
-.Op Ar generic_options
-.Op Fl o Ar specific_options
-.Ar mount_point
-.Nm mount
-.Op Fl F Sy nfs
-.Op Ar generic_options
-.Op Fl o Ar specific_options
-.Ar resource mount_point
-.Sh DESCRIPTION
-The
-.Nm mount
-utility attaches a named
-.Ar resource
-to the file system hierarchy at the pathname location
-.Ar mount_point ,
-which must already exist.
-If
-.Ar mount_point
-has any contents prior to the
-.Nm mount
-operation, the contents remain hidden until the
-.Ar resource
-is once again unmounted.
-.Pp
-.Nm
-starts the
-.Xr lockd 1M
-and
-.Xr statd 1M
-daemons if they are not already running.
-.Pp
-If the resource is listed in the
-.Pa /etc/vfstab
-file, the command line can specify either
-.Ar resource
-or
-.Ar mount_point ,
-and
-.Nm mount
-consults
-.Pa /etc/vfstab
-for more information.
-If the
-.Fl F
-option is omitted,
-.Nm mount
-takes the file system type from
-.Pa /etc/vfstab .
-.Pp
-If the resource is not listed in the
-.Pa /etc/vfstab
-file, then the command line must specify both the
-.Ar resource
-and the
-.Ar mount_point .
-.Pp
-.Ar host
-can be an IPv4 or IPv6 address string.
-As IPv6 addresses already contain colons, enclose
-.Ar host
-in a pair of square brackets when specifying an IPv6 address string.
-Otherwise the first occurrence of a colon can be interpreted as the separator
-between the host name and path, for example,
-.Li [1080::8:800:200C:417A]:tmp/file .
-See
-.Xr inet 7P
-and
-.Xr inet6 7P .
-.Bl -tag -width Ds
-.It Ar host Ns \&: Ns Ar pathname
-Where
-.Ar host
-is the name of the NFS server host, and
-.Ar pathname
-is the path name of the directory on the server being mounted.
-The path name is interpreted according to the server's path name parsing rules
-and is not necessarily slash-separated, though on most servers, this is the
-case.
-.It No nfs:// Ns Ar host Ns Oo : Ns Ar port Oc Ns / Ns Ar pathname
-This is an NFS URL and follows the standard convention for NFS URLs as described
-in
-.Rs
-.%R NFS URL Scheme
-.%T RFC 2224
-.Re
-See the discussion of URLs and the public option under
-.Sx NFS FILE SYSTEMS
-for a more detailed discussion.
-.It Xo
-.Ar host Ns \&: Ns Ar pathname
-.No nfs:// Ns Ar host Ns Oo : Ns Ar port Oc Ns / Ns Ar pathname
-.Xc
-.Ar host Ns \&: Ns Ar pathname
-is a comma-separated list of
-.Ar host Ns \&: Ns Ar pathname .
-See the discussion of replicated file systems and failover under
-.Sx NFS FILE SYSTEMS
-for a more detailed discussion.
-.It Ar hostlist pathname
-.Ar hostlist
-is a comma-separated list of hosts.
-See the discussion of replicated file systems and failover under
-.Sx NFS FILE SYSTEMS
-for a more detailed discussion.
-.El
-.Pp
-The
-.Nm mount
-command maintains a table of mounted file systems in
-.Pa /etc/mnttab ,
-described in
-.Xr mnttab 4 .
-.Pp
-.Nm mount_nfs
-supports both NFSv3 and NFSv4 mounts.
-The default NFS version is NFSv4.
-.Ss Options
-See
-.Xr mount 1M
-for the list of supported
-.Ar generic_options .
-See
-.Xr share_nfs 1M
-for a description of server options.
-.Bl -tag -width Ds
-.It Fl o Ar specific_options
-Set file system specific options according to a comma-separated list with no
-intervening spaces.
-.El
-.Pp
-The following list describes
-.Ar specific_options :
-.Bl -tag -width Ds
-.It Sy acdirmax Ns = Ns Ar n
-Hold cached attributes for no more than
-.Ar n
-seconds after directory update.
-The default value is 60.
-.It Sy acdirmin Ns = Ns Ar n
-Hold cached attributes for at least
-.Ar n
-seconds after directory update.
-The default value is 30.
-.It Sy acregmax Ns = Ns Ar n
-Hold cached attributes for no more than
-.Ar n
-seconds after file modification.
-The default value is 60.
-.It Sy acregmin Ns = Ns Ar n
-Hold cached attributes for at least
-.Ar n
-seconds after file modification.
-The default value is 3.
-.It Sy actimeo Ns = Ns n
-Set
-.Sy min
-and
-.Sy max
-times for regular files and directories to
-.Ar n
-seconds.
-See
-.Sx File Attributes ,
-below, for a description of the effect of setting this option to 0.
-.Pp
-See
-.Sx Specifying Values for Attribute Cache Duration Options ,
-below, for a description of how
-.Sy acdirmax , acdirmin , acregmax , acregmin ,
-and
-.Sy actimeo
-are parsed on a
-.Nm mount
-command line.
-.It Sy bg Ns | Ns Sy fg
-If the first attempt fails, retry in the background, or, in the foreground.
-The default is
-.Sy fg .
-.It Sy forcedirectio Ns | Ns Sy noforcedirectio
-If
-.Sy forcedirectio
-is specified, then for the duration of the mount, forced direct I/O is used.
-If the filesystem is mounted using
-.Sy forcedirectio ,
-data is transferred directly between client and server, with no buffering on the
-client.
-If the filesystem is mounted using
-.Sy noforcedirectio ,
-data is buffered on the client.
-.Sy forcedirectio
-is a performance option that is of benefit only in large sequential data
-transfers.
-The default behavior is
-.Sy noforcedirectio .
-.It Sy grpid
-By default, the GID associated with a newly created file obeys the System V
-semantics; that is, the GID is set to the effective GID of the calling process.
-This behavior can be overridden on a per-directory basis by setting the set-GID
-bit of the parent directory; in this case, the GID of a newly created file is
-set to the GID of the parent directory
-.Po see
-.Xr open 2
-and
-.Xr mkdir 2
-.Pc .
-Files created on file systems that are mounted with the
-.Sy grpid
-option obeys BSD semantics independent of whether the set-GID bit of the parent
-directory is set; that is, the GID is unconditionally inherited from that of the
-parent directory.
-.It Sy hard Ns | Ns Sy soft
-Continue to retry requests until the server responds
-.Pq Sy hard
-or give up and return an error
-.Pq Sy soft .
-The default value is
-.Sy hard .
-Note that NFSv4 clients do not support soft mounts.
-.It Sy intr Ns | Ns Sy nointr
-Allow
-.Pq do not allow
-keyboard interrupts to kill a process that is hung while waiting for a response
-on a hard-mounted file system.
-The default is
-.Sy intr ,
-which makes it possible for clients to interrupt applications that can be
-waiting for a remote mount.
-.It Sy noac
-Suppress data and attribute caching.
-The data caching that is suppressed is the write-behind.
-The local page cache is still maintained, but data copied into it is immediately
-written to the server.
-.It Sy nocto
-Do not perform the normal close-to-open consistency.
-When a file is closed, all modified data associated with the file is flushed to
-the server and not held on the client.
-When a file is opened the client sends a request to the server to validate the
-client's local caches.
-This behavior ensures a file's consistency across multiple NFS clients.
-When
-.Sy nocto
-is in effect, the client does not perform the flush on close and the request for
-validation, allowing the possibility of differences among copies of the same
-file as stored on multiple clients.
-.Pp
-This option can be used where it can be guaranteed that accesses to a specified
-file system are made from only one client and only that client.
-Under such a condition, the effect of
-.Sy nocto
-can be a slight performance gain.
-.It Sy port Ns = Ns Ar n
-The server IP port number.
-The default is
-.Dv NFS_PORT .
-If the
-.Sy port
-option is specified, and if the resource includes one or more NFS URLs, and if
-any of the URLs include a port number, then the port number in the option and in
-the URL must be the same.
-.It Sy posix
-Request POSIX.1 semantics for the file system.
-Requires a mount Version 2
-.Xr mountd 1M
-on the server.
-See
-.Xr standards 5
-for information regarding POSIX.
-.It Sy proto Ns = Ns Ar netid Ns | Ns Sy rdma
-By default, the transport protocol that the NFS mount uses is the first
-available RDMA transport supported both by the client and the server.
-If no RDMA transport is found, then it attempts to use a TCP transport or,
-failing that, a UDP transport, as ordered in the
-.Pa /etc/netconfig
-file.
-If it does not find a connection oriented transport, it uses the first available
-connectionless transport.
-Use this option to override the default behavior.
-.Pp
-.Sy proto
-is set to the value of
-.Ar netid
-or
-.Sy rdma .
-.Ar netid
-is the value of the
-.Sy network_id
-field entry in the
-.Pa /etc/netconfig
-file.
-.Pp
-The UDP protocol is not supported for NFS Version 4.
-If you specify a UDP protocol with the
-.Sy proto
-option, NFS version 4 is not used.
-.It Sy public
-The
-.Sy public
-option forces the use of the public file handle when connecting to the NFS
-server.
-The resource specified might not have an NFS URL.
-See the discussion of URLs and the public option under
-.Sx NFS FILE SYSTEMS
-for a more detailed discussion.
-.It Sy quota Ns | Ns Sy noquota
-Enable or prevent
-.Xr quota 1M
-to check whether the user is over quota on this file system; if the file system
-has quotas enabled on the server, quotas are still checked for operations on
-this file system.
-.It Sy remount
-Remounts a read-only file system as read-write
-.Po using the
-.Sy rw
-option
-.Pc .
-This option cannot be used with other
-.Fl o
-options, and this option works only on currently mounted read-only file systems.
-.It Sy retrans Ns = Ns Ar n
-Set the number of NFS retransmissions to
-.Ar n .
-The default value is 5.
-For connection-oriented transports, this option has no effect because it is
-assumed that the transport performs retransmissions on behalf of NFS.
-.It Sy retry Ns = Ns Ar n
-The number of times to retry the
-.Nm mount
-operation.
-The default for the
-.Nm mount
-command is 10000.
-.Pp
-The default for the automounter is 0, in other words, do not retry.
-You might find it useful to increase this value on heavily loaded servers, where
-automounter traffic is dropped, causing unnecessary
-.Qq server not responding
-errors.
-.It Sy rsize Ns = Ns Ar n
-Set the read buffer size to a maximum of
-.Ar n
-bytes.
-The default value is 1048576 when using connection-oriented transports with
-Version 3 or Version 4 of the NFS protocol, and 32768 when using connection-less
-transports.
-The default can be negotiated down if the server prefers a smaller transfer
-size.
-.Qq Read
-operations may not necessarily use the maximum buffer size.
-When using Version 2, the default value is 32768 for all transports.
-.It Sy sec Ns = Ns Ar mode
-Set the security
-.Ar mode
-for NFS transactions.
-If
-.Sy sec Ns =
-is not specified, then the default action is to use AUTH_SYS over NFS Version 2
-mounts, use a user-configured default
-.Sy auth
-over NFS version 3 mounts, or to negotiate a mode over Version 4 mounts.
-.Pp
-The preferred mode for NFS Version 3 mounts is the default mode specified in
-.Pa /etc/nfssec.conf
-.Po see
-.Xr nfssec.conf 4
-.Pc
-on the client.
-If there is no default configured in this file or if the server does not export
-using the client's default mode, then the client picks the first mode that it
-supports in the array of modes returned by the server.
-These alternatives are limited to the security flavors listed in
-.Pa /etc/nfssec.conf .
-.Pp
-NFS Version 4 mounts negotiate a security mode when the server returns an array
-of security modes.
-The client attempts the mount with each security mode, in order, until one is
-successful.
-.Pp
-Only one mode can be specified with the
-.Sy sec Ns =
-option.
-See
-.Xr nfssec 5
-for the available
-.Ar mode
-options.
-.It Sy secure
-This option has been deprecated in favor of the
-.Sy sec Ns = Ns Sy dh
-option.
-.It Sy timeo Ns = Ns Ar n
-Set the NFS timeout to
-.Ar n
-tenths of a second.
-The default value is 11 tenths of a second for connectionless transports, and
-600 tenths of a second for connection-oriented transports.
-This value is ignored for connectionless transports.
-Such transports might implement their own timeouts, which are outside the
-control of NFS.
-.It Sy vers Ns = Ns Ar "NFS version number"
-By default, the version of NFS protocol used between the client and the server
-is the highest one available on both systems.
-If the NFS server does not support the client's default maximum, the next lowest
-version attempted until a matching version is found.
-See
-.Xr nfs 4
-for more information on setting default minimum and maximum client versions.
-.It Sy wsize Ns = Ns Ar n
-Set the write buffer size to a maximum of
-.Ar n
-bytes.
-The default value is 1048576 when using connection-oriented transports with
-Version 3 or Version 4 of the NFS protocol, and 32768 when using connection-less
-transports.
-The default can be negotiated down if the server prefers a smaller transfer
-size.
-.Qq Write
-operations may not necessarily use the maximum buffer size.
-When using Version 2, the default value is 32768 for all transports.
-.It Sy xattr Ns | Ns Sy noxattr
-Allow or disallow the creation and manipulation of extended attributes.
-The default is
-.Sy xattr .
-See
-.Xr fsattr 5
-for a description of extended attributes.
-.El
-.Sh NFS FILE SYSTEMS
-.Ss Background versus Foreground
-File systems mounted with the
-.Sy bg
-option indicate that
-.Nm mount
-is to retry in the background if the server's mount daemon
-.Pq Xr mountd 1M
-does not respond.
-.Nm mount
-retries the request up to the count specified in the
-.Sy retry Ns = Ns Ar n
-option
-.Po note that the default value for
-.Sy retry
-differs between
-.Nm mount
-and
-.Nm automount ;
-see the description of
-.Sy retry ,
-above
-.Pc .
-Once the file system is mounted, each NFS request made in the kernel waits
-.Sy timeo Ns = Ns Ar n
-tenths of a second for a response.
-If no response arrives, the time-out is multiplied by 2 and the request is
-retransmitted.
-When the number of retransmissions has reached the number specified in the
-.Sy retrans Ns = Ns Ar n
-option, a file system mounted with the
-.Sy soft
-option returns an error on the request; one mounted with the
-.Sy hard
-option prints a warning message and continues to retry the request.
-.Ss Hard versus Soft
-File systems that are mounted read-write or that contain executable files should
-always be mounted with the
-.Sy hard
-option.
-Applications using
-.Sy soft
-mounted file systems can incur unexpected I/O errors, file corruption, and
-unexpected program core dumps.
-The
-.Sy soft
-option is not recommended.
-.Ss Authenticated requests
-The server can require authenticated NFS requests from the client.
-.Sy sec Ns = Ns Sy dh
-authentication might be required.
-See
-.Xr nfssec 5 .
-.Ss URLs and the public option
-If the
-.Sy public
-option is specified, or if the
-.Ar resource
-includes and NFS URL,
-.Nm mount
-attempts to connect to the server using the public file handle lookup protocol.
-See
-.Rs
-.%R WebNFS Client Specification
-.%T RFC 2054
-.Re
-If the server supports the public file handle, the attempt is successful;
-.Nm mount
-does not need to contact the server's
-.Xr rpcbind 1M
-and the
-.Xr mountd 1M
-daemons to get the port number of the
-.Nm mount
-server and the initial file handle of
-.Ar pathname ,
-respectively.
-If the NFS client and server are separated by a firewall that allows all
-outbound connections through specific ports, such as
-.Dv NFS_PORT ,
-then this enables NFS operations through the firewall.
-The public option and the NFS URL can be specified independently or together.
-They interact as specified in the following matrix:
-.Bd -literal
- Resource Style
-
- host:pathname NFS URL
-
-public option Force public file Force public file
- handle and fail handle and fail
- mount if not supported. mount if not supported.
-
- Use Native paths. Use Canonical paths.
-
-default Use MOUNT protocol. Try public file handle
- with Canonical paths.
- Fall back to MOUNT
- protocol if not
- supported.
-.Ed
-.Pp
-A Native path is a path name that is interpreted according to conventions used
-on the native operating system of the NFS server.
-A Canonical path is a path name that is interpreted according to the URL rules.
-See
-.Rs
-.%R Uniform Resource Locators (URL)
-.%T RFC 1738
-.Re
-.Ss Replicated file systems and failover
-.Ar resource
-can list multiple read-only file systems to be used to provide data.
-These file systems should contain equivalent directory structures and identical
-files.
-It is also recommended that they be created by a utility such as
-.Xr rdist 1 .
-The file systems can be specified either with a comma-separated list of
-.Pa host:/pathname
-entries and/or NFS URL entries, or with a comma-separated list of hosts, if all
-file system names are the same.
-If multiple file systems are named and the first server in the list is down,
-failover uses the next alternate server to access files.
-If the read-only option is not chosen, replication is disabled.
-File access, for NFS Versions 2 and 3, is blocked on the original if NFS locks
-are active for that file.
-.Ss File Attributes
-To improve NFS read performance, files and file attributes are cached.
-File modification times get updated whenever a write occurs.
-However, file access times can be temporarily out-of-date until the cache gets
-refreshed.
-.Pp
-The attribute cache retains file attributes on the client.
-Attributes for a file are assigned a time to be flushed.
-If the file is modified before the flush time, then the flush time is extended
-by the time since the last modification
-.Po under the assumption that files that changed recently are likely to change
-soon
-.Pc .
-There is a minimum and maximum flush time extension for regular files and for
-directories.
-Setting
-.Sy actimeo Ns = Ns Ar n
-sets flush time to
-.Ar n
-seconds for both regular files and directories.
-.Pp
-Setting
-.Sy actimeo Ns = Ns Sy 0
-disables attribute caching on the client.
-This means that every reference to attributes is satisfied directly from the
-server though file data is still cached.
-While this guarantees that the client always has the latest file attributes from
-the server, it has an adverse effect on performance through additional latency,
-network load, and server load.
-.Pp
-Setting the
-.Sy noac
-option also disables attribute caching, but has the further effect of disabling
-client write caching.
-While this guarantees that data written by an application is written directly to
-a server, where it can be viewed immediately by other clients, it has a
-significant adverse effect on client write performance.
-Data written into memory-mapped file pages
-.Pq Xr mmap 2
-are not written directly to this server.
-.Ss Specifying Values for Attribute Cache Duration Options
-The attribute cache duration options are
-.Sy acdirmax , acdirmin , acregmax , acregmin ,
-and
-.Sy actimeo ,
-as described under
-.Sx Options.
-A value specified for
-.Sy actimeo
-sets the values of all attribute cache duration options except for any of these
-options specified following
-.Sy actimeo
-on a
-.Nm mount
-command line.
-For example, consider the following command:
-.Bd -literal -offset indent
-example# mount -o acdirmax=10,actimeo=1000 server:/path /localpath
-.Ed
-.Pp
-Because
-.Sy actimeo
-is the last duration option in the command line, its value
-.Pq 1000
-becomes the setting for all of the duration options, including
-.Sy acdirmax .
-Now consider:
-.Bd -literal -offset indent
-example# mount -o actimeo=1000,acdirmax=10 server:/path /localpath
-.Ed
-.Pp
-Because the
-.Sy acdirmax
-option follows
-.Sy actimeo
-on the command line, it is assigned the value specified
-.Pq 10 .
-The remaining duration options are set to the value of
-.Sy actimeo
-.Pq 1000 .
-.Sh FILES
-.Bl -tag -width Ds
-.It Pa /etc/mnttab
-table of mounted file systems
-.It Pa /etc/dfs/fstypes
-default distributed file system type
-.It Pa /etc/vfstab
-table of automatically mounted resources
-.El
-.Sh EXAMPLES
-.Bl -tag -width Ds
-.It Sy Example 1 No Mounting an NFS File System
-To mount an NFS file system:
-.Bd -literal
-example# mount serv:/usr/src /usr/src
-.Ed
-.It Xo
-.Sy Example 2
-Mounting An NFS File System Read-Only With No suid Privileges
-.Xc
-To mount an NFS file system read-only with no suid privileges:
-.Bd -literal
-example# mount -r -o nosuid serv:/usr/src /usr/src
-.Ed
-.It Xo
-.Sy Example 3
-Mounting An NFS File System Over Version 2, with the UDP Transport
-.Xc
-To mount an NFS file system over Version 2, with the UDP transport:
-.Bd -literal
-example# mount -o vers=2,proto=udp serv:/usr/src /usr/src
-.Ed
-.It Xo
-.Sy Example 4
-Mounting an NFS File System Using An NFS URL
-.Xc
-To mount an NFS file system using an NFS URL
-.Pq a canonical path :
-.Bd -literal
-example# mount nfs://serv/usr/man /usr/man
-.Ed
-.It Xo
-.Sy Example 5
-Mounting An NFS File System Forcing Use Of The Public File Handle
-.Xc
-To mount an NFS file system and force the use of the public file handle
-and an NFS URL
-.Pq a canonical path
-that has a non 7-bit ASCII escape sequence:
-.Bd -literal
-example# mount -o public nfs://serv/usr/%A0abc /mnt/test
-.Ed
-.It Xo
-.Sy Example 6
-Mounting an NFS File System Using a Native Path
-.Xc
-To mount an NFS file system using a native path
-.Po where the server uses colons
-.Pq Qq Sy \:
-as the component separator
-.Pc
-and the public file handle:
-.Bd -literal
-example# mount -o public serv:C:doc:new /usr/doc
-.Ed
-.It Xo
-.Sy Example 7
-Mounting a Replicated Set of NFS File Systems with the Same Pathnames
-.Xc
-To mount a replicated set of NFS file systems with the same pathnames:
-.Bd -literal
-example# mount serv-a,serv-b,serv-c:/usr/man /usr/man
-.Ed
-.It Xo
-.Sy Example 8
-Mounting a Replicated Set of NFS File Systems with Different Pathnames
-.Xc
-To mount a replicated set of NFS file systems with different pathnames:
-.Bd -literal
-example# mount serv-x:/usr/man,serv-y:/var/man,nfs://serv-z/man /usr/man
-.Ed
-.El
-.Sh SEE ALSO
-.Xr rdist 1 ,
-.Xr lockd 1M ,
-.Xr mountall 1M ,
-.Xr mountd 1M ,
-.Xr nfsd 1M ,
-.Xr quota 1M ,
-.Xr statd 1M ,
-.Xr mkdir 2 ,
-.Xr mmap 2 ,
-.Xr mount 2 ,
-.Xr open 2 ,
-.Xr umount 2 ,
-.Xr mnttab 4 ,
-.Xr nfs 4 ,
-.Xr nfssec.conf 4 ,
-.Xr attributes 5 ,
-.Xr fsattr 5 ,
-.Xr nfssec 5 ,
-.Xr standards 5 ,
-.Xr lofs 7FS ,
-.Xr inet 7P ,
-.Xr inet6 7P
-.Rs
-.%A Callaghan
-.%A Brent
-.%R WebNFS Client Specification
-.%T RFC 2054
-.%D October 1996
-.Re
-.Rs
-.%A Callaghan
-.%A Brent
-.%R NFS URL Scheme
-.%T RFC 2224
-.%D October 1997
-.Re
-.Rs
-.%A Berners-Lee
-.%A Masinter
-.%A McCahill
-.%R Uniform Resource Locators (URL)
-.%T RFC 1738
-.%D December 1994
-.Re
-.Sh NOTES
-An NFS server should not attempt to mount its own file systems.
-See
-.Xr lofs 7FS .
-.Pp
-If the directory on which a file system is to be mounted is a symbolic link,
-the file system is mounted on the directory to which the symbolic link refers,
-rather than being mounted on top of the symbolic link itself.
-.Pp
-SunOS 4.x used the
-.Sy biod
-maintenance procedure to perform parallel read-ahead and write-behind on NFS
-clients.
-SunOS 5.x made
-.Sy biod
-obsolete with multi-threaded processing, which transparently performs parallel
-read-ahead and write-behind.
-.Pp
-Since the root
-.Pq Pa /
-file system is mounted read-only by the kernel during the boot process, only the
-.Sy remount
-option
-.Po and options that can be used in conjunction with
-.Sy remount
-.Pc
-affect the root
-.Pq Pa /
-entry in the
-.Pa /etc/vfstab
-file.
-.Pp
-The NFS client service is managed by the service management facility,
-.Xr smf 5 ,
-under the service identifier:
-.Bd -literal -offset indent
-svc:/network/nfs/client:default
-.Ed
-.Pp
-Administrative actions on this service, such as enabling, disabling, or
-requesting restart, can be performed using
-.Xr svcadm 1M .
-The service's status can be queried using the
-.Xr svcs 1
-command.
diff --git a/usr/src/man/man1m/mount_pcfs.1m b/usr/src/man/man1m/mount_pcfs.1m
deleted file mode 100644
index a8517ea47d..0000000000
--- a/usr/src/man/man1m/mount_pcfs.1m
+++ /dev/null
@@ -1,195 +0,0 @@
-'\" te
-.\" Based on mount_hsfs(1M), which is Copyright 1989 AT&T Copyright (c) 2006 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH MOUNT_PCFS 1M "May 12, 2008"
-.SH NAME
-mount_pcfs \- mount pcfs file systems
-.SH SYNOPSIS
-.LP
-.nf
-\fBmount\fR \fB-F\fR pcfs [\fIgeneric_options\fR]
- [\fB-o\fR \fIFSType-specific_options\fR] \fIspecial\fR | \fImount_point\fR
-.fi
-
-.LP
-.nf
-\fBmount\fR \fB-F\fR pcfs [\fIgeneric_options\fR]
- [\fB-o\fR \fIFSType-specific_options\fR] \fIspecial\fR \fImount_point\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBmount\fR attaches an \fBMS-DOS\fR file system (\fBpcfs\fR) to the file
-system hierarchy at the \fImount_point\fR, which is the pathname of a
-directory. If \fImount_point\fR has any contents prior to the \fBmount\fR
-operation, these are hidden until the file system is unmounted.
-.sp
-.LP
-The \fBpcfs\fR file system supports direct mounting of files containing the
-file system as well as block devices. See \fBmount\fR(1M) and
-\fBlofiadm\fR(1M).
-.sp
-.LP
-If \fBmount\fR is invoked with \fIspecial\fR or \fImount_point\fR as the only
-arguments, \fBmount\fR will search \fB/etc/vfstab\fR to fill in the missing
-arguments, including the \fIFSType-specific_options\fR; see \fBmount\fR(1M) for
-more details.
-.sp
-.LP
-The \fIspecial\fR argument can be one of two special device file types:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-A floppy disk, such as \fB/dev/diskette0\fR or \fB/dev/diskette1\fR.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-A DOS logical drive on a hard disk expressed as
-\fIdevice-name\fR\fB:\fR\fIlogical-drive\fR , where \fIdevice-name\fR specifies
-the special block device-file for the whole disk and \fIlogical-drive\fR is
-either a drive letter (c through z) or a drive number (1 through 24). Examples
-are \fB/dev/dsk/c0t0d0p0:\fR\fIc\fR and \fB/dev/dsk/c0t0d0p0:\fR\fI1\fR.
-.RE
-.sp
-.LP
-The \fIspecial\fR device file type must have a formatted \fBMS-DOS\fR file
-system with either a 12-bit, 16-bit, or 32-bit File Allocation Table.
-.SH OPTIONS
-.sp
-.ne 2
-.na
-\fB\fIgeneric_options\fR\fR
-.ad
-.sp .6
-.RS 4n
-See \fBmount\fR(1M) for the list of supported options.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-o\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify \fBpcfs\fR file system-specific options. The following options are
-supported:
-.sp
-.ne 2
-.na
-\fB\fBclamptime\fR | \fBnoclamptime\fR\fR
-.ad
-.sp .6
-.RS 4n
-File timestamps in \fBpcfs\fR cover a range between January 1st 1980 and
-December 31st 2127. This is not equal to the range of \fBtime_t\fR on Unix for
-either 32-bit or 64-bit applications. In particular, 32-bit applications fail
-with \fBEOVERFLOW\fR errors on the \fBstat\fR(2) system call when timestamps
-beyond the range of 32-bit \fBtime_t\fR are encountered. In order to prevent
-such spurious failures, \fBpcfs\fR by default clamps timestamps to the common
-subset of possible \fBpcfs\fR timestamps and the range available to 32-bit
-applications in Unix. The \fBclamptime\fR mount option therefore is active by
-default. If you want access to the full range of possible timestamps on
-\fBpcfs\fR, mount the file system with the \fBnoclamptime\fR mount option. Note
-that if \fBnoclamptime\fR is used, only 64-bit applications will have access to
-timestamps beyond January 19th 2038, 03:14:06 UTC; 32-bit applications will
-encounter \fBEOVERFLOW\fR errors.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfoldcase\fR | \fBnofoldcase\fR\fR
-.ad
-.sp .6
-.RS 4n
-Force uppercase characters in filenames to lowercase when reading them from the
-filesystem. This is for compatibility with the previous behavior of \fBpcfs\fR.
-The default is \fBnofoldcase\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBhidden\fR | \fBnohidden\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow or disallow listing of files with hidden or system bits set. Option
-\fBhidden\fR is the default. When \fBnohidden\fR is effect, hidden and system
-files are neither visible nor accessible. Note that PCFS in previous releases
-of the Solaris operating system used the \fBnohidden\fR option as the default.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBatime\fR | \fBnoatime\fR\fR
-.ad
-.sp .6
-.RS 4n
-Enable or disable write access timestamps on DOS-formatted media. Default for
-fixed disks is \fBatime\fR, while for removable media \fBnoatime\fR is used.
-The latter default is so that writes to flash-based media ("memory sticks") can
-be minimized, to prolong lifetime.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBtimezone=\fItimezone\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Timestamps on DOS-formatted media are recorded in the local time of the
-recording system. This can cause confusion when accessing removable media in
-which the recording and receiving system use different time zones. Use this
-option to force media timestamps to be interpreted for a specific time zone.
-The \fBmount_pcfs\fR command converts the given time zone name into a numerical
-offset that is passed to the \fBpcfs\fR kernel module, using the same rules as
-described in \fBenviron\fR(5) for the \fBTZ\fR environment variable. By
-default, the \fBtimezone\fR value is taken from the \fBTZ\fR environment
-variable.
-.RE
-
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/mnttab\fR\fR
-.ad
-.sp .6
-.RS 4n
-table of mounted file systems
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/vfstab\fR\fR
-.ad
-.sp .6
-.RS 4n
-list of default parameters for each file system
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBlofiadm\fR(1M), \fBmount\fR(1M), \fBmountall\fR(1M), \fBmount\fR(2),
-\fBstat\fR(2), \fBtime\fR(2), \fBmnttab\fR(4), \fBvfstab\fR(4),
-\fBattributes\fR(5), \fBenviron\fR(5), \fBpcfs\fR(7FS)
-.SH NOTES
-.sp
-.LP
-If the directory on which a file system is to be mounted is a symbolic link,
-the file system is mounted on the directory to which the symbolic link refers,
-rather than on top of the symbolic link itself.
diff --git a/usr/src/man/man1m/mount_smbfs.1m b/usr/src/man/man1m/mount_smbfs.1m
deleted file mode 100644
index 74d38ba013..0000000000
--- a/usr/src/man/man1m/mount_smbfs.1m
+++ /dev/null
@@ -1,513 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved.
-.\" Portions Copyright 1994-2008 The FreeBSD Project. All rights reserved.
-.\" Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and
-.\" the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.THIS SOFTWARE IS PROVIDED
-.\" BY THE AUTHOR AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-.\" SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
-.\" OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-.\" Copyright 2012 Nexenta Systems, Inc. All rights reserved.
-.TH MOUNT_SMBFS 1M "November 22, 2021"
-.SH NAME
-mount_smbfs, umount_smbfs \- mount and unmount a shared resource from a CIFS
-file server
-.SH SYNOPSIS
-.nf
-\fB/sbin/mount\fR [\fB-F smbfs\fR] [\fIgeneric-options\fR] [\fB-o\fR \fIname\fR\fB=\fR\fIvalue\fR] [\fB-O\fR] \fIresource\fR
-.fi
-
-.LP
-.nf
-\fB/sbin/mount\fR [\fB-F smbfs\fR] [\fIgeneric-options\fR] [\fB-o\fR \fIname\fR\fB=\fR\fIvalue\fR] [\fB-O\fR] \fImount-point\fR
-.fi
-
-.LP
-.nf
-\fB/sbin/mount\fR [\fB-F smbfs\fR] [\fIgeneric-options\fR] [\fB-o\fR \fIname\fR\fB=\fR\fIvalue\fR]
- [\fB-O\fR] \fIresource\fR \fImount-point\fR
-.fi
-
-.LP
-.nf
-\fB/sbin/umount\fR [\fB-F smbfs\fR] [\fIgeneric-options\fR] \fImount-point\fR
-.fi
-
-.SH DESCRIPTION
-The \fBmount\fR utility attaches a named resource, \fIresource\fR, to the file
-system hierarchy at the path name location, \fImount-point\fR, which must
-already exist.
-.sp
-.LP
-If \fImount-point\fR has any contents prior to the \fBmount\fR operation, those
-contents remain hidden until the resource is unmounted. An authorized user with
-the \fBSYS_MOUNT\fR privilege can perform a \fBmount\fR operation. Also, a user
-can perform SMBFS mount operations on a directory the user owns.
-.sp
-.LP
-If the resource is listed in the \fB/etc/vfstab\fR file, you can specify either
-\fIresource\fR or \fImount-point\fR as the \fBmount\fR command will consult the
-\fB/etc/vfstab\fR file for more information. If the \fB-F\fR option is omitted,
-\fBmount\fR takes the file system type from the entry in the \fB/etc/vfstab\fR
-file.
-.sp
-.LP
-If the resource is not listed in the \fB/etc/vfstab\fR file, the command line
-must specify both \fIresource\fR and \fImount-point\fR.
-.sp
-.LP
-The \fBumount\fR utility detaches a mounted file system from the file system
-hierarchy. An authorized user with the \fBSYS_MOUNT\fR privilege can perform a
-\fBumount\fR operation. Also, a user can perform SMBFS unmount operations on a
-directory the user owns.
-.sp
-.LP
-The \fBnetwork/smb/client\fR service must be enabled to successfully mount a
-CIFS share. This service is enabled, by default.
-.sp
-.LP
-To enable the service, enter the following \fBsvcadm\fR(1M) command:
-.sp
-.in +2
-.nf
-# \fBsvcadm enable network/smb/client\fR
-.fi
-.in -2
-.sp
-
-.SS "Operands"
-The \fBmount\fR command supports the following operands:
-.sp
-.ne 2
-.na
-\fB\fIresource\fR
-//[\fIworkgroup\fR;][\fIuser\fR[:\fIpassword\fR]@]\fIserver\fR/\fIshare\fR\fR
-.ad
-.sp .6
-.RS 4n
-.sp
-.LP
-The name of the resource to be mounted. In addition to its name, you can
-specify the following information about the resource:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fIpassword\fR is the password associated with \fIuser\fR. If \fIpassword\fR is
-not specified, the mount first attempts to use the password stored by the
-\fBsmbutil login\fR command (if any). If that password fails to authenticate,
-the \fBmount_smbfs\fR prompts you for a password.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fIserver\fR is the DNS or NetBIOS name of the remote computer.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fIshare\fR is the resource name on the remote server.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fIuser\fR is the remote user name. If \fIuser\fR is omitted, the logged in
-user ID is used.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fIworkgroup\fR is the name of the workgroup or the Windows domain in which the
-user name is defined.
-.sp
-If the resource includes a workgroup, you must escape the semicolon that
-appears after the workgroup name to prevent it from being interpreted by the
-command shell. For instance, surround the entire resource name with double
-quotes: \fBmount -F smbfs "//SALES;george@RSERVER" /mnt\fR.
-.RE
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fImount-point\fR\fR
-.ad
-.sp .6
-.RS 4n
-The path to the location where the file system is to be mounted or unmounted.
-The \fBmount\fR command maintains a table of mounted file systems in the
-\fB/etc/mnttab\fR file. See the \fBmnttab\fR(4) man page.
-.RE
-
-.SH OPTIONS
-See the \fBmount\fR(1M) man page for the list of supported
-\fIgeneric-options\fR.
-.sp
-.ne 2
-.na
-\fB\fB-o\fR \fIname\fR\fB=\fR\fIvalue\fR or\fR
-.ad
-.br
-.na
-\fB\fB-o\fR \fIname\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets the file system-specific properties. You can specify more than one
-name-value pair as a list of comma-separated pairs. No spaces are permitted in
-the list. The properties are as follows:
-
-.sp
-.ne 2
-.na
-\fB\fBacl\fR|\fBnoacl\fR\fR
-.ad
-.sp .6
-.RS 4n
-Enable (or disable) presentation of Access Control Lists (ACLs)
-on files and directories under this \fBsmbfs\fR(7FS) mount.
-The default behavior is \fBnoacl\fR, which presents files and
-directories as owned by the owner of the mount point and having
-permissions based on \fBfileperms\fR or \fBdirperms\fR.
-With the \fBacl\fR mount option, files are presented with ACLs
-obtained from the SMB server.
-Setting the \fBacl\fR mount option is not advised unless the system
-is joined to an Active Directory domain and using \fBldap\fR(1)
-so it can correctly present ACL identities from the SMB server.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdirperms=\fR\fIoctaltriplet\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the permissions to be assigned to directories. The value must be
-specified as an octal triplet, such as \fB755\fR. The default value for the
-directory mode is taken from the \fBfileperms\fR setting, with execute
-permission added where \fBfileperms\fR has read permission.
-.sp
-Note that these permissions have no relation to the rights granted by the CIFS
-server.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfileperms=\fR\fIoctaltriplet\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the permissions to be assigned to files. The value must be specified
-as an octal triplet, such as \fB644\fR. The default value is \fB700\fR.
-.sp
-Note that these permissions have no relation to the rights granted by the CIFS
-server.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBgid=\fR\fIgroupid\fR\fR
-.ad
-.sp .6
-.RS 4n
-Assigns the specified group ID to files. The default value is the group ID of
-the directory where the volume is mounted.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBintr\fR|\fBnointr\fR\fR
-.ad
-.sp .6
-.RS 4n
-Enable (or disable) cancellation of \fBsmbfs\fR(7FS) I/O operations when the
-user interrupts the calling thread (for example, by hitting Ctrl-C while an
-operation is underway). The default is \fBintr\fR (interruption enabled), so
-cancellation is normally allowed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnoprompt\fR\fR
-.ad
-.sp .6
-.RS 4n
-Suppresses the prompting for a password when mounting a share. This property
-enables you to permit anonymous access to a share. Anonymous access does not
-require a password.
-.sp
-The \fBmount\fR operation fails if a password is required, the \fBnoprompt\fR
-property is set, and no password is stored by the \fBsmbutil login\fR command.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBretry_count=\fR\fInumber\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the number of SMBFS retries to attempt before the connection is
-marked as broken. By default, 4 attempts are made.
-.sp
-The \fBretry_count\fR property value set by the \fBmount\fR command overrides
-the global value set in SMF or the value set in your \fB\&.nsmbrc\fR file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBtimeout=\fR\fIseconds\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the CIFS request timeout. By default, the timeout is 15 seconds.
-.sp
-The \fBtimeout\fR property value set by the \fBmount\fR command overrides the
-global value set in SMF or the value set in your \fB\&.nsmbrc\fR file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBuid=\fR\fIuserid\fR\fR
-.ad
-.sp .6
-.RS 4n
-Assigns the specified user ID files. The default value is the owner ID of the
-directory where the volume is mounted.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBxattr\fR|\fBnoxattr\fR\fR
-.ad
-.sp .6
-.RS 4n
-Enable (or disable) Solaris Extended Attributes in this mount point. This
-option defaults to \fBxattr\fR (enabled Extended Attributes), but note: if the
-CIFS server does not support CIFS "named streams", \fBsmbfs\fR(7FS) forces this
-option to \fBnoxattr\fR. When a mount has the \fBnoxattr\fR option, attempts to
-use Solaris Extended attributes fail with EINVAL.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-O\fR\fR
-.ad
-.sp .6
-.RS 4n
-Overlays mount. Allow the file system to be mounted over an existing mount
-point, making the underlying file system inaccessible. If a mount is attempted
-on a pre-existing mount point without setting this flag, the mount fails,
-producing the error "device busy."
-.RE
-
-.SH EXAMPLES
-\fBExample 1 \fRMounting an SMBFS Share
-.sp
-.LP
-The following example shows how to mount the \fB/tmp\fR share from the
-\fBnano\fR server in the \fBSALES\fR workgroup on the local \fB/mnt\fR mount
-point. You must supply the password for the \fBroot\fR user to successfully
-perform the mount operation.
-
-.sp
-.in +2
-.nf
-# \fBmount -F smbfs "//SALES;root@nano.example.org/tmp" /mnt\fR
-Password:
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRVerifying That an SMBFS File System Is Mounted
-.sp
-.LP
-The following example shows how to mount the \fB/tmp\fR share from the
-\fBnano\fR server on the local \fB/mnt\fR mount point. You must supply the
-password for the \fBroot\fR user to successfully perform the mount operation.
-
-.sp
-.in +2
-.nf
-# \fBmount -F smbfs //root@nano.example.org/tmp /mnt\fR
-Password:
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-You can verify that the share is mounted in the following ways:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-View the file system entry in the \fB/etc/mnttab\fR file.
-.sp
-.in +2
-.nf
-# \fBgrep root /etc/mnttab\fR
-//root@nano.example.org/tmp /mnt smbfs dev=4900000 1177097833
-.fi
-.in -2
-.sp
-
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-View the output of the \fBmount\fR command.
-.sp
-.in +2
-.nf
-# \fBmount | grep root\fR
-/mnt on //root@nano.example.org/tmp read/write/setuid/devices/dev=4900000 on
-Fri Apr 20 13:37:13 2007
-.fi
-.in -2
-.sp
-
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-View the output of the \fBdf /mnt\fR command.
-.sp
-.in +2
-.nf
-# \fBdf /mnt\fR
-/mnt (//root@nano.example.org/tmp): 3635872 blocks -1 files
-.fi
-.in -2
-.sp
-
-.RE
-.sp
-.LP
-Obtain information about the mounted share by viewing the output of the \fBdf
--k /mnt\fR command.
-
-.sp
-.in +2
-.nf
-# \fBdf -k /mnt\fR
-Filesystem kbytes used avail capacity Mounted on
-//root@nano.example.org/tmp
- 1882384 64448 1817936 4% /mnt
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRUnmounting a CIFS Share
-.sp
-.LP
-This example assumes that a CIFS share has been mounted on the \fB/mnt\fR mount
-point. The following command line unmounts the share from the mount point.
-
-.sp
-.in +2
-.nf
-# \fBumount /mnt\fR
-.fi
-.in -2
-.sp
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/etc/mnttab\fR\fR
-.ad
-.sp .6
-.RS 4n
-Table of mounted file systems.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/dfs/fstypes\fR\fR
-.ad
-.sp .6
-.RS 4n
-Default distributed file system type.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/vfstab\fR\fR
-.ad
-.sp .6
-.RS 4n
-Table of automatically mounted resources.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB$HOME/.nsmbrc\fR\fR
-.ad
-.sp .6
-.RS 4n
-User-settable mount point configuration file to store the description for each
-connection.
-.RE
-
-.SH ATTRIBUTES
-See the \fBattributes\fR(5) man page for descriptions of the following
-attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Committed
-.TE
-
-.SH SEE ALSO
-\fBldap\fR(1), \fBsmbutil\fR(1),
-\fBmount\fR(1M), \fBmountall\fR(1M), \fBsvcadm\fR(1M),
-\fBacl\fR(2), \fBfcntl\fR(2), \fBlink\fR(2), \fBmknod\fR(2), \fBmount\fR(2),
-\fBsymlink\fR(2), \fBumount\fR(2), \fBmnttab\fR(4), \fBnsmbrc\fR(4),
-\fBvfstab\fR(4), \fBattributes\fR(5), \fBpcfs\fR(7FS), \fBsmbfs\fR(7FS)
-.SH AUTHORS
-This manual page contains material originally authored by Boris Popov,
-\fBbpATbutya.kz\fR, \fBbpATFreeBSD.org\fR.
-.SH NOTES
-The Solaris CIFS client always attempts to use \fBgethostbyname()\fR to resolve
-host names. If the host name cannot be resolved, the CIFS client uses NetBIOS
-name resolution (NBNS). By default, the Solaris CIFS client permits the use of
-NBNS to enable Solaris CIFS clients in Windows environments to work without
-additional configuration.
-.sp
-.LP
-Since NBNS has been exploited in the past, you might want to disable it. To
-disable NBNS, set the \fBnbns-enabled\fR service management facility property
-to \fBfalse\fR. By default, \fBnbns-enabled\fR is set to \fBtrue\fR.
-.sp
-.LP
-If the directory on which a file system is to be mounted is a symbolic link,
-the file system is mounted on the directory to which the symbolic link refers,
-rather than being mounted on top of the symbolic link itself.
diff --git a/usr/src/man/man1m/mount_tmpfs.1m b/usr/src/man/man1m/mount_tmpfs.1m
deleted file mode 100644
index 3b07dbde71..0000000000
--- a/usr/src/man/man1m/mount_tmpfs.1m
+++ /dev/null
@@ -1,129 +0,0 @@
-'\" te
-.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 2015 Joyent, Inc.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH MOUNT_TMPFS 1M "Mar 18, 2015"
-.SH NAME
-mount_tmpfs \- mount tmpfs file systems
-.SH SYNOPSIS
-.LP
-.nf
-\fBmount\fR [\fB-F\fR tmpfs] [\fB-o\fR \fIspecific_options\fR] [\fB-O\fR] \fIspecial\fR \fImount_point\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-\fBtmpfs\fR is a memory based file system which uses kernel resources relating
-to the \fBVM\fR system and page cache as a file system.
-.sp
-.LP
-\fBmount\fR attaches a \fBtmpfs\fR file system to the file system hierarchy at
-the pathname location \fImount_point\fR, which must already exist. If
-\fImount_point\fR has any contents prior to the \fBmount\fR operation, these
-remain hidden until the file system is once again unmounted. The attributes
-(mode, owner, and group) of the root of the \fBtmpfs\fR filesystem are
-inherited from the underlying \fImount_point\fR, provided that those attributes
-are determinable. If not, the root's attributes are set to their default
-values. The mode may also be overridden by the \fBmode\fR mount option, which
-takes precedence if set.
-.sp
-.LP
-The \fIspecial\fR argument is usually specified as \fBswap\fR but is in fact
-disregarded and assumed to be the virtual memory resources within the system.
-.SH OPTIONS
-.ne 2
-.na
-\fB\fB-o\fR \fIspecific_options\fR\fR
-.ad
-.RS 23n
-Specify \fBtmpfs\fR file system specific options in a comma-separated list with
-no intervening spaces. If invalid options are specified, a warning message is
-printed and the invalid options are ignored. The following options are
-available:
-.sp
-.ne 2
-.na
-\fB\fBremount\fR\fR
-.ad
-.sp .6
-.RS 19n
-Remounts a file system with a new size. A size not explicitly
-set with \fBremount\fR reverts to no limit.
-.RE
-
-.sp
-.ne 2
-.na
-\fBmode=\fIoctalmode\fR\fR
-.ad
-.RS 19n
-The \fImode\fR argument controls the permissions of the \fBtmpfs\fR mount
-point. The argument must be an octal number, of the form passed to
-\fBchmod\fR(1). Only the access mode, setuid, setgid, and sticky bits (a mask
-of \fB07777\fR) may be set. If this option is not provided then the default
-mode behaviour, as described above, applies.
-.RE
-
-.sp
-.sp
-.ne 2
-.na
-\fBsize=\fIsz\fR\fR
-.ad
-.RS 19n
-The \fIsz\fR argument controls the size of this particular \fBtmpfs\fR file
-system. If the argument is has a `k' suffix, the number will be interpreted as
-a number of kilobytes. An `m' suffix will be interpreted as a number of
-megabytes. A `g' suffix will be interpreted as a number of gigabytes. A `%'
-suffix will be interpreted as a percentage of the swap space available to the
-zone. No suffix is interpreted as bytes. In all cases, the actual size of
-the file system is the number of bytes specified, rounded up to the physical
-pagesize of the system.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBxattr\fR | \fBnoxattr\fR\fR
-.ad
-.RS 19n
-Allow or disallow the creation and manipulation of extended attributes. The
-default is \fBxattr\fR. See \fBfsattr\fR(5) for a description of extended
-attributes.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-O\fR\fR
-.ad
-.RS 23n
-Overlay mount. Allow the file system to be mounted over an existing mount
-point, making the underlying file system inaccessible. If a mount is attempted
-on a pre-existing mount point without setting this flag, the mount will fail,
-producing the error: \f(CWdevice busy\fR.
-.RE
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/etc/mnttab\fR\fR
-.ad
-.RS 15n
-Table of mounted file systems
-.RE
-
-.SH SEE ALSO
-.LP
-\fBmount\fR(1M), \fBmkdir\fR(2), \fBmount\fR(2), \fBopen\fR(2),
-\fBumount\fR(2), \fBmnttab\fR(4), \fBattributes\fR(5), \fBfsattr\fR(5),
-\fBtmpfs\fR(7FS)
-.SH NOTES
-.LP
-If the directory on which a file system is to be mounted is a symbolic link,
-the file system is mounted on the directory to which the symbolic link refers,
-rather than on top of the symbolic link itself.
diff --git a/usr/src/man/man1m/mount_udfs.1m b/usr/src/man/man1m/mount_udfs.1m
deleted file mode 100644
index 9cdc5cbeed..0000000000
--- a/usr/src/man/man1m/mount_udfs.1m
+++ /dev/null
@@ -1,219 +0,0 @@
-'\" te
-.\" Copyright (c) 2008 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH MOUNT_UDFS 1M "May 12, 2008"
-.SH NAME
-mount_udfs \- mount a udfs file system
-.SH SYNOPSIS
-.LP
-.nf
-\fBmount\fR \fB-F\fR udfs [\fIgeneric_options\fR] [\fB-o\fR \fIspecific_options\fR]
- [\fB-O\fR] \fIspecial\fR \fImount_point\fR
-.fi
-
-.LP
-.nf
-\fBmount\fR \fB-F\fR udfs [\fIgeneric_options\fR] [\fB-o\fR \fIspecific_options\fR]
- [\fB-O\fR] \fIspecial\fR | \fImount_point\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBmount\fR utility attaches a \fBudfs\fR file system to the file system
-hierarchy at the \fImount_point\fR, which is the pathname of a directory. If
-\fImount_point\fR has any contents prior to the mount operation, these are
-hidden until the file system is unmounted.
-.sp
-.LP
-If mount is invoked with either \fIspecial\fR or \fImount_point\fR as the only
-arguments, \fBmount\fR searches \fB/etc/vfstab\fR to fill in the missing
-arguments, including the \fIspecific_options\fR. See \fBmount\fR(1M).
-.sp
-.LP
-The \fBudfs\fR file system supports direct mounting of files containing the
-file system as well as block devices. See \fBmount\fR(1M) and
-\fBlofiadm\fR(1M).
-.sp
-.LP
-If \fIspecial\fR and \fImount_point\fR are specified without any
-\fIspecific_options\fR, the default is \fBrw\fR.
-.sp
-.LP
-If the directory on which a file system is to be mounted is a symbolic link,
-the file system is mounted on the directory to which the symbolic link refers,
-rather than on top of the symbolic link itself.
-.SH OPTIONS
-.sp
-.LP
-See \fBmount\fR(1M) for the list of supported \fIgeneric_options\fR.
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-o\fR \fIspecific_options\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify \fBudfs\fR file system specific options in a comma-separated list with
-no intervening spaces. The following \fIspecific_options\fR are available:
-.sp
-.ne 2
-.na
-\fBm\fR
-.ad
-.sp .6
-.RS 4n
-Mount the file system without making an entry in \fB/etc/mnttab\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBremount\fR
-.ad
-.sp .6
-.RS 4n
-Remount the file system as read-write. The option is used in conjunction with
-the \fBrw\fR option.
-.sp
-A file system mounted read-only can be remounted as read-write. This option
-fails if the file system is not currently mounted.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-O\fR\fR
-.ad
-.sp .6
-.RS 4n
-Overlay mount. Allow the file system to be mounted over an existing mount
-point, making the underlying file system inaccessible. If a mount is attempted
-on a pre-existing mount point without setting this flag, the mount fails,
-producing the error: \f(CWdevice busy\fR.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/mnttab\fR\fR
-.ad
-.sp .6
-.RS 4n
-Table of mounted file systems
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/vfstab\fR\fR
-.ad
-.sp .6
-.RS 4n
-List of default parameters for each file system
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBfsck\fR(1M), \fBfsck_udfs\fR(1M), \fBlofiadm\fR(1M), \fBmount\fR(1M),
-\fBmountall\fR(1M), \fBmount\fR(2), \fBmnttab\fR(4), \fBvfstab\fR(4),
-\fBattributes\fR(5)
-.SH DIAGNOSTICS
-.sp
-.ne 2
-.na
-\fBnot super user\fR
-.ad
-.sp .6
-.RS 4n
-The command is run by a non-root user. Run as root.
-.RE
-
-.sp
-.ne 2
-.na
-\fBno such device\fR
-.ad
-.sp .6
-.RS 4n
-The device name specified does not exist.
-.RE
-
-.sp
-.ne 2
-.na
-\fBnot a directory\fR
-.ad
-.sp .6
-.RS 4n
-The specified mount point is not a directory.
-.RE
-
-.sp
-.ne 2
-.na
-\fBis not an udfs file system\fR
-.ad
-.sp .6
-.RS 4n
-The device specified does not contain a udf 1.50 file system or the udfs file
-system module is not available.
-.RE
-
-.sp
-.ne 2
-.na
-\fBis already mounted\fR
-.ad
-.sp .6
-.RS 4n
-The specified device is already in use.
-.RE
-
-.sp
-.ne 2
-.na
-\fBnot a block device\fR
-.ad
-.sp .6
-.RS 4n
-The device specified is not a block device. Use block device to mount.
-.RE
-
-.sp
-.ne 2
-.na
-\fBwrite-protected\fR
-.ad
-.sp .6
-.RS 4n
-The device is read-only.
-.RE
-
-.sp
-.ne 2
-.na
-\fBis corrupted. needs checking\fR
-.ad
-.sp .6
-.RS 4n
-The file system is in an inconsistent state. Run \fBfsck\fR.
-.RE
-
-.SH NOTES
-.sp
-.LP
-Copy-protected files can be stored on \fBDVD-ROM\fR media using Universal Disk
-Format (\fBUDF\fR). Reading these copy-protected files is not possible as this
-involves an authentication process. Unless an authentication process between
-the host and the drive is completed, reading these copy-protected files after
-mounting and before the authentication process, returns an error.
diff --git a/usr/src/man/man1m/mount_ufs.1m b/usr/src/man/man1m/mount_ufs.1m
deleted file mode 100644
index e910b7f87f..0000000000
--- a/usr/src/man/man1m/mount_ufs.1m
+++ /dev/null
@@ -1,375 +0,0 @@
-'\" te
-.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
-.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH MOUNT_UFS 1M "Jun 22, 2009"
-.SH NAME
-mount_ufs \- mount ufs file systems
-.SH SYNOPSIS
-.LP
-.nf
-\fBmount\fR \fB-F\fR ufs [\fIgeneric_options\fR] [\fB-o\fR \fIspecific_options\fR]
- [\fB-O\fR] \fIspecial\fR | \fImount_point\fR
-.fi
-
-.LP
-.nf
-\fBmount\fR \fB-F\fR ufs [\fIgeneric_options\fR] [\fB-o\fR \fIspecific_options\fR]
- [\fB-O\fR] \fIspecial\fR \fImount_point\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBmount\fR utility attaches a \fBufs\fR file system to the file system
-hierarchy at the \fImount_point\fR, which is the pathname of a directory. If
-\fImount_point\fR has any contents prior to the \fBmount\fR operation, these
-are hidden until the file system is unmounted.
-.sp
-.LP
-The \fBufs\fR file system supports direct mounting of files containing the file
-system as well as block devices. See \fBmount\fR(1M) and \fBlofiadm\fR(1M).
-.sp
-.LP
-If \fBmount\fR is invoked with \fIspecial\fR or \fImount_point\fR as the only
-arguments, \fBmount\fR will search \fB/etc/vfstab\fR to fill in the missing
-arguments, including the \fIspecific_options\fR. See \fBmount\fR(1M).
-.sp
-.LP
-If \fIspecial\fR and \fImount_point\fR are specified without any
-\fIspecific_options\fR, the default is \fBrw\fR.
-.sp
-.LP
-If the directory on which a file system is to be mounted is a symbolic link,
-the file system is mounted on the directory to which the symbolic link refers,
-rather than on top of the symbolic link itself.
-.SH OPTIONS
-.sp
-.LP
-See \fBmount\fR(1M) for the list of supported \fIgeneric_options\fR.
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-o\fR \fIspecific_options\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify \fBufs\fR file system specific options in a comma-separated list with
-no intervening spaces. If invalid options are specified, a warning message is
-printed and the invalid options are ignored. The following options are
-available:
-.sp
-.ne 2
-.na
-\fB\fBdfratime\fR | \fBnodfratime\fR\fR
-.ad
-.sp .6
-.RS 4n
-By default, writing access time updates to the disk may be deferred
-(\fBdfratime\fR) for the file system until the disk is accessed for a reason
-other than updating access times. \fBnodfratime\fR disables this behavior.
-.sp
-If power management is enabled on the system, do not set \fBnodfratime\fR
-unless \fBnoatime\fR is also set. If you set \fBnodfratime\fR without setting
-\fBnoatime\fR, the disk is spun up every time a file within a file system on
-the disk is accessed - even if the file is not modified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBforcedirectio\fR | \fBnoforcedirectio\fR\fR
-.ad
-.sp .6
-.RS 4n
-If \fBforcedirectio\fR is specified and supported by the file system, then for
-the duration of the mount, forced direct \fBI/O\fR will be used. If the
-filesystem is mounted using \fBforcedirectio\fR, data is transferred directly
-between user address space and the disk. If the filesystem is mounted using
-\fBnoforcedirectio\fR, data is buffered in kernel address space when data is
-transferred between user address space and the disk. \fBforcedirectio\fR is a
-performance option that is of benefit only in large sequential data transfers.
-The default behavior is \fBnoforcedirectio\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBglobal\fR | \fBnoglobal\fR\fR
-.ad
-.sp .6
-.RS 4n
-If \fBglobal\fR is specified and supported on the file system, and the system
-in question is part of a cluster, the file system will be globally visible on
-all nodes of the cluster. If \fBnoglobal\fR is specified, the mount will not be
-globally visible. The default behavior is \fBnoglobal\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBintr\fR | \fBnointr\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow (do not allow) keyboard interrupts to kill a process that is waiting for
-an operation on a locked file system. The default is \fBintr\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBlargefiles\fR | \fBnolargefiles\fR\fR
-.ad
-.sp .6
-.RS 4n
-If \fBnolargefiles\fR is specified and supported by the file system, then for
-the duration of the mount it is guaranteed that all regular files in the file
-system have a size that will fit in the smallest object of type \fBoff_t\fR
-supported by the system performing the mount. The mount will fail if there are
-any files in the file system not meeting this criterion. If \fBlargefiles\fR is
-specified, there is no such guarantee. The default behavior is
-\fBlargefiles\fR.
-.sp
-If \fBnolargefiles\fR is specified, \fBmount\fR will fail for \fBufs\fR if the
-file system to be mounted has contained a large file (a file whose size is
-greater than or equal to 2 Gbyte) since the last invocation of \fBfsck\fR on
-the file system. The large file need not be present in the file system at the
-time of the mount for the mount to fail; it could have been created previously
-and destroyed. Invoking \fBfsck\fR (see \fBfsck_ufs\fR(1M)) on the file system
-will reset the file system state if no large files are present. After invoking
-\fBfsck\fR, a successful mount of the file system with \fBnolargefiles\fR
-specified indicates the absence of large files in the file system; an
-unsuccessful mount attempt indicates the presence of at least one large file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBlogging\fR | \fBnologging\fR\fR
-.ad
-.sp .6
-.RS 4n
-If \fBlogging\fR is specified, then logging is enabled for the duration of the
-mounted file system. Logging is the process of storing transactions (changes
-that make up a complete \fBUFS\fR operation) in a log before the transactions
-are applied to the file system. Once a transaction is stored, the transaction
-can be applied to the file system later. This prevents file systems from
-becoming inconsistent, therefore reducing the possibility that \fBfsck\fR
-might run. And, if \fBfsck\fR is bypassed, logging generally reduces the time
-required to reboot a system.
-.sp
-The default behavior is \fBlogging\fR for all UFS file systems.
-.sp
-The log is allocated from free blocks in the file system, and is sized
-approximately 1 Mbyte per 1 Gbyte of file system, up to a maximum of 256
-Mbytes. The log size may be larger (up to a maximum of 512 Mbytes) dependent
-upon the number of cylinder groups present in the file system.
-.sp
-Logging is enabled on any \fBUFS\fR file system, including root (\fB/\fR),
-except under the following conditions:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-When logging is specifically disabled.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-If there is insufficient file system space for the log. In this case, the
-following message is displayed and file system is still mounted:
-.sp
-.in +2
-.nf
-# mount /dev/dsk/c0t4d0s0 /mnt
- /mnt: No space left on device
- Could not enable logging for /mnt on /dev/dsk/c0t4d0s0.
-.fi
-.in -2
-.sp
-
-.RE
-The log created by \fBUFS\fR logging is continually flushed as it fills up. The
-log is totally flushed when the file system is unmounted or as a result of the
-\fBlockfs -f\fR command.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBm\fR\fR
-.ad
-.sp .6
-.RS 4n
-Mount the file system without making an entry in \fB/etc/mnttab\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnoatime\fR\fR
-.ad
-.sp .6
-.RS 4n
-By default, the file system is mounted with normal access time (\fBatime\fR)
-recording. If \fBnoatime\fR is specified, the file system will ignore access
-time updates on files, except when they coincide with updates to the
-\fBctime\fR or \fBmtime\fR. See \fBstat\fR(2). This option reduces disk
-activity on file systems where access times are unimportant (for example, a
-Usenet news spool).
-.sp
-\fBnoatime\fR turns off access time recording regardless of \fBdfratime\fR or
-\fBnodfratime\fR.
-.sp
-The POSIX standard requires that access times be marked on files.
-\fB-noatime\fR ignores them unless the file is also modified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnosec\fR\fR
-.ad
-.sp .6
-.RS 4n
-By default, Access Control Lists (ACLs) are supported on a mounted UFS file
-system. Use this option to disallow the setting or any modification of an ACL
-on a file within a mounted UFS file system. See \fBgetfacl\fR(1) for background
-on ACLs.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBonerror\fR = \fIaction\fR\fR
-.ad
-.sp .6
-.RS 4n
-This option specifies the action that \fBUFS\fR should take to recover from an
-internal inconsistency on a file system. Specify \fIaction\fR as \fBpanic\fR,
-\fBlock\fR, or \fBumount\fR. These values cause a forced system shutdown, a
-file system lock to be applied to the file system, or the file system to be
-forcibly unmounted, respectively. The default is \fBpanic\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBquota\fR\fR
-.ad
-.sp .6
-.RS 4n
-Quotas are turned on for the file system.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBremount\fR\fR
-.ad
-.sp .6
-.RS 4n
-Remounts a file system with a new set of options. All options not explicitly
-set with \fBremount\fR revert to their default values.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrq\fR\fR
-.ad
-.sp .6
-.RS 4n
-Read-write with quotas turned on. Equivalent to \fBrw, quota\fR.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBxattr\fR | \fBnoxattr\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow or disallow the creation and manipulation of extended attributes. The
-default is \fBxattr\fR. See \fBfsattr\fR(5) for a description of extended
-attributes.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-O\fR\fR
-.ad
-.sp .6
-.RS 4n
-Overlay mount. Allow the file system to be mounted over an existing mount
-point, making the underlying file system inaccessible. If a mount is attempted
-on a pre-existing mount point without setting this flag, the mount will fail,
-producing the error "device busy".
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRTurning Off (and On) Logging
-.sp
-.LP
-The following command turns off logging on an already mounted file system. The
-subsequent command restores logging.
-
-.sp
-.in +2
-.nf
-# mount -F ufs -o remount,nologging /export
-# \fB(absence of message indicates success)\fR
-# mount -F ufs -o remount,logging /export
-.fi
-.in -2
-
-.sp
-.LP
-In the preceding commands, the \fB-F\fR \fBufs\fR option is not necessary.
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/mnttab\fR\fR
-.ad
-.sp .6
-.RS 4n
-table of mounted file systems
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/vfstab\fR\fR
-.ad
-.sp .6
-.RS 4n
-list of default parameters for each file system
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBgetfacl\fR(1), \fBfsck\fR(1M), \fBfsck_ufs\fR(1M), \fBlofiadm\fR(1M),
-\fBmount\fR(1M), \fBmountall\fR(1M), \fBfcntl\fR(2), \fBmount\fR(2),
-\fBstat\fR(2), \fBmnttab\fR(4), \fBvfstab\fR(4), \fBattributes\fR(5),
-\fBfsattr\fR(5), \fBlargefile\fR(5)
-.SH NOTES
-.sp
-.LP
-Since the root (\fB/\fR) file system is mounted read-only by the kernel during
-the boot process, only the \fBremount\fR option (and options that can be used
-in conjunction with \fBremount\fR) affect the root (\fB/\fR) entry in the
-\fB/etc/vfstab\fR file.
diff --git a/usr/src/man/man1m/mountall.1m b/usr/src/man/man1m/mountall.1m
deleted file mode 100644
index 6a32474017..0000000000
--- a/usr/src/man/man1m/mountall.1m
+++ /dev/null
@@ -1,209 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH MOUNTALL 1M "Dec 17, 2008"
-.SH NAME
-mountall, umountall \- mount, unmount multiple file systems
-.SH SYNOPSIS
-.LP
-.nf
-\fBmountall\fR [\fB-F\fR \fIFSType\fR] [\fB-l\fR | \fB-r\fR] [\fIfile_system_table\fR]
-.fi
-
-.LP
-.nf
-\fBumountall\fR [\fB-k\fR] [\fB-s\fR] [\fB-F\fR \fIFSType\fR] [\fB-l\fR | \fB-r\fR] [\fB-n\fR] [\fB-Z\fR]
-.fi
-
-.LP
-.nf
-\fBumountall\fR [\fB-k\fR] [\fB-s\fR] [\fB-h\fR \fIhost\fR] [\fB-n\fR] [\fB-Z\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBmountall\fR is used to mount file systems specified in a file system table.
-The file system table must be in \fBvfstab\fR(4) format. If no
-\fIfile_system_table\fR is specified, \fB/etc/vfstab\fR is used. If \(mi is
-specified as \fIfile_system_table\fR, \fBmountall\fR reads the file system
-table from the standard input. \fBmountall\fR mounts only those file systems
-with the \fBmount at boot\fR field set to \fByes\fR in the
-\fIfile_system_table\fR.
-.sp
-.LP
-For each file system in the file system table, the following logic is executed:
-if there exists a file \fB/usr/lib/fs/\fR\fIFSType\fR\fB/fsckall\fR, where
-\fIFSType\fR is the type of the file system, save that file system in a list to
-be passed later, and all at once, as arguments to the
-\fB/usr/lib/fs/\fR\fIFSType\fR\fB/fsckall\fR script. The
-\fB/usr/lib/fs/\fR\fIFSType\fR\fB/fsckall\fR script checks all of the file
-systems in its argument list to determine whether they can be safely mounted.
-If no \fB/usr/lib/fs/\fR\fIFSType\fR\fB/fsckall\fR script exists for the
-\fIFSType\fR of the file system, the file system is individually checked using
-\fBfsck\fR(1M). If the file system does not appear mountable, it is fixed using
-\fBfsck\fR before the mount is attempted. File systems with a \(mi entry in the
-\fBfsckdev\fR field are mounted without first being checked.
-.sp
-.LP
-\fBumountall\fR causes all mounted file systems in the current zone except
-\fBroot\fR, \fB/usr\fR, \fB/var\fR, \fB/var/adm\fR, \fB/var/run\fR,
-\fB/proc\fR, and \fB/dev/fd\fR to be unmounted. If the \fIFSType\fR is
-specified, \fBmountall\fR and \fBumountall\fR limit their actions to the
-\fIFSType\fR specified. There is no guarantee that \fBumountall\fR unmounts
-\fIbusy\fR file systems, even if the \fB-k\fR option is specified.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-F\fR\fR
-.ad
-.RS 11n
-Specify the \fIFSType\fR of the file system to be mounted or unmounted.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-h\fR \fIhost\fR\fR
-.ad
-.RS 11n
-Unmount all file systems listed in \fB/etc/mnttab\fR that are remote-mounted
-from host.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-k\fR\fR
-.ad
-.RS 11n
-Use the \fBfuser\fR \fB-k\fR \fImount-point\fR command. See the \fBfuser\fR(1M)
-for details. The \fB-k\fR option sends the \fBSIGKILL\fR signal to each process
-using the file. As this option spawns kills for each process, the kill messages
-might not show up immediately. There is no guarantee that \fBumountall\fR
-unmounts \fIbusy\fR file systems, even if the \fB-k\fR option is specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR\fR
-.ad
-.RS 11n
-Limit the action to local file systems.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR\fR
-.ad
-.RS 11n
-List the actions that would be performed for the specified options, but do not
-actually execute these actions. Repeating the command without the \fB-n\fR
-option executes the listed actions, assuming that the \fB/etc/mnttab\fR file
-has not changed in the interval prior to repeating the command.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-r\fR\fR
-.ad
-.RS 11n
-Limit the action to remote file system types.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR\fR
-.ad
-.RS 11n
-Do not perform the \fBumount\fR operation in parallel.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-Z\fR\fR
-.ad
-.RS 11n
-Apply the action(s) only to the file systems mounted in non-global zones. By
-default, \fBumountall\fR unmounts only file systems mounted in the current
-zone. Option \fB-Z\fR is ignored if used in a non-global zone.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/mnttab\fR\fR
-.ad
-.sp .6
-.RS 4n
-Mounted file system table
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/vfstab\fR\fR
-.ad
-.sp .6
-.RS 4n
-Table of file system defaults
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/fs/\fIFSType\fR/fsckall\fR\fR
-.ad
-.sp .6
-.RS 4n
-Script called by \fBmountall\fR to perform the file system check of all file
-systems of type \fIFSType\fR
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Committed
-_
-Output Stability Uncommitted
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBfsck\fR(1M), \fBfuser\fR(1M), \fBmount\fR(1M), \fBmnttab\fR(4),
-\fBvfstab\fR(4), \fBattributes\fR(5)
-.SH DIAGNOSTICS
-.sp
-.LP
-No messages are printed if the file systems are mountable and clean.
-.sp
-.LP
-Error and warning messages come from \fBfsck\fR(1M) and \fBmount\fR(1M).
-.SH NOTES
-.sp
-.LP
-At this time, NFS is the only remote file system supported by the \fB-l\fR,
-\fB-r\fR, and \fB-h\fR options.
diff --git a/usr/src/man/man1m/mountd.1m b/usr/src/man/man1m/mountd.1m
deleted file mode 100644
index a38cf00d32..0000000000
--- a/usr/src/man/man1m/mountd.1m
+++ /dev/null
@@ -1,113 +0,0 @@
-.\"
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.\"
-.\"
-.\" Copyright 1989 AT&T
-.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 2016 Nexenta Systems, Inc.
-.\"
-.Dd March 12, 2016
-.Dt MOUNTD 1M
-.Os
-.Sh NAME
-.Nm mountd
-.Nd server for NFS mount requests and NFS access checks
-.Sh SYNOPSIS
-.Nm /usr/lib/nfs/mountd
-.Op Fl rv
-.Sh DESCRIPTION
-.Nm
-is an RPC server that answers requests for NFS access information and file
-system mount requests.
-It reads the file
-.Pa /etc/dfs/sharetab
-to determine which file systems are available for mounting by which remote
-machines.
-See
-.Xr sharetab 4 .
-.Nm nfsd
-running on the local server will contact
-.Nm
-the first time an NFS client tries to access the file system to determine
-whether the client should get read-write, read-only, or no access.
-This access can be dependent on the security mode used in the remoted procedure
-call from the client.
-See
-.Xr share_nfs 1M .
-.Pp
-The command also provides information as to what file systems are mounted by
-which clients.
-This information can be printed using the
-.Xr showmount 1M
-command.
-.Pp
-The
-.Nm
-daemon is automatically invoked by
-.Xr share 1M .
-.Pp
-Only super user can run the mountd daemon.
-.Pp
-See
-.Xr nfs 4
-for available configuration properties for
-.Nm .
-.Ss Options
-The options shown below are supported for NFSv2/v3 clients.
-They are not supported for NFSv4 clients.
-.Bl -tag -width Ds
-.It Fl r
-Reject mount requests from clients.
-Clients that have file systems mounted will not be affected.
-.It Fl v
-Run the command in verbose mode.
-Each time
-.Nm
-determines what access a client should get, it will log the result to the
-console, as well as how it got that result.
-.El
-.Sh FILES
-.Bl -tag -width Ds
-.It Pa /etc/dfs/sharetab
-shared file system table
-.El
-.Sh SEE ALSO
-.Xr nfsd 1M ,
-.Xr share 1M ,
-.Xr share_nfs 1M ,
-.Xr sharectl 1M ,
-.Xr showmount 1M ,
-.Xr nfs 4 ,
-.Xr sharetab 4 ,
-.Xr attributes 5
-.Sh NOTES
-Since
-.Nm
-must be running for
-.Nm nfsd
-to function properly,
-.Nm
-is automatically started by the
-.Sy svc:/network/nfs/server
-service.
-See
-.Xr nfs 4 .
-.Pp
-Some routines that compare hostnames use case-sensitive string comparisons;
-some do not.
-If an incoming request fails, verify that the case of the hostname in the file
-to be parsed matches the case of the hostname called for, and attempt the
-request again.
diff --git a/usr/src/man/man1m/mpathadm.1m b/usr/src/man/man1m/mpathadm.1m
deleted file mode 100644
index 8ab8b6511c..0000000000
--- a/usr/src/man/man1m/mpathadm.1m
+++ /dev/null
@@ -1,711 +0,0 @@
-'\" te
-.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH MPATHADM 1M "September 12, 2020"
-.SH NAME
-mpathadm \- multipath discovery and administration
-.SH SYNOPSIS
-.nf
-\fBmpathadm\fR \fIsubcommand\fR \fIdirect-object\fR [\fIoptions\fR] [\fIoperand\fR]
-.fi
-
-.SH DESCRIPTION
-The \fBmpathadm\fR command enables multipathing discovery and management. The
-\fBmpathadm\fR command is implemented as a set of subcommands, many with their
-own options, that are described in the section for that subcommand. Options not
-associated with a particular subcommand are described under OPTIONS. The
-\fBmpathadm\fR subcommands operate on a \fIdirect-object\fR. These are
-described in this section for each subcommand. The \fIdirect-objects\fR,
-\fIinitiator-port\fR, \fItarget-port\fR, and \fIlogical-unit\fR in the
-subcommands are consistent with SCSI standard definitions.
-.sp
-.LP
-The \fBmpathadm\fR command supports the following subcommands, which are
-described in detail in subsections that follow.
-.sp
-.ne 2
-.na
-\fB\fBlist\fR\fR
-.ad
-.RS 12n
-Display a list of discovered instances for a given object.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBshow\fR\fR
-.ad
-.RS 12n
-Display information about a given object instance.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmodify\fR\fR
-.ad
-.RS 12n
-Modify properties of an object.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBenable\fR\fR
-.ad
-.RS 12n
-Enable an object.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdisable\fR\fR
-.ad
-.RS 12n
-Disable an object.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfailover\fR\fR
-.ad
-.RS 12n
-Cause target port group failover for a logical-unit.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBoverride\fR\fR
-.ad
-.RS 12n
-Set a path to be used over other paths on a logical-unit.
-.RE
-
-.sp
-.LP
-The \fBmpathadm\fR subcommands operate on a \fIdirect-object\fR. These are
-described in this section for each subcommand.
-.SS "list Subcommand"
-The syntax for the \fBlist\fR subcommand is:
-.sp
-.in +2
-.nf
-# mpathadm list \fIdirect-object\fR [\fIoperands\fR...]
-.fi
-.in -2
-
-.sp
-.LP
-The \fBlist\fR subcommand displays data for following direct-objects:
-.sp
-.ne 2
-.na
-\fB\fBmpath-support\fR [\fImpath-support-name\fR, ...]\fR
-.ad
-.sp .6
-.RS 4n
-List the multipathing support that can be administered by this CLI. This
-presents itself in the form of a library name registered through the MPAPI
-framework. If no mpath-support name \fImpath-support-name\fR is specified, all
-registered multipathing support libraries will be displayed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBinitiator-port\fR [\fIinitiator-port-name\fR, ...]\fR
-.ad
-.sp .6
-.RS 4n
-List the initiator ports that are discovered on this system. If no
-\fIinitiator-port-name\fR is specified, all discovered initiator ports are
-displayed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB{\fBlogical-unit\fR | \fBlu\fR} [\fIoptions\fR]
-[\fIlogical-unit-name\fR, ...]\fR
-.ad
-.sp .6
-.RS 4n
-List the information on multipath logical units. If no \fIlogical-unit-name\fR
-is specified, all discovered logical-units will be displayed.
-.sp
-Options for \fBlist logical-unit\fR are as follows:
-.sp
-.ne 2
-.na
-\fB\fB-n\fR, \fB-\fR\fB-name\fR \fIname\fR\fR
-.ad
-.sp .6
-.RS 4n
-Return the logical unit name that is associated with the given name string.
-This name can be extracted from the output of the \fBmpathadm\fR \fBshow lu\fR
-command.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-t\fR, \fB-\fR\fB-target-port\fR \fItarget-port-name\fR\fR
-.ad
-.sp .6
-.RS 4n
-Return the list of logical units names that are associated with the given
-\fItarget-port-name\fR.
-.RE
-
-.RE
-
-.SS "\fBshow\fR Subcommand"
-The syntax for the \fBshow\fR subcommand is:
-.sp
-.in +2
-.nf
-# mpathadm show \fIdirect-object\fR [\fIoperands\fR...]
-.fi
-.in -2
-
-.sp
-.LP
-The \fBshow\fR subcommand displays detailed information for following the
-direct-objects:
-.sp
-.ne 2
-.na
-\fB\fBmpath-support\fR [\fImpath-support-name\fR, ...]\fR
-.ad
-.sp .6
-.RS 4n
-Show the detailed information on the given \fImpath-support-name\fR if the name
-exists. If the given \fImpath-support-name\fR supports only a limited set of
-device products, the list of device products will be listed as part of the
-output.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBinitiator-port\fR
-\fIinitiator-port-name\fR[,\fIinitiator-port-name\fR, ...]\fR
-.ad
-.sp .6
-.RS 4n
-Show the detailed information for the given \fIinitiator-port-name\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB{\fBlogical-unit\fR | \fBlu\fR} [\fIlogical-unit-name\fR, ...]\fR
-.ad
-.sp .6
-.RS 4n
-Display the detailed information on multipath logical unit(s), including path
-and target port group information. Note that the name property in the logical
-unit information represents the identifier for this LUN, derived from the
-hardware, and used by this system. If the name is derived from SCSI Inquiry
-Vital Product Data (VPD) page 83h, the name type property represents an
-associated identifier type defined by the SCSI standards.
-.RE
-
-.SS "\fBmodify\fR Subcommand"
-The syntax for the \fBmodify\fR subcommand is:
-.sp
-.in +2
-.nf
-# mpathadm modify \fIdirect-object\fR [\fIoptions\fR] [\fIoperands\fR...]
-.fi
-.in -2
-
-.sp
-.LP
-The \fBmodify\fR subcommand modifies characteristics of the following
-direct-objects:
-.sp
-.ne 2
-.na
-\fB\fBmpath-support\fR [\fIoptions\fR] \fImpath-support-name\fR, ...\fR
-.ad
-.sp .6
-.RS 4n
-Configuration management of an \fImpath-support\fR. Options to modify
-mpath-support are as follows:
-.sp
-.ne 2
-.na
-\fB\fB-a\fR, \fB-\fR\fB-autofailback\fR on | off\fR
-.ad
-.sp .6
-.RS 4n
-Set \fBautofailback\fR. Applicable only when mpath-support provides auto
-failback support.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR, \fB-\fR\fB-autoprobe\fR on | off\fR
-.ad
-.sp .6
-.RS 4n
-Set \fBautoprobing\fR. Applicable only when mpath-support provides auto probing
-support.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-b\fR, \fB-\fR\fB-loadbalance\fR loadbalance-type\fR
-.ad
-.sp .6
-.RS 4n
-Change the default load balance type. The \fBloadbalance\fR type is one of the
-supported types listed in the \fBshow mpath-support\fR output.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB{\fBlogical-unit\fR | \fBlu\fR} [\fIoptions\fR]
-\fIlogical-unit-name\fR, ...\fR
-.ad
-.sp .6
-.RS 4n
-Configuration management of a logical unit. Options to modify
-\fBlogical-unit\fR are as follows:
-.sp
-.ne 2
-.na
-\fB\fB-a\fR, \fB-\fR\fB-autofailback\fR on | off\fR
-.ad
-.sp .6
-.RS 4n
-Set \fBautofailback\fR. Applicable only when \fBmpath-support\fR provides auto
-failback support
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR, \fB-\fR\fB-autoprobe\fR on | off\fR
-.ad
-.sp .6
-.RS 4n
-Set \fBautoprobing\fR. Applicable only when \fBmpath-support\fR provides auto
-probing support.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-b\fR, \fB-\fR\fB-loadbalance\fR loadbalance-type\fR
-.ad
-.sp .6
-.RS 4n
-Set load balance type for the logical unit. Applicable only when load balance
-configuration is supported at the logical unit level.
-.RE
-
-.RE
-
-.SS "\fBenable\fR Subcommand"
-The syntax for the \fBenable\fR subcommand is:
-.sp
-.in +2
-.nf
-# mpathadm disable [\fIoptions\fR]
-.fi
-.in -2
-
-.sp
-.LP
-The \fBenable\fR subcommand supports the following direct-objects to be
-enabled:
-.sp
-.ne 2
-.na
-\fB\fBpath\fR \fB-i\fR \fIinitiator-port-name\fR \fB-t\fR
-\fItarget-port-name\fR\fR
-.ad
-.br
-.na
-\fB\fB-l\fR \fIlogical-unit-name\fR\fR
-.ad
-.sp .6
-.RS 4n
-The path that consists of the specified initiator port, target port, and
-logical unit will be enabled.
-.RE
-
-.SS "\fBdisable\fR Subcommand"
-The syntax for the \fBdisable\fR subcommand is:
-.sp
-.in +2
-.nf
-# mpathadm disable [\fIoptions\fR]
-.fi
-.in -2
-
-.sp
-.LP
-The \fBdisable\fR subcommand supports the following direct-objects to be
-disabled:
-.sp
-.ne 2
-.na
-\fB\fBpath\fR \fB-i\fR \fIinitiator-port-name\fR \fB-t\fR
-\fItarget-port-name\fR\fR
-.ad
-.br
-.na
-\fB\fB-l\fR \fIlogical-unit-name\fR\fR
-.ad
-.sp .6
-.RS 4n
-The path that consists of the specified initiator port, target port, and
-logical unit will be disabled.
-.RE
-
-.SS "\fBfailover\fR Subcommand"
-The syntax for the \fBfailover\fR subcommand is:
-.sp
-.in +2
-.nf
-# mpathadm failover \fIdirect-object\fR [\fIoperand\fR]
-.fi
-.in -2
-
-.sp
-.LP
-The \fBfailover\fR subcommand supports failover for the following
-direct-objects:
-.sp
-.ne 2
-.na
-\fB{\fBlogical-unit\fR | \fBlu\fR} \fIlogical-unit-name\fR\fR
-.ad
-.sp .6
-.RS 4n
-The target port group will failover when the given logical-unit is asymmetric
-and supports explicit state change. The currently active target port group will
-be changed to the standby state and the standby target port group will be
-active.
-.RE
-
-.SS "\fBoverride\fR Subcommand"
-The syntax for the \fBoverride\fR subcommand is:
-.sp
-.in +2
-.nf
-# mpathadm override [\fIoptions\fR]
-.fi
-.in -2
-
-.sp
-.LP
-The \fBoverride\fR subcommand controls whether or not the following
-direct-objects override another:
-.sp
-.ne 2
-.na
-\fBpath {\fB-i\fR \fIinitiator-port-name\fR \fB-t\fR \fItarget-port-name\fR |
-\fB-c\fR}\fR
-.ad
-.br
-.na
-\fB\fB-l\fR \fIlogical-unit-name\fR\fR
-.ad
-.sp .6
-.RS 4n
-Cause a path that consists of the specified initiator port, target port, and
-logical unit to override other paths on the logical unit. Once a path overrides
-other paths, the mpath-support uses only that path regardless of any other path
-selection configuration. The \fB-c\fR option cancels the setting. The path that
-consists of the specified initiator port, target port, and logical unit will be
-disabled.
-.sp
-Options for override path are as follows:
-.sp
-.ne 2
-.na
-\fB\fB-i\fR, \fB-\fR\fB-initiator-port\fR \fIinitiator-port-name\fR\fR
-.ad
-.sp .6
-.RS 4n
-Represent the initiator port element of a path. Options \fB-t\fR and \fB-l\fR
-must also be included.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-t\fR, \fB-\fR\fB-target-port\fR \fItarget-port-name\fR\fR
-.ad
-.sp .6
-.RS 4n
-Represent the target port element of a path. Options \fB-i\fR and \fB-l\fR must
-also be included.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR, \fB-\fR\fB-logical-unit\fR \fIlogical-unit\fR\fR
-.ad
-.sp .6
-.RS 4n
-Represent the logical unit element of a path. Options \fB-i\fR and \fB-t\fR
-must also be included.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-c\fR, \fB-\fR\fB-cancel\fR\fR
-.ad
-.sp .6
-.RS 4n
-Cancels overriding setting for the given logical unit. Option \fB-l\fR must
-also be included.
-.RE
-
-.RE
-
-.SH OPTIONS
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-V\fR, \fB-\fR\fB-version\fR\fR
-.ad
-.RS 17n
-Display the version information.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-?\fR, \fB-\fR\fB-help\fR\fR
-.ad
-.RS 17n
-Display context help. Can be used following an \fBmpathadm\fR command with no
-arguments, following a subcommand, or following a subcommand direct-object
-combination. Responds with help information appropriate for your entry. For
-example, if you enter:
-.sp
-.in +2
-.nf
-# \fBmpathadm add mpath-support-help\fR
-.fi
-.in -2
-.sp
-
-\&... \fBmpathadm\fR responds with a display of the options available for that
-combination of subcommand and direct-object.
-.RE
-
-.SH EXAMPLES
-\fBExample 1 \fRObtaining a List of Multipathing Support
-.sp
-.LP
-The following command uses the \fBlist\fR subcommand to list all currently
-registered \fBmpath-support\fR libraries.
-
-.sp
-.in +2
-.nf
-# \fBmpathadm list mpath-support\fR
-mpath-support: libmpscsi_vhci.so
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRDisplaying the Properties of a Particular Multipathing Support
-.sp
-.LP
-The following command uses the \fBshow\fR subcommand to display the properties
-for a currently registered \fBmpath-support\fR library.
-
-.sp
-.in +2
-.nf
-# \fBmpathadm show mpath-support libmpscsi_vhci.so\fR
-mpath-support: libmpscsi_vhci.so
- Vendor: Sun Microsystems
- Driver Name: scsi_vhci
- Default Load Balance: round-robin
- Supported Load Balance Types:
- round-robin
- logical-block
-Allows To Activate Target Port Group Access: yes
-Allows Path Override: no
-Supported Auto Failback Config: 1
-Auto Failback: on
-Failback Polling Rate (current/max): 0/0
-Supported Auto Probing Config: 0
-Auto Probing: NA
-Probing Polling Rate (current/max): NA/NA
-Supported Devices:
- Vendor: SUN
- Product: T300
- Revision:
- Supported Load Balance Types:
- round-robin
- Vendor: SUN
- Product: T4
- Revision:
- Supported Load Balance Types:
- round-robin
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRObtaining a List of Initiator Ports Discovered Through the
-\fBmpath-support\fR Libraries
-.sp
-.LP
-The following command uses the \fBlist initiator-port\fR subcommand to display
-a list of initiator ports discovered by the currently registered
-\fBmpath-support\fR libraries.
-
-.sp
-.in +2
-.nf
-# \fBmpathadm list initiator-port\fR
-Initiator-Port: iqn.1986-03.com.sun:01:080020b7ac2b.437a3b3e,4000002a0000
-Initiator-Port: 2000000173018713
-Initiator-Port: 2000000173818713
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 4 \fRDisplaying the Properties of a Particular Initiator Port
-.sp
-.LP
-The following command uses the \fBshow initiator-port\fR subcommand to display
-the properties of a particular initiator port discovered using the \fBlist
-initiator-port\fR subcommand in an example above.
-
-.sp
-.in +2
-.nf
-# \fBmpathadm show initiator-port 2000000173018713\fR
-initiator-port: 2000000173018713
- Transport Type: Fibre Channel
- OS device File: devices/pci@1f,4000/pci@2/SUNW,qlca@5/fp@0,0:fc
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 5 \fRDisplaying the Properties of a Particular Logical Unit
-.sp
-.LP
-The following command uses the \fBshow logical-unit\fR subcommand to display
-the properties of the logical unit with the specified name.
-
-.sp
-.in +2
-.nf
-# \fBmpathadm show lu /dev/rdsk/c4t60003BA27D2120004204AC2B000DAB00d0s2\fR
-Logical Unit: /dev/rdsk/c4t60003BA27D2120004204AC2B000DAB00d0s2
- mpath-support libmpscsi_vhci.so
- Vendor: SUN
- Product: T4
- Revision: 0301
- Name Type: SCSI Inquiry VPD Page 83 type 3
- Name: 60003ba27d2120004204ac2b000dab00
- Asymmetric: yes
- Current Load Balance: round-robin
- Logical Unit Group ID: NA
- Auto Failback: on
- Auto Probing: NA
-
-Paths:
- Initiator Port Name: 2000000173818713
- Target Port Name: 20030003ba27d212
- Override Path: NA
- Path State: OK
- Disabled: no
-
- Initiator Port Name: 2000000173018713
- Target Port Name: 20030003ba27d095
- Override Path: NA
- Path State: OK
- Disabled: no
-
-Target Port Group:
- ID: 2
- Explicit Failover: yes
- Access State: standby
- Target Ports:
- Name: 20030003ba27d212
- Relative ID: 0
-
- ID: 5
- Explicit Failover: yes
- Access State: active
- Target Ports
- Name: 20030003ba27d095
- Relative ID: 0
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 6 \fREnabling a Path
-.sp
-.LP
-The following command uses the \fBenable path\fR subcommand to enable the path
-with the specified initiator port, target port, and logical unit.
-
-.sp
-.in +2
-.nf
-# \fBmpathadm enable path -i 2000000173018713 -t 20030003ba27d095 \e
--l /dev/rdsk/c4t60003BA27D2120004204AC2B000DAB00d0s2\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 7 \fRModifying \fBmpath-support\fR To Turn On \fBautofailback\fR
-.sp
-.in +2
-.nf
-# \fBmpathadm modify mpath-support -a on libmpscsi_vhci.so\fR
-.fi
-.in -2
-.sp
-
-.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-\fBstmsboot\fR(1M), \fBlibMPAPI\fR(3LIB), \fBexec_attr\fR(4),
-\fBattributes\fR(5)
diff --git a/usr/src/man/man1m/mpstat.1m b/usr/src/man/man1m/mpstat.1m
deleted file mode 100644
index c279136865..0000000000
--- a/usr/src/man/man1m/mpstat.1m
+++ /dev/null
@@ -1,355 +0,0 @@
-'\" te
-.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
-.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH MPSTAT 1M "Mar 23, 2009"
-.SH NAME
-mpstat \- report per-processor or per-processor-set statistics
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/bin/mpstat\fR [\fB-aq\fR] [\fB-p\fR | \fB-P\fR \fIset\fR] [\fB-T\fR u | d] [\fIinterval\fR [\fIcount\fR]]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBmpstat\fR command reports processor statistics in tabular form. Each row
-of the table represents the activity of one processor. The first table
-summarizes all activity since boot. Each subsequent table summarizes activity
-for the preceding interval. All values are rates listed as events per second
-unless otherwise noted.
-.sp
-.LP
-During execution of the kernel status command, the \fBstate\fR of the kernel
-can change. If relevant, a state change message is included in the \fBmpstat\fR
-output, in one of the following forms:
-.sp
-.in +2
-.nf
-<<processor 3 moved from pset: -1 to: 1>>
-<<pset destroyed: 1>>
-<<pset created: 1>>
-<<processors added: 1, 3>>
-<<processors removed: 1, 3>>
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The \fBmpstat\fR command reports the following information:
-.sp
-.ne 2
-.na
-\fB\fBCPU\fR or \fBSET\fR\fR
-.ad
-.RS 14n
-Without the \fB-a\fR option, \fBmpstat\fR reports \fBCPU\fR statistics for a
-processor ID. With the \fB-a\fR option, \fBmpstat\fR reports \fBSET\fR
-statistics for a processor set ID.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBminf\fR\fR
-.ad
-.RS 14n
-minor faults
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmjf\fR\fR
-.ad
-.RS 14n
-major faults
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBxcal\fR\fR
-.ad
-.RS 14n
-inter-processor cross-calls
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBintr\fR\fR
-.ad
-.RS 14n
-interrupts
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBithr\fR\fR
-.ad
-.RS 14n
-interrupts as threads (not counting clock interrupt)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcsw\fR\fR
-.ad
-.RS 14n
-context switches
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBicsw\fR\fR
-.ad
-.RS 14n
-involuntary context switches
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmigr\fR\fR
-.ad
-.RS 14n
-thread migrations (to another processor)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsmtx\fR\fR
-.ad
-.RS 14n
-spins on mutexes (lock not acquired on first try)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsrw\fR\fR
-.ad
-.RS 14n
-spins on readers/writer locks (lock not acquired on first try)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsyscl\fR\fR
-.ad
-.RS 14n
-system calls
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBusr\fR\fR
-.ad
-.RS 14n
-percent user time
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsys\fR\fR
-.ad
-.RS 14n
-percent system time
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBwt\fR\fR
-.ad
-.RS 14n
-the I/O wait time is no longer calculated as a percentage of \fBCPU\fR time,
-and this statistic will always return zero.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBidl\fR\fR
-.ad
-.RS 14n
-percent idle time
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsze\fR\fR
-.ad
-.RS 14n
-number of processors in the requested processor set
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBset\fR\fR
-.ad
-.RS 14n
-processor set membership of each \fBCPU\fR
-.RE
-
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-a\fR\fR
-.ad
-.RS 13n
-Aggregate output by processor set. Sort the output by set. The default output
-is sorted by \fBCPU\fR number.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR\fR
-.ad
-.RS 13n
-Report processor set membership of each \fBCPU\fR. Sort the output by set. The
-default output is sorted by \fBCPU\fR number.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-P\fR \fIset\fR\fR
-.ad
-.RS 13n
-Display only those processors in the specified \fIset\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-q\fR\fR
-.ad
-.RS 13n
-Suppress messages related to state changes.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-T\fR \fBu\fR | \fBd\fR\fR
-.ad
-.RS 13n
-Specify \fBu\fR for a printed representation of the internal representation of
-time. See \fBtime\fR(2). Specify \fBd\fR for standard date format. See
-\fBdate\fR(1).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIinterval\fR\fR
-.ad
-.RS 13n
-Report once each \fIinterval\fR seconds.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIcount\fR\fR
-.ad
-.RS 13n
-Only print \fIcount\fR reports.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRUsing \fBmpstat\fR to Generate User and System Operation
-Statistics
-.sp
-.LP
-The following command generates processor statistics over a five-second
-interval in two reports. The command shows the processor set membership of each
-\fBCPU\fR. The default output is sorted by \fBCPU\fR number, aggregated by
-\fIprocessor set\fR, for user (\fBusr\fR) and system (\fBsys\fR) operations.
-
-.sp
-.in +2
-.nf
-example% \fBmpstat -ap 5 2\fR
-
-
-SET minf mjf xcal intr ithr csw icsw migr smtx srw syscl usr sys wt idl sze
- 0 6 0 355 291 190 22 0 0 0 0 43 0 2 0 43 1
- 1 24 17 534 207 200 70 1 0 2 0 600 4 1 0 84 2
- 2 19 7 353 325 318 44 0 0 5 0 345 1 1 0 94 3
- 3 36 2 149 237 236 14 0 0 4 0 97 0 0 0 98 2
-SET minf mjf xcal intr ithr csw icsw migr smtx srw syscl usr sys wt idl sze
- 0 1 0 720 405 304 55 0 0 18 0 12 0 15 0 81 1
- 1 0 69 1955 230 200 313 33 4 41 9 7086 34 10 0 19 2
- 2 0 46 685 314 300 203 11 0 54 1 5287 36 6 0 28 3
- 3 0 0 14 386 384 0 0 0 0 0 0 0 0 0 100 2
-.fi
-.in -2
-.sp
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability See below.
-.TE
-
-.sp
-.LP
-Invocation is evolving. Human readable output is unstable.
-.SH SEE ALSO
-.sp
-.LP
-\fBsar\fR(1), \fBdate\fR(1), \fBiostat\fR(1M), \fBsar\fR(1M), \fBvmstat\fR(1M),
-\fBtime\fR(2), \fBattributes\fR(5)
-.SH NOTES
-.sp
-.LP
-The sum of \fBCPU\fR utilization might vary slightly from 100 due to rounding
-errors in the production of a percentage figure.
-.sp
-.LP
-The total time used for \fBCPU\fR processing is the sum of \fBusr\fR and
-\fBsys\fR output values, reported for user and system operations. The \fBidl\fR
-value reports the time that the \fBCPU\fR is idle for any reason other than
-pending disk I/O operations.
-.sp
-.LP
-Run the \fBiostat\fR command with the \fB-x\fR option to report I/O service
-times in \fBsvc_t\fR output. The \fBiostat\fR utility also reports the same
-\fBwt\fR, user (\fBus\fR), and system (\fBsy\fR) statistics. See
-\fBiostat\fR(1M) for more information.
-.sp
-.LP
-When executing in a \fBzone\fR and if the pools facility is active,
-\fBmpstat\fR(1M) will only provide information for those processors which are a
-member of the processor set of the pool to which the \fBzone\fR is bound.
diff --git a/usr/src/man/man1m/msgid.1m b/usr/src/man/man1m/msgid.1m
deleted file mode 100644
index df300bd680..0000000000
--- a/usr/src/man/man1m/msgid.1m
+++ /dev/null
@@ -1,73 +0,0 @@
-'\" te
-.\" Copyright (c) 2000, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH MSGID 1M "Oct 9, 1998"
-.SH NAME
-msgid \- generate message IDs
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/msgid\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBmsgid\fR utility generates message \fBID\fRs.
-.sp
-.LP
-A message \fBID\fR is a numeric identifier that uniquely identifies a message.
-Although the probability of two distinct messages having the same \fBID\fR is
-high, this can be greatly reduced with the appropriate priority or
-facility.level designator (see \fBsyslogd\fR(1M)). Specifically, the message
-\fBID\fR is a hash signature on the message's unexpanded format string,
-generated by \fBSTRLOG_MAKE_MSGID()\fR as defined in \fB<sys/strlog.h>\fR\&.
-.sp
-.LP
-\fBsyslogd\fR(1M) is a simple filter that takes strings as input and produces
-those same strings, preceded by their message \fBID\fRs, as output. Every
-message logged by \fBsyslogd\fR(1M) includes the message \fBID\fR. The message
-\fBID\fR is intended to serve as a small, language-independent identifier.
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRUsing the msgid command to generate a message ID
-.sp
-.LP
-The following example uses the \fBmsgid\fR command to generate a message
-\fBID\fR for the \fBecho\fR command.
-
-.sp
-.in +2
-.nf
-example# \fBecho hello | msgid\fR205790 hello
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRUsing the msgid command to generate a message catalog
-.sp
-.LP
-The following example uses the \fBmsgid\fR command to enumerate all of the
-messages in the binary \fBufs\fR, to generate a message catalog.
-
-.sp
-.in +2
-.nf
-example# \fBstrings /kernel/fs/ufs | msgid\fR
-
-137713 free:
- freeing free frag, dev:0x%lx, blk:%ld, cg:%d, ino:%lu, fs:%s
-567420 ialloccg: block not in mapfs = %s
-845546 alloc: %s: file system full
-\&...
-.fi
-.in -2
-.sp
-
-.SH SEE ALSO
-.sp
-.LP
-\fBsyslogd\fR(1M), \fBattributes\fR(5), \fBlog\fR(7d)
diff --git a/usr/src/man/man1m/mvdir.1m b/usr/src/man/man1m/mvdir.1m
deleted file mode 100644
index b786b2c3f5..0000000000
--- a/usr/src/man/man1m/mvdir.1m
+++ /dev/null
@@ -1,84 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 1997, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH MVDIR 1M "Mar 14, 1997"
-.SH NAME
-mvdir \- move a directory
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/mvdir\fR \fIdirname\fR \fIname\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBmvdir\fR moves directories within a file system. \fBdirname\fR must be a
-directory. If \fIname\fR does not exist, it will be created as a directory. If
-\fIname\fR does exist, and is a directory, \fBdirname\fR will be created as
-\fIname/dirname\fR. \fBdirname\fR and \fIname\fR may not be on the same path;
-that is, one may not be subordinate to the other. For example:
-.sp
-.LP
-\fBexample%\fR \fBmvdir\fR \fBx/y\fR \fBx/z\fR
-.sp
-.LP
-is legal, but
-.sp
-.LP
-\fBexample%\fR \fBmvdir\fR \fBx/y\fR \fBx/y/z\fR
-.sp
-.LP
-is not.
-.SH OPERANDS
-.sp
-.ne 2
-.na
-\fB\fBdirname\fR\fR
-.ad
-.RS 11n
-The name of the directory that is to be moved to another directory in the
-filesystem.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIname\fR\fR
-.ad
-.RS 11n
-The name of the directory into which \fBdirname\fR is to be moved. If
-\fIname\fR does not exist, it will be created. It may not be on the same path
-as \fBdirname\fR.
-.RE
-
-.SH USAGE
-.sp
-.LP
-See \fBlargefile\fR(5) for the description of the behavior of \fBmvdir\fR when
-encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
-.SH EXIT STATUS
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 6n
-Successful operation.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB>0\fR\fR
-.ad
-.RS 6n
-Operation failed.
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBmkdir\fR(1), \fBmv\fR(1), \fBattributes\fR(5), \fBlargefile\fR(5)
diff --git a/usr/src/man/man1m/ncaconfd.1m b/usr/src/man/man1m/ncaconfd.1m
deleted file mode 100644
index 40a87cb0ff..0000000000
--- a/usr/src/man/man1m/ncaconfd.1m
+++ /dev/null
@@ -1,81 +0,0 @@
-'\" te
-.\" Copyright (C) 2001, Sun Microsystems, Inc.
-.\" All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH NCACONFD 1M "Oct 12, 2004"
-.SH NAME
-ncaconfd \- Solaris Network Cache and Accelerator (NCA) configuration daemon
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/inet/ncaconfd\fR [\fB-al\fR ] \fIinterface1 \fR [\fIinterface2 ...\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-Use the \fBncaconfd\fR utility to set up NCA on a system. At boot time, the
-\fBncakmod\fR initialization script reads in \fBnca.if\fR(4) to determine on
-which interface(s) NCA should run. \fBncaconfd\fR then sets up the interface.
-.sp
-.LP
-\fBncaconfd\fR also operates as a daemon if the \fBnca_active\fR key is set to
-enabled in \fBncakmod.conf\fR(4) file. In this case, \fBncaconfd\fR will
-continue as a daemon after all the NCA interfaces have been set up, listening
-for routing changes. The changes are then passed to NCA to control which
-interface NCA should use to make active outgoing TCP connnections.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-a\fR\fR
-.ad
-.RS 6n
-Enable active connections.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR\fR
-.ad
-.RS 6n
-Enable logging.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/nca/ncakmod.conf\fR\fR
-.ad
-.RS 25n
-
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBnca\fR(1), \fBncakmod\fR(1), \fBnca.if\fR(4), \fBncakmod.conf\fR(4),
-\fBattributes\fR(5)
diff --git a/usr/src/man/man1m/ncheck.1m b/usr/src/man/man1m/ncheck.1m
deleted file mode 100644
index 2e873216a1..0000000000
--- a/usr/src/man/man1m/ncheck.1m
+++ /dev/null
@@ -1,122 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 2001, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH NCHECK 1M "May 30, 2001"
-.SH NAME
-ncheck \- generate a list of path names versus i-numbers
-.SH SYNOPSIS
-.LP
-.nf
-\fBncheck\fR [\fB-F\fR \fIFSType\fR] [\fB-V\fR] [\fIgeneric_options\fR]
- [\fB-o\fR \fIFSType-specific_options\fR] [\fIspecial\fR]...
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBncheck\fR with no options generates a path-name versus i-number list of all
-files on \fIspecial\fR. If \fIspecial\fR is not specified on the command line
-the list is generated for all \fIspecial\fRs in \fB/etc/vfstab\fR which have a
-numeric \fBfsckpass\fR. \fIspecial\fR is the raw device on which the file
-system exists.
-.SH OPTIONS
-.sp
-.ne 2
-.na
-\fB\fB-F\fR\fR
-.ad
-.RS 19n
-Specify the \fIFSType\fR on which to operate. The \fIFSType\fR should either
-be specified here or be determinable from \fB/etc/vfstab\fR by finding an
-entry in the table that has a numeric \fBfsckpass\fR field and an
-\fBfsckdev\fR that matches \fIspecial\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-V\fR\fR
-.ad
-.RS 19n
-Echo the complete command line, but do not execute the command. The command
-line is generated by using the options and arguments provided by the user and
-adding to them information derived from \fB/etc/vfstab\fR. This option may be
-used to verify and validate the command line.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIgeneric_options\fR\fR
-.ad
-.RS 19n
-Options that are commonly supported by most FSType-specific command modules.
-The following options are available:
-.sp
-.ne 2
-.na
-\fB\fB-i\fR\fI i-list\fR\fR
-.ad
-.RS 13n
-Limit the report to the files on the \fIi-list\fR that follows. The
-\fIi-list\fR must be separated by commas with no intervening spaces.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-a\fR\fR
-.ad
-.RS 13n
-Print the names "." and ".\|." which are ordinarily suppressed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR\fR
-.ad
-.RS 13n
-Report only special files and files with set-user-ID mode. This option may be
-used to detect violations of security policy.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-o\fR\fR
-.ad
-.RS 19n
-Specify \fIFSType-specific_options\fR in a comma separated (without spaces)
-list of suboptions and keyword-attribute pairs for interpretation by the
-FSType-specific module of the command.
-.RE
-
-.SH USAGE
-.sp
-.LP
-See \fBlargefile\fR(5) for the description of the behavior of \fBncheck\fR when
-encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/vfstab\fR\fR
-.ad
-.RS 15n
-list of default parameters for each file system
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBvfstab\fR(4), \fBattributes\fR(5), \fBlargefile\fR(5) Manual pages for the
-FSType-specific modules of \fBncheck\fR
-.SH NOTES
-.sp
-.LP
-This command may not be supported for all \fIFSTypes\fR.
diff --git a/usr/src/man/man1m/ncheck_ufs.1m b/usr/src/man/man1m/ncheck_ufs.1m
deleted file mode 100644
index ab5047305e..0000000000
--- a/usr/src/man/man1m/ncheck_ufs.1m
+++ /dev/null
@@ -1,52 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 1997 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH NCHECK_UFS 1M "Dec 18, 1991"
-.SH NAME
-ncheck_ufs \- generate pathnames versus i-numbers for ufs file systems
-.SH SYNOPSIS
-.LP
-.nf
-\fBncheck\fR \fB-F\fR ufs [\fIgeneric_options\fR] [\fB-o\fR m] [\fIspecial\fR]...
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBncheck\fR \fB-F\fR \fBufs\fR generates a pathname versus i-number list of
-files for the \fBufs\fR file system residing on \fIspecial\fR. Names of
-directory files are followed by `\fB/.\fR'.
-.SH OPTIONS
-.sp
-.LP
-See \fBncheck\fR(1M) for the list of \fIgeneric_options\fR supported.
-.sp
-.ne 2
-.na
-\fB\fB-o\fR\fR
-.ad
-.RS 6n
-Specify \fBufs\fR file system specific options. The available option is:
-.sp
-.ne 2
-.na
-\fB\fBm\fR\fR
-.ad
-.RS 5n
-Print mode information.
-.RE
-
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBff\fR(1M), \fBncheck\fR(1M), \fBattributes\fR(5)
-.SH DIAGNOSTICS
-.sp
-.LP
-When the file system structure is improper, `\fB??\fR' denotes the "parent" of
-a parentless file and a pathname beginning with `\fB\&.\|.\|.\fR' denotes a
-loop.
diff --git a/usr/src/man/man1m/ndd.1m b/usr/src/man/man1m/ndd.1m
deleted file mode 100644
index ffa5b604e6..0000000000
--- a/usr/src/man/man1m/ndd.1m
+++ /dev/null
@@ -1,113 +0,0 @@
-'\" te
-.\" Copyright (C) 2007, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH NDD 1M "Mar 13, 2009"
-.SH NAME
-ndd \- get and set driver configuration parameters
-.SH SYNOPSIS
-.LP
-.nf
-\fBndd\fR [\fB-set\fR] \fIdriver\fR \fIparameter\fR [\fIvalue\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBndd\fR gets and sets selected configuration parameters in some kernel
-drivers. Currently, \fBndd\fR only supports the drivers that implement the
-\fBTCP/IP\fR Internet protocol family. Each driver chooses which parameters to
-make visible using \fBndd\fR. Since these parameters are usually tightly
-coupled to the implementation, they are likely to change from release to
-release. Some parameters may be read-only.
-.sp
-.LP
-If the \fB-set\fR option is omitted, \fBndd\fR queries the named \fIdriver\fR,
-retrieves the value associated with the specified \fIparameter\fR, and prints
-it. If the \fB-set\fR option is given, \fBndd\fR passes \fIvalue\fR, which must
-be specified, down to the named \fIdriver\fR which assigns it to the named
-\fIparameter\fR.
-.sp
-.LP
-By convention, drivers that support \fBndd\fR also support a special read-only
-\fIparameter\fR named ``\fB?\fR'' which can be used to list the parameters
-supported by the driver.
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRGetting Parameters Supported By The TCP Driver
-.sp
-.LP
-To see which parameters are supported by the TCP driver, use the following
-command:
-
-.sp
-.in +2
-.nf
-example% \fBndd /dev/tcp \e?\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The parameter name ``\fB?\fR'' may need to be escaped with a backslash to
-prevent its being interpreted as a shell meta character.
-
-.sp
-.LP
-The following command sets the value of the parameter \fIip_forwarding\fR in
-the dual stack IP driver to zero. This disables IPv4 packet forwarding.
-
-.sp
-.in +2
-.nf
-example% \fBndd -set /dev/ip ip_forwarding 0\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Similarly, in order to disable IPv6 packet forwarding, the value of parameter
-\fIip6_forwarding\fR
-
-.sp
-.in +2
-.nf
-example% \fBndd -set /dev/ip ip6_forwarding 0\fR
-.fi
-.in -2
-.sp
-
-.SH SEE ALSO
-.sp
-.LP
-\fBnca\fR(1), \fBdladm\fR(1M), \fBioctl\fR(2), \fBattributes\fR(5),
-\fBarp\fR(7P), \fBip\fR(7P), \fBip6\fR(7P), \fBtcp\fR(7P), \fBudp\fR(7P)
-.SH NOTES
-.sp
-.LP
-The parameters supported by each driver may change from release to release.
-Like programs that read \fB/dev/kmem\fR, user programs or shell scripts that
-execute \fBndd\fR should be prepared for parameter names to change.
-.sp
-.LP
-The \fBioctl()\fR command that \fBndd\fR uses to communicate with drivers is
-likely to change in a future release. User programs should avoid making
-dependencies on it.
-.sp
-.LP
-The use of \fBndd\fR to administer Layer 2 (Data Link layer) drivers is
-strongly discouraged as this capability is to be obsoleted in a future release,
-replaced by \fBdladm\fR(1M). Please refer to the driver-specific man page in
-section 7D of the SunOS man pages.
-.sp
-.LP
-The meanings of many \fBndd\fR parameters make sense only if you understand how
-the driver is implemented.
-.sp
-.LP
-If a TCP driver sends a report that is truncated, it could be because that
-driver uses \fBndd\fR for transporting the report. \fBndd\fR imposes a 64K
-limit on such reports.
diff --git a/usr/src/man/man1m/ndmpadm.1m b/usr/src/man/man1m/ndmpadm.1m
deleted file mode 100644
index 04c3947f4d..0000000000
--- a/usr/src/man/man1m/ndmpadm.1m
+++ /dev/null
@@ -1,461 +0,0 @@
-'\" te
-.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 2014 Nexenta Systems, Inc. All rights reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH NDMPADM 1M "April 9, 2016"
-.SH NAME
-ndmpadm \- administer Network Data Management Protocol activities
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/ndmpadm\fR [\fB-?\fR ] \fIsubcommand\fR [\fIoptions\fR] [\fIdirect-object\fR]
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBndmpadm\fR command can be used to query the \fBndmpd\fR(1M) daemon to
-get the status of active sessions, terminate a session, query backup devices,
-and set or get the current NDMP (Network Data Management Protocol) service
-variables and properties. \fBndmpadm\fR is implemented as a set of subcommands,
-many with their own direct object, which are described in the section for a
-given subcommand. Certain subcommands support options, which are described
-along with the subcommand.
-.sp
-.LP
-The \fBndmpadm\fR command supports the following subcommands:
-.sp
-.ne 2
-.na
-\fB\fBdisable\fR\fR
-.ad
-.sp .6
-.RS 4n
-Disable the specified authentication password handling.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBenable\fR\fR
-.ad
-.sp .6
-.RS 4n
-Enable the specified authentication password handling.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBget\fR\fR
-.ad
-.sp .6
-.RS 4n
-Get the value of an NDMP configuration property.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBkill-sessions\fR\fR
-.ad
-.sp .6
-.RS 4n
-Terminate an active session.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBset\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set the value of an NDMP configuration property.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBshow-devices\fR\fR
-.ad
-.sp .6
-.RS 4n
-Get a list of tape devices connected to the server.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBshow-sessions\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display the details of active NDMP sessions.
-.RE
-
-.SH OPTIONS
-.LP
-The following option is supported:
-.sp
-.ne 2
-.na
-\fB\fB-?\fR\fR
-.ad
-.RS 6n
-Display a list of all subcommands and options.
-.RE
-
-.SH SUBCOMMANDS
-.LP
-The \fBndmpadm\fR command supports the subcommands described below.
-.SS "\fBdisable\fR Subcommand"
-.LP
-The syntax for the \fBdisable\fR subcommand is:
-.sp
-.in +2
-.nf
-# \fBndmpadm disable -a \fIauth-type\fR\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-This subcommand disables the authentication type specified by \fIauth-type\fR
-for an NDMP client's remote access. Valid values for \fIauth-type\fR are
-\fBcram-md5\fR or \fBcleartext\fR.
-.SS "\fBenable\fR Subcommand"
-.LP
-The syntax for the \fBenable\fR subcommand is:
-.sp
-.in +2
-.nf
-# \fBndmpadm enable -a \fIauth-type\fR -u \fIusername\fR\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-This subcommand prompts for the user's password twice for confirmation and
-activates the specified authentication type with the given username and
-password for NDMP client access. Valid values for \fIauth-type\fR are
-\fBcram-md5\fR or \fBcleartext\fR.
-.SS "\fBget\fR Subcommand"
-.LP
-The syntax for the \fBget\fR subcommand is:
-.sp
-.in +2
-.nf
-# \fBndmpadm get [-p] [\fIproperty\fR] [[-p] \fIproperty\fR=\fIvalue\fR]...\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The property names are the same as used for the \fBset\fR subcommand and are
-described below. If you do not specify a property, the \fBget\fR subcommand
-returns all configuration properties.
-.SS "\fBkill-sessions\fR Subcommand"
-.LP
-The \fBkill-sessions\fR subcommand allows you to terminate the session number
-\fIID\fR.
-.sp
-.LP
-The syntax for the \fBkill-sessions\fR subcommand is:
-.sp
-.in +2
-.nf
-# \fBndmpadm kill-sessions \fIID\fR\fR
-.fi
-.in -2
-.sp
-
-.SS "\fBset\fR Subcommand"
-.LP
-The syntax for the \fBset\fR subcommand is:
-.sp
-.in +2
-.nf
-# \fBndmpadm set [-p] \fIproperty\fR=\fIvalue\fR [[-p] \fIproperty\fR=\fIvalue\fR]...\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The properties you can set with the \fBset\fR subcommand are described in the
-\fBndmp\fR(4) man page.
-.SS "\fBshow-devices\fR Subcommand"
-.LP
-The syntax for the \fBshow-devices\fR subcommand is:
-.sp
-.in +2
-.nf
-# \fBndmpadm show-devices\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-This subcommand lists the name, vendor, serial number, and other information
-about the current tape drive and libraries connected to the system.
-.SS "\fBshow-sessions\fR Subcommand"
-.LP
-The \fBshow-sessions\fR subcommand displays details of a session. The syntax
-for the \fBshow-sessions\fR subcommand is:
-.sp
-.in +2
-.nf
-# \fBndmpadm show-sessions [-i tape,scsi,data,mover] [\fIID\fR]\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The \fBshow-sessions\fR subcommand supports the following arguments:
-.sp
-.ne 2
-.na
-\fB\fB-i\fR \fBtape\fR,\fBscsi\fR,\fBdata\fR,\fBmover\fR\fR
-.ad
-.sp .6
-.RS 4n
-Identify a type of interface about which to obtain data. If no interface is
-specified, \fBshow-sessions\fR displays information for all types of
-interfaces.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIID\fR\fR
-.ad
-.sp .6
-.RS 4n
-Identifies a particular session about which to display data. If no \fIID\fR is
-specified, \fBshow-sessions\fR displays data for all sessions.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRObtaining the Status of All NDMP Connections
-.sp
-.LP
-The following command obtains status on all connections.
-
-.sp
-.in +2
-.nf
-# \fBndmpadm show-devices\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRObtaining the Status of Certain Types of Connections
-.sp
-.LP
-The following command obtains status on tape and SCSI interfaces.
-
-.sp
-.in +2
-.nf
-# \fBndmpadm show-sessions -i scsi,tape\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRLimiting Protocol Version
-.sp
-.LP
-The following command limits the use of the NDMP protocol to version 3.
-
-.sp
-.in +2
-.nf
-# \fBndmpadm set -p version=3\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 4 \fRTurning on Debugging
-.sp
-.LP
-The following command enables debugging. It also sets the NDMP protocol to
-version 3.
-
-.sp
-.in +2
-.nf
-# \fBndmpadm set -p debug-mode=yes -p version=3\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 5 \fRObtaining Current Version Number
-.sp
-.LP
-The following command obtains the version number of the currently running NDMP.
-
-.sp
-.in +2
-.nf
-# \fBndmpadm get -p version\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 6 \fRDisconnecting a Specific Session
-.sp
-.LP
-The command shown below disconnects session 5. The session number was
-previously obtained from an \fBndmpadm show-sessions\fR command.
-
-.sp
-.in +2
-.nf
-# \fBndmpadm kill-session 5\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 7 \fRObtaining the Values for All NDMP Properties
-.sp
-.LP
-The following command obtains the values for all NDMP properties.
-
-.sp
-.in +2
-.nf
-# \fBndmpadm get\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 8 \fREnabling CRAM-MD5 Authentication
-.sp
-.LP
-The following command enables CRAM-MD5 authentication.
-
-.sp
-.in +2
-.nf
-# \fBndmpadm enable -a cram-md5 -u admin\fR
-Enter new password:\fB*****\fR
-Re-enter password:\fB*****\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 9 \fRDisabling Clear Text Password Authentication
-.sp
-.LP
-The following command disables clear text password authentication.
-
-.sp
-.in +2
-.nf
-# \fBndmpadm disable -a cleartext\fR
-.fi
-.in -2
-.sp
-
-.SH EXIT STATUS
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 5n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB1\fR\fR
-.ad
-.RS 5n
-An error occurred, such as the \fBndmpd\fR daemon is not running, that
-prevented \fBndmpadm\fR from contacting the daemon.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB2\fR\fR
-.ad
-.RS 5n
-Invalid command-line options were specified.
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Committed
-.TE
-
-.SH SEE ALSO
-.LP
-\fBdump\fR(1), \fBtar\fR(1), \fBndmpd\fR(1M), \fBndmpstat\fR(1M),
-\fBsvccfg\fR(1M), \fBsyslogd\fR(1M), \fBndmp\fR(4), \fBattributes\fR(5),
-\fBsmf\fR(5)
-.SH NOTES
-.LP
-The \fBndmpd\fR(1M) daemon is managed by the service management facility
-(\fBsmf\fR(5)), under the service identifier:
-.sp
-.in +2
-.nf
-svc:/system/ndmpd
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Administrative actions on this service, such as setting and getting a property
-can be alternatively performed using \fBsvccfg\fR(1M). For example to enable
-Direct Access Recovery (DAR) mode:
-.sp
-.in +2
-.nf
-# \fBsvccfg -s svc:/system/ndmpd\fR
-svc:/system/ndmpd> \fBsetprop ndmpd/dar-support = yes\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-\&...and to get the list of properties:
-.sp
-.in +2
-.nf
-# \fBsvccfg -s svc:/system/ndmpd\fR
-svc:/system/ndmpd> \fBlistprop\fR
-.fi
-.in -2
-.sp
-
diff --git a/usr/src/man/man1m/ndmpd.1m b/usr/src/man/man1m/ndmpd.1m
deleted file mode 100644
index 8f9a5ee825..0000000000
--- a/usr/src/man/man1m/ndmpd.1m
+++ /dev/null
@@ -1,149 +0,0 @@
-'\" te
-.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 2014 Nexenta Systems, Inc. All rights reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH NDMPD 1M "Feb 24, 2014"
-.SH NAME
-ndmpd \- Network Data Management Protocol daemon
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/ndmp/ndmpd\fR [\fB-df\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBndmpd\fR daemon handles client Network Data Management Protocol (NDMP)
-requests. NDMP is an open, enterprise-wide, network-based data management
-protocol used for backup and recovery. The \fBndmpd\fR daemon enables users to
-manage data backup and recovery using Data Management Application (DMA)
-clients. The NDMP protocol is used to coordinate data movement and control
-between a DMA and an NDMP server or between two NDMP servers.
-
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-d\fR\fR
-.ad
-.RS 4n
-Enables debugging mode. Overrides ndmpd/debug-mode smf(5) property.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR\fR
-.ad
-.RS 4n
-Tells NDMP server not to detach from terminal and to run in foreground. Log
-messages will be printed to standard error output in addition to ndmp log
-file.
-.RE
-
-.SH EXIT STATUS
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 5n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB95\fR\fR
-.ad
-.RS 5n
-An error occurred that prevented the \fBndmpd\fR daemon from initializing, such
-as failure to fork a process, mutex initialization.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB96\fR\fR
-.ad
-.RS 5n
-Configuration problem or invalid command line options.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/ndmp/ndmpd\fR\fR
-.ad
-.sp .6
-.RS 4n
-Network data management protocol server binary.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/log/ndmp/ndmplog.0\fR\fR
-.ad
-.sp .6
-.RS 4n
-Network data management protocol log messages file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/ndmp/dumpdates\fR\fR
-.ad
-.sp .6
-.RS 4n
-A text file that stores information about the date and the level of dump
-backups.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Committed
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBsvcs\fR(1), \fBndmpadm\fR(1M), \fBsvcadm\fR(1M), \fBsvccfg\fR(1M),
-\fBsyslogd\fR(1M), \fBattributes\fR(5), \fBsmf\fR(5)
-.SH NOTES
-.sp
-.LP
-The \fBndmpd\fR daemon is managed by the service management facility
-(\fBsmf\fR(5)), under the service identifier:
-.sp
-.in +2
-.nf
-svc:/system/ndmpd:default
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Administrative actions on this service, such as enabling, disabling, or
-requesting restart, can be performed using \fBsvcadm\fR(1M). The service's
-status can be queried using the \fBsvcs\fR(1) command.
diff --git a/usr/src/man/man1m/ndmpstat.1m b/usr/src/man/man1m/ndmpstat.1m
deleted file mode 100644
index 6f47540195..0000000000
--- a/usr/src/man/man1m/ndmpstat.1m
+++ /dev/null
@@ -1,370 +0,0 @@
-'\" te
-.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH NDMPSTAT 1M "Jun 21, 2007"
-.SH NAME
-ndmpstat \- show NDMP backup progress statistics
-.SH SYNOPSIS
-.LP
-.nf
-\fBndmpstat\fR [\fItapes\fR] [\fIinterval\fR [\fIcount\fR]]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBndmpstat\fR utility reports Network Data Management Protocol (NDMP)
-statistics, among which are NDMP worker threads, disk IO, tape IO, files
-operation, performance, and backup activity.
-.sp
-.LP
-\fBndmpstat\fR reports the aggregate statistics for all tapes and disks. In
-order to obtain statistics for specific tape devices, the tape device name
-should be passed as argument to the utility.
-.sp
-.LP
-When invoked, \fBndmpstat\fR begins its display with a one-line summary of the
-NDMP daemon activity since the NDMP service was invoked.
-.SS "Display Fields"
-.sp
-.LP
-The fields in \fBndmpstat\fR output are described as follows:
-.sp
-.ne 2
-.na
-\fB\fBwthr\fR\fR
-.ad
-.sp .6
-.RS 4n
-Report the number of worker threads in each of the four following states:
-.sp
-.ne 2
-.na
-\fB\fBr\fR\fR
-.ad
-.sp .6
-.RS 4n
-the number of worker threads running
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBw\fR\fR
-.ad
-.sp .6
-.RS 4n
-the number of blocked worker threads that are waiting for resources such as I/O
-and paging
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBb\fR\fR
-.ad
-.sp .6
-.RS 4n
-the number of backup operations currently running
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBr\fR\fR
-.ad
-.sp .6
-.RS 4n
-the number of restore operations currently running
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfile\fR\fR
-.ad
-.sp .6
-.RS 4n
-Report on usage of filesystem.
-.sp
-.ne 2
-.na
-\fB\fBrd\fR\fR
-.ad
-.sp .6
-.RS 4n
-the number of files being read
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBwr\fR\fR
-.ad
-.sp .6
-.RS 4n
-the number of files being written
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdisk\fR\fR
-.ad
-.sp .6
-.RS 4n
-Report the number of disk operations per interval.
-.sp
-.ne 2
-.na
-\fB\fBrd\fR\fR
-.ad
-.sp .6
-.RS 4n
-the number of disk blocks being read
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBwr\fR\fR
-.ad
-.sp .6
-.RS 4n
-the number of disk blocks being written
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBtape\fR\fR
-.ad
-.sp .6
-.RS 4n
-Report the number of tape operations per interval. There are slots for up to
-four tapes, labeled with a single number. The number indicates the name of the
-device under \fB/dev/rmt\fR.
-.sp
-.ne 2
-.na
-\fB\fBrd\fR\fR
-.ad
-.sp .6
-.RS 4n
-the number of tape blocks being read
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBwr\fR\fR
-.ad
-.sp .6
-.RS 4n
-the number of tape blocks being written
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBbytes\fR\fR
-.ad
-.sp .6
-.RS 4n
-Report the number of bytes transferred. This is the aggregate value of both
-tape and disk devices. The number is in kilobytes.
-.sp
-.ne 2
-.na
-\fB\fBrd\fR\fR
-.ad
-.sp .6
-.RS 4n
-the number of kilobytes being read
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBwr\fR\fR
-.ad
-.sp .6
-.RS 4n
-the number of kilobytes being written
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBperf\fR\fR
-.ad
-.sp .6
-.RS 4n
-Displays a rough estimate of performance of the backup/restore operation in
-megabytes per second.
-.sp
-.ne 2
-.na
-\fB\fBbk\fR\fR
-.ad
-.sp .6
-.RS 4n
-backup performance
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrs\fR\fR
-.ad
-.sp .6
-.RS 4n
-restore performance
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBprcnt\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display the comparative usage of resources, in percent.
-.sp
-.ne 2
-.na
-\fB\fBdsk\fR\fR
-.ad
-.sp .6
-.RS 4n
-disk I/O time
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBtpe\fR\fR
-.ad
-.sp .6
-.RS 4n
-tape I/O time
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBotr\fR\fR
-.ad
-.sp .6
-.RS 4n
-other time (memory or idle)
-.RE
-
-.RE
-
-.sp
-.LP
-See \fBEXAMPLES\fR.
-.SH OPERANDS
-.sp
-.LP
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fB\fIcount\fR\fR
-.ad
-.RS 12n
-Specifies the number of times that the statistics display is repeated.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fItape\fR\fR
-.ad
-.RS 12n
-Specifies which tapes are to be given priority in the output. A command line is
-limited to a maximum of four tape devices. A common tape name is
-\fB/dev/rmt/\fR\fIn\fR, where \fIn\fR is an integer.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIinterval\fR\fR
-.ad
-.RS 12n
-Specifies the number of seconds over which \fBndmpstat\fR summarizes activity.
-The specified interval remains in effect till the command is terminated.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRUsing \fBndmpstat\fR
-.sp
-.LP
-The following command displays a summary of NDMP daemon activity at five-second
-intervals.
-
-.sp
-.in +2
-.nf
-example% \fBndmpstat 5\fR
-wthr file disk tape bytes perf prcnt
-r w b r rd wr rd wr rd wr rd wr bk rs dsk tpe otr
-1 0 3 6 50 9 1250 0 32544 4455 42335 3234 5 4 20 40 40
-1 0 0 1 1 0 128 0 0 128 64 64 1 0 0 80 20
-1 0 0 1 2 0 128 0 0 0 64 0 1 0 80 0 20
-1 0 0 1 1 0 128 0 0 0 64 0 1 0 80 0 20
-1 0 0 1 3 0 128 0 0 0 64 0 0 0 80 0 20
-1 0 0 1 1 0 128 0 0 128 64 64 1 0 0 80 20
-^C
-example%
-.fi
-.in -2
-.sp
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability See below
-.TE
-
-.sp
-.LP
-Invocation is evolving. Human readable output is unstable.
-.SH SEE ALSO
-.sp
-.LP
-\fBiostat\fR(1M), \fBmpstat\fR(1M), \fBndmpd\fR(1M), \fBndmpadm\fR(1M),
-\fBattributes\fR(5)
-.SH NOTES
-.sp
-.LP
-Performance numbers are not accurate and are rounded up at the MB/sec.
-boundary.
diff --git a/usr/src/man/man1m/ndp.1m b/usr/src/man/man1m/ndp.1m
deleted file mode 100644
index 57285b003f..0000000000
--- a/usr/src/man/man1m/ndp.1m
+++ /dev/null
@@ -1,221 +0,0 @@
-.\"
-.\" This file and its contents are supplied under the terms of the
-.\" Common Development and Distribution License ("CDDL"), version 1.0.
-.\" You may only use this file in accordance with the terms of version
-.\" 1.0 of the CDDL.
-.\"
-.\" A full copy of the text of the CDDL should have accompanied this
-.\" source. A copy of the CDDL is also available via the Internet at
-.\" http://www.illumos.org/license/CDDL.
-.\"
-.\"
-.\" Copyright (c) 2015, Joyent, Inc. All rights reserved.
-.\"
-.Dd Sep 02, 2015
-.Dt NDP 1M
-.Os
-.Sh NAME
-.Nm ndp
-.Nd manipulate IPv6 Neighbor Discovery Protocol mappings
-.Sh SYNOPSIS
-.Nm
-.Op Fl n
-.Fl a
-.Nm
-.Op Fl n
-.Fl A Ar period
-.Nm
-.Op Fl n
-.Op Fl i Ar iface
-.Ar hostname
-.Nm
-.Op Fl n
-.Op Fl i Ar iface
-.Fl d Ar hostname
-.Nm
-.Op Fl n
-.Op Fl i Ar iface
-.Fl f Ar filename
-.Nm
-.Op Fl n
-.Op Fl i Ar iface
-.Fl s Ar hostname lladdr
-.Op Cm temp
-.Op Cm any
-.Op Cm router
-.Sh DESCRIPTION
-The
-.Nm
-command displays and modifies the IPv6-to-MAC address translation
-tables used by the Neighbor Discovery Protocol
-.Po see Xr ndp 7P Pc .
-.Pp
-Given just a hostname,
-.Nm
-will display the current entry.
-Note that when getting, setting or deleting, if a hostname refers to multiple
-IPv6 addresses, the operation will apply to all of them.
-.Pp
-The NDP translation tables can be modified with
-.Fl d ,
-.Fl s ,
-or
-.Fl f .
-These flags can only be used when
-.Nm
-is given the
-.Sy PRIV_SYS_NET_CONFIG
-privilege.
-See
-.Xr privileges 5
-for further information.
-.Pp
-Note that NDP entries for IPMP (IP Network Multipathing) data and
-test addresses are managed by the kernel and therefore cannot be
-modified or deleted.
-.Sh OPTIONS
-.Bl -tag -width 6m
-.It Fl a
-Display all NDP entries.
-Entries can be one of several types:
-.Bl -tag -offset indent -width 7n
-.It Sy dynamic
-This is a normal NDP mapping and will eventually expire.
-This is the most common type of mapping for non-local addresses that will be
-displayed.
-.It Sy local
-The IPv6 address is local to the machine.
-.It Sy other
-The mapping is a multicast or broadcast address, or the system is acting
-as proxy for the address.
-.It Sy static
-The mapping is static and will not be removed from the machine over time.
-.El
-.Pp
-Entries also exist in one of the following states:
-.Bl -tag -offset indent -width 12m
-.It Sy INCOMPLETE
-Address resolution is in progress
-.It Sy REACHABLE
-This address has recently been reachable
-.It Sy STALE
-This address may be unreachable
-.It Sy DELAY
-Waiting to send out reachability probes
-.It Sy PROBE
-Sending out probes for the address
-.It Sy UNREACHABLE
-The address is unreachable, and will be deleted
-.It Sy UNKNOWN
-The state of the entry is unknown
-.El
-.Pp
-Using the
-.Fl a
-flag is equivalent to:
-.sp
-.Dl # netstat -p -f inet6
-.sp
-If
-.Fl n
-is passed to
-.Nm ,
-then it will be passed along to
-.Nm netstat .
-.It Fl A
-Display all NDP entries every
-.Ar period
-seconds.
-.It Fl d
-Delete NDP mappings for the host called
-.Ar hostname .
-.It Fl f
-Read in the lines from
-.Ar filename
-and use each one to set a mapping.
-The syntax of each line is the same as the arguments to
-.Fl s .
-Lines beginning with `#' will be ignored.
-.It Fl i
-By default,
-.Nm
-will use the routing table to determine the appropriate interface to place the
-mapping on.
-This flag allows forcing a specific interface
-.Ar iface .
-This argument will be ignored when using the
-.Fl a
-or
-.Fl A
-flags.
-.It Fl n
-Disable the default translation of numeric IP addresses to host names when
-printing.
-.It Fl s
-Add or update an NDP mapping, and set the desired properties for the entry.
-The list of flags should be the full set of flags desired on the entry, i.e.,
-not listing a flag will remove it if it already exists.
-The following flags can be used:
-.Bl -tag -offset indent -width Ds
-.It Cm temp
-The entry should be temporary and eventually expire like a normal NDP
-entry.
-By default, all entries created with the
-.Nm
-command are static, and will not be deleted.
-To make a static entry temporary, it should be deleted and recreated with the
-.Cm temp
-flag.
-.It Cm any
-The address should be treated like an anycast address.
-This will prevent the system from sending Neighbor Advertisements with the
-Override flag.
-.It Cm router
-The address should be treated like a router address.
-This cause the system to send Neighbor Advertisements with the Router flag.
-.El
-.El
-.Sh EXAMPLES
-.Ss Example 1: Setting a mapping
-To create a temporary mapping for an address:
-.Bd -literal -offset indent
-# ndp -s fd00::1 90:b8:d0:4b:c7:3b temp
-.Ed
-.Ss Example 2: Getting a mapping
-An entry can be fetched via its IP address:
-.Bd -literal -offset indent
-# ndp fd00::1
-fd00::1 (fd00::1) at 90:b8:d0:4b:c7:3b temp
-.Ed
-.sp
-Or via a name that resolves to that address:
-.Bd -literal -offset indent
-# echo fd00::1 epicac >> /etc/hosts
-# echo fd00::2 epicac >> /etc/hosts
-# ndp epicac
-fd00::1 (epicac) at 90:b8:d0:4b:c7:3b temp
-fd00::2 (epicac) -- no entry
-.Ed
-.Ss Example 3: Deleting a mapping
-An entry can be removed with the
-.Fl d
-flag:
-.Bd -literal -offset indent
-# ndp -d fd00::1
-.Ed
-.sp
-Attempting to remove it again will print an error message:
-.Bd -literal -offset indent
-# ndp -d fd00::1
-ndp: No entry for fd00::1
-.Ed
-.Sh STABILITY
-The command line options for this command are stable, but the output format
-and diagnostic messages are not.
-.Sh SEE ALSO
-.Xr arp 1M ,
-.Xr ifconfig 1M ,
-.Xr netstat 1M ,
-.Xr attributes 5 ,
-.Xr privileges 5 ,
-.Xr ndp 7P
diff --git a/usr/src/man/man1m/netstat.1m b/usr/src/man/man1m/netstat.1m
deleted file mode 100644
index e5f40aa6e8..0000000000
--- a/usr/src/man/man1m/netstat.1m
+++ /dev/null
@@ -1,1093 +0,0 @@
-'\" te
-.\" Copyright 2019 OmniOS Community Edition (OmniOSce) Association.
-.\" Copyright 2018, Joyent, Inc.
-.\" Copyright (C) 2002, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 1989 AT&T
-.\" Copyright (c) 1983 Regents of the University of California. All rights reserved. The Berkeley software License Agreement specifies the terms and conditions for redistribution.
-.TH NETSTAT 1M "Jul 12, 2016"
-.SH NAME
-netstat \- show network status
-.SH SYNOPSIS
-.nf
-\fBnetstat\fR [\fB-anuvR\fR] [\fB-f\fR \fIaddress_family\fR] [\fB-P\fR \fIprotocol\fR]
-.fi
-
-.LP
-.nf
-\fBnetstat\fR \fB-g\fR [\fB-nv\fR] [\fB-f\fR \fIaddress_family\fR]
-.fi
-
-.LP
-.nf
-\fBnetstat\fR \fB-p\fR [\fB-n\fR] [\fB-f\fR \fIaddress_family\fR]
-.fi
-
-.LP
-.nf
-\fBnetstat\fR \fB-s\fR [\fB-f\fR \fIaddress_family\fR] [\fB-P\fR \fIprotocol\fR]
- [\fB-T\fR u | d ] [\fIinterval\fR [\fIcount\fR]]
-.fi
-
-.LP
-.nf
-\fBnetstat\fR \fB-m\fR [\fB-T\fR u | d ] [\fB-v\fR] [\fIinterval\fR [\fIcount\fR]]
-.fi
-
-.LP
-.nf
-\fBnetstat\fR \fB-i\fR [\fB-I\fR \fIinterface\fR] [\fB-acn\fR] [\fB-f\fR \fIaddress_family\fR]
- [\fB-T\fR u | d ] [\fIinterval\fR [\fIcount\fR]]
-.fi
-
-.LP
-.nf
-\fBnetstat\fR \fB-r\fR [\fB-acnvR\fR] [\fB-f\fR \fIaddress_family\fR | \fIfilter\fR]
-.fi
-
-.LP
-.nf
-\fBnetstat\fR \fB-M\fR [\fB-cns\fR] [\fB-f\fR \fIaddress_family\fR]
-.fi
-
-.LP
-.nf
-\fBnetstat\fR \fB-D\fR [\fB-I\fR \fIinterface\fR] [\fB-f\fR \fIaddress_family\fR]
-.fi
-
-.SH DESCRIPTION
-The \fBnetstat\fR command displays the contents of certain network-related data
-structures in various formats, depending on the options you select.
-.LP
-The \fBnetstat\fR command has the several forms shown in the SYNOPSIS section,
-above, listed as follows:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The first form of the command (with no required arguments) displays a list of
-active sockets for each protocol.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The second, third, and fourth forms (\fB-g\fR, \fB-p\fR, and \fB-s\fR options)
-display information from various network data structures.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The fifth form (\fB-m\fR option) displays STREAMS memory statistics.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The sixth form (\fB-i\fR option) shows the state of the interfaces.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The seventh form (\fB-r\fR option) displays the routing table.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The eighth form (\fB-M\fR option) displays the multicast routing table.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The ninth form (\fB-D\fR option) displays the state of \fBDHCP\fR on one or all
-interfaces.
-.RE
-.LP
-These forms are described in greater detail below.
-.LP
-With no arguments (the first form), \fBnetstat\fR displays connected sockets
-for \fBPF_INET\fR, \fBPF_INET6\fR, and \fBPF_UNIX\fR, unless modified otherwise
-by the \fB-f\fR option.
-.SH OPTIONS
-.ne 2
-.na
-\fB-a\fR
-.ad
-.sp .6
-.RS 4n
-Show the state of all sockets, all routing table entries, or all interfaces,
-both physical and logical. Normally, listener sockets used by server processes
-are not shown. Under most conditions, only interface, host, network, and
-default routes are shown and only the status of physical interfaces is shown.
-.RE
-
-.sp
-.ne 2
-.na
-\fB-c\fR
-.ad
-.sp .6
-.RS 4n
-Print IPv4 networks using CIDR (x.y.z.a/NN) notation with the \fB-i\fR,
-\fB-r\fR, and \fB-M\fR options. IPv6 networks default to this, but due to
-backward compatibility, IPv4 ones do not without this flag. A noncontiguous
-IPv4 netmask will print "/NM" if this flag is enabled.
-.RE
-
-.sp
-.ne 2
-.na
-\fB-f\fR \fIaddress_family\fR
-.ad
-.sp .6
-.RS 4n
-Limit all displays to those of the specified \fIaddress_family\fR. The value of
-\fIaddress_family\fR can be one of the following:
-.sp
-.ne 2
-.na
-\fBinet\fR
-.ad
-.RS 9n
-For the \fBAF_INET\fR address family showing IPv4 information.
-.RE
-
-.sp
-.ne 2
-.na
-\fBinet6\fR
-.ad
-.RS 9n
-For the \fBAF_INET6\fR address family showing IPv6 information.
-.RE
-
-.sp
-.ne 2
-.na
-\fBunix\fR
-.ad
-.RS 9n
-For the \fBAF_UNIX\fR address family.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB-f\fR \fIfilter\fR
-.ad
-.sp .6
-.RS 4n
-With \fB-r\fR only, limit the display of routes to those matching the specified
-filter. A filter rule consists of a \fIkeyword\fR:\fIvalue\fR pair. The known
-keywords and the value syntax are:
-.sp
-.ne 2
-.na
-\fBaf:\fR{\fBinet\fR|\fBinet6\fR|\fBunix\fR|\fInumber\fR}
-.ad
-.sp .6
-.RS 4n
-Selects an address family. This is identical to \fB-f\fR \fIaddress_family\fR
-and both syntaxes are supported.
-.RE
-
-.sp
-.ne 2
-.na
-\fBoutif\fR:{\fIname\fR|\fIifIndex\fR|\fBany\fR|\fBnone\fR}
-.ad
-.sp .6
-.RS 4n
-Selects an output interface. You can specify the interface by name (such as
-\fBhme0\fR) or by \fBifIndex\fR number (for example, \fB2\fR). If \fBany\fR is
-used, the filter matches all routes having a specified interface (anything
-other than null). If \fBnone\fR is used, the filter matches all routes having a
-null interface. Note that you can view the index number (\fIifIndex\fR) for an
-interface with the \fB-a\fR option of \fBifconfig\fR(1M).
-.RE
-
-.sp
-.ne 2
-.na
-\fBdst\fR:{\fIip-address\fR[/\fImask\fR]|\fBany\fR|\fBnone\fR}
-.ad
-.sp .6
-.RS 4n
-Selects a destination IP address. If specified with a mask length, then any
-routes with matching or longer (more specific) masks are selected. If \fBany\fR
-is used, then all but addresses but 0 are selected. If \fBnone\fR is used, then
-address 0 is selected.
-.RE
-
-.sp
-.ne 2
-.na
-\fBflags:\fR[\fB+ -\fR]?[\fBABDGHLMSU\fR]\fB+\fR
-.ad
-.sp .6
-.RS 4n
-Selects routes tagged with the specified flags. By default, the flags as
-specified must be set in order to match. With a leading \fB+\fR, the flags
-specified must be set but others are ignored. With a leading \fB-\fR, the flags
-specified must not be set and others are permitted.
-.RE
-
-You can specify multiple instances of \fB-f\fR to specify multiple filters. For
-example:
-.sp
-.in +2
-.nf
-% netstat -nr -f outif:hme0 -f outif:hme1 -f dst:10.0.0.0/8
-.fi
-.in -2
-.sp
-
-The preceding command displays routes within network 10.0.0.0/8, with mask
-length 8 or greater, and an output interface of either \fBhme0\fR or
-\fBhme1\fR, and excludes all other routes.
-.RE
-
-.sp
-.ne 2
-.na
-\fB-g\fR
-.ad
-.sp .6
-.RS 4n
-Show the multicast group memberships for all interfaces. If the \fB-v\fR option
-is included, source-specific membership information is also displayed. See
-DISPLAYS, below.
-.RE
-
-.sp
-.ne 2
-.na
-\fB-i\fR
-.ad
-.sp .6
-.RS 4n
-Show the state of the interfaces that are used for \fBIP\fR traffic. Normally
-this shows statistics for the physical interfaces. When combined with the
-\fB-a\fR option, this will also report information for the logical interfaces.
-See \fBifconfig\fR(1M).
-.RE
-
-.sp
-.ne 2
-.na
-\fB-m\fR
-.ad
-.sp .6
-.RS 4n
-Show the STREAMS memory statistics.
-.RE
-
-.sp
-.ne 2
-.na
-\fB-n\fR
-.ad
-.sp .6
-.RS 4n
-Show network addresses as numbers. \fBnetstat\fR normally displays addresses as
-symbols. This option may be used with any of the display formats.
-.RE
-
-.sp
-.ne 2
-.na
-\fB-p\fR
-.ad
-.sp .6
-.RS 4n
-Show the net to media tables. See DISPLAYS, below.
-.RE
-
-.sp
-.ne 2
-.na
-\fB-r\fR
-.ad
-.sp .6
-.RS 4n
-Show the routing tables. Normally, only interface, host, network, and default
-routes are shown, but when this option is combined with the \fB-a\fR option,
-all routes will be displayed, including cache. If you have not set up a
-multicast route, \fB-ra\fR might not show any multicast routing entries,
-although the kernel will derive such an entry if needed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB-s\fR
-.ad
-.sp .6
-.RS 4n
-Show per-protocol statistics. When used with the \fB-M\fR option, show
-multicast routing statistics instead. When used with the \fB-a\fR option,
-per-interface statistics will be displayed, when available, in addition to
-statistics global to the system. See DISPLAYS, below.
-.RE
-
-.sp
-.ne 2
-.na
-\fB-T\fR \fBu\fR | \fBd\fR
-.ad
-.sp .6
-.RS 4n
-Display a time stamp.
-.sp
-Specify \fBu\fR for a printed representation of the internal representation of
-time. See \fBtime\fR(2). Specify \fBd\fR for standard date format. See
-\fBdate\fR(1).
-.RE
-
-.sp
-.ne 2
-.na
-\fB-u\fR
-.ad
-.sp .6
-.RS 4n
-For each network endpoint show the list of processes which currently have an
-open file descriptor pointing to that endpoint. For each process in that list,
-show the username, process ID and associated program; the information
-may be truncated. Where multiple processes are associated with an endpoint,
-a line will be output for each process.
-.sp
-While the system gathers this information, the processes associated with a
-given endpoint may change. If such a change occurs, it may not be reflected in
-the output.
-.RE
-
-.sp
-.ne 2
-.na
-\fB-v\fR
-.ad
-.sp .6
-.RS 4n
-Verbose. Show additional information for the sockets, STREAMS memory
-statistics, routing table, and multicast group memberships. In conjunction with
-the \fB-u\fR flag, show the arguments with which the process was started;
-these may be truncated.
-.RE
-
-.sp
-.ne 2
-.na
-\fB-I\fR \fIinterface\fR
-.ad
-.sp .6
-.RS 4n
-Show the state of a particular interface. \fIinterface\fR can be any valid
-interface such as \fBhme0\fR or \fBeri0\fR. Normally, the status and statistics
-for physical interfaces are displayed. When this option is combined with the
-\fB-a\fR option, information for the logical interfaces is also reported.
-.RE
-
-.sp
-.ne 2
-.na
-\fB-M\fR
-.ad
-.sp .6
-.RS 4n
-Show the multicast routing tables. When used with the \fB-s\fR option, show
-multicast routing statistics instead.
-.RE
-
-.sp
-.ne 2
-.na
-\fB-P\fR \fIprotocol\fR
-.ad
-.sp .6
-.RS 4n
-Limit display of statistics or state of all sockets to those applicable to
-\fIprotocol\fR. The protocol can be one of \fBip\fR, \fBipv6\fR, \fBicmp\fR,
-\fBicmpv6\fR, \fBicmp\fR, \fBicmpv6\fR, \fBigmp\fR, \fBudp\fR, \fBtcp\fR,
-\fBrawip\fR. \fBrawip\fR can also be specified as \fBraw\fR. The command
-accepts protocol options only as all lowercase.
-.RE
-
-.sp
-.ne 2
-.na
-\fB-D\fR
-.ad
-.sp .6
-.RS 4n
-Show the status of \fBDHCP\fR configured interfaces.
-.RE
-
-.sp
-.ne 2
-.na
-\fB-R\fR
-.ad
-.sp .6
-.RS 4n
-This modifier displays extended security attributes for sockets and routing
-table entries. The \fB-R\fR modifier is available only if the system is
-configured with the Solaris Trusted Extensions feature.
-.sp
-With \fB-r\fR only, this option displays the routing entries' gateway security
-attributes. See \fBroute\fR(1M) for more information on security attributes.
-.sp
-When displaying socket information using the first form of the command, this
-option displays additional information for Multi-Level Port(MLP) sockets. This
-includes:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The label for the peer if the socket is connected.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The following flags can be appended to the socket's "State" output:
-.RS
-
-.sp
-.ne 2
-.na
-\fBP\fR
-.ad
-.RS 5n
-The socket is a MLP on zone-private IP addresses.
-.RE
-
-.sp
-.ne 2
-.na
-\fBS\fR
-.ad
-.RS 5n
-The socket is a MLP on IP addresses shared between zones.
-.RE
-.SH OPERANDS
-.ne 2
-.na
-\fB\fIinterval\fR\fR
-.ad
-.RS 12n
-Display statistics accumulated since last display every \fIinterval\fR seconds,
-repeating forever, unless \fIcount\fR is specified. When invoked with
-\fIinterval\fR, the first row of netstat output shows statistics accumulated
-since last reboot.
-.sp
-The following options support \fIinterval\fR: \fB-i\fR, \fB-m\fR, \fB-s\fR and
-\fB-Ms\fR. Some values are configuration parameters and are just redisplayed at
-each interval.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIcount\fR\fR
-.ad
-.RS 12n
-Display interface statistics the number of times specified by \fIcount\fR, at
-the interval specified by \fIinterval\fR.
-.RE
-
-.SH DISPLAYS
-.SS "Active Sockets (First Form)"
-The display for each active socket shows the local and remote address, the send
-and receive queue sizes (in bytes), the send and receive windows (in bytes),
-and the internal state of the protocol.
-.LP
-The symbolic format normally used to display socket addresses is either:
-.sp
-.in +2
-.nf
-\fBhostname\fR.\fIport\fR
-.fi
-.in -2
-.sp
-when the name of the host is specified, or
-.sp
-.in +2
-.nf
-\fInetwork\fR.\fIport\fR
-.fi
-.in -2
-.sp
-if a socket address specifies a network but no specific host.
-.LP
-The numeric host address or network number associated with the socket is used
-to look up the corresponding symbolic hostname or network name in the
-\fIhosts\fR or \fInetworks\fR database.
-.LP
-If the network or hostname for an address is not known, or if the \fB-n\fR
-option is specified, the numerical network address is shown. Unspecified, or
-"wildcard", addresses and ports appear as an asterisk (\fB*\fR). For more
-information regarding the Internet naming conventions, refer to \fBinet\fR(7P)
-and \fBinet6\fR(7P).
-.LP
-For SCTP sockets, because an endpoint can be represented by multiple addresses,
-the verbose option (\fB-v\fR) displays the list of all the local and remote
-addresses.
-.SS "\fITCP Sockets\fR"
-The possible state values for \fBTCP\fR sockets are as follows:
-.sp
-.ne 2
-.na
-\fBBOUND\fR
-.ad
-.RS 16n
-Bound, ready to connect or listen.
-.RE
-
-.sp
-.ne 2
-.na
-\fBCLOSED\fR
-.ad
-.RS 16n
-Closed. The socket is not being used.
-.RE
-
-.sp
-.ne 2
-.na
-\fBCLOSING\fR
-.ad
-.RS 16n
-Closed, then remote shutdown; awaiting acknowledgment.
-.RE
-
-.sp
-.ne 2
-.na
-\fBCLOSE_WAIT\fR
-.ad
-.RS 16n
-Remote shutdown; waiting for the socket to close.
-.RE
-
-.sp
-.ne 2
-.na
-\fBESTABLISHED\fR
-.ad
-.RS 16n
-Connection has been established.
-.RE
-
-.sp
-.ne 2
-.na
-\fBFIN_WAIT_1\fR
-.ad
-.RS 16n
-Socket closed; shutting down connection.
-.RE
-
-.sp
-.ne 2
-.na
-\fBFIN_WAIT_2\fR
-.ad
-.RS 16n
-Socket closed; waiting for shutdown from remote.
-.RE
-
-.sp
-.ne 2
-.na
-\fBIDLE\fR
-.ad
-.RS 16n
-Idle, opened but not bound.
-.RE
-
-.sp
-.ne 2
-.na
-\fBLAST_ACK\fR
-.ad
-.RS 16n
-Remote shutdown, then closed; awaiting acknowledgment.
-.RE
-
-.sp
-.ne 2
-.na
-\fBLISTEN\fR
-.ad
-.RS 16n
-Listening for incoming connections.
-.RE
-
-.sp
-.ne 2
-.na
-\fBSYN_RECEIVED\fR
-.ad
-.RS 16n
-Initial synchronization of the connection under way.
-.RE
-
-.sp
-.ne 2
-.na
-\fBSYN_SENT\fR
-.ad
-.RS 16n
-Actively trying to establish connection.
-.RE
-
-.sp
-.ne 2
-.na
-\fBTIME_WAIT\fR
-.ad
-.RS 16n
-Wait after close for remote shutdown retransmission.
-.RE
-
-.SS "\fISCTP Sockets\fR"
-The possible state values for SCTP sockets are as follows:
-.sp
-.ne 2
-.na
-\fBCLOSED\fR
-.ad
-.RS 21n
-Closed. The socket is not being used.
-.RE
-
-.sp
-.ne 2
-.na
-\fBLISTEN\fR
-.ad
-.RS 21n
-Listening for incoming associations.
-.RE
-
-.sp
-.ne 2
-.na
-\fBESTABLISHED\fR
-.ad
-.RS 21n
-Association has been established.
-.RE
-
-.sp
-.ne 2
-.na
-\fBCOOKIE_WAIT\fR
-.ad
-.RS 21n
-\fBINIT\fR has been sent to the peer, awaiting acknowledgment.
-.RE
-
-.sp
-.ne 2
-.na
-\fBCOOKIE_ECHOED\fR
-.ad
-.RS 21n
-State cookie from the INIT-ACK has been sent to the peer, awaiting
-acknowledgement.
-.RE
-
-.sp
-.ne 2
-.na
-\fBSHUTDOWN_PENDING\fR
-.ad
-.RS 21n
-\fBSHUTDOWN\fR has been received from the upper layer, awaiting acknowledgement
-of all outstanding \fBDATA\fR from the peer.
-.RE
-
-.sp
-.ne 2
-.na
-\fBSHUTDOWN_SENT\fR
-.ad
-.RS 21n
-All outstanding data has been acknowledged in the \fBSHUTDOWN_SENT\fR state.
-\fBSHUTDOWN\fR has been sent to the peer, awaiting acknowledgement.
-.RE
-
-.sp
-.ne 2
-.na
-\fBSHUTDOWN_RECEIVED\fR
-.ad
-.RS 21n
-\fBSHUTDOWN\fR has been received from the peer, awaiting acknowledgement of all
-outstanding \fBDATA\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBSHUTDOWN_ACK_SENT\fR
-.ad
-.RS 21n
-All outstanding data has been acknowledged in the \fBSHUTDOWN_RECEIVED\fR
-state. \fBSHUTDOWN_ACK\fR has been sent to the peer.
-.RE
-
-.SS "Network Data Structures (Second Through Fifth Forms)"
-The form of the display depends upon which of the \fB-g\fR, \fB-m\fR, \fB-p\fR,
-or \fB-s\fR options you select.
-.sp
-.ne 2
-.na
-\fB-g\fR
-.ad
-.RS 6n
-Displays the list of multicast group membership.
-.RE
-
-.sp
-.ne 2
-.na
-\fB-m\fR
-.ad
-.RS 6n
-Displays the memory usage, for example, STREAMS mblks.
-.RE
-
-.sp
-.ne 2
-.na
-\fB-p\fR
-.ad
-.RS 6n
-Displays the net to media mapping table. For IPv4, the address resolution table
-is displayed. See \fBarp\fR(1M). For IPv6, the neighbor cache is displayed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB-s\fR
-.ad
-.RS 6n
-Displays the statistics for the various protocol layers.
-.RE
-
-.sp
-.LP
-The statistics use the MIB specified variables. The defined values for
-\fBipForwarding\fR are:
-.sp
-.ne 2
-.na
-\fBforwarding (1)\fR
-.ad
-.RS 21n
-Acting as a gateway.
-.RE
-
-.sp
-.ne 2
-.na
-\fBnot-forwarding (2)\fR
-.ad
-.RS 21n
-Not acting as a gateway.
-.RE
-
-.sp
-.LP
-The IPv6 and ICMPv6 protocol layers maintain per-interface statistics. If the
-\fB-a\fR option is specified with the \fB-s\fR option, then the per-interface
-statistics as well as the total sums are displayed. Otherwise, just the sum of
-the statistics are shown.
-.LP
-For the second, third, and fourth forms of the command, you must specify at
-least \fB-g\fR, \fB-p\fR, or \fB-s\fR. You can specify any combination of these
-options. You can also specify \fB-m\fR (the fifth form) with any set of the
-\fB-g\fR, \fB-p\fR, and \fB-s\fR options. If you specify more than one of these
-options, \fBnetstat\fR displays the information for each one of them.
-.SS "Interface Status (Sixth Form)"
-The interface status display lists information for all current interfaces, one
-interface per line. If an interface is specified using the \fB-I\fR option, it
-displays information for only the specified interface.
-.LP
-The list consists of the interface name, \fBmtu\fR (maximum transmission unit,
-or maximum packet size)(see \fBifconfig\fR(1M)), the network to which the
-interface is attached, addresses for each interface, and counter associated
-with the interface. The counters show the number of input packets, input
-errors, output packets, output errors, and collisions, respectively. For
-Point-to-Point interfaces, the Net/Dest field is the name or address on the
-other side of the link.
-.LP
-If the \fB-a\fR option is specified with either the \fB-i\fR option or the
-\fB-I\fR option, then the output includes names of the physical interface(s),
-counts for input packets and output packets for each logical interface, plus
-additional information.
-.LP
-If the \fB-n\fR option is specified, the list displays the IP address instead
-of the interface name.
-.LP
-If an optional \fIinterval\fR is specified, the output will be continually
-displayed in \fIinterval\fR seconds until interrupted by the user or until
-\fIcount\fR is reached. See OPERANDS.
-.LP
-The physical interface is specified using the \fB-I\fR option. When used with
-the \fIinterval\fR operand, output for the \fB-I\fR option has the following
-format:
-.sp
-.in +2
-.nf
-input eri0 output input (Total) output
-packets errs packets errs colls packets errs packets errs colls
-227681 0 659471 1 502 261331 0 99597 1 502
-10 0 0 0 0 10 0 0 0 0
-8 0 0 0 0 8 0 0 0 0
-10 0 2 0 0 10 0 2 0 0
-.fi
-.in -2
-.sp
-.LP
-If the input interface is not specified, the first interface of address family
-\fBinet\fR or \fBinet6\fR will be displayed.
-.SS "Routing Table (Seventh Form)"
-The routing table display lists the available routes and the status of each.
-Each route consists of a destination host or network, and a gateway to use in
-forwarding packets. The \fIflags\fR column shows the status of the route. These
-flags are as follows:
-.sp
-.ne 2
-.na
-\fBU\fR
-.ad
-.RS 5n
-Indicates route is \fBup\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBG\fR
-.ad
-.RS 5n
-Route is to a gateway.
-.RE
-
-.sp
-.ne 2
-.na
-\fBH\fR
-.ad
-.RS 5n
-Route is to a host and not a network.
-.RE
-
-.sp
-.ne 2
-.na
-\fBM\fR
-.ad
-.RS 5n
-Redundant route established with the \fB-multirt\fR option.
-.RE
-
-.sp
-.ne 2
-.na
-\fBS\fR
-.ad
-.RS 5n
-Route was established using the \fB-setsrc\fR option.
-.RE
-
-.sp
-.ne 2
-.na
-\fBD\fR
-.ad
-.RS 5n
-Route was created dynamically by a redirect.
-.RE
-
-.sp
-.LP
-If the \fB-a\fR option is specified, there will be routing entries with the
-following flags:
-.sp
-.ne 2
-.na
-\fBA\fR
-.ad
-.RS 5n
-Combined routing and address resolution entries.
-.RE
-
-.sp
-.ne 2
-.na
-\fBB\fR
-.ad
-.RS 5n
-Broadcast addresses.
-.RE
-
-.sp
-.ne 2
-.na
-\fBL\fR
-.ad
-.RS 5n
-Local addresses for the host.
-.RE
-
-.LP
-Interface routes are created for each interface attached to the local host; the
-gateway field for such entries shows the address of the outgoing interface.
-.LP
-The \fBuse\fR column displays the number of packets sent using a combined
-routing and address resolution (\fBA\fR) or a broadcast (\fBB\fR) route. For a
-local (\fBL\fR) route, this count is the number of packets received, and for
-all other routes it is the number of times the routing entry has been used to
-create a new combined route and address resolution entry.
-.LP
-The \fIinterface\fR entry indicates the network interface utilized for the
-route.
-.SS "Multicast Routing Tables (Eighth Form)"
-The multicast routing table consists of the virtual interface table and the
-actual routing table.
-.SS "DHCP Interface Information (Ninth Form)"
-The \fBDHCP\fR interface information consists of the interface name, its
-current state, lease information, packet counts, and a list of flags.
-.LP
-The states correlate with the specifications set forth in \fIRFC 2131\fR.
-.LP
-Lease information includes:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-when the lease began;
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-when lease renewal will begin; and
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-when the lease will expire.
-.RE
-.sp
-.LP
-The flags currently defined include:
-.sp
-.ne 2
-.na
-\fBBOOTP\fR
-.ad
-.RS 11n
-The interface has a lease obtained through \fBBOOTP\fR (IPv4 only).
-.RE
-
-.sp
-.ne 2
-.na
-\fBBUSY\fR
-.ad
-.RS 11n
-The interface is busy with a \fBDHCP\fR transaction.
-.RE
-
-.sp
-.ne 2
-.na
-\fBPRIMARY\fR
-.ad
-.RS 11n
-The interface is the primary interface. See \fBdhcpinfo\fR(1) and
-\fBifconfig\fR(1M).
-.RE
-
-.sp
-.ne 2
-.na
-\fBFAILED\fR
-.ad
-.RS 11n
-The interface is in failure state and must be manually restarted.
-.RE
-
-.LP
-Packet counts are maintained for the number of packets sent, the number of
-packets received, and the number of lease offers declined by the \fBDHCP\fR
-client. All three counters are initialized to zero and then incremented while
-obtaining a lease. The counters are reset when the period of lease renewal
-begins for the interface. Thus, the counters represent either the number of
-packets sent, received, and declined while obtaining the current lease, or the
-number of packets sent, received, and declined while attempting to obtain a
-future lease.
-.SH FILES
-.ne 2
-.na
-\fB/etc/default/inet_type\fR
-.ad
-.RS 26n
-\fBDEFAULT_IP\fR setting
-.RE
-
-.SH SEE ALSO
-\fBarp\fR(1M), \fBdhcpinfo\fR(1), \fBdhcpagent\fR(1M), \fBifconfig\fR(1M),
-\fBiostat\fR(1M), \fBkstat\fR(1M), \fBmibiisa\fR(1M), \fBndp\fR(1M), \fBsavecore\fR(1M),
-\fBvmstat\fR(1M), \fBhosts\fR(4), \fBinet_type\fR(4), \fBnetworks\fR(4),
-\fBprotocols\fR(4), \fBservices\fR(4), \fBattributes\fR(5), \fBdhcp\fR(5),
-\fBkstat\fR(7D), \fBinet\fR(7P), \fBinet6\fR(7P)
-.sp
-.LP
-Droms, R., \fIRFC 2131, Dynamic Host Configuration Protocol\fR, Network Working
-Group, March 1997.
-.sp
-.LP
-Droms, R. \fIRFC 3315, Dynamic Host Configuration Protocol for IPv6
-(DHCPv6)\fR. Cisco Systems. July 2003.
-.SH NOTES
-When displaying interface information, \fBnetstat\fR honors the
-\fBDEFAULT_IP\fR setting in \fB/etc/default/inet_type\fR. If it is set to
-\fBIP_VERSION4\fR, then \fBnetstat\fR will omit information relating to IPv6
-interfaces, statistics, connections, routes and the like.
-.LP
-However, you can override the \fBDEFAULT_IP\fR setting in
-\fB/etc/default/inet_type\fR on the command-line. For example, if you have used
-the command-line to explicitly request IPv6 information by using the
-\fBinet6\fR address family or one of the IPv6 protocols, it will override the
-\fBDEFAULT_IP\fR setting.
-.LP
-If you need to examine network status information following a kernel crash, use
-the \fBmdb\fR(1) utility on the \fBsavecore\fR(1M) output.
-.LP
-The \fBnetstat\fR utility obtains TCP statistics from the system by opening
-\fB/dev/tcp\fR and issuing queries. Because of this, \fBnetstat\fR might
-display an extra, unused connection in \fBIDLE\fR state when reporting
-connection status.
-.LP
-Previous versions of \fBnetstat\fR had undocumented methods for reporting
-kernel statistics published using the \fBkstat\fR(7D) facility. This
-functionality has been removed. Use \fBkstat\fR(1M) instead.
-.LP
-\fBnetstat\fR restricts its output to information that is relevant to the zone
-in which \fBnetstat\fR runs. (This is true for both shared-IP and exclusive-IP
-zones.)
diff --git a/usr/src/man/man1m/netstrategy.1m b/usr/src/man/man1m/netstrategy.1m
deleted file mode 100644
index 5c3dbe8ceb..0000000000
--- a/usr/src/man/man1m/netstrategy.1m
+++ /dev/null
@@ -1,110 +0,0 @@
-'\" te
-.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH NETSTRATEGY 1M "May 5, 2007"
-.SH NAME
-netstrategy \- return network configuration information
-.SH SYNOPSIS
-.LP
-.nf
-\fB/sbin/netstrategy\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBnetstrategy\fR command determines the network configuration strategy in
-use on a system and returns information in a form that is easily consumable by
-a script. The command returns three tokens:
-.sp
-.in +2
-.nf
-\fI<root filesystem type>\fR \fI<primary interface>\fR \fI<network config strategy>\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-These tokens are described as follows:
-.sp
-.ne 2
-.na
-\fB\fI<root filesystem type>\fR\fR
-.ad
-.sp .6
-.RS 4n
-Type of filesystem that contains the bootable kernel, as would be specified in
-the \fIfstype\fR column of the \fBmnttab\fR(4).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fI<primary interface>\fR\fR
-.ad
-.sp .6
-.RS 4n
-Name of the primary network interface. For a diskless machine, this is the
-interface used to load the kernel.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fI<network config strategy>\fR\fR
-.ad
-.sp .6
-.RS 4n
-The means by which a system obtains its IP address for booting. This can be one
-of \fBrarp\fR, \fBdhcp\fR, or \fBnone\fR.
-.RE
-
-.sp
-.LP
-The \fBnetstrategy\fR command is not intended for use on a command line.
-.SH OPTIONS
-.sp
-.LP
-The \fBnetstrategy\fR command has no options.
-.SH EXIT STATUS
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 7n
-Success.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB!=0\fR\fR
-.ad
-.RS 7n
-An error occurred.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBifconfig\fR(1M), \fBmnttab\fR(4), \fBattributes\fR(5)
diff --git a/usr/src/man/man1m/newaliases.1m b/usr/src/man/man1m/newaliases.1m
deleted file mode 100644
index dc0838ac7b..0000000000
--- a/usr/src/man/man1m/newaliases.1m
+++ /dev/null
@@ -1,203 +0,0 @@
-'\" te
-.\" Copyright (c) 2001 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH NEWALIASES 1M "Sep 14, 2001"
-.SH NAME
-newaliases \- rebuild the data base for the mail aliases file
-.SH SYNOPSIS
-.LP
-.nf
-\fBnewaliases\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBnewaliases\fR rebuilds the random access data base for the mail aliases file
-\fB/etc/mail/aliases\fR.
-.sp
-.LP
-\fBnewaliases\fR accepts all the flags that \fBsendmail\fR(1M) accepts.
-However, most of these flags have no effect, except for the \fB-C\fR option and
-three of the \fBProcessing\fR \fBOptions\fR that can be set from a
-configuration file with the \fB-o\fR option:
-.sp
-.ne 2
-.na
-\fB\fB-C\fR\fI /path/to/alt/config/file\fR\fR
-.ad
-.sp .6
-.RS 4n
-Use alternate configuration file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-oA\fR\fIfile\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify possible alias files.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-oL\fR\fIn\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set the default log level to \fIn\fR. Defaults to \fB9\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-on\fR\fR
-.ad
-.sp .6
-.RS 4n
-Validate the \fBRHS\fR of aliases when rebuilding the \fBaliases\fR(4)
-database.
-.RE
-
-.sp
-.LP
-\fBnewaliases\fR runs in verbose mode (\fB-v\fR option) automatically.
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRRunning the \fBnewaliases\fR Command
-.sp
-.LP
-The following command runs \fBnewaliases\fR on an alias file different from the
-\fB/etc/mail/aliases\fR default in \fBsendmail\fR(1M):
-
-.sp
-.in +2
-.nf
- example% \fBnewaliases \fR\fB-oA\fR\fB\fI/path/to/alternate/alias/file\fR\fR
-.fi
-.in -2
-.sp
-
-.SH EXIT STATUS
-.sp
-.LP
-\fBnewaliases\fR returns an exit status describing what it did. The codes are
-defined in \fB/usr/include/sysexits.h\fR.
-.sp
-.ne 2
-.na
-\fB\fBEX_OK\fR\fR
-.ad
-.RS 18n
-Successful completion on all addresses.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEX_NOUSER\fR\fR
-.ad
-.RS 18n
-User name not recognized.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEX_UNAVAILABLE\fR\fR
-.ad
-.RS 18n
-Catchall. Necessary resources were not available.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEX_SYNTAX\fR\fR
-.ad
-.RS 18n
-Syntax error in address.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEX_SOFTWARE\fR\fR
-.ad
-.RS 18n
-Internal software error, including bad arguments.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEX_OSERR\fR\fR
-.ad
-.RS 18n
-Temporary operating system error, such as "cannot fork".
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEX_NOHOST\fR\fR
-.ad
-.RS 18n
-Host name not recognized.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEX_TEMPFAIL\fR\fR
-.ad
-.RS 18n
-Message could not be sent immediately, but was queued.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/aliases\fR\fR
-.ad
-.RS 25n
-Symbolic link to \fB/etc/mail/aliases\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/mail/aliases.pag\fR\fR
-.ad
-.RS 25n
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/mail/aliases.dir\fR\fR
-.ad
-.RS 25n
-\fBndbm\fR files maintained by \fBnewaliases\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/mail/aliases.db\fR\fR
-.ad
-.RS 25n
-Berkeley DataBase file maintained by newaliases
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBsendmail\fR(1M), \fBaliases\fR(4), \fBattributes\fR(5)
diff --git a/usr/src/man/man1m/newfs.1m b/usr/src/man/man1m/newfs.1m
deleted file mode 100644
index a3d4cf4c24..0000000000
--- a/usr/src/man/man1m/newfs.1m
+++ /dev/null
@@ -1,507 +0,0 @@
-'\" te
-.\" Copyright (c) 1983 Regents of the University of California. All rights reserved. The Berkeley software License Agreement specifies the terms and conditions for redistribution. Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved
-.TH NEWFS 1M "Mar 1, 2007"
-.SH NAME
-newfs \- construct a UFS file system
-.SH SYNOPSIS
-.LP
-.nf
-\fBnewfs\fR [\fB-NSBTv\fR] [\fImkfs-options\fR] \fIraw-device\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBnewfs\fR is a "friendly" front-end to the \fBmkfs\fR(1M) program for making
-\fBUFS\fR file systems on disk partitions. \fBnewfs\fR calculates the
-appropriate parameters to use and calls \fBmkfs\fR.
-.sp
-.LP
-If run interactively (that is, standard input is a tty), \fBnewfs\fR prompts
-for confirmation before making the file system.
-.sp
-.LP
-If the \fB-N\fR option is not specified and the inodes of the device are not
-randomized, \fBnewfs\fR calls \fBfsirand\fR(1M).
-.sp
-.LP
-You must be super-user or have appropriate write privileges to use this
-command, except when creating a \fBUFS\fR file system on a \fIdiskette\fR. See
-\fBEXAMPLES\fR.
-.SS "Creating a Multiterabyte UFS File System"
-.sp
-.LP
-Keep the following limitations in mind when creating a multiterabyte UFS file
-system:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fInbpi\fR is set to 1 Mbyte unless you specifically set it higher. You cannot
-set \fInbpi\fR lower than 1 Mbyte on a multiterabyte UFS file system.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fIfragsize\fR is set equal to \fIbsize\fR.
-.RE
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-N\fR\fR
-.ad
-.sp .6
-.RS 4n
-Print out the file system parameters that would be used to create the file
-system without actually creating the file system. \fBfsirand\fR(1M) is not
-called here.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-S\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sends to stdout a human-readable version of the superblock that would be used
-to create a filesystem with the specified configuration parameters.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-B\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sends to stdout a binary (machine-readable) version of the superblock that
-would be used to create a filesystem with the specified configuration
-parameters.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-T\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set the parameters of the file system to allow eventual growth to over a
-terabyte in total file system size. This option sets \fIfragsize\fR to be the
-same as \fIbsize\fR, and sets \fInbpi\fR to 1 Mbyte, unless the \fB-i\fR option
-is used to make it even larger. If you use the \fB-f\fR or \fB-i\fR options to
-specify a \fIfragsize\fR or \fInbpi\fR that is incompatible with this option,
-the user-supplied value of \fIfragsize\fR or \fInbpi\fR is ignored.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.sp .6
-.RS 4n
-Verbose. \fBnewfs\fR prints out its actions, including the parameters passed to
-\fBmkfs\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fImkfs-options\fR\fR
-.ad
-.sp .6
-.RS 4n
-Options that override the default parameters are:
-.sp
-.ne 2
-.na
-\fB\fB-a\fR \fIapc\fR\fR
-.ad
-.sp .6
-.RS 4n
-The number of alternate sectors per cylinder to reserve for bad block
-replacement for SCSI devices only. The default is \fB0\fR.
-.sp
-This option is not applicable for disks with EFI labels and is ignored.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-b\fR \fIbsize\fR\fR
-.ad
-.sp .6
-.RS 4n
-The logical block size of the file system in bytes, either 4096 or 8192. The
-default is \fB8192\fR. The sun4u architecture does not support the \fB4096\fR
-block size.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-c\fR \fIcgsize\fR\fR
-.ad
-.sp .6
-.RS 4n
-The number of cylinders per cylinder group, ranging from \fB16\fR to \fB256\fR.
-The default is calculated by dividing the number of sectors in the file system
-by the number of sectors in a gigabyte. Then, the result is multiplied by
-\fB32\fR. The default value is always between \fB16\fR and \fB256\fR.
-.sp
-\fBmkfs\fR can override this value. See \fBmkfs_ufs\fR(1M) for details.
-.sp
-This option is not applicable for disks with EFI labels and is ignored.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-C\fR \fImaxcontig\fR\fR
-.ad
-.sp .6
-.RS 4n
-The maximum number of logical blocks, belonging to one file, that are allocated
-contiguously. The default is calculated as follows:
-.sp
-.in +2
-.nf
-\fBmaxcontig =\fR \fIdisk drive maximum transfer size / disk block size\fR
-.fi
-.in -2
-.sp
-
-If the disk drive's maximum transfer size cannot be determined, the default
-value for \fBmaxcontig\fR is calculated from kernel parameters as follows:
-.sp
-If \fBmaxphys\fR is less than \fBufs_maxmaxphys\fR, which is typically 1 Mbyte,
-then \fBmaxcontig\fR is set to \fBmaxphys\fR. Otherwise, \fBmaxcontig\fR is set
-to \fBufs_maxmaxphys\fR.
-.sp
-You can set \fBmaxcontig\fR to any positive integer value.
-.sp
-The actual value will be the lesser of what has been specified and what the
-hardware supports.
-.sp
-You can subsequently change this parameter by using \fBtunefs\fR(1M).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-d\fR \fIgap\fR\fR
-.ad
-.sp .6
-.RS 4n
-Rotational delay. This option is obsolete in the Solaris 10 release. The value
-is always set to \fB0\fR, regardless of the input value.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR \fIfragsize\fR\fR
-.ad
-.sp .6
-.RS 4n
-The smallest amount of disk space in bytes that can be allocated to a file.
-\fBfragsize\fR must be a power of 2 divisor of \fBbsize\fR, where:
-.sp
-\fBbsize\fR / \fBfragsize\fR is 1, 2, 4, or 8.
-.sp
-This means that if the logical block size is \fB4096\fR, legal values for
-\fBfragsize\fR are \fB512\fR, \fB1024\fR, \fB2048\fR, and \fB4096\fR. When the
-logical block size is \fB8192\fR, legal values are \fB1024\fR, \fB2048\fR,
-\fB4096\fR, and \fB8192\fR. The default value is \fB1024\fR.
-.sp
-For file systems greater than 1 terabyte or for file systems created with the
-\fB-T\fR option, \fBfragsize\fR is forced to match block size (\fBbsize\fR).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-i\fR \fInbpi\fR\fR
-.ad
-.sp .6
-.RS 4n
-The number of bytes per inode, which specifies the density of inodes in the
-file system. The number is divided into the total size of the file system to
-determine the number of inodes to create.
-.sp
-This value should reflect the expected average size of files in the file
-system. If fewer inodes are desired, a larger number should be used. To create
-more inodes, a smaller number should be given. The default for \fInbpi\fR is as
-follows:
-.sp
-.in +2
-.nf
-Disk size Density
-
-Less than 1GB 2048
-Less than 2GB 4096
-Less than 3GB 6144
-3GB to 1 Tbyte 8192
-Greater than 1 Tbyte
- or created with -T 1048576
-.fi
-.in -2
-.sp
-
-The number of inodes can increase if the file system is expanded with the
-\fBgrowfs\fR command.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-m\fR \fIfree\fR\fR
-.ad
-.sp .6
-.RS 4n
-The minimum percentage of free space to maintain in the file system, between 0%
-and 99%, inclusively. This space is off-limits to users. Once the file system
-is filled to this threshold, only the super-user can continue writing to the
-file system.
-.sp
-The default is ((64 Mbytes/partition size) * 100), rounded down to the nearest
-integer and limited between 1% and 10%, inclusively.
-.sp
-This parameter can be subsequently changed using the \fBtunefs\fR(1M) command.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR \fInrpos\fR\fR
-.ad
-.sp .6
-.RS 4n
-The number of different rotational positions in which to divide a cylinder
-group. The default is \fB8\fR.
-.sp
-This option is not applicable for disks with EFI labels and is ignored.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-o\fR \fIspace\fR\||\|\fItime\fR\fR
-.ad
-.sp .6
-.RS 4n
-The file system can either be instructed to try to minimize the \fBtime\fR
-spent allocating blocks, or to try to minimize the \fBspace\fR fragmentation on
-the disk. The default is \fItime\fR.
-.sp
-This parameter can subsequently be changed with the \fBtunefs\fR(1M) command.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-r\fR \fIrpm\fR\fR
-.ad
-.sp .6
-.RS 4n
-The rotational speed of the disk in revolutions per minute. The default is
-driver- or device-specific.
-.sp
-Note that you specify \fIrpm\fR for \fBnewfs\fR and \fIrps\fR for \fBmkfs\fR.
-.sp
-This option is not applicable for disks with EFI labels and is ignored.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR \fIsize\fR\fR
-.ad
-.sp .6
-.RS 4n
-The size of the file system in sectors. The default is to use the entire
-partition.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-t\fR \fIntrack\fR\fR
-.ad
-.sp .6
-.RS 4n
-The number of tracks per cylinder on the disk. The default is taken from the
-disk label.
-.sp
-This option is not applicable for disks with EFI labels and is ignored.
-.RE
-
-.RE
-
-.SH OPERANDS
-.sp
-.LP
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fB\fIraw-device\fR\fR
-.ad
-.sp .6
-.RS 4n
-The name of a raw special device residing in the \fB/dev\fR directory (for
-example, \fB/dev/rdsk/c0t0d0s6\fR) on which to create the file system.
-.RE
-
-.SH USAGE
-.sp
-.LP
-See \fBlargefile\fR(5) for the description of the behavior of \fBnewfs\fR when
-encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRDisplaying the Parameters for the Raw Special Device
-.sp
-.LP
-The following example verbosely displays the parameters for the raw special
-device, \fBc0t0d0s6\fR. It does not actually create a new file system:
-
-.sp
-.in +2
-.nf
-example# newfs \fB-Nv\fR /dev/rdsk/c0t0d0s6
-mkfs \fB-F\fR ufs \fB-o\fR N /dev/rdsk/c0t0d0s6 1112940 54 15 8192 1024 16 10 60
-2048 t 0 \(mi1 8 /dev/rdsk/c0t0d0s6: 1112940 sectors in
-1374 cylinders of 15 tracks, 54 sectors 569.8MB in 86 cyl
-groups (16 c/g, 6.64MB/g, 3072 i/g) super-block backups
-(for fsck \fB-b\fR #) at:
-32, 13056, 26080, 39104, 52128, 65152, 78176, 91200, 104224, .\|.\|.
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRCreating a \fBUFS\fR File System
-.sp
-.LP
-The following example creates a \fBUFS\fR file system on a diskette that is
-managed by a volume manager that makes use of the mount point \fB/vol\fR.
-
-.sp
-.in +2
-.nf
-example% newfs /vol/dev/aliases/floppy0
-newfs: construct a new file system /vol/dev/aliases/floppy0: (y/n)? y
-/vol/dev/aliases/floppy0: 2880 sectors in 80 cylinders of 2 tracks,
-18 sectors 1.4MB in 5 cyl groups (16 c/g, 0.28MB/g, 128 i/g)
-super-block backups (for fsck \fB-F\fR ufs \fB-o\fR b=#) at:
-32, 640, 1184, 1792, 2336, .\|.\|.
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRCreating a \fBUFS\fR File System That Will Eventually Be Grown
-to a Multiterabyte UFS File System
-.sp
-.LP
-The following example creates a \fBUFS\fR file system that will eventually be
-grown to a multiterabyte UFS file system.
-
-.sp
-.LP
-This command creates a 800-Gbyte file system on the volume,
-\fB/dev/md/rdsk/d99\fR.
-
-.sp
-.in +2
-.nf
-# newfs -T /dev/md/rdsk/d99
-newfs: construct a new file system /dev/md/rdsk/d99: (y/n)? y
- /dev/md/rdsk/d99: 1677754368 sectors in 45512 cylinders of
- 144 tracks, 256 sectors
- 819216.0MB in 1821 cyl groups (25 c/g, 450.00MB/g, 448 i/g) .\|.\|.
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Then, if you increase the volume size for this file system, you can use the
-\fBgrowfs\fR command to expand the file system. The file system is grown to 1.2
-terabytes in this example:
-
-.sp
-.in +2
-.nf
-# growfs -v /dev/md/rdsk/d99
-/usr/lib/fs/ufs/mkfs -G /dev/md/rdsk/d99 2516631552 /dev/md/rdsk/d99:
- 2516631552 sectors in 68268 cylinders of 144 tracks, 256 sectors
- 1228824.0MB in 2731 cyl groups (25 c/g, 450.00MB/g, 448 i/g).\|.\|.
-.fi
-.in -2
-.sp
-
-.SH EXIT STATUS
-.sp
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.sp .6
-.RS 4n
-The operation was successful.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB1\fR, \fB10\fR\fR
-.ad
-.sp .6
-.RS 4n
-Usage error or internal error. A message is output to \fBSTDERR\fR explaining
-the error.
-.RE
-
-.sp
-.LP
-Other exit values may be returned by \fBmkfs\fR(1M), which is called by
-\fBnewfs\fR.
-.SH SEE ALSO
-.sp
-.LP
-\fBfsck\fR(1M), \fBfsck_ufs\fR(1M), \fBfsirand\fR(1M), \fBmkfs\fR(1M),
-\fBmkfs_ufs\fR(1M), \fBtunefs\fR(1M), \fBattributes\fR(5), \fBlargefile\fR(5),
-\fBufs\fR(7FS)
-.SH DIAGNOSTICS
-.sp
-.ne 2
-.na
-\fB\fBnewfs: No such file or directory\fR\fR
-.ad
-.sp .6
-.RS 4n
-The device specified does not exist, or a disk partition was not specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIspecial\fR\fB: cannot open\fR\fR
-.ad
-.sp .6
-.RS 4n
-You must write access to the device to use this command.
-.RE
-
diff --git a/usr/src/man/man1m/newkey.1m b/usr/src/man/man1m/newkey.1m
deleted file mode 100644
index ce5db5c707..0000000000
--- a/usr/src/man/man1m/newkey.1m
+++ /dev/null
@@ -1,93 +0,0 @@
-'\" te
-.\" Copyright (C) 2005, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH NEWKEY 1M "Feb 25, 2017"
-.SH NAME
-newkey \- create a new Diffie-Hellman key pair in the publickey database
-.SH SYNOPSIS
-.LP
-.nf
-\fBnewkey\fR \fB-h\fR \fIhostname\fR [\fB-s\fR nis | files | ldap]
-.fi
-
-.LP
-.nf
-\fBnewkey\fR \fB-u\fR \fIusername\fR [\fB-s\fR nis | files | ldap]
-.fi
-
-.SH DESCRIPTION
-.LP
-\fBnewkey\fR establishes new public keys for users and machines on the network.
-These keys are needed when using secure \fBRPC\fR or secure \fBNFS\fR service.
-.sp
-.LP
-\fBnewkey\fR prompts for a password for the given \fIusername\fR or
-\fBhostname\fR and then creates a new public/secret Diffie-Hellman 192 bit key
-pair for the user or host. The secret key is encrypted with the given password.
-The key pair can be stored in the \fB/etc/publickey\fR file or the NIS
-\fBpublickey\fR map.
-.sp
-.LP
-\fBnewkey\fR consults the \fBpublickey\fR entry in the name service switch
-configuration file (see \fBnsswitch.conf\fR(4)) to determine which naming
-service is used to store the secure \fBRPC\fR keys. If the \fBpublickey\fR
-entry specifies a unique name service, \fBnewkey\fR will add the key in the
-specified name service. However, if there are multiple name services listed,
-\fBnewkey\fR cannot decide which source to update and will display an error
-message. The user is required to specify the source explicitly with the
-\fB-s\fR option.
-.sp
-.LP
-In the case of NIS, \fBnewkey\fR should be run by the superuser on the master
-NIS server for that domain.
-.sp
-.LP
-In the case of LDAP, \fBnewkey\fR should be run by the superuser on a machine
-that also recognizes the directory manager's bind distinguished name (DN) and
-password to perform an LDAP update for the host.
-.SH OPTIONS
-.ne 2
-.na
-\fB\fB-h\fR \fIhostname\fR\fR
-.ad
-.RS 15n
-Create a new public/secret key pair for the privileged user at the given
-\fBhostname\fR. Prompts for a password for the given \fBhostname\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-u\fR \fIusername\fR\fR
-.ad
-.RS 15n
-Create a new public/secret key pair for the given \fIusername\fR. Prompts for a
-password for the given \fIusername\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR \fBnis\fR\fR
-.ad
-.br
-.na
-\fB\fB-s\fR \fBfiles\fR\fR
-.ad
-.br
-.na
-\fB\fB-s\fR \fBldap\fR\fR
-.ad
-.RS 15n
-Update the database in the specified source:
-\fBnis\fR (for NIS), \fBfiles\fR, or \fBldap\fR (LDAP). Other sources may be
-available in the future.
-.RE
-
-.SH SEE ALSO
-.LP
-\fBchkey\fR(1), \fBkeylogin\fR(1),
-\fBnsswitch.conf\fR(4), \fBpublickey\fR(4), \fBattributes\fR(5)
diff --git a/usr/src/man/man1m/nfs4cbd.1m b/usr/src/man/man1m/nfs4cbd.1m
deleted file mode 100644
index 4f1716405b..0000000000
--- a/usr/src/man/man1m/nfs4cbd.1m
+++ /dev/null
@@ -1,55 +0,0 @@
-'\" te
-.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH NFS4CBD 1M "Apr 11, 2005"
-.SH NAME
-nfs4cbd \- NFS Version 4 callback daemon
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/nfs/nfs4cbd\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBnfs4cbd\fR daemon manages communication endpoints for the NFS Version 4
-protocol callback program. \fBnfs4cbd\fR runs on the NFS Version 4 client and
-creates a listener port for each transport over which callbacks can be sent.
-.sp
-.LP
-The \fBnfs4cbd\fR daemon is provided for the exclusive use of the NFS version 4
-client.
-.SH SEE ALSO
-.sp
-.LP
-\fBsvcs\fR(1), \fBmount_nfs\fR(1M), \fBsvcadm\fR(1M), \fBattributes\fR(5),
-\fBsmf\fR(5)
-.SH NOTES
-.sp
-.LP
-The \fBnfs4cbd\fR service is managed by the service management facility,
-\fBsmf\fR(5), under the service identifier:
-.sp
-.in +2
-.nf
-svc:/network/nfs/cbd
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Administrative actions on this service, such as enabling, disabling, or
-requesting restart, can be performed using \fBsvcadm\fR(1M). The service's
-status can be queried using the \fBsvcs\fR(1) command.
-.sp
-.LP
-If it is disabled, it will be enabled by \fBmount_nfs\fR(1M) and
-\fBautomountd\fR(1M) on the first NFSv4 mount, unless its
-\fBapplication/auto_enable\fR property is set to \fBfalse\fR.
-.sp
-.LP
-This daemon might not exist in a future release of Solaris.
diff --git a/usr/src/man/man1m/nfsd.1m b/usr/src/man/man1m/nfsd.1m
deleted file mode 100644
index 82b3282718..0000000000
--- a/usr/src/man/man1m/nfsd.1m
+++ /dev/null
@@ -1,235 +0,0 @@
-.\"
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.\"
-.\"
-.\" Copyright 1989 AT&T
-.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 2016 Nexenta Systems, Inc.
-.\" Copyright 2020 Joyent, Inc.
-.\"
-.Dd February 4, 2020
-.Dt NFSD 1M
-.Os
-.Sh NAME
-.Nm nfsd
-.Nd NFS daemon
-.Sh SYNOPSIS
-.Nm /usr/lib/nfs/nfsd
-.Op Fl a
-.Op Fl c Ar max_conn
-.Op Fl l Ar listen_backlog
-.Op Fl p Ar protocol
-.Op Fl t Ar device
-.Op Ar nservers
-.Sh DESCRIPTION
-.Nm
-is the daemon that handles client file system requests.
-Only users with
-.Brq Sy PRIV_SYS_NFS
-and sufficient privileges to write to
-.Pa /var/run
-can run this daemon.
-.Pp
-The
-.Nm
-daemon is automatically invoked using
-.Xr share 1M
-with the
-.Fl a
-option.
-.Pp
-By default,
-.Nm
-starts over the TCP and UDP transports for versions 2 and 3.
-By default, it starts over the TCP for version 4.
-You can change this with the
-.Fl p
-option.
-.Pp
-A previously invoked
-.Nm
-daemon started with or without options must be stopped before invoking another
-.Nm
-command.
-.Pp
-See
-.Xr nfs 4
-for available configuration properties for
-.Nm .
-.Ss Options
-The following options are supported:
-.Bl -tag -width Ds
-.It Fl a
-Start a NFS daemon over all available connectionless and connection-oriented
-transports, including UDP and TCP.
-Equivalent of setting the
-.Sy protocol
-property to
-.Sy all .
-.It Fl c Ar max_conn
-Set the maximum number of connections allowed to the NFS server over
-connection-oriented transports.
-By default, the number of connections is unlimited.
-Equivalent of the
-.Sy max_connections
-property.
-.It Fl l
-Set connection queue length for the NFS server over a connection-oriented
-transport.
-The default value is 32 entries.
-Equivalent of the
-.Sy listen_backlog
-property.
-.It Fl p Ar protocol
-Start a NFS daemon over the specified protocol.
-Equivalent of the
-.Sy protocol
-property.
-.It Fl t Ar device
-Start a NFS daemon for the transport specified by the given device.
-Equivalent of the
-.Sy device
-property.
-.El
-.Ss Operands
-The following operands are supported:
-.Bl -tag -width Ds
-.It Ar nservers
-This sets the maximum number of concurrent NFS requests that the server can
-handle.
-This concurrency is achieved by up to
-.Ar nservers
-threads created as needed in the kernel.
-.Ar nservers
-should be based on the load expected on this server.
-16 is the usual number of
-.Ar nservers .
-If
-.Ar nservers
-is not specified, the maximum number of concurrent NFS requests will default to
-1.
-Equivalent of the
-.Sy servers
-property.
-.El
-.Ss Usage
-If the
-.Sy nfs_portmon
-variable is set to non-zero value in
-.Pa /etc/system ,
-then clients are required to use privileged ports
-.Po ports <
-.Dv IPPORT_RESERVED
-.Pc
-to get NFS services.
-This variable is equal to zero by default.
-This variable has been moved from the
-.Qq nfs
-module to the
-.Qq nfssrv
-module.
-To set the variable, edit the
-.Pa /etc/system
-file and add this entry:
-.Bd -literal -offset indent
-set nfssrv:nfs_portmon = 1
-.Ed
-.Sh FILES
-.Bl -tag -width Ds
-.It Pa \&.nfsXXX
-Client machine pointer to an open-but-unlinked file.
-.It Pa /etc/system
-System configuration information file.
-.It Xo
-.Pa /var/nfs/v4_state
-.br
-.Pa /var/nfs/v4_oldstate
-.Xc
-Directories used by the server to manage client state information.
-These directories should not be removed.
-.El
-.Sh EXIT STATUS
-.Bl -tag -width Ds
-.It Sy 0
-Daemon started successfully.
-.It Sy 1
-Daemon failed to start.
-.El
-.Sh SEE ALSO
-.Xr svcs 1 ,
-.Xr mountd 1M ,
-.Xr share 1M ,
-.Xr sharectl 1M ,
-.Xr sharemgr 1M ,
-.Xr svcadm 1M ,
-.Xr nfs 4 ,
-.Xr sharetab 4 ,
-.Xr system 4 ,
-.Xr attributes 5 ,
-.Xr smf 5 ,
-.Xr zones 5
-.Sh NOTES
-Manually starting and restarting
-.Nm
-is not recommended.
-If it is necessary to do so, use
-.Nm svcadm
-to enable or disable the nfs service
-.Pq svc:/network/nfs/server .
-If it is disabled, it will be enabled by
-.Xr share_nfs 1M ,
-unless its
-.Sy application Ns / Ns Sy auto_enable
-property is set to
-.Sy false .
-See
-.Xr smf 5
-and
-.Xr svcadm 1M
-for more information.
-.Pp
-The
-.Nm
-service is managed by the service management facility,
-.Xr smf 5 ,
-under the service identifier:
-.Bd -literal -offset indent
-svc:/network/nfs/server
-.Ed
-.Pp
-Administrative actions on this service, such as enabling, disabling, or
-requesting restart, can be performed using
-.Xr svcadm 1M .
-The service's status can be queried using the
-.Xr svcs 1
-command.
-.Pp
-If
-.Nm
-is killed with
-.Sy SIGTERM ,
-it will not be restarted by the service management facility.
-Instead,
-.Nm
-can be restarted by other signals, such as
-.Sy SIGINT .
-.Pp
-NFS service, which includes
-.Nm ,
-can run inside a non-global zone.
-See the discussion under ZONES in
-.Xr nfs 4
-for more information.
diff --git a/usr/src/man/man1m/nfslogd.1m b/usr/src/man/man1m/nfslogd.1m
deleted file mode 100644
index e5346cb861..0000000000
--- a/usr/src/man/man1m/nfslogd.1m
+++ /dev/null
@@ -1,251 +0,0 @@
-'\" te
-.\" Copyright 2014 Nexenta Systems, Inc. All rights reserved.
-.\" Copyright (c) 1999, Sun Microsystems, Inc.
-.\" All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH NFSLOGD 1M "Nov 24, 2014"
-.SH NAME
-nfslogd \- nfs logging daemon
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/nfs/nfslogd\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBnfslogd\fR daemon provides operational logging to the Solaris \fBNFS\fR
-server. It is the \fBnfslogd\fR daemon's job to generate the activity log by
-analyzing the \fBRPC\fR operations processed by the \fBNFS\fR server. The log
-will only be generated for file systems exported with logging enabled. This is
-specified at file system export time by means of the \fBshare_nfs\fR(1M)
-command.
-.sp
-.LP
-NFS server logging is not supported on Solaris machines that are using NFS
-Version 4.
-.sp
-.LP
-Each record in the log file includes a time stamp, the \fBIP\fR address (or
-hostname if it can be resolved) of the client system, the file or directory
-name the operation was performed on, and the type of operation. In the basic
-format, the operation can either be an input (i) or output (o) operation. The
-basic format of the \fBNFS\fR server log is compatible with the log format
-generated by the Washington University \fBFTPd\fR daemon. The log format can be
-extended to include directory modification operations, such as \fBmkdir\fR,
-\fBrmdir\fR, and \fBremove\fR. The extended format is not compatible with the
-Washington University \fBFTPd\fR daemon format. See \fBnfslog.conf\fR(4) for
-details.
-.sp
-.LP
-The \fBNFS\fR server logging mechanism is divided in two phases. The first
-phase is performed by the \fBNFS\fR kernel module, which records raw \fBRPC\fR
-requests and their results in work buffers backed by permanent storage. The
-location of the work buffers is specified in the /\fBetc/nfs/nfslog.conf\fR
-file. Refer to \fBnfslog.conf\fR(4) for more information. The second phase
-involves the \fBnfslogd\fR user-level daemon, which periodically reads the work
-buffers, interprets the raw \fBRPC\fR information, groups related \fBRPC\fR
-operations into single transaction records, and generates the output log. The
-\fBnfslogd\fR daemon then sleeps waiting for more information to be logged to
-the work buffers. The amount of time that the daemon sleeps can be configured
-by modifying the \fBIDLE_TIME\fR parameter in \fB/etc/default/nfslogd\fR. The
-work buffers are intended for internal consumption of the \fBnfslogd\fR daemon.
-.sp
-.LP
-\fBNFS\fR operations use file handles as arguments instead of path names. For
-this reason the \fBnfslogd\fR daemon needs to maintain a database of file
-handle to path mappings in order to log the path name associated with an
-operation instead of the corresponding file handle. A file handle entry is
-added to the database when a client performs a lookup or other \fBNFS\fR
-operation that returns a file handle to the client.
-.sp
-.LP
-Once an \fBNFS\fR client obtains a file handle from a server, it can hold on to
-it for an indefinite time, and later use it as an argument for an \fBNFS\fR
-operation on the file or directory. The \fBNFS\fR client can use the file
-handle even after the server reboots. Because the database needs to survive
-server reboots, it is backed by permanent storage. The location of the database
-is specified by the \fIfhtable\fR parameter in the \fB/etc/nfs/nfslog.conf\fR
-file. This database is intended for the internal use of the \fBnfslogd\fR
-daemon.
-.sp
-.LP
-In order to keep the size of the file handle mapping database manageable,
-\fBnfslogd\fR prunes the database periodically. It removes file handle entries
-that have not been accessed in more than a specified amount of time. The
-\fBPRUNE_TIMEOUT\fR configurable parameter in \fB/etc/default/nfslogd\fR
-specifies the interval length between successive runs of the pruning process.
-A file handle record will be removed if it has not been used since the last
-time the pruning process was executed. Pruning of the database can effectively
-be disabled by setting the \fBPRUNE_TIMEOUT\fR as high as \fBINT_MAX\fR.
-.sp
-.LP
-When pruning is enabled, there is always a risk that a client may have held on
-to a file handle longer than the \fBPRUNE_TIMEOUT\fR and perform an \fBNFS\fR
-operation on the file handle after the matching record in the mapping database
-had been removed. In such case, the pathname for the file handle will not be
-resolved, and the log will include the file handle instead of the pathname.
-.sp
-.LP
-There are various configurable parameters that affect the behavior of the
-\fBnfslogd\fR daemon. These parameters are found in \fB/etc/default/nfslogd\fR
-and are described below:
-.sp
-.ne 2
-.na
-\fB\fBUMASK\fR\fR
-.ad
-.RS 27n
-Sets the file mode for the log files, work buffer files and file handle mapping
-database.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBMIN_PROCESSING_SIZE\fR\fR
-.ad
-.RS 27n
-Specifies the minimum size, in bytes, that the buffer file must reach before
-processing the work information and writing to the log file. The value of
-\fBMIN_PROCESSING_SIZE\fR must be between 1 and \fBulimit\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBIDLE_TIME\fR\fR
-.ad
-.RS 27n
-Specifies the amount of time, in seconds, the daemon should sleep while waiting
-for more information to be placed in the buffer file. \fBIDLE_TIME\fR also
-determines how often the configuration file will be reread. The value of
-\fBIDLE_TIME\fR must be between 1 and \fBINT_MAX\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBMAX_LOGS_PRESERVE\fR\fR
-.ad
-.RS 27n
-The \fBnfslogd\fR periodically cycles its logs. \fBMAX_LOGS_PRESERVE\fR
-specifies the maximum number of log files to save. When \fBMAX_LOGS_PRESERVE\fR
-is reached, the oldest files will be overwritten as new log files are created.
-These files will be saved with a numbered extension, beginning with
-\fBfilename.0\fR. The oldest file will have the highest numbered extension up
-to the value configured for \fBMAX_LOGS_PRESERVE\fR. The value of
-\fBMAX_LOGS_PRESERVE\fR must be between 1 and \fBINT_MAX\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBCYCLE_FREQUENCY\fR\fR
-.ad
-.RS 27n
-Specifies how often, in hours, the log files are cycled. \fBCYCLE_FREQUENCY\fR
-is used to insure that the log files do not get too large. The value of
-\fBCYCLE_FREQUENCY\fR must be between 1 and \fBINT_MAX\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBMAPPING_UPDATE_INTERVAL\fR\fR
-.ad
-.RS 27n
-Specifies the time interval, in seconds, between updates of the records in the
-file handle to path mapping tables. Instead of updating the \fBatime\fR of a
-record each time that record is accessed, it is only updated if it has aged
-based on this parameter. The record access time is used by the pruning routine
-to determine whether the record should be removed from the database. The value
-of this parameter must be between 1 and \fBINT_MAX\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRUNE_TIMEOUT\fR\fR
-.ad
-.RS 27n
-Specifies when a database record times out, in hours. If the time that elapsed
-since the record was last accessed is greater than \fBPRUNE_TIMEOUT\fR then the
-record can be pruned from the database. The default value for
-\fBPRUNE_TIMEOUT\fR is 168 hours (7 days). The value of \fBPRUNE_TIMEOUT\fR
-must be between 1 and \fBINT_MAX\fR.
-.RE
-
-.SH EXIT STATUS
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 5n
-Daemon started successfully.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB1\fR\fR
-.ad
-.RS 5n
-Daemon failed to start.
-.RE
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/etc/nfs/nfslogtab\fR \fR
-.ad
-.RS 24n
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/nfs/nfslog.conf\fR\fR
-.ad
-.RS 24n
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/default/nfslogd\fR\fR
-.ad
-.RS 24n
-
-.RE
-
-.SH SEE ALSO
-.LP
-\fBshare_nfs\fR(1M), \fBnfslog.conf\fR(4), \fBattributes\fR(5)
-.sp
-.LP
-\fI\fR
-.SH NOTES
-.LP
-The \fBnfslogd\fR service is managed by the service management facility,
-\fBsmf\fR(5), under the service identifier:
-.sp
-.in +2
-.nf
-svc:/network/nfs/log
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Administrative actions on this service, such as enabling, disabling, or
-requesting restart, can be performed using \fBsvcadm\fR(1M). The service's
-status can be queried using the \fBsvcs\fR(1) command.
diff --git a/usr/src/man/man1m/nfsmapid.1m b/usr/src/man/man1m/nfsmapid.1m
deleted file mode 100644
index 1eaed5f0fc..0000000000
--- a/usr/src/man/man1m/nfsmapid.1m
+++ /dev/null
@@ -1,136 +0,0 @@
-.\"
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.\"
-.\"
-.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 2016 Nexenta Systems, Inc.
-.\"
-.Dd March 12, 2016
-.Dt NFSMAPID 1M
-.Os
-.Sh NAME
-.Nm nfsmapid
-.Nd NFS user and group id mapping daemon
-.Sh SYNOPSIS
-.Nm /usr/lib/nfs/nfsmapid
-.Sh DESCRIPTION
-The
-.Nm
-daemon maps to and from NFS version 4
-.Sy owner
-and
-.Sy owner_group
-identification attributes and local UID and GID numbers used by both the NFS
-version 4 client and server.
-.Pp
-.Nm
-uses the
-.Sy passwd
-and
-.Sy group
-entries in the
-.Pa /etc/nsswitch.conf
-file to direct how it performs the mappings.
-.Pp
-The
-.Nm
-daemon has no external, customer-accessible interfaces.
-You can, however, administratively configure
-.Nm
-in one of the following ways:
-.Bl -bullet
-.It
-Set the
-.Sy nfsmapid_domain
-property for the
-.Nm nfs
-protocol using
-.Xr sharectl 1M .
-.It
-Specify the
-.Sy _nfsv4idmapdomain
-DNS resource record.
-.El
-.Sh SEE ALSO
-.Xr svcs 1 ,
-.Xr automountd 1M ,
-.Xr groupdel 1M ,
-.Xr groupmod 1M ,
-.Xr mount_nfs 1M ,
-.Xr passmgmt 1M ,
-.Xr share_nfs 1M ,
-.Xr sharectl 1M ,
-.Xr svcadm 1M ,
-.Xr userdel 1M ,
-.Xr usermod 1M ,
-.Xr nfs 4 ,
-.Xr attributes 5 ,
-.Xr smf 5
-.Sh NOTES
-The
-.Nm
-service is managed by the service management facility,
-.Xr smf 5 ,
-under the service identifier:
-.Bd -literal -offset indent
-svc:/network/nfs/mapid
-.Ed
-.Pp
-Administrative actions on this service, such as enabling, disabling, or
-requesting restart, can be performed using
-.Xr svcadm 1M .
-The service's status can be queried using the
-.Xr svcs 1
-command.
-.Pp
-If it is disabled, it will be enabled by
-.Xr mount_nfs 1M ,
-.Xr share_nfs 1M ,
-and
-.Xr automountd 1M ,
-unless its
-.Sy application Ns / Ns Sy auto_enable
-property is set to
-.Sy false .
-.Pp
-.Nm
-caches a user's UID and GID.
-If a user subsequently changes a UID or GID, using one of the utilities listed
-below, the
-.Nm
-cache becomes stale.
-At this point, any NFS operation that gets or set attributes will result in the
-exchange of this stale information.
-To resolve this situation, restart
-.Nm ,
-as follows:
-.Bd -literal -offset indent
-# svcadm restart svc:/network/nfs/mapid:default
-.Ed
-.Pp
-The utilities that allow you to change UID and GID are:
-.Bl -bullet
-.It
-.Xr usermod 1M
-.It
-.Xr userdel 1M
-.It
-.Xr groupmod 1M
-.It
-.Xr groupdel 1M
-.It
-.Xr passmgmt 1M
-.El
diff --git a/usr/src/man/man1m/nfsstat.1m b/usr/src/man/man1m/nfsstat.1m
deleted file mode 100644
index c0dbc3ee0b..0000000000
--- a/usr/src/man/man1m/nfsstat.1m
+++ /dev/null
@@ -1,887 +0,0 @@
-'\" te
-.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
-.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH NFSSTAT 1M "Jun 16, 2009"
-.SH NAME
-nfsstat \- NFS statistics
-.SH SYNOPSIS
-.LP
-.nf
-\fBnfsstat\fR [\fB-cnrsza\fR] [\fB-T\fR u | d ] [\fB-v\fR \fIversion\fR] [\fIinterval\fR [\fIcount\fR]]
-.fi
-
-.LP
-.nf
-\fBnfsstat\fR \fB-m\fR [\fIpathname\fR]...
-.fi
-
-.SH DESCRIPTION
-.LP
-\fBnfsstat\fR displays statistical information about the \fBNFS\fR and
-\fBRPC\fR (Remote Procedure Call), interfaces to the kernel. It can also be
-used to reinitialize this information. If no options are given the default is
-as follows:
-.sp
-.LP
-\fBnfsstat\fR \fB-csnra\fR
-.sp
-.LP
-The default displays everything, but reinitializes nothing.
-.SH OPTIONS
-.ne 2
-.na
-\fB\fB-a\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display \fBNFS_ACL\fR information.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-c\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display client information. Only the client side \fBNFS\fR, \fBRPC\fR, and
-\fBNFS_ACL\fR information is printed. Can be combined with the \fB-n\fR,
-\fB-r\fR, and \fB-a\fR options to print client side \fBNFS\fR, \fBRPC\fR, and
-\fBNFS_ACL\fR information only.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-m\fR [\fIpathname...\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Display statistics for each \fBNFS\fR mounted file system. If \fIpathname\fR is
-not specified, displays statistics for all NFS mounted file systems. If
-\fIpathname\fR is specified, displays statistics for the NFS mounted file
-systems indicated by \fIpathname\fR.
-.sp
-This includes the server name and address, mount flags, current read and write
-sizes, the retransmission count, the attribute cache timeout values, failover
-information, and the timers used for dynamic retransmission. The dynamic
-retransmission timers are displayed only where dynamic retransmission is in
-use. By default, \fBNFS\fR mounts over the \fBTCP\fR protocols and \fBNFS\fR
-Version 3 mounts over either \fBTCP\fR or \fBUDP\fR do not use dynamic
-retransmission.
-.sp
-If you specify the \fB-m\fR option, this is the only option that \fBnfsstat\fR
-uses. If you specify other options with \fB-m\fR, you receive an error message
-alerting that the \fB-m\fR flag cannot be combined with other options.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display \fBNFS\fR information. \fBNFS\fR information for both the client and
-server side are printed. Can be combined with the \fB-c\fR and \fB-s\fR options
-to print client or server \fBNFS\fR information only.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-r\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display \fBRPC\fR information.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display server information.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-T\fR \fBu\fR | \fBd\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display a time stamp.
-.sp
-Specify \fBu\fR for a printed representation of the internal representation of
-time. See \fBtime\fR(2). Specify \fBd\fR for standard date format. See
-\fBdate\fR(1).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR \fIversion\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify which NFS version for which to print statistics. When followed by the
-optional \fIversion\fR argument, (\fB2\fR|\fB3\fR|\fB4\fR), specifies
-statistics for that version. By default, prints statistics for all versions.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-z\fR\fR
-.ad
-.sp .6
-.RS 4n
-Zero (reinitialize) statistics. This option is for use by the super user only,
-and can be combined with any of the above options to zero particular sets of
-statistics after printing them.
-.RE
-
-.SH OPERANDS
-.LP
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fB\fIcount\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display only count reports
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIinterval\fR\fR
-.ad
-.sp .6
-.RS 4n
-Report once each interval seconds.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIpathname\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify the pathname of a file in an NFS mounted file system for which
-statistics are to be displayed.
-.RE
-
-.SH DISPLAYS
-.LP
-The server \fBRPC\fR display includes the following fields:
-.sp
-.ne 2
-.na
-\fB\fBbadcalls\fR\fR
-.ad
-.sp .6
-.RS 4n
-The total number of calls rejected by the \fBRPC\fR layer (the sum of
-\fBbadlen\fR and \fBxdrcall\fR as defined below).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBbadlen\fR\fR
-.ad
-.sp .6
-.RS 4n
-The number of \fBRPC\fR calls with a length shorter than a minimum-sized
-\fBRPC\fR call.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcalls\fR\fR
-.ad
-.sp .6
-.RS 4n
-The total number of \fBRPC\fR calls received.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdupchecks\fR\fR
-.ad
-.sp .6
-.RS 4n
-The number of \fBRPC\fR calls that looked up in the duplicate request cache.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdupreqs\fR\fR
-.ad
-.sp .6
-.RS 4n
-The number of \fBRPC\fR calls that were found to be duplicates.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnullrecv\fR\fR
-.ad
-.sp .6
-.RS 4n
-The number of times an \fBRPC\fR call was not available when it was thought to
-be received.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBxdrcall\fR\fR
-.ad
-.sp .6
-.RS 4n
-The number of \fBRPC\fR calls whose header could not be \fBXDR\fR decoded.
-.RE
-
-.sp
-.LP
-The server \fBNFS\fR display shows the number of \fBNFS\fR calls received
-(\fBcalls\fR) and rejected (\fBbadcalls\fR), and the counts and percentages for
-the various calls that were made.
-.sp
-.LP
-The server \fBNFS_ACL\fR display shows the counts and percentages for the
-various calls that were made.
-.sp
-.LP
-The client \fBRPC\fR display includes the following fields:
-.sp
-.ne 2
-.na
-\fB\fBcalls\fR\fR
-.ad
-.sp .6
-.RS 4n
-The total number of \fBRPC\fR calls made.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBbadcalls\fR\fR
-.ad
-.sp .6
-.RS 4n
-The total number of calls rejected by the \fBRPC\fR layer.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBbadverfs\fR\fR
-.ad
-.sp .6
-.RS 4n
-The number of times the call failed due to a bad verifier in the response.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBbadxids\fR\fR
-.ad
-.sp .6
-.RS 4n
-The number of times a reply from a server was received which did not correspond
-to any outstanding call.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcantconn\fR\fR
-.ad
-.sp .6
-.RS 4n
-The number of times the call failed due to a failure to make a connection to
-the server.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcantsend\fR\fR
-.ad
-.sp .6
-.RS 4n
-The number of times a client was unable to send an \fBRPC\fR request over a
-connectionless transport when it tried to do so.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBinterrupts\fR\fR
-.ad
-.sp .6
-.RS 4n
-The number of times the call was interrupted by a signal before completing.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnewcreds\fR\fR
-.ad
-.sp .6
-.RS 4n
-The number of times authentication information had to be refreshed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnomem\fR\fR
-.ad
-.sp .6
-.RS 4n
-The number of times the call failed due to a failure to allocate memory.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBretrans\fR\fR
-.ad
-.sp .6
-.RS 4n
-The number of times a call had to be retransmitted due to a timeout while
-waiting for a reply from the server. Applicable only to \fBRPC\fR over
-connection-less transports.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBtimeouts\fR\fR
-.ad
-.sp .6
-.RS 4n
-The number of times a call timed out while waiting for a reply from the server.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBtimers\fR\fR
-.ad
-.sp .6
-.RS 4n
-The number of times the calculated time-out value was greater than or equal to
-the minimum specified time-out value for a call.
-.RE
-
-.sp
-.LP
-The client \fBNFS\fR display shows the number of calls sent and rejected, as
-well as the number of times a \fBCLIENT\fR handle was received (\fBclgets\fR),
-the number of times the \fBCLIENT\fR handle cache had no unused entries
-(\fBcltoomany\fR), as well as a count of the various calls and their respective
-percentages.
-.sp
-.LP
-The client \fBNFS_ACL\fR display shows the counts and percentages for the
-various calls that were made.
-.sp
-.LP
-The \fB-m\fR option includes information about mount flags set by mount
-options, mount flags internal to the system, and other mount information. See
-\fBmount_nfs\fR(1M).
-.sp
-.LP
-The following mount flags are set by mount options:
-.sp
-.ne 2
-.na
-\fB\fBgrpid\fR\fR
-.ad
-.sp .6
-.RS 4n
-System V group id inheritance.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBhard\fR\fR
-.ad
-.sp .6
-.RS 4n
-Hard mount.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBintr\fR\fR
-.ad
-.sp .6
-.RS 4n
-Interrupts allowed on hard mount.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBllock\fR\fR
-.ad
-.sp .6
-.RS 4n
-Local locking being used (no lock manager).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnoac\fR\fR
-.ad
-.sp .6
-.RS 4n
-Client is not caching attributes.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnointr\fR\fR
-.ad
-.sp .6
-.RS 4n
-No interrupts allowed on hard mount.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnocto\fR\fR
-.ad
-.sp .6
-.RS 4n
-No close-to-open consistency.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBretrans\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBNFS\fR retransmissions.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrpctimesync\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBRPC\fR time sync.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrsize\fR\fR
-.ad
-.sp .6
-.RS 4n
-Read buffer size in bytes.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsec\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBsec\fR has one of the following values:
-.sp
-.ne 2
-.na
-\fB\fBdh\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBdes\fR-style authentication (encrypted timestamps).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBkrb5\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBkerberos v5\fR-style authentication.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBkrb5i\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBkerberos v5\fR-style authentication with integrity.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBkrb5p\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBkerberos v5\fR-style authentication with privacy.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnone\fR\fR
-.ad
-.sp .6
-.RS 4n
-No authentication.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBshort\fR\fR
-.ad
-.sp .6
-.RS 4n
-Short hand UNIX-style authentication.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsys\fR\fR
-.ad
-.sp .6
-.RS 4n
-UNIX-style authentication (UID, GID).
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsoft\fR\fR
-.ad
-.sp .6
-.RS 4n
-Soft mount.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBtimeo\fR\fR
-.ad
-.sp .6
-.RS 4n
-Initial \fBNFS\fR timeout, in tenths of a second.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBwsize\fR\fR
-.ad
-.sp .6
-.RS 4n
-Write buffer size in bytes.
-.RE
-
-.sp
-.LP
-The following mount flags are internal to the system:
-.sp
-.ne 2
-.na
-\fB\fBacl\fR\fR
-.ad
-.sp .6
-.RS 4n
-Server supports \fBNFS_ACL\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdown\fR\fR
-.ad
-.sp .6
-.RS 4n
-Server is down.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdynamic\fR\fR
-.ad
-.sp .6
-.RS 4n
-Dynamic transfer size adjustment.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBlink\fR\fR
-.ad
-.sp .6
-.RS 4n
-Server supports links.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmirrormount\fR\fR
-.ad
-.sp .6
-.RS 4n
-Mounted automatically by means of the \fBmirrormount\fR mechanism.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBprinted\fR\fR
-.ad
-.sp .6
-.RS 4n
-"Not responding" message printed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBreaddir\fR\fR
-.ad
-.sp .6
-.RS 4n
-Use \fBreaddir\fR instead of \fBreaddirplus\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsymlink\fR\fR
-.ad
-.sp .6
-.RS 4n
-Server supports symbolic links.
-.RE
-
-.sp
-.LP
-The following flags relate to additional mount information:
-.sp
-.ne 2
-.na
-\fB\fBproto\fR\fR
-.ad
-.sp .6
-.RS 4n
-Protocol.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBvers\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBNFS\fR version.
-.RE
-
-.sp
-.LP
-The \fB-m\fR option also provides attribute cache timeout values. The following
-fields in \fB-m\fR output provide timeout values for attribute cache:
-.sp
-.ne 2
-.na
-\fB\fBacdirmax\fR\fR
-.ad
-.sp .6
-.RS 4n
-Maximum seconds to hold cached directory attributes.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBacdirmin\fR\fR
-.ad
-.sp .6
-.RS 4n
-Minimum seconds to hold cached directory attributes.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBacregmax\fR\fR
-.ad
-.sp .6
-.RS 4n
-Maximum seconds to hold cached file attributes.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBacregmin\fR\fR
-.ad
-.sp .6
-.RS 4n
-Minimum seconds to hold cached file attributes.
-.RE
-
-.sp
-.LP
-The following fields in \fB-m\fR output provide failover information:
-.sp
-.ne 2
-.na
-\fB\fBcurrserver\fR\fR
-.ad
-.sp .6
-.RS 4n
-Which server is currently providing \fBNFS\fR service. See the \fI\fR for
-additional details.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfailover\fR\fR
-.ad
-.sp .6
-.RS 4n
-How many times a new server has been selected.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnoresponse\fR\fR
-.ad
-.sp .6
-.RS 4n
-How many times servers have failed to respond.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBremap\fR\fR
-.ad
-.sp .6
-.RS 4n
-How many times files have been re-evaluated to the new server.
-.RE
-
-.sp
-.LP
-The fields in \fB-m\fR output shown below provide information on dynamic
-retransmissions. These items are displayed only where dynamic retransmission is
-in use.
-.sp
-.ne 2
-.na
-\fB\fBcur\fR\fR
-.ad
-.sp .6
-.RS 4n
-Current backed-off retransmission value, in milliseconds.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdev\fR\fR
-.ad
-.sp .6
-.RS 4n
-Estimated deviation, in milliseconds.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsrtt\fR\fR
-.ad
-.sp .6
-.RS 4n
-The value for the smoothed round-trip time, in milliseconds.
-.RE
-
-.SH EXIT STATUS
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.sp .6
-.RS 4n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB>0\fR\fR
-.ad
-.sp .6
-.RS 4n
-An error occurred.
-.RE
-
-.SH SEE ALSO
-.LP
-\fBmount_nfs\fR(1M), \fBattributes\fR(5)
-.sp
-.LP
-\fI\fR
-.sp
-.LP
-\fI\fR
diff --git a/usr/src/man/man1m/nlsadmin.1m b/usr/src/man/man1m/nlsadmin.1m
deleted file mode 100644
index 99d500d88e..0000000000
--- a/usr/src/man/man1m/nlsadmin.1m
+++ /dev/null
@@ -1,386 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 1997 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH NLSADMIN 1M "Apr 3, 1997"
-.SH NAME
-nlsadmin \- network listener service administration
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/nlsadmin\fR \fB-x\fR
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/nlsadmin\fR [\fIoptions\fR] \fInet_spec\fR
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/nlsadmin\fR [\fIoptions\fR] \fB-N\fR \fIport_monitor_tag\fR
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/nlsadmin\fR \fB-V\fR
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/nlsadmin\fR \fB-c\fR \fIcmd\fR | \fB-o\fR \fIstreamname\fR [\fB-p\fR \fImodules\fR]
- [\fB-A\fR \fIaddress\fR | \fB-D\fR] [\fB-R\fR \fIprognum\fR : \fIversnum\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBnlsadmin\fR is the administrative command for the network listener
-process(es) on a machine. Each network has at least one instance of the network
-listener process associated with it; each instance (and thus, each network) is
-configured separately. The listener process ``listens'' to the network for
-service requests, accepts requests when they arrive, and invokes servers in
-response to those service requests. The network listener process may be used
-with any network (more precisely, with any connection-oriented transport
-provider) that conforms to the transport provider specification.
-.sp
-.LP
-\fBnlsadmin\fR can establish a listener process for a given network, configure
-the specific attributes of that listener, and start and kill the listener
-process for that network. \fBnlsadmin\fR can also report on the listener
-processes on a machine, either individually (per network) or collectively.
-.sp
-.LP
-\fInet_spec\fR represents a particular listener process. Specifically,
-\fInet_spec\fR is the relative path name of the entry under \fB/dev\fR for a
-given network (that is, a transport provider). \fIaddress\fR is a transport
-address on which to listen and is interpreted using a syntax that allows for a
-variety of address formats. By default, \fIaddress\fR is interpreted as the
-symbolic ASCII representation of the transport address. An \fIaddress\fR
-preceded by \fB\ex\fR will let you enter an address in hexadecimal notation.
-Note that \fIaddress\fR must appear as a single word to the shell, thus it must
-be quoted if it contains any blanks.
-.sp
-.LP
-Changes to the list of services provided by the listener or the addresses of
-those services are put into effect immediately.
-.SH OPTIONS
-.sp
-.LP
-\fBnlsadmin\fR may be used with the following combinations of options and
-arguments:
-.sp
-.ne 2
-.na
-\fB\fB-x\fR\fR
-.ad
-.sp .6
-.RS 4n
-Report the status of all of the listener processes installed on this machine.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fInet_spec\fR\fR
-.ad
-.sp .6
-.RS 4n
-Print the status of the listener process for \fInet_spec\fR \fI\&.\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-q\fR \fInet_spec\fR\fR
-.ad
-.sp .6
-.RS 4n
-Query the status of the listener process for the specified network, and
-reflects the result of that query in its exit code. If a listener process is
-active, \fBnlsadmin\fR will exit with a status of \fB0\fR; if no process is
-active, the exit code will be \fB1\fR; the exit code will be greater than
-\fB1\fR in case of error.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR \fInet_spec\fR\fR
-.ad
-.sp .6
-.RS 4n
-Print a verbose report on the servers associated with \fInet_spec,\fR giving
-the service code, status, command, and comment for each. It also specifies the
-\fBuid\fR the server will run as and the list of modules to be pushed, if any,
-before the server is started.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-z\fR \fIservice_code net_spec\fR\fR
-.ad
-.sp .6
-.RS 4n
-Print a report on the server associated with \fInet_spec\fR that has service
-code \fIservice_code,\fR giving the same information as in the \fB-v\fR option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\fR\fB-q\fR\fB \fR\fB-z\fR \fIservice_code net_spec\fR\fR
-.ad
-.sp .6
-.RS 4n
-Query the status of the service with service code \fIservice_code\fR on network
-\fInet_spec,\fR and exits with a status of \fB0\fR if that service is enabled,
-\fB1\fR if that service is disabled, and greater than \fB1\fR in case of error.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\fR\fB-l\fR \fIaddress net_spec\fR\fR
-.ad
-.sp .6
-.RS 4n
-Change or set the transport address on which the listener listens (the general
-listener service). This address can be used by remote processes to access the
-servers available through this listener (see the \fB-a\fR option, below).
-.sp
-If \fIaddress\fR is just a dash (" \(mi "), \fBnlsadmin\fR reports the address
-currently configured, instead of changing it.
-.sp
-A change of address takes effect immediately.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-t\fR \fIaddress net_spec\fR\fR
-.ad
-.sp .6
-.RS 4n
-Change or set the address on which the listener listens for requests for
-terminal service but is otherwise similar to the \fB-l\fR option above. A
-terminal service address should not be defined unless the appropriate remote
-login software is available; if such software is available, it must be
-configured as service code 1 (see the \fB-a\fR option, below).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-i\fR \fInet_spec\fR\fR
-.ad
-.sp .6
-.RS 4n
-Initialize an instance of the listener for the network specified by
-\fInet_spec;\fR that is, create and initialize the files required by the
-listener as well as starting that instance of the listener. Note that a
-particular instance of the listener should be initialized only once. The
-listener must be initialized before assigning addresses or services.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-a\fR \fIservice_code\fR\fR
-.ad
-.sp .6
-.RS 4n
-[ \fB-p\fR \fImodules\fR ] [ \fB-w\fR \fIname\fR ] \fB-c\fR \fIcmd\fR \fB-y\fR
-\fIcomment net_spec\fR
-.sp
-Add a new service to the list of services available through the indicated
-listener. \fIservice_code\fR is the code for the service, \fIcmd\fR is the
-command to be invoked in response to that service code, comprised of the full
-path name of the server and its arguments, and \fIcomment\fR is a brief
-(free-form) description of the service for use in various reports. Note that
-\fIcmd\fR must appear as a single word to the shell; if arguments are required,
-the \fIcmd\fR and its arguments must be enclosed in quotation marks. The
-\fIcomment\fR must also appear as a single word to the shell. When a service is
-added, it is initially enabled (see the \fB-e\fR and \fB-d\fR options, below).
-.sp
-Service codes are alphanumeric strings, and are administered by AT&T. The
-numeric service codes 0 through 100 are reserved for internal use by the
-listener. Service code 0 is assigned to the nlps server, which is the service
-invoked on the general listening address. In particular, code 1 is assigned to
-the remote login service, which is the service automatically invoked for
-connections to the terminal login address.
-.sp
-If the \fB-p\fR option is specified, then \fImodules\fR will be interpreted as
-a list of \fBSTREAMS\fR modules for the listener to push before starting the
-service being added. The modules are pushed in the order they are specified.
-\fImodules\fR should be a comma-separated list of modules, with no white space
-included.
-.sp
-If the \fB-w\fR option is specified, then \fIname\fR is interpreted as the user
-name from \fB/etc/passwd\fR that the listener should look up. From the user
-name, the listener obtains the user ID, the group ID(s), and the home directory
-for use by the server. If \fB-w\fR is not specified, the default is to use the
-user name \fBlisten.\fR
-.sp
-A service must explicitly be added to the listener for each network on which
-that service is to be available. This operation will normally be performed only
-when the service is installed on a machine, or when populating the list of
-services for a new network.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\fR\fB-r\fR \fIservice_code net_spec\fR\fR
-.ad
-.sp .6
-.RS 4n
-Remove the entry for the \fIservice_code\fR from that listener's list of
-services. This is normally done only in conjunction with the de-installation of
-a service from a machine.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\fR\fB-e\fR \fIservice_code net_spec\fR\fR
-.ad
-.br
-.na
-\fB\fB\fR\fB-d\fR \fIservice_code net_spec\fR\fR
-.ad
-.sp .6
-.RS 4n
-Enable or disable (respectively) the service indicated by \fIservice_code\fR
-for the specified network. The service must previously have been added to the
-listener for that network (see the \fB-a\fR option, above). Disabling a service
-will cause subsequent service requests for that service to be denied, but the
-processes from any prior service requests that are still running will continue
-unaffected.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\fR\fB-s\fR \fInet_spec\fR\fR
-.ad
-.br
-.na
-\fB\fB\fR\fB-k\fR \fInet_spec\fR\fR
-.ad
-.sp .6
-.RS 4n
-Start and kill (respectively) the listener process for the indicated network.
-These operations are normally performed as part of the system startup and
-shutdown procedures. Before a listener can be started for a particular network,
-it must first have been initialized (see the \fB-i\fR option, above). When a
-listener is killed, processes that are still running as a result of prior
-service requests will continue unaffected.
-.RE
-
-.sp
-.LP
-Under the Service Access Facility, it is possible to have multiple instances
-of the listener on a single \fInet_spec\fR. In any of the above commands, the
-option \fB\fR\fB-N\fR \fIport_monitor_tag\fR may be used in place of the
-\fInet_spec\fR argument. This argument specifies the tag by which an instance
-of the listener is identified by the Service Access Facility. If the \fB-N\fR
-option is not specified (that is, the \fInet_spec\fR is specified in the
-invocation), then it will be assumed that the last component of the
-\fInet_spec\fR represents the tag of the listener for which the operation is
-destined. In other words, it is assumed that there is at least one listener on
-a designated \fInet_spec\fR, and that its tag is identical to the last
-component of the \fInet_spec\fR. This listener may be thought of as the
-primary, or default, listener for a particular \fInet_spec\fR.
-.sp
-.LP
-\fBnlsadmin\fR is also used in conjunction with the Service Access Facility
-commands. In that capacity, the following combinations of options can be used:
-.sp
-.ne 2
-.na
-\fB\fB-V\fR\fR
-.ad
-.sp .6
-.RS 4n
-Write the current version number of the listener's administrative file to the
-standard output. It is used as part of the \fBsacadm\fR command line when
-\fBsacadm\fR adds a port monitor to the system.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-c\fR \fIcmd\fR | \fB-o\fR \fIstreamname\fR [ \fB-p\fR \fImodules\fR ] [
-\fB-A\fR \fIaddress\fR | \fB-D\fR ] [ \fB-R\fR \fIprognum\fR : \fIversnum\fR
-]\fR
-.ad
-.sp .6
-.RS 4n
-Format the port monitor-specific information to be used as an argument to
-\fBpmadm\fR(1M)
-.sp
-The \fB-c\fR option specifies the full path name of the server and its
-arguments. \fIcmd\fR must appear as a single word to the shell, and its
-arguments must therefore be surrounded by quotes.
-.sp
-The \fB-o\fR option specifies the full path name of a \fBFIFO\fR or named
-stream through which a standing server is actually receiving the connection.
-.sp
-If the \fB-p\fR option is specified, then \fImodules\fR will be interpreted as
-a list of \fBSTREAMS\fR modules for the listener to push before starting the
-service being added. The modules are pushed in the order in which they are
-specified. \fImodules\fR must be a comma-separated list, with no white space
-included.
-.sp
-If the \fB-A\fR option is specified, then \fIaddress\fR will be interpreted as
-the server's private address. The listener will monitor this address on behalf
-of the service and will dispatch all calls arriving on this address directly to
-the designated service. This option may not be used in conjunction with the
-\fB-D\fR option.
-.sp
-If the \fB-D\fR option is specified, then the service is assigned a private
-address dynamically, that is, the listener will have the transport provider
-select the address each time the listener begins listening on behalf of this
-service. For RPC services, this option will be often be used in conjunction
-with the \fB-R\fR option to register the dynamically assigned address with the
-rpcbinder. This option may not be used in conjunction with the \fB-A\fR option.
-.sp
-When the \fB-R\fR option is specified, the service is an RPC service whose
-address, program number, and version number should be registered with the
-rpcbinder for this transport provider. This registration is performed each time
-the listener begins listening on behalf of the service. \fIprognum\fR and
-\fIversnum\fR are the program number and version number, respectively, of the
-RPC service.
-.RE
-
-.sp
-.LP
-\fBnlsadmin\fR may be invoked by any user to generate reports; all operations
-that affect a listener's status or configuration may only be run by a
-super-user.
-.sp
-.LP
-The options specific to the Service Access Facility may not be used together
-with any other options.
-.SH ERRORS
-.sp
-.LP
-If successful, \fBnlsadmin\fR exits with a status of 0. If \fBnlsadmin\fR
-fails for any reason, it exits with a status greater than or equal to 2. See
-\fB-q\fR option for a return status of 1.
-.SH SEE ALSO
-.sp
-.LP
-\fBlisten\fR(1M), \fBpmadm\fR(1M), \fBrpcbind\fR(1M), \fBsacadm\fR(1M),
-\fBattributes\fR(5)
-.sp
-.LP
-\fI\fR
-.SH NOTES
-.sp
-.LP
-Dynamically assigned addresses are not displayed in reports as statically
-assigned addresses are.
diff --git a/usr/src/man/man1m/nscd.1m b/usr/src/man/man1m/nscd.1m
deleted file mode 100644
index 335d5d7d34..0000000000
--- a/usr/src/man/man1m/nscd.1m
+++ /dev/null
@@ -1,173 +0,0 @@
-'\" te
-.\" Copyright (c) 2006 Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH NSCD 1M "Mar 6, 2017"
-.SH NAME
-nscd \- name service cache daemon
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/nscd\fR [\fB-f\fR \fIconfiguration-file\fR] [\fB-g\fR] [\fB-e\fR \fIcachename\fR, yes
- | no] [\fB-i\fR \fIcachename\fR]
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBnscd\fR daemon is a process that provides a cache for most name service
-requests. The default \fIconfiguration-file\fR \fB/etc/nscd.conf\fR determines
-the behavior of the cache daemon. See \fBnscd.conf\fR(4).
-.sp
-.LP
-\fBnscd\fR provides caching for the \fBpasswd\fR(4), \fBgroup\fR(4),
-\fBhosts\fR(4), \fBipnodes\fR(4), \fBexec_attr\fR(4), \fBprof_attr\fR(4),
-\fBuser_attr\fR(4), \fBethers\fR(4), \fBrpc\fR(4), \fBprotocols\fR(4),
-\fBnetworks\fR(4), \fBbootparams\fR(4),
-\fBauth_attr\fR(4), \fBservices\fR(4), \fBnetmasks\fR(4), \fBprinters\fR(4),
-\fBproject\fR(4) databases through standard \fBlibc\fR interfaces, such as
-\fBgethostbyname\fR(3NSL), \fBgetipnodebyname\fR(3SOCKET),
-\fBgethostbyaddr\fR(3NSL), and others. Each cache has a separate time-to-live
-for its data; modifying the local database (\fB/etc/hosts\fR,
-\fB/etc/resolv.conf\fR, and so forth) causes that cache to become invalidated
-upon the next call to \fBnscd\fR. The shadow file is specifically not cached.
-\fBgetspnam\fR(3C) calls remain uncached as a result.
-.sp
-.LP
-\fBnscd\fR also acts as its own administration tool. If an instance of
-\fBnscd\fR is already running, commands are passed to the running version
-transparently.
-.sp
-.LP
-When running with per-user lookups enabled (see \fBnscd.conf\fR(4)), \fBnscd\fR
-forks one and only one child process (that is, a per-user \fBnscd\fR) on behalf
-of the user making the request. The per-user \fBnscd\fR will use the
-credentials of the user to open a per-user connection to the name repository
-configured for the per-user style of lookups. The lookup will be performed in
-the child process. The results are cached in the process and are available only
-to the same user. The caches are managed exactly the same as the main
-\fBnscd\fR daemon manages its own caches. Subsequent requests from the user
-will be handled by that per-user \fBnscd\fR until it terminates. The per-user
-\fBnscd\fR uses a configurable inactivity time-to-live (TTL) value and
-terminates itself after the inactivity TTL expires.
-.sp
-.LP
-The maximum number of per-user \fBnscd\fRs that can be created by the main
-\fBnscd\fR is configurable (see \fBnscd.conf\fR(4)). After the maximum number
-of them are created, the main \fBnscd\fR will use an LRU algorithm to terminate
-less active child \fBnscd\fRs as needed.
-.sp
-.LP
-The main \fBnscd\fR daemon creates, monitors, and manages all the child
-\fBnscd\fRs. It creates a user's own \fBnscd\fR upon receiving the user's first
-per-user lookup. When the \fBnscd\fR daemon is started, if per-user lookups are
-enabled, it checks to ensure all conditions are met before getting ready to
-create a per-user \fBnscd\fR. When the daemon is stopped, it terminates all the
-per-user \fBnscd\fRs under its control.
-.sp
-.LP
-Per-user \fBnscd\fRs use the same configuration as the main \fBnscd\fR. They
-read and use the same default configuration file or the one specified with the
-\fB-f\fR command line option. Once the configuration is read, the per-user
-\fBnscd\fR will use it for its entire lifetime.
-.SH OPTIONS
-.LP
-Several of the options described below require a \fIcachename\fR specification.
-Supported values for \fIcachename\fR are: \fBpasswd\fR, \fBgroup\fR,
-\fBhosts\fR, \fBipnodes\fR, \fBexec_attr\fR, \fBprof_attr\fR, \fBuser_attr\fR,
-\fBethers\fR, \fBrpc\fR, \fBprotocols\fR, \fBnetworks\fR, \fBbootparams\fR,
-\fBauth_attr\fR, \fBservices\fR, \fBnetmasks\fR,
-\fBprinters\fR, and \fBproject\fR.
-.sp
-.ne 2
-.na
-\fB\fB-f\fR \fIconfiguration-file\fR\fR
-.ad
-.sp .6
-.RS 4n
-Causes \fBnscd\fR to read its configuration data from the specified file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-g\fR\fR
-.ad
-.sp .6
-.RS 4n
-Prints current configuration and statistics to standard output. This is the
-only option executable by non-root users.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-e\fR \fIcachename\fR\fB, yes\fR|\fBno\fR\fR
-.ad
-.sp .6
-.RS 4n
-Enables or disables the specified cache.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-i\fR \fIcachename\fR\fR
-.ad
-.sp .6
-.RS 4n
-Invalidate the specified cache.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRStopping and restarting the \fBnscd\fR daemon.
-.sp
-.in +2
-.nf
-example# svcadm disable system/name-service-cache
-
-example# svcadm enable system/name-service-cache
-.fi
-.in -2
-.sp
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/etc/nscd.conf\fR\fR
-.ad
-.RS 18n
-Determines athe behavior of the cache daemon
-.RE
-
-.SH SEE ALSO
-.LP
-\fBsvcs\fR(1), \fBsvcadm\fR(1M), \fBgetspnam\fR(3C), \fBgethostbyname\fR(3NSL),
-\fBgetipnodebyname\fR(3SOCKET), \fBauth_attr\fR(4),
-\fBbootparams\fR(4), \fBethers\fR(4), \fBexec_attr\fR(4), \fBgroup\fR(4),
-\fBhosts\fR(4), \fBnetmasks\fR(4), \fBnetworks\fR(4), \fBnscd.conf\fR(4),
-\fBnsswitch.conf\fR(4), \fBpasswd\fR(4), \fBprinters\fR(4), \fBprof_attr\fR(4),
-\fBproject\fR(4), \fBprotocols\fR(4), \fBrpc\fR(4), \fBservices\fR(4),
-\fBuser_attr\fR(4), \fBattributes\fR(5)
-.SH NOTES
-.LP
-The output from the \fB-g\fR option to \fBnscd\fR is subject to change. Do not
-rely upon it as a programming interface.
-.sp
-.LP
-The \fBnscd\fR service is managed by the service management facility,
-\fBsmf\fR(5), under the service identifier:
-.sp
-.in +2
-.nf
-svc:/system/name-service-cache
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Administrative actions on this service, such as enabling, disabling, or
-requesting restart, can be performed using \fBsvcadm\fR(1M). The service's
-status can be queried using the \fBsvcs\fR(1) command.
diff --git a/usr/src/man/man1m/nvmeadm.1m b/usr/src/man/man1m/nvmeadm.1m
deleted file mode 100644
index 422e6f0048..0000000000
--- a/usr/src/man/man1m/nvmeadm.1m
+++ /dev/null
@@ -1,595 +0,0 @@
-.\"
-.\" This file and its contents are supplied under the terms of the
-.\" Common Development and Distribution License ("CDDL"), version 1.0.
-.\" You may only use this file in accordance with the terms of version
-.\" 1.0 of the CDDL.
-.\"
-.\" A full copy of the text of the CDDL should have accompanied this
-.\" source. A copy of the CDDL is also available via the Internet at
-.\" http://www.illumos.org/license/CDDL.
-.\"
-.\"
-.\" Copyright 2021 Oxide Computer Company
-.\" Copyright 2022 Tintri by DDN, Inc. All rights reserved.
-.\"
-.Dd February 15, 2022
-.Dt NVMEADM 1M
-.Os
-.Sh NAME
-.Nm nvmeadm
-.Nd NVMe administration utility
-.Sh SYNOPSIS
-.Nm
-.Fl h
-.Op Ar command
-.Nm
-.Op Fl dv
-.Cm list
-.Oo
-.Fl p
-.Fl o Ar field Ns [,...]
-.Oc
-.Op Ar ctl[/ns] Ns [,...]
-.Nm
-.Op Fl dv
-.Cm identify
-.Ar ctl[/ns] Ns [,...]
-.Nm
-.Op Fl dv
-.Cm get-logpage
-.Ar ctl[/ns] Ns [,...]
-.Ar logpage
-.Nm
-.Op Fl dv
-.Cm get-features
-.Ar ctl[/ns] Ns [,...]
-.Op Ar feature-list
-.Nm
-.Op Fl dv
-.Cm format
-.Ar ctl[/ns]
-.Op Ar lba-format
-.Nm
-.Op Fl dv
-.Cm secure-erase
-.Ar ctl[/ns]
-.Op Fl c
-.Nm
-.Op Fl dv
-.Cm detach
-.Ar ctl[/ns]
-.Nm
-.Op Fl dv
-.Cm attach
-.Ar ctl[/ns]
-.Nm
-.Op Fl dv
-.Cm list-firmware
-.Ar ctl
-.Nm
-.Op Fl dv
-.Cm load-firmware
-.Ar ctl
-.Ar firmware-file
-.Op Ar offset
-.Nm
-.Op Fl dv
-.Cm commit-firmware
-.Ar ctl
-.Ar slot
-.Nm
-.Op Fl dv
-.Cm activate-firmware
-.Ar ctl
-.Ar slot
-.Sh DESCRIPTION
-The
-.Nm
-utility can be used to enumerate the NVMe controllers and their
-namespaces, query hardware information from a NVMe controller or
-namespace, and to format or secure-erase a NVMe controller or
-namespace.
-.Pp
-The information returned by the hardware is printed by
-.Nm
-in a human-readable form were applicable.
-Generally all 0-based counts are normalized and values may be
-converted to human-readable units such as MB (megabytes), W (watts),
-or C (degrees Celsius).
-.Sh OPTIONS
-The following options are supported:
-.Bl -tag -width Ds
-.It Fl h
-Print a short help text for
-.Nm ,
-or for an optionally specified
-.Nm
-command.
-.It Fl d
-Enable debugging output.
-.It Fl v
-Enable verbose output.
-.El
-.Sh ARGUMENTS
-.Nm
-expects the following kinds of arguments:
-.Bl -tag -width "ctl[/ns]"
-.It Ar command
-Any command
-.Nm
-understands.
-See section
-.Sx COMMANDS .
-.It Ar ctl[/ns]
-Specifies a NVMe controller and optionally a namespace within that
-controller.
-The controller name consists of the driver name
-.Qq nvme
-followed by an instance number.
-A namespace is specified by appending a single
-.Qq /
-followed by the namespace ID to the controller name.
-The namespace ID is the EUI64 of the namespace, or a positive non-zero
-decimal number if the namespace doesn't have an EUI64.
-For commands that don't change the device state multiple controllers
-and namespaces can be specified as a comma-separated list.
-.Pp
-The list of controllers and namespaces present in the system can be
-queried with the
-.Cm list
-command without any arguments.
-.It Ar logpage
-Specifies the log page name for the
-.Cm get-logpage
-command.
-.It Ar feature-list
-A comma-separated list of feature names for the
-.Cm get-features
-command.
-Feature names can be specified in upper or lower case and can be
-shortened the shortest unique name.
-Some features may also have an alternative short name.
-.It Ar lba-format
-A non-zero integer specifying the LBA format for the
-.Cm format
-command.
-The list of supported LBA formats on a namespace can be retrieved
-with the
-.Nm
-.Cm identify
-command.
-.It Ar firmware-file
-Specifies the name of a firmware file to be loaded into the controller
-using the
-.Cm load-firmware
-command.
-.It Ar offset
-Specifies the byte offset at which to load
-.Ar firmware-file
-within the controller's upload buffer.
-Vendors may require multiple images to be loaded at different offsets
-before a firmware set is committed to a
-.Ar slot .
-.It Ar slot
-Specifies the firmware slot into which a firmware set is committed
-using the
-.Cm commit-firmware
-command, and subsequently activated with the
-.Cm activate-firmware
-command.
-Slots and their contents can be printed using the
-.Nm
-.Cm list-firmware
-command.
-.El
-.Sh COMMANDS
-.Bl -tag -width ""
-.It Xo
-.Nm
-.Cm list
-.Oo
-.Fl p
-.Fl o Ar field Ns [,...]
-.Oc
-.Op Ar ctl[/ns] Ns [,...]
-.Xc
-Lists the NVMe controllers and their namespaces in the system and
-prints a 1-line summary of their basic properties for each.
-If a list of controllers and/or namespaces is given then the listing
-is limited to those devices.
-By default, output is human-readable; however, a parsable form can
-controlled by using the following options:
-.Bl -tag -width Fl
-.It Fl p
-Rather than printing human-readable output, outputs an entry for each of
-the specified controllers and namespaces.
-If no controllers or namespaces are given as arguments, then the primary
-namespace of each controller is listed and if the
-.Fl v
-option is specified, then all of the namespaces for a controller are
-listed.
-This option requires that output fields be selected with the
-.Fl o
-option.
-.It Fl o Ar field Ns [,...]
-A comma-separated list of one or more output fields to be used.
-Fields are listed below and the name is case insensitive.
-.El
-.Pp
-The following fields can be specified when using the parsable form:
-.Bl -tag -width CAPACITY
-.It Sy MODEL
-The model number of the device, generally containing information about
-both the manufacturer and the product.
-.It Sy SERIAL
-The NVMe controller's serial number.
-.It Sy FWREV
-The controller's firmware revision.
-.It Sy VERSION
-The version of the NVMe specification the controller supports.
-.It Sy SIZE
-The logical size in bytes of the namespace.
-.It Sy CAPACITY
-The amount of logical bytes that the namespace may actually have allocated at
-any time.
-This may be different than size due to the use of thin provisioning or due to
-administrative action.
-.It Sy USED
-The number of bytes used in the namespace.
-.It Sy INSTANCE
-The name of the device node and instance of it.
-.It Sy NAMESPACE
-The numerical value of the namespace which can be used as part of other
-.Nm
-operations.
-.It Sy DISK
-The name of the disk device that corresponds to the namespace, if any.
-.El
-.It Xo
-.Nm
-.Cm identify
-.Ar ctl[/ns] Ns [,...]
-.Xc
-Print detailed information about the specified controllers and/or
-namespaces.
-The information returned differs depending on whether a controller or
-a namespace is specified.
-For an explanation of the data printed by this command refer to the
-description of the
-.Qq IDENTIFY
-admin command in the NVMe specification.
-.It Xo
-.Nm
-.Cm get-logpage
-.Ar ctl[/ns] Ns [,...]
-.Ar logpage
-.Xc
-Print the specified log page of the specified controllers and/or namespaces.
-Most log pages are only available on a per-controller basis.
-Known log pages are:
-.Bl -tag -width "firmware"
-.It error
-Error Information
-.It health
-SMART/Health Information.
-A controller may support this log page on a per-namespace basis.
-.It firmware
-Firmware Slot Information
-.El
-.Pp
-For an explanation of the contents of the log pages refer to the
-description of the
-.Qq GET LOGPAGE
-admin command in the NVMe specification.
-.It Xo
-.Nm
-.Cm get-features
-.Ar ctl[/ns] Ns [,...]
-.Op Ar feature-list
-.Xc
-Prints information about the specified features, or all features if
-none are given, of the specified controllers and/or namespaces.
-Feature names are case-insensitive, and they can be shortened as long
-as they remain unique.
-Some features also have alternative short names to which the same
-rules apply.
-The following features are supported:
-.Pp
-.TS
-tab(:);
-l l l.
-FULL NAME:SHORT NAME:CONTROLLER/NAMESPACE
-Arbitration::controller
-Power Management::controller
-LBA Range Type:range:namespace
-Temperature Threshold::controller
-Error Recovery::controller
-Volatile Write Cache:cache:controller
-Number of Queues:queues:controller
-Interrupt Coalescing:coalescing:controller
-Interrupt Vector Configuration:vector:controller
-Write Atomicity:atomicity:controller
-Asynchronous Event Configuration:event:controller
-Autonomous Power State Transition::controller
-Software Progress Marker:progress:controller
-.TE
-.Pp
-For an explanation of the individual features refer to the description
-of the
-.Qq SET FEATURES
-admin command in the NVMe specification.
-.It Xo
-.Nm
-.Cm format
-.Ar ctl[/ns]
-.Op Ar lba-format
-.Xc
-Formats the specified namespace or all namespaces of the specified
-controller.
-This command implies a
-.Nm
-.Cm detach
-and subsequent
-.Nm
-.Cm attach
-of the specified namespace(s), which will cause a changed LBA format
-to be detected.
-If no LBA format is specified the LBA format currently used by the
-namespace will be used.
-When formatting all namespaces without specifying a LBA format the LBA
-format of namespace 1 will be used.
-A list of LBA formats supported by a namespace can be queried with the
-.Nm
-.Cm identify
-command.
-.Pp
-Note that not all devices support formatting individual or all
-namespaces, or support formatting at all.
-.Pp
-LBA formats using a non-zero metadata size are not supported by
-.Nm
-or
-.Xr nvme 7D .
-.Pp
-The list of supported LBA formats on a namespace can be retrieved
-with the
-.Nm
-.Cm identify
-command.
-.It Xo
-.Nm
-.Cm secure-erase
-.Ar ctl[/ns]
-.Op Fl c
-.Xc
-Erases the specified namespace or all namespaces of the controller.
-The flag
-.Fl c
-will cause a cryptographic erase instead of a normal erase.
-This command implies a
-.Nm
-.Cm detach
-and
-.Nm
-.Cm attach
-of the specified namespace(s).
-.Pp
-Note that not all devices support erasing individual or all
-namespaces, or support erasing at all.
-.It Xo
-.Nm
-.Cm detach
-.Ar ctl[/ns]
-.Xc
-Temporarily detaches the
-.Xr blkdev 7D
-instance from the specified namespace or all namespaces of the controller.
-This will prevent I/O access to the affected namespace(s).
-Detach will only succeed if the affected namespace(s) are not
-currently opened.
-The detached state will not persist across reboots or reloads of the
-.Xr nvme 7D
-driver.
-.Pp
-It is not an error to detach a namespace that is already detached, any such
-request will be silently ignored.
-.It Xo
-.Nm
-.Cm attach
-.Ar ctl[/ns]
-.Xc
-Attaches the
-.Xr blkdev 7D
-instance to the specified namespace or all namespaces of the controller.
-This will make I/O accesses to the namespace(s) possible again after a
-previous
-.Nm
-.Cm detach
-command.
-.Pp
-It is not an error to attach a namespace that is already attached, any such
-request will be silently ignored.
-.It Xo
-.Nm
-.Cm list-firmware
-.Ar ctl
-.Xc
-List currently active firmware slot, the next active firmware slot, and the
-current contents of all firmware slots of an NVMe controller.
-This is a synonym for the
-.Nm
-.Cm get-logpage
-.Ar ctl
-.Cm firmware
-command.
-.It Xo
-.Nm
-.Cm load-firmware
-.Ar ctl
-.Ar firmware-file
-.Op Ar offset
-.Xc
-Loads
-.Ar firmware-file
-into the controller's upload memory at
-.Ar offset ,
-the default is 0. A vendor may require multiple files to be loaded
-at different offsets before the firmware is committed to a
-.Ar slot .
-.It Xo
-.Nm
-.Cm commit-firmware
-.Ar ctl
-.Ar slot
-.Xc
-Commits firmware previously loaded by the
-.Cm load-firmware
-command to
-.Ar slot .
-.It Xo
-.Nm
-.Cm activate-firmware
-.Ar ctl
-.Ar slot
-.Xc
-Activates the firmware in slot
-.Ar slot .
-The firmware image in
-.Ar slot
-is activated at the next NVM controller reset.
-.El
-.Sh EXIT STATUS
-.Ex -std
-.Sh EXAMPLES
-.Bl -tag -width ""
-.It Sy Example 1: List all NVMe controllers and namespaces
-.Bd -literal
-# nvmeadm list
-nvme1: model: INTEL SSDPEDMD800G4, serial: CVFT4134001R800CGN, FW rev: 8DV10049, NVMe v1.0
- nvme1/1 (c1t1d0): Size = 763097 MB, Capacity = 763097 MB, Used = 763097 MB
-nvme4: model: SAMSUNG MZVPV128HDGM-00000, serial: S1XVNYAGA00640, FW rev: BXW7300Q, NVMe v1.1
- nvme4/1 (c2t2d0): Size = 122104 MB, Capacity = 122104 MB, Used = 5127 MB
-.Ed
-.It Sy Example 2: Identify a namespace
-.Bd -literal
-# nvmeadm identify nvme4/1
-nvme4/1: Identify Namespace
- Namespace Capabilities and Features
- Namespace Size: 122104MB
- Namespace Capacity: 122104MB
- Namespace Utilization: 5127MB
- Namespace Features
- Thin Provisioning: unsupported
- Number of LBA Formats: 1
- Formatted LBA Size
- LBA Format: 1
- Extended Data LBA: no
- Metadata Capabilities
- Extended Data LBA: unsupported
- Separate Metadata: unsupported
- End-to-End Data Protection Capabilities
- Protection Information Type 1: unsupported
- Protection Information Type 2: unsupported
- Protection Information Type 3: unsupported
- Protection Information first: unsupported
- Protection Information last: unsupported
- End-to-End Data Protection Settings
- Protection Information: disabled
- Protection Information in Metadata: last 8 bytes
- LBA Format 1
- Metadata Size: 0 bytes
- LBA Data Size: 512 bytes
- Relative Performance: Best
-.Ed
-.It Sy Example 3: Get SMART/Health information (verbose)
-.Bd -literal
-# nvmeadm -v get-logpage nvme4/1 health
-nvme4/1: SMART/Health Information
- Critical Warnings
- Available Space: OK
- Temperature: OK
- Device Reliability: OK
- Media: OK
- Volatile Memory Backup: OK
- Temperature: 37C
- Available Spare Capacity: 100%
- Available Spare Threshold: 10%
- Device Life Used: 0%
- Data Read: 0GB
- Data Written: 64GB
- Read Commands: 52907
- Write Commands: 567874
- Controller Busy: 1min
- Power Cycles: 6
- Power On: 141h
- Unsafe Shutdowns: 1
- Uncorrectable Media Errors: 0
- Errors Logged: 1
-.Ed
-.It Sy Example 4: Get Asynchronous Event Configuration information
-.Bd -literal
-# nvmeadm get-features nvme0,nvme4 event,power
-nvme0: Get Features
- Asynchronous Event Configuration
- Available Space below threshold: disabled
- Temperature above threshold: disabled
- Device Reliability compromised: disabled
- Media read-only: disabled
- Power Management
- Power State: 0
-nvme4: Get Features
- Asynchronous Event Configuration
- Available Space below threshold: disabled
- Temperature above threshold: disabled
- Device Reliability compromised: disabled
- Media read-only: disabled
- Volatile Memory Backup failed: disabled
- Power Management
- Power State: 0
-.Ed
-.It Sy Example 5: Load and activate firmware
-.Bd -literal
-# nvmeadm list-firmware nvme3
-nvme3: Firmware Slot Information
- Active Firmware Slot: 4
- Next Firmware Slot: 4
- Firmware Revision for Slot 1: KNGND110 (read-only)
- Firmware Revision for Slot 2: KNGND110
- Firmware Revision for Slot 3: KNGND110
- Firmware Revision for Slot 4: KNGND112
- Firmware Revision for Slot 5: KNGND110
-
-# nvmeadm -v load-firmware nvme3 KNGND113.bin
-1740544 bytes downloaded.
-
-# nvmeadm -v commit-firmware nvme3 5
-Firmware committed to slot 5.
-
-# nvmeadm -v activate-firmware nvme3 5
-Slot 5 activated: NVM subsystem reset required - power cycle your system.
-
-# nvmeadm list-firmware nvme3
-nvme3: Firmware Slot Information
- Active Firmware Slot: 4
- Next Firmware Slot: 5
- Firmware Revision for Slot 1: KNGND110 (read-only)
- Firmware Revision for Slot 2: KNGND110
- Firmware Revision for Slot 3: KNGND110
- Firmware Revision for Slot 4: KNGND112
- Firmware Revision for Slot 5: KNGND113
-.Ed
-.El
-.Sh INTERFACE STABILITY
-The command line interface of
-.Nm
-is
-.Sy Evolving .
-The output of
-.Nm
-is
-.Sy Not-an-Interface
-and may change any time.
-.Sh SEE ALSO
-.Xr nvme 7D
-.Pp
-.Lk http://www.nvmexpress.org/specifications/ "NVMe specifications"
diff --git a/usr/src/man/man1m/nwamd.1m b/usr/src/man/man1m/nwamd.1m
deleted file mode 100644
index f27b262132..0000000000
--- a/usr/src/man/man1m/nwamd.1m
+++ /dev/null
@@ -1,247 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH NWAMD 1M "Nov 24, 2008"
-.SH NAME
-nwamd \- network auto-magic daemon
-.SH SYNOPSIS
-.LP
-.nf
-\fB/lib/inet/nwamd\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBnwamd\fR is a system daemon to manage network interfaces.
-.sp
-.LP
-This daemon is started automatically and should not be invoked directly. It
-does not constitute a programming interface.
-.SS "Operation"
-.sp
-.LP
-Whether this daemon is enabled or not depends on your installation medium. To
-check from within the GNOME desktop environment, double click on the "Network
-Manager" icon to open the "Connection Properties" window. If "Configure network
-automatically" is checked, then auto-magic mode is enabled. To check from the
-command line, enter the following:
-.sp
-.in +2
-.nf
-% \fBsvcs svc:/network/physical\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Two instances will be listed, one online and the other disabled. If the "nwam"
-instance is online, then this daemon is running.
-.sp
-.LP
-To switch between manual and auto-magic mode, you can use the Network Monitor
-applet available within the GNOME desktop environment. You can also switch
-manually from the command line by entering:
-.sp
-.in +2
-.nf
-% \fBsvcadm disable svc:/network/physical:default\fR
-% \fBsvcadm enable svc:/network/physical:nwam\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-To go from auto-magic mode to manual mode:
-.sp
-.in +2
-.nf
-% \fBsvcadm disable svc:/network/physical:nwam\fR
-% \fBsvcadm enable svc:/network/physical:default\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-When switching modes like this, keep in mind that all network interfaces will
-be brought down then back up. Therefore, if a different \fBIP\fR address is
-configured in this process, existing applications and sessions might be
-disrupted.
-.sp
-.LP
-There is a limitation that only one link is active at a time in auto-magic
-mode. This mode is not recommended for machines that use more than one link at
-a time. For machines with wired and wireless links, wired link are preferred by
-default, although this can be adjusted from the GNOME NWAM Manager menu
-(right-click on the icon), or from the command line, by editing the plain text
-file \fB/etc/nwam/llp\fR. For the latter (hand-editing) procedure, the first
-instance of a link in \fB/etc/nwam/llp\fR sets the priority of that link.
-Subsequent instances of that link set parameters associated with the interface
-on that link.
-.sp
-.LP
-The \fB/etc/nwam/llp\fR interface is volatile and might change in a future
-release.
-.SS "Static IP Addresses"
-.sp
-.LP
-A static IP address can be configured by changing the line in the
-\fB/etc/nwam/llp\fR file that contains an interface name and the name of the
-method for obtaining an IP address. It might look like:
-.sp
-.in +2
-.nf
-nge0 dhcp
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Change this line to one that looks like:
-.sp
-.in +2
-.nf
-nge0 static \fII\fR1.\fII\fR2.\fII\fR3.\fII\fR4/\fIP\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-\&...where the I's are the digits of the IPv4 address and the \fIP\fR is an
-optional prefix. If the prefix is not provided, it is derived, using classful
-assumptions.
-.SS "Configuring IPv6"
-.sp
-.LP
-IPv6 is configured by default on a link. It can also be explicitly added in the
-\fB/etc/nwam/llp\fR file by providing a line that contains an interface name
-and the string \fBipv6\fR. It might look like:
-.sp
-.in +2
-.nf
-nge0 ipv6
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-If IPv6 should not be plumbed on a given link, a \fBnoipv6\fR entry should be
-created in the \fB/etc/nwam/llp\fR file for that link. It might look like:
-.sp
-.in +2
-.nf
-nge0 noipv6
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-An optional static IPv6 address can be provided on the same line, immediately
-after the \fBipv6\fR token. Whether you provide a static address or not, IPv6
-will use DHCPv6 or stateless address configuration, as directed by the local
-network configuration.
-.SS "PROFILES"
-.sp
-.LP
-All interfaces listed in this section are volatile and may change in a future
-release. They are documented here so that those wishing to experiment with this
-may do so.
-.sp
-.LP
-Profiles are a mechanism for making multiple related changes to the system
-configuration after \fBIP\fR service is available.
-.sp
-.LP
-There is no direct support for the profiles yet, but a "roll your own"
-mechanism is provided for now. Once an interface is brought up and an \fBIP\fR
-address is configured for it, the daemon looks for the file
-\fB/etc/nwam/ulp/check-conditions\fR. If this file exists and is executable, it
-is run. This should print a single line of output, which is the name of the
-profile that the user wishes to activate based on the current conditions. If
-such a line is read successfully (\fIfoo\fR in this example), then
-\fB/etc/nwam/ulp/foo/bringup\fR is executed. Likewise, when the interface gets
-torn down for whatever reason, \fB/etc/nwam/ulp/foo/teardown\fR is executed.
-The "bringup" and "teardown" scripts are invoked via \fBpfexec\fR(1) with
-default basic privileges. Samples for each of these scripts can be found at:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-http://opensolaris.org/os/project/nwam/prototype/check-conditions
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-http://opensolaris.org/os/project/nwam/prototype/bringup
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-http://opensolaris.org/os/project/nwam/prototype/teardown
-.RE
-.SS "Wireless"
-.sp
-.LP
-If no wired link is available, a scan for wireless \fBLAN\fRs is done, and the
-resulting list offered via a \fBGUI\fR popup window prompts the console user to
-select a preference. If a successful connection is made, the \fBWLAN\fR in
-question is stored in the plain text file \fB/etc/nwam/known_wifi_nets\fR and
-the daemon may connect to any \fBWLAN\fR in that list without prompting the
-user again. If a user wishes to add other preferences or revoke existing ones,
-he can do so by bringing up the NWAM Manager menu with right-click on the icon,
-and then selecting "Manage Favorite Wireless Networks...". A user can also edit
-the \fBknown_wifi_nets\fR file directly. This interface is volatile and might
-change in a future release.
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Volatile
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBsvcs\fR(1), \fBsvcadm\fR(1M), \fBattributes\fR(5), \fBsmf\fR(5)
-.sp
-.LP
-See also \fBnwam-manager(1M)\fR, available in the JDS/GNOME man page
-collection.
-.SH NOTES
-.sp
-.LP
-The networking service is managed by the service management facility,
-\fBsmf\fR(5), under the service identifier:
-.sp
-.in +2
-.nf
-svc:/network/physical
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Administrative actions on this service, such as enabling, disabling, or
-requesting restart, can be performed using \fBsvcadm\fR(1M). The service's
-status can be queried using the \fBsvcs\fR(1) command.
diff --git a/usr/src/man/man1m/obpsym.1m b/usr/src/man/man1m/obpsym.1m
deleted file mode 100644
index f9b35d386e..0000000000
--- a/usr/src/man/man1m/obpsym.1m
+++ /dev/null
@@ -1,143 +0,0 @@
-'\" te
-.\" Copyright 2001 Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH OBPSYM 1M "Dec 13, 2001"
-.SH NAME
-obpsym \- Kernel Symbolic Debugging for OpenBoot Firmware
-.SH SYNOPSIS
-.LP
-.nf
-\fBmodload\fR \fB-p\fR misc/obpsym
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBobpsym\fR is a kernel module that installs OpenBoot callback handlers that
-provide kernel symbol information to OpenBoot. OpenBoot firmware user interface
-commands use the callbacks to convert numeric \fIaddresses\fR to kernel symbol
-names for display purposes, and to convert kernel symbol names to numeric
-\fIliterals\fR allowing symbolic names to be used as input arguments to user
-interface commands.
-.sp
-.LP
-Once \fBobpsym\fR is installed, kernel symbolic names may be used anywhere at
-the OpenBoot firmware's user interface command prompt in place of a literal
-(numeric) string. For example, if \fBobpsym\fR is installed, the OpenBoot
-firmware commands \fBctrace\fR and \fBdis\fR typically display symbolic names
-and offsets in the form \fImodname:symbolname + offset.\fR User interface
-Commands such as \fBdis\fR can be given a kernel symbolic name such as
-\fBufs:ufs_mount\fR instead of a numeric address.
-.sp
-.LP
-Placing the command
-.sp
-.LP
-\fBforceload: misc/obpsym\fR
-.sp
-.LP
-into the \fBsystem\fR(4) file forces the kernel module \fBmisc/obpsym\fR to be
-loaded and activates the kernel callbacks during the kernel startup sequence.
-.sp
-.LP
-\fBobpsym\fR may be useful as a kernel debugger in situations where other
-kernel debuggers are not useful. For example, on SPARC machines, if
-\fBobpsym\fR is loaded, you may be able to use the OpenBoot firmware's
-\fBctrace\fR command to display symbolic names in the stack backtrace after a
-watchdog reset.
-.SS "Kernel Symbolic Name Syntax"
-.sp
-.LP
-The syntax for a kernel symbolic name is:
-.sp
-.LP
-\fB\fR [ \fImodule-name\fR \fB:\fR ] \fIsymbol-name\fR
-.sp
-.LP
-Where \fImodule-name\fR is the name of the kernel module that the symbol
-\fIsymbol-name\fR appears in. A \fINULL\fR module name is taken as "all
-modules, in no particular order" by \fBobpsym\fR. The module name \fBunix\fR is
-equivalent to a \fINULL\fR module name, so that conflicts with words defined in
-the firmware's vocabulary can be avoided.
-.sp
-.LP
-Typically, OpenBoot firmware reads a word from the input stream and looks the
-word up in its internal \fIvocabulary\fR before checking if the word is a
-\fIliteral\fR. Thus, kernel symbols, such as \fBreset\fR may be given as
-\fBunix:reset\fR to avoid the unexpected side effect of the firmware finding
-and executing a matching word in its vocabulary.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/system\fR\fR
-.ad
-.sp .6
-.RS 4n
-system configuration information file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/platform/\fR\fIplatform-name\fR\fB/kernel/misc/obpsym\fR\fR
-.ad
-.sp .6
-.RS 4n
-
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBkadb\fR(1M), \fBkernel\fR(1M), \fBmodload\fR(1M), \fBmodunload\fR(1M),
-\fBuname\fR(1), \fBsystem\fR(4), \fBattributes\fR(5)
-.sp
-.LP
-\fI\fR
-.SH WARNINGS
-.sp
-.LP
-Some OpenBoot firmware user interface commands may use system resources
-incompatibly with the way they are used by the Unix kernel. These commands and
-the use of this feature as a kernel debugger may cause interactions that the
-Unix kernel is not prepared to deal with. If this occurs, the Unix kernel
-and/or the OpenBoot firmware user interface commands may react unpredictably
-and may panic the system, or may hang or may cause other unpredictable results.
-For these reasons, the use of this feature is only minimally supported and
-recommended to be used only as a kernel debugger of "last resort".
-.sp
-.LP
-If a breakpoint or watchpoint is triggered while the console frame buffer is
-powered off, the system can crash and be left in a state from which it is
-difficult to recover. If one of these is triggered while the monitor is powered
-off, you will not be able to see the debugger output.
-.SH NOTES
-.sp
-.LP
-\fIplatform-name\fR can be found using the \fB-i\fR option of \fBuname\fR(1)
-.sp
-.LP
-\fBobpsym\fR is supported only on architectures that support OpenBoot firmware.
-.sp
-.LP
-On some systems, OpenBoot must be completely RAM resident so the \fBobpsym\fR
-symbol callback support can be added to the firmware, if the firmware doesn't
-include support for the symbol callbacks. On these systems, \fBobpsym\fR may
-complain that it requires that "you must use ramforth to use this module".
-.sp
-.LP
-See the for details on how to use the \fIramforth\fR command, how to place the
-command into \fInvramrc\fR, and how to set \fIuse-nvramrc?\fR to \fBtrue\fR. On
-systems with version 1.x OpenBoot firmware, \fInvramrc\fR doesn't exist, and
-the \fIramforth\fR command must be typed manually after each reset, in order to
-use this module.
-.sp
-.LP
-Once installed, the symbol table callbacks can be disabled by using the
-following OpenBoot firmware command:
-.sp
-.LP
-\fB0 0 set-symbol-lookup\fR
diff --git a/usr/src/man/man1m/oplhpd.1m b/usr/src/man/man1m/oplhpd.1m
deleted file mode 100644
index c7f5f62d29..0000000000
--- a/usr/src/man/man1m/oplhpd.1m
+++ /dev/null
@@ -1,68 +0,0 @@
-'\" te
-.\" Copyright (c) 2005, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH OPLHPD 1M "May 23, 2006"
-.SH NAME
-oplhpd \- Hot plug daemon for SPARC Enterprise Server line
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/platform/SUNW,SPARC-Enterprise/lib/sparcv9/lib/oplhpd\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The hot plug daemon for \fBSPARC\fR Enterprise Servers is a daemon process that
-runs on the \fBSUNW\fR,\fBSPARC\fR-Enterprise family of servers. The daemon is
-started by the service management facility (see \fBsmf\fR(5)) and communicates
-with the service processor when hot plug \fBPCI\fR cassettes change their
-dynamic reconfiguration state.
-.sp
-.LP
-The service \fBFMRI\fR for \fBoplhpd\fR is:
-.sp
-.in +2
-.nf
-svc:/platform/sun4u/oplhpd:default
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-A domain supports only one running \fBoplhpd\fR process at a time.
-.SH ERRORS
-.sp
-.LP
-\fBOPLHPD\fR uses \fBsyslog\fR(3C) to report status and error messages. All of
-the messages are logged with the \fBLOG_DAEMON\fR facility.
-.sp
-.LP
-Error messages are logged with the \fBLOG_ERR\fR and \fBLOG_NOTICE\fR
-priorities, and informational messages are logged with the \fBLOG_DEBUG\fR
-priority. The default entries in the \fB/etc/syslog.conf\fR file log all of the
-\fBOPLHPD\fR error messages to the \fB/var/adm/messages log\fR.
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBsvcs\fR(1), \fBinetadm\fR(1M), \fBsvcadm\fR(1M), \fBsyslog\fR(3C),
-\fBsyslog.conf\fR(4), \fBattributes\fR(5), \fBsmf\fR(5)
diff --git a/usr/src/man/man1m/passmgmt.1m b/usr/src/man/man1m/passmgmt.1m
deleted file mode 100644
index 7c6f210dbe..0000000000
--- a/usr/src/man/man1m/passmgmt.1m
+++ /dev/null
@@ -1,314 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 2007 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PASSMGMT 1M "Feb 25, 2017"
-.SH NAME
-passmgmt \- password files management
-.SH SYNOPSIS
-.LP
-.nf
-\fBpassmgmt\fR \fB-a\fR \fIoptions\fR \fIname\fR
-.fi
-
-.LP
-.nf
-\fBpassmgmt\fR \fB-m\fR \fIoptions\fR \fIname\fR
-.fi
-
-.LP
-.nf
-\fBpassmgmt\fR \fB-d\fR \fIname\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBpassmgmt\fR command updates information in the password files. This
-command works with both \fB/etc/passwd\fR and \fB/etc/shadow\fR.
-.sp
-.LP
-\fBpassmgmt\fR \fB-a\fR adds an entry for user \fIname\fR to the password
-files. This command does not create any directory for the new user and the new
-login remains locked (with the string \fB*LK*\fR in the password field) until
-the \fBpasswd\fR(1) command is executed to set the password.
-.sp
-.LP
-\fBpassmgmt\fR \fB-m\fR modifies the entry for user \fIname\fR in the password
-files. The name field in the \fB/etc/shadow\fR entry and all the fields (except
-the password field) in the \fB/etc/passwd\fR entry can be modified by this
-command. Only fields entered on the command line will be modified.
-.sp
-.LP
-\fBpassmgmt\fR \fB-d\fR deletes the entry for user \fIname\fR from the password
-files. It will not remove any files that the user owns on the system; they must
-be removed manually.
-.sp
-.LP
-\fBpassmgmt\fR can be used only by the super-user.
-.SH OPTIONS
-.ne 2
-.na
-\fB\fB\fR\fB-c\fR \fIcomment\fR\fR
-.ad
-.RS 16n
-A short description of the login, enclosed in quotes. It is limited to a
-maximum of 128 characters and defaults to an empty field.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-e\fR \fIexpire\fR\fR
-.ad
-.RS 16n
-Specify the expiration date for a login. After this date, no user will be able
-to access this login. The expire option argument is a date entered using one of
-the date formats included in the template file \fB/etc/datemsk\fR. See
-\fBgetdate\fR(3C).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR \fIinactive\fR\fR
-.ad
-.RS 16n
-The maximum number of days allowed between uses of a login ID before that
-\fBID\fR is declared invalid. Normal values are positive integers. A value of
-\fB0\fR defeats the status.
-.sp
-Changing the password reactivates an account for the inactivity period.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\fR\fB-g\fR \fIgid\fR\fR
-.ad
-.RS 16n
-\fBGID\fR of \fIname\fR. This number must range from 0 to the maximum
-non-negative value for the system. The default is 1.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\fR\fB-h\fR \fIhomedir\fR\fR
-.ad
-.RS 16n
-Home directory of \fIname\fR. It is limited to a maximum of 256 characters and
-defaults to \fB/usr/\fR\fIname\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-K\fR \fIkey=value\fR\fR
-.ad
-.RS 16n
-Set a \fIkey=value\fR pair. See \fBuser_attr\fR(4), \fBauth_attr\fR(4), and
-\fBprof_attr\fR(4). The valid \fIkey=value\fR pairs are defined in
-\fBuser_attr\fR(4), but the "type" key is subject to the \fBusermod\fR(1M) and
-\fBrolemod\fR(1M) restrictions. Multiple \fIkey=value\fR pairs may be added
-with multiple \fB-K\fR options.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-k\fR \fIskel_dir\fR\fR
-.ad
-.RS 16n
-A directory that contains skeleton information (such as \fB\&.profile\fR) that
-can be copied into a new user's home directory. This directory must already
-exist. The system provides the \fB/etc/skel\fR directory that can be used for
-this purpose.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR \fIlogname\fR\fR
-.ad
-.RS 16n
-This option changes the \fIname\fR to \fIlogname\fR. It is used only with the
-\fB-m\fR option. The total size of each login entry is limited to a maximum of
-511 bytes in each of the password files.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-o\fR\fR
-.ad
-.RS 16n
-This option allows a \fBUID\fR to be non-unique. It is used only with the
-\fB-u\fR option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\fR\fB-s\fR \fIshell\fR\fR
-.ad
-.RS 16n
-Login shell for \fIname\fR. It should be the full pathname of the program that
-will be executed when the user logs in. The maximum size of \fIshell\fR is 256
-characters. The default is for this field to be empty and to be interpreted as
-\fB/usr/bin/sh\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\fR\fB-u\fR \fIuid\fR\fR
-.ad
-.RS 16n
-\fBUID\fR of the \fIname\fR. This number must range from 0 to the maximum
-non-negative value for the system. It defaults to the next available \fBUID\fR
-greater than 99. Without the \fB-o\fR option, it enforces the uniqueness of a
-\fBUID.\fR
-.RE
-
-.SH FILES
-.in +2
-.nf
-\fB/etc/passwd\fR
-\fB/etc/shadow\fR
-\fB/etc/opasswd\fR
-\fB/etc/oshadow\fR
-.fi
-.in -2
-.sp
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-.LP
-\fBpasswd\fR(1), \fBrolemod\fR(1M), \fBuseradd\fR(1M), \fBuserdel\fR(1M),
-\fBusermod\fR(1M), \fBauth_attr\fR(4), \fBpasswd\fR(4), \fBprof_attr\fR(4),
-\fBshadow\fR(4), \fBuser_attr\fR(4), \fBattributes\fR(5)
-.SH EXIT STATUS
-.LP
-The \fBpassmgmt\fR command exits with one of the following values:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 5n
-Success.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB1\fR\fR
-.ad
-.RS 5n
-Permission denied.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB2\fR\fR
-.ad
-.RS 5n
-Invalid command syntax. Usage message of the \fBpassmgmt\fR command is
-displayed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB3\fR\fR
-.ad
-.RS 5n
-Invalid argument provided to option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB4\fR\fR
-.ad
-.RS 5n
-UID in use.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB5\fR\fR
-.ad
-.RS 5n
-Inconsistent password files (for example, \fIname\fR is in the
-\fB/etc/passwd\fR file and not in the \fB/etc/shadow\fR file, or vice versa).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB6\fR\fR
-.ad
-.RS 5n
-Unexpected failure. Password files unchanged.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB7\fR\fR
-.ad
-.RS 5n
-Unexpected failure. Password file(s) missing.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB8\fR\fR
-.ad
-.RS 5n
-Password file(s) busy. Try again later.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB9\fR\fR
-.ad
-.RS 5n
-\fIname\fR does not exist (if \fB-m\fR or \fB-d\fR is specified), already
-exists (if \fB-a\fR is specified), or \fBlogname\fR already exists (if
-\fB\fR\fB-m\fR \fB-l\fR is specified).
-.RE
-
-.SH NOTES
-.LP
-Do not use a colon (\fB:\fR) or \fBRETURN\fR as part of an argument. It is
-interpreted as a field separator in the password file. The \fBpassmgmt\fR
-command will be removed in a future release. Its functionality has been
-replaced and enhanced by \fBuseradd\fR, \fBuserdel\fR, and \fBusermod\fR. These
-commands are currently available.
-.sp
-.LP
-This command only modifies password definitions in the local \fB/etc/passwd\fR
-and \fB/etc/shadow\fR files. If a network nameservice
-is being used to supplement the local files with additional entries,
-\fBpassmgmt\fR cannot change information supplied by the network nameservice.
diff --git a/usr/src/man/man1m/pbind.1m b/usr/src/man/man1m/pbind.1m
deleted file mode 100644
index 49a13a7cde..0000000000
--- a/usr/src/man/man1m/pbind.1m
+++ /dev/null
@@ -1,356 +0,0 @@
-'\" te
-.\" Copyright 2015 Ryan Zezeski
-.\" Copyright (c) 2008, Sun Microsystems, Inc.
-.\" All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PBIND 1M "Feb 25, 2008"
-.SH NAME
-pbind \- control and query bindings of processes or LWPs
-.SH SYNOPSIS
-.LP
-.nf
-\fBpbind\fR \fB-b\fR \fIprocessor_id\fR \fIpid\fR [\fI/lwpid\fR]...
-.fi
-
-.LP
-.nf
-\fBpbind\fR \fB-e\fR \fIprocessor_id\fR \fIcmd\fR [\fIargs\fR...]
-.fi
-
-.LP
-.nf
-\fBpbind\fR [\fB-q\fR] [\fIpid\fR [\fI/lwpid\fR]]...
-.fi
-
-.LP
-.nf
-\fBpbind\fR \fB-Q\fR [\fIprocessor_id\fR]...
-.fi
-
-.LP
-.nf
-\fBpbind\fR \fB-u\fR \fIpid\fR [\fI/lwpid\fR]...
-.fi
-
-.LP
-.nf
-\fBpbind\fR \fB-U\fR [\fIprocessor_id\fR]...
-.fi
-
-.SH DESCRIPTION
-.LP
-\fBpbind\fR controls and queries bindings of processes and LWPs (lightweight
-processes) to processors. \fBpbind\fR can also remove processor bindings that
-were previously established.
-.sp
-.LP
-When an LWP is bound to a processor, it will be executed only by that processor
-except when the LWP requires a resource that is provided only by another
-processor. The binding is not exclusive, that is, the processor is free to
-execute other LWPs as well.
-.sp
-.LP
-Bindings are inherited, so new LWPs and processes created by a bound LWP will
-have the same binding. Binding an interactive shell to a processor, for
-example, binds all commands executed by the shell.
-.sp
-.LP
-The \fIprocessor_id\fR must be present and on-line. Use the
-\fBpsrinfo(1M)\fR command to determine which processors are
-available.
-.sp
-.LP
-Superusers may bind or unbind any process or LWP, while other users can bind or
-unbind any process or LWP for which they have permission to signal, that is,
-any process that has the same effective user ID as the user.
-.SH OPTIONS
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-b\fR \fIprocessor_id\fR\fR
-.ad
-.sp .6
-.RS 4n
-Binds all or a subset of the LWPs of the specified processes to
-\fIprocessor_id\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB-e\fR \fIprocessor_id\fR
-.ad
-.sp .6
-.RS 4n
-Execute a command while bound to \fIprocessor_id\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-q\fR\fR
-.ad
-.sp .6
-.RS 4n
-Displays the bindings of the specified processes or of all processes. If a
-process is composed of multiple LWPs which have different bindings and the LWPs
-are not explicitly specified, the bindings of only one of the bound LWPs will
-be displayed. The bindings of a subset of LWPs can be displayed by appending
-"/lwpids" to the process \fBID\fRs. Multiple LWPs may be selected using "-" and
-"," delimiters. See EXAMPLES.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-Q\fR\fR
-.ad
-.sp .6
-.RS 4n
-Displays the LWPs bound to the specified list of processors, or all LWPs with
-processor bindings. For processes composed of multiple LWPs, the bindings of
-individual LWPs will be displayed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-u\fR\fR
-.ad
-.sp .6
-.RS 4n
-Removes the bindings of all or a subset of the LWPs of the specified processes,
-allowing them to be executed on any on-line processor.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-U\fR\fR
-.ad
-.sp .6
-.RS 4n
-Removes the bindings of all LWPs bound to the specified list of processors, or
-to any processor if no argument is specified.
-.RE
-
-.SH OPERANDS
-.LP
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fB\fIpid\fR\fR
-.ad
-.sp .6
-.RS 4n
-The process \fBID\fR of the process to be controlled or queried.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIlwpid\fR\fR
-.ad
-.sp .6
-.RS 4n
-The set of LWP IDs of the specified process to be controlled or queried. The
-syntax for selecting \fBLWP\fR \fBID\fRs is as follows:
-.sp
-.in +2
-.nf
-2,3,4-8 LWP IDs 2, 3, and 4 through 8
--4 LWPs whose IDs are 4 or below
-4- LWPs whose IDs are 4 or above
-.fi
-.in -2
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIprocessor_id\fR\fR
-.ad
-.sp .6
-.RS 4n
-The processor \fBID\fR of the processor to be controlled or queried.
-.RE
-
-.sp
-.ne 2
-.na
-\fIcmd [args...]\fR
-.ad
-.sp .6
-.RS 4n
-The command to execute along with optional arguments.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRBinding Processes
-.sp
-.LP
-The following example binds processes 204 and 223 to processor 2:
-
-.sp
-.in +2
-.nf
-example% \fBpbind -b 2 204 223\fR
-process id 204: was 2, now 2
-process id 223: was 3, now 2
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRUnbinding a Process
-.sp
-.LP
-The following example unbinds process 204:
-
-.sp
-.in +2
-.nf
-example% \fBpbind -u 204\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRQuerying Bindings
-.sp
-.LP
-The following example queries bindings. It demonstrates that process 1 is bound
-to processor 0, process 149 has at least one LWP bound to CPU3, and process 101
-has no bound LWPs.
-
-.sp
-.in +2
-.nf
-example% \fBpbind -q 1 149 101\fR
-process id 1: 0
-process id 149: 3
-process id 101: not bound
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 4 \fRQuerying LWP Bindings
-.sp
-.LP
-The following example queries bindings of LWPs. It demonstrates that LWP 1 of
-process 149 is bound to CPU3, and LWP 2 of process 149 is not bound.
-
-.sp
-.in +2
-.nf
-example% \fBpbind -q 149/1-2\fR
-lwp id 149/1: 3
-lwp id 149/2: not bound
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 5 \fRQuerying LWP Bindings for Processor 2:
-.sp
-.LP
-The following example queries all LWPs bound to processor 2:
-
-.sp
-.in +2
-.nf
-example% \fBpbind -Q 2\fR
-lwp id 149/4: 2
-lwp id 149/5: 2
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 6 \fRExecuting a bound command:
-.sp
-.LP
-The following example executes ls while bound to processor 6:
-
-.sp
-.in +2
-.nf
-example% \fBpbind -e 6 ls -la
-.fi
-.in -2
-.sp
-
-.SH EXIT STATUS
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.sp .6
-.RS 4n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB>0\fR\fR
-.ad
-.sp .6
-.RS 4n
-An error occurred.
-.RE
-
-.SH SEE ALSO
-.LP
-\fBpsradm\fR(1M), \fBpsrinfo\fR(1M), \fBpsrset\fR(1M), \fBprocessor_bind\fR(2),
-\fBprocessor_info\fR(2), \fBsysconf\fR(3C), \fBattributes\fR(5)
-.SH DIAGNOSTICS
-.ne 2
-.na
-\fB\fBpbind: cannot query pid 31: No such process\fR\fR
-.ad
-.sp .6
-.RS 4n
-The process specified did not exist or has exited.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpbind: cannot bind pid 31: Not owner\fR\fR
-.ad
-.sp .6
-.RS 4n
-The user does not have permission to bind the process.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpbind: cannot bind pid 31: Invalid argument\fR\fR
-.ad
-.sp .6
-.RS 4n
-The specified processor is not on-line.
-.RE
-
-.sp
-.ne 2
-.na
-\fBpbind: failed to exec\fR \fIcmd\fR
-.ad
-.sp .6
-.RS 4n
-Could not resolve the \fIcmd\fR from \fBPATH\fR.
-.RE
diff --git a/usr/src/man/man1m/pcitool.1m b/usr/src/man/man1m/pcitool.1m
deleted file mode 100644
index e0c1891a0a..0000000000
--- a/usr/src/man/man1m/pcitool.1m
+++ /dev/null
@@ -1,224 +0,0 @@
-.\"
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.\"
-.\"
-.\" Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
-.\" Copyright 2018 Nexenta Systems, Inc.
-.\"
-.Dd February 12, 2018
-.Dt PCITOOL 1M
-.Os
-.Sh NAME
-.Nm pcitool
-.Nd interrupt routing tool
-.Sh SYNOPSIS
-.Ss Sy x86
-.Nm
-.Cm pci@ Ns Ar unit-address Ns | Ns Cm niu@ Ns Ar unit-address
-.Fl i Ar cpu# Ns \&, Ns Ar ino# Ns | Ns Cm all
-.Op Fl qv
-.Op Fl r Oo Fl c Oc Ns | Ns Fl w Ar cpu# Oo Fl g Oc
-.Ss SPARC
-.Nm
-.Cm pci@ Ns Ar unit-address Ns | Ns Cm niu@ Ns Ar unit-address
-.Fl i Ar ino# Ns | Ns Cm all
-.Op Fl qv
-.Op Fl r Oo Fl c Oc Ns | Ns Fl w Ar cpu# Oo Fl g Oc
-.Nm
-.Cm pci@ Ns Ar unit-address
-.Fl m Ar msi# Ns | Ns Cm all
-.Op Fl qv
-.Op Fl r Oo Fl c Oc Ns | Ns Fl w Ar cpu# Oo Fl g Oc
-.Sh DESCRIPTION
-.Nm
-is a low-level tool which provides a facility for getting and setting interrupt
-routing information.
-.Ss Interrupt Routing
-On x86 platforms, both INOs and MSI/Xs are mapped to the same interrupt vectors.
-Use
-.Nm Fl i
-option to retrieve and reroute any interrupt vectors (both INO and MSI/Xs).
-.Pp
-On SPARC platforms, the INO is mapped to an interrupt mondo, where as one or
-more MSI/Xs are mapped to an INO.
-So, INO and MSI/Xs are individually retargetable.
-Use
-.Nm Fl i
-option to retrieve or reroute a given INO, where as use
-.Nm Fl m
-option for MSI/Xs.
-.Pp
-The following options are supported by
-.Nm
-for interrupt routing:
-.Bl -tag -width Ds
-.It Fl c
-.Pq Used with Fl r .
-Dump interrupt controller information.
-.It Fl g
-.Pq Used with Fl w .
-On some platforms (such as x86) multiple MSI interrupts of a single function
-need to be rerouted together.
-Use
-.Fl g
-to do this.
-.Fl g
-works only on supported platforms and only for groups of MSI interrupts.
-(A "group" of 1 is accepted).
-When
-.Fl g
-is used, the vector provided must be the lowest-numbered vector of the group.
-The size of the group is determined internally.
-.It Fl i
-Display device and CPU routing information for INOs on a given nexus,
-or reroute the given INO or INO group to a specific CPU.
-.It Fl m
-.Pq SPARC only
-Display device and CPU routing information for MSI/Xs on a given nexus,
-or reroute the given MSI/X or MSI/X group to a specific CPU.
-.It Fl q
-No errors reported as messages.
-Unix error status still returned by program, however.
-.It Fl r
-Display device and CPU routing information for INOs on a given nexus.
-The device path and instance number of each device for each displayed INO will
-be shown.
-On some platforms, interrupts dedicated to the root complex are indicated with
-.Ql (Internal)
-appended to their pathname.
-Default if neither
-.Fl r
-nor
-.Fl w
-are specified.
-.It Fl v
-Verbose output.
-.It Fl w
-Route the given INO or MSI/X to the given CPU.
-Display the new and original routing information.
-The INO or MSI/X must be specified.
-.El
-.Sh EXIT STATUS
-The following error statuses are returned to the shell:
-.Bl -tag -width Er
-.It Er 0
-No error
-.It Er EINVAL
-Out-of-range, misaligned or otherwise invalid argument has been passed in.
-.It Er ETIME
-Timeout waiting for pending interrupt to settle before changing interrupts to
-a new CPU.
-.It Er EIO
-An IO error occurred.
-.El
-.Sh EXAMPLES
-.Bl -tag -width Ds
-.It Sy Example 1 No Showing INOs or MSI/Xs
-The command for showing all INOs on /pci@0,0 is:
-.Bd -literal
-# pcitool /pci@0,0 -i all
-.Ed
-.Pp
-The command for showing ino <0x0,0x21> on the same root nexus, along with sample
-output, is:
-.Pp
-On x86 platform:
-.Bd -literal
-# pcitool /pci@0,0 -i 0,21
-0x0,0x21: mpt 0 /pci@7b,0/pci1022,7458@11/pci1000,3060@2
-.Ed
-.Pp
-On SPARC platform:
-.Bd -literal
-# pcitool /pci@0,0 -i 21
-0x0,0x21: mpt 0 /pci@7b,0/pci1022,7458@11/pci1000,3060@2
-.Ed
-.Pp
-The command for showing MSI 0x1 on the same root nexus, along with sample
-output, is:
-.Bd -literal
-# pcitool /pci@0,0 -m 0x1
-0x0,0x1: pcieb 0 /pci@7b,0/pci10de,5d@e
-.Ed
-.It Sy Example 2 No Rerouting INOs or MSI/Xs
-Successful rerouting ino 21 above from cpu 0 to cpu 1 gives the following
-output:
-.Pp
-On x86 platform:
-.Bd -literal
-# pcitool /pci@0,0 -i 0,21 -w 1
-0x0,0x21 -> 0x1,0x20
-.Ed
-.Pp
-On SPARC platform:
-.Bd -literal
-# pcitool /pci@0,0 -i 21 -w 1
-0x0,0x21 -> 0x1,0x21
-.Ed
-.Pp
-Successful rerouting msi 1 above from cpu 1 to cpu 0 gives the following
-output:
-.Bd -literal
-# pcitool /pci@0,0 -m 1 -w 0
-0x1,0x1 -> 0x0,0x1
-.Ed
-.Pp
-Successful rerouting a group of INOs starting at 24 from cpu 0 to cpu 1 gives
-the following output:
-.Pp
-On x86 platform:
-.Bd -literal
-# pcitool /pci@0,0 -i 3,24 -w 1 -g
-0x3,0x24 => 0x1,0x22
-.Ed
-.Pp
-On SPARC platform:
-.Bd -literal
-# pcitool /pci@0,0 -i 24 -w 1 -g
-0x3,0x24 => 0x1,0x22
-.Ed
-.El
-.Sh ARCHITECTURE
-.Sy PCI-based systems
-.Sh INTERFACE STABILITY
-.Sy Volatile
-.Sh SEE ALSO
-.Xr su 1M ,
-.Xr pci 4 ,
-.Xr user_attr 4 ,
-.Xr rbac 5
-.Pp
-PCI specification
-.Po available from
-.Lk https://pcisig.com
-.Pc
-.Sh NOTES
-All values are entered in hex.
-.Pp
-Not all commands are applicable to all platforms.
-.Pp
-The user must have all privileges in order to access interrupt information.
-A regular user can access interrupt information when
-.Xr su 1M
-to root or granted the
-.Qq Maintenance and Repair
-rights profile in the
-.Pa user_attr
-file.
-See
-.Xr user_attr 4
-and
-.Xr rbac 5 .
diff --git a/usr/src/man/man1m/picld.1m b/usr/src/man/man1m/picld.1m
deleted file mode 100644
index d233fb7444..0000000000
--- a/usr/src/man/man1m/picld.1m
+++ /dev/null
@@ -1,126 +0,0 @@
-'\" te
-.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PICLD 1M "May 16, 2020"
-.SH NAME
-picld \- PICL daemon
-.SH SYNOPSIS
-.nf
-\fB/usr/lib/picl/picld\fR
-.fi
-
-.SH DESCRIPTION
-The Platform Information and Control Library (\fBPICL\fR) provides a mechanism
-to publish platform-specific information for clients to access in a
-platform-independent way. \fBpicld\fR maintains and controls access to the
-\fBPICL\fR information from clients and plug-in modules. The daemon is started
-in both single-user and multi-user boot mode.
-.sp
-.LP
-Upon startup, the \fBPICL\fR daemon loads and initializes the plug-in modules.
-These modules use the \fBlibpicltree\fR(3PICLTREE) interface to create nodes
-and properties in the \fBPICL\fR tree to publish platform configuration
-information. After the plug-in modules are initialized, the daemon opens the
-\fBPICL\fR daemon door to service client requests to access information in the
-\fBPICL\fR tree.
-.SS "PICL Tree"
-The \fBPICL\fR tree is the repository of all the nodes and properties created
-by the plug-in modules to represent the platform configuration. Every node in
-the \fBPICL\fR tree is an instance of a well-defined \fBPICL\fR class. The name
-of the base \fBPICL\fR class is \fBpicl\fR, which defines a basic set of
-properties that all nodes in the tree must possess. Two of those properties are
-\fBname\fR and \fB_class\fR, where \fBname\fR contains the name of the node,
-and the \fB_class\fR contains the \fBPICL\fR class name of the node. Certain
-nodes in the \fBPICL\fR tree have well-known names. For example, the name of
-the root node of the \fBPICL\fR tree is \fB/\fR and the name of the root node
-of the sub-tree containing platform device nodes is \fBplatform\fR.
-.SS "PICL plug-in Modules"
-The \fBPICL\fR plug-in modules are shared objects that publish
-platform-specific data in the \fBPICL\fR tree. They are located in well-known
-directories so that the daemon can locate and load them.
-.sp
-.LP
-Plug-in modules are located in one of the following plug-in directories
-depending on the platform-specific nature of the data that they collect and
-publish:
-.sp
-.in +2
-.nf
-/usr/platform/`uname -i`/lib/picl/plugins
-/usr/platform/`uname -m`/lib/picl/plugins
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-A plug-in module can specify its dependency on another plug-in module using the
-\fB-l\fR or \fB-R\fR linker option. The plug-ins are loaded by the daemon using
-\fBdlopen\fR(3C) according to the specified dependencies. Each plug-in module
-must define a \fB\&.init\fR section, which is executed when the plug-in module
-is loaded, to register themselves with the daemon. See
-\fBpicld_plugin_register\fR(3PICLTREE) for additional information on plug-in
-registration.
-.sp
-.LP
-The plug-in modules use the \fBlibpicltree\fR(3PICLTREE) interface to publish
-nodes and properties in the \fBPICL\fR tree so that clients can access them.
-.sp
-.LP
-When the \fBPICL\fR daemon invokes the initialization routine of the plug-in
-module, the plug-in collects the platform information and creates nodes and/or
-properties to represent the configuration in the \fBPICL\fR tree. A plug-in can
-create additional threads to monitor the platform configuration and update the
-\fBPICL\fR tree with any changes. This enables a \fBPICL\fR plug-in to operate
-as a daemon within the \fBPICL\fR framework.
-.sp
-.LP
-An environmental monitor is an example of a plug-in module that uses a thread
-to monitor the temperatures and fan speeds of the platform, then publishes the
-environmental information in the \fBPICL\fR tree so clients can access them.
-.sp
-.LP
-Clients use the \fBlibpicl\fR(3PICL) interface to send requests to \fBpicld\fR
-for accessing the \fBPICL\fR tree.
-.SH EXIT STATUS
-\fBpicld\fR does not return an exit status.
-.SH FILES
-.ne 2
-.na
-\fB\fB/var/run/picld_door\fR\fR
-.ad
-.RS 23n
-\fBPICL\fR daemon door
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/picl/picld\fR\fR
-.ad
-.RS 23n
-\fBPICL\fR daemon
-.RE
-
-.SH SEE ALSO
-\fBsvcs\fR(1), \fBsvcadm\fR(1M), \fBdlopen\fR(3C), \fBlibpicl\fR(3PICL),
-\fBlibpicltree\fR(3PICLTREE), \fBpicld_log\fR(3PICLTREE),
-\fBpicld_plugin_register\fR(3PICLTREE), \fBattributes\fR(5), \fBsmf\fR(5)
-.SH NOTES
-The \fBpicld\fR service is managed by the service management facility,
-\fBsmf\fR(5), under the service identifier:
-.sp
-.in +2
-.nf
-svc:/system/picl
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Administrative actions on this service, such as enabling, disabling, or
-requesting restart, can be performed using \fBsvcadm\fR(1M). The service's
-status can be queried using the \fBsvcs\fR(1) command.
diff --git a/usr/src/man/man1m/ping.1m b/usr/src/man/man1m/ping.1m
deleted file mode 100644
index 9733d6d717..0000000000
--- a/usr/src/man/man1m/ping.1m
+++ /dev/null
@@ -1,473 +0,0 @@
-'\" te
-.\" Copyright (C) 2006, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 1989 AT&T
-.\" Copyright 2015, Joyent, Inc.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PING 1M "May 21, 2015"
-.SH NAME
-ping \- send ICMP (ICMP6) ECHO_REQUEST packets to network hosts
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/ping\fR \fIhost\fR [\fItimeout\fR]
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/ping\fR \fB-s\fR [\fB-l\fR | \fB-U\fR] [\fB-abdDLnrRv\fR] [\fB-A\fR \fIaddr_family\fR]
- [\fB-c\fR \fItraffic_class\fR] [\fB-g\fR \fIgateway\fR [\fB-g\fR \fIgateway\fR...]]
- [\fB-N\fR \fInext_hop_router\fR] [\fB-F\fR \fIflow_label\fR] [\fB-I\fR \fIinterval\fR]
- [\fB-i\fR \fIinterface\fR] [\fB-P\fR \fItos\fR] [\fB-p\fR \fIport\fR] [\fB-t\fR \fIttl\fR] \fIhost\fR
- [\fIdata_size\fR] [\fInpackets\fR]
-.fi
-
-.SH DESCRIPTION
-.LP
-The utility \fBping\fR utilizes the \fBICMP\fR (\fBICMP6\fR in IPv6) protocol's
-\fBECHO_REQUEST\fR datagram to elicit an \fBICMP\fR (\fBICMP6\fR)
-\fBECHO_RESPONSE\fR from the specified \fIhost\fR or network \fIgateway\fR. If
-\fIhost\fR responds, \fBping\fR will print:
-.sp
-.in +2
-.nf
-\fIhost\fR is alive
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-on the standard output and exit. Otherwise, after \fItimeout\fR seconds, it
-will write:
-.sp
-.in +2
-.nf
-no answer from \fIhost\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The default value of \fItimeout\fR is \fB20\fR seconds.
-.sp
-.LP
-When you specify the s flag, sends one datagram per second (adjust with
-\fB-I\fR) and prints one line of output for every \fBECHO_RESPONSE\fR that it
-receives. \fBping\fR produces no output if there is no response. In this second
-form, \fBping\fR computes round trip times and packet loss statistics; it
-displays a summary of this information upon termination or timeout. The default
-\fIdata_size\fR is \fB56\fR bytes, or you can specify a size with the
-\fIdata_size\fR command-line argument. If you specify the optional
-\fInpackets\fR, \fBping\fR sends \fBping\fR requests until it either sends
-\fInpackets\fR requests or receives \fInpackets\fR replies.
-.sp
-.LP
-When using \fBping\fR for fault isolation, first \fBping\fR the local host to
-verify that the local network interface is running.
-.SH OPTIONS
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-A\fR\ \fIaddr_family\fR\fR
-.ad
-.RS 24n
-Specify the address family of the target host. \fIaddr_family\fR can be either
-\fBinet\fR or \fBinet6\fR. Address family determines which protocol to use. For
-an argument of \fBinet\fR, IPv4 is used. For \fBinet6\fR, IPv6 is used.
-.sp
-By default, if the name of a host is provided, not the literal \fBIP\fR
-address, and a valid IPv6 address exists in the name service database,
-\fBping\fR will use this address. Otherwise, if the name service database
-contains an IPv4 address, it will try the IPv4 address.
-.sp
-Specify the address family \fBinet\fR or \fBinet6\fR to override the default
-behavior. If the argument specified is \fBinet\fR, \fBping\fR will use the IPv4
-address associated with the host name. If none exists, \fBping\fR will state
-that the host is unknown and exit. It does not try to determine if an IPv6
-address exists in the name service database.
-.sp
-If the specified argument is \fBinet6\fR, \fBping\fR uses the IPv6 address that
-is associated with the host name. If none exists, \fBping\fR states that the
-host is unknown and exits.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-D\fR\fR
-.ad
-.RS 24n
-Don't allow probe packets to be fragmented. If the packet size exceeds the MTU
-of a gateway it passes through, the gateway will reject it.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-F\fR\ \fIflow_label\fR\fR
-.ad
-.RS 24n
-Specify the flow label of probe packets. The value must be an integer in the
-range from 0 to 1048575. This option is valid only on IPv6.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-I\fR \fIinterval\fR\fR
-.ad
-.RS 24n
-Turn on the statistics mode and specify the interval between successive
-transmissions. The default is one second. See the discussion of the \fB-s\fR
-option. The minimum interval is 0.01 seconds. It is an error to specify
-a smaller interval.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-L\fR\fR
-.ad
-.RS 24n
-Turn off loopback of multicast packets. Normally, members are in the host group
-on the outgoing interface, a copy of the multicast packets will be delivered to
-the local machine.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-N\fR \fInext_hop_router\fR\fR
-.ad
-.RS 24n
-Specify a next-hop router so that the probe packet goes through the specified
-router along its path to the target host. This option essentially bypasses the
-system routing table and leaves the probe packet header unmodified. Only one
-next-hop router can be specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-P\fR\ \fItos\fR\fR
-.ad
-.RS 24n
-Set the type of service (\fItos\fR) in probe packets to the specified value.
-The default is zero. The value must be an integer in the range from 0 to 255.
-Gateways also in the path can route the probe packet differently, depending
-upon the value of \fItos\fR that is set in the probe packet. This option is
-valid only on IPv4.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-R\fR\fR
-.ad
-.RS 24n
-Record route. Sets the IPv4 record route option, which stores the route of the
-packet inside the IPv4 header. The contents of the record route are only
-printed if the \fB-v\fR and \fB-s\fR options are given. They are only set on
-return packets if the target host preserves the record route option across
-echos, or the \fB-l\fR option is given. This option is valid only on IPv4.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-U\fR\fR
-.ad
-.RS 24n
-Send \fBUDP\fR packets instead of \fBICMP\fR (\fBICMP6\fR) packets. \fBping\fR
-sends \fBUDP\fR packets to consecutive ports expecting to receive back
-\fBICMP\fR (\fBICMP6\fR) \fBPORT_UNREACHABLE\fR from the target host.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-a\fR\fR
-.ad
-.RS 24n
-\fBping\fR all addresses, both IPv4 and IPv6, of the multihomed destination.
-The output appears as if \fBping\fR has been run once for each \fBIP\fR address
-of the destination. If this option is used together with \fB-A\fR, \fBping\fR
-probes only the addresses that are of the specified address family. When used
-with the \fB-s\fR option and \fInpackets\fR is not specified, \fBping\fR
-continuously probes the destination addresses in a round robin fashion. If
-\fInpackets\fR is specified, \fBping\fR sends \fInpackets\fR number of probes
-to each \fBIP\fR address of the destination and then exits.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-b\fR\fR
-.ad
-.RS 24n
-Bypass the global IPsec policy and send and receive packets in the clear for
-this connection only. This option can be used to troubleshoot network
-connectivity independent of IPsec. Because this option bypasses system-wide
-policy for this connection, it can only be used by superuser or a user granted
-the sys_net_config privilege.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-c\fR\ \fItraffic_class\fR\fR
-.ad
-.RS 24n
-Specify the traffic class of probe packets. The value must be an integer in the
-range from 0 to 255. Gateways along the path can route the probe packet
-differently, depending upon the value of \fItraffic_class\fR set in the probe
-packet. This option is valid only on IPv6.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-d\fR\fR
-.ad
-.RS 24n
-Set the \fBSO_DEBUG\fR socket option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-g\fR\ \fIgateway\fR\fR
-.ad
-.RS 24n
-Specify a loose source route gateway so that the probe packet goes through the
-specified host along the path to the target host. The maximum number of
-gateways is 8 for IPv4 and 127 for IPv6. Note that some factors such as the
-link \fBMTU\fR can further limit the number of gateways for IPv6.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-i\fR \fIinterface_address\fR\fR
-.ad
-.RS 24n
-Specify the outgoing interface address to use for multicast packets for IPv4
-and both multicast and unicast packets for IPv6. The default interface address
-for multicast packets is determined from the (unicast) routing tables.
-\fIinterface_address\fR can be a literal \fBIP\fR address, for example,
-\fB10.123.100.99\fR, or an interface name, for example, \fBeri0\fR, or an
-interface index, for example \fB2\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR\fR
-.ad
-.RS 24n
-Use to send the probe packet to the given host and back again using loose
-source routing. Usually specified with the \fB-R\fR option. If any gateways are
-specified using \fB-g\fR, they are visited twice, both to and from the
-destination. This option is ignored if the \fB-U\fR option is used.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR\fR
-.ad
-.RS 24n
-Show network addresses as numbers. \fBping\fR normally does a reverse name
-lookup on the IP addresses it extracts from the packets received. The \fB-n\fR
-option blocks the reverse lookup, so \fBping\fR prints IP addresses instead of
-host names.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR\ \fIport\fR\fR
-.ad
-.RS 24n
-Set the base \fBUDP\fR \fIport\fR number used in probes. This option is used
-with the \fB-U\fR option. The default base \fIport\fR number is 33434. The
-\fBping\fR utility starts setting the destination port number of \fBUDP\fR
-packets to this base and increments it by one at each probe.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-r\fR\fR
-.ad
-.RS 24n
-Bypass the normal routing tables and send directly to a host on an attached
-network. If the host is not on a directly attached network, an error is
-returned. This option can be used to \fBping\fR a local host through an
-interface that has been dropped by the router daemon. See \fBin.routed\fR(1M).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR\fR
-.ad
-.RS 24n
-Send one datagram per second and collect statistics.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-t\fR\ \fIttl\fR\fR
-.ad
-.RS 24n
-Specify the IPv4 time to live, or IPv6 hop limit, for unicast and multicast
-packets. The default time to live (hop limit) for unicast packets can be set
-with the \fBndd\fR module, \fB/dev/icmp\fR, using the \fBicmp_ipv4_ttl\fR
-variable for IPv4 and the \fBicmp_ipv6_hoplimit\fR variable for IPv6. The
-default time to live (hop limit) for multicast is one hop. See \fBEXAMPLES\fR.
-For further information, see \fBndd\fR(1M).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.RS 24n
-Verbose output. List any \fBICMP\fR (\fBICMP6\fR) packets, other than replies
-from the target host.
-.RE
-
-.SH OPERANDS
-.ne 2
-.na
-\fB\fIhost\fR\fR
-.ad
-.RS 8n
-The network host
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRUsing \fBping\fR With IPv6
-.sp
-.LP
-This example shows \fBping\fR sending probe packets to all the IPv6 addresses
-of the host \fBxyz\fR, one at a time. It sends an \fBICMP6\fR
-\fBECHO_REQUEST\fR every second until the user interrupts it.
-
-.sp
-.in +2
-.nf
-istanbul% \fBping -s -A inet6 -a xyz\fR
-PING xyz: 56 data bytes
-64 bytes from xyz (4::114:a00:20ff:ab3d:83ed): icmp_seq=0. time=0.479 ms
-64 bytes from xyz (fec0::114:a00:20ff:ab3d:83ed): icmp_seq=1. time=0.843 ms
-64 bytes from xyz (4::114:a00:20ff:ab3d:83ed): icmp_seq=2. time=0.516 ms
-64 bytes from xyz (fec0::114:a00:20ff:ab3d:83ed): icmp_seq=3. time=4.943 ms
-64 bytes from xyz (4::114:a00:20ff:ab3d:83ed): icmp_seq=4. time=0.485 ms
-64 bytes from xyz (fec0::114:a00:20ff:ab3d:83ed): icmp_seq=5. time=2.201 ms
-^C
-----xyz PING Statistics----
-6 packets transmitted, 6 packets received, 0% packet loss
-round-trip (ms) min/avg/stddev = 0.479/1.583/4.943/1.823
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRUsing \fBndd\fR to Set the \fBicmp_ipv6_hoplimit\fR
-.sp
-.LP
-This example shows the \fBndd\fR module, \fB/dev/icmp\fR, used to set the
-\fBicmp_ipv6_hoplimit\fR.
-
-.sp
-.in +2
-.nf
-# ndd -set /dev/icmp icmp_ipv6_hoplimit 100
-.fi
-.in -2
-.sp
-
-.SH EXIT STATUS
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 12n
-Successful operation; the machine is alive.
-.RE
-
-.sp
-.ne 2
-.na
-\fBnon-zero\fR
-.ad
-.RS 12n
-An error has occurred. Either a malformed argument has been specified, or the
-machine was not alive.
-.RE
-
-.SH SEE ALSO
-.LP
-\fBifconfig\fR(1M), \fBin.routed\fR(1M), \fBndd\fR(1M), \fBnetstat\fR(1M),
-\fBrpcinfo\fR(1M), \fBtraceroute\fR(1M), \fBattributes\fR(5), \fBicmp\fR(7P),
-\fBicmp6\fR(7P)
-
-.SH DIAGNOSTICS
-.ne 2
-.na
-\fBping: warning: ICMP responses received, but name service lookups
-are taking a while. Use ping -n to disable name service lookups.\fR
-.ad
-.sp .6
-.RS 4n
-When the
-.B -n
-flag is not specified,
-.B ping
-tries to lookup the name corresponding to the IP address that it
-received via name services. If name services are unavailable, it may
-take time before the system properly times out the name service lookups.
-As a result, it may appear that no ICMP replies are being received when
-they in fact are. This diagnostic indicates that this has occurred and
-indicates that there are valid responses and that using the
-.B -n
-flag will stop this from occurring.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBping: warning: timing accuracy diminished -- setsockopt
-SO_TIMESTAMP failed\fR\fR
-.ad
-.sp .6
-.RS 4n
-By default, the system attempts to use the
-.B SO_TIMESTAMP
-socket option to allow for more accurate time stamps that reflect when
-the ICMP echo replies were received by the system as opposed to when
-they were received by the
-.B ping
-command. These differences may occur because an operator stopped the
-process or because
-.B ping
-was blocked up behind a name service look up. When this diagnostic is
-emitted, the
-.B ping
-command will continue to function, but it will be doing the time
-stamping itself, which may cause the timing intervals reported to be
-longer than they actually are.
-.RE
diff --git a/usr/src/man/man1m/pkgadd.1m b/usr/src/man/man1m/pkgadd.1m
deleted file mode 100644
index 65120ba7d5..0000000000
--- a/usr/src/man/man1m/pkgadd.1m
+++ /dev/null
@@ -1,470 +0,0 @@
-'\" te
-.\" Copyright (c) 2017 Peter Tribble.
-.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PKGADD 1M "Mar 2, 2017"
-.SH NAME
-pkgadd \- transfer software packages to the system
-.SH SYNOPSIS
-.LP
-.nf
-\fBpkgadd\fR [\fB-nv\fR] [\fB-a\fR \fIadmin\fR] [\fB-G\fR] [ [\fB-M\fR] \fB-R\fR \fIroot_path\fR]
- [\fB-r\fR \fIresponse\fR] [\fB-V\fR \fIfs_file\fR]
- [\fB-d\fR \fIdevice\fR | \fB-d\fR \fIdatastream\fR \fIpkginst\fR | all]
- [\fIpkginst\fR | \fB-Y\fR \fIcategory\fR [\fI, category\fR]...]
-.fi
-
-.LP
-.nf
-\fBpkgadd\fR \fB-s\fR [\fB-d\fR \fIdevice\fR | \fB-d\fR \fIdatastream\fR \fIpkginst\fR | all]
- [\fIpkginst\fR | \fB-Y\fR \fIcategory\fR [\fI, category\fR]...]
-.fi
-
-.SH DESCRIPTION
-.LP
-\fBpkgadd\fR transfers the contents of a software package from the distribution
-medium or directory to install it onto the system. Used without the \fB-d\fR
-\fIdevice\fR source specifier, \fBpkgadd\fR looks in the default spool
-directory (\fB/var/spool/pkg\fR) for the package. Used with the \fB-s\fR
-option, it writes the package to a spool directory instead of installing it.
-.sp
-.LP
-The \fBpkgadd\fR utility requires an amount of temporary space the size of the
-package that is being installed. \fBpkgadd\fR determines which temporary
-directory to use by checking for the existence of the \fB$TMPDIR\fR environment
-variable. If \fB$TMPDIR\fR is not defined, \fBpkgadd\fR uses \fBP_tmpdir\fR
-from \fBstdio.h\fR. \fBP_tmpdir\fR has a default of \fB/var/tmp/\fR.
-.sp
-.LP
-Certain unbundled and third-party packages are no longer entirely compatible
-with the latest version of \fBpkgadd\fR. These packages require user
-interaction throughout the installation and not just at the very beginning, or
-require that their request scripts be run as the root user.
-.sp
-.LP
-To install these older packages (released prior to Solaris 2.4), set the
-following environment variable: \fBNONABI_SCRIPTS=TRUE\fR
-.sp
-.LP
-As long as this environment variable is set, \fBpkgadd\fR permits keyboard
-interaction throughout the installation and package request scripts are run as
-\fBroot\fR.
-.sp
-.LP
-If you have package request scripts that require running as user \fBroot\fR
-(instead of \fBnoaccess\fR [the default] or user \fBinstall\fR), use the
-\fBrscript_alt\fR parameter in the \fBadmin\fR(4) file to make an appropriate
-selection. See \fBadmin\fR(4).
-.sp
-.LP
-Note that, in Solaris 8 and Solaris 9, the default user when running a request
-script was either \fBroot\fR or \fBnobody\fR, depending on the operating
-system's patch level. In the current release, the default user is
-\fBnoaccess\fR.
-.sp
-.LP
-When running \fBpkgadd\fR in the global zone (see \fBzones\fR(5)), a package
-that contains a request script (see \fBpkgask\fR(1M)) is added only to the
-global zone. The package is not propagated to any current or
-yet-to-be-installed non-global zone. This behavior mimics the effect of the
-\fB-G\fR option, described below.
-.sp
-.LP
-Package commands are \fBlargefile\fR(5)-aware. They handle files larger than 2
-GB in the same way they handle smaller files. In their current implementations,
-\fBpkgadd\fR, \fBpkgtrans\fR(1) and other package commands can process a
-datastream of up to 4 GB.
-.sp
-.LP
-The \fB-d\fR, \fB-Y\fR, and \fIpkginst\fR arguments shown in the SYNOPSIS are
-described under OPERANDS, following OPTIONS.
-.SH OPTIONS
-.LP
-The supported options are described as follows. The \fB-d\fR \fIdevice\fR
-source specifier is described under OPERANDS, below.
-.sp
-.ne 2
-.na
-\fB\fB\fR\fB-a\fR \fIadmin\fR\fR
-.ad
-.sp .6
-.RS 4n
-Define an installation administration file, \fIadmin\fR, to be used in place of
-the default administration file. The token \fBnone\fR overrides the use of any
-\fIadmin\fR file, and thus forces interaction with the user. Unless a full path
-name is given, \fBpkgadd\fR first looks in the current working directory for
-the administration file. If the specified administration file is not in the
-current working directory, \fBpkgadd\fR looks in the
-\fB/var/sadm/install/admin\fR directory for the administration file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-G\fR\fR
-.ad
-.sp .6
-.RS 4n
-Add package(s) in the current zone only. When used in the global zone, the
-package is added to the global zone only and is not propagated to any existing
-or yet-to-be-created non-global zone. When used in a non-global zone, the
-package(s) are added to the non-global zone only.
-.sp
-This option causes package installation to fail if, in the \fBpkginfo\fR file
-for a package, \fBSUNW_PKG_ALLZONES\fR is set to true. See \fBpkginfo\fR(4).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-M\fR\fR
-.ad
-.sp .6
-.RS 4n
-Instruct \fBpkgadd\fR not to use the \fB$\fR\fIroot_path\fR\fB/etc/vfstab\fR
-file for determining the client's mount points. This option assumes the mount
-points are correct on the server and it behaves consistently with Solaris 2.5
-and earlier releases.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR\fR
-.ad
-.sp .6
-.RS 4n
-Installation occurs in non-interactive mode. Suppress output of the list of
-installed files. The default mode is interactive.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\fR\fB-r\fR \fIresponse\fR\fR
-.ad
-.sp .6
-.RS 4n
-Identify a file or directory which contains output from a previous
-\fBpkgask\fR(1M) session. This file supplies the interaction responses that
-would be requested by the package in interactive mode. \fIresponse\fR must be a
-full pathname.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-R\fR \fIroot_path\fR\fR
-.ad
-.sp .6
-.RS 4n
-Define the full path name of a directory to use as the \fIroot_path\fR. All
-files, including package system information files, are relocated to a directory
-tree starting in the specified \fIroot_path\fR. The \fIroot_path\fR may be
-specified when installing to a client from a server (for example,
-\fB/export/root/client1\fR).
-.LP
-Note -
-.sp
-.RS 2
-The root file system of any non-global zones must not be referenced with the
-\fB-R\fR option. Doing so might damage the global zone's file system, might
-compromise the security of the global zone, and might damage the non-global
-zone's file system. See \fBzones\fR(5).
-.RE
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\fR\fB-s\fR \fIspool\fR\fR
-.ad
-.sp .6
-.RS 4n
-Write the package into the directory \fIspool\fR instead of installing it.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.sp .6
-.RS 4n
-Trace all of the scripts that get executed by \fBpkgadd\fR, located in the
-\fIpkginst\fR\fB/install\fR directory. This option is used for debugging the
-procedural and non-procedural scripts.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-V\fR \fIfs_file\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify an alternative \fIfs_file\fR to map the client's file systems. For
-example, used in situations where the \fB$\fR\fIroot_path\fR\fB/etc/vfstab\fR
-file is non-existent or unreliable.
-.RE
-
-.sp
-.LP
-When executed without options or operands, \fBpkgadd\fR uses
-\fB/var/spool/pkg\fR (the default spool directory).
-.SH OPERANDS
-.LP
-The following operands are supported:
-.SS "Sources"
-.LP
-By default, pkgadd looks in the \fB/var/spool/pkg\fR directory when searching
-for instances of a package to install or spool. Optionally, the source for the
-package instances to be installed or spooled can be specified using:
-.sp
-.ne 2
-.na
-\fB\fB-d\fR \fIdevice\fR\fR
-.ad
-.br
-.na
-\fB\fB-d\fR \fIdatastream\fR \fIpkgname\fR,... | \fBall\fR\fR
-.ad
-.sp .6
-.RS 4n
-Install or copy a package from \fIdevice\fR. \fIdevice\fR can be any of the
-following:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-A full path name to a directory or the identifiers for tape, floppy disk, or
-removable disk (for example, \fB/var/tmp\fR or
-\fB/floppy/\fIfloppy_name\fR\fR).
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-A device alias (for example, \fB/floppy/floppy0\fR).
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-A datastream created by \fBpkgtrans\fR (see \fBpkgtrans\fR(1)).
-.RE
-The second form of the \fB-d\fR specifier, above, indicates the syntax you use
-when specifying a datastream. In this case you must specify either a
-comma-separated list of package names or the keyword \fBall\fR.
-.RE
-
-.SS "Instances"
-.LP
-By default, \fBpkgadd\fR searches the specified source, and presents an
-interactive menu allowing the user to select which package instances found on
-the source are to be installed. As an alternative, the package instances to be
-installed can be specified using:
-.sp
-.ne 2
-.na
-\fB\fIpkginst\fR\fR
-.ad
-.sp .6
-.RS 4n
-The package instance or list of instances to be installed. The token \fBall\fR
-may be used to refer to all packages available on the source medium. The format
-\fIpkginst\fR\fB\&.*\fR can be used to indicate all instances of a package.
-.sp
-The asterisk character (\fB*\fR) is a special character to some shells and may
-need to be escaped. In the C-Shell, the asterisk must be surrounded by single
-quotes (\fB\&'\fR) or preceded by a backslash (\fB\e\fR).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-Y\fR \fIcategory\fR[,\fIcategory\fR...]\fR
-.ad
-.sp .6
-.RS 4n
-Install packages based on the value of the \fBCATEGORY\fR parameter stored in
-the package's \fBpkginfo\fR(4) file. All packages on the source medium whose
-\fBCATEGORY\fR matches one of the specified categories will be selected for
-installation or spooling.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRInstalling a Package from a Solaris DVD
-.sp
-.LP
-The following example installs a package from a Solaris DVD. You are prompted
-for the name of the package you want to install.
-
-.sp
-.in +2
-.nf
-example# \fBpkgadd -d /cdrom/cdrom0/s0/Solaris_10/Product\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRInstalling a Set of Packages from a Datastream
-.sp
-.LP
-The example command shown below installs all of the packages in the datastream
-specified by the \fB-d\fR source specifier. Prior to this command, this
-datastream must have been created with the \fBpkgtrans\fR(1) command.
-
-.sp
-.in +2
-.nf
-example# \fBpkgadd -d /var/tmp/datastream all\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The keyword \fBall\fR specifies that all of the packages found in the
-designated datastream will be installed.
-
-.SH EXIT STATUS
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.sp .6
-.RS 4n
-Successful completion
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB1\fR\fR
-.ad
-.sp .6
-.RS 4n
-Fatal error.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB2\fR\fR
-.ad
-.sp .6
-.RS 4n
-Warning.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB3\fR\fR
-.ad
-.sp .6
-.RS 4n
-Interruption.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB4\fR\fR
-.ad
-.sp .6
-.RS 4n
-Administration.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB5\fR\fR
-.ad
-.sp .6
-.RS 4n
-Administration. Interaction is required. Do not use \fBpkgadd\fR \fB-n\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB10\fR\fR
-.ad
-.sp .6
-.RS 4n
-Reboot after installation of all packages.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB20\fR\fR
-.ad
-.sp .6
-.RS 4n
-Reboot after installation of this package.
-.RE
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/var/sadm/install/logs/\fR\fR
-.ad
-.sp .6
-.RS 4n
-Location where \fBpkgadd\fR logs an instance of software installation.
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-.LP
-\fBpkginfo\fR(1), \fBpkgmk\fR(1), \fBpkgparam\fR(1), \fBpkgproto\fR(1),
-\fBpkgtrans\fR(1), \fBinstallf\fR(1M), \fBpkgadm\fR(1M), \fBpkgask\fR(1M),
-\fBpkgchk\fR(1M), \fBpkgrm\fR(1M), \fBremovef\fR(1M), \fBadmin\fR(4),
-\fBpkginfo\fR(4), \fBattributes\fR(5), \fBlargefile\fR(5), \fBzones\fR(5)
-
-.SH NOTES
-.LP
-When transferring a package to a spool directory, the \fB-r\fR, \fB-n\fR, and
-\fB-a\fR options cannot be used.
-.sp
-.LP
-The \fB-r\fR option can be used to indicate a directory name as well as a
-filename. The directory can contain numerous response files, each sharing the
-name of the package with which it should be associated. This would be used, for
-example, when adding multiple interactive packages with one invocation of
-\fBpkgadd\fR. In this situation, each package would need a response file. If
-you create response files with the same name as the package (for example,
-\fBpkinst1\fR and \fBpkinst2\fR), then name the directory in which these files
-reside after the \fB-r\fR.
-.sp
-.LP
-The \fB-n\fR option causes the installation to halt if any interaction is
-needed to complete it.
-.sp
-.LP
-If the default \fIadmin\fR file is too restrictive, the administration file may
-need to be modified to allow for total non-interaction during a package
-installation. See \fBadmin\fR(4) for details.
diff --git a/usr/src/man/man1m/pkgadm.1m b/usr/src/man/man1m/pkgadm.1m
deleted file mode 100644
index b204fe0f4f..0000000000
--- a/usr/src/man/man1m/pkgadm.1m
+++ /dev/null
@@ -1,187 +0,0 @@
-'\" te
-.\" Copyright (c) 2017 Peter Tribble.
-.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
-.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PKGADM 1M "Mar 2, 2017"
-.SH NAME
-pkgadm \- manage packaging system
-.SH SYNOPSIS
-.LP
-.nf
-\fBpkgadm dbstatus\fR [\fB-R\fR \fIrootpath\fR]
-.fi
-
-.LP
-.nf
-\fBpkgadm sync\fR [\fB-R\fR \fIrootpath\fR] [\fB-q\fR]
-.fi
-
-.LP
-.nf
-\fBpkgadm\fR \fB-V\fR
-.fi
-
-.LP
-.nf
-\fBpkgadm\fR \fB-?\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBpkgadm\fR utility is used for managing the packaging
-system. It has several subcommands that perform various operations relating to
-packaging.
-.sp
-.ne 2
-.na
-\fB\fBsync\fR\fR
-.ad
-.sp .6
-.RS 4n
-Writes the contents file and rolls the contents log file. With use of the
-\fB-q\fR option, forces the contents file server to quit.
-.RE
-
-.SS "Internal Install Database"
-.LP
-The Solaris operating system relies upon enhanced System V revision 4 (SVr4)
-packages as the basis for its software installation and revision management.
-The package maintenance software stores information about installed packages in
-an internal database. The \fBpkgadm\fR subcommand \fBdbstatus\fR is used to
-determine how the package internal database is implemented. The \fBdbstatus\fR
-command returns a string that indicates the type of internal database in use.
-In the current implementation, the \fBdbstatus\fR command always returns the
-string \fBtext\fR, which indicates that the \fBcontents\fR(4) package database
-is in use. Future releases of Solaris might supply alternative database
-implementations.
-.SH OPTIONS
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-q\fR\fR
-.ad
-.sp .6
-.RS 4n
-(Applies to \fBsync\fR subcommand.) Shuts down the contents file cache daemon.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-R\fR \fIrootpath\fR\fR
-.ad
-.sp .6
-.RS 4n
-Defines the full name of a directory to use as the root (\fB/\fR) path.
-.LP
-Note -
-.sp
-.RS 2
-The root file system of any non-global zones must not be referenced with the
-\fB-R\fR option. Doing so might damage the global zone's file system, might
-compromise the security of the global zone, and might damage the non-global
-zone's file system. See \fBzones\fR(5).
-.RE
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-V\fR\fR
-.ad
-.sp .6
-.RS 4n
-Print version associated with packaging tools.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-?\fR\fR
-.ad
-.sp .6
-.RS 4n
-Print help message.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRSynchronizing the contents file
-.sp
-.LP
-The following example forces any pending changes to the contents(4) file to be flushed and the pkgserv daemon to shut down.
-
-.sp
-.in +2
-.nf
-example% pkgadm sync -q
-.fi
-.in -2
-.sp
-
-.SH EXIT STATUS
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.sp .6
-.RS 4n
-successful completion
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnon-zero\fR\fR
-.ad
-.sp .6
-.RS 4n
-fatal error
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-.LP
-\fBpkginfo\fR(1), \fBpkgmk\fR(1), \fBpkgparam\fR(1), \fBpkgproto\fR(1),
-\fBpkgtrans\fR(1), \fBsvcs\fR(1), \fBinstallf\fR(1M), \fBpkgadd\fR(1M),
-\fBpkgask\fR(1M), \fBpkgrm\fR(1M), \fBremovef\fR(1M), \fBsvcadm\fR(1M),
-\fBadmin\fR(4), \fBcontents\fR(4), \fBexec_attr\fR(4), \fBpkginfo\fR(4),
-\fBattributes\fR(5), \fBrbac\fR(5), \fBsmf\fR(5)
-.sp
-.LP
-\fI\fR
-.SH NOTES
-.LP
-The service for \fBpkgadm\fR is managed by the service management facility,
-\fBsmf\fR(5), under the service identifier:
-.sp
-.in +2
-.nf
-svc:/system/pkgserv
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Administrative actions on this service, such as enabling, disabling, or
-requesting restart, can be performed using \fBsvcadm\fR(1M). The service's
-status can be queried using the \fBsvcs\fR(1) command.
diff --git a/usr/src/man/man1m/pkgask.1m b/usr/src/man/man1m/pkgask.1m
deleted file mode 100644
index 620631f350..0000000000
--- a/usr/src/man/man1m/pkgask.1m
+++ /dev/null
@@ -1,131 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 1998, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PKGASK 1M "Apr 6, 2005"
-.SH NAME
-pkgask \- stores answers to a request script
-.SH SYNOPSIS
-.LP
-.nf
-\fBpkgask\fR [\fB-d\fR \fIdevice\fR] [\fB-R\fR \fIroot_path\fR] \fB-r\fR \fIresponse\fR \fIpkginst\fR...
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBpkgask\fR allows the administrator to store answers to an interactive
-package (one with a \fBrequest\fR script, that is, a user-created file that
-must be named \fBrequest\fR). Invoking this command generates a response file
-that is then used as input at installation time. The use of this response file
-prevents any interaction from occurring during installation since the file
-already contains all of the information the package needs.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported
-.sp
-.ne 2
-.na
-\fB\fB-d\fR\fI device\fR\fR
-.ad
-.RS 16n
-Run the request script for a package on \fIdevice\fR. \fIdevice\fR can be a
-directory pathname or the identifiers for tape, floppy disk or removable disk
-(for example, \fB/var/tmp\fR, \fB/dev/diskette\fR, and \fB/dev/dsk/c1d0s0\fR).
-The default device is the installation spool directory.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-R\fR\fI root_path\fR\fR
-.ad
-.RS 16n
-Define the full path name of a directory to use as the \fIroot_path\fR. All
-files, including package system information files, are relocated to a directory
-tree starting in the specified \fIroot_path\fR.
-.LP
-Note -
-.sp
-.RS 2
-The root file system of any non-global zones must not be referenced with the
-\fB-R\fR option. Doing so might damage the global zone's file system, might
-compromise the security of the global zone, and might damage the non-global
-zone's file system. See \fBzones\fR(5).
-.RE
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-r\fR\fI response\fR\fR
-.ad
-.RS 16n
-Identify a file or directory which should be created to contain the responses
-to interaction with the package. The name must be a full pathname. The file, or
-directory of files, can later be used as input to the \fBpkgadd\fR(1M) command.
-.RE
-
-.SH OPERANDS
-.sp
-.LP
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fB\fIpkginst\fR\fR
-.ad
-.RS 11n
-Specify the package instance, or list of instances for which \fBrequest\fR
-scripts will be created. The token \fBall\fR may be used to refer to all
-packages available on the source medium.
-.RE
-
-.SH EXIT STATUS
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 6n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB>0\fR\fR
-.ad
-.RS 6n
-An error occurred.
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBpkginfo\fR(1), \fBpkgmk\fR(1), \fBpkgparam\fR(1), \fBpkgproto\fR(1),
-\fBpkgtrans\fR(1), \fBinstallf\fR(1M), \fBpkgadd\fR(1M), \fBpkgchk\fR(1M),
-\fBpkgrm\fR(1M), \fBremovef\fR(1M), \fBadmin\fR(4), \fBattributes\fR(5)
-.sp
-.LP
-\fI\fR
-.SH NOTES
-.sp
-.LP
-The \fB-r\fR option can be used to indicate a directory name as well as a
-filename. The directory name is used to create numerous response files, each
-sharing the name of the package with which it should be associated. This would
-be used, for example, when you will be adding multiple interactive packages
-with one invocation of \fBpkgadd\fR(1M). Each package would need a response
-file. To create multiple response files with the same name as the package
-instance, name the directory in which the files should be created and supply
-multiple instance names with the \fBpkgask\fR command. When installing the
-packages, you will be able to identify this directory to the \fBpkgadd\fR(1M)
-command.
-.sp
-.LP
-If the default \fBadmin\fR file is too restrictive, the administration file may
-need to be modified to allow for total non-interaction during a package
-installation. See \fBadmin\fR(4) for details.
diff --git a/usr/src/man/man1m/pkgchk.1m b/usr/src/man/man1m/pkgchk.1m
deleted file mode 100644
index eb0600dc28..0000000000
--- a/usr/src/man/man1m/pkgchk.1m
+++ /dev/null
@@ -1,414 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PKGCHK 1M "Oct 30, 2007"
-.SH NAME
-pkgchk \- check package installation accuracy
-.SH SYNOPSIS
-.LP
-.nf
-\fBpkgchk\fR [\fB-l\fR | \fB-acfnqvx\fR] [\fB-i\fR \fIfile\fR | -]
- [\fB-p\fR \fIpath\fR... | \fB-P\fR \fIpartial-path\fR...] [\fB-R\fR \fIroot_path\fR]
- [ [\fB-m\fR \fIpkgmap\fR [\fB-e\fR \fIenvfile\fR]] | pkginst... | \fB-Y\fR \fIcategory\fR,\fIcategory\fR\&.\|.\|.]
-.fi
-
-.LP
-.nf
-\fBpkgchk\fR \fB-d\fR \fIdevice\fR [\fB-l\fR | \fB-fv\fR] [\fB-i\fR \fIfile\fR | -] [\fB-M\fR] [\fB-p\fR \fIpath\fR]...
- [\fB-V\fR \fIfs_file\fR]
- [pkginst... | \fB-Y\fR \fIcategory\fR[,\fIcategory\fR\&.\|.\|.]]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBpkgchk\fR checks the accuracy of installed files or, by using the \fB-l\fR
-option, displays information about package files. \fBpkgchk\fR checks the
-integrity of directory structures and files. Discrepancies are written to
-standard error along with a detailed explanation of the problem.
-.sp
-.LP
-The first synopsis defined above is used to list or check the contents and/or
-attributes of objects that are currently installed on the system, or in the
-indicated \fBpkgmap\fR. Package names may be listed on the command line, or by
-default, the entire contents of a machine will be checked.
-.sp
-.LP
-The second synopsis is used to list or check the contents of a package which
-has been spooled on the specified device, but not installed. Note that
-attributes cannot be checked for spooled packages.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-a\fR\fR
-.ad
-.sp .6
-.RS 4n
-Audit the file attributes only and do not check file contents. Default is to
-check both.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-c\fR\fR
-.ad
-.sp .6
-.RS 4n
-Audit the file contents only and do not check file attributes. Default is to
-check both.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\fR\fB-d\fR \fIdevice\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify the device on which a spooled package resides. \fIdevice\fR can be a
-directory path name or the identifiers for tape, floppy disk, or removable disk
-(for example, \fB/var/tmp\fR or \fB/dev/diskette\fR).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\fR\fB-e\fR \fIenvfile\fR\fR
-.ad
-.sp .6
-.RS 4n
-Request that the package information file named as \fIenvfile\fR be used to
-resolve parameters noted in the specified \fBpkgmap\fR file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR\fR
-.ad
-.sp .6
-.RS 4n
-Correct file attributes if possible. If used with the \fB-x\fR option, this
-option removes hidden files. When \fBpkgchk\fR is invoked with this option, it
-creates directories, named pipes, links, and special devices if they do not
-already exist. If the \fB-d\fR option calls out an uninstalled package, the
-\fB-f\fR option will only take effect if the package is in directory (not
-stream) format. All file attributes will be set to agree with the entries in
-the \fBpkgmap\fR file except that setuid, setgid, and sticky bits will not be
-set in the mode.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\fR\fB-i\fR \fIfile\fR | \fB-\fR\fR
-.ad
-.sp .6
-.RS 4n
-Read a list of path names from \fIfile\fR or from stdin (\fB-\fR) and compare
-this list against the installation software database or the indicated
-\fBpkgmap\fR file. Path names that are not contained in \fIfile\fR or stdin are
-not checked.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR\fR
-.ad
-.sp .6
-.RS 4n
-List information on the selected files that make up a package. This option is
-not compatible with the \fB-a\fR, \fB-c\fR, \fB-f\fR, \fB-g\fR, and \fB-v\fR
-options.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-m\fR \fBpkgmap\fR\fR
-.ad
-.sp .6
-.RS 4n
-Check the package against the package map file, \fBpkgmap\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-M\fR\fR
-.ad
-.sp .6
-.RS 4n
-Instruct \fBpkgchk\fR not to use the \fB$\fR\fIroot_path\fR\fB/etc/vfstab\fR
-file for determining the client's mount points. This option assumes the mount
-points are correct on the server and it behaves consistently with Solaris 2.5
-and earlier releases.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR\fR
-.ad
-.sp .6
-.RS 4n
-Do not check volatile or editable files' contents. This should be used for most
-post-installation checking.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\fR\fB-p\fR \fIpath\fR\fR
-.ad
-.sp .6
-.RS 4n
-Check the accuracy only of the path name or path names listed. \fIpath\fR can
-be one or more path names separated by commas (or by whitespace, if the list is
-quoted).
-.sp
-To specify a \fIpath\fR that includes a comma, you must use the \fB-i\fR
-option, described above. See EXAMPLES.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\fR\fB-P\fR \fIpartial-path\fR\fR
-.ad
-.sp .6
-.RS 4n
-Check the accuracy of only the partial path name or path names listed.
-\fIpartial-path\fR can be one or more partial path names separated by commas
-(or by whitespace, if the list is quoted). This option can be used instead of
-\fB-p\fR and is not compatible with the other option. This option matches any
-path name that contains the string contained in the partial path. See the note
-about paths that contain commas in the description of \fB-p\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-q\fR\fR
-.ad
-.sp .6
-.RS 4n
-Quiet mode. Do not give messages about missing files.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-R\fR \fIroot_path\fR\fR
-.ad
-.sp .6
-.RS 4n
-Define the full name of a directory to use as the \fIroot_path\fR. All files,
-including package system information files, are relocated to a directory tree
-starting in the specified \fIroot_path\fR. The \fIroot_path\fR may be specified
-when installing to a client from a server (for example,
-\fB/export/root/client1\fR).
-.LP
-Note -
-.sp
-.RS 2
-The root file system of any non-global zones must not be referenced with the
-\fB-R\fR option. Doing so might damage the global zone's file system, might
-compromise the security of the global zone, and might damage the non-global
-zone's file system. See \fBzones\fR(5).
-.RE
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.sp .6
-.RS 4n
-Verbose mode. Files are listed as processed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-V\fR \fIfs_file\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify an alternative \fIfs_file\fR to map the client's file systems. For
-example, used in situations where the \fB$\fR\fIroot_path\fR\fB/etc/vfstab\fR
-file is non-existent or unreliable.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-x\fR\fR
-.ad
-.sp .6
-.RS 4n
-Search exclusive directories, looking for files which exist that are not in the
-installation software database or the indicated \fBpkgmap\fR file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-Y\fR \fIcategory\fR\fR
-.ad
-.sp .6
-.RS 4n
-Check packages based on the value of the \fBCATEGORY\fR parameter stored in the
-installed or spooled package's \fBpkginfo\fR(4) file.
-.RE
-
-.SH OPERANDS
-.sp
-.ne 2
-.na
-\fB\fIpkginst\fR\fR
-.ad
-.sp .6
-.RS 4n
-The package instance or instances to be checked. The format
-\fIpkginst\fR\fB\&.*\fR can be used to check all instances of a package. The
-default is to display all information about all installed packages.
-.sp
-The asterisk character (\fB*\fR) is a special character to some shells and may
-need to be escaped. In the C-Shell, an asterisk must be surrounded by single
-quotes (\fB\&'\fR) or preceded by a backslash (\e);
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIpartial-path\fR\fR
-.ad
-.sp .6
-.RS 4n
-A portion of a path, such as a file or directory name.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRUsing \fBpkgchk\fR for Displaying Package Installation
-Information
-.sp
-.LP
-The following example displays package installation information for
-\fB/usr/bin/ls\fR:
-
-.sp
-.in +2
-.nf
-example% \fBpkgchk -l -p /usr/bin/ls\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRChecking on Java Font Properties
-.sp
-.LP
-The following example displays package installation information for all Java
-font properties installed on the system.
-
-.sp
-.in +2
-.nf
-example% \fBpkgchk -l -P font.properties\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRSpecifying a Path That Contains a Comma
-.sp
-.LP
-Assume you want to specify the path:
-
-.sp
-.in +2
-.nf
-/platform/SUNW,Netra-T12/lib
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-List this path in a file. Here is one way in which you can do that:
-
-.sp
-.in +2
-.nf
-example% \fBecho "/platform/SUNW,Netra-T12/lib" > /tmp/p\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-You can then enter:
-
-.sp
-.in +2
-.nf
-example% \fBpkgchk -i /tmp/p -l\fR
-Pathname: /platform/SUNW,Netra-T12/lib
-Type: directory
-Expected mode: 0755
-Expected owner: root
-Expected group: bin
-Referenced by the following packages:
- SUNWcar
-Current status: installed
-.fi
-.in -2
-.sp
-
-.SH EXIT STATUS
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.sp .6
-.RS 4n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB>0\fR\fR
-.ad
-.sp .6
-.RS 4n
-An error occurred.
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBpkginfo\fR(1), \fBpkgtrans\fR(1), \fBpkgadd\fR(1M), \fBpkgask\fR(1M),
-\fBpkgrm\fR(1M), \fBpkginfo\fR(4), \fBattributes\fR(5), \fBlargefile\fR(5)
-.sp
-.LP
-\fI\fR
-.SH NOTES
-.sp
-.LP
-Package commands are \fBlargefile\fR(5)-aware. They handle files larger than 2
-GB in the same way they handle smaller files. In their current implementations,
-\fBpkgadd\fR(1M), \fBpkgtrans\fR(1) and other package commands can process a
-datastream of up to 4 GB.
diff --git a/usr/src/man/man1m/pkgrm.1m b/usr/src/man/man1m/pkgrm.1m
deleted file mode 100644
index ae73ea98bf..0000000000
--- a/usr/src/man/man1m/pkgrm.1m
+++ /dev/null
@@ -1,309 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PKGRM 1M "Oct 30, 2007"
-.SH NAME
-pkgrm \- remove a package from the system
-.SH SYNOPSIS
-.LP
-.nf
-\fBpkgrm\fR [\fB-nv\fR] [\fB-a\fR \fIadmin\fR] [ [\fB-A\fR | \fB-M\fR] \fB-R\fR \fIroot_path\fR]
- [\fB-V\fR \fIfs_file\fR]
- [pkginst... | \fB-Y\fR \fIcategory\fR[,\fIcategory\fR\&.\|.\|.]]
-.fi
-
-.LP
-.nf
-\fBpkgrm\fR \fB-s\fR \fIspool\fR
- [pkginst... | \fB-Y\fR \fIcategory\fR[,\fIcategory\fR\&.\|.\|.]]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBpkgrm\fR will remove a previously installed or partially installed package
-from the system. A check is made to determine if any other packages depend on
-the one being removed. If a dependency exists, the action taken is defined in
-the \fBadmin\fR file.
-.sp
-.LP
-The default state for the command is in interactive mode, meaning that prompt
-messages are given during processing to allow the administrator to confirm the
-actions being taken. Non-interactive mode can be requested with the \fB-n\fR
-option.
-.sp
-.LP
-The \fB-s\fR option can be used to specify the directory from which spooled
-packages should be removed.
-.sp
-.LP
-Certain unbundled and third-party packages are no longer entirely compatible
-with the latest version of \fBpkgrm\fR. These packages require user interaction
-throughout the removal and not just at the very beginning.
-.sp
-.LP
-To remove these older packages (released prior to Solaris 2.4), set the
-following environment variable:\fBNONABI_SCRIPTS=TRUE\fR \fBpkgrm\fR permits
-keyboard interaction throughout the removal as long as this environment
-variable is set.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-a\fR \fIadmin\fR\fR
-.ad
-.sp .6
-.RS 4n
-Use the installation administration file, \fBadmin\fR, in place of the default
-\fBadmin\fR file. \fBpkgrm\fR first looks in the current working directory for
-the administration file. If the specified administration file is not in the
-current working directory, \fBpkgrm\fR looks in the
-\fB/var/sadm/install/admin\fR directory for the administration file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-A\fR\fR
-.ad
-.sp .6
-.RS 4n
-Remove the package files from the client's file system, absolutely. If a file
-is shared with other packages, the default behavior is to not remove the file
-from the client's file system.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-M\fR\fR
-.ad
-.sp .6
-.RS 4n
-Instruct \fBpkgrm\fR not to use the \fB$\fR\fIroot_path\fR\fB/etc/vfstab\fR
-file for determining the client's mount points. This option assumes the mount
-points are correct on the server and it behaves consistently with Solaris 2.5
-and earlier releases.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR\fR
-.ad
-.sp .6
-.RS 4n
-Non-interactive mode. If there is a need for interaction, the command will
-exit.
-.sp
-Use of this option requires that at least one package instance be named upon
-invocation of the command. Certain conditions must exist for a package to be
-removed non-interactively or a non-restrictive \fBadmin\fR file needs to be
-used.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-R\fR \fIroot_path\fR\fR
-.ad
-.sp .6
-.RS 4n
-Defines the full path name of a directory to use as the \fIroot_path\fR. All
-files, including package system information files, are relocated to a directory
-tree starting in the specified \fIroot_path\fR.
-.LP
-Note -
-.sp
-.RS 2
-The root file system of any non-global zones must not be referenced with the
-\fB-R\fR option. Doing so might damage the global zone's file system, might
-compromise the security of the global zone, and might damage the non-global
-zone's file system. See \fBzones\fR(5).
-.RE
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR \fIspool\fR\fR
-.ad
-.sp .6
-.RS 4n
-Remove the specified package(s) from the directory \fIspool\fR. The default
-directory for spooled packages is \fB/var/sadm/pkg\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.sp .6
-.RS 4n
-Trace all of the scripts that get executed by \fBpkgrm\fR, located in the
-\fIpkginst\fR\fB/install\fR directory. This option is used for debugging the
-procedural and non-procedural scripts.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-V\fR \fIfs_file\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify an alternative \fIfs_file\fR to map the client's file systems. Used in
-situations where the \fB$\fR\fIroot_path\fR\fB/etc/vfstab\fR file is
-non-existent or unreliable.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-Y\fR \fIcategory\fR\fR
-.ad
-.sp .6
-.RS 4n
-Remove packages based on the value of the \fBCATEGORY\fR parameter stored in
-the installed or spooled package's \fBpkginfo\fR(4) file. No package with the
-\fBCATEGORY\fR value of \fBsystem\fR can removed from the file system with this
-option.
-.RE
-
-.SH OPERANDS
-.sp
-.LP
-The following operand is supported:
-.sp
-.ne 2
-.na
-\fB\fIpkginst\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the package to be removed. The format \fIpkginst\fR\fB\&.*\fR can be
-used to remove all instances of a package.
-.sp
-The asterisk character (\fB*\fR) is a special character to some shells and may
-need to be escaped. In the C-Shell, "\fB*\fR" must be surrounded by single
-quotes (\fB\&'\fR) or preceded by a backslash (\e).
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRRemoving All Instances of \fBSUNWjunk\fR from \fBclient1\fR
-.sp
-.LP
-The following example removes all instances of \fBSUNWjunk\fR from
-\fBclient1\fR:
-
-.sp
-.in +2
-.nf
-example% pkgrm \fB-R\fR /export/root/client1 SUNWjunk*
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Note the caveat on the use of the \fB-R\fR option in the description of that
-option, above.
-
-.SH EXIT STATUS
-.sp
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.sp .6
-.RS 4n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB1\fR\fR
-.ad
-.sp .6
-.RS 4n
-Fatal error.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB2\fR\fR
-.ad
-.sp .6
-.RS 4n
-Warning.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB3\fR\fR
-.ad
-.sp .6
-.RS 4n
-Interruption.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB4\fR\fR
-.ad
-.sp .6
-.RS 4n
-Administration.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB10\fR\fR
-.ad
-.sp .6
-.RS 4n
-Reboot after removal of all packages.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB20\fR\fR
-.ad
-.sp .6
-.RS 4n
-Reboot after removal of this package.
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBpkginfo\fR(1), \fBpkgmk\fR(1), \fBpkgparam\fR(1), \fBpkgproto\fR(1),
-\fBpkgtrans\fR(1), \fBinstallf\fR(1M), \fBpkgadd\fR(1M), \fBpkgask\fR(1M),
-\fBpkgchk\fR(1M), \fBremovef\fR(1M), \fBadmin\fR(4), \fBpkginfo\fR(4),
-\fBattributes\fR(5), \fBlargefile\fR(5)
-.sp
-.LP
-\fI\fR
-.SH NOTES
-.sp
-.LP
-Package commands are \fBlargefile\fR(5)-aware. They handle files larger than 2
-GB in the same way they handle smaller files. In their current implementations,
-\fBpkgadd\fR(1M), \fBpkgtrans\fR(1) and other package commands can process a
-datastream of up to 4 GB.
diff --git a/usr/src/man/man1m/plockstat.1m b/usr/src/man/man1m/plockstat.1m
deleted file mode 100644
index 5c22d6cfaf..0000000000
--- a/usr/src/man/man1m/plockstat.1m
+++ /dev/null
@@ -1,228 +0,0 @@
-'\" te
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PLOCKSTAT 1M "May 23, 2020"
-.SH NAME
-plockstat \- report user-level lock statistics
-.SH SYNOPSIS
-.nf
-\fBplockstat\fR [\fB-vACHV\fR] [\fB-n\fR \fIcount\fR] [\fB-s\fR \fIdepth\fR] [\fB-e\fR \fIsecs\fR]
- [\fB-x\fR \fIarg\fR [=val]] \fIcommand\fR [\fIarg\fR]...
-.fi
-
-.LP
-.nf
-\fBplockstat\fR [\fB-vACHV\fR] [\fB-n\fR \fIcount\fR] [\fB-s\fR \fIdepth\fR] [\fB-e\fR \fIsecs\fR]
- [\fB-x\fR \fIarg\fR [=val]] \fB-p\fR \fIpid\fR
-.fi
-
-.SH DESCRIPTION
-The \fBplockstat\fR utility gathers and displays user-level locking statistics.
-By default, \fBplockstat\fR monitors all lock contention events, gathers
-frequency and timing data about those events, and displays the data in
-decreasing frequency order, so that the most common events appear first.
-.sp
-.LP
-\fBplockstat\fR gathers data until the specified command completes or the
-process specified with the \fB-p\fR option completes.
-.sp
-.LP
-\fBplockstat\fR relies on DTrace to instrument a running process or a command
-it invokes to trace events of interest. This imposes a small but measurable
-performance overhead on the processes being observed. Users must have the
-\fBdtrace_proc\fR privilege and have permission to observe a particular process
-with \fBplockstat\fR. Refer to the \fIDynamic Tracing Guide\fR for more
-information about DTrace security features.
-.SH OPTIONS
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-A\fR\fR
-.ad
-.RS 16n
-Watch all lock events. This option is equivalent to \fB-CH\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-C\fR\fR
-.ad
-.RS 16n
-Watch contention events.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-H\fR\fR
-.ad
-.RS 16n
-Watch hold events.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-e\fR \fIsecs\fR\fR
-.ad
-.RS 16n
-Exit after the number of seconds specified have elapsed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR \fIcount\fR\fR
-.ad
-.RS 16n
-Display only the specified number of entries for each output category.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR \fIdepth\fR\fR
-.ad
-.RS 16n
-Record a stack trace rather than just the calling function.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR \fIpid\fR\fR
-.ad
-.RS 16n
-Specify a process ID from which \fBplockstat\fR is to gather data.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.RS 16n
-Print out a message to indicate that tracing has started.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-x\fR \fIarg\fR[=\fIval\fR]\fR
-.ad
-.RS 16n
-Enable or modify a DTrace runtime option or D compiler option. The list of
-options is found in the \fIDynamic Tracing Guide\fR. Boolean options
-are enabled by specifying their name. Options with values are set by separating
-the option name and value with an equals sign (\fB=\fR).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-V\fR\fR
-.ad
-.RS 16n
-Print the DTrace commands used to gather the data. The output can then be used
-directly with the \fBdtrace\fR(1M) command.
-.RE
-
-.SH OPERANDS
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fB\fIarg\fR\fR
-.ad
-.RS 11n
-A string to be passed as an argument to \fIcommand\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIcommand\fR\fR
-.ad
-.RS 11n
-The name of a utility to be invoked.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIcount\fR\fR
-.ad
-.RS 11n
-A positive integer value.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIpid\fR\fR
-.ad
-.RS 11n
-A process identifier for a process to be monitored.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIsecs\fR\fR
-.ad
-.RS 11n
-Duration specified as a positive integer number of seconds.
-.RE
-
-.SH EXIT STATUS
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 6n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB>\fB0\fR\fR
-.ad
-.RS 6n
-An error occurred.
-.RE
-
-.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability See below.
-.TE
-
-.sp
-.LP
-The command-line syntax is Evolving. The human-readable output is Unstable.
-.SH SEE ALSO
-\fBdtrace\fR(1M), \fBlockstat\fR(1M), \fBmutex_init\fR(3C),
-\fBpthread_mutex_lock\fR(3C), \fBpthread_rwlock_rdlock\fR(3C),
-\fBpthread_rwlock_wrlock\fR(3C), \fBpthread_rwlock_unlock\fR(3C),
-\fBrwlock\fR(3C), \fBattributes\fR(5), \fBfasttrap\fR(7D)
-.sp
-.LP
-\fIDynamic Tracing Guide\fR:
-.sp
-.LP
-https://illumos.org/books/dtrace/
diff --git a/usr/src/man/man1m/pmadm.1m b/usr/src/man/man1m/pmadm.1m
deleted file mode 100644
index a961c3050a..0000000000
--- a/usr/src/man/man1m/pmadm.1m
+++ /dev/null
@@ -1,586 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 1998, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PMADM 1M "Nov 10, 1998"
-.SH NAME
-pmadm \- port monitor administration
-.SH SYNOPSIS
-.LP
-.nf
-\fBpmadm\fR \fB-a\fR [\fB-p\fR \fIpmtag\fR | \fB-t\fR \fItype\fR] \fB-s\fR \fIsvctag\fR \fB-i\fR \fIid\fR \fB-m\fR \fIpmspecific\fR \fB-v\fR \fIver\fR
- [\fB-f\fR xu]
- [\fB-y\fR \fIcomment\fR] [\fB-z\fR \fI script\fR]
-.fi
-
-.LP
-.nf
-\fBpmadm\fR \fB-r\fR \fB-p\fR \fIpmtag\fR \fB-s\fR \fIsvctag\fR
-.fi
-
-.LP
-.nf
-\fBpmadm\fR \fB-e\fR \fB-p\fR \fIpmtag\fR \fB-s\fR \fIsvctag\fR
-.fi
-
-.LP
-.nf
-\fBpmadm\fR \fB-d\fR \fB-p\fR \fIpmtag\fR \fB-s\fR \fIsvctag\fR
-.fi
-
-.LP
-.nf
-\fBpmadm\fR \fB-l\fR [\fB-t\fR \fItype\fR | \fB-p\fR \fIpmtag\fR] [\fB-s\fR \fIsvctag\fR]
-.fi
-
-.LP
-.nf
-\fBpmadm\fR \fB-L\fR [\fB-t\fR \fItype\fR | \fB-p\fR \fIpmtag\fR] [\fB-s\fR \fIsvctag\fR]
-.fi
-
-.LP
-.nf
-\fBpmadm\fR \fB-g\fR \fB-p\fR \fIpmtag\fR \fB-s\fR \fIsvctag\fR [\fB-z\fR \fIscript\fR]
-.fi
-
-.LP
-.nf
-\fBpmadm\fR \fB-g\fR \fB-s\fR \fIsvctag\fR \fB-t\fR \fItype\fR \fB-z\fR \fIscript\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBpmadm\fR is the administrative command for the lower level of the Service
-Access Facility hierarchy, that is, for service administration. A port may have
-only one service associated with it although the same service may be available
-through more than one port. In order to uniquely identify an instance of a
-service, the \fBpmadm\fR command must identify both the port monitor or port
-monitors through which the service is available (\fB-p\fR or \fB-t\fR) and the
-service (\fB-s\fR). See .
-.sp
-.LP
-\fBpmadm\fR performs the following functions:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-adds or removes a service
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-enables or disables a service
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-installs or replaces a per-service configuration script
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-prints requested service information
-.RE
-.sp
-.LP
-Any user on the system may invoke \fBpmadm\fR to request service status
-(\fB-l\fR or \fB-L\fR) or to print per-service configuration scripts (\fB-g\fR
-without the \fB-z\fR option). \fBpmadm\fR with other options may be executed
-only by a privileged user.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-a\fR\fR
-.ad
-.RS 17n
-Add a service. \fBpmadm\fR adds an entry for the new service to the port
-monitor's administrative file. Because of the complexity of the options and
-arguments that follow the \fB-a\fR option, it may be convenient to use a
-command script or the menu system to add services.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-d\fR\fR
-.ad
-.RS 17n
-Disable a service. Add \fBx\fR to the flag field in the entry for the service
-\fIsvctag\fR in the port monitor's administrative file. This is the entry used
-by port monitor \fIpmtag\fR. See the \fB-f\fR option, below, for a description
-of the flags available.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-e\fR\fR
-.ad
-.RS 17n
-Enable a service. Remove \fBx\fR from the flag field in the entry for the
-service \fIsvctag\fR in the port monitor administrative file. This is the entry
-used by port monitor \fIpmtag\fR. See the \fB-f\fR option, below, for a
-description of the flags available.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR \fBxu\fR\fR
-.ad
-.RS 17n
-The \fB-f\fR option specifies one or both of the following two flags which are
-then included in the flag field of the entry for the new service in the port
-monitor's administrative file. If the \fB-f\fR option is not included, no flags
-are set and the default conditions prevail. By default, a new service is
-enabled and no \fButmpx\fR entry is created for it. An \fB-f\fR option without
-a following argument is illegal.
-.sp
-.ne 2
-.na
-\fB\fBx\fR\fR
-.ad
-.RS 5n
-Do not enable the service \fIsvctag\fR available through port monitor
-\fIpmtag\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBu\fR\fR
-.ad
-.RS 5n
-Create a \fButmpx\fR entry for service \fIsvctag\fR available through port
-monitor \fIpmtag\fR.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-g\fR\fR
-.ad
-.RS 17n
-Print, install, or replace a per-service configuration script. The \fB-g\fR
-option with a \fB-p\fR option and a \fB-s\fR option prints the per-service
-configuration script for service \fIsvctag\fR available through port monitor
-\fIpmtag\fR. The \fB-g\fR option with a \fB-p\fR option, a \fB-s\fR option, and
-a \fB-z\fR option installs the per-service configuration script contained in
-the file \fBscript\fR as the per-service configuration script for service
-\fIsvctag\fR available through port monitor \fIpmtag\fR. The \fB-g\fR option
-with a \fB- s\fR option, a \fB-t\fR option, and a \fB-z\fR option installs the
-file \fBscript\fR as the per-service configuration script for service
-\fIsvctag\fR available through any port monitor of type \fBtype\fR. Other
-combinations of options with \fB-g\fR are invalid.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-i\fR\fI id\fR\fR
-.ad
-.RS 17n
-\fBid\fR is the identity that is to be assigned to service \fIsvctag\fR when it
-is started. \fBid\fR must be an entry in \fB/etc/passwd\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR\fR
-.ad
-.RS 17n
-The \fB-l\fR option requests service information. Used by itself and with the
-options described below, it provides a filter for extracting information in
-several different groupings.
-.sp
-.ne 2
-.na
-\fB\fB-l\fR\fR
-.ad
-.RS 23n
-By itself, the \fB-l\fR option lists all services on the system.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\fR\fB-l\fR\fB \fR\fB-p\fR\fB \fR\fIpmtag\fR\fR
-.ad
-.RS 23n
-Lists all services available through port monitor \fIpmtag\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\fR\fB-l\fR\fB \fR\fB-s\fR\fB \fR\fIsvctag\fR\fR
-.ad
-.RS 23n
-Lists all services with tag \fIsvctag\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\fR\fB-l\fR\fB \fR\fB-p\fR\fB \fR\fIpmtag\fR\fB-s\fR\fIsvctag\fR\fR
-.ad
-.RS 23n
-Lists service \fIsvctag\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\fR\fB-l\fR\fB \fR\fB-t\fR\fB \fR\fItype\fR\fR
-.ad
-.RS 23n
-Lists all services available through port monitors of type \fBtype\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\fR\fB-l\fR\fB \fR\fB-t\fR\fB \fR\fItype\fR\fB-s\fR\fIsvctag\fR\fR
-.ad
-.RS 23n
-Lists all services with tag \fIsvctag\fR available through a port monitor of
-type \fBtype\fR.
-.RE
-
-Other combinations of options with \fB-l\fR are invalid.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-L\fR\fR
-.ad
-.RS 17n
-The \fB-L\fR option is identical to the \fB-l\fR option except that output is
-printed in a condensed format.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-m\fR\fI pmspecific\fR\fR
-.ad
-.RS 17n
-\fIpmspecific\fR is the port monitor-specific portion of the port monitor
-administrative file entry for the service.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR\fI pmtag\fR\fR
-.ad
-.RS 17n
-Specifies the tag associated with the port monitor through which a service
-(specified as \fB\fR\fB-s\fR\fB \fR\fIsvctag\fR) is available.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-r\fR\fR
-.ad
-.RS 17n
-Remove a service. When \fBpmadm\fR removes a service, the entry for the service
-is removed from the port monitor's administrative file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR\fI svctag\fR\fR
-.ad
-.RS 17n
-Specifies the service tag associated with a given service. The service tag is
-assigned by the system administrator and is part of the entry for the service
-in the port monitor's administrative file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-t\fR\fI type\fR\fR
-.ad
-.RS 17n
-Specifies the port monitor type.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fI ver\fR\fR
-.ad
-.RS 17n
-Specifies the version number of the port monitor administrative file. The
-version number may be given as
-.sp
-.in +2
-.nf
-\fB-v\fR \fB\&'\fR\fIpmspec\fR \fB-V\fR
-.fi
-.in -2
-.sp
-
-where \fIpmspec\fR is the special administrative command for port monitor
-\fIpmtag\fR. This special command is \fBttyadm\fR for \fBttymon\fR and
-\fBnlsadmin\fR for \fBlisten\fR. The version stamp of the port monitor is known
-by the command and is returned when \fIpmspec\fR is invoked with a \fB-V\fR
-option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-y\fR\fI comment\fR\fR
-.ad
-.RS 17n
-Associate \fIcomment\fR with the service entry in the port monitor
-administrative file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-z\fR\fI script\fR\fR
-.ad
-.RS 17n
-Used with the \fB-g\fR option to specify the name of the file that contains the
-per-service configuration script. Modifying a configuration script is a
-three-step procedure. First a copy of the existing script is made (\fB-g\fR
-alone). Then the copy is edited. Finally, the copy is put in place over the
-existing script (\fB-g\fR with \fB-z\fR).
-.RE
-
-.sp
-.LP
-Options that request information write the requested information to the
-standard output. A request for information using the \fB-l\fR option prints
-column headers and aligns the information under the appropriate headings. In
-this format, a missing field is indicated by a hyphen. A request for
-information in the condensed format using the \fB-L\fR option prints the
-information in colon-separated fields; missing fields are indicated by two
-successive colons. \fB#\fR is the comment character.
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRAdding a Service to a Port Monitor with the Tag \fBpmtag\fR
-.sp
-.LP
-The following command adds a service to a port monitor with tag \fBpmtag\fR and
-gives the service the tag \fBsvctag\fR. The port monitor-specific information
-is generated by \fBspecpm\fR. The service defined by \fBsvctag\fR will be
-invoked with identity \fBroot\fR.
-
-.sp
-.in +2
-.nf
-pmadm -a -p pmtag -s svctag -i root -m `specpm -a arg1 -b arg2`-v `specpm -V`
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRAdding a Service with Service Tab \fBsvctag\fR
-.sp
-.LP
-The following command adds a service with service tag \fBsvctag\fR, identity
-\fBguest\fR, and port monitor-specific information generated by \fBspecpm\fR to
-all port monitors of type \fBtype\fR:
-
-.sp
-.in +2
-.nf
-pmadm -a -s svctag -i guest -t type -m `specpm -a arg1 -b arg2`-v `specpm -V`
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRRemoving a Service
-.sp
-.LP
-The following command removes the service \fBsvctag\fR from port monitor
-\fBpmtag\fR:
-
-.sp
-.in +2
-.nf
-pmadm -r -p pmtag -s svctag
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 4 \fREnabling a Service
-.sp
-.LP
-The following command enables the service \fBsvctag\fR available through port
-monitor \fBpmtag\fR:
-
-.sp
-.in +2
-.nf
-pmadm -e -p pmtag -s svctag
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 5 \fRDisabling a Service
-.sp
-.LP
-The following command disables the service \fBsvctag\fR available through port
-monitor \fBpmtag\fR:
-
-.sp
-.in +2
-.nf
-pmadm -d -p pmtag -s svctag
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 6 \fRListing Status Information
-.sp
-.LP
-The following command lists status information for all services:
-
-.sp
-.in +2
-.nf
-pmadm -l
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 7 \fRListing Status Information
-.sp
-.LP
-The following command lists status information for all services available
-through the port monitor with tag \fBports\fR:
-
-.sp
-.in +2
-.nf
-pmadm -l -p ports
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 8 \fRListing Status Information in Condensed Format
-.sp
-.LP
-The following command lists the status information for all services available
-through the port monitor with tag \fBports\fR in condensed format:
-
-.sp
-.in +2
-.nf
-pmadm -L -p ports
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 9 \fRListing Status Information for All Services
-.sp
-.LP
-List status information for all services available through port monitors of
-type \fBlisten\fR:
-
-.sp
-.in +2
-.nf
-pmadm -l -t listen
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 10 \fRPrinting the per-service Configuration
-.sp
-.LP
-The following command prints the per-service configuration script associated
-with the service \fBsvctag\fR available through port monitor \fBpmtag\fR:
-
-.sp
-.in +2
-.nf
-pmadm -g -p pmtag -s svctag
-.fi
-.in -2
-.sp
-
-.SH EXIT STATUS
-.sp
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 6n
-Successful operation.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB>0\fR\fR
-.ad
-.RS 6n
-Operation failed.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/saf/\fR\fIpmtag\fR\fB/_config\fR\fR
-.ad
-.RS 26n
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/saf/\fR\fIpmtag\fR\fB/\fR\fIsvctag\fR\fR
-.ad
-.RS 26n
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/saf/\fR\fIpmtag\fR\fB/*\fR\fR
-.ad
-.RS 26n
-
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBsac\fR(1M), \fBsacadm\fR(1M), \fBdoconfig\fR(3NSL), \fBattributes\fR(5)
diff --git a/usr/src/man/man1m/pmconfig.1m b/usr/src/man/man1m/pmconfig.1m
deleted file mode 100644
index 05e34b317a..0000000000
--- a/usr/src/man/man1m/pmconfig.1m
+++ /dev/null
@@ -1,188 +0,0 @@
-'\" te
-.\" Copyright (c) 2017 Peter Tribble
-.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PMCONFIG 1M "May 1, 2017"
-.SH NAME
-pmconfig \- Configure the Power Management system
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/pmconfig\fR [\fB-r\fR]
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBpmconfig\fR utility sets the Power Management and suspend-resume
-configuration. User has permission to change Power Management configuration
-using \fBpmconfig\fR only if he is allowed to do so according to
-\fBPMCHANGEPERM\fR keyword of \fB/etc/default/power\fR. User has permission to
-change the suspend-resume configuration using \fBpmconfig\fR only if he is
-allowed to do so according to the \fBCPRCHANGEPERM\fR keyword of
-\fB/etc/default/power\fR. See FILES section below for a description of the
-\fBPMCHANGEPERM\fR and \fBCPRCHANGEPERM\fR keywords of
-\fB/etc/default/power\fR.
-.sp
-.LP
-Based on user permissions, \fBpmconfig\fR first resets the Power Management
-and/or suspend-resume state back to its default and then reads the new
-Power Management and/or suspend-resume configuration from
-\fB/etc/power.conf\fR and issues the commands to activate the new
-configuration. The \fBpmconfig\fR utility is run at system boot. This utility
-can also be run from the command line after manual changes have been made to
-the \fB/etc/power.conf\fR file. For changes made to the
-\fB/etc/power.conf\fR file to take effect, users must run \fBpmconfig\fR.
-.SH OPTIONS
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-r\fR\fR
-.ad
-.RS 6n
-Reset Power Management and suspend-resume state to default and exit. User
-must have both Power Management and suspend-resume configuration permission
-for this option.
-.RE
-
-.SH EXIT STATUS
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 5n
-Upon successful completion
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB>0\fR\fR
-.ad
-.RS 6n
-An error occurred
-.RE
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/etc/power.conf\fR\fR
-.ad
-.RS 22n
-System Power Management configuration file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/default/power\fR\fR
-.ad
-.RS 22n
-File that controls permissions for system's Power Management and
-suspend-resume features. The \fBPMCHANGEPERM\fR keyboard controls the Power
-Management configuration permissions, while the \fBCPRCHANGEPERM\fR keyword
-controls the suspend-resume configuration permissions.
-.RE
-
-.sp
-.LP
-Allowed values are:
-.sp
-.ne 2
-.na
-\fB\fBall\fR\fR
-.ad
-.RS 22n
-Any user can change the configuration.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-\fR\fR
-.ad
-.RS 22n
-No one except super-user can change the configuration.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB<user1, user2,...>\fR\fR
-.ad
-.RS 22n
-A user in this user list or a super-user can change the configuration. The
-user list is a space and/or comma (,) separated list. You must enclose the list
-in < and > characters.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBconsole-owner\fR\fR
-.ad
-.RS 22n
-A user who owns the system console device node or a super-user can change the
-configuration.
-.RE
-
-.sp
-.LP
-The default values are \fBPMCHANGEPERM=console-owner\fR and
-\fBCPRCHANGEPERM=console-owner\fR.
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Unstable
-.TE
-
-.SH SEE ALSO
-.LP
-\fBsvcs\fR(1), \fBpowerd\fR(1M), \fBpower.conf\fR(4), \fBsvcadm\fR(1M),
-\fBattributes\fR(5), \fBsmf\fR(5), \fBcpr\fR(7), \fBpm\fR(7D)
-.sp
-.LP
-\fIUsing Power Management\fR
-.SH NOTES
-.LP
-The \fBpmconfig\fR service is managed by the service management facility,
-\fBsmf\fR(5), under the service identifier:
-.sp
-.in +2
-.nf
-svc:/system/power:default
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Administrative actions on this service, such as enabling, disabling, or
-requesting restart, can be performed using \fBsvcadm\fR(1M). The service's
-status can be queried using the \fBsvcs\fR(1) command.
-.SH DIAGNOSTICS
-.LP
-If the program cannot open the configuration file, it prints an error message
-to standard error. If the program encounters a syntax error in the
-configuration file, it prints an error message and the line number of the error
-in the configuration file. It then skips the rest of the information on that
-line and processes the next line. Any configuration information already
-processed on the line containing the error is used. If user does not have
-permission to change Power Management and/or suspend-resume configuration, and
-configuration file has entries for which user doesn't have permission, it
-process the entries for which user has permissions and prints error on rest.
diff --git a/usr/src/man/man1m/polkit-is-privileged.1m b/usr/src/man/man1m/polkit-is-privileged.1m
deleted file mode 100644
index f521bdf9d8..0000000000
--- a/usr/src/man/man1m/polkit-is-privileged.1m
+++ /dev/null
@@ -1,111 +0,0 @@
-'\" te
-.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH POLKIT-IS-PRIVILEGED 1M "Aug 22, 2006"
-.SH NAME
-polkit-is-privileged \- check PolicyKit privileges
-.SH SYNOPSIS
-.LP
-.nf
-\fBpolkit-is-privileged\fR [\fB-hvV\fR] \fB-u\fR \fIuser\fR \fB-p\fR \fIprivilege\fR [\fB-r\fR \fIresource\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBpolkit-is-privileged\fR command queries system policy to determine
-whether a user is allowed for a given privilege and resource. The resource name
-can be omitted. On the Solaris operating system, RBAC authorizations names
-should be used as privilege names.
-.sp
-.LP
-Currently, the only consumer of PolicyKit is \fBhald\fR(1M).
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-h\fR, \fB--help\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display list of options and exit.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR \fIprivilege\fR, \fB--privilege\fR \fIprivilege\fR\fR
-.ad
-.sp .6
-.RS 4n
-Name of privilege associated with user. Command tests for this privilege.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-r\fR \fIresource\fR, \fB--resource\fR \fIresource\fR\fR
-.ad
-.sp .6
-.RS 4n
-Name of resource associated with user and privilege. Command tests for this
-resource.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-u\fR \fIuser\fR, \fB--user\fR \fIuser\fR\fR
-.ad
-.sp .6
-.RS 4n
-User name or user id that is tested for.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR, \fB--verbose\fR\fR
-.ad
-.sp .6
-.RS 4n
-Verbose mode.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-V\fR, \fB--version\fR\fR
-.ad
-.sp .6
-.RS 4n
-Displays version number.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Volatile
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBauths\fR(1), \fBprofiles\fR(1), \fBhald\fR(1M), \fBgetauthattr\fR(3SECDB),
-\fBauth_attr\fR(4), \fBpolicy.conf\fR(4), \fBprof_attr\fR(4),
-\fBuser_attr\fR(4), \fBattributes\fR(5)
diff --git a/usr/src/man/man1m/pooladm.1m b/usr/src/man/man1m/pooladm.1m
deleted file mode 100644
index 56b0745329..0000000000
--- a/usr/src/man/man1m/pooladm.1m
+++ /dev/null
@@ -1,262 +0,0 @@
-'\" te
-.\" Copyright (c) 2005, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH POOLADM 1M "Dec 1, 2005"
-.SH NAME
-pooladm \- activate and deactivate the resource pools facility
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/pooladm\fR [\fB-n\fR] [\fB-s\fR] [\fB-c\fR] [\fIfilename\fR] | \fB-x\fR
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/pooladm\fR [\fB-d\fR | \fB-e\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBpooladm\fR command provides administrative operations on pools and sets.
-\fBpooladm\fR reads the specified filename and attempts to activate the pool
-configuration contained in it.
-.sp
-.LP
-Before updating the current pool run-time configuration, \fBpooladm\fR
-validates the configuration for correctness.
-.sp
-.LP
-Without options, \fBpooladm\fR prints out the current running pools
-configuration.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-c\fR\fR
-.ad
-.RS 6n
-Instantiate the configuration at the given location. If a filename is not
-specified, it defaults to \fB/etc/pooladm.conf\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-d\fR\fR
-.ad
-.RS 6n
-Disable the pools facility so that pools can no longer be manipulated.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-e\fR\fR
-.ad
-.RS 6n
-Enable the pools facility so that pools can be manipulated.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR\fR
-.ad
-.RS 6n
-Validate the configuration without actually updating the current active
-configuration. Checks that there are no syntactic errors and that the
-configuration can be instantiated on the current system. No validation of
-application specific properties is performed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR\fR
-.ad
-.RS 6n
-Update the specified location with the details of the current dynamic
-configuration.
-.sp
-This option requires update permission for the configuration that you are going
-to update. If you use this option with the \fB-c\fR option, the dynamic
-configuration is updated before the static location.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-x\fR\fR
-.ad
-.RS 6n
-Remove the currently active pool configuration. Destroy all defined resources,
-and return all formerly partitioned components to their default resources.
-.RE
-
-.SH OPERANDS
-.sp
-.LP
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fB\fIfilename\fR\fR
-.ad
-.RS 12n
-Use the configuration contained within this file.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRInstantiating a Configuration
-.sp
-.LP
-The following command instantiates the configuration contained at
-\fB/home/admin/newconfig\fR:
-
-.sp
-.in +2
-.nf
-example# \fB/usr/sbin/pooladm \fR\fB-c\fR\fB /home/admin/newconfig\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRValidating the Configuration Without Instantiating It
-.sp
-.LP
-The following command attempts to instantiate the configuration contained at
-\fB/home/admin/newconfig\fR. It displays any error conditions that it
-encounters, but does not actually modify the active configuration.
-
-.sp
-.in +2
-.nf
-example# \fB/usr/sbin/pooladm \fR\fB-n\fR\fB \fR\fB-c\fR\fB /home/admin/newconfig\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRRemoving the Current Configuration
-.sp
-.LP
-The following command removes the current pool configuration:
-
-.sp
-.in +2
-.nf
-example# \fB/usr/sbin/pooladm \fR\fB-x\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 4 \fREnabling the Pools Facility
-.sp
-.LP
-The following command enables the pool facility:
-
-.sp
-.in +2
-.nf
-example# \fB/usr/sbin/pooladm -e\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 5 \fREnabling the Pools Facility Using SMF
-.sp
-.LP
-The following command enables the pool facility through use of the Service
-Management Facility. See \fBsmf\fR(5).
-
-.sp
-.in +2
-.nf
-example# \fB/usr/sbin/svcadm enable svc:/system/pools:default\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 6 \fRSaving the Active Configuration to a Specified Location
-.sp
-.LP
-The following command saves the active configuration to
-\fB/tmp/state.backup\fR:
-
-.sp
-.in +2
-.nf
-example# \fB/usr/sbin/pooladm -s /tmp/state.backup\fR
-.fi
-.in -2
-.sp
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/pooladm.conf\fR\fR
-.ad
-.RS 21n
-Configuration file for \fBpooladm\fR.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability See below.
-.TE
-
-.sp
-.LP
-The invocation is Evolving. The output is Unstable.
-.SH SEE ALSO
-.sp
-.LP
-\fBpoolcfg\fR(1M), \fBpoolbind\fR(1M), \fBpsrset\fR(1M), \fBsvcadm\fR(1M),
-\fBpset_destroy\fR(2), \fBlibpool\fR(3LIB), \fBattributes\fR(5), \fBsmf\fR(5)
-.sp
-.LP
-\fI\fR
-.SH NOTES
-.sp
-.LP
-Resource bindings that are not presented in the form of a binding to a
-partitionable resource, such as the scheduling class, are not necessarily
-modified in a \fBpooladm\fR \fB-x\fR operation.
-.sp
-.LP
-The pools facility is not active by default when Solaris starts. \fBpooladm\fR
-\fB-e\fR explicitly activates the pools facility. The behavior of certain APIs
-related to processor partitioning and process binding are modified when pools
-is active. See \fBlibpool\fR(3LIB).
-.sp
-.LP
-You cannot enable the pools facility on a system where processor sets have been
-created. Use the \fBpsrset\fR(1M) command or \fBpset_destroy\fR(2) to destroy
-processor sets manually before you enable the pools facility.
-.sp
-.LP
-Because the Resource Pools facility is an \fBsmf\fR(5) service, it can also be
-enabled and disabled using the standard SMF interfaces.
diff --git a/usr/src/man/man1m/poolbind.1m b/usr/src/man/man1m/poolbind.1m
deleted file mode 100644
index 806f65c131..0000000000
--- a/usr/src/man/man1m/poolbind.1m
+++ /dev/null
@@ -1,256 +0,0 @@
-'\" te
-.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH POOLBIND 1M "Feb 9, 2005"
-.SH NAME
-poolbind \- bind processes, tasks, or projects or query binding of processes to
-resource pools
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/poolbind\fR \fB-p\fR \fIpoolname\fR \fB-e\fR \fIcommand\fR [\fIarguments\fR]...
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/poolbind\fR \fB-p\fR \fIpoolname\fR [\fB-i\fR \fIidtype\fR] \fIid\fR...
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/poolbind\fR \fB-q\fR \fIpid\fR...
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/poolbind\fR \fB-Q\fR \fIpid\fR...
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBpoolbind\fR command allows an authorized user to bind zones, projects,
-tasks, and processes to pools. With the \fB-e\fR option (see below), it can
-execute a command you specify, placing the executed command in a specified
-pool. It can also enable you to query a process to determine which pool a
-process is bound to.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-e\fR \fIcommand\fR [\fIarguments\fR...]\fR
-.ad
-.RS 29n
-Executes \fIcommand\fR, bound to the pool you specify with \fB-p\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-i\fR \fIidtype\fR\fR
-.ad
-.RS 29n
-This option, together with the \fIidlist\fR arguments, specifies one or more
-processes to which the poolbind command is to apply. The interpretation of
-\fIidlist\fR depends on the value of \fIidtype\fR. The valid \fIidtype\fR
-arguments and corresponding interpretations of \fIidlist\fR are as follows:
-.sp
-.ne 2
-.na
-\fB\fIpid\fR\fR
-.ad
-.RS 10n
-\fIidlist\fR is a list of process \fBID\fRs. Binds the specified processes to
-the specified pool. This is the default behavior if no idtype is specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fItaskid\fR\fR
-.ad
-.RS 10n
-\fIidlist\fR is a list of task IDs. Bind all processes within the list of task
-IDs to the specified pool.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIprojid\fR\fR
-.ad
-.RS 10n
-\fIidlist\fR is a list of project \fBID\fRs. Bind all processes within the list
-of projects to the specified pool. Each project \fBID\fR can be specified as
-either a project name or a numerical project \fBID\fR. See \fBproject\fR(4).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIzoneid\fR\fR
-.ad
-.RS 10n
-\fIidlist\fR is a list of zone \fBID\fRs. Bind all processes within the list of
-zones to the specified pool. Each zone \fBID\fR can be specified as either a
-zone name or a numerical zone \fBID\fR. See \fBzones\fR(5).
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR \fIpoolname\fR\fR
-.ad
-.RS 29n
-Specifies the name of a pool to which the specified zone, project, tasks, or
-processes are to be bound.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-q\fR \fIpid\fR ...\fR
-.ad
-.RS 29n
-Queries the pool bindings for a given list of process \fBID\fRs. If the
-collection of resources associated with the process does not correspond to any
-currently existing pool, or if there are multiple pools with the set of
-resources that the process is bound to, the query fails for that particular
-process \fBID\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-Q\fR \fIpid\fR ...\fR
-.ad
-.RS 29n
- Queries the resource bindings for a given list of process IDs. The resource
-bindings are each reported on a separate line.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRBinding All Processes
-.sp
-.LP
-The following command binds all processes in projects \fB5\fR and \fB7\fR to
-the pool \fBweb_app\fR:
-
-.sp
-.in +2
-.nf
-example# /usr/sbin/poolbind \fB-p\fR web_app \fB-i\fR projid 5 7
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRBinding the Running Shell
-.sp
-.LP
-The following command binds the running shell to the pool \fBweb_app\fR:
-
-.sp
-.in +2
-.nf
- example# /usr/sbin/poolbind \fB-p\fR web_app $$
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRQuerying the Pool Bindings
-.sp
-.LP
-The following command queries the bindings to verify that the shell is bound to
-the given pool:
-
-.sp
-.in +2
-.nf
-example# /usr/sbin/poolbind \fB-q\fR $$
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 4 \fRQuerying the Resource Bindings
-.sp
-.LP
-The following command queries the bindings to verify that the shell is bound to
-the given resources:
-
-.sp
-.in +2
-.nf
-example# /usr/sbin/poolbind \fB-Q\fR $$
-.fi
-.in -2
-.sp
-
-.SH EXIT STATUS
-.sp
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 5n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB1\fR\fR
-.ad
-.RS 5n
-Requested operation could not be completed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB2\fR\fR
-.ad
-.RS 5n
-Invalid command line options were specified.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability See below.
-.TE
-
-.sp
-.LP
-The invocation is Evolving. The output is Unstable.
-.SH SEE ALSO
-.sp
-.LP
-\fBpooladm\fR(1M), \fBpoolcfg\fR(1M), \fBlibpool\fR(3LIB), \fBproject\fR(4),
-\fBattributes\fR(5), \fBzones\fR(5)
-.sp
-.LP
-\fI\fR
diff --git a/usr/src/man/man1m/poolcfg.1m b/usr/src/man/man1m/poolcfg.1m
deleted file mode 100644
index 1f326abc48..0000000000
--- a/usr/src/man/man1m/poolcfg.1m
+++ /dev/null
@@ -1,479 +0,0 @@
-'\" te
-.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH POOLCFG 1M "Nov 29, 2007"
-.SH NAME
-poolcfg \- create and modify resource pool configuration files
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/poolcfg\fR \fB-c\fR \fIcommand\fR [\fB-d\fR | [\fIfilename\fR]]
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/poolcfg\fR \fB-f\fR \fIcommand_file\fR [\fB-d\fR | [\fIfilename\fR]]
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/poolcfg\fR \fB-h\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBpoolcfg\fR utility provides configuration operations on pools and sets.
-These operations are performed upon an existing configuration and take the form
-of modifications to the specified configuration file. If you use the \fB-d\fR
-option, the modifications occur to the kernel state. Actual activation of the
-resulting configuration is achieved by way of the \fBpooladm\fR(1M) utility.
-.sp
-.LP
-Pools configuration files are structured files that must have been constructed
-using \fBpoolcfg\fR itself or \fBlibpool\fR(3LIB) directly.
-.sp
-.LP
-An invocation of \fBpoolcfg\fR with the pool dynamic location and write
-permission will hang if the dynamic location has already been opened for
-writing.
-.sp
-.LP
-The configurations which are created by this utility can be used by
-\fBpooladm\fR to instantiate the configuration upon a target host.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-c\fR \fIcommand\fR\fR
-.ad
-.RS 19n
-Specify \fIcommand\fR as an editing command. See \fBUSAGE\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-d\fR\fR
-.ad
-.RS 19n
-Operate directly on the kernel state. No \fIfilename\fR is allowed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR \fIcommand_file\fR\fR
-.ad
-.RS 19n
-Take the commands from \fIcommand_file\fR. \fIcommand_file\fR consists of
-editing commands, one per line.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-h\fR\fR
-.ad
-.RS 19n
-Display extended information about the syntax of editing commands.
-.RE
-
-.SH USAGE
-.SS "Scripts"
-.sp
-.LP
-A script consists of editing commands, one per line, of the following:
-.sp
-.ne 2
-.na
-\fBinfo [\fIentity-name\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Display configuration (or specified portion) in human readable form to standard
-output. If no entity is specified, system information is displayed. Therefore,
-\fBpoolcfg\fR \fB-c\fR \fB\&'info' afile\fR is an equivalent invocation to
-\fBpoolcfg\fR \fB-c\fR \fB\&'info system name' afile\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBcreate \fIentity-name\fR [\fIproperty-list\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Make an entity of the specified type and name.
-.RE
-
-.sp
-.ne 2
-.na
-\fBdestroy \fIentity-name\fR\fR
-.ad
-.sp .6
-.RS 4n
-Remove the specified entity.
-.RE
-
-.sp
-.ne 2
-.na
-\fBmodify \fIentity-name\fR [\fIproperty-list\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Change the listed properties on the named entity.
-.RE
-
-.sp
-.ne 2
-.na
-\fBassociate \fIpool-name\fR [\fIresource-list\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Connect one or more resources to a pool, or replace one or more existing
-connections.
-.RE
-
-.sp
-.ne 2
-.na
-\fBtransfer to\fR [\fIresourcetype\fR] \fIname\fR[\fIcomponent-list\fR]
-.ad
-.sp .6
-.RS 4n
-Transfer one or more discrete components to a resource .
-.RE
-
-.sp
-.ne 2
-.na
-\fBtransfer [\fIquantity\fR] from [\fIresourcetype\fR] [\fIsrc\fR] to
-[\fItgt\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Transfer a resource quantity from \fIsrc\fR to \fItgt\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBtransfer [\fIquantity\fR] to [\fIresourcetype\fR] [\fItgt\fR] from
-[\fIsrc\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Transfer a resource quantity to \fItgt\fR from \fIsrc\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBdiscover\fR
-.ad
-.sp .6
-.RS 4n
-Create a system entity, with one pool entity and resources to match current
-system configuration. All discovered resources of each resource type are
-recorded in the file, with the single pool referring to the default resource
-for each resource type.
-.sp
-This command is a NO-OP when \fBpoolcfg\fR operates directly on the kernel. See
-the \fB-d\fR option.
-.sp
-You should avoid use of this command. The preferred method for creating a
-configuration is to export the dynamic configuration using \fBpooladm\fR(1M)
-with the \fB-s\fR option.
-.RE
-
-.sp
-.ne 2
-.na
-\fBrename \fIentity-name\fR to \fInew-name\fR\fR
-.ad
-.sp .6
-.RS 4n
-Change the name of an entity on the system to its new name.
-.RE
-
-.SS "Property Lists"
-.sp
-.LP
-The property list is specified by:
-.sp
-.in +2
-.nf
-( proptype name = value [ ; proptype name = value ]* )
-.fi
-.in -2
-
-.sp
-.LP
-where the last definition in the sequence for a given proptype, name pair is
-the one that holds. For property deletion, use \fB~ proptype name\fR.
-.SS "Resource Lists"
-.sp
-.LP
-A resource list is specified by:
-.sp
-.in +2
-.nf
-( resourcetype name [ ; resourcetype name ]* )
-.fi
-.in -2
-
-.sp
-.LP
-where the last specification in the sequence for a resource is the one that
-holds. There is no deletion syntax for resource lists.
-.SS "Component Lists"
-.sp
-.LP
-A component list is specified by:
-.sp
-.in +2
-.nf
-( componenttype name [ ; componenttype name ]* )
-.fi
-.in -2
-
-.sp
-.LP
-where the last specification in the sequence for a component is the one that
-holds. There is no deletion syntax for component lists.
-.SS "Recognized Entities"
-.sp
-.ne 2
-.na
-\fBsystem\fR
-.ad
-.RS 10n
-Machine level entity
-.RE
-
-.sp
-.ne 2
-.na
-\fBpool\fR
-.ad
-.RS 10n
-Named collection of resource associations
-.RE
-
-.SS "Resource Types"
-.sp
-.ne 2
-.na
-\fBpset\fR
-.ad
-.RS 8n
-Processor set resource
-.RE
-
-.SS "Property Types"
-.sp
-.ne 2
-.na
-\fBboolean\fR
-.ad
-.RS 11n
-Takes one of two values true or false.
-.RE
-
-.sp
-.ne 2
-.na
-\fBint\fR
-.ad
-.RS 11n
-A 64-bit signed integer value.
-.RE
-
-.sp
-.ne 2
-.na
-\fBuint\fR
-.ad
-.RS 11n
-A 64-bit unsigned integer value.
-.RE
-
-.sp
-.ne 2
-.na
-\fBstring\fR
-.ad
-.RS 11n
-Strings are delimited by quotes (\fB"\fR), and support the character escape
-sequences defined in \fBformats\fR(5).
-.RE
-
-.sp
-.ne 2
-.na
-\fBfloat\fR
-.ad
-.RS 11n
-Scientific notation is not supported.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRWriting a poolcfg Script
-.sp
-.LP
-The following \fBpoolcfg\fR script creates a pool named \fBAccounting\fR, and a
-processor set, \fBsmall-1\fR. The processor set is created first, then the pool
-is created and associated with the set.
-
-.sp
-.in +2
-.nf
-create pset small-1 ( uint pset.min = 1 ; uint pset.max = 4)
-create pool Accounting
-associate pool Accounting ( pset small-1 )
-.fi
-.in -2
-
-.LP
-\fBExample 2 \fRReporting on \fBpool_0\fR
-.sp
-.LP
-The following command reports on \fBpool_0\fR to standard output in human
-readable form:
-
-.sp
-.in +2
-.nf
- # poolcfg -c 'info pool pool_0' /etc/pooladm.conf
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRDestroying pool_0 and Its Associations
-.sp
-.LP
-The following command destroys \fBpool_0\fR and associations, but not the
-formerly associated resources:
-
-.sp
-.in +2
-.nf
-# poolcfg -c 'destroy pool pool_0' /etc/pooladm.conf
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 4 \fRDisplaying the Current Configuration
-.sp
-.LP
-The following command displays the current configuration:
-
-.sp
-.in +2
-.nf
-$ poolcfg -c 'info' /etc/pooladm.conf
-system example_system
- int system.version 1
- boolean system.bind-default true
- string system.comment Discovered by libpool
-
- pool pool_default
- boolean pool.default true
- boolean pool.active true
- int pool.importance 5
- string pool.comment
- string.pool.scheduler FSS
- pset pset_default
-
- pset pset_default
- int pset.sys_id -1
- string pset.units population
- boolean pset.default true
- uint pset.max 4294967295
- uint pset.min 1
- string pset.comment
- boolean pset.escapable false
- uint pset.load 0
- uint pset.size 2
-
- cpu
- int cpu.sys_id 0
- string cpu.comment
-
- cpu
- int cpu.sys_id 2
- string cpu.comment
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 5 \fRMoving cpu with ID 2 to Processor Set pset1 in the Kernel
-.sp
-.LP
-The following command moves \fBcpu\fR with ID \fB2\fR to processor set
-\fBpset1\fR in the kernel:
-
-.sp
-.in +2
-.nf
-# poolcfg -dc 'transfer to pset pset1 ( cpu 2 )'
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 6 \fRMoving 2 cpus from Processor Set pset1 to Processor Set pset2
-in the Kernel
-.sp
-.LP
-The following command moves 2 \fBcpu\fRs from processor set \fBpset1\fR to
-processor set \fBpset2\fR in the kernel:
-
-.sp
-.in +2
-.nf
-# poolcfg -dc 'transfer 2 from pset pset1 to pset2'
-.fi
-.in -2
-.sp
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability See below.
-.TE
-
-.sp
-.LP
-The invocation is Committed. The output is Uncommitted.
-.SH SEE ALSO
-.sp
-.LP
-\fBpooladm\fR(1M), \fBpoolbind\fR(1M), \fBlibpool\fR(3LIB),
-\fBattributes\fR(5), \fBformats\fR(5)
-.sp
-.LP
-\fI\fR
diff --git a/usr/src/man/man1m/poold.1m b/usr/src/man/man1m/poold.1m
deleted file mode 100644
index 84039a1b34..0000000000
--- a/usr/src/man/man1m/poold.1m
+++ /dev/null
@@ -1,203 +0,0 @@
-'\" te
-.\" Copyright (c) 2005, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH POOLD 1M "Dec 1, 2005"
-.SH NAME
-poold \- automated resource pools partitioning daemon
-.SH SYNOPSIS
-.LP
-.nf
-\fBpoold\fR [\fB-l\fR \fIlevel\fR]
-.fi
-
-.SH DESCRIPTION
-.LP
-\fBpoold\fR provides automated resource partitioning facilities. \fBpoold\fR
-can be enabled or disabled using the Solaris Service Management Facility,
-\fBsmf\fR(5). \fBpoold\fR requires the Resource Pools facility to be active in
-order to operate.
-.sp
-.LP
-The dynamic resource pools service's fault management resource identifier
-(FMRI) is:
-.sp
-.in +2
-.nf
-svc:/system/pools/dynamic
-.fi
-.in -2
-
-.sp
-.LP
-The resource pools service's FMRI is:
-.sp
-.in +2
-.nf
-svc:/system/pools
-.fi
-.in -2
-
-.sp
-.LP
-\fBpoold\fR's configuration details are held in a \fBlibpool\fR(3LIB)
-configuration and you can access all customizable behavior from this
-configuration.
-.sp
-.LP
-\fBpoold\fR periodically examines the load on the system and decides whether
-intervention is required to maintain optimal system performance with respect to
-resource consumption. \fBpoold\fR also responds to externally initiated (with
-respect to \fBpoold\fR) changes of either resource configuration or objectives.
-.sp
-.LP
-If intervention is required, \fBpoold\fR attempts to reallocate the available
-resources to ensure that performance objectives are satisfied. If it is not
-possible for \fBpoold\fR to meet performance objectives with the available
-resources, then a message is written to the log. \fBpoold\fR allocates scarce
-resources according to the objectives configured by the administrator. The
-system administrator must determine which resource pools are most deserving of
-scarce resource and indicate this through the importance of resource pools and
-objectives.
-.SH OPTIONS
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-l\fR \fIlevel\fR\fR
-.ad
-.RS 12n
-Specify the verbosity level for logging information.
-.sp
-Specify \fIlevel\fR as \fBALERT\fR, \fBCRIT\fR, \fBERR\fR, \fBWARNING\fR,
-\fBNOTICE\fR, \fBINFO\fR, and \fBDEBUG\fR. If \fIlevel\fR is not supplied, then
-the default logging level is \fBINFO\fR.
-.sp
-.ne 2
-.na
-\fB\fBALERT\fR\fR
-.ad
-.RS 11n
- A condition that should be corrected immediately, such as a corrupted system
-database.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBCRIT\fR\fR
-.ad
-.RS 11n
-Critical conditions, such as hard device errors.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBERR\fR\fR
-.ad
-.RS 11n
-Errors.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBWARNING\fR\fR
-.ad
-.RS 11n
-Warning messages.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBNOTICE\fR\fR
-.ad
-.RS 11n
- Conditions that are not error conditions, but that may require special
-handling.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBINFO\fR\fR
-.ad
-.RS 11n
-Informational messages.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBDEBUG\fR\fR
-.ad
-.RS 11n
-Messages that contain information normally of use only when debugging a
-program.
-.RE
-
-.RE
-
-.sp
-.LP
-When invoked manually, with the \fB-l\fR option, all log output is directed to
-standard error.
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRModifying the Default Logging Level
-.sp
-.LP
-The following command modifies the default logging level to \fBERR\fR:
-
-.sp
-.in +2
-.nf
-# /usr/lib/pool/poold -l ERR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fREnabling Dynamic Resource Pools
-.sp
-.LP
-The following command enables dynamic resource pools:
-
-.sp
-.in +2
-.nf
-# /usr/sbin/svcadm enable svc:/system/pools/dynamic
-.fi
-.in -2
-.sp
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability See below.
-.TE
-
-.sp
-.LP
-The invocation is Evolving. The output is Unstable.
-.SH SEE ALSO
-.LP
-\fBpooladm\fR(1M), \fBpoolbind\fR(1M), \fBpoolcfg\fR(1M), \fBpoolstat\fR(1M),
-\fBsvcadm\fR(1M), \fBpool_set_status\fR(3POOL), \fBlibpool\fR(3LIB),
-\fBattributes\fR(5), \fBsmf\fR(5)
-.sp
-.LP
-\fI\fR
diff --git a/usr/src/man/man1m/poolstat.1m b/usr/src/man/man1m/poolstat.1m
deleted file mode 100644
index 95cad74a03..0000000000
--- a/usr/src/man/man1m/poolstat.1m
+++ /dev/null
@@ -1,395 +0,0 @@
-'\" te
-.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
-.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH POOLSTAT 1M "Jun 16, 2009"
-.SH NAME
-poolstat \- report active pool statistics
-.SH SYNOPSIS
-.LP
-.nf
-\fBpoolstat\fR [\fB-p\fR \fIpool-list\fR] [\fB-r\fR \fIrset-list\fR] [\fB-T\fR u | d ] [\fIinterval\fR [\fIcount\fR]]
-.fi
-
-.LP
-.nf
-\fBpoolstat\fR [\fB-p\fR \fIpool-list\fR] [\fB-o\fR \fIformat\fR \fB-r\fR \fIrset-list\fR]
- [\fB-T\fR u | d ] [\fIinterval\fR [\fIcount\fR]]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBpoolstat\fR utility iteratively examines all active pools on the system.
-It reports statistics based on the selected output mode. \fBpoolstat\fR
-provides options to examine only specified pools and report resource
-set-specific statistics.
-.sp
-.LP
-Without options, \fBpoolstat\fR examines all pools, reports basic statistics
-for their resource sets, and exits.
-.SS "DISPLAY FORMATS"
-.sp
-.LP
-In default output format, \fBpoolstat\fR outputs a header line and a line for
-each pool. The line begins with the pool ID and its name, followed by a column
-of statistical data for the processor set attached to the pool.
-.sp
-.LP
-The columns are defined as follows:
-.sp
-.ne 2
-.na
-\fB\fBid\fR\fR
-.ad
-.RS 8n
-Pool ID.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpool\fR\fR
-.ad
-.RS 8n
-Pool name.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrid\fR\fR
-.ad
-.RS 8n
-Resource set id.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrset\fR\fR
-.ad
-.RS 8n
-Resource set name.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBtype\fR\fR
-.ad
-.RS 8n
-Resource set type.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmin\fR\fR
-.ad
-.RS 8n
-Minimum resource set size.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmax\fR\fR
-.ad
-.RS 8n
-Maximum resource set size.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsize\fR\fR
-.ad
-.RS 8n
-Current resource set size.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBused\fR\fR
-.ad
-.RS 8n
-The measure of how much of the resource set is currently is use. This is
-calculated as the percentage utilization of the resource set multiplied by its
-size. If resource set has been reconfigured during last sampling interval, this
-value might be not reported (\fB-\fR).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBload\fR\fR
-.ad
-.RS 8n
-The absolute representation of the load that is put on the resource set. For
-the definition of this property see \fBlibpool\fR(3LIB).
-.RE
-
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-o\fR \fIformat\fR\fR
-.ad
-.RS 16n
-Report statistics according to the format specification given in format. See
-\fBDISPLAY FORMATS\fR.
-.sp
-The \fB-o\fR option accepts lists as arguments. Items in a list can be either
-separated by commas or enclosed in quotes and separated by commas or spaces.
-.sp
-You can specify multiple \fB-o\fR options. The format specification is
-interpreted as the whitespace separated concatenation of all the format option
-arguments.
-.sp
-The \fB-o\fR option must be used in conjunction with the \fB-r\fR option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR \fIpool-list\fR\fR
-.ad
-.RS 16n
-Report only pools whose names are in the given list. If the -r option is also
-used, this option selects only resource sets which belong to pools in the given
-list. Statistics for pools or resource sets are reported in the same order in
-which pool names are listed on the pool-list. Pool can be specified by name or
-by ID.
-.sp
-The \fB-p\fR option accepts lists as arguments. Items in a \fIpool-list\fR can
-only be separated by spaces.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-r\fR \fIrset-list\fR\fR
-.ad
-.RS 16n
-Report resource set statistics. If the \fIrset-list\fR argument is "\fBall\fR",
-then all possible resource set types are selected.
-.sp
-The \fB-r\fR option accepts lists as arguments. Items in a list can be either
-separated by commas or enclosed in quotes and separated by commas or spaces.
-.sp
-The following resource set types are supported:
-.sp
-.ne 2
-.na
-\fB\fBall\fR\fR
-.ad
-.RS 8n
-All resource set types
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpset\fR\fR
-.ad
-.RS 8n
-Processor set
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-T\fR \fBu\fR | \fBd\fR\fR
-.ad
-.RS 16n
-Display a time stamp.
-.sp
-Specify \fBu\fR for a printed representation of the internal representation of
-time. See \fBtime\fR(2). Specify \fBd\fR for standard date format. See
-\fBdate\fR(1).
-.RE
-
-.SH OPERANDS
-.sp
-.LP
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fB\fIcount\fR\fR
-.ad
-.RS 12n
-The number of times that the statistics are repeated. By default, poolstat
-reports statistics only once.
-.sp
-If neither interval nor count are specified, statistics are reported once. If
-interval is specified and count is not, statistics are reported indefinitely.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIinterval\fR\fR
-.ad
-.RS 12n
-The sampling interval in seconds.
-.sp
-If neither interval nor count are specified, statistics are reported once. If
-interval is specified and count is not, statistics are reported indefinitely.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRUsing \fBpoolstat\fR
-.sp
-.LP
-The following example shows the default output from the \fBpoolstat\fR utility:
-
-.sp
-.in +2
-.nf
-% poolstat
- pset
- id pool size used load
- 0 pool_default 4 3.6 6.2
- 1 pool_admin 4 3.3 8.4
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRReporting Resource Set Statistics
-.sp
-.LP
-The following example reports resource set statistics.
-
-.sp
-.in +2
-.nf
-
-% poolstat -r pset
- id pool type rid rset min max size used load
- 0 pool_default pset -1 pset_default 1 65K 2 1.2 8.3
- 1 pool_admin pset 1 pset_admin 1 1 1 0.4 5.2
- 2 pool_other pset -1 pset_default 1 65K 2 1.2 8.3
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Resource sets attached to multiple pools, as \fBpset_default\fR in the example
-above, are listed multiple times, once for each pool.
-
-.LP
-\fBExample 3 \fRRestricting the Output to the List of Pools
-.sp
-.LP
-The following example restricts the output to the list of pools
-
-.sp
-.in +2
-.nf
-% poolstat -p pool_default
- pset
- id pool size used load
- 0 pool_default 8 5.3 10.3
-
-% poolstat -p 'pool_admin pool_default'
- pset
- id pool size used load
- 1 pool_admin 6 4.3 5.3
- 0 pool_default 2 1.9 2.0
-
-% poolstat -r all -p 'pool_admin pool_default'
- id pool type rid rset min max size used load
- 1 pool_admin pset 1 pset_admin 1 1 1 0.9 2.3
- 2 pool_default pset -1 pset_default 1 65K 2 2.0 2.0
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 4 \fRCustomizing Output
-.sp
-.LP
-The following example customizes output:
-
-.sp
-.in +2
-.nf
-% poolstat -r -o pool,rset,size,load
- pool rset size load
- pool_default pset_default 4 4.5
- pool_admin pset_admin 4 2.1
-.fi
-.in -2
-.sp
-
-.SH EXIT STATUS
-.sp
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 5n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB1\fR\fR
-.ad
-.RS 5n
-An error occurred.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB2\fR\fR
-.ad
-.RS 5n
-Invalid command line options were specified.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Stability Evolving
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBlibpool\fR(3LIB), \fBattributes\fR(5)
-.sp
-.LP
-\fI\fR
-.SH NOTES
-.sp
-.LP
-The system ids associated with resources can change after the system reboots or
-the resource configuration is altered.
diff --git a/usr/src/man/man1m/ports.1m b/usr/src/man/man1m/ports.1m
deleted file mode 100644
index 377b00cf13..0000000000
--- a/usr/src/man/man1m/ports.1m
+++ /dev/null
@@ -1,294 +0,0 @@
-'\" te
-.\" Copyright (c) 2002 Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PORTS 1M "Nov 8, 2002"
-.SH NAME
-ports \- creates /dev entries and inittab entries for serial lines
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/ports\fR [\fB-r\fR \fIrootdir\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBdevfsadm\fR(1M) is now the preferred command for \fB/dev\fR and
-\fB/devices\fR and should be used instead of \fBports\fR.
-.sp
-.LP
-The \fBports\fR command creates symbolic links in the \fB/dev/term\fR and
-\fB/dev/cua\fR directories to the serial-port character device files in
-\fB/devices\fR and adds new entries in \fB/etc/inittab\fR for non-system ports
-found. System-board ports are given single lower-case letters for names (such
-as \fBa\fR and \fBb\fR) while other ports are named numerically.
-.sp
-.LP
-\fBports\fR searches the kernel device tree to find the serial devices attached
-to the system. It also checks \fB/dev/term\fR and \fB/dev/cua\fR to see what
-symbolic links to serial devices already exist. \fBports\fR then performs the
-following:
-.RS +4
-.TP
-1.
-Assigns new numbers (or letters for system-board ports) to ports that are
-attached to the system but do not have \fB/dev/term\fR and \fB/dev/cua\fR
-entries. The numbers or letters assigned are the lowest-unused numbers or
-letters.
-.RE
-.RS +4
-.TP
-2.
-Removes dangling links: links from \fB/dev/term\fR and \fB/dev/cua\fR
-pointing to no-longer-existing ports.
-.RE
-.RS +4
-.TP
-3.
-Creates new \fB/dev/term\fR and \fB/dev/cua\fR links for new serial devices.
-.RE
-.RS +4
-.TP
-4.
-Invokes \fBsacadm\fR(1M) to make new port monitor entries for the new
-devices. This is not done automatically for on-board ports; on workstations
-these ports are often not used for dial-in sessions, so a port-monitor for one
-of these ports must be created explicitly.
-.RE
-.sp
-.LP
-If the configuration has not changed, ports exits without doing anything.
-.SS "Notice to Driver Writers"
-.sp
-.LP
-\fBports\fR considers devices with a node type of \fBDDI_NT_SERIAL,\fR
-\fBDDI_NT_SERIAL_MB,\fR \fBDDI_NT_SERIAL_DO,\fR or \fBDDI_NT_SERIAL_MB_DO\fR to
-be serial port devices. Devices with one of these node types must create minor
-device names that obey the following conventions when calling
-\fBddi_create_minor_node\fR(9F).
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The minor name for non-system port devices (\fBDDI_NT_SERIAL\fR) consists of an
-\fBASCII\fR numeric string, where the first port on the device is named
-\fB0\fR, the second named \fB1\fR, the third named \fB2\fR, up to the number of
-ports provided by the device.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The minor name for non-system dialout devices (\fBDDI_NT_SERIAL_DO\fR) is the
-\fBASCII\fR numeric port name, concatenated with \fB,cu\fR. For example, the
-minor name for the first dialout port on the serial board is \fB0,cu\fR.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The minor name for system-board port devices (\fBDDI_NT_SERIAL_MB\fR) consists
-of a string containing a single \fBASCII\fR lowercase character, where the
-first port on the device is named \fBa\fR, the second is named \fBb\fR, the
-third is named \fBc\fR, for all ports on the device (or up through port
-\fBz\fR).
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The minor name for system-board dialout devices (\fBDDI_NT_SERIAL_MB_DO\fR)
-consists of the lowercase character port name, concatenated with \fB,cu\fR. For
-example, the minor name for the first dialout port on the on-board serial
-device is \fBa,cu\fR.
-.RE
-.sp
-.LP
-To prevent \fBdisks\fR from attempting to automatically generate links for a
-device, drivers must specify a private node type and refrain from using one of
-the above node types when calling \fBddi_create_minor_node\fR(9F).
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-r\fR\fI rootdir\fR\fR
-.ad
-.RS 14n
-Causes \fBports\fR to presume that the \fB/dev/term\fR, \fB/dev/cua\fR, and
-\fB/devices\fR directories are found under \fIrootdir\fR, not directly under
-\fB/\fR. If this argument is specified, \fBsacadm\fR(1M) is not invoked, since
-it would update terminal administration files under \fB/etc\fR without regard
-to the \fIrootdir\fR.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRCreating the Serial and Dialout Minor Device Nodes
-.sp
-.LP
-The following example creates the serial and dialout minor device nodes from
-the \fBxkserial\fR driver's \fBattach\fR(9E) function:
-
-.sp
-.in +2
-.nf
-/*
-* Create the minor number by combining the instance number
-* with the port number.
-*/ #define XKNUMPORTS 8
-#define XKMINORNUM(i, p) ((i) << 4 | (p))
-#define XKMINORNUM_DO(i, p) ((i) << 4 | (p) | 0x80)
-int
-xkserialattach(dev_info_t *dip, ddi_attach_cmd_t cmd)
-{
- int instance, portnum;
- char name[8];
- /* other stuff in attach... */
- instance = ddi_get_instance(dip);
- for (portnum = 0; portnum < XKNUMPORTS; portnum++) {
- /*
- * create the serial port device
- */
- sprintf(name, "%d", portnum);
- ddi_create_minor_node(dip, name, S_IFCHR,
- XKMINORNUM(instance, portnum), DDI_NT_SERIAL, 0);
-
- /*
- * create the dialout device
- */
- sprintf(name,"%d,cu", portnum);
- ddi_create_minor_node(dip, name, S_IFCHR,
- XKMINORNUM_DO(instance, portnum), DDI_NT_SERIAL_DO, 0);
- }
-}
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRInstalling the \fBxkserial\fR Port Driver on a Sun Fire 4800
-.sp
-.LP
-The following example installs the \fBxkserial\fR port driver on a Sun Fire
-4800 (with the driver controlling the fictional XKSerial 8 port serial board),
-with these special files in \fB/devices\fR:
-
-.sp
-.in +2
-.nf
-# ls -l /devices/ssm@0,0/pci@18,700000/pci@1/xkserial@f,800000/
-crw-r----- 1 root sys 32, 16 Aug 29 00:02 xkserial@2000:0
-crw-r----- 1 root sys 32, 144 Aug 29 00:02 xkserial@2000:0,cu
-crw-r----- 1 root sys 32, 17 Aug 29 00:02 xkserial@2000:1
-crw-r----- 1 root sys 32, 145 Aug 29 00:02 xkserial@2000:1,cu
-crw-r----- 1 root sys 32, 18 Aug 29 00:02 xkserial@2000:2
-crw-r----- 1 root sys 32, 146 Aug 29 00:02 xkserial@2000:2,cu
-crw-r----- 1 root sys 32, 19 Aug 29 00:02 xkserial@2000:3
-crw-r----- 1 root sys 32, 147 Aug 29 00:02 xkserial@2000:3,cu
-crw-r----- 1 root sys 32, 20 Aug 29 00:02 xkserial@2000:4
-crw-r----- 1 root sys 32, 148 Aug 29 00:02 xkserial@2000:4,cu
-crw-r----- 1 root sys 32, 21 Aug 29 00:02 xkserial@2000:5
-crw-r----- 1 root sys 32, 149 Aug 29 00:02 xkserial@2000:5,cu
-crw-r----- 1 root sys 32, 22 Aug 29 00:02 xkserial@2000:6
-crw-r----- 1 root sys 32, 150 Aug 29 00:02 xkserial@2000:6,cu
-crw-r----- 1 root sys 32, 23 Aug 29 00:02 xkserial@2000:7
-crw-r----- 1 root sys 32, 151 Aug 29 00:02 xkserial@2000:7,cu
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-\fB/dev/term\fR contain symbolic links to the serial port device nodes in
-\fB/devices\fR
-
-.sp
-.in +2
-.nf
-# ls -l /dev/term
-/dev/term/0 -> ../../devices/[....]/xkserial@2000:0
-/dev/term/1 -> ../../devices/[....]/xkserial@2000:1
-/dev/term/2 -> ../../devices/[....]/xkserial@2000:2
-/dev/term/3 -> ../../devices/[....]/xkserial@2000:3
-/dev/term/4 -> ../../devices/[....]/xkserial@2000:4
-/dev/term/5 -> ../../devices/[....]/xkserial@2000:5
-/dev/term/6 -> ../../devices/[....]/xkserial@2000:6
-/dev/term/7 -> ../../devices/[....]/xkserial@2000:7
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-and \fB/dev/cua\fR contain symbolic links to the dialout port device nodes in
-\fB/devices\fR
-
-.sp
-.in +2
-.nf
-# ls -l /dev/cua
-
-/dev/cua/0 -> ../../devices/[....]/xkserial@2000:0,cu
-/dev/cua/1 -> ../../devices/[....]/xkserial@2000:1,cu
-/dev/cua/2 -> ../../devices/[....]/xkserial@2000:2,cu
-/dev/cua/3 -> ../../devices/[....]/xkserial@2000:3,cu
-/dev/cua/4 -> ../../devices/[....]/xkserial@2000:4,cu
-/dev/cua/5 -> ../../devices/[....]/xkserial@2000:5,cu
-/dev/cua/6 -> ../../devices/[....]/xkserial@2000:6,cu
-/dev/cua/7 -> ../../devices/[....]/xkserial@2000:7,cu
-.fi
-.in -2
-.sp
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/dev/term/\fR\fIn\fR\fR
-.ad
-.RS 16n
-Logical serial port devices
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/cua/\fR\fIn\fR\fR
-.ad
-.RS 16n
-Logical dialout port devices
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/inittab\fR\fR
-.ad
-.RS 16n
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/saf/*\fR\fR
-.ad
-.RS 16n
-
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBadd_drv\fR(1M), \fBdevfsadm\fR(1M), \fBdrvconfig\fR(1M), \fBpmadm\fR(1M),
-\fBsacadm\fR(1M), \fBattributes\fR(5), \fBdevfs\fR(7FS), \fBattach\fR(9E),
-\fBddi_create_minor_node\fR(9F)
-.sp
-.LP
-\fI\fR
diff --git a/usr/src/man/man1m/powerd.1m b/usr/src/man/man1m/powerd.1m
deleted file mode 100644
index 85e74a838a..0000000000
--- a/usr/src/man/man1m/powerd.1m
+++ /dev/null
@@ -1,70 +0,0 @@
-'\" te
-.\" Copyright (c) 1999, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH POWERD 1M "May 13, 2017"
-.SH NAME
-powerd \- power manager daemon
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/power/powerd\fR [\fB-n\fR]
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBpowerd\fR daemon is started by \fBpmconfig\fR(1M) to monitor system
-activity and perform an automatic shutdown using the suspend-resume feature.
-When the system is suspended, complete current state is saved on the disk
-before power is removed. On reboot, the system automatically starts a resume
-operation and the system is restored to the same state it was in immediately
-prior to suspend.
-.sp
-.LP
-Immediately prior to system shutdown, the daemon notifies \fBsyslogd\fR(1M) of
-the shutdown, which broadcasts a notification.
-.SH OPTIONS
-.LP
-The following option is supported:
-.sp
-.ne 2
-.na
-\fB\fB-n\fR\fR
-.ad
-.RS 6n
-No broadcast mode. The daemon silently shuts down the system without notifying
-\fBsyslogd\fR(1M).
-.RE
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/etc/power.conf\fR\fR
-.ad
-.RS 19n
-Power Management configuration information file
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Unstable
-.TE
-
-.SH SEE ALSO
-.LP
-\fBpmconfig\fR(1M), \fBsyslogd\fR(1M), \fBpower.conf\fR(4),
-\fBattributes\fR(5), \fBcpr\fR(7), \fBpm\fR(7D)
-.sp
-.LP
-\fIUsing Power Management\fR
diff --git a/usr/src/man/man1m/powertop.1m b/usr/src/man/man1m/powertop.1m
deleted file mode 100644
index 8307bdf330..0000000000
--- a/usr/src/man/man1m/powertop.1m
+++ /dev/null
@@ -1,233 +0,0 @@
-'\" te
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH POWERTOP 1M "May 13, 2017"
-.SH NAME
-powertop \- report and analyze events that affect power management
-.SH SYNOPSIS
-.LP
-.nf
-\fBpowertop\fR [\fB-c\fR \fIprocessor_id\fR] [\fB-d\fR \fIcount\fR] [\fB-t\fR \fIinterval\fR] [\fB-v\fR] [\fB-h\fR]
-.fi
-
-.SH DESCRIPTION
-.LP
-\fBPowerTOP\fR is an observability tool that shows how effectively the system
-is taking advantage of the CPU's power management features. By running the tool
-on an otherwise idle system, the user can see for how long the CPU is running
-at different power states. Ideally, an unutilized (idle) system spends 100%
-of its time running at the lowest power state, but because of background user
-and kernel activity (random software periodically waking to poll status), idle
-systems can consume more power than they should.
-.sp
-.LP
-The tool analyzes system activity periodically and displays a summary of how
-long the processor is executing at each supported power state. It also displays
-the top activities responsible for causing the CPU to wake up and use more
-energy. This report allows the user to identify and diagnose problematic areas
-of the system and optimize its power efficiency.
-.sp
-.LP
-\fBPowerTOP\fR averages the amount of activity that is preventing the CPU from
-entering a lower power state and presents it on the "Wakeups-from-idle per
-second" field. This value represents the total number of wake-ups divided by
-the current interval. Notice that not all events are displayed on the screen at
-all times.
-.sp
-.LP
-During execution, a user can force a refresh of the analysis by pressing the
-\fBR\fR key. The interval time is restored to the default or to a specified
-value. To quit the application, the user must press the \fBQ\fR key.
-.sp
-.LP
-If you are running as root (superuser) or in the Primary Administrator role,
-the tool makes suggestions as how the system can be improved from a power
-management perspective.
-.sp
-.LP
-PowerTOP allows you to freeze each of its three subwindows, enabling you to
-better analyze each subwindow's contents. When you have three different DTrace
-scripts running at the same time, freezing subwindows lowers CPU consumption.
-This feature is activated by pressing the \fBi\fR, \fBf\fR, or \fBe\fR key
-while the tool running. Pressing one of these keys freezes the idle,
-frequency, or event report, respectively. Pressing it once more, unfreezes it.
-This feature is most useful when invoked while the application being analyzed
-is running.
-.sp
-.LP
-\fBPowerTOP\fR runs on \fBxVM\fR(5) domains. However, the report for idle state
-transitions might or might not be accurate as the physical CPU can be shared by
-different virtual CPUs. Both wakeup count and event report displays information
-regarding the current virtualized environment.
-.SH OPTIONS
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-c\fR [\fIprocessor_id\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Specifies which CPU the tool should observe.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-d\fR [\fIcount\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Dumps the results of \fIcount\fR analysis of system activity to the screen.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-h\fR\fR
-.ad
-.sp .6
-.RS 4n
-Displays the command's usage.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-t\fR [\fIinterval\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the interval, in seconds, at which the tool analyzes the system. The
-possible values are between 1 and 100; the default is 5 seconds.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.sp .6
-.RS 4n
-Switches to verbose mode, including noting firings of the kernel cyclic
-subsystem in the event report.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRSetting the Interval
-.sp
-.LP
-The following command sets the interval to two seconds.
-
-.sp
-.in +2
-.nf
-% \fBpowertop -t 2\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRAnalyzing and Dumping System Activity
-.sp
-.LP
-The following command analyzes and dumps system activity to the standard output
-four times.
-
-.sp
-.in +2
-.nf
-% \fBpowertop -d 4\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRReporting Cyclic Subsystem Activity
-.sp
-.LP
-The following command reports cyclic subsystem activity.
-
-.sp
-.in +2
-.nf
-% \fBpowertop -v\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 4 \fRAnalyzing Activity on a Specific Processor
-.sp
-.LP
-The following command runs PowerTOP and only displays data for CPU 3:
-
-.sp
-.in +2
-.nf
-% \fBpowertop -c 3\fR
-.fi
-.in -2
-.sp
-
-.SH EXIT STATUS
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.sp .6
-.RS 4n
-Successful operation.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB1\fR\fR
-.ad
-.sp .6
-.RS 4n
-An error occurred.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB2\fR\fR
-.ad
-.sp .6
-.RS 4n
-Incorrect usage.
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture x86, SPARC
-_
-Interface Stability Volatile
-.TE
-
-.SH SEE ALSO
-.LP
-\fBkstat\fR(1M), \fBpmconfig\fR(1M), \fBpowerd\fR(1M), \fBpsrinfo\fR(1M),
-\fBuadmin\fR(2), \fBlibdevinfo\fR(3LIB), \fBattributes\fR(5), \fBxVM\fR(5),
-\fBcpr\fR(7), \fBpm\fR(7D), \fBpm-components\fR(9P), \fBremovable-media\fR(9P)
-.SH USAGE
-.LP
-You must have \fBDTrace\fR privileges to run \fBPowerTOP\fR and root
-(superuser) privileges or assume the Primary Administrator role for the tool to
-suggest improvements to the system.
diff --git a/usr/src/man/man1m/ppdmgr.1m b/usr/src/man/man1m/ppdmgr.1m
deleted file mode 100644
index be63ba9bc5..0000000000
--- a/usr/src/man/man1m/ppdmgr.1m
+++ /dev/null
@@ -1,317 +0,0 @@
-'\" te
-.\" Copyright (c) 2007 by Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PPDMGR 1M "Mar 9, 2007"
-.SH NAME
-ppdmgr \- utility for managing PPD files
-.SH SYNOPSIS
-.LP
-.nf
-\fBppdmgr\fR \fB-a\fR \fIppd_filename_path\fR [\fB-L\fR \fIlabel\fR] [\fB-R\fR \fIppd_repository_name\fR] [\fB-w\fR]
-.fi
-
-.LP
-.nf
-\fBppdmgr\fR \fB-r\fR [\fB-L\fR \fIlabel\fR] [\fB-R\fR \fIppd_repository_name\fR]
-.fi
-
-.LP
-.nf
-\fBppdmgr\fR \fB-u\fR [\fB-L\fR \fIlabel\fR] [\fB-R\fR \fIppd_repository_name\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The PPD File Manager adds PPD files to the print system's PPD file
-repositories. When changes in the PPD file repositories are made by the
-utility, they are reflected in the Solaris Print Manager (see
-\fBprintmgr\fR(1M)) GUI printer driver field when adding or modifying local
-attached or network attached printers.
-.sp
-.LP
-Multiple PPD file repositories may be available. PPD files that are supplied
-with the system are available in the "\fBsystem\fR" repository. PPD files that
-are supplied by third party vendors may be available in the "\fBvendor\fR"
-repository. PPD files that are supplied by system administrators may be
-available in the "\fBadmin\fR" repository, and PPD files that are added using
-this utility are available in the "user" repository. When this utility is used
-to update or rebuild printer information reflected in the \fBprintmgr\fR(1M),
-the special reserved repository name "\fBall\fR" can be used to specify all of
-the available PPD file repositories.
-.sp
-.LP
-PPD files are grouped under a user-provided "label" within the print system's
-PPD file repository to allow easier selection of a printer driver through the
-\fBprintmgr\fR GUI. The special reserved label name "\fBall\fR" can be used to
-specify all of the available labels in a PPD file repository. The results are
-undefined if a label name contains characters that are not in the portable
-filename character set or if a label name starts with a hyphen (-). A label
-name may not contain a semi-colon (:).
-.SH OPTIONS
-.sp
-.LP
-The following subcommand are supported:
-.sp
-.ne 2
-.na
-\fB\fB-a\fR \fIppd_file_path\fR\fR
-.ad
-.sp .6
-.RS 4n
-Adds a copy of \fIppd_file_path\fR to the system under the specified label in
-the specified repository, where \fIppd_file_path\fR is the full path and file
-name to the PPD file. The utility accepts a valid PPD file with either a
-\fB\&.ppd\fR or \fB\&.ppd.gz\fR (gzipped) extension.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-L\fR \fIlabel\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies a label to group PPD files under. When specified with the \fB-a\fR
-option, the default label is "\fBuser\fR". When specified with the \fB-r\fR or
-\fB-u\fR option, the default label is "\fBall\fR". The following are reserved
-labels:
-.sp
-.ne 2
-.na
-\fB\fBcaches\fR\fR
-.ad
-.RS 16n
-may never be specified
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBppdcache\fR\fR
-.ad
-.RS 16n
-may never be specified
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmanufaliases\fR\fR
-.ad
-.RS 16n
-may never be specified
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBall\fR\fR
-.ad
-.RS 16n
-applies the specified action to all labels in a repository, and may only be
-specified with the \fB-r\fR or \fB-u\fR option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSUNW*\fR\fR
-.ad
-.RS 16n
-anything starting with \fBSUNW\fR is reserved and should not be specified with
-the \fB-a\fR option.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-R\fR \fIrepository_name\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the name of a PPD file repository representing one of the PPD file
-installation locations. Possible repository names include: "\fBuser\fR",
-"\fBadmin\fR", "\fBvendor\fR", "\fBsystem\fR", and "\fBall\fR".
-.sp
-The repository name "\fBall\fR" signifies all of the possible repository names.
-The default repository name is "\fBuser\fR". Only the "\fBuser\fR" or
-"\fBadmin\fR" repository may be specified with the \fB-a\fR option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-r\fR\fR
-.ad
-.sp .6
-.RS 4n
-Rebuilds the cache information for the specified label in the specified
-repository.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-u\fR\fR
-.ad
-.sp .6
-.RS 4n
-Updates the cache information for the specified label in the specified
-repository.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-w\fR\fR
-.ad
-.sp .6
-.RS 4n
-Write the full path of the added PPD file. This option is only valid with the
-\fB-a\fR option. Otherwise, this option is ignored.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRAdding a copy of a PPD file to the repository
-.sp
-.LP
-The following commands add a copy of a PPD file to the "\fBuser\fR" repository
-under the "\fBuser\fR" label:
-
-.sp
-.in +2
-.nf
-# ppdmgr -a /net/somesystem/ppdfiles/ppdfile.ppd
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-or
-
-.sp
-.in +2
-.nf
-# ppdmgr -a /net/somesystem/ppdfiles/ppdfile.ppd -L user
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The following command adds a copy of a PPD file to the "\fBuser\fR" repository
-under the "\fBPhoto\fR" label and write the full path of the added copy to
-standard output:
-
-.sp
-.in +2
-.nf
-# ppdmgr -a /net/somesystem/ppdfiles/ppdfile.ppd -L "Photo" -w
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRUpdating the cache for the PPD files
-.sp
-.LP
-The following commands update the cache for the PPD files under the "\fBall\fR"
-labels in the "\fBuser\fR" repository:
-
-.sp
-.in +2
-.nf
- # ppdmgr -u
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-or
-
-.sp
-.in +2
-.nf
- # ppdmgr -u -R user -L all
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The following command updates the cache for the PPD files under the "photo"
-label in the "\fBuser\fR" repository:
-
-.sp
-.in +2
-.nf
- # ppdmgr -u -R user -L Photo
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRRebuilding the cache for the PPD files
-.sp
-.LP
-The following command rebuilds the cache for the PPD files under the "Photo"
-label in the "\fBuser\fR" repository:
-
-.sp
-.in +2
-.nf
-# ppdmgr -r -R user -L Photo
-.fi
-.in -2
-.sp
-
-.SH EXIT STATUS
-.sp
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 6n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB>0\fR\fR
-.ad
-.RS 6n
-An error occurred.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Committed
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBprintmgr\fR(1M), \fBattributes\fR(5)
diff --git a/usr/src/man/man1m/pppd.1m b/usr/src/man/man1m/pppd.1m
deleted file mode 100644
index 4a2bdb360d..0000000000
--- a/usr/src/man/man1m/pppd.1m
+++ /dev/null
@@ -1,2722 +0,0 @@
-'\" te
-.\" Copyright (c) 1989 Carnegie Mellon University. All rights reserved.
-.\" Redistribution and use in source and binary forms are permitted provided that the above copyright notice and this paragraph are duplicated in all such forms and that any documentation, advertising materials, and other materials related to such distribution and use acknowledge that the software was developed by Carnegie Mellon University. The name of the University may not be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
-.\" WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
-.\" Portions Copyright (c) 2008, Sun Microsystems, Inc. All Right Reserved.
-.TH PPPD 1M "February 5, 2022"
-.SH NAME
-pppd \- point to point protocol daemon
-.SH SYNOPSIS
-.nf
-\fBpppd\fR [\fItty_name\fR] [\fIspeed\fR] [\fIoptions\fR]
-.fi
-
-.SH DESCRIPTION
-The point-to-point protocol (PPP) provides a method for transmitting datagrams
-over serial point-to-point links. PPP is composed of three components: a
-facility for encapsulating datagrams over serial links, an extensible link
-control protocol (LCP), and a family of network control protocols (NCP) for
-establishing and configuring different network-layer protocols.
-.sp
-.LP
-The encapsulation scheme is provided by driver code in the kernel. \fBpppd\fR
-provides the basic LCP authentication support and several NCPs for establishing
-and configuring the Internet Protocol (referred to as the IP Control Protocol
-or "IPCP") and IPv6 (IPV6CP).
-.SH OPTIONS
-The following sections discuss the \fBpppd\fR options:
-.SS "Options Files"
-Options are taken from files and the command line. \fBpppd\fR reads options
-from the files \fB/etc/ppp/options\fR, \fB$HOME/.ppprc\fR and
-\fB/etc/ppp/options.\fR\fIttyname\fR (in that order) before processing the
-options on the command line. (Command-line options are scanned for the terminal
-name before the \fBoptions\fR.\fIttyname\fR file is read.) To form the name of
-the \fBoptions\fR.\fIttyname\fR file, the initial \fB/dev/\fR is removed from
-the terminal name, and any remaining forward slash characters (/) are replaced
-with dots. For example, with serial device \fB/dev/cua/a\fR, option file
-\fB/etc/ppp/options.cua.a\fR is read.
-.sp
-.LP
-An options file is parsed into a series of words that are delimited by
-whitespace. Whitespace can be included in a word by enclosing the word in
-double-quotes ("). A backslash (\e) quotes the succeeding character. A hash (#)
-starts a comment, which continues until the end of the line. There is no
-restriction on using the \fBfile\fR or \fBcall\fR options within an options
-file.
-.SS "Frequently Used Options"
-.ne 2
-.na
-\fB\fB<tty_name>\fR \fR
-.ad
-.RS 23n
-Communicate over the named device. The string \fB/dev/\fR is prepended if
-necessary. If no device name is given, or if the name of the terminal connected
-to the standard input is given, \fBpppd\fR uses that terminal and does not fork
-to put itself in the background. A value for this option from a privileged
-source cannot be overridden by a non-privileged user.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB<speed>\fR \fR
-.ad
-.RS 23n
-Set the baud rate to <\fBspeed\fR> (a decimal number). The default is to leave
-the baud rate unchanged. This option is normally needed for dial-out only.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBasyncmap\fR \fB\fI<map>\fR\fR \fR
-.ad
-.RS 23n
-Set the \fBasync\fR character map to \fI<map>\fR\&. The map describes which
-control characters cannot be successfully received over the serial line.
-\fBpppd\fR asks the peer to send these characters as a 2-byte escape sequence.
-The argument is a 32 bit hex number, with each bit representing a character to
-escape. Bit 0 (00000001) represents the character 0x00; bit 31 (80000000)
-represents the character 0x1f or ^_. If multiple \fBasyncmap\fR options are
-given, the values are \fBORed\fR together. If no \fBasyncmap\fR option is
-given, \fBpppd\fR attempts to negotiate a value of 0. If the peer agrees, this
-disables escaping of the standard control characters. Use the
-\fBdefault-asyncmap\fR option to disable negotiation and escape all control
-characters.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBauth\fR \fR
-.ad
-.RS 23n
-Require the peer to authenticate itself before allowing network packets to be
-sent or received. This option is the default if the system has a default route.
-If the \fBauth\fR or the \fBnoauth\fR option is not specified, \fBpppd\fR
-allows the peer to use only those IP addresses to which the system does not
-already have a route.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcall\fR \fB\fIname\fR\fR \fR
-.ad
-.RS 23n
-Read options from the file \fB/etc/ppp/peers/\fR\fIname\fR. This file may
-contain privileged options, including \fBnoauth\fR, even if \fBpppd\fR is not
-being run by root. The \fIname\fR string may not begin with a slash ("/") or
-include consecutive periods \fB("..")\fR as a pathname component.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcallback\fR \fB\fInumber\fR\fR \fR
-.ad
-.RS 23n
-Request a callback to the given telephone number using Microsoft CBCP.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBconnect\fR \fB\fIscript\fR\fR \fR
-.ad
-.RS 23n
-Use the executable or shell command specified by \fIscript\fR to set up the
-serial line. This script would typically use the \fBchat\fR(1M) program to dial
-the modem and start the remote \fBPPP\fR session. A value for this option
-originating from a privileged source cannot be overridden by a non-privileged
-user.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcrtscts\fR \fR
-.ad
-.RS 23n
-Use hardware flow control, that is, RTS/CTS, to control the flow of data on the
-serial port. If the \fBcrtscts\fR, \fBnocrtscts\fR, \fBcdtrcts\fR or
-\fBnocdtrcts\fR option is not provided, the hardware flow control setting for
-the serial port is left unchanged. Some serial ports lack a true RTS output and
-use this mode to implement unidirectional flow control. The serial port
-suspends transmission when requested by the modem by means of CTS but cannot
-request the modem to stop sending to the computer. This mode allows the use of
-DTR as a modem control line.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdefaultroute\fR \fR
-.ad
-.RS 23n
-Add a default route to the system routing tables when IPCP negotiation
-successfully completes, using the peer as the gateway. This entry is removed
-when the \fBPPP\fR connection is broken. This option is privileged if the
-\fBnodefaultroute\fR option is specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdisconnect\fR \fB \fIscript\fR\fR \fR
-.ad
-.RS 23n
-Run the executable or shell command specified by \fIscript\fR after \fBpppd\fR
-terminates the link. Typically, this script is used to command the modem to
-hang up if hardware modem control signals are not available. \fBdisconnect\fR
-is not run if the modem has already hung up. A value for this option
-originating from a privileged source cannot be overridden by a non-privileged
-user.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBescape\fR \fB\fIxx,yy,...\fR\fR \fR
-.ad
-.RS 23n
-Specifies that certain characters be escaped on transmission regardless of
-whether the peer requests them to be escaped with its \fBasync\fR control
-character map. The characters to be escaped are specified as a list of hex
-numbers separated by commas. Note that almost any character can be specified
-for the \fBescape\fR option, unlike the \fBasyncmap\fR option which allows only
-control characters to be specified. Characters that cannot be escaped are those
-containing hex values 0x20 through 0x3f and 0x5e.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfile\fR \fB\fIname\fR\fR \fR
-.ad
-.RS 23n
-Read options from file \fIname\fR. If this option is used on the command line
-or in \fB$HOME/.ppprc\fR, the file must be readable by the user invoking
-\fBpppd\fR. See for a list of files that \fBpppd\fR always reads, regardless
-of the use of this option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBinit\fR \fB \fIscript\fR \fR \fR
-.ad
-.RS 23n
-Run the executable or shell command specified by \fIscript\fR to initialize the
-serial line. This script would typically use the \fBchat\fR(1M) program to
-configure the modem to enable auto-answer. A value for this option from a
-privileged source cannot be overridden by a non-privileged user.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBlock\fR \fR
-.ad
-.RS 23n
-Directs \fBpppd\fR to create a UUCP-style lock file for the serial device to
-ensure exclusive access to the device.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmru\fR \fB\fIn\fR\fR \fR
-.ad
-.RS 23n
-Set the Maximum Receive Unit (MRU) value to \fIn\fR. \fBpppd\fR asks the peer
-to send packets of no more than \fIn\fR bytes. Minimum MRU value is 128.
-Default MRU value is 1500. A value of 296 is recommended for slow links (40
-bytes for TCP/IP header + 256 bytes of data). For IPv6, MRU must be at least
-1280.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmtu\fR \fB\fIn\fR\fR \fR
-.ad
-.RS 23n
-Set the Maximum Transmit Unit (MTU) value to \fIn\fR. Unless the peer requests
-a smaller value via MRU negotiation, \fBpppd\fR requests the kernel networking
-code to send data packets of no more than \fIn\fR bytes through the PPP network
-interface. For IPv6, MTU must be at least 1280.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpassive\fR \fR
-.ad
-.RS 23n
-Enables the "passive" option in the LCP. With this option, \fBpppd\fR attempts
-to initiate a connection; if no reply is received from the peer, \fBpppd\fR
-waits passively for a valid LCP packet instead of exiting, as it would without
-this option.
-.RE
-
-.SS "Options"
-.ne 2
-.na
-\fB\fB<local_IP_address>:<remote_IP_address>\fR \fR
-.ad
-.sp .6
-.RS 4n
-Set the local and/or remote interface IP addresses. Either one may be omitted,
-but the colon is required. The IP addresses are specified with a host name or
-in decimal dot notation, for example: \fB:10.1.2.3\fR. The default local
-address is the first IP address of the system unless the \fBnoipdefault\fR
-option is provided. The remote address is obtained from the peer if not
-specified in any option. Thus, in simple cases, this option is not required. If
-a local and/or remote IP address is specified with this option, \fBpppd\fR will
-not accept a different value from the peer in the IPCP negotiation unless the
-\fBipcp-accept-local\fR and/or \fBipcp-accept-remote\fR options are given,
-respectively.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBallow-fcs\fR \fB\fIfcs-type\fR\fR \fR
-.ad
-.sp .6
-.RS 4n
-Set allowable FCS type(s) for data sent to the peer. The \fIfcs-type\fR is a
-comma-separated list of "crc16", "crc32", "null", or integers. By default, all
-known types are allowed. If this option is specified and the peer requests a
-type not listed, a LCP Configure-Nak is sent to request only the listed types.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBallow-ip\fR \fB\fIaddress(es)\fR\fR \fR
-.ad
-.sp .6
-.RS 4n
-Allow peers to use the given IP address or subnet without authenticating
-themselves. The parameter is parsed in the same manner as each element of the
-list of allowed IP addresses is parsed in the secrets files. See the section
-more more details.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBbsdcomp\fR \fB\fInr,nt\fR\fR \fR
-.ad
-.sp .6
-.RS 4n
-Request that the peer compress packets that it sends using the BSD-Compress
-scheme, with a maximum code size of \fInr\fR bits, and agree to compress
-packets sent to the peer with a maximum code size of \fInt\fR bits. If \fInt\fR
-is not specified, it defaults to the value given for \fInr\fR. Values in the
-range 9 to 15 may be used for \fInr\fR and \fInt\fR; larger values provide
-better compression but consume more kernel memory for compression dictionaries.
-Alternatively, a value of 0 for \fInr\fR or \fInt\fR disables compression in
-the corresponding direction. Use \fBnobsdcomp\fR or \fBbsdcomp 0\fR to disable
-BSD-Compress compression entirely. If this option is read from a privileged
-source, a nonprivileged user may not specify a code size larger than the value
-from the privileged source.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcdtrcts\fR \fR
-.ad
-.sp .6
-.RS 4n
-Use a non-standard hardware flow control such as DTR/CTS to control the flow of
-data on the serial port. If the \fBcrtscts\fR, \fBnocrtscts\fR, \fBcdtrcts\fR
-or \fBnocdtrcts\fR option is not specified, the hardware flow control setting
-for the serial port is left unchanged. Some serial ports lack a true RTS
-output. Such serial ports use this mode to implement true bi-directional flow
-control. Note that this flow control mode does not permit using DTR as a modem
-control line.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBchap-interval\fR \fB\fIn\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-If this option is given, \fBpppd\fR will rechallenge the peer every \fIn\fR
-seconds.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBchap-max-challenge\fR \fB\fIn\fR\fR \fR
-.ad
-.sp .6
-.RS 4n
-Set the maximum number of CHAP challenge transmissions to \fIn\fR (default 10).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBchap-restart\fR \fB\fIn\fR\fR \fR
-.ad
-.sp .6
-.RS 4n
-Set the CHAP restart interval (retransmission timeout for challenges) to
-\fIn\fR seconds. The default is 3.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBconnect-delay\fR \fB\fIn\fR\fR \fR
-.ad
-.sp .6
-.RS 4n
-Wait for up to \fIn\fR milliseconds after the connect script finishes for a
-valid PPP packet from the peer. When the wait period elapses or when a valid
-PPP packet is received from the peer, \fBpppd\fR begins negotiation by sending
-its first LCP packet. The default value is 1000 (1 second). A wait period
-applies only if the \fBconnect\fR or \fBpty\fR option is used.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdatarate\fR \fB\fIn\fR\fR \fR
-.ad
-.sp .6
-.RS 4n
-Set maximum data rate to \fIn\fR (in bytes per second) when using the
-\fBpty\fR, \fBnotty\fR, \fBrecord\fR, or \fBsocket\fR options.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdebug\fR \fR
-.ad
-.sp .6
-.RS 4n
-Enables connection debugging facilities. If this option is given, \fBpppd\fR
-logs the contents of all control packets sent or received in a readable form.
-The packets are logged through syslog with facility \fBdaemon\fR and level
-\fBdebug\fR. This information can be directed to a file by configuring
-\fB/etc/syslog.conf\fR appropriately.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdefault-asyncmap\fR \fR
-.ad
-.sp .6
-.RS 4n
-Disable \fBasyncmap\fR negotiation, forcing all control characters to be
-escaped for both the transmit and the receive direction.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdefault-fcs\fR \fR
-.ad
-.sp .6
-.RS 4n
-Disable FCS Alternatives negotiation entirely. By default, no FCS Alternatives
-option is sent to the peer, but the option is accepted. If this option is
-specified by the peer, then LCP Configure-Reject is sent.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdefault-mru\fR \fR
-.ad
-.sp .6
-.RS 4n
-Disable MRU [Maximum Receive Unit] negotiation. With this option, \fBpppd\fR
-uses the default MRU value of 1500 bytes for the transmit and receive
-directions.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdeflate\fR \fB\fInr,nt,e\fR\fR \fR
-.ad
-.sp .6
-.RS 4n
-Request that the peer compress packets that it sends, using the \fBdeflate\fR
-scheme, with a maximum window size of \fI2**nr\fR bytes, and agree to compress
-packets sent to the peer with a maximum window size of \fI2**nt\fR bytes and
-effort level of \fIe\fR (1 to 9). If \fInt\fR is not specified, it defaults to
-the value given for \fInr\fR. If \fIe\fR is not specified, it defaults to 6.
-Values in the range 9 to 15 may be used for \fInr\fR and \fInt\fR; larger
-values provide better compression but consume more kernel memory for
-compression dictionaries. (Value 8 is not permitted due to a zlib bug.)
-Alternatively, a value of 0 for \fInr\fR or \fInt\fR disables compression in
-the corresponding direction. Use \fBnodeflate\fR or \fBdeflate 0\fR to disable
-\fBdeflate\fR compression entirely. (Note: \fBpppd\fR requests deflate
-compression in preference to BSD-Compress if the peer can do either.) If this
-option is read from a privileged source, a nonprivileged user may not specify a
-code size larger than the value from the privileged source.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdemand\fR \fR
-.ad
-.sp .6
-.RS 4n
-Initiate the link only on demand, that is, when data traffic is present. With
-this option, the remote IP address must be specified by the user on the command
-line or in an options file. \fBpppd\fR initially configures and enables the
-interface for IP traffic without connecting to the peer. When traffic is
-available, \fBpppd\fR connects to the peer and performs negotiation,
-authentication and other actions. When completed, \fBpppd\fR passes data
-packets across the link. The \fBdemand\fR option implies the \fBpersist\fR
-option. If this behavior is not desired, use the \fBnopersist\fR option after
-the \fBdemand\fR option. The \fBidle\fR and \fBholdoff\fR options can be used
-in conjunction with the \fBdemand\fR option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdomain\fR \fB\fId\fR\fR \fR
-.ad
-.sp .6
-.RS 4n
-Append the domain name \fId\fR to the local host name for authentication
-purposes. For example, if \fBgethostname()\fR returns the name \fBporsche\fR,
-but the fully qualified domain name is \fBporsche.Example.COM\fR, you could
-specify \fBdomain Example.COM\fR. With this configuration, \fBpppd\fR uses the
-name \fBporsche.Example.COM\fR for accessing secrets in the secrets file and as
-the default name when authenticating to the peer. This option is privileged.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBendpoint\fR \fB\fIendpoint-value\fR\fR \fR
-.ad
-.sp .6
-.RS 4n
-Set the endpoint discriminator (normally used for RFC 1990 Multilink PPP
-operation). The \fIendpoint-value\fR consists of a class identifier and a
-class-dependent value. The class identifier is one of "null," "local," "IP,"
-"MAC," "magic," "phone," or a decimal integer. If present, the class-dependent
-value is separated from the identifier by a colon (":") or period (".") . This
-value may be a standard dotted-decimal IP address for class "IP," an optionally
-colon-or-dot separated hex Ethernet address for class "MAC" (must have 6
-numbers), or an arbitrary string of bytes specified in hex with optional colon
-or dot separators between bytes. Although this option is available, this
-implementation does not support multilink.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfcs\fR \fB\fIfcs-type\fR\fR \fR
-.ad
-.sp .6
-.RS 4n
-Set FCS type(s) desired for data sent by the peer. The \fIfcs-type\fR is a
-comma-separated list of \fBcrc16\fR, \fBcrc32\fR, \fBnull\fR, or integers. By
-default, an FCS Alternatives option is not specified, and the medium-dependent
-FCS type is used. If this option is specified and the peer sends an LCP
-Configure-Nak, only the listed types are used. If none are in common, the FCS
-Alternatives option is omitted from the next LCP Configure-Request to drop back
-to the default.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBhide-password\fR \fR
-.ad
-.sp .6
-.RS 4n
-When logging the contents of PAP packets, this option causes \fBpppd\fR to
-exclude the password string from the log. This is the default.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBholdoff\fR \fB\fIn\fR\fR \fR
-.ad
-.sp .6
-.RS 4n
-Specifies how many seconds to wait before re-initiating the link after it
-terminates. This option is effective only if the \fBpersist\fR or \fBdemand\fR
-option is used. The holdoff period is not applied if the link is terminated
-because it was idle.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBident\fR \fB\fIstring\fR\fR \fR
-.ad
-.sp .6
-.RS 4n
-Set the LCP Identification string. The default value is a version string
-similar to that displayed by the \fB--version\fR option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBidle\fR \fB\fIn\fR\fR \fR
-.ad
-.sp .6
-.RS 4n
-Specifies that \fBpppd\fR must disconnect if the link is idle for \fIn\fR
-seconds. The link is idle when no data packets (i.e. IP packets) are being sent
-or received. Do not use this option with the \fBpersist\fR option but without
-the \fBdemand\fR option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBipcp-accept-local\fR \fR
-.ad
-.sp .6
-.RS 4n
-With this option, \fBpppd\fR accepts the peer's idea of the local IP address,
-even if the local IP address is specified in an option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBipcp-accept-remote\fR \fR
-.ad
-.sp .6
-.RS 4n
-With this option, \fBpppd\fR accepts the peer's idea of its remote IP address,
-even if the remote IP address is specified in an option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBipcp-max-configure\fR \fB\fIn\fR\fR \fR
-.ad
-.sp .6
-.RS 4n
-Set the maximum number of IPCP Configure-Request transmissions to \fIn\fR
-(default 10).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBipcp-max-failure\fR \fB\fIn\fR\fR \fR
-.ad
-.sp .6
-.RS 4n
-Set the maximum number of IPCP Configure-NAKs sent before sending
-Configure-Rejects instead to \fIn\fR (default 10).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBipcp-max-terminate\fR \fB\fIn\fR\fR \fR
-.ad
-.sp .6
-.RS 4n
-Set the maximum number of IPCP terminate-request transmissions to \fIn\fR
-(default 3).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBipcp-restart\fR \fB\fIn\fR\fR \fR
-.ad
-.sp .6
-.RS 4n
-Set the IPCP restart interval (retransmission timeout) to \fIn\fR seconds
-(default 3).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBipparam\fR \fB\fIstring\fR\fR \fR
-.ad
-.sp .6
-.RS 4n
-Provides an extra parameter to the ip-up and ip-down scripts. When this option
-is given, the \fIstring\fR supplied is given as the sixth parameter to those
-scripts. See the section.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBipv6\fR
-\fB\fI<local_interface_identifier>\fR,\fI<remote_interface_identifier>\fR\fR
-\fR
-.ad
-.sp .6
-.RS 4n
-Set the local and/or remote 64-bit interface identifier. Either one may be
-omitted. The identifier must be specified in standard ASCII notation of IPv6
-addresses (for example: \fB::dead:beef\fR). If the \fBipv6cp-use-ipaddr\fR
-option is given, the local and remote identifiers are derived from the
-respective IPv4 addresses (see above). The \fBipv6cp-use-persistent\fR option
-can be used instead of the \fBipv6 <local>,<remote>\fR option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBipv6cp-accept-local\fR \fR
-.ad
-.sp .6
-.RS 4n
-Accept peer's interface identifier for the local link identifier.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBipv6cp-max-configure\fR \fB\fIn\fR\fR \fR
-.ad
-.sp .6
-.RS 4n
-Set the maximum number of IPv6CP Configure-Request transmissions to \fIn\fR
-(default 10).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBipv6cp-max-failure\fR \fB\fIn\fR\fR \fR
-.ad
-.sp .6
-.RS 4n
-Set the maximum number of IPv6CP Configure-NAKs sent before sending
-Configure-Rejects instead to \fIn\fR (default 10).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBipv6cp-max-terminate\fR \fB\fIn\fR\fR \fR
-.ad
-.sp .6
-.RS 4n
-Set the maximum number of IPv6CP terminate-request transmissions to \fIn\fR
-(default 3).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBipv6cp-restart\fR \fB\fIn\fR\fR \fR
-.ad
-.sp .6
-.RS 4n
-Set the IPv6CP restart interval (retransmission timeout) to \fIn\fR seconds
-(default 3).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBipv6cp-use-ipaddr\fR \fR
-.ad
-.sp .6
-.RS 4n
-If either the local or remote IPv6 address is unspecified, use the
-corresponding configured IPv4 address as a default interface identifier. (This
-option uses the configured addresses, not the negotiated addresses. Do not use
-it with \fBipcp-accept-local\fR if the local IPv6 identifier is unspecified or
-with \fBipcp-accept-remote\fR if the remote IPv6 identifier is unspecified.)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBipv6cp-use-persistent\fR \fR
-.ad
-.sp .6
-.RS 4n
-Use uniquely-available persistent value for link local address.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBkdebug\fR \fB\fIn\fR\fR \fR
-.ad
-.sp .6
-.RS 4n
-Enable debugging code in the kernel-level PPP driver. Argument \fIn\fR is the
-sum of the following values: \fB1\fR to enable general debug messages, \fB2\fR
-to request that contents of received packets be printed, and \fB4\fR to request
-contents of transmitted packets be printed. Messages printed by the kernel are
-logged by \fBsyslogd\fR(1M) to a file directed in the \fB/etc/syslog.conf\fR
-configuration file. Do not use the \fBkdebug\fR option to debug failed links.
-Use the \fBdebug\fR option instead.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBlcp-echo-failure\fR \fB\fIn\fR\fR \fR
-.ad
-.sp .6
-.RS 4n
-If this option is given, \fBpppd\fR presumes the peer to be dead if \fIn\fR LCP
-Echo-Requests are sent without receiving a valid LCP Echo-Reply. If this
-happens, \fBpppd\fR terminates the connection. This option requires a non-zero
-value for the \fBlcp-echo-interval\fR parameter. This option enables \fBpppd\fR
-to terminate after the physical connection is broken (for example, if the modem
-has hung up) in situations where no hardware modem control lines are available.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBlcp-echo-interval\fR \fB\fIn\fR\fR \fR
-.ad
-.sp .6
-.RS 4n
-If this option is given, \fBpppd\fR sends an LCP Echo-Request frame to the peer
-every \fIn\fR seconds. Normally the peer responds to the Echo-Request by
-sending an Echo-Reply. This option can be used with the \fBlcp-echo-failure\fR
-option to detect that the peer is no longer connected.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBlcp-max-configure\fR \fB\fIn\fR\fR \fR
-.ad
-.sp .6
-.RS 4n
-Set the maximum number of LCP Configure-Request transmissions to \fIn\fR
-(default 10).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBlcp-max-failure\fR \fB\fIn\fR\fR \fR
-.ad
-.sp .6
-.RS 4n
-Set the maximum number of LCP Configure-NAKs sent before starting to send
-Configure-Rejects instead to \fIn\fR (default 10).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBlcp-max-terminate\fR \fB\fIn\fR\fR \fR
-.ad
-.sp .6
-.RS 4n
-Set the maximum number of LCP Terminate-Request transmissions to \fIn\fR
-(default 3).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBlcp-restart\fR \fB\fIn\fR\fR \fR
-.ad
-.sp .6
-.RS 4n
-Set the LCP restart interval (retransmission timeout) to \fIn\fR seconds
-(default 3).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBlinkname\fR \fB\fIname\fR\fR \fR
-.ad
-.sp .6
-.RS 4n
-Sets the logical name of the link to \fIname\fR. \fBpppd\fR creates a file
-named \fBppp-\fR\fIname\fR\fB\&.pid\fR in \fB/var/run\fR containing its process
-ID. This is useful in determining which instance of \fBpppd\fR is responsible
-for the link to a given peer system. This is a privileged option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBlocal\fR \fR
-.ad
-.sp .6
-.RS 4n
-Do not use modem control lines. With this option, \fBpppd\fR ignores the state
-of the CD (Carrier Detect) signal from the modem and does not change the state
-of the DTR (Data Terminal Ready) signal.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBlogfd\fR \fB\fIn\fR\fR \fR
-.ad
-.sp .6
-.RS 4n
-Send log messages to file descriptor \fIn\fR. \fBpppd\fR sends log messages to
-(at most) one file or file descriptor (as well as sending the log messages to
-syslog), so this option and the \fBlogfile\fR option are mutually exclusive. By
-default \fBpppd\fR sends log messages to \fBstdout\fR (file descriptor 1)
-unless the serial port is open on stdout.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBlogfile\fR \fB\fIfilename\fR\fR \fR
-.ad
-.sp .6
-.RS 4n
-Append log messages to the file \fIfilename\fR (and send the log messages to
-syslog). The file is opened in append mode with the privileges of the user who
-invoked \fBpppd\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBlogin\fR \fR
-.ad
-.sp .6
-.RS 4n
-Use the system password database for authenticating the peer using PAP, and
-record the user in the system \fBwtmp\fR file. Note that the peer must have an
-entry in the \fB/etc/ppp/pap-secrets\fR file and the system password database
-to be allowed access.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmaxconnect\fR \fB\fIn\fR\fR \fR
-.ad
-.sp .6
-.RS 4n
-Terminate the connection after it has been available for network traffic for
-\fIn\fR seconds (that is, \fIn\fR seconds after the first network control
-protocol starts). An LCP Time-Remaining message is sent when the first NCP
-starts, and again when 5, 2, and 0.5 minutes are remaining.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmaxfail\fR \fB\fIn\fR\fR \fR
-.ad
-.sp .6
-.RS 4n
-Terminate after \fIn\fR consecutive failed connection attempts. A value of 0
-means no limit. The default value is 10.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmodem\fR \fR
-.ad
-.sp .6
-.RS 4n
-Use the modem control lines. This option is the default. With this option,
-\fBpppd\fR waits for the CD (Carrier Detect) signal from the modem to be
-asserted when opening the serial device (unless a connect script is specified),
-and drops the DTR (Data Terminal Ready) signal briefly when the connection is
-terminated and before executing the connect script.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBms-dns\fR \fB\fI<addr>\fR\fR \fR
-.ad
-.sp .6
-.RS 4n
-If \fBpppd\fR is acting as a server for Microsoft Windows clients, this option
-allows \fBpppd\fR to supply one or two DNS (Domain Name Server) addresses to
-the clients. The first instance of this option specifies the primary DNS
-address; the second instance (if given) specifies the secondary DNS address. If
-the first instance specifies a name that resolves to multiple IP addresses,
-then the first two addresses are used. (This option is present in some older
-versions of \fBpppd\fR under the name \fBdns-addr\fR.)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBms-lanman\fR \fR
-.ad
-.sp .6
-.RS 4n
-If \fBpppd\fR connects as a client to a Microsoft server and uses MS-CHAPv1 for
-authentication, this option selects the LAN Manager password style instead of
-Microsoft NT.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBms-wins\fR \fB\fI<addr>\fR\fR \fR
-.ad
-.sp .6
-.RS 4n
-If \fBpppd\fR acts as a server for Microsoft Windows or Samba clients, this
-option allows \fBpppd\fR to supply one or two WINS (Windows Internet Name
-Services) server addresses to the clients. The first instance of this option
-specifies the primary WINS address; the second instance (if given) specifies
-the secondary WINS address. As with \fBms-dns\fR, if the name specified
-resolves to multiple IP addresses, then the first two will be taken as primary
-and secondary.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBname\fR \fB\fIname\fR\fR \fR
-.ad
-.sp .6
-.RS 4n
-Set the name of the local system for authentication purposes to \fIname\fR.
-This is a privileged option. With this option, \fBpppd\fR uses lines in the
-secrets files that have \fIname\fR as the second field to look for a secret to
-use in authenticating the peer. In addition, unless overridden with the
-\fBuser\fR option, \fIname\fR is used as the name to send to the peer when
-authenticating the local system. (Note that \fBpppd\fR does not append the
-domain name to \fIname\fR.)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBno-accm-test\fR \fR
-.ad
-.sp .6
-.RS 4n
-Disable use of \fBasyncmap\fR (ACCM) checking using LCP Echo-Request messages.
-If the \fBlcp-echo-failure\fR is used on an asynchronous line, \fBpppd\fR
-includes all control characters in the first \fIn\fR LCP Echo-Request messages.
-If the \fBasyncmap\fR is set incorrectly, the link drops rather than continue
-operation with random failures. This option disables that feature.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnoaccomp\fR \fR
-.ad
-.sp .6
-.RS 4n
-Disable HDLC Address/Control compression in both directions (send and receive).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnoauth\fR \fR
-.ad
-.sp .6
-.RS 4n
-Do not require the peer to authenticate itself. This option is privileged.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnobsdcomp\fR \fR
-.ad
-.sp .6
-.RS 4n
-Disables BSD-Compress compression; \fBpppd\fR will not request or agree to
-compress packets using the BSD-Compress scheme. This option is not necessary if
-\fBnoccp\fR is specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnoccp\fR \fR
-.ad
-.sp .6
-.RS 4n
-Disable CCP (Compression Control Protocol) negotiation. This option should only
-be required if the peer has bugs or becomes confused by requests from
-\fBpppd\fR for CCP negotiation. If CCP is disabled, then BSD and deflate
-compression do not need to be separately disabled.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnocrtscts\fR \fR
-.ad
-.sp .6
-.RS 4n
-Disable hardware flow control (i.e. RTS/CTS) on the serial port. If the
-\fBcrtscts\fR, \fBnocrtscts\fR, \fBcdtrcts\fR or \fBnocdtrcts\fR options are
-not given, the hardware flow control setting for the serial port is left
-unchanged.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnocdtrcts\fR \fR
-.ad
-.sp .6
-.RS 4n
-This option is a synonym for \fBnocrtscts\fR. Either option will disable both
-forms of hardware flow control.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnodefaultroute\fR \fR
-.ad
-.sp .6
-.RS 4n
-Disable the \fBdefaultroute\fR option. You can prevent non-root users from
-creating default routes with \fBpppd\fR by placing this option in the
-\fB/etc/ppp/options\fR file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnodeflate\fR \fR
-.ad
-.sp .6
-.RS 4n
-Disables deflate compression; \fBpppd\fR will not request or agree to compress
-packets using the deflate scheme. This option is not necessary if \fBnoccp\fR
-is specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnodeflatedraft\fR \fR
-.ad
-.sp .6
-.RS 4n
-Do not use Internet Draft (incorrectly assigned) algorithm number for deflate
-compression. This option is not necessary if \fBnoccp\fR is specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnodetach\fR \fR
-.ad
-.sp .6
-.RS 4n
-Do not detach from the controlling terminal. Without this option, \fBpppd\fR
-forks to become a background process if a serial device other than the terminal
-on the standard input is specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnoendpoint\fR \fR
-.ad
-.sp .6
-.RS 4n
-Do not send or accept the Multilink Endpoint Discriminator option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnoident\fR \fR
-.ad
-.sp .6
-.RS 4n
-Disable use of LCP Identification. LCP Identification messages will not be sent
-to the peer, but received messages will be logged. (Specify this option twice
-to completely disable LCP Identification. In this case, \fBpppd\fR sends LCP
-Code-Reject in response to received LCP Identification messages.)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnoip\fR \fR
-.ad
-.sp .6
-.RS 4n
-Disable IPCP negotiation and IP communication. Use this option only if the peer
-has bugs or becomes confused by requests from \fBpppd\fR for IPCP negotiation.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnoipv6\fR \fR
-.ad
-.sp .6
-.RS 4n
-Disable IPv6CP negotiation and IPv6 communication. IPv6 is not enabled by
-default.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnoipdefault\fR \fR
-.ad
-.sp .6
-.RS 4n
-Disables the default behavior when no local IP address is specified, which is
-to determine (if possible) the local IP address from the hostname. With this
-option, the peer must supply the local IP address during IPCP negotiation
-(unless it specified explicitly on the command line or in an options file).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnolog\fR \fR
-.ad
-.sp .6
-.RS 4n
-Do not send log messages to a file or file descriptor. This option cancels the
-\fBlogfd\fR and \fBlogfile\fR options. \fBnologfd\fR acts as an alias for this
-option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnomagic\fR \fR
-.ad
-.sp .6
-.RS 4n
-Disable magic number negotiation. With this option, \fBpppd\fR cannot detect a
-looped-back line. Use this option only if the peer has bugs. Do not use this
-option to work around the "Serial line is looped back" error message.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnopam\fR \fR
-.ad
-.sp .6
-.RS 4n
-This privileged option disables use of pluggable authentication modules. If
-this option is specified, \fBpppd\fR reverts to standard authentication
-mechanisms. The default is not to use PAM.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnopcomp\fR \fR
-.ad
-.sp .6
-.RS 4n
-Disable protocol field compression negotiation in the receive and the transmit
-direction.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnopersist\fR \fR
-.ad
-.sp .6
-.RS 4n
-Exit once a connection has been made and terminated. This is the default unless
-the \fBpersist\fR or \fBdemand\fR option is specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnoplink\fR \fR
-.ad
-.sp .6
-.RS 4n
-Cause \fBpppd\fR to use I_LINK instead of I_PLINK. This is the default. When
-I_LINK is used, the system cleans up terminated interfaces (even when SIGKILL
-is used) but does not allow \fBifconfig\fR(1M) to unplumb PPP streams or insert
-or remove modules dynamically. Use the \fBplink\fR option if \fBifconfig\fR(1M)
-modinsert, modremove or unplumb support is needed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnopredictor1\fR \fR
-.ad
-.sp .6
-.RS 4n
-Do not accept or agree to Predictor-1 compression. (This option is accepted for
-compatibility. The implementation does not support Predictor-1 compression.)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnoproxyarp\fR \fR
-.ad
-.sp .6
-.RS 4n
-Disable the \fBproxyarp\fR option. If you want to prevent users from creating
-proxy ARP entries with \fBpppd\fR, place this option in the
-\fB/etc/ppp/options\fR file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnotty\fR \fR
-.ad
-.sp .6
-.RS 4n
-Normally, \fBpppd\fR requires a terminal device. With this option, \fBpppd\fR
-allocates itself a pseudo-terminal pair and uses the subsidiary as its
-terminal device. \fBpppd\fR creates a child process to act as a character shunt
-to transfer characters between the pseudo-terminal manager and its standard
-input and output. Thus, \fBpppd\fR transmits characters on its standard output
-and receives characters on its standard input even if they are not terminal
-devices. This option increases the latency and CPU overhead of transferring
-data over the ppp interface as all of the characters sent and received must
-flow through the character shunt process. An explicit device name may not be
-given if this option is used.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnovj\fR \fR
-.ad
-.sp .6
-.RS 4n
-Disable Van Jacobson style TCP/IP header compression in both the transmit and
-the receive direction.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnovjccomp\fR \fR
-.ad
-.sp .6
-.RS 4n
-Disable the connection-ID compression option in Van Jacobson style TCP/IP
-header compression. With this option, \fBpppd\fR does not omit the
-connection-ID byte from Van Jacobson compressed TCP/IP headers, nor does it ask
-the peer to do so. This option is unnecessary if \fBnovj\fR is specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpam\fR \fR
-.ad
-.sp .6
-.RS 4n
-This privileged option enables use of PAM. If this is specified, \fBpppd\fR
-uses the \fBpam\fR(3PAM) framework for user authentication with a service name
-of "ppp" if the \fBlogin\fR option and PAP authentication are used. The default
-is not to use PAM.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpapcrypt\fR \fR
-.ad
-.sp .6
-.RS 4n
-Indicates that \fBpppd\fR should not accept a password which, before
-encryption, is identical to the secret from the \fB/etc/ppp/pap-secrets\fR
-file. Use this option if the secrets in the \fBpap-secrets\fR file are in
-\fBcrypt\fR(3C) format.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpap-max-authreq\fR \fB\fIn\fR\fR \fR
-.ad
-.sp .6
-.RS 4n
-Set the maximum number of PAP authenticate-request transmissions to \fIn\fR
-(default 10).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpap-restart\fR \fB\fIn\fR\fR \fR
-.ad
-.sp .6
-.RS 4n
-Set the PAP restart interval (retransmission timeout) to \fIn\fR seconds
-(default 3).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpap-timeout\fR \fB\fIn\fR\fR \fR
-.ad
-.sp .6
-.RS 4n
-Set the maximum time that \fBpppd\fR waits for the peer to authenticate itself
-with PAP to \fIn\fR seconds (0= no limit). The default is 30 seconds.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpassword\fR \fB\fIstring\fR\fR \fR
-.ad
-.sp .6
-.RS 4n
-Password string for authentication to the peer.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpersist\fR \fR
-.ad
-.sp .6
-.RS 4n
-Do not exit after a connection is terminated; instead try to reopen the
-connection.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBplink\fR \fR
-.ad
-.sp .6
-.RS 4n
-Cause \fBpppd\fR to use I_PLINK instead of I_LINK. The default is to use
-I_LINK, which cleans up terminated interface (even if SIGKILL is used), but
-does not allow \fBifconfig\fR(1M) to unplumb PPP streams or insert or remove
-modules dynamically. Use this option if \fBifconfig\fR(1M)
-modinsert/modremove/unplumb support is needed. See also the \fBplumbed\fR
-option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBplugin\fR \fB\fIfilename\fR\fR \fR
-.ad
-.sp .6
-.RS 4n
-Load the shared library object file \fIfilename\fR as a plugin. This is a
-privileged option. Unless the filename specifies an explicit path,
-\fB/etc/ppp/plugins\fR and \fB/usr/lib/inet/ppp\fR will be searched for the
-object to load in that order.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBplumbed\fR \fR
-.ad
-.sp .6
-.RS 4n
-This option indicates that \fBpppd\fR should find a plumbed interface and use
-that for the session. If IPv4 addresses or IPv6 interface IDs or link MTU are
-otherwise unspecified, they are copied from the interface selected. This mode
-mimics some of the functionality of the older \fBaspppd\fR implementation and
-may be helpful when \fBpppd\fR is used with external applications that use
-\fBifconfig\fR(1M).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpppmux\fR \fB\fItimer\fR\fR \fR
-.ad
-.sp .6
-.RS 4n
-Enable PPP Multiplexing option negotiation and set transmit multiplexing
-timeout to \fItimer\fR microseconds.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBprivgroup\fR \fB\fIgroup-name\fR\fR \fR
-.ad
-.sp .6
-.RS 4n
-Allows members of group \fIgroup-name\fR to use privileged options. This is a
-privileged option. Because there is no guarantee that members of
-\fIgroup-name\fR cannot use \fBpppd\fR to become root themselves, you should be
-careful using this option. Consider it equivalent to putting the members of
-\fIgroup-name\fR in the \fBroot\fR or \fBsys\fR group.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBproxyarp\fR \fR
-.ad
-.sp .6
-.RS 4n
-Add an entry to the system's Address Resolution Protocol (ARP) table with the
-IP address of the peer and the Ethernet address of this system. When you use
-this option, the peer appears to other systems to be on the local Ethernet. The
-remote address on the PPP link must be in the same subnet as assigned to an
-Ethernet interface.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpty\fR \fB \fIscript\fR\fR \fR
-.ad
-.sp .6
-.RS 4n
-Specifies that the command \fIscript\fR, and not a specific terminal device is
-used for serial communication. \fBpppd\fR allocates itself a pseudo-terminal
-pair and uses the subsidiary as its terminal device. \fIscript\fR runs
-in a child process with the pseudo-terminal manager as its standard input and
-output. An explicit device name may not be given if this option is used.
-(Note: if the \fBrecord\fR option is used in conjunction with the \fBpty\fR
-option, the child process will have pipes on its standard input and output.)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBreceive-all\fR \fR
-.ad
-.sp .6
-.RS 4n
-With this option, \fBpppd\fR accepts all control characters from the peer,
-including those marked in the receive \fBasyncmap\fR. Without this option,
-\fBpppd\fR discards those characters as specified in \fIRFC 1662\fR. This
-option should be used only if the peer has bugs, as is often found with
-dial-back implementations.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrecord\fR \fB\fIfilename\fR\fR \fR
-.ad
-.sp .6
-.RS 4n
-Directs \fBpppd\fR to record all characters sent and received to a file named
-\fIfilename\fR. \fIfilename\fR is opened in append mode, using the user's
-user-ID and permissions. Because this option uses a pseudo-terminal and a
-process to transfer characters between the pseudo-terminal and the real serial
-device, it increases the latency and CPU overhead of transferring data over the
-PPP interface. Characters are stored in a tagged format with timestamps that
-can be displayed in readable form using the \fBpppdump\fR(1M) program. This
-option is generally used when debugging the kernel portion of \fBpppd\fR
-(especially CCP compression algorithms) and not for debugging link
-configuration problems. See the \fBdebug\fR option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBremotename\fR \fB\fIname\fR\fR \fR
-.ad
-.sp .6
-.RS 4n
-Set the assumed name of the remote system for authentication purposes to
-\fIname\fR. Microsoft WindowsNT does not provide a system name in its CHAP
-Challenge messages, and this option is often used to work around this problem.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrefuse-chap\fR \fR
-.ad
-.sp .6
-.RS 4n
-With this option, \fBpppd\fR will not agree to authenticate itself to the peer
-using standard Challenge Handshake Authentication Protocol (CHAP). (MS-CHAP is
-not affected.)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrefuse-mschap\fR \fR
-.ad
-.sp .6
-.RS 4n
-Do not agree to authenticate to peer with MS-CHAPv1. If this option is
-specified, requests for MS-CHAPv1 authentication from the peer are declined
-with LCP Configure-Nak. That option does not disable any other form of CHAP.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrefuse-mschapv2\fR \fR
-.ad
-.sp .6
-.RS 4n
-Do not agree to authenticate to peer with MS-CHAPv2. If specified, this option
-requests that MS-CHAPv2 authentication from the peer be declined with LCP
-Configure-Nak. That option does not disable any other form of CHAP.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrefuse-pap\fR \fR
-.ad
-.sp .6
-.RS 4n
-With this option, \fBpppd\fR will not agree to authenticate itself to the peer
-using Password Authentication Protocol (PAP).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrequire-chap\fR \fR
-.ad
-.sp .6
-.RS 4n
-Require the peer to authenticate itself using standard CHAP authentication.
-MS-CHAP is not affected.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrequire-mschap\fR \fR
-.ad
-.sp .6
-.RS 4n
-Require the peer to authenticate itself using MS-CHAPv1 authentication.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrequire-mschapv2\fR \fR
-.ad
-.sp .6
-.RS 4n
-Require the peer to authenticate itself using MS-CHAPv2 authentication.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrequire-pap\fR \fR
-.ad
-.sp .6
-.RS 4n
-Require the peer to authenticate itself using PAP authentication.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBshow-password\fR \fR
-.ad
-.sp .6
-.RS 4n
-When logging contents of PAP packets, this option causes \fBpppd\fR to show the
-password string in the log message.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsilent\fR \fR
-.ad
-.sp .6
-.RS 4n
-With this option, \fBpppd\fR will not transmit LCP packets to initiate a
-connection until a valid LCP packet is received from the peer. This is like the
-"passive" option with older versions of \fBpppd\fR and is retained for
-compatibility, but the current \fBpassive\fR option is preferred.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsmall-accm-test\fR \fR
-.ad
-.sp .6
-.RS 4n
-When checking the \fBasyncmap\fR (ACCM) setting, \fBpppd\fR uses all 256
-possible values by default. See \fBno-accm-test\fR. This option restricts the
-test so that only the 32 values affected by standard ACCM negotiation are
-tested. This option is useful on very slow links.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsocket\fR \fB\fIhost\fR:\fIport\fR\fR \fR
-.ad
-.sp .6
-.RS 4n
-Connect to given host and port using TCP and run PPP over this connection.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsync\fR \fR
-.ad
-.sp .6
-.RS 4n
-Use synchronous HDLC serial encoding instead of asynchronous. The device used
-by \fBpppd\fR with this option must have sync support. Currently supports
-\fBzs\fR, \fBse\fR, and \fBhsi\fR drivers.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBunit\fR \fB\fIn\fR\fR \fR
-.ad
-.sp .6
-.RS 4n
-Set PPP interface unit number to \fIn\fR, if possible.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBupdetach\fR \fR
-.ad
-.sp .6
-.RS 4n
-With this option, \fBpppd\fR detaches from its controlling terminal after
-establishing the PPP connection. When this is specified, messages sent to
-\fBstderr\fR by the connect script, usually \fBchat\fR(1M), and debugging
-messages from the debug option are directed to \fBpppd\fR's standard output.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBusehostname\fR \fR
-.ad
-.sp .6
-.RS 4n
-Enforce the use of the hostname with domain name appended, if given, as the
-name of the local system for authentication purposes. This overrides the
-\fBname\fR option. Because the \fBname\fR option is privileged, this option is
-normally not needed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBusepeerdns\fR \fR
-.ad
-.sp .6
-.RS 4n
-Ask the peer for up to two DNS server addresses. Addresses supplied by the
-peer, if any, are passed to the \fB/etc/ppp/ip-up\fR script in the environment
-variables DNS1 and DNS2. In addition, \fBpppd\fR creates an
-\fB/etc/ppp/resolv.conf\fR file containing one or two nameserver lines with the
-address(es) supplied by the peer.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBuser\fR \fB\fIname\fR\fR \fR
-.ad
-.sp .6
-.RS 4n
-Sets the name used for authenticating the local system to the peer to
-\fIname\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBvj-max-slots\fR \fB\fIn\fR\fR \fR
-.ad
-.sp .6
-.RS 4n
-Sets the number of connection slots to be used by the Van Jacobson TCP/IP
-header compression and decompression code to \fIn\fR, which must be between 2
-and 16 (inclusive).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBwelcome\fR \fB\fIscript\fR\fR \fR
-.ad
-.sp .6
-.RS 4n
-Run the executable or shell command specified by \fIscript\fR before initiating
-PPP negotiation, after the connect script, if any, has completed. A value for
-this option from a privileged source cannot be overridden by a non-privileged
-user.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBxonxoff\fR \fR
-.ad
-.sp .6
-.RS 4n
-Use software flow control, that is, XON/XOFF, to control the flow of data on
-the serial port.
-.RE
-
-.SS "Obsolete Options"
-The following options are obsolete:
-.sp
-.ne 2
-.na
-\fB\fB+ua\fR \fB\fIname\fR\fR\fR
-.ad
-.RS 14n
-Read a PAP user name and password from the file \fIname\fR. This file must have
-two lines for name and password. Name and password are sent to the peer when
-the peer requests PAP authentication.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB+ipv6\fR \fR
-.ad
-.RS 14n
-Enable IPv6 and IPv6CP without specifying interface identifiers.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB--version\fR \fR
-.ad
-.RS 14n
-Show version number and exit.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB--help\fR \fR
-.ad
-.RS 14n
-Show brief help message and exit.
-.RE
-
-.SH EXTENDED DESCRIPTION
-The following sections discuss miscellaneous features of \fBpppd\fR:
-.SS "Security"
-\fBpppd\fR allows system administrators to provide legitimate users with PPP
-access to a server machine without fear of compromising the security of the
-server or the network it runs on. Access control is provided by restricting IP
-addresses the peer may use based on its authenticated identity (if any), and
-through restrictions on options a non-privileged user may use. Options that
-permit potentially insecure configurations are privileged. Privileged options
-are accepted only in files that are under the control of the system
-administrator or when \fBpppd\fR is being run by root.
-.sp
-.LP
-By default, \fBpppd\fR allows an unauthenticated peer to use a given IP address
-only if the system does not already have a route to that IP address. For
-example, a system with a permanent connection to the wider Internet will
-normally have a default route, meaning all peers must authenticate themselves
-to set up a connection. On such a system, the \fBauth\fR option is the default.
-Conversely, a system with a PPP link that comprises the only connection to the
-Internet probably does not possess a default route, so the peer can use
-virtually any IP address without authenticating itself.
-.sp
-.LP
-Security-sensitive options are privileged and cannot be accessed by a
-non-privileged user running \fBpppd\fR, either on the command line, in the
-user's \fB$HOME/.ppprc\fR file, or in an options file read using the \fBfile\fR
-option. Privileged options may be used in \fB/etc/ppp/options\fR file or in an
-options file read using the \fBcall\fR option. If \fBpppd\fR is run by the root
-user, privileged options can be used without restriction. If the
-\fB/etc/ppp/options\fR file does not exist, then only root may invoke
-\fBpppd\fR. The \fB/etc/ppp/options\fR file must be created (but may be empty)
-to allow ordinary non-root users to access \fBpppd\fR.
-.sp
-.LP
-When opening the device, \fBpppd\fR uses the invoking user's user ID or the
-root UID (that is, 0), depending if the device name was specified by the user
-or the system administrator. If the device name comes from a privileged source,
-that is, \fB/etc/ppp/options\fR or an options file read using the \fBcall\fR
-option, \fBpppd\fR uses full root privileges when opening the device. Thus, by
-creating an appropriate file under \fB/etc/ppp/peers\fR, the system
-administrator can allow users to establish a PPP connection via a device that
-they would not normally have access to. Otherwise \fBpppd\fR uses the invoking
-user's real UID when opening the device.
-.SS "Authentication"
-During the authentication process, one peer convinces the other of its identity
-by sending its name and some secret information to the other. During
-authentication, the first peer becomes the "client" and the second becomes the
-"server." Authentication names can (but are not required to) correspond to the
-peer's Internet hostnames.
-.sp
-.LP
-\fBpppd\fR supports four authentication protocols: the Password Authentication
-Protocol (PAP) and three forms of the Challenge Handshake Authentication
-Protocol (CHAP). With the PAP protocol, the client sends its name and a
-cleartext password to the server to authenticate itself. With CHAP, the server
-initiates the authentication exchange by sending a challenge to the client who
-must respond with its name and a hash value derived from the shared secret and
-the challenge.
-.sp
-.LP
-The PPP protocol is symmetrical, meaning that each peer may be required to
-authenticate itself to the other. Different authentication protocols and names
-can be used for each exchange.
-.sp
-.LP
-By default, \fBpppd\fR authenticates if requested and does not require
-authentication from the peer. However, \fBpppd\fR does not authenticate itself
-with a specific protocol if it has no secrets that can do so.
-.sp
-.LP
-\fBpppd\fR stores authentication secrets in the \fB/etc/ppp/pap-secrets\fR (for
-PAP), and \fB/etc/ppp/chap-secrets\fR (for CHAP) files. Both files use the same
-format. \fBpppd\fR uses secrets files to authenticate itself to other systems
-and to authenticate other systems to itself.
-.sp
-.LP
-Secrets files contain one secret per line. Secrets are specific to a particular
-combination of client and server and can only be used by that client to
-authenticate itself to that server. Each line in a secrets file has a minimum
-of three fields that contain the client and server names followed by the
-secret. Often, these three fields are followed by IP addresses that are used by
-clients to connect to a server.
-.sp
-.LP
-A secrets file is parsed into words, with client name, server name and secrets
-fields allocated one word each. Embedded spaces or other special characters
-within a word must be quoted or escaped. Case is significant in all three
-fields.
-.sp
-.LP
-A secret beginning with an at sign ("@") is followed by the name of a file
-containing the secret. An asterisk (*) as the client or server name matches any
-name. When choosing a match, \fBpppd\fR selects the one with the fewest
-wildcards. Succeeding words on a line are interpreted by \fBpppd\fR as
-acceptable IP addresses for that client. IP Addresses are disallowed if they
-appear in lines that contain only three words or lines whose first word begins
-with a hyphen ("-"). To allow any address, use "*". An address starting with an
-exclamation point ("!") indicates that the specified address is not acceptable.
-An address may be followed by "/" and a number \fIn\fR to indicate a whole
-subnet (all addresses that have the same value in the most significant \fIn\fR
-bits). In this form, the address may be followed by a plus sign ("+") to
-indicate that one address from the subnet is authorized, based on the ppp
-network interface unit number in use. In this case, the host part of the
-address is set to the unit number, plus one.
-.sp
-.LP
-When authenticating the peer, \fBpppd\fR chooses a secret with the peer's name
-in the first field of the secrets file and the name of the local system in the
-second field. The local system name defaults to the hostname, with the domain
-name appended if the \fBdomain\fR option is used. The default can be overridden
-with the \fBname\fR option unless the \fBusehostname\fR option is used.
-.sp
-.LP
-When authenticating to the peer, \fBpppd\fR first determines the name it will
-use to identify itself to the peer. This name is specified with the \fBuser\fR
-option. If the \fBuser\fR option is not used, the name defaults to the host
-name of the local system. \fBpppd\fR then selects a secret from the secrets
-file by searching for an entry with a local name in the first field and the
-peer's name in the second field. \fBpppd\fR will know the name of the peer if
-standard CHAP authentication is used because the peer will have sent it in the
-Challenge packet. However, if MS-CHAP or PAP is being used, \fBpppd\fR must
-determine the peer's name from the options specified by the user. The user can
-specify the peer's name directly with the \fBremotename\fR option. Otherwise,
-if the remote IP address was specified by a name, rather than in numeric form,
-that name will be used as the peer's name. If that fails, \fBpppd\fR uses the
-null string as the peer's name.
-.sp
-.LP
-When authenticating the peer with PAP, the supplied password is compared with
-data in the secrets file. If the password and secret do not match, the password
-is encrypted using \fBcrypt()\fR and checked against the secret again. If the
-\fBpapcrypt\fR option is given, the first unencrypted comparison is omitted for
-better security, and entries must thus be in encrypted \fBcrypt\fR(3C) form.
-.sp
-.LP
-If the \fBlogin\fR option is specified, the username and password are also
-checked against the system password database. This allows you to set up the
-\fBpap-secrets\fR file to enable PPP access only to certain users, and to
-restrict the set of IP addresses available to users. Typically, when using the
-\fBlogin\fR option, the secret in \fB/etc/ppp/pap-secrets\fR would be "", which
-matches any password supplied by the peer. This makes having the same secret in
-two places unnecessary. When \fBlogin\fR is used, the \fBpam\fR option enables
-access control through \fBpam\fR(3PAM).
-.sp
-.LP
-Authentication must be completed before IPCP (or other network protocol) can be
-started. If the peer is required to authenticate itself and fails, \fBpppd\fR
-closes LCP and terminates the link. If IPCP negotiates an unacceptable IP
-address for the remote host, IPCP is closed. IP packets are sent or received
-only when IPCP is open.
-.sp
-.LP
-To allow hosts that cannot authenticate themselves to connect and use one of a
-restricted set of IP addresses, add a line to the \fBpap-secrets\fR file
-specifying the empty string for the client name and secret.
-.sp
-.LP
-Additional \fBpppd\fR options for a given peer may be specified by placing them
-at the end of the secrets entry, separated by two dashes (--). For example
-.sp
-.in +2
-.nf
-peername servername secret ip-address -- novj
-.fi
-.in -2
-
-.SS "Routing"
-When IPCP negotiation is complete, \fBpppd\fR informs the kernel of the local
-and remote IP addresses for the PPP interface and creates a host route to the
-remote end of the link that enables peers to exchange IP packets. Communication
-with other machines generally requires further modification to routing tables
-and/or Address Resolution Protocol (ARP) tables. In most cases the
-\fBdefaultroute\fR and/or \fBproxyarp\fR options are sufficient for this, but
-further intervention may be necessary. If further intervention is required, use
-the \fB/etc/ppp/ip-up\fR script or a routing protocol daemon.
-.sp
-.LP
-To add a default route through the remote host, use the \fBdefaultroute\fR
-option. This option is typically used for "client" systems; that is, end-nodes
-that use the PPP link for access to the general Internet.
-.sp
-.LP
-In some cases it is desirable to use proxy ARP, for example on a server machine
-connected to a LAN, to allow other hosts to communicate with the remote host.
-\fBproxyarp\fR instructs \fBpppd\fR to look for a network interface on the same
-subnet as the remote host. That is, an interface supporting broadcast and ARP
-that is not a point-to-point or loopback interface and that is currently up. If
-found, \fBpppd\fR creates a permanent, published ARP entry with the IP address
-of the remote host and the hardware address of the network interface.
-.sp
-.LP
-When the \fBdemand\fR option is used, the interface IP addresses are already
-set at the time when IPCP comes up. If \fBpppd\fR cannot negotiate the same
-addresses it used to configure the interface, it changes the interface IP
-addresses to the negotiated addresses. This may disrupt existing connections.
-Using demand dialing with peers that perform dynamic IP address assignment is
-not recommended.
-.SS "Scripts"
-\fBpppd\fR invokes scripts at various stages during processing that are used to
-perform site-specific ancillary processing. These scripts may be shell scripts
-or executable programs. \fBpppd\fR does not wait for the scripts to finish. The
-scripts are executed as \fBroot\fR (with the real and effective user-id set to
-0), enabling them to update routing tables, run privileged daemons, or perform
-other tasks. Be sure that the contents of these scripts do not compromise your
-system's security. \fBpppd\fR runs the scripts with standard input, output and
-error redirected to \fB/dev/null\fR, and with an environment that is empty
-except for some environment variables that give information about the link. The
-\fBpppd\fR environment variables are:
-.sp
-.ne 2
-.na
-\fB\fBDEVICE\fR \fR
-.ad
-.RS 15n
-Name of the serial tty device.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBIFNAME\fR \fR
-.ad
-.RS 15n
-Name of the network interface.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBIPLOCAL\fR \fR
-.ad
-.RS 15n
-IP address for the link's local end. This is set only when IPCP has started.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBIPREMOTE\fR \fR
-.ad
-.RS 15n
-IP address for the link's remote end. This is set only when IPCP has started.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPEERNAME\fR \fR
-.ad
-.RS 15n
-Authenticated name of the peer. This is set only if the peer authenticates
-itself.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSPEED\fR \fR
-.ad
-.RS 15n
-Baud rate of the tty device.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBORIG_UID\fR \fR
-.ad
-.RS 15n
-Real user-id of user who invoked \fBpppd\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPPPLOGNAME\fR \fR
-.ad
-.RS 15n
-Username of the real user-id who invoked \fBpppd\fR. This is always set.
-.RE
-
-.sp
-.LP
-\fBpppd\fR also sets the following variables for the ip-down and auth-down
-scripts:
-.sp
-.ne 2
-.na
-\fB\fBCONNECT_TIME\fR \fR
-.ad
-.RS 17n
-Number of seconds between the start of PPP negotiation and connection
-termination.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBBYTES_SENT\fR \fR
-.ad
-.RS 17n
-Number of bytes sent at the level of the serial port during the connection.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBBYTES_RCVD\fR \fR
-.ad
-.RS 17n
-Number of bytes received at the level of the serial port during the connection.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBLINKNAME\fR \fR
-.ad
-.RS 17n
-Logical name of the link, set with the \fBlinkname\fR option.
-.RE
-
-.sp
-.LP
-If they exist, \fBpppd\fR invokes the following scripts. It is not an error if
-they do not exist.
-.sp
-.ne 2
-.na
-\fB\fB/etc/ppp/auth-up\fR \fR
-.ad
-.RS 23n
-Program or script executed after the remote system successfully authenticates
-itself. It is executed with five command-line arguments: \fBinterface-name
-peer-name user-name tty-device speed\fR. Note that this script is not executed
-if the peer does not authenticate itself, for example, when the \fBnoauth\fR
-option is used.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/ppp/auth-down\fR \fR
-.ad
-.RS 23n
-Program or script executed when the link goes down if \fB/etc/ppp/auth-up\fR
-was previously executed. It is executed in the same manner with the same
-parameters as \fB/etc/ppp/auth-up\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/ppp/ip-up\fR \fR
-.ad
-.RS 21n
-A program or script that is executed when the link is available for sending and
-receiving IP packets (that is, IPCP has come up). It is executed with six
-command-line arguments: \fBinterface-name tty-device speed local-IP-address
-remote-IP-address ipparam\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/ppp/ip-down\fR \fR
-.ad
-.RS 21n
-A program or script which is executed when the link is no longer available for
-sending and receiving IP packets. This script can be used for undoing the
-effects of the \fB/etc/ppp/ip-up\fR script. It is invoked in the same manner
-and with the same parameters as the \fBip-up\fR script.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/ppp/ipv6-up\fR \fR
-.ad
-.RS 21n
-Similar to \fB/etc/ppp/ip-up\fR, except that it is executed when the link is
-available for sending and receiving IPv6 packets. Executed with six
-command-line arguments: \fBinterface-name tty-device speed
-local-link-local-address remote-link-local-address ipparam\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/ppp/ipv6-down\fR \fR
-.ad
-.RS 23n
-Similar to \fB/etc/ppp/ip-down\fR, but executed when IPv6 packets can no longer
-be transmitted on the link. Executed with the same parameters as the ipv6-up
-script.
-.RE
-
-.SH EXAMPLES
-\fBExample 1 \fRUsing the \fBauth\fR Option
-.sp
-.LP
-The following examples assume that the \fB/etc/ppp/options\fR file contains the
-\fBauth\fR option.
-
-.sp
-.LP
-\fBpppd\fR is commonly used to dial out to an ISP. You can do this using the
-"\fBpppd call isp\fR" command where the \fB/etc/ppp/peers/isp\fR file is set up
-to contain a line similar to the following:
-
-.sp
-.in +2
-.nf
-cua/a 19200 crtscts connect '/usr/bin/chat -f /etc/ppp/chat-isp' noauth
-.fi
-.in -2
-
-.sp
-.LP
-For this example, \fBchat\fR(1M) is used to dial the ISP's modem and process
-any login sequence required. The \fB/etc/ppp/chat-isp\fR file is used by
-\fBchat\fR and could contain the following:
-
-.sp
-.in +2
-.nf
-ABORT "NO CARRIER"
-ABORT "NO DIALTONE"
-ABORT "ERROR"
-ABORT "NO ANSWER"
-ABORT "BUSY"
-ABORT "Username/Password Incorrect"
-"" "at"
-OK "at&f&d2&c1"
-OK "atdt2468135"
-"name:" "^Umyuserid"
-"word:" "\eqmypassword"
-"ispts" "\eq^Uppp"
-"~-^Uppp-~"
-.fi
-.in -2
-
-.sp
-.LP
-See the \fBchat\fR(1M) man page for details of \fBchat\fR scripts.
-
-.LP
-\fBExample 2 \fRUsing \fBpppd\fR with \fBproxyarp\fR
-.sp
-.LP
-\fBpppd\fR can also provide a dial-in ppp service for users. If the users
-already have login accounts, the simplest way to set up the ppp service is to
-let the users log in to their accounts and run \fBpppd\fR as shown in the
-following example:
-
-.sp
-.in +2
-.nf
-example% \fBpppd proxyarp\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRProviding a User with Access to PPP Facilities
-.sp
-.LP
-To provide a user with access to the PPP facilities, allocate an IP address for
-the user's machine, create an entry in \fB/etc/ppp/pap-secrets\fR or
-\fB/etc/ppp/chap-secrets\fR. This enables the user's machine to authenticate
-itself. For example, to enable user "Joe" using machine "joespc" to dial in to
-machine "server" and use the IP address "joespc.example.net," add the following
-entry to the \fB/etc/ppp/pap-secrets\fR or \fB/etc/ppp/chap-secrets\fR files:
-
-.sp
-.in +2
-.nf
-\fBjoespc server "joe's secret" joespc.example.net\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Alternatively, you can create another username, for example "ppp," whose login
-shell is \fB/usr/bin/pppd\fR and whose home directory is \fB/etc/ppp\fR. If you
-run \fBpppd\fR this way, add the options to the \fB/etc/ppp/.ppprc\fR file.
-
-.sp
-.LP
-If your serial connection is complex, it may be useful to escape such control
-characters as XON (^Q) and XOFF (^S), using \fBasyncmap a0000\fR. If the path
-includes a telnet, escape ^] (\fBasyncmap 200a0000\fR). If the path includes a
-\fBrlogin\fR command, add \fBescape ff\fR option to the options, because
-\fBrlogin\fR removes the window-size-change sequence [0xff, 0xff, 0x73, 0x73,
-followed by any 8 bytes] from the stream.
-
-.SH EXIT STATUS
-The \fBpppd\fR exit status indicates errors or specifies why a link was
-terminated. Exit status values are:
-.sp
-.ne 2
-.na
-\fB\fB0\fR \fR
-.ad
-.RS 7n
-\fBpppd\fR has detached or the connection was successfully established and
-terminated at the peer's request.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB1\fR \fR
-.ad
-.RS 7n
-An immediately fatal error occurred. For example, an essential system call
-failed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB2\fR \fR
-.ad
-.RS 7n
-An error was detected in the options given. For example, two mutually exclusive
-options were used, or \fB/etc/ppp/options\fR is missing and the user is not
-root.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB3\fR \fR
-.ad
-.RS 7n
-\fBpppd\fR is not \fBsetuid-root\fR and the invoking user is not root.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB4\fR \fR
-.ad
-.RS 7n
-The kernel does not support PPP. For example, the PPP kernel driver is not
-included or cannot be loaded.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB5\fR \fR
-.ad
-.RS 7n
-\fBpppd\fR terminated because it was sent a SIGINT, SIGTERM or SIGHUP signal.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB6\fR \fR
-.ad
-.RS 7n
-The serial port could not be locked.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB7\fR \fR
-.ad
-.RS 7n
-The serial port could not be opened.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB8\fR \fR
-.ad
-.RS 7n
-The connect script failed and returned a non-zero exit status.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB9\fR \fR
-.ad
-.RS 7n
-The command specified as the argument to the \fBpty\fR option could not be run.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB10\fR \fR
-.ad
-.RS 7n
-The PPP negotiation failed because no network protocols were able to run.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB11\fR \fR
-.ad
-.RS 7n
-The peer system failed or refused to authenticate itself.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB12\fR \fR
-.ad
-.RS 7n
-The link was established successfully, but terminated because it was idle.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB13\fR \fR
-.ad
-.RS 7n
-The link was established successfully, but terminated because the connect time
-limit was reached.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB14\fR \fR
-.ad
-.RS 7n
-Callback was negotiated and an incoming call should arrive shortly.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB15\fR \fR
-.ad
-.RS 7n
-The link was terminated because the peer is not responding to echo requests.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB16\fR \fR
-.ad
-.RS 7n
-The link was terminated by the modem hanging up.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB17\fR \fR
-.ad
-.RS 7n
-The PPP negotiation failed because serial loopback was detected.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB18\fR \fR
-.ad
-.RS 7n
-The init script failed because a non-zero exit status was returned.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB19\fR \fR
-.ad
-.RS 7n
-Authentication to the peer failed.
-.RE
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/var/run/sppp\fIn\fR\fR\fB\&.pid\fR \fR
-.ad
-.RS 29n
-Process-ID for \fBpppd\fR process on PPP interface unit \fIn\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/run/ppp-\fIname\fR\fR\fB\&.pid\fR \fR
-.ad
-.RS 29n
-Process-ID for \fBpppd\fR process for logical link name (see the \fBlinkname\fR
-option).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/ppp/pap-secrets\fR \fR
-.ad
-.RS 29n
-Usernames, passwords and IP addresses for PAP authentication. This file should
-be owned by root and not readable or writable by any other user, otherwise
-\fBpppd\fR will log a warning.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/ppp/chap-secrets\fR \fR
-.ad
-.RS 29n
-Names, secrets and IP addresses for all forms of CHAP authentication. The
-\fB/etc/ppp/pap-secrets\fR file should be owned by \fBroot\fR should not
-readable or writable by any other user, otherwise, \fBpppd\fR will log a
-warning.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/ppp/options\fR \fR
-.ad
-.RS 29n
-System default options for \fBpppd\fR, read before user default options or
-command-line options.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB$HOME/.ppprc\fR \fR
-.ad
-.RS 29n
-User default options, read before \fB/etc/ppp/options.\fIttyname\fR\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/ppp/options.\fIttyname\fR\fR \fR
-.ad
-.RS 29n
-System default options for the serial port in use; read after
-\fB$HOME/.ppprc\fR. The \fIttyname\fR component of this filename is formed when
-the initial \fB/dev/\fR is stripped from the port name (if present), and
-slashes (if any) are converted to dots.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/ppp/peers\fR \fR
-.ad
-.RS 29n
-Directory with options files that may contain privileged options, even if
-\fBpppd\fR was invoked by a user other than \fBroot\fR. The system
-administrator can create options files in this directory to permit
-non-privileged users to dial out without requiring the peer to authenticate,
-but only to certain trusted peers.
-.RE
-
-.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-\fBchat\fR(1M), \fBifconfig\fR(1M), \fBcrypt\fR(3C), \fBpam\fR(3PAM),
-\fBattributes\fR(5)
-.sp
-.LP
-Haskin, D., Allen, E. \fIRFC 2472 - IP Version 6 Over PPP\fR. Network Working
-Group. December 1998.
-.sp
-.LP
-Jacobson, V. \fIRFC 1144, Compressing TCP/IP Headers for Low-Speed Serial
-Links\fR. Network Working Group. February, 1990
-.sp
-.LP
-Lloyd, B., Simpson, W. \fIRFC 1334, PPP Authentication Protocols\fR. Network
-Working Group. October 1992.
-.sp
-.LP
-McGregor, G. \fIRFC 1332, The PPP Internet Protocol Control Protocol (IPCP)\fR.
-Network Working Group. May 1992.
-.sp
-.LP
-Rivest, R. \fIRFC 1321, The MD5 Message-Digest Algorithm\fR. Network Working
-Group. April 1992
-.sp
-.LP
-Simpson, W. \fIRFC 1661, The Point-to-Point Protocol (PPP)\fR. Network Working
-Group. July 1994.
-.sp
-.LP
-Simpson, W. \fIRFC 1662, HDLC-like Framing \fR. Network Working Group. July
-1994.
-.SH NOTES
-These signals affect \fBpppd\fR behavior:
-.sp
-.ne 2
-.na
-\fB\fBSIGINT, SIGTERM\fR \fR
-.ad
-.RS 20n
-Terminate the link, restore the serial device settings and exit.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSIGHUP\fR \fR
-.ad
-.RS 20n
-Terminate the link, restore the serial device settings and close the serial
-device. If the \fBpersist\fR or \fBdemand\fR option is specified, \fBpppd\fR
-attempts to reopen the serial device and start another connection after the
-holdoff period. Otherwise \fBpppd\fR exits. If received during the holdoff
-period, \fBSIGHUP\fR causes \fBpppd\fR to end the holdoff period immediately.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSIGUSR1\fR \fR
-.ad
-.RS 20n
-Toggles the state of the \fBdebug\fR option and prints link status information
-to the log.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSIGUSR2\fR \fR
-.ad
-.RS 20n
-Causes \fBpppd\fR to renegotiate compression. This is useful to re-enable
-compression after it has been disabled as a result of a fatal decompression
-error. (Fatal decompression errors generally indicate a bug in an
-implementation.)
-.RE
-
-.SH DIAGNOSTICS
-Messages are sent to the syslog daemon using facility \fBLOG_DAEMON\fR. To see
-error and debug messages, edit the \fB/etc/syslog.conf\fR file to direct the
-messages to the desired output device or file, or use the \fBupdetach\fR or
-\fBlogfile\fR options.
-.sp
-.LP
-The \fBdebug\fR option causes the contents of all LCP, PAP, CHAP or IPCP
-control packets sent or received to be logged. This is useful if PPP
-negotiation does not succeed or if authentication fails.
-.sp
-.LP
-Debugging can also be enabled or disabled by sending a \fBSIGUSR1\fR signal,
-which acts as a toggle to the \fBpppd\fR process.
diff --git a/usr/src/man/man1m/pppdump.1m b/usr/src/man/man1m/pppdump.1m
deleted file mode 100644
index 92630d6bc3..0000000000
--- a/usr/src/man/man1m/pppdump.1m
+++ /dev/null
@@ -1,64 +0,0 @@
-.\" -*- nroff -*-
-.\" manual page for pppdump
-.\" Copyright (c) 2000 by Sun Microsystems, Inc.
-.\" All rights reserved.
-.TH PPPDUMP 1M "Apr 1, 1999"
-.SH NAME
-pppdump \- convert PPP record file to readable format
-.SH SYNOPSIS
-.B pppdump
-[
-.B -h
-|
-.B -p
-[
-.B -d
-]] [
-.B -r
-] [
-.B -m \fImru
-] [
-.I file \fR...
-]
-.SH DESCRIPTION
-The
-.B pppdump
-utility converts the files written using the \fIrecord\fR option of
-.B pppd
-into a human-readable format. If one or more filenames are specified,
-.B pppdump
-will read each in turn; otherwise it will read its standard input. In
-each case the result is written to standard output.
-.PP
-The options are as follows:
-.TP
-.B -h
-Prints the bytes sent and received in hexadecimal. If neither this
-option nor the \fB-p\fR option is specified, the bytes are printed as
-the characters themselves, with non-printing and non-ASCII characters
-printed as escape sequences.
-.TP
-.B -p
-Collects the bytes sent and received into PPP packets, interpreting
-the async HDLC framing and escape characters and checking the FCS
-(frame check sequence) of each packet. The packets are printed as hex
-values and as characters (non-printable characters are printed as
-`.').
-.TP
-.B -d
-With the \fB-p\fR option, this option causes
-.B pppdump
-to decompress packets which have been compressed with the BSD-Compress
-or Deflate methods.
-.TP
-.B -r
-Reverses the direction indicators, so that `sent' is printed for
-bytes or packets received, and `rcvd' is printed for bytes or packets
-sent.
-.TP
-.BI "-m " mru
-Use \fImru\fR as the MRU (maximum receive unit) for both directions of
-the link when checking for over-length PPP packets (with the \fB-p\fR
-option).
-.SH SEE ALSO
-pppd(1m)
diff --git a/usr/src/man/man1m/pppoec.1m b/usr/src/man/man1m/pppoec.1m
deleted file mode 100644
index 3e42b17ee1..0000000000
--- a/usr/src/man/man1m/pppoec.1m
+++ /dev/null
@@ -1,272 +0,0 @@
-'\" te
-.\" Copyright (c) 2002, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PPPOEC 1M "Jan 9, 2002"
-.SH NAME
-pppoec \- PPPoE chat utility
-.SH SYNOPSIS
-.LP
-.nf
-\fBpppoec\fR [\fB-o\fImillisecs\fR\fR] [\fB-s\fR\fImillisecs\fR] [\fB-v\fR] \fIdevice\fR
- [\fIservice\fR [ [except]\fIserver\fR... [only]]]
-.fi
-
-.LP
-.nf
-\fBpppoec\fR [\fB-o\fImillisecs\fR\fR] [\fB-v\fR] \fB-i\fR [\fIdevice\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBpppoec\fR utility implements the client-side negotiation of PPPoE. It is
-intended to be used with the \fBpppd\fR(1M) \fBconnect\fR option, in the same
-manner as the \fBchat\fR(1M) utility is used for asynchronous dial-up PPP.
-.sp
-.LP
-When given with the \fB-i\fR flag, \fBpppoec\fR sends out a broadcast query on
-the given interface named by the \fIdevice\fR parameter. You can specify no
-other arguments in this mode. All responding PPPoE servers and the offered
-services are displayed on standard output.
-.sp
-.LP
-Otherwise, when given without the \fB-i\fR flag, \fBpppoec\fR does the full
-PPPoE client-side negotiation. The \fIdevice\fR parameter is the intended
-Ethernet interface, and must already be plumbed with \fBsppptun\fR(1M). The
-optional \fIservice\fR parameter specifies a particular service desired; other
-offered services will be ignored. The optional \fIserver\fR parameter specifies
-a specific server desired. You can specify \fIserver\fR as an Ethernet address
-in the usual x:x:x:x:x:x format (with "\fB*\fR" in any of the six byte
-positions interpreted to mean "any"), or as a symbolic name resolved through
-\fB/etc/ethers\fR (or NIS), or as a PPPoE access concentrator name. The sense
-of the match (true or false) can be inverted by specifying the keyword
-\fBexcept\fR before this string. This parameter can be specified more than
-once, and the first match is taken.
-.sp
-.LP
-If you specify the \fIserver\fR parameter, then the selected servers become
-"preferred." If no preferred server responds, then the first responding server
-is used instead. To exclude non-matching servers entirely, append the keyword
-\fBonly\fR.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-i\fR\fR
-.ad
-.RS 6n
-Sends out broadcast query over interface specified by \fIdevice\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-o\fR\fR
-.ad
-.RS 6n
-Sets the initial wait time in milliseconds for PADO from the server before PADI
-is retried. The default is 500 milliseconds for normal operation, or 3000
-milliseconds (3 seconds) for inquiry (\fB-i\fR) mode.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR\fR
-.ad
-.RS 6n
-Sets the initial wait time in milliseconds for PADS from the server before PADR
-is retried. The default is 2000 milliseconds (2 seconds).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.RS 6n
-Displays verbose progress messages, including all PPPoE messages sent, and all
-state machine transitions.
-.RE
-
-.sp
-.LP
-You normally do not need to adjust the parameters set with \fB-o\fR and
-\fB-s\fR. They are provided for coping with unusually slow servers.
-.SH OPERANDS
-.sp
-.LP
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fB\fIdevice\fR\fR
-.ad
-.RS 11n
-plumbed Ethernet interface
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIserver\fR\fR
-.ad
-.RS 11n
-preferred server or, if you specify \fBonly\fR, the specified server
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIservice\fR\fR
-.ad
-.RS 11n
-desired service; other available services are ignored
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRConnecting to Any Service on \fBhme0\fR
-.sp
-.LP
-The following command enables you to connect to any PPPoE service on
-\fBhme0\fR:
-
-.sp
-.in +2
-.nf
-# /usr/bin/pppd sppptun plugin pppoe.so \
-connect "/usr/lib/inet/pppoec hme0" debug
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Often, a command such as the preceding is specified in an \fB/etc/ppp/peers\fR
-file instead. For example, enter the following in \fB/etc/ppp/peers/myisp\fR:
-
-.sp
-.in +2
-.nf
-sppptun
-plugin pppoe.so
-connect "/usr/lib/inet/pppoec hme0"
-debug
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-To invoke the PPP connection described in the file, enter:
-
-.sp
-.in +2
-.nf
-% /usr/bin/pppd call myisp
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Note that, because the \fB/etc/ppp/peers\fR files are considered privileged by
-\fBpppd\fR, you need not be root to invoke the preceding command.
-
-.LP
-\fBExample 2 \fRConnecting to a Particular Service
-.sp
-.LP
-A more complex example: on \fBhme0\fR, connect to only the \fBinternet\fR
-service offered by PPPoE servers with access concentrator name \fBisp\fR, but
-not to any Ethernet addresses starting with \fB40:0:1a\fR.
-
-.sp
-.in +2
-.nf
-# \fB/usr/lib/inet/pppoec hme0 internet except 40:0:1a:*:*:* isp only\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Note that the \fBexcept 40:0:1a:*:*:*\fR filter must come before \fBisp\fR,
-because the filters are first-match.
-
-.SH EXIT STATUS
-.sp
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR \fR
-.ad
-.RS 6n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB>\fB0\fR\fR
-.ad
-.RS 6n
-An error occurred.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/inet/pppoec\fR \fR
-.ad
-.RS 27n
-executable command
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/sppptun\fR\fR
-.ad
-.RS 27n
-Solaris PPP tunneling device driver.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/ppp/connect-errors\fR\fR
-.ad
-.RS 27n
-usual location of error output (see DIAGNOSTICS, below)
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBpppd\fR(1M), \fBsppptun\fR(1M), \fBpppoed\fR(1M), \fBsppptun\fR(7M)
-.sp
-.LP
-\fIRFC 2516, Method for Transmitting PPP Over Ethernet (PPPoE)\fR, Mamakos et
-al, February 1999
-.SH DIAGNOSTICS
-.sp
-.LP
-Error messages are written to standard error, which is normally redirected by
-\fBpppd\fR to \fB/etc/ppp/connect-errors\fR. The errors can also be redirected
-to \fBpppd\fR's standard output by using the \fBupdetach\fR option.
-.sp
-.LP
-If you specify the \fB-v\fR, verbose progress messages are displayed, including
-all PPPoE messages sent, and all state machine transitions. Specifying the
-\fBupdetach\fR or \fBnodetach\fR \fBpppd\fR option is helpful when using
-verbose mode.
diff --git a/usr/src/man/man1m/pppoed.1m b/usr/src/man/man1m/pppoed.1m
deleted file mode 100644
index 36a8b83d7a..0000000000
--- a/usr/src/man/man1m/pppoed.1m
+++ /dev/null
@@ -1,436 +0,0 @@
-'\" te
-.\" Copyright (C) 2003, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PPPOED 1M "Jan 6, 2003"
-.SH NAME
-pppoed \- PPPoE server daemon
-.SH SYNOPSIS
-.LP
-.nf
-\fBppoed\fR [\fIoptions\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBpppoed\fR daemon implements the server-side negotiation of PPPoE. When a
-client requests service from this daemon, a copy of \fBpppd\fR(1M) is invoked
-to handle the actual PPP communication.
-.sp
-.LP
-At startup, options are read from the command line and the \fB/etc/ppp/pppoe\fR
-file. After these options have been read, options in the per-device
-\fB/etc/ppp/pppoe.\fIdevice\fR\fR files are read, using the device names
-specified on the command line or in \fB/etc/ppp/pppoe\fR. Device names are not
-permitted in the per-device files. It is not an error if any of these files are
-absent; missing files are ignored.
-.sp
-.LP
-Options are reread in the same order on \fBSIGHUP\fR. Except for the
-possibility of short delays due to the processing time, \fBSIGHUP\fR does not
-interfere with any client operations. Current status, including options read,
-is dumped to \fB/tmp/pppoed.\fIpid\fR\fR on \fBSIGINT\fR.
-.sp
-.LP
-The options are used to set up a list of services to be offered to PPPoE
-clients on the broadcast domains (Ethernet subnets) specified by the named
-devices. Option parsing is always in one of two modes, either global mode or
-service mode. The initial mode at the beginning of each file (and the command
-line) is global mode. Options specified in global mode serve as default values
-for subsequently defined services. Service mode is entered by the \fBservice\fR
-\fIname\fR option. In this mode, the named option is defined. Options that
-appear in this mode override any global mode definitions for the current
-service.
-.sp
-.LP
-The option parsing follows standard shell tokenizing rules, using whitespace to
-delimit tokens, quotes to enclose strings that can contain whitespace, and
-escape sequences for special characters. Environment variables are substituted
-using familiar \fB$VAR\fR and \fB${VAR}\fR syntax and set using
-\fBNEWVAR=\fIstring\fR\fR. Variables are both usable in subsequent options and
-provided to the \fBpppd\fR(1M) processes spawned for each client, but they are
-interpreted as they are encountered during option processing. Thus, all set
-variables are seen by all processes spawned; position in the configuration
-files has no effect on this.
-.SH OPTIONS
-.sp
-.LP
-The \fBpppoed\fR daemon supports the following options:
-.sp
-.ne 2
-.na
-\fB\fBclient\fR [\fBexcept\fR] \fIclient-list\fR\fR
-.ad
-.sp .6
-.RS 4n
-This option restricts the clients that may receive the service. If the
-\fBexcept\fR keyword is given, then the clients on the list cannot access the
-service, but others can. If this keyword is not given, then only the listed
-clients can access the service.
-.sp
-This option can be specified more than once for a given service. For a given
-client, first match among all listed options encountered specifies the
-handling. If it matches an option with \fBexcept\fR specified, then access is
-denied. Otherwise, it is granted. The \fBclient\fR list within a service is
-prepended to any list specified in the global context.
-.sp
-If no \fBclient\fR options are given or if all options are specified with
-\fBexcept\fR, then all clients are permitted by default. If any \fBclient\fR
-options without \fBexcept\fR are specified, then no clients are permitted by
-default.
-.sp
-The \fIclient-list\fR is a comma-separated list of client identifiers. The
-match is made if any client on the list matches; thus, these are logically
-"ORed" together. Each client identifier can be either a symbolic name (resolved
-through \fB/etc/ethers\fR or NIS, as defined by \fB/etc/nsswitch.conf\fR) or a
-hexadecimal Ethernet address in the format \fBx:x:x:x:x:x\fR. In the latter
-case, any byte of the address can be "\fB*\fR", which matches any value in that
-position. For example, \fB40:0:1a:*:*:*\fR matches Ethernet adapters from the
-manufacturer assigned block \fB40:0:1a\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdebug\fR\fR
-.ad
-.sp .6
-.RS 4n
-Increase debug logging detail level by one. The detail levels are 0 (no
-logging), 1 (errors only; the default), 2 (warnings), 3 (informational
-messages), and 4 (debug messages). Log messages are written by default to
-\fBsyslog\fR(3C) using facility \fIdaemon\fR (see the \fBlog\fR option below).
-When specified on the command line or in the global context of the
-\fB/etc/ppp/pppoe\fR file, this option also sets the daemon's default
-(non-service-related) detail level.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdevice\fR \fIdevice-list\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify the devices on which the service is available. The \fIdevice-list\fR is
-a comma-separated list of logical device names (without the leading
-\fB/dev/\fR), such as \fBhme0\fR. This option is ignored if encountered in the
-per-device \fB/etc/ppp/pppoe.\fIdevice\fR\fR files.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBextra\fR \fIstring\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies extra options to \fBpppd\fR(1M). It defaults to "\fBplugin pppoe.so
-directtty\fR" and usually does not need to be overridden.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfile\fR \fIpath\fR\fR
-.ad
-.sp .6
-.RS 4n
-Suspends parsing of the current file, returns to global mode, and reads options
-from \fIpath\fR. This file must be present and readable; if it is not, an error
-is logged. When the end of that file is reached, processing returns to the
-current file and the mode is reset to global again.
-.sp
-The global mode options specified in files read by this command use the options
-set in the current file's global mode; this condition extends to any file
-included by those files. All files read are parsed as though the command line
-had specified this option, and thus inherit the command line's global modes.
-.sp
-This option can be used to revert to global mode at any point in an option file
-by specifying \fBfile /dev/null\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBgroup\fR \fIname\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the group ID (symbolic or numeric) under which \fBpppd\fR is
-executed. If \fBpppoed\fR is not run as root, this option is ignored.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBlog\fR \fIpath\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies an alternate debug logging file. Debug messages are sent to this file
-instead of \fBsyslog\fR. The special name \fBsyslog\fR is recognized to switch
-logging back to \fBsyslog\fR. When specified on the command line or in the
-global context of the \fB/etc/ppp/pppoe\fR file, this option also sets the
-daemon's default (non-service-related) log file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnodebug\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set debug logging detail level to 0 (no logging). When specified on the command
-line or in the global context of the \fB/etc/ppp/pppoe\fR file, this option
-also sets the daemon's default (non-service-related) detail level.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnowildcard\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies that the current service should not be included in response to
-clients requesting "any" service. The client must ask for this service by name.
-When specified on the command line or in the global context of the
-\fB/etc/ppp/pppoe\fR file, this option causes \fBpppoed\fR to ignore all
-wildcard service requests.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpath\fR \fIpath\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the path to the \fBpppd\fR executable. Defaults to
-\fB/usr/bin/pppd\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpppd\fR \fIstring\fR\fR
-.ad
-.sp .6
-.RS 4n
-Passes command-line arguments to \fBpppd\fR. It can be used to set the IP
-addresses or configure security for the session. The default value is the empty
-string.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBserver\fR \fIstring\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the PPPoE Access Concentrator name to be sent to the client. It
-defaults to "Solaris PPPoE".
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBservice\fR \fIname\fR\fR
-.ad
-.sp .6
-.RS 4n
-Closes any service being defined and begins definition of a new service. The
-same service name can be used without conflict on multiple devices. If the same
-service name is used on a single device, then the last definition encountered
-during parsing overrides all previous definitions.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBuser\fR \fIname\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the user ID, symbolic or numeric, under which \fBpppd\fR is executed.
-If \fBpppoed\fR is not run as root, this option is ignored.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBwildcard\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies that the service should be included in responses to client queries
-that request "any" service, which is done by requesting a service name of
-length zero. When specified on the command line or in the global context of the
-\fB/etc/ppp/pppoe\fR file, this option causes \fBpppoed\fR to ignore all
-wildcard service requests. This is the default.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRConfiguring for Particular Services
-.sp
-.LP
-In the \fB/etc/ppp/pppoe\fR file:
-
-.sp
-.in +2
-.nf
-service internet
- device $DEV
- pppd "proxyarp 192.168.1.1:"
-service debugging
- device hme0,$DEV
- pppd "debug proxyarp 192.168.1.1:"
-.fi
-.in -2
-
-.sp
-.LP
-You then invoke the daemon with:
-
-.sp
-.in +2
-.nf
-example% \fB/usr/lib/inet/pppoed DEV=eri0\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The lines in \fB/etc/ppp/pppoe\fR and the preceding command result in offering
-services "internet" and "debugging" (and responding to wildcard queries) on
-interface \fBeri0\fR, and offering only service "debugging" on interface
-\fBhme0\fR.
-
-.SH SIGNALS
-.sp
-.LP
-The \fBpppoed\fR daemon responds to the following signals:
-.sp
-.ne 2
-.na
-\fB\fBSIGHUP\fR\fR
-.ad
-.RS 10n
-Causes \fBpppoed\fR to reparse the original command line and all configuration
-files, and close and reopen any log files.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSIGINT\fR\fR
-.ad
-.RS 10n
-Causes a snapshot of the state of the \fBpppoed\fR daemon to be written to
-\fB/tmp/pppoed.\fIpid\fR\fR (where \fIpid\fR is the decimal process ID of the
-daemon).
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/inet/pppoed\fR \fR
-.ad
-.RS 25n
-executable command
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/sppptun\fR\fR
-.ad
-.RS 25n
-Solaris PPP tunneling device driver
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/ppp/pppoe\fR\fR
-.ad
-.RS 25n
-main configuration option file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/ppp/pppoe.\fIdevice\fR\fR\fR
-.ad
-.RS 25n
-per-device configuration option file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/ppp/pppoe-errors\fR\fR
-.ad
-.RS 25n
-location of output from \fBpppd\fR's stderr
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/ppp/pppoe.if\fR\fR
-.ad
-.RS 25n
-list of Ethernet interfaces to be plumbed at boot time
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/tmp/pppoed.\fIpid\fR\fR\fR
-.ad
-.RS 25n
-ASCII text file containing dumped \fBpppoed\fR state information
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBpppd\fR(1M), \fBpppoec\fR(1M), \fBsppptun\fR(1M), \fBsppptun\fR(7M)
-.sp
-.LP
-Mamakos, L., et al. \fIRFC 2516, A Method for Transmitting PPP Over Ethernet
-(PPPoE)\fR. Network Working Group. February 1999
-.SH NOTES
-.sp
-.LP
-Because \fBpppd\fR is installed setuid root, this daemon need not be run as
-root. However, if it is not run as root, the \fBuser\fR and \fBgroup\fR options
-are ignored.
-.sp
-.LP
-The Ethernet interfaces to be used must be plumbed for PPPoE using the
-\fBsppptun\fR(1M) utility before services can be offered.
-.sp
-.LP
-The daemon operate runs even if there are no services to offer. If you want to
-modify a configuration, it is not necessary to terminate the daemon. Simply use
-\fBpkill \fR\fB-HUP\fR\fB pppoed\fR after updating the configuration files.
-.sp
-.LP
-The PPPoE protocol is far from perfect. Because it runs directly over Ethernet,
-there is no possibility of security and the MTU is limited to 1492 (violating
-RFC 1661's default value of 1500). It is also not possible to run the client
-and the server of a given session on a single machine with a single Ethernet
-interface for testing purposes. The client and server portions of a single
-session must be run on separate Ethernet interfaces with different MAC
-addresses.
diff --git a/usr/src/man/man1m/pppstats.1m b/usr/src/man/man1m/pppstats.1m
deleted file mode 100644
index 649d22e7c9..0000000000
--- a/usr/src/man/man1m/pppstats.1m
+++ /dev/null
@@ -1,399 +0,0 @@
-'\" te
-.\" Copyright (c) 1989 Regents of the University of California. All rights reserved.
-.\" Redistribution and use in source and binary forms are permitted provided that the above copyright notice and this paragraph are duplicated in all such forms and that any documentation, advertising materials, and other materials related to such distribution and use acknowledge that the software was developed by the University of California, Berkeley. The name of the University may not be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
-.\" WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
-.\" Portions Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved.
-.TH PPPSTATS 1M "May 4, 2001"
-.SH NAME
-pppstats \- print PPP statistics
-.SH SYNOPSIS
-.LP
-.nf
-\fBpppstats\fR [\fB-a\fR] [\fB-v\fR] [\fB-r\fR] [\fB-z\fR] [\fB-c\fR \fI<count>\fR] [\fB-w\fR \fI<secs>\fR]
- [\fIinterface\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBpppstats\fR utility reports PPP-related statistics at regular intervals
-for the specified PPP interface. If the interface is unspecified,
-\fBpppstats\fR defaults to \fBsppp0\fR. The display is split horizontally into
-input and output sections containing columns of statistics describing the
-properties and volume of packets received and transmitted by the interface.
-.SH OPTIONS
-.sp
-.LP
-The \fBpppstats\fR options are:
-.sp
-.ne 2
-.na
-\fB\fB-a\fR \fR
-.ad
-.RS 13n
-Display absolute values rather than deltas. With this option, all reports show
-statistics for the time elapsed since the link was initiated. Without this
-option, the second and subsequent reports show statistics for the time since
-the last report.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-c\fR \fB\fIcount\fR\fR \fR
-.ad
-.RS 13n
-Repeat the display \fIcount\fR times. If this option is not specified, the
-default repeat count is 1 if the \fB-w\fR option is not specified, otherwise
-infinity.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-r\fR \fR
-.ad
-.RS 13n
-Display additional statistics summarizing the compression ratio achieved by the
-packet compression algorithm in use.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR \fR
-.ad
-.RS 13n
-Display additional statistics relating to the performance of the Van Jacobson
-TCP header compression algorithm.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-w\fR \fB\fIwait\fR\fR \fR
-.ad
-.RS 13n
-Pause \fIwait\fR seconds between each display. If this option is not
-specified, the default interval is five seconds.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-z\fR \fR
-.ad
-.RS 13n
-Instead of the standard display, show statistics indicating the performance of
-the packet compression algorithm in use.
-.RE
-
-.SH EXTENDED DESCRIPTION
-.sp
-.LP
-The following fields are printed on the input side when the \fB-z\fR option is
-not used:
-.sp
-.ne 2
-.na
-\fB\fBIN\fR \fR
-.ad
-.RS 11n
-Total number of bytes received by this interface.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPACK\fR \fR
-.ad
-.RS 11n
-Total number of packets received by this interface.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBVJCOMP\fR \fR
-.ad
-.RS 11n
-Number of header-compressed TCP packets received by this interface.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBVJUNC\fR \fR
-.ad
-.RS 11n
-Number of header-uncompressed TCP packets received by this interface. Not
-reported when the \fB-r\fR option is specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBVJERR\fR \fR
-.ad
-.RS 11n
-Number of corrupted or bogus header-compressed TCP packets received by this
-interface. Not reported when the \fB-r\fR option is specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBVJTOSS\fR \fR
-.ad
-.RS 11n
-Number of VJ header-compressed TCP packets dropped on reception by this
-interface because of preceding errors. Only reported when the \fB-v\fR option
-is specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBNON-VJ\fR \fR
-.ad
-.RS 11n
-Total number of non-TCP packets received by this interface. Only reported when
-the \fB-v\fR option is specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBRATIO\fR \fR
-.ad
-.RS 11n
-Compression ratio achieved for received packets by the packet compression
-scheme in use, defined as the uncompressed size divided by the compressed size.
-Only reported when the \fB-r\fR option is specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBUBYTE\fR \fR
-.ad
-.RS 11n
-Total number of bytes received, after decompression of compressed packets. Only
-reported when the \fB-r\fR option is specified.
-.RE
-
-.sp
-.LP
-The following fields are printed on the output side:
-.sp
-.ne 2
-.na
-\fB\fBOUT\fR\fR
-.ad
-.RS 10n
-Total number of bytes transmitted from this interface.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPACK\fR\fR
-.ad
-.RS 10n
-Total number of packets transmitted from this interface.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBVJCOMP\fR\fR
-.ad
-.RS 10n
-Number of TCP packets transmitted from this interface with VJ-compressed TCP
-headers.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBVJUNC\fR\fR
-.ad
-.RS 10n
-Number of TCP packets transmitted from this interface with VJ-uncompressed TCP
-headers. Not reported when the \fB-r\fR option is specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBNON-VJ\fR\fR
-.ad
-.RS 10n
-Total number of non-TCP packets transmitted from this interface. Not reported
-when the \fB-r\fR option is specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBVJSRCH\fR\fR
-.ad
-.RS 10n
-Number of searches for the cached header entry for a VJ header compressed TCP
-packet. Only reported when the \fB-v\fR option is specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBVJMISS\fR\fR
-.ad
-.RS 10n
-Number of failed searches for the cached header entry for a VJ header
-compressed TCP packet. Only reported when the \fB-v\fR option is specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBRATIO\fR\fR
-.ad
-.RS 10n
-Compression ratio achieved for transmitted packets by the packet compression
-scheme in use, defined as the size before compression divided by the compressed
-size. Only reported when the \fB-r\fR option is specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBUBYTE\fR\fR
-.ad
-.RS 10n
-Total number of bytes to be transmitted before packet compression is applied.
-Only reported when the \fB-r\fR option is specified.
-.RE
-
-.sp
-.LP
-When the \fB-z\fR option is specified, \fBpppstats\fR displays the following
-fields relating to the packet compression algorithm currently in use. If packet
-compression is not in use, these fields display zeroes. The fields displayed on
-the input side are:
-.sp
-.ne 2
-.na
-\fB\fBCOMPRESSED BYTE\fR\fR
-.ad
-.RS 23n
-Number of bytes of compressed packets received.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBCOMPRESSED PACK\fR\fR
-.ad
-.RS 23n
-Number of compressed packets received.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBINCOMPRESSIBLE BYTE\fR\fR
-.ad
-.RS 23n
-Number of bytes of incompressible packets (that is, those which were
-transmitted in uncompressed form) received.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBINCOMPRESSIBLE PACK\fR\fR
-.ad
-.RS 23n
-Number of incompressible packets received.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBCOMP RATIO\fR\fR
-.ad
-.RS 23n
-Recent compression ratio for incoming packets, defined as the uncompressed size
-divided by the compressed size (including both compressible and incompressible
-packets).
-.RE
-
-.sp
-.LP
-The fields displayed on the output side are:
-.sp
-.ne 2
-.na
-\fB\fBCOMPRESSED BYTE\fR\fR
-.ad
-.RS 23n
-Number of bytes of compressed packets transmitted.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBCOMPRESSED PACK\fR\fR
-.ad
-.RS 23n
-Number of compressed packets transmitted.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBINCOMPRESSIBLE BYTE\fR\fR
-.ad
-.RS 23n
-Number of bytes of incompressible packets received; that is, those that were
-transmitted by the peer in uncompressed form.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBINCOMPRESSIBLE PACK\fR\fR
-.ad
-.RS 23n
-Number of incompressible packets transmitted.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBCOMP RATIO\fR\fR
-.ad
-.RS 23n
-Recent compression ratio for outgoing packets.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBpppd\fR(1M), \fBattributes\fR(5)
diff --git a/usr/src/man/man1m/pptadm.1m b/usr/src/man/man1m/pptadm.1m
deleted file mode 100644
index f13a5e32a4..0000000000
--- a/usr/src/man/man1m/pptadm.1m
+++ /dev/null
@@ -1,74 +0,0 @@
-.\"
-.\" This file and its contents are supplied under the terms of the
-.\" Common Development and Distribution License ("CDDL"), version 1.0.
-.\" You may only use this file in accordance with the terms of version
-.\" 1.0 of the CDDL.
-.\"
-.\" A full copy of the text of the CDDL should have accompanied this
-.\" source. A copy of the CDDL is also available via the Internet at
-.\" http://www.illumos.org/license/CDDL.
-.\"
-.\" Copyright 2018 Joyent, Inc.
-.\"
-.Dd April 10, 2018
-.Dt PPTADM 1M
-.Os
-.Sh NAME
-.Nm pptadm
-.Nd PPT administration utility
-.Sh SYNOPSIS
-.Nm
-.Cm list -j
-.Op Fl a
-.Nm
-.Cm list
-.Op Fl ap Op Fl o Ar fields
-.Sh DESCRIPTION
-The
-.Nm
-utility can enumerate passthrough devices for use by a virtualized guest.
-.Sh OPTIONS
-The following options to the
-.Cm list
-command are supported:
-.Bl -tag -width Ds
-.It Fl a
-Show all PPT devices, both available and assigned.
-.It Fl j
-Output JSON.
-.It Fl o
-Specify fields to output, or "all". Available fields are
-dev,path,vendor,device,subvendor,subdevice,rev,label
-.It Fl p
-Output in a parsable format; this requires the -o option to be specified.
-.El
-.Sh JSON OUTPUT
-The JSON output consists of an array under the key "devices" with the fields:
-.Bl -tag -width Ds
-.It dev
-The PPT /dev path, if assigned and bound.
-.It path
-The physical /devices path.
-.It vendor-id
-The PCI vendor ID.
-.It device-id
-The PCI device ID.
-.It subsystem-vendor-id
-The PCI subsystem vendor ID.
-.It subsystem-id
-The PCI subsystem ID.
-.It revision-id
-The PCI device revision.
-.It label
-Human-readable description from the PCI database.
-.El
-.Sh FILES
-.Bl -tag -width Ds
-.It /etc/ppt_aliases
-Containts the bindings of PPT devices in the same format as /etc/driver_aliases
-.It /etc/ppt_matches
-Identifies devices that PPT could be bound to, either by physical path, or by
-PCI ID.
-.El
-.Sh EXIT STATUS
-.Ex -std
diff --git a/usr/src/man/man1m/praudit.1m b/usr/src/man/man1m/praudit.1m
deleted file mode 100644
index 177d86843e..0000000000
--- a/usr/src/man/man1m/praudit.1m
+++ /dev/null
@@ -1,186 +0,0 @@
-'\" te
-.\" Copyright (c) 2019 Peter Tribble.
-.\" Copyright (c) 2003, Sun Microsystems, Inc.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
-.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PRAUDIT 1M "Aug 13, 2019"
-.SH NAME
-praudit \- print contents of an audit trail file
-.SH SYNOPSIS
-.nf
-\fBpraudit\fR [\fB-r|-s\fR] [\fB-lx\fR] [\fB-d\fR\fIdel\fR] [\fB-g\fR \fIfilename\fR] [\fB-p\fR \fIfilename\fR] [\fIfilename\fR]...
-.fi
-
-.SH DESCRIPTION
-\fBpraudit\fR reads the listed \fIfilename\fRs (or standard input, if no
-\fIfilename\fR is specified) and interprets the data as audit trail records as
-defined in \fBaudit.log\fR(4). By default, times, user and group \fBID\fRs
-(\fBUID\fRs and \fBGID\fRs, respectively) are converted to their \fBASCII\fR
-representation. Record type and event fields are converted to their \fBASCII\fR
-representation. A maximum of 100 audit files can be specified on the command
-line.
-.SH OPTIONS
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-d\fR\fIdel\fR\fR
-.ad
-.sp .6
-.RS 4n
-Use \fIdel\fR as the field delimiter instead of the default delimiter, which is
-the comma. If \fIdel\fR has special meaning for the shell, it must be quoted.
-The maximum size of a delimiter is three characters. The delimiter is not
-meaningful and is not used when the \fB-x\fR option is specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR\fR
-.ad
-.sp .6
-.RS 4n
-Print one line per record.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-r\fR\fR
-.ad
-.sp .6
-.RS 4n
-Print records in their raw form. Times, \fBUID\fRs, \fBGID\fRs, record types,
-and events are displayed as integers. This option is useful when naming
-services are offline. The \fB-r\fR option and the \fB-s\fR option are
-exclusive. If both are used, a format usage error message is output.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display records in their short form. Numeric fields' ASCII equivalents are
-looked up by means of the sources specified in the \fB/etc/nsswitch.conf\fR
-file (see \fBnsswitch.conf\fR(4)). All numeric fields are converted to ASCII
-and then displayed. The short \fBASCII\fR representations for the record type
-and event fields are used. This option and the \fB-r\fR option are exclusive.
-If both are used, a format usage error message is output.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-x\fR\fR
-.ad
-.sp .6
-.RS 4n
-Print records in XML form. Tags are included in the output to identify tokens
-and fields within tokens. Output begins with a valid XML prolog, which includes
-identification of the DTD which can be used to parse the XML.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-g\fR \fIfilename\fR\fR
-.ad
-.sp .6
-.RS 4n
-Read group entries from the specified file. \fBGID\fRs referenced in the audit
-files will be resolved to group names using this file. \fBGID\fRs not
-referenced in the specified file will be resolved by the host system. This
-option is useful when aggregating logs from multiple systems onto a single
-host for analysis, allowing \fBGID\fRs to be resolved to the group names
-appropriate to the source of the audit file. To do this, copy the
-\fB/etc/group\fR file from the system from which the audit file originates
-and use that as the argument to the \fB-g\fR flag.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR \fIfilename\fR\fR
-.ad
-.sp .6
-.RS 4n
-Read passwd entries from the specified file. \fBUID\fRs referenced in the audit
-files will be resolved to user names using this file. \fBUID\fRs not
-referenced in the specified file will be resolved by the host system. This
-option is useful when aggregating logs from multiple systems onto a single
-host for analysis, allowing \fBUID\fRs to be resolved to the user names
-appropriate to the source of the audit file. To do this, copy the
-\fB/etc/passwd\fR file from the system from which the audit file originates
-and use that as the argument to the \fB-p\fR flag.
-.RE
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/etc/security/audit_event\fR\fR
-.ad
-.sp .6
-.RS 4n
-Audit event definition and class mappings.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/security/audit_class\fR\fR
-.ad
-.sp .6
-.RS 4n
-Audit class definitions.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/share/lib/xml/dtd\fR\fR
-.ad
-.sp .6
-.RS 4n
-Directory containing the versioned DTD file referenced in XML output, for
-example, \fBadt_record.dtd.1\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/share/lib/xml/style\fR\fR
-.ad
-.sp .6
-.RS 4n
-Directory containing the versioned XSL file referenced in XML output, for
-example, \fBadt_record.xsl.1\fR.
-.RE
-
-.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability See below
-.TE
-
-.sp
-.LP
-The command stability is evolving. The output format is unstable.
-.SH SEE ALSO
-\fBgetent\fR(1M), \fBaudit\fR(2), \fBgetauditflags\fR(3BSM),
-\fBgetpwuid\fR(3C), \fBgethostbyaddr\fR(3NSL), \fBethers\fR(3SOCKET),
-\fBgetipnodebyaddr\fR(3SOCKET), \fBaudit.log\fR(4), \fBaudit_class\fR(4),
-\fBaudit_event\fR(4), \fBgroup\fR(4), \fBnsswitch.conf\fR(4), \fBpasswd\fR(4),
-\fBattributes\fR(5)
diff --git a/usr/src/man/man1m/print-service.1m b/usr/src/man/man1m/print-service.1m
deleted file mode 100644
index 2d8a31ed48..0000000000
--- a/usr/src/man/man1m/print-service.1m
+++ /dev/null
@@ -1,181 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PRINT-SERVICE 1M "Mar 18, 2008"
-.SH NAME
-print-service \- select, report, import, export active print service on a
-system
-.SH SYNOPSIS
-.LP
-.nf
-\fBprint-service\fR [\fB-s\fR \fIservice\fR [\fB-m\fR] | \fB-q\fR | \fB-e\fR \fIfile\fR | \fB-i\fR \fIfile\fR]
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBprint-service\fR utility manages print service selection, as well as
-export and import of basic print queue configuration.
-.sp
-.LP
-Only a user root privileges or with the Printer Management profile can change
-the active print service or import print queue configuration.
-.SH OPTIONS
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-s\fR \fIservice\fR\fR
-.ad
-.sp .6
-.RS 4n
-Select the active print service for on a host. \fIservice\fR can be one of
-\fBlp\fR or \fBcups\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-m\fR\fR
-.ad
-.sp .6
-.RS 4n
-Migrate print queue configuration during print service selection.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-q\fR\fR
-.ad
-.sp .6
-.RS 4n
-Report the active print service on a host.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-e\fR \fIfile\fR\fR
-.ad
-.sp .6
-.RS 4n
-Export basic print queue configuration to a file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-i\fR \fIfile\fR\fR
-.ad
-.sp .6
-.RS 4n
-Import basic print queue configuration from a file.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRSelecting a Print Service
-.sp
-.LP
-The following command selects the CUPS print service as the active print
-service on a host.
-
-.sp
-.in +2
-.nf
-# \fBprint-service -s cups\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRReporting the Active Print Service
-.sp
-.LP
-The following command reports the active print service on a host.
-
-.sp
-.in +2
-.nf
-# \fBprint-service -q\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRExporting a Print Queue Configuration
-.sp
-.LP
-The following command exports the print queue configuration from the active
-print service.
-
-.sp
-.in +2
-.nf
-# \fBprint-service -e /tmp/queues\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 4 \fRImporting a Print Queue Configuration
-.sp
-.LP
-The following command imports the print queue configuration to the active print
-service.
-
-.sp
-.in +2
-.nf
-# \fBprint-service -i /tmp/queues\fR
-.fi
-.in -2
-.sp
-
-.SH EXIT STATUS
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.sp .6
-.RS 4n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnon-zero\fR\fR
-.ad
-.sp .6
-.RS 4n
-An error occurred.
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Obsolete
-.TE
-
-.SH SEE ALSO
-.LP
-\fBIntro\fR(1), \fBattributes\fR(5)
-.SH NOTES
-.LP
-The print queue configuration saved and restored during export, import, and
-migration is limited to queue name and device name. It is likely that further
-configuration changes will be required before imported or migrated print queues
-become usable.
diff --git a/usr/src/man/man1m/printmgr.1m b/usr/src/man/man1m/printmgr.1m
deleted file mode 100644
index ef856807ba..0000000000
--- a/usr/src/man/man1m/printmgr.1m
+++ /dev/null
@@ -1,123 +0,0 @@
-'\" te
-.\" Copyright (C) 2003, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PRINTMGR 1M "Feb 25, 2017"
-.SH NAME
-printmgr \- Solaris Print Manager is a graphical user interface for managing
-printers in a network
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sadm/admin/bin/printmgr\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-Solaris Print Manager is a Java-based graphical user interface that enables you
-to manage local and remote printer access. This tool can be used in the
-following name service environments: LDAP, NIS, and files. You must be
-logged in as superuser to use this tool.
-.sp
-.LP
-Using Solaris Printer Manager is the preferred method for managing printer
-access because Solaris Print Manager centralizes printer information when it is
-used in a name service environment.
-.sp
-.LP
-Adding printer information to a name service makes access to printers available
-to all systems on the network and generally makes printer administration easier
-because all the information about printers is centralized.
-.sp
-.LP
-Solaris Print Manager may be run on a remote system with the display sent to
-the local system. See the \fISystem Administration Guide: Solaris Printing\fR
-for instructions on setting the \fBDISPLAY\fR environment variable.
-.sp
-.LP
-Using Solaris Print Manager to perform printer-related tasks automatically
-updates the appropriate printer databases. Solaris Print Manager also includes
-a command-line console that displays the \fBlp\fR command line for the add,
-modify, and delete printer operations. Errors and warnings may also be
-displayed when Printer Manager operations are performed.
-.sp
-.LP
-Help is available by clicking the Help button.
-.SH USAGE
-.LP
-Solaris Print Manager enables you to do the following tasks:
-.sp
-.ne 2
-.na
-\fBSelect a Name Service\fR
-.ad
-.RS 29n
-Select a name service for retrieving or changing printer information.
-.RE
-
-.sp
-.ne 2
-.na
-\fBAdd Access to a Printer\fR
-.ad
-.RS 29n
-Add printer access on a printer client using Solaris Print Manager.
-.RE
-
-.sp
-.ne 2
-.na
-\fBAdd an Attached Printer\fR
-.ad
-.RS 29n
-After physically attaching the printer to a system, use Solaris Print Manager
-to install a local printer and make it available for printing.
-.RE
-
-.sp
-.ne 2
-.na
-\fBAdd a Network Printer\fR
-.ad
-.RS 29n
-After physically attaching the printer to a system, use Solaris Print Manager
-to install a local printer and make it available for printing.
-.RE
-
-.sp
-.ne 2
-.na
-\fBModify Printer Properties\fR
-.ad
-.RS 29n
-After adding access to a printer or adding an attached or network printer, you
-can modify certain printer attributes.
-.RE
-
-.sp
-.ne 2
-.na
-\fBDelete a Printer\fR
-.ad
-.RS 29n
-Delete access to a printer from the print client or delete a printer from the
-print server or from the name service environment.
-.RE
-
-.SH SEE ALSO
-.LP
-\fBldap\fR(1), \fBlpget\fR(1M), \fBlpset\fR(1M), \fBattributes\fR(5)
-.sp
-.LP
-\fISystem Administration Guide: Solaris Printing\fR for information on LDAP
-server replication.
-.sp
-.LP
-Although users can use the LDAP command line utilities \fBldapadd\fR(1) and
-\fBldapmodify\fR(1) to update printer entries in the directory, the preferred
-method is to use \fBlpset\fR. Otherwise, if the \fBlpadd\fR and \fBlpmodify\fR
-utilities are used, the administrator must ensure that the \fBprinter-name\fR
-attribute value is unique within the \fBou=printers\fR container on the LDAP
-server. If the value is not unique, the result of modifications done using
-\fBlpset\fR or the Solaris Print Manager, \fBprintmgr\fR may be unpredictable.
diff --git a/usr/src/man/man1m/projadd.1m b/usr/src/man/man1m/projadd.1m
deleted file mode 100644
index 342d96e5b1..0000000000
--- a/usr/src/man/man1m/projadd.1m
+++ /dev/null
@@ -1,305 +0,0 @@
-'\" te
-.\" Copyright (c) 2018 Peter Tribble.
-.\" Copyright (c) 2001, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PROJADD 1M "Jan 7, 2018"
-.SH NAME
-projadd \- administer a new project on the system
-.SH SYNOPSIS
-.LP
-.nf
-\fBprojadd\fR [\fB-n\fR] [\fB-f\fR \fIfilename\fR] [\fB-p\fR \fIprojid\fR [\fB-o\fR]] [\fB-c\fR \fIcomment\fR]
- [\fB-U\fR \fIuser\fR[,\fIuser\fR]...] [\fB-G\fR \fIgroup\fR[,\fIgroup\fR]...]
- [\fB-K\fR \fIname\fR[=\fIvalue\fR[,\fIvalue\fR]...]]... \fIproject\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-\fBprojadd\fR adds a new project entry to the \fB/etc/project\fR file. If the
-files backend is being used for the project database, the new project is
-available for use immediately upon the completion of the \fBprojadd\fR command.
-.SH OPTIONS
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-c\fR \fIcomment\fR\fR
-.ad
-.RS 29n
-Add a project comment. Comments are stored in the project's entry in the
-\fB/etc/project\fR file. Generally, comments contain a short description of the
-project and are used as the field for the project's full name.
-.sp
-Specify \fIcomment\fR as a text string. \fIcomment\fR cannot contain a colon
-(\fB:\fR) or NEWLINE.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR \fIfilename\fR\fR
-.ad
-.RS 29n
-Specify the project file to modify. If no \fIfilename\fR is specified, the
-system project file, \fB/etc/project\fR, is modified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-G\fR \fIgroup\fR[,\fIgroup\fR]...\fR
-.ad
-.RS 29n
-Specify a group list for the project.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-K\fR \fIname\fR[=\fIvalue\fR[,\fIvalue\fR]...]\fR
-.ad
-.RS 29n
-Specify an attribute list for the project. Multiple \fB-K\fR options can be
-specified to set values on multiple keys, such as:
-.sp
-.in +2
-.nf
--K \fIkey1\fR=\fIvalue1\fR -K "\fIkey2\fR=(\fIvalue2a\fR),(\fIvalue2b\fR)"
-.fi
-.in -2
-
-Resource control attributes use parentheses to specify values for a key.
-Because many user shells interpret parentheses as special characters, it is
-best to enclose an argument to \fB-K\fR that contains parentheses with double
-quotes, as shown above and in EXAMPLES, below. See \fBresource_controls\fR(5)
-for a description of the resource controls you can specify for a project.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR\fR
-.ad
-.RS 29n
-Syntax check. Check the format of the existing system project file and
-modifications only. The contents of the existing project file, such as user
-names, group names, and resources that are specified in the project attributes
-are not checked.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-o\fR\fR
-.ad
-.RS 29n
-This option allows the project ID specified by the \fB-p\fR option to be
-non-unique within the project file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR \fIprojid\fR\fR
-.ad
-.RS 29n
-Set the project \fBID\fR of the new project.
-.sp
-Specify \fIprojid\fR as a non-negative decimal integer below \fBUID_MAX\fR as
-defined in \fBlimits.h\fR. \fIprojid\fR defaults to the next available unique
-number above the highest number currently assigned. For example, if
-\fIprojid\fRs \fB100\fR, \fB105\fR, and \fB200\fR are assigned, the next
-default \fIprojid\fR is \fB201\fR. \fIprojid\fRs between \fB0\fR-\fB99\fR are
-reserved.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-U\fR \fIuser\fR[,\fIuser\fR]...\fR
-.ad
-.RS 29n
-Specify a user list for the project.
-.RE
-
-.SH OPERANDS
-.LP
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fB\fIproject\fR\fR
-.ad
-.RS 11n
-The name of the project to create. The \fIproject\fR operand is a string
-consisting of characters from the set of alphabetic characters, numeric
-characters, underline (_), and hyphen (-). The period ('.') is reserved for
-projects with special meaning to the operating system. The first character of
-the project name must be a letter. An error message is displayed if these
-restrictions are not met.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1\fR Adding a Project
-.sp
-.LP
-The following command creates the project \fBsalesaudit\fR and sets the
-resource controls specified as arguments to the \fB-K\fR option.
-
-.sp
-.in +2
-.nf
-projadd -p 111 -G sales,finance -c "Auditing Project" \e
- -K "rcap.max-rss=10GB" \e
- -K "process.max-file-size=(priv,50MB,deny)" \e
- -K "task.max-lwps=(priv,100,deny)" salesaudit
-.fi
-.in -2
-
-.sp
-.LP
-This command would produce the following entry in \fB/etc/project\fR:
-
-.sp
-.in +2
-.nf
-salesaudit:111:Auditing Project::sales,finance: \e
-process.max-file-size=(priv,52428800,deny); \e
-rcap.max-rss=10737418240;task.max-lwps=(priv,100,deny)
-.fi
-.in -2
-
-.sp
-.LP
-Note that the preceding would appear as one line in \fB/etc/project\fR.
-
-.sp
-.LP
-Comparing the \fBprojadd\fR command and resulting output in \fB/etc/project\fR,
-note the effect of the scaling factor in the resource cap
-(\fBrcap.max-rss=10GB\fR) and the resource control
-(\fBprocess.max-file-size=(priv,50MB,deny)\fR). Modifiers, such as B, KB, and
-MB, and scaling factors are specified in \fBresource_controls\fR(5).
-
-.SH EXIT STATUS
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 6n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB2\fR\fR
-.ad
-.RS 6n
-The command syntax was invalid. A usage message for \fBprojadd\fR is displayed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB3\fR\fR
-.ad
-.RS 6n
-An invalid argument was provided to an option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB4\fR\fR
-.ad
-.RS 6n
-The \fIprojid\fR given with the \fB-p\fR option is already in use.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB5\fR\fR
-.ad
-.RS 6n
-The project files contain an error. See \fBproject\fR(4).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB6\fR\fR
-.ad
-.RS 6n
-The project to be added, group, user, or resource does not exist.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB9\fR\fR
-.ad
-.RS 6n
-The project is already in use.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB10\fR\fR
-.ad
-.RS 6n
-Cannot update the \fB/etc/project\fR file.
-.RE
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/etc/project\fR\fR
-.ad
-.RS 16n
-System project file
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability See below.
-.TE
-
-.sp
-.LP
-Invocation is evolving. Human readable output is unstable.
-.SH SEE ALSO
-.LP
-\fBprojects\fR(1), \fBgroupadd\fR(1M), \fBgroupdel\fR(1M), \fBgroupmod\fR(1M),
-\fBgrpck\fR(1M), \fBprojdel\fR(1M), \fBprojmod\fR(1M), \fBuseradd\fR(1M),
-\fBuserdel\fR(1M), \fBusermod\fR(1M), \fBproject\fR(4), \fBattributes\fR(5),
-\fBresource_controls\fR(5)
-.SH NOTES
-.LP
-In case of an error, \fBprojadd\fR prints an error message and exits with a
-non-zero status.
-.sp
-.LP
-\fBprojadd\fR adds a project definition only on the local system. If a network
-name service is being used to supplement the local
-\fB/etc/project\fR file with additional entries, \fBprojadd\fR cannot change
-information supplied by the network name service.
diff --git a/usr/src/man/man1m/projdel.1m b/usr/src/man/man1m/projdel.1m
deleted file mode 100644
index b3adbcd7a7..0000000000
--- a/usr/src/man/man1m/projdel.1m
+++ /dev/null
@@ -1,162 +0,0 @@
-'\" te
-.\" Copyright (c) 2001, Sun Microsystems, Inc.
-.\" All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PROJDEL 1M "Jan 7, 2018"
-.SH NAME
-projdel \- delete a project from the system
-.SH SYNOPSIS
-.LP
-.nf
-\fBprojdel\fR [\fB-f\fR \fIfilename\fR] \fIproject\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBprojdel\fR utility deletes a project from the system and makes the
-appropriate changes to the system file.
-.SH OPTIONS
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-f\fR \fIfilename\fR\fR
-.ad
-.RS 15n
-Specify the project file to modify. If no \fIfilename\fR is specified, the
-system project file, \fB/etc/project\fR, is modified.
-.RE
-
-.SH OPERANDS
-.LP
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fB\fIproject\fR\fR
-.ad
-.RS 11n
-The name of the project to be deleted.
-.RE
-
-.SH EXIT STATUS
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 6n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB2\fR\fR
-.ad
-.RS 6n
-The command syntax was invalid. A usage message for \fBprojdel\fR is displayed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB3\fR\fR
-.ad
-.RS 6n
-An invalid argument was provided to an option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB4\fR\fR
-.ad
-.RS 6n
-The \fIprojid\fR given with the \fB-p\fR option is already in use.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB5\fR\fR
-.ad
-.RS 6n
-The project files contain an error. See \fBproject\fR(4).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB6\fR\fR
-.ad
-.RS 6n
-The project to be modified, group, user, or resource does not exist.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB9\fR\fR
-.ad
-.RS 6n
-The project is already in use.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB10\fR\fR
-.ad
-.RS 6n
-Cannot update the \fB/etc/project\fR file.
-.RE
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/etc/project\fR\fR
-.ad
-.RS 16n
-System project file
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability See below.
-.TE
-
-.sp
-.LP
-Invocation is evolving. Human readable output is unstable.
-.SH SEE ALSO
-.LP
-\fBprojects\fR(1), \fBgroupadd\fR(1M), \fBgroupdel\fR(1M), \fBgroupmod\fR(1M),
-\fBgrpck\fR(1M), \fBlogins\fR(1M), \fBprojadd\fR(1M), \fBprojmod\fR(1M),
-\fBuseradd\fR(1M), \fBuserdel\fR(1M), \fBusermod\fR(1M), \fBproject\fR(4),
-\fBattributes\fR(5)
-.SH DIAGNOSTICS
-.LP
-In case of an error, \fBprojdel\fR prints an error message and exits with a
-non-zero status.
-.SH NOTES
-.LP
-\fBprojdel\fR deletes a project definition only on the local system. If a
-network name service is being used to
-supplement the local \fB/etc/project\fR file with additional entries,
-\fBprojdel\fR cannot change information supplied by the network name service.
diff --git a/usr/src/man/man1m/projmod.1m b/usr/src/man/man1m/projmod.1m
deleted file mode 100644
index 5225c127ae..0000000000
--- a/usr/src/man/man1m/projmod.1m
+++ /dev/null
@@ -1,594 +0,0 @@
-'\" te
-.\" Copyright (c) 2018 Peter Tribble.
-.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PROJMOD 1M "Jan 7, 2018"
-.SH NAME
-projmod \- modify a project's information on the system
-.SH SYNOPSIS
-.LP
-.nf
-\fBprojmod\fR [\fB-n\fR] [\fB-A\fR|\fB-f\fR \fIfilename\fR | -]
-.fi
-
-.LP
-.nf
-\fBprojmod\fR [\fB-n\fR] [\fB-A\fR|\fB-f\fR \fIfilename\fR | -] [\fB-p\fR \fIprojid\fR [\fB-o\fR]]
- [\fB-c\fR \fIcomment\fR] [\fB-a\fR|\fB-s\fR|\fB-r\fR] [\fB-U\fR \fIuser\fR[,\fIuser\fR]...]
- [\fB-G\fR \fIgroup\fR[,\fIgroup\fR]...]
- [\fB-K\fR \fIname\fR[=\fIvalue\fR[,\fIvalue\fR]...]]...
- [\fB-l\fR \fInew_projectname\fR] \fIproject\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBprojmod\fR utility modifies a project's definition on the system.
-\fBprojmod\fR changes the definition of the specified project and makes the
-appropriate project-related system file and file system changes.
-.SH OPTIONS
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-A\fR\fR
-.ad
-.RS 29n
-Apply the project's resource controls, as defined in the system's project
-database, to the project if it is active.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-a\fR\fR
-.ad
-.RS 29n
-Specify that the users, groups, attributes, or attribute values specified by
-the \fB-U\fR, \fB-G\fR or \fB-K\fR options should be added to the project,
-rather than replacing the existing member or attribute list.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-c\fR \fIcomment\fR\fR
-.ad
-.RS 29n
-Specify \fIcomment\fR as a text string. Generally, \fIcomment\fR contains a
-short description of the project. This information is stored in the project's
-\fB/etc/project\fR entry.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR \fIfilename\fR | -\fR
-.ad
-.RS 29n
-Specify the project file to modify or validate or specify input from stdin for
-validation. As noted under OPERANDS, if you do not specify a project in a
-\fBprojmod\fR command line, \fBprojmod\fR validates the argument to \fB-f\fR.
-If you do not use this option, the system project file, \fB/etc/project\fR, is
-modified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-G\fR \fIgroup\fR[,\fIgroup\fR]...]fR
-.ad
-.RS 29n
-Specify a replacement list of member groups of the project. When used in
-conjunction with the \fB-a\fR or \fB-r\fR options, this option specifies a list
-of groups to be added or removed from the project.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-K\fR \fIname\fR[=\fIvalue\fR[,\fIvalue\fR]...]\fR
-.ad
-.RS 29n
-Specify a replacement list of project attributes for the project. When used in
-conjunction with the \fB-a\fR, \fB-r\fR, or \fB-s\fR options, this option
-specifies a list of attribute values to be added, removed, or replaced in the
-project. Attributes must be delimited by semicolons (\fB;\fR). Multiple
-\fB-K\fR options can be specified to set, add, remove, or substitute values on
-multiple keys, such as:
-.sp
-.in +2
-.nf
--K \fIkey1\fR=\fIvalue1\fR -K "\fIkey2\fR=(\fIvalue2a\fR),(\fIvalue2b\fR)"
-.fi
-.in -2
-
-Resource control attributes use parentheses to specify values for a key.
-Because many user shells interpret parentheses as special characters, it is
-best to enclose an argument to \fB-K\fR that contains parentheses with double
-quotes, as shown above and in EXAMPLES, below. See \fBresource_controls\fR(5)
-for a description of the resource controls you can specify for a project.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR \fInew_projectname\fR\fR
-.ad
-.RS 29n
-Specify the new project name for the project. The \fInew_projectname\fR
-argument is a string consisting of characters from the set of alphabetic
-characters, numeric characters, period (\fB\&.\fR), underline (\fB_\fR), and
-hyphen (\fB-\fR). The first character should be alphabetic. An error message is
-written if these restrictions are not met. The project name must also be unique
-within the project file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR\fR
-.ad
-.RS 29n
-Syntax check. Check the format of the existing system project file and
-modifications only. The contents of the existing project file, such as user
-names, group names, and resources that are specified in the project attributes
-are not checked.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-o\fR\fR
-.ad
-.RS 29n
-This option allows the project ID specified by the \fB-p\fR option to be
-non-unique within the project file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR \fIprojid\fR\fR
-.ad
-.RS 29n
-Specify a new project \fBID\fR for the project. It must be a non-negative
-decimal integer less than \fBMAXUID\fR as defined in \fB<sys/param.h>\fR. This
-value must be unique within the project file if the \fB-o\fR option is not
-specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-r\fR\fR
-.ad
-.RS 29n
-Specify that the users, groups, attributes, or attribute values specified by
-the \fB-U\fR, \fB-G\fR or \fB-K\fR options should be removed from the project,
-rather than replacing the existing member or attribute list.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR\fR
-.ad
-.RS 29n
-Specify that the list of attributes specified by the \fB-K\fR option should
-have their values replaced. If the attributes do not exist, they are added as
-if the a option was used. This option has no effect the \fB-U\fR or \fB-G\fR
-options.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-U\fR \fIuser\fR[,\fIuser\fR]...\fR
-.ad
-.RS 29n
-Specify a replacement list of member users of the project. When used in
-conjunction with the \fB-a\fR or \fB-r\fR options, this option specifies a list
-of users to be added or removed from the project.
-.RE
-
-.SH OPERANDS
-.LP
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fB\fIproject\fR\fR
-.ad
-.RS 11n
-An existing project name to be modified or displayed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fI(none)\fR\fR
-.ad
-.RS 11n
-If no operand is given, the project file is validated without modifying any
-project.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1\fR Using the \fB-K\fR Option for Addition of an Attribute Value
-.sp
-.LP
-Consider the following \fBproject\fR(4) entry:
-
-.sp
-.in +2
-.nf
-salesaudit:111:Auditing Project::sales,finance: \e
- process.max-file-size=(priv,52428800,deny); \e
- task.max-lwps=(priv,100,deny)
-.fi
-.in -2
-
-.sp
-.LP
-The preceding would appear as one line in \fB/etc/project\fR. For this and the
-following examples, the focus is on the attributes field in the \fBproject\fR
-entry. That is, the last field, the field following the last semicolon.
-
-.sp
-.LP
-The attributes field for the project \fBsalesaudit\fR lists the following
-resource control:
-
-.sp
-.in +2
-.nf
-task.max-lwps=(priv,1000,signal=KILL)
-.fi
-.in -2
-
-.sp
-.LP
-The following \fBprojmod\fR command adds an action clause to the preceding
-entry:
-
-.sp
-.in +2
-.nf
-# projmod -a -K "task.max-lwps=(priv,100,deny)" salesaudit
-.fi
-.in -2
-
-.sp
-.LP
-\&...with the resulting attributes field in the entry for \fBsalesaudit\fR:
-
-.sp
-.in +2
-.nf
-task.max-lwps=(priv,100,deny),(priv,1000,signal=KILL)
-.fi
-.in -2
-
-.LP
-\fBExample 2\fR Using the \fB-K\fR Option for the Substitution of an Attribute
-Value
-.sp
-.LP
-Assume an attributes field in a \fBproject\fR(4) entry for the project
-\fBsalesaudit\fR that lists the following resource control:
-
-.sp
-.in +2
-.nf
-task.max-lwps=(priv,100,deny),(priv,1000,signal=KILL)
-.fi
-.in -2
-
-.sp
-.LP
-The following \fBprojmod\fR command substitutes the action clause specified in
-the command for the action clauses in the preceding entry:
-
-.sp
-.in +2
-.nf
-# projmod -s -K "task.max-lwps=(priv,500,signal=SIGSTOP)" salesaudit
-.fi
-.in -2
-
-.sp
-.LP
-\&...with the resulting attributes field in the entry for \fBsalesaudit\fR:
-
-.sp
-.in +2
-.nf
-task.max-lwps=(priv,500,signal=SIGSTOP)
-.fi
-.in -2
-
-.LP
-\fBExample 3\fR Using the \fB-K\fR Option for Removal of an Attribute Value
-.sp
-.LP
-Assume an attributes field in a \fBproject\fR(4) entry for a project
-\fBsalesaudit\fR that lists the following resource control:
-
-.sp
-.in +2
-.nf
-task.max-lwps=(priv,100,deny),(priv,1000,signal=KILL)
-.fi
-.in -2
-
-.sp
-.LP
-The following \fBprojmod\fR command removes the first action clause from the
-preceding entry:
-
-.sp
-.in +2
-.nf
-# projmod -r -K "task.max-lwps=(priv,100,deny)" salesaudit
-.fi
-.in -2
-
-.sp
-.LP
-\&...with the resulting attributes field in the entry for \fBsalesaudit\fR:
-
-.sp
-.in +2
-.nf
-task.max-lwps=(priv,1000,signal=KILL)
-.fi
-.in -2
-
-.LP
-\fBExample 4\fR Specifying Multiple Attribute Values
-.sp
-.LP
-Suppose you want to achieve the following resource controls for the project
-\fBsalesaudit\fR:
-
-.sp
-.in +2
-.nf
-task.max-lwps=(priv,100,deny)
-process.max-file-size=(priv,50MB,deny)
-.fi
-.in -2
-
-.sp
-.LP
-The following \fBprojmod\fR command adds these resource controls for
-\fBsalesaudit\fR:
-
-.sp
-.in +2
-.nf
-# projmod -a -K "task.max-lwps=(priv,100,deny)" \e
--K "process.max-file-size=(priv,50MB,deny)" salesaudit
-.fi
-.in -2
-
-.sp
-.LP
-\&...with the resulting attributes field in the entry for \fBsalesaudit\fR:
-
-.sp
-.in +2
-.nf
-task.max-lwps=(priv,100,deny);process.max-file-size=(priv,52428800,deny)
-.fi
-.in -2
-
-.sp
-.LP
-In this example, note the effect of the use of the modifier and scaling factor
-for the resource control \fBprocess.max-file-size\fR. The specification in
-\fBprojmod\fR:
-
-.sp
-.in +2
-.nf
-"process.max-file-size=(priv,50MB,deny)"
-.fi
-.in -2
-
-.sp
-.LP
-\&...becomes, in \fB/etc/project\fR:
-
-.sp
-.in +2
-.nf
-process.max-file-size=(priv,52428800,deny)
-.fi
-.in -2
-
-.sp
-.LP
-That is, \fB50MB\fR is expanded to \fB52428800\fR. The modifiers, such as MB,
-and scaling factors you can use for resource controls are specified in
-\fBresource_controls\fR(5).
-
-.LP
-\fBExample 5\fR Binding a Pool to a Project
-.sp
-.LP
-The following command sets the \fBproject.pool\fR attribute for the project
-\fBsales\fR.
-
-.sp
-.in +2
-.nf
-# projmod -a -K project.pool=salespool sales
-.fi
-.in -2
-
-.LP
-\fBExample 6\fR Evaluating Input from \fBstdin\fR
-.sp
-.LP
-The following command uses the \fB-f\fR option without a project name operand
-to evaluate the contents of an NIS projects map.
-
-.sp
-.in +2
-.nf
-# ypcat project | projmod -f -
-.fi
-.in -2
-
-.SH EXIT STATUS
-.LP
-In case of an error, \fBprojmod\fR prints an error message and exits with one
-of the following values:
-.sp
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 6n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB2\fR\fR
-.ad
-.RS 6n
-The command syntax was invalid. A usage message for \fBprojmod\fR is displayed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB3\fR\fR
-.ad
-.RS 6n
-An invalid argument was provided to an option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB4\fR\fR
-.ad
-.RS 6n
-The \fIprojid\fR given with the \fB-p\fR option is already in use.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB5\fR\fR
-.ad
-.RS 6n
-The project files contain an error. See \fBproject\fR(4).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB6\fR\fR
-.ad
-.RS 6n
-The project to be modified, group, user, or resource does not exist.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB9\fR\fR
-.ad
-.RS 6n
-The project is already in use.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB10\fR\fR
-.ad
-.RS 6n
-Cannot update the \fB/etc/project\fR file.
-.RE
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/etc/group\fR\fR
-.ad
-.RS 16n
-System file containing group definitions
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/project\fR\fR
-.ad
-.RS 16n
-System project file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/passwd\fR\fR
-.ad
-.RS 16n
-System password file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/shadow\fR\fR
-.ad
-.RS 16n
-System file containing users' encrypted passwords and related information
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability See below.
-.TE
-
-.sp
-.LP
-Invocation is evolving. Human readable output is unstable.
-.SH SEE ALSO
-.LP
-\fBgroupadd\fR(1M), \fBgroupdel\fR(1M), \fBgroupmod\fR(1M), \fBprojadd\fR(1M),
-\fBprojdel\fR(1M), \fBuseradd\fR(1M), \fBuserdel\fR(1M), \fBusermod\fR(1M),
-\fBpasswd\fR(4), \fBproject\fR(4), \fBattributes\fR(5),
-\fBresource_controls\fR(5)
-.SH NOTES
-.LP
-The \fBprojmod\fR utility modifies project definitions only in the local
-\fB/etc/project\fR file. If a network name service
-is being used to supplement the local files with additional entries,
-\fBprojmod\fR cannot change information supplied by the network name service.
-However \fBprojmod\fR verifies the uniqueness of project name and project
-\fBID\fR against the external name service.
diff --git a/usr/src/man/man1m/prstat.1m b/usr/src/man/man1m/prstat.1m
deleted file mode 100644
index d76f493b29..0000000000
--- a/usr/src/man/man1m/prstat.1m
+++ /dev/null
@@ -1,883 +0,0 @@
-'\" te
-.\" Copyright (c) 2013 Gary Mills
-.\" Copyright (c) 2006, 2009 Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 2019 Joyent, Inc.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
-.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PRSTAT 1M "June 6, 2019"
-.SH NAME
-prstat \- report active process statistics
-.SH SYNOPSIS
-.LP
-.nf
-\fBprstat\fR [\fB-acHJLmRrtTvWZ\fR] [\fB-d\fR u | d] [\fB-C\fR \fIpsrsetlist\fR] [\fB-h\fR \fIlgrplist\fR]
- [\fB-j\fR \fIprojlist\fR] [\fB-k\fR \fItasklist\fR] [\fB-n\fR \fIntop\fR[,\fInbottom\fR]]
- [\fB-p\fR \fIpidlist\fR] [\fB-P\fR \fIcpulist\fR] [\fB-s\fR \fIkey\fR | \fB-S\fR \fIkey\fR ]
- [\fB-u\fR \fIeuidlist\fR] [\fB-U\fR \fIuidlist\fR] [\fB-z\fR \fIzoneidlist\fR] [\fB-Z\fR]
- [\fIinterval\fR [\fIcount\fR]]
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBprstat\fR utility iteratively examines all active processes on the
-system and reports statistics based on the selected output mode and sort order.
-\fBprstat\fR provides options to examine only processes matching specified
-\fBPID\fRs, \fBUID\fRs, zone \fBID\fRs, \fBCPU\fR \fBID\fRs, and processor set
-\fBID\fRs.
-.sp
-.LP
-The \fB-j\fR, \fB-k\fR, \fB-C\fR, \fB-p\fR, \fB-P\fR, \fB-u\fR, \fB-U\fR, and
-\fB-z\fR options accept lists as arguments. Items in a list can be either
-separated by commas or enclosed in quotes and separated by commas or spaces.
-.sp
-.LP
-If you do not specify an option, \fBprstat\fR examines all processes and
-reports statistics sorted by \fBCPU\fR usage.
-.SH OPTIONS
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-a\fR\fR
-.ad
-.sp .6
-.RS 4n
-Report information about processes and users. In this mode \fBprstat\fR
-displays separate reports about processes and users at the same time.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-c\fR\fR
-.ad
-.sp .6
-.RS 4n
-Print new reports below previous reports instead of overprinting them.
-Long names are not truncated in this mode.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-C\fR \fIpsrsetlist\fR\fR
-.ad
-.sp .6
-.RS 4n
-Report only processes or lwps that are bound to processor sets in the given
-list. Each processor set is identified by an integer as reported by
-\fBpsrset\fR(1M). The load averages displayed are the sum of the load averages
-of the specified processor sets (see \fBpset_getloadavg\fR(3C)). Processes with
-one or more LWPs bound to processor sets in the given list are reported even
-when the \fB-L\fR option is not used.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-d\fR \fBu | d\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify \fBu\fR for a printed representation of the internal representation of
-time. See \fBtime\fR(2). Specify \fBd\fR for standard date format. See
-\fBdate\fR(1).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-h\fR \fIlgrplist\fR\fR
-.ad
-.sp .6
-.RS 4n
-Report only processes or lwps whose home \fIlgroup\fR is in the given list of
-\fIlgroups\fR. No processes or lwps will be listed for invalid \fIlgroups\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-H\fR\fR
-.ad
-.sp .6
-.RS 4n
-Report information about home \fIlgroup\fR. In this mode, \fBprstat\fR adds an
-extra column showing process or lwps home \fIlgroup\fR with the header LGRP.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-j\fR \fIprojlist\fR\fR
-.ad
-.sp .6
-.RS 4n
-Report only processes or lwps whose project \fBID\fR is in the given list. Each
-project \fBID\fR can be specified as either a project name or a numerical
-project \fBID\fR. See \fBproject\fR(4).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-J\fR\fR
-.ad
-.sp .6
-.RS 4n
-Report information about processes and projects. In this mode \fBprstat\fR
-displays separate reports about processes and projects at the same time.
-A trailing asterisk marks a long name that has been truncated
-to fit the column.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-k\fR \fItasklist\fR\fR
-.ad
-.sp .6
-.RS 4n
-Report only processes or lwps whose task \fBID\fR is in \fItasklist\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-L\fR\fR
-.ad
-.sp .6
-.RS 4n
-Report statistics for each light-weight process (\fBLWP\fR). By default,
-\fBprstat\fR reports only the number of \fBLWP\fRs for each process.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-m\fR\fR
-.ad
-.sp .6
-.RS 4n
-Report microstate process accounting information. This output format includes
-the percentage of time the process has spent in user mode, in system mode, and
-sleeping. It also includes the number of voluntary and involuntary context
-switches, system calls, the number of signals received, and the percentage of
-time the process has spent processing system traps, text page faults, data page
-faults, waiting for user locks and waiting for \fBCPU\fR (latency time).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR \fIntop\fR[\fI,nbottom\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Restrict number of output lines. The \fIntop\fR argument determines how many
-lines of process or \fBlwp\fR statistics are reported, and the \fInbottom\fR
-argument determines how many lines of user, task, project or zone statistics
-are reported if the \fB-a\fR, \fB-t\fR, \fB-T\fR, \fB-J\fR or \fB-Z\fR options
-are specified. By default, \fBprstat\fR displays as many lines of output that
-fit in a window or terminal. When you specify the \fB-c\fR option or direct the
-output to a file, the default values for \fBntop\fR and \fBnbottom\fR are
-\fB15\fR and \fB5\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR \fIpidlist\fR\fR
-.ad
-.sp .6
-.RS 4n
-Report only processes whose process \fBID\fR is in the given list.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-P\fR \fIcpulist\fR\fR
-.ad
-.sp .6
-.RS 4n
-Report only processes or \fBlwp\fRs which have most recently executed on a
-\fBCPU\fR in the given list. Each \fBCPU\fR is identified by an integer as
-reported by \fBpsrinfo\fR(1M).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-R\fR\fR
-.ad
-.sp .6
-.RS 4n
-Put \fBprstat\fR in the real time scheduling class. When this option is used,
-\fBprstat\fR is given priority over time-sharing and interactive processes.
-This option is available only for superuser.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-r\fR\fR
-.ad
-.sp .6
-.RS 4n
-Disable lookups for user names and project names. (Note that this does not
-apply to lookups for the \fB-j\fR, \fB-u\fR, or \fB-U\fR options.)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR \fIkey\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sort output lines (that is, processes, \fBlwp\fRs, or users) by \fIkey\fR in
-descending order. Only one \fIkey\fR can be used as an argument.
-.sp
-There are five possible key values:
-.sp
-.ne 2
-.na
-\fBcpu\fR
-.ad
-.sp .6
-.RS 4n
-Sort by process \fBCPU\fR usage. This is the default.
-.RE
-
-.sp
-.ne 2
-.na
-\fBpri\fR
-.ad
-.sp .6
-.RS 4n
-Sort by process priority.
-.RE
-
-.sp
-.ne 2
-.na
-\fBrss\fR
-.ad
-.sp .6
-.RS 4n
-Sort by resident set size.
-.RE
-
-.sp
-.ne 2
-.na
-\fBsize\fR
-.ad
-.sp .6
-.RS 4n
-Sort by size of process image.
-.RE
-
-.sp
-.ne 2
-.na
-\fBtime\fR
-.ad
-.sp .6
-.RS 4n
-Sort by process execution time.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-S\fR \fIkey\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sort output lines by \fIkey\fR in ascending order. Possible \fIkey\fR values
-are the same as for the \fB-s\fR option. See \fB-s\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-t\fR\fR
-.ad
-.sp .6
-.RS 4n
-Report total usage summary for each user. The summary includes the total number
-of processes or \fBLWP\fRs owned by the user, total size of process images,
-total resident set size, total cpu time, and percentages of recent cpu time and
-system memory.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-T\fR\fR
-.ad
-.sp .6
-.RS 4n
-Report information about processes and tasks. In this mode \fBprstat\fR
-displays separate reports about processes and tasks at the same time.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-u\fR \fIeuidlist\fR\fR
-.ad
-.sp .6
-.RS 4n
-Report only processes whose effective user \fBID\fR is in the given list. Each
-user \fBID\fR may be specified as either a login name or a numerical user
-\fBID\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-U\fR \fIuidlis\fRt\fR
-.ad
-.sp .6
-.RS 4n
-Report only processes whose real user \fBID\fR is in the given list. Each user
-\fBID\fR may be specified as either a login name or a numerical user \fBID\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.sp .6
-.RS 4n
-Same as \fB-m\fR, for backwards compatibility.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-W\fR\fR
-.ad
-.sp .6
-.RS 4n
-Truncate long names even when \fBprstat\fR would normally print them
-in full.
-A trailing asterisk marks a long name that has been truncated
-to fit the column.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-z\fR \fIzoneidlist\fR\fR
-.ad
-.sp .6
-.RS 4n
-Report only processes or LWPs whose zone ID is in the given list. Each zone ID
-can be specified as either a zone name or a numerical zone ID. See
-\fBzones\fR(5).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-Z\fR\fR
-.ad
-.sp .6
-.RS 4n
-Report information about processes and zones. In this mode, \fBprstat\fR
-displays separate reports about processes and zones at the same time.
-A trailing asterisk marks a long name that has been truncated
-to fit the column.
-.RE
-
-.SH OUTPUT
-.LP
-The following list defines the column headings and the meanings of a
-\fBprstat\fR report:
-.sp
-.ne 2
-.na
-\fBPID\fR
-.ad
-.sp .6
-.RS 4n
-The process \fBID\fR of the process.
-.RE
-
-.sp
-.ne 2
-.na
-\fBUSERNAME\fR
-.ad
-.sp .6
-.RS 4n
-The real user (login) name or real user \fBID\fR.
-A trailing asterisk marks a long name that has been truncated
-to fit the column.
-.RE
-
-.sp
-.ne 2
-.na
-\fBSWAP\fR
-.ad
-.sp .6
-.RS 4n
-The total virtual memory size of the process, including all mapped files and
-devices, in kilobytes (\fBK\fR), megabytes (\fBM\fR), or gigabytes (\fBG\fR).
-.RE
-
-.sp
-.ne 2
-.na
-\fBRSS\fR
-.ad
-.sp .6
-.RS 4n
-The resident set size of the process (\fBRSS\fR), in kilobytes (\fBK\fR),
-megabytes (\fBM\fR), or gigabytes (\fBG\fR). The RSS value is an estimate
-provided by \fBproc\fR(4) that might underestimate the actual
-per-process resident set size, but is generally accurate for the aggregated
-resident set size. Users who want to get more accurate usage information for
-capacity planning should use the \fB-x\fR option to \fBpmap\fR(1) for
-per-process results instead.
-.RE
-
-.sp
-.ne 2
-.na
-\fBSTATE\fR
-.ad
-.sp .6
-.RS 4n
-The state of the process:
-.sp
-.ne 2
-.na
-\fBcpu\fIN\fR\fR
-.ad
-.sp .6
-.RS 4n
-Process is running on \fBCPU\fR \fIN\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBsleep\fR
-.ad
-.sp .6
-.RS 4n
-Sleeping: process is waiting for an event to complete.
-.RE
-
-.sp
-.ne 2
-.na
-\fBwait\fR
-.ad
-.sp .6
-.RS 4n
-Waiting: process is waiting for CPU usage to drop to the CPU-caps enforced
-limits. See the description of \fBCPU-caps\fR in \fBresource_controls\fR(5).
-.RE
-
-.sp
-.ne 2
-.na
-\fBrun\fR
-.ad
-.sp .6
-.RS 4n
-Runnable: process in on run queue.
-.RE
-
-.sp
-.ne 2
-.na
-\fBzombie\fR
-.ad
-.sp .6
-.RS 4n
-Zombie state: process terminated and parent not waiting.
-.RE
-
-.sp
-.ne 2
-.na
-\fBstop\fR
-.ad
-.sp .6
-.RS 4n
-Process is stopped.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fBPRI\fR
-.ad
-.sp .6
-.RS 4n
-The priority of the process. Larger numbers mean higher priority.
-.RE
-
-.sp
-.ne 2
-.na
-\fBNICE\fR
-.ad
-.sp .6
-.RS 4n
-Nice value used in priority computation. Only processes in certain scheduling
-classes have a nice value.
-.RE
-
-.sp
-.ne 2
-.na
-\fBTIME\fR
-.ad
-.sp .6
-.RS 4n
-The cumulative execution time for the process.
-.RE
-
-.sp
-.ne 2
-.na
-\fBCPU\fR
-.ad
-.sp .6
-.RS 4n
-The percentage of recent \fBCPU\fR time used by the process. If executing in a
-non-global \fBzone\fR and the pools facility is active, the percentage will be
-that of the processors in the processor set in use by the pool to which the
-\fBzone\fR is bound.
-.RE
-
-.sp
-.ne 2
-.na
-\fBPROCESS\fR
-.ad
-.sp .6
-.RS 4n
-The name of the process (name of executed file).
-.RE
-
-.sp
-.ne 2
-.na
-\fBLWP\fR
-.ad
-.sp .6
-.RS 4n
-The \fBlwp\fR \fBID\fR of the \fBlwp\fR being reported, as well as the LWP
-name if any is set.
-.RE
-
-.sp
-.ne 2
-.na
-\fBNLWP\fR
-.ad
-.sp .6
-.RS 4n
-The number of \fBlwp\fRs in the process.
-.RE
-
-.sp
-.LP
-With the some options, in addition to a number of the column headings shown
-above, there are:
-.sp
-.ne 2
-.na
-\fBNPROC\fR
-.ad
-.sp .6
-.RS 4n
-Number of processes in a specified collection.
-.RE
-
-.sp
-.ne 2
-.na
-\fBMEMORY\fR
-.ad
-.sp .6
-.RS 4n
-Percentage of memory used by a specified collection of processes.
-.RE
-
-.sp
-.LP
-The following columns are displayed when the \fB-v\fR or \fB-m\fR option is
-specified
-.sp
-.ne 2
-.na
-\fBUSR\fR
-.ad
-.sp .6
-.RS 4n
-The percentage of time the process has spent in user mode.
-.RE
-
-.sp
-.ne 2
-.na
-\fBSYS\fR
-.ad
-.sp .6
-.RS 4n
-The percentage of time the process has spent in system mode.
-.RE
-
-.sp
-.ne 2
-.na
-\fBTRP\fR
-.ad
-.sp .6
-.RS 4n
-The percentage of time the process has spent in processing system traps.
-.RE
-
-.sp
-.ne 2
-.na
-\fBTFL\fR
-.ad
-.sp .6
-.RS 4n
-The percentage of time the process has spent processing text page faults.
-.RE
-
-.sp
-.ne 2
-.na
-\fBDFL\fR
-.ad
-.sp .6
-.RS 4n
-The percentage of time the process has spent processing data page faults.
-.RE
-
-.sp
-.ne 2
-.na
-\fBLCK\fR
-.ad
-.sp .6
-.RS 4n
-The percentage of time the process has spent waiting for user locks.
-.RE
-
-.sp
-.ne 2
-.na
-\fBSLP\fR
-.ad
-.sp .6
-.RS 4n
-The percentage of time the process has spent sleeping.
-.RE
-
-.sp
-.ne 2
-.na
-\fBLAT\fR
-.ad
-.sp .6
-.RS 4n
-The percentage of time the process has spent waiting for CPU.
-.RE
-
-.sp
-.ne 2
-.na
-\fBVCX\fR
-.ad
-.sp .6
-.RS 4n
-The number of voluntary context switches.
-.RE
-
-.sp
-.ne 2
-.na
-\fBICX\fR
-.ad
-.sp .6
-.RS 4n
-The number of involuntary context switches.
-.RE
-
-.sp
-.ne 2
-.na
-\fBSCL\fR
-.ad
-.sp .6
-.RS 4n
-The number of system calls.
-.RE
-
-.sp
-.ne 2
-.na
-\fBSIG\fR
-.ad
-.sp .6
-.RS 4n
-The number of signals received.
-.RE
-
-.sp
-.LP
-Under the \fB-L\fR option, one line is printed for each \fBlwp\fR in the
-process and some reporting fields show the values for the \fBlwp\fR, not the
-process.
-.sp
-.LP
-The following column is displayed when the \fB-H\fR option is specified:
-.sp
-.ne 2
-.na
-\fBLGRP\fR
-.ad
-.sp .6
-.RS 4n
-The home \fIlgroup\fR of the process or lwp.
-.RE
-
-.SH OPERANDS
-.LP
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fB\fIcount\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the number of times that the statistics are repeated. By default,
-\fBprstat\fR reports statistics until a termination signal is received.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIinterval\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the sampling interval in seconds; the default interval is \fB5\fR
-seconds.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRReporting the Five Most Active Super-User Processes
-.sp
-.LP
-The following command reports the five most active super-user processes running
-on \fBCPU1\fR and \fBCPU2\fR:
-
-.sp
-.in +2
-.nf
-example% prstat -u root -n 5 -P 1,2 1 1
-
-PID USERNAME SWAP RSS STATE PRI NICE TIME CPU PROCESS/LWP
- 306 root 3024K 1448K sleep 58 0 0:00.00 0.3% sendmail/1
- 102 root 1600K 592K sleep 59 0 0:00.00 0.1% in.rdisc/1
- 250 root 1000K 552K sleep 58 0 0:00.00 0.0% utmpd/1
- 288 root 1720K 1032K sleep 58 0 0:00.00 0.0% sac/1
- 1 root 744K 168K sleep 58 0 0:00.00 0.0% init/1
-TOTAL: 25, load averages: 0.05, 0.08, 0.12
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRDisplaying Verbose Process Usage Information
-.sp
-.LP
-The following command displays verbose process usage information about
-processes with lowest resident set sizes owned by users \fBroot\fR and
-\fBjohn\fR.
-
-.sp
-.in +2
-.nf
-example% prstat -S rss -n 5 -vc -u root,john
-
- PID USERNAME USR SYS TRP TFL DFL LCK SLP LAT VCX ICX SCL SIG PROCESS/LWP
- 1 root 0.0 0.0 - - - - 100 - 0 0 0 0 init/1
- 102 root 0.0 0.0 - - - - 100 - 0 0 3 0 in.rdisc/1
- 250 root 0.0 0.0 - - - - 100 - 0 0 0 0 utmpd/1
-1185 john 0.0 0.0 - - - - 100 - 0 0 0 0 csh/1
- 240 root 0.0 0.0 - - - - 100 - 0 0 0 0 powerd/4
- TOTAL: 71, load averages: 0.02, 0.04, 0.08
-
-.fi
-.in -2
-.sp
-
-.SH EXIT STATUS
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.sp .6
-.RS 4n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB1\fR\fR
-.ad
-.sp .6
-.RS 4n
-An error occurred.
-.RE
-
-.SH SEE ALSO
-.LP
-\fBdate\fR(1), \fBlgrpinfo\fR(1), \fBplgrp\fR(1), \fBproc\fR(1), \fBps\fR(1),
-\fBtime\fR(2), \fBpsrinfo\fR(1M), \fBpsrset\fR(1M), \fBsar\fR(1M),
-\fBpset_getloadavg\fR(3C), \fBproc\fR(4), \fBproject\fR(4),
-\fBattributes\fR(5), \fBresource_controls\fR(5), \fBzones\fR(5)
-.SH NOTES
-.LP
-The snapshot of system usage displayed by \fBprstat\fR is true only for a
-split-second, and it may not be accurate by the time it is displayed. When the
-\fB-m\fR option is specified, \fBprstat\fR tries to turn on microstate
-accounting for each process; the original state is restored when \fBprstat\fR
-exits. See \fBproc\fR(4) for additional information about the microstate
-accounting facility.
-.sp
-.LP
-The total memory size reported in the SWAP and RSS columns for groups of
-processes can sometimes overestimate the actual amount of memory used by
-processes with shared memory segments.
diff --git a/usr/src/man/man1m/prtconf.1m b/usr/src/man/man1m/prtconf.1m
deleted file mode 100644
index a214c21175..0000000000
--- a/usr/src/man/man1m/prtconf.1m
+++ /dev/null
@@ -1,227 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 2012, Joyent, Inc. All Rights Reserved
-.\" Copyright 2019, Peter tribble.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PRTCONF 1M "Jan 21, 2019"
-.SH NAME
-prtconf \- print system configuration
-.SH SYNOPSIS
-.nf
-\fB/usr/sbin/prtconf\fR [\fB-V\fR] | [\fB-F\fR] | [\fB-m\fR] | [\fB-x\fR] | [\fB-bpv\fR] | [\fB-acdDPv\fR]
- [\fIdev_path\fR]
-.fi
-
-.SH DESCRIPTION
-The \fBprtconf\fR command prints the system configuration information. The
-output includes the total amount of memory, and the configuration of system
-peripherals formatted as a device tree.
-.sp
-.LP
-If a device path is specified on the command line for those command options
-that can take a device path, \fBprtconf\fR will only display information for
-that device node.
-.SH OPTIONS
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB-a\fR
-.ad
-.RS 6n
-Display all the ancestors device nodes, up to the root node of the device tree,
-for the device specified on the command line.
-.RE
-
-.sp
-.ne 2
-.na
-\fB-b\fR
-.ad
-.RS 6n
-Display the firmware device tree root properties for the purpose of platform
-identification. These properties are "name", "compatible", "banner-name" and
-"model".
-.RE
-
-.sp
-.ne 2
-.na
-\fB-c\fR
-.ad
-.RS 6n
-Display the device subtree rooted at the device node specified on the command
-line, that is, display all the children of the device node specified on the
-command line.
-.RE
-
-.sp
-.ne 2
-.na
-\fB-d\fR
-.ad
-.RS 6n
-Display vendor ID and device ID for PCI and PCI Express devices, in addition to
-the nodename. If the information is known, the vendor name and device name will
-also be shown.
-.RE
-
-.sp
-.ne 2
-.na
-\fB-D\fR
-.ad
-.RS 6n
-For each system peripheral in the device tree, displays the name of the device
-driver used to manage the peripheral.
-.RE
-
-.sp
-.ne 2
-.na
-\fB-F\fR
-.ad
-.RS 6n
-Returns the device path name of the console frame buffer,
-if one exists. If there is no frame buffer, \fBprtconf\fR returns a non-zero
-exit code. This flag must be used by itself. It returns only the name of the
-console, frame buffer device or a non-zero exit code. For example, if the
-console frame buffer on a SUNW,Ultra-30 is \fBffb\fR, the command returns:
-\fB/SUNW,ffb@1e,0:ffb0\fR. This option could be used to create a symlink for
-\fB/dev/fb\fR to the actual console device.
-.RE
-
-.sp
-.ne 2
-.na
-\fB-m\fR
-.ad
-.RS 6n
-Displays the amount of system memory in megabytes.
-This flag must be used by itself.
-.RE
-
-
-.ne 2
-.na
-\fB-p\fR
-.ad
-.RS 6n
-Displays information derived from the device tree provided by the firmware
-(PROM) on SPARC platforms or the booting system on x86 platforms.The device
-tree information displayed using this option is a snapshot of the initial
-configuration and may not accurately reflect reconfiguration events that occur
-later.
-.RE
-
-.sp
-.ne 2
-.na
-\fB-P\fR
-.ad
-.RS 6n
-Includes information about pseudo devices. By default, information regarding
-pseudo devices is omitted.
-.RE
-
-.sp
-.ne 2
-.na
-\fB-v\fR
-.ad
-.RS 6n
-Specifies verbose mode.
-.RE
-
-.sp
-.ne 2
-.na
-\fB-V\fR
-.ad
-.RS 6n
-Displays platform-dependent \fBPROM\fR (on SPARC platforms) or booting system
-(on x86 platforms) version information. This flag must be used by itself. The
-output is a string. The format of the string is arbitrary and
-platform-dependent.
-.RE
-
-.sp
-.ne 2
-.na
-\fB-x\fR
-.ad
-.RS 6n
-A legacy flag that reported if the firmware on this system is 64-bit ready.
-As illumos only runs on 64-bit platforms, this flag is kept for compatibility
-only, and zero is always returned.
-.sp
-This flag overrides all other flags and must be used by itself.
-.RE
-
-.SH OPERANDS
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fIdev_path\fR
-.ad
-.RS 12n
-The path to a target device minor node, device nexus node, or device link for
-which device node configuration information is displayed
-.RE
-
-.SH EXIT STATUS
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB0\fR
-.ad
-.RS 12n
-No error occurred.
-.RE
-
-.sp
-.ne 2
-.na
-\fBnon-zero\fR
-.ad
-.RS 12n
-With the \fB-F\fR option, a non-zero return value means that the
-output device is not a frame buffer. In all other cases, a
-non-zero return value means that an error occurred.
-.RE
-
-.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-Interface Stability Unstable
-.TE
-
-.SH SEE ALSO
-\fBfuser\fR(1M), \fBmodinfo\fR(1M), \fBsysdef\fR(1M), \fBattributes\fR(5),
-\fBopenprom\fR(7D)
-.SH NOTES
-The output of the \fBprtconf\fR command is highly dependent on the version of
-the \fBPROM\fR installed in the system. The output will be affected in
-potentially all circumstances.
-.sp
-.LP
-The \fBdriver not attached\fR message means that no driver is currently
-attached to that instance of the device. In general, drivers are loaded and
-installed (and attached to hardware instances) on demand, and when needed, and
-may be uninstalled and unloaded when the device is not in use.
-.sp
-.LP
-On x86 platforms, the use of \fBprtconf\fR \fB-vp\fR provides a subset of
-information from \fBprtconf\fR \fB-v\fR. The value of integer properties from
-\fBprtconf\fR \fB-vp\fR might require byte swapping for correct interpretation.
diff --git a/usr/src/man/man1m/prtdiag.1m b/usr/src/man/man1m/prtdiag.1m
deleted file mode 100644
index 256cd7d586..0000000000
--- a/usr/src/man/man1m/prtdiag.1m
+++ /dev/null
@@ -1,109 +0,0 @@
-'\" te
-.\" Copyright 2019 Peter Tribble.
-.\" Copyright 1989 AT&T Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PRTDIAG 1M "Jun 13, 2019"
-.SH NAME
-prtdiag \- display system diagnostic information
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/prtdiag\fR [\fB-v\fR] [\fB-l\fR]
-.fi
-
-.SH DESCRIPTION
-.LP
-\fBprtdiag\fR displays system configuration and diagnostic information on
-\fBsun4u\fR, \fBsun4v\fR, and x86 systems.
-.sp
-.LP
-The diagnostic information lists any failed field replaceable units
-(\fBFRU\fRs) in the system.
-.sp
-.LP
-The interface, output, and location in the directory hierarchy for
-\fBprtdiag\fR are uncommitted and subject to change in future releases.
-.SH OPTIONS
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-l\fR\fR
-.ad
-.RS 6n
-Log output. If failures or errors exist in the system, output this information
-to \fBsyslogd\fR(1M) only.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.RS 6n
-Verbose mode. Displays the time of the most recent \fBAC\fR Power failure, and
-the most recent hardware fatal error information, and (if applicable)
-environmental status. The hardware fatal error information is useful to repair
-and manufacturing for detailed diagnostics of \fBFRU\fRs.
-.RE
-
-.SH EXIT STATUS
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 5n
-No failures or errors are detected in the system.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB1\fR\fR
-.ad
-.RS 5n
-Failures or errors are detected in the system.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB2\fR\fR
-.ad
-.RS 5n
-An internal \fBprtdiag\fR error occurred, for example, out of memory.
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Unstable*
-.TE
-
-.sp
-.LP
-*The output is unstable.
-.SH SEE ALSO
-.LP
-\fBmodinfo\fR(1M), \fBprtconf\fR(1M), \fBpsrinfo\fR(1M), \fBsysdef\fR(1M),
-\fBsyslogd\fR(1M), \fBattributes\fR(5), \fBopenprom\fR(7D)
-.SH NOTES
-.LP
-Not all diagnostic and system information is available on every
-platform, and therefore cannot be displayed by \fBprtdiag\fR. On those
-platforms, further information can be obtained from the System Controller.
diff --git a/usr/src/man/man1m/prtdscp.1m b/usr/src/man/man1m/prtdscp.1m
deleted file mode 100644
index 10b7304eb2..0000000000
--- a/usr/src/man/man1m/prtdscp.1m
+++ /dev/null
@@ -1,148 +0,0 @@
-'\" te
-.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PRTDSCP 1M "Apr 25, 2006"
-.SH NAME
-prtdscp \- display \fBDSCP\fR \fBIP\fR addresses
-.SH SYNOPSIS
-.LP
-.nf
-\fBprtdscp\fR [\fB-v\fR ]
-.fi
-
-.LP
-.nf
-\fBprtdscp\fR [\fB-v\fR ] \fB-h\fR
-.fi
-
-.LP
-.nf
-\fBprtdscp\fR [\fB-v\fR ] \fB-d\fR
-.fi
-
-.LP
-.nf
-\fBprtdscp\fR [\fB-v\fR ] \fB-s\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBprtdscp\fR displays the \fBIP\fR addresses associated with a Domain to
-Service Processor Communications Protocol (\fBDSCP\fR) link. If no arguments
-are specified, \fBprtdscp\fR displays the \fBIP\fR addresses on both ends of
-the \fBDSCP\fR link. The \fBIP\fR address of either the Service Processor or
-domain side can be displayed separately by the use of the \fB-s\fR or \fB-d\fR
-options, respectively.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.RS 6n
-Verbose mode. Print additional details about the program's internal progress to
-\fBstderr\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-h\fR\fR
-.ad
-.RS 6n
-Help. Print a brief synopsis of the program's usage and exit. All other command
-line arguments are ignored.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-d\fR\fR
-.ad
-.RS 6n
-Display only the local domain's \fBIP\fR address.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR\fR
-.ad
-.RS 6n
-Display only the remote Service Processor's \fBIP\fR address.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRDisplaying both addresses
-.sp
-.LP
-The following example displays both the local domain's \fBIP\fR address and the
-remote \fBSP\fR's \fBIP\fR address:
-
-.sp
-.in +2
-.nf
-\fB# prtdscp\fR
-Domain Address: 192.168.103.2
-SP Address: 192.168.103.1
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRDisplaying the local \fBIP\fR address
-.sp
-.LP
-The following example displays the local domain's \fBIP\fR address:
-
-.sp
-.in +2
-.nf
-\fB# prtdscp -d\fR
-192.168.103.2
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRDisplaying the remote \fBIP\fR address
-.sp
-.LP
-The following example display the remote \fBSP\fR's \fBIP\fR address:
-
-.sp
-.in +2
-.nf
-\fB# prtdscp -s\fR
-192.168.103.1
-.fi
-.in -2
-.sp
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBattributes\fR(5)
diff --git a/usr/src/man/man1m/prtfru.1m b/usr/src/man/man1m/prtfru.1m
deleted file mode 100644
index fc59f0a4cb..0000000000
--- a/usr/src/man/man1m/prtfru.1m
+++ /dev/null
@@ -1,109 +0,0 @@
-'\" te
-.\" Copyright (c) 2002, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PRTFRU 1M "April 9, 2016"
-.SH NAME
-prtfru \- print FRUID-specific information about the FRUs on a system or domain
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/prtfru\fR [\fB-d\fR] | [\fB-clx\fR] [\fIcontainer\fR]
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBprtfru\fR utility is used to obtain \fBFRUID\fR data from the system or
-domain. Its output is that of a tree structure echoing the path in the
-\fBFRU\fR (Field-Replaceable Unit) tree to each container. When a container is
-found, the data from that container is printed in a tree-like structure as
-well.
-.sp
-.LP
-\fBprtfru\fR without any arguments will print the \fBFRU\fR hierarchy and all
-of the \fBFRUID\fR container data. \fBprtfru\fR prints to stdout which may be
-redirected to a file.
-.SH OPTIONS
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-c\fR \fR
-.ad
-.RS 7n
-Prints \fIonly\fR the containers and their data. This option does not print the
-\fBFRU\fR tree hierarchy.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-d\fR \fR
-.ad
-.RS 7n
-Prints a \fBDTD\fR for the current registry to stdout.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR \fR
-.ad
-.RS 7n
-Prints \fIonly\fR the \fBFRU\fR tree hierarchy. This option does not print the
-container data.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-x\fR \fR
-.ad
-.RS 7n
-Prints in \fBXML\fR format with a system identifier (SYSTEM) of
-\fBprtfrureg.dtd\fR.
-.RE
-
-.sp
-.LP
-Options \fB-c\fR and \fB-l\fR can be used together to obtain a list of the
-containers.
-.SH OPERANDS
-.LP
-The following operand is supported:
-.sp
-.ne 2
-.na
-\fB\fIcontainer\fR\fR
-.ad
-.RS 13n
-The name of a particular container in the \fBFRU\fR hierarchy, that is, either
-the name or path/name of a container as displayed in the \fB-l\fR option.
-.RE
-
-.SH EXIT STATUS
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 6n
-All information was found and printed successfully.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB>0\fR\fR
-.ad
-.RS 6n
-An error has occurred.
-.RE
-
-.SH SEE ALSO
-.LP
-\fBfruadm\fR(1M), \fBattributes\fR(5)
diff --git a/usr/src/man/man1m/prtpicl.1m b/usr/src/man/man1m/prtpicl.1m
deleted file mode 100644
index 4996941ea3..0000000000
--- a/usr/src/man/man1m/prtpicl.1m
+++ /dev/null
@@ -1,69 +0,0 @@
-'\" te
-.\" Copyright (c) 2000, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PRTPICL 1M "Jun 2, 2003"
-.SH NAME
-prtpicl \- print PICL tree
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/prtpicl\fR [\fB-c\fR \fIpicl_class\fR] [\fB-v\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBprtpicl\fR command prints the \fBPICL\fR tree maintained by the
-\fBPICL\fR daemon. The output of \fBprtpicl\fR includes the name and \fBPICL\fR
-class of the nodes.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-c\fR \fIpicl_class\fR\fR
-.ad
-.RS 17n
-Print only the nodes of the named \fBPICL\fR class.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.RS 17n
-Print in verbose mode. In verbose mode, \fBprtpicl\fR prints a list of
-properties and values for each node. Verbose mode is disabled by default.
-.RE
-
-.SH EXIT STATUS
-.sp
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR \fR
-.ad
-.RS 12n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnon-zero\fR\fR
-.ad
-.RS 12n
-An error occurred.
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBpicld\fR(1M), \fBattributes\fR(5)
diff --git a/usr/src/man/man1m/prtvtoc.1m b/usr/src/man/man1m/prtvtoc.1m
deleted file mode 100644
index 8b353d750b..0000000000
--- a/usr/src/man/man1m/prtvtoc.1m
+++ /dev/null
@@ -1,203 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T All Rights Reserved. Copyright (c) 2002, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PRTVTOC 1M "Apr 14, 2020"
-.SH NAME
-prtvtoc \- report information about a disk geometry and partitioning
-.SH SYNOPSIS
-.nf
-\fBprtvtoc\fR [\fB-fhs\fR] [\fB-t\fR \fIvfstab\fR] [\fB-m\fR \fImnttab\fR] \fIdevice\fR
-.fi
-
-.SH DESCRIPTION
-The \fBprtvtoc\fR command allows the contents of the label to be viewed. The
-command can be used only by the super-user.
-.sp
-.LP
-The \fIdevice\fR name can be the file name of a raw device in the form of
-\fB/dev/rdsk/c*t*d*s2\fR or can be the file name of a block device in the form
-of \fB/dev/dsk/c*t*d*s2\fR.
-.SH OPTIONS
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-f\fR\fR
-.ad
-.RS 13n
-Report on the disk free space, including the starting block address of the free
-space, number of blocks, and unused partitions.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-h\fR\fR
-.ad
-.RS 13n
-Omit the headers from the normal output.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-m\fR\fI mnttab\fR\fR
-.ad
-.RS 13n
-Use \fImnttab\fR as the list of mounted filesystems, in place of
-\fB/etc/mnttab\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR\fR
-.ad
-.RS 13n
-Omit all headers but the column header from the normal output.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-t\fR\fI vfstab\fR\fR
-.ad
-.RS 13n
-Use \fIvfstab\fR as the list of filesystem defaults, in place of
-\fB/etc/vfstab\fR.
-.RE
-
-.SH EXAMPLES
-\fBExample 1 \fRUsing the \fBprtvtoc\fR Command
-.sp
-.LP
-The following example uses the \fBprtvtoc\fR command on a 424-megabyte hard
-disk:
-
-.sp
-.in +2
-.nf
-example# prtvtoc /dev/rdsk/c0t3d0s2
-* /dev/rdsk/c0t3d0s2 partition map
-*
-* Dimensions:
-* 512 bytes/sector
-* 80 sectors/track
-* 9 tracks/cylinder
-* 720 sectors/cylinder
-* 2500 cylinders
-* 1151 accessible cylinders
-*
-* Flags:
-* 1: unmountable
-* 10: read-only
-* First Sector Last
-* Partition Tag Flags Sector Count Sector Mount Directory
- 0 2 00 0 76320 76319 /
- 1 3 01 76320 132480 208799
- 2 5 00 0 828720 828719
- 5 6 00 208800 131760 340559 /opt
- 6 4 00 340560 447120 787679 /usr
- 7 8 00 787680 41040 828719 /export/home
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The data in the \fBTag\fR column above indicates the type of partition, as
-follows:
-
-.sp
-
-.sp
-.TS
-c c
-l l .
-\fIName\fR \fINumber\fR
-UNASSIGNED 0x00
-BOOT 0x01
-ROOT 0x02
-SWAP 0x03
-USR 0x04
-BACKUP 0x05
-STAND 0x06
-VAR 0x07
-HOME 0x08
-ALTSCTR 0x09
-CACHE 0x0a
-RESERVED 0x0b
-.TE
-
-.sp
-.LP
-The data in the \fBFlags\fR column above indicates how the partition is to be
-mounted, as follows:
-
-.sp
-
-.sp
-.TS
-l l
-l l .
-\fIName\fR \fINumber\fR
-MOUNTABLE, READ AND WRITE 0x00
-NOT MOUNTABLE 0x01
-MOUNTABLE, READ ONLY 0x10
-.TE
-
-.LP
-\fBExample 2 \fRUsing the \fBprtvtoc\fR Command with the \fB-f\fR Option
-.sp
-.LP
-The following example uses the \fBprtvtoc\fR command with the \fB-f\fR option
-on a 424-megabyte hard disk:
-
-.sp
-.in +2
-.nf
-example# prtvtoc \fB-f\fR /dev/rdsk/c0t3d0s2
-FREE_START=0 FREE_SIZE=0 FREE_COUNT=0 FREE_PART=34
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRUsing the \fBprtvtoc\fR Command on a Disk Over One Terabyte
-.sp
-.LP
-The following example uses uses the \fBprtvtoc\fR command on a disk over one
-terabyte:.
-
-.sp
-.in +2
-.nf
-example# prtvtoc /dev/rdsk/c1t1d0s2
-* /dev/rdsk/c1t1d0s2 partition map
-*
-* Dimensions:
-* 512 bytes/sector
-* 3187630080 sectors
-* 3187630013 accessible sectors
-*
-* Flags:
-* 1: unmountable
-* 10: read-only
-*
-* First Sector Last
-* Partition Tag Flags Sector Count Sector Mount Directory
- 0 2 00 34 262144 262177
- 1 3 01 262178 262144 524321
- 6 4 00 524322 3187089340 3187613661
- 8 11 00 3187613662 16384 318763004
-.fi
-.in -2
-.sp
-
-.SH SEE ALSO
-\fBdevinfo\fR(1M), \fBfmthard\fR(1M), \fBformat\fR(1M), \fBmount\fR(1M),
-\fBattributes\fR(5)
-.SH WARNINGS
-The \fBmount\fR command does not check the "not mountable" bit.
diff --git a/usr/src/man/man1m/psradm.1m b/usr/src/man/man1m/psradm.1m
deleted file mode 100644
index 84c58e902e..0000000000
--- a/usr/src/man/man1m/psradm.1m
+++ /dev/null
@@ -1,358 +0,0 @@
-'\" te
-.\" Copyright (c) 2008 Sun Microsystems, Inc.
-.\" All Rights Reserved
-.\" Copyright 2019 Joyent, Inc.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PSRADM 1M "Apr 25, 2019"
-.SH NAME
-psradm \- change processor operational status
-.SH SYNOPSIS
-.LP
-.nf
-\fBpsradm\fR \fB-f\fR | \fB-i\fR | \fB-n\fR | \fB-s\fR [\fB-v\fR] [\fB-F\fR] \fIprocessor_id\fR
-.fi
-
-.LP
-.nf
-\fBpsradm\fR \fB-a\fR \fB-f\fR | \fB-i\fR | \fB-n\fR | \fB-s\fR [\fB-v\fR] [\fB-F\fR]
-.fi
-
-.LP
-.nf
-\fBpsradm\fR \fB-aS\fR [\fB-v\fR]
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBpsradm\fR utility changes the operational status of processors. The
-legal states for the processor are \fBon-line\fR, \fBoff-line\fR, \fBspare\fR,
-\fBfaulted\fR, \fBno-intr\fR, and \fBdisabled\fR.
-.sp
-.LP
-An \fBon-line\fR processor processes \fBLWPs\fR (lightweight processes) and can
-be interrupted by I/O devices in the system.
-.sp
-.LP
-An \fBoff-line\fR processor does not process any \fBLWPs.\fR Usually, an
-\fBoff-line\fR processor is not interruptible by I/O devices in the system. On
-some processors or under certain conditions, it might not be possible to
-disable interrupts for an \fBoff-line\fR processor. Thus, the actual effect of
-being \fBoff-line\fR might vary from machine to machine.
-.sp
-.LP
-A spare processor does not process any LWPs. A spare processor can be brought
-\fBon-line\fR, \fBoff-line\fR or to \fBno-intr\fR by a privileged user of the
-system or by the kernel in response to changes in the system state.
-.sp
-.LP
-A faulted processor is identified by the kernel, which monitors the behavior of
-processors over time. A privileged user can set the state of a faulted
-processor to be \fBon-line\fR, \fBoff-line\fR, \fBspare\fR or \fBno-intr\fR,
-but must use the force option to do so.
-.sp
-.LP
-A \fBno-intr\fR processor processes \fBLWPs\fR but is not interruptible by I/O
-devices.
-.sp
-.LP
-With the \fB-aS\fR option, simultaneous multi-threading is disabled. The -a
-option means "apply to every core" and is currently required. Each CPU core has
-its SMT siblings placed in the \fBdisabled\fR state, and they will effectively
-stay unused. That is, only one CPU in each core will be processing I/O,
-scheduling processes, etc. A CPU can only be moved back out of the
-\fBdisabled\fR state with the \fB-F\fR option.
-.sp
-.LP
-A processor can not be taken \fBoff-line\fR, \fBdisabled\fR, or made \fBspare\fR
-if there are LWPs that are bound to the processor unless the additional \fB-F\fR
-option is used. The \fB-F\fR option removes processor bindings of such LWPs
-before changing the processor's operational status. On some architectures, it
-might not be possible to take certain processors \fBoff-line\fR or \fBspare\fR
-if, for example, the system depends on some resource provided by the processor.
-.sp
-.LP
-At least one processor in the system must be able to process \fBLWPs.\fR At
-least one processor must also be able to be interrupted. Since an
-\fBoff-line\fR or \fBspare\fR processor can be interruptible, it is possible to
-have an operational system with one processor \fBno-intr\fR and all other
-processors \fBoff-line\fR or \fBspare\fR but with one or more accepting
-interrupts.
-.sp
-.LP
-If any of the specified processors are powered off, \fBpsradm\fR might power on
-one or more processors.
-.sp
-.LP
-Only users with the \fBPRIV_SYS_RES_CONFIG\fR privilege can use the
-\fBpsradm\fR utility.
-.SH OPTIONS
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-a\fR\fR
-.ad
-.RS 6n
-Perform the action on all processors, or as many as possible.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR\fR
-.ad
-.RS 6n
-Take the specified processors \fBoff-line\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-F\fR\fR
-.ad
-.RS 6n
-Force the transition to the additional specified state. Required if one or more
-of the specified processors was in the faulted state. Set the specified
-processors to faulted, if no other transition option was specified. Forced
-transitions can only be made to \fBfaulted\fR, \fBspare\fR, or \fBoff-line\fR
-states. Administrators are encouraged to use the \fB-Q\fR option for
-\fBpbind\fR(1M) to find out which threads will be affected by forced a
-processor state transition.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-i\fR\fR
-.ad
-.RS 6n
-Set the specified processors \fBno-intr\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR\fR
-.ad
-.RS 6n
-Bring the specified processors \fBon-line\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-S\fR\fR
-.ad
-.RS 6n
-Disable simultaneous multi-threading (hyper-threading).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR\fR
-.ad
-.RS 6n
-Make the specified processors spare.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.RS 6n
-Output a message giving the results of each attempted operation.
-.RE
-
-.SH OPERANDS
-.LP
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fB\fIprocessor_id\fR\fR
-.ad
-.RS 16n
-The processor \fBID\fR of the processor to be set \fBon-line\fR or
-\fBoff-line\fR, \fBspare\fR, or \fBno-intr\fR.
-.sp
-Specify \fIprocessor_id\fR as an individual processor number (for example,
-\fB3\fR), multiple processor numbers separated by spaces (for example, \fB1 2
-3\fR), or a range of processor numbers (for example, \fB1-4\fR). It is also
-possible to combine ranges and (individual or multiple) \fIprocessor_id\fRs
-(for example, \fB1-3 5 7-8 9\fR).
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRSetting Processors to \fBoff-line\fR
-.sp
-.LP
-The following example sets processors 2 and 3 \fBoff-line\fR:
-
-.sp
-.in +2
-.nf
-% psradm \fB-f\fR 2 3
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRSetting Processors to no-intr
-.sp
-.LP
-The following example sets processors 1 and 2 \fBno-intr\fR:
-
-.sp
-.in +2
-.nf
-% psradm \fB-i\fR 1 2
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRSetting Processors to \fBspare\fR
-.sp
-.LP
-The following example sets processors 1 and 2 spare, even if either of the
-processors was in the faulted state:
-
-.sp
-.in +2
-.nf
-% psradm -F -s 1 2
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 4 \fRSetting All Processors \fBon-line\fR
-.sp
-.in +2
-.nf
-% psradm \fB-a\fR \fB-n\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 5 \fRForcing Processors to \fBoff-line\fR
-.sp
-.LP
-The following example sets processors 1 and 2 offline, and revokes the
-processor bindings from the processes bound to them:
-
-.sp
-.in +2
-.nf
-% psradm \fB-F\fR \fB-f\fR 1 2
-.fi
-.in -2
-.sp
-
-.SH EXIT STATUS
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 6n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB>0\fR\fR
-.ad
-.RS 6n
-An error occurred.
-.RE
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/etc/wtmpx\fR\fR
-.ad
-.RS 14n
-Records logging processor status changes
-.RE
-
-.SH SEE ALSO
-.LP
-\fBpbind\fR(1M), \fBpsrinfo\fR(1M), \fBpsrset\fR(1M), \fBp_online\fR(2),
-\fBprocessor_bind\fR(2), \fBattributes\fR(5)
-.SH DIAGNOSTICS
-.ne 2
-.na
-\fB\fBpsradm: processor 4: Invalid argument\fR\fR
-.ad
-.sp .6
-.RS 4n
-The specified processor does not exist in the configuration.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpsradm: processor 3: Device busy\fR\fR
-.ad
-.sp .6
-.RS 4n
-The specified processor could not be taken \fBoff-line\fR because it either has
-LWPs bound to it, is the last \fBon-line\fR processor in the system, or is
-needed by the system because it provides some essential service.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpsradm: processor 3: Device busy\fR\fR
-.ad
-.sp .6
-.RS 4n
-The specified processor could not be set \fBno-intr\fR because it is the last
-interruptible processor in the system, or it is the only processor in the
-system that can service interrupts needed by the system.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpsradm: processor 3: Device busy\fR\fR
-.ad
-.sp .6
-.RS 4n
-The specified processor is powered off, and it cannot be powered on because
-some platform-specific resource is unavailable.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpsradm: processor 0: Not owner\fR\fR
-.ad
-.sp .6
-.RS 4n
-The user does not have permission to change processor status.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpsradm: processor 2: Operation not supported\fR\fR
-.ad
-.sp .6
-.RS 4n
-The specified processor is powered off, and the platform does not support power
-on of individual processors.
-.RE
-
diff --git a/usr/src/man/man1m/psrinfo.1m b/usr/src/man/man1m/psrinfo.1m
deleted file mode 100644
index ce5291f2ee..0000000000
--- a/usr/src/man/man1m/psrinfo.1m
+++ /dev/null
@@ -1,248 +0,0 @@
-'\" te
-.\" Copyright (c) 2004 Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 2019 Joyent, Inc.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PSRINFO 1M "Apr 25, 2019"
-.SH NAME
-psrinfo \- displays information about processors
-.SH SYNOPSIS
-.LP
-.nf
-\fBpsrinfo\fR [\fB-p\fR] [\fB-v\fR] [\fIprocessor_id\fR]...
-.fi
-
-.LP
-.nf
-\fBpsrinfo\fR \fB-t\fR [\fB-S state\fR | \fB-c\fR | \fB-p\fR]
-.fi
-
-.LP
-.nf
-\fBpsrinfo\fR \fB-r\fR [\fB<propname>\fR | \fBall\fR]
-.fi
-
-.SH DESCRIPTION
-.LP
-\fBpsrinfo\fR displays information about processors. Each physical socket may
-contain multiple cores, which in turn can contain multiple virtual processors
-(also referred to as CPUs). Each virtual processor is an entity
-with its own \fBID\fR, capable of executing independent threads.
-.sp
-.LP
-Without the \fIprocessor_id\fR operand, \fBpsrinfo\fR displays one line for each
-configured processor, displaying whether it is on-line, non-interruptible
-(designated by no-intr), spare, off-line, faulted, disabled, or powered off, and
-when that status last changed. Use the processor_id operand to display
-information about a specific processor. See \fBOPERANDS\fR.
-.SH OPTIONS
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-c\fR\fR
-.ad
-.RS 19n
-When used with \fB-t\fR, report the total number of CPU cores.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR\fR
-.ad
-.RS 19n
-Display the number of physical sockets in a system.
-.sp
-When combined with the \fB-v\fR option, reports additional information about
-each physical socket.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-r\fR \fIpropname\fR\fR
-.ad
-.RS 19n
-Report CPU-specific properties that apply to the system as a whole. Supplying
-"all" will list all such properties in \fBkey=value\fR format. Currently, the
-only defined property is \fBsmt_enabled\fR, a boolean property indicating whether
-simultaneous multi-threading (hyper-threading) is active or not.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-S\fR \fIstate\fR\fR
-.ad
-.RS 19n
-When used with \fB-t\fR, report the total number of CPUs in the given state.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR\fI processor_id\fR\fR
-.ad
-.RS 19n
-Silent mode. Displays \fB1\fR if the specified processor is fully on-line,
-or \fB0\fR otherwise.
-.sp
-Use silent mode when using \fBpsrinfo\fR in shell scripts.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-t\fR\fR
-.ad
-.RS 19n
-Report totals. Without arguments, reports the total number of CPUs. This can be
-combined with the \fB-p\fR, \fB-c\fR, or \fB-S\fR options to modify the total.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.RS 19n
-Verbose mode. Displays additional information about the specified processors,
-including: processor type, floating point unit type and clock speed. If any of
-this information cannot be determined, \fBpsrinfo\fR displays \fBunknown\fR.
-.sp
-When combined with the \fB-p\fR option, reports additional information about
-each physical processor.
-.RE
-
-.SH OPERANDS
-.LP
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fB\fIprocessor_id\fR\fR
-.ad
-.RS 16n
-The processor \fBID\fR of the processor about which information is to be
-displayed.
-.sp
-Specify \fIprocessor_id\fR as an individual processor number (for example,
-\fB3\fR), multiple processor numbers separated by spaces (for example, \fB1 2
-3\fR), or a range of processor numbers (for example, \fB1-4\fR). It is also
-possible to combine ranges and (individual or multiple) \fIprocessor_id\fRs
-(for example, \fB1-3 5 7-8 9\fR).
-.sp
-This cannot be specified along with the \fB-r\fR or \fB-t\fR options.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRDisplaying Information About All Configured Processors in
-Verbose Mode
-.sp
-.LP
-The following example displays information about all configured processors in
-verbose mode.
-
-.sp
-.in +2
-.nf
-\fBpsrinfo \fR\fB-v\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRDetermining If a Processor is On-line
-.sp
-.LP
-The following example uses \fBpsrinfo\fR in a shell script to determine if a
-processor is on-line.
-
-.sp
-.in +2
-.nf
-if [ "`psrinfo \fB-s\fR 3 2> /dev/null`" \(mieq 1 ]
-then
- echo "processor 3 is up"
-fi
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRDisplaying Information About the Physical Sockets in the
-System
-.sp
-.LP
-Use the \fB-tp\fR options to report the number of sockets.
-
-.sp
-.in +2
-.nf
-> psrinfo -tp
- 2
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Without the \fB-t\fR option, \fB-p\fR also takes processor IDs:
-
-.sp
-.in +2
-.nf
-> psrinfo -p 0 28 # IDs 0 and 28 exist on the
-1 # same socket
-
-> psrinfo -p 0 1 # IDs 0 and 1 exist on different
-2 # sockets
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-In this example, virtual processors \fB0\fR and \fB28\fR exist on the same
-socket. Virtual processors \fB0\fR and \fB1\fR do not. This is
-specific to this example and is and not a general rule.
-
-.SH EXIT STATUS
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 6n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB>0\fR\fR
-.ad
-.RS 6n
-An error occurred.
-.RE
-
-.SH SEE ALSO
-.LP
-\fBpsradm\fR(1M), \fBp_online\fR(2), \fBprocessor_info\fR(2),
-\fBattributes\fR(5)
-.SH DIAGNOSTICS
-.ne 2
-.na
-\fB\fBpsrinfo:\fR \fBprocessor\fR \fB9:\fR \fBInvalid\fR \fBargument\fR\fR
-.ad
-.sp .6
-.RS 4n
-The specified processor does not exist.
-.RE
-
diff --git a/usr/src/man/man1m/psrset.1m b/usr/src/man/man1m/psrset.1m
deleted file mode 100644
index 8281dd0110..0000000000
--- a/usr/src/man/man1m/psrset.1m
+++ /dev/null
@@ -1,544 +0,0 @@
-'\" te
-.\" Copyright (c) 2013, Joyent, Inc. All Rights Reserved
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PSRSET 1M "Mar 11, 2013"
-.SH NAME
-psrset \- creation and management of processor sets
-.SH SYNOPSIS
-.LP
-.nf
-\fBpsrset\fR \fB-a\fR [\fB-F\fR] \fIprocessor_set_id\fR \fIprocessor_id\fR...
-.fi
-
-.LP
-.nf
-\fBpsrset\fR \fB-b\fR \fIprocessor_set_id\fR \fIpid\fR [\fI/lwpid\fR]...
-.fi
-
-.LP
-.nf
-\fBpsrset\fR \fB-b\fR \fB-z\fR \fIzone name\fR \fIprocessor_set_id\fR
-.fi
-
-.LP
-.nf
-\fBpsrset\fR \fB-c\fR [\fB-F\fR] [\fIprocessor_id\fR]...
-.fi
-
-.LP
-.nf
-\fBpsrset\fR \fB-d\fR \fIprocessor_set_id\fR...
-.fi
-
-.LP
-.nf
-\fBpsrset\fR \fB-e\fR \fIprocessor_set_id\fR \fIcommand\fR [\fIargument(s)\fR]
-.fi
-
-.LP
-.nf
-\fBpsrset\fR \fB-f\fR \fIprocessor_set_id\fR
-.fi
-
-.LP
-.nf
-\fBpsrset\fR [\fB-i\fR] [\fIprocessor_set_id\fR]...
-.fi
-
-.LP
-.nf
-\fBpsrset\fR \fB-n\fR \fIprocessor_set_id\fR
-.fi
-
-.LP
-.nf
-\fBpsrset\fR \fB-p\fR [\fIprocessor_id\fR]...
-.fi
-
-.LP
-.nf
-\fBpsrset\fR [\fB-q\fR] [\fIpid\fR [\fI/lwpid\fR]]...
-.fi
-
-.LP
-.nf
-\fBpsrset\fR \fB-Q\fR [\fIprocessor_set_id\fR]...
-.fi
-
-.LP
-.nf
-\fBpsrset\fR \fB-r\fR [\fB-F\fR] \fIprocessor_id\fR...
-.fi
-
-.LP
-.nf
-\fBpsrset\fR \fB-u\fR \fIpid\fR [\fI/lwpid\fR]...
-.fi
-
-.LP
-.nf
-\fBpsrset\fR \fB-U\fR [\fIprocessor_set_id\fR]...
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBpsrset\fR utility controls the management of processor sets. Processor
-sets allow the binding of processes or LWPs to groups of processors, rather
-than just a single processor. Processors assigned to processor sets can run
-only LWPs that have been bound to that processor set.
-.sp
-.LP
-This command cannot be used to modify processor disposition when pools are
-enabled. Use \fBpooladm\fR(1M) and \fBpoolcfg\fR(1M) to modify processor set
-configuration through the resource pools facility.
-.SH OPTIONS
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-a\fR\fR
-.ad
-.RS 6n
-Assign the specified processors to the specified processor set. With the
-additional \fB-F\fR option, all LWPs bound to the specified processors will be
-unbound prior to changing processor sets.
-.sp
-This option is restricted to users with the \fBPRIV_SYS_RES_CONFIG\fR
-privilege.
-.RE
-
-.sp
-.ne 2
-.na
-\fB-b\fR [\fB-z\fR \fIzonename\fR]
-.ad
-.RS 6n
-Bind all or a subset of the \fBLWP\fRs of the specified processes to the
-specified processor set. If \fB-z\fR is specified, all processes and threads
-inside the specified zone are bound to the processor set.
-.sp
-LWPs bound to a processor set are restricted to run only on the processors in
-that set. Processes can only be bound to non-empty processor sets, that is,
-processor sets that have had processors assigned to them.
-.sp
-Bindings are inherited, so new LWPs and processes created by a bound LWP have
-the same binding. Binding an interactive shell to a processor, for example,
-binds all commands executed by the shell.
-.sp
-This option is restricted to users with the \fBPRIV_SYS_RES_CONFIG\fR
-privilege.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-c\fR\fR
-.ad
-.RS 6n
-Create a new processor set and displays the new processor set \fBID\fR. With
-the additional \fB-F\fR option, all LWPs bound to the specified processors will
-be unbound prior to assigning them to the processor set being created.
-.sp
-If a list of processors is given, it also attempts to assign those processors
-to the processor set. If this succeeds, the processors are idle until
-\fBLWP\fRs are bound to the processor set. This option is restricted to users
-with the \fBPRIV_SYS_RES_CONFIG\fR privilege.
-.sp
-Only a limited number of processor sets can be active (created and not
-destroyed) at a given time. This limit is always be greater than the number of
-processors in the system. If the \fB-c\fR option is used when the maximum
-number of processor sets is already active, the command fails.
-.sp
-The following format is used for the first line of output of the \fB-c\fR
-option when the \fBLC_MESSAGES\fR locale category specifies the "C" locale. In
-other locales, the strings \fBcreated\fR, \fBprocessor\fR, and \fBset\fR can be
-replaced with more appropriate strings corresponding to the locale.
-.sp
-.in +2
-.nf
-"created processor set %d\en" \fIprocessor set ID\fR
-.fi
-.in -2
-.sp
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-d\fR\fR
-.ad
-.RS 6n
-Remove the specified processor set, releasing all processors and processes
-associated with it.
-.sp
-This option is restricted to users with the \fBPRIV_SYS_RES_CONFIG\fR
-privilege.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-e\fR\fR
-.ad
-.RS 6n
-Execute a command (with optional arguments) in the specified processor set.
-.sp
-The command process and any child processes are executed only by processors in
-the processor set.
-.sp
-This option is restricted to users with the \fBPRIV_SYS_RES_CONFIG\fR
-privilege.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR\fR
-.ad
-.RS 6n
-Disables interrupts for all processors within the specified processor set. See
-\fBpsradm\fR(1M).
-.sp
-If some processors in the set cannot have their interrupts disabled, the other
-processors still have their interrupts disabled, and the command reports an
-error and return non-zero exit status.
-.sp
-This option is restricted to users with the \fBPRIV_SYS_RES_CONFIG\fR
-privilege.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-F\fR\fR
-.ad
-.RS 6n
-Forces the specified processor set operation by unbinding all threads bound to
-the specified processor. Only the \fB-a\fR or the \fB-r\fR option can be used
-in combination with this option. Administrators are encouraged to use the
-\fB-Q\fR option for \fBpbind\fR(1M) to find out which threads will be affected
-by such operation.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-i\fR\fR
-.ad
-.RS 6n
-Display a list of processors assigned to each named processor set. If no
-argument is given, a list of all processor sets and the processors assigned to
-them is displayed. This is also the default operation if the \fBpsrset\fR
-command is not given an option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR\fR
-.ad
-.RS 6n
-Enable interrupts for all processors within the specified processor set. See
-\fBpsradm\fR(1M).
-.sp
-This option is restricted to users with the \fBPRIV_SYS_RES_CONFIG\fR
-privilege.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR\fR
-.ad
-.RS 6n
-Display the processor set assignments for the specified list of processors. If
-no argument is given, the processor set assignments for all processors in the
-system is given.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-q\fR\fR
-.ad
-.RS 6n
-Display the processor set bindings of the specified processes or of all
-processes. If a process is composed of multiple \fBLWP\fRs which have different
-bindings and the LWPs are not explicitly specified, the bindings of only one of
-the bound \fBLWP\fRs is displayed. The bindings of a subset of LWPs can be
-displayed by appending "/lwpids" to the process \fBID\fRs. Multiple LWPs may be
-selected using "-" and "," delimiters. See EXAMPLES.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-Q\fR\fR
-.ad
-.RS 6n
-Display the LWPs bound to the specified list of processor sets, or all LWPs
-with processor set bindings.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-r\fR\fR
-.ad
-.RS 6n
-Remove a list of processors from their current processor sets. Processors that
-are removed return to the general pool of processors.
-.sp
-Processors with \fBLWP\fRs bound to them using \fBpbind\fR(1M) can be assigned
-to or removed from processor sets using the \fB-F\fR option.
-.sp
-This option is restricted to users with the \fBPRIV_SYS_RES_CONFIG\fR
-privilege.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-u\fR\fR
-.ad
-.RS 6n
-Remove the processor set bindings of a subset or all the \fBLWP\fRs of the
-specified processes, allowing them to be executed on any on-line processor if
-they are not bound to individual processors through \fBpbind\fR.
-.sp
-Users with the \fBPRIV_SYS_RES_CONFIG\fR privilege can unbind any process or
-LWP from any active processor set. Other users can unbind processes and LWPs
-from processor sets that do not have the \fBPSET_NOESCAPE\fR attribute set. In
-addition, the user must have permission to control the affected processes; the
-real or effective user ID of the user must match the real or saved user ID of
-the target processes.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-U\fR\fR
-.ad
-.RS 6n
-Removes the bindings of all LWPs bound to the specified list of processor sets,
-or to any processor set if no argument is specified.
-.RE
-
-.SH OPERANDS
-.LP
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fB\fIpid\fR\fR
-.ad
-.RS 20n
-Specify \fIpid\fR as a process \fBID\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIlwpid\fR\fR
-.ad
-.RS 20n
-The set of LWP\fBID\fRs of the specified process to be controlled or queried.
-The syntax for selecting LWP \fBID\fRs is as follows:
-.sp
-.in +2
-.nf
-2,3,4-8 LWP IDs 2, 3, and 4 through 8
--4 LWPs whose IDs are 4 or below
-4- LWPs whose IDs are 4 or above
-.fi
-.in -2
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIprocessor_id\fR\fR
-.ad
-.RS 20n
-Specify \fIprocessor_id\fR as an individual processor number (for example,
-\fB3\fR), multiple processor numbers separated by spaces (for example, \fB1 2
-3\fR), or a range of processor numbers (for example, \fB1-4\fR). It is also
-possible to combine ranges and (individual or multiple) \fIprocessor_id\fRs
-(for example, \fB1-3 5 7-8 9\fR).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIprocessor_set_id\fR\fR
-.ad
-.RS 20n
-Specify \fIprocessor_set_id\fR as a processor set \fBID\fR.
-.RE
-
-.SH EXIT STATUS
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 9n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fBnon-0\fR
-.ad
-.RS 9n
-An error occurred.
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Stability Level Stable
-.TE
-
-.SH SEE ALSO
-.LP
-\fBpbind\fR(1M), \fBpooladm\fR(1M), \fBpoolcfg\fR(1M), \fBpsradm\fR(1M),
-\fBpsrinfo\fR(1M), \fBprocessor_bind\fR(2), \fBprocessor_info\fR(2),
-\fBpset_bind\fR(2), \fBpset_create\fR(2), \fBpset_info\fR(2),
-\fBsysconf\fR(3C), \fBlibpool\fR(3LIB), \fBattributes\fR(5),
-\fBprivileges\fR(5)
-.SH DIAGNOSTICS
-.LP
-The following output indicates that the specified process did not exist or has
-exited:
-.sp
-.in +2
-.nf
-psrset: cannot query pid 31: No such process
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The following output indicates that the user does not have permission to bind
-the process:
-.sp
-.in +2
-.nf
-psrset: cannot bind pid 31: Not owner
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The following output indicates that the user does not have permission to assign
-the processor:
-.sp
-.in +2
-.nf
-psrset: cannot assign processor 4: Not owner
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The following output indicates that the specified processor is not on-line, or
-the specified processor does not exist.
-.sp
-.in +2
-.nf
-psrset: cannot assign processor 8: Invalid argument
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The following output indicates that an \fBLWP\fR in the specified process is
-bound to a processor and cannot be bound to a processor set that does not
-include that processor:
-.sp
-.in +2
-.nf
-psrset: cannot bind pid 67: Device busy
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The following output indicates that the specified processor could not be added
-to the processor set. This can be due to bound \fBLWP\fRs on that processor, or
-because that processor cannot be combined in the same processor set with other
-processors in that set, or because the processor is the last one in its current
-processor set:
-.sp
-.in +2
-.nf
-psrset: cannot assign processor 7: Device busy
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The following output indicates that the specified processor set does not exist:
-.sp
-.in +2
-.nf
-psrset: cannot execute in processor set 8: Invalid argument
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The following output indicates that the maximum number of processor sets
-allowed in the system is already active:
-.sp
-.in +2
-.nf
-psrset: cannot create processor set: Not enough space
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The following output indicates that the pools facility is active.
-.sp
-.in +2
-.nf
-psrset: cannot assign processor 7: Operation not supported
-psrset: cannot bind pid 31: Operation not supported
-psrset: cannot bind pid 31: Operation not supported
-psrset: could not create processor set: Operation not supported
-psrset: could not remove processor set 1: Operation not supported
-psrset: cannot exec in processor set 1: Operation not supported
-psrset: cannot remove processor 7: Operation not supported
-psrset: cannot unbind pid 31: Operation not supported
-.fi
-.in -2
-.sp
-
diff --git a/usr/src/man/man1m/putdev.1m b/usr/src/man/man1m/putdev.1m
deleted file mode 100644
index 4452c11b56..0000000000
--- a/usr/src/man/man1m/putdev.1m
+++ /dev/null
@@ -1,415 +0,0 @@
-'\" te
-.\" Copyright 1997 AT&T Copyright (c) 1997 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PUTDEV 1M "Apr 3, 1997"
-.SH NAME
-putdev \- edits device table
-.SH SYNOPSIS
-.LP
-.nf
-\fBputdev\fR \fB-a\fR \fIalias\fR [\fIattribute\fR=\fIvalue\fR [...]]
-.fi
-
-.LP
-.nf
-\fBputdev\fR \fB-m\fR \fIdevice\fR \fIattribute\fR=\fIvalue\fR [\fIattribute\fR = \fIvalue\fR [...]]
-.fi
-
-.LP
-.nf
-\fBputdev\fR \fB-d\fR \fIdevice\fR [\fIattribute\fR [...]]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBputdev\fR adds a new device to the device table, modifies an existing device
-description or removes a device entry from the table. The first synopsis is
-used to add a device. The second synopsis is used to modify existing entries by
-adding or changing attributes. If a specified attribute is not defined, this
-option adds that attribute to the device definition. If a specified attribute
-is already defined, it modifies the attribute definition. The third synopsis is
-used to delete either an entire device entry or, if the attribute argument is
-used, to delete an attribute assignment for a device.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-a\fR\fR
-.ad
-.RS 6n
-Add a device to the device table using the specified attributes. The device
-must be referenced by its \fBalias\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-d\fR\fR
-.ad
-.RS 6n
-Remove a device from the device table, when executed without the
-\fIattributes\fR argument. Used with the \fIattribute\fR argument, it deletes
-the given attribute specification for \fIdevice\fR from the table.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-m\fR\fR
-.ad
-.RS 6n
-Modify a device entry in the device table. If an entry already exists, it adds
-any specified attributes that are not defined. It also modifies any attributes
-which already have a value with the value specified by this command.
-.RE
-
-.SH OPERANDS
-.sp
-.LP
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fB\fIalias\fR\fR
-.ad
-.RS 13n
-Designates the alias of the device to be added.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIattribute\fR\fR
-.ad
-.RS 13n
-Designates a device attribute to be added, modified, or deleted. Can be any of
-the device attributes described under \fBDEVICE\fR \fBATTRIBUTES\fR except
-\fBalias\fR. This prevents an accidental modification or deletion of a device's
-alias from the table.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIdevice\fR\fR
-.ad
-.RS 13n
-Designates the pathname or alias of the device whose attribute is to be added,
-modified, or removed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIvalue\fR\fR
-.ad
-.RS 13n
-Designates the value to be assigned to a device's attribute.
-.RE
-
-.SH DEVICE ATTRIBUTES
-.sp
-.LP
-The following list shows the standard device attributes, used by applications
-such as \fBufsdump\fR(1M) and \fBufsrestore\fR(1M), which can be defined for a
-device. You are not limited to this list, you can define any attribute you
-like.
-.sp
-.ne 2
-.na
-\fB\fBalias\fR\fR
-.ad
-.RS 13n
-The unique name by which a device is known. No two devices in the database may
-share the same alias name. The name is limited in length to 14 characters and
-should contain only alphanumeric characters and the following special
-characters if they are escaped with a backslash: underscore ( _ ), dollar sign
-($), hyphen (\(mi), and period (.).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBbdevice\fR\fR
-.ad
-.RS 13n
-The pathname to the block special device node associated with the device, if
-any. The associated major/minor combination should be unique within the
-database and should match that associated with the \fBcdevice\fR field, if any.
-(It is the administrator's responsibility to ensure that these
-\fBmajor/minor\fR numbers are unique in the database.)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcapacity\fR\fR
-.ad
-.RS 13n
-The capacity of the device or of the typical volume, if removable.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcdevice\fR\fR
-.ad
-.RS 13n
-The pathname to the character special device node associated with the device,
-if any. The associated major/minor combination should be unique within the
-database and should match that associated with the \fBbdevice\fR field, if any.
-(It is the administrator's responsibility to ensure that these
-\fBmajor/minor\fR numbers are unique in the database.)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcyl\fR\fR
-.ad
-.RS 13n
-Used by the command specified in the \fBmkfscmd\fR attribute.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdesc\fR\fR
-.ad
-.RS 13n
-A description of any instance of a volume associated with this device (such as
-floppy diskette).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdpartlist\fR\fR
-.ad
-.RS 13n
-The list of disk partitions associated with this device. Used only if
-\fBtype=disk\fR. The list should contain device aliases, each of which must
-have \fBtype=dpart\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdparttype\fR\fR
-.ad
-.RS 13n
-The type of disk partition represented by this device. Used only if
-\fBtype=dpart\fR. It should be either \fBfs\fR (for file system) or \fBdp\fR
-(for data partition).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBerasecmd\fR\fR
-.ad
-.RS 13n
-The command string that, when executed, erases the device.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfmtcmd\fR\fR
-.ad
-.RS 13n
-The command string that, when executed, formats the device.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfsname\fR\fR
-.ad
-.RS 13n
-The file system name on the file system administered on this partition, as
-supplied to the \fB/usr/sbin/labelit\fR command. This attribute is specified
-only if \fBtype=dpart\fR and \fBdparttype=fs\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBgap\fR\fR
-.ad
-.RS 13n
-Used by the command specified in the \fBmkfscmd\fR attribute.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmkfscmd\fR\fR
-.ad
-.RS 13n
-The command string that, when executed, places a file system on a previously
-formatted device.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmountpt\fR\fR
-.ad
-.RS 13n
-The default mount point to use for the device. Used only if the device is
-mountable. For disk partitions where \fBtype=dpart\fR and \fBdparttype=fs\fR,
-this attribute should specify the location where the partition is normally
-mounted.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnblocks\fR\fR
-.ad
-.RS 13n
-The number of blocks in the file system administered on this partition. Used
-only if \fBtype=dpart\fR and \fBdparttype=fs\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBninodes\fR\fR
-.ad
-.RS 13n
-The number of inodes in the file system administered on this partition. Used
-only if \fBtype=dpart\fR and \fBdparttype=fs\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnorewind\fR\fR
-.ad
-.RS 13n
-The name of the character special device node that allows access to the serial
-device without rewinding when the device is closed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpathname\fR\fR
-.ad
-.RS 13n
-Defines the pathname to an i-node describing the device (used for non-block or
-character device pathnames, such as directories).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBtype\fR\fR
-.ad
-.RS 13n
-A token that represents inherent qualities of the device. Standard types
-include: 9-track, ctape, disk, directory, diskette, dpart, and qtape.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBvolname\fR\fR
-.ad
-.RS 13n
-The volume name on the file system administered on this partition, as supplied
-to the \fB/usr/sbin/labelit\fR command. Used only if \fBtype=dpart\fR and
-\fBdparttype=fs\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBvolume\fR\fR
-.ad
-.RS 13n
-A text string used to describe any instance of a volume associated with this
-device. This attribute should not be defined for devices which are not
-removable.
-.RE
-
-.SH EXIT STATUS
-.sp
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 5n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB1\fR\fR
-.ad
-.RS 5n
-Command syntax was incorrect, an invalid option was used, or an internal error
-occurred.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB2\fR\fR
-.ad
-.RS 5n
-The device table could not be opened for reading, or a new device table could
-not be created.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB3\fR\fR
-.ad
-.RS 5n
-If executed with the \fB-a\fR option, indicates that an entry in the device
-table with the alias \fBalias\fR already exits. If executed with the \fB-m\fR
-or \fB-d\fR options, indicates that no entry exists for device \fIdevice\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB4\fR\fR
-.ad
-.RS 5n
-Indicates that \fB-d\fR was requested and one or more of the specified
-attributes were not defined for the device.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/device.tab\fR\fR
-.ad
-.RS 19n
-
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBdevattr\fR(1M), \fBputdgrp\fR(1M), \fBufsdump\fR(1M), \fBufsrestore\fR(1M),
-\fBattributes\fR(5)
-.sp
-.LP
-\fI\fR
diff --git a/usr/src/man/man1m/putdgrp.1m b/usr/src/man/man1m/putdgrp.1m
deleted file mode 100644
index 25e688f6ce..0000000000
--- a/usr/src/man/man1m/putdgrp.1m
+++ /dev/null
@@ -1,203 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 1997 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PUTDGRP 1M "Jul 5, 1990"
-.SH NAME
-putdgrp \- edits device group table
-.SH SYNOPSIS
-.LP
-.nf
-\fBputdgrp\fR [\fB-d\fR] \fIdgroup\fR [\fIdevice\fR]...
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBputdgrp\fR modifies the device group table. It performs two kinds of
-modification. It can modify the table by creating a new device group or
-removing a device group. It can also change group definitions by adding or
-removing a device from the group definition.
-.sp
-.LP
-When the command is invoked with only a \fIdgroup\fR specification, the command
-adds the specified group name to the device group table if it does not already
-exist. If the \fB-d\fR option is also used with only the \fIdgroup\fR
-specification, the command deletes the group from the table.
-.sp
-.LP
-When the command is invoked with both a \fIdgroup\fR and a \fIdevice\fR
-specification, it adds the given device name(s) to the group definition. When
-invoked with both arguments and the \fB-d\fR option, the command deletes the
-device name(s) from the group definition.
-.sp
-.LP
-When the command is invoked with both a \fIdgroup\fR and a \fIdevice\fR
-specification and the device group does not exist, it creates the group and
-adds the specified devices to that new group.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-d\fR\fR
-.ad
-.RS 6n
-Delete the group or, if used with \fIdevice\fR, delete the device from a group
-definition.
-.RE
-
-.SH OPERANDS
-.sp
-.LP
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fB\fIdgroup\fR\fR
-.ad
-.RS 10n
-Specify a device group name.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIdevice\fR\fR
-.ad
-.RS 10n
-Specify the pathname or alias of the device that is to be added to, or deleted
-from, the device group.
-.RE
-
-.SH EXIT STATUS
-.sp
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 5n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB1\fR\fR
-.ad
-.RS 5n
-Command syntax was incorrect, an invalid option was used, or an internal error
-occurred.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB2\fR\fR
-.ad
-.RS 5n
-Device group table could not be opened for reading or a new device group table
-could not be created.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB3\fR\fR
-.ad
-.RS 5n
-If executed with the \fB-d\fR option, indicates that an entry in the device
-group table for the device group \fIdgroup\fR does not exist and so cannot be
-deleted. Otherwise, indicates that the device group \fIdgroup\fR already
-exists and cannot be added.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB4\fR\fR
-.ad
-.RS 5n
-If executed with the \fB-d\fR option, indicates that the device group
-\fIdgroup\fR does not have as members one or more of the specified devices.
-Otherwise, indicates that the device group \fIdgroup\fR already has one or
-more of the specified devices as members.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRAdding a new device group.
-.sp
-.LP
-The following example adds a new device group:
-
-.sp
-.in +2
-.nf
-example# \fBputdgrp floppies\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRAdding a device to a device group.
-.sp
-.LP
-The following example adds a device to a device group:
-
-.sp
-.in +2
-.nf
-example# \fBputdgrp floppies diskette2\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRDeleting a device group.
-.sp
-.LP
-The following example deletes a device group:
-
-.sp
-.in +2
-.nf
-example# \fBputdgrp \fR\fB-d\fR\fB floppies\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 4 \fRDeleting a device from a device group.
-.sp
-.LP
-The following example deletes a device from a device group:
-
-.sp
-.in +2
-.nf
-example# \fBputdgrp \fR\fB-d\fR\fB floppies diskette2\fR
-.fi
-.in -2
-.sp
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/dgroup.tab\fR\fR
-.ad
-.RS 19n
-
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBlistdgrp\fR(1M), \fBputdev\fR(1M), \fBattributes\fR(5)
diff --git a/usr/src/man/man1m/pwck.1m b/usr/src/man/man1m/pwck.1m
deleted file mode 100644
index 3506fbc7fe..0000000000
--- a/usr/src/man/man1m/pwck.1m
+++ /dev/null
@@ -1,91 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T , Copyright (c) 2002, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PWCK 1M "Aug 27, 2008"
-.SH NAME
-pwck, grpck \- password/group file checkers
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/pwck\fR [\fIfilename\fR]
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/grpck\fR [\fIfilename\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBpwck\fR scans the password file and notes any inconsistencies. The checks
-include validation of the number of fields, login name, user ID, group ID, and
-whether the login directory and the program-to-use-as-shell exist. The default
-password file is \fB/etc/passwd\fR.
-.sp
-.LP
-\fBgrpck\fR verifies all entries in the \fBgroup\fR file. This verification
-includes a check of the number of fields, group name, group ID, whether any
-login names belong to more than \fBNGROUPS_MAX\fR groups, and that all login
-names appear in the password file. \fBgrpck\fR also issues a warning if it
-finds an entry (a single line) in the \fBgroup\fR file longer than 2047
-characters. Such an entry causes group maintenance commands, such as
-\fBgroupdel\fR(1M) and \fBgroupmod\fR(1M), to fail.
-.sp
-.LP
-The default group file is \fB/etc/group\fR.
-.sp
-.LP
-All messages regarding inconsistent entries are placed on the \fBstderr\fR
-stream.
-.SH FILES
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fB/etc/group\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fB/etc/passwd\fR
-.RE
-.SH SEE ALSO
-.sp
-.LP
-\fBgroupdel\fR(1M), \fBgroupmod\fR(1M), \fBgetpwent\fR(3C), \fBgroup\fR(4),
-\fBpasswd\fR(4), \fBattributes\fR(5)
-.SH DIAGNOSTICS
-.sp
-.LP
-Group entries in \fB/etc/group\fR with no login names are flagged.
-.sp
-.ne 2
-.na
-\fB\fBGroup file '\fR\fIfilename\fR\fB\&' is empty\fR\fR
-.ad
-.sp .6
-.RS 4n
-The \fB/etc/passwd\fR or \fB/etc/group\fR file is an empty file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcannot open file\fR \fIfilename\fR\fB: No such file or directory\fR\fR
-.ad
-.sp .6
-.RS 4n
-The \fB/etc/passwd\fR or \fB/etc/group\fR file does not exist.
-.RE
-
-.SH NOTES
-.sp
-.LP
-If no filename argument is given, \fBgrpck\fR checks the local group file,
-\fB/etc/group\fR, and also makes sure that all login names encountered in the
-checked group file are known to the system \fBgetpwent\fR(3C) routine. This
-means that the login names may be supplied by a network name service.
diff --git a/usr/src/man/man1m/pwconv.1m b/usr/src/man/man1m/pwconv.1m
deleted file mode 100644
index 8b7658f55b..0000000000
--- a/usr/src/man/man1m/pwconv.1m
+++ /dev/null
@@ -1,183 +0,0 @@
-'\" te
-.\" Copyright (c) 1996, Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PWCONV 1M "Mar 9, 1993"
-.SH NAME
-pwconv \- installs and updates /etc/shadow with information from /etc/passwd
-.SH SYNOPSIS
-.LP
-.nf
-\fBpwconv\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBpwconv\fR command creates and updates \fB/etc/shadow\fR with information
-from \fB/etc/passwd\fR.
-.sp
-.LP
-\fBpwconv\fR relies on a special value of 'x' in the password field of
-\fB/etc/passwd.\fR This value of 'x' indicates that the password for the user
-is already in \fB/etc/shadow\fR and should not be modified.
-.sp
-.LP
-If the \fB/etc/shadow\fR file does not exist, this command will create
-\fB/etc/shadow\fR with information from \fB/etc/passwd\fR. The command
-populates \fB/etc/shadow\fR with the user's login name, password, and password
-aging information. If password aging information does not exist in
-\fB/etc/passwd\fR for a given user, none will be added to \fB/etc/shadow\fR.
-However, the last changed information will always be updated.
-.sp
-.LP
-If the \fB/etc/shadow\fR file does exist, the following tasks will be
-performed:
-.sp
-.ne 2
-.na
-\fB\fR
-.ad
-.sp .6
-.RS 4n
-Entries that are in the \fB/etc/passwd\fR file and not in the
-\fB/etc/shadow\fR file will be added to the \fB/etc/shadow\fR file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fR
-.ad
-.sp .6
-.RS 4n
-Entries that are in the \fB/etc/shadow\fR file and not in the
-\fB/etc/passwd\fR file will be removed from \fB/etc/shadow\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fR
-.ad
-.sp .6
-.RS 4n
-Password attributes (for example, password and aging information) that exist
-in an \fB/etc/passwd\fR entry will be moved to the corresponding entry in
-\fB/etc/shadow\fR.
-.RE
-
-.sp
-.LP
-The \fBpwconv\fR command can only be used by the super-user.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/opasswd\fR\fR
-.ad
-.RS 16n
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/oshadow\fR\fR
-.ad
-.RS 16n
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/passwd\fR\fR
-.ad
-.RS 16n
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/shadow\fR\fR
-.ad
-.RS 16n
-
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBpasswd\fR(1), \fBpassmgmt\fR(1M), \fBusermod\fR(1M), \fBpasswd\fR(4),
-\fBattributes\fR(5)
-.SH DIAGNOSTICS
-.sp
-.LP
-\fBpwconv\fR exits with one of the following values:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 5n
-\fBSUCCESS.\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB1\fR\fR
-.ad
-.RS 5n
-Permission denied.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB2\fR\fR
-.ad
-.RS 5n
-Invalid command syntax.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB3\fR\fR
-.ad
-.RS 5n
-Unexpected failure. Conversion not done.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB4\fR\fR
-.ad
-.RS 5n
-Unexpected failure. Password file(s) missing.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB5\fR\fR
-.ad
-.RS 5n
-Password file(s) busy. Try again later.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB6\fR\fR
-.ad
-.RS 5n
-Bad entry in \fB/etc/shadow\fR file.
-.RE
-
diff --git a/usr/src/man/man1m/quot.1m b/usr/src/man/man1m/quot.1m
deleted file mode 100644
index 2286eaed75..0000000000
--- a/usr/src/man/man1m/quot.1m
+++ /dev/null
@@ -1,160 +0,0 @@
-'\" te
-.\" Copyright (c) 2001, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH QUOT 1M "May 30, 2001"
-.SH NAME
-quot \- summarize file system ownership
-.SH SYNOPSIS
-.LP
-.nf
-\fBquot\fR [\fB-acfhnv\fR] \fIfilesystem\fR...
-.fi
-
-.LP
-.nf
-\fBquot\fR \fB-a\fR [\fB-cfhnv\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBquot\fR displays the number of blocks (1024 bytes) in the named
-\fIfilesystem\fR (one or more) currently owned by each user. There is a limit
-of 2048 blocks. Files larger than this will be counted as a 2048 block file,
-but the total block count will be correct.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-a\fR\fR
-.ad
-.RS 6n
-Generate a report for all mounted file systems.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-c\fR\fR
-.ad
-.RS 6n
-Display three columns giving a file size in blocks, the number of files of that
-size, and a cumulative total of blocks containing files of that size or a
-smaller size.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR\fR
-.ad
-.RS 6n
-Display three columns giving, for each user, the number of blocks owned, the
-count of number of files, and the user name. This option is incompatible with
-the \fB-c\fR and \fB-v\fR options.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-h\fR\fR
-.ad
-.RS 6n
-Estimate the number of blocks in the file. This does not account for files with
-holes in them.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR\fR
-.ad
-.RS 6n
-Attach names to the list of files read from standard input. \fBquot\fR \fB-n\fR
-cannot be used alone, because it expects data from standard input. For example,
-the pipeline
-.sp
-\fBncheck myfilesystem | sort +0n | quot \fR\fB-n\fR\fB myfilesystem\fR
-.sp
-will produce a list of all files and their owners. This option is incompatible
-with all other options.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.RS 6n
-In addition to the default output, display three columns containing the number
-of blocks not accessed in the last 30, 60, and 90 days.
-.RE
-
-.SH OPERANDS
-.sp
-.ne 2
-.na
-\fB\fIfilesystem\fR\fR
-.ad
-.RS 14n
-mount-point of the filesystem(s) being checked
-.RE
-
-.SH USAGE
-.sp
-.LP
-See \fBlargefile\fR(5) for the description of the behavior of \fBquot\fR when
-encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
-.SH EXIT STATUS
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 6n
-Successful operation.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB32\fR\fR
-.ad
-.RS 6n
-Error condition (bad or missing argument, bad path, or other error).
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/mnttab\fR\fR
-.ad
-.RS 15n
-Lists mounted file systems.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/passwd\fR\fR
-.ad
-.RS 15n
-Used to obtain user names
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBdu\fR(1), \fBmnttab\fR(4), \fBpasswd\fR(4), \fBattributes\fR(5),
-\fBlargefile\fR(5)
-.SH NOTES
-.sp
-.LP
-This command can only be used by the super-user.
diff --git a/usr/src/man/man1m/quota.1m b/usr/src/man/man1m/quota.1m
deleted file mode 100644
index bdf95c2430..0000000000
--- a/usr/src/man/man1m/quota.1m
+++ /dev/null
@@ -1,82 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH QUOTA 1M "Apr 30, 2009"
-.SH NAME
-quota \- display a user's ufs or zfs file system disk quota and usage
-.SH SYNOPSIS
-.LP
-.nf
-\fBquota\fR [\fB-v\fR] [\fIusername\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBquota\fR displays users' UFS or ZFS disk usage and limits. Only the
-super-user may use the optional \fIusername\fR argument to view the limits of
-other users.
-.sp
-.LP
-\fBquota\fR without options only display warnings about mounted file systems
-where usage is over quota. Remotely mounted file systems which do not have
-quotas turned on are ignored.
-.sp
-.LP
-\fIusername\fR can be the numeric UID of a user.
-.SH OPTIONS
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.RS 6n
-Display user's quota on all mounted file systems where quotas exist.
-.RE
-
-.SH USAGE
-.sp
-.LP
-See \fBlargefile\fR(5) for the description of the behavior of \fBquota\fR when
-encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/mnttab\fR\fR
-.ad
-.RS 15n
-list of currently mounted filesystems
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBedquota\fR(1M), \fBquotaon\fR(1M), \fBquotacheck\fR(1M), \fBrepquota\fR(1M),
-\fBrquotad\fR(1M), \fBattributes\fR(5), \fBlargefile\fR(5), \fBzones\fR(5)
-.SH NOTES
-.sp
-.LP
-\fBquota\fR displays quotas for NFS mounted UFS- or ZFS-based file systems if
-the \fBrquotad\fR daemon is running. See \fBrquotad\fR(1M). In a \fBzones\fR(5)
-environment, \fBquota\fR displays quotas only for the zone in which it is
-invoked.
-.sp
-.LP
-\fBquota\fR can display entries for the same file system multiple times for
-multiple mount points. For example,
-.sp
-.in +2
-.nf
-# \fBquota -v user1\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-might display identical quota information for \fBuser1\fR at the mount points
-\fB/home/user1\fR, \fB/home/user2\fR, and \fB/home/user\fR, if all three mount
-points are mounted from the same file system with quotas turned on.
diff --git a/usr/src/man/man1m/quotacheck.1m b/usr/src/man/man1m/quotacheck.1m
deleted file mode 100644
index 6faf44ab5a..0000000000
--- a/usr/src/man/man1m/quotacheck.1m
+++ /dev/null
@@ -1,115 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 1996, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH QUOTACHECK 1M "Jul 31, 1998"
-.SH NAME
-quotacheck \- ufs file system quota consistency checker
-.SH SYNOPSIS
-.LP
-.nf
-\fBquotacheck\fR [\fB-fp\fR] [\fB-v\fR] \fIfilesystem\fR...
-.fi
-
-.LP
-.nf
-\fBquotacheck\fR \fB-a\fR [\fB-fpv\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBquotacheck\fR examines each mounted ufs file system, builds a table of
-current disk usage, and compares this table against the information stored in
-the file system's disk quota file. If any inconsistencies are detected, both
-the quota file and the current system copy of the incorrect quotas are updated.
-.sp
-.LP
-\fIfilesystem\fR is either a file system mount point or the block device on
-which the file system resides.
-.sp
-.LP
-\fBquotacheck\fR expects each file system to be checked to have a quota file
-named \fBquotas\fR in the root directory. If none is present, \fBquotacheck\fR
-will not check the file system.
-.sp
-.LP
-\fBquotacheck\fR accesses the character special device in calculating the
-actual disk usage for each user. Thus, the file systems that are checked should
-be quiescent while \fBquotacheck\fR is running.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-a\fR\fR
-.ad
-.RS 6n
-Check the file systems which \fB/etc/mnttab\fR indicates are ufs file systems.
-These file systems must be read-write mounted with disk quotas enabled, and
-have an \fBrq\fR entry in the \fBmntopts\fR field in \fB/etc/vfstab\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR\fR
-.ad
-.RS 6n
-Force check on file systems with logging enabled. Use in combination with the
-\fB-p\fR option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR\fR
-.ad
-.RS 6n
-Check quotas of file systems in parallel. For file systems with logging
-enabled, no check is performed unless the \fB-f\fR option is also specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.RS 6n
-Indicate the calculated disk quotas for each user on a particular file system.
-\fBquotacheck\fR normally reports only those quotas modified.
-.RE
-
-.SH USAGE
-.sp
-.LP
-See \fBlargefile\fR(5) for the description of the behavior of \fBquotacheck\fR
-when encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/mnttab\fR\fR
-.ad
-.RS 15n
-Mounted file systems
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/vfstab\fR\fR
-.ad
-.RS 15n
-List of default parameters for each file system
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBedquota\fR(1M), \fBquota\fR(1M), \fBquotaon\fR(1M), \fBrepquota\fR(1M),
-\fBattributes\fR(5), \fBlargefile\fR(5), \fBquotactl\fR(7I),
-\fBmount_ufs\fR(1M)
diff --git a/usr/src/man/man1m/quotaon.1m b/usr/src/man/man1m/quotaon.1m
deleted file mode 100644
index 984083839d..0000000000
--- a/usr/src/man/man1m/quotaon.1m
+++ /dev/null
@@ -1,128 +0,0 @@
-'\" te
-.\" Copyright (c) 2000, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH QUOTAON 1M "Sep 16, 1996"
-.SH NAME
-quotaon, quotaoff \- turn ufs file system quotas on and off
-.SH SYNOPSIS
-.LP
-.nf
-\fBquotaon\fR [\fB-v\fR] \fIfilesystem\fR...
-.fi
-
-.LP
-.nf
-\fBquotaon\fR \fB-a\fR [\fB-v\fR]
-.fi
-
-.LP
-.nf
-\fBquotaoff\fR [\fB-v\fR] \fIfilesystem\fR...
-.fi
-
-.LP
-.nf
-\fBquotaoff\fR \fB-a\fR [\fB-v\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBquotaon\fR turns on disk quotas for one or more ufs file systems.
-.sp
-.LP
-Before a file system may have quotas enabled, a file named \fBquotas\fR, owned
-by root, must exist in the root directory of the file system. See
-\fBedquota\fR(1M) for details on how to modify the contents of this file.
-.sp
-.LP
-\fBquotaoff\fR turns off disk quotas for one or more ufs file systems.
-.sp
-.LP
-The file systems specified must already be mounted.
-.sp
-.LP
-These commands update the \fBmntopts\fR field of the appropriate entries in
-\fB/etc/mnttab\fR to indicate when quotas are on or off for each file system.
-If quotas are on, the string \fBquota\fR will be added to \fBmntopts\fR; if
-quotas are off, the \fBquota\fR string is not present.
-.sp
-.LP
-\fIfilesystem\fR must be either the mount point of a file system, or the block
-device on which the file system resides.
-.SH OPTIONS
-.SS "quotaon"
-.sp
-.ne 2
-.na
-\fB\fB-a\fR\fR
-.ad
-.RS 6n
-This option is normally used at boot time to enable quotas. It applies only to
-those file systems in \fB/etc/vfstab\fR which have ``rq'' in the \fBmntopts\fR
-field, are currently mounted ``rw'', and have a \fBquotas\fR file in the root
-directory.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.RS 6n
-Display a message for each file system after quotas are turned on.
-.RE
-
-.SS "quotaoff"
-.sp
-.ne 2
-.na
-\fB\fB-a\fR\fR
-.ad
-.RS 6n
-Force all file systems in \fB/etc/mnttab\fR to have their quotas disabled.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.RS 6n
-Display a message for each file system affected.
-.RE
-
-.SH USAGE
-.sp
-.LP
-See \fBlargefile\fR(5) for the description of the behavior of \fBquotaon\fR and
-\fBquotaoff\fR when encountering files greater than or equal to 2 Gbyte ( 2^31
-bytes).
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/mnttab\fR\fR
-.ad
-.RS 15n
-mounted file systems
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/vfstab\fR\fR
-.ad
-.RS 15n
-list of default parameters for each file system
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBedquota\fR(1M), \fBquota\fR(1M), \fBquotacheck\fR(1M), \fBrepquota\fR(1M),
-\fBmnttab\fR(4), \fBvfstab\fR(4), \fBattributes\fR(5), \fBlargefile\fR(5),
-\fBquotactl\fR(7I)
diff --git a/usr/src/man/man1m/raidctl.1m b/usr/src/man/man1m/raidctl.1m
deleted file mode 100644
index 88c39038a9..0000000000
--- a/usr/src/man/man1m/raidctl.1m
+++ /dev/null
@@ -1,1074 +0,0 @@
-'\" te
-.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH RAIDCTL 1M "Feb 5, 2009"
-.SH NAME
-raidctl \- RAID hardware utility
-.SH SYNOPSIS
-.LP
-.nf
-\fBraidctl\fR \fB-C\fR \fI"disks"\fR [\fB-r\fR \fIraid_level\fR] [\fB-z\fR \fIcapacity\fR] [\fB-s\fR \fIstripe_size\fR] [\fB-f\fR]
- controller
-.fi
-
-.LP
-.nf
-\fBraidctl\fR \fB-d\fR [\fB-f\fR] \fIvolume\fR
-.fi
-
-.LP
-.nf
-\fBraidctl\fR \fB-F\fR \fIfilename\fR [\fB-f\fR] \fIcontroller\fR\&.\|.\|.
-.fi
-
-.LP
-.nf
-\fBraidctl\fR \fB-a\fR {\fBset\fR | \fBunset\fR} \fB-g\fR \fIdisk\fR {\fBvolume\fR | \fBcontroller\fR}
-.fi
-
-.LP
-.nf
-\fBraidctl\fR \fB-p\fR \fI"param=value"\fR [\fB-f\fR] \fIvolume\fR
-.fi
-
-.LP
-.nf
-\fBraidctl\fR \fB-c\fR [\fB-f\fR] [\fB-r\fR \fIraid_level\fR] \fIdisk1\fR \fIdisk2\fR [\fIdisk3\fR...]
-.fi
-
-.LP
-.nf
-\fBraidctl\fR \fB-l\fR -g \fIdisk controller\fR
-.fi
-
-.LP
-.nf
-\fBraidctl\fR \fB-l\fR \fIvolume\fR
-.fi
-
-.LP
-.nf
-\fBraidctl\fR \fB-l\fR \fIcontroller\fR\&.\|.\|.
-.fi
-
-.LP
-.nf
-\fBraidctl\fR [\fB-l\fR]
-.fi
-
-.LP
-.nf
-\fBraidctl\fR \fB-S\fR [\fBvolume\fR | \fBcontroller\fR]
-.fi
-
-.LP
-.nf
-\fBraidctl\fR \fB-S\fR -g \fIdisk controller\fR
-.fi
-
-.LP
-.nf
-\fBraidctl\fR \fB-h\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBraidctl\fR utility is a hardware RAID configuration tool that supports
-different RAID controllers by providing a CLI (command-line interface) to
-end-users to create, delete or display RAID volume(s). The utility can also
-used to set properties of a volume, assign hot-spare (HSP) disks to volumes or
-controllers, and to update firmware/fcode/BIOS for RAID controllers.
-.sp
-.LP
-The \fBraidctl\fR utility requires privileges that are controlled by the
-underlying file-system permissions. Only privileged users can manipulate the
-RAID system configuration. If a non-privileged user attempts to run
-\fBraidctl\fR, the command fails with an exit status of 1.
-.sp
-.LP
-The \fBraidctl\fR utility, as described in this man page, defines a broad set
-of command line options to provide management for full-featured RAID
-controllers. However, support for a given option depends on two elements:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-the presence of a software driver
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-the firmware level of the RAID device
-.RE
-.sp
-.LP
-The dependency on a software driver is due to the design of \fBraidctl\fR. The
-utility is built on a common library that enables the insertion of plug-in
-modules for different drivers. Currently, the Solaris operating system is
-shipped with a plug-in for the \fBmpt\fR driver. This plug-in does not support
-all of the \fBraidctl\fR options. On a given storage device, options might be
-further limited by the device's firmware level.
-.sp
-.LP
-The level of support for the various \fBraidctl\fR options cannot be determined
-by \fBraidctl\fR. The user must rely on the documentation for his RAID
-controller or hardware platform.
-.sp
-.LP
-Currently, \fBraidctl\fR Currently, \fBraidctl\fR provides some level of
-support for the following RAID controllers:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-LSI1020 SCSI HBA
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-LSI1030 SCSI HBA
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-LSI1064 SAS HBA
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-LSI1068 SAS HBA
-.RE
-.sp
-.LP
-All of the above HBAs are maintained by the \fBmpt\fR driver, on X86-32/64 and
-SPARC platforms.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-C\fR \fI"disks"\fR [\fB-r\fR \fIraid_level\fR] [\fB-z\fR \fIcapacity\fR]
-[\fB-s\fR \fIstripe_size\fR] [\fB-f\fR] controller\fR
-.ad
-.sp .6
-.RS 4n
-Create a RAID volume using specified disks.
-.sp
-When creating a RAID volume using this option, the identity of the newly
-created volume is automatically generated and raidctl reports it to the user.
-.sp
-The argument specified by this option contains the elements used to form the
-volume that will be created. Elements can be either disks or sub-volumes, where
-disks are separated by space(s) and a sub-volume is a set of disks grouped by
-parenthesis. All disks should be in \fBC.ID.L\fR expression (for example,
-\fB0.1.2\fR represents a physical disk of channel 0, target id 1, and logical
-unit number 2). The argument must match the RAID level specified by the
-\fB-r\fR option, even if it's omitted. This means the argument can only be:
-.sp
-.ne 2
-.na
-\fBfor RAID 0\fR
-.ad
-.sp .6
-.RS 4n
-At least 2 disks
-.RE
-
-.sp
-.ne 2
-.na
-\fBfor RAID 1\fR
-.ad
-.sp .6
-.RS 4n
-Only 2 disks
-.RE
-
-.sp
-.ne 2
-.na
-\fBfor RAID 1E\fR
-.ad
-.sp .6
-.RS 4n
-At least 3 disks
-.RE
-
-.sp
-.ne 2
-.na
-\fBfor RAID 5\fR
-.ad
-.sp .6
-.RS 4n
-At least 3 disks
-.RE
-
-.sp
-.ne 2
-.na
-\fBfor RAID 10\fR
-.ad
-.sp .6
-.RS 4n
-At least 2 sub-volumes, each sub-volume must be formed by 2 disks
-.RE
-
-.sp
-.ne 2
-.na
-\fBfor RAID 50\fR
-.ad
-.sp .6
-.RS 4n
-At least 2 sub-volumes, each sub-volume must be formed by at least 3 disks, and
-the disk amount in each sub-volume should be the same
-.RE
-
-For example, the expression "0.0.0 0.1.0" means that the 2 specified disks form
-a RAID volume, which can either be a RAID 0 or a RAID 1 volume. "(0.0.0
-0.1.0)(0.2.0 0.3.0)" means that the first 2 disks and the last 2 disks form 2
-sub-volumes, and that these 2 sub-volumes form a RAID 10 volume. See the
-\fBEXAMPLES\fR section for more samples.
-.sp
-The \fB-r\fR option specifies the RAID level of the volume that will be
-created. Possible levels are 0, 1, 1E, 5, 10, 50. If this option is omitted,
-\fBraidctl\fR creates a RAID 1 volume by default.
-.sp
-The \fB-z\fR option specifies the capacity of the volume that will be created.
-The unit can be tera-bytes, giga-bytes, or mega-bytes (for example, 2t, 10g,
-20m, and so on). If this option is omitted, \fBraidctl\fR calculates the
-maximum capacity of the volume that can be created by the specified disks and
-uses this value to create the volume.
-.sp
-The \fB-s\fR option specifies the stripe size of the volume that will be
-created. The possible values are 512, 1k, 2k, 4k, 8k, 16k, 32k, 64k, or 128k.
-If this option is omitted, \fBraidctl\fR chooses an appropriate value for the
-volume (for example, 64k).
-.sp
-In some cases, the creation of a RAID volume may cause data on specified disks
-to be lost (for instance, on LSI1020, LSI1030, SAS1064, or SAS1068 HBAs), and
-\fBraidctl\fR prompts the user for confirmation about the creation. Use the
-\fB-f\fR option to force the volume creation without prompting the user for
-confirmation.
-.sp
-The controller argument is used to identify which RAID controller the specified
-disks belongs. The \fB-l\fR option can be used to list the controller's ID
-number.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-d\fR [\fB-f\fR] \fIvolume\fR\fR
-.ad
-.sp .6
-.RS 4n
-Delete the RAID volume specified as volume. The volume is specified in
-canonical form (for example, \fBc0t0d0\fR).
-.sp
-When a volume is deleted, all data is lost. Therefore, unless the \fB-f\fR
-option is specified, \fBraidctl\fR prompts the user for confirmation before
-deleting the volume.
-.sp
-When a RAID 1 volume is deleted from a LSI1020, LSI1030, SAS1064, or SAS1068
-HBA, the primary and secondary disks are "split". If the volume was in
-\fBSYNCING\fR state, the primary will contain the data, and the secondary will
-not. If the volume state was \fBOPTIMAL\fR, both disks will contain a complete
-image of the data.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-F\fR \fIfilename\fR [\fB-f\fR] \fIcontroller\fR\&.\|.\|.\fR
-.ad
-.sp .6
-.RS 4n
-Update the firmware running on the specified controller(s). The \fBraidctl\fR
-utility prompts the user for confirmation of this action, unless the \fB-f\fR
-option is provided.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-a\fR {\fBset\fR | \fBunset\fR} \fB-g\fR \fIdisk\fR {\fBvolume\fR |
-\fBcontroller\fR}\fR
-.ad
-.sp .6
-.RS 4n
-If the volume is specified, \fBraidctl\fR sets or unsets the disk as a local
-hot-spare disk dedicated to the volume, depending on the value specified by the
-\fB-a\fR option. If the controller is specified, \fBraidctl\fR sets or unsets
-the disk as a global hot-spare disk.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR \fI"param=value"\fR [\fB-f\fR] \fIvolume\fR\fR
-.ad
-.sp .6
-.RS 4n
-Change the property value for a given RAID volume. This option can be used to
-change cache write policy or to activate a volume. When changing the cache
-write policy, \fIparam\fR should be the string \fBwp\fR (\fBSET_WR_POLICY\fR),
-and \fIvalue\fR can be either \fBon\fR or \fBoff\fR. When used to activate a
-volume, \fIparam\fR should be \fBstate\fR and \fIvalue\fR should be
-\fBactivate\fR.
-.sp
-Changing a RAID volume's property may affect the internal behavior of the RAID
-controller, so \fBraidctl\fR prompts the user for a confirmation before
-applying the change, unless the \fB-f\fR option is specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-c\fR [\fB-f\fR] [\fB-r\fR \fIraid_level\fR] \fIdisk1\fR \fIdisk2\fR
-[\fIdisk3\fR...]\fR
-.ad
-.sp .6
-.RS 4n
-Create a volume using the specified disks. This is an alternative to the
-\fB-C\fR option with similar functionality. This option is preserved for
-compatibility reasons, but only works with LSI1020, LSI1030, SAS1064, and
-SAS1068 HBAs to create RAID 0, RAID 1, or RAID 1E volumes. For other HBAs, the
-user can only use the \fB-C\fR option.
-.sp
-The \fB-r\fR option can be used to specify the RAID level of the target volume.
-If the \fB-r\fR option is omitted, \fBraidctl\fR will create a RAID 1 volume.
-.sp
-Disks must be specified in Solaris canonical format (for example, c0t0d0).
-.sp
-Creating a RAID 1 volume with this option replaces the contents of disk2 with
-the contents of disk1.
-.sp
-When the user creates a RAID volume with this option, the RAID volume assumes
-the identity of disk1. Other disks become invisible and the RAID volume appears
-as one disk.
-.sp
-Creating a volume with this option is by default interactive. The user must
-answer a prompt affirmatively to create the volume. Use the \fB-f\fR option to
-force the volume creation without prompting the user for confirmation.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR -g \fIdisk controller\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display information about the specified disk of the given controller. The
-output includes the following information:
-.sp
-.ne 2
-.na
-\fBDisk\fR
-.ad
-.sp .6
-.RS 4n
-Displays the disk in \fBC.ID.L\fR expression disk.
-.RE
-
-.sp
-.ne 2
-.na
-\fBVendor\fR
-.ad
-.sp .6
-.RS 4n
-Displays the vendor ID string.
-.RE
-
-.sp
-.ne 2
-.na
-\fBProduct\fR
-.ad
-.sp .6
-.RS 4n
-Displays the product ID string.
-.RE
-
-.sp
-.ne 2
-.na
-\fBCapacity\fR
-.ad
-.sp .6
-.RS 4n
-Displays the total capacity of the disk.
-.RE
-
-.sp
-.ne 2
-.na
-\fBStatus\fR
-.ad
-.sp .6
-.RS 4n
-Displays the current status of disk. The status can be either "\fBGOOD\fR"
-(operating normally), "\fBFAILED\fR" (non-functional), or "\fBMISSING\fR" (disk
-not present).
-.RE
-
-.sp
-.ne 2
-.na
-\fBHSP\fR
-.ad
-.sp .6
-.RS 4n
-Indicates if the disk has been set as a global hot-spare disk, local hot-spare
-disk, or a normal one. If it is a local hot-spare disk, all volumes which this
-disk is assigned to are displayed.
-.RE
-
-.sp
-.ne 2
-.na
-\fBGUID\fR
-.ad
-.sp .6
-.RS 4n
-GUID string for the specified disk. This is an additional datum and might be
-unavailable in some cases.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR \fIvolume\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display information about the specified volume. The output includes the
-following information:
-.sp
-.ne 2
-.na
-\fBVolume\fR
-.ad
-.sp .6
-.RS 4n
-Displays volume in canonical format.
-.RE
-
-.sp
-.ne 2
-.na
-\fBSub\fR
-.ad
-.sp .6
-.RS 4n
-Displays sub-volumes, if the specified volume is of RAID 10 or RAID 50 volume.
-.RE
-
-.sp
-.ne 2
-.na
-\fBDisk\fR
-.ad
-.sp .6
-.RS 4n
-Displays all disks that form the specified volume.
-.RE
-
-.sp
-.ne 2
-.na
-\fBStripe Size\fR
-.ad
-.sp .6
-.RS 4n
-Displays the stripe size of the volume.
-.RE
-
-.sp
-.ne 2
-.na
-\fBStatus\fR
-.ad
-.sp .6
-.RS 4n
-Displays the status of the specified volume, or the sub-volumes or disks that
-form the specified volume. For an inactive volume, the status should be
-\fBINACTIVE\fR; otherwise it can be \fBOPTIMAL\fR (operating optimally),
-\fBDEGRADED\fR (operating with reduced functionality), \fBFAILED\fR
-(non-functional), or \fBSYNC\fR (disks are syncing). For a disk, the status
-can be \fBGOOD\fR, \fBFAILED\fR, or \fBMISSING\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBCache\fR
-.ad
-.sp .6
-.RS 4n
-Indicates whether the cache is applied to \fBI/O\fR write activities. The cache
-can be either "\fBON\fR" or "\fBOFF\fR".
-.RE
-
-.sp
-.ne 2
-.na
-\fBRAID level\fR
-.ad
-.sp .6
-.RS 4n
-Displays the RAID level. The RAID level can be either 0, 1, 1E, 5, 10, or 50.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR \fIcontroller ...\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display information about the specified controller(s). The output includes the
-following information:
-.sp
-.ne 2
-.na
-\fBController\fR
-.ad
-.sp .6
-.RS 4n
-Displays the RAID controller's ID number.
-.RE
-
-.sp
-.ne 2
-.na
-\fBType\fR
-.ad
-.sp .6
-.RS 4n
-Displays the RAID controller's product type.
-.RE
-
-.sp
-.ne 2
-.na
-\fBfw_version\fR
-.ad
-.sp .6
-.RS 4n
-Displays the controller's firmware version.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB[\fB-l\fR]\fR
-.ad
-.sp .6
-.RS 4n
-List all RAID related objects that the \fBraidctl\fR utility can manipulate,
-including all available RAID controllers, RAID volumes, and physical disks. The
-\fB-l\fR option can be omitted.
-.sp
-The output includes the following information:
-.sp
-.ne 2
-.na
-\fBController\fR
-.ad
-.sp .6
-.RS 4n
-Displays the RAID controller's ID number.
-.RE
-
-.sp
-.ne 2
-.na
-\fBVolume\fR
-.ad
-.sp .6
-.RS 4n
-Displays the logical RAID volume name.
-.RE
-
-.sp
-.ne 2
-.na
-\fBDisk\fR
-.ad
-.sp .6
-.RS 4n
-Displays the RAID disk in \fBC.ID.L\fR expression.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-S\fR [\fBvolume\fR | \fBcontroller\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Takes a snapshot of the RAID configuration information including all available
-RAID devices, RAID controllers, volumes, and disks.
-.sp
-Each line of the output specifies a RAID device and its related information,
-separated by space(s). All volumes and disks belong to the last specified
-controller.
-.sp
-The output lists the following information:
-.sp
-.ne 2
-.na
-\fBController\fR
-.ad
-.sp .6
-.RS 4n
-Displays the controller ID number, and the controller type string in
-double-quotation marks.
-.RE
-
-.sp
-.ne 2
-.na
-\fBVolume\fR
-.ad
-.sp .6
-.RS 4n
-Displays the RAID volume name, number of component disks, the \fBC.ID.L\fR
-expression of the component disks, the RAID level, and the status. The status
-can be either \fBOPTIMAL\fR, \fBDEGRADED\fR, \fBFAILED\fR, or \fBSYNCING\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBDisk\fR
-.ad
-.sp .6
-.RS 4n
-Displays the \fBC.ID.L\fR expression of the disk, and the status. The status
-can be either \fBGOOD\fR, \fBFAILED\fR, or \fBHSP\fR (disk has been set as a
-stand-by disk).
-.RE
-
-If a volume or a controller is specified, a snapshot is only taken of the
-information for the specified volume or controller.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-S\fR -g \fIdisk controller\fR\fR
-.ad
-.sp .6
-.RS 4n
-Takes a snapshot of the information for the specified disk.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-h\fR\fR
-.ad
-.sp .6
-.RS 4n
-Print out the usage string.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRCreating the RAID Configuration
-.sp
-.LP
-The following command creates a RAID 0 volume of 10G on controller 0, and the
-stripe size will be set to 64k:
-
-.sp
-.in +2
-.nf
-# \fBraidctl -C "0.0.0 0.2.0" -r 0 -z 10g -s 64k 0\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The following command creates a RAID 1 volume on controller 2:
-
-.sp
-.in +2
-.nf
-# \fBraidctl -C "0.0.0 1.1.0" -r 1 2\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The following command creates a RAID 5 volume on controller 2:
-
-.sp
-.in +2
-.nf
-# \fBraidctl -C "0.0.0 0.1.0 0.2.0" -r 5 2\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The following command creates a RAID 10 volume on controller 0:
-
-.sp
-.in +2
-.nf
-# \fBraidctl -C "(0.0.0 0.1.0)(0.2.0 0.3.0)" -r 10 0\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The following command creates a RAID 50 volume on controller 0:
-
-.sp
-.in +2
-.nf
-# \fBraidctl -C "(0.0.0 0.1.0 0.2.0)(0.3.0 0.4.0 0.5.0)" -r 50 0\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRDisplaying the RAID Configuration
-.sp
-.LP
-The following command displays all available controllers, volumes, and disks:
-
-.sp
-.in +2
-.nf
-# \fBraidctl -l\fR
-
-Controller: 0
-Controller: 2
- Volume:c2t0d0
- Disk: 0.0.0
- Disk: 0.1.0
- Disk: 0.2.0
- Disk: 0.3.0(HSP)
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The following command displays information about controller 2:
-
-.sp
-.in +2
-.nf
-# \fBraidctl -l 2\fR
-
-Controller Type Fw_version
---------------------------------------------------------------
-c2 LSI 1030 1.03.39.00
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The following command displays information about the specified volume:
-.sp
-.in +2
-.nf
-# \fBraidctl -l c2t0d0\fR
-
-Volume Size Stripe Status Cache RAID
- Sub Size Level
- Disk
---------------------------------------------------------------
-c2t0d0 10240M 64K OPTIMAL ON RAID5
- 0.0.0 5120M GOOD
- 0.1.0 5120M GOOD
- 0.2.0 5120M GOOD
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The following command displays information about disk 0.0.0 on controller 0:
-.sp
-.in +2
-.nf
-# \fBraidctl -l -g 0.0.0 0\fR
-
-Disk Vendor Product Firmware Capacity Status HSP
---------------------------------------------------------------------
-0.0.0 HITACHI H101473SCSUN72G SQ02 68.3G GOOD N/A
-GUID:2000000cca02536c
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRDeleting the RAID Configuration
-.sp
-.LP
-The following command deletes a volume:
-
-.sp
-.in +2
-.nf
-# \fBraidctl -d c0t0d0\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 4 \fRUpdating Flash Images on the Controller
-.sp
-.LP
-The following command updates flash images on the controller 0:
-
-.sp
-.in +2
-.nf
-# \fBraidctl -F lsi_image.fw 0\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 5 \fRSetting or Unsetting a Hot-Spare Disk
-.sp
-.LP
-The following command sets disk 0.3.0 on controller 2 as a global hot-spare
-disk:
-
-.sp
-.in +2
-.nf
-# \fBraidctl -a set -g 0.3.0 2\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The following command sets disk 0.3.0 on controller 2 as a local hot-spare disk
-to volume c2t0d0:
-
-.sp
-.in +2
-.nf
-# \fBraidctl -a set -g 0.3.0 c2t0d0\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The following command converts disk 0.3.0 on controller 2 from a global
-hot-spare disk to a normal one:
-
-.sp
-.in +2
-.nf
-# \fBraidctl -a unset -g 0.3.0 2\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The following command removes disk 0.3.0 from being a local hot-spare disk from
-volume c2t0d0:
-
-.sp
-.in +2
-.nf
-# \fBraidctl -a unset -g 0.3.0 c2t0d0\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 6 \fRSetting the Volume's Property
-.sp
-.LP
-The following command sets the write policy of the volume to "\fBoff\fR":
-
-.sp
-.in +2
-.nf
-# \fBraidctl -a set -p "wp=off" c0t0d0\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 7 \fRCreating Volumes with the \fB-c\fR Option
-.sp
-.LP
-The following command creates a RAID 1 volume:
-
-.sp
-.in +2
-.nf
-# \fBraidctl -c c0t0d0 c0t1d0\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The following command creates a RAID 0 volume:
-
-.sp
-.in +2
-.nf
-# \fBraidctl -c -r 0 c0t1d0 c0t2d0 c0t3d0\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 8 \fRTaking a Snapshot of the RAID Configuration
-.sp
-.LP
-The following command takes a snapshot of all RAID devices:
-
-.sp
-.in +2
-.nf
-# \fB# raidctl -S\fR
-
-1 "LSI 1030"
-c1t1d0 2 0.2.0 0.3.0 1 DEGRADED
-0.2.0 GOOD
-0.3.0 FAILED
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The following command takes a snapshot about volume c1t0d0:
-
-.sp
-.in +2
-.nf
-# \fBraidctl -S c1t0d0\fR
-
-c1t0d0 2 0.0.0 0.1.0 1 OPTIMAL
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The following command takes a snapshot about disk 0.1.0 on controller 1:
-
-.sp
-.in +2
-.nf
-# \fBraidctl -S -g 0.1.0 1\fR
-
-0.1.0 GOOD
-.fi
-.in -2
-.sp
-
-.SH EXIT STATUS
-.sp
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.sp .6
-.RS 4n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB1\fR\fR
-.ad
-.sp .6
-.RS 4n
-Invalid command line input or permission denied.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB2\fR\fR
-.ad
-.sp .6
-.RS 4n
-Request operation failed.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Committed
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBattributes\fR(5), \fBmpt\fR(7D)
-.sp
-.LP
-System Administration Guide: Basic Administration
-.SH WARNINGS
-.sp
-.LP
-Do not create raid volumes on internal \fBSAS\fR disks if you are going to use
-the Solaris Multipathing I/O feature (also known as MPxIO). Creating a new raid
-volume under Solaris Multipathing will give your root device a new \fBGUID\fR
-which does not match the \fBGUID\fR for the existing devices. This will cause a
-boot failure since your root device entry in \fB/etc/vfstab\fR will not match.
-.SH NOTES
-.sp
-.LP
-The \fB-z\fR option is not supported on systems that use the \fBmpt\fR driver
-and LSI RAID controllers.
diff --git a/usr/src/man/man1m/ramdiskadm.1m b/usr/src/man/man1m/ramdiskadm.1m
deleted file mode 100644
index 0079dbf6e3..0000000000
--- a/usr/src/man/man1m/ramdiskadm.1m
+++ /dev/null
@@ -1,163 +0,0 @@
-'\" te
-.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH RAMDISKADM 1M "Mar 25, 2003"
-.SH NAME
-ramdiskadm \- administer ramdisk pseudo device
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/ramdiskadm\fR \fB-a\fR \fIname\fR \fIsize\fR [g | m | k | b]
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/ramdiskadm\fR \fB-d\fR \fIname\fR
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/ramdiskadm\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBramdiskadm\fR command administers \fBramdisk\fR(7D), the ramdisk driver.
-Use \fBramdiskadm\fR to create a new named ramdisk device, delete an existing
-named ramdisk, or list information about existing ramdisks.
-.sp
-.LP
-Ramdisks created using \fBramdiskadm\fR are not persistent across reboots.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-a\fR \fIname\fR \fIsize\fR\fR
-.ad
-.RS 16n
-Create a ramdisk named \fIname\fR of size \fIsize\fR and its corresponding
-block and character device nodes.
-.sp
-\fIname\fR must be composed only of the characters a-z, A-Z, 0-9, _ (underbar),
-and - (hyphen), but it must not begin with a hyphen. It must be no more than 32
-characters long. Ramdisk names must be unique.
-.sp
-The size can be a decimal number, or, when prefixed with \fB0x\fR, a
-hexadecimal number, and can specify the size in bytes (no suffix), 512-byte
-blocks (suffix \fBb\fR), kilobytes (suffix \fBk\fR), megabytes (suffix \fBm\fR)
-or gigabytes (suffix \fBg\fR). The size of the ramdisk actually created might
-be larger than that specified, depending on the hardware implementation.
-.sp
-If the named ramdisk is successfully created, its block device path is printed
-on standard out.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-d\fR \fIname\fR\fR
-.ad
-.RS 16n
-Delete an existing ramdisk of the name \fIname\fR. This command succeeds only
-when the named ramdisk is not open. The associated memory is freed and the
-device nodes are removed.
-.sp
-You can delete only ramdisks created using \fBramdiskadm\fR. It is not possible
-to delete a ramdisk that was created during the boot process.
-.RE
-
-.sp
-.LP
-Without options, \fBramdiskadm\fR lists any existing ramdisks, their sizes (in
-decimal), and whether they can be removed by \fBramdiskadm\fR (see the
-description of the \fB-d\fR option, above).
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRCreating a 2MB Ramdisk Named \fBmydisk\fR
-.sp
-.in +2
-.nf
-# ramdiskadm -a mydisk 2m
-/dev/ramdisk/mydisk
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRListing All Ramdisks
-.sp
-.in +2
-.nf
-# ramdiskadm
-Block Device Size Removable
-/dev/ramdisk/miniroot 134217728 No
-/dev/ramdisk/certfs 1048576 No
-/dev/ramdisk/mydisk 2097152 Yes
-.fi
-.in -2
-.sp
-
-.SH EXIT STATUS
-.sp
-.LP
-\fBramdiskadm\fR returns the following exit values:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 6n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB>0\fR\fR
-.ad
-.RS 6n
-An error occurred.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBattributes\fR(5), \fBramdisk\fR(7D)
-.SH NOTES
-.sp
-.LP
-The abilities of \fBramdiskadm\fR and the privilege level of the person who
-uses the utility are controlled by the permissions of \fB/dev/ramdiskctl\fR.
-Read access allows query operations, for example, listing device information.
-Write access is required to do any state-changing operations, for example,
-creating or deleting ramdisks.
-.sp
-.LP
-As shipped, \fB/dev/ramdiskctl\fR is owned by \fBroot\fR, in group \fBsys\fR,
-and mode 0644, so all users can do query operations but only root can perform
-state-changing operations. An administrator can give write access to
-non-privileged users, allowing them to add or delete ramdisks. However,
-granting such ability entails considerable risk; such privileges should be
-given only to a trusted group.
diff --git a/usr/src/man/man1m/rcapadm.1m b/usr/src/man/man1m/rcapadm.1m
deleted file mode 100644
index 99bc27e919..0000000000
--- a/usr/src/man/man1m/rcapadm.1m
+++ /dev/null
@@ -1,261 +0,0 @@
-'\" te
-.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH RCAPADM 1M "Mar 5, 2017"
-.SH NAME
-rcapadm \- configure resource capping daemon
-.SH SYNOPSIS
-.LP
-.nf
-\fBrcapadm\fR
-.fi
-
-.LP
-.nf
-\fBrcapadm\fR [ [\fB-n\fR] \fB-E\fR | \fB-D\fR]
- [\fB-i\fR \fIinterval=value\fR,...,\fIinterval=value\fR] [\fB-c\fR \fIpercent\fR]
- [\fB-z\fR \fIzonename\fR \fB-m\fR \fImaxvalue\fR]
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBrcapadm\fR command allows a user with the privileges described below to
-configure various attributes of the resource capping daemon. If used without
-arguments, \fBrcapadm\fR displays the current status of the resource capping
-daemon if it has been configured. See \fBrcapd\fR(1M) for more information.
-.sp
-.LP
-In the current release of the Solaris operating environment, \fBrcapadm\fR is
-available to users with all privileges and to users who have the Process
-Management profile in their list of profiles. The System Administrator role
-includes the Process Management profile.
-.SH OPTIONS
-.ne 2
-.na
-\fB\fB-c\fR \fIpercent\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set the minimum physical memory utilization for memory cap enforcement. Caps
-will not be enforced until the physical memory available to processes is low.
-The \fIpercent\fR value should be in the range 0 to 100. The minimum (and
-default) value is \fB0\fR, which means that memory caps are always enforced.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-D\fR\fR
-.ad
-.sp .6
-.RS 4n
-Disable the resource capping daemon so that it will not be started when the
-system is booted. Also stop the resource capping daemon now, if the \fB-n\fR
-option is not specified and it is currently running.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-E\fR\fR
-.ad
-.sp .6
-.RS 4n
-Enable the resource capping daemon so that it will be started each time the
-system is booted. Also start the resource capping daemon now, if the \fB-n\fR
-option is not specified and it is not currently running.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-i\fR \fIinterval=value\fR,...,\fIinterval=value\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set intervals for various periodic operations performed by \fBrcapd\fR. All
-intervals are specified in seconds. You can set the following intervals:
-.sp
-.ne 2
-.na
-\fB\fBscan\fR\fR
-.ad
-.RS 10n
-The interval at which \fBrcapd\fR scans for new processes. The default scan
-interval is every 15 seconds. The minimum value is 1 second.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsample\fR\fR
-.ad
-.RS 10n
-The interval of process resident set size sampling. The default sample interval
-is every 5 seconds. The minimum value is 1 second.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBreport\fR\fR
-.ad
-.RS 10n
-The interval at which various paging statistics are updated by \fBrcapd\fR, in
-seconds. These statistics can be viewed by using \fBrcapstat\fR(1). The
-default reporting interval is every 5 seconds. When the interval is set to
-\fB0\fR, statistics will not be updated.
-.LP
-Note -
-.sp
-.RS 2
-Paging refers to the act of relocating portions of memory, called pages, to or
-from physical memory. \fBrcapd\fR pages out the most infrequently used pages.
-.RE
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBconfig\fR\fR
-.ad
-.RS 10n
-The reconfiguration interval, in seconds. At each reconfiguration event,
-\fBrcapd\fR checks its configuration file for updates, and scans the project
-databases for new project caps. The default reconfiguration interval is every
-60 seconds. The minimum interval is \fB0\fR. When the interval is set to
-\fB0\fR, no periodic reconfiguration occurs, although the running daemon can
-still be reconfigured by sending it \fBSIGHUP\fR.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-m\fR \fImaxvalue\fR\fR
-.ad
-.sp .6
-.RS 4n
-Used in conjunction with the \fB-z\fR option. Specifies a value for
-\fBrcap.max-rss\fR, a dynamically-set cap on the usage of physical memory for
-the zone specified by \fB-z\fR. You can apply a scale (\fBK\fR, \fBM\fR,
-\fBG\fR, \fBT\fR) to the value you specify. \fBK\fR means kilobyte; \fBM\fR,
-megabyte; \fBG\fR, gigabyte; and \fBT\fR, terabyte. For example, \fB100M\fR is
-100 megabytes.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR\fR
-.ad
-.sp .6
-.RS 4n
-Do not affect the running state of the resource capping daemon when enabling or
-disabling it.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-z\fR \fIzonename\fR\fR
-.ad
-.sp .6
-.RS 4n
-Used in conjunction with the \fB-m\fR option. Specifies the zone for which you
-are dynamically specifying a cap on physical memory usage (using \fB-m\fR).
-.RE
-
-.LP
-Note -
-.sp
-.RS 2
-To set a persistent cap on memory usage within a zone, use \fBzonecfg\fR(1M).
-.RE
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRConfiguring the Resource Capping Daemon with Immediate
-Enforcement
-.sp
-.LP
-#
-.BI "rcapadm -E -i scan=" 15 ,sample= 5 ,report= 5 ,config= 60 " -c 0"
-
-.LP
-\fBExample 2 \fRSpecifying a Resource Cap for a Zone
-.sp
-.LP
-The command shown below specifies the maximum amount of memory that can be
-consumed by a specified zone. Note that this value lasts only until the next
-reboot. To set a persistent cap, use \fBzonecfg\fR(1M).
-
-.sp
-.in +2
-.nf
-# \fBrcapadm -z testzone -m 512M\fR
-.fi
-.in -2
-.sp
-
-.SH EXIT STATUS
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 5n
-Successful completion. The modifications to the current configuration were
-valid and made successfully.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB1\fR\fR
-.ad
-.RS 5n
-An error occurred. A fatal error occurred either in obtaining or modifying the
-resource capping configuration.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB2\fR\fR
-.ad
-.RS 5n
-Invalid command-line options were specified.
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-.TE
-
-.sp
-.LP
-The \fB-z\fR and \fB-m\fR options are committed interfaces.
-.SH SEE ALSO
-.LP
-\fBrcapstat\fR(1), \fBrcapd\fR(1M), \fBzonecfg\fR(1M), \fBproject\fR(4),
-\fBattributes\fR(5), \fBzones\fR(5)
-.sp
-.LP
-"Physical Memory Control Using the Resource Capping Daemon" in \fISystem
-Administration Guide: Solaris Containers-Resource Management, and Solaris
-Zones\fR
diff --git a/usr/src/man/man1m/rcapd.1m b/usr/src/man/man1m/rcapd.1m
deleted file mode 100644
index dd255abd79..0000000000
--- a/usr/src/man/man1m/rcapd.1m
+++ /dev/null
@@ -1,181 +0,0 @@
-'\" te
-.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH RCAPD 1M "Dec 19, 2006"
-.SH NAME
-rcapd \- resource cap enforcement daemon
-.SH SYNOPSIS
-.LP
-.nf
-\fBrcapd\fR [\fB-d\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBrcapd\fR daemon enforces resource caps on collections of processes.
-Per-project and per-zone physical memory caps are supported. For information
-about projects, see \fBproject\fR(4). For zones information, see \fBzones\fR(5)
-.sp
-.LP
-When the resident set size (RSS) of a collection of processes exceeds its cap,
-\fBrcapd\fR takes action and reduces the RSS of the collection.
-.sp
-.LP
-The virtual memory system divides physical memory into segments known as pages.
-To read data from a file into memory, the virtual memory system reads in
-individual pages. To reduce resource consumption, the daemon can page out, or
-relocate, infrequently used pages to an area outside of physical memory.
-.sp
-.LP
-In the \fBproject\fR file, caps are defined for projects that have positive
-values for the following project attribute:
-.sp
-.ne 2
-.na
-\fB\fBrcap.max-rss\fR\fR
-.ad
-.RS 16n
-The total amount of physical memory, in bytes, that is available to the
-project's member processes
-.RE
-
-.sp
-.LP
-See \fBproject\fR(4) for a description of project attributes.
-.sp
-.LP
-For a system with one or more zones, you can dynamically set the
-\fBrcap.max-rss\fR value for a zone with \fBrcapadm\fR(1M). To set a persistent
-cap on memory usage within a zone, you use \fBzonecfg\fR(1M).
-.sp
-.LP
-You configure \fBrcapd\fR through the use of \fBrcapadm\fR(1M). The daemon can
-be monitored with \fBrcapstat\fR(1). Configuration changes are incorporated
-into \fBrcapd\fR by sending it \fBSIGHUP\fR (see \fBkill\fR(1)), or according
-to the configuration interval (see \fBrcapadm\fR(1M)).
-.SH OPTIONS
-.sp
-.LP
-The following option is supported:
-.sp
-.ne 2
-.na
-\fB\fB-d\fR\fR
-.ad
-.RS 6n
-Enable debug mode. Messages are displayed on the invoking user's terminal.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRSetting Resident Set Size Cap Attribute
-.sp
-.LP
-The following line in the \fB/etc/project\fR database sets an RSS cap of
-1073741824 bytes for a project named \fBfoo\fR.
-
-.sp
-.in +2
-.nf
-foo:100::foo,root::rcap.max-rss=10737418240
-.fi
-.in -2
-
-.SH EXIT STATUS
-.sp
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB0\fR
-.ad
-.RS 5n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB1\fR
-.ad
-.RS 5n
-An error occurred.
-.RE
-
-.sp
-.ne 2
-.na
-\fB2\fR
-.ad
-.RS 5n
-Invalid command-line options were specified.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/project\fR\fR
-.ad
-.RS 16n
-Project database.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBrcapstat\fR(1), \fBsvcs\fR(1), \fBrcapadm\fR(1M), \fBzonecfg\fR(1M),
-\fBsvcadm\fR(1M), \fBproject\fR(4), \fBattributes\fR(5), \fBsmf\fR(5),
-\fBzones\fR(5)
-.sp
-.LP
-"Physical Memory Control Using the Resource Capping Daemon" in \fISystem
-Administration Guide: Solaris Containers-Resource Management, and Solaris
-Zones\fR
-.SH NOTES
-.sp
-.LP
-If killed with \fBSIGKILL\fR, \fBrcapd\fR can leave processes in a stopped
-state. Use \fBSIGTERM\fR to cause \fBrcapd\fR to terminate properly.
-.sp
-.LP
-A collection's RSS can exceed its cap for some time before the cap is enforced,
-even if sufficient pageable memory is available. This period of time can be
-reduced by shortening the RSS sampling interval with \fBrcapadm\fR.
-.sp
-.LP
-The \fBrcapd\fR service is managed by the service management facility,
-\fBsmf\fR(5), under the service identifier:
-.sp
-.in +2
-.nf
-svc:/system/rcap:default
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Administrative actions on this service, such as enabling, disabling, or
-requesting restart, can be performed using \fBsvcadm\fR(1M). The service's
-status can be queried using the \fBsvcs\fR(1) command.
diff --git a/usr/src/man/man1m/rctladm.1m b/usr/src/man/man1m/rctladm.1m
deleted file mode 100644
index c1b615c5be..0000000000
--- a/usr/src/man/man1m/rctladm.1m
+++ /dev/null
@@ -1,188 +0,0 @@
-'\" te
-.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH RCTLADM 1M "Jul 2, 2007"
-.SH NAME
-rctladm \- display or modify global state of system resource controls
-.SH SYNOPSIS
-.LP
-.nf
-\fBrctladm\fR [\fB-lu\fR] [\fB-e\fR \fIaction\fR] [\fB-d\fR \fIaction\fR] [\fIname\fR...]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBrctladm\fR command allows the examination and modification of active
-resource controls on the running system. An instance of a resource control is
-referred to as an \fBrctl\fR. See \fBsetrctl\fR(2) for a description of an
-\fBrctl\fR; see \fBresource_controls\fR(5) for a list of the \fBrctl\fRs
-supported in the current release of the Solaris operating system. Logging of
-\fBrctl\fR violations can be activated or deactivated system-wide and active
-\fBrctl\fRs (and their state) can be listed.
-.sp
-.LP
-An \fBrctladm\fR command without options is the equivalent of an \fBrctladm\fR
-with the \fB-l\fR option. See the description of \fB-l\fR below.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-d\fR \fIaction\fR\fR
-.ad
-.br
-.na
-\fB\fB-e\fR \fIaction\fR\fR
-.ad
-.sp .6
-.RS 4n
-Disable (\fB-d\fR) or enable (\fB-e\fR) the global action on the specified
-\fBrctl\fRs. If no \fBrctl\fR is specified, no action is taken and an error
-status is returned. You can use the special token \fBall\fR with the disable
-option to deactivate all global actions on a resource control.
-.sp
-You can set the \fBsyslog\fR action to a specific degree by assigning a
-severity level. To do this, specify \fBsyslog=\fIlevel\fR\fR, where \fIlevel\fR
-is one of the string tokens given as valid severity levels in \fBsyslog\fR(3C).
-You can omit the common \fBLOG_\fR prefix on the severity level. Note that not
-all \fBrctl\fRs support the \fBsyslog\fR action. See
-\fBresource_controls\fR(5).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR\fR
-.ad
-.sp .6
-.RS 4n
-List information about \fBrctl\fRs. The name, global event actions and
-statuses, and global flags are displayed. If one or more name operands are
-specified, only those \fBrctl\fRs matching the names are displayed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-u\fR\fR
-.ad
-.sp .6
-.RS 4n
-Configure resource controls based on the contents of \fB/etc/rctladm.conf\fR.
-Any name operands are ignored.
-.RE
-
-.SH OPERANDS
-.sp
-.LP
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fB\fIname\fR\fR
-.ad
-.sp .6
-.RS 4n
-The name of the \fBrctl\fR to operate on. Multiple \fBrctl\fR names can be
-specified. If no names are specified, and the list action has been specified,
-then all \fBrctl\fRs are listed. If the enable or disable action is specified,
-one or more \fBrctl\fR names must be specified.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRActivating System Logging for Specific Violations
-.sp
-.LP
-The following command activates system logging of all violations of
-\fBtask.max-lwps\fR.
-
-.sp
-.in +2
-.nf
-# rctladm -e syslog task.max-lwps
-#
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRExamining the Current Status of a Specific Resource
-.sp
-.LP
-The following command examines the current status of the \fBtask.max-lwps\fR
-resource.
-
-.sp
-.in +2
-.nf
-$ rctladm -l task.max-lwps
-task.max-lwps syslog=DEBUG
-$
-.fi
-.in -2
-.sp
-
-.SH EXIT STATUS
-.sp
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.sp .6
-.RS 4n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB1\fR\fR
-.ad
-.sp .6
-.RS 4n
-A fatal error occurred. A message is written to standard error to indicate each
-resource control for which the operation failed. The operation was successful
-for any other resource controls specified as operands.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB2\fR\fR
-.ad
-.sp .6
-.RS 4n
-Invalid command line options were specified.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/rctladm.conf\fR\fR
-.ad
-.sp .6
-.RS 4n
-Each time \fBrctladm\fR is executed, it updates the contents of
-\fBrctladm.conf\fR with the current configuration.
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBsetrctl\fR(2), \fBgetrctl\fR(2), \fBprctl\fR(1),
-\fBrctlblk_get_global_flags\fR(3C), \fBrctlblk_get_global_action\fR(3C),
-\fBattributes\fR(5), \fBresource_controls\fR(5)
-.SH NOTES
-.sp
-.LP
-By default, there is no global logging of \fBrctl\fR violations.
diff --git a/usr/src/man/man1m/rdate.1m b/usr/src/man/man1m/rdate.1m
deleted file mode 100644
index 510b5ba1d6..0000000000
--- a/usr/src/man/man1m/rdate.1m
+++ /dev/null
@@ -1,42 +0,0 @@
-'\" te
-.\" Copyright (c) 2001 Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH RDATE 1M "Mar 16, 2006"
-.SH NAME
-rdate \- set system date from a remote host
-.SH SYNOPSIS
-.LP
-.nf
-\fBrdate\fR \fIhostname\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBrdate\fR sets the local date and time from the \fIhostname\fR given as an
-argument. You must have the authorization \fBsolaris.system.date\fR on the
-local system. Typically, \fBrdate\fR is used in a startup script.
-.sp
-.LP
-\fBrdate\fR requests are responded to by the "time" service on the specified
-host. To enable the "time" service, use the following commands:
-.sp
-.in +2
-.nf
-svcadm enable time:stream
-svcadm enable time:dgram
-.fi
-.in -2
-.sp
-
-.SH USAGE
-.sp
-.LP
-The \fBrdate\fR command is IPv6-enabled. See \fBip6\fR(7P).
-.SH SEE ALSO
-.sp
-.LP
-\fBinetd\fR(1M), \fBinetd.conf\fR(4), \fBattributes\fR(5), \fBip6\fR(7P)
diff --git a/usr/src/man/man1m/rdmsr.1m b/usr/src/man/man1m/rdmsr.1m
deleted file mode 100644
index c483d803d2..0000000000
--- a/usr/src/man/man1m/rdmsr.1m
+++ /dev/null
@@ -1,43 +0,0 @@
-.\"
-.\" This file and its contents are supplied under the terms of the
-.\" Common Development and Distribution License ("CDDL"), version 1.0.
-.\" You may only use this file in accordance with the terms of version
-.\" 1.0 of the CDDL.
-.\"
-.\" A full copy of the text of the CDDL should have accompanied this
-.\" source. A copy of the CDDL is also available via the Internet at
-.\" http://www.illumos.org/license/CDDL.
-.\"
-.\" Copyright 2019 Joyent, Inc.
-.\"
-.Dd October 14, 2019
-.Dt RDMSR 1M
-.Os
-.Sh NAME
-.Nm rdmsr
-.Nd Read Model-Specific Register
-.Sh SYNOPSIS
-.Nm
-.Ar [0x<msrnr>]...
-.Sh DESCRIPTION
-The
-.Nm
-command can be used to read a value out of one or more x86 MSRs, as defined by
-the Intel and AMD CPU specifications.
-The integer MSR number should be given (typically in 0x-prefixed hexadecimal).
-It is the command-line equivalent of the
-.Fn rdmsr
-instruction).
-.Pp
-The read is done on the current CPU, which may change arbitrarily
-between MSR reads: to read from a particular CPU,
-.Xr pbind 1M
-can be used to execute this utility.
-.Sh EXIT STATUS
-The
-.Nm
-utility exits 0 on success, or 1 if an error occurs, or at least one MSR
-could not be read.
-.Sh SEE ALSO
-Intel 64 and IA-32 Architectures Software Developer's Manual Volume 4:
-Model-Specific Registers
diff --git a/usr/src/man/man1m/reboot.1m b/usr/src/man/man1m/reboot.1m
deleted file mode 100644
index 22ba85098e..0000000000
--- a/usr/src/man/man1m/reboot.1m
+++ /dev/null
@@ -1,359 +0,0 @@
-'\" te
-.\" Copyright (c) 2009 Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright (c) 1983 Regents of the University of California. All rights reserved. The Berkeley software License Agreement specifies the terms and conditions for redistribution.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
-.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH REBOOT 1M "August 29, 2021"
-.SH NAME
-reboot \- restart the operating system
-.SH SYNOPSIS
-.nf
-\fB/usr/sbin/reboot\fR [\fB-dlnq\fR] [\fIboot_arguments\fR]
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/reboot\fR [\fB-f\fR [\fB-e\fR \fIenvironment\fR] | \fB-p\fR] [\fB-dlnq\fR] [\fIboot_arguments\fR]
-.fi
-
-.SH DESCRIPTION
-The \fBreboot\fR utility restarts the kernel. The kernel is loaded into memory
-by the PROM monitor, which transfers control to the loaded kernel.
-.sp
-.LP
-On x86 systems, when the \fB-f\fR flag is specified, the running kernel will
-load the next kernel into memory, then transfer control to the newly loaded
-kernel. This form of \fBreboot\fR is shown in the second synopsis, above.
-.sp
-.LP
-Although \fBreboot\fR can be run by the super-user at any time,
-\fBshutdown\fR(1M) is normally used first to warn all users logged in of the
-impending loss of service. See \fBshutdown\fR(1M) for details.
-.sp
-.LP
-The \fBreboot\fR utility performs a \fBsync\fR(1M) operation on the disks, and
-then a multi-user reboot is initiated. See \fBinit\fR(1M) for details. On x86
-systems, reboot may also update the boot archive as needed to ensure a
-successful reboot.
-.sp
-.LP
-The \fBreboot\fR utility normally logs the reboot to the system log daemon,
-\fBsyslogd\fR(1M), and places a shutdown record in the login accounting file
-\fB/var/adm/wtmpx\fR. These actions are inhibited if the \fB-n\fR or \fB-q\fR
-options are present.
-.sp
-.LP
-Normally, the system reboots itself at power-up or after crashes.
-.SH OPTIONS
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-d\fR\fR
-.ad
-.sp .6
-.RS 4n
-Force a system crash dump before rebooting. See \fBdumpadm\fR(1M) for
-information on configuring system crash dumps.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-e\fR\fR
-.ad
-.sp .6
-.RS 4n
-If \fB-f\fR is present, reboot to the specified boot environment.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR\fR
-.ad
-.sp .6
-.RS 4n
-Fast reboot, bypassing firmware and boot loader. The new kernel will be loaded
-into memory by the running kernel, and control will be transferred to the newly
-loaded kernel. If disk or kernel arguments are specified, they must be
-specified before other boot arguments.
-.sp
-This option is currently available only on x86 systems.
-.sp
-Service \fBsvc:/system/boot-config:default\fR is enabled by default. It
-requires \fBsolaris.system.shutdown\fR as \fBaction_authorization\fR and
-\fBvalue_authorization\fR. When the \fBconfig/fastreboot_default\fR property is
-set to \fBtrue\fR, \fBreboot\fR will behave as \fBreboot\fR \fB-f\fR. The value
-of this property can be changed using \fBsvccfg\fR(1M) and \fBsvcadm\fR(1M), to
-control the default reboot behavior.
-.sp
-See \fBEXAMPLES\fR for details.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR\fR
-.ad
-.sp .6
-.RS 4n
-Suppress sending a message to the system log daemon, \fBsyslogd\fR(1M) about
-who executed \fBreboot\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR\fR
-.ad
-.sp .6
-.RS 4n
-Avoid calling \fBsync\fR(2) and do not log the reboot to \fBsyslogd\fR(1M) or
-to \fB/var/adm/wtmpx\fR. The kernel still attempts to sync filesystems prior to
-reboot, except if the \fB-d\fR option is also present. If \fB-d\fR is used with
-\fB-n\fR, the kernel does not attempt to sync file systems.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR\fR
-.ad
-.sp .6
-.RS 4n
-Reboot to prom. This flag can be used to reboot the system through firmware
-without changing the default reboot behavior as denoted by the
-\fBconfig/fastreboot_default\fR property setting in \fBsystem/boot-config\fR
-service.
-.sp
-This option is currently available only on x86 systems. The \fB-p\fR and
-\fB-f\fR options are mutually exclusive.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-q\fR\fR
-.ad
-.sp .6
-.RS 4n
-Quick. Reboot quickly without halting running zones first.
-.RE
-
-.SH OPERANDS
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fB\fIboot_arguments\fR\fR
-.ad
-.sp .6
-.RS 4n
-An optional \fIboot_arguments\fR specifies arguments to the \fBuadmin\fR(2)
-function that are passed to the boot program and kernel upon restart. The form
-and list of arguments is described in the \fBboot\fR(1M) and \fBkernel\fR(1M)
-man pages. If the arguments are specified, whitespace between them is replaced
-by single spaces unless the whitespace is quoted for the shell. If the
-\fIboot_arguments\fR begin with a hyphen, they must be preceded by the \fB--\fR
-delimiter (two hyphens) to denote the end of the \fBreboot\fR argument list.
-.RE
-
-.SH EXAMPLES
-\fBExample 1 \fRPassing the \fB-r\fR and \fB-v\fR Arguments to \fBboot\fR
-.sp
-.LP
-In the following example, the delimiter \fB--\fR (two hyphens) must be used to
-separate the options of \fBreboot\fR from the arguments of \fBboot\fR(1M).
-
-.sp
-.in +2
-.nf
-example# \fBreboot -dl -- -rv\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRRebooting Using a Specific Disk and Kernel
-.sp
-.LP
-The following example reboots using a specific disk and kernel.
-
-.sp
-.in +2
-.nf
-example# \fBreboot disk1 kernel.test/unix\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRFast Rebooting
-.sp
-.LP
-The following examples use the \fB-f\fR option to perform fast reboots.
-
-.sp
-.LP
-If service \fBsvc:/system/boot-config:default\fR is enabled and property
-\fBconfig/fastreboot_default\fR is set to \fBtrue\fR, the \fB-f\fR option can
-be omitted.
-
-.sp
-.LP
-The following command reboots to the default entry in the boot
-menu file \fBmenu.lst\fR.
-
-.sp
-.in +2
-.nf
-example# \fBreboot -f\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The following command reboots to another UFS root disk.
-
-.sp
-.in +2
-.nf
-example# \fBreboot -f -- '/dev/dsk/c1d0s0'\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The following command reboots to another ZFS root pool.
-
-.sp
-.in +2
-.nf
-example# \fBreboot -f -- 'rpool/ROOT/root2'\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The following command reboots to \fBmykernel\fR on the same disk with \fB-k\fR
-option.
-
-.sp
-.in +2
-.nf
-example# \fBreboot -f -- '/platform/i86pc/mykernel/amd64/unix -k'\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The following command reboots to \fBmykernel\fR off another root disk mounted
-on \fB/mnt\fR.
-
-.sp
-.in +2
-.nf
-example# \fBreboot -f -- '/mnt/platform/i86pc/mykernel/amd64/unix -k'\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The following command reboots to \fB/platform/i86pc/kernel/$ISADIR/unix\fR on
-another boot environment named \fBsecond_root\fR.
-
-.sp
-.in +2
-.nf
-example# \fBreboot -f -e second_root\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The following command reboots to the same kernel with \fB-kv\fR options.
-
-.sp
-.in +2
-.nf
-example# \fBreboot -f -- '-kv'\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The following commands disable the fast-reboot-by-default behavior.
-
-.sp
-.in +2
-.nf
-example# \fBsvccfg -s "system/boot-config:default" \e\fR
-\fBsetprop config/fastreboot_default=false\fR
-example# \fBsvcadm refresh svc:/system/boot-config:default\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The following commands re-enable the fast-reboot-by-default behavior.
-
-.sp
-.in +2
-.nf
-example# \fBsvccfg -s "system/boot-config:default" \e\fR
-\fBsetprop config/fastreboot_default=true\fR
-example# \fBsvcadm refresh svc:/system/boot-config:default\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 4 \fRRebooting to a Particular Boot Menu Entry
-.sp
-.LP
-The following commands will reboot to entry \fB2\fR in the boot menu.
-
-.sp
-.in +2
-.nf
-example# \fBbootadm list-menu\fR
-the location for the active menu is: /rpool/boot/menu.lst
-Index Default Dataset Menu
-0 - rpool/ROOT/test-182 test-182
-1 * rpool/ROOT/test-183 test-183
-2 - rpool/ROOT/test-183 test-183
-example# \fBreboot 2\fR
-.fi
-.in -2
-.sp
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/var/adm/wtmpx\fR\fR
-.ad
-.sp .6
-.RS 4n
-login accounting file
-.RE
-
-.SH SEE ALSO
-\fBmdb\fR(1), \fBboot\fR(1M), \fBdumpadm\fR(1M), \fBfsck\fR(1M),
-\fBhalt\fR(1M), \fBinit\fR(1M), \fBkernel\fR(1M), \fBshutdown\fR(1M),
-\fBsvcadm\fR(1M), \fBsvccfg\fR(1M), \fBsync\fR(1M), \fBsyslogd\fR(1M),
-\fBsync\fR(2), \fBuadmin\fR(2), \fBreboot\fR(3C), \fBattributes\fR(5)
-.SH NOTES
-The \fBreboot\fR utility does not execute the scripts in
-\fB/etc/rc\fInum\fR.d\fR or execute shutdown actions in \fBinittab\fR(4). To
-ensure a complete shutdown of system services, use \fBshutdown\fR(1M) or
-\fBinit\fR(1M) to reboot a Solaris system.
diff --git a/usr/src/man/man1m/rem_drv.1m b/usr/src/man/man1m/rem_drv.1m
deleted file mode 100644
index 2028948a6b..0000000000
--- a/usr/src/man/man1m/rem_drv.1m
+++ /dev/null
@@ -1,104 +0,0 @@
-'\" te
-.\" Copyright (c) 2007 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH REM_DRV 1M "Aug 13, 2007"
-.SH NAME
-rem_drv \- remove a device driver from the system
-.SH SYNOPSIS
-.LP
-.nf
-\fBrem_drv\fR [\fB-b\fR \fIbasedir\fR] \fIdevice_driver\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBrem_drv\fR command informs the system that the device driver
-\fIdevice_driver\fR is no longer valid. If possible, \fBrem_drv\fR unloads
-\fIdevice_driver\fR from memory. \fBrem_drv\fR also updates the system driver
-configuration files.
-.sp
-.LP
-If \fBrem_drv\fR has been executed, the next time the system is rebooted it
-automatically performs a reconfiguration boot (see \fBkernel\fR(1M)).
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-b\fR \fIbasedir\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets the path to the root directory of the diskless client. Used on the server
-to execute \fBrem_drv\fR for a client. The client machine must be rebooted to
-unload the driver.
-.LP
-Note -
-.sp
-.RS 2
-The root file system of any non-global zones must not be referenced with the
-\fB-b\fR option. Doing so might damage the global zone's file system, might
-compromise the security of the global zone, and might damage the non-global
-zone's file system. See \fBzones\fR(5).
-.RE
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-C\fR\fR
-.ad
-.sp .6
-.RS 4n
-Remove dangling device attribute nodes bound to the driver being removed. This
-causes any device ownership or permissions customizations made to any node not
-to be preserved if the driver is added back. Recommended for use when
-reprovisioning a machine from one configuration or use to another where past
-administrative customizations might not be desired.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRRemoving the \fBsd\fR Driver
-.sp
-.LP
-The following example removes the \fBsd\fR driver from use:
-
-.sp
-.in +2
-.nf
-example% rem_drv sd
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRRemoving a Diskless Client
-.sp
-.LP
-The following example removes the driver from the \fBsun1\fR diskless client.
-The driver is not uninstalled or unloaded until the client machine is rebooted.
-
-.sp
-.in +2
-.nf
-example% rem_drv \fB-b\fR /export/root/sun1 sd
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Note the caveat on the use of the \fB-b\fR option in the description of that
-option, above.
-
-.SH SEE ALSO
-.sp
-.LP
-\fBadd_drv\fR(1M), \fBkernel\fR(1M), \fBupdate_drv\fR(1M), \fBattributes\fR(5),
-\fBzones\fR(5), \fBdevfs\fR(7FS)
diff --git a/usr/src/man/man1m/remove_allocatable.1m b/usr/src/man/man1m/remove_allocatable.1m
deleted file mode 100644
index eb0e5960f5..0000000000
--- a/usr/src/man/man1m/remove_allocatable.1m
+++ /dev/null
@@ -1,142 +0,0 @@
-'\" te
-.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH REMOVE_ALLOCATABLE 1M "Jul 20, 2007"
-.SH NAME
-remove_allocatable \- remove entries from allocation databases
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/remove_allocatable\fR [\fB-f\fR] \fB-n\fR \fIname\fR
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/remove_allocatable\fR [\fB-f\fR] [\fB-d\fR] \fB-t\fR \fIdev-type\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBremove_allocatable\fR removes entries of user allocatable devices from the
-device allocation mechanism. \fBremove_allocatable\fR also removes entries of
-some non-allocatable devices, such as printers, whose label range is managed by
-the mechanism.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-d\fR\fR
-.ad
-.RS 15n
-Removes system-supplied default attributes of the device type that is
-specified with \fB-t\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR\fR
-.ad
-.RS 15n
-Force the removal of an entry. \fBremove_allocatable\fR exits with an error if
-this option is not specified when an entry with the specified device name no
-longer exists.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR \fIname\fR\fR
-.ad
-.RS 15n
-Removes the entry for the device \fIname\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-t\fR \fIdev-type\fR\fR
-.ad
-.RS 15n
-Removes devices of type \fIdev-type\fR.
-.RE
-
-.SH EXIT STATUS
-.sp
-.LP
-When successful, \fBremove_allocatable\fR returns an exit status of \fB0\fR
-(true). \fBremove_allocatable\fR returns a nonzero exit status in the event of
-an error. The exit codes are as follows:
-.sp
-.ne 2
-.na
-\fB\fB1\fR\fR
-.ad
-.RS 5n
-Invocation syntax error
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB2\fR\fR
-.ad
-.RS 5n
-Unknown system error
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB3\fR\fR
-.ad
-.RS 5n
-Device \fIname\fR or \fIdev-type\fR not found. This error occurs only when the
-\fB-f\fR option is not specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB4\fR\fR
-.ad
-.RS 5n
-Permission denied. User does not have DAC or MAC access to database.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability See below.
-.TE
-
-.sp
-.LP
-The invocation is Uncommitted. The options are Uncommitted. The output is
-Not-an-Interface.
-.SH SEE ALSO
-.sp
-.LP
-\fBallocate\fR(1), \fBdeallocate\fR(1), \fBadd_allocatable\fR(1M),
-\fBattributes\fR(5), \fBdevice_clean\fR(5)
-.SH NOTES
-.sp
-.LP
-The functionality described on this manual page is available only if the system
-is configured with Trusted Extensions.
diff --git a/usr/src/man/man1m/removef.1m b/usr/src/man/man1m/removef.1m
deleted file mode 100644
index 038e9066af..0000000000
--- a/usr/src/man/man1m/removef.1m
+++ /dev/null
@@ -1,198 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH REMOVEF 1M "Oct 30, 2007"
-.SH NAME
-removef \- remove a file from software database
-.SH SYNOPSIS
-.LP
-.nf
-\fBremovef\fR [ [\fB-M\fR] \fB-R\fR \fIroot_path\fR] [\fB-V\fR \fIfs_file\fR] \fIpkginst\fR \fIpath\fR...
-.fi
-
-.LP
-.nf
-\fBremovef\fR [ [\fB-M\fR] \fB-R\fR \fIroot_path\fR] [\fB-V\fR \fIfs_file\fR] \fB-f\fR \fIpkginst\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBremovef\fR informs the system that the user, or software, intends to remove
-a pathname. Output from \fBremovef\fR is the list of input pathnames that may
-be safely removed (no other packages have a dependency on them).
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-f\fR\fR
-.ad
-.sp .6
-.RS 4n
-After all files have been processed, \fBremovef\fR should be invoked with the
-\fB-f\fR option to indicate that the removal phase is complete.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-M\fR\fR
-.ad
-.sp .6
-.RS 4n
-Instruct \fBremovef\fR not to use the \fB$\fR\fIroot_path\fR\fB/etc/vfstab\fR
-file for determining the client's mount points. This option assumes the mount
-points are correct on the server and it behaves consistently with Solaris 2.5
-and earlier releases.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\fR\fB-R\fR \fIroot_path\fR\fR
-.ad
-.sp .6
-.RS 4n
-Define the full path name of a directory to use as the \fIroot_path\fR. All
-files, including package system information files, are relocated to a directory
-tree starting in the specified \fIroot_path\fR. The \fIroot_path\fR may be
-specified when installing to a client from a server (for example,
-\fB/export/root/client1\fR).
-.sp
-\fBremovef\fR inherits the value of the \fBPKG_INSTALL_ROOT\fR environment
-variable. (See ENVIRONMENT VARIABLES, below.) If \fBPKG_INSTALL_ROOT\fR is set,
-such as when the \fB-R\fR option is used with \fBpkgadd\fR(1M) or
-\fBpkgrm\fR(1M), there is no need to use the \fBremovef\fR \fB-R\fR option.
-.LP
-Note -
-.sp
-.RS 2
-The root file system of any non-global zones must not be referenced with the
-\fB-R\fR option. Doing so might damage the global zone's file system, might
-compromise the security of the global zone, and might damage the non-global
-zone's file system. See \fBzones\fR(5).
-.RE
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-V\fR \fIfs_file\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify an alternative \fIfs_file\fR to map the client's file systems. For
-example, used in situations where the \fB$\fR\fIroot_path\fR\fB/etc/vfstab\fR
-file is non-existent or unreliable.
-.RE
-
-.SH OPERANDS
-.sp
-.LP
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fB\fIpath\fR\fR
-.ad
-.sp .6
-.RS 4n
-The pathname to be removed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIpkginst\fR\fR
-.ad
-.sp .6
-.RS 4n
-The package instance from which the pathname is being removed.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRUsing \fBremovef\fR
-.sp
-.LP
-The following example uses the \fBremovef\fR command in an optional pre-install
-script:
-
-.sp
-.in +2
-.nf
-echo "The following files are no longer part of this package
- and are being removed."
-removef $PKGINST /myapp/file1 /myapp/file2 |
-while read pathname
-do
- echo "$pathname"
- rm \fB-f\fR $pathname
-done
-removef \fB-f\fR $PKGINST || exit 2
-.fi
-.in -2
-.sp
-
-.SH ENVIRONMENT VARIABLES
-.sp
-.LP
-\fBremovef\fR inherits the value of the following environment variable. This
-variable is set when \fBpkgadd\fR(1M) or \fBpkgrm\fR(1M) is invoked with the
-\fB-R\fR option.
-.sp
-.ne 2
-.na
-\fB\fBPKG_INSTALL_ROOT\fR\fR
-.ad
-.sp .6
-.RS 4n
-If present, defines the full path name of a directory to use as the system's
-\fBPKG_INSTALL_ROOT\fR path. All product and package information files are then
-looked for in the directory tree, starting with the specified
-\fBPKG_INSTALL_ROOT\fR path. If not present, the default system path of \fB/\fR
-is used.
-.RE
-
-.SH EXIT STATUS
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.sp .6
-.RS 4n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB>0\fR\fR
-.ad
-.sp .6
-.RS 4n
-An error occurred.
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBpkginfo\fR(1), \fBpkgmk\fR(1), \fBpkgparam\fR(1), \fBpkgproto\fR(1),
-\fBpkgtrans\fR(1), \fBinstallf\fR(1M), \fBpkgadd\fR(1M), \fBpkgask\fR(1M),
-\fBpkgchk\fR(1M), \fBpkgrm\fR(1M), \fBattributes\fR(5), \fBlargefile\fR(5)
-.sp
-.LP
-\fI\fR
-.SH NOTES
-.sp
-.LP
-Package commands are \fBlargefile\fR(5)-aware. They handle files larger than 2
-GB in the same way they handle smaller files. In their current implementations,
-\fBpkgadd\fR(1M), \fBpkgtrans\fR(1) and other package commands can process a
-datastream of up to 4 GB.
diff --git a/usr/src/man/man1m/repquota.1m b/usr/src/man/man1m/repquota.1m
deleted file mode 100644
index 9630b81a8b..0000000000
--- a/usr/src/man/man1m/repquota.1m
+++ /dev/null
@@ -1,65 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 1996, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH REPQUOTA 1M "Sep 16, 1996"
-.SH NAME
-repquota \- summarize quotas for a ufs file system
-.SH SYNOPSIS
-.LP
-.nf
-\fBrepquota\fR [\fB-v\fR] \fIfilesystem\fR...
-.fi
-
-.LP
-.nf
-\fBrepquota\fR \fB-a\fR [\fB-v\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBrepquota\fR prints a summary of the disk usage and quotas for the specified
-ufs file systems. The current number of files and amount of space (in
-kilobytes) is printed for each user along with any quotas created with
-\fBedquota\fR(1M).
-.sp
-.LP
-The \fIfilesystem\fR must have the file \fBquotas\fR in its root directory.
-.sp
-.LP
-Only the super-user may view quotas which are not their own.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-a\fR\fR
-.ad
-.RS 6n
-Report on all mounted ufs file systems that have \fBrq\fR in the \fBmntopts\fR
-field of the \fB/etc/vfstab\fR file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.RS 6n
-Report quotas for all users, even those who do not consume resources.
-.RE
-
-.SH USAGE
-.sp
-.LP
-See \fBlargefile\fR(5) for the description of the behavior of \fBrepquota\fR
-when encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
-.SH SEE ALSO
-.sp
-.LP
-\fBedquota\fR(1M), \fBquota\fR(1M), \fBquotacheck\fR(1M), \fBquotaon\fR(1M),
-\fBattributes\fR(5), \fBlargefile\fR(5), \fBquotactl\fR(7I)
diff --git a/usr/src/man/man1m/rmmount.1m b/usr/src/man/man1m/rmmount.1m
deleted file mode 100644
index 177262f2eb..0000000000
--- a/usr/src/man/man1m/rmmount.1m
+++ /dev/null
@@ -1,288 +0,0 @@
-'\" te
-.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH RMMOUNT 1M "Mar 1, 2007"
-.SH NAME
-rmmount \- removable media mounter for CD-ROM, floppy, Jaz drive, and others
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/rmmount\fR [\fB-D\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBrmmount\fR utility is a removable media mounter that is executed by
-volume management whenever a removable medium, such as a \fBCD-ROM\fR or a
-floppy, is inserted. Removable media is managed by an application or a volume
-manager. \fBrmmount\fR can also be called by using \fBvolrmmount\fR(1).
-.sp
-.LP
-Upon insertion of a medium and following invocation of the \fBvolcheck\fR(1)
-command, \fBrmmount\fR determines what type of file system (if any) is on that
-medium. If a file system is present, \fBrmmount\fR mounts the file system in
-one of the locations listed below.
-.sp
-.LP
-For a diskette (floppy):
-.sp
-.ne 2
-.na
-\fB\fB/floppy/floppy0\fR\fR
-.ad
-.RS 26n
-symbolic link to mounted floppy in local floppy drive
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/floppy/floppy_name\fR\fR
-.ad
-.RS 26n
-mounted named floppy
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/floppy/unnamed_floppy\fR\fR
-.ad
-.RS 26n
-mounted unnamed floppy
-.RE
-
-.sp
-.LP
-For a CD-ROM or a DVD-ROM:
-.sp
-.ne 2
-.na
-\fB\fB/cdrom/cdrom0\fR\fR
-.ad
-.sp .6
-.RS 4n
-symbolic link to mounted \fBCD-ROM\fR in local \fBCD-ROM\fR drive
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/cdrom/CD-ROM_name\fR\fR
-.ad
-.sp .6
-.RS 4n
-mounted named \fBCD-ROM\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/cdrom/CD-ROM_name/partition\fR\fR
-.ad
-.sp .6
-.RS 4n
-mounted named \fBCD-ROM\fR with partitioned file system
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/cdrom/unnamed_cdrom\fR\fR
-.ad
-.sp .6
-.RS 4n
-mounted unnamed \fBCD-ROM\fR
-.RE
-
-.sp
-.LP
-For a Zip drive:
-.sp
-.ne 2
-.na
-\fB\fB/rmdisk/zip0\fR\fR
-.ad
-.RS 30n
-symbolic link to mounted Zip medium in local Zip drive
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/rmdisk/\fIZip_name\fR\fR\fR
-.ad
-.RS 30n
-mounted named Zip medium
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/rmdisk/\fIZip_name\fR/partition\fR\fR
-.ad
-.RS 30n
-mounted named Zip medium with partitioned file system
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/rmdisk/unnamed_zip\fR\fR
-.ad
-.RS 30n
-mounted unnamed Zip medium
-.RE
-
-.sp
-.LP
-For a Jaz drive:
-.sp
-.ne 2
-.na
-\fB\fB/rmdisk/jaz0\fR\fR
-.ad
-.RS 30n
-symbolic link to mounted Jaz medium in local Jaz drive
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/rmdisk/\fIJaz_name\fR\fR\fR
-.ad
-.RS 30n
-mounted named Jaz medium
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/rmdisk/\fIJaz_name\fR/partition\fR\fR
-.ad
-.RS 30n
-mounted named Jaz medium with partitioned file system
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/rmdisk/unnamed_Jaz\fR\fR
-.ad
-.RS 30n
-mounted unnamed Jaz medium
-.RE
-
-.sp
-.LP
-For a generic "rmdisk" drive:
-.sp
-.ne 2
-.na
-\fB\fB/rmdisk/rmdisk0\fR\fR
-.ad
-.sp .6
-.RS 4n
-symbolic link to mounted removable medium in local removable medium drive
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/rmdisk/\fIrmdisk_name\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-mounted named removable medium
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/rmdisk/\fIrmdisk_name\fR/partition\fR\fR
-.ad
-.sp .6
-.RS 4n
-mounted named removable medium with partitioned file system
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/rmdisk/unnamed_rmdisk\fR\fR
-.ad
-.sp .6
-.RS 4n
-mounted unnamed removable medium
-.RE
-
-.sp
-.LP
-If the media is read-only (for example, a \fBCD-ROM\fR or a floppy with
-write-protect tab set), the file system is mounted read-only.
-.sp
-.LP
-If a file system is not identified, \fBrmmount\fR does not mount a file system.
-See the \fI\fR for more information on the location of \fBCD-ROM\fR, floppy,
-and other media without file systems.
-.sp
-.LP
-If a file system type has been determined, it is then checked to see that it is
-"clean." If the file system is "dirty," \fBfsck\fR \fB-p\fR (see
-\fBfsck\fR(1M)) is run in an attempt to clean it. If \fBfsck\fR fails, the file
-system is mounted read-only.
-.sp
-.LP
-After the mount is complete, "actions" associated with the media type are
-executed. These actions allow for the notification to other programs that new
-media are available.
-.sp
-.LP
-Actions are executed in the order in which they appear in the configuration
-file. The action function can return either \fB1\fR or \fB0\fR. If it returns
-\fB0\fR, no further actions will be executed. This allows the function to
-control which applications are executed.
-.sp
-.LP
-In order to execute an action, \fBrmmount\fR performs a \fBdlopen\fR(3C) on the
-shared object and calls the action function defined within it. The definition
-of the interface to actions can be found in \fB/usr/include/rmmount.h\fR.
-.sp
-.LP
-File systems mounted by \fBrmmount\fR are always mounted with the \fBnosuid\fR
-flag set, thereby disabling setuid programs and access to block or character
-devices in that file system. Upon ejection, \fBrmmount\fR unmounts mounted file
-systems and executes actions associated with the media type. If a file system
-is "busy" (that is, it contains the current working directory of a live
-process), the ejection will fail.
-.SH OPTIONS
-.sp
-.ne 2
-.na
-\fB\fB-D\fR\fR
-.ad
-.RS 6n
-Turn on the debugging output from the \fBrmmount\fR \fBdprintf\fR calls.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/rmmount/*.so.1\fR\fR
-.ad
-.RS 27n
-shared objects used by \fBrmmount\fR.
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBvolcheck\fR(1), \fBvolrmmount\fR(1), \fBfsck\fR(1M), \fBdlopen\fR(3C),
-\fBattributes\fR(5)
-.sp
-.LP
-\fI\fR
diff --git a/usr/src/man/man1m/rmt.1m b/usr/src/man/man1m/rmt.1m
deleted file mode 100644
index b96237e703..0000000000
--- a/usr/src/man/man1m/rmt.1m
+++ /dev/null
@@ -1,155 +0,0 @@
-'\" te
-.\" Copyright (c) 1983 Regents of the University
-.\" of California. All rights reserved. The Berkeley software License Agreement
-.\" specifies the terms and conditions for redistribution. Copyright (c) 1995
-.\" Sun Microsystems, Inc. All Rights Reserved.
-.\" from UCB 4.3
-.TH RMT 1M "Nov 6, 2000"
-.SH NAME
-rmt \- remote magtape protocol module
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/rmt\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-\fBrmt\fR is a program used by the remote dump and restore programs in
-manipulating a magnetic tape drive through an interprocess communication
-connection. \fBrmt\fR is normally started up with an \fBrexec\fR(3SOCKET) or
-\fBrcmd\fR(3SOCKET) call.
-.sp
-.LP
-The \fBrmt\fR program accepts requests that are specific to the manipulation of
-magnetic tapes, performs the commands, then responds with a status indication.
-All responses are in \fBASCII\fR and in one of two forms. Successful commands
-have responses of:
-.sp
-.in +2
-.nf
-
-.fi
-.in -2
-.sp
-
-.sp
-.ne 2
-.na
-\fB\fBA\fR\fInumber\fR\fB\en\fR\fR
-.ad
-.RS 14n
-where \fInumber\fR is an \fBASCII\fR representation of a decimal number.
-.RE
-
-.sp
-.LP
-Unsuccessful commands are responded to with:
-.sp
-.ne 2
-.na
-\fB\fBE\fR\fIerror-number\fR\fB\en\fR\fIerror-message\fR\fB\en\fR\fR
-.ad
-.sp .6
-.RS 4n
-where \fIerror-number\fR is one of the possible error numbers described in
-\fBIntro\fR(3), and \fIerror-message\fR is the corresponding error string as
-printed from a call to \fBperror\fR(3C).
-.RE
-
-.sp
-.LP
- The protocol consists of the following commands:
-.sp
-.ne 2
-.na
-\fB\fBS\en\fR\fR
-.ad
-.RS 25n
-Return the status of the open device, as obtained with a \fBMTIOCGET\fR
-\fBioctl\fR call. If the operation was successful, an "ack" is sent with the
-size of the status buffer, then the status buffer is sent (in binary).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBC\fR\fIdevice\fR\fB\en\fR\fR
-.ad
-.RS 25n
-Close the currently open device. The \fIdevice\fR specified is ignored.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBI\fR\fIoperation\fR\fB\en\fR\fIcount\fR\fB\en\fR\fR
-.ad
-.RS 25n
-Perform a \fBMTIOCOP\fR \fBioctl\fR(2) command using the specified parameters.
-The parameters are interpreted as the \fBASCII\fR representations of the
-decimal values to place in the \fImt_op\fR and \fImt_count\fR fields of the
-structure used in the \fBioctl\fR call. When the operation is successful the
-return value is the \fIcount\fR parameter.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBL\fR\fIoffset\fR\fB\en\fR\fBwhence\fR\fB\en\fR\fR
-.ad
-.RS 25n
-Perform an \fBlseek\fR(2) operation using the specified parameters. The
-response value is returned from the \fBlseek\fR call.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBO\fR\fIdevice\fR\fB\en\fR\fImode\fR\fB\en\fR\fR
-.ad
-.RS 25n
-Open the specified \fIdevice\fR using the indicated \fImode\fR. \fIdevice\fR is
-a full pathname, and \fImode\fR is an \fBASCII\fR representation of a decimal
-number suitable for passing to \fBopen\fR(9E). If a device is already open, it
-is closed before a new open is performed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBR\fR\fIcount\fR\fB\en\fR\fR
-.ad
-.RS 25n
-Read \fIcount\fR bytes of data from the open device. \fBrmt\fR performs the
-requested \fBread\fR(9E) and responds with \fBA\fR\fIcount-read\en\fR if the
-read was successful; otherwise an error in standard format is returned. If the
-read was successful, the data read is sent.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBW\fR\fIcount\fR\fB\en\fR\fR
-.ad
-.RS 25n
-Write data onto the open device. \fBrmt\fR reads \fIcount\fR bytes from the
-connection, aborting if a premature \fBEOF\fR is encountered. The response
-value is returned from the \fBwrite\fR(9E) call.
-.RE
-
-.sp
-.LP
-Any other command causes \fBrmt\fR to exit.
-.SH SEE ALSO
-.LP
-\fBufsdump\fR(1M), \fBufsrestore\fR(1M), \fBIntro\fR(3), \fBioctl\fR(2),
-\fBlseek\fR(2), \fBperror\fR(3C), \fBrcmd\fR(3SOCKET), \fBrexec\fR(3SOCKET),
-\fBattributes\fR(5), \fBmtio\fR(7I), \fBopen\fR(9E), \fBread\fR(9E),
-\fBwrite\fR(9E)
-.SH DIAGNOSTICS
-.LP
-All responses are of the form described above.
-.SH BUGS
-.LP
-Do not use this for a remote file access protocol.
diff --git a/usr/src/man/man1m/rmvolmgr.1m b/usr/src/man/man1m/rmvolmgr.1m
deleted file mode 100644
index 9eba83e692..0000000000
--- a/usr/src/man/man1m/rmvolmgr.1m
+++ /dev/null
@@ -1,146 +0,0 @@
-'\" te
-.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH RMVOLMGR 1M "Nov 28, 2006"
-.SH NAME
-rmvolmgr \- HAL-aware removable volume manager
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/rmvolmgr\fR [\fB-chns\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBrmvolmgr\fR command is a volume manager that can automatically mount and
-unmount removable media and hot-pluggable storage. The default mount point is
-\fB/media\fR.
-.sp
-.LP
-\fBrmvolmgr\fR is one of a number of Hardware Abstraction Layer (HAL)-aware
-tools that are shipped with the Solaris operating system. See \fBhald\fR(1M).
-.sp
-.LP
-Multiple instances of \fBrmvolmgr\fR can be run simultaneously. A system
-instance of \fBrmvolmgr\fR runs by default as a service management facility
-(SMF) service (see \fBsmf\fR(5)). Its fault management resource identifier
-(FMRI) is:
-.sp
-.in +2
-.nf
-svc:/system/filesystem/rmvolmgr
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-You can run your own instance of \fBrmvolmgr\fR by adding it to the
-\fB\&.xinitrc\fR file or a similar session startup script. In such a case, the
-\fBsystem\fR \fBrmvolmgr\fR instance will not manage volumes that belong to
-you, the owner of the startup script. For example, a user logged on to the
-workstation console (\fB/dev/console\fR) who invokes his own instance of
-\fBrmvolmgr\fR will own locally connected devices, such as CD-ROM drives and
-devices connected to the local USB or FireWire ports.
-.sp
-.LP
-In addition to mounting volumes under \fB/media\fR, \fBrmvolmgr\fR also creates
-legacy symbolic links under \fB/cdrom\fR, \fB/floppy\fR, and \fB/rmdisk\fR.
-.sp
-.LP
-\fBrmvolmgr\fR also provides backwards compatibility with CDE removable media
-interfaces by maintaining notification files under \fB/tmp/.removable\fR. This
-functionality can be disabled by using the \fB-c\fR option.
-.sp
-.LP
-The \fB-c\fR and \fB-n\fR options can also be specified as SMF properties. See
-"Examples."
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-c\fR\fR
-.ad
-.RS 6n
-Disable CDE compatibility.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-h\fR\fR
-.ad
-.RS 6n
-Display help information and exit.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR\fR
-.ad
-.RS 6n
-Do not create legacy mountpoint symbolic links.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR\fR
-.ad
-.RS 6n
-Invoke in system instance mode.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRUsing SMF Properties to Set Options
-.sp
-.LP
-The following \fBsvccfg\fR(1M) command and subcommands use SMF properties to
-set the \fB-c\fR and \fB-n\fR options.
-
-.sp
-.in +2
-.nf
-example# \fBsvccfg\fR
-svc:> \fBselect rmvolmgr\fR
-svc:/system/filesystem/rmvolmgr> \fBlistprop rmvolmgr/*\fR
-rmvolmgr/legacy_mountpoints boolean true
-rmvolmgr/cde_compatible boolean true
-svc:/system/filesystem/rmvolmgr> \fBsetprop \e
- rmvolmgr/legacy_mountpoints=false\fR
-svc:/system/filesystem/rmvolmgr> \fBsetprop rmvolmgr/cde_compatible=false\fR
-svc:/system/filesystem/rmvolmgr> \fBexit\fR
-example#
-.fi
-.in -2
-.sp
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Volatile
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBhald\fR(1M), \fBsvccfg\fR(1M), \fBattributes\fR(5), \fBhal\fR(5),
-\fBsmf\fR(5)
diff --git a/usr/src/man/man1m/roleadd.1m b/usr/src/man/man1m/roleadd.1m
deleted file mode 100644
index f8674edbef..0000000000
--- a/usr/src/man/man1m/roleadd.1m
+++ /dev/null
@@ -1,530 +0,0 @@
-'\" te
-.\" Copyright (c) 2018 Peter Tribble.
-.\" Copyright 1989 AT&T Copyright (c) 2006 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH ROLEADD 1M "Jan 7, 2018"
-.SH NAME
-roleadd \- administer a new role account on the system
-.SH SYNOPSIS
-.LP
-.nf
-\fBroleadd\fR [\fB-A\fR \fIauthorization\fR[,\fIauthorization\fR]...]
- [\fB-b\fR \fIbase_dir\fR] [\fB-c\fR \fIcomment\fR] [\fB-d\fR \fIdir\fR] [\fB-e\fR \fIexpire\fR]
- [\fB-f\fR \fIinactive\fR] [\fB-g\fR \fIgroup\fR] [\fB-G\fR \fIgroup\fR[,\fIgroup\fR]...]
- [\fB-K\fR \fIkey=value\fR] [\fB-m\fR [\fB-z|-Z\fR] [\fB-k\fR \fIskel_dir\fR]] [\fB-p\fR \fIprojname\fR]
- [\fB-P\fR \fIprofile\fR[,\fIprofile\fR]...] [\fB-s\fR \fIshell\fR] [\fB-u\fR \fIuid\fR [\fB-o\fR]] \fIrole\fR
-.fi
-
-.LP
-.nf
-\fBroleadd\fR \fB-D\fR [\fB-A\fR \fIauthorization\fR[,\fIauthorization\fR]...]
- [\fB-b\fR \fIbase_dir\fR] [\fB-e\fR \fIexpire\fR] [\fB-f\fR \fIinactive\fR] [\fB-g\fR \fIgroup\fR]
- [\fB-k\fR \fIskel_dir\fR] [\fB-K\fR \fIkey=value\fR] [\fB-p\fR \fIprojname\fR]
- [\fB-P\fR \fIprofile\fR[,\fIprofile\fR]...] [\fB-s\fR \fIshell\fR]
-.fi
-
-.SH DESCRIPTION
-.LP
-\fBroleadd\fR adds a role entry to the \fB/etc/passwd\fR and \fB/etc/shadow\fR
-and \fB/etc/user_attr\fR files. The \fB-A\fR and \fB-P\fR options respectively
-assign authorizations and profiles to the role. The \fB-p\fR option associates
-a project with the role. The \fB-K\fR option adds a \fIkey=value\fR pair to
-\fB/etc/user_attr\fR for the role. Multiple \fIkey=value\fR pairs can be added
-with multiple \fB-K\fR options.
-.sp
-.LP
-\fBroleadd\fR also creates supplementary group memberships for the role
-(\fB-G\fR option) and creates the home directory (\fB-m\fR option) for the role
-if requested. The new role account remains locked until the \fBpasswd\fR(1)
-command is executed.
-.sp
-.LP
-Specifying \fBroleadd\fR \fB-D\fR with the \fB-A\fR, \fB-b\fR, \fB-e\fR,
-\fB-f\fR, \fB-g\fR, \fB-k\fR, \fB-K\fR, \fB-p\fR, \fB-P\fR, or
-\fB-s\fR option (or any combination of these options) sets the default values
-for the respective fields. See the \fB-D\fR option. Subsequent
-\fBroleadd\fR commands without the \fB-D\fR option use these arguments.
-.sp
-.LP
-The system file entries created with this command have a limit of 512
-characters per line. Specifying long arguments to several options can exceed
-this limit.
-.sp
-.LP
-\fBroleadd\fR requires that usernames be in the format described in
-\fBpasswd\fR(4). A warning message is displayed if these restrictions are not
-met. See \fBpasswd\fR(4) for the requirements for usernames.
-.LP
-To change the action of \fBroleadd\fR when the traditional login name
-length limit of eight characters is exceeded, edit the file
-\fB/etc/default/useradd\fR by removing the \fB#\fR (pound sign) before the
-appropriate \fBEXCEED_TRAD=\fR entry, and adding it before the others.
-.SH OPTIONS
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-A\fR \fIauthorization\fR\fR
-.ad
-.sp .6
-.RS 4n
-One or more comma separated authorizations defined in \fBauth_attr\fR(4). Only
-a user or role who has \fBgrant\fR rights to the authorization can assign it to
-a role.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-b\fR \fIbase_dir\fR\fR
-.ad
-.sp .6
-.RS 4n
-The base directory for new role home directories (see the \fB-d\fR option
-below). The directory named by \fIbase_dir\fR must already exist and be an
-absolute path.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-c\fR \fIcomment\fR\fR
-.ad
-.sp .6
-.RS 4n
-A text string. It is generally a short description of the role. This
-information is stored in the role's \fB/etc/passwd\fR entry.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-d\fR \fIdir\fR\fR
-.ad
-.sp .6
-.RS 4n
-The home directory of the new role. If not supplied, it defaults to
-\fIbase_dir\fR/\fIaccount_name\fR, where \fIbase_dir\fR is the base directory
-for new login home directories and \fIaccount_name\fR is the new role name.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-D\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display the default values for \fBgroup\fR, \fBbase_dir\fR, \fBskel_dir\fR,
-\fBshell\fR, \fBinactive\fR, \fBexpire\fR, \fBproj\fR, \fBprojname\fR and
-\fBkey=value\fR pairs. When used with the \fB-A\fR, \fB-b\fR, \fB-e\fR,
-\fB-f\fR, \fB-g\fR, \fB-P\fR, \fB-p\fR, or \fB-K\fR, options, the \fB-D\fR
-option sets the default values for the specified fields. The default values
-are:
-.sp
-.ne 2
-.na
-\fBgroup\fR
-.ad
-.sp .6
-.RS 4n
-\fBother\fR (\fBGID\fR of 1)
-.RE
-
-.sp
-.ne 2
-.na
-\fBbase_dir\fR
-.ad
-.sp .6
-.RS 4n
-\fB/home\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fBskel_dir\fR
-.ad
-.sp .6
-.RS 4n
-\fB/etc/skel\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fBshell\fR
-.ad
-.sp .6
-.RS 4n
-\fB/bin/pfsh\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fBinactive\fR
-.ad
-.sp .6
-.RS 4n
-\fB0\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fBexpire\fR
-.ad
-.sp .6
-.RS 4n
-Null
-.RE
-
-.sp
-.ne 2
-.na
-\fBauths\fR
-.ad
-.sp .6
-.RS 4n
-Null
-.RE
-
-.sp
-.ne 2
-.na
-\fBprofiles\fR
-.ad
-.sp .6
-.RS 4n
-Null
-.RE
-
-.sp
-.ne 2
-.na
-\fBproj\fR
-.ad
-.sp .6
-.RS 4n
-\fB3\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fBprojname\fR
-.ad
-.sp .6
-.RS 4n
-\fBdefault\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fBkey=value\fR (pairs defined in \fBuser_attr\fR(4))
-.ad
-.sp .6
-.RS 4n
-not present
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-e\fR \fIexpire\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify the expiration date for a role. After this date, no user is able to
-access this role. The expire option argument is a date entered using one of
-the date formats included in the template file \fB/etc/datemsk\fR. See
-\fBgetdate\fR(3C).
-.sp
-If the date format that you choose includes spaces, it must be quoted. For
-example, you can enter \fB10/6/90\fR or \fBOctober 6, 1990\fR. A null value
-(\fB" "\fR) defeats the status of the expired date. This option is useful for
-creating temporary roles.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR \fIinactive\fR\fR
-.ad
-.sp .6
-.RS 4n
-The maximum number of days allowed between uses of a role ID before that
-\fBID\fR is declared invalid. Normal values are positive integers. A value of
-\fB0\fR defeats the status.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-g\fR \fIgroup\fR\fR
-.ad
-.sp .6
-.RS 4n
-An existing group's integer \fBID\fR or character-string name. Without the
-\fB-D\fR option, it defines the new role's primary group membership and
-defaults to the default group. You can reset this default value by invoking
-\fBroleadd\fR \fB-D\fR \fB-g\fR \fIgroup\fR. GIDs 0-99 are reserved for
-allocation by the Operating System.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-G\fR \fIgroup\fR\fR
-.ad
-.sp .6
-.RS 4n
-One or more comma-separated existing groups, specified by integer \fBID\fR or
-character-string name. It defines the new role's supplementary group
-membership. Any duplicate groups between the \fB-g\fR and \fB-G\fR options are
-ignored. No more than \fBNGROUPS_MAX\fR groups can be specified. GIDs 0-99 are
-reserved for allocation by the Operating System.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-k\fR \fIskel_dir\fR\fR
-.ad
-.sp .6
-.RS 4n
-A directory that contains skeleton information (such as \fB\&.profile\fR) that
-can be copied into a new role's home directory. This directory must already
-exist. The system provides the \fB/etc/skel\fR directory that can be used for
-this purpose.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-K\fR \fIkey=value\fR\fR
-.ad
-.sp .6
-.RS 4n
-A \fIkey=value\fR pair to add to the role's attributes. Multiple \fB-K\fR
-options may be used to add multiple \fIkey=value\fR pairs. The generic \fB-K\fR
-option with the appropriate key may be used instead of the specific implied key
-options (\fB-A\fR, \fB-p\fR, \fB-P\fR). See \fBuser_attr\fR(4) for a
-list of valid \fIkey=value\fR pairs. The "type" key is not a valid key for this
-option. Keys cannot be repeated.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-m\fR\fR [\fB-z|-Z\fR]
-.ad
-.sp .6
-.RS 4n
-Create the new role's home directory if it does not already exist. If the
-directory already exists, it must have read, write, and execute permissions by
-\fIgroup\fR, where \fIgroup\fR is the role's primary group.
-.sp
-If the parent directory of the role's home directory is located on a separate
-\fBZFS\fR file system and the \fB/etc/default/useradd\fR file contains the
-parameter \fBMANAGE_ZFS\fR set to the value \fBYES\fR, a new \fBZFS\fR
-file system will be created for the role.
-.sp
-If the \fB-z\fR option is specified, \fBroleadd\fR will always try to create
-a new file system for the home directory.
-.sp
-If the \fB-Z\fR option is specified, a new file system will never be created.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-o\fR\fR
-.ad
-.sp .6
-.RS 4n
-This option allows a \fBUID\fR to be duplicated (non-unique).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR \fIprojname\fR\fR
-.ad
-.sp .6
-.RS 4n
-Name of the project with which the added role is associated. See the
-\fIprojname\fR field as defined in \fBproject\fR(4).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-P\fR \fIprofile\fR\fR
-.ad
-.sp .6
-.RS 4n
-One or more comma-separated execution profiles defined in \fBprof_attr\fR(4).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR \fIshell\fR\fR
-.ad
-.sp .6
-.RS 4n
-Full pathname of the program used as the role's shell on login. It defaults to
-an empty field causing the system to use \fB/bin/pfsh\fR as the default. The
-value of \fIshell\fR must be a valid executable file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-u\fR \fIuid\fR\fR
-.ad
-.sp .6
-.RS 4n
-The \fBUID\fR of the new role. This \fBUID\fR must be a non-negative decimal
-integer below \fBMAXUID\fR as defined in \fB<sys/param.h>\fR\&. The \fBUID\fR
-defaults to the next available (unique) number above the highest number
-currently assigned. For example, if \fBUID\fRs 100, 105, and 200 are assigned,
-the next default \fBUID\fR number will be 201. \fBUID\fRs \fB0\fR-\fB99\fR are
-reserved for allocation by the Operating System.
-.RE
-
-.SH FILES
-.LP
-\fB/etc/default/useradd\fR
-.sp
-.LP
-\fB/etc/datemsk\fR
-.sp
-.LP
-\fB/etc/passwd\fR
-.sp
-.LP
-\fB/etc/shadow\fR
-.sp
-.LP
-\fB/etc/group\fR
-.sp
-.LP
-\fB/etc/skel\fR
-.sp
-.LP
-\fB/usr/include/limits.h\fR
-.sp
-.LP
-\fB/etc/user_attr\fR
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-.LP
-\fBpasswd\fR(1), \fBpfsh\fR(1), \fBprofiles\fR(1), \fBroles\fR(1),
-\fBgroupadd\fR(1M), \fBgroupdel\fR(1M), \fBgroupmod\fR(1M),
-\fBgrpck\fR(1M), \fBlogins\fR(1M), \fBpwck\fR(1M), \fBuserdel\fR(1M),
-\fBusermod\fR(1M), \fBzfs\fR(1M), \fBgetdate\fR(3C), \fBauth_attr\fR(4),
-\fBpasswd\fR(4), \fBprof_attr\fR(4), \fBuser_attr\fR(4), \fBattributes\fR(5)
-.SH DIAGNOSTICS
-.LP
-In case of an error, \fBroleadd\fR prints an error message and exits with a
-non-zero status.
-.sp
-.LP
-The following indicates that \fBlogin\fR specified is already in use:
-.sp
-.in +2
-.nf
-UX: roleadd: ERROR: login is already in use. Choose another.
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The following indicates that the \fIuid\fR specified with the \fB-u\fR option
-is not unique:
-.sp
-.in +2
-.nf
-UX: roleadd: ERROR: uid \fIuid\fR is already in use. Choose another.
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The following indicates that the \fIgroup\fR specified with the \fB-g\fR option
-is already in use:
-.sp
-.in +2
-.nf
-UX: roleadd: ERROR: group \fIgroup\fR does not exist. Choose another.
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The following indicates that the \fIuid\fR specified with the \fB-u\fR option
-is in the range of reserved \fBUID\fRs (from \fB0\fR-\fB99\fR):
-.sp
-.in +2
-.nf
-UX: roleadd: WARNING: uid \fIuid\fR is reserved.
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The following indicates that the \fIuid\fR specified with the \fB-u\fR option
-exceeds \fBMAXUID\fR as defined in \fB<sys/param.h>\fR:
-.sp
-.in +2
-.nf
-UX: roleadd: ERROR: uid \fIuid\fR is too big. Choose another.
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The following indicates that the \fB/etc/passwd\fR or \fB/etc/shadow\fR files
-do not exist:
-.sp
-.in +2
-.nf
-UX: roleadd: ERROR: Cannot update system files - login cannot be created.
-.fi
-.in -2
-.sp
-
-.SH NOTES
-.LP
-If a network nameservice is being used to supplement the local
-\fB/etc/passwd\fR file with additional entries, \fBroleadd\fR cannot change
-information supplied by the network nameservice.
diff --git a/usr/src/man/man1m/roledel.1m b/usr/src/man/man1m/roledel.1m
deleted file mode 100644
index e14805a55b..0000000000
--- a/usr/src/man/man1m/roledel.1m
+++ /dev/null
@@ -1,168 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 1999, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH ROLEDEL 1M "Jan 7, 2018"
-.SH NAME
-roledel \- delete a role's login from the system
-.SH SYNOPSIS
-.LP
-.nf
-\fBroledel\fR [\fB-r\fR] \fIrole\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBroledel\fR utility deletes a role account from the system and makes the
-appropriate account-related changes to the system file and file system.
-\fBroledel\fR also removes the role from each user's list of assumable roles.
-.SH OPTIONS
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-r\fR\fR
-.ad
-.RS 6n
-Remove the role's home directory from the system. This directory must exist.
-The files and directories under the home directory will no longer be accessible
-following successful execution of the command.
-.sp
-If the role's home directory is located on a separate \fBZFS\fR file system and
-the \fB/etc/default/useradd\fR file contains the parameter \fBMANAGE_ZFS\fR set
-to the value \fBYES\fR, the file system will be destroyed.
-.RE
-
-.SH OPERANDS
-.LP
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fB\fIrole\fR\fR
-.ad
-.RS 8n
-An existing role name to be deleted.
-.RE
-
-.SH EXIT STATUS
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 6n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB2\fR\fR
-.ad
-.RS 6n
-Invalid command syntax. A usage message for the \fBroledel\fR command is
-displayed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB6\fR\fR
-.ad
-.RS 6n
-The account to be removed does not exist.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB8\fR\fR
-.ad
-.RS 6n
-The account to be removed is in use.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB10\fR\fR
-.ad
-.RS 6n
-Cannot update the \fB/etc/group\fR or \fB/etc/user_attr\fR file but the login
-is removed from the \fB/etc/passwd\fR file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB12\fR\fR
-.ad
-.RS 6n
-Cannot remove or otherwise modify the home directory.
-.RE
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/etc/default/useradd\fR\fR
-.ad
-.RS 18n
-configuration file for user and role administrative commands
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/passwd\fR\fR
-.ad
-.RS 18n
-system password file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/shadow\fR\fR
-.ad
-.RS 18n
-system file containing roles' encrypted passwords and related information
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/group\fR\fR
-.ad
-.RS 18n
-system file containing group definitions
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/user_attr\fR\fR
-.ad
-.RS 18n
-system file containing additional role attributes
-.RE
-
-.SH SEE ALSO
-.LP
-\fBauths\fR(1), \fBpasswd\fR(1), \fBprofiles\fR(1), \fBroles\fR(1),
-\fBgroupadd\fR(1M), \fBgroupdel\fR(1M), \fBgroupmod\fR(1M),
-\fBlogins\fR(1M), \fBroleadd\fR(1M), \fBrolemod\fR(1M), \fBuseradd\fR(1M),
-\fBuserdel\fR(1M), \fBusermod\fR(1M), \fBzfs\fR(1M), \fBpasswd\fR(4),
-\fBprof_attr\fR(4), \fBuser_attr\fR(4), \fBattributes\fR(5)
-.SH NOTES
-.LP
-The \fBroledel\fR utility only deletes an account definition that is in the
-local \fB/etc/group\fR, \fB/etc/passwd\fR, \fB/etc/shadow\fR, and
-\fB/etc/user_attr\fR file. file. If a network name service
-is being used to supplement the local \fB/etc/passwd\fR file with
-additional entries, \fBroledel\fR cannot change information supplied by the
-network name service.
diff --git a/usr/src/man/man1m/rolemod.1m b/usr/src/man/man1m/rolemod.1m
deleted file mode 100644
index 320e8baec0..0000000000
--- a/usr/src/man/man1m/rolemod.1m
+++ /dev/null
@@ -1,439 +0,0 @@
-'\" te
-.\" Copyright (c) 2018 Peter Tribble.
-.\" Copyright 1989 AT&T Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH ROLEMOD 1M "Jan 7, 2018"
-.SH NAME
-rolemod \- modify a role's login information on the system
-.SH SYNOPSIS
-.LP
-.nf
-\fBrolemod\fR [\fB-u\fR \fIuid\fR [\fB-o\fR]] [\fB-g\fR \fIgroup\fR] [\fB-G\fR \fIgroup\fR[,\fIgroup\fR]...]
- [\fB-d\fR \fIdir\fR [\fB-m\fR [\fB-z|-Z\fR]]] [\fB-s\fR \fIshell\fR] [\fB-c\fR \fIcomment\fR] [\fB-l\fR \fInew_name\fR]
- [\fB-f\fR \fIinactive\fR] [\fB-e\fR \fIexpire\fR]
- [\fB-A\fR \fIauthorization\fR[,\fIauthorization\fR]...]
- [\fB-P\fR \fIprofile\fR[,\fIprofile\fR]...] [\fB-K\fR \fIkey=value\fR] \fIrole\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBrolemod\fR utility modifies a role's login information on the system. It
-changes the definition of the specified login and makes the appropriate
-login-related system file and file system changes.
-.sp
-.LP
-The system file entries created with this command have a limit of 512
-characters per line. Specifying long arguments to several options can exceed
-this limit.
-.SH OPTIONS
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-A\fR \fIauthorization\fR\fR
-.ad
-.sp .6
-.RS 4n
-One or more comma separated authorizations as defined in \fBauth_attr\fR(4).
-Only a user or role who has \fBgrant\fR rights to the \fBauthorization\fR can
-assign it to an account. This replaces any existing authorization setting. If
-an empty authorization list is specified, the existing setting is removed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-c\fR \fIcomment\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify a comment string. \fIcomment\fR can be any text string. It is generally
-a short description of the login, and is currently used as the field for the
-role's full name. This information is stored in the role's \fB/etc/passwd\fR
-entry.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-d\fR \fIdir\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify the new home directory of the role. It defaults to
-\fIbase_dir/login\fR, where \fIbase_dir\fR is the base directory for new login
-home directories, and \fBlogin\fR is the new login.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-e\fR \fIexpire\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify the expiration date for a role. After this date, no role will be able
-to access this login. The expire option argument is a date entered using one of
-the date formats included in the template file \fB/etc/datemsk\fR. See
-\fBgetdate\fR(3C).
-.sp
-For example, you may enter \fB10/6/90\fR or \fBOctober 6, 1990\fR. A value of
-\fB`` ''\fR defeats the status of the expired date.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR \fIinactive\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify the maximum number of days allowed between uses of a login \fBID\fR
-before that login \fBID\fR is declared invalid. Normal values are positive
-integers. A value of \fB0\fR defeats the status.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-g\fR \fIgroup\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify an existing group's integer \fBID\fR or character-string name. It
-redefines the role's primary group membership.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-G\fR \fIgroup\fR\fR
-.ad
-.sp .6
-.RS 4n
-One or more comma-separated existing groups, specified by integer \fBID\fR or
-character-string name. It redefines the role's supplementary group membership.
-Any duplicate groups between the \fB-g\fR and \fB-G\fR options are ignored.
-No more than \fBNGROUPS_UMAX\fR groups may be specified as defined in
-\fB<sys/param.h>\fR\&.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-K\fR \fIkey=value\fR\fR
-.ad
-.sp .6
-.RS 4n
-Replace existing or add to a role's \fIkey=value\fR pair attributes. Multiple
-\fB-K\fR options can be used to replace or add multiple \fIkey=value\fR pairs.
-However, keys must not be repeated. The generic \fB-K\fR option with the
-appropriate key may be used instead of the specific implied key options
-(\fB-A\fR and \fB-P\fR). See \fBuser_attr\fR(4) for a list of valid
-\fIkey=value\fR pairs.
-.sp
-The keyword \fBtype\fR can be specified with the value \fBrole\fR or the value
-\fBnormal\fR. When using the value \fBnormal\fR, the account changes from a
-role user to a normal user; using the value \fBrole\fR keeps the account a role
-user.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR \fInew_logname\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify the new login name for the role. The \fInew_logname\fR argument is a
-string of no more than eight bytes consisting of characters from the set of
-alphabetic characters, numeric characters, period (\fB\&.\fR), underline
-(\fB_\fR), and hyphen (\fB\(mi\fR). The first character should be alphabetic and
-the field should contain at least one lower case alphabetic character. A
-warning message will be written if these restrictions are not met. A future
-release may refuse to accept login fields that do not meet these
-requirements. The \fInew_logname\fR argument must contain at least one
-character and must not contain a colon (\fB:\fR) or \fBNEWLINE\fR (\fB\en\fR).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-m\fR\fR [\fB-z|-Z\fR]
-.ad
-.sp .6
-.RS 4n
-Move the role's home directory to the new directory specified with the \fB-d\fR
-option. If the directory already exists, it must have permissions
-read/write/execute by \fIgroup\fR, where \fIgroup\fR is the role's primary
-group.
-.sp
-If the role's old home directory was located on a separate \fBZFS\fR file system
-and the \fB/etc/default/useradd\fR file contains the parameter \fBMANAGE_ZFS\fR
-set to the value \fBYES\fR, the file system will be destroyed after the home
-directory is moved. If the parent directory of the role's new home directory is
-located on a separate \fBZFS\fR filesystem and the \fB/etc/default/useradd\fR
-file contains the parameter \fBMANAGE_ZFS\fR set to the value \fBYES\fR, a new
-\fBZFS\fR file system will be created.
-.sp
-If the \fB-z\fR option is specified, \fBrolemod\fR will always try to create a
-new file system for the home directory and destroy the old one.
-.sp
-If the \fB-Z\fR option is specified, a new file system will never be created,
-and the old one will never be destroyed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-o\fR\fR
-.ad
-.sp .6
-.RS 4n
-This option allows the specified \fBUID\fR to be duplicated (non-unique).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-P\fR \fIprofile\fR\fR
-.ad
-.sp .6
-.RS 4n
-One or more comma-separated execution profiles defined in \fBprof_attr\fR(4).
-This replaces any existing profile setting. If an empty profile list is
-specified, the existing setting is removed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR \fIshell\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify the full pathname of the program that is used as the role's shell on
-login. The value of \fIshell\fR must be a valid executable file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-u\fR \fIuid\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify a new \fBUID\fR for the role. It must be a non-negative decimal integer
-less than \fBMAXUID\fR as defined in \fB<sys/param.h>\fR\&. The \fBUID\fR
-associated with the role's home directory is not modified with this option; a
-role will not have access to their home directory until the \fBUID\fR is
-manually reassigned using \fBchown\fR(1).
-.RE
-
-.SH OPERANDS
-.LP
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fB\fBlogin\fR\fR
-.ad
-.sp .6
-.RS 4n
-An existing login name to be modified.
-.RE
-
-.SH EXIT STATUS
-.LP
-In case of an error, \fBrolemod\fR prints an error message and exits with one
-of the following values:
-.sp
-.ne 2
-.na
-\fB\fB2\fR\fR
-.ad
-.sp .6
-.RS 4n
-The command syntax was invalid. A usage message for the \fBrolemod\fR command
-is displayed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB3\fR\fR
-.ad
-.sp .6
-.RS 4n
-An invalid argument was provided to an option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB4\fR\fR
-.ad
-.sp .6
-.RS 4n
-The \fIuid\fR given with the \fB-u\fR option is already in use.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB5\fR\fR
-.ad
-.sp .6
-.RS 4n
-The password files contain an error. \fBpwconv\fR(1M) can be used to correct
-possible errors. See \fBpasswd\fR(4).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB6\fR\fR
-.ad
-.sp .6
-.RS 4n
-The login to be modified does not exist, the \fIgroup\fR does not exist, or the
-login shell does not exist.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB8\fR\fR
-.ad
-.sp .6
-.RS 4n
-The login to be modified is in use.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB9\fR\fR
-.ad
-.sp .6
-.RS 4n
-The \fInew_logname\fR is already in use.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB10\fR\fR
-.ad
-.sp .6
-.RS 4n
-Cannot update the \fB/etc/group\fR or \fB/etc/user_attr\fR file. Other update
-requests will be implemented.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB11\fR\fR
-.ad
-.sp .6
-.RS 4n
-Insufficient space to move the home directory (\fB-m\fR option). Other update
-requests will be implemented.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB12\fR\fR
-.ad
-.sp .6
-.RS 4n
-Unable to complete the move of the home directory to the new home directory.
-.RE
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/etc/default/useradd\fR\fR
-.ad
-.sp .6
-.RS 4n
-configuration file for user and role administrative commands
-.RE
-
-.ne 2
-.na
-\fB\fB/etc/group\fR\fR
-.ad
-.sp .6
-.RS 4n
-system file containing group definitions
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/datemsk\fR\fR
-.ad
-.sp .6
-.RS 4n
-system file of date formats
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/passwd\fR\fR
-.ad
-.sp .6
-.RS 4n
-system password file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/shadow\fR\fR
-.ad
-.sp .6
-.RS 4n
-system file containing users' and roles' encrypted passwords and related
-information
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/user_attr\fR\fR
-.ad
-.sp .6
-.RS 4n
-system file containing additional user and role attributes
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-.LP
-\fBchown\fR(1), \fBpasswd\fR(1), \fBgroupadd\fR(1M),
-\fBgroupdel\fR(1M), \fBgroupmod\fR(1M), \fBlogins\fR(1M), \fBpwconv\fR(1M),
-\fBroleadd\fR(1M), \fBroledel\fR(1M), \fBuseradd\fR(1M), \fBuserdel\fR(1M),
-\fBusermod\fR(1M), \fBzfs\fR(1M), \fBgetdate\fR(3C), \fBauth_attr\fR(4),
-\fBpasswd\fR(4), \fBprof_attr\fR(4), \fBuser_attr\fR(4), \fBattributes\fR(5)
diff --git a/usr/src/man/man1m/root_archive.1m b/usr/src/man/man1m/root_archive.1m
deleted file mode 100644
index 1b59d93e78..0000000000
--- a/usr/src/man/man1m/root_archive.1m
+++ /dev/null
@@ -1,97 +0,0 @@
-'\" te
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.\" Copyright 2012 Nexenta Systems, Inc. All rights reserved.
-.TH ROOT_ARCHIVE 1M "Sep 9, 2009"
-.SH NAME
-root_archive \- manage bootable miniroot archives
-.SH SYNOPSIS
-.LP
-.nf
-\fB/boot/solaris/bin/root_archive\fR pack \fIarchive\fR \fIroot\fR
-.fi
-
-.LP
-.nf
-\fB/boot/solaris/bin/root_archive\fR unpack \fIarchive\fR \fIroot\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBroot_archive\fR utility is used to manipulate boot archives.
-The utility can pack and unpack boot archives and image miniroots. Both \fBufs\fR and \fBhsfs\fR
-(\fBiso9660\fR) format archives can be unpacked, although only \fBufs\fR format
-is generated when packing.
-.sp
-.LP
-For normal, boot-related system administration, \fBbootadm\fR(1M) is recommended.
-.SH SUBCOMMANDS
-.sp
-.LP
-The \fBroot_archive\fR command has the following subcommands:
-.sp
-.ne 2
-.na
-\fB\fBpack\fR \fIarchive\fR \fIroot\fR\fR
-.ad
-.RS 21n
-Pack the contents of the root directory into the boot archive \fIarchive\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBunpack\fR \fIarchive\fR \fIroot\fR\fR
-.ad
-.sp .6
-.RS 21n
-Unpack the contents of the boot archive named \fIarchive\fR to the directory
-named \fIroot\fR.
-.RE
-
-.SH EXIT STATUS
-.sp
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 5n
-The command completed successfully.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB1\fR\fR
-.ad
-.RS 5n
-The command exited due to an error.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Committed
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBcpio\fR(1), \fBbootadm\fR(1M), \fBmount\fR(1M), \fBattributes\fR(5),
-\fBlofi\fR(7D)
diff --git a/usr/src/man/man1m/route.1m b/usr/src/man/man1m/route.1m
deleted file mode 100644
index 1e470b2fc0..0000000000
--- a/usr/src/man/man1m/route.1m
+++ /dev/null
@@ -1,769 +0,0 @@
-'\" te
-.\" Copyright (C) 2009, Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright (C) 2021 H. William Welliver
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH ROUTE 1M "August 29, 2021"
-.SH NAME
-route \- manually manipulate the routing tables
-.SH SYNOPSIS
-.nf
-\fBroute\fR [\fB-fnvq\fR] [\fB-z\fR \fIzone\fR] \fIsub-command\fR [ [\fImodifiers\fR] \fIargs\fR]
-.fi
-
-.LP
-.nf
-\fBroute\fR [\fB-fnvq\fR] [\fB-z\fR \fIzone\fR] [\fB-p\fR [\fB-R\fR \fIroot-dir\fR]] add | delete [\fImodifiers\fR] \fIdestination\fR \fIgateway\fR
- [\fIargs\fR]
-.fi
-
-.LP
-.nf
-\fBroute\fR [\fB-fnvq\fR] [\fB-z\fR \fIzone\fR] change | get [\fImodifiers\fR] \fIdestination\fR
- [\fIgateway\fR [\fIargs\fR]]
-.fi
-
-.LP
-.nf
-\fBroute\fR [\fB-fn\fR] [\fB-z\fR \fIzone\fR] monitor [\fImodifiers\fR]
-.fi
-
-.LP
-.nf
-\fBroute\fR [\fB-fnvq\fR] [\fB-z\fR \fIzone\fR] flush [\fImodifiers\fR]
-.fi
-
-.LP
-.nf
-\fBroute\fR \fB-p\fR [\fB-R\fR \fIroot-dir\fR] [\fB-z\fR \fIzone\fR] show
-.fi
-
-.SH DESCRIPTION
-\fBroute\fR manually manipulates the network routing tables. These tables are
-normally maintained by the system routing daemon, such as \fBin.routed\fR(1M)
-and \fBin.ripngd\fR(1M).
-.sp
-.LP
-\fBroute\fR supports a limited number of general options, but a rich command
-language. Users can specify an arbitrary request that can be delivered by means
-of the programmatic interface discussed in \fBroute\fR(7P).
-.sp
-.LP
-\fBroute\fR uses a routing socket and the new message types \fBRTM_ADD\fR,
-\fBRTM_DELETE\fR, \fBRTM_GET\fR, and \fBRTM_CHANGE\fR. While only superusers
-can modify routing tables, the \fBRTM_GET\fR operation is allowed for
-non-privileged users.
-.SH OPTIONS
-.ne 2
-.na
-\fB\fB-f\fR\fR
-.ad
-.RS 15n
-Flush the routing tables of all gateway entries. If you use the \fB-f\fR option
-in conjunction with any of the \fBroute\fR subcommands, \fBroute\fR flushes
-the gateways before performing the subcommand. Specify the table to flush by
-placing the \fBinet\fR or \fBinet6\fR modifier immediately after the \fB-f\fR
-option. If unspecified, flushing IPv4 (\fBinet\fR) routes is the default.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR\fR
-.ad
-.RS 15n
-Prevent attempts to print host and network names symbolically when reporting
-actions. This option is useful when name servers are unavailable.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR\fR
-.ad
-.RS 15n
-Make changes to the network route tables persistent across system restarts. The
-operation is applied to the network routing tables first and, if successful, is
-then applied to the list of saved routes used at system startup. In determining
-whether an operation was successful, a failure to add a route that already
-exists or to delete a route that is not in the routing table is ignored. At
-startup, any directly reachable routes (those specified with the
-\fB-interface\fR or \fB-iface\fR options) will be created first, followed by
-any remaining routes. Particular care should be taken when using host or network
-names in persistent routes, as network-based name resolution services are not
-available at the time routes are added at startup.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-q\fR\fR
-.ad
-.RS 15n
-Suppress all output.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-R\fR \fIroot-dir\fR\fR
-.ad
-.RS 15n
-Specify an alternate root directory where \fBroute\fR applies changes. This
-option is ignored unless used in conjunction with the \fB-p\fR option. When
-\fB-R\fR is specified, route changes are applied only to the list of saved
-routes to be used at startup, \fBnot\fR to the network routing tables. In
-addition, certain checks, such as the existence of network interfaces used with
-\fB-ifp\fR, are skipped.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.RS 15n
-Print additional details in verbose mode.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-z\fR \fIzone\fR\fR
-.ad
-.RS 15n
-Apply commands to the zone \fIzone\fR. The zone must be running and must not
-be a shared-\fBIP\fR zone.
-.RE
-
-.SS "Subcommands"
-The following subcommands are supported:
-.sp
-.ne 2
-.na
-\fB\fBadd\fR\fR
-.ad
-.RS 11n
-Add a route.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBchange\fR\fR
-.ad
-.RS 11n
-Change aspects of a route (such as its gateway).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdelete\fR\fR
-.ad
-.RS 11n
-Delete a specific route.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBflush\fR\fR
-.ad
-.RS 11n
-Remove all gateway entries from the routing table.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBget\fR\fR
-.ad
-.RS 11n
-Look up and display the route for a destination.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmonitor\fR\fR
-.ad
-.RS 11n
-Continuously report any changes to the routing information base, routing lookup
-misses, or suspected network partitionings.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBshow\fR\fR
-.ad
-.RS 11n
-Display the list of routes to be applied at system startup. Can be used only in
-conjunction with the \fB-p\fR option.
-.RE
-
-.sp
-.LP
-The \fBadd\fR and \fBdelete\fR subcommands have the following syntax:
-.sp
-.in +2
-.nf
-route [ -fnvq ] cmd \fIdestination\fR \fIgateway\fR [metric/netmask]
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-where \fIcmd\fR is \fBadd\fR or \fBdelete\fR, \fIdestination\fR is the
-destination host or network, and \fIgateway\fR is the next-hop intermediary
-through which packets should be routed. Modifiers described in \fBOPERANDS\fR
-can be placed anywhere on the command line.
-.sp
-.LP
-The \fBget\fR and \fBchange\fR subcommands have the following syntax:
-.sp
-.in +2
-.nf
-route [ -fnvq ] \fIcmd\fR \fIdestination\fR [\fIgateway\fR [metric/netmask]]
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-where \fIcmd\fR is \fBget\fR or \fBchange\fR, \fIdestination\fR is the
-destination host or network, and \fIgateway\fR is the next-hop intermediary
-through which packets should be routed. Modifiers described in \fBOPERANDS\fR
-can be placed anywhere on the command line.
-.sp
-.LP
-The \fBmonitor\fR subcommand has the following syntax:
-.sp
-.in +2
-.nf
-route monitor [ -inet | -inet6 ]
-.fi
-.in -2
-.sp
-
-.SH OPERANDS
-\fBroute\fR executes its subcommands on routes to destinations by way of
-gateways.
-.SS "Destinations and Gateways"
-By default, destination and gateway addresses are interpreted as IPv4
-addresses. All symbolic names are tried first as a host name, using
-\fBgetipnodebyname\fR(3SOCKET). If this lookup fails in the AF_INET case,
-\fBgetnetbyname\fR(3SOCKET) interprets the name as that of a network.
-.sp
-.LP
-Including an optional modifier on the command line before the address changes
-how the \fBroute\fR subcommand interprets it.
-.sp
-.LP
-The following modifiers are supported:
-.sp
-.ne 2
-.na
-\fB\fB-inet\fR\fR
-.ad
-.RS 10n
-Force the address to be interpreted as an IPv4 address, that is, under the
-\fBAF_INET\fR address family.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-inet6\fR\fR
-.ad
-.RS 10n
-Force the address to be interpreted as an IPv6 address, that is, under the
-\fBAF_INET6\fR address family.
-.RE
-
-.sp
-.LP
-For IPv4 addresses, routes to a particular host are by default distinguished
-from those to a network by interpreting the Internet address specified as the
-destination. If the destination has a \fBlocal address part\fR (that is, the
-portion not covered by the netmask) of \fB0\fR, or if the destination is
-resolved as the symbolic name of a network, then the route is assumed to be to
-a network; otherwise, it is presumed to be a route to a host.
-.sp
-.LP
-You can force this selection by using one of the following modifiers:
-.sp
-.ne 2
-.na
-\fB\fB-host\fR\fR
-.ad
-.RS 9n
-Force the destination to be interpreted as a host.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-net\fR\fR
-.ad
-.RS 9n
-Force the destination to be interpreted as a network.
-.RE
-
-.sp
-.LP
-For example:
-.sp
-
-.sp
-.TS
-c c
-l l .
-Destination Destination Equivalent
-_
-\fB128.32\fR \fB-host\fR \fB128.0.0.32\fR
-\fB128.32.130\fR \fB-host\fR \fB128.32.0.130\fR
-\fB-net\fR \fB128.32\fR \fB128.32.0.0\fR
-\fB-net\fR \fB128.32.130\fR \fB\fR\fB128.32.130.0\fR
-.TE
-
-.sp
-.LP
-Two modifiers avoid confusion between addresses and keywords (for example,
-\fBhost\fR used as a symbolic host name). You can distinguish a
-\fIdestination\fR by preceding it with the \fB-dst\fR modifier. You can
-distinguish a gateway address by using the \fB-gateway\fR modifier. If the
-destination is directly reachable by way of an interface requiring no
-intermediary IP router to act as a gateway, this can be indicated by using the
-\fB-interface\fR or \fB-iface\fR modifier.
-.sp
-.LP
-In the following example, the route does not refer to an external gateway
-(router), but rather to one of the machine's interfaces. Packets with IP
-destination addresses matching the destination and mask on such a route are
-sent out on the interface identified by the gateway address. For interfaces
-using the ARP protocol, this type of route is used to specify that all matching
-destinations are local to the physical link. That is, a host could be
-configured to ARP for all addresses, without regard to the configured interface
-netmask, by adding a default route using this command. For example:
-.sp
-.in +2
-.nf
-example# route add default \fIhostname\fR -interface
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-where gateway address \fIhostname\fR is the name or IP address associated with
-the network interface over which all matching packets should be sent. On a host
-with a single network interface, \fIhostname\fR is usually the same as the
-\fInodename\fR returned by the \fBuname -n\fR command. See \fBuname\fR(1).
-.sp
-.LP
-For backward compatibility with older systems, directly reachable routes can
-also be specified by placing a \fB0\fR after the gateway address:
-.sp
-.in +2
-.nf
-example# route add default \fIhostname\fR 0
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-This value was once a route metric, but this metric is no longer used. If the
-value is specified as \fB0\fR, then the destination is directly reachable
-(equivalent to specifying \fB-\fR\fBinterface\fR). If it is non-zero but cannot
-be interpreted as a subnet mask, then a gateway is used (default).
-.sp
-.LP
-With the \fBAF_INET\fR address family or an IPv4 address, a separate subnet
-mask can be specified. This can be specified in one of the following ways:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-IP address following the gateway address . This is typically specified in
-\fIdecimal dot\fR notation as for \fBinet_addr\fR(3C) rather than in
-symbolic form.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-IP address following the \fB-netmask\fR qualifier.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Slash character and a decimal length appended to the destination address.
-.RE
-.sp
-.LP
-If a subnet mask is not specified, the mask used is the subnet mask of the
-output interface selected by the gateway address, if the classful network of
-the destination is the same as the classful network of the interface.
-Otherwise, the classful network mask for the destination address is used.
-.sp
-.LP
-Each of the following examples creates an IPv4 route to the destination
-\fB192.0.2.32\fR subnet with a subnet mask of \fB255.255.255.224\fR:
-.sp
-.in +2
-.nf
-example# route add 192.0.2.32/27 somegateway
-example# route add 192.0.2.32 -netmask 255.255.255.224 somegateway
-example# route add 192.0.2.32 somegateway 255.255.255.224
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-For IPv6, only the slash format is accepted. The following example creates an
-IPv6 route to the destination \fB33fe::\fR with a netmask of \fB16\fR one-bits
-followed by 112 zero-bits.
-.sp
-.in +2
-.nf
-example# route add -inet6 3ffe::/16 somegateway
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-In cases where the gateway does not uniquely identify the output interface (for
-example, when several interfaces have the same address), you can use the
-\fB-ifp\fR \fIifname\fR modifier to specify the interface by name. For
-example, \fB\fR\fB-ifp\fR \fBlo0\fR associates the route with the \fBlo0\fR
-interface. If the named interface is an underlying interface in an IPMP (IP
-multipathing) group, then requests to add a route will automatically be
-translated to the corresponding IPMP IP interface, and requests to delete or
-change a route on an underlying interface will fail.
-.SS "Routing Flags"
-Routes have associated flags that influence operation of the protocols when
-sending to destinations matched by the routes. These flags can be set (and in
-some cases cleared, indicated by \fB~\fR) by including the following modifiers
-on the command line:
-.sp
-
-.sp
-.TS
-c c c
-l l l .
-Modifier Flag Description
-_
-\fB-interface\fR \fB~RTF_GATEWAY\fR Destination is directly reachable
-\fB-iface\fR \fB~RTF_GATEWAY\fR Alias for interface modifier
-\fB-static\fR \fBRTF_STATIC\fR Manually added route
-\fB-nostatic\fR \fB~RTF_STATIC\fR T{
-Pretend route was added by kernel or routing daemon
-T}
-\fB-reject\fR \fBRTF_REJECT\fR Emit an ICMP unreachable when matched
-\fB-blackhole\fR \fBRTF_BLACKHOLE\fR Silently discard packets during updates
-\fB-proto1\fR \fBRTF_PROTO1\fR Set protocol specific routing flag #1
-\fB-proto2\fR \fBRTF_PROTO2\fR Set protocol specific routing flag #2
-\fB-private\fR \fBRTF_PRIVATE\fR Do not advertise this route
-\fB-multirt\fR \fBRTF_MULTIRT\fR Creates the specified redundant route
-\fB-setsrc\fR \fBRTF_SETSRC\fR Assigns the default source address
-.TE
-
-.sp
-.LP
-The optional modifiers \fB-rtt\fR, \fB-rttvar\fR, \fB-sendpipe\fR,
-\fB-recvpipe\fR, \fB-mtu\fR, \fB-hopcount\fR, \fB-expire\fR, and
-\fB-ssthresh\fR provide initial values to quantities maintained in the routing
-entry by transport level protocols, such as \fBTCP\fR. These can be
-individually locked either by preceding each modifier to be locked by the
-\fB-lock\fR meta-modifier, or by specifying that all ensuing metrics can be
-locked by the \fB-lockrest\fR meta-modifier.
-.sp
-.LP
-Some transport layer protocols can support only some of these metrics. The
-following optional modifiers are supported:
-.sp
-.ne 2
-.na
-\fB\fB-expire\fR\fR
-.ad
-.RS 13n
-Lifetime for the entry. This optional modifier is not currently supported.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-hopcount\fR\fR
-.ad
-.RS 13n
-Maximum hop count. This optional modifier is not currently supported.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-mtu\fR\fR
-.ad
-.RS 13n
-Maximum MTU in bytes.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-recvpipe\fR\fR
-.ad
-.RS 13n
-Receive pipe size in bytes.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-rtt\fR\fR
-.ad
-.RS 13n
-Round trip time in microseconds.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-rttvar\fR\fR
-.ad
-.RS 13n
-Round trip time variance in microseconds.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-sendpipe\fR\fR
-.ad
-.RS 13n
-Send pipe size in bytes.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-ssthresh\fR\fR
-.ad
-.RS 13n
-Send pipe size threshold in bytes.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-secattr\fR\fR
-.ad
-.RS 13n
-Security attributes of the route. This modifier is available only if the system
-is configured with the Solaris Trusted Extensions feature.
-.sp
-The \fB-secattr\fR modifier has the following format:
-.sp
-.in +2
-.nf
-min_sl=\fIval\fR,max_sl=\fIval\fR,doi=\fIval\fR,cipso
-.fi
-.in -2
-
-or:
-.sp
-.in +2
-.nf
-sl=VAL,doi=VAL,cipso
-.fi
-.in -2
-
-In the first form, above, the \fIval\fR for \fBmin_sl\fR and \fBmax_sl\fR is a
-sensitivity label in either hex or string form. The \fIval\fR for \fBdoi\fR is
-a non-negative integer. The route will apply only for packets with the same
-domain of interpretation as defined by the \fBdoi\fR value and within the
-accreditation range defined by the \fBmin_sl\fR and \fBmax_sl\fR values. The
-\fBcipso\fR keyword is optional and set by default. Valid \fBmin_sl\fR,
-\fBmax_sl\fR and \fBdoi\fR keyword/value pairs are mandatory. Note that if
-\fIval\fR contains a space, it must be protected by double quotes.
-.sp
-The second form, above, is equivalent to specifying the first form with the
-same \fBVAL\fR for \fBmin_sl\fR and \fBmax_sl\fR. The second form should be
-used for the \fBget\fR command, because \fBget\fR uses only a single
-sensitivity label.
-.RE
-
-.SS "Compatibility"
-The modifiers \fBhost\fR and \fBnet\fR are taken to be equivalent to
-\fB-\fR\fBhost\fR and \fB-net\fR\fB\fR. To specify a symbolic address that
-matches one of these names, use the \fBdst\fR or \fBgateway\fR keyword to
-distinguish it. For example: \fB\fR\fB-dst\fR \fBhost\fR
-.sp
-.LP
-The following two flags are also accepted for compatibility with older systems,
-but have no effect.
-.sp
-
-.sp
-.TS
-c c
-l l .
-Modifier Flag
-_
-\fB-cloning\fR RTF_CLONING
-\fB-xresolve\fR RTF_XRESOLVE
-.TE
-
-.sp
-.LP
-The \fB\fR\fB-ifa\fR \fBhostname\fR modifier is also accepted, but has no
-effect.
-.SH FILES
-.ne 2
-.na
-\fB\fB/etc/defaultrouter\fR\fR
-.ad
-.RS 22n
-List of default routers
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/hosts\fR\fR
-.ad
-.RS 22n
-List of host names and net addresses
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/networks\fR\fR
-.ad
-.RS 22n
-List of network names and addresses
-.RE
-
-.SH SEE ALSO
-\fBuname\fR(1), \fBin.ripngd\fR(1M), \fBin.routed\fR(1M), \fBnetstat\fR(1M),
-\fBrouted\fR(1M), \fBioctl\fR(2), \fBgetipnodebyname\fR(3SOCKET),
-\fBgetnetbyname\fR(3SOCKET), \fBinet_addr\fR(3C), \fBdefaultrouter\fR(4),
-\fBhosts\fR(4), \fBnetworks\fR(4), \fBattributes\fR(5), \fBARP\fR(7P),
-\fBip\fR(7P), \fBroute\fR(7P), \fBrouting\fR(7P)
-.SH DIAGNOSTICS
-.ne 2
-.na
-\fB\fBadd\fR [ \fBhost\fR\||\ \fBnetwork\|]\fR \fIdestination\fR:\fIgateway\fR
-\fIflags\fR\fR
-.ad
-.sp .6
-.RS 4n
-The specified route is being added to the tables. The values printed are from
-the routing table entry supplied in the \fBioctl\fR(2) call. If the gateway
-address used was not the primary address of the gateway (the first one returned
-by \fBgetipnodebyname\fR(3SOCKET)) the gateway address is printed numerically
-as well as symbolically.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdelete\fR [ \fBhost\fR\||\ \fBnetwork\fR\|]
-\fIdestination\fR:\fIgateway\fR \fIflags\fR\fR
-.ad
-.br
-.na
-\fB\fBchange\fR [ \fBhost\fR\||\ \fBnetwork\fR\|]
-\fIdestination\fR:\fIgateway\fR \fIflags\fR\fR
-.ad
-.sp .6
-.RS 4n
-As \fBadd\fR, but when deleting or changing an entry.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIdestination\fR \fBdone\fR\fR
-.ad
-.sp .6
-.RS 4n
-When the \fB-f\fR flag is specified, or the \fBflush\fR subcommand is used,
-each routing table entry deleted is indicated with a message of this form.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBNetwork is unreachable\fR\fR
-.ad
-.sp .6
-.RS 4n
-An attempt to add a route failed because the gateway listed was not on a
-directly-connected network. Give the next-hop gateway instead.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnot in table\fR\fR
-.ad
-.sp .6
-.RS 4n
-A \fBdelete\fR operation was attempted for an entry that is not in the table.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBentry exists\fR\fR
-.ad
-.sp .6
-.RS 4n
-An \fBadd\fR operation was attempted for a route that already exists in the
-kernel.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrouting table overflow\fR\fR
-.ad
-.sp .6
-.RS 4n
-An operation was attempted, but the system was unable to allocate memory to
-create the new entry.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBinsufficient privileges\fR\fR
-.ad
-.sp .6
-.RS 4n
-An attempt to add, delete, change, or flush a route failed because the calling
-process does not have appropriate privileges.
-.RE
-
-.SH NOTES
-Specifying that destinations are local (with the \fB-interface\fR modifier)
-assumes that the routers implement \fBproxy ARP\fR, meaning that they respond
-to ARP queries for all reachable destinations. Normally, using either router
-discovery or RIP is more reliable and scalable than using proxy ARP. See
-\fBin.routed\fR(1M) for information related to RIP.
-.sp
-.LP
-Combining the all destinations are local route with subnet or network routes
-can lead to unpredictable results. The search order as it relates to the all
-destinations are local route are undefined and can vary from release to
-release.
diff --git a/usr/src/man/man1m/routeadm.1m b/usr/src/man/man1m/routeadm.1m
deleted file mode 100644
index a3496050e6..0000000000
--- a/usr/src/man/man1m/routeadm.1m
+++ /dev/null
@@ -1,547 +0,0 @@
-'\" te
-.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH ROUTEADM 1M "May 13, 2017"
-.SH NAME
-routeadm \- IP forwarding and routing configuration
-.SH SYNOPSIS
-.LP
-.nf
-\fBrouteadm\fR [\fB-p\fR [\fIoption\fR]]
-.fi
-
-.LP
-.nf
-\fBrouteadm\fR [\fB-R\fR \fIroot-dir\fR] [\fB-e\fR \fIoption\fR ...] [\fB-d\fR \fIoption\fR...]
- [\fB-r\fR \fIoption\fR...] [\fB-s\fR \fIvar\fR=\fIvalue\fR]
-.fi
-
-.LP
-.nf
-\fBrouteadm\fR [\fB-l\fR \fIfmri\fR]
-.fi
-
-.LP
-.nf
-\fBrouteadm\fR [\fB-m\fR \fIfmri\fR \fIkey\fR=\fIvalue\fR [\fIkey\fR=\fIvalue\fR]...]
-.fi
-
-.LP
-.nf
-\fBrouteadm\fR [\fB-u\fR]
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBrouteadm\fR command is used to administer system-wide configuration for
-IP forwarding and routing. IP forwarding is the passing of IP packets from one
-network to another; IP routing is the use of a routing protocol to determine
-routes.
-.sp
-.LP
-IP forwarding and routing functions are also represented as services within the
-service management facility (SMF), and can be administered by means of
-\fBsvcadm\fR(1M) also, using the following fault management resource
-identifiers (FMRIs):
-.sp
-.in +2
-.nf
-svc:/network/ipv4-forwarding:default
-svc:/network/ipv6-forwarding:default
-svc:/network/routing/route:default
-svc:/network/routing/ripng:default
-.fi
-.in -2
-
-.sp
-.LP
-See EXAMPLES for relevant examples.
-.sp
-.LP
-In addition to enabling and disabling routing and forwarding, \fBrouteadm\fR is
-used to interact with SMF-based routing daemon services. Routing daemon
-services are identified by the presence of a \fBrouteadm\fR application
-property group, which \fBrouteadm\fR uses in administering the given service.
-Routing daemon services can also specify properties relating to their operation
-in the \fBrouting\fR application property group; these can be modified by means
-of routeadm -m. If an FMRI for a service without such a property group is
-specified, an error is issued and the operation is not carried out. If a
-routing daemon has not been converted to SMF, the \fBipv4\fI[or
-6]\fR-routing-daemon\fR, \fBipv4\fI[or 6]\fR-routing-daemon-args\fR, and
-\fBipv4\fI[or 6]\fR-routing-stop-cmd\fR variables can be used to specify the
-appropriate daemon for IPv4 or IPv6 routing. \fBrouteadm\fR will then run that
-daemon using the \fBsvc:/network/routing/legacy-routing:ipv4\fR\fI[or 6]\fR
-service as appropriate. This conversion process occurs when you issue an enable
-(\fB-e\fR), disable (\fB-d\fR) or an update (\fB-u\fR) command.
-.sp
-.LP
-The first usage, in the SYNOPSIS above, reports the current configuration.
-.SH OPTIONS
-.LP
-The following command-line options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-p\fR [\fIoption\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Print the configuration in parsable format. If \fIoption\fR is specified, only
-the configuration for the specified option or variable is displayed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-R\fR \fIroot-dir\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify an alternate root directory where \fBrouteadm\fR applies changes.
-.LP
-Note -
-.sp
-.RS 2
-The root file system of any non-global zones must not be referenced with the
-\fB-R\fR option. Doing so might damage the global zone's file system, might
-compromise the security of the global zone, and might damage the non-global
-zone's file system. See \fBzones\fR(5).
-.RE
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-e\fR \fIoption\fR...\fR
-.ad
-.sp .6
-.RS 4n
-Enable the specified option. The effect is to prepare the associated services
-(\fBsvc:/network/ipv4-forwarding:default\fR in the case of
-\fBipv4-forwarding\fR) for enabling. By means of the \fBrouting-svcs\fR
-variable, the routing daemons are specified to be enabled on subsequent boot or
-when \fBrouteadm\fR \fB-u\fR is run.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-d\fR \fIoption\fR...\fR
-.ad
-.sp .6
-.RS 4n
-Disable the specified option. The effect is to prepare the associated services
-(\fBsvc:/network/ipv4-forwarding:default\fR in the case of
-\fBipv4-forwarding\fR) for enabling. By means of the \fBrouting-svcs\fR
-variable, the routing daemons are specified to be disabled on subsequent boot
-or when \fBrouteadm\fR \fB-u\fR is run.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR \fIfmri\fR\fR
-.ad
-.sp .6
-.RS 4n
-List all properties in the routing application property group for the SMF
-routing daemon service.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-m\fR \fIfmri\fR\ \fIkey\fR=\fIvalue\fR\fR
-.ad
-.sp .6
-.RS 4n
-Change property value of property \fIkey\fR to \fIvalue\fR in routing
-application property group for the SMF routing daemon service. For multi-valued
-properties, the property name can be used multiple times in the modify
-operation, and each associated value will be added.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-r\fR \fIoption...\fR\fR
-.ad
-.sp .6
-.RS 4n
-Revert the specified option to the system default. The system defaults are
-specified in the description of each \fIoption\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-u\fR\fR
-.ad
-.sp .6
-.RS 4n
-Apply the currently configured options to the running system. These options
-might include enabling or disabling IP forwarding and launching or killing
-routing daemons, if any are specified. It does not alter the state of the
-system for those settings that have been set to default. This option is meant
-to be used by administrators who do not want to reboot to apply their changes.
-In addition, this option upgrades non-SMF configurations from the invocations
-of daemon stop commands, which might include a set of arguments, to a simple
-enabling of the appropriate service.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR \fIkey\fR=\fIvalue\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify string values for specific variables in a comma-separated list with no
-intervening spaces. If invalid options are specified, a warning message is
-displayed and the program exits. The following variables can be specified:
-.sp
-.ne 2
-.na
-\fB\fBrouting-svcs=\fR\fIfmrilist\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the routing daemon services to be enabled. Routing daemon services
-are determined to be IPv4 or IPv6 (and so enabled or disabled when
-\fBrouteadm\fR \fB-e\fR/\fB-d\fR \fBipv4\fR\fI(6)\fR\fB-routing\fR is run) on
-the basis of property values in the \fBrouteadm\fR application property group.
-Default: \fBroute:default ripng:default\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBipv4-routing-daemon=\fI<full_path_to_routing_daemon>\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the routing daemon to be started when \fBipv4-routing\fR is enabled.
-The routing daemon specified must be an executable binary or shell-script. If
-the specified program maps to an SMF service, the service will be used, and
-daemon arguments to the program will be transferred to the properties of the
-service at enable time. Default: \fB""\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBipv4-routing-daemon-args=\fI<args>\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the startup arguments to be passed to the \fBipv4-routing-daemon\fR
-when \fBipv4-routing\fR is enabled. Default: no arguments
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBipv4-routing-stop-cmd=\fI<command>\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the command to be executed to stop the routing daemon when
-\fBipv4-routing\fR is disabled. \fI<command>\fR can be an executable binary or
-shell-script, or a string that can be parsed by \fBsystem\fR(3C). Default:
-\fB""\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBipv6-routing-daemon=\fI<full_path_to_routing_daemon>\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the routing daemon to be started when \fBipv6-routing\fR is enabled.
-The routing daemon specified must be an executable binary or shell-script. If
-the specified program maps to an SMF service, the service will be used, and
-daemon arguments to the program will be transferred to the properties of the
-service at enable time. Default: \fB""\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBipv6-routing-daemon-args=\fI<args>\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the startup arguments to be passed to the \fBipv6-routing-daemon\fR
-when \fBipv6-routing\fR is enabled. Default: \fB""\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBipv6-routing-stop-cmd=\fI<command>\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the command to be executed to stop the routing daemon when
-\fBipv6-routing\fR is disabled. \fI<command>\fR can be an executable binary or
-shell-script, or a string that can be parsed by \fBsystem\fR(3C). Default:
-\fB""\fR
-.RE
-
-.RE
-
-.sp
-.LP
-Multiple \fB-e\fR, \fB-d\fR, and \fB-r\fR options can be specified on the
-command line. Changes made by \fB-e\fR, \fB-d\fR, and \fB-r\fR are persistent,
-but are not applied to the running system unless \fBrouteadm\fR is called later
-with the \fB-u\fR option.
-.sp
-.LP
-Use the following options as arguments to the \fB-e\fR, \fB-d\fR, and \fB-r\fR
-options (shown above as \fIoption...\fR).
-.sp
-.ne 2
-.na
-\fB\fBipv4-forwarding\fR\fR
-.ad
-.sp .6
-.RS 4n
-Controls the global forwarding configuration for all IPv4 interfaces. The
-system default is \fBdisabled\fR. If enabled, IP will forward IPv4 packets to
-and from interfaces when appropriate. If disabled, IP will not forward IPv4
-packets to and from interfaces when appropriate. The SMF service associated
-with this configuration variable is \fBsvc:/network/routing/ipv4-forwarding\fR.
-This service will be enabled or disabled as appropriate when \fBrouteadm\fR is
-called with the \fBu\fR option. As an alternative, you can use
-\fBsvcadm\fR(1M). Services that require \fBipv4-forwarding\fR to be enabled
-should specify a dependency on this service.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBipv4-routing\fR\fR
-.ad
-.sp .6
-.RS 4n
-Determines whether an IPv4 routing daemon is run. The system default is
-\fBenabled\fR unless the \fB/etc/defaultrouter\fR file exists (see
-\fBdefaultrouter\fR(4)), in which case the default is \fBdisabled\fR. The value
-of this option reflects the state of all IPv4 routing services, such that if
-any IPv4 routing service is enabled, \fBipv4-routing\fR is enabled. This allows
-users to interact with routing services using \fBsvcadm\fR(1M), as well as
-through \fBrouteadm\fR. IPv4 routing services, specified by means of the
-\fBrouting-svcs\fR variable, will be prepared for enable on next boot when the
-user explicitly enables \fBipv4-routing\fR. The SMF routing daemon service for
-\fBin.routed\fR (\fBsvc:/network/routing/route:default\fR) is specified by
-default.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBipv6-forwarding\fR\fR
-.ad
-.sp .6
-.RS 4n
-Controls the global forwarding configuration for all IPv6 interfaces. The
-system default is \fBdisabled\fR. If enabled, IP will forward IPv6 packets to
-and from interfaces when appropriate. If disabled, IP will not forward IPv6
-packets to and from interfaces when appropriate. The SMF service associated
-with this configuration variable is \fBsvc:/network/routing/ipv6-forwarding\fR.
-This service will be enabled or disabled as appropriate when \fBrouteadm\fR is
-called with the \fB-u\fR option, or \fBsvcadm\fR(1M) is used. Services that
-require \fBipv6-forwarding\fR to be enabled should specify a dependency on this
-service.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBipv6-routing\fR\fR
-.ad
-.sp .6
-.RS 4n
-Determines whether an IPv6 routing daemon is run. The system default is
-\fBdisabled\fR. The value of this option reflects the state of all IPv6 routing
-services, such that, if any IPv6 routing service is enabled, \fBipv6-routing\fR
-is enabled. This allows users to interact with routing services via
-\fBsvcadm\fR(1M) as well as through \fBrouteadm\fR. IPv6 routing services,
-specified by means of the \fBrouting-svcs\fR variable, will be prepared for
-enable on next boot when the user explicitly enables \fBipv6-routing\fR. The
-SMF routing daemon service for \fBin.ripngd\fR
-(\fBsvc:/network/routing/ripng:default\fR) is specified by default.
-.RE
-
-.sp
-.LP
-The forwarding and routing settings are related but not mutually dependent. For
-example, a router typically forwards IP packets and uses a routing protocol,
-but nothing would prevent an administrator from configuring a router that
-forwards packets and does not use a routing protocol. In that case, the
-administrator would enable forwarding, disable routing, and populate the
-router's routing table with static routes.
-.sp
-.LP
-The forwarding settings are global settings. Each interface also has an
-\fBIFF_ROUTER\fR forwarding flag that determines whether packets can be
-forwarded to or from a particular interface. That flag can be independently
-controlled by means of \fBifconfig\fR(1M)'s router option. When the global
-forwarding setting is changed (that is, \fB-u\fR is issued to change the value
-from \fBenabled\fR to \fBdisabled\fR or vice-versa), all interface flags in the
-system are changed simultaneously to reflect the new global policy. Interfaces
-configured by means of DHCP automatically have their interface-specific
-\fBIFF_ROUTER\fR flag cleared.
-.sp
-.LP
-When a new interface is plumbed by means of \fBifconfig\fR, the value of the
-interface-specific forwarding flag is set according to the current global
-forwarding value. Thus, the forwarding value forms the "default" for all new
-interfaces.
-.SH EXAMPLES
-.LP
-\fBExample 1 \fREnabling IPv4 Forwarding
-.sp
-.LP
-IPv4 forwarding is disabled by default. The following command enables IPv4
-forwarding:
-
-.sp
-.in +2
-.nf
-example# \fBrouteadm -e ipv4-forwarding\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRApply Configured Settings to the Running System
-.sp
-.LP
-In the previous example, a system setting was changed, but will not take effect
-until the next reboot unless a command such as the following is used:
-
-.sp
-.in +2
-.nf
-example# \fBrouteadm -u\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-An alternative to the above two steps is to simply enable the equivalent SMF
-service:
-
-.sp
-.in +2
-.nf
-example# \fBsvcadm enable svc:/network/ipv4-forwarding\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-\&...or, using the abbreviated FMRI:
-
-.sp
-.in +2
-.nf
-example# \fBsvcadm enable ipv4-forwarding\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRMaking a Setting Revert to its Default
-.sp
-.LP
-To make the setting changed in the first example revert to its default, enter
-the following:
-
-.sp
-.in +2
-.nf
-example# \fBrouteadm -r ipv4-forwarding\fR
-example# \fBrouteadm -u\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 4 \fRStarting \fBin.routed\fR with the \fB-q\fR Flag
-.sp
-.LP
-Setting the \fB-q\fR flag is represented in the SMF service by setting the
-\fBquiet_mode\fR property to true. The following sequence of commands starts
-\fBin.routed\fR with the \fB-q\fR flag:
-
-.sp
-.in +2
-.nf
-example# \fBrouteadm -m route:default quiet_mode=true\fR
-example# \fBrouteadm -e ipv4-routing -u\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-See \fBin.routed\fR(1M) for details of property names and how they relate to
-daemon behavior.
-
-.SH EXIT STATUS
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 7n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB!=0\fR\fR
-.ad
-.RS 7n
-An error occurred while obtaining or modifying the system configuration.
-.RE
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/etc/inet/routing.conf\fR\fR
-.ad
-.RS 26n
-Parameters for IP forwarding and routing. (Not to be edited.)
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Stable
-.TE
-
-.SH SEE ALSO
-.LP
-\fBifconfig\fR(1M), \fBin.routed\fR(1M), \fBsvcadm\fR(1M), \fBgateways\fR(4),
-\fBattributes\fR(5), \fBsmf\fR(5)
diff --git a/usr/src/man/man1m/rpc.bootparamd.1m b/usr/src/man/man1m/rpc.bootparamd.1m
deleted file mode 100644
index d272855c6e..0000000000
--- a/usr/src/man/man1m/rpc.bootparamd.1m
+++ /dev/null
@@ -1,92 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T
-.\" Copyright (C) 2004, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH RPC.BOOTPARAMD 1M "Aug 1, 2004"
-.SH NAME
-rpc.bootparamd, bootparamd \- boot parameter server
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/rpc.bootparamd\fR [\fB-d\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBrpc.bootparamd\fR is a server process that provides information from a
-\fBbootparams\fR database to diskless clients at boot time. See
-\fBbootparams\fR(4)
-.sp
-.LP
-The source for the \fBbootparams\fR database is determined by the
-\fBnsswitch.conf\fR(4) file (on the machine running the \fBrpc.bootparamd\fR
-process).
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-d\fR\fR
-.ad
-.RS 6n
-Display debugging information.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/bootparams\fR\fR
-.ad
-.RS 22n
-boot parameter data base
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/nsswitch.conf\fR\fR
-.ad
-.RS 22n
-configuration file for the name-service switch
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBsvcs\fR(1), \fBsvcadm\fR(1M), \fBbootparams\fR(4), \fBnsswitch.conf\fR(4),
-\fBattributes\fR(5), \fBsmf\fR(5)
-.SH NOTES
-.sp
-.LP
-A diskless client requires service from at least one \fBrpc.bootparamd\fR
-process running on a server that is on the same IP subnetwork as the diskless
-client.
-.sp
-.LP
-Some routines that compare hostnames use case-sensitive string comparisons;
-some do not. If an incoming request fails, verify that the case of the
-hostname in the file to be parsed matches the case of the hostname called for,
-and attempt the request again.
-.sp
-.LP
-The \fBrpc.bootparamd\fR service is managed by the service management facility,
-\fBsmf\fR(5), under the service identifier:
-.sp
-.in +2
-.nf
-svc:/network/rpc/bootparams
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Administrative actions on this service, such as enabling, disabling, or
-requesting restart, can be performed using \fBsvcadm\fR(1M). The service's
-status can be queried using the \fBsvcs\fR(1) command.
diff --git a/usr/src/man/man1m/rpc.rstatd.1m b/usr/src/man/man1m/rpc.rstatd.1m
deleted file mode 100644
index 8ed114845b..0000000000
--- a/usr/src/man/man1m/rpc.rstatd.1m
+++ /dev/null
@@ -1,49 +0,0 @@
-'\" te
-.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH RPC.RSTATD 1M "Nov 4, 2004"
-.SH NAME
-rpc.rstatd, rstatd \- kernel statistics server
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/netsvc/rstat/rpc.rstatd\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBrpc.rstatd\fR is a server which returns performance statistics obtained from
-the kernel. \fBrup\fR(1) uses \fBrpc.rstatd\fR to collect the \fBuptime\fR
-information that it displays.
-.sp
-.LP
-\fBrpc.rstatd\fR is an RPC service.
-.SH SEE ALSO
-.sp
-.LP
-\fBrup\fR(1), \fBsvcs\fR(1), \fBinetadm\fR(1M), \fBinetd\fR(1M),
-\fBsvcadm\fR(1M), \fBservices\fR(4), \fBattributes\fR(5), \fBsmf\fR(5)
-.SH NOTES
-.sp
-.LP
-The \fBrpc.rstatd\fR service is managed by the service management facility,
-\fBsmf\fR(5), under the service identifier:
-.sp
-.in +2
-.nf
-svc:/network/rpc/rstat:default
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Administrative actions on this service, such as enabling, disabling, or
-requesting restart, can be performed using \fBsvcadm\fR(1M). Responsibility for
-initiating and restarting this service is delegated to \fBinetd\fR(1M). Use
-\fBinetadm\fR(1M) to make configuration changes and to view configuration
-information for this service. The service's status can be queried using the
-\fBsvcs\fR(1) command.
diff --git a/usr/src/man/man1m/rpc.rusersd.1m b/usr/src/man/man1m/rpc.rusersd.1m
deleted file mode 100644
index a0aca58b32..0000000000
--- a/usr/src/man/man1m/rpc.rusersd.1m
+++ /dev/null
@@ -1,46 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 2004 Sun Microsystems, Inc. - All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH RPC.RUSERSD 1M "Nov 4, 2004"
-.SH NAME
-rpc.rusersd, rusersd \- network username server
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/netsvc/rusers/rpc.rusersd\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBrpc.rusersd\fR is a server that returns a list of users on the host. The
-\fBrpc.rusersd\fR daemon may be started by \fBinetd\fR(1M) or \fBlisten\fR(1M).
-.SH SEE ALSO
-.sp
-.LP
-\fBsvcs\fR(1), \fBinetadm\fR(1M), \fBinetd\fR(1M), \fBlisten\fR(1M),
-\fBpmadm\fR(1M), \fBsacadm\fR(1M), \fBsvcadm\fR(1M), \fBattributes\fR(5),
-\fBsmf\fR(5)
-.SH NOTES
-.sp
-.LP
-The \fBrpc.rusersd\fR service is managed by the service management facility,
-\fBsmf\fR(5), under the service identifier:
-.sp
-.in +2
-.nf
-svc:/network/rpc/rusers:default
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Administrative actions on this service, such as enabling, disabling, or
-requesting restart, can be performed using \fBsvcadm\fR(1M). Responsibility for
-initiating and restarting this service is delegated to \fBinetd\fR(1M). Use
-\fBinetadm\fR(1M) to make configuration changes and to view configuration
-information for this service. The service's status can be queried using the
-\fBsvcs\fR(1) command.
diff --git a/usr/src/man/man1m/rpc.rwalld.1m b/usr/src/man/man1m/rpc.rwalld.1m
deleted file mode 100644
index 7724cb8ced..0000000000
--- a/usr/src/man/man1m/rpc.rwalld.1m
+++ /dev/null
@@ -1,48 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 2004 Sun Microsystems, Inc. - All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH RPC.RWALLD 1M "Nov 4, 2004"
-.SH NAME
-rpc.rwalld, rwalld \- network rwall server
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/netsvc/rwall/rpc.rwalld\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBrpc.rwalld\fR is a server that handles \fBrwall\fR(1M) requests. It is
-implemented by calling \fBwall\fR(1M) on all the appropriate network machines.
-The \fBrpc.rwalld\fR daemon may be started by \fBinetd\fR(1M) or
-\fBlisten\fR(1M).
-.SH SEE ALSO
-.sp
-.LP
-\fBsvcs\fR(1), \fBinetadm\fR(1M), \fBinetd\fR(1M), \fBlisten\fR(1M),
-\fBrwall\fR(1M), \fBsvcadm\fR(1M), \fBwall\fR(1M), \fBattributes\fR(5),
-\fBsmf\fR(5)
-.SH NOTES
-.sp
-.LP
-The \fBrpc.rwalld\fR service is managed by the service management facility,
-\fBsmf\fR(5), under the service identifier:
-.sp
-.in +2
-.nf
-svc:/network/rpc/wall:default
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Administrative actions on this service, such as enabling, disabling, or
-requesting restart, can be performed using \fBsvcadm\fR(1M). Responsibility for
-initiating and restarting this service is delegated to \fBinetd\fR(1M). Use
-\fBinetadm\fR(1M) to make configuration changes and to view configuration
-information for this service. The service's status can be queried using the
-\fBsvcs\fR(1) command.
diff --git a/usr/src/man/man1m/rpc.smserverd.1m b/usr/src/man/man1m/rpc.smserverd.1m
deleted file mode 100644
index ba618d60e3..0000000000
--- a/usr/src/man/man1m/rpc.smserverd.1m
+++ /dev/null
@@ -1,53 +0,0 @@
-'\" te
-.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH RPC.SMSERVERD 1M "May 13, 2017"
-.SH NAME
-rpc.smserverd \- removable media device server
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/smedia/rpc.smserverd\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-\fBrpc.smserverd\fR is a server that handles requests from client
-applications, such as volume management software or \fBrmformat\fR(1),
-for access to removable media
-devices. The \fBrpc.smserverd\fR daemon is started by
-\fBinetd\fR(1M) when a client makes a call to a Solaris-internal library to
-access a SCSI, IDE, or USB device. The daemon is not started if a client
-attempts to access a floppy or PCMCIA device. Once started, the daemon remains
-active until such time as it is idle for three minutes or more.
-.sp
-.LP
-The \fBrpc.smserverd\fR daemon is provided for the exclusive use of the client
-applications mentioned above. It has no external, customer-accessible
-interfaces, including no configuration file.
-.SH SEE ALSO
-.LP
-\fBrmformat\fR(1), \fBsvcs\fR(1), \fBinetadm\fR(1M), \fBinetd\fR(1M),
-\fBsvcadm\fR(1M), \fBattributes\fR(5), \fBsmf\fR(5)
-.SH NOTES
-.LP
-The \fBrpc.smserverd\fR service is managed by the service management facility,
-\fBsmf\fR(5), under the service identifier:
-.sp
-.in +2
-.nf
-svc:/network/rpc/smserver
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Administrative actions on this service, such as enabling, disabling, or
-requesting restart, can be performed using \fBsvcadm\fR(1M). Responsibility for
-initiating and restarting this service is delegated to \fBinetd\fR(1M). Use
-\fBinetadm\fR(1M) to make configuration changes and to view configuration
-information for this service. The service's status can be queried using the
-\fBsvcs\fR(1) command.
diff --git a/usr/src/man/man1m/rpc.sprayd.1m b/usr/src/man/man1m/rpc.sprayd.1m
deleted file mode 100644
index 2cff5c7c23..0000000000
--- a/usr/src/man/man1m/rpc.sprayd.1m
+++ /dev/null
@@ -1,54 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 2004 Sun Microsystems, Inc. - All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH RPC.SPRAYD 1M "Nov 4, 2004"
-.SH NAME
-rpc.sprayd, sprayd \- spray server
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/netsvc/spray/rpc.sprayd\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBrpc.sprayd\fR is a server that records the packets sent by \fBspray\fR(1M).
-The \fBrpc.sprayd\fR daemon may be started by \fBinetd\fR(1M) or
-\fBlisten\fR(1M).
-.sp
-.LP
-The service provided by \fBrpc.sprayd\fR is not useful as a networking
-benchmark as it uses unreliable connectionless transports, (udp for example).
-It can report a large number of packets dropped when the drops were caused by
-the program sending packets faster than they can be buffered locally (before
-the packets get to the network medium).
-.SH SEE ALSO
-.sp
-.LP
-\fBsvcs\fR(1), \fBinetadm\fR(1M), \fBinetd\fR(1M) \fBlisten\fR(1M),
-\fBpmadm\fR(1M), \fBsacadm\fR(1M), \fBspray\fR(1M), \fBsvcadm\fR(1M),
-\fBattributes\fR(5), \fBsmf\fR(5)
-.SH NOTES
-.sp
-.LP
-The \fBrpc.sprayd\fR service is managed by the service management facility,
-\fBsmf\fR(5), under the service identifier:
-.sp
-.in +2
-.nf
-svc:/network/rpc/spray:default
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Administrative actions on this service, such as enabling, disabling, or
-requesting restart, can be performed using \fBsvcadm\fR(1M). Responsibility for
-initiating and restarting this service is delegated to \fBinetd\fR(1M). Use
-\fBinetadm\fR(1M) to make configuration changes and to view configuration
-information for this service. The service's status can be queried using the
-\fBsvcs\fR(1) command.
diff --git a/usr/src/man/man1m/rpc.yppasswdd.1m b/usr/src/man/man1m/rpc.yppasswdd.1m
deleted file mode 100644
index 97cba40c50..0000000000
--- a/usr/src/man/man1m/rpc.yppasswdd.1m
+++ /dev/null
@@ -1,167 +0,0 @@
-'\" te
-.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH RPC.YPPASSWDD 1M "Aug 24, 2004"
-.SH NAME
-rpc.yppasswdd, yppasswdd \- server for modifying NIS password file
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/netsvc/yp/rpc.yppasswdd\fR [\fB-D\fR \fIdirectory\fR]
- [\fB-nogecos\fR] [\fB-noshell\fR] [\fB-nopw\fR]
- [\fB-m\fR \fIargument1\fR \fIargument2\fR...]
-.fi
-
-.LP
-.nf
-\fB/usr/lib/netsvc/yp/rpc.yppasswdd\fR
- [\fIpasswordfile\fR [\fIadjunctfile\fR]]
- [\fB-nogecos\fR] [\fB-noshell\fR] [\fB-nopw\fR]
- [\fB-m\fR \fIargument1\fR \fIargument2\fR...]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBrpc.yppasswdd\fR is a server that handles password change requests from
-\fByppasswd\fR(1). It changes a password entry in the \fBpasswd\fR,
-\fBshadow\fR, and \fBsecurity/passwd.adjunct\fR files. The \fBpasswd\fR and
-\fBshadow\fR files provide the basis for the \fBpasswd.byname\fR and
-\fBpasswd.byuid\fR maps. The \fBpasswd.adjunct\fR file provides the basis for
-the \fBpasswd.adjunct.byname\fR and \fBpasswd.adjunct.byuid\fR maps. Entries in
-the \fBpasswd\fR, \fBshadow\fR or \fBpasswd.adjunct\fR files are changed only
-if the password presented by \fByppasswd\fR(1) matches the encrypted password
-of the entry. All password files are located in the \fBPWDIR\fR directory.
-.sp
-.LP
-If the \fB-D\fR option is given, the \fBpasswd\fR, \fBshadow,\fR or
-\fBpasswd.adjunct\fR files are placed under the directory path that is the
-argument to \fB-D\fR.
-.sp
-.LP
-If the \fB-noshell\fR, \fB-nogecos\fR or \fB-nopw\fR options are given, these
-fields cannot be changed remotely using \fBchfn\fR, \fBchsh\fR, or
-\fBpasswd\fR(1).
-.sp
-.LP
-If the \fB-m\fR option is given, a \fBmake\fR(1S) is performed in \fB/var/yp\fR
-after any of the \fBpasswd\fR, \fBshadow\fR, or \fBpasswd.adjunct\fR files are
-modified. All arguments following the flag are passed to \fBmake\fR.
-.sp
-.LP
-The second of the listed syntaxes is provided only for backward compatibility.
-If the second syntax is used, the \fBpasswordfile\fR is the full pathname of
-the password file and \fBadjunctfile\fR is the full pathname of the optional
-\fBpasswd.adjunct\fR file. If a shadow file is found in the same directory as
-\fBpasswordfile\fR, the \fBshadowfile\fR is used as described above. Use of
-this syntax and the discovery of a \fBshadowfile\fR file generates diagnostic
-output. The daemon, however, starts normally.
-.sp
-.LP
-The first and second syntaxes are mutually exclusive. You cannot specify the
-full pathname of the \fBpasswd\fR, \fBpasswd.adjunct\fR files and use the
-\fB-D\fR option at the same time.
-.sp
-.LP
-The daemon is started automatically on the master server of the passwd map by
-\fBypstart\fR(1M), which is invoked at boot time by the
-\fBsvcs:/network/nis/server:default\fR service.
-.sp
-.LP
-The server does not insist on the presence of a \fBshadow\fR file unless there
-is no \fB-D\fR option present or the directory named with the \fB-D\fR option
-is \fB/etc\fR. In addition, a \fBpasswd.adjunct\fR file is not necessary. If
-the \fB-D\fR option is given, the server attempts to find a
-\fBpasswd.adjunct\fR file in the \fBsecurity\fR subdirectory of the named
-directory. For example, in the presence of \fB-D\fR \fB/var/yp\fR the server
-checks for a \fB/var/yp/security/passwd.adjunct\fR file.
-.sp
-.LP
-If only a \fBpasswd\fR file exists, then the encrypted password is expected in
-the second field. If both a \fBpasswd\fR and a \fBpasswd.adjunct\fR file exist,
-the encrypted password is expected in the second field of the adjunct file with
-\fI##username\fR in the second field of the \fBpasswd\fR file. If all three
-files are in use, the encrypted password is expected in the \fBshadow\fR file.
-Any deviation causes a password update to fail.
-.sp
-.LP
-If you remove or add a \fBshadow\fR or \fBpasswd.adjunct\fR file after
-\fBrpc.yppasswdd\fR has started, you must stop and restart the daemon to enable
-it to recognize the change. See \fBypstart\fR(1m) for information on restarting
-the daemon.
-.sp
-.LP
-The \fBrpc.yppasswdd\fR daemon considers a shell that has a name that begins
-with 'r' to be a restricted shell. By default, the daemon does not check
-whether a shell begins with an '\fBr\fR'. However, you can tell it to do so by
-uncommenting the \fBcheck_restricted_shell_name=1\fR line in
-\fB/etc/default/yppasswdd\fR. The result will be to restrict a user's ability
-to change from his default shell. See \fByppasswdd\fR(4).
-.sp
-.LP
-On start up, \fByppasswdd\fR checks for the existence of a NIS to LDAP (N2L)
-configuration file, \fB/var/yp/NISLDAPmapping\fR. If the configuration file is
-present, the daemon runs in N2L mode. If the file is not present,
-\fByppasswdd\fR runs in traditional, non-N2L mode.
-.sp
-.LP
-In N2L mode, changes are written directly to the Directory Information Tree
-(DIT). If the changes are written successfully, the NIS map is updated. The NIS
-source files, \fBpasswd\fR, \fBshadow\fR, and \fBpasswd.adjunct\fR, for
-example, are not updated. Thus, in N2L mode, the \fB-D\fR option is
-meaningless. In N2L mode, \fByppasswdd\fR propagates changes by calling
-\fByppush\fR(1M) instead of \fBypmake\fR(1M). The \fB-m\fR option is thus
-unused.
-.sp
-.LP
-During an NIS-to-LDAP transition, the \fByppasswdd\fR daemon uses the
-N2L-specific map, \fBageing.byname\fR, to read and write password aging
-information to the DIT. If you are not using password aging, then the
-\fBageing.byname\fR mapping is ignored.
-.SH SEE ALSO
-.sp
-.LP
-\fBsvcs\fR(1), \fBmake\fR(1S), \fBpasswd\fR(1), \fByppasswd\fR(1),
-\fBinetd\fR(1M), \fBsvcadm\fR(1M), \fBypmake\fR(1M), \fByppush\fR(1M),
-\fBypstart\fR(1M), \fBNISLDAPmapping\fR(4), \fBpasswd\fR(4), \fBshadow\fR(4),
-\fBypfiles\fR(4), \fByppasswdd\fR(4), \fBypserv\fR(4), \fBattributes\fR(5),
-\fBsmf\fR(5)
-.SH NOTES
-.sp
-.LP
-If \fBmake\fR has not been installed and the \fB-m\fR option is given, the
-daemon outputs a warning and proceeds, effectively ignoring the \fB-m\fR flag.
-.sp
-.LP
-When using the \fB-D\fR option, you should make sure that the \fBPWDIR\fR of
-the \fB/var/yp/Makefile\fR is set accordingly.
-.sp
-.LP
-The second listed syntax is supplied only for backward compatibility and might
-be removed in a future release of this daemon.
-.sp
-.LP
-The Network Information Service (\fBNIS\fR) was formerly known as Sun Yellow
-Pages (\fBYP\fR). The functionality of the two remains the same; only the name
-has changed. The name Yellow Pages is a registered trademark in the United
-Kingdom of British Telecommunications PLC, and cannot be used without
-permission.
-.sp
-.LP
-The NIS server service is managed by the service management facility,
-\fBsmf\fR(5), under the service identifier:
-.sp
-.in +2
-.nf
-svcs:/network/nis/server:default
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Administrative actions on this service, such as enabling, disabling, or
-requesting restart, can be performed using \fBsvcadm\fR(1M). The service's
-status can be queried using the \fBsvcs\fR(1) command.
diff --git a/usr/src/man/man1m/rpc.ypupdated.1m b/usr/src/man/man1m/rpc.ypupdated.1m
deleted file mode 100644
index 6f3232cf0f..0000000000
--- a/usr/src/man/man1m/rpc.ypupdated.1m
+++ /dev/null
@@ -1,104 +0,0 @@
-'\" te
-.\" Copyright (C) 2003, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH RPC.YPUPDATED 1M "Mar 20, 2003"
-.SH NAME
-rpc.ypupdated, ypupdated \- server for changing NIS information
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/netsvc/yp/rpc.ypupdated\fR [\fB-is\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBypupdated\fR is a daemon that updates information in the Network Information
-Service (NIS). \fBypupdated\fR consults the \fBupdaters\fR(4) file in the
-\fB/var/yp\fR directory to determine which \fBNIS\fR maps should be updated and
-how to change them.
-.sp
-.LP
-By default, the daemon requires the most secure method of authentication
-available to it, either \fBDES\fR (secure) or \fBUNIX\fR (insecure).
-.sp
-.LP
-On start up, \fBypupdated\fR checks for the existence of a NIS to LDAP (N2L)
-configuration file, \fB/var/yp/NISLDAPmapping\fR. If the file is present,
-\fBypupdated\fR generates an informational message and exits. \fBypupdated\fR
-is not supported in N2L mode.
-.SH OPTIONS
-.sp
-.ne 2
-.na
-\fB\fB-i\fR\fR
-.ad
-.RS 6n
-Accept \fBRPC\fR calls with the insecure \fBAUTH_UNIX\fR credentials. This
-allows programmatic updating of the \fBNIS\fR maps in all networks.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR\fR
-.ad
-.RS 6n
-Accept only calls authenticated using the secure \fBRPC\fR mechanism
-(\fBAUTH_DES\fR authentication). This disables programmatic updating of the
-\fBNIS\fR maps unless the network supports these calls.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/var/yp/updaters\fR\fR
-.ad
-.RS 26n
-Configuration file for \fBrpc.updated\fR command.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/yp/NISLDAPmapping\fR\fR
-.ad
-.RS 26n
-Configuration file for N2L
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBkeyserv\fR(1M), \fBupdaters\fR(4), \fBNISLDAPmapping\fR(4),
-\fBattributes\fR(5)
-.sp
-.LP
-\fI\fR
-.SH NOTES
-.sp
-.LP
-The Network Information Service (\fBNIS\fR) was formerly known as Sun Yellow
-Pages (\fBYP\fR). The functionality of the two services remains the same. Only
-the name has changed. The name Yellow Pages is a registered trademark in the
-United Kingdom of British Telecommunications PLC, and it must not be used
-without permission.
diff --git a/usr/src/man/man1m/rpcbind.1m b/usr/src/man/man1m/rpcbind.1m
deleted file mode 100644
index afd563c146..0000000000
--- a/usr/src/man/man1m/rpcbind.1m
+++ /dev/null
@@ -1,262 +0,0 @@
-'\" te
-.\" Copyright 2015 Nexenta Systems, Inc. All rights reserved.
-.\" Copyright 1989 AT&T
-.\" Copyright (C) 2006, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH RPCBIND 1M "May 13, 2017"
-.SH NAME
-rpcbind \- universal addresses to RPC program number mapper
-.SH SYNOPSIS
-.LP
-.nf
-\fBrpcbind\fR [\fB-d\fR] [\fB-w\fR] [\fB-l\fR \fIlisten_backlog\fR]
-.fi
-
-.SH DESCRIPTION
-.LP
-\fBrpcbind\fR is a server that converts \fBRPC\fR program numbers into
-universal addresses. It must be running on the host to be able to make
-\fBRPC\fR calls on a server on that machine.
-.sp
-.LP
-When an \fBRPC\fR service is started, it tells \fBrpcbind\fR the address at
-which it is listening, and the \fBRPC\fR program numbers it is prepared to
-serve. When a client wishes to make an \fBRPC\fR call to a given program
-number, it first contacts \fBrpcbind\fR on the server machine to determine the
-address where \fBRPC\fR requests should be sent.
-.sp
-.LP
-\fBrpcbind\fR should be started before any other \fBRPC\fR service. Normally,
-standard \fBRPC\fR servers are started by port monitors, so \fBrpcbind\fR must
-be started before port monitors are invoked.
-.sp
-.LP
-When \fBrpcbind\fR is started, it checks that certain name-to-address
-translation-calls function correctly. If they fail, the network configuration
-databases can be corrupt. Since \fBRPC\fR services cannot function correctly in
-this situation, \fBrpcbind\fR reports the condition and terminates.
-.sp
-.LP
-\fBrpcbind\fR maintains an open transport end for each transport that it uses
-for indirect calls. This is the \fBUDP\fR port on most systems.
-.sp
-.LP
-The \fBrpcbind\fR service is managed by the service management facility,
-\fBsmf\fR(5), under the service identifier:
-.sp
-.in +2
-.nf
-svc:/network/rpc/bind
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Administrative actions on this service, such as enabling, disabling, or
-requesting restart, can be performed using \fBsvcadm\fR(1M). \fBrpcbind\fR can
-only be started by the superuser or someone in the Primary Administrator role.
-.sp
-.LP
-The configuration properties of this service can be modified with
-\fBsvccfg\fR(1M).
-.sp
-.LP
-The following SMF property is used to allow or disallow access to \fBrpcbind\fR
-by remote clients:
-.sp
-.in +2
-.nf
-config/local_only = true
-.fi
-.in -2
-
-.sp
-.LP
-The default value, \fBtrue\fR, shown above, disallows remote access; a value of
-\fBfalse\fR allows remove access. See EXAMPLES.
-.sp
-.LP
-The FMRI \fBsvc:network/rpc/bind\fR property group \fBconfig\fR contains the
-following property settings:
-.sp
-.ne 2
-.na
-\fB\fBenable_tcpwrappers\fR\fR
-.ad
-.RS 22n
-Specifies that the TCP wrappers facility is used to control access to TCP
-services. The value \fBtrue\fR enables checking. The default value for
-\fBenable_tcpwrappers\fR is \fBfalse\fR. If the \fBenable_tcpwrappers\fR
-parameter is enabled, then all calls to \fBrpcbind\fR originating from
-non-local addresses are automatically wrapped by the TCP wrappers facility. The
-\fBsyslog\fR facility code daemon is used to log allowed connections (using the
-\fBinfo\fR severity level) and denied traffic (using the \fBwarning\fR severity
-level). See \fBsyslog.conf\fR(4) for a description of \fBsyslog\fR codes and
-severity levels. The stability level of the TCP wrappers facility and its
-configuration files is External. As the TCP wrappers facility is not controlled
-by Sun, intrarelease incompatibilities are not uncommon. See
-\fBattributes\fR(5).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBverbose_logging\fR\fR
-.ad
-.RS 22n
-Specifies whether the TCP wrappers facility logs all calls or just the denied
-calls. The default is \fBfalse\fR. This option has no effect if TCP wrappers
-are not enabled.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBallow_indirect\fR\fR
-.ad
-.RS 22n
-Specifies whether \fBrpcbind\fR allows indirect calls at all. By default,
-\fBrpcbind\fR allows most indirect calls, except to a number of standard
-services (\fBkeyserv\fR, \fBautomount\fR, \fBmount\fR, \fBnfs\fR, \fBrquota\fR,
-and selected NIS and \fBrpcbind\fR procedures). Setting \fBallow_indirect\fR to
-\fBfalse\fR causes all indirect calls to be dropped. The default is \fBtrue\fR.
-NIS broadcast clients rely on this functionality on NIS servers.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBlisten_backlog\fR\fR
-.ad
-.RS 22n
-Set connection queue length for \fBrpcbind\fR over a connection-oriented
-transport. The default value is 64 entries. Modification of this property will
-take effect only after the \fBrpcbind\fR restart.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmax_threads\fR\fR
-.ad
-.RS 22n
-Maximum number of worker threads spawn by \fBrpcbind\fR. The default value
-is 72. The indirect \fBRPC\fR calls facility might cause a worker thread to
-block for some time waiting for a response from the indirectly called \fBRPC\fR
-service. To maintain basic \fBrpcbind\fR functionality, up to eight worker
-threads are always reserved, and will never be used for indirect \fBRPC\fR calls.
-Setting \fBmax_threads\fR to less than 9 effectively disables the indirect
-calls.
-.RE
-
-.SH OPTIONS
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-d\fR\fR
-.ad
-.RS 6n
-Run in debug mode. In this mode, \fBrpcbind\fR does not fork when it starts. It
-prints additional information during operation, and aborts on certain errors.
-With this option, the name-to-address translation consistency checks are shown
-in detail.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-w\fR\fR
-.ad
-.RS 6n
-Do a warm start. If \fBrpcbind\fR aborts or terminates on \fBSIGINT\fR or
-\fB\fR\fBSIGTERM\fR, it writes the current list of registered services to
-\fB/var/run/daemon/portmap.file\fR and \fB/var/run/daemon/rpcbind.file\fR. Starting
-\fBrpcbind\fR with the \fB-w\fR option instructs it to look for these files and
-start operation with the registrations found in them. This allows \fBrpcbind\fR
-to resume operation without requiring all \fBRPC\fR services to be restarted.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR\fR \fI\fIlisten_backlog\fR\fR
-.ad
-.RS 6n
-This can be used to override \fBconfig/listen_backlog\fR SMF property.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRAllowing Remote Access
-.sp
-.LP
-The following sequence of commands allows remote access to \fBrpcbind\fR.
-
-.sp
-.in +2
-.nf
-# \fBsvccfg -s svc:/network/rpc/bind setprop config/local_only = false\fR
-# \fBsvcadm refresh svc:/network/rpc/bind\fR
-.fi
-.in -2
-.sp
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/var/run/daemon/portmap.file\fR\fR
-.ad
-.RS 25n
-Stores the information for \fBRPC\fR services registered over IP based
-transports for warm start purposes.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/run/daemon/rpcbind.file\fR\fR
-.ad
-.RS 25n
-Stores the information for all registered \fBRPC\fR services for warm start
-purposes.
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability See below.
-.TE
-
-.sp
-.LP
-TCP wrappers is External.
-.SH SEE ALSO
-.LP
-\fBsmf\fR(5), \fBrpcinfo\fR(1M), \fBsvcadm\fR(1M), \fBsvccfg\fR(1M),
-\fBrpcbind\fR(3NSL), \fBsyslog.conf\fR(4), \fBattributes\fR(5), \fBsmf\fR(5),
-\fBhosts_access\fR(4)
-.SH NOTES
-.LP
-Terminating \fBrpcbind\fR with \fBSIGKILL\fR prevents the warm-start files from
-being written.
-.sp
-.LP
-All \fBRPC\fR servers are restarted if the following occurs: \fBrpcbind\fR
-crashes (or is killed with \fBSIGKILL)\fR and is unable to write the
-warm-start files; \fBrpcbind\fR is started without the \fB-w\fR option after a
-graceful termination. Otherwise, the warm start files are not found by
-\fBrpcbind\fR.
diff --git a/usr/src/man/man1m/rpcinfo.1m b/usr/src/man/man1m/rpcinfo.1m
deleted file mode 100644
index 7151ccea0f..0000000000
--- a/usr/src/man/man1m/rpcinfo.1m
+++ /dev/null
@@ -1,351 +0,0 @@
-'\" te
-.\" Copyright 2015 Nexenta Systems, Inc. All rights reserved.
-.\" Copyright (c) 2001 Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH RPCINFO 1M "Feb 20, 2015"
-.SH NAME
-rpcinfo \- report RPC information
-.SH SYNOPSIS
-.LP
-.nf
-\fBrpcinfo\fR [\fB-T\fR \fItransport\fR] [\fB-m\fR | \fB-s\fR] [\fIhost\fR]
-.fi
-
-.LP
-.nf
-\fBrpcinfo\fR \fB-p\fR [\fIhost\fR]
-.fi
-
-.LP
-.nf
-\fBrpcinfo\fR \fB-T\fR \fItransport\fR \fIhost\fR \fIprognum\fR [\fIversnum\fR]
-.fi
-
-.LP
-.nf
-\fBrpcinfo\fR \fB-l\fR [\fB-T\fR \fItransport\fR] \fIhost\fR \fIprognum\fR \fIversnum\fR
-.fi
-
-.LP
-.nf
-\fBrpcinfo\fR [\fB-n\fR \fIportnum\fR] \fB-u\fR \fIhost\fR \fIprognum\fR [\fIversnum\fR]
-.fi
-
-.LP
-.nf
-\fBrpcinfo\fR [\fB-n\fR \fIportnum\fR] \fB-t\fR \fIhost\fR \fIprognum\fR [\fIversnum\fR]
-.fi
-
-.LP
-.nf
-\fBrpcinfo\fR \fB-a\fR \fIserv_address\fR \fB-T\fR \fItransport\fR \fIprognum\fR [\fIversnum\fR]
-.fi
-
-.LP
-.nf
-\fBrpcinfo\fR \fB-b\fR [\fB-T\fR \fItransport\fR] \fIprognum\fR \fIversnum\fR
-.fi
-
-.LP
-.nf
-\fBrpcinfo\fR \fB-d\fR [\fB-T\fR \fItransport\fR] \fIprognum\fR \fIversnum\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-\fBrpcinfo\fR makes an \fBRPC\fR call to an \fBRPC\fR server and reports what
-it finds.
-.sp
-.LP
-In the first synopsis, \fBrpcinfo\fR lists all the registered \fBRPC\fR
-services with \fBrpcbind\fR on \fIhost\fR. If \fIhost\fR is not specified, the
-local host is the default. If \fB-s\fR is used, the information is displayed in
-a concise format.
-.sp
-.LP
-In the second synopsis, \fBrpcinfo\fR lists all the \fBRPC\fR services
-registered with \fBrpcbind\fR, version 2. Note that the format of the
-information is different in the first and the second synopsis. This is because
-the second synopsis is an older protocol used to collect the information
-displayed (version 2 of the \fBrpcbind\fR protocol).
-.sp
-.LP
-The third synopsis makes an \fBRPC\fR call to procedure 0 of \fIprognum\fR and
-\fIversnum\fR on the specified \fIhost\fR and reports whether a response was
-received. \fItransport\fR is the transport which has to be used for contacting
-the given service. The remote address of the service is obtained by making a
-call to the remote \fBrpcbind\fR.
-.sp
-.LP
-The \fIprognum\fR argument is a number that represents an \fBRPC\fR program
-number (see \fBrpc\fR(4)).
-.sp
-.LP
-If a \fIversnum\fR is specified, \fBrpcinfo\fR attempts to call that version of
-the specified \fIprognum\fR. Otherwise, \fBrpcinfo\fR attempts to find all the
-registered version numbers for the specified \fIprognum\fR by calling version
-0, which is presumed not to exist; if it does exist, \fBrpcinfo\fR attempts to
-obtain this information by calling an extremely high version number instead,
-and attempts to call each registered version. Note that the version number is
-required for \fB-b\fR and \fB-d\fR options.
-.sp
-.LP
-The \fBEXAMPLES\fR section describe other ways of using \fBrpcinfo\fR.
-.SH OPTIONS
-.ne 2
-.na
-\fB\fB-T\fR\fI transport\fR\fR
-.ad
-.RS 19n
-Specify the transport on which the service is required. If this option is not
-specified, \fBrpcinfo\fR uses the transport specified in the \fBNETPATH\fR
-environment variable, or if that is unset or \fINULL,\fR the transport in the
-\fBnetconfig\fR(4) database is used. This is a generic option, and can be used
-in conjunction with other options as shown in the \fBSYNOPSIS\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-a\fR \fIserv_address\fR\fR
-.ad
-.RS 19n
-Use \fIserv_address\fR as the (universal) address for the service on
-\fItransport\fR to \fBping\fR procedure 0 of the specified \fIprognum\fR and
-report whether a response was received. The \fB-T\fR option is required with
-the \fB-a\fR option. If \fIversnum\fR is not specified, \fBrpcinfo\fR tries to
-ping all available version numbers for that program number. This option avoids
-calls to remote \fBrpcbind\fR to find the address of the service. The
-\fIserv_address\fR is specified in universal address format of the given
-transport.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-b\fR\fR
-.ad
-.RS 19n
-Make an \fBRPC\fR broadcast to procedure 0 of the specified \fIprognum\fR and
-\fIversnum\fR and report all hosts that respond. If \fItransport\fR is
-specified, it broadcasts its request only on the specified transport. If
-broadcasting is not supported by any transport, an error message is printed.
-Use of broadcasting should be limited because of the potential for adverse
-effect on other systems.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-d\fR\fR
-.ad
-.RS 19n
-Delete registration for the \fBRPC\fR service of the specified \fIprognum\fR
-and \fIversnum\fR. If \fItransport\fR is specified, unregister the service on
-only that transport, otherwise unregister the service on all the transports on
-which it was registered. Only the owner of a service can delete a registration,
-except the superuser, who can delete any service.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR\fR
-.ad
-.RS 19n
-Display a list of entries with a given \fIprognum\fR and \fIversnum\fR on the
-specified \fIhost\fR. Entries are returned for all transports in the same
-protocol family as that used to contact the remote \fBrpcbind\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-m\fR\fR
-.ad
-.RS 19n
-Display a table of statistics of \fBrpcbind\fR operations on the given
-\fIhost\fR. The table shows statistics for each version of \fBrpcbind\fR
-(versions 2, 3 and 4), giving the number of times each procedure was requested
-and successfully serviced, the number and type of remote call requests that
-were made, and information about \fBRPC\fR address lookups that were handled.
-This is useful for monitoring \fBRPC\fR activities on \fIhost\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR\fI portnum\fR\fR
-.ad
-.RS 19n
-Use \fIportnum\fR as the port number for the \fB-t\fR and \fB-u\fR options
-instead of the port number given by \fBrpcbind\fR. Use of this option avoids a
-call to the remote \fBrpcbind\fR to find out the address of the service. This
-option is made obsolete by the \fB-a\fR option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR\fR
-.ad
-.RS 19n
-Probe \fBrpcbind\fR on \fIhost\fR using version 2 of the \fBrpcbind\fR
-protocol, and display a list of all registered \fBRPC\fR programs. If
-\fIhost\fR is not specified, it defaults to the local host. This option is not
-useful for IPv6; use \fB-s\fR (see below) instead. Note that version 2 of the
-\fBrpcbind\fR protocol was previously known as the portmapper protocol.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR\fR
-.ad
-.RS 19n
-Display a concise list of all registered \fBRPC\fR programs on \fIhost\fR. If
-\fIhost\fR is not specified, it defaults to the local host.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-t\fR\fR
-.ad
-.RS 19n
-Make an \fBRPC\fR call to procedure 0 of \fIprognum\fR on the specified
-\fIhost\fR using \fBTCP,\fR and report whether a response was received. This
-option is made obsolete by the \fB-T\fR option as shown in the third synopsis.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-u\fR\fR
-.ad
-.RS 19n
-Make an \fBRPC\fR call to procedure 0 of \fIprognum\fR on the specified
-\fIhost\fR using \fBUDP,\fR and report whether a response was received. This
-option is made obsolete by the \fB-T\fR option as shown in the third synopsis.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fR\fBRPC\fR services.
-.sp
-.LP
-To show all of the \fBRPC\fR services registered on the local machine use:
-
-.sp
-.in +2
-.nf
-\fBexample%\fR \fBrpcinfo\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-To show all of the \fBRPC\fR services registered with \fBrpcbind\fR on the
-machine named \fBklaxon\fR use:
-
-.sp
-.in +2
-.nf
-\fBexample%\fR \fBrpcinfo\fR \fBklaxon\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The information displayed by the above commands can be quite lengthy. Use the
-\fB-s\fR option to display a more concise list:
-
-.sp
-.in +2
-.nf
-\fBexample%\fR \fBrpcinfo\fR \fB-s\fR \fBklaxon\fR
-.fi
-.in -2
-.sp
-
-.sp
-
-.sp
-.TS
-l l l l l
-l l l l l .
-\fBprogram\fR \fBversion(s)\fR \fBnetid(s)\fR \fBservice\fR \fBowner\fR
-\fB100000\fR \fB2,3,4\fR \fBtcp,udp,ticlts,ticots,ticotsord\fR \fBrpcbind\fR \fBsuperuser\fR
-\fB100008\fR \fB1\fR \fBticotsord,ticots,ticlts,udp,tcp\fR \fBwalld\fR \fBsuperuser\fR
-\fB100002\fR \fB2,1\fR \fBticotsord,ticots,ticlts,udp,tcp\fR \fBrusersd\fR \fBsuperuser\fR
-\fB100001\fR \fB2,3,4\fR \fBticotsord,ticots,tcp,ticlts,udp\fR \fBrstatd\fR \fBsuperuser\fR
-\fB100012\fR \fB1\fR \fBticotsord,ticots,ticlts,udp,tcp\fR \fBsprayd\fR \fBsuperuser\fR
-\fB100007\fR \fB3\fR \fBticotsord,ticots,ticlts,udp,tcp\fR \fBypbind\fR \fBsuperuser\fR
-\fB100029\fR \fB1\fR \fBticotsord,ticots,ticlts\fR \fBkeyserv\fR \fBsuperuser\fR
-\fB100078\fR \fB4\fR \fBticotsord,ticots,ticlts\fR \fB-\fR \fBsuperuser\fR
-\fB100024\fR \fB1\fR \fBticotsord,ticots,ticlts,udp,tcp\fR \fBstatus\fR \fBsuperuser\fR
-\fB100021\fR \fB2,1\fR \fBticotsord,ticots,ticlts,udp,tcp\fR \fBnlockmgr\fR \fBsuperuser\fR
-\fB100020\fR \fB1\fR \fBticotsord,ticots,ticlts,udp,tcp\fR \fBllockmgr\fR \fBsuperuser\fR
-.TE
-
-.sp
-.LP
-To show whether the \fBRPC\fR service with program number \fIprognum\fR and
-version \fIversnum\fR is registered on the machine named \fBklaxon\fR for the
-transport \fBTCP\fR use:
-
-.sp
-.in +2
-.nf
-\fBexample% rpcinfo \fR\fB-T\fR\fB tcp klaxon \fR\fIprognum versnum\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-To show all \fBRPC\fR services registered with version 2 of the \fBrpcbind\fR
-protocol on the local machine use:
-
-.sp
-.in +2
-.nf
-\fBexample%\fR \fBrpcinfo\fR \fB-p\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-To delete the registration for version 1 of the \fBwalld\fR (program number
-\fB100008\fR) service for all transports use:
-
-.sp
-.in +2
-.nf
-\fBexample# rpcinfo \fR\fB-d\fR\fB 100008 1\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-or
-
-.sp
-.in +2
-.nf
-\fBexample# rpcinfo \fR\fB-d\fR\fB walld 1\fR
-.fi
-.in -2
-.sp
-
-.SH SEE ALSO
-.LP
-\fBrpcbind\fR(1M), \fBrpc\fR(3NSL), \fBnetconfig\fR(4), \fBrpc\fR(4),
-\fBattributes\fR(5)
diff --git a/usr/src/man/man1m/rquotad.1m b/usr/src/man/man1m/rquotad.1m
deleted file mode 100644
index feca16055f..0000000000
--- a/usr/src/man/man1m/rquotad.1m
+++ /dev/null
@@ -1,72 +0,0 @@
-'\" te
-.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH RQUOTAD 1M "Apr 30, 2009"
-.SH NAME
-rquotad \- remote quota server
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/nfs/rquotad\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBrquotad\fR is an \fBrpc\fR(4) server which returns quotas for a user of a
-local file system which is mounted by a remote machine over the \fBNFS.\fR The
-results are used by \fBquota\fR(1M) to display user quotas for remote file
-systems. The \fBrquotad\fR daemon is normally invoked by \fBinetd\fR(1M).
-.SH USAGE
-.sp
-.LP
-See \fBlargefile\fR(5) for the description of the behavior of \fBrquotad\fR
-when encountering files greater than or equal to 2 Gbyte (2^31 bytes).
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fBquotas\fR\fR
-.ad
-.RS 10n
-quota file at a UFS file system root
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBsvcs\fR(1), \fBautomountd\fR(1M), \fBinetadm\fR(1M), \fBinetd\fR(1M),
-\fBmount_nfs\fR(1M), \fBquota\fR(1M), \fBshare_nfs\fR(1M), \fBsvcadm\fR(1M),
-\fBrpc\fR(4), \fBservices\fR(4), \fBattributes\fR(5), \fBlargefile\fR(5),
-\fBsmf\fR(5)
-.sp
-.LP
-\fI\fR
-.SH NOTES
-.sp
-.LP
-The \fBrquotad\fR service is managed by the service management facility,
-\fBsmf\fR(5), under the service identifier:
-.sp
-.in +2
-.nf
-svc:/network/nfs/rquota
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Administrative actions on this service, such as enabling, disabling, or
-requesting restart, can be performed using \fBsvcadm\fR(1M). Responsibility for
-initiating and restarting this service is delegated to \fBinetd\fR(1M). Use
-\fBinetadm\fR(1M) to make configuration changes and to view configuration
-information for this service. The service's status can be queried using the
-\fBsvcs\fR(1) command.
-.sp
-.LP
-If it is disabled, it will be enabled by \fBmount_nfs\fR(1M),
-\fBshare_nfs\fR(1M), and \fBautomountd\fR(1M) unless its
-\fBapplication/auto_enable\fR property is set to \fBfalse\fR.
diff --git a/usr/src/man/man1m/rsh.1m b/usr/src/man/man1m/rsh.1m
deleted file mode 100644
index 85696ba0f4..0000000000
--- a/usr/src/man/man1m/rsh.1m
+++ /dev/null
@@ -1,114 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 1993, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH RSH 1M "Nov 1, 1993"
-.SH NAME
-rsh, restricted_shell \- restricted shell command interpreter
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/rsh\fR [\fB-acefhiknprstuvx\fR] [\fIargument\fR]...
-.fi
-
-.SH DESCRIPTION
-.LP
-\fBrsh\fR is a limiting version of the standard command interpreter \fBsh\fR,
-used to restrict logins to execution environments whose capabilities are more
-controlled than those of \fBsh\fR (see \fBsh\fR(1) for complete description and
-usage).
-.sp
-.LP
-When the shell is invoked, it scans the environment for the value of the
-environmental variable, \fBSHELL\fR. If it is found and \fBrsh\fR is the file
-name part of its value, the shell becomes a restricted shell.
-.sp
-.LP
-The actions of \fBrsh\fR are identical to those of \fBsh\fR, except that the
-following are disallowed:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-changing directory (see \fBcd\fR(1)),
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-setting the value of $\fBPATH\fR,
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-specifying path or command names containing \fB/\fR,
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-redirecting output (\fB>\fR and \fB>>\fR).
-.RE
-.sp
-.LP
-The restrictions above are enforced after \fI\&.profile\fR is interpreted.
-.sp
-.LP
-A restricted shell can be invoked in one of the following ways:
-.RS +4
-.TP
-1.
-\fBrsh\fR is the file name part of the last entry in the \fB/etc/passwd\fR
-file (see \fBpasswd\fR(4));
-.RE
-.RS +4
-.TP
-2.
-the environment variable \fBSHELL\fR exists and \fBrsh\fR is the file name
-part of its value; the environment variable \fBSHELL\fR needs to be set in the
-\fB\&.login\fR file;
-.RE
-.RS +4
-.TP
-3.
-the shell is invoked and \fBrsh\fR is the file name part of argument 0;
-.RE
-.RS +4
-.TP
-4.
-the shell is invoked with the \fB-r\fR option.
-.RE
-.sp
-.LP
-When a command to be executed is found to be a shell procedure, \fBrsh\fR
-invokes \fBsh\fR to execute it. Thus, it is possible to provide to the end-user
-shell procedures that have access to the full power of the standard shell,
-while imposing a limited menu of commands; this scheme assumes that the
-end-user does not have write and execute permissions in the same directory.
-.sp
-.LP
-The net effect of these rules is that the writer of the \fI\&.profile\fR (see
-\fBprofile\fR(4)) has complete control over user actions by performing
-guaranteed setup actions and leaving the user in an appropriate directory
-(probably \fInot\fR the login directory).
-.sp
-.LP
-The system administrator often sets up a directory of commands (that is,
-\fB/usr/rbin\fR) that can be safely invoked by a restricted shell. Some systems
-also provide a restricted editor, \fBred\fR.
-.SH EXIT STATUS
-.LP
-Errors detected by the shell, such as syntax errors, cause the shell to return
-a non-zero exit status. If the shell is being used non-interactively execution
-of the shell file is abandoned. Otherwise, the shell returns the exit status of
-the last command executed.
-.SH SEE ALSO
-.LP
-\fBIntro\fR(1), \fBcd\fR(1), \fBlogin\fR(1), \fBrsh\fR(1), \fBsh\fR(1),
-\fBexec\fR(2), \fBpasswd\fR(4), \fBprofile\fR(4), \fBattributes\fR(5)
-.SH NOTES
-.LP
-The restricted shell, \fB/usr/lib/rsh\fR, should not be confused with the
-remote shell, \fB/usr/bin/rsh\fR, which is documented in \fBrsh\fR(1).
diff --git a/usr/src/man/man1m/rtc.1m b/usr/src/man/man1m/rtc.1m
deleted file mode 100644
index 3ac51b4c88..0000000000
--- a/usr/src/man/man1m/rtc.1m
+++ /dev/null
@@ -1,124 +0,0 @@
-.\"
-.\" This file and its contents are supplied under the terms of the
-.\" Common Development and Distribution License ("CDDL"), version 1.0.
-.\" You may only use this file in accordance with the terms of version
-.\" 1.0 of the CDDL.
-.\"
-.\" A full copy of the text of the CDDL should have accompanied this
-.\" source. A copy of the CDDL is also available via the Internet at
-.\" http://www.illumos.org/license/CDDL.
-.\"
-.\"
-.\" Copyright 2018 Gary Mills
-.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved.
-.\"
-.Dd January 31, 2018
-.Dt RTC 1M
-.Os
-.Sh NAME
-.Nm rtc
-.Nd provide all real-time clock and UTC-lag management
-.Sh SYNOPSIS
-.Nm
-.Op Fl csuvw
-.Op Fl z Ar zone-name
-.Sh DESCRIPTION
-The Real Time Clock (RTC) is the hardware device on x86 computers that maintains
-the date and time.
-The RTC is battery-powered, so that it keeps running when the computer is shut
-down.
-It can be set from the BIOS and also from the operating system running on the
-computer.
-The RTC has no setting for the time zone or for Daylight Saving Time (DST).
-It relies on the operating system for these facilities and for automatic changes
-between standard time and DST.
-.Pp
-On x86 systems, the
-.Nm
-command reconciles the difference in the way that time is established between
-UNIX and Windows systems.
-The internal clock on UNIX systems utilizes Universal Coordinated Time (UTC)
-while Windows systems usually expect the RTC to run in local time, including DST
-changes.
-.Pp
-Without arguments,
-.Nm
-displays the currently configured time zone string for the RTC.
-The currently configured time zone string is based on what was last recorded by
-.Nm Fl z Ar zone-name .
-.Pp
-The
-.Nm
-command is not normally run from a shell prompt; it is generally invoked by the
-system.
-Commands such as
-.Xr date 1
-and
-.Xr rdate 1M ,
-which are used to set the time on a system, invoke
-.Nm Fl c
-to ensure that daylight savings time (DST) is corrected for properly.
-.Sh OPTIONS
-.Bl -tag -width Ds
-.It Fl c
-This option checks for DST and makes corrections to the RTC if necessary.
-It is normally run once a day by a
-.Xr cron 1M
-job.
-.Pp
-If there is no RTC time zone or
-.Pa /etc/rtc_config
-file, this option will do nothing.
-.It Fl s
-This option specifies that the RTC runs in local standard time all year round.
-It is incompatible with Windows, but is convenient if only one operating system
-is to be run on the computer.
-The
-.Xr cron 1M
-command is not necessary, and should not be run.
-.It Fl u
-This option specifies that the RTC runs in UTC time.
-As a side effect, it sets the time zone in
-.Pa /etc/rtc_config
-to UTC.
-Windows can operate in UTC time, but requires a registry change to do so.
-The
-.Xr cron 1M
-command is not necessary.
-.It Fl v
-This option specifies that the RTC tracks local time, including DST changes.
-This is the default.
-It accomodates Windows with no changes.
-The
-.Xr cron 1M
-command is necessary to change the RTC when DST is in effect.
-.It Fl w
-This option does nothing.
-It is present for compatibility with Solaris 11.
-.It Fl z Ar zone-name
-This option, which is normally run by the system at software installation time,
-is used to specify the time zone in which the RTC is to be maintained.
-It updates the configuration file
-.Pa /etc/rtc_config
-with the name of the specified zone and the current UTC lag for that zone.
-If there is an existing
-.Pa /etc/rtc_config
-file, this command will update it.
-If not, this command will create it.
-.El
-.Sh FILES
-.Bl -tag -width "/etc/rtc_config"
-.It Pa /etc/rtc_config
-The data file used to record the time zone and UTC lag.
-This file is completely managed by
-.Nm .
-At boot time, the kernel reads the UTC lag from this file, and uses it to set
-the system time.
-.El
-.Sh ARCHITECTURE
-.Sy x86
-.Sh SEE ALSO
-.Xr date 1 ,
-.Xr cron 1M ,
-.Xr rdate 1M ,
-.Xr attributes 5
diff --git a/usr/src/man/man1m/rtquery.1m b/usr/src/man/man1m/rtquery.1m
deleted file mode 100644
index c388551109..0000000000
--- a/usr/src/man/man1m/rtquery.1m
+++ /dev/null
@@ -1,189 +0,0 @@
-'\" te
-.\" Copyright (c) 2002, Sun Microsystems, Inc.
-.\" All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH RTQUERY 1M "Apr 24, 2002"
-.SH NAME
-rtquery \- query routing daemons for their routing tables
-.SH SYNOPSIS
-.LP
-.nf
-\fBrtquery\fR [\fB-np1\fR] [\fB-w\fR \fItimeout\fR] [\fB-r\fR \fIaddr\fR] [\fB-a\fR \fIsecret\fR] \fIhost\fR...
-.fi
-
-.LP
-.nf
-\fBrtquery\fR [\fB-t\fR \fIoperation\fR] \fIhost\fR...
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBrtquery\fR command is used to query a RIP network routing daemon,
-\fBin.routed\fR(1M) or \fBGateD\fR, for its routing table by sending a request
-or poll command. The routing information in any routing response packets
-returned is displayed numerically and symbolically.
-.sp
-.LP
-By default, \fBrtquery\fR uses the request command. When the -p option is
-specified, \fBrtquery\fR uses the poll command, an undocumented extension to
-the RIP protocol supported by \fBGateD\fR. When querying \fBGateD\fR, the poll
-command is preferred over the request command because the response is not
-subject to Split Horizon and/or Poisoned Reverse, and because some versions of
-\fBGateD\fR do not answer the request command. \fBin.routed\fR does not answer
-the poll command, but recognizes requests coming from \fBrtquery\fR and so
-answers completely.
-.sp
-.LP
-The \fBrtquery\fR command is also used to turn tracing on or off in
-\fBin.routed\fR.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-a\fR \fBpasswd=\fR\fIXXX\fR\fR
-.ad
-.br
-.na
-\fB\fB-a\fR \fBmd5_passwd=\fR\fIXXX\fR|\fIKeyID\fR\fR
-.ad
-.RS 27n
-Causes the query to be sent with the indicated cleartext or MD5 password.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR\fR
-.ad
-.RS 27n
-Displays only the numeric network and host addresses instead of both numeric
-and symbolic names.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR\fR
-.ad
-.RS 27n
-Uses the poll command to request full routing information from \fBGateD\fR.
-This is an undocumented extension RIP protocol supported only by \fBGateD\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-r\fR \fIaddr\fR\fR
-.ad
-.RS 27n
-Asks about the route to destination \fIaddr\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-t\fR \fIoperation\fR\fR
-.ad
-.RS 27n
-Changes tracing, where \fIoperation\fR is one of the actions listed below.
-Requests from processes not running with UID 0 or on distant networks are
-generally ignored by the daemon except for a message in the system log.
-\fBGateD\fR is likely to ignore these debugging requests.
-.sp
-.ne 2
-.na
-\fBon=\fItracefile\fR\fR
-.ad
-.RS 16n
-Turns tracing on, directing tracing into the specified file. That file must
-have been specified when the daemon was started or have the name,
-\fB/var/log/in.routed.trace\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBmore\fR
-.ad
-.RS 16n
-Increases the debugging level.
-.RE
-
-.sp
-.ne 2
-.na
-\fBoff\fR
-.ad
-.RS 16n
-Turns off tracing.
-.RE
-
-.sp
-.ne 2
-.na
-\fBdump\fR
-.ad
-.RS 16n
-Dumps the daemon's routing table to the current trace file.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-w\fR \fItimeout\fR\fR
-.ad
-.RS 27n
-Changes the delay for an answer from each host. By default, each host is given
-15 seconds to respond.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-1\fR\fR
-.ad
-.RS 27n
-Queries using RIP version 1 instead of RIP version 2.
-.RE
-
-.SH EXIT STATUS
-.sp
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 6n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB>\fB0\fR\fR
-.ad
-.RS 6n
-An error occurred.
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBin.routed\fR(1M), \fBroute\fR(1M), \fBgateways\fR(4), \fBattributes\fR(5),
-\fBicmp\fR(7P), \fBinet\fR(7P), \fBudp\fR(7P)
-.sp
-.LP
-\fIRouting Information Protocol, RIPv1, RFC 1058\fR
-.sp
-.LP
-\fIRouting Information Protocol, RIPv2, RFC 2453, STD 0056\fR
diff --git a/usr/src/man/man1m/runacct.1m b/usr/src/man/man1m/runacct.1m
deleted file mode 100644
index 0c6bbc212a..0000000000
--- a/usr/src/man/man1m/runacct.1m
+++ /dev/null
@@ -1,322 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 1999 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH RUNACCT 1M "May 11, 1999"
-.SH NAME
-runacct \- run daily accounting
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/acct/runacct\fR [\fImmdd\fR [\fIstate\fR]]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBrunacct\fR is the main daily accounting shell procedure. It is normally
-initiated using \fBcron\fR. \fBrunacct\fR processes connect, fee, disk, and
-process accounting files. It also prepares summary files for \fBprdaily\fR or
-billing purposes. \fBrunacct\fR is distributed only to source code licensees.
-.sp
-.LP
-\fBrunacct\fR takes care not to damage active accounting files or summary files
-in the event of errors. It records its progress by writing descriptive
-diagnostic messages into \fBactive\fR. When an error is detected, a message is
-written to \fB/dev/console\fR, mail (see \fBmail\fR(1)) is sent to \fBroot\fR
-and \fBadm\fR, and \fBrunacct\fR terminates. \fBrunacct\fR uses a series of
-lock files to protect against re-invocation. The files \fBlock\fR and
-\fBlock1\fR are used to prevent simultaneous invocation, and \fBlastdate\fR is
-used to prevent more than one invocation per day.
-.sp
-.LP
-\fBrunacct\fR breaks its processing into separate, restartable \fIstates\fR
-using \fBstatefile\fR to remember the last \fIstate\fR completed. It
-accomplishes this by writing the \fIstate\fR name into \fBstatefile\fR.
-\fBrunacct\fR then looks in \fBstatefile\fR to see what it has done and to
-determine what to process next. \fIstates\fR are executed in the following
-order:
-.sp
-.ne 2
-.na
-\fB\fBSETUP\fR\fR
-.ad
-.RS 14n
-Move active accounting files into working files.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBWTMPFIX\fR\fR
-.ad
-.RS 14n
-Verify integrity of \fBwtmpx\fR file, correcting date changes if necessary.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBCONNECT\fR\fR
-.ad
-.RS 14n
-Produce connect session records in \fBtacct.h\fR format.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPROCESS\fR\fR
-.ad
-.RS 14n
-Convert process accounting records into \fBtacct.h\fR format.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBMERGE\fR\fR
-.ad
-.RS 14n
-Merge the connect and process accounting records.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBFEES\fR\fR
-.ad
-.RS 14n
-Convert output of \fBchargefee\fR into \fBtacct.h\fR format, merge with
-connect, and process accounting records.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBDISK\fR\fR
-.ad
-.RS 14n
-Merge disk accounting records with connect, process, and fee accounting
-records.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBMERGETACCT\fR\fR
-.ad
-.RS 14n
-Merge the daily total accounting records in \fBdaytacct\fR with the summary
-total accounting records in \fB/var/adm/acct/sum/tacct\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBCMS\fR\fR
-.ad
-.RS 14n
-Produce command summaries.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBUSEREXIT\fR\fR
-.ad
-.RS 14n
-Any installation dependent accounting programs can be included here.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBCLEANUP\fR\fR
-.ad
-.RS 14n
-Clean up temporary files and exit. To restart \fBrunacct\fR after a failure,
-first check the \fBactive\fR file for diagnostics, then fix any corrupted data
-files, such as \fBpacct\fR or \fBwtmpx\fR. The \fBlock\fR, \fBlock1\fR, and
-\fBlastdate\fR files must be removed before \fBrunacct\fR can be restarted.
-The argument \fImmdd\fR is necessary if \fBrunacct\fR is being restarted.
-\fImmdd\fR specifies the month and day for which \fBrunacct\fR will rerun the
-accounting. The entry point for processing is based on the contents of \fB
-statefile\fR; to override this, include the desired \fIstate\fR on the command
-line to designate where processing should begin.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRStarting \fBrunacct\fR
-.sp
-.LP
-The following example starts \fBrunacct\fR:
-
-.sp
-.in +2
-.nf
-example% nohup runacct 2> /var/adm/acct/nite/fd2log &
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRRestarting \fBrunacct\fR
-.sp
-.LP
-The following example restarts \fBrunacct\fR:
-
-.sp
-.in +2
-.nf
-example% nohup runacct 0601 2>> /var/adm/acct/nite/fd2log &
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRRestarting \fBrunacct\fR at a Specific State
-.sp
-.LP
-The following example restarts \fBrunacct\fR at a specific state:
-
-.sp
-.in +2
-.nf
-example% nohup runacct 0601 MERGE 2>> /var/adm/acct/nite/fd2log &
-.fi
-.in -2
-.sp
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/var/adm/wtmpx\fR\fR
-.ad
-.sp .6
-.RS 4n
-History of user access and administration information
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/adm/pacct\fR\fIincr\fR\fR
-.ad
-.sp .6
-.RS 4n
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/adm/acct/nite/active\fR\fR
-.ad
-.sp .6
-.RS 4n
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/adm/acct/nite/daytacct\fR\fR
-.ad
-.sp .6
-.RS 4n
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/adm/acct/nite/lock\fR\fR
-.ad
-.sp .6
-.RS 4n
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/adm/acct/nite/lock1\fR\fR
-.ad
-.sp .6
-.RS 4n
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/adm/acct/nite/lastdate\fR\fR
-.ad
-.sp .6
-.RS 4n
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/adm/acct/nite/statefile\fR\fR
-.ad
-.sp .6
-.RS 4n
-
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBacctcom\fR(1), \fBmail\fR(1), \fBacct\fR(1M), \fBacctcms\fR(1M),
-\fBacctcon\fR(1M), \fBacctmerg\fR(1M), \fBacctprc\fR(1M), \fBacctsh\fR(1M),
-\fBcron\fR(1M), \fBfwtmp\fR(1M), \fBacct\fR(2), \fBacct.h\fR(3HEAD),
-\fButmpx\fR(4), \fBattributes\fR(5)
-.SH NOTES
-.sp
-.LP
-It is not recommended to restart \fBrunacct\fR in the \fBSETUP\fR \fIstate\fR.
-Run \fBSETUP\fR manually and restart using:
-.sp
-.LP
-\fBrunacct\fR \fImmdd\fR \fBWTMPFIX\fR
-.sp
-.LP
-If \fBrunacct\fR failed in the \fBPROCESS\fR \fIstate,\fR remove the last
-\fBptacct\fR file because it will not be complete.
-.sp
-.LP
-The \fBrunacct\fR command can process a maximum of
-.RS +4
-.TP
-.ie t \(bu
-.el o
-6000 distinct sessions
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-1000 distinct terminal lines
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-2000 distinct login names
-.RE
-.sp
-.LP
-during a single invocation of the command. If at some point the actual number
-of any one of these items exceeds the maximum, the command will not succeed.
-.sp
-.LP
-Do not invoke \fBrunacct\fR at the same time as \fBckpacct\fR, as there may be
-a conflict if both scripts attempt to execute \fBturnacct switch\fR
-simultaneously.
diff --git a/usr/src/man/man1m/rwall.1m b/usr/src/man/man1m/rwall.1m
deleted file mode 100644
index d66b962b75..0000000000
--- a/usr/src/man/man1m/rwall.1m
+++ /dev/null
@@ -1,73 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 1988 Sun Microsystems, Inc. - All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH RWALL 1M "Nov 6, 2000"
-.SH NAME
-rwall \- write to all users over a network
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/rwall\fR \fIhostname\fR...
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/rwall\fR \fB-n\fR \fInetgroup\fR...
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/rwall\fR \fB-h\fR \fIhostname\fR \fB-n\fR \fInetgroup\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBrwall\fR reads a message from standard input until EOF. It then sends this
-message, preceded by the line:
-.sp
-.ne 2
-.na
-\fB\fR
-.ad
-.sp .6
-.RS 4n
-\fBBroadcast Message .\|.\|.\fR
-.RE
-
-.sp
-.LP
-to all users logged in on the specified host machines. With the \fB-n\fR
-option, it sends to the specified network groups.
-.SH OPTIONS
-.sp
-.ne 2
-.na
-\fB\fB-n\fR\fI netgroup\fR\fR
-.ad
-.RS 15n
-Send the broadcast message to the specified network groups.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-h\fR\fI hostname\fR\fR
-.ad
-.RS 15n
-Specify the \fBhostname\fR, the name of the host machine.
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBinetd\fR(1M), \fBlisten\fR(1M), \fBpmadm\fR(1M), \fBsacadm\fR(1M),
-\fBwall\fR(1M), \fBattributes\fR(5)
-.SH NOTES
-.sp
-.LP
-The timeout is fairly short to allow transmission to a large group of machines
-(some of which may be down) in a reasonable amount of time. Thus the message
-may not get through to a heavily loaded machine.
diff --git a/usr/src/man/man1m/sac.1m b/usr/src/man/man1m/sac.1m
deleted file mode 100644
index 1e0a31879c..0000000000
--- a/usr/src/man/man1m/sac.1m
+++ /dev/null
@@ -1,247 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T
-.\" Copyright (C) 2002, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
-.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SAC 1M "Apr 21, 2009"
-.SH NAME
-sac \- service access controller
-.SH SYNOPSIS
-.LP
-.nf
-\fBsac\fR \fB-t\fR \fIsanity_interval\fR
-.fi
-
-.LP
-.nf
-\fB/usr/lib/saf/sac\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The Service Access Controller (SAC) is the overseer of the server machine. It
-is started when the server machine enters multiuser mode. The \fBSAC\fR
-performs several important functions as explained below.
-.SS "Customizing the SAC Environment"
-.sp
-.LP
-When \fBsac\fR is invoked, it first looks for the per-system configuration
-script \fB/etc/saf/_sysconfig\fR. \fBsac\fR interprets \fB_sysconfig\fR to
-customize its own environment. The modifications made to the \fBSAC\fR
-environment by \fB_sysconfig\fR are inherited by all the children of the
-\fBSAC.\fR This inherited environment may be modified by the children.
-.SS "Starting Port Monitors"
-.sp
-.LP
-After it has interpreted the \fB_sysconfig\fR file, the \fBsac\fR reads its
-administrative file \fB/etc/saf/_sactab\fR. \fB_sactab\fR specifies which port
-monitors are to be started. For each port monitor to be started, \fBsac\fR
-forks a child (see \fBfork\fR(2)) and creates a \fButmpx\fR entry with the
-\fBtype\fR field set to \fBLOGIN_PROCESS\fR. Each child then interprets its
-per-port monitor configuration script \fB/etc/saf/\fR\fIpmtag\fR\fB/_config\fR
-, if the file exists. These modifications to the environment affect the port
-monitor and will be inherited by all its children. Finally, the child process
-\fBexec\fRs the port monitor, using the command found in the \fB_sactab\fR
-entry. (See \fBsacadm\fR; this is the command given with the \fB-c\fR option
-when the port monitor is added to the system.)
-.SS "Polling Port Monitors to Detect Failure"
-.sp
-.LP
-The \fB-t\fR option sets the frequency with which \fBsac\fR polls the port
-monitors on the system. This time may also be thought of as half of the maximum
-latency required to detect that a port monitor has failed and that recovery
-action is necessary.
-.SS "Administrative functions"
-.sp
-.LP
-The Service Access Controller represents the administrative point of control
-for port monitors. Its administrative tasks are explained below.
-.sp
-.LP
-When queried (\fBsacadm\fR with either \fB-l\fR or \fB-L\fR), the Service
-Access Controller returns the status of the port monitors specified, which
-\fBsacadm\fR prints on the standard output. A port monitor may be in one of six
-states:
-.sp
-.ne 2
-.na
-\fB\fBENABLED\fR\fR
-.ad
-.RS 14n
-The port monitor is currently running and is accepting connections. See
-\fBsacadm\fR(1M) with the \fB-e\fR option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBDISABLED\fR\fR
-.ad
-.RS 14n
-The port monitor is currently running and is not accepting connections. See
-\fBsacadm\fR with the \fB-d\fR option, and see \fBNOTRUNNING\fR, below.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSTARTING\fR\fR
-.ad
-.RS 14n
-The port monitor is in the process of starting up. \fBSTARTING\fR is an
-intermediate state on the way to \fBENABLED\fR or \fBDISABLED\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBFAILED\fR\fR
-.ad
-.RS 14n
-The port monitor was unable to start and remain running.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSTOPPING\fR\fR
-.ad
-.RS 14n
-The port monitor has been manually terminated but has not completed its
-shutdown procedure. \fBSTOPPING\fR is an intermediate state on the way to
-\fBNOTRUNNING\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBNOTRUNNING\fR\fR
-.ad
-.RS 14n
-The port monitor is not currently running. (See \fBsacadm\fR with \fB-k\fR.)
-This is the normal "not running" state. When a port monitor is killed, all
-ports it was monitoring are inaccessible. It is not possible for an external
-user to tell whether a port is not being monitored or the system is down. If
-the port monitor is not killed but is in the \fBDISABLED\fR state, it may be
-possible (depending on the port monitor being used) to write a message on the
-inaccessible port telling the user who is trying to access the port that it is
-disabled. This is the advantage of having a \fBDISABLED\fR state as well as the
-\fBNOTRUNNING\fR state.
-.RE
-
-.sp
-.LP
-When a port monitor terminates, the \fBSAC\fR removes the \fButmpx\fR entry for
-that port monitor.
-.sp
-.LP
-The \fBSAC\fR receives all requests to enable, disable, start, or stop port
-monitors and takes the appropriate action.
-.sp
-.LP
-The \fBSAC\fR is responsible for restarting port monitors that terminate.
-Whether or not the \fBSAC\fR will restart a given port monitor depends on two
-things:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The restart count specified for the port monitor when the port monitor was
-added by \fBsacadm\fR; this information is included in
-\fB/etc/saf/\fR\fIpmtag\fR\fB/_sactab.\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The number of times the port monitor has already been restarted.
-.RE
-.SH SECURITY
-.sp
-.LP
-\fBsac\fR uses \fBpam\fR(3PAM) for session management. The \fBPAM\fR
-configuration policy, listed through \fB/etc/pam.conf\fR, specifies the session
-management module to be used for \fBsac\fR. Here is a partial \fBpam.conf\fR
-file with entries for \fBsac\fR using the UNIX session management module.
-.sp
-.in +2
-.nf
-sac session required pam_unix_session.so.1
-.fi
-.in -2
-
-.sp
-.LP
-If there are no entries for the \fBsac\fR service, then the entries for the
-"other" service will be used.
-.SH OPTIONS
-.sp
-.ne 2
-.na
-\fB\fB-t\fR \fIsanity_interval\fR\fR
-.ad
-.RS 22n
-Sets the frequency (\fIsanity_interval\fR) with which \fBsac\fR polls the port
-monitors on the system.
-.RE
-
-.SH FILES
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fB/etc/saf/_sactab\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fB/etc/saf/_sysconfig\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fB/var/adm/utmpx\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fB/var/saf/_log\fR
-.RE
-.SH SEE ALSO
-.sp
-.LP
-\fBpmadm\fR(1M), \fBsacadm\fR(1M), \fBfork\fR(2) \fBpam\fR(3PAM),
-\fBpam.conf\fR(4), \fBattributes\fR(5), \fBpam_authtok_check\fR(5),
-\fBpam_authtok_get\fR(5), \fBpam_authtok_store\fR(5), \fBpam_dhkeys\fR(5),
-\fBpam_passwd_auth\fR(5), \fBpam_unix_account\fR(5), \fBpam_unix_auth\fR(5),
-\fBpam_unix_session\fR(5)
-.SH NOTES
-.sp
-.LP
-The \fBpam_unix\fR(5) module is no longer supported. Similar functionality is
-provided by \fBpam_authtok_check\fR(5), \fBpam_authtok_get\fR(5),
-\fBpam_authtok_store\fR(5), \fBpam_dhkeys\fR(5), \fBpam_passwd_auth\fR(5),
-\fBpam_unix_account\fR(5), \fBpam_unix_auth\fR(5), and
-\fBpam_unix_session\fR(5).
-.sp
-.LP
-The service access controller service is managed by the service management
-facility, \fBsmf\fR(5), under the service identifier:
-.sp
-.in +2
-.nf
-svc:/system/sac:default
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Administrative actions on this service, such as enabling, disabling, or
-requesting restart, can be performed using \fBsvcadm\fR(1M). The service's
-status can be queried using the \fBsvcs\fR(1) command.
diff --git a/usr/src/man/man1m/sacadm.1m b/usr/src/man/man1m/sacadm.1m
deleted file mode 100644
index adcb22fef0..0000000000
--- a/usr/src/man/man1m/sacadm.1m
+++ /dev/null
@@ -1,549 +0,0 @@
-'\" te
-.\" Copyright (c) 1996, Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SACADM 1M "Sep 14, 1992"
-.SH NAME
-sacadm \- service access controller administration
-.SH SYNOPSIS
-.LP
-.nf
-\fBsacadm\fR \fB-a\fR \fB-p\fR \fIpmtag\fR \fB-t\fR \fItype\fR \fB-c\fR \fIcmd\fR \fB-v\fR \fIver\fR [\fB-f\fR dx] [\fB-n\fR \fIcount\fR]
- [\fB-y\fR \fIcomment\fR] [\fB-z\fR \fIscript\fR]
-.fi
-
-.LP
-.nf
-\fBsacadm\fR \fB-r\fR \fB-p\fR \fIpmtag\fR
-.fi
-
-.LP
-.nf
-\fBsacadm\fR \fB-s\fR \fB-p\fR \fIpmtag\fR
-.fi
-
-.LP
-.nf
-\fBsacadm\fR \fB-k\fR \fB-p\fR \fIpmtag\fR
-.fi
-
-.LP
-.nf
-\fBsacadm\fR \fB-e\fR \fB-p\fR \fIpmtag\fR
-.fi
-
-.LP
-.nf
-\fBsacadm\fR \fB-d\fR \fB-p\fR \fIpmtag\fR
-.fi
-
-.LP
-.nf
-\fBsacadm\fR \fB-l\fR [\fB-p\fR \fIpmtag\fR | \fB-t\fR \fItype\fR]
-.fi
-
-.LP
-.nf
-\fBsacadm\fR \fB-L\fR [\fB-p\fR \fIpmtag\fR | \fB-t\fR \fItype\fR]
-.fi
-
-.LP
-.nf
-\fBsacadm\fR \fB-g\fR \fB-p\fR \fIpmtag\fR [\fB-z\fR \fIscript\fR]
-.fi
-
-.LP
-.nf
-\fBsacadm\fR \fB-G\fR [\fB-z\fR \fIscript\fR]
-.fi
-
-.LP
-.nf
-\fBsacadm\fR \fB-x\fR [\fB-p\fR \fIpmtag\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBsacadm\fR is the administrative command for the upper level of the Service
-Access Facility hierarchy (port monitor administration). \fBsacadm\fR performs
-the following functions:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-adds or removes a port monitor
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-starts or stops a port monitor
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-enables or disables a port monitor
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-installs or replaces a per-system configuration script
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-installs or replaces a per-port monitor configuration script
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-prints requested port monitor information
-.RE
-.sp
-.LP
-Requests about the status of port monitors (\fB-l\fR and \fB-L\fR) and requests
-to print per-port monitor and per-system configuration scripts (\fB-g\fR and
-\fB-G\fR without the \fB-z\fR option) may be executed by any user on the
-system. Other \fBsacadm\fR commands may be executed only by the super-user.
-.SH OPTIONS
-.sp
-.ne 2
-.na
-\fB\fB-a\fR\fR
-.ad
-.RS 14n
-Add a port monitor. When adding a port monitor, \fBsacadm\fR creates the
-supporting directory structure in \fB/etc/saf\fR and \fB/var/saf\fR and adds an
-entry for the new port monitor to \fB/etc/saf/_sactab\fR. The file
-\fB_sactab\fR already exists on the delivered system. Initially, it is empty
-except for a single line, which contains the version number of the Service
-Access Controller. Unless the command line that adds the new port monitor
-includes the \fB-f\fR option with the \fB-x\fR argument, the new port monitor
-will be started. Because of the complexity of the options and arguments that
-follow the \fB- a\fR option, it may be convenient to use a command script or
-the menu system to add port monitors.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-c\fR \fIcmd\fR\fR
-.ad
-.RS 14n
-Execute the command string \fIcmd\fR to start a port monitor. The \fB-c\fR
-option may be used only with a \fB-a\fR. A \fB-a\fR option requires a \fB-c\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-d\fR\fR
-.ad
-.RS 14n
-Disable the port monitor \fIpmtag\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-e\fR\fR
-.ad
-.RS 14n
-Enable the port monitor \fIpmtag\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR \fBdx\fR\fR
-.ad
-.RS 14n
-The \fB-f\fR option specifies one or both of the following two flags which are
-then included in the flags field of the \fB_sactab\fR entry for the new port
-monitor. If the \fB-f\fR option is not included on the command line, no flags
-are set and the default conditions prevail. By default, a port monitor is
-started. A \fB-f\fR option with no following argument is illegal.
-.sp
-.ne 2
-.na
-\fBd\fR
-.ad
-.RS 5n
-Do not enable the new port monitor.
-.RE
-
-.sp
-.ne 2
-.na
-\fBx\fR
-.ad
-.RS 5n
-Do not start the new port monitor.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-g\fR\fR
-.ad
-.RS 14n
-The \fB-g\fR option is used to request output or to install or replace the
-per-port monitor configuration script \fB/etc/saf/\fR\fIpmtag\fR\fB/_config\fR.
-\fB-g\fR requires a \fB-p\fR option. The \fB-g\fR option with only a \fB-p\fR
-option prints the per-port monitor configuration script for port monitor
-\fIpmtag\fR. The \fB-g\fR option with a \fB-p\fR option and a \fB-z\fR option
-installs the file \fBscript\fR as the per-port monitor configuration script
-for port monitor \fIpmtag\fR. Other combinations of options with \fB-g\fR are
-invalid.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-G\fR\fR
-.ad
-.RS 14n
-The \fB-G\fR option is used to request output or to install or replace the
-per-system configuration script \fB/etc/saf/_sysconfig\fR. The \fB-G\fR option
-by itself prints the per-system configuration script. The \fB-G\fR option in
-combination with a \fB-z\fR option installs the file \fBscript\fR as the
-per-system configuration script. Other combinations of options with a \fB-G\fR
-option are invalid.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-k\fR\fR
-.ad
-.RS 14n
-Stop port monitor \fIpmtag\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR\fR
-.ad
-.RS 14n
-The \fB-l\fR option is used to request port monitor information. The \fB-l\fR
-by itself lists all port monitors on the system. The \fB-l\fR option in
-combination with the \fB-p\fR option lists only the port monitor specified by
-\fIpmtag\fR. A \fB-l\fR in combination with the \fB-t\fR option lists all port
-monitors of type \fBtype\fR. Any other combination of options with the \fB-l\fR
-option is invalid.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-L\fR\fR
-.ad
-.RS 14n
-The \fB-L\fR option is identical to the \fB-l\fR option except that the output
-appears in a condensed format.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR \fIcount\fR\fR
-.ad
-.RS 14n
-Set the restart count to \fIcount\fR. If a restart count is not specified,
-count is set to \fB0\fR. A count of \fB0\fR indicates that the port monitor is
-not to be restarted if it fails.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR \fIpmtag\fR\fR
-.ad
-.RS 14n
-Specifies the tag associated with a port monitor.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-r\fR\fR
-.ad
-.RS 14n
-Remove port monitor \fIpmtag\fR. \fBsacadm\fR removes the port monitor entry
-from \fB/etc/saf/_sactab\fR. If the removed port monitor is not running, then
-no further action is taken. If the removed port monitor is running, the Service
-Access Controller (SAC) sends it \fBSIGTERM\fR to indicate that it should shut
-down. Note that the port monitor's directory structure remains intact.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR\fR
-.ad
-.RS 14n
-Start a port monitor. The SAC starts the port monitor \fIpmtag\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-t\fR \fBtype\fR\fR
-.ad
-.RS 14n
-Specifies the port monitor type.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR \fBver\fR\fR
-.ad
-.RS 14n
-Specifies the version number of the port monitor. This version number may be
-given as
-.sp
-.in +2
-.nf
-\fB\fR\fB-v\fR\fB `\fR\fIpmspec\fR \fB-V\fR`
-.fi
-.in -2
-.sp
-
-where \fIpmspec\fR is the special administrative command for port monitor
-\fIpmtag\fR. This special command is \fBttyadm\fR for \fBttymon\fR and
-\fBnlsadmin\fR for \fBlisten\fR. The version stamp of the port monitor is known
-by the command and is returned when \fIpmspec\fR is invoked with a \fB-V\fR
-option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-x\fR\fR
-.ad
-.RS 14n
-The \fB-x\fR option by itself tells the SAC to read its database file
-(\fB_sactab\fR). The \fB-x\fR option with the \fB-p\fR option tells port
-monitor \fIpmtag\fR to read its administrative file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-y\fR \fIcomment\fR\fR
-.ad
-.RS 14n
-Include \fIcomment\fR in the \fB_sactab\fR entry for port monitor \fIpmtag\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-z\fR \fBscript\fR\fR
-.ad
-.RS 14n
-Used with the \fB-g\fR and \fB-G\fR options to specify the name of a file that
-contains a configuration script. With the \fB-g\fR option, \fBscript\fR is a
-per-port monitor configuration script; with \fB-G\fR it is a per-system
-configuration script. Modifying a configuration script is a three-step
-procedure. First a copy of the existing script is made (\fB-g\fR or \fB-G\fR).
-Then the copy is edited. Finally, the copy is put in place over the existing
-script (\fB-g\fR or \fB-G\fR with \fB-z\fR).
-.RE
-
-.SH OUTPUT
-.sp
-.LP
-If successful, \fBsacadm\fR will exit with a status of \fB0\fR. If \fBsacadm\fR
-fails for any reason, it will exit with a nonzero status. Options that request
-information will write the information on the standard output. In the condensed
-format (\fB-L\fR), port monitor information is printed as a sequence of
-colon-separated fields; empty fields are indicated by two successive colons.
-The standard format (\fB-l\fR) prints a header identifying the columns, and
-port monitor information is aligned under the appropriate headings. In this
-format, an empty field is indicated by a hyphen. The comment character is
-\fB#\fR.
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRA sample output of the \fBsacadm\fR command.
-.sp
-.LP
-The following command line adds a port monitor. The port monitor tag is
-\fBnpack\fR; its type is \fBlisten\fR; if necessary, it will restart three
-times before failing; its administrative command is \fBnlsadmin\fR; and the
-configuration script to be read is in the file \fBscript\fR:
-
-.sp
-.in +2
-.nf
-\fBsacadm \fR\fB-a\fR\fB \fR\fB-p\fR\fB npack \fR\fB-t\fR\fB listen \fR\fB-c\fR\fB /usr/lib/saf/listen npack\fR
-\fB\fR\fB-v\fR\fB `nlsadmin \fR\fB-V\fR\fB` \fR\fB-n\fR\fB 3 \fR\fB-z\fR\fB script\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Remove a port monitor whose tag is \fBpmtag\fR:
-
-.sp
-.in +2
-.nf
-\fBsacadm\fR \fB-r\fR \fB-p\fR \fBpmtag\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Start the port monitor whose tag is \fBpmtag\fR:
-
-.sp
-.in +2
-.nf
-\fBsacadm\fR \fB-s\fR \fB-p\fR \fBpmtag\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Stop the port monitor whose tag is \fBpmtag\fR:
-
-.sp
-.in +2
-.nf
-\fBsacadm\fR \fB-k\fR \fB-p\fR \fBpmtag\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Enable the port monitor whose tag is \fBpmtag\fR:
-
-.sp
-.in +2
-.nf
-\fBsacadm\fR \fB-e\fR \fB-p\fR \fBpmtag\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Disable the port monitor whose tag is \fBpmtag\fR:
-
-.sp
-.in +2
-.nf
-\fBsacadm\fR \fB-d\fR \fB-p\fR \fBpmtag\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-List status information for all port monitors:
-
-.sp
-.in +2
-.nf
-\fBsacadm\fR \fB-l\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-List status information for the port monitor whose tag is \fBpmtag\fR:
-
-.sp
-.in +2
-.nf
-\fBsacadm\fR \fB-l\fR \fB-p\fR \fBpmtag\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-List the same information in condensed format:
-
-.sp
-.in +2
-.nf
-\fBsacadm\fR \fB-L\fR \fB-p\fR \fBpmtag\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-List status information for all port monitors whose type is \fBlisten\fR:
-
-.sp
-.in +2
-.nf
-\fBsacadm\fR \fB-l\fR \fB-t\fR \fBlisten\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Replace the per-port monitor configuration script associated with the port
-monitor whose tag is \fBpmtag\fR with the contents of the file
-\fBfile.config\fR:
-
-.sp
-.in +2
-.nf
-\fBsacadm\fR \fB-g\fR \fB-p\fR \fBpmtag\fR \fB-z\fR \fBfile.config\fR
-.fi
-.in -2
-.sp
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/saf/_sactab\fR\fR
-.ad
-.RS 26n
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/saf/_sysconfig\fR\fR
-.ad
-.RS 26n
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/saf/\fIpmtag\fR\fR\fB/_config\fR\fR
-.ad
-.RS 26n
-
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBpmadm\fR(1M), \fBsac\fR(1M), \fBdoconfig\fR(3NSL), \fBattributes\fR(5)
diff --git a/usr/src/man/man1m/saf.1m b/usr/src/man/man1m/saf.1m
deleted file mode 100644
index 56e7c77b6c..0000000000
--- a/usr/src/man/man1m/saf.1m
+++ /dev/null
@@ -1,1508 +0,0 @@
-'\" te
-.\" Copyright (c) 1998, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SAF 1M "Jul 30, 1998"
-.SH NAME
-saf \- Service Access Facility
-.SH DESCRIPTION
-.sp
-.LP
-The \fBSAF\fR generalizes the procedures for service access so that login
-access on the local system and network access to local services are managed in
-similar ways. Under the \fBSAF,\fR systems may access services using a variety
-of port monitors, including ttymon, the listener, and port monitors written
-expressly for a user's application. The manner in which a port monitor observes
-and manages access ports is specific to the port monitor and not to any
-component of the \fBSAF.\fR Users may therefore extend their systems by
-developing and installing their own port monitors. One of the important
-features of the \fBSAF\fR is that it can be extended in this way by users.
-.sp
-.LP
-Relative to the \fBSAF,\fR a service is a process that is started. There are no
-restrictions on the functions a service may provide. The \fBSAF\fR consists of
-a controlling process, the service access controller (SAC), and two
-administrative levels corresponding to two levels in the supporting directory
-structure. The top administrative level is concerned with port monitor
-administration, the lower level with service administration. The \fBSAC\fR is
-documented in the \fBsac\fR(1M) man page. The administrative levels and
-associated utilities are documented in the \fISystem Administration Guide -
-Volume II\fR. The requirements for writing port monitors and the functions a
-port monitor must perform to run under the \fBSAF\fR and the \fBSAC\fR are
-documented here.
-.SS "Port Monitors"
-.sp
-.LP
-A port monitor is a process that is responsible for monitoring a set of
-homogeneous, incoming ports on a machine. A port monitor's major purpose is to
-detect incoming service requests and to dispatch them appropriately.
-.sp
-.LP
-A port is an externally seen access point on a system. A port may be an address
-on a network (TSAP or PSAP), a hardwired terminal line, an incoming phone line,
-etc. The definition of what constitutes a port is strictly a function of the
-port monitor itself.
-.sp
-.LP
-A port monitor performs certain basic functions. Some of these are required to
-conform to the \fBSAF;\fR others may be specified by the requirements and
-design of the port monitor itself. Port monitors have two main functions:
-managing ports and monitoring ports for indications of activity.
-.sp
-.ne 2
-.na
-\fBPort Management\fR
-.ad
-.RS 23n
-The first function of a port monitor is to manage a port. The actual details of
-how a port is managed are defined by the person who defines the port monitor. A
-port monitor is not restricted to handling a single port; it may handle
-multiple ports simultaneously.
-.sp
-Some examples of port management are setting the line speed on incoming phone
-connections, binding an appropriate network address, reinitializing the port
-when the service terminates, outputting a prompt, etc.
-.RE
-
-.sp
-.ne 2
-.na
-\fBActivity Monitoring\fR
-.ad
-.RS 23n
-The second function of a port monitor is to monitor the port or ports for which
-it is responsible for indications of activity. Two types of activity may be
-detected.
-.sp
-The first is an indication to the port monitor to take some port
-monitor-specific action. Pressing the break key to indicate that the line speed
-should be cycled is an example of a port monitor activity. Not all port
-monitors need to recognize and respond to the same indications. The indication
-used to attract the attention of the port monitor is defined by the person who
-defines the port monitor.
-.sp
-The second is an incoming service request. When a service request is received,
-a port monitor must be able to determine which service is being requested from
-the port on which the request is received. The same service may be available on
-more than one port.
-.RE
-
-.SS "Other Port Monitor Functions"
-.sp
-.LP
-This section briefly describes other port monitor functions.
-.sp
-.ne 2
-.na
-\fBRestricting Access to the System\fR
-.ad
-.sp .6
-.RS 4n
-A port monitor must be able to restrict access to the system without disturbing
-services that are still running. In order to do this, a port monitor must
-maintain two internal states: enabled and disabled. The port monitor starts in
-the state indicated by the \fBISTATE\fR environment variable provided by the
-\fBsac.\fR See sac(1M) for details. Enabling or disabling a port monitor
-affects all ports for which the port monitor is responsible. If a port monitor
-is responsible for a single port, only that port will be affected. If a port
-monitor is responsible for multiple ports, the entire collection of ports will
-be affected. Enabling or disabling a port monitor is a dynamic operation: it
-causes the port monitor to change its internal state. The effect does not
-persist across new invocations of the port monitor. Enabling or disabling an
-individual port, however, is a static operation: it causes a change to an
-administrative file. The effect of this change will persist across new
-invocations of the port monitor.
-.RE
-
-.sp
-.ne 2
-.na
-\fBCreating \fButmpx\fR Entries\fR
-.ad
-.sp .6
-.RS 4n
-Port monitors are responsible for creating \fButmpx\fR entries with the type
-field set to USER_PROCESS for services they start. If this action has been
-specified, by using the \fB-fu\fR option in the \fBpmadm\fR command line that
-added the service, these \fButmpx\fR entries may in turn be modified by the
-service. When the service terminates, the \fButmpx\fR entry must be set to
-DEAD_PROCESS.
-.RE
-
-.sp
-.ne 2
-.na
-\fBPort Monitor Process IDs and Lock Files\fR
-.ad
-.sp .6
-.RS 4n
-When a port monitor starts, it writes its process id into a file named
-\fB_pid\fR in the current directory and places an advisory lock on the file.
-.RE
-
-.sp
-.ne 2
-.na
-\fBChanging the Service Environment: Running\fR
-.ad
-.sp .6
-.RS 4n
-\fBdoconfig\fR(3NSL) Before invoking the service designated in the port monitor
-administrative file, \fB_pmtab\fR, a port monitor must arrange for the
-per-service configuration script to be run, if one exists, by calling the
-library function \fBdoconfig\fR(3NSL). Because the per-service configuration
-script may specify the execution of restricted commands, as well as for other
-security reasons, port monitors are invoked with root permissions. The details
-of how services are invoked are specified by the person who defines the port
-monitor.
-.RE
-
-.sp
-.ne 2
-.na
-\fBTerminating a Port Monitor\fR
-.ad
-.sp .6
-.RS 4n
-A port monitor must terminate itself gracefully on receipt of the signal
-\fBSIGTERM.\fR The termination sequence is the following:
-.RS +4
-.TP
-1.
-The port monitor enters the stopping state; no further service requests are
-accepted.
-.RE
-.RS +4
-.TP
-2.
-Any attempt to re-enable the port monitor will be ignored.
-.RE
-.RS +4
-.TP
-3.
-The port monitor yields control of all ports for which it is responsible. It
-must be possible for a new instantiation of the port monitor to start correctly
-while a previous instantiation is stopping.
-.RE
-.RS +4
-.TP
-4.
-The advisory lock on the process id file is released. Once this lock is
-released, the contents of the process id file are undefined and a new
-invocation of the port monitor may be started.
-.RE
-.RE
-
-.SS "SAF Files"
-.sp
-.LP
-This section briefly covers the files used by the \fBSAF.\fR
-.sp
-.ne 2
-.na
-\fBThe Port Monitor Administrative File\fR
-.ad
-.sp .6
-.RS 4n
-A port monitor's current directory contains an administrative file named
-\fB_pmtab\fR; \fB_pmtab\fR is maintained by the \fBpmadm\fR command in
-conjunction with a port monitor-specific administrative command.
-.sp
-The port monitor administrative command for a listen port monitor is
-\fBnlsadmin\fR(1M); the port monitor administrative command for ttymon is
-\fBttyadm\fR(1M). Any port monitor written by a user must be provided with an
-administrative command specific to that port monitor to perform similar
-functions.
-.RE
-
-.sp
-.ne 2
-.na
-\fBPer-Service Configuration Files\fR
-.ad
-.sp .6
-.RS 4n
-A port monitor's current directory also contains the per-service configuration
-scripts, if they exist. The names of the per-service configuration scripts
-correspond to the service tags in the \fB_pmtab\fR file.
-.RE
-
-.sp
-.ne 2
-.na
-\fBPrivate Port Monitor Files\fR
-.ad
-.sp .6
-.RS 4n
-A port monitor may create private files in the directory
-\fB/var/saf/\fR\fItag\fR, where \fItag\fR is the name of the port monitor.
-Examples of private files are log files or temporary files.
-.RE
-
-.SS "The SAC/Port Monitor Interface"
-.sp
-.LP
-The \fBSAC\fR creates two environment variables for each port monitor it
-starts:\fBPMTAG\fR and \fBISTATE\fR.
-.sp
-.LP
-This variable is set to a unique port monitor tag by the \fBSAC.\fR The port
-monitor uses this tag to identify itself in response to \fBsac\fR messages.
-\fBISTATE\fR is used to indicate to the port monitor what its initial internal
-state should be. \fBISTATE\fR is set to "enabled" or "disabled" to indicate
-that the port monitor is to start in the enabled or disabled state
-respectively.
-.sp
-.LP
-The \fBSAC\fR performs a periodic sanity poll of the port monitors. The
-\fBSAC\fR communicates with port monitors through FIFOs. A port monitor should
-open _pmpipe, in the current directory, to receive messages from the \fBSAC\fR
-and \fB\&../_sacpipe\fR to send return messages to the \fBSAC.\fR
-.SS "Message Formats"
-.sp
-.LP
-This section describes the messages that may be sent from the \fBSAC\fR to a
-port monitor (\fBsac\fR messages), and from a port monitor to the \fBSAC\fR
-(port monitor messages). These messages are sent through FIFOs and are in the
-form of C structures.
-.sp
-.ne 2
-.na
-\fB\fBsac\fR Messages\fR
-.ad
-.RS 16n
-The format of messages from the \fBSAC\fR is defined by the structure
-\fBsacmsg\fR:
-.sp
-.in +2
-.nf
-struct sacmsg
-{
- int sc_size; /* size of optional data portion */
- char sc_type; /* type of message */
-};
-.fi
-.in -2
-.sp
-
-.RE
-
-.sp
-.LP
-The \fBSAC\fR may send four types of messages to port monitors. The type of
-message is indicated by setting the \fBsc_type\fR field of the \fBsacmsg\fR
-structure to one of the following:
-.sp
-.ne 2
-.na
-\fBSC_STATUS\|\fR
-.ad
-.RS 15n
-status request
-.RE
-
-.sp
-.ne 2
-.na
-\fBSC_ENABLE\|\fR
-.ad
-.RS 15n
-enable message
-.RE
-
-.sp
-.ne 2
-.na
-\fBSC_DISABLE\fR
-.ad
-.RS 15n
-disable message
-.RE
-
-.sp
-.ne 2
-.na
-\fBSC_READDB\|\fR
-.ad
-.RS 15n
-message indicating that the port monitor's _pmtab file should be read
-.RE
-
-.sp
-.LP
-The \fBsc_size\fR field indicates the size of the optional data part of the
-message. See "Message Classes." For Solaris, \fBsc_size\fR should always be set
-to 0. A port monitor must respond to every message sent by the \fBsac.\fR
-.SS "Port Monitor Messages"
-.sp
-.LP
-The format of messages from a port monitor to the \fBSAC\fR is defined by the
-structure \fBpmmsg\fR:
-.sp
-.in +2
-.nf
-struct pmmsg {
- char pm_type; /* type of message */
- unchar_t pm_state; /* current state of port monitor */
- char pm_maxclass; /* maximum message class this port
- monitor understands */
- char pm_tag[PMTAGSIZE + 1]; /* port monitor's tag */
- int pm_size; /* size of optional data portion */
-};
-.fi
-.in -2
-
-.sp
-.LP
-Port monitors may send two types of messages to the \fBSAC.\fR The type of
-message is indicated by setting the \fBpm_type\fR field of the \fBpmmsg\fR
-structure to one of the following:
-.sp
-.ne 2
-.na
-\fBPM_STATUS\fR
-.ad
-.RS 14n
-state information
-.RE
-
-.sp
-.ne 2
-.na
-\fBPM_UNKNOWN\fR
-.ad
-.RS 14n
-negative acknowledgment
-.RE
-
-.sp
-.LP
-For both types of messages, the \fBpm_tag\fR field is set to the port monitor's
-tag and the \fBpm_state\fR field is set to the port monitor's current state.
-Valid states are:
-.sp
-.ne 2
-.na
-\fBPM_STARTING\fR
-.ad
-.RS 15n
-starting
-.RE
-
-.sp
-.ne 2
-.na
-\fBPM_ENABLED\fR
-.ad
-.RS 15n
-enabled
-.RE
-
-.sp
-.ne 2
-.na
-\fBPM_DISABLED\fR
-.ad
-.RS 15n
-disabled
-.RE
-
-.sp
-.ne 2
-.na
-\fBPM_STOPPING\fR
-.ad
-.RS 15n
-stopping
-.RE
-
-.sp
-.LP
-The current state reflects any changes caused by the last message from the
-\fBSAC.\fR The status message is the normal return message. The negative
-acknowledgment should be sent only when the message received is not understood.
-\fBpm_size\fR indicates the size of the optional data part of the message.
-\fBpm_maxclass\fR is used to specify a message class. Both are discussed under
-"Message Classes." In Solaris, always set \fBpm_maxclass\fR to 1 and
-\fBsc_size\fR to 0. Port monitors may never initiate messages; they may only
-respond to messages that they receive.
-.SS "Message Classes"
-.sp
-.LP
-The concept of message class has been included to accommodate possible
-\fBSAF\fR extensions. The messages described above are all class 1 messages.
-None of these messages contains a variable data portion; all pertinent
-information is contained in the message header. If new messages are added to
-the protocol, they will be defined as new message classes (for example, class
-2). The first message the \fBSAC\fR sends to a port monitor will always be a
-class 1 message. Since all port monitors, by definition, understand class 1
-messages, the first message the \fBSAC\fR sends is guaranteed to be understood.
-In its response to the \fBSAC,\fR the port monitor sets the \fBpm_maxclass\fR
-field to the maximum message class number for that port monitor. The \fBSAC\fR
-will not send messages to a port monitor from a class with a larger number than
-the value of \fBpm_maxclass\fR. Requests that require messages of a higher
-class than the port monitor can understand will fail. For Solaris, always set
-\fBpm_maxclass\fR to 1.
-.sp
-.LP
-For any given port monitor, messages of class \fBpm_maxclass\fR and messages of
-all classes with values lower than \fBpm_maxclass\fR are valid. Thus, if the
-\fBpm_maxclass\fR field is set to 3, the port monitor understands messages of
-classes 1, 2, and 3. Port monitors may not generate messages; they may only
-respond to messages. A port monitor's response must be of the same class as the
-originating message. Since only the \fBSAC\fR can generate messages, this
-protocol will function even if the port monitor is capable of dealing with
-messages of a higher class than the \fBSAC\fR can generate. \fBpm_size\fR (an
-element of the pmmsg structure) and \fBsc_size\fR (an element of the
-\fBsacmsg\fR structure) indicate the size of the optional data part of the
-message. The format of this part of the message is undefined. Its definition is
-inherent in the type of message. For Solaris, always set both \fBsc_size\fR and
-\fBpm_size\fR to \fB0\fR.
-.SS "Administrative Interface"
-.sp
-.LP
-This section discusses the port monitor administrative files available under
-the \fBSAC.\fR
-.SS "The SAC Administrative File _sactab"
-.sp
-.LP
-The service access controller's administrative file contains information about
-all the port monitors for which the \fBSAC\fR is responsible. This file exists
-on the delivered system. Initially, it is empty except for a single comment
-line that contains the version number of the \fBSAC.\fR Port monitors are added
-to the system by making entries in the \fBSAC's\fR administrative file. These
-entries should be made using the administrative command \fBsacadm\fR(1M) with a
-\fB-a\fR option. \fBsacadm\fR(1M) is also used to remove entries from the
-\fBSAC's\fR administrative file. Each entry in the \fBSAC's\fR administrative
-file contains the following information.
-.sp
-.ne 2
-.na
-\fB\fBPMTAG\fR\fR
-.ad
-.RS 11n
-A unique tag that identifies a particular port monitor. The system
-administrator is responsible for naming a port monitor. This tag is then used
-by the \fBSAC\fR to identify the port monitor for all administrative purposes.
-\fBPMTAG\fR may consist of up to 14 alphanumeric characters.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPMTYPE\fR\fR
-.ad
-.RS 11n
-The type of the port monitor. In addition to its unique tag, each port monitor
-has a type designator. The type designator identifies a group of port monitors
-that are different invocations of the same entity. ttymon and listen are
-examples of valid port monitor types. The type designator is used to facilitate
-the administration of groups of related port monitors. Without a type
-designator, the system administrator has no way of knowing which port monitor
-tags correspond to port monitors of the same type. \fBPMTYPE\fR may consist of
-up to 14 alphanumeric characters.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBFLGS\fR\fR
-.ad
-.RS 11n
-The flags that are currently defined are:
-.sp
-.ne 2
-.na
-\fBd\fR
-.ad
-.RS 5n
-When started, do not enable the port monitor.
-.RE
-
-.sp
-.ne 2
-.na
-\fBx\fR
-.ad
-.RS 5n
-Do not start the port monitor.
-.RE
-
-If no flag is specified, the default action is taken. By default a port monitor
-is started and enabled.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBRCNT\fR\fR
-.ad
-.RS 11n
-The number of times a port monitor may fail before being placed in a failed
-state. Once a port monitor enters the failed state, the \fBSAC\fR will not try
-to restart it. If a count is not specified when the entry is created, this
-field is set to 0. A restart count of 0 indicates that the port monitor is not
-to be restarted when it fails.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBCOMMAND\fR\fR
-.ad
-.RS 11n
-A string representing the command that will start the port monitor. The first
-component of the string, the command itself, must be a full path name.
-.RE
-
-.SS "The Port Monitor Administrative File _pmtab"
-.sp
-.LP
-Each port monitor will have two directories for its exclusive use. The current
-directory will contain files defined by the \fBSAF\fR (\fB_pmtab\fR,
-\fB_pid\fR) and the per-service configuration scripts, if they exist. The
-directory \fB/var/saf/\fR\fIpmtag,\fR where \fIpmtag\fR is the tag of the port
-monitor, is available for the port monitor's private files. Each port monitor
-has its own administrative file. The \fBpmadm\fR(1M) command should be used to
-add, remove, or modify service entries in this file. Each time a change is made
-using \fBpmadm\fR(1M), the corresponding port monitor rereads its
-administrative file. Each entry in a port monitor's administrative file defines
-how the port monitor treats a specific port and what service is to be invoked
-on that port. Some fields must be present for all types of port monitors. Each
-entry must include a service tag to identify the service uniquely and an
-identity to be assigned to the service when it is started (for example, root).
-.sp
-.LP
-The combination of a service tag and a port monitor tag uniquely define an
-instance of a service. The same service tag may be used to identify a service
-under a different port monitor. The record must also contain port monitor
-specific data (for example, for a ttymon port monitor, this will include the
-prompt string which is meaningful to ttymon). Each type of port monitor must
-provide a command that takes the necessary port monitor-specific data as
-arguments and outputs these data in a form suitable for storage in the file.
-The \fBttyadm\fR(1M) command does this for ttymon and \fBnlsadmin\fR(1M) does
-it for listen. For a user-defined port monitor, a similar administrative
-command must also be supplied. Each service entry in the port monitor
-administrative file must have the following format and contain the information
-listed below:
-.sp
-.in +2
-.nf
-svctag:flgs:id:reserved:reserved:reserved:pmspecific# comment
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-\fBSVCTAG\fR is a unique tag that identifies a service. This tag is unique only
-for the port monitor through which the service is available. Other port
-monitors may offer the same or other services with the same tag. A service
-requires both a port monitor tag and a service tag to identify it uniquely.
-\fBSVCTAG\fR may consist of up to 14 alphanumeric characters. The service
-entries are defined as:
-.sp
-.ne 2
-.na
-\fB\fBFLGS\fR\fR
-.ad
-.RS 14n
-Flags with the following meanings may currently be included in this field:
-.sp
-.ne 2
-.na
-\fBx\fR
-.ad
-.RS 5n
-Do not enable this port. By default the port is enabled.
-.RE
-
-.sp
-.ne 2
-.na
-\fBu\fR
-.ad
-.RS 5n
-Create a utmpx entry for this service. By default no utmpx entry is created
-for the service.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBID\fR\fR
-.ad
-.RS 14n
-The identity under which the service is to be started. The identity has the
-form of a login name as it appears in \fB/etc/passwd\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPMSPECIFIC\fR\fR
-.ad
-.RS 14n
-Examples of port monitor information are addresses, the name of a process to
-execute, or the name of a STREAMS-based pipe to pass a connection through. This
-information will vary to meet the needs of each different type of port monitor.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBCOMMENT\fR\fR
-.ad
-.RS 14n
-A comment associated with the service entry. Port monitors may ignore the
-\fIu\fR flag if creating a utmpx entry for the service is not appropriate to
-the manner in which the service is to be invoked. Some services may not start
-properly unless utmpx entries have been created for them (for example, login).
-Each port monitor administrative file must contain one special comment of the
-form:
-.sp
-# VERSION=value
-.sp
-where \fIvalue\fR is an integer that represents the port monitor's version
-number. The version number defines the format of the port monitor
-administrative file. This comment line is created automatically when a port
-monitor is added to the system. It appears on a line by itself, before the
-service entries.
-.RE
-
-.SS "Monitor-Specific Administrative Command"
-.sp
-.LP
-Previously, two pieces of information included in the \fB_pmtab\fR file were
-described: the port monitor's version number and the port monitor part of the
-service entries in the port monitor's \fB_pmtab\fR file. When a new port
-monitor is added, the version number must be known so that the \fB_pmtab\fR
-file can be correctly initialized. When a new service is added, the port
-monitor part of the \fB_pmtab\fR entry must be formatted correctly. Each port
-monitor must have an administrative command to perform these two tasks. The
-person who defines the port monitor must also define such an administrative
-command and its input options. When the command is invoked with these options,
-the information required for the port monitor part of the service entry must be
-correctly formatted for inclusion in the port monitor's \fB_pmtab\fR file and
-must be written to the standard output. To request the version number the
-command must be invoked with a \fB-V\fR option; when it is invoked in this way,
-the port monitor's current version number must be written to the standard
-output. If the command fails for any reason during the execution of either of
-these tasks, no data should be written to standard output.
-.SS "The Port Monitor/Service Interface"
-.sp
-.LP
-The interface between a port monitor and a service is determined solely by the
-service. Two mechanisms for invoking a service are presented here as examples.
-.sp
-.ne 2
-.na
-\fBNew Service Invocations\fR
-.ad
-.sp .6
-.RS 4n
-The first interface is for services that are started anew with each request.
-This interface requires the port monitor to first \fBfork\fR(2) a child
-process. The child will eventually become the designated service by performing
-an \fBexec\fR(1). Before the \fBexec\fR(1) happens, the port monitor may take
-some port monitor-specific action; however, one action that must occur is the
-interpretation of the per-service configuration script, if one is present. This
-is done by calling the library routine \fBdoconfig\fR(3NSL).
-.RE
-
-.sp
-.ne 2
-.na
-\fBStanding Service Invocations\fR
-.ad
-.sp .6
-.RS 4n
-The second interface is for invocations of services that are actively running.
-To use this interface, a service must have one end of a stream pipe open and be
-prepared to receive connections through it.
-.RE
-
-.SS "Port Monitor Requirements"
-.sp
-.LP
-To implement a port monitor, several generic requirements must be met. This
-section summarizes these requirements. In addition to the port monitor itself,
-an administrative command must be supplied.
-.sp
-.ne 2
-.na
-\fBInitial Environment\fR
-.ad
-.RS 23n
-When a port monitor is started, it expects an initial execution environment in
-which:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-It has no file descriptors open
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-It cannot be a process group leader
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-It has an entry in \fB/etc/utmpx\fR of type LOGIN_PROCESS
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-An environment variable, \fBISTATE,\fR is set to "enabled" or "disabled" to
-indicate the port monitor's correct initial state
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-An environment variable, \fBPMTAG,\fR is set to the port monitor's assigned tag
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The directory that contains the port monitor's administrative files is its
-current directory
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-pThe port monitor is able to create private files in the directory
-\fB/var/saf/\fR\fItag\fR, where \fItag\fR is the port monitor's tag
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The port monitor is running with user id 0 (root)
-.RE
-.RE
-
-.sp
-.ne 2
-.na
-\fBImportant Files\fR
-.ad
-.RS 23n
-Relative to its current directory, the following key files exist for a port
-monitor.
-.sp
-.ne 2
-.na
-\fB\fB_config\fR\fR
-.ad
-.RS 17n
-The port monitor's configuration script. The port monitor configuration script
-is run by the SAC. The \fBSAC\fR is started by \fBinit\fR(1M) as a result of an
-entry in \fB/etc/inittab\fR that calls \fBsac\fR(1M).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB_pid\fR\fR
-.ad
-.RS 17n
-The file into which the port monitor writes its process id.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB_pmtab\fR\fR
-.ad
-.RS 17n
-The port monitor's administrative file. This file contains information about
-the ports and services for which the port monitor is responsible.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB_pmpipe\fR\fR
-.ad
-.RS 17n
-The\fB FIFO\fR through which the port monitor will receive messages from the
-\fBSAC.\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsvctag\fR\fR
-.ad
-.RS 17n
-The per-service configuration script for the service with the tag \fIsvctag\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\&../_sacpipe\fR\fR
-.ad
-.RS 17n
-The \fBFIFO\fR through which the port monitor will send messages to
-\fBsac\fR(1M).
-.RE
-
-.RE
-
-.SS "Port Monitor Responsibilities"
-.sp
-.LP
-A port monitor is responsible for performing the following tasks in addition to
-its port monitor function:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Write its process id into the file \fB_pid\fR and place an advisory lock on the
-file
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Terminate gracefully on receipt of the signal SIGTERM
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Follow the protocol for message exchange with the \fBSAC\fR
-.RE
-.sp
-.LP
-A port monitor must perform the following tasks during service invocation:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Create a \fButmpx\fR entry if the requested service has the \fBu\fR flag set in
-\fB_pmtab\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Port monitors may ignore this flag if creating a \fButmpx\fR entry for the
-service does not make sense because of the manner in which the service is to be
-invoked. On the other hand, some services may not start properly unless utmpx
-entries have been created for them.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Interpret the per-service configuration script for the requested service, if it
-exists, by calling the \fBdoconfig\fR(3NSL) library routine
-.RE
-.SS "Configuration Files and Scripts"
-.sp
-.LP
-The library routine \fBdoconfig\fR(3NSL), defined in \fBlibnsl.so\fR,
-interprets the configuration scripts contained in the files
-\fB/etc/saf/_sysconfig\fR (the per-system configuration file), and
-\fB/etc/saf/\fR\fIpmtag\fR\fB/_config\fR (per-port monitor configuration
-files); and in \fB/etc/saf/\fR\fIpmtag\fR\fB/svctag\fR (per-service
-configuration files). Its syntax is:
-.sp
-.in +2
-.nf
-#include <sac.h>
- int doconfig (int fd, char *script, long rflag);
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-\fBscript\fR is the name of the configuration script; \fIfd\fR is a file
-descriptor that designates the stream to which stream manipulation operations
-are to be applied; \fIrflag\fR is a bitmask that indicates the mode in which
-script is to be interpreted. \fIrflag\fR may take two values, \fBNORUN\fR and
-\fBNOASSIGN,\fR which may be or'd. If \fIrflag\fR is zero, all commands in the
-configuration script are eligible to be interpreted. If \fIrflag\fR has the
-\fBNOASSIGN\fR bit set, the assign command is considered illegal and will
-generate an error return. If \fIrflag\fR has the \fBNORUN\fR bit set, the run
-and runwait commands are considered illegal and will generate error returns. If
-a command in the script fails, the interpretation of the script ceases at that
-point and a positive integer is returned; this number indicates which line in
-the script failed. If a system error occurs, a value of \(mi1 is returned. If a
-script fails, the process whose environment was being established should not be
-started. In the example, \fBdoconfig\fR(3NSL) is used to interpret a
-per-service configuration script.
-.sp
-.in +2
-.nf
-\|.\|.\|.
- if ((i = doconfig (fd, svctag, 0)) != 0){
- error ("doconfig failed on line %d of script %s",i,svctag);
- }
-.fi
-.in -2
-.sp
-
-.sp
-.ne 2
-.na
-\fBThe Per-System Configuration File\fR
-.ad
-.sp .6
-.RS 4n
-The per-system configuration file, \fB/etc/saf/_sysconfig\fR, is delivered
-empty. It may be used to customize the environment for all services on the
-system by writing a command script in the interpreted language described in
-this chapter and on the \fBdoconfig\fR(3NSL) manpage. When the \fBSAC\fR is
-started, it calls the \fBdoconfig\fR(3NSL) function to interpret the per-system
-configuration script. The \fBSAC\fR is started when the system enters multiuser
-mode.
-.RE
-
-.sp
-.ne 2
-.na
-\fBPer-Port Monitor Configuration Files\fR
-.ad
-.sp .6
-.RS 4n
-Per-port monitor configuration scripts
-(\fB/etc/saf/\fR\fIpmtag\fR\fB/_config)\fR are optional. They allow the user to
-customize the environment for any given port monitor and for the services that
-are available through the ports for which that port monitor is responsible.
-Per-port monitor configuration scripts are written in the same language used
-for per-system configuration scripts. The per-port monitor configuration script
-is interpreted when the port monitor is started. The port monitor is started by
-the \fBSAC\fR after the \fBSAC\fR has itself been started and after it has run
-its own configuration script, \fB/etc/saf/_sysconfig\fR. The per-port monitor
-configuration script may override defaults provided by the per-system
-configuration script.
-.RE
-
-.sp
-.ne 2
-.na
-\fBPer-Service Configuration Files\fR
-.ad
-.sp .6
-.RS 4n
-Per-service configuration files allow the user to customize the environment for
-a specific service. For example, a service may require special privileges that
-are not available to the general user. Using the language described in the
-\fBdoconfig\fR(3NSL) manpage, you can write a script that will grant or limit
-such special privileges to a particular service offered through a particular
-port monitor. The per-service configuration may override defaults provided by
-higher-level configuration scripts. For example, the per-service configuration
-script may specify a set of STREAMS modules other than the default set.
-.RE
-
-.SS "The Configuration Language"
-.sp
-.LP
-The language in which configuration scripts are written consists of a sequence
-of commands, each of which is interpreted separately. The following reserved
-keywords are defined: \fBassign\fR, \fBpush\fR, \fBpop\fR, \fBrunwait\fR, and
-\fBrun\fR. The comment character is #. Blank lines are not significant. No line
-in a command script may exceed 1024 characters.
-.sp
-.ne 2
-.na
-\fB\fBassign\fR \fIvariable\fR=\fIvalue\fR\fR
-.ad
-.sp .6
-.RS 4n
-Used to define environment variables; \fIvariable\fR is the name of the
-environment variable and \fIvalue\fR is the value to be assigned to it. The
-value assigned must be a string constant; no form of parameter substitution is
-available. \fIvalue\fR may be quoted. The quoting rules are those used by the
-shell for defining environment variables. \fBassign\fR will fail if space
-cannot be allocated for the new variable or if any part of the specification is
-invalid.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpush\fR \fImodule1\fR[,\fImodule2, module3\fR, ...]\fR
-.ad
-.sp .6
-.RS 4n
-Used to push STREAMS modules onto the stream designated by \fBfd\fR;
-\fImodule1\fR is the name of the first module to be pushed, \fImodule2\fR is
-the name of the second module to be pushed, and so on. The command will fail if
-any of the named modules cannot be pushed. If a module cannot be pushed, the
-subsequent modules on the same command line will be ignored and modules that
-have already been pushed will be popped.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpop\fR [\fImodule\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Used to pop STREAMS modules off the designated stream. If \fBpop\fR is invoked
-with no arguments, the top module on the stream is popped. If an argument is
-given, modules will be popped one at a time until the named module is at the
-top of the stream. If the named module is not on the designated stream, the
-stream is left as it was and the command fails. If \fImodule\fR is the special
-keyword \fBALL\fR, then all modules on the stream will be popped. Only modules
-above the topmost driver are affected.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrunwait\fR \fBcommand\fR\fR
-.ad
-.sp .6
-.RS 4n
-The \fBrunwait\fR command runs a command and waits for it to complete;
-\fBcommand\fR is the path name of the command to be run. The command is run
-with \fB/bin/sh\fR \fB-c\fR prepended to it; shell scripts may thus be executed
-from configuration scripts. The \fBrunwait\fR command will fail if command
-cannot be found or cannot be executed, or if \fBcommand\fR exits with a nonzero
-status.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrun\fR \fBcommand\fR\fR
-.ad
-.sp .6
-.RS 4n
-The \fBrun\fR command is identical to \fBrunwait\fR except that it does not
-wait for command to complete; \fBcommand\fR is the path name of the command to
-be run. \fBrun\fR will not fail unless it is unable to create achild process
-to execute the command. Although they are syntactically indistinguishable, some
-of the commands available to \fBrun\fR and \fBrunwait\fR are interpreter
-built-in commands. Interpreter built-ins are used when it is necessary to alter
-the state of a process within the context of that process. The \fBdoconfig\fR
-interpreter built-in commands are similar to the shell special commands and,
-like these, they do not spawn another process for execution. See the
-\fBsh\fR(1) man page. The initial set of built-in commands is: \fBcd\fR,
-\fBulimit\fR, \fBumask\fR.
-.RE
-
-.SS "Sample Port Monitor Code"
-.sp
-.LP
-This example shows an example of a "null" port monitor that simply responds to
-messages from the \fBSAC.\fR
-.sp
-.in +2
-.nf
-># include <stdlib.h>
-# include <stdio.h>
-# include <unistd.h>
-# include <fcntl.h>
-# include <signal.h>
-# include <sac.h>
-
-char Scratch[BUFSIZ]; /* scratch buffer */
-char Tag[PMTAGSIZE + 1]; /* port monitor's tag */
-FILE *Fp; /* file pointer for log file */
-FILE *Tfp; /* file pointer for pid file */
-char State; /* portmonitor's current state*/
-
-main(argc, argv)
- int argc;
- char *argv[];
-{
- char *istate;
- strcpy(Tag, getenv("PMTAG"));
-/*
- * open up a log file in port monitor's private directory
- */
- sprintf(Scratch, "/var/saf/%s/log", Tag);
- Fp = fopen(Scratch, "a+");
- if (Fp == (FILE *)NULL)
- exit(1);
- log(Fp, "starting");
-/*
- * retrieve initial state (either "enabled" or "disabled") and set
- * State accordingly
- */
- istate = getenv("ISTATE");
- sprintf(Scratch, "ISTATE is %s", istate);
- log(Fp, Scratch);
- if (!strcmp(istate, "enabled"))
- State = PM_ENABLED;
- else if (!strcmp(istate, "disabled"))
- State = PM_DISABLED;
- else {
- log(Fp, "invalid initial state");
- exit(1);
- }
- sprintf(Scratch, "PMTAG is %s", Tag);
- log(Fp, Scratch);
-/*
- * set up pid file and lock it to indicate that we are active
- */
- Tfp = fopen("_pid", "w");
- if (Tfp == (FILE *)NULL) {
- log(Fp, "couldn't open pid file");
- exit(1);
- }
- if (lockf(fileno(Tfp), F_TEST, 0) < 0) {
- log(Fp, "pid file already locked");
- exit(1);
- }
-
- log(Fp, "locking file");
- if (lockf(fileno(Tfp), F_LOCK, 0) < 0) {
- log(Fp, "lock failed");
- exit(1);
- }
- fprintf(Tfp, "%d", getpid());
- fflush(Tfp);
-
-/*
- * handle poll messages from the sac ... this function never returns
- */
- handlepoll();
- pause();
- fclose(Tfp);
- fclose(Fp);
-}
-
-handlepoll()
-{
- int pfd; /* file descriptor for incoming pipe */
- int sfd; /* file descriptor for outgoing pipe */
- struct sacmsg sacmsg; /* incoming message */
- struct pmmsg pmmsg; /* outgoing message */
-/*
- * open pipe for incoming messages from the sac
- */
- pfd = open("_pmpipe", O_RDONLY|O_NONBLOCK);
- if (pfd < 0) {
- log(Fp, "_pmpipe open failed");
- exit(1);
- }
-/*
- * open pipe for outgoing messages to the sac
- */
- sfd = open("../_sacpipe", O_WRONLY);
- if (sfd < 0) {
- log(Fp, "_sacpipe open failed");
- exit(1);
- }
-/*
- * start to build a return message; we only support class 1 messages
- */
- strcpy(pmmsg.pm_tag, Tag);
- pmmsg.pm_size = 0;
- pmmsg.pm_maxclass = 1;
-/*
- * keep responding to messages from the sac
- */
- for (;;) {
- if (read(pfd, &sacmsg, sizeof(sacmsg)) != sizeof(sacmsg)) {
- log(Fp, "_pmpipe read failed");
- exit(1);
- }
-/*
- * determine the message type and respond appropriately
- */
- switch (sacmsg.sc_type) {
- case SC_STATUS:
- log(Fp, "Got SC_STATUS message");
- pmmsg.pm_type = PM_STATUS;
- pmmsg.pm_state = State;
- break;
- case SC_ENABLE:
- /*note internal state change below*/
- log(Fp, "Got SC_ENABLE message");
- pmmsg.pm_type = PM_STATUS;
- State = PM_ENABLED;
- pmmsg.pm_state = State;
- break;
- case SC_DISABLE:
- /*note internal state change below*/
- log(Fp, "Got SC_DISABLE message");
- pmmsg.pm_type = PM_STATUS;
- State = PM_DISABLED;
- pmmsg.pm_state = State;
- break;
- case SC_READDB:
- /*
- * if this were a fully functional port
- * monitor it would read _pmtab here
- * and take appropriate action
- */
- log(Fp, "Got SC_READDB message");
- pmmsg.pm_type = PM_STATUS;
- pmmsg.pm_state = State;
- break;
- default:
- sprintf(Scratch, "Got unknown message <%d>",
- sacmsg.sc_type);
- log(Fp, Scratch);
- pmmsg.pm_type = PM_UNKNOWN;
- pmmsg.pm_state = State;
- break;
- }
-/*
- * send back a response to the poll
- * indicating current state
- */
- if (write(sfd, &pmmsg, sizeof(pmmsg)) != sizeof(pmmsg))
- log(Fp, "sanity response failed");
- }
-}
-/*
- * general logging function
- */
-log(fp, msg)
- FILE *fp;
- char *msg;
-{
- fprintf(fp, "%d; %s\en", getpid(), msg);
- fflush(fp);
-}
-.fi
-.in -2
-.sp
-
-.SS "The sac.h Header File"
-.sp
-.LP
-The following example shows the sac.h header file.
-.sp
-.in +2
-.nf
-/* length in bytes of a utmpx id */
-# define IDLEN 4
-/* wild character for utmpx ids */
-# define SC_WILDC 0xff
-/* max len in bytes for port monitor tag */
-# define PMTAGSIZE 14
-/*
- * values for rflag in doconfig()
- */
-/* don't allow assign operations */
-# define NOASSIGN 0x1
-/* don't allow run or runwait operations */
-# define NORUN 0x2
-/*
- * message to SAC (header only). This header is forever fixed. The
- * size field (pm_size) defines the size of the data portion of the
- * message, which follows the header. The form of this optional data
- * portion is defined strictly by the message type (pm_type).
- */
-struct pmmsg {
- char pm_type; /* type of message */
- unchar_t pm_state; /* current state of pm */
- char pm_maxclass; /* max message class this port monitor
- understands */
- char pm_tag[PMTAGSIZE + 1]; /* pm's tag */
- int pm_size; /* size of opt data portion */
-};
-/*
- * pm_type values
- */
-# define PM_STATUS 1 /* status response */
-# define PM_UNKNOWN 2 /* unknown message was received */
-/*
- * pm_state values
- */
-/*
- * Class 1 responses
- */
-# define PM_STARTING 1 /* monitor in starting state */
-# define PM_ENABLED 2 /* monitor in enabled state */
-# define PM_DISABLED 3 /* monitor in disabled state */
-# define PM_STOPPING 4 /* monitor in stopping state */
-/*
- * message to port monitor
- */
-struct sacmsg {
- int sc_size; /* size of optional data portion */
- char sc_type; /* type of message */
-};
-/*
- * sc_type values
- * These represent commands that the SAC sends to a port monitor.
- * These commands are divided into "classes" for extensibility. Each
- * subsequent "class" is a superset of the previous "classes" plus
- * the new commands defined within that "class". The header for all
- * commands is identical; however, a command may be defined such that
- * an optional data portion may be sent in addition to the header.
- * The format of this optional data piece is self-defining based on
- * the command. The first message sent by the SAC
- * will always be a class 1 message. The port monitor response
- * indicates the maximum class that it is able to understand. Another
- * note is that port monitors should only respond to a message with
- * an equivalent class response (i.e. a class 1 command causes a
- * class 1 response).
- */
-/*
- * Class 1 commands (currently, there are only class 1 commands)
- */
-# define SC_STATUS 1 /* status request *
-# define SC_ENABLE 2 /* enable request */
-# define SC_DISABLE 3 /* disable request */
-# define SC_READDB 4 /* read pmtab request */
-/*
- * `errno' values for Saferrno, note that Saferrno is used by both
- * pmadm and sacadm and these values are shared between them
- */
-# define E_BADARGS 1 /* bad args/ill-formed cmd line */
-# define E_NOPRIV 2 /* user not priv for operation */
-# define E_SAFERR 3 /* generic SAF error */
-# define E_SYSERR 4 /* system error */
-# define E_NOEXIST 5 /* invalid specification */
-# define E_DUP 6 /* entry already exists */
-# define E_PMRUN 7 /* port monitor is running */
-# define E_PMNOTRUN 8 /* port monitor is not running */
-# define E_RECOVER 9
- /* in recovery */
-.fi
-.in -2
-.sp
-
-.SS "Directory Structure"
-.sp
-.LP
-This section gives a description of the \fBSAF\fR files and directories.
-.sp
-.ne 2
-.na
-\fB\fB/etc/saf/_sysconfig\fR\fR
-.ad
-.RS 28n
-The per-system configuration script.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/saf/_sactab\fR\fR
-.ad
-.RS 28n
-The \fBSAC's\fR administrative file. Contains information about the port
-monitors for which the SAC is responsible.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/saf/\fR\fIpmtag\fR\fR
-.ad
-.RS 28n
-The home directory for port monitor \fIpmtag\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/saf/\fR\fIpmtag\fR\fB/_config\fR\fR
-.ad
-.RS 28n
-The per-port monitor configuration script for port monitor pmtag.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/saf/\fR\fIpmtag\fR\fB/_pmtab\fR\fR
-.ad
-.RS 28n
-Port monitor pmtag's administrative file. Contains information about the
-services for which \fIpmtag\fR is responsible.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/saf/\fR\fIpmtag\fR\fB/\fR\fIsvctag\fR\fR
-.ad
-.RS 28n
-The file in which the per-service configuration script for service \fIsvctag\fR
-(available through port monitor \fBpmtag\fR) is placed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/saf/\fR\fIpmtag\fR\fB/_pid\fR\fR
-.ad
-.RS 28n
-The file in which a port monitor writes its process id in the current directory
-and places an advisory lock on the file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/saf/\fR \fBpmtag\fR \fB/_pmpipe\fR\fR
-.ad
-.RS 28n
-The file in which the port monitor receives messages from the \fBSAC\fR and
-\fB\&../_sacpipe\fR and sends return messages to the \fBSAC.\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/saf/_log\fR\fR
-.ad
-.RS 28n
-The \fBSAC's\fR log file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/saf/\fR\fIpmtag\fR\fR
-.ad
-.RS 28n
-The directory for files created by port monitor \fIpmtag,\fR for example its
-log file.
-.RE
-
-.SH LIST OF COMMANDS
-.sp
-.LP
-The following administrative commands relate to \fBSAF.\fR
-.sp
-.ne 2
-.na
-\fB\fBsacadm\fR(1M)\fR
-.ad
-.RS 14n
-port monitor administrative command
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpmadm\fR(1M)\fR
-.ad
-.RS 14n
-service administration command
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBexec\fR(1), \fBsh\fR(1), \fBinit\fR(1M), \fBnlsadmin\fR(1M),
-\fBpmadm\fR(1M), \fBsac\fR(1M), \fBsacadm\fR(1M), \fBttyadm\fR(1M),
-\fBfork\fR(2), \fBdoconfig\fR(3NSL), \fBattributes\fR(5)
diff --git a/usr/src/man/man1m/sar.1m b/usr/src/man/man1m/sar.1m
deleted file mode 100644
index 854e8d5b4a..0000000000
--- a/usr/src/man/man1m/sar.1m
+++ /dev/null
@@ -1,158 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SAR 1M "May 13, 2017"
-.SH NAME
-sar, sa1, sa2, sadc \- system activity report package
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/sa/sadc\fR [\fIt\fR \fIn\fR] [\fIofile\fR]
-.fi
-
-.LP
-.nf
-\fB/usr/lib/sa/sa1\fR [\fIt\fR \fIn\fR]
-.fi
-
-.LP
-.nf
-\fB/usr/lib/sa/sa2\fR [\fB-aAbcdgkmpqruvwy\fR] [\fB-e\fR \fItime\fR] [\fB-f\fR \fIfilename\fR]
- [\fB-i\fR \fIsec\fR] [\fB-s\fR \fItime\fR]
-.fi
-
-.SH DESCRIPTION
-.LP
-System activity data can be accessed at the special request of a user (see
-\fBsar\fR(1)) and automatically, on a routine basis, as described here. The
-operating system contains several counters that are incremented as various
-system actions occur. These include counters for \fBCPU\fR utilization, buffer
-usage, disk and tape \fBI/O\fR activity, \fBTTY\fR device activity, switching
-and system-call activity, file-access, queue activity, inter-process
-communications, and paging. For more general system statistics, use
-\fBiostat\fR(1M), \fBsar\fR(1), or \fBvmstat\fR(1M).
-.sp
-.LP
-\fBsadc\fR and two shell procedures, \fBsa1\fR and \fBsa2\fR, are used to
-sample, save, and process this data.
-.sp
-.LP
-\fBsadc\fR, the data collector, samples system data \fIn\fR times, with an
-interval of \fIt\fR seconds between samples, and writes in binary format to
-\fIofile\fR or to standard output. The sampling interval \fIt\fR should be
-greater than 5 seconds; otherwise, the activity of \fBsadc\fR itself may affect
-the sample. If \fIt\fR and \fIn\fR are omitted, a special record is written.
-This facility can be used at system boot time, when booting to a multi-user
-state, to mark the time at which the counters restart from zero. For example,
-when accounting is enabled, the \fBsvc:/system/sar:default\fR service writes
-the restart mark to the daily data file using the command entry:
-.sp
-.in +2
-.nf
-su sys -c "/usr/lib/sa/sadc /var/adm/sa/sa\&'date +%d\&'"
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The shell script \fBsa1\fR, a variant of \fBsadc\fR, is used to collect and
-store data in the binary file \fB/var/adm/sa/sa\fR\fIdd,\fR where \fBdd\fR is
-the current day. The arguments \fIt\fR and \fIn\fR cause records to be written
-\fIn\fR times at an interval of \fIt\fR seconds, or once if omitted. The
-following entries in \fB/var/spool/cron/crontabs/sys\fR will produce records
-every 20 minutes during working hours and hourly otherwise:
-.sp
-.in +2
-.nf
-0 * * * 0-6 /usr/lib/sa/sa1
-20,40 8\(mi17 * * 1\(mi5 /usr/lib/sa/sa1
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-See \fBcrontab\fR(1) for details.
-.sp
-.LP
-The shell script \fBsa2\fR, a variant of \fBsar\fR, writes a daily report in
-the file \fB/var/adm/sa/sar\fR\fIdd.\fR See the \fBOPTIONS\fR section in
-\fBsar\fR(1) for an explanation of the various options. The following entry in
-\fB/var/spool/cron/crontabs/sys\fR will report important activities hourly
-during the working day:
-.sp
-.in +2
-.nf
-5 18 * * 1\(mi5 /usr/lib/sa/sa2 \fB-s\fR 8:00 \fB-e\fR 18:01 \fB-i\fR 1200 \fB-A\fR
-.fi
-.in -2
-.sp
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/tmp/sa.adrfl\fR\fR
-.ad
-.sp .6
-.RS 4n
-address file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/adm/sa/sa\fR\fBdd\fR\fR
-.ad
-.sp .6
-.RS 4n
-Daily data file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/adm/sa/sar\fR\fBdd\fR\fR
-.ad
-.sp .6
-.RS 4n
-Daily report file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/spool/cron/crontabs/sys\fR\fR
-.ad
-.sp .6
-.RS 4n
-
-.RE
-
-.SH SEE ALSO
-.LP
-\fBcrontab\fR(1), \fBsar\fR(1), \fBsvcs\fR(1), \fBtimex\fR(1),
-\fBiostat\fR(1M), \fBsvcadm\fR(1M), \fBvmstat\fR(1M), \fBattributes\fR(5),
-\fBsmf\fR(5)
-.sp
-.LP
-\fI\fR
-.SH NOTES
-.LP
-The \fBsar\fR service is managed by the service management facility,
-\fBsmf\fR(5), under the service identifier:
-.sp
-.in +2
-.nf
-svc:/system/sar
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Administrative actions on this service, such as enabling, disabling, or
-requesting restart, can be performed using \fBsvcadm\fR(1M). The service's
-status can be queried using the \fBsvcs\fR(1) command.
diff --git a/usr/src/man/man1m/sasinfo.1m b/usr/src/man/man1m/sasinfo.1m
deleted file mode 100644
index 3098e2b84d..0000000000
--- a/usr/src/man/man1m/sasinfo.1m
+++ /dev/null
@@ -1,733 +0,0 @@
-'\" te
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
-.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SASINFO 1M "April 9, 2016"
-.SH NAME
-sasinfo \- Serial Attached SCSI HBA port command line interface
-.SH SYNOPSIS
-.LP
-.nf
-\fBsasinfo\fR hba [\fB-v\fR] [\fIHBA_Name\fR]...
-.fi
-
-.LP
-.nf
-\fBsasinfo\fR hba-port [\fB-lvy\fR] [\fB-a\fR \fIHBA_Name\fR] [\fIHBA_port_nam\fR]...
-.fi
-
-.LP
-.nf
-\fBsasinfo\fR expander [\fB-vt\fR] [\fB-p\fR \fIHBA_port_Name\fR] [\fIExpander_SAS_Addr\fR]...
-.fi
-
-.LP
-.nf
-\fBsasinfo\fR target-port [\fB-s\fR | \fB-v\fR] [\fITarget_port_SAS_Addr\fR]...
-.fi
-
-.LP
-.nf
-\fBsasinfo\fR logical-unit | lu [\fB-v\fR] [\fIdevice_path\fR]...
-.fi
-
-.LP
-.nf
-\fBsasinfo\fR [\fB-V\fR]
-.fi
-
-.LP
-.nf
-\fBsasinfo\fR [\fB-?\fR]
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBsasinfo\fR utility is a command line interface that collects
-administrative information on Serial Attached SCSI-2 (SAS-2) host bus adapter
-(HBA) that supports the Storage Management HBA API (SM-HBA). The utility
-reports attributes of HBA ports and of expander devices and SCSI target devices
-that might be connected to those HBA ports.
-.sp
-.LP
-\fBsasinfo\fR is implemented as a set of subcommands, described below.
-.SH SUBCOMMANDS
-.LP
-The following subcommands are supported by \fBsasinfo\fR.
-.sp
-.ne 2
-.na
-\fB\fBhba\fR\fR
-.ad
-.sp .6
-.RS 4n
-Lists information for the HBA referenced by the specified \fIHBA_name\fR. If
-\fIHBA_name\fR is not specified, all HBAs on the host will be listed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBhba-port\fR\fR
-.ad
-.sp .6
-.RS 4n
-Lists information for the HBA port referenced by the specified
-\fIHBA_port_Name\fR. If \fIHBA_port_Name\fR is not specified, all HBA ports on
-the host will be listed. Note that HBA ports can be dynamically
-configured/unconfigured so that the number of HBA ports on an HBA can change as
-connections to target devices are established. With no connections to a storage
-device, no HBA port is configured.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBexpander\fR\fR
-.ad
-.sp .6
-.RS 4n
-Lists hierarchical view of the expander referenced by the specified
-\fIExpander_SAS_Addr\fR. If no argument is specified, all expanders that are
-visible across all HBA ports on the host will be listed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBtarget-port\fR\fR
-.ad
-.sp .6
-.RS 4n
-Lists information for those target ports referenced by
-\fITarget_port_SAS_Addr\fR address. If no argument is specified, all target
-ports that are visible on the host will be listed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBlogical-unit\fR | \fBlu\fR\fR
-.ad
-.sp .6
-.RS 4n
-Lists the logical unit referenced by the specified \fIdevice_path\fR. If
-\fIdevice_path\fR is not specified, all SAS logical units will be listed,
-including the SAS Management Protocol (SMP) target port.
-.RE
-
-.SH OPTIONS
-.LP
-The following options are supported.
-.sp
-.ne 2
-.na
-\fB\fB-?\fR, \fB--help\fR\fR
-.ad
-.sp .6
-.RS 4n
-Displays usage information
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-a\fR, \fB--hba\fR \fIHBA_Name\fR\fR
-.ad
-.sp .6
-.RS 4n
-Retrieve HBA port information from the \fIHBA_Name\fR of an HBA on the host.
-The \fB-a\fR option can only be used with the \fBhba-port\fR subcommand.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR, \fB--phy-linkstat\fR\fR
-.ad
-.sp .6
-.RS 4n
-Lists the link error statistics information for the \fBphy\fRs on the HBA port
-referenced by the specified \fIHBA_port_Name\fR or all HBA ports if no HBA port
-is specified. This option is used only with the \fBhba-port\fR subcommand.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR \fIHBA_port_SAS_Addr\fR, \fB--port\fR \fIHBA_port_SAS_Addr\fR\fR
-.ad
-.sp .6
-.RS 4n
-Retrieve remote port information from the \fIHBA_port_SAS_Addr\fR of the local
-HBA port on the host. The \fB-p\fR option can be used only with the
-\fBexpander\fR subcommand.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR, \fB--scsi\fR\fR
-.ad
-.sp .6
-.RS 4n
-Lists SCSI attributes for target ports that are requested for display. This
-option is only used for the \fBtarget-port\fR subcommand.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR, \fB--verbose\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display details on hardware information, such as SAS address, topology device,
-and so forth, based on which subcommand is invoked.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-V\fR, \fB--version\fR\fR
-.ad
-.sp .6
-.RS 4n
-Displays the version information.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-y\fR, \fB--phy\fR\fR
-.ad
-.sp .6
-.RS 4n
-Lists the \fBphy\fR information on the HBA port specified by
-\fIHBA_port_Name\fR or all HBA ports if no HBA port is specified. This option
-is used only with the \fBhba-port\fR subcommand.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRListing All HBAs
-.sp
-.LP
-The following command lists all HBAs on the host.
-
-.sp
-.in +2
-.nf
-# \fBsasinfo hba\fR
-HBA Name: SUNW-pmcs-0
-HBA Name: SUNW-pmcs-1
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRListing All HBAs with Details
-.sp
-.LP
-The following command lists all HBAs on the host, along with related details.
-Note that each HBA has two HBA ports configured, with each HBA port connected
-to a storage device.
-
-.sp
-.in +2
-.nf
-# \fBsasinfo hba -v\fR
-HBA Name: SUNW-pmcs-0
- Manufacturer: sun
- Model: SAS Gen-2
- Firmware Version: 1.1
- FCode/BIOS Version: 1.1
- Serial Number: 111-11111
- Driver Name: smvsl
- Driver Version: 1.1
- Number of HBA Ports: 2
-HBA Name: SUNW-pmcs-1
- Manufacturer: sun
- Model: SAS Gen-2
- Firmware Version: 1.1
- FCode/BIOS Version: 1.1
- Serial Number: 111-11111
- Driver Name: smvsl
- Driver Version: 1.1
- Number of HBA Ports: 2
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRListing All HBA Ports
-.sp
-.LP
-The following command lists all HBA ports on the host.
-
-.sp
-.in +2
-.nf
-# \fBsasinfo hba-port\fR
-HBA Name: SUNW-pmcs-0
- HBA Port Name: /dev/cfg/c1
- HBA Port Name: /dev/cfg/c2
-HBA Name: SUNW-pmcs-1
- HBA Port Name: /dev/cfg/c3
- HBA Port Name: /dev/cfg/c4
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 4 \fRListing all HBA Ports with Details
-.sp
-.LP
-The following command lists all HBA ports, with accompanying details.
-
-.sp
-.in +2
-.nf
-# \fBsasinfo hba-port -v\fR
-HBA Name: SUNW-pmcs-0
- HBA Port Name: /dev/cfg/c1
- Type: sas-device
- State: online
- Local SAS Address: 5000c50000d756aa
- Attached Port SAS Address: 50800201a5a502bf
- Number of Phys: 4
- HBA Port Name: /dev/cfg/c25000c50000d756cc
- Type: sas-device
- State: online
- Local SAS Address: 5000c50000d756aa
- Attached Port SAS Address: 50800201a5a503bf
- Number of Phys: 4
-HBA Name: SUNW-pmcs-1
- HBA Port Name: /dev/cfg/c3
- Type: sas-device
- State: online
- Local SAS Address: 5000c50000d756cc
- Attached Port SAS Address: 50800201a5a504bf
- Number of Phys: 4
- HBA Port Name: /dev/cfg/c4
- Type: sas-device
- State: online
- Local SAS Address: 5000c50000d756cc
- Attached Port SAS Address: 50800201a5a505bf
- Number of Phys: 4
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 5 \fRListing \fBphy\fR Information for All HBA Ports
-.sp
-.LP
-The following command lists \fBphy\fR information for all HBA ports.
-
-.sp
-.in +2
-.nf
-# \fBsasinfo hba-port -y\fR
-HBA Name: SUNW-pmcs-0
- HBA Port Name: /dev/cfg/c1
- Phy Information:
- Identifier: 0
- State: enabled
- HardwareLinkRate(Min/Max): 1.5Gbit/3Gbit
- ProgrammedLinkRate(Min/Max): 1.5Gbit/3Gbit
- NegotiatedLinkRate: 3Gbit
- Identifier: 1
- State: enabled
- HardwareLinkRate(Min/Max): 1.5Gbit/3Gbit
- ProgrammedLinkRate(Min/Max): 1.5Gbit/3Gbit
- NegotiatedLinkRate: 3Gbit
- Identifier: 2
- State: enabled
- HardwareLinkRate(Min/Max): 1.5Gbit/3Gbit
- ProgrammedLinkRate(Min/Max): 1.5Gbit/3Gbit
- NegotiatedLinkRate: 3Gbit
- Identifier: 3
- State: enabled
- HardwareLinkRate(Min/Max): 1.5Gbit/3Gbit
- ProgrammedLinkRate(Min/Max): 1.5Gbit/3Gbit
- NegotiatedLinkRate: 3Gbit
- HBA Port Name: /dev/cfg/c2
- Phy Information:
- Identifier: 4
- State: enabled
- HardwareLinkRate(Min/Max): 1.5Gbit/3Gbit
- ProgrammedLinkRate(Min/Max): 1.5Gbit/3Gbit
- NegotiatedLinkRate: 3Gbit
- Identifier: 5
- State: enabled
- HardwareLinkRate(Min/Max): 1.5Gbit/3Gbit
- ProgrammedLinkRate(Min/Max): 1.5Gbit/3Gbit
- NegotiatedLinkRate: 3Gbit
- Identifier: 6
- State: enabled
- HardwareLinkRate(Min/Max): 1.5Gbit/3Gbit
- ProgrammedLinkRate(Min/Max): 1.5Gbit/3Gbit
- NegotiatedLinkRate: 3Gbit
- Identifier: 7
- State: enabled
- HardwareLinkRate(Min/Max): 1.5Gbit/3Gbit
- ProgrammedLinkRate(Min/Max): 1.5Gbit/3Gbit
- NegotiatedLinkRate: 3Gbit
-HBA Name: SUNW-pmcs-1
- HBA Port Name: /dev/cfg/c3
- Phy Information:
- Identifier: 0
- State: enabled
- HardwareLinkRate(Min/Max): 1.5Gbit/3Gbit
- ProgrammedLinkRate(Min/Max): 1.5Gbit/3Gbit
- NegotiatedLinkRate: 3Gbit
- Identifier: 1
- State: enabled
- HardwareLinkRate(Min/Max): 1.5Gbit/3Gbit
- ProgrammedLinkRate(Min/Max): 1.5Gbit/3Gbit
- NegotiatedLinkRate: 3Gbit
- Identifier: 2
- State: enabled
- HardwareLinkRate(Min/Max): 1.5Gbit/3Gbit
- ProgrammedLinkRate(Min/Max): 1.5Gbit/3Gbit
- NegotiatedLinkRate: 3Gbit
- Identifier: 3
- State: enabled
- HardwareLinkRate(Min/Max): 1.5Gbit/3Gbit
- ProgrammedLinkRate(Min/Max): 1.5Gbit/3Gbit
- NegotiatedLinkRate: 3Gbit
- HBA Port Name: /dev/cfg/c4
- Phy Information:
- Identifier: 4
- State: enabled
- HardwareLinkRate(Min/Max): 1.5Gbit/3Gbit
- ProgrammedLinkRate(Min/Max): 1.5Gbit/3Gbit
- NegotiatedLinkRate: 3Gbit
- Identifier: 5
- State: enabled
- HardwareLinkRate(Min/Max): 1.5Gbit/3Gbit
- ProgrammedLinkRate(Min/Max): 1.5Gbit/3Gbit
- NegotiatedLinkRate: 3Gbit
- Identifier: 6
- State: enabled
- HardwareLinkRate(Min/Max): 1.5Gbit/3Gbit
- ProgrammedLinkRate(Min/Max): 1.5Gbit/3Gbit
- NegotiatedLinkRate: 3Gbit
- Identifier: 7
- State: enabled
- HardwareLinkRate(Min/Max): 1.5Gbit/3Gbit
- ProgrammedLinkRate(Min/Max): 1.5Gbit/3Gbit
- NegotiatedLinkRate: 3Gbit
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 6 \fRListing \fBphy\fR Link Error Statistics for a Specific HBA Port
-.sp
-.LP
-The following command lists \fBphy\fR link error statistics for a particular
-port.
-
-.sp
-.in +2
-.nf
-# \fBsasinfo hba-port -ly /dev/cfg/c1\fR
-HBA Name: SUNW-pmcs-0
- HBA Port Name: /dev/cfg/c1
- Phy Information:
- Identifier: 0
- State: enabled
- HardwareLinkRate(Min/Max): 1.5Gbit/3Gbit
- ProgrammedLinkRate(Min/Max): 1.5Gbit/3Gbit
- NegotiatedLinkRate: 3Gbit
- Link Error Statistics:
- Invalid Dword: 0
- Running Disparity Error: 0
- Loss of Dword Sync: 0
- Reset Problem: 0
- Identifier: 1
- State: enabled
- HardwareLinkRate(Min/Max): 1.5Gbit/3Gbit
- ProgrammedLinkRate(Min/Max): 1.5Gbit/3Gbit
- NegotiatedLinkRate: 3Gbit
- Link Error Statistics:
- Invalid Dword: 0
- Running Disparity Error: 0
- Loss of Dword Sync: 0
- Reset Problem: 0
- Identifier: 2
- State: enabled
- HardwareLinkRate(Min/Max): 1.5Gbit/3Gbit
- ProgrammedLinkRate(Min/Max): 1.5Gbit/3Gbit
- NegotiatedLinkRate: 3Gbit
- Link Error Statistics:
- Invalid Dword: 0
- Running Disparity Error: 0
- Loss of Dword Sync: 0
- Reset Problem: 0
- Identifier: 3
- State: enabled
- HardwareLinkRate(Min/Max): 1.5Gbit/3Gbit
- ProgrammedLinkRate(Min/Max): 1.5Gbit/3Gbit
- NegotiatedLinkRate: 3Gbit
- Link Error Statistics:
- Invalid Dword: 0
- Running Disparity Error: 0
- Loss of Dword Sync: 0
- Reset Problem: 0
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 7 \fRListing Expanders Connected to an HBA Port
-.sp
-.LP
-The following command lists all expanders that are visible through the
-specified HBA port.
-
-.sp
-.in +2
-.nf
-# \fBsasinfo expander -p /dev/cfg/c1\fR
-HBA Name: SUNW-pmcs-0
- HBA Port Name: /dev/cfg/c1
- Expander SAS Address(Tier 1): 50800201a5a502bf
- Expander SAS Address(Tier 2): 50800201a5a50233
- Expander SAS Address(Tier 2); 5000c5000d2da812
- Expander SAS Address(Tier 1): 50800201a5a503bf
- Expander SAS Address(Tier 2): 50800201a5a502d2
- Expander SAS Address(Tier 2); 5000c5000d2da823
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 8 \fRListing Detailed Information on Expanders
-.sp
-.LP
-The following command lists detailed information on all expanders that are
-visible through the specified HBA port.
-
-.sp
-.in +2
-.nf
-# \fBsasinfo expander -v -p /dev/cfg/c1\fR
-HBA Name: SUNW-pmcs-0
- HBA Port Name: /dev/cfg/c1
- Expander SAS Address(Tier 1): 50800201a5a502bf
- OS Device Name: /dev/smp/expd0
- State: online
- Expander SAS Address(Tier 2): 50800201a5a50233
- OS Device Name: /dev/smp/expd2
- State: online
- Expander SAS Address(Tier 2); 5000c5000d2da812
- OS Device Name: /dev/smp/expd3
- State: online
- Expander SAS Address(Tier 1): 50800201a5a503bf
- OS Device Name: /dev/smp/expd1
- State: online
- Expander SAS Address(Tier 2): 50800201a5a502d2
- OS Device Name: /dev/smp/expd3
- State: online
- Expander SAS Address(Tier 2); 5000c5000d2da823
- OS Device Name: /dev/smp/expd4
- State: online
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 9 \fRListing Target Ports Attached to Expanders
-.sp
-.LP
-The following command lists all target ports that are attached to expanders
-connected to a specified HBA port.
-
-.sp
-.in +2
-.nf
-# \fBsasinfo expander -t -p /dev/cfg/c1\fR
-HBA Name: SUNW-pmcs-0
- HBA Port Name: /dev/cfg/c1
- Expander SAS Address(Tier 1): 50800201a5a502bf
- Target Port SAS Address: 50800201a5a504f1
- Expander SAS Address(Tier 2): 50800201a5a50233
- Target Port SAS Address: 50800201a5a502be
- Target Port SAS Address: 5000c5000d2da8b2
- Expander SAS Address(Tier 2); 5000c5000d2da812
- Target Port SAS Address: 50800201a5a502be
- Target Port SAS Address: 50800201a5a508b2
- Expander SAS Address(Tier 1): 50800201a5a503bf
- Target Port SAS Address: 50800201a5a50421
- Expander SAS Address(Tier 2): 50800201a5a502d2
- Target Port SAS Address: 50800201a5a503be
- Target Port SAS Address: 5000c5000d2da7be
- Expander SAS Address(Tier 2); 5000c5000d2da823
- Target Port SAS Address: 50800201a5a503be
- Target Port SAS Address: 5000c5000d2da7be
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 10 \fRListing Target Port Information
-.sp
-.LP
-The following command lists all target ports discovered on the host.
-
-.sp
-.in +2
-.nf
-# \fBsasinfo target-port\fR
-Target Port SAS Address: 5000c5000bae4009
-Target Port SAS Address: 5000c5000baef4b1
-Target Port SAS Address: 5000c5000bae3fe1
-Target Port SAS Address: 5000c5000bae49d9
-Target Port SAS Address: 5000c5000bae36c5
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 11 \fRListing Target Port Information with Topology Details
-.sp
-.LP
-The following command lists all target ports with the HBA port and expander
-that they are connected to.
-
-.sp
-.in +2
-.nf
-# \fBsasinfo target-port -v\fR
-Target Port SAS Address: 5000c5000bae4009
- Type: SAS Device
- HBA Port Name: /dev/cfg/c7
- Expander Device SAS Address: 500e004aaaaaaa3f
- HBA Port Name: /dev/cfg/c5
- Expander Device SAS Address: 500e004aaaaaaa3f
-Target Port SAS Address: 5000c5000baef4b1
- Type: SAS Device
- HBA Port Name: /dev/cfg/c7
- Expander Device SAS Address: 500e004aaaaaaa3f
- HBA Port Name: /dev/cfg/c5
- Expander Device SAS Address: 500e004aaaaaaa3f
-Target Port SAS Address: 5000c5000bae3fe1
- Type: SAS Device
- HBA Port Name: /dev/cfg/c7
- Expander Device SAS Address: 500e004aaaaaaa3f
- HBA Port Name: /dev/cfg/c5
- Expander Device SAS Address: 500e004aaaaaaa3f
-Target Port SAS Address: 5000c5000bae49d9
- Type: SAS Device
- HBA Port Name: /dev/cfg/c7
- Expander Device SAS Address: 500e004aaaaaaa3f
- HBA Port Name: /dev/cfg/c5
- Expander Device SAS Address: 500e004aaaaaaa3f
-Target Port SAS Address: 5000c5000bae36c5
- Type: SAS Device
- HBA Port Name: /dev/cfg/c7
- Expander Device SAS Address: 500e004aaaaaaa3f
- HBA Port Name: /dev/cfg/c5
- Expander Device SAS Address: 500e004aaaaaaa3f
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 12 \fRListing Target Ports with SCSI Information
-.sp
-.LP
-The following command lists all target port details, including SCSI information
-for each target port.
-
-.sp
-.in +2
-.nf
-# \fBsasinfo target-port -s 5000c5000bae4009\fR
-Target Port SAS Address: 5000c5000bae4009
- Type: SAS Device
- HBA Port Name: /dev/cfg/c7
- Expander Device SAS Address: 500e004aaaaaaa3f
- LUN : 0
- OS Device Name : /dev/rdsk/c6t5000C5000BAE400Bd0s2
- Vendor: Sun
- Product: J4400
- Device Type: Disk
- HBA Port Name: /dev/cfg/c5
- Expander Device SAS Address: 500e004aaaaaaa3f
- LUN : 0
- OS Device Name : /dev/rdsk/c6t5000C5000BAE400Bd0s2
- Vendor: Sun
- Product: J4400
- Device Type: Disk
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 13 \fRListing the Logical Units
-.sp
-.LP
-The following command lists the logical units on a host.
-
-.sp
-.in +2
-.nf
-# \fBsasinfo logical-unit\fR
-OS Device Name: /dev/rdsk/c4t50020F2300B4904Ed0s2
-OS Device Name: /dev/rdsk/c4t50020F230000B4AFd0s2
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 14 \fRListing Additional Information on Logical Units
-.sp
-.LP
-The following command displays additional logical unit information using the
-\fB-v\fR option for device \fB/dev/rmt/On\fR.
-
-.sp
-.in +2
-.nf
-# \fBsasinfo lu -v\fR
-OS Device Name: /dev/rdsk/c4t50020F2300B4904Ed0s2
- HBA Port Name: /dev/cfg/c1
- Target Port SAS Address: 50020f2300b4904e
- LUN: 0
- Vendor: Sun
- Product: J4400
- Device Type: Disk
-OS Device Name: /dev/rdsk/c4t50020F230000B4AFd0s2
- HBA Port Name: /dev/cfg/c1
- Target Port SAS Address: 50020f230063100b
- LUN: 0
- Vendor: Sun
- Product: J4400
- Device Type: Disk
-.fi
-.in -2
-.sp
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Committed
-.TE
-
-.SH SEE ALSO
-.LP
-\fBattributes\fR(5)
diff --git a/usr/src/man/man1m/savecore.1m b/usr/src/man/man1m/savecore.1m
deleted file mode 100644
index 051c9f2a9e..0000000000
--- a/usr/src/man/man1m/savecore.1m
+++ /dev/null
@@ -1,214 +0,0 @@
-'\" te
-.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright (c) 1983 Regents of the University of California. All rights reserved. The Berkeley software License Agreement specifies the terms and conditions for redistribution.
-.\" Copyright 2013 Nexenta Systems, Inc. All Rights Reserved.
-.\" Copyright 2019 Joyent, Inc.
-.TH SAVECORE 1M "Jun 15, 2019"
-.SH NAME
-savecore \- save a crash dump of the operating system
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/bin/savecore\fR [\fB-L\fR | \fB-r\fR] [\fB-vd\fR] [\fB-k\fR \fIkeyfile\fR] [\fB-f\fR \fIdumpfile\fR] [\fIdirectory\fR]
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBsavecore\fR utility saves a crash dump of the kernel (assuming that one
-was made) and writes a reboot message in the shutdown log. By default, it is
-invoked by the \fBdumpadm\fR service each time the system boots.
-.sp
-.LP
-Depending on the \fBdumpadm\fR(1M) configuration \fBsavecore\fR saves either
-the compressed or uncompressed crash dump. The compressed crash dump is saved in
-the file \fIdirectory\fR\fB/vmdump.\fR\fIn\fR.
-\fBsavecore\fR saves the uncompressed crash dump data in the file
-\fIdirectory\fR\fB/vmcore.\fR\fIn\fR and the kernel's namelist in
-\fIdirectory\fR\fB/unix.\fR\fIn.\fR The trailing \fIn\fR in the
-pathnames is replaced by a number which grows every time \fBsavecore\fR is run
-in that directory.
-.sp
-.LP
-Before writing out a crash dump, \fBsavecore\fR reads a number from the file
-\fIdirectory\fR\fB/minfree\fR. This is the minimum number of kilobytes that
-must remain free on the file system containing \fIdirectory\fR. If after saving
-the crash dump the file system containing \fIdirectory\fR would have less free
-space the number of kilobytes specified in \fBminfree\fR, the crash dump is not
-saved. if the \fBminfree\fR file does not exist, \fBsavecore\fR assumes a
-\fBminfree\fR value of 1 megabyte.
-.sp
-.LP
-The \fBsavecore\fR utility also logs a reboot message using facility
-\fBLOG_AUTH\fR (see \fBsyslog\fR(3C)). If the system crashed as a result of a
-panic, \fBsavecore\fR logs the panic string too.
-.SH OPTIONS
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-d\fR\fR
-.ad
-.RS 15n
-Disregard dump header valid flag. Force \fBsavecore\fR to attempt to save a
-crash dump even if the header information stored on the dump device indicates
-the dump has already been saved.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR \fIdumpfile\fR\fR
-.ad
-.RS 15n
-Uncompress and save a crash dump and kernel namelist data from the specified
-compressed dump file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-k\fR \fIkeyfile\fR\fR
-.ad
-.RS 15n
-Specifies that the dump should be decrypted based on the key found
-in \fIkeyfile\fR. Encrypted dumps are always decrypted before being stored
-in the file system, and must always be stored compressed. (That is,
-decompression can only occur on a decrypted dump.) The key must match the
-key specified when dump encryption is enabled via \fBdumpadm\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-L\fR\fR
-.ad
-.RS 15n
-Save a crash dump of the live running system, without actually
-rebooting or altering the system in any way. This option forces \fBsavecore\fR
-to save a live snapshot of the system to the dump device, and then immediately
-to retrieve the data and to write it out to a new set of crash dump files in
-the specified directory. Live system crash dumps can only be performed if you
-have configured your system to have a dedicated dump device using
-\fBdumpadm\fR(1M).
-.sp
-\fBsavecore\fR \fB-L\fR does not suspend the system, so the contents of memory
-continue to change while the dump is saved. This means that live crash dumps
-are not fully self-consistent.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-r\fR\fR
-.ad
-.RS 15n
-Open the dump device or file as read-only, and don't update the dump header
-or do anything else that might modify the crash dump. This option can be used
-to recover a crash dump from a read-only device. This flag cannot be used in
-conjunction with \fB\fB-L\fR\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.RS 15n
-Verbose. Enables verbose error messages from \fBsavecore\fR.
-.RE
-
-.SH OPERANDS
-.LP
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fB\fIdirectory\fR\fR
-.ad
-.RS 13n
-Save the crash dump files to the specified directory. If \fIdirectory\fR is not
-specified, \fBsavecore\fR saves the crash dump files to the default
-\fBsavecore\fR \fIdirectory\fR, configured by \fBdumpadm\fR(1M).
-.RE
-
-.SH FILES
-.ne 2
-.na
-\fB\fIdirectory\fR\fB/vmdump.\fR\fIn\fR\fR
-.ad
-.RS 29n
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIdirectory\fR\fB/vmcore.\fR\fIn\fR\fR
-.ad
-.RS 29n
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIdirectory\fR\fB/unix.\fR\fIn\fR\fR
-.ad
-.RS 29n
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIdirectory\fR\fB/bounds\fR\fR
-.ad
-.RS 29n
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIdirectory\fR\fB/minfree\fR\fR
-.ad
-.RS 29n
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/crash/\&`uname \fR\fB-n\fR\fB\&`\fR\fR
-.ad
-.RS 29n
-default crash dump directory
-.RE
-
-.SH SEE ALSO
-.LP
-\fBadb\fR(1), \fBmdb\fR(1), \fBsvcs\fR(1), \fBdumpadm\fR(1M),
-\fBsvcadm\fR(1M), \fBsyslog\fR(3C), \fBattributes\fR(5), \fBsmf\fR(5)
-.SH NOTES
-.LP
-The system crash dump service is managed by the service management facility,
-\fBsmf\fR(5), under the service identifier:
-.sp
-.in +2
-.nf
-svc:/system/dumpadm:default
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Administrative actions on this service, such as enabling, disabling, or
-requesting restart, can be performed using \fBsvcadm\fR(1M). The service's
-status can be queried using the \fBsvcs\fR(1) command.
-.sp
-.LP
-If the dump device is also being used as a swap device, you must run
-\fBsavecore\fR very soon after booting, before the swap space containing the
-crash dump is overwritten by programs currently running.
diff --git a/usr/src/man/man1m/sbdadm.1m b/usr/src/man/man1m/sbdadm.1m
deleted file mode 100644
index 5445dff56f..0000000000
--- a/usr/src/man/man1m/sbdadm.1m
+++ /dev/null
@@ -1,266 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SBDADM 1M "April 9, 2016"
-.SH NAME
-sbdadm \- SCSI Block Disk command line interface
-.SH SYNOPSIS
-.LP
-.nf
-\fBsbdadm\fR \fBcreate-lu\fR [\fB-s\fR, \fB--size\fR \fIsize\fR] \fIfilename\fR
-.fi
-
-.LP
-.nf
-\fBsbdadm\fR \fBdelete-lu\fR \fIlu_name\fR
-.fi
-
-.LP
-.nf
-\fBsbdadm\fR \fBimport-lu\fR \fIlu_name\fR
-.fi
-
-.LP
-.nf
-\fBsbdadm\fR \fBlist-lu\fR \fIlu_name\fR
-.fi
-
-.LP
-.nf
-\fBsbdadm\fR \fBmodify-lu\fR [\fB-s\fR, \fB--size\fR \fIsize\fR] \fIlu_name\fR | \fIfilename\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBsbdadm\fR command creates and manages SCSI-block-device-based logical
-units that are registered with the SCSI Target Mode Framework (STMF).
-.SH SUBCOMMANDS
-.LP
-The \fBsbdadm\fR command supports the subcommands listed below. Note that if
-you enter a question mark as an argument to the command (\fBsbdadm ?\fR),
-\fBsbdadm\fR responds with a help display.
-.sp
-.ne 2
-.na
-\fB\fBcreate-lu\fR [\fB-s\fR, \fB--size\fR \fIsize\fR] \fIfilename\fR\fR
-.ad
-.sp .6
-.RS 4n
-Create a logical unit that can be registered with the STMF. For the \fB-s\fR
-option, \fIsize\fR is an integer followed by one of the following letters, to
-indicate a unit of size:
-.sp
-.ne 2
-.na
-\fB\fBk\fR\fR
-.ad
-.RS 5n
-kilobyte
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBm\fR\fR
-.ad
-.RS 5n
-megabyte
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBg\fR\fR
-.ad
-.RS 5n
-gigabyte
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBt\fR\fR
-.ad
-.RS 5n
-terabyte
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBp\fR\fR
-.ad
-.RS 5n
-petabyte
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBe\fR\fR
-.ad
-.RS 5n
-exabyte
-.RE
-
-If you do not specify \fIsize\fR, the size defaults to the size of
-\fIfilename\fR.
-.sp
-The size specified can exceed the size of the file or device.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdelete-lu\fR \fIlu_name\fR\fR
-.ad
-.sp .6
-.RS 4n
-Deletes an existing logical unit that was created using \fBsbdadm create-lu\fR.
-This effectively unloads the logical unit from the STMF framework. Any existing
-data on the logical unit remains intact.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBimport-lu\fR \fIlu_name\fR\fR
-.ad
-.sp .6
-.RS 4n
-Imports and loads a logical unit into the STMF that was previously created
-using \fBsbdadm create-lu\fR and was since deleted from the STMF using
-\fBsbdadm delete-lu\fR. On success, the logical unit is again made available to
-the STMF. \fIfilename\fR is the filename used in the \fBsbdadm create-lu\fR
-command for this logical unit.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBlist-lu\fR\fR
-.ad
-.sp .6
-.RS 4n
-List all logical units that were created using the \fBsbdadm create-lu\fR
-command.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmodify-lu\fR [\fB-s\fR, \fB--size\fR \fIsize\fR] \fIlu_name\fR |
-\fIfilename\fR\fR
-.ad
-.sp .6
-.RS 4n
-Modifies attributes of an logical unit created using the \fBsbdadm create-lu\fR
-command. For the \fB-s\fR option, \fIsize\fR is an integer value followed by a
-unit specifier. The unit specifiers are as described above under
-\fBcreate-lu\fR. When this option is specified, the existing size of the
-logical unit is changed to the new size.
-.sp
-The size specified can exceed the size of the file or device represented by
-\fIlu_name\fR.
-.RE
-
-.SH OPERANDS
-.LP
-\fBsbdadm\fR use the following operands:
-.sp
-.ne 2
-.na
-\fB\fIfilename\fR\fR
-.ad
-.sp .6
-.RS 4n
-Name of an existing file or a fully qualified path to a raw block device.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIlu_name\fR\fR
-.ad
-.sp .6
-.RS 4n
-The 32-byte hexadecimal representation of the logical unit.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRCreating a Logical Unit
-.sp
-.LP
-The following series of commands creates a 10-gigabyte logical unit.
-
-.sp
-.in +2
-.nf
-# \fBtouch /export/lun/0\fR
-# \fBsbdadm create-lu -s 10g /export/lun/0\fR
-# \fBsbdadm create-lu /dev/rdsk/c1t1d0s0\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRListing Logical Units
-.sp
-.LP
-The following command lists all logical units.
-
-.sp
-.in +2
-.nf
-# \fBsbdadm list-lu\fR
-Found 2 LU(s)
-
- GUID DATA SIZE SOURCE
--------------------------------- ----------- ------
-6000ae4000144f21d92c47b0dd650002 10737352704 /export/lun/0
-6000ae4000144f21d92c47b0de300032 134283264 /dev/rdsk/c1t1d0s0
-.fi
-.in -2
-.sp
-
-.SH EXIT STATUS
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.sp .6
-.RS 4n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnon-zero\fR\fR
-.ad
-.sp .6
-.RS 4n
-An error occurred.
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Obsolete Committed
-.TE
-
-.SH SEE ALSO
-.LP
-\fBstmfadm\fR(1M), \fBattributes\fR(5)
diff --git a/usr/src/man/man1m/scadm.1m b/usr/src/man/man1m/scadm.1m
deleted file mode 100644
index ea5e80a080..0000000000
--- a/usr/src/man/man1m/scadm.1m
+++ /dev/null
@@ -1,1074 +0,0 @@
-'\" te
-.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SCADM 1M "Dec 20, 2005"
-.SH NAME
-scadm \- administer System Controller (SC)
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/platform/\fIplatform-name\fR/sbin/scadm\fR \fIsubcommand\fR [\fIoption\fR]
- [\fIargument\fR]...
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBscadm\fR utility administers the System Controller (\fBSC\fR). This
-utility allows the host server to interact with the \fBSC\fR.
-.sp
-.LP
-The \fBscadm\fR utility \fBmust\fR be run as root.
-.sp
-.LP
-The interface, output, and location in the directory hierarchy for \fBscadm\fR
-are uncommitted and might change.
-.sp
-.LP
-\fIplatform-name\fR is the name of the platform implementation. Use the
-\fBuname\fR \fB-i\fR command to identify the platform implementation. See
-\fBuname\fR(1).
-.sp
-.LP
-The \fBscadm\fR utility has a number of subcommands. Some subcommands have
-specific options and arguments associated with them. See \fBSUBCOMMANDS\fR,
-\fBOPTIONS\fR, \fBOPERANDS\fR, and \fBUSAGE\fR.
-.SS "SUBCOMMANDS"
-.sp
-.LP
-Subcommands immediately follow the \fBscadm\fR command on the command line, and
-are separated from the command by a SPACE.
-.sp
-.LP
-The following subcommands are supported
-.sp
-.ne 2
-.na
-\fBconsolehistory\fR
-.ad
-.sp .6
-.RS 4n
-Display the \fBSC\fR's console log. The \fBSC\fR maintains a running log which
-captures all console output. This log is maintained as a first-in, first-out
-buffer: New console output may displace old console output if the buffer is
-full. By default, only the last eight kilobytes of the console log file are
-displayed.
-.sp
-The optional \fB-a\fR argument specifies that the entire console log file be
-displayed.
-.sp
-It is possible for the \fBSC\fR to fill this log more quickly than the
-\fBconsolehistory\fR subcommand can read it. This means that it is possible for
-some log data to be lost before it can be displayed. If this happens, the
-\fBconsolehistory\fR subcommand displays "scadm: lost <number> bytes of console
-log data" in the log output, to indicate that some data was lost.
-.sp
-The format for the \fBconsolehistory\fR subcommand is:
-.sp
-.in +2
-.nf
-scadm consolehistory [-a]
-.fi
-.in -2
-.sp
-
-The \fBconsolehistory\fR subcommand is not available on all platforms. If this
-command is used on a platform that does not support it, \fBscadm\fR prints this
-message:
-.sp
-.in +2
-.nf
-scadm: command/option not supported
-.fi
-.in -2
-.sp
-
-and exit with non-zero status.
-.RE
-
-.sp
-.ne 2
-.na
-\fBdate\fR
-.ad
-.sp .6
-.RS 4n
-Display the \fBSC\fR's time and date
-.sp
-The format for the \fBdate\fR subcommand is:
-.sp
-.in +2
-.nf
-scadm date
-.fi
-.in -2
-.sp
-
-.RE
-
-.sp
-.ne 2
-.na
-\fBdownload\fR
-.ad
-.sp .6
-.RS 4n
-Program the \fBSC\fR's firmware.
-.sp
-There are two parts to the firmware, the boot monitor and the main image.
-.sp
-By default, The \fBscadm\fR command's download programs the main firmware
-image. The \fBboot\fR argument selects programming of the boot monitor.
-.sp
-The format for the \fBdownload\fR subcommand is:
-.sp
-.in +2
-.nf
-scadm download [boot] \fIfile\fR
-.fi
-.in -2
-.sp
-
-.RE
-
-.sp
-.ne 2
-.na
-\fBfruhistory\fR
-.ad
-.sp .6
-.RS 4n
-Display the contents of the "field replacable unit" log maintained by the
-\fBSC\fR. By default, only the last eight kilobytes of the fru history log file
-are displayed. The data in contained this log contains snapshots of the
-\fBSC\fR's "showfru" command, taken whenever the system is reset, or a hot-plug
-event is detected by the \fBSC\fR.
-.sp
-The optional \fB-a\fR argument specifies that the entire fru log file be
-displayed.
-.sp
-It is possible for the \fBSC\fR to fill this log more quickly than the
-\fBfruhistory\fR subcommand can read it. This means that it is possible for
-some log data to be lost before it can be displayed. If this happens, the
-\fBfruhistory\fR subcommand displays "scadm: lost <number> bytes of fru log
-data" in the log output, to indicate that some data was lost.
-.sp
-The format for the fruhistory subcommand is:
-.sp
-.in +2
-.nf
-scadm fruhistory [-a]
-.fi
-.in -2
-.sp
-
-The \fBfruhistory\fR subcommand is not available on all platforms. If this
-command is used on a platform which does not support it, \fBscadm\fR prints
-this message:
-.sp
-.in +2
-.nf
-scadm: command/option not supported
-.fi
-.in -2
-.sp
-
-and exit with non-zero status.
-.RE
-
-.sp
-.ne 2
-.na
-\fBhelp\fR
-.ad
-.sp .6
-.RS 4n
-Display a list of commands.
-.sp
-The format for the \fBhelp\fR subcommand is:
-.sp
-.in +2
-.nf
-scadm help
-.fi
-.in -2
-.sp
-
-.RE
-
-.sp
-.ne 2
-.na
-\fBloghistory\fR
-.ad
-.sp .6
-.RS 4n
-Display the most recent entries in the \fBSC\fR event log. The optional
-\fB-a\fR argument causes the entire event log history to be displayed. The
-\fB-a\fR argument is available only on platforms which support large log files.
-On platforms which do not support large log files, this flag has no additional
-effect.
-.sp
-It is possible for the \fBSC\fR to fill this log more quickly than the
-\fBloghistory\fR subcommand can read it. This means that it is possible for
-some log data to be lost before it can be displayed. If this happens, the
-\fBloghistory\fR subcommand displays "scadm: lost <number> events" in the log
-output, to indicate that some data was lost.
-.sp
-The format for the \fBloghistory\fR subcommand is:
-.sp
-.in +2
-.nf
-scadm loghistory [-a]
-.fi
-.in -2
-.sp
-
-.RE
-
-.sp
-.ne 2
-.na
-\fBresetrsc\fR
-.ad
-.sp .6
-.RS 4n
-Reset the \fBSC\fR. There are two types of resets allowed, a \fBhard\fR reset
-and a \fBsoft\fR reset.The \fBhard\fR reset is done by default. The \fBsoft\fR
-reset can be selected by using the \fB-s\fR option.
-.sp
-The format for the \fBresetrsc\fR subcommand is:
-.sp
-.in +2
-.nf
-scadm resetrsc [\fB-s\fR]
-.fi
-.in -2
-.sp
-
-.RE
-
-.sp
-.ne 2
-.na
-\fBsend_event\fR
-.ad
-.sp .6
-.RS 4n
-Manually send a text based event. The \fBSC\fR can forward the event to the
-\fBSC\fR event log. You can configure the \fB-c\fR option to send a critical
-warning to email, alert to logged in SC users, and \fBsyslog\fR. Critical
-events are logged to \fBsyslog\fR(3C). There is an \fB80\fR character limit to
-the length of the associated text message.
-.sp
-The format for the \fBsend_event\fR subcommand is:
-.sp
-.in +2
-.nf
-scadm send_event [\fB-c\fR] "\fImessage\fR"
-.fi
-.in -2
-.sp
-
-.RE
-
-.sp
-.ne 2
-.na
-\fBset\fR
-.ad
-.sp .6
-.RS 4n
-Set SC configuration variables to a value.
-.sp
-Examples of SC configuration variables include: SC IP address
-\fBnetsc_ipaddr\fR and SC Customer Information \fBsc_customerinfo\fR. See the
-output from the \fBscadm help\fR command for a complete list of SC
-configuration variables.
-.sp
-The format for the \fBset\fR subcommand is:
-.sp
-.in +2
-.nf
-scadm set \fIvariable value\fR
-.fi
-.in -2
-.sp
-
-.RE
-
-.sp
-.ne 2
-.na
-\fBshow\fR
-.ad
-.sp .6
-.RS 4n
-Display the current SC configuration variable settings. If no variable is
-specified, \fBscadm\fR shows all variable settings.
-.sp
-The format for the \fBshow\fR subcommand is:
-.sp
-.in +2
-.nf
-scadm show [\fIvariable\fR]
-.fi
-.in -2
-.sp
-
-.RE
-
-.sp
-.ne 2
-.na
-\fBshownetwork\fR
-.ad
-.sp .6
-.RS 4n
-Display the current network configuration parameters for SC.
-.sp
-The format for the \fBshownetwork\fR subcommand is:
-.sp
-.in +2
-.nf
-scadm shownetwork
-.fi
-.in -2
-.sp
-
-.RE
-
-.sp
-.ne 2
-.na
-\fBuseradd\fR
-.ad
-.sp .6
-.RS 4n
-Add user accounts to the \fBSC\fR. The \fBSC\fR supports up to sixteen separate
-users.
-.sp
-The format for the \fBuseradd\fR subcommand is:
-.sp
-.in +2
-.nf
-scadm useradd \fIusername\fR
-.fi
-.in -2
-.sp
-
-.RE
-
-.sp
-.ne 2
-.na
-\fBuserdel\fR
-.ad
-.sp .6
-.RS 4n
-Delete a user account from \fBSC\fR.
-.sp
-The format for the \fBuserdel\fR subcommand is:
-.sp
-.in +2
-.nf
-scadm userdel \fIusername\fR
-.fi
-.in -2
-.sp
-
-.RE
-
-.sp
-.ne 2
-.na
-\fBuserpassword\fR
-.ad
-.sp .6
-.RS 4n
-Set a password for the user account specified. This password overrides any
-existing password currently set. There is no verification of the old password
-before setting the new password.
-.sp
-The format for the \fBuserpassword\fR subcommand is:
-.sp
-.in +2
-.nf
-scadm userpassword \fIusername\fR
-.fi
-.in -2
-.sp
-
-.RE
-
-.sp
-.ne 2
-.na
-\fBuserperm\fR
-.ad
-.sp .6
-.RS 4n
-Set the permission level for the user.
-.sp
-The format for the \fBuserperm\fR subcommand is:
-.sp
-.in +2
-.nf
-scadm userperm \fIusername\fR [aucr]
-.fi
-.in -2
-.sp
-
-.RE
-
-.sp
-.ne 2
-.na
-\fBusershow\fR
-.ad
-.sp .6
-.RS 4n
-Display details on the specified user account. If a username is not specified,
-all user accounts are displayed.
-.sp
-The format for the \fBusershow\fR subcommand is:
-.sp
-.in +2
-.nf
-scadm usershow \fIusername\fR
-.fi
-.in -2
-.sp
-
-.RE
-
-.sp
-.ne 2
-.na
-\fBversion\fR
-.ad
-.sp .6
-.RS 4n
-Display the version numbers of the \fBSC\fR and its components.
-.sp
-The format for the \fBversion\fR subcommand is:
-.sp
-.in +2
-.nf
-scadm version [\fB-v\fR]
-.fi
-.in -2
-.sp
-
-.RE
-
-.SH OPTIONS
-.sp
-.LP
-The \fBresetrsc\fR, \fBsend_event\fR, and \fBversion\fR subcommands have
-associated options. Options follow subcommands on the command line and are
-separated from the subcommand by a SPACE.
-.sp
-.LP
-The \fBresetrsc\fR subcommand supports the following options:
-.sp
-.ne 2
-.na
-\fB\fB-s\fR\fR
-.ad
-.sp .6
-.RS 4n
-Perform a soft reset instead of a hard reset. A hard reset physically resets
-the SC hardware. The SC software jumps to the boot firmware, simulating a
-reset, for a soft reset.
-.RE
-
-.sp
-.LP
-The \fBsend_event\fR subcommand supports the following options:
-.sp
-.ne 2
-.na
-\fB\fB-c\fR\fR
-.ad
-.sp .6
-.RS 4n
-Send a critical event. Without the \fB-c\fR, \fB-send_event\fR sends a warning.
-.RE
-
-.sp
-.LP
-The \fBversion\fR subcommand supports the following options:
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display a verbose output of version numbers and associated information.
-.RE
-
-.sp
-.LP
-The \fBconsolehistory\fR, \fBfruhistory\fR, and \fBloghistory\fR subcommands
-support the following option:
-.sp
-.ne 2
-.na
-\fB\fB-a\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display the entire log. These subcommands normally display only the most recent
-log data. This flag causes them to display the entire log.
-.RE
-
-.SH OPERANDS
-.sp
-.LP
-The \fBdownload\fR, \fBsend_event\fR, \fBset\fR, \fBshow\fR, \fBuseradd\fR,
-\fBuserdel\fR, \fBuserperm\fR, \fBusershow\fR, \fBuserpassword\fR, and
-\fBuserperm\fR subcommands have associated arguments (operands).
-.sp
-.LP
-If the subcommand has an option, the arguments follow the option on the command
-line and is separated from the option by a SPACE. If the subcommand does not
-have an option, the arguments follow the subcommand on the command line and are
-separated from the subcommand by a SPACE. If there are more than one arguments,
-they are separated from each other by a SPACE.
-.sp
-.LP
-The \fBdownload\fR subcommand supports the following arguments:
-.sp
-.ne 2
-.na
-\fBboot\fR
-.ad
-.sp .6
-.RS 4n
-Program the boot monitor portion of the flash. The main portion of the flash is
-programmed without any arguments
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIfile\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify \fIfile\fR as the path to where the boot or main firmware image resides
-for download.
-.sp
-Examples of \fIfile\fR are:
-.sp
-.in +2
-.nf
-\fB/usr/platform/\fR\fIplatform_type\fR\fB/lib/image/alommainfw\fR
-.fi
-.in -2
-.sp
-
-or
-.sp
-.in +2
-.nf
-\fB/usr/platform/\fR\fIplatform_type\fR\fB/lib/image/alombootfw\fR
-.fi
-.in -2
-.sp
-
-.RE
-
-.sp
-.LP
-The \fBsend_event\fR subcommand supports the following arguments:
-.sp
-.ne 2
-.na
-\fB"\fImessage\fR"\fR
-.ad
-.sp .6
-.RS 4n
-Describe event using the test contained in \fImessage\fR. Enclose \fImessage\fR
-in quotation marks.
-.RE
-
-.sp
-.LP
-The \fBset\fR subcommand supports the following arguments:
-.sp
-.ne 2
-.na
-\fB\fIvariable\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set SC configuration \fIvariable\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIvalue\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set SC configuration variable to \fIvalue\fR.
-.RE
-
-.sp
-.LP
-The \fBshow\fR subcommand supports the following arguments:
-.sp
-.ne 2
-.na
-\fB\fIvariable\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display the value of that particular variable.
-.RE
-
-.sp
-.LP
-The \fBuseradd\fR subcommand supports the following arguments:
-.sp
-.ne 2
-.na
-\fB\fIusername\fR\fR
-.ad
-.sp .6
-.RS 4n
-Add new SC account \fIusername\fR.
-.RE
-
-.sp
-.LP
-The \fBuserdel\fR subcommand supports the following arguments:
-.sp
-.ne 2
-.na
-\fB\fIusername\fR\fR
-.ad
-.sp .6
-.RS 4n
-Remove SC account \fIusername\fR.
-.RE
-
-.sp
-.LP
-The \fBuserperm\fR subcommand supports the following arguments:
-.sp
-.ne 2
-.na
-\fB\fB-aucr\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set permissions for SC user accounts. If no permissions are specified, all four
-permissions are disabled and read only access is assigned.
-.sp
-The following are the definitions for permissions:
-.sp
-.ne 2
-.na
-\fBa\fR
-.ad
-.sp .6
-.RS 4n
-Allow user to administer or change the SC configuration variables
-.RE
-
-.sp
-.ne 2
-.na
-\fBu\fR
-.ad
-.sp .6
-.RS 4n
-Allow user to use the user commands to modify SC accounts
-.RE
-
-.sp
-.ne 2
-.na
-\fBc\fR
-.ad
-.sp .6
-.RS 4n
-Allow user to connect to console.
-.RE
-
-.sp
-.ne 2
-.na
-\fBr\fR
-.ad
-.sp .6
-.RS 4n
-Allow user to reset SC and to power on and off the host.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIusername\fR\fR
-.ad
-.sp .6
-.RS 4n
-Change permissions on SC account \fIusername\fR.
-.RE
-
-.sp
-.LP
-The \fB-usershow\fR subcommand supports the following arguments:
-.sp
-.ne 2
-.na
-\fB\fIusername\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display information on SC account \fIusername\fR. If \fIusername\fR is not
-specified, all accounts are displayed.
-.RE
-
-.sp
-.LP
-The \fBuserpassword\fR subcommand supports the following arguments:
-.sp
-.ne 2
-.na
-\fB\fIusername\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set SC password for \fIusername\fR.
-.RE
-
-.sp
-.LP
-The \fBuserperm\fR subcommand supports the following arguments:
-.sp
-.ne 2
-.na
-\fB\fIusername\fR\fR
-.ad
-.sp .6
-.RS 4n
-Change SC permissions for \fIusername\fR.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRDisplaying the SC's Date and Time
-.sp
-.LP
-The following command displays the SC's date and time.
-
-.sp
-.in +2
-.nf
-scadm date
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRSetting the SC's Configuration Variables
-.sp
-.LP
-The following command sets the SC's configuration variable \fBnetsc_ipaddr\fR
-to \fB192.168.1.2\fR:
-
-.sp
-.in +2
-.nf
-scadm set netsc_ipaddr 192.168.1.2
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRDisplaying the Current SC's Configuration Settings:
-.sp
-.LP
-The following command displays the current SC configuration settings:
-
-.sp
-.in +2
-.nf
-scadm show
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 4 \fRDisplaying the Current Settings for a Variable
-.sp
-.LP
-The following command displays the current settings for the \fBsys_hostname\fR
-variable:
-
-.sp
-.in +2
-.nf
-scadm show sys_hostname
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 5 \fRSending a Text-Based Critical Event
-.sp
-.LP
-The following command sends a critical event to the SC logs, alerts the current
-SC users, and sends an event to \fBsyslog\fR(3C):
-
-.sp
-.in +2
-.nf
-scadm send_event \fB-c\fR "The UPS signaled a loss in power"
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 6 \fRSending an Informational Text-Based Event
-.sp
-.LP
-The following command sends an non-critical informational text based event to
-the SC event log:
-
-.sp
-.in +2
-.nf
-scadm send_event "The disk is close to full capacity"
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 7 \fRAdding a User To the SC
-.sp
-.LP
-The following command adds user \fBrscroot\fR to the SC:
-
-.sp
-.in +2
-.nf
-scadm useradd rscroot
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 8 \fRDeleting a User From the SC
-.sp
-.LP
-The following command deletes user \fBolduser\fR from the SC:
-
-.sp
-.in +2
-.nf
-scadm userdel olduser
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 9 \fRDisplaying User Details
-.sp
-.LP
-The following command displays details of all user accounts:
-
-.sp
-.in +2
-.nf
-scadm usershow
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 10 \fRDisplaying Details for a Specific User
-.sp
-.LP
-The following command displays details of user account \fBrscroot\fR:
-
-.sp
-.in +2
-.nf
-scadm usershow rscroot
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 11 \fRSetting the User Permission Level
-.sp
-.LP
-The following command sets the full permission level for user \fBrscroot\fR to
-\fBaucr\fR:
-
-.sp
-.in +2
-.nf
-scadm userperm rscroot aucr
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 12 \fRSetting the User Permission Level
-.sp
-.LP
-The following command sets only console access for user \fBnewuser\fR to
-\fBc\fR:
-
-.sp
-.in +2
-.nf
-scadm userperm newuser c
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 13 \fRSetting the User Permission Level
-.sp
-.LP
-The following command sets the permission level for user \fBnewuser\fR to read
-only access:
-
-.sp
-.in +2
-.nf
-scadm userperm newuser
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 14 \fRDisplaying the Current Network Parameters
-.sp
-.LP
-The following command displays the current network configuation parameters for
-the SC:
-
-.sp
-.in +2
-.nf
-scadm shownetwork
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 15 \fRViewing the Consolehistory
-.sp
-.LP
-The following command displays the content console in the \fBSC\fR event log:
-
-.sp
-.in +2
-.nf
-scadm consolehistory [-a]
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 16 \fRViewing the Fruhistory
-.sp
-.LP
-The following command displays the content of the "field replacable unit" in
-the \fBSC\fR event log:
-
-.sp
-.in +2
-.nf
-scadm fruhistory [-a]
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 17 \fRViewing the Loghistory
-.sp
-.LP
-The following command displays the most recent entries in the SC event log:
-
-.sp
-.in +2
-.nf
-scadm loghistory [-a]
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 18 \fRDisplaying Verbose Information
-.sp
-.LP
-The following command displays verbose version information on the SC and its
-components:
-
-.sp
-.in +2
-.nf
-scadm version \fB-v\fR
-.fi
-.in -2
-.sp
-
-.SH EXIT STATUS
-.sp
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.sp .6
-.RS 4n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnon-zero\fR\fR
-.ad
-.sp .6
-.RS 4n
-An error occurred.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBuname\fR(1), \fBsyslog\fR(3C), \fBattributes\fR(5)
diff --git a/usr/src/man/man1m/sckmd.1m b/usr/src/man/man1m/sckmd.1m
deleted file mode 100644
index 547a6f982d..0000000000
--- a/usr/src/man/man1m/sckmd.1m
+++ /dev/null
@@ -1,79 +0,0 @@
-'\" te
-.\" Copyright (c) 2005, Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 2019 Peter Tribble.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SCKMD 1M "Apr 3, 2019"
-.SH NAME
-sckmd \- Sun cryptographic key management daemon
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/platform/sun4u/lib/sckmd\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-\fBsckmd\fR is a server process that resides on a high-end system domain to
-maintain the Internet Protocol Security (\fBIPsec\fR) Security Associations
-(\fBSAs\fR) needed to secure communications between a Service Processor or
-System Controller (SC) and platform management software running within a
-domain. The \fBdcs\fR(1M) daemon uses these Security
-Associations. See \fBipsec\fR(7P) for a description of Security Associations.
-.sp
-.LP
-The \fBsckmd\fR daemon receives \fBSA\fRs from the Service Processor or
-\fBSC\fR and installs these \fBSA\fRs in a domain's Security Association
-Database (\fBSADB\fR) using \fBpf_key\fR(7P).
-.sp
-.LP
-\fBsckmd\fR starts up at system boot time as an \fBSMF\fR service. The
-\fBFMRI\fR for the \fBsckmd\fR service is:
-.sp
-.in +2
-.nf
-svc:/platform/sun4u/sckmd:default
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-A domain supports only one running \fBsckmd\fR process at a time.
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-.LP
-\fBdcs\fR(1M), \fBipsecconf\fR(1M), \fBipsecalgs\fR(1M),
-\fBattributes\fR(5), \fBipsec\fR(7P), \fBipsecah\fR(7P), \fBipsecesp\fR(7P),
-\fBpf_key\fR(7P)
-.SH NOTES
-.LP
-The \fBsckmd\fR service is used only on Sun Fire high-end systems.
-It provides a mechanism for exchanging
-\fBIPsec\fR keys between a domain and its System Controller (\fBSC\fR) or
-Service Processor. These platforms use \fBIPsec\fR to secure the communications
-between the \fBSC\fR or Service Processor and a platform-specific daemon
-in the domain, such as \fBdcs\fR(1M).
-.sp
-.LP
-The documentation for each platform that supports \fBsckmd\fR describes how to
-configure its use of \fBIPsec\fR for such communications. Also, the
-documentation for each specific application describes how to configure its
-security policies and \fBIPsec\fR options in a manner appropriate for the
-target platform. Refer to the platform- and application-specific documentation
-for detailed information.
diff --git a/usr/src/man/man1m/sdpadm.1m b/usr/src/man/man1m/sdpadm.1m
deleted file mode 100644
index 54b808eab4..0000000000
--- a/usr/src/man/man1m/sdpadm.1m
+++ /dev/null
@@ -1,85 +0,0 @@
-'\" te
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SDPADM 1M "Dec 22, 2008"
-.SH NAME
-sdpadm \- SDP system configuration administration
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/sdpadm\fR status | enable | disable
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBsdpadm\fR command is used to display the system state of the Sockets
-Direct Protocol (SDP) protocol. The \fBsdpadm\fR command can optionally be used
-to set the state of the SDP protocol. See \fBsdp\fR(7D).
-.sp
-.LP
-By default the SDP protocol is disabled on the system. It can be enabled by
-using \fBsdpadm\fR \fBenable\fR.
-.SH OPTIONS
-.sp
-.LP
-The following subcommands are supported:
-.sp
-.ne 2
-.na
-\fB\fBstatus\fR\fR
-.ad
-.RS 11n
-Displays the system status of the SDP protocol
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBenable\fR\fR
-.ad
-.RS 11n
-Enables the SDP protocol
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdisable\fR\fR
-.ad
-.RS 11n
-Disables the SDP protocol
-.RE
-
-.SH USAGE
-.sp
-.LP
-The required privileges to change the state of the SDP protocol are controlled
-by the network configuration policy. If a user does not have the correct
-privileges to set the SDP policy, \fBsdpadm\fR returns the current state of SDP
-without having changed the state.
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Uncommitted
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBattributes\fR(5), \fBsdp\fR(7D)
-.sp
-.LP
-Infiniband Specification Volume 1 (\fBhttp://www.infinibandta.org\fR)
diff --git a/usr/src/man/man1m/sendmail.1m b/usr/src/man/man1m/sendmail.1m
deleted file mode 100644
index dff3a81c36..0000000000
--- a/usr/src/man/man1m/sendmail.1m
+++ /dev/null
@@ -1,3489 +0,0 @@
-'\" te
-.\" Copyright (c) 1998-2003 Sendmail, Inc. and its suppliers. All rights reserved.
-.\" Copyright (c) 1983, 1997 Eric P. Allman. All rights reserved.
-.\" Copyright (c) 1988, 1991, 1993 The Regents of the University of California. All rights reserved.
-.\" Portions Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SENDMAIL 1M "May 13, 2017"
-.SH NAME
-sendmail \- send mail over the internet
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/sendmail\fR [\fB-Ac\fR] [\fB-Am\fR] [\fB-ba\fR] [\fB-bD\fR] [\fB-bd\fR] [\fB-bi\fR] [\fB-bl\fR]
- [\fB-bm\fR] [\fB-bp\fR] [\fB-bP\fR] [\fB-bs\fR] [\fB-bt\fR] [\fB-bv\fR] [\fB-B\fR \fItype\fR] [\fB-C\fR \fIfile\fR]
- [\fB-D\fR \fIlogfile\fR] [\fB-d\fR \fIX\fR] [\fB-F\fR \fIfullname\fR] [\fB-f\fR \fIname\fR] [\fB-G\fR]
- [\fB-h\fR \fIN\fR] [\fB-L \fItag\fR\fR] [\fB-M\fR x\fIvalue\fR] [\fB-N\fR \fInotifications\fR] [\fB-n\fR]
- [\fB-O\fR\fIoption\fR =\fIvalue\fR] [\fB-o\fR x\fIvalue\fR] [\fB-p\fR \fIprotocol\fR]
- [\fB-Q\fR [\fIreason\fR]] [\fB-q\fR [\fItime\fR]] [\fB-q\fR \fIXstring\fR] [\fB-R\fR \fIret\fR]
- [\fB-r\fR \fIname\fR] [\fB-t\fR] [\fB-V\fR \fIenvid\fR] [\fB-v\fR] [\fB-X\fR \fIlogfile\fR]
- [\fIaddress\fR]...
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBsendmail\fR utility sends a message to one or more people, routing the
-message over whatever networks are necessary. \fBsendmail\fR does internetwork
-forwarding as necessary to deliver the message to the correct place.
-.sp
-.LP
-\fBsendmail\fR is not intended as a user interface routine. Other programs
-provide user-friendly front ends. \fBsendmail\fR is used only to deliver
-pre-formatted messages.
-.sp
-.LP
-With no flags, \fBsendmail\fR reads its standard input up to an EOF, or a line
-with a single dot, and sends a copy of the letter found there to all of the
-addresses listed. It determines the network to use based on the syntax and
-contents of the addresses.
-.sp
-.LP
-Local addresses are looked up in the local \fBaliases\fR(4) file, or in a name
-service as defined by the \fBnsswitch.conf\fR(4) file, and aliased
-appropriately. In addition, if there is a \fB\&.forward\fR file in a
-recipient's home directory, \fBsendmail\fR forwards a copy of each message to
-the list of recipients that file contains. Refer to the \fBNOTES\fR section for
-more information about \fB\&.forward\fR files. Aliasing can be prevented by
-preceding the address with a backslash.
-.sp
-.LP
-There are several conditions under which the expected behavior is for the alias
-database to be either built or rebuilt. This cannot occur under any
-circumstances unless root owns \fBand\fR has exclusive write permission to the
-\fB/etc/mail/aliases*\fR files.
-.sp
-.LP
-If a message is found to be undeliverable, it is returned to the sender with
-diagnostics that indicate the location and nature of the failure; or, the
-message is placed in a \fBdead.letter\fR file in the sender's home directory.
-.SS "Service Management"
-.LP
-The \fBsendmail\fR service is managed by the service management facility,
-\fBsmf\fR(5), under the service identifiers:
-.sp
-.in +2
-.nf
-svc:/network/smtp:sendmail
-svc:/network/sendmail-client:default
-
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Administrative actions on these services, such as enabling, disabling, or
-requesting restart, can be performed using \fBsvcadm\fR(1M). The services'
-status can be queried using the \fBsvcs\fR(1) command.
-.sp
-.LP
-These are separate services rather than instances of the same service so that
-other services can properly express any dependencies. In particular, here are
-some guidelines about which service/instance should be depended on for which
-purposes:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-For a service that uses \fBsendmail\fR to send mail, an optional dependency on
-the service \fBsvc:/network/sendmail-client\fR might be in order.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-For a service that needs to receive mail in general, but does not depend on
-\fBsendmail\fR being the particular SMTP receiver, a dependency on the service
-\fBsvc:/network/smtp\fR might be in order.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-For a service that needs to interact with sendmail in particular, such as a
-\fBMilter\fR, a dependency on the instance \fBsvc:/network/smtp:sendmail\fR
-might be in order.
-.RE
-.sp
-.LP
-For the last two, note the difference, as the latter has the \fB":sendmail"\fR
-instance specification, whereas the former does not, thus representing the more
-general service.
-.SS "Enabling Access to Remote Clients"
-.LP
-On an unmodified system, access to \fBsendmail\fR by remote clients is enabled
-and disabled through the service management facility (see \fBsmf\fR(5)). In
-particular, remote access is determined by the value of the \fBlocal_only\fR
-SMF property:
-.sp
-.in +2
-.nf
-svc:/network/smtp:sendmail/config/local_only = true
-.fi
-.in -2
-
-.sp
-.LP
-A setting of \fBtrue\fR, as above, disallows remote access; \fBfalse\fR allows
-remote access. The default value is \fBtrue\fR.
-.sp
-.LP
-The following example shows the sequence of SMF commands used to enable
-\fBsendmail\fR to allow access to remote systems:
-.sp
-.in +2
-.nf
-# \fBsvccfg -s svc:/network/smtp:sendmail setprop config/local_only = false\fR
-# \fBsvcadm refresh svc:/network/smtp:sendmail\fR
-# \fBsvcadm restart svc:/network/smtp:sendmail\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-See \fBsvcadm\fR(1M) and \fBsvccfg\fR(1M).
-.sp
-.LP
-Note, however, on a system where any of the \fBsendmail\fR(4) files have been
-customized, setting this property might not have the intended effect. See
-\fBsendmail\fR(4) for details.
-.SS "Automated Rebuilding of Configuration Files"
-.LP
-See \fBsendmail\fR(4) for details on which service properties can be set to
-automate (re)building of configuration files when the service is started.
-.SS "Restricting Host Access"
-.LP
-\fBsendmail\fR uses TCP Wrappers to restrict access to hosts. It uses the
-service name of \fBsendmail\fR for \fBhosts_access()\fR. For more information
-on TCP Wrappers, see \fBtcpd\fR(1M) and \fBhosts_access\fR(4).
-.SS "Startup Options"
-.LP
-The \fB/etc/default/sendmail\fR file stores startup options for \fBsendmail\fR
-so that the options are not removed when a host is upgraded. See also
-\fBsendmail\fR(4) for details on which service properties can be set to
-automate (re)building of configuration files when the service is started.
-.sp
-.LP
-You can use the following variables in the \fB/etc/default/sendmail\fR startup
-file:
-.sp
-.ne 2
-.na
-\fBCLIENTOPTIONS=\fIstring\fR\fR
-.ad
-.sp .6
-.RS 4n
-Selects additional options to be used with the client daemon, which looks in
-the client-only queue (\fB/var/spool/clientmqueue\fR) and acts as a client
-queue runner. No syntax checking is done, so be careful when making changes to
-this variable.
-.RE
-
-.sp
-.ne 2
-.na
-\fBCLIENTQUEUEINTERVAL=\fI#\fR\fR
-.ad
-.sp .6
-.RS 4n
-Similar to the \fBQUEUEINTERVAL\fR option, \fBCLIENTQUEUEINTERVAL\fR sets the
-time interval for mail queue runs. However, the \fBCLIENTQUEUEINTERVAL\fR
-option controls the functions of the client daemon, instead of the functions of
-the master daemon. Typically, the master daemon is able to deliver all messages
-to the SMTP port. However, if the message load is too high or the master daemon
-is not running, then messages go into the client-only queue,
-\fB/var/spool/clientmqueue\fR. The client daemon, which checks in the
-client-only queue, then acts as a client queue processor.
-.RE
-
-.sp
-.ne 2
-.na
-\fBETRN_HOSTS=\fIstring\fR\fR
-.ad
-.sp .6
-.RS 4n
-Enables an SMTP client and server to interact immediately without waiting for
-the queue run intervals, which are periodic. The server can immediately deliver
-the portion of its queue that goes to the specified hosts. For more
-information, refer to the \fBetrn\fR(1M) man page.
-.RE
-
-.sp
-.ne 2
-.na
-\fBMODE=-bd\fR
-.ad
-.sp .6
-.RS 4n
-Selects the mode to start \fBsendmail\fR with. Use the \fB-bd\fR option or
-leave it undefined.
-.RE
-
-.sp
-.ne 2
-.na
-\fBOPTIONS=\fIstring\fR\fR
-.ad
-.sp .6
-.RS 4n
-Selects additional options to be used with the master daemon. No syntax
-checking is done, so be careful when making changes to this variable.
-.RE
-
-.sp
-.ne 2
-.na
-\fBQUEUEINTERVAL=\fI#\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets the interval for mail queue runs on the master daemon. \fI#\fR can be a
-positive integer that is followed by either \fBs\fR for seconds, \fBm\fR for
-minutes, \fBh\fR for hours, \fBd\fR for days, or \fBw\fR for weeks. The syntax
-is checked before \fBsendmail\fR is started. If the interval is negative or if
-the entry does not end with an appropriate letter, the interval is ignored and
-\fBsendmail\fR starts with a queue interval of 15 minutes.
-.RE
-
-.sp
-.ne 2
-.na
-\fBQUEUEOPTIONS=p\fR
-.ad
-.sp .6
-.RS 4n
-Enables one persistent queue runner that sleeps between queue run intervals,
-instead of a new queue runner for each queue run interval. You can set this
-option to \fBp\fR, which is the only setting available. Otherwise, this option
-is not set.
-.RE
-
-.SS "Mail Filter API"
-.LP
-\fBsendmail\fR supports a mail filter API called "milter". For more
-information, see \fB/usr/include/libmilter/README\fR and http://www.milter.org
-.SH OPTIONS
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-Ac\fR\fR
-.ad
-.sp .6
-.RS 4n
-Uses \fBsubmit.cf\fR even if the operation mode does not indicate an initial
-mail submission.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-Am\fR\fR
-.ad
-.sp .6
-.RS 4n
-Uses \fBsendmail.cf\fR even if the operation mode indicates an initial mail
-submission.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-ba\fR\fR
-.ad
-.sp .6
-.RS 4n
-Goes into \fBARPANET\fR mode. All input lines must end with a RETURN-LINEFEED,
-and all messages are generated with a RETURN-LINEFEED at the end. Also, the
-\fBFrom:\fR and \fBSender:\fR fields are examined for the name of the sender.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-bd\fR\fR
-.ad
-.sp .6
-.RS 4n
-Runs as a daemon in the background, waiting for incoming SMTP connections.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-bD\fR\fR
-.ad
-.sp .6
-.RS 4n
-Runs as a daemon in the foreground, waiting for incoming SMTP connections.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-bi\fR\fR
-.ad
-.sp .6
-.RS 4n
-Initializes the \fBaliases\fR(4) database. Root must own \fIand\fR have
-exclusive write permission to the \fB/etc/mail/aliases*\fR files for successful
-use of this option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-bl\fR\fR
-.ad
-.sp .6
-.RS 4n
-Runs as a daemon (like \fB-bd\fR) but accepts only loopback SMTP connections.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-bm\fR\fR
-.ad
-.sp .6
-.RS 4n
-Delivers mail in the usual way (default).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-bp\fR\fR
-.ad
-.sp .6
-.RS 4n
-Prints a summary of the mail queues.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-bP\fR\fR
-.ad
-.sp .6
-.RS 4n
-Prints the number of entries in the queues. This option is only available with
-shared memory support.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-bs\fR\fR
-.ad
-.sp .6
-.RS 4n
-Uses the SMTP protocol as described in RFC 2821. This flag implies all the
-operations of the \fB-ba\fR flag that are compatible with \fBSMTP\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-bt\fR\fR
-.ad
-.sp .6
-.RS 4n
-Runs in address test mode. This mode reads addresses and shows the steps in
-parsing; it is used for debugging configuration tables.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-bv\fR\fR
-.ad
-.sp .6
-.RS 4n
-Verifies names only. Does not try to collect or deliver a message. Verify mode
-is normally used for validating users or mailing lists.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-B\fR \fItype\fR\fR
-.ad
-.sp .6
-.RS 4n
-Indicates body \fItype\fR (\fB7BIT\fR or \fB8BITMIME\fR).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-C\fR \fIfile\fR\fR
-.ad
-.sp .6
-.RS 4n
-Uses alternate configuration file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-D\fR \fIlogfile\fR\fR
-.ad
-.sp .6
-.RS 4n
-Send debugging output to the indicated log file instead of \fBstdout\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-d\fR \fIX\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets debugging value to \fIX\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR \fIname\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets the name of the "from" person (that is, the sender of the mail).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-F\fR \fIfullname\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets the full name of the sender.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-G\fR\fR
-.ad
-.sp .6
-.RS 4n
-When accepting messages by way of the command line, indicates that they are for
-relay (gateway) submission. When this flag is set, \fBsendmail\fR might
-complain about syntactically invalid messages, for example, unqualified host
-names, rather than fixing them. \fBsendmail\fR does not do any canonicalization
-in this mode.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-h\fR \fIN\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets the hop count to \fIN\fR. The hop count is incremented every time the mail
-is processed. When it reaches a limit, the mail is returned with an error
-message, the victim of an aliasing loop.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-L\fR \fItag\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets the identifier used in \fBsyslog\fR messages to the supplied \fItag\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-M\fR\fIxvalue\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets macro \fIx\fR to the specified \fIvalue\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR\fR
-.ad
-.sp .6
-.RS 4n
-Does not do aliasing.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-N\fR \fInotifications\fR\fR
-.ad
-.sp .6
-.RS 4n
-Tags all addresses being sent as wanting the indicated \fInotifications\fR,
-which consists of the word "NEVER" or a comma-separated list of "SUCCESS",
-"FAILURE", and "DELAY" for successful delivery, failure and a message that is
-stuck in a queue somewhere. The default is "FAILURE,DELAY".
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-o\fR\fIxvalue\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets option \fIx\fR to the specified \fIvalue\fR. \fBProcessing\fR
-\fBOptions\fR are described below.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-O\fR\fIoption=value\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets \fIoption\fR to the specified \fIvalue\fR (for long from names).
-\fBProcessing\fR \fBOptions\fR are described below.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR \fIprotocol\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets the sending protocol. The \fIprotocol\fR field can be in form
-\fIprotocol\fR\fB:\fR\fIhost\fR to set both the sending protocol and the
-sending host. For example: \fB-pUUCP:uunet\fR sets the sending \fIprotocol\fR
-to \fBUUCP\fR and the sending host to \fBuunet\fR. Some existing programs use
-\fB-oM\fR to set the \fIr\fR and \fIs\fR macros; this is equivalent to using
-\fB-p\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-q\fR[\fItime\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Processes saved messages in the queue at given intervals. If \fItime\fR is
-omitted, processes the queue once. \fItime\fR is given as a tagged number,
-where \fIs\fR is seconds, \fIm\fR is minutes, \fIh\fR is hours, \fId\fR is
-days, and \fIw\fR is weeks. For example, \fB-q1h30m\fR or \fB-q90m\fR would
-both set the timeout to one hour thirty minutes.
-.sp
-By default, sendmail runs in the background. This option can be used safely
-with \fB-bd\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-qp[\fR\fItime\fR\fB-]\fR\fR
-.ad
-.sp .6
-.RS 4n
-Similar to \fB-q\fR[\fItime\fR], except that instead of periodically forking a
-child to process the queue, \fBsendmail\fR forks a single persistent child for
-each queue that alternates between processing the queue and sleeping. The sleep
-time (\fItime\fR) is specified as the argument; it defaults to \fB1\fR second.
-The process always sleeps at least \fB5\fR seconds if the queue was empty in
-the previous queue run.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-qf\fR\fR
-.ad
-.sp .6
-.RS 4n
-Processes saved messages in the queue once and does not \fBfork\fR(2), but runs
-in the foreground.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-qG\fR \fIname\fR\fR
-.ad
-.sp .6
-.RS 4n
-Processes jobs in queue group called \fIname\fR only.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-q[!]I\fR \fIsubstr\fR\fR
-.ad
-.sp .6
-.RS 4n
-Limits processed jobs to those containing \fIsubstr\fR as a substring of the
-queue \fBID\fR or not when \fB!\fR is specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-q[!]Q\fR \fIsubstr\fR\fR
-.ad
-.sp .6
-.RS 4n
-Limits processed jobs to those quarantined jobs containing \fIsubstr\fR as a
-substring of the quarantine \fIreason\fR or not when \fB!\fR is specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-q[!]R\fR \fIsubstr\fR\fR
-.ad
-.sp .6
-.RS 4n
-Limits processed jobs to those containing \fIsubstr\fR as a substring of one of
-the recipients or not when \fB!\fR is specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-q[!]S\fR \fIsubstr\fR\fR
-.ad
-.sp .6
-.RS 4n
-Limits processed jobs to those containing \fIsubstr\fR as a substring of the
-sender or not when \fB!\fR is specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-Q\fR[\fIreason\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Quarantines a normal queue item with the given reason or unquarantines a
-quarantined queue item if no reason is given. This should only be used with
-some sort of item matching as described above.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-r\fR \fIname\fR\fR
-.ad
-.sp .6
-.RS 4n
-An alternate and obsolete form of the \fB-f\fR flag.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-R\fR \fIret\fR\fR
-.ad
-.sp .6
-.RS 4n
-Identifies the information you want returned if the message bounces. \fIret\fR
-can be \fBHDRS\fR for headers only or \fBFULL\fR for headers plus body.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-t\fR\fR
-.ad
-.sp .6
-.RS 4n
-Reads message for recipients. \fBTo:\fR,\fBCc:\fR, and \fBBcc:\fR lines are
-scanned for people to send to. The \fBBcc:\fR line is deleted before
-transmission. Any addresses in the argument list is suppressed. The
-\fBNoRecipientAction\fR Processing Option can be used to change the behavior
-when no legal recipients are included in the message.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.sp .6
-.RS 4n
-Goes into verbose mode. Alias expansions are announced, and so forth.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-V\fR \fIenvid\fR\fR
-.ad
-.sp .6
-.RS 4n
-The indicated \fIenvid\fR is passed with the envelope of the message and
-returned if the message bounces.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-X\fR \fIlogfile\fR\fR
-.ad
-.sp .6
-.RS 4n
-Logs all traffic in and out of \fBsendmail\fR in the indicated \fIlogfile\fR
-for debugging mailer problems. This produces a lot of data very quickly and
-should be used sparingly.
-.RE
-
-.SS "Processing Options"
-.LP
-There are a number of "random" options that can be set from a configuration
-file. Options are represented by a single character or by multiple character
-names. The syntax for the single character names of is:
-.sp
-.in +2
-.nf
-\fBO\fR\fIxvalue\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-This sets option \fIx\fR to be \fIvalue\fR. Depending on the option,
-\fIvalue\fR may be a string, an integer, a boolean (with legal values \fBt\fR,
-\fBT\fR, \fBf\fR, or \fBF\fR; the default is \fBTRUE\fR), or a time interval.
-.sp
-.LP
-The multiple character or long names use this syntax:
-.sp
-.in +2
-.nf
-\fBO\fR \fILongname=argument\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-This sets the option \fILongname\fR to be \fIargument\fR. The long names are
-beneficial because they are easier to interpret than the single character
-names.
-.sp
-.LP
-Not all processing options have single character names associated with them. In
-the list below, the multiple character name is presented first followed by the
-single character syntax enclosed in parentheses.
-.sp
-.ne 2
-.na
-\fB\fBAliasFile (A\fR\fIfile\fR\fB)\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies possible alias files.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBAliasWait (a\fR \fIN\fR\fB)\fR\fR
-.ad
-.sp .6
-.RS 4n
-If set, waits up to \fIN\fR minutes for an "@:@" entry to exist in the
-\fBaliases\fR(4) database before starting up. If it does not appear in \fIN\fR
-minutes, issues a warning. Defaults to 10 minutes.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBAllowBogusHELO\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allows a \fBHELO SMTP\fR command that does not include a host name. By default
-this option is disabled.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBBadRcptThrottle=\fR\fIN\fR\fR
-.ad
-.sp .6
-.RS 4n
-If set and more than the specified number of recipients in a single \fBSMTP\fR
-envelope are rejected, sleeps for one second after each rejected RCPT command.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBBlankSub (B\fR\fIc\fR\fB)\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets the blank substitution character to \fIc\fR. Unquoted spaces in addresses
-are replaced by this character. Defaults to SPACE (that is, no change is made).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBCACertFile\fR\fR
-.ad
-.sp .6
-.RS 4n
-File containing one CA cert.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBCACertPath\fR\fR
-.ad
-.sp .6
-.RS 4n
-Path to directory with certs of CAs.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBCheckAliases (n)\fR\fR
-.ad
-.sp .6
-.RS 4n
-Validates the RHS of aliases when rebuilding the \fBaliases\fR(4) database.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBCheckpointInterval (C\fR\fIN\fR\fB)\fR\fR
-.ad
-.sp .6
-.RS 4n
-Checkpoints the queue every \fIN\fR (default \fB10\fR) addresses sent. If your
-system crashes during delivery to a large list, this prevents retransmission to
-any but the last \fIN\fR recipients.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBClassFactor (z\fR\fIfact\fR\fB)\fR\fR
-.ad
-.sp .6
-.RS 4n
-The indicated factor \fIfact\fR is multiplied by the message class (determined
-by the \fBPrecedence:\fR field in the user header and the \fBP\fR lines in the
-configuration file) and subtracted from the priority. Thus, messages with a
-higher \fBPriority:\fR are favored. Defaults to \fB1800\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBClientCertFile\fR\fR
-.ad
-.sp .6
-.RS 4n
-File containing the cert of the client, that is, this cert is used when
-\fBsendmail\fR acts as client.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBClientKeyFile\fR\fR
-.ad
-.sp .6
-.RS 4n
-File containing the private key belonging to the client cert.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBClientPortOptions\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets client \fBSMTP\fR options. The options are key=value pairs. Known keys
-are:
-.sp
-.ne 2
-.na
-\fB\fBAddr\fR \fIAddress Mask\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fIAddress Mask\fR defaults to \fBINADDR_ANY\fR. The address mask can be a
-numeric address in dot notation or a network name.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBFamily\fR\fR
-.ad
-.sp .6
-.RS 4n
-Address family (defaults to INET).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBListen\fR\fR
-.ad
-.sp .6
-.RS 4n
-Size of listen queue (defaults to 10).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPort\fR\fR
-.ad
-.sp .6
-.RS 4n
-Name/number of listening port (defaults to \fBsmtp\fR).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBRcvBufSize\fR\fR
-.ad
-.sp .6
-.RS 4n
-The size of the TCP/IP receive buffer.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSndBufSize\fR\fR
-.ad
-.sp .6
-.RS 4n
-The size of the TCP/IP send buffer.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBModifier\fR\fR
-.ad
-.sp .6
-.RS 4n
-Options (flags) for the daemon. Can be:
-.sp
-.ne 2
-.na
-\fB\fBh\fR\fR
-.ad
-.sp .6
-.RS 4n
-Uses name of interface for \fBHELO\fR command.
-.RE
-
-If \fBh\fR is set, the name corresponding to the outgoing interface address
-(whether chosen by means of the \fBConnection\fR parameter or the default) is
-used for the \fBHELO\fR/\fBEHLO\fR command.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBColonOkInAddr\fR\fR
-.ad
-.sp .6
-.RS 4n
-If set, colons are treated as a regular character in addresses. If not set,
-they are treated as the introducer to the RFC 822 "group" syntax. This option
-is on for version 5 and lower configuration files.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBConnectionCacheSize (k\fR\fIN\fR\fB)\fR\fR
-.ad
-.sp .6
-.RS 4n
-The maximum number of open connections that are to be cached at a time. The
-default is \fB1\fR. This delays closing the current connection until either
-this invocation of \fBsendmail\fR needs to connect to another host or it
-terminates. Setting it to \fB0\fR defaults to the old behavior, that is,
-connections are closed immediately.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBConnectionCacheTimeout (K\fR\fItimeout\fR\fB)\fR\fR
-.ad
-.sp .6
-.RS 4n
-The maximum amount of time a cached connection is permitted to idle without
-activity. If this time is exceeded, the connection is immediately closed. This
-value should be small (on the order of ten minutes). Before \fBsendmail\fR uses
-a cached connection, it always sends a \fBNOOP\fR (no operation) command to
-check the connection. If the \fBNOOP\fR command fails, it reopens the
-connection. This keeps your end from failing if the other end times out. The
-point of this option is to be a good network neighbor and avoid using up
-excessive resources on the other end. The default is five minutes.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBConnectionRateThrottle\fR\fR
-.ad
-.sp .6
-.RS 4n
-The maximum number of connections permitted per second. After this many
-connections are accepted, further connections are delayed. If not set or <= 0,
-there is no limit.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBConnectionRateWindowSize\fR\fR
-.ad
-.sp .6
-.RS 4n
-Define the length of the interval for which the number of incoming connections
-is maintained. The default is 60 seconds.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBControlSocketName\fR\fR
-.ad
-.sp .6
-.RS 4n
-Name of the control socket for daemon management. A running \fBsendmail\fR
-daemon can be controlled through this Unix domain socket. Available commands
-are: \fBhelp\fR, \fBrestart\fR, \fBshutdown\fR, and \fBstatus\fR. The
-\fBstatus\fR command returns the current number of daemon children, the free
-disk space (in blocks) of the queue directory, and the load average of the
-machine expressed as an integer. If not set, no control socket is available.
-For the sake of security, this Unix domain socket must be in a directory which
-is accessible only by root; \fB/var/spool/mqueue/.smcontrol\fR is recommended
-for the socket name.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBCRLFile\fR\fR
-.ad
-.sp .6
-.RS 4n
-File containing certificate revocation status, useful for X.509v3
-authentication.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBDaemonPortOptions (O\fR\fIoptions\fR\fB)\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets server SMTP options. The options are \fIkey=value\fR pairs. Known keys
-are:
-.sp
-.ne 2
-.na
-\fB\fBName\fR\fR
-.ad
-.sp .6
-.RS 4n
-User-definable name for the daemon (defaults to "\fBDaemon#\fR"). Used for
-error messages and logging.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBAddr\fR\fR
-.ad
-.sp .6
-.RS 4n
-Address mask (defaults \fBINADDR_ANY)\fR.
-.sp
-The address mask may be a numeric address in dot notation or a network name.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBFamily\fR\fR
-.ad
-.sp .6
-.RS 4n
-Address family (defaults to \fBINET).\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBInputMailFilters\fR\fR
-.ad
-.sp .6
-.RS 4n
-List of input mail filters for the daemon.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBListen\fR\fR
-.ad
-.sp .6
-.RS 4n
-Size of listen queue (defaults to \fB10\fR).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBModifier\fR\fR
-.ad
-.sp .6
-.RS 4n
-Options (flags) for the daemon; can be a sequence (without any delimiters) of:
-.sp
-.ne 2
-.na
-\fB\fBa\fR\fR
-.ad
-.sp .6
-.RS 4n
-Requires authentication.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBb\fR\fR
-.ad
-.sp .6
-.RS 4n
-Binds to interface through which mail has been received.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBc\fR\fR
-.ad
-.sp .6
-.RS 4n
-Performs hostname canonification (\fB\&.cf\fR).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBf\fR\fR
-.ad
-.sp .6
-.RS 4n
-Requires fully qualified hostname (\fB\&.cf\fR).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBh\fR\fR
-.ad
-.sp .6
-.RS 4n
-Uses name of interface for \fBHELO\fR command.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBu\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allows unqualified addresses (\fB\&.cf\fR).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBC\fR\fR
-.ad
-.sp .6
-.RS 4n
-Does not perform hostname canonification.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBE\fR\fR
-.ad
-.sp .6
-.RS 4n
-Disallows \fBETRN\fR (see \fBRFC\fR 2476).
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBName\fR\fR
-.ad
-.sp .6
-.RS 4n
-User-definable name for the daemon (defaults to \fBDaemon#\fR). Used for error
-messages and logging.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPort\fR\fR
-.ad
-.sp .6
-.RS 4n
-Name/number of listening port (defaults to \fBsmtp\fR).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBReceiveSize\fR\fR
-.ad
-.sp .6
-.RS 4n
-The size of the TCP/IP receive buffer.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSendSize\fR\fR
-.ad
-.sp .6
-.RS 4n
-The size of the TCP/IP send buffer.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBchildren\fR\fR
-.ad
-.sp .6
-.RS 4n
-Maximum number of children per daemon. See \fBMaxDaemonChildren\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBDeliveryMode\fR\fR
-.ad
-.sp .6
-.RS 4n
-Delivery mode per daemon. See \fBDeliveryMode\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrefuseLA\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBRefuseLA\fR per daemon.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdelayLA\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBDelayLA\fR per daemon.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBqueueLA\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBQueueLA\fR per daemon.
-.RE
-
-\fBsendmail\fR listens on a new socket for each occurrence of the
-\fBDaemonPortOptions\fR option in a configuration file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBDataFileBufferSize\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets the threshold, in bytes, before a memory-bases queue data file becomes
-disk-based. The default is 4096 bytes.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBDeadLetterDrop\fR\fR
-.ad
-.sp .6
-.RS 4n
-Defines the location of the system-wide dead.letter file, formerly hard-coded
-to \fB/var/tmp/dead.letter\fR. If this option is not set (the default),
-\fBsendmail\fR does not attempt to save to a system-wide \fBdead.letter\fR file
-in the event it cannot bounce the mail to the user or postmaster. Instead, it
-renames the \fBqf\fR file as it has in the past when the \fBdead.letter\fR file
-could not be opened.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBDefaultCharSet\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets the default character set to use when converting unlabeled 8 bit input to
-MIME.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBDefaultUser (g\fR\fIgid\fR\fB) or (u\fR\fIuid\fR\fB)\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets the default group ID for mailers to run in to \fIgid\fR or set the default
-userid for mailers to \fIuid\fR. Defaults to \fB1\fR. The value can also be
-given as a symbolic group or user name.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBDelayLA=\fR\fILA\fR\fR
-.ad
-.sp .6
-.RS 4n
-When the system load average exceeds \fILA\fR, \fBsendmail\fR sleeps for one
-second on most SMTP commands and before accepting connections.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBDeliverByMin=\fR\fItime\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets minimum time for \fBDeliver By SMTP Service Extension\fR (RFC 2852). If
-\fB0\fR, no time is listed, if less than \fB0\fR, the extension is not offered,
-if greater than \fB0\fR, it is listed as minimum time for the \fBEHLO\fR
-keyword \fBDELIVERBY\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBDeliveryMode (d\fR\fIx\fR\fB)\fR\fR
-.ad
-.sp .6
-.RS 4n
-Delivers in mode \fIx\fR. Legal modes are:
-.sp
-.ne 2
-.na
-\fB\fBi\fR\fR
-.ad
-.sp .6
-.RS 4n
-Delivers interactively (synchronously).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBb\fR\fR
-.ad
-.sp .6
-.RS 4n
-Delivers in background (asynchronously).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBd\fR\fR
-.ad
-.sp .6
-.RS 4n
-Deferred mode. Database lookups are deferred until the actual queue run.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBq\fR\fR
-.ad
-.sp .6
-.RS 4n
-Just queues the message (delivers during queue run).
-.RE
-
-Defaults to \fBb\fR if no option is specified, \fBi\fR if it is specified but
-given no argument (that is, \fBOd\fR is equivalent to \fBOdi\fR).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBDHParameters\fR\fR
-.ad
-.sp .6
-.RS 4n
-File containing the DH parameters.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBDialDelay\fR\fR
-.ad
-.sp .6
-.RS 4n
-If a connection fails, waits this many seconds and tries again. Zero means "do
-not retry".
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBDontBlameSendmail\fR\fR
-.ad
-.sp .6
-.RS 4n
-If set, overrides the file safety checks. This compromises system security and
-should not be used. See http://www.sendmail.org/tips/DontBlameSendmail.html for
-more information.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBDontExpandCnames\fR\fR
-.ad
-.sp .6
-.RS 4n
-If set, $[ ... $] lookups that do DNS-based lookups do not expand CNAME
-records.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBDontInitGroups\fR\fR
-.ad
-.sp .6
-.RS 4n
-If set, the \fBinitgroups\fR(3C) routine is never invoked. If you set this,
-agents run on behalf of users only have their primary (\fB/etc/passwd\fR) group
-permissions.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBDontProbeInterfaces\fR\fR
-.ad
-.sp .6
-.RS 4n
-If set, \fBsendmail\fR does not insert the names and addresses of any local
-interfaces into the \fB$=w class\fR. If set, you must also include support for
-these addresses, otherwise mail to addresses in this list bounces with a
-configuration error.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBDontPruneRoutes (R)\fR\fR
-.ad
-.sp .6
-.RS 4n
-If set, does not prune route-addr syntax addresses to the minimum possible.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBDoubleBounceAddress\fR\fR
-.ad
-.sp .6
-.RS 4n
-If an error occurs when sending an error message, sends that "double bounce"
-error message to this address.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEightBitMode (8)\fR\fR
-.ad
-.sp .6
-.RS 4n
-Uses 8-bit data handling. This option requires one of the following keys. The
-key can selected by using just the first character, but using the full word is
-better for clarity.
-.sp
-.ne 2
-.na
-\fB\fBmimify\fR\fR
-.ad
-.sp .6
-.RS 4n
-Does any necessary conversion of \fB8BITMIME\fR to 7-bit.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpass\fR\fR
-.ad
-.sp .6
-.RS 4n
-Passes unlabeled 8-bit input through as is.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBstrict\fR\fR
-.ad
-.sp .6
-.RS 4n
-Rejects unlabeled 8-bit input.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBErrorHeader (E\fR\fIfile/message\fR\fB)\fR\fR
-.ad
-.sp .6
-.RS 4n
-Appends error messages with the indicated message. If it begins with a slash,
-it is assumed to be the pathname of a file containing a message (this is the
-recommended setting). Otherwise, it is a literal message. The error file might
-contain the name, email address, and/or phone number of a local postmaster who
-could provide assistance to end users. If the option is missing or \fINULL\fR,
-or if it names a file which does not exist or which is not readable, no message
-is printed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBErrorMode (e\fR\fIx\fR\fB)\fR\fR
-.ad
-.sp .6
-.RS 4n
-Disposes of errors using mode \fIx\fR. The values for \fIx\fR are:
-.sp
-.ne 2
-.na
-\fB\fBe\fR\fR
-.ad
-.sp .6
-.RS 4n
-Mails back errors and gives \fB0\fR exit status always.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBm\fR\fR
-.ad
-.sp .6
-.RS 4n
-Mails back errors.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBp\fR\fR
-.ad
-.sp .6
-.RS 4n
-Prints error messages (default).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBq\fR\fR
-.ad
-.sp .6
-.RS 4n
-No messages, just gives exit status.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBw\fR\fR
-.ad
-.sp .6
-.RS 4n
-Writes back errors (mail if user not logged in).
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBFallbackMXhost (V\fR\fIfallbackhost\fR\fB)\fR\fR
-.ad
-.sp .6
-.RS 4n
-If specified, the \fIfallbackhost\fR acts like a very low priority MX on every
-host. This is intended to be used by sites with poor network connectivity.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBFallBackSmartHost\fR\fR
-.ad
-.sp .6
-.RS 4n
-If specified, the \fIfallBackSmartHost\fR is used in a last-ditch effort for
-each host. This is intended to be used by sites with "fake internal DNS". That
-is, a company whose DNS accurately reflects the world inside that company's
-domain but not outside.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBFastSplit\fR\fR
-.ad
-.sp .6
-.RS 4n
-If set to a value greater than zero (the default is one), it suppresses the MX
-lookups on addresses when they are initially sorted, that is, for the first
-delivery attempt. This usually results in faster envelope splitting unless the
-MX records are readily available in a local DNS cache. To enforce initial
-sorting based on MX records set \fBFastSplit\fR to zero. If the mail is
-submitted directly from the command line, then the value also limits the number
-of processes to deliver the envelopes; if more envelopes are created they are
-only queued up and must be taken care of by a queue run. Since the default
-submission method is by way of SMTP (either from a MUA or by way of the Message
-Submission Program [MSP]), the value of \fBFastSplit\fR is seldom used to limit
-the number of processes to deliver the envelopes.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBForkEachJob (Y)\fR\fR
-.ad
-.sp .6
-.RS 4n
-If set, delivers each job that is run from the queue in a separate process. Use
-this option if you are short of memory, since the default tends to consume
-considerable amounts of memory while the queue is being processed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBForwardPath (J\fR\fIpath\fR\fB)\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets the path for searching for users' \fB\&.forward\fR files. The default is
-\fB$z/.forward\fR. Some sites that use the automounter may prefer to change
-this to \fB/var/forward/$u\fR to search a file with the same name as the user
-in a system directory. It can also be set to a sequence of paths separated by
-colons; \fBsendmail\fR stops at the first file it can successfully and safely
-open. For example, \fB/var/forward/$u:$z/.forward\fR searches first in
-\fB/var/forward/\fR \fIusername\fR and then in
-\fB~\fR\fIusername\fR\fB/.forward\fR (but only if the first file does not
-exist). Refer to the NOTES section for more information.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBHeloName=\fIname\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets the name to be used for \fBHELO\fR/\fBEHLO\fR (instead of \fB$j\fR).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBHelpFile (H\fR\fIfile\fR\fB)\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the help file for SMTP.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBHoldExpensive (c)\fR\fR
-.ad
-.sp .6
-.RS 4n
-If an outgoing mailer is marked as being expensive, does not connect
-immediately.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBHostsFile\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets the file to use when doing "file" type access of host names.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBHostStatusDirectory\fR\fR
-.ad
-.sp .6
-.RS 4n
-If set, host status is kept on disk between \fBsendmail\fR runs in the named
-directory tree. If a full path is not used, then the path is interpreted
-relative to the queue directory.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBIgnoreDots (i)\fR\fR
-.ad
-.sp .6
-.RS 4n
-Ignores dots in incoming messages. This is always disabled (that is, dots are
-always accepted) when reading \fBSMTP\fR mail.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBLogLevel (L\fR\fIn\fR\fB)\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets the default log level to \fIn\fR. Defaults to \fB9\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB(M\fR\fIx\|value\fR\fB)\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets the macro \fIx\fR to \fIvalue\fR. This is intended only for use from the
-command line.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBMailboxDatabase\fR\fR
-.ad
-.sp .6
-.RS 4n
-Type of lookup to find information about local mail boxes, defaults to \fBpw\fR
-which uses \fBgetpwnam\fR(3C). Other types can be introduced by adding them to
-the source code, see \fBlibsm/mbdb.c\fR for details.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBMatchGECOS (G)\fR\fR
-.ad
-.sp .6
-.RS 4n
-Tries to match recipient names using the GECOS field. This allows for mail to
-be delivered using names defined in the GECOS field in \fB/etc/passwd\fR as
-well as the login name.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBMaxDaemonChildren\fR\fR
-.ad
-.sp .6
-.RS 4n
-The maximum number of children the daemon permits. After this number,
-connections are rejected. If not set or <=0, there is no limit.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBMaxHopCount (h\fR\fIN\fR\fB)\fR\fR
-.ad
-.sp .6
-.RS 4n
-The maximum hop count. Messages that have been processed more than \fIN\fR
-times are assumed to be in a loop and are rejected. Defaults to \fB25\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBMaxMessageSize\fR\fR
-.ad
-.sp .6
-.RS 4n
-The maximum size of messages that are accepted (in bytes).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBMaxMimeHeaderLength=\fR\fIM\fR\fB[/\fR\fIN\fR\fB]\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets the maximum length of certain MIME header field values to \fIM\fR
-characters. For some of these headers which take parameters, the maximum length
-of each parameter is set to \fIN\fR if specified. If \fB/\fR\fIN\fR is not
-specified, one half of \fIM\fR is used. By default, these values are \fB0\fR,
-meaning no checks are done.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBMaxNOOPCommands=\fR\fIN\fR\fR
-.ad
-.sp .6
-.RS 4n
-Overrides the default of 20 for the number of useless commands.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBMaxQueueChildren=\fR\fIN\fR\fR
-.ad
-.sp .6
-.RS 4n
-When set, this limits the number of concurrent queue runner processes to
-\fIN\fR. This helps to control the amount of system resources used when
-processing the queue. When there are multiple queue groups defined and the
-total number of queue runners for these queue groups would exceed
-\fBMaxQueueChildren\fR then the queue groups are not all run concurrently. That
-is, some portion of the queue groups run concurrently such that
-\fBMaxQueueChildren\fR is not be exceeded, while the remaining queue groups are
-run later (in round robin order). See \fBMaxRunnersPerQueue\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBMaxQueueRunSize\fR\fR
-.ad
-.sp .6
-.RS 4n
-If set, limits the maximum size of any given queue run to this number of
-entries. This stops reading the queue directory after this number of entries is
-reached; job priority is not used. If not set, there is no limit.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBMaxRunnersPerQueue=\fR\fIN\fR\fR
-.ad
-.sp .6
-.RS 4n
-This sets the default maximum number of queue runners for queue groups. Up to
-\fIN\fR queue runners work in parallel on a queue group's messages. This is
-useful where the processing of a message in the queue might delay the
-processing of subsequent messages. Such a delay can be the result of
-non-erroneous situations such as a low bandwidth connection. The can be
-overridden on a per queue group basis by setting the \fBRunners\fR option. The
-default is \fB1\fR when not set.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBMeToo (M)\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sends to me too, even if I am in an alias expansion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBMaxRecipientsPerMessage\fR\fR
-.ad
-.sp .6
-.RS 4n
-If set, allows no more than the specified number of recipients in an SMTP
-envelope. Further recipients receive a 452 error code and are deferred for the
-next delivery attempt.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBMinFreeBlocks (b\fR\fIN/M\fR\fB)\fR\fR
-.ad
-.sp .6
-.RS 4n
-Insists on at least \fIN\fR blocks free on the file system that holds the queue
-files before accepting email by way of SMTP. If there is insufficient space,
-\fBsendmail\fR gives a \fB452\fR response to the \fBMAIL\fR command. This
-invites the sender to try again later. The optional \fIM\fR is a maximum
-message size advertised in the \fBESMTP\fR \fBEHLO\fR response. It is currently
-otherwise unused.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBMinQueueAge\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the amount of time a job must sit in the queue between queue runs.
-This allows you to set the queue run interval low for better responsiveness
-without trying all jobs in each run. The default value is 0.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBMustQuoteChars\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the characters to be quoted in a full name phrase. \fB&,;:\e()[]\fR
-are quoted automatically.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBNiceQueueRun\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the priority of queue runners. See \fBnice\fR(1).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBNoRecipientAction\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets action if there are no legal recipient files in the message. The legal
-values are:
-.sp
-.ne 2
-.na
-\fB\fBadd-apparently-to\fR\fR
-.ad
-.sp .6
-.RS 4n
-Adds an \fBApparently-to:\fR header with all the known recipients (which may
-expose blind recipients).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBadd-bcc\fR\fR
-.ad
-.sp .6
-.RS 4n
-Adds an empty \fBBcc:\fR header.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBadd-to\fR\fR
-.ad
-.sp .6
-.RS 4n
-Adds a \fBTo:\fR header with all the known recipients (which may expose blind
-recipients).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBadd-to-undisclosed\fR\fR
-.ad
-.sp .6
-.RS 4n
-Adds a \fBTo: undisclosed-recipients:\fR header.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnone\fR\fR
-.ad
-.sp .6
-.RS 4n
-Does nothing, that is, leaves the message as it is.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBOldStyleHeaders (o)\fR\fR
-.ad
-.sp .6
-.RS 4n
-Assumes that the headers may be in old format, that is, spaces delimit names.
-This actually turns on an adaptive algorithm: if any recipient address contains
-a comma, parenthesis, or angle bracket, it is assumed that commas already
-exist. If this flag is not on, only commas delimit names. Headers are always
-output with commas between the names.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBOperatorChars or $o\fR\fR
-.ad
-.sp .6
-.RS 4n
-Defines the list of characters that can be used to separate the components of
-an address into tokens.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPidFile\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the filename of the \fBpid\fR file. The default is
-\fB/var/run/sendmail.pid\fR. The filename is macro-expanded before it is
-opened, and unlinked when \fBsendmail\fR exits.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPostmasterCopy (P\fR\fIpostmaster\fR\fB)\fR\fR
-.ad
-.sp .6
-.RS 4n
-If set, copies of error messages are sent to the named \fIpostmaster\fR. Only
-the header of the failed message is sent. Since most errors are user problems,
-this is probably not a good idea on large sites, and arguably contains all
-sorts of privacy violations, but it seems to be popular with certain operating
-systems vendors.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPrivacyOptions (p\fR\fIopt,opt,...\fR\fB)\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets privacy options. Privacy is really a misnomer; many of these options are
-just a way of insisting on stricter adherence to the SMTP protocol.
-.sp
-The \fBgoaway\fR pseudo-flag sets all flags except \fBnoreceipts\fR,
-\fBrestrictmailq\fR, \fBrestrictqrun\fR, \fBrestrictexpand\fR, \fBnoetrn\fR,
-and \fBnobodyreturn\fR. If \fBmailq\fR is restricted, only people in the same
-group as the queue directory can print the queue. If queue runs are restricted,
-only root and the owner of the queue directory can run the queue. The
-\fBrestrict-expand\fR pseudo-flag instructs sendmail to drop privileges when
-the -bv option is given by users who are neither root nor the \fBTrustedUser\fR
-so users cannot read private aliases, forwards, or \fB:include:\fR files. It
-adds the \fBNonRootSafeAddr\fR to the "DontBlame-Sendmail" option to prevent
-misleading unsafe address warnings. It also overrides the \fB-v\fR (verbose)
-command line option to prevent information leakage. Authentication Warnings add
-warnings about various conditions that may indicate attempts to fool the mail
-system, such as using an non-standard queue directory.
-.sp
-The options can be selected from:
-.sp
-.ne 2
-.na
-\fB\fBauthwarnings\fR\fR
-.ad
-.sp .6
-.RS 4n
-Puts \fBX-Authentication-Warning:\fR headers in messages.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBgoaway\fR\fR
-.ad
-.sp .6
-.RS 4n
-Disallows essentially all SMTP status queries.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBneedexpnhelo\fR\fR
-.ad
-.sp .6
-.RS 4n
-Insists on \fBHELO\fR or \fBEHLO\fR command before \fBEXPN\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBneedmailhelo\fR\fR
-.ad
-.sp .6
-.RS 4n
-Insists on \fBHELO\fR or \fBEHLO\fR command before \fBMAIL\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBneedvrfyhelo\fR\fR
-.ad
-.sp .6
-.RS 4n
-Insists on \fBHELO\fR or \fBEHLO\fR command before \fBVRFY\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnoactualrecipient\fR\fR
-.ad
-.sp .6
-.RS 4n
-Do not put an X-Actual-Recipient line in a DNS that reveals the actual account
-to which an address is mapped.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnoetrn\fR\fR
-.ad
-.sp .6
-.RS 4n
-Disallows \fBETRN\fR entirely.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnoexpn\fR\fR
-.ad
-.sp .6
-.RS 4n
-Disallows \fBEXPN\fR entirely.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnoreceipts\fR\fR
-.ad
-.sp .6
-.RS 4n
-Prevents return receipts.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnobodyreturn\fR\fR
-.ad
-.sp .6
-.RS 4n
-Does not return the body of a message with DSNs.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnovrfy\fR\fR
-.ad
-.sp .6
-.RS 4n
-Disallows \fBVRFY\fR entirely.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpublic\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allows open access.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBre\fR\fB\fR\fBstrictexpand\fR\fR
-.ad
-.sp .6
-.RS 4n
-Restricts \fB-bv\fR and \fB-v\fR command line flags.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrestrictmailq\fR\fR
-.ad
-.sp .6
-.RS 4n
-Restricts \fBmailq\fR command.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrestrictqrun\fR\fR
-.ad
-.sp .6
-.RS 4n
-Restricts \fB-q\fR command line flag.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBProcessTitlePrefix \fIstring\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Prefixes the process title shown on "\fB/usr/ucb/ps auxww\fR" listings with
-\fIstring\fR. The string is macro processed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBQueueDirectory (Q\fR\fIdir\fR\fB)\fR\fR
-.ad
-.sp .6
-.RS 4n
-Uses the named \fIdir\fR as the queue directory.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBQueueFactor (q\fR\fIfactor\fR\fB)\fR\fR
-.ad
-.sp .6
-.RS 4n
-Uses \fIfactor\fR as the multiplier in the map function to decide when to just
-queue up jobs rather than run them. This value is divided by the difference
-between the current load average and the load average limit (\fBx\fR flag) to
-determine the maximum message priority to be sent. Defaults to \fB600000\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBQueueFileMode=\fR\fImode\fR\fR
-.ad
-.sp .6
-.RS 4n
-Defaults permissions for queue files (octal). If not set, \fBsendmail\fR uses
-\fB0600\fR unless its real and effective \fBuid\fR are different in which case
-it uses \fB0644\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBQueueLA (x\fR\fILA\fR\fB)\fR\fR
-.ad
-.sp .6
-.RS 4n
-When the system load average exceeds \fILA\fR, just queues messages (that is,
-does not try to send them). Defaults to eight times the number of processors
-online when \fBsendmail\fR starts.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBQueueSortOrder=\fR\fIalgorithm\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets the algorithm used for sorting the queue. Only the first character of the
-value is used. Legal values are \fBhost\fR (to order by the name of the first
-host name of the first recipient), \fBfilename\fR (to order by the name of the
-queue file name), \fBtime\fR (to order by the submission/creation time),
-\fBrandom\fR (to order randomly), \fBmodification\fR (to order by the
-modification time of the \fBqf\fR file (older entries first)), \fBnone\fR (to
-not order), and \fBpriority\fR (to order by message priority). Host ordering
-makes better use of the connection cache, but may tend to process low priority
-messages that go to a single host over high priority messages that go to
-several hosts; it probably shouldn't be used on slow network links. Filename
-and modification time ordering saves the overhead of reading all of the queued
-items before starting the queue run. Creation (submission) time ordering is
-almost always a bad idea, since it allows large, bulk mail to go out before
-smaller, personal mail, but may have applicability on some hosts with very fast
-connections. Random is useful if several queue runners are started by hand
-which try to drain the same queue since odds are they are working on different
-parts of the queue at the same time. Priority ordering is the default.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBQueueTimeout (T\fR\fIrtime\fR\fB/\fR\fIwtime\fR\fB)\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets the queue timeout to \fIrtime\fR. After this interval, messages that have
-not been successfully sent are returned to the sender. Defaults to five days
-(\fB5d\fR). The optional \fIwtime\fR is the time after which a warning message
-is sent. If it is missing or \fB0\fR, then no warning messages are sent.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBRandFile\fR\fR
-.ad
-.sp .6
-.RS 4n
-File containing random data (use prefix \fBfile:\fR) or the name of the UNIX
-socket if EGD is used (use prefix \fBegd:\fR). Note that Solaris supports
-\fBrandom\fR(7D), so this does not need to be specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBRecipientFactor (y\fR\fIfact\fR\fB)\fR\fR
-.ad
-.sp .6
-.RS 4n
-The indicated factor \fIfact\fR is added to the priority (thus \fIlowering\fR
-the priority of the job) for each recipient, that is, this value penalizes jobs
-with large numbers of recipients. Defaults to \fB30000\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBRefuseLA (X\fR\fILA\fR\fB)\fR\fR
-.ad
-.sp .6
-.RS 4n
-When the system load average exceeds \fILA\fR, refuses incoming \fBSMTP\fR
-connections. Defaults to 12 times the number of processors online when
-\fBsendmail\fR starts.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBRejectLogInterval\fR\fR
-.ad
-.sp .6
-.RS 4n
-Log interval when refusing connections for this long (default: 3h).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBResolverOptions (I)\fR\fR
-.ad
-.sp .6
-.RS 4n
-Tunes DNS lookups.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBRetryFactor (Z\fR\fIfact\fR\fB)\fR\fR
-.ad
-.sp .6
-.RS 4n
-The indicated factor \fIfact\fR is added to the priority every time a job is
-processed. Thus, each time a job is processed, its priority is decreased by the
-indicated value. In most environments this should be positive, since hosts that
-are down are all too often down for a long time. Defaults to \fB90000\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBRrtImpliesDsn\fR\fR
-.ad
-.sp .6
-.RS 4n
-If this option is set, a \fBReturn-Receipt-To\fR: header causes the request of
-a \fBDSN\fR, which is sent to the envelope sender as required by RFC 1891, not
-to the address given in the header.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBRunAsUser\fR\fR
-.ad
-.sp .6
-.RS 4n
-If set, becomes this user when reading and delivering mail. Intended for use of
-firewalls where users do not have accounts.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSafeFileEnvironment\fR\fR
-.ad
-.sp .6
-.RS 4n
-If set, \fBsendmail\fR does a \fBchroot\fR into this directory before writing
-files.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSaveFromLine (f)\fR\fR
-.ad
-.sp .6
-.RS 4n
-Saves Unix-style \fBFrom\fR lines at the front of headers. Normally they are
-assumed redundant and discarded.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSendMimeErrors (j)\fR\fR
-.ad
-.sp .6
-.RS 4n
-If set, sends error messages in MIME format (see RFC 2045 and RFC 1344 for
-details). If disabled, \fBsendmail\fR does not return the DSN keyword in
-response to an \fBEHLO\fR and does not do Delivery Status Notification
-processing as described in RFC 1891.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBServerCertFile\fR\fR
-.ad
-.sp .6
-.RS 4n
-File containing the cert of the server, that is, this cert is used when
-\fBsendmail\fR acts as server.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBServerKeyFile\fR\fR
-.ad
-.sp .6
-.RS 4n
-File containing the private key belonging to the server cert.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBServiceSwitchFile\fR\fR
-.ad
-.sp .6
-.RS 4n
-Defines the path to the service-switch file. Since the service-switch file is
-defined in the Solaris operating environment this option is ignored.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSevenBitInput (7)\fR\fR
-.ad
-.sp .6
-.RS 4n
-Strips input to seven bits for compatibility with old systems. This should not
-be necessary.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSharedMemoryKey\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies key to use for shared memory segment. If not set (or \fB0\fR), shared
-memory is not be used. If this option is set, \fBsendmail\fR can share some
-data between different instances. For example, the number of entries in a queue
-directory or the available space in a file system. This allows for more
-efficient program execution, since only one process needs to update the data
-instead of each individual process gathering the data each time it is required.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSharedMemoryKeyFile=\fR\fIfile\fR\fR
-.ad
-.sp .6
-.RS 4n
-If \fBSharedMemoryKeyFile\fR is set to \fB-1\fR, the automatically selected
-shared memory key will be stored in the specified file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSingleLineFromHeader\fR\fR
-.ad
-.sp .6
-.RS 4n
-If set, \fBFrom:\fR lines that have embedded newlines are unwrapped onto one
-line.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSingleThreadDelivery\fR\fR
-.ad
-.sp .6
-.RS 4n
-If this option and the \fBHostStatusDirectory\fR option are both set, uses
-single thread deliveries to other hosts.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSmtpGreetingMessage or $e\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the initial SMTP greeting message.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSoftBounce\fR\fR
-.ad
-.sp .6
-.RS 4n
-If set, issue temporary errors (\fB4xy\fR) instead of permanent errors
-(\fB5xy\fR). This can be useful during testing of a new configuration to avoid
-erroneous bouncing of mail.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBStatusFile (S\fR\fIfile\fR\fB)\fR\fR
-.ad
-.sp .6
-.RS 4n
-Logs statistics in the named \fIfile\fR. By default, this is
-\fB/etc/mail/sendmail.st\fR. As root, you must \fBtouch\fR(1) this file to
-enable \fBmailstats\fR(1).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSuperSafe (s)\fR\fR
-.ad
-.sp .6
-.RS 4n
-This option can be set to \fBTrue\fR, \fBFalse\fR, \fBInteractive\fR, or
-\fBPostMilter\fR. If set to \fBTrue\fR, \fBsendmail\fR is set to super-safe
-when running things, that is, always instantiate the queue file, even if you
-are going to attempt immediate delivery. \fBsendmail\fR always instantiates the
-queue file before returning control to the client under any circumstances. This
-should really always be set to \fBTrue\fR. The \fBInteractive\fR value has been
-introduced in \fB8.12\fR and can be used together with \fBDeliveryMode=i\fR. It
-skips some synchronization calls which are effectively doubled in the code
-execution path for this mode. If set to \fBPostMilter\fR, \fBsendmail\fR defers
-synchronizing the queue file until any milters have signaled acceptance of the
-message. \fBPostMilter\fR is useful only when \fBsendmail\fR is running as an
-SMTP server; in all other situations it acts the same as True.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBTempFileMode (F\fR\fImode\fR\fB)\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the file mode for queue files.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBTimeout (r\fR\fItimeouts\fR\fB)\fR\fR
-.ad
-.sp .6
-.RS 4n
-Timeout reads after time interval. The \fItimeouts\fR argument is a list of
-\fIkeyword=value\fR pairs. All but \fIcommand\fR apply to client \fBSMTP\fR.
-For backward compatibility, a timeout with no \fIkeyword\fR= part is set all of
-the longer values. The recognized timeouts and their default values, and their
-minimum values specified in RFC 1123 section 5.3.2 are:
-.sp
-.ne 2
-.na
-\fB\fBaconnect\fR\fR
-.ad
-.sp .6
-.RS 4n
-all connections for a single delivery attempt [0, unspecified]
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcommand\fR\fR
-.ad
-.sp .6
-.RS 4n
-command read [1h, 5m]
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBconnect\fR\fR
-.ad
-.sp .6
-.RS 4n
-initial connect [0, unspecified]
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcontrol\fR\fR
-.ad
-.sp .6
-.RS 4n
-complete control socket transaction [2m, none]
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdatablock\fR\fR
-.ad
-.sp .6
-.RS 4n
-data block read [1h, 3m]
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdatafinal\fR\fR
-.ad
-.sp .6
-.RS 4n
-reply to final \fB\&.\fR in data [1h, 10m]
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdatainit\fR\fR
-.ad
-.sp .6
-.RS 4n
-reply to \fBDATA\fR command [5m, 2m]
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfileopen\fR\fR
-.ad
-.sp .6
-.RS 4n
-file open [60sec, none]
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBhelo\fR\fR
-.ad
-.sp .6
-.RS 4n
-reply to \fBHELO\fR or \fBEHLO\fR command [5m, none]
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBhoststatus\fR\fR
-.ad
-.sp .6
-.RS 4n
-host retry [30m, unspecified]
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBiconnect\fR\fR
-.ad
-.sp .6
-.RS 4n
-first attempt to connect to a host [0, unspecified]
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBident\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBIDENT\fR protocol timeout [5s, none]
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBinitial\fR\fR
-.ad
-.sp .6
-.RS 4n
-wait for initial greeting message [5m, 5m]
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBlhlo\fR\fR
-.ad
-.sp .6
-.RS 4n
-wait for reply to an LMTP LHLO command [2m, unspecified]
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmail\fR\fR
-.ad
-.sp .6
-.RS 4n
-reply to \fBMAIL\fR command [10m, 5m]
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmisc\fR\fR
-.ad
-.sp .6
-.RS 4n
-reply to \fBNOOP\fR and \fBVERB\fR commands [2m, none]
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBqueuereturn\fR\fR
-.ad
-.sp .6
-.RS 4n
-undeliverable message returned [5d]
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBqueuewarn\fR\fR
-.ad
-.sp .6
-.RS 4n
-deferred warning [4h]
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBquit\fR\fR
-.ad
-.sp .6
-.RS 4n
-reply to \fBQUIT\fR command [2m, none]
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrcpt\fR\fR
-.ad
-.sp .6
-.RS 4n
-reply to \fBRCPT\fR command [1h, 5m]
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBresolver.retrans\fR\fR
-.ad
-.sp .6
-.RS 4n
-Resolver's retransmission time interval (in seconds) [varies]. Sets both
-\fBTimeout.resolver.retrans.first\fR and \fBTimeout.resolver.retrans.normal\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBresolver.retrans.first\fR\fR
-.ad
-.sp .6
-.RS 4n
-Resolver's retransmission time interval (in seconds) for the first attempt to
-deliver a message [varies].
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBresolver.retrans.normal\fR\fR
-.ad
-.sp .6
-.RS 4n
-Resolver's retransmission time interval (in seconds) for all look-ups except
-the first delivery attempt [varies].
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBresolver.retry\fR\fR
-.ad
-.sp .6
-.RS 4n
-Number of times to retransmit a resolver query [varies]. Sets both
-\fBTimeout.resolver.retry.first\fR and \fBTimeout.resolver.retry.normal\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBresolver.retry.first\fR\fR
-.ad
-.sp .6
-.RS 4n
-Number of times to retransmit a resolver query for the first attempt to deliver
-a message [varies].
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBresolver.retry.normal\fR\fR
-.ad
-.sp .6
-.RS 4n
-Number of times to retransmit a resolver query for all look-ups except the
-first delivery attempt [varies].
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrset\fR\fR
-.ad
-.sp .6
-.RS 4n
-reply to \fBRSET\fR command [5m, none]
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBstarttls\fR\fR
-.ad
-.sp .6
-.RS 4n
-response to an \fBSMTP STARTTLS\fR command [1h]
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBTimeZoneSpec (t\fR\fItzinfo\fR\fB)\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets the local time zone info to \fItzinfo\fR, for example, "PST8PDT".
-Actually, if this is not set, the \fBTZ\fR environment variable is cleared (so
-the system default is used); if set but null, the user's \fBTZ\fR variable is
-used, and if set and non-null, the \fBTZ\fR variable is set to this value.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBTLSSrvOptions\fR\fR
-.ad
-.sp .6
-.RS 4n
-If this option is '\fBV\fR', then no client verification is performed,that is,
-the server does not ask for a certificate.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBTrustedUser\fR\fR
-.ad
-.sp .6
-.RS 4n
-The user parameter can be a user name (looked up in the passwd map) or a
-numeric user id. Trusted user for file ownership and starting the daemon. If
-set, generated alias databases and the control socket (if configured) are
-automatically owned by this user.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBTryNullMXList (w)\fR\fR
-.ad
-.sp .6
-.RS 4n
-If you are the "best" (that is, lowest preference) \fBMX\fR for a given host,
-you should normally detect this situation and treat that condition specially,
-by forwarding the mail to a \fBUUCP\fR feed, treating it as local, or whatever.
-However, in some cases (such as Internet firewalls) you may want to try to
-connect directly to that host as though it had no \fBMX\fR records at all.
-Setting this option causes \fBsendmail\fR to try this. The downside is that
-errors in your configuration are likely to be diagnosed as "host unknown" or
-"message timed out" instead of something more meaningful. This option is
-deprecated.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBUnixFromLine or $l\fR\fR
-.ad
-.sp .6
-.RS 4n
-The "From " line used when sending to files or programs.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBUnsafeGroupWrites\fR\fR
-.ad
-.sp .6
-.RS 4n
-If set, group-writable :include: and .forward files are considered "unsafe",
-that is, programs and files cannot be directly referenced from such files.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBUseErrorsTo (l)\fR\fR
-.ad
-.sp .6
-.RS 4n
-If there is an \fBErrors-To\fR: header, sends error messages to the addresses
-listed there. They normally go to the envelope sender. Use of this option
-causes \fBsendmail\fR to violate \fBRFC\fR 1123. This option is not recommended
-and deprecated.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBUseMSP\fR\fR
-.ad
-.sp .6
-.RS 4n
-Uses as mail submission program, that is, allows group writable queue files if
-the group is the same as that of a set-group-id \fBsendmail\fR binary.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBUserDatabaseSpec (U)\fR\fR
-.ad
-.sp .6
-.RS 4n
-Defines the name and location of the file containing User Database information.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBVerbose (v)\fR\fR
-.ad
-.sp .6
-.RS 4n
-Runs in verbose mode. If this is set, \fBsendmail\fR adjusts the
-\fBHoldExpensive\fR and \fBDeliveryMode\fR options so that all mail is
-delivered completely in a single job so that you can see the entire delivery
-process. The \fBVerbose\fR option should \fBnever\fR be set in the
-configuration file; it is intended for command line use only.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBXscriptFileBufferSize\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets the threshold, in bytes, before a memory-bases queue transcript file
-becomes disk-based. The default is 4096 bytes.
-.RE
-
-.sp
-.LP
-If the first character of the user name is a vertical bar, the rest of the user
-name is used as the name of a program to pipe the mail to. It may be necessary
-to quote the name of the user to keep \fBsendmail\fR from suppressing the
-blanks from between arguments.
-.sp
-.LP
-If invoked as \fBnewaliases\fR, \fBsendmail\fR rebuilds the alias database, so
-long as the \fB/etc/mail/aliases*\fR files are owned by root \fIand\fR root has
-exclusive write permission. If invoked as \fBmailq\fR, \fBsendmail\fR prints
-the contents of the mail queue.
-.SH OPERANDS
-.ne 2
-.na
-\fB\fIaddress\fR\fR
-.ad
-.sp .6
-.RS 4n
-address of an intended recipient of the message being sent.
-.RE
-
-.SH USAGE
-.LP
-See \fBlargefile\fR(5) for the description of the behavior of \fBsendmail\fR
-when encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
-.SH EXIT STATUS
-.LP
-\fBsendmail\fR returns an exit status describing what it did. The codes are
-defined in \fB/usr/include/sysexits.h\fR.
-.sp
-.ne 2
-.na
-\fB\fBEX_OK\fR\fR
-.ad
-.sp .6
-.RS 4n
-Successful completion on all addresses.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEX_NOUSER\fR\fR
-.ad
-.sp .6
-.RS 4n
-User name not recognized.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEX_UNAVAILABLE\fR\fR
-.ad
-.sp .6
-.RS 4n
-Catchall. Necessary resources were not available.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEX_SYNTAX\fR\fR
-.ad
-.sp .6
-.RS 4n
-Syntax error in address.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEX_SOFTWARE\fR\fR
-.ad
-.sp .6
-.RS 4n
-Internal software error, including bad arguments.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEX_OSERR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Temporary operating system error, such as "cannot fork".
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEX_NOHOST\fR\fR
-.ad
-.sp .6
-.RS 4n
-Host name not recognized.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEX_TEMPFAIL\fR\fR
-.ad
-.sp .6
-.RS 4n
-Message could not be sent immediately, but was queued.
-.RE
-
-.SH ENVIRONMENT VARIABLES
-.LP
-No environment variables are used. However, sendmail's start-up script, invoked
-by \fBsvcadm\fR(1M), reads \fB/etc/default/sendmail\fR. In this file, if the
-variable \fBETRN_HOSTS\fR is set, the start-up script parses this variable and
-invokes \fBetrn\fR(1M) appropriately. \fBETRN_HOSTS\fR should be of the form:
-.sp
-.in +2
-.nf
-"s1:c1.1,c1.2 s2:c2.1 s3:c3.1,c3.2,c3.3"
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-That is, white-space separated groups of \fIserver:client\fR where \fIclient\fR
-can be one or more comma-separated names. The \fI:client\fR part is optional.
-\fIserver\fR is the name of the server to prod; a mail queue run is requested
-for each \fIclient\fR name. This is comparable to running:
-.sp
-.in +2
-.nf
-/usr/lib/sendmail -qR \fIclient\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-on the host \fIserver\fR.
-.SH FILES
-.ne 2
-.na
-\fB\fBdead.letter\fR\fR
-.ad
-.sp .6
-.RS 4n
-Unmailable text
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/default/sendmail\fR\fR
-.ad
-.sp .6
-.RS 4n
-Contains default settings. You can override some of the settings by command
-line options.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/mail/aliases\fR\fR
-.ad
-.sp .6
-.RS 4n
-Mail aliases file (ASCII)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/mail/aliases.db\fR\fR
-.ad
-.sp .6
-.RS 4n
-Database of mail aliases (binary)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/mail/aliases.dir\fR\fR
-.ad
-.sp .6
-.RS 4n
-Database of mail aliases (binary)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/mail/aliases.pag\fR\fR
-.ad
-.sp .6
-.RS 4n
-Database of mail aliases (binary)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/mail/sendmail.cf\fR\fR
-.ad
-.sp .6
-.RS 4n
-Defines environment for \fBsendmail\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/mail/submit.cf\fR\fR
-.ad
-.sp .6
-.RS 4n
-Defines environment for MSP
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/mail/trusted-users\fR\fR
-.ad
-.sp .6
-.RS 4n
-Lists users that are "trusted", that is, able to set their envelope from
-address using \fB-f\fR without generating a warning message. Note that this
-file is consulted by the default \fBsendmail.cf\fR, but not by the default
-\fBsubmit.cf\fR, in which the line referring to \fB/etc/mail/trusted-users\fR
-is commented out. See \fBsendmail\fR(4) for instructions on making changes to
-\fBsubmit.cf\fR and \fBsendmail.cf\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/spool/clientmqueue/*\fR\fR
-.ad
-.sp .6
-.RS 4n
-Temporary files and queued mail
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/spool/mqueue/*\fR\fR
-.ad
-.sp .6
-.RS 4n
-Temporary files and queued mail
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB~/.forward\fR\fR
-.ad
-.sp .6
-.RS 4n
-List of recipients for forwarding messages
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/include/libmilter/README\fR\fR
-.ad
-.sp .6
-.RS 4n
-Describes the steps needed to compile and run a filter
-.RE
-
-.SH SEE ALSO
-.LP
-\fBsvcs\fR(1), \fBbiff\fR(1B), \fBmail\fR(1), \fBmailq\fR(1), \fBmailx\fR(1),
-\fBnice\fR(1), \fBcheck-hostname\fR(1M), \fBcheck-permissions\fR(1M),
-\fBetrn\fR(1M), \fBnewaliases\fR(1M), \fBsvcadm\fR(1M), \fBsvccfg\fR(1M),
-\fBfork\fR(2), \fBgetpwnam\fR(3C), \fBgetusershell\fR(3C),
-\fBresolver\fR(3RESOLV), \fBaliases\fR(4), \fBhosts\fR(4), \fBsendmail\fR(4),
-\fBshells\fR(4), \fBattributes\fR(5), \fBlargefile\fR(5), \fBsmf\fR(5),
-\fBrandom\fR(7D), \fBtcpd\fR(1M), \fBhosts_access\fR(4)
-.sp
-.LP
-\fBRFC\fR 2821 \fISimple Mail Transfer Protocol\fR, John Klensin, April 2001.
-.sp
-.LP
-\fBRFC\fR 2822 \fIInternet Message Format\fR, Pete Resnick, April 2001.
-.sp
-.LP
-\fIsendmail, Third Edition\fR, Bryan Costales with Eric Allman\fB\fR, O'Reilly
-& Associates, Inc., 2003.
-.sp
-.LP
-http://www.sendmail.org
-.sp
-.LP
-http://www.milter.org
-.SH NOTES
-.LP
-The \fBsendmail\fR program requires a fully qualified host name when starting.
-A script has been included to help verify if the host name is defined properly
-(see \fBcheck-hostname\fR(1M)).
-.sp
-.LP
-The permissions and the ownership of several directories have been changed in
-order to increase security. In particular, access to \fB/etc/mail\fR and
-\fB/var/spool/mqueue\fR has been restricted.
-.sp
-.LP
-Security restrictions have been placed users using \fB\&.forward\fR files to
-pipe mail to a program or redirect mail to a file. The default shell (as listed
-in \fB/etc/passwd\fR) of these users must be listed in \fB/etc/shells\fR. This
-restriction does not affect mail that is being redirected to another alias.
-.sp
-.LP
-Additional restrictions have been put in place on \fB\&.forward\fR and
-\fB:include:\fR files. These files and the directory structure that they are
-placed in cannot be group- or world-writable. See \fBcheck-permissions\fR(1M).
-.sp
-.LP
-If you have interfaces that map to domains that have MX records that point to
-non-local destinations, you might need to enable the \fBDontProbeInterfaces\fR
-option to enable delivery to those destinations. In its default startup
-behavior, \fBsendmail\fR probes each interface and adds an interface's \fBIP\fR
-addresses, as well as any domains that those addresses map to, to its list of
-domains that are considered local. For domains thus added, being on the list of
-local domains is equivalent to having a 0-preference MX record, with
-\fBlocalhost\fR as the MX value. If this is not the result you want, enable
-\fBDontProbeInterfaces\fR.
diff --git a/usr/src/man/man1m/setuname.1m b/usr/src/man/man1m/setuname.1m
deleted file mode 100644
index 18d8a6a180..0000000000
--- a/usr/src/man/man1m/setuname.1m
+++ /dev/null
@@ -1,74 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 1998 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SETUNAME 1M "Jul 9, 2003"
-.SH NAME
-setuname \- change machine information
-.SH SYNOPSIS
-.LP
-.nf
-\fBsetuname\fR [\fB-t\fR] [\fB-n\fR \fInode\fR] [\fB-s\fR \fIname\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBsetuname\fR utility changes the parameter value for the system name and
-node name. Each parameter can be changed using \fBsetuname\fR and the
-appropriate option.
-.sp
-.LP
-Either or both the \fB-s\fR and \fB-n\fR options must be given when invoking
-\fBsetuname\fR.
-.sp
-.LP
-The system architecture may place requirements on the size of the system and
-network node name. The command will issue a fatal warning message and an error
-message if the name entered is incompatible with the system requirements.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-n\fR\fI node\fR\fR
-.ad
-.RS 11n
-Changes the node name. \fInode\fR specifies the new network node name and can
-consist of alphanumeric characters and the special characters dash, underbar,
-and dollar sign.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR\fI name\fR\fR
-.ad
-.RS 11n
-Changes the system name. \fIname\fR specifies new system name and can consist
-of alphanumeric characters and the special characters dash, underbar, and
-dollar sign.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-t\fR\fR
-.ad
-.RS 11n
-Temporary change. No attempt will be made to create a permanent change.
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBattributes\fR(5)
-.SH NOTES
-.sp
-.LP
-\fBsetuname\fR attempts to change the parameter values in two places: the
-running kernel and, as necessary per implementation, to cross system reboots. A
-temporary change changes only the running kernel.
diff --git a/usr/src/man/man1m/sf880drd.1m b/usr/src/man/man1m/sf880drd.1m
deleted file mode 100644
index f37256e46f..0000000000
--- a/usr/src/man/man1m/sf880drd.1m
+++ /dev/null
@@ -1,59 +0,0 @@
-'\" te
-.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SF880DRD 1M "Aug 13, 2004"
-.SH NAME
-sf880drd \- Sun Fire 880 Dynamic Reconfiguration daemon
-.SH SYNOPSIS
-.LP
-.nf
-\fBsf880drd\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The Sun Fire 880 Dynamic Reconfiguration daemon, \fBsf880drd\fR, is part of the
-\fBPCI\fR and system bus hotplug framework. \fBsf880drd\fR starts at boot time.
-It has no configuration options and does not report any system status.
-.sp
-.LP
-\fBsf880drd\fR implements the Sun Fire \fB880\fR console-less system
-administration (per-slot pushbuttons and \fBLED\fR status indicators). It also
-manages various aspects of \fBCPU\fR/memory hotplug.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/usr/platform/SUNW,Sun-Fire-880/lib/sf880drd\fR \fR
-.ad
-.sp .6
-.RS 4n
-
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBsvcs\fR(1), \fBcfgadm\fR(1M), \fBcfgadm_pci\fR(1M), \fBcfgadm_sbd\fR(1M),
-\fBsvcadm\fR(1M), \fBattributes\fR(5), \fBsmf\fR(5)
-.SH NOTES
-.sp
-.LP
-The \fBsf880drd\fR service is managed by the service management facility,
-\fBsmf\fR(5), under the service identifier:
-.sp
-.in +2
-.nf
-svc:/platform/sun4u/sf880drd
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Administrative actions on this service, such as enabling, disabling, or
-requesting restart, can be performed using \fBsvcadm\fR(1M). The service's
-status can be queried using the \fBsvcs\fR(1) command.
diff --git a/usr/src/man/man1m/share.1m b/usr/src/man/man1m/share.1m
deleted file mode 100644
index 0c3810bc92..0000000000
--- a/usr/src/man/man1m/share.1m
+++ /dev/null
@@ -1,204 +0,0 @@
-'\" te
-.\" Copyright (c) 2000 Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SHARE 1M "Jan 23, 2007"
-.SH NAME
-share \- make local resource available for mounting by remote systems
-.SH SYNOPSIS
-.LP
-.nf
-\fBshare\fR [\fB-p\fR] [\fB-F\fR \fIFSType\fR] [\fB-o\fR \fIspecific_options\fR] [\fB-d\fR \fIdescription\fR]
- [\fIpathname\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBshare\fR command exports, or makes a resource available for mounting,
-through a remote file system of type \fIFSType\fR. If the option \fB-F\fR
-\fIFSType\fR is omitted, the first file system type listed in
-\fB/etc/dfs/fstypes\fR is used as default. For a description of NFS specific
-options, see \fBshare_nfs\fR(1M). \fIpathname\fR is the pathname of the
-directory to be shared. When invoked with no arguments, \fBshare\fR displays
-all shared file systems.
-.SH OPTIONS
-.sp
-.ne 2
-.na
-\fB\fB-d\fR \fIdescription\fR\fR
-.ad
-.sp .6
-.RS 4n
-The \fB-d\fR flag may be used to provide a description of the resource being
-shared.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-F\fR \fIFSType\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify the filesystem type.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-o\fR \fIspecific_options\fR\fR
-.ad
-.sp .6
-.RS 4n
-The \fIspecific_options\fR are used to control access of the shared resource.
-(See \fBshare_nfs\fR(1M) for the NFS specific options.) They may be any of the
-following:
-.sp
-.ne 2
-.na
-\fB\fBrw\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fIpathname\fR is shared read/write to all clients. This is also the default
-behavior.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrw=\fR\fIclient\fR[\fI:client\fR]...\fR
-.ad
-.sp .6
-.RS 4n
-\fIpathname\fR is shared read/write only to the listed clients. No other
-systems can access \fIpathname\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBro\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fIpathname\fR is shared read-only to all clients.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBro=\fR\fIclient\fR[\fI:client\fR]...\fR
-.ad
-.sp .6
-.RS 4n
-\fIpathname\fR is shared read-only only to the listed clients. No other systems
-can access \fIpathname\fR.
-.RE
-
-Separate multiple options with commas. Separate multiple operands for an option
-with colons. See EXAMPLES.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR\fR
-.ad
-.sp .6
-.RS 4n
-Causes the share operation to persist across reboots.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRSharing a Read-Only Filesystem
-.sp
-.LP
-This line will share the \fB/disk\fR file system read-only at boot time.
-
-.sp
-.in +2
-.nf
-\fBshare\fR \fB-F\fR\fB nfs \fR\fB-o\fR \fBro /disk\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRInvoking Multiple Options
-.sp
-.LP
-The following command shares the filesystem \fB/export/manuals\fR, with members
-of the netgroup having read-only access and users on the specified host having
-read-write access.
-
-.sp
-.in +2
-.nf
-share \fB-F\fR nfs \fB-o\fR ro=\fInetgroup_name\fR,rw=\fIhost1\fR:\fIhost2\fR:\fIhost3\fR /export/manuals
-.fi
-.in -2
-.sp
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/dfs/dfstab\fR\fR
-.ad
-.sp .6
-.RS 4n
-List of \fBshare\fR commands to be executed at boot time. Note that you can
-invoke \fBshare\fR from a command line and use the \fB-p\fR option, described
-above, as an alternative to editing this file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/dfs/fstypes\fR\fR
-.ad
-.sp .6
-.RS 4n
-List of file system types; NFS is the default.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/dfs/sharetab\fR\fR
-.ad
-.sp .6
-.RS 4n
-System record of shared file systems.
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBmountd\fR(1M), \fBnfsd\fR(1M), \fBshare_nfs\fR(1M), \fBshareall\fR(1M),
-\fBunshare\fR(1M), \fBattributes\fR(5)
-.SH NOTES
-.sp
-.LP
-Export (old terminology): file system sharing used to be called exporting on
-SunOS 4.x, so the \fBshare\fR command used to be invoked as \fBexportfs\fR(1B)
-or \fB/usr/sbin/exportfs\fR.
-.sp
-.LP
-If \fBshare\fR commands are invoked multiple times on the same filesystem, the
-last \fBshare\fR invocation supersedes the previous\(emthe options set by the
-last \fBshare\fR command replace the old options. For example, if read-write
-permission was given to \fBusera\fR on \fB/somefs\fR, then to give read-write
-permission also to \fBuserb\fR on \fB/somefs\fR:
-.sp
-.LP
-\fBexample% share -F nfs -o rw=usera:userb /somefs\fR
-.sp
-.LP
-This behavior is not limited to sharing the root filesystem, but applies to all
-filesystems.
diff --git a/usr/src/man/man1m/share_nfs.1m b/usr/src/man/man1m/share_nfs.1m
deleted file mode 100644
index ff360207e1..0000000000
--- a/usr/src/man/man1m/share_nfs.1m
+++ /dev/null
@@ -1,818 +0,0 @@
-.\"
-.\" CDDL HEADER START
-.\"
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.\"
-.\" CDDL HEADER END
-.\"
-.\"
-.\" Copyright (C) 2008, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 2014 Nexenta Systems, Inc. All rights reserved.
-.\" Copyright 2016 Jason King.
-.\"
-.Dd November 22, 2021
-.Dt SHARE_NFS 1M
-.Os
-.Sh NAME
-.Nm share_nfs
-.Nd make local NFS file systems available for mounting by remote systems
-.Sh SYNOPSIS
-.Nm share
-.Op Fl d Ar description
-.Op Fl F Sy nfs
-.Op Fl o Ar specific_options
-.Ar pathname
-.Sh DESCRIPTION
-The
-.Nm share
-utility makes local file systems available for mounting by remote systems.
-It starts the
-.Xr nfsd 1M
-and
-.Xr mountd 1M
-daemons if they are not already running.
-.Pp
-If no argument is specified, then
-.Nm share
-displays all file systems currently shared, including NFS file systems and file
-systems shared through other distributed file system packages.
-.Sh OPTIONS
-The following options are supported:
-.Bl -tag -width "indented"
-.It Fl d Ar description
-Provide a comment that describes the file system to be shared.
-.It Fl F Sy nfs
-Share NFS file system type.
-.It Fl o Ar specific_options
-Specify
-.Ar specific_options
-in a comma-separated list of keywords and attribute-value-assertions for
-interpretation by the file-system-type-specific command.
-If
-.Ar specific_options
-is not specified, then by default sharing is read-write to all clients.
-.Ar specific_options
-can be any combination of the following:
-.Bl -tag -width "indented"
-.It Sy aclok
-Allows the NFS server to do access control for NFS Version 2 clients (running
-SunOS 2.4 or earlier).
-When
-.Sy aclok
-is set on the server, maximal access is given to all clients.
-For example, with
-.Sy aclok
-set, if anyone has read permissions, then everyone does.
-If
-.Sy aclok
-is not set, minimal access is given to all clients.
-.It Sy anon Ns = Ns Ar uid
-Set
-.Ar uid
-to be the effective user ID of unknown users.
-By default, unknown users are given the effective user ID UID_NOBODY.
-If uid is set to -1, access is denied.
-.It Ar charset Ns = Ns Ar access_list
-Where
-.Ar charset
-is one of: euc-cn, euc-jp, euc-jpms, euc-kr, euc-tw, iso8859-1, iso8859-2,
-iso8859-5, iso8859-6, iso8859-7, iso8859-8, iso8859-9, iso8859-13, iso8859-15,
-koi8-r.
-.Pp
-Clients that match the
-.Ar access_list
-for one of these properties will be assumed to be using that character set and
-file and path names will be converted to UTF-8 for the server.
-.It Sy gidmap Ns = Ns Ar mapping Ns Oo ~ Ns Ar mapping Oc Ns ...
-Where
-.Ar mapping
-is:
-.Oo Ar clnt Oc : Ns Oo Ar srv Oc : Ns Ar access_list
-.Pp
-Allows remapping the group ID (gid) in the incoming request to some other gid.
-This effectively changes the identity of the user in the request to that of
-some other local user.
-.Pp
-For clients where the gid in the incoming request is
-.Ar clnt
-and the client matches the
-.Ar access_list ,
-change the group ID to
-.Ar srv .
-If
-.Ar clnt
-is asterisk (*), all groups are mapped by this rule.
-If
-.Ar clnt
-is omitted, all unknown groups are mapped by this rule.
-If
-.Ar srv
-is set to -1, access is denied.
-If
-.Ar srv
-is omitted, the gid is mapped to UID_NOBODY.
-.Pp
-The particular
-.Ar mapping Ns s
-are separated in the
-.Sy gidmap Ns =
-option by tilde (~) and are evaluated in the specified order until a match is
-found.
-Both
-.Sy root Ns =
-and
-.Sy root_mapping Ns =
-options (if specified) are evaluated before the
-.Sy gidmap Ns =
-option.
-The
-.Sy gidmap Ns =
-option is skipped in the case where the client matches the
-.Sy root Ns =
-option.
-.Pp
-The
-.Sy gidmap Ns =
-option is evaluated before the
-.Sy anon Ns =
-option.
-.Pp
-This option is supported only for AUTH_SYS.
-.It Sy index Ns = Ns Ar file
-Load
-.Ar file
-rather than a listing of the directory containing this file when the
-directory is referenced by an NFS URL.
-.It Sy log Ns Oo = Ns Ar tag Oc
-Enables NFS server logging for the specified file system.
-The optional
-.Ar tag
-determines the location of the related log files.
-The
-.Ar tag
-is defined in
-.Pa /etc/nfs/nfslog.conf .
-If no
-.Ar tag
-is specified, the default values associated with the global tag in
-.Pa /etc/nfs/nfslog.conf
-are used.
-Support of NFS server logging is only available for NFS Version 2 and
-Version 3 requests.
-.It Sy nohide
-By default, if server exports two filesystems, one of which is mounted as a
-child of the other, NFS Version 2 and Version 3 clients must mount both
-filesystems explicitly in order to access them.
-If a client only mounts the parent, it will see an empty directory at the
-location where the other filesystem is mounted.
-.Pp
-Setting the
-.Sy nohide
-option on a filesystem causes it to no longer be hidden in this manner, and the
-client will be able to move from the parent filesystem to this one without
-noticing the change.
-However, some NFS clients or applications may not function correctly when
-this option is used.
-In particular, files on different underlying filesystems may appear to have
-the same inode numbers.
-The
-.Sy nohide
-option only applies to NFS Version 2 and Version 3 requests.
-.It Sy noaclfab
-By default, the NFS server will fabricate POSIX-draft style ACLs in response
-to ACL requests from NFS Version 2 or Version 3 clients accessing shared
-file systems that do not support POSIX-draft ACLs (such as ZFS).
-Specifying
-.Sy noaclfab
-disables this behavior.
-.It Sy none Ns = Ns Ar access_list
-Access is not allowed to any client that matches the access list.
-The exception is when the access list is an asterisk (*), in which case
-.Sy ro
-or
-.Sy rw
-can override
-.Sy none .
-.It Sy nosub
-Prevents clients from mounting subdirectories of shared directories.
-For example, if
-.Pa /export
-is shared with the
-.Sy nosub
-option on server
-.Qq fooey
-then a NFS client cannot do:
-.Bd -literal -offset indent
-mount -F nfs fooey:/export/home/mnt
-.Ed
-.Pp
-NFS Version 4 does not use the MOUNT protocol.
-The
-.Sy nosub
-option only applies to NFS Version 2 and Version 3 requests.
-.It Sy nosuid
-By default, clients are allowed to create files on the shared file system with
-the setuid or setgid mode enabled.
-Specifying
-.Sy nosuid
-causes the server file system to silently ignore any attempt to enable the
-setuid or setgid mode bits.
-.It Sy public
-Moves the location of the public file handle from root
-.Pa ( / )
-to the exported directory for WebNFS-enabled browsers and clients.
-This option does not enable WebNFS service; WebNFS is always on.
-Only one file system per server may use this option.
-Any other option, including the
-.Sy ro Ns = Ns Ar list
-and
-.Sy rw Ns = Ns Ar list
-options can be included with the
-.Sy public
-option.
-.It Sy ro
-Sharing is read-only to all clients.
-.It Sy ro Ns = Ns Ar access_list
-Sharing is read-only to the clients listed in
-.Ar access_list ;
-overrides the
-.Sy rw
-suboption for the clients specified.
-See
-.Sx access_list
-below.
-.It Sy root Ns = Ns Ar access_list
-Only root users from the hosts specified in
-.Ar access_list
-have root access.
-See
-.Sx access_list
-below.
-By default, no host has root access, so root users are mapped to an anonymous
-user ID (see the
-.Sy anon Ns = Ns Ar uid
-option described above).
-Netgroups can be used if the file system shared is using UNIX authentication
-(AUTH_SYS).
-.It Sy root_mapping Ns = Ns Ar uid
-For a client that is allowed root access, map the root UID to the specified
-user id.
-.It Sy rw
-Sharing is read-write to all clients.
-.It Sy rw Ns = Ns Ar access_list
-Sharing is read-write to the clients listed in
-.Ar access_list ;
-overrides the
-.Sy ro
-suboption for the clients specified.
-See
-.Sx access_list
-below.
-.It Sy sec Ns = Ns Ar mode Ns Oo : Ns Ar mode Oc Ns ...
-Sharing uses one or more of the specified security modes.
-The
-.Ar mode
-in the
-.Sy sec Ns = Ns Ar mode
-option must be a mode name supported on the client.
-If the
-.Sy sec Ns =
-option is not specified, the default security mode used is AUTH_SYS.
-Multiple
-.Sy sec Ns =
-options can be specified on the command line, although each mode can appear
-only once.
-The security modes are defined in
-.Xr nfssec 5 .
-.Pp
-Each
-.Sy sec Ns =
-option specifies modes that apply to any subsequent
-.Sy window Ns = ,
-.Sy rw ,
-.Sy ro ,
-.Sy rw Ns = ,
-.Sy ro Ns = ,
-and
-.Sy root Ns =
-options that are provided before another
-.Sy sec Ns =
-option.
-Each additional
-.Sy sec Ns =
-resets the security mode context, so that more
-.Sy window Ns = ,
-.Sy rw ,
-.Sy ro ,
-.Sy rw Ns = ,
-.Sy ro Ns = ,
-and
-.Sy root Ns =
-options can be supplied for additional modes.
-.It Sy sec Ns = Ns Sy none
-If the option
-.Sy sec Ns = Ns Sy none
-is specified when the client uses AUTH_NONE, or if the client uses a security
-mode that is not one that the file system is shared with, then the credential
-of each NFS request is treated as unauthenticated.
-See the
-.Sy anon Ns = Ns Ar uid
-option for a description of how unauthenticated requests are handled.
-.It Sy secure
-This option has been deprecated in favor of the
-.Sy sec Ns = Ns Sy dh
-option.
-.It Sy uidmap Ns = Ns Ar mapping Ns Oo ~ Ns Ar mapping Oc Ns ...
-Where
-.Ar mapping
-is:
-.Oo Ar clnt Oc : Ns Oo Ar srv Oc : Ns Ar access_list
-.Pp
-Allows remapping the user ID (uid) in the incoming request to some other uid.
-This effectively changes the identity of the user in the request to that of
-some other local user.
-.Pp
-For clients where the uid in the incoming request is
-.Ar clnt
-and the client matches the
-.Ar access_list ,
-change the user ID to
-.Ar srv .
-If
-.Ar clnt
-is asterisk (*), all users are mapped by this rule.
-If
-.Ar clnt
-is omitted, all unknown users are mapped by this rule.
-If
-.Ar srv
-is set to -1, access is denied.
-If
-.Ar srv
-is omitted, the uid is mapped to UID_NOBODY.
-.Pp
-The particular
-.Ar mapping Ns s
-are separated in the
-.Sy uidmap Ns =
-option by tilde (~) and are evaluated in the specified order until a match is
-found.
-Both
-.Sy root Ns =
-and
-.Sy root_mapping Ns =
-options (if specified) are evaluated before the
-.Sy uidmap Ns =
-option.
-The
-.Sy uidmap Ns =
-option is skipped in the case where the client matches the
-.Sy root Ns =
-option.
-.Pp
-The
-.Sy uidmap Ns =
-option is evaluated before the
-.Sy anon Ns =
-option.
-.Pp
-This option is supported only for AUTH_SYS.
-.It Sy window Ns = Ns Ar value
-When sharing with
-.Sy sec Ns = Ns Sy dh ,
-set the maximum life time (in seconds) of the RPC request's credential (in the
-authentication header) that the NFS server allows.
-If a credential arrives with a life time larger than what is allowed, the NFS
-server rejects the request.
-The default value is 30000 seconds (8.3 hours).
-.El
-.El
-.Ss access_list
-The
-.Ar access_list
-argument is a colon-separated list whose components may be any number of the
-following:
-.Bl -tag -width "indented"
-.It Sy hostname
-The name of a host.
-With a server configured for DNS or LDAP naming in the nsswitch
-.Sy hosts
-entry, any hostname must be represented as a fully qualified DNS or LDAP name.
-.It Sy netgroup
-A netgroup contains a number of hostnames.
-With a server configured for DNS or LDAP naming in the nsswitch
-.Sy hosts
-entry, any hostname in a netgroup must be represented as a fully qualified DNS
-or LDAP name.
-.It Sy domain name suffix
-To use domain membership the server must use DNS or LDAP to resolve hostnames to
-IP addresses; that is, the
-.Sy hosts
-entry in the
-.Pa /etc/nsswitch.conf
-must specify
-.Sy dns
-or
-.Sy ldap
-ahead of
-.Sy nis
-since only DNS and LDAP return the full domain name of the host.
-Other name services like NIS cannot be used to resolve hostnames on the server
-because when mapping an IP address to a hostname they do not return domain
-information.
-For example,
-.Bd -literal -offset indent
-NIS 172.16.45.9 --> "myhost"
-.Ed
-.Pp
-and
-.Bd -literal -offset indent
-DNS or LDAP 172.16.45.9 --> "myhost.mydomain.example.com"
-.Ed
-.Pp
-The domain name suffix is distinguished from hostnames and netgroups by a
-prefixed dot.
-For example,
-.Bd -literal -offset indent
-rw=.mydomain.example.com
-.Ed
-.Pp
-A single dot can be used to match a hostname with no suffix.
-For example,
-.Bd -literal -offset indent
-rw=.
-.Ed
-.Pp
-matches
-.Qq mydomain
-but not
-.Qq mydomain.example.com .
-This feature can be used to match hosts resolved through NIS rather
-than DNS and LDAP.
-.It Sy network
-The network or subnet component is preceded by an at-sign (@).
-It can be either a name or a dotted address.
-If a name, it is converted to a dotted address by
-.Xr getnetbyname 3SOCKET .
-For example,
-.Bd -literal -offset indent
-=@mynet
-.Ed
-.Pp
-would be equivalent to:
-.Bd -literal -offset indent
-=@172.16 or =@172.16.0.0
-.Ed
-.Pp
-The network prefix assumes an octet-aligned netmask determined from the zeroth
-octet in the low-order part of the address up to and including the high-order
-octet, if you want to specify a single IP address (see below).
-In the case where network prefixes are not byte-aligned, the syntax allows a
-mask length to be specified explicitly following a slash (/) delimiter.
-For example,
-.Bd -literal -offset indent
-=@theothernet/17 or =@172.16.132/22
-.Ed
-.Pp
-where the mask is the number of leftmost contiguous significant bits in the
-corresponding IP address.
-.Pp
-When specifying individual IP addresses, use the same @ notation described
-above, without a netmask specification.
-For example:
-.Bd -literal -offset indent
-=@172.16.132.14
-.Ed
-.Pp
-Multiple, individual IP addresses would be specified, for example, as:
-.Bd -literal -offset indent
-root=@172.16.132.20:@172.16.134.20
-.Ed
-.El
-.Pp
-A prefixed minus sign (-) denies access to that component of
-.Ar access_list .
-The list is searched sequentially until a match is found that either grants or
-denies access, or until the end of the list is reached.
-For example, if host
-.Qq terra
-is in the
-.Qq engineering
-netgroup, then
-.Bd -literal -offset indent
-rw=-terra:engineering
-.Ed
-.Pp
-denies access to
-.Qq terra
-but
-.Bd -literal -offset indent
-rw=engineering:-terra
-.Ed
-.Pp
-grants access to
-.Qq terra .
-.Sh OPERANDS
-The following operands are supported:
-.Bl -tag -width "pathname"
-.It Sy pathname
-The pathname of the file system to be shared.
-.El
-.Sh FILES
-.Bl -tag -width "/etc/nfs/nfslog.conf"
-.It Pa /etc/dfs/fstypes
-list of system types, NFS by default
-.It Pa /etc/dfs/sharetab
-system record of shared file systems
-.It Pa /etc/nfs/nfslogtab
-system record of logged file systems
-.It Pa /etc/nfs/nfslog.conf
-logging configuration file
-.El
-.Sh EXIT STATUS
-.Ex -std
-.Sh EXAMPLES
-.Ss Example 1 Sharing A File System With Logging Enabled
-The following example shows the
-.Pa /export
-file system shared with logging enabled:
-.Bd -literal -offset indent
-share -o log /export
-.Ed
-.Pp
-The default global logging parameters are used since no tag identifier is
-specified.
-The location of the log file, as well as the necessary logging work
-files, is specified by the global entry in
-.Pa /etc/nfs/nfslog.conf .
-The
-.Xr nfslogd 1M
-daemon runs only if at least one file system entry in
-.Pa /etc/dfs/dfstab
-is shared with logging enabled upon starting or rebooting the system.
-Simply sharing a file system with logging enabled from the command line does not
-start the
-.Xr nfslogd 1M .
-.Ss Example 2 Remap A User Coming From The Particular NFS Client
-The following example remaps the user with uid
-.Sy 100
-at client
-.Sy 10.0.0.1
-to user
-.Sy joe :
-.Bd -literal -offset indent
-share -o uidmap=100:joe:@10.0.0.1 /export
-.Ed
-.Sh SEE ALSO
-.Xr mount 1M ,
-.Xr mountd 1M ,
-.Xr nfsd 1M ,
-.Xr nfslogd 1M ,
-.Xr share 1M ,
-.Xr unshare 1M ,
-.Xr getnetbyname 3SOCKET ,
-.Xr netgroup 4 ,
-.Xr nfslog.conf 4 ,
-.Xr acl 5 ,
-.Xr attributes 5 ,
-.Xr nfssec 5
-.Sh NOTES
-If the
-.Sy sec Ns =
-option is presented at least once, all uses of the
-.Sy window Ns = ,
-.Sy rw ,
-.Sy ro ,
-.Sy rw Ns = ,
-.Sy ro Ns = ,
-and
-.Sy root Ns =
-options must come after the first
-.Sy sec Ns =
-option.
-If the
-.Sy sec Ns =
-option is not presented, then
-.Sy sec Ns = Ns Sy sys
-is implied.
-.Pp
-If one or more explicit
-.Sy sec Ns =
-options are presented,
-.Sy sys
-must appear in one of the options mode lists for accessing using the AUTH_SYS
-security mode to be allowed.
-For example:
-.Bd -literal -offset indent
-share -F nfs /var
-share -F nfs -o sec=sys /var
-.Ed
-.Pp
-grants read-write access to any host using AUTH_SYS, but
-.Bd -literal -offset indent
-share -F nfs -o sec=dh /var
-.Ed
-.Pp
-grants no access to clients that use AUTH_SYS.
-.Pp
-Unlike previous implementations of
-.Nm ,
-access checking for the
-.Sy window Ns = ,
-.Sy rw ,
-.Sy ro ,
-.Sy rw Ns = ,
-and
-.Sy ro Ns =
-options is done per NFS request, instead of per mount request.
-.Pp
-Combining multiple security modes can be a security hole in situations where
-the
-.Sy ro Ns =
-and
-.Sy rw Ns =
-options are used to control access to weaker security modes.
-In this example,
-.Bd -literal -offset indent
-share -F nfs -o sec=dh,rw,sec=sys,rw=hosta /var
-.Ed
-.Pp
-an intruder can forge the IP address for
-.Qq hosta
-(albeit on each NFS request) to side-step the stronger controls of AUTH_DES.
-Something like:
-.Bd -literal -offset indent
-share -F nfs -o sec=dh,rw,sec=sys,ro /var
-.Ed
-.Pp
-is safer, because any client (intruder or legitimate) that avoids AUTH_DES only
-gets read-only access.
-In general, multiple security modes per share command should only be used in
-situations where the clients using more secure modes get stronger access than
-clients using less secure modes.
-.Pp
-If
-.Sy rw Ns =
-and
-.Sy ro Ns =
-options are specified in the same
-.Sy sec Ns =
-clause, and a client is in both lists, the order of the two options determines
-the access the client gets.
-If client
-.Qq hosta
-is in two netgroups,
-.Qq group1
-and
-.Qq group2 ,
-in this example, the client would get read-only access:
-.Bd -literal -offset indent
-share -F nfs -o ro=group1,rw=group2 /var
-.Ed
-.Pp
-In this example
-.Qq hosta
-would get read-write access:
-.Bd -literal -offset indent
-share -F nfs -o rw=group2,ro=group1 /var
-.Ed
-.Pp
-If within a
-.Sy sec Ns =
-clause, both the
-.Sy ro
-and
-.Sy rw Ns =
-options are specified, for compatibility, the order of the options rule is not
-enforced.
-All hosts would get read-only access, with the exception to those in the
-read-write list.
-Likewise, if the
-.Sy ro Ns =
-and
-.Sy rw
-options are specified, all hosts get read-write access with the exceptions of
-those in the read-only list.
-.Pp
-The
-.Sy ro Ns =
-and
-.Sy rw Ns =
-options are guaranteed to work over UDP and TCP but may not work over other
-transport providers.
-.Pp
-The
-.Sy root Ns =
-option with AUTH_SYS is guaranteed to work over UDP and TCP but may not work
-over other transport providers.
-.Pp
-The
-.Sy root Ns =
-option with AUTH_DES is guaranteed to work over any transport provider.
-.Pp
-There are no interactions between the
-.Sy root Ns =
-option and the
-.Sy rw ,
-.Sy ro ,
-.Sy rw Ns = ,
-and
-.Sy ro Ns =
-options.
-Putting a host in the root list does not override the semantics of the other
-options.
-The access the host gets is the same as when the
-.Sy root Ns =
-option is absent.
-For example, the following share command denies access to
-.Qq hostb :
-.Bd -literal -offset indent
-share -F nfs -o ro=hosta,root=hostb /var
-.Ed
-.Pp
-The following gives read-only permissions to
-.Qq hostb :
-.Bd -literal -offset indent
-share -F nfs -o ro=hostb,root=hostb /var
-.Ed
-.Pp
-The following gives read-write permissions to
-.Qq hostb :
-.Bd -literal -offset indent
-share -F nfs -o ro=hosta,rw=hostb,root=hostb /var
-.Ed
-.Pp
-If the file system being shared is a symbolic link to a valid pathname, the
-canonical path (the path which the symbolic link follows) is shared.
-For example, if
-.Pa /export/foo
-is a symbolic link to
-.Pa /export/bar ,
-the following share command results in
-.Pa /export/bar
-as the shared pathname (and not
-.Pa /export/foo ) :
-.Bd -literal -offset indent
-share -F nfs /export/foo
-.Ed
-.Pp
-An NFS mount of
-.Lk server:/export/foo
-results in
-.Lk server:/export/bar
-really being mounted.
-.Pp
-This line in the
-.Pa /etc/dfs/dfstab
-file shares the
-.Pa /disk
-file system read-only at boot time:
-.Bd -literal -offset indent
-share -F nfs -o ro /disk
-.Ed
-.Pp
-The
-.Xr mountd 1M
-process allows the processing of a path name that contains a symbolic link.
-This allows the processing of paths that are not themselves explicitly shared
-with
-.Nm .
-For example,
-.Pa /export/foo
-might be a symbolic link that refers to
-.Pa /export/bar
-which has been specifically shared.
-When the client mounts
-.Pa /export/foo
-the mountd processing follows the symbolic link and responds with the
-.Pa /export/bar .
-The NFS Version 4 protocol does not use the mountd processing and the client's
-use of
-.Pa /export/foo
-does not work as it does with NFS Version 2 and Version 3 and the client
-receives an error when attempting to mount
-.Pa /export/foo .
-.Pp
-The
-.Sy nohide
-option violates RFC 1094,
-.%T "Network File System Protocol Specification"
-and RFC 1813,
-.%T "NFS: Network File System Version 3 Protocol Specification"
-.Pp
-The
-.Sy nohide
-option is provided for compatibility with Linux NFS.
diff --git a/usr/src/man/man1m/shareall.1m b/usr/src/man/man1m/shareall.1m
deleted file mode 100644
index afffca8647..0000000000
--- a/usr/src/man/man1m/shareall.1m
+++ /dev/null
@@ -1,60 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 1995, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SHAREALL 1M "Nov 6, 2000"
-.SH NAME
-shareall, unshareall \- share, unshare multiple resources
-.SH SYNOPSIS
-.LP
-.nf
-\fBshareall\fR [\fB-F\fR \fIFSType\fR [,\fIFSType\fR]...] [\fB-|\fR \fIfile\fR]
-.fi
-
-.LP
-.nf
-\fBunshareall\fR [\fB-F\fR \fIFSType\fR [,\fIFSType\fR]...]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-When used with no arguments, \fBshareall\fR shares all resources from
-\fBfile\fR, which contains a list of \fBshare\fR command lines. If the operand
-is a hyphen (\(mi), then the \fBshare\fR command lines are obtained from the
-standard input. Otherwise, if neither a \fBfile\fR nor a hyphen is specified,
-then the file \fB/etc/dfs/dfstab\fR is used as the default.
-.sp
-.LP
-Resources may be shared by specific file system types by specifying the file
-systems in a comma-separated list as an argument to \fB-F\fR.
-.sp
-.LP
-\fBunshareall\fR unshares all currently shared resources. Without a \fB-F\fR
-flag, it unshares resources for all distributed file system types.
-.SH OPTIONS
-.sp
-.ne 2
-.na
-\fB\fB-F\fR\fI FSType\fR\fR
-.ad
-.RS 13n
-Specify file system type. Defaults to the first entry in
-\fB/etc/dfs/fstypes\fR.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/dfs/dfstab\fR\fR
-.ad
-.RS 19n
-
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBshare\fR(1M), \fBunshare\fR(1M), \fBattributes\fR(5)
diff --git a/usr/src/man/man1m/sharectl.1m b/usr/src/man/man1m/sharectl.1m
deleted file mode 100644
index bd27bb4911..0000000000
--- a/usr/src/man/man1m/sharectl.1m
+++ /dev/null
@@ -1,231 +0,0 @@
-.\"
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.\"
-.\"
-.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 2016 Nexenta Systems, Inc.
-.\"
-.Dd November 22, 2021
-.Dt SHARECTL 1M
-.Os
-.Sh NAME
-.Nm sharectl
-.Nd configure and manage file sharing services
-.Sh SYNOPSIS
-.Nm
-.Ar subcommand
-.Op Fl h
-.Nm
-.Cm delsect
-.Ar section protocol
-.Nm
-.Cm get
-.Oo Fl p Ar property Oc Ns ...
-.Ar protocol
-.Nm
-.Cm set
-.Bro Fl p Ar property Ns = Ns Ar value Brc Ns ...
-.Ar protocol
-.Nm
-.Cm status
-.Op Ar protocol
-.Sh DESCRIPTION
-The
-.Nm
-command operates on file sharing services.
-The command sets the client and server operational properties, takes and
-restores configuration snapshots, and gets status of the protocol service.
-Currently supported services are
-.Xr autofs 4 ,
-.Xr nfs 4 ,
-.Xr smb 4
-and smbfs.
-.Pp
-The
-.Cm set
-subcommand requires root privileges or that you assume the Primary Administrator
-role.
-.Pp
-A non-privileged user can change the persistent settings when granted required
-authorizations, see appropriate sharing protocol man page.
-.Ss Options
-The following options are supported where applicable:
-.Bl -tag -width Ds
-.It Fl h
-Displays usage message.
-Supported for all subcommands.
-.It Fl p Ar property Ns Op = Ns Ar value
-Specifies a property.
-See
-.Sx Subcommands ,
-below.
-.El
-.Ss Subcommands
-.Nm
-supports the subcommands described below:
-.Bl -tag -width Ds
-.It Xo
-.Nm
-.Cm delsect
-.Ar section protocol
-.Xc
-Delete configuration section for the specified protocol.
-Currently only protocol that has configuration sections is
-.Nm smbfs
-.Po see
-.Xr nsmbrc 4
-and
-.Sx EXAMPLES
-.Pc .
-.It Xo
-.Nm
-.Cm get
-.Oo Fl p Ar property Oc Ns ...
-.Ar protocol
-.Xc
-Get the property values for the specified protocol.
-If no
-.Fl p
-option is provided, get all the properties for the specified protocol.
-For NFS, properties correspond to entries in the
-.Pa /etc/default/nfs
-file.
-See
-.Xr nfs 4 .
-.It Xo
-.Nm
-.Cm set
-.Bro Fl p Ar property Ns = Ns Ar value Brc Ns ...
-.Ar protocol
-.Xc
-Set properties for the specified file sharing protocol.
-.It Xo
-.Nm
-.Cm status
-.Op Ar protocol
-.Xc
-Display status of the specified protocol, or, if no protocol is specified, of
-all file sharing protocols.
-.El
-.Sh FILES
-.Bl -tag -width Ds
-.It Pa /usr/include/libshare.h
-Error codes used for exit status.
-.El
-.Sh EXIT STATUS
-.Bl -tag -width Ds
-.It Sy 0
-Successful completion.
-.It Sy non-zero
-Command failed.
-.El
-.Sh EXAMPLES
-.Bl -tag -width Ds
-.It Sy Example 1 No Setting a Property
-The following command sets the minimum version of the server NFS protocol to
-version 3.
-.Bd -literal
-# sharectl -p server_versmin=3 nfs
-.Ed
-.It Sy Example 2 No Getting Properties
-The following command gets the properties for the NFS protocol.
-.Bd -literal
-# sharectl get nfs
-lockd_listen_backlog=32
-lockd_servers=256
-lockd_retransmit_timeout=5
-grace_period=90
-nfsmapid_domain=example.com
-servers=1024
-server_versmin=2
-server_versmax=4
-max_connections=-1
-.Ed
-.Pp
-The following command gets the value of the grace_period property for the NFS
-protocol.
-.Bd -literal
-# sharectl get -p grace_period nfs
-grace_period=90
-.Ed
-.It Sy Example 3 No Obtaining Status
-The following command obtains the status of all file-sharing protocols on a
-system.
-.Bd -literal
-# sharectl status
-nfs enabled
-.Ed
-.It Sy Example 4 No Configuring Global Settings
-The following command shows how an authorized user can use
-.Nm
-commands to configure global settings for the
-.Pa example.com
-environment in the service management facility
-.Pq SMF .
-See
-.Xr nsmbrc 4
-for a description of the example environment,
-.Pa example.com .
-See
-.Xr smf 5
-for a description of the SMF.
-.Bd -literal
-# sharectl set -p section=default -p workgroup=SALES \e
- -p timeout=5 smbfs
-# sharectl set -p section=FSERVER -p addr=fserv.example.com smbfs
-# sharectl set -p section=RSERVER -p workgroup=REMGROUP \e
- -p addr=rserv.example.com smbfs
-# sharectl set -p section=RSERVER:george -p timeout=30 smbfs
-# sharectl set -p section="SSERV:*:POKY" -p addr=sserv.example.com \e
- -p timeout=25 smbfs
-.Ed
-.It Sy Example 5 No Displaying Current Settings
-The following command shows how an authorized user can use the
-.Nm sharectl Cm get
-command to view the global settings for
-.Nm smbfs
-in the SMF.
-The values shown are those set by the previous example.
-.Bd -literal
-# sharectl get smbfs
-[default]
-workgroup=SALES
-timeout=5
-[FSERVER]
-addr=fserv.example.com
-[RSERVER]
-workgroup=REMGROUP
-addr=rserv.example.com
-[RSERVER:george]
-timeout=30
-[SSERV:*:POKY]
-addr=sserv.example.com
-timeout=25
-.Ed
-.El
-.Sh INTERFACE STABILITY
-.Sy Committed
-.Sh SEE ALSO
-.Xr sharemgr 1M ,
-.Xr autofs 4 ,
-.Xr nfs 4 ,
-.Xr nsmbrc 4 ,
-.Xr smb 4 ,
-.Xr user_attr 4 ,
-.Xr attributes 5 ,
-.Xr rbac 5 ,
-.Xr smf 5 ,
-.Xr standards 5
diff --git a/usr/src/man/man1m/sharemgr.1m b/usr/src/man/man1m/sharemgr.1m
deleted file mode 100644
index 6bf52efd94..0000000000
--- a/usr/src/man/man1m/sharemgr.1m
+++ /dev/null
@@ -1,1334 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 2016 Nexenta Systems, Inc. All rights reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
-.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SHAREMGR 1M "November 22, 2021"
-.SH NAME
-sharemgr \- configure and manage file sharing
-.SH SYNOPSIS
-.nf
-\fBsharemgr\fR \fIsubcommand\fR [\fIoptions\fR]
-.fi
-
-.LP
-.nf
-\fBadd-share\fR [\fB-nth\fR] [\fB-r\fR \fIresource-name\fR] [\fB-d\fR "\fIdescription text\fR"]
- \fB-s\fR \fIsharepath\fR \fIgroup\fR
-.fi
-
-.LP
-.nf
-\fBcreate\fR [\fB-nvh\fR] [\fB-P\fR \fIproto\fR [\fB-p\fR \fIproperty\fR=\fIvalue\fR]] \fIgroup\fR
-.fi
-
-.LP
-.nf
-\fBdelete\fR [\fB-nvh\fR] [\fB-P\fR \fIproto\fR] [\fB-f\fR] \fIgroup\fR
-.fi
-
-.LP
-.nf
-\fBdisable\fR [\fB-nvh\fR] [\fB-a\fR | \fIgroup\fR...]
-.fi
-
-.LP
-.nf
-\fBenable\fR [\fB-nvh\fR] [\fB-a\fR | \fIgroup\fR...]
-.fi
-
-.LP
-.nf
-\fBlist\fR [\fB-vh\fR] [\fB-P\fR \fIproto\fR]
-.fi
-
-.LP
-.nf
-\fBmove-share\fR [\fB-nv\fR] \fB-s\fR \fIsharepath\fR \fIdestination-group\fR
-.fi
-
-.LP
-.nf
-\fBremove-share\fR [\fB-fnvh\fR] \fB-s\fR \fIsharepath\fR \fIgroup\fR
-.fi
-
-.LP
-.nf
-\fBset\fR [\fB-nvh\fR] \fB-P\fR \fIproto\fR [\fB-p\fR \fIproperty\fR=\fIvalue\fR]... [\fB-S\fR \fIoptionset\fR]
- [\fB-s\fR \fIsharepath\fR] \fIgroup\fR
-.fi
-
-.LP
-.nf
-\fBset-share\fR [\fB-nh\fR] [\fB-r\fR \fIresource\fR] [\fB-d\fR "\fIdescription text\fR"]
- \fB-s\fR \fIsharepath\fR \fIgroup\fR
-.fi
-
-.LP
-.nf
-\fBshow\fR [\fB-pvxh\fR] [\fB-P\fR \fIproto\fR] [\fIgroup\fR]...
-.fi
-
-.LP
-.nf
-\fBunset\fR [\fB-nvh\fR] \fB-P\fR \fIproto\fR [\fB-S\fR \fIoptionset\fR] [\fB-p\fR \fIproperty\fR]...
- \fIgroup\fR
-.fi
-
-.LP
-.nf
-\fBshare\fR [\fB-F\fR \fIfstype\fR] [\fB-p\fR] [\fB-o\fR \fIoptionlist\fR] [\fB-d\fR \fIdescription\fR]
- [\fIpathname\fR [\fIresourcename\fR]]
-.fi
-
-.LP
-.nf
-\fBunshare\fR [\fB-F\fR \fIfstype\fR] [\fB-p\fR] [\fB-o\fR \fIoptionlist\fR] \fIsharepath\fR
-.fi
-
-.SH DESCRIPTION
-The \fBsharemgr\fR command configures share groups and the shares contained
-within them.
-.sp
-.LP
-A group name must conform to service management facility (SMF) (see
-\fBsmf\fR(5)) service-naming conventions, thus is limited to starting with an
-alphabetic character, with the rest of the name consisting only of alphanumeric
-characters plus \fB-\fR (hyphen) and \fB_\fR (underbar).
-.sp
-.LP
-Subcommands that result in a configuration change support a dry-run option.
-When dry-run (\fB-n\fR) is specified, the syntax and validity of the command is
-tested but the configuration is not actually updated.
-.sp
-.LP
-For all subcommands, the \fB-h\fR option lists usage and help information.
-.sp
-.LP
-For subcommands with the verbose (\fB-v\fR) option, additional information will
-be provided. For example, in conjunction with the \fB-n\fR option, verbose mode
-will also indicate whether the current user has sufficient permissions to
-accomplish the operation.
-.sp
-.LP
-There are two groups that are created automatically. The \fBdefault\fR group
-always exists and covers legacy NFS shares only. The \fBzfs\fR group will be
-created when ZFS shares are enabled.
-.sp
-.LP
-The options shown in the SYNOPSIS section are described in the context of each
-subcommand. All subcommands except \fBlist\fR and \fBshow\fR require root
-privileges or that you assume the Primary Administrator role.
-.SS "Subcommands"
-With no subcommand entered, a \fBsharemgr\fR command with the \fB-h\fR option
-displays a usage message for all subcommands.
-.sp
-.LP
-The following subcommands follow \fBsharemgr\fR on a command line. Commands
-take the form:
-.sp
-.in +2
-.nf
-% \fBsharemgr \fI<subcommand>\fR [\fIoptions\fR]\fR
-.fi
-.in -2
-.sp
-
-.sp
-.ne 2
-.na
-\fB\fBcreate\fR \fB[-nvh] [-P \fIproto\fR [-p \fIproperty\fR=\fIvalue\fR]]
-\fIgroup\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Create a new group with specified name.
-.sp
-If \fB-n\fR is specified, the command checks only the validity of the command
-and that the group does not already exist.
-.sp
-If no protocol is specified, all known protocols are enabled for the specified
-group. If a protocol is specified, only that protocol is enabled. You can
-specify properties for a specified protocol.
-.sp
-If \fIgroup\fR exists, use of \fB-P\fR adds the specified protocol to that
-group.
-.sp
-As an example of the \fBcreate\fR subcommand, the following command creates a
-new group with the name \fBmygroup\fR.
-.sp
-.in +2
-.nf
-# \fBsharemgr create mygroup\fR
-.fi
-.in -2
-.sp
-
-Because no protocol was specified in the preceding command, all defined
-protocols will be enabled on the group.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdelete\fR \fB[-nvh] [-P \fIproto\fR] [-f] \fIgroup\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Delete the specified group. If the group is not empty, you can use the \fB-f\fR
-option to force the deletion, which unshares and removes all shares from the
-group before removing the group itself.
-.sp
-If you specify a protocol, rather than deleting the whole group, this
-subcommand deletes the protocol from the group.
-.sp
-The \fB-n\fR option can be used to test the syntax of the command.
-.sp
-As an example, the following command removes the group \fBmygroup\fR from the
-configuration if it is empty.
-.sp
-.in +2
-.nf
-# \fBsharemgr delete mygroup\fR
-.fi
-.in -2
-.sp
-
-The following command removes any existing shares prior to removing the group.
-.sp
-.in +2
-.nf
-# \fBsharemgr delete -f mygroup\fR
-.fi
-.in -2
-.sp
-
-Note the use of the force (\fB-f\fR) option, above.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBlist\fR \fB[-vh] [-P \fIproto\fR]\fR\fR
-.ad
-.sp .6
-.RS 4n
-List the defined groups.
-.sp
-If a protocol is specified, list only those groups that have the specified
-protocol defined.
-.sp
-If the verbose option is specified, the current state of the group and all
-protocols enabled on the group are listed as well. For example:
-.sp
-.in +2
-.nf
-# \fBsharemgr list -v\fR
-mygroup enabled nfs
-rdonlygrp disabled nfs
-.fi
-.in -2
-.sp
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBshow\fR \fB[-pvxh] [-P \fIproto\fR] [\fIgroup\fR...]\fR\fR
-.ad
-.sp .6
-.RS 4n
-Shows the contents of the specified group(s).
-.sp
-If the verbose option is specified, the resource name and description of each
-share is displayed if they are defined. Otherwise, only the share paths are
-displayed. Also, when temporary shares are listed, they are prefixed with an
-asterisk (\fB*\fR).
-.sp
-If the \fB-p\fR option is specified, all options defined for the protocols of
-the group are displayed, in addition to the display without options. If the
-\fB-P\fR option is used, the output is limited to those groups that have the
-specified protocol enabled. If the \fB-x\fR option is specified, output is in
-XML format and the \fB-p\fR and \fB-v\fR options are ignored, because all
-information is included in the XML.
-.sp
-The following example illustrates the use of the \fB-p\fR option.
-.sp
-.in +2
-.nf
-# \fBsharemgr show -p mygroup\fR
-default nfs=()
- * /data/backup
-mygroup nfs=(nosuid=true)
- /export/home/home0
- /export/home/home1
-.fi
-.in -2
-.sp
-
-The following example illustrates the use of the \fB-v\fR option.
-.sp
-.in +2
-.nf
-# \fBsharemgr show -v mygroup\fR
-mygroup
- HOME0=/export/home/home0 "Home directory set 0"
- HOME1=/export/home/home1 "Home directory set 1"
-.fi
-.in -2
-.sp
-
-ZFS managed shares are handled in a way similar to the way NFS shares are
-handled. These shares appear as subgroups within the parent group \fBzfs\fR.
-The subgroups are always prefixed with \fBzfs/\fR and use the ZFS dataset name
-for the rest of the name. The mount point and any sub-mounts that inherit
-sharing are shown as the shares of the subgroup. For example:
-.sp
-.in +2
-.nf
-# \fBsharemgr show -vp zfs\fR
-zfs nfs=()
- zfs/ztest
- /ztest
- /ztest/backups
-.fi
-.in -2
-.sp
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBset\fR \fB[-nvh] -P \fIproto\fR [-S \fIoptionset\fR] [-p
-\fIproperty\fR=\fIvalue\fR]* [-s \fIshare path\fR] \fIgroup\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set protocol-specific properties on the specified group.
-.sp
-The \fB-P\fR option is required and must specify a valid protocol.
-.sp
-Optionsets are protocol-specific sets of properties that can be negotiated by
-the protocol client. For NFS, optionsets are equivalent to security modes as
-defined in \fBnfssec\fR(5). If \fB-S\fR \fIoptionset\fR is specified, the
-properties are applied to the selected optionset. Otherwise they are applied to
-the general optionset.
-.sp
-Together, \fB-P\fR and \fB-S\fR select a specific view of the group's options
-on which to work.
-.sp
-Property values are strings. A specified property is set to a new value if the
-property already exists or is added to the protocol if it does not already
-exist.
-.sp
-In the general case, at least one property must be set. If \fB-S\fR is
-specified, properties can be omitted and the specified optionset is enabled for
-the protocol.
-.sp
-The \fB-s\fR option allows setting properties on a per-share basis. While this
-is supported, it should be limited to managing legacy shares and to the
-occasional need for an override of a group-level property or placing an
-additional property on one share within a group.
-.sp
-An example of this subcommand:
-.sp
-.in +2
-.nf
-# \fBsharemgr set -P nfs -p anon=1234 mygroup\fR
-.fi
-.in -2
-.sp
-
-The preceding command adds the property \fBanon=1234\fR to the \fBnfs\fR view
-of group \fBmygroup\fR. If \fBmygroup\fR has existing shares, they will all be
-reshared with the new property value(s).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBunset\fR \fB[-nvh] -P proto [-S \fIoptionset\fR] [-p \fIproperty\fR]* [-s
-\fIsharepath\fR ] \fIgroup\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Unset the specified properties for the protocol or for the specified
-\fIoptionset\fR of the protocol.
-.sp
-In the general case, at least one property must be set. If \fB-S\fR is
-specified, properties can be omitted and the specified optionset is removed
-from the protocol.
-.sp
-The \fB-s\fR option allows removing a share-specific property.
-.sp
-An example of this subcommand:
-.sp
-.in +2
-.nf
-# \fBsharemgr unset -P nfs -p anon mygroup\fR
-.fi
-.in -2
-.sp
-
-The preceding command removes the \fBanon=\fR property from the \fBnfs\fR view
-of group \fBmygroup\fR. If \fBmygroup\fR has existing shares, they will all be
-reshared with the new property value(s).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBadd-share\fR \fB[-nth] [-r \fIresource-name\fR] [-d "\fIdescription
-text\fR"] -s \fIsharepath\fR \fIgroup\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Add a new share to the specified group.
-.sp
-The \fB-s\fR option is mandatory and takes a full directory path.
-.sp
-If either or both of \fB-d\fR and \fB-r\fR are specified, they specify values
-associated with the share. \fB-d\fR provides a description string to document
-the share and \fB-r\fR provides a protocol-independent resource name. Resource
-names are not used by NFS at this time but can be specified. These names
-currently follow the same naming rules as group names.
-.sp
-The temporary option (\fB-t\fR) results in the share being shared but not
-stored in the configuration repository. This option is intended for shares that
-should not survive a reboot or server restart, or for testing purposes.
-Temporary shares are indicated in the \fBshow\fR subcommand output with an
-asterisk (\fB*\fR) preceding the share.
-.sp
-If \fIsharepath\fR is a ZFS path and that path is added to the \fBzfs\fR group,
-\fBsharemgr\fR creates a new ZFS subgroup; the new share is added to that
-subgroup. Any ZFS sub-filesystems under the ZFS filesystem designated by
-\fIsharepath\fR will inherit the shared status of \fIsharepath\fR.
-.sp
-The effect of the \fBadd-share\fR subcommand on a ZFS dataset is determined by
-the values of the \fBsharesmb\fR and \fBsharenfs\fR properties of that dataset.
-.sp
-See \fBzfs\fR(1M) for a description of the \fBsharesmb\fR and \fBsharenfs\fR
-properties.
-.sp
-The following are examples of the \fBadd-share\fR subcommand.
-.sp
-.in +2
-.nf
-# \fBsharemgr add-share -s /export/home/home0 -d "home \e
-directory set 0" -r HOME0 mygroup\fR
-
-# \fBsharemgr add-share -s /export/home/home1 -d "home \e
-directory set 1" -r HOME1 mygroup\fR
-.fi
-.in -2
-.sp
-
-The preceding commands add \fB/export/home/home0\fR and
-\fB/export/home/home1\fR to the group \fBmygroup\fR. A descriptive comment and
-a resource name are included.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmove-share\fR \fB[-nvh] -s \fIsharepath\fR \fIdestination-group\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Move the specified share from the group it is currently in to the specified
-destination group. The \fBmove-share\fR subcommand does not create a group. A
-specified group must exist for the command to succeed.
-.sp
-The following is an example of this subcommand.
-.sp
-.in +2
-.nf
-# \fBsharemgr move-share -s /export/home/home1 newgroup\fR
-.fi
-.in -2
-.sp
-
-Assuming \fB/export/home/home1\fR is in the group \fBmygroup\fR, the preceding
-command moves \fB/export/home/home1\fR to the group \fBnewgroup\fR and unshares
-and then reshares the directory with the properties associated with
-\fBnewgroup\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBremove-share\fR \fB[-fnvh] -s \fIsharepath\fR \fIgroup\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Remove the specified share from the specified group. The force (\fB-f\fR)
-option forces the share to be removed even if it is busy.
-.sp
-You must specify the full path for \fIsharepath\fR. For group, use the subgroup
-as displayed in the output of the \fBsharemgr show\fR command. Note that if
-there are subshares that were created by inheritance, these will be removed,
-along with the parent shares.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBset-share\fR \fB[-nvh] [-r \fIresource\fR] [-d "\fIdescription text\fR"]
--s \fIsharepath\fR \fIgroup\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set or change the specified share's description and resource values. One use of
-\fBset-share\fR is to rename a resource. The syntax for this use of the
-subcommand is:
-.sp
-.in +2
-.nf
-# \fBsharemgr set-share -r \fIcurrent_name\fR=\fInew_name\fR -s \fIsharepath\fR \fIgroup\fR\fR
-.fi
-.in -2
-.sp
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBenable\fR \fB[-nvh] [\fIgroup\fR... | -a]\fR\fR
-.ad
-.sp .6
-.RS 4n
-Enable the specified group(s), or (with \fB-a\fR) all groups, and start sharing
-the contained shares. This state persists across reboots.
-.sp
-An enabled group will be shared whenever the corresponding SMF service instance
-is enabled. \fBsharemgr\fR will start the SMF service instance if it is not
-currently online.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdisable\fR \fB[-nvh] [\fIgroup\fR... | -a]\fR\fR
-.ad
-.sp .6
-.RS 4n
-Disable the specified group(s), or (with \fB-a\fR) all groups, and unshare the
-shares that they contain. This state persists across reboots.
-.sp
-A disabled group will not be shared even if the corresponding SMF service
-instance is online. This feature is useful when you do not want a group of
-shares to be started at boot time.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBstart\fR \fB[-vh] [-P \fIproto\fR] [\fIgroup\fR... | -a]\fR\fR
-.ad
-.sp .6
-.RS 4n
-Start the specified group, or (with \fB-a\fR) all groups. The \fBstart\fR
-subcommand is similar to \fBenable\fR in that all shares are started, but
-\fBstart\fR works only on groups that are enabled. \fBstart\fR is used by the
-SMF to start sharing at system boot.
-.sp
-A group will not start sharing if it is in the \fBsharemgr\fR \fBdisabled\fR
-state. However, the corresponding SMF service instance will be started.
-.sp
-Note that the \fBstart\fR subcommand is similar to the \fBshareall\fR(1M)
-command in that it starts up only the configured shares. That is, the enabled
-shares will start being shared, but the configuration state is left the same.
-The command:
-.sp
-.in +2
-.nf
-# \fBsharemgr start -a\fR
-.fi
-.in -2
-.sp
-
-\&...is equivalent to:
-.sp
-.in +2
-.nf
-# \fBshareall\fR
-.fi
-.in -2
-.sp
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBstop\fR \fB[-vh] [-P \fIproto\fR] [\fIgroup\fR... | -a]\fR\fR
-.ad
-.sp .6
-.RS 4n
-Stop the specified group, or (with \fB-a\fR) all groups. The \fBstop\fR
-subcommand is similar to \fBdisable\fR in that all shares are no longer shared,
-but it works only on groups that are enabled. \fBstop\fR is used by the SMF to
-stop sharing at system shutdown.
-.sp
-Note that the \fBstop\fR subcommand is similar to the \fBunshareall\fR(1M)
-command in that all active shares are unshared, but the configuration is left
-the same. That is, the shares are stopped but the service instances are left
-enabled. The command:
-.sp
-.in +2
-.nf
-# \fBsharemgr stop -a\fR
-.fi
-.in -2
-.sp
-
-\&...is equivalent to:
-.sp
-.in +2
-.nf
-# \fBunshareall\fR
-.fi
-.in -2
-.sp
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBshare\fR \fB[-F \fIfstype\fR] [-p] [-o \fIoptionlist\fR] [-d
-\fIdescription\fR] [\fIpathname\fR [\fIresourcename\fR]]\fR\fR
-.ad
-.sp .6
-.RS 4n
-Shares the specified path in the \fBdefault\fR share group. This subcommand
-implements the \fBshare\fR(1M) functionality. Shares that are shared in this
-manner will be transient shares. Use of the \fB-p\fR option causes the shares
-to be persistent.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBunshare\fR \fB[-F \fIfstype\fR] [-p] [-o \fIoptionlist\fR]
-\fIsharepath\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Unshares the specified share. This subcommand implements the \fBunshare\fR(1M)
-functionality. By default, the \fBunshare\fR is temporary. The \fB-p\fR option
-is provided to remove the share from the configuration in a way that persists
-across reboots.
-.RE
-
-.SS "Supported Properties"
-Properties are protocol-specific. Currently, only the NFS and SMB protocols are
-supported. Properties have the following characteristics:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Values of type \fIboolean\fR take either \fBtrue\fR or \fBfalse\fR.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Values of type \fIvalue\fR take a numeric value.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Values of type \fIfile\fR take a file name and not a file path.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Values of type \fIaccess-list\fR are described in detail following the
-descriptions of the NFS properties.
-.RE
-.sp
-.LP
-The general properties supported for NFS are:
-.sp
-.ne 2
-.na
-\fB\fBabe=\fR\fIboolean\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set the access-based enumeration (ABE) policy for a share. When set to
-\fBtrue\fR, ABE filtering is enabled on this share and directory entries to
-which the requesting user has no access will be omitted from directory listings
-returned to the client. When set to \fBfalse\fR or not defined, ABE filtering
-will not be performed on this share. This property is not defined by default.
-.sp
-.ne 2
-.na
-\fB\fBdisabled\fR\fR
-.ad
-.sp .6
-.RS 4n
-Disable ABE for this share.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBenabled\fR\fR
-.ad
-.sp .6
-.RS 4n
-Enable ABE for this share.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBaclok=\fIboolean\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allows the NFS server to do access control for NFS Version 2 clients (running
-SunOS 2.4 or earlier). When \fBaclok\fR is set on the server, maximum access is
-given to all clients. For example, with \fBaclok\fR set, if anyone has read
-permissions, then everyone does. If \fBaclok\fR is not set, minimum access is
-given to all clients.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBad-container\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the AD container in which to publish shares.
-.sp
-The AD container is specified as a comma-separated list of attribute name-value
-pairs using the LDAP distinguished name (DN) or relative distinguished name
-(RDN) format. The DN or RDN must be specified in LDAP format using the
-\fBcn=\fR, \fBou=\fR, and \fBdc=\fR prefixes:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBcn\fR represents the common name
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBou\fR represents the organizational unit
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBdc\fR represents the domain component
-.RE
-\fBcn=\fR, \fBou=\fR and \fBdc=\fR are attribute types. The attribute type used
-to describe an object's RDN is called the naming attribute, which, for ADS,
-includes the following object classes:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBcn\fR for the \fBuser\fR object class
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBou\fR for the organizational unit (\fBOU\fR) object class
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBdc\fR for the \fBdomainDns\fR object class
-.RE
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBanon=\fIuid\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set \fIuid\fR to be the effective user ID of unknown users. By default, unknown
-users are given the effective user ID \fBUID_NOBODY\fR. If uid is set to
-\fB-1\fR, access is denied.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcatia=\fIboolean\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-CATIA V4 uses characters in file names that are considered to be invalid by
-Windows. CATIA V5 is available on Windows. A CATIA V4 file could be
-inaccessible to Windows clients if the file name contains any of the characters
-that are considered illegal in Windows. By default, CATIA character
-substitution is not performed.
-.sp
-If the \fBcatia\fR property is set to true, the following character
-substitution is applied to file names.
-.sp
-.in +2
-.nf
-CATIA CATIA
-V4 UNIX V5 Windows
- " \e250 0x00a8 Dieresis
- * \e244 0x00a4 Currency Sign
- / \e370 0x00f8 Latin Small Letter O with Stroke
- : \e367 0x00f7 Division Sign
- < \e253 0x00ab Left-Pointing Double Angle Quotation Mark
- > \e273 0x00bb Right-Pointing Double Angle Quotation Mark
- ? \e277 0x00bf Inverted Question Mark
- \e \e377 0x00ff Latin Small Letter Y with Dieresis
- | \e246 0x00a6 Broken Bar
-.fi
-.in -2
-.sp
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcksum=\fIcksumlist\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set the share to attempt to use end-to-end checksums. The value \fIcksumlist\fR
-specifies the checksum algorithms that should be used.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcsc=\fR\fIvalue\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set the client-side caching policy for a share. Client-side caching is a client
-feature and offline files are managed entirely by the clients.
-.sp
-.LP
-The following are valid values for the \fBcsc\fR property:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBmanual\fR \fB-\fR Clients are permitted to cache files from the specified
-share for offline use as requested by users. However, automatic file-by-file
-reintegration is not permitted. \fBmanual\fR is the default value.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBauto\fR \fB-\fR Clients are permitted to automatically cache files from the
-specified share for offline use and file-by-file reintegration is permitted.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBvdo\fR \fB-\fR Clients are permitted to automatically cache files from the
-specified share for offline use, file-by-file reintegration is permitted, and
-clients are permitted to work from their local cache even while offline.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBdisabled\fR \fB-\fR Client-side caching is not permitted for this share.
-.RE
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBguestok=\fR\fIboolean\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set the guest access policy for the share. When set to \fBtrue\fR guest access
-is allowed on this share. When set to \fBfalse\fR or not defined guest access
-is not allowed on this share. This property is not defined by default.
-.sp
-An \fBidmap\fR(1M) name-based rule can be used to map \fBguest\fR to any local
-username, such as \fBguest\fR or \fBnobody\fR. If the local account has a
-password in \fB/var/smb/smbpasswd\fR the guest connection will be authenticated
-against that password. Any connection made using an account that maps to the
-local guest account will be treated as a guest connection.
-.sp
-Example name-based rule:
-.sp
-.in +2
-.nf
-# \fBidmap add winname:Guest unixuser:guest\fR
-.fi
-.in -2
-.sp
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBindex=\fIfile\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Load \fIfile\fR rather than a listing of the directory containing this file
-when the directory is referenced by an NFS URL.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBlog=\fItag\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Enables NFS server logging for the specified system. The optional tag
-determines the location of the related log files. The tag is defined in
-\fBetc/nfs/nfslog.conf\fR. If no tag is specified, the default values
-associated with the global tag in \fBetc/nfs/nfslog.conf\fR is used. Support of
-NFS server logging is available only for NFS Version 2 and Version 3 requests.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnosub=\fIboolean\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Prevents clients from mounting subdirectories of shared directories. For
-example, if \fB/export\fR is shared with the \fBnosub\fR option on server
-\fBwool\fR then an NFS client cannot do:
-.sp
-.in +2
-.nf
-# \fBmount -F nfs wool:/export/home/mnt\fR
-.fi
-.in -2
-.sp
-
-NFS Version 4 does not use the MOUNT protocol. The \fBnosub\fR option applies
-only to NFS Version 2 and Version 3 requests.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnosuid=\fIboolean\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-By default, clients are allowed to create files on a shared file system with
-the \fBsetuid\fR or \fBsetgid\fR mode enabled. Specifying \fBnosuid\fR causes
-the server file system to silently ignore any attempt to enable the
-\fBsetuid\fR or \fBsetgid\fR mode bits.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpublic=\fIboolean\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Moves the location of the public file handle from root (\fB/\fR) to the
-exported directory for WebNFS-enabled browsers and clients. This option does
-not enable WebNFS service; WebNFS is always on. Only one file system per server
-can have the \fBpublic\fR property. You can apply the \fBpublic\fR property
-only to a share and not to a group.
-.RE
-
-.sp
-.LP
-NFS also supports negotiated optionsets for supported security modes. The
-security modes are documented in \fBnfssec\fR(5). The properties supported for
-these optionsets are:
-.sp
-.ne 2
-.na
-\fB\fIcharset\fR=\fIaccess-list\fR\fR
-.ad
-.sp .6
-.RS 4n
-Where \fIcharset\fR is one of: \fBeuc-cn\fR, \fBeuc-jp\fR, \fBeuc-jpms\fR,
-\fBeuc-kr\fR, \fBeuc-tw\fR, \fBiso8859-1\fR, \fBiso8859-2\fR, \fBiso8859-5\fR,
-\fBiso8859-6\fR, \fBiso8859-7\fR, \fBiso8859-8\fR, \fBiso8859-9\fR,
-\fBiso8859-13\fR, \fBiso8859-15\fR, \fBkoi8-r\fR.
-.sp
-Clients that match the \fIaccess-list\fR for one of these properties will be
-assumed to be using that character set and file and path names will be
-converted to UTF-8 for the server.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBro=\fIaccess-list\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sharing is read-only to the clients listed in \fIaccess-list\fR; overrides the
-\fBrw\fR suboption for the clients specified. See the description of
-\fIaccess-list\fR below.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrw=\fIaccess-list\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sharing is read-write to the clients listed in \fIaccess-list\fR; overrides the
-\fBro\fR suboption for the clients specified. See the description of
-\fIaccess-list\fR below.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnone=\fIaccess-list\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Access is not allowed to any client that matches the access list. The exception
-is when the access list is an asterisk (\fB*\fR), in which case \fBro\fR or
-\fBrw\fR can override \fBnone\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBroot=\fIaccess-list\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Only root users from the hosts specified in \fIaccess-list\fR have root access.
-See details on \fIaccess-list\fR below. By default, no host has root access, so
-root users are mapped to an anonymous user ID (see the \fBanon=uid\fR option
-described above). Netgroups can be used if the file system shared is using UNIX
-authentication (\fBAUTH_SYS\fR).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBroot_mapping=\fIuid\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-For a client that is allowed root access, map the root UID to the specified
-user id.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBwindow=\fIvalue\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-When sharing with \fBsec=dh\fR (see \fBnfssec\fR(5)), set the maximum lifetime
-(in seconds) of the RPC request's credential (in the authentication header)
-that the NFS server allows. If a credential arrives with a lifetime larger than
-what is allowed, the NFS server rejects the request. The default value is 30000
-seconds (8.3 hours). This property is ignored for security modes other than
-\fBdh\fR.
-.RE
-
-.sp
-.LP
-The general properties supported for SMB are:
-.sp
-.ne 2
-.na
-\fB\fBencrypt=\fR\fIstring\fR\fR
-.ad
-.sp .6
-.RS 4n
-Controls SMB3 per-share encryption. This is similar to the global smbd/encrypt
-option. For requests on a particular share, the server's behavior is controlled
-by the stricter of this option and smbd/encrypt.
-.sp
-When set to \fBdisabled\fR, the server will not ask clients to encrypt requests.
-When set to \fBenabled\fR, the server will ask clients to encrypt requests,
-but will not require that they do so. Any message than can be encrypted
-will be encrypted.
-When set to \fBrequired\fR, the server will deny access to or disconnect
-any client that does not support encryption or fails to encrypt requests
-that they should.
-.sp
-In other words, the \fBenabled\fR behavior is that any message that CAN
-be encrypted SHOULD be encrypted, while the \fBrequired\fR behavior is that any
-message that CAN be encrypted MUST be encrypted.
-.sp
-This property is not defined by default.
-.sp
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBro=\fIaccess-list\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sharing is read-only to the clients listed in \fIaccess-list\fR; overrides the
-\fBrw\fR suboption for the clients specified. See the description of
-\fIaccess-list\fR below.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrw=\fIaccess-list\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sharing is read-write to the clients listed in \fIaccess-list\fR; overrides the
-\fBro\fR suboption for the clients specified. See the description of
-\fIaccess-list\fR below.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnone=\fIaccess-list\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Access is not allowed to any client that matches the access list. The exception
-is when the access list is an asterisk (\fB*\fR), in which case \fBro\fR or
-\fBrw\fR can override \fBnone\fR.
-.RE
-
-.SS "Access List Argument"
-The \fIaccess-list\fR argument is either the string \fB"*"\fR to represent all
-hosts or a colon-separated list whose components can be any number of the
-following:
-.sp
-.ne 2
-.na
-\fB\fIhostname\fR\fR
-.ad
-.sp .6
-.RS 4n
-The name of a host. With a server configured for DNS or LDAP naming in the
-\fBnsswitch.conf\fR(4) \fBhosts\fR entry, a hostname must be represented as a
-fully qualified DNS or LDAP name.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fInetgroup\fR\fR
-.ad
-.sp .6
-.RS 4n
-A \fInetgroup\fR contains a number of hostnames. With a server configured for
-DNS or LDAP naming in the \fBnsswitch.conf\fR(4) \fBhosts\fR entry, any
-hostname in a netgroup must be represented as a fully qualified DNS or LDAP
-name.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIdomainname\fR.\fIsuffix\fR\fR
-.ad
-.sp .6
-.RS 4n
-To use domain membership the server must use DNS or LDAP, rather than, for
-example, NIS, to resolve hostnames to IP addresses. That is, the
-\fBhosts\fR entry in the \fBnsswitch.conf\fR(4) must specify \fBdns\fR or
-\fBldap\fR ahead of \fBnis\fR, because only DNS and LDAP
-return the full domain name of the host. Other name services, such as NIS,
-cannot be used to resolve hostnames on the server because, when mapping
-an IP address to a hostname, they do not return domain information. For
-example, for the IP address 172.16.45.9:
-.sp
-.ne 2
-.na
-\fBNIS\fR
-.ad
-.sp .6
-.RS 4n
-Returns: \fBmyhost\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fBDNS or LDAP\fR
-.ad
-.sp .6
-.RS 4n
-Returns: \fBmyhost.mydomain.example.com\fR
-.RE
-
-The domain name suffix is distinguished from hostnames and netgroups by a
-prefixed dot. For example:
-.sp
-.in +2
-.nf
-rw=.mydomain.example.com
-.fi
-.in -2
-
-A single dot can be used to match a hostname with no suffix. For example, the
-specification:
-.sp
-.in +2
-.nf
-rw=.
-.fi
-.in -2
-
-\&...matches \fBmydomain\fR but not \fBmydomain.example.com\fR. This feature
-can be used to match hosts resolved through NIS rather than DNS and
-LDAP.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fInetwork\fR\fR
-.ad
-.sp .6
-.RS 4n
-The network or subnet component is preceded by an at-sign (\fB@\fR). It can be
-either a name or a dotted address. If a name, it is converted to a dotted
-address by \fBgetnetbyname\fR(3SOCKET). For example:
-.sp
-.in +2
-.nf
-=@mynet
-.fi
-.in -2
-
-\&...is equivalent to:
-.sp
-.in +2
-.nf
-=@172.16 or =@172.16.0.0
-.fi
-.in -2
-
-The network prefix assumes an octet-aligned netmask determined from the zeroth
-octet in the low-order part of the address up to and including the high-order
-octet, if you want to specify a single IP address. In the case where network
-prefixes are not byte-aligned, the syntax allows a mask length to be specified
-explicitly following a slash (\fB/\fR) delimiter. For example:
-.sp
-.in +2
-.nf
-=@theothernet/17 or =@172.16.132/22
-.fi
-.in -2
-
-\&...where the mask is the number of leftmost contiguous significant bits in
-the corresponding IP address.
-.RE
-
-.sp
-.LP
-A prefixed minus sign (\fB-\fR) denies access to a component of
-\fIaccess-list\fR. The list is searched sequentially until a match is found
-that either grants or denies access, or until the end of the list is reached.
-For example, if host \fBterra\fR is in the netgroup \fBengineering\fR, then:
-.sp
-.in +2
-.nf
-rw=-terra:engineering
-.fi
-.in -2
-
-.sp
-.LP
-\&...denies access to \fBterra\fR, but:
-.sp
-.in +2
-.nf
-rw=engineering:-terra
-.fi
-.in -2
-
-.sp
-.LP
-\&...grants access to \fBterra\fR.
-.SH EXIT STATUS
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 18n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB98\fR\fR
-.ad
-.RS 18n
-Service is offline and cannot be enabled (start only).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIother non-zero\fR\fR
-.ad
-.RS 18n
-Command failed.
-.RE
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/usr/include/libshare.h\fR\fR
-.ad
-.RS 27n
-Error codes used for exit status.
-.RE
-
-.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Committed
-.TE
-
-.SH SEE ALSO
-\fBidmap\fR(1M), \fBsharectl\fR(1M), \fBzfs\fR(1M), \fBattributes\fR(5),
-\fBnfssec\fR(5), \fBsmf\fR(5), \fBstandards\fR(5)
diff --git a/usr/src/man/man1m/showmount.1m b/usr/src/man/man1m/showmount.1m
deleted file mode 100644
index 4b7ba125f4..0000000000
--- a/usr/src/man/man1m/showmount.1m
+++ /dev/null
@@ -1,80 +0,0 @@
-'\" te
-.\" Copyright (c) 1997, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SHOWMOUNT 1M "Oct 26, 2004"
-.SH NAME
-showmount \- show remote mounts
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/showmount\fR [\fB-ade\fR] [\fIhostname\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBshowmount\fR lists the clients that have remotely mounted a filesystem from
-\fIhost\fR. This information is maintained by the \fBmountd\fR(1M) server on
-\fIhost\fR, and is saved across crashes in the file \fB/etc/rmtab\fR. The
-default value for \fIhost\fR is the value returned by \fBhostname\fR(1).
-.sp
-.LP
-The \fBshowmount\fR command does not display the names of NFS Version 4
-clients.
-.SH OPTIONS
-.sp
-.ne 2
-.na
-\fB\fB-a\fR\fR
-.ad
-.RS 6n
-Print all remote mounts in the format:
-.sp
-\fBhostname\fR\fB : directory\fR
-.sp
-where \fBhostname\fR is the name of the client, and \fBdirectory\fR is the root
-of the file system that has been mounted.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-d\fR\fR
-.ad
-.RS 6n
-List directories that have been remotely mounted by clients.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-e\fR\fR
-.ad
-.RS 6n
-Print the list of shared file systems.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/rmtab\fR\fR
-.ad
-.RS 14n
-
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBhostname\fR(1), \fBmountd\fR(1M), \fBattributes\fR(5)
-.sp
-.LP
-\fI\fR
-.SH BUGS
-.sp
-.LP
-If a client crashes, its entry will not be removed from the list of remote
-mounts on the server.
diff --git a/usr/src/man/man1m/shutdown.1m b/usr/src/man/man1m/shutdown.1m
deleted file mode 100644
index d44ab4aa84..0000000000
--- a/usr/src/man/man1m/shutdown.1m
+++ /dev/null
@@ -1,183 +0,0 @@
-'\" te
-.\" Copyright (c) 2001 Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SHUTDOWN 1M "May 9, 2001"
-.SH NAME
-shutdown \- shut down system, change system state
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/shutdown\fR [\fB-y\fR] [\fB-g\fR \fIgrace-period\fR] [\fB-i\fR \fIinit-state\fR]
- [\fImessage\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBshutdown\fR is executed by the super user to change the state of the
-machine. In most cases, it is used to change from the multi-user state (state
-2) to another state.
-.sp
-.LP
-By default, \fBshutdown\fR brings the system to a state where only the console
-has access to the operating system. This state is called single-user.
-.sp
-.LP
-Before starting to shut down daemons and killing processes, \fBshutdown\fR
-sends a warning message and, by default, a final message asking for
-confirmation. \fImessage\fR is a string that is sent out following the standard
-warning message "The system will be shut down in .\|.\|." If the string
-contains more than one word, it should be contained within single (\fB\&'\fR)
-or double (\fB"\fR) quotation marks.
-.sp
-.LP
-The warning message and the user provided \fImessage\fR are output when there
-are 7200, 3600, 1800, 1200, 600, 300, 120, 60, and 30 seconds remaining before
-\fBshutdown\fR begins. See \fBEXAMPLES\fR.
-.sp
-.LP
-System state definitions are:
-.sp
-.ne 2
-.na
-\fBstate 0\fR
-.ad
-.RS 14n
-Stop the operating system.
-.RE
-
-.sp
-.ne 2
-.na
-\fBstate 1\fR
-.ad
-.RS 14n
-State 1 is referred to as the administrative state. In state 1 file systems
-required for multi-user operations are mounted, and logins requiring access to
-multi-user file systems can be used. When the system comes up from firmware
-mode into state 1, only the console is active and other multi-user (state 2)
-services are unavailable. Note that not all user processes are stopped when
-transitioning from multi-user state to state 1.
-.RE
-
-.sp
-.ne 2
-.na
-\fBstate s, S\fR
-.ad
-.RS 14n
-State s (or S) is referred to as the single-user state. All user processes are
-stopped on transitions to this state. In the single-user state, file systems
-required for multi-user logins are unmounted and the system can only be
-accessed through the console. Logins requiring access to multi-user file
-systems cannot be used.
-.RE
-
-.sp
-.ne 2
-.na
-\fBstate 5\fR
-.ad
-.RS 14n
-Shut the machine down so that it is safe to remove the power. Have the machine
-remove power, if possible. The \fBrc0\fR procedure is called to perform this
-task.
-.RE
-
-.sp
-.ne 2
-.na
-\fBstate 6\fR
-.ad
-.RS 14n
-Stop the operating system and reboot to the state defined by the
-\fBinitdefault\fR entry in \fB/etc/inittab\fR. The \fBrc6\fR procedure is
-called to perform this task.
-.RE
-
-.SH OPTIONS
-.sp
-.ne 2
-.na
-\fB\fB-y\fR\fR
-.ad
-.RS 19n
-Pre-answer the confirmation question so the command can be run without user
-intervention.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-g\fR\fI grace-period\fR\fR
-.ad
-.RS 19n
-Allow the super user to change the number of seconds from the 60-second
-default.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-i\fR\fI init-state\fR\fR
-.ad
-.RS 19n
-If there are warnings, \fIinit-state\fR specifies the state \fBinit\fR is to be
-in. By default, system state `\fBs\fR' is used.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRUsing \fBshutdown\fR
-.sp
-.LP
-In the following example, \fBshutdown\fR is being executed on host \fBfoo\fR
-and is scheduled in 120 seconds. The warning message is output 2 minutes, 1
-minute, and 30 seconds before the final confirmation message.
-
-.sp
-.in +2
-.nf
-example# shutdown -i S -g 120 "===== disk replacement ====="
-Shutdown started. Tue Jun 7 14:51:40 PDT 1994
-
-Broadcast Message from root (pts/1) on foo Tue Jun 7 14:51:41.\|.\|.
-The system will be shut down in 2 minutes
-===== disk replacement =====
-Broadcast Message from root (pts/1) on foo Tue Jun 7 14:52:41.\|.\|.
-The system will be shut down in 1 minutes
-===== disk replacement =====
-Broadcast Message from root (pts/1) on foo Tue Jun 7 14:53:41.\|.\|.
-The system will be shut down in 30 seconds
-===== disk replacement =====
-Do you want to continue? (y or n):
-.fi
-.in -2
-.sp
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/inittab\fR\fR
-.ad
-.RS 16n
-controls process dispatching by \fBinit\fR
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBboot\fR(1M), \fBhalt\fR(1M), \fBinit\fR(1M), \fBkillall\fR(1M),
-\fBreboot\fR(1M), \fBufsdump\fR(1M), \fBinit.d\fR(4), \fBinittab\fR(4),
-\fBnologin\fR(4), \fBattributes\fR(5)
-.SH NOTES
-.sp
-.LP
-When a system transitions down to the \fBS\fR or \fBs\fR state, the
-\fB/etc/nologin\fR file (see \fBnologin\fR(4)) is created. Upon subsequent
-transition to state 2 (multi-user state), this file is removed by a script in
-the \fB/etc/rc2.d\fR directory.
diff --git a/usr/src/man/man1m/slpd.1m b/usr/src/man/man1m/slpd.1m
deleted file mode 100644
index a17acdd96d..0000000000
--- a/usr/src/man/man1m/slpd.1m
+++ /dev/null
@@ -1,199 +0,0 @@
-'\" te
-.\" Copyright (C) 2004, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SLPD 1M "Aug 23, 2004"
-.SH NAME
-slpd \- Service Location Protocol Daemon
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/inet/slpd\fR [\fB-f\fR \fIconfiguration-file\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBslpd\fR daemon provides common server functionality for the Service
-Location Protocol ("\fBSLP\fR") versions 1 and 2, as defined by \fBIETF\fR in
-\fIRFC 2165\fR and \fIRFC 2608\fR. \fBSLP\fR provides a scalable framework for
-the discovery and selection of network services.
-.sp
-.LP
-\fBslpd\fR provides the following framework services:
-.sp
-.ne 2
-.na
-\fBDirectory Agent\fR
-.ad
-.sp .6
-.RS 4n
-This service automatically caches service advertisements from service agents to
-provide them to user agents, and makes directory agent advertisements of its
-services. This service is optional. \fBslpd\fR does not provide directory agent
-service by default. Directory agents are not databases, and they do not need to
-be maintained.
-.RE
-
-.sp
-.ne 2
-.na
-\fBService Agent Server\fR
-.ad
-.sp .6
-.RS 4n
-All service agents on the local host register and deregister with this server.
-This service responds to all requests for services, and forwards registrations
-to directory agents. By default, \fBslpd\fR is a service agent server.
-.RE
-
-.sp
-.ne 2
-.na
-\fBPassive Directory Agent Discovery \fR
-.ad
-.sp .6
-.RS 4n
-This service listens for directory agent advertisements and maintains a table
-of active directory agents. When a user agent wishes to discover a directory
-agent, it can simply query \fBslpd\fR, obviating the need to perform discovery
-by means of multicast. By default, \fBslpd\fR performs this service.
-.RE
-
-.sp
-.ne 2
-.na
-\fBProxy Registration\fR
-.ad
-.sp .6
-.RS 4n
-This service can act as a proxy service agent for services that cannot register
-themselves. \fBslpd\fR reads the proxy registration file for information on
-services it is to proxy. By default, no services are registered by proxy.
-.RE
-
-.sp
-.LP
-All configuration options are available from the configuration file. \fBslpd\fR
-reads its configuration file upon startup.
-.sp
-.LP
-Stop and start the slpd daemon using \fBsvcadm\fR(1M). Use the command
-\fBsvcadm enable network/slp\fR to start the slpd daemon. Use the command
-\fBsvcadm disable network/slp\fR to stop it.
-.sp
-.LP
-The file \fB/etc/inet/slp.conf\fR must exist before the \fBslp\fR service can
-start the daemon. Only the example file \fB/etc/inet/slp.conf.example\fR is
-present by default. To enable \fBSLP\fR, copy \fB/etc/inet/slp.conf.example\fR
-to \fB/etc/inet/slp.conf\fR.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-f\fR \fIconfiguration-file\fR\fR
-.ad
-.RS 25n
-Specify an alternate configuration file
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRStopping the \fBslpd\fR daemon
-.sp
-.LP
-The following command stops the \fBslpd\fR daemon:
-
-.sp
-.in +2
-.nf
-example# svcadm disable network/slp
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRRestarting the \fBslpd\fR daemon
-.sp
-.LP
-The following command restarts the \fBslpd\fR daemon:
-
-.sp
-.in +2
-.nf
-example# svcadm restart network/slp
-.fi
-.in -2
-.sp
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/inet/slp.conf\fR\fR
-.ad
-.RS 22n
-The default configuration file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBslpd.reg\fR\fR
-.ad
-.RS 22n
-The proxy registration file
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-CSI Enabled
-_
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBsvcs\fR(1), \fBsvcadm\fR(1M), \fBslp_api\fR(3SLP), \fBslp.conf\fR(4),
-\fBslpd.reg\fR(4), \fBattributes\fR(5), \fBsmf\fR(5), \fBslp\fR(7P)
-.sp
-.LP
-\fI\fR
-.sp
-.LP
-Guttman, E., Perkins, C., Veizades, J., and Day, M., \fIRFC 2608, Service
-Location Protocol, Version 2\fR, The Internet Society, June 1999.
-.SH NOTES
-.sp
-.LP
-The \fBslpd\fR service is managed by the service management facility,
-\fBsmf\fR(5), under the service identifier:
-.sp
-.in +2
-.nf
-svc:/network/slp
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Administrative actions on this service, such as enabling, disabling, or
-requesting restart, can be performed using \fBsvcadm\fR(1M). The service's
-status can be queried using the \fBsvcs\fR(1) command.
diff --git a/usr/src/man/man1m/smbadm.1m b/usr/src/man/man1m/smbadm.1m
deleted file mode 100644
index 10da14181f..0000000000
--- a/usr/src/man/man1m/smbadm.1m
+++ /dev/null
@@ -1,461 +0,0 @@
-.\"
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.\"
-.\"
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 2019 Nexenta by DDN, Inc. All rights reserved.
-.\"
-.Dd June 6, 2019
-.Dt SMBADM 1M
-.Os
-.Sh NAME
-.Nm smbadm
-.Nd configure and manage SMB local groups and users, and manage domain
-membership
-.Sh SYNOPSIS
-.Nm
-.Cm create
-.Op Fl d Ar description
-.Ar group
-.Nm
-.Cm delete
-.Ar group
-.Nm
-.Cm rename
-.Ar group new-group
-.Nm
-.Cm show
-.Op Fl mp
-.Op Ar group
-.Nm
-.Cm get
-.Oo Fl p Ar property Oc Ns ...
-.Ar group
-.Nm
-.Cm set
-.Fl p Ar property Ns = Ns Ar value
-.Oo Fl p Ar property Ns = Ns Ar value Oc Ns ...
-.Ar group
-.Nm
-.Cm add-member
-.Fl m Ar member Oo Fl m Ar member Oc Ns ...
-.Ar group
-.Nm
-.Cm remove-member
-.Fl m Ar member Oo Fl m Ar member Oc Ns ...
-.Ar group
-.Nm
-.Cm delete-user
-.Ar username
-.Nm
-.Cm disable-user
-.Ar username
-.Nm
-.Cm enable-user
-.Ar username
-.Nm
-.Cm join
-.Op Fl y
-.Fl u Ar username
-.Ar domain
-.Nm
-.Cm join
-.Op Fl y
-.Fl w Ar workgroup
-.Nm
-.Cm list
-.Nm
-.Cm lookup
-.Ar account-name Oo Ar account-name Oc Ns ...
-.Sh DESCRIPTION
-The
-.Nm
-command is used to configure SMB local groups and users, and to manage domain
-membership.
-You can also use the
-.Nm
-command to enable or disable SMB password generation for individual local users.
-.Pp
-SMB local groups can be used when Windows accounts must be members of some local
-groups and when Windows style privileges must be granted.
-System local groups cannot provide these functions.
-.Pp
-There are two types of local groups: user defined and built-in.
-Built-in local groups are predefined local groups to support common
-administration tasks.
-.Pp
-In order to provide proper identity mapping between SMB local groups and
-system groups, a SMB local group must have a corresponding system group.
-This requirement has two consequences: first, the group name must conform to the
-intersection of the Windows and system group name rules.
-Thus, a SMB local group name can be up to eight (8) characters long and contain
-only lowercase characters and numbers.
-Second, a system local group has to be created before a SMB local group can
-be created.
-.Pp
-Built-in groups are standard Windows groups and are predefined by the SMB
-service.
-The built-in groups cannot be added, removed, or renamed, and these groups do
-not follow the SMB local group naming conventions.
-.Pp
-When the SMB server is started, the following built-in groups are available:
-.Bl -tag -width "Backup Operators"
-.It Sy Administrators
-Group members can administer the system.
-.It Sy Backup Operators
-Group members can bypass file access controls to back up and restore files.
-.It Sy Power Users
-Group members can share directories.
-.El
-.Pp
-System local users must have an SMB password for authentication and to gain
-access to SMB resources.
-This password is created by using the
-.Xr passwd 1
-command when the
-.Sy pam_smb_password
-module is added to the system's PAM configuration.
-See the
-.Xr pam_smb_passwd 5
-man page.
-.Pp
-The
-.Cm disable-user
-and
-.Cm enable-user
-subcommands control SMB password-generation for a specified local user.
-When disabled, the user is prevented from connecting to the SMB service.
-By default, SMB password-generation is enabled for all local users.
-.Pp
-To reenable a disabled user, you must use the
-.Cm enable-user
-subcommand and then reset the user's password by using the
-.Nm passwd
-command.
-The
-.Pa pam_smb_passwd.so.1
-module must be added to the system's PAM configuration to generate an SMB
-password.
-.Ss Escaping Backslash Character
-For the
-.Cm add-member ,
-.Cm remove-member ,
-and
-.Cm join
-.Po with
-.Fl u
-.Pc
-subcommands, the backslash character
-.Pq Qq \e
-is a valid separator between member or user names and domain names.
-The backslash character is a shell special character and must be quoted.
-For example, you might escape the backslash character with another backslash
-character:
-.Ar domain Ns \e\e Ns Ar username .
-For more information about handling shell special characters, see the man page
-for your shell.
-.Sh OPERANDS
-The
-.Nm
-command uses the following operands:
-.Bl -tag -width "username"
-.It Ar domain
-Specifies the name of an existing Windows domain to join.
-.It Ar group
-Specifies the name of the SMB local group.
-.It Ar username
-Specifies the name of a system local user.
-.El
-.Sh SUBCOMMANDS
-The
-.Nm
-command includes these subcommands:
-.Bl -tag -width Ds
-.It Xo
-.Cm create
-.Op Fl d Ar description
-.Ar group
-.Xc
-Creates a SMB local group with the specified name.
-You can optionally specify a description of the group by using the
-.Fl d
-option.
-.It Xo
-.Cm delete
-.Ar group
-.Xc
-Deletes the specified SMB local group.
-The built-in groups cannot be deleted.
-.It Xo
-.Cm rename
-.Ar group new-group
-.Xc
-Renames the specified SMB local group.
-The group must already exist.
-The built-in groups cannot be renamed.
-.It Xo
-.Cm show
-.Op Fl mp
-.Op Ar group
-.Xc
-Shows information about the specified SMB local group or groups.
-If no group is specified, information is shown for all groups.
-If the
-.Fl m
-option is specified, the group members are also shown.
-If the
-.Fl p
-option is specified, the group privileges are also shown.
-.It Xo
-.Cm get
-.Oo Fl p Ar property Ns = Ns Ar value Oc Ns ...
-.Ar group
-.Xc
-Retrieves property values for the specified group.
-If no property is specified, all property values are shown.
-.It Xo
-.Cm set
-.Fl p Ar property Ns = Ns Ar value
-.Oo Fl p Ar property Ns = Ns Ar value Oc Ns ...
-.Ar group
-.Xc
-Sets configuration properties for a SMB local group.
-The description and the privileges for the built-in groups cannot be changed.
-.Pp
-The
-.Fl p Ar property Ns = Ns Ar value
-option specifies the list of properties to be set on the specified group.
-.Pp
-The group-related properties are as follows:
-.Bl -tag -width Ds
-.It Cm backup Ns = Ns Cm on Ns | Ns Cm off
-Specifies whether members of the SMB local group can bypass file access controls
-to back up file system objects.
-.It Cm description Ns = Ns Ar description-text
-Specifies a text description for the SMB local group.
-.It Cm restore Ns = Ns Cm on Ns | Ns Cm off
-Specifies whether members of the SMB local group can bypass file access controls
-to restore file system objects.
-.It Cm take-ownership Ns = Ns Cm on Ns | Ns Cm off
-Specifies whether members of the SMB local group can take ownership of file
-system objects.
-.It Cm bypass-read Ns = Ns Cm on Ns | Ns Cm off
-Specifies whether members of the SMB local group can always bypass Read access controls.
-.It Cm bypass-write Ns = Ns Cm on Ns | Ns Cm off
-Specifies whether members of the SMB local group can always bypass Write and Delete access controls.
-.El
-.It Xo
-.Cm add-member
-.Fl m Ar member Oo Fl m Ar member Oc Ns ...
-.Ar group
-.Xc
-Adds the specified member to the specified SMB local group.
-The
-.Fl m Ar member
-option specifies the name of a SMB local group member.
-The member name must include an existing user name and an optional domain name.
-.Pp
-Specify the member name in either of the following formats:
-.Bd -literal -offset indent
-[domain\e]username
-[domain/]username
-.Ed
-.Pp
-For example, a valid member name might be
-.Sy sales\eterry
-or
-.Sy sales/terry ,
-where
-.Sy sales
-is the Windows domain name and
-.Sy terry
-is the name of a user in the
-.Sy sales
-domain.
-.It Xo
-.Cm remove-member
-.Fl m Ar member Oo Fl m Ar member Oc Ns ...
-.Ar group
-.Xc
-Removes the specified member from the specified SMB local group.
-The
-.Fl m Ar member
-option specifies the name of a SMB local group member.
-The member name must include an existing user name and an optional domain name.
-.Pp
-Specify the member name in either of the following formats:
-.Bd -literal -offset indent
-[domain\e]username
-[domain/]username
-.Ed
-.Pp
-For example, a valid member name might be
-.Sy sales\eterry
-or
-.Sy sales/terry ,
-where
-.Sy sales
-is the Windows domain name and
-.Sy terry
-is the name of a user in the
-.Sy sales
-domain.
-.It Xo
-.Cm delete-user
-.Ar username
-.Xc
-Deletes SMB password for the specified local user effectively preventing the
-access by means of the SMB service.
-Use
-.Nm passwd
-command to create the SMB password and re-enable access.
-.It Xo
-.Cm disable-user
-.Ar username
-.Xc
-Disables SMB password-generation capabilities for the specified local user
-effectively preventing access by means of the SMB service.
-When a local user account is disabled, you cannot use the
-.Nm passwd
-command to modify the user's SMB password until the user account is re-enabled.
-.It Xo
-.Cm enable-user
-.Ar username
-.Xc
-Enables SMB password-generation capabilities for the specified local user and
-re-enables access.
-After the password-generation capabilities are re-enabled, use the
-.Nm passwd
-command to generate the SMB password for the local user.
-.Pp
-The
-.Nm passwd
-command manages both the system password and SMB password for this user if the
-.Pa pam_smb_passwd
-module has been added to the system's PAM configuration.
-.It Xo
-.Cm join
-.Op Fl y
-.Fl u Ar username
-.Ar domain
-.Xc
-Joins a Windows domain.
-.Pp
-An authenticated user account is required to join a domain, so you must specify
-the Windows administrative user name with the
-.Fl u
-option.
-If the password is not specified on the command line, the user is prompted for
-it.
-This user should be the domain administrator or any user who has administrative
-privileges for the target domain.
-.Pp
-.Ar username
-and
-.Ar domain
-can be entered in any of the following formats:
-.Bd -literal -offset indent
-username[+password] domain
-domain\eusername[+password]
-domain/username[+password]
-username@domain
-.Ed
-.Pp
-\&...where
-.Ar domain
-can be the NetBIOS or DNS domain name.
-.Pp
-If a machine trust account for the system already exists on a domain controller,
-any authenticated user account can be used when joining the domain.
-However, if the machine trust account does
-.Em not
-already exist, an account that has administrative privileges on the domain is
-required to join the domain.
-Specifying
-.Fl y
-will bypass the SMB service restart prompt.
-.It Xo
-.Cm join
-.Op Fl y
-.Fl w Ar workgroup
-.Xc
-Joins a Windows workgroup.
-.Pp
-The default mode for the SMB service is workgroup mode, which uses the default
-workgroup name,
-.Qq WORKGROUP .
-.Pp
-The
-.Fl w Ar workgroup
-option specifies the name of the workgroup to join when using the
-.Cm join
-subcommand.
-Specifying
-.Fl y
-will bypass the SMB service restart prompt.
-.It Cm list
-Shows information about the current workgroup or domain.
-The information typically includes the workgroup name or the primary domain
-name.
-When in domain mode, the information includes domain controller names and
-trusted domain names.
-.Pp
-Each entry in the output is identified by one of the following tags:
-.Bl -tag -width "[*]"
-.It Sy [*]
-Primary domain
-.It Sy [.]
-Local domain
-.It Sy [-]
-Other domains
-.It Sy [+]
-Selected domain controller
-.El
-.It Xo
-.Cm lookup
-.Ar account-name Oo Ar account-name Oc Ns ...
-.Xc
-Lookup the SID for the given
-.Ar account-name ,
-or lookup the
-.Ar account-name
-for the given SID.
-This subcommand is primarily for diagnostic use, to confirm whether the server
-can lookup domain accounts and/or SIDs.
-.El
-.Sh EXIT STATUS
-.Ex -std
-.Sh INTERFACE STABILITY
-Utility name and options are
-.Sy Uncommitted .
-Utility output format is
-.Sy Not-An-Interface .
-.Sh SEE ALSO
-.Xr passwd 1 ,
-.Xr groupadd 1M ,
-.Xr idmap 1M ,
-.Xr idmapd 1M ,
-.Xr kclient 1M ,
-.Xr share 1M ,
-.Xr sharectl 1M ,
-.Xr sharemgr 1M ,
-.Xr smbd 1M ,
-.Xr smbstat 1M ,
-.Xr smb 4 ,
-.Xr smbautohome 4 ,
-.Xr attributes 5 ,
-.Xr pam_smb_passwd 5 ,
-.Xr smf 5
diff --git a/usr/src/man/man1m/smbd.1m b/usr/src/man/man1m/smbd.1m
deleted file mode 100644
index b0d37c4436..0000000000
--- a/usr/src/man/man1m/smbd.1m
+++ /dev/null
@@ -1,123 +0,0 @@
-'\" te
-.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SMBD 1M "Feb 5, 2008"
-.SH NAME
-smbd \- CIFS server daemon
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/smbsrv/smbd\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBsmbd\fR daemon handles \fBCIFS\fR/\fBSMB\fR requests from \fBCIFS\fR
-clients, such as Windows clients. Only processes with \fB{PRIV_SYS_SMB}\fR and
-sufficient privileges to write the \fB/var/run\fR directory can run this
-daemon.
-.sp
-.LP
-The \fBsmbd\fR daemon is automatically invoked by using the \fBsharemgr\fR
-command over all available transports. By default, \fBsmbd\fR starts over the
-NetBIOS-Over-TCP (\fBNBT\fR) and \fBTCP\fR transports.
-.sp
-.LP
-When \fBsmbd\fR is started over \fBNBT\fR, the following services are started:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The NetBIOS name service is started on \fBUDP\fR port 137.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The NetBIOS datagram service is started on \fBUDP\fR port 138.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The NetBIOS session service is started on \fBTCP\fR port 139.
-.RE
-.sp
-.LP
-When the \fBsmbd\fR daemon is started over TCP, the CIFS service is started on
-TCP port 445.
-.sp
-.LP
-Only one instance of \fBsmbd\fR may be running at a time.
-.SH EXIT STATUS
-.sp
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB0\fR
-.ad
-.RS 13n
-Daemon exited cleanly.
-.RE
-
-.sp
-.ne 2
-.na
-\fB95\fR
-.ad
-.RS 13n
-Daemon exited with a fatal error.
-.RE
-
-.sp
-.ne 2
-.na
-\fB96\fR
-.ad
-.RS 13n
-Daemon exited with a configuration error.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See the \fBattributes\fR(5) man page for descriptions of the following
-attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Uncommitted
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBps\fR(1), \fBsvcs\fR(1), \fBsharectl\fR(1M), \fBsharemgr\fR(1M),
-\fBsmbadm\fR(1M), \fBsmbstat\fR(1M), \fBsvcadm\fR(1M), \fBsmb\fR(4),
-\fBsmbautohome\fR(4), \fBsystem\fR(4), \fBattributes\fR(5), \fBsmf\fR(5)
-.SH NOTES
-.sp
-.LP
-Use the \fBsvcadm\fR command to perform administrative actions on the
-\fBsmbd\fR service, such as enabling, disabling, or restarting the service. Use
-the \fBsvcs\fR command to query the service status.
-.sp
-.LP
-The \fBsmbd\fR service is managed by the service management facility under the
-service identifier \fBsvc:/network/smb/server\fR.
-.sp
-.LP
-If the \fBsmbd\fR service is disabled, it will be enabled by the
-\fBsharemgr\fR(1M) command, unless its \fBauto_enable\fR property is set to
-false.
diff --git a/usr/src/man/man1m/smbiod.1m b/usr/src/man/man1m/smbiod.1m
deleted file mode 100644
index 783dd0adf6..0000000000
--- a/usr/src/man/man1m/smbiod.1m
+++ /dev/null
@@ -1,116 +0,0 @@
-'\" te
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SMBIOD 1M "Jul 7, 2009"
-.SH NAME
-smbiod \- SMB client I/O daemon
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/smbfs/smbiod\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBsmbiod\fR is a helper program that initiates an SMB reconnection, when
-needed.
-.sp
-.LP
-When a user runs an \fBsmbutil\fR or \fBmount_smbfs\fR command, an \fBsmbiod\fR
-process is started and continues to run until that user no longer has any SMB
-client connections. Only one \fBsmbiod\fR process runs for each user that has
-SMB client connections.
-.sp
-.LP
-Each \fBsmbiod\fR process instantiates a door service on one of the following
-files:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fB/tmp/.smbiod-\fIUID\fR\fR file for normal users
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fB/var/run/smbiod-0\fR file for superuser
-.RE
-.sp
-.LP
-The \fBsmbiod\fR daemon has no external, customer-accessible interfaces.
-.SH EXIT STATUS
-.sp
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB0\fR
-.ad
-.RS 13n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB>0\fR
-.ad
-.RS 13n
-An error occurred.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/smbfs/smbiod\fR\fR
-.ad
-.RS 25n
-SMB I/O daemon.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/tmp/.smbiod-\fIUID\fR\fR\fR
-.ad
-.RS 25n
-File on which to instantiate a door service for user \fIUID\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/run/smbiod-0\fR\fR
-.ad
-.RS 25n
-File on which to instantiate a door service for superuser.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See the \fBattributes\fR(5) man page for descriptions of the following
-attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Uncommitted
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBps\fR(1), \fBsmbutil\fR(1), \fBmount_smbfs\fR(1M), \fBattributes\fR(5),
-\fBsmbfs\fR(7FS)
diff --git a/usr/src/man/man1m/smbios.1m b/usr/src/man/man1m/smbios.1m
deleted file mode 100644
index 813c317a43..0000000000
--- a/usr/src/man/man1m/smbios.1m
+++ /dev/null
@@ -1,223 +0,0 @@
-'\" te
-.\" Copyright (c) 2005, Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 2018 Joyent, Inc.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SMBIOS 1M "March 29, 2018"
-.SH NAME
-smbios \- display the contents of a System Management BIOS image
-.SH SYNOPSIS
-.LP
-.nf
-\fBsmbios\fR [\fB-BeOsx\fR] [\fB-i\fR \fIid\fR] [\fB-t\fR \fItype\fR] [\fB-w\fR \fIfile\fR] [\fIfile\fR]
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBsmbios\fR utility displays the contents of the System Management BIOS
-(SMBIOS) image exported by the current system or stored in a file. SMBIOS is an
-industry-standard mechanism for low-level system software to export hardware
-configuration information to higher-level system management software. The
-SMBIOS data format itself is defined by the Distributed Management Task Force
-(DMTF). Refer to http://www.dmtf.org for more information about SMBIOS and to
-obtain a copy of the SMBIOS specification and implementation guidelines.
-.sp
-.LP
-The SMBIOS image consists of a table of structures, each describing some aspect
-of the system software or hardware configuration. By default, \fBsmbios\fR
-displays the entire contents of the current SMBIOS image. If the \fB-s\fR
-option is specified, \fBsmbios\fR displays a summary of the structures that are
-present in the image. If the \fB-w\fR option is specified, \fBsmbios\fR writes
-a copy of the SMBIOS image to the specified file. \fBsmbios\fR can then be
-applied to the resulting file to display its content.
-.sp
-.LP
-\fBsmbios\fR attempts to display each structure and its content in a human-
-readable fashion. If \fBsmbios\fR does not recognize a structure's type or
-content, the raw hexadecimal data for the structure is displayed.
-.SH OPTIONS
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-B\fR\fR
-.ad
-.RS 11n
-Disable header validation for broken BIOSes.
-.sp
-By default, \fBsmbios\fR attempts to validate the SMBIOS header by verifying
-the anchor strings, header checksums, and version number. This option might be
-necessary when a BIOS has a non-compliant header.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-e\fR\fR
-.ad
-.RS 11n
- Display the contents of the SMBIOS entry point rather than the contents of the
-SMBIOS structure table.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-i\fR \fIid\fR\fR
-.ad
-.RS 11n
-Display only the specified structure, named by its integer id.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-O\fR\fR
-.ad
-.RS 11n
- Display obsolete structure types.
-.sp
-By default, \fBsmbios\fR elides output for structures whose type is marked as
-obsolete in the DMTF SMBIOS specification.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR\fR
-.ad
-.RS 11n
-Display only a summary listing of the structure identifiers and types, instead
-of the content of each selected structure.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-t\fR \fItype\fR\fR
-.ad
-.RS 11n
-Display only those structures whose type matches the specified integer type, as
-defined the DMTF SMBIOS specification.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-w\fR \fIfile\fR\fR
-.ad
-.RS 11n
-Write a copy of the SMBIOS image to the specified file and exit.
-.sp
-The SMBIOS entry point is written to the start of the file with its structure
-table address set to the file offset of the structure table, and a new entry
-point checksum is computed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-x\fR\fR
-.ad
-.RS 11n
-Display raw hexadecimal data for the selected structures in addition to
-human-readable output.
-.sp
-By default, hexadecimal data is only displayed if \fBsmbios\fR cannot display
-human-readable output for the selected structures.
-.RE
-
-.SH OPERANDS
-.LP
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fB\fIfile\fR\fR
-.ad
-.RS 8n
-Specifies an alternate SMBIOS image to display instead of the current system's
-SMBIOS image.
-.RE
-
-.SH EXIT STATUS
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR \fR
-.ad
-.RS 6n
-Successful completion. All structures in the SMBIOS image were examined
-successfully.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB1\fR\fR
-.ad
-.RS 6n
-A fatal error occurred, such as failure to open the specified file or device,
-or corruption in the image.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB2\fR\fR
-.ad
-.RS 6n
-Invalid command-line options were specified.
-.RE
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/dev/smbios\fR \fR
-.ad
-.RS 16n
-Kernel SMBIOS image device. This device special file is used to export a
-snapshot of the current system SMBIOS image.
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability See below.
-.TE
-
-.sp
-.LP
-The command-line options are Evolving. The human-readable output is Unstable.
-.SH SEE ALSO
-.LP
-\fBprtdiag\fR(1M), \fBattributes\fR(5), \fBsmbios\fR(7D)
-.sp
-.LP
-\fISystem Management BIOS Reference Specification\fR (see http://www.dmtf.org)
-.SH NOTES
-.LP
-The implementation of a System Management BIOS image is entirely at the
-discretion of the system and BIOS vendors. Not all systems export an SMBIOS.
-The SMBIOS structure content varies widely between systems and BIOS vendors and
-frequently does not comply with the guidelines included in the specification.
-Some structure fields might not be filled in by the BIOS at all, and others
-might be filled inwith non-conforming values.
-.sp
-.LP
-This utility incorrectly interprets the first three fields of the system
-information UUID field as network-endian; the SMBIOS specification defines them
-as little-endian. The "UUID (Endian-corrected)" field has the correct value.
diff --git a/usr/src/man/man1m/smbstat.1m b/usr/src/man/man1m/smbstat.1m
deleted file mode 100644
index 04723e3d7e..0000000000
--- a/usr/src/man/man1m/smbstat.1m
+++ /dev/null
@@ -1,178 +0,0 @@
-.\"
-.\" This file and its contents are supplied under the terms of the
-.\" Common Development and Distribution License ("CDDL"), version 1.0.
-.\" You may only use this file in accordance with the terms of version
-.\" 1.0 of the CDDL.
-.\"
-.\" A full copy of the text of the CDDL should have accompanied this
-.\" source. A copy of the CDDL is also available via the Internet at
-.\" http://www.illumos.org/license/CDDL.
-.\"
-.\"
-.\" Copyright 2014 Nexenta Systems, Inc.
-.\"
-.Dd Nov 22, 2013
-.Dt SMBSTAT 1M
-.Os
-.Sh NAME
-.Nm smbstat
-.Nd report SMB server statistics
-.Sh SYNOPSIS
-.Nm smbstat
-.Op Fl ctu
-.Op Fl r Op Fl anz
-.Op Ar interval
-.Sh DESCRIPTION
-The
-.Nm
-command shows statistical information for the SMB server, including any or all
-of the following four categories:
-.Sy counters ,
-.Sy throughput ,
-.Sy utilization ,
-.Sy requests .
-By default,
-.Nm
-shows
-.Sy throughput
-and
-.Sy utilization .
-.Sh OPTIONS
-.Bl -tag -width Ds
-.It Fl c
-Display
-.Sy counters .
-The columns shown are:
-.Bl -tag -width "users" -compact
-.It Sy nbt
-NetBIOS connections
-.It Sy tcp
-TCP connections
-.It Sy users
-logged on users
-.It Sy trees
-share connections
-.It Sy files
-open files and directories
-.It Sy pipes
-open named pipes
-.El
-.It Fl r
-Display
-.Sy request
-data, one row for each SMB command.
-The columns shown are, for each request type:
-.Bl -tag -width "rt-stddev" -compact
-.It Pq name
-command name
-.It Sy code
-command code
-.It Sy %
-% of requests that fall in this row
-.It Sy rbytes/s
-received bytes per second
-.It Sy tbytes/s
-transmitted bytes per second
-.It Sy reqs/s
-requests per second
-.It Sy rt-mean
-response time average
-.It Sy rt-stddev
-response time standard deviation
-.El
-.It Fl t
-Display
-.Sy throughput .
-The columns shown are:
-.Bl -tag -width "rbytes/s" -compact
-.It Sy rbytes/s
-received bytes per second
-.It Sy tbytes/s
-transmitted bytes per second
-.It Sy reqs/s
-requests per second
-.It Sy reads/s
-number of read requests per second
-.It Sy writes/s
-number of write requests per second
-.El
-.It Fl u
-Display
-.Sy utilization .
-The columns shown are:
-.Bl -tag -width "wtime" -compact
-.It Sy wcnt
-average number of waiting requests
-.It Sy rcnt
-average number of running requests
-.It Sy wtime
-average wait time per request
-.It Sy rtime
-average run time per request
-.It Sy w%
-% of time there were waiting requests
-.It Sy r%
-% of time there were running requests
-.It Sy u%
-utilization, computed as
-.Sy rcnt Ns / Ns Sy max_workers
-.It Sy sat
-has the server been
-.Qq saturated
-.Pq u% at 100
-.It Sy usr%
-% of CPU time in user space
-.It Sy sys%
-% of CPU time in kernel
-.It Sy idle%
-% of CPU time spent idle
-.El
-.El
-.Pp
-The
-.Fl r
-option supports additional modifiers including:
-.Bl -tag -width Ds
-.It Fl a
-show
-.Qq all
-request types
-.Pq including unsupported ones
-.It Fl n
-.Qq name
-order
-.Pq sort by request name
-.It Fl z
-suppress
-.Qq zero
-count rows
-.Pq types for which none were received
-.El
-.Sh OPERANDS
-.Bl -tag -width Ds
-.It Ar interval
-When
-.Ar interval
-is specified,
-.Nm
-runs in a loop, printing the requested output every
-.Ar interval
-seconds.
-When no
-.Ar interval
-is specified, the statistics presented are based on running averages accumulated
-since the system started.
-The first output shows the same cumulative statistics one would see without the
-.Ar interval
-specified, and subsequent outputs represent the activity in the interval that
-just finished.
-.El
-.Sh INTERFACE STABILITY
-.Sy Uncommitted .
-Output format is
-.Sy Not-an-Interface.
-.Sh SEE ALSO
-.Xr sharectl 1M ,
-.Xr sharemgr 1M ,
-.Xr smbadm 1M ,
-.Xr smbd 1M
diff --git a/usr/src/man/man1m/smrsh.1m b/usr/src/man/man1m/smrsh.1m
deleted file mode 100644
index 190965a880..0000000000
--- a/usr/src/man/man1m/smrsh.1m
+++ /dev/null
@@ -1,85 +0,0 @@
-'\" te
-.\" Copyright (c) 1983 Eric P. Allman
-.\" Copyright (c) 1988, 1993 The Regents of the University of California. All rights reserved.
-.\" Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
-.\" 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 3. All advertising materials mentioning features or use of this software must display
-.\" the following acknowledgement: This product includes software developed by the University of California, Berkeley and its contributors. 4. Neither the name of the University nor the names of its contributors may be used to endorse or promote products derived from this software without specific
-.\" prior written permission. THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR
-.\" CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
-.\" IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-.\" Copyright (c) 1998-2006, 2008 Sendmail, Inc. and its suppliers. All rights reserved.
-.\" The following license terms and conditions apply, unless a different license is obtained from Sendmail, Inc., 6425 Christie Ave, Fourth Floor, Emeryville, CA 94608, USA, or by electronic mail at license@sendmail.com. License Terms: Use, Modification and Redistribution
-.\" (including distribution of any modified or derived work) in source and binary forms is permitted only if each of the following conditions is met: 1. Redistributions qualify as "freeware" or "Open Source Software" under one of the following terms: (a) Redistributions are made at no charge
-.\" beyond the reasonable cost of materials and delivery. (b) Redistributions are accompanied by a copy of the Source Code or by an irrevocable offer to provide a copy of the Source Code for up to three years at the cost of materials and delivery. Such redistributions
-.\" must allow further use, modification, and redistribution of the Source Code under substantially the same terms as this license. For the purposes of redistribution "Source Code" means the complete compilable and linkable source code of sendmail including all modifications.
-.\" 2. Redistributions of source code must retain the copyright notices as they appear in each source code file, these license terms, and the disclaimer/limitation of liability set forth as paragraph 6 below. 3. Redistributions in binary form must reproduce the Copyright Notice, these license
-.\" terms, and the disclaimer/limitation of liability set forth as paragraph 6 below, in the documentation and/or other materials provided with the distribution. For the purposes of binary distribution the "Copyright Notice" refers to the following language: "Copyright (c) 1998-2004 Sendmail,
-.\" Inc. All rights reserved." 4. Neither the name of Sendmail, Inc. nor the University of California nor the names of their contributors may be used to endorse or promote products derived from this software without specific prior written permission. The name "sendmail" is a trademark
-.\" of Sendmail, Inc. 5. All redistributions must comply with the conditions imposed by the University of California on certain embedded code, whose copyright notice and conditions for redistribution are as follows: (a) Copyright (c) 1988, 1993 The Regents of the University of California.
-.\" All rights reserved. (b) Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: (i) Redistributions of source code must retain the above copyright notice, this list of
-.\" conditions and the following disclaimer. (ii) Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
-.\" (iii) Neither the name of the University nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. 6. Disclaimer/Limitation of Liability: THIS SOFTWARE IS PROVIDED BY SENDMAIL,
-.\" INC. AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL SENDMAIL, INC., THE REGENTS OF THE UNIVERSITY OF CALIFORNIA OR CONTRIBUTORS
-.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
-.\" IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved.
-.TH SMRSH 1M "June 20, 2021"
-.SH NAME
-smrsh \- restricted shell for sendmail
-.SH SYNOPSIS
-.nf
-\fBsmrsh\fR \fB-c\fR \fIcommand\fR
-.fi
-
-.SH DESCRIPTION
-The \fBsmrsh\fR program is intended as a replacement for the \fBsh\fR command
-in the \fBprog\fR mailer in \fBsendmail\fR(1M) configuration files. The
-\fBsmrsh\fR program sharply limits commands that can be run using the
-\fB|program\fR syntax of \fBsendmail\fR. This improves overall system security.
-\fBsmrsh\fR limits the set of programs that a programmer can execute, even if
-\fBsendmail\fR runs a program without going through an \fBalias\fR or
-\fBforward\fR file.
-.sp
-.LP
-Briefly, \fBsmrsh\fR limits programs to be in the directory
-\fB/var/adm/sm.bin\fR, allowing system administrators to choose the set of
-acceptable commands. It also rejects any commands with the characters: \fB,\fR,
-\fB<\fR, \fB>\fR, \fB|\fR, \fB;\fR, \fB&\fR, \fB$\fR, \fB\er\fR (RETURN), or
-\fB\en\fR (NEWLINE) on the command line to prevent end run attacks.
-.sp
-.LP
-Initial pathnames on programs are stripped, so forwarding to
-\fB/usr/ucb/vacation\fR, \fB/usr/bin/vacation\fR,
-\fB/home/server/mydir/bin/vacation\fR, and \fBvacation\fR all actually forward
-to \fB/var/adm/sm.bin/vacation\fR.
-.sp
-.LP
-System administrators should be conservative about populating
-\fB/var/adm/sm.bin\fR. Reasonable additions are utilities such as
-\fBvacation\fR(1) and \fBprocmail\fR. Never include any shell or shell-like
-program (for example, \fBperl\fR) in the \fBsm.bin\fR directory. This does not
-restrict the use of \fBshell\fR or \fBperl\fR scrips in the \fBsm.bin\fR
-directory (using the \fB#!\fR syntax); it simply disallows the execution of
-arbitrary programs.
-.SH OPTIONS
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-c\fR \fIcommand\fR\fR
-.ad
-.RS 14n
-Where \fIcommand\fR is a valid command, executes \fIcommand\fR.
-.RE
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/var/adm/sm.bin\fR\fR
-.ad
-.RS 19n
-directory for restricted programs
-.RE
-
-.SH SEE ALSO
-\fBsendmail\fR(1M), \fBattributes\fR(5)
diff --git a/usr/src/man/man1m/snoop.1m b/usr/src/man/man1m/snoop.1m
deleted file mode 100644
index d2ea8088c6..0000000000
--- a/usr/src/man/man1m/snoop.1m
+++ /dev/null
@@ -1,1200 +0,0 @@
-'\" te
-.\" Copyright 2021 Joyent, Inc.
-.\" Copyright (C) 2009, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright (c) 2014, Joyent, Inc. All rights reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SNOOP 1M "Mar 22, 2021"
-.SH NAME
-snoop \- capture and inspect network packets
-.SH SYNOPSIS
-.nf
-\fBsnoop\fR [\fB-afqrCDINPSvV\fR] [\fB-t\fR [r | a | d]] [\fB-c\fR \fImaxcount\fR]
- [\fB-d\fR \fIdevice\fR] [\fB-i\fR \fIfilename\fR] [\fB-n\fR \fIfilename\fR] [\fB-o\fR \fIfilename\fR]
- [\fB-p\fR \fIfirst\fR [, \fIlast\fR]] [\fB-s\fR \fIsnaplen\fR] [\fB-x\fR \fIoffset\fR [, \fIlength\fR]]
- [\fB-z\fR \fIzonename\fR] [\fIexpression\fR]
-.fi
-
-.SH DESCRIPTION
-From a datalink or IP interface, \fBsnoop\fR captures packets and displays
-their contents. If the datalink or IP interface is not specified, \fBsnoop\fR
-will pick a datalink to use, giving priority to datalinks that have been
-plumbed for IP traffic. \fBsnoop\fR uses the \fBpfmod\fR(7M) and
-\fBbufmod\fR(7M) STREAMS modules to provide efficient capture of packets from
-the network. Captured packets can be displayed as they are received or saved to
-a file (which is \fIRFC 1761\fR-compliant) for later inspection.
-.sp
-.LP
-\fBsnoop\fR can display packets in a single-line summary form or in verbose
-multi-line forms. In summary form, with the exception of certain VLAN packets,
-only the data pertaining to the highest level protocol is displayed. If a
-packet has a VLAN header and its VLAN ID is non-zero, then \fBsnoop\fR will
-show that the packet is VLAN tagged. For example, an \fBNFS\fR packet will have
-only \fBNFS\fR information displayed. Except for VLAN information under the
-condition just described, the underlying \fBRPC\fR, \fBUDP\fR, \fBIP\fR, and
-Ethernet frame information is suppressed, but can be displayed if either of the
-verbose options are chosen.
-.sp
-.LP
-In the absence of a name service, such as LDAP or NIS, \fBsnoop\fR displays
-host names as numeric IP addresses.
-.sp
-.LP
-\fBsnoop\fR requires an interactive interface.
-.SH OPTIONS
-.ne 2
-.na
-\fB\fB-C\fR\fR
-.ad
-.sp .6
-.RS 4n
-List the code generated from the filter expression for either the kernel packet
-filter, or \fBsnoop\fR's own filter.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-D\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display number of packets dropped during capture on the summary line.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-N\fR\fR
-.ad
-.sp .6
-.RS 4n
-Create an \fBIP\fR address-to-name file from a capture file. This must be set
-together with the \fB-i\fR option that names a capture file. The
-address-to-name file has the same name as the capture file with \fB\&.names\fR
-appended. This file records the \fBIP\fR address to hostname mapping at the
-capture site and increases the portability of the capture file. Generate a
-\fB\&.names\fR file if the capture file is to be analyzed elsewhere. Packets
-are not displayed when this flag is used.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-I\fR \fIinterface\fR\fR
-.ad
-.sp .6
-.RS 4n
-Capture IP packets from the network using the IP interface specified by
-\fIinterface\fR, for example, \fBlo0\fR. The \fBifconfig\fR(1M) command can be
-used to list available IP interfaces. The \fB-I\fR and \fB-d\fR options are
-mutually exclusive.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-P\fR\fR
-.ad
-.sp .6
-.RS 4n
-Capture packets in non-promiscuous mode. Only broadcast, multicast, or packets
-addressed to the host machine will be seen.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-S\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display size of the entire link layer frame in bytes on the summary line.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-V\fR\fR
-.ad
-.sp .6
-.RS 4n
-Verbose summary mode. This is halfway between summary mode and verbose mode in
-degree of verbosity. Instead of displaying just the summary line for the
-highest level protocol in a packet, it displays a summary line for each
-protocol layer in the packet. For instance, for an \fBNFS\fR packet it will
-display a line each for the \fBETHER\fR, \fBIP\fR, \fBUDP\fR, \fBRPC\fR and
-\fBNFS\fR layers. Verbose summary mode output may be easily piped through
-\fBgrep\fR to extract packets of interest. For example, to view only \fBRPC\fR
-summary lines, enter the following: \fBexample#\fR \fBsnoop -i rpc.cap -V |
-grep RPC\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-a\fR\fR
-.ad
-.sp .6
-.RS 4n
-Listen to packets on \fB/dev/audio\fR (warning: can be noisy).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-c\fR \fImaxcount\fR\fR
-.ad
-.sp .6
-.RS 4n
-Quit after capturing \fImaxcount\fR packets. Otherwise keep capturing until
-there is no disk space left or until interrupted with Control-C.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-d\fR \fIdatalink\fR\fR
-.ad
-.sp .6
-.RS 4n
-Capture link-layer packets from the network using the DLPI datalink specified
-by \fIdatalink\fR, for example, \fBbge0\fR or \fBnet0\fR. The \fBdladm\fR(1M)
-\fBshow-link\fR subcommand can be used to list available datalinks. The
-\fB-d\fR and \fB-I\fR options are mutually exclusive.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR\fR
-.ad
-.sp .6
-.RS 4n
-Ignore any errors when enabling promiscuous mode. Normally any error when
-enabling promiscuous mode on a datalink or IP interface is fatal and causes
-\fBsnoop\fR to exit.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-i\fR \fIfilename\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display packets previously captured in \fIfilename\fR. Without this option,
-\fBsnoop\fR reads packets from the network interface. If a
-\fIfilename\fR\fB\&.names\fR file is present, it is automatically loaded into
-the \fBsnoop\fR \fBIP\fR address-to-name mapping table (See \fB-N\fR flag).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR \fIfilename\fR\fR
-.ad
-.sp .6
-.RS 4n
-Use \fIfilename\fR as an \fBIP\fR address-to-name mapping table. This file must
-have the same format as the \fB/etc/hosts\fR file (IP address followed by the
-hostname).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-o\fR \fIfilename\fR\fR
-.ad
-.sp .6
-.RS 4n
-Save captured packets in \fIfilename\fR as they are captured. (This
-\fIfilename\fR is referred to as the "capture file".) The format of the capture
-file is RFC 1761-compliant. During packet capture, a count of the number of
-packets saved in the file is displayed. If you wish just to count packets
-without saving to a file, name the file \fB/dev/null\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR \fIfirst\fR [ , \fBlast\fR ]\fR
-.ad
-.sp .6
-.RS 4n
-Select one or more packets to be displayed from a capture file. The \fIfirst\fR
-packet in the file is packet number 1.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-q\fR\fR
-.ad
-.sp .6
-.RS 4n
-When capturing network packets into a file, do not display the packet count.
-This can improve packet capturing performance.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-r\fR\fR
-.ad
-.sp .6
-.RS 4n
-Do not resolve the \fBIP\fR address to the symbolic name. This prevents
-\fBsnoop\fR from generating network traffic while capturing and displaying
-packets. However, if the \fB-n\fR option is used, and an address is found in
-the mapping file, its corresponding name will be used.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR \fIsnaplen\fR\fR
-.ad
-.sp .6
-.RS 4n
-Truncate each packet after \fIsnaplen\fR bytes. Usually the whole packet is
-captured. This option is useful if only certain packet header information is
-required. The packet truncation is done within the kernel giving better
-utilization of the streams packet buffer. This means less chance of dropped
-packets due to buffer overflow during periods of high traffic. It also saves
-disk space when capturing large traces to a capture file. To capture only
-\fBIP\fR headers (no options) use a \fIsnaplen\fR of 34. For \fBUDP\fR use 42,
-and for \fBTCP\fR use 54. You can capture \fBRPC\fR headers with a
-\fIsnaplen\fR of 80 bytes. \fBNFS\fR headers can be captured in 120 bytes.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-t\fR [ \fBr\fR | \fBa\fR | \fBd\fR ]\fR
-.ad
-.sp .6
-.RS 4n
-Time-stamp presentation. Time-stamps are accurate to within 4 microseconds. The
-default is for times to be presented in \fBd\fR (delta) format (the time since
-receiving the previous packet). Option \fBa\fR (absolute) gives wall-clock
-time. Option \fBr\fR (relative) gives time relative to the first packet
-displayed. This can be used with the \fB-p\fR option to display time relative
-to any selected packet.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.sp .6
-.RS 4n
-Verbose mode. Print packet headers in lots of detail. This display consumes
-many lines per packet and should be used only on selected packets.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\fR\fB-x\fR\fIoffset\fR [ , \fIlength\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Display packet data in hexadecimal and \fBASCII\fR format. The \fIoffset\fR and
-\fIlength\fR values select a portion of the packet to be displayed. To display
-the whole packet, use an \fIoffset\fR of 0. If a \fIlength\fR value is not
-provided, the rest of the packet is displayed.
-.RE
-
-.sp
-.ne 2
-.na
-.BI -z zonename
-.ad
-.sp .6
-.RS 4n
-Open an earlier datalink specified via
-.B -d
-or
-.B -I
-in the specified zone \fIzonename\fR.
-This option is only meaningful in the global zone and
-allows the global zone to inspect datalinks of non-global zones.
-.RE
-
-.SH OPERANDS
-.ne 2
-.na
-\fB\fIexpression\fR\fR
-.ad
-.sp .6
-.RS 4n
-Select packets either from the network or from a capture file. Only packets for
-which the expression is true will be selected. If no expression is provided it
-is assumed to be true.
-.sp
-Given a filter expression, \fBsnoop\fR generates code for either the kernel
-packet filter or for its own internal filter. If capturing packets with the
-network interface, code for the kernel packet filter is generated. This filter
-is implemented as a streams module, upstream of the buffer module. The buffer
-module accumulates packets until it becomes full and passes the packets on to
-\fBsnoop\fR. The kernel packet filter is very efficient, since it rejects
-unwanted packets in the kernel before they reach the packet buffer or
-\fBsnoop\fR. The kernel packet filter has some limitations in its
-implementation; it is possible to construct filter expressions that it cannot
-handle. In this event, \fBsnoop\fR tries to split the filter and do as much
-filtering in the kernel as possible. The remaining filtering is done by the
-packet filter for \fBsnoop\fR. The \fB-C\fR flag can be used to view generated
-code for either the packet filter for the kernel or the packet filter for
-\fBsnoop\fR. If packets are read from a capture file using the \fB-i\fR option,
-only the packet filter for \fBsnoop\fR is used.
-.sp
-A filter \fIexpression\fR consists of a series of one or more boolean
-primitives that may be combined with boolean operators (\fBAND\fR, \fBOR\fR,
-and \fBNOT\fR). Normal precedence rules for boolean operators apply. Order of
-evaluation of these operators may be controlled with parentheses. Since
-parentheses and other filter expression characters are known to the shell, it
-is often necessary to enclose the filter expression in quotes. Refer to for
-information about setting up more efficient filters.
-.sp
-The primitives are:
-.sp
-.ne 2
-.na
-\fB\fBhost\fR \fIhostname\fR\fR
-.ad
-.sp .6
-.RS 4n
-True if the source or destination address is that of \fBhostname\fR. The
-\fIhostname\fR argument may be a literal address. The keyword \fBhost\fR may be
-omitted if the name does not conflict with the name of another expression
-primitive. For example, \fBpinky\fR selects packets transmitted to or received
-from the host \fBpinky\fR, whereas \fBpinky and dinky\fR selects packets
-exchanged between hosts \fBpinky AND dinky\fR.
-.sp
-The type of address used depends on the primitive which precedes the \fBhost\fR
-primitive. The possible qualifiers are \fBinet\fR, \fBinet6\fR, \fBether\fR, or
-none. These three primitives are discussed below. Having none of the primitives
-present is equivalent to "inet host hostname or inet6 host hostname". In other
-words, snoop tries to filter on all IP addresses associated with hostname.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIinet\fR or \fIinet6\fR\fR
-.ad
-.sp .6
-.RS 4n
-A qualifier that modifies the \fBhost\fR primitive that follows. If it is
-\fIinet\fR, then \fBsnoop\fR tries to filter on all IPv4 addresses returned
-from a name lookup. If it is \fIinet6\fR, \fBsnoop\fR tries to filter on all
-IPv6 addresses returned from a name lookup.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIipaddr\fR, \fIatalkaddr\fR, or \fIetheraddr\fR\fR
-.ad
-.sp .6
-.RS 4n
-Literal addresses, \fBIP\fR dotted, AppleTalk dotted, and Ethernet colon are
-recognized. For example,
-.RS +4
-.TP
-.ie t \(bu
-.el o
-"\fB172.16.40.13\fR" matches all packets with that \fBIP\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-"\fB2::9255:a00:20ff:fe73:6e35\fR" matches all packets with that IPv6 address
-as source or destination;
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-"\fB65281.13\fR" matches all packets with that AppleTalk address;
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-"\fB8:0:20:f:b1:51\fR" matches all packets with the Ethernet address as source
-or destination.
-.RE
-An Ethernet address beginning with a letter is interpreted as a hostname. To
-avoid this, prepend a zero when specifying the address. For example, if the
-Ethernet address is \fBaa:0:45:23:52:44\fR, then specify it by add a leading
-zero to make it \fB0aa:0:45:23:52:44\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfrom\fR or \fBsrc\fR\fR
-.ad
-.sp .6
-.RS 4n
-A qualifier that modifies the following \fBhost\fR, \fBnet\fR, \fIipaddr\fR,
-\fIatalkaddr\fR, \fIetheraddr\fR, \fBport\fR or \fBrpc\fR primitive to match
-just the source address, port, or \fBRPC\fR reply.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBto\fR or \fBdst\fR\fR
-.ad
-.sp .6
-.RS 4n
-A qualifier that modifies the following \fBhost\fR, \fBnet\fR, \fIipaddr\fR,
-\fIatalkaddr\fR, \fIetheraddr\fR, \fBport\fR or \fBrpc\fR primitive to match
-just the destination address, port, or \fBRPC\fR call.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBether\fR\fR
-.ad
-.sp .6
-.RS 4n
-A qualifier that modifies the following \fBhost\fR primitive to resolve a name
-to an Ethernet address. Normally, \fBIP\fR address matching is performed. This
-option is not supported on media such as IPoIB (IP over InfiniBand).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBethertype\fR \fInumber\fR\fR
-.ad
-.sp .6
-.RS 4n
-True if the Ethernet type field has value \fInumber\fR. If \fInumber\fR is not
-0x8100 (VLAN) and the packet is VLAN tagged, then the expression will match the
-encapsulated Ethernet type.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBip\fR, \fBip6\fR, \fBarp\fR, \fBrarp\fR, \fBpppoed\fR, \fBpppoes\fR\fR
-.ad
-.sp .6
-.RS 4n
-True if the packet is of the appropriate ethertype.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBvlan\fR\fR
-.ad
-.sp .6
-.RS 4n
-True if the packet has \fBethertype\fR VLAN and the VLAN ID is not zero.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBvlan-id\fR \fIid\fR\fR
-.ad
-.sp .6
-.RS 4n
-True for packets of ethertype VLAN with the id \fIid\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpppoe\fR\fR
-.ad
-.sp .6
-.RS 4n
-True if the ethertype of the packet is either \fBpppoed\fR or \fBpppoes\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBbroadcast\fR\fR
-.ad
-.sp .6
-.RS 4n
-True if the packet is a broadcast packet. Equivalent to \fBether[2:4] =
-0xffffffff\fR for Ethernet. This option is not supported on media such as IPoIB
-(IP over InfiniBand).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmulticast\fR\fR
-.ad
-.sp .6
-.RS 4n
-True if the packet is a multicast packet. Equivalent to "\fBether[0] & 1 =
-1\fR" on Ethernet. This option is not supported on media such as IPoIB (IP over
-InfiniBand).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBbootp\fR, \fBdhcp\fR\fR
-.ad
-.sp .6
-.RS 4n
-True if the packet is an unfragmented IPv4 UDP packet with either a source port
-of \fBBOOTPS (67)\fR and a destination port of \fBBOOTPC (68)\fR, or a source
-port of \fBBOOTPC (68)\fR and a destination of \fBBOOTPS (67)\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdhcp6\fR\fR
-.ad
-.sp .6
-.RS 4n
-True if the packet is an unfragmented IPv6 UDP packet with either a source port
-of \fBDHCPV6-SERVER\fR (547) and a destination port of \fBDHCPV6-CLIENT\fR
-(546), or a source port of \fBDHCPV6-CLIENT\fR (546) and a destination of
-\fBDHCPV6-SERVER\fR (547).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBapple\fR\fR
-.ad
-.sp .6
-.RS 4n
-True if the packet is an Apple Ethertalk packet. Equivalent to "\fBethertype
-0x809b or ethertype 0x80f3\fR".
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdecnet\fR\fR
-.ad
-.sp .6
-.RS 4n
-True if the packet is a \fBDECNET\fR packet.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBgreater\fR \fIlength\fR\fR
-.ad
-.sp .6
-.RS 4n
-True if the packet is longer than \fIlength\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBless\fR \fIlength\fR\fR
-.ad
-.sp .6
-.RS 4n
-True if the packet is shorter than \fIlength\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBudp\fR, \fBtcp\fR, \fBicmp\fR, \fBicmp6\fR, \fBah\fR, \fBesp\fR\fR
-.ad
-.sp .6
-.RS 4n
-True if the \fBIP\fR or IPv6 protocol is of the appropriate type.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnet\fR \fInet\fR\fR
-.ad
-.sp .6
-.RS 4n
-True if either the \fBIP\fR source or destination address has a network number
-of \fInet\fR. The \fBfrom\fR or \fBto\fR qualifier may be used to select
-packets for which the network number occurs only in the source or destination
-address.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBport\fR \fIport\fR\fR
-.ad
-.sp .6
-.RS 4n
-True if either the source or destination port is \fIport\fR. The \fIport\fR may
-be either a port number or name from \fB/etc/services\fR. The \fBtcp\fR or
-\fBudp\fR primitives may be used to select \fBTCP\fR or \fBUDP\fR ports only.
-The \fBfrom\fR or \fBto\fR qualifier may be used to select packets for which
-the \fIport\fR occurs only as the source or destination.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrpc\fR \fIprog\fR [ , \fIvers\fR [ , \fBproc\fR ] ]\fR
-.ad
-.sp .6
-.RS 4n
-True if the packet is an \fBRPC\fR call or reply packet for the protocol
-identified by \fIprog\fR. The \fIprog\fR may be either the name of an \fBRPC\fR
-protocol from \fB/etc/rpc\fR or a program number. The \fIvers\fR and \fBproc\fR
-may be used to further qualify the program \fIversion\fR and \fIprocedure\fR
-number, for example, \fBrpc nfs,2,0\fR selects all calls and replies for the
-\fBNFS\fR null procedure. The \fBto\fR or \fBfrom\fR qualifier may be used to
-select either call or reply packets only.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBzone\fR \fIzoneid\fR\fR
-.ad
-.sp .6
-.RS 4n
-True if \fIzoneid\fR matches either the source or destination \fIzoneid\fR of a
-packet received on an \fBipnet\fR device.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBldap\fR\fR
-.ad
-.sp .6
-.RS 4n
-True if the packet is an \fBLDAP\fR packet on port 389.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBgateway\fR \fIhost\fR\fR
-.ad
-.sp .6
-.RS 4n
-True if the packet used \fIhost\fR as a gateway, that is, the Ethernet source
-or destination address was for \fIhost\fR but not the \fBIP\fR address.
-Equivalent to "\fBether host\fR \fIhost\fR and not host \fIhost\fR".
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnofrag\fR\fR
-.ad
-.sp .6
-.RS 4n
-True if the packet is unfragmented or is the first in a series of \fBIP\fR
-fragments. Equivalent to \fBip[6:2] & 0x1fff = 0\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIexpr\fR \fIrelop\fR \fIexpr\fR\fR
-.ad
-.sp .6
-.RS 4n
-True if the relation holds, where \fIrelop\fR is one of \fB>\fR, \fB<\fR,
-\fB>=\fR, \fB<=\fR, \fB=\fR, \fB!=\fR, and \fBexpr\fR is an arithmetic
-expression composed of numbers, packet field selectors, the \fBlength\fR
-primitive, and arithmetic operators \fB+\fR, \fB\(mi\fR, \fB*\fR, \fB&\fR,
-\fB|\fR, \fB^\fR, and \fB%\fR. The arithmetic operators within \fBexpr\fR are
-evaluated before the relational operator and normal precedence rules apply
-between the arithmetic operators, such as multiplication before addition.
-Parentheses may be used to control the order of evaluation. To use the value of
-a field in the packet use the following syntax:
-.sp
-.in +2
-.nf
-\fIbase\fR[\fBexpr\fR [\fB:\fR \fBsize\fR ] ]
-.fi
-.in -2
-.sp
-
-where \fBexpr\fR evaluates the value of an offset into the packet from a
-\fIbase\fR offset which may be \fBether\fR, \fBip\fR, \fBip6\fR, \fBudp\fR,
-\fBtcp\fR, or \fBicmp\fR. The \fBsize\fR value specifies the size of the field.
-If not given, 1 is assumed. Other legal values are 2 and 4. For example,
-.sp
-.in +2
-.nf
-ether[0] & 1 = 1
-.fi
-.in -2
-
-is equivalent to \fBmulticast\fR
-.sp
-.in +2
-.nf
-ether[2:4] = 0xffffffff
-.fi
-.in -2
-
-is equivalent to \fBbroadcast\fR.
-.sp
-.in +2
-.nf
-ip[ip[0] & 0xf * 4 : 2] = 2049
-.fi
-.in -2
-
-is equivalent to \fBudp[0:2] = 2049\fR
-.sp
-.in +2
-.nf
-ip[0] & 0xf > 5
-.fi
-.in -2
-
-selects \fBIP\fR packets with options.
-.sp
-.in +2
-.nf
-ip[6:2] & 0x1fff = 0
-.fi
-.in -2
-
-eliminates \fBIP\fR fragments.
-.sp
-.in +2
-.nf
-udp and ip[6:2]&0x1fff = 0 and udp[6:2] != 0
-.fi
-.in -2
-
-finds all packets with \fBUDP\fR checksums.
-.sp
-The \fBlength\fR primitive may be used to obtain the length of the packet. For
-instance "\fBlength > 60\fR" is equivalent to "\fBgreater 60\fR", and
-"\fBether[length \(mi 1]\fR" obtains the value of the last byte in a packet.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBand\fR\fR
-.ad
-.sp .6
-.RS 4n
-Perform a logical \fBAND\fR operation between two boolean values. The \fBAND\fR
-operation is implied by the juxtaposition of two boolean expressions, for
-example "\fBdinky pinky\fR" is the same as "\fBdinky AND pinky\fR".
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBor\fR or \fB,\fR\fR
-.ad
-.sp .6
-.RS 4n
-Perform a logical \fBOR\fR operation between two boolean values. A comma may be
-used instead, for example, "\fBdinky,pinky\fR" is the same as "\fBdinky OR
-pinky\fR".
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnot\fR or \fB!\fR\fR
-.ad
-.sp .6
-.RS 4n
-Perform a logical \fBNOT\fR operation on the following boolean value. This
-operator is evaluated before \fBAND\fR or OR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBslp\fR\fR
-.ad
-.sp .6
-.RS 4n
-True if the packet is an \fBSLP\fR packet.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsctp\fR\fR
-.ad
-.sp .6
-.RS 4n
-True if the packet is an \fBSCTP\fR packet.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBospf\fR\fR
-.ad
-.sp .6
-.RS 4n
-True if the packet is an \fBOSPF\fR packet.
-.RE
-
-.RE
-
-.SH EXAMPLES
-\fBExample 1 \fRUsing the \fBsnoop\fR Command
-.sp
-.LP
-Capture all packets and display them as they are received:
-
-.sp
-.in +2
-.nf
-example# \fBsnoop\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Capture packets with host \fBfunky\fR as either the source or destination and
-display them as they are received:
-
-.sp
-.in +2
-.nf
-example# \fBsnoop funky\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Capture packets between \fBfunky\fR and \fBpinky\fR and save them to a file.
-Then inspect the packets using times (in seconds) relative to the first
-captured packet:
-
-.sp
-.in +2
-.nf
-example# \fBsnoop -o cap funky pinky\fR
-example# \fBsnoop -i cap -t r | more\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-To look at selected packets in another capture file:
-
-.sp
-.in +2
-.nf
-example# \fBsnoop -i pkts -p 99,108\fR
- 99 0.0027 boutique -> sunroof NFS C GETATTR FH=8E6
-100 0.0046 sunroof -> boutique NFS R GETATTR OK
-101 0.0080 boutique -> sunroof NFS C RENAME FH=8E6C MTra00192 to .nfs08
-102 0.0102 marmot -> viper NFS C LOOKUP FH=561E screen.r.13.i386
-103 0.0072 viper -> marmot NFS R LOOKUP No such file or directory
-104 0.0085 bugbomb -> sunroof RLOGIN C PORT=1023 h
-105 0.0005 kandinsky -> sparky RSTAT C Get Statistics
-106 0.0004 beeblebrox -> sunroof NFS C GETATTR FH=0307
-107 0.0021 sparky -> kandinsky RSTAT R
-108 0.0073 office -> jeremiah NFS C READ FH=2584 at 40960 for 8192
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-To look at packet 101 in more detail:
-
-.sp
-.in +2
-.nf
-example# \fBsnoop -i pkts -v -p101\fR
-ETHER: ----- Ether Header -----
-ETHER:
-ETHER: Packet 101 arrived at 16:09:53.59
-ETHER: Packet size = 210 bytes
-ETHER: Destination = 8:0:20:1:3d:94, Sun
-ETHER: Source = 8:0:69:1:5f:e, Silicon Graphics
-ETHER: Ethertype = 0800 (IP)
-ETHER:
-IP: ----- IP Header -----
-IP:
-IP: Version = 4, header length = 20 bytes
-IP: Type of service = 00
-IP: ..0. .... = routine
-IP: ...0 .... = normal delay
-IP: .... 0... = normal throughput
-IP: .... .0.. = normal reliability
-IP: Total length = 196 bytes
-IP: Identification 19846
-IP: Flags = 0X
-IP: .0.. .... = may fragment
-IP: ..0. .... = more fragments
-IP: Fragment offset = 0 bytes
-IP: Time to live = 255 seconds/hops
-IP: Protocol = 17 (UDP)
-IP: Header checksum = 18DC
-IP: Source address = 172.16.40.222, boutique
-IP: Destination address = 172.16.40.200, sunroof
-IP:
-UDP: ----- UDP Header -----
-UDP:
-UDP: Source port = 1023
-UDP: Destination port = 2049 (Sun RPC)
-UDP: Length = 176
-UDP: Checksum = 0
-UDP:
-RPC: ----- SUN RPC Header -----
-RPC:
-RPC: Transaction id = 665905
-RPC: Type = 0 (Call)
-RPC: RPC version = 2
-RPC: Program = 100003 (NFS), version = 2, procedure = 1
-RPC: Credentials: Flavor = 1 (Unix), len = 32 bytes
-RPC: Time = 06-Mar-90 07:26:58
-RPC: Hostname = boutique
-RPC: Uid = 0, Gid = 1
-RPC: Groups = 1
-RPC: Verifier : Flavor = 0 (None), len = 0 bytes
-RPC:
-NFS: ----- SUN NFS -----
-NFS:
-NFS: Proc = 11 (Rename)
-NFS: File handle = 000016430000000100080000305A1C47
-NFS: 597A0000000800002046314AFC450000
-NFS: File name = MTra00192
-NFS: File handle = 000016430000000100080000305A1C47
-NFS: 597A0000000800002046314AFC450000
-NFS: File name = .nfs08
-NFS:
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-To view just the \fBNFS\fR packets between \fBsunroof\fR and \fBboutique\fR:
-
-.sp
-.in +2
-.nf
-example# \fBsnoop -i pkts rpc nfs and sunroof and boutique\fR
-1 0.0000 boutique -> sunroof NFS C GETATTR FH=8E6C
-2 0.0046 sunroof -> boutique NFS R GETATTR OK
-3 0.0080 boutique -> sunroof NFS C RENAME FH=8E6C MTra00192 to .nfs08
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-To save these packets to a new capture file:
-
-.sp
-.in +2
-.nf
-example# \fBsnoop -i pkts -o pkts.nfs rpc nfs sunroof boutique\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-To view encapsulated packets, there will be an indicator of encapsulation:
-
-.sp
-.in +2
-.nf
-example# \fBsnoop ip-in-ip\fR
-sunroof -> boutique ICMP Echo request (1 encap)
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-If -V is used on an encapsulated packet:
-
-.sp
-.in +2
-.nf
-example# \fBsnoop -V ip-in-ip\fR
-sunroof -> boutique ETHER Type=0800 (IP), size = 118 bytes
-sunroof -> boutique IP D=172.16.40.222 S=172.16.40.200 LEN=104, ID=27497
-sunroof -> boutique IP D=10.1.1.2 S=10.1.1.1 LEN=84, ID=27497
-sunroof -> boutique ICMP Echo request
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRSetting Up A More Efficient Filter
-.sp
-.LP
-To set up a more efficient filter, the following filters should be used toward
-the end of the expression, so that the first part of the expression can be set
-up in the kernel: \fBgreater\fR, \fBless\fR, \fBport\fR, \fBrpc\fR,
-\fBnofrag\fR, and \fBrelop\fR. The presence of \fBOR\fR makes it difficult to
-split the filtering when using these primitives that cannot be set in the
-kernel. Instead, use parentheses to enforce the primitives that should be
-\fBOR\fR'd.
-
-.sp
-.LP
-To capture packets between \fBfunky\fR and \fBpinky\fR of type \fBtcp\fR or
-\fBudp\fR on \fBport\fR 80:
-
-.sp
-.in +2
-.nf
-example# \fBsnoop funky and pinky and port 80 and tcp or udp\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Since the primitive \fBport\fR cannot be handled by the kernel filter, and
-there is also an \fBOR\fR in the expression, a more efficient way to filter is
-to move the \fBOR\fR to the end of the expression and to use parentheses to
-enforce the \fBOR\fR between \fBtcp\fR and \fBudp\fR:
-
-.sp
-.in +2
-.nf
-example# \fBsnoop funky and pinky and (tcp or udp) and port 80\fR
-.fi
-.in -2
-.sp
-
-.SH EXIT STATUS
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 5n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB1\fR\fR
-.ad
-.RS 5n
-An error occurred.
-.RE
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/dev/audio\fR\fR
-.ad
-.RS 17n
-Symbolic link to the system's primary audio device.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/null\fR\fR
-.ad
-.RS 17n
-The null file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/hosts\fR\fR
-.ad
-.RS 17n
-Host name database.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/rpc\fR\fR
-.ad
-.RS 17n
-RPC program number data base.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/services\fR\fR
-.ad
-.RS 17n
-Internet services and aliases.
-.RE
-
-.SH SEE ALSO
-\fBdladm\fR(1M), \fBifconfig\fR(1M), \fBnetstat\fR(1M), \fBhosts\fR(4),
-\fBrpc\fR(4), \fBservices\fR(4), \fBattributes\fR(5), \fBaudio\fR(7I),
-\fBipnet\fR(7D), \fBbufmod\fR(7M), \fBdlpi\fR(7P), \fBpfmod\fR(7M)
-.sp
-.LP
-Callaghan, B. and Gilligan, R. \fIRFC 1761, Snoop Version 2 Packet Capture File
-Format\fR. Network Working Group. February 1995.
-.SH WARNINGS
-The processing overhead is much higher for real-time packet interpretation.
-Consequently, the packet drop count may be higher. For more reliable capture,
-output raw packets to a file using the \fB-o\fR option and analyze the packets
-offline.
-.sp
-.LP
-Unfiltered packet capture imposes a heavy processing load on the host computer,
-particularly if the captured packets are interpreted real-time. This processing
-load further increases if verbose options are used. Since heavy use of
-\fBsnoop\fR may deny computing resources to other processes, it should not be
-used on production servers. Heavy use of \fBsnoop\fR should be restricted to a
-dedicated computer.
-.sp
-.LP
-\fBsnoop\fR does not reassemble \fBIP\fR fragments. Interpretation of higher
-level protocol halts at the end of the first \fBIP\fR fragment.
-.sp
-.LP
-\fBsnoop\fR may generate extra packets as a side-effect of its use. For example
-it may use a network name service to convert \fBIP\fR addresses
-to host names for display. Capturing into a file for later display can be used
-to postpone the address-to-name mapping until after the capture session is
-complete. Capturing into an NFS-mounted file may also generate extra packets.
-.sp
-.LP
-Setting the \fBsnaplen\fR (\fB-s\fR option) to small values may remove header
-information that is needed to interpret higher level protocols. The exact
-cutoff value depends on the network and protocols being used. For \fBNFS\fR
-Version 2 traffic using \fBUDP\fR on 10 Mb/s Ethernet, do not set \fBsnaplen\fR
-less than 150 bytes. For \fBNFS\fR Version 3 traffic using \fBTCP\fR on 100
-Mb/s Ethernet, \fBsnaplen\fR should be 250 bytes or more.
-.sp
-.LP
-\fBsnoop\fR requires information from an \fBRPC\fR request to fully interpret
-an \fBRPC\fR reply. If an \fBRPC\fR reply in a capture file or packet range
-does not have a request preceding it, then only the \fBRPC\fR reply header will
-be displayed.
diff --git a/usr/src/man/man1m/soconfig.1m b/usr/src/man/man1m/soconfig.1m
deleted file mode 100644
index 6166bba627..0000000000
--- a/usr/src/man/man1m/soconfig.1m
+++ /dev/null
@@ -1,203 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 2015 Nexenta Systems, Inc. All rights reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SOCONFIG 1M "May 21, 2015"
-.SH NAME
-soconfig \- configure transport providers for use by sockets
-.SH SYNOPSIS
-.LP
-.nf
-\fB/sbin/soconfig\fR \fB-d\fR \fIdir\fR
-.fi
-
-.LP
-.nf
-\fB/sbin/soconfig\fR \fB-f\fR \fIfile\fR
-.fi
-
-.LP
-.nf
-\fB/sbin/soconfig\fR \fIfamily\fR \fItype\fR \fIprotocol\fR [\fImodule\fR | \fIpath\fR]
-.fi
-
-.LP
-.nf
-\fB/sbin/soconfig\fR \fB-l\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBsoconfig\fR utility configures the transport provider driver for use
-with sockets. It specifies how the family, type, and protocol parameters in the
-\fBsocket\fR(3SOCKET) call are mapped to the name of a transport provider such
-as \fB/dev/tcp\fR. This utility can be used to add an additional mapping or
-remove a previous mapping.
-.sp
-.LP
-The \fBinit\fR(1M) utility uses \fBsoconfig\fR with the \fBsock2path.d\fR(4)
-directory during the booting sequence.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-d\fR \fIdir\fR\fR
-.ad
-.RS 11n
-Set up the \fBsoconfig\fR configuration for each driver
-according to the information stored in the
-files in \fIdir\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR \fIfile\fR\fR
-.ad
-.RS 11n
-Set up the \fBsoconfig\fR configuration for each driver according to the
-information stored in \fIfile\fR. A \fBsoconfig\fR file consists of lines of at
-least the first three fields listed below, separated by spaces:
-.sp
-\fIfamily type protocol [module | path]\fR
-.sp
-These fields are described in the \fBOPERANDS\fR section below.
-.sp
-An example of \fIfile\fR can be found in the \fBEXAMPLES\fR section below.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR
-.ad
-.RS 11n
-Print the in-kernel socket configuration table.
-.RE
-
-.SH OPERANDS
-.sp
-.LP
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fB\fIfamily\fR\fR
-.ad
-.RS 17n
-The protocol family as listed in the \fB/usr/include/sys/socket.h\fR file,
-expressed as an integer.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fItype\fR\fR
-.ad
-.RS 17n
-The socket type as listed in the \fB/usr/include/sys/socket.h\fR file,
-expressed as an integer.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIprotocol\fR\fR
-.ad
-.RS 17n
-The protocol number as specified in the family-specific \fBinclude\fR file,
-expressed as an integer. For example, for \fBAF_INET\fR this number is
-specified in \fB/usr/include/netinet/in.h\fR. An unspecified protocol number is
-denoted with the value zero.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fImodule\fR | \fIpath\fR\fR
-.ad
-.RS 17n
-The module name or path name of a device that corresponds to the transport
-provider, such as \fBtcp\fR or \fB/dev/tcp\fR. Modules must reside in
-\fBkernel/socketmod\fR. A device name must begin with \fB/dev\fR. If this
-parameter is specified, the configuration will be added for the specified
-family, type, and protocol. If this parameter is not specified, the
-configuration will be removed.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRUsing \fBsoconfig\fR
-.sp
-.LP
-The following example sets up a module for family \fBAF_INET\fR and type
-\fBSOCK_STREAM\fR:
-
-.sp
-.in +2
-.nf
-example# \fBsoconfig 2 2 0 tcp\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The following example sets up \fB/dev/tcp\fR for family \fBAF_INET\fR and type
-\fBSOCK_STREAM\fR:
-
-.sp
-.in +2
-.nf
-example# \fBsoconfig 2 2 0 /dev/tcp\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The following is a sample file used with the \fB-f\fR option. Comment lines
-begin with a hash mark (\fB#\fR):
-
-.sp
-.in +2
-.nf
-# Family Type Protocol Module | Path
- 2 2 0 tcp
- 2 2 6 tcp
-
- 2 1 0 udp
- 2 1 17 udp
-
- 1 2 0 /dev/ticotsord
- 1 1 0 /dev/ticlts
-
- 2 4 0 icmp
-.fi
-.in -2
-.sp
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/sock2path.d\fR\fR
-.ad
-.RS 18n
-Directory containing files with mappings from
-sockets to transport providers.
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBinit\fR(1M), \fBsock2path.d\fR(4), \fBattributes\fR(5)
-.sp
-.LP
-\fINetwork Interface Guide\fR
diff --git a/usr/src/man/man1m/sppptun.1m b/usr/src/man/man1m/sppptun.1m
deleted file mode 100644
index 5f9bef0088..0000000000
--- a/usr/src/man/man1m/sppptun.1m
+++ /dev/null
@@ -1,236 +0,0 @@
-'\" te
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SPPPTUN 1M "May 27, 2009"
-.SH NAME
-sppptun \- PPP tunneling driver utility
-.SH SYNOPSIS
-.LP
-.nf
-\fBsppptun plumb\fR
-.fi
-
-.LP
-.nf
-\fBsppptun plumb\fR [\fB-s\fR \fIsap\fR] \fIprotocol device\fR
-.fi
-
-.LP
-.nf
-\fBsppptun unplumb\fR \fIinterface\fR
-.fi
-
-.LP
-.nf
-\fBsppptun query\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBsppptun\fR utility is used to configure and query the Solaris PPP
-tunneling device driver, \fB/dev/sppptun\fR. Currently, only PPP over Ethernet
-(PPPoE) is supported, so the \fBplumb\fR and \fBunplumb\fR arguments are used
-to specify Ethernet interfaces that are to be used for PPPoE, and the
-\fBquery\fR option lists the plumbed interfaces.
-.sp
-.LP
-The use of \fBsppptun\fR to add interfaces is similar to the use of
-\fBifconfig\fR(1M) to add interfaces to IP. The plumbing is done once for each
-interface, preferably at system start-up time, and is not normally manipulated
-on a running system. If multiple instances of PPP are run over a single
-interface, they share the plumbing to that interface. Plumbing for each session
-is not required (and not possible for PPPoE).
-.sp
-.LP
-The proper way to plumb interfaces for PPPoE is to list the interfaces, one per
-line, in the \fB/etc/ppp/pppoe.if\fR file. If alternate Ethertype (SAP) values
-are necessary, then include the PPPoE Session and Discovery Stage values as
-hexadecimal on the same line. The line format is:
-.sp
-.in +2
-.nf
-\fIinterface\fR [\fIsession\fR [\fIdiscovery\fR]]
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The defaults are the Ethertypes specified in RFC 2516, and most users should
-not need to set these values. See the examples for one possible use.
-.SH USAGE
-.sp
-.ne 2
-.na
-\fB\fBsppptun plumb\fR\fR
-.ad
-.sp .6
-.RS 4n
-When specified with no additional arguments, the plumb argument lists the
-protocols that are supported by the utility. These are the strings that are
-used as the \fIprotocol\fR argument below.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsppptun plumb [\fB-s\fR \fIsap\fR] \fIprotocol\fR \fIdevice\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-This plumbs a new interface into the driver. The \fIprotocol\fR parameter is
-\fBpppoe\fR for the PPP-carrying "Session Stage" connection or \fBpppoed\fR for
-the PPPoE "Discovery Stage" connection. Both connections must be present for
-each Ethernet interface that is to be used for PPPoE. The \fIdevice\fR
-parameter is the path name of the Ethernet interface to use (use
-\fBifconfig\fR(1M) to list available devices). If the path begins with
-\fB/dev/\fR, then this portion may be omitted.
-.sp
-The \fB-s\fR \fIsap\fR option can be specified to use an alternate Ethertype
-(SAP) for the selected protocol. The \fIsap\fR value must be given in
-hexadecimal. Some access servers use Ethertypes for PPPoE different from those
-in RFC 2516. The defaults are 8864 for \fBpppoe\fR and 8863 for \fBpppoed\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsppptun unplumb \fIinterface\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-This removes an existing interface from the driver and terminates any PPP
-sessions that were using the interface. The \fIinterface\fR parameter is the
-name of the interface as reported when the interface was plumbed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsppptun query\fR\fR
-.ad
-.sp .6
-.RS 4n
-Displays the canonical names of all interfaces plumbed into the
-\fB/dev/sppptun\fR device driver.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRSetting up to Use PPPoE on \fBhme0\fR
-.sp
-.LP
-Plumb the \fBhme0\fR interface.
-
-.sp
-.in +2
-.nf
-# \fBsppptun plumb pppoed hme0\fR
-hme0:pppoed
-# \fBsppptun plumb pppoe hme0\fR
-hme0:pppoe
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Remove the \fBhme0\fR interface.
-
-.sp
-.in +2
-.nf
-# \fBsppptun unplumb hme0:pppoed\fR
-# \fBsppptun unplumb hme0:pppoe\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRScript to Remove All Plumbed Interfaces
-.sp
-.in +2
-.nf
-#!/bin/sh
-for intf in `sppptun query`
-do
- sppptun unplumb $intf
-done
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRInteroperating with 3COM HomeConnect Dual Link ADSL
-.sp
-.in +2
-.nf
-# \fBdladm show-link\fR
-LINK CLASS MTU STATE OVER
-nge0 phys 1500 up --
-# \fBecho nge0 3c13 3c12 > /etc/ppp/pppoe.if\fR
-.fi
-.in -2
-.sp
-
-.SH EXIT STATUS
-.sp
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 5n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB1\fR\fR
-.ad
-.RS 5n
-One or more errors occurred.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/ppp/pppoe.if\fR\fR
-.ad
-.RS 21n
-list of Ethernet interfaces to be plumbed at boot time
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/sbin/sppptun\fR\fR
-.ad
-.RS 21n
-executable command
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/sppptun\fR\fR
-.ad
-.RS 21n
-Solaris PPP tunneling device driver
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBpppd\fR(1M), \fBpppoec\fR(1M), \fBpppoed\fR(1M), \fBsppptun\fR(7M)
-.sp
-.LP
-\fIRFC 2516, Method for Transmitting PPP Over Ethernet (PPPoE)\fR, Mamakos et
-al, February 1999
diff --git a/usr/src/man/man1m/spray.1m b/usr/src/man/man1m/spray.1m
deleted file mode 100644
index 2b0c228a9f..0000000000
--- a/usr/src/man/man1m/spray.1m
+++ /dev/null
@@ -1,81 +0,0 @@
-'\" te
-.\" Copyright (c) 1998, Sun Microsystems,
-.\" Inc. All Rights Reserved
-.\" Copyright 1989 AT&T Copyright (c)
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SPRAY 1M "Nov 6, 2000"
-.SH NAME
-spray \- spray packets
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/spray\fR [\fB-c\fR \fIcount\fR] [\fB-d\fR \fIdelay\fR] [\fB-l\fR \fIlength\fR]
- [\fB-t\fR \fInettype\fR] \fIhost\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBspray\fR sends a one-way stream of packets to \fIhost\fR using RPC, and
-reports how many were received, as well as the transfer rate. The \fIhost\fR
-argument can be either a name or an Internet address.
-.sp
-.LP
-\fBspray\fR is not useful as a networking benchmark, as it uses unreliable
-connectionless transports, UDP for example. \fBspray\fR can report a large
-number of packets dropped when the drops were caused by \fBspray\fR sending
-packets faster than they can be buffered locally, that is, before the packets
-get to the network medium.
-.SH OPTIONS
-.sp
-.ne 2
-.na
-\fB\fB-c\fR \fIcount\fR\fR
-.ad
-.RS 14n
-Specify how many packets to send. The default value of \fIcount\fR is the
-number of packets required to make the total stream size 100000 bytes.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-d\fR \fIdelay\fR\fR
-.ad
-.RS 14n
-Specify how many microseconds to pause between sending each packet. The default
-is \fB0\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR \fIlength\fR\fR
-.ad
-.RS 14n
-The \fIlength\fR parameter is the numbers of bytes in the Ethernet packet that
-holds the RPC call message. Since the data is encoded using XDR, and XDR only
-deals with 32 bit quantities, not all values of \fIlength\fR are possible, and
-\fBspray\fR rounds up to the nearest possible value. When \fIlength\fR is
-greater than 1514, then the RPC call can no longer be encapsulated in one
-Ethernet packet, so the \fIlength\fR field no longer has a simple
-correspondence to Ethernet packet size. The default value of \fIlength\fR is
-\fB86 bytes\fR, the size of the RPC and UDP headers.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-t\fR \fInettype\fR\fR
-.ad
-.RS 14n
-Specify class of transports. Defaults to \fBnetpath\fR. See \fBrpc\fR(3NSL)
-for a description of supported classes.
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBrpc\fR(3NSL), \fBattributes\fR(5)
diff --git a/usr/src/man/man1m/statd.1m b/usr/src/man/man1m/statd.1m
deleted file mode 100644
index 910001b00f..0000000000
--- a/usr/src/man/man1m/statd.1m
+++ /dev/null
@@ -1,112 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 2004 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH STATD 1M "Nov 18, 2004"
-.SH NAME
-statd \- network status monitor
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/nfs/statd\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBstatd\fR is an intermediate version of the status monitor. It interacts with
-\fBlockd\fR(1M) to provide the crash and recovery functions for the locking
-services on NFS. \fBstatd\fR keeps track of the clients with processes which
-hold locks on a server. When the server reboots after a crash, \fBstatd\fR
-sends a message to the \fBstatd\fR on each client indicating that the server
-has rebooted. The client \fBstatd\fR processes then inform the \fBlockd\fR on
-the client that the server has rebooted. The client \fBlockd\fR then attempts
-to reclaim the lock(s) from the server.
-.sp
-.LP
-\fBstatd\fR on the client host also informs the \fBstatd\fR on the server(s)
-holding locks for the client when the client has rebooted. In this case, the
-\fBstatd\fR on the server informs its \fBlockd\fR that all locks held by the
-rebooting client should be released, allowing other processes to lock those
-files.
-.sp
-.LP
-\fBlockd\fR is started by \fBautomountd\fR(1M), \fBmount_nfs\fR(1M), and
-\fBshare\fR(1M) if NFS automounts are needed.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/var/statmon/sm\fR\fR
-.ad
-.sp .6
-.RS 4n
-lists hosts and network addresses to be contacted after a reboot
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/statmon/sm.bak\fR\fR
-.ad
-.sp .6
-.RS 4n
-lists hosts and network addresses that could not be contacted after last reboot
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/statmon/state\fR\fR
-.ad
-.sp .6
-.RS 4n
-includes a number which changes during a reboot
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/include/rpcsvc/sm_inter.x\fR\fR
-.ad
-.sp .6
-.RS 4n
-contains the rpcgen source code for the interface services provided by the
-statd daemon.
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBsvcs\fR(1), \fBautomountd\fR(1M), \fBlockd\fR(1M), \fBmount_nfs\fR(1M),
-\fBshare\fR(1M), \fBsvcadm\fR(1M), \fBattributes\fR(5), \fBsmf\fR(5)
-.sp
-.LP
-\fI\fR
-.SH NOTES
-.sp
-.LP
-The crash of a server is only detected upon its recovery.
-.sp
-.LP
-The \fBstatd\fR service is managed by the service management facility,
-\fBsmf\fR(5), under the service identifier:
-.sp
-.in +2
-.nf
-svc:/network/nfs/status
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Administrative actions on this service, such as enabling, disabling, or
-requesting restart, can be performed using \fBsvcadm\fR(1M). The service's
-status can be queried using the \fBsvcs\fR(1) command.
-.sp
-.LP
-If it is disabled, it will be enabled by \fBmount_nfs\fR(1M),
-\fBshare_nfs\fR(1M), and \fBautomountd\fR(1M) unless its
-\fBapplication/auto_enable\fR property is set to \fBfalse\fR.
diff --git a/usr/src/man/man1m/stmfadm.1m b/usr/src/man/man1m/stmfadm.1m
deleted file mode 100644
index 1444e35832..0000000000
--- a/usr/src/man/man1m/stmfadm.1m
+++ /dev/null
@@ -1,668 +0,0 @@
-.\"
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.\"
-.\"
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 2017 Nexenta Systems, Inc.
-.\"
-.Dd March 1, 2016
-.Dt STMFADM 1M
-.Os
-.Sh NAME
-.Nm stmfadm
-.Nd SCSI target mode framework command line interface
-.Sh SYNOPSIS
-.Nm
-.Cm add-hg-member
-.Fl g Ar host-group
-.Ar initiator Ns ...
-.Nm
-.Cm add-tg-member
-.Fl g Ar target-group
-.Ar target Ns ...
-.Nm
-.Cm add-view
-.Op Fl h Ar host-group
-.Op Fl n Ar lu-number
-.Op Fl t Ar target-group
-.Ar lu-name
-.Nm
-.Cm create-hg
-.Ar group-name
-.Nm
-.Cm create-lu
-.Oo Fl p Ar property Ns = Ns Ar value Oc Ns ...
-.Op Fl s Ar size
-.Ar lu-file
-.Nm
-.Cm create-tg
-.Ar group-name
-.Nm
-.Cm delete-hg
-.Ar group-name
-.Nm
-.Cm delete-lu
-.Op Fl k
-.Ar lu-name
-.Nm
-.Cm delete-tg
-.Ar group-name
-.Nm
-.Cm import-lu
-.Ar lu-file
-.Nm
-.Cm list-hg
-.Op Fl v
-.Oo Ar host-group Oc Ns ...
-.Nm
-.Cm list-lu
-.Op Fl v
-.Oo Ar lu-name Oc Ns ...
-.Nm
-.Cm list-state
-.Nm
-.Cm list-target
-.Op Fl v
-.Oo Ar target Oc Ns ...
-.Nm
-.Cm list-tg
-.Op Fl v
-.Oo Ar target-group Oc Ns ...
-.Nm
-.Cm list-view
-.Fl l Ar lu-name
-.Oo Ar view Oc Ns ...
-.Nm
-.Cm modify-lu
-.Op Fl f
-.Oo Fl p Ar property Ns = Ns Ar value Oc Ns ...
-.Op Fl s Ar size
-.Ar lu-arg
-.Nm
-.Cm offline-lu
-.Ar lu-name
-.Nm
-.Cm offline-target
-.Ar target
-.Nm
-.Cm online-lu
-.Ar lu-name
-.Nm
-.Cm online-target
-.Ar target
-.Nm
-.Cm remove-hg-member
-.Fl g Ar host-group
-.Ar initiator Ns ...
-.Nm
-.Cm remove-tg-member
-.Fl g Ar target-group
-.Ar target Ns ...
-.Nm
-.Cm remove-view
-.Op Fl a
-.Fl l Ar lu-name
-.Ar view Ns ...
-.Sh DESCRIPTION
-The
-.Nm
-command configures logical units within the SCSI Target Mode Framework
-.Pq STMF
-framework.
-The framework and this man page use the following terminology:
-.Bl -tag -width Ds
-.It Sy initiator
-A device responsible for issuing SCSI I/O commands to a SCSI target and logical
-unit.
-.It Sy target
-A device responsible for receiving SCSI I/O commands for a logical unit.
-.It Sy logical unit
-A device within a target responsible for executing SCSI I/O commands.
-.It Sy logical unit number
-The identifier of a logical unit within a target.
-.It Sy host group
-An host group is a set of one or more initiators that are combined for the
-purposes of being applied to a
-.Sy view
-.Pq see below .
-An initiator cannot be a member of more than one host group.
-.It Sy target group
-A target group is a set of one or more SCSI target ports that are treated the
-same when creating a
-.Sy view
-.Pq see below .
-The set of logical units that a particular SCSI initiator can see is determined
-by the combined set of views.
-.Pp
-Each logical unit has a set of view entries, and each view entry specifies a
-target group, host group, and a LUN.
-An initiator from that host group, when connecting through that target group, is
-able to identify and connect to that logical unit using the specified LUN.
-You can use views to restrict the set of logical units that a specific initiator
-can see, and assign the set of LUNs that will be used.
-.It Sy view
-A view defines the association of a host group, a target group, and a logical
-unit number with a specified logical unit.
-Any view entry added to a logical unit must not be in conflict with existing
-view entries for that logical unit.
-A view entry is considered to be in conflict when an attempt is made to
-duplicate the association of any given host, target and logical unit number.
-.El
-.Ss Logical Unit Properties
-The following logical unit properties can be set only when creating LU using
-.Cm create-lu
-subcommand:
-.Bl -tag -width Ds
-.It Sy blk Ns = Ns Ar num
-Specifies the block size for the device.
-The default is 512.
-.It Sy guid Ns = Ns Ar string
-32 hexadecimal ASCII characters representing a valid NAA Registered Extended
-Identifier.
-The default is set by the STMF to a generated value.
-.It Sy meta Ns = Ns Ar path
-Metadata file name.
-When specified, will be used to hold the SCSI metadata for the logical unit.
-There is no default.
-.It Sy oui Ns = Ns Ar string
-Organizational Unique Identifier.
-Six hexadecimal ASCII characters representing the IEEE OUI company ID
-assignment.
-This will be used to generate the device identifier
-.Pq GUID .
-The default is
-.Sy 00144F .
-.It Sy pid Ns = Ns Ar string
-16 bytes ASCII string defining Product ID per SCSI SPC-3.
-This value will be reflected in the Standard INQUIRY data returned for the
-device.
-The default is
-.Sy COMSTAR .
-.It Sy serial Ns = Ns Ar string
-Serial Number.
-Specifies the SCSI Vital Product Data Serial Number
-.Pq page 80h .
-It is a character value up to 252 bytes in length.
-There is no default value.
-.It Sy vid Ns = Ns Ar string
-8 bytes ASCII string defining Vendor ID per SCSI SPC-3.
-This value will be reflected in the Standard INQUIRY data returned for the
-device.
-The default is
-.Sy SUN .
-.El
-.Pp
-The following logical unit properties can be set when creating LU using
-.Cm create-lu
-subcommand or modified using
-.Cm modify-lu
-subcommand:
-.Bl -tag -width Ds
-.It Sy alias Ns = Ns Ar string
-Up to 255 characters, representing a user-defined name for the device.
-The default is the name of the backing store.
-.It Sy mgmt-url Ns = Ns Ar string
-Up to 1024 characters representing a Management Network Address URL.
-More than one URL can be passed as a single parameter by using space-delimited
-URLs enclosed inside a single pair of quotation marks
-.Pq Sy \(dq .
-.It Sy wcd Ns = Ns Sy true Ns | Ns Sy false
-Write-back cache disable.
-Determines write-back cache disable behavior.
-The default is the write-back cache setting of the backing store device
-specified by the
-.Ar lu-file
-argument.
-.It Sy wp Ns = Ns Sy true Ns | Ns Sy false
-Write-protect bit.
-Determines whether the device reports as write-protected.
-The default is
-.Sy false .
-.El
-.Ss Subcommands
-The
-.Nm
-command supports the subcommands listed below.
-.Bl -tag -width Ds
-.It Xo
-.Nm
-.Cm add-hg-member
-.Fl g Ar host-group
-.Ar initiator Ns ...
-.Xc
-Add a host group member to a host group.
-.Pp
-An initiator cannot be a member of more than one host group.
-.Bl -tag -width Ds
-.It Fl g Ns \&, Ns Fl -group-name Ar host-group
-Specifies group name.
-.Ar host-group
-must be an existing group created using the
-.Cm create-hg
-subcommand.
-.El
-.It Xo
-.Nm
-.Cm add-tg-member
-.Fl g Ar target-group
-.Ar target Ns ...
-.Xc
-Add a target group member to a target group.
-.Pp
-A target cannot be a member of more than one target group.
-.Bl -tag -width Ds
-.It Fl g Ns \&, Ns Fl -group-name Ar target-group
-Specifies group name.
-.Ar target-group
-must be an existing group created using the
-.Cm create-tg
-subcommand.
-.El
-.It Xo
-.Nm
-.Cm add-view
-.Op Fl h Ar host-group
-.Op Fl n Ar lu-number
-.Op Fl t Ar target-group
-.Ar lu-name
-.Xc
-Add a logical unit view entry to a logical unit
-.Ar lu-name ,
-where
-.Ar lu-name
-is the STMF name for the logical unit as displayed by the
-.Cm list-lu
-subcommand.
-The
-.Cm add-view
-subcommand provides the user with a mechanism to implement access control for a
-logical unit and also provides a means of assigning a logical unit number to a
-logical unit for a given set of initiators and targets.
-A logical unit will not be available to any initiators until at least one view
-is applied.
-Each view entry gets assigned an entry name, which can be used to reference the
-entry in the
-.Cm list-view
-and
-.Cm remove-view
-subcommands.
-.Bl -tag -width Ds
-.It Fl h Ns \&, Ns Fl -host-group Ar host-group
-.Ar host-group
-is the name of an host group previously created using
-.Cm create-hg
-subcommand.
-If this option is not specified, the logical unit will be available to all
-initiators that log in to the STMF framework.
-.It Fl n Ns \&, Ns Fl -lun Ar lu-number
-.Ar lu-number
-is an integer in the range 0-16383 to be assigned to the logical unit for this
-view entry.
-If this option is not specified, a logical unit number will be assigned by the
-STMF framework.
-.It Fl t Ns \&, Ns Fl -target-group Ar target-group
-.Ar target-group
-is the name of a target group previously created using
-.Cm create-tg
-subcommand.
-If this option is not specified, the logical unit will be available through all
-targets.
-.El
-.It Xo
-.Nm
-.Cm create-hg
-.Ar group-name
-.Xc
-Create a host group with the name
-.Ar group-name .
-.Ar group-name
-is a string of Unicode characters with a maximum length of 255.
-The group name must be unique within the STMF system.
-.It Xo
-.Nm
-.Cm create-lu
-.Oo Fl p Ar property Ns = Ns Ar value Oc Ns ...
-.Op Fl s Ar size
-.Ar lu-file
-.Xc
-Create a logical unit that can be registered with STMF.
-.Ar lu-file
-is the file to be used as the backing store for the logical unit.
-If the
-.Fl s
-option is not specified, the size of the specified
-.Ar lu-file
-will be used as the size of the logical unit.
-.Pp
-Logical units registered with the STMF require space for the metadata to be
-stored.
-When a
-.Sy zvol
-is specified as the backing store device, the default will be to use a special
-property of the
-.Sy zvol
-to contain the metadata.
-For all other devices, the default behavior will be to use the first 64k of the
-device.
-An alternative approach would be to use the
-.Sy meta
-property in a
-.Cm create-lu
-subcommand to specify an alternate file to contain the metadata.
-It is advisable to use a file that can provide sufficient storage of the logical
-unit metadata, preferably 64k.
-.Bl -tag -width Ds
-.It Fl p Ns \&, Ns Fl -lu-prop Ar property Ns = Ns Ar value
-Set specified logical unit property.
-Check
-.Sx Logical Unit Properties
-for the list of available properties.
-.It Fl s Ns \&, Ns Fl -size Ar size
-.Ar size
-is an integer followed by one of the following letters, to indicate a unit of
-size:
-.Sy k , m , g , t , p , e ,
-specifying kilobyte, megabyte, gigabyte, terabyte, petabyte and exabyte
-respectively.
-.El
-.It Xo
-.Nm
-.Cm create-tg
-.Ar group-name
-.Xc
-Create a target group with the name
-.Ar group-name .
-.Ar group-name
-is a string of Unicode characters with a maximum length of 255.
-The group name must be unique within the STMF system.
-.It Xo
-.Nm
-.Cm delete-hg
-.Ar group-name
-.Xc
-Delete the host group identified by
-.Ar group-name .
-.It Xo
-.Nm
-.Cm delete-lu
-.Op Fl k
-.Ar lu-name
-.Xc
-Delete an existing logical unit that was created using
-.Cm create-lu
-subcommand.
-This effectively unloads the logical unit from the STMF framework.
-Any existing data on the logical unit remains intact.
-.Bl -tag -width Ds
-.It Fl k Ns \&, Ns Fl -keep-views
-Keep view entries for this logical unit.
-.El
-.It Xo
-.Nm
-.Cm delete-tg
-.Ar group-name
-.Xc
-Delete the target group identified by
-.Ar group-name .
-.It Xo
-.Nm
-.Cm import-lu
-.Ar lu-file
-.Xc
-Import and load a logical unit into the STMF that was previously created using
-.Cm create-lu
-subcommand and was then deleted from the STMF using
-.Cm delete-lu
-subcommand.
-On success, the logical unit is again made available to the STMF.
-.Ar lu-file
-is the filename used in the
-.Cm create-lu
-subcommand.
-If this logical unit is using a separate metadata file, the filename in the
-.Sy meta
-property value that was used in the
-.Cm create-lu
-subcommand must be used here.
-.It Xo
-.Nm
-.Cm list-hg
-.Op Fl v
-.Oo Ar host-group Oc Ns ...
-.Xc
-List information for the host group in the system referenced by
-.Ar host-group .
-If
-.Ar host-group
-is not specified, all host groups in the system will be listed.
-.Bl -tag -width Ds
-.It Fl v Ns \&, Ns Fl -verbose
-Display all host group members.
-.El
-.It Xo
-.Nm
-.Cm list-lu
-.Op Fl v
-.Oo Ar lu-name Oc Ns ...
-.Xc
-List information for the logical unit in the system referenced by
-.Ar lu-name .
-If
-.Ar lu-name
-is not specified, all logical units in the system will be listed.
-.Bl -tag -width Ds
-.It Fl v Ns \&, Ns Fl -verbose
-Display verbose information about the logical unit.
-.El
-.It Xo
-.Nm
-.Cm list-state
-.Xc
-List the operational and configuration state of the STMF.
-.It Xo
-.Nm
-.Cm list-target
-.Op Fl v
-.Oo Ar target Oc Ns ...
-.Xc
-List information for the target port in the system referenced by
-.Ar target .
-If target name is not specified, all target ports in the system will be listed.
-.Bl -tag -width Ds
-.It Fl v Ns \&, Ns Fl -verbose
-Display verbose information about the target along with SCSI session information
-for logged-in initiators.
-.El
-.It Xo
-.Nm
-.Cm list-tg
-.Op Fl v
-.Oo Ar target-group Oc Ns ...
-.Xc
-List information for the target group in the system referenced by
-.Ar target-group .
-If
-.Ar target-group
-is not specified, all target groups in the system will be listed.
-.Bl -tag -width Ds
-.It Fl v Ns \&, Ns Fl -verbose
-Display all group members.
-.El
-.It Xo
-.Nm
-.Cm list-view
-.Fl l Ar lu-name
-.Oo Ar view Oc Ns ...
-.Xc
-List the view entry for the logical unit referenced by
-.Ar lu-name .
-If
-.Ar view
-is not specified, all view entries for the specified logical unit will be
-listed.
-.Bl -tag -width Ds
-.It Fl l Ns \&, Ns Fl -lu-name Ar lu-name
-Specify logical unit.
-.El
-.It Xo
-.Nm
-.Cm modify-lu
-.Op Fl f
-.Oo Fl p Ar property Ns = Ns Ar value Oc Ns ...
-.Op Fl s Ar size
-.Ar lu-arg
-.Xc
-Modify attributes of a logical unit created using the
-.Cm create-lu
-subcommand.
-If
-.Fl f
-is not specified,
-.Ar lu-arg
-is interpreted as
-.Ar lu-name.
-.Bl -tag -width Ds
-.It Fl f Ns \&, Ns Fl -file
-If specified,
-.Ar lu-arg
-is interpreted as file name.
-This provides the ability to modify a logical unit that is not currently
-imported into the STMF.
-.It Fl p Ns \&, Ns Fl -lu-prop Ar property
-Modify specified logical unit property.
-See
-.Sx Logical Unit Properties
-for the list of available properties.
-.It Fl s Ns \&, Ns Fl -size Ar size
-.Ar size
-is an integer followed by one of the following letters, to indicate a unit of
-size:
-.Sy k , m , g , t , p , e ,
-specifying kilobyte, megabyte, gigabyte, terabyte, petabyte and exabyte
-respectively.
-.El
-.It Xo
-.Nm
-.Cm offline-lu
-.Ar lu-name
-.Xc
-Offline a logical unit currently registered with the STMF.
-.It Xo
-.Nm
-.Cm offline-target
-.Ar target-name
-.Xc
-Offline the specified target.
-.It Xo
-.Nm
-.Cm online-lu
-.Ar lu-name
-.Xc
-Online a logical unit currently registered with the STMF.
-.It Xo
-.Nm
-.Cm online-target
-.Ar target
-.Xc
-Online the specified target.
-.It Xo
-.Nm
-.Cm remove-hg-member
-.Fl g Ar host-group
-.Ar initiator
-.Xc
-Remove specified
-.Ar initiator
-from host group
-.Bl -tag -width Ds
-.It Fl g Ns \&, Ns Fl -group-name Ar host-group
-Specifies group name.
-.Ar host-group
-must be an existing group created using the
-.Cm create-hg
-subcommand.
-.El
-.It Xo
-.Nm
-.Cm remove-tg-member
-.Fl g Ar target-group
-.Ar target
-.Xc
-Remove specified
-.Ar target
-from target group.
-.Bl -tag -width Ds
-.It Fl g Ns \&, Ns Fl -group-name Ar taget-group
-Specifies group name.
-.Ar target-group
-must be an existing group created using the
-.Cm create-tg
-subcommand.
-.El
-.It Xo
-.Nm
-.Cm remove-view
-.Op Fl a
-.Fl l Ar lu-name
-.Ar view Ns ...
-.Xc
-Remove one or more view entries from a logical unit.
-.Bl -tag -width Ds
-.It Fl a Ns \&, Ns Fl -all
-Remove all view entries for this logical unit.
-.It Fl l Ns \&, Ns Fl -lu-name
-Specify logical unit.
-.El
-.El
-.Sh EXAMPLES
-.Bl -tag -width Ds
-.It Sy Example 1 No Creating a Host group with Two Initiator Ports
-The following commands use the
-.Cm create-hg
-and
-.Cm add-hg-member
-subcommands to create a host group and add two initiator ports to that host
-group.
-.Bd -literal
-# stmfadm create-hg HostA
-# stmfadm add-hg-member -g HostA wwn.210105b0000d92d0
-.Ed
-.It Sy Example 2 No Adding a View Entry to a Logical Unit
-The following command uses the
-.Cm add-view
-subcommand to allow access from
-.Sy HostA
-to a logical unit.
-.Bd -literal
-# stmfadm add-view -h HostA 6000AE40C5000000000046FC4FEA001C
-.Ed
-.It Sy Example 3 No Listing a View Entry
-The following command uses the
-.Cm list-view
-subcommand to list all view entries for the specified logical unit.
-.Bd -literal
-# stmfadm list-view -l 6000AE40C5000000000046FC4FEA001C
-View Entry: 0
- Host group : HostA
- Target group : All
- LUN : 0
-.Ed
-.El
-.Sh INTERFACE STABILITY
-.Sy Committed
-.Sh SEE ALSO
-.Xr sbdadm 1M ,
-.Xr attributes 5
diff --git a/usr/src/man/man1m/stmsboot.1m b/usr/src/man/man1m/stmsboot.1m
deleted file mode 100644
index 4c22057db2..0000000000
--- a/usr/src/man/man1m/stmsboot.1m
+++ /dev/null
@@ -1,397 +0,0 @@
-'\" te
-.\" Copyright 2008 Sun Microsystems, Inc. All Rights reserved. Use is subject to license terms.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH STMSBOOT 1M "Dec 15, 2008"
-.SH NAME
-stmsboot \- administration program for the Solaris I/O multipathing feature
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/stmsboot\fR [[\fB-d\fR | \fB-e\fR [\fB-D\fR (fp | mpt) ]]
- | \fB-u\fR | \fB-L\fR | \fB-l\fR \fIcontroller_number\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The Solaris I/O multipathing feature is a multipathing solution for storage
-devices that is part of the Solaris operating environment. This feature was
-formerly known as Sun StorEdge Traffic Manager (STMS) or MPxIO.
-.sp
-.LP
-The \fBstmsboot\fR program is an administrative command to manage enumeration
-of multipath-capable devices with Solaris I/O multipathing. Solaris I/O
-multipathing-enabled devices are enumerated under \fBscsi_vhci\fR(7D),
-providing multipathing capabilities. Solaris I/O multipathing-disabled devices
-are enumerated under the physical controller.
-.sp
-.LP
-In the \fB/dev\fR and \fB/devices\fR trees, Solaris I/O multipathing-enabled
-devices receive new names that indicate that they are under Solaris I/O
-multipathing control. This means a device will have a different name from its
-original name (after enabling) when it is under Solaris I/O multipathing
-control. The \fBstmsboot\fR command automatically updates \fB/etc/vfstab\fR and
-dump configuration to reflect the device names changes when enabling or
-disabling Solaris I/O multipathing. One reboot is required for changes to take
-effect.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-e\fR [ \fB-D\fR \fBfp | mpt\fR ]\fR
-.ad
-.sp .6
-.RS 4n
-Enables Solaris I/O multipathing on all supported multipath-capable controller
-ports. Multipath-capable ports include fibre channel (\fBfp\fR(7D)) controller
-ports and SAS (\fBmpt\fR(7D)) controller ports. Following this enabling, you
-are prompted to reboot. During the reboot, \fBvfstab\fR and the dump
-configuration will be updated to reflect the device name changes. Specifying
-either \fB-D\fR \fBmpt\fR or \fB-D\fR \fBfp\fR limits the enabling operation to
-ports attached using the specified driver.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-d\fR [ \fB-D\fR \fBfp | mpt\fR ]\fR
-.ad
-.sp .6
-.RS 4n
-Disables Solaris I/O multipathing on all supported multipath-capable controller
-ports. Multipath-capable ports include fibre channel (\fBfp\fR(7D)) controller
-ports and SAS (\fBmpt\fR(7D)) controller ports. Following this disabling, you
-are prompted to reboot. During the reboot, \fBvfstab\fR and the dump
-configuration will be updated to reflect the device name changes. Specifying
-either \fB-D\fR \fBmpt\fR or \fB-D\fR \fBfp\fR limits the disabling operation
-to ports attached using the specified driver.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-u\fR\fR
-.ad
-.sp .6
-.RS 4n
-Updates \fBvfstab\fR and the dump configuration after you have manually
-modified the configuration to have Solaris I/O multipathing enabled or disabled
-on specific multipath-capable controller ports. This option prompts you to
-reboot. During the reboot, \fBvfstab\fR and the dump configuration will be
-updated to reflect the device name changes.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-L\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display the device name changes from non-Solaris I/O multipathing device names
-to Solaris I/O multipathing device names for multipath-enabled controller
-ports. If Solaris I/O multipathing is not enabled, then no mappings are
-displayed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR \fIcontroller_number\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display the device name changes from non-Solaris I/O multipathing device names
-to Solaris I/O multipathing device names for the specified controller. If
-Solaris I/O multipathing is not enabled, then no mappings are displayed.
-.RE
-
-.SH USAGE
-.sp
-.LP
-The primary function of \fBstmsboot\fR is to control the enabling and disabling
-of Solaris I/O multipathing on the host. The utility automatically updates
-\fBvfstab\fR(4) and \fBdumpadm\fR(1M) configuration to reflect device name
-changes. The system administrator is responsible for modifying application
-configuration (for example, backup software, DBMS, and so forth) to reflect
-updated device names.
-.sp
-.LP
-The \fB-L\fR and \fB-l\fR options display the mapping between multipathed and
-non-multipathed device names. These options function only after changes to the
-Solaris I/O multipathing configuration have taken effect, that is, following
-the reboot after invoking \fBstmsboot\fR \fB-e\fR.
-.sp
-.LP
-ZFS datasets, including ZFS root datasets, are correctly handled by
-\fBstmsboot\fR.
-.SH EXAMPLES
-.LP
-\fBExample 1 \fREnabling Solaris I/O Multipathing
-.sp
-.LP
-To enable Solaris I/O multipathing for all multipath-capable controllers, run:
-
-.sp
-.in +2
-.nf
-# \fBstmsboot -e\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-To enable Solaris I/O multipathing on multipath-capable \fBmpt\fR(7D)
-controller ports, enter:
-
-.sp
-.in +2
-.nf
-# \fBstmsboot -D mpt -e\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-To enable Solaris I/O Multipathing on multipath-capable fibre channel
-controller ports, enter:
-
-.sp
-.in +2
-.nf
-# \fBstmsboot -D fp -e\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRDisabling Solaris I/O Multipathing
-.sp
-.LP
-To disable Solaris I/O multipathing on all multipath-capable controllers,
-enter:
-
-.sp
-.in +2
-.nf
-# \fBstmsboot -d\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-To disable Solaris I/O multipathing on multipath-capable \fBmpt\fR(7D)
-controller ports, enter:
-
-.sp
-.in +2
-.nf
-# \fBstmsboot -D mpt -d\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-To disable Solaris I/O multipathing on multipath-capable fibre channel
-controller ports, enter:
-
-.sp
-.in +2
-.nf
-# \fBstmsboot -D fp -d\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fREnabling Solaris I/O Multipathing on Selected Ports
-.sp
-.LP
-To enable Solaris I/O multipathing on specific fibre channel controller ports
-and disable the feature on others, manually edit the \fB/kernel/drv/fp.conf\fR
-file. (See \fBfp\fR(7D).) The following command will update \fBvfstab\fR(4) and
-\fBdumpadm\fR(1M) configurations to reflect the changed device names:
-
-.sp
-.in +2
-.nf
-# \fBstmsboot -u\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-A similar procedure involving the \fB/kernel/drv/mpt.conf\fR file should be
-followed for devices attached by means of the \fBmpt\fR(7D) driver.
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Obsolete
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBdumpadm\fR(1M), \fBfsck\fR(1M), \fBmpathadm\fR(1M), \fBufsdump\fR(1M),
-\fBzfs\fR(1M), \fBzpool\fR(1M), \fBdumpdates\fR(4), \fBvfstab\fR(4),
-\fBemlxs\fR(7D), \fBfcp\fR(7D), \fBfp\fR(7D), \fBmpt\fR(7D), \fBqlc\fR(7D),
-\fBscsi_vhci\fR(7D)
-.sp
-.LP
-\fISolaris SAN Configuration and Multipathing Guide\fR (see
-\fBhttp://docs.sun.com\fR)
-.sp
-.LP
-Consult a particular storage product's system administrator's guide and release
-notes for further information specific to that product.
-.SH NOTES
-.sp
-.LP
-Solaris I/O multipathing is not supported on all devices. After enabling
-Solaris I/O multipathing, only supported devices are placed under Solaris I/O
-multipathing control. Non-supported devices remain unchanged.
-.sp
-.LP
-For Solaris releases prior to the current release, the \fB-e\fR and \fB-d\fR
-options replace \fBmpxio-disable\fR property entries with a global
-\fBmpxio-disable\fR entry in \fBfp.conf\fR.
-.SS "Enabling Solaris I/O Multipathing on a Sun StorEdge Disk Array"
-.sp
-.LP
-The following applies to Sun StoreEdge T3, 3910, 3960, 6120, and 6320 storage
-subsystems.
-.sp
-.LP
-To place your Sun StorEdge disk subsystem under Solaris I/O multipathing
-control, in addition to enabling Solaris I/O multipathing, the \fBmp_support\fR
-of the subsystem must be set to \fBmpxio\fR mode. The preferred sequence is to
-change the subsystem's \fBmp_support\fR to \fBmpxio\fR mode, then run
-\fBstmsboot\fR \fB-e\fR. If Solaris I/O multipathing is already enabled but the
-subsystem's \fBmp_support\fR is not in \fBmpxio\fR mode, then change the
-\fBmp_support\fR to \fBmpxio\fR mode and run \fBstmsboot\fR \fB-u\fR.
-.sp
-.LP
-Refer to the \fISun StorEdge Administrator's Guide\fR for your subsystem for
-more details.
-.SS "Using \fBufsdump\fR"
-.sp
-.LP
-The \fBufsdump\fR(1M) command records details of filesystem dumps in
-\fB/etc/dumpdates\fR (see \fBdumpdates\fR(4)). Among other items, the entries
-contain device names. An effect of the "active" \fBstmsboot\fR options
-(\fB-e\fR, \fB-d\fR, and \fB-u\fR) is to change the device name of a storage
-device.
-.sp
-.LP
-Because \fBstmsboot\fR does not modify \fBdumpdates\fR, entries will refer to
-obsolete device names, that is, device names that were in effect before Solaris
-I/O multipathing configuration changes were performed. In this situation
-\fBufsdump\fR will behave as if no previous dump of the filesystem had been
-performed. A level 0 dump will be performed.
-.SS "Procedure to Use \fBstmsboot\fR in Conjunction with Sun Cluster"
-.sp
-.LP
-If possible, invoke \fBstmsboot\fR \fB-e\fR before installing Sun Cluster
-software. After executing \fBstmsboot\fR, install Sun Cluster software
-normally.
-.sp
-.LP
-If Sun Cluster software is installed before executing \fBstmsboot\fR, follow
-this procedure:
-.sp
-.LP
-On each machine in the cluster where Solaris I/O multipathing is required,
-execute:
-.sp
-.in +2
-.nf
-# \fBstmsboot -e\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-\&...and allow the system to reboot.
-.sp
-.LP
-When the system comes up, enter the following two commands:
-.RS +4
-.TP
-1.
-# \fB/usr/cluster/bin/scdidadm -C\fR
-.RE
-.RS +4
-.TP
-2.
-# \fB/usr/cluster/bin/scdidadm -r\fR
-.sp
-The preceding commands update \fBdid\fR mappings with new device names while
-preserving \fBdid\fR instance numbers for disks that are connected to multiple
-cluster nodes. \fBdid\fR instance numbers of the local disks might not be
-preserved. For this reason, the \fBdid\fR disk names for local disks might
-change.
-.RE
-.RS +4
-.TP
-3.
-Update \fB/etc/vfstab\fR to reflect any new \fBdid\fR disk names for your
-local disks.
-.RE
-.RS +4
-.TP
-4.
-Reboot the system.
-.RE
-.sp
-.LP
-To disable the Solaris multipathing feature, use \fBstmsboot\fR \fB-d\fR
-(instead of \fBstmsboot\fR \fB-e\fR), then follow the procedure above.
-.sp
-.LP
-To view mappings between the old and new device names, run \fBstmsboot\fR
-\fB-L\fR. To view \fBdid\fR device name mappings, run
-\fB/usr/cluster/bin/scdidadm\fR \fB-L\fR.
-.sp
-.LP
-With active-passive storage arrays, it is possible that while your host is
-rebooting the array controller could failover the path that a particular target
-is using. In this scenario, \fBfsck\fR(1M) will fail to open the physical path
-listed in \fB/etc/vfstab\fR. The \fBsvc:/system/filesystem/local:default\fR SMF
-service will transition to a maintenance state as a result. To rectify this,
-consult the documentation for your storage array to failback the path. The
-\fBmpathadm\fR(1M) can assist with determining the active and passive path(s).
-.SH LIMITATIONS
-.sp
-.LP
-On x86 platforms, the current Solaris release does not support disabling
-Solaris I/O multipathing of boot devices attached by means of fibre channel.
-Solaris I/O multipathing is always enabled for supported fibre channel-attached
-boot devices. Disabling Solaris I/O multipathing in this situation must be
-performed on a per-port basis. See \fBfp\fR(7D).
-.sp
-.LP
-Executing \fBdevfsadm\fR \fB-C\fR removes obsolete device entries that
-\fBstmsboot\fR relies on. This will prevent correct operation of the \fB-d\fR
-option for boot devices (regardless of platform type) and the \fB-L\fR option.
diff --git a/usr/src/man/man1m/strace.1m b/usr/src/man/man1m/strace.1m
deleted file mode 100644
index 1ce9c65f83..0000000000
--- a/usr/src/man/man1m/strace.1m
+++ /dev/null
@@ -1,176 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 1997 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH STRACE 1M "Oct 4, 1994"
-.SH NAME
-strace \- print STREAMS trace messages
-.SH SYNOPSIS
-.LP
-.nf
-\fBstrace\fR [\fImid\fR \fIsid\fR \fIlevel\fR]...
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBstrace\fR without arguments writes all STREAMS event trace messages from all
-drivers and modules to its standard output. These messages are obtained from
-the STREAMS log driver (see \fBlog\fR(7D)). If arguments are provided, they
-must be in triplets of the form \fImid, sid, level\fR, where \fImid\fR is a
-STREAMS module \fBID\fR number, \fIsid\fR is a sub-ID number, and \fIlevel\fR
-is a tracing priority level. Each triplet indicates that tracing messages are
-to be received from the given module/driver, sub-ID (usually indicating minor
-device), and priority level equal to, or less than the given level. The token
-\fBall\fR may be used for any member to indicate no restriction for that
-attribute.
-.sp
-.LP
-The format of each trace message output is:
-.sp
-.LP
-<\fIseq\fR> <\fBtime\fR> <\fIticks\fR> <\fIlevel\fR> <\fIflags\fR> <\fImid\fR>
-<\fIsid\fR> <\fItext\fR>
-.sp
-.ne 2
-.na
-\fB<\fIseq\fR>\fR
-.ad
-.RS 11n
-trace sequence number
-.RE
-
-.sp
-.ne 2
-.na
-\fB<\fBtime\fR>\fR
-.ad
-.RS 11n
-time of message in \fIhh:mm:ss\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB<\fIticks\fR>\fR
-.ad
-.RS 11n
-time of message in machine ticks since boot
-.RE
-
-.sp
-.ne 2
-.na
-\fB<\fIlevel\fR>\fR
-.ad
-.RS 11n
-tracing priority level
-.RE
-
-.sp
-.ne 2
-.na
-\fB<\fIflags\fR>\fR
-.ad
-.RS 11n
-E : message is also in the error log F : indicates a fatal error N : mail was
-sent to the system administrator (hardcoded as root)
-.RE
-
-.sp
-.ne 2
-.na
-\fB<\fImid\fR>\fR
-.ad
-.RS 11n
-module \fBID\fR number of source
-.RE
-
-.sp
-.ne 2
-.na
-\fB<\fIsid\fR>\fR
-.ad
-.RS 11n
-sub-ID number of source
-.RE
-
-.sp
-.ne 2
-.na
-\fB<\fItext\fR>\fR
-.ad
-.RS 11n
-formatted text of the trace message
-.RE
-
-.sp
-.LP
-Once initiated, \fBstrace\fR will continue to execute until terminated by the
-user.
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRA sample output of the \fBstrace\fR command:
-.sp
-.LP
-The following example outputs all trace messages from the module or driver
-whose module \fBID\fR is \fB41\fR:
-
-.sp
-.in +2
-.nf
-\fBstrace 41 all all\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The following example outputs those trace messages from driver or module
-\fBID\fR \fB41\fR with sub-IDs \fB0\fR, \fB1\fR, or \fB2\fR:
-
-.sp
-.in +2
-.nf
-\fBstrace 41 0 1 41 1 1 41 2 0\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Messages from sub-IDs \fB0\fR and \fB1\fR must have a tracing level less
-than or equal to \fB1\fR. Those from sub-ID \fB2\fR must have a tracing level
-of \fB0\fR.
-
-.SH SEE ALSO
-.sp
-.LP
-\fBattributes\fR(5), \fBlog\fR(7D)
-.sp
-.LP
-\fI\fR
-.SH NOTES
-.RS +4
-.TP
-.ie t \(bu
-.el o
-There is no restriction to the number of \fBstrace\fR processes opening the
-\fBSTREAMS\fR log driver at a time.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The log-driver records the list of the triplets specified in the command
-invocation, and compares each potential trace message against this list to
-decide if it should be formatted and sent up to the \fBstrace\fR process.
-Hence, long lists of triplets will have a greater impact on overall STREAMS
-performance. Running \fBstrace\fR will have the most impact on the timing of
-the modules and drivers generating the trace messages that are sent to the
-\fBstrace\fR process. If trace messages are generated faster than the
-\fBstrace\fR process can handle them, some of the messages will be lost. This
-last case can be determined by examining the sequence numbers on the trace
-messages output.
-.RE
diff --git a/usr/src/man/man1m/strclean.1m b/usr/src/man/man1m/strclean.1m
deleted file mode 100644
index 56fba8ed46..0000000000
--- a/usr/src/man/man1m/strclean.1m
+++ /dev/null
@@ -1,75 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 1997 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH STRCLEAN 1M "Sep 14, 1992"
-.SH NAME
-strclean \- STREAMS error logger cleanup program
-.SH SYNOPSIS
-.LP
-.nf
-\fBstrclean\fR [\fB-a\fR \fIage\fR] [\fB-d\fR \fIlogdir\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBstrclean\fR is used to clean up the STREAMS error logger directory on a
-regular basis (for example, by using \fBcron\fR. By default, all files with
-names matching \fBerror.*\fR in \fB/var/adm/streams\fR that have not been
-modified in the last three days are removed.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-a\fR \fIage\fR\fR
-.ad
-.RS 13n
-The maximum age in days for a log file can be changed using the \fB-a\fR
-option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-d\fR \fIlogdir\fR\fR
-.ad
-.RS 13n
-A directory other than \fB/var/adm/streams\fR can be specified using the
-\fB-d\fR option.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRA sample of using the \fBstrclean\fR command.
-.sp
-.LP
-This example has the same result as running \fBstrclean\fR with no arguments:
-
-.sp
-.in +2
-.nf
-example% \fBstrclean \fR\fB-d\fR\fB /var/adm/streams \fR\fB-a\fR\fB 3\fR
-.fi
-.in -2
-.sp
-
-.SH FILES
-.sp
-.LP
-\fB/var/adm/streams/error.\fR*
-.SH SEE ALSO
-.sp
-.LP
-\fBcron\fR(1M), \fBstrerr\fR(1M), \fBattributes\fR(5)
-.sp
-.LP
-\fI\fR
-.SH NOTES
-.sp
-.LP
-\fBstrclean\fR is typically run from \fBcron\fR on a daily or weekly basis.
diff --git a/usr/src/man/man1m/strerr.1m b/usr/src/man/man1m/strerr.1m
deleted file mode 100644
index da8e7fc323..0000000000
--- a/usr/src/man/man1m/strerr.1m
+++ /dev/null
@@ -1,137 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 1997 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH STRERR 1M "Oct 4, 1994"
-.SH NAME
-strerr \- STREAMS error logger daemon
-.SH SYNOPSIS
-.LP
-.nf
-\fBstrerr\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBstrerr\fR receives error log messages from the STREAMS-based log driver (see
-\fBlog\fR(7D)) and appends them to a log file. The resultant error log files
-reside in the directory \fB/var/adm/streams\fR, and are named
-\fBerror.\fR\fImm\fR\fB-\fR\fBdd\fR, where \fImm\fR is the month and \fBdd\fR
-is the day of the messages contained in each log file.
-.sp
-.LP
-The format of an error log message is:
-.sp
-.LP
-<\fIseq\fR> <\fBtime\fR> <\fIticks\fR> <\fIflags\fR> <\fImid\fR> <\fIsid\fR>
-<\fItext\fR>
-.sp
-.ne 2
-.na
-\fB<\fIseq\fR>\fR
-.ad
-.RS 11n
-error sequence number
-.RE
-
-.sp
-.ne 2
-.na
-\fB<\fBtime\fR>\fR
-.ad
-.RS 11n
-time of message in hh:mm:ss
-.RE
-
-.sp
-.ne 2
-.na
-\fB<\fIticks\fR>\fR
-.ad
-.RS 11n
-time of message in machine ticks since boot priority level
-.RE
-
-.sp
-.ne 2
-.na
-\fB<\fIflags\fR>\fR
-.ad
-.RS 11n
-\fBT\fR : the message was also sent to a tracing process \fBF\fR : indicates a
-fatal error \fBN\fR : send mail to the system administrator (hardcoded as root)
-.RE
-
-.sp
-.ne 2
-.na
-\fB<\fImid\fR>\fR
-.ad
-.RS 11n
-module \fBID\fR number of source
-.RE
-
-.sp
-.ne 2
-.na
-\fB<\fIsid\fR>\fR
-.ad
-.RS 11n
-sub-ID number of source
-.RE
-
-.sp
-.ne 2
-.na
-\fB<\fItext\fR>\fR
-.ad
-.RS 11n
-formatted text of the error message
-.RE
-
-.sp
-.LP
-Messages that appear in the error log are intended to report exceptional
-conditions that require the attention of the system administrator. Those
-messages which indicate the total failure of a STREAMS-based driver or module
-should have the \fBF\fR flag set. Those messages requiring the immediate
-attention of the administrator will have the \fBN\fR flag set, which causes the
-error logger to send the message to the system administrator using \fBmail\fR.
-The priority level usually has no meaning in the error log but will have
-meaning if the message is also sent to a tracer process.
-.sp
-.LP
-Once initiated, \fBstrerr\fR continues to execute until terminated by the user.
-It is commonly executed asynchronously.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/var/adm/streams/error.\fR\fImm\fR\fB-\fR\fBdd\fR\fR
-.ad
-.sp .6
-.RS 4n
-error log file.
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBattributes\fR(5), \fBlog\fR(7D)
-.sp
-.LP
-\fI\fR
-.SH NOTES
-.sp
-.LP
-There is no restriction to the number of \fBstrerr\fR processes opening the
-\fBSTREAMS\fR-based log driver at a time.
-.sp
-.LP
-If a module or driver is generating a large number of error messages, running
-the error logger will cause a degradation in STREAMS performance. If a large
-burst of messages are generated in a short time, the log driver may not be able
-to deliver some of the messages. This situation is indicated by gaps in the
-sequence numbering of the messages in the log files.
diff --git a/usr/src/man/man1m/sttydefs.1m b/usr/src/man/man1m/sttydefs.1m
deleted file mode 100644
index 2c01031971..0000000000
--- a/usr/src/man/man1m/sttydefs.1m
+++ /dev/null
@@ -1,192 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 1997 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH STTYDEFS 1M "Sep 14, 1992"
-.SH NAME
-sttydefs \- maintain line settings and hunt sequences for TTY ports
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/sttydefs\fR \fB-a\fR \fIttylabel\fR [\fB-b\fR] [\fB-f\fR \fIfinal-flags\fR]
- [\fB-i\fR \fIinitial-flags\fR] [\fB-n\fR \fInextlabel\fR]
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/sttydefs\fR \fB-l\fR [\fIttylabel\fR]
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/sttydefs\fR \fB-r\fR \fIttylabel\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBsttydefs\fR is an administrative command that maintains the line settings
-and hunt sequences for the system's TTY ports by making entries in, and
-deleting entries from the \fB/etc/ttydefs\fR file.
-.sp
-.LP
-\fBsttydefs\fR with a \fB-a\fR or \fB-r\fR option may be invoked only by the
-super-user. \fBsttydefs\fR with \fB-l\fR may be invoked by any user on the
-system.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-a\fR \fIttylabel\fR\fR
-.ad
-.RS 20n
-Add a record to the \fBttydefs\fR file, using \fIttylabel\fR as its label. The
-following describes the effect of the \fB-b\fR, \fB-n\fR, \fB-i\fR, or \fB-f\fR
-options when used in conjunction with the \fB-a\fR option:
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-b\fR\fR
-.ad
-.RS 20n
-Enable autobaud. Autobaud allows the system to set the line speed of a given
-TTY port to the line speed of the device connected to the port without the
-user's intervention.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR \fIfinal-flags\fR\fR
-.ad
-.RS 20n
-Specify the value to be used in the \fIfinal-flags\fR field in
-\fB/etc/ttydefs\fR. \fIfinal-flags\fR must be in a format recognized by the
-\fBstty\fR command. \fIfinal-flags\fR are the \fBtermio\fR(7I) settings used by
-\fBttymon\fR after receiving a successful connection request and immediately
-before invoking the service on the port. If this option is not specified,
-\fBsttydefs\fR will set \fIfinal-flags\fR equal to the \fBtermio\fR(7I) flags
-\fB9600\fR and \fBsane\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-i\fR \fIinitial-flags\fR\fR
-.ad
-.RS 20n
-Specify the value to be used in the \fIinitial-flags\fR field in
-\fB/etc/ttydefs\fR. \fIinitial-flags\fR must be in a format recognized by the
-\fBstty\fR command. These flags are used by \fBttymon\fR when searching for the
-correct baud rate. They are set prior to writing the prompt. If this option is
-not specified, \fBsttydefs\fR will set \fIinitial-flags\fR equal to the
-\fBtermio\fR(7I) flag \fB9600\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR \fInextlabel\fR\fR
-.ad
-.RS 20n
-Specify the value to be used in the \fInextlabel\fR field in
-\fB/etc/ttydefs\fR. If this option is not specified, \fBsttydefs\fR will set
-\fInextlabel\fR equal to \fIttylabel\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR[\fIttylabel\fR]\fR
-.ad
-.RS 20n
-If a \fIttylabel\fR is specified, \fBsttydefs\fR displays the record from
-\fB/etc/ttydefs\fR whose TTY label matches the specified \fIttylabel\fR. If no
-\fIttylabel\fR is specified, \fBsttydefs\fR displays the entire contents of
-\fB/etc/ttydefs\fR. \fBsttydefs\fR verifies that each entry it displays is
-correct and that the entry's \fInextlabel\fR field references an existing
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-r\fR \fIttylabel\fR\fR
-.ad
-.RS 20n
-Remove any record in the \fBttydefs\fR file that has \fIttylabel\fR as its
-label.
-.RE
-
-.SH OUTPUT
-.sp
-.LP
-If successful, \fBsttydefs\fR will exit with a status of \fB0\fR.
-\fBsttydefs\fR \fB-l\fR will generate the requested information and send it to
-standard output.
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRA sample of \fBsttydefs\fR command.
-.sp
-.LP
-The following command lists all the entries in the \fBttydefs\fR file and
-prints an error message for each invalid entry that is detected.
-
-.sp
-.in +2
-.nf
-example# \fBsttydefs\fR \fB-l\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The following shows a command that requests information for a single label and
-its output:
-
-.sp
-.in +2
-.nf
-example# \fBsttydefs\fR \fB-l\fR 9600
-------------------------------------------------------------------
-9600:9600 hupcl erase ^h:9600 sane ixany tab3 hupcl erase ^h::4800
-------------------------------------------------------------------
-ttylabel: 9600
-initial flags: 9600 hupcl erase ^h
-final flags: 9600 sane ixany tab3 hupcl erase ^h
-autobaud: no
-nextlabel: 4800
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The following sequence of commands will add the labels \fB1200\fR, \fB2400\fR,
-\fB4800\fR, and \fB9600\fR and put them in a circular list:
-
-.sp
-.in +2
-.nf
-sttydefs \fB-a\fR 1200 \fB-n\fR 2400 \fB-i\fR 1200 \fB-f\fR "1200 sane"
-sttydefs \fB-a\fR 2400 \fB-n\fR 4800 \fB-i\fR 2400 \fB-f\fR "2400 sane"
-sttydefs \fB-a\fR 4800 \fB-n\fR 9600 \fB-i\fR 4800 \fB-f\fR "4800 sane"
-sttydefs \fB-a\fR 9600 \fB-n\fR 1200 \fB-i\fR 9600 \fB-f\fR "9600 sane"
-.fi
-.in -2
-.sp
-
-.SH FILES
-.sp
-.LP
-\fB/etc/ttydefs\fR
-.SH SEE ALSO
-.sp
-.LP
-\fBattributes\fR(5), \fBtermio\fR(7I)
diff --git a/usr/src/man/man1m/su.1m b/usr/src/man/man1m/su.1m
deleted file mode 100644
index 460feede17..0000000000
--- a/usr/src/man/man1m/su.1m
+++ /dev/null
@@ -1,299 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T
-.\" Copyright (C) 2004, Sun Microsystems, Inc.
-.\" All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SU 1M "Feb 26, 2004"
-.SH NAME
-su \- become superuser or another user
-.SH SYNOPSIS
-.LP
-.nf
-\fBsu\fR [\fB-\fR] [\fIusername\fR [arg...]]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBsu\fR command allows one to become another user without logging off or
-to assume a role. The default user \fIname\fR is \fBroot\fR (superuser).
-.sp
-.LP
-To use \fBsu\fR, the appropriate password must be supplied (unless the invoker
-is already \fBroot\fR). If the password is correct, \fBsu\fR creates a new
-shell process that has the real and effective user \fBID,\fR group \fBIDs,\fR
-and supplementary group list set to those of the specified \fIusername\fR.
-Additionally, the new shell's project ID is set to the default project ID of
-the specified user. See \fBgetdefaultproj\fR(3PROJECT),
-\fBsetproject\fR(3PROJECT). The new shell will be the shell specified in the
-shell field of \fIusername\fR's password file entry (see \fBpasswd\fR(4)). If
-no shell is specified, \fB/usr/bin/sh\fR is used (see \fBsh\fR(1)). If
-superuser privilege is requested and the shell for the superuser cannot be
-invoked using \fBexec\fR(2), \fB/sbin/sh\fR is used as a fallback. To return to
-normal user \fBID\fR privileges, type an \fBEOF\fR character (CTRL-D) to exit
-the new shell.
-.sp
-.LP
-Any additional arguments given on the command line are passed to the new shell.
-When using programs such as \fBsh\fR, an \fIarg\fR of the form \fB-c\fR\fI
-string\fR executes \fIstring\fR using the shell and an \fIarg\fR of \fB-r\fR
-gives the user a restricted shell.
-.sp
-.LP
-To create a login environment, the command \fB"su -"\fR does the following:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-In addition to what is already propagated, the \fBLC*\fR and \fBLANG\fR
-environment variables from the specified user's environment are also
-propagated.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Propagate \fBTZ\fR from the user's environment. If \fBTZ\fR is not found in the
-user's environment, \fBsu\fR uses the \fBTZ\fR value from the \fBTIMEZONE\fR
-parameter found in \fB/etc/default/login\fR.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Set \fBMAIL\fR to \fB/var/mail/\fInew_user\fR\fR.
-.RE
-.sp
-.LP
-If the first argument to \fBsu\fR is a dash (-), the environment will be
-changed to what would be expected if the user actually logged in as the
-specified user. Otherwise, the environment is passed along, with the exception
-of \fB$\fR\fBPATH\fR\fB, \fR which is controlled by \fBPATH\fR and
-\fBSU\fR\fBPATH\fR in \fB/etc/default/su\fR.
-.sp
-.LP
-All attempts to become another user using \fBsu\fR are logged in the log file
-\fB/var/adm/sulog\fR (see \fBsulog\fR(4)).
-.SH SECURITY
-.sp
-.LP
-\fBsu\fR uses \fBpam\fR(3PAM) with the service name \fBsu\fR for
-authentication, account management, and credential establishment.
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRBecoming User \fBbin\fR While Retaining Your Previously
-Exported Environment
-.sp
-.LP
-To become user \fBbin\fR while retaining your previously exported environment,
-execute:
-
-.sp
-.in +2
-.nf
-example% \fBsu bin\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRBecoming User \fBbin\fR and Changing to \fBbin\fR's Login
-Environment
-.sp
-.LP
-To become user \fBbin\fR but change the environment to what would be expected
-if \fBbin\fR had originally logged in, execute:
-
-.sp
-.in +2
-.nf
-example% \fBsu - bin\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRExecuting command with user \fBbin\fR's Environment and
-Permissions
-.sp
-.LP
-To execute command with the temporary environment and permissions of user
-\fBbin\fR, type:
-
-.sp
-.in +2
-.nf
-example% \fBsu - bin -c "\fIcommand args\fR"\fR
-.fi
-.in -2
-.sp
-
-.SH ENVIRONMENT VARIABLES
-.sp
-.LP
-Variables with \fBLD_\fR prefix are removed for security reasons. Thus, \fBsu
-bin\fR will not retain previously exported variables with \fBLD_\fR prefix
-while becoming user \fBbin\fR.
-.sp
-.LP
-If any of the \fBLC_*\fR variables ( \fBLC_CTYPE\fR, \fBLC_MESSAGES\fR,
-\fBLC_TIME\fR, \fBLC_COLLATE\fR, \fBLC_NUMERIC\fR, and \fBLC_MONETARY\fR) (see
-\fBenviron\fR(5)) are not set in the environment, the operational behavior of
-\fBsu\fR for each corresponding locale category is determined by the value of
-the \fBLANG\fR environment variable. If \fBLC_ALL\fR is set, its contents are
-used to override both the \fBLANG\fR and the other \fBLC_*\fR variables. If
-none of the above variables are set in the environment, the "C" (U.S. style)
-locale determines how \fBsu\fR behaves.
-.sp
-.ne 2
-.na
-\fB\fBLC_CTYPE\fR\fR
-.ad
-.RS 15n
-Determines how \fBsu\fR handles characters. When \fBLC_CTYPE\fR is set to a
-valid value, \fBsu\fR can display and handle text and filenames containing
-valid characters for that locale. \fBsu\fR can display and handle Extended Unix
-Code (\fBEUC\fR) characters where any individual character can be \fB1\fR,
-\fB2\fR, or \fB3\fR bytes wide. \fBsu\fR can also handle \fBEUC\fR characters
-of \fB1\fR, \fB2\fR, or more column widths. In the "C" locale, only characters
-from ISO 8859-1 are valid.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBLC_MESSAGES\fR\fR
-.ad
-.RS 15n
-Determines how diagnostic and informative messages are presented. This includes
-the language and style of the messages, and the correct form of affirmative and
-negative responses. In the "C" locale, the messages are presented in the
-default form found in the program itself (in most cases, U.S. English).
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB$\fR\fBHOME\fR\fB/.profile\fR\fR
-.ad
-.RS 22n
-user's login commands for \fBsh\fR and \fBksh\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/passwd\fR\fR
-.ad
-.RS 22n
-system's password file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/profile\fR\fR
-.ad
-.RS 22n
-system-wide \fBsh\fR and \fBksh\fR login commands
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/adm/sulog\fR\fR
-.ad
-.RS 22n
-log file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/default/su\fR\fR
-.ad
-.RS 22n
-the default parameters in this file are:
-.sp
-.ne 2
-.na
-\fB\fBSULOG\fR\fR
-.ad
-.RS 11n
-If defined, all attempts to \fBsu\fR to another user are logged in the
-indicated file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBCONSOLE\fR\fR
-.ad
-.RS 11n
-If defined, all attempts to \fBsu\fR to \fBroot\fR are logged on the console.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPATH\fR\fR
-.ad
-.RS 11n
-Default path. (\fB/usr/bin:\fR)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSU\fR\fBPATH\fR\fR
-.ad
-.RS 11n
-Default path for a user invoking \fBsu\fR to \fBroot\fR.
-(\fB/usr/sbin:/usr/bin\fR)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSYSLOG\fR\fR
-.ad
-.RS 11n
-Determines whether the \fBsyslog\fR(3C) \fBLOG_AUTH\fR facility should be used
-to log all \fBsu\fR attempts. \fBLOG_NOTICE\fR messages are generated for
-\fBsu\fR's to root, \fBLOG_INFO\fR messages are generated for \fBsu\fR's to
-other users, and \fBLOG_CRIT\fR messages are generated for failed \fBsu\fR
-attempts.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/default/login\fR\fR
-.ad
-.RS 22n
-the default parameters in this file are:
-.sp
-.ne 2
-.na
-\fB\fBTIMEZONE\fR\fR
-.ad
-.RS 12n
-Sets the TZ environment variable of the shell.
-.RE
-
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBcsh\fR(1), \fBenv\fR(1), \fBksh\fR(1), \fBlogin\fR(1), \fBroles\fR(1),
-\fBsh\fR(1), \fBsyslogd\fR(1M), \fBexec\fR(2), \fBgetdefaultproj\fR(3PROJECT),
-\fBsetproject\fR(3PROJECT), \fBpam\fR(3PAM), \fBpam_authenticate\fR(3PAM),
-\fBpam_acct_mgmt\fR(3PAM), \fBpam_setcred\fR(3PAM), \fBpam.conf\fR(4),
-\fBpasswd\fR(4), \fBprofile\fR(4), \fBsulog\fR(4), \fBsyslog\fR(3C),
-\fBattributes\fR(5), \fBenviron\fR(5)
diff --git a/usr/src/man/man1m/sulogin.1m b/usr/src/man/man1m/sulogin.1m
deleted file mode 100644
index d42f09a264..0000000000
--- a/usr/src/man/man1m/sulogin.1m
+++ /dev/null
@@ -1,91 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 2008 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SULOGIN 1M "Aug 21, 2008"
-.SH NAME
-sulogin \- access single-user mode
-.SH SYNOPSIS
-.LP
-.nf
-\fBsulogin\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBsulogin\fR utility is automatically invoked by \fBinit\fR when the
-system is first started. It prompts the user to type a user name and password
-to enter system maintenance mode (single-user mode) or to type \fBEOF\fR
-(typically CTRL-D) for normal startup (multi-user mode). The user should never
-directly invoke \fBsulogin\fR. The user must have the
-\fBsolaris.system.maintenance\fR authorization.
-.sp
-.LP
-The \fBsulogin\fR utility can prompt the user to enter the root password on a
-variable number of serial console devices, in addition to the traditional
-console device. See \fBconsadm\fR(1M) and \fBmsglog\fR(7D) for a description of
-how to configure a serial device to display the single-user login prompt.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/default/sulogin\fR\fR
-.ad
-.sp .6
-.RS 4n
-Default value can be set for the following flag:
-.sp
-.ne 2
-.na
-\fBPASSREQ\fR
-.ad
-.sp .6
-.RS 4n
-Determines if login requires a password. Default is \fBPASSREQ=YES\fR.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/default/login\fR\fR
-.ad
-.sp .6
-.RS 4n
-Default value can be set for the following flag:
-.sp
-.ne 2
-.na
-\fB\fBSLEEPTIME\fR\fR
-.ad
-.sp .6
-.RS 4n
-If present, sets the number of seconds to wait before login failure is printed
-to the screen and another login attempt is allowed. Default is \fB4\fR seconds.
-Minimum is \fB0\fR seconds. Maximum is \fB5\fR seconds.
-.sp
-Both \fBsu\fR(1M) and \fBlogin\fR(1) are affected by the value of
-\fBSLEEPTIME\fR.
-.RE
-
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBauths\fR(1), \fBlogin\fR(1), \fBconsadm\fR(1M), \fBinit\fR(1M),
-\fBsu\fR(1M), \fBattributes\fR(5), \fBmsglog\fR(7D)
-.SH NOTES
-.sp
-.LP
-By default, the root user has all authorizations.
-.sp
-.LP
-Granting the \fBsolaris.system.maintenance\fR authorization to the Console User
-Rights Profile may have an undesirable side effect of granting the currently
-logged in user maintenance mode access. The \fBsolaris.system.maintenance\fR
-authorization should be directly granted to appropriate users rather than
-through the Console User Rights Profile.
diff --git a/usr/src/man/man1m/svc.configd.1m b/usr/src/man/man1m/svc.configd.1m
deleted file mode 100644
index e31f918306..0000000000
--- a/usr/src/man/man1m/svc.configd.1m
+++ /dev/null
@@ -1,30 +0,0 @@
-'\" te
-.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SVC.CONFIGD 1M "Oct 27, 2004"
-.SH NAME
-svc.configd \- Service Management Facility repository daemon
-.SH SYNOPSIS
-.LP
-.nf
-\fB/lib/svc/bin/svc.configd\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBsvc.configd\fR is the repository daemon for the Service Management Facility.
-\fBsvc.configd\fR is invoked automatically during system startup, and restarted
-if any failures occur. \fBsvc.configd\fR should never be invoked directly.
-.sp
-.LP
-Interaction with \fBsvc.configd\fR is by way of \fBlibscf\fR(3LIB) and the
-command line tools: \fBsvcs\fR(1), \fBsvcprop\fR(1), \fBsvcadm\fR(1M), and
-\fBsvccfg\fR(1M).
-.SH SEE ALSO
-.sp
-.LP
-\fBsvcs\fR(1), \fBsvcprop\fR(1), \fBsvcadm\fR(1M), \fBsvccfg\fR(1M),
-\fBlibscf\fR(3LIB), \fBattributes\fR(5)
diff --git a/usr/src/man/man1m/svc.ipfd.1m b/usr/src/man/man1m/svc.ipfd.1m
deleted file mode 100644
index 3790a40c3d..0000000000
--- a/usr/src/man/man1m/svc.ipfd.1m
+++ /dev/null
@@ -1,619 +0,0 @@
-'\" te
-.\" To view license terms, attribution, and copyright for IP Filter, the default path is /usr/lib/ipf/IPFILTER.LICENCE. If the Solaris operating environment has been installed anywhere other than the default, modify the given path to access the file at the installed
-.\" location.
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 2016 Hans Rosenfeld <rosenfeld@grumpf.hope-2000.org>
-.TH SVC.IPFD 1M "Dec 30, 2015"
-.SH NAME
-svc.ipfd \- IP Filter firewall monitoring daemon
-.SH SYNOPSIS
-.LP
-.nf
-\fB/lib/svc/bin/svc.ipfd\fR
-.fi
-
-.LP
-.nf
-\fBsvc:/network/ipfilter:default\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBsvc.ipfd\fR daemon monitors actions on services that use firewall
-configuration and initiates update services' IP Filter configuration. The
-daemon allows the system to react to changes in system's firewall configuration
-in an incremental fashion, at a per-service level.
-.sp
-.LP
-A service's firewall policy is activated when it is enabled, deactivated when
-it is disabled, and updated when its configuration property group is modified.
-\fBsvc.ipfd\fR monitors the services management facility (SMF) repository for
-these actions and invokes the IP Filter rule-generation process to carry out
-the service's firewall policy.
-.sp
-.LP
-This daemon is started by the \fBnetwork/ipfilter\fR service either through the
-\fBstart\fR or \fBrefresh\fR method. Thus, the daemon inherits the environment
-variables and credentials from the method and runs as root with all zone
-privileges.
-.SS "Firewall Static Configuration"
-.LP
-A static definition describes a service's network resource configuration that
-is used to generate service-specific IPF rules. The per-service
-\fBfirewall_context\fR property group contains a service's static definition,
-similar to the \fBinetd\fR property group in \fBinetd\fR managed services. This
-property group supports:
-.sp
-.ne 2
-.na
-\fB\fBfirewall_context/name\fR\fR
-.ad
-.sp .6
-.RS 4n
-For non-\fBinetd\fR services. The IANA name or RPC name, equivalent to the
-\fBinetd/name\fR property.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfirewall_context/isrpc\fR\fR
-.ad
-.sp .6
-.RS 4n
-For non-\fBinetd\fR services. A boolean property where a \fBtrue\fR value
-indicates an RPC service, equivalent to the \fBinetd/isrpc\fR property. For RPC
-services, the value of \fBfirewall_context/name\fR is not an IANA name but is
-either an RPC program number or name. See \fBrpc\fR(4).
-.RE
-
-.sp
-.LP
-Additionally, some services may require a mechanism to generate and supply
-their own IPF rules. An optional property \fBipf_method\fR, provides a
-mechanism to allow such custom rule generation:
-.sp
-.ne 2
-.na
-\fB\fBfirewall_context/ipf_method\fR\fR
-.ad
-.sp .6
-.RS 4n
-A command. Normally a script that generates IPF rules for a service. The
-framework does not generate rules for services with this property definition.
-Rather, the framework expects these services to provide their own rules.
-.RE
-
-.sp
-.LP
-A service's \fBipf_method\fR specifies a command that takes an additional
-argument, its own fault management resource identifier (FMRI), and generates
-the service's firewall rules and outputs those rules to stdout. To generate
-rules for a service with the \fBipf_method\fR property, the framework execs the
-command specified in \fBipf_method\fR, passing the service FMRI as the
-additional argument, and stores the rules for that service by redirecting the
-command output, the rules, to the service's rule file. Because an
-\fBipf_method\fR is \fBexec\fR'ed from the context of either the
-\fBnetwork/ipfilter\fR \fBstart\fR or \fBrefresh\fR method process, it inherits
-the execution context and runs as root.
-.sp
-.LP
-The service static configuration is delivered by the service developer and not
-intended to be modified by users. These properties are only modified upon
-installation of an updated service definition.
-.SS "Firewall Policy Configuration"
-.LP
-A per-service property group, \fBfirewall_config\fR, stores the services'
-firewall policy configuration. Because \fBnetwork/ipfilter:default\fR is
-responsible for two firewall policies, the Global Default and Global Override
-system-wide policies (as explained in \fBipfilter\fR(5)), it has two property
-groups, \fBfirewall_config_default\fR and \fBfirewall_config_override\fR, to
-store the respective system-wide policies.
-.sp
-.LP
-Below are the properties, their possible values, and corresponding semantics:
-.sp
-.ne 2
-.na
-\fB\fBpolicy\fR\fR
-.ad
-.sp .6
-.RS 4n
-The \fBpolicy\fR has the following modes:
-.sp
-.ne 2
-.na
-\fB\fBnone\fR policy mode\fR
-.ad
-.sp .6
-.RS 4n
-No access restriction. For a global policy, this mode allows all incoming
-traffic. For a service policy, this mode allows all incoming traffic to its
-service.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdeny\fR policy mode\fR
-.ad
-.sp .6
-.RS 4n
-More restrictive than \fBnone\fR. This mode allows incoming traffic from all
-sources except those specified in the \fBapply_to\fR property.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBallow\fR policy mode\fR
-.ad
-.sp .6
-.RS 4n
-Most restrictive mode. This mode blocks incoming traffic from all sources
-except those specified in the \fBapply_to\fR property.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBblock-policy\fR\fR
-.ad
-.sp .6
-.RS 4n
-The \fBblock-policy\fR property defines the handling of packets that
-are blocked by the filter. It has the following modes:
-.sp
-.ne 2
-.na
-\fB\fBnone\fR block-policy mode\fR
-.ad
-.sp .6
-.RS 4n
-Block by dropping packets.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBreturn\fR block-policy mode\fR
-.ad
-.sp .6
-.RS 4n
-Block by returning RST (for TCP) or ICMP messages (for other
-protocols) to the sender of the blocked packets.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBapply_to\fR\fR
-.ad
-.sp .6
-.RS 4n
-A multi-value property listing IPv4 network source entities to enforce the
-chosen policy mode. Packets coming from the entities listed in \fBapply_to\fR
-property will be denied if policy is \fBdeny\fR and allowed if policy is
-\fBallow\fR. The syntax for possible values are:
-.sp
-.in +2
-.nf
-host: host:\fIIP\fR "host:192.168.84.14"
-subnet: network:\fIIP/netmask\fR "network:129.168.1.5/24"
-ippool: pool:\fIpool number\fR "pool:77"
-interface: if:\fIinterface_name\fR "if:e1000g0"
-.fi
-.in -2
-.sp
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBapply_to_6\fR\fR
-.ad
-.sp .6
-.RS 4n
-A multi-value property listing IPv6 network source entities to enforce the
-chosen policy mode. Packets coming from the entities listed in \fBapply_to_6\fR
-property will be denied if policy is \fBdeny\fR and allowed if policy is
-\fBallow\fR. The syntax for possible values are:
-.sp
-.in +2
-.nf
-host: host:\fIIP\fR "host:2001:DB8::12ff:fe34:5678"
-subnet: network:\fIIP/netmask\fR "network:2001:DB8::/32"
-ippool: pool:\fIpool number\fR "pool:77"
-interface: if:\fIinterface_name\fR "if:e1000g0"
-.fi
-.in -2
-.sp
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBexceptions\fR\fR
-.ad
-.sp .6
-.RS 4n
-A multi-value property listing IPv4 network source entities to be excluded from
-the \fBapply_to\fR list. For example, when \fBdeny\fR policy is applied to a
-subnet, exceptions can be made to some hosts in that subnet by specifying them
-in the \fBexceptions\fR property. This property has the same value syntax as
-\fBapply_to\fR property.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBexceptions_6\fR\fR
-.ad
-.sp .6
-.RS 4n
-A multi-value property listing IPv6 network source entities to be excluded from
-the \fBapply_to_6\fR list. For example, when \fBdeny\fR policy is applied to a
-subnet, exceptions can be made to some hosts in that subnet by specifying them
-in the \fBexceptions_6\fR property. This property has the same value syntax as
-\fBapply_to_6\fR property.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBtarget\fR\fR
-.ad
-.sp .6
-.RS 4n
-A multi-value property listing IPv4 network destination entities to enforce the
-chosen policy mode. Packets directed to the destination entities listed in
-\fBtarget\fR property will be denied if policy is \fBdeny\fR and allowed if
-policy is \fBallow\fR. This property has the same value syntax as \fBapply_to\fR
-property, with the notable exception that specifying network interfaces is not
-supported.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBtarget_6\fR\fR
-.ad
-.sp .6
-.RS 4n
-A multi-value property listing IPv6 network destination entities to enforce the
-chosen policy mode. Packets directed to the destination entities listed in
-\fBtarget_6\fR property will be denied if policy is \fBdeny\fR and allowed if
-policy is \fBallow\fR. This property has the same value syntax as
-\fBapply_to_6\fR property, with the notable exception that specifying network
-interfaces is not supported.
-.RE
-
-.sp
-.LP
-For individual network services only:
-.sp
-.ne 2
-.na
-\fB\fBfirewall_config/policy\fR\fR
-.ad
-.sp .6
-.RS 4n
-A service's policy can also be set to \fBuse_global\fR. Services with
-\fBuse_global\fR policy mode inherit the Global Default firewall policy.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfirewall_config/block_policy\fR\fR
-.ad
-.sp .6
-.RS 4n
-A service's block policy can also be set to \fBuse_global\fR. Services with
-\fBuse_global\fR block policy mode inherit the Global Default firewall block
-policy.
-.RE
-
-.sp
-.LP
-For the Global Default only:
-.sp
-.ne 2
-.na
-\fB\fBfirewall_config_default/policy\fR\fR
-.ad
-.sp .6
-.RS 4n
-Global Default policy, \fBfirewall_config\fR property group in
-\fBsvc:/network/ipfilter:default\fR, can also be set to \fBcustom\fR. Users can
-set \fBpolicy\fR to \fBcustom\fR to use prepopulated IP Filter configuration,
-for example, an existing IP Filter configuration or custom configurations that
-cannot be provided by the framework. This Global Default-only policy mode
-allows users to supply a text file containing the complete set of IPF rules.
-When \fBcustom\fR mode is selected, the specified set of IPF rules is
-\fBcomplete\fR and the framework will not generate IPF rules from configured
-firewall policies.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfirewall_config_default/custom_policy_file\fR\fR
-.ad
-.sp .6
-.RS 4n
-A file path to be used when Global Default policy is set to \fBcustom\fR. The
-file contains a set of IPF rules that provide the desired IP Filter
-configuration. For example, users with existing IPF rules in
-\fB/etc/ipf/ipf.conf\fR can execute the following commands to use the existing
-rules:
-.RS +4
-.TP
-1.
-Set custom policy:
-.sp
-.in +2
-.nf
-# \fBsvccfg -s ipfilter:default setprop \e
-firewall_config_default/policy = astring: "custom"\fR
-.fi
-.in -2
-.sp
-
-.RE
-.RS +4
-.TP
-2.
-Specify custom file:
-.sp
-.in +2
-.nf
-# \fBsvccfg -s ipfilter:default setprop \e
-firewall_config_default/custom_policy_file = astring: \e\fR
-\fB"/etc/ipf/ipf.conf"\fR
-.fi
-.in -2
-.sp
-
-.RE
-.RS +4
-.TP
-3.
-Refresh configuration:
-.sp
-.in +2
-.nf
-# \fBsvcadm refresh ipfilter:default\fR
-.fi
-.in -2
-.sp
-
-.RE
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfirewall_config_default/open_ports\fR\fR
-.ad
-.sp .6
-.RS 4n
-Non-service program requiring allowance of its incoming traffic can request
-that the firewall allow traffic to its communication ports. This multi-value
-property contains protocol and port(s) tuple in the form:
-.sp
-.in +2
-.nf
-"{tcp | udp}:{\fIPORT\fR | \fIPORT\fR-\fIPORT\fR}"
-.fi
-.in -2
-.sp
-
-.RE
-
-.sp
-.LP
-Initially, the system-wide policies are set to \fBnone\fR and network services'
-policies are set to \fBuse_global\fR. Enabling \fBnetwork/ipfilter\fR activates
-the firewall with an empty set of IP Filter rules, since system-wide policy is
-\fBnone\fR and all services inherit that policy. To configure a more
-restrictive policy, use \fBsvccfg\fR(1M) to modify network services and
-system-wide policies.
-.sp
-.LP
-A user configures firewall policy by modifying the service's
-\fBfirewall_config\fR property group. A new authorization,
-\fBsolaris.smf.value.firewall.config\fR, is created to allow delegation of the
-firewall administration privilege to users. Users with Service Operator
-privileges will need this new authorization to be able to configure firewall
-policy.
-.SS "Firewall Availability"
-.LP
-During boot, a firewall is configured for enabled services prior to the
-starting of those services. Thus, services are protected on boot. While the
-system is running, administrative actions such as service restarting, enabling,
-and refreshing may cause a brief service vulnerability during which the service
-runs while its firewall is being configured.
-.sp
-.LP
-\fBsvc.ipfd\fR monitors a service's start and stop events and configures or
-unconfigures a service's firewall at the same time that SMF is starting or
-stopping the service. Because the two operations are simultaneous, there is a
-possible window of exposure (less than a second) if the service is started
-before its firewall configuration completed. RPC services typically listen on
-ephemeral addresses, which are not known until the services are actually
-running. Thus RPC services are subjected to similar exposure since their
-firewalls are not configured until the services are running.
-.SS "Developer Documentation"
-.LP
-Services providing remote capabilities are encouraged to participate in the
-firewall framework to control network access to the service. While framework
-integration is not mandatory, remote access to services that are not integrated
-in the framework may not function correctly when a system-wide policy is
-configured.
-.sp
-.LP
-Integrating a service into the framework is as straightforward as defining two
-additional property groups and their corresponding properties in the service
-manifest. IP Filter rules are generated when a user enables the service. In the
-non-trivial case of custom rule generation, where a shell script is required,
-there are existing scripts that can be used as examples.
-.sp
-.LP
-The additional property groups, \fBfirewall_config\fR and
-\fBfirewall_context\fR, stores firewall policy configuration and provides
-static firewall definition, respectively. Below is a summary of new property
-groups and properties and their appropriate default values.
-.sp
-.LP
-Firewall policy configuration:
-.sp
-.ne 2
-.na
-\fB\fBfirewall_config\fR\fR
-.ad
-.sp .6
-.RS 4n
-Access to the system is protected by a new authorization definition and a
-user-defined property type. The new authorization should be assigned to the
-property group \fBvalue_authorization\fR property in a way such as:
-.sp
-.in +2
-.nf
-<propval name='value_authorization' type='astring'
-value='solaris.smf.value.firewall.config' />
-.fi
-.in -2
-.sp
-
-A third party should follow the service symbol namespace convention to generate
-a user-defined type. Sun-delivered services can use
-\fBcom.sun,fw_configuration\fR as the property type.
-.sp
-See "Firewall Policy Configuration," above, for more information.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfirewall_config/policy\fR\fR
-.ad
-.sp .6
-.RS 4n
-This property's initial value should be \fBuse_global\fR since services, by
-default, inherit the Global Default firewall policy.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfirewall_config/apply_to\fR\fR
-.ad
-.sp .6
-.RS 4n
-An empty property, this property has no initial value.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfirewall_config/exceptions\fR\fR
-.ad
-.sp .6
-.RS 4n
-An empty property, this property has no initial value.
-.RE
-
-.sp
-.LP
-Firewall static definition:
-.sp
-.ne 2
-.na
-\fB\fBfirewall_context\fR\fR
-.ad
-.sp .6
-.RS 4n
-A third party should follow service symbol namespace convention to generate a
-user-defined type, Sun delivered services can use \fBcom.sun,fw_definition\fR
-as the property type.
-.sp
-See "Firewall Static Configuration," above, for more information.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfirewall_context/name\fR\fR
-.ad
-.sp .6
-.RS 4n
-Service with well-known, IANA defined port, which can be obtained by
-\fBgetservbyname\fR(3SOCKET). The service's IANA name is stored in this
-property. For RPC services, the RPC program number is stored in this property.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfirewall_context/isrpc\fR\fR
-.ad
-.sp .6
-.RS 4n
-For RPC services, this property should be created with its value set to
-\fBtrue\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfirewall_context/ipf_method\fR\fR
-.ad
-.sp .6
-.RS 4n
-In general, the specified firewall policy is used to generate IP Filter rules
-to the service's communication port, derived from the
-\fBfirewall_context/name\fR property. Services that do not have IANA-defined
-ports and are not RPC services will need to generate their own IP Filter rules.
-Services that generate their own rules may choose not to have
-\fBfirewall_context/name\fR and \fBfirewall_context/isrpc\fR properties. See
-the following services:
-.sp
-.in +2
-.nf
-svc:/network/ftp:default
-svc:/network/nfs/server:default
-svc:/network/ntp:default
-.fi
-.in -2
-.sp
-
-\&...and others with the \fBipf_method\fR for guidance.
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Committed
-.TE
-
-.SH SEE ALSO
-.LP
-\fBsvcprop\fR(1), \fBsvcs\fR(1), \fBipf\fR(1M), \fBsvcadm\fR(1M),
-\fBsvccfg\fR(1M), \fBgetservbyname\fR(3SOCKET), \fBrpc\fR(4),
-\fBattributes\fR(5), \fBipfilter\fR(5), \fBsmf\fR(5)
diff --git a/usr/src/man/man1m/svc.startd.1m b/usr/src/man/man1m/svc.startd.1m
deleted file mode 100644
index 69b223d225..0000000000
--- a/usr/src/man/man1m/svc.startd.1m
+++ /dev/null
@@ -1,578 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 2019 Joyent, Inc.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SVC.STARTD 1M "Dec 11, 2019"
-.SH NAME
-svc.startd \- Service Management Facility master restarter
-.SH SYNOPSIS
-.nf
-\fB/lib/svc/bin/svc.startd\fR
-.fi
-
-.LP
-.nf
-\fBsvc:/system/svc/restarter:default\fR
-.fi
-
-.SH DESCRIPTION
-\fBsvc.startd\fR is the master restarter daemon for Service Management Facility
-(SMF) and the default restarter for all services. \fBsvc.startd\fR starts,
-stops, and restarts services based on administrative requests, system failures,
-or application failures.
-.sp
-.LP
-\fBsvc.startd\fR maintains service state, as well as being responsible for
-managing faults in accordance with the dependencies of each service.
-.sp
-.LP
-\fBsvc.startd\fR is invoked automatically during system startup. It is
-restarted if any failures occur. \fBsvc.startd\fR should never be invoked
-directly.
-.sp
-.LP
-See \fBsmf_restarter\fR(5) for information on configuration and behavior common
-to all restarters.
-.sp
-.LP
-\fBsvcs\fR(1) reports status for all services managed by the Service
-Configuration Facility. \fBsvcadm\fR(1M) allows manipulation of service
-instances with respect to the service's restarter.
-.SS "Environment Variables"
-Environment variables with the "SMF_" prefix are reserved and may be
-overwritten.
-.sp
-.LP
-\fBsvc.startd\fR supplies the "SMF_" environment variables specified in
-\fBsmf_method\fR(5) to the method. PATH is set to "\fB/usr/sbin:/usr/bin\fR" by
-default. By default, all other environment variables supplied to
-\fBsvc.startd\fR are those inherited from \fBinit\fR(1M).
-.sp
-.LP
-Duplicate entries are reduced to a single entry. The value used is undefined.
-Environment entries that are not prefixed with "<\fIname\fR>=" are ignored.
-.SS "Restarter Options"
-\fBsvc.startd\fR is not configured by command line options. Instead,
-configuration is read from the service configuration repository. You can use
-\fBsvccfg\fR(1M) to set all options and properties.
-.sp
-.LP
-The following configuration variables in the \fBoptions\fR property group are
-available to developers and administrators:
-.sp
-.ne 2
-.na
-\fB\fBboot_messages\fR\fR
-.ad
-.sp .6
-.RS 4n
-An \fIastring\fR (as defined in \fBscf_value_is_type\fR; see
-\fBscf_value_is_type\fR(3SCF)) that describes the default level of messages to
-print to the console during boot. The supported message options include
-\fBquiet\fR and \fBverbose\fR. The \fBquiet\fR option prints minimal messages
-to console during boot. The \fBverbose\fR option prints a single message per
-service started to indicate success or failure. You can use the \fBboot\fR
-\fB-m\fR option to override the \fBboot_messages\fR setting at boot time. See
-\fBkernel\fR(1M).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBlogging\fR\fR
-.ad
-.sp .6
-.RS 4n
-Control the level of global service logging for \fBsvc.startd\fR. An
-\fIastring\fR (as defined in \fBscf_value_is_type\fR; see
-\fBscf_value_is_type\fR(3SCF)) that describes the default level of messages to
-log to \fBsyslog\fR (see \fBsyslog\fR(3C) and \fBsvc.startd\fR's global
-logfile, \fB/var/svc/log/svc.startd.log\fR. The supported message options
-include \fBquiet\fR, \fBverbose\fR, and \fBdebug\fR. The \fBquiet\fR option
-sends error messages requiring administrative intervention to the console,
-\fBsyslog\fR and \fBsvc.startd\fR's global logfile. The \fBverbose\fR option
-sends error messages requiring administrative intervention to the console,
-\fBsyslog\fR and \fBsvc.startd\fR's global logfile, and information about
-errors which do not require administrative intervention to \fBsvc.startd\fR's
-global logfile. A single message per service started is also sent to the
-console. The \fBdebug\fR option sends \fBsvc.startd\fR debug messages to
-\fBsvc.startd\fR's global logfile, error messages requiring
-administrative intervention to the console, \fBsyslog\fR and \fBsvc.startd\fR's
-global logfile, and a single message per service started to the console.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmilestone\fR\fR
-.ad
-.sp .6
-.RS 4n
-An FMRI which determines the milestone used as the default boot level.
-Acceptable options include only the major milestones:
-.sp
-.in +2
-.nf
-svc:/milestone/single-user:default
-svc:/milestone/multi-user:default
-svc:/milestone/multi-user-server:default
-.fi
-.in -2
-.sp
-
-or the special values \fBall\fR or \fBnone\fR. \fBall\fR represents an
-idealized milestone that depends on every service. \fBnone\fR is a special
-milestone where no services are running apart from the master
-\fBsvc:/system/svc/restarter:default\fR. By default, \fBsvc.startd\fR uses
-\fBall\fR, a synthetic milestone that depends on every service. If this
-property is specified, it overrides any \fBinitdefault\fR setting in
-\fBinittab\fR(4).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsystem/reconfigure\fR\fR
-.ad
-.sp .6
-.RS 4n
-Indicates that a reconfiguration reboot has been requested. Services with
-actions that must key off of a reconfiguration reboot may check that this
-property exists and is set to 1 to confirm a reconfiguration boot has been
-requested.
-.sp
-This property is managed by \fBsvc.startd\fR and should not be modified by the
-administrator.
-.RE
-
-.sp
-.LP
-Configuration errors, such as disabling \fBsvc.startd\fR are logged by
-\fBsyslog\fR, but ignored.
-.SS "SERVICE STATES"
-Services managed by \fBsvc.startd\fR can appear in any of the states described
-in \fBsmf\fR(5). The state definitions are unmodified by this restarter.
-.SS "SERVICE REPORTING"
-In addition to any logging done by the managed service, \fBsvc.startd\fR
-provides a common set of service reporting and logging mechanisms.
-.sp
-.LP
-Reporting properties \fBsvc.startd\fR updates a common set of properties on all
-services it manages. These properties are a common interface that can be used
-to take action based on service instance health. The \fBsvcs\fR(1) command can
-be used to easily display these properties.
-.sp
-.ne 2
-.na
-\fB\fBrestarter/state\fR\fR
-.ad
-.br
-.na
-\fB\fBrestarter/next_state\fR\fR
-.ad
-.sp .6
-.RS 4n
-The current and next (if currently in transition) state for an instance.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrestarter/auxiliary_state\fR\fR
-.ad
-.sp .6
-.RS 4n
-A caption detailing additional information about the current instance state.
-The auxiliary state available for services managed by \fBsvc.startd\fR is:
-.sp
-.ne 2
-.na
-\fBmaintenance\fR
-.ad
-.RS 15n
-.sp
-.in +2
-.nf
-fault_threshold_reached
-stop_method_failed
-administrative_request
-.fi
-.in -2
-.sp
-
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrestarter/state_timestamp\fR\fR
-.ad
-.sp .6
-.RS 4n
-The time when the current state was reached.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrestarter/contract\fR\fR
-.ad
-.sp .6
-.RS 4n
-The primary process contract ID, if any, that under which the service instance
-is executing.
-.RE
-
-.sp
-.LP
-\fBLogs\fR
-.sp
-.LP
-By default, \fBsvc.startd\fR provides logging of significant restarter actions
-for the service as well as method standard output and standard error file
-descriptors to \fB/var/svc/log/\fIservice\fR:\fIinstance\fR.log\fR. The level
-of logging to system global locations like \fB/var/svc/log/svc.startd.log\fR
-and \fBsyslog\fR is controlled by the \fBoptions/logging\fR property.
-.SS "SERVICE DEFINITION"
-When developing or configuring a service managed by \fBsvc.startd\fR, a common
-set of properties are used to affect the interaction between the service
-instance and the restarter.
-.sp
-.LP
-\fBMethods\fR
-.sp
-.LP
-The general form of methods for the fork/exec model provided by
-\fBsvc.startd\fR are presented in \fBsmf_method\fR(5). The following methods
-are supported as required or optional by services managed by \fBsvc.startd\fR.
-.sp
-.ne 2
-.na
-\fB\fBrefresh\fR\fR
-.ad
-.RS 11n
-Reload any appropriate configuration parameters from the repository or
-\fBconfig\fR file, without interrupting service. This is often implemented
-using \fBSIGHUP\fR for system daemons. If the service is unable to recognize
-configuration changes without a restart, no refresh method is provided.
-.sp
-This method is optional.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBstart\fR\fR
-.ad
-.RS 11n
-Start the service. Return success only after the application is available to
-consumers. Fail if a conflicting instance is already running, or if the service
-is unable to start.
-.sp
-This method is required.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBstop\fR\fR
-.ad
-.RS 11n
-Stop the service. In some cases, the stop method can be invoked when some or
-all of the service has already been stopped. Only return an error if the
-service is not entirely stopped on method return.
-.sp
-This method is required.
-.RE
-
-.sp
-.LP
-If the service does not need to take any action in a required method, it must
-specify the \fB:true\fR token for that method.
-.sp
-.LP
-\fBsvc.startd\fR honors any method context specified for the service or any
-specific method. The method expansion tokens described in \fBsmf_method\fR(5)
-are available for use in all methods invoked by \fBsvc.startd\fR.
-.sp
-.LP
-\fBProperties\fR
-.sp
-.LP
-An overview of the general properties is available in \fBsmf\fR(5). The
-specific way in which these general properties interacts with \fBsvc.startd\fR
-follows:
-.sp
-.ne 2
-.na
-\fB\fBgeneral/enabled\fR\fR
-.ad
-.sp .6
-.RS 4n
-If enabled is set to true, the restarter attempts to start the service once all
-its dependencies are satisfied. If set to false, the service remains in the
-disabled state, not running.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBgeneral/restarter\fR\fR
-.ad
-.sp .6
-.RS 4n
-If this FMRI property is empty or set to
-\fBsvc:/system/svc/restarter:default\fR, the service is managed by
-\fBsvc.startd\fR. Otherwise, the restarter specified is responsible (once it is
-available) for managing the service.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBgeneral/single_instance\fR\fR
-.ad
-.sp .6
-.RS 4n
-This was originally supposed to ensure that only one service instance could be
-in online or degraded state at once; however, it was never implemented, and is
-often incorrectly specified in multi-instance manifests. As such, it should be
-considered obsolete and not specified in new manifests.
-.RE
-
-.sp
-.LP
-Additionally, \fBsvc.startd\fR managed services can define the optional
-properties listed below in the \fBstartd\fR property group.
-.sp
-.ne 2
-.na
-\fB\fBstartd/critical_failure_count\fR
-.ad
-.br
-.na
-\fBstartd/critical_failure_period\fR\fR
-.ad
-.sp .6
-.RS 4n
-The \fBcritical_failure_count\fR and \fBcritical_failure_period\fR properties
-together specify the maximum number of service failures allowed in a given
-number of seconds before \fBsvc.startd\fR transitions the service to
-maintenance.
-If the number of failures exceeds \fBcritical_failure_count\fR in any period of
-\fBcritical_failure_period\fR seconds, \fBsvc.startd\fR will transition the
-service to maintenance. The \fBcritical_failure_count\fR value is limited
-to the range 1-10 and defaults to 10. The \fBcritical_failure_period\fR
-defaults to 600 seconds.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBstartd/duration\fR\fR
-.ad
-.sp .6
-.RS 4n
-The \fBduration\fR property defines the service's model. It can be set to
-\fBtransient\fR, \fBchild\fR also known as "\fBwait\fR" model services, or
-\fBcontract\fR (the default).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBstartd/ignore_error\fR\fR
-.ad
-.sp .6
-.RS 4n
-The \fBignore_error\fR property, if set, specifies a comma-separated list of
-ignored events. Legitimate string values in that list are \fBcore\fR and
-\fBsignal\fR. The default is to restart on all errors.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBstartd/need_session\fR\fR
-.ad
-.sp .6
-.RS 4n
-The \fBneed_session\fR property, if set to true, indicates that the instance
-should be launched in its own session. The default is not to do so.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBstartd/utmpx_prefix\fR\fR
-.ad
-.sp .6
-.RS 4n
-The \fButmpx_prefix\fR string property defines that the instance requires a
-valid \fButmpx\fR entry prior to start method execution. The default is not to
-create a \fButmpx\fR entry.
-.RE
-
-.SS "SERVICE FAILURE"
-\fBsvc.startd\fR assumes that a method has failed if it returns a non-zero exit
-code or if fails to complete before the timeout specified expires. If
-\fB$SMF_EXIT_ERR_CONFIG\fR or \fB$SMF_EXIT_ERR_FATAL\fR is returned,
-\fBsvc.startd\fR immediately places the service in the maintenance state. For
-all other failures, \fBsvc.startd\fR places the service in the offline state.
-If a service is offline and its dependencies are satisfied, \fBsvc.startd\fR
-tries again to start the service (see \fBsmf\fR(5)).
-.sp
-.LP
-If a contract or transient service does not return from its start method before
-its defined timeout elapses, \fBsvc.startd\fR sends a \fBSIGKILL\fR to the
-method, and returns the service to the offline state.
-.sp
-.LP
-If three failures happen in a row, or if the service is restarting more than
-once a second, \fBsvc.startd\fR places the service in the maintenance state.
-.sp
-.LP
-The conditions of service failure are defined by a combination of the service
-model (defined by the \fBstartd/duration\fR property) and the value of the
-\fBstartd/ignore_error\fR property.
-.sp
-.LP
-A contract model service fails if any of the following conditions occur:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-all processes in the service exit
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-any processes in the service produce a core dump
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-a process outside the service sends a service process a fatal signal (for
-example, an administrator terminates a service process with the \fBpkill\fR
-command)
-.RE
-.sp
-.LP
-The last two conditions may be ignored by the service by specifying core and/or
-signal in \fBstartd/ignore_error\fR.
-.sp
-.LP
-Defining a service as transient means that \fBsvc.startd\fR does not track
-processes for that service. Thus, the potential faults described for contract
-model services are not considered failures for transient services. A transient
-service only enters the maintenance state if one of the method failure
-conditions occurs.
-.sp
-.LP
-"\fBWait\fR" model services are restarted whenever the child process associated
-with the service exits. A child process that exits is not considered an error
-for "\fBwait\fR" model services, and repeated failures do not lead to a
-transition to maintenance state. However, a wait service which is repeatedly
-exiting with an error that exceeds the default rate (5 failures/second) will be
-throttled back so that the service only restarts once per second.
-.SS "LEGACY SERVICES"
-\fBsvc.startd\fR continues to provide support for services invoked during the
-startup run level transitions. Each \fB/etc/rc?.d\fR directory is processed
-after all managed services which constitute the equivalent run level milestone
-have transitioned to the online state. Standard \fBinit\fR scripts placed in
-the \fB/etc/rc?.d\fR directories are run in the order of their sequence
-numbers.
-.sp
-.LP
-The milestone to run-level mapping is:
-.sp
-.ne 2
-.na
-\fB\fBmilestone/single-user\fR\fR
-.ad
-.sp .6
-.RS 4n
-Single-user (\fBS\fR)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmilestone/multi-user\fR\fR
-.ad
-.sp .6
-.RS 4n
-Multi-user (\fB2\fR)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmilestone/multi-user-server\fR\fR
-.ad
-.sp .6
-.RS 4n
-Multi-user with network services (\fB3\fR)
-.RE
-
-.sp
-.LP
-Additionally, \fBsvc.startd\fR gives these legacy services visibility in SMF by
-inserting an instance per script into the repository. These legacy instances
-are visible using standard SMF interfaces such as \fBsvcs\fR(1), always appear
-in the \fBLEGACY-RUN\fR state, cannot be modified, and can not be specified as
-dependencies of other services. The initial start time of the legacy service is
-captured as a convenience for the administrator.
-.SH FILES
-.ne 2
-.na
-\fB\fB/var/svc/log\fR\fR
-.ad
-.RS 21n
-Directory where \fBsvc.startd\fR stores log files.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/svc/volatile\fR\fR
-.ad
-.RS 21n
-Directory where \fBsvc.startd\fR stores log files in early stages of boot,
-before \fB/var\fR is mounted read-write.
-.RE
-
-.SH EXAMPLE
-\fBExample 1 \fRTurning on Verbose Logging
-.sp
-.LP
-To turn on verbose logging, type the following:
-
-.sp
-.in +2
-.nf
-# /usr/sbin/svccfg -s system/svc/restarter:default
-svc:/system/svc/restarter:default> addpg options application
-svc:/system/svc/restarter:default> setprop options/logging = \e
-astring: verbose
-svc:/system/svc/restarter:default> exit
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-This request will take effect on the next restart of \fBsvc.startd\fR.
-
-.SH SEE ALSO
-\fBsvcs\fR(1), \fBsvcprop\fR(1), \fBkernel\fR(1M), \fBinit\fR(1M),
-\fBsvcadm\fR(1M), \fBsvccfg\fR(1M), \fBsvc.configd\fR(1M), \fBsetsid\fR(2),
-\fBsyslog\fR(3C), \fBlibscf\fR(3LIB), \fBscf_value_is_type\fR(3SCF),
-\fBcontract\fR(4), \fBinit.d\fR(4), \fBprocess\fR(4), \fBinittab\fR(4),
-\fBattributes\fR(5), \fBsmf\fR(5), \fBsmf_method\fR(5)
diff --git a/usr/src/man/man1m/svcadm.1m b/usr/src/man/man1m/svcadm.1m
deleted file mode 100644
index 550e093239..0000000000
--- a/usr/src/man/man1m/svcadm.1m
+++ /dev/null
@@ -1,545 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 2020 Joyent, Inc.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SVCADM 1M "May 11, 2020"
-.SH NAME
-svcadm \- manipulate service instances
-.SH SYNOPSIS
-.nf
-\fB/usr/sbin/svcadm\fR [\fB-S state\fR] [\fB-v\fR] [\fB-Z\fR | \fB-z\fR \fIzone\fR] enable [\fB-rst\fR]
- [{\fIFMRI\fR | \fIpattern\fR}...]
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/svcadm\fR [\fB-S state\fR] [\fB-v\fR] [\fB-Z\fR | \fB-z\fR \fIzone\fR] disable
- [\fB-c\fR \fIcomment\fR] [\fB-st\fR] [{\fIFMRI\fR | \fIpattern\fR}...]
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/svcadm\fR [\fB-S state\fR] [\fB-v\fR] [\fB-Z\fR | \fB-z\fR \fIzone\fR] restart [\fB-d\fR]
- [{\fIFMRI\fR | \fIpattern\fR}...]
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/svcadm\fR [\fB-S state\fR] [\fB-v\fR] [\fB-Z\fR | \fB-z\fR \fIzone\fR] refresh
- [{\fIFMRI\fR | \fIpattern\fR}...]
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/svcadm\fR [\fB-S state\fR] [\fB-v\fR] [\fB-Z\fR | \fB-z\fR \fIzone\fR] clear
- [{\fIFMRI\fR | \fIpattern\fR}...]
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/svcadm\fR [\fB-S state\fR] [\fB-v\fR] [\fB-Z\fR | \fB-z\fR \fIzone\fR] mark [\fB-It] \fIinstance_state\fR
- [{\fIFMRI\fR | \fIpattern\fR}...]
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/svcadm\fR [\fB-v\fR] milestone [\fB-d\fR] \fImilestone_FMRI\fR
-.fi
-
-.SH DESCRIPTION
-\fBsvcadm\fR issues requests for actions on services executing within the
-service management facility (see \fBsmf\fR(5)). Actions for a service are
-carried out by its assigned service restarter agent. The default service
-restarter is \fBsvc.startd\fR (see \fBsvc.startd\fR(1M)).
-.SH OPTIONS
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB-S\fR \fIstate\fR
-.ad
-.RS 20n
-For the subcommands which normally operate on explicit \fIFMRI\fRs or an
-\fIFMRI\fR pattern, the \fB-S\fR option can be used to select all \fIFMRI\fRs
-in the given state.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.RS 20n
-Print actions verbosely to standard output.
-.RE
-
-.sp
-.ne 2
-.na
-\fB-Z\fR
-.ad
-.RS 20n
-Administer services in all zones. This option is only applicable
-from the global zone, see \fBzones\fR(5).
-.RE
-
-.sp
-.ne 2
-.na
-\fB-z\fR \fIzone\fR
-.ad
-.RS 20n
-Administer services in the specified zone. This option is only applicable
-from the global zone, see \fBzones\fR(5).
-.RE
-
-.SH SUBCOMMANDS
-.SS "Common Operations"
-The subcommands listed below are used during the typical administration of a
-service instance.
-.sp
-.LP
-For subcommands taking one or more operands, if the operand specifies a service
-(instead of a service instance), and that service has only a single instance,
-\fBsvcadm\fR operates on that instance. If an abbreviated \fIFMRI\fR (a fault
-management resource identifier) matches more than one service or instance, a
-warning message is displayed and that operand is ignored.
-If a pattern matches more than one service or instance, the subcommand is
-applied to all matches. See \fBsmf\fR(5).
-.sp
-.LP
-In the case that the service has more than one instance, \fBsvcadm\fR return a
-non-zero exit status.
-.sp
-.ne 2
-.na
-\fB\fBenable\fR \fB[\fR\fB-rst\fR\fB]\fR {\fIFMRI\fR | \fIpattern\fR}...\fR
-.ad
-.sp .6
-.RS 4n
-Enables the service instances specified by the operands. For each service
-instance, the assigned restarter will try to bring it to the online state. This
-action requires permission to modify the "general" property group of the
-service instance (see \fBsmf_security\fR(5)).
-.sp
-If the \fB-r\fR option is specified, \fBsvcadm\fR enables each service instance
-and recursively enables its dependencies.
-.sp
-If the \fB-s\fR option is specified, \fBsvcadm\fR enables each service instance
-and then waits for each service instance to enter the \fBonline\fR or
-\fBdegraded\fR state. \fBsvcadm\fR will return early if it determines that the
-service cannot reach these states without administrator intervention.
-.sp
-If the \fB-t\fR option is specified, \fBsvcadm\fR temporarily enables each
-service instance. Temporary enable only lasts until reboot. This action
-requires permission to modify the "restarter_actions" property group of the
-service instance (see \fBsmf_security\fR(5)). By default, \fBenable\fR is
-persistent across reboot.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdisable\fR [\fB-c\fR \fIcomment\fR] [\fB-st\fR] {\fIFMRI\fR | \fIpattern\fR}...\fR
-.ad
-.sp .6
-.RS 4n
-Disables the service instance specified by the operands. For each service
-instance, the assigned restarter will try to bring it to the disabled state.
-This action requires permission to modify the "general" property group of the
-service instance (see \fBsmf_security\fR(5)).
-.sp
-If the \fB-s\fR option is specified, \fBsvcadm\fR disables each service
-instance and then waits for each service instance to enter the disabled state.
-\fBsvcadm\fR will return early if it determines that the service cannot reach
-this state without administrator intervention.
-.sp
-If the \fB-t\fR option is specified, \fBsvcadm\fR temporarily disables each
-service instance. Temporary disable only lasts until reboot. This action
-requires permission to modify the "restarter_actions" property group of the
-service instance (see \fBsmf_security\fR(5)). By default, \fBdisable\fR is
-persistent across reboot.
-.sp
-If the \fB-c\fR option is specified, the given free-form comment is recorded
-in the (temporary) service configuration under the \fBgeneral/comment\fR
-property. This can serve as an administrator reason for disabling the service,
-and is reported by \fBsvcs\fR(1).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrestart\fR [\fB-d\fR] {\fIFMRI\fR | \fIpattern\fR}...\fR
-.ad
-.sp .6
-.RS 4n
-Requests that the service instances specified by the operands be restarted.
-This action requires permission to modify the "restarter_actions" property
-group of the service instance (see \fBsmf_security\fR(5)).
-.sp
-This subcommand can restart only those services that are in the online or
-degraded states, as those states are defined in \fBsmf\fR(5).
-.sp
-If the \fB-d\fR option is specified, the restarter sends a \fBSIGABRT\fR to all
-members of the contract, which should cause a core dump, before restarting
-the service.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrefresh\fR {\fIFMRI\fR | \fIpattern\fR}...\fR
-.ad
-.sp .6
-.RS 4n
-For each service instance specified by the operands, requests that the assigned
-restarter update the service's running configuration snapshot with the values
-from the current configuration. Some of these values take effect immediately
-(for example, dependency changes). Other values do not take effect until the
-next service \fBrestart\fR. See the restarter and service documentation for
-more information.
-.sp
-If the service is managed by \fBsvc.startd\fR(1M), the \fBrefresh\fR method
-will be invoked if it exists to request the service reread its own
-configuration. For other restarters, see the restarter documentation.
-.sp
-This action requires permission to modify the "restarter_actions" property
-group of the service instance (see \fBsmf_security\fR(5)).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBclear\fR {\fIFMRI\fR | \fIpattern\fR}...\fR
-.ad
-.sp .6
-.RS 4n
-For each service instance specified by the operands, if the instance is in the
-\fBmaintenance\fR state, signal to the assigned restarter that the service has
-been repaired. If the instance is in the \fBdegraded\fR state, request that the
-assigned restarter take the service to the \fBonline\fR state. This action
-requires permission to modify the "restarter_actions" property group of the
-service instance (see \fBsmf_security\fR(5)).
-.RE
-
-.SS "Exceptional Operations"
-The following subcommands are used for service development and temporary
-administrative manipulation.
-.sp
-.ne 2
-.na
-\fB\fBmark [\fR\fB-It\fR\fB]\fR \fIinstance_state\fR {\fIFMRI\fR |
-\fIpattern\fR}...\fR
-.ad
-.sp .6
-.RS 4n
-If \fIinstance_state\fR is "maintenance", then for each service specified by
-the operands, \fBsvcadm\fR requests that the assigned restarter place the
-service in the \fBmaintenance\fR state. See \fBsvc.startd\fR(1M) and
-\fBinetd\fR(1M) for a detailed description of the actions taken for each
-restarter.
-.sp
-If \fIinstance_state\fR is "degraded", then for services specified by the
-operands in the online state, \fBsvcadm\fR requests that the restarters
-assigned to the services move them into the \fBdegraded\fR state.
-.sp
-If the \fB-I\fR option is specified, the request is flagged as immediate.
-.sp
-The \fB-t\fR option is only valid for maintenance requests. When this option is
-specified, the request is flagged as temporary, and its effect will only last
-until the next reboot.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmilestone\fR [\fB-d\fR] \fImilestone_FMRI\fR\fR
-.ad
-.sp .6
-.RS 4n
-If \fImilestone_FMRI\fR is the keyword "none", all services other than the
-master restarter, \fBsvc:/system/svc/restarter:default\fR, will be temporarily
-disabled.
-.sp
-If \fImilestone_FMRI\fR is the keyword "all", temporary enable and disable
-requests for all services will be nullified.
-.sp
-If \fImilestone_FMRI\fR is one of the following:
-.sp
-.in +2
-.nf
-svc:/milestone/single-user:default
-svc:/milestone/multi-user:default
-svc:/milestone/multi-user-server:default
-.fi
-.in -2
-.sp
-
-then temporary enable and disable requests for the indicated service and all
-services it depends on (directly or indirectly) will be nullified. All other
-services will be temporarily disabled.
-.sp
-Changing the system's current milestone with the "milestone" subcommand will
-not change the current run level of the system. To change the system's run
-level, invoke \fB/sbin/init\fR directly.
-.sp
-This action requires permission to modify the "options_ovr" property group of
-the \fBsvc:/system/svc/restarter:default\fR service instance (see
-\fBsmf_security\fR(5)).
-.sp
-The \fB-d\fR option immediately changes the milestone to the requested
-milestone, as above. Additionally, it makes the specified milestone the default
-boot milestone, which persists across reboot. The default milestone is defined
-by the \fBoptions/milestone\fR property on the master restarter,
-\fBsvc:/system/svc/restarter:default\fR. If this property is absent, "all" is
-the default. This action requires permission to modify the "options" property
-group of the \fBsvc:/system/svc/restarter:default\fR service instance (see
-\fBsmf_security\fR(5)).
-.RE
-
-.SS "Operands"
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fB\fIFMRI\fR\fR
-.ad
-.RS 11n
-An \fIFMRI\fR that specifies one or more instances. \fIFMRI\fRs can be
-abbreviated by specifying the instance name, or the trailing portion of the
-service name. For example, given the \fIFMRI\fR:
-.sp
-.in +2
-.nf
-svc:/network/smtp:sendmail
-.fi
-.in -2
-.sp
-
-All the following are valid abbreviations:
-.sp
-.in +2
-.nf
-sendmail
-:sendmail
-smtp
-smtp:sendmail
-network/smtp
-.fi
-.in -2
-.sp
-
-While the following are invalid:
-.sp
-.in +2
-.nf
-mail
-network
-network/smt
-.fi
-.in -2
-.sp
-
-If the \fIFMRI\fR specifies a service, then the command applies to all
-instances of that service. Abbreviated forms of \fIFMRI\fRs are unstable, and
-should not be used in scripts or other permanent tools.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIpattern\fR\fR
-.ad
-.RS 11n
-A pattern that is matched against the \fIFMRIs\fR of service instances
-according to the "globbing" rules described by \fBfnmatch\fR(5). If the pattern
-does not begin with "svc:", then "svc:/" is prepended.
-.RE
-
-.sp
-.LP
-If an abbreviated \fIFMRI\fR matches more than one service, a warning message
-is displayed and that operand is ignored.
-If a pattern matches more than one service or instance, the subcommand is
-applied to all matches.
-.SH EXAMPLES
-\fBExample 1 \fRRestarting a Service Instance
-.sp
-.LP
-The following command restarts the \fBNFS\fR server. The full \fIFMRI\fR for
-the default service instance is: \fBsvc:/network/nfs/server:default\fR
-
-.sp
-.LP
-However, you can abbreviate the full \fIFMRI\fR as follows:
-
-.sp
-.in +2
-.nf
-# svcadm restart nfs/server
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRDisabling a service
-.sp
-.LP
-The following command synchronously disables a service, using an abbreviated
-\fIFMRI\fR, and recording a ticket ID as the administrative reason:
-
-.sp
-.in +2
-.nf
-$ svcadm disable -c "OPS-1000" -s http
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fREnabling an Instance and Its Dependent Instances
-.sp
-.LP
-The following command enables the \fBfoo:bar\fR instance, and all instances on
-which it depends:
-
-.sp
-.in +2
-.nf
-$ svcadm enable -r foo:bar
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 4 \fRSynchronously enabling an instance
-.sp
-.LP
-The following command enables the \fBfoo:bar\fR instance. The command will not
-return until the instance comes online or \fBsvcadm\fR determines it is not
-possible for the service to come online.
-
-.sp
-.in +2
-.nf
-$ svcadm enable -s foo:bar
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 5 \fRRestricting and Restoring the Running Services
-.sp
-.LP
-The following command restricts the running services to single user mode:
-
-.sp
-.in +2
-.nf
-# svcadm milestone milestone/single-user
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The following command restores the running services:
-
-.sp
-.in +2
-.nf
-# svcadm milestone all
-.fi
-.in -2
-.sp
-
-.SH EXIT STATUS
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 5n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB1\fR\fR
-.ad
-.RS 5n
-A fatal error occurred. One or more error messages are displayed on standard
-error.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB2\fR\fR
-.ad
-.RS 5n
-Invalid command line options were specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB3\fR\fR
-.ad
-.RS 5n
-\fBsvcadm\fR determined that a service instance that it was waiting for could
-not reach the desired state without administrator intervention due to a problem
-with the service instance itself.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB4\fR\fR
-.ad
-.RS 5n
-\fBsvcadm\fR determined that a service instance that it was waiting for could
-not reach the desired state without administrator intervention due to a problem
-with the service's dependencies.
-.RE
-
-.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability See below.
-.TE
-
-.sp
-.LP
-The interactive output is Uncommitted. The invocation and non-interactive
-output are Committed.
-.SH SEE ALSO
-\fBsvcprop\fR(1), \fBsvcs\fR(1), \fBinetd\fR(1M), \fBinit\fR(1M),
-\fBsvccfg\fR(1M), \fBsvc.startd\fR(1M), \fBlibscf\fR(3LIB), \fBcontract\fR(4),
-\fBattributes\fR(5), \fBsmf\fR(5), \fBsmf_security\fR(5), \fBzones\fR(5)
-.SH NOTES
-The amount of time \fBsvcadm\fR will spend waiting for services and their
-dependencies to change state is implicitly limited by their method timeouts.
-For example, a service using the default restarter whose start method hangs
-will be transitioned to the maintenance state when its timeout expires.
-\fBsvcadm\fR will then consider it impossible for this service to come online
-without administrator intervention.
-.sp
-.LP
-Attempts to synchronously enable a service which depends (directly or
-indirectly) on a file may fail with an exit status indicating that dependencies
-are unsatisfied if the caller does not have the privileges necessary to search
-the directory containing the file. This limitation may be removed in a future
-release.
diff --git a/usr/src/man/man1m/svccfg.1m b/usr/src/man/man1m/svccfg.1m
deleted file mode 100644
index 989e4a68db..0000000000
--- a/usr/src/man/man1m/svccfg.1m
+++ /dev/null
@@ -1,859 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 2012, Joyent, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SVCCFG 1M "May 13, 2017"
-.SH NAME
-svccfg \- import, export, and modify service configurations
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/svccfg\fR [\fB-v\fR] [\fB-s\fR \fIFMRI\fR]
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/svccfg\fR [\fB-v\fR] [\fB-s\fR \fIFMRI\fR] \fIsubcommand\fR [\fBargs\fR]...
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/svccfg\fR [\fB-v\fR] [\fB-s\fR \fIFMRI\fR] \fB-f\fR \fIcommand-file\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBsvccfg\fR command manipulates data in the service configuration
-repository. \fBsvccfg\fR can be invoked interactively, with an individual
-subcommand, or by specifying a command file that contains a series of
-subcommands.
-.sp
-.LP
-Changes made to an existing service in the repository typically do not take
-effect for that service until the next time the service instance is refreshed.
-See the \fBrefresh\fR subcommand on the \fBsvcadm\fR(1M) man page for more
-details.
-.SH OPTIONS
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-f\fR \fIcommand-file\fR\fR
-.ad
-.sp .6
-.RS 4n
-Reads and executes \fBsvccfg\fR subcommands from \fIcommand-file\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR \fIFMRI\fR\fR
-.ad
-.sp .6
-.RS 4n
-Selects the entity indicated by \fIFMRI\fR (a fault management resource
-identifier) before executing any subcommands. See \fBsmf\fR(5).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.sp .6
-.RS 4n
-Verbose.
-.RE
-
-.SH SUBCOMMANDS
-.LP
-Subcommands are divided into the categories specified in the subsections that
-follow.
-.sp
-.LP
-All subcommands that accept \fIFMRI\fRs also accept abbreviated or globbed
-patterns. Instances and services can be abbreviated by specifying the instance
-name, or the trailing portion of the service name. For example, given the
-\fIFMRI\fR:
-.sp
-.in +2
-.nf
-svc:/network/smtp:sendmail
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-All the following are valid abbreviations:
-.sp
-.in +2
-.nf
-sendmail
-:sendmail
-smtp
-smtp:sendmail
-network/smtp
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-While the following are invalid:
-.sp
-.in +2
-.nf
-mail
-network
-network/smt
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Abbreviated forms of \fIFMRI\fRs are unstable, and should not be used in
-scripts or other permanent tools. If a pattern matches more than one instance
-or service, an error message is printed and no action is taken.
-.SS "General Subcommands"
-.ne 2
-.na
-\fB\fBend\fR\fR
-.ad
-.br
-.na
-\fB\fBexit\fR\fR
-.ad
-.br
-.na
-\fB\fBquit\fR\fR
-.ad
-.sp .6
-.RS 4n
-Exits immediately.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrepository\fR \fIrepfile\fR\fR
-.ad
-.sp .6
-.RS 4n
-Uses \fIrepfile\fR as a repository. By default, \fBsvccfg\fR(1M) uses the
-system repository.
-.sp
-Use repository only with files from the identical version of Solaris, including
-updates, that you are currently running. Do not use this subcommand with the
-system repository, \fB/etc/svc/repository.db\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBset\fR [\fB-v\fR|\fB-V\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Sets optional behavior. If no options are specified, set displays the options
-currently in effect.
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.sp .6
-.RS 4n
-Turns on verbose mode.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-V\fR\fR
-.ad
-.sp .6
-.RS 4n
-Turns off verbose mode.
-.RE
-
-.RE
-
-.SS "Service Profile Subcommands"
-.ne 2
-.na
-\fB\fBapply\fR [\fB-n\fR] \fIfile\fR\fR
-.ad
-.sp .6
-.RS 4n
-If a \fIfile\fR is a service profile, properties, including general/enabled,
-that are specified in the file are modified in the SMF repository.
-Not-yet-existent properties and property groups will be created. The type of
-the pre-existing property \fBgroups\fR will not be changed by the profile.
-Existing properties (as distinguished from property groups) \fBcan\fR have
-their type changed by the profile. Nonexistent services and instances are
-ignored. Services and instances modified by the profile will be refreshed. If
-\fB-n\fR is specified, the profile is processed and no changes are applied to
-the SMF repository. Any syntax error found will be reported on stderr and an
-exit code of \fB1\fR will be returned. See \fBsmf\fR(5) for a description of
-service profiles. This command requires privileges to modify properties in the
-service and instance. See \fBsmf_security\fR(5) for the privileges required to
-modify properties. If \fIfile\fR is not a service profile, the subcommand
-fails.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBextract\fR [\fI> file\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Prints a service profile which represents the enabled status of the service
-instances in the repository to standard output. The output may be redirected to
-a file.
-.RE
-
-.SS "Service Manifest Subcommands"
-.ne 2
-.na
-\fB\fBarchive\fR [\fB-a\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Dumps a full \fBXML\fR service description for all services, instances, and
-their persistent properties in the repository. This does not include transient
-properties such as service state, and is suitable for a relocatable repository
-backup.
-.sp
-Without the \fB-a\fR option, property groups containing protected information
-(identified by the presence of the \fBread_authorization\fR property\(emsee
-\fBsmf_security\fR(5)) will be archived without their property values. When the
-\fB-a\fR option is specified, all values will be archived. An error results if
-there are insufficient privileges to read these values.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBexport\fR [\fB-a\fR] \fIservice_FMRI\fR [\fI>file\fR]\fR
-.ad
-.sp .6
-.RS 4n
-The service description for the specified service and its instances is written
-to standard output or redirected to the given file. Dependencies with a boolean
-"external" property set to true are omitted in the belief that they were
-created on behalf of another service.
-.sp
-Without the \fB-a\fR option, property groups containing protected information
-(identified by the presence of the \fBread_authorization\fR property\(emsee
-\fBsmf_security\fR(5)) will be exported without their property values. When the
-\fB-a\fR option is specified, all values will be archived. An error results if
-there are insufficient privileges to read these values.
-.sp
-Note that \fBexport\fR requires a service FMRI. To ease the use of arguments
-cut and pasted from other command output, if you specify a complete
-instance FMRI, the entire corresponding service including all instances
-is exported and a warning is issued. If you specify an abbreviation, such as
-\fBapache2\fR or \fBsendmail\fR, that specifies an instance, the command fails.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBimport\fR [\fB-V\fR] \fIfile\fR\fR
-.ad
-.sp .6
-.RS 4n
-If \fIfile\fR is a service manifest, then the services and instances it
-specifies are imported into the repository. According to the file, dependencies
-may be created in other services. See \fBsmf\fR(5) for a description of service
-manifests. See \fBsmf_security\fR(5) for the privileges required to create and
-modify service configurations.
-.sp
-Services and instances in the manifest will be validated against template data
-in the manifest and the repository, and warnings will be issued for all
-template violations. See \fBsmf_template\fR(5) for a description of templates.
-If the \fB-V\fR option is specified, manifests that violate the defined
-templates will fail to import. In interactive invocations of \fBsvccfg\fR,
-\fB-V\fR is the default behavior.
-.sp
-For existing services and instances, properties which have not changed since
-the last \fBimport\fR snapshot was taken are upgraded to those specified by the
-manifest. Conflicts (properties which have been changed both in the repository
-and the manifest) are reported on the standard error stream. \fBsvccfg\fR will
-never upgrade the "general/enabled" and "general/restarter" properties, since
-they represent administrator preference.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBinventory\fR \fIfile\fR\fR
-.ad
-.sp .6
-.RS 4n
-If \fIfile\fR is determined to be a service manifest, then the \fBFMRI\fRs of
-the services and instances the \fIfile\fR describes are printed. For each
-service, the \fBFMRI\fRs of its instances are displayed before the \fBFMRI\fR
-of the service.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrestore\fR\fR
-.ad
-.sp .6
-.RS 4n
-Restores the contents of the repository from a full XML service description
-previously created by the \fBarchive\fR subcommand. If the archive was
-generated without the use of the \fB-a\fR option, the contents of the
-repository following completion of the restore will not include the values of
-any read-protected properties (see \fBsmf_security\fR(5)). If these are
-required, they must be restored manually.
-.sp
-Restoring an archive which is inconsistent with currently installed software
-(including patch revisions) might yield unpredictable results. Therefore, prior
-to restoring an archive, all system and application software, including any
-service manifests, should be restored to the same state it was in at the time
-the archive was made.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBvalidate\fR [\fIfile\fR | \fIfmri\fR]\fR
-.ad
-.sp .6
-.RS 4n
-The \fBvalidate\fR subcommand can operate on a manifest file, an instance FMRI,
-or the current instance or snapshot entity selection. When an argument is
-specified, \fBsvccfg\fR will check to see whether the specified file exists. If
-the file exists, it will be validated. If a file of the specified name does not
-exist, the argument is treated as an FMRI pattern. If a conflict arises between
-a filename and an FMRI, use the \fBsvc:\fR and \fBfile:\fR prefixes to tell
-\fBsvccfg\fR how to interpret the argument.
-.sp
-When you specify a file, the file is processed in a manner similar to
-\fBimport\fR \fB-V\fR, but no changes are made to the repository. If any errors
-are detected, \fBsvccfg\fR displays the errors and exits with a nonzero exit
-status.
-.sp
-For an instance \fIfmri\fR, instance entity selection, or snapshot entity
-selection, the specified instance in its composed form (see "Properties and
-Property Groups" in \fBsmf\fR(5)) will be validated against template data in
-the repository. Instance FMRIs and instance entity selections use the "running"
-snapshot for validation. Warnings will be issued for all template violations.
-See \fBsmf_template\fR(5) for a description of templates.
-.RE
-
-.SS "Entity Selection, Modification, and Navigation Subcommands"
-.LP
-An "entity" refers to a scope, service, or service instance.
-.sp
-.ne 2
-.na
-\fB\fBadd\fR \fIname\fR\fR
-.ad
-.sp .6
-.RS 4n
-A new entity with the given name is created as a child of the current
-selection. See \fBsmf_security\fR(5) for the privileges required to create
-entities.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdelete\fR [\fB-f\fR] \fB{\fIname\fR | \fIfmri\fR}\fR\fR
-.ad
-.sp .6
-.RS 4n
-The named child of the current selection or the entity specified by \fIfmri\fR
-is deleted. Attempts to delete service instances in the "online" or "degraded"
-state will fail unless the \fB-f\fR flag is specified. If a service or service
-instance has a "dependents" property group of type "framework", then for each
-of its properties with type "astring" or "fmri", if the property has a single
-value which names a service or service instance then the dependency property
-group in the indicated service or service instance with the same name as the
-property will be deleted. See \fBsmf_security\fR(5) for the privileges required
-to delete service configurations.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBlist\fR [\fIpattern\fR]\fR
-.ad
-.sp .6
-.RS 4n
-The child entities of the current selection whose names match the glob pattern
-\fIpattern\fR are displayed (see \fBfnmatch\fR(5)). \&':properties' is also
-listed for property-bearing entities, namely services and service instances.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBselect\fR {\fIname\fR | \fIfmri\fR}\fR
-.ad
-.sp .6
-.RS 4n
-If the argument names a child of the current selection, it becomes the current
-selection. Otherwise, the argument is interpreted as an \fBFMRI\fR and the
-entity that the argument specifies becomes the current selection.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBunselect\fR\fR
-.ad
-.sp .6
-.RS 4n
-The parent of the current selection becomes the current selection.
-.RE
-
-.SS "Property Inspection and Modification Subcommands"
-.ne 2
-.na
-\fB\fBaddpg\fR \fIname\fR \fItype\fR [\fIflags\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Adds a property group with the given \fIname\fR and type to the current
-selection. \fIflags\fR is a string of characters which designates the flags
-with which to create the property group. 'P' represents
-\fBSCF_PG_FLAG_NONPERSISTENT\fR (see \fBscf_service_add_pg\fR(3SCF)). See
-\fBsmf_security\fR(5) for the privileges required to create property groups.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBaddpropvalue\fR \fIpg\fR\fI/name\fR [\fItype:\fR] \fIvalue\fR\fR
-.ad
-.sp .6
-.RS 4n
-Adds the given value to a property. If \fItype\fR is given and the property
-exists, then if \fItype\fR does not agree with the property's \fItype\fR, the
-subcommand fails. The values may be enclosed in double-quotes. String values
-containing double-quotes or backslashes must be enclosed by double-quotes and
-the contained double-quotes and backslashes must be quoted by backslashes.
-Nonexistent properties are created, in which case the \fItype\fR specifier must
-be present. See \fBscf_value_create\fR(3SCF) for a list of available property
-types. See \fBsmf_security\fR(5) for the privileges required to modify
-properties. The new value will be appended to the end of the list of property
-values associated with the property.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdelpg\fR \fIname\fR\fR
-.ad
-.sp .6
-.RS 4n
-Deletes the property group \fIname\fR of the current selection. See
-\fBsmf_security\fR(5) for the privileges required to delete property groups.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdelprop\fR \fIpg\fR[\fI/name\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Deletes the named property group or property of the current selection. See
-\fBsmf_security\fR(5) for the privileges required to delete properties.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdelpropvalue\fR \fIpg/name\fR \fIglobpattern\fR\fR
-.ad
-.sp .6
-.RS 4n
-Deletes all values matching the given \fIglob\fR pattern in the named property.
-Succeeds even if no values match. See \fBsmf_security\fR(5) for the privileges
-required to modify properties.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdescribe\fR [\fB-v\fR] [\fB-t\fR] [\fIpropertygroup\fR/\fIproperty\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Describes either the current or the possible settings.
-.sp
-When invoked without arguments, \fBdescribe\fR gives basic descriptions (if
-available) of the currently selected entity and all of its currently set
-property groups and properties. A property group or specific property can be
-queried by specifying either the property group name, or the property group
-name and property name, separated by a slash (\fB/\fR), as an argument.
-.sp
-The \fB-v\fR option gives all information available, including descriptions for
-current settings, constraints, and other possible setting choices.
-.sp
-The \fB-t\fR option shows only the template data for the selection (see
-\fBsmf_template\fR(5)), and does not display the current settings for property
-groups and properties.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBeditprop\fR\fR
-.ad
-.sp .6
-.RS 4n
-Comments of commands to reproduce the property groups and properties of the
-current selection are placed in a temporary file and the program named by the
-\fBEDITOR\fR environment variable is invoked to edit it. Upon completion, the
-commands in the temporary file are executed. The default editor is \fBvi\fR(1).
-See \fBsmf_security\fR(5) for the privileges required to create, modify, or
-delete properties.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBlistpg\fR [\fIpattern\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Displays the names, types, and flags of property groups of the current
-selection. If an argument is given, it is taken as a glob pattern and only
-property groups with names which match the argument are listed.
-.sp
-In interactive mode, a basic description of the property groups is also given.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBlistprop\fR [\fIpattern\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Lists property groups and properties of the current selection. For property
-groups, names, types, and flags are listed. For properties, names (prepended by
-the property group name and a slash (/)), types, and values are listed. See
-\fBscf_value_create\fR(3SCF) for a list of available property types. If an
-argument is supplied it is taken as a glob pattern and only property groups and
-properties with names which match the argument are listed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsetenv\fR [\fB-i\fR | \fB-s\fR] [\fB-m\fR \fImethod_name\fR] \fIenvvar
-value\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets a method environment variable for a service or instance by changing the
-"environment" property in the \fImethod_name\fR property group, if that
-property group has type "method". If \fImethod_name\fR is not specified and the
-\fB-i\fR option is used, the "method_context" property group is used, if an
-instance is currently selected. If the \fB-s\fR option is used and a service is
-currently selected, its "method_context" property group is used. If the
-\fB-s\fR option is used and an instance is currently selected, the
-"method_context" property group of its parent is used. If neither the \fB-i\fR
-option nor the \fB-s\fR option is used, the "start" property group is searched
-for in the currently selected entity and, if an instance is currently selected,
-its parent is also searched. If the "inetd_start" property group is not
-located, it is searched for in a similar manner.
-.sp
-Once the property is located, all values which begin with \fIenvvar\fR followed
-by a "=" are removed, and the value "\fIenvvar\fR=\fIvalue\fR" is added. See
-\fBsmf_security\fR(5) for the privileges required to modify properties.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsetprop\fR \fIpg/name\fR = [\fItype:\fR] \fIvalue\fR\fR
-.ad
-.br
-.na
-\fBsetprop \fIpg/name\fR = [\fItype:\fR] ([\fIvalues ...\fR])\fR
-.ad
-.sp .6
-.RS 4n
-Sets the \fIname\fR property of the \fIpg\fR property group of the current
-selection to the given values of type \fItype\fR. See
-\fBscf_value_create\fR(3SCF) for a list of available property types. If the
-property already exists and the \fItype\fR disagrees with the existing
-\fItype\fR on the property, the subcommand fails. Values may be enclosed in
-double-quotes. String values which contain double-quotes or backslashes must be
-enclosed by double-quotes and the contained double-quotes and backslashes must
-be quoted by backslashes. If the named property does not exist, it is created,
-as long as the type is specified. See \fBsmf_security\fR(5) for the privileges
-required to create or modify properties. Multiple values will be stored in the
-order in which they are specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBunsetenv\fR [\fB-i\fR | \fB-s\fR] [\fB-m\fR \fImethod_name\fR] \fIenvvar
-value\fR\fR
-.ad
-.sp .6
-.RS 4n
-Removes a method environment variable for a service or instance by changing the
-"environment" property in the \fImethod_name\fR property group, if that
-property group has type "method". If \fImethod_name\fR is not specified and the
-\fB-i\fR option is used, the "method_context" property group is used, if an
-instance is currently selected. If the \fB-s\fR option is used and a service is
-currently selected, its "method_context" property group is used. If the
-\fB-s\fR option is used and an instance is currently selected, the
-"method_context" property group of its parent is used. If neither the \fB-i\fR
-option nor the \fB-s\fR option is used, the "start" property group is searched
-for in the currently selected entity and, if an instance is currently selected,
-its parent is also searched. If the "inetd_start" property group is not
-located, it is searched for in a similar manner.
-.sp
-Once the property is located, all values which begin with \fIenvvar\fR followed
-by "=" are removed. See \fBsmf_security\fR(5) for the privileges required to
-modify properties.
-.RE
-
-.SS "Snapshot Navigation and Selection Subcommands"
-.ne 2
-.na
-\fB\fBlistsnap\fR\fR
-.ad
-.sp .6
-.RS 4n
-Displays snapshots available for the currently selected instance.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrevert\fR [\fIsnapshot\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Reverts the properties of the currently selected instance and its service to
-those recorded in the named snapshot. If no argument is given, use the
-currently selected snapshot and deselect it on success. The changed property
-values can be made active via the \fBrefresh\fR subcommand of \fBsvcadm\fR(1M).
-See \fBsmf_security\fR(5) for the privileges required to change properties.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBselectsnap\fR [\fIname\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Changes the current snapshot to the one named by \fIname\fR. If no \fIname\fR
-is specified, deselect the currently selected snapshot. Snapshots are
-read-only.
-.RE
-
-.SS "Instance Subcommands"
-.ne 2
-.na
-\fB\fBrefresh\fR\fR
-.ad
-.sp .6
-.RS 4n
-Commit the values from the current configuration to the running snapshot,
-making them available for use by the currently selected instance. If the
-repository subcommand has not been used to select a repository, direct the
-instance's restarter to reread the updated configuration.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRImporting a Service Description
-.sp
-.LP
-The following example imports a service description for the \fBseismic\fR
-service in the XML manifest specified on the command line.
-
-.sp
-.in +2
-.nf
-# \fBsvccfg import /var/svc/manifest/site/seismic.xml\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Note that the manifest must follow the format specified in
-\fBservice_bundle\fR(4).
-
-.LP
-\fBExample 2 \fRExporting a Service Description
-.sp
-.LP
-To export a service description on the local system:
-
-.sp
-.in +2
-.nf
-# \fBsvccfg export dumpadm >/tmp/dump.xml\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRDeleting a Service Instance
-.sp
-.LP
-To delete a service instance:
-
-.sp
-.in +2
-.nf
-# \fBsvccfg delete network/inetd-upgrade:default\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 4 \fRChecking Properties in an Alternate Repository
-.sp
-.LP
-To examine the state of a service's properties after loading an alternate
-repository, use the sequence of commands shown below. One might use such
-commands, for example, to determine whether a service was enabled in a
-particular repository backup.
-
-.sp
-.in +2
-.nf
-# \fBsvccfg\fR
-svc:> \fBrepository /etc/svc/repository-boot\fR
-svc:> \fBselect telnet:default\fR
-svc:/network/telnet:default> \fBlistprop general/enabled\fR
-general/enabled boolean false
-svc:/network/telnet:default> \fBexit\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 5 \fREnabling Debugging
-.sp
-.LP
-To modify \fBLD_PRELOAD\fR for a start method and enable the use of
-\fBlibumem\fR(3LIB) with debugging features active:
-
-.sp
-.in +2
-.nf
-$ \fBsvccfg -s system/service setenv LD_PRELOAD libumem.so\fR
-$ \fBsvccfg -s system/service setenv UMEM_DEBUG default\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 6 \fRUsing \fBdescribe\fR Subcommand
-.sp
-.LP
-The following command illustrates the use of the \fBdescribe\fR subcommand.
-
-.sp
-.in +2
-.nf
-# \fBsvccfg -s console-login describe ttymon\fR
-ttymon application
-ttymon/device astring /dev/console
- \fBterminal device to be used for the console login prompt\fR
-ttymon/label astring console
- \fBappropriate entry from /etc/ttydefs\fR
- ...
-.fi
-.in -2
-.sp
-
-.SH ENVIRONMENTAL VARIABLES
-.ne 2
-.na
-\fBEDITOR\fR
-.ad
-.sp .6
-.RS 4n
-The command to run when the \fBeditprop\fR subcommand is used. The default
-editor is \fBvi\fR(1).
-.RE
-
-.SH EXIT STATUS
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.sp .6
-.RS 4n
-Successful execution.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB1\fR\fR
-.ad
-.sp .6
-.RS 4n
-One or more subcommands resulted in failure. Error messages are written to the
-standard error stream.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB2\fR\fR
-.ad
-.sp .6
-.RS 4n
-Invalid command line options were specified.
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability See below.
-.TE
-
-.sp
-.LP
-The interactive output is Uncommitted. The invocation and non-interactive
-output are Committed.
-.SH SEE ALSO
-.LP
-\fBsvcprop\fR(1), \fBsvcs\fR(1), \fBsvcadm\fR(1M), \fBsvc.configd\fR(1M),
-\fBlibscf\fR(3LIB), \fBlibumem\fR(3LIB), \fBscf_service_add_pg\fR(3SCF),
-\fBscf_value_create\fR(3SCF), \fBcontract\fR(4), \fBservice_bundle\fR(4),
-\fBattributes\fR(5), \fBfnmatch\fR(5), \fBsmf\fR(5), \fBsmf_method\fR(5),
-\fBsmf_security\fR(5), \fBsmf_template\fR(5)
diff --git a/usr/src/man/man1m/swap.1m b/usr/src/man/man1m/swap.1m
deleted file mode 100644
index e89d02c4d8..0000000000
--- a/usr/src/man/man1m/swap.1m
+++ /dev/null
@@ -1,309 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SWAP 1M "June 13, 2021"
-.SH NAME
-swap \- swap administrative interface
-.SH SYNOPSIS
-.nf
-\fB/usr/sbin/swap\fR \fB-a\fR \fIswapname\fR [\fIswaplow\fR] [\fIswaplen\fR]
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/swap\fR \fB-d\fR \fIswapname\fR [\fIswaplow\fR]
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/swap\fR \fB-l\fR [\fB-h\fR | \fB-k\fR]
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/swap\fR \fB-s\fR [\fB-h\fR]
-.fi
-
-.SH DESCRIPTION
-The \fBswap\fR utility provides a method of adding, deleting, and monitoring
-the system swap areas used by the memory manager.
-.SH OPTIONS
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-a\fR \fIswapname\fR [\fIswaplow\fR] [\fIswaplen\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Add the specified swap area. This option can only be used by the superuser or
-by one who has assumed the Primary Administrator role. \fIswapname\fR is the
-name of the swap area or regular file. For example, on system running a UFS
-root file system, specify a slice, such as \fB/dev/dsk/c0t0d0s1\fR, or a
-regular file for a swap area. On a system running a ZFS file system, specify a
-ZFS volume, such as \fB/dev/zvol/dsk/rpool/swap\fR, for a swap area. Using a
-regular file for swap is not supported on a ZFS file system. In addition, you
-cannot use the same ZFS volume for both the swap area and a dump device when
-the system is running a ZFS root file system.
-.sp
-\fIswaplow\fR is the offset in 512-byte blocks into the file where the swap
-area should begin. \fIswaplen\fR is the desired length of the swap area in
-512-byte blocks. The value of \fIswaplen\fR can not be less than \fB16\fR. For
-example, if \fIn\fR blocks are specified, then (\fIn\fR-1) blocks would be the
-actual swap length. \fIswaplen\fR must be at least one page in length. The size
-of a page of memory can be determined by using the \fBpagesize\fR command. See
-\fBpagesize\fR(1). Since the first page of a swap file is automatically
-skipped, and a swap file needs to be at least one page in length, the minimum
-size should be a multiple of 2 pagesize bytes. The size of a page of memory is
-machine-dependent.
-.sp
-\fIswaplow\fR + \fIswaplen\fR must be less than or equal to the size of the
-swap file. If \fIswaplen\fR is not specified, an area will be added starting at
-\fIswaplow\fR and extending to the end of the designated file. If neither
-\fIswaplow\fR nor \fIswaplen\fR are specified, the whole file will be used
-except for the first page. Swap areas are normally added automatically during
-system startup by the \fB/sbin/swapadd\fR script. This script adds all swap
-areas which have been specified in the \fB/etc/vfstab\fR file; for the syntax
-of these specifications, see \fBvfstab\fR(4).
-.sp
-To use an \fBNFS\fR or local file system \fIswapname\fR, you should first
-create a file using \fBmkfile\fR(1M). A local file system swap file can now be
-added to the running system by just running the \fBswap\fR \fB-a\fR command.
-For \fBNFS\fR mounted swap files, the server needs to export the file. Do this
-by performing the following steps:
-.RS +4
-.TP
-1.
-Add the following line to \fB/etc/dfs/dfstab\fR:
-.sp
-.in +2
-.nf
-share -F nfs -o \e
-rw=\fIclientname\fR,root=\fIclientname path-to-swap-file\fR
-.fi
-.in -2
-
-.RE
-.RS +4
-.TP
-2.
-Run \fBshareall\fR(1M).
-.RE
-.RS +4
-.TP
-3.
-Have the client add the following line to \fB/etc/vfstab\fR:
-.sp
-.in +2
-.nf
-\fIserver\fR:\fIpath-to-swap-file\fR - \fIlocal-path-to-swap-file\fR nfs \e
- -\|-\|- \fIlocal-path-to-swap-file\fR -\|- swap -\|-\|-
-.fi
-.in -2
-
-.RE
-.RS +4
-.TP
-4.
-Have the client run \fBmount\fR:
-.sp
-.in +2
-.nf
-# mount \fIlocal-path-to-swap-file\fR
-.fi
-.in -2
-.sp
-
-.RE
-.RS +4
-.TP
-5.
-The client can then run \fBswap\fR \fB-a\fR to add the swap space:
-.sp
-.in +2
-.nf
-# swap -a \fIlocal-path-to-swap-file\fR
-.fi
-.in -2
-.sp
-
-.RE
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-d\fR \fIswapname\fR\fR
-.ad
-.sp .6
-.RS 4n
-Delete the specified swap area. This option can only be used by the super-user.
-\fIswapname\fR is the name of the swap file: for example,
-\fB/dev/dsk/c0t0d0s1\fR or a regular file. \fIswaplow\fR is the offset in
-512-byte blocks into the swap area to be deleted. If \fIswaplow\fR is not
-specified, the area will be deleted starting at the second page. When the
-command completes, swap blocks can no longer be allocated from this area and
-all swap blocks previously in use in this swap area have been moved to other
-swap areas.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-h\fR\fR
-.ad
-.sp .6
-.RS 4n
-All sizes are scaled to a human readable format. Scaling is done by
-repetitively dividing by 1024.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-k\fR\fR
-.ad
-.sp .6
-.RS 4n
-Write the files sizes in units of 1024 bytes.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR\fR
-.ad
-.sp .6
-.RS 4n
-List the status of all the swap areas. The output has five columns:
-.sp
-.ne 2
-.na
-\fB\fBpath\fR\fR
-.ad
-.sp .6
-.RS 4n
-The path name for the swap area.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdev\fR\fR
-.ad
-.sp .6
-.RS 4n
-The major/minor device number in decimal if it is a block special device;
-zeroes otherwise.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBswaplo\fR\fR
-.ad
-.sp .6
-.RS 4n
-The \fIswaplow\fR value for the area in 512-byte blocks.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBblocks\fR\fR
-.ad
-.sp .6
-.RS 4n
-The \fIswaplen\fR value for the area in 512-byte blocks.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfree\fR\fR
-.ad
-.sp .6
-.RS 4n
-The number of 512-byte blocks in this area that are not currently allocated.
-.RE
-
-The list does not include swap space in the form of physical memory because
-this space is not associated with a particular swap area.
-.sp
-If \fBswap\fR \fB-l\fR is run while \fIswapname\fR is in the process of being
-deleted (by \fBswap\fR \fB-d\fR), the string \fBINDEL\fR will appear in a sixth
-column of the swap stats.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR\fR
-.ad
-.sp .6
-.RS 4n
-Print summary information about total swap space usage and availability:
-.sp
-.ne 2
-.na
-\fB\fBallocated\fR\fR
-.ad
-.sp .6
-.RS 4n
-The total amount of swap space in bytes currently allocated for use as backing
-store.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBreserved\fR\fR
-.ad
-.sp .6
-.RS 4n
-The total amount of swap space in bytes not currently allocated, but claimed by
-memory mappings for possible future use.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBused\fR\fR
-.ad
-.sp .6
-.RS 4n
-The total amount of swap space in bytes that is either allocated or reserved.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBavailable\fR\fR
-.ad
-.sp .6
-.RS 4n
-The total swap space in bytes that is currently available for future
-reservation and allocation.
-.RE
-
-These numbers include swap space from all configured swap areas as listed by
-the \fB-l\fR option, as well as swap space in the form of physical memory.
-.RE
-
-.SH USAGE
-A block device up to 2^63 \(mi1 bytes can be fully utilized for swap.
-.SH ENVIRONMENT VARIABLES
-See \fBenviron\fR(5) for descriptions of the following environment variables
-that affect the execution of \fBswap\fR: \fBLC_CTYPE\fR and \fBLC_MESSAGE\fR.
-.SH SEE ALSO
-\fBpagesize\fR(1), \fBmkfile\fR(1M), \fBshareall\fR(1M), \fBgetpagesize\fR(3C),
-\fBvfstab\fR(4), \fBattributes\fR(5), \fBlargefile\fR(5)
-.SH NOTES
-For information about setting up a swap area with \fBZFS\fR, see the \fIZFS
-Administration Guide\fR.
-.SH WARNINGS
-No check is done to determine if a swap area being added overlaps with an
-existing file system.
diff --git a/usr/src/man/man1m/sync.1m b/usr/src/man/man1m/sync.1m
deleted file mode 100644
index 30ad49ac6b..0000000000
--- a/usr/src/man/man1m/sync.1m
+++ /dev/null
@@ -1,27 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T
-.\" Copyright (c) 1998, Sun Microsystems, Inc. , All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SYNC 1M "Dec 1, 1998"
-.SH NAME
-sync \- update the super block
-.SH SYNOPSIS
-.LP
-.nf
-\fBsync\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBsync\fR executes the \fBsync\fR system primitive. If the system is to be
-stopped, \fBsync\fR must be called to ensure file system integrity. It will
-flush all previously unwritten system buffers out to disk, thus assuring that
-all file modifications up to that point will be saved. See \fBsync\fR(2) for
-details.
-.SH SEE ALSO
-.sp
-.LP
-\fBsync\fR(2), \fBattributes\fR(5)
diff --git a/usr/src/man/man1m/syncinit.1m b/usr/src/man/man1m/syncinit.1m
deleted file mode 100644
index 6ae0428b1c..0000000000
--- a/usr/src/man/man1m/syncinit.1m
+++ /dev/null
@@ -1,190 +0,0 @@
-'\" te
-.\" Copyright (c) 1993, Sun Microsystems, Inc.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SYNCINIT 1M "Nov 26, 2017"
-.SH NAME
-syncinit \- set serial line interface operating parameters
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/syncinit\fR \fIdevice\fR
- [ [\fIbaud_rate\fR] | [\fIkeyword\fR=\fIvalue\fR,]... | [\fIsingle-word\fR \fIoption\fR]]
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBsyncinit\fR utility allows the user to modify some of the hardware
-operating modes common to synchronous serial lines. This can be useful in
-troubleshooting a link, or necessary to the operation of a communications
-package.
-.sp
-.LP
-If run without options, \fBsyncinit\fR reports the options as presently set on
-the port. If options are specified, the new settings are reported after they
-have been made.
-.SH OPTIONS
-.LP
-Options to \fBsyncinit\fR normally take the form of a keyword, followed by an
-equal sign and a value. The exception is that a baud rate may be specified as a
-decimal integer by itself. Keywords must begin with the value shown in the
-options table, but may contain additional letters up to the equal sign. For
-example, \fBloop=\fR and \fBloopback=\fR are equivalent.
-.sp
-.LP
-The following options are supported:
-.sp
-
-.sp
-.TS
-l l l
-l l l .
-\fBKeyword\fR \fBValue\fR \fBEffect\fR
-\fBloop\fR yes T{
-Set the port to operate in \fBinternal loopback\fR mode. The receiver is electrically disconnected from the DCE receive data input and tied to the outgoing transmit data line. Transmit data is available to the DCE. The Digital Phase-Locked Loop (DPLL) may not be used as a clock source in this mode. If no other clocking options have been specified, perform the equivalent of \fBtxc=baud\fR and \fBrxc=baud\fR.
-T}
- no T{
-Disable internal loopback mode. If no other clocking options have been specified, perform the equivalent of \fBtxc=txc\fR and \fBrxc=rxc\fR.
-T}
-\fBecho\fR yes T{
-Set the port to operate in \fBauto-echo\fR mode. The transmit data output is electrically disconnected from the transmitter and tied to the receive data input. Incoming receive data is still visible. Use of this mode in combination with local loopback mode has no value, and should be rejected by the device driver. The \fBauto-echo\fR mode is useful to make a system become the endpoint of a remote loopback test.
-T}
- no Disable \fBauto-echo\fR mode.
-\fBnrzi\fR yes T{
-Set the port to operate with \fBNRZI\fR data encoding.
-T}
- no T{
-Set the port to operate with \fBNRZ\fR data encoding.
-T}
-\fBtxc\fR \fBtxc\fR T{
-Transmit clock source will be the \fBTxC\fR signal (pin 15).
-T}
- \fBrxc\fR T{
-Transmit clock source will be the \fBRxC\fR signal (pin 17).
-T}
- \fBbaud \fR T{
-Transmit clock source will be the internal \fBbaud rate generator\fR.
-T}
- \fBpll\fR T{
-Transmit clock source will be the output of the \fBDPLL\fR circuit.
-T}
-\fBrxc\fR \fBrxc\fR T{
-Receive clock source will be the \fBRxC\fR signal (pin 17).
-T}
- \fBtxc\fR T{
-Receive clock source will be the \fBTxC\fR signal (pin 15).
-T}
- \fBbaud\fR T{
-Receive clock source will be the internal \fBbaud rate generator\fR.
-T}
- \fBpll\fR T{
-Receive clock source will be the output of the \fBDPLL\fR circuit.
-T}
-\fBspeed\fR \fIinteger\fR T{
-Set the baud rate to \fIinteger\fR bits per second.
-T}
-.TE
-
-.sp
-.LP
-There are also several single-word options that set one or more parameters at a
-time:
-.sp
-
-.sp
-.TS
-l l
-l l .
-\fBKeyword\fR \fBEquivalent to Options:\fR
-\fBexternal\fR \fBtxc=txc rxc=rxc loop=no\fR
-\fBsender\fR \fBtxc=baud rxc=rxc loop=no\fR
-\fBinternal\fR \fBtxc=pll rxc=pll loop=no\fR
-\fBstop\fR \fBspeed=0\fR
-.TE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRUsing \fBsyncinit\fR
-.sp
-.LP
-The following command sets the first CPU port to loop internally, using
-internal clocking and operating at 38400 baud:
-
-.sp
-.in +2
-.nf
-example# syncinit zsh0 38400 loop=yes
-device: /dev/zsh ppa: 0
-speed=38400, loopback=yes, echo=no, nrzi=no, txc=baud, rxc=baud
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The following command sets the same port's clocking, local loopback and baud
-rate settings to their default values:
-
-.sp
-.in +2
-.nf
-example# syncinit zsh0 stop loop=no
-device: /dev/zsh ppa: 0
-speed=0, loopback=no, echo=no, nrzi=no, txc=txc, rxc=rxc
-.fi
-.in -2
-.sp
-
-.SH SEE ALSO
-.LP
-\fBsyncloop\fR(1M), \fBsyncstat\fR(1M), \fBIntro\fR(2), \fBioctl\fR(2),
-\fBattributes\fR(5), \fBzsh\fR(7D)
-.SH DIAGNOSTICS
-.ne 2
-.na
-\fB\fIdevice\fR\fB missing minor device number\fR\fR
-.ad
-.sp .6
-.RS 4n
-The name \fIdevice\fR does not end in a decimal number that can be used as a
-minor device number.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBbad speed: \fR\fIarg\fR\fR
-.ad
-.sp .6
-.RS 4n
-The string \fIarg\fR that accompanied the \fBspeed=\fR option could not be
-interpreted as a decimal integer.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBBad arg: \fR\fIarg\fR\fR
-.ad
-.sp .6
-.RS 4n
-The string \fIarg\fR did not make sense as an option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBioctl failure code = \fR\fIerrno\fR\fR
-.ad
-.sp .6
-.RS 4n
-An \fBioctl\fR(2) system called failed. The meaning of the value of
-\fIerrno\fR may be found in \fBIntro\fR(2).
-.RE
-
-.SH WARNINGS
-.LP
-Do not use \fBsyncinit\fR on an active serial link, unless needed to resolve
-an error condition. Do not use this command casually or without being aware of
-the consequences.
diff --git a/usr/src/man/man1m/syncloop.1m b/usr/src/man/man1m/syncloop.1m
deleted file mode 100644
index 0c9a462db3..0000000000
--- a/usr/src/man/man1m/syncloop.1m
+++ /dev/null
@@ -1,228 +0,0 @@
-'\" te
-.\" Copyright (c) 1993, Sun Microsystems, Inc.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SYNCLOOP 1M "Mar 9, 1993"
-.SH NAME
-syncloop \- synchronous serial loopback test program
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/syncloop\fR [\fB-cdlstv\fR] \fIdevice\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBsyncloop\fR command performs several loopback tests that are useful in
-exercising the various components of a serial communications link.
-.sp
-.LP
-Before running a test, \fBsyncloop\fR opens the designated port and configures
-it according to command line options and the specified test type. It announces
-the names of the devices being used to control the hardware channel, the
-channel number (ppa) corresponding to the \fIdevice\fR argument, and the
-parameters it has set for that channel. It then runs the loopback test in
-three phases.
-.sp
-.LP
-The first phase is to listen on the port for any activity. If no activity is
-seen for at least four seconds, \fBsyncloop\fR proceeds to the next phase.
-Otherwise, the user is informed that the line is active and that the test
-cannot proceed, and the program exits.
-.sp
-.LP
-In the second phase, called the "first-packet" phase, \fBsyncloop\fR attempts
-to send and receive one packet. The program will wait for up to four seconds
-for the returned packet. If no packets are seen after five attempts, the test
-fails with an excoriating message. If a packet is returned, the result is
-compared with the original. If the length and content do not match exactly, the
-test fails.
-.sp
-.LP
-The final phase, known as the "multiple-packet" phase, attempts to send many
-packets through the loop. Because the program has verified the integrity of the
-link in the first-packet phase, the test will not fail after a particular
-number of timeouts. If a packet is not seen after four seconds, a message is
-displayed. Otherwise, a count of the number of packets received is updated on
-the display once per second. If it becomes obvious that the test is not
-receiving packets during this phase, the user may wish to stop the program
-manually. The number and size of the packets sent during this phase is
-determined by default values, or by command line options. Each returned packet
-is compared with its original for length and content. If a mismatch is
-detected, the test fails. The test completes when the required number of
-packets have been sent, regardless of errors.
-.sp
-.LP
-After the multiple-packet phase has completed, the program displays a summary
-of the hardware event statistics for the channel that was tested. The display
-takes the following form:
-.sp
-.in +2
-.nf
-CRC errors Aborts Overruns Underruns In<-Drops-> Out
- 0 0 0 0 0 0
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-This is followed by an estimated line speed, which is an approximation of the
-bit rate of the line, based on the number of bytes sent and the actual time
-that it took to send them.
-.SH OPTIONS
-.sp
-.LP
-The options for \fBsyncloop\fR are described in the following table:
-.sp
-
-.sp
-.TS
-c c c c
-l l l l .
-\fBOption\fR \fBParameter\fR \fBDefault\fR \fBDescription\fR
-\fB-c\fR \fIpacket_count\fR 100 T{
-Specifies the number of packets to be sent in the multiple-packet phase.
-T}
-\fB-d\fR \fIhex_data_byte\fR \fIrandom\fR T{
-Specifies that each packet will be filled with bytes with the value of \fIhex_data_byte\fR.
-T}
-\fB-l\fR \fIpacket_length\fR 100 T{
-Specifies the length of each packet in bytes.
-T}
-\fB-s\fR \fIline_speed\fR 9600 Bit rate in bits per second.
-\fB-v\fR T{
-Sets verbose mode. If data errors occur, the expected and received data is displayed.
-T}
-\fB-t\fR \fItest_type\fR \fInone\fR T{
-A number, from 1 to 4, that specifies which test to perform. The values for \fItest_type\fR are as follows: \fB1\fR: Internal loopback test. Port loopback is on. Transmit and receive clock sources are internal (baud rate generator). \fB2\fR: External loopback test. Port loopback is off. Transmit and receive clock sources are internal. Requires a loopback plug suitable to the port under test. \fB3\fR: External loopback test. Port loopback is off. Transmit and receive clock sources are external (modem). Requires that one of the local modem, the remote modem, or the remote system be set in a loopback configuration. \fB4\fR: Test using predefined parameters. User defines hardware configuration and may select port parameters using the \fBsyncinit\fR(1M) command.
-T}
-.TE
-
-.sp
-.LP
-All numeric options except \fB-d\fR are entered as decimal numbers (for
-example, \fB\fR\fB-s\fR\fB 19200\fR). If you do not provide the \fB-t\fR\fI
-test_type\fR option, \fBsyncloop\fR prompts for it.
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRA sample display of using the \fBsyncloop\fR command.
-.sp
-.LP
-In the following command \fBsyncloop\fR uses a packet length of 512 bytes over
-the first CPU port:
-
-.sp
-.in +2
-.nf
-\fBexample# syncloop \fR\fB-l\fR\fB 512 zsh0\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-In response to the above command, \fBsyncloop\fR prompts you for the test
-option you want.
-
-.sp
-.LP
-The following command performs an internal loopback test on the first CPU port,
-using 5000 packets and a bit rate of 56Kbps:
-
-.sp
-.in +2
-.nf
-\fBexample# syncloop \fR\fB-t\fR\fB 1 \fR\fB-s\fR\fB 56000 \fR\fB-c\fR\fB 5000 zsh0\fR
-.fi
-.in -2
-.sp
-
-.SH SEE ALSO
-.sp
-.LP
-\fBsyncinit\fR(1M), \fBsyncstat\fR(1M), \fBattributes\fR(5), \fBzsh\fR(7D)
-.SH DIAGNOSTICS
-.sp
-.ne 2
-.na
-\fB\fIdevice\fR\fB missing minor device number\fR\fR
-.ad
-.sp .6
-.RS 4n
-The name \fIdevice\fR does not end in a decimal number that can be used as a
-minor device number.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBinvalid packet length: \fR\fInnn\fR\fR
-.ad
-.sp .6
-.RS 4n
-The packet length was specified to be less than zero or greater than 4096.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpoll: nothing to read\fR\fR
-.ad
-.sp .6
-.RS 4n
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpoll: nothing to read or write.\fR\fR
-.ad
-.sp .6
-.RS 4n
-The \fBpoll\fR(2) system call indicates that there is no input pending and/or
-that output would be blocked if attempted.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBlen \fR\fIxxx\fR\fB should be \fR\fIyyy\fR\fR
-.ad
-.sp .6
-.RS 4n
-The packet that was sent had a length of \fIyyy\fR, but was received with a
-length of \fIxxx\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fInnn\fR\fB packets lost in outbound queueing\fR\fR
-.ad
-.sp .6
-.RS 4n
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fInnn\fR\fB packets lost in inbound queueing\fR\fR
-.ad
-.sp .6
-.RS 4n
-A discrepancy has been found between the number of packets sent by
-\fBsyncloop\fR and the number of packets the driver counted as transmitted, or
-between the number counted as received and the number read by the program.
-.RE
-
-.SH WARNINGS
-.sp
-.LP
-To allow its tests to run properly, as well as prevent disturbance of normal
-operations, \fBsyncloop\fR should only be run on a port that is not being used
-for any other purpose at that time.
diff --git a/usr/src/man/man1m/syncstat.1m b/usr/src/man/man1m/syncstat.1m
deleted file mode 100644
index bc9ce30ea0..0000000000
--- a/usr/src/man/man1m/syncstat.1m
+++ /dev/null
@@ -1,192 +0,0 @@
-'\" te
-.\" Copyright (c) 1993, Sun Microsystems, Inc.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SYNCSTAT 1M "Mar 9, 1993"
-.SH NAME
-syncstat \- report driver statistics from a synchronous serial link
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/syncstat\fR [\fB-c\fR] \fIdevice\fR [\fIinterval\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBsyncstat\fR command reports the event statistics maintained by a
-synchronous serial device driver. The report may be a single snapshot of the
-accumulated totals, or a series of samples showing incremental changes. Prior
-to these it prints the device name being used to query a particular device
-driver, along with a number indicating the channel number (ppa) under control
-of that driver.
-.sp
-.LP
-Event statistics are maintained by a driver for each physical channel that it
-supports. They are initialized to zero at the time the driver module is loaded
-into the system, which may be either at boot time or when one of the driver's
-entry points is first called.
-.sp
-.LP
-The \fIdevice\fR argument is the name of the serial device as it appears in
-the \fB/dev\fR directory. For example, \fBzsh0\fR specifies the first
-on-board serial device.
-.sp
-.LP
-The following is a breakdown of \fBsyncstat\fR output:
-.sp
-
-.sp
-.TS
-l l
-l l .
-\fBspeed\fR T{
-The line speed the device has been set to operate at. It is the user's responsibility to make this value correspond to the modem clocking speed when clocking is provided by the modem.
-T}
-\fBipkts\fR The total number of input packets.
-\fBopkts\fR The total number of output packets.
-\fBundrun\fR T{
-The number of transmitter underrun errors.
-T}
-\fBovrrun\fR The number of receiver overrun errors.
-\fBabort\fR The number of aborted received frames.
-\fBcrc\fR T{
-The number of received frames with CRC errors.
-T}
-\fBisize\fR T{
-The average size (in bytes) of input packets.
-T}
-\fBosize\fR T{
-The average size (in bytes) of output packets.
-T}
-.TE
-
-.SH OPTIONS
-.sp
-.ne 2
-.na
-\fB\fB-c\fR\fR
-.ad
-.RS 12n
-Clear the accumulated statistics for the device specified. This may be useful
-when it is not desirable to unload a particular driver, or when the driver is
-not capable of being unloaded.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIinterval\fR\fR
-.ad
-.RS 12n
-\fBsyncstat\fR samples the statistics every \fIinterval\fR seconds and reports
-incremental changes. The output reports line utilization for input and output
-in place of average packet sizes. These are the relationships between bytes
-transferred and the baud rate, expressed as percentages. The loop repeats
-indefinitely, with a column heading printed every twenty lines for convenience.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRSample output from the \fBsyncstat\fR command:
-.sp
-.in +2
-.nf
-example# \fBsyncstat zsh0\fR
-
-
-speed ipkts opkts undrun ovrrun abort crc isize osize
-9600 15716 17121 0 0 1 3 98 89
-.fi
-.in -2
-.sp
-
-.sp
-.in +2
-.nf
-example# \fBsyncstat \fR\fB-c\fR\fB zsh0\fR
-
-speed ipkts opkts undrun ovrrun abort crc isize osize
-9600 0 0 0 0 0 0 0 0
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-In the following sample output a new line of output is generated every five
-seconds:
-
-.sp
-.in +2
-.nf
-example# \fBsyncstat zsh0 5\fR
-
-ipkts opkts undrun ovrrun abort crc iutil outil
-12 10 0 0 0 0 5% 4%
-22 60 0 0 0 0 3% 90%
-36 14 0 0 0 1 51% 2%
-.fi
-.in -2
-.sp
-
-.SH SEE ALSO
-.sp
-.LP
-\fBsyncinit\fR(1M), \fBsyncloop\fR(1M), \fBattributes\fR(5), \fBzsh\fR(7D)
-.SH DIAGNOSTICS
-.sp
-.ne 2
-.na
-\fB\fBbad interval: \fR\fIarg\fR\fR
-.ad
-.sp .6
-.RS 4n
-The argument \fIarg\fR is expected to be an interval and could not be
-understood.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIdevice\fR\fB missing minor device number\fR\fR
-.ad
-.sp .6
-.RS 4n
-The name \fIdevice\fR does not end in a decimal number that can be used as a
-minor device number.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBbaud rate not set\fR\fR
-.ad
-.sp .6
-.RS 4n
-The \fIinterval\fR option is being used and the baud rate on the device is
-zero. This would cause a divide-by-zero error when computing the line
-utilization statistics.
-.RE
-
-.SH WARNINGS
-.sp
-.LP
-Underrun, overrun, frame-abort, and CRC errors have a variety of causes.
-Communication protocols are typically able to handle such errors and initiate
-recovery of the transmission in which the error occurred. Small numbers of such
-errors are not a significant problem for most protocols. However, because the
-overhead involved in recovering from a link error can be much greater than that
-of normal operation, high error rates can greatly degrade overall link
-throughput. High error rates are often caused by problems in the link hardware,
-such as cables, connectors, interface electronics or telephone lines. They may
-also be related to excessive load on the link or the supporting system.
-.sp
-.LP
-The percentages for input and output line utilization reported when using the
-\fIinterval\fR option may occasionally be reported as slightly greater than
-100% because of inexact sampling times and differences in the accuracy between
-the system clock and the modem clock. If the percentage of use greatly exceeds
-100%, or never exceeds 50%, then the baud rate set for the device probably does
-not reflect the speed of the modem.
diff --git a/usr/src/man/man1m/sysdef.1m b/usr/src/man/man1m/sysdef.1m
deleted file mode 100644
index 146a07636c..0000000000
--- a/usr/src/man/man1m/sysdef.1m
+++ /dev/null
@@ -1,160 +0,0 @@
-'\" te
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SYSDEF 1M "Feb 25, 2009"
-.SH NAME
-sysdef \- output system definition
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/sysdef\fR [\fB-i\fR] [\fB-n\fR \fInamelist\fR]
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/sysdef\fR [\fB-h\fR] [\fB-d\fR] [\fB-i\fR] [\fB-D\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBsysdef\fR utility outputs the current system definition in tabular form.
-It lists all hardware devices, as well as pseudo devices, system devices,
-loadable modules, and the values of selected kernel tunable parameters.
-.sp
-.LP
-It generates the output by analyzing the named bootable operating system file
-(\fInamelist\fR) and extracting the configuration information from it.
-.sp
-.LP
-The default system \fInamelist\fR is \fB/dev/kmem\fR.
-.SH OPTIONS
-.sp
-.ne 2
-.na
-\fB\fB-i\fR\fR
-.ad
-.RS 15n
-Prints the configuration information from \fB/dev/kmem\fR. This is the default
-and only needs to be specified if the configuration information from both
-\fB/dev/kmem\fR and the system file specified with the "\fB-n\fR
-\fInamelist\fR" option is needed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR \fInamelist\fR\fR
-.ad
-.RS 15n
-Specifies a \fInamelist\fR other than the default (\fB/dev/kmem\fR). The
-\fInamelist\fR specified must be a valid bootable operating system.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-h\fR\fR
-.ad
-.RS 15n
-Prints the identifier of the current host in hexadecimal. If \fBsysdef\fR
-\fB-h\fR is executed within a non-global zone and the zone emulates a host
-identifier, then the zone's host identifier is printed. This numeric value is
-not guaranteed to be unique.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-d\fR\fR
-.ad
-.RS 15n
-The output includes the configuration of system peripherals formatted as a
-device tree.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-D\fR\fR
-.ad
-.RS 15n
-For each system peripheral in the device tree, display the name of the device
-driver used to manage the peripheral.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRSample output format
-.sp
-.LP
-The following example displays the format of the \fBsysdef\fR \fB-d\fR output:
-
-.sp
-.in +2
-.nf
-example% \fBsysdef\fR \fB-d\fR
-Node 'SUNW,Ultra-5_10', unit #-1
- Node 'packages', unit #-1 (no driver)
- Node 'terminal-emulator', unit #-1 (no driver)
- Node 'deblocker', unit #-1 (no driver)
- Node 'obp-tftp', unit #-1 (no driver)
- Node 'disk-label', unit #-1 (no driver)
- Node 'SUNW,builtin-drivers', unit #-1 (no driver)
- Node 'sun-keyboard', unit #-1 (no driver)
- Node 'ufs-file-system', unit #-1 (no driver)
- Node 'chosen', unit #-1 (no driver)
- Node 'openprom', unit #-1 (no driver)
- Node 'client-services', unit #-1 (no driver)
- Node 'options', unit #0
- Node 'aliases', unit #-1 (no driver)
- Node 'memory', unit #-1 (no driver)
- Node 'virtual-memory', unit #-1 (no driver)
- Node 'pci', unit #0
- Node 'pci', unit #0
- Node 'ebus', unit #0
- Node 'auxio', unit #-1 (no driver)
- Node 'power', unit #0
- Node 'SUNW,pll', unit #-1 (no driver)
- Node 'se', unit #0 (no driver)
- Node 'su', unit #0
- Node 'su', unit #1
- Node 'ecpp', unit #-1 (no driver)
- Node 'fdthree', unit #0
- Node 'eeprom', unit #-1 (no driver)
- Node 'flashprom', unit #-1 (no driver)
- Node 'SUNW,CS4231', unit #0 (no driver)
- Node 'network', unit #0
- Node 'SUNW,m64B', unit #0
- Node 'ide', unit #0
- Node 'disk', unit #-1 (no driver)
- Node 'cdrom', unit #-1 (no driver)
- Node 'sd', unit #1
- Node 'dad', unit #1
- Node 'pci', unit #-1 (no driver)
- Node 'SUNW,UltraSPARC-IIi', unit #-1 (no driver)
- Node 'pseudo', unit #0
-
-\fI[output truncated]\fR
-.fi
-.in -2
-.sp
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/dev/kmem\fR\fR
-.ad
-.RS 13n
-default operating system image
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBhostid\fR(1), \fBprtconf\fR(1M), \fBnlist\fR(3ELF), \fBattributes\fR(5),
-\fBzones\fR(5)
diff --git a/usr/src/man/man1m/syseventadm.1m b/usr/src/man/man1m/syseventadm.1m
deleted file mode 100644
index 7cc654f64d..0000000000
--- a/usr/src/man/man1m/syseventadm.1m
+++ /dev/null
@@ -1,468 +0,0 @@
-'\" te
-.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SYSEVENTADM 1M "Sep 28, 2005"
-.SH NAME
-syseventadm \- sysevent event specification administration
-.SH SYNOPSIS
-.LP
-.nf
-\fBsyseventadm\fR add [\fB-R\fR \fIrootdir\fR] [\fB-v\fR \fIvendor\fR] [\fB-p\fR \fIpublisher\fR]
- [\fB-c\fR \fIclass\fR] [\fB-s\fR \fIsubclass\fR] [\fB-u\fR \fIusername\fR] \fIpath\fR [\fIargs\fR]
-.fi
-
-.LP
-.nf
-\fBsyseventadm\fR remove [\fB-R\fR \fIrootdir\fR] [\fB-v\fR \fIvendor\fR] [\fB-p\fR \fIpublisher\fR]
- [\fB-c\fR \fIclass\fR] [\fB-s\fR \fIsubclass\fR] [\fB-u\fR \fIusername\fR] [\fIpath\fR [\fIargs\fR]]
-.fi
-
-.LP
-.nf
-\fBsyseventadm\fR list [\fB-R\fR \fIrootdir\fR] [\fB-v\fR \fIvendor\fR] [\fB-p\fR \fIpublisher\fR]
- [\fB-c\fR \fIclass\fR] [\fB-s\fR \fIsubclass\fR] [\fB-u\fR \fIusername\fR] [\fIpath\fR [\fIargs\fR]]
-.fi
-
-.LP
-.nf
-\fBsyseventadm\fR restart
-.fi
-
-.SH DESCRIPTION
-
-.LP
-The \fBsyseventadm\fR command is an administrative front-end to add, remove and
-list \fBsysevent\fR event handlers. You can also restart the sysevent daemon by
-use of the restart command. \fBsyseventadm\fR can only be run by root.
-.sp
-.LP
-The \fBsyseventadm\fR \fBadd\fR command adds a handler for a \fBsysevent\fR
-event specified by at least one of vendor, publisher or class. If \fIclass\fR
-is specified, it may be qualified with a \fIsub-class\fR. Only the values
-specified for \fIvendor\fR, \fIpublisher\fR, \fIclass\fR and \fIsub-class\fR
-when adding the handler are matched against \fBsysevent\fR events to determine
-if the specification matches the event and the handler should be run.
-\fIpath\fR is the full pathname of the command to be run in response to
-matching events, with optional arguments (\fIargs\fR). If username is
-specified, the command is invoked as user \fIusername\fR, otherwise as root.
-.sp
-.LP
-The \fBsyseventadm\fR \fBremove\fR command removes handlers for matching
-sysevent event specifications. Event specifications may be matched by
-specifying at least one of \fIvendor\fR, \fIpublisher\fR, \fIclass\fR,
-\fIusername\fR or \fIpath\fR. If \fIclass\fR is specified, it may be qualified
-with a \fIsub-class\fR. Any of \fIvendor\fR, \fIpublisher\fR, \fIclass\fR,
-\fIsub-class\fR, \fIusername\fR, \fIpath\fR or \fIargs\fR not specified match
-the corresponding fields of all events. Handlers for all matching
-specifications are removed.
-.sp
-.LP
-The \fBsyseventadm\fR \fBlist\fR command lists the handlers for matching
-\fBsysevent\fR event specifications using the same match criteria as the
-\fBremove\fR command but without the requirement that at least one of
-\fIvendor\fR, \fIpublisher\fR, \fIclass\fR, \fIusername\fR or \fIpath\fR be
-specified. With no match criteria, all specifications are listed. The list
-command output format is: [vendor=\fIvendor\fR] [publisher=\fIpublisher\fR]
-[class=\fIclass\fR] [subclass=\fIsubclass\fR] [username=\fIusername\fR]
-\fIpath\fR [\fIargs\fR] where each of \fIclass\fR, \fIsub-class\fR,
-\fIvendor\fR, \fIpublisher\fR and \fIusername\fR is listed only if part of the
-match criteria for the listed specification.
-.sp
-.LP
-The \fBsyseventadm\fR \fBrestart\fR command informs the \fBsyseventd\fR daemon
-to reread the \fBsysevent\fR registry after a change has been made by adding or
-removing one or more \fBsysevent\fR handler specifications.
-.SS "Argument Macro Substitution"
-
-.LP
-The \fBsysevent\fR handling facility provides extensive macro capability for
-constructing the command line arguments to be executed in response to an event.
-Macro expansion applies only to the command line \fIargs\fR specified for an
-event handler, with macros expanded with data from the event itself.
-Pre-defined macros are provided for the event \fIclass\fR, \fIsubclass\fR,
-\fIpublisher\fR and \fIvendor\fR information. Macros not matching one of the
-pre-defined macro names cause the attribute list attached to the event to be
-searched for an attribute of that name, with the value of the matching
-attribute substituted on the command line.
-.sp
-.LP
-Macros are introduced by the \fB$\fR character, with the macro name being the
-following token separated by a SPACE or TAB character. If the macro name is
-embedded in text, it may be delineated by \fB${\fR and \fB}\fR. A \fB\e\fR
-before the \fB$\fR causes macro expansion not to occur.
-.sp
-.ne 2
-.na
-\fB$\fIclass\fR\fR
-.ad
-.RS 14n
-The class string defining the event
-.RE
-
-.sp
-.ne 2
-.na
-\fB$\fIpublisher\fR\fR
-.ad
-.RS 14n
-The publisher string defining the event
-.RE
-
-.sp
-.ne 2
-.na
-\fB$\fIsequence\fR\fR
-.ad
-.RS 14n
-The sequence number of the event.
-.RE
-
-.sp
-.ne 2
-.na
-\fB$\fIsubclass\fR\fR
-.ad
-.RS 14n
-The subclass string defining the event
-.RE
-
-.sp
-.ne 2
-.na
-\fB$\fItimestamp\fR\fR
-.ad
-.RS 14n
-The timestamp of the event.
-.RE
-
-.sp
-.ne 2
-.na
-\fB$\fIvendor\fR\fR
-.ad
-.RS 14n
-The vendor string defining the event
-.RE
-
-.sp
-.LP
-Macro names other than those pre-defined are compared against the attribute
-list provided with the event. An attribute with name matching the macro name
-causes the value of the attribute to be substituted as \fBASCII\fR text on the
-generated command line.
-.sp
-.LP
-Use of a macro for which no attribute with that name is defined, or for which
-multiple attributes with that name are provided, cause an error and the command
-is not invoked.
-.sp
-.LP
-Attributes with signed data types (\fBDATA_TYPE_INT16\fR, \fBDATA_TYPE_INT32\fR
-and \fBDATA_TYPE_INT64\fR) are expanded as decimal digits.
-.sp
-.LP
-Attributes with unsigned data types (\fBDATA_TYPE_BYTE\fR,
-\fBDATA_TYPE_UINT16\fR, \fBDATA_TYPE_UINT32\fR, \fBDATA_TYPE_UINT64\fR and
-\fBDATA_TYPE_HTTIME\fR) are expanded as hexadecimal digits with a \fB0x\fR
-prefix.
-.sp
-.LP
-Attributes with string data type (\fBDATA_TYPE_STRING\fR) are expanded with the
-string data. The data is not quoted. If if it desired that the quoted strings
-be generated on the command line, put quotes around the macro call in the
-arguments.
-.sp
-.LP
-Array types are expanded with each element expanded as defined for that scalar
-type, with a space separating each element substitution.
-.SH OPTIONS
-
-.LP
-The \fBadd\fR, \fBlist\fR and \fBremove\fR subcommands support the following
-options:
-.sp
-.ne 2
-.na
-\fB\fB-c\fR \fIclass\fR\fR
-.ad
-.RS 16n
-Specify the event class, \fIclass\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR \fIpublisher\fR\fR
-.ad
-.RS 16n
-Specify the event publisher, \fIpublisher\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-R\fR \fIrootdir\fR\fR
-.ad
-.RS 16n
-Specify an alternate root path, \fIrootdir\fR.
-.LP
-Note -
-.sp
-.RS 2
-The root file system of any non-global zones must not be referenced with the
-\fB-R\fR option. Doing so might damage the global zone's file system, might
-compromise the security of the global zone, and might damage the non-global
-zone's file system. See \fBzones\fR(5).
-.RE
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR \fIsubclass\fR\fR
-.ad
-.RS 16n
-Specify the event subclass, \fIsubclass\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-u\fR \fIusername\fR\fR
-.ad
-.RS 16n
-Specify the username (\fIusername\fR) to invoke the command.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR \fIvendor\fR\fR
-.ad
-.RS 16n
-Specify the vendor (\fIvendor\fR) that defines the event. Events defined by
-third-party software should specify the company's stock symbol as \fIvendor\fR.
-Sun-defined events use \fBSUNW\fR.
-.RE
-
-.SH OPERANDS
-
-.LP
-The \fBadd\fR, \fBlist\fR and \fBremove\fR subcommands support the following
-options:
-.sp
-.ne 2
-.na
-\fB\fIargs\fR\fR
-.ad
-.RS 8n
-Command arguments
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIpath\fR\fR
-.ad
-.RS 8n
-Full path of command to be run in response to event
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRAdding an Event Handler
-.sp
-.LP
-The following example adds an event handler for an event defined by vendor
-\fBMYCO\fR ("My Company"), class \fBEC_ENV\fR and sub-class \fBESC_ENV_TEMP\fR.
-The command to be run is \fB/opt/MYCOenv/bin/ec_env_temp\fR, with arguments
-being the class name, sub-class name and pathname derived from the event
-attributes. The \fB$\fR characters are preceded by a backslash to circumvent
-shell interpretation. There is no need to restart the service after the change
-since the registry is maintained on \fB$ALTROOT\fR.
-
-.sp
-.in +2
-.nf
-# syseventadm add -R $ALTROOT -v MYCO -c EC_ENV -s ESC_ENV_TEMP \e
- /opt/MYCOenv/bin/ec_env_temp ${class} ${subclass} ${pathname}
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Note the caveat on the use of the \fB-R\fR option in the description of that
-option, above.
-
-.LP
-\fBExample 2 \fRRemoving an Event Handler
-.sp
-.LP
-The following example removes the event handler added in Example 1.
-
-.sp
-.in +2
-.nf
-# syseventadm remove -R $ALTROOT -v MYCO -c EC_ENV -s ESC_ENV_TEMP \e
- /opt/MYCOenv/bin/ec_env_temp ${class} ${subclass} ${pathname}
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Note the caveat on the use of the \fB-R\fR option in the description of that
-option, above.
-
-.LP
-\fBExample 3 \fRListing Event Handlers
-.sp
-.LP
-The following example lists all event handlers for events of class
-\fBEC_ENV\fR, subclass \fBESC_ENV_TEMP\fR, as defined by vendor \fBMYCO\fR:
-
-.sp
-.in +2
-.nf
-# syseventadm list -v MYCO -c EC_ENV -s ESC_ENV_TEMP \e
- vendor=MYCO class=EC_ENV subclass=ESC_ENV_TEMP \e
- /opt/MYCOenv/bin/ec_env_temp ${class} ${subclass} ${pathname}
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 4 \fRListing Event Handlers
-.sp
-.LP
-The following example lists all event handlers defined by vendor \fBVRTS\fR.
-
-.sp
-.in +2
-.nf
-# syseventadm list -v VRTS
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 5 \fRRemoving Event Handlers
-.sp
-.LP
-The following example removes all event handlers defined by vendor \fBVRTS\fR,
-and restarts service.
-
-.sp
-.in +2
-.nf
-# syseventadm remove -v VRTS
-# syseventadm restart
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 6 \fRListing All Event Handlers Specified to Run a Command
-.sp
-.LP
-The following example lists all event handlers specified to run the command
-\fB/opt/MYCOenv/bin/ec_env_temp\fR:
-
-.sp
-.in +2
-.nf
-# syseventadm list /opt/MYCOenv/bin/ec_env_temp
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 7 \fRRemoving Event Handlers and Restarting Service
-.sp
-.LP
-The following example removes all event handlers specified to run the command
-\fB/opt/MYCOenv/bin/ec_env_temp\fR, and restarts service:
-
-.sp
-.in +2
-.nf
-# syseventadm remove /opt/MYCOenv/bin/ec_env_temp
-# syseventadm restart
-.fi
-.in -2
-.sp
-
-.SH EXIT STATUS
-
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 5n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB1\fR\fR
-.ad
-.RS 5n
-No matching event specification found (remove or list commands only).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB2\fR\fR
-.ad
-.RS 5n
-Incorrect command usage.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB3\fR\fR
-.ad
-.RS 5n
-Permission denied.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB4\fR\fR
-.ad
-.RS 5n
-Command failed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB5\fR\fR
-.ad
-.RS 5n
-Out of memory.
-.RE
-
-.SH SEE ALSO
-
-.LP
-\fBsyseventd\fR(1M), \fBsysevent_post_event\fR(3SYSEVENT), \fBattributes\fR(5),
-\fBddi_log_sysevent\fR(9F)
-.SH NOTES
-
-.LP
-To avoid upgrade problems, packages delivering a sysevent event handler should
-install the event handler by running \fBsyseventadm\fR from the package's
-postinstall script. The event handler can then be removed by running
-\fBsyseventadm\fR from the package's preremove script using the same arguments
-as when added.
diff --git a/usr/src/man/man1m/syseventconfd.1m b/usr/src/man/man1m/syseventconfd.1m
deleted file mode 100644
index 49041a48a7..0000000000
--- a/usr/src/man/man1m/syseventconfd.1m
+++ /dev/null
@@ -1,78 +0,0 @@
-'\" te
-.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 2013 Nexenta Systems, Inc. All rights reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SYSEVENTCONFD 1M "Jan 31, 2013"
-.SH NAME
-syseventconfd \- kernel system event command invocation daemon
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/sysevent/syseventconfd\fR [\fB-r\fR \fIrootdir\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBsyseventconfd\fR is the user-level daemon that invokes user-level commands
-in response to kernel system events received from \fBsyseventd\fR(1M).
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-r\fR \fIrootdir\fR\fR
-.ad
-.RS 14n
-Cause \fBsyseventconfd\fR to use an alternate root path when creating its door.
-The root path must match the root path used to invoke \fBsyseventd\fR.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/var/run/syseventconfd_door/reg_door\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBsyseventconfd\fR event service door file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/sysevent/modules/sysevent_conf_mod.so\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBsyseventd\fR loadable module (\fBSLM\fR) managing \fBsysevent.conf\fR files
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBsvcs\fR(1), \fBsvcadm\fR(1M), \fBsyseventd\fR(1M), \fBattributes\fR(5),
-\fBsmf\fR(5)
-.SH NOTES
-.sp
-.LP
-The \fBsyseventconfd\fR service is managed by the service management facility,
-\fBsmf\fR(5), under the service identifier:
-.sp
-.in +2
-.nf
-svc:/system/sysevent:default
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Administrative actions on this service, such as enabling, disabling, or
-requesting restart, can be performed using \fBsvcadm\fR(1M). The service's
-status can be queried using the \fBsvcs\fR(1) command.
diff --git a/usr/src/man/man1m/syseventd.1m b/usr/src/man/man1m/syseventd.1m
deleted file mode 100644
index b3f163e893..0000000000
--- a/usr/src/man/man1m/syseventd.1m
+++ /dev/null
@@ -1,154 +0,0 @@
-'\" te
-.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 2013 Nexenta Systems, Inc. All rights reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SYSEVENTD 1M "Jan 31, 2013"
-.SH NAME
-syseventd \- kernel system event notification daemon
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/sysevent/syseventd\fR [\fB-d\fR \fIdebug_level\fR] [\fB-r\fR \fIrootdir\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBsyseventd\fR is a user-level daemon that accepts delivery of system event
-buffers from the kernel. Once an event buffer has been delivered to
-\fBsyseventd\fR, it, in turn, attempts to propagate the event to all interested
-end event subscribers.
-.sp
-.LP
-Event subscribers take the form of a \fBsyseventd\fR loadable module
-(\fBSLM\fR). \fBsyseventd\fR passes the event buffer to each of its subscribers
-and in return expects a notification as to the successful or unsuccessful
-delivery attempt.
-.sp
-.LP
-Upon successful delivery of the event buffer to all interested event
-subscribers, \fBsyseventd\fR frees the event buffer from the kernel event
-queue.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-d\fR \fIdebug_level\fR\fR
-.ad
-.RS 18n
-Enable debug mode. Messages are printed to the invoking user's terminal.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-r\fR \fIrootdir\fR\fR
-.ad
-.RS 18n
-Cause \fBsyseventd\fR to use an alternate root path when creating its door and
-lock files. Modules continue to be loaded from the standard module directories.
-.RE
-
-.SH EXIT STATUS
-.sp
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR \fR
-.ad
-.RS 12n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnon-zero\fR\fR
-.ad
-.RS 12n
-An error occurred.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/var/run/syseventd.lock\fR\fR
-.ad
-.sp .6
-.RS 4n
-daemon lock file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/run/sysevent_door\fR \fR
-.ad
-.sp .6
-.RS 4n
-kernel to \fBsyseventd\fR door file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/sysevent/modules\fR \fR
-.ad
-.sp .6
-.RS 4n
-\fBSLM\fR directory repository
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/platform/\fR\fB`\fR\fBuname
-\(emi\fR\fB`\fR\fB/lib/sysevent/modules\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBSLM\fR directory repository
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/platform/\fR\fB`\fR\fBuname
-\(emm\fR\fB`\fR\fB/lib/sysevent/modules\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBSLM\fR directory repository
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBsvcs\fR(1), \fBsvcadm\fR(1M), \fBsyseventconfd\fR(1M), \fBattributes\fR(5),
-\fBsmf\fR(5)
-.SH NOTES
-.sp
-.LP
-The \fBsyseventd\fR service is managed by the service management facility,
-\fBsmf\fR(5), under the service identifier:
-.sp
-.in +2
-.nf
-svc:/system/sysevent:default
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Administrative actions on this service, such as enabling, disabling, or
-requesting restart, can be performed using \fBsvcadm\fR(1M). The service's
-status can be queried using the \fBsvcs\fR(1) command.
diff --git a/usr/src/man/man1m/syslogd.1m b/usr/src/man/man1m/syslogd.1m
deleted file mode 100644
index 42e34de642..0000000000
--- a/usr/src/man/man1m/syslogd.1m
+++ /dev/null
@@ -1,366 +0,0 @@
-'\" te
-.\" Copyright (c) 2013 Gary Mills
-.\" Copyright (C) 2008, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SYSLOGD 1M "June 20, 2021"
-.SH NAME
-syslogd \- log system messages
-.SH SYNOPSIS
-.nf
-\fB/usr/sbin/syslogd\fR [\fB-d\fR] [\fB-f\fR \fIconfigfile\fR] [\fB-m\fR \fImarkinterval\fR]
- [\fB-p\fR \fIpath\fR] [\fB-t\fR | \fB-T\fR]
-.fi
-
-.SH DESCRIPTION
-\fBsyslogd\fR reads and forwards system messages to the appropriate log files
-or users, depending upon the priority of a message and the system facility from
-which it originates. The configuration file \fB/etc/syslog.conf\fR (see
-\fBsyslog.conf\fR(4)) controls where messages are forwarded. \fBsyslogd\fR logs
-a mark (timestamp) message every \fImarkinterval\fR minutes (default \fB20\fR)
-at priority \fBLOG_INFO\fR to the facility whose name is given as \fBmark\fR in
-the \fBsyslog.conf\fR file.
-.sp
-.LP
-A system message consists of a single line of text, which may be prefixed with
-a priority code number enclosed in angle-brackets (\fB<\|>\fR); priorities are
-defined in \fB<sys/syslog.h>\fR\&.
-.sp
-.LP
-\fBsyslogd\fR reads from the \fBSTREAMS\fR log driver, \fB/dev/log\fR, and from
-any transport provider specified in \fB/etc/netconfig\fR,
-\fB/etc/net/transport/hosts\fR, and \fB/etc/net/transport/services\fR.
-.sp
-.LP
-\fBsyslogd\fR reads the configuration file when it starts up, and again
-whenever it receives a \fBHUP\fR signal (see \fBsignal.h\fR(3HEAD), at which
-time it also closes all files it has open, re-reads its configuration file, and
-then opens only the log files that are listed in that file. \fBsyslogd\fR exits
-when it receives a \fBTERM\fR signal.
-.sp
-.LP
-As it starts up, \fBsyslogd\fR creates the file \fB/var/run/syslog.pid\fR, if
-possible, containing its process identifier (\fBPID\fR).
-.sp
-.LP
-If message \fBID\fR generation is enabled (see \fBlog\fR(7D)), each message
-will be preceded by an identifier in the following format: \fB[ID\fR \fImsgid
-facility\fR\fB\&.\fR\fIpriority\fR\fB]\fR. \fImsgid\fR is the message's numeric
-identifier described in \fBmsgid\fR(1M). \fIfacility\fR and \fIpriority\fR are
-described in \fBsyslog.conf\fR(4). \fB[ID 123456 kern.notice]\fR is an example
-of an identifier when message \fBID\fR generation is enabled.
-.sp
-.LP
-If the message originated in a loadable kernel module or driver, the kernel
-module's name (for example, \fBufs\fR) will be displayed instead of \fBunix\fR.
-See \fBEXAMPLES\fR for sample output from \fBsyslogd\fR with and without
-message \fBID\fR generation enabled.
-.sp
-.LP
-In an effort to reduce visual clutter, message \fBID\fRs are not displayed when
-writing to the console; message \fBID\fRs are only written to the log file.
-See \fBEXAMPLES\fR.
-.sp
-.LP
-The \fB/etc/default/syslogd\fR file contains the following default parameter
-settings, which are in effect if neither the \fB-t\fR nor \fB-T\fR option is
-selected. See \fBFILES\fR.
-.sp
-.LP
-The recommended way to allow or disallow message logging is through the use of
-the service management facility (\fBsmf\fR(5)) property:
-.sp
-.in +2
-.nf
-svc:/system/system-log/config/log_from_remote
-.fi
-.in -2
-
-.sp
-.LP
-This property specifies whether remote messages are logged.
-\fBlog_from_remote=true\fR is equivalent to the \fB-t\fR command-line option
-and \fBfalse\fR is equivalent to the \fB-T\fR command-line option. The default
-value for \fB-log_from_remote\fR is \fBfalse\fR. See NOTES, below.
-.sp
-.ne 2
-.na
-\fB\fBLOG_FROM_REMOTE\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies whether remote messages are logged. \fBLOG_FROM_REMOTE=NO\fR is
-equivalent to the \fB-t\fR command-line option. The default value for
-\fBLOG_FROM_REMOTE\fR is \fBYES\fR.
-.RE
-
-.SH OPTIONS
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-d\fR\fR
-.ad
-.sp .6
-.RS 4n
-Turn on debugging. This option should only be used interactively in a root
-shell once the system is in multi-user mode. It should \fBnot\fR be used in the
-system start-up scripts, as this will cause the system to hang at the point
-where \fBsyslogd\fR is started.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR \fIconfigfile\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify an alternate configuration file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-m\fR \fImarkinterval\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify an interval, in minutes, between mark messages.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR \fIpath\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify an alternative log device name. The default is \fB/dev/log\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-T\fR\fR
-.ad
-.sp .6
-.RS 4n
-Enable the \fBsyslogd\fR \fBUDP\fR port to turn on logging of remote messages.
-This is the default behavior. See \fBEXAMPLES\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-t\fR\fR
-.ad
-.sp .6
-.RS 4n
-Disable the \fBsyslogd\fR \fBUDP\fR port to turn off logging of remote
-messages. See \fBEXAMPLES\fR.
-.RE
-
-.SH EXAMPLES
-\fBExample 1 \fR\fBsyslogd\fR Output Without Message ID Generation Enabled
-.sp
-.LP
-The following example shows the output from \fBsyslogd\fR when message \fBID\fR
-generation \fBis not\fR enabled:
-
-.sp
-.in +2
-.nf
-Sep 29 21:41:18 cathy unix: alloc /: file system full
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fR\fBsyslogd\fR Output with ID generation Enabled
-.sp
-.LP
-The following example shows the output from \fBsyslogd\fR when message \fBID\fR
-generation \fBis\fR enabled. The message \fBID\fR is displayed when writing to
-log file \fB/var/adm/messages\fR.
-
-.sp
-.in +2
-.nf
-Sep 29 21:41:18 cathy ufs: [ID 845546 kern.notice]
- alloc /: file system full
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fR\fBsyslogd\fR Output with ID Generation Enabled
-.sp
-.LP
-The following example shows the output from \fBsyslogd\fR when message \fBID\fR
-generation \fBis\fR enabled when writing to the console. Even though message ID
-is enabled, the message \fBID\fR is not displayed at the console.
-
-.sp
-.in +2
-.nf
-Sep 29 21:41:18 cathy ufs: alloc /: file system full
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 4 \fREnabling Acceptance of UDP Messages from Remote Systems
-.sp
-.LP
-The following commands enable \fBsyslogd\fR to accept entries from remote
-systems.
-
-.sp
-.in +2
-.nf
-# \fBsvccfg -s svc:/system/system-log setprop config/log_from_remote = true\fR
-# \fBsvcadm restart svc:/system/system-log\fR
-.fi
-.in -2
-.sp
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/etc/syslog.conf\fR\fR
-.ad
-.sp .6
-.RS 4n
-Configuration file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/run/syslog.pid\fR\fR
-.ad
-.sp .6
-.RS 4n
-Process \fBID\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/default/syslogd\fR\fR
-.ad
-.sp .6
-.RS 4n
-Contains default settings. You can override some of the settings by
-command-line options.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/log\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBSTREAMS\fR log driver
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/netconfig\fR\fR
-.ad
-.sp .6
-.RS 4n
-Transport providers available on the system
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/net/transport/hosts\fR\fR
-.ad
-.sp .6
-.RS 4n
-Network hosts for each transport
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/net/transport/services\fR\fR
-.ad
-.sp .6
-.RS 4n
-Network services for each transport
-.RE
-
-.SH SEE ALSO
-\fBlogger\fR(1), \fBsvcs\fR(1), \fBmsgid\fR(1M), \fBsvcadm\fR(1M),
-\fBsvccfg\fR(1M), \fBsyslog\fR(3C), \fBsyslog.conf\fR(4), \fBattributes\fR(5),
-\fBsignal.h\fR(3HEAD), \fBsmf\fR(5), \fBlog\fR(7D)
-.SH NOTES
-The \fBmark\fR message is a system time stamp, and so it is only defined for
-the system on which \fBsyslogd\fR is running. It can not be forwarded to other
-systems.
-.sp
-.LP
-When \fBsyslogd\fR receives a \fBHUP\fR signal, it attempts to complete
-outputting pending messages, and close all log files to which it is currently
-logging messages. If, for some reason, one (or more) of these files does not
-close within a generous grace period, \fBsyslogd\fR discards the pending
-messages, forcibly closes these files, and starts reconfiguration. If this
-shutdown procedure is disturbed by an unexpected error and \fBsyslogd\fR cannot
-complete reconfiguration, \fBsyslogd\fR sends a mail message to the superuser
-on the current system stating that it has shut down, and exits.
-.sp
-.LP
-Care should be taken to ensure that each window displaying messages forwarded
-by \fBsyslogd\fR (especially console windows) is run in the system default
-locale (which is \fBsyslogd\fR's locale). If this advice is not followed, it is
-possible for a \fBsyslog\fR message to alter the terminal settings for that
-window, possibly even allowing remote execution of arbitrary commands from that
-window.
-.sp
-.LP
-The \fBsyslogd\fR service is managed by the service management facility,
-\fBsmf\fR(5), under the service identifier:
-.sp
-.in +2
-.nf
- svc:/system/system-log:default
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Administrative actions on this service, such as enabling, disabling, or
-requesting restart, can be performed using \fBsvcadm\fR(1M). The service's
-status can be queried using the \fBsvcs\fR(1) command.
-.sp
-.LP
-When \fBsyslogd\fR is started by means of \fBsvcadm\fR(1M), if a value is
-specified for \fBLOG_FROM_REMOTE\fR in the \fB/etc/defaults/syslogd\fR file,
-the SMF property \fBsvc:/system/system-log/config/log_from_remote\fR is set to
-correspond to the \fBLOG_FROM_REMOTE\fR value and the
-\fB/etc/default/syslogd\fR file is modified to replace the
-\fBLOG_FROM_REMOTE\fR specification with the following comment:
-.sp
-.in +2
-.nf
-# LOG_FROM_REMOTE is now set using svccfg(1m), see syslogd(1m).
-.fi
-.in -2
-
-.sp
-.LP
-If neither \fBLOG_FROM_REMOTE\fR nor
-\fBsvc:/system/system-log/config/log_from_remote\fR are defined, the default is
-to log remote messages.
-.sp
-.LP
-On installation, the initial value of
-\fBsvc:/system/system-log/config/log_from_remote\fR is \fBfalse\fR.
diff --git a/usr/src/man/man1m/tapes.1m b/usr/src/man/man1m/tapes.1m
deleted file mode 100644
index 89796281df..0000000000
--- a/usr/src/man/man1m/tapes.1m
+++ /dev/null
@@ -1,272 +0,0 @@
-'\" te
-.\" Copyright (c) 2002 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH TAPES 1M "Nov 8, 2002"
-.SH NAME
-tapes \- creates /dev entries for tape drives attached to the system
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/tapes\fR [\fB-r\fR \fIroot_dir\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBdevfsadm\fR(1M) is now the preferred command for \fB/dev\fR and
-\fB/devices\fR and should be used instead of \fBtapes\fR.
-.sp
-.LP
-\fBtapes\fR creates symbolic links in the \fB/dev/rmt\fR directory to the
-actual tape device special files under the \fB/devices\fR directory tree.
-\fBtapes\fR searches the kernel device tree to see what tape devices are
-attached to the system. For each equipped tape drive, the following steps are
-performed:
-.RS +4
-.TP
-1.
-The \fB/dev/rmt\fR directory is searched for a \fB/dev/rmt/\fR\fIn\fR entry
-that is a symbolic link to the \fB/devices\fR special node of the current tape
-drive. If one is found, this determines the logical controller number of the
-tape drive.
-.RE
-.RS +4
-.TP
-2.
-The rest of the special devices associated with the drive are checked, and
-incorrect symbolic links are removed and necessary ones added.
-.RE
-.RS +4
-.TP
-3.
-If none are found, a new logical controller number is assigned (the
-lowest-unused number), and new symbolic links are created for all the special
-devices associated with the drive.
-.RE
-.sp
-.LP
-\fBtapes\fR does not remove links to non-existent devices; these must be
-removed by hand.
-.sp
-.LP
-\fBtapes\fR is run each time a reconfiguration-boot is performed, or when
-\fBadd_drv\fR(1M) is executed.
-.SS "Notice to Driver Writers"
-.sp
-.LP
-\fBtapes\fR(1M) considers all devices with the node type \fBDDI_NT_TAPE\fR to
-be tape devices; these devices must have their minor name created with a
-specific format. The minor name encodes operational modes for the tape device
-and consists of an \fBASCII\fR string of the form [
-\fBl\fR,\fBm\fR,\fBh\fR,\fBc\fR,\fBu\fR ][ \fBb\fR ][ \fBn\fR ].
-.sp
-.LP
-The first character set is used to specify the tape density of the device, and
-are named low (\fBl\fR), medium (\fBm\fR), high (\fBh\fR), compressed
-(\fBc\fR), and ultra (\fBu\fR). These specifiers only express a relative
-density; it is up to the driver to assign specific meanings as needed. For
-example, 9 track tape devices interpret these as actual bits-per-inch
-densities, where \fBl\fR means 800 \fBBPI,\fR \fBm\fR means 1600 \fBBPI ,\fR
-and \fBh\fR means 6250 \fBBPI,\fR whereas 4mm \fBDAT\fR tapes defines \fBl\fR
-as standard format, and \fBm\fR, \fB h\fR, \fBc\fR and \fBu\fR as compressed
-format. Drivers may choose to implement any or all of these format types.
-.sp
-.LP
-During normal tape operation (non-\fBBSD\fR behavior), once an \fBEOF\fR mark
-has been reached, subsequent reads from the tape device return an error. An
-explicit IOCTL must be issued to space over the \fBEOF\fR mark before the next
-file can be read. \fBb\fR instructs the device to observe \fBBSD\fR behavior,
-where reading at \fBEOF\fR will cause the tape device to automatically space
-over the \fBEOF\fR mark and begin reading from the next file.
-.sp
-.LP
-\fBn\fR or no-rewind-on-close instructs the driver to not rewind to the
-beginning of tape when the device is closed. Normal behavior for tape devices
-is to reposition to BOT when closing. See \fBmtio\fR(7I).
-.sp
-.LP
-The minor number for tape devices should be created by encoding the device's
-instance number using the tape macro \fBMTMINOR\fR and ORing in the proper
-combination of density, \fBBSD\fR behavior, and no-rewind flags. See
-\fBmtio\fR(7I).
-.sp
-.LP
-To prevent \fBtapes\fR from attempting to automatically generate links for a
-device, drivers must specify a private node type and refrain from using the
-node type string \fBDDI_NT_TAPE\fR when calling
-\fBddi_create_minor_node\fR(9F).
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-r\fR \fIroot_dir\fR\fR
-.ad
-.RS 15n
-Causes \fBtapes\fR to presume that the \fB/dev/rmt\fR directory tree is found
-under \fIroot_dir\fR, not directly under \fB/\fR.
-.RE
-
-.SH ERRORS
-.sp
-.LP
-If \fBtapes\fR finds entries of a particular logical controller linked to
-different physical controllers, it prints an error message and exits without
-making any changes to the \fB/dev\fR directory, since it cannot determine which
-of the two alternative logical to physical mappings is correct. The links
-should be manually corrected or removed before another reconfiguration boot is
-performed.
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRCreating Tape Device Nodes From Within the Driver's
-\fBattach()\fR Function
-.sp
-.LP
-This example demonstrates creating tape device nodes from within the
-\fBxktape\fR driver's \fBattach\fR(9E) function.
-
-.sp
-.in +2
-.nf
-#include <sys/mtio.h>
-struct tape_minor_info {
- char *minor_name;
- int minor_mode;
-};
-/*
- * create all combinations of logical tapes
-*/
-static struct tape_minor_info example_tape[] = {
- {"", 0}, /* default tape */
- {"l", MT_DENSITY1},
- {"lb", MT_DENSITY1 | MT_BSD},
- {"lbn", MT_DENSITY1 | MT_BSD | MT_NOREWIND},
- {"m", MT_DENSITY2},
- {"mb", MT_DENSITY2 | MT_BSD},
- {"mbn", MT_DENSITY2 | MT_BSD | MT_NOREWIND},
- {"h", MT_DENSITY3},
- {"hb", MT_DENSITY3 | MT_BSD},
- {"hbn", MT_DENSITY3 | MT_BSD | MT_NOREWIND},
- {"c", MT_DENSITY4},
- {"cb", MT_DENSITY4 | MT_BSD},
- {"cbn", MT_DENSITY4| MT_BSD | MT_NOREWIND},
- {NULL, 0},
-};
-
-int
-xktapeattach(dev_info_t *dip, ddi_attach_cmd_t cmd)
-{
- int instance;
- struct tape_minor_info *mdp;
- /* other stuff in attach... */
- instance = ddi_get_instance(dip);
-
- for (mdp = example_tape; mdp->minor_name != NULL; mdp++) {
- ddi_create_minor_node(dip, mdp->minor_name, S_IFCHR,
- (MTMINOR(instance) | mdp->minor_mode), DDI_NT_TAPE, 0);
- }
-.fi
-.in -2
-
-.sp
-.LP
-Installing the \fBxktape\fR driver on a Sun Fire 4800, with the driver
-controlling a \fBSCSI\fR tape (target 4 attached to an \fBisp\fR(7D) \fBSCSI
-HBA)\fR and performing a reconfiguration-boot creates the following special
-files in \fB/devices\fR.
-
-.sp
-.in +2
-.nf
-# ls -l /devices/ssm@0,0/pci@18,700000/pci@1/SUNW,isptwo@4
-crw-rw-rw- 1 root sys 33,136 Aug 29 00:02 xktape@4,0:
-crw-rw-rw- 1 root sys 33,200 Aug 29 00:02 xktape@4,0:b
-crw-rw-rw- 1 root sys 33,204 Aug 29 00:02 xktape@4,0:bn
-crw-rw-rw- 1 root sys 33,152 Aug 29 00:02 xktape@4,0:c
-crw-rw-rw- 1 root sys 33,216 Aug 29 00:02 xktape@4,0:cb
-crw-rw-rw- 1 root sys 33,220 Aug 29 00:02 xktape@4,0:cbn
-crw-rw-rw- 1 root sys 33,156 Aug 29 00:02 xktape@4,0:cn
-crw-rw-rw- 1 root sys 33,144 Aug 29 00:02 xktape@4,0:h
-crw-rw-rw- 1 root sys 33,208 Aug 29 00:02 xktape@4,0:hb
-crw-rw-rw- 1 root sys 33,212 Aug 29 00:02 xktape@4,0:hbn
-crw-rw-rw- 1 root sys 33,148 Aug 29 00:02 xktape@4,0:hn
-crw-rw-rw- 1 root sys 33,128 Aug 29 00:02 xktape@4,0:l
-crw-rw-rw- 1 root sys 33,192 Aug 29 00:02 xktape@4,0:lb
-crw-rw-rw- 1 root sys 33,196 Aug 29 00:02 xktape@4,0:lbn
-crw-rw-rw- 1 root sys 33,132 Aug 29 00:02 xktape@4,0:ln
-crw-rw-rw- 1 root sys 33,136 Aug 29 00:02 xktape@4,0:m
-crw-rw-rw- 1 root sys 33,200 Aug 29 00:02 xktape@4,0:mb
-crw-rw-rw- 1 root sys 33,204 Aug 29 00:02 xktape@4,0:mbn
-crw-rw-rw- 1 root sys 33,140 Aug 29 00:02 xktape@4,0:mn
-crw-rw-rw- 1 root sys 33,140 Aug 29 00:02 xktape@4,0:n
-.fi
-.in -2
-
-.sp
-.LP
-\fB/dev/rmt\fR will contain the logical tape devices (symbolic links to tape
-devices in \fB/devices\fR).
-
-.sp
-.in +2
-.nf
-# ls -l /dev/rmt
-/dev/rmt/0 -> ../../devices/[....]/xktape@4,0:
-/dev/rmt/0b -> ../../devices/[....]/xktape@4,0:b
-/dev/rmt/0bn -> ../../devices/[....]/xktape@4,0:bn
-/dev/rmt/0c -> ../../devices/[....]/xktape@4,0:c
-/dev/rmt/0cb -> ../../devices/[....]/xktape@4,0:cb
-/dev/rmt/0cbn -> ../../devices/[....]/xktape@4,0:cbn
-/dev/rmt/0cn -> ../../devices/[....]/xktape@4,0:cn
-/dev/rmt/0h -> ../../devices/[....]/xktape@4,0:h
-/dev/rmt/0hb -> ../../devices/[....]/xktape@4,0:hb
-/dev/rmt/0hbn -> ../../devices/[....]/xktape@4,0:hbn
-/dev/rmt/0hn -> ../../devices/[....]/xktape@4,0:hn
-/dev/rmt/0l -> ../../devices/[....]/xktape@4,0:l
-/dev/rmt/0lb -> ../../devices/[....]/xktape@4,0:lb
-/dev/rmt/0lbn -> ../../devices/[....]/xktape@4,0:lbn
-/dev/rmt/0ln -> ../../devices/[....]/xktape@4,0:ln
-/dev/rmt/0m -> ../../devices/[....]/xktape@4,0:m
-/dev/rmt/0mb -> ../../devices/[....]/xktape@4,0:mb
-/dev/rmt/0mbn -> ../../devices/[....]/xktape@4,0:mbn
-/dev/rmt/0mn -> ../../devices/[....]/xktape@4,0:mn
-/dev/rmt/0n -> ../../devices/[....]/xktape@4,0:n
-.fi
-.in -2
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/dev/rmt/*\fR\fR
-.ad
-.RS 14n
-logical tape devices
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/devices/*\fR\fR
-.ad
-.RS 14n
-tape device nodes
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBadd_drv\fR(1M), \fBdevfsadm\fR(1M), \fBattributes\fR(5), \fBisp\fR(7D),
-\fBdevfs\fR(7FS), \fBmtio\fR(7I), \fBattach\fR(9E),
-\fBddi_create_minor_node\fR(9F)
-.sp
-.LP
-\fI\fR
-.SH BUGS
-.sp
-.LP
-\fBtapes\fR silently ignores malformed minor device names.
diff --git a/usr/src/man/man1m/tcpd.1m b/usr/src/man/man1m/tcpd.1m
deleted file mode 100644
index 7ebd63d845..0000000000
--- a/usr/src/man/man1m/tcpd.1m
+++ /dev/null
@@ -1,115 +0,0 @@
-'\" t
-.\"
-.\" Modified for Solaris to to add the Solaris stability classification,
-.\" and to add a note about source availability.
-.\"
-.TH TCPD 1M "Sep 15, 2011"
-.SH NAME
-tcpd \- access control facility for internet services
-.SH DESCRIPTION
-.PP
-The \fItcpd\fR program can be set up to monitor incoming requests for
-\fItelnet\fR, \fIfinger\fR, \fIftp\fR, \fIexec\fR, \fIrsh\fR,
-\fIrlogin\fR, \fItftp\fR, \fItalk\fR, \fIcomsat\fR and other services
-that have a one-to-one mapping onto executable files.
-.PP
-The program supports both 4.3BSD-style sockets and System V.4-style
-TLI. Functionality may be limited when the protocol underneath TLI is
-not an internet protocol.
-.PP
-Operation is as follows: whenever a request for service arrives, the
-\fIinetd\fP daemon is tricked into running the \fItcpd\fP program
-instead of the desired server. \fItcpd\fP logs the request and does
-some additional checks. When all is well, \fItcpd\fP runs the
-appropriate server program and goes away.
-.PP
-Optional features are: pattern-based access control, client username
-lookups with the RFC 931 etc. protocol, protection against hosts that
-pretend to have someone elses host name, and protection against hosts
-that pretend to have someone elses network address.
-.SH LIBWRAP INTERFACE
-The same monitoring and access control functionality provided by the
-tcpd standalone program is also available through the libwrap shared
-library interface. Some programs, including the Solaris inetd daemon,
-have been modified to use the libwrap interface and thus do not
-require replacing the real server programs with tcpd. The libwrap
-interface is also more efficient and can be used for inetd internal
-services. See
-.BR inetd (1M)
-for more information.
-.SH LOGGING
-Connections that are monitored by
-.I tcpd
-are reported through the \fIsyslog\fR(3) facility. Each record contains
-a time stamp, the client host name and the name of the requested
-service. The information can be useful to detect unwanted activities,
-especially when logfile information from several hosts is merged.
-.PP
-In order to find out where your logs are going, examine the syslog
-configuration file, usually /etc/syslog.conf.
-.SH ACCESS CONTROL
-Optionally,
-.I tcpd
-supports a simple form of access control that is based on pattern
-matching. The access-control software provides hooks for the execution
-of shell commands when a pattern fires. For details, see the
-\fIhosts_access\fR(4) manual page.
-.SH HOST NAME VERIFICATION
-The authentication scheme of some protocols (\fIrlogin, rsh\fR) relies
-on host names. Some implementations believe the host name that they get
-from any random name server; other implementations are more careful but
-use a flawed algorithm.
-.PP
-.I tcpd
-verifies the client host name that is returned by the address->name DNS
-server by looking at the host name and address that are returned by the
-name->address DNS server. If any discrepancy is detected,
-.I tcpd
-concludes that it is dealing with a host that pretends to have someone
-elses host name.
-.PP
-If the sources are compiled with -DPARANOID,
-.I tcpd
-will drop the connection in case of a host name/address mismatch.
-Otherwise, the hostname can be matched with the \fIPARANOID\fR wildcard,
-after which suitable action can be taken.
-.SH HOST ADDRESS SPOOFING
-Optionally,
-.I tcpd
-disables source-routing socket options on every connection that it
-deals with. This will take care of most attacks from hosts that pretend
-to have an address that belongs to someone elses network. UDP services
-do not benefit from this protection. This feature must be turned on
-at compile time.
-.SH RFC 931
-When RFC 931 etc. lookups are enabled (compile-time option) \fItcpd\fR
-will attempt to establish the name of the client user. This will
-succeed only if the client host runs an RFC 931-compliant daemon.
-Client user name lookups will not work for datagram-oriented
-connections, and may cause noticeable delays in the case of connections
-from PCs.
-.PP
-Warning: If the local system runs an RFC 931 server it is important
-that it be configured NOT to use TCP Wrappers, or that TCP Wrappers
-be configured to avoid RFC 931-based access control for this service.
-If you use usernames in the access control files, make sure that you
-have a hosts.allow entry that allows the RFC 931 service (often called
-"identd" or "auth") without any username restrictions. Failure to heed
-this warning can result in two hosts getting in an endless loop of
-consulting each other's identd services.
-.SH EXAMPLES
-.\" Begin Sun update
-.SH ATTRIBUTES
-See
-.BR attributes (5)
-for descriptions of the following attributes:
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-=
-Interface Stability Committed
-.TE
-.\" End Sun update
diff --git a/usr/src/man/man1m/tcpdchk.1m b/usr/src/man/man1m/tcpdchk.1m
deleted file mode 100644
index 2699c95220..0000000000
--- a/usr/src/man/man1m/tcpdchk.1m
+++ /dev/null
@@ -1,88 +0,0 @@
-'\" t
-.\"
-.\" Modified for Solaris to to add the Solaris stability classification,
-.\" and to add a note about source availability.
-.\"
-.TH TCPDCHK 1M "Sep 15, 2011"
-.SH NAME
-tcpdchk \- tcp wrapper configuration checker
-.SH SYNOPSYS
-tcpdchk [-a] [-d] [-i inet_conf] [-v]
-.SH DESCRIPTION
-.PP
-\fItcpdchk\fR examines your tcp wrapper configuration and reports all
-potential and real problems it can find. The program examines the
-\fItcpd\fR access control files (by default, these are
-\fI/etc/hosts.allow\fR and \fI/etc/hosts.deny\fR), and compares the
-entries in these files against entries in the \fIinetd\fR
-network configuration files.
-.PP
-\fItcpdchk\fR reports problems such as non-existent pathnames; services
-that appear in \fItcpd\fR access control rules, but are not controlled
-by \fItcpd\fR; services that should not be wrapped; non-existent host
-names or non-internet address forms; occurrences of host aliases
-instead of official host names; hosts with a name/address conflict;
-inappropriate use of wildcard patterns; inappropriate use of NIS
-netgroups or references to non-existent NIS netgroups; references to
-non-existent options; invalid arguments to options; and so on.
-.PP
-Where possible, \fItcpdchk\fR provides a helpful suggestion to fix the
-problem.
-.SH OPTIONS
-.IP -a
-Report access control rules that permit access without an explicit
-ALLOW keyword. This applies only when the extended access control
-language is enabled (build with -DPROCESS_OPTIONS).
-.IP -d
-Examine \fIhosts.allow\fR and \fIhosts.deny\fR files in the current
-directory instead of the default ones.
-.IP "-i inet_conf"
-Specify this option when \fItcpdchk\fR is unable to find your
-\fIinetd.conf\fR network configuration file, or when
-you suspect that the program uses the wrong one.
-.IP -v
-Display the contents of each access control rule. Daemon lists, client
-lists, shell commands and options are shown in a pretty-printed format;
-this makes it easier for you to spot any discrepancies between what you
-want and what the program understands.
-.SH FILES
-.PP
-The default locations of the \fItcpd\fR access control tables are:
-.PP
-/etc/hosts.allow
-.br
-/etc/hosts.deny
-.SH SEE ALSO
-.na
-.nf
-tcpdmatch(1M), explain what tcpd would do in specific cases.
-hosts_access(4), format of the tcpd access control tables.
-hosts_options(4), format of the language extensions.
-inetd.conf(4), format of the inetd control file.
-inetd(1M), how to invoke tcpd from inetd using the libwrap library.
-inetadm(1M), managing inetd services in the Service Management Framework.
-
-.SH AUTHORS
-.nf
-Wietse Venema (wietse@wzv.win.tue.nl)
-Department of Mathematics and Computing Science
-Eindhoven University of Technology
-Den Dolech 2, P.O. Box 513
-5600 MB Eindhoven, The Netherlands
-.fi
-.\" @(#) tcpdchk.8 1.3 95/01/08 17:00:30
-.\" Begin Sun update
-.SH ATTRIBUTES
-See
-.BR attributes (5)
-for descriptions of the following attributes:
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-=
-Interface Stability Committed
-.TE
-.\" End Sun update
diff --git a/usr/src/man/man1m/tcpdmatch.1m b/usr/src/man/man1m/tcpdmatch.1m
deleted file mode 100644
index a2081b3ef5..0000000000
--- a/usr/src/man/man1m/tcpdmatch.1m
+++ /dev/null
@@ -1,115 +0,0 @@
-'\" t
-.\"
-.\" Modified for Solaris to to add the Solaris stability classification,
-.\" and to add a note about source availability.
-.\"
-.TH TCPDMATCH 1M "Sep 15, 2011"
-.SH NAME
-tcpdmatch \- tcp wrapper oracle
-.SH SYNOPSYS
-tcpdmatch [-d] [-i inet_conf] daemon client
-.sp
-tcpdmatch [-d] [-i inet_conf] daemon[@server] [user@]client
-.SH DESCRIPTION
-.PP
-\fItcpdmatch\fR predicts how the tcp wrapper would handle a specific
-request for service. Examples are given below.
-.PP
-The program examines the \fItcpd\fR access control tables (default
-\fI/etc/hosts.allow\fR and \fI/etc/hosts.deny\fR) and prints its
-conclusion. For maximal accuracy, it extracts additional information
-from your \fIinetd\fR network configuration file.
-.PP
-When \fItcpdmatch\fR finds a match in the access control tables, it
-identifies the matched rule. In addition, it displays the optional
-shell commands or options in a pretty-printed format; this makes it
-easier for you to spot any discrepancies between what you want and what
-the program understands.
-.SH ARGUMENTS
-The following two arguments are always required:
-.IP daemon
-A daemon process name. Typically, the last component of a daemon
-executable pathname.
-.IP client
-A host name or network address, or one of the `unknown' or `paranoid'
-wildcard patterns.
-.sp
-When a client host name is specified, \fItcpdmatch\fR gives a
-prediction for each address listed for that client.
-.sp
-When a client address is specified, \fItcpdmatch\fR predicts what
-\fItcpd\fR would do when client name lookup fails.
-.PP
-Optional information specified with the \fIdaemon@server\fR form:
-.IP server
-A host name or network address, or one of the `unknown' or `paranoid'
-wildcard patterns. The default server name is `unknown'.
-.PP
-Optional information specified with the \fIuser@client\fR form:
-.IP user
-A client user identifier. Typically, a login name or a numeric userid.
-The default user name is `unknown'.
-.SH OPTIONS
-.IP -d
-Examine \fIhosts.allow\fR and \fIhosts.deny\fR files in the current
-directory instead of the default ones.
-.IP "-i inet_conf"
-Specify this option when \fItcpdmatch\fR is unable to find your
-\fIinetd.conf\fR network configuration file, or when
-you suspect that the program uses the wrong one.
-.SH EXAMPLES
-To predict how \fItcpd\fR would handle a telnet request from the local
-system:
-.sp
-tcpdmatch in.telnetd localhost
-.PP
-The same request, pretending that hostname lookup failed:
-.sp
-tcpdmatch in.telnetd 127.0.0.1
-.PP
-To predict what tcpd would do when the client name does not match the
-client address:
-.sp
-tcpdmatch in.telnetd paranoid
-.PP
-On some systems, daemon names have no `in.' prefix, or \fItcpdmatch\fR
-may need some help to locate the inetd configuration file.
-.SH FILES
-.PP
-The default locations of the \fItcpd\fR access control tables are:
-.PP
-/etc/hosts.allow
-.br
-/etc/hosts.deny
-.SH SEE ALSO
-.nf
-tcpdchk(1M), tcpd configuration checker
-hosts_access(4), format of the tcpd access control tables.
-hosts_options(4), format of the language extensions.
-inetd.conf(4), format of the inetd control file.
-inetd(1M), how to invoke tcpd from inetd using the libwrap library.
-inetadm(1M), managing inetd services in the Service Management Framework.
-
-.SH AUTHORS
-.nf
-Wietse Venema (wietse@wzv.win.tue.nl)
-Department of Mathematics and Computing Science
-Eindhoven University of Technology
-Den Dolech 2, P.O. Box 513
-5600 MB Eindhoven, The Netherlands
-.\" @(#) tcpdmatch.8 1.5 96/02/11 17:01:35
-.\" Begin Sun update
-.SH ATTRIBUTES
-See
-.BR attributes (5)
-for descriptions of the following attributes:
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-=
-Interface Stability Committed
-.TE
-.\" End Sun update
diff --git a/usr/src/man/man1m/th_define.1m b/usr/src/man/man1m/th_define.1m
deleted file mode 100644
index 9d47e1a662..0000000000
--- a/usr/src/man/man1m/th_define.1m
+++ /dev/null
@@ -1,950 +0,0 @@
-'\" te
-.\" Copyright (c) 2001 Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH TH_DEFINE 1M "April 9, 2016"
-.SH NAME
-th_define \- create fault injection test harness error specifications
-.SH SYNOPSIS
-.LP
-.nf
-\fBth_define\fR [\fB-n\fR \fIname\fR \fB-i\fR \fIinstance\fR| \fB-P\fR \fIpath\fR] [\fB-a\fR \fIacc_types\fR]
- [\fB-r\fR \fIreg_number\fR] [\fB-l\fR \fIoffset\fR [\fIlength\fR]]
- [\fB-c\fR \fIcount\fR [\fIfailcount\fR]] [\fB-o\fR \fIoperator\fR [\fIoperand\fR]]
- [\fB-f\fR \fIacc_chk\fR] [\fB-w\fR \fImax_wait_period\fR [\fIreport_interval\fR]]
-.fi
-
-.LP
-.nf
-\fBor\fR
-.fi
-
-.LP
-.nf
-\fBth_define\fR [\fB-n\fR \fIname\fR \fB-i\fR \fIinstance\fR| \fB-P\fR \fIpath\fR]
- [\fB-a\fR log [\fIacc_types\fR] [\fB-r\fR \fIreg_number\fR] [\fB-l\fR \fIoffset\fR [\fIlength\fR]]]
- [\fB-c\fR \fIcount\fR [\fIfailcount\fR]] [\fB-s\fR \fIcollect_time\fR] [\fB-p\fR \fIpolicy\fR]
- [\fB-x\fR \fIflags\fR] [\fB-C\fR \fIcomment_string\fR]
- [\fB-e\fR \fIfixup_script\fR [\fIargs\fR]]
-.fi
-
-.LP
-.nf
-\fBor\fR
-.fi
-
-.LP
-.nf
-\fBth_define\fR [\fB-h\fR]
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBth_define\fR utility provides an interface to the \fBbus_ops\fR fault
-injection \fBbofi\fR device driver for defining error injection specifications
-(referred to as errdefs). An errdef corresponds to a specification of how to
-corrupt a device driver's accesses to its hardware. The command line arguments
-determine the precise nature of the fault to be injected. If the supplied
-arguments define a consistent errdef, the \fBth_define\fR process will store
-the errdef with the \fBbofi\fR driver and suspend itself until the criteria
-given by the errdef become satisfied (in practice, this will occur when the
-access counts go to zero).
-.sp
-.LP
-You use the \fBth_manage\fR(1M) command with the \fBstart\fR option to activate
-the resulting errdef. The effect of \fBth_manage\fR with the \fBstart\fR option
-is that the \fBbofi\fR driver acts upon the errdef by matching the number of
-hardware accesses\(emspecified in \fIcount\fR, that are of the type specified
-in \fIacc_types\fR, made by instance number \fIinstance\fR\(emof the driver
-whose name is \fIname\fR, (or by the driver instance specified by \fIpath\fR)
-to the register set (or DMA handle) specified by \fIreg_number\fR, that lie
-within the range \fIoffset\fR to \fIoffset\fR +\fI length\fR from the beginning
-of the register set or DMA handle. It then applies \fIoperator\fR and
-\fIoperand\fR to the next \fIfailcount\fR matching accesses.
-.sp
-.LP
-If \fIacc_types\fR includes \fBlog\fR, \fBth_define\fR runs in automatic test
-script generation mode, and a set of test scripts (written in the Korn shell)
-is created and placed in a sub-directory of the current directory with the name
-\fB\fI<driver>\fR\&.test.\fI<id>\fR\fR (for example, \fBglm.test.978177106\fR).
-A separate, executable script is generated for each access handle that matches
-the logging criteria. The log of accesses is placed at the top of each script
-as a record of the session. If the current directory is not writable, file
-output is written to standard output. The base name of each test file is the
-driver name, and the extension is a number that discriminates between different
-access handles. A control script (with the same name as the created test
-directory) is generated that will run all the test scripts sequentially.
-.sp
-.LP
-Executing the scripts will install, and then activate, the resulting error
-definitions. Error definitions are activated sequentially and the driver
-instance under test is taken offline and brought back online before each test
-(refer to the \fB-e\fR option for more information). By default, logging
-applies to all \fBPIO\fR accesses, all interrupts, and all DMA accesses to and
-from areas mapped for both reading and writing. You can constrain logging by
-specifying additional \fIacc_types\fR, \fIreg_number\fR, \fIoffset\fR and
-\fIlength\fR. Logging will continue for \fIcount\fR matching accesses, with an
-optional time limit of \fIcollect_time\fR seconds.
-.sp
-.LP
-Either the \fB-n\fR or \fB-P\fR option must be provided. The other options are
-optional. If an option (other than \fB-a\fR) is specified multiple times, only
-the final value for the option is used. If an option is not specified, its
-associated value is set to an appropriate default, which will provide maximal
-error coverage as described below.
-.SH OPTIONS
-.LP
-The following options are available:
-.sp
-.ne 2
-.na
-\fB\fB-n\fR \fIname\fR \fR
-.ad
-.sp .6
-.RS 4n
-Specify the name of the driver to test. (String)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-i\fR\fI instance\fR \fR
-.ad
-.sp .6
-.RS 4n
-Test only the specified driver instance (-1 matches all instances of driver).
-(Numeric)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-P\fR\fI path\fR \fR
-.ad
-.sp .6
-.RS 4n
-Specify the full device path of the driver to test. (String)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-r\fR \fIreg_number\fR \fR
-.ad
-.sp .6
-.RS 4n
-Test only the given register set or DMA handle (-1 matches all register sets
-and DMA handles). (Numeric)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-a\fR\fI acc_types\fR \fR
-.ad
-.sp .6
-.RS 4n
-Only the specified access types will be matched. Valid values for the
-\fIacc_types\fR argument are \fBlog\fR, \fBpio\fR, \fBpio_r\fR, \fBpio_w\fR,
-\fBdma\fR, \fBdma_r\fR, \fBdma_w\fR and \fBintr\fR. Multiple access types,
-separated by spaces, can be specified. The default is to match all hardware
-accesses.
-.sp
-If \fIacc_types\fR is set to \fBlog\fR, logging will match all \fBPIO\fR
-accesses, interrupts and DMA accesses to and from areas mapped for both reading
-and writing. \fBlog\fR can be combined with other \fIacc_types\fR, in which
-case the matching condition for logging will be restricted to the specified
-additional \fIacc_types\fR. Note that \fBdma_r\fR will match only DMA handles
-mapped for reading only; \fBdma_w\fR will match only DMA handles mapped for
-writing only; \fBdma\fR will match only DMA handles mapped for both reading and
-writing.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR \fIoffset \fR\fB[\fR\fIlength\fR\fB]\fR\fR
-.ad
-.sp .6
-.RS 4n
-Constrain the range of qualifying accesses. The \fIoffset\fR and \fIlength\fR
-arguments indicate that any access of the type specified with the \fB-a\fR
-option, to the register set or DMA handle specified with the \fB-r\fR option,
-lie at least \fIoffset\fR bytes into the register set or DMA handle and at most
-\fIoffset\fR + \fIlength\fR bytes into it. The default for \fIoffset\fR is 0.
-The default for \fIlength\fR is the maximum value that can be placed in an
-\fBoffset_t\fR C data type (see \fBtypes.h\fR). Negative values are converted
-into unsigned quantities. Thus, \fB\fR\fBth_define\fR\fB \fR\fB-l\fR 0 \fB-1\fR
-is maximal.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-c\fR \fIcount\fR\fB[\fR\fIfailcount\fR\fB]\fR \fR
-.ad
-.sp .6
-.RS 4n
-Wait for \fIcount\fR number of matching accesses, then apply an operator and
-operand (see the \fB-o\fR option) to the next \fIfailcount\fR number of
-matching accesses. If the access type (see the \fB-a\fR option) includes
-logging, the number of logged accesses is given by \fIcount\fR +
-\fIfailcount\fR - 1. The -1 is required because the last access coincides with
-the first faulting access.
-.sp
-Note that access logging may be combined with error injection if
-\fIfailcount\fR and \fIoperator\fR are nonzero and if the access type includes
-logging and any of the other access types (\fBpio\fR, \fBdma\fR and \fBintr\fR)
-See the description of access types in the definition of the \fB-a\fR option,
-above.
-.sp
-When the \fIcount\fR and \fIfailcount\fR fields reach zero, the status of the
-errdef is reported to standard output. When all active errdefs created by the
-\fBth_define\fR process complete, the process exits. If \fIacc_types\fR
-includes \fBlog\fR, \fIcount\fR determines how many accesses to log. If
-\fIcount\fR is not specified, a default value is used. If \fIfailcount\fR is
-set in this mode, it will simply increase the number of accesses logged by a
-further \fIfailcount\fR - 1.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-o\fR\fI operator \fR\fB[\fR\fIoperand\fR\fB]\fR \fR
-.ad
-.sp .6
-.RS 4n
-For qualifying PIO read and write accesses, the value read from or written to
-the hardware is corrupted according to the value of \fIoperator\fR:
-.sp
-.ne 2
-.na
-\fB\fBEQ\fR\fR
-.ad
-.RS 7n
-\fIoperand\fR is returned to the driver.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBOR\fR\fR
-.ad
-.RS 7n
-\fIoperand\fR is bitwise ORed with the real value.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBAND\fR\fR
-.ad
-.RS 7n
-\fIoperand\fR is bitwise ANDed with the real value.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBXOR\fR\fR
-.ad
-.RS 7n
-\fIoperand\fR is bitwise XORed with the real value.
-.RE
-
-For PIO write accesses, the following operator is allowed:
-.sp
-.ne 2
-.na
-\fB\fBNO\fR\fR
-.ad
-.RS 6n
-Simply ignore the driver's attempt to write to the hardware.
-.RE
-
-Note that a driver performs PIO via the \fBddi_get\fIX\fR()\fR,
-\fBddi_put\fIX\fR()\fR, \fBddi_rep_get\fIX\fR()\fR and
-\fBddi_rep_put\fIX\fR()\fR routines (where \fIX\fR is 8, 16, 32 or 64).
-Accesses made using \fBddi_get\fIX\fR()\fR and \fBddi_put\fIX\fR()\fR are
-treated as a single access, whereas an access made using the
-\fBddi_rep_*\fR(9F) routines are broken down into their respective number of
-accesses, as given by the \fIrepcount\fR parameter to these DDI calls. If the
-access is performed via a DMA handle, \fIoperator\fR and \fIvalue\fR are
-applied to every access that comprises the DMA request. If interference with
-interrupts has been requested then the operator may take any of the following
-values:
-.sp
-.ne 2
-.na
-\fB\fBDELAY\fR\fR
-.ad
-.RS 9n
-After \fIcount\fR accesses (see the \fB-c\fR option), delay delivery of the
-next \fIfailcount\fR number of interrupts for \fIoperand\fR number of
-microseconds.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBLOSE\fR\fR
-.ad
-.RS 9n
-After \fIcount\fR number of interrupts, fail to deliver the next
-\fIfailcount\fR number of real interrupts to the driver.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEXTRA\fR\fR
-.ad
-.RS 9n
-After \fIcount\fR number of interrupts, start delivering \fIoperand\fR number
-of extra interrupts for the next \fIfailcount\fR number of real interrupts.
-.RE
-
-The default value for \fIoperand\fR and \fIoperator\fR is to corrupt the data
-access by flipping each bit (XOR with -1).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR \fIacc_chk\fR\fR
-.ad
-.sp .6
-.RS 4n
-If the \fIacc_chk\fR parameter is set to 1 or \fBpio\fR, then the driver's
-calls to \fBddi_check_acc_handle\fR(9F) return \fBDDI_FAILURE\fR when the
-access count goes to 1. If the \fIacc_chk\fR parameter is set to 2 or
-\fBdma\fR, then the driver's calls to \fBddi_check_dma_handle\fR(9F) return
-\fBDDI_FAILURE\fR when the access count goes to 1.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-w\fR \fImax_wait_period\fR\fB [\fR\fIreport_interval\fR\fB]\fR \fR
-.ad
-.sp .6
-.RS 4n
-Constrain the period for which an error definition will remain active. The
-option applies only to non-logging errdefs. If an error definition remains
-active for \fImax_wait_period\fR seconds, the test will be aborted. If
-\fIreport_interval\fR is set to a nonzero value, the current status of the
-error definition is reported to standard output every \fIreport_interval\fR
-seconds. The default value is zero. The status of the errdef is reported in
-parsable format (eight fields, each separated by a colon (\fB:\fR) character,
-the last of which is a string enclosed by double quotes and the remaining seven
-fields are integers):
-.sp
-\fIft\fR:\fImt\fR:\fIac\fR:\fIfc\fR:\fIchk\fR:\fIec\fR:\fIs\fR:\fI"message"\fR
-which are defined as follows:
-.sp
-.ne 2
-.na
-\fB\fIft\fR\fR
-.ad
-.RS 13n
-The UTC time when the fault was injected.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fImt\fR\fR
-.ad
-.RS 13n
-The UTC time when the driver reported the fault.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIac\fR\fR
-.ad
-.RS 13n
-The number of remaining non-faulting accesses.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIfc\fR\fR
-.ad
-.RS 13n
-The number of remaining faulting accesses.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIchk\fR\fR
-.ad
-.RS 13n
-The value of the \fIacc_chk\fR field of the errdef.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIec\fR\fR
-.ad
-.RS 13n
-The number of fault reports issued by the driver against this errdef (\fImt\fR
-holds the time of the initial report).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIs\fR\fR
-.ad
-.RS 13n
-The severity level reported by the driver.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fI"message"\fR\fR
-.ad
-.RS 13n
-Textual reason why the driver has reported a fault.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-h\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display the command usage string.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR \fIcollect_time\fR \fR
-.ad
-.sp .6
-.RS 4n
-If \fIacc_types\fR is given with the \fB-a\fR option and includes \fBlog\fR,
-the errdef will log accesses for \fIcollect_time\fR seconds (the default is to
-log until the log becomes full). Note that, if the errdef specification matches
-multiple driver handles, multiple logging errdefs are registered with the
-\fBbofi\fR driver and logging terminates when all logs become full or when
-\fIcollect_time\fR expires or when the associated errdefs are cleared. The
-current state of the log can be checked with the \fBth_manage\fR(1M) command,
-using the \fBbroadcast\fR parameter. A log can be terminated by running
-\fBth_manage\fR(1M) with the \fBclear_errdefs\fR option or by sending a
-\fBSIGALRM\fR signal to the \fBth_define\fR process. See \fBalarm\fR(2) for the
-semantics of \fBSIGALRM\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR \fIpolicy\fR\fR
-.ad
-.sp .6
-.RS 4n
-Applicable when the \fIacc_types\fR option includes \fBlog\fR. The parameter
-modifies the policy used for converting from logged accesses to errdefs. All
-policies are inclusive:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Use \fBrare\fR to bias error definitions toward rare accesses (default).
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Use \fBoperator\fR to produce a separate error definition for each operator
-type (default).
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Use \fBcommon\fR to bias error definitions toward common accesses.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Use \fBmedian\fR to bias error definitions toward median accesses.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Use \fBmaximal\fR to produce multiple error definitions for duplicate accesses.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Use \fBunbiased\fR to create unbiased error definitions.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Use \fBonebyte\fR, \fBtwobyte\fR, \fBfourbyte\fR, or \fBeightbyte\fR to select
-errdefs corresponding to 1, 2, 4 or 8 byte accesses (if chosen, the
-\fB-x\fR\fBr\fR option is enforced in order to ensure that \fBddi_rep_*()\fR
-calls are decomposed into \fBmultiple single accesses\fR).
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Use \fBmultibyte\fR to create error definitions for multibyte accesses
-performed using \fBddi_rep_get*()\fR and \fBddi_rep_put*()\fR.
-.RE
-Policies can be combined by adding together these options. See the NOTES
-section for further information.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-x\fR \fIflags\fR\fR
-.ad
-.sp .6
-.RS 4n
-Applicable when the \fIacc_types\fR option includes \fBlog\fR. The \fIflags\fR
-parameter modifies the way in which the \fBbofi\fR driver logs accesses. It is
-specified as a string containing any combination of the following letters:
-.sp
-.ne 2
-.na
-\fB\fBw\fR\fR
-.ad
-.RS 5n
-Continuous logging (that is, the log will wrap when full).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBt\fR\fR
-.ad
-.RS 5n
-Timestamp each log entry (access times are in seconds).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBr\fR\fR
-.ad
-.RS 5n
-Log repeated I/O as individual accesses (for example, a \fBddi_rep_get16\fR(9F)
-call which has a repcount of \fIN\fR is logged \fIN\fR times with each
-transaction logged as size 2 bytes. Without this option, the default logging
-behavior is to log this access once only, with a transaction size of twice the
-\fIrepcount\fR).
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-C\fR \fIcomment_string\fR\fR
-.ad
-.sp .6
-.RS 4n
-Applicable when the \fIacc_types\fR option includes \fBlog\fR. It provides a
-comment string to be placed in any generated test scripts. The string must be
-enclosed in double quotes.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-e\fR \fIfixup_script\fR \fB[\fR\fIargs\fR\fB]\fR \fR
-.ad
-.sp .6
-.RS 4n
-Applicable when the \fIacc_types\fR option includes \fBlog\fR. The output of a
-logging errdefs is to generate a test script for each driver access handle. Use
-this option to embed a command in the resulting script before the errors are
-injected. The generated test scripts will take an instance offline and bring it
-back online before injecting errors in order to bring the instance into a known
-fault-free state. The executable \fIfixup_script\fR will be called twice with
-the set of optional \fIargs\fR\(em once just before the instance is taken
-offline and again after the instance has been brought online. The following
-variables are passed into the environment of the called executable:
-.sp
-.ne 2
-.na
-\fB\fBDRIVER_PATH\fR\fR
-.ad
-.RS 22n
-Identifies the device path of the instance.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBDRIVER_INSTANCE\fR\fR
-.ad
-.RS 22n
-Identifies the instance number of the device.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBDRIVER_UNCONFIGURE\fR\fR
-.ad
-.RS 22n
-Has the value 1 when the instance is about to be taken offline.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBDRIVER_CONFIGURE\fR\fR
-.ad
-.RS 22n
-Has the value 1 when the instance has just been brought online.
-.RE
-
-Typically, the executable ensures that the device under test is in a suitable
-state to be taken offline (unconfigured) or in a suitable state for error
-injection (for example configured, error free and servicing a workload). A
-minimal script for a network driver could be:
-.sp
-.in +2
-.nf
-#!/bin/ksh
-
-driver=xyznetdriver
-ifnum=$driver$DRIVER_INSTANCE
-
-if [[ $DRIVER_CONFIGURE = 1 ]]; then
- ifconfig $ifnum plumb
- ifconfig $ifnum ...
- ifworkload start $ifnum
-elif [[ $DRIVER_UNCONFIGURE = 1 ]]; then
- ifworkload stop $ifnum
- ifconfig $ifnum down
- ifconfig $ifnum unplumb
-fi
-exit $?
-.fi
-.in -2
-.sp
-
-The \fB-e\fR option must be the last option on the command line.
-.RE
-
-.sp
-.LP
-If the \fB-a\fR \fBlog\fR option is selected but the \fB-e\fR option is not
-given, a default script is used. This script repeatedly attempts to detach and
-then re-attach the device instance under test.
-.SH EXAMPLES
-.SS "Examples of Error Definitions"
-.LP
-\fBth_define -n foo -i 1 -a log\fR
-.sp
-.LP
-Logs all accesses to all handles used by instance 1 of the \fBfoo\fR driver
-while running the default workload (attaching and detaching the instance). Then
-generates a set of test scripts to inject appropriate errdefs while running
-that default workload.
-.sp
-.LP
-\fBth_define -n foo -i 1 -a log pio\fR
-.sp
-.LP
-Logs PIO accesses to each PIO handle used by instance 1 of the \fBfoo\fR driver
-while running the default workload (attaching and detaching the instance). Then
-generates a set of test scripts to inject appropriate errdefs while running
-that default workload.
-.sp
-.LP
-\fBth_define -n foo -i 1 -p onebyte median -e fixup arg -now\fR
-.sp
-.LP
-Logs all accesses to all handles used by instance 1 of the \fBfoo\fR driver
-while running the workload defined in the fixup script \fBfixup\fR with
-arguments \fBarg\fR and \fB-now\fR. Then generates a set of test scripts to
-inject appropriate errdefs while running that workload. The resulting error
-definitions are requested to focus upon single byte accesses to locations that
-are accessed a \fBmedian\fR number of times with respect to frequency of access
-to I/O addresses.
-.sp
-.LP
-\fBth_define -n se -l 0x20 1 -a pio_r -o OR 0x4 -c 10 1000\fR
-.sp
-.LP
-Simulates a stuck serial chip command by forcing 1000 consecutive read accesses
-made by any instance of the \fBse\fR driver to its command status register,
-thereby returning status busy.
-.sp
-.LP
-\fBth_define -n foo -i 3 -r 1 -a pio_r -c 0 1 -f 1 -o OR 0x100\fR
-.sp
-.LP
-Causes 0x100 to be ORed into the next physical I/O read access from any
-register in register set 1 of instance 3 of the \fBfoo\fR driver. Subsequent
-calls in the driver to \fBddi_check_acc_handle()\fR return \fBDDI_FAILURE\fR.
-.sp
-.LP
-\fBth_define -n foo -i 3 -r 1 -a pio_r -c 0 1 -o OR 0x0\fR
-.sp
-.LP
-Causes 0x0 to be ORed into the next physical I/O read access from any register
-in register set 1 of instance 3 of the \fBfoo\fR driver. This is of course a
-no-op.
-.sp
-.LP
-\fBth_define -n foo -i 3 -r 1 -l 0x8100 1 -a pio_r -c 0 10 -o EQ 0x70003\fR
-.sp
-.LP
-Causes the next ten next physical I/O reads from the register at offset 0x8100
-in register set 1 of instance 3 of the \fBfoo\fR driver to return 0x70003.
-.sp
-.LP
-\fBth_define -n foo -i 3 -r 1 -l 0x8100 1 -a pio_w -c 100 3 -o AND
-0xffffffffffffefff\fR
-.sp
-.LP
-The next 100 physical I/O writes to the register at offset 0x8100 in register
-set 1 of instance 3 of the \fBfoo\fR driver take place as normal. However, on
-each of the three subsequent accesses, the 0x1000 bit will be cleared.
-.sp
-.LP
-\fBth_define -n foo -i 3 -r 1 -l 0x8100 0x10 -a pio_r -c 0 1 -f 1 -o XOR 7\fR
-.sp
-.LP
-Causes the bottom three bits to have their values toggled for the next physical
-I/O read access to registers with offsets in the range 0x8100 to 0x8110 in
-register set 1 of instance 3 of the \fBfoo\fR driver. Subsequent calls in the
-driver to \fBddi_check_acc_handle()\fR return \fBDDI_FAILURE\fR.
-.sp
-.LP
-\fBth_define -n foo -i 3 -a pio_w -c 0 1 -o NO 0\fR
-.sp
-.LP
-Prevents the next physical I/O write access to any register in any register set
-of instance 3 of the \fBfoo\fR driver from going out on the bus.
-.sp
-.LP
-\fBth_define -n foo -i 3 -l 0 8192 -a dma_r -c 0 1 -o OR 7\fR
-.sp
-.LP
-Causes 0x7 to be ORed into each \fBlong long\fR in the first 8192 bytes of the
-next DMA read, using any DMA handle for instance 3 of the \fBfoo\fR driver.
-.sp
-.LP
-\fBth_define -n foo -i 3 -r 2 -l 0 8 -a dma_r -c 0 1 -o OR
-0x7070707070707070\fR
-.sp
-.LP
-Causes 0x70 to be ORed into each byte of the first \fBlong long\fR of the next
-DMA read, using the DMA handle with sequential allocation number 2 for instance
-3 of the \fBfoo\fR driver.
-.sp
-.LP
-\fBth_define -n foo -i 3 -l 256 256 -a dma_w -c 0 1 -f 2 -o OR 7\fR
-.sp
-.LP
-Causes 0x7 to be ORed into each \fBlong long\fR in the range from offset 256 to
-offset 512 of the next DMA write, using any DMA handle for instance 3 of the
-\fBfoo\fR driver. Subsequent calls in the driver to
-\fBddi_check_dma_handle()\fR return \fBDDI_FAILURE\fR.
-.sp
-.LP
-\fBth_define -n foo -i 3 -r 0 -l 0 8 -a dma_w -c 100 3 -o AND
-0xffffffffffffefff\fR
-.sp
-.LP
-The next 100 DMA writes using the DMA handle with sequential allocation number
-0 for instance 3 of the \fBfoo\fR driver take place as normal. However, on each
-of the three subsequent accesses, the 0x1000 bit will be cleared in the first
-\fBlong long\fR of the transfer.
-.sp
-.LP
-\fBth_define -n foo -i 3 -a intr -c 0 6 -o LOSE 0\fR
-.sp
-.LP
-Causes the next six interrupts for instance 3 of the \fBfoo\fR driver to be
-lost.
-.sp
-.LP
-\fBth_define -n foo -i 3 -a intr -c 30 1 -o EXTRA 10\fR
-.sp
-.LP
-When the thirty-first subsequent interrupt for instance 3 of the \fBfoo\fR
-driver occurs, a further ten interrupts are also generated.
-.sp
-.LP
-\fBth_define -n foo -i 3 -a intr -c 0 1 -o DELAY 1024\fR
-.sp
-.LP
-Causes the next interrupt for instance 3 of the \fBfoo\fR driver to be delayed
-by 1024 microseconds.
-.SH NOTES
-.LP
-The policy option in the \fBth_define\fR \fB-p\fR syntax determines how a set
-of logged accesses will be converted into the set of error definitions. Each
-logged access will be matched against the chosen policies to determine whether
-an error definition should be created based on the access.
-.sp
-.LP
-Any number of policy options can be combined to modify the generated error
-definitions.
-.SS "Bytewise Policies"
-.LP
-These select particular I/O transfer sizes. Specifying a byte policy will
-exclude other byte policies that have not been chosen. If none of the byte type
-policies is selected, all transfer sizes are treated equally. Otherwise, only
-those specified transfer sizes will be selected.
-.sp
-.ne 2
-.na
-\fB\fBonebyte\fR\fR
-.ad
-.RS 13n
-Create errdefs for one byte accesses (\fBddi_get8()\fR)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBtwobyte\fR\fR
-.ad
-.RS 13n
-Create errdefs for two byte accesses (\fBddi_get16()\fR)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfourbyte\fR\fR
-.ad
-.RS 13n
-Create errdefs for four byte accesses (\fBddi_get32()\fR)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBeightbyte\fR\fR
-.ad
-.RS 13n
-Create errdefs for eight byte accesses (\fBddi_get64()\fR)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmultibyte\fR\fR
-.ad
-.RS 13n
-Create errdefs for repeated byte accesses (\fBddi_rep_get*()\fR)
-.RE
-
-.SS "Frequency of Access Policies"
-.LP
-The frequency of access to a location is determined according to the access
-type, location and transfer size (for example, a two-byte read access to
-address A is considered distinct from a four-byte read access to address A).
-The algorithm is to count the number of accesses (of a given type and size) to
-a given location, and find the locations that were most and least accessed (let
-\fImaxa\fR and \fImina\fR be the number of times these locations were accessed,
-and \fImean\fR the total number of accesses divided by total number of
-locations that were accessed). Then a rare access is a location that was
-accessed less than
-.sp
-.LP
-\fI(mean - mina) / 3 + mina\fR
-.sp
-.LP
-times. Similarly for the definition of common accesses:
-.sp
-.LP
-\fImaxa - (maxa - mean) / 3\fR
-.sp
-.LP
-A location whose access patterns lies within these cutoffs is regarded as a
-location that is accessed with median frequency.
-.sp
-.ne 2
-.na
-\fB\fBrare\fR\fR
-.ad
-.RS 10n
-Create errdefs for locations that are rarely accessed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcommon\fR\fR
-.ad
-.RS 10n
-Create errdefs for locations that are commonly accessed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmedian\fR\fR
-.ad
-.RS 10n
-Create errdefs for locations that are accessed a median frequency.
-.RE
-
-.SS "Policies for Minimizing errdefs"
-.LP
-If a transaction is duplicated, either a single or multiple errdefs will be
-written to the test scripts, depending upon the following two policies:
-.sp
-.ne 2
-.na
-\fB\fBmaximal\fR\fR
-.ad
-.RS 13n
-Create multiple errdefs for locations that are repeatedly accessed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBunbiased\fR\fR
-.ad
-.RS 13n
-Create a single errdef for locations that are repeatedly accessed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBoperators\fR\fR
-.ad
-.RS 13n
-For each location, a default operator and operand is typically applied. For
-maximal test coverage, this default may be modified using the \fBoperators\fR
-policy so that a separate errdef is created for each of the possible corruption
-operators.
-.RE
-
-.SH SEE ALSO
-.LP
-\fBkill\fR(1), \fBth_manage\fR(1M), \fBalarm\fR(2),
-\fBddi_check_acc_handle\fR(9F), \fBddi_check_dma_handle\fR(9F)
diff --git a/usr/src/man/man1m/th_manage.1m b/usr/src/man/man1m/th_manage.1m
deleted file mode 100644
index 06b7dfa024..0000000000
--- a/usr/src/man/man1m/th_manage.1m
+++ /dev/null
@@ -1,157 +0,0 @@
-'\" te
-.\" Copyright (c) 2001 Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH TH_MANAGE 1M "Jan 4, 2001"
-.SH NAME
-th_manage \- manage the fault injection test harness
-.SH SYNOPSIS
-.LP
-.nf
-\fBth_manage\fR \fIname\fR \fIinstance\fR \fIcommand\fR
-.fi
-
-.LP
-.nf
-\fBth_manage\fR \fIpath\fR \fIcommand\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBth_manage\fR applies the action specified by \fIcommand\fR to the instance
-specified by \fIinstance\fR of the driver specified by \fIname\fR (or the
-driver instance specified by \fIpath\fR). The driver instance must be running
-fault injection specifications (errdefs) defined by \fBth_define\fR(1M).
-.sp
-.LP
-\fBth_manage\fR supports several commands that operate on the driver instance
-specified by \fIname\fR and \fIinstance\fR (or \fIpath\fR). The commands are:
-.sp
-.ne 2
-.na
-\fB\fBbroadcast\fR \fR
-.ad
-.RS 18n
-Awaken all \fBth_define\fR processes, causing them to display their current
-status and exit if the errdef is now defunct (that is, if \fIcount\fR,
-\fIfailcount\fR, and \fIacc_chk \fR are all zero).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBclear_acc_chk\fR \fR
-.ad
-.RS 18n
-Awaken all \fBth_define\fR processes. If \fIcount\fR and \fIfailcount\fR are
-already zero, then set \fIacc_chk\fR to zero, so that \fBth_define\fR exits
-once it has displayed its status.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBclear_errdefs\fR \fR
-.ad
-.RS 18n
-Awaken all \fBth_define\fR \fBprocesses\fR. \fIcount\fR, \fIfailcount\fR and
-\fIacc_chk\fR are all set to zero so that all \fBth_define\fR commands exit
-once they have displayed their status.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBclear_errors\fR \fR
-.ad
-.RS 18n
-Awaken all \fBth_define\fR processes. If \fIcount\fR is already zero, set
-\fIfailcount\fR and \fIacc_chk\fR to zero, so that \fBth_define\fR exits once
-it has displayed its status.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBget_handles\fR \fR
-.ad
-.RS 18n
-List all the access handles.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBstart\fR \fR
-.ad
-.RS 18n
-Begin or resume execution of all errdefs.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBstop\fR \fR
-.ad
-.RS 18n
-Suspend all errdefs for this \fIname\fR and \fIinstance\fR (or \fIpath).\fR
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRUseful Commands
-.sp
-.LP
-To begin the tests, enter:
-
-.sp
-.LP
-\fB#\fR \fBth_manage\fR \fBfoo\fR \fB0\fR \fBstart\fR
-
-.sp
-.LP
-To check the status of the errdefs, enter:
-
-.sp
-.LP
-\fB#\fR \fBth_manage\fR \fBfoo\fR \fB0\fR \fBbroadcast\fR
-
-.sp
-.LP
-This causes each \fBth_define\fR process to print out its current status.
-
-.sp
-.LP
-If the driver has reported a fatal error, you can take the driver offline using
-\fBlibdevice\fR, clear the error condition by entering:
-
-.sp
-.LP
-\fB#\fR \fBth_manage\fR \fBfoo\fR \fB0\fR \fBclear_acc_chk\fR
-
-.sp
-.LP
-or
-
-.sp
-.LP
-\fB#\fR \fBth_manage\fR \fBfoo\fR \fB0\fR \fBclear_errors\fR
-
-.sp
-.LP
-and bring the driver online again using \fBlibdevice\fR.
-
-.sp
-.LP
-To terminate testing, enter:
-
-.sp
-.LP
-\fB#\fR \fBth_manage\fR \fBfoo\fR \fB0\fR \fBclear_errdefs\fR
-
-.SH SEE ALSO
-.sp
-.LP
-\fBth_define\fR(1M)
diff --git a/usr/src/man/man1m/tic.1m b/usr/src/man/man1m/tic.1m
deleted file mode 100644
index 7a5960e2ab..0000000000
--- a/usr/src/man/man1m/tic.1m
+++ /dev/null
@@ -1,114 +0,0 @@
-'\" te
-.\" Copyright (c) 1996, Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 1989 AT&T
-.\" Copyright 2011 Nexenta Systems, Inc. All rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH TIC 1M "Jun 25, 2011"
-.SH NAME
-tic \- terminfo compiler
-.SH SYNOPSIS
-.LP
-.nf
-\fBtic\fR [\fB-v\fR [\fIn\fR]] [\fB-c\fR] \fIfile\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The command \fBtic\fR translates a \fBterminfo\fR file from the source format
-into the compiled format. The results are placed in the directory
-\fB/usr/share/lib/terminfo\fR. The compiled format is necessary for use with
-the library routines in \fBcurses\fR(3CURSES).
-.sp
-.LP
-If the environment variable \fBTERMINFO\fR is set, the compiled results are
-placed there instead of \fB/usr/share/lib/terminfo\fR.
-.sp
-.LP
-Total compiled entries cannot exceed 4096 bytes. The name field cannot exceed
-128 bytes.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-c\fR\fR
-.ad
-.RS 9n
-Specifies to check only \fBfile\fR for errors. Errors in \fBuse=\fR links are
-not detected.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR[\fIn\fR]\fR
-.ad
-.RS 9n
-Specify that (verbose) output be written to standard error trace information
-showing \fBtic\fR's progress. The optional integer \fIn\fR is a number from 1
-to 10, indicating the desired level of detail of information. If \fIn\fR is
-omitted, the default level is 1. If \fIn\fR is specified and greater than 1,
-the level of detail is increased.
-.RE
-
-.SH OPERANDS
-.sp
-.ne 2
-.na
-\fB\fBfile\fR\fR
-.ad
-.RS 8n
-Contains one or more \fBterminfo\fR terminal descriptions in source format [see
-\fBterminfo\fR(4)]. Each description in the file describes the capabilities of
-a particular terminal. When a \fBuse\fR\fI=entry-name\fR field is discovered in
-a terminal entry currently being compiled, \fBtic\fR reads in the binary from
-\fB/usr/share/lib/terminfo\fR to complete the entry. (Entries created from
-\fBfile\fR will be used first. If the environment variable
-\fB\fR\fBTERM\fR\fBINFO \fR is set, that directory is searched instead of
-\fB/usr/share/lib/terminfo\fR.) \fBtic\fR duplicates the capabilities in
-\fIentry-name\fR for the current entry, with the exception of those
-capabilities that are explicitly defined in the current entry.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/usr/share/lib/terminfo/?/*\fR\fR
-.ad
-.sp .6
-.RS 4n
-Compiled terminal description database
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBcaptoinfo\fR(1M), \fBinfocmp\fR(1M), \fBcurses\fR(3CURSES),
-\fBterminfo\fR(4), \fBattributes\fR(5)
-.SH NOTES
-.sp
-.LP
-When an entry, for example, \fBentry_name_1\fR, contains a
-\fBuse=\fR\fIentry_name_2\fR field, any canceled capabilities in
-\fIentry_name_2\fR must also appear in \fBentry_name_1\fR before \fBuse=\fR for
-these capabilities to be canceled in \fBentry_name_1\fR.
diff --git a/usr/src/man/man1m/tnchkdb.1m b/usr/src/man/man1m/tnchkdb.1m
deleted file mode 100644
index 65402216ab..0000000000
--- a/usr/src/man/man1m/tnchkdb.1m
+++ /dev/null
@@ -1,182 +0,0 @@
-'\" te
-.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH TNCHKDB 1M "Jul 20, 2007"
-.SH NAME
-tnchkdb \- check file syntax of trusted network databases
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/tnchkdb\fR [\fB-h\fR \fIpath\fR] [\fB-t\fR \fIpath\fR] [\fB-z\fR \fIpath\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBtnchkdb\fR checks the syntax of the \fBtnrhtp\fR, \fBtnrhdb\fR, and
-\fBtnzonecfg\fR databases. By default, the \fIpath\fR for each file is:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fB/etc/security/tsol/tnrhtp\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fB/etc/security/tsol/tnrhdb\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fB/etc/security/tsol/tnzonecfg\fR
-.RE
-.sp
-.LP
-You can specify an alternate path for any or all of the files by specifying
-that path on the command line by using the \fB-h\fR (\fBtnrhdb\fR), \fB-t\fR
-(\fBtnrhtp\fR) and \fB-z\fR (\fBtnzonecfg\fR) options. The options are useful
-when testing a set of modified files before installing the files as new system
-databases.
-.sp
-.LP
-All three database files are checked for integrity. \fBtnchkdb\fR returns an
-exit status of \fB0\fR if all of the files are syntactically and, to the extent
-possible, semantically correct. If one or more files have errors, then an exit
-status of \fB1\fR is returned. If there are command line problems, such as an
-unreadable file, an exit status of \fB2\fR is returned. Errors are written to
-standard error.
-.sp
-.LP
-To avoid cascading errors, when there are errors in \fBtnrhtp\fR, the template
-names in \fBtnrhdb\fR are not validated.
-.sp
-.LP
-\fBtnchkdb\fR can be run at any label, but the standard
-\fB/etc/security/tsol\fR files are visible only in the global zone.
-.SH OPTIONS
-.sp
-.ne 2
-.na
-\fB\fB-h\fR [ \fIpath\fR ]\fR
-.ad
-.RS 15n
-Check \fIpath\fR for proper \fBtnrhdb\fR syntax. If \fIpath\fR is not
-specified, then check \fB/etc/security/tsol/tnrhdb\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-t\fR [ \fIpath\fR ]\fR
-.ad
-.RS 15n
-Check \fIpath\fR for proper \fBtnrhtp\fR syntax. If \fIpath\fR is not
-specified, then check \fB/etc/security/tsol/tnrhtp\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-z\fR [ \fIpath\fR ]\fR
-.ad
-.RS 15n
-Check \fIpath\fR for proper \fBtnzonecfg\fR syntax. If \fIpath\fR is not
-specified, then check \fB/etc/security/tsol/tnzonecfg\fR.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRSample Error Message
-.sp
-.LP
-The \fBtnchkdb\fR command checks for CIPSO errors. In this example, the
-\fBadmin_low\fR template has an incorrect value of \fBADMIN_HIGH\fR for its
-default label.
-
-.sp
-.in +2
-.nf
-# \fBtnchkdb\fR
-checking /etc/security/tsol/tnrhtp ...
-tnchkdb: def_label classification 7fff is invalid for cipso labels:
-line 14 entry admin_low
-tnchkdb: def_label compartments 241-256 must be zero for cipso labels:
-line 14 entry admin_low
-checking /etc/security/tsol/tnrhdb ...
-checking /etc/security/tsol/tnzonecfg ...
-.fi
-.in -2
-.sp
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/security/tsol/tnrhdb\fR\fR
-.ad
-.sp .6
-.RS 4n
-Trusted network remote-host database
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/security/tsol/tnrhtp\fR\fR
-.ad
-.sp .6
-.RS 4n
-Trusted network remote-host templates
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/security/tsol/tnzonecfg\fR\fR
-.ad
-.sp .6
-.RS 4n
-Trusted zone configuration database
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability See below.
-.TE
-
-.sp
-.LP
-The command line is Committed. The output is Uncommitted.
-.SH SEE ALSO
-.sp
-.LP
-\fBtnd\fR(1M), \fBtnctl\fR(1M), \fBattributes\fR(5)
-.sp
-.LP
-\fIHow to Check the Syntax of Trusted Network Databases\fR in \fISolaris
-Trusted Extensions Administrator\&'s Procedures\fR
-.SH NOTES
-.sp
-.LP
-The functionality described on this manual page is available only if the system
-is configured with Trusted Extensions.
-.sp
-.LP
-It is possible to have inconsistent but valid configurations of \fBtnrhtp\fR
-and \fBtnrhdb\fR when \fBLDAP\fR is used to supply missing templates.
diff --git a/usr/src/man/man1m/tnctl.1m b/usr/src/man/man1m/tnctl.1m
deleted file mode 100644
index 77817db9ec..0000000000
--- a/usr/src/man/man1m/tnctl.1m
+++ /dev/null
@@ -1,263 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH TNCTL 1M "May 13, 2017"
-.SH NAME
-tnctl \- configure Trusted Extensions network parameters
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/tnctl\fR [\fB-dfv\fR] [\fB-h\fR \fIhost\fR [/\fIprefix\fR] [:\fItemplate\fR]]
- [\fB-m\fR \fIzone\fR:\fImlp\fR:\fIshared-mlp\fR][\fB-t\fR \fItemplate\fR [:\fIkey=val\fR [;\fIkey=val\fR]]]
- [\fB-HTz\fR] \fIfile\fR]
-.fi
-
-.SH DESCRIPTION
-.LP
-\fBtnctl\fR provides an interface to manipulate trusted network parameters in
-the Solaris kernel.
-.sp
-.LP
-As part of Solaris Trusted Extensions initialization, \fBtnctl\fR is run in the
-global zone by an \fBsmf\fR(5) script during system boot. The \fBtnctl\fR
-command is not intended to be used during normal system administration.
-Instead, if a local trusted networking database file is modified,
-the administrator first issues
-\fBtnchkdb\fR(1M) to check the syntax, and then refreshes the kernel copy with
-this command:
-.sp
-.in +2
-.nf
-# \fBsvcadm restart svc:/network/tnctl\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-See \fBWARNINGS\fR about the risks of changing remote host and template
-information on a running system.
-.SH OPTIONS
-.ne 2
-.na
-\fB\fB-d\fR\fR
-.ad
-.sp .6
-.RS 4n
-Delete matching entries from the kernel. The default is to add new entries.
-.sp
-When deleting MLPs, the MLP range must match exactly. MLPs are specified in the
-form:
-.sp
-.in +2
-.nf
-\fIport\fR[-\fIport\fR]/\fIprotocol\fR
-.fi
-.in -2
-.sp
-
-Where \fIport\fR can be a number in the range 1 to 65535. or any known service
-(see \fBservices\fR(4)), and protocol can be a number in the range 1 to 255, or
-any known protocol (see \fBprotocols\fR(4)).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR\fR
-.ad
-.sp .6
-.RS 4n
-Flush all kernel entries before loading the entries that are specified on the
-command line. The flush does not take place unless at least one entry parsed
-successfully.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.sp .6
-.RS 4n
-Turn on verbose mode.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-h\fR \fIhost\fR[/\fIprefix\fR][:\fItemplate\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Update the kernel remote-host cache on the local host for the specified
-\fIhost\fR or, if a template name is given, change the kernel's cache to use
-the specified \fItemplate\fR. If \fIprefix\fR is not specified, then an implied
-prefix length is determined according to the rules used for interpreting the
-\fBtnrhdb\fR. If \fB-d\fR is specified, then a template name cannot be
-specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-m\fR \fIzone\fR:\fImlp\fR:\fIshared-mlp\fR\fR
-.ad
-.sp .6
-.RS 4n
-Modify the kernel's multilevel port (MLP) configuration cache for the specified
-\fIzone\fR. \fIzone\fR specifies the zone to be updated. \fImlp\fR and
-\fIshared-mlp\fR specify the MLPs for the zone-specific and shared IP
-addresses. The \fIshared-mlp\fR field is effective in the global zone only.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-t\fR \fItemplate\fR[\fIkey=val\fR[;\fIkey=val\fR]]\fR
-.ad
-.sp .6
-.RS 4n
-Update the kernel template cache for \fItemplate\fR or, if a list of
-\fIkey=val\fR pairs is given, change the kernel's cache to use the specified
-entry. If \fB-d\fR is specified, then \fIkey=val\fR pairs cannot be specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-T\fR \fIfile\fR\fR
-.ad
-.sp .6
-.RS 4n
-Load all template entries in \fIfile\fR into the kernel cache.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-H\fR \fIfile\fR\fR
-.ad
-.sp .6
-.RS 4n
-Load all remote host entries in \fIfile\fR into the kernel cache.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-z\fR \fIfile\fR\fR
-.ad
-.sp .6
-.RS 4n
-Load just the global zone's MLPs from \fIfile\fR into the kernel cache. To
-reload MLPs for a non-global zone, reboot the zone:
-.sp
-.in +2
-.nf
-# \fBzoneadm -z\fR \fInon-global zone\fR \fBreboot\fR
-.fi
-.in -2
-.sp
-
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Uncommitted
-.TE
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/etc/security/tsol/tnrhdb\fR\fR
-.ad
-.sp .6
-.RS 4n
-Trusted network remote-host database
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/security/tsol/tnrhtp\fR\fR
-.ad
-.sp .6
-.RS 4n
-Trusted network remote-host templates
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/security/tsol/tnzonecfg\fR\fR
-.ad
-.sp .6
-.RS 4n
-Trusted zone configuration database
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/nsswitch.conf\fR\fR
-.ad
-.sp .6
-.RS 4n
-Configuration file for the name service switch
-.RE
-
-.SH SEE ALSO
-.LP
-\fBsvcs\fR(1), \fBsvcadm\fR(1M), \fBtninfo\fR(1M), \fBtnd\fR(1M),
-\fBtnchkdb\fR(1M), \fBzoneadm\fR(1M), \fBnsswitch.conf\fR(4),
-\fBprotocols\fR(4), \fBservices\fR(4), \fBattributes\fR(5), \fBsmf\fR(5)
-.sp
-.LP
-\fIHow to Synchronize Kernel Cache With Network Databases\fR in \fISolaris
-Trusted Extensions Administrator\&'s Procedures\fR
-.SH WARNINGS
-.LP
-Changing a template while the network is up can change the security view of an
-undetermined number of hosts.
-.SH NOTES
-.LP
-The functionality described on this manual page is available only if the system
-is configured with Trusted Extensions.
-.sp
-.LP
-The \fBtnctl\fR service is managed by the service management facility,
-\fBsmf\fR(5), under the service identifier:
-.sp
-.in +2
-.nf
-svc:/network/tnctl
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The service's status can be queried by using \fBsvcs\fR(1). Administrative
-actions on this service, such as refreshing the kernel cache, can be performed
-using \fBsvcadm\fR(1M), as in:
-.sp
-.in +2
-.nf
-svcadm restart svc:/network/tnctl
-.fi
-.in -2
-.sp
-
diff --git a/usr/src/man/man1m/tnd.1m b/usr/src/man/man1m/tnd.1m
deleted file mode 100644
index 2d33b27eb1..0000000000
--- a/usr/src/man/man1m/tnd.1m
+++ /dev/null
@@ -1,220 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH TND 1M "May 15, 2008"
-.SH NAME
-tnd \- trusted network daemon
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/tnd\fR [\fB-p\fR \fIpoll-interval\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBtnd\fR (trusted network daemon) initializes the kernel with trusted
-network databases and also reloads the databases on demand from an LDAP server
-and local files. \fBtnd\fR follows the order specified in the nsswitch.conf
-file when loading configuration databases. \fBtnd\fR is started at the
-beginning of the boot process.
-.sp
-.LP
-\fBtnd\fR loads two databases into the kernel: the remote host database,
-\fBtnrhdb\fR and the remote-host template database, \fBtnrhtp\fR. These
-databases and their effect on the trusted network are described in their
-respective man pages. When the associated \fBLDAP\fR database or local
-databases are changed, \fBtnd\fR also updates the local kernel cache at the
-predetermined interval.
-.sp
-.LP
-If a local trusted networking database file is modified, the administrator
-should run \fBtnchkdb\fR(1M) to check the syntax, and should also run \fBsvcadm
-refresh svc:/network/tnd\fR to initiate an immediate database scan by
-\fBtnd\fR.
-.sp
-.LP
-\fBtnd\fR is intended to be started from an \fBsmf\fR(5) script and to run in
-the global zone. The following signals cause specific \fBsvcadm\fR actions:
-.sp
-.ne 2
-.na
-\fB\fBSIGHUP\fR\fR
-.ad
-.RS 11n
-Causes \fBsvcadm refresh svc:/network/tnd\fR to be run.
-.sp
-Initiates a rescan of the local and LDAP \fBtnrhdb\fR and \fBtnrhtp\fR
-databases. \fBtnd\fR updates the kernel database with any changes found.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSIGTERM\fR\fR
-.ad
-.RS 11n
-Causes \fBsvcadm disable svc:/network/tnd\fR to be run.
-.sp
-Terminates the \fBtnd\fR daemon. No changes are made to the kernel database.
-.RE
-
-.sp
-.LP
-Running \fBtnd\fR in debug mode is determined by the value of the following
-service management facility (SMF) property:
-.sp
-.in +2
-.nf
-tnd/debug_level = 0
-.fi
-.in -2
-
-.sp
-.LP
-A value of \fB0\fR, as above, prevents debug information from being collected;
-\fB1\fR turns on debugging. The default value is \fB0\fR. Debug output is sent
-to the \fB/var/tsol/tndlog\fR log file.
-.SH OPTIONS
-.sp
-.ne 2
-.na
-\fB\fB-p\fR \fIpoll-interval\fR\fR
-.ad
-.RS 20n
-Set poll interval to \fIpoll-interval\fR seconds. The default
-\fIpoll-interval\fR is 1800 seconds (30 minutes).
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRChanging the Poll Interval
-.sp
-.LP
-The following command changes the polling interval to one hour, and puts this
-interval in the SMF repository. At the next boot, the \fBtnd\fR poll interval
-will be one hour.
-
-.sp
-.in +2
-.nf
-# \fBsvccfg -s network/tnd setprop tnd/poll_interval=3600\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The following command changes the polling interval, but does not update the
-repository. At the next boot, the \fBtnd\fR poll interval remains the default,
-30 minutes.
-
-.sp
-.in +2
-.nf
-# tnd -p 3600
-.fi
-.in -2
-.sp
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/security/tsol/tnrhdb\fR\fR
-.ad
-.sp .6
-.RS 4n
-Trusted network remote-host database
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/security/tsol/tnrhtp\fR\fR
-.ad
-.sp .6
-.RS 4n
-Trusted network remote-host templates
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/security/tsol/tnzonecfg\fR\fR
-.ad
-.sp .6
-.RS 4n
-Trusted zone configuration database
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/nsswitch.conf\fR\fR
-.ad
-.sp .6
-.RS 4n
-Configuration file for the name service switch
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability See below.
-.TE
-
-.sp
-.LP
-The command invocation is Committed. The service is Private.
-.SH SEE ALSO
-.sp
-.LP
-\fBsvcs\fR(1), \fBsvcadm\fR(1M), \fBtninfo\fR(1M), \fBtnctl\fR(1M),
-\fBtnchkdb\fR(1M), \fBnsswitch.conf\fR(4), \fBattributes\fR(5), \fBsmf\fR(5)
-.sp
-.LP
-\fIHow to Synchronize Kernel Cache With Network Databases\fR in \fISolaris
-Trusted Extensions Administrator\&'s Procedures\fR
-.SH NOTES
-.sp
-.LP
-The functionality described on this manual page is available only if the system
-is configured with Trusted Extensions.
-.sp
-.LP
-The \fBtnd\fR service is managed by the service management facility,
-\fBsmf\fR(5), under the service identifier:
-.sp
-.in +2
-.nf
-svc:/network/tnd
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The service's status can be queried by using \fBsvcs\fR(1). Administrative
-actions on this service, such as requests to restart the daemon, can be
-performed using \fBsvcadm\fR(1M), as in:
-.sp
-.in +2
-.nf
-svcadm restart svc:/network/tnd
-.fi
-.in -2
-.sp
-
diff --git a/usr/src/man/man1m/tninfo.1m b/usr/src/man/man1m/tninfo.1m
deleted file mode 100644
index 23e0a10a4a..0000000000
--- a/usr/src/man/man1m/tninfo.1m
+++ /dev/null
@@ -1,175 +0,0 @@
-'\" te
-.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH TNINFO 1M "Jul 20, 2007"
-.SH NAME
-tninfo \- print kernel-level network information and statistics
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/tninfo\fR [\fB-h\fR \fIhostname\fR] [\fB-m\fR \fIzone-name\fR] [\fB-t\fR \fItemplate\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBtninfo\fR provides an interface to retrieve and display kernel-level network
-information and statistics.
-.SH OPTIONS
-.sp
-.ne 2
-.na
-\fB\fB-h\fR \fIhostname\fR\fR
-.ad
-.RS 16n
-Display the security structure for the specified host in the remote-host cache.
-The output should reflect what is specified in the \fBtnrhdb\fR database.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-m\fR \fIzone-name\fR\fR
-.ad
-.RS 16n
-Display the MLP configuration associated with the specified zone. The output
-should reflect what is specified in the \fBtnzonecfg\fR database.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-t\fR \fItemplate\fR\fR
-.ad
-.RS 16n
-Display the structure associated with the specified \fItemplate\fR. The output
-should reflect what is specified in the \fBtnrhtp\fR database.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRDisplaying Remote Host Structures Cached in the Kernel
-.sp
-.LP
-This example shows the remote host structures cached in the kernel. The output
-reflects the definition in the \fBtnrhdb\fR database.
-
-.sp
-.in +2
-.nf
-# \fBtninfo -h machine1\fR
- IP address= 192.168.8.61
- Template = cipso
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRDisplaying Multilevel Ports for the Global Zone
-.sp
-.LP
-This example shows the kernel-cached MLPs for the global zone. The output
-reflects the definition in the \fBtnzonecfg\fR database, plus any dynamically
-allocated MLPs. \fBprivate\fR indicates zone-specific MLPs.
-
-.sp
-.in +2
-.nf
-# \fBtninfo -m global\fR
-private:23/tcp;111/tcp;111/udp;515/tcp;2049/tcp;6000-6003/tcp;
- 32812/tcp;36698/ip;38634/tcp;64365/ip
-shared: 6000-6003/tcp
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRDisplaying the \fBcipso\fR Template Definition
-.sp
-.LP
-This example shows the kernel-cached \fBcipso\fR template definition. The
-output reflects the definition in the \fBtnrhtp\fR database.
-
-.sp
-.in +2
-.nf
-# \fBtninfo -t cipso\fR
-=====================================
- Remote Host Template Table Entries:
- __________________________
- template: cipso
- host_type: CIPSO
- doi: 1
- min_sl: ADMIN_LOW
- hex: ADMIN_LOW
- max_sl: ADMIN_HIGH
- hex: ADMIN_HIGH
-.fi
-.in -2
-.sp
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/security/tsol/tnrhdb\fR\fR
-.ad
-.sp .6
-.RS 4n
-Trusted network remote-host database
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/security/tsol/tnrhtp\fR\fR
-.ad
-.sp .6
-.RS 4n
-Trusted network remote-host templates
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/security/tsol/tnzonecfg\fR\fR
-.ad
-.sp .6
-.RS 4n
-Trusted zone configuration database
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability See below.
-.TE
-
-.sp
-.LP
-The command line is Committed. The output is Uncommitted.
-.SH SEE ALSO
-.sp
-.LP
-\fBtnd\fR(1M), \fBtnctl\fR(1M), \fBattributes\fR(5)
-.sp
-.LP
-\fIHow to Synchronize Kernel Cache With Network Databases\fR in \fISolaris
-Trusted Extensions Administrator\&'s Procedures\fR
-.SH NOTES
-.sp
-.LP
-The functionality described on this manual page is available only if the system
-is configured with Trusted Extensions.
diff --git a/usr/src/man/man1m/tpmadm.1m b/usr/src/man/man1m/tpmadm.1m
deleted file mode 100644
index f1c99db6ff..0000000000
--- a/usr/src/man/man1m/tpmadm.1m
+++ /dev/null
@@ -1,226 +0,0 @@
-'\" te
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
-.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH TPMADM 1M "April 9, 2016"
-.SH NAME
-tpmadm \- administer Trusted Platform Module
-.SH SYNOPSIS
-.LP
-.nf
-\fBtpmadm status\fR
-.fi
-
-.LP
-.nf
-\fBtpmadm init\fR
-.fi
-
-.LP
-.nf
-\fBtpmadm clear\fR [\fBowner\fR | \fBlock\fR]
-.fi
-
-.LP
-.nf
-\fBtpmadm auth\fR
-.fi
-
-.LP
-.nf
-\fBtpmadm keyinfo\fR [\fIuuid\fR]
-.fi
-
-.LP
-.nf
-\fBtpmadm deletekey\fR \fIuuid\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-A Trusted Platform Module (TPM) is a hardware component that provides for
-protected key storage and reliable measurements of software used to boot the
-operating system. The \fBtpmadm\fR utility is used to initialize and administer
-the TPM so that it can be used by the operating system and other programs.
-.sp
-.LP
-The TPM subsystem can store and manage an unlimited number of keys for use by
-the operating system and by users. Each key is identified by a Universally
-Unique Identifier, or UUID.
-.sp
-.LP
-Although the TPM can hold only a limited number of keys at any given time, the
-supporting software automatically loads and unloads keys as needed. When a key
-is stored outside the TPM, it is always encrypted or "wrapped" by its parent
-key so that the key is never exposed in readable form outside the TPM.
-.sp
-.LP
-Before the TPM can be used, it must be initialized by the platform owner. This
-process involves setting an owner password which is used to authorize
-privileged operations.
-.sp
-.LP
-Although the TPM owner is similar to a traditional superuser, there are two
-important differences. First, process privilege is irrelevant for access to TPM
-functions. All privileged operations require knowledge of the owner password,
-regardless of the privilege level of the calling process. Second, the TPM owner
-is not able to override access controls for data protected by TPM keys. The
-owner can effectively destroy data by re-initializing the TPM, but he cannot
-access data that has been encrypted using TPM keys owned by other users.
-.SH SUBCOMMANDS
-.LP
-The following subcommands are used in the form:
-.sp
-.in +2
-.nf
-# tpmadm \fI<subcommand>\fR \fI[operand]\fR
-.fi
-.in -2
-.sp
-
-.sp
-.ne 2
-.na
-\fB\fBstatus\fR\fR
-.ad
-.sp .6
-.RS 4n
-Report status information about the TPM. Output includes basic information
-about whether ownership of the TPM has been established, current PCR contents,
-and the usage of TPM resources such as communication sessions and loaded keys.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBinit\fR\fR
-.ad
-.sp .6
-.RS 4n
-Initialize the TPM for use. This involves taking ownership of the TPM by
-setting the owner authorization password. Taking ownership of the TPM creates a
-new storage root key, which is the ancestor of all keys created by this TPM.
-Once this command is issued, the TPM must be reset using BIOS operations before
-it can be re-initialized.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBauth\fR\fR
-.ad
-.sp .6
-.RS 4n
-Change the owner authorization password for the TPM.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBclear\fR \fBlock\fR\fR
-.ad
-.sp .6
-.RS 4n
-Clear the count of failed authentication attempts. After a number of failed
-authentication attempts, the TPM responds more slowly to subsequent attempts,
-in an effort to thwart attempts to find the owner password by exhaustive
-search. This command, which requires the correct owner password, resets the
-count of failed attempts.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBclear\fR \fBowner\fR\fR
-.ad
-.sp .6
-.RS 4n
-Deactivate the TPM and return it to an unowned state. This operation, which
-requires the current TPM owner password, invalidates all keys and data tied to
-the TPM. Before the TPM can be used again, the system must be restarted, the
-TPM must be reactivated from the BIOS or ILOM pre-boot environment, and the
-TPM must be re-initialized using the \fBtpmadm init\fR command.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBkeyinfo\fR [\fIuuid\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Report information about keys stored in the TPM subsystem. Without additional
-arguments, this subcommand produces a brief listing of all keys. If the UUID of
-an individual key is specified, detailed information about that key is
-displayed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdeletekey\fR \fIuuid\fR\fR
-.ad
-.sp .6
-.RS 4n
-Delete the key with the specified UUID from the TPM subsystem's persistent
-storage.
-.RE
-
-.SH EXIT STATUS
-.LP
-After completing the requested operation, \fBtpmadm\fR exits with one of the
-following status values.
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.sp .6
-.RS 4n
-Successful termination.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB1\fR\fR
-.ad
-.sp .6
-.RS 4n
-Failure. The requested operation could not be completed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB2\fR\fR
-.ad
-.sp .6
-.RS 4n
-Usage error. The \fBtpmadm\fR command was invoked with invalid arguments.
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Committed
-.TE
-
-.SH SEE ALSO
-.LP
-\fBattributes\fR(5)
-.sp
-.LP
-TCG Software Stack (TSS) Specifications:
-\fBhttps://www.trustedcomputinggroup.org/specs/TSS\fR (as of the date of
-publication)
diff --git a/usr/src/man/man1m/traceroute.1m b/usr/src/man/man1m/traceroute.1m
deleted file mode 100644
index abc2dfbf65..0000000000
--- a/usr/src/man/man1m/traceroute.1m
+++ /dev/null
@@ -1,669 +0,0 @@
-'\" te
-.\" Copyright (C) 2003, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH TRACEROUTE 1M "June 13, 2021"
-.SH NAME
-traceroute \- print the route packets take to network host
-.SH SYNOPSIS
-.nf
-\fBtraceroute\fR [\fB-adFIlnSvx\fR] [\fB-A\fR \fIaddr_family\fR] [\fB-c\fR \fItraffic_class\fR]
- [\fB-f\fR \fIfirst_hop\fR] [\fB-g\fR \fIgateway\fR [\fB-g\fR \fIgateway\fR...] | \fB-r\fR]
- [\fB-i\fR \fIiface\fR] [\fB-L\fR \fIflow_label\fR] [\fB-m\fR \fImax_hop\fR]
- [\fB-P\fR \fIpause_sec\fR] [\fB-p\fR \fIport\fR] [\fB-Q\fR \fImax_timeout\fR]
- [\fB-q\fR \fInqueries\fR] [\fB-s\fR \fIsrc_addr\fR] [\fB-t\fR \fItos\fR] [\fB-w\fR \fIwait_time\fR] host
- [\fIpacketlen\fR]
-.fi
-
-.SH DESCRIPTION
-The Internet is a large and complex aggregation of network hardware, connected
-by gateways. Tracking the route a packet follows can be difficult. The utility
-\fBtraceroute\fR traces the route that an \fBIP\fR packet follows to another
-internet host.
-.sp
-.LP
-The \fBtraceroute\fR utility utilizes the both the IPv4 and IPv6 protocols. Use
-the \fB-A\fR option to override the default behavior. \fBtraceroute\fR uses the
-IPv4 protocol \fIttl\fR (time to live) field or the IPv6 field \fIhop limit\fR.
-It attempts to elicit an \fBICMP\fR or \fBICMP6\fR \fBTIME_EXCEEDED\fR response
-from each \fIgateway\fR along the path, and a \fBPORT_UNREACHABLE\fR(or
-\fBECHO_REPLY\fR if \fB-I\fR is used) response from the destination host. It
-starts by sending probes with a \fIttl\fR or \fIhop limit\fR of \fB1\fR and
-increases by \fB1\fR until it either gets to the host, or it hits the maximum
-\fImax_hop\fR. The default maximum \fImax_hop\fR is 30 hops, but this can be
-set by the \fB-m\fR option.
-.sp
-.LP
-Three probes are sent at each \fIttl\fR (\fIhop limit\fR) setting, and a line
-is printed showing the \fIttl\fR (\fIhop limit\fR), the hostname and the
-address of the gateway, and the \fIrtt\fR (round trip time) of each probe. The
-number of probes may be specifically set using the \fB-q\fR option. If the
-probe answers come from different gateways, the hostname and the address of
-each responding system will be printed. If there is no response within a 5
-second timeout interval, an asterisk (\fB*\fR) is displayed for that probe. The
-\fB-w\fR option may be used to set the timeout interval. Other possible
-annotations that may appear after the time are:
-.sp
-.ne 2
-.na
-\fB\fB!\fR\fR
-.ad
-.sp .6
-.RS 4n
-the \fIttl\fR (\fIhop limit\fR) value in the received packet is \fB<= 1\fR\&.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB!H\fR\fR
-.ad
-.sp .6
-.RS 4n
-host unreachable.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB!X\fR\fR
-.ad
-.sp .6
-.RS 4n
-communication administratively prohibited.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB<!N>\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBICMP\fR (\fBICMP6\fR) unreachable code N.
-.RE
-
-.sp
-.LP
-The following annotations appear only for IPv4:
-.sp
-.ne 2
-.na
-\fB\fB!F\fR\fR
-.ad
-.sp .6
-.RS 4n
-fragmentation needed. This should never occur. If this is seen, the associated
-gateway is broken.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB!N\fR\fR
-.ad
-.sp .6
-.RS 4n
-network unreachable.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB!P\fR\fR
-.ad
-.sp .6
-.RS 4n
-protocol unreachable.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB!S\fR\fR
-.ad
-.sp .6
-.RS 4n
-source route failed. It is likely that the gateway does not support source
-routing.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB!T\fR\fR
-.ad
-.sp .6
-.RS 4n
-unreachable for the specified tos (type-of-service).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB!U\fR\fR
-.ad
-.sp .6
-.RS 4n
-source host isolated or precedence problem.
-.RE
-
-.sp
-.LP
-The following annotations appear only for IPv6:
-.sp
-.ne 2
-.na
-\fB\fB!A\fR\fR
-.ad
-.sp .6
-.RS 4n
-host unreachable for a reason other than lack of an entry in the routing table.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB!B\fR\fR
-.ad
-.sp .6
-.RS 4n
-packet too big.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB!E\fR\fR
-.ad
-.sp .6
-.RS 4n
-destination is not a neighbor.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB!R\fR\fR
-.ad
-.sp .6
-.RS 4n
-unrecognized next header.
-.RE
-
-.sp
-.LP
-If almost all the probes result in some kind of unreachable code, then
-\fBtraceroute\fR gives up and exits.
-.sp
-.LP
-The destination \fIhost\fR is not supposed to process the \fBUDP\fR probe
-packets, so the destination \fIport\fR default is set to an unlikely value.
-However, if some application on the destination is using that value, the value
-of \fIport\fR can be changed with the \fB-p\fR option.
-.sp
-.LP
-The only mandatory parameter is the destination \fIhost\fR name or \fBIP\fR
-number. The default probe datagram length is 40 bytes (60 bytes for IPv6), but
-this may be increased by specifying a packet length (in bytes) after the
-destination \fIhost\fR name.
-.sp
-.LP
-All integer arguments to \fBtraceroute\fR can be specified in either decimal or
-hexadecimal notation. For example, \fIpacketlen\fR can be specified either as
-\fB256\fR or \fB0x100\fR.
-.SH OPTIONS
-.ne 2
-.na
-\fB\fB-A\fR\ \fIaddr_family\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify the address family of the target host. \fIaddr_family\fR can be either
-\fBinet\fR or \fBinet6\fR. Address family determines which protocol to use. For
-an argument of \fBinet\fR, IPv4 is used. For \fBinet6\fR, IPv6 is used.
-.sp
-By default, if the name of a host is provided, not the literal \fBIP\fR
-address, and a valid IPv6 address exists in the name service database,
-\fBtraceroute\fR will use this address. Otherwise, if the name service database
-contains an IPv4 address, it will try the IPv4 address.
-.sp
-Specify the address family \fBinet\fR or \fBinet6\fR to override the default
-behavior. If the argument specified is \fBinet\fR, \fBtraceroute\fR will use
-the IPv4 address associated with the hostname. If none exists, \fBtraceroute\fR
-will state that the host is unknown and exit. It will not try to determine if
-an IPv6 address exists in the name service database.
-.sp
-If the specified argument is \fBinet6\fR, \fBtraceroute\fR will use the IPv6
-address that is associated with the hostname. If none exists, \fBtraceroute\fR
-will state that the host is unknown and exit.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-a\fR\fR
-.ad
-.sp .6
-.RS 4n
-Probe all of the addresses of a multi-homed destination. The output looks like
-\fBtraceroute\fR has been run once for each \fBIP\fR address of the
-destination. If this option is used together with \fB-A\fR, \fBtraceroute\fR
-probes only the addresses that are of the specified address family. While
-probing one of the addresses of the destination, user can skip to the next
-address by sending a \fBSIGINT\fR, or exit \fBtraceroute\fR by sending a
-\fBSIGQUIT\fR signal. See \fBsignal\fR(3C)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-c\fR\ \fItraffic_class\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify the traffic class of probe packets. The value must be an integer in the
-range from 0 to 255. Gateways along the path may route the probe packet
-differently depending upon the value of \fItraffic_class\fR set in the probe
-packet. This option is valid only on IPv6.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-d\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set the \fBSO_DEBUG\fR socket option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-F\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set the "don't fragment" bit. This option is valid only on IPv4. When specified
-from within a shared-IP zone, this option has no effect as the "don't fragment"
-bit is always set in this case.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR \fIfirst_hop\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set the starting \fIttl\fR (\fIhop limit\fR) value to \fIfirst_hop\fR, to
-override the default value \fB1\fR. \fBtraceroute\fR skips processing for those
-intermediate gateways which are less than \fIfirst_hop\fR hops away.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-g\fR \fIgateway\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify a loose source route \fIgateway\fR. The user can specify more than one
-\fIgateway\fR by using \fB-g\fR for each gateway. The maximum number of
-gateways is 8 for IPv4 and 127 for IPv6. Note that some factors such as the
-link \fBMTU\fR can further limit the number of gateways for IPv6. This option
-cannot be used with the \fB-r\fR option.
-.sp
-Only users with the \fB{PRIV_NET_RAWACCESS}\fR privilege can specify a loose
-source route with this option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-I\fR\fR
-.ad
-.sp .6
-.RS 4n
-Use \fBICMP\fR (\fBICMP6\fR) \fBECHO\fR instead of \fBUDP\fR datagrams.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-i\fR \fIiface\fR\fR
-.ad
-.sp .6
-.RS 4n
-For IPv4, this option specifies a network interface to obtain the source
-\fBIP\fR address. This is normally only useful on a multi-homed host. The
-\fB-s\fR option is also another way to do this. For IPv6, it specifies the
-network interface on which probe packets are transmitted. The argument can be
-either an interface index, for example, \fB1\fR, \fB2\fR, or an interface name,
-for example, \fBeri0\fR, \fBhme0\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-L\fR\ \fIflow_label\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify the flow label of probe packets. The value must be an integer in the
-range from 0 to 1048575. This option is valid only on IPv6.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR\fR
-.ad
-.sp .6
-.RS 4n
-Print the value of the \fIttl\fR (\fIhop limit\fR) field in each packet
-received.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-m\fR \fImax_hop\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set the maximum \fIttl\fR (\fIhop limit\fR) used in outgoing probe packets. The
-default is 30 hops, which is the same default used for \fBTCP \fR connections.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR\fR
-.ad
-.sp .6
-.RS 4n
-Print hop addresses numerically rather than symbolically and numerically. This
-saves a nameserver address-to-name lookup for each gateway found on the path.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-P\fR \fIpause_sec\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify a delay, in seconds, to pause between probe packets. This may be
-necessary if the final destination does not accept undeliverable packets in
-bursts. By default, \fBtraceroute\fR sends the next probe as soon as it has
-received a reply. Note that \fIpause_sec\fR is a real number.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR \fIport\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set the base \fBUDP\fR \fIport\fR number used in probes.The default is 33434.
-\fBtraceroute\fR hopes that nothing is listening on \fBUDP\fR \fIports\fR
-\fB(base+(nhops-1)*nqueries)\fR to \fB(base+(nhops*nqueries)-1)\fR at the
-destination host, so that an \fBICMP\fR (\fBICMP6\fR) \fBPORT_UNREACHABLE\fR
-message will be returned to terminate the route tracing. If something is
-listening on a \fIport\fR in the default range, this option can be used to
-select an unused \fIport\fR range. \fBnhops\fR is defined as the number of hops
-between the source and the destination.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-Q\fR \fImax_timeout\fR\fR
-.ad
-.sp .6
-.RS 4n
-Stop probing this hop after \fImax_timeout\fR consecutive timeouts are
-detected. The default value is 5. Useful in combination with the \fB-q\fR
-option if you have specified a large \fInqueries\fR probe count.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-q\fR \fInqueries\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set the desired number of probe queries. The default is 3.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-r\fR\fR
-.ad
-.sp .6
-.RS 4n
-Bypass the normal routing tables and send directly to a host on an attached
-network. If the host is not on a directly-attached network, an error is
-returned. This option can be used to send probes to a local host through an
-interface that has been dropped by the router daemon. See \fBin.routed\fR(1M).
-You cannot use this option if the \fB-g\fR option is used.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-S\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display a summary of how many probes were not answered for each hop.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR \fIsrc_addr\fR\fR
-.ad
-.sp .6
-.RS 4n
-Use the following address, which usually is given as a literal \fBIP\fR
-address, not a hostname, as the source address in outgoing probe packets. On
-multi-homed hosts, those with more than one \fBIP\fR address, this option can
-be used to force the source address to be something other than the \fBIP\fR
-address \fBtraceroute\fR picks by default. If the \fBIP\fR address is not one
-of this machine's interface addresses, an error is returned and nothing is
-sent. For IPv4, when used together with the \fB-i\fR option, the given \fBIP\fR
-address should be configured on the specified interface. Otherwise, an error
-will be returned. In the case of IPv6, the interface name and the source
-address do not have to match.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-t\fR \fItos\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set the \fItos\fR(type-of-service) in probe packets to the specified value. The
-default is zero. The value must be an integer in the range from 0 to 255.
-Gateways along the path may route the probe packet differently depending upon
-the \fItos\fR value set in the probe packet. This option is valid only on IPv4.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.sp .6
-.RS 4n
-Verbose output. For each hop, the size and the destination of the response
-packets is displayed. Also \fBICMP\fR (\fBICMP6\fR) packets received other than
-\fBTIME_EXCEEDED\fR and \fBUNREACHABLE\fR are listed as well.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-w\fR \fIwaittime\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set the time, in seconds, to wait for a response to a probe. The default is 5
-seconds.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-x\fR\fR
-.ad
-.sp .6
-.RS 4n
-Prevent \fBtraceroute\fR from calculating checksums. Checksums are usually
-required for the last hop when using \fBICMP\fR \fBECHO\fR probes. This option
-is valid only on IPv4. See the \fB-I\fR option.
-.sp
-When specified from within a shared-IP zone, this option has no effect as the
-checksum is always calculated by the operating system in this case.
-.RE
-
-.SH OPERANDS
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fB\fIhost\fR\fR
-.ad
-.sp .6
-.RS 4n
-The network host.
-.RE
-
-.SH EXAMPLES
-\fBExample 1 \fRSample Output From the \fBtraceroute\fR Utility
-.sp
-.LP
-Some sample output from the \fBtraceroute\fR utility might be:
-
-.sp
-.in +2
-.nf
-istanbul% \fBtraceroute london\fR
-traceroute: Warning: london has multiple addresses; \e
- using 4::114:a00:20ff:ab3d:83ed
-traceroute: Warning: Multiple interfaces found; \e
- using 4::56:a00:20ff:fe93:8dde @ eri0:2
-traceroute to london (4::114:a00:20ff:ab3d:83ed), 30 hops max, \e
- 60 byte packets
-1 frbldg7c-86 (4::56:a00:20ff:fe1f:65a1) 1.786 ms 1.544 ms 1.719 ms
-2 frbldg7b-77 (4::255:0:0:c0a8:517) 2.587 ms 3.001 ms 2.988 ms
-3 london (4::114:a00:20ff:ab3d:83ed) 3.122 ms 2.744 ms 3.356 ms
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The target host, london, has both IPv4 and IPv6 addresses in the name service
-database. According to the default behavior, \fBtraceroute\fR uses IPv6 address
-of the destination host.
-
-.LP
-\fBExample 2 \fRUsing the \fBtraceroute\fR Utility For a Host Which has Only
-IPv4 Addresses
-.sp
-.LP
-In the following examples, \fBtraceroute\fR is tracking the route to host
-sanfrancisco, which has only IPv4 addresses in the name service database.
-Therefore traceroute uses only IPv4 addresses. The following shows the 7-hop
-path that a packet would follow from the host istanbul to the host
-sanfrancisco.
-
-.sp
-.in +2
-.nf
-istanbul% \fBtraceroute sanfrancisco\fR
-traceroute: Warning: Multiple interfaces found; using 172.31.86.247 @eri0
-traceroute to sanfrancisco (172.29.64.39), 30 hops max, 40 byte packets
-1 frbldg7c-86 (172.31.86.1) 1.516 ms 1.283 ms 1.362 ms
-2 bldg1a-001 (172.31.1.211) 2.277 ms 1.773 ms 2.186 ms
-3 bldg4-bldg1 (172.30.4.42) 1.978 ms 1.986 ms 13.996 ms
-4 bldg6-bldg4 (172.30.4.49) 2.655 ms 3.042 ms 2.344 ms
-5 ferbldg11a-001 (172.29.1.236) 2.636 ms 3.432 ms 3.830 ms
-6 frbldg12b-153 (172.29.153.72) 3.452 ms 3.146 ms 2.962 ms
-7 sanfrancisco (172.29.64.39) 3.430 ms 3.312 ms 3.451 ms
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRUsing the \fBtraceroute\fR Utility With Source Routing
-.sp
-.LP
-The following example shows the path of a packet that goes from istanbul to
-sanfrancisco through the hosts cairo and paris, as specified by the \fB-g\fR
-option. The \fB-I\fR option makes \fBtraceroute\fR send \fBICMP\fR \fBECHO\fR
-probes to the host sanfrancisco. The \fB-i\fR options sets the source address
-to the \fBIP\fR address configured on the interface \fBqe0\fR.
-
-.sp
-.in +2
-.nf
-istanbul% \fBtraceroute -g cairo -g paris -i qe0 -q 1 -I sanfrancisco\fR
-traceroute to sanfrancisco (172.29.64.39), 30 hops max, 56 byte packets
-1 frbldg7c-86 (172.31.86.1) 2.012 ms
-2 flrbldg7u (172.31.17.131) 4.960 ms
-3 cairo (192.168.163.175) 4.894 ms
-4 flrbldg7u (172.31.17.131) 3.475 ms
-5 frbldg7c-017 (172.31.17.83) 4.126 ms
-6 paris (172.31.86.31) 4.086 ms
-7 frbldg7b-82 (172.31.82.1) 6.454 ms
-8 bldg1a-001 (172.31.1.211) 6.541 ms
-9 bldg6-bldg4 (172.30.4.49) 6.518 ms
-10 ferbldg11a-001 (172.29.1.236) 9.108 ms
-11 frbldg12b-153 (172.29.153.72) 9.634 ms
-12 sanfrancisco (172.29.64.39) 14.631 ms
-
-
-.fi
-.in -2
-.sp
-
-.SH EXIT STATUS
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.sp .6
-.RS 4n
-Successful operation.
-.RE
-
-.sp
-.ne 2
-.na
-\fB>\fB0\fR\fR
-.ad
-.sp .6
-.RS 4n
-An error occurred.
-.RE
-
-.SH SEE ALSO
-\fBnetstat\fR(1M), \fBsignal\fR(3C), \fBping\fR(1M), \fBattributes\fR(5),
-\fBprivileges\fR(5), \fBzones\fR(5)
-.SH WARNINGS
-This utility is intended for use in network testing, measurement and
-management. It should be used primarily for manual fault isolation. Because of
-the load it could impose on the network, it is unwise to use
-\fBtraceroute\fR(1M) during normal operations or from automated scripts.
diff --git a/usr/src/man/man1m/trapstat.1m b/usr/src/man/man1m/trapstat.1m
deleted file mode 100644
index 5ad30a6ba9..0000000000
--- a/usr/src/man/man1m/trapstat.1m
+++ /dev/null
@@ -1,651 +0,0 @@
-'\" te
-.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH TRAPSTAT 1M "April 9, 2016"
-.SH NAME
-trapstat \- report trap statistics
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/trapstat\fR [\fB-t\fR | \fB-T\fR | \fB-e\fR \fIentry\fR]
- [\fB-C\fR \fIprocessor_set_id\fR | \fB-c\fR \fIcpulist\fR] [\fB-P\fR] [\fB-a\fR]
- [\fB-r\fR \fIrate\fR] [ [\fIinterval\fR [\fIcount\fR]] | \fIcommand\fR | [\fIargs\fR]]
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/trapstat\fR \fB-l\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBtrapstat\fR utility gathers and displays run-time trap statistics on
-UltraSPARC-based systems. The default output is a table of trap types and
-\fBCPU\fR \fBID\fRs, with each row of the table denoting a trap type and each
-column of the table denoting a \fBCPU\fR. If standard output is a terminal, the
-table contains as many columns of data as can fit within the terminal width; if
-standard output is not a terminal, the table contains at most six columns of
-data. By default, data is gathered and displayed for all \fBCPU\fRs; if the
-data cannot fit in a single table, it is printed across multiple tables. The
-set of \fBCPU\fRs for which data is gathered and displayed can be optionally
-specified with the \fB-c\fR or \fB-C\fR option.
-.sp
-.LP
-Unless the \fB-r\fR option or the \fB-a\fR option is specified, the value
-displayed in each entry of the table corresponds to the number of traps per
-second. If the \fB-r\fR option is specified, the value corresponds to the
-number of traps over the interval implied by the specified sampling rate; if
-the \fB-a\fR option is specified, the value corresponds to the accumulated
-number of traps since the invocation of \fBtrapstat\fR.
-.sp
-.LP
-By default, \fBtrapstat\fR displays data once per second, and runs
-indefinitely; both of these behaviors can be optionally controlled with the
-\fIinterval\fR and \fIcount\fR parameters, respectively. The \fIinterval\fR is
-specified in seconds; the \fIcount\fR indicates the number of intervals to be
-executed before exiting. Alternatively, \fBcommand\fR can be specified, in
-which case \fBtrapstat\fR executes the provided command and continues to run
-until the command exits. A positive integer is assumed to be an \fIinterval\fR;
-if the desired \fB\fIcommand\fR\fR cannot be distinguished from an integer, the
-full path of \fIcommand\fR must be specified.
-.sp
-.LP
-UltraSPARC I (obsolete), II, and III handle translation lookaside buffer (TLB)
-misses by trapping to the operating system. TLB miss traps can be a significant
-component of overall system performance for some workloads; the \fB-t\fR option
-provides in-depth information on these traps. When run with this option,
-\fBtrapstat\fR displays both the rate of TLB miss traps \fI\fR and the
-percentage of time spent processing those traps. Additionally, TLB misses that
-hit in the translation storage buffer (TSB) are differentiated from TLB misses
-that further miss in the TSB. (The TSB is a software structure used as a
-translation entry cache to allow the TLB to be quickly filled; it is discussed
-in detail in the \fIUltraSPARC II User's Manual\fR.) The TLB and TSB miss
-information is further broken down into user- and kernel-mode misses.
-.sp
-.LP
-Workloads with working sets that exceed the TLB reach may spend a significant
-amount of time missing in the TLB. To accommodate such workloads, the operating
-system supports multiple page sizes: larger page sizes increase the effective
-TLB reach and thereby reduce the number of TLB misses. To provide insight into
-the relationship between page size and TLB miss rate, \fBtrapstat\fR optionally
-provides in-depth TLB miss information broken down by page size using the
-\fB-T\fR option. The information provided by the \fB-T\fR option is a superset
-of that provided by the \fB-t\fR option; only one of \fB-t\fR and \fB-T\fR can
-be specified.
-.SH OPTIONS
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-a\fR\fR
-.ad
-.RS 24n
-Displays the number of traps as accumulating, monotonically increasing values
-instead of per-second or per-interval rates.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-c\fR \fIcpulist\fR \fR
-.ad
-.RS 24n
-Enables \fBtrapstat\fR only on the \fBCPU\fRs specified by \fIcpulist\fR.
-.sp
-\fIcpulist\fR can be a single processor \fBID\fR (for example, \fB4\fR), a
-range of processor\fB ID\fRs (for example, \fB4-6\fR), or a comma separated
-list of processor\fB ID\fRs or processor \fBID\fR ranges (for example,
-\fB4,5,6\fR or \fB4,6-8\fR).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-C\fR \fIprocessor_set_id\fR \fR
-.ad
-.RS 24n
-Enables \fBtrapstat\fR only on the \fBCPU\fRs in the processor set specified by
-\fIprocessor_set_id\fR.
-.sp
-\fBtrapstat\fR modifies its output to always reflect the \fBCPU\fRs in the
-specified processor set. If a \fBCPU\fR is added to the set, \fBtrapstat\fR
-modifies its output to include the added \fBCPU\fR; if a \fBCPU\fR is removed
-from the set, \fBtrapstat\fR modifies its output to exclude the removed CPU. At
-most one processor set can be specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-e\fR \fIentrylist\fR \fR
-.ad
-.RS 24n
-Enables \fBtrapstat\fR only for the trap table entry or entries specified by
-\fIentrylist\fR. A trap table entry can be specified by trap number or by trap
-name (for example, the level-10 trap can be specified as \fB74\fR, \fB0x4A\fR,
-\fB0x4a\fR, or \fBlevel-10\fR).
-.sp
-\fIentrylist\fR can be a single trap table entry or a comma separated list of
-trap table entries. If the specified trap table entry is not valid,
-\fBtrapstat\fR prints a table of all valid trap table entries and values. A
-list of valid trap table entries is also found in \fIThe SPARC Architecture
-Manual, Version 9\fR and the \fISun Microelectronics UltraSPARC II User's
-Manual.\fR If the parsable option (\fB-P\fR) is specified in addition to the
-\fB-e\fR option, the format of the data is as follows:
-.sp
-
-.sp
-.TS
-c c
-l l .
-Field Contents
-1 Timestamp (nanoseconds since start)
-2 CPU ID
-3 Trap number (in hexadecimal)
-4 Trap name
-5 Trap rate per interval
-.TE
-
-Each field is separated with whitespace. If the format is modified, it will be
-modified by adding potentially new fields beginning with field 6; exant fields
-will remain unchanged.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR \fR
-.ad
-.RS 24n
-Lists trap table entries. By default, a table is displayed containing all valid
-trap numbers, their names and a brief description. The trap name is used in
-both the default output and in the \fIentrylist\fR parameter for the \fB-e\fR
-argument. If the parsable option (\fB-P\fR) is specified in addition to the
-\fB-l\fR option, the format of the data is as follows:
-.sp
-
-.sp
-.TS
-c c
-l l .
-Field Contents
-1 Trap number in hexadecimal
-2 Trap number in decimal
-3 Trap name
-Remaining Trap description
-.TE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-P\fR \fR
-.ad
-.RS 24n
-Generates parsable output. When run without other data gathering modifying
-options (that is, \fB-e\fR, \fB-t\fR or \fB-T\fR), \fBtrapstat\fR's the
-parsable output has the following format:
-.sp
-
-.sp
-.TS
-c c
-l l .
-Field Contents
-1 Timestamp (nanoseconds since start)
-2 CPU ID
-3 Trap number (in hexadecimal)
-4 Trap name
-5 Trap rate per interval
-.TE
-
-Each field is separated with whitespace. If the format is modified, it will be
-modified by adding potentially new fields beginning with field 6; extant fields
-will remain unchanged.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-r\fR \fIrate\fR \fR
-.ad
-.RS 24n
-Explicitly sets the sampling rate to be \fIrate\fR samples per second. If this
-option is specified, \fBtrapstat\fR's output changes from a traps-per-second to
-traps-per-sampling-interval.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-t\fR\fR
-.ad
-.RS 24n
-Enables TLB statistics.
-.sp
-A table is displayed with four principal columns of data: \fIitlb-miss\fR,
-\fIitsb-miss\fR, \fIdtlb-miss\fR, and \fIdtsb-miss\fR. The columns contain both
-the rate of the corresponding event and the percentage of \fBCPU\fR time spent
-processing the event. The percentage of \fBCPU\fR time is given only in terms
-of a single \fBCPU\fR. The rows of the table correspond to \fBCPU\fRs, with
-each \fBCPU\fR consuming two rows: one row for user-mode events (denoted with
-\fBu\fR) and one row for kernel-mode events (denoted with \fBk\fR). For each
-row, the percentage of \fBCPU\fR time is totalled and displayed in the
-rightmost column. The \fBCPU\fRs are delineated with a solid line. If the
-parsable option (\fB-P\fR) is specified in addition to the \fB-t\fR option, the
-format of the data is as follows:
-.sp
-
-.sp
-.TS
-c c
-l l .
-Field Contents
-1 Timestamp (nanoseconds since start)
-2 CPU ID
-3 Mode (\fBk\fR denotes kernel, \fBu\fR denotes user)
-4 I-TLB misses
-5 Percentage of time in I-TLB miss handler
-6 I-TSB misses
-7 Percentage of time in I-TSB miss handler
-8 D-TLB misses
-9 Percentage of time in D-TLB miss handler
-10 D-TSB misses
-11 Percentage of time in D-TSB miss handler
-.TE
-
-Each field is separated with whitespace. If the format is modified, it will be
-modified by adding potentially new fields beginning with field 12; extant
-fields will remain unchanged.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-T\fR \fR
-.ad
-.RS 24n
-Enables \fBTLB\fR statistics, with page size information. As with the \fB-t\fR
-option, a table is displayed with four principal columns of data:
-\fIitlb-miss\fR, \fIitsb-miss\fR, \fIdtlb-miss\fR, and \fIdtsb-miss\fR. The
-columns contain both the absolute number of the corresponding event, and the
-percentage of \fBCPU\fR time spent processing the event. The percentage of
-\fBCPU\fR time is given only in terms of a single \fBCPU\fR. The rows of the
-table correspond to \fBCPU\fRs, with each \fBCPU\fR consuming two sets of rows:
-one set for user-level events (denoted with \fBu\fR) and one set for
-kernel-level events (denoted with \fBk\fR). Each set, in turn, contains as many
-rows as there are page sizes supported (see \fBgetpagesizes\fR(3C)). For each
-row, the percentage of \fBCPU\fR time is totalled and displayed in the
-right-most column. The two sets are delineated with a dashed line; CPUs are
-delineated with a solid line. If the parsable option (\fB-P\fR) is specified in
-addition to the \fB-T\fR option, the format of the data is as follows:
-.sp
-
-.sp
-.TS
-c c
-l l .
-Field Contents
-1 Timestamp (nanoseconds since start)
-2 CPU ID
-3 Mode \fBk\fR denotes kernel, \fBu\fR denotes user)
-4 Page size, in decimal
-5 I-TLB misses
-6 Percentage of time in I-TLB miss handler
-7 I-TSB misses
-8 Percentage of time in I-TSB miss handler
-9 D-TLB misses
-10 Percentage of time in D-TLB miss handler
-11 D-TSB misses
-12 Percentage of time in D-TSB miss handler
-.TE
-
-Each field is separated with whitespace. If the format is modified, it will be
-modified by adding potentially new fields beginning with field 13; extant
-fields will remain unchanged.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRUsing \fBtrapstat\fR Without Options
-.sp
-.LP
-When run without options, \fBtrapstat\fR displays a table of trap types and
-CPUs. At most six columns can fit in the default terminal width; if (as in this
-example) there are more than six CPUs, multiple tables are displayed:
-
-.sp
-.in +2
-.nf
-example# \fBtrapstat\fR
-vct name | cpu0 cpu1 cpu4 cpu5 cpu8 cpu9
-------------------------+------------------------------------------------------
- 24 cleanwin | 6446 4837 6368 2153 2623 1321
- 41 level-1 | 100 0 0 0 1 0
- 44 level-4 | 0 1 1 1 0 0
- 45 level-5 | 0 0 0 0 0 0
- 47 level-7 | 0 0 0 0 9 0
- 49 level-9 | 100 100 100 100 100 100
- 4a level-10 | 100 0 0 0 0 0
- 4d level-13 | 6 10 7 16 13 11
- 4e level-14 | 100 0 0 0 1 0
- 60 int-vec | 2607 2740 2642 2922 2920 3033
- 64 itlb-miss | 3129 2475 3167 1037 1200 569
- 68 dtlb-miss | 121061 86162 109838 37386 45639 20269
- 6c dtlb-prot | 997 847 1061 379 406 184
- 84 spill-user-32 | 2809 2133 2739 200806 332776 454504
- 88 spill-user-64 | 45819 207856 93487 228529 68373 77590
- 8c spill-user-32-cln | 784 561 767 274 353 215
- 90 spill-user-64-cln | 9 37 17 39 12 13
- 98 spill-kern-64 | 62913 50145 63869 21916 28431 11738
- a4 spill-asuser-32 | 1327 947 1288 460 572 335
- a8 spill-asuser-64 | 26 48 18 54 10 14
- ac spill-asuser-32-cln | 4580 3599 4555 1538 1978 857
- b0 spill-asuser-64-cln | 26 0 0 2 0 0
- c4 fill-user-32 | 2862 2161 2798 191746 318115 435850
- c8 fill-user-64 | 45813 197781 89179 217668 63905 74281
- cc fill-user-32-cln | 3802 2833 3733 10153 16419 19475
- d0 fill-user-64-cln | 329 10105 4873 10603 4235 3649
- d8 fill-kern-64 | 62519 49943 63611 21824 28328 11693
-108 syscall-32 | 2285 1634 2278 737 957 383
-126 self-xcall | 100 0 0 0 0 0
-
-vct name | cpu12 cpu13 cpu14 cpu15
-------------------------+------------------------------------
- 24 cleanwin | 5435 4232 6302 6104
- 41 level-1 | 0 0 0 0
- 44 level-4 | 2 0 0 1
- 45 level-5 | 0 0 0 0
- 47 level-7 | 0 0 0 0
- 49 level-9 | 100 100 100 100
- 4a level-10 | 0 0 0 0
- 4d level-13 | 15 11 22 11
- 4e level-14 | 0 0 0 0
- 60 int-vec | 2813 2833 2738 2714
- 64 itlb-miss | 2636 1925 3133 3029
- 68 dtlb-miss | 90528 70639 107786 103425
- 6c dtlb-prot | 819 675 988 954
- 84 spill-user-32 | 175768 39933 2811 2742
- 88 spill-user-64 | 0 241348 96907 118298
- 8c spill-user-32-cln | 681 513 753 730
- 90 spill-user-64-cln | 0 42 16 20
- 98 spill-kern-64 | 52158 40914 62305 60141
- a4 spill-asuser-32 | 1113 856 1251 1208
- a8 spill-asuser-64 | 0 64 16 24
- ac spill-asuser-32-cln | 3816 2942 4515 4381
- b0 spill-asuser-64-cln | 0 0 0 0
- c4 fill-user-32 | 170744 38444 2876 2784
- c8 fill-user-64 | 0 230381 92941 111694
- cc fill-user-32-cln | 8550 3790 3612 3553
- d0 fill-user-64-cln | 0 10726 4495 5845
- d8 fill-kern-64 | 51968 40760 62053 59922
-108 syscall-32 | 1839 1495 2144 2083
-126 self-xcall | 0 0 0 0
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRUsing \fBtrapset\fR with CPU Filtering
-.sp
-.LP
- The \fB-c\fR option can be used to limit the \fBCPU\fRs on which
-\fBtrapstat\fR is enabled. This example limits \fBCPU 1\fR and \fBCPU\fRs
-\fB12\fR through \fB15\fR.
-
-.sp
-.in +2
-.nf
-example# \fBtrapstat -c 1,12-15\fR
-
-
-vct name | cpu1 cpu12 cpu13 cpu14 cpu15
-------------------------+---------------------------------------------
- 24 cleanwin | 6923 3072 2500 3518 2261
- 44 level-4 | 3 0 0 1 1
- 49 level-9 | 100 100 100 100 100
- 4d level-13 | 23 8 14 19 14
- 60 int-vec | 2559 2699 2752 2688 2792
- 64 itlb-miss | 3296 1548 1174 1698 1087
- 68 dtlb-miss | 114788 54313 43040 58336 38057
- 6c dtlb-prot | 1046 549 417 545 370
- 84 spill-user-32 | 66551 29480 301588 26522 213032
- 88 spill-user-64 | 0 318652 111239 299829 221716
- 8c spill-user-32-cln | 856 347 331 416 293
- 90 spill-user-64-cln | 0 55 21 59 39
- 98 spill-kern-64 | 66464 31803 24758 34004 22277
- a4 spill-asuser-32 | 1423 569 560 698 483
- a8 spill-asuser-64 | 0 74 32 98 46
- ac spill-asuser-32-cln | 4875 2250 1728 2384 1584
- b0 spill-asuser-64-cln | 0 2 0 1 0
- c4 fill-user-32 | 64193 28418 287516 27055 202093
- c8 fill-user-64 | 0 305016 106692 288542 210654
- cc fill-user-32-cln | 6733 3520 15185 2396 12035
- d0 fill-user-64-cln | 0 13226 3506 12933 11032
- d8 fill-kern-64 | 66220 31680 24674 33892 22196
-108 syscall-32 | 2446 967 817 1196 755
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRUsing \fBtrapstat\fR with TLB Statistics
-.sp
-.LP
-The \fB-t\fR option displays in-depth \fBTLB\fR statistics, including the
-amount of time spent performing \fBTLB\fR miss processing. The following
-example shows that the machine is spending 14.1 percent of its time just
-handling D-TLB misses:
-
-.sp
-.in +2
-.nf
-example# \fBtrapstat -t\fR
-cpu m| itlb-miss %tim itsb-miss %tim | dtlb-miss %tim dtsb-miss %tim |%tim
------+-------------------------------+-------------------------------+----
- 0 u| 2571 0.3 0 0.0 | 10802 1.3 0 0.0 | 1.6
- 0 k| 0 0.0 0 0.0 | 106420 13.4 184 0.1 |13.6
------+-------------------------------+-------------------------------+----
- 1 u| 3069 0.3 0 0.0 | 10983 1.2 100 0.0 | 1.6
- 1 k| 27 0.0 0 0.0 | 106974 12.6 19 0.0 |12.7
------+-------------------------------+-------------------------------+----
- 2 u| 3033 0.3 0 0.0 | 11045 1.2 105 0.0 | 1.6
- 2 k| 43 0.0 0 0.0 | 107842 12.7 108 0.0 |12.8
------+-------------------------------+-------------------------------+----
- 3 u| 2924 0.3 0 0.0 | 10380 1.2 121 0.0 | 1.6
- 3 k| 54 0.0 0 0.0 | 102682 12.2 16 0.0 |12.2
------+-------------------------------+-------------------------------+----
- 4 u| 3064 0.3 0 0.0 | 10832 1.2 120 0.0 | 1.6
- 4 k| 31 0.0 0 0.0 | 107977 13.0 236 0.1 |13.1
-=====+===============================+===============================+====
- ttl | 14816 0.3 0 0.0 | 585937 14.1 1009 0.0 |14.5
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 4 \fRUsing \fBtrapstat\fR with TLB Statistics and Page Size
-Information
-.sp
-.LP
-By specifying the \fB-T\fR option, \fBtrapstat\fR shows \fBTLB\fR misses broken
-down by page size. In this example, CPU 0 is spending 7.9 percent of its time
-handling user-mode TLB misses on 8K pages, and another 2.3 percent of its time
-handling user-mode TLB misses on 64K pages.
-
-.sp
-.in +2
-.nf
-example# \fBtrapstat -T -c 0\fR
-cpu m size| itlb-miss %tim itsb-miss %tim | dtlb-miss %tim dtsb-miss %tim |%tim
-----------+-------------------------------+-------------------------------+----
- 0 u 8k| 1300 0.1 15 0.0 | 104897 7.9 90 0.0 | 8.0
- 0 u 64k| 0 0.0 0 0.0 | 29935 2.3 7 0.0 | 2.3
- 0 u 512k| 0 0.0 0 0.0 | 3569 0.2 2 0.0 | 0.2
- 0 u 4m| 0 0.0 0 0.0 | 233 0.0 2 0.0 | 0.0
-- - - - - + - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - + - -
- 0 k 8k| 13 0.0 0 0.0 | 71733 6.5 110 0.0 | 6.5
- 0 k 64k| 0 0.0 0 0.0 | 0 0.0 0 0.0 | 0.0
- 0 k 512k| 0 0.0 0 0.0 | 0 0.0 206 0.1 | 0.1
- 0 k 4m| 0 0.0 0 0.0 | 0 0.0 0 0.0 | 0.0
-==========+===============================+===============================+====
- ttl | 1313 0.1 15 0.0 | 210367 17.1 417 0.2 |17.5
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 5 \fRUsing \fBtrapstat\fR with Entry Filtering
-.sp
-.LP
-By specifying the \fB-e\fR option, \fBtrapstat\fR displays statistics for only
-specific trap types. Using this option minimizes the probe effect when seeking
-specific data. This example yields statistics for only the \fIdtlb-prot\fR and
-\fIsyscall-32\fR traps on CPUs 12 through 15:
-
-.sp
-.in +2
-.nf
-example# \fBtrapstat -e dtlb-prot,syscall-32 -c 12-15\fR
-vct name | cpu12 cpu13 cpu14 cpu15
-------------------------+------------------------------------
- 6c dtlb-prot | 817 754 1018 560
-108 syscall-32 | 1426 1647 2186 1142
-
-vct name | cpu12 cpu13 cpu14 cpu15
-------------------------+------------------------------------
- 6c dtlb-prot | 1085 996 800 707
-108 syscall-32 | 2578 2167 1638 1452
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 6 \fRUsing \fBtrapstat\fR with a Higher Sampling Rate
-.sp
-.LP
-The following example uses the \fB-r\fR option to specify a sampling rate of
-1000 samples per second, and filter only for the level-10 trap. Additionally,
-specifying the \fB-P\fR option yields parsable output.
-
-.sp
-.LP
-Notice the timestamp difference between the level-10 events: 9,998,000
-nanoseconds and 10,007,000 nanoseconds. These level-10 events correspond to the
-system clock, which by default ticks at 100 hertz (that is, every 10,000,000
-nanoseconds).
-
-.sp
-.in +2
-.nf
-example# \fBtrapstat -e level-10 -P -r 1000\fR
-1070400 0 4a level-10 0
-2048600 0 4a level-10 0
-3030400 0 4a level-10 1
-4035800 0 4a level-10 0
-5027200 0 4a level-10 0
-6027200 0 4a level-10 0
-7027400 0 4a level-10 0
-8028200 0 4a level-10 0
-9026400 0 4a level-10 0
-10029600 0 4a level-10 0
-11028600 0 4a level-10 0
-12024000 0 4a level-10 0
-13028400 0 4a level-10 1
-14031200 0 4a level-10 0
-15027200 0 4a level-10 0
-16027600 0 4a level-10 0
-17025000 0 4a level-10 0
-18026000 0 4a level-10 0
-19027800 0 4a level-10 0
-20025600 0 4a level-10 0
-21025200 0 4a level-10 0
-22025000 0 4a level-10 0
-23035400 0 4a level-10 1
-24027400 0 4a level-10 0
-25026000 0 4a level-10 0
-26027000 0 4a level-10 0
-.fi
-.in -2
-.sp
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c c
-l l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-Interface Stability
- Human Readable Output Unstable
- Parsable Output Evolving
-.TE
-
-.SH SEE ALSO
-.LP
-\fBlockstat\fR(1M), \fBpmap\fR(1), \fBpsrset\fR(1M), \fBpsrinfo\fR(1M),
-\fBpbind\fR(1M), \fBppgsz\fR(1), \fBgetpagesizes\fR(3C)
-.sp
-.LP
-\fISun Microelectronics UltraSPARC II User's Manual,\fR January 1997, STP1031,
-.sp
-.LP
-\fIThe SPARC Architecture Manual, Version 9,\fR 1994, Prentice-Hall.
-.SH NOTES
-.LP
-When enabled, \fBtrapstat\fR induces a varying probe effect, depending on the
-type of information collected. While the precise probe effect depends upon the
-specifics of the hardware, the following table can be used as a rough guide:
-.sp
-
-.sp
-.TS
-c c
-l l .
-Option Approximate probe effect
-default 3-5% per trap
-\fB-e\fR 3-5% per specified trap
-\fB-t\fR, \fB-T\fR T{
-40-45% per TLB miss trap hitting in the TSB, 25-30% per TLB miss trap missing in the TSB
-T}
-.TE
-
-.sp
-.LP
-These probe effects are \fIper trap\fR not for the system as a whole. For
-example, running \fBtrapstat\fR with the default options on a system that
-spends 7% of total time handling traps induces a performance degradation of
-less than one half of one percent; running \fBtrapstat\fR with the \fB-t\fR or
-\fB-T\fR option on a system spending 5% of total time processing TLB misses
-induce a performance degradation of no more than 2.5%.
-.sp
-.LP
-When run with the \fB-t\fR or \fB-T\fR option, \fBtrapstat\fR accounts for its
-probe effect when calculating the \fI%tim\fR fields. This assures that the
-\fI%tim\fR fields are a reasonably accurate indicator of the time a given
-workload is spending handling TLB misses \(em regardless of the perturbing
-presence of \fBtrapstat\fR.
-.sp
-.LP
-While the \fI%tim\fR fields include the explicit cost of executing the TLB miss
-handler, they do \fInot\fR include the implicit costs of TLB miss traps (for
-example, pipeline effects, cache pollution, etc). These implicit costs become
-more significant as the trap rate grows; if high \fI%tim\fR values are reported
-(greater than 50%), you can accurately infer that much of the balance of time
-is being spent on the implicit costs of the TLB miss traps.
-.sp
-.LP
-Due to the potential system wide degradation induced, only the super-user can
-run \fBtrapstat\fR.
-.sp
-.LP
-Due to the limitation of the underlying statistics gathering methodology, only
-one instance of \fBtrapstat\fR can run at a time.
diff --git a/usr/src/man/man1m/ttyadm.1m b/usr/src/man/man1m/ttyadm.1m
deleted file mode 100644
index 15772190f7..0000000000
--- a/usr/src/man/man1m/ttyadm.1m
+++ /dev/null
@@ -1,223 +0,0 @@
-'\" te
-.\" Copyright (c) 1996, Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH TTYADM 1M "Sep 14, 1992"
-.SH NAME
-ttyadm \- format and output port monitor-specific information
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/ttyadm\fR [\fB-b\fR] [\fB-c\fR] [\fB-h\fR] [\fB-I\fR] [\fB-r\fR \fIcount\fR] [\fB-i\fR \fImsg\fR]
- [\fB-m\fR \fImodules\fR] [\fB-p\fR \fIprompt\fR] [\fB-t\fR \fItimeout\fR] [\fB-S\fR y | n]
- [\fB-T\fR \fItermtype\fR] \fB-d\fR \fIdevice\fR \fB-l\fR \fIttylabel\fR \fB-s\fR \fIservice\fR
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/ttyadm\fR \fB-V\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBttyadm\fR command is an administrative command that formats
-\fBttymon\fR(1M)-specific information and writes it to standard output. The
-Service Access Facility (SAF) requires each port monitor to provide such a
-command. Note that the port monitor administrative file is updated by the
-Service Access Controller's administrative commands, \fBsacadm\fR(1M) and
-\fBpmadm\fR(1M). \fBttyadm\fR provides a means of presenting formatted port
-monitor-specific (\fBttymon\fR-specific) data to these commands.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-b\fR\fR
-.ad
-.RS 15n
-Set the ``bi-directional port'' flag. When this flag is set, the line can be
-used in both directions. \fBttymon\fR will allow users to connect to the
-service associated with the port, but if the port is free, \fBuucico\fR(1M),
-\fBcu\fR(1C), or \fBct\fR(1C) can use it for dialing out.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-c\fR\fR
-.ad
-.RS 15n
-Set the connect-on-carrier flag for the port. If the \fB-c\fR flag is set,
-\fBttymon\fR will invoke the port's associated service immediately when a
-connect indication is received (that is, no prompt is printed and no baud-rate
-searching is done).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-d\fR\fI device\fR\fR
-.ad
-.RS 15n
-\fIdevice\fR is the full pathname of the device file for the TTY port.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-h\fR\fR
-.ad
-.RS 15n
-Set the hangup flag for the port. If the \fB-h\fR flag is not set, \fBttymon\fR
-will force a hangup on the line by setting the speed to \fB0\fR before setting
-the speed to the default or specified value.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-i\fR\fI message\fR\fR
-.ad
-.RS 15n
-Specify the inactive (disabled) response message. This message will be sent to
-the TTY port if the port is disabled or the \fBttymon\fR monitoring the port is
-disabled.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-I\fR\fR
-.ad
-.RS 15n
-Initialize only. If the \fB-I\fR option is used, \fBttymon\fR will invoke the
-service only once. This can be used to configure a particular device without
-actually monitoring it, as with software carrier.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR\fI ttylabel\fR\fR
-.ad
-.RS 15n
-Specify which \fIttylabel\fR in the \fB/etc/ttydefs\fR file to use as the
-starting point when searching for the proper baud rate.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-m\fR\fI modules\fR\fR
-.ad
-.RS 15n
-Specify a list of pushable STREAMS modules. The modules will be pushed in the
-order in which they are specified before the service is invoked. \fImodules\fR
-must be a comma-separated list of modules, with no white space included. Any
-modules currently on the stream will be popped before these modules are
-pushed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR\fI prompt\fR\fR
-.ad
-.RS 15n
-Specify the prompt message, for example, ``\fBlogin:\fR''.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-r\fR\fI count\fR\fR
-.ad
-.RS 15n
-When the \fB-r\fR option is invoked, \fBttymon\fR will wait until it receives
-data from the port before it displays a prompt. If \fIcount\fR is \fB0\fR,
-\fBttymon\fR will wait until it receives any character. If \fIcount\fR is
-greater than \fB0\fR, \fBttymon\fR will wait until \fIcount\fR newlines have
-been received.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR\fI service\fR\fR
-.ad
-.RS 15n
-\fIservice\fR is the full pathname of the service to be invoked when a
-connection request is received. If arguments are required, the command and its
-arguments must be enclosed in double quotes (" ").
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-S\fR \fBy|n\fR\fR
-.ad
-.RS 15n
-Set the software carrier value. \fBy\fR will turn software carrier on. \fBn\fR
-will turn software carrier off.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-t\fR\fI timeout\fR\fR
-.ad
-.RS 15n
-Specify that \fBttymon\fR should close a port if the open on the port succeeds,
-and no input data is received in \fItimeout\fR seconds.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-T\fR\fI termtype\fR\fR
-.ad
-.RS 15n
-Set the terminal type. The \fBTERM\fR environment variable will be set to
-\fItermtype\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-V\fR\fR
-.ad
-.RS 15n
-Display the version number of the current \fB/usr/lib/saf/ttymon\fR command.
-.RE
-
-.SH OUTPUT
-.sp
-.LP
-If successful, \fBttyadm\fR will generate the requested information, write it
-to standard output, and exit with a status of \fB0\fR. If \fBttyadm\fR is
-invoked with an invalid number of arguments or invalid arguments, or if an
-incomplete option is specified, an error message will be written to standard
-error and \fBttymon\fR will exit with a non-zero status.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/ttydefs\fR\fR
-.ad
-.RS 16n
-
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBct\fR(1C), \fBcu\fR(1C), \fBpmadm\fR(1M), \fBsacadm\fR(1M),
-\fBttymon\fR(1M), \fBuucico\fR(1M), \fBattributes\fR(5)
-.sp
-.LP
-\fI\fR
diff --git a/usr/src/man/man1m/ttymon.1m b/usr/src/man/man1m/ttymon.1m
deleted file mode 100644
index bf36448ff9..0000000000
--- a/usr/src/man/man1m/ttymon.1m
+++ /dev/null
@@ -1,327 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T
-.\" Copyright (C) 2004, Sun Microsystems, Inc.
-.\" All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH TTYMON 1M "Feb 22, 2005"
-.SH NAME
-ttymon \- port monitor for terminal ports
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/saf/ttymon\fR
-.fi
-
-.LP
-.nf
-\fB/usr/lib/saf/ttymon\fR \fB-g\fR [\fB-d\fR \fIdevice\fR] [\fB-h\fR] [\fB-t\fR \fItimeout\fR]
- [\fB-l\fR \fIttylabel\fR] [\fB-p\fR \fIprompt\fR] [\fB-m\fR \fImodules\fR] [\fB-T\fR \fItermtype\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBttymon\fR is a STREAMS-based TTY port monitor. Its function is to monitor
-ports, to set terminal modes, baud rates, and line disciplines for the ports,
-and to connect users or applications to services associated with the ports.
-Normally, \fBttymon\fR is configured to run under the Service Access
-Controller, \fBsac\fR(1M), as part of the Service Access Facility (SAF). It is
-configured using the \fBsacadm\fR(1M) command. Each instance of \fBttymon\fR
-can monitor multiple ports. The ports monitored by an instance of \fBttymon\fR
-are specified in the port monitor's administrative file. The administrative
-file is configured using the \fBpmadm\fR(1M) and \fBttyadm\fR(1M) commands.
-When an instance of \fBttymon\fR is invoked by the \fBsac\fR command, it starts
-to monitor its ports. For each port, \fBttymon\fR first initializes the line
-disciplines, if they are specified, and the speed and terminal settings. For
-ports with entries in \fB/etc/logindevperm\fR, device owner, group and
-permissions are set. (See \fBlogindevperm\fR(4).) The values used for
-initialization are taken from the appropriate entry in the TTY settings file.
-This file is maintained by the \fBsttydefs\fR(1M) command. Default line
-disciplines on ports are usually set up by the \fBautopush\fR(1M) command of
-the Autopush Facility.
-.sp
-.LP
-\fBttymon\fR then writes the prompt and waits for user input. If the user
-indicates that the speed is inappropriate by pressing the BREAK key,
-\fBttymon\fR tries the next speed and writes the prompt again. When valid input
-is received, \fBttymon\fR interprets the per-service configuration file for the
-port, if one exists, creates a \fButmpx\fR entry if required (see
-\fButmpx\fR(4)), establishes the service environment, and then invokes the
-service associated with the port. Valid input consists of a string of at least
-one non-newline character, terminated by a carriage return. After the service
-terminates, \fBttymon\fR cleans up the \fButmpx\fR entry, if one exists, and
-returns the port to its initial state.
-.sp
-.LP
-If \fIautobaud\fR is enabled for a port, \fBttymon\fR will try to determine the
-baud rate on the port automatically. Users must enter a carriage return before
-\fBttymon\fR can recognize the baud rate and print the prompt. Currently, the
-baud rates that can be determined by \fIautobaud\fR are \fB110\fR, \fB1200\fR,
-\fB2400\fR, \fB4800\fR, and \fB9600\fR.
-.sp
-.LP
-If a port is configured as a bidirectional port, \fBttymon\fR will allow users
-to connect to a service, and, if the port is free, will allow \fBuucico\fR(1M),
-\fBcu\fR(1C), or \fBct\fR(1C) to use it for dialing out. If a port is
-bidirectional, \fBttymon\fR will wait to read a character before it prints a
-prompt.
-.sp
-.LP
-If the \fIconnect-on-carrier\fR flag is set for a port, \fBttymon\fR will
-immediately invoke the port's associated service when a connection request is
-received. The prompt message will not be sent.
-.sp
-.LP
-If a port is disabled, \fBttymon\fR will not start any service on that port. If
-a disabled message is specified, \fBttymon\fR will send out the disabled
-message when a connection request is received. If \fBttymon\fR is disabled, all
-ports under that instance of \fBttymon\fR will also be disabled.
-.SS "Service Invocation"
-.sp
-.LP
-The service \fBttymon\fR invokes for a port is specified in the \fBttymon\fR
-administrative file. \fBttymon\fR will scan the character string giving the
-service to be invoked for this port, looking for a \fB%d\fR or a \fB%%\fR
-two-character sequence. If \fB%d\fR is found, \fBttymon\fR will modify the
-service command to be executed by replacing those two characters by the full
-path name of this port (the device name). If \fB%%\fR is found, they will be
-replaced by a single \fB%\fR. When the service is invoked, file descriptor
-\fB0\fR, \fB1\fR, and \fB2\fR are opened to the port device for reading and
-writing. The service is invoked with the user ID, group ID and current home
-directory set to that of the user name under which the service was registered
-with \fBttymon\fR. Two environment variables, \fBHOME\fR and \fBTTYPROMPT\fR,
-are added to the service's environment by \fBttymon\fR. \fBHOME\fR is set to
-the home directory of the user name under which the service is invoked.
-\fBTTYPROMPT\fR is set to the prompt string configured for the service on the
-port. This is provided so that a service invoked by \fBttymon\fR has a means of
-determining if a prompt was actually issued by \fBttymon\fR and, if so, what
-that prompt actually was.
-.sp
-.LP
-See \fBttyadm\fR(1M) for options that can be set for ports monitored by
-\fBttymon\fR under the Service Access Controller.
-.SS "System Console Invocation"
-.sp
-.LP
-The invocation of ttymon on the system console is managed under \fBsmf\fR(5) by
-the service \fBsvc:/system/console-login\fR. It provides a number of properties
-within the property group \fBttymon\fR to control the invocation, as follows:
-.sp
-.in +2
-.nf
-NAME TYPE TTYMON OPTION
-----------------------------------------------------------
-device astring [-d device]
-nohangup boolean [-h]
-label astring [-l label]
-modules astring [-m module1,module2]
-prompt astring [-p prompt]
-timeout count [-t timeout]
-terminal_type astring [-T termtype]
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-If any value is the empty string or an integer set to zero, then the option is
-not passed to the ttymon invocation. The \fB-g\fR option is always specified
-for this invocation. The \fB-d\fR option always defaults to \fB/dev/console\fR
-if it is not set.
-.sp
-.LP
-See \fBEXAMPLES\fR.
-.SH SECURITY
-.sp
-.LP
-\fBttymon\fR uses \fBpam\fR(3PAM) for session management. The \fBPAM\fR
-configuration policy, listed through \fB/etc/pam.conf\fR, specifies the modules
-to be used for \fBttymon\fR. Here is a partial \fBpam.conf\fR file with entries
-for \fBttymon\fR using the UNIX session management module.
-.sp
-.in +2
-.nf
-ttymon session required /usr/lib/security/pam_unix_session.so.1
-.fi
-.in -2
-
-.sp
-.LP
-If there are no entries for the \fBttymon\fR service, then the entries for the
-"other" service will be used.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-g\fR\fR
-.ad
-.RS 14n
-A special invocation of \fBttymon\fR is provided with the \fB-g\fR option. This
-form of the command should only be called by applications that need to set the
-correct baud rate and terminal settings on a port and then connect to
-\fBlogin\fR service, but that cannot be pre-configured under the SAC. The
-following combinations of options can be used with \fB-g\fR:
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-d\fR\fIdevice\fR\fR
-.ad
-.RS 14n
-\fIdevice\fR is the full path name of the port to which \fBttymon\fR is to
-attach. If this option is not specified, file descriptor \fB0\fR must be set up
-by the invoking process to a TTY port.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-h\fR\fR
-.ad
-.RS 14n
-If the -h flag is not set, \fBttymon\fR will force a hangup on the line by
-setting the speed to zero before setting the speed to the default or specified
-speed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR\fIttylabel\fR\fR
-.ad
-.RS 14n
-\fIttylabel\fR is a link to a speed and TTY definition in the \fBttydefs\fR
-file. This definition tells \fBttymon\fR at what speed to run initially, what
-the initial TTY settings are, and what speed to try next if the user indicates
-that the speed is inappropriate by pressing the BREAK key. The default speed is
-9600 baud.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-m\fR\fImodules\fR\fR
-.ad
-.RS 14n
-When initializing the port, \fBttymon\fR will pop all modules on the port, and
-then push \fImodules\fR in the order specified. \fImodules\fR is a
-comma-separated list of pushable modules. Default modules on the ports are
-usually set up by the Autopush Facility.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR\fIprompt\fR\fR
-.ad
-.RS 14n
-Allows the user to specify a prompt string. The default prompt is \fBLogin:\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-t\fR\fItimeout\fR\fR
-.ad
-.RS 14n
-Specifies that \fBttymon\fR should exit if no one types anything in
-\fItimeout\fR seconds after the prompt is sent.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-T\fR\fItermtype\fR\fR
-.ad
-.RS 14n
-Sets the \fBTERM\fR environment variable to \fItermtype\fR.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRSetting the Terminal Type
-.sp
-.LP
-The following example sets the value of the terminal type (\fB-T\fR) option for
-the system console \fBttymon\fR invocation:
-
-.sp
-.in +2
-.nf
- svccfg -s svc:/system/console-login setprop \e
- ttymon/terminal_type = "xterm"
- svcadm refresh svc:/system/console-login:default
-.fi
-.in -2
-.sp
-
-.SH ENVIRONMENT VARIABLES
-.sp
-.LP
-If any of the \fBLC_*\fR variables ( \fBLC_CTYPE\fR, \fBLC_MESSAGES\fR,
-\fBLC_TIME\fR, \fBLC_COLLATE\fR, \fBLC_NUMERIC\fR, and \fBLC_MONETARY\fR ) (see
-\fBenviron\fR(5)) are not set in the environment, the operational behavior of
-\fBttymon\fR for each corresponding locale category is determined by the value
-of the \fBLANG\fR environment variable. If \fBLC_ALL\fR is set, its contents
-are used to override both the \fBLANG\fR and the other \fBLC_*\fR variables. If
-none of the above variables is set in the environment, the "C" (U.S. style)
-locale determines how \fBttymon\fR behaves.
-.sp
-.ne 2
-.na
-\fB\fBLC_CTYPE\fR\fR
-.ad
-.RS 12n
-Determines how \fBttymon\fR handles characters. When \fBLC_CTYPE\fR is set to a
-valid value, \fBttymon\fR can display and handle text and filenames containing
-valid characters for that locale. \fBttymon\fR can display and handle Extended
-Unix Code (EUC) characters where any individual character can be 1, 2, or 3
-bytes wide. \fBttymon\fR can also handle EUC characters of 1, 2, or more column
-widths. In the "C" locale, only characters from ISO 8859-1 are valid.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/logindevperm\fR\fR
-.ad
-.RS 21n
-
-.RE
-
-.sp
-.LP
-The command-line syntax is Stable. The SMF properties are Evolving.
-.SH SEE ALSO
-.sp
-.LP
-\fBct\fR(1C), \fBcu\fR(1C), \fBautopush\fR(1M), \fBpmadm\fR(1M), \fBsac\fR(1M),
-\fBsacadm\fR(1M), \fBsttydefs\fR(1M), \fBttyadm\fR(1M), \fBuucico\fR(1M),
-\fBpam\fR(3PAM), \fBlogindevperm\fR(4), \fBpam.conf\fR(4), \fButmpx\fR(4),
-\fBattributes\fR(5), \fBenviron\fR(5), \fBpam_authtok_check\fR(5),
-\fBpam_authtok_get\fR(5), \fBpam_authtok_store\fR(5), \fBpam_dhkeys\fR(5),
-\fBpam_passwd_auth\fR(5), \fBpam_unix_account\fR(5), \fBpam_unix_auth\fR(5),
-\fBpam_unix_session\fR(5), \fBsmf\fR(5)
-.sp
-.LP
-\fI\fR
-.SH NOTES
-.sp
-.LP
-If a port is monitored by more than one \fBttymon\fR, it is possible for the
-\fBttymon\fRs to send out prompt messages in such a way that they compete for
-input.
-.sp
-.LP
-The \fBpam_unix\fR(5) module is no longer supported. Similar functionality is
-provided by \fBpam_authtok_check\fR(5), \fBpam_authtok_get\fR(5),
-\fBpam_authtok_store\fR(5), \fBpam_dhkeys\fR(5), \fBpam_passwd_auth\fR(5),
-\fBpam_unix_account\fR(5), \fBpam_unix_auth\fR(5), and
-\fBpam_unix_session\fR(5).
diff --git a/usr/src/man/man1m/tunefs.1m b/usr/src/man/man1m/tunefs.1m
deleted file mode 100644
index 0b849f2dd7..0000000000
--- a/usr/src/man/man1m/tunefs.1m
+++ /dev/null
@@ -1,128 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH TUNEFS 1M "Sep 19, 2013"
-.SH NAME
-tunefs \- tune an existing UFS file system
-.SH SYNOPSIS
-.LP
-.nf
-\fBtunefs\fR [\fB-a\fR \fImaxcontig\fR] [\fB-d\fR \fIrotdelay\fR] [\fB-e\fR \fImaxbpg\fR]
- [\fB-m\fR \fIminfree\fR] [\fB-o\fR space | time] \fIspecial\fR | \fIfilesystem\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBtunefs\fR is designed to change the dynamic parameters of a file system that
-affect the layout policies. When using \fBtunefs\fR with \fIfilesystem\fR,
-\fIfilesystem\fR must be in \fB/etc/vfstab\fR. The parameters that can be
-changed are indicated by the options given below.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-a\fR \fImaxcontig\fR\fR
-.ad
-.RS 21n
-The maximum number of logical blocks, belonging to one file, that is allocated
-contiguously. The default is calculated as follows:
-.sp
-.in +2
-.nf
-\fBmaxcontig =\fR \fIdisk drive maximum transfer size / disk block size\fR
-.fi
-.in -2
-.sp
-
-If the disk drive's maximum transfer size cannot be determined, the default
-value for \fBmaxcontig\fR is calculated from kernel parameters as follows:
-.sp
-If \fBmaxphys\fR is less than \fBufs_maxmaxphys\fR, which is 1 Mbyte, then
-\fBmaxcontig\fR is set to \fBmaxphys\fR. Otherwise, \fBmaxcontig\fR is set to
-\fBufs_maxmaxphys\fR.
-.sp
-You can set \fBmaxcontig\fR to any positive integer value.
-.sp
-The actual value will be the lesser of what has been specified and what the
-hardware supports.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-d\fR \fIrotdelay\fR\fR
-.ad
-.RS 21n
-This parameter is obsolete as of the Solaris 10 release. The value is always
-set to \fB0\fR, regardless of the input value.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-e\fR \fImaxbpg\fR\fR
-.ad
-.RS 21n
-Indicates the maximum number of contiguous logical blocks any single file can
-allocate from a cylinder group before it is forced to begin allocating blocks
-from another cylinder group. Typically this value is set to approximately one
-quarter of the total contiguous logical blocks in a cylinder group. The intent
-is to prevent any single file from using up all the blocks in a single cylinder
-group, thus degrading access times for all files subsequently allocated in that
-cylinder group.
-.sp
-The effect of this limit is to cause big files to do long seeks more frequently
-than if they were allowed to allocate all the blocks in a cylinder group before
-seeking elsewhere. For file systems with exclusively large files, this
-parameter should be set higher.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-m\fR \fIminfree\fR\fR
-.ad
-.RS 21n
-Specifies the minimum free space threshold, or the percentage of space held
-back from normal users. This value can be set to \fB0\fR. However, up to a
-factor of three in throughput will be lost over the performance obtained at a
-10% threshold. \fINote:\fR If the value is raised above the current usage
-level, users will be unable to allocate files until enough files have been
-deleted to get under the higher threshold.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-o\fR\fI space\fR\||\|\fItime\fR\fR
-.ad
-.RS 21n
-The file system can either be instructed to try to minimize the \fBtime\fR
-spent allocating blocks, or to try to minimize the \fBspace\fR fragmentation on
-the disk. The default is \fItime\fR.
-.sp
-Generally, you should optimize for time unless the file system is over 90%
-full.
-.RE
-
-.SH USAGE
-.sp
-.LP
-See \fBlargefile\fR(5) for the description of the behavior of \fBtunefs\fR when
-encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
-.SH SEE ALSO
-.sp
-.LP
-\fBmkfs_ufs\fR(1M), \fBnewfs\fR(1M), \fBattributes\fR(5), \fBlargefile\fR(5)
-
-.\" Take this out and a Unix Demon will dog your steps from now until
-.\" the time_t's wrap around.
-.SH BUGS
-.sp
-You can tune a file system, but you can't tune a fish.
diff --git a/usr/src/man/man1m/txzonemgr.1m b/usr/src/man/man1m/txzonemgr.1m
deleted file mode 100644
index e3d6a0c9ab..0000000000
--- a/usr/src/man/man1m/txzonemgr.1m
+++ /dev/null
@@ -1,62 +0,0 @@
-'\" te
-.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH TXZONEMGR 1M "Dec 17, 2007"
-.SH NAME
-txzonemgr \- Trusted Extensions Zone Manager Configuration Utility
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/txzonemgr\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBtxzonemgr\fR shell script provides a simple, menu-based \fBGUI\fR wizard
-for creating, installing, initializing, and booting labeled zones on a system
-on which Trusted Extensions is enabled. The script also provides menu items for
-networking options, name services options, and making the global zone a client
-of an existing LDAP server. By default, all zones are configured to use the
-same name service and IP address as the global zone.
-.sp
-.LP
-\fBtxzonemgr\fR is run by roles granted in the Zone Management Rights Profile,
-or by root in the global zone. It takes no options and returns no values.
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Command Interface Stability Committed
-_
-Interactive Dialogue Not an Interface
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBzenity\fR(1), \fBifconfig\fR(1M), \fBzoneadm\fR(1M), \fBzonecfg\fR(1M),
-\fBattributes\fR(5), \fBrbac\fR(5), \fBzones\fR(5)
-.sp
-.LP
-\fISolaris Trusted Extensions Administrator's Procedures\fR
-.SH NOTES
-.sp
-.LP
-If administering zones from \fBJDS\fR, use \fBtxzonemgr\fR rather than
-\fBCDE\fR actions.
-.sp
-.LP
-\fBtxzonemgr\fR uses the \fBzenity\fR command. For details, see the
-\fBzenity\fR(1) man page.
diff --git a/usr/src/man/man1m/tzreload.1m b/usr/src/man/man1m/tzreload.1m
deleted file mode 100644
index 335812f177..0000000000
--- a/usr/src/man/man1m/tzreload.1m
+++ /dev/null
@@ -1,78 +0,0 @@
-.\"
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.\"
-.\"
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 2020 Joyent, Inc.
-.\"
-.Dd February 27, 2020
-.Dt TZRELOAD 1M
-.Os
-.Sh NAME
-.Nm tzreload
-.Nd notify timezone update
-.Sh SYNOPSIS
-.Nm Op Fl a
-.Sh DESCRIPTION
-The
-.Nm
-command triggers processes to reread timezone information.
-The timezone information is cached in each process.
-In response to a
-.Nm
-command, this cache is updated on the next call to
-.Xr ctime 3C
-and
-.Xr mktime 3C
-by each process.
-By default,
-.Nm
-only triggers this update for the current zone.
-.Pp
-In addition to updating processes, the
-.Nm
-command also notifies
-.Xr cron 1M
-to reinitialize the job scheduler with the new timezone information.
-.Sh OPTIONS
-The following options are supported:
-.Bl -tag -width Ds
-.It Fl a
-Update processes in all zones.
-.El
-.Sh FILES
-.Bl -tag -width Ds
-.It Pa /usr/share/lib/zoneinfo
-Standard zone information directory.
-.El
-.Sh INTERFACE STABILITY
-.Sy Committed
-.Sh SEE ALSO
-.Xr cron 1M ,
-.Xr zdump 1M ,
-.Xr zic 1M ,
-.Xr zoneadm 1M ,
-.Xr ctime 3C ,
-.Xr mktime 3C ,
-.Xr attributes 5
-.Sh NOTES
-Although
-.Nm
-reinitializes
-.Xr cron 1M ,
-applications that are affected by timezone changes still need to be restarted or
-reinitialized if they do not reread the new timezone information before timezone
-changes take place.
diff --git a/usr/src/man/man1m/tzselect.1m b/usr/src/man/man1m/tzselect.1m
deleted file mode 100644
index 13e91a6e12..0000000000
--- a/usr/src/man/man1m/tzselect.1m
+++ /dev/null
@@ -1,79 +0,0 @@
-'\" te
-.\" Copyright (c) 2001, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH TZSELECT 1M "Sep 6, 2001"
-.SH NAME
-tzselect \- select a time zone
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/bin/tzselect\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBtzselect\fR program asks you a series of questions about the current
-location and outputs the resulting time zone description to standard output.
-The output is suitable as a value for the \fBTZ\fR environment variable.
-.sp
-.LP
-All user interaction is through standard input and standard error.
-.SH OPTIONS
-.sp
-.LP
-The \fBtzselect\fR command has no options.
-.SH EXIT STATUS
-.sp
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR \fR
-.ad
-.RS 6n
-Timezone information was successfully obtained.
-.RE
-
-.sp
-.ne 2
-.na
-\fB>\fB0\fR\fR
-.ad
-.RS 6n
-An error occurred.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/usr/share/lib/zoneinfo\fR \fR
-.ad
-.RS 28n
-directory containing timezone data files
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Stability Evolving
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBzdump\fR(1M), \fBzic\fR(1M), \fBctime\fR(3C), \fBattributes\fR(5)
diff --git a/usr/src/man/man1m/uadmin.1m b/usr/src/man/man1m/uadmin.1m
deleted file mode 100644
index a8fd33e910..0000000000
--- a/usr/src/man/man1m/uadmin.1m
+++ /dev/null
@@ -1,75 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
-.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH UADMIN 1M "Mar 25, 2009"
-.SH NAME
-uadmin \- administrative control
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/uadmin\fR \fIcmd\fR \fIfcn\fR [\fImdep\fR]
-.fi
-
-.LP
-.nf
-\fB/sbin/uadmin\fR \fIcmd\fR \fIfcn\fR [\fImdep\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBuadmin\fR command provides control for basic administrative functions.
-This command is tightly coupled to the system administration procedures and is
-not intended for general use. It may be invoked only by the super-user.
-.sp
-.LP
-Both the \fIcmd\fR (command) and \fIfcn\fR (function) arguments are converted
-to integers and passed to the \fBuadmin\fR system call. The optional \fImdep\fR
-(machine dependent) argument is only available for the \fIcmd\fR values of
-\fB1\fR (\fBA_REBOOT\fR), \fB2\fR (\fBA_SHUTDOWN\fR), or \fB5\fR
-(\fBA_DUMP\fR). For any other \fIcmd\fR value, no \fImdep\fR command-line
-argument is allowed.
-.sp
-.LP
-When passing an \fImdep\fR value that contains whitespaces, the string must be
-grouped together as a single argument enclosed within quotes, for example:
-.sp
-.in +2
-.nf
-uadmin 1 1 "\fB-s\fR kernel/unix"
-.fi
-.in -2
-.sp
-
-.SH SEE ALSO
-.sp
-.LP
-\fBhalt\fR(1M), \fBreboot\fR(1M), \fBuadmin\fR(2), \fBattributes\fR(5)
-.SH WARNINGS
-.sp
-.LP
-Shutting down or halting the system by means of \fBuadmin\fR does not update
-the boot archive. Avoid using this command after
-.RS +4
-.TP
-.ie t \(bu
-.el o
-editing of files such as \fB/etc/system\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-installing new driver binaries or kernel binaries
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-updating existing driver binaries or kernel binaries.
-.RE
-.sp
-.LP
-Use \fBreboot\fR(1M) or \fBhalt\fR(1M) instead.
diff --git a/usr/src/man/man1m/ucodeadm.1m b/usr/src/man/man1m/ucodeadm.1m
deleted file mode 100644
index 997a7dd9e3..0000000000
--- a/usr/src/man/man1m/ucodeadm.1m
+++ /dev/null
@@ -1,175 +0,0 @@
-'\" te
-.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH UCODEADM 1M "Jul 10, 2007"
-.SH NAME
-ucodeadm \- update processor microcode
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/ucodeadm\fR \fB-v\fR
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/ucodeadm\fR \fB-u\fR\fImicrocode-text-file\fR
-.fi
-
-.LP
-.nf
-\fB/usr/sbin/ucodeadm\fR \fB-i\fR [\fB-R\fR \fIpath\fR] \fImicrocode-text-file\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBucodeadm\fR utility can be used to report running microcode revision on
-the processors, update microcode, or install microcode on the target system to
-be used during the boot process.
-.sp
-.LP
-The \fImicrocode-text-file\fR can be obtained from processor vendors.
-.SH OPTIONS
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.RS 26n
-Report microcode revision.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-u\fR \fImicrocode-text-file\fR\fR
-.ad
-.RS 26n
-Update microcode on all cross-call interrupt ready processors.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-i\fR \fImicrocode-text-file\fR\fR
-.ad
-.RS 26n
-Install microcode files on target system to be used during the next boot
-cycle. The text file name must have the vendor name prefix, such as
-"\fBintel\fR" or "\fBamd\fR".
-.sp
-By default the microcode files will be installed at:
-.sp
-.in +2
-.nf
- /platform/i86pc/ucode/$VENDORSTR/
-.fi
-.in -2
-.sp
-
-where \fBVENDORSTR\fR is either "\fBGenuineIntel\fR" or "\fBAuthenticAMD\fR".
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-R\fR \fIalternate path\fR\fR
-.ad
-.RS 26n
-Install \fImicrocode\fR path in the \fIalternate path\fR.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRReporting the Microcode Revision
-.sp
-.LP
-The following example displays the microcode revision that is currently
-running:
-
-.sp
-.in +2
-.nf
-# ucodeadm -v
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRUpdating the Processor Microcode
-.sp
-.LP
-The following example updates the processor microcode to \fBintel-ucode.txt\fR:
-
-.sp
-.in +2
-.nf
-# ucodeadm -u intel-ucode.txt
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRInstalling the Microcode on the Target System
-.sp
-.LP
-The following example installs the microcode on the target system,
-\fB/export/ucode-path\fR:
-
-.sp
-.in +2
-.nf
-# ucodeadm -i -R /export/ucode-path intel-ucode.txt
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-If an alternate path is used when installing the microcode on the target
-system, the installed microcode file is not used on the next boot cycle.
-
-.SH EXIT STATUS
-.sp
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB0\fR
-.ad
-.RS 6n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB>0\fR
-.ad
-.RS 6n
-An error occurred.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Stable
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBpsradm\fR(1M), \fBpsrinfo\fR(1M), \fBattributes\fR(5)
diff --git a/usr/src/man/man1m/ufsdump.1m b/usr/src/man/man1m/ufsdump.1m
deleted file mode 100644
index 10303c00f3..0000000000
--- a/usr/src/man/man1m/ufsdump.1m
+++ /dev/null
@@ -1,661 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH UFSDUMP 1M "April 9, 2016"
-.SH NAME
-ufsdump \- incremental file system dump
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/ufsdump\fR [\fIoptions\fR] [\fIarguments\fR] \fIfiles_to_dump\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-\fBufsdump\fR backs up all files specified by \fIfiles_to_dump\fR (usually
-either a whole file system or files within a file system changed after a certain
-date) to magnetic tape, diskette, or disk file.
-.sp
-.LP
-The \fBufsdump\fR command can only be used on unmounted file systems, or those
-mounted read-only. Attempting to dump a mounted, read-write file system might
-result in a system disruption or the inability to restore files from the dump.
-Consider using the \fBfssnap\fR(1M) command to create a file system snapshot if
-you need a point-in-time image of a file system that is mounted.
-.sp
-.LP
-If a filesystem was mounted with the logging option, it is strongly
-recommended that you run \fBufsdump\fR as the root user. Running the command as
-a non-root user might result in the creation of an inconsistent dump.
-.sp
-.LP
-\fIoptions\fR is a single string of one-letter \fBufsdump\fR options.
-.sp
-.LP
-\fIarguments\fR may be multiple strings whose association with the options is
-determined by order. That is, the first argument goes with the first option
-that takes an argument; the second argument goes with the second option that
-takes an argument, and so on.
-.sp
-.LP
-\fIfiles_to_dump\fR is required and must be the last argument on the command
-line. See \fBOPERANDS\fR for more information.
-.sp
-.LP
-With most devices \fBufsdump\fR can automatically detect the end-of-media.
-Consequently, the \fBd\fR, \fBs\fR, and \fBt\fR options are not necessary for
-multi-volume dumps, unless \fBufsdump\fR does not understand the way the device
-detects the end-of-media, or the files are to be restored on a system with an
-older version of the \fBrestore\fR command.
-.SH OPTIONS
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB0\(mi9\fR\fR
-.ad
-.sp .6
-.RS 4n
-The "dump level." All files specified by \fIfiles_to_dump\fR that have been
-modified since the last \fBufsdump\fR at a lower dump level are copied to the
-\fIdump_file\fR destination (normally a magnetic tape device). For instance, if
-a "level \fB2\fR" dump was done on Monday, followed by a "level \fB4\fR" dump
-on Tuesday, a subsequent "level \fB3\fR" dump on Wednesday would contain all
-files modified or added since the "level \fB2\fR" (Monday) backup. A "level
-\fB0\fR" dump copies the entire file system to the \fIdump_file\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBa\fR \fIarchive_file\fR\fR
-.ad
-.sp .6
-.RS 4n
-Archive file. Archive a dump table-of-contents in the specified
-\fIarchive_file\fR to be used by \fBufsrestore\fR(1M) to determine whether a
-file is in the dump file that is being restored.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBb\fR \fIfactor\fR\fR
-.ad
-.sp .6
-.RS 4n
-Blocking factor. Specify the blocking factor for tape writes. The default is 20
-blocks per write for tapes of density less than 6250BPI (bytes-per-inch). The
-default blocking factor for tapes of density 6250BPI and greater is 64. The
-default blocking factor for cartridge tapes (\fBc\fR option) is 126. The
-highest blocking factor available with most tape drives is 126. Note: the
-blocking factor is specified in terms of 512-byte blocks, for compatibility
-with \fBtar\fR(1).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBc\fR\fR
-.ad
-.sp .6
-.RS 4n
-Cartridge. Set the defaults for cartridge instead of the standard half-inch
-reel. This sets the density to 1000BPI and the blocking factor to 126. Since
-\fBufsdump\fR can automatically detect the end-of-media, only the blocking
-parameter normally has an effect. When cartridge tapes are used, and this
-option is \fInot\fR specified, \fBufsdump\fR will slightly miscompute the size
-of the tape. If the \fBb\fR, \fBd\fR, \fBs\fR or \fBt\fR options are specified
-with this option, their values will override the defaults set by this option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBd\fR \fIbpi\fR\fR
-.ad
-.sp .6
-.RS 4n
-Tape density. Not normally required, as \fBufsdump\fR can detect end-of-media.
-This parameter can be used to keep a running tab on the amount of tape used per
-reel. The default density is 6250BPI except when the \fBc\fR option is used for
-cartridge tape, in which case it is assumed to be 1000BPI per track. Typical
-values for tape devices are:
-.sp
-.ne 2
-.na
-\fB1/2 inch tape\fR
-.ad
-.sp .6
-.RS 4n
-6250 BPI
-.RE
-
-.sp
-.ne 2
-.na
-\fB1/4 inch cartridge\fR
-.ad
-.sp .6
-.RS 4n
-1000 BPI The tape densities and other options are documented in the
-\fBst\fR(7D) man page.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBD\fR\fR
-.ad
-.sp .6
-.RS 4n
-Diskette. Dump to diskette.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBf\fR \fIdump_file\fR\fR
-.ad
-.sp .6
-.RS 4n
-Dump file. Use \fIdump_file\fR as the file to dump to, instead of
-\fB/dev/rmt/0\fR. If \fIdump_file\fR is specified as \fB\(mi\fR, dump to
-standard output.
-.sp
-If the name of the file is of the form \fImachine\fR\fB:\fR\fIdevice,\fR the
-dump is done from the specified machine over the network using \fBrmt\fR(1M).
-Since \fBufsdump\fR is normally run by root, the name of the local machine must
-appear in the \fB/.rhosts\fR file of the remote machine. If the file is
-specified as \fIuser\fR\fB@\fR\fImachine\fR\fB:\fR\fIdevice,\fR \fBufsdump\fR
-will attempt to execute as the specified user on the remote machine. The
-specified user must have a \fB\&.rhosts\fR file on the remote machine that
-allows the user invoking the command from the local machine to access the
-remote machine.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBl\fR\fR
-.ad
-.sp .6
-.RS 4n
-Autoload. When the end-of-tape is reached before the dump is complete, take the
-drive offline and wait up to two minutes for the tape drive to be ready again.
-This gives autoloading (stackloader) tape drives a chance to load a new tape.
-If the drive is ready within two minutes, continue. If it is not, prompt for
-another tape and wait.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBL\fR \fIstring\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets the tape label to \fIstring\fR, instead of the default \fBnone\fR.
-\fIstring\fR may be no more than sixteen characters long. If it is longer, it
-is truncated and a warning printed; the dump will still be done. The tape label
-is specific to the \fBufsdump\fR tape format, and bears no resemblance to
-\fBIBM\fR or \fBANSI\fR-standard tape labels.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBn\fR\fR
-.ad
-.sp .6
-.RS 4n
-Notify all operators in the \fBsys\fR group that \fBufsdump\fR requires
-attention by sending messages to their terminals, in a manner similar to that
-used by the \fBwall\fR(1M) command. Otherwise, such messages are sent only to
-the terminals (such as the console) on which the user running \fBufsdump\fR is
-logged in.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBN\fR \fIdevice_name\fR\fR
-.ad
-.sp .6
-.RS 4n
-Use \fIdevice_name\fR when recording information in \fB/etc/dumpdates\fR (see
-the \fBu\fR option) and when comparing against information in
-\fB/etc/dumpdates\fR for incremental dumps. The \fIdevice_name\fR provided can
-contain no white space as defined in \fBscanf\fR(3C) and is case-sensitive.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBo\fR\fR
-.ad
-.sp .6
-.RS 4n
-Offline. Take the drive offline when the dump is complete or the end-of-media
-is reached and rewind the tape, or eject the diskette. In the case of some
-autoloading 8mm drives, the tape is removed from the drive automatically. This
-prevents another process which rushes in to use the drive, from inadvertently
-overwriting the media.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBs\fR \fIsize\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify the \fIsize\fR of the volume being dumped to. Not normally required, as
-\fBufsdump\fR can detect end-of-media. When the specified size is reached,
-\fBufsdump\fR waits for you to change the volume. \fBufsdump\fR interprets the
-specified size as the length in feet for tapes and cartridges, and as the
-number of 1024-byte blocks for diskettes. The values should be a little smaller
-than the actual physical size of the media (for example, 425 for a 450-foot
-cartridge). Typical values for tape devices depend on the \fBc\fR option, for
-cartridge devices, and the \fBD\fR option for diskettes:
-.sp
-.ne 2
-.na
-\fB1/2 inch tape\fR
-.ad
-.sp .6
-.RS 4n
-2300 feet
-.RE
-
-.sp
-.ne 2
-.na
-\fB60-Mbyte 1/4 inch cartridge\fR
-.ad
-.sp .6
-.RS 4n
-425 feet
-.RE
-
-.sp
-.ne 2
-.na
-\fB150-Mbyte 1/4 inch cartridge\fR
-.ad
-.sp .6
-.RS 4n
-700 feet
-.RE
-
-.sp
-.ne 2
-.na
-\fBdiskette\fR
-.ad
-.sp .6
-.RS 4n
-1422 blocks (Corresponds to a 1.44-Mbyte diskette, with one cylinder reserved
-for bad block information.)
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBS\fR\fR
-.ad
-.sp .6
-.RS 4n
-Size estimate. Determine the amount of space that is needed to perform the dump
-without actually doing it, and display the estimated number of bytes it will
-take. This is useful with incremental dumps to determine how many volumes of
-media will be needed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBt\fR \fItracks\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify the number of tracks for a cartridge tape. Not normally required, as
-\fBufsdump\fR can detect end-of-media. The default is 9 tracks. The \fBt\fR
-option is not compatible with the \fBD\fR option. Values for Sun-supported tape
-devices are:
-.sp
-.ne 2
-.na
-\fB60-Mbyte 1/4 inch cartridge\fR
-.ad
-.sp .6
-.RS 4n
-9 tracks
-.RE
-
-.sp
-.ne 2
-.na
-\fB150-Mbyte 1/4 inch cartridge\fR
-.ad
-.sp .6
-.RS 4n
-18 tracks
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBT\fR \fItime_wait\fR\fB[hms]\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets the amount of time to wait for an \fBautoload\fR command to complete. This
-option is ignored unless the \fBl\fR option has also been specified. The
-default time period to wait is two minutes. Specify time units with a trailing
-\fBh\fR ( for hours), \fBm\fR (for minutes), or \fBs\fR (for seconds). The
-default unit is minutes.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBu\fR\fR
-.ad
-.sp .6
-.RS 4n
-Update the dump record. Add an entry to the file \fB/etc/dumpdates,\fR for each
-file system successfully dumped that includes the file system name (or
-\fIdevice_name\fR as specified with the \fBN\fR option), date, and dump level.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBv\fR\fR
-.ad
-.sp .6
-.RS 4n
-Verify. After each tape or diskette is written, verify the contents of the
-media against the source file system. If any discrepancies occur, prompt for
-new media, then repeat the dump/verification process. The file system
-\fImust\fR be unmounted. This option cannot be used to verify a dump to
-standard output.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBw\fR\fR
-.ad
-.sp .6
-.RS 4n
-Warning. List the file systems that have not been backed up within a day. This
-information is gleaned from the files \fB/etc/dumpdates\fR and
-\fB/etc/vfstab\fR. When the \fBw\fR option is used, all other options are
-ignored. After reporting, \fBufsdump\fR exits immediately.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBW\fR\fR
-.ad
-.sp .6
-.RS 4n
-Warning with highlight. Similar to the \fBw\fR option, except that the \fBW\fR
-option includes all file systems that appear in \fB/etc/dumpdates\fR, along
-with information about their most recent dump dates and levels. File systems
-that have not been backed up within a day are highlighted.
-.RE
-
-.SH OPERANDS
-.LP
-The following operand is supported:
-.sp
-.ne 2
-.na
-\fB\fIfiles_to_dump\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the files to dump. Usually it identifies a whole file system by its
-raw device name (for example, \fB/dev/rdsk/c0t3d0s6\fR). Incremental dumps
-(levels \fB1\fR to \fB9\fR) of files changed after a certain date only apply to
-a whole file system. Alternatively, \fIfiles_to_dump\fR can identify individual
-files or directories. All named directories that may be examined by the user
-running \fBufsdump\fR, as well as any explicitly-named files, are dumped. This
-dump is equivalent to a level \fB0\fR dump of the indicated portions of the
-filesystem, except that \fB/etc/dumpdates\fR is not updated even if the
-\fB-u\fR option has been specified. In all cases, the files must be contained
-in the same file system, and the file system must be local to the system where
-\fBufsdump\fR is being run.
-.sp
-\fIfiles_to_dump\fR is required and must be the last argument on the command
-line.
-.RE
-
-.sp
-.LP
-If no \fIoptions\fR are given, the default is \fB9uf\fR \fB/dev/rmt/0\fR
-\fIfiles_to_dump\fR.
-.SH USAGE
-.LP
-See \fBlargefile\fR(5) for the description of the behavior of \fBufsdump\fR
-when encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRUsing \fBufsdump\fR
-.sp
-.LP
-The following command makes a full dump of a root file system on \fBc0t3d0\fR,
-on a 150-MByte cartridge tape unit \fB0\fR:
-
-.sp
-.in +2
-.nf
-example# ufsdump 0cfu /dev/rmt/0 /dev/rdsk/c0t3d0s0
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The following command makes and verifies an incremental dump at level \fB5\fR
-of the \fBusr\fR partition of \fBc0t3d0\fR, on a 1/2 inch reel tape unit
-\fB1,\fR:
-
-.sp
-.in +2
-.nf
-example# ufsdump 5fuv /dev/rmt/1 /dev/rdsk/c0t3d0s6
-.fi
-.in -2
-.sp
-
-.SH EXIT STATUS
-.LP
-While running, \fBufsdump\fR emits many verbose messages. \fBufsdump\fR returns
-the following exit values:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.sp .6
-.RS 4n
-Normal exit.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB1\fR\fR
-.ad
-.sp .6
-.RS 4n
-Startup errors encountered.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB3\fR\fR
-.ad
-.sp .6
-.RS 4n
-Abort \(mi no checkpoint attempted.
-.RE
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/dev/rmt/0\fR\fR
-.ad
-.sp .6
-.RS 4n
-default unit to dump to
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/dumpdates\fR\fR
-.ad
-.sp .6
-.RS 4n
-dump date record
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/group\fR\fR
-.ad
-.sp .6
-.RS 4n
-to find group \fBsys\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/hosts\fR\fR
-.ad
-.sp .6
-.RS 4n
-to gain access to remote system with drive
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/vfstab\fR\fR
-.ad
-.sp .6
-.RS 4n
-list of file systems
-.RE
-
-.SH SEE ALSO
-.LP
-\fBcpio\fR(1), \fBtar\fR(1), \fBdd\fR(1M), \fBdevnm\fR(1M), \fBfssnap\fR(1M),
-\fBprtvtoc\fR(1M), \fBrmt\fR(1M), \fBshutdown\fR(1M), \fBufsrestore\fR(1M),
-\fBvolcopy\fR(1M), \fBwall\fR(1M), \fBscanf\fR(3C), \fBufsdump\fR(4),
-\fBattributes\fR(5), \fBlargefile\fR(5), \fBst\fR(7D)
-.SH NOTES
-.SS "Read Errors"
-.LP
-Fewer than 32 read errors on the file system are ignored.
-.SS "Process Per Reel"
-.LP
-Because each reel requires a new process, parent processes for reels that are
-already written hang around until the entire tape is written.
-.SS "Operator Intervention"
-.LP
-\fBufsdump\fR requires operator intervention on these conditions: end of
-volume, end of dump, volume write error, volume open error or disk read error
-(if there are more than a threshold of 32). In addition to alerting all
-operators implied by the \fBn\fR option, \fBufsdump\fR interacts with the
-operator on \fBufsdump\fR's control terminal at times when \fBufsdump\fR can no
-longer proceed, or if something is grossly wrong. All questions \fBufsdump\fR
-poses \fImust\fR be answered by typing \fByes\fR or \fBno\fR, as appropriate.
-.sp
-.LP
-Since backing up a disk can involve a lot of time and effort, \fBufsdump\fR
-checkpoints at the start of each volume. If writing that volume fails for some
-reason, \fBufsdump\fR will, with operator permission, restart itself from the
-checkpoint after a defective volume has been replaced.
-.SS "Suggested Dump Schedule"
-.LP
-It is vital to perform full, "level \fB0\fR", dumps at regular intervals. When
-performing a full dump, bring the machine down to single-user mode using
-\fBshutdown\fR(1M). While preparing for a full dump, it is a good idea to clean
-the tape drive and heads. Incremental dumps should be performed with the system
-running in single-user mode.
-.sp
-.LP
-Incremental dumps allow for convenient backup and recovery of active files on a
-more frequent basis, with a minimum of media and time. However, there are some
-tradeoffs. First, the interval between backups should be kept to a minimum
-(once a day at least). To guard against data loss as a result of a media
-failure (a rare, but possible occurrence), capture active files on (at least)
-two sets of dump volumes. Another consideration is the desire to keep
-unnecessary duplication of files to a minimum to save both operator time and
-media storage. A third consideration is the ease with which a particular
-backed-up version of a file can be located and restored. The following
-four-week schedule offers a reasonable tradeoff between these goals.
-.sp
-.in +2
-.nf
- Sun Mon Tue Wed Thu Fri
- Week 1: Full 5 5 5 5 3
- Week 2: 5 5 5 5 3
- Week 3: 5 5 5 5 3
- Week 4: 5 5 5 5 3
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Although the Tuesday through Friday incrementals contain "extra copies" of
-files from Monday, this scheme assures that any file modified during the week
-can be recovered from the previous day's incremental dump.
-.SS "Process Priority of ufsdump"
-.LP
-\fBufsdump\fR uses multiple processes to allow it to read from the disk and
-write to the media concurrently. Due to the way it synchronizes between these
-processes, any attempt to run dump with a \fBnice\fR (process priority) of
-`\(mi5' or better will likely make \fBufsdump\fR run \fIslower\fR instead of
-faster.
-.SS "Overlapping Partitions"
-.LP
-Most disks contain one or more overlapping slices because slice 2 covers the
-entire disk. The other slices are of various sizes and usually do not overlap.
-For example, a common configuration places \fBroot\fR on slice 0, \fBswap\fR on
-slice 1, \fB/opt\fR on slice 5 and \fB/usr\fR on slice 6.
-.sp
-.LP
-It should be emphasized that \fBufsdump\fR dumps one \fBufs\fR file system at a
-time. Given the above scenario where slice 0 and slice 2 have the same starting
-offset, executing \fBufsdump\fR on slice 2 with the intent of dumping the
-entire disk would instead dump only the \fBroot\fR file system on slice 0. To
-dump the entire disk, the user must dump the file systems on each slice
-separately.
-.SH BUGS
-.LP
-The \fB/etc/vfstab\fR file does not allow the desired frequency of backup for
-file systems to be specified (as \fB/etc/fstab\fR did). Consequently, the
-\fBw\fR and \fBW\fR options assume file systems should be backed up daily,
-which limits the usefulness of these options.
diff --git a/usr/src/man/man1m/ufsrestore.1m b/usr/src/man/man1m/ufsrestore.1m
deleted file mode 100644
index 22a74d6ecd..0000000000
--- a/usr/src/man/man1m/ufsrestore.1m
+++ /dev/null
@@ -1,750 +0,0 @@
-'\" te
-.\" Copyright (c) 2002 Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH UFSRESTORE 1M "Sep 24, 2002"
-.SH NAME
-ufsrestore \- incremental file system restore
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/ufsrestore\fR i | r | R | t | x [abcdfhlmostvyLT]
- [\fIarchive_file\fR] [\fIfactor\fR] [\fIdumpfile\fR] [\fIn\fR] [\fIlabel\fR]
- [\fItimeout\fR] [\fIfilename\fR]...
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBufsrestore\fR utility restores files from backup media created with the
-\fBufsdump\fR command. \fBufsrestores\fR's actions are controlled by the
-\fIkey\fR argument. The \fIkey\fR is exactly one \fBfunction\fR \fIletter\fR
-(\fBi\fR, \fBr\fR, \fBR\fR , \fBt\fR, or \fBx\fR) and zero or more \fIfunction
-modifier\fRs (letters). The \fIkey\fR string contains no \fBSPACE\fR
-characters. Function modifier arguments are listed on the command line in the
-same order as their corresponding function modifiers appear in the \fIkey\fR
-string.
-.sp
-.LP
-\fIfilename\fR arguments which appear on the command line, or as arguments to
-an interactive command, are treated as shell \fBglob\fR patterns by the \fBx\fR
-and \fBt\fR functions; any files or directories matching the patterns are
-selected. The metacharacters \fB*\fR, \fB?\fR, and \fB[ ]\fR must be protected
-from the shell if they appear on the command line. There is no way to quote
-these metacharacters to explicitly match them in a filename.
-.sp
-.LP
-The temporary files \fBrstdir*\fR and \fBrstmode*\fR are placed in \fB/tmp\fR
-by default. If the environment variable \fBTMPDIR\fR is defined with a
-non-empty value, that location is used instead of \fB/tmp\fR.
-.SH OPTIONS
-.SS "Function Letters"
-.sp
-.LP
-You must specify one (and only one) of the function letters listed below. Note
-that \fBi\fR, \fBx\fR, and \fBr\fR are intended to restore files into an empty
-directory. The \fBR\fR function is intended for restoring into a populated
-directory.
-.sp
-.ne 2
-.na
-\fB\fBi\fR\fR
-.ad
-.RS 5n
-Interactive. After reading in the directory information from the media,
-\fBufsrestore\fR invokes a shell-like interface that allows you to browse
-through the dump file's directory hierarchy and select individual files to be
-extracted. Restoration has the same semantics as \fBx\fR (see below). See
-\fBInteractive Commands\fR, below, for a description of available commands.
-.RE
-
-.sp
-.ne 2
-.na
-\fBr\fR
-.ad
-.RS 5n
-Recursive. Starting with an empty directory and a level 0 dump, the \fBr\fR
-function recreates the filesystem relative to the current working directory,
-exactly as it appeared when the dump was made. Information used to restore
-incremental dumps on top of the full dump (for example, \fBrestoresymtable\fR)
-is also included. Several \fBufsrestore\fR runs are typical, one for each
-higher level of dump (0, 1, ..., 9). Files that were deleted between the level
-0 and a subsequent incremental dump will not exist after the final restore. To
-completely restore a file system, use the \fBr\fR function restore the level 0
-dump, and again for each incremental dump. Although this function letter is
-intended for a complete restore onto a new file system (one just created with
-\fBnewfs\fR(1M)), if the file system contains files not on the backup media,
-they are preserved.
-.RE
-
-.sp
-.ne 2
-.na
-\fBR\fR
-.ad
-.RS 5n
-Resume restoring. If an \fBr\fR-mode \fBufsrestore\fR was interrupted, this
-function prompts for the volume from which to resume restoring and continues
-the restoration from where it was left off. Otherwise identical to \fBr\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBt\fR
-.ad
-.RS 5n
-Table of contents. List each \fIfilename\fR that appears on the media. If no
-\fIfilename\fR argument is given, the root directory is listed. This results in
-a list of all files on the media, unless the \fBh\fR function modifier is in
-effect. The table of contents is taken from the media or from the specified
-archive file, when the \fBa\fR function modifier is used. The \fBa\fR function
-modifier is mutually exclusive with the \fBx\fR and \fBr\fR function letters.
-.RE
-
-.sp
-.ne 2
-.na
-\fBx\fR
-.ad
-.RS 5n
-Extract the named files from the media. Files are restored to the same relative
-locations that they had in the original file system.
-.sp
-If the \fIfilename\fR argument matches a directory whose contents were written
-onto the media, and the \fBh\fR modifier is not in effect, the directory is
-recursively extracted, relative to the current directory, which is expected to
-be empty. For each file, the owner, modification time, and mode are restored
-(if possible).
-.sp
-If you omit the \fIfilename\fR argument or specify \fB\&.\fR, the root
-directory is extracted. This results in the entire tape being extracted, unless
-the \fBh\fR modifier is in effect. . With the \fBx\fR function, existing files
-are overwritten and \fBufsrestore\fR displays the names of the overwritten
-files. Overwriting a currently-running executable can have unfortunate
-consequences.
-.sp
-Use the \fBx\fR option to restore partial file system dumps, as they are (by
-definition) not entire file systems.
-.RE
-
-.SS "Function Modifiers"
-.sp
-.ne 2
-.na
-\fBa \fIarchive_file\fR\fR
-.ad
-.RS 19n
-Read the table of contents from \fIarchive_file\fR instead of the media. This
-function modifier can be used in combination with the \fBt\fR, \fBi\fR, or
-\fBx\fR function letters, making it possible to check whether files are on the
-media without having to mount the media. When used with the \fBx\fR and
-interactive (\fBi\fR) function letters, it prompts for the volume containing
-the file(s) before extracting them.
-.RE
-
-.sp
-.ne 2
-.na
-\fBb \fIfactor\fR\fR
-.ad
-.RS 19n
-Blocking factor. Specify the blocking factor for tape reads. For variable
-length \fBSCSI\fR tape devices, unless the data was written with the default
-blocking factor, a blocking factor at least as great as that used to write the
-tape must be used; otherwise, an error will be generated. Note that a tape
-block is 512 bytes. Refer to the man page for your specific tape driver for the
-maximum blocking factor.
-.RE
-
-.sp
-.ne 2
-.na
-\fBc\fR
-.ad
-.RS 19n
-Convert the contents of the media in 4.1BSD format to the new \fBufs\fR file
-system format.
-.RE
-
-.sp
-.ne 2
-.na
-\fBd\fR
-.ad
-.RS 19n
-Debug. Turn on debugging output.
-.RE
-
-.sp
-.ne 2
-.na
-\fBf \fIdump_file\fR\fR
-.ad
-.RS 19n
-Use \fIdump_file\fR instead of \fB/dev/rmt/0\fR as the file to restore from.
-Typically \fIdump_file\fR specifies a tape or diskette drive. If
-\fIdump_file\fR is specified as `\fB\(mi\fR\&', \fBufsrestore\fR reads from the
-standard input. This allows \fBufsdump\fR(1M) and \fBufsrestore\fR to be used
-in a pipeline to copy a file system:
-.sp
-.in +2
-.nf
-example# ufsdump 0f \(mi /dev/rdsk/c0t0d0s7 \e
- | (cd /home;ufsrestore xf \(mi)
-.fi
-.in -2
-.sp
-
-If the name of the file is of the form \fImachine\fR\fB:\fR\fIdevice\fR, the
-restore is done from the specified machine over the network using
-\fBrmt\fR(1M). Since \fBufsrestore\fR is normally run by root, the name of the
-local machine must appear in the \fB/.rhosts\fR file of the remote machine. If
-the file is specified as \fIuser\fR\fB@\fR\fImachine\fR\fB:\fR\fIdevice\fR,
-\fBufsrestore\fR will attempt to execute as the specified user on the remote
-machine. The specified user must have a \fB\&.rhosts\fR file on the remote
-machine that allows the user invoking the command from the local machine to
-access the remote machine.
-.RE
-
-.sp
-.ne 2
-.na
-\fBh\fR
-.ad
-.RS 19n
-Extract or list the actual directory, rather than the files that it references.
-This prevents hierarchical restoration of complete subtrees from the tape.
-.RE
-
-.sp
-.ne 2
-.na
-\fBl\fR
-.ad
-.RS 19n
-Autoload. When the end-of-tape is reached before the restore is complete, take
-the drive off-line and wait up to two minutes (the default, see the \fBT\fR
-function modifier) for the tape drive to be ready again. This gives autoloading
-(stackloader) tape drives a chance to load a new tape. If the drive is ready
-within two minutes, continue. If it is not, prompt for another tape and wait.
-.RE
-
-.sp
-.ne 2
-.na
-\fBL \fIlabel\fR\fR
-.ad
-.RS 19n
-The label that should appear in the header of the dump file. If the labels do
-not match, \fBufsrestore\fR issues a diagnostic and exits. The tape label is
-specific to the \fBufsdump\fR tape format, and bears no resemblance to
-\fBIBM\fR or \fBANSI\fR-standard tape labels.
-.RE
-
-.sp
-.ne 2
-.na
-\fBm\fR
-.ad
-.RS 19n
-Extract by inode numbers rather than by filename to avoid regenerating complete
-pathnames. Regardless of where the files are located in the dump hierarchy,
-they are restored into the current directory and renamed with their inode
-number. This is useful if only a few files are being extracted.
-.RE
-
-.sp
-.ne 2
-.na
-\fBo\fR
-.ad
-.RS 19n
-Offline. Take the drive off-line when the restore is complete or the
-end-of-media is reached and rewind the tape, or eject the diskette. In the case
-of some autoloading 8mm drives, the tape is removed from the drive
-automatically.
-.RE
-
-.sp
-.ne 2
-.na
-\fBs \fIn\fR\fR
-.ad
-.RS 19n
-Skip to the \fIn\fRth file when there are multiple dump files on the same tape.
-For example, the command:
-.sp
-.in +2
-.nf
-example# ufsrestore xfs /dev/rmt/0hn 5
-.fi
-.in -2
-.sp
-
-would position you to the fifth file on the tape when reading volume 1 of the
-dump. If a dump extends over more than one volume, all volumes except the first
-are assumed to start at position 0, no matter what "\fBs\fR \fIn\fR" value is
-specified.
-.sp
-If "\fBs\fR \fIn\fR" is specified, the backup media must be at \fBBOT\fR
-(beginning of tape). Otherwise, the initial positioning to read the table of
-contents will fail, as it is performed by skipping the tape forward
-\fIn\fR\fB-1\fR files rather than by using absolute positioning. This is
-because on some devices absolute positioning is very time consuming.
-.RE
-
-.sp
-.ne 2
-.na
-\fBT timeout [hms]\fR
-.ad
-.RS 19n
-Sets the amount of time to wait for an autoload command to complete. This
-function modifier is ignored unless the \fBl\fR function modifier has also been
-specified. The default timeout period is two minutes. The time units may be
-specified as a trailing \fBh\fR (hours), \fBm\fR (minutes), or \fBs\fR
-(seconds). The default unit is minutes.
-.RE
-
-.sp
-.ne 2
-.na
-\fBv\fR
-.ad
-.RS 19n
-Verbose. \fBufsrestore\fR displays the name and inode number of each file it
-restores, preceded by its file type.
-.RE
-
-.sp
-.ne 2
-.na
-\fBy\fR
-.ad
-.RS 19n
-Do not ask whether to abort the restore in the event of tape errors.
-\fBufsrestore\fR tries to skip over the bad tape block(s) and continue as best
-it can.
-.RE
-
-.SS "Interactive Commands"
-.sp
-.LP
-\fBufsrestore\fR enters interactive mode when invoked with the \fBi\fR function
-letters. Interactive commands are reminiscent of the shell. For those commands
-that accept an argument, the default is the current directory. The interactive
-options are:
-.sp
-.ne 2
-.na
-\fBadd [\fIfilename\fR]\fR
-.ad
-.RS 22n
-Add the named file or directory to the list of files to extract. If a directory
-is specified, add that directory and its files (recursively) to the extraction
-list (unless the \fBh\fR modifier is in effect).
-.RE
-
-.sp
-.ne 2
-.na
-\fBcd \fIdirectory\fR\fR
-.ad
-.RS 22n
-Change to \fIdirectory\fR (within the dump file).
-.RE
-
-.sp
-.ne 2
-.na
-\fBdelete [\fIfilename\fR]\fR
-.ad
-.RS 22n
-Delete the current directory, or the named file or directory from the list of
-files to extract. If a directory is specified, delete that directory and all
-its descendents from the extraction list (unless the \fBh\fR modifier is in
-effect). The most expedient way to extract a majority of files from a directory
-is to add that directory to the extraction list, and then delete specific files
-to omit.
-.RE
-
-.sp
-.ne 2
-.na
-\fBextract\fR
-.ad
-.RS 22n
-Extract all files on the extraction list from the dump media. \fBufsrestore\fR
-asks which volume the user wishes to mount. The fastest way to extract a small
-number of files is to start with the last volume and work toward the first. If
-"\fBs\fR \fIn\fR" is given on the command line, volume 1 will automatically be
-positioned to file \fIn\fR when it is read.
-.RE
-
-.sp
-.ne 2
-.na
-\fBhelp\fR
-.ad
-.RS 22n
-Display a summary of the available commands.
-.RE
-
-.sp
-.ne 2
-.na
-\fBls [\fIdirectory\fR]\fR
-.ad
-.RS 22n
-List files in \fIdirectory\fR or the current directory, represented by a
-`\fB\&.\fR' (period). Directories are appended with a `\fB/\fR' (slash).
-Entries marked for extraction are prefixed with a `\fB*\fR' (asterisk). If the
-verbose option is in effect, inode numbers are also listed.
-.RE
-
-.sp
-.ne 2
-.na
-\fBmarked [\fIdirectory\fR]\fR
-.ad
-.RS 22n
-Like \fBls\fR, except only files marked for extraction are listed.
-.RE
-
-.sp
-.ne 2
-.na
-\fBpager\fR
-.ad
-.RS 22n
-Toggle the pagination of the output from the \fBls\fR and \fBmarked\fR
-commands. The pager used is that defined by the \fBPAGER\fR environment
-variable, or more(1) if that envar is not defined. The \fBPAGER\fR envar may
-include white-space-separated arguments for the pagination program.
-.RE
-
-.sp
-.ne 2
-.na
-\fBpwd\fR
-.ad
-.RS 22n
-Print the full pathname of the current working directory.
-.RE
-
-.sp
-.ne 2
-.na
-\fBquit\fR
-.ad
-.RS 22n
-\fBufsrestore\fR exits immediately, even if the extraction list is not empty.
-.RE
-
-.sp
-.ne 2
-.na
-\fBsetmodes\fR
-.ad
-.RS 22n
-Prompts: \fBset owner/mode for\fR `\fB\&.\fR' (period). Type \fBy\fR for yes to
-set the mode (permissions, owner, times) of the current directory `\fB\&.\fR'
-(period) into which files are being restored equal to the mode of the root
-directory of the file system from which they were dumped. Normally, this is
-what you want when restoring a whole file system, or restoring individual files
-into the same locations from which they were dumped. Type \fBn\fR for no, to
-leave the mode of the current directory unchanged. Normally, this is what you
-want when restoring part of a dump to a directory other than the one from which
-the files were dumped.
-.RE
-
-.sp
-.ne 2
-.na
-\fBsetpager \fIcommand\fR\fR
-.ad
-.RS 22n
-Sets the command to use for paginating output instead of the default or that
-inherited from the environment. The \fIcommand\fR string may include arguments
-in addition to the command itself.
-.RE
-
-.sp
-.ne 2
-.na
-\fBverbose\fR
-.ad
-.RS 22n
-Toggle the status of the \fBv\fR modifier. While \fBv\fR is in effect, the
-\fBls\fR command lists the inode numbers of all entries, and \fBufsrestore\fR
-displays information about each file as it is extracted.
-.RE
-
-.sp
-.ne 2
-.na
-\fBwhat\fR
-.ad
-.RS 22n
-Display the dump header on the media.
-.RE
-
-.SH OPERANDS
-.sp
-.LP
-The following operands are supported.
-.sp
-.ne 2
-.na
-\fB\fIfilename\fR\fR
-.ad
-.RS 12n
-Specifies the pathname of files (or directories) to be restored to disk. Unless
-the \fBh\fR function modifier is also used, a directory name refers to the
-files it contains, and (recursively) its subdirectories and the files they
-contain. \fIfilename\fR is associated with either the \fBx\fR or \fBt\fR
-function letters, and must come last.
-.RE
-
-.SH USAGE
-.sp
-.LP
-See \fBlargefile\fR(5) for the description of the behavior of \fBufsrestore\fR
-when encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
-.SH EXIT STATUS
-.sp
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 5n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB1\fR\fR
-.ad
-.RS 5n
-An error occurred. Verbose messages are displayed.
-.RE
-
-.SH ENVIRONMENT VARIABLES
-.sp
-.ne 2
-.na
-\fBPAGER\fR
-.ad
-.RS 10n
-The command to use as a filter for paginating output. This can also be used to
-specify the options to be used. Default is \fBmore\fR(1).
-.RE
-
-.sp
-.ne 2
-.na
-\fBTMPDIR\fR
-.ad
-.RS 10n
-Selects the directory for temporary files. Defaults to \fB/tmp\fR if not
-defined in the environment.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/dev/rmt/0\fR\fR
-.ad
-.RS 23n
-the default tape drive
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB$TMPDIR/rstdir*\fR\fR
-.ad
-.RS 23n
-file containing directories on the tape
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB$TMPDIR/rstmode*\fR\fR
-.ad
-.RS 23n
-owner, mode, and timestamps for directories
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\&./restoresymtable\fR\fR
-.ad
-.RS 23n
-information passed between incremental restores
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBmore\fR(1), \fBmkfs\fR(1M), \fBmount\fR(1M), \fBrmt\fR(1M),
-\fBufsdump\fR(1M), \fBufsdump\fR(4), \fBattributes\fR(5), \fBlargefile\fR(5)
-.SH DIAGNOSTICS
-.sp
-.LP
-\fBufsrestore\fR complains about bad option characters.
-.sp
-.LP
-Read errors result in complaints. If \fBy\fR has been specified, or the user
-responds \fBy\fR, \fBufsrestore\fR will attempt to continue.
-.sp
-.LP
-If the dump extends over more than one tape, \fBufsrestore\fR asks the user to
-change tapes. If the \fBx\fR or \fBi\fR function letter has been specified,
-\fBufsrestore\fR also asks which volume the user wishes to mount. If the
-\fBs\fR modifier has been specified, and volume 1 is mounted, it is
-automatically positioned to the indicated file.
-.sp
-.LP
-There are numerous consistency checks that can be listed by \fBufsrestore\fR.
-Most checks are self-explanatory or can "never happen". Common errors are given
-below.
-.sp
-.ne 2
-.na
-\fB\fBConverting to new file system format\fR\fR
-.ad
-.sp .6
-.RS 4n
-A dump tape created from the old file system has been loaded. It is
-automatically converted to the new file system format.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIfilename\fR\fB: not found on tape\fR\fR
-.ad
-.sp .6
-.RS 4n
-The specified file name was listed in the tape directory, but was not found on
-the tape. This is caused by tape read errors while looking for the file, using
-a dump tape created on an active file system, or restoring a partial dump with
-the \fBr\fR function.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBexpected next file\fR \fIinumber\fR\fB, got\fR \fIinumber\fR\fR
-.ad
-.sp .6
-.RS 4n
-A file that was not listed in the directory showed up. This can occur when
-using a dump tape created on an active file system.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBIncremental tape too low\fR\fR
-.ad
-.sp .6
-.RS 4n
-When doing an incremental restore, a tape that was written before the previous
-incremental tape, or that has too low an incremental level has been loaded.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBIncremental tape too high\fR\fR
-.ad
-.sp .6
-.RS 4n
-When doing incremental restore, a tape that does not begin its coverage where
-the previous incremental tape left off, or one that has too high an incremental
-level has been loaded.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmedia\fR \fBread\fR \fBerror:\fR \fBinvalid\fR \fBargument\fR\fR
-.ad
-.sp .6
-.RS 4n
-Blocking factor specified for read is smaller than the blocking factor used to
-write data.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBTape read error while restoring\fR\fR
-.ad
-.br
-.na
-\fB\fBTape read error while skipping over inode inumber\fR\fR
-.ad
-.br
-.na
-\fB\fBTape read error while trying to resynchronize\fR\fR
-.ad
-.br
-.na
-\fB\fBA tape read error has\ occurred\fR\fR
-.ad
-.sp .6
-.RS 4n
-If a file name is specified, then its contents are probably partially wrong. If
-an inode is being skipped or the tape is trying to resynchronize, then no
-extracted files have been corrupted, though files may not be found on the tape.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBresync ufsrestore, skipped\fR \fInum\fR\fR
-.ad
-.sp .6
-.RS 4n
-After a tape read error, \fBufsrestore\fR may have to resynchronize itself.
-This message lists the number of blocks that were skipped over.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBIncorrect tape label. Expected `foo', got `bar'.\fR\fR
-.ad
-.sp .6
-.RS 4n
-The \fBL\fR option was specified, and its value did not match what was recorded
-in the header of the dump file.
-.RE
-
-.SH NOTES
-.sp
-.LP
-\fBufsrestore\fR can get confused when doing incremental restores from dump
-tapes that were made on active file systems.
-.sp
-.LP
-A \fBlevel 0\fR dump must be done after a full restore. Because
-\fBufsrestore\fR runs in user mode, it has no control over inode allocation.
-This means that \fBufsrestore\fR repositions the files, although it does not
-change their contents. Thus, a full dump must be done to get a new set of
-directories reflecting the new file positions, so that later incremental dumps
-will be correct.
diff --git a/usr/src/man/man1m/unshare.1m b/usr/src/man/man1m/unshare.1m
deleted file mode 100644
index 8a1d8f9806..0000000000
--- a/usr/src/man/man1m/unshare.1m
+++ /dev/null
@@ -1,90 +0,0 @@
-'\" te
-.\" Copyright 2000, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH UNSHARE 1M "Jan 23, 2007"
-.SH NAME
-unshare \- make local resource unavailable for mounting by remote systems
-.SH SYNOPSIS
-.LP
-.nf
-\fBunshare\fR [\fB-p\fR] [\fB-F\fR \fIFSType\fR] [\fB-o\fR \fIspecific_options\fR]
- [\fIpathname\fR | \fIresourcename\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBunshare\fR command makes a shared local resource unavailable as file
-system type \fIFSType\fR. If the option \fB-F\fR\fIFSType\fR is omitted, then
-the first file system type listed in file \fB/etc/dfs/fstypes\fR will be used
-as the default. \fISpecific_options\fR, as well as the semantics of
-\fIresourcename\fR, are specific to particular distributed file systems.
-.SH OPTIONS
-.sp
-.ne 2
-.na
-\fB\fB-F\fR \fIFSType\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify the file system type.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-o\fR \fIspecific_options\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify options specific to the file system provided by the \fB-F\fR option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR\fR
-.ad
-.sp .6
-.RS 4n
-Remove resource from shared status in a way that persists across reboots.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/dfs/fstypes\fR\fR
-.ad
-.sp .6
-.RS 4n
-Lists distributed file system utilities packages installed on the system.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/dfs/sharetab\fR\fR
-.ad
-.sp .6
-.RS 4n
-Contains a table of local resources shared by the \fBshare\fR command.
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBshare\fR(1M), \fBshareall\fR(1M), \fBattributes\fR(5)
-.SH NOTES
-.sp
-.LP
-If \fIpathname\fR or \fIresourcename\fR is not found in the shared information,
-an error message will be sent to standard error.
-.sp
-.LP
-When an \fBunshare\fR command completes successfully, a client mounting a file
-system specified in that \fBunshare\fR command no longer has access to that
-file system.
diff --git a/usr/src/man/man1m/unshare_nfs.1m b/usr/src/man/man1m/unshare_nfs.1m
deleted file mode 100644
index beb8c529c4..0000000000
--- a/usr/src/man/man1m/unshare_nfs.1m
+++ /dev/null
@@ -1,87 +0,0 @@
-'\" te
-.\" Copyright (c) 2003 Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH UNSHARE_NFS 1M "May 6, 2003"
-.SH NAME
-unshare_nfs \- make local NFS file systems unavailable for mounting by remote
-systems
-.SH SYNOPSIS
-.LP
-.nf
-\fBunshare\fR [\fB-F\fR nfs] \fIpathname\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBunshare\fR command makes local file systems unavailable for mounting by
-remote systems. The shared file system must correspond to a line with NFS as
-the \fIFSType\fR in the file \fB/etc/dfs/sharetab\fR.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-F\fR\fR
-.ad
-.RS 6n
-This option may be omitted if NFS is the first file system type listed in the
-file \fB/etc/dfs/fstypes\fR.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/dfs/fstypes\fR\fR
-.ad
-.RS 22n
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/dfs/sharetab \fR\fR
-.ad
-.RS 22n
-
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBnfsd\fR(1M), \fBshare\fR(1M), \fBattributes\fR(5)
-.SH NOTES
-.sp
-.LP
-If the file system being unshared is a symbolic link to a valid pathname, the
-canonical path (the path which the symbolic link follows) will be unshared.
-.sp
-.LP
-For example, if \fB/export/foo\fR is a symbolic link to \fB/export/bar\fR
-(\fB/export/foo -> /export/bar\fR), the following \fBunshare\fR command will
-result in \fB/export/bar\fR as the unshared pathname (and not
-\fB/export/foo\fR):
-.sp
-.in +2
-.nf
-example# unshare -F nfs /export/foo
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-For file systems that are accessed by NFS Version 4 clients, once the unshare
-is complete, all NFS Version 4 state (open files and file locks) are released
-and unrecoverable by the clients. If the intent is to share the file system
-after some administrative action, the NFS daemon (\fBnfsd\fR) should first be
-stopped and then the file system unshared. After the administrative action is
-complete, the file system would then be shared and the NFS daemon restarted.
-See \fBnfsd\fR(1M)
diff --git a/usr/src/man/man1m/update_drv.1m b/usr/src/man/man1m/update_drv.1m
deleted file mode 100644
index 987a48de6e..0000000000
--- a/usr/src/man/man1m/update_drv.1m
+++ /dev/null
@@ -1,325 +0,0 @@
-'\" te
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH UPDATE_DRV 1M "August 29, 2021"
-.SH NAME
-update_drv \- modify device driver attributes
-.SH SYNOPSIS
-.nf
-\fBupdate_drv\fR [\fB-f\fR | \fB-v\fR] [\fB-n\fR] \fIdriver_module\fR
-.fi
-
-.LP
-.nf
-\fBupdate_drv\fR [\fB-b\fR \fIbasedir\fR] [\fB-f\fR | \fB-v\fR] [\fB-n\fR] \fB-a\fR [\fB-m\fR '\fIpermission\fR']
- [\fB-i\fR '\fIidentify-name\fR'] [\fB-P\fR '\fIprivilege\fR'] [\fB-p\fR '\fIpolicy\fR'] \fIdriver_module\fR
-.fi
-
-.LP
-.nf
-\fBupdate_drv\fR [\fB-b\fR \fIbasedir\fR] [\fB-f\fR | \fB-v\fR] [\fB-n\fR] \fB-d\fR [\fB-m\fR '\fIpermission\fR']
- [\fB-i\fR '\fIidentify-name\fR'] [\fB-P\fR '\fIprivilege\fR'] [\fB-p\fR '\fIpolicy\fR'] \fIdriver_module\fR
-.fi
-
-.SH DESCRIPTION
-The \fBupdate_drv\fR command informs the system about attribute changes to an
-installed device driver. It can be used to re-read the \fBdriver.conf\fR(4)
-file, or to add, modify, or delete a driver's minor node permissions or
-aliases.
-.sp
-.LP
-Without options, \fBupdate_drv\fR reloads the \fBdriver.conf\fR file.
-.sp
-.LP
-Upon successfully updating the aliases, the driver binding takes effect upon
-reconfig boot or hotplug of the device.
-.sp
-.LP
-Upon successfully updating the permissions, only the new driver minor nodes get
-created with the modified set of file permissions. Existing driver minor nodes
-do not get modified.
-.SH OPTIONS
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-a\fR\fR
-.ad
-.sp .6
-.RS 4n
-Add a \fIpermission\fR, \fIaliases\fR, \fIprivilege\fR or \fIpolicy\fR entry.
-.sp
-With the \fB-a\fR option specified, a permission entry (using the \fB-m\fR
-option), or a driver's aliases entry (using the \fB-i\fR option), a device
-privilege (using the \fB-P\fR option) or a a device policy (using the \fB-p\fR
-option), can be added or updated. If a matching minor node permissions entry is
-encountered (having the same driver name and the minor node), it is replaced.
-If a matching aliases entry is encountered (having a different driver name and
-the same alias), an error is reported.
-.sp
-The \fB-a\fR and \fB-d\fR options are mutually exclusive.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-b\fR \fIbasedir\fR\fR
-.ad
-.sp .6
-.RS 4n
-Installs or modifies the driver on the system with a root directory of basedir
-rather than installing on the system executing \fBupdate_drv\fR.
-.LP
-Note -
-.sp
-.RS 2
-The root file system of any non-global zones must not be referenced with the
-\fB-b\fR option. Doing so might damage the global zone's file system, might
-compromise the security of the global zone, and might damage the non-global
-zone's file system. See \fBzones\fR(5).
-.RE
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-d\fR\fR
-.ad
-.sp .6
-.RS 4n
-Delete a \fIpermission\fR, \fIaliases\fR, \fIprivilege\fR or \fIpolicy\fR
-entry.
-.sp
-The \fB-m\fR \fIpermission\fR, \fB-i\fR \fIidentify-name\fR, \fB-P\fR
-\fIprivilege\fR or the \fB-p\fR \fIpolicy\fR option needs to be specified with
-the \fB-d\fR option.
-.sp
-The \fB-d\fR and \fB-a\fR options are mutually exclusive.
-.sp
-If the entry doesn't exist \fBupdate_drv\fR returns an error.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR\fR
-.ad
-.sp .6
-.RS 4n
-Force the system to reread the \fBdriver.conf\fR file even if the driver module
-cannot be unloaded. See \fBNOTES\fR section for details.
-.sp
-\fBWithout\fR this option, when removing an alias for a driver,
-\fBupdate_drv\fR updates the binding files for the next boot, but returns an
-error if one or more devices that reference the driver-alias binding remains.
-\fBWith\fR the \fB-f\fR option, \fBupdate_drv\fR does not return an error if
-such devices remain.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-i\fR '\fIidentify-name\fR'\fR
-.ad
-.sp .6
-.RS 4n
-A white-space separated list of aliases for the driver. If \fB-a\fR or \fB-d\fR
-option is not specified then this option is ignored. The \fIidentify-name\fR
-string is mandatory. If all aliases need to be removed, \fBrem_drv\fR(1M) is
-recommended.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-m\fR '\fIpermission\fR'\fR
-.ad
-.sp .6
-.RS 4n
-Specify a white-space separated list of file system permissions for the device
-node of the device driver. If \fB-a\fR or \fB-d\fR option is not specified
-then, this option is ignored. The permission string is mandatory.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR\fR
-.ad
-.sp .6
-.RS 4n
-Do not try to load and attach \fIdevice_driver\fR, just modify the system
-configuration files for that driver.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR '\fIpolicy\fR'\fR
-.ad
-.sp .6
-.RS 4n
-With the \fB-a\fR option, policy is a white-space separated list of complete
-device policies. For the \fB-d\fR option, policy is a white space separated
-list of minor device specifications. The minor device specifications are
-matched exactly against the entries in \fB/etc/security/device_policy\fR, that
-is, no wildcard matching is performed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-P\fR '\fIprivilege\fR'\fR
-.ad
-.sp .6
-.RS 4n
-With the \fB-a\fR option, privilege is a comma separated list of additional
-driver privileges. For the \fB-d\fR option, privilege is a single privilege.
-The privileges are added to or removed from the \fB/etc/security/extra_privs\fR
-file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.sp .6
-.RS 4n
-Verbose.
-.RE
-
-.SH EXAMPLES
-\fBExample 1 \fRAdding or Modifying an Existing Minor Permissions Entry
-.sp
-.LP
-The following command adds or modifies the existing minor permissions entry of
-the \fBclone\fR driver:
-
-.sp
-.in +2
-.nf
-example# update_drv -a -m 'llc1 777 joe staff' clone
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRRemoving All Minor Permissions Entries
-.sp
-.LP
-The following command removes all minor permission entries of the \fBusbprn\fR
-driver, the USB printer driver:
-
-.sp
-.in +2
-.nf
-example# update_drv -d -m '* 0666 root sys' usbprn
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRAdding a Driver Aliases Entry
-.sp
-.LP
-The following command adds a driver aliases entry of the \fBugen\fR driver with
-the identity string of \fBusb459,20\fR:
-
-.sp
-.in +2
-.nf
-example# update_drv -a -i '"usb459,20"' ugen
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 4 \fRRe-reading the \fBdriver.conf\fR File For the \fBohci\fR Driver
-.sp
-.LP
-The following command re-reads the \fBdriver.conf\fR(4) file.
-
-.sp
-.in +2
-.nf
- example# update_drv ohci
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 5 \fRRequiring a Self-defined Privilege to Open a tcp Socket
-.sp
-.LP
-The following command requires a self-defined privilege to open a tcp socket:
-
-.sp
-.in +2
-.nf
-example# update_drv -a -P net_tcp -p \e
- 'write_priv_set=net_tcp read_priv_set=net_tcp' tcp
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 6 \fREstablishing a Path-oriented Alias
-.sp
-.LP
-The following command establishes a path-oriented alias to force a specific
-driver, \fBqlt\fR, to be used for a particular device path:
-
-.sp
-.in +2
-.nf
-example# update_drv -a -i '"/pci@8,600000/SUNW,qlc@4"' qlt
-.fi
-.in -2
-.sp
-
-.SH EXIT STATUS
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.sp .6
-.RS 4n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB>\fB0\fR\fR
-.ad
-.sp .6
-.RS 4n
-An error occurred.
-.RE
-
-.SH SEE ALSO
-\fBadd_drv\fR(1M), \fBmodunload\fR(1M), \fBrem_drv\fR(1M),
-\fBdriver.conf\fR(4), \fBattributes\fR(5), \fBprivileges\fR(5)
-.SH NOTES
-If \fB-a\fR or \fB-d\fR options are specified, \fBupdate_drv\fR does not reread
-the \fBdriver.conf\fR file.
-.sp
-.LP
-A forced update of the \fBdriver.conf\fR file reloads the \fBdriver.conf\fR
-file without reloading the driver binary module. In this case, devices which
-cannot be detached reference driver global properties from the old
-\fBdriver.conf\fR file, while the remaining driver instances reference global
-properties in the new \fBdriver.conf\fR file.
-.sp
-.LP
-It is possible to add an alias , which changes the driver binding of a device
-already being managed by a different driver. A force update with the \fB-a\fR
-option tries to bind to the new driver and report error if it cannot. If you
-specify more than one of the \fB-m\fR, \fB-i\fR, \fB-P\fR or \fB-p\fR options,
-a force flag tries to modify aliases or permissions. This is done even if the
-other operation fails and vice-versa.
diff --git a/usr/src/man/man1m/updatehome.1m b/usr/src/man/man1m/updatehome.1m
deleted file mode 100644
index 2d97934d39..0000000000
--- a/usr/src/man/man1m/updatehome.1m
+++ /dev/null
@@ -1,179 +0,0 @@
-'\" te
-.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH UPDATEHOME 1M "Jul 20, 2007"
-.SH NAME
-updatehome \- update the home directory copy and link files for the current
-label
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/bin/updatehome\fR [\fB-cirs\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBupdatehome\fR reads the user's minimum-label copy and link-control files
-(\fB\&.copy_files\fR and \fB\&.link_files\fR). These files contain a list of
-files to be copied and symbolically linked from the user's minimum-label home
-directory to the user's home directory at the current label.
-.sp
-.LP
-The Solaris Trusted Extensions \fBdtsession\fR program performs an
-\fBupdatehome\fR whenever a newly labeled workspace is created so that the
-user's favorite files are available for use. For example, the user probably
-wants a symbolic link to such files as \fB\&.profile\fR, \fB\&.login\fR,
-\fB\&.cshrc\fR, \fB\&.exrc\fR, \fB\&.mailrc\fR, and \fB~/bin\fR. The
-\fBupdatehome\fR command provides a convenient mechanism for accomplishing this
-symlink. The user can add files to those to be copied (\fB\&.copy_files\fR) and
-to those to be symbolically linked (\fB\&.link_files\fR).
-.SH OPTIONS
-.sp
-.ne 2
-.na
-\fB\fB-c\fR\fR
-.ad
-.RS 6n
-Replace existing home-directory copies at the current label. The default is to
-skip over existing copies.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-i\fR\fR
-.ad
-.RS 6n
-Ignore errors encountered. The default aborts on error.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-r\fR\fR
-.ad
-.RS 6n
-Replace existing home-directory copies or symbolic links at the current label.
-This option implies options \fB-c\fR and \fB-s\fR. The default is to skip over
-existing copies or symbolic links.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR\fR
-.ad
-.RS 6n
-Replace existing home-directory symbolic links at the current label. The
-default is to skip over existing symbolic links.
-.RE
-
-.SH EXIT STATUS
-.sp
-.LP
-Upon success, \fBupdatehome\fR returns \fB0\fR. Upon failure, \fBupdatehome\fR
-returns \fB1\fR and writes diagnostic messages to standard error.
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRA Sample \fB\&.copy_files\fR File
-.sp
-.LP
-The files that are listed in \fB\&.copy_files\fR can be modified at every
-user's label.
-
-.sp
-.in +2
-.nf
-\&.cshrc
-\&.mailrc
-\&.mozilla/bookmarks.html
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRA Sample \fB\&.link_files\fR File
-.sp
-.LP
-The files that are listed in \fB\&.link_files\fR can be modified at the lowest
-label. The changes propagate to the other labels that are available to the
-user.
-
-.sp
-.in +2
-.nf
-~/bin
-\&.mozilla/preferences
-\&.xrc
-\&.rhosts
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRUpdating the Linked and Copied Files
-.sp
-.LP
-The \fB\&.copy_files\fR and \fB\&.link_files\fR were updated by the user at the
-minimum label. At a higher label, the user refreshes the copies and the links.
-No privileges are required to run the command.
-
-.sp
-.in +2
-.nf
-% \fBupdatehome -r\fR
-.fi
-.in -2
-.sp
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB$HOME/.copy_files\fR\fR
-.ad
-.RS 21n
-List of files to be copied
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB$HOME/.link_files\fR\fR
-.ad
-.RS 21n
-List of files to be symbolically linked
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Committed
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBattributes\fR(5)
-.sp
-.LP
-\fI\&.copy_files and .link_files Files\fR in \fISolaris Trusted Extensions
-Administrator\&'s Procedures\fR
-.SH NOTES
-.sp
-.LP
-The functionality described on this manual page is available only if the system
-is configured with Trusted Extensions.
diff --git a/usr/src/man/man1m/useradd.1m b/usr/src/man/man1m/useradd.1m
deleted file mode 100644
index 819e7b55b6..0000000000
--- a/usr/src/man/man1m/useradd.1m
+++ /dev/null
@@ -1,562 +0,0 @@
-'\" te
-.\" Copyright (c) 2018 Peter Tribble.
-.\" Copyright (c) 2013 Gary Mills
-.\" Copyright (c) 2008 Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH USERADD 1M "Jan 7, 2018"
-.SH NAME
-useradd \- administer a new user login on the system
-.SH SYNOPSIS
-.LP
-.nf
-\fBuseradd\fR [\fB-A\fR \fIauthorization\fR[,\fIauthorization\fR]...]
- [\fB-b\fR \fIbase_dir\fR] [\fB-c\fR \fIcomment\fR] [\fB-d\fR \fIdir\fR] [\fB-e\fR \fIexpire\fR]
- [\fB-f\fR \fIinactive\fR] [\fB-g\fR \fIgroup\fR] [\fB-G\fR \fIgroup\fR[,\fIgroup\fR]...]
- [\fB-K\fR \fIkey=value\fR] [\fB-m\fR [\fB-z|-Z\fR] [\fB-k\fR \fIskel_dir\fR]] [\fB-p\fR \fIprojname\fR]
- [\fB-P\fR \fIprofile\fR[,\fIprofile\fR]...] [\fB-R\fR \fIrole\fR[,\fIrole\fR]...]
- [\fB-s\fR \fIshell\fR] [\fB-u\fR \fIuid\fR [\fB-o\fR]] \fIlogin\fR
-.fi
-
-.LP
-.nf
-\fBuseradd\fR \fB-D\fR [\fB-A\fR \fIauthorization\fR[,\fIauthorization\fR]...]
- [\fB-b\fR \fIbase_dir\fR] [\fB-e\fR \fIexpire\fR] [\fB-f\fR \fIinactive\fR] [\fB-g\fR \fIgroup\fR]
- [\fB-k\fR \fIskel_dir\fR] [\fB-K\fR \fIkey=value\fR] [\fB-p\fR \fIprojname\fR]
- [\fB-P\fR \fIprofile\fR[,\fIprofile\fR]...] [\fB-R\fR \fIrole\fR[,\fIrole\fR]...]
- [\fB-s\fR \fIshell\fR]
-.fi
-
-.SH DESCRIPTION
-.LP
-\fBuseradd\fR adds a new user to the \fB/etc/passwd\fR and \fB/etc/shadow\fR
-and \fB/etc/user_attr\fR files. The \fB-A\fR and \fB-P\fR options respectively
-assign authorizations and profiles to the user. The \fB-R\fR option assigns
-roles to the user. The \fB-p\fR option associates a project with the user. The
-\fB-K\fR option adds a \fIkey=value\fR pair to \fB/etc/user_attr\fR for the
-user. Multiple \fIkey=value\fR pairs may be added with multiple \fB-K\fR
-options.
-.sp
-.LP
-\fBuseradd\fR also creates supplementary group memberships for the user
-(\fB-G\fR option) and creates the home directory (\fB-m\fR option) for the user
-if requested. The new login remains locked until the \fBpasswd\fR(1) command is
-executed.
-.sp
-.LP
-Specifying \fBuseradd\fR \fB-D\fR with the \fB-A\fR, \fB-b\fR, \fB-e\fR,
-\fB-f\fR, \fB-g\fR, \fB-k\fR, \fB-K\fR, \fB-p\fR, \fB-P\fR, \fB-R\fR, or
-\fB-s\fR option (or any combination of these options) sets the default values
-for the respective fields. See the \fB-D\fR option, below. Subsequent
-\fBuseradd\fR commands without the \fB-D\fR option use these arguments.
-.sp
-.LP
-The system file entries created with this command have a limit of 2048
-characters per line. Specifying long arguments to several options can exceed
-this limit.
-.sp
-.LP
-\fBuseradd\fR requires that usernames be in the format described in
-\fBpasswd\fR(4). A warning message is displayed if these restrictions are not
-met. See \fBpasswd\fR(4) for the requirements for usernames.
-.LP
-To change the action of \fBuseradd\fR when the traditional login name
-length limit of eight characters is exceeded, edit the file
-\fB/etc/default/useradd\fR by removing the \fB#\fR (pound sign) before the
-appropriate \fBEXCEED_TRAD=\fR entry, and adding it before the others.
-.SH OPTIONS
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-A\fR \fIauthorization\fR\fR
-.ad
-.sp .6
-.RS 4n
-One or more comma separated authorizations defined in \fBauth_attr\fR(4). Only
-a user or role who has \fBgrant\fR rights to the authorization can assign it to
-an account.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-b\fR \fIbase_dir\fR\fR
-.ad
-.sp .6
-.RS 4n
-The base directory for new login home directories (see the \fB-d\fR option
-below). The directory named by \fIbase_dir\fR must already exist and be an
-absolute path.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-c\fR \fIcomment\fR\fR
-.ad
-.sp .6
-.RS 4n
-A text string. It is generally a short description of the login, and is
-currently used as the field for the user's full name. This information is
-stored in the user's \fB/etc/passwd\fR entry.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-d\fR \fIdir\fR\fR
-.ad
-.sp .6
-.RS 4n
-The home directory of the new user. If not supplied, it defaults to
-\fIbase_dir\fR/\fIaccount_name\fR, where \fIbase_dir\fR is the base directory
-for new login home directories and \fIaccount_name\fR is the new login name.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-D\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display the default values for \fBgroup\fR, \fBbase_dir\fR, \fBskel_dir\fR,
-\fBshell\fR, \fBinactive\fR, \fBexpire\fR, \fBproj\fR, \fBprojname\fR and
-\fBkey=value\fR pairs. When used with the \fB-A\fR, \fB-b\fR, \fB-e\fR,
-\fB-f\fR, \fB-g\fR, \fB-P\fR, \fB-p\fR, \fB-R\fR, or \fB-K\fR options, the
-\fB-D\fR option sets the default values for the specified fields. The default
-values are:
-.sp
-.ne 2
-.na
-\fBgroup\fR
-.ad
-.sp .6
-.RS 4n
-\fBother\fR (\fBGID\fR of 1)
-.RE
-
-.sp
-.ne 2
-.na
-\fBbase_dir\fR
-.ad
-.sp .6
-.RS 4n
-\fB/home\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fBskel_dir\fR
-.ad
-.sp .6
-.RS 4n
-\fB/etc/skel\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fBshell\fR
-.ad
-.sp .6
-.RS 4n
-\fB/bin/sh\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fBinactive\fR
-.ad
-.sp .6
-.RS 4n
-\fB0\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fBexpire\fR
-.ad
-.sp .6
-.RS 4n
-null
-.RE
-
-.sp
-.ne 2
-.na
-\fBauths\fR
-.ad
-.sp .6
-.RS 4n
-null
-.RE
-
-.sp
-.ne 2
-.na
-\fBprofiles\fR
-.ad
-.sp .6
-.RS 4n
-null
-.RE
-
-.sp
-.ne 2
-.na
-\fBproj\fR
-.ad
-.sp .6
-.RS 4n
-\fB3\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fBprojname\fR
-.ad
-.sp .6
-.RS 4n
-\fBdefault\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fBkey=value\fR (pairs defined in \fBuser_attr\fR(4))
-.ad
-.sp .6
-.RS 4n
-not present
-.RE
-
-.sp
-.ne 2
-.na
-\fBroles\fR
-.ad
-.sp .6
-.RS 4n
-null
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-e\fR \fIexpire\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify the expiration date for a login. After this date, no user will be able
-to access this login. The expire option argument is a date entered using one of
-the date formats included in the template file \fB/etc/datemsk\fR. See
-\fBgetdate\fR(3C).
-.sp
-If the date format that you choose includes spaces, it must be quoted. For
-example, you can enter \fB10/6/90\fR or \fBOctober 6, 1990\fR. A null value
-(\fB" "\fR) defeats the status of the expired date. This option is useful for
-creating temporary logins.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR \fIinactive\fR\fR
-.ad
-.sp .6
-.RS 4n
-The maximum number of days allowed between uses of a login ID before that
-\fBID\fR is declared invalid. Normal values are positive integers. A value of
-\fB0\fR defeats the status.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-g\fR \fIgroup\fR\fR
-.ad
-.sp .6
-.RS 4n
-An existing group's integer \fBID\fR or character-string name. Without the
-\fB-D\fR option, it defines the new user's primary group membership and
-defaults to the default group. You can reset this default value by invoking
-\fBuseradd\fR \fB-D\fR \fB-g\fR \fIgroup\fR. GIDs 0-99 are reserved for
-allocation by the Operating System.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-G\fR \fIgroup\fR\fR
-.ad
-.sp .6
-.RS 4n
-One or more comma-separated existing groups, specified by integer \fBID\fR or
-character-string name. It defines the new user's supplementary group
-membership. Any duplicate groups between the \fB-g\fR and \fB-G\fR options are
-ignored. No more than \fBNGROUPS_MAX\fR groups can be specified. GIDs 0-99 are
-reserved for allocation by the Operating System.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-k\fR \fIskel_dir\fR\fR
-.ad
-.sp .6
-.RS 4n
-A directory that contains skeleton information (such as \fB\&.profile\fR) that
-can be copied into a new user's home directory. This directory must already
-exist. The system provides the \fB/etc/skel\fR directory that can be used for
-this purpose.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-K\fR \fIkey=value\fR\fR
-.ad
-.sp .6
-.RS 4n
-A \fIkey=value\fR pair to add to the user's attributes. Multiple \fB-K\fR
-options may be used to add multiple \fIkey=value\fR pairs. The generic \fB-K\fR
-option with the appropriate key may be used instead of the specific implied key
-options (\fB-A\fR, \fB-p\fR, \fB-P\fR, \fB-R\fR). See \fBuser_attr\fR(4) for a
-list of valid \fIkey=value\fR pairs. The "type" key is not a valid key for this
-option. Keys cannot be repeated.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-m\fR\fR [\fB-z|-Z\fR]
-.ad
-.sp .6
-.RS 4n
-Create the new user's home directory if it does not already exist. If the
-directory already exists, it must have read, write, and execute permissions by
-\fIgroup\fR, where \fIgroup\fR is the user's primary group.
-.sp
-If the parent directory of the user's home directory is located on a separate
-\fBZFS\fR file system and the \fB/etc/default/useradd\fR file contains the
-parameter \fBMANAGE_ZFS\fR set to the value \fBYES\fR, a new \fBZFS\fR
-file system will be created for the user.
-.sp
-If the \fB-z\fR option is specified, \fBuseradd\fR will always try to create
-a new file system for the home directory.
-.sp
-If the \fB-Z\fR option is specified, a new file system will never be created.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-o\fR\fR
-.ad
-.sp .6
-.RS 4n
-This option allows a \fBUID\fR to be duplicated (non-unique).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR \fIprojname\fR\fR
-.ad
-.sp .6
-.RS 4n
-Name of the project with which the added user is associated. See the
-\fIprojname\fR field as defined in \fBproject\fR(4).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-P\fR \fIprofile\fR\fR
-.ad
-.sp .6
-.RS 4n
-One or more comma-separated execution profiles defined in \fBprof_attr\fR(4).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-R\fR \fIrole\fR\fR
-.ad
-.sp .6
-.RS 4n
-One or more comma-separated roles defined in \fBuser_attr\fR(4).
-Roles cannot be assigned to other roles.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR \fIshell\fR\fR
-.ad
-.sp .6
-.RS 4n
-Full pathname of the program used as the user's shell on login. It defaults to
-an empty field causing the system to use \fB/bin/sh\fR as the default. The
-value of \fIshell\fR must be a valid executable file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-u\fR \fIuid\fR\fR
-.ad
-.sp .6
-.RS 4n
-The \fBUID\fR of the new user. This \fBUID\fR must be a non-negative decimal
-integer below \fBMAXUID\fR as defined in \fB<sys/param.h>\fR\&. The \fBUID\fR
-defaults to the next available (unique) number above the highest number
-currently assigned. For example, if \fBUID\fRs 100, 105, and 200 are assigned,
-the next default \fBUID\fR number will be 201. \fBUID\fRs \fB0\fR-\fB99\fR are
-reserved for allocation by the Operating System.
-.RE
-
-.SH FILES
-.LP
-\fB/etc/default/useradd\fR
-.sp
-.LP
-\fB/etc/datemsk\fR
-.sp
-.LP
-\fB/etc/passwd\fR
-.sp
-.LP
-\fB/etc/shadow\fR
-.sp
-.LP
-\fB/etc/group\fR
-.sp
-.LP
-\fB/etc/skel\fR
-.sp
-.LP
-\fB/usr/include/limits.h\fR
-.sp
-.LP
-\fB/etc/user_attr\fR
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Committed
-.TE
-
-.SH SEE ALSO
-.LP
-\fBpasswd\fR(1), \fBprofiles\fR(1), \fBroles\fR(1),
-\fBgroupadd\fR(1M), \fBgroupdel\fR(1M), \fBgroupmod\fR(1M), \fBgrpck\fR(1M),
-\fBlogins\fR(1M), \fBpwck\fR(1M), \fBuserdel\fR(1M), \fBusermod\fR(1M),
-\fBzfs\fR(1M), \fBgetdate\fR(3C), \fBauth_attr\fR(4), \fBpasswd\fR(4),
-\fBprof_attr\fR(4), \fBproject\fR(4), \fBuser_attr\fR(4), \fBattributes\fR(5)
-.SH DIAGNOSTICS
-.LP
-In case of an error, \fBuseradd\fR prints an error message and exits with a
-non-zero status.
-.sp
-.LP
-The following indicates that \fBlogin\fR specified is already in use:
-.sp
-.in +2
-.nf
-UX: useradd: ERROR: login is already in use. Choose another.
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The following indicates that the \fIuid\fR specified with the \fB-u\fR option
-is not unique:
-.sp
-.in +2
-.nf
-UX: useradd: ERROR: uid \fIuid\fR is already in use. Choose another.
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The following indicates that the \fIgroup\fR specified with the \fB-g\fR option
-is already in use:
-.sp
-.in +2
-.nf
-UX: useradd: ERROR: group \fIgroup\fR does not exist. Choose another.
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The following indicates that the \fIuid\fR specified with the \fB-u\fR option
-is in the range of reserved \fBUID\fRs (from \fB0\fR-\fB99\fR):
-.sp
-.in +2
-.nf
-UX: useradd: WARNING: uid \fIuid\fR is reserved.
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The following indicates that the \fIuid\fR specified with the \fB-u\fR option
-exceeds \fBMAXUID\fR as defined in \fB<sys/param.h>\fR:
-.sp
-.in +2
-.nf
-UX: useradd: ERROR: uid \fIuid\fR is too big. Choose another.
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The following indicates that the \fB/etc/passwd\fR or \fB/etc/shadow\fR files
-do not exist:
-.sp
-.in +2
-.nf
-UX: useradd: ERROR: Cannot update system files - login cannot be created.
-.fi
-.in -2
-.sp
-
-.SH NOTES
-.LP
-The \fBuseradd\fR utility adds definitions to only the local \fB/etc/group\fR,
-\fB/etc/passwd\fR, \fB/etc/shadow\fR, \fB/etc/project\fR, and
-\fB/etc/user_attr\fR files. If a network name service
-is being used to supplement the local \fB/etc/passwd\fR file with
-additional entries, \fBuseradd\fR cannot change information supplied by the
-network name service. However \fBuseradd\fR will verify the uniqueness of the
-user name (or role) and user id and the existence of any group names specified
-against the external name service.
diff --git a/usr/src/man/man1m/userdel.1m b/usr/src/man/man1m/userdel.1m
deleted file mode 100644
index 5db1d8780f..0000000000
--- a/usr/src/man/man1m/userdel.1m
+++ /dev/null
@@ -1,168 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 1999,
-.\" Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH USERDEL 1M "Jan 7, 2018"
-.SH NAME
-userdel \- delete a user's login from the system
-.SH SYNOPSIS
-.LP
-.nf
-\fBuserdel\fR [\fB-r\fR] \fIlogin\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBuserdel\fR utility deletes a user account from the system and makes the
-appropriate account-related changes to the system file and file system.
-.SH OPTIONS
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-r\fR\fR
-.ad
-.RS 6n
-Remove the user's home directory from the system. This directory must exist.
-The files and directories under the home directory will no longer be accessible
-following successful execution of the command.
-.sp
-If the user's home directory is located on a separate \fBZFS\fR file system and
-the \fB/etc/default/useradd\fR file contains the parameter \fBMANAGE_ZFS\fR set
-to the value \fBYES\fR, the file system will be destroyed.
-.RE
-
-.SH OPERANDS
-.LP
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fB\fB\fIlogin\fR\fR\fR
-.ad
-.RS 9n
-An existing login name to be deleted.
-.RE
-
-.SH EXIT STATUS
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 6n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB2\fR\fR
-.ad
-.RS 6n
-Invalid command syntax. A usage message for the \fBuserdel\fR command is
-displayed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB6\fR\fR
-.ad
-.RS 6n
-The account to be removed does not exist.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB8\fR\fR
-.ad
-.RS 6n
-The account to be removed is in use.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB10\fR\fR
-.ad
-.RS 6n
-Cannot update the \fB/etc/group\fR or \fB/etc/user_attr\fR file but the login
-is removed from the \fB/etc/passwd\fR file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB12\fR\fR
-.ad
-.RS 6n
-Cannot remove or otherwise modify the home directory.
-.RE
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/etc/default/useradd\fR\fR
-.ad
-.RS 18n
-configuration file for user and role administrative commands
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/passwd\fR\fR
-.ad
-.RS 18n
-system password file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/shadow\fR\fR
-.ad
-.RS 18n
-system file containing users' encrypted passwords and related information
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/group\fR\fR
-.ad
-.RS 18n
-system file containing group definitions
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/user_attr\fR\fR
-.ad
-.RS 18n
-system file containing additional user attributes
-.RE
-
-.SH SEE ALSO
-.LP
-\fBauths\fR(1), \fBpasswd\fR(1), \fBprofiles\fR(1), \fBroles\fR(1),
-\fBgroupadd\fR(1M), \fBgroupdel\fR(1M), \fBgroupmod\fR(1M),
-\fBlogins\fR(1M), \fBroleadd\fR(1M), \fBroledel\fR(1M), \fBrolemod\fR(1M),
-\fBuseradd\fR(1M), \fBusermod\fR(1M), \fBzfs\fR(1M), \fBpasswd\fR(4),
-\fBprof_attr\fR(4), \fBuser_attr\fR(4), \fBattributes\fR(5)
-.SH NOTES
-.LP
-The \fBuserdel\fR utility only deletes an account definition that is in the
-local \fB/etc/group\fR, \fB/etc/passwd\fR, \fB/etc/shadow\fR, and
-\fB/etc/user_attr\fR file. file. If a network name service
-is being used to supplement the local \fB/etc/passwd\fR file with
-additional entries, \fBuserdel\fR cannot change information supplied by the
-network name service.
diff --git a/usr/src/man/man1m/usermod.1m b/usr/src/man/man1m/usermod.1m
deleted file mode 100644
index 0a2a4bfdd3..0000000000
--- a/usr/src/man/man1m/usermod.1m
+++ /dev/null
@@ -1,587 +0,0 @@
-'\" te
-.\" Copyright (c) 2018 Peter Tribble.
-.\" Copyright 1989 AT&T Copyright (c) 2004, 2009, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH USERMOD 1M "Jan 7, 2018"
-.SH NAME
-usermod \- modify a user's login information on the system
-.SH SYNOPSIS
-.LP
-.nf
-\fBusermod\fR [\fB-u\fR \fIuid\fR [\fB-o\fR]] [\fB-g\fR \fIgroup\fR] [\fB-G\fR \fIgroup\fR[,\fIgroup\fR]...]
- [\fB-d\fR \fIdir\fR [\fB-m\fR [\fB-z|-Z\fR]]] [\fB-s\fR \fIshell\fR] [\fB-c\fR \fIcomment\fR] [\fB-l\fR \fInew_name\fR]
- [\fB-f\fR \fIinactive\fR] [\fB-e\fR \fIexpire\fR]
- [\fB-A\fR \fIauthorization\fR[,\fIauthorization\fR]...]
- [\fB-P\fR \fIprofile\fR[,\fIprofile\fR]...] [\fB-R\fR \fIrole\fR[,\fIrole\fR]...]
- [\fB-K\fR \fIkey=value\fR] \fIlogin\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBusermod\fR utility modifies a user's login definition on the system. It
-changes the definition of the specified login and makes the appropriate
-login-related system file and file system changes.
-.sp
-.LP
-The system file entries created with this command have a limit of 512
-characters per line. Specifying long arguments to several options can exceed
-this limit.
-.SH OPTIONS
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-A\fR \fIauthorization\fR\fR
-.ad
-.sp .6
-.RS 4n
-One or more comma separated authorizations as defined in \fBauth_attr\fR(4).
-Only a user or role who has \fBgrant\fR rights to the \fBauthorization\fR can
-assign it to an account. This replaces any existing authorization setting. If
-an empty authorization list is specified, the existing setting is removed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-c\fR \fIcomment\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify a comment string. \fIcomment\fR can be any text string. It is generally
-a short description of the login, and is currently used as the field for the
-user's full name. This information is stored in the user's \fB/etc/passwd\fR
-entry.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-d\fR \fIdir\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify the new home directory of the user. It defaults to
-\fIbase_dir/login\fR, where \fIbase_dir\fR is the base directory for new login
-home directories, and \fBlogin\fR is the new login.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-e\fR \fIexpire\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify the expiration date for a login. After this date, no user will be able
-to access this login. The expire option argument is a date entered using one of
-the date formats included in the template file \fB/etc/datemsk\fR. See
-\fBgetdate\fR(3C).
-.sp
-For example, you may enter \fB10/6/90\fR or \fBOctober 6, 1990\fR. A value of
-\fB`` ''\fR defeats the status of the expired date.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR \fIinactive\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify the maximum number of days allowed between uses of a login \fBID\fR
-before that login \fBID\fR is declared invalid. Normal values are positive
-integers. A value of \fB0\fR defeats the status.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-g\fR \fIgroup\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify an existing group's integer \fBID\fR or character-string name. It
-redefines the user's primary group membership.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-G\fR \fIgroup\fR\fR
-.ad
-.sp .6
-.RS 4n
-One or more comma-separated existing groups, specified by integer \fBID\fR or
-character-string name. It redefines the user's supplementary group membership.
-Any duplicate groups between the \fB-g\fR and \fB-G\fR options are ignored.
-No more than \fBNGROUPS_UMAX\fR groups may be specified as defined in
-\fB<sys/param.h>\fR\&.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-K\fR \fIkey=value\fR\fR
-.ad
-.sp .6
-.RS 4n
-Replace existing or add to a user's \fIkey=value\fR pair attributes. Multiple
-\fB-K\fR options can be used to replace or add multiple \fIkey=value\fR pairs.
-However, keys must not be repeated. The generic \fB-K\fR option with the
-appropriate key can be used instead of the specific implied key options
-(\fB-A\fR, \fB-P\fR, \fB-R\fR, \fB-p\fR). See \fBuser_attr\fR(4) for a list of
-valid \fIkey\fRs. Values for these keys are usually found in man pages or other
-sources related to those keys. For example, see \fBproject\fR(4) for guidance
-on values for the \fBproject\fR key. Use the command \fBppriv\fR(1) with the
-\fB-v\fR and \fB-l\fR options for a list of values for the keys
-\fBdefaultpriv\fR and \fBlimitpriv\fR.
-.sp
-The keyword \fBtype\fR can be specified with the value \fBrole\fR or the value
-\fBnormal\fR. When using the value \fBrole\fR, the account changes from a
-normal user to a role; using the value \fBnormal\fR keeps the account a normal
-user.
-.sp
-As a \fBrole\fR account, no roles (\fB-R\fR or \fIroles=value\fR) can be
-present.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR \fInew_logname\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify the new login name for the user. See \fBpasswd\fR(4) for the
-requirements for usernames.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-m\fR\fR [\fB-z|-Z\fR]
-.ad
-.sp .6
-.RS 4n
-Move the user's home directory to the new directory specified with the \fB-d\fR
-option. If the directory already exists, it must have permissions
-read/write/execute by \fIgroup\fR, where \fIgroup\fR is the user's primary
-group.
-.sp
-If the user's old home directory was located on a separate \fBZFS\fR file system
-and the \fB/etc/default/useradd\fR file contains the parameter \fBMANAGE_ZFS\fR
-set to the value \fBYES\fR, the file system will be destroyed after the home
-directory is moved. If the parent directory of the user's new home directory is
-located on a separate \fBZFS\fR filesystem and the \fB/etc/default/useradd\fR
-file contains the parameter \fBMANAGE_ZFS\fR set to the value \fBYES\fR, a new
-\fBZFS\fR file system will be created.
-.sp
-If the \fB-z\fR option is specified, \fBusermod\fR will always try to create a
-new file system for the home directory and destroy the old one.
-.sp
-If the \fB-Z\fR option is specified, a new file system will never be created,
-and the old one will never be destroyed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-o\fR\fR
-.ad
-.sp .6
-.RS 4n
-This option allows the specified \fBUID\fR to be duplicated (non-unique).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-P\fR \fIprofile\fR\fR
-.ad
-.sp .6
-.RS 4n
-One or more comma-separated execution profiles defined in \fBprof_attr\fR(4).
-This replaces any existing profile setting in \fBuser_attr\fR(4). If an empty
-profile list is specified, the existing setting is removed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-R\fR \fIrole\fR\fR
-.ad
-.sp .6
-.RS 4n
-One or more comma-separated roles (see \fBroleadd\fR(1M)). This replaces any
-existing role setting. If an empty role list is specified, the existing setting
-is removed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR \fIshell\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify the full pathname of the program that is used as the user's shell on
-login. The value of \fIshell\fR must be a valid executable file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-u\fR \fIuid\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify a new \fBUID\fR for the user. It must be a non-negative decimal integer
-less than \fBMAXUID\fR as defined in \fB<sys/param.h>\fR\&. The \fBUID\fR
-associated with the user's home directory is not modified with this option; a
-user will not have access to their home directory until the \fBUID\fR is
-manually reassigned using \fBchown\fR(1).
-.RE
-
-.SH OPERANDS
-.LP
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fB\fBlogin\fR\fR
-.ad
-.sp .6
-.RS 4n
-An existing login name to be modified.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1\fR Assigning Privileges to a User
-.sp
-.LP
-The following command adds the privilege that affects high resolution times to
-a user's initial, inheritable set of privileges.
-
-.sp
-.in +2
-.nf
-# \fBusermod -K defaultpriv=basic,proc_clock_highres jdoe\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-This command results in the following entry in \fBuser_attr\fR:
-
-.sp
-.in +2
-.nf
-jdoe::::type=normal;defaultpriv=basic,proc_clock_highres
-.fi
-.in -2
-
-.LP
-\fBExample 2\fR Removing a Privilege from a User's Limit Set
-.sp
-.LP
-The following command removes the privilege that allows the specified user to
-create hard links to directories and to unlink directories.
-
-.sp
-.in +2
-.nf
-# \fBusermod -K limitpriv=all,!sys_linkdir jdoe\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-This command results in the following entry in \fBuser_attr\fR:
-
-.sp
-.in +2
-.nf
-jdoe::::type=normal;defaultpriv=basic,limitpriv=all,!sys_linkdir
-.fi
-.in -2
-
-.LP
-\fBExample 3\fR Removing a Privilege from a User's Basic Set
-.sp
-.LP
-The following command removes the privilege that allows the specified user to
-examine processes outside the user's session.
-
-.sp
-.in +2
-.nf
-# \fBusermod -K defaultpriv=basic,!proc_session jdoe\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-This command results in the following entry in \fBuser_attr\fR:
-
-.sp
-.in +2
-.nf
-jdoe::::type=normal;defaultpriv=basic,!proc_session;limitpriv=all
-.fi
-.in -2
-
-.LP
-\fBExample 4\fR Assigning a Role to a User
-.sp
-.LP
-The following command assigns a role to a user. The role must have been created
-prior to this command, see \fBroleadd\fR(1M).
-
-.sp
-.in +2
-.nf
-# \fBusermod -R mailadm jdoe\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-This command results in the following entry in \fBuser_attr\fR:
-
-.sp
-.in +2
-.nf
-jdoe::::type=normal;roles=mailadm;defaultpriv=basic;limitpriv=all
-.fi
-.in -2
-
-.LP
-\fBExample 5\fR Removing All Profiles from a User
-.sp
-.LP
-The following command removes all profiles that were granted to a user
-directly. The user will still have any execution profiles that are granted by
-means of the \fBPROFS_GRANTED\fR key in \fBpolicy.conf\fR(4).
-
-.sp
-.in +2
-.nf
-# \fBusermod -P "" jdoe\fR
-.fi
-.in -2
-.sp
-
-.SH EXIT STATUS
-.LP
-In case of an error, \fBusermod\fR prints an error message and exits with one
-of the following values:
-.sp
-.ne 2
-.na
-\fB\fB2\fR\fR
-.ad
-.sp .6
-.RS 4n
-The command syntax was invalid. A usage message for the \fBusermod\fR command
-is displayed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB3\fR\fR
-.ad
-.sp .6
-.RS 4n
-An invalid argument was provided to an option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB4\fR\fR
-.ad
-.sp .6
-.RS 4n
-The \fIuid\fR given with the \fB-u\fR option is already in use.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB5\fR\fR
-.ad
-.sp .6
-.RS 4n
-The password files contain an error. \fBpwconv\fR(1M) can be used to correct
-possible errors. See \fBpasswd\fR(4).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB6\fR\fR
-.ad
-.sp .6
-.RS 4n
-The login to be modified does not exist, the \fIgroup\fR does not exist, or the
-login shell does not exist.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB8\fR\fR
-.ad
-.sp .6
-.RS 4n
-The login to be modified is in use.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB9\fR\fR
-.ad
-.sp .6
-.RS 4n
-The \fInew_logname\fR is already in use.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB10\fR\fR
-.ad
-.sp .6
-.RS 4n
-Cannot update the \fB/etc/group\fR or \fB/etc/user_attr\fR file. Other update
-requests will be implemented.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB11\fR\fR
-.ad
-.sp .6
-.RS 4n
-Insufficient space to move the home directory (\fB-m\fR option). Other update
-requests will be implemented.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB12\fR\fR
-.ad
-.sp .6
-.RS 4n
-Unable to complete the move of the home directory to the new home directory.
-.RE
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/etc/default/useradd\fR\fR
-.ad
-.sp .6
-.RS 4n
-configuration file for user and role administrative commands
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/group\fR\fR
-.ad
-.sp .6
-.RS 4n
-system file containing group definitions
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/datemsk\fR\fR
-.ad
-.sp .6
-.RS 4n
-system file of date formats
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/passwd\fR\fR
-.ad
-.sp .6
-.RS 4n
-system password file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/shadow\fR\fR
-.ad
-.sp .6
-.RS 4n
-system file containing users' and roles' encrypted passwords and related
-information
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/user_attr\fR\fR
-.ad
-.sp .6
-.RS 4n
-system file containing additional user and role attributes
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Committed
-.TE
-
-.SH SEE ALSO
-.LP
-\fBchown\fR(1), \fBpasswd\fR(1), \fBgroupadd\fR(1M), \fBgroupdel\fR(1M),
-\fBgroupmod\fR(1M), \fBlogins\fR(1M), \fBpwconv\fR(1M), \fBroleadd\fR(1M),
-\fBroledel\fR(1M), \fBrolemod\fR(1M), \fBuseradd\fR(1M), \fBuserdel\fR(1M),
-\fBzfs\fR(1M), \fBgetdate\fR(3C), \fBauth_attr\fR(4), \fBpasswd\fR(4),
-\fBpolicy.conf\fR(4), \fBprof_attr\fR(4), \fBuser_attr\fR(4),
-\fBattributes\fR(5)
-.SH NOTES
-.LP
-The \fBusermod\fR utility modifies \fBpasswd\fR definitions only in the local
-\fB/etc/passwd\fR and \fB/etc/shadow\fR files. If a network nameservice
-is being used to supplement the local files with
-additional entries, \fBusermod\fR cannot change information supplied by the
-network nameservice. However \fBusermod\fR will verify the uniqueness of user
-name and user \fBID\fR against the external nameservice.
-.sp
-.LP
-The \fBusermod\fR utility uses the \fB/etc/datemsk\fR file
-for date formatting.
diff --git a/usr/src/man/man1m/utmpd.1m b/usr/src/man/man1m/utmpd.1m
deleted file mode 100644
index b47dd23bd9..0000000000
--- a/usr/src/man/man1m/utmpd.1m
+++ /dev/null
@@ -1,167 +0,0 @@
-'\" te
-.\" Copyright 2015 Shruti V Sampat <shrutisampat@gmail.com>
-.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH UTMPD 1M "April 9, 2016"
-.SH NAME
-utmpd \- utmpx monitoring daemon
-.SH SYNOPSIS
-.LP
-.nf
-\fButmpd\fR [\fB-debug\fR]
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fButmpd\fR daemon monitors the \fB/var/adm/utmpx\fR file. See
-\fButmpx\fR(4) (and \fButmp\fR(4) for historical information).
-.sp
-.LP
-\fButmpd\fR receives requests from \fBpututxline\fR(3C) by way of a named pipe.
-It maintains a table of processes and uses \fBpoll\fR(2) on \fB/proc\fR files
-to detect process termination. When \fButmpd\fR detects that a process has
-terminated, it checks that the process has removed its \fButmpx\fR entry from
-\fB/var/adm/utmpx\fR. If the process' \fButmpx\fR entry has not been removed,
-\fButmpd\fR removes the entry. By periodically scanning the
-\fB/var/adm/utmpx\fR file, \fButmpd\fR also monitors processes that are not in
-its table.
-.SH OPTIONS
-.ne 2
-.na
-\fB\fB-debug\fR\fR
-.ad
-.sp .6
-.RS 4n
-Run in debug mode, leaving the process connected to the controlling terminal.
-Write debugging information to standard output.
-.RE
-
-.SH EXIT STATUS
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.sp .6
-.RS 4n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB>0\fR\fR
-.ad
-.sp .6
-.RS 4n
-An error occurred.
-.RE
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/etc/default/utmpd\fR\fR
-.ad
-.sp .6
-.RS 4n
-You can set default values for the flags listed below. For example:
-\fBSCAN_PERIOD=600\fR
-.sp
-The values for these flags should be greater than 0. If values read
-from the file are found to be less than or equal to 0, or containing
-invalid characters, the default values mentioned below are retained.
-.sp
-.ne 2
-.na
-\fB\fBSCAN_PERIOD\fR\fR
-.ad
-.sp .6
-.RS 4n
-The number of seconds that \fButmpd\fR sleeps between checks of \fB/proc\fR to
-see if monitored processes are still alive. The default is 300.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBMAX_FDS\fR\fR
-.ad
-.sp .6
-.RS 4n
-The maximum number of processes that \fButmpd\fR attempts to monitor. The
-default value is 4096.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBWTMPX_UPDATE_FREQ\fR\fR
-.ad
-.sp .6
-.RS 4n
-The number of seconds that \fButmpd\fR sleeps between read accesses of the
-\fBwtmpx\fR file. The \fBwtmpx\fR file's last access time is used by
-\fBinit\fR(1M) on reboot to determine when the operating system became
-unavailable. The default is 60.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/adm/utmpx\fR\fR
-.ad
-.sp .6
-.RS 4n
-File containing user and accounting information for commands such as
-\fBwho\fR(1), \fBwrite\fR(1), and \fBlogin\fR(1).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/proc\fR\fR
-.ad
-.sp .6
-.RS 4n
-Directory containing files for processes whose \fButmpx\fR entries are being
-monitored.
-.RE
-
-.SH SEE ALSO
-.LP
-\fBsvcs\fR(1), \fBinit\fR(1M), \fBsvcadm\fR(1M), \fBpoll\fR(2),
-\fBpututxline\fR(3C), \fBproc\fR(4), \fButmp\fR(4), \fButmpx\fR(4),
-\fBattributes\fR(5), \fBsmf\fR(5)
-.SH NOTES
-.LP
-If the filesystem holding \fB/var/adm/wtmpx\fR is mounted with options which
-inhibit or defer access time updates, an unknown amount of error will be
-introduced into the \fButmp\fR \fBDOWN_TIME\fR record's timestamp in the event
-of an uncontrolled shutdown (for example, a crash or loss of power ).
-Controlled shutdowns will update the modify time of \fB/var/adm/wtmpx\fR, which
-will be used on the next boot to determine when the previous shutdown occurred,
-regardless of access time deferral or inhibition.
-.sp
-.LP
-The \fButmpd\fR service is managed by the service management facility,
-\fBsmf\fR(5), under the service identifier:
-.sp
-.in +2
-.nf
-svc:/system/utmp:default
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Administrative actions on this service, such as enabling, disabling, or
-requesting restart, can be performed using \fBsvcadm\fR(1M). The service's
-status can be queried using the \fBsvcs\fR(1) command.
diff --git a/usr/src/man/man1m/uucheck.1m b/usr/src/man/man1m/uucheck.1m
deleted file mode 100644
index e5272edfdf..0000000000
--- a/usr/src/man/man1m/uucheck.1m
+++ /dev/null
@@ -1,123 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 1997 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH UUCHECK 1M "May 18, 1993"
-.SH NAME
-uucheck \- check the uucp directories and permissions file
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/uucp/uucheck\fR [\fB-v\fR] [\fB-x\fR \fIdebug-level\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBuucheck\fR checks for the presence of the \fBuucp\fR system required files
-and directories. \fBuucheck\fR also does error checking of the
-\fBPermissions\fR file (\fB/etc/uucp/Permissions\fR).
-.sp
-.LP
-\fBuucheck\fR is executed during package installation. \fBuucheck\fR can only
-be used by the super-user or \fBuucp\fR.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.RS 18n
-Give a detailed (verbose) explanation of how the \fBuucp\fR programs will
-interpret the \fBPermissions\fR file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-x\fR\fI debug-level\fR\fR
-.ad
-.RS 18n
-Produce debugging output on the standard output. \fIdebug-level\fR is a number
-from \fB0\fR to \fB9\fR. Higher numbers give more detailed debugging
-information.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/uucp/Devices\fR\fR
-.ad
-.RS 27n
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/uucp/Limits\fR\fR
-.ad
-.RS 27n
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/uucp/Permissions\fR\fR
-.ad
-.RS 27n
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/uucp/Systems\fR\fR
-.ad
-.RS 27n
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/spool/locks/*\fR\fR
-.ad
-.RS 27n
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/spool/uucp/*\fR\fR
-.ad
-.RS 27n
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/spool/uucppublic/*\fR\fR
-.ad
-.RS 27n
-
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBuucp\fR(1C), \fBuustat\fR(1C), \fBuux\fR(1C), \fBuucico\fR(1M),
-\fBuusched\fR(1M), \fBattributes\fR(5)
-.SH BUGS
-.sp
-.LP
-The program does not check file/directory modes or some errors in the
-\fBPermissions\fR file such as duplicate login or machine name.
diff --git a/usr/src/man/man1m/uucico.1m b/usr/src/man/man1m/uucico.1m
deleted file mode 100644
index 6eaf2120a0..0000000000
--- a/usr/src/man/man1m/uucico.1m
+++ /dev/null
@@ -1,193 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 1997 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH UUCICO 1M "May 19, 1993"
-.SH NAME
-uucico \- file transport program for the uucp system
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/uucp/uucico\fR [\fB-f\fR] [\fB-c\fR \fItype\fR] [\fB-d\fR \fIspool-directory\fR]
- [\fB-i\fR \fIinterface\fR] [\fB-r\fR \fIrole-number\fR] [\fB-s\fR \fIsystem-name\fR]
- [\fB-x\fR \fIdebug-level\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBuucico\fR is the file transport program for \fBuucp\fR work file transfers.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-f\fR\fR
-.ad
-.RS 22n
-This option is used to "force execution" of \fBuucico\fR by ignoring the limit
-on the maximum number of uucicos defined in the \fB/etc/uucp/Limits\fR file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-c\fR\fI type\fR\fR
-.ad
-.RS 22n
-The first field in the \fBDevices\fR file is the "Type" field. The \fB-c\fR
-option forces \fBuucico\fR to only use entries in the "Type" field that match
-the user specified \fBtype\fR. The specified \fBtype\fR is usually the name of
-a local area network.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-d\fR\fI spool-directory\fR\fR
-.ad
-.RS 22n
-This option specifies the directory \fIspool-directory\fR that contains the
-\fBuucp\fR work files to be transferred. The default spool directory is
-\fB/var/spool/uucp\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-i\fR\fI interface\fR\fR
-.ad
-.RS 22n
-This option defines the \fIinterface\fR used with \fBuucico\fR. The interface
-only affects slave mode. Known interfaces are UNIX (default), TLI (basic
-Transport Layer Interface), and TLIS (Transport Layer Interface with Streams
-modules, read/write).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-r\fR\fI role-number\fR\fR
-.ad
-.RS 22n
-The \fIrole-number\fR \fB1\fR is used for master mode. \fIrole-number\fR
-\fB0\fR is used for slave mode (default). When \fBuucico\fR is started by a
-program or \fBcron\fR, \fIrole-number\fR \fB1\fR should be used for master
-mode.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR\fI system-name\fR\fR
-.ad
-.RS 22n
-The \fB-s\fR option defines the remote system (\fIsystem-name\fR) that
-\fBuucico\fR will try to contact. It is required when the role is master;
-\fIsystem-name\fR must be defined in the \fBSystems\fR file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-x\fR\fI debug-level\fR\fR
-.ad
-.RS 22n
-Both \fBuux\fR and \fBuucp\fR queue jobs that will be transferred by
-\fBuucico\fR. These jobs are normally started by the \fBuusched\fR scheduler,
-for debugging purposes, and can be started manually. For example, the shell
-\fBUutry\fR starts \fBuucico\fR with debugging turned on. The \fIdebug-level\fR
-is a number between \fB0\fR and \fB9\fR. Higher numbers give more detailed
-debugging information.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/uucp/Devconfig\fR\fR
-.ad
-.RS 27n
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/uucp/Devices\fR\fR
-.ad
-.RS 27n
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/uucp/Limits\fR\fR
-.ad
-.RS 27n
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/uucp/Permissions\fR\fR
-.ad
-.RS 27n
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/uucp/Sysfiles\fR\fR
-.ad
-.RS 27n
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/uucp/Systems\fR\fR
-.ad
-.RS 27n
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/spool/locks/*\fR\fR
-.ad
-.RS 27n
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/spool/uucp/*\fR\fR
-.ad
-.RS 27n
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/spool/uucppublic/*\fR\fR
-.ad
-.RS 27n
-
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBuucp\fR(1C), \fBuustat\fR(1C), \fBuux\fR(1C), \fBUutry\fR(1M),
-\fBcron\fR(1M), \fBuusched\fR(1M), \fBattributes\fR(5)
diff --git a/usr/src/man/man1m/uucleanup.1m b/usr/src/man/man1m/uucleanup.1m
deleted file mode 100644
index b542a6a2e8..0000000000
--- a/usr/src/man/man1m/uucleanup.1m
+++ /dev/null
@@ -1,161 +0,0 @@
-'\" te
-.\" Copyright (c) 1996, Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH UUCLEANUP 1M "May 19, 1993"
-.SH NAME
-uucleanup \- uucp spool directory clean-up
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/uucp/uucleanup\fR [\fB-C\fR\fItime\fR] [\fB-D\fR\fItime\fR] [\fB-m\fR\fIstring\fR]
- [\fB-o\fR\fItime\fR] [\fB-s\fR\fIsystem\fR] [\fB-W\fR\fItime\fR] [\fB-x\fR\fIdebug-level\fR] [\fB-X\fR\fItime\fR]
-.fi
-
-.SH DESCRIPTION
-.LP
-\fBuucleanup\fR will scan the spool directories for old files and take
-appropriate action to remove them in a useful way:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Inform the requester of send/receive requests for systems that can not be
-reached.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Return undeliverable mail to the sender.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Deliver \fBrnews\fR files addressed to the local system.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Remove all other files.
-.RE
-.sp
-.LP
-In addition, there is a provision to warn users of requests that have been
-waiting for a given number of days (default 1 day). Note: \fBuucleanup\fR will
-process as if all option \fBtimes\fR were specified to the default values
-unless \fBtime\fR is specifically set.
-.sp
-.LP
-This program is typically started by the shell \fBuudemon.cleanup\fR, which
-should be started by \fBcron\fR(1M).
-.SH OPTIONS
-.ne 2
-.na
-\fB\fB-C\fR\fBtime\fR\fR
-.ad
-.RS 17n
-Remove any \fBC.\fR files greater or equal to \fBtime\fR days old and send
-appropriate information to the requester (default 7 days).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-D\fR\fBtime\fR\fR
-.ad
-.RS 17n
-Remove any \fBD.\fR files greater or equal to \fBtime\fR days old, make an
-attempt to deliver mail messages, and execute \fBrnews\fR when appropriate
-(default 7 days).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-m\fR\fIstring\fR\fR
-.ad
-.RS 17n
-Include \fIstring\fR in the warning message generated by the \fB-W\fR option.
-The default line is "See your local administrator to locate the problem".
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-o\fR\fBtime\fR\fR
-.ad
-.RS 17n
-Delete other files whose age is more than \fBtime\fR days (default 2 days).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR\fIsystem\fR\fR
-.ad
-.RS 17n
-Execute for \fIsystem\fR spool directory only.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-W\fR\fBtime\fR\fR
-.ad
-.RS 17n
-Any \fBC.\fR files equal to \fBtime\fR days old will cause a mail message to be
-sent to the requester warning about the delay in contacting the remote. The
-message includes the \fIJOBID\fR, and in the case of mail, the mail message.
-The administrator may include a message line telling whom to call to check the
-problem (\fB-m\fR option) (default 1 day).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-x\fR\fIdebug-level\fR\fR
-.ad
-.RS 17n
-Produce debugging output on standard output. \fIdebug-level\fR is a single digit
-between 0 and 9; higher numbers give more detailed debugging information. (This
-option may not be available on all systems.)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-X\fR\fBtime\fR\fR
-.ad
-.RS 17n
-Any \fBX.\fR files greater or equal to \fBtime\fR days old will be removed. The
-\fBD.\fR files are probably not present (if they were, the \fBX.\fR could get
-executed). But if there are \fBD.\fR files, they will be taken care of by D.
-processing (default 2 days).
-.RE
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/usr/lib/uucp\fR\fR
-.ad
-.RS 19n
-directory with commands used by \fBuucleanup\fR internally
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/spool/uucp\fR\fR
-.ad
-.RS 19n
-spool directory
-.RE
-
-.SH SEE ALSO
-.LP
-\fBuucp\fR(1C), \fBuux\fR(1C), \fBcron\fR(1M), \fBattributes\fR(5)
diff --git a/usr/src/man/man1m/uusched.1m b/usr/src/man/man1m/uusched.1m
deleted file mode 100644
index 46e1919674..0000000000
--- a/usr/src/man/man1m/uusched.1m
+++ /dev/null
@@ -1,111 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 1997 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH UUSCHED 1M "May 19, 1993"
-.SH NAME
-uusched \- uucp file transport program scheduler
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/uucp/uusched\fR [\fB-u\fR \fIdebug-level\fR] [\fB-x\fR \fIdebug-level\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBuusched\fR is the \fBuucp\fR(1C) file transport scheduler. It is usually
-started by the daemon \fIuudemon.hour\fR that is started by \fBcron\fR(1M)
-from an entry in user \fBuucp\fR's crontab file:
-.sp
-.LP
-\fB11,41 * * * * /etc/uucp/uucp/uudemon.hour\fR
-.SH OPTIONS
-.sp
-.LP
-The options are for debugging purposes only. \fIdebug-level\fR is a number
-between \fB0\fR and \fB9\fR. Higher numbers give more detailed debugging
-information:
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-u\fR\fI debug-level\fR\fR
-.ad
-.RS 18n
-Passes the \fB-u\fR\fI debug-level\fR option \fBuucico\fR(1M) as \fB-x\fR\fI
-debug-level.\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-x\fR\fI debug-level\fR\fR
-.ad
-.RS 18n
-Outputs debugging messages from \fBuusched\fR.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/uucp/Devices\fR\fR
-.ad
-.RS 27n
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/uucp/Permissions\fR\fR
-.ad
-.RS 27n
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/uucp/Systems\fR\fR
-.ad
-.RS 27n
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/spool/locks/*\fR\fR
-.ad
-.RS 27n
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/spool/uucp/*\fR\fR
-.ad
-.RS 27n
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/spool/uucppublic/*\fR\fR
-.ad
-.RS 27n
-
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBuucp\fR(1C), \fBuustat\fR(1C), \fBuux\fR(1C), \fBcron\fR(1M),
-\fBuucico\fR(1M), \fBattributes\fR(5)
diff --git a/usr/src/man/man1m/uuxqt.1m b/usr/src/man/man1m/uuxqt.1m
deleted file mode 100644
index ed6e08460c..0000000000
--- a/usr/src/man/man1m/uuxqt.1m
+++ /dev/null
@@ -1,109 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 1997 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH UUXQT 1M "May 19, 1993"
-.SH NAME
-uuxqt \- execute remote command requests
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/uucp/uuxqt\fR [\fB-s\fR \fIsystem\fR] [\fB-x\fR \fIdebug-level\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBuuxqt\fR is the program that executes remote job requests from remote
-systems generated by the use of the \fBuux\fR command. (\fBmail\fR uses
-\fBuux\fR for remote mail requests). \fBuuxqt\fR searches the spool directories
-looking for execution requests. For each request, \fBuuxqt\fR checks to see if
-all the required data files are available, accessible, and the requested
-commands are permitted for the requesting system. The \fBPermissions\fR file is
-used to validate file accessibility and command execution permission.
-.sp
-.LP
-There are two environment variables that are set before the \fBuuxqt\fR command
-is executed:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBUU_MACHINE\fR is the machine that sent the job (the previous one).
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBUU_USER\fR is the user that sent the job.
-.RE
-.sp
-.LP
-These can be used in writing commands that remote systems can execute to
-provide information, auditing, or restrictions.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-s\fR\fI system\fR\fR
-.ad
-.RS 18n
-Specifies the remote \fIsystem\fR name.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-x\fR\fI debug-level\fR\fR
-.ad
-.RS 18n
-\fIdebug-level\fR is a number from \fB0\fR to \fB9\fR. Higher numbers give more
-detailed debugging information.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/uucp/Limits\fR\fR
-.ad
-.RS 25n
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/uucp/Permissions\fR\fR
-.ad
-.RS 25n
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/spool/locks/*\fR\fR
-.ad
-.RS 25n
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/spool/uucp/*\fR\fR
-.ad
-.RS 25n
-
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBmail\fR(1), \fBuucp\fR(1C), \fBuustat\fR(1C), \fBuux\fR(1C),
-\fBuucico\fR(1M), \fBattributes\fR(5)
diff --git a/usr/src/man/man1m/vfsstat.1m b/usr/src/man/man1m/vfsstat.1m
deleted file mode 100644
index aef8431a09..0000000000
--- a/usr/src/man/man1m/vfsstat.1m
+++ /dev/null
@@ -1,213 +0,0 @@
-'\" te
-.\"
-.\" This file and its contents are supplied under the terms of the
-.\" Common Development and Distribution License ("CDDL"), version 1.0.
-.\" You may only use this file in accordance with the terms of version
-.\" 1.0 of the CDDL.
-.\"
-.\" A full copy of the text of the CDDL should have accompanied this
-.\" source. A copy of the CDDL is also available via the Internet at
-.\" http://www.illumos.org/license/CDDL.
-.\"
-.\" Copyright 2014 Joyent, Inc. All rights reserved.
-.\"
-.TH "VFSSTAT" "1m" "May 1, 2014" "" ""
-.
-.SH "NAME"
-\fBvfsstat\fR \-\- Report VFS read and write activity
-.
-.SH "SYNOPSIS"
-.
-.nf
-vfsstat [\-hIMrzZ] [interval [count]]
-.
-.fi
-.
-.SH "DESCRIPTION"
-The vfsstat utility reports a summary of VFS read and write
-activity per zone\. It first prints all activity since boot, then
-reports activity over a specified interval\.
-.
-.P
-When run from a non\-global zone (NGZ), only activity from that NGZ
-can be observed\. When run from a the global zone (GZ), activity
-from the GZ and all other NGZs can be observed\.
-.
-.P
-This tool is convenient for examining I/O performance as
-experienced by a particular zone or application\. Other tools
-which examine solely disk I/O do not report reads and writes which
-may use the filesystem\'s cache\. Since all read and write system
-calls pass through the VFS layer, even those which are satisfied
-by the filesystem cache, this tool is a useful starting point when
-looking at a potential I/O performance problem\. The vfsstat
-command reports the most accurate reading of I/O performance as
-experienced by an application or zone\.
-.
-.P
-One additional feature is that ZFS zvol performance is also reported
-by this tool, even though zvol I/O does not go through the VFS
-layer\. This is done so that this single tool can be used to monitor
-I/O performance and because its not unreasonable to think of zvols
-as being included along with other ZFS filesystems\.
-.
-.P
-The calculations and output fields emulate those from iostat(1m)
-as closely as possible\. When only one zone is actively performing
-disk I/O, the results from iostat(1m) in the global zone and
-vfsstat in the local zone should be almost identical\. Note that
-many VFS read operations may be handled by the filesystem cache,
-so vfsstat and iostat(1m) will be similar only when most
-operations require a disk access\.
-.
-.P
-As with iostat(1m), a result of 100% for VFS read and write
-utilization does not mean that the VFS layer is fully saturated\.
-Instead, that measurement just shows that at least one operation
-was pending over the last interval of time examined\. Since the
-VFS layer can process more than one operation concurrently, this
-measurement will frequently be 100% but the VFS layer can still
-accept additional requests\.
-.
-.SH "OUTPUT"
-The vfsstat utility reports the following information:
-.
-.IP "" 4
-.
-.nf
-r/s
-.RS
-reads per second
-.RE
-
-w/s
-.RS
-writes per second
-.RE
-
-kr/s
-.RS
-kilobytes read per second
-.RE
-
-kw/s
-.RS
-kilobytes written per second
-.RE
-
-ractv
-.RS
-average number of read operations actively being serviced by the VFS layer
-.RE
-
-wactv
-.RS
-average number of write operations actively being serviced by the VFS layer
-.RE
-
-read_t
-.RS
-average VFS read latency, in microseconds
-.RE
-
-writ_t
-.RS
-average VFS write latency, in microseconds
-.RE
-
-%r
-.RS
-percent of time there is a VFS read operation pending
-.RE
-
-%w
-.RS
-percent of time there is a VFS write operation pending
-.RE
-
-d/s
-.RS
-VFS operations per second delayed by the ZFS I/O throttle
-.RE
-
-del_t
-.RS
-average ZFS I/O throttle delay, in microseconds
-.RE
-.
-.fi
-.
-.IP "" 0
-.
-.SH "OPTIONS"
-The following options are supported:
-.
-.P
-\-h
-.RS
-Show help message and exit
-.RE
-.
-.P
-\-I
-.RS
-Print results per interval, rather than per second (where applicable)
-.RE
-.
-.P
-\-M
-.RS
-Print results in MB/s instead of KB/s
-.RE
-.
-.P
-\-r
-.RS
-Show results in a comma\-separated format
-.RE
-.
-.P
-\-z
-.RS
-Hide zones with no VFS activity
-.RE
-.
-.P
-\-Z
-.RS
-Print results for all zones, not just the current zone
-.RE
-.
-.SH "OPERANDS"
-interval
-.
-.P
-Specifies the length in seconds to pause between each interval
-report\. If not specified, vfsstat will print a summary since boot
-and exit\.
-.
-.P
-count
-.
-.P
-Specifies the number of intervals to report\. Defaults to
-unlimited if not specified\.
-.
-.SH "SEE ALSO"
-.
-.nf
-iostat(1m), ziostat(1m), mpstat(1m)
-.
-.fi
-.
-.SH "NOTES"
-This command does not examine readdir or any other VFS operations,
-only read and write operations\.
-.
-.P
-This command does not look at network I/O, only I/O operations to
-or from a file\.
-.
-.P
-The output format from vfsstat may change over time; use the
-comma\-separated output for a stable output format\.
diff --git a/usr/src/man/man1m/vmstat.1m b/usr/src/man/man1m/vmstat.1m
deleted file mode 100644
index 166ef42ae9..0000000000
--- a/usr/src/man/man1m/vmstat.1m
+++ /dev/null
@@ -1,519 +0,0 @@
-'\" te
-.\" Copyright (c) 2001 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
-.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH VMSTAT 1M "May 6, 2020"
-.SH NAME
-vmstat \- report virtual memory statistics
-.SH SYNOPSIS
-.nf
-\fBvmstat\fR [\fB-ipqsS\fR] [\fB-T\fR u | d] [\fIdisks\fR] [\fIinterval\fR [\fIcount\fR]]
-.fi
-
-.SH DESCRIPTION
-\fBvmstat\fR reports virtual memory statistics regarding kernel thread, virtual
-memory, disk, trap, and \fBCPU\fR activity.
-.sp
-.LP
-On \fBMP\fR (multi-processor) systems, \fBvmstat\fR averages the number of
-\fBCPUs\fR into the output. For per-processor statistics, see \fBmpstat\fR(1M).
-.sp
-.LP
-\fBvmstat\fR only supports statistics for certain devices. For more general
-system statistics, use \fBsar\fR(1), \fBiostat\fR(1M), or \fBsar\fR(1M).
-.sp
-.LP
-Without options, \fBvmstat\fR displays a one-line summary of the virtual memory
-activity since the system was booted.
-.sp
-.LP
-During execution of the kernel status command, the \fBstate\fR of the system
-can change. If relevant, a state change message is included in the \fBvmstat\fR
-output, in one of the following forms:
-.sp
-.in +2
-.nf
-<<device added: sd0>>
-<<device removed: sd0>>
-<<processors added: 1, 3>>
-<<processors removed: 1, 3>>
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-See \fBdisks\fR(1M) for device naming conventions for disks.
-.SH OPTIONS
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-i\fR\fR
-.ad
-.RS 13n
-Report the number of interrupts per device. \fIcount\fR and \fIinterval\fR does
-not apply to the \fB-i\fR option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR\fR
-.ad
-.RS 13n
-Report paging activity in details. This option will display the following,
-respectively:
-.sp
-.ne 2
-.na
-\fBepi\fR
-.ad
-.RS 7n
-Executable page-ins.
-.RE
-
-.sp
-.ne 2
-.na
-\fBepo\fR
-.ad
-.RS 7n
-Executable page-outs.
-.RE
-
-.sp
-.ne 2
-.na
-\fBepf\fR
-.ad
-.RS 7n
-Executable page-frees.
-.RE
-
-.sp
-.ne 2
-.na
-\fBapi\fR
-.ad
-.RS 7n
-Anonymous page-ins.
-.RE
-
-.sp
-.ne 2
-.na
-\fBapo\fR
-.ad
-.RS 7n
-Anonymous page-outs.
-.RE
-
-.sp
-.ne 2
-.na
-\fBapf\fR
-.ad
-.RS 7n
-Anonymous page-frees.
-.RE
-
-.sp
-.ne 2
-.na
-\fBfpi\fR
-.ad
-.RS 7n
-File system page-ins.
-.RE
-
-.sp
-.ne 2
-.na
-\fBfpo\fR
-.ad
-.RS 7n
-File system page-outs.
-.RE
-
-.sp
-.ne 2
-.na
-\fBfpf\fR
-.ad
-.RS 7n
-File system page-frees.
-.RE
-
-When executed in a \fBzone\fR and if the pools facility is active, all of the
-above only report activity on the processors in the processor set of the
-\fBzone\fR's pool.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-q\fR\fR
-.ad
-.RS 13n
-Suppress messages related to state changes.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR\fR
-.ad
-.RS 13n
-Display the total number of various system events since boot. \fIcount\fR and
-\fIinterval\fR does not apply to the \fB-s\fR option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-S\fR\fR
-.ad
-.RS 13n
-Report on swapping rather than paging activity. This option will change two
-fields in \fBvmstat\fR's ``paging'' display: rather than the ``re'' and ``mf''
-fields, \fBvmstat\fR will report ``si'' (swap-ins) and ``so'' (swap-outs).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-T\fR \fBu\fR | \fBd\fR\fR
-.ad
-.RS 13n
-Specify \fBu\fR for a printed representation of the internal representation of
-time. See \fBtime\fR(2). Specify \fBd\fR for standard date format. See
-\fBdate\fR(1).
-.RE
-
-.SH OPERANDS
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fB\fIcount\fR\fR
-.ad
-.RS 12n
-Specifies the number of times that the statistics are repeated. \fIcount\fR
-does not apply to the \fB-i\fR and \fB-s\fR options.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIdisks\fR\fR
-.ad
-.RS 12n
-Specifies which disks are to be given priority in the output (only four disks
-fit on a line). Common disk names are \fBid\fR, \fBsd\fR, \fBxd\fR, or
-\fBxy,\fR followed by a number (for example, \fBsd2\fR, \fBxd0\fR, and so
-forth).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIinterval\fR\fR
-.ad
-.RS 12n
-Specifies the last number of seconds over which \fBvmstat\fR summarizes
-activity. This number of seconds repeats forever. \fIinterval\fR does not apply
-to the \fB-i\fR and \fB-s\fR options.
-.RE
-
-.SH EXAMPLES
-\fBExample 1 \fRUsing \fBvmstat\fR
-.sp
-.LP
-The following command displays a summary of what the system is doing every five
-seconds.
-
-.sp
-.in +2
-.nf
-example% \fBvmstat 5\fR
-
-
-kthr memory page disk faults cpu
-r b w swap free re mf pi p fr de sr s0 s1 s2 s3 in sy cs us sy id
-0 0 0 11456 4120 1 41 19 1 3 0 2 0 4 0 0 48 112 130 4 14 82
-0 0 1 10132 4280 0 4 44 0 0 0 0 0 23 0 0 211 230 144 3 35 62
-0 0 1 10132 4616 0 0 20 0 0 0 0 0 19 0 0 150 172 146 3 33 64
-0 0 1 10132 5292 0 0 9 0 0 0 0 0 21 0 0 165 105 130 1 21 78
-1 1 1 10132 5496 0 0 5 0 0 0 0 0 23 0 0 183 92 134 1 20 79
-1 0 1 10132 5564 0 0 25 0 0 0 0 0 18 0 0 131 231 116 4 34 62
-1 0 1 10124 5412 0 0 37 0 0 0 0 0 22 0 0 166 179 118 1 33 67
-1 0 1 10124 5236 0 0 24 0 0 0 0 0 14 0 0 109 243 113 4 56 39
-^C
-
-example%
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The fields of \fBvmstat\fR's display are
-
-.sp
-.ne 2
-.na
-\fB\fBkthr\fR\fR
-.ad
-.RS 10n
-Report the number of kernel threads in each of the three following states:
-.sp
-.ne 2
-.na
-\fB\fBr\fR\fR
-.ad
-.RS 5n
-the number of kernel threads in run queue
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBb\fR\fR
-.ad
-.RS 5n
-the number of blocked kernel threads that are waiting for resources \fBI/O,\fR
-paging, and so forth
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBw\fR\fR
-.ad
-.RS 5n
-the number of swapped out lightweight processes (LWPs) that are waiting for
-processing resources to finish.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmemory\fR\fR
-.ad
-.RS 10n
-Report on usage of virtual and real memory.
-.sp
-.ne 2
-.na
-\fB\fBswap\fR\fR
-.ad
-.RS 8n
-available swap space (Kbytes)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfree\fR\fR
-.ad
-.RS 8n
-size of the free list (Kbytes)
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpage\fR\fR
-.ad
-.RS 10n
-Report information about page faults and paging activity. The information on
-each of the following activities is given in units per second.
-.sp
-.ne 2
-.na
-\fB\fBre\fR\fR
-.ad
-.RS 6n
-page reclaims \(em but see the \fB-S\fR option for how this field is modified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmf\fR\fR
-.ad
-.RS 6n
-minor faults \(em but see the \fB-S\fR option for how this field is modified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpi\fR\fR
-.ad
-.RS 6n
-kilobytes paged in
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpo\fR\fR
-.ad
-.RS 6n
-kilobytes paged out
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfr\fR\fR
-.ad
-.RS 6n
-kilobytes freed
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBde\fR\fR
-.ad
-.RS 6n
-anticipated short-term memory shortfall (Kbytes)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsr\fR\fR
-.ad
-.RS 6n
-pages scanned by clock algorithm
-.RE
-
-When executed in a \fBzone\fR and if the pools facility is active, all of the
-above (except for "de") only report activity on the processors in the processor
-set of the \fBzone\fR's pool.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdisk\fR\fR
-.ad
-.RS 10n
-Report the number of disk operations per second. There are slots for up to four
-disks, labeled with a single letter and number. The letter indicates the type
-of disk (s = \fBSCSI\fR, i = \fBIPI\fR, and so forth); the number is the
-logical unit number.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfaults\fR\fR
-.ad
-.RS 10n
-Report the trap/interrupt rates (per second).
-.sp
-.ne 2
-.na
-\fB\fBin\fR\fR
-.ad
-.RS 6n
-interrupts
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsy\fR\fR
-.ad
-.RS 6n
-system calls
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcs\fR\fR
-.ad
-.RS 6n
-\fBCPU\fR context switches
-.RE
-
-When executed in a \fBzone\fR and if the pools facility is active, all of the
-above only report activity on the processors in the processor set of the
-\fBzone\fR's pool.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcpu\fR\fR
-.ad
-.RS 10n
-Give a breakdown of percentage usage of \fBCPU\fR time. On \fBMP\fR systems,
-this is an average across all processors.
-.sp
-.ne 2
-.na
-\fB\fBus\fR\fR
-.ad
-.RS 6n
-user time
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsy\fR\fR
-.ad
-.RS 6n
-system time
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBid\fR\fR
-.ad
-.RS 6n
-idle time
-.RE
-
-When executed in a \fBzone\fR and if the pools facility is active, all of the
-above only report activity on the processors in the processor set of the
-\fBzone\fR's pool.
-.RE
-
-.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability See below.
-.TE
-
-.sp
-.LP
-Invocation is evolving. Human readable output is unstable.
-.SH SEE ALSO
-\fBdate\fR(1), \fBsar\fR(1), \fBdisks\fR(1M), \fBiostat\fR(1M), \fBmpstat\fR(1M), \fBsar\fR(1M),
-\fBtime\fR(2), \fBattributes\fR(5)
-.SH NOTES
-The sum of CPU utilization might vary slightly from 100 because of rounding
-errors in the production of a percentage figure.
-.sp
diff --git a/usr/src/man/man1m/vndadm.1m b/usr/src/man/man1m/vndadm.1m
deleted file mode 100644
index 253518a88a..0000000000
--- a/usr/src/man/man1m/vndadm.1m
+++ /dev/null
@@ -1,651 +0,0 @@
-'\" te
-.\"
-.\" This file and its contents are supplied under the terms of the
-.\" Common Development and Distribution License ("CDDL"), version 1.0.
-.\" You may only use this file in accordance with the terms of version
-.\" 1.0 of the CDDL.
-.\"
-.\" A full copy of the text of the CDDL should have accompanied this
-.\" source. A copy of the CDDL is also available via the Internet at
-.\" http://www.illumos.org/license/CDDL.
-.\"
-.\"
-.\" Copyright (c) 2014, Joyent, Inc. All rights reserved.
-.\"
-.TH VNDADM 1M "Mar 06, 2014"
-.SH NAME
-vndadm \- administer vnd devices
-
-.SH SYNOPSIS
-
-.nf
-vndadm create [-z zonename] [-l datalink] device
-vndadm destroy [-z zonename] device...
-vndadm list [-p] [-d delim] [-o field,...] [-z zonename] [device]...
-vndadm get [-p] [-d delim] [-z zonename] device [prop]...
-vndadm set [-z zonename] device prop=val...
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The vndadm command is used to administer vnd devices. A vnd device is
-similar to an IP network interface, except that the vnd device operates
-at layer two. A vnd device is created over a data link (see dladm(1M))
-and its address is that of the underlying data link. For ethernet based
-devices, that address would be the MAC address of the data link. vnd
-devices are character devices which may be used to send and receive
-layer two packets. When reading or writing to a vnd device, the full
-frame must be present. This is useful for working with virtual machines,
-or other environments where you need to manipulate the entire layer two
-frame.
-
-.sp
-.LP
-Every command takes a device as an argument. To specify a vnd device,
-you just use the name of the device. Devices are scoped to zones. If no
-zone is specified, the current zone is assumed. A device name can be any
-series of alphanumeric ascii characters which typically match the name
-of the underlying data link. A given vnd device name must be unique in a
-given zone, but the same name can be used across zones.
-.sp
-.SH OPTIONS
-.sp
-.LP
-All vndadm subcommands have the following common option:
-.sp
-.ne 2
-.na
--z zonename
-.ad
-.sp .6
-.RS 4n
-Operate in the context of the specified zone. When creating a vnd
-device, the named device is created in the specified zone. All other
-operations scope the device lookup to the specified zone. If the user is
-not in the global zone, the use of -z will not work.
-
-.sp
-.LP
-When -z is used and multiple devices are specified, then
-the use of -z applies to all of the devices.
-.RE
-
-.SH SUBCOMMANDS
-.sp
-.ne 2
-.na
-vndadm create [-z zonename] [-l datalink] device
-.ad
-.sp
-.RS 4n
-Creates a vnd device with the specified name device. If -l datalink is
-not specified, it is assumed that the data link and the device share the
-same name. The created device will exist for as long as the zone exists
-or until a call to vndadm destroy. vnd devices do not persist across
-system reboots. Note, if an IP interface or another libdlpi(3LIB)
-consumer is already using the data link, then vnd will fail.
-
-.sp
-The maximum length of the name of device is 31 characters. The allowed
-set of characters is alphanumberic characters, ':', \'-', and \'_'. The
-names 'zone' and 'ctl' are reserved and may not be used.
-
-.sp
-.ne 2
-.na
--l datalink
-.ad
-.sp .6
-.RS 4n
-Specifies the name of the data link to create the device over. This
-allows the vnd device name to be different from the data link's name.
-.RE
-.sp
-.ne 2
-.na
--z zonename
-.ad
-.sp .6
-.RS 4n
-See OPTIONS above.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-vndadm destroy [-z zonename] device...
-.ad
-.sp
-.RS 4n
-Destroys the specified device. The destruction is analogous to
-unlink(2). If the device is still open and used by applications, the
-device will continue to exist, but it will no longer be accessible by
-the name device.
-.sp
-.ne 2
-.na
--z zonename
-.ad
-.sp .6
-.RS 4n
-See OPTIONS above.
-.RE
-.RE
-
-.sp
-.ne 2
-.na
-vndadm list [-p] [-d delim] [-o field,...] [-z zonename] [device]...
-.ad
-.sp
-.RS 4n
-Lists active vnd devices. By default, vnadm list lists all devices in
-every zone that the caller is allowed to see; the current zone if in the
-non-global zone, and all zones in the global zone. If device is
-specified one or more times, then output will be limited to the
-specified devices.
-.sp
-.ne 2
-.na
--o field[,...]
-.ad
-.sp .6
-.RS 4n
-A case-insensitive, comma-separated list of output fields. When -o is
-not used, all of the fields listed below are shown. The field name must
-be one of the following fields:
-
-.sp
-.ne 2
-.na
-NAME
-.ad
-.sp .6
-.RS 4n
-The name of the vnd device.
-.RE
-
-.sp
-.ne 2
-.na
-DATALINK
-.ad
-.sp .6
-.RS 4n
-The name of the data link the vnd device was created over.
-.RE
-
-.sp
-.ne 2
-.na
-ZONENAME
-.ad
-.sp .6
-.RS 4n
-The name of the zone that the vnd device exists in.
-.RE
-.RE
-
-.sp
-.ne 2
-.na
--p
-.ad
-.sp .6
-.RS 4n
-Display the output in a stable machine parseable format. The -o option
-is required with the -p option. See "Parseable Output Format" below.
-.RE
-
-.sp
-.ne 2
-.na
--d delim
-.ad
-.sp .6
-.RS 4n
-Change the delimiter used in conjunction with generating parseable
-output. This option may only be specified when -p is also specified.
-.RE
-
-.sp
-.ne 2
-.na
--z zonename
-.ad
-.sp .6
-.RS 4n
-See OPTIONS above.
-.RE
-
-.RE
-
-
-.sp
-.ne 2
-.na
-vndadm get [-p] [-d delim] [-z zonename] device [prop]...
-.ad
-.sp
-.RS 4n
-Displays the properties for the specified device. By default, all
-properties of a given device are displayed. If prop is specified one or
-more times, then only the specified properties will be displayed for
-device. For a list of properties, see the section "Properties" below.
-The property output consists of the following four columns:
-.sp
-.ne 2
-.na
-LINK
-.ad
-.sp .6
-.RS 4n
-The name of the device
-.RE
-
-.sp
-.ne 2
-.na
-PROPERTY
-.ad
-.sp .6
-.RS 4n
-The name of the property. Note that some properties that are private to
-the implementation may be displayed. Those properties begin with a
-leading underscore.
-.RE
-
-.sp
-.ne 2
-.na
-PERM
-.ad
-.sp .6
-.RS 4n
-Describes whether the property is read-only or
-if it is read-write. This field does not
-indicate if the current user has permission, but
-lists permissions for a privileged user.
-.RE
-
-.sp
-.ne 2
-.na
-VALUE
-.ad
-.sp .6
-.RS 4n
-The value of the property.
-.RE
-
-.sp
-.ne 2
-.na
--p
-.ad
-.sp .6
-.RS 4n
-Display the output in a stable machine parseable format. See "Parseable
-Output Format" below.
-.RE
-
-.sp
-.ne 2
-.na
--d delim
-.ad
-.sp .6
-.RS 4n
-Change the delimiter used in conjunction with generating parseable
-output. This option may only be specified when -p is also specified.
-.RE
-
-.sp
-.ne 2
-.na
--z zonename
-.ad
-.sp .6
-.RS 4n
-See OPTIONS above.
-.RE
-.RE
-
-.sp
-.ne 2
-.na
-vndadm set [-z zonename] device prop=val...
-.ad
-.sp
-.RS 4n
-Sets properties on the named device. Setting a property takes effect for
-all operations on the device, after the program returns. Multiple
-properties can be set at once; however, properties are applied one at a
-time to the device. Property names and values must be separated with an
-equals sign. Additional property and value pairs should be separated by
-white space. For a list of properties, see the section "Properties"
-below.
-
-.sp
-.ne 2
-.na
--z zonename
-.ad
-.sp .6
-.RS 4n
-See OPTIONS above.
-.RE
-.RE
-
-.SS Parseable Output Format
-.sp
-.LP
-The default output for parseable data is to be separated with a single
-ascii space character. The delimiter may be changed with the -d
-option. When parseable output is requested, no numbers that represent
-sizes will be displayed in human readable form, they will be fully
-expanded. eg. the number 42K will instead be 43008.
-
-.SS Properties
-.sp
-.LP
-The following are supported and stable properties. Note that any
-properties that starts with a leading underscore are not a stable
-property and may be removed at any time.
-
-.sp
-.ne 2
-.na
-rxbuf
-.ad
-.sp .6
-.RS 4n
-A read/write property that controls the size of the receive buffer for
-the device. All received data enters the receive buffer until a consumer
-consumes it. If adding a received frame would exceed the size of the
-receive buffer, then that frame will be dropped. The maximum size of the
-buffer is limited by the 'maxsize' property. The minimum size of the
-buffer is the value of the 'maxtu' property. The property's value may be
-anything between that maximum and minimum. When setting this property,
-standard size suffixes such as 'K' and 'M' may be used.
-.RE
-
-.sp
-.ne 2
-.na
-txbuf
-.ad
-.sp .6
-.RS 4n
-A read/write property that controls the size of the transmit buffer. All
-in-flight transmitted data must be able to fit into the transmit buffer
-to account for potential flow control events. If there is not enough
-space in the transmit buffer, transmit related I/O operations will
-either block or fail based on whether the file has been put into
-non-blocking mode by setting O_NONBLOCK or O_NDELAY with fcntl(2). The
-maximum size of the buffer is limited by the 'maxsize' property. The
-minimum size of the buffer is the value of the 'maxtu' property. The
-property's value may be anything between that maximum and minimum. When
-setting this property, standard size suffixes such as 'K' and 'M' may be
-used.
-
-.RE
-
-.sp
-.ne 2
-.na
-maxsize
-.ad
-.sp .6
-.RS 4n
-A read-only property that describes the maximum size of buffers in the
-system. Properties such as rxbuf and txbuf cannot be set beyond this.
-.RE
-
-.sp
-.ne 2
-.na
-mintu
-.ad
-.sp .6
-.RS 4n
-A read-only property that describes the minimum size of a frame
-transmitted to the underlying data link. Note that the minimum listed
-here may be less than the size of a valid layer two frame and therefore
-may be dropped. A frame smaller than this value will be rejected by vnd.
-.RE
-
-.sp
-.ne 2
-.na
-maxtu
-.ad
-.sp .6
-.RS 4n
-A read-only property that describes the maximum size of a frame
-transmitted to the underlying data link. A frame larger than this value
-will be rejected by vnd.
-.RE
-
-.SH EXAMPLES
-.LP
-Example 1 Creating a vnd device
-.sp
-.LP
-To create a vnd device over the VNIC named net0, enter the following
-command:
-
-.sp
-.in +2
-.nf
-# vndadm create net0
-.fi
-.in -2
-.sp
-
-.LP
-Example 2 Creating a vnd device in another zone
-.sp
-.LP
-
-To create a vnd device over the VNIC named net1 in the zone
-1b7155a4-aef9-e7f0-d33c-9705e4b8b525, enter the following command:
-
-.sp
-.in +2
-.nf
-# vndadm create -z 1b7155a4-aef9-e7f0-d33c-9705e4b8b525 net1
-.fi
-.in -2
-.sp
-
-.LP
-Example 3 Destroying a vnd device
-.sp
-.LP
-
-To destroy the vnd device named net0, enter the following command:
-
-.sp
-.in +2
-.nf
-# vndadm destroy net0
-.fi
-.in -2
-.sp
-
-.LP
-Example 4 Destroying a vnd device in another zone
-.sp
-.LP
-
-To destroy the vnd device named net1 in the zone
-1b7155a4-aef9-e7f0-d33c-9705e4b8b525, enter the following command:
-
-.sp
-.in +2
-.nf
-# vndadm destroy -z 1b7155a4-aef9-e7f0-d33c-9705e4b8b525 net1
-.fi
-.in -2
-.sp
-
-.LP
-Example 5 List all vnd devices
-.sp
-.LP
-
-To list all devices, run the following command:
-
-.sp
-.in +2
-.nf
-# vndadm list
-NAME DATALINK ZONENAME
-net0 net0 global
-net0 net0 1b7155a4-aef9-e7f0-d33c-9705e4b8b525
-.fi
-.in -2
-.sp
-
-.LP
-Example 6 Listing devices in a specific zone
-.sp
-.LP
-
-To list devices in a specific zone, run the following command:
-
-.sp
-.in +2
-.nf
-# vndadm list -z 1b7155a4-aef9-e7f0-d33c-9705e4b8b525
-
-NAME DATALINK ZONENAME
-net0 net0 1b7155a4-aef9-e7f0-d33c-9705e4b8b525
-.fi
-.in -2
-.sp
-
-.LP
-Example 7 List all devices in a parseable format
-.sp
-.LP
-
-To list all devices in a parseable format with the delimiter of ':', run
-the following command:
-
-.sp
-.in +2
-.nf
-# vndadm list -p -d: -o name,datalink,zone
-net0:net0:global
-net0:net0:1b7155a4-aef9-e7f0-d33c-9705e4b8b525
-.fi
-.in -2
-.sp
-
-.LP
-Example 8 Retrieving all properties for a device
-.sp
-.LP
-
-To retrieve all of the properties for the vnd device foo0, run the
-following command:
-
-.sp
-.in +2
-.nf
-# vndadm get foo0
-LINK PROPERTY PERM VALUE
-foo0 rxbuf rw 65536
-foo0 txbuf rw 65536
-foo0 maxsize r- 4194304
-foo0 mintu r- 0
-foo0 maxtu r- 1518
-foo0 _nflush rw 10
-foo0 _burstsz rw 10
-.fi
-.in -2
-.sp
-
-.LP
-Example 9 Retrieving specific properties for a device
-.sp
-.LP
-
-To retrieve just the rxbuf and txbuf properties for the vnd device foo0,
-run the following command:
-
-.sp
-.in +2
-.nf
-# vndadm get foo0 rxbuf txbuf
-LINK PROPERTY PERM VALUE
-foo0 rxbuf rw 65536
-foo0 txbuf rw 65536
-.fi
-.in -2
-.sp
-
-.LP
-Example 10 Retrieving properties for a device in a parseable format
-.sp
-.LP
-
-To retrieve all properties for the vnd device foo0 in a parseable
-format, run the following command:
-
-.sp
-.in +2
-.nf
-# vndadm get -p foo0
-foo0 rxbuf rw 65536
-foo0 txbuf rw 65536
-foo0 maxsize r- 4194304
-foo0 mintu r- 0
-foo0 maxtu r- 1518
-foo0 _nflush rw 10
-foo0 _burstsz rw 10
-.fi
-.in -2
-.sp
-
-.LP
-Example 11 Setting a property on a device
-.sp
-.LP
-
-To set the receive buffer size to one megabyte on the device foo0, run
-the following command:
-
-.sp
-.in +2
-.nf
-# vndadm set foo0 rxbuf=1M
-.fi
-.in -2
-.sp
-
-.LP
-Example 12 Setting multiple properties on a device
-.sp
-.LP
-
-To set the transmit buffer to 300 Kb and the receive buffer to 1 Mb, run
-the following command:
-
-.sp
-.in +2
-.nf
-# vndadm set foo0 rxbuf=300K txbuf=1M
-.fi
-.in -2
-.sp
-
-.SH SEE ALSO
-
-dladm(1M), ipadm(1M), fcntl(2), fcntl.h(3HEAD), libvnd(3LIB),
-vndstat(1M), vnd(7D)
diff --git a/usr/src/man/man1m/vndstat.1m b/usr/src/man/man1m/vndstat.1m
deleted file mode 100644
index a7f843e228..0000000000
--- a/usr/src/man/man1m/vndstat.1m
+++ /dev/null
@@ -1,163 +0,0 @@
-'\" te
-.\"
-.\" This file and its contents are supplied under the terms of the
-.\" Common Development and Distribution License ("CDDL"), version 1.0.
-.\" You may only use this file in accordance with the terms of version
-.\" 1.0 of the CDDL.
-.\"
-.\" A full copy of the text of the CDDL should have accompanied this
-.\" source. A copy of the CDDL is also available via the Internet at
-.\" http://www.illumos.org/license/CDDL.
-.\"
-.\"
-.\" Copyright (c) 2014, Joyent, Inc. All rights reserved.
-.\"
-.TH VNDSTAT 1M "Mar 06, 2014"
-.SH NAME
-vndstat \- report vnd activity
-
-.SH SYNOPSIS
-
-vndstat [interval [count]]
-
-.SH DESCRIPTION
-.sp
-.LP
-The vndstat command reports a summary of per-device vnd
-activity. Once per interval it prints a table of statistics per
-device. In the global zone, vndstat reports on all devices in the
-system. From the non-global zone, it only reports on devices that are
-present in that zone. vndstat reports on all vnd devices
-that exist, including anonymous devices which are not linked into the
-file system.
-.sp
-.LP
-The vndstat command's output includes the following information:
-.sp
-.ne 2
-.na
-.B name
-.ad
-.RS 14n
-The name of the device, if bound. If a given vnd device is not
-bound into the file system, hence considered anonymous, then there will
-be no name for the device.
-.RE
-
-.sp
-.ne 2
-.na
-.B rx B/s
-.ad
-.RS 14n
-The number of bytes received by the device during interval.
-.RE
-
-.sp
-.ne 2
-.na
-.B tx B/s
-.ad
-.RS 14n
-The number of bytes transmitted by the device during interval.
-.RE
-
-.sp
-.ne 2
-.na
-.B drops
-.ad
-.RS 14n
-The number of packets and messages which have been dropped. This
-includes all drops due to insufficient buffer space, IP hooks, and
-unknown or malformed DLPI messages.
-.RE
-
-.sp
-.ne 2
-.na
-.B txfc
-.ad
-.RS 14n
-The number of flow control events that have occurred. A flow control
-event occurs when the layers below vnd request that all transmits
-be paused until a future call resumes the flow. This statistic is
-incremented when the flow is resumed. It is not incremented when it is
-first paused.
-.RE
-
-.sp
-.ne 2
-.na
-.B zone
-.ad
-.RS 14n
-The name of the zone the device is located in.
-.RE
-
-.SH OPTIONS
-
-.sp
-.ne 2
-.na
-interval
-.ad
-.RS 13n
-Report once each interval seconds. interval may not be
-fractional.
-.RE
-
-.sp
-.ne 2
-.na
-count
-.ad
-.RS 13n
-Only print count reports, then exit.
-.RE
-.sp
-.LP
-When no arguments are given to vndstat, it will always print at an
-interval of one second. Reports will continue until vndstat
-is terminated.
-
-.SH EXAMPLES
-.LP
-Example 1 Print five seconds of data
-
-.sp
-.in +2
-.nf
-example% vndstat 1 5
- name | rx B/s | tx B/s | drops txfc | zone
- net0 | 1.45MB/s | 14.1KB/s | 0 0 | 1b7155a4-aef9-e7f0-d33c-9705e4b8b525
- net0 | 3.50MB/s | 19.5KB/s | 0 0 | 1b7155a4-aef9-e7f0-d33c-9705e4b8b525
- net0 | 2.83MB/s | 30.8KB/s | 0 0 | 1b7155a4-aef9-e7f0-d33c-9705e4b8b525
- net0 | 3.08MB/s | 30.6KB/s | 0 0 | 1b7155a4-aef9-e7f0-d33c-9705e4b8b525
- net0 | 3.21MB/s | 30.6KB/s | 0 0 | 1b7155a4-aef9-e7f0-d33c-9705e4b8b525
-.fi
-.in -2
-.sp
-
-.SH ATTRIBUTES
-.sp
-.LP
-See attributes(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability See below.
-.TE
-
-.sp
-.LP
-Invocation is evolving. Human readable output is unstable.
-.SH SEE ALSO
-
-dlstat(1M), nicstat(1M), vndadm(1M), vnd(7M)
diff --git a/usr/src/man/man1m/vntsd.1m b/usr/src/man/man1m/vntsd.1m
deleted file mode 100644
index d08d283376..0000000000
--- a/usr/src/man/man1m/vntsd.1m
+++ /dev/null
@@ -1,454 +0,0 @@
-'\" te
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
-.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH VNTSD 1M "Mar 31, 2009"
-.SH NAME
-vntsd \- virtual network terminal server daemon for Logical Domains
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/ldoms/vntsd\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBvntsd\fR daemon is a server that supports connections to the Logical
-Domains (LDoms) console by using \fBtelnet\fR(1). When a \fBtelnet\fR session
-starts, \fBvntsd\fR sends \fBtelnet\fR options to the client indicating a
-willingness to remotely echo characters and to suppress go ahead.
-.sp
-.LP
-Consoles are organized into groups by the LDoms Manager. Each console group is
-assigned a unique group name and TCP port number. \fBvntsd\fR uses the group's
-port number to export access to the consoles within that group. To establish a
-connection with a console or console group, a user starts a \fBtelnet\fR(1)
-session with the corresponding group's port number. Depending on the number of
-consoles within that group, \fBvntsd\fR does one of two things:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-If there is only one console in the group, \fBvntsd\fR connects a session to
-that LDoms console.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-If there are multiple consoles in the group, \fBvntsd\fR prompts the user to
-select the console to which they would like to connect, as shown in
-"Multiple-Console Options," below.
-.RE
-.sp
-.LP
-For each console, \fBvntsd\fR provides write access only to the first user
-connecting to the console. Subsequent users connecting to the console are
-allowed only to read from the console and wait for write access. When the first
-user disconnects, write privileges are transferred to the next user waiting in
-the queue. If a user who does not have write privileges attempts to write to a
-console, the \fBvntsd\fR displays the following message:
-.sp
-.in +2
-.nf
-You do not have write access
-.fi
-.in -2
-
-.sp
-.LP
-A user who has no write access can acquire write access forcibly by using the
-\fB~w\fR special console command, described in "Special Console Commands,"
-below.
-.sp
-.LP
-\fBvntsd\fR can be invoked only with superuser privileges or by someone in the
-Primary Administrator role.
-.SH OPTIONS
-.sp
-.LP
-The options for \fBvntsd\fR are divided into multiple-console options and
-console commands.
-.SS "Multiple-Console Options"
-.sp
-.LP
-The options listed below are supported when there are multiple LDoms consoles
-in a group. The syntax for the use of these options is:
-.sp
-.in +2
-.nf
-\fI<hostname>\fR-vnts-\fI<group-name>\fR: \fI<option>\fR
-.fi
-.in -2
-
-.sp
-.LP
-For example:
-.sp
-.in +2
-.nf
-myhost-vnts-salesgroup: h
-.fi
-.in -2
-
-.sp
-.LP
-The \fBh\fR option invokes help, as described below.
-.sp
-.ne 2
-.na
-\fB\fBh\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display the following help text:
-.sp
-.in +2
-.nf
-h -- this help
-l -- list of consoles
-q -- quit
-c{id}, n{name} -- connect to console of domain {id} or domain name
-.fi
-.in -2
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBl\fR\fR
-.ad
-.sp .6
-.RS 4n
-List all consoles in the group. For example:
-.sp
-.in +2
-.nf
-DOMAIN ID DOMAIN NAME DOMAIN STATE
-0 ldg1 online
-1 ldg2 connected
-\&... ... ...
-.fi
-.in -2
-
-The two domain states and their meanings are:
-.sp
-.ne 2
-.na
-\fB\fBonline\fR\fR
-.ad
-.sp .6
-.RS 4n
-No one is connected to the console.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBconnected\fR\fR
-.ad
-.sp .6
-.RS 4n
-At least one user is already connected to the console.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBq\fR\fR
-.ad
-.sp .6
-.RS 4n
-Disconnect from \fBvntsd\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBc\fI{id}\fR, n\fI{name}\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Connect to specified console. Upon connection, the following message is
-displayed:
-.sp
-.in +2
-.nf
-Connecting to console \fI<domain-name>\fR in group \fI<group-name>\fR
-Press ~? for control options ....
-.fi
-.in -2
-
-.RE
-
-.SS "Special Console Commands"
-.sp
-.LP
-A tilde (\fB~\fR) appearing as the first character of a line is an escape
-signal that directs \fBvntsd\fR to perform a special console command. The
-tilde-tilde (\fB~~\fR) sequence outputs a tilde. In conjunction with the
-initial tilde, \fBvntsd\fR accepts the following special console commands:
-.sp
-.ne 2
-.na
-\fB\fB~.\fR\fR
-.ad
-.sp .6
-.RS 4n
-Disconnect from the console or console group.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB~w\fR\fR
-.ad
-.sp .6
-.RS 4n
-Force write access to the console.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB~p\fR\fR
-.ad
-.sp .6
-.RS 4n
-Disconnect from this console, and connect to the console that precedes this
-console in the list of consoles.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB~n\fR\fR
-.ad
-.sp .6
-.RS 4n
-Disconnect from this console, and connect to the console that follows this
-console in the list of consoles.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB~#\fR\fR
-.ad
-.sp .6
-.RS 4n
-Send break.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB~^B\fR\fR
-.ad
-.sp .6
-.RS 4n
-Send alternate break.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB~?\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display \fBvntsd\fR help, as follows:
-.sp
-.in +2
-.nf
-~# - Send break
-~^B - Send alternate break
-~. - Exit from this console
-~w - Force write access
-~n - Console next
-~p - Console previous
-~? - Help
-.fi
-.in -2
-
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/ldoms/vntsd\fR\fR
-.ad
-.sp .6
-.RS 4n
-Binary executable \fBvntsd\fR file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/ldoms/vntsd.xml\fR\fR
-.ad
-.sp .6
-.RS 4n
-Service management facility (\fBsmf\fR(5)) manifest file for \fBvntsd\fR.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBtelnet\fR(1), \fBsvccfg\fR(1M), \fBusermod\fR(1M), \fBauth_attr\fR(4),
-\fBattributes\fR(5), \fBsmf\fR(5)
-.SH NOTES
-.sp
-.LP
-The \fBvntsd\fR is managed by the service management facility, \fBsmf\fR(5),
-under the service identifier:
-.sp
-.in +2
-.nf
-svc:/ldoms/vntsd
-.fi
-.in -2
-
-.sp
-.LP
-You can change the following properties using the \fBsvccfg\fR(1M) command:
-.sp
-.ne 2
-.na
-\fB\fBvntsd/vcc_device\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set an instance of the virtual console concentrator (\fBvcc\fR) driver to which
-\fBvntsd\fR is connected.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBvntsd/listen_addr\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set the IP address to which \fBvntsd\fR listens, using the following syntax:
-.sp
-.in +2
-.nf
-vntsd/listen_addr:"\fIxxx.xxx.xxx.xxx\fR"
-.fi
-.in -2
-
-\&...where \fIxxx.xxx.xxx.xxx\fR is a valid IP address. The default value of
-this property is to listen on IP address 127.0.0.1. Users can connect to a
-guest console over a network if the value is set to the IP address of the
-control domain.
-.LP
-Note -
-.sp
-.RS 2
-Enabling network access to a console has security implications. Any user can
-connect to a console and for this reason it is disabled by default.
-.RE
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBvntsd/timeout_minutes\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set timeout in minutes. \fBvntsd\fR will timeout (close) \fBtelnet\fR
-connection if there is no activity (input or output) on the console. The
-default value is 0, which disables timeout.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBvntsd/authorization\fR\fR
-.ad
-.sp .6
-.RS 4n
-Enable the authorization checking of users and roles for the domain console or
-consoles that are being accessed. The default value of this property is
-\fBfalse\fR to maintain backward compatibility. To enable authorization
-checking, use the \fBsvccfg\fR(1M) command to set the property value to
-\fBtrue\fR. While this option is enabled, \fBvntsd\fR listens and accepts
-connections on \fBlocalhost\fR. If the \fBlisten_addr\fR property specifies an
-alternate IP address when this option is enabled, \fBvntsd\fR ignores the
-alternate IP address and continues to listen on \fBlocalhost\fR. Connections
-that are initiated from other hosts will also fail. Authorizations are
-available to access all consoles or console groups, or to access specific
-consoles or console groups. When the \fBvntsd\fR service is enabled, the
-following authorization is added to the authorization description database,
-\fBauth_attr\fR(4):
-.sp
-.in +2
-.nf
-solaris.vntsd.consoles:::Access All LDoms Guest Consoles::
-.fi
-.in -2
-.sp
-
-Add any fine-grained authorizations based on the name of the console group. For
-example, if the name of the console group to be authorized is \fBldg1\fR, add
-the following entry to the \fBauth_attr\fR(4) file:
-.sp
-.in +2
-.nf
-solaris.vntsd.console-ldg1:::Access Specific LDoms Guest Console::
-.fi
-.in -2
-.sp
-
-By default, the authorization to access all consoles is assigned to the root
-user or role. The Primary Administrator (superuser) can use the
-\fBusermod\fR(1M) command to assign the required authorization or
-authorizations to other users or roles.
-.sp
-The following example gives user \fBuser1\fR the authorization to access all
-domain consoles:
-.sp
-.in +2
-.nf
-# \fBusermod -A "solaris.vntsd.consoles" user1\fR
-.fi
-.in -2
-.sp
-
-The following example gives user \fBuser1\fR the authorization to access the
-console group named \fBldg1\fR:
-.sp
-.in +2
-.nf
-# \fBusermod -A "solaris.vntsd.console-ldg1" user1\fR
-.fi
-.in -2
-.sp
-
-.RE
-
diff --git a/usr/src/man/man1m/volcopy.1m b/usr/src/man/man1m/volcopy.1m
deleted file mode 100644
index 05b2f12739..0000000000
--- a/usr/src/man/man1m/volcopy.1m
+++ /dev/null
@@ -1,159 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 1997 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH VOLCOPY 1M "Mar 20, 1995"
-.SH NAME
-volcopy \- make an image copy of file system
-.SH SYNOPSIS
-.LP
-.nf
-\fBvolcopy\fR [\fB-F\fR \fIFSType\fR] [\fB-V\fR] [\fIgeneric_options\fR]
- [\fB-o\fR \fIFSType-specific_options\fR] \fIoperands\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBvolcopy\fR makes a literal copy of the file system. This command may not be
-supported for all \fIFSTypes\fR.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-F\fR \fIFSType\fR\fR
-.ad
-.RS 30n
-Specify the \fIFSType\fR on which to operate. The \fIFSType\fR should either be
-specified here or be determinable from \fB/etc/vfstab\fR by matching the
-\fIoperands\fR with an entry in the table. Otherwise, the default file system
-type specified in \fB/etc/default/fs\fR will be used.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-V\fR\fR
-.ad
-.RS 30n
-Echo the complete command line, but do not execute the command. The command
-line is generated by using the options and arguments provided by the user and
-adding to them information derived from \fB/etc/vfstab\fR. This option should
-be used to verify and validate the command line.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIgeneric_options\fR\fR
-.ad
-.RS 30n
-Options that are commonly supported by most \fIFSType\fR-specific command
-modules. The following options are available:
-.sp
-.ne 2
-.na
-\fB\fB-a\fR\fR
-.ad
-.RS 6n
-Require the operator to respond "yes" or "no" instead of simply waiting ten
-seconds before the copy is made.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR\fR
-.ad
-.RS 6n
-(Default) Invoke the DEL if wrong verification sequence.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-o\fR \fIFSType-specific_options\fR\fR
-.ad
-.RS 30n
-Specify \fIFSType\fR-specific options in a comma separated (without spaces)
-list of suboptions and keyword-attribute pairs for interpretation by the
-\fIFSType\fR-specific module of the command.
-.RE
-
-.SH OPERANDS
-.sp
-.LP
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fB\fIoperands\fR\fR
-.ad
-.RS 12n
-generally include the device and volume names and are file system specific. A
-detailed description of the \fIoperands\fR can be found on the
-\fIFSType\fR-specific man pages of \fBvolcopy\fR.
-.RE
-
-.SH EXIT STATUS
-.sp
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 5n
-Successful file system copy
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB1\fR\fR
-.ad
-.RS 5n
-An error has occurred.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/vfstab\fR\fR
-.ad
-.RS 19n
-list of default parameters for each file system
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/default/fs\fR\fR
-.ad
-.RS 19n
-default local file system type. Default values can be set for the following
-flags in \fB/etc/default/fs\fR. For example: \fBLOCAL=ufs.\fR
-.sp
-.ne 2
-.na
-\fB\fBLOCAL:\fR\fR
-.ad
-.RS 10n
-The default partition for a command if no \fIFSType\fR is specified.
-.RE
-
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBlabelit\fR(1M), \fBvfstab\fR(4), \fBattributes\fR(5) Manual pages for the
-\fIFSType\fR-specific modules of \fBvolcopy\fR.
diff --git a/usr/src/man/man1m/volcopy_ufs.1m b/usr/src/man/man1m/volcopy_ufs.1m
deleted file mode 100644
index 85b74a02b4..0000000000
--- a/usr/src/man/man1m/volcopy_ufs.1m
+++ /dev/null
@@ -1,123 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T, Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH VOLCOPY_UFS 1M "Apr 15, 2003"
-.SH NAME
-volcopy_ufs \- make an image copy of a ufs file system
-.SH SYNOPSIS
-.LP
-.nf
-\fBvolcopy\fR [\fB-F\fR ufs] [\fIgeneric_options\fR] \fIfsname\fR \fIsrcdevice\fR \fIvolname1\fR \fIdestdevice\fR \fIvolname2\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBvolcopy\fR makes a literal copy of the \fBufs\fR file system using a
-blocksize matched to the device.
-.SH OPTIONS
-.sp
-.LP
-The following option is supported:
-.sp
-.ne 2
-.na
-\fB\fIgeneric_options\fR\fR
-.ad
-.RS 19n
-options supported by the generic \fBvolcopy\fR command. See
-\fBvolcopy\fR(1M).
-.RE
-
-.SH OPERANDS
-.sp
-.LP
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fB\fIfsname\fR\fR
-.ad
-.RS 27n
-represents the mount point (for example, \fBroot\fR, \fBu1\fR, etc.) of the
-file system being copied.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIsrcdevice\fR or \fIdestdevice\fR\fR
-.ad
-.RS 27n
-the disk partition specified using the raw device (for example,
-\fB/dev/rdsk/cld0s8\fR, \fB/dev/rdsk/cld1s8\fR, etc.).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIsrcdevice\fR and \fIvolname1\fR\fR
-.ad
-.RS 27n
-the device and physical volume from which the copy of the file system is being
-extracted.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIdestdevice\fR and \fIvolname2\fR\fR
-.ad
-.RS 27n
-the target device and physical volume.
-.RE
-
-.sp
-.LP
-\fIfsname\fR and \fIvolname\fR are limited to six or fewer characters and
-recorded in the superblock. \fIvolname\fR may be `\fB\(mi\fR\&' to use the
-existing volume name.
-.SH EXIT STATUS
-.sp
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 12n
-Successful file system copy.
-.RE
-
-.sp
-.ne 2
-.na
-\fBnon-zero\fR
-.ad
-.RS 12n
-An error has occurred.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/var/adm/filesave.log\fR\fR
-.ad
-.RS 25n
-a record of file systems/volumes copied
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBcpio\fR(1), \fBdd\fR(1M), \fBlabelit\fR(1M), \fBvolcopy\fR(1M),
-\fBattributes\fR(5), \fBufs\fR(7FS)
-.SH NOTES
-.sp
-.LP
-\fBvolcopy\fR does not support copying to tape devices. Use \fBdd\fR(1M) for
-copying to and from tape devices.
diff --git a/usr/src/man/man1m/vscanadm.1m b/usr/src/man/man1m/vscanadm.1m
deleted file mode 100644
index 3970383ce4..0000000000
--- a/usr/src/man/man1m/vscanadm.1m
+++ /dev/null
@@ -1,680 +0,0 @@
-'\" te
-.\" Copyright (c) 2007 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH VSCANADM 1M "Jul 7, 2009"
-.SH NAME
-vscanadm \- vscan service configuration utility
-.SH SYNOPSIS
-.LP
-.nf
-\fBvscanadm\fR \fBset\fR \fB-p\fR \fIproperty\fR=\fIvalue\fR [\fB-p\fR \fIproperty\fR=\fIvalue\fR]...
-.fi
-
-.LP
-.nf
-\fBvscanadm\fR \fBget\fR [\fB-p\fR \fIproperty\fR]...
-.fi
-
-.LP
-.nf
-\fBvscanadm\fR \fBimport\fR \fB-p\fR \fIproperty\fR \fIfilename\fR
-.fi
-
-.LP
-.nf
-\fBvscanadm\fR \fBexport\fR \fB-p\fR \fIproperty\fR \fIfilename\fR
-.fi
-
-.LP
-.nf
-\fBvscanadm\fR \fBvalidate\fR \fB-p\fR \fIproperty\fR \fIfilename\fR
-.fi
-
-.LP
-.nf
-\fBvscanadm\fR \fBadd-engine\fR [\fB-p\fR \fIproperty\fR=\fIvalue\fR]... \fIengine_id\fR
-.fi
-
-.LP
-.nf
-\fBvscanadm\fR \fBremove-engine\fR \fIengine_id\fR
-.fi
-
-.LP
-.nf
-\fBvscanadm\fR \fBset-engine\fR \fB-p\fR\fIproperty\fR=\fIvalue\fR [\fB-p\fR \fIproperty\fR=\fIvalue\fR]... \fIengine_id\fR
-.fi
-
-.LP
-.nf
-\fBvscanadm\fR \fBget-engine\fR [\fB-p\fR \fIproperty\fR=\fIvalue\fR]... [\fIengine_id\fR]
-.fi
-
-.LP
-.nf
-\fBvscanadm\fR \fBshow\fR
-.fi
-
-.LP
-.nf
-\fBvscanadm\fR \fBstats\fR [\fB-z\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBvscanadm\fR command sets and displays properties of the \fBvscan\fR
-service, \fBvscand\fR(1M), and provides scan statistics.
-.sp
-.LP
-File system exemption from virus scanning may be configured per file system
-using the appropriate file system administrative command, for example
-\fBzfs\fR(1M).
-.sp
-.LP
-Scan engines are third-party applications on external hosts that perform the
-actual virus scanning operation on files. Multiple scan engines can be
-configured for use by the \fBvscan\fR service. A minimum of two scan engines is
-recommended. File scan requests are distributed among the configured scan
-engines to achieve load balancing. A scan engine is identified by its
-\fIengine_id\fR. The \fIengine_id\fR is a user defined string of up to 64
-bytes.
-.sp
-.LP
-The \fBvscan\fR service properties are divided into two categories: scan engine
-properties, which are specific to a scan engine definition, and general
-properties, which apply to the service and are not scan engine-specific.
-.SH SUBCOMMANDS
-.sp
-.LP
-\fBvscanadm\fR recognizes the following subcommands:
-.sp
-.ne 2
-.na
-\fB\fBvscanadm set\fR \fB-p\fR \fIproperty\fR=\fIvalue\fR [\fB-p\fR
-\fIproperty\fR=\fIvalue\fR]...\fR
-.ad
-.sp .6
-.RS 4n
-Sets the values of \fBvscan\fR service general properties.
-.sp
-.ne 2
-.na
-\fB\fB-p\fR \fIproperty\fR=\fIvalue\fR\fR
-.ad
-.RS 21n
-Specifies a property value
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBvscanadm get\fR [\fB-p\fR \fIproperty\fR]...\fR
-.ad
-.sp .6
-.RS 4n
-Displays the values of \fBvscan\fR service general properties. If no properties
-are specified, all \fBvscan\fR service general properties are displayed.
-.sp
-.ne 2
-.na
-\fB\fB-p\fR \fIproperty\fR\fR
-.ad
-.RS 15n
-Specifies a property value
-.RE
-
-.RE
-
-.sp
-.LP
-The following properties are available for the \fBvscanadm set\fR and
-\fBvscanadm get\fR subcommands:
-.sp
-.ne 2
-.na
-\fB\fBmax-size\fR\fR
-.ad
-.RS 19n
-The maximum size of files that should be virus scanned. Files exceeding
-\fImax-size\fR are not scanned. The \fImax-size-action\fR property determines
-whether access should be allowed or denied to files that exceed \fImax-size\fR.
-.sp
-The value of \fImax-size\fR is a string with a numeric (decimal) component and
-an optional letter component that specifies a unit size, in the format
-"N[.N][KMGTP][B]".
-.sp
-Following the numeric component, the optional unit can be specified as either
-one or two characters. For example, either "K" or "KB" can be used to specify
-kilobytes. Unit specifiers are not case-sensitive, and must follow the numeric
-value immediately with no intervening whitespace.
-.sp
-With either no unit specifier, or a unit specifier of only "B", the numeric
-value is assumed to be in bytes. The default value is 1GB.
-.sp
-Note that while the \fBvscan\fR service defines a maximum file size for
-scanning, scan engines also typically define their own maximum file size
-setting. It is recommended that \fImax-size\fR be set to a value less than or
-equal to the maximum file size for the scan engine(s).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmax-size-action\fR\fR
-.ad
-.RS 19n
-Specifies whether access will be allowed or denied to files larger than
-\fImax-size\fR. Files larger than \fImax-size\fR are not virus scanned. Valid
-values are:
-.sp
-.ne 2
-.na
-\fBallow\fR
-.ad
-.RS 9n
-allow access to files larger than \fImax-size\fR (no virus scan). This is the
-default value.
-.RE
-
-.sp
-.ne 2
-.na
-\fBdeny\fR
-.ad
-.RS 9n
-deny access to files larger than \fImax-size\fR (no virus scan)
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBvscanadm import\fR \fB-p\fR \fIproperty\fR \fIfilename\fR\fR
-.ad
-.sp .6
-.RS 4n
-Imports the property value from the specified file. The file must contain a
-single line specifying the value of a single property.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBvscanadm export\fR \fB-p\fR \fIproperty\fR \fIfilename\fR\fR
-.ad
-.sp .6
-.RS 4n
-Exports the property value to the specified file. The file must contain a
-single line specifying the value of a single property.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBvscanadm validate\fR \fB-p\fR \fIproperty\fR \fIfilename\fR\fR
-.ad
-.sp .6
-.RS 4n
-Validates the property value in the specified file. The file must contain a
-single line specifying the value of a single property.
-.RE
-
-.sp
-.LP
-The following properties are available for the \fBvscanadm import\fR,
-\fBvscanadm export\fR, and \fBvscanadm validate\fR subcommands:
-.sp
-.ne 2
-.na
-\fB\fBtypes\fR\fR
-.ad
-.RS 9n
-A comma-separated list of file type extension matching rules. This list defines
-which types of files are scanned and which should be excluded during virus
-scanning. Each rule comprises the rule indicator [+|-], followed by a file type
-\fIexpresssion\fR against which a file's type extension is compared. The file
-type \fIexpresssion\fR is case insensitive and may include the "*" and "?"
-wildcards. There should be no whitespace between the rule indicator and the
-file type \fIexpresssion\fR. If a comma is included within the file type
-expression, it must be escaped using a "\e" (backslash). A file type extension
-does not include its preceding dot.
-.sp
-The rule indicator is a single character and can be one of:
-.sp
-.in +2
-.nf
-+ include file type in virus scanning
-- exclude file type from virus scanning
-.fi
-.in -2
-.sp
-
-When a file is being evaluated as a candidate for virus scanning, its file type
-will be compared with the rules defined in types. The first rule matched will
-be applied. If no match is found, the file will be virus scanned. The total
-length of the types string can not exceed 4096 bytes. The default content of
-the types list is "+*".
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBvscanadm add-engine\fR [\fB-p\fR \fIproperty\fR=\fIvalue\fR]...
-\fIengine_id\fR\fR
-.ad
-.sp .6
-.RS 4n
-Adds a new scan engine identified by \fIengine_id\fR. The default values are
-used for any scan engine properties that are not specified. The hostname
-defaults to the \fIengine_id\fR.
-.sp
-.ne 2
-.na
-\fB\fB-p\fR \fIproperty\fR=\fIvalue\fR\fR
-.ad
-.RS 21n
-Specifies a property value
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBvscanadm remove-engine\fR \fIengine_id\fR\fR
-.ad
-.sp .6
-.RS 4n
-Remove scan engine identified by \fIengine_id\fR, removing all of its
-configuration property values.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBvscanadm set-engine\fR \fB-p\fR\fIproperty\fR=\fIvalue\fR [\fB-p\fR
-\fIproperty\fR=\fIvalue\fR]... \fIengine_id\fR\fR
-.ad
-.sp .6
-.RS 4n
-Creates or updates the configuration property values for the scan engine
-identified by \fIengine_id\fR.
-.sp
-.ne 2
-.na
-\fB\fB-p\fR \fIproperty\fR=\fIvalue\fR\fR
-.ad
-.RS 21n
-Specifies a property value
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBvscanadm get-engine\fR [\fB-p\fR \fIproperty\fR=\fIvalue\fR]...
-[\fIengine_id\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Displays the values of the specified scan engine properties for the scan engine
-identified by \fIengine_id\fR. If no \fIengine_id\fR is specified, this
-subcommand displays the specified scan engine property values for all
-configured scan engines. If no properties are specified, this subcommand
-displays all \fBvscan\fR service scan engine properties.
-.sp
-.ne 2
-.na
-\fB\fB-p\fR \fIproperty\fR=\fIvalue\fR\fR
-.ad
-.RS 21n
-Specifies a property value
-.RE
-
-.RE
-
-.sp
-.LP
-The following properties are available for the \fBvscanadm add-engine\fR,
-\fBvscanadm remove-engine\fR, \fBvscanadm set-engine\fR, and \fBvscanadm
-get-engine\fR subcommands:
-.sp
-.ne 2
-.na
-\fB\fBenable\fR\fR
-.ad
-.RS 18n
-Specifies whether the scan engine is enabled or disabled. Valid values are "on"
-(enabled) and "off" (disabled). The default is "on" (enabled). A scan engine
-cannot be enabled if its host property is invalid.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBhost\fR\fR
-.ad
-.RS 18n
-Hostname or \fBIPv4\fR format \fBIP\fR address of the scan engine.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBport\fR\fR
-.ad
-.RS 18n
-\fBICAP\fR port number of the scan engine. The numeric value ranges from 0 to
-65535. The default \fBICAP\fR port is 1344.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmax-connection\fR\fR
-.ad
-.RS 18n
-The maximum number of concurrent connections that may be established with a
-scan engine. The numeric value ranges from 1 to 512. This property defaults to
-8.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBvscanadm show\fR\fR
-.ad
-.RS 23n
-Displays the values of all \fBvscan\fR service general properties and scan
-engine properties.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBvscanadm stats\fR [\fB-z\fR]\fR
-.ad
-.RS 23n
-Displays or resets the following \fBvscan\fR service statistics:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-number of files scanned
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-number of infected files
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-number of failed scan requests
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-scan errors (including a per scan engine error count)
-.RE
-.sp
-.ne 2
-.na
-\fB\fB-z\fR\fR
-.ad
-.RS 6n
-Resets \fBvscan\fR service statistics counters to zero
-.RE
-
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRSetting the Maximum Size Limit
-.sp
-.LP
-To set the maximum size limit for files to be virus scanned to 128 megabytes,
-enter
-
-.sp
-.in +2
-.nf
-# vscanadm set -p max-size=128M
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRAllowing Access to Files
-.sp
-.LP
-To allow access to files exceeding the maximum file size, enter
-
-.sp
-.in +2
-.nf
-# vscanadm set -p max-size-action=allow
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRSetting File Types
-.sp
-.LP
-To set the types so that only files of type "odt", "exe" and "jpg" are virus
-scanned, enter
-
-.sp
-.in +2
-.nf
-# vscanadm set -p types=+odt,+exe,+jpg,-*
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-To set the types so that all file types except "doc" are virus scanned, enter
-
-.sp
-.in +2
-.nf
-# vscanadm set -p types=-doc,+*
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 4 \fRDisplaying the File Types List
-.sp
-.LP
-To display the file types list, enter
-
-.sp
-.in +2
-.nf
-# vscanadm get -p types
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 5 \fRAdding the Scan Engine
-.sp
-.LP
-To add the scan engine "\fBmy_eng\fR" using the default values, enter
-
-.sp
-.in +2
-.nf
-# vscanadm add-engine my_eng
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 6 \fRDisabling the Scan Engine
-.sp
-.LP
-To disable the scan engine "\fBmy_eng\fR", enter
-
-.sp
-.in +2
-.nf
-# vscanadm set-engine -p enable=off my_eng
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 7 \fRDisplaying Scan Engine Properties
-.sp
-.LP
-To display the properties of the scan engine "\fBmy_eng\fR", enter
-
-.sp
-.in +2
-.nf
-# vscanadm get-engine my_eng
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 8 \fRRemoving Scan Engine
-.sp
-.LP
-To remove the scan engine "\fBmy_eng\fR", enter
-
-.sp
-.in +2
-.nf
-# vscanadm remove-engine my_eng
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 9 \fRDisplaying Vscan Service General and Scan Engine Properties
-.sp
-.LP
-To Display all vscan service general properties and scan engine properties,
-enter
-
-.sp
-.in +2
-.nf
-# vscanadm show
-.fi
-.in -2
-.sp
-
-.SH EXIT STATUS
-.sp
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 12n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnon-zero\fR\fR
-.ad
-.RS 12n
-An error occurred.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Uncommitted
-_
-Utility output format Not-An-Interface
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBvscand\fR(1M), \fBzfs\fR(1M), \fBattributes\fR(5), \fBsmf\fR(5)
-.SH NOTES
-.sp
-.LP
-All users are permitted to use \fBvscanadm\fR to view \fBvscan\fR properties
-and statistics. To set property values or reset statistics, the following
-authorizations are required:
-.sp
-.ne 2
-.na
-\fB\fBsolaris.smf.value.vscan\fR\fR
-.ad
-.sp .6
-.RS 4n
-change the property values or reset statistics
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsolaris.manage.vscan\fR\fR
-.ad
-.sp .6
-.RS 4n
-refresh the service to apply property value changes
-.RE
-
-.sp
-.LP
-To add or remove properties (\fBadd-engine\fR, \fBremove-engine\fR) the
-following authorizations are required:
-.sp
-.ne 2
-.na
-\fB\fBsolaris.smf.modify.application\fR\fR
-.ad
-.sp .6
-.RS 4n
-add or remove property group
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsolaris.manage.vscan\fR\fR
-.ad
-.sp .6
-.RS 4n
-refresh the service to apply property value changes
-.RE
-
-.sp
-.LP
-All of these authorizations are included in the "\fBVSCAN\fR Management"
-profile.
diff --git a/usr/src/man/man1m/vscand.1m b/usr/src/man/man1m/vscand.1m
deleted file mode 100644
index f386b5f943..0000000000
--- a/usr/src/man/man1m/vscand.1m
+++ /dev/null
@@ -1,124 +0,0 @@
-'\" te
-.\" Copyright (c) 2007 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH VSCAND 1M "Nov 6, 2007"
-.SH NAME
-vscand \- vscan service daemon
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/vscan/vscand\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBvscand\fR is the daemon that handles virus scan requests from file systems
-on file open and close operations. A file system may support enabling and
-disabling of virus scanning on a per dataset basis, using that file system's
-administrative command, for example \fBzfs\fR(1M).
-.sp
-.LP
-If the file state or scan policy (see \fBvscanadm\fR(1M) requires that a file
-be scanned, \fBvscand\fR communicates with external third-party virus scanners
-(scan engines) using the Internet Content Adaptation Protocol (\fBICAP\fR,
-\fBRFC\fR 3507) to have the file scanned.
-.sp
-.LP
-A file is submitted to a scan engine if it has been modified since it was last
-scanned, or if it has not been scanned with the latest scan engine
-configuration (Virus definitions). The file's modified attribute and
-\fBscanstamp\fR attribute are used to store this information. Once the file is
-scanned, the modified attribute is cleared and the \fBscanstamp\fR attribute is
-updated.
-.sp
-.LP
-If the file is found to contain a virus, the virus is logged in
-\fBsyslogd\fR(1M), an audit record is written, and the file is quarantined (by
-setting its quarantine attribute). Once a file is quarantined, attempts to
-read, execute or rename the file will be denied by the file system. The
-\fBsyslogd\fR(1M) entry and the audit record specify the name of the infected
-file and the violations detected in the file. Each violation is specified as
-"ID - threat description", where \fBID\fR and threat description are defined in
-the X-Infection-Found-Header in \fBICAP\fR \fBRFC\fR 3507; Extensions.
-.sp
-.LP
-By default, \fBvscand\fR connects to scan engines on port 1344. The port and
-other service configuration parameters can be configured using
-\fBvscanadm\fR(1M).
-.sp
-.LP
-The \fBvscan\fR service is disabled by default, and can be enabled using
-\fBsvcadm\fR(1M).
-.SH EXIT STATUS
-.sp
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 12n
-Daemon started successfully.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnon-zero\fR\fR
-.ad
-.RS 12n
-Daemon failed to start.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Uncommitted
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBps\fR(1), \fBsvcs\fR(1), \fBlogadm\fR(1M), \fBsvcadm\fR(1M),
-\fBsyslogd\fR(1M), \fBvscanadm\fR(1M), \fBzfs\fR(1M), \fBattributes\fR(5),
-\fBsmf\fR(5)
-.SH NOTES
-.sp
-.LP
-If a file is accessed using a protocol which does not invoke the file system
-open and close operations, for example \fBNFSv3\fR, virus scanning is not
-initiated on the file.
-.sp
-.LP
-File content is transferred to the scan engines as \fBcleartext\fR data.
-.sp
-.LP
-Administrative actions for the \fBvscan\fR service, such as enabling,
-disabling, or requesting a restart, can be performed using \fBsvcadm\fR(1M).
-The \fBvscan\fR service status can be queried using the \fBsvcs\fR(1) command.
-.sp
-.LP
-The \fBvscan\fR service is managed by the service management facility,
-\fBsmf\fR(5), under the service identifier:
-.sp
-.in +2
-.nf
-svc:/system/filesystem/vscan
-.fi
-.in -2
-.sp
-
diff --git a/usr/src/man/man1m/wall.1m b/usr/src/man/man1m/wall.1m
deleted file mode 100644
index 2f710329f7..0000000000
--- a/usr/src/man/man1m/wall.1m
+++ /dev/null
@@ -1,122 +0,0 @@
-'\" te
-.\" Copyright (c) 2012 Joyent, Inc. All Rights Reserved.
-.\" Copyright (c) 2000 Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH WALL 1M "Jul 13, 1994"
-.SH NAME
-wall \- write to all users
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/wall\fR [\fB-a\fR] [\fB-g\fR \fIgrpname\fR] [\fB-z\fR \fIzonename\fR] [\fB-Z\fR] [\fIfilename\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBwall\fR reads its standard input until an end-of-file. It then sends this
-message to all currently logged-in users preceded by:
-.sp
-.in +2
-.nf
-Broadcast Message from .\|.\|.
-.fi
-.in -2
-
-.sp
-.LP
-If \fIfilename\fR is given, then the message is read in from that file.
-Normally, pseudo-terminals that do not correspond to rlogin sessions are
-ignored. Thus, when using a window system, the message appears only on the
-console window. However, \fB-a\fR will send the message even to such
-pseudo-terminals. Normally, \fBwall\fR sends messages to the current zone
-only, from the global zone \fB-Z\fR will send messages to all nonglobal zones,
-and \fB-z\fR will send messages to a specified nonglobal zone
-.sp
-.LP
-It is used to warn all users, typically prior to shutting down the system.
-.sp
-.LP
-The sender must be superuser to override any protections the users may have
-invoked See \fBmesg\fR(1).
-.sp
-.LP
-\fBwall\fR runs \fBsetgid()\fR to the group \fBID\fR \fBtty\fR, in order to
-have write permissions on other user's terminals. See \fBsetuid\fR(2).
-.sp
-.LP
-\fBwall\fR will detect non-printable characters before sending them to the
-user's terminal. Control characters will appear as a "\fB ^ \fR" followed by
-the appropriate \fBASCII\fR character; characters with the high-order bit set
-will appear in "meta" notation. For example, `\fB\e003\fR\&' is displayed as
-`\fB^C\fR' and `\fB\e372\fR\&' as `\fBM\(miz\fR'.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-a\fR\fR
-.ad
-.RS 14n
-Broadcast message to the console and pseudo-terminals.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-\fR\fBg\fR \fIgrpname\fR\fR
-.ad
-.RS 14n
-Broadcast to the users in a specified group only, per the group database (see
-\fBgroup\fR(4)).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-\fR\fBz\fR \fIzonename\fR\fR
-.ad
-.RS 14n
-Broadcast to the users in a specified zone only
-.RE
-
-
-.sp
-.ne 2
-.na
-\fB\fB-Z\fR\fR
-.ad
-.RS 14n
-Broadcast message to the console and pseudo-terminals of all zones.
-.RE
-
-.SH ENVIRONMENT VARIABLES
-.sp
-.LP
-If the \fBLC_*\fR variables (\fBLC_CTYPE\fR, \fBLC_TIME\fR, \fBLC_COLLATE\fR,
-\fBLC_NUMERIC\fR, and \fBLC_MONETARY\fR) are not set in the environment, the
-operational behavior of \fBwall\fR for each corresponding locale category is
-determined by the value of the \fBLANG\fR environment variable. See
-\fBenviron\fR(5). If \fBLC_ALL\fR is set, its contents are used to override
-both the \fBLANG\fR and the other \fBLC_*\fR variables. If none of the above
-variables are set in the environment, the "C" (U.S. style) locale determines
-how \fBwall\fR behaves.
-.SH FILES
-.sp
-.LP
-\fB/dev/tty*\fR
-.SH SEE ALSO
-.sp
-.LP
-\fBmesg\fR(1), \fBwrite\fR(1), \fBsetuid\fR(2), \fBattributes\fR(5),
-\fBenviron\fR(5)
-.SH NOTES
-.sp
-.LP
-\fBwall\fR displays ``Cannot send to \|.\|.\|.'' when the open on a user's
-\fBtty\fR file fails.
diff --git a/usr/src/man/man1m/whodo.1m b/usr/src/man/man1m/whodo.1m
deleted file mode 100644
index 7827704d0e..0000000000
--- a/usr/src/man/man1m/whodo.1m
+++ /dev/null
@@ -1,208 +0,0 @@
-'\" te
-.\" Copyright (c) 2013 Gary Mills
-.\" Copyright (c) 2001 Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH WHODO 1M "Dec 15, 2013"
-.SH NAME
-whodo \- who is doing what
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/whodo\fR [\fB-h\fR] [\fB-l\fR] [\fIuser\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBwhodo\fR command produces formatted and dated output from information in
-the \fB/var/adm/utmpx\fR and \fB/proc/pid\fR files.
-.sp
-.LP
-The display is headed by the date, time, and machine name. For each user logged
-in, device name, user-ID and login time is shown, followed by a list of active
-processes associated with the user-ID. The list includes the device name,
-process-ID, CPU minutes and seconds used, and process name.
-.sp
-.LP
-If \fIuser\fR is specified, output is restricted to all sessions pertaining to
-that user.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-h\fR\fR
-.ad
-.RS 6n
-Suppress the heading.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR\fR
-.ad
-.RS 6n
-Produce a long form of output. The fields displayed are: the user's login name,
-the name of the tty the user is on, the time of day the user logged in
-(in ISO time format, weekday name and \fIhours\fR\fB:\fR\fIminutes\fR,
-or ISO date format),
-the idle time \(em that is, the time since the user last typed anything
-(in \fIhours\fR\fB:\fR\fIminutes\fR\fB:\fR\fIseconds\fR),
-the CPU time used by all processes and their children on that terminal
-(in \fIhours\fR\fB:\fR\fIminutes\fR\fB:\fR\fIseconds\fR),
-the CPU time used by the currently active processes
-(in \fIhours\fR\fB:\fR\fIminutes\fR\fB:\fR\fIseconds\fR),
-and the name and arguments of the current process.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRUsing the whodo Command
-.sp
-.LP
-The command:
-
-.sp
-.in +2
-.nf
-example% whodo
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-produces a display like this:
-
-.sp
-.in +2
-.nf
-Tue Mar 12 15:48:03 1985
-bailey
-tty09 mcn 8:51
- tty09 28158 0:29 sh
-
-tty52 bdr 15:23
- tty52 21688 0:05 sh
- tty52 22788 0:01 whodo
- tty52 22017 0:03 vi
- tty52 22549 0:01 sh
-
-xt162 lee 10:20
- tty08 6748 0:01 layers
- xt162 6751 0:01 sh
- xt163 6761 0:05 sh
- tty08 6536 0:05 sh
-.fi
-.in -2
-.sp
-
-.SH ENVIRONMENT VARIABLES
-.sp
-.LP
-If any of the \fBLC_*\fR variables ( \fB\fR\fBLC_CTYPE\fR\fB,\fR
-\fBLC_MESSAGES\fR\fB,\fR \fBLC_TIME\fR\fB,\fR \fBLC_COLLATE\fR\fB,\fR
-\fBLC_NUMERIC\fR\fB,\fR and \fBLC_MONETARY\fR ) (see \fBenviron\fR(5)) are not
-set in the environment, the operational behavior of \fBtar\fR(1) for each
-corresponding locale category is determined by the value of the \fBLANG\fR
-environment variable. If \fBLC_ALL\fR is set, its contents are used to override
-both the \fBLANG\fR and the other \fBLC_*\fR variables. If none of the above
-variables is set in the environment, the "C" (U.S. style) locale determines how
-\fBwhodo\fR behaves.
-.sp
-.ne 2
-.na
-\fB\fBLC_CTYPE\fR\fR
-.ad
-.RS 15n
-Determines how \fBwhodo\fR handles characters. When \fBLC_CTYPE\fR is set to a
-valid value, \fBwhodo\fR can display and handle text and filenames containing
-valid characters for that locale. The \fBwhodo\fR command can display and
-handle Extended Unix code (EUC) characters where any individual character can
-be 1, 2, or 3 bytes wide. \fBwhodo\fR can also handle EUC characters of 1, 2,
-or more column widths. In the "C" locale, only characters from ISO 8859-1 are
-valid.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBLC_MESSAGES\fR\fR
-.ad
-.RS 15n
-Determines how diagnostic and informative messages are presented. This includes
-the language and style of the messages, and the correct form of affirmative and
-negative responses. In the "C" locale, the messages are presented in the
-default form found in the program itself (in most cases, U.S. English).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBLC_TIME\fR\fR
-.ad
-.RS 15n
-Determines how \fBwhodo\fR handles date and time formats. In the "C" locale,
-date and time handling follow the U.S. rules.
-.RE
-
-.SH EXIT STATUS
-.sp
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 12n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fBnon-zero\fR
-.ad
-.RS 12n
-An error occurred.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/passwd\fR\fR
-.ad
-.RS 18n
-System password file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/adm/utmpx\fR\fR
-.ad
-.RS 18n
-User access and administration information
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/proc/pid\fR\fR
-.ad
-.RS 18n
-Contains PID
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBps\fR(1), \fBwho\fR(1), \fBattributes\fR(5), \fBenviron\fR(5)
diff --git a/usr/src/man/man1m/wificonfig.1m b/usr/src/man/man1m/wificonfig.1m
deleted file mode 100644
index 3bfe7132ab..0000000000
--- a/usr/src/man/man1m/wificonfig.1m
+++ /dev/null
@@ -1,1055 +0,0 @@
-'\" te
-.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH WIFICONFIG 1M "December 28, 2020"
-.SH NAME
-wificonfig \- WLAN configuration
-.SH SYNOPSIS
-.nf
-\fBwificonfig\fR [\fB-R\fR \fIroot_path\fR] [\fB-i\fR \fIinterface\fR] autoconf
- [\fIwait\fR={\fIn\fR|\fIforever\fR}]
-.fi
-
-.LP
-.nf
-\fBwificonfig\fR [\fB-R\fR \fIroot_path\fR] [\fB-i\fR \fIinterface\fR] connect profile
- [\fIwait\fR={\fIn\fR|\fIforever\fR}]
-.fi
-
-.LP
-.nf
-\fBwificonfig\fR [\fB-R\fR \fIroot_path\fR] [\fB-i\fR \fIinterface\fR] connect essid
- [\fIwait\fR={\fIn\fR|\fIforever\fR}]
-.fi
-
-.LP
-.nf
-\fBwificonfig\fR [\fB-R\fR \fIroot_path\fR] [\fB-i\fR \fIinterface\fR] disconnect
-.fi
-
-.LP
-.nf
-\fBwificonfig\fR [\fB-R\fR \fIroot_path\fR] [\fB-i\fR \fIinterface\fR] getparam
- [\fIparameter\fR []...]
-.fi
-
-.LP
-.nf
-\fBwificonfig\fR [\fB-R\fR \fIroot_path\fR] [\fB-i\fR \fIinterface\fR] setparam
- [\fIparameter\fR=\fIvalue\fR []...]
-.fi
-
-.LP
-.nf
-\fBwificonfig\fR [\fB-R\fR \fIroot_path\fR] [\fB-i\fR \fIinterface\fR] restoredef
-.fi
-
-.LP
-.nf
-\fBwificonfig\fR [\fB-R\fR \fIroot_path\fR] [\fB-i\fR \fIinterface\fR] scan
-.fi
-
-.LP
-.nf
-\fBwificonfig\fR [\fB-R\fR \fIroot_path\fR] [\fB-i\fR \fIinterface\fR] showstatus
-.fi
-
-.LP
-.nf
-\fBwificonfig\fR [\fB-R\fR \fIroot_path\fR] [\fB-i\fR \fIinterface\fR] setwepkey 1|2|3|4
-.fi
-
-.LP
-.nf
-\fBwificonfig\fR [\fB-R\fR \fIroot_path\fR] createprofile profile
- [\fIparameter\fR=\fIvalue\fR []...]
-.fi
-
-.LP
-.nf
-\fBwificonfig\fR [\fB-R\fR \fIroot_path\fR] deleteprofile \fIprofile1\fR
- [\fIprofile2\fR []...]
-.fi
-
-.LP
-.nf
-\fBwificonfig\fR [\fB-R\fR \fIroot_path\fR] showprofile [\fIprofile\fR]
-.fi
-
-.LP
-.nf
-\fBwificonfig\fR [\fB-R\fR \fIroot_path\fR] setprofilewepkey \fIprofile\fR 1|2|3|4
-.fi
-
-.LP
-.nf
-\fBwificonfig\fR [\fB-R\fR \fIroot_path\fR] getprofileparam \fIprofile\fR
- [\fIparameter\fR []...]
-.fi
-
-.LP
-.nf
-\fBwificonfig\fR [\fB-R\fR \fIroot_path\fR] setprofileparam
- [\fIparameter\fR=\fIvalue\fR []...]
-.fi
-
-.LP
-.nf
-\fBwificonfig\fR [\fB-R\fR \fIroot_path\fR] history
-.fi
-
-.LP
-.nf
-\fBwificonfig\fR [\fB-R\fR \fIroot_path\fR] listprefer
-.fi
-
-.LP
-.nf
-\fBwificonfig\fR [\fB-R\fR \fIroot_path\fR] removeprefer \fIprofile\fR
-.fi
-
-.LP
-.nf
-\fBwificonfig\fR [\fB-R\fR \fIroot_path\fR] setprefer \fIprofile\fR [\fIn\fR]
-.fi
-
-.SH DESCRIPTION
-\fBwificonfig\fR defines a set of subcommands and parameters to configure
-\fBWiFi\fR interfaces in the system. A driver may support all parameters or a
-subset of these parameters.
-.sp
-.LP
-\fBwificonfig\fR uses \fBrbac\fR(5) to control user access to the interface.
-Only users with the "solaris.network.wifi.config" authorization can manage a
-\fBWiFi\fR interface, while only users with
-"solaris.network.wifi.wep"authorizations can configure the \fBWEP\fR (Wired
-Equivalent Privacy) key. Other users can only read parameters from the
-interface. By default, the "solaris.network.wifi.config" and
-"solaris.network.wifi.wep" authorizations are not granted to any user apart
-from root.
-.sp
-.LP
-\fBWificonfig\fR comes in two classes of forms. The first class, shown as the
-first set of synopsis combined with the optional interface name, is the
-subcommands used to a manipulate a particular \fBWiFi\fR network interface. The
-second class, shown as the second set of synopsis, is used to create and
-operate on \fBWiFi\fR Configuration Profiles. A Configuration Profile allows
-the user to pre-specify a set of parameters which can later be applied to a
-\fBWiFi\fR network interface using the \fBconnect\fR or \fBautoconf\fR
-subcommands.
-.sp
-.LP
-In the interface subcommands, if the interface is not specified (that is, the
-\fB-i\fR option is missing), \fBwificonfig\fR selects a random interface from
-the known \fBWiFi\fR interfaces on the system. If there are multiple \fBWiFi\fR
-network interfaces on the system, then the selection will be the same over time
-as long as the number of and names of the \fBWiFi\fR interfaces does not
-change.
-.sp
-.LP
-A Configuration Profile can be created for a \fBWLAN\fR by using the
-\fBcreateprofile\fR subcommand (see the SUBCOMMANDS section). The actual
-\fBWLAN\fR may be present or not.
-.sp
-.LP
-\fBwificonfig\fR also maintains a list of Configuration Profiles called the
-Preference List. This list makes automatic configuration possible. When the
-\fBautoconf\fR subcommand is used, \fBwificonfig\fR tries to connect to each
-pre-configured \fBWLAN\fR according to the order of the Preference List. If the
-Preference List is empty or none of the \fBWLAN\fRs in the Preference List can
-be found, \fBwificonfig\fR uses its built-in heuristics to automatically
-configure the interface. (See the \fBautoconf\fR subcommand for the
-heuristics). A few subcommands (\fBlistprefer\fR, \fBsetprefer\fR,
-\fBremoveprefer\fR) are defined to manipulate the Preference List.
-.SH OPTIONS
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-i\fR \fIinterface\fR\fR
-.ad
-.RS 16n
-Specifies a wireless network interface to do the configuration.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-R\fR \fIroot_path\fR\fR
-.ad
-.RS 16n
-Defines the full path name of a directory to use as the \fIroot_path\fR. This
-affects the location of the private files where \fBwificonfig\fR stores the
-Configuration Profiles and \fBWEP\fR keys.
-.RE
-
-.SS "OPERANDS"
-The following operand is supported:
-.sp
-.ne 2
-.na
-\fBprofile\fR
-.ad
-.RS 11n
-The name of a \fBWiFi\fR profile. It can be a string between 1 and 32
-characters. However, "all", "{preference}", "{history}", "{active_profile}",
-and any strings contained in brackets, such as "[foo]", are not allowed as a
-profile name.
-.RE
-
-.SS "SUBCOMMANDS"
-The following subcommands are supported:
-.sp
-.ne 2
-.na
-\fB\fBautoconf\fR [wait={\fIn\fR|\fIforever\fR}]\fR
-.ad
-.sp .6
-.RS 4n
-Configures the interface automatically. The interface is configured according
-to the previously saved Preference List found in \fB/etc/inet/wifi\fR.
-\fBwificonfig\fR first gets a list of available \fBWLAN\fRs by scanning the
-radio. It then compares the list of available \fBWLAN\fRs with the Preference
-List. If the Preference List is empty, or if none of the \fBWLAN\fRs in the
-Preference List can be found, \fBwificonfig\fR chooses a \fBWLAN\fR to connect
-to using the following priorities: 1) the \fBWLAN\fRs without encryption, 2)
-the \fBWLAN\fRs with stronger signal strength, and 3) the \fBWLAN\fRs with
-higher transmit rates.
-.sp
-If the \fBWLAN\fRs in the Preference list are available, the user can specify
-the number of seconds to wait before \fBautoconf\fR returns using the wait
-option. By default (without the wait option), \fBautoconf\fR returns within 10
-seconds. If "\fIforever\fR" or -1 follows the wait option, \fBwificonfig\fR
-waits until the \fBNIC\fR is successfully connected to the \fBWLAN\fR specified
-by the profile in the Preference list.
-.sp
-The "solaris.network.wifi.config" authorization is required for this
-subcommand.
-.sp
-The \fBWiFi\fR device driver can not guarantee to retain the state for the
-connection when it is not held open. For this reason, it is strongly
-recommended that the \fBplumb\fR subcommand for \fBifconfig\fR(1M) is done
-before the \fBwificonfig autoconf\fR subcommand is given.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBconnect\fR \fIprofile\fR[wait={\fIn\fR|\fIforever\fR}]\fR
-.ad
-.br
-.na
-\fB\fBconnect\fR \fIessid\fR[wait={\fIn\fR|\fIforever\fR}]\fR
-.ad
-.sp .6
-.RS 4n
-Connects to a wireless network according to a pre-configured "profile". If the
-specified Configuration Profile exists in /etc/inet/wifi, the \fBconnect\fR
-subcommand uses that Configuration Profile to configure the interface. That
-profile subsequently becomes the current active profile of the interface after
-the \fBconnect\fR subcommand succeeds. If no existing Configuration Profile
-matches the specified name, the behavior of the \fBconnect\fR subcommand is
-equivalent to the \fBrestoredef\fR subcommand, except that the "essid"
-parameter is set as "profile".
-.sp
-If the \fBWLAN\fRs in the Preference list are available, the user can specify
-the number of seconds to wait before \fBconnect\fR returns using the wait
-option. By default (without the wait option), \fBconnect\fR tries for 10
-seconds. If "\fIforever\fR" or -1 follows the wait option, \fBwificonfig\fR
-tries until the \fBNIC\fR is successfully connected to the profile or essid
-that was specified.
-.sp
-The \fBconnect\fR subcommand prints one of the following lines depending on
-whether or not a Configuration Profile was found for the specified name:
-.sp
-.in +2
-.nf
-Connecting to profile <name>
-Connecting to essid <name>
-.fi
-.in -2
-.sp
-
-The "solaris.network.wifi.config" authorization is required for this
-subcommand.
-.sp
-The \fBWiFi\fR device driver can not guarantee to retain the state for the
-connection when it is not held open. For this reason, it is strongly
-recommended that the \fBplumb\fR subcommand for \fBifconfig\fR(1M) is done
-before the \fBwificonfig autoconf\fR subcommand is given.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdisconnect\fR\fR
-.ad
-.sp .6
-.RS 4n
-Disconnects the interface from the currently associated wireless network. The
-interface associates with none of the wireless networks.
-.sp
-The "solaris.network.wifi.config" authorization is required for this
-subcommand.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBgetparam\fR [parameter [...]]\fR
-.ad
-.br
-.na
-\fB\fBsetparam\fR [parameter=value [...]]\fR
-.ad
-.sp .6
-.RS 4n
-Gets or sets parameters in the network interface. This does not affect any
-profile. The \fBsetprofileparam\fR subcommand can be used to set and change
-parameters in a profile that has already been created.
-.sp
-The \fBsetparam\fR subcommand without any parameters displays the set of
-parameters supported by the network interface, including whether they are
-read/write or read only. The \fBgetparam\fR subcommand without any parameters
-displays all the parameters and their values.
-.sp
-The \fBsetparam wepkey1|wepkey2|wepkey3|wepkey4\fR subcommand requires the
-"solaris.network.wifi.wep" authorization. For all other parameters, the
-\fBsetparam\fR subcommand requires the
-"solaris.network.wifi.config"authorization.
-.sp
-For example,
-.sp
-.in +2
-.nf
-$ wificonfig setparam <parameter1=value1> [parameter2=value2 [...]]
-$ wificonfig getparam <parameter1> [parameter2 [...]]
-.fi
-.in -2
-.sp
-
-\fBwificonfig\fR currently supports the following parameters (the values are
-case insensitive).
-.sp
-.ne 2
-.na
-\fB\fIbssid\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBMAC\fR address of the associated Access Point. The valid value is a hex
-value of 6 bytes. The \fIbssid\fR can also be the \fBIBSSID\fR in an ad-hoc
-configuration. If the network interface is not connected to any \fBWLAN\fR,
-then the string "none" is shown instead of a 6 byte \fBMAC\fR address.
-Otherwise, the network interface is connected to a \fBWLAN\fR. The default
-value is "none". This parameter is read-only.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIessid\fR\fR
-.ad
-.sp .6
-.RS 4n
-Network name. The valid value is a string of up to 32 chars. If \fIessid\fR is
-an empty string, the driver automatically scans and joins the \fBWLAN\fR using
-the built-in heuristics. The default value is an empty string.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIbsstype\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies whether the Infrastructure Mode or Ad-Hoc Mode is used. The valid
-values are "ap", "bss", or "infrastructure" to join a \fBWLAN\fR through an
-Access Point, that is, to use infrastructure mode. The valid values are "ibss"
-or "ad-hoc" to join a peer-to-peer WLAN (also named "ad-hoc"). The valid value
-of "auto" automatically switches between the two types. The default value is
-"infrastructure'".
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIcreateibss\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies whether to create an ad-hoc network (also called an \fIIBSS\fR if the
-\fBconnect\fR does not result in finding the desired network. This enables the
-user to start an ad-hoc network so that other hosts can join. The valid values
-are YES to start a new ad-hoc \fBWLAN\fR (instead of joining one) and NO to not
-start an ad-hoc \fBWLAN\fR. The default value is NO. The \fBNIC\fR always tries
-to join a \fBWLAN\fR first. If this is successful, the setting of
-\fIcreateibss\fR is ignored.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIchannel\fR\fR
-.ad
-.sp .6
-.RS 4n
-An integer indicating the operating frequency. This channel number varies by
-regulatory domain. When the channel number is obtained by the \fBgetparam\fR
-subcommand, the value indicates the actual channel the card uses to connect to
-the network. The channel number is set by the \fBsetparam\fR subcommand, and
-the value is only applicable when the card is in ad-hoc mode. It indicates the
-operating channel of the \fIIBSS\fR. The default value is the channel number on
-the card.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIrates\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the transmission rates. The valid values (in Mbit/s) are 1, 2, 5.5,
-6, 9, 11, 12, 18, 22, 24, 33, 36, 48, and 54. A \fBNIC\fR may support multiple
-transmission rates depending on its capability. This is the only parameter that
-accepts multiple values. When multiple values are supplied to set this
-parameter, each value must be separated by a comma (,). See the \fBEXAMPLES\fR
-section for details. The default values are the data rates supported by the
-chip.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIpowermode\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the power management mode. The valid values are "off" to disable
-power management, "mps" for maximum power saving, and "fast" for the best
-combination of speed and power saving. The default value is "off".
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIauthmode\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the authorization type. The valid values are "opensystem" for an open
-system, where anyone can be authenticated and "shared_key" for a Shared Key
-authentication mode. The default value is "opensystem".
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIencryption\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the encryption algorithm to be used. The valid values are "none" for
-no encryption algorithm and "wep" to turn on \fBWEP\fR encryption. The default
-value is "none".
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIwepkey1\fR|\fIwepkey2\fR|\fIwepkey3\fR|\fIwepkey4\fR\fR
-.ad
-.sp .6
-.RS 4n
-A maximum of 4 \fBWEP\fR keys (indexed 1 through 4) can be set in an \fBNIC\fR.
-They are write-only parameters which can be set by the \fBsetparam\fR
-subcommand, but cannot be read back by the \fBgetparam\fR subcommand. \fBWEP\fR
-keys can either be set by the \fBsetwepkey\fR or the \fBsetparam\fR subcommand.
-\fBsetparam\fR uses plain text but it's scriptable. See the \fBsetwepkey\fR
-subcommand for more information about how a \fBWEP\fR key is encoded. Setting
-\fBWEP\fR keys requires "solaris.network.wifi.wep"authorization.
-.sp
-When these subcommands are used to set a \fBWEP\fR key, any user on the system
-can read the key from the \fBps\fR(1) output. Thus, the \fBsetwepkey\fR
-subcommand is recommended for setting the \fBWEP\fR keys since it does not
-allow \fBps\fR(1) to read the keys.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIwepkeyindex\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the encryption keys. The valid values are 1 to use wepkey1, 2 to use
-wepkey2, 3 to use wepkey3, and 4 to use wepkey4. The default value is 1. This
-subcommand is only valid when \fBWEP\fR is on.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIsignal\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the strength of the received radio signal. The valid values are 0 -
-15 , where 0 is the weakest signal and 15 is the strongest signal. This
-parameter is read-only and indicates the radio signal strength received by the
-\fBNIC\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIradio\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies whether the radio is turned on or off. The valid values are "on" to
-turn on the radio and "off" to turn off the radio. The default value is "on".
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrestoredef\fR\fR
-.ad
-.sp .6
-.RS 4n
-Forces the \fBNIC\fR to restore the network interface to use the default values
-for all the parameters. See the \fBgetparam\fR and \fBsetparam\fR subcommands
-for the default values of the parameters.
-.sp
-The "solaris.network.wifi.config" authorization is required for this
-subcommand.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBscan\fR\fR
-.ad
-.sp .6
-.RS 4n
-Scans and lists the currently available \fBWLAN\fRs.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBshowstatus\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display the basic status of a \fBWLAN\fR interface. If the \fBWLAN\fR interface
-is connected, the basic status includes: the name of the current active
-profile, the name of the network, the \fIbssid\fR, whether the network is
-encrypted or not, and the signal strength.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsetwepkey\fR 1|2|3|4\fR
-.ad
-.sp .6
-.RS 4n
-Sets one of the 4 \fBWEP\fR encryption keys. \fBWEP\fR keys are used to
-encrypt the content of the network packets which are transmitted on air. There
-are 4 \fBWEP\fR keys in the \fBNIC\fR according to the 802.11 standards. The
-\fBsetwepkey\fR subcommand is used to update one of the 4 keys by prompting the
-user for the key. The user must enter the key twice. The input is not echoed.
-For example, to update setwepkey2:
-.sp
-.in +2
-.nf
-example% wificonfig -i ath0 setwepkey 2
-input wepkey2: < user input here>
-confirm wepkey2: < user input here>
-.fi
-.in -2
-.sp
-
-A \fBWEP\fR key can be 5 bytes or 13 bytes long. There are two ways to enter a
-\fBWEP\fR key, by \fBASCII\fR values or by hex values. If the user enters 5 or
-13 characters, it is considered the \fBASCII\fR representation of the key. If
-the user enters 10 or 26 characters, it is considered the hex representation of
-the key. For example "1234" is equivalent to "6162636465". If the user enters
-other number of characters, the subcommand fails. \fBWEP\fR keys are
-write-only; they cannot be read back via \fBwificonfig\fR.
-.sp
-The \fBWEP\fR keys can also be set in plain text form by the \fBsetparam\fR
-subcommand. This makes setting \fBWEP\fR keys scriptable (see the parameters of
-\fBsetparam\fR for the details).
-.sp
-The "solaris.network.wifi.wep" authorization is required for this subcommand.
-.RE
-
-.sp
-.LP
-The following profile subcommands are supported:
-.sp
-.ne 2
-.na
-\fB\fBcreateprofile\fR \fIprofile\fR [parameter=value] [...]\fR
-.ad
-.sp .6
-.RS 4n
-Creates a Configuration Profile named \fIprofile\fR off-line. The specified
-parameters are saved as items of this Configuration Profile. The user can
-specify a group of parameters. At a minimum, the \fIessid\fR must be specified.
-.sp
-The "solaris.network.wifi.config" authorization is required for this
-subcommand.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdeleteprofile\fR \fIprofile1\fR [\fIprofile2\fR [...]]\fR
-.ad
-.sp .6
-.RS 4n
-Deletes one or more Configuration Profiles according to the specified names. If
-the specified Configuration Profile does not exist, this subcommand fails. The
-wild-card "all" can be used to delete all profiles.
-.sp
-The "solaris.network.wifi.config" authorization is required for this
-subcommand.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBshowprofile\fR [\fIprofile\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Displays the parameters in the Configuration Profile according to the specified
-\fIprofile\fR. \fBWEP\fR (wired equivalent privacy) keys are not printed
-because they are write-only parameters. If no \fIprofile\fR is specified, all
-the profiles are shown.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsetprofilewepkey\fR 1|2|3|4\fR
-.ad
-.sp .6
-.RS 4n
-Sets one of the 4 \fBWEP\fR encryption keys in the specified Configuration
-Profile "profile". Like the other \fBprofile\fR subcommands,
-\fBsetprofilewepkey\fR does not affect the configuration of a network
-interface, even if a \fBWiFi\fR interface is currently running with the
-specified profile. In order for the modified profile to be applied to the
-network interface, the \fBconnect\fR or \fBautoconf\fR subcommands have to be
-used after the profile has been updated.
-.sp
-Other than that difference, the usage of \fBsetprofilewepkey\fR is the same as
-the \fBsetwepkey\fR subcommand. For example, to update wepkey 2 in profile
-"\fIhome\fR":
-.sp
-.in +2
-.nf
-example% wificonfig setprofilewepkey home 2
-input wepkey2: < user input here>
-confirm wepkey2: < user input here>
-.fi
-.in -2
-.sp
-
-The "solaris.network.wifi.wep" authorization is required for this subcommand.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBgetprofileparam\fR \fIprofile\fR [parameter]\ [...]]\fR
-.ad
-.br
-.na
-\fB\fBsetprofileparam\fR \fIprofile\fR [parameter=value]\ [...]]\fR
-.ad
-.sp .6
-.RS 4n
-Gets or sets parameters in the specified Configuration Profile "\fIprofile\fR".
-Like the other profile subcommands, these subcommands do not affect the
-configuration of a network interface, even if a \fBWiFi\fR interface is
-currently running with the specified profile. In order for the modified
-profile to be applied to the network interface, the \fBconnect\fR or
-\fBautoconf\fR subcommands have to be used after the profile has been updated.
-.sp
-A \fBgetprofileparam\fR without any parameters will display all the parameters
-and their values.
-.sp
-"Solaris.network.wifi.wep" authorization is required when the \fBsetparam\fR
-subcommand is used with the
-\fIwepkey1\fR|\fIwepkey2\fR|\fIwepkey3\fR|\fIwepkey4\fR parameter. For all
-other parameters, the \fBsetparam\fR subcommand requires
-"solaris.network.wifi.config"authorization.
-.sp
-For example, to change the settings for the "\fIhome\fR" Configuration Profile,
-use:
-.sp
-.in +2
-.nf
-$ wificonfig setprofileparam home <parameter1=value1> \e
-[parameter2=value2 [...]]
-$ wificonfig getprofileparam home <parameter1> [parameter2 [...]]
-.fi
-.in -2
-.sp
-
-The set of parameters and their allowed values are the same as those specified
-for the \fBsetparam\fR subcommand.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBhistory\fR\fR
-.ad
-.sp .6
-.RS 4n
-Lists the \fBWLAN\fRs in the History List. \fBwificonfig\fR automatically
-records the \fBWLAN\fRs that appear in every scanning attempt. The History List
-contains a maximum of 10 records of the most recent \fBWLAN\fRs, sorted by
-time. These records can be listed by using this subcommand.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBlistprefer\fR\fR
-.ad
-.sp .6
-.RS 4n
-Lists the content of the Preference List.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBremoveprefer\fR \fIprofile\fR\fR
-.ad
-.sp .6
-.RS 4n
-Removes one or more profiles from the Preference List. The wild-card "all" can
-be used to delete all profiles.
-.sp
-The "solaris.network.wifi.config" authorization is required for this
-subcommand.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsetprefer\fR \fIprofile\fR [\fIn\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Sets the position of a \fIprofile\fR in the Preference List. This may add or
-change the position of a \fIprofile\fR in the Preference List. The valid values
-of "\fIn\fR" range from 1 to 10. If "\fIn\fR" is missing, the default value of
-1 is assumed. If the specified position is already occupied, the occupying
-\fIprofile\fR is moved lower on the list. If "\fIn\fR" is off the end of the
-list, \fIprofile\fR is added to the end of the list. The Preference List can
-also be created by using this subcommand. If the \fBautoconf\fR subcommand is
-used at a later time, \fBwificonfig\fR tries to join the \fBWLAN\fRs according
-to the Preference List.
-.sp
-The "solaris.network.wifi.config" authorization is required for this
-subcommand.
-.RE
-
-.SH EXAMPLES
-\fBExample 1 \fRListing the Parameters Supported by a Driver
-.sp
-.LP
-To display what parameters the \fIath\fR driver supports and the read/write
-modes of the parameters:
-
-.sp
-.in +2
-.nf
-% wificonfig -i ath0 setparam
- parameter property
- bssid read only
- essid read/write
- bsstype read/write
- rates read/write
- authmode read/write
- encryption read/write
- wepkeyindex read/write
- signal read only
-
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRGetting and Setting Parameters on the WiFi interface
-.sp
-.LP
-To get the current rates and signal strength from the driver:
-
-.sp
-.in +2
-.nf
-% wificonfig -i ath0 getparam rates signal
- ath0:
- rates = 1,2,5.5,11
- signal = 10
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRManaging Configuration Profiles
-.sp
-.LP
-A Configuration Profile can be created offline and then connected to the
-network with the created Configuration Profile. The following series of
-commands creates the Configuration Profile, displays the contents of that
-profile, and connects to the network with the Configuration Profile:
-
-.sp
-.in +2
-.nf
-% wificonfig createprofile myXXX essid=rover encryption=WEP \e
- wepkey1=12345
-% wificonfig showprofile myXXX
- [myXXX]
- essid=rover
- encryption=WEP
- wepkey1=[secret]
-
-% ifconfig ath0 plumb
-% wificonfig -i ath0 connect myXXX
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 4 \fRManaging the Preference List
-.sp
-.LP
-A profile can be added to the Preference List and then used by the
-\fBautoconf\fR subcommand. The following series of commands adds a profile
-named \fImyXXX\fR to the top of the Preference List, automatically connects
-\fIath0\fR to the first available \fBWLAN\fR in the Preference List, and
-removes \fImy_neighbor\fR from the Preference List
-
-.sp
-.in +2
-.nf
-% wificonfig setprefer myXXX 1
-% ifconfig ath0 plumb
-% wificonfig -i ath0 autoconf
-% wificonfig removeprefer my_neighbor
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 5 \fRViewing the History List
-.sp
-.LP
-To display the history of the \fBWLAN\fRs:
-
-.sp
-.in +2
-.nf
-% wificonfig history
-
- WLAN history:
-
- essid bssid encryption last seen
- myXXX 00:0f:24:11:12:14 WEP Fri Sep 13 09:15:24 2004
- my_office_ssid 00:0f:24:11:12:15 WEP Fri Sep 13 13:20:04 2004
- my_neighbor1 00:0f:24:11:12:16 NONE Fri Sep 14 08:01:26 2004
- my_neighbor2 00:0f:24:11:12:17 WEP Fri Sep 18 21:33:12 2004
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 6 \fRAutomatic Configuration
-.sp
-.LP
-To configure the interface according to the previously saved Preference List:
-
-.sp
-.in +2
-.nf
-% ifconfig ath0 plumb
-% wificonfig -i ath0 autoconf
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-If the Preference List is empty, or none of the \fBWLAN\fRs listed by the
-Preference List can be found, \fBwificonfig\fR uses the default configuration,
-directs the interface to scan and join the \fBWLAN\fR using the built-in
-heuristics specified above.
-
-.LP
-\fBExample 7 \fRConnecting To a WLAN
-.sp
-.LP
-To search for a Configuration Profile with the name \fImyXXX\fR and configure
-the interface accordingly:
-
-.sp
-.in +2
-.nf
-% ifconfig ath0 plumb
-% wificonfig -i ath0 connect myXXX
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-If the specified Configuration Profile does not exist, \fBwificonfig\fR
-interprets it as an \fIessid\fR and sets \fIath0\fR to use \fIessid\fR
-\fImyXXX\fR, and no other parameters are set.
-
-.LP
-\fBExample 8 \fRDisplaying the Content of a Configuration Profile
-.sp
-.LP
-To print the parameters of the previously Configured Profile named
-\fImy_home_ssid\fR:
-
-.sp
-.in +2
-.nf
-% wificonfig showprofile my_home_ssid
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 9 \fRMonitoring the link status
-.sp
-.LP
-To monitor the link status:
-
-.sp
-.in +2
-.nf
-% wificonfig -i ath0 showstatus
- ath0:
- linkstatus: not connected,
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-or
-
-.sp
-.in +2
-.nf
- ath0:
- linkstatus: connected
- active profile: [home]
- essid: myhome
- bssid: 00:0b:0e:12:e2:02
- encryption: WEP
- signal: medium(10)
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 10 \fRScanning for available networks
-.sp
-.LP
-To scan for available networks:
-
-.sp
-.in +2
-.nf
-% wificonfig -i ath0 scan
-essid bssid type encryption signal
- level
-ietf64-secure 00:0b:0e:12:e2:02 access point WEP 9
-roomlinx 00:40:96:a1:13:70 access point none 6
-ietf64 00:0b:0e:13:32:00 access point none 3
-ietf64-secure 00:0b:0e:13:32:02 access point WEP 3
-ietf64 00:0b:0e:12:e2:00 access point none 9
-ietf64-secure 00:0b:0e:12:e4:c2 access point WEP 8
-ietf64 00:0b:0e:12:e4:c0 access point none 8
-roomlinx 00:40:96:a0:aa:aa access point none 1
-roomlinx 00:40:96:a0:ab:39 access point none 8
-.fi
-.in -2
-.sp
-
-.SH EXIT STATUS
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 5n
-Successful operation
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB1\fR\fR
-.ad
-.RS 5n
-Fatal Error; the operation failed. For example, a connect failed to associate
-with an Access Point.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB2\fR\fR
-.ad
-.RS 5n
-Improper Use; help information will be printed
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB3\fR\fR
-.ad
-.RS 5n
-Minor error
-.RE
-
-.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Unstable
-.TE
-
-.SH SEE ALSO
-\fBps\fR(1), \fBifconfig\fR(1M), \fBattributes\fR(5), \fBath\fR(7D)
diff --git a/usr/src/man/man1m/wpad.1m b/usr/src/man/man1m/wpad.1m
deleted file mode 100644
index c1e61dc449..0000000000
--- a/usr/src/man/man1m/wpad.1m
+++ /dev/null
@@ -1,168 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH WPAD 1M "Mar 11, 2008"
-.SH NAME
-wpad \- WPA and WPA2 protocol daemon
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/inet/wpad\fR [\fB-i\fR \fIinterface\fR] [\fB-k\fR \fIpre_shared_key_name\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBwpad\fR daemon provides common client functionality for the WiFi
-Protected Access (WPA) versions 1 and 2, as defined by IEEE802.11i standard.
-WPA was created by the WiFi Alliance, an industry trade group. WPA implements
-the majority of the IEEE 802.11i standard, and was intended as an intermediate
-measure to take the place of Wired Equivalent Privacy (WEP) while 802.11i was
-prepared. WPA2 implements the full standard.
-.sp
-.LP
-\fBwpad\fR provides the following WPA/IEEE 802.11i features:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-WPA-PSK ("WPA-Personal")
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Key management for CCMP, TKIP, WEP104, WEP40
-.RE
-.sp
-.LP
-Stop and start the \fBwpad\fR daemon using \fBdladm\fR(1M). Use:
-.sp
-.in +2
-.nf
-# \fBdladm connect-wifi\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-\&...to start the \fBwpad\fR daemon. Use:
-.sp
-.in +2
-.nf
-# \fBdladm disconnect-wifi\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-\&...to stop the daemon.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-i\fR \fIinterface\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify a WiFi Link interface to start the \fBwpad\fR daemon.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-k\fR \fIpre_shared_key_name\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify the pre-shared key used for the WiFi Link.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRStarting the \fBwpad\fR Daemon on Specific WiFi Link
-.sp
-.LP
-To create the WPA key \fBpsk\fR, enter the following command:
-
-.sp
-.in +2
-.nf
-# \fBdladm create-secobj -c wpa psk\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-To use key \fBpsk\fR to connect to ESSID \fBwlan\fR on link \fBath0\fR, enter
-the following command:
-
-.sp
-.in +2
-.nf
-# \fBdladm connect-wifi -k psk -e wlan ath0\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRStopping the \fBwpad\fR Daemon on Specific WiFi Link
-.sp
-.LP
-To stop the daemon on the link \fBath0\fR, enter:
-
-.sp
-.in +2
-.nf
-# \fBdladm disconnect-wifi ath0\fR
-.fi
-.in -2
-.sp
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Uncommitted
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBsvcs\fR(1), \fBdladm\fR(1M), \fBsvcadm\fR(1M), \fBattributes\fR(5),
-\fBsmf\fR(5)
-.SH NOTES
-.sp
-.LP
-The \fBwpad\fR service is managed by the service management facility,
-\fBsmf\fR(5), under the service identifier:
-.sp
-.in +2
-.nf
-svc:/network/wpa:\fI<link>\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Administrative actions on this service, such as enabling, disabling, or
-requesting restart, can be performed using \fBsvcadm\fR(1M). The service's
-status can be queried using the \fBsvcs\fR(1) command.
diff --git a/usr/src/man/man1m/wracct.1m b/usr/src/man/man1m/wracct.1m
deleted file mode 100644
index c3e99d3770..0000000000
--- a/usr/src/man/man1m/wracct.1m
+++ /dev/null
@@ -1,178 +0,0 @@
-'\" te
-.\" Copyright (c) 2000, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH WRACCT 1M "Jul 13, 2005"
-.SH NAME
-wracct \- write extended accounting records for active processes and tasks
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/wracct\fR \fB-i\fR \fIid_list\fR [\fB-t\fR \fIrecord_type\fR]
- {process | task}
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBwracct\fR utility allows the administrator to invoke the extended
-accounting system, if active, to write intermediate records representing the
-resource usage of a selected set of processes or tasks. For tasks, a
-\fIrecord_type\fR option is also supported, allowing the administrator to
-request the writing of:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-an interval record, which reflects task usage since a previous interval record
-(or since task creation if there is no interval record), or
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-a partial record, which reflects usage since task creation.
-.RE
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-i\fR \fIid_list\fR\fR
-.ad
-.RS 18n
-Select the \fBID\fRs of the tasks or processes to write records for. Specify
-\fIid_list\fR as a comma- or space-separated list of IDs, presented as a single
-argument. For some shells, this requires appropriate quoting of the argument.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-t\fR \fIrecord_type\fR\fR
-.ad
-.RS 18n
-Select type of record to write for the selected task or process. For tasks,
-\fIrecord_type\fR can be \fBpartial\fR or \fBinterval\fR. \fBpartial\fR is the
-default type, and the only type available for process records.
-.RE
-
-.SH OPERANDS
-.sp
-.LP
-The following operands are supported:
-.sp
-.ne 2
-.na
-\fB\fBprocess\fR\fR
-.ad
-.RS 11n
-Treat the given \fBID\fR as a process \fBID\fR for the purposes of constructing
-and writing an extended accounting record.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBtask\fR\fR
-.ad
-.RS 11n
-Treat the given \fBID\fR as a task \fBID\fR for the purposes of constructing
-and writing an extended accounting record.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRWriting a Partial Record
-.sp
-.LP
-Write a partial record for all active \fBsendmail\fR processes.
-
-.sp
-.in +2
-.nf
-# /usr/sbin/wracct -i "`pgrep sendmail`" process
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRWriting an Interval Record
-.sp
-.LP
-Write an interval record for the task with \fBID 182\fR.
-
-.sp
-.in +2
-.nf
-# /usr/sbin/wracct -t interval -i 182 task
-.fi
-.in -2
-.sp
-
-.SH EXIT STATUS
-.sp
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 5n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB1\fR\fR
-.ad
-.RS 5n
-An error occurred.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB2\fR\fR
-.ad
-.RS 5n
-Invalid command line options were specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB3\fR\fR
-.ad
-.RS 5n
-Pertinent components of extended accounting facility are not active.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/var/adm/exacct/task\fR\fR
-.ad
-.RS 24n
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/adm/exacct/proc\fR\fR
-.ad
-.RS 24n
-Extended accounting data files.
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBacctadm\fR(1M), \fBattributes\fR(5)
diff --git a/usr/src/man/man1m/ypbind.1m b/usr/src/man/man1m/ypbind.1m
deleted file mode 100644
index 1cd12276e9..0000000000
--- a/usr/src/man/man1m/ypbind.1m
+++ /dev/null
@@ -1,161 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T
-.\" Copyright (C) 2004, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH YPBIND 1M "May 13, 2017"
-.SH NAME
-ypbind \- NIS binder process
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/netsvc/yp/ypbind\fR [\fB-broadcast\fR | \fB-ypset\fR | \fB-ypsetme\fR]
-.fi
-
-.SH DESCRIPTION
-.LP
-NIS provides a simple network lookup service consisting of databases and
-processes. The databases are stored at the machine that runs an NIS server
-process. The programmatic interface to NIS is described in \fBypclnt\fR(3NSL).
-Administrative tools are described in \fBypinit\fR(1M), \fBypwhich\fR(1), and
-\fBypset\fR(1M). Tools to see the contents of NIS maps are described in
-\fBypcat\fR(1), and \fBypmatch\fR(1).
-.sp
-.LP
-\fBypbind\fR is a daemon process that is activated at system startup time from
-the \fBsvc:/network/nis/client:default\fR service. By default, it is invoked as
-\fBypbind\fR \fB-broadcast\fR. \fBypbind\fR runs on all client machines that
-are set up to use \fBNIS\fR. The function of
-\fBypbind\fR is to remember information that lets all \fBNIS\fR client
-processes on a node communicate with some \fBNIS\fR server process.
-\fBypbind\fR must run on every machine which has \fBNIS\fR client processes.
-The \fBNIS\fR server may or may not be running on the same node, but must be
-running somewhere on the network.
-.sp
-.LP
-The information \fBypbind\fR remembers is called a \fIbinding\fR \(em the
-association of a domain name with a \fBNIS\fR server. The process of binding is
-driven by client requests. As a request for an unbound domain comes in, if
-started with the \fB-broadcast\fR option, the \fBypbind\fR process broadcasts
-on the net trying to find an \fBNIS\fR server, a \fBypserv\fR process
-serving the domain. Since the binding is established by broadcasting, there
-must be at least one \fBNIS\fR server on the net. If started without the
-\fB-broadcast\fR option, \fBypbind\fR process steps through the list of
-\fBNIS\fR servers that was created by \fBypinit\fR \fB-c\fR for the requested
-domain. There must be an \fBNIS\fR server process on at least one of the hosts
-in the \fBNIS\fR servers file. It is recommended that you list each of these
-NIS servers by name and numeric IP address in \fB/etc/hosts\fR. Though the
-practice is not recommended, NIS allows you to list servers by numeric address
-only, bypassing \fB/etc/hosts\fR. In such a configuration, \fBypwhich\fR(1)
-returns a numeric address instead of a name.
-.sp
-.LP
-Once a domain is bound by \fBypbind\fR, that same binding is given to every
-client process on the node. The \fBypbind\fR process on the local node or a
-remote node may be queried for the binding of a particular domain by using the
-\fBypwhich\fR(1) command.
-.sp
-.LP
-If \fBypbind\fR is unable to speak to the \fBNIS\fR server process it is bound
-to, it marks the domain as unbound, tells the client process that the domain is
-unbound, and tries to bind the domain once again. Requests received for an
-unbound domain will wait until the requested domain is bound. In general, a
-bound domain is marked as unbound when the node running the \fBNIS\fR server
-crashes or gets overloaded. In such a case, \fBypbind\fR will try to bind to
-another \fBNIS\fR server using the process described above.\fBypbind\fR also
-accepts requests to set its binding for a particular domain. The request is
-usually generated by the \fBypset\fR(1M) command. In order for \fBypset\fR to
-work, \fBypbind\fR must have been invoked with flags \fB-ypset\fR or
-\fB-ypsetme\fR.
-.SH OPTIONS
-.ne 2
-.na
-\fB\fB-broadcast\fR\fR
-.ad
-.sp .6
-.RS 4n
-Send a broadcast datagram using \fBUDP/IP\fR that requests the information
-needed to bind to a specific \fBNIS\fR server. This option is analogous to
-\fBypbind\fR with no options in earlier Sun releases and is recommended for
-ease of use.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-ypset\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow users from any remote machine to change the binding by means of the
-\fBypset\fR command. By default, no one can change the binding. This option is
-insecure.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-ypsetme\fR\fR
-.ad
-.sp .6
-.RS 4n
-Only allow \fBroot\fR on the local machine to change the binding to a desired
-server by means of the \fBypset\fR command. \fBypbind\fR can verify the caller
-is indeed a \fBroot\fR user by accepting such requests only on the loopback
-transport. By default, no external process can change the binding.
-.RE
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/var/yp/binding/\fIypdomain\fR/ypservers\fR\fR
-.ad
-.sp .6
-.RS 4n
-Lists the servers to which the NIS client is allowed to bind.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/inet/hosts\fR\fR
-.ad
-.sp .6
-.RS 4n
-File in which it is recommended that NIS servers be listed.
-.RE
-
-.SH SEE ALSO
-.LP
-\fBsvcs\fR(1), \fBypcat\fR(1), \fBypmatch\fR(1), \fBypwhich\fR(1),
-\fBifconfig\fR(1M), \fBsvcadm\fR(1M), \fBypinit\fR(1M),
-\fBypset\fR(1M), \fBypclnt\fR(3NSL), \fBhosts\fR(4), \fBypfiles\fR(4),
-\fBattributes\fR(5), \fBsmf\fR(5)
-.SH NOTES
-.LP
-\fBypbind\fR supports multiple domains. The \fBypbind\fR process can maintain
-bindings to several domains and their servers, the default domain is the one
-specified by the \fBdomainname\fR(1M) command at startup time.
-.sp
-.LP
-The \fB-broadcast\fR option works only on the \fBUDP\fR transport. It is
-insecure since it trusts "any" machine on the net that responds to the
-broadcast request and poses itself as an \fBNIS\fR server.
-.sp
-.LP
-The \fBypbind\fR service is managed by the service management facility,
-\fBsmf\fR(5), under the service identifier:
-.sp
-.in +2
-.nf
-svc:/network/nis/client:default
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Administrative actions on this service, such as enabling, disabling, or
-requesting restart, can be performed using \fBsvcadm\fR(1M). The service's
-status can be queried using the \fBsvcs\fR(1) command.
diff --git a/usr/src/man/man1m/ypinit.1m b/usr/src/man/man1m/ypinit.1m
deleted file mode 100644
index 6ba6a0f9f2..0000000000
--- a/usr/src/man/man1m/ypinit.1m
+++ /dev/null
@@ -1,124 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T
-.\" Copyright (C) 2008, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.\" Copyright 2014 Nexenta Systems, Inc. All rights reserved.
-.TH YPINIT 1M "Dec 15, 2014"
-.SH NAME
-ypinit \- set up NIS client
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/ypinit\fR \fB-m\fR
-\fB/usr/sbin/ypinit\fR \fB-s\fR [\fImaster_server\fR]
-\fB/usr/sbin/ypinit\fR \fB-c\fR [\fIserver_name...\fR]
-.fi
-
-.SH DESCRIPTION
-.LP
-\fBypinit\fR can be used to set up an \fBNIS\fR client system. You must be the
-superuser to run this command. This script need not be used at all if
-\fBypbind\fR(1M) is started with the \fB-broadcast\fR option (it is invoked
-with this option from the \fBsvc:/network/nis/client:default service\fR).
-.sp
-.LP
-Normally, \fBypinit\fR is run only once after installing the system. It may be
-run whenever a new \fBNIS\fR server is added to the network or an existing one
-is decommissioned.
-.sp
-.LP
-\fBypinit\fR prompts for a list of \fBNIS\fR servers to bind the client to;
-this list should be ordered from the closest to the furthest server. It is
-recommended that you list each of these NIS servers by name and numeric IP
-address in \fB/etc/hosts\fR. Though the practice is not recommended, NIS allows
-you to list servers by numeric address only, bypassing \fB/etc/hosts\fR. In
-such a configuration, \fBypwhich\fR(1) returns a numeric address instead of a
-name.
-.sp
-.LP
-\fBypinit\fR stores the list of servers to which a client can bind in the file
-\fB/var/yp/binding/\fIdomain\fR/ypservers\fR. This file is used by \fBypbind\fR
-when run without the \fB-broadcast\fR option.
-.SH OPTIONS
-.ne 2
-.na
-\fB\fB-c\fR\fR [\fIserver_name...\fR]
-.ad
-.sp .6
-.RS 4n
-Set up a \fBypclient\fR system. If \fIserver_name\fR is specified, it will
-replace currently configured list of servers. \fIserver_name\fR could be
-represented by IPv4/v6 address as well as by hostname.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-m\fR\fR
-.ad
-.sp .6
-.RS 4n
-Build a master \fBypserver\fR data base.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR \fImaster_server\fR\fR
-.ad
-.sp .6
-.RS 4n
-Slave data base. \fImaster_server\fR must be the same master configured in the
-\fBYP\fR maps and returned by the \fBypwhich\fR \fB-m\fR command.
-.RE
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/etc/hosts\fR\fR
-.ad
-.sp .6
-.RS 4n
-File in which it is recommended that NIS servers be listed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/yp/binding/\fIdomain\fR/ypservers\fR\fR
-.ad
-.sp .6
-.RS 4n
-Lists the servers to which the NIS client is allowed to bind.
-.RE
-
-.SH SEE ALSO
-.LP
-\fBsvcs\fR(1), \fBypwhich\fR(1), \fBsvcadm\fR(1M), \fBypbind\fR(1M),
-\fBsysinfo\fR(2), \fBhosts\fR(4), \fBattributes\fR(5), \fBsmf\fR(5)
-.SH NOTES
-.LP
-The \fBNIS client\fR service is managed by the service management facility,
-\fBsmf\fR(5), under the service identifier:
-.sp
-.in +2
-.nf
-svc:/network/nis/client:default
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Administrative actions on this service, such as enabling, disabling, or
-requesting restart, can be performed using \fBsvcadm\fR(1M). The service's
-status can be queried using the \fBsvcs\fR(1) command.
-.SH BUGS
-.LP
-\fBypinit\fR sets up the list of \fBNIS\fR servers only for the current domain
-on the system when it is run, that is, the domain returned by the
-\fBSI_SRPC_DOMAIN\fR command to \fBsysinfo\fR(2). Care should be taken to
-ensure that this is the same as the desired domain for \fBNIS\fR client
-processes.
diff --git a/usr/src/man/man1m/ypmake.1m b/usr/src/man/man1m/ypmake.1m
deleted file mode 100644
index 444cca3e6c..0000000000
--- a/usr/src/man/man1m/ypmake.1m
+++ /dev/null
@@ -1,106 +0,0 @@
-'\" te
-.\" Copyright (C) 2003, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH YPMAKE 1M "Feb 25, 2017"
-.SH NAME
-ypmake \- rebuild NIS database
-.SH SYNOPSIS
-.LP
-.nf
-\fBcd\fR \fB/var/yp\fR ; \fBmake\fR [\fImap\fR]
-.fi
-
-.SH DESCRIPTION
-.LP
-The file called \fBMakefile\fR in \fB/var/yp\fR is used by \fBmake\fR(1S) to
-build the Network Information Service (\fBNIS\fR) database. With no arguments,
-\fBmake\fR creates \fBdbm\fR databases for any \fBNIS\fR maps that are
-out-of-date, and then executes \fByppush\fR(1M) to notify slave databases that
-there has been a change.
-.sp
-.LP
-If you supply a \fImap\fR on the command line, \fBmake\fR will update that map
-only. Typing \fBmake passwd\fR will create and \fByppush\fR the password
-database (assuming it is out of date). Likewise, \fBmake ipnodes\fR and \fBmake
-networks\fR will create and \fByppush\fR the \fBipnodes\fR and \fBnetwork\fR
-files, \fB$(INETDIR)/ipnodes\fR and \fB$(DIR)/networks\fR.
-.sp
-.LP
-There are four special variables used by \fBmake\fR: \fBDIR\fR, which gives the
-directory of the source files; \fBNOPUSH\fR, which when non-null inhibits doing
-a \fByppush\fR of the new database files; \fBINETDIR\fR, which gives the
-directory of the \fBipnodes\fR source file; and \fBDOM\fR, which is used to
-construct a domain other than the master's default domain. The default for
-\fBDIR\fR is \fB/etc\fR, and the default for \fBINETDIR\fR is \fB/etc/inet\fR.
-The default for \fBNOPUSH\fR is the null string.
-.sp
-.LP
-Refer to \fBypfiles\fR(4) and \fBypserv\fR(1M) for an overview of the
-\fBNIS\fR service.
-.sp
-.LP
-If a \fBNIS\fR to LDAP (N2L) configuration file, \fB/var/yp/NISLDAPmapping\fR,
-is present, the \fBNIS\fR server components run in N2L mode. In N2L mode, the
-server components use a new set of map files with an LDAP-prefix, based on the
-LDAP DIT. In N2L mode, authoritative NIS information is obtained from the DIT.
-The NIS source files and \fBypmake\fR have no role, and they should not be
-used. If \fBypmake\fR is accidentally run, then the server components will
-detect this, and will log a warning message. For additional information, see
-\fBypfiles\fR(4).
-.SH FILES
-.ne 2
-.na
-\fB\fB/var/yp\fR\fR
-.ad
-.RS 19n
-Directory containing \fBNIS\fR configuration files.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/inet/hosts\fR\fR
-.ad
-.RS 19n
-System hosts file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc\fR\fR
-.ad
-.RS 19n
-Default directory for source files.
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-.LP
-\fBmake\fR(1S), \fBmakedbm\fR(1M),
-\fBypbind\fR(1M), \fByppush\fR(1M), \fBypserv\fR(1M), \fBypclnt\fR(3NSL),
-\fBNISLDAPmapping\fR(4), \fBypfiles\fR(4), \fBypserv\fR(4)
-.SH NOTES
-.LP
-The Network Information Service (\fBNIS\fR) was formerly known as Sun Yellow
-Pages (\fBYP\fR). The functionality of the two remains the same. Only the name
-has changed. The name Yellow Pages is a registered trademark in the United
-Kingdom of British Telecommunications plc, and may not be used without
-permission.
diff --git a/usr/src/man/man1m/ypmap2src.1m b/usr/src/man/man1m/ypmap2src.1m
deleted file mode 100644
index b74fc181fe..0000000000
--- a/usr/src/man/man1m/ypmap2src.1m
+++ /dev/null
@@ -1,146 +0,0 @@
-'\" te
-.\" Copyright (C) 2003, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH YPMAP2SRC 1M "Apr 10, 2003"
-.SH NAME
-ypmap2src \- convert NIS maps to NIS source files
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/netsvc/yp/ypmap2src\fR [\fB-t\fR]
- [ [\fB-c\fR \fIcustom-map-name\fR]]... [\fB-d\fR \fIdomain\fR] \fB-o\fR \fIoutput-directory\fR
- [ [ \fIsource-file\fR]]...
-.fi
-
-.SH DESCRIPTION
-.LP
-Use the \fBypmap2src\fR utility to convert standard NIS maps to approximations
-of the equivalent NIS source files. This utility functions like the reverse of
-\fBypmake\fR(1M).
-.sp
-.LP
-The primary use for \fBypmap2src\fR is to convert from a NIS server that uses
-the NIS to LDAP(N2L) transition mechanism, which does not use NIS source files,
-to traditional NIS, where source files are required. The \fBypmap2src\fR
-utility is also used by NIS administrators who wish to discover the contents of
-NIS maps for which the sources are not available.
-.sp
-.LP
-Generally, this operation is not necessary. More often, administrators will
-switch from traditional NIS to N2L in anticipation of the eventual transition
-to LDAP naming. When this switch is made, authoritative information is moved
-into the LDAP DIT, and the NIS sources have no further role. N2L supports NIS
-clients until such time as they can be converted to LDAP, and the NIS service
-suspended.
-.sp
-.LP
-The \fBypmap2src\fR utility does not guarantee that the files that are
-generated are identical to the original NIS source files. Some information
-might have been thrown away by \fBypmake\fR and cannot be recovered. N2L also
-might have updated the maps to reflect changes made by LDAP clients. It is
-essential that the sources generated are checked to confirm no problems have
-occurred.
-.sp
-.LP
-Per entry comment fields, from existing source files, are not merged into
-source files generated by \fBypmap2src\fR. If a user wishes N2L to maintain
-comment information, then the \fBNISLDAPmapping\fR configuration file should be
-modified so that the comment fields are mapped into LDAP. This will ensure
-that the comments are visible to native LDAP clients and present in the N2L map
-files.
-.sp
-.LP
-When \fBypmap2src\fR is run, it will take up-to-date comments from the map file
-and insert them into the NIS source file generated.
-.SS "Handling Custom Maps"
-.LP
-\fBypmap2src\fR only knows about the standard NIS maps and standard source to
-map conversion. If an advanced user has changed these, that is, the user has
-modified the NIS makefile, the equivalent changes must also be made to the
-\fBypmap2src\fR script.
-.SH OPTIONS
-.LP
-\fBypmap2src\fR supports the following options:
-.sp
-.ne 2
-.na
-\fB\fB-c\fR\fR
-.ad
-.RS 18n
-Specifies that \fIcustom-map-name\fR should be converted to a source
-file by running \fBmakedbm\fR \fB-u\fR on it. This is a short cut so that
-simple custom maps can be handled without editing \fBypmap2src\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-d\fR \fIdomain-name\fR\fR
-.ad
-.RS 18n
- Specifies the domain to convert. The \fIdomain-name\fR can be a fully
-qualified file path, such as \fB/var/yp/a.b.c\fR, or just a domain name,
-a.b.c\fB\fR. In the latter case, \fBypmaptosrc\fR looks in \fB/var/yp\fR for
-the domain directory.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-o\fR \fIdest\fR\fR
-.ad
-.RS 18n
- Specifies the destination directory for the converted files. A directory other
-than \fB/etc\fR should be specified. The maps generated are copied to the
-correct location, \fB/etc\fR, \fB/etc/security\fR or other source directory, as
-appropriate.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-t\fR\fR
-.ad
-.RS 18n
-Specifies that traditional NIS maps, without N2L's \fBLDAP_\fR prefix, should
-be converted. By default, maps with the \fBLDAP_\fR prefix are converted.
-.RE
-
-.SH OPERANDS
-.LP
-\fBypmap2src\fR supports the following operands:
-.sp
-.ne 2
-.na
-\fB\fIsource-file\fR\fR
-.ad
-.RS 15n
-Lists the standard source files to convert. If this option is not given, then
-all the standard source files, plus any custom files specified by the \fB-c\fR
-option, are converted.
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Obsolete
-.TE
-
-.SH SEE ALSO
-.LP
-\fBypmake\fR(1M), \fBypserv\fR(1M), \fBNISLDAPmapping\fR(4),
-\fBattributes\fR(5)
-.sp
-.LP
-\fI\fR
diff --git a/usr/src/man/man1m/yppoll.1m b/usr/src/man/man1m/yppoll.1m
deleted file mode 100644
index 65ff3cb723..0000000000
--- a/usr/src/man/man1m/yppoll.1m
+++ /dev/null
@@ -1,44 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 1988 Sun Microsystems, Inc. - All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH YPPOLL 1M "Sep 14, 1992"
-.SH NAME
-yppoll \- return current version of a NIS map at a NIS server host
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/yppoll\fR [\fB-d\fR \fIypdomain\fR] [\fB-h\fR \fIhost\fR] \fImapname\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fByppoll\fR command asks a \fBypserv\fR(\|) process what the order number
-is, and which host is the master NIS server for the named map.
-.SH OPTIONS
-.sp
-.ne 2
-.na
-\fB\fB\fR\fB-d\fR\fB \fR\fIypdomain\fR\fR
-.ad
-.RS 15n
-Use \fIypdomain\fR instead of the default domain.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\fR\fB-h\fR\fB \fR\fIhost\fR\fR
-.ad
-.RS 15n
-Ask the \fBypserv\fR process at \fIhost\fR about the map parameters. If
-\fIhost\fR is not specified, the NIS server for the local host is used. That
-is, the default host is the one returned by \fBypwhich\fR(1).
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBypwhich\fR(1), \fBypfiles\fR(4), \fBattributes\fR(5)
diff --git a/usr/src/man/man1m/yppush.1m b/usr/src/man/man1m/yppush.1m
deleted file mode 100644
index a49bca9027..0000000000
--- a/usr/src/man/man1m/yppush.1m
+++ /dev/null
@@ -1,125 +0,0 @@
-'\" te
-.\" Copyright (c) 2000, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH YPPUSH 1M "Aug 26, 1999"
-.SH NAME
-yppush \- force propagation of changed NIS map
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/netsvc/yp/yppush\fR [\fB-v\fR] [\fB-h\fR \fIhost\fR] [\fB-d\fR \fIdomain\fR]
- [\fB-p\fR \fI#parallel-xfrs\fR] \fImapname\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fByppush\fR copies a new version of a Network Information Service (\fBNIS\fR)
-map from the master \fBNIS\fR server to the slave \fBNIS\fR servers. It is
-normally run only on the master \fBNIS\fR server by the \fBMakefile\fR in
-\fB/var/yp\fR after the master databases are changed. It first constructs a
-list of \fBNIS\fR server hosts by reading the \fBNIS\fR \fBypservers\fR map
-within the \fIdomain\fR. Keys within the \fBypservers\fR map are the
-\fBASCII\fR names of the machines on which the \fBNIS\fR servers run.
-.sp
-.LP
-A "transfer map" request is sent to the \fBNIS\fR server at each host, along
-with the information needed by the transfer agent (the program that actually
-moves the map) to call back the \fByppush\fR. When the attempt has completed
-(successfully or not), and the transfer agent has sent \fByppush\fR a status
-message, the results can be printed to \fBstdout\fR. Messages are also printed
-when a transfer is not possible, for instance, when the request message is
-undeliverable, or when the timeout period on responses has expired.
-.sp
-.LP
-Refer to \fBypfiles\fR(4) and \fBypserv\fR(1M) for an overview of the \fBNIS\fR
-service.
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-d\fR \fIdomain\fR\fR
-.ad
-.RS 21n
-Specifies a \fIdomain\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-h\fR \fIhost\fR\fR
-.ad
-.RS 21n
-Propagates only to the named \fIhost\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR \fI#parallel-xfrs\fR\fR
-.ad
-.RS 21n
-Allows the specified number of map transfers to occur in parallel.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.RS 21n
-Verbose. This prints messages when each server is called, and for each
-response. If this flag is omitted, only error messages are printed.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/var/yp\fR\fR
-.ad
-.sp .6
-.RS 4n
-Directory where \fBNIS\fR configuration files reside.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/yp/\fIdomain\fR/ypservers.\|{\fIdir\fR,\fI pag\|\fR}\fR\fR
-.ad
-.sp .6
-.RS 4n
-Map containing list of \fBNIS\fR servers to bind to when running in server
-mode.
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBypserv\fR(1M), \fBypxfr\fR(1M), \fBypfiles\fR(4), \fBattributes\fR(5)
-.SH NOTES
-.sp
-.LP
-The Network Information Service (\fBNIS\fR) was formerly known as Sun Yellow
-Pages (\fBYP\fR). The functionality of the two remains the same; only the name
-has changed. The name Yellow Pages is a registered trademark in the United
-Kingdom of British Telecommunications PLC, and must not be used without
-permission.
-.SH BUGS
-.sp
-.LP
-In the current implementation (version 2 \fBNIS\fR protocol), the transfer
-agent is \fBypxfr\fR(1M), which is started by the \fBypserv\fR program. If
-\fByppush\fR detects that it is speaking to a version 1 \fBNIS\fR protocol
-server, it uses the older protocol, sending a version 1 \fBYPPROC_GET\fR
-request and issues a message to that effect. Unfortunately, there is no way of
-knowing if or when the map transfer is performed for version 1 servers.
-\fByppush\fR prints a message saying that an "old-style" message has been sent.
-The system administrator should later check to see that the transfer has
-actually taken place.
diff --git a/usr/src/man/man1m/ypserv.1m b/usr/src/man/man1m/ypserv.1m
deleted file mode 100644
index 2035e7fe58..0000000000
--- a/usr/src/man/man1m/ypserv.1m
+++ /dev/null
@@ -1,340 +0,0 @@
-'\" te
-.\" Copyright (C) 2004, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH YPSERV 1M "Dec 15, 2004"
-.SH NAME
-ypserv, ypxfrd \- NIS server and binder processes
-.SH SYNOPSIS
-.nf
-\fB/usr/lib/netsvc/yp/ypserv\fR [\fB-dv\fR] [\fB-i\fR | \fB-I\fR] [\fB-r\fR | \fB-R\fR]
-.fi
-
-.LP
-.nf
-\fB/usr/lib/netsvc/yp/ypxfrd\fR
-.fi
-
-.SH DESCRIPTION
-The Network Information Service (\fBNIS\fR) provides a simple network lookup
-service consisting of databases and processes. The databases are \fBndbm\fR
-files in a directory tree rooted at \fB/var/yp\fR. See \fBndbm\fR(3C). These
-files are described in \fBypfiles\fR(4). The processes are
-\fB/usr/lib/netsvc/yp/ypserv\fR, the \fBNIS\fR database lookup server, and
-\fB/usr/lib/netsvc/yp/ypbind\fR, the \fBNIS\fR binder. The programmatic
-interface to the \fBNIS\fR service is described in \fBypclnt\fR(3NSL).
-Administrative tools are described in \fByppoll\fR(1M), \fByppush\fR(1M),
-\fBypset\fR(1M), \fBypxfr\fR(1M), and \fBypwhich\fR(1). Tools to see the
-contents of \fBNIS\fR maps are described in \fBypcat\fR(1), and
-\fBypmatch\fR(1). Database generation and maintenance tools are described in
-\fBypinit\fR(1M), \fBypmake\fR(1M), and \fBmakedbm\fR(1M).
-.sp
-.LP
-The \fBypserv\fR utility is a daemon process typically activated at system
-startup from \fBsvc:/network/nis/server:default\fR. Alternatively, you can, as
-the root user, start \fBNIS\fR services using \fBypstart\fR(1M) from the
-command-line. \fBypserv\fR runs only on \fBNIS\fR server machines with a
-complete \fBNIS\fR database. You can halt all \fBNIS\fR services using the
-\fBypstop\fR(1M) command.
-.sp
-.LP
-The \fBypxfrd\fR utility transfers entire \fBNIS\fR maps in an efficient
-manner. For systems that use this daemon, map transfers are 10 to 100 times
-faster, depending on the map. To use this daemon, be sure \fBypxfrd\fR is
-running on the master server. See \fB/usr/lib/netsvc/yp/ypstart\fR. \fBypxfr\fR
-attempts to use \fBypxfrd\fR first. If that fails, it prints a warning, then
-uses the older transfer method.
-.sp
-.LP
-The \fBypserv\fR daemon's primary function is to look up information in its
-local database of \fBNIS\fR maps.
-.sp
-.LP
-The operations performed by \fBypserv\fR are defined for the implementor by the
-\fIYP Protocol Specification\fR, and for the programmer by the header file
-<\fBrpcsvc/yp_prot.h\fR>.
-.sp
-.LP
-Communication to and from \fBypserv\fR is by means of \fBRPC\fR calls. Lookup
-functions are described in \fBypclnt\fR(3NSL), and are supplied as C-callable
-functions in the \fBlibnsl\fR(3LIB) library. There are four lookup functions,
-all of which are performed on a specified map within some \fBNIS\fR domain:
-\fByp_match\fR(3NSL), \fByp_first\fR(3NSL), \fByp_next\fR(3NSL), and
-\fByp_all\fR(3NSL). The \fByp_match\fR operation takes a key, and returns the
-associated value. The \fByp_first\fR operation returns the first key-value pair
-from the map, and \fByp_next\fR can be used to enumerate the remainder.
-\fByp_all\fR ships the entire map to the requester as the response to a single
-\fBRPC\fR request.
-.sp
-.LP
-A number of special keys in the \fBDBM\fR files can alter the way in which
-\fBypserv\fR operates. The keys of interest are:
-.sp
-.ne 2
-.na
-\fB\fBYP_INTERDOMAIN\fR\fR
-.ad
-.RS 21n
-The presence of this key causes \fBypserv\fR to forward to a \fBDNS\fR server
-host lookups that cannot be satisfied by the \fBDBM\fR files.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBYP_SECURE\fR\fR
-.ad
-.RS 21n
-This key causes \fBypserv\fR to answer only questions coming from clients on
-reserved ports.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBYP_MULTI_\fR\fIhostname\fR\fR
-.ad
-.RS 21n
-This is a special key in the form, \fBYP_MULTI_\fR\fIhostname
-addr1,...,addrN.\fR A client looking for \fIhostname\fR receives the closest
-address.
-.RE
-
-.sp
-.LP
-Two other functions supply information about the map, rather than map entries:
-\fByp_order\fR(3NSL), and \fByp_master\fR(3NSL). In fact, both order number and
-master name exist in the map as key-value pairs, but the server will not return
-either through the normal lookup functions. If you examine the map with
-\fBmakedbm\fR(1M), however, they are visible. Other functions are used within
-the \fBNIS\fR service subsystem itself, and are not of general interest to
-\fBNIS\fR clients. These functions include \fBdo_you_serve_this_domain?\fR,
-\fBtransfer_map\fR, and \fBreinitialize_internal_state\fR.
-.sp
-.LP
-On start up, \fBypserv\fR checks for the existence of the NIS to LDAP (N2L)
-configuration file \fB/var/yp/NISLDAPmapping\fR. If it is present then a master
-server starts in N2L mode. If the file is not present it starts in
-"traditional" (non N2L) mode. Slave servers always start in traditional mode.
-.sp
-.LP
-In N2L mode, a new set of map files, with an \fBLDAP_\fR prefix, are generated,
-based on the contents of the LDAP DIT. The old map files, NIS source files and
-\fBypmake\fR(1M) are not used.
-.sp
-.LP
-It is possible that \fBypmake\fR(1M) can be accidentally run in N2L mode. If
-the occurs, the old style map files are overwritten. That the map files are
-overwritten is harmless. However, any resulting \fByppush\fR(1M) operation will
-push information based on the DIT rather than the source files. The user may
-not expect information based on the DIT. \fBypserv\fR keeps track of the last
-modification date of the old style map files. If the map files have been
-updated, a warning is logged that suggests that the user call \fByppush\fR
-directly instead of \fBypmake\fR.
-.sp
-.LP
-If a server attempts to run in N2L mode and a LDAP server cannot be contacted,
-it behaves as follows:
-.RS +4
-.TP
-1.
-When \fBypserv\fR is started, a warning will be logged.
-.RE
-.RS +4
-.TP
-2.
-When a NIS read access is made and the TTL entry has expired, a warning is
-logged.Information that is returned from the cache has not been updated.
-.RE
-.RS +4
-.TP
-3.
-When a NIS write access is made, a warning is logged. The cache will not be
-updated, and a NIS failure will be returned.
-.RE
-.sp
-.LP
-If \fBypxfrd\fR is running in N2L mode and is asked to transfer a map,
-\fBypxfrd\fR first checks whether the map is out of date. If the map is out of
-date, \fBypxfrd\fR initiates an update from the DIT. \fBypxfrd\fR cannot wait
-for the update to complete. If \fBypxfrd\fR waited, the client end \fBypxfr\fR
-operation could time out. To prevent \fBypxfrd\fR from timing out, the existing
-map is transferred from the cache. The most up to date map will be transferred
-on subsequent \fBypxfrd\fR operations.
-.SH OPTIONS
-.SS "ypserv"
-.ne 2
-.na
-\fB\fB-d\fR\fR
-.ad
-.RS 7n
-The \fBNIS\fR service should go to the \fBDNS\fR for more host information.
-This requires the existence of a correct \fB/etc/resolv.conf\fR file pointing
-to a \fBDNS\fR server. This option turns on \fBDNS\fR forwarding regardless of
-whether or not the \fBYP_INTERDOMAIN\fR flag is set in the \fBhosts\fR maps.
-See \fBmakedbm\fR(1M). In the absence of an \fB/etc/resolv.conf\fR file,
-\fBypserv\fR complains, but ignores the \fB-d\fR option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-i\fR\fR
-.ad
-.RS 7n
-If in N2L mode, initialize the NIS related parts of the \fBDIT\fR based on the
-current, non \fBLDAP_\fR prefixed, map files. The \fBLDAP_\fR prefixed maps are
-not created or updated. If you require that \fBLDAP_\fR prefixed maps be
-updated or created, then use the \fB-ir\fR option.
-.sp
-The \fB-i\fR option does not attempt to create any NIS domain or container
-objects. If any NIS domain or container objects have not already been created,
-then errors will occur, as entries are written to nonexistent containers.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-I\fR\fR
-.ad
-.RS 7n
-Identical to \fB-i\fR, except that any missing domain and container objects are
-created.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-r\fR\fR
-.ad
-.RS 7n
-If in N2L mode, then refresh the \fBLDAP_\fR prefixed map files based on the
-contents of the \fBDIT\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-ir\fR\fR
-.ad
-.RS 7n
-If both \fB-i\fR and \fB-r\fR are specified in N2L mode, then the \fBDIT\fR
-will first be initialized from the current non \fBLDAP_\fR prefixed map files.
-A new set of \fBLDAP_\fR prefixed maps will then be generated from the contents
-of the \fBDIT\fR. A new set of \fBLDAP_\fR prefixed maps is required when
-moving from traditional NIS to N2L mode NIS.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-Ir\fR\fR
-.ad
-.RS 7n
-Identical to \fB-ir\fR, except that any missing domain and container objects
-are created.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.RS 7n
-Operate in the verbose mode, printing diagnostic messages to stderr.
-.RE
-
-.sp
-.LP
-When run with the \fB-i\fR, \fB-r\fR, \fB-I\fR, \fB-ir\fR or \fB-Ir\fR options,
-the \fBypserv\fR command runs in the foreground and exits once map
-initialization has been completed. Once the \fBypserv\fR command exits, the
-user knows the maps are ready and can restart \fBypserv\fR and the other
-\fByp\fR daemons by running \fBypstart\fR(1M).
-.sp
-.LP
-If there is a requirement to initialize the \fBDIT\fR from the NIS source
-files, which may have been modified since the maps were last remade, run
-\fBypmake\fR before running \fBypserv\fR \fB-i\fR or \fBypserv\fR \fB-ir\fR.
-\fBypmake\fR regenerated old style NIS maps. Then \fBypserv\fR \fB-ir\fR dumps
-them into the \fBDIT\fR. When the \fB-ir\fR option is used, the \fBLDAP_\fR
-prefixe maps are also generated or updated. Since these maps will be more
-recent than the old style maps, \fBypmake\fR will not be reported as erroneous
-when it is run.
-.SH FILES
-.ne 2
-.na
-\fB\fB/var/yp/securenets\fR\fR
-.ad
-.sp .6
-.RS 4n
-Defines the hosts and networks that are granted access to information in the
-served domain. It is read at startup time by both \fBypserv\fR and
-\fBypxfrd\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/yp/ypserv.log\fR\fR
-.ad
-.sp .6
-.RS 4n
-If the \fB/var/yp/ypserv.log\fR file exists when \fBypserv\fR starts up, log
-information is written to it when error conditions arise.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/yp/binding/domainname/ypservers\fR\fR
-.ad
-.sp .6
-.RS 4n
-Lists the \fBNIS\fR server hosts that \fBypbind\fR can bind to.
-.RE
-
-.SH SEE ALSO
-\fBsvcs\fR(1), \fBypcat\fR(1), \fBypmatch\fR(1), \fBypwhich\fR(1),
-\fBdomainname\fR(1M), \fBmakedbm\fR(1M), \fBsvcadm\fR(1M), \fBypbind\fR(1M),
-\fBypinit\fR(1M), \fBypmake\fR(1M), \fByppoll\fR(1M), \fByppush\fR(1M),
-\fBypset\fR(1M), \fBypstart\fR(1M), \fBypstop\fR(1M), \fBypxfr\fR(1M),
-\fBndbm\fR(3C), \fBypclnt\fR(3NSL), \fBlibnsl\fR(3LIB),
-\fBNISLDAPmapping\fR(4), \fBsecurenets\fR(4), \fBypfiles\fR(4),
-\fBypserv\fR(4), \fBattributes\fR(5), \fBsmf\fR(5)
-
-.SH NOTES
-\fBypserv\fR supports multiple domains. The \fBypserv\fR process determines the
-domains it serves by looking for directories of the same name in the directory
-\fB/var/yp\fR. It replies to all broadcasts requesting yp service for that
-domain.
-.sp
-.LP
-The Network Information Service (\fBNIS\fR) was formerly known as Sun Yellow
-Pages (\fBYP\fR). The functionality of the two remains the same; only the name
-has changed. The name Yellow Pages is a registered trademark in the United
-Kingdom of British Telecommunications PLC, and must not be used without
-permission.
-.sp
-.LP
-\fBNIS\fR uses \fBndbm()\fR files to store maps. Therefore, it is subject to
-the 1024 byte limitations described in the USAGE and NOTES sections of the
-\fBndbm\fR(3C) man page.
-.sp
-.LP
-The NIS server service is managed by the service management facility,
-\fBsmf\fR(5), under the service identifier:
-.sp
-.in +2
-.nf
-svc:/network/nis/server:default
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Administrative actions on this service, such as enabling, disabling, or
-requesting restart, can be performed using \fBsvcadm\fR(1M). The service's
-status can be queried using the \fBsvcs\fR(1) command.
diff --git a/usr/src/man/man1m/ypset.1m b/usr/src/man/man1m/ypset.1m
deleted file mode 100644
index 857aadfa6f..0000000000
--- a/usr/src/man/man1m/ypset.1m
+++ /dev/null
@@ -1,92 +0,0 @@
-'\" te
-.\" Copyright (c) 2000 Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH YPSET 1M "Sep 14, 1992"
-.SH NAME
-ypset \- point ypbind at a particular server
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/sbin/ypset\fR [\fB-d\fR \fIypdomain\fR] [\fB-h\fR \fIhost\fR] \fIserver\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-In order to run \fBypset\fR, \fBypbind\fR must be initiated with the
-\fB\(miypset\fR or \fB\(miypsetme\fR options. See \fBypbind\fR(1M). \fBypset\fR
-tells \fBypbind\fR to get NIS services for the specified \fIypdomain\fR from
-the \fBypserv\fR process running on \fIserver\fR. If \fIserver\fR is down, or
-is not running \fBypserv\fR, this might not be discovered until an NIS client
-process tries to obtain a binding for the domain. At this point, the binding
-set by \fBypset\fR is tested by \fBypbind\fR. If the binding is invalid,
-\fBypbind\fR attempts to rebind for the same domain.
-.sp
-.LP
-\fBypset\fR is useful for binding a client node that is not on a broadcast net,
-or is on a broadcast net that is not running an NIS server host. It is also
-useful for debugging NIS client applications, for instance, where an NIS map
-exists only at a single NIS server host.
-.sp
-.LP
-Where several hosts on the local net are supplying NIS services, \fBypbind\fR
-can rebind to another host, even while you attempt to find out if the
-\fBypset\fR operation succeeded. For example, if you enter the \fBypset\fR
-command below, you might get the subsequent response from \fBypwhich\fR:
-.sp
-.in +2
-.nf
-example% ypset host1
-example% ypwhich
-host2
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The sequence shown above is a function of the NIS subsystem's attempt to
-load-balance among the available NIS servers, and occurs when \fBhost1\fR does
-not respond to \fBypbind\fR because it is not running \fBypserv\fR (or is
-overloaded), and \fBhost2\fR, running \fBypserv\fR, obtains the binding.
-.sp
-.LP
-\fIserver\fR indicates which NIS server to bind to, and must be specified as a
-name or an IP address. This works only if the node has a current valid binding
-for the domain in question and \fBypbind\fR has been set to allow use of
-\fBypset\fR. In most cases, \fIserver\fR should be specified as an IP address.
-.sp
-.LP
-\fBypset\fR tries to bind over a connectionless transport. The NIS library
-call, \fByp_all()\fR, uses connection-oriented transport and derives the NIS
-server's address based on the connectionless address supplied by \fBypset\fR.
-.sp
-.LP
-Refer to \fBypfiles\fR(4) for an overview of the NIS name service.
-.SH OPTIONS
-.sp
-.ne 2
-.na
-\fB\fB-d\fR\fI ypdomain\fR\fR
-.ad
-.RS 15n
-Use \fIypdomain\fR, instead of the default domain.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-h\fR\fI host\fR\fR
-.ad
-.RS 15n
-Set \fBypbind\fR's binding on \fIhost\fR, instead of locally. Specify
-\fIhost\fR as a name.
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBypwhich\fR(1), \fBypfiles\fR(4), \fBattributes\fR(5)
diff --git a/usr/src/man/man1m/ypstart.1m b/usr/src/man/man1m/ypstart.1m
deleted file mode 100644
index 839bf100ce..0000000000
--- a/usr/src/man/man1m/ypstart.1m
+++ /dev/null
@@ -1,46 +0,0 @@
-'\" te
-.\" Copyright (c) 2000, Sun Microsystems, Inc.
-.\" All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH YPSTART 1M "Oct 24, 1996"
-.SH NAME
-ypstart, ypstop \- Start and stop NIS services
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/netsvc/yp/ypstart\fR
-.fi
-
-.LP
-.nf
-\fB/usr/lib/netsvc/yp/ypstop\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBypstart\fR command is used to start the Network Information Service
-(NIS). After the host has been configured using the \fBypinit\fR(1M) command,
-\fBypstart\fR automatically determines the \fBNIS\fR status of the machine and
-starts the appropriate daemons.
-.sp
-.LP
-The \fBypstop\fR command is used to stop the Network Information Service
-(NIS).
-.SH SEE ALSO
-.sp
-.LP
-\fBypinit\fR(1M), \fBattributes\fR(5)
-.sp
-.LP
-\fI\fR
-.SH NOTES
-.sp
-.LP
-The Network Information Service (\fBNIS\fR) was formerly known as Sun Yellow
-Pages (\fBYP\fR). The functionality of the two services remains the same; only
-the name has changed. The name Yellow Pages is a registered trademark in the
-United Kingdom of British Telecommunications \fBPLC\fR, and must not be used
-without permission.
diff --git a/usr/src/man/man1m/ypxfr.1m b/usr/src/man/man1m/ypxfr.1m
deleted file mode 100644
index 42e41ac6a7..0000000000
--- a/usr/src/man/man1m/ypxfr.1m
+++ /dev/null
@@ -1,184 +0,0 @@
-'\" te
-.\" Copyright (c) 2000 Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH YPXFR 1M "Mar 11, 1998"
-.SH NAME
-ypxfr, ypxfr_1perday, ypxfr_1perhour, ypxfr_2perday \- transfer NIS map from a
-NIS server to host
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/netsvc/yp/ypxfr\fR [\fB-c\fR] [\fB-f\fR] [\fB-C\fR \fItid\fR \fIprog\fR \fIserver\fR]
- [\fB-d\fR \fIypdomain\fR] [\fB-h\fR \fIhost\fR] [\fB-s\fR \fIypdomain\fR] \fImapname\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBypxfr\fR command moves an \fBNIS\fR map in the default domain for the
-local host to the local host by making use of normal \fBNIS\fR services. It
-creates a temporary map in the directory \fB/var/yp/\fR\fIypdomain\fR (this
-directory must already exist; \fIypdomain\fR is the default domain for the
-local host), fills it by enumerating the map's entries, fetches the map
-parameters (master and order number), and loads them. It then deletes any old
-versions of the map and moves the temporary map to the real \fIname\fR.
-.sp
-.LP
-If run interactively, \fBypxfr\fR writes its output to the terminal. However,
-if it is started without a controlling terminal, and if the log file
-\fB/var/yp/ypxfr.log\fR exists, it appends all its output to that file. Since
-\fBypxfr\fR is most often run from the privileged user's \fBcrontab\fR file, or
-by \fBypserv\fR, the log file can retain a record of what was attempted, and
-what the results were.
-.sp
-.LP
-For consistency between servers, \fBypxfr\fR should be run periodically for
-every map in the \fBNIS\fR data base. Different maps change at different rates:
-a map might not change for months at a time, for instance, and can therefore be
-checked only once a day. Some maps might change several times per day. In such
-a case, you might want to check hourly for updates. A \fBcrontab\fR(1) entry
-can be used to automatically perform periodic updates. Rather than having a
-separate \fBcrontab\fR entry for each map, you can group commands to update
-several maps in a shell script. Examples (mnemonically named) are in
-\fB/usr/sbin/yp\fR: \fBypxfr_1perday\fR, \fBypxfr_2perday\fR, and
-\fBypxfr_1perhour\fR.
-.sp
-.LP
-Refer to \fBypfiles\fR(4) for an overview of the NIS name service.
-.SH OPTIONS
-.sp
-.ne 2
-.na
-\fB\fB-c\fR\fR
-.ad
-.RS 22n
-Do not send a "Clear current map" request to the local \fBypserv\fR process.
-Use this flag if \fBypserv\fR is not running locally at the time you are
-running \fBypxfr\fR. Otherwise, \fBypxfr\fR complains that it cannot
-communicate with the local \fBypserv\fR, and the transfer fails.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR\fR
-.ad
-.RS 22n
-Force the transfer to occur even if the version at the master is not more
-recent than the local version.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-C\fR\fI tid prog server\fR\fR
-.ad
-.RS 22n
-This option is for use \fIonly\fR by \fBypserv\fR. When \fBypserv\fR starts
-\fBypxfr\fR, it specifies that \fBypxfr\fR should call back a \fByppush\fR
-process at the host \fIserver\fR, registered as program number \fIprog\fR, and
-waiting for a response to transaction \fItid\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-d\fR\fI ypdomain\fR\fR
-.ad
-.RS 22n
-Specify a domain other than the default domain.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-h\fR \fIhost\fR\fR
-.ad
-.RS 22n
-Get the map from \fIhost\fR, regardless of the master. If \fIhost\fR is not
-specified, \fBypxfr\fR asks the \fBNIS\fR service for the name of the master,
-and tries to get the map from there. \fIhost\fR must be a valid host name.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR\fI ypdomain\fR\fR
-.ad
-.RS 22n
-Specify a source domain from which to transfer a map that should be the same
-across domains.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/var/yp/ypxfr.log\fR\fR
-.ad
-.sp .6
-.RS 4n
-Log file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/netsvc/yp/ypxfr_1perday\fR\fR
-.ad
-.sp .6
-.RS 4n
-Script to run one transfer per day, for use with \fBcron\fR(1M)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/netsvc/yp/ypxfr_2perday\fR\fR
-.ad
-.sp .6
-.RS 4n
-Script to run two transfer per day, for use with \fBcron\fR(1M)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/netsvc/yp/ypxfr_1perhour\fR\fR
-.ad
-.sp .6
-.RS 4n
-Script for hourly transfers of volatile maps
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/yp/\fR\fIypdomain\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBNIS\fR domain
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/spool/cron/crontabs/root\fR\fR
-.ad
-.sp .6
-.RS 4n
-Privileged user's \fBcrontab\fR file
-.RE
-
-.SS "ypxfr_1perday, ypxfr_1perhour, and ypxfr_2perday"
-.sp
-
-.SH SEE ALSO
-.sp
-.LP
-\fBcrontab\fR(1), \fBcron\fR(1M), \fBypinit\fR(1M), \fByppush\fR(1M),
-\fBypserv\fR(1M), \fBypfiles\fR(4), \fBattributes\fR(5)
diff --git a/usr/src/man/man1m/zdb.1m b/usr/src/man/man1m/zdb.1m
deleted file mode 100644
index 3ebaf049cb..0000000000
--- a/usr/src/man/man1m/zdb.1m
+++ /dev/null
@@ -1,425 +0,0 @@
-.\"
-.\" This file and its contents are supplied under the terms of the
-.\" Common Development and Distribution License ("CDDL"), version 1.0.
-.\" You may only use this file in accordance with the terms of version
-.\" 1.0 of the CDDL.
-.\"
-.\" A full copy of the text of the CDDL should have accompanied this
-.\" source. A copy of the CDDL is also available via the Internet at
-.\" http://www.illumos.org/license/CDDL.
-.\"
-.\"
-.\" Copyright 2012, Richard Lowe.
-.\" Copyright (c) 2012, 2018 by Delphix. All rights reserved.
-.\" Copyright 2017 Nexenta Systems, Inc.
-.\"
-.Dd April 14, 2017
-.Dt ZDB 1M
-.Os
-.Sh NAME
-.Nm zdb
-.Nd display zpool debugging and consistency information
-.Sh SYNOPSIS
-.Nm
-.Op Fl AbcdDFGhikLMPsvX
-.Op Fl e Oo Fl V Oc Op Fl p Ar path ...
-.Op Fl I Ar inflight I/Os
-.Oo Fl o Ar var Ns = Ns Ar value Oc Ns ...
-.Op Fl t Ar txg
-.Op Fl U Ar cache
-.Op Fl x Ar dumpdir
-.Op Ar poolname Op Ar object ...
-.Nm
-.Op Fl AdiPv
-.Op Fl e Oo Fl V Oc Op Fl p Ar path ...
-.Op Fl U Ar cache
-.Ar dataset Op Ar object ...
-.Nm
-.Fl C
-.Op Fl A
-.Op Fl U Ar cache
-.Nm
-.Fl E
-.Op Fl A
-.Ar word0 Ns \&: Ns Ar word1 Ns :...: Ns Ar word15
-.Nm
-.Fl l
-.Op Fl Aqu
-.Ar device
-.Nm
-.Fl m
-.Op Fl AFLPX
-.Op Fl e Oo Fl V Oc Op Fl p Ar path ...
-.Op Fl t Ar txg
-.Op Fl U Ar cache
-.Ar poolname Op Ar vdev Op Ar metaslab ...
-.Nm
-.Fl O
-.Ar dataset path
-.Nm
-.Fl R
-.Op Fl A
-.Op Fl e Oo Fl V Oc Op Fl p Ar path ...
-.Op Fl U Ar cache
-.Ar poolname vdev Ns \&: Ns Ar offset Ns \&: Ns Ar size Ns Op : Ns Ar flags
-.Nm
-.Fl S
-.Op Fl AP
-.Op Fl e Oo Fl V Oc Op Fl p Ar path ...
-.Op Fl U Ar cache
-.Ar poolname
-.Sh DESCRIPTION
-The
-.Nm
-utility displays information about a ZFS pool useful for debugging and performs
-some amount of consistency checking.
-It is a not a general purpose tool and options
-.Pq and facilities
-may change.
-This is neither a
-.Xr fsck 1M
-nor an
-.Xr fsdb 1M
-utility.
-.Pp
-The output of this command in general reflects the on-disk structure of a ZFS
-pool, and is inherently unstable.
-The precise output of most invocations is not documented, a knowledge of ZFS
-internals is assumed.
-.Pp
-If the
-.Ar dataset
-argument does not contain any
-.Qq Sy /
-or
-.Qq Sy @
-characters, it is interpreted as a pool name.
-The root dataset can be specified as
-.Ar pool Ns /
-.Pq pool name followed by a slash .
-.Pp
-When operating on an imported and active pool it is possible, though unlikely,
-that zdb may interpret inconsistent pool data and behave erratically.
-.Sh OPTIONS
-Display options:
-.Bl -tag -width Ds
-.It Fl b
-Display statistics regarding the number, size
-.Pq logical, physical and allocated
-and deduplication of blocks.
-.It Fl c
-Verify the checksum of all metadata blocks while printing block statistics
-.Po see
-.Fl b
-.Pc .
-.Pp
-If specified multiple times, verify the checksums of all blocks.
-.It Fl C
-Display information about the configuration.
-If specified with no other options, instead display information about the cache
-file
-.Pq Pa /etc/zfs/zpool.cache .
-To specify the cache file to display, see
-.Fl U .
-.Pp
-If specified multiple times, and a pool name is also specified display both the
-cached configuration and the on-disk configuration.
-If specified multiple times with
-.Fl e
-also display the configuration that would be used were the pool to be imported.
-.It Fl d
-Display information about datasets.
-Specified once, displays basic dataset information: ID, create transaction,
-size, and object count.
-.Pp
-If specified multiple times provides greater and greater verbosity.
-.Pp
-If object IDs are specified, display information about those specific objects
-only.
-.It Fl D
-Display deduplication statistics, including the deduplication ratio
-.Pq Sy dedup ,
-compression ratio
-.Pq Sy compress ,
-inflation due to the zfs copies property
-.Pq Sy copies ,
-and an overall effective ratio
-.Pq Sy dedup No * Sy compress No / Sy copies .
-.It Fl DD
-Display a histogram of deduplication statistics, showing the allocated
-.Pq physically present on disk
-and referenced
-.Pq logically referenced in the pool
-block counts and sizes by reference count.
-.It Fl DDD
-Display the statistics independently for each deduplication table.
-.It Fl DDDD
-Dump the contents of the deduplication tables describing duplicate blocks.
-.It Fl DDDDD
-Also dump the contents of the deduplication tables describing unique blocks.
-.It Fl E Ar word0 Ns \&: Ns Ar word1 Ns :...: Ns Ar word15
-Decode and display block from an embedded block pointer specified by the
-.Ar word
-arguments.
-.It Fl h
-Display pool history similar to
-.Nm zpool Cm history ,
-but include internal changes, transaction, and dataset information.
-.It Fl i
-Display information about intent log
-.Pq ZIL
-entries relating to each dataset.
-If specified multiple times, display counts of each intent log transaction type.
-.It Fl k
-Examine the checkpointed state of the pool.
-Note, the on disk format of the pool is not reverted to the checkpointed state.
-.It Fl l Ar device
-Read the vdev labels and L2ARC header from the specified device.
-.Nm Fl l
-will return 0 if valid label was found, 1 if error occurred, and 2 if no valid
-labels were found.
-The presence of L2ARC header is indicated by a specific
-sequence (L2ARC_DEV_HDR_MAGIC).
-If there is an accounting error in the size or the number of L2ARC log blocks
-.Nm Fl l
-will return 1.
-Each unique configuration is displayed only once.
-.It Fl ll Ar device
-In addition display label space usage stats.
-If a valid L2ARC header was found also display the properties of log blocks
-used for restoring L2ARC contents (persistent L2ARC).
-.It Fl lll Ar device
-Display every configuration, unique or not.
-If a valid L2ARC header was found also display the properties of log entries in
-log blocks used for restoring L2ARC contents (persistent L2ARC).
-.Pp
-If the
-.Fl q
-option is also specified, don't print the labels or the L2ARC header.
-.Pp
-If the
-.Fl u
-option is also specified, also display the uberblocks on this device.
-Specify multiple times to increase verbosity.
-.It Fl L
-Disable leak detection and the loading of space maps.
-By default,
-.Nm
-verifies that all non-free blocks are referenced, which can be very expensive.
-.It Fl m
-Display the offset, spacemap, free space of each metaslab, all the log
-spacemaps and their obsolete entry statistics.
-.It Fl mm
-Also display information about the on-disk free space histogram associated with
-each metaslab.
-.It Fl mmm
-Display the maximum contiguous free space, the in-core free space histogram, and
-the percentage of free space in each space map.
-.It Fl mmmm
-Display every spacemap record.
-.It Fl M
-Display the offset, spacemap, and free space of each metaslab.
-.It Fl MM
-Also display information about the maximum contiguous free space and the
-percentage of free space in each space map.
-.It Fl MMM
-Display every spacemap record.
-.It Fl O Ar dataset path
-Look up the specified
-.Ar path
-inside of the
-.Ar dataset
-and display its metadata and indirect blocks.
-Specified
-.Ar path
-must be relative to the root of
-.Ar dataset .
-This option can be combined with
-.Fl v
-for increasing verbosity.
-.It Xo
-.Fl R Ar poolname vdev Ns \&: Ns Ar offset Ns \&: Ns Ar size Ns Op : Ns Ar flags
-.Xc
-Read and display a block from the specified device.
-By default the block is displayed as a hex dump, but see the description of the
-.Sy r
-flag, below.
-.Pp
-The block is specified in terms of a colon-separated tuple
-.Ar vdev
-.Pq an integer vdev identifier
-.Ar offset
-.Pq the offset within the vdev
-.Ar size
-.Pq the size of the block to read
-and, optionally,
-.Ar flags
-.Pq a set of flags, described below .
-.Pp
-.Bl -tag -compact -width "b offset"
-.It Sy b Ar offset
-Print block pointer
-.It Sy d
-Decompress the block
-.It Sy e
-Byte swap the block
-.It Sy g
-Dump gang block header
-.It Sy i
-Dump indirect block
-.It Sy r
-Dump raw uninterpreted block data
-.El
-.It Fl s
-Report statistics on
-.Nm zdb
-I/O.
-Display operation counts, bandwidth, and error counts of I/O to the pool from
-.Nm .
-.It Fl S
-Simulate the effects of deduplication, constructing a DDT and then display
-that DDT as with
-.Fl DD .
-.It Fl u
-Display the current uberblock.
-.El
-.Pp
-Other options:
-.Bl -tag -width Ds
-.It Fl A
-Do not abort should any assertion fail.
-.It Fl AA
-Enable panic recovery, certain errors which would otherwise be fatal are
-demoted to warnings.
-.It Fl AAA
-Do not abort if asserts fail and also enable panic recovery.
-.It Fl e Op Fl p Ar path ...
-Operate on an exported pool, not present in
-.Pa /etc/zfs/zpool.cache .
-The
-.Fl p
-flag specifies the path under which devices are to be searched.
-.It Fl x Ar dumpdir
-All blocks accessed will be copied to files in the specified directory.
-The blocks will be placed in sparse files whose name is the same as
-that of the file or device read.
-.Nm
-can be then run on the generated files.
-Note that the
-.Fl bbc
-flags are sufficient to access
-.Pq and thus copy
-all metadata on the pool.
-.It Fl F
-Attempt to make an unreadable pool readable by trying progressively older
-transactions.
-.It Fl G
-Dump the contents of the zfs_dbgmsg buffer before exiting
-.Nm .
-zfs_dbgmsg is a buffer used by ZFS to dump advanced debug information.
-.It Fl I Ar inflight I/Os
-Limit the number of outstanding checksum I/Os to the specified value.
-The default value is 200.
-This option affects the performance of the
-.Fl c
-option.
-.It Fl o Ar var Ns = Ns Ar value ...
-Set the given global libzpool variable to the provided value.
-The value must be an unsigned 32-bit integer.
-Currently only little-endian systems are supported to avoid accidentally setting
-the high 32 bits of 64-bit variables.
-.It Fl P
-Print numbers in an unscaled form more amenable to parsing, eg. 1000000 rather
-than 1M.
-.It Fl t Ar transaction
-Specify the highest transaction to use when searching for uberblocks.
-See also the
-.Fl u
-and
-.Fl l
-options for a means to see the available uberblocks and their associated
-transaction numbers.
-.It Fl U Ar cachefile
-Use a cache file other than
-.Pa /etc/zfs/zpool.cache .
-.It Fl v
-Enable verbosity.
-Specify multiple times for increased verbosity.
-.It Fl V
-Attempt verbatim import.
-This mimics the behavior of the kernel when loading a pool from a cachefile.
-Only usable with
-.Fl e .
-.It Fl X
-Attempt
-.Qq extreme
-transaction rewind, that is attempt the same recovery as
-.Fl F
-but read transactions otherwise deemed too old.
-.El
-.Pp
-Specifying a display option more than once enables verbosity for only that
-option, with more occurrences enabling more verbosity.
-.Pp
-If no options are specified, all information about the named pool will be
-displayed at default verbosity.
-.Sh EXAMPLES
-.Bl -tag -width Ds
-.It Xo
-.Sy Example 1
-Display the configuration of imported pool
-.Pa rpool
-.Xc
-.Bd -literal
-# zdb -C rpool
-
-MOS Configuration:
- version: 28
- name: 'rpool'
- ...
-.Ed
-.It Xo
-.Sy Example 2
-Display basic dataset information about
-.Pa rpool
-.Xc
-.Bd -literal
-# zdb -d rpool
-Dataset mos [META], ID 0, cr_txg 4, 26.9M, 1051 objects
-Dataset rpool/swap [ZVOL], ID 59, cr_txg 356, 486M, 2 objects
- ...
-.Ed
-.It Xo
-.Sy Example 3
-Display basic information about object 0 in
-.Pa rpool/export/home
-.Xc
-.Bd -literal
-# zdb -d rpool/export/home 0
-Dataset rpool/export/home [ZPL], ID 137, cr_txg 1546, 32K, 8 objects
-
- Object lvl iblk dblk dsize lsize %full type
- 0 7 16K 16K 15.0K 16K 25.00 DMU dnode
-.Ed
-.It Xo
-.Sy Example 4
-Display the predicted effect of enabling deduplication on
-.Pa rpool
-.Xc
-.Bd -literal
-# zdb -S rpool
-Simulated DDT histogram:
-
-bucket allocated referenced
-______ ______________________________ ______________________________
-refcnt blocks LSIZE PSIZE DSIZE blocks LSIZE PSIZE DSIZE
------- ------ ----- ----- ----- ------ ----- ----- -----
- 1 694K 27.1G 15.0G 15.0G 694K 27.1G 15.0G 15.0G
- 2 35.0K 1.33G 699M 699M 74.7K 2.79G 1.45G 1.45G
- ...
-dedup = 1.11, compress = 1.80, copies = 1.00, dedup * compress / copies = 2.00
-.Ed
-.El
-.Sh SEE ALSO
-.Xr zfs 1M ,
-.Xr zpool 1M
diff --git a/usr/src/man/man1m/zdump.1m b/usr/src/man/man1m/zdump.1m
deleted file mode 100644
index d9d69b2bf6..0000000000
--- a/usr/src/man/man1m/zdump.1m
+++ /dev/null
@@ -1,120 +0,0 @@
-'\" te
-.\" Copyright (c) 2000 Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH ZDUMP 1M "Jan 3, 2006"
-.SH NAME
-zdump \- time zone dumper
-.SH SYNOPSIS
-.LP
-.nf
-\fBzdump\fR [\fB--\fR\fIversion\fR] [\fB-v\fR] [\fB-c\fR [\fIloyear\fR,]\fIhiyear\fR] [\fIzonename\fR]...
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBzdump\fR command prints the current time for each time zone
-(\fIzonename\fR) listed on the command line. Specify \fIzonename\fR as the name
-of the time zone database file relative to \fB/usr/share/lib/zoneinfo\fR.
-.sp
-.LP
-Specifying an invalid time zone (\fIzonename\fR) to \fBzdump\fR does not return
-an error, rather \fBzdump\fR uses \fBGMTO.\fR This is consistent with the
-behavior of the library calls; \fBzdump\fR reflects the same behavior of the
-time routines in \fBlibc\fR. See \fBctime\fR(3C) and \fBmktime\fR(3C).
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB--\fR\fIversion\fR\fR
-.ad
-.RS 22n
-Outputs version information and exits.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.RS 22n
-Displays the entire contents of the time zone database file for \fIzonename\fR.
-Prints the time at the lowest possible time value; the time one day after the
-lowest possible time value; the times both one second before and exactly at
-each time at which the rules for computing local time change; the time at the
-highest possible time value; and the time at one day less than the highest
-possible time value. See \fBmktime\fR(3C) and \fBctime\fR(3C) for information
-regarding time value (\fBtime_t\fR). Each line of output ends with
-\fBisdst=1\fR if the given time is Daylight Saving Time, or \fBisdst=0\fR
-otherwise.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-c\fR [\fIloyear\fR],\fIhiyear\fR\fR
-.ad
-.RS 22n
-Cuts off the verbose output near the start of the given year(s) . By default,
-the program cuts off verbose output near the start of the years -500 and 2500.
-.RE
-
-.SH EXIT STATUS
-.sp
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 5n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB1\fR\fR
-.ad
-.RS 5n
-An error occurred.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/usr/share/lib/zoneinfo\fR\fR
-.ad
-.RS 27n
-Standard zone information directory
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Stable
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBzic\fR(1M), \fBctime\fR(3C), \fBmktime\fR(3C), \fBattributes\fR(5),
-\fBenviron\fR(5)
diff --git a/usr/src/man/man1m/zfs-program.1m b/usr/src/man/man1m/zfs-program.1m
deleted file mode 100644
index 457b912034..0000000000
--- a/usr/src/man/man1m/zfs-program.1m
+++ /dev/null
@@ -1,602 +0,0 @@
-.\" This file and its contents are supplied under the terms of the
-.\" Common Development and Distribution License ("CDDL"), version 1.0.
-.\" You may only use this file in accordance with the terms of version
-.\" 1.0 of the CDDL.
-.\"
-.\" A full copy of the text of the CDDL should have accompanied this
-.\" source. A copy of the CDDL is also available via the Internet at
-.\" http://www.illumos.org/license/CDDL.
-.\"
-.\"
-.\" Copyright (c) 2016, 2017 by Delphix. All rights reserved.
-.\" Copyright (c) 2018 Datto Inc.
-.\" Copyright 2020 Joyent, Inc.
-.\" Copyright 2021 Jason King
-.\"
-.Dd November 8, 2021
-.Dt ZFS-PROGRAM 1M
-.Os
-.Sh NAME
-.Nm "zfs program"
-.Nd executes ZFS channel programs
-.Sh SYNOPSIS
-.Cm "zfs program"
-.Op Fl jn
-.Op Fl t Ar instruction-limit
-.Op Fl m Ar memory-limit
-.Ar pool
-.Ar script
-.\".Op Ar optional arguments to channel program
-.Sh DESCRIPTION
-The ZFS channel program interface allows ZFS administrative operations to be
-run programmatically as a Lua script.
-The entire script is executed atomically, with no other administrative
-operations taking effect concurrently.
-A library of ZFS calls is made available to channel program scripts.
-Channel programs may only be run with root privileges.
-.Pp
-A modified version of the Lua 5.2 interpreter is used to run channel program
-scripts.
-The Lua 5.2 manual can be found at:
-.Bd -centered -offset indent
-.Lk http://www.lua.org/manual/5.2/
-.Ed
-.Pp
-The channel program given by
-.Ar script
-will be run on
-.Ar pool ,
-and any attempts to access or modify other pools will cause an error.
-.Sh OPTIONS
-.Bl -tag -width "-t"
-.It Fl j
-Display channel program output in JSON format.
-When this flag is specified and standard output is empty -
-channel program encountered an error.
-The details of such an error will be printed to standard error in plain text.
-.It Fl n
-Executes a read-only channel program, which runs faster.
-The program cannot change on-disk state by calling functions from the
-zfs.sync submodule.
-The program can be used to gather information such as properties and
-determining if changes would succeed (zfs.check.*).
-Without this flag, all pending changes must be synced to disk before a
-channel program can complete.
-.It Fl t Ar instruction-limit
-Execution time limit, in number of Lua instructions to execute.
-If a channel program executes more than the specified number of instructions,
-it will be stopped and an error will be returned.
-The default limit is 10 million instructions, and it can be set to a maximum of
-100 million instructions.
-.It Fl m Ar memory-limit
-Memory limit, in bytes.
-If a channel program attempts to allocate more memory than the given limit, it
-will be stopped and an error returned.
-The default memory limit is 10 MB, and can be set to a maximum of 100 MB.
-.El
-.Pp
-All remaining argument strings will be passed directly to the Lua script as
-described in the
-.Sx LUA INTERFACE
-section below.
-.Sh LUA INTERFACE
-A channel program can be invoked either from the command line, or via a library
-call to
-.Fn lzc_channel_program .
-.Ss Arguments
-Arguments passed to the channel program are converted to a Lua table.
-If invoked from the command line, extra arguments to the Lua script will be
-accessible as an array stored in the argument table with the key 'argv':
-.Bd -literal -offset indent
-args = ...
-argv = args["argv"]
--- argv == {1="arg1", 2="arg2", ...}
-.Ed
-.Pp
-If invoked from the libZFS interface, an arbitrary argument list can be
-passed to the channel program, which is accessible via the same
-"..." syntax in Lua:
-.Bd -literal -offset indent
-args = ...
--- args == {"foo"="bar", "baz"={...}, ...}
-.Ed
-.Pp
-Note that because Lua arrays are 1-indexed, arrays passed to Lua from the
-libZFS interface will have their indices incremented by 1.
-That is, the element
-in
-.Va arr[0]
-in a C array passed to a channel program will be stored in
-.Va arr[1]
-when accessed from Lua.
-.Ss Return Values
-Lua return statements take the form:
-.Bd -literal -offset indent
-return ret0, ret1, ret2, ...
-.Ed
-.Pp
-Return statements returning multiple values are permitted internally in a
-channel program script, but attempting to return more than one value from the
-top level of the channel program is not permitted and will throw an error.
-However, tables containing multiple values can still be returned.
-If invoked from the command line, a return statement:
-.Bd -literal -offset indent
-a = {foo="bar", baz=2}
-return a
-.Ed
-.Pp
-Will be output formatted as:
-.Bd -literal -offset indent
-Channel program fully executed with return value:
- return:
- baz: 2
- foo: 'bar'
-.Ed
-.Ss Fatal Errors
-If the channel program encounters a fatal error while running, a non-zero exit
-status will be returned.
-If more information about the error is available, a singleton list will be
-returned detailing the error:
-.Bd -literal -offset indent
-error: "error string, including Lua stack trace"
-.Ed
-.Pp
-If a fatal error is returned, the channel program may have not executed at all,
-may have partially executed, or may have fully executed but failed to pass a
-return value back to userland.
-.Pp
-If the channel program exhausts an instruction or memory limit, a fatal error
-will be generated and the program will be stopped, leaving the program partially
-executed.
-No attempt is made to reverse or undo any operations already performed.
-Note that because both the instruction count and amount of memory used by a
-channel program are deterministic when run against the same inputs and
-filesystem state, as long as a channel program has run successfully once, you
-can guarantee that it will finish successfully against a similar size system.
-.Pp
-If a channel program attempts to return too large a value, the program will
-fully execute but exit with a nonzero status code and no return value.
-.Pp
-.Em Note :
-ZFS API functions do not generate Fatal Errors when correctly invoked, they
-return an error code and the channel program continues executing.
-See the
-.Sx ZFS API
-section below for function-specific details on error return codes.
-.Ss Lua to C Value Conversion
-When invoking a channel program via the libZFS interface, it is necessary to
-translate arguments and return values from Lua values to their C equivalents,
-and vice-versa.
-.Pp
-There is a correspondence between nvlist values in C and Lua tables.
-A Lua table which is returned from the channel program will be recursively
-converted to an nvlist, with table values converted to their natural
-equivalents:
-.Bd -literal -offset indent
-string -> string
-number -> int64
-boolean -> boolean_value
-nil -> boolean (no value)
-table -> nvlist
-.Ed
-.Pp
-Likewise, table keys are replaced by string equivalents as follows:
-.Bd -literal -offset indent
-string -> no change
-number -> signed decimal string ("%lld")
-boolean -> "true" | "false"
-.Ed
-.Pp
-Any collision of table key strings (for example, the string "true" and a
-true boolean value) will cause a fatal error.
-.Pp
-Lua numbers are represented internally as signed 64-bit integers.
-.Sh LUA STANDARD LIBRARY
-The following Lua built-in base library functions are available:
-.Bd -literal -offset indent
-assert rawlen
-collectgarbage rawget
-error rawset
-getmetatable select
-ipairs setmetatable
-next tonumber
-pairs tostring
-rawequal type
-.Ed
-.Pp
-All functions in the
-.Em coroutine ,
-.Em string ,
-and
-.Em table
-built-in submodules are also available.
-A complete list and documentation of these modules is available in the Lua
-manual.
-.Pp
-The following functions base library functions have been disabled and are
-not available for use in channel programs:
-.Bd -literal -offset indent
-dofile
-loadfile
-load
-pcall
-print
-xpcall
-.Ed
-.Sh ZFS API
-.Ss Function Arguments
-Each API function takes a fixed set of required positional arguments and
-optional keyword arguments.
-For example, the destroy function takes a single positional string argument
-(the name of the dataset to destroy) and an optional "defer" keyword boolean
-argument.
-When using parentheses to specify the arguments to a Lua function, only
-positional arguments can be used:
-.Bd -literal -offset indent
-zfs.sync.destroy("rpool@snap")
-.Ed
-.Pp
-To use keyword arguments, functions must be called with a single argument that
-is a Lua table containing entries mapping integers to positional arguments and
-strings to keyword arguments:
-.Bd -literal -offset indent
-zfs.sync.destroy({1="rpool@snap", defer=true})
-.Ed
-.Pp
-The Lua language allows curly braces to be used in place of parenthesis as
-syntactic sugar for this calling convention:
-.Bd -literal -offset indent
-zfs.sync.snapshot{"rpool@snap", defer=true}
-.Ed
-.Ss Function Return Values
-If an API function succeeds, it returns 0.
-If it fails, it returns an error code and the channel program continues
-executing.
-API functions do not generate Fatal Errors except in the case of an
-unrecoverable internal file system error.
-.Pp
-In addition to returning an error code, some functions also return extra
-details describing what caused the error.
-This extra description is given as a second return value, and will always be a
-Lua table, or Nil if no error details were returned.
-Different keys will exist in the error details table depending on the function
-and error case.
-Any such function may be called expecting a single return value:
-.Bd -literal -offset indent
-errno = zfs.sync.promote(dataset)
-.Ed
-.Pp
-Or, the error details can be retrieved:
-.Bd -literal -offset indent
-errno, details = zfs.sync.promote(dataset)
-if (errno == EEXIST) then
- assert(details ~= Nil)
- list_of_conflicting_snapshots = details
-end
-.Ed
-.Pp
-The following global aliases for API function error return codes are defined
-for use in channel programs:
-.Bd -literal -offset indent
-EPERM ECHILD ENODEV ENOSPC
-ENOENT EAGAIN ENOTDIR ESPIPE
-ESRCH ENOMEM EISDIR EROFS
-EINTR EACCES EINVAL EMLINK
-EIO EFAULT ENFILE EPIPE
-ENXIO ENOTBLK EMFILE EDOM
-E2BIG EBUSY ENOTTY ERANGE
-ENOEXEC EEXIST ETXTBSY EDQUOT
-EBADF EXDEV EFBIG
-.Ed
-.Ss API Functions
-For detailed descriptions of the exact behavior of any zfs administrative
-operations, see the main
-.Xr zfs 1M
-manual page.
-.Bl -tag -width "xx"
-.It Em zfs.debug(msg)
-Record a debug message in the zfs_dbgmsg log.
-A log of these messages can be printed via mdb's "::zfs_dbgmsg" command, or
-can be monitored live by running:
-.Bd -literal -offset indent
- dtrace -n 'zfs-dbgmsg{trace(stringof(arg0))}'
-.Ed
-.Pp
-msg (string)
-.Bd -ragged -compact -offset "xxxx"
-Debug message to be printed.
-.Ed
-.It Em zfs.exists(dataset)
-Returns true if the given dataset exists, or false if it doesn't.
-A fatal error will be thrown if the dataset is not in the target pool.
-That is, in a channel program running on rpool,
-zfs.exists("rpool/nonexistent_fs") returns false, but
-zfs.exists("somepool/fs_that_may_exist") will error.
-.Pp
-dataset (string)
-.Bd -ragged -compact -offset "xxxx"
-Dataset to check for existence.
-Must be in the target pool.
-.Ed
-.It Em zfs.get_prop(dataset, property)
-Returns two values.
-First, a string, number or table containing the property value for the given
-dataset.
-Second, a string containing the source of the property (i.e. the name of the
-dataset in which it was set or nil if it is readonly).
-Throws a Lua error if the dataset is invalid or the property doesn't exist.
-Note that Lua only supports int64 number types whereas ZFS number properties
-are uint64.
-This means very large values (like guid) may wrap around and appear negative.
-.Pp
-dataset (string)
-.Bd -ragged -compact -offset "xxxx"
-Filesystem or snapshot path to retrieve properties from.
-.Ed
-.Pp
-property (string)
-.Bd -ragged -compact -offset "xxxx"
-Name of property to retrieve.
-All filesystem, snapshot and volume properties are supported except
-for 'mounted' and 'iscsioptions.'
-Also supports the 'written@snap' and 'written#bookmark' properties and
-the '<user|group><quota|used>@id' properties, though the id must be in numeric
-form.
-.Ed
-.El
-.Bl -tag -width "xx"
-.It Sy zfs.sync submodule
-The sync submodule contains functions that modify the on-disk state.
-They are executed in "syncing context".
-.Pp
-The available sync submodule functions are as follows:
-.Bl -tag -width "xx"
-.It Em zfs.sync.change_key(dataset, key)
-Change the dataset encryption key.
-.Fa key
-must be in the format (raw or hex) specified by the dataset
-.Sy keyformat
-property.
-.It Em zfs.sync.destroy(dataset, [defer=true|false])
-Destroy the given dataset.
-Returns 0 on successful destroy, or a nonzero error code if the dataset could
-not be destroyed (for example, if the dataset has any active children or
-clones).
-.Pp
-dataset (string)
-.Bd -ragged -compact -offset "xxxx"
-Filesystem or snapshot to be destroyed.
-.Ed
-.Pp
-[optional] defer (boolean)
-.Bd -ragged -compact -offset "xxxx"
-Valid only for destroying snapshots.
-If set to true, and the snapshot has holds or clones, allows the snapshot to be
-marked for deferred deletion rather than failing.
-.Ed
-.It Em zfs.sync.inherit(dataset, property)
-Clears the specified property in the given dataset, causing it to be inherited
-from an ancestor, or restored to the default if no ancestor property is set.
-The
-.Ql zfs inherit -S
-option has not been implemented.
-Returns 0 on success, or a nonzero error code if the property could not be
-cleared.
-.Pp
-dataset (string)
-.Bd -ragged -compact -offset "xxxx"
-Filesystem or snapshot containing the property to clear.
-.Ed
-.Pp
-property (string)
-.Bd -ragged -compact -offset "xxxx"
-The property to clear.
-Allowed properties are the same as those for the
-.Nm zfs Cm inherit
-command.
-.Ed
-.It Em zfs.sync.promote(dataset)
-Promote the given clone to a filesystem.
-Returns 0 on successful promotion, or a nonzero error code otherwise.
-If EEXIST is returned, the second return value will be an array of the clone's
-snapshots whose names collide with snapshots of the parent filesystem.
-.Pp
-dataset (string)
-.Bd -ragged -compact -offset "xxxx"
-Clone to be promoted.
-.Ed
-.It Em zfs.sync.rollback(filesystem)
-Rollback to the previous snapshot for a dataset.
-Returns 0 on successful rollback, or a nonzero error code otherwise.
-Rollbacks can be performed on filesystems or zvols, but not on snapshots
-or mounted datasets.
-EBUSY is returned in the case where the filesystem is mounted.
-.Pp
-filesystem (string)
-.Bd -ragged -compact -offset "xxxx"
-Filesystem to rollback.
-.Ed
-.It Em zfs.sync.set_prop(dataset, property, value)
-Sets the given property on a dataset.
-Currently only user properties are supported.
-Returns 0 if the property was set, or a nonzero error code otherwise.
-.Pp
-dataset (string)
-.Bd -ragged -compact -offset "xxxx"
-The dataset where the property will be set.
-.Ed
-.Pp
-property (string)
-.Bd -ragged -compact -offset "xxxx"
-The property to set.
-Only user properties are supported.
-.Ed
-.Pp
-value (string)
-.Bd -ragged -compact -offset "xxxx"
-The value of the property to be set.
-.Ed
-.It Em zfs.sync.snapshot(dataset)
-Create a snapshot of a filesystem.
-Returns 0 if the snapshot was successfully created,
-and a nonzero error code otherwise.
-.Pp
-Note: Taking a snapshot will fail on any pool older than legacy version 27.
-To enable taking snapshots from ZCP scripts, the pool must be upgraded.
-.Pp
-dataset (string)
-.Bd -ragged -compact -offset "xxxx"
-Name of snapshot to create.
-.Ed
-.El
-.It Sy zfs.check submodule
-For each function in the zfs.sync submodule, there is a corresponding zfs.check
-function which performs a "dry run" of the same operation.
-Each takes the same arguments as its zfs.sync counterpart and returns 0 if the
-operation would succeed, or a non-zero error code if it would fail, along with
-any other error details.
-That is, each has the same behavior as the corresponding sync function except
-for actually executing the requested change.
-For example,
-.Em zfs.check.destroy("fs")
-returns 0 if
-.Em zfs.sync.destroy("fs")
-would successfully destroy the dataset.
-.Pp
-The available zfs.check functions are:
-.Bl -tag -width "xx"
-.It Em zfs.check.change_key(dataset, key)
-.It Em zfs.check.destroy(dataset, [defer=true|false])
-.It Em zfs.check.promote(dataset)
-.It Em zfs.check.rollback(filesystem)
-.It Em zfs.check.set_property(dataset, property, value)
-.It Em zfs.check.snapshot(dataset)
-.El
-.It Sy zfs.list submodule
-The zfs.list submodule provides functions for iterating over datasets and
-properties.
-Rather than returning tables, these functions act as Lua iterators, and are
-generally used as follows:
-.Bd -literal -offset indent
-for child in zfs.list.children("rpool") do
- ...
-end
-.Ed
-.Pp
-The available zfs.list functions are:
-.Bl -tag -width "xx"
-.It Em zfs.list.clones(snapshot)
-Iterate through all clones of the given snapshot.
-.Pp
-snapshot (string)
-.Bd -ragged -compact -offset "xxxx"
-Must be a valid snapshot path in the current pool.
-.Ed
-.It Em zfs.list.snapshots(dataset)
-Iterate through all snapshots of the given dataset.
-Each snapshot is returned as a string containing the full dataset name, e.g.
-"pool/fs@snap".
-.Pp
-dataset (string)
-.Bd -ragged -compact -offset "xxxx"
-Must be a valid filesystem or volume.
-.Ed
-.It Em zfs.list.children(dataset)
-Iterate through all direct children of the given dataset.
-Each child is returned as a string containing the full dataset name, e.g.
-"pool/fs/child".
-.Pp
-dataset (string)
-.Bd -ragged -compact -offset "xxxx"
-Must be a valid filesystem or volume.
-.Ed
-.It Em zfs.list.properties(dataset)
-Iterate through all user properties for the given dataset.
-.Pp
-dataset (string)
-.Bd -ragged -compact -offset "xxxx"
-Must be a valid filesystem, snapshot, or volume.
-.Ed
-.It Em zfs.list.system_properties(dataset)
-Returns an array of strings, the names of the valid system (non-user defined)
-properties for the given dataset.
-Throws a Lua error if the dataset is invalid.
-.Pp
-dataset (string)
-.Bd -ragged -compact -offset "xxxx"
-Must be a valid filesystem, snapshot or volume.
-.Ed
-.El
-.El
-.Sh EXAMPLES
-.Ss Example 1
-The following channel program recursively destroys a filesystem and all its
-snapshots and children in a naive manner.
-Note that this does not involve any error handling or reporting.
-.Bd -literal -offset indent
-function destroy_recursive(root)
- for child in zfs.list.children(root) do
- destroy_recursive(child)
- end
- for snap in zfs.list.snapshots(root) do
- zfs.sync.destroy(snap)
- end
- zfs.sync.destroy(root)
-end
-destroy_recursive("pool/somefs")
-.Ed
-.Ss Example 2
-A more verbose and robust version of the same channel program, which
-properly detects and reports errors, and also takes the dataset to destroy
-as a command line argument, would be as follows:
-.Bd -literal -offset indent
-succeeded = {}
-failed = {}
-
-function destroy_recursive(root)
- for child in zfs.list.children(root) do
- destroy_recursive(child)
- end
- for snap in zfs.list.snapshots(root) do
- err = zfs.sync.destroy(snap)
- if (err ~= 0) then
- failed[snap] = err
- else
- succeeded[snap] = err
- end
- end
- err = zfs.sync.destroy(root)
- if (err ~= 0) then
- failed[root] = err
- else
- succeeded[root] = err
- end
-end
-
-args = ...
-argv = args["argv"]
-
-destroy_recursive(argv[1])
-
-results = {}
-results["succeeded"] = succeeded
-results["failed"] = failed
-return results
-.Ed
-.Ss Example 3
-The following function performs a forced promote operation by attempting to
-promote the given clone and destroying any conflicting snapshots.
-.Bd -literal -offset indent
-function force_promote(ds)
- errno, details = zfs.check.promote(ds)
- if (errno == EEXIST) then
- assert(details ~= Nil)
- for i, snap in ipairs(details) do
- zfs.sync.destroy(ds .. "@" .. snap)
- end
- elseif (errno ~= 0) then
- return errno
- end
- return zfs.sync.promote(ds)
-end
-.Ed
diff --git a/usr/src/man/man1m/zfs.1m b/usr/src/man/man1m/zfs.1m
deleted file mode 100644
index 99b34b5c36..0000000000
--- a/usr/src/man/man1m/zfs.1m
+++ /dev/null
@@ -1,4855 +0,0 @@
-.\"
-.\" CDDL HEADER START
-.\"
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.\"
-.\" CDDL HEADER END
-.\"
-.\"
-.\" Copyright (c) 2009 Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 2011 Joshua M. Clulow <josh@sysmgr.org>
-.\" Copyright (c) 2011, 2016 by Delphix. All rights reserved.
-.\" Copyright (c) 2013 by Saso Kiselkov. All rights reserved.
-.\" Copyright (c) 2014 by Adam Stevko. All rights reserved.
-.\" Copyright (c) 2014 Integros [integros.com]
-.\" Copyright 2018 Nexenta Systems, Inc.
-.\" Copyright 2019 Joyent, Inc.
-.\" Copyright (c) 2018 Datto Inc.
-.\"
-.Dd Jul 22, 2019
-.Dt ZFS 1M
-.Os
-.Sh NAME
-.Nm zfs
-.Nd configures ZFS file systems
-.Sh SYNOPSIS
-.Nm
-.Op Fl \&?
-.Nm
-.Cm create
-.Op Fl Pnpv
-.Oo Fl o Ar property Ns = Ns Ar value Oc Ns ...
-.Ar filesystem
-.Nm
-.Cm create
-.Op Fl Pnpsv
-.Op Fl b Ar blocksize
-.Oo Fl o Ar property Ns = Ns Ar value Oc Ns ...
-.Fl V Ar size Ar volume
-.Nm
-.Cm destroy
-.Op Fl Rfnprv
-.Ar filesystem Ns | Ns Ar volume
-.Nm
-.Cm destroy
-.Op Fl Rdnprv
-.Ar filesystem Ns | Ns Ar volume Ns @ Ns Ar snap Ns
-.Oo % Ns Ar snap Ns Oo , Ns Ar snap Ns Oo % Ns Ar snap Oc Oc Oc Ns ...
-.Nm
-.Cm destroy
-.Ar filesystem Ns | Ns Ar volume Ns # Ns Ar bookmark
-.Nm
-.Cm snapshot
-.Op Fl r
-.Oo Fl o Ar property Ns = Ns value Oc Ns ...
-.Ar filesystem Ns @ Ns Ar snapname Ns | Ns Ar volume Ns @ Ns Ar snapname Ns ...
-.Nm
-.Cm rollback
-.Op Fl Rfr
-.Ar snapshot
-.Nm
-.Cm clone
-.Op Fl p
-.Oo Fl o Ar property Ns = Ns Ar value Oc Ns ...
-.Ar snapshot Ar filesystem Ns | Ns Ar volume
-.Nm
-.Cm promote
-.Ar clone-filesystem
-.Nm
-.Cm rename
-.Op Fl f
-.Ar filesystem Ns | Ns Ar volume Ns | Ns Ar snapshot
-.Ar filesystem Ns | Ns Ar volume Ns | Ns Ar snapshot
-.Nm
-.Cm rename
-.Op Fl fp
-.Ar filesystem Ns | Ns Ar volume
-.Ar filesystem Ns | Ns Ar volume
-.Nm
-.Cm rename
-.Fl r
-.Ar snapshot Ar snapshot
-.Nm
-.Cm list
-.Op Fl r Ns | Ns Fl d Ar depth
-.Op Fl Hp
-.Oo Fl o Ar property Ns Oo , Ns Ar property Oc Ns ... Oc
-.Oo Fl s Ar property Oc Ns ...
-.Oo Fl S Ar property Oc Ns ...
-.Oo Fl t Ar type Ns Oo , Ns Ar type Oc Ns ... Oc
-.Oo Ar filesystem Ns | Ns Ar volume Ns | Ns Ar snapshot Oc Ns ...
-.Nm
-.Cm remap
-.Ar filesystem Ns | Ns Ar volume
-.Nm
-.Cm set
-.Ar property Ns = Ns Ar value Oo Ar property Ns = Ns Ar value Oc Ns ...
-.Ar filesystem Ns | Ns Ar volume Ns | Ns Ar snapshot Ns ...
-.Nm
-.Cm get
-.Op Fl r Ns | Ns Fl d Ar depth
-.Op Fl Hp
-.Oo Fl o Ar field Ns Oo , Ns Ar field Oc Ns ... Oc
-.Oo Fl s Ar source Ns Oo , Ns Ar source Oc Ns ... Oc
-.Oo Fl t Ar type Ns Oo , Ns Ar type Oc Ns ... Oc
-.Cm all | Ar property Ns Oo , Ns Ar property Oc Ns ...
-.Ar filesystem Ns | Ns Ar volume Ns | Ns Ar snapshot Ns | Ns Ar bookmark Ns ...
-.Nm
-.Cm inherit
-.Op Fl rS
-.Ar property Ar filesystem Ns | Ns Ar volume Ns | Ns Ar snapshot Ns ...
-.Nm
-.Cm upgrade
-.Nm
-.Cm upgrade
-.Fl v
-.Nm
-.Cm upgrade
-.Op Fl r
-.Op Fl V Ar version
-.Fl a | Ar filesystem
-.Nm
-.Cm userspace
-.Op Fl Hinp
-.Oo Fl o Ar field Ns Oo , Ns Ar field Oc Ns ... Oc
-.Oo Fl s Ar field Oc Ns ...
-.Oo Fl S Ar field Oc Ns ...
-.Oo Fl t Ar type Ns Oo , Ns Ar type Oc Ns ... Oc
-.Ar filesystem Ns | Ns Ar snapshot
-.Nm
-.Cm groupspace
-.Op Fl Hinp
-.Oo Fl o Ar field Ns Oo , Ns Ar field Oc Ns ... Oc
-.Oo Fl s Ar field Oc Ns ...
-.Oo Fl S Ar field Oc Ns ...
-.Oo Fl t Ar type Ns Oo , Ns Ar type Oc Ns ... Oc
-.Ar filesystem Ns | Ns Ar snapshot
-.Nm
-.Cm projectspace
-.Op Fl Hp
-.Oo Fl o Ar field Ns Oo , Ns Ar field Oc Ns ... Oc
-.Oo Fl s Ar field Oc Ns ...
-.Oo Fl S Ar field Oc Ns ...
-.Ar filesystem Ns | Ns Ar snapshot
-.Nm
-.Cm project
-.Oo Fl d Ns | Ns Fl r Ns Oc
-.Ar file Ns | Ns Ar directory Ns ...
-.Nm
-.Cm project
-.Fl C
-.Oo Fl kr Ns Oc
-.Ar file Ns | Ns Ar directory Ns ...
-.Nm
-.Cm project
-.Fl c
-.Oo Fl 0 Ns Oc
-.Oo Fl d Ns | Ns Fl r Ns Oc
-.Op Fl p Ar id
-.Ar file Ns | Ns Ar directory Ns ...
-.Nm
-.Cm project
-.Op Fl p Ar id
-.Oo Fl rs Ns Oc
-.Ar file Ns | Ns Ar directory Ns ...
-.Nm
-.Cm mount
-.Nm
-.Cm mount
-.Op Fl Olv
-.Op Fl o Ar options
-.Fl a | Ar filesystem
-.Nm
-.Cm unmount
-.Op Fl f
-.Fl a | Ar filesystem Ns | Ns Ar mountpoint
-.Nm
-.Cm share
-.Fl a | Ar filesystem
-.Nm
-.Cm unshare
-.Fl a | Ar filesystem Ns | Ns Ar mountpoint
-.Nm
-.Cm bookmark
-.Ar snapshot bookmark
-.Nm
-.Cm send
-.Op Fl DLPRbcehnpvw
-.Op Oo Fl I Ns | Ns Fl i Oc Ar snapshot
-.Ar snapshot
-.Nm
-.Cm send
-.Op Fl LPcenvw
-.Op Fl i Ar snapshot Ns | Ns Ar bookmark
-.Ar filesystem Ns | Ns Ar volume Ns | Ns Ar snapshot
-.Nm
-.Cm send
-.Op Fl Penv
-.Fl t Ar receive_resume_token
-.Nm
-.Cm receive
-.Op Fl Fhnsuv
-.Op Fl o Sy origin Ns = Ns Ar snapshot
-.Op Fl o Ar property Ns = Ns Ar value
-.Op Fl x Ar property
-.Ar filesystem Ns | Ns Ar volume Ns | Ns Ar snapshot
-.Nm
-.Cm receive
-.Op Fl Fhnsuv
-.Op Fl d Ns | Ns Fl e
-.Op Fl o Sy origin Ns = Ns Ar snapshot
-.Op Fl o Ar property Ns = Ns Ar value
-.Op Fl x Ar property
-.Ar filesystem
-.Nm
-.Cm receive
-.Fl A
-.Ar filesystem Ns | Ns Ar volume
-.Nm
-.Cm allow
-.Ar filesystem Ns | Ns Ar volume
-.Nm
-.Cm allow
-.Op Fl dglu
-.Ar user Ns | Ns Ar group Ns Oo , Ns Ar user Ns | Ns Ar group Oc Ns ...
-.Ar perm Ns | Ns @ Ns Ar setname Ns Oo , Ns Ar perm Ns | Ns @ Ns
-.Ar setname Oc Ns ...
-.Ar filesystem Ns | Ns Ar volume
-.Nm
-.Cm allow
-.Op Fl dl
-.Fl e Ns | Ns Sy everyone
-.Ar perm Ns | Ns @ Ns Ar setname Ns Oo , Ns Ar perm Ns | Ns @ Ns
-.Ar setname Oc Ns ...
-.Ar filesystem Ns | Ns Ar volume
-.Nm
-.Cm allow
-.Fl c
-.Ar perm Ns | Ns @ Ns Ar setname Ns Oo , Ns Ar perm Ns | Ns @ Ns
-.Ar setname Oc Ns ...
-.Ar filesystem Ns | Ns Ar volume
-.Nm
-.Cm allow
-.Fl s No @ Ns Ar setname
-.Ar perm Ns | Ns @ Ns Ar setname Ns Oo , Ns Ar perm Ns | Ns @ Ns
-.Ar setname Oc Ns ...
-.Ar filesystem Ns | Ns Ar volume
-.Nm
-.Cm unallow
-.Op Fl dglru
-.Ar user Ns | Ns Ar group Ns Oo , Ns Ar user Ns | Ns Ar group Oc Ns ...
-.Oo Ar perm Ns | Ns @ Ns Ar setname Ns Oo , Ns Ar perm Ns | Ns @ Ns
-.Ar setname Oc Ns ... Oc
-.Ar filesystem Ns | Ns Ar volume
-.Nm
-.Cm unallow
-.Op Fl dlr
-.Fl e Ns | Ns Sy everyone
-.Oo Ar perm Ns | Ns @ Ns Ar setname Ns Oo , Ns Ar perm Ns | Ns @ Ns
-.Ar setname Oc Ns ... Oc
-.Ar filesystem Ns | Ns Ar volume
-.Nm
-.Cm unallow
-.Op Fl r
-.Fl c
-.Oo Ar perm Ns | Ns @ Ns Ar setname Ns Oo , Ns Ar perm Ns | Ns @ Ns
-.Ar setname Oc Ns ... Oc
-.Ar filesystem Ns | Ns Ar volume
-.Nm
-.Cm unallow
-.Op Fl r
-.Fl s @ Ns Ar setname
-.Oo Ar perm Ns | Ns @ Ns Ar setname Ns Oo , Ns Ar perm Ns | Ns @ Ns
-.Ar setname Oc Ns ... Oc
-.Ar filesystem Ns | Ns Ar volume
-.Nm
-.Cm hold
-.Op Fl r
-.Ar tag Ar snapshot Ns ...
-.Nm
-.Cm holds
-.Op Fl r
-.Ar snapshot Ns ...
-.Nm
-.Cm release
-.Op Fl r
-.Ar tag Ar snapshot Ns ...
-.Nm
-.Cm diff
-.Op Fl FHt
-.Ar snapshot Ar snapshot Ns | Ns Ar filesystem
-.Nm
-.Cm program
-.Op Fl jn
-.Op Fl t Ar timeout
-.Op Fl m Ar memory_limit
-.Ar pool script
-.Op Ar arg1 No ...
-.Nm
-.Cm load-key
-.Op Fl rn
-.Op Fl L Ar keylocation
-.Op Fl a Ns | Ns Ar filesystem
-.Nm
-.Cm unload-key
-.Op Fl r
-.Op Fl a Ns | Ns Ar filesystem
-.Nm
-.Cm change-key
-.Op Fl l
-.Op Fl o Sy keylocation Ns = Ns Ar value
-.Op Fl o Sy keyformat Ns = Ns Ar value
-.Op Fl o Sy pbkdf2iters Ns = Ns Ar value
-.Ar filesystem
-.Sh DESCRIPTION
-The
-.Nm
-command configures ZFS datasets within a ZFS storage pool, as described in
-.Xr zpool 1M .
-A dataset is identified by a unique path within the ZFS namespace.
-For example:
-.Bd -literal
-pool/{filesystem,volume,snapshot}
-.Ed
-.Pp
-where the maximum length of a dataset name is
-.Dv MAXNAMELEN
-.Pq 256 bytes
-and the maximum amount of nesting allowed in a path is 50 levels deep.
-.Pp
-A dataset can be one of the following:
-.Bl -tag -width "file system"
-.It Sy file system
-A ZFS dataset of type
-.Sy filesystem
-can be mounted within the standard system namespace and behaves like other file
-systems.
-While ZFS file systems are designed to be POSIX compliant, known issues exist
-that prevent compliance in some cases.
-Applications that depend on standards conformance might fail due to non-standard
-behavior when checking file system free space.
-.It Sy volume
-A logical volume exported as a raw or block device.
-This type of dataset should only be used under special circumstances.
-File systems are typically used in most environments.
-.It Sy snapshot
-A read-only version of a file system or volume at a given point in time.
-It is specified as
-.Ar filesystem Ns @ Ns Ar name
-or
-.Ar volume Ns @ Ns Ar name .
-.El
-.Ss ZFS File System Hierarchy
-A ZFS storage pool is a logical collection of devices that provide space for
-datasets.
-A storage pool is also the root of the ZFS file system hierarchy.
-.Pp
-The root of the pool can be accessed as a file system, such as mounting and
-unmounting, taking snapshots, and setting properties.
-The physical storage characteristics, however, are managed by the
-.Xr zpool 1M
-command.
-.Pp
-See
-.Xr zpool 1M
-for more information on creating and administering pools.
-.Ss Snapshots
-A snapshot is a read-only copy of a file system or volume.
-Snapshots can be created extremely quickly, and initially consume no additional
-space within the pool.
-As data within the active dataset changes, the snapshot consumes more data than
-would otherwise be shared with the active dataset.
-.Pp
-Snapshots can have arbitrary names.
-Snapshots of volumes can be cloned or rolled back, but cannot be accessed
-independently.
-.Pp
-File system snapshots can be accessed under the
-.Pa .zfs/snapshot
-directory in the root of the file system.
-Snapshots are automatically mounted on demand and may be unmounted at regular
-intervals.
-The visibility of the
-.Pa .zfs
-directory can be controlled by the
-.Sy snapdir
-property.
-.Ss Clones
-A clone is a writable volume or file system whose initial contents are the same
-as another dataset.
-As with snapshots, creating a clone is nearly instantaneous, and initially
-consumes no additional space.
-.Pp
-Clones can only be created from a snapshot.
-When a snapshot is cloned, it creates an implicit dependency between the parent
-and child.
-Even though the clone is created somewhere else in the dataset hierarchy, the
-original snapshot cannot be destroyed as long as a clone exists.
-The
-.Sy origin
-property exposes this dependency, and the
-.Cm destroy
-command lists any such dependencies, if they exist.
-.Pp
-The clone parent-child dependency relationship can be reversed by using the
-.Cm promote
-subcommand.
-This causes the
-.Qq origin
-file system to become a clone of the specified file system, which makes it
-possible to destroy the file system that the clone was created from.
-.Ss "Mount Points"
-Creating a ZFS file system is a simple operation, so the number of file systems
-per system is likely to be numerous.
-To cope with this, ZFS automatically manages mounting and unmounting file
-systems without the need to edit the
-.Pa /etc/vfstab
-file.
-All automatically managed file systems are mounted by ZFS at boot time.
-.Pp
-By default, file systems are mounted under
-.Pa /path ,
-where
-.Ar path
-is the name of the file system in the ZFS namespace.
-Directories are created and destroyed as needed.
-.Pp
-A file system can also have a mount point set in the
-.Sy mountpoint
-property.
-This directory is created as needed, and ZFS automatically mounts the file
-system when the
-.Nm zfs Cm mount Fl a
-command is invoked
-.Po without editing
-.Pa /etc/vfstab
-.Pc .
-The
-.Sy mountpoint
-property can be inherited, so if
-.Em pool/home
-has a mount point of
-.Pa /export/stuff ,
-then
-.Em pool/home/user
-automatically inherits a mount point of
-.Pa /export/stuff/user .
-.Pp
-A file system
-.Sy mountpoint
-property of
-.Sy none
-prevents the file system from being mounted.
-.Pp
-If needed, ZFS file systems can also be managed with traditional tools
-.Po
-.Nm mount ,
-.Nm umount ,
-.Pa /etc/vfstab
-.Pc .
-If a file system's mount point is set to
-.Sy legacy ,
-ZFS makes no attempt to manage the file system, and the administrator is
-responsible for mounting and unmounting the file system.
-.Ss "Zones"
-A ZFS file system can be added to a non-global zone by using the
-.Nm zonecfg Cm add Sy fs
-subcommand.
-A ZFS file system that is added to a non-global zone must have its
-.Sy mountpoint
-property set to
-.Sy legacy .
-.Pp
-The physical properties of an added file system are controlled by the global
-administrator.
-However, the zone administrator can create, modify, or destroy files within the
-added file system, depending on how the file system is mounted.
-.Pp
-A dataset can also be delegated to a non-global zone by using the
-.Nm zonecfg Cm add Sy dataset
-subcommand.
-You cannot delegate a dataset to one zone and the children of the same dataset
-to another zone.
-The zone administrator can change properties of the dataset or any of its
-children.
-However, the
-.Sy quota ,
-.Sy filesystem_limit
-and
-.Sy snapshot_limit
-properties of the delegated dataset can be modified only by the global
-administrator.
-.Pp
-A ZFS volume can be added as a device to a non-global zone by using the
-.Nm zonecfg Cm add Sy device
-subcommand.
-However, its physical properties can be modified only by the global
-administrator.
-.Pp
-For more information about
-.Nm zonecfg
-syntax, see
-.Xr zonecfg 1M .
-.Pp
-After a dataset is delegated to a non-global zone, the
-.Sy zoned
-property is automatically set.
-A zoned file system cannot be mounted in the global zone, since the zone
-administrator might have to set the mount point to an unacceptable value.
-.Pp
-The global administrator can forcibly clear the
-.Sy zoned
-property, though this should be done with extreme care.
-The global administrator should verify that all the mount points are acceptable
-before clearing the property.
-.Ss Native Properties
-Properties are divided into two types, native properties and user-defined
-.Po or
-.Qq user
-.Pc
-properties.
-Native properties either export internal statistics or control ZFS behavior.
-In addition, native properties are either editable or read-only.
-User properties have no effect on ZFS behavior, but you can use them to annotate
-datasets in a way that is meaningful in your environment.
-For more information about user properties, see the
-.Sx User Properties
-section, below.
-.Pp
-Every dataset has a set of properties that export statistics about the dataset
-as well as control various behaviors.
-Properties are inherited from the parent unless overridden by the child.
-Some properties apply only to certain types of datasets
-.Pq file systems, volumes, or snapshots .
-.Pp
-The values of numeric properties can be specified using human-readable suffixes
-.Po for example,
-.Sy k ,
-.Sy KB ,
-.Sy M ,
-.Sy Gb ,
-and so forth, up to
-.Sy Z
-for zettabyte
-.Pc .
-The following are all valid
-.Pq and equal
-specifications:
-.Li 1536M, 1.5g, 1.50GB .
-.Pp
-The values of non-numeric properties are case sensitive and must be lowercase,
-except for
-.Sy mountpoint ,
-.Sy sharenfs ,
-and
-.Sy sharesmb .
-.Pp
-The following native properties consist of read-only statistics about the
-dataset.
-These properties can be neither set, nor inherited.
-Native properties apply to all dataset types unless otherwise noted.
-.Bl -tag -width "usedbyrefreservation"
-.It Sy available
-The amount of space available to the dataset and all its children, assuming that
-there is no other activity in the pool.
-Because space is shared within a pool, availability can be limited by any number
-of factors, including physical pool size, quotas, reservations, or other
-datasets within the pool.
-.Pp
-This property can also be referred to by its shortened column name,
-.Sy avail .
-.It Sy compressratio
-For non-snapshots, the compression ratio achieved for the
-.Sy used
-space of this dataset, expressed as a multiplier.
-The
-.Sy used
-property includes descendant datasets, and, for clones, does not include the
-space shared with the origin snapshot.
-For snapshots, the
-.Sy compressratio
-is the same as the
-.Sy refcompressratio
-property.
-Compression can be turned on by running:
-.Nm zfs Cm set Sy compression Ns = Ns Sy on Ar dataset .
-The default value is
-.Sy off .
-.It Sy createtxg
-The transaction group (txg) in which the dataset was created.
-Bookmarks have the same
-.Sy createtxg
-as the snapshot they are initially tied to.
-This property is suitable for ordering a list of snapshots,
-e.g. for incremental send and receive.
-.It Sy creation
-The time this dataset was created.
-.It Sy clones
-For snapshots, this property is a comma-separated list of filesystems or volumes
-which are clones of this snapshot.
-The clones'
-.Sy origin
-property is this snapshot.
-If the
-.Sy clones
-property is not empty, then this snapshot can not be destroyed
-.Po even with the
-.Fl r
-or
-.Fl f
-options
-.Pc .
-.It Sy defer_destroy
-This property is
-.Sy on
-if the snapshot has been marked for deferred destroy by using the
-.Nm zfs Cm destroy Fl d
-command.
-Otherwise, the property is
-.Sy off .
-.It Sy encryptionroot
-For encrypted datasets, indicates where the dataset is currently inheriting its
-encryption key from.
-Loading or unloading a key for the
-.Sy encryptionroot
-will implicitly load / unload the key for any inheriting datasets
-.Po see
-.Nm zfs Cm load-key
-and
-.Nm zfs Cm unload-key
-.Pc .
-Clones will always share an encryption key with their origin.
-See the
-.Sy Encryption
-section for details.
-.It Sy filesystem_count
-The total number of filesystems and volumes that exist under this location in
-the dataset tree.
-This value is only available when a
-.Sy filesystem_limit
-has been set somewhere in the tree under which the dataset resides.
-.It Sy guid
-The 64 bit GUID of this dataset or bookmark which does not change over its
-entire lifetime.
-When a snapshot is sent to another pool, the received snapshot has the same
-GUID.
-Thus, the
-.Sy guid
-is suitable to identify a snapshot across pools.
-.It Sy keystatus
-Indicates if an encryption key is currently loaded into ZFS.
-The possible values are
-.Sy none , available ,
-and
-.Sy unavailable .
-See
-.Nm Cm load-key
-and
-.Nm Cm unload-key .
-.It Sy logicalreferenced
-The amount of space that is
-.Qq logically
-accessible by this dataset.
-See the
-.Sy referenced
-property.
-The logical space ignores the effect of the
-.Sy compression
-and
-.Sy copies
-properties, giving a quantity closer to the amount of data that applications
-see.
-However, it does include space consumed by metadata.
-.Pp
-This property can also be referred to by its shortened column name,
-.Sy lrefer .
-.It Sy logicalused
-The amount of space that is
-.Qq logically
-consumed by this dataset and all its descendents.
-See the
-.Sy used
-property.
-The logical space ignores the effect of the
-.Sy compression
-and
-.Sy copies
-properties, giving a quantity closer to the amount of data that applications
-see.
-However, it does include space consumed by metadata.
-.Pp
-This property can also be referred to by its shortened column name,
-.Sy lused .
-.It Sy mounted
-For file systems, indicates whether the file system is currently mounted.
-This property can be either
-.Sy yes
-or
-.Sy no .
-.It Sy origin
-For cloned file systems or volumes, the snapshot from which the clone was
-created.
-See also the
-.Sy clones
-property.
-.It Sy receive_resume_token
-For filesystems or volumes which have saved partially-completed state from
-.Sy zfs receive -s ,
-this opaque token can be provided to
-.Sy zfs send -t
-to resume and complete the
-.Sy zfs receive .
-.It Sy referenced
-The amount of data that is accessible by this dataset, which may or may not be
-shared with other datasets in the pool.
-When a snapshot or clone is created, it initially references the same amount of
-space as the file system or snapshot it was created from, since its contents are
-identical.
-.Pp
-This property can also be referred to by its shortened column name,
-.Sy refer .
-.It Sy refcompressratio
-The compression ratio achieved for the
-.Sy referenced
-space of this dataset, expressed as a multiplier.
-See also the
-.Sy compressratio
-property.
-.It Sy snapshot_count
-The total number of snapshots that exist under this location in the dataset
-tree.
-This value is only available when a
-.Sy snapshot_limit
-has been set somewhere in the tree under which the dataset resides.
-.It Sy type
-The type of dataset:
-.Sy filesystem ,
-.Sy volume ,
-or
-.Sy snapshot .
-.It Sy used
-The amount of space consumed by this dataset and all its descendents.
-This is the value that is checked against this dataset's quota and reservation.
-The space used does not include this dataset's reservation, but does take into
-account the reservations of any descendent datasets.
-The amount of space that a dataset consumes from its parent, as well as the
-amount of space that is freed if this dataset is recursively destroyed, is the
-greater of its space used and its reservation.
-.Pp
-The used space of a snapshot
-.Po see the
-.Sx Snapshots
-section
-.Pc
-is space that is referenced exclusively by this snapshot.
-If this snapshot is destroyed, the amount of
-.Sy used
-space will be freed.
-Space that is shared by multiple snapshots isn't accounted for in this metric.
-When a snapshot is destroyed, space that was previously shared with this
-snapshot can become unique to snapshots adjacent to it, thus changing the used
-space of those snapshots.
-The used space of the latest snapshot can also be affected by changes in the
-file system.
-Note that the
-.Sy used
-space of a snapshot is a subset of the
-.Sy written
-space of the snapshot.
-.Pp
-The amount of space used, available, or referenced does not take into account
-pending changes.
-Pending changes are generally accounted for within a few seconds.
-Committing a change to a disk using
-.Xr fsync 3C
-or
-.Dv O_SYNC
-does not necessarily guarantee that the space usage information is updated
-immediately.
-.It Sy usedby*
-The
-.Sy usedby*
-properties decompose the
-.Sy used
-properties into the various reasons that space is used.
-Specifically,
-.Sy used No =
-.Sy usedbychildren No +
-.Sy usedbydataset No +
-.Sy usedbyrefreservation No +
-.Sy usedbysnapshots .
-These properties are only available for datasets created on
-.Nm zpool
-.Qo version 13 Qc
-pools.
-.It Sy usedbychildren
-The amount of space used by children of this dataset, which would be freed if
-all the dataset's children were destroyed.
-.It Sy usedbydataset
-The amount of space used by this dataset itself, which would be freed if the
-dataset were destroyed
-.Po after first removing any
-.Sy refreservation
-and destroying any necessary snapshots or descendents
-.Pc .
-.It Sy usedbyrefreservation
-The amount of space used by a
-.Sy refreservation
-set on this dataset, which would be freed if the
-.Sy refreservation
-was removed.
-.It Sy usedbysnapshots
-The amount of space consumed by snapshots of this dataset.
-In particular, it is the amount of space that would be freed if all of this
-dataset's snapshots were destroyed.
-Note that this is not simply the sum of the snapshots'
-.Sy used
-properties because space can be shared by multiple snapshots.
-.It Sy userused Ns @ Ns Em user
-The amount of space consumed by the specified user in this dataset.
-Space is charged to the owner of each file, as displayed by
-.Nm ls Fl l .
-The amount of space charged is displayed by
-.Nm du
-and
-.Nm ls Fl s .
-See the
-.Nm zfs Cm userspace
-subcommand for more information.
-.Pp
-Unprivileged users can access only their own space usage.
-The root user, or a user who has been granted the
-.Sy userused
-privilege with
-.Nm zfs Cm allow ,
-can access everyone's usage.
-.Pp
-The
-.Sy userused Ns @ Ns Em ...
-properties are not displayed by
-.Nm zfs Cm get Sy all .
-The user's name must be appended after the @ symbol, using one of the following
-forms:
-.Bl -bullet -width ""
-.It
-.Em POSIX name
-.Po for example,
-.Sy joe
-.Pc
-.It
-.Em POSIX numeric ID
-.Po for example,
-.Sy 789
-.Pc
-.It
-.Em SID name
-.Po for example,
-.Sy joe.smith@mydomain
-.Pc
-.It
-.Em SID numeric ID
-.Po for example,
-.Sy S-1-123-456-789
-.Pc
-.El
-.It Sy userobjused Ns @ Ns Em user
-The
-.Sy userobjused
-property is similar to
-.Sy userused
-but instead it counts the number of objects consumed by a user.
-This property counts all objects allocated on behalf of the user, it may
-differ from the results of system tools such as
-.Nm df Fl i .
-.Pp
-When the property
-.Sy xattr=on
-is set on a file system additional objects will be created per-file to store
-extended attributes.
-These additional objects are reflected in the
-.Sy userobjused
-value and are counted against the user's
-.Sy userobjquota .
-.It Sy userrefs
-This property is set to the number of user holds on this snapshot.
-User holds are set by using the
-.Nm zfs Cm hold
-command.
-.It Sy groupused Ns @ Ns Em group
-The amount of space consumed by the specified group in this dataset.
-Space is charged to the group of each file, as displayed by
-.Nm ls Fl l .
-See the
-.Sy userused Ns @ Ns Em user
-property for more information.
-.Pp
-Unprivileged users can only access their own groups' space usage.
-The root user, or a user who has been granted the
-.Sy groupused
-privilege with
-.Nm zfs Cm allow ,
-can access all groups' usage.
-.It Sy groupobjused Ns @ Ns Em group
-The number of objects consumed by the specified group in this dataset.
-Multiple objects may be charged to the group for each file when extended
-attributes are in use.
-See the
-.Sy userobjused Ns @ Ns Em user
-property for more information.
-.Pp
-Unprivileged users can only access their own groups' space usage.
-The root user, or a user who has been granted the
-.Sy groupobjused
-privilege with
-.Nm zfs Cm allow ,
-can access all groups' usage.
-.It Sy projectused Ns @ Ns Em project
-The amount of space consumed by the specified project in this dataset.
-Project is identified via the project identifier (ID) that is object-based
-numeral attribute.
-An object can inherit the project ID from its parent object (if the
-parent has the flag of inherit project ID that can be set and changed via
-.Nm zfs project Fl s )
-when being created.
-The privileged user can set and change object's project
-ID via
-.Nm zfs project Fl s
-anytime.
-Space is charged to the project of each file, as displayed by
-.Nm zfs project .
-See the
-.Sy userused Ns @ Ns Em user
-property for more information.
-.Pp
-The root user, or a user who has been granted the
-.Sy projectused
-privilege with
-.Nm zfs allow ,
-can access all projects' usage.
-.It Sy projectobjused Ns @ Ns Em project
-The
-.Sy projectobjused
-is similar to
-.Sy projectused
-but instead it counts the number of objects consumed by project.
-When the property
-.Sy xattr=on
-is set on a fileset, ZFS will create additional objects per-file to store
-extended attributes.
-These additional objects are reflected in the
-.Sy projectobjused
-value and are counted against the project's
-.Sy projectobjquota .
-See the
-.Sy userobjused Ns @ Ns Em user
-property for more information.
-.Pp
-The root user, or a user who has been granted the
-.Sy projectobjused
-privilege with
-.Nm zfs allow ,
-can access all projects' objects usage.
-.It Sy volblocksize
-For volumes, specifies the block size of the volume.
-The
-.Sy blocksize
-cannot be changed once the volume has been written, so it should be set at
-volume creation time.
-The default
-.Sy blocksize
-for volumes is 8 Kbytes.
-Any power of 2 from 512 bytes to 128 Kbytes is valid.
-.Pp
-This property can also be referred to by its shortened column name,
-.Sy volblock .
-.It Sy written
-The amount of space
-.Sy referenced
-by this dataset, that was written since the previous snapshot
-.Pq i.e. that is not referenced by the previous snapshot .
-.It Sy written Ns @ Ns Em snapshot
-The amount of
-.Sy referenced
-space written to this dataset since the specified snapshot.
-This is the space that is referenced by this dataset but was not referenced by
-the specified snapshot.
-.Pp
-The
-.Em snapshot
-may be specified as a short snapshot name
-.Po just the part after the
-.Sy @
-.Pc ,
-in which case it will be interpreted as a snapshot in the same filesystem as
-this dataset.
-The
-.Em snapshot
-may be a full snapshot name
-.Po Em filesystem Ns @ Ns Em snapshot Pc ,
-which for clones may be a snapshot in the origin's filesystem
-.Pq or the origin of the origin's filesystem, etc.
-.El
-.Pp
-The following native properties can be used to change the behavior of a ZFS
-dataset.
-.Bl -tag -width ""
-.It Xo
-.Sy aclinherit Ns = Ns Sy discard Ns | Ns Sy noallow Ns | Ns
-.Sy restricted Ns | Ns Sy passthrough Ns | Ns Sy passthrough-x
-.Xc
-Controls how ACEs are inherited when files and directories are created.
-.Bl -tag -width "passthrough-x"
-.It Sy discard
-does not inherit any ACEs.
-.It Sy noallow
-only inherits inheritable ACEs that specify
-.Qq deny
-permissions.
-.It Sy restricted
-default, removes the
-.Sy write_acl
-and
-.Sy write_owner
-permissions when the ACE is inherited.
-.It Sy passthrough
-inherits all inheritable ACEs without any modifications.
-.It Sy passthrough-x
-same meaning as
-.Sy passthrough ,
-except that the
-.Sy owner@ ,
-.Sy group@ ,
-and
-.Sy everyone@
-ACEs inherit the execute permission only if the file creation mode also requests
-the execute bit.
-.El
-.Pp
-When the property value is set to
-.Sy passthrough ,
-files are created with a mode determined by the inheritable ACEs.
-If no inheritable ACEs exist that affect the mode, then the mode is set in
-accordance to the requested mode from the application.
-.It Xo
-.Sy aclmode Ns = Ns Sy discard Ns | Ns Sy groupmask Ns | Ns
-.Sy passthrough Ns | Ns Sy restricted
-.Xc
-Controls how an ACL is modified during
-.Xr chmod 2
-and how inherited ACEs are modified by the file creation mode.
-.Bl -tag -width "passthrough"
-.It Sy discard
-default, deletes all ACEs except for those representing the mode of the file or
-directory requested by
-.Xr chmod 2 .
-.It Sy groupmask
-reduces permissions granted by all
-.Sy ALLOW
-entries found in the ACL such that they are no greater than the group
-permissions specified by the mode.
-.It Sy passthrough
-indicates that no changes are made to the ACL other than creating or updating
-the necessary ACEs to represent the new mode of the file or directory.
-.It Sy restricted
-causes the
-.Xr chmod 2
-operation to return an error when used on any file or directory which has a
-non-trivial ACL, with entries in addition to those that represent the mode.
-.El
-.Pp
-.Xr chmod 2
-is required to change the set user ID, set group ID, or sticky bit on a file or
-directory, as they do not have equivalent ACEs.
-In order to use
-.Xr chmod 2
-on a file or directory with a non-trivial ACL when
-.Sy aclmode
-is set to
-.Sy restricted ,
-you must first remove all ACEs except for those that represent the current mode.
-.It Sy atime Ns = Ns Sy on Ns | Ns Sy off
-Controls whether the access time for files is updated when they are read.
-Turning this property off avoids producing write traffic when reading files and
-can result in significant performance gains, though it might confuse mailers
-and other similar utilities.
-The default value is
-.Sy on .
-.It Sy canmount Ns = Ns Sy on Ns | Ns Sy off Ns | Ns Sy noauto
-If this property is set to
-.Sy off ,
-the file system cannot be mounted, and is ignored by
-.Nm zfs Cm mount Fl a .
-Setting this property to
-.Sy off
-is similar to setting the
-.Sy mountpoint
-property to
-.Sy none ,
-except that the dataset still has a normal
-.Sy mountpoint
-property, which can be inherited.
-Setting this property to
-.Sy off
-allows datasets to be used solely as a mechanism to inherit properties.
-One example of setting
-.Sy canmount Ns = Ns Sy off
-is to have two datasets with the same
-.Sy mountpoint ,
-so that the children of both datasets appear in the same directory, but might
-have different inherited characteristics.
-.Pp
-When set to
-.Sy noauto ,
-a dataset can only be mounted and unmounted explicitly.
-The dataset is not mounted automatically when the dataset is created or
-imported, nor is it mounted by the
-.Nm zfs Cm mount Fl a
-command or unmounted by the
-.Nm zfs Cm unmount Fl a
-command.
-.Pp
-This property is not inherited.
-.It Xo
-.Sy checksum Ns = Ns Sy on Ns | Ns Sy off Ns | Ns Sy fletcher2 Ns | Ns
-.Sy fletcher4 Ns | Ns Sy sha256 Ns | Ns Sy noparity Ns | Ns
-.Sy sha512 Ns | Ns Sy skein Ns | Ns Sy edonr
-.Xc
-Controls the checksum used to verify data integrity.
-The default value is
-.Sy on ,
-which automatically selects an appropriate algorithm
-.Po currently,
-.Sy fletcher4 ,
-but this may change in future releases
-.Pc .
-The value
-.Sy off
-disables integrity checking on user data.
-The value
-.Sy noparity
-not only disables integrity but also disables maintaining parity for user data.
-This setting is used internally by a dump device residing on a RAID-Z pool and
-should not be used by any other dataset.
-Disabling checksums is
-.Sy NOT
-a recommended practice.
-.Pp
-The
-.Sy sha512 ,
-.Sy skein ,
-and
-.Sy edonr
-checksum algorithms require enabling the appropriate features on the pool.
-Please see
-.Xr zpool-features 5
-for more information on these algorithms.
-.Pp
-Changing this property affects only newly-written data.
-.It Xo
-.Sy compression Ns = Ns Sy on Ns | Ns Sy off Ns | Ns Sy gzip Ns | Ns
-.Sy gzip- Ns Em N Ns | Ns Sy lz4 Ns | Ns Sy lzjb Ns | Ns Sy zle
-.Xc
-Controls the compression algorithm used for this dataset.
-.Pp
-Setting compression to
-.Sy on
-indicates that the current default compression algorithm should be used.
-The default balances compression and decompression speed, with compression ratio
-and is expected to work well on a wide variety of workloads.
-Unlike all other settings for this property,
-.Sy on
-does not select a fixed compression type.
-As new compression algorithms are added to ZFS and enabled on a pool, the
-default compression algorithm may change.
-The current default compression algorithm is either
-.Sy lzjb
-or, if the
-.Sy lz4_compress
-feature is enabled,
-.Sy lz4 .
-.Pp
-The
-.Sy lz4
-compression algorithm is a high-performance replacement for the
-.Sy lzjb
-algorithm.
-It features significantly faster compression and decompression, as well as a
-moderately higher compression ratio than
-.Sy lzjb ,
-but can only be used on pools with the
-.Sy lz4_compress
-feature set to
-.Sy enabled .
-See
-.Xr zpool-features 5
-for details on ZFS feature flags and the
-.Sy lz4_compress
-feature.
-.Pp
-The
-.Sy lzjb
-compression algorithm is optimized for performance while providing decent data
-compression.
-.Pp
-The
-.Sy gzip
-compression algorithm uses the same compression as the
-.Xr gzip 1
-command.
-You can specify the
-.Sy gzip
-level by using the value
-.Sy gzip- Ns Em N ,
-where
-.Em N
-is an integer from 1
-.Pq fastest
-to 9
-.Pq best compression ratio .
-Currently,
-.Sy gzip
-is equivalent to
-.Sy gzip-6
-.Po which is also the default for
-.Xr gzip 1
-.Pc .
-.Pp
-The
-.Sy zle
-compression algorithm compresses runs of zeros.
-.Pp
-This property can also be referred to by its shortened column name
-.Sy compress .
-Changing this property affects only newly-written data.
-.It Sy copies Ns = Ns Sy 1 Ns | Ns Sy 2 Ns | Ns Sy 3
-Controls the number of copies of data stored for this dataset.
-These copies are in addition to any redundancy provided by the pool, for
-example, mirroring or RAID-Z.
-The copies are stored on different disks, if possible.
-The space used by multiple copies is charged to the associated file and dataset,
-changing the
-.Sy used
-property and counting against quotas and reservations.
-.Pp
-Changing this property only affects newly-written data.
-Therefore, set this property at file system creation time by using the
-.Fl o Sy copies Ns = Ns Ar N
-option.
-.It Sy devices Ns = Ns Sy on Ns | Ns Sy off
-Controls whether device nodes can be opened on this file system.
-The default value is
-.Sy on .
-.It Xo
-.Sy encryption Ns = Ns Sy on Ns | Ns Sy off Ns | Ns Sy aes-128-ccm Ns | Ns
-.Sy aes-192-ccm Ns | Ns Sy aes-256-ccm Ns | Ns Sy aes-128-gcm Ns | Ns
-.Sy aes-192-gcm Ns | Ns Sy aes-256-gcm
-.Xc
-Controls the encryption cipher suite
-.Pq block cipher, key length, and mode
-used for this dataset.
-Requires the encryption feature to be enabled on the pool.
-Requires a
-.Sy keyformat
-to be set at dataset creation time.
-.Pp
-Selecting
-.Sy encryption Ns = Ns Sy on
-when creating a dataset indicates that the default encryption suite will be
-selected, which is currently
-.Sy aes-256-ccm .
-In order to provide consistent data protection, encryption must be specified at
-dataset creation time and it cannot be changed afterwards.
-.Pp
-For more details and caveats about encryption see the
-.Sx Encryption
-section.
-.It Sy keyformat Ns = Ns Sy raw Ns | Ns Sy hex Ns | Ns Sy passphrase
-Controls what format the user's encryption key will be provided as.
-This property is only set for encrypted datasets which are encryption roots.
-.Pp
-Raw keys and hex keys must be 32 bytes long
-.Pq regardless of the chosen encryption suite
-and must be randomly generated.
-A raw key can be generated with the following command:
-.Bd -literal
-# dd if=/dev/urandom of=/path/to/output/key bs=32 count=1
-.Ed
-.Pp
-Passphrases must be between 8 and 512 bytes long and will be processed through
-PBKDF2 before being used
-.Po see the
-.Nm pbkdf2iters
-property
-.Pc .
-Even though the encryption suite cannot be changed after dataset creation, the
-keyformat can be with
-.Nm Cm change-key .
-.It Sy keylocation Ns = Ns Sy prompt Ns | Ns Ar file://<absolute file path>
-Controls where the user's encryption key will be loaded from by default for
-commands such as
-.Nm Cm load-key
-and
-.Nm Cm mount Fl l .
-This property is only set for encrypted datasets which are encryption roots.
-If unspecified, the default is
-.Sy prompt .
-.Pp
-Even though the encryption suite cannot be changed after dataset creation, the
-keylocation can be with either
-.Nm Cm set
-or
-.Nm Cm change-key .
-If
-.Sy prompt
-is selected ZFS will ask for the key at the command prompt when
-it is required to access the encrypted data
-.Po see
-.Nm Cm load-key
-.Pc .
-This setting will also allow the key to be passed in via STDIN, but users
-should be careful not to place keys which should be kept secret on the
-command line.
-If a file URI is selected, the key will be loaded from the specified absolute
-file path.
-.It Sy exec Ns = Ns Sy on Ns | Ns Sy off
-Controls whether processes can be executed from within this file system.
-The default value is
-.Sy on .
-.It Sy filesystem_limit Ns = Ns Em count Ns | Ns Sy none
-Limits the number of filesystems and volumes that can exist under this point in
-the dataset tree.
-The limit is not enforced if the user is allowed to change the limit.
-Setting a
-.Sy filesystem_limit
-to
-.Sy on
-a descendent of a filesystem that already has a
-.Sy filesystem_limit
-does not override the ancestor's
-.Sy filesystem_limit ,
-but rather imposes an additional limit.
-This feature must be enabled to be used
-.Po see
-.Xr zpool-features 5
-.Pc .
-.It Sy special_small_blocks Ns = Ns Em size
-This value represents the threshold block size for including small file
-blocks into the special allocation class.
-Blocks smaller than or equal to this value will be assigned to the special
-allocation class while greater blocks will be assigned to the regular class.
-Valid values are zero or a power of two from 512B up to 128K.
-The default size is 0 which means no small file blocks will be allocated in
-the special class.
-.Pp
-Before setting this property, a special class vdev must be added to the
-pool.
-See
-.Xr zpool 1M
-for more details on the special allocation class.
-.It Sy mountpoint Ns = Ns Pa path Ns | Ns Sy none Ns | Ns Sy legacy
-Controls the mount point used for this file system.
-See the
-.Sx Mount Points
-section for more information on how this property is used.
-.Pp
-When the
-.Sy mountpoint
-property is changed for a file system, the file system and any children that
-inherit the mount point are unmounted.
-If the new value is
-.Sy legacy ,
-then they remain unmounted.
-Otherwise, they are automatically remounted in the new location if the property
-was previously
-.Sy legacy
-or
-.Sy none ,
-or if they were mounted before the property was changed.
-In addition, any shared file systems are unshared and shared in the new
-location.
-.It Sy nbmand Ns = Ns Sy on Ns | Ns Sy off
-Controls whether the file system should be mounted with
-.Sy nbmand
-.Pq Non Blocking mandatory locks .
-This is used for SMB clients.
-Changes to this property only take effect when the file system is umounted and
-remounted.
-See
-.Xr mount 1M
-for more information on
-.Sy nbmand
-mounts.
-.It Sy pbkdf2iters Ns = Ns Ar iterations
-Controls the number of PBKDF2 iterations that a
-.Sy passphrase
-encryption key should be run through when processing it into an encryption key.
-This property is only defined when encryption is enabled and a keyformat of
-.Sy passphrase
-is selected.
-The goal of PBKDF2 is to significantly increase the computational difficulty
-needed to brute force a user's passphrase.
-This is accomplished by forcing the attacker to run each passphrase through a
-computationally expensive hashing function many times before they arrive at the
-resulting key.
-A user who actually knows the passphrase will only have to pay this cost once.
-As CPUs become better at processing, this number should be raised to ensure that
-a brute force attack is still not possible.
-The current default is 350000 and the minimum is 100000.
-This property may be changed with
-.Nm Cm change-key .
-.It Sy primarycache Ns = Ns Sy all Ns | Ns Sy none Ns | Ns Sy metadata
-Controls what is cached in the primary cache
-.Pq ARC .
-If this property is set to
-.Sy all ,
-then both user data and metadata is cached.
-If this property is set to
-.Sy none ,
-then neither user data nor metadata is cached.
-If this property is set to
-.Sy metadata ,
-then only metadata is cached.
-The default value is
-.Sy all .
-.It Sy quota Ns = Ns Em size Ns | Ns Sy none
-Limits the amount of space a dataset and its descendents can consume.
-This property enforces a hard limit on the amount of space used.
-This includes all space consumed by descendents, including file systems and
-snapshots.
-Setting a quota on a descendent of a dataset that already has a quota does not
-override the ancestor's quota, but rather imposes an additional limit.
-.Pp
-Quotas cannot be set on volumes, as the
-.Sy volsize
-property acts as an implicit quota.
-.It Sy snapshot_limit Ns = Ns Em count Ns | Ns Sy none
-Limits the number of snapshots that can be created on a dataset and its
-descendents.
-Setting a
-.Sy snapshot_limit
-on a descendent of a dataset that already has a
-.Sy snapshot_limit
-does not override the ancestor's
-.Sy snapshot_limit ,
-but rather imposes an additional limit.
-The limit is not enforced if the user is allowed to change the limit.
-For example, this means that recursive snapshots taken from the global zone are
-counted against each delegated dataset within a zone.
-This feature must be enabled to be used
-.Po see
-.Xr zpool-features 5
-.Pc .
-.It Sy userquota@ Ns Em user Ns = Ns Em size Ns | Ns Sy none
-Limits the amount of space consumed by the specified user.
-User space consumption is identified by the
-.Sy userspace@ Ns Em user
-property.
-.Pp
-Enforcement of user quotas may be delayed by several seconds.
-This delay means that a user might exceed their quota before the system notices
-that they are over quota and begins to refuse additional writes with the
-.Er EDQUOT
-error message.
-See the
-.Nm zfs Cm userspace
-subcommand for more information.
-.Pp
-Unprivileged users can only access their own groups' space usage.
-The root user, or a user who has been granted the
-.Sy userquota
-privilege with
-.Nm zfs Cm allow ,
-can get and set everyone's quota.
-.Pp
-This property is not available on volumes, on file systems before version 4, or
-on pools before version 15.
-The
-.Sy userquota@ Ns Em ...
-properties are not displayed by
-.Nm zfs Cm get Sy all .
-The user's name must be appended after the
-.Sy @
-symbol, using one of the following forms:
-.Bl -bullet
-.It
-.Em POSIX name
-.Po for example,
-.Sy joe
-.Pc
-.It
-.Em POSIX numeric ID
-.Po for example,
-.Sy 789
-.Pc
-.It
-.Em SID name
-.Po for example,
-.Sy joe.smith@mydomain
-.Pc
-.It
-.Em SID numeric ID
-.Po for example,
-.Sy S-1-123-456-789
-.Pc
-.El
-.It Sy userobjquota@ Ns Em user Ns = Ns Em size Ns | Ns Sy none
-The
-.Sy userobjquota
-is similar to
-.Sy userquota
-but it limits the number of objects a user can create.
-Please refer to
-.Sy userobjused
-for more information about how objects are counted.
-.It Sy groupquota@ Ns Em group Ns = Ns Em size Ns | Ns Sy none
-Limits the amount of space consumed by the specified group.
-Group space consumption is identified by the
-.Sy groupused@ Ns Em group
-property.
-.Pp
-Unprivileged users can access only their own groups' space usage.
-The root user, or a user who has been granted the
-.Sy groupquota
-privilege with
-.Nm zfs Cm allow ,
-can get and set all groups' quotas.
-.It Sy groupobjquota@ Ns Em group Ns = Ns Em size Ns | Ns Sy none
-The
-.Sy groupobjquota
-is similar to
-.Sy groupquota
-but it limits the number of objects a group can consume.
-Please refer to
-.Sy userobjused
-for more information about how objects are counted.
-.It Sy projectquota@ Ns Em project Ns = Ns Em size Ns | Ns Sy none
-Limits the amount of space consumed by the specified project.
-Project space consumption is identified by the
-.Sy projectused@ Ns Em project
-property.
-Please refer to
-.Sy projectused
-for more information about how project is identified and set or changed.
-.Pp
-The root user, or a user who has been granted the
-.Sy projectquota
-privilege with
-.Nm zfs allow ,
-can access all projects' quotas.
-.It Sy projectobjquota@ Ns Em project Ns = Ns Em size Ns | Ns Sy none
-The
-.Sy projectobjquota
-is similar to
-.Sy projectquota
-but it limits the number of objects a project can consume.
-Please refer to
-.Sy userobjused
-for more information about how objects are counted.
-.It Sy readonly Ns = Ns Sy on Ns | Ns Sy off
-Controls whether this dataset can be modified.
-The default value is
-.Sy off .
-.Pp
-This property can also be referred to by its shortened column name,
-.Sy rdonly .
-.It Sy recordsize Ns = Ns Em size
-Specifies a suggested block size for files in the file system.
-This property is designed solely for use with database workloads that access
-files in fixed-size records.
-ZFS automatically tunes block sizes according to internal algorithms optimized
-for typical access patterns.
-.Pp
-For databases that create very large files but access them in small random
-chunks, these algorithms may be suboptimal.
-Specifying a
-.Sy recordsize
-greater than or equal to the record size of the database can result in
-significant performance gains.
-Use of this property for general purpose file systems is strongly discouraged,
-and may adversely affect performance.
-.Pp
-The size specified must be a power of two greater than or equal to 512 and less
-than or equal to 128 Kbytes.
-If the
-.Sy large_blocks
-feature is enabled on the pool, the size may be up to 1 Mbyte.
-See
-.Xr zpool-features 5
-for details on ZFS feature flags.
-.Pp
-Changing the file system's
-.Sy recordsize
-affects only files created afterward; existing files are unaffected.
-.Pp
-This property can also be referred to by its shortened column name,
-.Sy recsize .
-.It Sy redundant_metadata Ns = Ns Sy all Ns | Ns Sy most
-Controls what types of metadata are stored redundantly.
-ZFS stores an extra copy of metadata, so that if a single block is corrupted,
-the amount of user data lost is limited.
-This extra copy is in addition to any redundancy provided at the pool level
-.Pq e.g. by mirroring or RAID-Z ,
-and is in addition to an extra copy specified by the
-.Sy copies
-property
-.Pq up to a total of 3 copies .
-For example if the pool is mirrored,
-.Sy copies Ns = Ns 2 ,
-and
-.Sy redundant_metadata Ns = Ns Sy most ,
-then ZFS stores 6 copies of most metadata, and 4 copies of data and some
-metadata.
-.Pp
-When set to
-.Sy all ,
-ZFS stores an extra copy of all metadata.
-If a single on-disk block is corrupt, at worst a single block of user data
-.Po which is
-.Sy recordsize
-bytes long
-.Pc
-can be lost.
-.Pp
-When set to
-.Sy most ,
-ZFS stores an extra copy of most types of metadata.
-This can improve performance of random writes, because less metadata must be
-written.
-In practice, at worst about 100 blocks
-.Po of
-.Sy recordsize
-bytes each
-.Pc
-of user data can be lost if a single on-disk block is corrupt.
-The exact behavior of which metadata blocks are stored redundantly may change in
-future releases.
-.Pp
-The default value is
-.Sy all .
-.It Sy refquota Ns = Ns Em size Ns | Ns Sy none
-Limits the amount of space a dataset can consume.
-This property enforces a hard limit on the amount of space used.
-This hard limit does not include space used by descendents, including file
-systems and snapshots.
-.It Sy refreservation Ns = Ns Em size Ns | Ns Sy none Ns | Ns Sy auto
-The minimum amount of space guaranteed to a dataset, not including its
-descendents.
-When the amount of space used is below this value, the dataset is treated as if
-it were taking up the amount of space specified by
-.Sy refreservation .
-The
-.Sy refreservation
-reservation is accounted for in the parent datasets' space used, and counts
-against the parent datasets' quotas and reservations.
-.Pp
-If
-.Sy refreservation
-is set, a snapshot is only allowed if there is enough free pool space outside of
-this reservation to accommodate the current number of
-.Qq referenced
-bytes in the dataset.
-.Pp
-If
-.Sy refreservation
-is set to
-.Sy auto ,
-a volume is thick provisioned
-.Po or
-.Qq not sparse
-.Pc .
-.Sy refreservation Ns = Ns Sy auto
-is only supported on volumes.
-See
-.Sy volsize
-in the
-.Sx Native Properties
-section for more information about sparse volumes.
-.Pp
-This property can also be referred to by its shortened column name,
-.Sy refreserv .
-.It Sy reservation Ns = Ns Em size Ns | Ns Sy none
-The minimum amount of space guaranteed to a dataset and its descendants.
-When the amount of space used is below this value, the dataset is treated as if
-it were taking up the amount of space specified by its reservation.
-Reservations are accounted for in the parent datasets' space used, and count
-against the parent datasets' quotas and reservations.
-.Pp
-This property can also be referred to by its shortened column name,
-.Sy reserv .
-.It Sy secondarycache Ns = Ns Sy all Ns | Ns Sy none Ns | Ns Sy metadata
-Controls what is cached in the secondary cache
-.Pq L2ARC .
-If this property is set to
-.Sy all ,
-then both user data and metadata is cached.
-If this property is set to
-.Sy none ,
-then neither user data nor metadata is cached.
-If this property is set to
-.Sy metadata ,
-then only metadata is cached.
-The default value is
-.Sy all .
-.It Sy setuid Ns = Ns Sy on Ns | Ns Sy off
-Controls whether the setuid bit is respected for the file system.
-The default value is
-.Sy on .
-.It Sy sharesmb Ns = Ns Sy on Ns | Ns Sy off Ns | Ns Em opts
-Controls whether the file system is shared via SMB, and what options are to be
-used.
-A file system with the
-.Sy sharesmb
-property set to
-.Sy off
-is managed through traditional tools such as
-.Xr sharemgr 1M .
-Otherwise, the file system is automatically shared and unshared with the
-.Nm zfs Cm share
-and
-.Nm zfs Cm unshare
-commands.
-If the property is set to
-.Sy on ,
-the
-.Xr sharemgr 1M
-command is invoked with no options.
-Otherwise, the
-.Xr sharemgr 1M
-command is invoked with options equivalent to the contents of this property.
-.Pp
-Because SMB shares requires a resource name, a unique resource name is
-constructed from the dataset name.
-The constructed name is a copy of the dataset name except that the characters in
-the dataset name, which would be invalid in the resource name, are replaced with
-underscore
-.Pq Sy _
-characters.
-A pseudo property
-.Qq name
-is also supported that allows you to replace the data set name with a specified
-name.
-The specified name is then used to replace the prefix dataset in the case of
-inheritance.
-For example, if the dataset
-.Em data/home/john
-is set to
-.Sy name Ns = Ns Sy john ,
-then
-.Em data/home/john
-has a resource name of
-.Sy john .
-If a child dataset
-.Em data/home/john/backups
-is shared, it has a resource name of
-.Sy john_backups .
-.Pp
-When SMB shares are created, the SMB share name appears as an entry in the
-.Pa .zfs/shares
-directory.
-You can use the
-.Nm ls
-or
-.Nm chmod
-command to display the share-level ACLs on the entries in this directory.
-.Pp
-When the
-.Sy sharesmb
-property is changed for a dataset, the dataset and any children inheriting the
-property are re-shared with the new options, only if the property was previously
-set to
-.Sy off ,
-or if they were shared before the property was changed.
-If the new property is set to
-.Sy off ,
-the file systems are unshared.
-.It Sy sharenfs Ns = Ns Sy on Ns | Ns Sy off Ns | Ns Em opts
-Controls whether the file system is shared via NFS, and what options are to be
-used.
-A file system with a
-.Sy sharenfs
-property of
-.Sy off
-is managed through traditional tools such as
-.Xr share 1M ,
-.Xr unshare 1M ,
-and
-.Xr dfstab 4 .
-Otherwise, the file system is automatically shared and unshared with the
-.Nm zfs Cm share
-and
-.Nm zfs Cm unshare
-commands.
-If the property is set to
-.Sy on ,
-.Xr share 1M
-command is invoked with no options.
-Otherwise, the
-.Xr share 1M
-command is invoked with options equivalent to the contents of this property.
-.Pp
-When the
-.Sy sharenfs
-property is changed for a dataset, the dataset and any children inheriting the
-property are re-shared with the new options, only if the property was previously
-.Sy off ,
-or if they were shared before the property was changed.
-If the new property is
-.Sy off ,
-the file systems are unshared.
-.It Sy logbias Ns = Ns Sy latency Ns | Ns Sy throughput
-Provide a hint to ZFS about handling of synchronous requests in this dataset.
-If
-.Sy logbias
-is set to
-.Sy latency
-.Pq the default ,
-ZFS will use pool log devices
-.Pq if configured
-to handle the requests at low latency.
-If
-.Sy logbias
-is set to
-.Sy throughput ,
-ZFS will not use configured pool log devices.
-ZFS will instead optimize synchronous operations for global pool throughput and
-efficient use of resources.
-.It Sy snapdir Ns = Ns Sy hidden Ns | Ns Sy visible
-Controls whether the
-.Pa .zfs
-directory is hidden or visible in the root of the file system as discussed in
-the
-.Sx Snapshots
-section.
-The default value is
-.Sy hidden .
-.It Sy sync Ns = Ns Sy standard Ns | Ns Sy always Ns | Ns Sy disabled
-Controls the behavior of synchronous requests
-.Pq e.g. fsync, O_DSYNC .
-.Sy standard
-is the
-POSIX
-specified behavior of ensuring all synchronous requests are written to stable
-storage and all devices are flushed to ensure data is not cached by device
-controllers
-.Pq this is the default .
-.Sy always
-causes every file system transaction to be written and flushed before its
-system call returns.
-This has a large performance penalty.
-.Sy disabled
-disables synchronous requests.
-File system transactions are only committed to stable storage periodically.
-This option will give the highest performance.
-However, it is very dangerous as ZFS would be ignoring the synchronous
-transaction demands of applications such as databases or NFS.
-Administrators should only use this option when the risks are understood.
-.It Sy version Ns = Ns Em N Ns | Ns Sy current
-The on-disk version of this file system, which is independent of the pool
-version.
-This property can only be set to later supported versions.
-See the
-.Nm zfs Cm upgrade
-command.
-.It Sy volsize Ns = Ns Em size
-For volumes, specifies the logical size of the volume.
-By default, creating a volume establishes a reservation of equal size.
-For storage pools with a version number of 9 or higher, a
-.Sy refreservation
-is set instead.
-Any changes to
-.Sy volsize
-are reflected in an equivalent change to the reservation
-.Po or
-.Sy refreservation
-.Pc .
-The
-.Sy volsize
-can only be set to a multiple of
-.Sy volblocksize ,
-and cannot be zero.
-.Pp
-The reservation is kept equal to the volume's logical size to prevent unexpected
-behavior for consumers.
-Without the reservation, the volume could run out of space, resulting in
-undefined behavior or data corruption, depending on how the volume is used.
-These effects can also occur when the volume size is changed while it is in use
-.Pq particularly when shrinking the size .
-Extreme care should be used when adjusting the volume size.
-.Pp
-Though not recommended, a
-.Qq sparse volume
-.Po also known as
-.Qq thin provisioned
-.Pc
-can be created by specifying the
-.Fl s
-option to the
-.Nm zfs Cm create Fl V
-command, or by changing the value of the
-.Sy refreservation
-property
-.Po or
-.Sy reservation
-property on pool version 8 or earlier
-.Pc
-after the volume has been created.
-A
-.Qq sparse volume
-is a volume where the value of
-.Sy refreservation
-is less than the size of the volume plus the space required to store its
-metadata.
-Consequently, writes to a sparse volume can fail with
-.Er ENOSPC
-when the pool is low on space.
-For a sparse volume, changes to
-.Sy volsize
-are not reflected in the
-.Sy refreservation .
-A volume that is not sparse is said to be
-.Qq thick provisioned .
-A sparse volume can become thick provisioned by setting
-.Sy refreservation
-to
-.Sy auto .
-.It Sy vscan Ns = Ns Sy on Ns | Ns Sy off
-Controls whether regular files should be scanned for viruses when a file is
-opened and closed.
-In addition to enabling this property, the virus scan service must also be
-enabled for virus scanning to occur.
-The default value is
-.Sy off .
-.It Sy xattr Ns = Ns Sy on Ns | Ns Sy off
-Controls whether extended attributes are enabled for this file system.
-The default value is
-.Sy on .
-.It Sy zoned Ns = Ns Sy on Ns | Ns Sy off
-Controls whether the dataset is managed from a non-global zone.
-See the
-.Sx Zones
-section for more information.
-The default value is
-.Sy off .
-.El
-.Pp
-The following three properties cannot be changed after the file system is
-created, and therefore, should be set when the file system is created.
-If the properties are not set with the
-.Nm zfs Cm create
-or
-.Nm zpool Cm create
-commands, these properties are inherited from the parent dataset.
-If the parent dataset lacks these properties due to having been created prior to
-these features being supported, the new file system will have the default values
-for these properties.
-.Bl -tag -width ""
-.It Xo
-.Sy casesensitivity Ns = Ns Sy sensitive Ns | Ns
-.Sy insensitive Ns | Ns Sy mixed
-.Xc
-Indicates whether the file name matching algorithm used by the file system
-should be case-sensitive, case-insensitive, or allow a combination of both
-styles of matching.
-The default value for the
-.Sy casesensitivity
-property is
-.Sy sensitive .
-Traditionally,
-.Ux
-and
-POSIX
-file systems have case-sensitive file names.
-.Pp
-The
-.Sy mixed
-value for the
-.Sy casesensitivity
-property indicates that the file system can support requests for both
-case-sensitive and case-insensitive matching behavior.
-Currently, case-insensitive matching behavior on a file system that supports
-mixed behavior is limited to the SMB server product.
-For more information about the
-.Sy mixed
-value behavior, see the "ZFS Administration Guide".
-.It Xo
-.Sy normalization Ns = Ns Sy none Ns | Ns Sy formC Ns | Ns
-.Sy formD Ns | Ns Sy formKC Ns | Ns Sy formKD
-.Xc
-Indicates whether the file system should perform a
-.Sy unicode
-normalization of file names whenever two file names are compared, and which
-normalization algorithm should be used.
-File names are always stored unmodified, names are normalized as part of any
-comparison process.
-If this property is set to a legal value other than
-.Sy none ,
-and the
-.Sy utf8only
-property was left unspecified, the
-.Sy utf8only
-property is automatically set to
-.Sy on .
-The default value of the
-.Sy normalization
-property is
-.Sy none .
-This property cannot be changed after the file system is created.
-.It Sy utf8only Ns = Ns Sy on Ns | Ns Sy off
-Indicates whether the file system should reject file names that include
-characters that are not present in the
-.Sy UTF-8
-character code set.
-If this property is explicitly set to
-.Sy off ,
-the normalization property must either not be explicitly set or be set to
-.Sy none .
-The default value for the
-.Sy utf8only
-property is
-.Sy off .
-This property cannot be changed after the file system is created.
-.El
-.Pp
-The
-.Sy casesensitivity ,
-.Sy normalization ,
-and
-.Sy utf8only
-properties are also new permissions that can be assigned to non-privileged users
-by using the ZFS delegated administration feature.
-.Ss "Temporary Mount Point Properties"
-When a file system is mounted, either through
-.Xr mount 1M
-for legacy mounts or the
-.Nm zfs Cm mount
-command for normal file systems, its mount options are set according to its
-properties.
-The correlation between properties and mount options is as follows:
-.Bd -literal
- PROPERTY MOUNT OPTION
- devices devices/nodevices
- exec exec/noexec
- readonly ro/rw
- setuid setuid/nosetuid
- xattr xattr/noxattr
-.Ed
-.Pp
-In addition, these options can be set on a per-mount basis using the
-.Fl o
-option, without affecting the property that is stored on disk.
-The values specified on the command line override the values stored in the
-dataset.
-The
-.Sy nosuid
-option is an alias for
-.Sy nodevices Ns \&, Ns Sy nosetuid .
-These properties are reported as
-.Qq temporary
-by the
-.Nm zfs Cm get
-command.
-If the properties are changed while the dataset is mounted, the new setting
-overrides any temporary settings.
-.Ss "User Properties"
-In addition to the standard native properties, ZFS supports arbitrary user
-properties.
-User properties have no effect on ZFS behavior, but applications or
-administrators can use them to annotate datasets
-.Pq file systems, volumes, and snapshots .
-.Pp
-User property names must contain a colon
-.Pq Qq Sy \&:
-character to distinguish them from native properties.
-They may contain lowercase letters, numbers, and the following punctuation
-characters: colon
-.Pq Qq Sy \&: ,
-dash
-.Pq Qq Sy - ,
-period
-.Pq Qq Sy \&. ,
-and underscore
-.Pq Qq Sy _ .
-The expected convention is that the property name is divided into two portions
-such as
-.Em module Ns \&: Ns Em property ,
-but this namespace is not enforced by ZFS.
-User property names can be at most 256 characters, and cannot begin with a dash
-.Pq Qq Sy - .
-.Pp
-When making programmatic use of user properties, it is strongly suggested to use
-a reversed
-.Sy DNS
-domain name for the
-.Em module
-component of property names to reduce the chance that two
-independently-developed packages use the same property name for different
-purposes.
-.Pp
-The values of user properties are arbitrary strings, are always inherited, and
-are never validated.
-All of the commands that operate on properties
-.Po Nm zfs Cm list ,
-.Nm zfs Cm get ,
-.Nm zfs Cm set ,
-and so forth
-.Pc
-can be used to manipulate both native properties and user properties.
-Use the
-.Nm zfs Cm inherit
-command to clear a user property.
-If the property is not defined in any parent dataset, it is removed entirely.
-Property values are limited to 8192 bytes.
-.Ss ZFS Volumes as Swap or Dump Devices
-During an initial installation a swap device and dump device are created on ZFS
-volumes in the ZFS root pool.
-By default, the swap area size is based on 1/2 the size of physical memory up to
-2 Gbytes.
-The size of the dump device depends on the kernel's requirements at installation
-time.
-Separate ZFS volumes must be used for the swap area and dump devices.
-Do not swap to a file on a ZFS file system.
-A ZFS swap file configuration is not supported.
-.Pp
-If you need to change your swap area or dump device after the system is
-installed or upgraded, use the
-.Xr swap 1M
-and
-.Xr dumpadm 1M
-commands.
-.Ss "Encryption"
-Enabling the
-.Sy encryption
-feature allows for the creation of encrypted filesystems and volumes.
-ZFS will encrypt all user data including file and zvol data, file attributes,
-ACLs, permission bits, directory listings, FUID mappings, and userused/groupused
-data.
-ZFS
-will not encrypt metadata related to the pool structure, including dataset
-names, dataset hierarchy, file size, file holes, and dedup tables.
-Key rotation is managed internally by the ZFS kernel module and changing the
-user's key does not require re-encrypting the entire dataset.
-Datasets can be scrubbed, resilvered, renamed, and deleted without the
-encryption keys being loaded
-.Po see the
-.Nm Cm load-key
-subcommand for more info on key loading
-.Pc .
-.Pp
-Creating an encrypted dataset requires specifying the
-.Sy encryption
-and
-.Sy keyformat
-properties at creation time, along with an optional
-.Sy keylocation
-and
-.Sy pbkdf2iters .
-After entering an encryption key, the created
-dataset will become an encryption root.
-Any descendant datasets will inherit their encryption key from the encryption
-root by default, meaning that loading, unloading, or changing the key for the
-encryption root will implicitly do the same for all inheriting datasets.
-If this inheritance is not desired, simply supply a
-.Sy keyformat
-when creating the child dataset or use
-.Nm Cm change-key
-to break an existing relationship, creating a new encryption root on the child.
-Note that the child's
-.Sy keyformat
-may match that of the parent while still creating a new encryption root, and
-that changing the
-.Sy encryption
-property alone does not create a new encryption root; this would simply use a
-different cipher suite with the same key as its encryption root.
-The one exception is that clones will always use their origin's encryption key.
-As a result of this exception, some encryption-related properties (namely
-.Sy keystatus ,
-.Sy keyformat ,
-.Sy keylocation ,
-and
-.Sy pbkdf2iters )
-do not inherit like other ZFS properties and instead use the value determined
-by their encryption root.
-Encryption root inheritance can be tracked via the read-only
-.Sy encryptionroot
-property.
-.Pp
-Encryption changes the behavior of a few ZFS operations.
-Encryption is applied after compression so compression ratios are preserved.
-Normally checksums in ZFS are 256 bits long, but for encrypted data the checksum
-is 128 bits of the user-chosen checksum and 128 bits of MAC from the encryption
-suite, which provides additional protection against maliciously altered data.
-Deduplication is still possible with encryption enabled but for security,
-datasets will only dedup against themselves, their snapshots, and their clones.
-.Pp
-There are a few limitations on encrypted datasets.
-Encrypted data cannot be embedded via the
-.Sy embedded_data
-feature.
-Encrypted datasets may not have
-.Sy copies Ns = Ns Sy 3
-since the implementation stores some encryption metadata where the third copy
-would normally be.
-Since compression is applied before encryption datasets may be vulnerable to a
-CRIME-like attack if applications accessing the data allow for it.
-Deduplication with encryption will leak information about which blocks are
-equivalent in a dataset and will incur an extra CPU cost per block written.
-.Sh SUBCOMMANDS
-All subcommands that modify state are logged persistently to the pool in their
-original form.
-.Bl -tag -width ""
-.It Nm Fl \&?
-Displays a help message.
-.It Xo
-.Nm
-.Cm create
-.Op Fl Pnpv
-.Oo Fl o Ar property Ns = Ns Ar value Oc Ns ...
-.Ar filesystem
-.Xc
-Creates a new ZFS file system.
-The file system is automatically mounted according to the
-.Sy mountpoint
-property inherited from the parent.
-.Bl -tag -width "-o"
-.It Fl o Ar property Ns = Ns Ar value
-Sets the specified property as if the command
-.Nm zfs Cm set Ar property Ns = Ns Ar value
-was invoked at the same time the dataset was created.
-Any editable ZFS property can also be set at creation time.
-Multiple
-.Fl o
-options can be specified.
-An error results if the same property is specified in multiple
-.Fl o
-options.
-.It Fl p
-Creates all the non-existing parent datasets.
-Datasets created in this manner are automatically mounted according to the
-.Sy mountpoint
-property inherited from their parent.
-Any property specified on the command line using the
-.Fl o
-option is ignored.
-If the target filesystem already exists, the operation completes successfully.
-.It Fl n
-Do a dry-run
-.Pq Qq No-op
-creation.
-No datasets will be created.
-This is useful in conjunction with the
-.Fl v
-or
-.Fl P
-flags to validate properties that are passed via
-.Fl o
-options and those implied by other options.
-The actual dataset creation can still fail due to insufficient privileges or
-available capacity.
-.It Fl P
-Print machine-parsable verbose information about the created dataset.
-Each line of output contains a key and one or two values, all separated by tabs.
-The
-.Sy create_ancestors
-and
-.Sy create
-keys have
-.Em filesystem
-as their only value.
-The
-.Sy create_ancestors
-key only appears if the
-.Fl p
-option is used.
-The
-.Sy property
-key has two values, a property name and that property's value.
-The
-.Sy property
-key may appear zero or more times, once for each property that will be set local
-to
-.Em filesystem
-due to the use of the
-.Fl o
-option.
-.It Fl v
-Print verbose information about the created dataset.
-.El
-.It Xo
-.Nm
-.Cm create
-.Op Fl ps
-.Op Fl b Ar blocksize
-.Oo Fl o Ar property Ns = Ns Ar value Oc Ns ...
-.Fl V Ar size Ar volume
-.Xc
-Creates a volume of the given size.
-The volume is exported as a block device in
-.Pa /dev/zvol/{dsk,rdsk}/path ,
-where
-.Em path
-is the name of the volume in the ZFS namespace.
-The size represents the logical size as exported by the device.
-By default, a reservation of equal size is created.
-.Pp
-.Ar size
-is automatically rounded up to the nearest 128 Kbytes to ensure that the volume
-has an integral number of blocks regardless of
-.Sy blocksize .
-.Bl -tag -width "-b"
-.It Fl b Ar blocksize
-Equivalent to
-.Fl o Sy volblocksize Ns = Ns Ar blocksize .
-If this option is specified in conjunction with
-.Fl o Sy volblocksize ,
-the resulting behavior is undefined.
-.It Fl o Ar property Ns = Ns Ar value
-Sets the specified property as if the
-.Nm zfs Cm set Ar property Ns = Ns Ar value
-command was invoked at the same time the dataset was created.
-Any editable ZFS property can also be set at creation time.
-Multiple
-.Fl o
-options can be specified.
-An error results if the same property is specified in multiple
-.Fl o
-options.
-.It Fl p
-Creates all the non-existing parent datasets.
-Datasets created in this manner are automatically mounted according to the
-.Sy mountpoint
-property inherited from their parent.
-Any property specified on the command line using the
-.Fl o
-option is ignored.
-If the target filesystem already exists, the operation completes successfully.
-.It Fl s
-Creates a sparse volume with no reservation.
-See
-.Sy volsize
-in the
-.Sx Native Properties
-section for more information about sparse volumes.
-.It Fl n
-Do a dry-run
-.Pq Qq No-op
-creation.
-No datasets will be created.
-This is useful in conjunction with the
-.Fl v
-or
-.Fl P
-flags to validate properties that are passed via
-.Fl o
-options and those implied by other options.
-The actual dataset creation can still fail due to insufficient privileges or
-available capacity.
-.It Fl P
-Print machine-parsable verbose information about the created dataset.
-Each line of output contains a key and one or two values, all separated by tabs.
-The
-.Sy create_ancestors
-and
-.Sy create
-keys have
-.Em volume
-as their only value.
-The
-.Sy create_ancestors
-key only appears if the
-.Fl p
-option is used.
-The
-.Sy property
-key has two values, a property name and that property's value.
-The
-.Sy property
-key may appear zero or more times, once for each property that will be set local
-to
-.Em volume
-due to the use of the
-.Fl b
-or
-.Fl o
-options, as well as
-.Sy refreservation
-if the volume is not sparse.
-.It Fl v
-Print verbose information about the created dataset.
-.El
-.It Xo
-.Nm
-.Cm destroy
-.Op Fl Rfnprv
-.Ar filesystem Ns | Ns Ar volume
-.Xc
-Destroys the given dataset.
-By default, the command unshares any file systems that are currently shared,
-unmounts any file systems that are currently mounted, and refuses to destroy a
-dataset that has active dependents
-.Pq children or clones .
-.Bl -tag -width "-R"
-.It Fl R
-Recursively destroy all dependents, including cloned file systems outside the
-target hierarchy.
-.It Fl f
-Force an unmount of any file systems using the
-.Nm unmount Fl f
-command.
-This option has no effect on non-file systems or unmounted file systems.
-.It Fl n
-Do a dry-run
-.Pq Qq No-op
-deletion.
-No data will be deleted.
-This is useful in conjunction with the
-.Fl v
-or
-.Fl p
-flags to determine what data would be deleted.
-.It Fl p
-Print machine-parsable verbose information about the deleted data.
-.It Fl r
-Recursively destroy all children.
-.It Fl v
-Print verbose information about the deleted data.
-.El
-.Pp
-Extreme care should be taken when applying either the
-.Fl r
-or the
-.Fl R
-options, as they can destroy large portions of a pool and cause unexpected
-behavior for mounted file systems in use.
-.It Xo
-.Nm
-.Cm destroy
-.Op Fl Rdnprv
-.Ar filesystem Ns | Ns Ar volume Ns @ Ns Ar snap Ns
-.Oo % Ns Ar snap Ns Oo , Ns Ar snap Ns Oo % Ns Ar snap Oc Oc Oc Ns ...
-.Xc
-The given snapshots are destroyed immediately if and only if the
-.Nm zfs Cm destroy
-command without the
-.Fl d
-option would have destroyed it.
-Such immediate destruction would occur, for example, if the snapshot had no
-clones and the user-initiated reference count were zero.
-.Pp
-If a snapshot does not qualify for immediate destruction, it is marked for
-deferred deletion.
-In this state, it exists as a usable, visible snapshot until both of the
-preconditions listed above are met, at which point it is destroyed.
-.Pp
-An inclusive range of snapshots may be specified by separating the first and
-last snapshots with a percent sign.
-The first and/or last snapshots may be left blank, in which case the
-filesystem's oldest or newest snapshot will be implied.
-.Pp
-Multiple snapshots
-.Pq or ranges of snapshots
-of the same filesystem or volume may be specified in a comma-separated list of
-snapshots.
-Only the snapshot's short name
-.Po the part after the
-.Sy @
-.Pc
-should be specified when using a range or comma-separated list to identify
-multiple snapshots.
-.Bl -tag -width "-R"
-.It Fl R
-Recursively destroy all clones of these snapshots, including the clones,
-snapshots, and children.
-If this flag is specified, the
-.Fl d
-flag will have no effect.
-.It Fl d
-Defer snapshot deletion.
-.It Fl n
-Do a dry-run
-.Pq Qq No-op
-deletion.
-No data will be deleted.
-This is useful in conjunction with the
-.Fl p
-or
-.Fl v
-flags to determine what data would be deleted.
-.It Fl p
-Print machine-parsable verbose information about the deleted data.
-.It Fl r
-Destroy
-.Pq or mark for deferred deletion
-all snapshots with this name in descendent file systems.
-.It Fl v
-Print verbose information about the deleted data.
-.Pp
-Extreme care should be taken when applying either the
-.Fl r
-or the
-.Fl R
-options, as they can destroy large portions of a pool and cause unexpected
-behavior for mounted file systems in use.
-.El
-.It Xo
-.Nm
-.Cm destroy
-.Ar filesystem Ns | Ns Ar volume Ns # Ns Ar bookmark
-.Xc
-The given bookmark is destroyed.
-.It Xo
-.Nm
-.Cm snapshot
-.Op Fl r
-.Oo Fl o Ar property Ns = Ns value Oc Ns ...
-.Ar filesystem Ns @ Ns Ar snapname Ns | Ns Ar volume Ns @ Ns Ar snapname Ns ...
-.Xc
-Creates snapshots with the given names.
-All previous modifications by successful system calls to the file system are
-part of the snapshots.
-Snapshots are taken atomically, so that all snapshots correspond to the same
-moment in time.
-See the
-.Sx Snapshots
-section for details.
-.Bl -tag -width "-o"
-.It Fl o Ar property Ns = Ns Ar value
-Sets the specified property; see
-.Nm zfs Cm create
-for details.
-.It Fl r
-Recursively create snapshots of all descendent datasets
-.El
-.It Xo
-.Nm
-.Cm rollback
-.Op Fl Rfr
-.Ar snapshot
-.Xc
-Roll back the given dataset to a previous snapshot.
-When a dataset is rolled back, all data that has changed since the snapshot is
-discarded, and the dataset reverts to the state at the time of the snapshot.
-By default, the command refuses to roll back to a snapshot other than the most
-recent one.
-In order to do so, all intermediate snapshots and bookmarks must be destroyed by
-specifying the
-.Fl r
-option.
-.Pp
-The
-.Fl rR
-options do not recursively destroy the child snapshots of a recursive snapshot.
-Only direct snapshots of the specified filesystem are destroyed by either of
-these options.
-To completely roll back a recursive snapshot, you must rollback the individual
-child snapshots.
-.Bl -tag -width "-R"
-.It Fl R
-Destroy any more recent snapshots and bookmarks, as well as any clones of those
-snapshots.
-.It Fl f
-Used with the
-.Fl R
-option to force an unmount of any clone file systems that are to be destroyed.
-.It Fl r
-Destroy any snapshots and bookmarks more recent than the one specified.
-.El
-.It Xo
-.Nm
-.Cm clone
-.Op Fl p
-.Oo Fl o Ar property Ns = Ns Ar value Oc Ns ...
-.Ar snapshot Ar filesystem Ns | Ns Ar volume
-.Xc
-Creates a clone of the given snapshot.
-See the
-.Sx Clones
-section for details.
-The target dataset can be located anywhere in the ZFS hierarchy, and is created
-as the same type as the original.
-.Bl -tag -width "-o"
-.It Fl o Ar property Ns = Ns Ar value
-Sets the specified property; see
-.Nm zfs Cm create
-for details.
-.It Fl p
-Creates all the non-existing parent datasets.
-Datasets created in this manner are automatically mounted according to the
-.Sy mountpoint
-property inherited from their parent.
-If the target filesystem or volume already exists, the operation completes
-successfully.
-.El
-.It Xo
-.Nm
-.Cm promote
-.Ar clone-filesystem
-.Xc
-Promotes a clone file system to no longer be dependent on its
-.Qq origin
-snapshot.
-This makes it possible to destroy the file system that the clone was created
-from.
-The clone parent-child dependency relationship is reversed, so that the origin
-file system becomes a clone of the specified file system.
-.Pp
-The snapshot that was cloned, and any snapshots previous to this snapshot, are
-now owned by the promoted clone.
-The space they use moves from the origin file system to the promoted clone, so
-enough space must be available to accommodate these snapshots.
-No new space is consumed by this operation, but the space accounting is
-adjusted.
-The promoted clone must not have any conflicting snapshot names of its own.
-The
-.Cm rename
-subcommand can be used to rename any conflicting snapshots.
-.It Xo
-.Nm
-.Cm rename
-.Op Fl f
-.Ar filesystem Ns | Ns Ar volume Ns | Ns Ar snapshot
-.Ar filesystem Ns | Ns Ar volume Ns | Ns Ar snapshot
-.Xc
-.It Xo
-.Nm
-.Cm rename
-.Op Fl fp
-.Ar filesystem Ns | Ns Ar volume
-.Ar filesystem Ns | Ns Ar volume
-.Xc
-Renames the given dataset.
-The new target can be located anywhere in the ZFS hierarchy, with the exception
-of snapshots.
-Snapshots can only be renamed within the parent file system or volume.
-When renaming a snapshot, the parent file system of the snapshot does not need
-to be specified as part of the second argument.
-Renamed file systems can inherit new mount points, in which case they are
-unmounted and remounted at the new mount point.
-.Bl -tag -width "-a"
-.It Fl f
-Force unmount any filesystems that need to be unmounted in the process.
-.It Fl p
-Creates all the nonexistent parent datasets.
-Datasets created in this manner are automatically mounted according to the
-.Sy mountpoint
-property inherited from their parent.
-.El
-.It Xo
-.Nm
-.Cm rename
-.Fl r
-.Ar snapshot Ar snapshot
-.Xc
-Recursively rename the snapshots of all descendent datasets.
-Snapshots are the only dataset that can be renamed recursively.
-.It Xo
-.Nm
-.Cm list
-.Op Fl r Ns | Ns Fl d Ar depth
-.Op Fl Hp
-.Oo Fl o Ar property Ns Oo , Ns Ar property Oc Ns ... Oc
-.Oo Fl s Ar property Oc Ns ...
-.Oo Fl S Ar property Oc Ns ...
-.Oo Fl t Ar type Ns Oo , Ns Ar type Oc Ns ... Oc
-.Oo Ar filesystem Ns | Ns Ar volume Ns | Ns Ar snapshot Oc Ns ...
-.Xc
-Lists the property information for the given datasets in tabular form.
-If specified, you can list property information by the absolute pathname or the
-relative pathname.
-By default, all file systems and volumes are displayed.
-Snapshots are displayed if the
-.Sy listsnaps
-property is
-.Sy on
-.Po the default is
-.Sy off
-.Pc .
-The following fields are displayed,
-.Sy name Ns \&, Ns Sy used Ns \&, Ns Sy available Ns \&, Ns Sy referenced Ns \&, Ns
-.Sy mountpoint .
-.Bl -tag -width "-H"
-.It Fl H
-Used for scripting mode.
-Do not print headers and separate fields by a single tab instead of arbitrary
-white space.
-.It Fl S Ar property
-Same as the
-.Fl s
-option, but sorts by property in descending order.
-.It Fl d Ar depth
-Recursively display any children of the dataset, limiting the recursion to
-.Ar depth .
-A
-.Ar depth
-of
-.Sy 1
-will display only the dataset and its direct children.
-.It Fl o Ar property
-A comma-separated list of properties to display.
-The property must be:
-.Bl -bullet
-.It
-One of the properties described in the
-.Sx Native Properties
-section
-.It
-A user property
-.It
-The value
-.Sy name
-to display the dataset name
-.It
-The value
-.Sy space
-to display space usage properties on file systems and volumes.
-This is a shortcut for specifying
-.Fl o Sy name Ns \&, Ns Sy avail Ns \&, Ns Sy used Ns \&, Ns Sy usedsnap Ns \&, Ns
-.Sy usedds Ns \&, Ns Sy usedrefreserv Ns \&, Ns Sy usedchild Fl t
-.Sy filesystem Ns \&, Ns Sy volume
-syntax.
-.El
-.It Fl p
-Display numbers in parsable
-.Pq exact
-values.
-.It Fl r
-Recursively display any children of the dataset on the command line.
-.It Fl s Ar property
-A property for sorting the output by column in ascending order based on the
-value of the property.
-The property must be one of the properties described in the
-.Sx Properties
-section, or the special value
-.Sy name
-to sort by the dataset name.
-Multiple properties can be specified at one time using multiple
-.Fl s
-property options.
-Multiple
-.Fl s
-options are evaluated from left to right in decreasing order of importance.
-The following is a list of sorting criteria:
-.Bl -bullet
-.It
-Numeric types sort in numeric order.
-.It
-String types sort in alphabetical order.
-.It
-Types inappropriate for a row sort that row to the literal bottom, regardless of
-the specified ordering.
-.El
-.Pp
-If no sorting options are specified the existing behavior of
-.Nm zfs Cm list
-is preserved.
-.It Fl t Ar type
-A comma-separated list of types to display, where
-.Ar type
-is one of
-.Sy filesystem ,
-.Sy snapshot ,
-.Sy volume ,
-.Sy bookmark ,
-or
-.Sy all .
-For example, specifying
-.Fl t Sy snapshot
-displays only snapshots.
-.El
-.It Xo
-.Nm
-.Cm set
-.Ar property Ns = Ns Ar value Oo Ar property Ns = Ns Ar value Oc Ns ...
-.Ar filesystem Ns | Ns Ar volume Ns | Ns Ar snapshot Ns ...
-.Xc
-Sets the property or list of properties to the given value(s) for each dataset.
-Only some properties can be edited.
-See the
-.Sx Properties
-section for more information on what properties can be set and acceptable
-values.
-Numeric values can be specified as exact values, or in a human-readable form
-with a suffix of
-.Sy B , K , M , G , T , P , E , Z
-.Po for bytes, kilobytes, megabytes, gigabytes, terabytes, petabytes, exabytes,
-or zettabytes, respectively
-.Pc .
-User properties can be set on snapshots.
-For more information, see the
-.Sx User Properties
-section.
-.It Xo
-.Nm
-.Cm get
-.Op Fl r Ns | Ns Fl d Ar depth
-.Op Fl Hp
-.Oo Fl o Ar field Ns Oo , Ns Ar field Oc Ns ... Oc
-.Oo Fl s Ar source Ns Oo , Ns Ar source Oc Ns ... Oc
-.Oo Fl t Ar type Ns Oo , Ns Ar type Oc Ns ... Oc
-.Cm all | Ar property Ns Oo , Ns Ar property Oc Ns ...
-.Ar filesystem Ns | Ns Ar volume Ns | Ns Ar snapshot Ns | Ns Ar bookmark Ns ...
-.Xc
-Displays properties for the given datasets.
-If no datasets are specified, then the command displays properties for all
-datasets on the system.
-For each property, the following columns are displayed:
-.Bd -literal
- name Dataset name
- property Property name
- value Property value
- source Property source. Can either be local, default,
- temporary, inherited, or none (-).
-.Ed
-.Pp
-All columns are displayed by default, though this can be controlled by using the
-.Fl o
-option.
-This command takes a comma-separated list of properties as described in the
-.Sx Native Properties
-and
-.Sx User Properties
-sections.
-.Pp
-The special value
-.Sy all
-can be used to display all properties that apply to the given dataset's type
-.Pq filesystem, volume, snapshot, or bookmark .
-.Bl -tag -width "-H"
-.It Fl H
-Display output in a form more easily parsed by scripts.
-Any headers are omitted, and fields are explicitly separated by a single tab
-instead of an arbitrary amount of space.
-.It Fl d Ar depth
-Recursively display any children of the dataset, limiting the recursion to
-.Ar depth .
-A depth of
-.Sy 1
-will display only the dataset and its direct children.
-.It Fl o Ar field
-A comma-separated list of columns to display.
-.Sy name Ns \&, Ns Sy property Ns \&, Ns Sy value Ns \&, Ns Sy source
-is the default value.
-.It Fl p
-Display numbers in parsable
-.Pq exact
-values.
-.It Fl r
-Recursively display properties for any children.
-.It Fl s Ar source
-A comma-separated list of sources to display.
-Those properties coming from a source other than those in this list are ignored.
-Each source must be one of the following:
-.Sy local ,
-.Sy default ,
-.Sy inherited ,
-.Sy temporary ,
-and
-.Sy none .
-The default value is all sources.
-.It Fl t Ar type
-A comma-separated list of types to display, where
-.Ar type
-is one of
-.Sy filesystem ,
-.Sy snapshot ,
-.Sy volume ,
-.Sy bookmark ,
-or
-.Sy all .
-.El
-.It Xo
-.Nm
-.Cm inherit
-.Op Fl rS
-.Ar property Ar filesystem Ns | Ns Ar volume Ns | Ns Ar snapshot Ns ...
-.Xc
-Clears the specified property, causing it to be inherited from an ancestor,
-restored to default if no ancestor has the property set, or with the
-.Fl S
-option reverted to the received value if one exists.
-See the
-.Sx Properties
-section for a listing of default values, and details on which properties can be
-inherited.
-.Bl -tag -width "-r"
-.It Fl r
-Recursively inherit the given property for all children.
-.It Fl S
-Revert the property to the received value if one exists; otherwise operate as
-if the
-.Fl S
-option was not specified.
-.El
-.It Xo
-.Nm
-.Cm remap
-.Ar filesystem Ns | Ns Ar volume
-.Xc
-Remap the indirect blocks in the given filesystem or volume so that they no
-longer reference blocks on previously removed vdevs and we can eventually
-shrink the size of the indirect mapping objects for the previously removed
-vdevs. Note that remapping all blocks might not be possible and that
-references from snapshots will still exist and cannot be remapped.
-.It Xo
-.Nm
-.Cm upgrade
-.Xc
-Displays a list of file systems that are not the most recent version.
-.It Xo
-.Nm
-.Cm upgrade
-.Fl v
-.Xc
-Displays a list of currently supported file system versions.
-.It Xo
-.Nm
-.Cm upgrade
-.Op Fl r
-.Op Fl V Ar version
-.Fl a | Ar filesystem
-.Xc
-Upgrades file systems to a new on-disk version.
-Once this is done, the file systems will no longer be accessible on systems
-running older versions of the software.
-.Nm zfs Cm send
-streams generated from new snapshots of these file systems cannot be accessed on
-systems running older versions of the software.
-.Pp
-In general, the file system version is independent of the pool version.
-See
-.Xr zpool 1M
-for information on the
-.Nm zpool Cm upgrade
-command.
-.Pp
-In some cases, the file system version and the pool version are interrelated and
-the pool version must be upgraded before the file system version can be
-upgraded.
-.Bl -tag -width "-V"
-.It Fl V Ar version
-Upgrade to the specified
-.Ar version .
-If the
-.Fl V
-flag is not specified, this command upgrades to the most recent version.
-This
-option can only be used to increase the version number, and only up to the most
-recent version supported by this software.
-.It Fl a
-Upgrade all file systems on all imported pools.
-.It Ar filesystem
-Upgrade the specified file system.
-.It Fl r
-Upgrade the specified file system and all descendent file systems.
-.El
-.It Xo
-.Nm
-.Cm userspace
-.Op Fl Hinp
-.Oo Fl o Ar field Ns Oo , Ns Ar field Oc Ns ... Oc
-.Oo Fl s Ar field Oc Ns ...
-.Oo Fl S Ar field Oc Ns ...
-.Oo Fl t Ar type Ns Oo , Ns Ar type Oc Ns ... Oc
-.Ar filesystem Ns | Ns Ar snapshot
-.Xc
-Displays space consumed by, and quotas on, each user in the specified filesystem
-or snapshot.
-This corresponds to the
-.Sy userused@ Ns Em user ,
-.Sy userobjused@ Ns Em user ,
-.Sy userquota@ Ns Em user,
-and
-.Sy userobjquota@ Ns Em user
-properties.
-.Bl -tag -width "-H"
-.It Fl H
-Do not print headers, use tab-delimited output.
-.It Fl S Ar field
-Sort by this field in reverse order.
-See
-.Fl s .
-.It Fl i
-Translate SID to POSIX ID.
-The POSIX ID may be ephemeral if no mapping exists.
-Normal POSIX interfaces
-.Po for example,
-.Xr stat 2 ,
-.Nm ls Fl l
-.Pc
-perform this translation, so the
-.Fl i
-option allows the output from
-.Nm zfs Cm userspace
-to be compared directly with those utilities.
-However,
-.Fl i
-may lead to confusion if some files were created by an SMB user before a
-SMB-to-POSIX name mapping was established.
-In such a case, some files will be owned by the SMB entity and some by the POSIX
-entity.
-However, the
-.Fl i
-option will report that the POSIX entity has the total usage and quota for both.
-.It Fl n
-Print numeric ID instead of user/group name.
-.It Fl o Ar field Ns Oo , Ns Ar field Oc Ns ...
-Display only the specified fields from the following set:
-.Sy type ,
-.Sy name ,
-.Sy used ,
-.Sy quota .
-The default is to display all fields.
-.It Fl p
-Use exact
-.Pq parsable
-numeric output.
-.It Fl s Ar field
-Sort output by this field.
-The
-.Fl s
-and
-.Fl S
-flags may be specified multiple times to sort first by one field, then by
-another.
-The default is
-.Fl s Sy type Fl s Sy name .
-.It Fl t Ar type Ns Oo , Ns Ar type Oc Ns ...
-Print only the specified types from the following set:
-.Sy all ,
-.Sy posixuser ,
-.Sy smbuser ,
-.Sy posixgroup ,
-.Sy smbgroup .
-The default is
-.Fl t Sy posixuser Ns \&, Ns Sy smbuser .
-The default can be changed to include group types.
-.El
-.It Xo
-.Nm
-.Cm groupspace
-.Op Fl Hinp
-.Oo Fl o Ar field Ns Oo , Ns Ar field Oc Ns ... Oc
-.Oo Fl s Ar field Oc Ns ...
-.Oo Fl S Ar field Oc Ns ...
-.Oo Fl t Ar type Ns Oo , Ns Ar type Oc Ns ... Oc
-.Ar filesystem Ns | Ns Ar snapshot
-.Xc
-Displays space consumed by, and quotas on, each group in the specified
-filesystem or snapshot.
-This subcommand is identical to
-.Nm zfs Cm userspace ,
-except that the default types to display are
-.Fl t Sy posixgroup Ns \&, Ns Sy smbgroup .
-.It Xo
-.Nm
-.Cm projectspace
-.Op Fl Hp
-.Oo Fl o Ar field Ns Oo , Ns Ar field Oc Ns ... Oc
-.Oo Fl s Ar field Oc Ns ...
-.Oo Fl S Ar field Oc Ns ...
-.Ar filesystem Ns | Ns Ar snapshot
-.Xc
-Displays space consumed by, and quotas on, each project in the specified
-filesystem or snapshot.
-This subcommand is identical to
-.Nm zfs Cm userspace ,
-except that the project identifier is numeral, not name.
-So need neither the option
-.Sy -i
-for SID to POSIX ID nor
-.Sy -n
-for numeric ID, nor
-.Sy -t
-for types.
-.It Xo
-.Nm
-.Cm project
-.Oo Fl d Ns | Ns Fl r Ns Oc
-.Ar file Ns | Ns Ar directory Ns ...
-.Xc
-List project identifier (ID) and inherit flag of files or directories.
-.Bl -tag -width "-d"
-.It Fl d
-Show the directory project ID and inherit flag, not its children.
-It will overwrite the former specified
-.Fl r
-option.
-.It Fl r
-Show on subdirectories recursively.
-It will overwrite the former specified
-.Fl d
-option.
-.El
-.It Xo
-.Nm
-.Cm project
-.Fl C
-.Oo Fl kr Ns Oc
-.Ar file Ns | Ns Ar directory Ns ...
-.Xc
-Clear project inherit flag and/or ID on the files or directories.
-.Bl -tag -width "-k"
-.It Fl k
-Keep the project ID unchanged.
-If not specified, the project ID will be reset as zero.
-.It Fl r
-Clear on subdirectories recursively.
-.El
-.It Xo
-.Nm
-.Cm project
-.Fl c
-.Oo Fl 0 Ns Oc
-.Oo Fl d Ns | Ns Fl r Ns Oc
-.Op Fl p Ar id
-.Ar file Ns | Ns Ar directory Ns ...
-.Xc
-Check project ID and inherit flag on the files or directories, report the
-entries without project inherit flag or with different project IDs from the
-specified (via
-.Fl p
-option) value or the target directory's project ID.
-.Bl -tag -width "-0"
-.It Fl 0
-Print file name with a trailing NUL instead of newline (by default), like
-"find -print0".
-.It Fl d
-Check the directory project ID and inherit flag, not its children.
-It will overwrite the former specified
-.Fl r
-option.
-.It Fl p
-Specify the referenced ID for comparing with the target files or directories'
-project IDs.
-If not specified, the target (top) directory's project ID will be used as the
-referenced one.
-.It Fl r
-Check on subdirectories recursively.
-It will overwrite the former specified
-.Fl d
-option.
-.El
-.It Xo
-.Nm
-.Cm project
-.Op Fl p Ar id
-.Oo Fl rs Ns Oc
-.Ar file Ns | Ns Ar directory Ns ...
-.Xc
-Set project ID and/or inherit flag on the files or directories.
-.Bl -tag -width "-p"
-.It Fl p
-Set the files' or directories' project ID with the given value.
-.It Fl r
-Set on subdirectories recursively.
-.It Fl s
-Set project inherit flag on the given files or directories.
-It is usually used for setup tree quota on the directory target with
-.Fl r
-option specified together.
-When setup tree quota, by default the directory's project ID will be set to
-all its descendants unless you specify the project ID via
-.Fl p
-option explicitly.
-.El
-.It Xo
-.Nm
-.Cm mount
-.Xc
-Displays all ZFS file systems currently mounted.
-.It Xo
-.Nm
-.Cm mount
-.Op Fl Olv
-.Op Fl o Ar options
-.Fl a | Ar filesystem
-.Xc
-Mounts ZFS file systems.
-.Bl -tag -width "-O"
-.It Fl O
-Perform an overlay mount.
-See
-.Xr mount 1M
-for more information.
-.It Fl a
-Mount all available ZFS file systems.
-Invoked automatically as part of the boot process.
-.It Fl l
-Load keys for encrypted filesystems as they are being mounted.
-This is equivalent to executing
-.Nm Cm load-key
-on each encryption root before mounting it.
-Note that if a filesystem has a
-.Sy keylocation
-of
-.Sy prompt
-this will cause the terminal to interactively block after asking for the key.
-.It Ar filesystem
-Mount the specified filesystem.
-.It Fl o Ar options
-An optional, comma-separated list of mount options to use temporarily for the
-duration of the mount.
-See the
-.Sx Temporary Mount Point Properties
-section for details.
-.It Fl v
-Report mount progress.
-.El
-.It Xo
-.Nm
-.Cm unmount
-.Op Fl f
-.Fl a | Ar filesystem Ns | Ns Ar mountpoint
-.Xc
-Unmounts currently mounted ZFS file systems.
-.Bl -tag -width "-a"
-.It Fl a
-Unmount all available ZFS file systems.
-Invoked automatically as part of the shutdown process.
-.It Ar filesystem Ns | Ns Ar mountpoint
-Unmount the specified filesystem.
-The command can also be given a path to a ZFS file system mount point on the
-system.
-.It Fl f
-Forcefully unmount the file system, even if it is currently in use.
-.El
-.It Xo
-.Nm
-.Cm share
-.Fl a | Ar filesystem
-.Xc
-Shares available ZFS file systems.
-.Bl -tag -width "-a"
-.It Fl a
-Share all available ZFS file systems.
-Invoked automatically as part of the boot process.
-.It Ar filesystem
-Share the specified filesystem according to the
-.Sy sharenfs
-and
-.Sy sharesmb
-properties.
-File systems are shared when the
-.Sy sharenfs
-or
-.Sy sharesmb
-property is set.
-.El
-.It Xo
-.Nm
-.Cm unshare
-.Fl a | Ar filesystem Ns | Ns Ar mountpoint
-.Xc
-Unshares currently shared ZFS file systems.
-.Bl -tag -width "-a"
-.It Fl a
-Unshare all available ZFS file systems.
-Invoked automatically as part of the shutdown process.
-.It Ar filesystem Ns | Ns Ar mountpoint
-Unshare the specified filesystem.
-The command can also be given a path to a ZFS file system shared on the system.
-.El
-.It Xo
-.Nm
-.Cm bookmark
-.Ar snapshot bookmark
-.Xc
-Creates a bookmark of the given snapshot.
-Bookmarks mark the point in time when the snapshot was created, and can be used
-as the incremental source for a
-.Nm zfs Cm send
-command.
-.Pp
-This feature must be enabled to be used.
-See
-.Xr zpool-features 5
-for details on ZFS feature flags and the
-.Sy bookmarks
-feature.
-.It Xo
-.Nm
-.Cm send
-.Op Fl DLPRbcehnpvw
-.Op Oo Fl I Ns | Ns Fl i Oc Ar snapshot
-.Ar snapshot
-.Xc
-Creates a stream representation of the second
-.Ar snapshot ,
-which is written to standard output.
-The output can be redirected to a file or to a different system
-.Po for example, using
-.Xr ssh 1
-.Pc .
-By default, a full stream is generated.
-.Bl -tag -width "-D"
-.It Fl D , -dedup
-Generate a deduplicated stream.
-Blocks which would have been sent multiple times in the send stream will only be
-sent once.
-The receiving system must also support this feature to receive a deduplicated
-stream.
-This flag can be used regardless of the dataset's
-.Sy dedup
-property, but performance will be much better if the filesystem uses a
-dedup-capable checksum
-.Po for example,
-.Sy sha256
-.Pc .
-.It Fl I Ar snapshot
-Generate a stream package that sends all intermediary snapshots from the first
-snapshot to the second snapshot.
-For example,
-.Fl I Em @a Em fs@d
-is similar to
-.Fl i Em @a Em fs@b Ns \&; Fl i Em @b Em fs@c Ns \&; Fl i Em @c Em fs@d .
-The incremental source may be specified as with the
-.Fl i
-option.
-.It Fl L , -large-block
-Generate a stream which may contain blocks larger than 128KB.
-This flag has no effect if the
-.Sy large_blocks
-pool feature is disabled, or if the
-.Sy recordsize
-property of this filesystem has never been set above 128KB.
-The receiving system must have the
-.Sy large_blocks
-pool feature enabled as well.
-See
-.Xr zpool-features 5
-for details on ZFS feature flags and the
-.Sy large_blocks
-feature.
-.It Fl P , -parsable
-Print machine-parsable verbose information about the stream package generated.
-.It Fl R , -replicate
-Generate a replication stream package, which will replicate the specified
-file system, and all descendent file systems, up to the named snapshot.
-When received, all properties, snapshots, descendent file systems, and clones
-are preserved.
-.Pp
-If the
-.Fl i
-or
-.Fl I
-flags are used in conjunction with the
-.Fl R
-flag, an incremental replication stream is generated.
-The current values of properties, and current snapshot and file system names are
-set when the stream is received.
-If the
-.Fl F
-flag is specified when this stream is received, snapshots and file systems that
-do not exist on the sending side are destroyed.
-If the
-.Fl R
-flag is used to send encrypted datasets, then
-.Fl w
-must also be specified.
-.It Fl e , -embed
-Generate a more compact stream by using
-.Sy WRITE_EMBEDDED
-records for blocks which are stored more compactly on disk by the
-.Sy embedded_data
-pool feature.
-This flag has no effect if the
-.Sy embedded_data
-feature is disabled.
-The receiving system must have the
-.Sy embedded_data
-feature enabled.
-If the
-.Sy lz4_compress
-feature is active on the sending system, then the receiving system must have
-that feature enabled as well.
-Datasets that are sent with this flag may not be received as an encrypted
-dataset, since encrypted datasets cannot use the
-.Sy embedded_data
-feature.
-See
-.Xr zpool-features 5
-for details on ZFS feature flags and the
-.Sy embedded_data
-feature.
-.It Fl b, -backup
-Sends only received property values whether or not they are overridden by local
-settings, but only if the dataset has ever been received.
-Use this option when you want
-.Nm zfs Cm receive
-to restore received properties backed up on the sent dataset and to avoid
-sending local settings that may have nothing to do with the source dataset,
-but only with how the data is backed up.
-.It Fl c , -compressed
-Generate a more compact stream by using compressed WRITE records for blocks
-which are compressed on disk and in memory
-.Po see the
-.Sy compression
-property for details
-.Pc .
-If the
-.Sy lz4_compress
-feature is active on the sending system, then the receiving system must have
-that feature enabled as well.
-If the
-.Sy large_blocks
-feature is enabled on the sending system but the
-.Fl L
-option is not supplied in conjunction with
-.Fl c ,
-then the data will be decompressed before sending so it can be split into
-smaller block sizes.
-.It Fl h, -holds
-Generate a stream package that includes any snapshot holds (created with the
-.Sy zfs hold
-command), and indicating to
-.Sy zfs receive
-that the holds be applied to the dataset on the receiving system.
-.It Fl i Ar snapshot
-Generate an incremental stream from the first
-.Ar snapshot
-.Pq the incremental source
-to the second
-.Ar snapshot
-.Pq the incremental target .
-The incremental source can be specified as the last component of the snapshot
-name
-.Po the
-.Sy @
-character and following
-.Pc
-and it is assumed to be from the same file system as the incremental target.
-.Pp
-If the destination is a clone, the source may be the origin snapshot, which must
-be fully specified
-.Po for example,
-.Em pool/fs@origin ,
-not just
-.Em @origin
-.Pc .
-.It Fl n , -dryrun
-Do a dry-run
-.Pq Qq No-op
-send.
-Do not generate any actual send data.
-This is useful in conjunction with the
-.Fl v
-or
-.Fl P
-flags to determine what data will be sent.
-In this case, the verbose output will be written to standard output
-.Po contrast with a non-dry-run, where the stream is written to standard output
-and the verbose output goes to standard error
-.Pc .
-.It Fl p , -props
-Include the dataset's properties in the stream.
-This flag is implicit when
-.Fl R
-is specified.
-The receiving system must also support this feature.
-Sends of encrypted datasets must use
-.Fl w
-when using this flag.
-.It Fl w , -raw
-For encrypted datasets, send data exactly as it exists on disk.
-This allows backups to be taken even if encryption keys are not currently
-loaded.
-The backup may then be received on an untrusted machine since that machine will
-not have the encryption keys to read the protected data or alter it without
-being detected.
-Upon being received, the dataset will have the same encryption keys as it did
-on the send side, although the
-.Sy keylocation
-property will be defaulted to
-.Sy prompt
-if not otherwise provided.
-For unencrypted datasets, this flag will be equivalent to
-.Fl Lec .
-Note that if you do not use this flag for sending encrypted datasets,
-data will be sent unencrypted and may be re-encrypted with a different
-encryption key on the receiving system, which will disable the ability
-to do a raw send to that system for incrementals.
-.It Fl v , -verbose
-Print verbose information about the stream package generated.
-This information includes a per-second report of how much data has been sent.
-.Pp
-The format of the stream is committed.
-You will be able to receive your streams on future versions of ZFS .
-.El
-.It Xo
-.Nm
-.Cm send
-.Op Fl Lcew
-.Op Fl i Ar snapshot Ns | Ns Ar bookmark
-.Ar filesystem Ns | Ns Ar volume Ns | Ns Ar snapshot
-.Xc
-Generate a send stream, which may be of a filesystem, and may be incremental
-from a bookmark.
-If the destination is a filesystem or volume, the pool must be read-only, or the
-filesystem must not be mounted.
-When the stream generated from a filesystem or volume is received, the default
-snapshot name will be
-.Qq --head-- .
-.Bl -tag -width "-L"
-.It Fl L , -large-block
-Generate a stream which may contain blocks larger than 128KB.
-This flag has no effect if the
-.Sy large_blocks
-pool feature is disabled, or if the
-.Sy recordsize
-property of this filesystem has never been set above 128KB.
-The receiving system must have the
-.Sy large_blocks
-pool feature enabled as well.
-See
-.Xr zpool-features 5
-for details on ZFS feature flags and the
-.Sy large_blocks
-feature.
-.It Fl c , -compressed
-Generate a more compact stream by using compressed WRITE records for blocks
-which are compressed on disk and in memory
-.Po see the
-.Sy compression
-property for details
-.Pc .
-If the
-.Sy lz4_compress
-feature is active on the sending system, then the receiving system must have
-that feature enabled as well.
-If the
-.Sy large_blocks
-feature is enabled on the sending system but the
-.Fl L
-option is not supplied in conjunction with
-.Fl c ,
-then the data will be decompressed before sending so it can be split into
-smaller block sizes.
-.It Fl e , -embed
-Generate a more compact stream by using
-.Sy WRITE_EMBEDDED
-records for blocks which are stored more compactly on disk by the
-.Sy embedded_data
-pool feature.
-This flag has no effect if the
-.Sy embedded_data
-feature is disabled.
-The receiving system must have the
-.Sy embedded_data
-feature enabled.
-If the
-.Sy lz4_compress
-feature is active on the sending system, then the receiving system must have
-that feature enabled as well.
-Datasets that are sent with this flag may not be received as an encrypted
-dataset, since encrypted datasets cannot use the
-.Sy embedded_data
-feature.
-See
-.Xr zpool-features 5
-for details on ZFS feature flags and the
-.Sy embedded_data
-feature.
-.It Fl i Ar snapshot Ns | Ns Ar bookmark
-Generate an incremental send stream.
-The incremental source must be an earlier snapshot in the destination's history.
-It will commonly be an earlier snapshot in the destination's file system, in
-which case it can be specified as the last component of the name
-.Po the
-.Sy #
-or
-.Sy @
-character and following
-.Pc .
-.Pp
-If the incremental target is a clone, the incremental source can be the origin
-snapshot, or an earlier snapshot in the origin's filesystem, or the origin's
-origin, etc.
-.It Fl w , -raw
-For encrypted datasets, send data exactly as it exists on disk.
-This allows backups to be taken even if encryption keys are not currently
-loaded.
-The backup may then be received on an untrusted machine since that machine will
-not have the encryption keys to read the protected data or alter it without
-being detected.
-Upon being received, the dataset will have the same encryption keys as it did
-on the send side, although the
-.Sy keylocation
-property will be defaulted to
-.Sy prompt
-if not otherwise provided.
-For unencrypted datasets, this flag will be equivalent to
-.Fl Lec .
-Note that if you do not use this flag for sending encrypted datasets,
-data will be sent unencrypted and may be re-encrypted with a different
-encryption key on the receiving system, which will disable the ability
-to do a raw send to that system for incrementals.
-.El
-.It Xo
-.Nm
-.Cm send
-.Op Fl Penv
-.Fl t
-.Ar receive_resume_token
-.Xc
-Creates a send stream which resumes an interrupted receive.
-The
-.Ar receive_resume_token
-is the value of this property on the filesystem or volume that was being
-received into.
-See the documentation for
-.Sy zfs receive -s
-for more details.
-.It Xo
-.Nm
-.Cm receive
-.Op Fl Fhnsuv
-.Op Fl o Sy origin Ns = Ns Ar snapshot
-.Op Fl o Ar property Ns = Ns Ar value
-.Op Fl x Ar property
-.Ar filesystem Ns | Ns Ar volume Ns | Ns Ar snapshot
-.Xc
-.It Xo
-.Nm
-.Cm receive
-.Op Fl Fhnsuv
-.Op Fl d Ns | Ns Fl e
-.Op Fl o Sy origin Ns = Ns Ar snapshot
-.Op Fl o Ar property Ns = Ns Ar value
-.Op Fl x Ar property
-.Ar filesystem
-.Xc
-Creates a snapshot whose contents are as specified in the stream provided on
-standard input.
-If a full stream is received, then a new file system is created as well.
-Streams are created using the
-.Nm zfs Cm send
-subcommand, which by default creates a full stream.
-.Nm zfs Cm recv
-can be used as an alias for
-.Nm zfs Cm receive .
-.Pp
-If an incremental stream is received, then the destination file system must
-already exist, and its most recent snapshot must match the incremental stream's
-source.
-For
-.Sy zvols ,
-the destination device link is destroyed and recreated, which means the
-.Sy zvol
-cannot be accessed during the
-.Cm receive
-operation.
-.Pp
-When a snapshot replication package stream that is generated by using the
-.Nm zfs Cm send Fl R
-command is received, any snapshots that do not exist on the sending location are
-destroyed by using the
-.Nm zfs Cm destroy Fl d
-command.
-.Pp
-If
-.Fl o Em property Ns = Ns Ar value
-or
-.Fl x Em property
-is specified, it applies to the effective value of the property throughout
-the entire subtree of replicated datasets.
-Effective property values will be
-set (
-.Fl o
-) or inherited (
-.Fl x
-) on the topmost in the replicated subtree.
-In descendant datasets, if the property is set by the send stream, it will be
-overridden by forcing the property to be inherited from the top‐most file
-system.
-Received properties are retained in spite of being overridden and may be
-restored with
-.Nm zfs Cm inherit Fl S .
-Specifying
-.Fl o Sy origin Ns = Ns Em snapshot
-is a special case because, even if
-.Sy origin
-is a read-only property and cannot be set, it's allowed to receive the send
-stream as a clone of the given snapshot.
-.Pp
-Raw encrypted send streams (created with
-.Nm zfs Cm send Fl w
-) may only be received as is, and cannot be re-encrypted, decrypted, or
-recompressed by the receive process.
-Unencrypted streams can be received as encrypted datasets, either through
-inheritance or by specifying encryption parameters with the
-.Fl o
-options.
-Note that the
-.Sy keylocation
-property cannot be overridden to
-.Sy prompt
-during a receive.
-This is because the receive process itself is already using
-stdin for the send stream.
-Instead, the property can be overridden after the receive completes.
-.Pp
-The added security provided by raw sends adds some restrictions to the send
-and receive process.
-ZFS will not allow a mix of raw receives and non-raw receives.
-Specifically, any raw incremental receives that are attempted after
-a non-raw receive will fail.
-Non-raw receives do not have this restriction and, therefore, are always
-possible.
-Because of this, it is best practice to always use either raw sends for
-their security benefits or non-raw sends for their flexibility when working
-with encrypted datasets, but not a combination.
-.Pp
-The reason for this restriction stems from the inherent restrictions of the
-AEAD ciphers that ZFS uses to encrypt data.
-When using ZFS native encryption, each block of data is encrypted against
-a randomly generated number known as the "initialization vector" (IV),
-which is stored in the filesystem metadata.
-This number is required by the encryption algorithms whenever the data is to
-be decrypted.
-Together, all of the IVs provided for all of the blocks in a given snapshot
-are collectively called an "IV set".
-When ZFS performs a raw send, the IV set is transferred from the source to
-the destination in the send stream.
-When ZFS performs a non-raw send, the data is decrypted by the source
-system and re-encrypted by the destination system, creating a snapshot with
-effectively the same data, but a different IV set.
-In order for decryption to work after a raw send, ZFS must ensure that the
-IV set used on both the source and destination side match.
-When an incremental raw receive is performed on top of an existing snapshot,
-ZFS will check to confirm that the "from" snapshot on both the source and
-destination were using the same IV set, ensuring the new IV set is consistent.
-.Pp
-The name of the snapshot
-.Pq and file system, if a full stream is received
-that this subcommand creates depends on the argument type and the use of the
-.Fl d
-or
-.Fl e
-options.
-.Pp
-If the argument is a snapshot name, the specified
-.Ar snapshot
-is created.
-If the argument is a file system or volume name, a snapshot with the same name
-as the sent snapshot is created within the specified
-.Ar filesystem
-or
-.Ar volume .
-If neither of the
-.Fl d
-or
-.Fl e
-options are specified, the provided target snapshot name is used exactly as
-provided.
-.Pp
-The
-.Fl d
-and
-.Fl e
-options cause the file system name of the target snapshot to be determined by
-appending a portion of the sent snapshot's name to the specified target
-.Ar filesystem .
-If the
-.Fl d
-option is specified, all but the first element of the sent snapshot's file
-system path
-.Pq usually the pool name
-is used and any required intermediate file systems within the specified one are
-created.
-If the
-.Fl e
-option is specified, then only the last element of the sent snapshot's file
-system name
-.Pq i.e. the name of the source file system itself
-is used as the target file system name.
-.Bl -tag -width "-F"
-.It Fl F
-Force a rollback of the file system to the most recent snapshot before
-performing the receive operation.
-If receiving an incremental replication stream
-.Po for example, one generated by
-.Nm zfs Cm send Fl R Op Fl i Ns | Ns Fl I
-.Pc ,
-destroy snapshots and file systems that do not exist on the sending side.
-.It Fl d
-Discard the first element of the sent snapshot's file system name, using the
-remaining elements to determine the name of the target file system for the new
-snapshot as described in the paragraph above.
-.It Fl e
-Discard all but the last element of the sent snapshot's file system name, using
-that element to determine the name of the target file system for the new
-snapshot as described in the paragraph above.
-.It Fl h
-Skip the receive of holds.
-There is no effect if holds are not sent.
-.It Fl n
-Do not actually receive the stream.
-This can be useful in conjunction with the
-.Fl v
-option to verify the name the receive operation would use.
-.It Fl o Sy origin Ns = Ns Ar snapshot
-Forces the stream to be received as a clone of the given snapshot.
-If the stream is a full send stream, this will create the filesystem
-described by the stream as a clone of the specified snapshot.
-Which snapshot was specified will not affect the success or failure of the
-receive, as long as the snapshot does exist.
-If the stream is an incremental send stream, all the normal verification will be
-performed.
-.It Fl o Em property Ns = Ns Ar value
-Sets the specified property as if the command
-.Nm zfs Cm set Em property Ns = Ns Ar value
-was invoked immediately before the receive.
-When receiving a stream from
-.Nm zfs Cm send Fl R ,
-causes the property to be inherited by all descendant datasets, as though
-.Nm zfs Cm inherit Em property
-was run on any descendant datasets that have this property set on the
-sending system.
-.Pp
-Any editable property can be set at receive time.
-Set-once properties bound to the received data, such as
-.Sy normalization
-and
-.Sy casesensitivity ,
-cannot be set at receive time even when the datasets are newly created by
-.Nm zfs Cm receive .
-Additionally both settable properties
-.Sy version
-and
-.Sy volsize
-cannot be set at receive time.
-.Pp
-The
-.Fl o
-option may be specified multiple times, for different properties.
-An error results if the same property is specified in multiple
-.Fl o
-or
-.Fl x
-options.
-.Pp
-The
-.Fl o
-option may also be used to override encryption properties upon initial
-receive.
-This allows unencrypted streams to be received as encrypted datasets.
-To cause the received dataset (or root dataset of a recursive stream) to be
-received as an encryption root, specify encryption properties in the same
-manner as is required for
-.Nm
-.Cm create .
-For instance:
-.Bd -literal
-# zfs send tank/test@snap1 | zfs recv -o encryption=on -o keyformat=passphrase -o keylocation=file:///path/to/keyfile
-.Ed
-.Pp
-Note that
-.Op Fl o Ar keylocation Ns = Ns Ar prompt
-may not be specified here, since stdin is already being utilized for the send
-stream.
-Once the receive has completed, you can use
-.Nm
-.Cm set
-to change this setting after the fact.
-Similarly, you can receive a dataset as an encrypted child by specifying
-.Op Fl x Ar encryption
-to force the property to be inherited.
-Overriding encryption properties (except for
-.Sy keylocation )
-is not possible with raw send streams.
-.It Fl s
-If the receive is interrupted, save the partially received state, rather
-than deleting it.
-Interruption may be due to premature termination of the stream
-.Po e.g. due to network failure or failure of the remote system
-if the stream is being read over a network connection
-.Pc ,
-a checksum error in the stream, termination of the
-.Nm zfs Cm receive
-process, or unclean shutdown of the system.
-.Pp
-The receive can be resumed with a stream generated by
-.Nm zfs Cm send Fl t Ar token ,
-where the
-.Ar token
-is the value of the
-.Sy receive_resume_token
-property of the filesystem or volume which is received into.
-.Pp
-To use this flag, the storage pool must have the
-.Sy extensible_dataset
-feature enabled.
-See
-.Xr zpool-features 5
-for details on ZFS feature flags.
-.It Fl u
-File system that is associated with the received stream is not mounted.
-.It Fl v
-Print verbose information about the stream and the time required to perform the
-receive operation.
-.It Fl x Em property
-Ensures that the effective value of the specified property after the
-receive is unaffected by the value of that property in the send stream (if any),
-as if the property had been excluded from the send stream.
-.Pp
-If the specified property is not present in the send stream, this option does
-nothing.
-.Pp
-If a received property needs to be overridden, the effective value will be
-set or inherited, depending on whether the property is inheritable or not.
-.Pp
-In the case of an incremental update,
-.Fl x
-leaves any existing local setting or explicit inheritance unchanged.
-.Pp
-All
-.Fl o
-restrictions (e.g. set-once) apply equally to
-.Fl x .
-.El
-.It Xo
-.Nm
-.Cm receive
-.Fl A
-.Ar filesystem Ns | Ns Ar volume
-.Xc
-Abort an interrupted
-.Nm zfs Cm receive Fl s ,
-deleting its saved partially received state.
-.It Xo
-.Nm
-.Cm allow
-.Ar filesystem Ns | Ns Ar volume
-.Xc
-Displays permissions that have been delegated on the specified filesystem or
-volume.
-See the other forms of
-.Nm zfs Cm allow
-for more information.
-.It Xo
-.Nm
-.Cm allow
-.Op Fl dglu
-.Ar user Ns | Ns Ar group Ns Oo , Ns Ar user Ns | Ns Ar group Oc Ns ...
-.Ar perm Ns | Ns @ Ns Ar setname Ns Oo , Ns Ar perm Ns | Ns @ Ns
-.Ar setname Oc Ns ...
-.Ar filesystem Ns | Ns Ar volume
-.Xc
-.It Xo
-.Nm
-.Cm allow
-.Op Fl dl
-.Fl e Ns | Ns Sy everyone
-.Ar perm Ns | Ns @ Ns Ar setname Ns Oo , Ns Ar perm Ns | Ns @ Ns
-.Ar setname Oc Ns ...
-.Ar filesystem Ns | Ns Ar volume
-.Xc
-Delegates ZFS administration permission for the file systems to non-privileged
-users.
-.Bl -tag -width "-d"
-.It Fl d
-Allow only for the descendent file systems.
-.It Fl e Ns | Ns Sy everyone
-Specifies that the permissions be delegated to everyone.
-.It Fl g Ar group Ns Oo , Ns Ar group Oc Ns ...
-Explicitly specify that permissions are delegated to the group.
-.It Fl l
-Allow
-.Qq locally
-only for the specified file system.
-.It Fl u Ar user Ns Oo , Ns Ar user Oc Ns ...
-Explicitly specify that permissions are delegated to the user.
-.It Ar user Ns | Ns Ar group Ns Oo , Ns Ar user Ns | Ns Ar group Oc Ns ...
-Specifies to whom the permissions are delegated.
-Multiple entities can be specified as a comma-separated list.
-If neither of the
-.Fl gu
-options are specified, then the argument is interpreted preferentially as the
-keyword
-.Sy everyone ,
-then as a user name, and lastly as a group name.
-To specify a user or group named
-.Qq everyone ,
-use the
-.Fl g
-or
-.Fl u
-options.
-To specify a group with the same name as a user, use the
-.Fl g
-options.
-.It Xo
-.Ar perm Ns | Ns @ Ns Ar setname Ns Oo , Ns Ar perm Ns | Ns @ Ns
-.Ar setname Oc Ns ...
-.Xc
-The permissions to delegate.
-Multiple permissions may be specified as a comma-separated list.
-Permission names are the same as ZFS subcommand and property names.
-See the property list below.
-Property set names, which begin with
-.Sy @ ,
-may be specified.
-See the
-.Fl s
-form below for details.
-.El
-.Pp
-If neither of the
-.Fl dl
-options are specified, or both are, then the permissions are allowed for the
-file system or volume, and all of its descendents.
-.Pp
-Permissions are generally the ability to use a ZFS subcommand or change a ZFS
-property.
-The following permissions are available:
-.Bd -literal
-NAME TYPE NOTES
-allow subcommand Must also have the permission that is
- being allowed
-clone subcommand Must also have the 'create' ability and
- 'mount' ability in the origin file system
-create subcommand Must also have the 'mount' ability
-destroy subcommand Must also have the 'mount' ability
-diff subcommand Allows lookup of paths within a dataset
- given an object number, and the ability
- to create snapshots necessary to
- 'zfs diff'.
-load-key subcommand Allows loading and unloading of encryption key
- (see 'zfs load-key' and 'zfs unload-key').
-change-key subcommand Allows changing an encryption key via
- 'zfs change-key'.
-mount subcommand Allows mount/umount of ZFS datasets
-promote subcommand Must also have the 'mount' and 'promote'
- ability in the origin file system
-receive subcommand Must also have the 'mount' and 'create'
- ability
-rename subcommand Must also have the 'mount' and 'create'
- ability in the new parent
-rollback subcommand Must also have the 'mount' ability
-send subcommand
-share subcommand Allows sharing file systems over NFS
- or SMB protocols
-snapshot subcommand Must also have the 'mount' ability
-
-groupquota other Allows accessing any groupquota@...
- property
-groupused other Allows reading any groupused@... property
-userprop other Allows changing any user property
-userquota other Allows accessing any userquota@...
- property
-userused other Allows reading any userused@... property
-projectobjquota other Allows accessing any projectobjquota@...
- property
-projectquota other Allows accessing any projectquota@... property
-projectobjused other Allows reading any projectobjused@... property
-projectused other Allows reading any projectused@... property
-
-aclinherit property
-aclmode property
-atime property
-canmount property
-casesensitivity property
-checksum property
-compression property
-copies property
-devices property
-exec property
-filesystem_limit property
-mountpoint property
-nbmand property
-normalization property
-primarycache property
-quota property
-readonly property
-recordsize property
-refquota property
-refreservation property
-reservation property
-secondarycache property
-setuid property
-sharenfs property
-sharesmb property
-snapdir property
-snapshot_limit property
-utf8only property
-version property
-volblocksize property
-volsize property
-vscan property
-xattr property
-zoned property
-.Ed
-.It Xo
-.Nm
-.Cm allow
-.Fl c
-.Ar perm Ns | Ns @ Ns Ar setname Ns Oo , Ns Ar perm Ns | Ns @ Ns
-.Ar setname Oc Ns ...
-.Ar filesystem Ns | Ns Ar volume
-.Xc
-Sets
-.Qq create time
-permissions.
-These permissions are granted
-.Pq locally
-to the creator of any newly-created descendent file system.
-.It Xo
-.Nm
-.Cm allow
-.Fl s No @ Ns Ar setname
-.Ar perm Ns | Ns @ Ns Ar setname Ns Oo , Ns Ar perm Ns | Ns @ Ns
-.Ar setname Oc Ns ...
-.Ar filesystem Ns | Ns Ar volume
-.Xc
-Defines or adds permissions to a permission set.
-The set can be used by other
-.Nm zfs Cm allow
-commands for the specified file system and its descendents.
-Sets are evaluated dynamically, so changes to a set are immediately reflected.
-Permission sets follow the same naming restrictions as ZFS file systems, but the
-name must begin with
-.Sy @ ,
-and can be no more than 64 characters long.
-.It Xo
-.Nm
-.Cm unallow
-.Op Fl dglru
-.Ar user Ns | Ns Ar group Ns Oo , Ns Ar user Ns | Ns Ar group Oc Ns ...
-.Oo Ar perm Ns | Ns @ Ns Ar setname Ns Oo , Ns Ar perm Ns | Ns @ Ns
-.Ar setname Oc Ns ... Oc
-.Ar filesystem Ns | Ns Ar volume
-.Xc
-.It Xo
-.Nm
-.Cm unallow
-.Op Fl dlr
-.Fl e Ns | Ns Sy everyone
-.Oo Ar perm Ns | Ns @ Ns Ar setname Ns Oo , Ns Ar perm Ns | Ns @ Ns
-.Ar setname Oc Ns ... Oc
-.Ar filesystem Ns | Ns Ar volume
-.Xc
-.It Xo
-.Nm
-.Cm unallow
-.Op Fl r
-.Fl c
-.Oo Ar perm Ns | Ns @ Ns Ar setname Ns Oo , Ns Ar perm Ns | Ns @ Ns
-.Ar setname Oc Ns ... Oc
-.Ar filesystem Ns | Ns Ar volume
-.Xc
-Removes permissions that were granted with the
-.Nm zfs Cm allow
-command.
-No permissions are explicitly denied, so other permissions granted are still in
-effect.
-For example, if the permission is granted by an ancestor.
-If no permissions are specified, then all permissions for the specified
-.Ar user ,
-.Ar group ,
-or
-.Sy everyone
-are removed.
-Specifying
-.Sy everyone
-.Po or using the
-.Fl e
-option
-.Pc
-only removes the permissions that were granted to everyone, not all permissions
-for every user and group.
-See the
-.Nm zfs Cm allow
-command for a description of the
-.Fl ldugec
-options.
-.Bl -tag -width "-r"
-.It Fl r
-Recursively remove the permissions from this file system and all descendents.
-.El
-.It Xo
-.Nm
-.Cm unallow
-.Op Fl r
-.Fl s No @ Ns Ar setname
-.Oo Ar perm Ns | Ns @ Ns Ar setname Ns Oo , Ns Ar perm Ns | Ns @ Ns
-.Ar setname Oc Ns ... Oc
-.Ar filesystem Ns | Ns Ar volume
-.Xc
-Removes permissions from a permission set.
-If no permissions are specified, then all permissions are removed, thus removing
-the set entirely.
-.It Xo
-.Nm
-.Cm hold
-.Op Fl r
-.Ar tag Ar snapshot Ns ...
-.Xc
-Adds a single reference, named with the
-.Ar tag
-argument, to the specified snapshot or snapshots.
-Each snapshot has its own tag namespace, and tags must be unique within that
-space.
-.Pp
-If a hold exists on a snapshot, attempts to destroy that snapshot by using the
-.Nm zfs Cm destroy
-command return
-.Er EBUSY .
-.Bl -tag -width "-r"
-.It Fl r
-Specifies that a hold with the given tag is applied recursively to the snapshots
-of all descendent file systems.
-.El
-.It Xo
-.Nm
-.Cm holds
-.Op Fl r
-.Ar snapshot Ns ...
-.Xc
-Lists all existing user references for the given snapshot or snapshots.
-.Bl -tag -width "-r"
-.It Fl r
-Lists the holds that are set on the named descendent snapshots, in addition to
-listing the holds on the named snapshot.
-.El
-.It Xo
-.Nm
-.Cm release
-.Op Fl r
-.Ar tag Ar snapshot Ns ...
-.Xc
-Removes a single reference, named with the
-.Ar tag
-argument, from the specified snapshot or snapshots.
-The tag must already exist for each snapshot.
-If a hold exists on a snapshot, attempts to destroy that snapshot by using the
-.Nm zfs Cm destroy
-command return
-.Er EBUSY .
-.Bl -tag -width "-r"
-.It Fl r
-Recursively releases a hold with the given tag on the snapshots of all
-descendent file systems.
-.El
-.It Xo
-.Nm
-.Cm diff
-.Op Fl FHt
-.Ar snapshot Ar snapshot Ns | Ns Ar filesystem
-.Xc
-Display the difference between a snapshot of a given filesystem and another
-snapshot of that filesystem from a later time or the current contents of the
-filesystem.
-The first column is a character indicating the type of change, the other columns
-indicate pathname, new pathname
-.Pq in case of rename ,
-change in link count, and optionally file type and/or change time.
-The types of change are:
-.Bd -literal
-- The path has been removed
-+ The path has been created
-M The path has been modified
-R The path has been renamed
-.Ed
-.Bl -tag -width "-F"
-.It Fl F
-Display an indication of the type of file, in a manner similar to the
-.Fl
-option of
-.Xr ls 1 .
-.Bd -literal
-B Block device
-C Character device
-/ Directory
-> Door
-| Named pipe
-@ Symbolic link
-P Event port
-= Socket
-F Regular file
-.Ed
-.It Fl H
-Give more parsable tab-separated output, without header lines and without
-arrows.
-.It Fl t
-Display the path's inode change time as the first column of output.
-.El
-.It Xo
-.Nm
-.Cm program
-.Op Fl jn
-.Op Fl t Ar timeout
-.Op Fl m Ar memory_limit
-.Ar pool script
-.Op Ar arg1 No ...
-.Xc
-Executes
-.Ar script
-as a ZFS channel program on
-.Ar pool .
-The ZFS channel
-program interface allows ZFS administrative operations to be run
-programmatically via a Lua script.
-The entire script is executed atomically, with no other administrative
-operations taking effect concurrently.
-A library of ZFS calls is made available to channel program scripts.
-Channel programs may only be run with root privileges.
-.sp
-For full documentation of the ZFS channel program interface, see the manual
-page for
-.Xr zfs-program 1M .
-.Bl -tag -width ""
-.It Fl j
-Display channel program output in JSON format.
-When this flag is specified and standard output is empty -
-channel program encountered an error.
-The details of such an error will be printed to standard error in plain text.
-.It Fl n
-Executes a read-only channel program, which runs faster.
-The program cannot change on-disk state by calling functions from
-the zfs.sync submodule.
-The program can be used to gather information such as properties and
-determining if changes would succeed (zfs.check.*).
-Without this flag, all pending changes must be synced to disk before
-a channel program can complete.
-.It Fl t Ar timeout
-Execution time limit, in milliseconds.
-If a channel program executes for longer than the provided timeout, it will
-be stopped and an error will be returned.
-The default timeout is 1000 ms, and can be set to a maximum of 10000 ms.
-.It Fl m Ar memory-limit
-Memory limit, in bytes.
-If a channel program attempts to allocate more memory than the given limit,
-it will be stopped and an error returned.
-The default memory limit is 10 MB, and can be set to a maximum of 100 MB.
-.sp
-All remaining argument strings are passed directly to the channel program as
-arguments.
-See
-.Xr zfs-program 1M
-for more information.
-.El
-.It Xo
-.Nm Cm load-key
-.Op Fl nr
-.Op Fl L Ar keylocation
-.Fl a Ns | Ns filesystem
-.Xc
-Use
-.Ar keylocation
-instead of the
-.Sy keylocation
-property.
-This will not change the value of the property on the dataset.
-Note that if used with either
-.Fl r
-or
-.Fl a
-.Ar keylocation
-may only be given as
-.Sy prompt .
-.Bl -tag -width Ds
-.It Fl a
-Loads the keys for all encryption roots in all imported pools.
-.It Fl n
-Do a dry-run
-.Cm load-key .
-This will cause zfs to simply check that the provided key is correct.
-This command may be run even if the key is already loaded.
-.It Fl r
-Recursively loads the keys for the specified filesystem and all descendent
-encryption roots.
-.El
-.It Xo
-.Nm
-.Cm unload-key
-.Op Fl r
-.Fl a Ns | Ns Ar filesystem
-.Xc
-Unloads a key from ZFS, removing the ability to access the dataset and all of
-its children that inherit the
-.Sy encryption
-property.
-This requires that the dataset is not currently open or mounted.
-Once the key is unloaded the
-.Sy keystatus
-property will be set to
-.Sy unavailable .
-.Bl -tag -width Ds
-.It Fl a
-Unloads the keys for all encryption roots in all imported pools.
-.It Fl r
-Recursively unloads the keys for the specified filesystem and all descendent
-encryption roots.
-.El
-.It Xo
-.Nm
-.Cm change-key
-.Op Fl il
-.Op Fl o Sy keylocation Ns = Ns Ar value
-.Op Fl o Sy keyformat Ns = Ns Ar value
-.Op Fl o Sy pbkdf2iters Ns = Ns Ar value
-.Ar filesystem
-.Xc
-Allows a user to change the encryption key used to access a dataset.
-This command requires that the existing key for the dataset is already loaded
-into ZFS.
-This command may also be used to change the
-.Sy keylocation , keyformat ,
-and
-.Sy pbkdf2iters
-properties as needed.
-If the dataset was not previously an encryption root it will become one.
-Alternatively, the
-.Fl i
-flag may be provided to cause an encryption root to inherit the
-parent's key instead.
-.Bl -tag -width Ds
-.It Fl i
-Indicates that ZFS should make
-.Ar filesystem
-inherit the key of its parent.
-Note that this command can only be run on an encryption root that has an
-encrypted parent.
-.It Fl l
-Ensures the key is loaded before attempting to change the key.
-This is effectively equivalent to
-.Qq Nm Cm load-key Ar filesystem ; Nm Cm change-key Ar filesystem .
-.It Fl o Sy property Ns = Ns Ar value
-Allows the user to set encryption key properties
-.Pq
-.Sy keyformat , keylocation ,
-and
-.Sy pbkdf2iters
-while changing the key.
-This is the only way to alter
-.Sy keyformat
-and
-.Sy pbkdf2iters
-after the dataset has been created.
-.El
-.El
-.Sh EXIT STATUS
-The
-.Nm
-utility exits 0 on success, 1 if an error occurs, and 2 if invalid command line
-options were specified.
-.Sh EXAMPLES
-.Bl -tag -width ""
-.It Sy Example 1 No Creating a ZFS File System Hierarchy
-The following commands create a file system named
-.Em pool/home
-and a file system named
-.Em pool/home/bob .
-The mount point
-.Pa /export/home
-is set for the parent file system, and is automatically inherited by the child
-file system.
-.Bd -literal
-# zfs create pool/home
-# zfs set mountpoint=/export/home pool/home
-# zfs create pool/home/bob
-.Ed
-.It Sy Example 2 No Creating a ZFS Snapshot
-The following command creates a snapshot named
-.Sy yesterday .
-This snapshot is mounted on demand in the
-.Pa .zfs/snapshot
-directory at the root of the
-.Em pool/home/bob
-file system.
-.Bd -literal
-# zfs snapshot pool/home/bob@yesterday
-.Ed
-.It Sy Example 3 No Creating and Destroying Multiple Snapshots
-The following command creates snapshots named
-.Sy yesterday
-of
-.Em pool/home
-and all of its descendent file systems.
-Each snapshot is mounted on demand in the
-.Pa .zfs/snapshot
-directory at the root of its file system.
-The second command destroys the newly created snapshots.
-.Bd -literal
-# zfs snapshot -r pool/home@yesterday
-# zfs destroy -r pool/home@yesterday
-.Ed
-.It Sy Example 4 No Disabling and Enabling File System Compression
-The following command disables the
-.Sy compression
-property for all file systems under
-.Em pool/home .
-The next command explicitly enables
-.Sy compression
-for
-.Em pool/home/anne .
-.Bd -literal
-# zfs set compression=off pool/home
-# zfs set compression=on pool/home/anne
-.Ed
-.It Sy Example 5 No Listing ZFS Datasets
-The following command lists all active file systems and volumes in the system.
-Snapshots are displayed if the
-.Sy listsnaps
-property is
-.Sy on .
-The default is
-.Sy off .
-See
-.Xr zpool 1M
-for more information on pool properties.
-.Bd -literal
-# zfs list
-NAME USED AVAIL REFER MOUNTPOINT
-pool 450K 457G 18K /pool
-pool/home 315K 457G 21K /export/home
-pool/home/anne 18K 457G 18K /export/home/anne
-pool/home/bob 276K 457G 276K /export/home/bob
-.Ed
-.It Sy Example 6 No Setting a Quota on a ZFS File System
-The following command sets a quota of 50 Gbytes for
-.Em pool/home/bob .
-.Bd -literal
-# zfs set quota=50G pool/home/bob
-.Ed
-.It Sy Example 7 No Listing ZFS Properties
-The following command lists all properties for
-.Em pool/home/bob .
-.Bd -literal
-# zfs get all pool/home/bob
-NAME PROPERTY VALUE SOURCE
-pool/home/bob type filesystem -
-pool/home/bob creation Tue Jul 21 15:53 2009 -
-pool/home/bob used 21K -
-pool/home/bob available 20.0G -
-pool/home/bob referenced 21K -
-pool/home/bob compressratio 1.00x -
-pool/home/bob mounted yes -
-pool/home/bob quota 20G local
-pool/home/bob reservation none default
-pool/home/bob recordsize 128K default
-pool/home/bob mountpoint /pool/home/bob default
-pool/home/bob sharenfs off default
-pool/home/bob checksum on default
-pool/home/bob compression on local
-pool/home/bob atime on default
-pool/home/bob devices on default
-pool/home/bob exec on default
-pool/home/bob setuid on default
-pool/home/bob readonly off default
-pool/home/bob zoned off default
-pool/home/bob snapdir hidden default
-pool/home/bob aclmode discard default
-pool/home/bob aclinherit restricted default
-pool/home/bob canmount on default
-pool/home/bob xattr on default
-pool/home/bob copies 1 default
-pool/home/bob version 4 -
-pool/home/bob utf8only off -
-pool/home/bob normalization none -
-pool/home/bob casesensitivity sensitive -
-pool/home/bob vscan off default
-pool/home/bob nbmand off default
-pool/home/bob sharesmb off default
-pool/home/bob refquota none default
-pool/home/bob refreservation none default
-pool/home/bob primarycache all default
-pool/home/bob secondarycache all default
-pool/home/bob usedbysnapshots 0 -
-pool/home/bob usedbydataset 21K -
-pool/home/bob usedbychildren 0 -
-pool/home/bob usedbyrefreservation 0 -
-.Ed
-.Pp
-The following command gets a single property value.
-.Bd -literal
-# zfs get -H -o value compression pool/home/bob
-on
-.Ed
-The following command lists all properties with local settings for
-.Em pool/home/bob .
-.Bd -literal
-# zfs get -r -s local -o name,property,value all pool/home/bob
-NAME PROPERTY VALUE
-pool/home/bob quota 20G
-pool/home/bob compression on
-.Ed
-.It Sy Example 8 No Rolling Back a ZFS File System
-The following command reverts the contents of
-.Em pool/home/anne
-to the snapshot named
-.Sy yesterday ,
-deleting all intermediate snapshots.
-.Bd -literal
-# zfs rollback -r pool/home/anne@yesterday
-.Ed
-.It Sy Example 9 No Creating a ZFS Clone
-The following command creates a writable file system whose initial contents are
-the same as
-.Em pool/home/bob@yesterday .
-.Bd -literal
-# zfs clone pool/home/bob@yesterday pool/clone
-.Ed
-.It Sy Example 10 No Promoting a ZFS Clone
-The following commands illustrate how to test out changes to a file system, and
-then replace the original file system with the changed one, using clones, clone
-promotion, and renaming:
-.Bd -literal
-# zfs create pool/project/production
- populate /pool/project/production with data
-# zfs snapshot pool/project/production@today
-# zfs clone pool/project/production@today pool/project/beta
- make changes to /pool/project/beta and test them
-# zfs promote pool/project/beta
-# zfs rename pool/project/production pool/project/legacy
-# zfs rename pool/project/beta pool/project/production
- once the legacy version is no longer needed, it can be destroyed
-# zfs destroy pool/project/legacy
-.Ed
-.It Sy Example 11 No Inheriting ZFS Properties
-The following command causes
-.Em pool/home/bob
-and
-.Em pool/home/anne
-to inherit the
-.Sy checksum
-property from their parent.
-.Bd -literal
-# zfs inherit checksum pool/home/bob pool/home/anne
-.Ed
-.It Sy Example 12 No Remotely Replicating ZFS Data
-The following commands send a full stream and then an incremental stream to a
-remote machine, restoring them into
-.Em poolB/received/fs@a
-and
-.Em poolB/received/fs@b ,
-respectively.
-.Em poolB
-must contain the file system
-.Em poolB/received ,
-and must not initially contain
-.Em poolB/received/fs .
-.Bd -literal
-# zfs send pool/fs@a | \e
- ssh host zfs receive poolB/received/fs@a
-# zfs send -i a pool/fs@b | \e
- ssh host zfs receive poolB/received/fs
-.Ed
-.It Sy Example 13 No Using the zfs receive -d Option
-The following command sends a full stream of
-.Em poolA/fsA/fsB@snap
-to a remote machine, receiving it into
-.Em poolB/received/fsA/fsB@snap .
-The
-.Em fsA/fsB@snap
-portion of the received snapshot's name is determined from the name of the sent
-snapshot.
-.Em poolB
-must contain the file system
-.Em poolB/received .
-If
-.Em poolB/received/fsA
-does not exist, it is created as an empty file system.
-.Bd -literal
-# zfs send poolA/fsA/fsB@snap | \e
- ssh host zfs receive -d poolB/received
-.Ed
-.It Sy Example 14 No Setting User Properties
-The following example sets the user-defined
-.Sy com.example:department
-property for a dataset.
-.Bd -literal
-# zfs set com.example:department=12345 tank/accounting
-.Ed
-.It Sy Example 15 No Performing a Rolling Snapshot
-The following example shows how to maintain a history of snapshots with a
-consistent naming scheme.
-To keep a week's worth of snapshots, the user destroys the oldest snapshot,
-renames the remaining snapshots, and then creates a new snapshot, as follows:
-.Bd -literal
-# zfs destroy -r pool/users@7daysago
-# zfs rename -r pool/users@6daysago @7daysago
-# zfs rename -r pool/users@5daysago @6daysago
-# zfs rename -r pool/users@4daysago @5daysago
-# zfs rename -r pool/users@3daysago @4daysago
-# zfs rename -r pool/users@2daysago @3daysago
-# zfs rename -r pool/users@yesterday @2daysago
-# zfs rename -r pool/users@today @yesterday
-# zfs snapshot -r pool/users@today
-.Ed
-.It Sy Example 16 No Setting sharenfs Property Options on a ZFS File System
-The following commands show how to set
-.Sy sharenfs
-property options to enable
-.Sy rw
-access for a set of
-.Sy IP
-addresses and to enable root access for system
-.Sy neo
-on the
-.Em tank/home
-file system.
-.Bd -literal
-# zfs set sharenfs='rw=@123.123.0.0/16,root=neo' tank/home
-.Ed
-.Pp
-If you are using
-.Sy DNS
-for host name resolution, specify the fully qualified hostname.
-.It Sy Example 17 No Delegating ZFS Administration Permissions on a ZFS Dataset
-The following example shows how to set permissions so that user
-.Sy cindys
-can create, destroy, mount, and take snapshots on
-.Em tank/cindys .
-The permissions on
-.Em tank/cindys
-are also displayed.
-.Bd -literal
-# zfs allow cindys create,destroy,mount,snapshot tank/cindys
-# zfs allow tank/cindys
----- Permissions on tank/cindys --------------------------------------
-Local+Descendent permissions:
- user cindys create,destroy,mount,snapshot
-.Ed
-.Pp
-Because the
-.Em tank/cindys
-mount point permission is set to 755 by default, user
-.Sy cindys
-will be unable to mount file systems under
-.Em tank/cindys .
-Add an ACE similar to the following syntax to provide mount point access:
-.Bd -literal
-# chmod A+user:cindys:add_subdirectory:allow /tank/cindys
-.Ed
-.It Sy Example 18 No Delegating Create Time Permissions on a ZFS Dataset
-The following example shows how to grant anyone in the group
-.Sy staff
-to create file systems in
-.Em tank/users .
-This syntax also allows staff members to destroy their own file systems, but not
-destroy anyone else's file system.
-The permissions on
-.Em tank/users
-are also displayed.
-.Bd -literal
-# zfs allow staff create,mount tank/users
-# zfs allow -c destroy tank/users
-# zfs allow tank/users
----- Permissions on tank/users ---------------------------------------
-Permission sets:
- destroy
-Local+Descendent permissions:
- group staff create,mount
-.Ed
-.It Sy Example 19 No Defining and Granting a Permission Set on a ZFS Dataset
-The following example shows how to define and grant a permission set on the
-.Em tank/users
-file system.
-The permissions on
-.Em tank/users
-are also displayed.
-.Bd -literal
-# zfs allow -s @pset create,destroy,snapshot,mount tank/users
-# zfs allow staff @pset tank/users
-# zfs allow tank/users
----- Permissions on tank/users ---------------------------------------
-Permission sets:
- @pset create,destroy,mount,snapshot
-Local+Descendent permissions:
- group staff @pset
-.Ed
-.It Sy Example 20 No Delegating Property Permissions on a ZFS Dataset
-The following example shows to grant the ability to set quotas and reservations
-on the
-.Em users/home
-file system.
-The permissions on
-.Em users/home
-are also displayed.
-.Bd -literal
-# zfs allow cindys quota,reservation users/home
-# zfs allow users/home
----- Permissions on users/home ---------------------------------------
-Local+Descendent permissions:
- user cindys quota,reservation
-cindys% zfs set quota=10G users/home/marks
-cindys% zfs get quota users/home/marks
-NAME PROPERTY VALUE SOURCE
-users/home/marks quota 10G local
-.Ed
-.It Sy Example 21 No Removing ZFS Delegated Permissions on a ZFS Dataset
-The following example shows how to remove the snapshot permission from the
-.Sy staff
-group on the
-.Em tank/users
-file system.
-The permissions on
-.Em tank/users
-are also displayed.
-.Bd -literal
-# zfs unallow staff snapshot tank/users
-# zfs allow tank/users
----- Permissions on tank/users ---------------------------------------
-Permission sets:
- @pset create,destroy,mount,snapshot
-Local+Descendent permissions:
- group staff @pset
-.Ed
-.It Sy Example 22 No Showing the differences between a snapshot and a ZFS Dataset
-The following example shows how to see what has changed between a prior
-snapshot of a ZFS dataset and its current state.
-The
-.Fl F
-option is used to indicate type information for the files affected.
-.Bd -literal
-# zfs diff -F tank/test@before tank/test
-M / /tank/test/
-M F /tank/test/linked (+1)
-R F /tank/test/oldname -> /tank/test/newname
-- F /tank/test/deleted
-+ F /tank/test/created
-M F /tank/test/modified
-.Ed
-.El
-.Sh INTERFACE STABILITY
-.Sy Committed .
-.Sh SEE ALSO
-.Xr gzip 1 ,
-.Xr ssh 1 ,
-.Xr mount 1M ,
-.Xr share 1M ,
-.Xr sharemgr 1M ,
-.Xr unshare 1M ,
-.Xr zfs-program 1M ,
-.Xr zonecfg 1M ,
-.Xr zpool 1M ,
-.Xr chmod 2 ,
-.Xr stat 2 ,
-.Xr write 2 ,
-.Xr fsync 3C ,
-.Xr dfstab 4 ,
-.Xr acl 5 ,
-.Xr attributes 5
diff --git a/usr/src/man/man1m/zic.1m b/usr/src/man/man1m/zic.1m
deleted file mode 100644
index f4d60990c2..0000000000
--- a/usr/src/man/man1m/zic.1m
+++ /dev/null
@@ -1,584 +0,0 @@
-'\" te
-.\" Copyright (c) 2000, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH ZIC 1M "Jan 3, 2006"
-.SH NAME
-zic \- time zone compiler
-.SH SYNOPSIS
-.LP
-.nf
-\fBzic\fR [\fB--\fR\fIversion\fR] [\fB-s\fR] [\fB-v\fR] [\fB-l\fR \fIlocaltime\fR] [\fB-p\fR \fIposixrules\fR]
- [\fB-d\fR \fIdirectory\fR] [\fB-y\fR \fIyearistype\fR] [\fIfilename\fR]...
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBzic\fR reads text from the file(s) named on the command line and creates the
-time conversion information files specified in this input. If a \fIfilename\fR
-is '\fB\(mi\fR\&', the standard input is read.
-.sp
-.LP
-Input lines are made up of fields. Fields are separated by any number of white
-space characters. Leading and trailing white space on input lines is ignored. A
-pound sign (\fB#\fR) indicates a comment that extends to the end of the line.
-White space characters and pound signs can be enclosed within double quotes
-(\fB" "\fR) if they are to be used as part of a field. Any line that is blank
-(after comment stripping) is ignored. Non-blank lines are expected to be of one
-of three types: rule lines, zone lines, or link lines.
-.SS "Rule"
-.sp
-.LP
-A rule line has the form:
-.sp
-.LP
-For example:
-.sp
-.in +2
-.nf
-Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The fields that make up a rule line are:
-.sp
-.in +2
-.nf
-Rule USA 1969 1973 - Apr lastSun 2:00 1:00 D
-.fi
-.in -2
-.sp
-
-.sp
-.ne 2
-.na
-\fB\fBNAME\fR\fR
-.ad
-.RS 12n
-Gives the (arbitrary) name of the set of rules this rule is part of.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBFROM\fR\fR
-.ad
-.RS 12n
-Gives the first year in which the rule applies. The word \fBminimum\fR (or an
-abbreviation) means the minimum year with a representable time value. The word
-\fBmaximum\fR (or an abbreviation) means the maximum year with a representable
-time value.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBTO\fR\fR
-.ad
-.RS 12n
-Gives the final year in which the rule applies. In addition to \fBminimum\fR
-and \fBmaximum\fR (as above), the word \fBonly\fR (or an abbreviation) can be
-used to repeat the value of the \fBFROM\fR field.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBTYPE\fR\fR
-.ad
-.RS 12n
-Gives the type of year in which the rule applies. If \fBTYPE\fR is:
-.sp
-.ne 2
-.na
-\fB\&'\fB\(mi\fR\&'\fR
-.ad
-.RS 14n
-The rule applies in all years between \fBFROM\fR and \fBTO\fR, inclusive.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBuspres\fR\fR
-.ad
-.RS 14n
-The rule applies in U.S. Presidential election years.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnonpres\fR\fR
-.ad
-.RS 14n
-The rule applies in years other than U.S. Presidential election years.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBeven\fR\fR
-.ad
-.RS 14n
-The rule applies to even-numbered years.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBodd\fR\fR
-.ad
-.RS 14n
-The rule applies to odd-numbered years.
-.RE
-
-If \fBTYPE\fR is something else, then \fBzic\fR will attempt to execute the
-command
-.sp
-.in +2
-.nf
-\fByearistype\fR \fIyear\fR \fBtype\fR
-.fi
-.in -2
-.sp
-
-to check the type of a year: an exit status of \fB0\fR means that the year is
-of the given type; an exit status of \fB1\fR means that the year is not of the
-given type. The \fByearistype\fR command is not currently provided in the
-Solaris environment.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBIN\fR\fR
-.ad
-.RS 12n
-Names the month in which the rule takes effect. Month names can be abbreviated.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBON\fR\fR
-.ad
-.RS 12n
-Gives the day on which the rule takes effect. Recognized forms include:
-.sp
-.ne 2
-.na
-\fB\fB5\fR\fR
-.ad
-.RS 11n
-the fifth day of the month
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBlastSun\fR\fR
-.ad
-.RS 11n
-The last Sunday in the month
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBlastMon\fR\fR
-.ad
-.RS 11n
-The last Monday in the month
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSun>=8\fR\fR
-.ad
-.RS 11n
-First Sunday on or after the eighth
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSun<=25\fR\fR
-.ad
-.RS 11n
-Last Sunday on or before the 25th
-.RE
-
-Names of days of the week can be abbreviated or spelled out in full. Note:
-There cannot be spaces within the \fBON\fR field.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBAT\fR\fR
-.ad
-.RS 12n
-Gives the time of day at which the rule takes effect. Recognized forms include:
-.sp
-.ne 2
-.na
-\fB\fB2\fR\fR
-.ad
-.RS 11n
-Time in hours
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB2:00\fR\fR
-.ad
-.RS 11n
-Time in hours and minutes
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB15:00\fR\fR
-.ad
-.RS 11n
-24-hour format time (for times after noon)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB1:28:14\fR\fR
-.ad
-.RS 11n
-Time in hours, minutes, and seconds, where hour 0 is midnight at the start of
-the day and hour 24 is midnight at the end of the day.
-.RE
-
-Any of these forms can be followed by the letter \fBw\fR if the given time is
-local "wall clock" time; \fBs\fR if the given time is local "standard" time; or
-\fBu\fR (or \fBg\fR or \fBz\fR) if the given time is universal time. In the
-absence of an indicator, wall clock time is assumed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSAVE\fR\fR
-.ad
-.RS 12n
-Gives the amount of time to be added to local standard time when the rule is in
-effect. This field has the same format as the \fBAT\fR field (without the
-\fBw\fR and \fBs\fR suffixes).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBLETTER/S\fR\fR
-.ad
-.RS 12n
-Gives the "variable part" (for example, the "S" or "D" in "EST" or "EDT" of
-time zone abbreviations to be used when this rule is in effect. If this field
-is '\fB\(mi\fR\&', the variable part is null.
-.RE
-
-.SS "Zone"
-.sp
-.LP
-A zone line has the form:
-.sp
-.in +2
-.nf
-Zone NAME GMTOFF RULES/SAVE FORMAT [UNTIL]
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-For example:
-.sp
-.in +2
-.nf
-Zone Australia/SouthWest 9:30 - CST 1992 Mar 15 12:00
- 8:30 Aus CST
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The fields that make up a zone line are:
-.sp
-.ne 2
-.na
-\fB\fBNAME\fR\fR
-.ad
-.RS 14n
-The name of the time zone. This is the name used in creating the time
-conversion information file for the zone.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBGMTOFF\fR\fR
-.ad
-.RS 14n
-The amount of time to add to \fBUTC\fR to get standard time in this zone. This
-field has the same format as the \fBAT\fR and \fBSAVE\fR fields of rule lines;
-begin the field with a minus sign to subtract time from \fBUTC\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBRULES/SAVE\fR\fR
-.ad
-.RS 14n
-The name of the rule(s) that apply in the time zone or, alternately, an amount
-of time to add to local standard time. If this field is `\fB\(mi\fR\&', then
-standard time always applies in the time zone.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBFORMAT\fR\fR
-.ad
-.RS 14n
-The format for time zone abbreviations in this time zone. The pair of
-characters \fB%s\fR is used to show where the "variable part" of the time zone
-abbreviation goes. Alternately, a slash (/) separates standard and daylight
-abbreviations.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBUNTIL\fR\fR
-.ad
-.RS 14n
-The time at which the \fBUTC\fR offset or the rule(s) change for a location. It
-is specified as a year, a month, a day, and a time of day. The time of day has
-the same format as the \fBAT\fR field of rule lines. If this is specified, the
-time zone information is generated from the given \fBUTC\fR offset and rule
-change until the time specified.
-.sp
-The month, day, and time of day have the same format as the IN, ON, and AT
-columns of a rule; trailing columns can be omitted, and default to the earliest
-possible value for the missing columns.
-.sp
-The next line must be a "continuation" line. This line has the same form as a
-zone line except that the string "Zone" and the name are omitted. The
-continuation line places information starting at the time specified as the
-\fBUNTIL\fR field in the previous line in the file used by the previous line.
-Continuation lines can contain an \fBUNTIL\fR field, just as zone lines do,
-indicating that the next line is a further continuation.
-.RE
-
-.SS "Link"
-.sp
-.LP
-A link line has the form:
-.sp
-.in +2
-.nf
-Link LINK-FROM LINK-TO
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-For example:
-.sp
-.in +2
-.nf
-Link Europe/Istanbul Asia/Istanbul
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The \fBLINK-FROM\fR field should appear as the \fBNAME\fR field in some zone
-line; the \fBLINK-TO\fR field is used as an alternate name for that zone.
-.sp
-.LP
-Except for continuation lines, lines can appear in any order in the input.
-.SH OPTIONS
-.sp
-.ne 2
-.na
-\fB\fB--\fR\fIversion\fR\fR
-.ad
-.RS 17n
-Outputs version information and exits.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-d\fR \fIdirectory\fR\fR
-.ad
-.RS 17n
-Creates time conversion information files in the directory \fIdirectory\fR
-rather than in the standard directory \fB/usr/share/lib/zoneinfo\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-l\fR \fIlocaltime\fR\fR
-.ad
-.RS 17n
-Uses the given time zone as local time \fIlocaltime\fR. \fBzic\fR acts as if
-the file contained a link line of the form:
-.sp
-.in +2
-.nf
-Link \fIlocaltime\fR localtime
-.fi
-.in -2
-.sp
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR \fIposixrules\fR\fR
-.ad
-.RS 17n
-Uses the rules of the given time zone \fIposixrules\fR when handling
-POSIX-format time zone environment variables. \fBzic\fR acts as if the input
-contained a link line of the form:
-.sp
-.in +2
-.nf
-Link \fIposixrules\fR posixrules
-.fi
-.in -2
-.sp
-
-This option is not used by \fBctime\fR(3C) and \fBmktime\fR(3C) in the Solaris
-environment.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR\fR
-.ad
-.RS 17n
-Limits time values stored in output files to values that are the same whether
-they are taken to be signed or unsigned. You can use this option to generate
-SVVS-compatible files.
-.sp
-This option is obsolete and may be removed in a future release.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.RS 17n
-Complains if a year that appears in a data file is outside the range of years
-representable by system time values (\fB0:00:00 a.m.\fR \fBUTC,\fR \fBJanuary
-1\fR, \fB1970\fR, to \fB3:14:07 a.m.\fR \fBUTC,\fR \fBJanuary 19\fR,
-\fB2038\fR). This option also complains if a time of 24:00 (which cannot be
-handled by pre-1998 versions of \fBzic\fR) appears in the input.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-y\fR \fIyearistype\fR\fR
-.ad
-.RS 17n
-Uses the given command \fIyearistype\fR rather than \fByearistype\fR when
-checking year types (see \fBRules\fR under \fBDESCRIPTION\fR).
-.RE
-
-.SH OPERANDS
-.sp
-.ne 2
-.na
-\fB\fIfilename\fR\fR
-.ad
-.RS 12n
-A file containing input lines that specify the time conversion information
-files to be created. If a \fIfilename\fR is '\fB\(mi\fR\&', the standard input
-is read.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/usr/share/lib/zoneinfo\fR\fR
-.ad
-.sp .6
-.RS 4n
-Standard directory used for created files
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/share/lib/zoneinfo/src\fR\fR
-.ad
-.sp .6
-.RS 4n
-Directory containing source files
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Committed*
-.TE
-
-.sp
-.LP
-* The \fB-s\fR option is obsolete.
-.SH SEE ALSO
-.sp
-.LP
-\fBtime\fR(1), \fBzdump\fR(1M), \fBctime\fR(3C), \fBmktime\fR(3C),
-\fBattributes\fR(5)
-.SH NOTES
-.sp
-.LP
-For areas with more than two types of local time, you might need to use local
-standard time in the \fBAT\fR field of the earliest transition time's rule to
-ensure that the earliest transition time recorded in the compiled file is
-correct.
-.sp
-.LP
-If the current \fItimezone\fR file is edited and compiled using the "\fBzic\fR"
-command, the changes will only be reflected in any new processes that are
-running. The most accurate way to reflect the changes for the whole system
-would be a reboot.
diff --git a/usr/src/man/man1m/zoneadm.1m b/usr/src/man/man1m/zoneadm.1m
deleted file mode 100644
index 7a0a215e8b..0000000000
--- a/usr/src/man/man1m/zoneadm.1m
+++ /dev/null
@@ -1,698 +0,0 @@
-'\" te
-.\" Copyright 2015 Nexenta Systems, Inc. All rights reserved.
-.\" Copyright (c) 2009 Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright (c) 2011 Joyent, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH ZONEADM 1M "May 13, 2017"
-.SH NAME
-zoneadm \- administer zones
-.SH SYNOPSIS
-.LP
-.nf
-\fBzoneadm\fR \fB-z\fR \fIzonename\fR [\fB-u\fR \fIuuid-match\fR] \fIsubcommand\fR
- [\fIsubcommand_options\fR]
-.fi
-
-.LP
-.nf
-\fBzoneadm\fR [\fB-R\fR \fIroot\fR] [\fB-z\fR \fIzonename\fR] [\fB-u\fR \fIuuid-match\fR] list
- [\fIlist_options\fR]
-.fi
-
-.LP
-.nf
-\fBzoneadm\fR [\fB-R\fR \fIroot\fR] \fB-z\fR \fIzonename\fR [\fB-u\fR \fIuuid-match\fR] mark incomplete
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBzoneadm\fR utility is used to administer system zones. A zone is an
-application container that is maintained by the operating system runtime.
-.SH SECURITY
-.LP
-Once a process has been placed in a zone other than zone \fB0\fR, the process
-or any of its children cannot change zones.
-.SH OPTIONS
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-R\fR \fIroot\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify an alternate root (boot environment). This option can only be used in
-conjunction with the "\fBlist\fR" and "\fBmark\fR" subcommands.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-u\fR \fIuuid-match\fR\fR
-.ad
-.sp .6
-.RS 4n
-Unique identifier for a zone, as assigned by \fBlibuuid\fR(3LIB). If this
-option is present and the argument is a non-empty string, then the zone
-matching the \fBUUID\fR is selected instead of the one named by the \fB-z\fR
-option, if such a zone is present.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-z\fR \fIzonename\fR\fR
-.ad
-.sp .6
-.RS 4n
-String identifier for a zone.
-.RE
-
-.SH SUBCOMMANDS
-.LP
-Subcommands which can result in destructive actions or loss of work have a
-\fB-F\fR flag to force the action. If input is from a terminal device, the user
-is prompted if such a command is given without the \fB-F\fR flag; otherwise, if
-such a command is given without the \fB-F\fR flag, the action is disallowed,
-with a diagnostic message written to standard error. If a zone installation or
-uninstallation is interrupted, the zone is left in the incomplete state. Use
-uninstall to reset such a zone back to the configured state.
-.sp
-.LP
-The following subcommands are supported:
-.sp
-.ne 2
-.na
-\fB\fBattach\fR [\fB-F\fR] [\fB-n\fR \fIpath\fR] [\fIbrand-specific
-options\fR]\fR
-.ad
-.sp .6
-.RS 4n
-The \fBattach\fR subcommand takes a zone that has been detached from one system
-and attaches the zone onto a new system. Therefore, it is advised (though not
-required) that the \fBdetach\fR subcommand should be run before the "attach"
-takes place. Once you have the new zone in the configured state, use the
-\fBattach\fR subcommand to set up the zone root instead of installing the zone
-as a new zone.
-.sp
-The \fB-F\fR option can be used to force the zone into the "installed" state
-with no validation. This option should be used with care since it can leave the
-zone in an unsupportable state if it was moved from a source system to a target
-system that is unable to properly host the zone. The \fB-n\fR option can be
-used to run the \fBattach\fR subcommand, without executing the command. It uses
-the output of the "\fBdetach\fR \fB-n\fR" subcommand as input and is useful to
-identify any conflicting issues, such as the network device being incompatible,
-and can also determine whether the host is capable of supporting the zone. The
-path can be "\fB-\fR", to read the input from standard input.
-.sp
-The zone's brand may include additional options that govern how the zone will
-be attached. See \fBbrands\fR(5) for specific brand information.
-.sp
-The zone being attached must first be configured using the \fBzonecfg\fR (see
-\fBzonecfg\fR(1M)) command. This does not apply when running "\fBattach\fR
-\fB-n\fR".
-.sp
-Use the following command to attach a zone:
-.sp
-.in +2
-.nf
-# \fBzoneadm -z my-zone attach\fR
-.fi
-.in -2
-.sp
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBboot\fR [\fB-X\fR] [\fB--\fR \fIboot_options\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Boot (or activate) the specified zones.
-.sp
-The \fI-X\fR option enables debug for the zone's brand while booting.
-.sp
-The following \fIboot_options\fR are supported:
-.sp
-.ne 2
-.na
-\fB\fB-i\fR \fIaltinit\fR\fR
-.ad
-.sp .6
-.RS 4n
-Select an alternative executable to be the primordial Process. \fIaltinit\fR is
-a valid path to an executable. The default primordial process is
-\fBinit\fR(1M).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-m\fR \fIsmf_options\fR\fR
-.ad
-.sp .6
-.RS 4n
-The \fIsmf_options\fR include two categories of options to control booting
-behavior of the service management facility: recovery options and messages
-options.
-.sp
-Message options determine the type and amount of messages that \fBsmf\fR(5)
-displays during boot. Service options determine the services which are used to
-boot the system. See \fBkernel\fR(1M) for a listing of the \fB-m\fR suboptions.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR\fR
-.ad
-.sp .6
-.RS 4n
-Boots only to milestone \fBsvc:/milestone/single-user:default\fR. This
-milestone is equivalent to init level \fBs\fR. See \fBsvc.startd\fR(1M) and
-\fBinit\fR(1M).
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBclone\fR [\fB-m\fR \fIcopy\fR] [\fB-s\fR \fIzfs_snapshot\fR]
-\fIsource_zone\fR\fR
-.ad
-.sp .6
-.RS 4n
-Install a zone by copying an existing installed zone. This subcommand is an
-alternative way to install the zone.
-.sp
-.ne 2
-.na
-\fB\fB-m\fR \fIcopy\fR\fR
-.ad
-.sp .6
-.RS 4n
-Force the clone to be a copy, even if a "\fBZFS\fR clone" is possible.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR \fIzfs_snapshot\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify the name of a \fBZFS\fR snapshot to use as the source of the clone. The
-\fIsnapshot\fR must be a \fIsnapshot\fR of the source zone taken from a
-previous "\fBzoneadm\fR clone" installation.
-.RE
-
-The source zone must be halted before this subcommand can be used.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdetach\fR [\fB-n\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Detach the specified zone. Detaching a zone is the first step in moving a zone
-from one system to another. The full procedure to migrate a zone is that the
-zone is detached, the \fIzonepath\fR directory is moved to the new host, and
-then the zone is attached on the new host. Once the zone is detached, it is
-left in the configured state. If you try to install or clone to a configured
-zone that has been detached, you will receive an error message and the
-\fBinstall\fR or \fBclone\fR subcommand will not be allowed to proceed. The
-\fB-n\fR option can be used to run the \fBdetach\fR subcommand, without
-executing the command. This generates the information needed for running the
-"\fBattach\fR \fB-n\fR" subcommand, which is useful to identify any conflicting
-issues, such as the network device being incompatible or if the host is capable
-of supporting the zone. The information is sent to standard output and can be
-saved to a file or piped to the "\fBattach\fR \fB-n\fR" subcommand.
-.sp
-Use the following command to detach a zone:
-.sp
-.in +2
-.nf
-# zoneadm -z my-zone detach
-.fi
-.in -2
-.sp
-
-The source zone must be halted before this subcommand can be used.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBhalt [\fB-X\fR]\fR\fR
-.ad
-.sp .6
-.RS 4n
-Halt the specified zones. \fBhalt\fR bypasses running the shutdown scripts
-inside the zone. It also removes run time resources of the zone.
-.sp
-The \fI-X\fR option enables debug for the zone's brand while halting.
-.sp
-Use:
-.sp
-.in +2
-.nf
-zlogin \fIzone\fR shutdown
-.fi
-.in -2
-.sp
-
-to cleanly shutdown the zone by running the shutdown scripts.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBhelp\fR [\fIsubcommand\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Display general help. If you specify \fIsubcommand\fR, displays help on
-\fIsubcommand\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBinstall\fR [\fB-x\fR \fInodataset\fR] [\fIbrand-specific options\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Install the specified zone on the system. This subcommand automatically
-attempts to verify first, most verification errors are fatal. See the
-\fBverify\fR subcommand.
-.sp
-.ne 2
-.na
-\fB\fB-x\fR \fInodataset\fR\fR
-.ad
-.sp .6
-.RS 4n
-Do not create a \fBZFS\fR file system.
-.RE
-
-The zone's brand may include additional options that govern how the software
-will be installed in the zone. See \fBbrands\fR(5) for specific brand
-information.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBlist\fR [\fIlist_options\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Display the name of the current zones, or the specified zone if indicated.
-.sp
-By default, all running zones are listed. If you use this subcommand with the
-\fBzoneadm\fR \fB-z\fR \fIzonename\fR option, it lists only the specified zone,
-regardless of its state. In this case, the \fB-i\fR and \fB-c\fR options are
-disallowed.
-.sp
-If neither the \fB-i\fR, \fB-c\fR, or \fB-n\fR options are given, all running
-zones are listed.
-.sp
-The following \fIlist_options\fR are supported:
-.sp
-.ne 2
-.na
-\fB\fB-c\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display all configured zones. This option overrides the \fB-i\fR option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-i\fR\fR
-.ad
-.sp .6
-.RS 4n
-Expand the display to all installed zones.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-n\fR\fR
-.ad
-.sp .6
-.RS 4n
-Do not include the global zone in the list of zones returned.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR\fR
-.ad
-.sp .6
-.RS 4n
-Request machine parsable output. The output format is a list of lines, one per
-zone, with colon- delimited fields. These fields are:
-.sp
-.in +2
-.nf
-zoneid:zonename:state:zonepath:uuid:brand:ip-type
-.fi
-.in -2
-.sp
-
-If the \fBzonepath\fR contains embedded colons, they can be escaped by a
-backslash ("\:"), which is parsable by using the shell \fBread\fR(1) function
-with the environmental variable \fBIFS\fR. The \fIuuid\fR value is assigned by
-\fBlibuuid\fR(3LIB) when the zone is installed, and is useful for identifying
-the same zone when present (or renamed) on alternate boot environments. Any
-software that parses the output of the "\fBzoneadm list -p\fR" command must be
-able to handle any fields that may be added in the future.
-.sp
-The \fB-v\fR and \fB-p\fR options are mutually exclusive. If neither \fB-v\fR
-nor \fB-p\fR is used, just the zone name is listed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display verbose information, including zone name, id, current state, root
-directory, brand type, ip-type, and options.
-.sp
-The \fB-v\fR and \fB-p\fR options are mutually exclusive. If neither \fB-v\fR
-nor \fB-p\fR is used, just the zone name is listed.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmark incomplete\fR\fR
-.ad
-.sp .6
-.RS 4n
-Change the state of an installed zone to "incomplete." This command may be
-useful in cases where administrative changes on the system have rendered a zone
-unusable or inconsistent. This change cannot be undone (except by uninstalling
-the zone).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmove\fR \fInew_zonepath\fR\fR
-.ad
-.sp .6
-.RS 4n
-Move the \fIzonepath\fR to \fInew_zonepath\fR. The zone must be halted before
-this subcommand can be used. The \fInew_zonepath\fR must be a local file system
-and normal restrictions for \fIzonepath\fR apply.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBready [\fB-X\fR]\fR\fR
-.ad
-.sp .6
-.RS 4n
-Prepares a zone for running applications but does not start any user processes
-in the zone.
-.sp
-The \fI-X\fR option enables debug for the zone's brand while readying.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBreboot\fR\ [\fB-X\fR] [\fB--\fR \fIboot_options\fR]]\fR
-.ad
-.sp .6
-.RS 4n
-Restart the zones. This is equivalent to a \fBhalt\fR \fBboot\fR sequence. This
-subcommand fails if the specified zones are not active. See \fIboot\fR subcommand
-for the boot options.
-.sp
-The \fI-X\fR option enables debug for the zone's brand while rebooting.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBshutdown\fR [\fB-r\fR [\fB--\fR \fIboot_options\fR]]\fR
-.ad
-.sp .6
-.RS 4n
-Gracefully shutdown the specified zone. This subcommand waits for all zone
-processes to finish; the default timeout is SCF_PROPERTY_TIMEOUT value from
-the SMF service system/zones. If the \fB-r\fR option is specified, reboot the
-zone. See \fIboot\fR subcommand for the boot options.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBuninstall [\fR\fB-F\fR\fB]\fR\fR
-.ad
-.sp .6
-.RS 4n
-Uninstall the specified zone from the system. Use this subcommand with caution.
-It removes all of the files under the \fIzonepath\fR of the zone in question.
-You can use the \fB-F\fR flag to force the action.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBverify\fR\fR
-.ad
-.sp .6
-.RS 4n
-Check to make sure the configuration of the specified zone can safely be
-installed on the machine. Following is a break-down of the checks by
-\fBresource/property\fR type:
-.sp
-.ne 2
-.na
-\fB\fBzonepath\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBzonepath\fR and its parent directory exist and are owned by root with
-appropriate modes . The appropriate modes are that \fBzonepath\fR is \fB700\fR,
-its parent is not \fBgroup\fR or \fBworld-writable\fR and so forth.
-\fBzonepath\fR is not over an NFS mount. A sub-directory of the \fBzonepath\fR
-named "root" does not exist.
-.sp
-If \fBzonepath\fR does not exist, the \fBverify\fR does not fail, but merely
-warns that a subsequent install will attempt to create it with proper
-permissions. A \fBverify\fR subsequent to that might fail should anything go
-wrong.
-.sp
-\fBzonepath\fR cannot be a symbolic link.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfs\fR\fR
-.ad
-.sp .6
-.RS 4n
-Any \fBfs\fR resources have their \fItype\fR value checked. An error is
-reported if the value is one of \fBproc\fR, \fBmntfs\fR, \fBautofs\fR,
-or \fBnfs\fR or the filesystem does not have an associated mount
-binary at \fB/usr/lib/fs/\fI<fstype>\fR/mount\fR.
-.sp
-It is an error for the \fIdirectory\fR to be a relative path.
-.sp
-It is an error for the path specified by \fBraw\fR to be a relative path or if
-there is no \fBfsck\fR binary for a given filesystem type at
-\fB/usr/lib/fs/\fI<fstype>\fR/fsck\fR. It is also an error if a corresponding
-\fBfsck\fR binary exists but a \fBraw\fR path is not specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnet\fR\fR
-.ad
-.sp .6
-.RS 4n
-All physical network interfaces exist. All network address resources are one
-of:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-a valid IPv4 address, optionally followed by "\fB/\fR" and a prefix length;
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-a valid IPv6 address, which must be followed by "\fB/\fR" and a prefix length;
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-a host name which resolves to an IPv4 address.
-.RE
-Note that hostnames that resolve to IPv6 addresses are not supported.
-.sp
-The physical interface name is the network interface name.
-.sp
-A zone can be configured to be either exclusive-IP or shared-IP. For a
-shared-IP zone, both the physical and address properties must be set. For an
-exclusive-IP zone, the physical property must be set and the address property
-cannot be set.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrctl\fR\fR
-.ad
-.sp .6
-.RS 4n
-It also verifies that any defined resource control values are valid on the
-current machine. This means that the privilege level is \fBprivileged\fR, the
-limit is lower than the currently defined system value, and that the defined
-action agrees with the actions that are valid for the given resource control.
-.RE
-
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRUsing the \fB-m\fR Option
-.sp
-.LP
-The following command illustrates the use of the \fB-m\fR option.
-
-.sp
-.in +2
-.nf
-# \fBzoneadm boot -- -m verbose\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRUsing the \fB-i\fR Option
-.sp
-.LP
-The following command illustrates the use of the \fB-i\fR option.
-
-.sp
-.in +2
-.nf
-# \fBzoneadm boot -- -i /sbin/init\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRUsing the \fB-s\fR Option
-.sp
-.LP
-The following command illustrates the use of the \fB-s\fR option.
-
-.sp
-.in +2
-.nf
-# \fBzoneadm boot -- -s\fR
-.fi
-.in -2
-.sp
-
-.SH EXIT STATUS
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.sp .6
-.RS 4n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB1\fR\fR
-.ad
-.sp .6
-.RS 4n
-An error occurred.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB2\fR\fR
-.ad
-.sp .6
-.RS 4n
-Invalid usage.
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Committed
-.TE
-
-.SH SEE ALSO
-.LP
-\fBread\fR(1), \fBsvcs\fR(1), \fBzlogin\fR(1), \fBzonename\fR(1),
-\fBinit\fR(1M), \fBkernel\fR(1M), \fBsvcadm\fR(1M), \fBsvc.startd\fR(1M),
-\fBsvc.startd\fR(1M), \fBzonecfg\fR(1M), \fBlibuuid\fR(3LIB),
-\fBattributes\fR(5), \fBbrands\fR(5), \fBnative\fR(5), \fBsmf\fR(5),
-\fBzones\fR(5)
-.SH NOTES
-.LP
-The \fBzones\fR(5) service is managed by the service management facility,
-\fBsmf\fR(5), under the service identifier:
-.sp
-.in +2
-.nf
-svc:/system/zones:default
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Administrative actions on this service, such as enabling, disabling, or
-requesting restart, can be performed using \fBsvcadm\fR(1M). The service's
-status can be queried using the \fBsvcs\fR(1) command.
diff --git a/usr/src/man/man1m/zoneadmd.1m b/usr/src/man/man1m/zoneadmd.1m
deleted file mode 100644
index f07c9dd5f1..0000000000
--- a/usr/src/man/man1m/zoneadmd.1m
+++ /dev/null
@@ -1,67 +0,0 @@
-'\" te
-.\" Copyright (c) 2004, Sun Microsystems, Inc.
-.\" All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH ZONEADMD 1M "Nov 1, 2004"
-.SH NAME
-zoneadmd \- zone administration daemon
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/zones/zoneadmd\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBzoneadmd\fR is a system daemon that is started when the system needs to
-manage a particular zone. Because each instance of the \fBzoneadmd\fR daemon
-manages a particular zone, it is not unexpected to see multiple \fBzoneadmd\fR
-daemons running.
-.sp
-.LP
-This daemon is started automatically by the zone management software and should
-not be invoked directly. The daemon shuts down automatically when no longer in
-use. It does not constitute a programming interface, but is classified as a
-private interface.
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Private
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBsvcs\fR(1), \fBzlogin\fR(1), \fBsvcadm\fR(1M), \fBzoneadm\fR(1M),
-\fBattributes\fR(5), \fBsmf\fR(5), \fBzones\fR(5)
-.SH NOTES
-.sp
-.LP
-The \fBzones\fR(5) service is managed by the service management facility,
-\fBsmf\fR(5), under the service identifier:
-.sp
-.in +2
-.nf
-svc:/system/zones:default
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Administrative actions on this service, such as enabling, disabling, or
-requesting restart, can be performed using \fBsvcadm\fR(1M). The service's
-status can be queried using the \fBsvcs\fR(1) command.
diff --git a/usr/src/man/man1m/zonecfg.1m b/usr/src/man/man1m/zonecfg.1m
deleted file mode 100644
index 83b19005a2..0000000000
--- a/usr/src/man/man1m/zonecfg.1m
+++ /dev/null
@@ -1,2025 +0,0 @@
-'\" te
-.\" Copyright (c) 2004, 2009 Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 2015 Joyent, Inc.
-.\" Copyright 2017 Peter Tribble
-.\" Copyright 2021 OmniOS Community Edition (OmniOSce) Association.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH ZONECFG 1M "Jan 23, 2021"
-.SH NAME
-zonecfg \- set up zone configuration
-.SH SYNOPSIS
-.nf
-\fBzonecfg\fR {\fB-z\fR \fIzonename\fR | \fB-u\fR \fIuuid\fR}
-.fi
-
-.LP
-.nf
-\fBzonecfg\fR {\fB-z\fR \fIzonename\fR | \fB-u\fR \fIuuid\fR} \fIsubcommand\fR
-.fi
-
-.LP
-.nf
-\fBzonecfg\fR {\fB-z\fR \fIzonename\fR | \fB-u\fR \fIuuid\fR} \fB-f\fR \fIcommand_file\fR
-.fi
-
-.LP
-.nf
-\fBzonecfg\fR help
-.fi
-
-.SH DESCRIPTION
-The \fBzonecfg\fR utility creates and modifies the configuration of a zone.
-Zone configuration consists of a number of resources and properties.
-.sp
-.LP
-To simplify the user interface, \fBzonecfg\fR uses the concept of a scope. The
-default scope is global.
-.sp
-.LP
-The following synopsis of the \fBzonecfg\fR command is for interactive usage:
-.sp
-.in +2
-.nf
-{\fB-z\fR \fIzonename\fR | \fB-u\fR \fIuuid\fR}
-zonecfg {\fB-z\fR \fIzonename | \fB-u\fR \fIuuid} subcommand\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Parameters changed through \fBzonecfg\fR do not affect a running zone. The zone
-must be rebooted for the changes to take effect.
-.sp
-.LP
-In addition to creating and modifying a zone, the \fBzonecfg\fR utility can
-also be used to persistently specify the resource management settings for the
-global zone.
-.sp
-.LP
-In the following text, "rctl" is used as an abbreviation for "resource
-control". See \fBresource_controls\fR(5).
-.sp
-.LP
-Every zone is configured with an associated brand. The brand determines the
-user-level environment used within the zone, as well as various behaviors for
-the zone when it is installed, boots, or is shutdown. Once a zone has been
-installed the brand cannot be changed. The default brand is determined by the
-installed distribution in the global zone. Some brands do not support all of
-the \fBzonecfg\fR properties and resources. See the brand-specific man page for
-more details on each brand. For an overview of brands, see the \fBbrands\fR(5)
-man page.
-.SS "Resources"
-The following resource types are supported:
-.sp
-.ne 2
-.na
-\fB\fBattr\fR\fR
-.ad
-.sp .6
-.RS 4n
-Generic attribute.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcapped-cpu\fR\fR
-.ad
-.sp .6
-.RS 4n
-Limits for CPU usage.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcapped-memory\fR\fR
-.ad
-.sp .6
-.RS 4n
-Limits for physical, swap, and locked memory.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdataset\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBZFS\fR dataset.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdedicated-cpu\fR\fR
-.ad
-.sp .6
-.RS 4n
-Subset of the system's processors dedicated to this zone while it is running.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdevice\fR\fR
-.ad
-.sp .6
-.RS 4n
-Device.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfs\fR\fR
-.ad
-.sp .6
-.RS 4n
-file-system
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnet\fR\fR
-.ad
-.sp .6
-.RS 4n
-Network interface.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrctl\fR\fR
-.ad
-.sp .6
-.RS 4n
-Resource control.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsecurity-flags\fR\fR
-.ad
-.sp .6
-.RS 4n
-Process security flag settings.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBadmin\fR\fR
-.ad
-.sp .6
-.RS 4n
-Delegation of administration to specific users.
-.RE
-
-.SS "Properties"
-Each resource type has one or more properties. There are also some global
-properties, that is, properties of the configuration as a whole, rather than of
-some particular resource.
-.sp
-.LP
-The following properties are supported:
-.sp
-.ne 2
-.na
-\fB(global)\fR
-.ad
-.sp .6
-.RS 4n
-\fBzonename\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB(global)\fR
-.ad
-.sp .6
-.RS 4n
-\fBzonepath\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB(global)\fR
-.ad
-.sp .6
-.RS 4n
-\fBautoboot\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB(global)\fR
-.ad
-.sp .6
-.RS 4n
-\fBbootargs\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB(global)\fR
-.ad
-.sp .6
-.RS 4n
-\fBpool\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB(global)\fR
-.ad
-.sp .6
-.RS 4n
-\fBlimitpriv\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB(global)\fR
-.ad
-.sp .6
-.RS 4n
-\fBbrand\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB(global)\fR
-.ad
-.sp .6
-.RS 4n
-\fBcpu-shares\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB(global)\fR
-.ad
-.sp .6
-.RS 4n
-\fBhostid\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB(global)\fR
-.ad
-.sp .6
-.RS 4n
-\fBmax-lwps\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB(global)\fR
-.ad
-.sp .6
-.RS 4n
-\fBmax-msg-ids\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB(global)\fR
-.ad
-.sp .6
-.RS 4n
-\fBmax-processes\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB(global)\fR
-.ad
-.sp .6
-.RS 4n
-\fBmax-sem-ids\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB(global)\fR
-.ad
-.sp .6
-.RS 4n
-\fBmax-shm-ids\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB(global)\fR
-.ad
-.sp .6
-.RS 4n
-\fBmax-shm-memory\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB(global)\fR
-.ad
-.sp .6
-.RS 4n
-\fBscheduling-class\fR
-.RE
-
-.sp
-.ne 2
-.na
-.B (global)
-.ad
-.sp .6
-.RS 4n
-.B fs-allowed
-.RE
-
-.sp
-.ne 2
-.na
-\fB(global)\fR
-.ad
-.sp .6
-.RS 4n
-\fBzfs-io-priority\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfs\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBdir\fR, \fBspecial\fR, \fBraw\fR, \fBtype\fR, \fBoptions\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnet\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBaddress\fR, \fBallowed-address\fR, \fBdefrouter\fR, \fBglobal-nic\fR, \fBmac-addr\fR, \fBphysical\fR, \fBproperty\fR, \fBvlan-id\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdevice\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBmatch\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrctl\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBname\fR, \fBvalue\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBattr\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBname\fR, \fBtype\fR, \fBvalue\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdataset\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBname\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdedicated-cpu\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBncpus\fR, \fBimportance\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcapped-memory\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBphysical\fR, \fBswap\fR, \fBlocked\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcapped-cpu\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBncpus\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsecurity-flags\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBlower\fR, \fBdefault\fR, \fBupper\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBadmin\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBuser\fR, \fBauths\fR.
-.RE
-
-.sp
-.LP
-As for the property values which are paired with these names, they are either
-simple, complex, or lists. The type allowed is property-specific. Simple values
-are strings, optionally enclosed within quotation marks. Complex values have
-the syntax:
-.sp
-.in +2
-.nf
-(<\fIname\fR>=<\fIvalue\fR>,<\fIname\fR>=<\fIvalue\fR>,...)
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-where each <\fIvalue\fR> is simple, and the <\fIname\fR> strings are unique
-within a given property. Lists have the syntax:
-.sp
-.in +2
-.nf
-[<\fIvalue\fR>,...]
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-where each <\fIvalue\fR> is either simple or complex. A list of a single value
-(either simple or complex) is equivalent to specifying that value without the
-list syntax. That is, "foo" is equivalent to "[foo]". A list can be empty
-(denoted by "[]").
-.sp
-.LP
-In interpreting property values, \fBzonecfg\fR accepts regular expressions as
-specified in \fBfnmatch\fR(5). See \fBEXAMPLES\fR.
-.sp
-.LP
-The property types are described as follows:
-.sp
-.ne 2
-.na
-\fBglobal: \fBzonename\fR\fR
-.ad
-.sp .6
-.RS 4n
-The name of the zone.
-.RE
-
-.sp
-.ne 2
-.na
-\fBglobal: \fBzonepath\fR\fR
-.ad
-.sp .6
-.RS 4n
-Path to zone's file system.
-.RE
-
-.sp
-.ne 2
-.na
-\fBglobal: \fBautoboot\fR\fR
-.ad
-.sp .6
-.RS 4n
-Boolean indicating that a zone should be booted automatically at system boot.
-Note that if the zones service is disabled, the zone will not autoboot,
-regardless of the setting of this property. You enable the zones service with a
-\fBsvcadm\fR command, such as:
-.sp
-.in +2
-.nf
-# \fBsvcadm enable svc:/system/zones:default\fR
-.fi
-.in -2
-.sp
-
-Replace \fBenable\fR with \fBdisable\fR to disable the zones service. See
-\fBsvcadm\fR(1M).
-.RE
-
-.sp
-.ne 2
-.na
-\fBglobal: \fBbootargs\fR\fR
-.ad
-.sp .6
-.RS 4n
-Arguments (options) to be passed to the zone bootup, unless options are
-supplied to the "\fBzoneadm boot\fR" command, in which case those take
-precedence. The valid arguments are described in \fBzoneadm\fR(1M).
-.RE
-
-.sp
-.ne 2
-.na
-\fBglobal: \fBpool\fR\fR
-.ad
-.sp .6
-.RS 4n
-Name of the resource pool that this zone must be bound to when booted. This
-property is incompatible with the \fBdedicated-cpu\fR resource.
-.RE
-
-.sp
-.ne 2
-.na
-\fBglobal: \fBlimitpriv\fR\fR
-.ad
-.sp .6
-.RS 4n
-The maximum set of privileges any process in this zone can obtain. The property
-should consist of a comma-separated privilege set specification as described in
-\fBpriv_str_to_set\fR(3C). Privileges can be excluded from the resulting set by
-preceding their names with a dash (-) or an exclamation point (!). The special
-privilege string "zone" is not supported in this context. If the special string
-"default" occurs as the first token in the property, it expands into a safe set
-of privileges that preserve the resource and security isolation described in
-\fBzones\fR(5). A missing or empty property is equivalent to this same set of
-safe privileges.
-.sp
-The system administrator must take extreme care when configuring privileges for
-a zone. Some privileges cannot be excluded through this mechanism as they are
-required in order to boot a zone. In addition, there are certain privileges
-which cannot be given to a zone as doing so would allow processes inside a zone
-to unduly affect processes in other zones. \fBzoneadm\fR(1M) indicates when an
-invalid privilege has been added or removed from a zone's privilege set when an
-attempt is made to either "boot" or "ready" the zone.
-.sp
-See \fBprivileges\fR(5) for a description of privileges. The command "\fBppriv
--l\fR" (see \fBppriv\fR(1)) produces a list of all Solaris privileges. You can
-specify privileges as they are displayed by \fBppriv\fR. In
-\fBprivileges\fR(5), privileges are listed in the form
-PRIV_\fIprivilege_name\fR. For example, the privilege \fIsys_time\fR, as you
-would specify it in this property, is listed in \fBprivileges\fR(5) as
-\fBPRIV_SYS_TIME\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBglobal: \fBbrand\fR\fR
-.ad
-.sp .6
-.RS 4n
-The zone's brand type.
-.RE
-
-.sp
-.ne 2
-.na
-\fBglobal: \fBip-type\fR\fR
-.ad
-.sp .6
-.RS 4n
-A zone can either share the IP instance with the global zone, which is the
-default, or have its own exclusive instance of IP.
-.sp
-This property takes the values \fBshared\fR and \fBexclusive\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBglobal: \fBhostid\fR\fR
-.ad
-.sp .6
-.RS 4n
-A zone can emulate a 32-bit host identifier to ease system consolidation. A
-zone's \fBhostid\fR property is empty by default, meaning that the zone does
-not emulate a host identifier. Zone host identifiers must be hexadecimal values
-between 0 and FFFFFFFE. A \fB0x\fR or \fB0X\fR prefix is optional. Both
-uppercase and lowercase hexadecimal digits are acceptable.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfs\fR: dir, special, raw, type, options\fR
-.ad
-.sp .6
-.RS 4n
-Values needed to determine how, where, and so forth to mount file systems. See
-\fBmount\fR(1M), \fBmount\fR(2), \fBfsck\fR(1M), and \fBvfstab\fR(4).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBinherit-pkg-dir\fR: dir\fR
-.ad
-.sp .6
-.RS 4n
-The directory path.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnet\fR: address, allowed-address, defrouter, global-nic, mac-addr, physical, property, vlan-id\fR
-.ad
-.sp .6
-.RS 4n
-The network address and physical interface name of the network interface. The
-network address is one of:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-a valid IPv4 address, optionally followed by "\fB/\fR" and a prefix length;
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-a valid IPv6 address, which must be followed by "\fB/\fR" and a prefix length;
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-a host name which resolves to an IPv4 address.
-.RE
-Note that host names that resolve to IPv6 addresses are not supported.
-.sp
-The physical interface name is the network interface name.
-.sp
-The default router is specified similarly to the network address except that it
-must not be followed by a \fB/\fR (slash) and a network prefix length.
-.sp
-A zone can be configured to be either exclusive-IP or shared-IP. For a
-shared-IP zone, you must set both the physical and address properties; setting
-the default router is optional. The interface specified in the physical
-property must be plumbed in the global zone prior to booting the non-global
-zone. However, if the interface is not used by the global zone, it should be
-configured \fBdown\fR in the global zone, and the default router for the
-interface should be specified here.
-.sp
-The global-nic is used for exclusive stack zones which will use a VNIC on-demand. When the zone boots, a VNIC named using the physical property will be created on the global NIC. If provided, the mac-addr and vlan-id will be set on this VNIC.
-.sp
-The \fBproperty\fR setting is a resource which can be used to set arbitrary name/value pairs on the network. These name/value pairs are made available to the zone's brand, which can use them as needed to set up the network interface.
-.sp
-For an exclusive-IP zone, the physical property must be set and the address and
-default router properties cannot be set.
-.sp
-An exclusive-IP zone is responsible for managing its own network configuration.
-If the allowed-address property is set, the zone administrator will only be
-permitted to configure the interface with the specified address. To allow
-multiple addresses (for example, an IPv4 and IPv6 address), use add net
-multiple times.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdevice\fR: match\fR
-.ad
-.sp .6
-.RS 4n
-Device name to match.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrctl\fR: name, value\fR
-.ad
-.sp .6
-.RS 4n
-The name and \fIpriv\fR/\fIlimit\fR/\fIaction\fR triple of a resource control.
-See \fBprctl\fR(1) and \fBrctladm\fR(1M). The preferred way to set rctl values
-is to use the global property name associated with a specific rctl.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBattr\fR: name, type, value\fR
-.ad
-.sp .6
-.RS 4n
-The name, type and value of a generic attribute. The \fBtype\fR must be one of
-\fBint\fR, \fBuint\fR, \fBboolean\fR or \fBstring\fR, and the value must be of
-that type. \fBuint\fR means unsigned, that is, a non-negative integer.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdataset\fR: name\fR
-.ad
-.sp .6
-.RS 4n
-The name of a \fBZFS\fR dataset to be accessed from within the zone. See
-\fBzfs\fR(1M).
-.RE
-
-.sp
-.ne 2
-.na
-\fBglobal: \fBcpu-shares\fR\fR
-.ad
-.sp .6
-.RS 4n
-The number of Fair Share Scheduler (FSS) shares to allocate to this zone. This
-property is incompatible with the \fBdedicated-cpu\fR resource. This property
-is the preferred way to set the \fBzone.cpu-shares\fR rctl.
-.RE
-
-.sp
-.ne 2
-.na
-\fBglobal: \fBmax-lwps\fR\fR
-.ad
-.sp .6
-.RS 4n
-The maximum number of LWPs simultaneously available to this zone. This property
-is the preferred way to set the \fBzone.max-lwps\fR rctl.
-If \fBmax-processes\fR is not explicitly set then it will be set to the
-same value as \fBmax-lwps\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBglobal: \fBmax-msg-ids\fR\fR
-.ad
-.sp .6
-.RS 4n
-The maximum number of message queue IDs allowed for this zone. This property is
-the preferred way to set the \fBzone.max-msg-ids\fR rctl.
-.RE
-
-.sp
-.ne 2
-.na
-\fBglobal: \fBmax-processes\fR\fR
-.ad
-.sp .6
-.RS 4n
-The maximum number of processes simultaneously available to this zone. This
-property is the preferred way to set the \fBzone.max-processes\fR rctl.
-If \fBmax-lwps\fR is not explicitly set, then setting this property will
-automatically set \fBmax-lwps\fR to 10 times the value of
-\fBmax-processes\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBglobal: \fBmax-sem-ids\fR\fR
-.ad
-.sp .6
-.RS 4n
-The maximum number of semaphore IDs allowed for this zone. This property is the
-preferred way to set the \fBzone.max-sem-ids\fR rctl.
-.RE
-
-.sp
-.ne 2
-.na
-\fBglobal: \fBmax-shm-ids\fR\fR
-.ad
-.sp .6
-.RS 4n
-The maximum number of shared memory IDs allowed for this zone. This property is
-the preferred way to set the \fBzone.max-shm-ids\fR rctl.
-.RE
-
-.sp
-.ne 2
-.na
-\fBglobal: \fBmax-shm-memory\fR\fR
-.ad
-.sp .6
-.RS 4n
-The maximum amount of shared memory allowed for this zone. This property is the
-preferred way to set the \fBzone.max-shm-memory\fR rctl. A scale (K, M, G, T)
-can be applied to the value for this number (for example, 1M is one megabyte).
-.RE
-
-.sp
-.ne 2
-.na
-\fBglobal: \fBscheduling-class\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the scheduling class used for processes running in a zone. When this
-property is not specified, the scheduling class is established as follows:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-If the \fBcpu-shares\fR property or equivalent rctl is set, the scheduling
-class \fBFSS\fR is used.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-If neither \fBcpu-shares\fR nor the equivalent rctl is set and the zone's pool
-property references a pool that has a default scheduling class, that class is
-used.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Under any other conditions, the system default scheduling class is used.
-.RE
-.sp
-If the \fBFX\fR scheduling class is specified, then the optional
-\fBfixed-hi-pri\fR attribute can be set to \fBtrue\fR. This causes all of the
-processes in the zone to run at the highest \fBFX\fR priority. By default
-processes under \fBFX\fR run at the lowest priority. See \fBpriocntl\fR(2)
-for details on each scheduling class.
-.RE
-
-
-.sp
-.ne 2
-.na
-\fB\fBdedicated-cpu\fR: ncpus, importance\fR
-.ad
-.sp .6
-.RS 4n
-The number of CPUs that should be assigned for this zone's exclusive use. The
-zone will create a pool and processor set when it boots. See \fBpooladm\fR(1M)
-and \fBpoolcfg\fR(1M) for more information on resource pools. The \fBncpu\fR
-property can specify a single value or a range (for example, 1-4) of
-processors. The \fBimportance\fR property is optional; if set, it will specify
-the \fBpset.importance\fR value for use by \fBpoold\fR(1M). If this resource is
-used, there must be enough free processors to allocate to this zone when it
-boots or the zone will not boot. The processors assigned to this zone will not
-be available for the use of the global zone or other zones. This resource is
-incompatible with both the \fBpool\fR and \fBcpu-shares\fR properties. Only a
-single instance of this resource can be added to the zone.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcapped-memory\fR: physical, swap, locked\fR
-.ad
-.sp .6
-.RS 4n
-The caps on the memory that can be used by this zone. A scale (K, M, G, T) can
-be applied to the value for each of these numbers (for example, 1M is one
-megabyte). Each of these properties is optional but at least one property must
-be set when adding this resource. Only a single instance of this resource can
-be added to the zone. The \fBphysical\fR property sets the \fBmax-rss\fR for
-this zone. This will be enforced by \fBrcapd\fR(1M) running in the global zone.
-The \fBswap\fR property is the preferred way to set the \fBzone.max-swap\fR
-rctl. The \fBlocked\fR property is the preferred way to set the
-\fBzone.max-locked-memory\fR rctl.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcapped-cpu\fR: ncpus\fR
-.ad
-.sp .6
-.RS 4n
-Sets a limit on the amount of CPU time that can be used by a zone. The unit
-used translates to the percentage of a single CPU that can be used by all user
-threads in a zone, expressed as a fraction (for example, \fB\&.75\fR) or a
-mixed number (whole number and fraction, for example, \fB1.25\fR). An
-\fBncpu\fR value of \fB1\fR means 100% of a CPU, a value of \fB1.25\fR means
-125%, \fB\&.75\fR mean 75%, and so forth. When projects within a capped zone
-have their own caps, the minimum value takes precedence.
-.sp
-The \fBcapped-cpu\fR property is an alias for \fBzone.cpu-cap\fR resource
-control and is related to the \fBzone.cpu-cap\fR resource control. See
-\fBresource_controls\fR(5).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsecurity-flags\fR: lower, default, upper\fR
-.ad
-.sp .6
-.RS 4n
-Set the process security flags associated with the zone. The \fBlower\fR and
-\fBupper\fR fields set the limits, the \fBdefault\fR field is set of flags all
-zone processes inherit.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBadmin\fR: user, auths\fR
-.ad
-.sp .6
-.RS 4n
-Delegate zone administration to the named user. Valid values for \fBauths\fR
-are \fBlogin\fR, \fBmanage\fR, and \fBclonefrom\fR. The \fBlogin\fR
-authorization enables the user to use \fBzlogin\fR(1) to log in to the zone,
-being prompted for authentication (but not to access the zone console). The
-\fBmanage\fR authorization enables the user to install, update, boot or halt
-the zone, to log in using \fBzlogin\fR(1) without authentication, and to access
-the zone console. The \fBclonefrom\fR authorization allows the user to install
-a new zone using this zone as a clone source.
-.RE
-
-.sp
-.ne 2
-.na
-\fBglobal: \fBfs-allowed\fR\fR
-.ad
-.sp .6
-.RS 4n
-A comma-separated list of additional filesystems that may be mounted within
-the zone; for example "ufs,pcfs". By default, only hsfs(7fs) and network
-filesystems can be mounted. If the first entry in the list is "-" then
-that disables all of the default filesystems. If any filesystems are listed
-after "-" then only those filesystems can be mounted.
-
-This property does not apply to filesystems mounted into the zone via "add fs"
-or "add dataset".
-
-WARNING: allowing filesystem mounts other than the default may allow the zone
-administrator to compromise the system with a malicious filesystem image, and
-is not supported.
-.RE
-
-.sp
-.ne 2
-.na
-\fBglobal: \fBzfs-io-priority\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies a priority for this zone's ZFS I/O. The priority is used by the ZFS I/O scheduler as in input to determine how to schedule I/O across zones. By default all zones have a priority of 1. The value can be increased for zones whose I/O is more critical. This property is the preferred way to set the \fBzone.zfs-io-priority\fR rctl.
-.RE
-
-.sp
-.LP
-The following table summarizes resources, property-names, and types:
-.sp
-.in +2
-.nf
-resource property-name type
-(global) zonename simple
-(global) zonepath simple
-(global) autoboot simple
-(global) bootargs simple
-(global) pool simple
-(global) limitpriv simple
-(global) brand simple
-(global) ip-type simple
-(global) hostid simple
-(global) cpu-shares simple
-(global) max-lwps simple
-(global) max-msg-ids simple
-(global) max-processes simple
-(global) max-sem-ids simple
-(global) max-shm-ids simple
-(global) max-shm-memory simple
-(global) scheduling-class simple
-(global) zfs-io-priority simple
-fs dir simple
- special simple
- raw simple
- type simple
- options list of simple
-net address simple
- allowed-address simple
- defrouter simple
- global-nic simple
- mac-addr simple
- physical simple
- property list of complex
- name simple
- value simple
- vlan-id simple
-device match simple
-rctl name simple
- value list of complex
-attr name simple
- type simple
- value simple
-dataset name simple
-dedicated-cpu ncpus simple or range
- importance simple
-
-capped-memory physical simple with scale
- swap simple with scale
- locked simple with scale
-
-capped-cpu ncpus simple
-security-flags lower simple
- default simple
- upper simple
-admin user simple
- auths simple
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-To further specify things, the breakdown of the complex property "value" of the
-"rctl" resource type, it consists of three name/value pairs, the names being
-"priv", "limit" and "action", each of which takes a simple value. The "name"
-property of an "attr" resource is syntactically restricted in a fashion similar
-but not identical to zone names: it must begin with an alphanumeric, and can
-contain alphanumerics plus the hyphen (\fB-\fR), underscore (\fB_\fR), and dot
-(\fB\&.\fR) characters. Attribute names beginning with "zone" are reserved for
-use by the system. Finally, the "autoboot" global property must have a value of
-"true" or "false".
-.SS "Using Kernel Statistics to Monitor CPU Caps"
-Using the kernel statistics (\fBkstat\fR(3KSTAT)) module \fBcaps\fR, the system
-maintains information for all capped projects and zones. You can access this
-information by reading kernel statistics (\fBkstat\fR(3KSTAT)), specifying
-\fBcaps\fR as the \fBkstat\fR module name. The following command displays
-kernel statistics for all active CPU caps:
-.sp
-.in +2
-.nf
-# \fBkstat caps::'/cpucaps/'\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-A \fBkstat\fR(1M) command running in a zone displays only CPU caps relevant for
-that zone and for projects in that zone. See \fBEXAMPLES\fR.
-.sp
-.LP
-The following are cap-related arguments for use with \fBkstat\fR(1M):
-.sp
-.ne 2
-.na
-\fB\fBcaps\fR\fR
-.ad
-.sp .6
-.RS 4n
-The \fBkstat\fR module.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBproject_caps\fR or \fBzone_caps\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBkstat\fR class, for use with the \fBkstat\fR \fB-c\fR option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcpucaps_project_\fR\fIid\fR or \fBcpucaps_zone_\fR\fIid\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBkstat\fR name, for use with the \fBkstat\fR \fB-n\fR option. \fIid\fR is the
-project or zone identifier.
-.RE
-
-.sp
-.LP
-The following fields are displayed in response to a \fBkstat\fR(1M) command
-requesting statistics for all CPU caps.
-.sp
-.ne 2
-.na
-\fB\fBmodule\fR\fR
-.ad
-.sp .6
-.RS 4n
-In this usage of \fBkstat\fR, this field will have the value \fBcaps\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBname\fR\fR
-.ad
-.sp .6
-.RS 4n
-As described above, \fBcpucaps_project_\fR\fIid\fR or
-\fBcpucaps_zone_\fR\fIid\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBabove_sec\fR\fR
-.ad
-.sp .6
-.RS 4n
-Total time, in seconds, spent above the cap.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBbelow_sec\fR\fR
-.ad
-.sp .6
-.RS 4n
-Total time, in seconds, spent below the cap.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmaxusage\fR\fR
-.ad
-.sp .6
-.RS 4n
-Maximum observed CPU usage.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnwait\fR\fR
-.ad
-.sp .6
-.RS 4n
-Number of threads on cap wait queue.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBusage\fR\fR
-.ad
-.sp .6
-.RS 4n
-Current aggregated CPU usage for all threads belonging to a capped project or
-zone, in terms of a percentage of a single CPU.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBvalue\fR\fR
-.ad
-.sp .6
-.RS 4n
-The cap value, in terms of a percentage of a single CPU.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBzonename\fR\fR
-.ad
-.sp .6
-.RS 4n
-Name of the zone for which statistics are displayed.
-.RE
-
-.sp
-.LP
-See \fBEXAMPLES\fR for sample output from a \fBkstat\fR command.
-.SH OPTIONS
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-f\fR \fIcommand_file\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify the name of \fBzonecfg\fR command file. \fIcommand_file\fR is a text
-file of \fBzonecfg\fR subcommands, one per line.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-z\fR \fIzonename\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify the name of a zone. Zone names are case sensitive. Zone names must
-begin with an alphanumeric character and can contain alphanumeric characters,
-the underscore (\fB_\fR) the hyphen (\fB-\fR), and the dot (\fB\&.\fR). The
-name \fBglobal\fR and all names beginning with \fBSUNW\fR are reserved and
-cannot be used.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-u\fR \fIuuid\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify the uuid of a zone instead of the Zone name.
-.RE
-
-.SH SUBCOMMANDS
-You can use the \fBadd\fR and \fBselect\fR subcommands to select a specific
-resource, at which point the scope changes to that resource. The \fBend\fR and
-\fBcancel\fR subcommands are used to complete the resource specification, at
-which time the scope is reverted back to global. Certain subcommands, such as
-\fBadd\fR, \fBremove\fR and \fBset\fR, have different semantics in each scope.
-.sp
-.LP
-\fBzonecfg\fR supports a semicolon-separated list of subcommands. For example:
-.sp
-.in +2
-.nf
-# \fBzonecfg -z myzone "add net; set physical=myvnic; end"\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Subcommands which can result in destructive actions or loss of work have an
-\fB-F\fR option to force the action. If input is from a terminal device, the
-user is prompted when appropriate if such a command is given without the
-\fB-F\fR option otherwise, if such a command is given without the \fB-F\fR
-option, the action is disallowed, with a diagnostic message written to standard
-error.
-.sp
-.LP
-The following subcommands are supported:
-.sp
-.ne 2
-.na
-\fB\fBadd\fR \fIresource-type\fR (global scope)\fR
-.ad
-.br
-.na
-\fB\fBadd\fR \fIproperty-name property-value\fR (resource scope)\fR
-.ad
-.sp .6
-.RS 4n
-In the global scope, begin the specification for a given resource type. The
-scope is changed to that resource type.
-.sp
-In the resource scope, add a property of the given name with the given value.
-The syntax for property values varies with different property types. In
-general, it is a simple value or a list of simple values enclosed in square
-brackets, separated by commas (\fB[foo,bar,baz]\fR). See \fBPROPERTIES\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcancel\fR\fR
-.ad
-.sp .6
-.RS 4n
-End the resource specification and reset scope to global. Abandons any
-partially specified resources. \fBcancel\fR is only applicable in the resource
-scope.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBclear\fR \fIproperty-name\fR\fR
-.ad
-.sp .6
-.RS 4n
-Clear the value for the property.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcommit\fR\fR
-.ad
-.sp .6
-.RS 4n
-Commit the current configuration from memory to stable storage. The
-configuration must be committed to be used by \fBzoneadm\fR. Until the
-in-memory configuration is committed, you can remove changes with the
-\fBrevert\fR subcommand. The \fBcommit\fR operation is attempted automatically
-upon completion of a \fBzonecfg\fR session. Since a configuration must be
-correct to be committed, this operation automatically does a verify.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcreate [\fR\fB-F\fR\fB] [\fR \fB-a\fR \fIpath\fR |\fB-b\fR \fB|\fR \fB-t\fR \fItemplate\fR\fB] [\fR\fB-X\fR\fB]\fR\fR
-.ad
-.sp .6
-.RS 4n
-Create an in-memory configuration for the specified zone. Use \fBcreate\fR to
-begin to configure a new zone. See \fBcommit\fR for saving this to stable
-storage.
-.sp
-If you are overwriting an existing configuration, specify the \fB-F\fR option
-to force the action. Specify the \fB-t\fR \fItemplate\fR option to create a
-configuration identical to \fItemplate\fR, where \fItemplate\fR is the name of
-a configured zone.
-.sp
-Use the \fB-a\fR \fIpath\fR option to facilitate configuring a detached zone on
-a new host. The \fIpath\fR parameter is the zonepath location of a detached
-zone that has been moved on to this new host. Once the detached zone is
-configured, it should be installed using the "\fBzoneadm attach\fR" command
-(see \fBzoneadm\fR(1M)). All validation of the new zone happens during the
-\fBattach\fR process, not during zone configuration.
-.sp
-Use the \fB-b\fR option to create a blank configuration. Without arguments,
-\fBcreate\fR applies the Sun default settings.
-.sp
-Use the \fB-X\fR option to facilitate creating a zone whose XML definition already exists on the host. The zone will be atomically added to the zone index file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdelete [\fR\fB-F\fR\fB]\fR\fR
-.ad
-.sp .6
-.RS 4n
-Delete the specified configuration from memory and stable storage. This action
-is instantaneous, no commit is necessary. A deleted configuration cannot be
-reverted.
-.sp
-Specify the \fB-F\fR option to force the action.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBend\fR\fR
-.ad
-.sp .6
-.RS 4n
-End the resource specification. This subcommand is only applicable in the
-resource scope. \fBzonecfg\fR checks to make sure the current resource is
-completely specified. If so, it is added to the in-memory configuration (see
-\fBcommit\fR for saving this to stable storage) and the scope reverts to
-global. If the specification is incomplete, it issues an appropriate error
-message.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBexport [\fR\fB-f\fR \fIoutput-file\fR\fB]\fR\fR
-.ad
-.sp .6
-.RS 4n
-Print configuration to standard output. Use the \fB-f\fR option to print the
-configuration to \fIoutput-file\fR. This option produces output in a form
-suitable for use in a command file.
-.RE
-
-.sp
-.ne 2
-.na
-.BR "help " [ usage ]
-.RI [ subcommand ]
-[syntax]
-.RI [ command-name ]
-.ad
-.sp .6
-.RS 4n
-Print general help or help about given topic.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBinfo zonename | zonepath | autoboot | brand | pool | limitpriv\fR\fR
-.ad
-.br
-.na
-\fB\fBinfo [\fR\fIresource-type\fR
-\fB[\fR\fIproperty-name\fR\fB=\fR\fIproperty-value\fR\fB]*]\fR\fR
-.ad
-.sp .6
-.RS 4n
-Display information about the current configuration. If \fIresource-type\fR is
-specified, displays only information about resources of the relevant type. If
-any \fIproperty-name\fR value pairs are specified, displays only information
-about resources meeting the given criteria. In the resource scope, any
-arguments are ignored, and \fBinfo\fR displays information about the resource
-which is currently being added or modified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBremove\fR [\fR\fB-F\fR\fB] \fIresource-type\fR\fB [\fR\fIproperty-name\fR\fB=\fR\fIproperty-value\fR\fB]* \fR(global scope)\fR
-.br
-\fB\fBremove\fR \fR\fIproperty-name\fR\fB \fR\fIproperty-value\fR\fB \fR(resource scope)\fR
-.ad
-.sp .6
-.RS 4n
-In the global scope, removes the specified resource. The \fB[]\fR syntax means
-0 or more property name-value pairs. If you want to only remove a
-single instance of the resource, you must specify enough property name-value
-pairs for the resource to be uniquely identified. If no property name-value
-pairs are specified, all instances will be removed. If there is more than one
-pair specified, a confirmation is required, unless you use the \fB-F\fR
-option. Likewise, the \fB-F\fR option can be used to remove a resource that
-does not exist (that is, no error will occur). In the resource scope, remove
-the specified name-value pair.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBselect\fR \fIresource-type\fR
-\fB{\fR\fIproperty-name\fR\fB=\fR\fIproperty-value\fR\fB}\fR\fR
-.ad
-.sp .6
-.RS 4n
-Select the resource of the given type which matches the given
-\fIproperty-name\fR \fIproperty-value\fR pair criteria, for modification. This
-subcommand is applicable only in the global scope. The scope is changed to that
-resource type. The \fB{}\fR syntax means 1 or more of whatever is inside the
-curly braces. You must specify enough \fIproperty -name property-value\fR pairs
-for the resource to be uniquely identified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBset\fR \fIproperty-name\fR\fB=\fR\fIproperty\fR\fB-\fR\fIvalue\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set a given property name to the given value. Some properties (for example,
-\fBzonename\fR and \fBzonepath\fR) are global while others are
-resource-specific. This subcommand is applicable in both the global and
-resource scopes.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBverify\fR\fR
-.ad
-.sp .6
-.RS 4n
-Verify the current configuration for correctness:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-All resources have all of their required properties specified.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-A \fBzonepath\fR is specified.
-.RE
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrevert\fR \fB[\fR\fB-F\fR\fB]\fR\fR
-.ad
-.sp .6
-.RS 4n
-Revert the configuration back to the last committed state. The \fB-F\fR option
-can be used to force the action.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBexit [\fR\fB-F\fR\fB]\fR\fR
-.ad
-.sp .6
-.RS 4n
-Exit the \fBzonecfg\fR session. A commit is automatically attempted if needed.
-You can also use an \fBEOF\fR character to exit \fBzonecfg\fR. The \fB-F\fR
-option can be used to force the action.
-.RE
-
-.SH EXAMPLES
-\fBExample 1 \fRCreating the Environment for a New Zone
-.sp
-.LP
-In the following example, \fBzonecfg\fR creates the environment for a new zone.
-\fB/usr/local\fR is loopback mounted from the global zone into
-\fB/opt/local\fR. \fB/opt/sfw\fR is loopback mounted from the global zone,
-three logical network interfaces are added, and a limit on the number of
-fair-share scheduler (FSS) CPU shares for a zone is set using the \fBrctl\fR
-resource type. The example also shows how to select a given resource for
-modification.
-
-.sp
-.in +2
-.nf
-example# \fBzonecfg -z myzone3\fR
-my-zone3: No such zone configured
-Use 'create' to begin configuring a new zone.
-zonecfg:myzone3> \fBcreate\fR
-zonecfg:myzone3> \fBset zonepath=/export/home/my-zone3\fR
-zonecfg:myzone3> \fBset autoboot=true\fR
-zonecfg:myzone3> \fBadd fs\fR
-zonecfg:myzone3:fs> \fBset dir=/usr/local\fR
-zonecfg:myzone3:fs> \fBset special=/opt/local\fR
-zonecfg:myzone3:fs> \fBset type=lofs\fR
-zonecfg:myzone3:fs> \fBadd options [ro,nodevices]\fR
-zonecfg:myzone3:fs> \fBend\fR
-zonecfg:myzone3> \fBadd fs\fR
-zonecfg:myzone3:fs> \fBset dir=/mnt\fR
-zonecfg:myzone3:fs> \fBset special=/dev/dsk/c0t0d0s7\fR
-zonecfg:myzone3:fs> \fBset raw=/dev/rdsk/c0t0d0s7\fR
-zonecfg:myzone3:fs> \fBset type=ufs\fR
-zonecfg:myzone3:fs> \fBend\fR
-zonecfg:myzone3> \fBadd net\fR
-zonecfg:myzone3:net> \fBset address=192.168.0.1/24\fR
-zonecfg:myzone3:net> \fBset physical=eri0\fR
-zonecfg:myzone3:net> \fBend\fR
-zonecfg:myzone3> \fBadd net\fR
-zonecfg:myzone3:net> \fBset address=192.168.1.2/24\fR
-zonecfg:myzone3:net> \fBset physical=eri0\fR
-zonecfg:myzone3:net> \fBend\fR
-zonecfg:myzone3> \fBadd net\fR
-zonecfg:myzone3:net> \fBset address=192.168.2.3/24\fR
-zonecfg:myzone3:net> \fBset physical=eri0\fR
-zonecfg:myzone3:net> \fBend\fR
-zonecfg:my-zone3> \fBset cpu-shares=5\fR
-zonecfg:my-zone3> \fBadd capped-memory\fR
-zonecfg:my-zone3:capped-memory> \fBset physical=50m\fR
-zonecfg:my-zone3:capped-memory> \fBset swap=100m\fR
-zonecfg:my-zone3:capped-memory> \fBend\fR
-zonecfg:myzone3> \fBexit\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRCreating a Non-Native Zone
-.sp
-.LP
-The following example creates a new Linux zone:
-
-.sp
-.in +2
-.nf
-example# \fBzonecfg -z lxzone\fR
-lxzone: No such zone configured
-Use 'create' to begin configuring a new zone
-zonecfg:lxzone> \fBcreate -t SUNWlx\fR
-zonecfg:lxzone> \fBset zonepath=/export/zones/lxzone\fR
-zonecfg:lxzone> \fBset autoboot=true\fR
-zonecfg:lxzone> \fBexit\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRCreating an Exclusive-IP Zone
-.sp
-.LP
-The following example creates a zone that is granted exclusive access to
-\fBbge1\fR and \fBbge33000\fR and that is isolated at the IP layer from the
-other zones configured on the system.
-
-.sp
-.LP
-The IP addresses and routing should be configured inside the new zone using
-the normal networking administration tools such as \fBipadm\fR(1M).
-
-.sp
-.in +2
-.nf
-example# \fBzonecfg -z excl\fR
-excl: No such zone configured
-Use 'create' to begin configuring a new zone
-zonecfg:excl> \fBcreate\fR
-zonecfg:excl> \fBset zonepath=/export/zones/excl\fR
-zonecfg:excl> \fBset ip-type=exclusive\fR
-zonecfg:excl> \fBadd net\fR
-zonecfg:excl:net> \fBset physical=bge1\fR
-zonecfg:excl:net> \fBend\fR
-zonecfg:excl> \fBadd net\fR
-zonecfg:excl:net> \fBset physical=bge33000\fR
-zonecfg:excl:net> \fBend\fR
-zonecfg:excl> \fBexit\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 4 \fRAssociating a Zone with a Resource Pool
-.sp
-.LP
-The following example shows how to associate an existing zone with an existing
-resource pool:
-
-.sp
-.in +2
-.nf
-example# \fBzonecfg -z myzone\fR
-zonecfg:myzone> \fBset pool=mypool\fR
-zonecfg:myzone> \fBexit\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-For more information about resource pools, see \fBpooladm\fR(1M) and
-\fBpoolcfg\fR(1M).
-
-.LP
-\fBExample 5 \fRChanging the Name of a Zone
-.sp
-.LP
-The following example shows how to change the name of an existing zone:
-
-.sp
-.in +2
-.nf
-example# \fBzonecfg -z myzone\fR
-zonecfg:myzone> \fBset zonename=myzone2\fR
-zonecfg:myzone2> \fBexit\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 6 \fRChanging the Privilege Set of a Zone
-.sp
-.LP
-The following example shows how to change the set of privileges an existing
-zone's processes will be limited to the next time the zone is booted. In this
-particular case, the privilege set will be the standard safe set of privileges
-a zone normally has along with the privilege to change the system date and
-time:
-
-.sp
-.in +2
-.nf
-example# \fBzonecfg -z myzone\fR
-zonecfg:myzone> \fBset limitpriv="default,sys_time"\fR
-zonecfg:myzone2> \fBexit\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 7 \fRSetting the \fBzone.cpu-shares\fR Property for the Global Zone
-.sp
-.LP
-The following command sets the \fBzone.cpu-shares\fR property for the global
-zone:
-
-.sp
-.in +2
-.nf
-example# \fBzonecfg -z global\fR
-zonecfg:global> \fBset cpu-shares=5\fR
-zonecfg:global> \fBexit\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 8 \fRUsing Pattern Matching
-.sp
-.LP
-The following commands illustrate \fBzonecfg\fR support for pattern matching.
-In the zone \fBflexlm\fR, enter:
-
-.sp
-.in +2
-.nf
-zonecfg:flexlm> \fBadd device\fR
-zonecfg:flexlm:device> \fBset match="/dev/cua/a00[2-5]"\fR
-zonecfg:flexlm:device> \fBend\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-In the global zone, enter:
-
-.sp
-.in +2
-.nf
-global# \fBls /dev/cua\fR
-a a000 a001 a002 a003 a004 a005 a006 a007 b
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-In the zone \fBflexlm\fR, enter:
-
-.sp
-.in +2
-.nf
-flexlm# \fBls /dev/cua\fR
-a002 a003 a004 a005
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 9 \fRSetting a Cap for a Zone to Three CPUs
-.sp
-.LP
-The following sequence uses the \fBzonecfg\fR command to set the CPU cap for a
-zone to three CPUs.
-
-.sp
-.in +2
-.nf
-zonecfg:myzone> \fBadd capped-cpu\fR
-zonecfg:myzone>capped-cpu> \fBset ncpus=3\fR
-zonecfg:myzone>capped-cpu>capped-cpu> \fBend\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The preceding sequence, which uses the capped-cpu property, is equivalent to
-the following sequence, which makes use of the \fBzone.cpu-cap\fR resource
-control.
-
-.sp
-.in +2
-.nf
-zonecfg:myzone> \fBadd rctl\fR
-zonecfg:myzone:rctl> \fBset name=zone.cpu-cap\fR
-zonecfg:myzone:rctl> \fBadd value (priv=privileged,limit=300,action=none)\fR
-zonecfg:myzone:rctl> \fBend\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 10 \fRUsing \fBkstat\fR to Monitor CPU Caps
-.sp
-.LP
-The following command displays information about all CPU caps.
-
-.sp
-.in +2
-.nf
-# \fBkstat -n /cpucaps/\fR
-module: caps instance: 0
-name: cpucaps_project_0 class: project_caps
- above_sec 0
- below_sec 2157
- crtime 821.048183159
- maxusage 2
- nwait 0
- snaptime 235885.637253027
- usage 0
- value 18446743151372347932
- zonename global
-
-module: caps instance: 0
-name: cpucaps_project_1 class: project_caps
- above_sec 0
- below_sec 0
- crtime 225339.192787265
- maxusage 5
- nwait 0
- snaptime 235885.637591677
- usage 5
- value 18446743151372347932
- zonename global
-
-module: caps instance: 0
-name: cpucaps_project_201 class: project_caps
- above_sec 0
- below_sec 235105
- crtime 780.37961782
- maxusage 100
- nwait 0
- snaptime 235885.637789687
- usage 43
- value 100
- zonename global
-
-module: caps instance: 0
-name: cpucaps_project_202 class: project_caps
- above_sec 0
- below_sec 235094
- crtime 791.72983782
- maxusage 100
- nwait 0
- snaptime 235885.637967512
- usage 48
- value 100
- zonename global
-
-module: caps instance: 0
-name: cpucaps_project_203 class: project_caps
- above_sec 0
- below_sec 235034
- crtime 852.104401481
- maxusage 75
- nwait 0
- snaptime 235885.638144304
- usage 47
- value 100
- zonename global
-
-module: caps instance: 0
-name: cpucaps_project_86710 class: project_caps
- above_sec 22
- below_sec 235166
- crtime 698.441717859
- maxusage 101
- nwait 0
- snaptime 235885.638319871
- usage 54
- value 100
- zonename global
-
-module: caps instance: 0
-name: cpucaps_zone_0 class: zone_caps
- above_sec 100733
- below_sec 134332
- crtime 821.048177123
- maxusage 207
- nwait 2
- snaptime 235885.638497731
- usage 199
- value 200
- zonename global
-
-module: caps instance: 1
-name: cpucaps_project_0 class: project_caps
- above_sec 0
- below_sec 0
- crtime 225360.256448422
- maxusage 7
- nwait 0
- snaptime 235885.638714404
- usage 7
- value 18446743151372347932
- zonename test_001
-
-module: caps instance: 1
-name: cpucaps_zone_1 class: zone_caps
- above_sec 2
- below_sec 10524
- crtime 225360.256440278
- maxusage 106
- nwait 0
- snaptime 235885.638896443
- usage 7
- value 100
- zonename test_001
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 11 \fRDisplaying CPU Caps for a Specific Zone or Project
-.sp
-.LP
-Using the \fBkstat\fR \fB-c\fR and \fB-i\fR options, you can display CPU caps
-for a specific zone or project, as below. The first command produces a display
-for a specific project, the second for the same project within zone 1.
-
-.sp
-.in +2
-.nf
-# \fBkstat -c project_caps\fR
-
-# \fBkstat -c project_caps -i 1\fR
-.fi
-.in -2
-.sp
-
-.SH EXIT STATUS
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.sp .6
-.RS 4n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB1\fR\fR
-.ad
-.sp .6
-.RS 4n
-An error occurred.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB2\fR\fR
-.ad
-.sp .6
-.RS 4n
-Invalid usage.
-.RE
-
-.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Volatile
-.TE
-
-.SH SEE ALSO
-\fBppriv\fR(1), \fBprctl\fR(1), \fBzlogin\fR(1), \fBkstat\fR(1M),
-\fBmount\fR(1M), \fBpooladm\fR(1M), \fBpoolcfg\fR(1M), \fBpoold\fR(1M),
-\fBrcapd\fR(1M), \fBrctladm\fR(1M), \fBsvcadm\fR(1M), \fBipadm\fR(1M),
-\fBzfs\fR(1M), \fBzoneadm\fR(1M), \fBpriv_str_to_set\fR(3C),
-\fBkstat\fR(3KSTAT), \fBvfstab\fR(4), \fBattributes\fR(5), \fBbrands\fR(5),
-\fBfnmatch\fR(5), \fBlx\fR(5), \fBprivileges\fR(5), \fBresource_controls\fR(5),
-\fBsecurity-flags\fR(5), \fBzones\fR(5)
-.sp
-.LP
-\fISystem Administration Guide: Solaris Containers-Resource Management, and
-Solaris Zones\fR
-.SH NOTES
-All character data used by \fBzonecfg\fR must be in US-ASCII encoding.
diff --git a/usr/src/man/man1m/zonestatd.1m b/usr/src/man/man1m/zonestatd.1m
deleted file mode 100644
index 65c559539e..0000000000
--- a/usr/src/man/man1m/zonestatd.1m
+++ /dev/null
@@ -1,90 +0,0 @@
-.\"
-.\" This file and its contents are supplied under the terms of the
-.\" Common Development and Distribution License ("CDDL"), version 1.0.
-.\" You may only use this file in accordance with the terms of version
-.\" 1.0 of the CDDL.
-.\"
-.\" A full copy of the text of the CDDL should have accompanied this
-.\" source. A copy of the CDDL is also available via the Internet at
-.\" http://www.illumos.org/license/CDDL.
-.\"
-.\" Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
-.\" Copyright 2019 OmniOS Community Edition (OmniOSce) Association.
-.\"
-.Dd December 29, 2021
-.Dt ZONESTATD 1M
-.Os
-.Sh NAME
-.Nm zonestatd
-.Nd zones monitoring daemon
-.Sh SYNOPSIS
-.Nm /usr/lib/zones/zonestatd
-.Sh DESCRIPTION
-.Nm
-is a system daemon that is started during system boot.
-It monitors the utilization of system resources by zones, as well
-as zone and system configuration information such as psrset psets,
-pool psets, and resource control settings.
-.Pp
-This daemon is started automatically by the zone management
-software and should not be invoked directly.
-It does not constitute a programming interface, but is classified as a
-private interface.
-.Sh IMPLEMENTATION NOTES
-The zonestat service is managed by the service management
-facility,
-.Xr smf 5 ,
-under the service identifier:
-.Pp
-.D1 svc:/system/zones-monitoring:default
-.Pp
-Administrative actions on this service, such as enabling, disabling, or
-requesting restart, can be performed using
-.Xr svcadm 1m .
-The service's status can be queried using the
-.Xr svcs 1
-command.
-.Pp
-The zonestat service has the following SMF configuration property:
-.Bd -ragged -offset indent
-config/sample_interval
-.Pp
-This property sets the
-.Nm
-sample interval.
-This is the interval used by the zones monitoring daemon,
-.Nm
-to sample resource utilization.
-This is also the interval used to determine configuration changes such as
-processor set changes, resource control changes, and zone state changes.
-.Pp
-The default interval is 5 seconds.
-.Ed
-.Pp
-The zonestat service makes use of extended accounting facility.
-If not already enabled, it enables the tracking of process accounting
-resources, and configures a process accounting file.
-The zonestat service will roll the process accounting log at its configured
-interval.
-.Pp
-If extended process accounting is enabled externally, the zonestat
-service will use the process accounting log as configured.
-It will not roll the accounting log, but will operate correctly if
-the accounting log is rolled externally.
-.Sh INTERFACE STABILITY
-.Sy Private
-.Sh SECURITY
-The zonestat service in the global zone must be online for the zonestat
-service in each non-global zone (NGZ) to function properly.
-The zonestat service in each NGZ does not directly read system configuration
-and utilization data, but rather reads from the zonestat service on the
-global zone.
-.Sh SEE ALSO
-.Xr zonestat 1 ,
-.Xr acctadm 1m ,
-.Xr pooladm 1m ,
-.Xr poolcfg 1m ,
-.Xr prctl 1m ,
-.Xr rcapadm 1m ,
-.Xr smf 5 ,
-.Xr zones 5
diff --git a/usr/src/man/man1m/zpool.1m b/usr/src/man/man1m/zpool.1m
deleted file mode 100644
index d3abf20d81..0000000000
--- a/usr/src/man/man1m/zpool.1m
+++ /dev/null
@@ -1,2547 +0,0 @@
-.\"
-.\" CDDL HEADER START
-.\"
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.\"
-.\" CDDL HEADER END
-.\"
-.\"
-.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright (c) 2013, Joyent, Inc. All Rights Reserved.
-.\" Copyright (c) 2012, 2017 by Delphix. All rights reserved.
-.\" Copyright 2017 Nexenta Systems, Inc.
-.\" Copyright (c) 2017 Datto Inc.
-.\" Copyright (c) 2018 George Melikov. All Rights Reserved.
-.\" Copyright 2021 Joyent, Inc.
-.\" Copyright (c) 2012 Cyril Plisko. All Rights Reserved.
-.\"
-.Dd October 15, 2021
-.Dt ZPOOL 1M
-.Os
-.Sh NAME
-.Nm zpool
-.Nd configure ZFS storage pools
-.Sh SYNOPSIS
-.Nm
-.Fl \&?
-.Nm
-.Cm add
-.Op Fl fgLnP
-.Oo Fl o Ar property Ns = Ns Ar value Oc
-.Ar pool vdev Ns ...
-.Nm
-.Cm attach
-.Op Fl f
-.Oo Fl o Ar property Ns = Ns Ar value Oc
-.Ar pool device new_device
-.Nm
-.Cm checkpoint
-.Op Fl d, -discard
-.Ar pool
-.Nm
-.Cm clear
-.Ar pool
-.Op Ar device
-.Nm
-.Cm create
-.Op Fl dfn
-.Op Fl B
-.Op Fl m Ar mountpoint
-.Oo Fl o Ar property Ns = Ns Ar value Oc Ns ...
-.Oo Fl o Cm feature@ Ns Ar feature Ns = Ns Ar value Oc Ns ...
-.Oo Fl O Ar file-system-property Ns = Ns Ar value Oc Ns ...
-.Op Fl R Ar root
-.Op Fl t Ar tempname
-.Ar pool vdev Ns ...
-.Nm
-.Cm destroy
-.Op Fl f
-.Ar pool
-.Nm
-.Cm detach
-.Ar pool device
-.Nm
-.Cm export
-.Op Fl f
-.Ar pool Ns ...
-.Nm
-.Cm get
-.Op Fl Hp
-.Op Fl o Ar field Ns Oo , Ns Ar field Oc Ns ...
-.Sy all Ns | Ns Ar property Ns Oo , Ns Ar property Oc Ns ...
-.Ar pool Ns ...
-.Nm
-.Cm history
-.Op Fl il
-.Oo Ar pool Oc Ns ...
-.Nm
-.Cm import
-.Op Fl D
-.Op Fl d Ar dir
-.Nm
-.Cm import
-.Fl a
-.Op Fl DflmN
-.Op Fl F Op Fl n
-.Op Fl c Ar cachefile Ns | Ns Fl d Ar dir
-.Op Fl o Ar mntopts
-.Oo Fl o Ar property Ns = Ns Ar value Oc Ns ...
-.Op Fl R Ar root
-.Nm
-.Cm import
-.Op Fl Dfmt
-.Op Fl F Op Fl n
-.Op Fl -rewind-to-checkpoint
-.Op Fl c Ar cachefile Ns | Ns Fl d Ar dir
-.Op Fl o Ar mntopts
-.Oo Fl o Ar property Ns = Ns Ar value Oc Ns ...
-.Op Fl R Ar root
-.Ar pool Ns | Ns Ar id
-.Op Ar newpool
-.Nm
-.Cm initialize
-.Op Fl c | Fl s
-.Ar pool
-.Op Ar device Ns ...
-.Nm
-.Cm iostat
-.Op Oo Fl lq Oc | Ns Fl rw
-.Op Fl T Sy u Ns | Ns Sy d
-.Op Fl ghHLnpPvy
-.Oo Oo Ar pool Ns ... Oc Ns | Ns Oo Ar pool vdev Ns ... Oc Ns | Ns Oo Ar vdev Ns ... Oc Oc
-.Op Ar interval Op Ar count
-.Nm
-.Cm labelclear
-.Op Fl f
-.Ar device
-.Nm
-.Cm list
-.Op Fl HgLpPv
-.Op Fl o Ar property Ns Oo , Ns Ar property Oc Ns ...
-.Op Fl T Sy u Ns | Ns Sy d
-.Oo Ar pool Oc Ns ...
-.Op Ar interval Op Ar count
-.Nm
-.Cm offline
-.Op Fl t
-.Ar pool Ar device Ns ...
-.Nm
-.Cm online
-.Op Fl e
-.Ar pool Ar device Ns ...
-.Nm
-.Cm reguid
-.Ar pool
-.Nm
-.Cm reopen
-.Ar pool
-.Nm
-.Cm remove
-.Op Fl np
-.Ar pool Ar device Ns ...
-.Nm
-.Cm remove
-.Fl s
-.Ar pool
-.Nm
-.Cm replace
-.Op Fl f
-.Ar pool Ar device Op Ar new_device
-.Nm
-.Cm resilver
-.Ar pool Ns ...
-.Nm
-.Cm scrub
-.Op Fl s | Fl p
-.Ar pool Ns ...
-.Nm
-.Cm trim
-.Op Fl d
-.Op Fl r Ar rate
-.Op Fl c | Fl s
-.Ar pool
-.Op Ar device Ns ...
-.Nm
-.Cm set
-.Ar property Ns = Ns Ar value
-.Ar pool
-.Nm
-.Cm split
-.Op Fl gLlnP
-.Oo Fl o Ar property Ns = Ns Ar value Oc Ns ...
-.Op Fl R Ar root
-.Ar pool newpool
-.Nm
-.Cm status
-.Op Fl DigLpPstvx
-.Op Fl T Sy u Ns | Ns Sy d
-.Oo Ar pool Oc Ns ...
-.Op Ar interval Op Ar count
-.Nm
-.Cm sync
-.Oo Ar pool Oc Ns ...
-.Nm
-.Cm upgrade
-.Nm
-.Cm upgrade
-.Fl v
-.Nm
-.Cm upgrade
-.Op Fl V Ar version
-.Fl a Ns | Ns Ar pool Ns ...
-.Sh DESCRIPTION
-The
-.Nm
-command configures ZFS storage pools.
-A storage pool is a collection of devices that provides physical storage and
-data replication for ZFS datasets.
-All datasets within a storage pool share the same space.
-See
-.Xr zfs 1M
-for information on managing datasets.
-.Ss Virtual Devices (vdevs)
-A "virtual device" describes a single device or a collection of devices
-organized according to certain performance and fault characteristics.
-The following virtual devices are supported:
-.Bl -tag -width Ds
-.It Sy disk
-A block device, typically located under
-.Pa /dev/dsk .
-ZFS can use individual slices or partitions, though the recommended mode of
-operation is to use whole disks.
-A disk can be specified by a full path, or it can be a shorthand name
-.Po the relative portion of the path under
-.Pa /dev/dsk
-.Pc .
-A whole disk can be specified by omitting the slice or partition designation.
-For example,
-.Pa c0t0d0
-is equivalent to
-.Pa /dev/dsk/c0t0d0s2 .
-When given a whole disk, ZFS automatically labels the disk, if necessary.
-.It Sy file
-A regular file.
-The use of files as a backing store is strongly discouraged.
-It is designed primarily for experimental purposes, as the fault tolerance of a
-file is only as good as the file system of which it is a part.
-A file must be specified by a full path.
-.It Sy mirror
-A mirror of two or more devices.
-Data is replicated in an identical fashion across all components of a mirror.
-A mirror with N disks of size X can hold X bytes and can withstand (N-1) devices
-failing before data integrity is compromised.
-.It Sy raidz , raidz1 , raidz2 , raidz3
-A variation on RAID-5 that allows for better distribution of parity and
-eliminates the RAID-5
-.Qq write hole
-.Pq in which data and parity become inconsistent after a power loss .
-Data and parity is striped across all disks within a raidz group.
-.Pp
-A raidz group can have single-, double-, or triple-parity, meaning that the
-raidz group can sustain one, two, or three failures, respectively, without
-losing any data.
-The
-.Sy raidz1
-vdev type specifies a single-parity raidz group; the
-.Sy raidz2
-vdev type specifies a double-parity raidz group; and the
-.Sy raidz3
-vdev type specifies a triple-parity raidz group.
-The
-.Sy raidz
-vdev type is an alias for
-.Sy raidz1 .
-.Pp
-A raidz group with N disks of size X with P parity disks can hold approximately
-(N-P)*X bytes and can withstand P device(s) failing before data integrity is
-compromised.
-The minimum number of devices in a raidz group is one more than the number of
-parity disks.
-The recommended number is between 3 and 9 to help increase performance.
-.It Sy spare
-A special pseudo-vdev which keeps track of available hot spares for a pool.
-For more information, see the
-.Sx Hot Spares
-section.
-.It Sy log
-A separate intent log device.
-If more than one log device is specified, then writes are load-balanced between
-devices.
-Log devices can be mirrored.
-However, raidz vdev types are not supported for the intent log.
-For more information, see the
-.Sx Intent Log
-section.
-.It Sy dedup
-A device dedicated solely for allocating dedup data.
-The redundancy of this device should match the redundancy of the other normal
-devices in the pool.
-If more than one dedup device is specified, then allocations are load-balanced
-between devices.
-.It Sy special
-A device dedicated solely for allocating various kinds of internal metadata,
-and optionally small file data.
-The redundancy of this device should match the redundancy of the other normal
-devices in the pool.
-If more than one special device is specified, then allocations are
-load-balanced between devices.
-.Pp
-For more information on special allocations, see the
-.Sx Special Allocation Class
-section.
-.It Sy cache
-A device used to cache storage pool data.
-A cache device cannot be configured as a mirror or raidz group.
-For more information, see the
-.Sx Cache Devices
-section.
-.El
-.Pp
-Virtual devices cannot be nested, so a mirror or raidz virtual device can only
-contain files or disks.
-Mirrors of mirrors
-.Pq or other combinations
-are not allowed.
-.Pp
-A pool can have any number of virtual devices at the top of the configuration
-.Po known as
-.Qq root vdevs
-.Pc .
-Data is dynamically distributed across all top-level devices to balance data
-among devices.
-As new virtual devices are added, ZFS automatically places data on the newly
-available devices.
-.Pp
-Virtual devices are specified one at a time on the command line, separated by
-whitespace.
-The keywords
-.Sy mirror
-and
-.Sy raidz
-are used to distinguish where a group ends and another begins.
-For example, the following creates two root vdevs, each a mirror of two disks:
-.Bd -literal
-# zpool create mypool mirror c0t0d0 c0t1d0 mirror c1t0d0 c1t1d0
-.Ed
-.Ss Device Failure and Recovery
-ZFS supports a rich set of mechanisms for handling device failure and data
-corruption.
-All metadata and data is checksummed, and ZFS automatically repairs bad data
-from a good copy when corruption is detected.
-.Pp
-In order to take advantage of these features, a pool must make use of some form
-of redundancy, using either mirrored or raidz groups.
-While ZFS supports running in a non-redundant configuration, where each root
-vdev is simply a disk or file, this is strongly discouraged.
-A single case of bit corruption can render some or all of your data unavailable.
-.Pp
-A pool's health status is described by one of three states: online, degraded,
-or faulted.
-An online pool has all devices operating normally.
-A degraded pool is one in which one or more devices have failed, but the data is
-still available due to a redundant configuration.
-A faulted pool has corrupted metadata, or one or more faulted devices, and
-insufficient replicas to continue functioning.
-.Pp
-The health of the top-level vdev, such as mirror or raidz device, is
-potentially impacted by the state of its associated vdevs, or component
-devices.
-A top-level vdev or component device is in one of the following states:
-.Bl -tag -width "DEGRADED"
-.It Sy DEGRADED
-One or more top-level vdevs is in the degraded state because one or more
-component devices are offline.
-Sufficient replicas exist to continue functioning.
-.Pp
-One or more component devices is in the degraded or faulted state, but
-sufficient replicas exist to continue functioning.
-The underlying conditions are as follows:
-.Bl -bullet
-.It
-The number of checksum errors exceeds acceptable levels and the device is
-degraded as an indication that something may be wrong.
-ZFS continues to use the device as necessary.
-.It
-The number of I/O errors exceeds acceptable levels.
-The device could not be marked as faulted because there are insufficient
-replicas to continue functioning.
-.El
-.It Sy FAULTED
-One or more top-level vdevs is in the faulted state because one or more
-component devices are offline.
-Insufficient replicas exist to continue functioning.
-.Pp
-One or more component devices is in the faulted state, and insufficient
-replicas exist to continue functioning.
-The underlying conditions are as follows:
-.Bl -bullet
-.It
-The device could be opened, but the contents did not match expected values.
-.It
-The number of I/O errors exceeds acceptable levels and the device is faulted to
-prevent further use of the device.
-.El
-.It Sy OFFLINE
-The device was explicitly taken offline by the
-.Nm zpool Cm offline
-command.
-.It Sy ONLINE
-The device is online and functioning.
-.It Sy REMOVED
-The device was physically removed while the system was running.
-Device removal detection is hardware-dependent and may not be supported on all
-platforms.
-.It Sy UNAVAIL
-The device could not be opened.
-If a pool is imported when a device was unavailable, then the device will be
-identified by a unique identifier instead of its path since the path was never
-correct in the first place.
-.El
-.Pp
-If a device is removed and later re-attached to the system, ZFS attempts
-to put the device online automatically.
-Device attach detection is hardware-dependent and might not be supported on all
-platforms.
-.Ss Hot Spares
-ZFS allows devices to be associated with pools as
-.Qq hot spares .
-These devices are not actively used in the pool, but when an active device
-fails, it is automatically replaced by a hot spare.
-To create a pool with hot spares, specify a
-.Sy spare
-vdev with any number of devices.
-For example,
-.Bd -literal
-# zpool create pool mirror c0d0 c1d0 spare c2d0 c3d0
-.Ed
-.Pp
-Spares can be shared across multiple pools, and can be added with the
-.Nm zpool Cm add
-command and removed with the
-.Nm zpool Cm remove
-command.
-Once a spare replacement is initiated, a new
-.Sy spare
-vdev is created within the configuration that will remain there until the
-original device is replaced.
-At this point, the hot spare becomes available again if another device fails.
-.Pp
-If a pool has a shared spare that is currently being used, the pool can not be
-exported since other pools may use this shared spare, which may lead to
-potential data corruption.
-.Pp
-Shared spares add some risk.
-If the pools are imported on different hosts, and both pools suffer a device
-failure at the same time, both could attempt to use the spare at the same time.
-This may not be detected, resulting in data corruption.
-.Pp
-An in-progress spare replacement can be cancelled by detaching the hot spare.
-If the original faulted device is detached, then the hot spare assumes its
-place in the configuration, and is removed from the spare list of all active
-pools.
-.Pp
-Spares cannot replace log devices.
-.Ss Intent Log
-The ZFS Intent Log (ZIL) satisfies POSIX requirements for synchronous
-transactions.
-For instance, databases often require their transactions to be on stable storage
-devices when returning from a system call.
-NFS and other applications can also use
-.Xr fsync 3C
-to ensure data stability.
-By default, the intent log is allocated from blocks within the main pool.
-However, it might be possible to get better performance using separate intent
-log devices such as NVRAM or a dedicated disk.
-For example:
-.Bd -literal
-# zpool create pool c0d0 c1d0 log c2d0
-.Ed
-.Pp
-Multiple log devices can also be specified, and they can be mirrored.
-See the
-.Sx EXAMPLES
-section for an example of mirroring multiple log devices.
-.Pp
-Log devices can be added, replaced, attached, detached, and imported and
-exported as part of the larger pool.
-Mirrored devices can be removed by specifying the top-level mirror vdev.
-.Ss Cache Devices
-Devices can be added to a storage pool as
-.Qq cache devices .
-These devices provide an additional layer of caching between main memory and
-disk.
-For read-heavy workloads, where the working set size is much larger than what
-can be cached in main memory, using cache devices allow much more of this
-working set to be served from low latency media.
-Using cache devices provides the greatest performance improvement for random
-read-workloads of mostly static content.
-.Pp
-To create a pool with cache devices, specify a
-.Sy cache
-vdev with any number of devices.
-For example:
-.Bd -literal
-# zpool create pool c0d0 c1d0 cache c2d0 c3d0
-.Ed
-.Pp
-Cache devices cannot be mirrored or part of a raidz configuration.
-If a read error is encountered on a cache device, that read I/O is reissued to
-the original storage pool device, which might be part of a mirrored or raidz
-configuration.
-.Pp
-The content of the cache devices is considered volatile, as is the case with
-other system caches.
-.Ss Pool checkpoint
-Before starting critical procedures that include destructive actions
-.Pq e.g. zfs Cm destroy ,
-an administrator can checkpoint the pool's state and in the case of a
-mistake or failure, rewind the entire pool back to the checkpoint.
-The checkpoint is automatically discarded upon rewinding.
-Otherwise, the checkpoint can be discarded when the procedure has completed
-successfully.
-.Pp
-A pool checkpoint can be thought of as a pool-wide snapshot and should be used
-with care as it contains every part of the pool's state, from properties to vdev
-configuration.
-Thus, while a pool has a checkpoint certain operations are not allowed.
-Specifically, vdev removal/attach/detach, mirror splitting, and
-changing the pool's guid.
-Adding a new vdev is supported but in the case of a rewind it will have to be
-added again.
-Finally, users of this feature should keep in mind that scrubs in a pool that
-has a checkpoint do not repair checkpointed data.
-.Pp
-To create a checkpoint for a pool:
-.Bd -literal
-# zpool checkpoint pool
-.Ed
-.Pp
-To later rewind to its checkpointed state (which also discards the checkpoint),
-you need to first export it and then rewind it during import:
-.Bd -literal
-# zpool export pool
-# zpool import --rewind-to-checkpoint pool
-.Ed
-.Pp
-To discard the checkpoint from a pool without rewinding:
-.Bd -literal
-# zpool checkpoint -d pool
-.Ed
-.Pp
-Dataset reservations (controlled by the
-.Nm reservation
-or
-.Nm refreservation
-zfs properties) may be unenforceable while a checkpoint exists, because the
-checkpoint is allowed to consume the dataset's reservation.
-Finally, data that is part of the checkpoint but has been freed in the
-current state of the pool won't be scanned during a scrub.
-.Ss Special Allocation Class
-The allocations in the special class are dedicated to specific block types.
-By default this includes all metadata, the indirect blocks of user data, and
-any dedup data.
-The class can also be provisioned to accept a limited percentage of small file
-data blocks.
-.Pp
-A pool must always have at least one general (non-specified) vdev before
-other devices can be assigned to the special class.
-If the special class becomes full, then allocations intended for it will spill
-back into the normal class.
-.Pp
-Dedup data can be excluded from the special class by setting the
-.Sy zfs_ddt_data_is_special
-zfs kernel variable to false (0).
-.Pp
-Inclusion of small file blocks in the special class is opt-in.
-Each dataset can control the size of small file blocks allowed in the special
-class by setting the
-.Sy special_small_blocks
-dataset property.
-It defaults to zero so you must opt-in by setting it to a non-zero value.
-See
-.Xr zfs 1M
-for more info on setting this property.
-.Ss Properties
-Each pool has several properties associated with it.
-Some properties are read-only statistics while others are configurable and
-change the behavior of the pool.
-.Pp
-The following are read-only properties:
-.Bl -tag -width Ds
-.It Cm allocated
-Amount of storage space used within the pool.
-.It Sy bootsize
-The size of the system boot partition.
-This property can only be set at pool creation time and is read-only once pool
-is created.
-Setting this property implies using the
-.Fl B
-option.
-.It Sy capacity
-Percentage of pool space used.
-This property can also be referred to by its shortened column name,
-.Sy cap .
-.It Sy expandsize
-Amount of uninitialized space within the pool or device that can be used to
-increase the total capacity of the pool.
-Uninitialized space consists of any space on an EFI labeled vdev which has not
-been brought online
-.Po e.g, using
-.Nm zpool Cm online Fl e
-.Pc .
-This space occurs when a LUN is dynamically expanded.
-.It Sy fragmentation
-The amount of fragmentation in the pool.
-.It Sy free
-The amount of free space available in the pool.
-.It Sy freeing
-After a file system or snapshot is destroyed, the space it was using is
-returned to the pool asynchronously.
-.Sy freeing
-is the amount of space remaining to be reclaimed.
-Over time
-.Sy freeing
-will decrease while
-.Sy free
-increases.
-.It Sy health
-The current health of the pool.
-Health can be one of
-.Sy ONLINE , DEGRADED , FAULTED , OFFLINE, REMOVED , UNAVAIL .
-.It Sy guid
-A unique identifier for the pool.
-.It Sy size
-Total size of the storage pool.
-.It Sy unsupported@ Ns Em feature_guid
-Information about unsupported features that are enabled on the pool.
-See
-.Xr zpool-features 5
-for details.
-.El
-.Pp
-The space usage properties report actual physical space available to the
-storage pool.
-The physical space can be different from the total amount of space that any
-contained datasets can actually use.
-The amount of space used in a raidz configuration depends on the characteristics
-of the data being written.
-In addition, ZFS reserves some space for internal accounting that the
-.Xr zfs 1M
-command takes into account, but the
-.Nm
-command does not.
-For non-full pools of a reasonable size, these effects should be invisible.
-For small pools, or pools that are close to being completely full, these
-discrepancies may become more noticeable.
-.Pp
-The following property can be set at creation time and import time:
-.Bl -tag -width Ds
-.It Sy altroot
-Alternate root directory.
-If set, this directory is prepended to any mount points within the pool.
-This can be used when examining an unknown pool where the mount points cannot be
-trusted, or in an alternate boot environment, where the typical paths are not
-valid.
-.Sy altroot
-is not a persistent property.
-It is valid only while the system is up.
-Setting
-.Sy altroot
-defaults to using
-.Sy cachefile Ns = Ns Sy none ,
-though this may be overridden using an explicit setting.
-.El
-.Pp
-The following property can be set only at import time:
-.Bl -tag -width Ds
-.It Sy readonly Ns = Ns Sy on Ns | Ns Sy off
-If set to
-.Sy on ,
-the pool will be imported in read-only mode.
-This property can also be referred to by its shortened column name,
-.Sy rdonly .
-.El
-.Pp
-The following properties can be set at creation time and import time, and later
-changed with the
-.Nm zpool Cm set
-command:
-.Bl -tag -width Ds
-.It Sy ashift Ns = Ns Sy ashift
-Pool sector size exponent, to the power of
-.Sy 2
-(internally referred to as
-.Sy ashift
-). Values from 9 to 16, inclusive, are valid; also, the
-value 0 (the default) means to auto-detect using the kernel's block
-layer and a ZFS internal exception list.
-I/O operations will be aligned to the specified size boundaries.
-Additionally, the minimum (disk) write size will be set to the specified size,
-so this represents a space vs performance trade-off.
-For optimal performance, the pool sector size should be greater than or equal to
-the sector size of the underlying disks.
-The typical case for setting this property is when performance is important and
-the underlying disks use 4KiB sectors but report 512B sectors to the OS (for
-compatibility reasons); in that case, set
-.Sy ashift=12
-(which is 1<<12 = 4096). When set, this property is
-used as the default hint value in subsequent vdev operations (add,
-attach and replace).
-Changing this value will not modify any existing
-vdev, not even on disk replacement; however it can be used, for
-instance, to replace a dying 512B sectors disk with a newer 4KiB
-sectors device: this will probably result in bad performance but at the
-same time could prevent loss of data.
-.It Sy autoexpand Ns = Ns Sy on Ns | Ns Sy off
-Controls automatic pool expansion when the underlying LUN is grown.
-If set to
-.Sy on ,
-the pool will be resized according to the size of the expanded device.
-If the device is part of a mirror or raidz then all devices within that
-mirror/raidz group must be expanded before the new space is made available to
-the pool.
-The default behavior is
-.Sy off .
-This property can also be referred to by its shortened column name,
-.Sy expand .
-.It Sy autoreplace Ns = Ns Sy on Ns | Ns Sy off
-Controls automatic device replacement.
-If set to
-.Sy off ,
-device replacement must be initiated by the administrator by using the
-.Nm zpool Cm replace
-command.
-If set to
-.Sy on ,
-any new device, found in the same physical location as a device that previously
-belonged to the pool, is automatically formatted and replaced.
-The default behavior is
-.Sy off .
-This property can also be referred to by its shortened column name,
-.Sy replace .
-.It Sy bootfs Ns = Ns Ar pool Ns / Ns Ar dataset
-Identifies the default bootable dataset for the root pool.
-This property is expected to be set mainly by the installation and upgrade
-programs.
-.It Sy cachefile Ns = Ns Ar path Ns | Ns Sy none
-Controls the location of where the pool configuration is cached.
-Discovering all pools on system startup requires a cached copy of the
-configuration data that is stored on the root file system.
-All pools in this cache are automatically imported when the system boots.
-Some environments, such as install and clustering, need to cache this
-information in a different location so that pools are not automatically
-imported.
-Setting this property caches the pool configuration in a different location that
-can later be imported with
-.Nm zpool Cm import Fl c .
-Setting it to the special value
-.Sy none
-creates a temporary pool that is never cached, and the special value
-.Qq
-.Pq empty string
-uses the default location.
-.Pp
-Multiple pools can share the same cache file.
-Because the kernel destroys and recreates this file when pools are added and
-removed, care should be taken when attempting to access this file.
-When the last pool using a
-.Sy cachefile
-is exported or destroyed, the file is removed.
-.It Sy comment Ns = Ns Ar text
-A text string consisting of printable ASCII characters that will be stored
-such that it is available even if the pool becomes faulted.
-An administrator can provide additional information about a pool using this
-property.
-.It Sy dedupditto Ns = Ns Ar number
-Threshold for the number of block ditto copies.
-If the reference count for a deduplicated block increases above this number, a
-new ditto copy of this block is automatically stored.
-The default setting is
-.Sy 0
-which causes no ditto copies to be created for deduplicated blocks.
-The minimum legal nonzero setting is
-.Sy 100 .
-.It Sy delegation Ns = Ns Sy on Ns | Ns Sy off
-Controls whether a non-privileged user is granted access based on the dataset
-permissions defined on the dataset.
-See
-.Xr zfs 1M
-for more information on ZFS delegated administration.
-.It Sy failmode Ns = Ns Sy wait Ns | Ns Sy continue Ns | Ns Sy panic
-Controls the system behavior in the event of catastrophic pool failure.
-This condition is typically a result of a loss of connectivity to the underlying
-storage device(s) or a failure of all devices within the pool.
-The behavior of such an event is determined as follows:
-.Bl -tag -width "continue"
-.It Sy wait
-Blocks all I/O access until the device connectivity is recovered and the errors
-are cleared.
-This is the default behavior.
-.It Sy continue
-Returns
-.Er EIO
-to any new write I/O requests but allows reads to any of the remaining healthy
-devices.
-Any write requests that have yet to be committed to disk would be blocked.
-.It Sy panic
-Prints out a message to the console and generates a system crash dump.
-.El
-.It Sy autotrim Ns = Ns Sy on Ns | Ns Sy off
-When set to
-.Sy on
-space which has been recently freed, and is no longer allocated by the pool,
-will be periodically trimmed.
-This allows block device vdevs which support BLKDISCARD, such as SSDs, or
-file vdevs on which the underlying file system supports hole-punching, to
-reclaim unused blocks.
-The default setting for this property is
-.Sy off .
-.Pp
-Automatic TRIM does not immediately reclaim blocks after a free.
-Instead, it will optimistically delay allowing smaller ranges to be
-aggregated in to a few larger ones.
-These can then be issued more efficiently to the storage.
-.Pp
-Be aware that automatic trimming of recently freed data blocks can put
-significant stress on the underlying storage devices.
-This will vary depending of how well the specific device handles these commands.
-For lower end devices it is often possible to achieve most of the benefits
-of automatic trimming by running an on-demand (manual) TRIM periodically
-using the
-.Nm zpool Cm trim
-command.
-.It Sy feature@ Ns Ar feature_name Ns = Ns Sy enabled
-The value of this property is the current state of
-.Ar feature_name .
-The only valid value when setting this property is
-.Sy enabled
-which moves
-.Ar feature_name
-to the enabled state.
-See
-.Xr zpool-features 5
-for details on feature states.
-.It Sy listsnapshots Ns = Ns Sy on Ns | Ns Sy off
-Controls whether information about snapshots associated with this pool is
-output when
-.Nm zfs Cm list
-is run without the
-.Fl t
-option.
-The default value is
-.Sy off .
-This property can also be referred to by its shortened name,
-.Sy listsnaps .
-.It Sy multihost Ns = Ns Sy on Ns | Ns Sy off
-Controls whether a pool activity check should be performed during
-.Nm zpool Cm import .
-When a pool is determined to be active it cannot be imported, even with the
-.Fl f
-option.
-This property is intended to be used in failover configurations
-where multiple hosts have access to a pool on shared storage.
-.sp
-Multihost provides protection on import only.
-It does not protect against an
-individual device being used in multiple pools, regardless of the type of vdev.
-See the discussion under
-.Sy zpool create.
-.sp
-When this property is on, periodic writes to storage occur to show the pool is
-in use.
-See
-.Sy zfs_multihost_interval
-in the
-.Xr zfs-module-parameters 5
-man page.
-In order to enable this property each host must set a unique hostid.
-The default value is
-.Sy off .
-.It Sy version Ns = Ns Ar version
-The current on-disk version of the pool.
-This can be increased, but never decreased.
-The preferred method of updating pools is with the
-.Nm zpool Cm upgrade
-command, though this property can be used when a specific version is needed for
-backwards compatibility.
-Once feature flags are enabled on a pool this property will no longer have a
-value.
-.El
-.Ss Subcommands
-All subcommands that modify state are logged persistently to the pool in their
-original form.
-.Pp
-The
-.Nm
-command provides subcommands to create and destroy storage pools, add capacity
-to storage pools, and provide information about the storage pools.
-The following subcommands are supported:
-.Bl -tag -width Ds
-.It Xo
-.Nm
-.Fl \&?
-.Xc
-Displays a help message.
-.It Xo
-.Nm
-.Cm add
-.Op Fl fgLnP
-.Oo Fl o Ar property Ns = Ns Ar value Oc
-.Ar pool vdev Ns ...
-.Xc
-Adds the specified virtual devices to the given pool.
-The
-.Ar vdev
-specification is described in the
-.Sx Virtual Devices
-section.
-The behavior of the
-.Fl f
-option, and the device checks performed are described in the
-.Nm zpool Cm create
-subcommand.
-.Bl -tag -width Ds
-.It Fl f
-Forces use of
-.Ar vdev Ns s ,
-even if they appear in use or specify a conflicting replication level.
-Not all devices can be overridden in this manner.
-.It Fl g
-Display
-.Ar vdev ,
-GUIDs instead of the normal device names.
-These GUIDs can be used in place of
-device names for the zpool detach/offline/remove/replace commands.
-.It Fl L
-Display real paths for
-.Ar vdev Ns s
-resolving all symbolic links.
-This can be used to look up the current block
-device name regardless of the /dev/disk/ path used to open it.
-.It Fl n
-Displays the configuration that would be used without actually adding the
-.Ar vdev Ns s .
-The actual pool creation can still fail due to insufficient privileges or
-device sharing.
-.It Fl P
-Display real paths for
-.Ar vdev Ns s
-instead of only the last component of the path.
-This can be used in conjunction with the
-.Fl L
-flag.
-.It Fl o Ar property Ns = Ns Ar value
-Sets the given pool properties.
-See the
-.Sx Properties
-section for a list of valid properties that can be set.
-The only property supported at the moment is
-.Sy ashift.
-.El
-.It Xo
-.Nm
-.Cm attach
-.Op Fl f
-.Oo Fl o Ar property Ns = Ns Ar value Oc
-.Ar pool device new_device
-.Xc
-Attaches
-.Ar new_device
-to the existing
-.Ar device .
-The existing device cannot be part of a raidz configuration.
-If
-.Ar device
-is not currently part of a mirrored configuration,
-.Ar device
-automatically transforms into a two-way mirror of
-.Ar device
-and
-.Ar new_device .
-If
-.Ar device
-is part of a two-way mirror, attaching
-.Ar new_device
-creates a three-way mirror, and so on.
-In either case,
-.Ar new_device
-begins to resilver immediately.
-.Bl -tag -width Ds
-.It Fl f
-Forces use of
-.Ar new_device ,
-even if its appears to be in use.
-Not all devices can be overridden in this manner.
-.It Fl o Ar property Ns = Ns Ar value
-Sets the given pool properties.
-See the
-.Sx Properties
-section for a list of valid properties that can be set.
-The only property supported at the moment is
-.Sy ashift.
-.El
-.It Xo
-.Nm
-.Cm checkpoint
-.Op Fl d, -discard
-.Ar pool
-.Xc
-Checkpoints the current state of
-.Ar pool
-, which can be later restored by
-.Nm zpool Cm import --rewind-to-checkpoint .
-Rewinding will also discard the checkpoint.
-The existence of a checkpoint in a pool prohibits the following
-.Nm zpool
-commands:
-.Cm remove ,
-.Cm attach ,
-.Cm detach ,
-.Cm split ,
-and
-.Cm reguid .
-In addition, it may break reservation boundaries if the pool lacks free
-space.
-The
-.Nm zpool Cm status
-command indicates the existence of a checkpoint or the progress of discarding a
-checkpoint from a pool.
-The
-.Nm zpool Cm list
-command reports how much space the checkpoint takes from the pool.
-.Bl -tag -width Ds
-.It Fl d, -discard
-Discards an existing checkpoint from
-.Ar pool
-without rewinding.
-.El
-.It Xo
-.Nm
-.Cm clear
-.Ar pool
-.Op Ar device
-.Xc
-Clears device errors in a pool.
-If no arguments are specified, all device errors within the pool are cleared.
-If one or more devices is specified, only those errors associated with the
-specified device or devices are cleared.
-If multihost is enabled, and the pool has been suspended, this will not
-resume I/O.
-While the pool was suspended, it may have been imported on
-another host, and resuming I/O could result in pool damage.
-.It Xo
-.Nm
-.Cm create
-.Op Fl dfn
-.Op Fl B
-.Op Fl m Ar mountpoint
-.Oo Fl o Ar property Ns = Ns Ar value Oc Ns ...
-.Oo Fl o Cm feature@ Ns Ar feature Ns = Ns Ar value Oc Ns ...
-.Oo Fl O Ar file-system-property Ns = Ns Ar value Oc Ns ...
-.Op Fl R Ar root
-.Op Fl t Ar tempname
-.Ar pool vdev Ns ...
-.Xc
-Creates a new storage pool containing the virtual devices specified on the
-command line.
-The pool name must begin with a letter, and can only contain
-alphanumeric characters as well as underscore
-.Pq Qq Sy _ ,
-dash
-.Pq Qq Sy - ,
-and period
-.Pq Qq Sy \&. .
-The pool names
-.Sy mirror ,
-.Sy raidz ,
-.Sy spare
-and
-.Sy log
-are reserved, as are names beginning with the pattern
-.Sy c[0-9] .
-The
-.Ar vdev
-specification is described in the
-.Sx Virtual Devices
-section.
-.Pp
-The command attempts to verify that each device specified is accessible and not
-currently in use by another subsystem.
-However this check is not robust enough
-to detect simultaneous attempts to use a new device in different pools, even if
-.Sy multihost
-is
-.Sy enabled.
-The
-administrator must ensure that simultaneous invocations of any combination of
-.Sy zpool replace ,
-.Sy zpool create ,
-.Sy zpool add ,
-or
-.Sy zpool labelclear ,
-do not refer to the same device.
-Using the same device in two pools will
-result in pool corruption.
-.sp
-There are some uses, such as being currently mounted, or specified as the
-dedicated dump device, that prevents a device from ever being used by ZFS.
-Other uses, such as having a preexisting UFS file system, can be overridden with
-the
-.Fl f
-option.
-.Pp
-The command also checks that the replication strategy for the pool is
-consistent.
-An attempt to combine redundant and non-redundant storage in a single pool, or
-to mix disks and files, results in an error unless
-.Fl f
-is specified.
-The use of differently sized devices within a single raidz or mirror group is
-also flagged as an error unless
-.Fl f
-is specified.
-.Pp
-Unless the
-.Fl R
-option is specified, the default mount point is
-.Pa / Ns Ar pool .
-The mount point must not exist or must be empty, or else the root dataset
-cannot be mounted.
-This can be overridden with the
-.Fl m
-option.
-.Pp
-By default all supported features are enabled on the new pool unless the
-.Fl d
-option is specified.
-.Bl -tag -width Ds
-.It Fl B
-Create whole disk pool with EFI System partition to support booting system
-with UEFI firmware.
-Default size is 256MB.
-To create boot partition with custom size, set the
-.Sy bootsize
-property with the
-.Fl o
-option.
-See the
-.Sx Properties
-section for details.
-.It Fl d
-Do not enable any features on the new pool.
-Individual features can be enabled by setting their corresponding properties to
-.Sy enabled
-with the
-.Fl o
-option.
-See
-.Xr zpool-features 5
-for details about feature properties.
-.It Fl f
-Forces use of
-.Ar vdev Ns s ,
-even if they appear in use or specify a conflicting replication level.
-Not all devices can be overridden in this manner.
-.It Fl m Ar mountpoint
-Sets the mount point for the root dataset.
-The default mount point is
-.Pa /pool
-or
-.Pa altroot/pool
-if
-.Ar altroot
-is specified.
-The mount point must be an absolute path,
-.Sy legacy ,
-or
-.Sy none .
-For more information on dataset mount points, see
-.Xr zfs 1M .
-.It Fl n
-Displays the configuration that would be used without actually creating the
-pool.
-The actual pool creation can still fail due to insufficient privileges or
-device sharing.
-.It Fl o Ar property Ns = Ns Ar value
-Sets the given pool properties.
-See the
-.Sx Properties
-section for a list of valid properties that can be set.
-.It Fl o Cm feature@ Ns Ar feature Ns = Ns Ar value
-Sets the given pool feature.
-See
-.Xr zpool-features 5
-for a list of valid features that can be set.
-.Pp
-.Ar value
-can either be
-.Sy disabled
-or
-.Sy enabled .
-.It Fl O Ar file-system-property Ns = Ns Ar value
-Sets the given file system properties in the root file system of the pool.
-See the
-.Sx Properties
-section of
-.Xr zfs 1M
-for a list of valid properties that can be set.
-.It Fl R Ar root
-Equivalent to
-.Fl o Sy cachefile Ns = Ns Sy none Fl o Sy altroot Ns = Ns Ar root
-.It Fl t Ar tempname
-Sets the in-core pool name to
-.Pa tempname
-while the on-disk name will be the name specified as the pool name
-.Pa pool .
-This will set the default cachefile property to
-.Sy none.
-This is intended to handle name space collisions when creating pools
-for other systems, such as virtual machines or physical machines
-whose pools live on network block devices.
-.El
-.It Xo
-.Nm
-.Cm destroy
-.Op Fl f
-.Ar pool
-.Xc
-Destroys the given pool, freeing up any devices for other use.
-This command tries to unmount any active datasets before destroying the pool.
-.Bl -tag -width Ds
-.It Fl f
-Forces any active datasets contained within the pool to be unmounted.
-.El
-.It Xo
-.Nm
-.Cm detach
-.Ar pool device
-.Xc
-Detaches
-.Ar device
-from a mirror.
-The operation is refused if there are no other valid replicas of the data.
-.It Xo
-.Nm
-.Cm export
-.Op Fl f
-.Ar pool Ns ...
-.Xc
-Exports the given pools from the system.
-All devices are marked as exported, but are still considered in use by other
-subsystems.
-The devices can be moved between systems
-.Pq even those of different endianness
-and imported as long as a sufficient number of devices are present.
-.Pp
-Before exporting the pool, all datasets within the pool are unmounted.
-A pool can not be exported if it has a shared spare that is currently being
-used.
-.Pp
-For pools to be portable, you must give the
-.Nm
-command whole disks, not just slices, so that ZFS can label the disks with
-portable EFI labels.
-Otherwise, disk drivers on platforms of different endianness will not recognize
-the disks.
-.Bl -tag -width Ds
-.It Fl f
-Forcefully unmount all datasets, using the
-.Nm unmount Fl f
-command.
-.Pp
-This command will forcefully export the pool even if it has a shared spare that
-is currently being used.
-This may lead to potential data corruption.
-.El
-.It Xo
-.Nm
-.Cm get
-.Op Fl Hp
-.Op Fl o Ar field Ns Oo , Ns Ar field Oc Ns ...
-.Sy all Ns | Ns Ar property Ns Oo , Ns Ar property Oc Ns ...
-.Ar pool Ns ...
-.Xc
-Retrieves the given list of properties
-.Po
-or all properties if
-.Sy all
-is used
-.Pc
-for the specified storage pool(s).
-These properties are displayed with the following fields:
-.Bd -literal
- name Name of storage pool
- property Property name
- value Property value
- source Property source, either 'default' or 'local'.
-.Ed
-.Pp
-See the
-.Sx Properties
-section for more information on the available pool properties.
-.Bl -tag -width Ds
-.It Fl H
-Scripted mode.
-Do not display headers, and separate fields by a single tab instead of arbitrary
-space.
-.It Fl o Ar field
-A comma-separated list of columns to display.
-.Sy name Ns \&, Ns Sy property Ns \&, Ns Sy value Ns \&, Ns Sy source
-is the default value.
-.It Fl p
-Display numbers in parsable (exact) values.
-.El
-.It Xo
-.Nm
-.Cm history
-.Op Fl il
-.Oo Ar pool Oc Ns ...
-.Xc
-Displays the command history of the specified pool(s) or all pools if no pool is
-specified.
-.Bl -tag -width Ds
-.It Fl i
-Displays internally logged ZFS events in addition to user initiated events.
-.It Fl l
-Displays log records in long format, which in addition to standard format
-includes, the user name, the hostname, and the zone in which the operation was
-performed.
-.El
-.It Xo
-.Nm
-.Cm import
-.Op Fl D
-.Op Fl d Ar dir
-.Xc
-Lists pools available to import.
-If the
-.Fl d
-option is not specified, this command searches for devices in
-.Pa /dev/dsk .
-The
-.Fl d
-option can be specified multiple times, and all directories are searched.
-If the device appears to be part of an exported pool, this command displays a
-summary of the pool with the name of the pool, a numeric identifier, as well as
-the vdev layout and current health of the device for each device or file.
-Destroyed pools, pools that were previously destroyed with the
-.Nm zpool Cm destroy
-command, are not listed unless the
-.Fl D
-option is specified.
-.Pp
-The numeric identifier is unique, and can be used instead of the pool name when
-multiple exported pools of the same name are available.
-.Bl -tag -width Ds
-.It Fl c Ar cachefile
-Reads configuration from the given
-.Ar cachefile
-that was created with the
-.Sy cachefile
-pool property.
-This
-.Ar cachefile
-is used instead of searching for devices.
-.It Fl d Ar dir
-Searches for devices or files in
-.Ar dir .
-The
-.Fl d
-option can be specified multiple times.
-.It Fl D
-Lists destroyed pools only.
-.El
-.It Xo
-.Nm
-.Cm import
-.Fl a
-.Op Fl DflmN
-.Op Fl F Op Fl n
-.Op Fl c Ar cachefile Ns | Ns Fl d Ar dir
-.Op Fl o Ar mntopts
-.Oo Fl o Ar property Ns = Ns Ar value Oc Ns ...
-.Op Fl R Ar root
-.Xc
-Imports all pools found in the search directories.
-Identical to the previous command, except that all pools with a sufficient
-number of devices available are imported.
-Destroyed pools, pools that were previously destroyed with the
-.Nm zpool Cm destroy
-command, will not be imported unless the
-.Fl D
-option is specified.
-.Bl -tag -width Ds
-.It Fl a
-Searches for and imports all pools found.
-.It Fl c Ar cachefile
-Reads configuration from the given
-.Ar cachefile
-that was created with the
-.Sy cachefile
-pool property.
-This
-.Ar cachefile
-is used instead of searching for devices.
-.It Fl d Ar dir
-Searches for devices or files in
-.Ar dir .
-The
-.Fl d
-option can be specified multiple times.
-This option is incompatible with the
-.Fl c
-option.
-.It Fl D
-Imports destroyed pools only.
-The
-.Fl f
-option is also required.
-.It Fl f
-Forces import, even if the pool appears to be potentially active.
-.It Fl F
-Recovery mode for a non-importable pool.
-Attempt to return the pool to an importable state by discarding the last few
-transactions.
-Not all damaged pools can be recovered by using this option.
-If successful, the data from the discarded transactions is irretrievably lost.
-This option is ignored if the pool is importable or already imported.
-.It Fl l
-Indicates that this command will request encryption keys for all encrypted
-datasets it attempts to mount as it is bringing the pool online.
-Note that if any datasets have a
-.Sy keylocation
-of
-.Sy prompt
-this command will block waiting for the keys to be entered.
-Without this flag encrypted datasets will be left unavailable until the keys are
-loaded.
-.It Fl m
-Allows a pool to import when there is a missing log device.
-Recent transactions can be lost because the log device will be discarded.
-.It Fl n
-Used with the
-.Fl F
-recovery option.
-Determines whether a non-importable pool can be made importable again, but does
-not actually perform the pool recovery.
-For more details about pool recovery mode, see the
-.Fl F
-option, above.
-.It Fl N
-Import the pool without mounting any file systems.
-.It Fl o Ar mntopts
-Comma-separated list of mount options to use when mounting datasets within the
-pool.
-See
-.Xr zfs 1M
-for a description of dataset properties and mount options.
-.It Fl o Ar property Ns = Ns Ar value
-Sets the specified property on the imported pool.
-See the
-.Sx Properties
-section for more information on the available pool properties.
-.It Fl R Ar root
-Sets the
-.Sy cachefile
-property to
-.Sy none
-and the
-.Sy altroot
-property to
-.Ar root .
-.El
-.It Xo
-.Nm
-.Cm import
-.Op Fl Dfmt
-.Op Fl F Op Fl n
-.Op Fl -rewind-to-checkpoint
-.Op Fl c Ar cachefile Ns | Ns Fl d Ar dir
-.Op Fl o Ar mntopts
-.Oo Fl o Ar property Ns = Ns Ar value Oc Ns ...
-.Op Fl R Ar root
-.Ar pool Ns | Ns Ar id
-.Op Ar newpool
-.Xc
-Imports a specific pool.
-A pool can be identified by its name or the numeric identifier.
-If
-.Ar newpool
-is specified, the pool is imported using the name
-.Ar newpool .
-Otherwise, it is imported with the same name as its exported name.
-.Pp
-If a device is removed from a system without running
-.Nm zpool Cm export
-first, the device appears as potentially active.
-It cannot be determined if this was a failed export, or whether the device is
-really in use from another host.
-To import a pool in this state, the
-.Fl f
-option is required.
-.Bl -tag -width Ds
-.It Fl c Ar cachefile
-Reads configuration from the given
-.Ar cachefile
-that was created with the
-.Sy cachefile
-pool property.
-This
-.Ar cachefile
-is used instead of searching for devices.
-.It Fl d Ar dir
-Searches for devices or files in
-.Ar dir .
-The
-.Fl d
-option can be specified multiple times.
-This option is incompatible with the
-.Fl c
-option.
-.It Fl D
-Imports destroyed pool.
-The
-.Fl f
-option is also required.
-.It Fl f
-Forces import, even if the pool appears to be potentially active.
-.It Fl F
-Recovery mode for a non-importable pool.
-Attempt to return the pool to an importable state by discarding the last few
-transactions.
-Not all damaged pools can be recovered by using this option.
-If successful, the data from the discarded transactions is irretrievably lost.
-This option is ignored if the pool is importable or already imported.
-.It Fl l
-Indicates that the zpool command will request encryption keys for all
-encrypted datasets it attempts to mount as it is bringing the pool
-online.
-This is equivalent to running
-.Nm Cm mount
-on each encrypted dataset immediately after the pool is imported.
-If any datasets have a
-.Sy prompt
-keysource this command will block waiting for the key to be entered.
-Otherwise, encrypted datasets will be left unavailable until the keys are
-loaded.
-.It Fl m
-Allows a pool to import when there is a missing log device.
-Recent transactions can be lost because the log device will be discarded.
-.It Fl n
-Used with the
-.Fl F
-recovery option.
-Determines whether a non-importable pool can be made importable again, but does
-not actually perform the pool recovery.
-For more details about pool recovery mode, see the
-.Fl F
-option, above.
-.It Fl o Ar mntopts
-Comma-separated list of mount options to use when mounting datasets within the
-pool.
-See
-.Xr zfs 1M
-for a description of dataset properties and mount options.
-.It Fl o Ar property Ns = Ns Ar value
-Sets the specified property on the imported pool.
-See the
-.Sx Properties
-section for more information on the available pool properties.
-.It Fl R Ar root
-Sets the
-.Sy cachefile
-property to
-.Sy none
-and the
-.Sy altroot
-property to
-.Ar root .
-.It Fl t
-Used with
-.Ar newpool .
-Specifies that
-.Ar newpool
-is temporary.
-Temporary pool names last until export.
-Ensures that the original pool name will be used in all label updates and
-therefore is retained upon export.
-Will also set
-.Sy cachefile
-property to
-.Sy none
-when not explicitly specified.
-.It Fl -rewind-to-checkpoint
-Rewinds pool to the checkpointed state.
-Once the pool is imported with this flag there is no way to undo the rewind.
-All changes and data that were written after the checkpoint are lost!
-The only exception is when the
-.Sy readonly
-mounting option is enabled.
-In this case, the checkpointed state of the pool is opened and an
-administrator can see how the pool would look like if they were
-to fully rewind.
-.El
-.It Xo
-.Nm
-.Cm initialize
-.Op Fl c | Fl s
-.Ar pool
-.Op Ar device Ns ...
-.Xc
-Begins initializing by writing to all unallocated regions on the specified
-devices, or all eligible devices in the pool if no individual devices are
-specified.
-Only leaf data or log devices may be initialized.
-.Bl -tag -width Ds
-.It Fl c, -cancel
-Cancel initializing on the specified devices, or all eligible devices if none
-are specified.
-If one or more target devices are invalid or are not currently being
-initialized, the command will fail and no cancellation will occur on any device.
-.It Fl s -suspend
-Suspend initializing on the specified devices, or all eligible devices if none
-are specified.
-If one or more target devices are invalid or are not currently being
-initialized, the command will fail and no suspension will occur on any device.
-Initializing can then be resumed by running
-.Nm zpool Cm initialize
-with no flags on the relevant target devices.
-.El
-.It Xo
-.Nm
-.Cm iostat
-.Op Oo Fl lq Oc | Ns Fl rw
-.Op Fl T Sy u Ns | Ns Sy d
-.Op Fl ghHLnpPvy
-.Oo Oo Ar pool Ns ... Oc Ns | Ns Oo Ar pool vdev Ns ... Oc Ns | Ns Oo Ar vdev Ns ... Oc Oc
-.Op Ar interval Op Ar count
-.Xc
-Displays I/O statistics for the given pools/vdevs.
-Physical I/Os may be observed via
-.Xr iostat 1 .
-If writes are located nearby, they may be merged into a single larger operation.
-Additional I/O may be generated depending on the level of vdev redundancy.
-To filter output, you may pass in a list of pools, a pool and list of vdevs
-in that pool, or a list of any vdevs from any pool.
-If no items are specified, statistics for every pool in the system are shown.
-When given an
-.Ar interval ,
-the statistics are printed every
-.Ar interval
-seconds until ^C is pressed.
-If
-.Fl n
-flag is specified the headers are displayed only once, otherwise they are
-displayed periodically.
-If
-.Ar count
-is specified, the command exits after
-.Ar count
-reports are printed.
-The first report printed is always the statistics since boot regardless of
-whether
-.Ar interval
-and
-.Ar count
-are passed.
-Also note that the units of
-.Sy K ,
-.Sy M ,
-.Sy G ...
-that are printed in the report are in base 1024.
-To get the raw values, use the
-.Fl p
-flag.
-.Bl -tag -width Ds
-.It Fl T Sy u Ns | Ns Sy d
-Display a time stamp.
-Specify
-.Sy u
-for a printed representation of the internal representation of time.
-See
-.Xr time 2 .
-Specify
-.Sy d
-for standard date format.
-See
-.Xr date 1 .
-.It Fl i
-Display vdev initialization status.
-.It Fl g
-Display vdev GUIDs instead of the normal device names.
-These GUIDs can be used in place of device names for the zpool
-detach/offline/remove/replace commands.
-.It Fl H
-Scripted mode.
-Do not display headers, and separate fields by a single tab instead of
-arbitrary space.
-.It Fl L
-Display real paths for vdevs resolving all symbolic links.
-This can be used to look up the current block device name regardless of the
-.Pa /dev/dsk/
-path used to open it.
-.It Fl n
-Print headers only once when passed.
-.It Fl p
-Display numbers in parsable (exact) values.
-Time values are in nanoseconds.
-.It Fl P
-Display full paths for vdevs instead of only the last component of
-the path.
-This can be used in conjunction with the
-.Fl L
-flag.
-.It Fl r
-Print request size histograms for the leaf vdev's IO
-This includes histograms of individual IOs (ind) and aggregate IOs (agg).
-These stats can be useful for observing how well IO aggregation is working.
-Note that TRIM IOs may exceed 16M, but will be counted as 16M.
-.It Fl v
-Verbose statistics Reports usage statistics for individual vdevs within the
-pool, in addition to the pool-wide statistics.
-.It Fl y
-Omit statistics since boot.
-Normally the first line of output reports the statistics since boot.
-This option suppresses that first line of output.
-.Ar interval
-.It Fl w
-Display latency histograms:
-.Pp
-.Ar total_wait :
-Total IO time (queuing + disk IO time).
-.Ar disk_wait :
-Disk IO time (time reading/writing the disk).
-.Ar syncq_wait :
-Amount of time IO spent in synchronous priority queues.
-Does not include disk time.
-.Ar asyncq_wait :
-Amount of time IO spent in asynchronous priority queues.
-Does not include disk time.
-.Ar scrub :
-Amount of time IO spent in scrub queue.
-Does not include disk time.
-.It Fl l
-Include average latency statistics:
-.Pp
-.Ar total_wait :
-Average total IO time (queuing + disk IO time).
-.Ar disk_wait :
-Average disk IO time (time reading/writing the disk).
-.Ar syncq_wait :
-Average amount of time IO spent in synchronous priority queues.
-Does not include disk time.
-.Ar asyncq_wait :
-Average amount of time IO spent in asynchronous priority queues.
-Does not include disk time.
-.Ar scrub :
-Average queuing time in scrub queue.
-Does not include disk time.
-.Ar trim :
-Average queuing time in trim queue.
-Does not include disk time.
-.It Fl q
-Include active queue statistics.
-Each priority queue has both pending (
-.Ar pend )
-and active (
-.Ar activ )
-IOs.
-Pending IOs are waiting to be issued to the disk, and active IOs have been
-issued to disk and are waiting for completion.
-These stats are broken out by priority queue:
-.Pp
-.Ar syncq_read/write :
-Current number of entries in synchronous priority
-queues.
-.Ar asyncq_read/write :
-Current number of entries in asynchronous priority queues.
-.Ar scrubq_read :
-Current number of entries in scrub queue.
-.Ar trimq_write :
-Current number of entries in trim queue.
-.Pp
-All queue statistics are instantaneous measurements of the number of
-entries in the queues.
-If you specify an interval, the measurements will be sampled from the end of
-the interval.
-.El
-.It Xo
-.Nm
-.Cm labelclear
-.Op Fl f
-.Ar device
-.Xc
-Removes ZFS label information from the specified
-.Ar device .
-The
-.Ar device
-must not be part of an active pool configuration.
-.Bl -tag -width Ds
-.It Fl f
-Treat exported or foreign devices as inactive.
-.El
-.It Xo
-.Nm
-.Cm list
-.Op Fl HgLpPv
-.Op Fl o Ar property Ns Oo , Ns Ar property Oc Ns ...
-.Op Fl T Sy u Ns | Ns Sy d
-.Oo Ar pool Oc Ns ...
-.Op Ar interval Op Ar count
-.Xc
-Lists the given pools along with a health status and space usage.
-If no
-.Ar pool Ns s
-are specified, all pools in the system are listed.
-When given an
-.Ar interval ,
-the information is printed every
-.Ar interval
-seconds until ^C is pressed.
-If
-.Ar count
-is specified, the command exits after
-.Ar count
-reports are printed.
-.Bl -tag -width Ds
-.It Fl g
-Display vdev GUIDs instead of the normal device names.
-These GUIDs can be used in place of device names for the zpool
-detach/offline/remove/replace commands.
-.It Fl H
-Scripted mode.
-Do not display headers, and separate fields by a single tab instead of arbitrary
-space.
-.It Fl o Ar property
-Comma-separated list of properties to display.
-See the
-.Sx Properties
-section for a list of valid properties.
-The default list is
-.Cm name , size , allocated , free , checkpoint, expandsize , fragmentation , capacity ,
-.Cm dedupratio , health , altroot .
-.It Fl L
-Display real paths for vdevs resolving all symbolic links.
-This can be used to look up the current block device name regardless of the
-/dev/disk/ path used to open it.
-.It Fl p
-Display numbers in parsable
-.Pq exact
-values.
-.It Fl P
-Display full paths for vdevs instead of only the last component of
-the path.
-This can be used in conjunction with the
-.Fl L
-flag.
-.It Fl T Sy u Ns | Ns Sy d
-Display a time stamp.
-Specify
-.Sy u
-for a printed representation of the internal representation of time.
-See
-.Xr time 2 .
-Specify
-.Sy d
-for standard date format.
-See
-.Xr date 1 .
-.It Fl v
-Verbose statistics.
-Reports usage statistics for individual vdevs within the pool, in addition to
-the pool-wise statistics.
-.El
-.It Xo
-.Nm
-.Cm offline
-.Op Fl t
-.Ar pool Ar device Ns ...
-.Xc
-Takes the specified physical device offline.
-While the
-.Ar device
-is offline, no attempt is made to read or write to the device.
-This command is not applicable to spares.
-.Bl -tag -width Ds
-.It Fl t
-Temporary.
-Upon reboot, the specified physical device reverts to its previous state.
-.El
-.It Xo
-.Nm
-.Cm online
-.Op Fl e
-.Ar pool Ar device Ns ...
-.Xc
-Brings the specified physical device online.
-This command is not applicable to spares.
-.Bl -tag -width Ds
-.It Fl e
-Expand the device to use all available space.
-If the device is part of a mirror or raidz then all devices must be expanded
-before the new space will become available to the pool.
-.El
-.It Xo
-.Nm
-.Cm reguid
-.Ar pool
-.Xc
-Generates a new unique identifier for the pool.
-You must ensure that all devices in this pool are online and healthy before
-performing this action.
-.It Xo
-.Nm
-.Cm reopen
-.Ar pool
-.Xc
-Reopen all the vdevs associated with the pool.
-.It Xo
-.Nm
-.Cm remove
-.Op Fl np
-.Ar pool Ar device Ns ...
-.Xc
-Removes the specified device from the pool.
-This command currently only supports removing hot spares, cache, log
-devices and mirrored top-level vdevs (mirror of leaf devices); but not raidz.
-.sp
-Removing a top-level vdev reduces the total amount of space in the storage pool.
-The specified device will be evacuated by copying all allocated space from it to
-the other devices in the pool.
-In this case, the
-.Nm zpool Cm remove
-command initiates the removal and returns, while the evacuation continues in
-the background.
-The removal progress can be monitored with
-.Nm zpool Cm status.
-This feature must be enabled to be used, see
-.Xr zpool-features 5
-.Pp
-A mirrored top-level device (log or data) can be removed by specifying the top-level mirror for the
-same.
-Non-log devices or data devices that are part of a mirrored configuration can be removed using
-the
-.Nm zpool Cm detach
-command.
-.Bl -tag -width Ds
-.It Fl n
-Do not actually perform the removal ("no-op").
-Instead, print the estimated amount of memory that will be used by the
-mapping table after the removal completes.
-This is nonzero only for top-level vdevs.
-.El
-.Bl -tag -width Ds
-.It Fl p
-Used in conjunction with the
-.Fl n
-flag, displays numbers as parsable (exact) values.
-.El
-.It Xo
-.Nm
-.Cm remove
-.Fl s
-.Ar pool
-.Xc
-Stops and cancels an in-progress removal of a top-level vdev.
-.It Xo
-.Nm
-.Cm replace
-.Op Fl f
-.Ar pool Ar device Op Ar new_device
-.Xc
-Replaces
-.Ar old_device
-with
-.Ar new_device .
-This is equivalent to attaching
-.Ar new_device ,
-waiting for it to resilver, and then detaching
-.Ar old_device .
-.Pp
-The size of
-.Ar new_device
-must be greater than or equal to the minimum size of all the devices in a mirror
-or raidz configuration.
-.Pp
-.Ar new_device
-is required if the pool is not redundant.
-If
-.Ar new_device
-is not specified, it defaults to
-.Ar old_device .
-This form of replacement is useful after an existing disk has failed and has
-been physically replaced.
-In this case, the new disk may have the same
-.Pa /dev/dsk
-path as the old device, even though it is actually a different disk.
-ZFS recognizes this.
-.Bl -tag -width Ds
-.It Fl f
-Forces use of
-.Ar new_device ,
-even if its appears to be in use.
-Not all devices can be overridden in this manner.
-.El
-.It Xo
-.Nm
-.Cm resilver
-.Ar pool Ns ...
-.Xc
-Starts a resilver.
-If an existing resilver is already running it will be restarted from the
-beginning.
-Any drives that were scheduled for a deferred resilver will be added to the
-new one.
-This requires the
-.Sy resilver_defer
-feature.
-.It Xo
-.Nm
-.Cm scrub
-.Op Fl s | Fl p
-.Ar pool Ns ...
-.Xc
-Begins a scrub or resumes a paused scrub.
-The scrub examines all data in the specified pools to verify that it checksums
-correctly.
-For replicated
-.Pq mirror or raidz
-devices, ZFS automatically repairs any damage discovered during the scrub.
-The
-.Nm zpool Cm status
-command reports the progress of the scrub and summarizes the results of the
-scrub upon completion.
-.Pp
-Scrubbing and resilvering are very similar operations.
-The difference is that resilvering only examines data that ZFS knows to be out
-of date
-.Po
-for example, when attaching a new device to a mirror or replacing an existing
-device
-.Pc ,
-whereas scrubbing examines all data to discover silent errors due to hardware
-faults or disk failure.
-.Pp
-Because scrubbing and resilvering are I/O-intensive operations, ZFS only allows
-one at a time.
-If a scrub is paused, the
-.Nm zpool Cm scrub
-resumes it.
-If a resilver is in progress, ZFS does not allow a scrub to be started until the
-resilver completes.
-.Pp
-Note that, due to changes in pool data on a live system, it is possible for
-scrubs to progress slightly beyond 100% completion.
-During this period, no completion time estimate will be provided.
-.Bl -tag -width Ds
-.It Fl s
-Stop scrubbing.
-.El
-.Bl -tag -width Ds
-.It Fl p
-Pause scrubbing.
-Scrub pause state and progress are periodically synced to disk.
-If the system is restarted or pool is exported during a paused scrub,
-even after import, scrub will remain paused until it is resumed.
-Once resumed the scrub will pick up from the place where it was last
-checkpointed to disk.
-To resume a paused scrub issue
-.Nm zpool Cm scrub
-again.
-.El
-.It Xo
-.Nm
-.Cm set
-.Ar property Ns = Ns Ar value
-.Ar pool
-.Xc
-Sets the given property on the specified pool.
-See the
-.Sx Properties
-section for more information on what properties can be set and acceptable
-values.
-.It Xo
-.Nm
-.Cm split
-.Op Fl gLlnP
-.Oo Fl o Ar property Ns = Ns Ar value Oc Ns ...
-.Op Fl R Ar root
-.Ar pool newpool
-.Xc
-Splits devices off
-.Ar pool
-creating
-.Ar newpool .
-All vdevs in
-.Ar pool
-must be mirrors.
-At the time of the split,
-.Ar newpool
-will be a replica of
-.Ar pool .
-.Bl -tag -width Ds
-.It Fl g
-Display vdev GUIDs instead of the normal device names.
-These GUIDs can be used in place of device names for the zpool
-detach/offline/remove/replace commands.
-.It Fl L
-Display real paths for vdevs resolving all symbolic links.
-This can be used to look up the current block device name regardless of the
-.Pa /dev/disk/
-path used to open it.
-.It Fl l
-Indicates that this command will request encryption keys for all encrypted
-datasets it attempts to mount as it is bringing the new pool online.
-Note that if any datasets have a
-.Sy keylocation
-of
-.Sy prompt
-this command will block waiting for the keys to be entered.
-Without this flag encrypted datasets will be left unavailable and unmounted
-until the keys are loaded.
-.It Fl n
-Do dry run, do not actually perform the split.
-Print out the expected configuration of
-.Ar newpool .
-.It Fl P
-Display full paths for vdevs instead of only the last component of
-the path.
-This can be used in conjunction with the
-.Fl L
-flag.
-.It Fl o Ar property Ns = Ns Ar value
-Sets the specified property for
-.Ar newpool .
-See the
-.Sx Properties
-section for more information on the available pool properties.
-.It Fl R Ar root
-Set
-.Sy altroot
-for
-.Ar newpool
-to
-.Ar root
-and automatically import it.
-.El
-.It Xo
-.Nm
-.Cm status
-.Op Fl DigLpPstvx
-.Op Fl T Sy u Ns | Ns Sy d
-.Oo Ar pool Oc Ns ...
-.Op Ar interval Op Ar count
-.Xc
-Displays the detailed health status for the given pools.
-If no
-.Ar pool
-is specified, then the status of each pool in the system is displayed.
-For more information on pool and device health, see the
-.Sx Device Failure and Recovery
-section.
-.Pp
-If a scrub or resilver is in progress, this command reports the percentage done
-and the estimated time to completion.
-Both of these are only approximate, because the amount of data in the pool and
-the other workloads on the system can change.
-.Bl -tag -width Ds
-.It Fl D
-Display a histogram of deduplication statistics, showing the allocated
-.Pq physically present on disk
-and referenced
-.Pq logically referenced in the pool
-block counts and sizes by reference count.
-.It Fl g
-Display vdev GUIDs instead of the normal device names.
-These GUIDs can be used in place of device names for the zpool
-detach/offline/remove/replace commands.
-.It Fl L
-Display real paths for vdevs resolving all symbolic links.
-This can be used to look up the current block device name regardless of the
-.Pa /dev/disk/
-path used to open it.
-.It Fl p
-Display numbers in parsable (exact) values.
-.It Fl P
-Display full paths for vdevs instead of only the last component of
-the path.
-This can be used in conjunction with the
-.Fl L
-flag.
-.It Fl s
-Display the number of leaf VDEV slow IOs.
-This is the number of IOs that didn't complete in
-.Sy zio_slow_io_ms
-milliseconds (default 30 seconds).
-This does not necessarily mean the IOs failed to complete, just took an
-unreasonably long amount of time.
-This may indicate a problem with the underlying storage.
-.It Fl t
-Display vdev TRIM status.
-.It Fl T Sy u Ns | Ns Sy d
-Display a time stamp.
-Specify
-.Sy u
-for a printed representation of the internal representation of time.
-See
-.Xr time 2 .
-Specify
-.Sy d
-for standard date format.
-See
-.Xr date 1 .
-.It Fl v
-Displays verbose data error information, printing out a complete list of all
-data errors since the last complete pool scrub.
-.It Fl x
-Only display status for pools that are exhibiting errors or are otherwise
-unavailable.
-Warnings about pools not using the latest on-disk format will not be included.
-.El
-.It Xo
-.Nm
-.Cm sync
-.Oo Ar pool Oc Ns ...
-.Xc
-Forces all in-core dirty data to be written to the primary pool storage and
-not the ZIL.
-It will also update administrative information including quota reporting.
-Without arguments,
-.Nm zpool Cm sync
-will sync all pools on the system.
-Otherwise, it will only sync the specified
-.Ar pool .
-.It Xo
-.Nm
-.Cm trim
-.Op Fl d
-.Op Fl r Ar rate
-.Op Fl c | Fl s
-.Ar pool
-.Op Ar device Ns ...
-.Xc
-Initiates an immediate on-demand TRIM operation for all of the free space in
-a pool.
-This operation informs the underlying storage devices of all blocks
-in the pool which are no longer allocated and allows thinly provisioned
-devices to reclaim the space.
-.Pp
-A manual on-demand TRIM operation can be initiated irrespective of the
-.Sy autotrim
-pool property setting.
-See the documentation for the
-.Sy autotrim
-property above for the types of vdev devices which can be trimmed.
-.Bl -tag -width Ds
-.It Fl d -secure
-Causes a secure TRIM to be initiated.
-When performing a secure TRIM, the device guarantees that data stored on the
-trimmed blocks has been erased.
-This requires support from the device and is not supported by all SSDs.
-.It Fl r -rate Ar rate
-Controls the rate at which the TRIM operation progresses.
-Without this option TRIM is executed as quickly as possible.
-The rate, expressed in bytes per second, is applied on a per-vdev basis and
-may be set differently for each leaf vdev.
-.It Fl c, -cancel
-Cancel trimming on the specified devices, or all eligible devices if none
-are specified.
-If one or more target devices are invalid or are not currently being
-trimmed, the command will fail and no cancellation will occur on any device.
-.It Fl s -suspend
-Suspend trimming on the specified devices, or all eligible devices if none
-are specified.
-If one or more target devices are invalid or are not currently being
-trimmed, the command will fail and no suspension will occur on any device.
-Trimming can then be resumed by running
-.Nm zpool Cm trim
-with no flags on the relevant target devices.
-.El
-.It Xo
-.Nm
-.Cm upgrade
-.Xc
-Displays pools which do not have all supported features enabled and pools
-formatted using a legacy ZFS version number.
-These pools can continue to be used, but some features may not be available.
-Use
-.Nm zpool Cm upgrade Fl a
-to enable all features on all pools.
-.It Xo
-.Nm
-.Cm upgrade
-.Fl v
-.Xc
-Displays legacy ZFS versions supported by the current software.
-See
-.Xr zpool-features 5
-for a description of feature flags features supported by the current software.
-.It Xo
-.Nm
-.Cm upgrade
-.Op Fl V Ar version
-.Fl a Ns | Ns Ar pool Ns ...
-.Xc
-Enables all supported features on the given pool.
-Once this is done, the pool will no longer be accessible on systems that do not
-support feature flags.
-See
-.Xr zpool-features 5
-for details on compatibility with systems that support feature flags, but do not
-support all features enabled on the pool.
-.Bl -tag -width Ds
-.It Fl a
-Enables all supported features on all pools.
-.It Fl V Ar version
-Upgrade to the specified legacy version.
-If the
-.Fl V
-flag is specified, no features will be enabled on the pool.
-This option can only be used to increase the version number up to the last
-supported legacy version number.
-.El
-.El
-.Sh EXIT STATUS
-The following exit values are returned:
-.Bl -tag -width Ds
-.It Sy 0
-Successful completion.
-.It Sy 1
-An error occurred.
-.It Sy 2
-Invalid command line options were specified.
-.El
-.Sh EXAMPLES
-.Bl -tag -width Ds
-.It Sy Example 1 No Creating a RAID-Z Storage Pool
-The following command creates a pool with a single raidz root vdev that
-consists of six disks.
-.Bd -literal
-# zpool create tank raidz c0t0d0 c0t1d0 c0t2d0 c0t3d0 c0t4d0 c0t5d0
-.Ed
-.It Sy Example 2 No Creating a Mirrored Storage Pool
-The following command creates a pool with two mirrors, where each mirror
-contains two disks.
-.Bd -literal
-# zpool create tank mirror c0t0d0 c0t1d0 mirror c0t2d0 c0t3d0
-.Ed
-.It Sy Example 3 No Creating a ZFS Storage Pool by Using Slices
-The following command creates an unmirrored pool using two disk slices.
-.Bd -literal
-# zpool create tank /dev/dsk/c0t0d0s1 c0t1d0s4
-.Ed
-.It Sy Example 4 No Creating a ZFS Storage Pool by Using Files
-The following command creates an unmirrored pool using files.
-While not recommended, a pool based on files can be useful for experimental
-purposes.
-.Bd -literal
-# zpool create tank /path/to/file/a /path/to/file/b
-.Ed
-.It Sy Example 5 No Adding a Mirror to a ZFS Storage Pool
-The following command adds two mirrored disks to the pool
-.Em tank ,
-assuming the pool is already made up of two-way mirrors.
-The additional space is immediately available to any datasets within the pool.
-.Bd -literal
-# zpool add tank mirror c1t0d0 c1t1d0
-.Ed
-.It Sy Example 6 No Listing Available ZFS Storage Pools
-The following command lists all available pools on the system.
-In this case, the pool
-.Em zion
-is faulted due to a missing device.
-The results from this command are similar to the following:
-.Bd -literal
-# zpool list
-NAME SIZE ALLOC FREE FRAG EXPANDSZ CAP DEDUP HEALTH ALTROOT
-rpool 19.9G 8.43G 11.4G 33% - 42% 1.00x ONLINE -
-tank 61.5G 20.0G 41.5G 48% - 32% 1.00x ONLINE -
-zion - - - - - - - FAULTED -
-.Ed
-.It Sy Example 7 No Destroying a ZFS Storage Pool
-The following command destroys the pool
-.Em tank
-and any datasets contained within.
-.Bd -literal
-# zpool destroy -f tank
-.Ed
-.It Sy Example 8 No Exporting a ZFS Storage Pool
-The following command exports the devices in pool
-.Em tank
-so that they can be relocated or later imported.
-.Bd -literal
-# zpool export tank
-.Ed
-.It Sy Example 9 No Importing a ZFS Storage Pool
-The following command displays available pools, and then imports the pool
-.Em tank
-for use on the system.
-The results from this command are similar to the following:
-.Bd -literal
-# zpool import
- pool: tank
- id: 15451357997522795478
- state: ONLINE
-action: The pool can be imported using its name or numeric identifier.
-config:
-
- tank ONLINE
- mirror ONLINE
- c1t2d0 ONLINE
- c1t3d0 ONLINE
-
-# zpool import tank
-.Ed
-.It Sy Example 10 No Upgrading All ZFS Storage Pools to the Current Version
-The following command upgrades all ZFS Storage pools to the current version of
-the software.
-.Bd -literal
-# zpool upgrade -a
-This system is currently running ZFS version 2.
-.Ed
-.It Sy Example 11 No Managing Hot Spares
-The following command creates a new pool with an available hot spare:
-.Bd -literal
-# zpool create tank mirror c0t0d0 c0t1d0 spare c0t2d0
-.Ed
-.Pp
-If one of the disks were to fail, the pool would be reduced to the degraded
-state.
-The failed device can be replaced using the following command:
-.Bd -literal
-# zpool replace tank c0t0d0 c0t3d0
-.Ed
-.Pp
-Once the data has been resilvered, the spare is automatically removed and is
-made available for use should another device fail.
-The hot spare can be permanently removed from the pool using the following
-command:
-.Bd -literal
-# zpool remove tank c0t2d0
-.Ed
-.It Sy Example 12 No Creating a ZFS Pool with Mirrored Separate Intent Logs
-The following command creates a ZFS storage pool consisting of two, two-way
-mirrors and mirrored log devices:
-.Bd -literal
-# zpool create pool mirror c0d0 c1d0 mirror c2d0 c3d0 log mirror \e
- c4d0 c5d0
-.Ed
-.It Sy Example 13 No Adding Cache Devices to a ZFS Pool
-The following command adds two disks for use as cache devices to a ZFS storage
-pool:
-.Bd -literal
-# zpool add pool cache c2d0 c3d0
-.Ed
-.Pp
-Once added, the cache devices gradually fill with content from main memory.
-Depending on the size of your cache devices, it could take over an hour for
-them to fill.
-Capacity and reads can be monitored using the
-.Cm iostat
-option as follows:
-.Bd -literal
-# zpool iostat -v pool 5
-.Ed
-.It Sy Example 14 No Removing a Mirrored top-level (Log or Data) Device
-The following commands remove the mirrored log device
-.Sy mirror-2
-and mirrored top-level data device
-.Sy mirror-1 .
-.Pp
-Given this configuration:
-.Bd -literal
- pool: tank
- state: ONLINE
- scrub: none requested
-config:
-
- NAME STATE READ WRITE CKSUM
- tank ONLINE 0 0 0
- mirror-0 ONLINE 0 0 0
- c6t0d0 ONLINE 0 0 0
- c6t1d0 ONLINE 0 0 0
- mirror-1 ONLINE 0 0 0
- c6t2d0 ONLINE 0 0 0
- c6t3d0 ONLINE 0 0 0
- logs
- mirror-2 ONLINE 0 0 0
- c4t0d0 ONLINE 0 0 0
- c4t1d0 ONLINE 0 0 0
-.Ed
-.Pp
-The command to remove the mirrored log
-.Sy mirror-2
-is:
-.Bd -literal
-# zpool remove tank mirror-2
-.Ed
-.Pp
-The command to remove the mirrored data
-.Sy mirror-1
-is:
-.Bd -literal
-# zpool remove tank mirror-1
-.Ed
-.It Sy Example 15 No Displaying expanded space on a device
-The following command displays the detailed information for the pool
-.Em data .
-This pool is comprised of a single raidz vdev where one of its devices
-increased its capacity by 10GB.
-In this example, the pool will not be able to utilize this extra capacity until
-all the devices under the raidz vdev have been expanded.
-.Bd -literal
-# zpool list -v data
-NAME SIZE ALLOC FREE FRAG EXPANDSZ CAP DEDUP HEALTH ALTROOT
-data 23.9G 14.6G 9.30G 48% - 61% 1.00x ONLINE -
- raidz1 23.9G 14.6G 9.30G 48% -
- c1t1d0 - - - - -
- c1t2d0 - - - - 10G
- c1t3d0 - - - - -
-.Ed
-.El
-.Sh ENVIRONMENT VARIABLES
-.Bl -tag -width "ZPOOL_VDEV_NAME_GUID"
-.It Ev ZPOOL_VDEV_NAME_GUID
-Cause
-.Nm zpool subcommands to output vdev guids by default.
-This behavior is identical to the
-.Nm zpool status -g
-command line option.
-.El
-.Bl -tag -width "ZPOOL_VDEV_NAME_FOLLOW_LINKS"
-.It Ev ZPOOL_VDEV_NAME_FOLLOW_LINKS
-Cause
-.Nm zpool
-subcommands to follow links for vdev names by default.
-This behavior is identical to the
-.Nm zpool status -L
-command line option.
-.El
-.Bl -tag -width "ZPOOL_VDEV_NAME_PATH"
-.It Ev ZPOOL_VDEV_NAME_PATH
-Cause
-.Nm zpool
-subcommands to output full vdev path names by default.
-This behavior is identical to the
-.Nm zpool status -P
-command line option.
-.El
-.Sh INTERFACE STABILITY
-.Sy Evolving
-.Sh SEE ALSO
-.Xr zfs 1M ,
-.Xr attributes 5 ,
-.Xr zpool-features 5
diff --git a/usr/src/man/man1m/zstreamdump.1m b/usr/src/man/man1m/zstreamdump.1m
deleted file mode 100644
index 70f6ee875e..0000000000
--- a/usr/src/man/man1m/zstreamdump.1m
+++ /dev/null
@@ -1,64 +0,0 @@
-'\" te
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
-.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH ZSTREAMDUMP 1M "Sep 21, 2009"
-.SH NAME
-zstreamdump \- filter data in zfs send stream
-.SH SYNOPSIS
-.LP
-.nf
-\fBzstreamdump\fR [\fB-C\fR] [\fB-v\fR]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBzstreamdump\fR utility reads from the output of the \fBzfs send\fR
-command, then displays headers and some statistics from that output. See
-\fBzfs\fR(1M).
-.SH OPTIONS
-.sp
-.LP
-The following options are supported:
-.sp
-.ne 2
-.na
-\fB\fB-C\fR\fR
-.ad
-.sp .6
-.RS 4n
-Suppress the validation of checksums.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-v\fR\fR
-.ad
-.sp .6
-.RS 4n
-Verbose. Dump all headers, not only begin and end headers.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Uncommitted
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBzfs\fR(1M), \fBattributes\fR(5)
diff --git a/usr/src/man/man1m/ztest.1m b/usr/src/man/man1m/ztest.1m
deleted file mode 100755
index 065f88e52c..0000000000
--- a/usr/src/man/man1m/ztest.1m
+++ /dev/null
@@ -1,169 +0,0 @@
-.\" $NetBSD: ztest.1,v 1.4 2018/12/10 03:58:30 sevan Exp $
-.\"
-.\" Copyright (c) 2018 The NetBSD Foundation, Inc.
-.\" All rights reserved.
-.\"
-.\" This code is derived from software contributed to The NetBSD Foundation
-.\" by Sevan Janiyan <sevan@NetBSD.org>
-.\"
-.\" Redistribution and use in source and binary forms, with or without
-.\" modification, are permitted provided that the following conditions
-.\" are met:
-.\" 1. Redistributions of source code must retain the above copyright
-.\" notice, this list of conditions and the following disclaimer.
-.\" 2. Redistributions in binary form must reproduce the above copyright
-.\" notice, this list of conditions and the following disclaimer in the
-.\" documentation and/or other materials provided with the distribution.
-.\"
-.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
-.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
-.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
-.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
-.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
-.\" POSSIBILITY OF SUCH DAMAGE.
-.\"/
-.Dd December 10, 2018
-.Dt ZTEST 1M
-.Os
-.Sh NAME
-.Nm ztest
-.Nd ZFS stress test utility
-.Sh SYNOPSIS
-.Nm
-.Op Fl EhV
-.Op Fl a Ar shift
-.Op Fl B Ar path
-.Op Fl d Ar datasets
-.Op Fl F Ar loops
-.Op Fl f Ar path
-.Op Fl g Ar threshold
-.Op Fl i Ar count
-.Op Fl k Ar percent
-.Op Fl m Ar copies
-.Op Fl P Ar passtime
-.Op Fl p Ar name
-.Op Fl R Ar parity
-.Op Fl r Ar disks
-.Op Fl s Ar size
-.Op Fl T Ar time
-.Op Fl t Ar threads
-.Op Fl v Ar vdevs
-.Sh DESCRIPTION
-The
-.Nm
-utility stress tests the DMU, ZAP, SPA components of ZFS from user space.
-.Pp
-.Nm
-provides a simple routine to test the functionality of a component task.
-These simple routines can then be used to stress test through parallel
-execution.
-Tests are run as child processes of the main process.
-.Pp
-The checksum and compression functions are changed each time a dataset is
-opened to introduce varying combinations of checksum and compression from block
-to block among objects.
-.Pp
-While tests are running, faults are injected into the pool to verify
-self-healing ability.
-.Pp
-To verify that the on-disk consistency is never lost after a crash, child
-processes are killed at random with a SIGKILL signal, after which the parent
-process invokes a new child to run the test again on the same storage pool.
-.Pp
-Many of the tests record the transaction group number as part of their data.
-When reading old data, tests verify that the transaction group number is less
-than the current, open state, transaction group to ensure the consistency of
-tests and detect unaccounted changes.
-It is advised that any new tests added to
-.Nm
-should also perform the same check with transaction group numbers, if
-applicable.
-.Pp
-The main
-.Nm
-process uses an
-.Xr mmap 2
-temporary file to pass information to child processes which allows shared
-memory to survive
-.Xr exec 3
-syscall.
-A copy of the
-.Vt ztest_shared_hdr_t
-struct containing information on the size and number of shared
-structures in the file is always stored at offset 0 of the file.
-.Pp
-For backwards compatibility testing
-.Nm
-can invoke an alternative version of
-.Nm
-after a
-.Dv SIGKILL
-signal using the
-.Fl B
-flag.
-.Pp
-The following options are available:
-.Bl -tag -width 5n
-.It Fl a Ar shift
-alignment shift (default: 9) use 0 for random
-.It Fl B Ar path
-alt ztest (default: <none>) alternate ztest path
-.It Fl d Ar datasets
-datasets (default: 7)
-.It Fl E
-use existing pool instead of creating new one
-.It Fl F Ar loops
-freezeloops (default: 50) max loops in
-.Fn spa_freeze
-.It Fl f Ar path
-dir (default:
-.Pa /tmp )
-file directory for vdev files
-.It Fl g Ar threshold
-gang block threshold (default: 32K)
-.It Fl h
-print help
-.It Fl i Ar count
-init count (default: 1) initialize pool
-.Ar count
-times
-.It Fl k Ar percent
-kill percentage (default: 70%)
-.It Fl m Ar copies
-mirror copies (default: 2)
-.It Fl P Ar passtime
-passtime (default: 60 sec) time per pass
-.It Fl p Ar name
-pool name (default: ztest)
-.It Fl R Ar parity
-raidz parity (default: 1)
-.It Fl r Ar disks
-raidz disks (default: 4)
-.It Fl s Ar size
-size of each vdev (default: 256M)
-.It Fl T Ar time
-time (default: 300 sec) total run time
-.It Fl t Ar threads
-threads (default: 23)
-.It Fl V
-verbose (use multiple times to increase verbosity)
-.It Fl v Ar vdevs
-number of vdevs (default: 5)
-.El
-.Sh AUTHORS
-This man page was written by
-.An Sevan Janiyan
-.Aq Mt sevan@NetBSD.org .
-.Sh CAVEATS
-To allow for backward compatibility testing using older versions of
-.Nm
-the information stored in the
-.Xr mmap 2
-temporary file passed from parent process to child must
-remain compatible with older versions of
-.Nm .
diff --git a/usr/src/man/man2/Intro.2 b/usr/src/man/man2/Intro.2
index 6194a6a260..8318bb5726 100644
--- a/usr/src/man/man2/Intro.2
+++ b/usr/src/man/man2/Intro.2
@@ -31,7 +31,7 @@ only after an error has been indicated.
.sp
.LP
In the case of multithreaded applications, the \fB-mt\fR option must be
-specified on the command line at compilation time (see \fBthreads\fR(5)). When
+specified on the command line at compilation time (see \fBthreads\fR(7)). When
the \fB-mt\fR option is specified, \fBerrno\fR becomes a macro that enables
each thread to have its own \fBerrno\fR. This \fBerrno\fR macro can be used on
either side of the assignment as though it were a variable.
@@ -46,7 +46,7 @@ SUS. An application should not rely this condition being detected and reported.
An application that relies on such behavior cannot be assured to be portable
across conforming implementations. If more than one error occurs in processing
a function call, any one of the possible errors might may be returned, as the
-order of detection is undefined. See \fBstandards\fR(5) for additional
+order of detection is undefined. See \fBstandards\fR(7) for additional
information regarding the Single UNIX Specification.
.sp
.LP
@@ -159,7 +159,7 @@ exported shell variables.
Exec format error
.sp
A request is made to execute a file which, although it has the appropriate
-permissions, does not start with a valid format (see \fBa.out\fR(4)).
+permissions, does not start with a valid format (see \fBa.out\fR(5)).
.RE
.sp
@@ -1320,7 +1320,7 @@ A terminal that is associated with a session. Each session may have, at most,
one controlling terminal associated with it and a controlling terminal may be
associated with only one session. Certain input sequences from the controlling
terminal cause signals to be sent to process groups in the session associated
-with the controlling terminal; see \fBtermio\fR(7I).
+with the controlling terminal; see \fBtermio\fR(4I).
.SS "Directory"
.sp
.LP
@@ -1343,7 +1343,7 @@ In a stream, the direction from stream head to driver.
.LP
In a stream, the driver provides the interface between peripheral hardware and
the stream. A driver can also be a pseudo-driver, such as a multiplexor or log
-driver (see \fBlog\fR(7D)), which is not associated with a hardware device.
+driver (see \fBlog\fR(4D)), which is not associated with a hardware device.
.SS "Effective User \fBID\fR and Effective Group \fBID\fR"
.sp
.LP
@@ -1662,7 +1662,7 @@ Solaris software implements a set of privileges that provide fine-grained
control over the actions of processes. The possession of of a certain privilege
allows a process to perform a specific set of restricted operations. Prior to
the Solaris 10 release, a process running with uid 0 was granted all
-privileges. See \fBprivileges\fR(5) for the semantics and the degree of
+privileges. See \fBprivileges\fR(7) for the semantics and the degree of
backward compatibility awarded to processes with an effective uid of 0.
.SS "Process \fBID\fR"
.sp
@@ -2133,4 +2133,5 @@ This notice shall appear on any product containing this material.
.SH SEE ALSO
.sp
.LP
-\fBstandards\fR(5), \fBthreads\fR(5)
+.BR standards (7),
+.BR threads (7)
diff --git a/usr/src/man/man2/__sparc_utrap_install.2 b/usr/src/man/man2/__sparc_utrap_install.2
index c331a4d6b3..b33a28c406 100644
--- a/usr/src/man/man2/__sparc_utrap_install.2
+++ b/usr/src/man/man2/__sparc_utrap_install.2
@@ -371,7 +371,7 @@ do not need such a handler. The example is for illustrative purposes only.)
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -387,7 +387,8 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBsignal\fR(3C), \fBattributes\fR(5)
+.BR signal (3C),
+.BR attributes (7)
.sp
.LP
\fISPARC Architecture Manual, Version 9\fR
diff --git a/usr/src/man/man2/_lwp_cond_signal.2 b/usr/src/man/man2/_lwp_cond_signal.2
index a5a3b18c65..f9ea50be9e 100644
--- a/usr/src/man/man2/_lwp_cond_signal.2
+++ b/usr/src/man/man2/_lwp_cond_signal.2
@@ -70,4 +70,5 @@ The \fIcvp\fR argument points to an invalid address.
.SH SEE ALSO
.sp
.LP
-\fB_lwp_cond_wait\fR(2), \fB_lwp_mutex_lock\fR(2)
+.BR _lwp_cond_wait (2),
+.BR _lwp_mutex_lock (2)
diff --git a/usr/src/man/man2/_lwp_cond_wait.2 b/usr/src/man/man2/_lwp_cond_wait.2
index c095bbc954..2fe9b624f5 100644
--- a/usr/src/man/man2/_lwp_cond_wait.2
+++ b/usr/src/man/man2/_lwp_cond_wait.2
@@ -198,5 +198,9 @@ while (cond == FALSE) {
.in -2
.SH SEE ALSO
-\fB_lwp_cond_broadcast\fR(2), \fB_lwp_cond_signal\fR(2), \fB_lwp_kill\fR(2),
-\fB_lwp_mutex_lock\fR(2), \fBfork\fR(2), \fBkill\fR(2)
+.BR _lwp_cond_broadcast (2),
+.BR _lwp_cond_signal (2),
+.BR _lwp_kill (2),
+.BR _lwp_mutex_lock (2),
+.BR fork (2),
+.BR kill (2)
diff --git a/usr/src/man/man2/_lwp_info.2 b/usr/src/man/man2/_lwp_info.2
index 5ef042d167..c01d13a9f7 100644
--- a/usr/src/man/man2/_lwp_info.2
+++ b/usr/src/man/man2/_lwp_info.2
@@ -76,7 +76,7 @@ of seconds.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -92,4 +92,5 @@ MT-Level Async-Signal-Safe
.SH SEE ALSO
.sp
.LP
-\fBtimes\fR(2), \fBattributes\fR(5)
+.BR times (2),
+.BR attributes (7)
diff --git a/usr/src/man/man2/_lwp_kill.2 b/usr/src/man/man2/_lwp_kill.2
index bfb964b403..52033a372c 100644
--- a/usr/src/man/man2/_lwp_kill.2
+++ b/usr/src/man/man2/_lwp_kill.2
@@ -57,7 +57,7 @@ The \fItarget_lwp\fR argument cannot be found in the current process.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -73,5 +73,8 @@ MT-Level Async-Signal-Safe
.SH SEE ALSO
.sp
.LP
-\fBkill\fR(2), \fBsigaction\fR(2), \fBsigprocmask\fR(2), \fBsignal.h\fR(3HEAD),
-\fBattributes\fR(5)
+.BR kill (2),
+.BR sigaction (2),
+.BR sigprocmask (2),
+.BR signal.h (3HEAD),
+.BR attributes (7)
diff --git a/usr/src/man/man2/_lwp_mutex_lock.2 b/usr/src/man/man2/_lwp_mutex_lock.2
index 5a40b63df4..6178ca1f88 100644
--- a/usr/src/man/man2/_lwp_mutex_lock.2
+++ b/usr/src/man/man2/_lwp_mutex_lock.2
@@ -93,4 +93,5 @@ The \fImp\fR argument points to a locked mutex.
.SH SEE ALSO
.sp
.LP
-\fBIntro\fR(2), \fB_lwp_cond_wait\fR(2)
+.BR Intro (2),
+.BR _lwp_cond_wait (2)
diff --git a/usr/src/man/man2/_lwp_self.2 b/usr/src/man/man2/_lwp_self.2
index f0f72c7195..d1d47a1d3f 100644
--- a/usr/src/man/man2/_lwp_self.2
+++ b/usr/src/man/man2/_lwp_self.2
@@ -21,7 +21,7 @@ The \fB_lwp_self()\fR function returns the ID of the calling LWP.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -37,4 +37,4 @@ MT-Level Async-Signal-Safe
.SH SEE ALSO
.sp
.LP
-\fBattributes\fR(5)
+.BR attributes (7)
diff --git a/usr/src/man/man2/_lwp_sema_wait.2 b/usr/src/man/man2/_lwp_sema_wait.2
index 9baad89013..a964e26abf 100644
--- a/usr/src/man/man2/_lwp_sema_wait.2
+++ b/usr/src/man/man2/_lwp_sema_wait.2
@@ -123,4 +123,4 @@ The value of the \fIsema\fR argument exceeds \fBSEM_VALUE_MAX\fR.
.SH SEE ALSO
.sp
.LP
-\fBfork\fR(2)
+.BR fork (2)
diff --git a/usr/src/man/man2/_lwp_suspend.2 b/usr/src/man/man2/_lwp_suspend.2
index f545805f57..ed17612cb4 100644
--- a/usr/src/man/man2/_lwp_suspend.2
+++ b/usr/src/man/man2/_lwp_suspend.2
@@ -57,7 +57,7 @@ The \fItarget_lwpid\fR argument cannot be found in the current process.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -73,4 +73,4 @@ MT-Level Async-Signal-Safe
.SH SEE ALSO
.sp
.LP
-\fBattributes\fR(5)
+.BR attributes (7)
diff --git a/usr/src/man/man2/access.2 b/usr/src/man/man2/access.2
index fde7b83523..af0a23e688 100644
--- a/usr/src/man/man2/access.2
+++ b/usr/src/man/man2/access.2
@@ -343,7 +343,7 @@ accessibility is located relative to the desired directory.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -362,9 +362,12 @@ Standard See below.
.sp
.LP
-For \fBaccess()\fR, see \fBstandards\fR(5).
+For \fBaccess()\fR, see \fBstandards\fR(7).
.SH SEE ALSO
.sp
.LP
-\fBIntro\fR(2), \fBchmod\fR(2), \fBstat\fR(2), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR Intro (2),
+.BR chmod (2),
+.BR stat (2),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man2/acct.2 b/usr/src/man/man2/acct.2
index 1306be81c2..6ce43dfa1c 100644
--- a/usr/src/man/man2/acct.2
+++ b/usr/src/man/man2/acct.2
@@ -129,4 +129,7 @@ The named file resides on a read-only file system.
.SH SEE ALSO
.sp
.LP
-\fBexit\fR(2), \fBacct.h\fR(3HEAD), \fBsignal\fR(3C), \fBprivileges\fR(5)
+.BR exit (2),
+.BR signal (3C),
+.BR acct.h (3HEAD),
+.BR privileges (7)
diff --git a/usr/src/man/man2/acl.2 b/usr/src/man/man2/acl.2
index 2bfea7f337..b27e8fb703 100644
--- a/usr/src/man/man2/acl.2
+++ b/usr/src/man/man2/acl.2
@@ -250,7 +250,7 @@ specified by \fIpathp\fR resides on a file system that is mounted read-only.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -266,4 +266,7 @@ Interface Stability Evolving
.SH SEE ALSO
.sp
.LP
-\fBgetfacl\fR(1), \fBsetfacl\fR(1), \fBaclcheck\fR(3SEC), \fBaclsort\fR(3SEC)
+.BR getfacl (1),
+.BR setfacl (1),
+.BR aclcheck (3SEC),
+.BR aclsort (3SEC)
diff --git a/usr/src/man/man2/adjtime.2 b/usr/src/man/man2/adjtime.2
index ef49664ab1..93b0e4ac22 100644
--- a/usr/src/man/man2/adjtime.2
+++ b/usr/src/man/man2/adjtime.2
@@ -102,4 +102,6 @@ by \fIolddelta\fR is too small to contain the correct number of seconds.
.SH SEE ALSO
.sp
.LP
-\fBdate\fR(1), \fBgettimeofday\fR(3C), \fBprivileges\fR(5)
+.BR date (1),
+.BR gettimeofday (3C),
+.BR privileges (7)
diff --git a/usr/src/man/man2/alarm.2 b/usr/src/man/man2/alarm.2
index c43fa7d966..4f276d5f6a 100644
--- a/usr/src/man/man2/alarm.2
+++ b/usr/src/man/man2/alarm.2
@@ -53,7 +53,7 @@ indicate an error.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -71,5 +71,8 @@ MT-Level Async-Signal-Safe
.SH SEE ALSO
.sp
.LP
-\fBexec\fR(2), \fBfork\fR(2), \fBsignal.h\fR(3HEAD), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR exec (2),
+.BR fork (2),
+.BR signal.h (3HEAD),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man2/audit.2 b/usr/src/man/man2/audit.2
index 302a2ac835..c6a2faedf2 100644
--- a/usr/src/man/man2/audit.2
+++ b/usr/src/man/man2/audit.2
@@ -22,7 +22,7 @@ The \fBaudit()\fR function queues a record for writing to the system audit log.
The data pointed to by \fIrecord\fR is queued for the log after a minimal
consistency check, with the \fIlength\fR parameter specifying the size of the
record in bytes. The data should be a well-formed audit record as described
-by \fBaudit.log\fR(4).
+by \fBaudit.log\fR(5).
.sp
.LP
The kernel validates the record header token type and length, and sets the
@@ -88,7 +88,7 @@ the calling process.
Only privileged processes can successfully execute this call.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -105,11 +105,16 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBaudit\fR(1M), \fBauditd\fR(1M), \fBsvcadm\fR(1M),
-\fBauditon\fR(2), \fBgetaudit\fR(2), \fBaudit.log\fR(4), \fBattributes\fR(5),
-\fBprivileges\fR(5)
+.BR auditon (2),
+.BR getaudit (2),
+.BR audit.log (5),
+.BR attributes (7),
+.BR privileges (7),
+.BR audit (8),
+.BR auditd (8),
+.BR svcadm (8)
.SH NOTES
.LP
The functionality described in this man page is available only if
-the audit daemon \fBauditd\fR(1M) has not been
-disabled by \fBaudit\fR(1M) or \fBsvcadm\fR(1M).
+the audit daemon \fBauditd\fR(8) has not been
+disabled by \fBaudit\fR(8) or \fBsvcadm\fR(8).
diff --git a/usr/src/man/man2/auditon.2 b/usr/src/man/man2/auditon.2
index 1d06bcd4da..c8a930d1b3 100644
--- a/usr/src/man/man2/auditon.2
+++ b/usr/src/man/man2/auditon.2
@@ -474,7 +474,7 @@ default, this information is not included.
.RS 4n
Enable auditing for each local zone. If not set, audit records from all zones
are collected in a single log accessible in the global zone and certain
-\fBauditconfig\fR(1M) operations are disallowed. This policy can be set only
+\fBauditconfig\fR(8) operations are disallowed. This policy can be set only
from the global zone.
.RE
@@ -555,7 +555,7 @@ permitted only in the global zone: \fBA_SETCOND\fR, \fBA_SETCLASS\fR,
\fBA_SETPOLICY\fR. All other \fBauditon()\fR commands are valid from any zone.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -572,8 +572,13 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBauditconfig\fR(1M), \fBauditd\fR(1M), \fBaudit\fR(2),
-\fBexec\fR(2), \fBaudit.log\fR(4), \fBattributes\fR(5), \fBprivileges\fR(5)
+.BR audit (2),
+.BR exec (2),
+.BR audit.log (5),
+.BR attributes (7),
+.BR privileges (7),
+.BR auditconfig (8),
+.BR auditd (8)
.SH NOTES
.LP
The auditon options that modify or display process-based information are not
diff --git a/usr/src/man/man2/brk.2 b/usr/src/man/man2/brk.2
index e9d75ec438..a64c084d16 100644
--- a/usr/src/man/man2/brk.2
+++ b/usr/src/man/man2/brk.2
@@ -107,7 +107,7 @@ suitably for any purpose.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -123,8 +123,14 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBexec\fR(2), \fBgetrlimit\fR(2), \fBmmap\fR(2), \fBshmop\fR(2),
-\fBulimit\fR(2), \fBend\fR(3C), \fBfree\fR(3C), \fBmalloc\fR(3C)
+.BR exec (2),
+.BR getrlimit (2),
+.BR mmap (2),
+.BR shmop (2),
+.BR ulimit (2),
+.BR end (3C),
+.BR free (3C),
+.BR malloc (3C)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man2/chdir.2 b/usr/src/man/man2/chdir.2
index 2049ba7dc7..f9ea924e07 100644
--- a/usr/src/man/man2/chdir.2
+++ b/usr/src/man/man2/chdir.2
@@ -187,7 +187,7 @@ The open file descriptor \fIfildes\fR does not refer to a directory.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -205,4 +205,6 @@ MT-Level Async-Signal-Safe
.SH SEE ALSO
.sp
.LP
-\fBchroot\fR(2), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR chroot (2),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man2/chmod.2 b/usr/src/man/man2/chmod.2
index d71ba875c5..9bed574a08 100644
--- a/usr/src/man/man2/chmod.2
+++ b/usr/src/man/man2/chmod.2
@@ -223,7 +223,7 @@ changing permissions on a file.
The {\fBPRIV_FILE_SETID\fR} privilege overrides constraints on ownership when
adding the setuid or setgid bits to an executable file or a directory. When
adding the setuid bit to a root owned executable, additional restrictions
-apply. See \fBprivileges\fR(5).
+apply. See \fBprivileges\fR(7).
.RE
.sp
@@ -521,7 +521,7 @@ one whose meaning cannot be represented in the file's mode field alone. The new
ACL mask permissions might change the effective permissions for additional
users and groups that have ACL entries on the file.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -537,10 +537,23 @@ MT-Level Async-Signal-Safe
.TE
.SH SEE ALSO
-\fBchmod\fR(1), \fBchown\fR(2), \fBcreat\fR(2), \fBfcntl\fR(2), \fBmknod\fR(2),
-\fBopen\fR(2), \fBread\fR(2), \fBrename\fR(2), \fBstat\fR(2), \fBwrite\fR(2),
-\fBfattach\fR(3C), \fBmkfifo\fR(3C), \fBstat.h\fR(3HEAD), \fBattributes\fR(5),
-\fBprivileges\fR(5), \fBstandards\fR(5)
+.LP
+.BR chmod (1),
+.BR chown (2),
+.BR creat (2),
+.BR fcntl (2),
+.BR mknod (2),
+.BR open (2),
+.BR read (2),
+.BR rename (2),
+.BR stat (2),
+.BR write (2),
+.BR fattach (3C),
+.BR mkfifo (3C),
+.BR stat.h (3HEAD),
+.BR attributes (7),
+.BR privileges (7),
+.BR standards (7)
.sp
.LP
\fIProgramming Interfaces Guide\fR
diff --git a/usr/src/man/man2/chown.2 b/usr/src/man/man2/chown.2
index cd0605dd23..265c3af321 100644
--- a/usr/src/man/man2/chown.2
+++ b/usr/src/man/man2/chown.2
@@ -170,9 +170,9 @@ If
is not in effect, the privilege
.Brq PRIV_FILE_CHOWN_SELF
is asserted in the inheritable set of all processes unless overridden by
-.Xr policy.conf 4
+.Xr policy.conf 5
or
-.Xr user_attr 4 .
+.Xr user_attr 5 .
To set this configuration option, include the following
line in
.Pa /etc/system :
@@ -187,7 +187,7 @@ set rstchown = 0
.Ed
.Pp
See
-.Xr system 4
+.Xr system 5
and
.Xr fpathconf 2 .
.Pp
@@ -335,6 +335,6 @@ resides on a read-only file system.
.Xr chown 1 ,
.Xr chmod 2 ,
.Xr fpathconf 2 ,
-.Xr system 4 ,
-.Xr attributes 5 ,
-.Xr standards 5
+.Xr system 5 ,
+.Xr attributes 7 ,
+.Xr standards 7
diff --git a/usr/src/man/man2/chroot.2 b/usr/src/man/man2/chroot.2
index 2c81f34038..3cb1c5b683 100644
--- a/usr/src/man/man2/chroot.2
+++ b/usr/src/man/man2/chroot.2
@@ -172,7 +172,9 @@ the calling process.
.SH SEE ALSO
.sp
.LP
-\fBchroot\fR(1M), \fBchdir\fR(2), \fBprivileges\fR(5)
+.BR chdir (2),
+.BR privileges (7),
+.BR chroot (8)
.SH WARNINGS
.sp
.LP
diff --git a/usr/src/man/man2/close.2 b/usr/src/man/man2/close.2
index 281a3f8956..1305270f45 100644
--- a/usr/src/man/man2/close.2
+++ b/usr/src/man/man2/close.2
@@ -122,7 +122,7 @@ for events associated with that stream
see
.Dv I_SETSIG
in
-.Xr streamio 7I
+.Xr streamio 4I
.Pc ,
the calling process will be unregistered for events associated with the stream.
The last
@@ -147,7 +147,7 @@ The time delay can be changed via an
request
.Po
see
-.Xr streamio 7I
+.Xr streamio 4I
.Pc .
If the
.Dv O_NONBLOCK
@@ -327,6 +327,6 @@ function rather than
.Xr fopen 3C ,
.Xr signal 3C ,
.Xr signal.h 3HEAD ,
-.Xr attributes 5 ,
-.Xr standards 5 ,
-.Xr streamio 7I
+.Xr streamio 4I ,
+.Xr attributes 7 ,
+.Xr standards 7
diff --git a/usr/src/man/man2/creat.2 b/usr/src/man/man2/creat.2
index 018ac30730..95fc23cf68 100644
--- a/usr/src/man/man2/creat.2
+++ b/usr/src/man/man2/creat.2
@@ -104,11 +104,11 @@ fd = creat(filename, mode);
.sp
.LP
The \fBcreat()\fR function has a transitional interface for 64-bit file
-offsets. See \fBlf64\fR(5).
+offsets. See \fBlf64\fR(7).
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -126,5 +126,8 @@ MT-Level Async-Signal-Safe
.SH SEE ALSO
.sp
.LP
-\fBopen\fR(2), \fBattributes\fR(5), \fBlargefile\fR(5), \fBlf64\fR(5),
-\fBstandards\fR(5)
+.BR open (2),
+.BR attributes (7),
+.BR largefile (7),
+.BR lf64 (7),
+.BR standards (7)
diff --git a/usr/src/man/man2/dup.2 b/usr/src/man/man2/dup.2
index dcb3bf0b20..59e6d3ab9b 100644
--- a/usr/src/man/man2/dup.2
+++ b/usr/src/man/man2/dup.2
@@ -100,7 +100,7 @@ is no longer active.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -118,6 +118,14 @@ MT-Level Async-Signal-Safe
.SH SEE ALSO
.sp
.LP
-\fBclose\fR(2), \fBcreat\fR(2), \fBexec\fR(2), \fBfcntl\fR(2),
-\fBgetrlimit\fR(2), \fBopen\fR(2), \fBpipe\fR(2), \fBdup2\fR(3C),
-\fBlockf\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR close (2),
+.BR creat (2),
+.BR exec (2),
+.BR fcntl (2),
+.BR getrlimit (2),
+.BR open (2),
+.BR pipe (2),
+.BR dup2 (3C),
+.BR lockf (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man2/exec.2 b/usr/src/man/man2/exec.2
index 70a57dc54a..f89347d844 100644
--- a/usr/src/man/man2/exec.2
+++ b/usr/src/man/man2/exec.2
@@ -163,12 +163,12 @@ The \fIfile\fR argument is used to construct a pathname that identifies the new
process image file. If the \fIfile\fR argument contains a slash character, it
is used as the pathname for this file. Otherwise, the path prefix for this file
is obtained by a search of the directories passed in the \fBPATH\fR environment
-variable (see \fBenviron\fR(5)). The environment is supplied typically by the
+variable (see \fBenviron\fR(7)). The environment is supplied typically by the
shell. If the process image file is not a valid executable object file,
\fBexeclp()\fR and \fBexecvp()\fR use the contents of that file as standard
input to the shell. In this case, the shell becomes the new process image. The
standard to which the caller conforms determines which shell is used. See
-\fBstandards\fR(5).
+\fBstandards\fR(7).
.sp
.LP
The arguments represented by \fIarg0\fR\&.\|.\|. are pointers to
@@ -279,13 +279,13 @@ inheritable set.
The system attempts to set the privilege-aware state to non-PA both before
performing any modifications to the process IDs and privilege sets as well as
after completing the transition to new UIDs and privilege sets, following the
-rules outlined in \fBprivileges\fR(5).
+rules outlined in \fBprivileges\fR(7).
.sp
.LP
If the {\fBPRIV_PROC_OWNER\fR} privilege is asserted in the effective set, the
set-user-ID and set-group-ID bits will be honored when the process is being
controlled by \fBptrace\fR(3C). Additional restriction can apply when the
-traced process has an effective UID of 0. See \fBprivileges\fR(5).
+traced process has an effective UID of 0. See \fBprivileges\fR(7).
.sp
.LP
Any shared memory segments attached to the calling process image will not be
@@ -305,7 +305,7 @@ locks is unspecified.
.LP
If \fB_XOPEN_REALTIME\fR is defined and has a value other than \(mi1, any named
semaphores open in the calling process are closed as if by appropriate calls to
-\fBsem_close\fR(3C)
+.BR sem_close (3C)
.sp
.LP
Profiling is disabled for the new process; see \fBprofil\fR(2).
@@ -333,7 +333,7 @@ outstanding asynchronous I/O operations at the time the \fBexec\fR function is
called.
.sp
.LP
-All active contract templates are cleared (see \fBcontract\fR(4)).
+All active contract templates are cleared (see \fBcontract\fR(5)).
.sp
.LP
The new process also inherits the following attributes from the calling
@@ -396,7 +396,7 @@ pending signals (see \fBsigpending\fR(2))
.TP
.ie t \(bu
.el o
-privilege debugging flag (see \fBprivileges\fR(5) and \fBgetpflags\fR(2))
+privilege debugging flag (see \fBprivileges\fR(7) and \fBgetpflags\fR(2))
.RE
.RS +4
.TP
@@ -408,7 +408,7 @@ process \fBID\fR
.TP
.ie t \(bu
.el o
-process contract (see \fBcontract\fR(4) and \fBprocess\fR(4))
+process contract (see \fBcontract\fR(5) and \fBprocess\fR(5))
.RE
.RS +4
.TP
@@ -727,7 +727,7 @@ thenew process.
The \fIenviron\fR array should not be accessed directly by the application.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -741,7 +741,7 @@ Interface Stability Committed
_
MT-Level See below.
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.sp
@@ -749,15 +749,41 @@ Standard See \fBstandards\fR(5).
The \fBexecle()\fR and \fBexecve()\fR functions are Async-Signal-Safe.
.SH SEE ALSO
.LP
-\fBksh\fR(1), \fBps\fR(1), \fBsh\fR(1), \fBalarm\fR(2), \fBbrk\fR(2),
-\fBchmod\fR(2), \fBexit\fR(2), \fBfcntl\fR(2), \fBfork\fR(2),
-\fBgetpflags\fR(2), \fBgetrlimit\fR(2), \fBmemcntl\fR(2), \fBmmap\fR(2),
-\fBnice\fR(2), \fBpriocntl\fR(2), \fBprofil\fR(2), \fBsemop\fR(2),
-\fBshmop\fR(2), \fBsigpending\fR(2), \fBsigprocmask\fR(2), \fBtimes\fR(2),
-\fBumask\fR(2), \fBlockf\fR(3C), \fBptrace\fR(3C), \fBsetlocale\fR(3C),
-\fBsignal\fR(3C), \fBsystem\fR(3C), \fBtimer_create\fR(3C), \fBa.out\fR(4),
-\fBcontract\fR(4), \fBprocess\fR(4), \fBattributes\fR(5), \fBenviron\fR(5),
-\fBprivileges\fR(5), \fBstandards\fR(5)
+.BR ksh (1),
+.BR ps (1),
+.BR sh (1),
+.BR alarm (2),
+.BR brk (2),
+.BR chmod (2),
+.BR exit (2),
+.BR fcntl (2),
+.BR fork (2),
+.BR getpflags (2),
+.BR getrlimit (2),
+.BR memcntl (2),
+.BR mmap (2),
+.BR nice (2),
+.BR priocntl (2),
+.BR profil (2),
+.BR semop (2),
+.BR shmop (2),
+.BR sigpending (2),
+.BR sigprocmask (2),
+.BR times (2),
+.BR umask (2),
+.BR lockf (3C),
+.BR ptrace (3C),
+.BR setlocale (3C),
+.BR signal (3C),
+.BR system (3C),
+.BR timer_create (3C),
+.BR a.out (5),
+.BR contract (5),
+.BR process (5),
+.BR attributes (7),
+.BR environ (7),
+.BR privileges (7),
+.BR standards (7)
.SH WARNINGS
.LP
If a program is \fBsetuid\fR to a user \fBID\fR other than the superuser, and
diff --git a/usr/src/man/man2/exit.2 b/usr/src/man/man2/exit.2
index c8a8989ada..02c426638c 100644
--- a/usr/src/man/man2/exit.2
+++ b/usr/src/man/man2/exit.2
@@ -238,14 +238,14 @@ accounting routine is enabled (see \fBacct\fR(2)).
.el o
An extended accounting record is written to the extended process accounting
file if the system's extended process accounting facility is enabled (see
-\fBacctadm\fR(1M)).
+\fBacctadm\fR(8)).
.RE
.RS +4
.TP
.ie t \(bu
.el o
If the current process is the last process within its task and if the system's
-extended task accounting facility is enabled (see \fBacctadm\fR(1M)), an
+extended task accounting facility is enabled (see \fBacctadm\fR(8)), an
extended accounting record is written to the extended task accounting file.
.RE
.SH RETURN VALUES
@@ -263,7 +263,7 @@ Normally applications should use \fBexit()\fR rather than \fB_exit()\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -277,7 +277,7 @@ Interface Stability Committed
_
MT-Level See below.
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.sp
@@ -286,9 +286,24 @@ The \fB_exit()\fR and \fB_Exit()\fR functions are Async-Signal-Safe.
.SH SEE ALSO
.sp
.LP
-\fBacctadm\fR(1M), \fBIntro\fR(2), \fBacct\fR(2), \fBclose\fR(2),
-\fBmemcntl\fR(2), \fBsemop\fR(2), \fBshmget\fR(2), \fBsigaction\fR(2),
-\fBtimes\fR(2), \fBwaitid\fR(2), \fBatexit\fR(3C), \fBfclose\fR(3C),
-\fBmq_close\fR(3C), \fBplock\fR(3C), \fBsignal.h\fR(3HEAD), \fBtmpfile\fR(3C),
-\fBwait\fR(3C), \fBwait3\fR(3C), \fBwaitpid\fR(3C), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR Intro (2),
+.BR acct (2),
+.BR close (2),
+.BR memcntl (2),
+.BR semop (2),
+.BR shmget (2),
+.BR sigaction (2),
+.BR times (2),
+.BR waitid (2),
+.BR atexit (3C),
+.BR fclose (3C),
+.BR mq_close (3C),
+.BR plock (3C),
+.BR tmpfile (3C),
+.BR wait (3C),
+.BR wait3 (3C),
+.BR waitpid (3C),
+.BR signal.h (3HEAD),
+.BR attributes (7),
+.BR standards (7),
+.BR acctadm (8)
diff --git a/usr/src/man/man2/fcntl.2 b/usr/src/man/man2/fcntl.2
index 21b6dd64d5..f178315525 100644
--- a/usr/src/man/man2/fcntl.2
+++ b/usr/src/man/man2/fcntl.2
@@ -290,7 +290,7 @@ one is returned is unspecified. If the blocking lock is an OFD-style lock,
.ad
.RS 14n
Equivalent to \fBF_GETLK\fR, but takes a \fBstruct flock64\fR argument rather
-than a \fBstruct flock\fR argument. See \fBlf64\fR(5).
+than a \fBstruct flock\fR argument. See \fBlf64\fR(7).
.RE
.sp
@@ -316,7 +316,7 @@ return value of \fB\(mi1\fR\&.
.ad
.RS 14n
Equivalent to \fBF_SETLK\fR, but takes a \fBstruct flock64\fR argument rather
-than a \fBstruct flock\fR argument. See \fBlf64\fR(5).
+than a \fBstruct flock\fR argument. See \fBlf64\fR(7).
.RE
.sp
@@ -340,7 +340,7 @@ set to \fBEINTR\fR, and the lock operation will not be done.
.ad
.RS 14n
Equivalent to \fBF_SETLKW\fR, but takes a \fBstruct flock64\fR argument rather
-than a \fBstruct flock\fR argument. See \fBlf64\fR(5).
+than a \fBstruct flock\fR argument. See \fBlf64\fR(7).
.RE
.sp
@@ -351,7 +351,7 @@ supported for other files. See the FILE LOCKING section of this manual page for
information about the types of file locks available and their interaction.
OFD-style record locks are currently limited to spanning the entire file and
these locks are currently not supported over remote file systems (e.g.
-\fBnfs\fR(4)) which use the Network Lock Manager.
+\fBnfs\fR(5)) which use the Network Lock Manager.
.sp
.ne 2
.na
@@ -376,7 +376,7 @@ one is returned is unspecified. If the blocking lock is an OFD-style lock,
.ad
.RS 14n
Equivalent to \fBF_OFD_GETLK\fR, but takes a \fBstruct flock64\fR argument
-rather than a \fBstruct flock\fR argument. See \fBlf64\fR(5). This command
+rather than a \fBstruct flock\fR argument. See \fBlf64\fR(7). This command
exists solely to allow the use of OFD locks with the transitional 64-bit file
interfaces.
.RE
@@ -404,7 +404,7 @@ immediately with a return value of \fB\(mi1\fR\&.
.ad
.RS 14n
Equivalent to \fBF_OFD_SETLK\fR, but takes a \fBstruct flock64\fR argument
-rather than a \fBstruct flock\fR argument. See \fBlf64\fR(5). This command
+rather than a \fBstruct flock\fR argument. See \fBlf64\fR(7). This command
exists solely to allow the use of OFD locks with the transitional 64-bit file
interfaces.
.RE
@@ -430,7 +430,7 @@ with \fBerrno\fR set to \fBEINTR\fR, and the lock operation will not be done.
.ad
.RS 14n
Equivalent to \fBF_OFD_SETLKW\fR, but takes a \fBstruct flock64\fR argument
-rather than a \fBstruct flock\fR argument. See \fBlf64\fR(5). This command
+rather than a \fBstruct flock\fR argument. See \fBlf64\fR(7). This command
exists solely to allow the use of OFD locks with the transitional 64-bit file
interfaces.
.RE
@@ -1142,7 +1142,7 @@ detected.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -1159,11 +1159,26 @@ MT-Level Async-Signal Safe
.SH SEE ALSO
.LP
-\fBlockd\fR(1M), \fBchmod\fR(2), \fBclose\fR(2), \fBcreat\fR(2), \fBdup\fR(2),
-\fBexec\fR(2), \fBfork\fR(2), \fBmmap\fR(2), \fBopen\fR(2), \fBpipe\fR(2),
-\fBread\fR(2), \fBsigaction\fR(2), \fBwrite\fR(2), \fBdup2\fR(3C),
-\fBflock\fR(3C), \fBlockf\fR(3C), \fBfcntl.h\fR(3HEAD), \fBattributes\fR(5),
-\fBlf64\fR(5), \fBstandards\fR(5)
+.BR chmod (2),
+.BR close (2),
+.BR creat (2),
+.BR dup (2),
+.BR exec (2),
+.BR fork (2),
+.BR mmap (2),
+.BR open (2),
+.BR pipe (2),
+.BR read (2),
+.BR sigaction (2),
+.BR write (2),
+.BR dup2 (3C),
+.BR flock (3C),
+.BR lockf (3C),
+.BR fcntl.h (3HEAD),
+.BR attributes (7),
+.BR lf64 (7),
+.BR standards (7),
+.BR lockd (8)
.sp
.LP
\fIProgramming Interfaces Guide\fR
@@ -1196,6 +1211,6 @@ meaningful.
.sp
.LP
If the file server crashes and has to be rebooted, the lock manager (see
-\fBlockd\fR(1M)) attempts to recover all locks that were associated with that
+\fBlockd\fR(8)) attempts to recover all locks that were associated with that
server. If a lock cannot be reclaimed, the process that held the lock is issued
a \fBSIGLOST\fR signal.
diff --git a/usr/src/man/man2/fork.2 b/usr/src/man/man2/fork.2
index 35c72f6034..5c0079421f 100644
--- a/usr/src/man/man2/fork.2
+++ b/usr/src/man/man2/fork.2
@@ -240,7 +240,7 @@ process flags (see \fBgetpflags\fR(2))
.TP
.ie t \(bu
.el o
-active contract templates (see \fBcontract\fR(4))
+active contract templates (see \fBcontract\fR(5))
.RE
.sp
.LP
@@ -248,7 +248,7 @@ Scheduling priority and any per-process scheduling parameters that are specific
to a given scheduling class might or might not be inherited according to the
policy of that particular class (see \fBpriocntl\fR(2)). The child process
might or might not be in the same process contract as the parent (see
-\fBprocess\fR(4)). The child process differs from the parent process in the
+\fBprocess\fR(5)). The child process differs from the parent process in the
following ways:
.RS +4
.TP
@@ -339,7 +339,7 @@ inherited by the child.
.TP
.ie t \(bu
.el o
-The child process holds no contracts (see \fBcontract\fR(4)).
+The child process holds no contracts (see \fBcontract\fR(5)).
.RE
.sp
.LP
@@ -425,7 +425,7 @@ child. The application should use \fBpthread_atfork\fR(3C) to ensure safety
with respect to this deadlock. Should there be any outstanding mutexes
throughout the process, the application should call \fBpthread_atfork()\fR to
wait for and acquire those mutexes prior to calling \fBfork()\fR,
-\fBfork1()\fR, or \fBforkx()\fR. See "MT-Level" on the \fBattributes\fR(5)
+\fBfork1()\fR, or \fBforkx()\fR. See "MT-Level" on the \fBattributes\fR(7)
manual page.
.sp
.LP
@@ -435,8 +435,8 @@ interfaces provided by \fBlibc\fR are safe to use in a child process following
a \fBfork()\fR, except when \fBfork()\fR is executed within a signal handler.
.sp
.LP
-The POSIX standard (see \fBstandards\fR(5)) requires fork to be
-Async-Signal-Safe (see \fBattributes\fR(5)). This cannot be made to happen with
+The POSIX standard (see \fBstandards\fR(7)) requires fork to be
+Async-Signal-Safe (see \fBattributes\fR(7)). This cannot be made to happen with
fork handlers in place, because they acquire locks. To be in nominal
compliance, no fork handlers are called when \fBfork()\fR is executed within a
signal context. This leaves the child process in a questionable state with
@@ -502,7 +502,7 @@ The \fIflags\fR argument is invalid.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -521,7 +521,7 @@ Standard See below.
.sp
.LP
-For \fBfork()\fR, see \fBstandards\fR(5).
+For \fBfork()\fR, see \fBstandards\fR(7).
.SH SEE ALSO
.LP
\fBalarm\fR(2), \fBexec\fR(2), \fBexit\fR(2), \fBfcntl\fR(2),
@@ -530,8 +530,13 @@ For \fBfork()\fR, see \fBstandards\fR(5).
\fBtimes\fR(2), \fBumask\fR(2), \fBwaitid\fR(2), \fBdoor_create\fR(3C),
\fBexit\fR(3C), \fBplock\fR(3C), \fBpthread_atfork\fR(3C),
\fBpthread_create\fR(3C), \fBsignal\fR(3C), \fBsystem\fR(3C),
-\fBthr_create\fR(3C) \fBtimer_create\fR(3C), \fBwait\fR(3C), \fBcontract\fR(4),
-\fBprocess\fR(4), \fBattributes\fR(5), \fBprivileges\fR(5), \fBstandards\fR(5)
+\fBthr_create\fR(3C) \fBtimer_create\fR(3C),
+.BR wait (3C),
+.BR contract (5),
+.BR process (5),
+.BR attributes (7),
+.BR privileges (7),
+.BR standards (7)
.SH NOTES
.LP
An application should call \fB_exit()\fR rather than \fBexit\fR(3C) if it
diff --git a/usr/src/man/man2/fpathconf.2 b/usr/src/man/man2/fpathconf.2
index 1fa0aacc93..34c9408936 100644
--- a/usr/src/man/man2/fpathconf.2
+++ b/usr/src/man/man2/fpathconf.2
@@ -407,7 +407,7 @@ function.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -421,11 +421,15 @@ Interface Stability Committed
_
MT-Level Async-Signal-Safe
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.sp
.LP
-\fBlseek\fR(2), \fBconfstr\fR(3C), \fBlimits.h\fR(3HEAD), \fBsysconf\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR lseek (2),
+.BR confstr (3C),
+.BR sysconf (3C),
+.BR limits.h (3HEAD),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man2/getacct.2 b/usr/src/man/man2/getacct.2
index 08635e0c09..b52ffb9610 100644
--- a/usr/src/man/man2/getacct.2
+++ b/usr/src/man/man2/getacct.2
@@ -148,7 +148,7 @@ The \fIflags\fR argument is neither \fBEW_PARTIAL\fR nor \fBEW_INTERVAL\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -164,4 +164,6 @@ MT-Level Async-Signal-Safe
.SH SEE ALSO
.sp
.LP
-\fBea_pack_object\fR(3EXACCT), \fBlibexacct\fR(3LIB), \fBattributes\fR(5)
+.BR ea_pack_object (3EXACCT),
+.BR libexacct (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man2/getaudit.2 b/usr/src/man/man2/getaudit.2
index 9094c2c052..15ebf71e9f 100644
--- a/usr/src/man/man2/getaudit.2
+++ b/usr/src/man/man2/getaudit.2
@@ -120,7 +120,7 @@ The calling process must have the {\fBPRIV_SYS_AUDIT\fR} privilege asserted in
its effective set.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -137,4 +137,5 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBaudit\fR(2), \fBattributes\fR(5)
+.BR audit (2),
+.BR attributes (7)
diff --git a/usr/src/man/man2/getauid.2 b/usr/src/man/man2/getauid.2
index 4c5d15d223..1cc2c18c01 100644
--- a/usr/src/man/man2/getauid.2
+++ b/usr/src/man/man2/getauid.2
@@ -83,7 +83,9 @@ Only a process with appropriate privileges can successfully execute these
calls.
.SH SEE ALSO
.LP
-\fBaudit\fR(2), \fBgetaudit\fR(2), \fBprivileges\fR(5)
+.BR audit (2),
+.BR getaudit (2),
+.BR privileges (7)
.SH NOTES
.LP
These functions have been superseded by \fBgetaudit\fR(2) and \fBsetaudit()\fR.
diff --git a/usr/src/man/man2/getcontext.2 b/usr/src/man/man2/getcontext.2
index 5a18a3826e..5e12548f7c 100644
--- a/usr/src/man/man2/getcontext.2
+++ b/usr/src/man/man2/getcontext.2
@@ -113,7 +113,7 @@ manipulating contexts should take care to handle these explicitly when
required.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -128,7 +128,13 @@ Interface Stability Standard
.SH SEE ALSO
.LP
-\fBsigaction\fR(2), \fBsigaltstack\fR(2), \fBsigprocmask\fR(2),
-\fBbsd_signal\fR(3C), \fBmakecontext\fR(3C), \fBsetjmp\fR(3C),
-\fBsigsetjmp\fR(3C), \fBucontext.h\fR(3HEAD), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR sigaction (2),
+.BR sigaltstack (2),
+.BR sigprocmask (2),
+.BR bsd_signal (3C),
+.BR makecontext (3C),
+.BR setjmp (3C),
+.BR sigsetjmp (3C),
+.BR ucontext.h (3HEAD),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man2/getdents.2 b/usr/src/man/man2/getdents.2
index c74af41c44..d99e92a299 100644
--- a/usr/src/man/man2/getdents.2
+++ b/usr/src/man/man2/getdents.2
@@ -123,8 +123,10 @@ function and should not be used for other purposes.
.sp
.LP
The \fBgetdents()\fR function has a transitional interface for 64-bit file
-offsets. See \fBlf64\fR(5).
+offsets. See \fBlf64\fR(7).
.SH SEE ALSO
.sp
.LP
-\fBreaddir\fR(3C), \fBdirent.h\fR(3HEAD), \fBlf64\fR(5)
+.BR readdir (3C),
+.BR dirent.h (3HEAD),
+.BR lf64 (7)
diff --git a/usr/src/man/man2/getgroups.2 b/usr/src/man/man2/getgroups.2
index 4b871aa623..1ebd0d7df5 100644
--- a/usr/src/man/man2/getgroups.2
+++ b/usr/src/man/man2/getgroups.2
@@ -100,7 +100,7 @@ privilege.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -118,6 +118,12 @@ MT-Level Async-Signal-Safe
.SH SEE ALSO
.sp
.LP
-\fBgroups\fR(1), \fBchown\fR(2), \fBgetuid\fR(2), \fBsetuid\fR(2),
-\fBgetgrnam\fR(3C), \fBinitgroups\fR(3C), \fBattributes\fR(5),
-\fBprivileges\fR(5), \fBstandards\fR(5)
+.BR groups (1),
+.BR chown (2),
+.BR getuid (2),
+.BR setuid (2),
+.BR getgrnam (3C),
+.BR initgroups (3C),
+.BR attributes (7),
+.BR privileges (7),
+.BR standards (7)
diff --git a/usr/src/man/man2/getisax.2 b/usr/src/man/man2/getisax.2
index 2739c9a3ae..d660329f65 100644
--- a/usr/src/man/man2/getisax.2
+++ b/usr/src/man/man2/getisax.2
@@ -54,7 +54,7 @@ if (ui & AV_386_SSE2)
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -71,7 +71,10 @@ MT-Level Safe
.SH SEE ALSO
.LP
-\fBisainfo\fR(1), \fBld\fR(1), \fBpargs\fR(1), \fBattributes\fR(5)
+.BR isainfo (1),
+.BR ld (1),
+.BR pargs (1),
+.BR attributes (7)
.sp
.LP
\fILinker and Libraries Guide\fR
diff --git a/usr/src/man/man2/getitimer.2 b/usr/src/man/man2/getitimer.2
index b9acb8e12a..160413c8bf 100644
--- a/usr/src/man/man2/getitimer.2
+++ b/usr/src/man/man2/getitimer.2
@@ -152,7 +152,7 @@ is unrecognized.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -170,8 +170,13 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBalarm\fR(2), \fBexec\fR(2), \fBgettimeofday\fR(3C), \fBsleep\fR(3C),
-\fBsysconf\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR alarm (2),
+.BR exec (2),
+.BR gettimeofday (3C),
+.BR sleep (3C),
+.BR sysconf (3C),
+.BR attributes (7),
+.BR standards (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man2/getmsg.2 b/usr/src/man/man2/getmsg.2
index 5b79c58d16..986c1bf0bf 100644
--- a/usr/src/man/man2/getmsg.2
+++ b/usr/src/man/man2/getmsg.2
@@ -218,7 +218,7 @@ returned is the value contained in the STREAMS error message.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -234,8 +234,13 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBIntro\fR(2), \fBpoll\fR(2), \fBputmsg\fR(2), \fBread\fR(2), \fBwrite\fR(2),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR Intro (2),
+.BR poll (2),
+.BR putmsg (2),
+.BR read (2),
+.BR write (2),
+.BR attributes (7),
+.BR standards (7)
.sp
.LP
\fISTREAMS Programming Guide\fR
diff --git a/usr/src/man/man2/getpflags.2 b/usr/src/man/man2/getpflags.2
index b8eeb4ae2e..aa4bfdada0 100644
--- a/usr/src/man/man2/getpflags.2
+++ b/usr/src/man/man2/getpflags.2
@@ -38,7 +38,7 @@ The following values for \fIflag\fR are supported:
This one bit flag takes the value of 0 (unset) or 1 (set). Only if this flag
is set is the current process privilege-aware. A process can attempt to unset
this flag but might fail silently if the observed set invariance condition
-cannot be met. Setting this flag is always successful. See \fBprivileges\fR(5)
+cannot be met. Setting this flag is always successful. See \fBprivileges\fR(7)
for a discussion of this flag.
.RE
@@ -138,7 +138,7 @@ condition was not met.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -156,4 +156,7 @@ MT-Level Async-Signal-Safe
.SH SEE ALSO
.sp
.LP
-\fBppriv\fR(1), \fBsetppriv\fR(2), \fBattributes\fR(5), \fBprivileges\fR(5)
+.BR ppriv (1),
+.BR setppriv (2),
+.BR attributes (7),
+.BR privileges (7)
diff --git a/usr/src/man/man2/getpid.2 b/usr/src/man/man2/getpid.2
index f58cf546bc..3a263ba86a 100644
--- a/usr/src/man/man2/getpid.2
+++ b/usr/src/man/man2/getpid.2
@@ -138,7 +138,7 @@ The value of the \fIpid\fR argument is invalid.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -152,12 +152,19 @@ Interface Stability Committed
_
MT-Level Async-Signal-Safe
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.sp
.LP
-\fBIntro\fR(2), \fBexec\fR(2), \fBfork\fR(2), \fBgetsid\fR(2),
-\fBsetpgid\fR(2), \fBsetpgrp\fR(2), \fBsetsid\fR(2), \fBsignal\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR Intro (2),
+.BR exec (2),
+.BR fork (2),
+.BR getsid (2),
+.BR setpgid (2),
+.BR setpgrp (2),
+.BR setsid (2),
+.BR signal (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man2/getppriv.2 b/usr/src/man/man2/getppriv.2
index b69ae101bb..c8cdd456c6 100644
--- a/usr/src/man/man2/getppriv.2
+++ b/usr/src/man/man2/getppriv.2
@@ -128,7 +128,7 @@ The application attempted to add privileges to \fBPRIV_LIMIT\fR or
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -146,4 +146,6 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBpriv_addset\fR(3C), \fBattributes\fR(5), \fBprivileges\fR(5)
+.BR priv_addset (3C),
+.BR attributes (7),
+.BR privileges (7)
diff --git a/usr/src/man/man2/getrandom.2 b/usr/src/man/man2/getrandom.2
index 9ced3a3cb7..456db1cd85 100644
--- a/usr/src/man/man2/getrandom.2
+++ b/usr/src/man/man2/getrandom.2
@@ -115,7 +115,7 @@ An invalid value was passed in
A signal was caught during the operation and no data was transferred.
.It Er EIO
An internal error occurred with the corresponding
-.Xr random 7D
+.Xr random 4D
device.
.El
.Sh INTERFACE STABILITY
@@ -126,7 +126,7 @@ device.
.Xr open 2 ,
.Xr read 2 ,
.Xr arc4random 3C ,
-.Xr random 7D
+.Xr random 4D
.Sh STANDARDS
The
.Fn getrandom
diff --git a/usr/src/man/man2/getrlimit.2 b/usr/src/man/man2/getrlimit.2
index 6fab61f8b4..4695358721 100644
--- a/usr/src/man/man2/getrlimit.2
+++ b/usr/src/man/man2/getrlimit.2
@@ -309,7 +309,7 @@ than the limit.
.sp
.LP
The \fBgetrlimit()\fR and \fBsetrlimit()\fR functions have transitional
-interfaces for 64-bit file offsets. See \fBlf64\fR(5).
+interfaces for 64-bit file offsets. See \fBlf64\fR(7).
.sp
.LP
The rlimit functionality is now provided by the more general resource control
@@ -321,7 +321,7 @@ awareness should investigate the resource controls facility.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -337,8 +337,21 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBrctladm\fR(1M), \fBbrk\fR(2), \fBexec\fR(2), \fBfork\fR(2), \fBopen\fR(2),
-\fBsetrctl\fR(2), \fBsigaltstack\fR(2), \fBulimit\fR(2),
-\fBgetdtablesize\fR(3C), \fBmalloc\fR(3C), \fBsignal\fR(3C),
-\fBsignal.h\fR(3HEAD), \fBsysconf\fR(3C), \fBattributes\fR(5), \fBlf64\fR(5),
-\fBprivileges\fR(5), \fBresource_controls\fR(5), \fBstandards\fR(5)
+.BR brk (2),
+.BR exec (2),
+.BR fork (2),
+.BR open (2),
+.BR setrctl (2),
+.BR sigaltstack (2),
+.BR ulimit (2),
+.BR getdtablesize (3C),
+.BR malloc (3C),
+.BR signal (3C),
+.BR sysconf (3C),
+.BR signal.h (3HEAD),
+.BR attributes (7),
+.BR lf64 (7),
+.BR privileges (7),
+.BR resource_controls (7),
+.BR standards (7),
+.BR rctladm (8)
diff --git a/usr/src/man/man2/getsid.2 b/usr/src/man/man2/getsid.2
index 8e86eb9d8c..9d0955f2eb 100644
--- a/usr/src/man/man2/getsid.2
+++ b/usr/src/man/man2/getsid.2
@@ -94,7 +94,7 @@ There is no process with a process \fBID\fR equal to \fIpid\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -110,5 +110,11 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBexec\fR(2), \fBfork\fR(2), \fBgetpid\fR(2), \fBgetpgid\fR(2),
-\fBsetpgid\fR(2), \fBsetsid\fR(2), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR exec (2),
+.BR fork (2),
+.BR getpgid (2),
+.BR getpid (2),
+.BR setpgid (2),
+.BR setsid (2),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man2/getuid.2 b/usr/src/man/man2/getuid.2
index 6d22e6fd6b..00343bd909 100644
--- a/usr/src/man/man2/getuid.2
+++ b/usr/src/man/man2/getuid.2
@@ -54,7 +54,7 @@ calling process.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -72,4 +72,7 @@ MT-Level Async-Signal-Safe
.SH SEE ALSO
.sp
.LP
-\fBIntro\fR(2), \fBsetuid\fR(2), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR Intro (2),
+.BR setuid (2),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man2/getustack.2 b/usr/src/man/man2/getustack.2
index 6e2918e73e..b4e50409ee 100644
--- a/usr/src/man/man2/getustack.2
+++ b/usr/src/man/man2/getustack.2
@@ -59,7 +59,7 @@ structure. Other users should use \fBstack_getbounds\fR(3C) and
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -77,5 +77,9 @@ MT-Level Async-Signal-Safe
.SH SEE ALSO
.sp
.LP
-\fB_stack_grow\fR(3C), \fBstack_getbounds\fR(3C), \fBstack_inbounds\fR(3C),
-\fBstack_setbounds\fR(3C), \fBstack_violation\fR(3C), \fBattributes\fR(5)
+.BR _stack_grow (3C),
+.BR stack_getbounds (3C),
+.BR stack_inbounds (3C),
+.BR stack_setbounds (3C),
+.BR stack_violation (3C),
+.BR attributes (7)
diff --git a/usr/src/man/man2/ioctl.2 b/usr/src/man/man2/ioctl.2
index 59271fdcce..b045706ed3 100644
--- a/usr/src/man/man2/ioctl.2
+++ b/usr/src/man/man2/ioctl.2
@@ -64,7 +64,7 @@ third argument with varying type are passed to the device file designated by
.sp
.LP
For streams files, specific functions are performed by the \fBioctl()\fR
-function as described in \fBstreamio\fR(7I).
+function as described in \fBstreamio\fR(4I).
.sp
.LP
The \fIfildes\fR argument is an open file descriptor that refers to a device.
@@ -78,7 +78,7 @@ to a device-specific data structure.
.LP
In addition to device-specific and streams functions, generic functions are
provided by more than one device driver (for example, the general terminal
-interface or disk interfaces.) See \fBtermio\fR(7I)), \fBdkio\fR(7I), etc..
+interface or disk interfaces.) See \fBtermio\fR(4I)), \fBdkio\fR(4I), etc..
.SH RETURN VALUES
Upon successful completion, the value returned depends upon the device control
function, but must be a non-negative integer. Otherwise, \fB\(mi1\fR is
@@ -195,9 +195,9 @@ corresponding device driver does not support the \fBioctl()\fR function.
.sp
.LP
-Streams errors are described in \fBstreamio\fR(7I).
+Streams errors are described in \fBstreamio\fR(4I).
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -211,4 +211,7 @@ Interface Stability Standard
.TE
.SH SEE ALSO
-\fBattributes\fR(5), \fBstandards\fR(5), \fBstreamio\fR(7I), \fBtermio\fR(7I)
+.BR streamio (4I),
+.BR termio (4I),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man2/issetugid.2 b/usr/src/man/man2/issetugid.2
index b0bd3faf98..5885002a0d 100644
--- a/usr/src/man/man2/issetugid.2
+++ b/usr/src/man/man2/issetugid.2
@@ -58,7 +58,7 @@ The \fBissetugid()\fR function is always successful. No return value is
reserved to indicate an error.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -75,5 +75,9 @@ MT-Level Async-Signal-Safe
.SH SEE ALSO
.LP
-\fBexec\fR(2), \fBfork\fR(2), \fBsetuid\fR(2), \fBgetenv\fR(3C),
-\fBattributes\fR(5), \fBprivileges\fR(5)
+.BR exec (2),
+.BR fork (2),
+.BR setuid (2),
+.BR getenv (3C),
+.BR attributes (7),
+.BR privileges (7)
diff --git a/usr/src/man/man2/kill.2 b/usr/src/man/man2/kill.2
index 794cb22ef1..306e7df2e1 100644
--- a/usr/src/man/man2/kill.2
+++ b/usr/src/man/man2/kill.2
@@ -34,7 +34,7 @@ the effective set of the sending process (see \fBIntro\fR(2)), or \fIsig\fR is
\fBSIGCONT\fR and the sending process has the same session \fBID\fR as the
receiving process. A process needs the basic privilege
{\fBPRIV_PROC_SESSION\fR} to send signals to a process with a different session
-ID. See \fBprivileges\fR(5).
+ID. See \fBprivileges\fR(7).
.sp
.LP
If \fIpid\fR is greater than 0, \fIsig\fR will be sent to the process whose
@@ -114,7 +114,7 @@ processes.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -132,7 +132,16 @@ MT-Level Async-Signal-Safe
.SH SEE ALSO
.sp
.LP
-\fBkill\fR(1), \fBIntro\fR(2), \fBexec\fR(2), \fBgetpid\fR(2), \fBgetsid\fR(2),
-\fBsetpgrp\fR(2), \fBsigaction\fR(2), \fBsigsend\fR(2), \fBsignal\fR(3C),
-\fBsignal.h\fR(3HEAD), \fBattributes\fR(5), \fBprivileges\fR(5),
-\fBstandards\fR(5)
+.BR kill (1),
+.BR Intro (2),
+.BR exec (2),
+.BR getpid (2),
+.BR getsid (2),
+.BR setpgrp (2),
+.BR sigaction (2),
+.BR sigsend (2),
+.BR signal (3C),
+.BR signal.h (3HEAD),
+.BR attributes (7),
+.BR privileges (7),
+.BR standards (7)
diff --git a/usr/src/man/man2/link.2 b/usr/src/man/man2/link.2
index b9cb8fb288..c75cf415de 100644
--- a/usr/src/man/man2/link.2
+++ b/usr/src/man/man2/link.2
@@ -256,7 +256,7 @@ If either \fIexisting\fR or \fInew\fR is a relative path and \fIefd\fR or
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -273,5 +273,8 @@ MT-Level Async-Signal-Safe
.SH SEE ALSO
.LP
-\fBsymlink\fR(2), \fBunlink\fR(2), \fBattributes\fR(5), \fBprivileges\fR(5),
-\fBstandards\fR(5)
+.BR symlink (2),
+.BR unlink (2),
+.BR attributes (7),
+.BR privileges (7),
+.BR standards (7)
diff --git a/usr/src/man/man2/llseek.2 b/usr/src/man/man2/llseek.2
index 326fc9a201..d91ac3ea07 100644
--- a/usr/src/man/man2/llseek.2
+++ b/usr/src/man/man2/llseek.2
@@ -135,4 +135,8 @@ The \fIfildes\fR argument is associated with a pipe or FIFO.
.SH SEE ALSO
.sp
.LP
-\fBcreat\fR(2), \fBdup\fR(2), \fBfcntl\fR(2), \fBlseek\fR(2), \fBopen\fR(2)
+.BR creat (2),
+.BR dup (2),
+.BR fcntl (2),
+.BR lseek (2),
+.BR open (2)
diff --git a/usr/src/man/man2/lseek.2 b/usr/src/man/man2/lseek.2
index 69b3b65abb..55feecb5d2 100644
--- a/usr/src/man/man2/lseek.2
+++ b/usr/src/man/man2/lseek.2
@@ -160,7 +160,7 @@ The \fIfildes\fR argument is associated with a pipe, a FIFO, or a socket.
.sp
.LP
The \fBlseek()\fR function has a transitional interface for 64-bit file
-offsets. See \fBlf64\fR(5).
+offsets. See \fBlf64\fR(7).
.sp
.LP
In multithreaded applications, using \fBlseek()\fR in conjunction with a
@@ -170,7 +170,7 @@ or \fBpwrite()\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -188,6 +188,13 @@ MT-Level Async-Signal-Safe
.SH SEE ALSO
.sp
.LP
-\fBcreat\fR(2), \fBdup\fR(2), \fBfcntl\fR(2), \fBfpathconf\fR(2),
-\fBopen\fR(2), \fBread\fR(2), \fBwrite\fR(2), \fBattributes\fR(5),
-\fBlf64\fR(5), \fBstandards\fR(5)
+.BR creat (2),
+.BR dup (2),
+.BR fcntl (2),
+.BR fpathconf (2),
+.BR open (2),
+.BR read (2),
+.BR write (2),
+.BR attributes (7),
+.BR lf64 (7),
+.BR standards (7)
diff --git a/usr/src/man/man2/memcntl.2 b/usr/src/man/man2/memcntl.2
index d0f34fd221..49ae7f2d7d 100644
--- a/usr/src/man/man2/memcntl.2
+++ b/usr/src/man/man2/memcntl.2
@@ -404,7 +404,7 @@ or \fBMC_UNLOCKAS\fR was specified.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -419,7 +419,15 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBppgsz\fR(1), \fBfork\fR(2), \fBmmap\fR(2), \fBmprotect\fR(2),
-\fBgetpagesizes\fR(3C), \fBmlock\fR(3C), \fBmlockall\fR(3C),
-\fBmsync\fR(3C), \fBplock\fR(3C), \fBsysconf\fR(3C), \fBattributes\fR(5),
-\fBprivileges\fR(5)
+.BR ppgsz (1),
+.BR fork (2),
+.BR mmap (2),
+.BR mprotect (2),
+.BR getpagesizes (3C),
+.BR mlock (3C),
+.BR mlockall (3C),
+.BR msync (3C),
+.BR plock (3C),
+.BR sysconf (3C),
+.BR attributes (7),
+.BR privileges (7)
diff --git a/usr/src/man/man2/meminfo.2 b/usr/src/man/man2/meminfo.2
index 797b91a2ef..5b76a86099 100644
--- a/usr/src/man/man2/meminfo.2
+++ b/usr/src/man/man2/meminfo.2
@@ -246,7 +246,7 @@ print_info(void **addrvec, int how_many)
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -263,6 +263,11 @@ MT-Level Async-Signal-Safe
.SH SEE ALSO
.LP
-\fBmemcntl\fR(2), \fBmmap\fR(2), \fBgethomelgroup\fR(3C),
-\fBgetpagesize\fR(3C), \fBmadvise\fR(3C), \fBsysconf\fR(3C),
-\fBattributes\fR(5), \fBprivileges\fR(5)
+.BR memcntl (2),
+.BR mmap (2),
+.BR gethomelgroup (3C),
+.BR getpagesize (3C),
+.BR madvise (3C),
+.BR sysconf (3C),
+.BR attributes (7),
+.BR privileges (7)
diff --git a/usr/src/man/man2/mincore.2 b/usr/src/man/man2/mincore.2
index 222690ac1b..6154b76e51 100644
--- a/usr/src/man/man2/mincore.2
+++ b/usr/src/man/man2/mincore.2
@@ -73,4 +73,6 @@ space of a process or specify one or more pages which are not mapped.
.SH SEE ALSO
.sp
.LP
-\fBmmap\fR(2), \fBmlock\fR(3C), \fBsysconf\fR(3C)
+.BR mmap (2),
+.BR mlock (3C),
+.BR sysconf (3C)
diff --git a/usr/src/man/man2/mkdir.2 b/usr/src/man/man2/mkdir.2
index 01fdc7ac43..f94369b413 100644
--- a/usr/src/man/man2/mkdir.2
+++ b/usr/src/man/man2/mkdir.2
@@ -300,7 +300,7 @@ status = mkdir("/home/cnd/mod1",
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -317,5 +317,10 @@ MT-Level Async-Signal-Safe
.SH SEE ALSO
.LP
-\fBchmod\fR(2), \fBmknod\fR(2), \fBumask\fR(2), \fBmkdirp\fR(3GEN),
-\fBstat.h\fR(3HEAD), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR chmod (2),
+.BR mknod (2),
+.BR umask (2),
+.BR mkdirp (3GEN),
+.BR stat.h (3HEAD),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man2/mknod.2 b/usr/src/man/man2/mknod.2
index dae6836cdd..9515d57e66 100644
--- a/usr/src/man/man2/mknod.2
+++ b/usr/src/man/man2/mknod.2
@@ -370,7 +370,7 @@ system using \fBfattach\fR(3C). Symbolic links can be created using
\fBsocket\fR(3SOCKET).
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -387,8 +387,20 @@ MT-Level Async-Signal-Safe
.SH SEE ALSO
.LP
-\fBchmod\fR(2), \fBcreat\fR(2), \fBexec\fR(2), \fBmkdir\fR(2), \fBopen\fR(2),
-\fBstat\fR(2), \fBsymlink\fR(2), \fBumask\fR(2), \fBdoor_create\fR(3C),
-\fBfattach\fR(3C), \fBmakedev\fR(3C), \fBmkfifo\fR(3C), \fBsocket\fR(3SOCKET),
-\fBstat.h\fR(3HEAD), \fBattributes\fR(5), \fBprivileges\fR(5),
-\fBstandards\fR(5)
+.BR chmod (2),
+.BR creat (2),
+.BR exec (2),
+.BR mkdir (2),
+.BR open (2),
+.BR stat (2),
+.BR symlink (2),
+.BR umask (2),
+.BR door_create (3C),
+.BR fattach (3C),
+.BR makedev (3C),
+.BR mkfifo (3C),
+.BR stat.h (3HEAD),
+.BR socket (3SOCKET),
+.BR attributes (7),
+.BR privileges (7),
+.BR standards (7)
diff --git a/usr/src/man/man2/mmap.2 b/usr/src/man/man2/mmap.2
index bd95617ae3..2862cc8544 100644
--- a/usr/src/man/man2/mmap.2
+++ b/usr/src/man/man2/mmap.2
@@ -891,7 +891,7 @@ conjunction with any other file access method, such as \fBread\fR(2) and
.sp
.LP
The \fBmmap()\fR function has a transitional interface for 64-bit file offsets.
-See \fBlf64\fR(5).
+See \fBlf64\fR(7).
.sp
.LP
The \fBmmap()\fR function allows access to resources using address space
@@ -925,7 +925,7 @@ address = mmap((caddr_t) 0, len, (PROT_READ | PROT_WRITE),
.in -2
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -941,8 +941,23 @@ MT-Level Async-Signal-Safe
.TE
.SH SEE ALSO
-\fBclose\fR(2), \fBexec\fR(2), \fBfcntl\fR(2), \fBfork\fR(2),
-\fBgetrlimit\fR(2), \fBmemcntl\fR(2), \fBmmapobj\fR(2), \fBmprotect\fR(2),
-\fBmunmap\fR(2), \fBshmat\fR(2), \fBlockf\fR(3C), \fBmlockall\fR(3C),
-\fBmsync\fR(3C), \fBplock\fR(3C), \fBsysconf\fR(3C), \fBattributes\fR(5),
-\fBlf64\fR(5), \fBstandards\fR(5), \fBnull\fR(7D), \fBzero\fR(7D)
+.BR close (2),
+.BR exec (2),
+.BR fcntl (2),
+.BR fork (2),
+.BR getrlimit (2),
+.BR memcntl (2),
+.BR mmapobj (2),
+.BR mprotect (2),
+.BR munmap (2),
+.BR shmat (2),
+.BR lockf (3C),
+.BR mlockall (3C),
+.BR msync (3C),
+.BR plock (3C),
+.BR sysconf (3C),
+.BR null (4D),
+.BR zero (4D),
+.BR attributes (7),
+.BR lf64 (7),
+.BR standards (7)
diff --git a/usr/src/man/man2/mmapobj.2 b/usr/src/man/man2/mmapobj.2
index dd5a8a55fc..a7092ef503 100644
--- a/usr/src/man/man2/mmapobj.2
+++ b/usr/src/man/man2/mmapobj.2
@@ -333,7 +333,7 @@ object.
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -349,9 +349,18 @@ MT-Level Async-Signal-Safe
.TE
.SH SEE ALSO
-\fBld.so.1\fR(1), \fBfcntl\fR(2), \fBmemcntl\fR(2), \fBmmap\fR(2),
-\fBmprotect\fR(2), \fBmunmap\fR(2), \fBelf\fR(3ELF), \fBmadvise\fR(3C),
-\fBmlockall\fR(3C), \fBmsync\fR(3C), \fBa.out\fR(4), \fBattributes\fR(5)
+.BR ld.so.1 (1),
+.BR fcntl (2),
+.BR memcntl (2),
+.BR mmap (2),
+.BR mprotect (2),
+.BR munmap (2),
+.BR madvise (3C),
+.BR mlockall (3C),
+.BR msync (3C),
+.BR elf (3ELF),
+.BR a.out (5),
+.BR attributes (7)
.sp
.LP
\fILinker and Libraries Guide\fR
diff --git a/usr/src/man/man2/mount.2 b/usr/src/man/man2/mount.2
index 1e6aec0e18..e220e7b023 100644
--- a/usr/src/man/man2/mount.2
+++ b/usr/src/man/man2/mount.2
@@ -30,7 +30,7 @@ path names.
After a successful call to \fBmount()\fR, all references to the file \fIdir\fR
refer to the root directory on the mounted file system. The mounted file system
is inserted into the kernel list of all mounted file systems. This list can be
-examined through the mounted file system table (see \fBmnttab\fR(4)).
+examined through the mounted file system table (see \fBmnttab\fR(5)).
.sp
.LP
The \fIfstype\fR argument is the file system type name. Standard file system
@@ -85,7 +85,7 @@ type does not require this data, \fIdataptr\fR and \fIdatalen\fR should both be
.ad
.RS 16n
Mount a file system globally if the system is configured and booted as part of
-a cluster (see \fBclinfo\fR(1M)).
+a cluster (see \fBclinfo\fR(8)).
.RE
.sp
@@ -349,7 +349,9 @@ privileges.
.SH SEE ALSO
.sp
.LP
-\fBmount\fR(1M), \fBumount\fR(2), \fBmnttab\fR(4)
+.BR umount (2),
+.BR mnttab (5),
+.BR mount (8)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man2/mprotect.2 b/usr/src/man/man2/mprotect.2
index f0b1c7d5b0..d22d10763d 100644
--- a/usr/src/man/man2/mprotect.2
+++ b/usr/src/man/man2/mprotect.2
@@ -165,7 +165,7 @@ now-writable address range.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -181,5 +181,10 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBmmap\fR(2), \fBplock\fR(3C), \fBmlock\fR(3C), \fBmlockall\fR(3C),
-\fBsysconf\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR mmap (2),
+.BR mlock (3C),
+.BR mlockall (3C),
+.BR plock (3C),
+.BR sysconf (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man2/msgctl.2 b/usr/src/man/man2/msgctl.2
index 34b8b99e63..020dec1254 100644
--- a/usr/src/man/man2/msgctl.2
+++ b/usr/src/man/man2/msgctl.2
@@ -179,7 +179,7 @@ is not asserted in the effective set of the calling process.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -195,5 +195,10 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBIntro\fR(2), \fBmsgget\fR(2), \fBmsgrcv\fR(2), \fBmsgsnd\fR(2),
-\fBattributes\fR(5), \fBprivileges\fR(5), \fBstandards\fR(5)
+.BR Intro (2),
+.BR msgget (2),
+.BR msgrcv (2),
+.BR msgsnd (2),
+.BR attributes (7),
+.BR privileges (7),
+.BR standards (7)
diff --git a/usr/src/man/man2/msgget.2 b/usr/src/man/man2/msgget.2
index 2aa807ae92..2f1ab68342 100644
--- a/usr/src/man/man2/msgget.2
+++ b/usr/src/man/man2/msgget.2
@@ -170,7 +170,7 @@ exceeded. See NOTES.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -186,9 +186,15 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBrctladm\fR(1M), \fBIntro\fR(2), \fBmsgctl\fR(2), \fBmsgrcv\fR(2),
-\fBmsgsnd\fR(2), \fBsetrctl\fR(2), \fBftok\fR(3C), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR Intro (2),
+.BR msgctl (2),
+.BR msgrcv (2),
+.BR msgsnd (2),
+.BR setrctl (2),
+.BR ftok (3C),
+.BR attributes (7),
+.BR standards (7),
+.BR rctladm (8)
.SH NOTES
.sp
.LP
@@ -203,5 +209,5 @@ control. The \fBzone.max-msg-ids\fR resource control restricts the total amount
of message queue identifiers that can be allocated by a zone.
.sp
.LP
-See \fBrctladm\fR(1M) and \fBsetrctl\fR(2) for information about using resource
+See \fBrctladm\fR(8) and \fBsetrctl\fR(2) for information about using resource
controls.
diff --git a/usr/src/man/man2/msgids.2 b/usr/src/man/man2/msgids.2
index 88eee4bf1d..41593dc946 100644
--- a/usr/src/man/man2/msgids.2
+++ b/usr/src/man/man2/msgids.2
@@ -98,7 +98,7 @@ examine_queues()
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -114,6 +114,12 @@ MT-Level Async-Signal-Safe
.SH SEE ALSO
.sp
.LP
-\fBipcrm\fR(1), \fBipcs\fR(1), \fBIntro\fR(2), \fBmsgctl\fR(2),
-\fBmsgget\fR(2), \fBmsgsnap\fR(2), \fBmsgrcv\fR(2), \fBmsgsnd\fR(2),
-\fBattributes\fR(5)
+.BR ipcrm (1),
+.BR ipcs (1),
+.BR Intro (2),
+.BR msgctl (2),
+.BR msgget (2),
+.BR msgrcv (2),
+.BR msgsnap (2),
+.BR msgsnd (2),
+.BR attributes (7)
diff --git a/usr/src/man/man2/msgrcv.2 b/usr/src/man/man2/msgrcv.2
index 956a69d195..7f722c6f9a 100644
--- a/usr/src/man/man2/msgrcv.2
+++ b/usr/src/man/man2/msgrcv.2
@@ -263,7 +263,7 @@ The value passed as the \fImsgp\fR argument should be converted to type \fBvoid
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -279,5 +279,10 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBIntro\fR(2), \fBmsgctl\fR(2), \fBmsgget\fR(2), \fBmsgsnd\fR(2),
-\fBsigaction\fR(2), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR Intro (2),
+.BR msgctl (2),
+.BR msgget (2),
+.BR msgsnd (2),
+.BR sigaction (2),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man2/msgsnap.2 b/usr/src/man/man2/msgsnap.2
index 1f34206f9c..24bb826732 100644
--- a/usr/src/man/man2/msgsnap.2
+++ b/usr/src/man/man2/msgsnap.2
@@ -189,7 +189,7 @@ process_msgid(int msqid)
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -205,6 +205,12 @@ MT-Level Async-Signal-Safe
.SH SEE ALSO
.sp
.LP
-\fBipcrm\fR(1), \fBipcs\fR(1), \fBIntro\fR(2), \fBmsgctl\fR(2),
-\fBmsgget\fR(2), \fBmsgids\fR(2), \fBmsgrcv\fR(2), \fBmsgsnd\fR(2),
-\fBattributes\fR(5)
+.BR ipcrm (1),
+.BR ipcs (1),
+.BR Intro (2),
+.BR msgctl (2),
+.BR msgget (2),
+.BR msgids (2),
+.BR msgrcv (2),
+.BR msgsnd (2),
+.BR attributes (7)
diff --git a/usr/src/man/man2/msgsnd.2 b/usr/src/man/man2/msgsnd.2
index 25623d34d9..7d9b4c167a 100644
--- a/usr/src/man/man2/msgsnd.2
+++ b/usr/src/man/man2/msgsnd.2
@@ -242,7 +242,7 @@ The value passed as the \fImsgp\fR argument should be converted to type \fBvoid
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -258,9 +258,15 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBrctladm\fR(1M), \fBIntro\fR(2), \fBmsgctl\fR(2), \fBmsgget\fR(2),
-\fBmsgrcv\fR(2), \fBsetrctl\fR(2), \fBsigaction\fR(2), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR Intro (2),
+.BR msgctl (2),
+.BR msgget (2),
+.BR msgrcv (2),
+.BR setrctl (2),
+.BR sigaction (2),
+.BR attributes (7),
+.BR standards (7),
+.BR rctladm (8)
.SH NOTES
.sp
.LP
@@ -269,5 +275,5 @@ enforced value of the \fBprocess.max-msg-messages\fR resource control of the
creating process at the time \fBmsgget\fR(2) was used to allocate the queue.
.sp
.LP
- See \fBrctladm\fR(1M) and \fBsetrctl\fR(2) for information about using
+ See \fBrctladm\fR(8) and \fBsetrctl\fR(2) for information about using
resource controls.
diff --git a/usr/src/man/man2/munmap.2 b/usr/src/man/man2/munmap.2
index f0f99a2448..e97edfbd5c 100644
--- a/usr/src/man/man2/munmap.2
+++ b/usr/src/man/man2/munmap.2
@@ -93,7 +93,7 @@ has a value less than or equal to \fB0\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -109,4 +109,7 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBmmap\fR(2), \fBsysconf\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR mmap (2),
+.BR sysconf (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man2/nice.2 b/usr/src/man/man2/nice.2
index fb3f1af517..cc9a2e0d06 100644
--- a/usr/src/man/man2/nice.2
+++ b/usr/src/man/man2/nice.2
@@ -125,7 +125,7 @@ then call \fBnice()\fR, and if it returns \fB\(mi1\fR, check to see if
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -143,5 +143,10 @@ MT-Level Async-Signal-Safe
.SH SEE ALSO
.sp
.LP
-\fBnice\fR(1), \fBexec\fR(2), \fBpriocntl\fR(2), \fBgetpriority\fR(3C),
-\fBattributes\fR(5), \fBprivileges\fR(5), \fBstandards\fR(5)
+.BR nice (1),
+.BR exec (2),
+.BR priocntl (2),
+.BR getpriority (3C),
+.BR attributes (7),
+.BR privileges (7),
+.BR standards (7)
diff --git a/usr/src/man/man2/ntp_adjtime.2 b/usr/src/man/man2/ntp_adjtime.2
index 417413eba5..1a213d009c 100644
--- a/usr/src/man/man2/ntp_adjtime.2
+++ b/usr/src/man/man2/ntp_adjtime.2
@@ -91,4 +91,5 @@ calling process.
.SH SEE ALSO
.LP
-\fBntp_gettime\fR(2), \fBprivileges\fR(5)
+.BR ntp_gettime (2),
+.BR privileges (7)
diff --git a/usr/src/man/man2/ntp_gettime.2 b/usr/src/man/man2/ntp_gettime.2
index d3f886a197..0ce89e57e3 100644
--- a/usr/src/man/man2/ntp_gettime.2
+++ b/usr/src/man/man2/ntp_gettime.2
@@ -65,4 +65,4 @@ pointed to by \fItptr\fR is too small to contain the correct number of seconds.
.SH SEE ALSO
.LP
-\fBntp_adjtime\fR(2)
+.BR ntp_adjtime (2)
diff --git a/usr/src/man/man2/open.2 b/usr/src/man/man2/open.2
index ce23eac084..3096f4cc9e 100644
--- a/usr/src/man/man2/open.2
+++ b/usr/src/man/man2/open.2
@@ -537,7 +537,7 @@ is device-specific.
When
.Fn open
is invoked to open a named stream, and the
-.Xr connld 7M
+.Xr connld 4M
module has been pushed on the pipe,
.Fn open
blocks until the server process has issued an
@@ -545,7 +545,7 @@ blocks until the server process has issued an
.Xr ioctl 2
.Po
see
-.Xr streamio 7I
+.Xr streamio 4I
.Pc
to receive the file descriptor.
.Pp
@@ -718,7 +718,8 @@ The
privilege allows processes to open files for writing regardless of permission
bits.
See
-.Xr privileges 5 for special considerations when opening files owned by user ID
+.Xr privileges 7
+for special considerations when opening files owned by user ID
.Sy 0
for writing.
The
@@ -949,7 +950,7 @@ The
.Fn open
function has a transitional interface for 64-bit file offsets.
See
-.Xr lf64 5 .
+.Xr lf64 7 .
Note that using
.Fn open64
is equivalent to using
@@ -982,12 +983,12 @@ set in
.Xr unlockpt 3C ,
.Xr fcntl.h 3HEAD ,
.Xr stat.h 3HEAD ,
-.Xr attributes 5 ,
-.Xr lf64 5 ,
-.Xr privileges 5 ,
-.Xr standards 5 ,
-.Xr streamio 7I ,
-.Xr connld 7M
+.Xr streamio 4I ,
+.Xr connld 4M ,
+.Xr attributes 7 ,
+.Xr lf64 7 ,
+.Xr privileges 7 ,
+.Xr standards 7
.Sh NOTES
Hierarchical Storage Management
.Pq HSM
diff --git a/usr/src/man/man2/p_online.2 b/usr/src/man/man2/p_online.2
index 1f51e94ef3..879a02ca4a 100644
--- a/usr/src/man/man2/p_online.2
+++ b/usr/src/man/man2/p_online.2
@@ -196,7 +196,7 @@ main()
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -211,6 +211,13 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBpooladm\fR(1M), \fBpsradm\fR(1M), \fBpsrinfo\fR(1M), \fBzoneadm\fR(1M),
-\fBprocessor_bind\fR(2), \fBprocessor_info\fR(2), \fBpset_create\fR(2),
-\fBsysconf\fR(3C), \fBattributes\fR(5), \fBprivileges\fR(5)
+.BR processor_bind (2),
+.BR processor_info (2),
+.BR pset_create (2),
+.BR sysconf (3C),
+.BR attributes (7),
+.BR privileges (7),
+.BR pooladm (8),
+.BR psradm (8),
+.BR psrinfo (8),
+.BR zoneadm (8)
diff --git a/usr/src/man/man2/pause.2 b/usr/src/man/man2/pause.2
index 6a365408fd..0ec1f7d988 100644
--- a/usr/src/man/man2/pause.2
+++ b/usr/src/man/man2/pause.2
@@ -52,7 +52,7 @@ signal-catching function.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -70,5 +70,9 @@ MT-Level Async-Signal-Safe
.SH SEE ALSO
.sp
.LP
-\fBalarm\fR(2), \fBkill\fR(2), \fBsignal\fR(3C), \fBwait\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR alarm (2),
+.BR kill (2),
+.BR signal (3C),
+.BR wait (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man2/pcsample.2 b/usr/src/man/man2/pcsample.2
index 95e06644ce..9c40a945f1 100644
--- a/usr/src/man/man2/pcsample.2
+++ b/usr/src/man/man2/pcsample.2
@@ -68,7 +68,7 @@ The value of \fInsamples\fR is not valid.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -86,5 +86,8 @@ Interface Stability Stable
.SH SEE ALSO
.sp
.LP
-\fBexec\fR(2), \fBfork\fR(2), \fBprofil\fR(2), \fBsysconf\fR(3C),
-\fBattributes\fR(5)
+.BR exec (2),
+.BR fork (2),
+.BR profil (2),
+.BR sysconf (3C),
+.BR attributes (7)
diff --git a/usr/src/man/man2/pipe.2 b/usr/src/man/man2/pipe.2
index a37ba75181..f78550966b 100644
--- a/usr/src/man/man2/pipe.2
+++ b/usr/src/man/man2/pipe.2
@@ -162,7 +162,7 @@ bitwise inclusive-OR of \fBO_CLOEXEC\fR and \fBO_NONBLOCK\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -180,9 +180,18 @@ MT-Level Async-Signal-Safe
.SH SEE ALSO
.sp
.LP
-\fBsh\fR(1), \fBfcntl\fR(2), \fBfstat\fR(2), \fBgetmsg\fR(2), \fBpoll\fR(2),
-\fBputmsg\fR(2), \fBread\fR(2), \fBwrite\fR(2), \fBopen\fR(2),
-\fBattributes\fR(5), \fBstandards\fR(5), \fBstreamio\fR(7I)
+.BR sh (1),
+.BR fcntl (2),
+.BR fstat (2),
+.BR getmsg (2),
+.BR open (2),
+.BR poll (2),
+.BR putmsg (2),
+.BR read (2),
+.BR write (2),
+.BR streamio (4I),
+.BR attributes (7),
+.BR standards (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man2/poll.2 b/usr/src/man/man2/poll.2
index c7ee638334..729849a96a 100644
--- a/usr/src/man/man2/poll.2
+++ b/usr/src/man/man2/poll.2
@@ -305,7 +305,7 @@ indirectly) downstream from a multiplexer.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -320,9 +320,16 @@ Interface Stability Standard
.SH SEE ALSO
.LP
-\fBIntro\fR(2), \fBgetmsg\fR(2), \fBgetrlimit\fR(2), \fBputmsg\fR(2),
-\fBread\fR(2), \fBwrite\fR(2), \fBselect\fR(3C), \fBattributes\fR(5),
-\fBstandards\fR(5), \fBchpoll\fR(9E)
+.BR Intro (2),
+.BR getmsg (2),
+.BR getrlimit (2),
+.BR putmsg (2),
+.BR read (2),
+.BR write (2),
+.BR select (3C),
+.BR attributes (7),
+.BR standards (7),
+.BR chpoll (9E)
.sp
.LP
\fISTREAMS Programming Guide\fR
diff --git a/usr/src/man/man2/priocntl.2 b/usr/src/man/man2/priocntl.2
index 45adfab4d6..389175358b 100644
--- a/usr/src/man/man2/priocntl.2
+++ b/usr/src/man/man2/priocntl.2
@@ -216,7 +216,7 @@ processes in the \fBSYS\fR class that are included in a specified set of
processes are disregarded by \fBpriocntl()\fR. For example, an \fIidtype\fR of
\fBP_UID\fR and an \fIid\fR value of 0 would specify all processes with a user
ID of 0 except processes in the \fBSYS\fR class and (if changing the parameters
-using \fBPC_SETPARMS\fR or \fBPC_SETXPARMS\fR) the \fBinit\fR(1M) process.
+using \fBPC_SETPARMS\fR or \fBPC_SETXPARMS\fR) the \fBinit\fR(8) process.
.sp
.LP
The \fBinit\fR process is a special case. For a \fBpriocntl()\fR call to change
@@ -316,7 +316,7 @@ Available \fBpriocntl()\fR commands are:
.ad
.RS 16n
This command provides functionality needed for the implementation of the
-\fBdispadmin\fR(1M) utility. It is not intended for general use by other
+\fBdispadmin\fR(8) utility. It is not intended for general use by other
applications.
.RE
@@ -699,7 +699,7 @@ Set an infinite time quantum.
\fB\fBRT_TQDEF\fR\fR
.ad
.RS 15n
-Set the time quantum to the default for this priority (see \fBrt_dptbl\fR(4)).
+Set the time quantum to the default for this priority (see \fBrt_dptbl\fR(5)).
.RE
.sp
@@ -754,7 +754,7 @@ scheduling parameters of the target process(es) to their default values.
Changing the class of an LWP to realtime from some other class causes the
parameters to be set to their default values. The default realtime priority
(\fBRT_KY_PRI\fR) is \fB0\fR. A default time quantum (\fBRT_TQDEF\fR) is
-assigned to each priority class (see \fBrt_dptbl\fR(4)). The default realtime
+assigned to each priority class (see \fBrt_dptbl\fR(5)). The default realtime
time quantum signal (\fBRT_KY_TQSIG\fR) is \fB0\fR.
.sp
.LP
@@ -1067,7 +1067,7 @@ and the exec family of functions.
.LP
The fair-share scheduling policy provides a fair allocation of CPU resources
among projects, independent of the number of processes they contain. Projects
-are given "shares" to control their quota of CPU resources. See \fBFSS\fR(7)
+are given "shares" to control their quota of CPU resources. See \fBFSS\fR(4)
for more information about how to configure shares.
.sp
.LP
@@ -1293,7 +1293,7 @@ the parameter to be set to a default value. The default value for the
\fIfx_uprilim\fR is 0 and the default for the \fIfx_upri\fR is to set it equal
to the \fIfx_uprilim\fR that is being set. The default for time quantum is
dependent on the \fIfx_upri\fR and on the system configuration; see
-\fBfx_dptbl\fR(4).
+\fBfx_dptbl\fR(5).
.sp
.LP
The \fIfx_tqsecs\fR and \fIfx_tqnsecs\fR members are used for getting or
@@ -1333,7 +1333,7 @@ Set an infinite time quantum.
\fB\fBFX_TQDEF\fR\fR
.ad
.RS 15n
-Set the time quantum to the default for this priority (see \fBfx_dptbl\fR(4)).
+Set the time quantum to the default for this priority (see \fBfx_dptbl\fR(5)).
.RE
.sp
@@ -1390,7 +1390,7 @@ to be set to their default values. The default value for the user priority
limit (\fBFX_KY_UPRILIM\fR) is 0. The default value for the user priority
(\fBFX_KY_UPRI\fR) is equal to the user priority limit (\fBFX_KY_UPRILIM\fR)
that is being set. A default time quantum (\fBFX_TQDEF\fR) is assigned to each
-priority class (see \fBfx_dptbl\fR(4)).
+priority class (see \fBfx_dptbl\fR(5)).
.sp
.LP
The value associated with \fBFX_KY_TQSECS\fR is the number of seconds in the
@@ -1496,9 +1496,17 @@ None of the specified LWPs exist.
.SH SEE ALSO
.sp
.LP
-\fBpriocntl\fR(1), \fBdispadmin\fR(1M), \fBinit\fR(1M), \fBexec\fR(2),
-\fBfork\fR(2), \fBnice\fR(2), \fBpriocntlset\fR(2), \fBfx_dptbl\fR(4),
-\fBprocess\fR(4), \fBrt_dptbl\fR(4), \fBprivileges\fR(5)
+.BR priocntl (1),
+.BR exec (2),
+.BR fork (2),
+.BR nice (2),
+.BR priocntlset (2),
+.BR fx_dptbl (5),
+.BR process (5),
+.BR rt_dptbl (5),
+.BR privileges (7),
+.BR dispadmin (8),
+.BR init (8)
.sp
.LP
\fISystem Administration Guide: Basic Administration\fR
diff --git a/usr/src/man/man2/priocntlset.2 b/usr/src/man/man2/priocntlset.2
index ab4c7bce2e..d224d742df 100644
--- a/usr/src/man/man2/priocntlset.2
+++ b/usr/src/man/man2/priocntlset.2
@@ -194,4 +194,5 @@ None of the specified processes exist.
.SH SEE ALSO
.sp
.LP
-\fBpriocntl\fR(1), \fBpriocntl\fR(2)
+.BR priocntl (1),
+.BR priocntl (2)
diff --git a/usr/src/man/man2/processor_bind.2 b/usr/src/man/man2/processor_bind.2
index 274a9a3cfa..8cfb77c21f 100644
--- a/usr/src/man/man2/processor_bind.2
+++ b/usr/src/man/man2/processor_bind.2
@@ -135,7 +135,7 @@ by \fIidtype\fR and \fIid\fR.
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -151,7 +151,16 @@ MT-Level Async-Signal-Safe
.TE
.SH SEE ALSO
-\fBpooladm\fR(1M), \fBpsradm\fR(1M), \fBpsrinfo\fR(1M), \fBzoneadm\fR(1M),
-\fBexec\fR(2), \fBfork\fR(2), \fBp_online\fR(2), \fBpset_bind\fR(2),
-\fBsysconf\fR(3C), \fBprocess\fR(4), \fBproject\fR(4), \fBattributes\fR(5),
-\fBprivileges\fR(5)
+.BR exec (2),
+.BR fork (2),
+.BR p_online (2),
+.BR pset_bind (2),
+.BR sysconf (3C),
+.BR process (5),
+.BR project (5),
+.BR attributes (7),
+.BR privileges (7),
+.BR pooladm (8),
+.BR psradm (8),
+.BR psrinfo (8),
+.BR zoneadm (8)
diff --git a/usr/src/man/man2/processor_info.2 b/usr/src/man/man2/processor_info.2
index 75ad40a7b6..0e5bfb1f2c 100644
--- a/usr/src/man/man2/processor_info.2
+++ b/usr/src/man/man2/processor_info.2
@@ -86,5 +86,9 @@ writable by the user.
.SH SEE ALSO
.sp
.LP
-\fBpooladm\fR(1M), \fBpsradm\fR(1M), \fBpsrinfo\fR(1M), \fBzoneadm\fR(1M),
-\fBp_online\fR(2), \fBsysconf\fR(3C)
+.BR p_online (2),
+.BR sysconf (3C),
+.BR pooladm (8),
+.BR psradm (8),
+.BR psrinfo (8),
+.BR zoneadm (8)
diff --git a/usr/src/man/man2/profil.2 b/usr/src/man/man2/profil.2
index ed6b076c3c..cb6ebf6eb2 100644
--- a/usr/src/man/man2/profil.2
+++ b/usr/src/man/man2/profil.2
@@ -111,8 +111,12 @@ programs and 64-bit programs.
.SH SEE ALSO
.sp
.LP
-\fBexec\fR(2), \fBfork\fR(2), \fBpcsample\fR(2), \fBtimes\fR(2),
-\fBmonitor\fR(3C), \fBprof\fR(5)
+.BR exec (2),
+.BR fork (2),
+.BR pcsample (2),
+.BR times (2),
+.BR monitor (3C),
+.BR prof (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man2/pset_bind.2 b/usr/src/man/man2/pset_bind.2
index a1ac3cddb5..37ed4a82a2 100644
--- a/usr/src/man/man2/pset_bind.2
+++ b/usr/src/man/man2/pset_bind.2
@@ -119,9 +119,9 @@ An invalid processor set \fBID\fR was specified; or \fIidtype\fR was not
\fB\fBENOTSUP\fR\fR
.ad
.RS 11n
-The pools facility is active. See \fBpooladm\fR(1M) and
+The pools facility is active. See \fBpooladm\fR(8) and
\fBpool_set_status\fR(3POOL) for information about enabling and disabling the
-pools facility. Processes can be bound to pools using the \fBpoolbind\fR(1M)
+pools facility. Processes can be bound to pools using the \fBpoolbind\fR(8)
utility or the \fBpool_set_binding\fR(3POOL) function.
.sp
Binding a system process to a processor set is not supported.
@@ -154,7 +154,7 @@ by \fIidtype\fR and \fIid\fR.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -171,8 +171,20 @@ MT-Level Async-Signal-Safe
.SH SEE ALSO
.LP
-\fBpbind\fR(1M), \fBpooladm\fR(1M), \fBpoolbind\fR(1M), \fBpsrset\fR(1M),
-\fBexec\fR(2), \fBfork\fR(2), \fBprocessor_bind\fR(2), \fBpset_create\fR(2),
-\fBpset_info\fR(2), \fBpset_setattr\fR(2), \fBpool_set_binding\fR(3POOL),
-\fBpool_set_status\fR(3POOL), \fBpset_getloadavg\fR(3C), \fBprocess\fR(4),
-\fBproject\fR(4), \fBattributes\fR(5), \fBprivileges\fR(5)
+.BR exec (2),
+.BR fork (2),
+.BR processor_bind (2),
+.BR pset_create (2),
+.BR pset_info (2),
+.BR pset_setattr (2),
+.BR pset_getloadavg (3C),
+.BR pool_set_binding (3POOL),
+.BR pool_set_status (3POOL),
+.BR process (5),
+.BR project (5),
+.BR attributes (7),
+.BR privileges (7),
+.BR pbind (8),
+.BR pooladm (8),
+.BR poolbind (8),
+.BR psrset (8)
diff --git a/usr/src/man/man2/pset_create.2 b/usr/src/man/man2/pset_create.2
index fe62db84c1..6f270a95d9 100644
--- a/usr/src/man/man2/pset_create.2
+++ b/usr/src/man/man2/pset_create.2
@@ -125,7 +125,7 @@ set.
\fB\fBENOTSUP\fR\fR
.ad
.RS 11n
-The pools facility is active. See \fBpooladm\fR(1M) and
+The pools facility is active. See \fBpooladm\fR(8) and
\fBpool_set_status\fR(3POOL) for information about enabling and disabling the
pools facility.
.RE
@@ -143,7 +143,7 @@ of the calling process.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -161,10 +161,18 @@ MT-Level Async-Signal-Safe
.SH SEE ALSO
.sp
.LP
-\fBpooladm\fR(1M), \fBpsradm\fR(1M), \fBpsrinfo\fR(1M), \fBpsrset\fR(1M),
-\fBp_online\fR(2), \fBprocessor_bind\fR(2), \fBpset_bind\fR(2),
-\fBpset_info\fR(2), \fBpool_set_status\fR(3POOL), \fBpset_getloadavg\fR(3C),
-\fBattributes\fR(5), \fBprivileges\fR(5)
+.BR p_online (2),
+.BR processor_bind (2),
+.BR pset_bind (2),
+.BR pset_info (2),
+.BR pset_getloadavg (3C),
+.BR pool_set_status (3POOL),
+.BR attributes (7),
+.BR privileges (7),
+.BR pooladm (8),
+.BR psradm (8),
+.BR psrinfo (8),
+.BR psrset (8)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man2/pset_info.2 b/usr/src/man/man2/pset_info.2
index 20ab0a048a..3f370dd379 100644
--- a/usr/src/man/man2/pset_info.2
+++ b/usr/src/man/man2/pset_info.2
@@ -84,7 +84,7 @@ processor is not a member of the zone's pool's processor set.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -102,10 +102,17 @@ MT-Level Async-Signal-Safe
.SH SEE ALSO
.sp
.LP
-\fBpooladm\fR(1M), \fBpsrinfo\fR(1M), \fBpsrset\fR(1M), \fBzoneadm\fR(1M),
-\fBprocessor_info\fR(2), \fBpset_assign\fR(2), \fBpset_bind\fR(2),
-\fBpset_create\fR(2), \fBpset_destroy\fR(2), \fBpset_getloadavg\fR(3C),
-\fBattributes\fR(5)
+.BR processor_info (2),
+.BR pset_assign (2),
+.BR pset_bind (2),
+.BR pset_create (2),
+.BR pset_destroy (2),
+.BR pset_getloadavg (3C),
+.BR attributes (7),
+.BR pooladm (8),
+.BR psrinfo (8),
+.BR psrset (8),
+.BR zoneadm (8)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man2/pset_list.2 b/usr/src/man/man2/pset_list.2
index cf45101329..b38a5350fd 100644
--- a/usr/src/man/man2/pset_list.2
+++ b/usr/src/man/man2/pset_list.2
@@ -59,7 +59,7 @@ is bound.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -77,6 +77,12 @@ MT-Level Async-Signal-Safe
.SH SEE ALSO
.sp
.LP
-\fBpooladm\fR(1M), \fBpsrset\fR(1M), \fBzoneadm\fR(1M),
-\fBprocessor_info\fR(2), \fBpset_bind\fR(2), \fBpset_create\fR(2),
-\fBpset_info\fR(2), \fBpset_getloadavg\fR(3C), \fBattributes\fR(5)
+.BR processor_info (2),
+.BR pset_bind (2),
+.BR pset_create (2),
+.BR pset_info (2),
+.BR pset_getloadavg (3C),
+.BR attributes (7),
+.BR pooladm (8),
+.BR psrset (8),
+.BR zoneadm (8)
diff --git a/usr/src/man/man2/pset_setattr.2 b/usr/src/man/man2/pset_setattr.2
index 6010fe2493..b13efdab54 100644
--- a/usr/src/man/man2/pset_setattr.2
+++ b/usr/src/man/man2/pset_setattr.2
@@ -90,7 +90,7 @@ processor is not a member of the zone's pool's processor set.
\fB\fBENOTSUP\fR\fR
.ad
.RS 11n
-The pools facility is active. See \fBpooladm\fR(1M) and
+The pools facility is active. See \fBpooladm\fR(8) and
\fBpool_set_status\fR(3POOL) for information about enabling and disabling the
pools facility.
.RE
@@ -98,7 +98,7 @@ pools facility.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -116,5 +116,10 @@ MT-Level Async-Signal-Safe
.SH SEE ALSO
.sp
.LP
-\fBpooladm\fR(1M), \fBpooladm\fR(1M), \fBpsrset\fR(1M), \fBzoneadm\fR(1M),
-\fBpset_bind\fR(2), \fBpool_set_status\fR(3POOL), \fBattributes\fR(5)
+.BR pset_bind (2),
+.BR pool_set_status (3POOL),
+.BR attributes (7),
+.BR pooladm (8),
+.BR pooladm (8),
+.BR psrset (8),
+.BR zoneadm (8)
diff --git a/usr/src/man/man2/putmsg.2 b/usr/src/man/man2/putmsg.2
index 9fce4c59fa..7e9ca16063 100644
--- a/usr/src/man/man2/putmsg.2
+++ b/usr/src/man/man2/putmsg.2
@@ -243,7 +243,7 @@ other end of the pipe is closed.
The \fIfildes\fR argument refers to a streams-based pipe and the other end of
the pipe is closed. A \fBSIGPIPE\fR signal is generated for the calling
thread. This error condition occurs only with SUS-conforming applications. See
-\fBstandards\fR(5).
+\fBstandards\fR(7).
.RE
.sp
@@ -281,7 +281,7 @@ The \fIflags\fR argument is set to \fBMSG_HIPRI\fR and \fIband\fR is non-zero.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -297,8 +297,13 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBIntro\fR(2), \fBgetmsg\fR(2), \fBpoll\fR(2), \fBread\fR(2), \fBwrite\fR(2),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR Intro (2),
+.BR getmsg (2),
+.BR poll (2),
+.BR read (2),
+.BR write (2),
+.BR attributes (7),
+.BR standards (7)
.sp
.LP
\fISTREAMS Programming Guide\fR
diff --git a/usr/src/man/man2/read.2 b/usr/src/man/man2/read.2
index 96cd264b6a..2d3cda107c 100644
--- a/usr/src/man/man2/read.2
+++ b/usr/src/man/man2/read.2
@@ -348,7 +348,7 @@ In addition to the errors documented below, if the \fIfiledes\fR argument refers
to a socket, then an asynchronous error generated by the underlying socket
protocol may be returned. For the full list of errors, please see the
corresponding socket protocol manual page. For example, for a list of TCP
-errors, please see \fBtcp\fR(7P).
+errors, please see \fBtcp\fR(4P).
.sp
.LP
The \fBread()\fR, \fBreadv()\fR, \fBpread()\fR, and \fBpreadv()\fR functions will fail if:
@@ -551,10 +551,10 @@ The \fIfildes\fR argument is associated with a pipe or FIFO.
.SH USAGE
.LP
The \fBpread()\fR function has a transitional interface for 64-bit file
-offsets. See \fBlf64\fR(5).
+offsets. See \fBlf64\fR(7).
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -568,12 +568,25 @@ Interface Stability Committed
_
MT-Level \fBread()\fR is Async-Signal-Safe
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.LP
-\fBIntro\fR(2), \fBchmod\fR(2), \fBcreat\fR(2), \fBdup\fR(2), \fBfcntl\fR(2),
-\fBgetmsg\fR(2), \fBioctl\fR(2), \fBlseek\fR(2), \fBopen\fR(2), \fBpipe\fR(2),
-\fBrecv\fR(3SOCKET), \fBattributes\fR(5), \fBlf64\fR(5), \fBstandards\fR(5),
-\fBstreamio\fR(7I), \fBtermio\fR(7I), \fBtcp\fR(7P)
+.BR Intro (2),
+.BR chmod (2),
+.BR creat (2),
+.BR dup (2),
+.BR fcntl (2),
+.BR getmsg (2),
+.BR ioctl (2),
+.BR lseek (2),
+.BR open (2),
+.BR pipe (2),
+.BR recv (3SOCKET),
+.BR streamio (4I),
+.BR termio (4I),
+.BR tcp (4P),
+.BR attributes (7),
+.BR lf64 (7),
+.BR standards (7)
diff --git a/usr/src/man/man2/readlink.2 b/usr/src/man/man2/readlink.2
index f6434413fa..c5dd6426ab 100644
--- a/usr/src/man/man2/readlink.2
+++ b/usr/src/man/man2/readlink.2
@@ -221,7 +221,7 @@ Portable applications should not assume that the returned contents of the
symbolic link are null-terminated.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -238,4 +238,7 @@ MT-Level Async-Signal-Safe
.SH SEE ALSO
.LP
-\fBstat\fR(2), \fBsymlink\fR(2), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR stat (2),
+.BR symlink (2),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man2/rename.2 b/usr/src/man/man2/rename.2
index cc418fc954..f78422e99c 100644
--- a/usr/src/man/man2/rename.2
+++ b/usr/src/man/man2/rename.2
@@ -36,7 +36,7 @@ to the new path name of the file.
.sp
.LP
The \fBrenameat()\fR function renames an entry in a directory, possibly moving
-the entry into a different directory. See \fBfsattr\fR(5). If the \fIold\fR
+the entry into a different directory. See \fBfsattr\fR(7). If the \fIold\fR
argument is an absolute path, the \fIfromfd\fR is ignored. Otherwise it is
resolved relative to the \fIfromfd\fR argument rather than the current working
directory. Similarly, if the \fInew\fR argument is not absolute, it is
@@ -339,7 +339,7 @@ an attribute file as a regular file.
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -353,12 +353,16 @@ Interface Stability Committed
_
MT-Level Async-Signal-Safe
_
-Standard For \fBrename()\fR, see \fBstandards\fR(5).
+Standard For \fBrename()\fR, see \fBstandards\fR(7).
.TE
.SH SEE ALSO
-\fBchmod\fR(2), \fBlink\fR(2), \fBunlink\fR(2), \fBattributes\fR(5),
-\fBfsattr\fR(5), \fBstandards\fR(5)
+.BR chmod (2),
+.BR link (2),
+.BR unlink (2),
+.BR attributes (7),
+.BR fsattr (7),
+.BR standards (7)
.SH NOTES
The system can deadlock if there is a loop in the file system graph. Such a
loop can occur if there is an entry in directory \fBa\fR, \fBa/name1\fR, that
diff --git a/usr/src/man/man2/resolvepath.2 b/usr/src/man/man2/resolvepath.2
index 76da1bd1fc..dbdbba5d3e 100644
--- a/usr/src/man/man2/resolvepath.2
+++ b/usr/src/man/man2/resolvepath.2
@@ -115,4 +115,5 @@ should not assume that the returned contents of the buffer are null-terminated.
.SH SEE ALSO
.sp
.LP
-\fBreadlink\fR(2), \fBrealpath\fR(3C)
+.BR readlink (2),
+.BR realpath (3C)
diff --git a/usr/src/man/man2/rmdir.2 b/usr/src/man/man2/rmdir.2
index e861fcfa40..d1ee6d7dd0 100644
--- a/usr/src/man/man2/rmdir.2
+++ b/usr/src/man/man2/rmdir.2
@@ -180,7 +180,7 @@ The directory entry to be removed is part of a read-only file system.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -198,5 +198,9 @@ MT-Level Async-Signal-Safe
.SH SEE ALSO
.sp
.LP
-\fBmkdir\fR(1), \fBrm\fR(1), \fBmkdir\fR(2), \fBattributes\fR(5),
-\fBprivileges\fR(5), \fBstandards\fR(5)
+.BR mkdir (1),
+.BR rm (1),
+.BR mkdir (2),
+.BR attributes (7),
+.BR privileges (7),
+.BR standards (7)
diff --git a/usr/src/man/man2/semctl.2 b/usr/src/man/man2/semctl.2
index 86ce78b2c6..1ac4f6ab41 100644
--- a/usr/src/man/man2/semctl.2
+++ b/usr/src/man/man2/semctl.2
@@ -295,7 +295,7 @@ The \fIcmd\fR argument is \fBSETVAL\fR or \fBSETALL\fR and the value to which
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -311,5 +311,10 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBipcs\fR(1), \fBIntro\fR(2), \fBsemget\fR(2), \fBsemop\fR(2),
-\fBattributes\fR(5), \fBprivileges\fR(5), \fBstandards\fR(5)
+.BR ipcs (1),
+.BR Intro (2),
+.BR semget (2),
+.BR semop (2),
+.BR attributes (7),
+.BR privileges (7),
+.BR standards (7)
diff --git a/usr/src/man/man2/semget.2 b/usr/src/man/man2/semget.2
index 73d35256bd..896720798c 100644
--- a/usr/src/man/man2/semget.2
+++ b/usr/src/man/man2/semget.2
@@ -141,7 +141,7 @@ be exceeded. See NOTES.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -157,9 +157,16 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBipcrm\fR(1), \fBipcs\fR(1), \fBrctladm\fR(1M), \fBIntro\fR(2),
-\fBsemctl\fR(2), \fBsemop\fR(2), \fBsetrctl\fR(2), \fBftok\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR ipcrm (1),
+.BR ipcs (1),
+.BR Intro (2),
+.BR semctl (2),
+.BR semop (2),
+.BR setrctl (2),
+.BR ftok (3C),
+.BR attributes (7),
+.BR standards (7),
+.BR rctladm (8)
.SH NOTES
.sp
.LP
@@ -174,5 +181,5 @@ The \fBzone.max-sem-ids\fR resource control limis the total number of
semaphore identifiers that can be allocated by a zone.
.sp
.LP
-See \fBrctladm\fR(1M) and \fBsetrctl\fR(2) for information about using resource
+See \fBrctladm\fR(8) and \fBsetrctl\fR(2) for information about using resource
controls.
diff --git a/usr/src/man/man2/semids.2 b/usr/src/man/man2/semids.2
index ea4398cd0d..8a28fee4af 100644
--- a/usr/src/man/man2/semids.2
+++ b/usr/src/man/man2/semids.2
@@ -96,7 +96,7 @@ examine_semids()
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -112,5 +112,10 @@ MT-Level Async-Signal-Safe
.SH SEE ALSO
.sp
.LP
-\fBipcrm\fR(1), \fBipcs\fR(1), \fBIntro\fR(2), \fBsemctl\fR(2),
-\fBsemget\fR(2), \fBsemop\fR(2), \fBattributes\fR(5)
+.BR ipcrm (1),
+.BR ipcs (1),
+.BR Intro (2),
+.BR semctl (2),
+.BR semget (2),
+.BR semop (2),
+.BR attributes (7)
diff --git a/usr/src/man/man2/semop.2 b/usr/src/man/man2/semop.2
index 07e616dcac..8b21b5b330 100644
--- a/usr/src/man/man2/semop.2
+++ b/usr/src/man/man2/semop.2
@@ -359,7 +359,7 @@ than 0, or a \fBtv_nsec\fR value greater than or equal to 1000 million.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -375,9 +375,18 @@ Interface Stability \fBsemop()\fR is Standard.
.SH SEE ALSO
.sp
.LP
-\fBipcs\fR(1), \fBrctladm\fR(1M), \fBIntro\fR(2), \fBexec\fR(2), \fBexit\fR(2),
-\fBfork\fR(2), \fBsemctl\fR(2), \fBsemget\fR(2), \fBsetrctl\fR(2),
-\fBsigaction\fR(2), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR ipcs (1),
+.BR Intro (2),
+.BR exec (2),
+.BR exit (2),
+.BR fork (2),
+.BR semctl (2),
+.BR semget (2),
+.BR setrctl (2),
+.BR sigaction (2),
+.BR attributes (7),
+.BR standards (7),
+.BR rctladm (8)
.SH NOTES
.sp
.LP
@@ -387,5 +396,5 @@ creating process at the time \fBsemget\fR(2) was used to allocate the
identifier.
.sp
.LP
-See \fBrctladm\fR(1M) and \fBsetrctl\fR(2) for information about using resource
+See \fBrctladm\fR(8) and \fBsetrctl\fR(2) for information about using resource
controls.
diff --git a/usr/src/man/man2/setpgid.2 b/usr/src/man/man2/setpgid.2
index a97e7691b1..6f9dbd36dc 100644
--- a/usr/src/man/man2/setpgid.2
+++ b/usr/src/man/man2/setpgid.2
@@ -110,7 +110,7 @@ process or of a child process of the calling process.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -128,5 +128,11 @@ MT-Level Async-Signal-Safe
.SH SEE ALSO
.sp
.LP
-\fBIntro\fR(2), \fBexec\fR(2), \fBexit\fR(2), \fBfork\fR(2), \fBgetpid\fR(2),
-\fBgetsid\fR(2), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR Intro (2),
+.BR exec (2),
+.BR exit (2),
+.BR fork (2),
+.BR getpid (2),
+.BR getsid (2),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man2/setpgrp.2 b/usr/src/man/man2/setpgrp.2
index 3268d6bf34..74c1a5f88f 100644
--- a/usr/src/man/man2/setpgrp.2
+++ b/usr/src/man/man2/setpgrp.2
@@ -35,7 +35,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -51,6 +51,13 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBsetpgrp\fR(1), \fBIntro\fR(2), \fBexec\fR(2), \fBfork\fR(2),
-\fBgetpid\fR(2), \fBgetsid\fR(2), \fBkill\fR(2), \fBsignal\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR setpgrp (1),
+.BR Intro (2),
+.BR exec (2),
+.BR fork (2),
+.BR getpid (2),
+.BR getsid (2),
+.BR kill (2),
+.BR signal (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man2/setrctl.2 b/usr/src/man/man2/setrctl.2
index 57c8248027..537598dbb4 100644
--- a/usr/src/man/man2/setrctl.2
+++ b/usr/src/man/man2/setrctl.2
@@ -266,7 +266,7 @@ lowering by unprivileged callers.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -282,5 +282,9 @@ MT-Level Async-Signal-Safe
.SH SEE ALSO
.sp
.LP
-\fBrctladm\fR(1M), \fBgetrlimit\fR(2), \fBerrno\fR(3C),
-\fBrctlblk_set_value\fR(3C), \fBattributes\fR(5), \fBresource_controls\fR(5)
+.BR getrlimit (2),
+.BR errno (3C),
+.BR rctlblk_set_value (3C),
+.BR attributes (7),
+.BR resource_controls (7),
+.BR rctladm (8)
diff --git a/usr/src/man/man2/setregid.2 b/usr/src/man/man2/setregid.2
index 0b2832d2bb..c8d435182a 100644
--- a/usr/src/man/man2/setregid.2
+++ b/usr/src/man/man2/setregid.2
@@ -79,7 +79,7 @@ set-group-\fBID\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -95,5 +95,10 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBexecve\fR(2), \fBgetgid\fR(2), \fBsetreuid\fR(2), \fBsetuid\fR(2),
-\fBattributes\fR(5), \fBprivileges\fR(5), \fBstandards\fR(5)
+.BR execve (2),
+.BR getgid (2),
+.BR setreuid (2),
+.BR setuid (2),
+.BR attributes (7),
+.BR privileges (7),
+.BR standards (7)
diff --git a/usr/src/man/man2/setreuid.2 b/usr/src/man/man2/setreuid.2
index b35f01701f..976269b989 100644
--- a/usr/src/man/man2/setreuid.2
+++ b/usr/src/man/man2/setreuid.2
@@ -71,7 +71,7 @@ The {PRIV_PROC_SETID} privilege is not asserted in the effective set of the
calling processes and a change was specified other than changing the real user
\fBID\fR to the effective user \fBID\fR, or changing the effective user
\fBID\fR to the real user \fBID\fR or the saved set-user \fBID\fR. See
-\fBprivileges\fR(5) for additional restrictions which apply when changing to
+\fBprivileges\fR(7) for additional restrictions which apply when changing to
UID 0.
.RE
@@ -84,7 +84,7 @@ set-user \fBID\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -100,5 +100,10 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBexec\fR(2), \fBgetuid\fR(2), \fBsetregid\fR(2), \fBsetuid\fR(2),
-\fBattributes\fR(5), \fBprivileges\fR(5), \fBstandards\fR(5)
+.BR exec (2),
+.BR getuid (2),
+.BR setregid (2),
+.BR setuid (2),
+.BR attributes (7),
+.BR privileges (7),
+.BR standards (7)
diff --git a/usr/src/man/man2/setsid.2 b/usr/src/man/man2/setsid.2
index dc3a1e7cea..19c32996f4 100644
--- a/usr/src/man/man2/setsid.2
+++ b/usr/src/man/man2/setsid.2
@@ -90,7 +90,7 @@ The calling process is already a process group leader, or the process group
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -108,8 +108,11 @@ MT-Level Async-Signal-Safe
.SH SEE ALSO
.sp
.LP
-\fBgetsid\fR(2), \fBsetpgid\fR(2), \fBsetpgrp\fR(2), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR getsid (2),
+.BR setpgid (2),
+.BR setpgrp (2),
+.BR attributes (7),
+.BR standards (7)
.SH WARNINGS
.sp
.LP
diff --git a/usr/src/man/man2/settaskid.2 b/usr/src/man/man2/settaskid.2
index 0e96d5516d..c7ed660a74 100644
--- a/usr/src/man/man2/settaskid.2
+++ b/usr/src/man/man2/settaskid.2
@@ -101,7 +101,7 @@ the calling process.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -117,4 +117,7 @@ MT-Level Async-Signal-Safe
.SH SEE ALSO
.sp
.LP
-\fBsetsid\fR(2), \fBproject\fR(4), \fBattributes\fR(5), \fBprivileges\fR(5)
+.BR setsid (2),
+.BR project (5),
+.BR attributes (7),
+.BR privileges (7)
diff --git a/usr/src/man/man2/setuid.2 b/usr/src/man/man2/setuid.2
index 8bebbbe282..60c34ed6e8 100644
--- a/usr/src/man/man2/setuid.2
+++ b/usr/src/man/man2/setuid.2
@@ -62,7 +62,7 @@ If the {\fBPRIV_PROC_SETID\fR} privilege is asserted in the effective set of
the process calling \fBsetuid()\fR, the real, effective, and saved user IDs are
set to the \fIuid\fR argument. If the \fIuid\fR argument is 0 and none of the
saved, effective or real UID is 0, additional restrictions apply. See
-\fBprivileges\fR(5).
+\fBprivileges\fR(7).
.sp
.LP
If the {\fBPRIV_PROC_SETID\fR} privilege is not asserted in the effective set,
@@ -116,7 +116,7 @@ either the real or saved group IDs.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -134,6 +134,11 @@ MT-Level Async-Signal-Safe
.SH SEE ALSO
.sp
.LP
-\fBIntro\fR(2), \fBexec\fR(2), \fBgetgroups\fR(2), \fBgetuid\fR(2),
-\fBstat.h\fR(3HEAD), \fBattributes\fR(5), \fBprivileges\fR(5),
-\fBstandards\fR(5)
+.BR Intro (2),
+.BR exec (2),
+.BR getgroups (2),
+.BR getuid (2),
+.BR stat.h (3HEAD),
+.BR attributes (7),
+.BR privileges (7),
+.BR standards (7)
diff --git a/usr/src/man/man2/shmctl.2 b/usr/src/man/man2/shmctl.2
index e9bd523d21..5241620d22 100644
--- a/usr/src/man/man2/shmctl.2
+++ b/usr/src/man/man2/shmctl.2
@@ -197,7 +197,7 @@ calling process.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -213,5 +213,10 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBipcs\fR(1), \fBIntro\fR(2), \fBshmget\fR(2), \fBshmop\fR(2),
-\fBattributes\fR(5), \fBprivileges\fR(5), \fBstandards\fR(5)
+.BR ipcs (1),
+.BR Intro (2),
+.BR shmget (2),
+.BR shmop (2),
+.BR attributes (7),
+.BR privileges (7),
+.BR standards (7)
diff --git a/usr/src/man/man2/shmget.2 b/usr/src/man/man2/shmget.2
index a20cfad5e6..a15e463b60 100644
--- a/usr/src/man/man2/shmget.2
+++ b/usr/src/man/man2/shmget.2
@@ -156,7 +156,7 @@ exceeded. See NOTES.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -172,9 +172,15 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBrctladm\fR(1M), \fBIntro\fR(2), \fBsetrctl\fR(2), \fBshmctl\fR(2),
-\fBshmop\fR(2), \fBftok\fR(3C), \fBgetpagesize\fR(3C), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR Intro (2),
+.BR setrctl (2),
+.BR shmctl (2),
+.BR shmop (2),
+.BR ftok (3C),
+.BR getpagesize (3C),
+.BR attributes (7),
+.BR standards (7),
+.BR rctladm (8)
.SH NOTES
.sp
.LP
@@ -195,5 +201,5 @@ control. The \fBzone.max-shm-ids\fR resource control restricts the total number
of shared memory identifiers that can be allocated by a zone.
.sp
.LP
-See \fBrctladm\fR(1M) and \fBsetrctl\fR(2) for information about using resource
+See \fBrctladm\fR(8) and \fBsetrctl\fR(2) for information about using resource
controls.
diff --git a/usr/src/man/man2/shmids.2 b/usr/src/man/man2/shmids.2
index 62619aaed9..32a549cb7f 100644
--- a/usr/src/man/man2/shmids.2
+++ b/usr/src/man/man2/shmids.2
@@ -96,7 +96,7 @@ examine_shmids()
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -112,5 +112,10 @@ MT-Level Async-Signal-Safe
.SH SEE ALSO
.sp
.LP
-\fBipcrm\fR(1), \fBipcs\fR(1), \fBIntro\fR(2), \fBshmctl\fR(2),
-\fBshmget\fR(2), \fBshmop\fR(2), \fBattributes\fR(5)
+.BR ipcrm (1),
+.BR ipcs (1),
+.BR Intro (2),
+.BR shmctl (2),
+.BR shmget (2),
+.BR shmop (2),
+.BR attributes (7)
diff --git a/usr/src/man/man2/shmop.2 b/usr/src/man/man2/shmop.2
index 067d75e3bd..eb0e75a3d7 100644
--- a/usr/src/man/man2/shmop.2
+++ b/usr/src/man/man2/shmop.2
@@ -122,7 +122,7 @@ The segment is attached for reading if (\fIshmflg\fR\fB&SHM_RDONLY\fR) is true
.LP
The \fBshmdt()\fR function detaches from the calling process's data segment the
shared memory segment located at the address specified by \fIshmaddr\fR. If the
-application is standard-conforming (see \fBstandards\fR(5)), the \fIshmaddr\fR
+application is standard-conforming (see \fBstandards\fR(7)), the \fIshmaddr\fR
argument is of type \fBconst void *\fR. Otherwise it is of type \fBchar *\fR.
.sp
.LP
@@ -231,7 +231,7 @@ performance on certain platforms due to D-cache aliasing.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -245,11 +245,17 @@ Interface Stability Committed
_
MT-Level Async-Signal-Safe
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.sp
.LP
-\fBIntro\fR(2), \fBexec\fR(2), \fBexit\fR(2), \fBfork\fR(2), \fBshmctl\fR(2),
-\fBshmget\fR(2), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR Intro (2),
+.BR exec (2),
+.BR exit (2),
+.BR fork (2),
+.BR shmctl (2),
+.BR shmget (2),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man2/sigaction.2 b/usr/src/man/man2/sigaction.2
index 36c4ef1a9a..ab9db1e9d7 100644
--- a/usr/src/man/man2/sigaction.2
+++ b/usr/src/man/man2/sigaction.2
@@ -50,7 +50,7 @@ int sa_flags;
.sp
.LP
The storage occupied by \fBsa_handler\fR and \fBsa_sigaction\fR may overlap,
-and a standard-conforming application (see \fBstandards\fR(5)) must not use
+and a standard-conforming application (see \fBstandards\fR(7)) must not use
both simultaneously.
.sp
.LP
@@ -190,7 +190,7 @@ is equal to \fBSIGWAITING\fR, \fBSIGCANCEL\fR, or \fBSIGLWP\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -204,19 +204,38 @@ Interface Stability Committed
_
MT-Level Async-Signal-Safe
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.sp
.LP
-\fBkill\fR(1), \fBIntro\fR(2), \fBexit\fR(2), \fBfcntl\fR(2), \fBgetmsg\fR(2),
-\fBioctl\fR(2), \fBkill\fR(2), \fBpause\fR(2), \fBputmsg\fR(2), \fBread\fR(2),
-\fBsigaltstack\fR(2), \fBsigprocmask\fR(2), \fBsigsend\fR(2),
-\fBsigsuspend\fR(2), \fBwaitid\fR(2), \fBwrite\fR(2), \fBrecv\fR(3SOCKET),
-\fBsend\fR(3SOCKET), \fBsiginfo.h\fR(3HEAD), \fBsignal\fR(3C),
-\fBsignal.h\fR(3HEAD), \fBsigsetops\fR(3C), \fBucontext.h\fR(3HEAD),
-\fBwait\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR kill (1),
+.BR Intro (2),
+.BR exit (2),
+.BR fcntl (2),
+.BR getmsg (2),
+.BR ioctl (2),
+.BR kill (2),
+.BR pause (2),
+.BR putmsg (2),
+.BR read (2),
+.BR sigaltstack (2),
+.BR sigprocmask (2),
+.BR sigsend (2),
+.BR sigsuspend (2),
+.BR waitid (2),
+.BR write (2),
+.BR signal (3C),
+.BR sigsetops (3C),
+.BR wait (3C),
+.BR siginfo.h (3HEAD),
+.BR signal.h (3HEAD),
+.BR ucontext.h (3HEAD),
+.BR recv (3SOCKET),
+.BR send (3SOCKET),
+.BR attributes (7),
+.BR standards (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man2/sigaltstack.2 b/usr/src/man/man2/sigaltstack.2
index 333ca5eb2d..a0d1c93b0f 100644
--- a/usr/src/man/man2/sigaltstack.2
+++ b/usr/src/man/man2/sigaltstack.2
@@ -174,7 +174,7 @@ An attempt was made to modify an active stack.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -192,8 +192,12 @@ MT-Level Async-Signal-Safe
.SH SEE ALSO
.sp
.LP
-\fBgetcontext\fR(2), \fBmmap\fR(2), \fBsigaction\fR(2),
-\fBucontext.h\fR(3HEAD), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR getcontext (2),
+.BR mmap (2),
+.BR sigaction (2),
+.BR ucontext.h (3HEAD),
+.BR attributes (7),
+.BR standards (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man2/sigpending.2 b/usr/src/man/man2/sigpending.2
index b88dc78518..79dcdb41dc 100644
--- a/usr/src/man/man2/sigpending.2
+++ b/usr/src/man/man2/sigpending.2
@@ -42,7 +42,7 @@ The \fIset\fR argument points to an illegal address.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -60,5 +60,8 @@ MT-Level Async-Signal-Safe
.SH SEE ALSO
.sp
.LP
-\fBsigaction\fR(2), \fBsigprocmask\fR(2), \fBsigsetops\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR sigaction (2),
+.BR sigprocmask (2),
+.BR sigsetops (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man2/sigprocmask.2 b/usr/src/man/man2/sigprocmask.2
index c6d25af2bf..3ad28c4439 100644
--- a/usr/src/man/man2/sigprocmask.2
+++ b/usr/src/man/man2/sigprocmask.2
@@ -41,7 +41,7 @@ call to \fBsigprocmask()\fR returns.
It is not possible to block signals that cannot be caught or ignored (see
\fBsigaction\fR(2)). It is also not possible to block or unblock SIGCANCEL, as
SIGCANCEL is reserved for the implementation of POSIX thread cancellation (see
-\fBpthread_cancel\fR(3C) and \fBcancellation\fR(5)). This restriction is
+\fBpthread_cancel\fR(3C) and \fBcancellation\fR(7)). This restriction is
silently enforced by the standard C library.
.sp
.LP
@@ -76,7 +76,7 @@ The \fIset\fR or \fIoset\fR argument points to an illegal address.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -93,9 +93,14 @@ MT-Level Async-Signal-Safe
.SH SEE ALSO
.LP
-\fBsigaction\fR(2), \fBpthread_cancel\fR(3C), \fBpthread_sigmask\fR(3C),
-\fBsignal\fR(3C), \fBsignal.h\fR(3HEAD), \fBsigsetops\fR(3C),
-\fBattributes\fR(5), \fBcancellation\fR(5)
+.BR sigaction (2),
+.BR pthread_cancel (3C),
+.BR pthread_sigmask (3C),
+.BR signal (3C),
+.BR sigsetops (3C),
+.BR signal.h (3HEAD),
+.BR attributes (7),
+.BR cancellation (7)
.SH NOTES
.LP
The call to \fBsigprocmask()\fR affects only the calling thread's signal mask.
diff --git a/usr/src/man/man2/sigsend.2 b/usr/src/man/man2/sigsend.2
index 2801dda2b0..88203d76c3 100644
--- a/usr/src/man/man2/sigsend.2
+++ b/usr/src/man/man2/sigsend.2
@@ -220,5 +220,11 @@ The \fIpsp\fR argument points to an illegal address.
.SH SEE ALSO
.sp
.LP
-\fBkill\fR(1), \fBgetpid\fR(2), \fBkill\fR(2), \fBpriocntl\fR(2),
-\fBsignal\fR(3C), \fBsignal.h\fR(3HEAD), \fBprocess\fR(4), \fBprivileges\fR(5)
+.BR kill (1),
+.BR getpid (2),
+.BR kill (2),
+.BR priocntl (2),
+.BR signal (3C),
+.BR signal.h (3HEAD),
+.BR process (5),
+.BR privileges (7)
diff --git a/usr/src/man/man2/sigsuspend.2 b/usr/src/man/man2/sigsuspend.2
index 565ddce419..87a9f511ed 100644
--- a/usr/src/man/man2/sigsuspend.2
+++ b/usr/src/man/man2/sigsuspend.2
@@ -68,7 +68,7 @@ The \fIset\fR argument points to an illegal address.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -86,8 +86,13 @@ MT-Level Async-Signal-Safe
.SH SEE ALSO
.sp
.LP
-\fBsigaction\fR(2), \fBsigprocmask\fR(2), \fBsigwait\fR(2), \fBsignal\fR(3C),
-\fBsignal.h\fR(3HEAD), \fBsigsetops\fR(3C), \fBattributes\fR(5)
+.BR sigaction (2),
+.BR sigprocmask (2),
+.BR sigwait (2),
+.BR signal (3C),
+.BR sigsetops (3C),
+.BR signal.h (3HEAD),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man2/sigwait.2 b/usr/src/man/man2/sigwait.2
index b038447dc5..1e615b42ed 100644
--- a/usr/src/man/man2/sigwait.2
+++ b/usr/src/man/man2/sigwait.2
@@ -31,7 +31,7 @@ the calling thread. If no signal in \fIset\fR is pending, \fBsigwait()\fR
blocks until a signal in \fIset\fR becomes pending. The selected signal is
cleared from the set of signals pending on the calling thread and the number of
the signal is returned, or in the standard-conforming version (see
-\fBstandards\fR(5)) placed in \fIsig\fR. The selection of a signal in \fIset\fR
+\fBstandards\fR(7)) placed in \fIsig\fR. The selection of a signal in \fIset\fR
is independent of the signal mask of the calling thread. This means a thread
can synchronously wait for signals that are being blocked by the signal mask of
the calling thread \&. To ensure that only the caller receives the signals
@@ -199,7 +199,7 @@ sigint(void *arg)
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -213,16 +213,22 @@ Interface Stability Committed
_
MT-Level Async-Signal-Safe
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.sp
.LP
-\fBsigaction\fR(2), \fBsigpending\fR(2), \fBsigprocmask\fR(2),
-\fBsigsuspend\fR(2), \fBpthread_create\fR(3C), \fBpthread_kill\fR(3C),
-\fBpthread_sigmask\fR(3C), \fBsignal.h\fR(3HEAD), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR sigaction (2),
+.BR sigpending (2),
+.BR sigprocmask (2),
+.BR sigsuspend (2),
+.BR pthread_create (3C),
+.BR pthread_kill (3C),
+.BR pthread_sigmask (3C),
+.BR signal.h (3HEAD),
+.BR attributes (7),
+.BR standards (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man2/stat.2 b/usr/src/man/man2/stat.2
index 5dabfe0d5e..a3d2d8dd4e 100644
--- a/usr/src/man/man2/stat.2
+++ b/usr/src/man/man2/stat.2
@@ -65,7 +65,7 @@ the \fIfildes\fR argument is unused. If the \fIfildes\fR argument has the
special value \fBAT_FDCWD\fR, relative paths are resolved from the current
working directory. If \fBAT_SYMLINK_NOFOLLOW\fR is set in the \fIflag\fR
argument, the function behaves like \fBlstat()\fR and does not automatically
-follow symbolic links. See \fBfsattr\fR(5). If \fB_ATTR_TRIGGER\fR is set in
+follow symbolic links. See \fBfsattr\fR(7). If \fB_ATTR_TRIGGER\fR is set in
the \fIflag\fR argument and the vnode is a trigger mount point, the mount is
performed and the function returns the attributes of the root of the mounted
filesystem.
@@ -591,9 +591,9 @@ users and groups that have ACL entries on the file.
.sp
.LP
The \fBstat()\fR, \fBfstat()\fR, and \fBlstat()\fR functions have transitional
-interfaces for 64-bit file offsets. See \fBlf64\fR(5).
+interfaces for 64-bit file offsets. See \fBlf64\fR(7).
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -612,9 +612,23 @@ Standard See below.
.sp
.LP
-For \fBstat()\fR, \fBfstat()\fR, and \fBlstat()\fR, see \fBstandards\fR(5).
+For \fBstat()\fR, \fBfstat()\fR, and \fBlstat()\fR, see \fBstandards\fR(7).
.SH SEE ALSO
-\fBaccess\fR(2), \fBchmod\fR(2), \fBchown\fR(2), \fBcreat\fR(2), \fBlink\fR(2),
-\fBmknod\fR(2), \fBpipe\fR(2), \fBread\fR(2), \fBtime\fR(2), \fBunlink\fR(2),
-\fButime\fR(2), \fBwrite\fR(2), \fBfattach\fR(3C), \fBstat.h\fR(3HEAD),
-\fBattributes\fR(5), \fBfsattr\fR(5), \fBlf64\fR(5), \fBstandards\fR(5)
+.BR access (2),
+.BR chmod (2),
+.BR chown (2),
+.BR creat (2),
+.BR link (2),
+.BR mknod (2),
+.BR pipe (2),
+.BR read (2),
+.BR time (2),
+.BR unlink (2),
+.BR utime (2),
+.BR write (2),
+.BR fattach (3C),
+.BR stat.h (3HEAD),
+.BR attributes (7),
+.BR fsattr (7),
+.BR lf64 (7),
+.BR standards (7)
diff --git a/usr/src/man/man2/statvfs.2 b/usr/src/man/man2/statvfs.2
index 2265c57e48..998b383584 100644
--- a/usr/src/man/man2/statvfs.2
+++ b/usr/src/man/man2/statvfs.2
@@ -225,9 +225,9 @@ An I/O error occurred while reading the file system.
.SH USAGE
The \fBstatvfs()\fR and \fBfstatvfs()\fR functions have transitional interfaces
-for 64-bit file offsets. See \fBlf64\fR(5).
+for 64-bit file offsets. See \fBlf64\fR(7).
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -241,10 +241,23 @@ Interface Stability Standard
.TE
.SH SEE ALSO
-\fBchmod\fR(2), \fBchown\fR(2), \fBcreat\fR(2), \fBdup\fR(2), \fBfcntl\fR(2),
-\fBlink\fR(2), \fBmknod\fR(2), \fBopen\fR(2), \fBpipe\fR(2), \fBread\fR(2),
-\fBtime\fR(2), \fBunlink\fR(2), \fButime\fR(2), \fBwrite\fR(2),
-\fBattributes\fR(5), \fBlf64\fR(5), \fBstandards\fR(5)
+.BR chmod (2),
+.BR chown (2),
+.BR creat (2),
+.BR dup (2),
+.BR fcntl (2),
+.BR link (2),
+.BR mknod (2),
+.BR open (2),
+.BR pipe (2),
+.BR read (2),
+.BR time (2),
+.BR unlink (2),
+.BR utime (2),
+.BR write (2),
+.BR attributes (7),
+.BR lf64 (7),
+.BR standards (7)
.SH BUGS
The values returned for \fBf_files\fR, \fBf_ffree\fR, and \fBf_favail\fR may
not be valid for \fBNFS\fR mounted file systems.
diff --git a/usr/src/man/man2/stime.2 b/usr/src/man/man2/stime.2
index 458394b7f2..39e5b1a8f9 100644
--- a/usr/src/man/man2/stime.2
+++ b/usr/src/man/man2/stime.2
@@ -51,4 +51,5 @@ calling process.
.SH SEE ALSO
.sp
.LP
-\fBtime\fR(2), \fBprivileges\fR(5)
+.BR time (2),
+.BR privileges (7)
diff --git a/usr/src/man/man2/swapctl.2 b/usr/src/man/man2/swapctl.2
index d0f705b842..a39d2ddcc4 100644
--- a/usr/src/man/man2/swapctl.2
+++ b/usr/src/man/man2/swapctl.2
@@ -315,4 +315,4 @@ again:
.SH SEE ALSO
.sp
.LP
-\fBprivileges\fR(5)
+.BR privileges (7)
diff --git a/usr/src/man/man2/symlink.2 b/usr/src/man/man2/symlink.2
index 4bb9b4f5a6..decd7e0613 100644
--- a/usr/src/man/man2/symlink.2
+++ b/usr/src/man/man2/symlink.2
@@ -194,7 +194,7 @@ file descriptor or the special value \fBAT_FDCWD\fR.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -209,5 +209,10 @@ Interface Stability Standard
.SH SEE ALSO
.LP
-\fBcp\fR(1), \fBlink\fR(2), \fBopen\fR(2), \fBreadlink\fR(2), \fBstat\fR(2),
-\fBunlink\fR(2), \fBattributes\fR(5)
+.BR cp (1),
+.BR link (2),
+.BR open (2),
+.BR readlink (2),
+.BR stat (2),
+.BR unlink (2),
+.BR attributes (7)
diff --git a/usr/src/man/man2/sync.2 b/usr/src/man/man2/sync.2
index bb04a13263..762a68dfc2 100644
--- a/usr/src/man/man2/sync.2
+++ b/usr/src/man/man2/sync.2
@@ -28,12 +28,12 @@ returning.
.sp
.LP
The \fBsync()\fR function should be used by applications that examine a file
-system, such as \fBfsck\fR(1M), and \fBdf\fR(1M), and is mandatory before
+system, such as \fBfsck\fR(8), and \fBdf\fR(8), and is mandatory before
rebooting.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -49,5 +49,8 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBdf\fR(1M), \fBfsck\fR(1M), \fBfsync\fR(3C), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR fsync (3C),
+.BR attributes (7),
+.BR standards (7),
+.BR df (8),
+.BR fsck (8)
diff --git a/usr/src/man/man2/sysinfo.2 b/usr/src/man/man2/sysinfo.2
index 6815dbc229..aed37875d8 100644
--- a/usr/src/man/man2/sysinfo.2
+++ b/usr/src/man/man2/sysinfo.2
@@ -23,7 +23,7 @@ system on which the process is executing into the buffer pointed to by
available. The \fIcount\fR parameter indicates the size of the buffer.
.sp
.LP
-The POSIX P1003.1 interface (see \fBstandards\fR(5)) \fBsysconf\fR(3C) provides
+The POSIX P1003.1 interface (see \fBstandards\fR(7)) \fBsysconf\fR(3C) provides
a similar class of configuration information, but returns an integer rather
than a string.
.sp
@@ -206,7 +206,7 @@ Programs compiled for an instruction set that does not appear in the list will
most likely experience performance degradation or not run at all on this
machine.
.sp
-The instruction set names known to the system are listed in \fBisalist\fR(5);
+The instruction set names known to the system are listed in \fBisalist\fR(7);
these names might not match predefined names or compiler options in the C
language compilation system.
.sp
@@ -292,8 +292,8 @@ of the calling process.
.RS 4n
Copy into the array pointed to by \fIbuf\fR an ASCII string consisting of the
ASCII hexadecimal encoding of the name of the interface configured by
-\fBboot\fR(1M) followed by the DHCPACK reply from the server. This command is
-intended for use only by the \fBdhcpagent\fR(1M) DHCP client daemon for the
+\fBboot\fR(8) followed by the DHCPACK reply from the server. This command is
+intended for use only by the \fBdhcpagent\fR(8) DHCP client daemon for the
purpose of adopting the DHCP maintenance of the interface configured by
\fBboot\fR.
.RE
@@ -354,9 +354,17 @@ A good estimation for \fIcount\fR is 257, which is likely to cover all strings
returned by this interface in typical installations.
.SH SEE ALSO
.LP
-\fBboot\fR(1M), \fBdhcpagent\fR(1M), \fBgetisax\fR(2), \fBuname\fR(2),
-\fBgethostid\fR(3C), \fBgethostname\fR(3C), \fBsysconf\fR(3C),
-\fBisalist\fR(5), \fBprivileges\fR(5), \fBstandards\fR(5), \fBzones\fR(5)
+.BR getisax (2),
+.BR uname (2),
+.BR gethostid (3C),
+.BR gethostname (3C),
+.BR sysconf (3C),
+.BR isalist (7),
+.BR privileges (7),
+.BR standards (7),
+.BR zones (7),
+.BR boot (8),
+.BR dhcpagent (8)
.sp
.LP
\fILinker and Libraries Guide\fR
diff --git a/usr/src/man/man2/time.2 b/usr/src/man/man2/time.2
index 11e250a3cd..1e3f7b01dc 100644
--- a/usr/src/man/man2/time.2
+++ b/usr/src/man/man2/time.2
@@ -33,7 +33,7 @@ Upon successful completion, \fBtime()\fR returns the value of time. Otherwise,
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -51,4 +51,7 @@ MT-Level Async-Signal-Safe
.SH SEE ALSO
.sp
.LP
-\fBstime\fR(2), \fBctime\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR stime (2),
+.BR ctime (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man2/times.2 b/usr/src/man/man2/times.2
index 506507eec5..a685244fb8 100644
--- a/usr/src/man/man2/times.2
+++ b/usr/src/man/man2/times.2
@@ -83,7 +83,7 @@ The \fIbuffer\fR argument points to an illegal address.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -101,6 +101,13 @@ MT-Level Async-Signal-Safe
.SH SEE ALSO
.sp
.LP
-\fBtime\fR(1), \fBtimex\fR(1), \fBexec\fR(2), \fBfork\fR(2), \fBtime\fR(2),
-\fBwaitid\fR(2), \fBwait\fR(3C), \fBwaitpid\fR(3C), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR time (1),
+.BR timex (1),
+.BR exec (2),
+.BR fork (2),
+.BR time (2),
+.BR waitid (2),
+.BR wait (3C),
+.BR waitpid (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man2/uadmin.2 b/usr/src/man/man2/uadmin.2
index 111b962dfd..5aedb18ed4 100644
--- a/usr/src/man/man2/uadmin.2
+++ b/usr/src/man/man2/uadmin.2
@@ -100,7 +100,7 @@ taken next is specified by \fIfcn\fR as above.
.ad
.RS 14n
The system is forced to panic immediately without any further processing and a
-crash dump is written to the dump device (see \fBdumpadm\fR(1M)). The action
+crash dump is written to the dump device (see \fBdumpadm\fR(8)). The action
to be taken next is specified by \fIfcn\fR, as above.
.RE
@@ -325,7 +325,7 @@ the calling process.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -344,12 +344,17 @@ The \fBA_FREEZE\fR command and its subcommands are Committed.
.SH SEE ALSO
.sp
.LP
-\fBdumpadm\fR(1M), \fBhalt\fR(1M), \fBkernel\fR(1M), \fBreboot\fR(1M),
-\fBuadmin\fR(1M), \fBattributes\fR(5), \fBprivileges\fR(5)
+.BR attributes (7),
+.BR privileges (7),
+.BR dumpadm (8),
+.BR halt (8),
+.BR kernel (8),
+.BR reboot (8),
+.BR uadmin (8)
.SH WARNINGS
.sp
.LP
-Shutting down or halting the system by means of \fBuadmin\fR(1M) does not
+Shutting down or halting the system by means of \fBuadmin\fR(8) does not
update the boot archive. Avoid using this command after
.RS +4
.TP
@@ -371,4 +376,4 @@ updating existing driver binaries or kernel binaries.
.RE
.sp
.LP
-Use \fBreboot\fR(1M) or \fBhalt\fR(1M) instead.
+Use \fBreboot\fR(8) or \fBhalt\fR(8) instead.
diff --git a/usr/src/man/man2/ulimit.2 b/usr/src/man/man2/ulimit.2
index 3b79737f72..702f8f3465 100644
--- a/usr/src/man/man2/ulimit.2
+++ b/usr/src/man/man2/ulimit.2
@@ -154,7 +154,7 @@ interface for controlling process limits, and are preferred over
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -170,5 +170,9 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBbrk\fR(2), \fBgetrlimit\fR(2), \fBwrite\fR(2), \fBattributes\fR(5),
-\fBprivileges\fR(5), \fBstandards\fR(5)
+.BR brk (2),
+.BR getrlimit (2),
+.BR write (2),
+.BR attributes (7),
+.BR privileges (7),
+.BR standards (7)
diff --git a/usr/src/man/man2/umask.2 b/usr/src/man/man2/umask.2
index 1976cbab95..ede1655780 100644
--- a/usr/src/man/man2/umask.2
+++ b/usr/src/man/man2/umask.2
@@ -30,7 +30,7 @@ The previous value of the file mode creation mask is returned.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -48,6 +48,13 @@ MT-Level Async-Signal-Safe
.SH SEE ALSO
.sp
.LP
-\fBmkdir\fR(1), \fBsh\fR(1), \fBIntro\fR(2), \fBchmod\fR(2), \fBcreat\fR(2),
-\fBmknod\fR(2), \fBopen\fR(2), \fBstat.h\fR(3HEAD), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR mkdir (1),
+.BR sh (1),
+.BR Intro (2),
+.BR chmod (2),
+.BR creat (2),
+.BR mknod (2),
+.BR open (2),
+.BR stat.h (3HEAD),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man2/umount.2 b/usr/src/man/man2/umount.2
index 8b402558ee..f56c627ea6 100644
--- a/usr/src/man/man2/umount.2
+++ b/usr/src/man/man2/umount.2
@@ -204,4 +204,5 @@ preferred.
.SH SEE ALSO
.sp
.LP
-\fBmount\fR(2), \fBprivileges\fR(5)
+.BR mount (2),
+.BR privileges (7)
diff --git a/usr/src/man/man2/uname.2 b/usr/src/man/man2/uname.2
index 3006877357..4e2832a738 100644
--- a/usr/src/man/man2/uname.2
+++ b/usr/src/man/man2/uname.2
@@ -63,7 +63,7 @@ The \fIname\fR argument points to an illegal address.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -81,5 +81,8 @@ MT-Level Async-Signal-Safe
.SH SEE ALSO
.sp
.LP
-\fBuname\fR(1), \fBsysinfo\fR(2), \fBsysconf\fR(3C), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR uname (1),
+.BR sysinfo (2),
+.BR sysconf (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man2/unlink.2 b/usr/src/man/man2/unlink.2
index 2cce8fe39f..fade51b58c 100644
--- a/usr/src/man/man2/unlink.2
+++ b/usr/src/man/man2/unlink.2
@@ -72,7 +72,7 @@ link.
.sp
.LP
The \fBunlinkat()\fR function also removes a link to a file. See
-\fBfsattr\fR(5). If the \fIflag\fR argument is 0, the behavior of
+\fBfsattr\fR(7). If the \fIflag\fR argument is 0, the behavior of
\fBunlinkat()\fR is the same as \fBunlink()\fR except in the processing of its
\fIpath\fR argument. If \fIpath\fR is absolute, \fBunlinkat()\fR behaves the
same as \fBunlink()\fR and the \fIdirfd\fR argument is unused. If \fIpath\fR is
@@ -99,7 +99,7 @@ If the \fIpath\fR argument is a directory and the filesystem supports
\fBunlink()\fR and \fBunlinkat()\fR on directories, the directory is unlinked
from its parent with no cleanup being performed. In UFS, the disconnected
directory will be found the next time the filesystem is checked with
-\fBfsck\fR(1M). The \fBunlink()\fR and \fBunlinkat()\fR functions will not fail
+\fBfsck\fR(8). The \fBunlink()\fR and \fBunlinkat()\fR functions will not fail
simply because a directory is not empty. The user with appropriate privileges
can orphan a non-empty directory without generating an error message.
.sp
@@ -281,7 +281,7 @@ Applications should use \fBrmdir\fR(2) to remove a directory.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -301,5 +301,12 @@ MT-Level Async-Signal-Safe
.SH SEE ALSO
.sp
.LP
-\fBrm\fR(1), \fBclose\fR(2), \fBlink\fR(2), \fBopen\fR(2), \fBrmdir\fR(2),
-\fBremove\fR(3C), \fBattributes\fR(5), \fBprivileges\fR(5), \fBfsattr\fR(5)
+.BR rm (1),
+.BR close (2),
+.BR link (2),
+.BR open (2),
+.BR rmdir (2),
+.BR remove (3C),
+.BR attributes (7),
+.BR fsattr (7),
+.BR privileges (7)
diff --git a/usr/src/man/man2/upanic.2 b/usr/src/man/man2/upanic.2
index 351b7939d0..329c3121a8 100644
--- a/usr/src/man/man2/upanic.2
+++ b/usr/src/man/man2/upanic.2
@@ -29,9 +29,9 @@ The
.Fn upanic
system call terminates the calling process and generates a core file in
the process, subject to the current core file settings as described in
-.Xr core 4
+.Xr core 5
and controlled by
-.Xr coreadm 1M .
+.Xr coreadm 8 .
.Pp
Unlike
.Xr abort 3C ,
@@ -89,7 +89,6 @@ It always terminates the process.
.Sh SEE ALSO
.Xr elfdump 1 ,
.Xr mdb 1 ,
-.Xr coreadm 1M ,
-.Xr abort 3 ,
.Xr upanic.h 3HEAD ,
-.Xr core 4
+.Xr core 5 ,
+.Xr coreadm 8
diff --git a/usr/src/man/man2/ustat.2 b/usr/src/man/man2/ustat.2
index 7979f64d3e..4be9259e33 100644
--- a/usr/src/man/man2/ustat.2
+++ b/usr/src/man/man2/ustat.2
@@ -111,7 +111,10 @@ The \fBstatvfs\fR(2) function should be used in favor of \fBustat()\fR.
.SH SEE ALSO
.sp
.LP
-\fBstat\fR(2), \fBstatvfs\fR(2), \fBmakedev\fR(3C), \fBlfcompile\fR(5)
+.BR stat (2),
+.BR statvfs (2),
+.BR makedev (3C),
+.BR lfcompile (7)
.SH BUGS
.sp
.LP
diff --git a/usr/src/man/man2/utime.2 b/usr/src/man/man2/utime.2
index e9c7b5827e..2acce57d1c 100644
--- a/usr/src/man/man2/utime.2
+++ b/usr/src/man/man2/utime.2
@@ -175,7 +175,7 @@ The file system containing the file is mounted read-only.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -189,11 +189,15 @@ Interface Stability Committed
_
MT-Level Async-Signal-Safe
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.sp
.LP
-\fBfutimens\fR(2), \fBstat\fR(2), \fButimes\fR(2), \fBattributes\fR(5),
-\fBprivileges\fR(5), \fBstandards\fR(5)
+.BR futimens (2),
+.BR stat (2),
+.BR utimes (2),
+.BR attributes (7),
+.BR privileges (7),
+.BR standards (7)
diff --git a/usr/src/man/man2/utimes.2 b/usr/src/man/man2/utimes.2
index 1c13f99971..fe2bcfd855 100644
--- a/usr/src/man/man2/utimes.2
+++ b/usr/src/man/man2/utimes.2
@@ -97,7 +97,7 @@ file referenced by the file descriptor \fIfildes\fR.
.sp
.LP
The \fBfutimesat()\fR function also sets access and modification times. See
-\fBfsattr\fR(5). If \fIpath\fR is a relative path name, however,
+\fBfsattr\fR(7). If \fIpath\fR is a relative path name, however,
\fBfutimesat()\fR resolves the path relative to the \fIfildes\fR argument
rather than the current working directory. If \fIfildes\fR is set to
\fBAT_FDCWD\fR, defined in <\fBfcntl.h\fR>, \fBfutimesat()\fR resolves the path
@@ -288,7 +288,7 @@ length exceeds {\fIPATH_MAX\fR}.
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -305,7 +305,10 @@ Standard See below.
.sp
.LP
-For \fButimes()\fR, \fButimensat()\fR and \fBfutimensat()\fR, see \fBstandards\fR(5).
+For \fButimes()\fR, \fButimensat()\fR and \fBfutimensat()\fR, see \fBstandards\fR(7).
.SH SEE ALSO
-\fBstat\fR(2), \fButime\fR(2), \fBattributes\fR(5),
-\fBfsattr\fR(5), \fBstandards\fR(5)
+.BR stat (2),
+.BR utime (2),
+.BR attributes (7),
+.BR fsattr (7),
+.BR standards (7)
diff --git a/usr/src/man/man2/uucopy.2 b/usr/src/man/man2/uucopy.2
index 0fd0bd8cc2..ffe990054f 100644
--- a/usr/src/man/man2/uucopy.2
+++ b/usr/src/man/man2/uucopy.2
@@ -48,7 +48,7 @@ Either the \fIs1\fR or \fIs2\fR arguments points to an illegal address.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -66,4 +66,5 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBbcopy\fR(3C), \fBattributes\fR(5)
+.BR bcopy (3C),
+.BR attributes (7)
diff --git a/usr/src/man/man2/vfork.2 b/usr/src/man/man2/vfork.2
index 7cff5d8009..8aa8bd8f23 100644
--- a/usr/src/man/man2/vfork.2
+++ b/usr/src/man/man2/vfork.2
@@ -211,7 +211,7 @@ function is
.Xr posix_spawnp 3C ,
.Xr wait 3C ,
.Xr signal.h 3HEAD ,
-.Xr standards 5
+.Xr standards 7
.Sh NOTES
To avoid a possible deadlock situation, processes that are children in the
middle of a
@@ -270,7 +270,7 @@ The
.Fn vfork
function is available in the following compilation environments.
See
-.Xr standards 5 .
+.Xr standards 7 .
.Lp
.Bl -bullet -compact
.It
diff --git a/usr/src/man/man2/vhangup.2 b/usr/src/man/man2/vhangup.2
index c61a84811c..b0dcca0441 100644
--- a/usr/src/man/man2/vhangup.2
+++ b/usr/src/man/man2/vhangup.2
@@ -16,7 +16,7 @@ vhangup \- virtually "hangup" the current controlling terminal
.sp
.LP
The \fBvhangup()\fR function is used by the initialization process
-\fBinit\fR(1M) (among others) to ensure that users are given "clean" terminals
+\fBinit\fR(8) (among others) to ensure that users are given "clean" terminals
at login by revoking access of the previous users' processes to the terminal.
To effect this, \fBvhangup()\fR searches the system tables for references to
the controlling terminal of the invoking process and revokes access permissions
@@ -27,7 +27,7 @@ controlling terminal.
.SH SEE ALSO
.sp
.LP
-\fBinit\fR(1M)
+.BR init (8)
.SH BUGS
.sp
.LP
diff --git a/usr/src/man/man2/waitid.2 b/usr/src/man/man2/waitid.2
index 0382cee1b0..944273673c 100644
--- a/usr/src/man/man2/waitid.2
+++ b/usr/src/man/man2/waitid.2
@@ -219,7 +219,7 @@ equivalent to \fBwaitpid\fR(3C). With \fIidtype\fR equal to \fBP_ALL\fR and
equivalent to \fBwait\fR(3C).
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -236,6 +236,16 @@ MT-Level Async-Signal-Safe
.SH SEE ALSO
.LP
-\fBIntro\fR(2), \fBexec\fR(2), \fBexit\fR(2), \fBfork\fR(2), \fBpause\fR(2),
-\fBsigaction\fR(2), \fBptrace\fR(3C), \fBsignal\fR(3C), \fBsiginfo.h\fR(3HEAD),
-\fBwait\fR(3C), \fBwaitpid\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR Intro (2),
+.BR exec (2),
+.BR exit (2),
+.BR fork (2),
+.BR pause (2),
+.BR sigaction (2),
+.BR ptrace (3C),
+.BR signal (3C),
+.BR wait (3C),
+.BR waitpid (3C),
+.BR siginfo.h (3HEAD),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man2/write.2 b/usr/src/man/man2/write.2
index 729d67778d..7ebf69973b 100644
--- a/usr/src/man/man2/write.2
+++ b/usr/src/man/man2/write.2
@@ -246,7 +246,7 @@ and if the file is a regular file, the \fBS_ISUID\fR and \fBS_ISGID\fR bits of
the file mode may be cleared.
.sp
.LP
-For streams files (see \fBIntro\fR(2) and \fBstreamio\fR(7I)), the operation of
+For streams files (see \fBIntro\fR(2) and \fBstreamio\fR(4I)), the operation of
\fBwrite()\fR is determined by the values of the minimum and maximum
\fInbyte\fR range ("packet size") accepted by the stream. These values are
contained in the topmost stream module, and can not be set or tested from user
@@ -261,7 +261,7 @@ device sends a zero length message with zero returned. However, writing a
zero-length buffer to a pipe or FIFO sends no message and zero is returned.
The user program may issue the \fBI_SWROPT\fR \fBioctl\fR(2) to enable
zero-length messages to be sent across the pipe or FIFO (see
-\fBstreamio\fR(7I)).
+\fBstreamio\fR(4I)).
.sp
.LP
When writing to a stream, data messages are created with a priority band of
@@ -365,7 +365,7 @@ In addition to the errors documented below, if the \fIfiledes\fR argument refers
to a socket, then an asynchronous error generated by the underlying socket
protocol may be returned. For the full list of errors, please see the
corresponding socket protocol manual page. For example, for a list of TCP
-errors, please see \fBtcp\fR(7P).
+errors, please see \fBtcp\fR(4P).
.LP
The \fBwrite()\fR, \fBpwrite()\fR, \fBwritev()\fR, and \fBpwritev()\fR
functions will fail if:
@@ -625,10 +625,10 @@ overflowed an \fBssize_t\fR.
.SH USAGE
.LP
The \fBpwrite()\fR function has a transitional interface for 64-bit file
-offsets. See \fBlf64\fR(5).
+offsets. See \fBlf64\fR(7).
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -642,13 +642,26 @@ Interface Stability Committed
_
MT-Level \fBwrite()\fR is Async-Signal-Safe
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.LP
-\fBIntro\fR(2), \fBchmod\fR(2), \fBcreat\fR(2), \fBdup\fR(2), \fBfcntl\fR(2),
-\fBgetrlimit\fR(2), \fBioctl\fR(2), \fBlseek\fR(2), \fBopen\fR(2),
-\fBpipe\fR(2), \fBulimit\fR(2), \fBsend\fR(3SOCKET), \fBsocket\fR(3SOCKET),
-\fBattributes\fR(5), \fBlf64\fR(5), \fBstandards\fR(5), \fBstreamio\fR(7I),
-\fBtcp\fR(7P)
+.BR Intro (2),
+.BR chmod (2),
+.BR creat (2),
+.BR dup (2),
+.BR fcntl (2),
+.BR getrlimit (2),
+.BR ioctl (2),
+.BR lseek (2),
+.BR open (2),
+.BR pipe (2),
+.BR ulimit (2),
+.BR send (3SOCKET),
+.BR socket (3SOCKET),
+.BR streamio (4I),
+.BR tcp (4P),
+.BR attributes (7),
+.BR lf64 (7),
+.BR standards (7)
diff --git a/usr/src/man/man2/yield.2 b/usr/src/man/man2/yield.2
index fa14fe6d65..fd14f5581d 100644
--- a/usr/src/man/man2/yield.2
+++ b/usr/src/man/man2/yield.2
@@ -23,4 +23,4 @@ priority.
.SH SEE ALSO
.sp
.LP
-\fBthr_yield\fR(3C)
+.BR thr_yield (3C)
diff --git a/usr/src/man/man3/Intro.3 b/usr/src/man/man3/Intro.3
index fa0469da2b..9ce8548ea9 100644
--- a/usr/src/man/man3/Intro.3
+++ b/usr/src/man/man3/Intro.3
@@ -71,11 +71,11 @@ The standard C library is implemented as a shared object, \fBlibc.so\fR. See
\fBlibc\fR(3LIB) and the "C Compilation System" chapter of the \fIANSI C
Programmer's Guide\fR for a discussion. Some functions behave differently in
standard-conforming environments. This behavior is noted on the individual
-manual pages. See \fBstandards\fR(5).
+manual pages. See \fBstandards\fR(7).
.sp
The \fBlibpthread\fR and \fBlibthread\fR libraries are filter libraries on
\fBlibc\fR that are used for building multithreaded applications:
-\fBlibpthread\fR implements the POSIX (see \fBstandards\fR(5)) threads
+\fBlibpthread\fR implements the POSIX (see \fBstandards\fR(7)) threads
interface, whereas \fBlibthread\fR implements the Solaris threads interface.
See \fBMULTITHREADED APPLICATIONS\fR, below.
.RE
@@ -296,13 +296,13 @@ X/Open CAE Specification, Networking Services, Issue 4 (September, 1994). This
library is implemented as a shared object, \fBlibxnet.so\fR, but is not
automatically linked by the C compilation system. Specify \fB-lxnet\fR on the
\fBcc\fR command line to link with this library. See \fBlibxnet\fR(3LIB) and
-\fBstandards\fR(5) for compilation information.
+\fBstandards\fR(7) for compilation information.
.RE
.sp
.LP
Under all circumstances, the use of the Sockets API is recommended over the XTI
-and TLI APIs. If portability to other XPGV4v2 (see \fBstandards\fR(5)) systems
+and TLI APIs. If portability to other XPGV4v2 (see \fBstandards\fR(7)) systems
is a requirement, the application must use the \fBlibxnet\fR interfaces. If
portability is not required, the sockets interfaces in \fBlibsocket\fR and
\fBlibnsl\fR are recommended over those in \fBlibxnet\fR. Between the XTI and
@@ -1034,7 +1034,7 @@ application's safety.
.sp
.LP
MT-Safe interfaces are denoted in the \fBATTRIBUTES\fR section of the functions
-and libraries manual pages (see \fBattributes\fR(5)). If a manual page does not
+and libraries manual pages (see \fBattributes\fR(7)). If a manual page does not
state explicitly that an interface is MT-Safe, the user should assume that the
interface is unsafe.
.SH REALTIME APPLICATIONS
@@ -1097,8 +1097,12 @@ http://www.opengroup.org/unix/online.html\&.
.LP
This notice shall appear on any product containing this material.
.SH SEE ALSO
-\fBar\fR(1), \fBld\fR(1), \fBfork\fR(2), \fBstdio\fR(3C), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR ar (1),
+.BR ld (1),
+.BR fork (2),
+.BR stdio (3C),
+.BR attributes (7),
+.BR standards (7)
.sp
.LP
\fILinker and Libraries Guide\fR
diff --git a/usr/src/man/man3/hosts_access.3 b/usr/src/man/man3/hosts_access.3
index 5a3842002d..29959ff8e5 100644
--- a/usr/src/man/man3/hosts_access.3
+++ b/usr/src/man/man3/hosts_access.3
@@ -56,7 +56,7 @@ The name of the daemon process running on the server host.
The name of the user on whose behalf the client host makes the request.
.PP
hosts_access() consults the access control tables described in the
-\fIhosts_access\fR(4) manual page. When internal endpoint information
+\fIhosts_access\fR(5) manual page. When internal endpoint information
is available, host names and client user names are looked up on demand,
using the request structure as a cache. hosts_access() returns zero if
access should be denied.
@@ -75,8 +75,8 @@ tables.
.SH DIAGNOSTICS
Problems are reported via the syslog daemon.
.SH SEE ALSO
-hosts_access(4), format of the access control tables.
-hosts_options(4), optional extensions to the base language.
+hosts_access(5), format of the access control tables.
+hosts_options(5), optional extensions to the base language.
.SH FILES
/etc/hosts.allow, /etc/hosts.deny, access control tables.
.SH BUGS
diff --git a/usr/src/man/man3bsm/au_open.3bsm b/usr/src/man/man3bsm/au_open.3bsm
index cb023a5ddb..27f46eb4f8 100644
--- a/usr/src/man/man3bsm/au_open.3bsm
+++ b/usr/src/man/man3bsm/au_open.3bsm
@@ -90,7 +90,7 @@ later.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -107,5 +107,9 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBaudit\fR(2), \fBauditon\fR(2), \fBau_preselect\fR(3BSM),
-\fBau_to\fR(3BSM), \fBfree\fR(3C), \fBattributes\fR(5)
+.BR audit (2),
+.BR auditon (2),
+.BR au_preselect (3BSM),
+.BR au_to (3BSM),
+.BR free (3C),
+.BR attributes (7)
diff --git a/usr/src/man/man3bsm/au_preselect.3bsm b/usr/src/man/man3bsm/au_preselect.3bsm
index d18444762a..c0fa6a6b23 100644
--- a/usr/src/man/man3bsm/au_preselect.3bsm
+++ b/usr/src/man/man3bsm/au_preselect.3bsm
@@ -21,7 +21,7 @@ The \fBau_preselect()\fR function determines whether the audit event
\fIevent\fR is preselected against the binary preselection mask pointed to by
\fImask_p\fR (usually obtained by a call to \fBgetaudit\fR(2)). The
\fBau_preselect()\fR function looks up the classes associated with \fIevent\fR
-in \fBaudit_event\fR(4) and compares them with the classes in \fImask_p\fR. If
+in \fBaudit_event\fR(5) and compares them with the classes in \fImask_p\fR. If
the classes associated with \fIevent\fR match the classes in the specified
portions of the binary preselection mask pointed to by \fImask_p\fR, the event
is said to be preselected.
@@ -64,8 +64,8 @@ preselection mask.
.sp
.LP
The \fIflag\fR argument tells \fBau_preselect()\fR how to read the
-\fBaudit_event\fR(4) database. Upon initial invocation, \fBau_preselect()\fR
-reads the \fBaudit_event\fR(4) database and allocates space in an internal
+\fBaudit_event\fR(5) database. Upon initial invocation, \fBau_preselect()\fR
+reads the \fBaudit_event\fR(5) database and allocates space in an internal
cache for each entry with \fBmalloc\fR(3C). In subsequent invocations, the
value of \fIflag\fR determines where \fBau_preselect()\fR obtains audit event
information. The following are the valid values of \fIflag\fR:
@@ -75,7 +75,7 @@ information. The following are the valid values of \fIflag\fR:
\fB\fBAU_PRS_REREAD\fR\fR
.ad
.RS 19n
-Get audit event information by searching the \fBaudit_event\fR(4) database.
+Get audit event information by searching the \fBaudit_event\fR(5) database.
.RE
.sp
@@ -92,7 +92,7 @@ invocation. This option is much faster.
.LP
Upon successful completion,\fBau_preselect()\fR returns 0 if \fIevent\fR is not
preselected or 1 if \fIevent\fR is preselected. If \fBau_preselect()\fR could
-not allocate memory or could not find \fIevent\fR in the \fBaudit_event\fR(4)
+not allocate memory or could not find \fIevent\fR in the \fBaudit_event\fR(5)
database, \(mi1 is returned.
.SH FILES
.ne 2
@@ -115,7 +115,7 @@ associated audit classes
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for a description of the following attributes:
+See \fBattributes\fR(7) for a description of the following attributes:
.sp
.sp
@@ -132,9 +132,14 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBgetaudit\fR(2), \fBau_open\fR(3BSM),
-\fBgetauclassent\fR(3BSM), \fBgetauevent\fR(3BSM), \fBmalloc\fR(3C),
-\fBaudit_class\fR(4), \fBaudit_event\fR(4), \fBattributes\fR(5)
+.BR getaudit (2),
+.BR au_open (3BSM),
+.BR getauclassent (3BSM),
+.BR getauevent (3BSM),
+.BR malloc (3C),
+.BR audit_class (5),
+.BR audit_event (5),
+.BR attributes (7)
.SH NOTES
.LP
The \fBau_preselect()\fR function is normally called prior to constructing and
diff --git a/usr/src/man/man3bsm/au_to.3bsm b/usr/src/man/man3bsm/au_to.3bsm
index 623a4175d5..fa15d8bf79 100644
--- a/usr/src/man/man3bsm/au_to.3bsm
+++ b/usr/src/man/man3bsm/au_to.3bsm
@@ -255,7 +255,7 @@ These functions return \fINULL\fR if memory cannot be allocated to put the
resultant token into, or if an error in the input is detected.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for a description of the following attributes:
+See \fBattributes\fR(7) for a description of the following attributes:
.sp
.sp
@@ -272,4 +272,5 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBau_open\fR(3BSM), \fBattributes\fR(5)
+.BR au_open (3BSM),
+.BR attributes (7)
diff --git a/usr/src/man/man3bsm/au_user_mask.3bsm b/usr/src/man/man3bsm/au_user_mask.3bsm
index b5901051be..4ece2b3c03 100644
--- a/usr/src/man/man3bsm/au_user_mask.3bsm
+++ b/usr/src/man/man3bsm/au_user_mask.3bsm
@@ -45,7 +45,7 @@ Upon successful completion, \fBau_user_mask()\fR returns 0.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -62,8 +62,11 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBlogin\fR(1), \fBgetaudit\fR(2), \fBsetaudit\fR(2),
-\fBau_preselect\fR(3BSM), \fBattributes\fR(5)
+.BR login (1),
+.BR getaudit (2),
+.BR setaudit (2),
+.BR au_preselect (3BSM),
+.BR attributes (7)
.SH NOTES
.LP
The \fBau_user_mask()\fR function should be called by programs like
diff --git a/usr/src/man/man3bsm/getauclassent.3bsm b/usr/src/man/man3bsm/getauclassent.3bsm
index db4101ebd8..88ba6d5126 100644
--- a/usr/src/man/man3bsm/getauclassent.3bsm
+++ b/usr/src/man/man3bsm/getauclassent.3bsm
@@ -112,7 +112,7 @@ file that aps audit class numbers to audit class names
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -134,8 +134,9 @@ functionality as the Unsafe functions, but have a slightly different function
call interface to make them MT-Safe.
.SH SEE ALSO
.LP
-\fBaudit_class\fR(4), \fBaudit_event\fR(4),
-\fBattributes\fR(5)
+.BR audit_class (5),
+.BR audit_event (5),
+.BR attributes (7)
.SH NOTES
.LP
All information is contained in a static area, so it must be copied if it is to
diff --git a/usr/src/man/man3bsm/getauditflags.3bsm b/usr/src/man/man3bsm/getauditflags.3bsm
index 47a2008921..c98d0cad3e 100644
--- a/usr/src/man/man3bsm/getauditflags.3bsm
+++ b/usr/src/man/man3bsm/getauditflags.3bsm
@@ -48,7 +48,7 @@ Upon successful completion, \fBgetauditflagsbin()\fR and
\fBgetauditflagschar()\fR return 0. Otherwise they return \(mi1.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -63,7 +63,8 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBaudit.log\fR(4), \fBattributes\fR(5)
+.BR audit.log (5),
+.BR attributes (7)
.SH BUGS
.LP
This is not a very extensible interface.
diff --git a/usr/src/man/man3bsm/getauevent.3bsm b/usr/src/man/man3bsm/getauevent.3bsm
index ef689b9d82..35d68a9bb9 100644
--- a/usr/src/man/man3bsm/getauevent.3bsm
+++ b/usr/src/man/man3bsm/getauevent.3bsm
@@ -61,7 +61,7 @@ getauevent_r, getauevnam_r, getauevnum_r \- get audit_event entry
.SH DESCRIPTION
.LP
These functions document the programming interface for obtaining entries from
-the \fBaudit_event\fR(4) file. The \fBgetauevent()\fR, \fBgetauevnam()\fR,
+the \fBaudit_event\fR(5) file. The \fBgetauevent()\fR, \fBgetauevnam()\fR,
\fBgetauevnum()\fR, \fBgetauevent()\fR, \fBgetauevnam()\fR, and
\fBgetauevnum()\fR functions each return a pointer to an \fBaudit_event\fR
structure.
@@ -150,7 +150,7 @@ file that stores user-ID to username mappings
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -171,9 +171,12 @@ are Unsafe. The equivalent functions \fBgetauevent_r()\fR,
and an MT-Safe function call interface.
.SH SEE ALSO
.LP
-\fBgetauclassent\fR(3BSM), \fBgetpwnam\fR(3C),
-\fBaudit_class\fR(4), \fBaudit_event\fR(4), \fBpasswd\fR(4),
-\fBattributes\fR(5)
+.BR getauclassent (3BSM),
+.BR getpwnam (3C),
+.BR audit_class (5),
+.BR audit_event (5),
+.BR passwd (5),
+.BR attributes (7)
.SH NOTES
.LP
All information for the \fBgetauevent()\fR, \fBgetauevnam()\fR, and
diff --git a/usr/src/man/man3bsm/getfauditflags.3bsm b/usr/src/man/man3bsm/getfauditflags.3bsm
index 1f9f0b1ea4..f40bb35acd 100644
--- a/usr/src/man/man3bsm/getfauditflags.3bsm
+++ b/usr/src/man/man3bsm/getfauditflags.3bsm
@@ -49,7 +49,7 @@ Upon successful completion, \fBgetfauditflags()\fR returns 0. Otherwise it
returns \fB\(mi1\fR\&.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -64,4 +64,6 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBgetauditflags\fR(3BSM), \fBaudit.log\fR(4), \fBattributes\fR(5)
+.BR getauditflags (3BSM),
+.BR audit.log (5),
+.BR attributes (7)
diff --git a/usr/src/man/man3c/__fbufsize.3c b/usr/src/man/man3c/__fbufsize.3c
index e6dc9fe385..328b048c76 100644
--- a/usr/src/man/man3c/__fbufsize.3c
+++ b/usr/src/man/man3c/__fbufsize.3c
@@ -150,7 +150,7 @@ under development.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -170,5 +170,10 @@ Interface Stability Evolving
.SH SEE ALSO
.sp
.LP
-\fBfgetc\fR(3C), \fBflockfile\fR(3C), \fBfputc\fR(3C), \fBfread\fR(3C),
-\fBfwrite\fR(3C), \fBstdio\fR(3C), \fBattributes\fR(5)
+.BR fgetc (3C),
+.BR flockfile (3C),
+.BR fputc (3C),
+.BR fread (3C),
+.BR fwrite (3C),
+.BR stdio (3C),
+.BR attributes (7)
diff --git a/usr/src/man/man3c/_longjmp.3c b/usr/src/man/man3c/_longjmp.3c
index 62dfb59dc5..c754a5a35c 100644
--- a/usr/src/man/man3c/_longjmp.3c
+++ b/usr/src/man/man3c/_longjmp.3c
@@ -106,7 +106,7 @@ programs written to historical system interfaces. New applications should use
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -122,5 +122,9 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBlongjmp\fR(3C), \fBsetjmp\fR(3C), \fBsiglongjmp\fR(3C), \fBsigsetjmp\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR longjmp (3C),
+.BR setjmp (3C),
+.BR siglongjmp (3C),
+.BR sigsetjmp (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/_stack_grow.3c b/usr/src/man/man3c/_stack_grow.3c
index 4d0cad8b91..2b24429718 100644
--- a/usr/src/man/man3c/_stack_grow.3c
+++ b/usr/src/man/man3c/_stack_grow.3c
@@ -60,7 +60,7 @@ stack-based storage safely.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -78,8 +78,10 @@ MT-Level Async-Signal-Safe
.SH SEE ALSO
.sp
.LP
-\fBstack_getbounds\fR(3C), \fBstack_inbounds\fR(3C), \fBstack_violation\fR(3C),
-\fBattributes\fR(5)
+.BR stack_getbounds (3C),
+.BR stack_inbounds (3C),
+.BR stack_violation (3C),
+.BR attributes (7)
.sp
.LP
Solaris 64-bit Developer's Guide
diff --git a/usr/src/man/man3c/a64l.3c b/usr/src/man/man3c/a64l.3c
index 7cf18d0f6c..8351d5254e 100644
--- a/usr/src/man/man3c/a64l.3c
+++ b/usr/src/man/man3c/a64l.3c
@@ -69,7 +69,7 @@ applications, the return value is a pointer to thread specific data.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -87,4 +87,5 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/abort.3c b/usr/src/man/man3c/abort.3c
index ca9c8c4cc8..ecd4ee15c7 100644
--- a/usr/src/man/man3c/abort.3c
+++ b/usr/src/man/man3c/abort.3c
@@ -48,7 +48,7 @@ produced.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -66,6 +66,13 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBexit\fR(2), \fBgetrlimit\fR(2), \fBkill\fR(2), \fBfclose\fR(3C),
-\fBraise\fR(3C), \fBsignal\fR(3C), \fBwait\fR(3C), \fBwaitpid\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR exit (2),
+.BR getrlimit (2),
+.BR kill (2),
+.BR fclose (3C),
+.BR raise (3C),
+.BR signal (3C),
+.BR wait (3C),
+.BR waitpid (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/abs.3c b/usr/src/man/man3c/abs.3c
index 7667e119a0..6b52f3bea5 100644
--- a/usr/src/man/man3c/abs.3c
+++ b/usr/src/man/man3c/abs.3c
@@ -43,7 +43,7 @@ negative integral value is undefined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -61,4 +61,5 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/addsev.3c b/usr/src/man/man3c/addsev.3c
index 8708b51da9..7f951ce8ad 100644
--- a/usr/src/man/man3c/addsev.3c
+++ b/usr/src/man/man3c/addsev.3c
@@ -61,7 +61,7 @@ APPL: PANIC: Cannot locate database
.in -2
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -75,4 +75,7 @@ MT-Level MT-safe
.TE
.SH SEE ALSO
-\fBgettxt\fR(3C), \fBlfmt\fR(3C), \fBpfmt\fR(3C), \fBattributes\fR(5)
+.BR gettxt (3C),
+.BR lfmt (3C),
+.BR pfmt (3C),
+.BR attributes (7)
diff --git a/usr/src/man/man3c/addseverity.3c b/usr/src/man/man3c/addseverity.3c
index 2d005e36e0..31a3b247c9 100644
--- a/usr/src/man/man3c/addseverity.3c
+++ b/usr/src/man/man3c/addseverity.3c
@@ -136,7 +136,7 @@ TO FIX: refer to manual UX:cat:001
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -152,5 +152,8 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBfmtmsg\fR(1), \fBfmtmsg\fR(3C), \fBgettxt\fR(3C), \fBprintf\fR(3C),
-\fBattributes\fR(5)
+.BR fmtmsg (1),
+.BR fmtmsg (3C),
+.BR gettxt (3C),
+.BR printf (3C),
+.BR attributes (7)
diff --git a/usr/src/man/man3c/aio_cancel.3c b/usr/src/man/man3c/aio_cancel.3c
index e4b18013d3..b895d741b0 100644
--- a/usr/src/man/man3c/aio_cancel.3c
+++ b/usr/src/man/man3c/aio_cancel.3c
@@ -120,11 +120,11 @@ The \fBaio_cancel()\fR function is not supported.
.sp
.LP
The \fBaio_cancel()\fR function has a transitional interface for 64-bit file
-offsets. See \fBlf64\fR(5).
+offsets. See \fBlf64\fR(7).
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -138,14 +138,19 @@ Interface Stability Committed
_
MT-Level MT-Safe
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.sp
.LP
-\fBaio.h\fR(3HEAD), \fBsignal.h\fR(3HEAD), \fBaio_read\fR(3C),
-\fBaio_return\fR(3C), \fBattributes\fR(5), \fBlf64\fR(5), \fBstandards\fR(5)
+.BR aio_read (3C),
+.BR aio_return (3C),
+.BR aio.h (3HEAD),
+.BR signal.h (3HEAD),
+.BR attributes (7),
+.BR lf64 (7),
+.BR standards (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3c/aio_error.3c b/usr/src/man/man3c/aio_error.3c
index 84b9a84b5d..bfd9a17931 100644
--- a/usr/src/man/man3c/aio_error.3c
+++ b/usr/src/man/man3c/aio_error.3c
@@ -90,7 +90,7 @@ return status has not yet been retrieved.
.sp
.LP
The \fBaio_error()\fR function has a transitional interface for 64-bit file
-offsets. See \fBlf64\fR(5).
+offsets. See \fBlf64\fR(7).
.SH EXAMPLES
.LP
\fBExample 1 \fRThe following is an example of an error handling routine using
@@ -137,7 +137,7 @@ my_aiocbp = siginfo->si_value.sival_ptr;
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -151,14 +151,26 @@ Interface Stability Committed
_
MT-Level Async-Signal-Safe
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.sp
.LP
-\fB_Exit\fR(2), \fBclose\fR(2), \fBfork\fR(2), \fBlseek\fR(2), \fBread\fR(2),
-\fBwrite\fR(2), \fBaio.h\fR(3HEAD), \fBaio_cancel\fR(3C), \fBaio_fsync\fR(3C),
-\fBaio_read\fR(3C), \fBaio_return\fR(3C), \fBaio_write\fR(3C),
-\fBlio_listio\fR(3C), \fBsignal.h\fR(3HEAD), \fBattributes\fR(5),
-\fBlf64\fR(5), \fBstandards\fR(5)
+.BR _Exit (2),
+.BR close (2),
+.BR fork (2),
+.BR lseek (2),
+.BR read (2),
+.BR write (2),
+.BR aio_cancel (3C),
+.BR aio_fsync (3C),
+.BR aio_read (3C),
+.BR aio_return (3C),
+.BR aio_write (3C),
+.BR lio_listio (3C),
+.BR aio.h (3HEAD),
+.BR signal.h (3HEAD),
+.BR attributes (7),
+.BR lf64 (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/aio_fsync.3c b/usr/src/man/man3c/aio_fsync.3c
index 3ad892367a..e4ef413609 100644
--- a/usr/src/man/man3c/aio_fsync.3c
+++ b/usr/src/man/man3c/aio_fsync.3c
@@ -163,11 +163,11 @@ operation, which can be retrieved using \fBaio_error\fR(3C).
.sp
.LP
The \fBaio_fsync()\fR function has a transitional interface for 64-bit file
-offsets. See \fBlf64\fR(5).
+offsets. See \fBlf64\fR(7).
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -181,13 +181,23 @@ Interface Stability Committed
_
MT-Level MT-Safe
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.sp
.LP
-\fBfcntl\fR(2), \fBopen\fR(2), \fBread\fR(2), \fBwrite\fR(2),
-\fBaio_error\fR(3C), \fBaio_return\fR(3C), \fBaio.h\fR(3HEAD),
-\fBfcntl.h\fR(3HEAD), \fBfdatasync\fR(3C), \fBfsync\fR(3C),
-\fBsignal.h\fR(3HEAD), \fBattributes\fR(5), \fBlf64\fR(5), \fBstandards\fR(5)
+.BR fcntl (2),
+.BR open (2),
+.BR read (2),
+.BR write (2),
+.BR aio_error (3C),
+.BR aio_return (3C),
+.BR fdatasync (3C),
+.BR fsync (3C),
+.BR aio.h (3HEAD),
+.BR fcntl.h (3HEAD),
+.BR signal.h (3HEAD),
+.BR attributes (7),
+.BR lf64 (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/aio_read.3c b/usr/src/man/man3c/aio_read.3c
index d983913949..d4144462f1 100644
--- a/usr/src/man/man3c/aio_read.3c
+++ b/usr/src/man/man3c/aio_read.3c
@@ -221,11 +221,11 @@ For portability, the application should set \fIaiocb->\fR\fBaio_reqprio\fR to
.sp
.LP
The \fBaio_read()\fR function has a transitional interface for 64-bit file
-offsets. See \fBlf64\fR(5).
+offsets. See \fBlf64\fR(7).
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -239,13 +239,25 @@ Interface Stability Committed
_
MT-Level MT-Safe
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.sp
.LP
-\fBclose\fR(2), \fBexec\fR(2), \fBexit\fR(2), \fBfork\fR(2), \fBlseek\fR(2),
-\fBread\fR(2), \fBwrite\fR(2), \fBaio_cancel\fR(3C), \fBaio_return\fR(3C),
-\fBaio.h\fR(3HEAD), \fBlio_listio\fR(3C), \fBsiginfo.h\fR(3HEAD),
-\fBsignal.h\fR(3HEAD), \fBattributes\fR(5), \fBlf64\fR(5), \fBstandards\fR(5)
+.BR close (2),
+.BR exec (2),
+.BR exit (2),
+.BR fork (2),
+.BR lseek (2),
+.BR read (2),
+.BR write (2),
+.BR aio_cancel (3C),
+.BR aio_return (3C),
+.BR lio_listio (3C),
+.BR aio.h (3HEAD),
+.BR siginfo.h (3HEAD),
+.BR signal.h (3HEAD),
+.BR attributes (7),
+.BR lf64 (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/aio_return.3c b/usr/src/man/man3c/aio_return.3c
index 30acedf486..fd2f142794 100644
--- a/usr/src/man/man3c/aio_return.3c
+++ b/usr/src/man/man3c/aio_return.3c
@@ -104,11 +104,11 @@ The \fBaio_return()\fR function is not supported by the system.
.sp
.LP
The \fBaio_return()\fR function has a transitional interface for 64-bit file
-offsets. See \fBlf64\fR(5).
+offsets. See \fBlf64\fR(7).
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -122,17 +122,29 @@ Interface Stability Committed
_
MT-Level Async-Signal-Safe
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.sp
.LP
-\fBclose\fR(2), \fBexec\fR(2), \fBexit\fR(2), \fBfork\fR(2), \fBlseek\fR(2),
-\fBread\fR(2), \fBwrite\fR(2), \fBfsync\fR(3C), \fBaio.h\fR(3HEAD),
-\fBsignal.h\fR(3HEAD), \fBaio_cancel\fR(3C), \fBaio_fsync\fR(3C),
-\fBaio_read\fR(3C), \fBlio_listio\fR(3C), \fBattributes\fR(5), \fBlf64\fR(5),
-\fBstandards\fR(5)
+.BR close (2),
+.BR exec (2),
+.BR exit (2),
+.BR fork (2),
+.BR lseek (2),
+.BR read (2),
+.BR write (2),
+.BR aio_cancel (3C),
+.BR aio_fsync (3C),
+.BR aio_read (3C),
+.BR fsync (3C),
+.BR lio_listio (3C),
+.BR aio.h (3HEAD),
+.BR signal.h (3HEAD),
+.BR attributes (7),
+.BR lf64 (7),
+.BR standards (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3c/aio_suspend.3c b/usr/src/man/man3c/aio_suspend.3c
index 5349b1910b..ceb3543148 100644
--- a/usr/src/man/man3c/aio_suspend.3c
+++ b/usr/src/man/man3c/aio_suspend.3c
@@ -151,11 +151,11 @@ The \fBaio_suspend()\fR function is not supported by the system.
.sp
.LP
The \fBaio_suspend()\fR function has a transitional interface for 64-bit file
-offsets. See \fBlf64\fR(5).
+offsets. See \fBlf64\fR(7).
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -169,15 +169,22 @@ Interface Stability Committed
_
MT-Level Async-Signal-Safe
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.sp
.LP
-\fBaio.h\fR(3HEAD), \fBaio_fsync\fR(3C), \fBaio_read\fR(3C),
-\fBaio_return\fR(3C), \fBaio_write\fR(3C), \fBlio_listio\fR(3C),
-\fBsignal.h\fR(3HEAD), \fBattributes\fR(5), \fBlf64\fR(5), \fBstandards\fR(5)
+.BR aio_fsync (3C),
+.BR aio_read (3C),
+.BR aio_return (3C),
+.BR aio_write (3C),
+.BR lio_listio (3C),
+.BR aio.h (3HEAD),
+.BR signal.h (3HEAD),
+.BR attributes (7),
+.BR lf64 (7),
+.BR standards (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3c/aio_waitn.3c b/usr/src/man/man3c/aio_waitn.3c
index 756eaa187e..37cb35c3b2 100644
--- a/usr/src/man/man3c/aio_waitn.3c
+++ b/usr/src/man/man3c/aio_waitn.3c
@@ -136,11 +136,11 @@ completed.
.sp
.LP
The \fBaio_waitn()\fR function has a transitional interface for 64-bit file
-offsets. See \fBlf64\fR(5).
+offsets. See \fBlf64\fR(7).
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -158,6 +158,11 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBaio.h\fR(3HEAD), \fBaio_error\fR(3C), \fBaio_read\fR(3C),
-\fBaio_write\fR(3C), \fBlio_listio\fR(3C), \fBaio_return\fR(3C),
-\fBattributes\fR(5), \fBlf64\fR(5)
+.BR aio_error (3C),
+.BR aio_read (3C),
+.BR aio_return (3C),
+.BR aio_write (3C),
+.BR lio_listio (3C),
+.BR aio.h (3HEAD),
+.BR attributes (7),
+.BR lf64 (7)
diff --git a/usr/src/man/man3c/aio_write.3c b/usr/src/man/man3c/aio_write.3c
index a087793132..72e11546f8 100644
--- a/usr/src/man/man3c/aio_write.3c
+++ b/usr/src/man/man3c/aio_write.3c
@@ -219,11 +219,11 @@ offset maximum in the open file description associated with
.sp
.LP
The \fBaio_write()\fR function has a transitional interface for 64-bit file
-offsets. See \fBlf64\fR(5).
+offsets. See \fBlf64\fR(7).
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -237,13 +237,24 @@ Interface Stability Committed
_
MT-Level MT-Safe
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.sp
.LP
-\fBaio_cancel\fR(3C), \fBaio_error\fR(3C), \fBaio_read\fR(3C),
-\fBaio_return\fR(3C), \fBlio_listio\fR(3C), \fBclose\fR(2), \fB_Exit\fR(2),
-\fBfork\fR(2), \fBlseek\fR(2), \fBwrite\fR(2), \fBaio.h\fR(3HEAD),
-\fBsignal.h\fR(3HEAD), \fBattributes\fR(5), \fBlf64\fR(5), \fBstandards\fR(5)
+.BR _Exit (2),
+.BR close (2),
+.BR fork (2),
+.BR lseek (2),
+.BR write (2),
+.BR aio_cancel (3C),
+.BR aio_error (3C),
+.BR aio_read (3C),
+.BR aio_return (3C),
+.BR lio_listio (3C),
+.BR aio.h (3HEAD),
+.BR signal.h (3HEAD),
+.BR attributes (7),
+.BR lf64 (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/aiocancel.3c b/usr/src/man/man3c/aiocancel.3c
index 3ab34f9e44..51b3f9e417 100644
--- a/usr/src/man/man3c/aiocancel.3c
+++ b/usr/src/man/man3c/aiocancel.3c
@@ -69,7 +69,7 @@ There are not any outstanding requests to cancel.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -85,7 +85,9 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBaioread\fR(3C), \fBaiowait\fR(3C), \fBattributes\fR(5)
+.BR aioread (3C),
+.BR aiowait (3C),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3c/aioread.3c b/usr/src/man/man3c/aioread.3c
index 1a790d07e8..5e6ab05184 100644
--- a/usr/src/man/man3c/aioread.3c
+++ b/usr/src/man/man3c/aioread.3c
@@ -164,10 +164,10 @@ Memory resources are unavailable to initiate request.
.SH USAGE
.LP
The \fBaioread()\fR and \fBaiowrite()\fR functions have transitional interfaces
-for 64-bit file offsets. See \fBlf64\fR(5).
+for 64-bit file offsets. See \fBlf64\fR(7).
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -182,7 +182,15 @@ MT-Level Safe
.SH SEE ALSO
.LP
-\fBclose\fR(2), \fBexecve\fR(2), \fBexit\fR(2), \fBllseek\fR(2),
-\fBlseek\fR(2), \fBopen\fR(2), \fBread\fR(2), \fBwrite\fR(2),
-\fBaiocancel\fR(3C), \fBaiowait\fR(3C),
-\fBattributes\fR(5), \fBlf64\fR(5)
+.BR close (2),
+.BR execve (2),
+.BR exit (2),
+.BR llseek (2),
+.BR lseek (2),
+.BR open (2),
+.BR read (2),
+.BR write (2),
+.BR aiocancel (3C),
+.BR aiowait (3C),
+.BR attributes (7),
+.BR lf64 (7)
diff --git a/usr/src/man/man3c/aiowait.3c b/usr/src/man/man3c/aiowait.3c
index 14408ea7fb..bc3f9ec42e 100644
--- a/usr/src/man/man3c/aiowait.3c
+++ b/usr/src/man/man3c/aiowait.3c
@@ -93,7 +93,7 @@ number of seconds in a microsecond.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -109,7 +109,9 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBaiocancel\fR(3C), \fBaioread\fR(3C), \fBattributes\fR(5)
+.BR aiocancel (3C),
+.BR aioread (3C),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3c/aligned_alloc.3c b/usr/src/man/man3c/aligned_alloc.3c
index 9e9a857b19..a3beda6bdd 100644
--- a/usr/src/man/man3c/aligned_alloc.3c
+++ b/usr/src/man/man3c/aligned_alloc.3c
@@ -73,4 +73,4 @@ It is not a power of two multiple of the word size.
.Xr malloc 3C ,
.Xr memalign 3C ,
.Xr posix_memalign 3C ,
-.Xr attributes 5
+.Xr attributes 7
diff --git a/usr/src/man/man3c/arc4random.3c b/usr/src/man/man3c/arc4random.3c
index 0945f82ed9..ae2ca81b4a 100644
--- a/usr/src/man/man3c/arc4random.3c
+++ b/usr/src/man/man3c/arc4random.3c
@@ -59,7 +59,7 @@ consumption because the other interfaces are deficient in either
quality, portability, standardization, or availability.
These functions can be called in almost all coding environments,
including
-.Xr pthreads 5
+.Xr pthreads 7
and
.Xr chroot 2 .
.Pp
diff --git a/usr/src/man/man3c/assert.3c b/usr/src/man/man3c/assert.3c
index b393225010..7de0342833 100644
--- a/usr/src/man/man3c/assert.3c
+++ b/usr/src/man/man3c/assert.3c
@@ -50,7 +50,7 @@ Messages printed from this function are in the native language specified by the
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -64,11 +64,14 @@ Interface Stability Committed
_
MT-Level Safe
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.sp
.LP
-\fBabort\fR(3C), \fBgettext\fR(3C), \fBsetlocale\fR(3C), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR abort (3C),
+.BR gettext (3C),
+.BR setlocale (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/atexit.3c b/usr/src/man/man3c/atexit.3c
index 4c44887a16..c8235dc2a1 100644
--- a/usr/src/man/man3c/atexit.3c
+++ b/usr/src/man/man3c/atexit.3c
@@ -110,7 +110,7 @@ registered with \fBatexit()\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -128,5 +128,8 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBexec\fR(2), \fBdlclose\fR(3C), \fBexit\fR(3C), \fBsysconf\fR(3C),
-\fBattributes\fR(5)
+.BR exec (2),
+.BR dlclose (3C),
+.BR exit (3C),
+.BR sysconf (3C),
+.BR attributes (7)
diff --git a/usr/src/man/man3c/atomic_add.3c b/usr/src/man/man3c/atomic_add.3c
index 670efab3fb..33e40c9cf3 100644
--- a/usr/src/man/man3c/atomic_add.3c
+++ b/usr/src/man/man3c/atomic_add.3c
@@ -120,7 +120,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -138,10 +138,16 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBatomic_and\fR(3C), \fBatomic_bits\fR(3C), \fBatomic_cas\fR(3C),
-\fBatomic_dec\fR(3C), \fBatomic_inc\fR(3C), \fBatomic_or\fR(3C),
-\fBatomic_swap\fR(3C), \fBmembar_ops\fR(3C), \fBattributes\fR(5),
-\fBatomic_ops\fR(9F)
+.BR atomic_and (3C),
+.BR atomic_bits (3C),
+.BR atomic_cas (3C),
+.BR atomic_dec (3C),
+.BR atomic_inc (3C),
+.BR atomic_or (3C),
+.BR atomic_swap (3C),
+.BR membar_ops (3C),
+.BR attributes (7),
+.BR atomic_ops (9F)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3c/atomic_and.3c b/usr/src/man/man3c/atomic_and.3c
index c8c15fd251..42026c38ee 100644
--- a/usr/src/man/man3c/atomic_and.3c
+++ b/usr/src/man/man3c/atomic_and.3c
@@ -110,7 +110,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -128,10 +128,16 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBatomic_add\fR(3C), \fBatomic_bits\fR(3C), \fBatomic_cas\fR(3C),
-\fBatomic_dec\fR(3C), \fBatomic_inc\fR(3C), \fBatomic_or\fR(3C),
-\fBatomic_swap\fR(3C), \fBmembar_ops\fR(3C), \fBattributes\fR(5),
-\fBatomic_ops\fR(9F)
+.BR atomic_add (3C),
+.BR atomic_bits (3C),
+.BR atomic_cas (3C),
+.BR atomic_dec (3C),
+.BR atomic_inc (3C),
+.BR atomic_or (3C),
+.BR atomic_swap (3C),
+.BR membar_ops (3C),
+.BR attributes (7),
+.BR atomic_ops (9F)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3c/atomic_bits.3c b/usr/src/man/man3c/atomic_bits.3c
index 34ac0a78fa..3163b07401 100644
--- a/usr/src/man/man3c/atomic_bits.3c
+++ b/usr/src/man/man3c/atomic_bits.3c
@@ -38,7 +38,7 @@ return 0 if \fIbit\fR was successfully set or cleared. They return -1 if
No errors are defined.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -55,7 +55,13 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBatomic_add\fR(3C), \fBatomic_and\fR(3C), \fBatomic_cas\fR(3C),
-\fBatomic_dec\fR(3C), \fBatomic_inc\fR(3C), \fBatomic_ops\fR(3C),
-\fBatomic_or\fR(3C), \fBatomic_swap\fR(3C), \fBmembar_ops\fR(3C),
-\fBattributes\fR(5)
+.BR atomic_add (3C),
+.BR atomic_and (3C),
+.BR atomic_cas (3C),
+.BR atomic_dec (3C),
+.BR atomic_inc (3C),
+.BR atomic_ops (3C),
+.BR atomic_or (3C),
+.BR atomic_swap (3C),
+.BR membar_ops (3C),
+.BR attributes (7)
diff --git a/usr/src/man/man3c/atomic_cas.3c b/usr/src/man/man3c/atomic_cas.3c
index 2100933443..b3923fac61 100644
--- a/usr/src/man/man3c/atomic_cas.3c
+++ b/usr/src/man/man3c/atomic_cas.3c
@@ -84,7 +84,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -102,7 +102,13 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBatomic_add\fR(3C), \fBatomic_and\fR(3C), \fBatomic_bits\fR(3C),
-\fBatomic_dec\fR(3C), \fBatomic_inc\fR(3C), \fBatomic_or\fR(3C),
-\fBatomic_swap\fR(3C), \fBmembar_ops\fR(3C), \fBattributes\fR(5),
-\fBatomic_ops\fR(9F)
+.BR atomic_add (3C),
+.BR atomic_and (3C),
+.BR atomic_bits (3C),
+.BR atomic_dec (3C),
+.BR atomic_inc (3C),
+.BR atomic_or (3C),
+.BR atomic_swap (3C),
+.BR membar_ops (3C),
+.BR attributes (7),
+.BR atomic_ops (9F)
diff --git a/usr/src/man/man3c/atomic_dec.3c b/usr/src/man/man3c/atomic_dec.3c
index 9ab7c5937c..dece685c11 100644
--- a/usr/src/man/man3c/atomic_dec.3c
+++ b/usr/src/man/man3c/atomic_dec.3c
@@ -121,7 +121,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -139,10 +139,16 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBatomic_add\fR(3C), \fBatomic_and\fR(3C), \fBatomic_bits\fR(3C),
-\fBatomic_cas\fR(3C), \fBatomic_inc\fR(3C), \fBatomic_or\fR(3C),
-\fBatomic_swap\fR(3C), \fBmembar_ops\fR(3C), \fBattributes\fR(5),
-\fBatomic_ops\fR(9F)
+.BR atomic_add (3C),
+.BR atomic_and (3C),
+.BR atomic_bits (3C),
+.BR atomic_cas (3C),
+.BR atomic_inc (3C),
+.BR atomic_or (3C),
+.BR atomic_swap (3C),
+.BR membar_ops (3C),
+.BR attributes (7),
+.BR atomic_ops (9F)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3c/atomic_inc.3c b/usr/src/man/man3c/atomic_inc.3c
index 46f58a75ef..185a0e0da2 100644
--- a/usr/src/man/man3c/atomic_inc.3c
+++ b/usr/src/man/man3c/atomic_inc.3c
@@ -121,7 +121,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -139,10 +139,16 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBatomic_add\fR(3C), \fBatomic_and\fR(3C), \fBatomic_bits\fR(3C),
-\fBatomic_cas\fR(3C), \fBatomic_dec\fR(3C), \fBatomic_or\fR(3C),
-\fBatomic_swap\fR(3C), \fBmembar_ops\fR(3C), \fBattributes\fR(5),
-\fBatomic_ops\fR(9F)
+.BR atomic_add (3C),
+.BR atomic_and (3C),
+.BR atomic_bits (3C),
+.BR atomic_cas (3C),
+.BR atomic_dec (3C),
+.BR atomic_or (3C),
+.BR atomic_swap (3C),
+.BR membar_ops (3C),
+.BR attributes (7),
+.BR atomic_ops (9F)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3c/atomic_ops.3c b/usr/src/man/man3c/atomic_ops.3c
index d3a23af862..7f07609a67 100644
--- a/usr/src/man/man3c/atomic_ops.3c
+++ b/usr/src/man/man3c/atomic_ops.3c
@@ -95,7 +95,7 @@ the old value of the variable.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -113,10 +113,16 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBatomic_add\fR(3C), \fBatomic_and\fR(3C), \fBatomic_bits\fR(3C),
-\fBatomic_cas\fR(3C), \fBatomic_dec\fR(3C), \fBatomic_inc\fR(3C),
-\fBatomic_or\fR(3C), \fBatomic_swap\fR(3C), \fBmembar_ops\fR(3C),
-\fBattributes\fR(5)
+.BR atomic_add (3C),
+.BR atomic_and (3C),
+.BR atomic_bits (3C),
+.BR atomic_cas (3C),
+.BR atomic_dec (3C),
+.BR atomic_inc (3C),
+.BR atomic_or (3C),
+.BR atomic_swap (3C),
+.BR membar_ops (3C),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3c/atomic_or.3c b/usr/src/man/man3c/atomic_or.3c
index 847587ef6d..c3197e4f8a 100644
--- a/usr/src/man/man3c/atomic_or.3c
+++ b/usr/src/man/man3c/atomic_or.3c
@@ -105,7 +105,7 @@ The *\fB_nv()\fR variants of these functions return the new value of
No errors are defined.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -122,10 +122,16 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBatomic_add\fR(3C), \fBatomic_and\fR(3C), \fBatomic_bits\fR(3C),
-\fBatomic_cas\fR(3C), \fBatomic_dec\fR(3C), \fBatomic_inc\fR(3C),
-\fBatomic_swap\fR(3C), \fBmembar_ops\fR(3C), \fBattributes\fR(5),
-\fBatomic_ops\fR(9F)
+.BR atomic_add (3C),
+.BR atomic_and (3C),
+.BR atomic_bits (3C),
+.BR atomic_cas (3C),
+.BR atomic_dec (3C),
+.BR atomic_inc (3C),
+.BR atomic_swap (3C),
+.BR membar_ops (3C),
+.BR attributes (7),
+.BR atomic_ops (9F)
.SH NOTES
.LP
The *\fB_nv()\fR variants are substantially more expensive on some platforms
diff --git a/usr/src/man/man3c/atomic_swap.3c b/usr/src/man/man3c/atomic_swap.3c
index fa9964d092..95aa17ca52 100644
--- a/usr/src/man/man3c/atomic_swap.3c
+++ b/usr/src/man/man3c/atomic_swap.3c
@@ -73,7 +73,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -91,7 +91,13 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBatomic_add\fR(3C), \fBatomic_and\fR(3C), \fBatomic_bits\fR(3C),
-\fBatomic_dec\fR(3C), \fBatomic_inc\fR(3C), \fBatomic_or\fR(3C),
-\fBatomic_cas\fR(3C), \fBmembar_ops\fR(3C), \fBattributes\fR(5),
-\fBatomic_ops\fR(9F)
+.BR atomic_add (3C),
+.BR atomic_and (3C),
+.BR atomic_bits (3C),
+.BR atomic_cas (3C),
+.BR atomic_dec (3C),
+.BR atomic_inc (3C),
+.BR atomic_or (3C),
+.BR membar_ops (3C),
+.BR attributes (7),
+.BR atomic_ops (9F)
diff --git a/usr/src/man/man3c/attropen.3c b/usr/src/man/man3c/attropen.3c
index 43dc5c3578..03bd6c9c6a 100644
--- a/usr/src/man/man3c/attropen.3c
+++ b/usr/src/man/man3c/attropen.3c
@@ -42,7 +42,7 @@ Refer to \fBopen\fR(2).
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -60,4 +60,6 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBopen\fR(2), \fBattributes\fR(5), \fBfsattr\fR(5)
+.BR open (2),
+.BR attributes (7),
+.BR fsattr (7)
diff --git a/usr/src/man/man3c/basename.3c b/usr/src/man/man3c/basename.3c
index b67de71953..948c28403a 100644
--- a/usr/src/man/man3c/basename.3c
+++ b/usr/src/man/man3c/basename.3c
@@ -107,7 +107,7 @@ _
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -125,4 +125,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBbasename\fR(1), \fBdirname\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR basename (1),
+.BR dirname (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/bsd_signal.3c b/usr/src/man/man3c/bsd_signal.3c
index af02191944..4e305514ab 100644
--- a/usr/src/man/man3c/bsd_signal.3c
+++ b/usr/src/man/man3c/bsd_signal.3c
@@ -115,7 +115,7 @@ that expects more than one argument, the application has to be modified to use
these flags is not specified for the \fBBSD\fR \fBsignal()\fR.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -130,5 +130,8 @@ Interface Stability Standard
.SH SEE ALSO
.LP
-\fBsigaction\fR(2), \fBsigaddset\fR(3C), \fBsigemptyset\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR sigaction (2),
+.BR sigaddset (3C),
+.BR sigemptyset (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/bsearch.3c b/usr/src/man/man3c/bsearch.3c
index 4d14152369..cfe1435bcc 100644
--- a/usr/src/man/man3c/bsearch.3c
+++ b/usr/src/man/man3c/bsearch.3c
@@ -126,7 +126,7 @@ node_compare(const void *node1, const void *node2) {
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -144,5 +144,9 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBhsearch\fR(3C), \fBlsearch\fR(3C), \fBqsort\fR(3C), \fBtsearch\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR hsearch (3C),
+.BR lsearch (3C),
+.BR qsort (3C),
+.BR tsearch (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/bstring.3c b/usr/src/man/man3c/bstring.3c
index 873c64fe80..3cd3b438ee 100644
--- a/usr/src/man/man3c/bstring.3c
+++ b/usr/src/man/man3c/bstring.3c
@@ -61,7 +61,7 @@ The \fBbcopy()\fR and \fBexplicit_bzero()\fR functions take parameters backwards
from \fBmemcmp()\fR. See \fBmemory\fR(3C).
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -78,7 +78,9 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBmemory\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR memory (3C),
+.BR attributes (7),
+.BR standards (7)
.SH NOTES
.LP
\fBbcopy\fR(), \fBbcmp\fR(), and \fBbzero\fR() are \fBSTANDARD\fR.
diff --git a/usr/src/man/man3c/btowc.3c b/usr/src/man/man3c/btowc.3c
index af41aea184..c34b6bc3bb 100644
--- a/usr/src/man/man3c/btowc.3c
+++ b/usr/src/man/man3c/btowc.3c
@@ -70,7 +70,7 @@ The \fBbtowc()\fR and \fBbtowc_l\fR()functions determines whether
state.
.LP
The behavior of \fBbtowc()\fR is affected by the \fBLC_CTYPE\fR category of the
-current locale. See \fBenviron\fR(5). The function \fBbtowc_l()\fR does
+current locale. See \fBenviron\fR(7). The function \fBbtowc_l()\fR does
not use the current locale, and instead operates on the locale
specified by \fIloc\fR.
.SH RETURN VALUES
@@ -84,7 +84,7 @@ wide-character representation of that character.
No errors are defined.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.TS
box;
c | c
@@ -105,5 +105,10 @@ function is Uncommitted.
.SH SEE ALSO
.sp
.LP
-\fBnewlocale\fR(3C), \fBsetlocale\fR(3C), \fBuselocale\fR(3C), \fBwctob\fR(3C),
-\fBattributes\fR(5), \fBenviron\fR(5), \fBstandards\fR(5)
+.BR newlocale (3C),
+.BR setlocale (3C),
+.BR uselocale (3C),
+.BR wctob (3C),
+.BR attributes (7),
+.BR environ (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/byteorder.3c b/usr/src/man/man3c/byteorder.3c
index 86207a01ce..4f67965078 100644
--- a/usr/src/man/man3c/byteorder.3c
+++ b/usr/src/man/man3c/byteorder.3c
@@ -82,5 +82,5 @@ and
.Xr inet.h 3HEAD ,
.Xr gethostent 3NSL ,
.Xr getservent 3SOCKET ,
-.Xr attributes 5 ,
-.Xr byteorder 5
+.Xr attributes 7 ,
+.Xr byteorder 7
diff --git a/usr/src/man/man3c/c16rtomb.3c b/usr/src/man/man3c/c16rtomb.3c
index 33c6189dd3..0875bddcf4 100644
--- a/usr/src/man/man3c/c16rtomb.3c
+++ b/usr/src/man/man3c/c16rtomb.3c
@@ -282,4 +282,4 @@ then the functions are
.Xr setlocale 3C ,
.Xr uselocale 3C ,
.Xr uchar.h 3HEAD ,
-.Xr environ 5
+.Xr environ 7
diff --git a/usr/src/man/man3c/call_once.3c b/usr/src/man/man3c/call_once.3c
index 80cf0860e2..3ac8739c29 100644
--- a/usr/src/man/man3c/call_once.3c
+++ b/usr/src/man/man3c/call_once.3c
@@ -88,5 +88,5 @@ argument .
.Sh SEE ALSO
.Xr pthread_once 3C ,
.Xr threads.h 3HEAD ,
-.Xr attributes 5 ,
-.Xr threads 5
+.Xr attributes 7 ,
+.Xr threads 7
diff --git a/usr/src/man/man3c/catgets.3c b/usr/src/man/man3c/catgets.3c
index b0979fd80c..d1f44d1895 100644
--- a/usr/src/man/man3c/catgets.3c
+++ b/usr/src/man/man3c/catgets.3c
@@ -134,7 +134,7 @@ as long as \fBsetlocale\fR(3C) is not being called to change the locale.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -152,8 +152,13 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBgencat\fR(1), \fBcatclose\fR(3C), \fBcatopen\fR(3C), \fBgettext\fR(3C),
-\fBsetlocale\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR gencat (1),
+.BR catclose (3C),
+.BR catopen (3C),
+.BR gettext (3C),
+.BR setlocale (3C),
+.BR attributes (7),
+.BR standards (7)
.sp
.LP
\fIInternational Language Environments Guide\fR
diff --git a/usr/src/man/man3c/catopen.3c b/usr/src/man/man3c/catopen.3c
index 057a7dccd0..a52bbcb6e8 100644
--- a/usr/src/man/man3c/catopen.3c
+++ b/usr/src/man/man3c/catopen.3c
@@ -339,7 +339,7 @@ to change the locale.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -357,5 +357,10 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBgencat\fR(1), \fBcatgets\fR(3C), \fBgettext\fR(3C), \fBnl_types.h\fR(3HEAD),
-\fBsetlocale\fR(3C), \fBattributes\fR(5), \fBenviron\fR(5)
+.BR gencat (1),
+.BR catgets (3C),
+.BR gettext (3C),
+.BR setlocale (3C),
+.BR nl_types.h (3HEAD),
+.BR attributes (7),
+.BR environ (7)
diff --git a/usr/src/man/man3c/cfgetispeed.3c b/usr/src/man/man3c/cfgetispeed.3c
index d9fbb1c3cd..492a32d9dd 100644
--- a/usr/src/man/man3c/cfgetispeed.3c
+++ b/usr/src/man/man3c/cfgetispeed.3c
@@ -104,6 +104,6 @@ Async-Signal-Safe
.Sh SEE ALSO
.Xr cfsetispeed 3C ,
.Xr tcgetattr 3C ,
-.Xr attributes 5 ,
-.Xr standards 5 ,
-.Xr termio 7I
+.Xr termio 4I ,
+.Xr attributes 7 ,
+.Xr standards 7
diff --git a/usr/src/man/man3c/cfsetispeed.3c b/usr/src/man/man3c/cfsetispeed.3c
index e1610e75d1..9f9683d77d 100644
--- a/usr/src/man/man3c/cfsetispeed.3c
+++ b/usr/src/man/man3c/cfsetispeed.3c
@@ -124,6 +124,6 @@ Async-Signal-Safe
.Sh SEE ALSO
.Xr cfgetispeed 3C ,
.Xr tcsetattr 3C ,
-.Xr attributes 5 ,
-.Xr standards 5 ,
-.Xr termio 7I
+.Xr termio 4I ,
+.Xr attributes 7 ,
+.Xr standards 7
diff --git a/usr/src/man/man3c/clearenv.3c b/usr/src/man/man3c/clearenv.3c
index 16bd532489..61bf7f54bb 100644
--- a/usr/src/man/man3c/clearenv.3c
+++ b/usr/src/man/man3c/clearenv.3c
@@ -62,6 +62,6 @@ No errors are defined.
.Xr getenv 3C ,
.Xr setenv 3C ,
.Xr unsetenv 3C ,
-.Xr attributes 5 ,
-.Xr environ 5 ,
-.Xr standards 5
+.Xr attributes 7 ,
+.Xr environ 7 ,
+.Xr standards 7
diff --git a/usr/src/man/man3c/clock.3c b/usr/src/man/man3c/clock.3c
index 602f80e3d0..9a2225ec33 100644
--- a/usr/src/man/man3c/clock.3c
+++ b/usr/src/man/man3c/clock.3c
@@ -39,7 +39,7 @@ Because of this, the value returned will wrap around after accumulating only
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -57,5 +57,9 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBtimes\fR(2), \fBpopen\fR(3C), \fBsystem\fR(3C), \fBwait\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR times (2),
+.BR popen (3C),
+.BR system (3C),
+.BR wait (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/clock_nanosleep.3c b/usr/src/man/man3c/clock_nanosleep.3c
index b86cd26df4..e38c124e07 100644
--- a/usr/src/man/man3c/clock_nanosleep.3c
+++ b/usr/src/man/man3c/clock_nanosleep.3c
@@ -155,7 +155,7 @@ is not supported, such as a CPU-time clock.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -169,11 +169,15 @@ Interface Stability Committed
_
MT-Level MT-Safe
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.sp
.LP
-\fBclock_getres\fR(3C), \fBnanosleep\fR(3C), \fBpthread_cond_timedwait\fR(3C),
-\fBsleep\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR clock_getres (3C),
+.BR nanosleep (3C),
+.BR pthread_cond_timedwait (3C),
+.BR sleep (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/clock_settime.3c b/usr/src/man/man3c/clock_settime.3c
index 2c18e48f0c..375258069b 100644
--- a/usr/src/man/man3c/clock_settime.3c
+++ b/usr/src/man/man3c/clock_settime.3c
@@ -135,7 +135,7 @@ represents the amount of time (in seconds and nanoseconds) since some arbitrary
time in the past; it is not correlated in any way to the time of day, and thus
is not subject to resetting or drifting by way of
.Xr adjtime 2 ,
-.Xr ntp adjtime 2 ,
+.Xr ntp_adjtime 2 ,
.Xr settimeofday 3C ,
or
.Fn clock_settime .
@@ -166,7 +166,7 @@ and
member of the
.Vt lwpsinfo_t
structure discussed in
-.Xr proc 4 .
+.Xr proc 5 .
.Pp
This clock cannot be set with
.Fn clock_settime
@@ -183,7 +183,7 @@ The system time is the same that is seen in the
member of the
.Vt lwpsinfo_t
structure discussed in
-.Xr proc 4 .
+.Xr proc 5 .
System time includes both the system and trap microstates,
.Fa pr_stime
and
@@ -207,7 +207,7 @@ and
members of the
.Vt psinfo_t
structure documented in
-.Xr proc 4 .
+.Xr proc 5 .
.Pp
This clock is not settable with
.Fn clock_settime .
@@ -284,4 +284,4 @@ is
.Xr settimeofday 3C ,
.Xr timer_gettime 3C ,
.Xr time.h 3HEAD ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3c/closedir.3c b/usr/src/man/man3c/closedir.3c
index c88ecd707c..21394f80f8 100644
--- a/usr/src/man/man3c/closedir.3c
+++ b/usr/src/man/man3c/closedir.3c
@@ -118,4 +118,4 @@ function was interrupted by a signal.
.Xr fdopendir 3C ,
.Xr opendir 3C ,
.Xr readdir 3C ,
-.Xr attributes 5
+.Xr attributes 7
diff --git a/usr/src/man/man3c/closefrom.3c b/usr/src/man/man3c/closefrom.3c
index d3730393ba..5f8780a97a 100644
--- a/usr/src/man/man3c/closefrom.3c
+++ b/usr/src/man/man3c/closefrom.3c
@@ -125,7 +125,7 @@ elsewhere in the current process normally leads to disastrous results.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -141,4 +141,7 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBclose\fR(2), \fBgetrlimit\fR(2), \fBproc\fR(4), \fBattributes\fR(5)
+.BR close (2),
+.BR getrlimit (2),
+.BR proc (5),
+.BR attributes (7)
diff --git a/usr/src/man/man3c/cnd.3c b/usr/src/man/man3c/cnd.3c
index 6748e08b0d..f5a39ff021 100644
--- a/usr/src/man/man3c/cnd.3c
+++ b/usr/src/man/man3c/cnd.3c
@@ -61,7 +61,7 @@ it does.
These functions behave similar to both the POSIX threads and illumos threads;
however, they have slightly different call signatures and return values.
For more information, see
-.Xr threads 5 .
+.Xr threads 7 .
Importantly, they do not allow for inter-process synchronization.
.Ss Creating and Destroy Condition Variables
The function
@@ -183,5 +183,5 @@ is returned to indicate an error.
.Xr cond_timedwait 3C ,
.Xr cond_wait 3C ,
.Xr threads.h 3HEAD ,
-.Xr attributes 5 ,
-.Xr threads 5
+.Xr attributes 7 ,
+.Xr threads 7
diff --git a/usr/src/man/man3c/cond_init.3c b/usr/src/man/man3c/cond_init.3c
index 198594167c..31699a66d0 100644
--- a/usr/src/man/man3c/cond_init.3c
+++ b/usr/src/man/man3c/cond_init.3c
@@ -399,7 +399,7 @@ while (cond == FALSE) {
.in -2
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -413,9 +413,16 @@ MT-Level MT-Safe
.TE
.SH SEE ALSO
-\fBfork\fR(2), \fBmmap\fR(2), \fBsetitimer\fR(2), \fBshmop\fR(2),
-\fBmutex_init\fR(3C), \fBsignal\fR(3C), \fBattributes\fR(5),
-\fBcondition\fR(5), \fBmutex\fR(5), \fBstandards\fR(5)
+.BR fork (2),
+.BR mmap (2),
+.BR setitimer (2),
+.BR shmop (2),
+.BR mutex_init (3C),
+.BR signal (3C),
+.BR attributes (7),
+.BR condition (7),
+.BR mutex (7),
+.BR standards (7)
.SH NOTES
If more than one thread is blocked on a condition variable, the order in which
threads are unblocked is determined by the scheduling policy. When each thread,
diff --git a/usr/src/man/man3c/confstr.3c b/usr/src/man/man3c/confstr.3c
index 06d5ad93ae..7e6adea302 100644
--- a/usr/src/man/man3c/confstr.3c
+++ b/usr/src/man/man3c/confstr.3c
@@ -91,7 +91,7 @@ defined in \fB<unistd.h>\fR, for both SPARC and x86:
If \fB_LFS64_LARGEFILE\fR is defined in \fB<unistd.h>\fR, this value is the set
of initial options to be given to the \fBcc\fR and \fBc89\fR utilities to build
an application using the Large File Summit transitional compilation environment
-(see \fBlfcompile64\fR(5)).
+(see \fBlfcompile64\fR(7)).
.RE
.sp
@@ -104,7 +104,7 @@ an application using the Large File Summit transitional compilation environment
If \fB_LFS64_LARGEFILE\fR is defined in \fB<unistd.h>\fR, this value is the set
of final options to be given to the \fBcc\fR and \fBc89\fR utilities to build
an application using the Large File Summit transitional compilation environment
-(see \fBlfcompile64\fR(5)).
+(see \fBlfcompile64\fR(7)).
.RE
.sp
@@ -117,7 +117,7 @@ an application using the Large File Summit transitional compilation environment
If \fB_LFS64_LARGEFILE\fR is defined in \fB<unistd.h>\fR, this value is the set
of libraries to be given to the \fBcc\fR and \fBc89\fR utilities to build an
application using the Large File Summit transitional compilation environment
-(see \fBlfcompile64\fR(5)).
+(see \fBlfcompile64\fR(7)).
.RE
.sp
@@ -130,7 +130,7 @@ application using the Large File Summit transitional compilation environment
If \fB_LFS64_LARGEFILE\fR is defined in \fB<unistd.h>\fR, this value is the set
of options to be given to the \fBlint\fR utility to check application source
using the Large File Summit transitional compilation environment (see
-\fBlfcompile64\fR(5)).
+\fBlfcompile64\fR(7)).
.RE
.sp
@@ -143,7 +143,7 @@ using the Large File Summit transitional compilation environment (see
If \fB_LFS_LARGEFILE\fR is defined in \fB<unistd.h>\fR, this value is the set
of initial options to be given to the \fBcc\fR and \fBc89\fR utilities to build
an application using the Large File Summit large file compilation environment
-for 32-bit applications (see \fBlfcompile\fR(5)).
+for 32-bit applications (see \fBlfcompile\fR(7)).
.RE
.sp
@@ -156,7 +156,7 @@ for 32-bit applications (see \fBlfcompile\fR(5)).
If \fB_LFS_LARGEFILE\fR is defined in \fB<unistd.h>\fR, this value is the set
of final options to be given to the \fBcc\fR and \fBc89\fR utilities to build
an application using the Large File Summit large file compilation environment
-for 32-bit applications (see \fBlfcompile\fR(5)).
+for 32-bit applications (see \fBlfcompile\fR(7)).
.RE
.sp
@@ -169,7 +169,7 @@ for 32-bit applications (see \fBlfcompile\fR(5)).
If \fB_LFS_LARGEFILE\fR is defined in \fB<unistd.h>\fR, this value is the set
of libraries to be given to the \fBcc\fR and \fBc89\fR utilities to build an
application using the Large File Summit large file compilation environment for
-32-bit applications (see \fBlfcompile\fR(5)).
+32-bit applications (see \fBlfcompile\fR(7)).
.RE
.sp
@@ -182,7 +182,7 @@ application using the Large File Summit large file compilation environment for
If \fB_LFS_LARGEFILE\fR is defined in \fB<unistd.h>\fR, this value is the set
of options to be given to the \fBlint\fR utility to check application source
using the Large File Summit large file compilation environment for 32-bit
-applications (see \fBlfcompile\fR(5)).
+applications (see \fBlfcompile\fR(7)).
.RE
.sp
@@ -631,7 +631,7 @@ The value of the \fIname\fR argument is invalid.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -649,5 +649,9 @@ MT-Level Mt-Safe
.SH SEE ALSO
.sp
.LP
-\fBpathconf\fR(2), \fBsysconf\fR(3C), \fBattributes\fR(5), \fBlfcompile\fR(5),
-\fBlfcompile64\fR(5), \fBstandards\fR(5)
+.BR pathconf (2),
+.BR sysconf (3C),
+.BR attributes (7),
+.BR lfcompile (7),
+.BR lfcompile64 (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/crypt.3c b/usr/src/man/man3c/crypt.3c
index 6430f1b550..55b2db658d 100644
--- a/usr/src/man/man3c/crypt.3c
+++ b/usr/src/man/man3c/crypt.3c
@@ -74,14 +74,14 @@ The \fIkey\fR argument is the plain text password to be encrypted.
.sp
.LP
If the first character of \fIsalt\fR is "$", \fBcrypt()\fR uses
-\fBcrypt.conf\fR(4) to determine which shared module to load for the encryption
+\fBcrypt.conf\fR(5) to determine which shared module to load for the encryption
algorithm. The algorithm name \fBcrypt()\fR uses to search in \fBcrypt.conf\fR
is the string between the first and second "$", or between the first "$" and
first "," if a "," comes before the second "$".
.sp
.LP
If the first character of \fIsalt\fR is not "$", the algorithm described on
-\fBcrypt_unix\fR(5) is used.
+\fBcrypt_unix\fR(7) is used.
.SH RETURN VALUES
.sp
.LP
@@ -135,7 +135,7 @@ The functionality is not supported on this system.
.sp
.LP
The values returned by this function might not be portable among
-standard-conforming systems. See \fBstandards\fR(5).
+standard-conforming systems. See \fBstandards\fR(7).
.sp
.LP
Applications should not use \fBcrypt()\fR to store or verify user passwords but
@@ -143,7 +143,7 @@ should use the functions described on \fBpam\fR(3PAM) instead.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -161,7 +161,14 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBpasswd\fR(1), \fBcrypt_genhash_impl\fR(3C), \fBcrypt_gensalt\fR(3C),
-\fBcrypt_gensalt_impl\fR(3C), \fBgetpassphrase\fR(3C), \fBpam\fR(3PAM),
-\fBpasswd\fR(4), \fBpolicy.conf\fR(4), \fBattributes\fR(5),
-\fBcrypt_unix\fR(5), \fBstandards\fR(5)
+.BR passwd (1),
+.BR crypt_genhash_impl (3C),
+.BR crypt_gensalt (3C),
+.BR crypt_gensalt_impl (3C),
+.BR getpassphrase (3C),
+.BR pam (3PAM),
+.BR passwd (5),
+.BR policy.conf (5),
+.BR attributes (7),
+.BR crypt_unix (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/crypt_genhash_impl.3c b/usr/src/man/man3c/crypt_genhash_impl.3c
index c964a9aac8..6883720d88 100644
--- a/usr/src/man/man3c/crypt_genhash_impl.3c
+++ b/usr/src/man/man3c/crypt_genhash_impl.3c
@@ -30,7 +30,7 @@ The \fIsalt\fR argument is the salt used in encoding.
.LP
The \fIparams\fR argument is an \fIargv\fR-like null-terminated vector of type
\fBchar *\fR. The first element of \fIparams\fR represents the mechanism token
-name from \fBcrypt.conf\fR(4). The remaining elements of \fIparams\fR represent
+name from \fBcrypt.conf\fR(5). The remaining elements of \fIparams\fR represent
strings of the form <\fBparameter\fR>[=<\fBvalue\fR>] to allow passing in
additional information from the \fBcrypt.conf\fR entry, such as specifying
rounds information "\fBrounds=4096\fR".
@@ -75,7 +75,7 @@ There is insufficient memory to perform hashing.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -92,6 +92,11 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBpasswd\fR(1), \fBcrypt\fR(3C), \fBcrypt_gensalt_impl\fR(3C), \fBfree\fR(3C),
-\fBgetpassphrase\fR(3C), \fBcrypt.conf\fR(4), \fBpasswd\fR(4),
-\fBattributes\fR(5)
+.BR passwd (1),
+.BR crypt (3C),
+.BR crypt_gensalt_impl (3C),
+.BR free (3C),
+.BR getpassphrase (3C),
+.BR crypt.conf (5),
+.BR passwd (5),
+.BR attributes (7)
diff --git a/usr/src/man/man3c/crypt_gensalt.3c b/usr/src/man/man3c/crypt_gensalt.3c
index e310aec43c..100d66975c 100644
--- a/usr/src/man/man3c/crypt_gensalt.3c
+++ b/usr/src/man/man3c/crypt_gensalt.3c
@@ -23,7 +23,7 @@ The \fBcrypt_gensalt()\fR function generates the salt string required by
.LP
If \fIoldsalt\fR is \fINULL\fR, \fBcrypt_gensalt()\fR uses the algorithm
defined by \fBCRYPT_DEFAULT\fR in \fB/etc/security/policy.conf\fR. See
-\fBpolicy.conf\fR(4).
+\fBpolicy.conf\fR(5).
.sp
.LP
If \fIoldsalt\fR is non-null, \fBcrypt_gensalt()\fR determines if the algorithm
@@ -88,7 +88,7 @@ call \fBcrypt_gensalt()\fR directly but should instead call the appropriate
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -106,7 +106,14 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBpasswd\fR(1), \fBcrypt\fR(3C), \fBcrypt_genhash_impl\fR(3C),
-\fBcrypt_gensalt_impl\fR(3C), \fBgetpassphrase\fR(3C), \fBmalloc\fR(3C),
-\fBpam\fR(3PAM), \fBcrypt.conf\fR(4), \fBpasswd\fR(4), \fBpolicy.conf\fR(4),
-\fBattributes\fR(5)
+.BR passwd (1),
+.BR crypt (3C),
+.BR crypt_genhash_impl (3C),
+.BR crypt_gensalt_impl (3C),
+.BR getpassphrase (3C),
+.BR malloc (3C),
+.BR pam (3PAM),
+.BR crypt.conf (5),
+.BR passwd (5),
+.BR policy.conf (5),
+.BR attributes (7)
diff --git a/usr/src/man/man3c/crypt_gensalt_impl.3c b/usr/src/man/man3c/crypt_gensalt_impl.3c
index c40338aa87..144b043e9d 100644
--- a/usr/src/man/man3c/crypt_gensalt_impl.3c
+++ b/usr/src/man/man3c/crypt_gensalt_impl.3c
@@ -33,7 +33,7 @@ The \fIoldsalt\fR and \fIuserinfo\fR arguments are passed unchanged from
.LP
The \fIparams\fR argument is an \fIargv\fR-like null terminated vector of type
\fBchar *\fR. The first element of \fIparams\fR represents the mechanism token
-name from \fBcrypt.conf\fR(4). The remaining elements of \fIparams\fR represent
+name from \fBcrypt.conf\fR(5). The remaining elements of \fIparams\fR represent
strings of the form <\fBparameter\fR>[=<\fBvalue\fR>] to allow passing in
additional information from the \fBcrypt.conf\fR entry, such as specifying
rounds information "\fBrounds=4096\fR".
@@ -82,7 +82,7 @@ There is insufficient memory to perform hashing.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -100,6 +100,11 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBpasswd\fR(1), \fBcrypt\fR(3C), \fBcrypt_genhash_impl\fR(3C),
-\fBcrypt_gensalt\fR(3C), \fBgetpassphrase\fR(3C), \fBcrypt.conf\fR(4),
-\fBpasswd\fR(4), \fBattributes\fR(5)
+.BR passwd (1),
+.BR crypt (3C),
+.BR crypt_genhash_impl (3C),
+.BR crypt_gensalt (3C),
+.BR getpassphrase (3C),
+.BR crypt.conf (5),
+.BR passwd (5),
+.BR attributes (7)
diff --git a/usr/src/man/man3c/cset.3c b/usr/src/man/man3c/cset.3c
index 58291d7cf0..675a0a6269 100644
--- a/usr/src/man/man3c/cset.3c
+++ b/usr/src/man/man3c/cset.3c
@@ -82,7 +82,7 @@ The \fBcset()\fR, \fBcsetlen()\fR, \fBcsetcol()\fR, \fBcsetno()\fR, and
\fBwcsetno()\fR functions can be used safely in multithreaded applications, as
long as \fBsetlocale\fR(3C) is not being called to change the locale.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -96,4 +96,6 @@ MT-Level MT-Safe with exceptions
.TE
.SH SEE ALSO
-\fBsetlocale\fR(3C), \fBeuclen\fR(3C), \fBattributes\fR(5)
+.BR euclen (3C),
+.BR setlocale (3C),
+.BR attributes (7)
diff --git a/usr/src/man/man3c/ctermid.3c b/usr/src/man/man3c/ctermid.3c
index 4fec552f59..3be06879bb 100644
--- a/usr/src/man/man3c/ctermid.3c
+++ b/usr/src/man/man3c/ctermid.3c
@@ -59,7 +59,7 @@ applications.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -79,4 +79,5 @@ T}
.SH SEE ALSO
.sp
.LP
-\fBttyname\fR(3C), \fBattributes\fR(5)
+.BR ttyname (3C),
+.BR attributes (7)
diff --git a/usr/src/man/man3c/ctime.3c b/usr/src/man/man3c/ctime.3c
index 0ca032bd08..62bc15c83b 100644
--- a/usr/src/man/man3c/ctime.3c
+++ b/usr/src/man/man3c/ctime.3c
@@ -221,7 +221,7 @@ The \fBtzset()\fR function uses the contents of the environment variable
\fBTZ\fR to override the value of the different external variables. It is
called by \fBasctime()\fR and can also be called by the user. If \fBTZ\fR is
not specified or has an invalid setting, \fBtzset()\fR uses \fBGMT0\fR. See
-\fBenviron\fR(5) for a description of the \fBTZ\fR environment variable.
+\fBenviron\fR(7) for a description of the \fBTZ\fR environment variable.
.sp
.LP
Starting and ending times are relative to the current local time zone. If the
@@ -234,7 +234,7 @@ start and end dates are provided but the time is not provided, the time will be
.LP
Note that in most installations, \fBTZ\fR is set to the correct value by
default when the user logs on, using the local \fB/etc/default/init\fR file
-(see \fBTIMEZONE\fR(4)).
+(see \fBTIMEZONE\fR(5)).
.SH RETURN VALUES
.sp
.LP
@@ -353,7 +353,7 @@ version of \fBlocaltime()\fR, \fBlocaltime_r()\fR, \fBctime()\fR, and
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -386,9 +386,18 @@ function in an MT-Safe manner. The \fBmktime()\fR, \fBlocaltime_r()\fR, and
.SH SEE ALSO
.sp
.LP
-\fBtime\fR(2), \fBIntro\fR(3), \fBgetenv\fR(3C), \fBmktime\fR(3C),
-\fBprintf\fR(3C), \fBputenv\fR(3C), \fBsetlocale\fR(3C), \fBstrftime\fR(3C),
-\fBTIMEZONE\fR(4), \fBattributes\fR(5), \fBenviron\fR(5), \fBstandards\fR(5)
+.BR time (2),
+.BR Intro (3),
+.BR getenv (3C),
+.BR mktime (3C),
+.BR printf (3C),
+.BR putenv (3C),
+.BR setlocale (3C),
+.BR strftime (3C),
+.BR TIMEZONE (5),
+.BR attributes (7),
+.BR environ (7),
+.BR standards (7)
.SH NOTES
.sp
.LP
@@ -428,4 +437,4 @@ For POSIX.1c-conforming applications, the \fB_POSIX_PTHREAD_SEMANTICS\fR and
In Solaris 10, \fBgmtime()\fR, \fBgmtime_r()\fR, \fBlocaltime()\fR, and
\fBlocaltime_r()\fR were updated to return a null pointer if an error is
detected. This change was based on the SUSv3 specification. See
-\fBstandards\fR(5).
+\fBstandards\fR(7).
diff --git a/usr/src/man/man3c/ctype.3c b/usr/src/man/man3c/ctype.3c
index f1fec492aa..3a76958603 100644
--- a/usr/src/man/man3c/ctype.3c
+++ b/usr/src/man/man3c/ctype.3c
@@ -217,7 +217,7 @@ Tests for any ASCII character, code between \fB0\fR and \fB0177\fR inclusive.
.RS 13n
Tests whether \fIc\fR is a character of class blank in the current locale. This
macro/function is not available to applications conforming to standards prior
-to SUSv3. See \fBstandards\fR(5)
+to SUSv3. See \fBstandards\fR(7)
.RE
.sp
@@ -333,7 +333,7 @@ the function, the result is undefined. Otherwise, the macro or function returns
non-zero if the classification is \fBTRUE\fR and \fB0\fR if the classification
is \fBFALSE\fR.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.TS
box;
c | c
@@ -348,6 +348,10 @@ MT-Level MT-Safe
.TE
.SH SEE ALSO
-\fBnewlocale\fR(3C), \fBsetlocale\fR(3C), \fBuselocale\fR(3C),
-\fBstdio\fR(3C), \fBascii\fR(5), \fBenviron\fR(5),
-\fBstandards\fR(5)
+.BR newlocale (3C),
+.BR setlocale (3C),
+.BR stdio (3C),
+.BR uselocale (3C),
+.BR ascii (7),
+.BR environ (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/cuserid.3c b/usr/src/man/man3c/cuserid.3c
index 5785756c66..00648821a8 100644
--- a/usr/src/man/man3c/cuserid.3c
+++ b/usr/src/man/man3c/cuserid.3c
@@ -37,7 +37,7 @@ If the login name cannot be found, \fBcuserid()\fR returns a null pointer. If
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -53,4 +53,6 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBgetlogin\fR(3C), \fBgetpwnam\fR(3C), \fBattributes\fR(5)
+.BR getlogin (3C),
+.BR getpwnam (3C),
+.BR attributes (7)
diff --git a/usr/src/man/man3c/daemon.3c b/usr/src/man/man3c/daemon.3c
index f0b473e2ec..955c4185c1 100644
--- a/usr/src/man/man3c/daemon.3c
+++ b/usr/src/man/man3c/daemon.3c
@@ -95,7 +95,7 @@ if (background && daemon(0, 0) < 0)
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -113,5 +113,9 @@ MT-Level Async-Signal-Safe
.SH SEE ALSO
.sp
.LP
-\fBIntro\fR(2), \fBdup\fR(2), \fBfork\fR(2), \fBopen\fR(2), \fBsetsid\fR(2),
-\fBattributes\fR(5)
+.BR Intro (2),
+.BR dup (2),
+.BR fork (2),
+.BR open (2),
+.BR setsid (2),
+.BR attributes (7)
diff --git a/usr/src/man/man3c/decimal_to_floating.3c b/usr/src/man/man3c/decimal_to_floating.3c
index d7a43fd9de..4dd17a21b5 100644
--- a/usr/src/man/man3c/decimal_to_floating.3c
+++ b/usr/src/man/man3c/decimal_to_floating.3c
@@ -80,7 +80,7 @@ underflow, overflow, and inexact. If no floating-point exceptions occurred,
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -96,5 +96,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBscanf\fR(3C), \fBstring_to_decimal\fR(3C), \fBstrtod\fR(3C),
-\fBattributes\fR(5)
+.BR scanf (3C),
+.BR string_to_decimal (3C),
+.BR strtod (3C),
+.BR attributes (7)
diff --git a/usr/src/man/man3c/difftime.3c b/usr/src/man/man3c/difftime.3c
index fccfc9e747..e020040f59 100644
--- a/usr/src/man/man3c/difftime.3c
+++ b/usr/src/man/man3c/difftime.3c
@@ -32,7 +32,7 @@ arithmetic properties defined for type \fBtime_t\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -50,4 +50,6 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBctime\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR ctime (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/directio.3c b/usr/src/man/man3c/directio.3c
index f90bf3dcb7..22bd6de019 100644
--- a/usr/src/man/man3c/directio.3c
+++ b/usr/src/man/man3c/directio.3c
@@ -132,11 +132,11 @@ when a file is sparse or is being extended and is opened with \fBO_SYNC\fR or
.sp
.LP
The \fBdirectio()\fR function is supported for the NFS, UFS and ZFS file system
-types (see \fBfstyp\fR(1M)).
+types (see \fBfstyp\fR(8)).
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -152,8 +152,13 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBfstyp\fR(1M), \fBmmap\fR(2), \fBopen\fR(2), \fBread\fR(2), \fBwrite\fR(2),
-\fBfcntl.h\fR(3HEAD), \fBattributes\fR(5)
+.BR mmap (2),
+.BR open (2),
+.BR read (2),
+.BR write (2),
+.BR fcntl.h (3HEAD),
+.BR attributes (7),
+.BR fstyp (8)
.SH WARNINGS
.sp
.LP
diff --git a/usr/src/man/man3c/dirfd.3c b/usr/src/man/man3c/dirfd.3c
index 69f1f38cfc..94915b27a2 100644
--- a/usr/src/man/man3c/dirfd.3c
+++ b/usr/src/man/man3c/dirfd.3c
@@ -54,7 +54,7 @@ for use with the \fBfchdir()\fR function.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -72,6 +72,14 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBclose\fR(2), \fBexec\fR(2), \fBfchdir\fR(2), \fBfstat\fR(2),
-\fBclosedir\fR(3C), \fBopendir\fR(3C), \fBreaddir\fR(3C), \fBrewinddir\fR(3C),
-\fBseekdir\fR(3C), \fBtelldir\fR(3C), \fBattributes\fR(5)
+.BR close (2),
+.BR exec (2),
+.BR fchdir (2),
+.BR fstat (2),
+.BR closedir (3C),
+.BR opendir (3C),
+.BR readdir (3C),
+.BR rewinddir (3C),
+.BR seekdir (3C),
+.BR telldir (3C),
+.BR attributes (7)
diff --git a/usr/src/man/man3c/dirname.3c b/usr/src/man/man3c/dirname.3c
index 2136671bc3..d8971168e1 100644
--- a/usr/src/man/man3c/dirname.3c
+++ b/usr/src/man/man3c/dirname.3c
@@ -139,7 +139,7 @@ of the directory where \fBbasename(\fR\fIpath\fR\fB)\fR is found.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -157,5 +157,8 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBbasename\fR(1), \fBchdir\fR(2), \fBbasename\fR(3C), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR basename (1),
+.BR chdir (2),
+.BR basename (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/div.3c b/usr/src/man/man3c/div.3c
index 245d045803..e292da0f0b 100644
--- a/usr/src/man/man3c/div.3c
+++ b/usr/src/man/man3c/div.3c
@@ -74,7 +74,7 @@ long int rem; /*remainder*/
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -92,4 +92,5 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/dladdr.3c b/usr/src/man/man3c/dladdr.3c
index 151932ebc5..118cddbfca 100644
--- a/usr/src/man/man3c/dladdr.3c
+++ b/usr/src/man/man3c/dladdr.3c
@@ -134,7 +134,7 @@ These facilities are available to dynamically-linked processes only. See
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -150,8 +150,13 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBld\fR(1), \fBdlclose\fR(3C), \fBdldump\fR(3C), \fBdlerror\fR(3C),
-\fBdlopen\fR(3C), \fBdlsym\fR(3C), \fBattributes\fR(5)
+.BR ld (1),
+.BR dlclose (3C),
+.BR dldump (3C),
+.BR dlerror (3C),
+.BR dlopen (3C),
+.BR dlsym (3C),
+.BR attributes (7)
.sp
.LP
\fILinker and Libraries Guide\fR
diff --git a/usr/src/man/man3c/dlclose.3c b/usr/src/man/man3c/dlclose.3c
index c65eb03f8b..895b0682a5 100644
--- a/usr/src/man/man3c/dlclose.3c
+++ b/usr/src/man/man3c/dlclose.3c
@@ -44,7 +44,7 @@ to dynamically-linked processes only. See the \fILinker and Libraries Guide\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -62,9 +62,16 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBld\fR(1), \fBld.so.1\fR(1), \fBatexit\fR(3C), \fBdladdr\fR(3C),
-\fBdldump\fR(3C), \fBdlerror\fR(3C), \fBdlopen\fR(3C), \fBdlsym\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR ld (1),
+.BR ld.so.1 (1),
+.BR atexit (3C),
+.BR dladdr (3C),
+.BR dldump (3C),
+.BR dlerror (3C),
+.BR dlopen (3C),
+.BR dlsym (3C),
+.BR attributes (7),
+.BR standards (7)
.sp
.LP
\fILinker and Libraries Guide\fR
diff --git a/usr/src/man/man3c/dldump.3c b/usr/src/man/man3c/dldump.3c
index 504fe7b71b..d478e1e400 100644
--- a/usr/src/man/man3c/dldump.3c
+++ b/usr/src/man/man3c/dldump.3c
@@ -399,7 +399,7 @@ direct access to the dynamic linking facilities. These facilities are available
to dynamically-linked processes only. See \fILinker and Libraries Guide\fR).
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -414,10 +414,21 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBld\fR(1), \fBld.so.1\fR(1), \fBstrip\fR(1), \fB_Exit\fR(2), \fBbrk\fR(2),
-\fBexec\fR(2), \fB_exithandle\fR(3C), \fBdladdr\fR(3C), \fBdlclose\fR(3C),
-\fBdlerror\fR(3C), \fBdlopen\fR(3C), \fBdlsym\fR(3C), \fBend\fR(3C),
-\fBmalloc\fR(3C), \fBattributes\fR(5)
+.BR ld (1),
+.BR ld.so.1 (1),
+.BR strip (1),
+.BR _Exit (2),
+.BR brk (2),
+.BR exec (2),
+.BR _exithandle (3C),
+.BR dladdr (3C),
+.BR dlclose (3C),
+.BR dlerror (3C),
+.BR dlopen (3C),
+.BR dlsym (3C),
+.BR end (3C),
+.BR malloc (3C),
+.BR attributes (7)
.sp
.LP
\fILinker and Libraries Guide\fR
diff --git a/usr/src/man/man3c/dlerror.3c b/usr/src/man/man3c/dlerror.3c
index 670b813611..20daa4c782 100644
--- a/usr/src/man/man3c/dlerror.3c
+++ b/usr/src/man/man3c/dlerror.3c
@@ -32,7 +32,7 @@ to dynamically-linked processes only. See \fILinker and Libraries Guide\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -50,8 +50,14 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBld\fR(1), \fBdladdr\fR(3C), \fBdlclose\fR(3C), \fBdldump\fR(3C),
-\fBdlopen\fR(3C), \fBdlsym\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR ld (1),
+.BR dladdr (3C),
+.BR dlclose (3C),
+.BR dldump (3C),
+.BR dlopen (3C),
+.BR dlsym (3C),
+.BR attributes (7),
+.BR standards (7)
.sp
.LP
\fILinker and Libraries Guide\fR
diff --git a/usr/src/man/man3c/dlinfo.3c b/usr/src/man/man3c/dlinfo.3c
index 8f5eea96a7..9260b380af 100644
--- a/usr/src/man/man3c/dlinfo.3c
+++ b/usr/src/man/man3c/dlinfo.3c
@@ -439,7 +439,7 @@ to dynamically-linked processes only. See the \fILinker and Libraries Guide\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -457,10 +457,21 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBld\fR(1), \fBld.so.1\fR(1), \fBexec\fR(2), \fBioctl\fR(2), \fBmmapobj\fR(2),
-\fBdirname\fR(3C), \fBdlclose\fR(3C), \fBdldump\fR(3C), \fBdlerror\fR(3C),
-\fBdlopen\fR(3C), \fBdlsym\fR(3C), \fBputenv\fR(3C), \fBrealpath\fR(3C),
-\fBthr_kill\fR(3C), \fBattributes\fR(5)
+.BR ld (1),
+.BR ld.so.1 (1),
+.BR exec (2),
+.BR ioctl (2),
+.BR mmapobj (2),
+.BR dirname (3C),
+.BR dlclose (3C),
+.BR dldump (3C),
+.BR dlerror (3C),
+.BR dlopen (3C),
+.BR dlsym (3C),
+.BR putenv (3C),
+.BR realpath (3C),
+.BR thr_kill (3C),
+.BR attributes (7)
.sp
.LP
\fILinker and Libraries Guide\fR
diff --git a/usr/src/man/man3c/dlopen.3c b/usr/src/man/man3c/dlopen.3c
index 4836a95562..f74a262eb0 100644
--- a/usr/src/man/man3c/dlopen.3c
+++ b/usr/src/man/man3c/dlopen.3c
@@ -283,7 +283,7 @@ functions that give the user direct access to the dynamic linking facilities.
This family of functions is available only to dynamically-linked processes. See
the \fILinker and Libraries Guide\fR.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -299,9 +299,16 @@ MT\(miLevel MT\(miSafe
.TE
.SH SEE ALSO
-\fBld\fR(1), \fBld.so.1\fR(1), \fBdladdr\fR(3C), \fBdlclose\fR(3C),
-\fBdldump\fR(3C), \fBdlerror\fR(3C), \fBdlinfo\fR(3C), \fBdlsym\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR ld (1),
+.BR ld.so.1 (1),
+.BR dladdr (3C),
+.BR dlclose (3C),
+.BR dldump (3C),
+.BR dlerror (3C),
+.BR dlinfo (3C),
+.BR dlsym (3C),
+.BR attributes (7),
+.BR standards (7)
.sp
.LP
\fILinker and Libraries Guide\fR
diff --git a/usr/src/man/man3c/dlsym.3c b/usr/src/man/man3c/dlsym.3c
index a4d55288ed..562e0c6be5 100644
--- a/usr/src/man/man3c/dlsym.3c
+++ b/usr/src/man/man3c/dlsym.3c
@@ -175,7 +175,7 @@ to dynamically-linked processes only. See the \fILinker and Libraries Guide\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -193,9 +193,16 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBld\fR(1), \fBld.so.1\fR(1), \fBdladdr\fR(3C), \fBdlclose\fR(3C),
-\fBdldump\fR(3C), \fBdlerror\fR(3C), \fBdlinfo\fR(3C), \fBdlopen\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR ld (1),
+.BR ld.so.1 (1),
+.BR dladdr (3C),
+.BR dlclose (3C),
+.BR dldump (3C),
+.BR dlerror (3C),
+.BR dlinfo (3C),
+.BR dlopen (3C),
+.BR attributes (7),
+.BR standards (7)
.sp
.LP
\fILinker and Libraries Guide\fR
diff --git a/usr/src/man/man3c/door_bind.3c b/usr/src/man/man3c/door_bind.3c
index 5283481ca8..cd090ccaa0 100644
--- a/usr/src/man/man3c/door_bind.3c
+++ b/usr/src/man/man3c/door_bind.3c
@@ -172,7 +172,7 @@ main()
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -191,5 +191,8 @@ MT-Level Safe
.SH SEE ALSO
.LP
-\fBfork\fR(2), \fBdoor_create\fR(3C), \fBdoor_return\fR(3C),
-\fBdoor_server_create\fR(3C), \fBattributes\fR(5)
+.BR fork (2),
+.BR door_create (3C),
+.BR door_return (3C),
+.BR door_server_create (3C),
+.BR attributes (7)
diff --git a/usr/src/man/man3c/door_call.3c b/usr/src/man/man3c/door_call.3c
index c2e7515365..81584c51a6 100644
--- a/usr/src/man/man3c/door_call.3c
+++ b/usr/src/man/man3c/door_call.3c
@@ -176,7 +176,7 @@ invocation is not idempotent the caller should mask any signals that may be
generated during a \fBdoor_call()\fR operation. If the client aborts in the
middle of a \fBdoor_call()\fR and the door was not created with the
\fBDOOR_NO_CANCEL\fR flag, the server thread is notified using the POSIX (see
-\fBstandards\fR(5)) thread cancellation mechanism. See \fBcancellation\fR(5).
+\fBstandards\fR(7)) thread cancellation mechanism. See \fBcancellation\fR(7).
.SH RETURN VALUES
.LP
Upon successful completion, \fB0\fR is returned. Otherwise, \fB\(mi1\fR is
@@ -291,7 +291,7 @@ System could not create overflow area in caller for results.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -310,6 +310,12 @@ MT-Level Safe
.SH SEE ALSO
.LP
-\fBmunmap\fR(2), \fBdoor_create\fR(3C), \fBdoor_getparam\fR(3C),
-\fBdoor_info\fR(3C), \fBdoor_return\fR(3C), \fBlibdoor\fR(3LIB),
-\fBattributes\fR(5), \fBcancellation\fR(5), \fBstandards\fR(5)
+.BR munmap (2),
+.BR door_create (3C),
+.BR door_getparam (3C),
+.BR door_info (3C),
+.BR door_return (3C),
+.BR libdoor (3LIB),
+.BR attributes (7),
+.BR cancellation (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/door_create.3c b/usr/src/man/man3c/door_create.3c
index 0f04425dd8..ec2eb50688 100644
--- a/usr/src/man/man3c/door_create.3c
+++ b/usr/src/man/man3c/door_create.3c
@@ -94,7 +94,7 @@ procedure will always be invoked with an \fIn_desc\fR argument of 0.
.RS 4n
Clients which abort calls to \fBdoor_call()\fR on this door will not cause the
cancellation of the server thread handling the request. See
-\fBcancellation\fR(5).
+\fBcancellation\fR(7).
.RE
.sp
@@ -200,7 +200,7 @@ main(int argc, char *argv[])
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -219,7 +219,13 @@ MT-Level Safe
.SH SEE ALSO
.LP
-\fBdoor_bind\fR(3C), \fBdoor_call\fR(3C), \fBdoor_info\fR(3C),
-\fBdoor_revoke\fR(3C), \fBdoor_setparam\fR(3C), \fBdoor_server_create\fR(3C),
-\fBfattach\fR(3C), \fBlibdoor\fR(3LIB), \fBattributes\fR(5),
-\fBcancellation\fR(5)
+.BR door_bind (3C),
+.BR door_call (3C),
+.BR door_info (3C),
+.BR door_revoke (3C),
+.BR door_server_create (3C),
+.BR door_setparam (3C),
+.BR fattach (3C),
+.BR libdoor (3LIB),
+.BR attributes (7),
+.BR cancellation (7)
diff --git a/usr/src/man/man3c/door_cred.3c b/usr/src/man/man3c/door_cred.3c
index b560bb80dc..b1e6a0351d 100644
--- a/usr/src/man/man3c/door_cred.3c
+++ b/usr/src/man/man3c/door_cred.3c
@@ -70,7 +70,7 @@ The \fBdoor_cred()\fR function is obsolete. Applications should use the
\fBdoor_ucred\fR(3C) function in place of \fBdoor_cred()\fR.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -89,5 +89,7 @@ MT-Level Safe
.SH SEE ALSO
.LP
-\fBdoor_call\fR(3C), \fBdoor_create\fR(3C), \fBdoor_ucred\fR(3C),
-\fBattributes\fR(5)
+.BR door_call (3C),
+.BR door_create (3C),
+.BR door_ucred (3C),
+.BR attributes (7)
diff --git a/usr/src/man/man3c/door_getparam.3c b/usr/src/man/man3c/door_getparam.3c
index 7922d2badb..3c057fbd90 100644
--- a/usr/src/man/man3c/door_getparam.3c
+++ b/usr/src/man/man3c/door_getparam.3c
@@ -201,7 +201,7 @@ if (door_setparam(fd, DOOR_PARAM_DATA_MIN,
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -218,7 +218,9 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBdoor_call\fR(3C), \fBdoor_create\fR(3C), \fBattributes\fR(5)
+.BR door_call (3C),
+.BR door_create (3C),
+.BR attributes (7)
.SH NOTES
.LP
The parameters that can be manipulated by \fBdoor_setparam()\fR are not the
diff --git a/usr/src/man/man3c/door_info.3c b/usr/src/man/man3c/door_info.3c
index 19d11bc863..72dda01d15 100644
--- a/usr/src/man/man3c/door_info.3c
+++ b/usr/src/man/man3c/door_info.3c
@@ -98,7 +98,7 @@ descriptors.
.ad
.RS 20n
Clients who abort a \fBdoor_call\fR(3C) call on this door will not cause the
-\fBcancellation\fR(5) of the server thread handling the request.
+\fBcancellation\fR(7) of the server thread handling the request.
.RE
.sp
@@ -154,7 +154,7 @@ The address of argument \fIinfo\fR is an invalid address.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -173,5 +173,9 @@ MT-Level Safe
.SH SEE ALSO
.LP
-\fBdoor_bind\fR(3C), \fBdoor_call\fR(3C), \fBdoor_create\fR(3C),
-\fBdoor_server_create\fR(3C), \fBattributes\fR(5), \fBcancellation\fR(5)
+.BR door_bind (3C),
+.BR door_call (3C),
+.BR door_create (3C),
+.BR door_server_create (3C),
+.BR attributes (7),
+.BR cancellation (7)
diff --git a/usr/src/man/man3c/door_return.3c b/usr/src/man/man3c/door_return.3c
index 25a2f46d8d..488c086fcc 100644
--- a/usr/src/man/man3c/door_return.3c
+++ b/usr/src/man/man3c/door_return.3c
@@ -73,7 +73,7 @@ The client has too many open descriptors.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -92,4 +92,5 @@ MT-Level Safe
.SH SEE ALSO
.LP
-\fBdoor_call\fR(3C), \fBattributes\fR(5)
+.BR door_call (3C),
+.BR attributes (7)
diff --git a/usr/src/man/man3c/door_revoke.3c b/usr/src/man/man3c/door_revoke.3c
index 1e76083f76..227a5d6917 100644
--- a/usr/src/man/man3c/door_revoke.3c
+++ b/usr/src/man/man3c/door_revoke.3c
@@ -54,7 +54,7 @@ The door descriptor was not created by this process (with
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -73,4 +73,6 @@ MT-Level Safe
.SH SEE ALSO
.LP
-\fBclose\fR(2), \fBdoor_create\fR(3C), \fBattributes\fR(5)
+.BR close (2),
+.BR door_create (3C),
+.BR attributes (7)
diff --git a/usr/src/man/man3c/door_server_create.3c b/usr/src/man/man3c/door_server_create.3c
index cc2940b976..001e0ef5da 100644
--- a/usr/src/man/man3c/door_server_create.3c
+++ b/usr/src/man/man3c/door_server_create.3c
@@ -23,7 +23,7 @@ incoming concurrent door invocations automatically. There is no pre-defined
upper limit on the number of server threads that the system creates in
response to incoming invocations (1 server thread for each active door
invocation). These threads are created with the default thread stack size and
-POSIX (see \fBstandards\fR(5)) threads cancellation disabled. The created
+POSIX (see \fBstandards\fR(7)) threads cancellation disabled. The created
threads also have the \fBTHR_BOUND\fR | \fBTHR_DETACHED\fR attributes for
Solaris threads and the \fBPTHREAD_SCOPE_SYSTEM\fR |
\fBPTHREAD_CREATE_DETACHED\fR attributes for POSIX threads. The signal
@@ -122,7 +122,7 @@ main(\|)
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -141,7 +141,13 @@ MT-Level Safe
.SH SEE ALSO
.LP
-\fBdoor_bind\fR(3C), \fBdoor_call\fR(3C), \fBdoor_create\fR(3C),
-\fBdoor_return\fR(3C), \fBpthread_create\fR(3C),
-\fBpthread_setcancelstate\fR(3C), \fBthr_create\fR(3C), \fBattributes\fR(5),
-\fBcancellation\fR(5), \fBstandards\fR(5)
+.BR door_bind (3C),
+.BR door_call (3C),
+.BR door_create (3C),
+.BR door_return (3C),
+.BR pthread_create (3C),
+.BR pthread_setcancelstate (3C),
+.BR thr_create (3C),
+.BR attributes (7),
+.BR cancellation (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/door_ucred.3c b/usr/src/man/man3c/door_ucred.3c
index e7b471d9d5..6ae4294b1f 100644
--- a/usr/src/man/man3c/door_ucred.3c
+++ b/usr/src/man/man3c/door_ucred.3c
@@ -85,7 +85,7 @@ sufficient to hold a ucred failed.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -102,5 +102,7 @@ MT-Level Safe
.SH SEE ALSO
.LP
-\fBdoor_call\fR(3C), \fBdoor_create\fR(3C), \fBucred_get\fR(3C),
-\fBattributes\fR(5)
+.BR door_call (3C),
+.BR door_create (3C),
+.BR ucred_get (3C),
+.BR attributes (7)
diff --git a/usr/src/man/man3c/drand48.3c b/usr/src/man/man3c/drand48.3c
index a91e5a8877..14f085250b 100644
--- a/usr/src/man/man3c/drand48.3c
+++ b/usr/src/man/man3c/drand48.3c
@@ -151,7 +151,7 @@ addend values, \fIa\fR and \fIc\fR, specified above.
.LP
For a more powerful random number generator, see \fBarc4random\fR(3C).
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -167,4 +167,7 @@ MT-Level Safe
.TE
.SH SEE ALSO
-\fBarc4random\fR(3C), \fBrand\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR arc4random (3C),
+.BR rand (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/dup2.3c b/usr/src/man/man3c/dup2.3c
index c2d8b43b84..ae84087a49 100644
--- a/usr/src/man/man3c/dup2.3c
+++ b/usr/src/man/man3c/dup2.3c
@@ -103,7 +103,7 @@ Additionally, the \fBdup3()\fR function will fail if:
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -120,6 +120,12 @@ MT-Level Async-Signal-Safe
.SH SEE ALSO
.LP
-\fBclose\fR(2), \fBcreat\fR(2), \fBexec\fR(2), \fBfcntl\fR(2),
-\fBgetrlimit\fR(2), \fBopen\fR(2), \fBpipe\fR(2), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR close (2),
+.BR creat (2),
+.BR exec (2),
+.BR fcntl (2),
+.BR getrlimit (2),
+.BR open (2),
+.BR pipe (2),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/econvert.3c b/usr/src/man/man3c/econvert.3c
index 9c726c166d..30ec139633 100644
--- a/usr/src/man/man3c/econvert.3c
+++ b/usr/src/man/man3c/econvert.3c
@@ -128,7 +128,7 @@ System Interfaces and Headers, Issue 4, Version 2.
longer form is produced when \fIndigit\fR >= 8.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -143,4 +143,6 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBecvt\fR(3C), \fBsprintf\fR(3C), \fBattributes\fR(5)
+.BR ecvt (3C),
+.BR sprintf (3C),
+.BR attributes (7)
diff --git a/usr/src/man/man3c/ecvt.3c b/usr/src/man/man3c/ecvt.3c
index b74c05e3dc..0b30a32fd9 100644
--- a/usr/src/man/man3c/ecvt.3c
+++ b/usr/src/man/man3c/ecvt.3c
@@ -134,7 +134,7 @@ For portability to implementations conforming to earlier versions of Solaris,
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -152,5 +152,8 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBprintf\fR(3C), \fBsetlocale\fR(3C), \fBsprintf\fR(3C), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR printf (3C),
+.BR setlocale (3C),
+.BR sprintf (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/enable_extended_FILE_stdio.3c b/usr/src/man/man3c/enable_extended_FILE_stdio.3c
index 08c3a2141d..43fe050687 100644
--- a/usr/src/man/man3c/enable_extended_FILE_stdio.3c
+++ b/usr/src/man/man3c/enable_extended_FILE_stdio.3c
@@ -73,7 +73,7 @@ system default), the application needs to raise the limit (see
descriptor limit.
.sp
.LP
-This function is used by the \fBextendedFILE\fR(5) preloadable library to
+This function is used by the \fBextendedFILE\fR(7) preloadable library to
enable the extended FILE facility.
.SH RETURN VALUES
.sp
@@ -145,7 +145,7 @@ process it. Alternatively, the \fBenable_extended_FILE_stdio()\fR function can
be used at a higher level in the code.
.sp
.LP
-Use \fBextendedFILE\fR(5) for binary relief.
+Use \fBextendedFILE\fR(7) for binary relief.
.SH EXAMPLES
.LP
\fBExample 1 \fRIncrease the file limit and enable the extended FILE facility.
@@ -175,7 +175,7 @@ if (retval == -1) {
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -193,9 +193,16 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBclose\fR(2), \fBfcntl\fR(2), \fBgetrlimit\fR(2), \fBfdopen\fR(3C),
-\fBfopen\fR(3C), \fBpopen\fR(3C), \fBsignal.h\fR(3HEAD), \fBstdio\fR(3C),
-\fBattributes\fR(5), \fBextendedFILE\fR(5)
+.BR close (2),
+.BR fcntl (2),
+.BR getrlimit (2),
+.BR fdopen (3C),
+.BR fopen (3C),
+.BR popen (3C),
+.BR stdio (3C),
+.BR signal.h (3HEAD),
+.BR attributes (7),
+.BR extendedFILE (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3c/encrypt.3c b/usr/src/man/man3c/encrypt.3c
index 196c0a9d11..580e046dce 100644
--- a/usr/src/man/man3c/encrypt.3c
+++ b/usr/src/man/man3c/encrypt.3c
@@ -111,7 +111,7 @@ for errors should set \fBerrno\fR to 0, call \fBencrypt()\fR, then test
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -129,4 +129,6 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBcrypt\fR(3C), \fBsetkey\fR(3C), \fBattributes\fR(5)
+.BR crypt (3C),
+.BR setkey (3C),
+.BR attributes (7)
diff --git a/usr/src/man/man3c/end.3c b/usr/src/man/man3c/end.3c
index 27e08e521c..e05ac5d339 100644
--- a/usr/src/man/man3c/end.3c
+++ b/usr/src/man/man3c/end.3c
@@ -79,4 +79,6 @@ underscore.
.SH SEE ALSO
.sp
.LP
-\fBbrk\fR(2), \fBmalloc\fR(3C), \fBstdio\fR(3C)
+.BR brk (2),
+.BR malloc (3C),
+.BR stdio (3C)
diff --git a/usr/src/man/man3c/endian.3c b/usr/src/man/man3c/endian.3c
index 65c07323bb..06cf4d6e5b 100644
--- a/usr/src/man/man3c/endian.3c
+++ b/usr/src/man/man3c/endian.3c
@@ -117,7 +117,7 @@ native byte order and big- or little-endian.
All of the functions in this family simply return their input when the host's
native byte order is the same as the desired order.
For more information on endianness, see
-.Xr byteorder 5 .
+.Xr byteorder 7 .
.Pp
The
.Fn betoh16 ,
@@ -188,5 +188,5 @@ converted.
.Sh SEE ALSO
.Xr byteorder 3C ,
.Xr endian.h 3HEAD ,
-.Xr attributes 5 ,
-.Xr byteorder 5
+.Xr attributes 7 ,
+.Xr byteorder 7
diff --git a/usr/src/man/man3c/epoll_create.3c b/usr/src/man/man3c/epoll_create.3c
index 624e0f3a16..fa594bdc36 100644
--- a/usr/src/man/man3c/epoll_create.3c
+++ b/usr/src/man/man3c/epoll_create.3c
@@ -25,7 +25,7 @@ epoll_create, epoll_create1 \- create an epoll instance
.SH DESCRIPTION
The \fBepoll_create()\fR and \fBepoll_create1()\fR functions both create an
-\fBepoll\fR(5) instance that can be operated upon via \fBepoll_ctl\fR(3C),
+\fBepoll\fR(7) instance that can be operated upon via \fBepoll_ctl\fR(3C),
\fBepoll_wait\fR(3C) and \fBepoll_pwait\fR(3C). \fBepoll\fR instances are
represented as file descriptors, and should be closed via \fBclose\fR(2).
@@ -81,11 +81,13 @@ The maximum allowable number of files is currently open in the system.
.sp
.SH NOTES
-The \fBepoll\fR(5) facility is implemented for purposes of offering
+The \fBepoll\fR(7) facility is implemented for purposes of offering
compatibility for Linux-borne applications; native
applications should continue to prefer using event ports via the
\fBport_create\fR(3C), \fBport_associate\fR(3C) and \fBport_get\fR(3C)
-interfaces. See \fBepoll\fR(5) for compatibility details and restrictions.
+interfaces. See \fBepoll\fR(7) for compatibility details and restrictions.
.SH SEE ALSO
-\fBepoll_ctl\fR(3C), \fBepoll_wait\fR(3C), \fBepoll\fR(5)
+.BR epoll_ctl (3C),
+.BR epoll_wait (3C),
+.BR epoll (7)
diff --git a/usr/src/man/man3c/epoll_ctl.3c b/usr/src/man/man3c/epoll_ctl.3c
index b80efb8b33..5b71feb77a 100644
--- a/usr/src/man/man3c/epoll_ctl.3c
+++ b/usr/src/man/man3c/epoll_ctl.3c
@@ -30,7 +30,7 @@ Valid values for \fIop\fR:
\fBEPOLL_CTL_ADD\fR
.ad
.RS 12n
-For the \fBepoll\fR(5) instance specified by \fIepfd\fR,
+For the \fBepoll\fR(7) instance specified by \fIepfd\fR,
associate the file descriptor specified by \fIfd\fR with the event specified
by \fIevent\fR.
.RE
@@ -41,7 +41,7 @@ by \fIevent\fR.
\fBEPOLL_CTL_DEL\fR
.ad
.RS 12n
-For the \fBepoll\fR(5) instance specified by \fIepfd\fR,
+For the \fBepoll\fR(7) instance specified by \fIepfd\fR,
remove all event associations for the file descriptor specified by \fIfd\fR.
\fIevent\fR is ignored, and may be NULL.
.RE
@@ -52,7 +52,7 @@ remove all event associations for the file descriptor specified by \fIfd\fR.
\fBEPOLL_CTL_MOD\fR
.ad
.RS 12n
-For the \fBepoll\fR(5) instance specified by \fIepfd\fR, modify the event
+For the \fBepoll\fR(7) instance specified by \fIepfd\fR, modify the event
association for the file descriptor specified by \fIfd\fR to be that
specified by \fIevent\fR.
@@ -238,7 +238,7 @@ it has no meaning and is ignored.
.ad
.RS 14n
Sets the specified event to be in one-shot mode, whereby the event association
-with the \fBepoll\fR(5) instance specified by \fIepfd\fR is removed atomically
+with the \fBepoll\fR(7) instance specified by \fIepfd\fR is removed atomically
as the event is returned via \fBepoll_wait\fR(3C). Use of this mode allows
for resolution of some of the
races inherent in multithreaded use of \fBepoll_wait\fR(3C).
@@ -291,7 +291,7 @@ The memory associated with \fIevent\fR was not mapped.
.RS 10n
The operation specified was \fBEPOLL_CTL_ADD\fR and the specified file
descriptor is already associated with an event for the specified
-\fBepoll\fR(5) instance.
+\fBepoll\fR(7) instance.
.RE
.sp
@@ -302,18 +302,21 @@ descriptor is already associated with an event for the specified
.RS 10n
The operation specified was \fBEPOLL_CTL_MOD\fR or \fBEPOLL_CTL_DEL\fR and
the specified file descriptor is not associated with an event for the
-specified \fBepoll\fR(5) instance.
+specified \fBepoll\fR(7) instance.
.RE
.sp
.SH NOTES
-The \fBepoll\fR(5) facility is implemented for purposes of offering
+The \fBepoll\fR(7) facility is implemented for purposes of offering
compatibility for Linux-borne applications; native
applications should continue to prefer using event ports via the
\fBport_create\fR(3C), \fBport_associate\fR(3C) and \fBport_get\fR(3C)
-interfaces. See \fBepoll\fR(5) for compatibility details and restrictions.
+interfaces. See \fBepoll\fR(7) for compatibility details and restrictions.
.SH SEE ALSO
-\fBepoll_create\fR(3C), \fBepoll_wait\fR(3C),
-\fBport_create\fR(3C), \fBport_associate\fR(3C), \fBport_get\fR(3C),
-\fBepoll\fR(5)
+.BR epoll_create (3C),
+.BR epoll_wait (3C),
+.BR port_associate (3C),
+.BR port_create (3C),
+.BR port_get (3C),
+.BR epoll (7)
diff --git a/usr/src/man/man3c/epoll_wait.3c b/usr/src/man/man3c/epoll_wait.3c
index 7808661238..99cd7c399a 100644
--- a/usr/src/man/man3c/epoll_wait.3c
+++ b/usr/src/man/man3c/epoll_wait.3c
@@ -27,7 +27,7 @@ epoll_wait, epoll_pwait \- wait for epoll events
.fi
.SH DESCRIPTION
-The \fBepoll_wait()\fR function waits for events on the \fBepoll\fR(5)
+The \fBepoll_wait()\fR function waits for events on the \fBepoll\fR(7)
instance specified by \fIepfd\fR. The \fIevents\fR parameter must point to
an array of \fImaxevents\fR \fIepoll_event\fR structures to be
filled in with pending events. The \fItimeout\fR argument specifies the
@@ -82,19 +82,23 @@ A signal was received during the \fBepoll_wait()\fR or \fBepoll_pwait()\fR.
\fB\fBEINVAL\fR\fR
.ad
.RS 10n
-Either \fIepfd\fR is not a valid \fBepoll\fR(5) instance or \fImaxevents\fR
+Either \fIepfd\fR is not a valid \fBepoll\fR(7) instance or \fImaxevents\fR
is not greater than zero.
.RE
.sp
.SH NOTES
-The \fBepoll\fR(5) facility is implemented for purposes of offering
+The \fBepoll\fR(7) facility is implemented for purposes of offering
compatibility for Linux-borne applications; native
applications should continue to prefer using event ports via the
\fBport_create\fR(3C), \fBport_associate\fR(3C) and \fBport_get\fR(3C)
-interfaces. See \fBepoll\fR(5) for compatibility details and restrictions.
+interfaces. See \fBepoll\fR(7) for compatibility details and restrictions.
.SH SEE ALSO
-\fBepoll_create\fR(3C), \fBepoll_ctl\fR(3C),
-\fBport_create\fR(3C), \fBport_associate\fR(3C), \fBport_get\fR(3C),
-\fBpselect\fR(3C), \fBepoll\fR(5)
+.BR epoll_create (3C),
+.BR epoll_ctl (3C),
+.BR port_associate (3C),
+.BR port_create (3C),
+.BR port_get (3C),
+.BR pselect (3C),
+.BR epoll (7)
diff --git a/usr/src/man/man3c/err.3c b/usr/src/man/man3c/err.3c
index a82cca4a1b..c81427c3dd 100644
--- a/usr/src/man/man3c/err.3c
+++ b/usr/src/man/man3c/err.3c
@@ -127,7 +127,7 @@ err(1, "%s", string);
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -148,5 +148,8 @@ These functions are safe to use in multithreaded applications as long as
\fBsetlocale\fR(3C) is not being called to change the locale.
.SH SEE ALSO
.LP
-\fBexit\fR(3C), \fBgetexecname\fR(3C), \fBsetlocale\fR(3C), \fBstrerror\fR(3C),
-\fBattributes\fR(5)
+.BR exit (3C),
+.BR getexecname (3C),
+.BR setlocale (3C),
+.BR strerror (3C),
+.BR attributes (7)
diff --git a/usr/src/man/man3c/euclen.3c b/usr/src/man/man3c/euclen.3c
index e616e446f7..c55961a91f 100644
--- a/usr/src/man/man3c/euclen.3c
+++ b/usr/src/man/man3c/euclen.3c
@@ -55,7 +55,7 @@ These functions can be used safely in multithreaded applications, as long as
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -71,4 +71,6 @@ MT-Level MT-Safe with exceptions
.SH SEE ALSO
.sp
.LP
-\fBgetwidth\fR(3C), \fBsetlocale\fR(3C), \fBattributes\fR(5)
+.BR getwidth (3C),
+.BR setlocale (3C),
+.BR attributes (7)
diff --git a/usr/src/man/man3c/eventfd.3c b/usr/src/man/man3c/eventfd.3c
index c7e21d22d7..180ac40223 100644
--- a/usr/src/man/man3c/eventfd.3c
+++ b/usr/src/man/man3c/eventfd.3c
@@ -41,7 +41,7 @@
The
.Fn eventfd
function creates an
-.Xr eventfd 5
+.Xr eventfd 7
instance that has an associated 64-bit unsigned counter.
It returns a file descriptor that can be operated upon via
.Xr read 2 ,
@@ -237,4 +237,4 @@ file descriptors open in the calling process.
.Xr write 2 ,
.Xr epoll_wait 3C ,
.Xr port_get 3C ,
-.Xr eventfd 5
+.Xr eventfd 7
diff --git a/usr/src/man/man3c/exit.3c b/usr/src/man/man3c/exit.3c
index fe58c304e2..956817db95 100644
--- a/usr/src/man/man3c/exit.3c
+++ b/usr/src/man/man3c/exit.3c
@@ -45,7 +45,7 @@ successful or unsuccessful termination, respectively.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -61,5 +61,8 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBexit\fR(2), \fBatexit\fR(3C), \fBdldump\fR(3C), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR exit (2),
+.BR atexit (3C),
+.BR dldump (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/fattach.3c b/usr/src/man/man3c/fattach.3c
index 263ef2358f..fc39495e9b 100644
--- a/usr/src/man/man3c/fattach.3c
+++ b/usr/src/man/man3c/fattach.3c
@@ -144,7 +144,7 @@ appropriate privileges.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -162,9 +162,16 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBfdetach\fR(1M), \fBchmod\fR(2), \fBmount\fR(2), \fBstat\fR(2),
-\fBdoor_create\fR(3C), \fBfdetach\fR(3C), \fBisastream\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5), \fBstreamio\fR(7I)
+.BR chmod (2),
+.BR mount (2),
+.BR stat (2),
+.BR door_create (3C),
+.BR fdetach (3C),
+.BR isastream (3C),
+.BR streamio (4I),
+.BR attributes (7),
+.BR standards (7),
+.BR fdetach (8)
.sp
.LP
\fISTREAMS Programming Guide\fR
diff --git a/usr/src/man/man3c/fclose.3c b/usr/src/man/man3c/fclose.3c
index 3b48527eb9..97bbf2ea59 100644
--- a/usr/src/man/man3c/fclose.3c
+++ b/usr/src/man/man3c/fclose.3c
@@ -167,7 +167,7 @@ limits of the device.
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -183,6 +183,12 @@ MT-Level MT-Safe
.TE
.SH SEE ALSO
-\fBclose\fR(2), \fBexit\fR(2), \fBgetrlimit\fR(2), \fBulimit\fR(2),
-\fBfcloseall\fR(3C), \fBfopen\fR(3C), \fBstdio\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR close (2),
+.BR exit (2),
+.BR getrlimit (2),
+.BR ulimit (2),
+.BR fcloseall (3C),
+.BR fopen (3C),
+.BR stdio (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/fcloseall.3c b/usr/src/man/man3c/fcloseall.3c
index bd13dc76a6..79ba6f7070 100644
--- a/usr/src/man/man3c/fcloseall.3c
+++ b/usr/src/man/man3c/fcloseall.3c
@@ -50,6 +50,6 @@ Note, portable applications should always check the return value.
.Sh SEE ALSO
.Xr close 2 ,
.Xr fflush 3C ,
-.Xr attributes 5 ,
-.Xr environ 5 ,
-.Xr standards 5
+.Xr attributes 7 ,
+.Xr environ 7 ,
+.Xr standards 7
diff --git a/usr/src/man/man3c/fdatasync.3c b/usr/src/man/man3c/fdatasync.3c
index f8402c1608..02abe97ccd 100644
--- a/usr/src/man/man3c/fdatasync.3c
+++ b/usr/src/man/man3c/fdatasync.3c
@@ -111,7 +111,7 @@ returns the error conditions defined for \fBread\fR(2) and \fBwrite\fR(2).
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -125,12 +125,18 @@ Interface Stability Committed
_
MT-Level Async-Signal-Safe
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.sp
.LP
-\fBfcntl\fR(2), \fBopen\fR(2), \fBread\fR(2), \fBwrite\fR(2), \fBfsync\fR(3C),
-\fBaio_fsync\fR(3C), \fBfcntl.h\fR(3HEAD), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR fcntl (2),
+.BR open (2),
+.BR read (2),
+.BR write (2),
+.BR aio_fsync (3C),
+.BR fsync (3C),
+.BR fcntl.h (3HEAD),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/fdetach.3c b/usr/src/man/man3c/fdetach.3c
index cd33e40336..57cde0845f 100644
--- a/usr/src/man/man3c/fdetach.3c
+++ b/usr/src/man/man3c/fdetach.3c
@@ -167,7 +167,7 @@ length exceeds \fBPATH_MAX\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -183,8 +183,12 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBfdetach\fR(1M), \fBclose\fR(2), \fBfattach\fR(3C), \fBattributes\fR(5),
-\fBstandards\fR(5), \fBstreamio\fR(7I)
+.BR close (2),
+.BR fattach (3C),
+.BR streamio (4I),
+.BR attributes (7),
+.BR standards (7),
+.BR fdetach (8)
.sp
.LP
\fISTREAMS Programming Guide\fR
diff --git a/usr/src/man/man3c/fdopen.3c b/usr/src/man/man3c/fdopen.3c
index 0954e8e639..6048b0d03b 100644
--- a/usr/src/man/man3c/fdopen.3c
+++ b/usr/src/man/man3c/fdopen.3c
@@ -177,7 +177,7 @@ functions.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -199,5 +199,11 @@ respects this function is Standard.
.SH SEE ALSO
.sp
.LP
-\fBcreat\fR(2), \fBdup\fR(2), \fBopen\fR(2), \fBpipe\fR(2), \fBfclose\fR(3C),
-\fBfopen\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR creat (2),
+.BR dup (2),
+.BR open (2),
+.BR pipe (2),
+.BR fclose (3C),
+.BR fopen (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/fflush.3c b/usr/src/man/man3c/fflush.3c
index ffadc8399e..39268bc146 100644
--- a/usr/src/man/man3c/fflush.3c
+++ b/usr/src/man/man3c/fflush.3c
@@ -166,7 +166,7 @@ limits of the device.
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -182,4 +182,7 @@ MT-Level MT-Safe
.TE
.SH SEE ALSO
-\fBgetrlimit\fR(2), \fBulimit\fR(2), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR getrlimit (2),
+.BR ulimit (2),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/ffs.3c b/usr/src/man/man3c/ffs.3c
index 2684706fc3..56e0a613bf 100644
--- a/usr/src/man/man3c/ffs.3c
+++ b/usr/src/man/man3c/ffs.3c
@@ -89,7 +89,7 @@ the last bit set. If \fIi\fR is 0, then they return 0.
No errors are defined.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -106,4 +106,5 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/fgetattr.3c b/usr/src/man/man3c/fgetattr.3c
index 7b473bada4..951a5b7829 100644
--- a/usr/src/man/man3c/fgetattr.3c
+++ b/usr/src/man/man3c/fgetattr.3c
@@ -288,7 +288,7 @@ if (setattrat(fildes, XATTR_VIEW_READWRITE, "file", request)) {
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -305,6 +305,13 @@ MT-Level Safe
.SH SEE ALSO
.LP
-\fBcreat\fR(2), \fBdup\fR(2), \fBfcntl\fR(2), \fBfstat\fR(2), \fBfstatat\fR(2),
-\fBopen\fR(2), \fBpipe\fR(2), \fBlibnvpair\fR(3LIB), \fBattributes\fR(5),
-\fBfsattr\fR(5)
+.BR creat (2),
+.BR dup (2),
+.BR fcntl (2),
+.BR fstat (2),
+.BR fstatat (2),
+.BR open (2),
+.BR pipe (2),
+.BR libnvpair (3LIB),
+.BR attributes (7),
+.BR fsattr (7)
diff --git a/usr/src/man/man3c/fgetc.3c b/usr/src/man/man3c/fgetc.3c
index f4c07cb3b4..16527953e6 100644
--- a/usr/src/man/man3c/fgetc.3c
+++ b/usr/src/man/man3c/fgetc.3c
@@ -89,7 +89,7 @@ char\fR converted to an \fBint\fR, from the input stream pointed to by
stream (if defined).
.sp
.LP
-For standard-conforming (see \fBstandards\fR(5)) applications, if the
+For standard-conforming (see \fBstandards\fR(7)) applications, if the
end-of-file indicator for the stream is set, \fBfgetc()\fR returns \fBEOF\fR
whether or not a next byte is present.
.sp
@@ -139,7 +139,7 @@ Upon successful completion, \fBfgetc()\fR, \fBgetc()\fR, \fBgetc_unlocked()\fR,
\fBgetchar()\fR, \fBgetchar_unlocked()\fR, and \fBgetw()\fR return the next
byte from the input stream pointed to by \fIstream\fR. If the stream is at
end-of-file, the end-of-file indicator for the stream is set and these
-functions return \fBEOF\fR. For standard-conforming (see \fBstandards\fR(5))
+functions return \fBEOF\fR. For standard-conforming (see \fBstandards\fR(7))
applications, if the end-of-file indicator for the stream is set, these
functions return \fBEOF\fR whether or not the stream is at end-of-file. If a
read error occurs, the error indicator for the stream is set, \fBEOF\fR is
@@ -265,7 +265,7 @@ functions instead.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -285,11 +285,25 @@ MT-Level See \fBNOTES\fR below.
.SH SEE ALSO
.sp
.LP
-\fBIntro\fR(3), \fB__fsetlocking\fR(3C), \fBfclose\fR(3C), \fBfeof\fR(3C),
-\fBfgets\fR(3C), \fBfgetwc\fR(3C), \fBfgetws\fR(3C), \fBflockfile\fR(3C),
-\fBfopen\fR(3C), \fBfread\fR(3C), \fBfscanf\fR(3C), \fBgets\fR(3C),
-\fBputc\fR(3C), \fBscanf\fR(3C), \fBstdio\fR(3C), \fBungetc\fR(3C),
-\fBungetwc\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR Intro (3),
+.BR __fsetlocking (3C),
+.BR fclose (3C),
+.BR feof (3C),
+.BR fgets (3C),
+.BR fgetwc (3C),
+.BR fgetws (3C),
+.BR flockfile (3C),
+.BR fopen (3C),
+.BR fread (3C),
+.BR fscanf (3C),
+.BR gets (3C),
+.BR putc (3C),
+.BR scanf (3C),
+.BR stdio (3C),
+.BR ungetc (3C),
+.BR ungetwc (3C),
+.BR attributes (7),
+.BR standards (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3c/fgetpos.3c b/usr/src/man/man3c/fgetpos.3c
index c0873d8aec..2ab6b1c62d 100644
--- a/usr/src/man/man3c/fgetpos.3c
+++ b/usr/src/man/man3c/fgetpos.3c
@@ -104,11 +104,11 @@ object of type \fBfpos_t\fR.
.sp
.LP
The \fBfgetpos()\fR function has a transitional interface for 64-bit file
-offsets. See \fBlf64\fR(5).
+offsets. See \fBlf64\fR(7).
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -124,5 +124,11 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBfopen\fR(3C), \fBfsetpos\fR(3C), \fBftell\fR(3C), \fBrewind\fR(3C),
-\fBungetc\fR(3C), \fBattributes\fR(5), \fBlf64\fR(5), \fBstandards\fR(5)
+.BR fopen (3C),
+.BR fsetpos (3C),
+.BR ftell (3C),
+.BR rewind (3C),
+.BR ungetc (3C),
+.BR attributes (7),
+.BR lf64 (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/fgetwc.3c b/usr/src/man/man3c/fgetwc.3c
index a33fce04e2..f696af79bd 100644
--- a/usr/src/man/man3c/fgetwc.3c
+++ b/usr/src/man/man3c/fgetwc.3c
@@ -91,7 +91,7 @@ Upon successful completion both functions return the
wide-character code of the character read from the input stream pointed to by
\fIstream\fR converted to a type \fBwint_t\fR.
.LP
-For standard-conforming (see \fBstandards\fR(5)) applications, if the
+For standard-conforming (see \fBstandards\fR(7)) applications, if the
end-of-file indicator for the stream is set, \fBfgetwc()\fR and
\fBfgetwc_l()\fR return \fBWEOF\fR whether or not the stream is at
end-of-file.
@@ -150,7 +150,7 @@ between an error condition and an end-of-file condition.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.TS
box;
c | c
@@ -172,9 +172,22 @@ function is Standard. The
function is Uncommitted.
.SH SEE ALSO
.LP
-\fBfeof\fR(3C), \fBferror\fR(3C), \fBfgetc\fR(3C), \fBfgets\fR(3C),
-\fBfgetws\fR(3C), \fBfopen\fR(3C), \fBfread\fR(3C), \fBfscanf\fR(3C),
-\fBgetc\fR(3C), \fBgetchar\fR(3C), \fBgets\fR(3C), \fBscanf\fR(3C),
-\fBnewlocale\fR(3C), \fBsetlocale\fR(3C), \fBungetc\fR(3C), \fBungetwc\fR(3C),
-\fBuselocale\fR(3C), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR feof (3C),
+.BR ferror (3C),
+.BR fgetc (3C),
+.BR fgets (3C),
+.BR fgetws (3C),
+.BR fopen (3C),
+.BR fread (3C),
+.BR fscanf (3C),
+.BR getc (3C),
+.BR getchar (3C),
+.BR gets (3C),
+.BR newlocale (3C),
+.BR scanf (3C),
+.BR setlocale (3C),
+.BR ungetc (3C),
+.BR ungetwc (3C),
+.BR uselocale (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/floating_to_decimal.3c b/usr/src/man/man3c/floating_to_decimal.3c
index 0900c3e76d..13362d7791 100644
--- a/usr/src/man/man3c/floating_to_decimal.3c
+++ b/usr/src/man/man3c/floating_to_decimal.3c
@@ -107,7 +107,7 @@ The \fBeconvert\fR(3C), \fBfconvert\fR(3C), \fBgconvert\fR(3C),
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -123,5 +123,9 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBeconvert\fR(3C), \fBfconvert\fR(3C), \fBgconvert\fR(3C), \fBprintf\fR(3C),
-\fBsprintf\fR(3C), \fBattributes\fR(5)
+.BR econvert (3C),
+.BR fconvert (3C),
+.BR gconvert (3C),
+.BR printf (3C),
+.BR sprintf (3C),
+.BR attributes (7)
diff --git a/usr/src/man/man3c/flock.3c b/usr/src/man/man3c/flock.3c
index 66e9bedde3..18b1825d12 100644
--- a/usr/src/man/man3c/flock.3c
+++ b/usr/src/man/man3c/flock.3c
@@ -70,7 +70,7 @@ process holding a lock on a file forks and the child explicitly unlocks the
file, the parent will lose its lock. See \fBfcntl\fR(2) for more information
about file locking and the interaction between locks created by this function
and those created by other mechanisms. These locks are currently not supported
-over remote file systems (e.g. \fBnfs\fR(4)) which use the Network Lock
+over remote file systems (e.g. \fBnfs\fR(5)) which use the Network Lock
Manager.
.sp
.LP
@@ -181,7 +181,7 @@ removed OFD-style locks; see \fBfcntl\fR(2) for information about the
interaction between OFD-style and POSIX-style file locks.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -198,6 +198,15 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBIntro\fR(2), \fBalarm\fR(2), \fBchmod\fR(2), \fBclose\fR(2), \fBcreat\fR(2),
-\fBfcntl\fR(2), \fBmmap\fR(2), \fBopen\fR(2), \fBread\fR(2), \fBwrite\fR(2),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR Intro (2),
+.BR alarm (2),
+.BR chmod (2),
+.BR close (2),
+.BR creat (2),
+.BR fcntl (2),
+.BR mmap (2),
+.BR open (2),
+.BR read (2),
+.BR write (2),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/flockfile.3c b/usr/src/man/man3c/flockfile.3c
index 66c56654eb..71fb196112 100644
--- a/usr/src/man/man3c/flockfile.3c
+++ b/usr/src/man/man3c/flockfile.3c
@@ -130,7 +130,7 @@ funlockfile(iop);
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -148,11 +148,18 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBIntro\fR(3), \fB__fsetlocking\fR(3C), \fBferror\fR(3C), \fBfprintf\fR(3C),
-\fBgetc\fR(3C), \fBputc\fR(3C), \fBstdio\fR(3C), \fBungetc\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR Intro (3),
+.BR __fsetlocking (3C),
+.BR ferror (3C),
+.BR fprintf (3C),
+.BR getc (3C),
+.BR putc (3C),
+.BR stdio (3C),
+.BR ungetc (3C),
+.BR attributes (7),
+.BR standards (7)
.SH NOTES
.sp
.LP
The interfaces on this page are as specified in IEEE Std 1003.1:2001. See
-\fBstandards\fR(5).
+\fBstandards\fR(7).
diff --git a/usr/src/man/man3c/fmtmsg.3c b/usr/src/man/man3c/fmtmsg.3c
index ad389bfa34..989534b4c9 100644
--- a/usr/src/man/man3c/fmtmsg.3c
+++ b/usr/src/man/man3c/fmtmsg.3c
@@ -466,7 +466,7 @@ TO FIX: refer to manual UX:cat:001
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -484,5 +484,9 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBfmtmsg\fR(1), \fBaddseverity\fR(3C), \fBgettxt\fR(3C), \fBprintf\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR fmtmsg (1),
+.BR addseverity (3C),
+.BR gettxt (3C),
+.BR printf (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/fnmatch.3c b/usr/src/man/man3c/fnmatch.3c
index d39d5dfb1e..3d8737aacd 100644
--- a/usr/src/man/man3c/fnmatch.3c
+++ b/usr/src/man/man3c/fnmatch.3c
@@ -64,7 +64,7 @@
The
.Fn fnmatch
function matches patterns as described on the
-.Xr fnmatch 5
+.Xr fnmatch 7
manual page
.Po with the exceptions noted in the
.Sx STANDARDS
@@ -236,9 +236,9 @@ is not being called to change the locale.
.Xr glob 3C ,
.Xr setlocale 3C ,
.Xr wordexp 3C ,
-.Xr attributes 5 ,
-.Xr fnmatch 5 ,
-.Xr standards 5
+.Xr attributes 7 ,
+.Xr fnmatch 7 ,
+.Xr standards 7
.Sh STANDARDS
The current implementation of the
.Fn fnmatch
diff --git a/usr/src/man/man3c/fopen.3c b/usr/src/man/man3c/fopen.3c
index a36ea40697..a2fd4aeefe 100644
--- a/usr/src/man/man3c/fopen.3c
+++ b/usr/src/man/man3c/fopen.3c
@@ -130,7 +130,7 @@ flags (including the \fB+\fR) does not matter.
.sp
.LP
The character \fBb\fR has no effect, but is allowed for ISO C standard
-conformance (see \fBstandards\fR(5)). Opening a file with read mode (\fBr\fR as
+conformance (see \fBstandards\fR(7)). Opening a file with read mode (\fBr\fR as
the first character in the \fImode\fR argument) fails if the file does not
exist or cannot be read.
.sp
@@ -414,10 +414,10 @@ access \fBFILE\fR structure contents.
.sp
.LP
The \fBfopen()\fR function has a transitional interface for 64-bit file
-offsets. See \fBlf64\fR(5).
+offsets. See \fBlf64\fR(7).
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -438,7 +438,15 @@ The \fBF\fR character in the \fImode\fR argument is Evolving. In all other
respects this function is Standard.
.SH SEE ALSO
.LP
-\fBenable_extended_FILE_stdio\fR(3C), \fBfclose\fR(3C),
-\fBfcloseall\fR(3C), \fBfdopen\fR(3C), \fBfflush\fR(3C),
-\fBfreopen\fR(3C), \fBfsetpos\fR(3C), \fBrewind\fR(3C), \fBopen\fR(2),
-\fBattributes\fR(5), \fBlf64\fR(5), \fBstandards\fR(5)
+.BR open (2),
+.BR enable_extended_FILE_stdio (3C),
+.BR fclose (3C),
+.BR fcloseall (3C),
+.BR fdopen (3C),
+.BR fflush (3C),
+.BR freopen (3C),
+.BR fsetpos (3C),
+.BR rewind (3C),
+.BR attributes (7),
+.BR lf64 (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/fpgetround.3c b/usr/src/man/man3c/fpgetround.3c
index 55fdf178a3..7f4e9b137a 100644
--- a/usr/src/man/man3c/fpgetround.3c
+++ b/usr/src/man/man3c/fpgetround.3c
@@ -158,7 +158,7 @@ Individual bits may be examined using the constants defined in
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -174,4 +174,5 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBisnand\fR(3C), \fBattributes\fR(5)
+.BR isnand (3C),
+.BR attributes (7)
diff --git a/usr/src/man/man3c/fputc.3c b/usr/src/man/man3c/fputc.3c
index 2cd811282d..ddd2cfefd0 100644
--- a/usr/src/man/man3c/fputc.3c
+++ b/usr/src/man/man3c/fputc.3c
@@ -273,7 +273,7 @@ in the context of either multibyte character streams or wide-character streams.
Application programmers are encouraged to use one of the character-based output
functions instead.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -291,11 +291,21 @@ MT-Level See \fBNOTES\fR below.
.TE
.SH SEE ALSO
-\fBgetrlimit\fR(2), \fBulimit\fR(2) \fBwrite\fR(2), \fBIntro\fR(3),
-\fBabort\fR(3C), \fBexit\fR(3C), \fBfclose\fR(3C), \fBferror\fR(3C),
-\fBfflush\fR(3C), \fBflockfile\fR(3C), \fBprintf\fR(3C),
-\fBputc\fR(3C), \fBputs\fR(3C), \fBsetbuf\fR(3C), \fBstdio\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+\fBgetrlimit\fR(2), \fBulimit\fR(2) \fBwrite\fR(2),
+.BR Intro (3),
+.BR abort (3C),
+.BR exit (3C),
+.BR fclose (3C),
+.BR ferror (3C),
+.BR fflush (3C),
+.BR flockfile (3C),
+.BR printf (3C),
+.BR putc (3C),
+.BR puts (3C),
+.BR setbuf (3C),
+.BR stdio (3C),
+.BR attributes (7),
+.BR standards (7)
.SH NOTES
The \fBfputc()\fR, \fBputc()\fR, \fBputchar()\fR, and \fBputw()\fR routines are
MT-Safe in multithreaded applications. The \fBputc_unlocked()\fR and
diff --git a/usr/src/man/man3c/fputwc.3c b/usr/src/man/man3c/fputwc.3c
index 0a9353c91a..fc0e75023a 100644
--- a/usr/src/man/man3c/fputwc.3c
+++ b/usr/src/man/man3c/fputwc.3c
@@ -216,7 +216,7 @@ more than once. In particular, \fBputwc(\fR\fIwc\fR\fB, \fR\fI*f++\fR\fB)\fR
does not work sensibly. The \fBfputwc()\fR function should be used instead
when evaluating the \fIstream\fR argument has side effects.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -232,6 +232,13 @@ MT-Level MT-Safe
.TE
.SH SEE ALSO
-\fBexit\fR(2), \fBulimit\fR(2), \fBabort\fR(3C), \fBfclose\fR(3C),
-\fBferror\fR(3C), \fBfflush\fR(3C), \fBfopen\fR(3C), \fBsetbuf\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR exit (2),
+.BR ulimit (2),
+.BR abort (3C),
+.BR fclose (3C),
+.BR ferror (3C),
+.BR fflush (3C),
+.BR fopen (3C),
+.BR setbuf (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/fputws.3c b/usr/src/man/man3c/fputws.3c
index a4936b7dcb..c300557df1 100644
--- a/usr/src/man/man3c/fputws.3c
+++ b/usr/src/man/man3c/fputws.3c
@@ -81,7 +81,7 @@ Refer to \fBfputwc\fR(3C).
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -99,5 +99,11 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBexit\fR(2), \fBabort\fR(3C), \fBfclose\fR(3C), \fBfflush\fR(3C),
-\fBfopen\fR(3C), \fBfputwc\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR exit (2),
+.BR abort (3C),
+.BR fclose (3C),
+.BR fflush (3C),
+.BR fopen (3C),
+.BR fputwc (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/fread.3c b/usr/src/man/man3c/fread.3c
index 7266aec650..e91eebb81d 100644
--- a/usr/src/man/man3c/fread.3c
+++ b/usr/src/man/man3c/fread.3c
@@ -125,7 +125,7 @@ application on a different processor.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -143,6 +143,14 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBread\fR(2), \fBfclose\fR(3C), \fBferror\fR(3C), \fBfopen\fR(3C),
-\fBgetc\fR(3C), \fBgets\fR(3C), \fBprintf\fR(3C), \fBputc\fR(3C),
-\fBputs\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR read (2),
+.BR fclose (3C),
+.BR ferror (3C),
+.BR fopen (3C),
+.BR getc (3C),
+.BR gets (3C),
+.BR printf (3C),
+.BR putc (3C),
+.BR puts (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/freopen.3c b/usr/src/man/man3c/freopen.3c
index a53cd77706..8566700fb9 100644
--- a/usr/src/man/man3c/freopen.3c
+++ b/usr/src/man/man3c/freopen.3c
@@ -67,7 +67,7 @@ pointed to by \fIfilename\fR and associates the stream pointed to by
.sp
.LP
If \fIfilename\fR is a null pointer and the application conforms to SUSv3 (see
-\fBstandards\fR(5)), the \fBfreopen()\fR function attempts to change the mode
+\fBstandards\fR(7)), the \fBfreopen()\fR function attempts to change the mode
of the stream to that specified by \fImode\fR, as though the name of the file
currently associated with the \fIstream\fR had been used. This behavior
is not supported by streams that are backed by memory, such as
@@ -325,9 +325,9 @@ other files. By default \fBstderr\fR is unbuffered, but the use of
.sp
.LP
The \fBfreopen()\fR function has a transitional interface for 64-bit file
-offsets. See \fBlf64\fR(5).
+offsets. See \fBlf64\fR(7).
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -343,5 +343,10 @@ MT-Level MT-Safe
.TE
.SH SEE ALSO
-\fBfclose\fR(3C), \fBfdopen\fR(3C), \fBfopen\fR(3C), \fBstdio\fR(3C),
-\fBattributes\fR(5), \fBlf64\fR(5), \fBstandards\fR(5)
+.BR fclose (3C),
+.BR fdopen (3C),
+.BR fopen (3C),
+.BR stdio (3C),
+.BR attributes (7),
+.BR lf64 (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/fseek.3c b/usr/src/man/man3c/fseek.3c
index fbcdaac52c..0d81291c57 100644
--- a/usr/src/man/man3c/fseek.3c
+++ b/usr/src/man/man3c/fseek.3c
@@ -297,9 +297,9 @@ necessarily measured in bytes.
.sp
.LP
The \fBfseeko()\fR function has a transitional interface for 64-bit file
-offsets. See \fBlf64\fR(5).
+offsets. See \fBlf64\fR(7).
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -315,6 +315,12 @@ MT-Level MT-Safe
.TE
.SH SEE ALSO
-\fBgetrlimit\fR(2), \fBulimit\fR(2), \fBftell\fR(3C),
-\fBrewind\fR(3C), \fBungetc\fR(3C), \fBungetwc\fR(3C), \fBattributes\fR(5),
-\fBlf64\fR(5), \fBstandards\fR(5)
+.BR getrlimit (2),
+.BR ulimit (2),
+.BR ftell (3C),
+.BR rewind (3C),
+.BR ungetc (3C),
+.BR ungetwc (3C),
+.BR attributes (7),
+.BR lf64 (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/fsetpos.3c b/usr/src/man/man3c/fsetpos.3c
index a96ccd9f27..b3b68e4d61 100644
--- a/usr/src/man/man3c/fsetpos.3c
+++ b/usr/src/man/man3c/fsetpos.3c
@@ -100,11 +100,11 @@ or a socket.
.sp
.LP
The \fBfsetpos()\fR function has a transitional interface for 64-bit file
-offsets. See \fBlf64\fR(5).
+offsets. See \fBlf64\fR(7).
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -122,6 +122,13 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBlseek\fR(2), \fBfgetpos\fR(3C), \fBfopen\fR(3C), \fBfseek\fR(3C),
-\fBftell\fR(3C), \fBrewind\fR(3C), \fBungetc\fR(3C), \fBattributes\fR(5),
-\fBlf64\fR(5), \fBstandards\fR(5)
+.BR lseek (2),
+.BR fgetpos (3C),
+.BR fopen (3C),
+.BR fseek (3C),
+.BR ftell (3C),
+.BR rewind (3C),
+.BR ungetc (3C),
+.BR attributes (7),
+.BR lf64 (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/fsync.3c b/usr/src/man/man3c/fsync.3c
index fae57398b1..a60ac174e6 100644
--- a/usr/src/man/man3c/fsync.3c
+++ b/usr/src/man/man3c/fsync.3c
@@ -86,7 +86,7 @@ There was no free space remaining on the device containing the file.
.ad
.RS 13n
Remote connection timed out. This occurs when the file is on an \fBNFS\fR file
-system mounted with the \fIsoft\fR option. See \fBmount_nfs\fR(1M).
+system mounted with the \fIsoft\fR option. See \fBmount_nfs\fR(8).
.RE
.sp
@@ -108,7 +108,7 @@ by the device driver that the write has taken place.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -122,12 +122,17 @@ Interface Stability Committed
_
MT-Level Async-Signal-Safe
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.sp
.LP
-\fBmount_nfs\fR(1M), \fBread\fR(2), \fBsync\fR(2), \fBwrite\fR(2),
-\fBfcntl.h\fR(3HEAD), \fBfdatasync\fR(3C), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR read (2),
+.BR sync (2),
+.BR write (2),
+.BR fdatasync (3C),
+.BR fcntl.h (3HEAD),
+.BR attributes (7),
+.BR standards (7),
+.BR mount_nfs (8)
diff --git a/usr/src/man/man3c/ftell.3c b/usr/src/man/man3c/ftell.3c
index 7228f12304..8408ad2158 100644
--- a/usr/src/man/man3c/ftell.3c
+++ b/usr/src/man/man3c/ftell.3c
@@ -129,9 +129,9 @@ The current file offset cannot be represented correctly in an object of type
.SH USAGE
The \fBftello()\fR function has a transitional interface for 64-bit file
-offsets. See \fBlf64\fR(5).
+offsets. See \fBlf64\fR(7).
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -147,5 +147,10 @@ MT-Level MT-Safe
.TE
.SH SEE ALSO
-\fBlseek\fR(2), \fBfopen\fR(3C), \fBfseek\fR(3C), \fBopen_wmemstream\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5), \fBlf64\fR(5)
+.BR lseek (2),
+.BR fopen (3C),
+.BR fseek (3C),
+.BR open_wmemstream (3C),
+.BR attributes (7),
+.BR lf64 (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/ftime.3c b/usr/src/man/man3c/ftime.3c
index 9b9ff4bf99..7e47473a2b 100644
--- a/usr/src/man/man3c/ftime.3c
+++ b/usr/src/man/man3c/ftime.3c
@@ -106,7 +106,7 @@ granularity of one) renders code non-portable.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -122,5 +122,10 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBdate\fR(1), \fBtime\fR(2), \fBctime\fR(3C), \fBgettimeofday\fR(3C),
-\fBtimezone\fR(4), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR date (1),
+.BR time (2),
+.BR ctime (3C),
+.BR gettimeofday (3C),
+.BR timezone (5),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/ftok.3c b/usr/src/man/man3c/ftok.3c
index 71d017daf4..c9ad0c046e 100644
--- a/usr/src/man/man3c/ftok.3c
+++ b/usr/src/man/man3c/ftok.3c
@@ -171,7 +171,7 @@ for paths naming different files on large filesystems.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -189,5 +189,9 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBmsgget\fR(2), \fBsemget\fR(2), \fBshmget\fR(2), \fBstat\fR(2),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR msgget (2),
+.BR semget (2),
+.BR shmget (2),
+.BR stat (2),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/fts.3c b/usr/src/man/man3c/fts.3c
index 974c79552d..ce10d7d155 100644
--- a/usr/src/man/man3c/fts.3c
+++ b/usr/src/man/man3c/fts.3c
@@ -822,4 +822,4 @@ See
.Xr chdir 2 ,
.Xr stat 2 ,
.Xr qsort 3C ,
-.Xr attributes 5
+.Xr attributes 7
diff --git a/usr/src/man/man3c/ftw.3c b/usr/src/man/man3c/ftw.3c
index 3e909d4313..055380d4d1 100644
--- a/usr/src/man/man3c/ftw.3c
+++ b/usr/src/man/man3c/ftw.3c
@@ -546,7 +546,7 @@ non-zero value at its next invocation.
.sp
.LP
The \fBftw()\fR and \fBnftw()\fR functions have transitional interfaces for
-64-bit file offsets. See \fBlf64\fR(5).
+64-bit file offsets. See \fBlf64\fR(7).
.sp
.LP
The \fBftw()\fR function is safe in multithreaded applications. The
@@ -555,7 +555,7 @@ The \fBftw()\fR function is safe in multithreaded applications. The
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -573,5 +573,8 @@ MT-Level MT-Safe with exceptions
.SH SEE ALSO
.sp
.LP
-\fBstat\fR(2), \fBlongjmp\fR(3C), \fBattributes\fR(5), \fBlf64\fR(5),
-\fBstandards\fR(5)
+.BR stat (2),
+.BR longjmp (3C),
+.BR attributes (7),
+.BR lf64 (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/fwide.3c b/usr/src/man/man3c/fwide.3c
index 1a01221710..7b99c09f8c 100644
--- a/usr/src/man/man3c/fwide.3c
+++ b/usr/src/man/man3c/fwide.3c
@@ -95,7 +95,7 @@ A call to \fBfwide()\fR with \fImode\fR set to 0 can be used to determine the
current orientation of a stream.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -112,4 +112,5 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/fwprintf.3c b/usr/src/man/man3c/fwprintf.3c
index 4179c242ce..00e5c37efc 100644
--- a/usr/src/man/man3c/fwprintf.3c
+++ b/usr/src/man/man3c/fwprintf.3c
@@ -797,7 +797,7 @@ Sonntag, 3. Juli, 10:02
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -815,8 +815,13 @@ MT-Level MT-Safe with exceptions
.SH SEE ALSO
.sp
.LP
-\fBbtowc\fR(3C), \fBfputwc\fR(3C), \fBfwscanf\fR(3C), \fBmbrtowc\fR(3C),
-\fBsetlocale\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR btowc (3C),
+.BR fputwc (3C),
+.BR fwscanf (3C),
+.BR mbrtowc (3C),
+.BR setlocale (3C),
+.BR attributes (7),
+.BR standards (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3c/fwrite.3c b/usr/src/man/man3c/fwrite.3c
index 92f13cd98f..0e9ea1617e 100644
--- a/usr/src/man/man3c/fwrite.3c
+++ b/usr/src/man/man3c/fwrite.3c
@@ -89,7 +89,7 @@ written using \fBfwrite()\fR are application-dependent, and possibly cannot be
read using \fBfread\fR(3C) by a different application or by the same
application on a different processor.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -105,7 +105,16 @@ MT-Level MT-Safe
.TE
.SH SEE ALSO
-\fBwrite\fR(2), \fBfclose\fR(3C), \fBferror\fR(3C), \fBfopen\fR(3C),
-\fBfread\fR(3C), \fBgetc\fR(3C), \fBgets\fR(3C), \fBopen_wmemstream\fR(3C),
-\fBprintf\fR(3C), \fBputc\fR(3C), \fBputs\fR(3C), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR write (2),
+.BR fclose (3C),
+.BR ferror (3C),
+.BR fopen (3C),
+.BR fread (3C),
+.BR getc (3C),
+.BR gets (3C),
+.BR open_wmemstream (3C),
+.BR printf (3C),
+.BR putc (3C),
+.BR puts (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/fwscanf.3c b/usr/src/man/man3c/fwscanf.3c
index b1ed76ea45..aa74568237 100644
--- a/usr/src/man/man3c/fwscanf.3c
+++ b/usr/src/man/man3c/fwscanf.3c
@@ -412,7 +412,7 @@ Matches an optionally signed floating-point number, whose format is the same as
expected for the subject sequence of \fBwcstod\fR(3C). In the absence of a size
modifier, the corresponding argument must be a pointer to \fBfloat\fR. The
\fBe\fR, \fBf\fR, and \fBg\fR specifiers match hexadecimal floating point
-values only in C99/SUSv3 (see \fBstandards\fR(5)) mode, but the \fBa\fR
+values only in C99/SUSv3 (see \fBstandards\fR(7)) mode, but the \fBa\fR
specifier always matches hexadecimal floating point values.
.sp
These conversion specifiers match any subject sequence accepted by
@@ -694,7 +694,7 @@ character \fBa\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -708,17 +708,32 @@ Interface Stability Committed
_
MT-Level MT-Safe
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.sp
.LP
-\fBfgetc\fR(3C), \fBfgets\fR(3C), \fBfgetwc\fR(3C), \fBfgetws\fR(3C),
-\fBfread\fR(3C), \fBfscanf\fR(3C), \fBfwprintf\fR(3C), \fBgetc\fR(3C),
-\fBgetchar\fR(3C), \fBgets\fR(3C), \fBgetwc\fR(3C), \fBgetwchar\fR(3C),
-\fBsetlocale\fR(3C), \fBstrtod\fR(3C), \fBwcrtomb\fR(3C), \fBwcstod\fR(3C),
-\fBwcstol\fR(3C), \fBwcstoul\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR fgetc (3C),
+.BR fgets (3C),
+.BR fgetwc (3C),
+.BR fgetws (3C),
+.BR fread (3C),
+.BR fscanf (3C),
+.BR fwprintf (3C),
+.BR getc (3C),
+.BR getchar (3C),
+.BR gets (3C),
+.BR getwc (3C),
+.BR getwchar (3C),
+.BR setlocale (3C),
+.BR strtod (3C),
+.BR wcrtomb (3C),
+.BR wcstod (3C),
+.BR wcstol (3C),
+.BR wcstoul (3C),
+.BR attributes (7),
+.BR standards (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3c/get_nprocs.3c b/usr/src/man/man3c/get_nprocs.3c
index 9b5df526df..2b8bccd863 100644
--- a/usr/src/man/man3c/get_nprocs.3c
+++ b/usr/src/man/man3c/get_nprocs.3c
@@ -53,8 +53,8 @@ configured.
.Sy MT-Safe ,
.Sy Async-Signal-Safe
.Sh SEE ALSO
-.Xr psrinfo 1M ,
.Xr processor_info 2 ,
.Xr sysconf 3C ,
-.Xr attributes 5 ,
-.Xr standards 5
+.Xr attributes 7 ,
+.Xr standards 7 ,
+.Xr psrinfo 8
diff --git a/usr/src/man/man3c/getcpuid.3c b/usr/src/man/man3c/getcpuid.3c
index c09c79ab55..b52732c6d9 100644
--- a/usr/src/man/man3c/getcpuid.3c
+++ b/usr/src/man/man3c/getcpuid.3c
@@ -43,7 +43,7 @@ Both the current CPU and the home locality group can change at any time.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -63,10 +63,19 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBpsradm\fR(1M), \fBpsrinfo\fR(1M), \fBpsrset\fR(1M), \fBp_online\fR(2),
-\fBprocessor_bind\fR(2), \fBprocessor_info\fR(2), \fBpset_assign\fR(2),
-\fBpset_bind\fR(2), \fBpset_info\fR(2), \fBmeminfo\fR(2),
-\fBlgrp_home\fR(3LGRP), \fBsysconf\fR(3C), \fBattributes\fR(5)
+.BR meminfo (2),
+.BR p_online (2),
+.BR processor_bind (2),
+.BR processor_info (2),
+.BR pset_assign (2),
+.BR pset_bind (2),
+.BR pset_info (2),
+.BR sysconf (3C),
+.BR lgrp_home (3LGRP),
+.BR attributes (7),
+.BR psradm (8),
+.BR psrinfo (8),
+.BR psrset (8)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3c/getcwd.3c b/usr/src/man/man3c/getcwd.3c
index ba27b7f9bb..cf4269787d 100644
--- a/usr/src/man/man3c/getcwd.3c
+++ b/usr/src/man/man3c/getcwd.3c
@@ -213,5 +213,5 @@ could produce unexpected results.
.Sh SEE ALSO
.Xr chdir 2 ,
.Xr free 3C ,
-.Xr attributes 5 ,
-.Xr standards 5
+.Xr attributes 7 ,
+.Xr standards 7
diff --git a/usr/src/man/man3c/getdate.3c b/usr/src/man/man3c/getdate.3c
index 23c78af627..93f6aa3c93 100644
--- a/usr/src/man/man3c/getdate.3c
+++ b/usr/src/man/man3c/getdate.3c
@@ -138,7 +138,7 @@ Locale's appropriate date and time representation.
.RS 6n
Century number (the year divided by 100 and truncated to an integer as a
decimal number [1,99]); single digits are preceded by 0; see
-\fBstandards\fR(5). If used without the \fB%y\fR specifier, this format
+\fBstandards\fR(7). If used without the \fB%y\fR specifier, this format
specifier will assume the current year offset in whichever century is
specified. The only valid years are between 1902-2037.
.RE
@@ -817,7 +817,7 @@ _
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -837,5 +837,11 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBctype\fR(3C), \fBmktime\fR(3C), \fBsetlocale\fR(3C), \fBstrftime\fR(3C),
-\fBstrptime\fR(3C), \fBattributes\fR(5), \fBenviron\fR(5), \fBstandards\fR(5)
+.BR ctype (3C),
+.BR mktime (3C),
+.BR setlocale (3C),
+.BR strftime (3C),
+.BR strptime (3C),
+.BR attributes (7),
+.BR environ (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/getdtablesize.3c b/usr/src/man/man3c/getdtablesize.3c
index 993989d2cc..df0f234479 100644
--- a/usr/src/man/man3c/getdtablesize.3c
+++ b/usr/src/man/man3c/getdtablesize.3c
@@ -72,5 +72,8 @@ size of this table by calling the \fBgetrlimit()\fR function.
.SH SEE ALSO
.sp
.LP
-\fBclose\fR(2), \fBgetrlimit\fR(2), \fBopen\fR(2), \fBsetrlimit\fR(2),
-\fBselect\fR(3C)
+.BR close (2),
+.BR getrlimit (2),
+.BR open (2),
+.BR setrlimit (2),
+.BR select (3C)
diff --git a/usr/src/man/man3c/getentropy.3c b/usr/src/man/man3c/getentropy.3c
index c15f6b5fff..f3a4b4c2b0 100644
--- a/usr/src/man/man3c/getentropy.3c
+++ b/usr/src/man/man3c/getentropy.3c
@@ -62,4 +62,4 @@ Too many bytes requested, or some other fatal error occurred.
.Sy Async-Signal-Safe
.Sh SEE ALSO
.Xr arc4random 3C ,
-.Xr attributes 5
+.Xr attributes 7
diff --git a/usr/src/man/man3c/getenv.3c b/usr/src/man/man3c/getenv.3c
index 0d5a374e08..a5d55f0f56 100644
--- a/usr/src/man/man3c/getenv.3c
+++ b/usr/src/man/man3c/getenv.3c
@@ -18,7 +18,7 @@ getenv \- return value for environment name
.sp
.LP
The \fBgetenv()\fR function searches the environment list (see
-\fBenviron\fR(5)) for a string of the form \fIname\fR\fB=\fR\fIvalue\fR and, if
+\fBenviron\fR(7)) for a string of the form \fIname\fR\fB=\fR\fIvalue\fR and, if
the string is present, returns a pointer to the \fIvalue\fR in the current
environment.
.SH RETURN VALUES
@@ -39,7 +39,7 @@ accessing the environment list using \fBgetenv()\fR or \fBputenv\fR(3C).
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -57,5 +57,8 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBexec\fR(2), \fBputenv\fR(3C), \fBattributes\fR(5), \fBenviron\fR(5),
-\fBstandards\fR(5)
+.BR exec (2),
+.BR putenv (3C),
+.BR attributes (7),
+.BR environ (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/getexecname.3c b/usr/src/man/man3c/getexecname.3c
index bfa3561b73..88e20d668f 100644
--- a/usr/src/man/man3c/getexecname.3c
+++ b/usr/src/man/man3c/getexecname.3c
@@ -48,7 +48,7 @@ that is always present.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -64,4 +64,6 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBexec\fR(2), \fBgetcwd\fR(3C), \fBattributes\fR(5)
+.BR exec (2),
+.BR getcwd (3C),
+.BR attributes (7)
diff --git a/usr/src/man/man3c/getgrnam.3c b/usr/src/man/man3c/getgrnam.3c
index 944cf91383..19ca7b9288 100644
--- a/usr/src/man/man3c/getgrnam.3c
+++ b/usr/src/man/man3c/getgrnam.3c
@@ -123,7 +123,7 @@ cc [ \fIflag\fR... ] \fIfile\fR... \fB-D_POSIX_PTHREAD_SEMANTICS\fR [ \fIlibrary
.LP
These functions are used to obtain entries describing user groups. Entries can
come from any of the sources for \fBgroup\fR specified in the
-\fB/etc/nsswitch.conf\fR file (see \fBnsswitch.conf\fR(4)).
+\fB/etc/nsswitch.conf\fR file (see \fBnsswitch.conf\fR(5)).
.sp
.LP
The \fBgetgrnam()\fR function searches the group database for an entry with the
@@ -160,7 +160,7 @@ calling \fBendgrent()\fR.
The \fBfgetgrent()\fR function, unlike the other functions above, does not use
\fBnsswitch.conf\fR. It reads and parses the next line from the stream \fIf\fR,
which is assumed to have the format of the \fBgroup\fR file (see
-\fBgroup\fR(4)).
+\fBgroup\fR(5)).
.SS "Reentrant Interfaces"
.LP
The \fBgetgrnam()\fR, \fBgetgrgid()\fR, \fBgetgrent()\fR, and
@@ -352,7 +352,7 @@ the data to be referenced by the resulting \fBgroup\fR structure.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -374,8 +374,13 @@ The \fBendgrent()\fR, \fBgetgrent()\fR, \fBgetgrgid()\fR, \fBgetgrgid_r()\fR,
Standard.
.SH SEE ALSO
.LP
-\fBIntro\fR(3), \fBgetpwnam\fR(3C), \fBgroup\fR(4), \fBnsswitch.conf\fR(4),
-\fBpasswd\fR(4), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR Intro (3),
+.BR getpwnam (3C),
+.BR group (5),
+.BR nsswitch.conf (5),
+.BR passwd (5),
+.BR attributes (7),
+.BR standards (7)
.SH NOTES
.LP
When compiling multithreaded programs, see \fBIntro\fR(3).
@@ -385,7 +390,7 @@ Use of the enumeration interfaces \fBgetgrent()\fR and \fBgetgrent_r()\fR is
discouraged; enumeration is supported for the group file and \fBNIS\fR
but in general is not efficient and might not be supported for all
database sources. The semantics of enumeration are discussed further in
-\fBnsswitch.conf\fR(4).
+\fBnsswitch.conf\fR(5).
.sp
.LP
Previous releases allowed the use of ``+'' and ``-'' entries in
@@ -400,8 +405,8 @@ specifying \fBcompat\fR as the source for \fBgroup\fR.
.LP
If the ``+/-'' functionality is required in conjunction with \fBLDAP,\fR
specify both \fBcompat\fR as the source for \fBgroup\fR and \fBldap\fR as
-the source for the pseudo-database \fBgroup_compat\fR. See \fBgroup\fR(4), and
-\fBnsswitch.conf\fR(4) for details.
+the source for the pseudo-database \fBgroup_compat\fR. See \fBgroup\fR(5), and
+\fBnsswitch.conf\fR(5) for details.
.sp
.LP
Solaris 2.4 and earlier releases provided definitions of the \fBgetgrnam_r()\fR
diff --git a/usr/src/man/man3c/gethostid.3c b/usr/src/man/man3c/gethostid.3c
index da0891bf9d..26b91c2e31 100644
--- a/usr/src/man/man3c/gethostid.3c
+++ b/usr/src/man/man3c/gethostid.3c
@@ -29,7 +29,7 @@ returned.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -43,11 +43,14 @@ Interface Stability Committed
_
MT-Level MT-Safe
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.sp
.LP
-\fBhostid\fR(1), \fBsysinfo\fR(2), \fBattributes\fR(5), \fBstandards\fR(5),
-\fBzones\fR(5)
+.BR hostid (1),
+.BR sysinfo (2),
+.BR attributes (7),
+.BR standards (7),
+.BR zones (7)
diff --git a/usr/src/man/man3c/gethostname.3c b/usr/src/man/man3c/gethostname.3c
index 44e1c6a501..ec87e49461 100644
--- a/usr/src/man/man3c/gethostname.3c
+++ b/usr/src/man/man3c/gethostname.3c
@@ -63,7 +63,7 @@ the calling process.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -80,5 +80,8 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBsysinfo\fR(2), \fBuname\fR(2), \fBgethostid\fR(3C), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR sysinfo (2),
+.BR uname (2),
+.BR gethostid (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/gethrtime.3c b/usr/src/man/man3c/gethrtime.3c
index 49bdae813d..a481677874 100644
--- a/usr/src/man/man3c/gethrtime.3c
+++ b/usr/src/man/man3c/gethrtime.3c
@@ -58,7 +58,7 @@ printf("Avg getpid() time = %lld nsec\en", (end \(mi start) / iters);\fR
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -74,8 +74,11 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBproc\fR(1), \fBadjtime\fR(2), \fBgettimeofday\fR(3C),
-\fBsettimeofday\fR(3C), \fBattributes\fR(5)
+.BR proc (1),
+.BR adjtime (2),
+.BR gettimeofday (3C),
+.BR settimeofday (3C),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3c/getline.3c b/usr/src/man/man3c/getline.3c
index 4339315d38..cba9eead65 100644
--- a/usr/src/man/man3c/getline.3c
+++ b/usr/src/man/man3c/getline.3c
@@ -128,5 +128,9 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBfgetc\fR(3C), \fBfgets\fR(3C), \fBfree\fR(3C), \fBmalloc\fR(3C),
-\fBrealloc\fR(3C), \fBattributes\fR(5)
+.BR fgetc (3C),
+.BR fgets (3C),
+.BR free (3C),
+.BR malloc (3C),
+.BR realloc (3C),
+.BR attributes (7)
diff --git a/usr/src/man/man3c/getloadavg.3c b/usr/src/man/man3c/getloadavg.3c
index 7531051c94..69f29eb974 100644
--- a/usr/src/man/man3c/getloadavg.3c
+++ b/usr/src/man/man3c/getloadavg.3c
@@ -53,7 +53,7 @@ behavior of \fBgetloadavg()\fR is equivalent to that of
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -69,5 +69,9 @@ MT-Level Async-Signal-Safe
.SH SEE ALSO
.sp
.LP
-\fBuptime\fR(1), \fBw\fR(1), \fBpooladm\fR(1M), \fBKstat\fR(3PERL),
-\fBpset_getloadavg\fR(3C), \fBstandards\fR(5)
+.BR uptime (1),
+.BR w (1),
+.BR pset_getloadavg (3C),
+.BR Kstat (3PERL),
+.BR standards (7),
+.BR pooladm (8)
diff --git a/usr/src/man/man3c/getlogin.3c b/usr/src/man/man3c/getlogin.3c
index 41211c78c7..5baa3e448c 100644
--- a/usr/src/man/man3c/getlogin.3c
+++ b/usr/src/man/man3c/getlogin.3c
@@ -106,7 +106,7 @@ The \fBgetlogin_r()\fR function has the same functionality as \fBgetlogin()\fR
except that the caller must supply a buffer \fIname\fR with length \fInamelen\fR
to store the result. The \fIname\fR buffer should be at least
\fBLOGIN_NAME_MAX\fR bytes in size (defined in <\fBlimits.h\fR>). The POSIX
-version (see \fBstandards\fR(5)) of \fBgetlogin_r()\fR takes a \fInamesize\fR
+version (see \fBstandards\fR(7)) of \fBgetlogin_r()\fR takes a \fInamesize\fR
parameter of type \fBsize_t\fR. If the size of the supplied buffer is less than
the size of \fBLOGIN_NAME_MAX\fR and the name, including the null
terminator, does not fit inside the buffer, than an error will be generated.
@@ -221,7 +221,7 @@ A 64-bit compatibility library to return long login names.
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -237,9 +237,15 @@ MT-Level See below.
.TE
.SH SEE ALSO
-\fBgeteuid\fR(2), \fBgetuid\fR(2), \fBcuserid\fR(3C), \fBgetgrnam\fR(3C),
-\fBgetpwnam\fR(3C), \fBgetpwuid\fR(3C), \fButmpx\fR(4), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR geteuid (2),
+.BR getuid (2),
+.BR cuserid (3C),
+.BR getgrnam (3C),
+.BR getpwnam (3C),
+.BR getpwuid (3C),
+.BR utmpx (5),
+.BR attributes (7),
+.BR standards (7)
.SH NOTES
When compiling multithreaded programs, see \fBIntro\fR(3).
.sp
diff --git a/usr/src/man/man3c/getmntent.3c b/usr/src/man/man3c/getmntent.3c
index 16995f58f1..6d3346ed1e 100644
--- a/usr/src/man/man3c/getmntent.3c
+++ b/usr/src/man/man3c/getmntent.3c
@@ -50,7 +50,7 @@ structure pointed to by \fImp\fR with the broken-out fields of a line in the
\fBmnttab\fR file. Each line read from the file contains a \fBmnttab\fR
structure, which is defined in the <\fBsys/mnttab.h\fR> header. The structure
contains the following members, which correspond to the broken-out fields from
-a line in \fB/etc/mnttab\fR (see \fBmnttab\fR(4)).
+a line in \fB/etc/mnttab\fR (see \fBmnttab\fR(5)).
.sp
.in +2
.nf
@@ -111,7 +111,7 @@ function name is still defined for transition purposes.
.LP
The \fBresetmnttab()\fR function notifies \fBgetextmntent()\fR to reload from
the kernel the device information that corresponds to the new snapshot of the
-\fBmnttab\fR information (see \fBmnttab\fR(4)). Subsequent \fBgetextmntent()\fR
+\fBmnttab\fR information (see \fBmnttab\fR(5)). Subsequent \fBgetextmntent()\fR
calls then return correct \fBextmnttab\fR information. This function should be
called whenever the \fBmnttab\fR file is either rewound or closed and reopened
before any calls are made to \fBgetextmntent()\fR.
@@ -163,7 +163,7 @@ The \fBputmntent()\fR is obsolete and always returns \fB\(mi1\fR\&.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -179,4 +179,6 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBmount\fR(2), \fBmnttab\fR(4), \fBattributes\fR(5)
+.BR mount (2),
+.BR mnttab (5),
+.BR attributes (7)
diff --git a/usr/src/man/man3c/getnetgrent.3c b/usr/src/man/man3c/getnetgrent.3c
index 024064d633..f0bfe11eef 100644
--- a/usr/src/man/man3c/getnetgrent.3c
+++ b/usr/src/man/man3c/getnetgrent.3c
@@ -39,11 +39,11 @@ group entry
.SH DESCRIPTION
These functions are used to test membership in and enumerate members of
``netgroup'' network groups defined in a system database. Netgroups are sets
-of (machine,user,domain) triples (see \fBnetgroup\fR(4)).
+of (machine,user,domain) triples (see \fBnetgroup\fR(5)).
.sp
.LP
These functions consult the source specified for \fBnetgroup\fR in the
-\fB/etc/nsswitch.conf\fR file (see \fBnsswitch.conf\fR(4)).
+\fB/etc/nsswitch.conf\fR file (see \fBnsswitch.conf\fR(5)).
.sp
.LP
The function \fBinnetgr()\fR returns \fB1\fR if there is a netgroup
@@ -138,7 +138,7 @@ success.
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -152,8 +152,11 @@ MT-Level See \fBDESCRIPTION\fR section.
.TE
.SH SEE ALSO
-\fBIntro\fR(2), \fBIntro\fR(3), \fBnetgroup\fR(4), \fBnsswitch.conf\fR(4),
-\fBattributes\fR(5)
+.BR Intro (2),
+.BR Intro (3),
+.BR netgroup (5),
+.BR nsswitch.conf (5),
+.BR attributes (7)
.SH WARNINGS
The function \fBgetnetgrent_r()\fR is included in this release on an
uncommitted basis only, and is subject to change or removal in future minor
@@ -162,7 +165,7 @@ releases.
Network groups are usually stored in network information services,
such as \fBLDAP\fR, or \fBNIS\fR, but may alternatively be stored in
the local \fB/etc/netgroup\fR file. The \fBnetgroup\fR line of the
-\fBnsswitch.conf\fR(4) file determines which of those sources are used.
+\fBnsswitch.conf\fR(5) file determines which of those sources are used.
.sp
.LP
When compiling multi-threaded applications, see \fBIntro\fR(3), \fINotes On
diff --git a/usr/src/man/man3c/getopt.3c b/usr/src/man/man3c/getopt.3c
index a14760446a..a653fb2d44 100644
--- a/usr/src/man/man3c/getopt.3c
+++ b/usr/src/man/man3c/getopt.3c
@@ -392,7 +392,7 @@ can also be assigned as shown in the following example:
.SH ENVIRONMENT VARIABLES
.LP
-See \fBenviron\fR(5) for descriptions of the following environment variables
+See \fBenviron\fR(7) for descriptions of the following environment variables
that affect the execution of \fBgetopt()\fR: \fBLANG\fR, \fBLC_ALL\fR, and
\fBLC_MESSAGES\fR.
.sp
@@ -433,7 +433,7 @@ cmd \(miab \(mio filename
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -452,9 +452,16 @@ Standard See below.
.sp
.LP
-For the Basic Utility Command syntax is Standard, see \fBstandards\fR(5).
+For the Basic Utility Command syntax is Standard, see \fBstandards\fR(7).
.SH SEE ALSO
.LP
-\fBIntro\fR(1), \fBgetopt\fR(1), \fBgetopts\fR(1), \fBgetopt_long\fR(3C),
-\fBgetsubopt\fR(3C), \fBgettext\fR(3C), \fBsetlocale\fR(3C), \fBattributes\fR(5),
-\fBenviron\fR(5), \fBstandards\fR(5)
+.BR Intro (1),
+.BR getopt (1),
+.BR getopts (1),
+.BR getopt_long (3C),
+.BR getsubopt (3C),
+.BR gettext (3C),
+.BR setlocale (3C),
+.BR attributes (7),
+.BR environ (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/getopt_long.3c b/usr/src/man/man3c/getopt_long.3c
index 6c59fe3fc7..9e44595fa0 100644
--- a/usr/src/man/man3c/getopt_long.3c
+++ b/usr/src/man/man3c/getopt_long.3c
@@ -448,7 +448,7 @@ and
.Ev LC_ALL ,
.Ev LC_MESSAGES .
See
-.Xr environ 5 .
+.Xr environ 7 .
.Bl -tag -width ".Ev POSIXLY_CORRECT"
.It Ev POSIXLY_CORRECT
If set, option processing stops when the first non-option is found and
diff --git a/usr/src/man/man3c/getpagesize.3c b/usr/src/man/man3c/getpagesize.3c
index 4d686e63b2..ccd51b0d4b 100644
--- a/usr/src/man/man3c/getpagesize.3c
+++ b/usr/src/man/man3c/getpagesize.3c
@@ -84,7 +84,7 @@ object of this size can be allocated with \fBmalloc()\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -100,6 +100,13 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBpagesize\fR(1), \fBbrk\fR(2), \fBgetrlimit\fR(2), \fBmmap\fR(2),
-\fBmprotect\fR(2), \fBmunmap\fR(2), \fBmalloc\fR(3C), \fBmsync\fR(3C),
-\fBsysconf\fR(3C), \fBattributes\fR(5)
+.BR pagesize (1),
+.BR brk (2),
+.BR getrlimit (2),
+.BR mmap (2),
+.BR mprotect (2),
+.BR munmap (2),
+.BR malloc (3C),
+.BR msync (3C),
+.BR sysconf (3C),
+.BR attributes (7)
diff --git a/usr/src/man/man3c/getpagesizes.3c b/usr/src/man/man3c/getpagesizes.3c
index 395c26d44d..b43b7873d3 100644
--- a/usr/src/man/man3c/getpagesizes.3c
+++ b/usr/src/man/man3c/getpagesizes.3c
@@ -55,7 +55,7 @@ into consideration when using \fBgetpagesizes()\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -71,4 +71,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBmemcntl\fR(2), \fBmmap\fR(2), \fBgetpagesize\fR(3C), \fBattributes\fR(5)
+.BR memcntl (2),
+.BR mmap (2),
+.BR getpagesize (3C),
+.BR attributes (7)
diff --git a/usr/src/man/man3c/getpass.3c b/usr/src/man/man3c/getpass.3c
index 932ebb113b..365d43eb2b 100644
--- a/usr/src/man/man3c/getpass.3c
+++ b/usr/src/man/man3c/getpass.3c
@@ -145,7 +145,7 @@ call.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -163,4 +163,5 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/getpeerucred.3c b/usr/src/man/man3c/getpeerucred.3c
index 8f8fac2c82..68688a01e4 100644
--- a/usr/src/man/man3c/getpeerucred.3c
+++ b/usr/src/man/man3c/getpeerucred.3c
@@ -116,7 +116,7 @@ This operation is not supported on this file descriptor.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -134,8 +134,10 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBdoor_ucred\fR(3C), \fBucred_get\fR(3C), \fBattributes\fR(5),
-\fBconnld\fR(7M)
+.BR door_ucred (3C),
+.BR ucred_get (3C),
+.BR connld (4M),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3c/getpriority.3c b/usr/src/man/man3c/getpriority.3c
index 9b8c246557..66eb6c99a8 100644
--- a/usr/src/man/man3c/getpriority.3c
+++ b/usr/src/man/man3c/getpriority.3c
@@ -222,7 +222,7 @@ parameter for \fBsetpriority()\fR are in the range -\fBNZERO\fR to
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -234,11 +234,15 @@ ATTRIBUTE TYPE ATTRIBUTE VALUE
_
Interface Stability Committed
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.sp
.LP
-\fBnice\fR(1), \fBrenice\fR(1), \fBsched_get_priority_max\fR(3C),
-\fBsched_setscheduler\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR nice (1),
+.BR renice (1),
+.BR sched_get_priority_max (3C),
+.BR sched_setscheduler (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/getprogname.3c b/usr/src/man/man3c/getprogname.3c
index df83b3d2ae..52da7dd96c 100644
--- a/usr/src/man/man3c/getprogname.3c
+++ b/usr/src/man/man3c/getprogname.3c
@@ -64,7 +64,7 @@ is
.Sy Unsafe .
.Sh SEE ALSO
.Xr err 3c ,
-.Xr attributes 5
+.Xr attributes 7
.Sh NOTES
The use of
.Fn setprogname
diff --git a/usr/src/man/man3c/getpw.3c b/usr/src/man/man3c/getpw.3c
index 44dd9cc3fc..107b2ea85c 100644
--- a/usr/src/man/man3c/getpw.3c
+++ b/usr/src/man/man3c/getpw.3c
@@ -39,7 +39,7 @@ The \fBgetpw()\fR function returns non-zero on error.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -55,4 +55,6 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBgetpwnam\fR(3C), \fBpasswd\fR(4), \fBattributes\fR(5)
+.BR getpwnam (3C),
+.BR passwd (5),
+.BR attributes (7)
diff --git a/usr/src/man/man3c/getpwnam.3c b/usr/src/man/man3c/getpwnam.3c
index 13c149d27f..8d106fec5e 100644
--- a/usr/src/man/man3c/getpwnam.3c
+++ b/usr/src/man/man3c/getpwnam.3c
@@ -124,7 +124,7 @@ cc [ \fIflag\fR...] \fIfile\fR... \fB-D_POSIX_PTHREAD_SEMANTICS\fR [ \fIlibrary\
.LP
These functions are used to obtain password entries. Entries can come from any
of the sources for \fBpasswd\fR specified in the \fB/etc/nsswitch.conf\fR file
-(see \fBnsswitch.conf\fR(4)).
+(see \fBnsswitch.conf\fR(5)).
.sp
.LP
The \fBgetpwnam()\fR function searches for a password entry with the login name
@@ -155,7 +155,7 @@ functions after calling \fBendpwent()\fR.
The \fBfgetpwent()\fR function, unlike the other functions above, does not use
\fBnsswitch.conf\fR but reads and parses the next line from the stream \fIf\fR,
which is assumed to have the format of the \fBpasswd\fR file. See
-\fBpasswd\fR(4).
+\fBpasswd\fR(5).
.SS "Reentrant Interfaces"
.LP
The \fBgetpwnam()\fR, \fBgetpwuid()\fR, \fBgetpwent()\fR, and \fBfgetpwent()\fR
@@ -186,7 +186,7 @@ the returned \fBstruct passwd\fR \fIpwd\fR point to data stored within this
buffer; see \fBpasswd Structure\fR below. The buffer must be large enough to
hold all the data associated with the password entry. The parameter
\fIbuflen\fR (or \fIbufsize\fR for the standard-conforming versions; see
-\fBstandards\fR(5)) should give the size in bytes of \fIbuffer\fR. The maximum
+\fBstandards\fR(7)) should give the size in bytes of \fIbuffer\fR. The maximum
size needed for this buffer can be determined with the
{\fB_SC_GETPW_R_SIZE_MAX\fR} \fBsysconf\fR(3C) parameter. The
standard-conforming versions place a pointer to the modified \fIpwd\fR
@@ -388,7 +388,7 @@ current login activity; and \fBgetpwuid\fR(\fBgetuid()\fR) returns the name
associated with the real user ID of the process.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -409,13 +409,22 @@ Standard See below.
.LP
For \fBendpwent()\fR, \fBgetpwent()\fR, \fBgetpwnam()\fR,
\fBgetpwnam_r()\fR, \fBgetpwuid()\fR, \fBgetpwuid_r()\fR, and \fBsetpwent()\fR,
-see \fBstandards\fR(5).
+see \fBstandards\fR(7).
.SH SEE ALSO
.LP
-\fBpasswd\fR(1), \fByppasswd\fR(1), \fBIntro\fR(2),
-\fBIntro\fR(3), \fBcuserid\fR(3C), \fBgetgrnam\fR(3C), \fBgetlogin\fR(3C),
-\fBgetspnam\fR(3C), \fBnsswitch.conf\fR(4), \fBpasswd\fR(4), \fBshadow\fR(4),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR passwd (1),
+.BR yppasswd (1),
+.BR Intro (2),
+.BR Intro (3),
+.BR cuserid (3C),
+.BR getgrnam (3C),
+.BR getlogin (3C),
+.BR getspnam (3C),
+.BR nsswitch.conf (5),
+.BR passwd (5),
+.BR shadow (5),
+.BR attributes (7),
+.BR standards (7)
.SH NOTES
.LP
When compiling multithreaded programs, see \fBIntro\fR(3).
@@ -425,7 +434,7 @@ Use of the enumeration interfaces \fBgetpwent()\fR and \fBgetpwent_r()\fR is
discouraged; enumeration is supported for the \fBpasswd\fR file and \fBNIS\fR
but in general is not efficient and might not be supported for all
database sources. The semantics of enumeration are discussed further in
-\fBnsswitch.conf\fR(4).
+\fBnsswitch.conf\fR(5).
.sp
.LP
Previous releases allowed the use of `+' and `-' entries in \fB/etc/passwd\fR
@@ -436,7 +445,7 @@ might not be supported in future releases.
.LP
If required, the `+/-' functionality can still be obtained for \fBNIS\fR by
specifying \fBcompat\fR as the source for \fBpasswd\fR. See
-\fBnsswitch.conf\fR(4).
+\fBnsswitch.conf\fR(5).
.sp
.LP
If the `+/-' is used, both \fB/etc/shadow\fR and \fB/etc/passwd\fR should have
diff --git a/usr/src/man/man3c/getrusage.3c b/usr/src/man/man3c/getrusage.3c
index 0fa7b9e645..2d9d616701 100644
--- a/usr/src/man/man3c/getrusage.3c
+++ b/usr/src/man/man3c/getrusage.3c
@@ -261,7 +261,7 @@ The \fBwho\fR parameter is not a valid value.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -277,9 +277,15 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBsar\fR(1M), \fBread\fR(2), \fBtimes\fR(2), \fBwrite\fR(2),
-\fBgetpagesize\fR(3C), \fBgettimeofday\fR(3C), \fBwait\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR read (2),
+.BR times (2),
+.BR write (2),
+.BR getpagesize (3C),
+.BR gettimeofday (3C),
+.BR wait (3C),
+.BR attributes (7),
+.BR standards (7),
+.BR sar (8)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3c/gets.3c b/usr/src/man/man3c/gets.3c
index 08b290f586..c2a0dcdec0 100644
--- a/usr/src/man/man3c/gets.3c
+++ b/usr/src/man/man3c/gets.3c
@@ -51,7 +51,7 @@ returns data not supplied by a prior call to \fBungetc\fR(3C) or
.LP
If end-of-file is encountered and no bytes have been read, no bytes are
transferred to \fIs\fR and a null pointer is returned. For standard-conforming
-(see \fBstandards\fR(5)) applications, if the end-of-file indicator for the
+(see \fBstandards\fR(7)) applications, if the end-of-file indicator for the
stream is set, no bytes are transferred to \fIs\fR and a null pointer is
returned whether or not the stream is at end-of-file. If a read error occurs,
such as trying to use these functions on a file that has not been opened for
@@ -65,7 +65,7 @@ Refer to \fBfgetc\fR(3C).
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -83,7 +83,17 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBlseek\fR(2), \fBread\fR(2), \fBferror\fR(3C), \fBfgetc\fR(3C),
-\fBfgetwc\fR(3C), \fBfopen\fR(3C), \fBfread\fR(3C), \fBgetchar\fR(3C),
-\fBscanf\fR(3C), \fBstdio\fR(3C), \fBungetc\fR(3C), \fBungetwc\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR lseek (2),
+.BR read (2),
+.BR ferror (3C),
+.BR fgetc (3C),
+.BR fgetwc (3C),
+.BR fopen (3C),
+.BR fread (3C),
+.BR getchar (3C),
+.BR scanf (3C),
+.BR stdio (3C),
+.BR ungetc (3C),
+.BR ungetwc (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/getspnam.3c b/usr/src/man/man3c/getspnam.3c
index 50c169d9e1..8f8ea7c5d3 100644
--- a/usr/src/man/man3c/getspnam.3c
+++ b/usr/src/man/man3c/getspnam.3c
@@ -58,7 +58,7 @@ fgetspent_r \- get password entry
.LP
These functions are used to obtain shadow password entries. An entry may come
from any of the sources for \fBshadow\fR specified in the
-\fB/etc/nsswitch.conf\fR file (see \fBnsswitch.conf\fR(4)).
+\fB/etc/nsswitch.conf\fR file (see \fBnsswitch.conf\fR(5)).
.sp
.LP
The \fBgetspnam()\fR function searches for a shadow password entry with the
@@ -89,7 +89,7 @@ call more shadow password functions after calling \fBendspent()\fR.
The \fBfgetspent()\fR function, unlike the other functions above, does not use
\fBnsswitch.conf\fR; it reads and parses the next line from the stream
\fIfp\fR, which is assumed to have the format of the \fBshadow\fR file (see
-\fBshadow\fR(4)).
+\fBshadow\fR(5)).
.SS "Reentrant Interfaces"
.LP
The \fBgetspnam()\fR, \fBgetspent()\fR, and \fBfgetspent()\fR functions use
@@ -154,7 +154,7 @@ Password entries are represented by the \fBstruct spwd\fR structure defined in
.sp
.LP
-See \fBshadow\fR(4) for more information on the interpretation of this data.
+See \fBshadow\fR(5) for more information on the interpretation of this data.
.sp
.LP
The \fBgetspnam()\fRand \fBgetspnam_r()\fR functions each return a pointer to
@@ -185,7 +185,7 @@ result. See \fBIntro\fR(2) for the proper usage and interpretation of
\fBerrno\fR in multithreaded applications.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -202,9 +202,15 @@ T}
.SH SEE ALSO
.LP
-\fBpasswd\fR(1), \fByppasswd\fR(1), \fBIntro\fR(3),
-\fBgetlogin\fR(3C), \fBgetpwnam\fR(3C), \fBnsswitch.conf\fR(4),
-\fBpasswd\fR(4), \fBshadow\fR(4), \fBattributes\fR(5)
+.BR passwd (1),
+.BR yppasswd (1),
+.BR Intro (3),
+.BR getlogin (3C),
+.BR getpwnam (3C),
+.BR nsswitch.conf (5),
+.BR passwd (5),
+.BR shadow (5),
+.BR attributes (7)
.SH WARNINGS
.LP
The reentrant interfaces \fBgetspnam_r()\fR, \fBgetspent_r()\fR, and
@@ -221,7 +227,7 @@ Use of the enumeration interfaces \fBgetspent()\fR and \fBgetspent_r()\fR is
not recommended; enumeration is supported for the shadow file and \fBNIS\fR
but in general is not efficient and may not be supported for all
database sources. The semantics of enumeration are discussed further in
-\fBnsswitch.conf\fR(4).
+\fBnsswitch.conf\fR(5).
.sp
.LP
Access to shadow password information may be restricted in a manner depending
diff --git a/usr/src/man/man3c/getsubopt.3c b/usr/src/man/man3c/getsubopt.3c
index 84fab652e4..349c64c565 100644
--- a/usr/src/man/man3c/getsubopt.3c
+++ b/usr/src/man/man3c/getsubopt.3c
@@ -117,7 +117,7 @@ No errors are defined.
.sp
.LP
The following example demonstrates the processing of options to the
-\fBmount\fR(1M) utility using \fBgetsubopt()\fR.
+\fBmount\fR(8) utility using \fBgetsubopt()\fR.
.sp
.in +2
@@ -236,7 +236,7 @@ while ((opt = getopt(argc, argv, "e:")) != -1) {
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -254,4 +254,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBmount\fR(1M), \fBgetopt\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR getopt (3C),
+.BR attributes (7),
+.BR standards (7),
+.BR mount (8)
diff --git a/usr/src/man/man3c/gettext.3c b/usr/src/man/man3c/gettext.3c
index 4f08aee444..cade03245a 100644
--- a/usr/src/man/man3c/gettext.3c
+++ b/usr/src/man/man3c/gettext.3c
@@ -96,7 +96,7 @@ determine the plural form. If no message catalogues are found, \fImsgid1\fR is
returned if \fIn\fR == 1, otherwise \fImsgid2\fR is returned.
.sp
.LP
-The \fBNLSPATH\fR environment variable (see \fBenviron\fR(5)) is searched first
+The \fBNLSPATH\fR environment variable (see \fBenviron\fR(7)) is searched first
for the location of the \fBLC_MESSAGES\fR catalogue. The setting of the
\fBLC_MESSAGES\fR category of the current locale determines the locale used by
\fBgettext()\fR and \fBdgettext()\fR for string retrieval. The \fIcategory\fR
@@ -321,7 +321,7 @@ location for files containing messages for domain \fIdomainname,\fR language
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -342,6 +342,10 @@ The external variables \fB_nl_msg_cat_cntr\fR and \fB_nl_domain_bindings\fR are
Uncommitted.
.SH SEE ALSO
.LP
-\fBmsgfmt\fR(1), \fBxgettext\fR(1), \fBiconv_open\fR(3C),
-\fBlibintl.h\fR(3HEAD), \fBsetlocale\fR(3C), \fBattributes\fR(5),
-\fBenviron\fR(5)
+.BR msgfmt (1),
+.BR xgettext (1),
+.BR iconv_open (3C),
+.BR setlocale (3C),
+.BR libintl.h (3HEAD),
+.BR attributes (7),
+.BR environ (7)
diff --git a/usr/src/man/man3c/gettimeofday.3c b/usr/src/man/man3c/gettimeofday.3c
index d5e8f6b3f0..fcd52a962a 100644
--- a/usr/src/man/man3c/gettimeofday.3c
+++ b/usr/src/man/man3c/gettimeofday.3c
@@ -43,7 +43,7 @@ set.
.sp
.LP
The \fBTZ\fR environment variable holds time zone information. See
-\fBTIMEZONE\fR(4).
+\fBTIMEZONE\fR(5).
.sp
.LP
The \fItzp\fR argument to \fBgettimeofday()\fR and \fBsettimeofday()\fR is
@@ -103,7 +103,7 @@ second accuracy, call \fBsettimeofday()\fR for the seconds and then
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -121,5 +121,10 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBadjtime\fR(2), \fBctime\fR(3C), \fBgethrtime\fR(3C), \fBTIMEZONE\fR(4),
-\fBattributes\fR(5), \fBprivileges\fR(5), \fBstandards\fR(5)
+.BR adjtime (2),
+.BR ctime (3C),
+.BR gethrtime (3C),
+.BR TIMEZONE (5),
+.BR attributes (7),
+.BR privileges (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/gettxt.3c b/usr/src/man/man3c/gettxt.3c
index 8d3980ae69..8b920ca65e 100644
--- a/usr/src/man/man3c/gettxt.3c
+++ b/usr/src/man/man3c/gettxt.3c
@@ -116,7 +116,7 @@ contains message files for different languages created by \fBmkmsgs\fR
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -132,5 +132,11 @@ MT-Level Safe with exceptions
.SH SEE ALSO
.sp
.LP
-\fBexstr\fR(1), \fBmkmsgs\fR(1), \fBsrchtxt\fR(1), \fBgettext\fR(3C),
-\fBfmtmsg\fR(3C), \fBsetlocale\fR(3C), \fBattributes\fR(5), \fBenviron\fR(5)
+.BR exstr (1),
+.BR mkmsgs (1),
+.BR srchtxt (1),
+.BR fmtmsg (3C),
+.BR gettext (3C),
+.BR setlocale (3C),
+.BR attributes (7),
+.BR environ (7)
diff --git a/usr/src/man/man3c/getutent.3c b/usr/src/man/man3c/getutent.3c
index 76b25cec9c..f386ec787a 100644
--- a/usr/src/man/man3c/getutent.3c
+++ b/usr/src/man/man3c/getutent.3c
@@ -153,7 +153,7 @@ to fail if user accounting data cannot be represented properly in the
Use the functions described on the \fBgetutxent\fR(3C) manual page instead.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -168,7 +168,10 @@ MT-Level Unsafe
.SH SEE ALSO
.LP
-\fBgetutxent\fR(3C), \fBttyslot\fR(3C), \fButmpx\fR(4), \fBattributes\fR(5)
+.BR getutxent (3C),
+.BR ttyslot (3C),
+.BR utmpx (5),
+.BR attributes (7)
.SH NOTES
.LP
The most current entry is saved in a static structure. Multiple accesses
diff --git a/usr/src/man/man3c/getutxent.3c b/usr/src/man/man3c/getutxent.3c
index f3878386d0..f06f7875c4 100644
--- a/usr/src/man/man3c/getutxent.3c
+++ b/usr/src/man/man3c/getutxent.3c
@@ -68,7 +68,7 @@ getutmp, getutmpx, updwtmp, updwtmpx \- user accounting database functions
.SH DESCRIPTION
.LP
These functions provide access to the user accounting database, \fButmpx\fR
-(see \fButmpx\fR(4)). Entries in the database are described by the definitions
+(see \fButmpx\fR(5)). Entries in the database are described by the definitions
and data structures in \fB<utmpx.h>\fR\&.
.sp
.LP
@@ -199,7 +199,7 @@ pointed to by \fIutmpx\fR to the database.
.LP
The values of the \fBe_termination\fR and \fBe_exit\fR members of the
\fBut_exit\fR structure are valid only for records of type \fBDEAD_PROCESS\fR.
-For \fButmpx\fR entries created by \fBinit\fR(1M), these values are set
+For \fButmpx\fR entries created by \fBinit\fR(8), these values are set
according to the result of the \fBwait()\fR call that \fBinit\fR performs on
the process when the process exits. See the \fBwait\fR(3C), manual page for the
values \fBinit\fR uses. Applications creating \fButmpx\fR entries can set
@@ -282,7 +282,7 @@ history of user access and accounting information
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -303,8 +303,13 @@ The \fBendutxent()\fR, \fBgetutxent()\fR, \fBgetutxid()\fR, \fBgetutxline()\fR,
\fBpututxline()\fR, and \fBsetutxent()\fR functions are Standard.
.SH SEE ALSO
.LP
-\fBgetutent\fR(3C), \fBttyslot\fR(3C), \fBwait\fR(3C), \fBwait.h\fR(3HEAD),
-\fButmpx\fR(4), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR getutent (3C),
+.BR ttyslot (3C),
+.BR wait (3C),
+.BR wait.h (3HEAD),
+.BR utmpx (5),
+.BR attributes (7),
+.BR standards (7)
.SH NOTES
.LP
The most current entry is saved in a static structure. Multiple accesses
diff --git a/usr/src/man/man3c/getvfsent.3c b/usr/src/man/man3c/getvfsent.3c
index cd3ab2b5d9..5b599606c4 100644
--- a/usr/src/man/man3c/getvfsent.3c
+++ b/usr/src/man/man3c/getvfsent.3c
@@ -37,7 +37,7 @@ The \fBgetvfsent()\fR, \fBgetvfsfile()\fR, \fBgetvfsspec()\fR, and
with the broken-out fields of a line in the \fB/etc/vfstab\fR file. Each line
in the file contains a \fBvfstab\fR structure, declared in the
<\fBsys/vfstab.h\fR> header, whose following members are described on the
-\fBvfstab\fR(4) manual page:
+\fBvfstab\fR(5) manual page:
.sp
.in +2
.nf
@@ -115,7 +115,7 @@ A line in the file contains too few fields.
\fB/etc/vfstab\fR
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -130,7 +130,8 @@ MT-Level Safe
.SH SEE ALSO
.LP
-\fBvfstab\fR(4), \fBattributes\fR(5)
+.BR vfstab (5),
+.BR attributes (7)
.SH NOTES
.LP
The members of the \fBvfstab\fR structure point to information contained in a
diff --git a/usr/src/man/man3c/getwc.3c b/usr/src/man/man3c/getwc.3c
index 101f1ec454..cee57529d4 100644
--- a/usr/src/man/man3c/getwc.3c
+++ b/usr/src/man/man3c/getwc.3c
@@ -91,7 +91,7 @@ functions is not recommended; \fBfgetwc\fR(3C) and \fBfgetwc_l\fR(3C)
should be used instead.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.TS
box;
c | c
@@ -111,5 +111,9 @@ function is Standard. The
function is Uncommitted.
.SH SEE ALSO
.LP
-\fBfgetwc\fR(3C), \fBnewlocale\fR(3C), \fBsetlocale\fR(3C), \fBuselocale\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR fgetwc (3C),
+.BR newlocale (3C),
+.BR setlocale (3C),
+.BR uselocale (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/getwchar.3c b/usr/src/man/man3c/getwchar.3c
index e9c48c1231..5461c12166 100644
--- a/usr/src/man/man3c/getwchar.3c
+++ b/usr/src/man/man3c/getwchar.3c
@@ -74,7 +74,7 @@ variable of type \fBwchar_t\fR and then compared against the \fBwint_t\fR macro
\fBWEOF\fR, the comparison may never succeed because \fBwchar_t\fR is defined
as unsigned.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.TS
box;
c | c
@@ -90,4 +90,7 @@ MT-Level MT-Safe
The \fBgetwchar()\fR function is Standard. The \fBgetwchar_l()\fR function
is Uncommitted.
.SH SEE ALSO
-\fBfgetwc\fR(3C), \fBgetwc\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR fgetwc (3C),
+.BR getwc (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/getwd.3c b/usr/src/man/man3c/getwd.3c
index 915dc7f3e4..38d64f1c2a 100644
--- a/usr/src/man/man3c/getwd.3c
+++ b/usr/src/man/man3c/getwd.3c
@@ -89,13 +89,13 @@ should be used instead.
.Sy Obsolete Standard .
.Sh SEE ALSO
.Xr getcwd 3C ,
-.Xr standards 5
+.Xr standards 7
.Sh STANDARDS
The
.Fn getwd
function is available in the following compilation environments.
See
-.Xr standards 5 .
+.Xr standards 7 .
.Lp
.Bl -bullet -compact
.It
diff --git a/usr/src/man/man3c/getwidth.3c b/usr/src/man/man3c/getwidth.3c
index e4f3ecc081..d0050fdec4 100644
--- a/usr/src/man/man3c/getwidth.3c
+++ b/usr/src/man/man3c/getwidth.3c
@@ -46,7 +46,7 @@ set to \fB0\fR if only single-byte characters are used.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -62,7 +62,9 @@ MT-Level MT-Safe with exceptions
.SH SEE ALSO
.sp
.LP
-\fBeuclen\fR(3C), \fBsetlocale\fR(3C), \fBattributes\fR(5)
+.BR euclen (3C),
+.BR setlocale (3C),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3c/getws.3c b/usr/src/man/man3c/getws.3c
index c1485a0687..3edfca1018 100644
--- a/usr/src/man/man3c/getws.3c
+++ b/usr/src/man/man3c/getws.3c
@@ -59,7 +59,7 @@ call to \fBungetc\fR(3C) or \fBungetwc\fR(3C).
Upon successful completion, \fBgetws()\fR and \fBfgetws()\fR return \fIws\fR.
If the stream is at end-of-file, the end-of-file indicator for the stream is
set and \fBfgetws()\fR returns a null pointer. For standard-conforming (see
-\fBstandards\fR(5)) applications, if the end-of-file indicator for the stream
+\fBstandards\fR(7)) applications, if the end-of-file indicator for the stream
is set, \fBfgetws()\fR returns a null pointer whether or not the stream is at
end-of-file. If a read error occurs, the error indicator for the stream is set
and \fBfgetws()\fR returns a null pointer and sets \fBerrno\fR to indicate the
@@ -71,7 +71,7 @@ See \fBfgetwc\fR(3C) for the conditions that will cause \fBfgetws()\fR to fail.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -89,6 +89,13 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBferror\fR(3C), \fBfgetwc\fR(3C), \fBfread\fR(3C), \fBgetwc\fR(3C),
-\fBputws\fR(3C), \fBscanf\fR(3C), \fBungetc\fR(3C),
-\fBungetwc\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR ferror (3C),
+.BR fgetwc (3C),
+.BR fread (3C),
+.BR getwc (3C),
+.BR putws (3C),
+.BR scanf (3C),
+.BR ungetc (3C),
+.BR ungetwc (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/getzoneid.3c b/usr/src/man/man3c/getzoneid.3c
index 1395537a81..e5034dbc98 100644
--- a/usr/src/man/man3c/getzoneid.3c
+++ b/usr/src/man/man3c/getzoneid.3c
@@ -108,7 +108,7 @@ The \fIbuf\fR argument points to an illegal address.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -126,5 +126,8 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBIntro\fR(2), \fBchroot\fR(2), \fBmalloc\fR(3C), \fBattributes\fR(5),
-\fBzones\fR(5)
+.BR Intro (2),
+.BR chroot (2),
+.BR malloc (3C),
+.BR attributes (7),
+.BR zones (7)
diff --git a/usr/src/man/man3c/glob.3c b/usr/src/man/man3c/glob.3c
index 35e837b88d..0c1500c191 100644
--- a/usr/src/man/man3c/glob.3c
+++ b/usr/src/man/man3c/glob.3c
@@ -248,7 +248,7 @@ int (*gl_stat)(const char *, struct stat *);
.fi
.sp
This extension is provided to allow programs such as
-\fBufsrestore\fR(1M) to provide globbing from directories stored
+\fBufsrestore\fR(8) to provide globbing from directories stored
on tape.
.RE
@@ -637,7 +637,7 @@ glob ("*.h", GLOB_DOOFFS|GLOB_APPEND, NULL, &globbuf);
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -655,5 +655,11 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBexecv\fR(2), \fBstat\fR(2), \fBfnmatch\fR(3C), \fBopendir\fR(3C),
-\fBreaddir\fR(3C), \fBwordexp\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR execv (2),
+.BR stat (2),
+.BR fnmatch (3C),
+.BR opendir (3C),
+.BR readdir (3C),
+.BR wordexp (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/grantpt.3c b/usr/src/man/man3c/grantpt.3c
index 154a5a07f5..671f156f0a 100644
--- a/usr/src/man/man3c/grantpt.3c
+++ b/usr/src/man/man3c/grantpt.3c
@@ -72,7 +72,7 @@ of the pseudo-terminal manager device; e.g., by calling
or by performing an
.Xr open 2
of the
-.Xr ptm 7D
+.Xr ptm 4D
device.
.Pp
The user ID owner of the subsidiary device is set to the real user ID of the
@@ -113,6 +113,6 @@ The corresponding pseudo-terminal subsidiary device could not be accessed.
.Xr posix_openpt 3C ,
.Xr ptsname 3C ,
.Xr unlockpt 3C ,
-.Xr attributes 5 ,
-.Xr standards 5 ,
-.Xr ptm 7D
+.Xr ptm 4D ,
+.Xr attributes 7 ,
+.Xr standards 7
diff --git a/usr/src/man/man3c/hsearch.3c b/usr/src/man/man3c/hsearch.3c
index c7209481dd..1f8f463532 100644
--- a/usr/src/man/man3c/hsearch.3c
+++ b/usr/src/man/man3c/hsearch.3c
@@ -142,7 +142,7 @@ main( )
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -160,9 +160,14 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBbsearch\fR(3C), \fBlsearch\fR(3C), \fBmalloc\fR(3C), \fBstring\fR(3C),
-\fBtsearch\fR(3C), \fBmalloc\fR(3MALLOC), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR bsearch (3C),
+.BR lsearch (3C),
+.BR malloc (3C),
+.BR string (3C),
+.BR tsearch (3C),
+.BR malloc (3MALLOC),
+.BR attributes (7),
+.BR standards (7)
.sp
.LP
\fIThe Art of Computer Programming, Volume 3, Sorting and Searching by Donald
diff --git a/usr/src/man/man3c/iconv.3c b/usr/src/man/man3c/iconv.3c
index e26d6267dd..b8f86b49f0 100644
--- a/usr/src/man/man3c/iconv.3c
+++ b/usr/src/man/man3c/iconv.3c
@@ -401,7 +401,7 @@ conversion binary tables
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -419,6 +419,12 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBgeniconvtbl\fR(1), \fBiconv\fR(1), \fBiconv_close\fR(3C),
-\fBiconv_open\fR(3C), \fBgeniconvtbl\fR(4), \fBattributes\fR(5),
-\fBiconv\fR(5), \fBiconv_unicode\fR(5), \fBstandards\fR(5)
+.BR geniconvtbl (1),
+.BR iconv (1),
+.BR iconv_close (3C),
+.BR iconv_open (3C),
+.BR geniconvtbl (5),
+.BR attributes (7),
+.BR iconv (7),
+.BR iconv_unicode (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/iconv_close.3c b/usr/src/man/man3c/iconv_close.3c
index 73562b944a..bb643c8938 100644
--- a/usr/src/man/man3c/iconv_close.3c
+++ b/usr/src/man/man3c/iconv_close.3c
@@ -88,7 +88,7 @@ The conversion descriptor is invalid.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -106,4 +106,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBiconv\fR(3C), \fBiconv_open\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR iconv (3C),
+.BR iconv_open (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/iconv_open.3c b/usr/src/man/man3c/iconv_open.3c
index 37d4c3bdfa..06392a8521 100644
--- a/usr/src/man/man3c/iconv_open.3c
+++ b/usr/src/man/man3c/iconv_open.3c
@@ -71,7 +71,7 @@ are implementation-dependent.
.LP
The \fBiconv_open()\fR function supports the alias of the encoding name
specified in \fItocode\fR and \fIfromcode\fR. The alias table of the encoding
-name is described in the file \fB/usr/lib/iconv/alias\fR. See \fBalias\fR(4).
+name is described in the file \fB/usr/lib/iconv/alias\fR. See \fBalias\fR(5).
.sp
.LP
A conversion descriptor remains valid in a process until that process closes
@@ -139,7 +139,7 @@ alias table file of the encoding name
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -157,8 +157,12 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBexec\fR(2), \fBiconv\fR(3C), \fBiconv_close\fR(3C), \fBmalloc\fR(3C),
-\fBalias\fR(4), \fBattributes\fR(5)
+.BR exec (2),
+.BR iconv (3C),
+.BR iconv_close (3C),
+.BR malloc (3C),
+.BR alias (5),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3c/imaxabs.3c b/usr/src/man/man3c/imaxabs.3c
index 60cef3e840..992f7b477a 100644
--- a/usr/src/man/man3c/imaxabs.3c
+++ b/usr/src/man/man3c/imaxabs.3c
@@ -75,7 +75,7 @@ complement.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -93,4 +93,5 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBimaxdiv\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+\fBimaxdiv\fR(3C), \fBattributes\fR(7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/imaxdiv.3c b/usr/src/man/man3c/imaxdiv.3c
index e898bb81b1..f0990f708d 100644
--- a/usr/src/man/man3c/imaxdiv.3c
+++ b/usr/src/man/man3c/imaxdiv.3c
@@ -74,7 +74,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -92,4 +92,5 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBimaxabs\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+\fBimaxabs\fR(3C), \fBattributes\fR(7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/index.3c b/usr/src/man/man3c/index.3c
index 1b3ea8c77a..d7f1182fa2 100644
--- a/usr/src/man/man3c/index.3c
+++ b/usr/src/man/man3c/index.3c
@@ -93,7 +93,7 @@ yield a null string.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -109,5 +109,8 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBbstring\fR(3C), \fBmalloc\fR(3C), \fBstring\fR(3C), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR bstring (3C),
+.BR malloc (3C),
+.BR string (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/inet.3c b/usr/src/man/man3c/inet.3c
index 3f0f87b3b0..2dca4837b6 100644
--- a/usr/src/man/man3c/inet.3c
+++ b/usr/src/man/man3c/inet.3c
@@ -422,9 +422,9 @@ functions are
.Xr gethostbyname 3NSL ,
.Xr getipnodebyname 3SOCKET ,
.Xr getnetbyname 3SOCKET ,
-.Xr hosts 4 ,
-.Xr networks 4 ,
-.Xr attributes 5
+.Xr hosts 5 ,
+.Xr networks 5 ,
+.Xr attributes 7
.Sh NOTES
The return value from
.Fn inet_ntoa
diff --git a/usr/src/man/man3c/initgroups.3c b/usr/src/man/man3c/initgroups.3c
index f17f65c7b8..abc8076851 100644
--- a/usr/src/man/man3c/initgroups.3c
+++ b/usr/src/man/man3c/initgroups.3c
@@ -52,7 +52,7 @@ the calling process.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -68,4 +68,6 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBgetgroups\fR(2), \fBgetgrnam\fR(3C), \fBattributes\fR(5)
+.BR getgroups (2),
+.BR getgrnam (3C),
+.BR attributes (7)
diff --git a/usr/src/man/man3c/insque.3c b/usr/src/man/man3c/insque.3c
index 753e419fc5..314afa384e 100644
--- a/usr/src/man/man3c/insque.3c
+++ b/usr/src/man/man3c/insque.3c
@@ -40,7 +40,7 @@ queue.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -58,4 +58,5 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/is_system_labeled.3c b/usr/src/man/man3c/is_system_labeled.3c
index 3e47b52708..baa5d69105 100644
--- a/usr/src/man/man3c/is_system_labeled.3c
+++ b/usr/src/man/man3c/is_system_labeled.3c
@@ -26,7 +26,7 @@ See DESCRIPTION.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -44,4 +44,4 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBattributes\fR(5)
+.BR attributes (7)
diff --git a/usr/src/man/man3c/isaexec.3c b/usr/src/man/man3c/isaexec.3c
index 0bc091f390..629ecbce84 100644
--- a/usr/src/man/man3c/isaexec.3c
+++ b/usr/src/man/man3c/isaexec.3c
@@ -19,7 +19,7 @@ isaexec \- invoke isa-specific executable
.LP
The \fBisaexec()\fR function takes the path specified as \fIpath\fR and breaks
it into directory and file name components. It enquires from the running system
-the list of supported instruction set architectures; see \fBisalist\fR(5). The
+the list of supported instruction set architectures; see \fBisalist\fR(7). The
function traverses the list for an executable file in named subdirectories of
the original directory. When such a file is located, \fBexecve()\fR is invoked
with \fIargv\fR\fB[\|]\fR and \fIenvp\fR\fB[\|]\fR. See \fBexec\fR(2).
@@ -83,7 +83,7 @@ main(int argc, char *argv[], char *envp[])
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -101,4 +101,7 @@ Interface Stability Stable
.SH SEE ALSO
.sp
.LP
-\fBexec\fR(2), \fBgetexecname\fR(3C), \fBattributes\fR(5), \fBisalist\fR(5)
+.BR exec (2),
+.BR getexecname (3C),
+.BR attributes (7),
+.BR isalist (7)
diff --git a/usr/src/man/man3c/isastream.3c b/usr/src/man/man3c/isastream.3c
index 2dbcaa48d5..f10e13ff82 100644
--- a/usr/src/man/man3c/isastream.3c
+++ b/usr/src/man/man3c/isastream.3c
@@ -32,7 +32,7 @@ The \fIfildes\fR argument is not a valid file descriptor.
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -48,7 +48,9 @@ MT-Level MT-Safe
.TE
.SH SEE ALSO
-\fBattributes\fR(5), \fBstandards\fR(5), \fBstreamio\fR(7I)
+.BR streamio (4I),
+.BR attributes (7),
+.BR standards (7)
.sp
.LP
\fISTREAMS Programming Guide\fR
diff --git a/usr/src/man/man3c/isatty.3c b/usr/src/man/man3c/isatty.3c
index ce63807a39..8d19255233 100644
--- a/usr/src/man/man3c/isatty.3c
+++ b/usr/src/man/man3c/isatty.3c
@@ -96,7 +96,7 @@ non-terminal devices are connected to the communications line.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -114,4 +114,6 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBttyname\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR ttyname (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/isnand.3c b/usr/src/man/man3c/isnand.3c
index a351b5377a..3f13d8a8d5 100644
--- a/usr/src/man/man3c/isnand.3c
+++ b/usr/src/man/man3c/isnand.3c
@@ -156,7 +156,7 @@ See DESCRIPTION.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -172,4 +172,6 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBfpgetround\fR(3C), \fBisnan\fR(3M), \fBattributes\fR(5)
+.BR fpgetround (3C),
+.BR isnan (3M),
+.BR attributes (7)
diff --git a/usr/src/man/man3c/iswalpha.3c b/usr/src/man/man3c/iswalpha.3c
index 1a85c70147..66991b81a3 100644
--- a/usr/src/man/man3c/iswalpha.3c
+++ b/usr/src/man/man3c/iswalpha.3c
@@ -337,7 +337,7 @@ character.
.RS 19n
Tests whether \fIwc\fR is a wide-character code representing a character of
class "blank" in the program's current locale. This function is not available
-to applications conforming to standards prior to SUSv3. See \fBstandards\fR(5).
+to applications conforming to standards prior to SUSv3. See \fBstandards\fR(7).
.RE
.sp
@@ -432,7 +432,7 @@ class "xdigit" in the program's current locale.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.TS
box;
c | c
@@ -458,6 +458,11 @@ The \fBiswalpha_l()\fR, \fBiswalnum_l()\fR, \fBiswblank_l()\fR, \fBiswcntrl_l()\
functions are Standard.
.SH SEE ALSO
.LP
-\fBlocaledef\fR(1), \fBnewlocale\fR(3C),
-\fBsetlocale\fR(3C), \fBstdio\fR(3C), \fBuselocale\fR(3C),
-\fBascii\fR(5), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR localedef (1),
+.BR newlocale (3C),
+.BR setlocale (3C),
+.BR stdio (3C),
+.BR uselocale (3C),
+.BR ascii (7),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/iswctype.3c b/usr/src/man/man3c/iswctype.3c
index 4e4807152e..5aa6ff4c02 100644
--- a/usr/src/man/man3c/iswctype.3c
+++ b/usr/src/man/man3c/iswctype.3c
@@ -147,7 +147,7 @@ does not have an equivalent \fBisw*(\|)\fR function.
.SH ATTRIBUTES
.LP
See
-.BR attributes (5)
+.BR attributes (7)
for descriptions of the following attributes:
.TS
box;
@@ -169,5 +169,5 @@ MT-Level MT-Safe
.BR setlocale (3C),
.BR uselocale (3C),
.BR wctype (3C),
-.BR attributes (5),
-.BR standards (5)
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/killpg.3c b/usr/src/man/man3c/killpg.3c
index c43faf5019..c6295ffa67 100644
--- a/usr/src/man/man3c/killpg.3c
+++ b/usr/src/man/man3c/killpg.3c
@@ -67,7 +67,7 @@ No processes were found in the specified process group.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -85,5 +85,9 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBkill\fR(2), \fBsetpgrp\fR(2), \fBsigaction\fR(2), \fBsignal.h\fR(3HEAD),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR kill (2),
+.BR setpgrp (2),
+.BR sigaction (2),
+.BR signal.h (3HEAD),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/lckpwdf.3c b/usr/src/man/man3c/lckpwdf.3c
index 49ebb3334e..233317c99a 100644
--- a/usr/src/man/man3c/lckpwdf.3c
+++ b/usr/src/man/man3c/lckpwdf.3c
@@ -26,7 +26,7 @@ The \fBlckpwdf()\fR and \fBulckpwdf()\fR functions enable modification access
to the password databases through the lock file. A process first uses
\fBlckpwdf()\fR to lock the lock file, thereby gaining exclusive rights to
modify the \fB/etc/passwd\fR or \fB/etc/shadow\fR password database. See
-\fBpasswd\fR(4) and \fBshadow\fR(4). Upon completing modifications, a process
+\fBpasswd\fR(5) and \fBshadow\fR(5). Upon completing modifications, a process
should release the lock on the lock file using \fBulckpwdf()\fR. This mechanism
prevents simultaneous modification of the password databases. The lock file,
\fB/etc/.pwd.lock\fR, is used to coordinate modification access to the password
@@ -77,7 +77,7 @@ lock file
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -93,5 +93,8 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBgetpwnam\fR(3C), \fBgetspnam\fR(3C), \fBpasswd\fR(4), \fBshadow\fR(4),
-\fBattributes\fR(5)
+.BR getpwnam (3C),
+.BR getspnam (3C),
+.BR passwd (5),
+.BR shadow (5),
+.BR attributes (7)
diff --git a/usr/src/man/man3c/lfmt.3c b/usr/src/man/man3c/lfmt.3c
index 3699c6b6b4..50e949dbfd 100644
--- a/usr/src/man/man3c/lfmt.3c
+++ b/usr/src/man/man3c/lfmt.3c
@@ -395,7 +395,7 @@ UX:test: INFO: test facility enabled
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -411,6 +411,12 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBaddsev\fR(3C), \fBgettxt\fR(3C), \fBpfmt\fR(3C), \fBprintf\fR(3C),
-\fBsetcat\fR(3C), \fBsetlabel\fR(3C), \fBsetlocale\fR(3C), \fBattributes\fR(5),
-\fBenviron\fR(5)
+.BR addsev (3C),
+.BR gettxt (3C),
+.BR pfmt (3C),
+.BR printf (3C),
+.BR setcat (3C),
+.BR setlabel (3C),
+.BR setlocale (3C),
+.BR attributes (7),
+.BR environ (7)
diff --git a/usr/src/man/man3c/lio_listio.3c b/usr/src/man/man3c/lio_listio.3c
index f785269bc1..6d5f107a2e 100644
--- a/usr/src/man/man3c/lio_listio.3c
+++ b/usr/src/man/man3c/lio_listio.3c
@@ -285,11 +285,11 @@ or equal to the offset maximum in the open file description associated with
.sp
.LP
The \fBlio_listio()\fR function has a transitional interface for 64-bit file
-offsets. See \fBlf64\fR(5).
+offsets. See \fBlf64\fR(7).
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -303,15 +303,29 @@ Interface Stability Committed
_
MT-Level MT-Safe
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.sp
.LP
-\fBclose\fR(2), \fBexec\fR(2), \fBexit\fR(2), \fBfork\fR(2), \fBlseek\fR(2),
-\fBread\fR(2), \fBwrite\fR(2), \fBaio_cancel\fR(3C), \fBaio_error\fR(3C),
-\fBaio_fsync\fR(3C), \fBaio_read\fR(3C), \fBaio_return\fR(3C),
-\fBaio_write\fR(3C), \fBaio.h\fR(3HEAD), \fBfcntl.h\fR(3HEAD),
-\fBsiginfo.h\fR(3HEAD), \fBsignal.h\fR(3HEAD), \fBattributes\fR(5),
-\fBlf64\fR(5), \fBstandards\fR(5)
+.BR close (2),
+.BR exec (2),
+.BR exit (2),
+.BR fork (2),
+.BR lseek (2),
+.BR read (2),
+.BR write (2),
+.BR aio_cancel (3C),
+.BR aio_error (3C),
+.BR aio_fsync (3C),
+.BR aio_read (3C),
+.BR aio_return (3C),
+.BR aio_write (3C),
+.BR aio.h (3HEAD),
+.BR fcntl.h (3HEAD),
+.BR siginfo.h (3HEAD),
+.BR signal.h (3HEAD),
+.BR attributes (7),
+.BR lf64 (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/localeconv.3c b/usr/src/man/man3c/localeconv.3c
index 6f7d0fe919..fc099de40c 100644
--- a/usr/src/man/man3c/localeconv.3c
+++ b/usr/src/man/man3c/localeconv.3c
@@ -91,7 +91,7 @@ char n_sign_posn; /* CHAR_MAX */
.sp
.LP
The following members are also available to SUSv3-conforming applications. See
-\fBstandards\fR(5)
+.BR standards (7)
.sp
.in +2
.nf
@@ -552,7 +552,7 @@ l l l l l .
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -577,4 +577,7 @@ locale.
.SH SEE ALSO
.sp
.LP
-\fBsetlocale\fR(3C), \fBattributes\fR(5), \fBenviron\fR(5), \fBstandards\fR(5)
+.BR setlocale (3C),
+.BR attributes (7),
+.BR environ (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/lockf.3c b/usr/src/man/man3c/lockf.3c
index 4deea9e69a..5cbbb89f43 100644
--- a/usr/src/man/man3c/lockf.3c
+++ b/usr/src/man/man3c/lockf.3c
@@ -282,10 +282,10 @@ applications requiring it.
.sp
.LP
The \fBlockf()\fR function has a transitional interface for 64-bit file
-offsets. See \fBlf64\fR(5).
+offsets. See \fBlf64\fR(7).
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -302,6 +302,16 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBIntro\fR(2), \fBalarm\fR(2), \fBchmod\fR(2), \fBclose\fR(2), \fBcreat\fR(2),
-\fBfcntl\fR(2), \fBmmap\fR(2), \fBopen\fR(2), \fBread\fR(2), \fBwrite\fR(2),
-\fBattributes\fR(5), \fBlf64\fR(5), \fBstandards\fR(5)
+.BR Intro (2),
+.BR alarm (2),
+.BR chmod (2),
+.BR close (2),
+.BR creat (2),
+.BR fcntl (2),
+.BR mmap (2),
+.BR open (2),
+.BR read (2),
+.BR write (2),
+.BR attributes (7),
+.BR lf64 (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/lsearch.3c b/usr/src/man/man3c/lsearch.3c
index 7963a03201..2fc9bdafc2 100644
--- a/usr/src/man/man3c/lsearch.3c
+++ b/usr/src/man/man3c/lsearch.3c
@@ -120,7 +120,7 @@ main()
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -138,8 +138,12 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBbsearch\fR(3C), \fBhsearch\fR(3C), \fBstring\fR(3C), \fBtsearch\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR bsearch (3C),
+.BR hsearch (3C),
+.BR string (3C),
+.BR tsearch (3C),
+.BR attributes (7),
+.BR standards (7)
.sp
.LP
\fIThe Art of Computer Programming, Volume 3, Sorting and Searching by Donald
diff --git a/usr/src/man/man3c/madvise.3c b/usr/src/man/man3c/madvise.3c
index c703409dc2..c6d39ab8d4 100644
--- a/usr/src/man/man3c/madvise.3c
+++ b/usr/src/man/man3c/madvise.3c
@@ -263,7 +263,7 @@ Stale \fBNFS\fR file handle.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -280,4 +280,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBmeminfo\fR(2), \fBmmap\fR(2), \fBsysconf\fR(3C), \fBattributes\fR(5)
+.BR meminfo (2),
+.BR mmap (2),
+.BR sysconf (3C),
+.BR attributes (7)
diff --git a/usr/src/man/man3c/makecontext.3c b/usr/src/man/man3c/makecontext.3c
index 8b0d36a7c7..1dc62e330b 100644
--- a/usr/src/man/man3c/makecontext.3c
+++ b/usr/src/man/man3c/makecontext.3c
@@ -174,11 +174,11 @@ main(int argc, char **argv)
These functions are useful for implementing user-level context switching
between multiple threads of control within a process (co-processing). More
effective multiple threads of control can be obtained by using native support
-for multithreading. See \fBthreads\fR(5).
+for multithreading. See \fBthreads\fR(7).
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -196,9 +196,15 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBmmap\fR(2), \fBgetcontext\fR(2), \fBsigaction\fR(2), \fBsigprocmask\fR(2),
-\fBpthread_exit\fR(3C), \fBucontext.h\fR(3HEAD), \fBattributes\fR(5),
-\fBstandards\fR(5), \fBthreads\fR(5)
+.BR getcontext (2),
+.BR mmap (2),
+.BR sigaction (2),
+.BR sigprocmask (2),
+.BR pthread_exit (3C),
+.BR ucontext.h (3HEAD),
+.BR attributes (7),
+.BR standards (7),
+.BR threads (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3c/makedev.3c b/usr/src/man/man3c/makedev.3c
index e2209e9f9e..8cd0d2c997 100644
--- a/usr/src/man/man3c/makedev.3c
+++ b/usr/src/man/man3c/makedev.3c
@@ -88,7 +88,7 @@ The \fIdevice\fR argument is \fBNODEV\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -104,4 +104,6 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBmknod\fR(2), \fBstat\fR(2), \fBattributes\fR(5)
+.BR mknod (2),
+.BR stat (2),
+.BR attributes (7)
diff --git a/usr/src/man/man3c/malloc.3c b/usr/src/man/man3c/malloc.3c
index 1fbc0d1775..4772cd8d0b 100644
--- a/usr/src/man/man3c/malloc.3c
+++ b/usr/src/man/man3c/malloc.3c
@@ -434,7 +434,7 @@ functions are
.Xr libumem 3LIB ,
.Xr umem_alloc 3MALLOC ,
.Xr watchmalloc 3MALLOC ,
-.Xr attributes 5
+.Xr attributes 7
.Sh WARNINGS
Undefined results will occur if the size requested for a block of memory
exceeds the maximum size of a process's heap, which can be obtained with
diff --git a/usr/src/man/man3c/mblen.3c b/usr/src/man/man3c/mblen.3c
index c482a5d1b5..531a524a2e 100644
--- a/usr/src/man/man3c/mblen.3c
+++ b/usr/src/man/man3c/mblen.3c
@@ -106,7 +106,7 @@ Invalid character sequence is detected.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -132,5 +132,5 @@ function is Uncommitted.
.SH SEE ALSO
.LP
\fBmbstowcs\fR(3C), \fBmbtowc\fR(3C), \fBnewlocale\fR(3C), \fBsetlocale\fR(3C),
-\fBwcstombs\fR(3C), \fBwctomb\fR(3C), \fBuselocale\fR(3C) \fBattributes\fR(5),
-\fBstandards\fR(5)
+\fBwcstombs\fR(3C), \fBwctomb\fR(3C), \fBuselocale\fR(3C) \fBattributes\fR(7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/mbrlen.3c b/usr/src/man/man3c/mbrlen.3c
index 4343446df9..c1a6260ef1 100644
--- a/usr/src/man/man3c/mbrlen.3c
+++ b/usr/src/man/man3c/mbrlen.3c
@@ -88,7 +88,7 @@ associated character sequence. The implemenation will behave as if no function
defined in the Reference Manual calls \fBmbrlen()\fR.
.LP
The behavior of \fBmbrlen()\fR is affected by the \fBLC_CTYPE\fR category of the
-current locale. See \fBenviron\fR(5). The behavior of \fBmbrlen_l()\fR does not
+current locale. See \fBenviron\fR(7). The behavior of \fBmbrlen_l()\fR does not
use the current enivronment and instead uses the locale specified by \fBloc\fR.
.SH RETURN VALUES
.LP
@@ -162,7 +162,7 @@ Invalid character sequence is detected.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.TS
box;
c | c
@@ -182,9 +182,13 @@ function is Standard. The
function is Uncommitted.
.SH SEE ALSO
.LP
-\fBmbrtowc\fR(3C), \fBmbsinit\fR(3C), \fBnewlocale\fR(3C),
-\fBsetlocale\fR(3C), \fBattributes\fR(5),
-\fBenviron\fR(5), \fBstandards\fR(5)
+.BR mbrtowc (3C),
+.BR mbsinit (3C),
+.BR newlocale (3C),
+.BR setlocale (3C),
+.BR attributes (7),
+.BR environ (7),
+.BR standards (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3c/mbrtoc16.3c b/usr/src/man/man3c/mbrtoc16.3c
index 1b9bd8c8d6..b4016b2efd 100644
--- a/usr/src/man/man3c/mbrtoc16.3c
+++ b/usr/src/man/man3c/mbrtoc16.3c
@@ -394,4 +394,4 @@ then the functions are
.Xr uselocale 3C ,
.Xr wcrtomb 3C ,
.Xr uchar.h 3HEAD ,
-.Xr environ 5
+.Xr environ 7
diff --git a/usr/src/man/man3c/mbsinit.3c b/usr/src/man/man3c/mbsinit.3c
index 4f7257c7fa..3d35a0a9ca 100644
--- a/usr/src/man/man3c/mbsinit.3c
+++ b/usr/src/man/man3c/mbsinit.3c
@@ -78,7 +78,7 @@ If an \fBmbstate_t\fR object is altered by any of the functions described as
"restartable", and is then used with a different character sequence, or in the
other conversion direction, or with a different \fBLC_CTYPE\fR category setting
than on earlier function calls, the behavior is undefined. See
-\fBenviron\fR(5).
+\fBenviron\fR(7).
.SH ERRORS
.LP
No errors are defined.
@@ -97,7 +97,7 @@ conversion involving any character sequence, in any \fBLC_CTYPE\fR category
setting.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.TS
box;
c | c
@@ -119,5 +119,6 @@ function is Uncommitted.
.LP
\fBmbrlen\fR(3C), \fBmbrtowc\fR(3C), \fBmbsrtowcs\fR(3C),
\fBnewlocale\fR(3C), \fBsetlocale\fR(3C),
-\fBwcrtomb\fR(3C), \fBwcsrtombs\fR(3C), \fBuselocale\fR(), \fBattributes\fR(5), \fBenviron\fR(5),
-\fBstandards\fR(5)
+\fBwcrtomb\fR(3C), \fBwcsrtombs\fR(3C), \fBuselocale\fR(), \fBattributes\fR(7),
+.BR environ (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/mbsrtowcs.3c b/usr/src/man/man3c/mbsrtowcs.3c
index 05efa21401..017b745d4e 100644
--- a/usr/src/man/man3c/mbsrtowcs.3c
+++ b/usr/src/man/man3c/mbsrtowcs.3c
@@ -117,7 +117,7 @@ buffer pointed to by \fIsrc\fR.
.LP
The behavior of \fBmbnrtowcs()\fR and \fBmbsrtowcs()\fR functions are
affected by the \fBLC_CTYPE\fR category of the
-current locale. See \fBenviron\fR(5). The functions \fBmbsrtowcs_l()\fR and
+current locale. See \fBenviron\fR(7). The functions \fBmbsrtowcs_l()\fR and
\fBmbsnrtowcs_l()\fR behave identically to \fBmbsrtowcs()\fR and
\fBmbsnrtowcs()\fR, except that instead of using the current locale, they use
the locale specified by \fIloc\fR.
@@ -149,7 +149,7 @@ state.
Invalid character sequence is detected.
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.TS
box;
c | c
@@ -179,5 +179,6 @@ internal \fBmbstate_t\fR object and are Unsafe in multithreaded
applications.
.SH SEE ALSO
\fBmbrtowc\fR(3C), \fBmbsinit\fR(3C), \fBnewlocale\fR(3C),
-\fBsetlocale\fR(3C), \fBuselocale()\fR, \fBattributes\fR(5),
-\fBenviron\fR(5), \fBstandards\fR(5)
+\fBsetlocale\fR(3C), \fBuselocale()\fR, \fBattributes\fR(7),
+.BR environ (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/mbstowcs.3c b/usr/src/man/man3c/mbstowcs.3c
index e8dcbaa861..1182ad31a1 100644
--- a/usr/src/man/man3c/mbstowcs.3c
+++ b/usr/src/man/man3c/mbstowcs.3c
@@ -110,6 +110,6 @@ function is
.Xr setlocale 3C ,
.Xr uselocale 3C ,
.Xr wcstombs 3C ,
-.Xr attributes 5 ,
-.Xr environ 5 ,
-.Xr standards 5
+.Xr attributes 7 ,
+.Xr environ 7 ,
+.Xr standards 7
diff --git a/usr/src/man/man3c/mbtowc.3c b/usr/src/man/man3c/mbtowc.3c
index 9935a3596b..b38554000f 100644
--- a/usr/src/man/man3c/mbtowc.3c
+++ b/usr/src/man/man3c/mbtowc.3c
@@ -103,7 +103,7 @@ Invalid character sequence is detected.
.RE
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.TS
box;
c | c
@@ -125,6 +125,12 @@ function is Standard. The
function is Uncommitted.
.SH SEE ALSO
.LP
-\fBmblen\fR(3C), \fBmbstowcs\fR(3C),
-\fBnewlocale\fR(3C), \fBsetlocale\fR(3C), \fBuselocale\fR(3C),
-\fBwcstombs\fR(3C), \fBwctomb\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR mblen (3C),
+.BR mbstowcs (3C),
+.BR newlocale (3C),
+.BR setlocale (3C),
+.BR uselocale (3C),
+.BR wcstombs (3C),
+.BR wctomb (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/membar_ops.3c b/usr/src/man/man3c/membar_ops.3c
index 2d2cb8843b..36e3676f41 100644
--- a/usr/src/man/man3c/membar_ops.3c
+++ b/usr/src/man/man3c/membar_ops.3c
@@ -76,7 +76,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -94,10 +94,17 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBatomic_add\fR(3C), \fBatomic_and\fR(3C), \fBatomic_bits\fR(3C),
-\fBatomic_cas\fR(3C), \fBatomic_dec\fR(3C), \fBatomic_inc\fR(3C),
-\fBatomic_ops\fR(3C), \fBatomic_or\fR(3C), \fBatomic_swap\fR(3C),
-\fBattributes\fR(5), \fBatomic_ops\fR(9F)
+.BR atomic_add (3C),
+.BR atomic_and (3C),
+.BR atomic_bits (3C),
+.BR atomic_cas (3C),
+.BR atomic_dec (3C),
+.BR atomic_inc (3C),
+.BR atomic_ops (3C),
+.BR atomic_or (3C),
+.BR atomic_swap (3C),
+.BR attributes (7),
+.BR atomic_ops (9F)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3c/memory.3c b/usr/src/man/man3c/memory.3c
index 5d4628a709..4615f37b8a 100644
--- a/usr/src/man/man3c/memory.3c
+++ b/usr/src/man/man3c/memory.3c
@@ -243,8 +243,8 @@ application knows that the objects being copied do not overlap.
.Sy MT-Safe
.Sh SEE ALSO
.Xr string 3C ,
-.Xr attributes 5 ,
-.Xr standards 5
+.Xr attributes 7 ,
+.Xr standards 7
.Sh NOTES
Overlap between objects being copied can arise even when their
.Pq virtual
diff --git a/usr/src/man/man3c/mkfifo.3c b/usr/src/man/man3c/mkfifo.3c
index 7c55928d76..9d78f789c4 100644
--- a/usr/src/man/man3c/mkfifo.3c
+++ b/usr/src/man/man3c/mkfifo.3c
@@ -233,7 +233,7 @@ status = mkfifo("/home/cnd/mod_done", S_IWUSR | S_IRUSR |
.in -2
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -249,5 +249,12 @@ MT-Level MT-Safe
.TE
.SH SEE ALSO
-\fBmkdir\fR(1), \fBchmod\fR(2), \fBexec\fR(2), \fBmknod\fR(2), \fBumask\fR(2),
-\fBstat.h\fR(3HEAD), \fBufs\fR(7FS), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR mkdir (1),
+.BR chmod (2),
+.BR exec (2),
+.BR mknod (2),
+.BR umask (2),
+.BR stat.h (3HEAD),
+.BR ufs (4FS),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/mkstemp.3c b/usr/src/man/man3c/mkstemp.3c
index a328b27119..d1a5e51d8d 100644
--- a/usr/src/man/man3c/mkstemp.3c
+++ b/usr/src/man/man3c/mkstemp.3c
@@ -140,11 +140,11 @@ will be removed by the application before the application terminates.
.sp
.LP
The \fBmkstemp()\fR function has a transitional interface for 64-bit file
-offsets. See \fBlf64\fR(5).
+offsets. See \fBlf64\fR(7).
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -164,6 +164,12 @@ The \fBmkstemp()\fR function is Standard. The \fBmkstemps()\fR and
.SH SEE ALSO
.sp
.LP
-\fBgetpid\fR(2), \fBlstat\fR(2), \fBmkdir\fR(2), \fBopen\fR(2),
-\fBtmpfile\fR(3C), \fBmktemp\fR(3C), \fBattributes\fR(5), \fBlf64\fR(5),
-\fBstandards\fR(5)
+.BR getpid (2),
+.BR lstat (2),
+.BR mkdir (2),
+.BR open (2),
+.BR mktemp (3C),
+.BR tmpfile (3C),
+.BR attributes (7),
+.BR lf64 (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/mktemp.3c b/usr/src/man/man3c/mktemp.3c
index 63394fa7b3..44f11cabce 100644
--- a/usr/src/man/man3c/mktemp.3c
+++ b/usr/src/man/man3c/mktemp.3c
@@ -102,7 +102,7 @@ function avoids this problem and is preferred over this function.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -120,5 +120,8 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBmkstemp\fR(3C), \fBtmpfile\fR(3C), \fBtmpnam\fR(3C), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR mkstemp (3C),
+.BR tmpfile (3C),
+.BR tmpnam (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/mktime.3c b/usr/src/man/man3c/mktime.3c
index 0c0673b15d..326bb2f701 100644
--- a/usr/src/man/man3c/mktime.3c
+++ b/usr/src/man/man3c/mktime.3c
@@ -205,7 +205,7 @@ standard time, and could return incorrect values. This affects the 64-bit
versions of \fBmktime()\fR and \fBtimegm()\fR.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -222,5 +222,8 @@ MT-Level MT-Safe with exceptions
.SH SEE ALSO
.LP
-\fBctime\fR(3C), \fBgetenv\fR(3C), \fBTIMEZONE\fR(4), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR ctime (3C),
+.BR getenv (3C),
+.BR TIMEZONE (5),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/mlock.3c b/usr/src/man/man3c/mlock.3c
index 837575e836..692d94d623 100644
--- a/usr/src/man/man3c/mlock.3c
+++ b/usr/src/man/man3c/mlock.3c
@@ -147,7 +147,7 @@ privilege.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -165,5 +165,11 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBfork\fR(2), \fBmemcntl\fR(2), \fBmmap\fR(2), \fBplock\fR(3C),
-\fBmlockall\fR(3C), \fBsysconf\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR fork (2),
+.BR memcntl (2),
+.BR mmap (2),
+.BR mlockall (3C),
+.BR plock (3C),
+.BR sysconf (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/mlockall.3c b/usr/src/man/man3c/mlockall.3c
index e5a1aed6dd..4deab295b8 100644
--- a/usr/src/man/man3c/mlockall.3c
+++ b/usr/src/man/man3c/mlockall.3c
@@ -102,7 +102,7 @@ set of the calling process.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -120,5 +120,12 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBexec\fR(2), \fBfork\fR(2), \fBmemcntl\fR(2), \fBmmap\fR(2), \fBplock\fR(3C),
-\fBmlock\fR(3C), \fBsysconf\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR exec (2),
+.BR fork (2),
+.BR memcntl (2),
+.BR mmap (2),
+.BR mlock (3C),
+.BR plock (3C),
+.BR sysconf (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/monitor.3c b/usr/src/man/man3c/monitor.3c
index 694c129b9a..011479fb51 100644
--- a/usr/src/man/man3c/monitor.3c
+++ b/usr/src/man/man3c/monitor.3c
@@ -185,7 +185,7 @@ histogram computation.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -201,4 +201,7 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBprofil\fR(2), \fBend\fR(3C), \fBattributes\fR(5), \fBprof\fR(5)
+.BR profil (2),
+.BR end (3C),
+.BR attributes (7),
+.BR prof (7)
diff --git a/usr/src/man/man3c/mq_close.3c b/usr/src/man/man3c/mq_close.3c
index 915f58387c..c97cbc6ced 100644
--- a/usr/src/man/man3c/mq_close.3c
+++ b/usr/src/man/man3c/mq_close.3c
@@ -99,7 +99,7 @@ The \fBmq_open()\fR function is not supported by the system.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -113,14 +113,18 @@ Interface Stability Committed
_
MT-Level MT-Safe
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.sp
.LP
-\fBmqueue.h\fR(3HEAD), \fBmq_notify\fR(3C), \fBmq_open\fR(3C),
-\fBmq_unlink\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR mq_notify (3C),
+.BR mq_open (3C),
+.BR mq_unlink (3C),
+.BR mqueue.h (3HEAD),
+.BR attributes (7),
+.BR standards (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3c/mq_getattr.3c b/usr/src/man/man3c/mq_getattr.3c
index 5dc979e5f2..11dcd1946c 100644
--- a/usr/src/man/man3c/mq_getattr.3c
+++ b/usr/src/man/man3c/mq_getattr.3c
@@ -138,7 +138,7 @@ The \fBmq_getattr()\fR function is not supported by the system.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -152,15 +152,22 @@ Interface Stability Committed
_
MT-Level MT-Safe
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.sp
.LP
-\fBmsgctl\fR(2), \fBmsgget\fR(2), \fBmsgrcv\fR(2), \fBmsgsnd\fR(2),
-\fBmqueue.h\fR(3HEAD), \fBmq_open\fR(3C), \fBmq_send\fR(3C),
-\fBmq_setattr\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR msgctl (2),
+.BR msgget (2),
+.BR msgrcv (2),
+.BR msgsnd (2),
+.BR mq_open (3C),
+.BR mq_send (3C),
+.BR mq_setattr (3C),
+.BR mqueue.h (3HEAD),
+.BR attributes (7),
+.BR standards (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3c/mq_notify.3c b/usr/src/man/man3c/mq_notify.3c
index f103f3bcbf..b4d44ca0fb 100644
--- a/usr/src/man/man3c/mq_notify.3c
+++ b/usr/src/man/man3c/mq_notify.3c
@@ -124,7 +124,7 @@ A process is already registered for notification by the message queue.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -138,12 +138,18 @@ Interface Stability Committed
_
MT-Level MT-Safe
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.sp
.LP
-\fBmq_close\fR(3C), \fBmq_open\fR(3C), \fBmq_receive\fR(3C), \fBmq_send\fR(3C),
-\fBmqueue.h\fR(3HEAD), \fBsiginfo.h\fR(3HEAD), \fBsignal.h\fR(3HEAD),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR mq_close (3C),
+.BR mq_open (3C),
+.BR mq_receive (3C),
+.BR mq_send (3C),
+.BR mqueue.h (3HEAD),
+.BR siginfo.h (3HEAD),
+.BR signal.h (3HEAD),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/mq_open.3c b/usr/src/man/man3c/mq_open.3c
index f393b6f06d..01868ba4a6 100644
--- a/usr/src/man/man3c/mq_open.3c
+++ b/usr/src/man/man3c/mq_open.3c
@@ -293,7 +293,7 @@ The \fBmq_open()\fR function is not supported by the system.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -307,16 +307,24 @@ Interface Stability Committed
_
MT-Level MT-Safe
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.sp
.LP
-\fBexec\fR(2), \fBexit\fR(2), \fBumask\fR(2), \fBsysconf\fR(3C),
-\fBmqueue.h\fR(3HEAD), \fBmq_close\fR(3C), \fBmq_receive\fR(3C),
-\fBmq_send\fR(3C), \fBmq_setattr\fR(3C), \fBmq_unlink\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR exec (2),
+.BR exit (2),
+.BR umask (2),
+.BR mq_close (3C),
+.BR mq_receive (3C),
+.BR mq_send (3C),
+.BR mq_setattr (3C),
+.BR mq_unlink (3C),
+.BR sysconf (3C),
+.BR mqueue.h (3HEAD),
+.BR attributes (7),
+.BR standards (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3c/mq_receive.3c b/usr/src/man/man3c/mq_receive.3c
index 2248349290..f8075bd72a 100644
--- a/usr/src/man/man3c/mq_receive.3c
+++ b/usr/src/man/man3c/mq_receive.3c
@@ -230,7 +230,7 @@ A data corruption problem with the message has been detected.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -249,9 +249,13 @@ Standard See below.
.sp
.LP
-For \fBmq_receive()\fR and \fBmq_timedreceive()\fR. see \fBstandards\fR(5).
+For \fBmq_receive()\fR and \fBmq_timedreceive()\fR. see \fBstandards\fR(7).
.SH SEE ALSO
.sp
.LP
-\fBmqueue.h\fR(3HEAD), \fBmq_open\fR(3C), \fBmq_send\fR(3C),
-\fBmq_setattr\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR mq_open (3C),
+.BR mq_send (3C),
+.BR mq_setattr (3C),
+.BR mqueue.h (3HEAD),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/mq_send.3c b/usr/src/man/man3c/mq_send.3c
index 94a161794c..f52b7da5a8 100644
--- a/usr/src/man/man3c/mq_send.3c
+++ b/usr/src/man/man3c/mq_send.3c
@@ -219,7 +219,7 @@ the timeout expired before the message could be added to the queue.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -238,9 +238,13 @@ Standard See below.
.sp
.LP
-For \fBmq_send()\fR and \fBmq_timedsend()\fR, see \fBstandards\fR(5).
+For \fBmq_send()\fR and \fBmq_timedsend()\fR, see \fBstandards\fR(7).
.SH SEE ALSO
.LP
-\fBsysconf\fR(3C), \fBmqueue.h\fR(3HEAD), \fBmq_open\fR(3C),
-\fBmq_receive\fR(3C), \fBmq_setattr\fR(3C), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR mq_open (3C),
+.BR mq_receive (3C),
+.BR mq_setattr (3C),
+.BR sysconf (3C),
+.BR mqueue.h (3HEAD),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/mq_setattr.3c b/usr/src/man/man3c/mq_setattr.3c
index ef19ce9048..9e0f0c1ce8 100644
--- a/usr/src/man/man3c/mq_setattr.3c
+++ b/usr/src/man/man3c/mq_setattr.3c
@@ -118,7 +118,7 @@ The \fBmq_setattr()\fR function is not supported by the system.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -132,16 +132,23 @@ Interface Stability Committed
_
MT-Level MT-Safe
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.sp
.LP
-\fBmsgctl\fR(2), \fBmsgget\fR(2), \fBmsgrcv\fR(2), \fBmsgsnd\fR(2),
-\fBmq_getattr\fR(3C), \fBmq_open\fR(3C), \fBmq_receive\fR(3C),
-\fBmq_send\fR(3C), \fBmqueue.h\fR(3HEAD), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR msgctl (2),
+.BR msgget (2),
+.BR msgrcv (2),
+.BR msgsnd (2),
+.BR mq_getattr (3C),
+.BR mq_open (3C),
+.BR mq_receive (3C),
+.BR mq_send (3C),
+.BR mqueue.h (3HEAD),
+.BR attributes (7),
+.BR standards (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3c/mq_unlink.3c b/usr/src/man/man3c/mq_unlink.3c
index ca2e7ff94c..c3beab7599 100644
--- a/usr/src/man/man3c/mq_unlink.3c
+++ b/usr/src/man/man3c/mq_unlink.3c
@@ -118,7 +118,7 @@ The named message queue, \fIname\fR, does not exist.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -132,14 +132,17 @@ Interface Stability Committed
_
MT-Level MT-Safe
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.sp
.LP
-\fBmqueue.h\fR(3HEAD), \fBmq_close\fR(3C), \fBmq_open\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR mq_close (3C),
+.BR mq_open (3C),
+.BR mqueue.h (3HEAD),
+.BR attributes (7),
+.BR standards (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3c/msync.3c b/usr/src/man/man3c/msync.3c
index 05524a07a3..2bbf953601 100644
--- a/usr/src/man/man3c/msync.3c
+++ b/usr/src/man/man3c/msync.3c
@@ -232,7 +232,7 @@ are not written to disk.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -250,5 +250,8 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBmemcntl\fR(2), \fBmmap\fR(2), \fBsysconf\fR(3C), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR memcntl (2),
+.BR mmap (2),
+.BR sysconf (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/mtx.3c b/usr/src/man/man3c/mtx.3c
index a303adc211..26d0d30e6d 100644
--- a/usr/src/man/man3c/mtx.3c
+++ b/usr/src/man/man3c/mtx.3c
@@ -58,7 +58,7 @@ family of functions implement mutual exclusion locks (mutexes) and behave
similarly to both POSIX threads and illumos threads; however, they have
slightly different call signatures and return values.
For more information, see
-.Xr threads 5 .
+.Xr threads 7 .
Importantly, they do not allow for inter-process synchronization.
.Ss Creating and Destroying Mutexes
The
@@ -218,4 +218,4 @@ is returned.
.Xr pthread_mutex_trylock 3C ,
.Xr pthread_mutex_unlock 3C ,
.Xr threads.h 3HEAD ,
-.Xr attributes 5
+.Xr attributes 7
diff --git a/usr/src/man/man3c/mutex_init.3c b/usr/src/man/man3c/mutex_init.3c
index 9c73ad1b27..64e1e1205d 100644
--- a/usr/src/man/man3c/mutex_init.3c
+++ b/usr/src/man/man3c/mutex_init.3c
@@ -253,7 +253,7 @@ PTHREAD_MUTEX_ERRORCHECK\fR type.
The \fBLOCK_PRIO_INHERIT\fR attribute is the same as the POSIX
\fBPTHREAD_PRIO_INHERIT\fR attribute. The \fBLOCK_PRIO_PROTECT\fR attribute is
the same as the POSIX \fBPTHREAD_PRIO_PROTECT\fR attribute. See
-\fBpthread_mutexattr_getprotocol\fR(3C),
+.BR pthread_mutexattr_getprotocol (3C),
\fBpthread_mutexattr_getprioceiling\fR(3C), and
\fBpthread_mutex_getprioceiling\fR(3C) for a full discussion. The
\fBLOCK_PRIO_INHERIT\fR and \fBLOCK_PRIO_PROTECT\fR attributes are mutually
@@ -938,7 +938,7 @@ free(r); /* then free memory */
If the mutex is not destroyed, the program could have memory leaks.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -955,11 +955,17 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBmmap\fR(2), \fBshmop\fR(2), \fBpthread_mutexattr_getprioceiling\fR(3C),
-\fBpthread_mutexattr_getprotocol\fR(3C), \fBpthread_mutexattr_getrobust\fR(3C),
-\fBpthread_mutexattr_gettype\fR(3C), \fBpthread_mutex_getprioceiling\fR(3C),
-\fBpthread_mutex_init\fR(3C), \fBattributes\fR(5), \fBmutex\fR(5),
-\fBstandards\fR(5)
+.BR mmap (2),
+.BR shmop (2),
+.BR pthread_mutex_getprioceiling (3C),
+.BR pthread_mutex_init (3C),
+.BR pthread_mutexattr_getprioceiling (3C),
+.BR pthread_mutexattr_getprotocol (3C),
+.BR pthread_mutexattr_getrobust (3C),
+.BR pthread_mutexattr_gettype (3C),
+.BR attributes (7),
+.BR mutex (7),
+.BR standards (7)
.SH NOTES
.LP
Previous releases of Solaris provided the \fBUSYNC_PROCESS_ROBUST\fR mutex
diff --git a/usr/src/man/man3c/nanosleep.3c b/usr/src/man/man3c/nanosleep.3c
index ba1e275bb0..dbf7c09112 100644
--- a/usr/src/man/man3c/nanosleep.3c
+++ b/usr/src/man/man3c/nanosleep.3c
@@ -137,7 +137,7 @@ The \fBnanosleep()\fR function is not supported by this implementation.
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -151,8 +151,11 @@ Interface Stability Committed
_
MT-Level MT-Safe
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
-\fBsleep\fR(3C), \fBtime.h\fR(3HEAD), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR sleep (3C),
+.BR time.h (3HEAD),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/ndbm.3c b/usr/src/man/man3c/ndbm.3c
index 5f50e78ece..765a7c74ba 100644
--- a/usr/src/man/man3c/ndbm.3c
+++ b/usr/src/man/man3c/ndbm.3c
@@ -288,7 +288,7 @@ main()
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -305,8 +305,14 @@ MT-Level Unsafe
.SH SEE ALSO
.LP
-\fBar\fR(1), \fBcat\fR(1), \fBcp\fR(1), \fBtar\fR(1), \fBopen\fR(2),
-\fBnetconfig\fR(4), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR ar (1),
+.BR cat (1),
+.BR cp (1),
+.BR tar (1),
+.BR open (2),
+.BR netconfig (5),
+.BR attributes (7),
+.BR standards (7)
.SH NOTES
.LP
The \fB\&.pag\fR file will contain holes so that its apparent size may be
diff --git a/usr/src/man/man3c/newlocale.3c b/usr/src/man/man3c/newlocale.3c
index 7bbf553bf6..c89ba03cea 100644
--- a/usr/src/man/man3c/newlocale.3c
+++ b/usr/src/man/man3c/newlocale.3c
@@ -77,16 +77,16 @@ Indicates that the locale should be processed based in the values in the
environment. See
.BR setlocale (3C)
and
-.BR environ (5)
+.BR environ (7)
for more information.
.LP
The value of
.I category_mask
is a bitwise-inclusive or of the following macros which correspond to categories
as defined in
-.BR locale (5)
+.BR locale (7)
and
-.BR environ (5):
+.BR environ (7):
.TP
.B LC_CTYPE_MASK
Character classification and case conversion.
@@ -187,5 +187,5 @@ MT-Level Safe
.BR locale (1),
.BR setlocale (3C),
.BR uselocale (3C),
-.BR environ (5),
-.BR locale (5)
+.BR environ (7),
+.BR locale (7)
diff --git a/usr/src/man/man3c/nl_langinfo.3c b/usr/src/man/man3c/nl_langinfo.3c
index 83a2bc5bd6..5aae99b3bc 100644
--- a/usr/src/man/man3c/nl_langinfo.3c
+++ b/usr/src/man/man3c/nl_langinfo.3c
@@ -84,7 +84,7 @@ in the C locale. In all locales, they return a pointer to an
empty string if \fIitem\fR contains an invalid setting.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.TS
box;
c | c
@@ -100,9 +100,13 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBnewlocale\fR(3C), \fBsetlocale\fR(3C), \fBuselocale\fR(3C),
-\fBlanginfo.h\fR(3HEAD), \fBnl_types.h\fR(3HEAD),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR newlocale (3C),
+.BR setlocale (3C),
+.BR uselocale (3C),
+.BR langinfo.h (3HEAD),
+.BR nl_types.h (3HEAD),
+.BR attributes (7),
+.BR standards (7)
.SH WARNINGS
.LP
The array pointed to by the return value should not be modified by the program.
diff --git a/usr/src/man/man3c/offsetof.3c b/usr/src/man/man3c/offsetof.3c
index 2d1c35992c..9b4f23faa1 100644
--- a/usr/src/man/man3c/offsetof.3c
+++ b/usr/src/man/man3c/offsetof.3c
@@ -25,7 +25,7 @@ the offset in bytes to the structure member (designated by
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -41,4 +41,4 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBattributes\fR(5)
+.BR attributes (7)
diff --git a/usr/src/man/man3c/opendir.3c b/usr/src/man/man3c/opendir.3c
index a03928c9c7..d3d3c61971 100644
--- a/usr/src/man/man3c/opendir.3c
+++ b/usr/src/man/man3c/opendir.3c
@@ -206,4 +206,4 @@ Too many files are currently open on the system.
.Xr rewinddir 3C ,
.Xr seekdir 3C ,
.Xr telldir 3C ,
-.Xr attributes 5
+.Xr attributes 7
diff --git a/usr/src/man/man3c/perror.3c b/usr/src/man/man3c/perror.3c
index 8834c75c5f..12082a7903 100644
--- a/usr/src/man/man3c/perror.3c
+++ b/usr/src/man/man3c/perror.3c
@@ -37,7 +37,7 @@ is set when errors occur but not cleared when non-erroneous calls are made. See
.sp
.LP
In the case of multithreaded applications, the \fB-mt\fR option must be
-specified on the command line at compilation time (see \fBthreads\fR(5)). When
+specified on the command line at compilation time (see \fBthreads\fR(7)). When
the \fB-mt\fR option is specified, \fBerrno\fR becomes a macro that enables
each thread to have its own \fBerrno\fR. This \fBerrno\fR macro can be used on
either side of the assignment as though it were a variable.
@@ -49,7 +49,7 @@ Messages printed from this function are in the native language specified by the
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -67,5 +67,11 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBIntro\fR(2), \fBfmtmsg\fR(3C), \fBgettext\fR(3C), \fBsetlocale\fR(3C),
-\fBstrerror\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5), \fBthreads\fR(5)
+.BR Intro (2),
+.BR fmtmsg (3C),
+.BR gettext (3C),
+.BR setlocale (3C),
+.BR strerror (3C),
+.BR attributes (7),
+.BR standards (7),
+.BR threads (7)
diff --git a/usr/src/man/man3c/pfmt.3c b/usr/src/man/man3c/pfmt.3c
index 907e32c981..4823473b7d 100644
--- a/usr/src/man/man3c/pfmt.3c
+++ b/usr/src/man/man3c/pfmt.3c
@@ -278,7 +278,7 @@ UX:test: TO FIX: Usage ...
.SH USAGE
Since it uses \fBgettxt\fR(3C), \fBpfmt()\fR should not be used.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -292,6 +292,12 @@ MT-Level MT-safe
.TE
.SH SEE ALSO
-\fBaddsev\fR(3C), \fBgettxt\fR(3C), \fBlfmt\fR(3C), \fBprintf\fR(3C),
-\fBsetcat\fR(3C), \fBsetlabel\fR(3C), \fBsetlocale\fR(3C), \fBattributes\fR(5),
-\fBenviron\fR(5)
+.BR addsev (3C),
+.BR gettxt (3C),
+.BR lfmt (3C),
+.BR printf (3C),
+.BR setcat (3C),
+.BR setlabel (3C),
+.BR setlocale (3C),
+.BR attributes (7),
+.BR environ (7)
diff --git a/usr/src/man/man3c/plock.3c b/usr/src/man/man3c/plock.3c
index 4051b6a19f..f327953fdb 100644
--- a/usr/src/man/man3c/plock.3c
+++ b/usr/src/man/man3c/plock.3c
@@ -113,7 +113,7 @@ interfaces for process locking.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -129,5 +129,10 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBexec\fR(2), \fBexit\fR(2), \fBfork\fR(2), \fBmemcntl\fR(2), \fBmlock\fR(3C),
-\fBmlockall\fR(3C), \fBattributes\fR(5)
+.BR exec (2),
+.BR exit (2),
+.BR fork (2),
+.BR memcntl (2),
+.BR mlock (3C),
+.BR mlockall (3C),
+.BR attributes (7)
diff --git a/usr/src/man/man3c/popen.3c b/usr/src/man/man3c/popen.3c
index ca1226e00d..52e22a601c 100644
--- a/usr/src/man/man3c/popen.3c
+++ b/usr/src/man/man3c/popen.3c
@@ -215,7 +215,7 @@ int my_system(const char *cmd)
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -238,6 +238,15 @@ Standard.
.SH SEE ALSO
.sp
.LP
-\fBksh\fR(1), \fBpipe\fR(2), \fBfclose\fR(3C), \fBfopen\fR(3C),
-\fBposix_spawn\fR(3C), \fBstdio\fR(3C), \fBsystem\fR(3C), \fBwait\fR(3C),
-\fBwaitpid\fR(3C), \fBwait.h\fR(3HEAD), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR ksh (1),
+.BR pipe (2),
+.BR fclose (3C),
+.BR fopen (3C),
+.BR posix_spawn (3C),
+.BR stdio (3C),
+.BR system (3C),
+.BR wait (3C),
+.BR waitpid (3C),
+.BR wait.h (3HEAD),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/port_alert.3c b/usr/src/man/man3c/port_alert.3c
index 642eb79cd9..a8f7567b75 100644
--- a/usr/src/man/man3c/port_alert.3c
+++ b/usr/src/man/man3c/port_alert.3c
@@ -110,7 +110,7 @@ Mutually exclusive \fIflags\fR are set.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -129,5 +129,8 @@ MT-Level Safe
.SH SEE ALSO
.LP
-\fBport_associate\fR(3C), \fBport_create\fR(3C), \fBport_get\fR(3C),
-\fBport_send\fR(3C), \fBattributes\fR(5)
+.BR port_associate (3C),
+.BR port_create (3C),
+.BR port_get (3C),
+.BR port_send (3C),
+.BR attributes (7)
diff --git a/usr/src/man/man3c/port_associate.3c b/usr/src/man/man3c/port_associate.3c
index 7dd2250d0c..8b4fb4843f 100644
--- a/usr/src/man/man3c/port_associate.3c
+++ b/usr/src/man/man3c/port_associate.3c
@@ -208,7 +208,7 @@ The maximum number of objects associated with the port was exceeded. The
maximum allowable number of events or association of objects per port is the
minimum value of the \fBprocess.max-port-events\fR resource control at the time
\fBport_create\fR(3C) was used to create the port. See \fBsetrctl\fR(2) and
-\fBrctladm\fR(1M) for information on using resource controls.
+\fBrctladm\fR(8) for information on using resource controls.
.sp
The number of objects associated with a port is composed of all supported
resource types. Some of the source types do not explicitly use the
@@ -404,7 +404,7 @@ my_status = aio_return(aiocbp);
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -423,6 +423,12 @@ MT-Level Safe
.SH SEE ALSO
.LP
-\fBrctladm\fR(1M), \fBpoll\fR(2), \fBsetrctl\fR(2), \fBport_alert\fR(3C),
-\fBport_create\fR(3C), \fBport_get\fR(3C), \fBport_send\fR(3C),
-\fBsignal.h\fR(3HEAD), \fBattributes\fR(5)
+.BR poll (2),
+.BR setrctl (2),
+.BR port_alert (3C),
+.BR port_create (3C),
+.BR port_get (3C),
+.BR port_send (3C),
+.BR signal.h (3HEAD),
+.BR attributes (7),
+.BR rctladm (8)
diff --git a/usr/src/man/man3c/port_create.3c b/usr/src/man/man3c/port_create.3c
index 3421c6d0be..6c340c2ad2 100644
--- a/usr/src/man/man3c/port_create.3c
+++ b/usr/src/man/man3c/port_create.3c
@@ -28,7 +28,9 @@ l l l .
source object type association mechanism
_
\fBPORT_SOURCE_AIO\fR \fBstruct aiocb\fR T{
-\fBaio_read\fR(3C), \fBaio_write\fR(3C), \fBlio_listio\fR(3C)
+\fBaio_read\fR(3C),
+\fBaio_write\fR(3C),
+\fBlio_listio\fR(3C)
T}
\fBPORT_SOURCE_FD\fR file descriptor \fBport_associate\fR(3C)
\fBPORT_SOURCE_MQ\fR \fBmqd_t\fR \fBmq_notify\fR(3C)
@@ -118,7 +120,7 @@ The \fBport_create()\fR function will fail if:
The maximum allowable number of ports is currently open in the system. The
maximum allowable number of ports is the minimum value of the
\fBproject.max-port-ids\fR resource control. See \fBsetrctl\fR(2) and
-\fBrctladm\fR(1M) for information on using resource controls.
+\fBrctladm\fR(8) for information on using resource controls.
.RE
.sp
@@ -132,7 +134,7 @@ The process has too many open descriptors.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -151,7 +153,18 @@ MT-Level Safe
.SH SEE ALSO
.LP
-\fBrctladm\fR(1M), \fBclose\fR(2), \fBexit\fR(2), \fBfork\fR(2), \fBpoll\fR(2),
-\fBsetrctl\fR(2), \fBaio_read\fR(3C), \fBaio_write\fR(3C), \fBaio.h\fR(3HEAD),
-\fBlio_listio\fR(3C), \fBmq_notify\fR(3C), \fBport_associate\fR(3C),
-\fBport_get\fR(3C), \fBtimer_create\fR(3C), \fBattributes\fR(5)
+.BR close (2),
+.BR exit (2),
+.BR fork (2),
+.BR poll (2),
+.BR setrctl (2),
+.BR aio_read (3C),
+.BR aio_write (3C),
+.BR lio_listio (3C),
+.BR mq_notify (3C),
+.BR port_associate (3C),
+.BR port_get (3C),
+.BR timer_create (3C),
+.BR aio.h (3HEAD),
+.BR attributes (7),
+.BR rctladm (8)
diff --git a/usr/src/man/man3c/port_get.3c b/usr/src/man/man3c/port_get.3c
index 2683ebde5d..3483854640 100644
--- a/usr/src/man/man3c/port_get.3c
+++ b/usr/src/man/man3c/port_get.3c
@@ -260,7 +260,7 @@ close(myport);
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -279,5 +279,8 @@ MT-Level Safe
.SH SEE ALSO
.LP
-\fBport_alert\fR(3C), \fBport_associate\fR(3C), \fBport_create\fR(3C),
-\fBport_send\fR(3C), \fBattributes\fR(5)
+.BR port_alert (3C),
+.BR port_associate (3C),
+.BR port_create (3C),
+.BR port_send (3C),
+.BR attributes (7)
diff --git a/usr/src/man/man3c/port_send.3c b/usr/src/man/man3c/port_send.3c
index 0c9d1faaf0..b4c1078a78 100644
--- a/usr/src/man/man3c/port_send.3c
+++ b/usr/src/man/man3c/port_send.3c
@@ -195,12 +195,12 @@ close(myport);
.SH USAGE
.sp
.LP
-See \fBsetrctl\fR(2) and \fBrctladm\fR(1M) for information on using resource
+See \fBsetrctl\fR(2) and \fBrctladm\fR(8) for information on using resource
controls.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -220,6 +220,10 @@ MT-Level Async-Signal-Safe
.SH SEE ALSO
.sp
.LP
-\fBrctladm\fR(1M), \fBsetrctl\fR(2), \fBport_alert\fR(3C),
-\fBport_associate\fR(3C), \fBport_create\fR(3C), \fBport_get\fR(3C),
-\fBattributes\fR(5)
+.BR setrctl (2),
+.BR port_alert (3C),
+.BR port_associate (3C),
+.BR port_create (3C),
+.BR port_get (3C),
+.BR attributes (7),
+.BR rctladm (8)
diff --git a/usr/src/man/man3c/posix_fadvise.3c b/usr/src/man/man3c/posix_fadvise.3c
index 2d163fa1a8..b7a7c80b2f 100644
--- a/usr/src/man/man3c/posix_fadvise.3c
+++ b/usr/src/man/man3c/posix_fadvise.3c
@@ -175,11 +175,11 @@ The \fIfd\fR argument is associated with a pipe or FIFO.
.sp
.LP
The \fBposix_fadvise()\fR function has a transitional interface for 64-bit file
-offsets. See \fBlf64\fR(5).
+offsets. See \fBlf64\fR(7).
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -193,10 +193,12 @@ Interface Stability Committed
_
MT-Level MT-Safe
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.sp
.LP
-\fBposix_madvise\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR posix_madvise (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/posix_fallocate.3c b/usr/src/man/man3c/posix_fallocate.3c
index 3ab01fb39f..a94b2c8e76 100644
--- a/usr/src/man/man3c/posix_fallocate.3c
+++ b/usr/src/man/man3c/posix_fallocate.3c
@@ -162,11 +162,11 @@ The \fIfd\fR argument is associated with a pipe or FIFO.
.sp
.LP
The \fBposix_fallocate()\fR function has a transitional interface for 64-bit
-file offsets. See \fBlf64\fR(5).
+file offsets. See \fBlf64\fR(7).
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -180,11 +180,15 @@ Interface Stability Committed
_
MT-Level MT-Safe
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.sp
.LP
-\fBcreat\fR(2), \fBopen\fR(2), \fBunlink\fR(2), \fBftruncate\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR creat (2),
+.BR open (2),
+.BR unlink (2),
+.BR ftruncate (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/posix_madvise.3c b/usr/src/man/man3c/posix_madvise.3c
index b7d344c9a5..9ca8ea9515 100644
--- a/usr/src/man/man3c/posix_madvise.3c
+++ b/usr/src/man/man3c/posix_madvise.3c
@@ -166,7 +166,7 @@ The value of \fIlen\fR is zero.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -180,11 +180,11 @@ Interface Stability Committed
_
MT-Level MT-Safe
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.sp
.LP
-\fBmmap\fR(2), \fBmadvise\fR(3C), posix_madvise(3C), \fBattributes\fR(5),
-\fBstandards\fR(5)
+\fBmmap\fR(2), \fBmadvise\fR(3C), posix_madvise(3C), \fBattributes\fR(7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/posix_memalign.3c b/usr/src/man/man3c/posix_memalign.3c
index f69f30658d..352f446aad 100644
--- a/usr/src/man/man3c/posix_memalign.3c
+++ b/usr/src/man/man3c/posix_memalign.3c
@@ -104,7 +104,7 @@ There is insufficient memory available with the requested alignment.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -118,11 +118,14 @@ Interface Stability Committed
_
MT-Level MT-Safe
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.sp
.LP
-\fBfree\fR(3C), \fBmalloc\fR(3C), \fBmemalign\fR(3C), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR free (3C),
+.BR malloc (3C),
+.BR memalign (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/posix_openpt.3c b/usr/src/man/man3c/posix_openpt.3c
index b009dd6e17..d539782b62 100644
--- a/usr/src/man/man3c/posix_openpt.3c
+++ b/usr/src/man/man3c/posix_openpt.3c
@@ -158,7 +158,7 @@ This function provides a portable method for obtaining the file descriptor of a
manager terminal device for a pseudo-terminal, as opposed to using
.Xr open 2
on the
-.Xr ptm 7D
+.Xr ptm 4D
device which is system-specific.
.Pp
The
@@ -177,7 +177,7 @@ function can be used to obtain the name of the subsidiary device.
.Xr grantpt 3C ,
.Xr ptsname 3C ,
.Xr unlockpt 3C ,
-.Xr attributes 5 ,
-.Xr standards 5 ,
-.Xr ptm 7D ,
-.Xr pts 7D
+.Xr ptm 4D ,
+.Xr pts 4D ,
+.Xr attributes 7 ,
+.Xr standards 7
diff --git a/usr/src/man/man3c/posix_spawn.3c b/usr/src/man/man3c/posix_spawn.3c
index 20d56f8ead..acd92e64d3 100644
--- a/usr/src/man/man3c/posix_spawn.3c
+++ b/usr/src/man/man3c/posix_spawn.3c
@@ -396,7 +396,7 @@ descriptor that is not open at the time of the call to \fBposix_spawn()\fR or
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -410,36 +410,56 @@ Interface Stability Committed
_
MT-Level MT-Safe
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.sp
.LP
-\fBalarm\fR(2), \fBchmod\fR(2), \fBclose\fR(2), \fBdup\fR(2), \fBexec\fR(2),
-\fBexit\fR(2), \fBfcntl\fR(2), \fBfork\fR(2), \fBkill\fR(2), \fBopen\fR(2),
-\fBsetpgid\fR(2), \fBsetuid\fR(2), \fBstat\fR(2), \fBtimes\fR(2),
-\fBdup2\fR(3C), \fBpopen\fR(3C), \fBposix_spawn_file_actions_addclose\fR(3C),
-\fBposix_spawn_file_actions_adddup2\fR(3C),
-\fBposix_spawn_file_actions_addopen\fR(3C),
-\fBposix_spawn_file_actions_destroy\fR(3C),
-\fBposix_spawn_file_actions_init\fR(3C),
-\fBposix_spawn_pipe_np\fR(3C),
-\fBposix_spawnattr_destroy\fR(3C),
-\fBposix_spawnattr_getflags\fR(3C), \fBposix_spawnattr_getpgroup\fR(3C),
-\fBposix_spawnattr_getschedparam\fR(3C),
-\fBposix_spawnattr_getschedpolicy\fR(3C),
-\fBposix_spawnattr_getsigdefault\fR(3C),
-\fBposix_spawnattr_getsigignore_np\fR(3C),
-\fBposix_spawnattr_getsigmask\fR(3C), \fBposix_spawnattr_init\fR(3C),
-\fBposix_spawnattr_setflags\fR(3C), \fBposix_spawnattr_setpgroup\fR(3C),
-\fBposix_spawnattr_setschedparam\fR(3C),
-\fBposix_spawnattr_setschedpolicy\fR(3C),
-\fBposix_spawnattr_setsigdefault\fR(3C),
-\fBposix_spawnattr_setsigignore_np\fR(3C),
-\fBposix_spawnattr_setsigmask\fR(3C), \fBsched_setparam\fR(3C),
-\fBsched_setscheduler\fR(3C), \fBsystem\fR(3C), \fBwait\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR alarm (2),
+.BR chmod (2),
+.BR close (2),
+.BR dup (2),
+.BR exec (2),
+.BR exit (2),
+.BR fcntl (2),
+.BR fork (2),
+.BR kill (2),
+.BR open (2),
+.BR setpgid (2),
+.BR setuid (2),
+.BR stat (2),
+.BR times (2),
+.BR dup2 (3C),
+.BR popen (3C),
+.BR posix_spawn_file_actions_addclose (3C),
+.BR posix_spawn_file_actions_adddup2 (3C),
+.BR posix_spawn_file_actions_addopen (3C),
+.BR posix_spawn_file_actions_destroy (3C),
+.BR posix_spawn_file_actions_init (3C),
+.BR posix_spawn_pipe_np (3C),
+.BR posix_spawnattr_destroy (3C),
+.BR posix_spawnattr_getflags (3C),
+.BR posix_spawnattr_getpgroup (3C),
+.BR posix_spawnattr_getschedparam (3C),
+.BR posix_spawnattr_getschedpolicy (3C),
+.BR posix_spawnattr_getsigdefault (3C),
+.BR posix_spawnattr_getsigignore_np (3C),
+.BR posix_spawnattr_getsigmask (3C),
+.BR posix_spawnattr_init (3C),
+.BR posix_spawnattr_setflags (3C),
+.BR posix_spawnattr_setpgroup (3C),
+.BR posix_spawnattr_setschedparam (3C),
+.BR posix_spawnattr_setschedpolicy (3C),
+.BR posix_spawnattr_setsigdefault (3C),
+.BR posix_spawnattr_setsigignore_np (3C),
+.BR posix_spawnattr_setsigmask (3C),
+.BR sched_setparam (3C),
+.BR sched_setscheduler (3C),
+.BR system (3C),
+.BR wait (3C),
+.BR attributes (7),
+.BR standards (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3c/posix_spawn_file_actions_addclose.3c b/usr/src/man/man3c/posix_spawn_file_actions_addclose.3c
index 42eb343b57..02c1a0df19 100644
--- a/usr/src/man/man3c/posix_spawn_file_actions_addclose.3c
+++ b/usr/src/man/man3c/posix_spawn_file_actions_addclose.3c
@@ -161,7 +161,7 @@ the close operation will not cause the \fBposix_spawn()\fR or
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -175,13 +175,17 @@ Interface Stability Committed
_
MT-Level MT-Safe
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.sp
.LP
-\fBclose\fR(2), \fBdup\fR(2), \fBopen\fR(2), \fBposix_spawn\fR(3C),
-\fBposix_spawn_file_actions_adddup2\fR(3C),
-\fBposix_spawn_file_actions_destroy\fR(3C), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR close (2),
+.BR dup (2),
+.BR open (2),
+.BR posix_spawn (3C),
+.BR posix_spawn_file_actions_adddup2 (3C),
+.BR posix_spawn_file_actions_destroy (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/posix_spawn_file_actions_addclosefrom_np.3c b/usr/src/man/man3c/posix_spawn_file_actions_addclosefrom_np.3c
index 2c2b33e64c..f2754c3eaf 100644
--- a/usr/src/man/man3c/posix_spawn_file_actions_addclosefrom_np.3c
+++ b/usr/src/man/man3c/posix_spawn_file_actions_addclosefrom_np.3c
@@ -110,7 +110,7 @@ Insufficient memory exists to add to the spawn file actions object.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -128,5 +128,8 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBclose\fR(2), \fBclosefrom\fR(3C), \fBposix_spawn\fR(3C),
-\fBposix_spawn_file_actions_addclose\fR(3C), \fBattributes\fR(5)
+.BR close (2),
+.BR closefrom (3C),
+.BR posix_spawn (3C),
+.BR posix_spawn_file_actions_addclose (3C),
+.BR attributes (7)
diff --git a/usr/src/man/man3c/posix_spawn_file_actions_adddup2.3c b/usr/src/man/man3c/posix_spawn_file_actions_adddup2.3c
index 337b421212..cac40804c9 100644
--- a/usr/src/man/man3c/posix_spawn_file_actions_adddup2.3c
+++ b/usr/src/man/man3c/posix_spawn_file_actions_adddup2.3c
@@ -120,7 +120,7 @@ used during a \fBposix_spawn\fR(3C) or \fBposix_spawnp\fR(3C) operation.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -138,7 +138,9 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBdup2\fR(3C), \fBposix_spawn\fR(3C),
-\fBposix_spawn_file_actions_addclose\fR(3C),
-\fBposix_spawn_file_actions_destroy\fR(3C), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR dup2 (3C),
+.BR posix_spawn (3C),
+.BR posix_spawn_file_actions_addclose (3C),
+.BR posix_spawn_file_actions_destroy (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/posix_spawn_file_actions_destroy.3c b/usr/src/man/man3c/posix_spawn_file_actions_destroy.3c
index 5231193566..b8a4500d73 100644
--- a/usr/src/man/man3c/posix_spawn_file_actions_destroy.3c
+++ b/usr/src/man/man3c/posix_spawn_file_actions_destroy.3c
@@ -118,7 +118,7 @@ The value specified by \fIfile_actions\fR is invalid.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -136,5 +136,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBposix_spawn\fR(3C), \fBposix_spawn_file_actions_addclose\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR posix_spawn (3C),
+.BR posix_spawn_file_actions_addclose (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/posix_spawn_pipe_np.3c b/usr/src/man/man3c/posix_spawn_pipe_np.3c
index 244ed810a0..adb0a3190b 100644
--- a/usr/src/man/man3c/posix_spawn_pipe_np.3c
+++ b/usr/src/man/man3c/posix_spawn_pipe_np.3c
@@ -125,7 +125,7 @@ See \fBposix_spawn\fR(3C).
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -143,25 +143,33 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBexec\fR(2), \fBfork\fR(2), \fBopen\fR(2),
-\fBpopen\fR(3C), \fBposix_spawn\fR(3C),
-\fBposix_spawn_file_actions_addclose\fR(3C),
-\fBposix_spawn_file_actions_adddup2\fR(3C),
-\fBposix_spawn_file_actions_addopen\fR(3C),
-\fBposix_spawn_file_actions_destroy\fR(3C),
-\fBposix_spawn_file_actions_init\fR(3C),
-\fBposix_spawnattr_destroy\fR(3C),
-\fBposix_spawnattr_getflags\fR(3C), \fBposix_spawnattr_getpgroup\fR(3C),
-\fBposix_spawnattr_getschedparam\fR(3C),
-\fBposix_spawnattr_getschedpolicy\fR(3C),
-\fBposix_spawnattr_getsigdefault\fR(3C),
-\fBposix_spawnattr_getsigignore_np\fR(3C),
-\fBposix_spawnattr_getsigmask\fR(3C), \fBposix_spawnattr_init\fR(3C),
-\fBposix_spawnattr_setflags\fR(3C), \fBposix_spawnattr_setpgroup\fR(3C),
-\fBposix_spawnattr_setschedparam\fR(3C),
-\fBposix_spawnattr_setschedpolicy\fR(3C),
-\fBposix_spawnattr_setsigdefault\fR(3C),
-\fBposix_spawnattr_setsigignore_np\fR(3C),
-\fBposix_spawnattr_setsigmask\fR(3C),
-\fBsystem\fR(3C), \fBwait\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR exec (2),
+.BR fork (2),
+.BR open (2),
+.BR popen (3C),
+.BR posix_spawn (3C),
+.BR posix_spawn_file_actions_addclose (3C),
+.BR posix_spawn_file_actions_adddup2 (3C),
+.BR posix_spawn_file_actions_addopen (3C),
+.BR posix_spawn_file_actions_destroy (3C),
+.BR posix_spawn_file_actions_init (3C),
+.BR posix_spawnattr_destroy (3C),
+.BR posix_spawnattr_getflags (3C),
+.BR posix_spawnattr_getpgroup (3C),
+.BR posix_spawnattr_getschedparam (3C),
+.BR posix_spawnattr_getschedpolicy (3C),
+.BR posix_spawnattr_getsigdefault (3C),
+.BR posix_spawnattr_getsigignore_np (3C),
+.BR posix_spawnattr_getsigmask (3C),
+.BR posix_spawnattr_init (3C),
+.BR posix_spawnattr_setflags (3C),
+.BR posix_spawnattr_setpgroup (3C),
+.BR posix_spawnattr_setschedparam (3C),
+.BR posix_spawnattr_setschedpolicy (3C),
+.BR posix_spawnattr_setsigdefault (3C),
+.BR posix_spawnattr_setsigignore_np (3C),
+.BR posix_spawnattr_setsigmask (3C),
+.BR system (3C),
+.BR wait (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/posix_spawnattr_destroy.3c b/usr/src/man/man3c/posix_spawnattr_destroy.3c
index f430e366f6..09d8dee575 100644
--- a/usr/src/man/man3c/posix_spawnattr_destroy.3c
+++ b/usr/src/man/man3c/posix_spawnattr_destroy.3c
@@ -125,7 +125,7 @@ The value specified by \fIattr\fR is invalid.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -143,8 +143,12 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBposix_spawn\fR(3C), \fBposix_spawnattr_getflags\fR(3C),
-\fBposix_spawnattr_getpgroup\fR(3C), \fBposix_spawnattr_getschedparam\fR(3C),
-\fBposix_spawnattr_getschedpolicy\fR(3C),
-\fBposix_spawnattr_getsigdefault\fR(3C), \fBposix_spawnattr_getsigmask\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR posix_spawn (3C),
+.BR posix_spawnattr_getflags (3C),
+.BR posix_spawnattr_getpgroup (3C),
+.BR posix_spawnattr_getschedparam (3C),
+.BR posix_spawnattr_getschedpolicy (3C),
+.BR posix_spawnattr_getsigdefault (3C),
+.BR posix_spawnattr_getsigmask (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/posix_spawnattr_getflags.3c b/usr/src/man/man3c/posix_spawnattr_getflags.3c
index be50bf19ed..69c5f3b334 100644
--- a/usr/src/man/man3c/posix_spawnattr_getflags.3c
+++ b/usr/src/man/man3c/posix_spawnattr_getflags.3c
@@ -156,7 +156,7 @@ The value of the attribute being set is not valid.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -170,14 +170,18 @@ Interface Stability Committed
_
MT-Level MT-Safe
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.sp
.LP
-\fBposix_spawn\fR(3C), \fBposix_spawnattr_destroy\fR(3C),
-\fBposix_spawnattr_getpgroup\fR(3C), \fBposix_spawnattr_getschedparam\fR(3C),
-\fBposix_spawnattr_getschedpolicy\fR(3C),
-\fBposix_spawnattr_getsigdefault\fR(3C), \fBposix_spawnattr_getsigmask\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR posix_spawn (3C),
+.BR posix_spawnattr_destroy (3C),
+.BR posix_spawnattr_getpgroup (3C),
+.BR posix_spawnattr_getschedparam (3C),
+.BR posix_spawnattr_getschedpolicy (3C),
+.BR posix_spawnattr_getsigdefault (3C),
+.BR posix_spawnattr_getsigmask (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/posix_spawnattr_getpgroup.3c b/usr/src/man/man3c/posix_spawnattr_getpgroup.3c
index e76ac837be..4b6a08b2ad 100644
--- a/usr/src/man/man3c/posix_spawnattr_getpgroup.3c
+++ b/usr/src/man/man3c/posix_spawnattr_getpgroup.3c
@@ -116,7 +116,7 @@ The value of the attribute being set is not valid.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -136,6 +136,8 @@ MT-Level MT-Safe
.LP
\fBposix_spawn\fR(3C), posix_spawnattr_getpgroup(3C),
posix_spawnattr_getpgroup(3C), \fBposix_spawnattr_getschedparam\fR(3C),
-\fBposix_spawnattr_getschedpolicy\fR(3C),
-\fBposix_spawnattr_getsigdefault\fR(3C), \fBposix_spawnattr_getsigmask\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR posix_spawnattr_getschedpolicy (3C),
+.BR posix_spawnattr_getsigdefault (3C),
+.BR posix_spawnattr_getsigmask (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/posix_spawnattr_getschedparam.3c b/usr/src/man/man3c/posix_spawnattr_getschedparam.3c
index 3c6faef317..d04b8fea4c 100644
--- a/usr/src/man/man3c/posix_spawnattr_getschedparam.3c
+++ b/usr/src/man/man3c/posix_spawnattr_getschedparam.3c
@@ -120,7 +120,7 @@ The value of the attribute being set is not valid.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -138,8 +138,12 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBposix_spawn\fR(3C), \fBposix_spawnattr_destroy\fR(3C),
-\fBposix_spawnattr_getflags\fR(3C), \fBposix_spawnattr_getpgroup\fR(3C),
-\fBposix_spawnattr_getschedpolicy\fR(3C),
-\fBposix_spawnattr_getsigdefault\fR(3C), \fBposix_spawnattr_getsigmask\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR posix_spawn (3C),
+.BR posix_spawnattr_destroy (3C),
+.BR posix_spawnattr_getflags (3C),
+.BR posix_spawnattr_getpgroup (3C),
+.BR posix_spawnattr_getschedpolicy (3C),
+.BR posix_spawnattr_getsigdefault (3C),
+.BR posix_spawnattr_getsigmask (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/posix_spawnattr_getschedpolicy.3c b/usr/src/man/man3c/posix_spawnattr_getschedpolicy.3c
index 93985040ab..770be142dd 100644
--- a/usr/src/man/man3c/posix_spawnattr_getschedpolicy.3c
+++ b/usr/src/man/man3c/posix_spawnattr_getschedpolicy.3c
@@ -120,7 +120,7 @@ The value of the attribute being set is not valid.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -138,8 +138,12 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBposix_spawn\fR(3C), \fBposix_spawnattr_destroy\fR(3C),
-\fBposix_spawnattr_getflags\fR(3C), \fBposix_spawnattr_getpgroup\fR(3C),
-\fBposix_spawnattr_getschedparam\fR(3C),
-\fBposix_spawnattr_getsigdefault\fR(3C), \fBposix_spawnattr_getsigmask\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR posix_spawn (3C),
+.BR posix_spawnattr_destroy (3C),
+.BR posix_spawnattr_getflags (3C),
+.BR posix_spawnattr_getpgroup (3C),
+.BR posix_spawnattr_getschedparam (3C),
+.BR posix_spawnattr_getsigdefault (3C),
+.BR posix_spawnattr_getsigmask (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/posix_spawnattr_getsigdefault.3c b/usr/src/man/man3c/posix_spawnattr_getsigdefault.3c
index a0db513d0e..794ed2d901 100644
--- a/usr/src/man/man3c/posix_spawnattr_getsigdefault.3c
+++ b/usr/src/man/man3c/posix_spawnattr_getsigdefault.3c
@@ -119,7 +119,7 @@ The value of the attribute being set is not valid.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -137,8 +137,12 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBposix_spawn\fR(3C), \fBposix_spawnattr_destroy\fR(3C),
-\fBposix_spawnattr_getflags\fR(3C), \fBposix_spawnattr_getpgroup\fR(3C),
-\fBposix_spawnattr_getschedparam\fR(3C),
-\fBposix_spawnattr_getschedpolicy\fR(3C), \fBposix_spawnattr_getsigmask\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR posix_spawn (3C),
+.BR posix_spawnattr_destroy (3C),
+.BR posix_spawnattr_getflags (3C),
+.BR posix_spawnattr_getpgroup (3C),
+.BR posix_spawnattr_getschedparam (3C),
+.BR posix_spawnattr_getschedpolicy (3C),
+.BR posix_spawnattr_getsigmask (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/posix_spawnattr_getsigignore_np.3c b/usr/src/man/man3c/posix_spawnattr_getsigignore_np.3c
index cee68b70fc..76208dd355 100644
--- a/usr/src/man/man3c/posix_spawnattr_getsigignore_np.3c
+++ b/usr/src/man/man3c/posix_spawnattr_getsigignore_np.3c
@@ -81,7 +81,7 @@ The value of the attribute being set is not valid.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -99,12 +99,15 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBposix_spawn\fR(3C), \fBposix_spawnattr_destroy\fR(3C),
-\fBposix_spawnattr_getflags\fR(3C), \fBposix_spawnattr_getpgroup\fR(3C),
-\fBposix_spawnattr_getschedparam\fR(3C),
-\fBposix_spawnattr_getschedpolicy\fR(3C),
-\fBposix_spawnattr_setsigdefault\fR(3C), \fBposix_spawnattr_setsigmask\fR(3C),
-\fBattributes\fR(5)
+.BR posix_spawn (3C),
+.BR posix_spawnattr_destroy (3C),
+.BR posix_spawnattr_getflags (3C),
+.BR posix_spawnattr_getpgroup (3C),
+.BR posix_spawnattr_getschedparam (3C),
+.BR posix_spawnattr_getschedpolicy (3C),
+.BR posix_spawnattr_setsigdefault (3C),
+.BR posix_spawnattr_setsigmask (3C),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3c/posix_spawnattr_getsigmask.3c b/usr/src/man/man3c/posix_spawnattr_getsigmask.3c
index e8cf2d246c..1998a63cab 100644
--- a/usr/src/man/man3c/posix_spawnattr_getsigmask.3c
+++ b/usr/src/man/man3c/posix_spawnattr_getsigmask.3c
@@ -118,7 +118,7 @@ The value of the attribute being set is not valid.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -138,6 +138,7 @@ MT-Level MT-Safe
.LP
\fBposix_spawn\fR(3C), \fBposix_spawnattr_destroy\fR(3C),
\fBposix_spawnattr_getflags\fR(3C), \fBposix_spawnattr_getpgroup\fR(3C),
-\fBposix_spawnattr_getschedparam\fR(3C),
+.BR posix_spawnattr_getschedparam (3C),
\fBposix_spawnattr_getschedpolicy\fR(3C), posix_spawnattr_getsigmask(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/printf.3c b/usr/src/man/man3c/printf.3c
index add9c37bb9..21318b758e 100644
--- a/usr/src/man/man3c/printf.3c
+++ b/usr/src/man/man3c/printf.3c
@@ -175,7 +175,7 @@ described below, is given to the field width. The field width takes the form of
an asterisk (*), described below, or a decimal integer.
.sp
If the conversion specifier is \fBs\fR, a standard-conforming application (see
-\fBstandards\fR(5)) interprets the field width as the minimum number of bytes
+\fBstandards\fR(7)) interprets the field width as the minimum number of bytes
to be printed; an application that is not standard-conforming interprets the
field width as the minimum number of columns of screen display. For an
application that is not standard-conforming, \fB%10s\fR means if the converted
@@ -200,7 +200,7 @@ decimal digit string, where a null digit string is treated as 0. If a precision
appears with any other conversion specifier, the behavior is undefined.
.sp
If the conversion specifier is \fBs\fR or \fBS\fR, a standard-conforming
-application (see \fBstandards\fR(5)) interprets the precision as the maximum
+application (see \fBstandards\fR(7)) interprets the precision as the maximum
number of bytes to be written; an application that is not standard-conforming
interprets the precision as the maximum number of columns of screen display.
For an application that is not standard-conforming, \fB%.5s\fR would print only
@@ -690,7 +690,7 @@ the resulting wide character is printed.
.RS 8n
The argument must be a pointer to an array of \fBchar\fR. Bytes from the array
are written up to (but not including) any terminating null byte. If a precision
-is specified, a standard-conforming application (see \fBstandards\fR(5)) will
+is specified, a standard-conforming application (see \fBstandards\fR(7)) will
write only the number of bytes specified by precision; an application that is
not standard-conforming will write only the portion of the string that will
display in the number of columns of screen display specified by precision. If
@@ -966,7 +966,7 @@ the numeric constant zero (0). Note that the octal number does not include the
zero prefix as it would for a normal octal constant. To specify a hexadecimal
number, omit the zero so that the prefix is an 'x' (uppercase 'X' is not
allowed in this context). Support for hexadecimal sequences is an ANSI
-extension. See \fBstandards\fR(5).
+extension. See \fBstandards\fR(7).
.SH EXAMPLES
\fBExample 1 \fRTo print the language-independent date and time format, the
following statement could be used:
@@ -1053,7 +1053,7 @@ characters wide:
.in -2
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -1079,16 +1079,32 @@ long as \fBsetlocale\fR(3C) is not being called to change the locale. The
\fBsprintf()\fR and \fBsnprintf()\fR functions are Async-Signal-Safe.
.sp
.LP
-See \fBstandards\fR(5) for the standards conformance of \fBprintf()\fR,
+See \fBstandards\fR(7) for the standards conformance of \fBprintf()\fR,
\fBfprintf()\fR, \fBsprintf()\fR, and \fBsnprintf()\fR. The \fBasprintf()\fR
function is modeled on the one that appears in the FreeBSD, NetBSD, and GNU C
libraries.
.SH SEE ALSO
-\fBexit\fR(2), \fBlseek\fR(2), \fBwrite\fR(2), \fBabort\fR(3C), \fBecvt\fR(3C),
-\fBexit\fR(3C), \fBfclose\fR(3C), \fBfflush\fR(3C), \fBfputwc\fR(3C),
-\fBfree\fR(3C), \fBmalloc\fR(3C), \fBputc\fR(3C), \fBscanf\fR(3C),
-\fBsetlocale\fR(3C), \fBstdio\fR(3C), \fBvprintf\fR(3C), \fBwcstombs\fR(3C),
-\fBwctomb\fR(3C), \fBattributes\fR(5), \fBenviron\fR(5), \fBstandards\fR(5)
+.BR exit (2),
+.BR lseek (2),
+.BR write (2),
+.BR abort (3C),
+.BR ecvt (3C),
+.BR exit (3C),
+.BR fclose (3C),
+.BR fflush (3C),
+.BR fputwc (3C),
+.BR free (3C),
+.BR malloc (3C),
+.BR putc (3C),
+.BR scanf (3C),
+.BR setlocale (3C),
+.BR stdio (3C),
+.BR vprintf (3C),
+.BR wcstombs (3C),
+.BR wctomb (3C),
+.BR attributes (7),
+.BR environ (7),
+.BR standards (7)
.SH NOTES
If the \fBj\fR length modifier is used, 32-bit applications that were compiled
using \fBc89\fR on releases prior to Solaris 10 will experience undefined
diff --git a/usr/src/man/man3c/priv_addset.3c b/usr/src/man/man3c/priv_addset.3c
index 665216fbf5..c5e78269ea 100644
--- a/usr/src/man/man3c/priv_addset.3c
+++ b/usr/src/man/man3c/priv_addset.3c
@@ -212,7 +212,7 @@ The privilege argument is not a valid privilege name.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -229,8 +229,11 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBsetppriv\fR(2), \fBmalloc\fR(3C), \fBpriv_str_to_set\fR(3C),
-\fBattributes\fR(5), \fBprivileges\fR(5)
+.BR setppriv (2),
+.BR malloc (3C),
+.BR priv_str_to_set (3C),
+.BR attributes (7),
+.BR privileges (7)
.SH NOTES
.LP
The functions that compare sets operate on all bits of the set, regardless of
diff --git a/usr/src/man/man3c/priv_set.3c b/usr/src/man/man3c/priv_set.3c
index 97b1729ed8..8bad51e32e 100644
--- a/usr/src/man/man3c/priv_set.3c
+++ b/usr/src/man/man3c/priv_set.3c
@@ -110,7 +110,7 @@ Insufficient memory was allocated.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -128,5 +128,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBsetppriv\fR(2), \fBpriv_str_to_set\fR(3C), \fBattributes\fR(5),
-\fBprivileges\fR(5)
+.BR setppriv (2),
+.BR priv_str_to_set (3C),
+.BR attributes (7),
+.BR privileges (7)
diff --git a/usr/src/man/man3c/priv_str_to_set.3c b/usr/src/man/man3c/priv_str_to_set.3c
index c9b0723ba1..ac3e56f6ea 100644
--- a/usr/src/man/man3c/priv_str_to_set.3c
+++ b/usr/src/man/man3c/priv_str_to_set.3c
@@ -200,7 +200,7 @@ for (i = 0; (name = priv_getbynum(i++)) != NULL; )
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -217,5 +217,8 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBfree\fR(3C), \fBpriv_set\fR(3C), \fBattributes\fR(5), \fBprivileges\fR(5),
-\fBpriv_getbyname\fR(9F)
+.BR free (3C),
+.BR priv_set (3C),
+.BR attributes (7),
+.BR privileges (7),
+.BR priv_getbyname (9F)
diff --git a/usr/src/man/man3c/pset_getloadavg.3c b/usr/src/man/man3c/pset_getloadavg.3c
index 372a42086e..d688ebd587 100644
--- a/usr/src/man/man3c/pset_getloadavg.3c
+++ b/usr/src/man/man3c/pset_getloadavg.3c
@@ -64,7 +64,7 @@ specified processor set is not that of the zone's pool.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -82,6 +82,11 @@ MT-Level Async-Signal-Safe
.SH SEE ALSO
.sp
.LP
-\fBuptime\fR(1), \fBw\fR(1), \fBpsrset\fR(1M), \fBprstat\fR(1M),
-\fBpset_bind\fR(2), \fBpset_create\fR(2), \fBKstat\fR(3PERL),
-\fBattributes\fR(5)
+.BR uptime (1),
+.BR w (1),
+.BR pset_bind (2),
+.BR pset_create (2),
+.BR Kstat (3PERL),
+.BR attributes (7),
+.BR prstat (8),
+.BR psrset (8)
diff --git a/usr/src/man/man3c/psignal.3c b/usr/src/man/man3c/psignal.3c
index a977fb6df4..cf647521dc 100644
--- a/usr/src/man/man3c/psignal.3c
+++ b/usr/src/man/man3c/psignal.3c
@@ -38,7 +38,7 @@ Messages printed from these functions are in the native language specified by
the \fBLC_MESSAGES\fR locale category. See \fBsetlocale\fR(3C).
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -53,5 +53,10 @@ MT-Level Safe
.SH SEE ALSO
.LP
-\fBsigaction\fR(2), \fBgettext\fR(3C), \fBperror\fR(3C), \fBsetlocale\fR(3C),
-\fBsiginfo.h\fR(3HEAD), \fBsignal.h\fR(3HEAD), \fBattributes\fR(5)
+.BR sigaction (2),
+.BR gettext (3C),
+.BR perror (3C),
+.BR setlocale (3C),
+.BR siginfo.h (3HEAD),
+.BR signal.h (3HEAD),
+.BR attributes (7)
diff --git a/usr/src/man/man3c/pthread_atfork.3c b/usr/src/man/man3c/pthread_atfork.3c
index 6716cb510c..69671c1aa2 100644
--- a/usr/src/man/man3c/pthread_atfork.3c
+++ b/usr/src/man/man3c/pthread_atfork.3c
@@ -181,7 +181,7 @@ Add a call to \fBpthread_atfork(f1, f2, f3)\fR in the library's
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -199,5 +199,8 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBexec\fR(2), \fBfork\fR(2), \fBatexit\fR(3C), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR exec (2),
+.BR fork (2),
+.BR atexit (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/pthread_attr_get_np.3c b/usr/src/man/man3c/pthread_attr_get_np.3c
index 2b166d0ef4..e56e372797 100644
--- a/usr/src/man/man3c/pthread_attr_get_np.3c
+++ b/usr/src/man/man3c/pthread_attr_get_np.3c
@@ -195,5 +195,5 @@ No thread could be found corresponding to the specified thread ID,
.Xr pthread_detach 3C ,
.Xr pthread_getschedparam 3C ,
.Xr pthread_setschedparam 3C ,
-.Xr attributes 5 ,
-.Xr threads 5
+.Xr attributes 7 ,
+.Xr threads 7
diff --git a/usr/src/man/man3c/pthread_attr_getdetachstate.3c b/usr/src/man/man3c/pthread_attr_getdetachstate.3c
index 807ee4fd52..7d4c35d365 100644
--- a/usr/src/man/man3c/pthread_attr_getdetachstate.3c
+++ b/usr/src/man/man3c/pthread_attr_getdetachstate.3c
@@ -111,7 +111,7 @@ functions may fail if:
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -129,6 +129,9 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBpthread_attr_init\fR(3C), \fBpthread_attr_setstackaddr\fR(3C),
-\fBpthread_attr_setstacksize\fR(3C), \fBpthread_create\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR pthread_attr_init (3C),
+.BR pthread_attr_setstackaddr (3C),
+.BR pthread_attr_setstacksize (3C),
+.BR pthread_create (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/pthread_attr_getguardsize.3c b/usr/src/man/man3c/pthread_attr_getguardsize.3c
index 1fadee3463..568d9fb676 100644
--- a/usr/src/man/man3c/pthread_attr_getguardsize.3c
+++ b/usr/src/man/man3c/pthread_attr_getguardsize.3c
@@ -165,7 +165,7 @@ The parameter \fIguardsize\fR contains an invalid value.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -183,5 +183,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBsysconf\fR(3C), \fBpthread_attr_init\fR(3C), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR pthread_attr_init (3C),
+.BR sysconf (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/pthread_attr_getinheritsched.3c b/usr/src/man/man3c/pthread_attr_getinheritsched.3c
index ee95423af7..621b2f6295 100644
--- a/usr/src/man/man3c/pthread_attr_getinheritsched.3c
+++ b/usr/src/man/man3c/pthread_attr_getinheritsched.3c
@@ -128,7 +128,7 @@ not affect the current running thread.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -146,7 +146,11 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBpthread_attr_getschedparam\fR(3C), \fBpthread_attr_init\fR(3C),
-\fBpthread_attr_setscope\fR(3C), \fBpthread_attr_setschedpolicy\fR(3C),
-\fBpthread_create\fR(3C), \fBpthread_setschedparam\fR(3C), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR pthread_attr_getschedparam (3C),
+.BR pthread_attr_init (3C),
+.BR pthread_attr_setschedpolicy (3C),
+.BR pthread_attr_setscope (3C),
+.BR pthread_create (3C),
+.BR pthread_setschedparam (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/pthread_attr_getschedparam.3c b/usr/src/man/man3c/pthread_attr_getschedparam.3c
index 1d2f3f2dd6..69ab31ce85 100644
--- a/usr/src/man/man3c/pthread_attr_getschedparam.3c
+++ b/usr/src/man/man3c/pthread_attr_getschedparam.3c
@@ -112,7 +112,7 @@ not affect the current running thread.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -126,13 +126,17 @@ Interface Stability Committed
_
MT-Level MT-Safe
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.sp
.LP
-\fBpthread_attr_init\fR(3C), \fBpthread_attr_setscope\fR(3C),
-\fBpthread_attr_setinheritsched\fR(3C), \fBpthread_attr_setschedpolicy\fR(3C),
-\fBpthread_create\fR(3C), \fBpthread_setschedparam\fR(3C), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR pthread_attr_init (3C),
+.BR pthread_attr_setinheritsched (3C),
+.BR pthread_attr_setschedpolicy (3C),
+.BR pthread_attr_setscope (3C),
+.BR pthread_create (3C),
+.BR pthread_setschedparam (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/pthread_attr_getschedpolicy.3c b/usr/src/man/man3c/pthread_attr_getschedpolicy.3c
index 09ff5d5d91..d5c95af39e 100644
--- a/usr/src/man/man3c/pthread_attr_getschedpolicy.3c
+++ b/usr/src/man/man3c/pthread_attr_getschedpolicy.3c
@@ -110,7 +110,7 @@ not affect the current running thread.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -124,14 +124,19 @@ Interface Stability Committed
_
MT-Level MT-Safe
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.sp
.LP
-\fBpthread_attr_init\fR(3C), \fBpthread_attr_setscope\fR(3C),
-\fBpthread_attr_setinheritsched\fR(3C), \fBpthread_attr_setschedparam\fR(3C),
-\fBpthread_create\fR(3C), \fBpthread_getschedparam\fR(3C),
-\fBsched.h\fR(3HEAD), \fBsched_getscheduler\fR(3C), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR pthread_attr_init (3C),
+.BR pthread_attr_setinheritsched (3C),
+.BR pthread_attr_setschedparam (3C),
+.BR pthread_attr_setscope (3C),
+.BR pthread_create (3C),
+.BR pthread_getschedparam (3C),
+.BR sched_getscheduler (3C),
+.BR sched.h (3HEAD),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/pthread_attr_getscope.3c b/usr/src/man/man3c/pthread_attr_getscope.3c
index 68052341ce..eb46cfc265 100644
--- a/usr/src/man/man3c/pthread_attr_getscope.3c
+++ b/usr/src/man/man3c/pthread_attr_getscope.3c
@@ -107,7 +107,7 @@ not affect the current running thread.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -125,7 +125,11 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBpthread_attr_init\fR(3C), \fBpthread_attr_setinheritsched\fR(3C),
-\fBpthread_attr_setschedpolicy\fR(3C), \fBpthread_attr_setschedparam\fR(3C),
-\fBpthread_create\fR(3C), \fBpthread_setschedparam\fR(3C), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR pthread_attr_init (3C),
+.BR pthread_attr_setinheritsched (3C),
+.BR pthread_attr_setschedparam (3C),
+.BR pthread_attr_setschedpolicy (3C),
+.BR pthread_create (3C),
+.BR pthread_setschedparam (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/pthread_attr_getstack.3c b/usr/src/man/man3c/pthread_attr_getstack.3c
index aa8ab00597..14d4c9aa04 100644
--- a/usr/src/man/man3c/pthread_attr_getstack.3c
+++ b/usr/src/man/man3c/pthread_attr_getstack.3c
@@ -132,7 +132,7 @@ the stack for a thread must be placed in some particular region of memory.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -150,6 +150,8 @@ MT-Level Async-Signal-Safe
.SH SEE ALSO
.sp
.LP
-\fBpthread_attr_init\fR(3C), \fBpthread_attr_setdetachstate\fR(3C),
-\fBpthread_attr_setstacksize\fR(3C), \fBpthread_create\fR(3C),
-\fBattributes\fR(5)
+.BR pthread_attr_init (3C),
+.BR pthread_attr_setdetachstate (3C),
+.BR pthread_attr_setstacksize (3C),
+.BR pthread_create (3C),
+.BR attributes (7)
diff --git a/usr/src/man/man3c/pthread_attr_getstackaddr.3c b/usr/src/man/man3c/pthread_attr_getstackaddr.3c
index 09043ed908..3b12efcf79 100644
--- a/usr/src/man/man3c/pthread_attr_getstackaddr.3c
+++ b/usr/src/man/man3c/pthread_attr_getstackaddr.3c
@@ -113,7 +113,7 @@ The \fBpthread_attr_getstackaddr()\fR function may fail if:
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -131,6 +131,9 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBpthread_attr_init\fR(3C), \fBpthread_attr_setdetachstate\fR(3C),
-\fBpthread_attr_setstacksize\fR(3C), \fBpthread_create\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR pthread_attr_init (3C),
+.BR pthread_attr_setdetachstate (3C),
+.BR pthread_attr_setstacksize (3C),
+.BR pthread_create (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/pthread_attr_getstacksize.3c b/usr/src/man/man3c/pthread_attr_getstacksize.3c
index 2895d6a7b1..1e44987790 100644
--- a/usr/src/man/man3c/pthread_attr_getstacksize.3c
+++ b/usr/src/man/man3c/pthread_attr_getstacksize.3c
@@ -100,7 +100,7 @@ function may fail if:
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -118,6 +118,9 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBpthread_attr_init\fR(3C), \fBpthread_attr_setstackaddr\fR(3C),
-\fBpthread_attr_setdetachstate\fR(3C), \fBpthread_create\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR pthread_attr_init (3C),
+.BR pthread_attr_setdetachstate (3C),
+.BR pthread_attr_setstackaddr (3C),
+.BR pthread_create (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/pthread_attr_init.3c b/usr/src/man/man3c/pthread_attr_init.3c
index 473f9b3de1..2def684f47 100644
--- a/usr/src/man/man3c/pthread_attr_init.3c
+++ b/usr/src/man/man3c/pthread_attr_init.3c
@@ -137,7 +137,7 @@ The \fBpthread_attr_destroy()\fR function may fail if:
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -151,19 +151,29 @@ Interface Stability Committed
_
MT-Level MT-Safe
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.LP
-\fBsysconf\fR(3C), \fBpthread_attr_getdetachstate\fR(3C),
-\fBpthread_attr_get_np\fR(3C),
-\fBpthread_attr_getguardsize\fR(3C), \fBpthread_attr_getinheritsched\fR(3C),
-\fBpthread_attr_getschedparam\fR(3C), \fBpthread_attr_getschedpolicy\fR(3C),
-\fBpthread_attr_getscope\fR(3C), \fBpthread_attr_getstackaddr\fR(3C),
-\fBpthread_attr_getstacksize\fR(3C), \fBpthread_attr_setdetachstate\fR(3C),
-\fBpthread_attr_setguardsize\fR(3C), \fBpthread_attr_setinheritsched\fR(3C),
-\fBpthread_attr_setschedparam\fR(3C), \fBpthread_attr_setschedpolicy\fR(3C),
-\fBpthread_attr_setscope\fR(3C), \fBpthread_attr_setstackaddr\fR(3C),
-\fBpthread_attr_setstacksize\fR(3C), \fBpthread_create\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR pthread_attr_get_np (3C),
+.BR pthread_attr_getdetachstate (3C),
+.BR pthread_attr_getguardsize (3C),
+.BR pthread_attr_getinheritsched (3C),
+.BR pthread_attr_getschedparam (3C),
+.BR pthread_attr_getschedpolicy (3C),
+.BR pthread_attr_getscope (3C),
+.BR pthread_attr_getstackaddr (3C),
+.BR pthread_attr_getstacksize (3C),
+.BR pthread_attr_setdetachstate (3C),
+.BR pthread_attr_setguardsize (3C),
+.BR pthread_attr_setinheritsched (3C),
+.BR pthread_attr_setschedparam (3C),
+.BR pthread_attr_setschedpolicy (3C),
+.BR pthread_attr_setscope (3C),
+.BR pthread_attr_setstackaddr (3C),
+.BR pthread_attr_setstacksize (3C),
+.BR pthread_create (3C),
+.BR sysconf (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/pthread_barrier_destroy.3c b/usr/src/man/man3c/pthread_barrier_destroy.3c
index 485675e16f..d6edfe2bec 100644
--- a/usr/src/man/man3c/pthread_barrier_destroy.3c
+++ b/usr/src/man/man3c/pthread_barrier_destroy.3c
@@ -183,7 +183,7 @@ The value specified by \fIbarrier\fR is invalid.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -201,4 +201,6 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBpthread_barrier_wait\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR pthread_barrier_wait (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/pthread_barrier_wait.3c b/usr/src/man/man3c/pthread_barrier_wait.3c
index eba181ae8f..69dac8c8b2 100644
--- a/usr/src/man/man3c/pthread_barrier_wait.3c
+++ b/usr/src/man/man3c/pthread_barrier_wait.3c
@@ -119,7 +119,7 @@ object.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -137,4 +137,6 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBpthread_barrier_destroy\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR pthread_barrier_destroy (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/pthread_barrierattr_destroy.3c b/usr/src/man/man3c/pthread_barrierattr_destroy.3c
index fc736f1efd..3cf7960c98 100644
--- a/usr/src/man/man3c/pthread_barrierattr_destroy.3c
+++ b/usr/src/man/man3c/pthread_barrierattr_destroy.3c
@@ -118,7 +118,7 @@ The value specified by \fIattr\fR is invalid.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -136,5 +136,6 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBpthread_barrierattr_getpshared\fR(3C), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR pthread_barrierattr_getpshared (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/pthread_barrierattr_getpshared.3c b/usr/src/man/man3c/pthread_barrierattr_getpshared.3c
index 87c1b60167..fde25fcbaf 100644
--- a/usr/src/man/man3c/pthread_barrierattr_getpshared.3c
+++ b/usr/src/man/man3c/pthread_barrierattr_getpshared.3c
@@ -130,7 +130,7 @@ the legal values \fBPTHREAD_PROCESS_SHARED\fR or \fBPTHREAD_PROCESS_PRIVATE\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -148,5 +148,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBpthread_barrier_init\fR(3C), \fBpthread_barrierattr_destroy\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR pthread_barrier_init (3C),
+.BR pthread_barrierattr_destroy (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/pthread_cancel.3c b/usr/src/man/man3c/pthread_cancel.3c
index 832d3083eb..00877ec209 100644
--- a/usr/src/man/man3c/pthread_cancel.3c
+++ b/usr/src/man/man3c/pthread_cancel.3c
@@ -64,7 +64,7 @@ canceled.
.sp
.LP
By default, cancellation is deferred until \fItarget_thread\fR reaches a
-cancellation point. See \fBcancellation\fR(5).
+cancellation point. See \fBcancellation\fR(7).
.sp
.LP
Cancellation cleanup handlers for \fItarget_thread\fR are called when the
@@ -103,7 +103,7 @@ given thread \fBID,\fR \fItarget_thread\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -117,19 +117,27 @@ Interface Stability Committed
_
MT-Level MT-Safe
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.sp
.LP
-\fBpthread_cleanup_pop\fR(3C), \fBpthread_cleanup_push\fR(3C),
-\fBpthread_cond_wait\fR(3C), \fBpthread_cond_timedwait\fR(3C),
-\fBpthread_exit\fR(3C), \fBpthread_join\fR(3C),
-\fBpthread_setcancelstate\fR(3C), \fBpthread_setcanceltype\fR(3C),
-\fBpthread_testcancel\fR(3C), \fBsetjmp\fR(3C), \fBattributes\fR(5),
-\fBcancellation\fR(5), \fBcondition\fR(5), \fBstandards\fR(5)
+.BR pthread_cleanup_pop (3C),
+.BR pthread_cleanup_push (3C),
+.BR pthread_cond_timedwait (3C),
+.BR pthread_cond_wait (3C),
+.BR pthread_exit (3C),
+.BR pthread_join (3C),
+.BR pthread_setcancelstate (3C),
+.BR pthread_setcanceltype (3C),
+.BR pthread_testcancel (3C),
+.BR setjmp (3C),
+.BR attributes (7),
+.BR cancellation (7),
+.BR condition (7),
+.BR standards (7)
.SH NOTES
.sp
.LP
-See \fBcancellation\fR(5) for a discussion of cancellation concepts.
+See \fBcancellation\fR(7) for a discussion of cancellation concepts.
diff --git a/usr/src/man/man3c/pthread_cleanup_pop.3c b/usr/src/man/man3c/pthread_cleanup_pop.3c
index aad1b8057a..eeb4d6ce5f 100644
--- a/usr/src/man/man3c/pthread_cleanup_pop.3c
+++ b/usr/src/man/man3c/pthread_cleanup_pop.3c
@@ -102,7 +102,7 @@ The \fBpthread_cleanup_pop()\fR function will not return an error code of
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -120,12 +120,19 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBpthread_cancel\fR(3C), \fBpthread_cleanup_push\fR(3C),
-\fBpthread_exit\fR(3C), \fBpthread_join\fR(3C),
-\fBpthread_setcancelstate\fR(3C), \fBpthread_setcanceltype\fR(3C),
-\fBpthread_testcancel\fR(3C), \fBsetjmp\fR(3C), \fBattributes\fR(5),
-\fBcancellation\fR(5), \fBcondition\fR(5), \fBstandards\fR(5)
+.BR pthread_cancel (3C),
+.BR pthread_cleanup_push (3C),
+.BR pthread_exit (3C),
+.BR pthread_join (3C),
+.BR pthread_setcancelstate (3C),
+.BR pthread_setcanceltype (3C),
+.BR pthread_testcancel (3C),
+.BR setjmp (3C),
+.BR attributes (7),
+.BR cancellation (7),
+.BR condition (7),
+.BR standards (7)
.SH NOTES
.sp
.LP
-See \fBcancellation\fR(5) for a discussion of cancellation concepts.
+See \fBcancellation\fR(7) for a discussion of cancellation concepts.
diff --git a/usr/src/man/man3c/pthread_cleanup_push.3c b/usr/src/man/man3c/pthread_cleanup_push.3c
index ea860eb274..a84d6979d9 100644
--- a/usr/src/man/man3c/pthread_cleanup_push.3c
+++ b/usr/src/man/man3c/pthread_cleanup_push.3c
@@ -107,7 +107,7 @@ The \fBpthread_cleanup_push()\fR function will not return an error code of
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -121,18 +121,25 @@ Interface Stability Committed
_
MT-Level MT-Safe
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.sp
.LP
-\fBlongjmp\fR(3C), \fBpthread_cancel\fR(3C), \fBpthread_cleanup_pop\fR(3C),
-\fBpthread_exit\fR(3C), \fBpthread_join\fR(3C),
-\fBpthread_setcancelstate\fR(3C), \fBpthread_setcanceltype\fR(3C),
-\fBpthread_testcancel\fR(3C), \fBattributes\fR(5), \fBcancellation\fR(5),
-\fBcondition\fR(5), \fBstandards\fR(5)
+.BR longjmp (3C),
+.BR pthread_cancel (3C),
+.BR pthread_cleanup_pop (3C),
+.BR pthread_exit (3C),
+.BR pthread_join (3C),
+.BR pthread_setcancelstate (3C),
+.BR pthread_setcanceltype (3C),
+.BR pthread_testcancel (3C),
+.BR attributes (7),
+.BR cancellation (7),
+.BR condition (7),
+.BR standards (7)
.SH NOTES
.sp
.LP
-See \fBcancellation\fR(5) for a discussion of cancellation concepts.
+See \fBcancellation\fR(7) for a discussion of cancellation concepts.
diff --git a/usr/src/man/man3c/pthread_cond_init.3c b/usr/src/man/man3c/pthread_cond_init.3c
index d86ba4aa76..afcd0679f9 100644
--- a/usr/src/man/man3c/pthread_cond_init.3c
+++ b/usr/src/man/man3c/pthread_cond_init.3c
@@ -182,7 +182,7 @@ The value specified by \fIcond\fR is invalid.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -200,7 +200,11 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBpthread_cond_signal\fR(3C), \fBpthread_cond_broadcast\fR(3C),
-\fBpthread_cond_wait\fR(3C), \fBpthread_cond_timedwait\fR(3C),
-\fBpthread_condattr_init\fR(3C), \fBattributes\fR(5), \fBcondition\fR(5),
-\fBstandards\fR(5)
+.BR pthread_cond_broadcast (3C),
+.BR pthread_cond_signal (3C),
+.BR pthread_cond_timedwait (3C),
+.BR pthread_cond_wait (3C),
+.BR pthread_condattr_init (3C),
+.BR attributes (7),
+.BR condition (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/pthread_cond_signal.3c b/usr/src/man/man3c/pthread_cond_signal.3c
index 21daa80277..9769c44c92 100644
--- a/usr/src/man/man3c/pthread_cond_signal.3c
+++ b/usr/src/man/man3c/pthread_cond_signal.3c
@@ -121,7 +121,7 @@ The value \fIcond\fR does not refer to an initialized condition variable.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -139,6 +139,9 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBpthread_cond_init\fR(3C), \fBpthread_cond_wait\fR(3C),
-\fBpthread_cond_timedwait\fR(3C), \fBattributes\fR(5), \fBcondition\fR(5),
-\fBstandards\fR(5)
+.BR pthread_cond_init (3C),
+.BR pthread_cond_timedwait (3C),
+.BR pthread_cond_wait (3C),
+.BR attributes (7),
+.BR condition (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/pthread_cond_wait.3c b/usr/src/man/man3c/pthread_cond_wait.3c
index 7133cbc699..3b0deddf5b 100644
--- a/usr/src/man/man3c/pthread_cond_wait.3c
+++ b/usr/src/man/man3c/pthread_cond_wait.3c
@@ -107,7 +107,7 @@ always be reevaluated.
.LP
The order in which blocked threads are awakened by \fBpthread_cond_signal()\fR
or \fBpthread_cond_broadcast()\fR is determined by the scheduling policy. See
-\fBpthreads\fR(5).
+\fBpthreads\fR(7).
.sp
.LP
The effect of using more than one mutex for concurrent
@@ -276,7 +276,7 @@ has not been acquired.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -294,7 +294,12 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBpthread_cond_signal\fR(3C), \fBpthread_cond_broadcast\fR(3C),
-\fBpthread_mutex_lock\fR(3C), \fBpthread_mutexattr_getrobust\fR(3C),
-\fBtime.h\fR(3HEAD), \fBattributes\fR(5), \fBcondition\fR(5),
-\fBpthreads\fR(5), \fBstandards\fR(5)
+.BR pthread_cond_broadcast (3C),
+.BR pthread_cond_signal (3C),
+.BR pthread_mutex_lock (3C),
+.BR pthread_mutexattr_getrobust (3C),
+.BR time.h (3HEAD),
+.BR attributes (7),
+.BR condition (7),
+.BR pthreads (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/pthread_condattr_getclock.3c b/usr/src/man/man3c/pthread_condattr_getclock.3c
index d29a1074cb..6e75e6b30a 100644
--- a/usr/src/man/man3c/pthread_condattr_getclock.3c
+++ b/usr/src/man/man3c/pthread_condattr_getclock.3c
@@ -118,7 +118,7 @@ CPU-time clock.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -136,7 +136,11 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBpthread_cond_init\fR(3C), \fBpthread_cond_timedwait\fR(3C),
-\fBpthread_condattr_destroy\fR(3C), \fBpthread_condattr_getpshared\fR(3C),
-\fBpthread_create\fR(3C), \fBpthread_mutex_init\fR(3C), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR pthread_cond_init (3C),
+.BR pthread_cond_timedwait (3C),
+.BR pthread_condattr_destroy (3C),
+.BR pthread_condattr_getpshared (3C),
+.BR pthread_create (3C),
+.BR pthread_mutex_init (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/pthread_condattr_getpshared.3c b/usr/src/man/man3c/pthread_condattr_getpshared.3c
index ef9c09d231..36b6d6b9f2 100644
--- a/usr/src/man/man3c/pthread_condattr_getpshared.3c
+++ b/usr/src/man/man3c/pthread_condattr_getpshared.3c
@@ -130,7 +130,7 @@ for that attribute.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -148,6 +148,9 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBpthread_condattr_init\fR(3C), \fBpthread_create\fR(3C),
-\fBpthread_mutex_init\fR(3C), \fBpthread_cond_init\fR(3C), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR pthread_cond_init (3C),
+.BR pthread_condattr_init (3C),
+.BR pthread_create (3C),
+.BR pthread_mutex_init (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/pthread_condattr_init.3c b/usr/src/man/man3c/pthread_condattr_init.3c
index 4deee48c71..c25ab1eea8 100644
--- a/usr/src/man/man3c/pthread_condattr_init.3c
+++ b/usr/src/man/man3c/pthread_condattr_init.3c
@@ -131,7 +131,7 @@ The value specified by \fIattr\fR is invalid.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -149,6 +149,10 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBpthread_condattr_getpshared\fR(3C), \fBpthread_condattr_setpshared\fR(3C),
-\fBpthread_cond_init\fR(3C), \fBpthread_create\fR(3C),
-\fBpthread_mutex_init\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR pthread_cond_init (3C),
+.BR pthread_condattr_getpshared (3C),
+.BR pthread_condattr_setpshared (3C),
+.BR pthread_create (3C),
+.BR pthread_mutex_init (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/pthread_create.3c b/usr/src/man/man3c/pthread_create.3c
index 0e317de462..bd966be269 100644
--- a/usr/src/man/man3c/pthread_create.3c
+++ b/usr/src/man/man3c/pthread_create.3c
@@ -299,7 +299,7 @@ process would have exited prematurely. See \fBexit\fR(2).
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -317,9 +317,14 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBfork\fR(2), \fBpthread_attr_init\fR(3C), \fBpthread_cancel\fR(3C),
-\fBpthread_exit\fR(3C), \fBpthread_join\fR(3C), \fBsysconf\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR fork (2),
+.BR pthread_attr_init (3C),
+.BR pthread_cancel (3C),
+.BR pthread_exit (3C),
+.BR pthread_join (3C),
+.BR sysconf (3C),
+.BR attributes (7),
+.BR standards (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3c/pthread_detach.3c b/usr/src/man/man3c/pthread_detach.3c
index d690438ef1..0e96446113 100644
--- a/usr/src/man/man3c/pthread_detach.3c
+++ b/usr/src/man/man3c/pthread_detach.3c
@@ -100,7 +100,7 @@ No thread could be found corresponding to that specified by the given thread
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -118,5 +118,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBpthread_create\fR(3C), \fBpthread_join\fR(3C), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR pthread_create (3C),
+.BR pthread_join (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/pthread_equal.3c b/usr/src/man/man3c/pthread_equal.3c
index fe311ac72f..38979c93e5 100644
--- a/usr/src/man/man3c/pthread_equal.3c
+++ b/usr/src/man/man3c/pthread_equal.3c
@@ -77,7 +77,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -95,8 +95,10 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBpthread_create\fR(3C), \fBpthread_self\fR(3C), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR pthread_create (3C),
+.BR pthread_self (3C),
+.BR attributes (7),
+.BR standards (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3c/pthread_exit.3c b/usr/src/man/man3c/pthread_exit.3c
index 859f4c8770..775a73bbe1 100644
--- a/usr/src/man/man3c/pthread_exit.3c
+++ b/usr/src/man/man3c/pthread_exit.3c
@@ -109,7 +109,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -123,12 +123,16 @@ Interface Stability Committed
_
MT-Level MT-Safe
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.sp
.LP
-\fBexit\fR(3C), \fBpthread_cancel\fR(3C), \fBpthread_create\fR(3C),
-\fBpthread_join\fR(3C), \fBpthread_key_create\fR(3C), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR exit (3C),
+.BR pthread_cancel (3C),
+.BR pthread_create (3C),
+.BR pthread_join (3C),
+.BR pthread_key_create (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/pthread_getconcurrency.3c b/usr/src/man/man3c/pthread_getconcurrency.3c
index c1a29a1436..58d09d9bad 100644
--- a/usr/src/man/man3c/pthread_getconcurrency.3c
+++ b/usr/src/man/man3c/pthread_getconcurrency.3c
@@ -139,7 +139,7 @@ exceeded.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -157,5 +157,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBpthread_create\fR(3C), \fBpthread_attr_init\fR(3C), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR pthread_attr_init (3C),
+.BR pthread_create (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/pthread_getschedparam.3c b/usr/src/man/man3c/pthread_getschedparam.3c
index c335b0d8c8..80b95540c9 100644
--- a/usr/src/man/man3c/pthread_getschedparam.3c
+++ b/usr/src/man/man3c/pthread_getschedparam.3c
@@ -126,7 +126,7 @@ fixed priority scheduling class
.sp
.LP
-See \fBpthreads\fR(5). The affected scheduling parameter is the
+See \fBpthreads\fR(7). The affected scheduling parameter is the
\fIsched_priority\fR member of the \fBsched_param\fR structure.
.sp
.LP
@@ -188,7 +188,7 @@ scheduling parameters or the scheduling policy of the specified thread.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -202,13 +202,19 @@ Interface Stability Committed
_
MT-Level MT-Safe
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.LP
-\fBpthread_attr_init\fR(3C), \fBsched_getparam\fR(3C),
-\fBsched_get_priority_max\fR(3C), \fBsched_get_priority_max\fR(3C),
-\fBsched_get_priority_min\fR(3C), \fBsched_setparam\fR(3C),
-\fBsched_getscheduler\fR(3C), \fBsched_setscheduler\fR(3C),
-\fBattributes\fR(5), \fBpthreads\fR(5), \fBstandards\fR(5)
+.BR pthread_attr_init (3C),
+.BR sched_get_priority_max (3C),
+.BR sched_get_priority_max (3C),
+.BR sched_get_priority_min (3C),
+.BR sched_getparam (3C),
+.BR sched_getscheduler (3C),
+.BR sched_setparam (3C),
+.BR sched_setscheduler (3C),
+.BR attributes (7),
+.BR pthreads (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/pthread_getspecific.3c b/usr/src/man/man3c/pthread_getspecific.3c
index 4fb93844e2..c8cba55cb4 100644
--- a/usr/src/man/man3c/pthread_getspecific.3c
+++ b/usr/src/man/man3c/pthread_getspecific.3c
@@ -126,7 +126,7 @@ The \fBpthread_getspecific()\fR function does not return errors.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -144,4 +144,6 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBpthread_key_create\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR pthread_key_create (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/pthread_join.3c b/usr/src/man/man3c/pthread_join.3c
index 7a806973c0..c60353806f 100644
--- a/usr/src/man/man3c/pthread_join.3c
+++ b/usr/src/man/man3c/pthread_join.3c
@@ -120,7 +120,7 @@ No thread could be found corresponding to the given thread ID.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -138,8 +138,13 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBpthread_cancel\fR(3C), \fBpthread_create\fR(3C), \fBpthread_detach\fR(3C),
-\fBpthread_exit\fR(3C), \fBwait\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR pthread_cancel (3C),
+.BR pthread_create (3C),
+.BR pthread_detach (3C),
+.BR pthread_exit (3C),
+.BR wait (3C),
+.BR attributes (7),
+.BR standards (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3c/pthread_key_create.3c b/usr/src/man/man3c/pthread_key_create.3c
index 2f5b12654e..3a06b930ca 100644
--- a/usr/src/man/man3c/pthread_key_create.3c
+++ b/usr/src/man/man3c/pthread_key_create.3c
@@ -223,7 +223,7 @@ cleanup(void *tsd)
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -242,10 +242,13 @@ Standard See below.
.sp
.LP
-For \fBpthread_key_create()\fR, see \fBstandards\fR(5).
+For \fBpthread_key_create()\fR, see \fBstandards\fR(7).
.SH SEE ALSO
.sp
.LP
-\fBpthread_once\fR(3C), \fBpthread_getspecific\fR(3C),
-\fBpthread_setspecific\fR(3C), \fBpthread_key_delete\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR pthread_getspecific (3C),
+.BR pthread_key_delete (3C),
+.BR pthread_once (3C),
+.BR pthread_setspecific (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/pthread_key_delete.3c b/usr/src/man/man3c/pthread_key_delete.3c
index 5e8754028f..f6d38e4ab1 100644
--- a/usr/src/man/man3c/pthread_key_delete.3c
+++ b/usr/src/man/man3c/pthread_key_delete.3c
@@ -99,7 +99,7 @@ The \fBpthread_key_delete()\fR function will not return an error code of
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -117,4 +117,6 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBpthread_key_create\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR pthread_key_create (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/pthread_kill.3c b/usr/src/man/man3c/pthread_kill.3c
index 51a21e87ce..40d83d7bea 100644
--- a/usr/src/man/man3c/pthread_kill.3c
+++ b/usr/src/man/man3c/pthread_kill.3c
@@ -99,7 +99,7 @@ The value of the \fIsig\fR argument is an invalid or unsupported signal number.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -117,5 +117,9 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBkill\fR(1), \fBpthread_self\fR(3C), \fBpthread_sigmask\fR(3C),
-\fBraise\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR kill (1),
+.BR pthread_self (3C),
+.BR pthread_sigmask (3C),
+.BR raise (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/pthread_mutex_consistent.3c b/usr/src/man/man3c/pthread_mutex_consistent.3c
index e9e4e33d59..076d033b77 100644
--- a/usr/src/man/man3c/pthread_mutex_consistent.3c
+++ b/usr/src/man/man3c/pthread_mutex_consistent.3c
@@ -85,5 +85,5 @@ state.
.Xr pthread_mutexattr_getrobust 3C ,
.Xr pthread 3HEAD ,
.Xr libpthread 3LIB ,
-.Xr attributes 5 ,
-.Xr mutex 5
+.Xr attributes 7 ,
+.Xr mutex 7
diff --git a/usr/src/man/man3c/pthread_mutex_getprioceiling.3c b/usr/src/man/man3c/pthread_mutex_getprioceiling.3c
index 805ec5da50..5ea730ee5d 100644
--- a/usr/src/man/man3c/pthread_mutex_getprioceiling.3c
+++ b/usr/src/man/man3c/pthread_mutex_getprioceiling.3c
@@ -154,7 +154,7 @@ The caller does not have the privilege to perform the operation.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -168,11 +168,14 @@ Interface Stability Committed
_
MT-Level MT-Safe
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.sp
.LP
-\fBpthread_mutex_init\fR(3C), \fBpthread_mutex_lock\fR(3C),
-\fBsched_get_priority_min\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR pthread_mutex_init (3C),
+.BR pthread_mutex_lock (3C),
+.BR sched_get_priority_min (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/pthread_mutex_init.3c b/usr/src/man/man3c/pthread_mutex_init.3c
index e45160feb0..afaccd3574 100644
--- a/usr/src/man/man3c/pthread_mutex_init.3c
+++ b/usr/src/man/man3c/pthread_mutex_init.3c
@@ -204,7 +204,7 @@ The value specified by \fImutex\fR is invalid.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -222,9 +222,13 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBpthread_cond_wait\fR(3C), \fBpthread_mutex_lock\fR(3C),
-\fBpthread_mutexattr_setprioceiling\fR(3C),
-\fBpthread_mutexattr_setprotocol\fR(3C),
-\fBpthread_mutexattr_setpshared\fR(3C), \fBpthread_mutexattr_setrobust\fR(3C),
-\fBpthread_mutexattr_settype\fR(3C), \fBattributes\fR(5), \fBmutex\fR(5),
-\fBstandards\fR(5)
+.BR pthread_cond_wait (3C),
+.BR pthread_mutex_lock (3C),
+.BR pthread_mutexattr_setprioceiling (3C),
+.BR pthread_mutexattr_setprotocol (3C),
+.BR pthread_mutexattr_setpshared (3C),
+.BR pthread_mutexattr_setrobust (3C),
+.BR pthread_mutexattr_settype (3C),
+.BR attributes (7),
+.BR mutex (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/pthread_mutex_lock.3c b/usr/src/man/man3c/pthread_mutex_lock.3c
index 94a00574b5..e5394f5b47 100644
--- a/usr/src/man/man3c/pthread_mutex_lock.3c
+++ b/usr/src/man/man3c/pthread_mutex_lock.3c
@@ -279,7 +279,7 @@ the mutex without calling \fBpthread_mutex_consistent()\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -293,15 +293,19 @@ Interface Stability Committed
_
MT-Level MT-Safe
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.sp
.LP
-\fBpthread_mutex_consistent\fR(3C), \fBpthread_mutex_init\fR(3C),
-\fBpthread_mutexattr_setprotocol\fR(3C), \fBpthread_mutexattr_setrobust\fR(3C),
-\fBpthread_mutexattr_settype\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR pthread_mutex_consistent (3C),
+.BR pthread_mutex_init (3C),
+.BR pthread_mutexattr_setprotocol (3C),
+.BR pthread_mutexattr_setrobust (3C),
+.BR pthread_mutexattr_settype (3C),
+.BR attributes (7),
+.BR standards (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3c/pthread_mutex_timedlock.3c b/usr/src/man/man3c/pthread_mutex_timedlock.3c
index 0ad5340e57..d079a15672 100644
--- a/usr/src/man/man3c/pthread_mutex_timedlock.3c
+++ b/usr/src/man/man3c/pthread_mutex_timedlock.3c
@@ -140,7 +140,7 @@ The mutex could not be locked before the specified \fItimeout\fR expired.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -162,5 +162,9 @@ The \fBpthread_mutex_timedlock()\fR is Standard. The
.SH SEE ALSO
.sp
.LP
-\fBtime\fR(2), \fBpthread_mutex_destroy\fR(3C), \fBpthread_mutex_lock\fR(3C),
-\fBpthread_mutex_trylock\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR time (2),
+.BR pthread_mutex_destroy (3C),
+.BR pthread_mutex_lock (3C),
+.BR pthread_mutex_trylock (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/pthread_mutexattr_getprioceiling.3c b/usr/src/man/man3c/pthread_mutexattr_getprioceiling.3c
index d66bb7ad73..0ded0cdacc 100644
--- a/usr/src/man/man3c/pthread_mutexattr_getprioceiling.3c
+++ b/usr/src/man/man3c/pthread_mutexattr_getprioceiling.3c
@@ -139,7 +139,7 @@ The caller does not have the privilege to perform the operation.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -153,12 +153,16 @@ Interface Stability Committed
_
MT-Level MT-Safe
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.sp
.LP
-\fBpthread_cond_init\fR(3C), \fBpthread_create\fR(3C),
-\fBpthread_mutex_init\fR(3C), \fBpthread_mutex_lock\fR(3C),
-\fBsched_get_priority_min\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR pthread_cond_init (3C),
+.BR pthread_create (3C),
+.BR pthread_mutex_init (3C),
+.BR pthread_mutex_lock (3C),
+.BR sched_get_priority_min (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/pthread_mutexattr_getprotocol.3c b/usr/src/man/man3c/pthread_mutexattr_getprotocol.3c
index 502583a1b8..8336f3289e 100644
--- a/usr/src/man/man3c/pthread_mutexattr_getprotocol.3c
+++ b/usr/src/man/man3c/pthread_mutexattr_getprotocol.3c
@@ -212,7 +212,7 @@ The caller does not have the privilege to perform the operation.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -226,12 +226,16 @@ Interface Stability Committed
_
MT-Level MT-Safe
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.sp
.LP
-\fBpthread_attr_getschedparam\fR(3C), \fBpthread_mutex_init\fR(3C),
-\fBpthread_mutexattr_init\fR(3C), \fBsched_setparam\fR(3C),
-\fBsched_setscheduler\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR pthread_attr_getschedparam (3C),
+.BR pthread_mutex_init (3C),
+.BR pthread_mutexattr_init (3C),
+.BR sched_setparam (3C),
+.BR sched_setscheduler (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/pthread_mutexattr_getpshared.3c b/usr/src/man/man3c/pthread_mutexattr_getpshared.3c
index 5ec3040734..51d751e8cd 100644
--- a/usr/src/man/man3c/pthread_mutexattr_getpshared.3c
+++ b/usr/src/man/man3c/pthread_mutexattr_getpshared.3c
@@ -125,7 +125,7 @@ for that attribute.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -143,6 +143,9 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBpthread_create\fR(3C), \fBpthread_mutex_init\fR(3C),
-\fBpthread_mutexattr_init\fR(3C), \fBpthread_cond_init\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR pthread_cond_init (3C),
+.BR pthread_create (3C),
+.BR pthread_mutex_init (3C),
+.BR pthread_mutexattr_init (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/pthread_mutexattr_getrobust.3c b/usr/src/man/man3c/pthread_mutexattr_getrobust.3c
index f06d2856f5..17ec60ee0b 100644
--- a/usr/src/man/man3c/pthread_mutexattr_getrobust.3c
+++ b/usr/src/man/man3c/pthread_mutexattr_getrobust.3c
@@ -118,5 +118,5 @@ or
.Xr pthread_mutex_consistent 3C ,
.Xr pthread 3HEAD ,
.Xr libpthread 3LIB ,
-.Xr attributes 5 ,
-.Xr mutex 5
+.Xr attributes 7 ,
+.Xr mutex 7
diff --git a/usr/src/man/man3c/pthread_mutexattr_gettype.3c b/usr/src/man/man3c/pthread_mutexattr_gettype.3c
index 000440e9cf..2edaf3c55e 100644
--- a/usr/src/man/man3c/pthread_mutexattr_gettype.3c
+++ b/usr/src/man/man3c/pthread_mutexattr_gettype.3c
@@ -168,7 +168,7 @@ The value specified by \fIattr\fR is invalid.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -186,8 +186,10 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBpthread_cond_timedwait\fR(3C), \fBpthread_cond_wait\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR pthread_cond_timedwait (3C),
+.BR pthread_cond_wait (3C),
+.BR attributes (7),
+.BR standards (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3c/pthread_mutexattr_init.3c b/usr/src/man/man3c/pthread_mutexattr_init.3c
index 6476f3054d..65a6512088 100644
--- a/usr/src/man/man3c/pthread_mutexattr_init.3c
+++ b/usr/src/man/man3c/pthread_mutexattr_init.3c
@@ -119,7 +119,7 @@ The value specified by \fIattr\fR is invalid.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -137,6 +137,9 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBpthread_cond_init\fR(3C), \fBpthread_create\fR(3C),
-\fBpthread_mutex_init\fR(3C), \fBpthread_mutexattr_settype\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR pthread_cond_init (3C),
+.BR pthread_create (3C),
+.BR pthread_mutex_init (3C),
+.BR pthread_mutexattr_settype (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/pthread_once.3c b/usr/src/man/man3c/pthread_once.3c
index 6dbe6e1d82..1c44d87e97 100644
--- a/usr/src/man/man3c/pthread_once.3c
+++ b/usr/src/man/man3c/pthread_once.3c
@@ -99,7 +99,7 @@ error number is returned to indicate the error.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -117,7 +117,8 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR attributes (7),
+.BR standards (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3c/pthread_rwlock_init.3c b/usr/src/man/man3c/pthread_rwlock_init.3c
index 2b07069e2f..7d6b755240 100644
--- a/usr/src/man/man3c/pthread_rwlock_init.3c
+++ b/usr/src/man/man3c/pthread_rwlock_init.3c
@@ -137,7 +137,7 @@ The value specified by \fIrwlock\fR is invalid.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -155,6 +155,9 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBpthread_rwlock_rdlock\fR(3C), \fBpthread_rwlock_unlock\fR(3C),
-\fBpthread_rwlock_wrlock\fR(3C), \fBpthread_rwlockattr_init\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR pthread_rwlock_rdlock (3C),
+.BR pthread_rwlock_unlock (3C),
+.BR pthread_rwlock_wrlock (3C),
+.BR pthread_rwlockattr_init (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/pthread_rwlock_rdlock.3c b/usr/src/man/man3c/pthread_rwlock_rdlock.3c
index d2603d2d72..6523dd8702 100644
--- a/usr/src/man/man3c/pthread_rwlock_rdlock.3c
+++ b/usr/src/man/man3c/pthread_rwlock_rdlock.3c
@@ -153,7 +153,7 @@ the lock or a writer with the appropriate priority was blocked on it.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -170,6 +170,9 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBpthread_rwlock_init\fR(3C), \fBpthread_rwlock_wrlock\fR(3C),
-\fBpthread_rwlockattr_init\fR(3C), \fBpthread_rwlock_unlock\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR pthread_rwlock_init (3C),
+.BR pthread_rwlock_unlock (3C),
+.BR pthread_rwlock_wrlock (3C),
+.BR pthread_rwlockattr_init (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/pthread_rwlock_timedrdlock.3c b/usr/src/man/man3c/pthread_rwlock_timedrdlock.3c
index 0e06eab888..7b5062c5f0 100644
--- a/usr/src/man/man3c/pthread_rwlock_timedrdlock.3c
+++ b/usr/src/man/man3c/pthread_rwlock_timedrdlock.3c
@@ -160,7 +160,7 @@ or equal to 1 000 million.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -181,7 +181,11 @@ The \fBpthread_rwlock_timedrdlock()\fR function is Standard. The
\fBpthread_rwlock_reltimedrdlock_np()\fR is Stable.
.SH SEE ALSO
.LP
-\fBpthread_rwlock_destroy\fR(3C), \fBpthread_rwlock_rdlock\fR(3C),
-\fBpthread_rwlock_timedwrlock\fR(3C), \fBpthread_rwlock_trywrlock\fR(3C),
-\fBpthread_rwlock_unlock\fR(3C), \fBpthread_rwlock_wrlock\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR pthread_rwlock_destroy (3C),
+.BR pthread_rwlock_rdlock (3C),
+.BR pthread_rwlock_timedwrlock (3C),
+.BR pthread_rwlock_trywrlock (3C),
+.BR pthread_rwlock_unlock (3C),
+.BR pthread_rwlock_wrlock (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/pthread_rwlock_timedwrlock.3c b/usr/src/man/man3c/pthread_rwlock_timedwrlock.3c
index a75e7cfcd3..5f3bc3bb2b 100644
--- a/usr/src/man/man3c/pthread_rwlock_timedwrlock.3c
+++ b/usr/src/man/man3c/pthread_rwlock_timedwrlock.3c
@@ -147,7 +147,7 @@ or equal to 1,000 million.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -168,7 +168,11 @@ The \fBpthread_rwlock_timedwrlock()\fR function is Standard. The
\fBpthread_rwlock_reltimedwrlock_np()\fR function is Stable.
.SH SEE ALSO
.LP
-\fBpthread_rwlock_destroy\fR(3C), \fBpthread_rwlock_rdlock\fR(3C),
-\fBpthread_rwlock_timedrdlock\fR(3C), \fBpthread_rwlock_trywrlock\fR(3C),
-\fBpthread_rwlock_unlock\fR(3C), \fBpthread_rwlock_wrlock\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR pthread_rwlock_destroy (3C),
+.BR pthread_rwlock_rdlock (3C),
+.BR pthread_rwlock_timedrdlock (3C),
+.BR pthread_rwlock_trywrlock (3C),
+.BR pthread_rwlock_unlock (3C),
+.BR pthread_rwlock_wrlock (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/pthread_rwlock_unlock.3c b/usr/src/man/man3c/pthread_rwlock_unlock.3c
index 753bce2eff..0c01b105c0 100644
--- a/usr/src/man/man3c/pthread_rwlock_unlock.3c
+++ b/usr/src/man/man3c/pthread_rwlock_unlock.3c
@@ -99,7 +99,7 @@ Otherwise, an error number is returned to indicate the error.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -117,6 +117,9 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBpthread_rwlock_init\fR(3C), \fBpthread_rwlock_rdlock\fR(3C),
-\fBpthread_rwlock_wrlock\fR(3C), \fBpthread_rwlockattr_init\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR pthread_rwlock_init (3C),
+.BR pthread_rwlock_rdlock (3C),
+.BR pthread_rwlock_wrlock (3C),
+.BR pthread_rwlockattr_init (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/pthread_rwlock_wrlock.3c b/usr/src/man/man3c/pthread_rwlock_wrlock.3c
index 55931abd25..85d13470ff 100644
--- a/usr/src/man/man3c/pthread_rwlock_wrlock.3c
+++ b/usr/src/man/man3c/pthread_rwlock_wrlock.3c
@@ -126,7 +126,7 @@ locked for reading or writing.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -144,6 +144,9 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBpthread_rwlock_init\fR(3C), \fBpthread_rwlock_unlock\fR(3C),
-\fBpthread_rwlockattr_init\fR(3C), \fBpthread_rwlock_rdlock\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR pthread_rwlock_init (3C),
+.BR pthread_rwlock_rdlock (3C),
+.BR pthread_rwlock_unlock (3C),
+.BR pthread_rwlockattr_init (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/pthread_rwlockattr_getpshared.3c b/usr/src/man/man3c/pthread_rwlockattr_getpshared.3c
index 316edd8f7f..94237aaf62 100644
--- a/usr/src/man/man3c/pthread_rwlockattr_getpshared.3c
+++ b/usr/src/man/man3c/pthread_rwlockattr_getpshared.3c
@@ -113,7 +113,7 @@ The value specified by \fIattr\fR or \fIpshared\fR is invalid.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -131,6 +131,10 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBpthread_rwlock_init\fR(3C), \fBpthread_rwlock_rdlock\fR(3C),
-\fBpthread_rwlock_unlock\fR(3C), \fBpthread_rwlock_wrlock\fR(3C),
-\fBpthread_rwlockattr_init\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR pthread_rwlock_init (3C),
+.BR pthread_rwlock_rdlock (3C),
+.BR pthread_rwlock_unlock (3C),
+.BR pthread_rwlock_wrlock (3C),
+.BR pthread_rwlockattr_init (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/pthread_rwlockattr_init.3c b/usr/src/man/man3c/pthread_rwlockattr_init.3c
index bed61d7e5f..593b4f4528 100644
--- a/usr/src/man/man3c/pthread_rwlockattr_init.3c
+++ b/usr/src/man/man3c/pthread_rwlockattr_init.3c
@@ -119,7 +119,7 @@ The value specified by \fIattr\fR is invalid.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -137,7 +137,10 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBpthread_rwlock_init\fR(3C), \fBpthread_rwlock_rdlock\fR(3C),
-\fBpthread_rwlock_unlock\fR(3C), \fBpthread_rwlock_wrlock\fR(3C),
-\fBpthread_rwlockattr_getpshared\fR(3C), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR pthread_rwlock_init (3C),
+.BR pthread_rwlock_rdlock (3C),
+.BR pthread_rwlock_unlock (3C),
+.BR pthread_rwlock_wrlock (3C),
+.BR pthread_rwlockattr_getpshared (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/pthread_self.3c b/usr/src/man/man3c/pthread_self.3c
index f410ec686a..f0de79d36e 100644
--- a/usr/src/man/man3c/pthread_self.3c
+++ b/usr/src/man/man3c/pthread_self.3c
@@ -69,7 +69,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -87,5 +87,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBpthread_create\fR(3C), \fBpthread_equal\fR(3C), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR pthread_create (3C),
+.BR pthread_equal (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/pthread_setcancelstate.3c b/usr/src/man/man3c/pthread_setcancelstate.3c
index 0cd55a0ec6..b59c762603 100644
--- a/usr/src/man/man3c/pthread_setcancelstate.3c
+++ b/usr/src/man/man3c/pthread_setcancelstate.3c
@@ -94,7 +94,7 @@ pending cancellations are executed immediately.
.sp
.LP
-See \fBcancellation\fR(5) for the definition of a cancellation point and a
+See \fBcancellation\fR(7) for the definition of a cancellation point and a
discussion of cancellation concepts. See \fBpthread_setcanceltype\fR(3C) for
explanations of deferred and asynchronous cancellation.
.SH RETURN VALUES
@@ -119,7 +119,7 @@ The specified \fIstate\fR is not \fBPTHREAD_CANCEL_ENABLE\fR or
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -133,14 +133,21 @@ Interface Stability Committed
_
MT-Level MT-Safe
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.sp
.LP
-\fBpthread_cancel\fR(3C), \fBpthread_cleanup_pop\fR(3C),
-\fBpthread_cleanup_push\fR(3C), \fBpthread_exit\fR(3C), \fBpthread_join\fR(3C),
-\fBpthread_setcanceltype\fR(3C), \fBpthread_testcancel\fR(3C),
-\fBsetjmp\fR(3C), \fBattributes\fR(5), \fBcancellation\fR(5),
-\fBcondition\fR(5), \fBstandards\fR(5)
+.BR pthread_cancel (3C),
+.BR pthread_cleanup_pop (3C),
+.BR pthread_cleanup_push (3C),
+.BR pthread_exit (3C),
+.BR pthread_join (3C),
+.BR pthread_setcanceltype (3C),
+.BR pthread_testcancel (3C),
+.BR setjmp (3C),
+.BR attributes (7),
+.BR cancellation (7),
+.BR condition (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/pthread_setcanceltype.3c b/usr/src/man/man3c/pthread_setcanceltype.3c
index e16b8a86a3..1e8e9c6413 100644
--- a/usr/src/man/man3c/pthread_setcanceltype.3c
+++ b/usr/src/man/man3c/pthread_setcanceltype.3c
@@ -91,7 +91,7 @@ re-enabled, pending cancellations are executed immediately.
.sp
.LP
-See \fBcancellation\fR(5) for the definition of a cancellation point and a
+See \fBcancellation\fR(7) for the definition of a cancellation point and a
discussion of cancellation concepts. See \fBpthread_setcancelstate\fR(3C) for
explanations of enabling and disabling cancellation.
.sp
@@ -121,7 +121,7 @@ The specified \fBtype\fR is not \fBPTHREAD_CANCEL_DEFERRED\fR or
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -139,8 +139,15 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBpthread_cancel\fR(3C), \fBpthread_cleanup_pop\fR(3C),
-\fBpthread_cleanup_push\fR(3C), \fBpthread_exit\fR(3C), \fBpthread_join\fR(3C),
-\fBpthread_setcancelstate\fR(3C), \fBpthread_testcancel\fR(3C),
-\fBsetjmp\fR(3C), \fBattributes\fR(5), \fBcancellation\fR(5),
-\fBcondition\fR(5), \fBstandards\fR(5)
+.BR pthread_cancel (3C),
+.BR pthread_cleanup_pop (3C),
+.BR pthread_cleanup_push (3C),
+.BR pthread_exit (3C),
+.BR pthread_join (3C),
+.BR pthread_setcancelstate (3C),
+.BR pthread_testcancel (3C),
+.BR setjmp (3C),
+.BR attributes (7),
+.BR cancellation (7),
+.BR condition (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/pthread_setschedprio.3c b/usr/src/man/man3c/pthread_setschedprio.3c
index 6d3d926eb0..3fd52fc8cf 100644
--- a/usr/src/man/man3c/pthread_setschedprio.3c
+++ b/usr/src/man/man3c/pthread_setschedprio.3c
@@ -106,7 +106,7 @@ The value specified by thread does not refer to an existing thread.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -120,10 +120,12 @@ Interface Stability Committed
_
MT-Level MT-Safe
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.sp
.LP
-\fBpthread_getschedparam\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR pthread_getschedparam (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/pthread_sigmask.3c b/usr/src/man/man3c/pthread_sigmask.3c
index 1826b1623f..fd8609bf27 100644
--- a/usr/src/man/man3c/pthread_sigmask.3c
+++ b/usr/src/man/man3c/pthread_sigmask.3c
@@ -331,7 +331,7 @@ thread can be used by passing the argument \fBTHR_DAEMON\fR to
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -349,18 +349,28 @@ MT-Level MT-Safe and Async-Signal-Safe
.SH SEE ALSO
.sp
.LP
-\fBsigaction\fR(2), \fBsigprocmask\fR(2), \fBsigwait\fR(2),
-\fBcond_wait\fR(3C), \fBpthread_cancel\fR(3C), \fBpthread_create\fR(3C),
-\fBpthread_join\fR(3C), \fBpthread_self\fR(3C), \fBsigaddset\fR(3C),
-\fBsigemptyset\fR(3C), \fBsigsetops\fR(3C), \fBsleep\fR(3C),
-\fBattributes\fR(5), \fBcancellation\fR(5), \fBstandards\fR(5)
+.BR sigaction (2),
+.BR sigprocmask (2),
+.BR sigwait (2),
+.BR cond_wait (3C),
+.BR pthread_cancel (3C),
+.BR pthread_create (3C),
+.BR pthread_join (3C),
+.BR pthread_self (3C),
+.BR sigaddset (3C),
+.BR sigemptyset (3C),
+.BR sigsetops (3C),
+.BR sleep (3C),
+.BR attributes (7),
+.BR cancellation (7),
+.BR standards (7)
.SH NOTES
.sp
.LP
It is not possible to block signals that cannot be caught or ignored (see
\fBsigaction\fR(2)). It is also not possible to block or unblock
\fBSIGCANCEL\fR, as \fBSIGCANCEL\fR is reserved for the implementation of POSIX
-thread cancellation (see \fBpthread_cancel\fR(3C) and \fBcancellation\fR(5)).
+thread cancellation (see \fBpthread_cancel\fR(3C) and \fBcancellation\fR(7)).
This restriction is quietly enforced by the standard C library.
.sp
.LP
diff --git a/usr/src/man/man3c/pthread_spin_destroy.3c b/usr/src/man/man3c/pthread_spin_destroy.3c
index 43999b616c..31cb12b9a1 100644
--- a/usr/src/man/man3c/pthread_spin_destroy.3c
+++ b/usr/src/man/man3c/pthread_spin_destroy.3c
@@ -152,7 +152,7 @@ The value specified by \fIlock\fR is invalid.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -170,5 +170,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBpthread_spin_lock\fR(3C), \fBpthread_spin_unlock\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR pthread_spin_lock (3C),
+.BR pthread_spin_unlock (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/pthread_spin_lock.3c b/usr/src/man/man3c/pthread_spin_lock.3c
index f01ace3afb..86fe6480e4 100644
--- a/usr/src/man/man3c/pthread_spin_lock.3c
+++ b/usr/src/man/man3c/pthread_spin_lock.3c
@@ -125,7 +125,7 @@ The calling thread already holds the lock.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -143,5 +143,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBpthread_spin_destroy\fR(3C), \fBpthread_spin_unlock\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR pthread_spin_destroy (3C),
+.BR pthread_spin_unlock (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/pthread_spin_unlock.3c b/usr/src/man/man3c/pthread_spin_unlock.3c
index 69ec493360..849ce55dd5 100644
--- a/usr/src/man/man3c/pthread_spin_unlock.3c
+++ b/usr/src/man/man3c/pthread_spin_unlock.3c
@@ -98,7 +98,7 @@ The calling thread does not hold the lock.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -116,5 +116,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBpthread_spin_destroy\fR(3C), \fBpthread_spin_lock\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR pthread_spin_destroy (3C),
+.BR pthread_spin_lock (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/pthread_testcancel.3c b/usr/src/man/man3c/pthread_testcancel.3c
index 8d48f87b3e..918d6ed5d5 100644
--- a/usr/src/man/man3c/pthread_testcancel.3c
+++ b/usr/src/man/man3c/pthread_testcancel.3c
@@ -77,12 +77,12 @@ The \fBpthread_testcancel()\fR function does not return errors.
.SH EXAMPLES
.sp
.LP
-See \fBcancellation\fR(5) for an example of using \fBpthread_testcancel()\fR to
+See \fBcancellation\fR(7) for an example of using \fBpthread_testcancel()\fR to
force testing for cancellation and a discussion of cancellation concepts.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -100,11 +100,18 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBIntro\fR(3), \fBpthread_cleanup_pop\fR(3C), \fBpthread_cleanup_push\fR(3C),
-\fBpthread_exit\fR(3C), \fBpthread_join\fR(3C),
-\fBpthread_setcancelstate\fR(3C), \fBpthread_setcanceltype\fR(3C),
-\fBsetjmp\fR(3C), \fBattributes\fR(5), \fBcancellation\fR(5),
-\fBcondition\fR(5), \fBstandards\fR(5)
+.BR Intro (3),
+.BR pthread_cleanup_pop (3C),
+.BR pthread_cleanup_push (3C),
+.BR pthread_exit (3C),
+.BR pthread_join (3C),
+.BR pthread_setcancelstate (3C),
+.BR pthread_setcanceltype (3C),
+.BR setjmp (3C),
+.BR attributes (7),
+.BR cancellation (7),
+.BR condition (7),
+.BR standards (7)
.SH NOTES
.sp
.LP
@@ -122,5 +129,5 @@ to \fBPTHREAD_CANCEL_ASYNCHRONOUS\fR.
It is possible to kill a thread when it is holding a resource, such as lock or
allocated memory. If that thread has not setup a cancellation cleanup handler
to release the held resource, the application is "cancel-unsafe". See
-\fBattributes\fR(5) for a discussion of Cancel-Safety, Deferred-Cancel-Safety,
+\fBattributes\fR(7) for a discussion of Cancel-Safety, Deferred-Cancel-Safety,
and Asynchronous-Cancel-Safety.
diff --git a/usr/src/man/man3c/ptrace.3c b/usr/src/man/man3c/ptrace.3c
index 9d7a6fef95..6aedb14336 100644
--- a/usr/src/man/man3c/ptrace.3c
+++ b/usr/src/man/man3c/ptrace.3c
@@ -176,7 +176,7 @@ The \fIrequest\fR argument is an illegal number.
.ad
.RS 9n
The calling process does not have appropriate privileges to control the calling
-process. See \fBproc\fR(4).
+process. See \fBproc\fR(5).
.RE
.sp
@@ -199,12 +199,12 @@ The \fBptrace()\fR function is available only with the 32-bit version of
The \fB/proc\fR debugging interfaces should be used instead of \fBptrace()\fR,
which provides quite limited debugger support and is itself implemented using
the \fB/proc\fR interfaces. There is no actual \fBptrace()\fR system call in
-the kernel. See \fBproc\fR(4) for descriptions of the \fB/proc\fR debugging
+the kernel. See \fBproc\fR(5) for descriptions of the \fB/proc\fR debugging
interfaces.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -222,5 +222,11 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBexec\fR(2), \fBexit\fR(2), \fBlibc\fR(3LIB), \fBsignal\fR(3C),
-\fBsignal.h\fR(3HEAD), \fBwait\fR(3C), \fBproc\fR(4), \fBattributes\fR(5)
+.BR exec (2),
+.BR exit (2),
+.BR signal (3C),
+.BR wait (3C),
+.BR signal.h (3HEAD),
+.BR libc (3LIB),
+.BR proc (5),
+.BR attributes (7)
diff --git a/usr/src/man/man3c/ptsname.3c b/usr/src/man/man3c/ptsname.3c
index 264a3dcc90..cb83f6f9b5 100644
--- a/usr/src/man/man3c/ptsname.3c
+++ b/usr/src/man/man3c/ptsname.3c
@@ -70,7 +70,7 @@ pseudo-terminal manager device; e.g., by calling
or by performing an
.Xr open 2
of the
-.Xr ptm 7D
+.Xr ptm 4D
device.
.Pp
The
@@ -108,7 +108,7 @@ in the file system.
.Xr posix_openpt 3C ,
.Xr ttyname 3C ,
.Xr unlockpt 3C ,
-.Xr attributes 5 ,
-.Xr standards 5 ,
-.Xr ptm 7D ,
-.Xr pts 7D
+.Xr ptm 4D ,
+.Xr pts 4D ,
+.Xr attributes 7 ,
+.Xr standards 7
diff --git a/usr/src/man/man3c/putenv.3c b/usr/src/man/man3c/putenv.3c
index 9db7d85f52..66527034fa 100644
--- a/usr/src/man/man3c/putenv.3c
+++ b/usr/src/man/man3c/putenv.3c
@@ -105,7 +105,7 @@ however, prevent two threads from successively accessing the environment list
using \fBputenv()\fR or \fBgetenv()\fR.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -122,8 +122,12 @@ MT-Level Safe
.SH SEE ALSO
.LP
-\fBexec\fR(2), \fBgetenv\fR(3C), \fBmalloc\fR(3C), \fBattributes\fR(5),
-\fBenviron\fR(5), \fBstandards\fR(5)
+.BR exec (2),
+.BR getenv (3C),
+.BR malloc (3C),
+.BR attributes (7),
+.BR environ (7),
+.BR standards (7)
.SH WARNINGS
.LP
The \fIstring\fR argument should not be an automatic variable. It should be
diff --git a/usr/src/man/man3c/putpwent.3c b/usr/src/man/man3c/putpwent.3c
index 53c146156f..614eba808c 100644
--- a/usr/src/man/man3c/putpwent.3c
+++ b/usr/src/man/man3c/putpwent.3c
@@ -38,7 +38,7 @@ update the shadow file.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -54,4 +54,6 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBgetpwnam\fR(3C), \fBputspent\fR(3C), \fBattributes\fR(5)
+.BR getpwnam (3C),
+.BR putspent (3C),
+.BR attributes (7)
diff --git a/usr/src/man/man3c/puts.3c b/usr/src/man/man3c/puts.3c
index 24f0bc11dc..0806d3a9da 100644
--- a/usr/src/man/man3c/puts.3c
+++ b/usr/src/man/man3c/puts.3c
@@ -53,7 +53,7 @@ character at the end of the string.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -71,7 +71,16 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBexit\fR(2), \fBwrite\fR(2), \fBIntro\fR(3), \fBabort\fR(3C),
-\fBfclose\fR(3C), \fBferror\fR(3C), \fBfflush\fR(3C), \fBfopen\fR(3C),
-\fBfputc\fR(3C), \fBprintf\fR(3C), \fBstdio\fR(3C), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR exit (2),
+.BR write (2),
+.BR Intro (3),
+.BR abort (3C),
+.BR fclose (3C),
+.BR ferror (3C),
+.BR fflush (3C),
+.BR fopen (3C),
+.BR fputc (3C),
+.BR printf (3C),
+.BR stdio (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/putspent.3c b/usr/src/man/man3c/putspent.3c
index 04f23304fa..271c742e6c 100644
--- a/usr/src/man/man3c/putspent.3c
+++ b/usr/src/man/man3c/putspent.3c
@@ -60,7 +60,7 @@ For this reason, its use is discouraged. If used at all, if should be used with
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -76,4 +76,7 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBgetpwnam\fR(3C), \fBgetspnam\fR(3C), \fBputpwent\fR(3C), \fBattributes\fR(5)
+.BR getpwnam (3C),
+.BR getspnam (3C),
+.BR putpwent (3C),
+.BR attributes (7)
diff --git a/usr/src/man/man3c/putws.3c b/usr/src/man/man3c/putws.3c
index 2b682733ac..501b42ec81 100644
--- a/usr/src/man/man3c/putws.3c
+++ b/usr/src/man/man3c/putws.3c
@@ -71,7 +71,7 @@ file that has not been opened for writing.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -87,5 +87,10 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBferror\fR(3C), \fBfopen\fR(3C), \fBfread\fR(3C), \fBgetws\fR(3C),
-\fBprintf\fR(3C), \fBputwc\fR(3C), \fBattributes\fR(5)
+.BR ferror (3C),
+.BR fopen (3C),
+.BR fread (3C),
+.BR getws (3C),
+.BR printf (3C),
+.BR putwc (3C),
+.BR attributes (7)
diff --git a/usr/src/man/man3c/qsort.3c b/usr/src/man/man3c/qsort.3c
index d596283a81..63ba24ba91 100644
--- a/usr/src/man/man3c/qsort.3c
+++ b/usr/src/man/man3c/qsort.3c
@@ -144,5 +144,5 @@ main()
.Xr bsearch 3C ,
.Xr lsearch 3C ,
.Xr string 3C ,
-.Xr attributes 5 ,
-.Xr standards 5
+.Xr attributes 7 ,
+.Xr standards 7
diff --git a/usr/src/man/man3c/quick_exit.3c b/usr/src/man/man3c/quick_exit.3c
index 6d39cc66f6..fc7e079ce2 100644
--- a/usr/src/man/man3c/quick_exit.3c
+++ b/usr/src/man/man3c/quick_exit.3c
@@ -89,5 +89,5 @@ Insufficient storage space is available.
.Xr _Exit 2 ,
.Xr atexit 3C ,
.Xr exit 3C ,
-.Xr attributes 5 ,
-.Xr standards 5
+.Xr attributes 7 ,
+.Xr standards 7
diff --git a/usr/src/man/man3c/raise.3c b/usr/src/man/man3c/raise.3c
index 951e0f486e..2af7eff32e 100644
--- a/usr/src/man/man3c/raise.3c
+++ b/usr/src/man/man3c/raise.3c
@@ -42,7 +42,7 @@ returned and \fBerrno\fR is set to indicate the error.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -60,5 +60,8 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBpthread_kill\fR(3C), \fBpthread_self\fR(3C), \fBsignal.h\fR(3HEAD),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR pthread_kill (3C),
+.BR pthread_self (3C),
+.BR signal.h (3HEAD),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/rand.3c b/usr/src/man/man3c/rand.3c
index 8d66a8d2df..d52651bdfb 100644
--- a/usr/src/man/man3c/rand.3c
+++ b/usr/src/man/man3c/rand.3c
@@ -64,7 +64,7 @@ defined on the compile line. This flag should be used only in multithreaded
applications.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -81,4 +81,6 @@ MT-Level Safe
.SH SEE ALSO
.LP
-\fBarc4random\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR arc4random (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/random.3c b/usr/src/man/man3c/random.3c
index 8d1869a343..e3a5d656de 100644
--- a/usr/src/man/man3c/random.3c
+++ b/usr/src/man/man3c/random.3c
@@ -203,7 +203,7 @@ main() {
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -220,8 +220,11 @@ MT-Level See \fBNOTES\fR below.
.SH SEE ALSO
.LP
-\fBarc4random\fR(3C), \fBdrand48\fR(3C), \fBrand\fR(3C), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR arc4random (3C),
+.BR drand48 (3C),
+.BR rand (3C),
+.BR attributes (7),
+.BR standards (7)
.SH NOTES
.LP
The \fBrandom()\fR and \fBsrandom()\fR functions are unsafe in multithreaded
diff --git a/usr/src/man/man3c/rctl_walk.3c b/usr/src/man/man3c/rctl_walk.3c
index 0ab73157f8..cf2d71c880 100644
--- a/usr/src/man/man3c/rctl_walk.3c
+++ b/usr/src/man/man3c/rctl_walk.3c
@@ -88,7 +88,7 @@ if (rctl_walk(simple_callback, &total_count)) == 0)
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -106,4 +106,5 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBsetrctl\fR(2), \fBattributes\fR(5)
+.BR setrctl (2),
+.BR attributes (7)
diff --git a/usr/src/man/man3c/rctlblk_set_value.3c b/usr/src/man/man3c/rctlblk_set_value.3c
index 1bfee97216..0dd38d2ecf 100644
--- a/usr/src/man/man3c/rctlblk_set_value.3c
+++ b/usr/src/man/man3c/rctlblk_set_value.3c
@@ -105,7 +105,7 @@ the firing time is the value of \fBgethrtime\fR(3C) at the moment the action on
the resource control value was taken.
.sp
.LP
-The global actions and flags are the action and flags set by \fBrctladm\fR(1M).
+The global actions and flags are the action and flags set by \fBrctladm\fR(8).
These values cannot be set with \fBsetrctl\fR(2). Valid global actions are
listed in the table below. Global flags are generally a published property of
the control and are not modifiable.
@@ -419,7 +419,7 @@ main()
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -436,5 +436,8 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBrctladm\fR(1M), \fBgetrctl\fR(2), \fBsetrctl\fR(2), \fBgethrtime\fR(3C),
-\fBattributes\fR(5)
+.BR getrctl (2),
+.BR setrctl (2),
+.BR gethrtime (3C),
+.BR attributes (7),
+.BR rctladm (8)
diff --git a/usr/src/man/man3c/re_comp.3c b/usr/src/man/man3c/re_comp.3c
index 510513d5c1..e6e1cea625 100644
--- a/usr/src/man/man3c/re_comp.3c
+++ b/usr/src/man/man3c/re_comp.3c
@@ -77,7 +77,7 @@ by a null byte, and may include \fBNEWLINE\fR characters.
.sp
.LP
The \fBre_comp()\fR and \fBre_exec()\fR functions support \fIsimple regular
-expressions\fR, which are defined on the \fBregexp\fR(5) manual page. The
+expressions\fR, which are defined on the \fBregexp\fR(7) manual page. The
regular expressions of the form \fB\e{\fRm\fB\e}\fR, \fB\e{\fRm,\fB\e}\fR, or
\fB\e{\fRm,n\fB\e}\fR are not supported.
.SH RETURN VALUES
@@ -114,9 +114,15 @@ No errors are defined.
.LP
For portability to implementations conforming to X/Open standards prior to SUS,
\fBregcomp\fR(3C) and \fBregexec\fR(3C) are preferred to these functions. See
-\fBstandards\fR(5).
+\fBstandards\fR(7).
.SH SEE ALSO
.sp
.LP
-\fBgrep\fR(1), \fBregcmp\fR(1), \fBregcmp\fR(3C), \fBregcomp\fR(3C),
-\fBregexec\fR(3C), \fBregexpr\fR(3GEN), \fBregexp\fR(5), \fBstandards\fR(5)
+.BR grep (1),
+.BR regcmp (1),
+.BR regcmp (3C),
+.BR regcomp (3C),
+.BR regexec (3C),
+.BR regexpr (3GEN),
+.BR regexp (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/readdir.3c b/usr/src/man/man3c/readdir.3c
index 4d61797f25..d5d34f8967 100644
--- a/usr/src/man/man3c/readdir.3c
+++ b/usr/src/man/man3c/readdir.3c
@@ -235,7 +235,7 @@ field of the directory each time the directory is actually read.
.Pp
The standard-conforming version
.Po see
-.Xr standards 5
+.Xr standards 7
.Pc
of the
.Fn readdir_r
@@ -383,7 +383,7 @@ and
.Fn readdir_r
functions have transitional interfaces for 64-bit file offsets.
See
-.Xr lf64 5 .
+.Xr lf64 7 .
.Sh INTERFACE STABILITY
.Sy Committed
.Sh MT-LEVEL
@@ -408,9 +408,9 @@ function is
.Xr rewinddir 3C ,
.Xr scandir 3C ,
.Xr seekdir 3C ,
-.Xr attributes 5 ,
-.Xr lf64 5 ,
-.Xr standards 5
+.Xr attributes 7 ,
+.Xr lf64 7 ,
+.Xr standards 7
.Sh NOTES
When compiling multithreaded programs, see the
.Sy MULTITHREADED APPLICATIONS
diff --git a/usr/src/man/man3c/realpath.3c b/usr/src/man/man3c/realpath.3c
index 6ab50136e6..cdf0646632 100644
--- a/usr/src/man/man3c/realpath.3c
+++ b/usr/src/man/man3c/realpath.3c
@@ -191,7 +191,7 @@ The \fBrealpath()\fR function might fail to return to the current directory if
an error occurs.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -208,5 +208,8 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBgetcwd\fR(3C), \fBlimits.h\fR(3HEAD), \fBsysconf\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR getcwd (3C),
+.BR sysconf (3C),
+.BR limits.h (3HEAD),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/reboot.3c b/usr/src/man/man3c/reboot.3c
index 6f022899f9..5f6b1b5926 100644
--- a/usr/src/man/man3c/reboot.3c
+++ b/usr/src/man/man3c/reboot.3c
@@ -27,7 +27,7 @@ by a bitwise-inclusive-OR of flags from the following list:
.ad
.RS 15n
The machine is rebooted from the root filesystem on the default boot device.
-This is the default behavior. See \fBboot\fR(1M) and \fBkernel\fR(1M).
+This is the default behavior. See \fBboot\fR(8) and \fBkernel\fR(8).
.RE
.sp
@@ -57,7 +57,7 @@ for pathnames during the bootstrap.
.ad
.RS 15n
The system is forced to panic immediately without any further processing and a
-crash dump is written to the dump device (see \fBdumpadm\fR(1M)) before
+crash dump is written to the dump device (see \fBdumpadm\fR(8)) before
rebooting.
.RE
@@ -89,5 +89,11 @@ the calling process.
.SH SEE ALSO
.sp
.LP
-\fBIntro\fR(1M), \fBboot\fR(1M), \fBdumpadm\fR(1M), \fBhalt\fR(1M),
-\fBinit\fR(1M), \fBkernel\fR(1M), \fBreboot\fR(1M), \fBuadmin\fR(2)
+.BR uadmin (2),
+.BR Intro (8),
+.BR boot (8),
+.BR dumpadm (8),
+.BR halt (8),
+.BR init (8),
+.BR kernel (8),
+.BR reboot (8)
diff --git a/usr/src/man/man3c/regcmp.3c b/usr/src/man/man3c/regcmp.3c
index 3e718759de..1db30c0d34 100644
--- a/usr/src/man/man3c/regcmp.3c
+++ b/usr/src/man/man3c/regcmp.3c
@@ -51,7 +51,7 @@ meanings.
\fB\fB[\|]\|*\|.^\fR\fR
.ad
.RS 18n
-This group of symbols retains its meaning as described on the \fBregexp\fR(5)
+This group of symbols retains its meaning as described on the \fBregexp\fR(7)
manual page.
.RE
@@ -180,7 +180,7 @@ newcursor = regex(name, string);\fR
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -196,8 +196,11 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBed\fR(1), \fBregcmp\fR(1), \fBmalloc\fR(3C), \fBattributes\fR(5),
-\fBregexp\fR(5)
+.BR ed (1),
+.BR regcmp (1),
+.BR malloc (3C),
+.BR attributes (7),
+.BR regexp (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3c/regcomp.3c b/usr/src/man/man3c/regcomp.3c
index a940852198..bc6c8d3126 100644
--- a/usr/src/man/man3c/regcomp.3c
+++ b/usr/src/man/man3c/regcomp.3c
@@ -107,7 +107,7 @@
These routines implement
.St -p1003.2
regular expressions; see
-.Xr regex 5 .
+.Xr regex 7 .
The
.Fn regcomp
function compiles an RE written as a string into an internal form,
@@ -171,7 +171,7 @@ may not be used in the same call to
.It Dv REG_ICASE
Compile for matching that ignores upper/lower case distinctions.
See
-.Xr regex 5 .
+.Xr regex 7 .
.It Dv REG_NOSUB
Compile for matching that need only report success or failure,
not what was matched.
@@ -323,7 +323,7 @@ match before the string.
.El
.Pp
See
-.Xr regex 5
+.Xr regex 7
for a discussion of what is matched in situations where an RE or a portion
thereof could match any of several substrings of
.Fa string .
@@ -750,9 +750,9 @@ function can be used safely in a multithreaded application as long as
.Xr setlocale 3C
is not being called to change the locale.
.Sh SEE ALSO
-.Xr attributes 5 ,
-.Xr regex 5 ,
-.Xr standards 5
+.Xr attributes 7 ,
+.Xr regex 7 ,
+.Xr standards 7
.Pp
.St -p1003.2 ,
sections 2.8
diff --git a/usr/src/man/man3c/remove.3c b/usr/src/man/man3c/remove.3c
index 0870752daa..dffaf103a6 100644
--- a/usr/src/man/man3c/remove.3c
+++ b/usr/src/man/man3c/remove.3c
@@ -37,7 +37,7 @@ returns \fB\(mi1\fR and sets \fBerrno\fR to indicate an error.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -55,4 +55,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBrmdir\fR(2), \fBunlink\fR(2), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR rmdir (2),
+.BR unlink (2),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/rewind.3c b/usr/src/man/man3c/rewind.3c
index cfb232c9f9..0235f65171 100644
--- a/usr/src/man/man3c/rewind.3c
+++ b/usr/src/man/man3c/rewind.3c
@@ -96,7 +96,7 @@ detect errors should clear \fBerrno\fR, then call \fBrewind()\fR, and if
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -114,4 +114,6 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBfseek\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR fseek (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/rewinddir.3c b/usr/src/man/man3c/rewinddir.3c
index 3497290ee6..d2f2bd8523 100644
--- a/usr/src/man/man3c/rewinddir.3c
+++ b/usr/src/man/man3c/rewinddir.3c
@@ -86,7 +86,7 @@ contents of the directory. This method is recommended for portability.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -104,5 +104,10 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBfork\fR(2), \fBclosedir\fR(3C), \fBopendir\fR(3C), \fBreaddir\fR(3C),
-\fBseekdir\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR fork (2),
+.BR closedir (3C),
+.BR opendir (3C),
+.BR readdir (3C),
+.BR seekdir (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/rwlock.3c b/usr/src/man/man3c/rwlock.3c
index ee9eecf226..23db83a0b0 100644
--- a/usr/src/man/man3c/rwlock.3c
+++ b/usr/src/man/man3c/rwlock.3c
@@ -227,7 +227,7 @@ These functions may fail if:
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -243,7 +243,8 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBmmap\fR(2), \fBattributes\fR(5)
+.BR mmap (2),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3c/scandir.3c b/usr/src/man/man3c/scandir.3c
index 97c7bd1c6e..f0c26dda8f 100644
--- a/usr/src/man/man3c/scandir.3c
+++ b/usr/src/man/man3c/scandir.3c
@@ -74,11 +74,11 @@ an \fBint\fR.
.sp
.LP
The \fBscandir()\fR and \fBalphasort()\fR functions have transitional
-interfaces for 64-bit file offsets. See \fBlf64\fR(5).
+interfaces for 64-bit file offsets. See \fBlf64\fR(7).
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -99,5 +99,9 @@ The \fBscandir()\fR function is Unsafe. The \fBalphasort()\fR function is Safe.
.SH SEE ALSO
.sp
.LP
-\fBmalloc\fR(3C), \fBqsort\fR(3C), \fBreaddir\fR(3C), \fBstrcoll\fR(3C),
-\fBattributes\fR(5), \fBlf64\fR(5)
+.BR malloc (3C),
+.BR qsort (3C),
+.BR readdir (3C),
+.BR strcoll (3C),
+.BR attributes (7),
+.BR lf64 (7)
diff --git a/usr/src/man/man3c/scanf.3c b/usr/src/man/man3c/scanf.3c
index 1237835f8f..036ebd8e5e 100644
--- a/usr/src/man/man3c/scanf.3c
+++ b/usr/src/man/man3c/scanf.3c
@@ -424,7 +424,7 @@ Matches an optionally signed floating-point number, infinity, or NaN, whose
format is the same as expected for the subject sequence of \fBstrtod\fR(3C). In
the absence of a size modifier, the corresponding argument must be a pointer to
\fBfloat\fR. The \fBe\fR, \fBf\fR, and \fBg\fR specifiers match hexadecimal
-floating point values only in C99/SUSv3 (see \fBstandards\fR(5)) mode, but the
+floating point values only in C99/SUSv3 (see \fBstandards\fR(7)) mode, but the
\fBa\fR specifier always matches hexadecimal floating point values.
.sp
These conversion specifiers match any subject sequence accepted by
@@ -705,7 +705,7 @@ character \fBa\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -721,16 +721,26 @@ Interface Stability Committed
_
MT-Level MT-Safe
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.sp
.LP
-\fBfgetc\fR(3C), \fBfgets\fR(3C), \fBfgetwc\fR(3C), \fBfread\fR(3C),
-\fBisspace\fR(3C), \fBprintf\fR(3C), \fBsetlocale\fR(3C), \fBstrtod\fR(3C),
-\fBstrtol\fR(3C), \fBstrtoul\fR(3C), \fBwcrtomb\fR(3C), \fBungetc\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR fgetc (3C),
+.BR fgets (3C),
+.BR fgetwc (3C),
+.BR fread (3C),
+.BR isspace (3C),
+.BR printf (3C),
+.BR setlocale (3C),
+.BR strtod (3C),
+.BR strtol (3C),
+.BR strtoul (3C),
+.BR ungetc (3C),
+.BR wcrtomb (3C),
+.BR attributes (7),
+.BR standards (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3c/sched_get_priority_max.3c b/usr/src/man/man3c/sched_get_priority_max.3c
index 15dd39bc29..43c91af8d9 100644
--- a/usr/src/man/man3c/sched_get_priority_max.3c
+++ b/usr/src/man/man3c/sched_get_priority_max.3c
@@ -96,7 +96,7 @@ policy.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -110,13 +110,19 @@ Interface Stability Committed
_
MT-Level MT-Safe
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.sp
.LP
-\fBlibrt\fR(3LIB), \fBsched.h\fR(3HEAD), \fBsched_getparam\fR(3C),
-\fBsched_setparam\fR(3C), \fBsched_getscheduler\fR(3C),
-\fBsched_rr_get_interval\fR(3C), \fBsched_setscheduler\fR(3C),
-\fBtime.h\fR(3HEAD), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR sched_getparam (3C),
+.BR sched_getscheduler (3C),
+.BR sched_rr_get_interval (3C),
+.BR sched_setparam (3C),
+.BR sched_setscheduler (3C),
+.BR sched.h (3HEAD),
+.BR time.h (3HEAD),
+.BR librt (3LIB),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/sched_getparam.3c b/usr/src/man/man3c/sched_getparam.3c
index d8bba0003c..184fb35ac4 100644
--- a/usr/src/man/man3c/sched_getparam.3c
+++ b/usr/src/man/man3c/sched_getparam.3c
@@ -103,7 +103,7 @@ No process can be found corresponding to that specified by \fIpid\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -117,12 +117,16 @@ Interface Stability Committed
_
MT-Level MT-Safe
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.sp
.LP
-\fBlibrt\fR(3LIB), \fBsched.h\fR(3HEAD), \fBsched_getscheduler\fR(3C),
-\fBsched_setparam\fR(3C), \fBsched_setscheduler\fR(3C), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR sched_getscheduler (3C),
+.BR sched_setparam (3C),
+.BR sched_setscheduler (3C),
+.BR sched.h (3HEAD),
+.BR librt (3LIB),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/sched_getscheduler.3c b/usr/src/man/man3c/sched_getscheduler.3c
index 70a533e4ed..f80fa9f513 100644
--- a/usr/src/man/man3c/sched_getscheduler.3c
+++ b/usr/src/man/man3c/sched_getscheduler.3c
@@ -106,7 +106,7 @@ No process can be found corresponding to that specified by \fIpid\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -120,12 +120,16 @@ Interface Stability Committed
_
MT-Level MT-Safe
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.sp
.LP
-\fBlibrt\fR(3LIB), \fBsched.h\fR(3HEAD), \fBsched_getparam\fR(3C),
-\fBsched_setparam\fR(3C), \fBsched_setscheduler\fR(3C), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR sched_getparam (3C),
+.BR sched_setparam (3C),
+.BR sched_setscheduler (3C),
+.BR sched.h (3HEAD),
+.BR librt (3LIB),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/sched_rr_get_interval.3c b/usr/src/man/man3c/sched_rr_get_interval.3c
index 8f3a34186f..d02dddf251 100644
--- a/usr/src/man/man3c/sched_rr_get_interval.3c
+++ b/usr/src/man/man3c/sched_rr_get_interval.3c
@@ -84,7 +84,7 @@ No process can be found corresponding to that specified by \fIpid\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -98,13 +98,18 @@ Interface Stability Committed
_
MT-Level MT-Safe
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.sp
.LP
-\fBlibrt\fR(3LIB), \fBsched.h\fR(3HEAD), \fBsched_getparam\fR(3C),
-\fBsched_setparam\fR(3C), \fBsched_get_priority_max\fR(3C),
-\fBsched_getscheduler\fR(3C), \fBsched_setscheduler\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR sched_get_priority_max (3C),
+.BR sched_getparam (3C),
+.BR sched_getscheduler (3C),
+.BR sched_setparam (3C),
+.BR sched_setscheduler (3C),
+.BR sched.h (3HEAD),
+.BR librt (3LIB),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/sched_setparam.3c b/usr/src/man/man3c/sched_setparam.3c
index 08f7743a8d..bc2519aa8e 100644
--- a/usr/src/man/man3c/sched_setparam.3c
+++ b/usr/src/man/man3c/sched_setparam.3c
@@ -139,7 +139,7 @@ No process can be found corresponding to that specified by \fIpid\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -153,12 +153,18 @@ Interface Stability Committed
_
MT-Level MT-Safe
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.sp
.LP
-\fBIntro\fR(2), \fBexec\fR(2), \fBlibrt\fR(3LIB), \fBsched.h\fR(3HEAD),
-\fBsched_getparam\fR(3C), \fBsched_getscheduler\fR(3C),
-\fBsched_setscheduler\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR Intro (2),
+.BR exec (2),
+.BR sched_getparam (3C),
+.BR sched_getscheduler (3C),
+.BR sched_setscheduler (3C),
+.BR sched.h (3HEAD),
+.BR librt (3LIB),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/sched_setscheduler.3c b/usr/src/man/man3c/sched_setscheduler.3c
index 8945ceaec8..cd1afcf057 100644
--- a/usr/src/man/man3c/sched_setscheduler.3c
+++ b/usr/src/man/man3c/sched_setscheduler.3c
@@ -136,7 +136,7 @@ No process can be found corresponding to that specified by \fIpid.\fR
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -150,12 +150,20 @@ Interface Stability Committed
_
MT-Level MT-Safe
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.LP
-\fBpriocntl\fR(1), \fBIntro\fR(2), \fBexec\fR(2), \fBpriocntl\fR(2),
-\fBlibrt\fR(3LIB), \fBsched.h\fR(3HEAD), \fBsched_get_priority_max\fR(3C),
-\fBsched_getparam\fR(3C), \fBsched_getscheduler\fR(3C),
-\fBsched_setparam\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR priocntl (1),
+.BR Intro (2),
+.BR exec (2),
+.BR priocntl (2),
+.BR sched_get_priority_max (3C),
+.BR sched_getparam (3C),
+.BR sched_getscheduler (3C),
+.BR sched_setparam (3C),
+.BR sched.h (3HEAD),
+.BR librt (3LIB),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/sched_yield.3c b/usr/src/man/man3c/sched_yield.3c
index e5b488ae99..95524ab695 100644
--- a/usr/src/man/man3c/sched_yield.3c
+++ b/usr/src/man/man3c/sched_yield.3c
@@ -73,7 +73,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -87,11 +87,13 @@ Interface Stability Committed
_
MT-Level MT-Safe
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.sp
.LP
-\fBlibrt\fR(3LIB), \fBsched.h\fR(3HEAD), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR sched.h (3HEAD),
+.BR librt (3LIB),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/schedctl_init.3c b/usr/src/man/man3c/schedctl_init.3c
index f2a92538fa..538ba420f3 100644
--- a/usr/src/man/man3c/schedctl_init.3c
+++ b/usr/src/man/man3c/schedctl_init.3c
@@ -40,7 +40,7 @@ preemption control
.sp
.LP
These functions provide limited control over the scheduling of a thread (see
-\fBthreads\fR(5)). They allow a running thread to give a hint to the kernel
+\fBthreads\fR(7)). They allow a running thread to give a hint to the kernel
that preemptions of that thread should be avoided. The most likely use for
these functions is to block preemption while holding a spinlock. Improper use
of this facility, including attempts to block preemption for sustained periods
@@ -94,7 +94,7 @@ No errors are returned.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -112,8 +112,12 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBpriocntl\fR(1), \fBexec\fR(2), \fBfork\fR(2), \fBpriocntl\fR(2),
-\fBattributes\fR(5), \fBthreads\fR(5)
+.BR priocntl (1),
+.BR exec (2),
+.BR fork (2),
+.BR priocntl (2),
+.BR attributes (7),
+.BR threads (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3c/seekdir.3c b/usr/src/man/man3c/seekdir.3c
index cbd2d4b831..967a0480bd 100644
--- a/usr/src/man/man3c/seekdir.3c
+++ b/usr/src/man/man3c/seekdir.3c
@@ -80,7 +80,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -98,5 +98,9 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBopendir\fR(3C), \fBreaddir\fR(3C), \fBrewinddir\fR(3C), \fBtelldir\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR opendir (3C),
+.BR readdir (3C),
+.BR rewinddir (3C),
+.BR telldir (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/select.3c b/usr/src/man/man3c/select.3c
index 92ea534aaf..976f728b9d 100644
--- a/usr/src/man/man3c/select.3c
+++ b/usr/src/man/man3c/select.3c
@@ -527,5 +527,5 @@ argument may be modified.
.Xr ualarm 3C ,
.Xr accept 3SOCKET ,
.Xr listen 3SOCKET ,
-.Xr attributes 5 ,
-.Xr standards 5
+.Xr attributes 7 ,
+.Xr standards 7
diff --git a/usr/src/man/man3c/sem_close.3c b/usr/src/man/man3c/sem_close.3c
index f50da89374..fad24a5884 100644
--- a/usr/src/man/man3c/sem_close.3c
+++ b/usr/src/man/man3c/sem_close.3c
@@ -107,7 +107,7 @@ initialized by \fBsem_init\fR(3C).
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -121,14 +121,17 @@ Interface Stability Committed
_
MT-Level MT-Safe
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.sp
.LP
-\fBsem_init\fR(3C), \fBsem_open\fR(3C), \fBsem_unlink\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR sem_init (3C),
+.BR sem_open (3C),
+.BR sem_unlink (3C),
+.BR attributes (7),
+.BR standards (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3c/sem_destroy.3c b/usr/src/man/man3c/sem_destroy.3c
index acb742e5c1..1b8da17562 100644
--- a/usr/src/man/man3c/sem_destroy.3c
+++ b/usr/src/man/man3c/sem_destroy.3c
@@ -102,7 +102,7 @@ There are currently processes (or LWPs or threads) blocked on the semaphore.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -116,10 +116,13 @@ Interface Stability Committed
_
MT-Level MT-Safe
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.sp
.LP
-\fBsem_init\fR(3C), \fBsem_open\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR sem_init (3C),
+.BR sem_open (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/sem_getvalue.3c b/usr/src/man/man3c/sem_getvalue.3c
index 445a60410f..dc0fb0e5f4 100644
--- a/usr/src/man/man3c/sem_getvalue.3c
+++ b/usr/src/man/man3c/sem_getvalue.3c
@@ -104,7 +104,7 @@ The \fBsem_getvalue()\fR function is not supported by the system.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -118,11 +118,16 @@ Interface Stability Committed
_
MT-Level MT-Safe
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.sp
.LP
-\fBsemctl\fR(2), \fBsemget\fR(2), \fBsemop\fR(2), \fBsem_post\fR(3C),
-\fBsem_wait\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR semctl (2),
+.BR semget (2),
+.BR semop (2),
+.BR sem_post (3C),
+.BR sem_wait (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/sem_init.3c b/usr/src/man/man3c/sem_init.3c
index 76e03265c0..875d347fef 100644
--- a/usr/src/man/man3c/sem_init.3c
+++ b/usr/src/man/man3c/sem_init.3c
@@ -141,7 +141,7 @@ The process lacks the appropriate privileges to initialize the semaphore.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -155,11 +155,15 @@ Interface Stability Committed
_
MT-Level MT-Safe
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.sp
.LP
-\fBsem_destroy\fR(3C), \fBsem_open\fR(3C), \fBsem_post\fR(3C),
-\fBsem_wait\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR sem_destroy (3C),
+.BR sem_open (3C),
+.BR sem_post (3C),
+.BR sem_wait (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/sem_open.3c b/usr/src/man/man3c/sem_open.3c
index bda42d12fa..1eaa712680 100644
--- a/usr/src/man/man3c/sem_open.3c
+++ b/usr/src/man/man3c/sem_open.3c
@@ -253,7 +253,7 @@ The \fBsem_open()\fR function is not supported by the system.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -267,12 +267,20 @@ Interface Stability Committed
_
MT-Level MT-Safe
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.sp
.LP
-\fBexec\fR(2), \fBexit\fR(2), \fBumask\fR(2), \fBsem_close\fR(3C),
-\fBsem_init\fR(3C), \fBsem_post\fR(3C), \fBsem_unlink\fR(3C),
-\fBsem_wait\fR(3C), \fBsysconf\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR exec (2),
+.BR exit (2),
+.BR umask (2),
+.BR sem_close (3C),
+.BR sem_init (3C),
+.BR sem_post (3C),
+.BR sem_unlink (3C),
+.BR sem_wait (3C),
+.BR sysconf (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/sem_post.3c b/usr/src/man/man3c/sem_post.3c
index 16f60261f9..17f507a16b 100644
--- a/usr/src/man/man3c/sem_post.3c
+++ b/usr/src/man/man3c/sem_post.3c
@@ -119,7 +119,7 @@ The semaphore value exceeds \fBSEM_VALUE_MAX\fR.
.LP
The \fBsem_post()\fR function is reentrant with respect to signals and may be
invoked from a signal-catching function. The semaphore functionality described
-on this manual page is for the POSIX (see \fBstandards\fR(5)) threads
+on this manual page is for the POSIX (see \fBstandards\fR(7)) threads
implementation. For the documentation of the Solaris threads interface, see
\fBsemaphore\fR(3C)).
.SH EXAMPLES
@@ -129,7 +129,7 @@ See \fBsem_wait\fR(3C).
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -143,11 +143,14 @@ Interface Stability Committed
_
MT-Level Async-Signal-Safe
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.sp
.LP
-\fBsched_setscheduler\fR(3C), \fBsem_wait\fR(3C), \fBsemaphore\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR sched_setscheduler (3C),
+.BR sem_wait (3C),
+.BR semaphore (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/sem_timedwait.3c b/usr/src/man/man3c/sem_timedwait.3c
index 45cf042231..7c4fee1615 100644
--- a/usr/src/man/man3c/sem_timedwait.3c
+++ b/usr/src/man/man3c/sem_timedwait.3c
@@ -161,7 +161,7 @@ A signal interrupted this function.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -180,9 +180,15 @@ Standard See below.
.sp
.LP
-For \fBsem_timedwait()\fR, see \fBstandards\fR(5).
+For \fBsem_timedwait()\fR, see \fBstandards\fR(7).
.SH SEE ALSO
.LP
-\fBsemctl\fR(2), \fBsemget\fR(2), \fBsemop\fR(2), \fBtime\fR(2),
-\fBsem_post\fR(3C), \fBsem_trywait\fR(3C), \fBsem_wait\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR semctl (2),
+.BR semget (2),
+.BR semop (2),
+.BR time (2),
+.BR sem_post (3C),
+.BR sem_trywait (3C),
+.BR sem_wait (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/sem_unlink.3c b/usr/src/man/man3c/sem_unlink.3c
index 7fe479ed34..7c3416b938 100644
--- a/usr/src/man/man3c/sem_unlink.3c
+++ b/usr/src/man/man3c/sem_unlink.3c
@@ -119,7 +119,7 @@ The \fBsem_unlink()\fR function is not supported by the system.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -133,14 +133,18 @@ Interface Stability Committed
_
MT-Level MT-Safe
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.sp
.LP
-\fBexec\fR(2), \fBexit\fR(2), \fBsem_close\fR(3C), \fBsem_open\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR exec (2),
+.BR exit (2),
+.BR sem_close (3C),
+.BR sem_open (3C),
+.BR attributes (7),
+.BR standards (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3c/sem_wait.3c b/usr/src/man/man3c/sem_wait.3c
index a65f35d507..f27608927f 100644
--- a/usr/src/man/man3c/sem_wait.3c
+++ b/usr/src/man/man3c/sem_wait.3c
@@ -210,7 +210,7 @@ void *deposit_withdrawal;
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -224,10 +224,12 @@ Interface Stability Committed
_
MT-Level MT-Safe
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.sp
.LP
-\fBsem_post\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR sem_post (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/semaphore.3c b/usr/src/man/man3c/semaphore.3c
index bfc5b84869..92de72b438 100644
--- a/usr/src/man/man3c/semaphore.3c
+++ b/usr/src/man/man3c/semaphore.3c
@@ -306,7 +306,7 @@ customer(int deposit_withdrawal)
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -322,10 +322,18 @@ MT-Level Async-Signal-Safe
.SH SEE ALSO
.sp
.LP
-\fBmmap\fR(2), \fBshmop\fR(2), \fBsem_close\fR(3C), \fBsem_destroy\fR(3C),
-\fBsem_getvalue\fR(3C), \fBsem_init\fR(3C), \fBsem_open\fR(3C),
-\fBsem_post\fR(3C), \fBsem_unlink\fR(3C), \fBsem_wait\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR mmap (2),
+.BR shmop (2),
+.BR sem_close (3C),
+.BR sem_destroy (3C),
+.BR sem_getvalue (3C),
+.BR sem_init (3C),
+.BR sem_open (3C),
+.BR sem_post (3C),
+.BR sem_unlink (3C),
+.BR sem_wait (3C),
+.BR attributes (7),
+.BR standards (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3c/setbuf.3c b/usr/src/man/man3c/setbuf.3c
index c49a7ce159..6e69cc7dad 100644
--- a/usr/src/man/man3c/setbuf.3c
+++ b/usr/src/man/man3c/setbuf.3c
@@ -97,7 +97,7 @@ using \fBsetvbuf()\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -115,5 +115,10 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBfopen\fR(3C), \fBgetc\fR(3C), \fBmalloc\fR(3C), \fBputc\fR(3C),
-\fBstdio\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR fopen (3C),
+.BR getc (3C),
+.BR malloc (3C),
+.BR putc (3C),
+.BR stdio (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/setbuffer.3c b/usr/src/man/man3c/setbuffer.3c
index 78a42edc2c..416ed9f4e3 100644
--- a/usr/src/man/man3c/setbuffer.3c
+++ b/usr/src/man/man3c/setbuffer.3c
@@ -62,9 +62,16 @@ The \fBsetlinebuf()\fR function returns no useful value.
.SH SEE ALSO
.sp
.LP
-\fBmalloc\fR(3C), \fBfclose\fR(3C), \fBfopen\fR(3C), \fBfread\fR(3C),
-\fBgetc\fR(3C), \fBprintf\fR(3C), \fBputc\fR(3C), \fBputs\fR(3C),
-\fBsetbuf\fR(3C), \fBsetvbuf\fR(3C)
+.BR fclose (3C),
+.BR fopen (3C),
+.BR fread (3C),
+.BR getc (3C),
+.BR malloc (3C),
+.BR printf (3C),
+.BR putc (3C),
+.BR puts (3C),
+.BR setbuf (3C),
+.BR setvbuf (3C)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3c/setcat.3c b/usr/src/man/man3c/setcat.3c
index 5fb7ddec47..416be6cb0b 100644
--- a/usr/src/man/man3c/setcat.3c
+++ b/usr/src/man/man3c/setcat.3c
@@ -59,7 +59,7 @@ name. Otherwise, it returns a null pointer.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -75,5 +75,9 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBgettxt\fR(3C), \fBlfmt\fR(3C), \fBpfmt\fR(3C), \fBsetlocale\fR(3C),
-\fBattributes\fR(5), \fBenviron\fR(5)
+.BR gettxt (3C),
+.BR lfmt (3C),
+.BR pfmt (3C),
+.BR setlocale (3C),
+.BR attributes (7),
+.BR environ (7)
diff --git a/usr/src/man/man3c/setenv.3c b/usr/src/man/man3c/setenv.3c
index 8247305c3d..011e729860 100644
--- a/usr/src/man/man3c/setenv.3c
+++ b/usr/src/man/man3c/setenv.3c
@@ -109,7 +109,7 @@ environment.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -127,4 +127,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBgetenv\fR(3C), \fBunsetenv\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR getenv (3C),
+.BR unsetenv (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/setjmp.3c b/usr/src/man/man3c/setjmp.3c
index f5223bac48..b7e677913d 100644
--- a/usr/src/man/man3c/setjmp.3c
+++ b/usr/src/man/man3c/setjmp.3c
@@ -228,7 +228,7 @@ longjumped from alarm
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -246,9 +246,14 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBgetcontext\fR(2), \fBpriocntl\fR(2), \fBsigaction\fR(2),
-\fBsigaltstack\fR(2), \fBsigprocmask\fR(2), \fBsignal\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR getcontext (2),
+.BR priocntl (2),
+.BR sigaction (2),
+.BR sigaltstack (2),
+.BR sigprocmask (2),
+.BR signal (3C),
+.BR attributes (7),
+.BR standards (7)
.SH WARNINGS
.sp
.LP
diff --git a/usr/src/man/man3c/setkey.3c b/usr/src/man/man3c/setkey.3c
index 9afd5b0d53..45d943a527 100644
--- a/usr/src/man/man3c/setkey.3c
+++ b/usr/src/man/man3c/setkey.3c
@@ -98,7 +98,7 @@ for errors should set \fBerrno\fR to 0, call \fBsetkey()\fR, then test
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -116,4 +116,7 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBcrypt\fR(3C), \fBencrypt\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR crypt (3C),
+.BR encrypt (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/setlabel.3c b/usr/src/man/man3c/setlabel.3c
index 72fcb15581..8d905f4340 100644
--- a/usr/src/man/man3c/setlabel.3c
+++ b/usr/src/man/man3c/setlabel.3c
@@ -51,7 +51,7 @@ UX:test: ERROR: Cannot open file
.in -2
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -65,4 +65,7 @@ MT-Level MT-Safe
.TE
.SH SEE ALSO
-\fBgetopt\fR(3C), \fBlfmt\fR(3C), \fBpfmt\fR(3C), \fBattributes\fR(5)
+.BR getopt (3C),
+.BR lfmt (3C),
+.BR pfmt (3C),
+.BR attributes (7)
diff --git a/usr/src/man/man3c/setlocale.3c b/usr/src/man/man3c/setlocale.3c
index 4690ec3850..c176b0e28e 100644
--- a/usr/src/man/man3c/setlocale.3c
+++ b/usr/src/man/man3c/setlocale.3c
@@ -141,7 +141,7 @@ locale database directory for \fIlocale\fR
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -162,10 +162,20 @@ MT-Level MT-Safe with exceptions
.sp
.LP
\fBlocale\fR(1), \fBctype\fR(3C), \fBgetdate\fR(3C) \fBgettext\fR(3C),
-\fBgettxt\fR(3C), \fBisdigit\fR(3C), \fBlibc\fR(3LIB), \fBlocaleconv\fR(3C),
-\fBmbtowc\fR(3C), \fBstrcoll\fR(3C), \fBstrftime\fR(3C), \fBstrptime\fR(3C)
-\fBstrxfrm\fR(3C) \fBtolower\fR(3C), \fBwctomb\fR(3C), \fBattributes\fR(5),
-\fBenviron\fR(5), \fBlocale\fR(5), \fBstandards\fR(5)
+.BR gettxt (3C),
+.BR isdigit (3C),
+.BR libc (3LIB),
+.BR localeconv (3C),
+.BR mbtowc (3C),
+.BR strcoll (3C),
+.BR strftime (3C),
+.BR strptime (3C)
+\fBstrxfrm\fR(3C) \fBtolower\fR(3C),
+.BR wctomb (3C),
+.BR attributes (7),
+.BR environ (7),
+.BR locale (7),
+.BR standards (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3c/shm_open.3c b/usr/src/man/man3c/shm_open.3c
index 6e0766ca86..a5988661ae 100644
--- a/usr/src/man/man3c/shm_open.3c
+++ b/usr/src/man/man3c/shm_open.3c
@@ -269,7 +269,7 @@ The \fBshm_open()\fR function is not supported by the system.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -283,15 +283,23 @@ Interface Stability Committed
_
MT-Level MT-Safe
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.sp
.LP
-\fBclose\fR(2), \fBdup\fR(2), \fBexec\fR(2), \fBfcntl\fR(2), \fBmmap\fR(2),
-\fBumask\fR(2), \fBshm_unlink\fR(3C), \fBsysconf\fR(3C), \fBfcntl.h\fR(3HEAD),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR close (2),
+.BR dup (2),
+.BR exec (2),
+.BR fcntl (2),
+.BR mmap (2),
+.BR umask (2),
+.BR shm_unlink (3C),
+.BR sysconf (3C),
+.BR fcntl.h (3HEAD),
+.BR attributes (7),
+.BR standards (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3c/shm_unlink.3c b/usr/src/man/man3c/shm_unlink.3c
index 5d72dafc88..8bc9d1a100 100644
--- a/usr/src/man/man3c/shm_unlink.3c
+++ b/usr/src/man/man3c/shm_unlink.3c
@@ -115,7 +115,7 @@ The \fBshm_unlink()\fR function is not supported by the system.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -129,14 +129,18 @@ Interface Stability Committed
_
MT-Level MT-Safe
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.sp
.LP
-\fBclose\fR(2), \fBmmap\fR(2), \fBmlock\fR(3C), \fBshm_open\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR close (2),
+.BR mmap (2),
+.BR mlock (3C),
+.BR shm_open (3C),
+.BR attributes (7),
+.BR standards (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3c/sigfpe.3c b/usr/src/man/man3c/sigfpe.3c
index 2067e19301..7786a7de3e 100644
--- a/usr/src/man/man3c/sigfpe.3c
+++ b/usr/src/man/man3c/sigfpe.3c
@@ -169,7 +169,7 @@ main(void) {
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -184,8 +184,11 @@ MT-Level Safe
.SH SEE ALSO
.LP
-\fBsigaction\fR(2), \fBabort\fR(3C), \fBsignal\fR(3C), \fBattributes\fR(5),
-\fBfloatingpoint.h\fR(3HEAD)
+.BR sigaction (2),
+.BR abort (3C),
+.BR signal (3C),
+.BR floatingpoint.h (3HEAD),
+.BR attributes (7)
.SH DIAGNOSTICS
.LP
The \fBsigfpe()\fR function returns (void(*)())-1 if \fIcode\fR is not zero or
diff --git a/usr/src/man/man3c/siginterrupt.3c b/usr/src/man/man3c/siginterrupt.3c
index 0cfffd3b22..348f95af5e 100644
--- a/usr/src/man/man3c/siginterrupt.3c
+++ b/usr/src/man/man3c/siginterrupt.3c
@@ -65,7 +65,7 @@ of \fBsiginterrupt()\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -83,5 +83,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBsigaction\fR(2), \fBsignal.h\fR(3HEAD), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR sigaction (2),
+.BR signal.h (3HEAD),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/signal.3c b/usr/src/man/man3c/signal.3c
index 9dbcfcd3e0..1f97971d33 100644
--- a/usr/src/man/man3c/signal.3c
+++ b/usr/src/man/man3c/signal.3c
@@ -145,7 +145,7 @@ guarantee the reception of every generated signal.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -163,6 +163,13 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBexit\fR(2), \fBkill\fR(2), \fBpause\fR(2), \fBsigaction\fR(2),
-\fBsigsend\fR(2), \fBwaitid\fR(2), \fBsignal.h\fR(3HEAD), \fBwait\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR exit (2),
+.BR kill (2),
+.BR pause (2),
+.BR sigaction (2),
+.BR sigsend (2),
+.BR waitid (2),
+.BR wait (3C),
+.BR signal.h (3HEAD),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/signalfd.3c b/usr/src/man/man3c/signalfd.3c
index 070bafc854..0137c18c38 100644
--- a/usr/src/man/man3c/signalfd.3c
+++ b/usr/src/man/man3c/signalfd.3c
@@ -158,7 +158,7 @@ File descriptor duplication during fork presents a challenge to the
facility since signal data and events are dependent on the process from which
they are queried.
Its use with caching event systems such as
-.Xr epoll 5 ,
+.Xr epoll 7 ,
.Pa /dev/poll ,
or
.Xr port_create 3C
@@ -209,4 +209,4 @@ Unable to allocate state for the file descriptor.
.Xr sigsetops 3C ,
.Xr sigwaitinfo 3C ,
.Xr signal.h 3HEAD ,
-.Xr epoll 5
+.Xr epoll 7
diff --git a/usr/src/man/man3c/sigqueue.3c b/usr/src/man/man3c/sigqueue.3c
index 94ece7109a..79a21a9096 100644
--- a/usr/src/man/man3c/sigqueue.3c
+++ b/usr/src/man/man3c/sigqueue.3c
@@ -148,7 +148,7 @@ The process \fIpid\fR does not exist.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -162,11 +162,15 @@ Interface Stability Committed
_
MT-Level Async-Signal-Safe
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.sp
.LP
-\fBkill\fR(2), \fBsiginfo.h\fR(3HEAD), \fBsignal.h\fR(3HEAD),
-\fBsigwaitinfo\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR kill (2),
+.BR sigwaitinfo (3C),
+.BR siginfo.h (3HEAD),
+.BR signal.h (3HEAD),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/sigsetops.3c b/usr/src/man/man3c/sigsetops.3c
index 25af9a8101..8273433bee 100644
--- a/usr/src/man/man3c/sigsetops.3c
+++ b/usr/src/man/man3c/sigsetops.3c
@@ -102,7 +102,7 @@ The \fIset\fR argument specifies an invalid address.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -120,6 +120,10 @@ MT-Level Async-Signal-Safe
.SH SEE ALSO
.sp
.LP
-\fBsigaction\fR(2), \fBsigpending\fR(2), \fBsigprocmask\fR(2),
-\fBsigsuspend\fR(2), \fBsignal.h\fR(3HEAD), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR sigaction (2),
+.BR sigpending (2),
+.BR sigprocmask (2),
+.BR sigsuspend (2),
+.BR signal.h (3HEAD),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/sigstack.3c b/usr/src/man/man3c/sigstack.3c
index 835a955e8d..9812a15cb1 100644
--- a/usr/src/man/man3c/sigstack.3c
+++ b/usr/src/man/man3c/sigstack.3c
@@ -154,5 +154,10 @@ is recommended over this function.
.SH SEE ALSO
.sp
.LP
-\fBfork\fR(2), \fB_longjmp\fR(3C), \fBlongjmp\fR(3C), \fBsetjmp\fR(3C),
-\fBsigaltstack\fR(2), \fBsiglongjmp\fR(3C), \fBsigsetjmp\fR(3C)
+.BR fork (2),
+.BR sigaltstack (2),
+.BR _longjmp (3C),
+.BR longjmp (3C),
+.BR setjmp (3C),
+.BR siglongjmp (3C),
+.BR sigsetjmp (3C)
diff --git a/usr/src/man/man3c/sigwaitinfo.3c b/usr/src/man/man3c/sigwaitinfo.3c
index 0d8bc75160..31982e5018 100644
--- a/usr/src/man/man3c/sigwaitinfo.3c
+++ b/usr/src/man/man3c/sigwaitinfo.3c
@@ -179,7 +179,7 @@ no signal is pending in \fIset\fR and it is necessary to wait.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -193,12 +193,16 @@ Interface Stability Committed
_
MT-Level Async-Safe
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.sp
.LP
-\fBtime\fR(2), \fBsigqueue\fR(3C), \fBsiginfo.h\fR(3HEAD),
-\fBsignal.h\fR(3HEAD), \fBtime.h\fR(3HEAD), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR time (2),
+.BR sigqueue (3C),
+.BR siginfo.h (3HEAD),
+.BR signal.h (3HEAD),
+.BR time.h (3HEAD),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/sleep.3c b/usr/src/man/man3c/sleep.3c
index cd18d1e7c2..689dc966c2 100644
--- a/usr/src/man/man3c/sleep.3c
+++ b/usr/src/man/man3c/sleep.3c
@@ -74,7 +74,7 @@ suspended from execution.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -88,10 +88,12 @@ Interface Stability Committed
_
MT-Level Async-Signal-Safe
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.sp
.LP
-\fBnanosleep\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR nanosleep (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/smt_pause.3c b/usr/src/man/man3c/smt_pause.3c
index 815a21f40e..28f0e6ff96 100644
--- a/usr/src/man/man3c/smt_pause.3c
+++ b/usr/src/man/man3c/smt_pause.3c
@@ -35,4 +35,4 @@ This is commonly used in the implementation of spin loops.
.Sh MT-LEVEL
.Sy MT-Safe
.Sh SEE ALSO
-.Xr attributes 5
+.Xr attributes 7
diff --git a/usr/src/man/man3c/ssignal.3c b/usr/src/man/man3c/ssignal.3c
index aabb691106..7cd412e108 100644
--- a/usr/src/man/man3c/ssignal.3c
+++ b/usr/src/man/man3c/ssignal.3c
@@ -67,7 +67,7 @@ If \fIsig\fR has an illegal value or no action was ever specified for
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -83,4 +83,6 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBraise\fR(3C), \fBsignal\fR(3C), \fBattributes\fR(5)
+.BR raise (3C),
+.BR signal (3C),
+.BR attributes (7)
diff --git a/usr/src/man/man3c/stack_getbounds.3c b/usr/src/man/man3c/stack_getbounds.3c
index a98bd6c491..79fac8c051 100644
--- a/usr/src/man/man3c/stack_getbounds.3c
+++ b/usr/src/man/man3c/stack_getbounds.3c
@@ -49,7 +49,7 @@ The \fIsp\fR argument does not refer to a valid address.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -67,5 +67,8 @@ MT-Level Async-Signal-Safe
.SH SEE ALSO
.sp
.LP
-\fBgetustack\fR(2), \fBsigaction\fR(2), \fBsigaltstack\fR(2),
-\fBstack_setbounds\fR(3C), \fBattributes\fR(5)
+.BR getustack (2),
+.BR sigaction (2),
+.BR sigaltstack (2),
+.BR stack_setbounds (3C),
+.BR attributes (7)
diff --git a/usr/src/man/man3c/stack_inbounds.3c b/usr/src/man/man3c/stack_inbounds.3c
index 783de9536c..05b5b27b7d 100644
--- a/usr/src/man/man3c/stack_inbounds.3c
+++ b/usr/src/man/man3c/stack_inbounds.3c
@@ -34,7 +34,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -52,4 +52,5 @@ MT-Level Async-Signal-Safe
.SH SEE ALSO
.sp
.LP
-\fBstack_getbounds\fR(3C), \fBattributes\fR(5)
+.BR stack_getbounds (3C),
+.BR attributes (7)
diff --git a/usr/src/man/man3c/stack_setbounds.3c b/usr/src/man/man3c/stack_setbounds.3c
index c640989479..b70355d878 100644
--- a/usr/src/man/man3c/stack_setbounds.3c
+++ b/usr/src/man/man3c/stack_setbounds.3c
@@ -61,7 +61,7 @@ are managing their own alternate stacks.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -79,5 +79,9 @@ MT-Level Async-Signal-Safe
.SH SEE ALSO
.sp
.LP
-\fBgetustack\fR(2), \fB_stack_grow\fR(3C), \fBstack_getbounds\fR(3C),
-\fBstack_inbounds\fR(3C), \fBstack_violation\fR(3C), \fBattributes\fR(5)
+.BR getustack (2),
+.BR _stack_grow (3C),
+.BR stack_getbounds (3C),
+.BR stack_inbounds (3C),
+.BR stack_violation (3C),
+.BR attributes (7)
diff --git a/usr/src/man/man3c/stack_violation.3c b/usr/src/man/man3c/stack_violation.3c
index ea27f83a54..02d7639820 100644
--- a/usr/src/man/man3c/stack_violation.3c
+++ b/usr/src/man/man3c/stack_violation.3c
@@ -102,7 +102,7 @@ stack.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -120,5 +120,9 @@ MT-Level Async-Signal-Safe
.SH SEE ALSO
.sp
.LP
-\fBsigaction\fR(2), \fBsigaltstack\fR(2), \fBstack_getbounds\fR(3C),
-\fBstack_inbounds\fR(3C), \fBstack_setbounds\fR(3C), \fBattributes\fR(5)
+.BR sigaction (2),
+.BR sigaltstack (2),
+.BR stack_getbounds (3C),
+.BR stack_inbounds (3C),
+.BR stack_setbounds (3C),
+.BR attributes (7)
diff --git a/usr/src/man/man3c/stdio.3c b/usr/src/man/man3c/stdio.3c
index f7dce6dfa7..541b0e3c20 100644
--- a/usr/src/man/man3c/stdio.3c
+++ b/usr/src/man/man3c/stdio.3c
@@ -116,7 +116,7 @@ than 255 files may be opened using \fBfopen()\fR, and only file descriptors 0
through 255 can be used in a stream. This restriction only holds for the 32-bit
compilation environment. The 64-bit environment may use more streams and the use
of more than 255 may be enabled in a 32-bit environment through the use of
-\fBextendedFILE\fR(5).
+\fBextendedFILE\fR(7).
.sp
.LP
The functions and constants mentioned in the entries of section 3S of this
@@ -337,6 +337,12 @@ error conditions.
\fBferror\fR(3C), \fBfmemopen\fR(3C), \fBfopen\fR(3C), \fBfread\fR(3C),
\fBfseek\fR(3C), \fBflockfile\fR(3C), \fBgetc\fR(3C), \fBgets\fR(3C),
\fBopen_memstream(3C)\fR, \fBopen_wmemstream(3C(\fR, \fBpopen\fR(3C),
-\fBprintf\fR(3C), \fBputc\fR(3C), \fBputs\fR(3C), \fBscanf\fR(3C),
-\fBsetbuf\fR(3C), \fBsystem\fR(3C), \fBtmpfile\fR(3C), \fBtmpnam\fR(3C),
-\fBungetc\fR(3C)
+.BR printf (3C),
+.BR putc (3C),
+.BR puts (3C),
+.BR scanf (3C),
+.BR setbuf (3C),
+.BR system (3C),
+.BR tmpfile (3C),
+.BR tmpnam (3C),
+.BR ungetc (3C)
diff --git a/usr/src/man/man3c/str2sig.3c b/usr/src/man/man3c/str2sig.3c
index addb460957..2c26ef289e 100644
--- a/usr/src/man/man3c/str2sig.3c
+++ b/usr/src/man/man3c/str2sig.3c
@@ -68,4 +68,5 @@ sig2str(9,buf); /* stores "KILL" in buf */
.SH SEE ALSO
.sp
.LP
-\fBkill\fR(1), \fBstrsignal\fR(3C)
+.BR kill (1),
+.BR strsignal (3C)
diff --git a/usr/src/man/man3c/strcoll.3c b/usr/src/man/man3c/strcoll.3c
index ca27166e65..d597b3a6de 100644
--- a/usr/src/man/man3c/strcoll.3c
+++ b/usr/src/man/man3c/strcoll.3c
@@ -106,7 +106,7 @@ collating sequence.
collation database for \fIlocale\fR
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.TS
box;
c | c
@@ -123,6 +123,13 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBlocaledef\fR(1), \fBnewlocale\fR(3C), \fBsetlocale\fR(3C), \fBstring\fR(3C),
-\fBstrxfrm\fR(3C), \fBuselocale\fR(3C),
-\fBwsxfrm\fR(3C), \fBattributes\fR(5), \fBenviron\fR(5), \fBstandards\fR(5)
+.BR localedef (1),
+.BR newlocale (3C),
+.BR setlocale (3C),
+.BR string (3C),
+.BR strxfrm (3C),
+.BR uselocale (3C),
+.BR wsxfrm (3C),
+.BR attributes (7),
+.BR environ (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/strerror.3c b/usr/src/man/man3c/strerror.3c
index 4a79a8aca0..675f2cb7ef 100644
--- a/usr/src/man/man3c/strerror.3c
+++ b/usr/src/man/man3c/strerror.3c
@@ -134,7 +134,7 @@ the \fBLC_MESSAGES\fR locale category. See \fBsetlocale\fR(3C) and
\fBuselocale\fR(3C).
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -151,5 +151,9 @@ MT-Level Safe
.SH SEE ALSO
.LP
-\fBgettext\fR(3C), \fBperror\fR(3C), \fBsetlocale\fR(3C), \fBuselocale\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR gettext (3C),
+.BR perror (3C),
+.BR setlocale (3C),
+.BR uselocale (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/strfmon.3c b/usr/src/man/man3c/strfmon.3c
index 04eb03d384..6af4058cd7 100644
--- a/usr/src/man/man3c/strfmon.3c
+++ b/usr/src/man/man3c/strfmon.3c
@@ -140,7 +140,7 @@ unspecified.
.SH ATTRIBUTES
.LP
See
-.BR attributes (5)
+.BR attributes (7)
for descriptions of the following attributes:
.TS
box;
@@ -159,6 +159,6 @@ MT-Level MT-Safe
.BR setlocale (3C),
.BR uselocale (3C),
.BR locale (3HEAD),
-.BR attributes (5),
-.BR standards (5)
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/strftime.3c b/usr/src/man/man3c/strftime.3c
index 3345563543..d60ae3ed5d 100644
--- a/usr/src/man/man3c/strftime.3c
+++ b/usr/src/man/man3c/strftime.3c
@@ -741,7 +741,7 @@ Thursday, August 28, 1986 at 12:44:36.
.LP
This results in \fIstr\fR containing "Thursday Aug 28 240".
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.TS
box;
c | c
@@ -761,12 +761,21 @@ Standard See below.
The \fBstrftime()\fR and \fBstrftime_l()\fR functions are Standard.
\fBcftime()\fR and \fBascftime()\fR functions are Committed.
.LP
-For \fBstrftime()\fR and \fBstrftime_l()\fR, see \fBstandards\fR(5).
+For \fBstrftime()\fR and \fBstrftime_l()\fR, see \fBstandards\fR(7).
.SH SEE ALSO
-\fBdate\fR(1), \fBctime\fR(3C), \fBmktime\fR(3C),
-\fBnewlocale\fR(3C), \fBsetlocale\fR(3C), \fBstrptime\fR(3C), \fBtzset\fR(3C),
-\fBuselocale\fR(3C), \fBTIMEZONE\fR(4), \fBzoneinfo\fR(4),
-\fBattributes\fR(5), \fBenviron\fR(5), \fBstandards\fR(5)
+.BR date (1),
+.BR ctime (3C),
+.BR mktime (3C),
+.BR newlocale (3C),
+.BR setlocale (3C),
+.BR strptime (3C),
+.BR tzset (3C),
+.BR uselocale (3C),
+.BR TIMEZONE (5),
+.BR zoneinfo (5),
+.BR attributes (7),
+.BR environ (7),
+.BR standards (7)
.SH NOTES
The conversion specification for \fB%V\fR was changed in the Solaris 7 release.
This change was based on the public review draft of the ISO C9x standard at
diff --git a/usr/src/man/man3c/string.3c b/usr/src/man/man3c/string.3c
index 478bbdb4bd..3a7c088825 100644
--- a/usr/src/man/man3c/string.3c
+++ b/usr/src/man/man3c/string.3c
@@ -567,7 +567,7 @@ token = "45"
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.TS
box;
c | c
@@ -590,12 +590,16 @@ The \fBstrtok()\fR, \fBstrdup()\fR, and \fBstrndup()\fR functions are MT-Safe.
The remaining functions are Async-Signal-Safe.
.LP
For all except \fBstrlcat()\fR, \fBstrlcpy()\fR, and \fBstrsep()\fR, see
-\fBstandards\fR(5).
+\fBstandards\fR(7).
.SH SEE ALSO
.LP
-\fBmalloc\fR(3C),
-\fBnewlocale\fR(3C), \fBsetlocale\fR(3C), \fBstrxfrm\fR(3C),
-\fBuselocale\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR malloc (3C),
+.BR newlocale (3C),
+.BR setlocale (3C),
+.BR strxfrm (3C),
+.BR uselocale (3C),
+.BR attributes (7),
+.BR standards (7)
.SH NOTES
.LP
When compiling multithreaded applications, the \fB_REENTRANT\fR flag must be
diff --git a/usr/src/man/man3c/string_to_decimal.3c b/usr/src/man/man3c/string_to_decimal.3c
index 7b0552e454..609c7041ad 100644
--- a/usr/src/man/man3c/string_to_decimal.3c
+++ b/usr/src/man/man3c/string_to_decimal.3c
@@ -259,7 +259,7 @@ stream lock.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -275,6 +275,13 @@ MT-Level MT-Safe with exceptions
.SH SEE ALSO
.sp
.LP
-\fBctype\fR(3C), \fBdecimal_to_floating\fR(3C), \fBgetc_unlocked\fR(3C),
-\fBisspace\fR(3C), \fBlocaleconv\fR(3C), \fBscanf\fR(3C), \fBsetlocale\fR(3C),
-\fBstrtod\fR(3C), \fBungetc\fR(3C), \fBattributes\fR(5)
+.BR ctype (3C),
+.BR decimal_to_floating (3C),
+.BR getc_unlocked (3C),
+.BR isspace (3C),
+.BR localeconv (3C),
+.BR scanf (3C),
+.BR setlocale (3C),
+.BR strtod (3C),
+.BR ungetc (3C),
+.BR attributes (7)
diff --git a/usr/src/man/man3c/strptime.3c b/usr/src/man/man3c/strptime.3c
index 6d889e9fc1..e4933c29ca 100644
--- a/usr/src/man/man3c/strptime.3c
+++ b/usr/src/man/man3c/strptime.3c
@@ -162,7 +162,7 @@ decimal number [1,99]); single digits are preceded by 0. If \fB%C\fR is used
without the \fB%y\fR specifier, \fBstrptime()\fR assumes the year offset is
zero in whichever century is specified. Note the behavior of \fB%C\fR in the
absence of \fB%y\fR is not specified by any of the standards or specifications
-described on the \fBstandards\fR(5) manual page, so portable applications
+described on the \fBstandards\fR(7) manual page, so portable applications
should not depend on it. This behavior may change in a future release.
.RE
@@ -708,7 +708,7 @@ in \fBtm_yday\fR when \fB%j\fR is specified without otherwise specifying a
month and day within month.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.TS
box;
c | c
@@ -721,7 +721,7 @@ Interface Stability See below.
_
MT-Level MT-Safe
_
-Standard See \fBstandards\fR(5) for \fBstrptime()\fR.
+Standard See \fBstandards\fR(7) for \fBstrptime()\fR.
.TE
.LP
@@ -729,8 +729,14 @@ The \fBstrptime()\fR function is Standard. The \fBstrptime_l()\fR function
is Uncommitted.
.SH SEE ALSO
.LP
-\fBctime\fR(3C), \fBgetdate\fR(3C), \fBisspace\fR(3C), \fBmktime\fR(3C),
-\fBnewlocale\fR(3C),
-\fBsetlocale\fR(3C), \fBstrftime\fR(3C), \fBuselocale\fR(3C),
-\fBattributes\fR(5), \fBenviron\fR(5),
-\fBstandards\fR(5)
+.BR ctime (3C),
+.BR getdate (3C),
+.BR isspace (3C),
+.BR mktime (3C),
+.BR newlocale (3C),
+.BR setlocale (3C),
+.BR strftime (3C),
+.BR uselocale (3C),
+.BR attributes (7),
+.BR environ (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/strsignal.3c b/usr/src/man/man3c/strsignal.3c
index c4102d1b91..6c7c447959 100644
--- a/usr/src/man/man3c/strsignal.3c
+++ b/usr/src/man/man3c/strsignal.3c
@@ -34,7 +34,7 @@ the \fBLC_MESSAGES\fR locale category. See \fBsetlocale\fR(3C).
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -50,5 +50,8 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBgettext\fR(3C), \fBpsignal\fR(3C), \fBsetlocale\fR(3C), \fBstr2sig\fR(3C),
-\fBattributes\fR(5)
+.BR gettext (3C),
+.BR psignal (3C),
+.BR setlocale (3C),
+.BR str2sig (3C),
+.BR attributes (7)
diff --git a/usr/src/man/man3c/strtod.3c b/usr/src/man/man3c/strtod.3c
index ac50710053..be6b36d2a9 100644
--- a/usr/src/man/man3c/strtod.3c
+++ b/usr/src/man/man3c/strtod.3c
@@ -309,7 +309,7 @@ The change in behavior is due to the inclusion of floating-point numbers in
hexadecimal notation without requiring that either a decimal point or the
binary exponent be present.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -327,8 +327,14 @@ MT-Level MT-Safe with exceptions
.TE
.SH SEE ALSO
-\fBisspace\fR(3C), \fBlocaleconv\fR(3C), \fBmath.h\fR(3HEAD), \fBscanf\fR(3C),
-\fBsetlocale\fR(3C), \fBstrtol\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR isspace (3C),
+.BR localeconv (3C),
+.BR scanf (3C),
+.BR setlocale (3C),
+.BR strtol (3C),
+.BR math.h (3HEAD),
+.BR attributes (7),
+.BR standards (7)
.SH NOTES
The \fBstrtod()\fR and \fBatof()\fR functions can be used safely in
multithreaded applications, as long as \fBsetlocale\fR(3C) is not called to
diff --git a/usr/src/man/man3c/strtoimax.3c b/usr/src/man/man3c/strtoimax.3c
index 346758b42d..3244bb8e4f 100644
--- a/usr/src/man/man3c/strtoimax.3c
+++ b/usr/src/man/man3c/strtoimax.3c
@@ -109,7 +109,7 @@ The value of \fIbase\fR is not supported.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -127,4 +127,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBstrtol\fR(3C), \fBstrtoul\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR strtol (3C),
+.BR strtoul (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/strtol.3c b/usr/src/man/man3c/strtol.3c
index d3b9f7123f..6655e39fd0 100644
--- a/usr/src/man/man3c/strtol.3c
+++ b/usr/src/man/man3c/strtol.3c
@@ -250,7 +250,7 @@ type.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -272,5 +272,10 @@ The \fBstrtol()\fR, \fBstrtoll()\fR, \fBatol()\fR, \fBatoll()\fR, and
.SH SEE ALSO
.sp
.LP
-\fBisalpha\fR(3C), \fBisspace\fR(3C), \fBscanf\fR(3C), \fBstrtod\fR(3C),
-\fBstrtoul\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR isalpha (3C),
+.BR isspace (3C),
+.BR scanf (3C),
+.BR strtod (3C),
+.BR strtoul (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/strtoul.3c b/usr/src/man/man3c/strtoul.3c
index 77427e9b4c..00c687ab73 100644
--- a/usr/src/man/man3c/strtoul.3c
+++ b/usr/src/man/man3c/strtoul.3c
@@ -181,7 +181,7 @@ just loss of precision if those numbers can ever be negative.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -199,5 +199,10 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBisalpha\fR(3C), \fBisspace\fR(3C), \fBscanf\fR(3C), \fBstrtod\fR(3C),
-\fBstrtol\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR isalpha (3C),
+.BR isspace (3C),
+.BR scanf (3C),
+.BR strtod (3C),
+.BR strtol (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/strtows.3c b/usr/src/man/man3c/strtows.3c
index 90e6577f1d..61b0648c48 100644
--- a/usr/src/man/man3c/strtows.3c
+++ b/usr/src/man/man3c/strtows.3c
@@ -48,4 +48,4 @@ be set to \fBEILSEQ\fR.
.SH SEE ALSO
.sp
.LP
-\fBwstring\fR(3C)
+.BR wstring (3C)
diff --git a/usr/src/man/man3c/strxfrm.3c b/usr/src/man/man3c/strxfrm.3c
index 1e2012f5da..5381406c3e 100644
--- a/usr/src/man/man3c/strxfrm.3c
+++ b/usr/src/man/man3c/strxfrm.3c
@@ -119,7 +119,7 @@ the transformation of the string pointed to by \fIs\fR.
collation database for \fIlocale\fR
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.TS
box;
c | c
@@ -135,6 +135,13 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBlocaledef\fR(1), \fBnewlocale\fR(3C), \fBsetlocale\fR(3C), \fBstrcmp\fR(3C),
-\fBstrcoll\fR(3C), \fBuselocale\fR(3C),
-\fBwscoll\fR(3C), \fBattributes\fR(5), \fBenviron\fR(5), \fBstandards\fR(5)
+.BR localedef (1),
+.BR newlocale (3C),
+.BR setlocale (3C),
+.BR strcmp (3C),
+.BR strcoll (3C),
+.BR uselocale (3C),
+.BR wscoll (3C),
+.BR attributes (7),
+.BR environ (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/swab.3c b/usr/src/man/man3c/swab.3c
index 2c116e57df..212b1057f9 100644
--- a/usr/src/man/man3c/swab.3c
+++ b/usr/src/man/man3c/swab.3c
@@ -79,7 +79,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -97,4 +97,5 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/sync_instruction_memory.3c b/usr/src/man/man3c/sync_instruction_memory.3c
index 4f6c3b7570..665217e96b 100644
--- a/usr/src/man/man3c/sync_instruction_memory.3c
+++ b/usr/src/man/man3c/sync_instruction_memory.3c
@@ -55,7 +55,7 @@ No values are returned.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -71,4 +71,4 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBattributes\fR(5)
+.BR attributes (7)
diff --git a/usr/src/man/man3c/sysconf.3c b/usr/src/man/man3c/sysconf.3c
index 2c5cd02f3a..67a8d16eb5 100644
--- a/usr/src/man/man3c/sysconf.3c
+++ b/usr/src/man/man3c/sysconf.3c
@@ -486,7 +486,7 @@ The value of the \fIname\fR argument is invalid.
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -502,12 +502,18 @@ Interface Stability Committed
_
MT-Level MT-Safe, Async-Signal-Safe
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
-\fBpooladm\fR(1M), \fBzoneadm\fR(1M), \fBfpathconf\fR(2), \fBseteuid\fR(2),
-\fBsetrlimit\fR(2), \fBconfstr\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR fpathconf (2),
+.BR seteuid (2),
+.BR setrlimit (2),
+.BR confstr (3C),
+.BR attributes (7),
+.BR standards (7),
+.BR pooladm (8),
+.BR zoneadm (8)
.SH NOTES
A call to \fBsetrlimit()\fR can cause the value of \fBOPEN_MAX\fR to change.
.sp
diff --git a/usr/src/man/man3c/syslog.3c b/usr/src/man/man3c/syslog.3c
index 6bfe07190c..28b20b5a53 100644
--- a/usr/src/man/man3c/syslog.3c
+++ b/usr/src/man/man3c/syslog.3c
@@ -61,7 +61,7 @@ syslog, openlog, closelog, setlogmask \- control system log
.SH DESCRIPTION
.LP
-The \fBsyslog()\fR function sends a message to \fBsyslogd\fR(1M), which,
+The \fBsyslog()\fR function sends a message to \fBsyslogd\fR(8), which,
depending on the configuration of \fB/etc/syslog.conf\fR, logs it in an
appropriate system log, writes it to the system console, forwards it to a list
of users, or forwards it to \fBsyslogd\fR on another host over the network.
@@ -212,7 +212,7 @@ System daemons.
.ad
.RS 14n
The authentication / security / authorization system: \fBlogin\fR(1),
-\fBsu\fR(1M), \fBgetty\fR(1M).
+\fBsu\fR(8), \fBgetty\fR(8).
.RE
.sp
@@ -249,7 +249,7 @@ Designated for the \fBUUCP\fR system; it does not currently use \fBsyslog()\fR.
.ad
.RS 14n
The \fBcron\fR/\fBat\fR facility; \fBcrontab\fR(1), \fBat\fR(1),
-\fBcron\fR(1M).
+\fBcron\fR(8).
.RE
.sp
@@ -258,7 +258,7 @@ The \fBcron\fR/\fBat\fR facility; \fBcrontab\fR(1), \fBat\fR(1),
\fB\fBLOG_AUDIT\fR\fR
.ad
.RS 14n
-The audit facility, for example, \fBauditd\fR(1M).
+The audit facility, for example, \fBauditd\fR(8).
.RE
.sp
@@ -358,7 +358,7 @@ specific daemon processes (for daemons that fork).
.ad
.RS 14n
Write messages to the system console if they cannot be sent to
-\fBsyslogd\fR(1M). This option is safe to use in daemon processes that have no
+\fBsyslogd\fR(8). This option is safe to use in daemon processes that have no
controlling terminal, since \fBsyslog()\fR forks before opening the console.
.RE
@@ -368,7 +368,7 @@ controlling terminal, since \fBsyslog()\fR forks before opening the console.
\fB\fBLOG_NDELAY\fR\fR
.ad
.RS 14n
-Open the connection to \fBsyslogd\fR(1M) immediately. Normally the open is
+Open the connection to \fBsyslogd\fR(8) immediately. Normally the open is
delayed until the first message is logged. This is useful for programs that
need to manage the order in which file descriptors are allocated.
.RE
@@ -444,7 +444,7 @@ This call logs a message at priority \fBLOG_ALERT\fR:
.LP
The \fBFTP\fR daemon \fBftpd\fR would make this call to \fBopenlog()\fR to
indicate that all messages it logs should have an identifying string of
-\fBftpd\fR, should be treated by \fBsyslogd\fR(1M) as other messages from
+\fBftpd\fR, should be treated by \fBsyslogd\fR(8) as other messages from
system daemons are, should include the process \fBID\fR of the process logging
the message:
@@ -486,7 +486,7 @@ call to \fBsyslog\fR:
.sp
.LP
A locally-written utility could use the following call to \fBsyslog()\fR to log
-a message at priority \fBLOG_INFO\fR to be treated by \fBsyslogd\fR(1M) as
+a message at priority \fBLOG_INFO\fR to be treated by \fBsyslogd\fR(8) as
other messages to the facility \fBLOG_LOCAL2\fR are:
.sp
@@ -499,7 +499,7 @@ other messages to the facility \fBLOG_LOCAL2\fR are:
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -513,12 +513,23 @@ Interface Stability Committed
_
MT-Level Safe
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.LP
-\fBat\fR(1), \fBcrontab\fR(1), \fBlogger\fR(1), \fBlogin\fR(1), \fBlpc\fR(1B),
-\fBlpr\fR(1B), \fBauditd\fR(1M), \fBcron\fR(1M), \fBgetty\fR(1M),
-\fBsu\fR(1M), \fBsyslogd\fR(1M), \fBprintf\fR(3C),
-\fBsyslog.conf\fR(4), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR at (1),
+.BR crontab (1),
+.BR logger (1),
+.BR login (1),
+.BR lpc (1B),
+.BR lpr (1B),
+.BR printf (3C),
+.BR syslog.conf (5),
+.BR attributes (7),
+.BR standards (7),
+.BR auditd (8),
+.BR cron (8),
+.BR getty (8),
+.BR su (8),
+.BR syslogd (8)
diff --git a/usr/src/man/man3c/system.3c b/usr/src/man/man3c/system.3c
index 349e6519eb..d4861a82bb 100644
--- a/usr/src/man/man3c/system.3c
+++ b/usr/src/man/man3c/system.3c
@@ -139,7 +139,7 @@ See \fBpopen\fR(3C) for an alternative to \fBsystem()\fR that is thread-safe.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -157,5 +157,11 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBksh\fR(1), \fBsh\fR(1), \fBpopen\fR(3C), \fBposix_spawn\fR(3C),
-\fBwait\fR(3C), \fBwaitpid\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR ksh (1),
+.BR sh (1),
+.BR popen (3C),
+.BR posix_spawn (3C),
+.BR wait (3C),
+.BR waitpid (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/tcdrain.3c b/usr/src/man/man3c/tcdrain.3c
index 06add7d9e6..27ff9cd36c 100644
--- a/usr/src/man/man3c/tcdrain.3c
+++ b/usr/src/man/man3c/tcdrain.3c
@@ -119,7 +119,7 @@ is not ignoring or blocking \fBSIGTTOU\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -137,4 +137,7 @@ MT-Level MT-Safe, and Async-Signal-Safe
.SH SEE ALSO
.sp
.LP
-\fBtcflush\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5), \fBtermio\fR(7I)
+.BR tcflush (3C),
+.BR termio (4I),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/tcflow.3c b/usr/src/man/man3c/tcflow.3c
index 05253e73bf..98cc2297e3 100644
--- a/usr/src/man/man3c/tcflow.3c
+++ b/usr/src/man/man3c/tcflow.3c
@@ -151,7 +151,7 @@ is not ignoring or blocking \fBSIGTTOU\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -169,5 +169,7 @@ MT-Level MT-Safe, and Async-Signal-Safe
.SH SEE ALSO
.sp
.LP
-\fBtcsendbreak\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5),
-\fBtermio\fR(7I)
+.BR tcsendbreak (3C),
+.BR termio (4I),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/tcflush.3c b/usr/src/man/man3c/tcflush.3c
index 0926ff4c0d..342387d8a0 100644
--- a/usr/src/man/man3c/tcflush.3c
+++ b/usr/src/man/man3c/tcflush.3c
@@ -141,7 +141,7 @@ is not ignoring or blocking \fBSIGTTOU\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -159,4 +159,7 @@ MT-Level MT-Safe, and Async-Signal-Safe
.SH SEE ALSO
.sp
.LP
-\fBtcdrain\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5), \fBtermio\fR(7I)
+.BR tcdrain (3C),
+.BR termio (4I),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/tcgetattr.3c b/usr/src/man/man3c/tcgetattr.3c
index 5d567e359a..3334e68880 100644
--- a/usr/src/man/man3c/tcgetattr.3c
+++ b/usr/src/man/man3c/tcgetattr.3c
@@ -59,7 +59,7 @@ tcgetattr \- get the parameters associated with the terminal
.LP
The \fBtcgetattr()\fR function gets the parameters associated with the terminal
referred to by \fIfildes\fR and stores them in the \fBtermios\fR structure (see
-\fBtermio\fR(7I)) referenced by \fItermios_p\fR. The \fIfildes\fR argument is
+\fBtermio\fR(4I)) referenced by \fItermios_p\fR. The \fIfildes\fR argument is
an open file descriptor associated with a terminal.
.sp
.LP
@@ -105,7 +105,7 @@ The file associated with \fIfildes\fR is not a terminal.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -123,4 +123,7 @@ MT-Level MT-Safe, and Async-Signal-Safe
.SH SEE ALSO
.sp
.LP
-\fBtcsetattr\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5), \fBtermio\fR(7I)
+.BR tcsetattr (3C),
+.BR termio (4I),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/tcgetpgrp.3c b/usr/src/man/man3c/tcgetpgrp.3c
index 0c8936e6fb..0a36d3af17 100644
--- a/usr/src/man/man3c/tcgetpgrp.3c
+++ b/usr/src/man/man3c/tcgetpgrp.3c
@@ -103,7 +103,7 @@ the controlling terminal.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -121,5 +121,9 @@ MT-Level MT-Safe, and Async-Signal-Safe
.SH SEE ALSO
.sp
.LP
-\fBsetpgid\fR(2), \fBsetsid\fR(2), \fBtcsetpgrp\fR(3C), \fBattributes\fR(5),
-\fBstandards\fR(5), \fBtermio\fR(7I)
+.BR setpgid (2),
+.BR setsid (2),
+.BR tcsetpgrp (3C),
+.BR termio (4I),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/tcgetsid.3c b/usr/src/man/man3c/tcgetsid.3c
index 55f1a45948..9d1abb16b1 100644
--- a/usr/src/man/man3c/tcgetsid.3c
+++ b/usr/src/man/man3c/tcgetsid.3c
@@ -99,7 +99,7 @@ The file associated with \fIfildes\fR is not a terminal.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -117,4 +117,6 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBattributes\fR(5), \fBstandards\fR(5), \fBtermio\fR(7I)
+.BR termio (4I),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/tcsendbreak.3c b/usr/src/man/man3c/tcsendbreak.3c
index 88ce6c5f67..f3393f6111 100644
--- a/usr/src/man/man3c/tcsendbreak.3c
+++ b/usr/src/man/man3c/tcsendbreak.3c
@@ -121,7 +121,7 @@ is not ignoring or blocking \fBSIGTTOU\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -139,4 +139,7 @@ MT-Level MT-Safe, and Async-Signal-Safe
.SH SEE ALSO
.sp
.LP
-\fBtcdrain\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5), \fBtermio\fR(7I)
+.BR tcdrain (3C),
+.BR termio (4I),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/tcsetattr.3c b/usr/src/man/man3c/tcsetattr.3c
index 7023349a21..1bc43918c0 100644
--- a/usr/src/man/man3c/tcsetattr.3c
+++ b/usr/src/man/man3c/tcsetattr.3c
@@ -61,7 +61,7 @@ tcsetattr \- set the parameters associated with the terminal
The \fBtcsetattr()\fR function sets the parameters associated with the terminal
referred to by the open file descriptor \fIfildes\fR (an open file descriptor
associated with a terminal) from the \fBtermios\fR structure (see
-\fBtermio\fR(7I)) referenced by \fItermios_p\fR as follows:
+\fBtermio\fR(4I)) referenced by \fItermios_p\fR as follows:
.RS +4
.TP
.ie t \(bu
@@ -198,7 +198,7 @@ is not ignoring or blocking \fBSIGTTOU\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -216,5 +216,8 @@ MT-Level MT-Safe, and Async-Signal-Safe
.SH SEE ALSO
.sp
.LP
-\fBcfgetispeed\fR(3C), \fBtcgetattr\fR(3C), \fBattributes\fR(5),
-\fBstandards\fR(5), \fBtermio\fR(7I)
+.BR cfgetispeed (3C),
+.BR tcgetattr (3C),
+.BR termio (4I),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/tcsetpgrp.3c b/usr/src/man/man3c/tcsetpgrp.3c
index a0be04d22a..b919d8a45b 100644
--- a/usr/src/man/man3c/tcsetpgrp.3c
+++ b/usr/src/man/man3c/tcsetpgrp.3c
@@ -127,7 +127,7 @@ process in the same session as the calling process.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -145,4 +145,7 @@ MT-Level MT-Safe, and Async-Signal-Safe
.SH SEE ALSO
.sp
.LP
-\fBtcgetpgrp\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5), \fBtermio\fR(7I)
+.BR tcgetpgrp (3C),
+.BR termio (4I),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/tell.3c b/usr/src/man/man3c/tell.3c
index c5bb2f33b7..998b15a369 100644
--- a/usr/src/man/man3c/tell.3c
+++ b/usr/src/man/man3c/tell.3c
@@ -68,7 +68,7 @@ SEEK_CUR)\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -84,4 +84,5 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBlseek\fR(2), \fBattributes\fR(5)
+.BR lseek (2),
+.BR attributes (7)
diff --git a/usr/src/man/man3c/telldir.3c b/usr/src/man/man3c/telldir.3c
index c5eb1df9f8..231f452670 100644
--- a/usr/src/man/man3c/telldir.3c
+++ b/usr/src/man/man3c/telldir.3c
@@ -86,7 +86,7 @@ The current location of the directory cannot be stored in an object of type
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -104,5 +104,8 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBopendir\fR(3C), \fBreaddir\fR(3C), \fBseekdir\fR(3C), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR opendir (3C),
+.BR readdir (3C),
+.BR seekdir (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/termios.3c b/usr/src/man/man3c/termios.3c
index b410868e6d..ee4e8303d6 100644
--- a/usr/src/man/man3c/termios.3c
+++ b/usr/src/man/man3c/termios.3c
@@ -83,7 +83,7 @@ termios \- general terminal interface
.LP
These functions describe a general terminal interface for controlling
asynchronous communications ports. A more detailed overview of the terminal
-interface can be found in \fBtermio\fR(7I), which also describes an
+interface can be found in \fBtermio\fR(4I), which also describes an
\fBioctl\fR(2) interface that provides the same functionality. However, the
function interface described by these functions is the preferred user
interface.
@@ -93,8 +93,19 @@ Each of these functions is now described on a separate manual page.
.SH SEE ALSO
.sp
.LP
-\fBioctl\fR(2), \fBcfgetispeed\fR(3C), \fBcfgetospeed\fR(3C),
-\fBcfsetispeed\fR(3C), \fBcfsetospeed\fR(3C), \fBtcdrain\fR(3C),
-\fBtcflow\fR(3C), \fBtcflush\fR(3C), \fBtcgetattr\fR(3C), \fBtcgetpgrp\fR(3C),
-\fBtcgetsid\fR(3C), \fBtcsendbreak\fR(3C), \fBtcsetattr\fR(3C),
-\fBtcgetpgrp\fR(3C), \fBtcsendbreak\fR(3C), \fBtermio\fR(7I)
+.BR ioctl (2),
+.BR cfgetispeed (3C),
+.BR cfgetospeed (3C),
+.BR cfsetispeed (3C),
+.BR cfsetospeed (3C),
+.BR tcdrain (3C),
+.BR tcflow (3C),
+.BR tcflush (3C),
+.BR tcgetattr (3C),
+.BR tcgetpgrp (3C),
+.BR tcgetpgrp (3C),
+.BR tcgetsid (3C),
+.BR tcsendbreak (3C),
+.BR tcsendbreak (3C),
+.BR tcsetattr (3C),
+.BR termio (4I)
diff --git a/usr/src/man/man3c/thr_create.3c b/usr/src/man/man3c/thr_create.3c
index 77337905d0..d1c1498cb7 100644
--- a/usr/src/man/man3c/thr_create.3c
+++ b/usr/src/man/man3c/thr_create.3c
@@ -393,7 +393,7 @@ error = thr_create(NULL, 0, do_func, NULL, 0, &tid);
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -409,10 +409,19 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBexit\fR(2), \fBgetrlimit\fR(2), \fBmmap\fR(2), \fBexit\fR(3C),
-\fBsleep\fR(3C), \fBthr_exit\fR(3C), \fBthr_join\fR(3C),
-\fBthr_min_stack\fR(3C), \fBthr_setconcurrency\fR(3C), \fBthr_suspend\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5), \fBthreads\fR(5)
+.BR exit (2),
+.BR getrlimit (2),
+.BR mmap (2),
+.BR exit (3C),
+.BR sleep (3C),
+.BR thr_exit (3C),
+.BR thr_join (3C),
+.BR thr_min_stack (3C),
+.BR thr_setconcurrency (3C),
+.BR thr_suspend (3C),
+.BR attributes (7),
+.BR standards (7),
+.BR threads (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3c/thr_exit.3c b/usr/src/man/man3c/thr_exit.3c
index 7f1031e339..8fd88c469d 100644
--- a/usr/src/man/man3c/thr_exit.3c
+++ b/usr/src/man/man3c/thr_exit.3c
@@ -122,7 +122,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -138,8 +138,12 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBexit\fR(3C), \fBthr_create\fR(3C), \fBthr_join\fR(3C),
-\fBthr_keycreate\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR exit (3C),
+.BR thr_create (3C),
+.BR thr_join (3C),
+.BR thr_keycreate (3C),
+.BR attributes (7),
+.BR standards (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3c/thr_getconcurrency.3c b/usr/src/man/man3c/thr_getconcurrency.3c
index 65ca61d914..4bb0f044ad 100644
--- a/usr/src/man/man3c/thr_getconcurrency.3c
+++ b/usr/src/man/man3c/thr_getconcurrency.3c
@@ -65,7 +65,7 @@ The value for \fInew_level\fR is negative.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -81,4 +81,6 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBthr_create\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR thr_create (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/thr_getprio.3c b/usr/src/man/man3c/thr_getprio.3c
index e695527bbd..25c28fdab9 100644
--- a/usr/src/man/man3c/thr_getprio.3c
+++ b/usr/src/man/man3c/thr_getprio.3c
@@ -124,7 +124,7 @@ value specified.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -140,6 +140,11 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBpriocntl\fR(2), \fBpthread_setschedprio\fR(3C), \fBsched_setparam\fR(3C),
-\fBthr_create\fR(3C), \fBthr_suspend\fR(3C), \fBthr_yield\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR priocntl (2),
+.BR pthread_setschedprio (3C),
+.BR sched_setparam (3C),
+.BR thr_create (3C),
+.BR thr_suspend (3C),
+.BR thr_yield (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/thr_join.3c b/usr/src/man/man3c/thr_join.3c
index b7da329708..0f3cf01d06 100644
--- a/usr/src/man/man3c/thr_join.3c
+++ b/usr/src/man/man3c/thr_join.3c
@@ -117,7 +117,7 @@ No undetached thread could be found corresponding to the given thread ID.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -133,8 +133,11 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBthr_create\fR(3C), \fBthr_exit\fR(3C), \fBwait\fR(3C), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR thr_create (3C),
+.BR thr_exit (3C),
+.BR wait (3C),
+.BR attributes (7),
+.BR standards (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3c/thr_keycreate.3c b/usr/src/man/man3c/thr_keycreate.3c
index afaa1ad9d5..5e3b646704 100644
--- a/usr/src/man/man3c/thr_keycreate.3c
+++ b/usr/src/man/man3c/thr_keycreate.3c
@@ -259,7 +259,7 @@ cleanup(void *v) {
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -277,8 +277,10 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBpthread_once\fR(3C), \fBthr_exit\fR(3C), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR pthread_once (3C),
+.BR thr_exit (3C),
+.BR attributes (7),
+.BR standards (7)
.SH WARNINGS
.sp
.LP
diff --git a/usr/src/man/man3c/thr_kill.3c b/usr/src/man/man3c/thr_kill.3c
index 794e63f88b..2b6830d32a 100644
--- a/usr/src/man/man3c/thr_kill.3c
+++ b/usr/src/man/man3c/thr_kill.3c
@@ -99,7 +99,7 @@ ID.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -115,5 +115,10 @@ MT-Level Async-Signal-Safe
.SH SEE ALSO
.sp
.LP
-\fBkill\fR(2), \fBsigaction\fR(2), \fBraise\fR(3C), \fBsignal.h\fR(3HEAD),
-\fBthr_self\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR kill (2),
+.BR sigaction (2),
+.BR raise (3C),
+.BR thr_self (3C),
+.BR signal.h (3HEAD),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/thr_main.3c b/usr/src/man/man3c/thr_main.3c
index ac6da4e0c2..072cbc23d4 100644
--- a/usr/src/man/man3c/thr_main.3c
+++ b/usr/src/man/man3c/thr_main.3c
@@ -59,7 +59,7 @@ if \fBlibthread\fR is not linked in or thread initialization has not completed
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -75,4 +75,5 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBthr_self\fR(3C), \fBattributes\fR(5)
+.BR thr_self (3C),
+.BR attributes (7)
diff --git a/usr/src/man/man3c/thr_min_stack.3c b/usr/src/man/man3c/thr_min_stack.3c
index 252fc81551..839847a89e 100644
--- a/usr/src/man/man3c/thr_min_stack.3c
+++ b/usr/src/man/man3c/thr_min_stack.3c
@@ -67,7 +67,7 @@ main(\|) {
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -82,4 +82,5 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/thr_self.3c b/usr/src/man/man3c/thr_self.3c
index 8f846bcca1..fd88e6bc19 100644
--- a/usr/src/man/man3c/thr_self.3c
+++ b/usr/src/man/man3c/thr_self.3c
@@ -72,7 +72,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -88,4 +88,6 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBthr_create\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR thr_create (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/thr_sigsetmask.3c b/usr/src/man/man3c/thr_sigsetmask.3c
index 889db7f357..fd0be5381d 100644
--- a/usr/src/man/man3c/thr_sigsetmask.3c
+++ b/usr/src/man/man3c/thr_sigsetmask.3c
@@ -323,7 +323,7 @@ thread can be used by passing the argument \fBTHR_DAEMON\fR to
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -338,17 +338,27 @@ MT-Level MT-Safe and Async-Signal-Safe
.SH SEE ALSO
.LP
-\fBsigaction\fR(2), \fBsigprocmask\fR(2), \fBsigwait\fR(2),
-\fBcond_wait\fR(3C), \fBpthread_cancel\fR(3C), \fBpthread_create\fR(3C),
-\fBpthread_join\fR(3C), \fBpthread_self\fR(3C), \fBsigaddset\fR(3C),
-\fBsigemptyset\fR(3C), \fBsigsetops\fR(3C), \fBsleep\fR(3C),
-\fBattributes\fR(5), \fBcancellation\fR(5), \fBstandards\fR(5)
+.BR sigaction (2),
+.BR sigprocmask (2),
+.BR sigwait (2),
+.BR cond_wait (3C),
+.BR pthread_cancel (3C),
+.BR pthread_create (3C),
+.BR pthread_join (3C),
+.BR pthread_self (3C),
+.BR sigaddset (3C),
+.BR sigemptyset (3C),
+.BR sigsetops (3C),
+.BR sleep (3C),
+.BR attributes (7),
+.BR cancellation (7),
+.BR standards (7)
.SH NOTES
.LP
It is not possible to block signals that cannot be caught or ignored (see
\fBsigaction\fR(2)). It is also not possible to block or unblock
\fBSIGCANCEL\fR, as \fBSIGCANCEL\fR is reserved for the implementation of POSIX
-thread cancellation (see \fBpthread_cancel\fR(3C) and \fBcancellation\fR(5)).
+thread cancellation (see \fBpthread_cancel\fR(3C) and \fBcancellation\fR(7)).
This restriction is quietly enforced by the standard C library.
.sp
.LP
diff --git a/usr/src/man/man3c/thr_stksegment.3c b/usr/src/man/man3c/thr_stksegment.3c
index 8bf64d0082..7200c774e8 100644
--- a/usr/src/man/man3c/thr_stksegment.3c
+++ b/usr/src/man/man3c/thr_stksegment.3c
@@ -68,7 +68,7 @@ initialization is not yet complete, or the thread is an internal thread.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -84,4 +84,6 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBsigaltstack\fR(2), \fBthr_create\fR(3C), \fBattributes\fR(5)
+.BR sigaltstack (2),
+.BR thr_create (3C),
+.BR attributes (7)
diff --git a/usr/src/man/man3c/thr_suspend.3c b/usr/src/man/man3c/thr_suspend.3c
index 59dedbd146..892c410a5a 100644
--- a/usr/src/man/man3c/thr_suspend.3c
+++ b/usr/src/man/man3c/thr_suspend.3c
@@ -60,7 +60,7 @@ The \fItarget_thread\fR cannot be found in the current process.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -76,8 +76,10 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBthr_create\fR(3C), \fBthr_join\fR(3C), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR thr_create (3C),
+.BR thr_join (3C),
+.BR attributes (7),
+.BR standards (7)
.SH WARNINGS
.sp
.LP
diff --git a/usr/src/man/man3c/thr_yield.3c b/usr/src/man/man3c/thr_yield.3c
index 7368475f98..8a05bd3d9f 100644
--- a/usr/src/man/man3c/thr_yield.3c
+++ b/usr/src/man/man3c/thr_yield.3c
@@ -27,7 +27,7 @@ The \fBthr_yield()\fR function returns nothing and does not set \fBerrno\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -43,4 +43,6 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBthr_setprio\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR thr_setprio (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/thrd_create.3c b/usr/src/man/man3c/thrd_create.3c
index 8bf799cb3e..20c128d48e 100644
--- a/usr/src/man/man3c/thrd_create.3c
+++ b/usr/src/man/man3c/thrd_create.3c
@@ -87,5 +87,5 @@ is returned, indicating that a non-memory related error.
.Xr thr_create 3C ,
.Xr thrd_detach 3C ,
.Xr thrd_join 3C ,
-.Xr attributes 5 ,
-.Xr threads 5
+.Xr attributes 7 ,
+.Xr threads 7
diff --git a/usr/src/man/man3c/thrd_current.3c b/usr/src/man/man3c/thrd_current.3c
index 6b4fc3e53d..8fdb5ae0db 100644
--- a/usr/src/man/man3c/thrd_current.3c
+++ b/usr/src/man/man3c/thrd_current.3c
@@ -42,5 +42,5 @@ No errors are defined.
.Xr pthread_self 3C ,
.Xr thr_self 3C ,
.Xr thrd_create 3C ,
-.Xr attributes 5 ,
-.Xr threads 5
+.Xr attributes 7 ,
+.Xr threads 7
diff --git a/usr/src/man/man3c/thrd_detach.3c b/usr/src/man/man3c/thrd_detach.3c
index 502032b1be..231eff1fc1 100644
--- a/usr/src/man/man3c/thrd_detach.3c
+++ b/usr/src/man/man3c/thrd_detach.3c
@@ -54,5 +54,5 @@ indicating that an error has occurred.
.Xr pthread_detach 3C ,
.Xr thrd_create 3C ,
.Xr thrd_join 3C ,
-.Xr attributes 5 ,
-.Xr threads 5
+.Xr attributes 7 ,
+.Xr threads 7
diff --git a/usr/src/man/man3c/thrd_equal.3c b/usr/src/man/man3c/thrd_equal.3c
index 28c6baeb1f..c46b6f3fd8 100644
--- a/usr/src/man/man3c/thrd_equal.3c
+++ b/usr/src/man/man3c/thrd_equal.3c
@@ -54,5 +54,5 @@ are different threads.
.Sh MT-LEVEL
.Sy MT-Safe
.Sh SEE ALSO
-.Xr attributes 5 ,
-.Xr threads 5
+.Xr attributes 7 ,
+.Xr threads 7
diff --git a/usr/src/man/man3c/thrd_exit.3c b/usr/src/man/man3c/thrd_exit.3c
index 58a91a6475..9790528317 100644
--- a/usr/src/man/man3c/thrd_exit.3c
+++ b/usr/src/man/man3c/thrd_exit.3c
@@ -60,6 +60,6 @@ function does not return, the calling thread is terminated.
.Sh SEE ALSO
.Xr pthread_exit 3C ,
.Xr thr_exit 3C ,
-.Xr attributes 5 ,
-.Xr attributes 5 ,
-.Xr threads 5
+.Xr attributes 7 ,
+.Xr attributes 7 ,
+.Xr threads 7
diff --git a/usr/src/man/man3c/thrd_join.3c b/usr/src/man/man3c/thrd_join.3c
index b474f2f183..5913a0444f 100644
--- a/usr/src/man/man3c/thrd_join.3c
+++ b/usr/src/man/man3c/thrd_join.3c
@@ -79,5 +79,5 @@ will be returned.
.Xr pthread_join 3C ,
.Xr thrd_create 3C ,
.Xr thrd_detach 3C ,
-.Xr attributes 5 ,
-.Xr threads 5
+.Xr attributes 7 ,
+.Xr threads 7
diff --git a/usr/src/man/man3c/thrd_yield.3c b/usr/src/man/man3c/thrd_yield.3c
index a37ca39007..7ac68cdf55 100644
--- a/usr/src/man/man3c/thrd_yield.3c
+++ b/usr/src/man/man3c/thrd_yield.3c
@@ -34,5 +34,5 @@ threads with the same or greater priority to run.
.Sy MT-Safe
.Sh SEE ALSO
.Xr yield 2 ,
-.Xr attributes 5 ,
-.Xr threads 5
+.Xr attributes 7 ,
+.Xr threads 7
diff --git a/usr/src/man/man3c/timer_create.3c b/usr/src/man/man3c/timer_create.3c
index b02cc7e6ef..f65483c825 100644
--- a/usr/src/man/man3c/timer_create.3c
+++ b/usr/src/man/man3c/timer_create.3c
@@ -139,7 +139,7 @@ The specified clock \fBID\fR, \fIclock_id\fR, is not defined.
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -153,10 +153,17 @@ Interface Stability Committed
_
MT-Level MT-Safe with exceptions
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
-\fBexec\fR(2), \fBfork\fR(2), \fBtime\fR(2), \fBclock_settime\fR(3C),
-\fBsignal\fR(3C), \fBsignal.h\fR(3HEAD), \fBtimer_delete\fR(3C),
-\fBtimer_settime\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR exec (2),
+.BR fork (2),
+.BR time (2),
+.BR clock_settime (3C),
+.BR signal (3C),
+.BR timer_delete (3C),
+.BR timer_settime (3C),
+.BR signal.h (3HEAD),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/timer_delete.3c b/usr/src/man/man3c/timer_delete.3c
index 19c76793ce..d219613541 100644
--- a/usr/src/man/man3c/timer_delete.3c
+++ b/usr/src/man/man3c/timer_delete.3c
@@ -93,7 +93,7 @@ The \fBtimer_delete()\fR function is not supported by the system.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -107,10 +107,12 @@ Interface Stability Committed
_
MT-Level MT-Safe with exceptions
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.sp
.LP
-\fBtimer_create\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR timer_create (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/timer_settime.3c b/usr/src/man/man3c/timer_settime.3c
index 3813a9d86d..2cd7b79bac 100644
--- a/usr/src/man/man3c/timer_settime.3c
+++ b/usr/src/man/man3c/timer_settime.3c
@@ -183,7 +183,7 @@ than or equal to 1000 million.
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -197,10 +197,14 @@ Interface Stability Committed
_
MT-Level Async-Signal-Safe
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
-\fBtime.h\fR(3HEAD), \fBclock_settime\fR(3C), \fBtimer_create\fR(3C),
-\fBtimer_delete\fR(3C), \fBattributes\fR(5), \fBprivileges\fR(5),
-\fBstandards\fR(5)
+.BR clock_settime (3C),
+.BR timer_create (3C),
+.BR timer_delete (3C),
+.BR time.h (3HEAD),
+.BR attributes (7),
+.BR privileges (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/timeradd.3c b/usr/src/man/man3c/timeradd.3c
index 3cd6a6e3f8..bdef432e4a 100644
--- a/usr/src/man/man3c/timeradd.3c
+++ b/usr/src/man/man3c/timeradd.3c
@@ -84,7 +84,7 @@ expressions with side effects, the results are undefined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -102,4 +102,5 @@ MT-Level MT-Safe with Exceptions
.SH SEE ALSO
.sp
.LP
-\fBgettimeofday\fR(3C), \fBattributes\fR(5)
+.BR gettimeofday (3C),
+.BR attributes (7)
diff --git a/usr/src/man/man3c/timerfd_create.3c b/usr/src/man/man3c/timerfd_create.3c
index 16bd2cefcd..b453f90e16 100644
--- a/usr/src/man/man3c/timerfd_create.3c
+++ b/usr/src/man/man3c/timerfd_create.3c
@@ -199,5 +199,5 @@ is not asserted in the effective set of the calling process.
.Xr timer_create 3C ,
.Xr timer_gettime 3C ,
.Xr timer_settime 3C ,
-.Xr privileges 5 ,
-.Xr timerfd 5
+.Xr privileges 7 ,
+.Xr timerfd 7
diff --git a/usr/src/man/man3c/timespec_get.3c b/usr/src/man/man3c/timespec_get.3c
index 532af5ce3c..3e8274ec94 100644
--- a/usr/src/man/man3c/timespec_get.3c
+++ b/usr/src/man/man3c/timespec_get.3c
@@ -79,4 +79,4 @@ There was an error obtaining the time for
.Sh SEE ALSO
.Xr clock_gettime 3C ,
.Xr time.h 3HEAD ,
-.Xr attributes 5
+.Xr attributes 7
diff --git a/usr/src/man/man3c/tmpfile.3c b/usr/src/man/man3c/tmpfile.3c
index b26e8c9184..9820c199fc 100644
--- a/usr/src/man/man3c/tmpfile.3c
+++ b/usr/src/man/man3c/tmpfile.3c
@@ -144,11 +144,11 @@ behind.
.sp
.LP
The \fBtmpfile()\fR function has a transitional interface for 64-bit file
-offsets. See \fBlf64\fR(5).
+offsets. See \fBlf64\fR(7).
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -164,5 +164,10 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBunlink\fR(2), \fBfopen\fR(3C), \fBmkstemp\fR(3C), \fBmktemp\fR(3C),
-\fBtmpnam\fR(3C), \fBlf64\fR(5), \fBstandards\fR(5)
+.BR unlink (2),
+.BR fopen (3C),
+.BR mkstemp (3C),
+.BR mktemp (3C),
+.BR tmpnam (3C),
+.BR lf64 (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/tmpnam.3c b/usr/src/man/man3c/tmpnam.3c
index 4d90a6e285..024a867a40 100644
--- a/usr/src/man/man3c/tmpnam.3c
+++ b/usr/src/man/man3c/tmpnam.3c
@@ -120,7 +120,7 @@ applications.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -138,6 +138,13 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBcreat\fR(2), \fBunlink\fR(2), \fBfopen\fR(3C), \fBfree\fR(3C),
-\fBmalloc\fR(3C), \fBmktemp\fR(3C), \fBmkstemp\fR(3C), \fBtmpfile\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR creat (2),
+.BR unlink (2),
+.BR fopen (3C),
+.BR free (3C),
+.BR malloc (3C),
+.BR mkstemp (3C),
+.BR mktemp (3C),
+.BR tmpfile (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/toascii.3c b/usr/src/man/man3c/toascii.3c
index f96e295041..935c7d408f 100644
--- a/usr/src/man/man3c/toascii.3c
+++ b/usr/src/man/man3c/toascii.3c
@@ -30,7 +30,7 @@ No errors are returned.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -50,4 +50,6 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBisascii\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR isascii (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/tolower.3c b/usr/src/man/man3c/tolower.3c
index 6a682b9b69..b600207a83 100644
--- a/usr/src/man/man3c/tolower.3c
+++ b/usr/src/man/man3c/tolower.3c
@@ -48,7 +48,7 @@ unchanged.
No errors are defined.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.TS
box;
c | c
@@ -64,5 +64,8 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBnewlocale\fR(3C), \fBsetlocale\fR(3C),
-\fBuselocale\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR newlocale (3C),
+.BR setlocale (3C),
+.BR uselocale (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/toupper.3c b/usr/src/man/man3c/toupper.3c
index daae48b4bf..08b08fcc86 100644
--- a/usr/src/man/man3c/toupper.3c
+++ b/usr/src/man/man3c/toupper.3c
@@ -46,7 +46,7 @@ corresponding to the argument passed.
No errors are defined.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.TS
box;
c | c
@@ -62,6 +62,8 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBnewlocale\fR(3C), \fBsetlocale\fR(3C),
-\fBuselocale\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR newlocale (3C),
+.BR setlocale (3C),
+.BR uselocale (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/towlower.3c b/usr/src/man/man3c/towlower.3c
index f642d222a0..53ee894611 100644
--- a/usr/src/man/man3c/towlower.3c
+++ b/usr/src/man/man3c/towlower.3c
@@ -72,4 +72,4 @@ MT-Level MT-Safe
.BR setlocale (3C),
.BR towupper (3C),
.BR uselocale (3C),
-.BR locale (5)
+.BR locale (7)
diff --git a/usr/src/man/man3c/towupper.3c b/usr/src/man/man3c/towupper.3c
index 7606e698e1..d84b8e1343 100644
--- a/usr/src/man/man3c/towupper.3c
+++ b/usr/src/man/man3c/towupper.3c
@@ -72,4 +72,4 @@ MT-Level MT-Safe
.BR setlocale (3C),
.BR toupper (3C),
.BR uselocale (3C),
-.BR locale (5)
+.BR locale (7)
diff --git a/usr/src/man/man3c/truncate.3c b/usr/src/man/man3c/truncate.3c
index 71b6eab4d8..4917f34326 100644
--- a/usr/src/man/man3c/truncate.3c
+++ b/usr/src/man/man3c/truncate.3c
@@ -355,11 +355,11 @@ length exceeds {\fBPATH_MAX\fR}.
.sp
.LP
The \fBtruncate()\fR and \fBftruncate()\fR functions have transitional
-interfaces for 64-bit file offsets. See \fBlf64\fR(5).
+interfaces for 64-bit file offsets. See \fBlf64\fR(7).
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -377,5 +377,9 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBchmod\fR(2), \fBfcntl\fR(2), \fBopen\fR(2), \fBattributes\fR(5),
-\fBlf64\fR(5), \fBstandards\fR(5)
+.BR chmod (2),
+.BR fcntl (2),
+.BR open (2),
+.BR attributes (7),
+.BR lf64 (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/tsearch.3c b/usr/src/man/man3c/tsearch.3c
index 2a8c3c18cd..d7a23ae40e 100644
--- a/usr/src/man/man3c/tsearch.3c
+++ b/usr/src/man/man3c/tsearch.3c
@@ -241,7 +241,7 @@ main()
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -259,5 +259,8 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBbsearch\fR(3C), \fBhsearch\fR(3C), \fBlsearch\fR(3C), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR bsearch (3C),
+.BR hsearch (3C),
+.BR lsearch (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/tss.3c b/usr/src/man/man3c/tss.3c
index 6ee8cc588c..d372bdf463 100644
--- a/usr/src/man/man3c/tss.3c
+++ b/usr/src/man/man3c/tss.3c
@@ -153,4 +153,4 @@ is returned.
.Xr pthread_key_create 3C ,
.Xr pthread_key_delete 3C ,
.Xr pthread_setspecific 3C ,
-.Xr attributes 5
+.Xr attributes 7
diff --git a/usr/src/man/man3c/ttyname.3c b/usr/src/man/man3c/ttyname.3c
index 0e1300c27c..19bbaae2c0 100644
--- a/usr/src/man/man3c/ttyname.3c
+++ b/usr/src/man/man3c/ttyname.3c
@@ -81,7 +81,7 @@ The \fBttyname_r()\fR function has the same functionality as \fBttyname()\fR
except that the caller must supply a buffer \fIname\fR with length
\fInamelen\fR to store the result; this buffer must be at least
\fB_POSIX_PATH_MAX\fR in size (defined in <\fBlimits.h\fR>). The
-standard-conforming version (see \fBstandards\fR(5)) of \fBttyname_r()\fR takes
+standard-conforming version (see \fBstandards\fR(7)) of \fBttyname_r()\fR takes
a \fInamesize\fR parameter of type \fBsize_t\fR.
.SH RETURN VALUES
.sp
@@ -133,7 +133,7 @@ returned including the terminating null character.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -151,8 +151,11 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBIntro\fR(3), \fBgettext\fR(3C), \fBsetlocale\fR(3C), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR Intro (3),
+.BR gettext (3C),
+.BR setlocale (3C),
+.BR attributes (7),
+.BR standards (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3c/ttyslot.3c b/usr/src/man/man3c/ttyslot.3c
index 464c3102e6..2f86f12c88 100644
--- a/usr/src/man/man3c/ttyslot.3c
+++ b/usr/src/man/man3c/ttyslot.3c
@@ -44,7 +44,7 @@ user access and accounting information
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -60,4 +60,7 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBgetutent\fR(3C), \fBttyname\fR(3C), \fButmpx\fR(4), \fBattributes\fR(5)
+.BR getutent (3C),
+.BR ttyname (3C),
+.BR utmpx (5),
+.BR attributes (7)
diff --git a/usr/src/man/man3c/u8_strcmp.3c b/usr/src/man/man3c/u8_strcmp.3c
index d0c91fca82..2dc7716b3e 100644
--- a/usr/src/man/man3c/u8_strcmp.3c
+++ b/usr/src/man/man3c/u8_strcmp.3c
@@ -324,7 +324,7 @@ docmp_nfd_caseinsensitive_u320(const char *u1, const char *u2) {
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -342,8 +342,12 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBu8_textprep_str\fR(3C), \fBu8_validate\fR(3C), \fBattributes\fR(5),
-\fBu8_strcmp\fR(9F), \fBu8_textprep_str\fR(9F), \fBu8_validate\fR(9F)
+.BR u8_textprep_str (3C),
+.BR u8_validate (3C),
+.BR attributes (7),
+.BR u8_strcmp (9F),
+.BR u8_textprep_str (9F),
+.BR u8_validate (9F)
.sp
.LP
The Unicode Standard (http://www.unicode.org)
diff --git a/usr/src/man/man3c/u8_textprep_str.3c b/usr/src/man/man3c/u8_textprep_str.3c
index 7cd3b47b99..ff243798ed 100644
--- a/usr/src/man/man3c/u8_textprep_str.3c
+++ b/usr/src/man/man3c/u8_textprep_str.3c
@@ -353,7 +353,7 @@ if (ret == (size_t)-1) {
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -371,8 +371,12 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBu8_strcmp\fR(3C), \fBu8_validate\fR(3C), \fBattributes\fR(5),
-\fBu8_strcmp\fR(9F), \fBu8_textprep_str\fR(9F), \fBu8_validate\fR(9F)
+.BR u8_strcmp (3C),
+.BR u8_validate (3C),
+.BR attributes (7),
+.BR u8_strcmp (9F),
+.BR u8_textprep_str (9F),
+.BR u8_validate (9F)
.sp
.LP
The Unicode Standard (http://www.unicode.org)
diff --git a/usr/src/man/man3c/u8_validate.3c b/usr/src/man/man3c/u8_validate.3c
index f870078501..0e7584ea5b 100644
--- a/usr/src/man/man3c/u8_validate.3c
+++ b/usr/src/man/man3c/u8_validate.3c
@@ -262,7 +262,7 @@ if (len == -1) {
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -280,8 +280,12 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBu8_strcmp\fR(3C), \fBu8_textprep_str\fR(3C), \fBattributes\fR(5),
-\fBu8_strcmp\fR(9F), \fBu8_textprep_str\fR(9F), \fBu8_validate\fR(9F)
+.BR u8_strcmp (3C),
+.BR u8_textprep_str (3C),
+.BR attributes (7),
+.BR u8_strcmp (9F),
+.BR u8_textprep_str (9F),
+.BR u8_validate (9F)
.sp
.LP
The Unicode Standard (http://www.unicode.org)
diff --git a/usr/src/man/man3c/ualarm.3c b/usr/src/man/man3c/ualarm.3c
index df339fe675..f019f922d4 100644
--- a/usr/src/man/man3c/ualarm.3c
+++ b/usr/src/man/man3c/ualarm.3c
@@ -110,13 +110,13 @@ family of functions.
.Xr timer_create 3C ,
.Xr usleep 3C ,
.Xr unistd.h 3HEAD ,
-.Xr standards 5
+.Xr standards 7
.Sh STANDARDS
The
.Fn ualarm
function is available in the following compilation environments.
See
-.Xr standards 5 .
+.Xr standards 7 .
.Lp
.Bl -bullet -compact
.\".It
diff --git a/usr/src/man/man3c/uconv_u16tou32.3c b/usr/src/man/man3c/uconv_u16tou32.3c
index 2223625ac1..0a657053f6 100644
--- a/usr/src/man/man3c/uconv_u16tou32.3c
+++ b/usr/src/man/man3c/uconv_u16tou32.3c
@@ -453,7 +453,7 @@ if (ret != 0) {
.in -2
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -469,7 +469,8 @@ MT-Level MT-Safe
.TE
.SH SEE ALSO
-\fBattributes\fR(5), \fBuconv_u16tou32\fR(9F)
+.BR attributes (7),
+.BR uconv_u16tou32 (9F)
.sp
.LP
The Unicode Standard (http://www.unicode.org)
diff --git a/usr/src/man/man3c/ucred.3c b/usr/src/man/man3c/ucred.3c
index 9333e8b0e6..e110ecbec4 100644
--- a/usr/src/man/man3c/ucred.3c
+++ b/usr/src/man/man3c/ucred.3c
@@ -267,7 +267,7 @@ credential.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -284,6 +284,12 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBgetpflags\fR(2), \fBgetppriv\fR(2), \fBdoor_ucred\fR(3C),
-\fBgetpeerucred\fR(3C), \fBpriv_set\fR(3C), \fBsocket.h\fR(3HEAD),
-\fBattributes\fR(5), \fBlabels\fR(5), \fBprivileges\fR(5)
+.BR getpflags (2),
+.BR getppriv (2),
+.BR door_ucred (3C),
+.BR getpeerucred (3C),
+.BR priv_set (3C),
+.BR socket.h (3HEAD),
+.BR attributes (7),
+.BR labels (7),
+.BR privileges (7)
diff --git a/usr/src/man/man3c/ungetc.3c b/usr/src/man/man3c/ungetc.3c
index f370585da4..f2febc2e9a 100644
--- a/usr/src/man/man3c/ungetc.3c
+++ b/usr/src/man/man3c/ungetc.3c
@@ -54,7 +54,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -72,6 +72,13 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBread\fR(2), \fBIntro\fR(3), \fB__fsetlocking\fR(3C), \fBfseek\fR(3C),
-\fBfsetpos\fR(3C), \fBgetc\fR(3C), \fBsetbuf\fR(3C), \fBstdio\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR read (2),
+.BR Intro (3),
+.BR __fsetlocking (3C),
+.BR fseek (3C),
+.BR fsetpos (3C),
+.BR getc (3C),
+.BR setbuf (3C),
+.BR stdio (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/ungetwc.3c b/usr/src/man/man3c/ungetwc.3c
index f7af1111a4..65d458191e 100644
--- a/usr/src/man/man3c/ungetwc.3c
+++ b/usr/src/man/man3c/ungetwc.3c
@@ -105,7 +105,7 @@ correspond to a valid character.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -123,5 +123,10 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBread\fR(2), \fBfseek\fR(3C), \fBfsetpos\fR(3C), \fBrewind\fR(3C),
-\fBsetbuf\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR read (2),
+.BR fseek (3C),
+.BR fsetpos (3C),
+.BR rewind (3C),
+.BR setbuf (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/unlockpt.3c b/usr/src/man/man3c/unlockpt.3c
index 865c217e32..2aa9360131 100644
--- a/usr/src/man/man3c/unlockpt.3c
+++ b/usr/src/man/man3c/unlockpt.3c
@@ -63,7 +63,7 @@ When a pseudo-terminal manager device is opened, whether through
or
.Xr open 2
on a
-.Xr ptm 7D
+.Xr ptm 4D
device, the subsidiary device begins operation in a locked state.
The
.Fn unlockpt
@@ -106,6 +106,6 @@ argument is not associated with a pseudo-terminal manager device.
.Xr grantpt 3C ,
.Xr posix_openpt 3C ,
.Xr ptsname 3C ,
-.Xr attributes 5 ,
-.Xr standards 5 ,
-.Xr ptm 7D
+.Xr ptm 4D ,
+.Xr attributes 7 ,
+.Xr standards 7
diff --git a/usr/src/man/man3c/unsetenv.3c b/usr/src/man/man3c/unsetenv.3c
index a5384f6663..be92c258e3 100644
--- a/usr/src/man/man3c/unsetenv.3c
+++ b/usr/src/man/man3c/unsetenv.3c
@@ -86,7 +86,7 @@ to a string containing an '=' character.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -103,5 +103,8 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBclearenv\fR(3C), \fBgetenv\fR(3C), \fBsetenv\fR(3C), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR clearenv (3C),
+.BR getenv (3C),
+.BR setenv (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/uselocale.3c b/usr/src/man/man3c/uselocale.3c
index a97bfec114..dcf5a2ca9c 100644
--- a/usr/src/man/man3c/uselocale.3c
+++ b/usr/src/man/man3c/uselocale.3c
@@ -92,4 +92,4 @@ MT-Level MT-Safe
.BR duplocale (3C),
.BR newlocale (3C),
.BR setlocale (3C),
-.BR locale (5)
+.BR locale (7)
diff --git a/usr/src/man/man3c/usleep.3c b/usr/src/man/man3c/usleep.3c
index e118f256ef..ac6f488faa 100644
--- a/usr/src/man/man3c/usleep.3c
+++ b/usr/src/man/man3c/usleep.3c
@@ -90,13 +90,13 @@ function is preferred over this function.
.Xr nanosleep 3C ,
.Xr sleep 3C ,
.Xr unistd.h 3HEAD ,
-.Xr standards 5
+.Xr standards 7
.Sh STANDARDS
The
.Fn usleep
function is available in the following compilation environments.
See
-.Xr standards 5 .
+.Xr standards 7 .
.Lp
.Bl -bullet -compact
.It
diff --git a/usr/src/man/man3c/vfwprintf.3c b/usr/src/man/man3c/vfwprintf.3c
index c49ccb3243..f555328586 100644
--- a/usr/src/man/man3c/vfwprintf.3c
+++ b/usr/src/man/man3c/vfwprintf.3c
@@ -98,7 +98,7 @@ afterwards to clean up.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -116,8 +116,10 @@ MT-Level MT-Safe with exceptions
.SH SEE ALSO
.sp
.LP
-\fBfwprintf\fR(3C), \fBsetlocale\fR(3C), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR fwprintf (3C),
+.BR setlocale (3C),
+.BR attributes (7),
+.BR standards (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3c/vlfmt.3c b/usr/src/man/man3c/vlfmt.3c
index deaf24f6fa..edbda16d52 100644
--- a/usr/src/man/man3c/vlfmt.3c
+++ b/usr/src/man/man3c/vlfmt.3c
@@ -88,7 +88,7 @@ not be used.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -104,4 +104,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBgettxt\fR(3C), \fBlfmt\fR(3C), \fBattributes\fR(5), \fBstdarg\fR(3EXT)
+.BR gettxt (3C),
+.BR lfmt (3C),
+.BR stdarg (3EXT),
+.BR attributes (7)
diff --git a/usr/src/man/man3c/vpfmt.3c b/usr/src/man/man3c/vpfmt.3c
index 18affbcff3..c94579ff26 100644
--- a/usr/src/man/man3c/vpfmt.3c
+++ b/usr/src/man/man3c/vpfmt.3c
@@ -87,7 +87,7 @@ not be used.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -103,4 +103,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBgettxt\fR(3C), \fBpfmt\fR(3C), \fBattributes\fR(5), \fBstdarg\fR(3EXT)
+.BR gettxt (3C),
+.BR pfmt (3C),
+.BR stdarg (3EXT),
+.BR attributes (7)
diff --git a/usr/src/man/man3c/vprintf.3c b/usr/src/man/man3c/vprintf.3c
index a78aa15939..7d2f7426cb 100644
--- a/usr/src/man/man3c/vprintf.3c
+++ b/usr/src/man/man3c/vprintf.3c
@@ -162,7 +162,7 @@ void error(char *function_name, char *format, \&.\|.\|.)
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -185,15 +185,18 @@ All of these functions can be used safely in multithreaded applications, as
long as \fBsetlocale\fR(3C) is not being called to change the locale.
.sp
.LP
-See \fBstandards\fR(5) for the standards conformance of \fBvprintf()\fR,
+See \fBstandards\fR(7) for the standards conformance of \fBvprintf()\fR,
\fBvfprintf()\fR, \fBvsprintf()\fR, and \fBvsnprintf()\fR. The
\fBvasprintf()\fR function is modeled on the one that appears in the FreeBSD,
NetBSD, and GNU C libraries.
.SH SEE ALSO
.sp
.LP
-\fBprintf\fR(3C), \fBattributes\fR(5), \fBstdarg\fR(3EXT), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR printf (3C),
+.BR stdarg (3EXT),
+.BR attributes (7),
+.BR attributes (7),
+.BR standards (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3c/vsyslog.3c b/usr/src/man/man3c/vsyslog.3c
index 58b2c6e755..a7041ed998 100644
--- a/usr/src/man/man3c/vsyslog.3c
+++ b/usr/src/man/man3c/vsyslog.3c
@@ -64,7 +64,7 @@ main()
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -80,4 +80,5 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBsyslog\fR(3C), \fBattributes\fR(5)
+.BR syslog (3C),
+.BR attributes (7)
diff --git a/usr/src/man/man3c/wait.3c b/usr/src/man/man3c/wait.3c
index 59600ae8a2..b36b32a0de 100644
--- a/usr/src/man/man3c/wait.3c
+++ b/usr/src/man/man3c/wait.3c
@@ -152,7 +152,7 @@ implemented as a call to \fBwaitpid(-1, stat_loc, 0)\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -170,6 +170,15 @@ MT-Level Async-Signal-Safe
.SH SEE ALSO
.sp
.LP
-\fBIntro\fR(2), \fBexec\fR(2), \fBexit\fR(2), \fBfork\fR(2), \fBpause\fR(2),
-\fBwaitid\fR(2), \fBptrace\fR(3C), \fBsignal\fR(3C), \fBsignal.h\fR(3HEAD),
-\fBwaitpid\fR(3C), \fBwait.h\fR(3HEAD), \fBattributes\fR(5)
+.BR Intro (2),
+.BR exec (2),
+.BR exit (2),
+.BR fork (2),
+.BR pause (2),
+.BR waitid (2),
+.BR ptrace (3C),
+.BR signal (3C),
+.BR waitpid (3C),
+.BR signal.h (3HEAD),
+.BR wait.h (3HEAD),
+.BR attributes (7)
diff --git a/usr/src/man/man3c/wait3.3c b/usr/src/man/man3c/wait3.3c
index e2ce6eeec0..bbc1d4b522 100644
--- a/usr/src/man/man3c/wait3.3c
+++ b/usr/src/man/man3c/wait3.3c
@@ -195,7 +195,7 @@ whose \fBSA_RESTART\fR bit in its flags field is not set (see
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -211,9 +211,17 @@ MT-Level Async-Signal-Safe
.SH SEE ALSO
.sp
.LP
-\fBkill\fR(1), \fBexit\fR(2), \fBwaitid\fR(2), \fBwaitpid\fR(3C),
-\fBgetrusage\fR(3C), \fBsignal\fR(3C), \fBsignal.h\fR(3HEAD), \fBwait\fR(3C),
-\fBwait.h\fR(3HEAD), \fBproc\fR(4), \fBattributes\fR(5)
+.BR kill (1),
+.BR exit (2),
+.BR waitid (2),
+.BR getrusage (3C),
+.BR signal (3C),
+.BR wait (3C),
+.BR waitpid (3C),
+.BR signal.h (3HEAD),
+.BR wait.h (3HEAD),
+.BR proc (5),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3c/waitpid.3c b/usr/src/man/man3c/waitpid.3c
index b54681af48..46d80744b4 100644
--- a/usr/src/man/man3c/waitpid.3c
+++ b/usr/src/man/man3c/waitpid.3c
@@ -222,7 +222,7 @@ implemented as a call to the more general \fBwaitid\fR(2) function.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -236,12 +236,22 @@ Interface Stability Committed
_
MT-Level Async-Signal-Safe
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.sp
.LP
-\fBIntro\fR(2), \fBexec\fR(2), \fBexit\fR(2), \fBfork\fR(2), \fBpause\fR(2),
-\fBsigaction\fR(2), \fBptrace\fR(3C), \fBsignal\fR(3C), \fBsiginfo.h\fR(3HEAD),
-\fBwait\fR(3C), \fBwait.h\fR(3HEAD), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR Intro (2),
+.BR exec (2),
+.BR exit (2),
+.BR fork (2),
+.BR pause (2),
+.BR sigaction (2),
+.BR ptrace (3C),
+.BR signal (3C),
+.BR wait (3C),
+.BR siginfo.h (3HEAD),
+.BR wait.h (3HEAD),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/walkcontext.3c b/usr/src/man/man3c/walkcontext.3c
index 8efe331033..ab906ee505 100644
--- a/usr/src/man/man3c/walkcontext.3c
+++ b/usr/src/man/man3c/walkcontext.3c
@@ -214,7 +214,7 @@ delay slot. For further information, see \fIThe SPARC Architecture Manual\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -236,8 +236,12 @@ Async-Signal-Safe.
.SH SEE ALSO
.sp
.LP
-\fBIntro\fR(2), \fBgetcontext\fR(2), \fBsigaction\fR(2), \fBdladdr\fR(3C),
-\fBsiginfo.h\fR(3HEAD), \fBattributes\fR(5)
+.BR Intro (2),
+.BR getcontext (2),
+.BR sigaction (2),
+.BR dladdr (3C),
+.BR siginfo.h (3HEAD),
+.BR attributes (7)
.sp
.LP
Weaver, David L. and Tom Germond, eds. \fIThe SPARC Architecture Manual\fR,
diff --git a/usr/src/man/man3c/wcpcpy.3c b/usr/src/man/man3c/wcpcpy.3c
index 203164992f..c34dd0dc55 100644
--- a/usr/src/man/man3c/wcpcpy.3c
+++ b/usr/src/man/man3c/wcpcpy.3c
@@ -107,7 +107,7 @@ None.
.Xr wcscpy 3C ,
.Xr wcsncpy 3C ,
.Xr wchar.h 3HEAD ,
-.Xr standards 5
+.Xr standards 7
.Sh STANDARDS
The
.Fn wcpcpy
diff --git a/usr/src/man/man3c/wcscasecmp.3c b/usr/src/man/man3c/wcscasecmp.3c
index f55d18dfd0..34972ee3ff 100644
--- a/usr/src/man/man3c/wcscasecmp.3c
+++ b/usr/src/man/man3c/wcscasecmp.3c
@@ -146,8 +146,8 @@ None.
.Xr strncasecmp_l 3C ,
.Xr uselocale 3C ,
.Xr wchar.h 3HEAD ,
-.Xr locale 5 ,
-.Xr standards 5
+.Xr locale 7 ,
+.Xr standards 7
.Sh STANDARDS
The
.Fn wcscasecmp ,
diff --git a/usr/src/man/man3c/wcscoll.3c b/usr/src/man/man3c/wcscoll.3c
index 6fb30aaba1..457c3984b0 100644
--- a/usr/src/man/man3c/wcscoll.3c
+++ b/usr/src/man/man3c/wcscoll.3c
@@ -100,7 +100,7 @@ domain of the collating sequence.
The \fBwcsxfrm\fR(3C) and \fBwcscmp\fR(3C) functions should be used for sorting
large lists, or when performing many comparisons on the same strings.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.TS
box;
c | c
@@ -118,6 +118,10 @@ MT-Level MT-Safe
The \fBwcscoll()\fR and \fBwcscoll_l()\fR functions are Standard.
The \fBwscoll()\fR function is Committed.
.SH SEE ALSO
-\fBnewlocale\fR(3C), \fBsetlocale\fR(3C), \fBuselocale\fR(3C),
-\fBwcscmp\fR(3C), \fBwcsxfrm\fR(3C), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR newlocale (3C),
+.BR setlocale (3C),
+.BR uselocale (3C),
+.BR wcscmp (3C),
+.BR wcsxfrm (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/wcsdup.3c b/usr/src/man/man3c/wcsdup.3c
index f9692ca5b5..31fb539c15 100644
--- a/usr/src/man/man3c/wcsdup.3c
+++ b/usr/src/man/man3c/wcsdup.3c
@@ -66,8 +66,8 @@ Insufficient memory was available to create the copy.
.Xr strdup 3C ,
.Xr wcslen 3C ,
.Xr wchar.h 3HEAD ,
-.Xr locale 5 ,
-.Xr standards 5
+.Xr locale 7 ,
+.Xr standards 7
.Sh STANDARDS
The
.Fn wcsdup
diff --git a/usr/src/man/man3c/wcsftime.3c b/usr/src/man/man3c/wcsftime.3c
index f2989442d2..0f43a8404e 100644
--- a/usr/src/man/man3c/wcsftime.3c
+++ b/usr/src/man/man3c/wcsftime.3c
@@ -119,7 +119,7 @@ fail, \fBerrno\fR will be set by \fBmalloc()\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -139,8 +139,11 @@ MT-Level MT-Safe with exceptions
.SH SEE ALSO
.sp
.LP
-\fBmalloc\fR(3C), \fBsetlocale\fR(3C), \fBstrftime\fR(3C), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR malloc (3C),
+.BR setlocale (3C),
+.BR strftime (3C),
+.BR attributes (7),
+.BR standards (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3c/wcslen.3c b/usr/src/man/man3c/wcslen.3c
index 71a4bde897..9b49b77ec5 100644
--- a/usr/src/man/man3c/wcslen.3c
+++ b/usr/src/man/man3c/wcslen.3c
@@ -79,8 +79,8 @@ None.
.Xr strlen 3C ,
.Xr strnlen 3C ,
.Xr wchar.h 3HEAD ,
-.Xr locale 5 ,
-.Xr standards 5
+.Xr locale 7 ,
+.Xr standards 7
.Sh STANDARDS
The
.Fn wcslen
diff --git a/usr/src/man/man3c/wcsrtombs.3c b/usr/src/man/man3c/wcsrtombs.3c
index d07600309d..b5865a6f3f 100644
--- a/usr/src/man/man3c/wcsrtombs.3c
+++ b/usr/src/man/man3c/wcsrtombs.3c
@@ -122,7 +122,7 @@ associated character sequence. The system will behave as if no function defined
in the Reference Manual calls any of these functions.
.LP
The behavior of \fBwcsrtombs()\fR and \fBwcsnrtombs()\fR are affected by the
-\fBLC_CTYPE\fR category of the current locale. See \fBenviron\fR(5).
+\fBLC_CTYPE\fR category of the current locale. See \fBenviron\fR(7).
.LP
The \fBwcsrtombs_l()\fR and \fBwcsnrtombs_l()\fR functions behave identically
to \fBwcsrtombs()\fR and \fBwcsnrtombs()\fR respectively, except
@@ -159,7 +159,7 @@ A wide-character code does not correspond to a valid character.
.RE
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.TS
box;
c | c
@@ -179,6 +179,11 @@ If \fIps\fR is a null pointer, these functions should be considered Unsafe
for use in multithreaded applications. Otherwise, they are MT-Safe.
.SH SEE ALSO
.LP
-\fBmbsinit\fR(3C), \fBnewlocale\fR(3C), \fBsetlocale\fR(3C), \fBuselocale\fR(3C),
-\fBwcrtomb\fR(3C), \fBattributes\fR(5),
-\fBenviron\fR(5), \fBstandards\fR(5)
+.BR mbsinit (3C),
+.BR newlocale (3C),
+.BR setlocale (3C),
+.BR uselocale (3C),
+.BR wcrtomb (3C),
+.BR attributes (7),
+.BR environ (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/wcsstr.3c b/usr/src/man/man3c/wcsstr.3c
index 4f9030a546..1c24919533 100644
--- a/usr/src/man/man3c/wcsstr.3c
+++ b/usr/src/man/man3c/wcsstr.3c
@@ -93,7 +93,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -111,4 +111,6 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBwschr\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR wschr (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/wcstod.3c b/usr/src/man/man3c/wcstod.3c
index 276e95e4c5..d49d740b16 100644
--- a/usr/src/man/man3c/wcstod.3c
+++ b/usr/src/man/man3c/wcstod.3c
@@ -255,7 +255,7 @@ application wishing to check for error situations should set \fBerrno\fR to 0
call \fBwcstod()\fR, \fBwcstof()\fR, \fBwcstold()\fR, or \fBwstod()\fR, then
check \fBerrno\fR and if it is non-zero, assume an error has occurred.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -273,5 +273,11 @@ MT-Level MT-Safe
.TE
.SH SEE ALSO
-\fBiswspace\fR(3C), \fBlocaleconv\fR(3C), \fBmath.h\fR(3HEAD), \fBscanf\fR(3C),
-\fBsetlocale\fR(3C), \fBwcstol\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR iswspace (3C),
+.BR localeconv (3C),
+.BR scanf (3C),
+.BR setlocale (3C),
+.BR wcstol (3C),
+.BR math.h (3HEAD),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/wcstoimax.3c b/usr/src/man/man3c/wcstoimax.3c
index 25b985e06e..1dfd044852 100644
--- a/usr/src/man/man3c/wcstoimax.3c
+++ b/usr/src/man/man3c/wcstoimax.3c
@@ -114,7 +114,7 @@ No conversion could be performed.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -132,4 +132,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBwcstol\fR(3C), \fBwcstoul\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR wcstol (3C),
+.BR wcstoul (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/wcstol.3c b/usr/src/man/man3c/wcstol.3c
index ea081b2e69..7df7dca9c0 100644
--- a/usr/src/man/man3c/wcstol.3c
+++ b/usr/src/man/man3c/wcstol.3c
@@ -228,7 +228,7 @@ No conversion could be performed.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -246,8 +246,12 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBiswalpha\fR(3C), \fBiswspace\fR(3C), \fBscanf\fR(3C), \fBwcstod\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR iswalpha (3C),
+.BR iswspace (3C),
+.BR scanf (3C),
+.BR wcstod (3C),
+.BR attributes (7),
+.BR standards (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3c/wcstombs.3c b/usr/src/man/man3c/wcstombs.3c
index e1447ab239..5ad8b15b1f 100644
--- a/usr/src/man/man3c/wcstombs.3c
+++ b/usr/src/man/man3c/wcstombs.3c
@@ -111,6 +111,6 @@ function is
.Xr uselocale 3C ,
.Xr wcsnrtombs 3C ,
.Xr wctomb 3C ,
-.Xr attributes 5 ,
-.Xr environ 5 ,
-.Xr standards 5
+.Xr attributes 7 ,
+.Xr environ 7 ,
+.Xr standards 7
diff --git a/usr/src/man/man3c/wcstoul.3c b/usr/src/man/man3c/wcstoul.3c
index 5cd23733f2..eefcd8edc6 100644
--- a/usr/src/man/man3c/wcstoul.3c
+++ b/usr/src/man/man3c/wcstoul.3c
@@ -204,7 +204,7 @@ if those numbers can ever be negative.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -222,5 +222,10 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBisspace\fR(3C), \fBiswalpha\fR(3C), \fBscanf\fR(3C), \fBwcstod\fR(3C),
-\fBwcstol\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR isspace (3C),
+.BR iswalpha (3C),
+.BR scanf (3C),
+.BR wcstod (3C),
+.BR wcstol (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/wcstring.3c b/usr/src/man/man3c/wcstring.3c
index 4df94dcebd..ab704bafdd 100644
--- a/usr/src/man/man3c/wcstring.3c
+++ b/usr/src/man/man3c/wcstring.3c
@@ -377,7 +377,7 @@ The third argument points to a caller-provided \fBwchar_t\fR pointer into which
the \fBwcstok()\fR function stores information necessary for it to continue
scanning the same wide-character string. This argument is not available with
the XPG4 and SUS versions of \fBwcstok()\fR, nor is it available with the
-\fBwstok()\fR function. See \fBstandards\fR(5).
+\fBwstok()\fR function. See \fBstandards\fR(7).
.LP
The first call in the sequence has \fIws1\fR as its first argument, and is
followed by calls with a null pointer as their first argument. The separator
@@ -407,7 +407,7 @@ wide-character code of a token. Otherwise, if there is no token, a null pointer
is returned.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -426,15 +426,15 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBmalloc\fR(3C),
-\fBstring\fR(3C),
-\fBwcscasecmp\fR(3C),
-\fBwcsdup\fR(3C),
-\fBwcslen\fR(3C),
-\fBwcswidth\fR(3C),
-\fBwcwidth\fR(3C),
-\fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR malloc (3C),
+.BR string (3C),
+.BR wcscasecmp (3C),
+.BR wcsdup (3C),
+.BR wcslen (3C),
+.BR wcswidth (3C),
+.BR wcwidth (3C),
+.BR attributes (7),
+.BR standards (7)
.SH NOTES
.LP
The \fBwcscat()\fR, \fBwcsncat()\fR, \fBwcscmp()\fR, \fBwcsncmp()\fR,
diff --git a/usr/src/man/man3c/wcsxfrm.3c b/usr/src/man/man3c/wcsxfrm.3c
index 9aaeca0cee..707e7bf6f4 100644
--- a/usr/src/man/man3c/wcsxfrm.3c
+++ b/usr/src/man/man3c/wcsxfrm.3c
@@ -123,7 +123,7 @@ transformation.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -148,5 +148,10 @@ to change the locale.
.SH SEE ALSO
.sp
.LP
-\fBsetlocale\fR(3C), \fBwcscmp\fR(3C), \fBwcscoll\fR(3C), \fBwscmp\fR(3C),
-\fBwscoll\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR setlocale (3C),
+.BR wcscmp (3C),
+.BR wcscoll (3C),
+.BR wscmp (3C),
+.BR wscoll (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/wctob.3c b/usr/src/man/man3c/wctob.3c
index 65a366ad10..48d72a07d2 100644
--- a/usr/src/man/man3c/wctob.3c
+++ b/usr/src/man/man3c/wctob.3c
@@ -70,7 +70,7 @@ of the extended character set whose character representation is a single byte
when in the initial shift state.
.LP
The behavior of \fBwctob()\fR is affected by the \fBLC_CTYPE\fR category of the
-current locale. See \fBenviron\fR(5)
+current locale. See \fBenviron\fR(7)
.LP
The function \fBwctob_l()\fR behaves identically to \fBwctob()\fR, except
instead of operating in the current locale, it operates in the locale
@@ -85,7 +85,7 @@ the single-byte representation of that character.
No errors are defined.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.TS
box;
c | c
@@ -102,5 +102,10 @@ The \fBwctob()\fR function is Standard. The \fBwctob_l()\fR function
is Uncommitted.
.SH SEE ALSO
.LP
-\fBbtowc\fR(3C), \fBnewlocale\fR(3C), \fBsetlocale\fR(3C), \fBuselocale\fR(3C),
-\fBattributes\fR(5), \fBenviron\fR(5), \fBstandards\fR(5)
+.BR btowc (3C),
+.BR newlocale (3C),
+.BR setlocale (3C),
+.BR uselocale (3C),
+.BR attributes (7),
+.BR environ (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/wctomb.3c b/usr/src/man/man3c/wctomb.3c
index 17697c04a1..4da5cbf3c7 100644
--- a/usr/src/man/man3c/wctomb.3c
+++ b/usr/src/man/man3c/wctomb.3c
@@ -90,7 +90,7 @@ In no case will the value returned be greater than the value of the
No errors are defined.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.TS
box;
c | c
@@ -109,6 +109,12 @@ The \fBwctomb()\fR function is Standard. The \fBwctomb_l()\fR function
is Uncommitted.
.SH SEE ALSO
.LP
-\fBmblen\fR(3C), \fBmbstowcs\fR(3C), \fBmbtowc\fR(3C),
-\fBnewlocale\fR(3C), \fBsetlocale\fR(3C), \fBuselocale\fR(3C),
-\fBwcstombs\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR mblen (3C),
+.BR mbstowcs (3C),
+.BR mbtowc (3C),
+.BR newlocale (3C),
+.BR setlocale (3C),
+.BR uselocale (3C),
+.BR wcstombs (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/wctrans.3c b/usr/src/man/man3c/wctrans.3c
index 64b9c7b390..aa67a5610c 100644
--- a/usr/src/man/man3c/wctrans.3c
+++ b/usr/src/man/man3c/wctrans.3c
@@ -136,5 +136,5 @@ MT-Level MT-Safe
.BR setlocale (3C),
.BR towlower (3C),
.BR towupper (3C),
-.BR environ (5),
-.BR locale (5)
+.BR environ (7),
+.BR locale (7)
diff --git a/usr/src/man/man3c/wctype.3c b/usr/src/man/man3c/wctype.3c
index 4ff276ea98..d2fa869ce1 100644
--- a/usr/src/man/man3c/wctype.3c
+++ b/usr/src/man/man3c/wctype.3c
@@ -97,7 +97,7 @@ returns an object of type \fBwctype_t\fR that can be used in calls to
\fBiswctype\fR(3C).
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.TS
box;
c | c
@@ -113,7 +113,9 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBiswctype\fR(3C), \fBnewlocale\fR(3C), \fBsetlocale\fR(3C),
-\fBuselocale\fR(3C),
-\fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR iswctype (3C),
+.BR newlocale (3C),
+.BR setlocale (3C),
+.BR uselocale (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/wcwidth.3c b/usr/src/man/man3c/wcwidth.3c
index d5dc5931a6..6b19455e00 100644
--- a/usr/src/man/man3c/wcwidth.3c
+++ b/usr/src/man/man3c/wcwidth.3c
@@ -82,7 +82,7 @@ not correspond to a printing wide-character code).
No errors are defined.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.TS
box;
c | c
@@ -101,6 +101,9 @@ The \fBwcwidth()\fR function is Standard. The \fBwcwidth_l()\fR function
is Uncommitted.
.SH SEE ALSO
.LP
-\fBnewlocale\fR(3C), \fBsetlocale\fR(3C), \fBuselocale\fR(3C),
-\fBwcswidth\fR(3C), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR newlocale (3C),
+.BR setlocale (3C),
+.BR uselocale (3C),
+.BR wcswidth (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/wmemchr.3c b/usr/src/man/man3c/wmemchr.3c
index 2853f6ce89..3af05df58f 100644
--- a/usr/src/man/man3c/wmemchr.3c
+++ b/usr/src/man/man3c/wmemchr.3c
@@ -93,7 +93,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -111,5 +111,9 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBwmemcmp\fR(3C), \fBwmemcpy\fR(3C), \fBwmemmove\fR(3C), \fBwmemset\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR wmemcmp (3C),
+.BR wmemcpy (3C),
+.BR wmemmove (3C),
+.BR wmemset (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/wmemcmp.3c b/usr/src/man/man3c/wmemcmp.3c
index 07dc00b685..c681409888 100644
--- a/usr/src/man/man3c/wmemcmp.3c
+++ b/usr/src/man/man3c/wmemcmp.3c
@@ -80,7 +80,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -98,5 +98,9 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBwmemchr\fR(3C), \fBwmemcpy\fR(3C), \fBwmemmove\fR(3C), \fBwmemset\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR wmemchr (3C),
+.BR wmemcpy (3C),
+.BR wmemmove (3C),
+.BR wmemset (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/wmemcpy.3c b/usr/src/man/man3c/wmemcpy.3c
index 58e1c7337f..c9e0235cd1 100644
--- a/usr/src/man/man3c/wmemcpy.3c
+++ b/usr/src/man/man3c/wmemcpy.3c
@@ -77,7 +77,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -95,5 +95,9 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBwmemchr\fR(3C), \fBwmemcmp\fR(3C), \fBwmemmove\fR(3C), \fBwmemset\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR wmemchr (3C),
+.BR wmemcmp (3C),
+.BR wmemmove (3C),
+.BR wmemset (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/wmemmove.3c b/usr/src/man/man3c/wmemmove.3c
index e355c1cace..2a164a2d4a 100644
--- a/usr/src/man/man3c/wmemmove.3c
+++ b/usr/src/man/man3c/wmemmove.3c
@@ -84,7 +84,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -102,5 +102,9 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBwmemchr\fR(3C), \fBwmemcmp\fR(3C), \fBwmemcpy\fR(3C), \fBwmemset\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR wmemchr (3C),
+.BR wmemcmp (3C),
+.BR wmemcpy (3C),
+.BR wmemset (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/wmemset.3c b/usr/src/man/man3c/wmemset.3c
index b6a9e82a28..239e4ce557 100644
--- a/usr/src/man/man3c/wmemset.3c
+++ b/usr/src/man/man3c/wmemset.3c
@@ -77,7 +77,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -95,5 +95,9 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBwmemchr\fR(3C), \fBwmemcmp\fR(3C), \fBwmemcpy\fR(3C), \fBwmemmove\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR wmemchr (3C),
+.BR wmemcmp (3C),
+.BR wmemcpy (3C),
+.BR wmemmove (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/wordexp.3c b/usr/src/man/man3c/wordexp.3c
index e82e72d24a..fadf20953a 100644
--- a/usr/src/man/man3c/wordexp.3c
+++ b/usr/src/man/man3c/wordexp.3c
@@ -370,7 +370,7 @@ executing a command or writing a file.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -388,4 +388,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBfnmatch\fR(3C), \fBglob\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR fnmatch (3C),
+.BR glob (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3c/wsprintf.3c b/usr/src/man/man3c/wsprintf.3c
index 98bd656715..39fd383ab0 100644
--- a/usr/src/man/man3c/wsprintf.3c
+++ b/usr/src/man/man3c/wsprintf.3c
@@ -36,7 +36,7 @@ printed. Otherwise, a negative value is returned.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -52,5 +52,8 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBwsscanf\fR(3C), \fBprintf\fR(3C), \fBscanf\fR(3C), \fBsprintf\fR(3C),
-\fBattributes\fR(5)
+.BR printf (3C),
+.BR scanf (3C),
+.BR sprintf (3C),
+.BR wsscanf (3C),
+.BR attributes (7)
diff --git a/usr/src/man/man3c/wsscanf.3c b/usr/src/man/man3c/wsscanf.3c
index cd55f8776f..d73793dbf8 100644
--- a/usr/src/man/man3c/wsscanf.3c
+++ b/usr/src/man/man3c/wsscanf.3c
@@ -32,7 +32,7 @@ string for \fBwsscanf()\fR and on Extended Unix Code (EUC) character string for
Upon successful completion, \fBwsscanf()\fR returns the number of characters
matched. Otherwise, it returns a negative value.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -46,4 +46,7 @@ MT-Level MT-Safe
.TE
.SH SEE ALSO
-\fBwsprintf\fR(3C), \fBprintf\fR(3C), \fBscanf\fR(3C), \fBattributes\fR(5)
+.BR printf (3C),
+.BR scanf (3C),
+.BR wsprintf (3C),
+.BR attributes (7)
diff --git a/usr/src/man/man3c/wstring.3c b/usr/src/man/man3c/wstring.3c
index 6b5d10d074..a232aa4070 100644
--- a/usr/src/man/man3c/wstring.3c
+++ b/usr/src/man/man3c/wstring.3c
@@ -62,7 +62,7 @@ Process Code string \fIs\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -78,4 +78,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBmalloc\fR(3C), \fBstring\fR(3C), \fBwcstring\fR(3C), \fBattributes\fR(5)
+.BR malloc (3C),
+.BR string (3C),
+.BR wcstring (3C),
+.BR attributes (7)
diff --git a/usr/src/man/man3c_db/td_init.3c_db b/usr/src/man/man3c_db/td_init.3c_db
index 505395a960..393dc63f39 100644
--- a/usr/src/man/man3c_db/td_init.3c_db
+++ b/usr/src/man/man3c_db/td_init.3c_db
@@ -45,7 +45,7 @@ Initialization failed.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -61,4 +61,5 @@ MT Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibc_db\fR(3LIB), \fBattributes\fR(5)
+.BR libc_db (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3c_db/td_log.3c_db b/usr/src/man/man3c_db/td_log.3c_db
index 94979562e2..4c6acecae2 100644
--- a/usr/src/man/man3c_db/td_log.3c_db
+++ b/usr/src/man/man3c_db/td_log.3c_db
@@ -24,7 +24,7 @@ logging functionality in \fBlibc_db\fR(3LIB).
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -40,4 +40,6 @@ MT Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibc_db\fR(3LIB), \fBattributes\fR(5), \fBthreads\fR(5)
+.BR libc_db (3LIB),
+.BR attributes (7),
+.BR threads (7)
diff --git a/usr/src/man/man3c_db/td_sync_get_info.3c_db b/usr/src/man/man3c_db/td_sync_get_info.3c_db
index 4a616ccdb0..ebf5071f33 100644
--- a/usr/src/man/man3c_db/td_sync_get_info.3c_db
+++ b/usr/src/man/man3c_db/td_sync_get_info.3c_db
@@ -300,7 +300,7 @@ A libc_db-internal error occurred.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -317,4 +317,4 @@ MT-Level Safe
.sp
.LP
\fBlibc_db\fR(3LIB), \fBmutex_init\fR(3C), \fBtd_ta_map_addr2sync\fR(3C_DB),
-\fBtd_ta_sync_iter\fR(3C_DB), \fBtd_ta_thr_iter\fR(3C_DB), \fBattributes\fR(5)
+\fBtd_ta_sync_iter\fR(3C_DB), \fBtd_ta_thr_iter\fR(3C_DB), \fBattributes\fR(7)
diff --git a/usr/src/man/man3c_db/td_ta_enable_stats.3c_db b/usr/src/man/man3c_db/td_ta_enable_stats.3c_db
index ac186649cc..258734ca6c 100644
--- a/usr/src/man/man3c_db/td_ta_enable_stats.3c_db
+++ b/usr/src/man/man3c_db/td_ta_enable_stats.3c_db
@@ -133,7 +133,7 @@ Something else went wrong.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -149,4 +149,6 @@ MT Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibc_db\fR(3LIB), \fBthr_getconcurrency\fR(3C), \fBattributes\fR(5)
+.BR thr_getconcurrency (3C),
+.BR libc_db (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3c_db/td_ta_event_addr.3c_db b/usr/src/man/man3c_db/td_ta_event_addr.3c_db
index 15cd2d26fd..8a77b610ec 100644
--- a/usr/src/man/man3c_db/td_ta_event_addr.3c_db
+++ b/usr/src/man/man3c_db/td_ta_event_addr.3c_db
@@ -453,7 +453,7 @@ progress. See \fBlibc_db\fR(3LIB).
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -469,4 +469,5 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibc_db\fR(3LIB), \fBattributes\fR(5)
+.BR libc_db (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3c_db/td_ta_get_nthreads.3c_db b/usr/src/man/man3c_db/td_ta_get_nthreads.3c_db
index 98f0151a57..3ba707b114 100644
--- a/usr/src/man/man3c_db/td_ta_get_nthreads.3c_db
+++ b/usr/src/man/man3c_db/td_ta_get_nthreads.3c_db
@@ -74,7 +74,7 @@ occurred.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -90,4 +90,6 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibc_db\fR(3LIB), \fBattributes\fR(5), \fBthreads\fR(5)
+.BR libc_db (3LIB),
+.BR attributes (7),
+.BR threads (7)
diff --git a/usr/src/man/man3c_db/td_ta_map_addr2sync.3c_db b/usr/src/man/man3c_db/td_ta_map_addr2sync.3c_db
index f3d0bef30b..e43b3238f2 100644
--- a/usr/src/man/man3c_db/td_ta_map_addr2sync.3c_db
+++ b/usr/src/man/man3c_db/td_ta_map_addr2sync.3c_db
@@ -86,7 +86,7 @@ A call to one of the imported interface routines failed.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -102,4 +102,5 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibc_db\fR(3LIB), \fBattributes\fR(5)
+.BR libc_db (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3c_db/td_ta_map_id2thr.3c_db b/usr/src/man/man3c_db/td_ta_map_id2thr.3c_db
index 0644d1768d..837e3a2ab5 100644
--- a/usr/src/man/man3c_db/td_ta_map_id2thr.3c_db
+++ b/usr/src/man/man3c_db/td_ta_map_id2thr.3c_db
@@ -95,7 +95,7 @@ The call did not complete successfully.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -111,5 +111,7 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibc_db\fR(3LIB), \fBthr_create\fR(3C), \fBthr_self\fR(3C),
-\fBattributes\fR(5)
+.BR thr_create (3C),
+.BR thr_self (3C),
+.BR libc_db (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3c_db/td_ta_new.3c_db b/usr/src/man/man3c_db/td_ta_new.3c_db
index d473bc4543..36c6395f5b 100644
--- a/usr/src/man/man3c_db/td_ta_new.3c_db
+++ b/usr/src/man/man3c_db/td_ta_new.3c_db
@@ -118,7 +118,7 @@ The target process does not appear to be multithreaded.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -134,4 +134,6 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibc_db\fR(3LIB), \fBproc_service\fR(3PROC), \fBattributes\fR(5)
+.BR libc_db (3LIB),
+.BR proc_service (3PROC),
+.BR attributes (7)
diff --git a/usr/src/man/man3c_db/td_ta_setconcurrency.3c_db b/usr/src/man/man3c_db/td_ta_setconcurrency.3c_db
index cda1d2742a..5ec862e951 100644
--- a/usr/src/man/man3c_db/td_ta_setconcurrency.3c_db
+++ b/usr/src/man/man3c_db/td_ta_setconcurrency.3c_db
@@ -73,7 +73,7 @@ A \fBlibc_db\fR internal error occurred.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -89,5 +89,7 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibc_db\fR(3LIB), \fBps_kill\fR(3PROC), \fBthr_setconcurrency\fR(3C),
-\fBattributes\fR(5)
+.BR thr_setconcurrency (3C),
+.BR libc_db (3LIB),
+.BR ps_kill (3PROC),
+.BR attributes (7)
diff --git a/usr/src/man/man3c_db/td_ta_sync_iter.3c_db b/usr/src/man/man3c_db/td_ta_sync_iter.3c_db
index 4df27aeba4..c4904ef3a5 100644
--- a/usr/src/man/man3c_db/td_ta_sync_iter.3c_db
+++ b/usr/src/man/man3c_db/td_ta_sync_iter.3c_db
@@ -170,7 +170,7 @@ The call did not complete successfully.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -187,4 +187,4 @@ MT-Level Safe
.sp
.LP
\fBlibc_db\fR(3LIB), \fBmutex_init\fR(3C), \fBtd_sync_get_info\fR(3C_DB),
-\fBtd_thr_get_info\fR(3C_DB), \fBtd_thr_tsd\fR(3C_DB), \fBattributes\fR(5)
+\fBtd_thr_get_info\fR(3C_DB), \fBtd_thr_tsd\fR(3C_DB), \fBattributes\fR(7)
diff --git a/usr/src/man/man3c_db/td_thr_dbsuspend.3c_db b/usr/src/man/man3c_db/td_thr_dbsuspend.3c_db
index 8f6b5bef5e..00c902669b 100644
--- a/usr/src/man/man3c_db/td_thr_dbsuspend.3c_db
+++ b/usr/src/man/man3c_db/td_thr_dbsuspend.3c_db
@@ -72,7 +72,7 @@ A \fBlibc_db\fR internal error occurred.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -88,4 +88,5 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibc_db\fR(3LIB), \fBattributes\fR(5)
+.BR libc_db (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3c_db/td_thr_get_info.3c_db b/usr/src/man/man3c_db/td_thr_get_info.3c_db
index 69b5615548..eb178def2c 100644
--- a/usr/src/man/man3c_db/td_thr_get_info.3c_db
+++ b/usr/src/man/man3c_db/td_thr_get_info.3c_db
@@ -268,7 +268,7 @@ The call did not complete successfully.
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -283,6 +283,10 @@ MT-Level Safe
.SH SEE ALSO
\fBlibc_db\fR(3LIB), \fBtd_ta_thr_iter\fR(3C_DB),
-\fBtd_thr_dbsuspend\fR(3C_DB), \fBthr_create\fR(3C), \fBthr_getprio\fR(3C),
-\fBthr_join\fR(3C), \fBthr_sigsetmask\fR(3C), \fBthr_suspend\fR(3C),
-\fBattributes\fR(5), \fBthreads\fR(5)
+\fBtd_thr_dbsuspend\fR(3C_DB), \fBthr_create\fR(3C),
+.BR thr_getprio (3C),
+.BR thr_join (3C),
+.BR thr_sigsetmask (3C),
+.BR thr_suspend (3C),
+.BR attributes (7),
+.BR threads (7)
diff --git a/usr/src/man/man3c_db/td_thr_getgregs.3c_db b/usr/src/man/man3c_db/td_thr_getgregs.3c_db
index da3fa49eef..eca6f83dd4 100644
--- a/usr/src/man/man3c_db/td_thr_getgregs.3c_db
+++ b/usr/src/man/man3c_db/td_thr_getgregs.3c_db
@@ -164,7 +164,7 @@ A \fBlibc_db\fR internal error occurred.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -180,4 +180,5 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibc_db\fR(3LIB), \fBattributes\fR(5)
+.BR libc_db (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3c_db/td_thr_lockowner.3c_db b/usr/src/man/man3c_db/td_thr_lockowner.3c_db
index 7c38580afd..9cda89106d 100644
--- a/usr/src/man/man3c_db/td_thr_lockowner.3c_db
+++ b/usr/src/man/man3c_db/td_thr_lockowner.3c_db
@@ -78,7 +78,7 @@ A \fBlibc_db\fR internal error occurred.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -94,4 +94,4 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibc_db\fR(3LIB), \fBtd_ta_thr_iter\fR(3C_DB), \fBattributes\fR(5)
+\fBlibc_db\fR(3LIB), \fBtd_ta_thr_iter\fR(3C_DB), \fBattributes\fR(7)
diff --git a/usr/src/man/man3c_db/td_thr_setprio.3c_db b/usr/src/man/man3c_db/td_thr_setprio.3c_db
index fecf05d57f..e1a5403d29 100644
--- a/usr/src/man/man3c_db/td_thr_setprio.3c_db
+++ b/usr/src/man/man3c_db/td_thr_setprio.3c_db
@@ -35,7 +35,7 @@ Capability not available.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -51,4 +51,6 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibc_db\fR(3LIB), \fBthr_setprio\fR(3C), \fBattributes\fR(5)
+.BR thr_setprio (3C),
+.BR libc_db (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3c_db/td_thr_setsigpending.3c_db b/usr/src/man/man3c_db/td_thr_setsigpending.3c_db
index f2dce9f57f..2f979b9620 100644
--- a/usr/src/man/man3c_db/td_thr_setsigpending.3c_db
+++ b/usr/src/man/man3c_db/td_thr_setsigpending.3c_db
@@ -52,7 +52,7 @@ stop either the entire process or the thread with \fBtd_thr_dbsuspend()\fR,
.TP
2.
determine the thread's existing signal mask by calling
-\fBtd_thr_get_info\fR(3C_DB),
+.BR td_thr_get_info (3C_DB),
.RE
.RS +4
.TP
@@ -102,7 +102,7 @@ A \fBlibc_db\fR internal error occurred.
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -117,4 +117,4 @@ MT-Level Safe
.SH SEE ALSO
\fBlibc_db\fR(3LIB), \fBtd_thr_dbsuspend\fR(3C_DB),
-\fBtd_thr_get_info\fR(3C_DB), \fBattributes\fR(5)
+\fBtd_thr_get_info\fR(3C_DB), \fBattributes\fR(7)
diff --git a/usr/src/man/man3c_db/td_thr_sleepinfo.3c_db b/usr/src/man/man3c_db/td_thr_sleepinfo.3c_db
index 7c7ac70d65..8e49bb350d 100644
--- a/usr/src/man/man3c_db/td_thr_sleepinfo.3c_db
+++ b/usr/src/man/man3c_db/td_thr_sleepinfo.3c_db
@@ -63,7 +63,7 @@ The thread \fIth_p\fR is not blocked on a synchronization object, or a
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -79,4 +79,5 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibc_db\fR(3LIB), \fBattributes\fR(5)
+.BR libc_db (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3c_db/td_thr_tsd.3c_db b/usr/src/man/man3c_db/td_thr_tsd.3c_db
index 2bfba66696..2082b527df 100644
--- a/usr/src/man/man3c_db/td_thr_tsd.3c_db
+++ b/usr/src/man/man3c_db/td_thr_tsd.3c_db
@@ -68,7 +68,7 @@ A \fBlibc_db\fR internal error occurred.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -85,4 +85,4 @@ MT-Level Safe
.sp
.LP
\fBlibc_db\fR(3LIB), \fBtd_ta_tsd_iter\fR(3C_DB), \fBthr_getspecific\fR(3C),
-\fBattributes\fR(5)
+.BR attributes (7)
diff --git a/usr/src/man/man3c_db/td_thr_validate.3c_db b/usr/src/man/man3c_db/td_thr_validate.3c_db
index 8bbf082692..02595a4eeb 100644
--- a/usr/src/man/man3c_db/td_thr_validate.3c_db
+++ b/usr/src/man/man3c_db/td_thr_validate.3c_db
@@ -70,7 +70,7 @@ A \fBlibc_db\fR internal error occurred.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -86,4 +86,5 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibc_db\fR(3LIB), \fBattributes\fR(5)
+.BR libc_db (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3cfgadm/config_admin.3cfgadm b/usr/src/man/man3cfgadm/config_admin.3cfgadm
index f299c72ff3..14a949f2fa 100644
--- a/usr/src/man/man3cfgadm/config_admin.3cfgadm
+++ b/usr/src/man/man3cfgadm/config_admin.3cfgadm
@@ -155,7 +155,7 @@ hardware-specific manner.
.sp
.LP
The \fBlibcfgadm\fR library is used to provide the services of the
-\fBcfgadm\fR(1M) command. The hardware-specific libraries are located in
+\fBcfgadm\fR(8) command. The hardware-specific libraries are located in
\fB/usr/platform/${machine}/lib/cfgadm\fR,
\fB/usr/platform/${arch}/lib/cfgadm\fR, and \fB/usr/lib/cfgadm\fR. The
hardware-specific library names are derived from the driver name or from class
@@ -633,7 +633,7 @@ attachment point whose condition fails the hardware dependent test.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -649,10 +649,18 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBcfgadm\fR(1M), \fBdevinfo\fR(1M), \fBdlopen\fR(3C), \fBdlsym\fR(3C),
-\fBfree\fR(3C), \fBgetsubopt\fR(3C), \fBmalloc\fR(3C), \fBqsort\fR(3C),
-\fBsetlocale\fR(3C), \fBstrcmp\fR(3C), \fBlibcfgadm\fR(3LIB),
-\fBattributes\fR(5)
+.BR dlopen (3C),
+.BR dlsym (3C),
+.BR free (3C),
+.BR getsubopt (3C),
+.BR malloc (3C),
+.BR qsort (3C),
+.BR setlocale (3C),
+.BR strcmp (3C),
+.BR libcfgadm (3LIB),
+.BR attributes (7),
+.BR cfgadm (8),
+.BR devinfo (8)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3commputil/sdp_add_origin.3commputil b/usr/src/man/man3commputil/sdp_add_origin.3commputil
index 1613bb2e22..e7010c4d2b 100644
--- a/usr/src/man/man3commputil/sdp_add_origin.3commputil
+++ b/usr/src/man/man3commputil/sdp_add_origin.3commputil
@@ -340,7 +340,7 @@ err_ret:
.in -2
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -356,6 +356,8 @@ MT-Level Safe
.TE
.SH SEE ALSO
-\fBlibcommputil\fR(3LIB), \fBsdp_new_session\fR(3COMMPUTIL),
-\fBsdp_parse\fR(3COMMPUTIL), \fBsdp_session_to_str\fR(3COMMPUTIL),
-\fBattributes\fR(5)
+.BR sdp_new_session (3COMMPUTIL),
+.BR sdp_parse (3COMMPUTIL),
+.BR sdp_session_to_str (3COMMPUTIL),
+.BR libcommputil (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3commputil/sdp_clone_session.3commputil b/usr/src/man/man3commputil/sdp_clone_session.3commputil
index 6e9c08fd1f..860a2ea69c 100644
--- a/usr/src/man/man3commputil/sdp_clone_session.3commputil
+++ b/usr/src/man/man3commputil/sdp_clone_session.3commputil
@@ -31,7 +31,7 @@ and \fINULL\fR on failure.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -49,5 +49,6 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibcommputil\fR(3LIB), \fBsdp_free_session\fR(3COMMPUTIL),
-\fBattributes\fR(5)
+.BR sdp_free_session (3COMMPUTIL),
+.BR libcommputil (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3commputil/sdp_delete_all_field.3commputil b/usr/src/man/man3commputil/sdp_delete_all_field.3commputil
index 9e95421109..a3c8fa20e8 100644
--- a/usr/src/man/man3commputil/sdp_delete_all_field.3commputil
+++ b/usr/src/man/man3commputil/sdp_delete_all_field.3commputil
@@ -60,7 +60,7 @@ unknown.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -78,4 +78,5 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibcommputil\fR(3LIB), \fBattributes\fR(5)
+.BR libcommputil (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3commputil/sdp_delete_media.3commputil b/usr/src/man/man3commputil/sdp_delete_media.3commputil
index 4f26f3bd1d..11422c3567 100644
--- a/usr/src/man/man3commputil/sdp_delete_media.3commputil
+++ b/usr/src/man/man3commputil/sdp_delete_media.3commputil
@@ -61,7 +61,7 @@ The mandatory input parameters are not provided or are \fINULL\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -79,6 +79,8 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibcommputil\fR(3LIB), \fBsdp_find_attribute\fR(3COMMPUTIL),
-\fBsdp_find_media\fR(3COMMPUTIL), \fBsdp_find_media_rtpmap\fR(3COMMPUTIL),
-\fBattributes\fR(5)
+.BR sdp_find_attribute (3COMMPUTIL),
+.BR sdp_find_media (3COMMPUTIL),
+.BR sdp_find_media_rtpmap (3COMMPUTIL),
+.BR libcommputil (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3commputil/sdp_find_attribute.3commputil b/usr/src/man/man3commputil/sdp_find_attribute.3commputil
index 482051079a..810b9fa9d0 100644
--- a/usr/src/man/man3commputil/sdp_find_attribute.3commputil
+++ b/usr/src/man/man3commputil/sdp_find_attribute.3commputil
@@ -61,7 +61,7 @@ else if((max_ptime = sdp_find_attribute(media->m_attr,
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -79,4 +79,6 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibcommputil\fR(3LIB), \fBsdp_parse\fR(3COMMPUTIL), \fBattributes\fR(5)
+.BR sdp_parse (3COMMPUTIL),
+.BR libcommputil (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3commputil/sdp_find_media.3commputil b/usr/src/man/man3commputil/sdp_find_media.3commputil
index 06a0df3ce0..569af4676a 100644
--- a/usr/src/man/man3commputil/sdp_find_media.3commputil
+++ b/usr/src/man/man3commputil/sdp_find_media.3commputil
@@ -59,7 +59,7 @@ my_media = sdp_find_media(session->s_media, "video");
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -77,4 +77,6 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibcommputil\fR(3LIB), \fBsdp_parse\fR(3COMMPUTIL), \fBattributes\fR(5)
+.BR sdp_parse (3COMMPUTIL),
+.BR libcommputil (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3commputil/sdp_find_media_rtpmap.3commputil b/usr/src/man/man3commputil/sdp_find_media_rtpmap.3commputil
index 86db8e07c1..c3ee9acb1f 100644
--- a/usr/src/man/man3commputil/sdp_find_media_rtpmap.3commputil
+++ b/usr/src/man/man3commputil/sdp_find_media_rtpmap.3commputil
@@ -64,7 +64,7 @@ mpv = sdp_find_media_rtpmap(video, "32");
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -82,4 +82,6 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibcommputil\fR(3LIB), \fBsdp_parse\fR(3COMMPUTIL), \fBattributes\fR(5)
+.BR sdp_parse (3COMMPUTIL),
+.BR libcommputil (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3commputil/sdp_new_session.3commputil b/usr/src/man/man3commputil/sdp_new_session.3commputil
index b0ee40a7e9..effb518b65 100644
--- a/usr/src/man/man3commputil/sdp_new_session.3commputil
+++ b/usr/src/man/man3commputil/sdp_new_session.3commputil
@@ -40,7 +40,7 @@ structure on success and \fINULL\fR on failure.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -58,4 +58,5 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibcommputil\fR(3LIB), \fBattributes\fR(5)
+.BR libcommputil (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3commputil/sdp_parse.3commputil b/usr/src/man/man3commputil/sdp_parse.3commputil
index abdae2ece5..ad8f7a3612 100644
--- a/usr/src/man/man3commputil/sdp_parse.3commputil
+++ b/usr/src/man/man3commputil/sdp_parse.3commputil
@@ -393,7 +393,7 @@ session {
.in -2
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -409,5 +409,6 @@ MT-Level Safe
.TE
.SH SEE ALSO
-\fBlibcommputil\fR(3LIB), \fBsdp_new_session\fR(3COMMPUTIL),
-\fBattributes\fR(5)
+.BR sdp_new_session (3COMMPUTIL),
+.BR libcommputil (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3commputil/sdp_session_to_str.3commputil b/usr/src/man/man3commputil/sdp_session_to_str.3commputil
index 0b704a9605..ba917249aa 100644
--- a/usr/src/man/man3commputil/sdp_session_to_str.3commputil
+++ b/usr/src/man/man3commputil/sdp_session_to_str.3commputil
@@ -61,7 +61,7 @@ A memory allocation failure occurred.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -79,4 +79,5 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibcommputil\fR(3LIB), \fBattributes\fR(5)
+.BR libcommputil (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3contract/ct_ctl_adopt.3contract b/usr/src/man/man3contract/ct_ctl_adopt.3contract
index e62176fe5a..b68098071e 100644
--- a/usr/src/man/man3contract/ct_ctl_adopt.3contract
+++ b/usr/src/man/man3contract/ct_ctl_adopt.3contract
@@ -45,7 +45,7 @@ cc [ \fIflag\fR\&.\|.\|. ] \fIfile\fR\&.\|.\|. \fB-D_LARGEFILE64_SOURCE\fR \fB -
.sp
.LP
These functions operate on contract control file descriptors obtained from the
-\fBcontract\fR(4) file system.
+\fBcontract\fR(5) file system.
.sp
.LP
The \fBct_ctl_adopt()\fR function adopts the contract referenced by the file
@@ -194,7 +194,7 @@ The maximum amount of time has been requested.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -212,5 +212,7 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibcontract\fR(3LIB), \fBcontract\fR(4), \fBattributes\fR(5),
-\fBlfcompile\fR(5)
+.BR libcontract (3LIB),
+.BR contract (5),
+.BR attributes (7),
+.BR lfcompile (7)
diff --git a/usr/src/man/man3contract/ct_dev_status_get_dev_state.3contract b/usr/src/man/man3contract/ct_dev_status_get_dev_state.3contract
index afaaa497d6..d90fd93d6a 100644
--- a/usr/src/man/man3contract/ct_dev_status_get_dev_state.3contract
+++ b/usr/src/man/man3contract/ct_dev_status_get_dev_state.3contract
@@ -200,7 +200,7 @@ The requested data is not present in the status object.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -218,6 +218,10 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBct_status_free\fR(3CONTRACT), \fBct_status_read\fR(3CONTRACT),
-\fBlibcontract\fR(3LIB), \fBcontract\fR(4), \fBdevices\fR(4),
-\fBattributes\fR(5), \fBlfcompile\fR(5)
+.BR ct_status_free (3CONTRACT),
+.BR ct_status_read (3CONTRACT),
+.BR libcontract (3LIB),
+.BR contract (5),
+.BR devices (5),
+.BR attributes (7),
+.BR lfcompile (7)
diff --git a/usr/src/man/man3contract/ct_dev_tmpl_set_aset.3contract b/usr/src/man/man3contract/ct_dev_tmpl_set_aset.3contract
index 0e81f9c088..6c5cb4abca 100644
--- a/usr/src/man/man3contract/ct_dev_tmpl_set_aset.3contract
+++ b/usr/src/man/man3contract/ct_dev_tmpl_set_aset.3contract
@@ -119,7 +119,7 @@ a pointer to a \fIuint_t\fR variable for receiving the current setting of the
.SH DESCRIPTION
.LP
These functions read and write device contract terms and operate on device
-contract template file descriptors obtained from the \fBcontract\fR(4)
+contract template file descriptors obtained from the \fBcontract\fR(5)
filesystem (ctfs).
.sp
.LP
@@ -246,7 +246,7 @@ The supplied buffer is too small.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -263,5 +263,8 @@ MT-Level Safe
.SH SEE ALSO
.LP
-\fBlibcontract\fR(3LIB), \fBcontract\fR(4), \fBdevices\fR(4),
-\fBattributes\fR(5), \fBlfcompile\fR(5)
+.BR libcontract (3LIB),
+.BR contract (5),
+.BR devices (5),
+.BR attributes (7),
+.BR lfcompile (7)
diff --git a/usr/src/man/man3contract/ct_event_read.3contract b/usr/src/man/man3contract/ct_event_read.3contract
index 800c5b375b..4e3b39931c 100644
--- a/usr/src/man/man3contract/ct_event_read.3contract
+++ b/usr/src/man/man3contract/ct_event_read.3contract
@@ -71,7 +71,7 @@ cc [ \fIflag\fR\&.\|.\|. ] \fIfile\fR\&.\|.\|. \fB-D_LARGEFILE64_SOURCE\fR \fB -
.SH DESCRIPTION
.LP
These functions operate on contract event endpoint file descriptors obtained
-from the \fBcontract\fR(4) file system and event object handles returned by
+from the \fBcontract\fR(5) file system and event object handles returned by
\fBct_event_read()\fR and \fBct_event_read_critical()\fR.
.sp
.LP
@@ -143,7 +143,7 @@ The message represents an exit negotiation.
.sp
.LP
The \fBct_event_get_type()\fR function reads the event type. The value is one
-of the event types described in \fBcontract\fR(4) or the contract type's manual
+of the event types described in \fBcontract\fR(5) or the contract type's manual
page.
.sp
.LP
@@ -208,7 +208,7 @@ The \fIevthndl\fR argument is not a \fBCT_EV_NEGEND\fR event object.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -225,5 +225,7 @@ MT-Level Safe
.SH SEE ALSO
.LP
-\fBlibcontract\fR(3LIB), \fBcontract\fR(4), \fBattributes\fR(5),
-\fBlfcompile\fR(5)
+.BR libcontract (3LIB),
+.BR contract (5),
+.BR attributes (7),
+.BR lfcompile (7)
diff --git a/usr/src/man/man3contract/ct_pr_event_get_pid.3contract b/usr/src/man/man3contract/ct_pr_event_get_pid.3contract
index d5fc60b400..970cd4d2a0 100644
--- a/usr/src/man/man3contract/ct_pr_event_get_pid.3contract
+++ b/usr/src/man/man3contract/ct_pr_event_get_pid.3contract
@@ -231,7 +231,7 @@ for (;;) {
.in -2
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -247,6 +247,11 @@ MT-Level Safe
.TE
.SH SEE ALSO
-\fBct_event_free\fR(3CONTRACT), \fBct_event_read\fR(3CONTRACT),
-\fBct_event_read_critical\fR(3CONTRACT), \fBlibcontract\fR(3LIB),
-\fBcontract\fR(4), \fBprocess\fR(4), \fBattributes\fR(5), \fBlfcompile\fR(5)
+.BR ct_event_free (3CONTRACT),
+.BR ct_event_read (3CONTRACT),
+.BR ct_event_read_critical (3CONTRACT),
+.BR libcontract (3LIB),
+.BR contract (5),
+.BR process (5),
+.BR attributes (7),
+.BR lfcompile (7)
diff --git a/usr/src/man/man3contract/ct_pr_status_get_param.3contract b/usr/src/man/man3contract/ct_pr_status_get_param.3contract
index 773b5751d7..2d1a4ec158 100644
--- a/usr/src/man/man3contract/ct_pr_status_get_param.3contract
+++ b/usr/src/man/man3contract/ct_pr_status_get_param.3contract
@@ -65,11 +65,11 @@ returned by \fBct_status_read\fR(3CONTRACT).
.sp
.LP
The \fBct_pr_status_get_param()\fR function reads the parameter set term. The
-value is a collection of bits as described in \fBprocess\fR(4).
+value is a collection of bits as described in \fBprocess\fR(5).
.sp
.LP
The \fBct_pr_status_get_fatal()\fR function reads the fatal event set term. The
-value is a collection of bits as described in \fBprocess\fR(4).
+value is a collection of bits as described in \fBprocess\fR(5).
.sp
.LP
The \fBct_pr_status_get_members()\fR function obtains a list of the process IDs
@@ -173,7 +173,7 @@ close(fd);
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -191,6 +191,10 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBct_status_free\fR(3CONTRACT), \fBct_status_read\fR(3CONTRACT),
-\fBlibcontract\fR(3LIB), \fBcontract\fR(4), \fBprocess\fR(4),
-\fBattributes\fR(5), \fBlfcompile\fR(5)
+.BR ct_status_free (3CONTRACT),
+.BR ct_status_read (3CONTRACT),
+.BR libcontract (3LIB),
+.BR contract (5),
+.BR process (5),
+.BR attributes (7),
+.BR lfcompile (7)
diff --git a/usr/src/man/man3contract/ct_pr_tmpl_set_transfer.3contract b/usr/src/man/man3contract/ct_pr_tmpl_set_transfer.3contract
index 91eba21dda..2a3cba7090 100644
--- a/usr/src/man/man3contract/ct_pr_tmpl_set_transfer.3contract
+++ b/usr/src/man/man3contract/ct_pr_tmpl_set_transfer.3contract
@@ -68,7 +68,7 @@ cc [ \fIflag\fR\&.\|.\|. ] \fIfile\fR\&.\|.\|. \fB-D_LARGEFILE64_SOURCE\fR \fB -
.sp
.LP
These functions read and write process contract terms and operate on process
-contract template file descriptors obtained from the \fBcontract\fR(4) file
+contract template file descriptors obtained from the \fBcontract\fR(5) file
system.
.sp
.LP
@@ -80,12 +80,12 @@ to be transferred to a newly created contract.
.LP
The \fBct_pr_tmpl_set_fatal()\fR and \fBct_pr_tmpl_get_fatal()\fR functions
write and read the fatal event set term. The value is a collection of bits as
-described in \fBprocess\fR(4).
+described in \fBprocess\fR(5).
.sp
.LP
The \fBct_pr_tmpl_set_param()\fR and \fBct_pr_tmpl_get_param()\fR functions
write and read the parameter set term. The value is a collection of bits as
-described in \fBprocess\fR(4).
+described in \fBprocess\fR(5).
.sp
.LP
The \fBct_pr_tmpl_set_svc_fmri()\fR and \fBct_pr_tmpl_get_svc_fmri()\fR
@@ -258,7 +258,7 @@ close(fd);
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -276,5 +276,9 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibcontract\fR(3LIB), \fBstrcpy\fR(3C), \fBcontract\fR(4), \fBprocess\fR(4),
-\fBattributes\fR(5), \fBlfcompile\fR(5)
+.BR strcpy (3C),
+.BR libcontract (3LIB),
+.BR contract (5),
+.BR process (5),
+.BR attributes (7),
+.BR lfcompile (7)
diff --git a/usr/src/man/man3contract/ct_status_read.3contract b/usr/src/man/man3contract/ct_status_read.3contract
index 6992a3450a..8739d8ce26 100644
--- a/usr/src/man/man3contract/ct_status_read.3contract
+++ b/usr/src/man/man3contract/ct_status_read.3contract
@@ -88,7 +88,7 @@ cc [ \fIflag\fR\&.\|.\|. ] \fIfile\fR\&.\|.\|. \fB-D_LARGEFILE64_SOURCE\fR \fB -
.sp
.LP
These functions operate on contract status file descriptors obtained from the
-\fBcontract\fR(4) file system and status object handles returned by
+\fBcontract\fR(5) file system and status object handles returned by
\fBct_status_read()\fR.
.sp
.LP
@@ -234,7 +234,7 @@ The \fIdetail\fR level specified is invalid.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -252,5 +252,7 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibcontract\fR(3LIB), \fBcontract\fR(4), \fBattributes\fR(5),
-\fBlfcompile\fR(5)
+.BR libcontract (3LIB),
+.BR contract (5),
+.BR attributes (7),
+.BR lfcompile (7)
diff --git a/usr/src/man/man3contract/ct_tmpl_activate.3contract b/usr/src/man/man3contract/ct_tmpl_activate.3contract
index cea0ad2481..4ad07a0f1f 100644
--- a/usr/src/man/man3contract/ct_tmpl_activate.3contract
+++ b/usr/src/man/man3contract/ct_tmpl_activate.3contract
@@ -62,7 +62,7 @@ cc [ \fIflag\fR\&.\|.\|. ] \fIfile\fR\&.\|.\|. \fB-D_LARGEFILE64_SOURCE\fR \fB -
.sp
.LP
These functions operate on contract template file descriptors obtained from the
-\fBcontract\fR(4) file system.
+\fBcontract\fR(5) file system.
.sp
.LP
The \fBct_tmpl_activate()\fR function makes the template referenced by the file
@@ -145,14 +145,14 @@ The \fBct_tmpl_set_critical()\fR function will fail if:
.ad
.RS 9n
One of the specified events was disallowed given other contract terms (see
-\fBcontract\fR(4)) and {\fBPRIV_CONTRACT_EVENT\fR} was not in the effective set
+\fBcontract\fR(5)) and {\fBPRIV_CONTRACT_EVENT\fR} was not in the effective set
for the calling process.
.RE
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -170,5 +170,7 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibcontract\fR(3LIB), \fBcontract\fR(4), \fBattributes\fR(5),
-\fBlfcompile\fR(5)
+.BR libcontract (3LIB),
+.BR contract (5),
+.BR attributes (7),
+.BR lfcompile (7)
diff --git a/usr/src/man/man3cpc/cpc.3cpc b/usr/src/man/man3cpc/cpc.3cpc
index 63a0ac70fe..3fa9f624f8 100644
--- a/usr/src/man/man3cpc/cpc.3cpc
+++ b/usr/src/man/man3cpc/cpc.3cpc
@@ -189,7 +189,7 @@ existing application without changing the source code.
A separate library,
.Sy libpctx ,
provides a simple set of interfaces that use the facilities of
-.Xr proc 4
+.Xr proc 5
to control a target process, and together with functions in
.Sy libcpc ,
allow
@@ -217,7 +217,6 @@ that consume
handles.
.Sh SEE ALSO
.Xr cputrack 1 ,
-.Xr cpustat 1M ,
.Xr cpc_bind_curlwp 3CPC ,
.Xr cpc_buf_create 3CPC ,
.Xr cpc_enable 3CPC ,
@@ -229,4 +228,5 @@ handles.
.Xr pctx_capture 3CPC ,
.Xr pctx_set_events 3CPC ,
.Xr libcpc 3LIB ,
-.Xr proc 4
+.Xr proc 5 ,
+.Xr cpustat 8
diff --git a/usr/src/man/man3cpc/cpc_access.3cpc b/usr/src/man/man3cpc/cpc_access.3cpc
index 1579905f9a..2a27515722 100644
--- a/usr/src/man/man3cpc/cpc_access.3cpc
+++ b/usr/src/man/man3cpc/cpc_access.3cpc
@@ -68,7 +68,7 @@ have been correctly installed.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -86,8 +86,12 @@ Interface Stability Obsolete
.SH SEE ALSO
.sp
.LP
-\fBcpc\fR(3CPC), \fBcpc_open\fR(3CPC), \fBcpc_seterrfn\fR(3CPC),
-\fBlibcpc\fR(3LIB), \fBproc\fR(4), \fBattributes\fR(5)
+.BR cpc (3CPC),
+.BR cpc_open (3CPC),
+.BR cpc_seterrfn (3CPC),
+.BR libcpc (3LIB),
+.BR proc (5),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3cpc/cpc_bind_curlwp.3cpc b/usr/src/man/man3cpc/cpc_bind_curlwp.3cpc
index 666bf6bb74..47c7854fcd 100644
--- a/usr/src/man/man3cpc/cpc_bind_curlwp.3cpc
+++ b/usr/src/man/man3cpc/cpc_bind_curlwp.3cpc
@@ -241,7 +241,7 @@ the example makes use of two counters to measure external cache references and
external cache hits. These options are only appropriate for UltraSPARC
processors. By setting the EVENT0 and EVENT1 environment variables to other
strings (a list of which can be obtained from the \fB-h\fR option of the
-\fBcpustat\fR(1M) or \fBcputrack\fR(1) utilities), other events can be counted.
+\fBcpustat\fR(8) or \fBcputrack\fR(1) utilities), other events can be counted.
The \fBerror()\fR routine is assumed to be a user-provided routine analogous to
the familiar \fBprintf\fR(3C) function from the C library that also performs an
\fBexit\fR(2) after printing the message.
@@ -423,7 +423,7 @@ library and creates a set:
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -441,9 +441,14 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBcpustat\fR(1M), \fBcputrack\fR(1), \fBpsrinfo\fR(1M),
-\fBprocessor_bind\fR(2), \fBcpc_seterrhndlr\fR(3CPC),
-\fBcpc_set_sample\fR(3CPC), \fBlibcpc\fR(3LIB), \fBattributes\fR(5)
+.BR cputrack (1),
+.BR processor_bind (2),
+.BR cpc_set_sample (3CPC),
+.BR cpc_seterrhndlr (3CPC),
+.BR libcpc (3LIB),
+.BR attributes (7),
+.BR cpustat (8),
+.BR psrinfo (8)
.SH NOTES
.sp
.LP
@@ -524,7 +529,7 @@ hardware counters per physical processor. To use \fBcpc_bind_curlwp()\fR or
\fBcpc_bind_pctx()\fR to measure per-\fBLWP\fR events on a system with Pentium
4 HT processors, a system administrator must first take processors in the
system offline until each physical processor has only one hardware thread
-online (See the \fB-p\fR option to \fBpsrinfo\fR(1M)). If a second hardware
+online (See the \fB-p\fR option to \fBpsrinfo\fR(8)). If a second hardware
thread is brought online, all per-\fBLWP\fR bound contexts will be invalidated
and any attempt to sample or bind a CPC set will return \fBEAGAIN\fR.
.sp
diff --git a/usr/src/man/man3cpc/cpc_bind_event.3cpc b/usr/src/man/man3cpc/cpc_bind_event.3cpc
index 26344cb5b7..03b7988eeb 100644
--- a/usr/src/man/man3cpc/cpc_bind_event.3cpc
+++ b/usr/src/man/man3cpc/cpc_bind_event.3cpc
@@ -288,7 +288,7 @@ samples than just print them out.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -306,10 +306,17 @@ Interface Stability Obsolete
.SH SEE ALSO
.sp
.LP
-\fBcpustat\fR(1M), \fBcputrack\fR(1), \fBwrite\fR(2), \fBcpc\fR(3CPC),
-\fBcpc_access\fR(3CPC), \fBcpc_bind_curlwp\fR(3CPC),
-\fBcpc_set_sample\fR(3CPC), \fBcpc_strtoevent\fR(3CPC), \fBcpc_unbind\fR(3CPC),
-\fBlibcpc\fR(3LIB), \fBattributes\fR(5)
+.BR cputrack (1),
+.BR write (2),
+.BR cpc (3CPC),
+.BR cpc_access (3CPC),
+.BR cpc_bind_curlwp (3CPC),
+.BR cpc_set_sample (3CPC),
+.BR cpc_strtoevent (3CPC),
+.BR cpc_unbind (3CPC),
+.BR libcpc (3LIB),
+.BR attributes (7),
+.BR cpustat (8)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3cpc/cpc_buf_create.3cpc b/usr/src/man/man3cpc/cpc_buf_create.3cpc
index ca84c0739b..956943cc1f 100644
--- a/usr/src/man/man3cpc/cpc_buf_create.3cpc
+++ b/usr/src/man/man3cpc/cpc_buf_create.3cpc
@@ -190,7 +190,7 @@ The library could not allocate enough memory for its internal data structures.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -208,8 +208,10 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBcpc_bind_curlwp\fR(3CPC), \fBcpc_set_add_request\fR(3CPC),
-\fBlibcpc\fR(3LIB), \fBattributes\fR(5)
+.BR cpc_bind_curlwp (3CPC),
+.BR cpc_set_add_request (3CPC),
+.BR libcpc (3LIB),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3cpc/cpc_count_usr_events.3cpc b/usr/src/man/man3cpc/cpc_count_usr_events.3cpc
index 36eaef55fb..9e82a5a950 100644
--- a/usr/src/man/man3cpc/cpc_count_usr_events.3cpc
+++ b/usr/src/man/man3cpc/cpc_count_usr_events.3cpc
@@ -112,7 +112,7 @@ main(int argc, char *argv[])
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -130,10 +130,16 @@ Interface Stability Obsolete
.SH SEE ALSO
.sp
.LP
-\fBcputrack\fR(1), \fBcpc\fR(3CPC), \fBcpc_access\fR(3CPC),
-\fBcpc_bind_event\fR(3CPC), \fBcpc_enable\fR(3CPC), \fBcpc_getcpuver\fR(3CPC),
-\fBcpc_pctx_bind_event\fR(3CPC), \fBcpc_version\fR(3CPC), \fBlibcpc\fR(3LIB),
-\fBattributes\fR(5)
+.BR cputrack (1),
+.BR cpc (3CPC),
+.BR cpc_access (3CPC),
+.BR cpc_bind_event (3CPC),
+.BR cpc_enable (3CPC),
+.BR cpc_getcpuver (3CPC),
+.BR cpc_pctx_bind_event (3CPC),
+.BR cpc_version (3CPC),
+.BR libcpc (3LIB),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3cpc/cpc_enable.3cpc b/usr/src/man/man3cpc/cpc_enable.3cpc
index 34f549719d..9b1bf9e3a5 100644
--- a/usr/src/man/man3cpc/cpc_enable.3cpc
+++ b/usr/src/man/man3cpc/cpc_enable.3cpc
@@ -100,7 +100,7 @@ main(int argc, char *argv[])
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -118,5 +118,8 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBcputrack\fR(1), \fBcpc\fR(3CPC), \fBcpc_open\fR(3CPC), \fBlibcpc\fR(3LIB),
-\fBattributes\fR(5)
+.BR cputrack (1),
+.BR cpc (3CPC),
+.BR cpc_open (3CPC),
+.BR libcpc (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3cpc/cpc_event.3cpc b/usr/src/man/man3cpc/cpc_event.3cpc
index ad56fa9336..81dfbe401d 100644
--- a/usr/src/man/man3cpc/cpc_event.3cpc
+++ b/usr/src/man/man3cpc/cpc_event.3cpc
@@ -81,7 +81,7 @@ in the \fBce_tsc\fR field.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -97,5 +97,8 @@ Interface Stability Evolving
.SH SEE ALSO
.sp
.LP
-\fBgethrtime\fR(3C), \fBcpc\fR(3CPC), \fBcpc_version\fR(3CPC),
-\fBlibcpc\fR(3LIB), \fBattributes\fR(5)
+.BR gethrtime (3C),
+.BR cpc (3CPC),
+.BR cpc_version (3CPC),
+.BR libcpc (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3cpc/cpc_event_diff.3cpc b/usr/src/man/man3cpc/cpc_event_diff.3cpc
index ff6cbd264f..820d6e5940 100644
--- a/usr/src/man/man3cpc/cpc_event_diff.3cpc
+++ b/usr/src/man/man3cpc/cpc_event_diff.3cpc
@@ -67,7 +67,7 @@ field of \fIdiff\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -85,8 +85,12 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBcpc\fR(3CPC), \fBcpc_buf_add\fR(3CPC), \fBcpc_buf_sub\fR(3CPC),
-\fBcpc_event\fR(3CPC), \fBlibcpc\fR(3LIB), \fBattributes\fR(5)
+.BR cpc (3CPC),
+.BR cpc_buf_add (3CPC),
+.BR cpc_buf_sub (3CPC),
+.BR cpc_event (3CPC),
+.BR libcpc (3LIB),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3cpc/cpc_getcpuver.3cpc b/usr/src/man/man3cpc/cpc_getcpuver.3cpc
index a48b7f929c..bc5b0fbf52 100644
--- a/usr/src/man/man3cpc/cpc_getcpuver.3cpc
+++ b/usr/src/man/man3cpc/cpc_getcpuver.3cpc
@@ -110,7 +110,7 @@ system.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -128,9 +128,14 @@ Interface Stability Obsolete
.SH SEE ALSO
.sp
.LP
-\fBcpc\fR(3CPC), \fBcpc_access\fR(3CPC), \fBcpc_cciname\fR(3CPC),
-\fBcpc_cpuref\fR(3CPC), \fBcpc_npic\fR(3CPC),
-\fBcpc_walk_events_all\fR(3CPC), \fBlibcpc\fR(3LIB), \fBattributes\fR(5)
+.BR cpc (3CPC),
+.BR cpc_access (3CPC),
+.BR cpc_cciname (3CPC),
+.BR cpc_cpuref (3CPC),
+.BR cpc_npic (3CPC),
+.BR cpc_walk_events_all (3CPC),
+.BR libcpc (3LIB),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3cpc/cpc_npic.3cpc b/usr/src/man/man3cpc/cpc_npic.3cpc
index eb835b5f00..5d2a3605db 100644
--- a/usr/src/man/man3cpc/cpc_npic.3cpc
+++ b/usr/src/man/man3cpc/cpc_npic.3cpc
@@ -182,7 +182,7 @@ There is not enough memory available.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -200,5 +200,7 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBcpc_bind_curlwp\fR(3CPC), \fBgeneric_events\fR(3CPC), \fBlibcpc\fR(3LIB),
-\fBattributes\fR(5)
+.BR cpc_bind_curlwp (3CPC),
+.BR generic_events (3CPC),
+.BR libcpc (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3cpc/cpc_open.3cpc b/usr/src/man/man3cpc/cpc_open.3cpc
index 0e7c335305..51f00a87a1 100644
--- a/usr/src/man/man3cpc/cpc_open.3cpc
+++ b/usr/src/man/man3cpc/cpc_open.3cpc
@@ -64,7 +64,7 @@ The version requested by the client is incompatible with the implementation.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -82,4 +82,5 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibcpc\fR(3LIB), \fBattributes\fR(5)
+.BR libcpc (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3cpc/cpc_pctx_bind_event.3cpc b/usr/src/man/man3cpc/cpc_pctx_bind_event.3cpc
index 1916c82cbe..776537d97b 100644
--- a/usr/src/man/man3cpc/cpc_pctx_bind_event.3cpc
+++ b/usr/src/man/man3cpc/cpc_pctx_bind_event.3cpc
@@ -89,7 +89,7 @@ controlled process.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -107,8 +107,12 @@ Interface Stability Evolving
.SH SEE ALSO
.sp
.LP
-\fBcpc\fR(3CPC), \fBcpc_bind_event\fR(3CPC), \fBlibcpc\fR(3LIB),
-\fBpctx_capture\fR(3CPC), \fBpctx_create\fR(3CPC), \fBattributes\fR(5)
+.BR cpc (3CPC),
+.BR cpc_bind_event (3CPC),
+.BR pctx_capture (3CPC),
+.BR pctx_create (3CPC),
+.BR libcpc (3LIB),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3cpc/cpc_set_create.3cpc b/usr/src/man/man3cpc/cpc_set_create.3cpc
index 71e691ab50..5ba92b1806 100644
--- a/usr/src/man/man3cpc/cpc_set_create.3cpc
+++ b/usr/src/man/man3cpc/cpc_set_create.3cpc
@@ -197,7 +197,7 @@ data structures.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -215,9 +215,13 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBcpc_bind_curlwp\fR(3CPC), \fBcpc_buf_create\fR(3CPC), \fBcpc_npic\fR(3CPC),
-\fBcpc_seterrhndlr\fR(3CPC), \fBlibcpc\fR(3LIB), \fBstrtol\fR(3C),
-\fBattributes\fR(5)
+.BR strtol (3C),
+.BR cpc_bind_curlwp (3CPC),
+.BR cpc_buf_create (3CPC),
+.BR cpc_npic (3CPC),
+.BR cpc_seterrhndlr (3CPC),
+.BR libcpc (3LIB),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3cpc/cpc_seterrfn.3cpc b/usr/src/man/man3cpc/cpc_seterrfn.3cpc
index 1de489e904..637dd27e5f 100644
--- a/usr/src/man/man3cpc/cpc_seterrfn.3cpc
+++ b/usr/src/man/man3cpc/cpc_seterrfn.3cpc
@@ -68,7 +68,7 @@ myapp_errfn(const char *fn, const char *fmt, va_list ap)
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -86,8 +86,11 @@ Interface Stability Obsolete
.SH SEE ALSO
.sp
.LP
-\fBcpc\fR(3CPC), \fBcpc_seterrhndlr\fR(3CPC), \fBlibcpc\fR(3LIB),
-\fBvsnprintf\fR(3C), \fBattributes\fR(5)
+.BR vsnprintf (3C),
+.BR cpc (3CPC),
+.BR cpc_seterrhndlr (3CPC),
+.BR libcpc (3LIB),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3cpc/cpc_seterrhndlr.3cpc b/usr/src/man/man3cpc/cpc_seterrhndlr.3cpc
index 4bdb77328e..8eca9b61cb 100644
--- a/usr/src/man/man3cpc/cpc_seterrhndlr.3cpc
+++ b/usr/src/man/man3cpc/cpc_seterrhndlr.3cpc
@@ -166,7 +166,7 @@ myapp_errfn(const char *fn, int subcode, const char *fmt, va_list ap)
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -183,5 +183,7 @@ MT-Level Safe
.SH SEE ALSO
.LP
-\fBcpc_bind_curlwp\fR(3CPC), \fBlibcpc\fR(3LIB), \fBvsnprintf\fR(3C),
-\fBattributes\fR(5)
+.BR vsnprintf (3C),
+.BR cpc_bind_curlwp (3CPC),
+.BR libcpc (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3cpc/cpc_shared_open.3cpc b/usr/src/man/man3cpc/cpc_shared_open.3cpc
index 4520ea87a7..2f62d141c5 100644
--- a/usr/src/man/man3cpc/cpc_shared_open.3cpc
+++ b/usr/src/man/man3cpc/cpc_shared_open.3cpc
@@ -157,7 +157,7 @@ to disallow access to them system-wide.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -175,9 +175,15 @@ Interface Stability Obsolete
.SH SEE ALSO
.sp
.LP
-\fBprocessor_bind\fR(2), \fBcpc\fR(3CPC), \fBcpc_bind_cpu\fR(3CPC),
-\fBcpc_bind_event\fR(3CPC), \fBcpc_set_sample\fR(3CPC), \fBcpc_unbind\fR(3CPC),
-\fBlibcpc\fR(3LIB), \fBthr_create\fR(3C), \fBattributes\fR(5)
+.BR processor_bind (2),
+.BR thr_create (3C),
+.BR cpc (3CPC),
+.BR cpc_bind_cpu (3CPC),
+.BR cpc_bind_event (3CPC),
+.BR cpc_set_sample (3CPC),
+.BR cpc_unbind (3CPC),
+.BR libcpc (3LIB),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3cpc/cpc_strtoevent.3cpc b/usr/src/man/man3cpc/cpc_strtoevent.3cpc
index cc08a937f4..69150721f6 100644
--- a/usr/src/man/man3cpc/cpc_strtoevent.3cpc
+++ b/usr/src/man/man3cpc/cpc_strtoevent.3cpc
@@ -148,7 +148,7 @@ else
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -166,9 +166,14 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBcpc\fR(3CPC), \fBcpc_getcpuver\fR(3CPC), \fBcpc_set_add_request\fR(3CPC),
-\fBcpc_seterrfn\fR(3CPC), \fBfree\fR(3C), \fBgetsubopt\fR(3C),
-\fBlibcpc\fR(3LIB), \fBattributes\fR(5)
+.BR free (3C),
+.BR getsubopt (3C),
+.BR cpc (3CPC),
+.BR cpc_getcpuver (3CPC),
+.BR cpc_set_add_request (3CPC),
+.BR cpc_seterrfn (3CPC),
+.BR libcpc (3LIB),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3cpc/cpc_version.3cpc b/usr/src/man/man3cpc/cpc_version.3cpc
index 2df4e4cb6c..78de918aa1 100644
--- a/usr/src/man/man3cpc/cpc_version.3cpc
+++ b/usr/src/man/man3cpc/cpc_version.3cpc
@@ -56,7 +56,7 @@ if (cpc_version(CPC_VER_CURRENT) == CPC_VER_NONE) {
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -74,7 +74,10 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcpc\fR(3CPC), \fBcpc_open\fR(3CPC), \fBlibcpc\fR(3LIB), \fBattributes\fR(5)
+.BR cpc (3CPC),
+.BR cpc_open (3CPC),
+.BR libcpc (3LIB),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3cpc/generic_events.3cpc b/usr/src/man/man3cpc/generic_events.3cpc
index d3aee4e9ea..dc5a0f5e2b 100644
--- a/usr/src/man/man3cpc/generic_events.3cpc
+++ b/usr/src/man/man3cpc/generic_events.3cpc
@@ -1235,7 +1235,7 @@ _
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -1251,7 +1251,8 @@ Interface Stability Volatile
.SH SEE ALSO
.sp
.LP
-\fBcpc\fR(3CPC), \fBattributes\fR(5)
+.BR cpc (3CPC),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3cpc/pctx_capture.3cpc b/usr/src/man/man3cpc/pctx_capture.3cpc
index 6aa903669c..b7a1ed96a6 100644
--- a/usr/src/man/man3cpc/pctx_capture.3cpc
+++ b/usr/src/man/man3cpc/pctx_capture.3cpc
@@ -102,7 +102,7 @@ controlled process either stopped or exited (if the controlled process has
invoked \fBexit\fR(2).) If an error has occurred (for example, if the
controlled process has \fBexec\fR-ed a set-\fBID\fR executable, if certain
callbacks have returned error indications, or if the process was unable to
-respond to \fBproc\fR(4) requests) an error message is printed and the function
+respond to \fBproc\fR(5) requests) an error message is printed and the function
returns \(mi1.
.SH USAGE
.sp
@@ -112,7 +112,7 @@ be made to perform various system calls on its behalf. No system calls are
directly supported in this version of the API, though system calls are executed
by the \fBcpc_pctx\fR family of interfaces in \fBlibcpc\fR such as
\fBcpc_pctx_bind_event\fR(3CPC). A specially created agent \fBLWP\fR is used to
-execute these system calls in the controlled process. See \fBproc\fR(4) for
+execute these system calls in the controlled process. See \fBproc\fR(5) for
more details.
.sp
.LP
@@ -124,7 +124,7 @@ while the agent \fBLWP\fR is still alive inside the controlled process.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -142,5 +142,9 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBfork\fR(2), \fBcpc\fR(3CPC), \fBpctx_set_events\fR(3CPC),
-\fBlibpctx\fR(3LIB), \fBproc\fR(4), \fBattributes\fR(5)
+.BR fork (2),
+.BR cpc (3CPC),
+.BR pctx_set_events (3CPC),
+.BR libpctx (3LIB),
+.BR proc (5),
+.BR attributes (7)
diff --git a/usr/src/man/man3cpc/pctx_set_events.3cpc b/usr/src/man/man3cpc/pctx_set_events.3cpc
index 81b009d439..61540c2a99 100644
--- a/usr/src/man/man3cpc/pctx_set_events.3cpc
+++ b/usr/src/man/man3cpc/pctx_set_events.3cpc
@@ -172,7 +172,7 @@ main()
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -190,5 +190,12 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBexec\fR(2), \fBexit\fR(2), \fBfork\fR(2), \fBvfork\fR(2), \fBfork1\fR(2),
-\fBcpc\fR(3CPC), \fBlibpctx\fR(3LIB), \fBproc\fR(4), \fBattributes\fR(5)
+.BR exec (2),
+.BR exit (2),
+.BR fork (2),
+.BR fork1 (2),
+.BR vfork (2),
+.BR cpc (3CPC),
+.BR libpctx (3LIB),
+.BR proc (5),
+.BR attributes (7)
diff --git a/usr/src/man/man3curses/curs_addch.3curses b/usr/src/man/man3curses/curs_addch.3curses
index e8958eefeb..dc9efcba86 100644
--- a/usr/src/man/man3curses/curs_addch.3curses
+++ b/usr/src/man/man3curses/curs_addch.3curses
@@ -152,7 +152,7 @@ other than \fBERR\fR upon successful completion.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -168,9 +168,14 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurs_attr\fR(3CURSES), \fBcurs_clear\fR(3CURSES), \fBcurs_inch\fR(3CURSES),
-\fBcurs_outopts\fR(3CURSES), \fBcurs_refresh\fR(3CURSES),
-\fBcurses\fR(3CURSES), \fBputc\fR(3C), \fBattributes\fR(5)
+.BR putc (3C),
+.BR curs_attr (3CURSES),
+.BR curs_clear (3CURSES),
+.BR curs_inch (3CURSES),
+.BR curs_outopts (3CURSES),
+.BR curs_refresh (3CURSES),
+.BR curses (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/curs_addchstr.3curses b/usr/src/man/man3curses/curs_addchstr.3curses
index d3f4cfd8d1..b7d3089449 100644
--- a/usr/src/man/man3curses/curs_addchstr.3curses
+++ b/usr/src/man/man3curses/curs_addchstr.3curses
@@ -78,7 +78,7 @@ other than \fBERR\fR upon successful completion.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -94,7 +94,9 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurs_addstr\fR(3CURSES), \fBcurses\fR(3CURSES), \fBattributes\fR(5)
+.BR curs_addstr (3CURSES),
+.BR curses (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/curs_addstr.3curses b/usr/src/man/man3curses/curs_addstr.3curses
index 398687339e..945f984601 100644
--- a/usr/src/man/man3curses/curs_addstr.3curses
+++ b/usr/src/man/man3curses/curs_addstr.3curses
@@ -69,7 +69,7 @@ other than \fBERR\fR upon successful completion.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -85,7 +85,9 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurs_addch\fR(3CURSES), \fBcurses\fR(3CURSES), \fBattributes\fR(5)
+.BR curs_addch (3CURSES),
+.BR curses (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/curs_addwch.3curses b/usr/src/man/man3curses/curs_addwch.3curses
index d00e9b2af2..9fbc70736d 100644
--- a/usr/src/man/man3curses/curs_addwch.3curses
+++ b/usr/src/man/man3curses/curs_addwch.3curses
@@ -150,7 +150,7 @@ All routines return the integer \fBERR\fR upon failure and an integer value
other than \fBERR\fR upon successful completion, unless otherwise noted in the
preceding routine descriptions.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -164,10 +164,17 @@ MT-Level Unsafe
.TE
.SH SEE ALSO
-\fBputwchar\fR(3C), \fBclrtoeol\fR(3CURSES), \fBcurses\fR(3CURSES),
-\fBcurs_attr\fR(3CURSES), \fBcurs_inwch\fR(3CURSES),
-\fBcurs_outopts\fR(3CURSES), \fBrefresh\fR(3CURSES), \fBstandout\fR(3CURSES),
-\fBwinwch\fR(3CURSES), \fBwrefresh\fR(3CURSES), \fBattributes\fR(5)
+.BR putwchar (3C),
+.BR clrtoeol (3CURSES),
+.BR curs_attr (3CURSES),
+.BR curs_inwch (3CURSES),
+.BR curs_outopts (3CURSES),
+.BR curses (3CURSES),
+.BR refresh (3CURSES),
+.BR standout (3CURSES),
+.BR winwch (3CURSES),
+.BR wrefresh (3CURSES),
+.BR attributes (7)
.SH NOTES
The header file <\fBcurses.h\fR> automatically includes the header files
<\fBstdio.h\fR>, <\fBunctrl.h\fR> and <\fBwidec.h\fR>.
diff --git a/usr/src/man/man3curses/curs_addwchstr.3curses b/usr/src/man/man3curses/curs_addwchstr.3curses
index 66c9e25a79..43cb10c6da 100644
--- a/usr/src/man/man3curses/curs_addwchstr.3curses
+++ b/usr/src/man/man3curses/curs_addwchstr.3curses
@@ -76,7 +76,7 @@ All routines return the integer \fBERR\fR upon failure and an integer value
other than \fBERR\fR upon successful completion, unless otherwise noted in the
preceding routine descriptions.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -90,7 +90,9 @@ MT-Level Unsafe
.TE
.SH SEE ALSO
-\fBcurses\fR(3CURSES), \fBwaddnwstr\fR(3CURSES), \fBattributes\fR(5)
+.BR curses (3CURSES),
+.BR waddnwstr (3CURSES),
+.BR attributes (7)
.SH NOTES
The header file <\fBcurses.h\fR> automatically includes the header files
<\fBstdio.h\fR>, <\fBunctrl.h\fR> and <\fBwidec.h\fR>.
diff --git a/usr/src/man/man3curses/curs_addwstr.3curses b/usr/src/man/man3curses/curs_addwstr.3curses
index f2ce50d27d..3212589e0d 100644
--- a/usr/src/man/man3curses/curs_addwstr.3curses
+++ b/usr/src/man/man3curses/curs_addwstr.3curses
@@ -67,7 +67,7 @@ the entire string will be added.
All routines return the integer \fBERR\fR upon failure and an integer value
other than \fBERR\fR upon successful completion.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -81,7 +81,9 @@ MT-Level Unsafe
.TE
.SH SEE ALSO
-\fBcurses\fR(3CURSES), \fBwaddwch\fR(3CURSES), \fBattributes\fR(5)
+.BR curses (3CURSES),
+.BR waddwch (3CURSES),
+.BR attributes (7)
.SH NOTES
The header file <\fBcurses.h\fR> automatically includes the header files
<\fBstdio.h\fR>, <\fBnctrl.h\fR> and <\fBwidec.h\fR>.
diff --git a/usr/src/man/man3curses/curs_alecompat.3curses b/usr/src/man/man3curses/curs_alecompat.3curses
index 78175d8638..e495aa46ad 100644
--- a/usr/src/man/man3curses/curs_alecompat.3curses
+++ b/usr/src/man/man3curses/curs_alecompat.3curses
@@ -74,7 +74,7 @@ other than \fBERR\fR upon successful completion.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -90,7 +90,9 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurses\fR(3CURSES), \fBgetyx\fR(3CURSES), \fBattributes\fR(5)
+.BR curses (3CURSES),
+.BR getyx (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/curs_attr.3curses b/usr/src/man/man3curses/curs_attr.3curses
index 6eaa543c25..76a7d146d2 100644
--- a/usr/src/man/man3curses/curs_attr.3curses
+++ b/usr/src/man/man3curses/curs_attr.3curses
@@ -187,7 +187,7 @@ These routines always return 1.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -203,8 +203,11 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurs_addch\fR(3CURSES), \fBcurs_addstr\fR(3CURSES),
-\fBcurs_printw\fR(3CURSES), \fBcurses\fR(3CURSES), \fBattributes\fR(5)
+.BR curs_addch (3CURSES),
+.BR curs_addstr (3CURSES),
+.BR curs_printw (3CURSES),
+.BR curses (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/curs_beep.3curses b/usr/src/man/man3curses/curs_beep.3curses
index 5b66162f62..41831bab66 100644
--- a/usr/src/man/man3curses/curs_beep.3curses
+++ b/usr/src/man/man3curses/curs_beep.3curses
@@ -38,7 +38,7 @@ These routines always return \fBOK\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -54,7 +54,8 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurses\fR(3CURSES), \fBattributes\fR(5)
+.BR curses (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/curs_bkgd.3curses b/usr/src/man/man3curses/curs_bkgd.3curses
index 9835f275ec..8dfaa0dfa7 100644
--- a/usr/src/man/man3curses/curs_bkgd.3curses
+++ b/usr/src/man/man3curses/curs_bkgd.3curses
@@ -62,7 +62,7 @@ integer, if \fBimmedok()\fR is set. See \fBcurs_outopts\fR(3CURSES).
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -78,8 +78,10 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurs_addch\fR(3CURSES), \fBcurs_outopts\fR(3CURSES), \fBcurses\fR(3CURSES),
-\fBattributes\fR(5)
+.BR curs_addch (3CURSES),
+.BR curs_outopts (3CURSES),
+.BR curses (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/curs_border.3curses b/usr/src/man/man3curses/curs_border.3curses
index 2bb09c5fa6..d44d06c325 100644
--- a/usr/src/man/man3curses/curs_border.3curses
+++ b/usr/src/man/man3curses/curs_border.3curses
@@ -104,7 +104,7 @@ All routines return the integer \fBOK\fR, or a non-negative integer if
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -120,7 +120,9 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurs_outopts\fR(3CURSES), \fBcurses\fR(3CURSES), \fBattributes\fR(5)
+.BR curs_outopts (3CURSES),
+.BR curses (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/curs_clear.3curses b/usr/src/man/man3curses/curs_clear.3curses
index 7f76131ad7..ba4c177b45 100644
--- a/usr/src/man/man3curses/curs_clear.3curses
+++ b/usr/src/man/man3curses/curs_clear.3curses
@@ -80,7 +80,7 @@ All routines return the integer \fBOK\fR, or a non-negative integer if
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -96,8 +96,10 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurs_outopts\fR(3CURSES), \fBcurs_refresh\fR(3CURSES),
-\fBcurses\fR(3CURSES), \fBattributes\fR(5)
+.BR curs_outopts (3CURSES),
+.BR curs_refresh (3CURSES),
+.BR curses (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/curs_color.3curses b/usr/src/man/man3curses/curs_color.3curses
index 6e833f4d47..29baa7b454 100644
--- a/usr/src/man/man3curses/curs_color.3curses
+++ b/usr/src/man/man3curses/curs_color.3curses
@@ -157,7 +157,7 @@ upon successful completion.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -173,8 +173,10 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurs_attr\fR(3CURSES), \fBcurs_initscr\fR(3CURSES), \fBcurses\fR(3CURSES),
-\fBattributes\fR(5)
+.BR curs_attr (3CURSES),
+.BR curs_initscr (3CURSES),
+.BR curses (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/curs_delch.3curses b/usr/src/man/man3curses/curs_delch.3curses
index 2eafb8fb7a..af39c3ad67 100644
--- a/usr/src/man/man3curses/curs_delch.3curses
+++ b/usr/src/man/man3curses/curs_delch.3curses
@@ -48,7 +48,7 @@ other than \fBERR\fR upon successful completion.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -64,7 +64,8 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurses\fR(3CURSES), \fBattributes\fR(5)
+.BR curses (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/curs_deleteln.3curses b/usr/src/man/man3curses/curs_deleteln.3curses
index d9f04d1ade..d517842579 100644
--- a/usr/src/man/man3curses/curs_deleteln.3curses
+++ b/usr/src/man/man3curses/curs_deleteln.3curses
@@ -69,7 +69,7 @@ other than \fBERR\fR upon successful completion.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -85,7 +85,8 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurses\fR(3CURSES), \fBattributes\fR(5)
+.BR curses (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/curs_getch.3curses b/usr/src/man/man3curses/curs_getch.3curses
index 24fe0a96d0..3f57744f98 100644
--- a/usr/src/man/man3curses/curs_getch.3curses
+++ b/usr/src/man/man3curses/curs_getch.3curses
@@ -192,7 +192,7 @@ code upon successful completion.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -208,8 +208,11 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurs_inopts\fR(3CURSES), \fBcurs_move\fR(3CURSES),
-\fBcurs_refresh\fR(3CURSES), \fBcurses\fR(3CURSES), \fBattributes\fR(5)
+.BR curs_inopts (3CURSES),
+.BR curs_move (3CURSES),
+.BR curs_refresh (3CURSES),
+.BR curses (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/curs_getstr.3curses b/usr/src/man/man3curses/curs_getstr.3curses
index e66b90c2a0..2ed9325749 100644
--- a/usr/src/man/man3curses/curs_getstr.3curses
+++ b/usr/src/man/man3curses/curs_getstr.3curses
@@ -55,7 +55,7 @@ other than \fBERR\fR upon successful completion.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -71,7 +71,9 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurs_getch\fR(3CURSES), \fBcurses\fR(3CURSES), \fBattributes\fR(5)
+.BR curs_getch (3CURSES),
+.BR curses (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/curs_getwch.3curses b/usr/src/man/man3curses/curs_getwch.3curses
index b146753877..f50a319031 100644
--- a/usr/src/man/man3curses/curs_getwch.3curses
+++ b/usr/src/man/man3curses/curs_getwch.3curses
@@ -77,7 +77,7 @@ The following function keys, defined in \fB<curses.h>\fR, might be returned by
\fBgetwch()\fR if \fBkeypad\fR has been enabled. Note that not all of these
may be supported on a particular terminal if the terminal does not transmit a
unique code when the key is pressed or if the definition for the key is not
-present in the \fBterminfo\fR(4) database.
+present in the \fBterminfo\fR(5) database.
.sp
.sp
@@ -191,7 +191,7 @@ other than \fBERR\fR upon successful completion.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -207,8 +207,12 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurses\fR(3CURSES), \fBcurs_inopts\fR(3CURSES), \fBcurs_move\fR(3CURSES),
-\fBwrefresh\fR(3CURSES), \fBterminfo\fR(4), \fBattributes\fR(5)
+.BR curs_inopts (3CURSES),
+.BR curs_move (3CURSES),
+.BR curses (3CURSES),
+.BR wrefresh (3CURSES),
+.BR terminfo (5),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/curs_getwstr.3curses b/usr/src/man/man3curses/curs_getwstr.3curses
index 7bbff59cad..c999a82fb2 100644
--- a/usr/src/man/man3curses/curs_getwstr.3curses
+++ b/usr/src/man/man3curses/curs_getwstr.3curses
@@ -71,7 +71,7 @@ other than \fBERR\fR upon successful completion.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for a description of the following attributes:
+See \fBattributes\fR(7) for a description of the following attributes:
.sp
.sp
@@ -87,7 +87,9 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurses\fR(3CURSES), \fBgetwch\fR(3CURSES), \fBattributes\fR(5)
+.BR curses (3CURSES),
+.BR getwch (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/curs_getyx.3curses b/usr/src/man/man3curses/curs_getyx.3curses
index 9dd998fbde..0cd35f5ca3 100644
--- a/usr/src/man/man3curses/curs_getyx.3curses
+++ b/usr/src/man/man3curses/curs_getyx.3curses
@@ -55,7 +55,7 @@ used as the right-hand side of assignment statements).
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -71,7 +71,8 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurses\fR(3CURSES), \fBattributes\fR(5)
+.BR curses (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/curs_inch.3curses b/usr/src/man/man3curses/curs_inch.3curses
index bc9e316bbd..6cf43d9449 100644
--- a/usr/src/man/man3curses/curs_inch.3curses
+++ b/usr/src/man/man3curses/curs_inch.3curses
@@ -75,7 +75,7 @@ Bit-mask to extract color-pair field information
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -91,7 +91,8 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurses\fR(3CURSES), \fBattributes\fR(5)
+.BR curses (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/curs_inchstr.3curses b/usr/src/man/man3curses/curs_inchstr.3curses
index 62e5d321f9..7fe23d63fe 100644
--- a/usr/src/man/man3curses/curs_inchstr.3curses
+++ b/usr/src/man/man3curses/curs_inchstr.3curses
@@ -71,7 +71,7 @@ other than \fBERR\fR upon successful completion.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -87,7 +87,9 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurs_inch\fR(3CURSES), \fBcurses\fR(3CURSES), \fBattributes\fR(5)
+.BR curs_inch (3CURSES),
+.BR curses (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/curs_initscr.3curses b/usr/src/man/man3curses/curs_initscr.3curses
index 6983540823..934bf62a22 100644
--- a/usr/src/man/man3curses/curs_initscr.3curses
+++ b/usr/src/man/man3curses/curs_initscr.3curses
@@ -105,7 +105,7 @@ Routines that return pointers always return \fINULL\fR on error.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -121,9 +121,12 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurs_kernel\fR(3CURSES), \fBcurs_refresh\fR(3CURSES),
-\fBcurs_slk\fR(3CURSES), \fBcurs_util\fR(3CURSES), \fBcurses\fR(3CURSES),
-\fBattributes\fR(5)
+.BR curs_kernel (3CURSES),
+.BR curs_refresh (3CURSES),
+.BR curs_slk (3CURSES),
+.BR curs_util (3CURSES),
+.BR curses (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/curs_inopts.3curses b/usr/src/man/man3curses/curs_inopts.3curses
index 716748cd7d..663eada4bf 100644
--- a/usr/src/man/man3curses/curs_inopts.3curses
+++ b/usr/src/man/man3curses/curs_inopts.3curses
@@ -157,7 +157,7 @@ value for keypad is false.
.sp
.LP
Initially, whether the terminal returns 7 or 8 significant bits on input
-depends on the control mode of the tty driver (see \fBtermio\fR(7I)). To force
+depends on the control mode of the tty driver (see \fBtermio\fR(4I)). To force
8 bits to be returned, invoke \fBmeta\fR(\fIwin\fR, \fBTRUE\fR). To force 7
bits to be returned, invoke \fBmeta\fR(\fIwin\fR, \fBFALSE\fR). The window
argument, \fIwin\fR, is always ignored. If the terminfo capabilities \fBsmm\fR
@@ -189,7 +189,7 @@ by \fBcurses\fR.
.LP
When the \fBnoqiflush()\fR routine is used, normal flush of input and output
queues associated with the \fBINTR\fR, \fBQUIT\fR and \fBSUSP\fR characters
-will not be done (see \fBtermio\fR(7I)). When \fBqiflush()\fR is called, the
+will not be done (see \fBtermio\fR(4I)). When \fBqiflush()\fR is called, the
queues will be flushed when these control characters are read.
.sp
.LP
@@ -222,7 +222,7 @@ noted in the preceding routine descriptions.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -238,8 +238,11 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurs_getch\fR(3CURSES), \fBcurs_initscr\fR(3CURSES), \fBcurses\fR(3CURSES),
-\fBattributes\fR(5), \fBtermio\fR(7I)
+.BR curs_getch (3CURSES),
+.BR curs_initscr (3CURSES),
+.BR curses (3CURSES),
+.BR termio (4I),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/curs_insch.3curses b/usr/src/man/man3curses/curs_insch.3curses
index dd2c3b4041..7bd0911cdf 100644
--- a/usr/src/man/man3curses/curs_insch.3curses
+++ b/usr/src/man/man3curses/curs_insch.3curses
@@ -48,7 +48,7 @@ other than \fBERR\fR upon successful completion.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -64,7 +64,8 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurses\fR(3CURSES), \fBattributes\fR(5)
+.BR curses (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/curs_insstr.3curses b/usr/src/man/man3curses/curs_insstr.3curses
index 08d626e351..7bbe788b62 100644
--- a/usr/src/man/man3curses/curs_insstr.3curses
+++ b/usr/src/man/man3curses/curs_insstr.3curses
@@ -81,7 +81,7 @@ other than \fBERR\fR upon successful completion.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -97,8 +97,10 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurs_clear\fR(3CURSES), \fBcurs_inch\fR(3CURSES), \fBcurses\fR(3CURSES),
-\fBattributes\fR(5)
+.BR curs_clear (3CURSES),
+.BR curs_inch (3CURSES),
+.BR curses (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/curs_instr.3curses b/usr/src/man/man3curses/curs_instr.3curses
index dbfd978745..6d490641cb 100644
--- a/usr/src/man/man3curses/curs_instr.3curses
+++ b/usr/src/man/man3curses/curs_instr.3curses
@@ -68,7 +68,7 @@ other than \fBERR\fR upon successful completion.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -84,7 +84,8 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurses\fR(3CURSES), \fBattributes\fR(5)
+.BR curses (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/curs_inswch.3curses b/usr/src/man/man3curses/curs_inswch.3curses
index 3bf225ee8d..47ec47c1d7 100644
--- a/usr/src/man/man3curses/curs_inswch.3curses
+++ b/usr/src/man/man3curses/curs_inswch.3curses
@@ -49,7 +49,7 @@ other than \fBERR\fR upon successful completion.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -65,7 +65,8 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurses\fR(3CURSES), \fBattributes\fR(5)
+.BR curses (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/curs_inswstr.3curses b/usr/src/man/man3curses/curs_inswstr.3curses
index 65591001f8..55dd86975b 100644
--- a/usr/src/man/man3curses/curs_inswstr.3curses
+++ b/usr/src/man/man3curses/curs_inswstr.3curses
@@ -82,7 +82,7 @@ other than \fBERR\fR upon successful completion.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -98,8 +98,10 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBclrtoeol\fR(3CURSES), \fBcurses\fR(3CURSES), \fBwinwch\fR(3CURSES),
-\fBattributes\fR(5)
+.BR clrtoeol (3CURSES),
+.BR curses (3CURSES),
+.BR winwch (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/curs_inwch.3curses b/usr/src/man/man3curses/curs_inwch.3curses
index b7d2f3b7c1..ee8cbf132b 100644
--- a/usr/src/man/man3curses/curs_inwch.3curses
+++ b/usr/src/man/man3curses/curs_inwch.3curses
@@ -56,7 +56,7 @@ A_WATTRIBUTES Bit-mask to extract attributes
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -72,7 +72,8 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurses\fR(3CURSES), \fBattributes\fR(5)
+.BR curses (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/curs_inwchstr.3curses b/usr/src/man/man3curses/curs_inwchstr.3curses
index 8a2c4b3da2..d0fe036fba 100644
--- a/usr/src/man/man3curses/curs_inwchstr.3curses
+++ b/usr/src/man/man3curses/curs_inwchstr.3curses
@@ -71,7 +71,7 @@ other than \fBERR\fR upon successful completion.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for a description of the following attributes:
+See \fBattributes\fR(7) for a description of the following attributes:
.sp
.sp
@@ -87,7 +87,9 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurses\fR(3CURSES), \fBcurs_inwch\fR(3CURSES), \fBattributes\fR(5)
+.BR curs_inwch (3CURSES),
+.BR curses (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/curs_inwstr.3curses b/usr/src/man/man3curses/curs_inwstr.3curses
index 1c37b31240..c9903f4bc5 100644
--- a/usr/src/man/man3curses/curs_inwstr.3curses
+++ b/usr/src/man/man3curses/curs_inwstr.3curses
@@ -69,7 +69,7 @@ other than \fBERR\fR upon successful completion.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -85,7 +85,8 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurses\fR(3CURSES), \fBattributes\fR(5)
+.BR curses (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/curs_kernel.3curses b/usr/src/man/man3curses/curs_kernel.3curses
index 2c8a38b49f..58d29708e9 100644
--- a/usr/src/man/man3curses/curs_kernel.3curses
+++ b/usr/src/man/man3curses/curs_kernel.3curses
@@ -140,7 +140,7 @@ Except for \fBcurs_set()\fR, these routines always return \fBOK\fR.
\fBcurs_set()\fR returns the previous cursor state, or \fBERR\fR if the
requested \fIvisibility\fR is not supported.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -154,9 +154,13 @@ MT-Level Unsafe
.TE
.SH SEE ALSO
-\fBcurs_initscr\fR(3CURSES), \fBcurs_outopts\fR(3CURSES),
-\fBcurs_refresh\fR(3CURSES), \fBcurs_scr_dump\fR(3CURSES),
-\fBcurs_slk\fR(3CURSES), \fBcurses\fR(3CURSES), \fBattributes\fR(5)
+.BR curs_initscr (3CURSES),
+.BR curs_outopts (3CURSES),
+.BR curs_refresh (3CURSES),
+.BR curs_scr_dump (3CURSES),
+.BR curs_slk (3CURSES),
+.BR curses (3CURSES),
+.BR attributes (7)
.SH NOTES
The header <\fBcurses.h\fR> automatically includes the headers <\fBstdio.h\fR>
and <\fBunctrl.h\fR>.
diff --git a/usr/src/man/man3curses/curs_move.3curses b/usr/src/man/man3curses/curs_move.3curses
index 382bb8f66c..c72103420c 100644
--- a/usr/src/man/man3curses/curs_move.3curses
+++ b/usr/src/man/man3curses/curs_move.3curses
@@ -36,7 +36,7 @@ other than \fBERR\fR upon successful completion.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -52,7 +52,9 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurs_refresh\fR(3CURSES), \fBcurses\fR(3CURSES), \fBattributes\fR(5)
+.BR curs_refresh (3CURSES),
+.BR curses (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/curs_outopts.3curses b/usr/src/man/man3curses/curs_outopts.3curses
index 8f394eba2d..c925c307e8 100644
--- a/usr/src/man/man3curses/curs_outopts.3curses
+++ b/usr/src/man/man3curses/curs_outopts.3curses
@@ -144,7 +144,7 @@ linefeed capability, resulting in faster cursor motion.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -160,9 +160,13 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurs_addch\fR(3CURSES), \fBcurs_clear\fR(3CURSES),
-\fBcurs_initscr\fR(3CURSES), \fBcurs_refresh\fR(3CURSES),
-\fBcurs_scroll\fR(3CURSES), \fBcurses\fR(3CURSES), \fBattributes\fR(5)
+.BR curs_addch (3CURSES),
+.BR curs_clear (3CURSES),
+.BR curs_initscr (3CURSES),
+.BR curs_refresh (3CURSES),
+.BR curs_scroll (3CURSES),
+.BR curses (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/curs_overlay.3curses b/usr/src/man/man3curses/curs_overlay.3curses
index b160e1f425..91a4c57cd9 100644
--- a/usr/src/man/man3curses/curs_overlay.3curses
+++ b/usr/src/man/man3curses/curs_overlay.3curses
@@ -54,7 +54,7 @@ value other than \fBERR\fR upon successful completion.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -70,8 +70,10 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurs_pad\fR(3CURSES), \fBcurs_refresh\fR(3CURSES), \fBcurses\fR(3CURSES),
-\fBattributes\fR(5)
+.BR curs_pad (3CURSES),
+.BR curs_refresh (3CURSES),
+.BR curses (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/curs_pad.3curses b/usr/src/man/man3curses/curs_pad.3curses
index 50392f3b60..70e89c8d28 100644
--- a/usr/src/man/man3curses/curs_pad.3curses
+++ b/usr/src/man/man3curses/curs_pad.3curses
@@ -105,7 +105,7 @@ Routines that return pointers return \fINULL\fR on error.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -121,10 +121,16 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBaddch\fR(3CURSES), \fBcurses\fR(3CURSES), \fBrefresh\fR(3CURSES),
-\fBsubwin\fR(3CURSES), \fBtouchline\fR(3CURSES), \fBtouchwin\fR(3CURSES),
-\fBwaddch\fR(3CURSES), \fBwnoutrefresh\fR(3CURSES), \fBwrefresh\fR(3CURSES),
-\fBattributes\fR(5)
+.BR addch (3CURSES),
+.BR curses (3CURSES),
+.BR refresh (3CURSES),
+.BR subwin (3CURSES),
+.BR touchline (3CURSES),
+.BR touchwin (3CURSES),
+.BR waddch (3CURSES),
+.BR wnoutrefresh (3CURSES),
+.BR wrefresh (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/curs_printw.3curses b/usr/src/man/man3curses/curs_printw.3curses
index a73dc4f15e..ee166ea14b 100644
--- a/usr/src/man/man3curses/curs_printw.3curses
+++ b/usr/src/man/man3curses/curs_printw.3curses
@@ -60,7 +60,7 @@ other than \fBERR\fR upon successful completion.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -76,7 +76,10 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurses\fR(3CURSES), \fBprintf\fR(3C), \fBvprintf\fR(3C), \fBattributes\fR(5)
+.BR printf (3C),
+.BR vprintf (3C),
+.BR curses (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/curs_refresh.3curses b/usr/src/man/man3curses/curs_refresh.3curses
index 2a17934f1d..5c2aa75d88 100644
--- a/usr/src/man/man3curses/curs_refresh.3curses
+++ b/usr/src/man/man3curses/curs_refresh.3curses
@@ -91,7 +91,7 @@ other than \fBERR\fR upon successful completion.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -107,7 +107,9 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurs_outopts\fR(3CURSES), \fBcurses\fR(3CURSES), \fBattributes\fR(5)
+.BR curs_outopts (3CURSES),
+.BR curses (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/curs_scanw.3curses b/usr/src/man/man3curses/curs_scanw.3curses
index 2a3ecda8fe..59722331f2 100644
--- a/usr/src/man/man3curses/curs_scanw.3curses
+++ b/usr/src/man/man3curses/curs_scanw.3curses
@@ -64,7 +64,7 @@ number of fields which were mapped in the call.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -80,8 +80,11 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurs_getstr\fR(3CURSES), \fBcurs_printw\fR(3CURSES), \fBcurses\fR(3CURSES),
-\fBscanf\fR(3C), \fBattributes\fR(5)
+.BR scanf (3C),
+.BR curs_getstr (3CURSES),
+.BR curs_printw (3CURSES),
+.BR curses (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/curs_scr_dump.3curses b/usr/src/man/man3curses/curs_scr_dump.3curses
index deaed8c3a7..025b72f981 100644
--- a/usr/src/man/man3curses/curs_scr_dump.3curses
+++ b/usr/src/man/man3curses/curs_scr_dump.3curses
@@ -72,7 +72,7 @@ success.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -88,9 +88,12 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurs_initscr\fR(3CURSES), \fBcurs_refresh\fR(3CURSES),
-\fBcurs_util\fR(3CURSES), \fBcurses\fR(3CURSES), \fBsystem\fR(3C),
-\fBattributes\fR(5)
+.BR system (3C),
+.BR curs_initscr (3CURSES),
+.BR curs_refresh (3CURSES),
+.BR curs_util (3CURSES),
+.BR curses (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/curs_scroll.3curses b/usr/src/man/man3curses/curs_scroll.3curses
index e3d09eaa4f..fe481537fd 100644
--- a/usr/src/man/man3curses/curs_scroll.3curses
+++ b/usr/src/man/man3curses/curs_scroll.3curses
@@ -50,7 +50,7 @@ other than \fBERR\fR upon successful completion.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -66,7 +66,9 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurs_outopts\fR(3CURSES), \fBcurses\fR(3CURSES), \fBattributes\fR(5)
+.BR curs_outopts (3CURSES),
+.BR curses (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/curs_slk.3curses b/usr/src/man/man3curses/curs_slk.3curses
index d30dd010a6..5deb2cdb2c 100644
--- a/usr/src/man/man3curses/curs_slk.3curses
+++ b/usr/src/man/man3curses/curs_slk.3curses
@@ -128,7 +128,7 @@ value other than \fBERR\fR upon successful completion.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -144,8 +144,11 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurs_attr\fR(3CURSES), \fBcurs_initscr\fR(3CURSES),
-\fBcurs_refresh\fR(3CURSES), \fBcurses\fR(3CURSES), \fBattributes\fR(5)
+.BR curs_attr (3CURSES),
+.BR curs_initscr (3CURSES),
+.BR curs_refresh (3CURSES),
+.BR curses (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/curs_termattrs.3curses b/usr/src/man/man3curses/curs_termattrs.3curses
index 7dceb8f4dd..28d97af840 100644
--- a/usr/src/man/man3curses/curs_termattrs.3curses
+++ b/usr/src/man/man3curses/curs_termattrs.3curses
@@ -107,7 +107,7 @@ value other than \fBERR\fR upon successful completion.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -123,8 +123,10 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurs_initscr\fR(3CURSES), \fBcurs_outopts\fR(3CURSES),
-\fBcurses\fR(3CURSES), \fBattributes\fR(5)
+.BR curs_initscr (3CURSES),
+.BR curs_outopts (3CURSES),
+.BR curses (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/curs_termcap.3curses b/usr/src/man/man3curses/curs_termcap.3curses
index 4f473f2cf7..bf24979026 100644
--- a/usr/src/man/man3curses/curs_termcap.3curses
+++ b/usr/src/man/man3curses/curs_termcap.3curses
@@ -83,7 +83,7 @@ Routines that return pointers return \fINULL\fR on error.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -99,8 +99,10 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurs_terminfo\fR(3CURSES), \fBcurses\fR(3CURSES), \fBputc\fR(3C),
-\fBattributes\fR(5)
+.BR putc (3C),
+.BR curs_terminfo (3CURSES),
+.BR curses (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/curs_terminfo.3curses b/usr/src/man/man3curses/curs_terminfo.3curses
index d915d9b0c7..a402815e61 100644
--- a/usr/src/man/man3curses/curs_terminfo.3curses
+++ b/usr/src/man/man3curses/curs_terminfo.3curses
@@ -96,7 +96,7 @@ routines are more suitable and their use is recommended.
.LP
Initially, \fBsetupterm()\fR should be called. Note that \fBsetupterm()\fR is
automatically called by \fBinitscr()\fR and \fBnewterm()\fR. This defines the
-set of terminal-dependent variables (listed in \fBterminfo\fR(4)). The
+set of terminal-dependent variables (listed in \fBterminfo\fR(5)). The
\fIterminfo\fR variables \fBlines\fR and \fBcolumns\fR are initialized by
\fBsetupterm()\fR as follows: If \fBuse_env(FALSE)\fR has been called, values
for \fBlines\fR and \fBcolumns\fR specified in \fIterminfo\fR are used.
@@ -219,7 +219,7 @@ With the \fBtigetstr()\fR routine, the value \fB(char *)\(mi1\fR is returned if
.sp
.LP
The \fIcapname\fR for each capability is given in the table column entitled
-\fIcapname\fR code in the capabilities section of \fBterminfo\fR(4).
+\fIcapname\fR code in the capabilities section of \fBterminfo\fR(5).
.sp
.in +2
.nf
@@ -245,7 +245,7 @@ Routines that return pointers always return \fINULL\fR on error.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -261,9 +261,13 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurs_initscr\fR(3CURSES), \fBcurs_kernel\fR(3CURSES),
-\fBcurs_termcap\fR(3CURSES), \fBcurses\fR(3CURSES), \fBputc\fR(3C),
-\fBterminfo\fR(4), \fBattributes\fR(5)
+.BR putc (3C),
+.BR curs_initscr (3CURSES),
+.BR curs_kernel (3CURSES),
+.BR curs_termcap (3CURSES),
+.BR curses (3CURSES),
+.BR terminfo (5),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/curs_touch.3curses b/usr/src/man/man3curses/curs_touch.3curses
index 075662148d..bdf78739d8 100644
--- a/usr/src/man/man3curses/curs_touch.3curses
+++ b/usr/src/man/man3curses/curs_touch.3curses
@@ -77,7 +77,7 @@ preceding routine descriptions.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -93,7 +93,9 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurs_refresh\fR(3CURSES), \fBcurses\fR(3CURSES), \fBattributes\fR(5)
+.BR curs_refresh (3CURSES),
+.BR curses (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/curs_util.3curses b/usr/src/man/man3curses/curs_util.3curses
index 9328772579..3bd0f36535 100644
--- a/usr/src/man/man3curses/curs_util.3curses
+++ b/usr/src/man/man3curses/curs_util.3curses
@@ -111,7 +111,7 @@ Routines that return pointers return \fINULL\fR on error.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -127,8 +127,10 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurs_initscr\fR(3CURSES), \fBcurs_scr_dump\fR(3CURSES),
-\fBcurses\fR(3CURSES), \fBattributes\fR(5)
+.BR curs_initscr (3CURSES),
+.BR curs_scr_dump (3CURSES),
+.BR curses (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/curs_window.3curses b/usr/src/man/man3curses/curs_window.3curses
index f7d446ede3..d85534c61d 100644
--- a/usr/src/man/man3curses/curs_window.3curses
+++ b/usr/src/man/man3curses/curs_window.3curses
@@ -156,7 +156,7 @@ Routines that return pointers return \fINULL\fR on error.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -172,8 +172,10 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurs_refresh\fR(3CURSES), \fBcurs_touch\fR(3CURSES), \fBcurses\fR(3CURSES),
-\fBattributes\fR(5)
+.BR curs_refresh (3CURSES),
+.BR curs_touch (3CURSES),
+.BR curses (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/curses.3curses b/usr/src/man/man3curses/curses.3curses
index b0ff52ab5a..6cc1aa7ff8 100644
--- a/usr/src/man/man3curses/curses.3curses
+++ b/usr/src/man/man3curses/curses.3curses
@@ -47,7 +47,7 @@ Most programs would additionally use the sequence:
Before a \fBcurses\fR program is run, the tab stops of the terminal should be
set and its initialization strings, if defined, must be output. This can be
done by executing the \fBtput init\fR command after the shell environment
-variable \fBTERM\fR has been exported. (See \fBterminfo\fR(4) for further
+variable \fBTERM\fR has been exported. (See \fBterminfo\fR(5) for further
details.)
.sp
.LP
@@ -228,7 +228,7 @@ Manual Page Name
\fBaddch\fR
.ad
.RS 23n
-\fBcurs_addch\fR(3CURSES)
+.BR curs_addch (3CURSES)
.RE
.sp
@@ -237,7 +237,7 @@ Manual Page Name
\fBaddchnstr\fR
.ad
.RS 23n
-\fBcurs_addchstr\fR(3CURSES)
+.BR curs_addchstr (3CURSES)
.RE
.sp
@@ -246,7 +246,7 @@ Manual Page Name
\fBaddchstr\fR
.ad
.RS 23n
-\fBcurs_addchstr\fR(3CURSES)
+.BR curs_addchstr (3CURSES)
.RE
.sp
@@ -255,7 +255,7 @@ Manual Page Name
\fBaddnstr\fR
.ad
.RS 23n
-\fBcurs_addstr\fR(3CURSES)
+.BR curs_addstr (3CURSES)
.RE
.sp
@@ -264,7 +264,7 @@ Manual Page Name
\fBaddnwstr\fR
.ad
.RS 23n
-\fBcurs_addwstr\fR(3CURSES)
+.BR curs_addwstr (3CURSES)
.RE
.sp
@@ -273,7 +273,7 @@ Manual Page Name
\fBaddstr\fR
.ad
.RS 23n
-\fBcurs_addstr\fR(3CURSES)
+.BR curs_addstr (3CURSES)
.RE
.sp
@@ -282,7 +282,7 @@ Manual Page Name
\fBaddwch\fR
.ad
.RS 23n
-\fBcurs_addwch\fR(3CURSES)
+.BR curs_addwch (3CURSES)
.RE
.sp
@@ -291,7 +291,7 @@ Manual Page Name
\fBaddwchnstr\fR
.ad
.RS 23n
-\fBcurs_addwchstr\fR(3CURSES)
+.BR curs_addwchstr (3CURSES)
.RE
.sp
@@ -300,7 +300,7 @@ Manual Page Name
\fBaddwchstr\fR
.ad
.RS 23n
-\fBcurs_addwchstr\fR(3CURSES)
+.BR curs_addwchstr (3CURSES)
.RE
.sp
@@ -309,7 +309,7 @@ Manual Page Name
\fBaddwstr\fR
.ad
.RS 23n
-\fBcurs_addwstr\fR(3CURSES)
+.BR curs_addwstr (3CURSES)
.RE
.sp
@@ -318,7 +318,7 @@ Manual Page Name
\fBadjcurspos\fR
.ad
.RS 23n
-\fBcurs_alecompat\fR(3CURSES)
+.BR curs_alecompat (3CURSES)
.RE
.sp
@@ -327,7 +327,7 @@ Manual Page Name
\fBattroff\fR
.ad
.RS 23n
-\fBcurs_attr\fR(3CURSES)
+.BR curs_attr (3CURSES)
.RE
.sp
@@ -336,7 +336,7 @@ Manual Page Name
\fBattron\fR
.ad
.RS 23n
-\fBcurs_attr\fR(3CURSES)
+.BR curs_attr (3CURSES)
.RE
.sp
@@ -345,7 +345,7 @@ Manual Page Name
\fBattrset\fR
.ad
.RS 23n
-\fBcurs_attr\fR(3CURSES)
+.BR curs_attr (3CURSES)
.RE
.sp
@@ -354,7 +354,7 @@ Manual Page Name
\fBbaudrate\fR
.ad
.RS 23n
-\fBcurs_termattrs\fR(3CURSES)
+.BR curs_termattrs (3CURSES)
.RE
.sp
@@ -363,7 +363,7 @@ Manual Page Name
\fBbeep\fR
.ad
.RS 23n
-\fBcurs_beep\fR(3CURSES)
+.BR curs_beep (3CURSES)
.RE
.sp
@@ -372,7 +372,7 @@ Manual Page Name
\fBbkgd\fR
.ad
.RS 23n
-\fBcurs_bkgd\fR(3CURSES)
+.BR curs_bkgd (3CURSES)
.RE
.sp
@@ -381,7 +381,7 @@ Manual Page Name
\fBbkgdset\fR
.ad
.RS 23n
-\fBcurs_bkgd\fR(3CURSES)
+.BR curs_bkgd (3CURSES)
.RE
.sp
@@ -390,7 +390,7 @@ Manual Page Name
\fBborder\fR
.ad
.RS 23n
-\fBcurs_border\fR(3CURSES)
+.BR curs_border (3CURSES)
.RE
.sp
@@ -399,7 +399,7 @@ Manual Page Name
\fBbox\fR
.ad
.RS 23n
-\fBcurs_border\fR(3CURSES)
+.BR curs_border (3CURSES)
.RE
.sp
@@ -408,7 +408,7 @@ Manual Page Name
\fBcan_change_color\fR
.ad
.RS 23n
-\fBcurs_color\fR(3CURSES)
+.BR curs_color (3CURSES)
.RE
.sp
@@ -417,7 +417,7 @@ Manual Page Name
\fBcbreak\fR
.ad
.RS 23n
-\fBcurs_inopts\fR(3CURSES)
+.BR curs_inopts (3CURSES)
.RE
.sp
@@ -426,7 +426,7 @@ Manual Page Name
\fBclear\fR
.ad
.RS 23n
-\fBcurs_clear\fR(3CURSES)
+.BR curs_clear (3CURSES)
.RE
.sp
@@ -435,7 +435,7 @@ Manual Page Name
\fBclearok\fR
.ad
.RS 23n
-\fBcurs_outopts\fR(3CURSES)
+.BR curs_outopts (3CURSES)
.RE
.sp
@@ -444,7 +444,7 @@ Manual Page Name
\fBclrtobot\fR
.ad
.RS 23n
-\fBcurs_clear\fR(3CURSES)
+.BR curs_clear (3CURSES)
.RE
.sp
@@ -453,7 +453,7 @@ Manual Page Name
\fBclrtoeol\fR
.ad
.RS 23n
-\fBcurs_clear\fR(3CURSES)
+.BR curs_clear (3CURSES)
.RE
.sp
@@ -462,7 +462,7 @@ Manual Page Name
\fBcolor_content\fR
.ad
.RS 23n
-\fBcurs_color\fR(3CURSES)
+.BR curs_color (3CURSES)
.RE
.sp
@@ -471,7 +471,7 @@ Manual Page Name
\fBcopywin\fR
.ad
.RS 23n
-\fBcurs_overlay\fR(3CURSES)
+.BR curs_overlay (3CURSES)
.RE
.sp
@@ -480,7 +480,7 @@ Manual Page Name
\fBcurs_set\fR
.ad
.RS 23n
-\fBcurs_kernel\fR(3CURSES)
+.BR curs_kernel (3CURSES)
.RE
.sp
@@ -489,7 +489,7 @@ Manual Page Name
\fBdef_prog_mode\fR
.ad
.RS 23n
-\fBcurs_kernel\fR(3CURSES)
+.BR curs_kernel (3CURSES)
.RE
.sp
@@ -498,7 +498,7 @@ Manual Page Name
\fBdef_shell_mode\fR
.ad
.RS 23n
-\fBcurs_kernel\fR(3CURSES)
+.BR curs_kernel (3CURSES)
.RE
.sp
@@ -507,7 +507,7 @@ Manual Page Name
\fBdel_curterm\fR
.ad
.RS 23n
-\fBcurs_terminfo\fR(3CURSES)
+.BR curs_terminfo (3CURSES)
.RE
.sp
@@ -516,7 +516,7 @@ Manual Page Name
\fBdelay_output\fR
.ad
.RS 23n
-\fBcurs_util\fR(3CURSES)
+.BR curs_util (3CURSES)
.RE
.sp
@@ -525,7 +525,7 @@ Manual Page Name
\fBdelch\fR
.ad
.RS 23n
-\fBcurs_delch\fR(3CURSES)
+.BR curs_delch (3CURSES)
.RE
.sp
@@ -534,7 +534,7 @@ Manual Page Name
\fBdeleteln\fR
.ad
.RS 23n
-\fBcurs_deleteln\fR(3CURSES)
+.BR curs_deleteln (3CURSES)
.RE
.sp
@@ -543,7 +543,7 @@ Manual Page Name
\fBdelscreen\fR
.ad
.RS 23n
-\fBcurs_initscr\fR(3CURSES)
+.BR curs_initscr (3CURSES)
.RE
.sp
@@ -552,7 +552,7 @@ Manual Page Name
\fBdelwin\fR
.ad
.RS 23n
-\fBcurs_window\fR(3CURSES)
+.BR curs_window (3CURSES)
.RE
.sp
@@ -561,7 +561,7 @@ Manual Page Name
\fBderwin\fR
.ad
.RS 23n
-\fBcurs_window\fR(3CURSES)
+.BR curs_window (3CURSES)
.RE
.sp
@@ -570,7 +570,7 @@ Manual Page Name
\fBdoupdate\fR
.ad
.RS 23n
-\fBcurs_refresh\fR(3CURSES)
+.BR curs_refresh (3CURSES)
.RE
.sp
@@ -579,7 +579,7 @@ Manual Page Name
\fBdupwin\fR
.ad
.RS 23n
-\fBcurs_window\fR(3CURSES)
+.BR curs_window (3CURSES)
.RE
.sp
@@ -588,7 +588,7 @@ Manual Page Name
\fBecho\fR
.ad
.RS 23n
-\fBcurs_inopts\fR(3CURSES)
+.BR curs_inopts (3CURSES)
.RE
.sp
@@ -597,7 +597,7 @@ Manual Page Name
\fBechochar\fR
.ad
.RS 23n
-\fBcurs_addch\fR(3CURSES)
+.BR curs_addch (3CURSES)
.RE
.sp
@@ -606,7 +606,7 @@ Manual Page Name
\fBechowchar\fR
.ad
.RS 23n
-\fBcurs_addwch\fR(3CURSES)
+.BR curs_addwch (3CURSES)
.RE
.sp
@@ -615,7 +615,7 @@ Manual Page Name
\fBendwin\fR
.ad
.RS 23n
-\fBcurs_initscr\fR(3CURSES)
+.BR curs_initscr (3CURSES)
.RE
.sp
@@ -624,7 +624,7 @@ Manual Page Name
\fBerase\fR
.ad
.RS 23n
-\fBcurs_clear\fR(3CURSES)
+.BR curs_clear (3CURSES)
.RE
.sp
@@ -633,7 +633,7 @@ Manual Page Name
\fBerasechar\fR
.ad
.RS 23n
-\fBcurs_termattrs\fR(3CURSES)
+.BR curs_termattrs (3CURSES)
.RE
.sp
@@ -642,7 +642,7 @@ Manual Page Name
\fBfilter\fR
.ad
.RS 23n
-\fBcurs_util\fR(3CURSES)
+.BR curs_util (3CURSES)
.RE
.sp
@@ -651,7 +651,7 @@ Manual Page Name
\fBflash\fR
.ad
.RS 23n
-\fBcurs_beep\fR(3CURSES)
+.BR curs_beep (3CURSES)
.RE
.sp
@@ -660,7 +660,7 @@ Manual Page Name
\fBflushinp\fR
.ad
.RS 23n
-\fBcurs_util\fR(3CURSES)
+.BR curs_util (3CURSES)
.RE
.sp
@@ -669,7 +669,7 @@ Manual Page Name
\fBgetbegyx\fR
.ad
.RS 23n
-\fBcurs_getyx\fR(3CURSES)
+.BR curs_getyx (3CURSES)
.RE
.sp
@@ -678,7 +678,7 @@ Manual Page Name
\fBgetch\fR
.ad
.RS 23n
-\fBcurs_getch\fR(3CURSES)
+.BR curs_getch (3CURSES)
.RE
.sp
@@ -687,7 +687,7 @@ Manual Page Name
\fBgetmaxyx\fR
.ad
.RS 23n
-\fBcurs_getyx\fR(3CURSES)
+.BR curs_getyx (3CURSES)
.RE
.sp
@@ -696,7 +696,7 @@ Manual Page Name
\fBgetnwstr\fR
.ad
.RS 23n
-\fBcurs_getwstr\fR(3CURSES)
+.BR curs_getwstr (3CURSES)
.RE
.sp
@@ -705,7 +705,7 @@ Manual Page Name
\fBgetparyx\fR
.ad
.RS 23n
-\fBcurs_getyx\fR(3CURSES)
+.BR curs_getyx (3CURSES)
.RE
.sp
@@ -714,7 +714,7 @@ Manual Page Name
\fBgetstr\fR
.ad
.RS 23n
-\fBcurs_getstr\fR(3CURSES)
+.BR curs_getstr (3CURSES)
.RE
.sp
@@ -723,7 +723,7 @@ Manual Page Name
\fBgetsyx\fR
.ad
.RS 23n
-\fBcurs_kernel\fR(3CURSES)
+.BR curs_kernel (3CURSES)
.RE
.sp
@@ -732,7 +732,7 @@ Manual Page Name
\fBgetwch\fR
.ad
.RS 23n
-\fBcurs_getwch\fR(3CURSES)
+.BR curs_getwch (3CURSES)
.RE
.sp
@@ -741,7 +741,7 @@ Manual Page Name
\fBgetwin\fR
.ad
.RS 23n
-\fBcurs_util\fR(3CURSES)
+.BR curs_util (3CURSES)
.RE
.sp
@@ -750,7 +750,7 @@ Manual Page Name
\fBgetwstr\fR
.ad
.RS 23n
-\fBcurs_getwstr\fR(3CURSES)
+.BR curs_getwstr (3CURSES)
.RE
.sp
@@ -759,7 +759,7 @@ Manual Page Name
\fBgetyx\fR
.ad
.RS 23n
-\fBcurs_getyx\fR(3CURSES)
+.BR curs_getyx (3CURSES)
.RE
.sp
@@ -768,7 +768,7 @@ Manual Page Name
\fBhalfdelay\fR
.ad
.RS 23n
-\fBcurs_inopts\fR(3CURSES)
+.BR curs_inopts (3CURSES)
.RE
.sp
@@ -777,7 +777,7 @@ Manual Page Name
\fBhas_colors\fR
.ad
.RS 23n
-\fBcurs_color\fR(3CURSES)
+.BR curs_color (3CURSES)
.RE
.sp
@@ -786,7 +786,7 @@ Manual Page Name
\fBhas_ic\fR
.ad
.RS 23n
-\fBcurs_termattrs\fR(3CURSES)
+.BR curs_termattrs (3CURSES)
.RE
.sp
@@ -795,7 +795,7 @@ Manual Page Name
\fBhas_il\fR
.ad
.RS 23n
-\fBcurs_termattrs\fR(3CURSES)
+.BR curs_termattrs (3CURSES)
.RE
.sp
@@ -804,7 +804,7 @@ Manual Page Name
\fBidcok\fR
.ad
.RS 23n
-\fBcurs_outopts\fR(3CURSES)
+.BR curs_outopts (3CURSES)
.RE
.sp
@@ -813,7 +813,7 @@ Manual Page Name
\fBidlok\fR
.ad
.RS 23n
-\fBcurs_outopts\fR(3CURSES)
+.BR curs_outopts (3CURSES)
.RE
.sp
@@ -822,7 +822,7 @@ Manual Page Name
\fBimmedok\fR
.ad
.RS 23n
-\fBcurs_outopts\fR(3CURSES)
+.BR curs_outopts (3CURSES)
.RE
.sp
@@ -831,7 +831,7 @@ Manual Page Name
\fBinch\fR
.ad
.RS 23n
-\fBcurs_inch\fR(3CURSES)
+.BR curs_inch (3CURSES)
.RE
.sp
@@ -840,7 +840,7 @@ Manual Page Name
\fBinchnstr\fR
.ad
.RS 23n
-\fBcurs_inchstr\fR(3CURSES)
+.BR curs_inchstr (3CURSES)
.RE
.sp
@@ -849,7 +849,7 @@ Manual Page Name
\fBinchstr\fR
.ad
.RS 23n
-\fBcurs_inchstr\fR(3CURSES)
+.BR curs_inchstr (3CURSES)
.RE
.sp
@@ -858,7 +858,7 @@ Manual Page Name
\fBinit_color\fR
.ad
.RS 23n
-\fBcurs_color\fR(3CURSES)
+.BR curs_color (3CURSES)
.RE
.sp
@@ -867,7 +867,7 @@ Manual Page Name
\fBinit_pair\fR
.ad
.RS 23n
-\fBcurs_color\fR(3CURSES)
+.BR curs_color (3CURSES)
.RE
.sp
@@ -876,7 +876,7 @@ Manual Page Name
\fBinitscr\fR
.ad
.RS 23n
-\fBcurs_initscr\fR(3CURSES)
+.BR curs_initscr (3CURSES)
.RE
.sp
@@ -885,7 +885,7 @@ Manual Page Name
\fBinnstr\fR
.ad
.RS 23n
-\fBcurs_instr\fR(3CURSES)
+.BR curs_instr (3CURSES)
.RE
.sp
@@ -894,7 +894,7 @@ Manual Page Name
\fBinnwstr\fR
.ad
.RS 23n
-\fBcurs_inwstr\fR(3CURSES)
+.BR curs_inwstr (3CURSES)
.RE
.sp
@@ -903,7 +903,7 @@ Manual Page Name
\fBinsch\fR
.ad
.RS 23n
-\fBcurs_insch\fR(3CURSES)
+.BR curs_insch (3CURSES)
.RE
.sp
@@ -912,7 +912,7 @@ Manual Page Name
\fBinsdelln\fR
.ad
.RS 23n
-\fBcurs_deleteln\fR(3CURSES)
+.BR curs_deleteln (3CURSES)
.RE
.sp
@@ -921,7 +921,7 @@ Manual Page Name
\fBinsertln\fR
.ad
.RS 23n
-\fBcurs_deleteln\fR(3CURSES)
+.BR curs_deleteln (3CURSES)
.RE
.sp
@@ -930,7 +930,7 @@ Manual Page Name
\fBinsnstr\fR
.ad
.RS 23n
-\fBcurs_insstr\fR(3CURSES)
+.BR curs_insstr (3CURSES)
.RE
.sp
@@ -939,7 +939,7 @@ Manual Page Name
\fBinsnwstr\fR
.ad
.RS 23n
-\fBcurs_inswstr\fR(3CURSES)
+.BR curs_inswstr (3CURSES)
.RE
.sp
@@ -948,7 +948,7 @@ Manual Page Name
\fBinsstr\fR
.ad
.RS 23n
-\fBcurs_insstr\fR(3CURSES)
+.BR curs_insstr (3CURSES)
.RE
.sp
@@ -957,7 +957,7 @@ Manual Page Name
\fBinstr\fR
.ad
.RS 23n
-\fBcurs_instr\fR(3CURSES)
+.BR curs_instr (3CURSES)
.RE
.sp
@@ -966,7 +966,7 @@ Manual Page Name
\fBinswch\fR
.ad
.RS 23n
-\fBcurs_inswch\fR(3CURSES)
+.BR curs_inswch (3CURSES)
.RE
.sp
@@ -975,7 +975,7 @@ Manual Page Name
\fBinswstr\fR
.ad
.RS 23n
-\fBcurs_inswstr\fR(3CURSES)
+.BR curs_inswstr (3CURSES)
.RE
.sp
@@ -984,7 +984,7 @@ Manual Page Name
\fBintrflush\fR
.ad
.RS 23n
-\fBcurs_inopts\fR(3CURSES)
+.BR curs_inopts (3CURSES)
.RE
.sp
@@ -993,7 +993,7 @@ Manual Page Name
\fBinwch\fR
.ad
.RS 23n
-\fBcurs_inwch\fR(3CURSES)
+.BR curs_inwch (3CURSES)
.RE
.sp
@@ -1002,7 +1002,7 @@ Manual Page Name
\fBinwchnstr\fR
.ad
.RS 23n
-\fBcurs_inwchstr\fR(3CURSES)
+.BR curs_inwchstr (3CURSES)
.RE
.sp
@@ -1011,7 +1011,7 @@ Manual Page Name
\fBinwchstr\fR
.ad
.RS 23n
-\fBcurs_inwchstr\fR(3CURSES)
+.BR curs_inwchstr (3CURSES)
.RE
.sp
@@ -1020,7 +1020,7 @@ Manual Page Name
\fBinwstr\fR
.ad
.RS 23n
-\fBcurs_inwstr\fR(3CURSES)
+.BR curs_inwstr (3CURSES)
.RE
.sp
@@ -1029,7 +1029,7 @@ Manual Page Name
\fBis_linetouched\fR
.ad
.RS 23n
-\fBcurs_touch\fR(3CURSES)
+.BR curs_touch (3CURSES)
.RE
.sp
@@ -1038,7 +1038,7 @@ Manual Page Name
\fBis_wintouched\fR
.ad
.RS 23n
-\fBcurs_touch\fR(3CURSES)
+.BR curs_touch (3CURSES)
.RE
.sp
@@ -1047,7 +1047,7 @@ Manual Page Name
\fBisendwin\fR
.ad
.RS 23n
-\fBcurs_initscr\fR(3CURSES)
+.BR curs_initscr (3CURSES)
.RE
.sp
@@ -1056,7 +1056,7 @@ Manual Page Name
\fBkeyname\fR
.ad
.RS 23n
-\fBcurs_util\fR(3CURSES)
+.BR curs_util (3CURSES)
.RE
.sp
@@ -1065,7 +1065,7 @@ Manual Page Name
\fBkeypad\fR
.ad
.RS 23n
-\fBcurs_inopts\fR(3CURSES)
+.BR curs_inopts (3CURSES)
.RE
.sp
@@ -1074,7 +1074,7 @@ Manual Page Name
\fBkillchar\fR
.ad
.RS 23n
-\fBcurs_termattrs\fR(3CURSES)
+.BR curs_termattrs (3CURSES)
.RE
.sp
@@ -1083,7 +1083,7 @@ Manual Page Name
\fBleaveok\fR
.ad
.RS 23n
-\fBcurs_outopts\fR(3CURSES)
+.BR curs_outopts (3CURSES)
.RE
.sp
@@ -1092,7 +1092,7 @@ Manual Page Name
\fBlongname\fR
.ad
.RS 23n
-\fBcurs_termattrs\fR(3CURSES)
+.BR curs_termattrs (3CURSES)
.RE
.sp
@@ -1101,7 +1101,7 @@ Manual Page Name
\fBmeta\fR
.ad
.RS 23n
-\fBcurs_inopts\fR(3CURSES)
+.BR curs_inopts (3CURSES)
.RE
.sp
@@ -1110,7 +1110,7 @@ Manual Page Name
\fBmove\fR
.ad
.RS 23n
-\fBcurs_move\fR(3CURSES)
+.BR curs_move (3CURSES)
.RE
.sp
@@ -1119,7 +1119,7 @@ Manual Page Name
\fBmovenextch\fR
.ad
.RS 23n
-\fBcurs_alecompat\fR(3CURSES)
+.BR curs_alecompat (3CURSES)
.RE
.sp
@@ -1128,7 +1128,7 @@ Manual Page Name
\fBmoveprevch\fR
.ad
.RS 23n
-\fBcurs_alecompat\fR(3CURSES)
+.BR curs_alecompat (3CURSES)
.RE
.sp
@@ -1137,7 +1137,7 @@ Manual Page Name
\fBmvaddch\fR
.ad
.RS 23n
-\fBcurs_addch\fR(3CURSES)
+.BR curs_addch (3CURSES)
.RE
.sp
@@ -1146,7 +1146,7 @@ Manual Page Name
\fBmvaddchnstr\fR
.ad
.RS 23n
-\fBcurs_addchstr\fR(3CURSES)
+.BR curs_addchstr (3CURSES)
.RE
.sp
@@ -1155,7 +1155,7 @@ Manual Page Name
\fBmvaddchstr\fR
.ad
.RS 23n
-\fBcurs_addchstr\fR(3CURSES)
+.BR curs_addchstr (3CURSES)
.RE
.sp
@@ -1164,7 +1164,7 @@ Manual Page Name
\fBmvaddnstr\fR
.ad
.RS 23n
-\fBcurs_addstr\fR(3CURSES)
+.BR curs_addstr (3CURSES)
.RE
.sp
@@ -1173,7 +1173,7 @@ Manual Page Name
\fBmvaddnwstr\fR
.ad
.RS 23n
-\fBcurs_addwstr\fR(3CURSES)
+.BR curs_addwstr (3CURSES)
.RE
.sp
@@ -1182,7 +1182,7 @@ Manual Page Name
\fBmvaddstr\fR
.ad
.RS 23n
-\fBcurs_addstr\fR(3CURSES)
+.BR curs_addstr (3CURSES)
.RE
.sp
@@ -1191,7 +1191,7 @@ Manual Page Name
\fBmvaddwch\fR
.ad
.RS 23n
-\fBcurs_addwch\fR(3CURSES)
+.BR curs_addwch (3CURSES)
.RE
.sp
@@ -1200,7 +1200,7 @@ Manual Page Name
\fBmvaddwchnstr\fR
.ad
.RS 23n
-\fBcurs_addwchstr\fR(3CURSES)
+.BR curs_addwchstr (3CURSES)
.RE
.sp
@@ -1209,7 +1209,7 @@ Manual Page Name
\fBmvaddwchstr\fR
.ad
.RS 23n
-\fBcurs_addwchstr\fR(3CURSES)
+.BR curs_addwchstr (3CURSES)
.RE
.sp
@@ -1218,7 +1218,7 @@ Manual Page Name
\fBmvaddwstr\fR
.ad
.RS 23n
-\fBcurs_addwstr\fR(3CURSES)
+.BR curs_addwstr (3CURSES)
.RE
.sp
@@ -1227,7 +1227,7 @@ Manual Page Name
\fBmvcur\fR
.ad
.RS 23n
-\fBcurs_terminfo\fR(3CURSES)
+.BR curs_terminfo (3CURSES)
.RE
.sp
@@ -1236,7 +1236,7 @@ Manual Page Name
\fBmvdelch\fR
.ad
.RS 23n
-\fBcurs_delch\fR(3CURSES)
+.BR curs_delch (3CURSES)
.RE
.sp
@@ -1245,7 +1245,7 @@ Manual Page Name
\fBmvderwin\fR
.ad
.RS 23n
-\fBcurs_window\fR(3CURSES)
+.BR curs_window (3CURSES)
.RE
.sp
@@ -1254,7 +1254,7 @@ Manual Page Name
\fBmvgetch\fR
.ad
.RS 23n
-\fBcurs_getch\fR(3CURSES)
+.BR curs_getch (3CURSES)
.RE
.sp
@@ -1263,7 +1263,7 @@ Manual Page Name
\fBmvgetnwstr\fR
.ad
.RS 23n
-\fBcurs_getwstr\fR(3CURSES)
+.BR curs_getwstr (3CURSES)
.RE
.sp
@@ -1272,7 +1272,7 @@ Manual Page Name
\fBmvgetstr\fR
.ad
.RS 23n
-\fBcurs_getstr\fR(3CURSES)
+.BR curs_getstr (3CURSES)
.RE
.sp
@@ -1281,7 +1281,7 @@ Manual Page Name
\fBmvgetwch\fR
.ad
.RS 23n
-\fBcurs_getwch\fR(3CURSES)
+.BR curs_getwch (3CURSES)
.RE
.sp
@@ -1290,7 +1290,7 @@ Manual Page Name
\fBmvgetwstr\fR
.ad
.RS 23n
-\fBcurs_getwstr\fR(3CURSES)
+.BR curs_getwstr (3CURSES)
.RE
.sp
@@ -1299,7 +1299,7 @@ Manual Page Name
\fBmvinch\fR
.ad
.RS 23n
-\fBcurs_inch\fR(3CURSES)
+.BR curs_inch (3CURSES)
.RE
.sp
@@ -1308,7 +1308,7 @@ Manual Page Name
\fBmvinchnstr\fR
.ad
.RS 23n
-\fBcurs_inchstr\fR(3CURSES)
+.BR curs_inchstr (3CURSES)
.RE
.sp
@@ -1317,7 +1317,7 @@ Manual Page Name
\fBmvinchstr\fR
.ad
.RS 23n
-\fBcurs_inchstr\fR(3CURSES)
+.BR curs_inchstr (3CURSES)
.RE
.sp
@@ -1326,7 +1326,7 @@ Manual Page Name
\fBmvinnstr\fR
.ad
.RS 23n
-\fBcurs_instr\fR(3CURSES)
+.BR curs_instr (3CURSES)
.RE
.sp
@@ -1335,7 +1335,7 @@ Manual Page Name
\fBmvinnwstr\fR
.ad
.RS 23n
-\fBcurs_inwstr\fR(3CURSES)
+.BR curs_inwstr (3CURSES)
.RE
.sp
@@ -1344,7 +1344,7 @@ Manual Page Name
\fBmvinsch\fR
.ad
.RS 23n
-\fBcurs_insch\fR(3CURSES)
+.BR curs_insch (3CURSES)
.RE
.sp
@@ -1353,7 +1353,7 @@ Manual Page Name
\fBmvinsnstr\fR
.ad
.RS 23n
-\fBcurs_insstr\fR(3CURSES)
+.BR curs_insstr (3CURSES)
.RE
.sp
@@ -1362,7 +1362,7 @@ Manual Page Name
\fBmvinsnwstr\fR
.ad
.RS 23n
-\fBcurs_inswstr\fR(3CURSES)
+.BR curs_inswstr (3CURSES)
.RE
.sp
@@ -1371,7 +1371,7 @@ Manual Page Name
\fBmvinsstr\fR
.ad
.RS 23n
-\fBcurs_insstr\fR(3CURSES)
+.BR curs_insstr (3CURSES)
.RE
.sp
@@ -1380,7 +1380,7 @@ Manual Page Name
\fBmvinstr\fR
.ad
.RS 23n
-\fBcurs_instr\fR(3CURSES)
+.BR curs_instr (3CURSES)
.RE
.sp
@@ -1389,7 +1389,7 @@ Manual Page Name
\fBmvinswch\fR
.ad
.RS 23n
-\fBcurs_inswch\fR(3CURSES)
+.BR curs_inswch (3CURSES)
.RE
.sp
@@ -1398,7 +1398,7 @@ Manual Page Name
\fBmvinswstr\fR
.ad
.RS 23n
-\fBcurs_inswstr\fR(3CURSES)
+.BR curs_inswstr (3CURSES)
.RE
.sp
@@ -1407,7 +1407,7 @@ Manual Page Name
\fBmvinwch\fR
.ad
.RS 23n
-\fBcurs_inwch\fR(3CURSES)
+.BR curs_inwch (3CURSES)
.RE
.sp
@@ -1416,7 +1416,7 @@ Manual Page Name
\fBmvinwchnstr\fR
.ad
.RS 23n
-\fBcurs_inwchstr\fR(3CURSES)
+.BR curs_inwchstr (3CURSES)
.RE
.sp
@@ -1425,7 +1425,7 @@ Manual Page Name
\fBmvinwchstr\fR
.ad
.RS 23n
-\fBcurs_inwchstr\fR(3CURSES)
+.BR curs_inwchstr (3CURSES)
.RE
.sp
@@ -1434,7 +1434,7 @@ Manual Page Name
\fBmvinwstr\fR
.ad
.RS 23n
-\fBcurs_inwstr\fR(3CURSES)
+.BR curs_inwstr (3CURSES)
.RE
.sp
@@ -1443,7 +1443,7 @@ Manual Page Name
\fBmvprintw\fR
.ad
.RS 23n
-\fBcurs_printw\fR(3CURSES)
+.BR curs_printw (3CURSES)
.RE
.sp
@@ -1452,7 +1452,7 @@ Manual Page Name
\fBmvscanw\fR
.ad
.RS 23n
-\fBcurs_scanw\fR(3CURSES)
+.BR curs_scanw (3CURSES)
.RE
.sp
@@ -1461,7 +1461,7 @@ Manual Page Name
\fBmvwaddch\fR
.ad
.RS 23n
-\fBcurs_addch\fR(3CURSES)
+.BR curs_addch (3CURSES)
.RE
.sp
@@ -1470,7 +1470,7 @@ Manual Page Name
\fBmvwaddchnstr\fR
.ad
.RS 23n
-\fBcurs_addchstr\fR(3CURSES)
+.BR curs_addchstr (3CURSES)
.RE
.sp
@@ -1479,7 +1479,7 @@ Manual Page Name
\fBmvwaddchstr\fR
.ad
.RS 23n
-\fBcurs_addchstr\fR(3CURSES)
+.BR curs_addchstr (3CURSES)
.RE
.sp
@@ -1488,7 +1488,7 @@ Manual Page Name
\fBmvwaddnstr\fR
.ad
.RS 23n
-\fBcurs_addstr\fR(3CURSES)
+.BR curs_addstr (3CURSES)
.RE
.sp
@@ -1497,7 +1497,7 @@ Manual Page Name
\fBmvwaddnwstr\fR
.ad
.RS 23n
-\fBcurs_addwstr\fR(3CURSES)
+.BR curs_addwstr (3CURSES)
.RE
.sp
@@ -1506,7 +1506,7 @@ Manual Page Name
\fBmvwaddstr\fR
.ad
.RS 23n
-\fBcurs_addstr\fR(3CURSES)
+.BR curs_addstr (3CURSES)
.RE
.sp
@@ -1515,7 +1515,7 @@ Manual Page Name
\fBmvwaddwch\fR
.ad
.RS 23n
-\fBcurs_addwch\fR(3CURSES)
+.BR curs_addwch (3CURSES)
.RE
.sp
@@ -1524,7 +1524,7 @@ Manual Page Name
\fBmvwaddwchnstr\fR
.ad
.RS 23n
-\fBcurs_addwchstr\fR(3CURSES)
+.BR curs_addwchstr (3CURSES)
.RE
.sp
@@ -1533,7 +1533,7 @@ Manual Page Name
\fBmvwaddwchstr\fR
.ad
.RS 23n
-\fBcurs_addwchstr\fR(3CURSES)
+.BR curs_addwchstr (3CURSES)
.RE
.sp
@@ -1542,7 +1542,7 @@ Manual Page Name
\fBmvwaddwstr\fR
.ad
.RS 23n
-\fBcurs_addwstr\fR(3CURSES)
+.BR curs_addwstr (3CURSES)
.RE
.sp
@@ -1551,7 +1551,7 @@ Manual Page Name
\fBmvwdelch\fR
.ad
.RS 23n
-\fBcurs_delch\fR(3CURSES)
+.BR curs_delch (3CURSES)
.RE
.sp
@@ -1560,7 +1560,7 @@ Manual Page Name
\fBmvwgetch\fR
.ad
.RS 23n
-\fBcurs_getch\fR(3CURSES)
+.BR curs_getch (3CURSES)
.RE
.sp
@@ -1569,7 +1569,7 @@ Manual Page Name
\fBmvwgetnwstr\fR
.ad
.RS 23n
-\fBcurs_getwstr\fR(3CURSES)
+.BR curs_getwstr (3CURSES)
.RE
.sp
@@ -1578,7 +1578,7 @@ Manual Page Name
\fBmvwgetstr\fR
.ad
.RS 23n
-\fBcurs_getstr\fR(3CURSES)
+.BR curs_getstr (3CURSES)
.RE
.sp
@@ -1587,7 +1587,7 @@ Manual Page Name
\fBmvwgetwch\fR
.ad
.RS 23n
-\fBcurs_getwch\fR(3CURSES)
+.BR curs_getwch (3CURSES)
.RE
.sp
@@ -1596,7 +1596,7 @@ Manual Page Name
\fBmvwgetwstr\fR
.ad
.RS 23n
-\fBcurs_getwstr\fR(3CURSES)
+.BR curs_getwstr (3CURSES)
.RE
.sp
@@ -1605,7 +1605,7 @@ Manual Page Name
\fBmvwin\fR
.ad
.RS 23n
-\fBcurs_window\fR(3CURSES)
+.BR curs_window (3CURSES)
.RE
.sp
@@ -1614,7 +1614,7 @@ Manual Page Name
\fBmvwinch\fR
.ad
.RS 23n
-\fBcurs_inch\fR(3CURSES)
+.BR curs_inch (3CURSES)
.RE
.sp
@@ -1623,7 +1623,7 @@ Manual Page Name
\fBmvwinchnstr\fR
.ad
.RS 23n
-\fBcurs_inchstr\fR(3CURSES)
+.BR curs_inchstr (3CURSES)
.RE
.sp
@@ -1632,7 +1632,7 @@ Manual Page Name
\fBmvwinchstr\fR
.ad
.RS 23n
-\fBcurs_inchstr\fR(3CURSES)
+.BR curs_inchstr (3CURSES)
.RE
.sp
@@ -1641,7 +1641,7 @@ Manual Page Name
\fBmvwinnstr\fR
.ad
.RS 23n
-\fBcurs_instr\fR(3CURSES)
+.BR curs_instr (3CURSES)
.RE
.sp
@@ -1650,7 +1650,7 @@ Manual Page Name
\fBmvwinnwstr\fR
.ad
.RS 23n
-\fBcurs_inwstr\fR(3CURSES)
+.BR curs_inwstr (3CURSES)
.RE
.sp
@@ -1659,7 +1659,7 @@ Manual Page Name
\fBmvwinsch\fR
.ad
.RS 23n
-\fBcurs_insch\fR(3CURSES)
+.BR curs_insch (3CURSES)
.RE
.sp
@@ -1668,7 +1668,7 @@ Manual Page Name
\fBmvwinsnstr\fR
.ad
.RS 23n
-\fBcurs_insstr\fR(3CURSES)
+.BR curs_insstr (3CURSES)
.RE
.sp
@@ -1677,7 +1677,7 @@ Manual Page Name
\fBmvwinsstr\fR
.ad
.RS 23n
-\fBcurs_insstr\fR(3CURSES)
+.BR curs_insstr (3CURSES)
.RE
.sp
@@ -1686,7 +1686,7 @@ Manual Page Name
\fBmvwinstr\fR
.ad
.RS 23n
-\fBcurs_instr\fR(3CURSES)
+.BR curs_instr (3CURSES)
.RE
.sp
@@ -1695,7 +1695,7 @@ Manual Page Name
\fBmvwinswch\fR
.ad
.RS 23n
-\fBcurs_inswch\fR(3CURSES)
+.BR curs_inswch (3CURSES)
.RE
.sp
@@ -1704,7 +1704,7 @@ Manual Page Name
\fBmvwinswstr\fR
.ad
.RS 23n
-\fBcurs_inswstr\fR(3CURSES)
+.BR curs_inswstr (3CURSES)
.RE
.sp
@@ -1713,7 +1713,7 @@ Manual Page Name
\fBmvwinwch\fR
.ad
.RS 23n
-\fBcurs_inwch\fR(3CURSES)
+.BR curs_inwch (3CURSES)
.RE
.sp
@@ -1722,7 +1722,7 @@ Manual Page Name
\fBmvwinwchnstr\fR
.ad
.RS 23n
-\fBcurs_inwchstr\fR(3CURSES)
+.BR curs_inwchstr (3CURSES)
.RE
.sp
@@ -1731,7 +1731,7 @@ Manual Page Name
\fBmvwinwchstr\fR
.ad
.RS 23n
-\fBcurs_inwchstr\fR(3CURSES)
+.BR curs_inwchstr (3CURSES)
.RE
.sp
@@ -1740,7 +1740,7 @@ Manual Page Name
\fBmvwinwstr\fR
.ad
.RS 23n
-\fBcurs_inwstr\fR(3CURSES)
+.BR curs_inwstr (3CURSES)
.RE
.sp
@@ -1749,7 +1749,7 @@ Manual Page Name
\fBmvwprintw\fR
.ad
.RS 23n
-\fBcurs_printw\fR(3CURSES)
+.BR curs_printw (3CURSES)
.RE
.sp
@@ -1758,7 +1758,7 @@ Manual Page Name
\fBmvwscanw\fR
.ad
.RS 23n
-\fBcurs_scanw\fR(3CURSES)
+.BR curs_scanw (3CURSES)
.RE
.sp
@@ -1767,7 +1767,7 @@ Manual Page Name
\fBnapms\fR
.ad
.RS 23n
-\fBcurs_kernel\fR(3CURSES)
+.BR curs_kernel (3CURSES)
.RE
.sp
@@ -1776,7 +1776,7 @@ Manual Page Name
\fBnewpad\fR
.ad
.RS 23n
-\fBcurs_pad\fR(3CURSES)
+.BR curs_pad (3CURSES)
.RE
.sp
@@ -1785,7 +1785,7 @@ Manual Page Name
\fBnewterm\fR
.ad
.RS 23n
-\fBcurs_initscr\fR(3CURSES)
+.BR curs_initscr (3CURSES)
.RE
.sp
@@ -1794,7 +1794,7 @@ Manual Page Name
\fBnewwin\fR
.ad
.RS 23n
-\fBcurs_window\fR(3CURSES)
+.BR curs_window (3CURSES)
.RE
.sp
@@ -1803,7 +1803,7 @@ Manual Page Name
\fBnl\fR
.ad
.RS 23n
-\fBcurs_outopts\fR(3CURSES)
+.BR curs_outopts (3CURSES)
.RE
.sp
@@ -1812,7 +1812,7 @@ Manual Page Name
\fBnocbreak\fR
.ad
.RS 23n
-\fBcurs_inopts\fR(3CURSES)
+.BR curs_inopts (3CURSES)
.RE
.sp
@@ -1821,7 +1821,7 @@ Manual Page Name
\fBnodelay\fR
.ad
.RS 23n
-\fBcurs_inopts\fR(3CURSES)
+.BR curs_inopts (3CURSES)
.RE
.sp
@@ -1830,7 +1830,7 @@ Manual Page Name
\fBnoecho\fR
.ad
.RS 23n
-\fBcurs_inopts\fR(3CURSES)
+.BR curs_inopts (3CURSES)
.RE
.sp
@@ -1839,7 +1839,7 @@ Manual Page Name
\fBnonl\fR
.ad
.RS 23n
-\fBcurs_outopts\fR(3CURSES)
+.BR curs_outopts (3CURSES)
.RE
.sp
@@ -1848,7 +1848,7 @@ Manual Page Name
\fBnoqiflush\fR
.ad
.RS 23n
-\fBcurs_inopts\fR(3CURSES)
+.BR curs_inopts (3CURSES)
.RE
.sp
@@ -1857,7 +1857,7 @@ Manual Page Name
\fBnoraw\fR
.ad
.RS 23n
-\fBcurs_inopts\fR(3CURSES)
+.BR curs_inopts (3CURSES)
.RE
.sp
@@ -1866,7 +1866,7 @@ Manual Page Name
\fBnotimeout\fR
.ad
.RS 23n
-\fBcurs_inopts\fR(3CURSES)
+.BR curs_inopts (3CURSES)
.RE
.sp
@@ -1875,7 +1875,7 @@ Manual Page Name
\fBoverlay\fR
.ad
.RS 23n
-\fBcurs_overlay\fR(3CURSES)
+.BR curs_overlay (3CURSES)
.RE
.sp
@@ -1884,7 +1884,7 @@ Manual Page Name
\fBoverwrite\fR
.ad
.RS 23n
-\fBcurs_overlay\fR(3CURSES)
+.BR curs_overlay (3CURSES)
.RE
.sp
@@ -1893,7 +1893,7 @@ Manual Page Name
\fBpair_content\fR
.ad
.RS 23n
-\fBcurs_color\fR(3CURSES)
+.BR curs_color (3CURSES)
.RE
.sp
@@ -1902,7 +1902,7 @@ Manual Page Name
\fBpechochar\fR
.ad
.RS 23n
-\fBcurs_pad\fR(3CURSES)
+.BR curs_pad (3CURSES)
.RE
.sp
@@ -1911,7 +1911,7 @@ Manual Page Name
\fBpechowchar\fR
.ad
.RS 23n
-\fBcurs_pad\fR(3CURSES)
+.BR curs_pad (3CURSES)
.RE
.sp
@@ -1920,7 +1920,7 @@ Manual Page Name
\fBpnoutrefresh\fR
.ad
.RS 23n
-\fBcurs_pad\fR(3CURSES)
+.BR curs_pad (3CURSES)
.RE
.sp
@@ -1929,7 +1929,7 @@ Manual Page Name
\fBprefresh\fR
.ad
.RS 23n
-\fBcurs_pad\fR(3CURSES)
+.BR curs_pad (3CURSES)
.RE
.sp
@@ -1938,7 +1938,7 @@ Manual Page Name
\fBprintw\fR
.ad
.RS 23n
-\fBcurs_printw\fR(3CURSES)
+.BR curs_printw (3CURSES)
.RE
.sp
@@ -1947,7 +1947,7 @@ Manual Page Name
\fBputp\fR
.ad
.RS 23n
-\fBcurs_terminfo\fR(3CURSES)
+.BR curs_terminfo (3CURSES)
.RE
.sp
@@ -1956,7 +1956,7 @@ Manual Page Name
\fBputwin\fR
.ad
.RS 23n
-\fBcurs_util\fR(3CURSES)
+.BR curs_util (3CURSES)
.RE
.sp
@@ -1965,7 +1965,7 @@ Manual Page Name
\fBqiflush\fR
.ad
.RS 23n
-\fBcurs_inopts\fR(3CURSES)
+.BR curs_inopts (3CURSES)
.RE
.sp
@@ -1974,7 +1974,7 @@ Manual Page Name
\fBraw\fR
.ad
.RS 23n
-\fBcurs_inopts\fR(3CURSES)
+.BR curs_inopts (3CURSES)
.RE
.sp
@@ -1983,7 +1983,7 @@ Manual Page Name
\fBredrawwin\fR
.ad
.RS 23n
-\fBcurs_refresh\fR(3CURSES)
+.BR curs_refresh (3CURSES)
.RE
.sp
@@ -1992,7 +1992,7 @@ Manual Page Name
\fBrefresh\fR
.ad
.RS 23n
-\fBcurs_refresh\fR(3CURSES)
+.BR curs_refresh (3CURSES)
.RE
.sp
@@ -2001,7 +2001,7 @@ Manual Page Name
\fBreset_prog_mode\fR
.ad
.RS 23n
-\fBcurs_kernel\fR(3CURSES)
+.BR curs_kernel (3CURSES)
.RE
.sp
@@ -2010,7 +2010,7 @@ Manual Page Name
\fBreset_shell_mode\fR
.ad
.RS 23n
-\fBcurs_kernel\fR(3CURSES)
+.BR curs_kernel (3CURSES)
.RE
.sp
@@ -2019,7 +2019,7 @@ Manual Page Name
\fBresetty\fR
.ad
.RS 23n
-\fBcurs_kernel\fR(3CURSES)
+.BR curs_kernel (3CURSES)
.RE
.sp
@@ -2028,7 +2028,7 @@ Manual Page Name
\fBrestartterm\fR
.ad
.RS 23n
-\fBcurs_terminfo\fR(3CURSES)
+.BR curs_terminfo (3CURSES)
.RE
.sp
@@ -2037,7 +2037,7 @@ Manual Page Name
\fBripoffline\fR
.ad
.RS 23n
-\fBcurs_kernel\fR(3CURSES)
+.BR curs_kernel (3CURSES)
.RE
.sp
@@ -2046,7 +2046,7 @@ Manual Page Name
\fBsavetty\fR
.ad
.RS 23n
-\fBcurs_kernel\fR(3CURSES)
+.BR curs_kernel (3CURSES)
.RE
.sp
@@ -2055,7 +2055,7 @@ Manual Page Name
\fBscanw\fR
.ad
.RS 23n
-\fBcurs_scanw\fR(3CURSES)
+.BR curs_scanw (3CURSES)
.RE
.sp
@@ -2064,7 +2064,7 @@ Manual Page Name
\fBscr_dump\fR
.ad
.RS 23n
-\fBcurs_scr_dump\fR(3CURSES)
+.BR curs_scr_dump (3CURSES)
.RE
.sp
@@ -2073,7 +2073,7 @@ Manual Page Name
\fBscr_init\fR
.ad
.RS 23n
-\fBcurs_scr_dump\fR(3CURSES)
+.BR curs_scr_dump (3CURSES)
.RE
.sp
@@ -2082,7 +2082,7 @@ Manual Page Name
\fBscr_restore\fR
.ad
.RS 23n
-\fBcurs_scr_dump\fR(3CURSES)
+.BR curs_scr_dump (3CURSES)
.RE
.sp
@@ -2091,7 +2091,7 @@ Manual Page Name
\fBscr_set\fR
.ad
.RS 23n
-\fBcurs_scr_dump\fR(3CURSES)
+.BR curs_scr_dump (3CURSES)
.RE
.sp
@@ -2100,7 +2100,7 @@ Manual Page Name
\fBscroll\fR
.ad
.RS 23n
-\fBcurs_scroll\fR(3CURSES)
+.BR curs_scroll (3CURSES)
.RE
.sp
@@ -2109,7 +2109,7 @@ Manual Page Name
\fBscrollok\fR
.ad
.RS 23n
-\fBcurs_outopts\fR(3CURSES)
+.BR curs_outopts (3CURSES)
.RE
.sp
@@ -2118,7 +2118,7 @@ Manual Page Name
\fBset_curterm\fR
.ad
.RS 23n
-\fBcurs_terminfo\fR(3CURSES)
+.BR curs_terminfo (3CURSES)
.RE
.sp
@@ -2127,7 +2127,7 @@ Manual Page Name
\fBset_term\fR
.ad
.RS 23n
-\fBcurs_initscr\fR(3CURSES)
+.BR curs_initscr (3CURSES)
.RE
.sp
@@ -2136,7 +2136,7 @@ Manual Page Name
\fBsetscrreg\fR
.ad
.RS 23n
-\fBcurs_outopts\fR(3CURSES)
+.BR curs_outopts (3CURSES)
.RE
.sp
@@ -2145,7 +2145,7 @@ Manual Page Name
\fBsetsyx\fR
.ad
.RS 23n
-\fBcurs_kernel\fR(3CURSES)
+.BR curs_kernel (3CURSES)
.RE
.sp
@@ -2154,7 +2154,7 @@ Manual Page Name
\fBsetterm\fR
.ad
.RS 23n
-\fBcurs_terminfo\fR(3CURSES)
+.BR curs_terminfo (3CURSES)
.RE
.sp
@@ -2163,7 +2163,7 @@ Manual Page Name
\fBsetupterm\fR
.ad
.RS 23n
-\fBcurs_terminfo\fR(3CURSES)
+.BR curs_terminfo (3CURSES)
.RE
.sp
@@ -2172,7 +2172,7 @@ Manual Page Name
\fBslk_attroff\fR
.ad
.RS 23n
-\fBcurs_slk\fR(3CURSES)
+.BR curs_slk (3CURSES)
.RE
.sp
@@ -2181,7 +2181,7 @@ Manual Page Name
\fBslk_attron\fR
.ad
.RS 23n
-\fBcurs_slk\fR(3CURSES)
+.BR curs_slk (3CURSES)
.RE
.sp
@@ -2190,7 +2190,7 @@ Manual Page Name
\fBslk_attrset\fR
.ad
.RS 23n
-\fBcurs_slk\fR(3CURSES)
+.BR curs_slk (3CURSES)
.RE
.sp
@@ -2199,7 +2199,7 @@ Manual Page Name
\fBslk_clear\fR
.ad
.RS 23n
-\fBcurs_slk\fR(3CURSES)
+.BR curs_slk (3CURSES)
.RE
.sp
@@ -2208,7 +2208,7 @@ Manual Page Name
\fBslk_init\fR
.ad
.RS 23n
-\fBcurs_slk\fR(3CURSES)
+.BR curs_slk (3CURSES)
.RE
.sp
@@ -2217,7 +2217,7 @@ Manual Page Name
\fBslk_label\fR
.ad
.RS 23n
-\fBcurs_slk\fR(3CURSES)
+.BR curs_slk (3CURSES)
.RE
.sp
@@ -2226,7 +2226,7 @@ Manual Page Name
\fBslk_noutrefresh\fR
.ad
.RS 23n
-\fBcurs_slk\fR(3CURSES)
+.BR curs_slk (3CURSES)
.RE
.sp
@@ -2235,7 +2235,7 @@ Manual Page Name
\fBslk_refresh\fR
.ad
.RS 23n
-\fBcurs_slk\fR(3CURSES)
+.BR curs_slk (3CURSES)
.RE
.sp
@@ -2244,7 +2244,7 @@ Manual Page Name
\fBslk_restore\fR
.ad
.RS 23n
-\fBcurs_slk\fR(3CURSES)
+.BR curs_slk (3CURSES)
.RE
.sp
@@ -2253,7 +2253,7 @@ Manual Page Name
\fBslk_set\fR
.ad
.RS 23n
-\fBcurs_slk\fR(3CURSES)
+.BR curs_slk (3CURSES)
.RE
.sp
@@ -2262,7 +2262,7 @@ Manual Page Name
\fBslk_touch\fR
.ad
.RS 23n
-\fBcurs_slk\fR(3CURSES)
+.BR curs_slk (3CURSES)
.RE
.sp
@@ -2271,7 +2271,7 @@ Manual Page Name
\fBsrcl\fR
.ad
.RS 23n
-\fBcurs_scroll\fR(3CURSES)
+.BR curs_scroll (3CURSES)
.RE
.sp
@@ -2280,7 +2280,7 @@ Manual Page Name
\fBstandend\fR
.ad
.RS 23n
-\fBcurs_attr\fR(3CURSES)
+.BR curs_attr (3CURSES)
.RE
.sp
@@ -2289,7 +2289,7 @@ Manual Page Name
\fBstandout\fR
.ad
.RS 23n
-\fBcurs_attr\fR(3CURSES)
+.BR curs_attr (3CURSES)
.RE
.sp
@@ -2298,7 +2298,7 @@ Manual Page Name
\fBstart_color\fR
.ad
.RS 23n
-\fBcurs_color\fR(3CURSES)
+.BR curs_color (3CURSES)
.RE
.sp
@@ -2307,7 +2307,7 @@ Manual Page Name
\fBsubpad\fR
.ad
.RS 23n
-\fBcurs_pad\fR(3CURSES)
+.BR curs_pad (3CURSES)
.RE
.sp
@@ -2316,7 +2316,7 @@ Manual Page Name
\fBsubwin\fR
.ad
.RS 23n
-\fBcurs_window\fR(3CURSES)
+.BR curs_window (3CURSES)
.RE
.sp
@@ -2325,7 +2325,7 @@ Manual Page Name
\fBsyncok\fR
.ad
.RS 23n
-\fBcurs_window\fR(3CURSES)
+.BR curs_window (3CURSES)
.RE
.sp
@@ -2334,7 +2334,7 @@ Manual Page Name
\fBtermattrs\fR
.ad
.RS 23n
-\fBcurs_termattrs\fR(3CURSES)
+.BR curs_termattrs (3CURSES)
.RE
.sp
@@ -2343,7 +2343,7 @@ Manual Page Name
\fBtermname\fR
.ad
.RS 23n
-\fBcurs_termattrs\fR(3CURSES)
+.BR curs_termattrs (3CURSES)
.RE
.sp
@@ -2352,7 +2352,7 @@ Manual Page Name
\fBtgetent\fR
.ad
.RS 23n
-\fBcurs_termcap\fR(3CURSES)
+.BR curs_termcap (3CURSES)
.RE
.sp
@@ -2361,7 +2361,7 @@ Manual Page Name
\fBtgetflag\fR
.ad
.RS 23n
-\fBcurs_termcap\fR(3CURSES)
+.BR curs_termcap (3CURSES)
.RE
.sp
@@ -2370,7 +2370,7 @@ Manual Page Name
\fBtgetnum\fR
.ad
.RS 23n
-\fBcurs_termcap\fR(3CURSES)
+.BR curs_termcap (3CURSES)
.RE
.sp
@@ -2379,7 +2379,7 @@ Manual Page Name
\fBtgetstr\fR
.ad
.RS 23n
-\fBcurs_termcap\fR(3CURSES)
+.BR curs_termcap (3CURSES)
.RE
.sp
@@ -2388,7 +2388,7 @@ Manual Page Name
\fBtgoto\fR
.ad
.RS 23n
-\fBcurs_termcap\fR(3CURSES)
+.BR curs_termcap (3CURSES)
.RE
.sp
@@ -2397,7 +2397,7 @@ Manual Page Name
\fBtigetflag\fR
.ad
.RS 23n
-\fBcurs_terminfo\fR(3CURSES)
+.BR curs_terminfo (3CURSES)
.RE
.sp
@@ -2406,7 +2406,7 @@ Manual Page Name
\fBtigetnum\fR
.ad
.RS 23n
-\fBcurs_terminfo\fR(3CURSES)
+.BR curs_terminfo (3CURSES)
.RE
.sp
@@ -2415,7 +2415,7 @@ Manual Page Name
\fBtigetstr\fR
.ad
.RS 23n
-\fBcurs_terminfo\fR(3CURSES)
+.BR curs_terminfo (3CURSES)
.RE
.sp
@@ -2424,7 +2424,7 @@ Manual Page Name
\fBtimeout\fR
.ad
.RS 23n
-\fBcurs_inopts\fR(3CURSES)
+.BR curs_inopts (3CURSES)
.RE
.sp
@@ -2433,7 +2433,7 @@ Manual Page Name
\fBtouchline\fR
.ad
.RS 23n
-\fBcurs_touch\fR(3CURSES)
+.BR curs_touch (3CURSES)
.RE
.sp
@@ -2442,7 +2442,7 @@ Manual Page Name
\fBtouchwin\fR
.ad
.RS 23n
-\fBcurs_touch\fR(3CURSES)
+.BR curs_touch (3CURSES)
.RE
.sp
@@ -2451,7 +2451,7 @@ Manual Page Name
\fBtparm\fR
.ad
.RS 23n
-\fBcurs_terminfo\fR(3CURSES)
+.BR curs_terminfo (3CURSES)
.RE
.sp
@@ -2460,7 +2460,7 @@ Manual Page Name
\fBtputs\fR
.ad
.RS 23n
-\fBcurs_terminfo\fR(3CURSES)
+.BR curs_terminfo (3CURSES)
.RE
.sp
@@ -2469,7 +2469,7 @@ Manual Page Name
\fBtypeahead\fR
.ad
.RS 23n
-\fBcurs_inopts\fR(3CURSES)
+.BR curs_inopts (3CURSES)
.RE
.sp
@@ -2478,7 +2478,7 @@ Manual Page Name
\fBunctrl\fR
.ad
.RS 23n
-\fBcurs_util\fR(3CURSES)
+.BR curs_util (3CURSES)
.RE
.sp
@@ -2487,7 +2487,7 @@ Manual Page Name
\fBungetch\fR
.ad
.RS 23n
-\fBcurs_getch\fR(3CURSES)
+.BR curs_getch (3CURSES)
.RE
.sp
@@ -2496,7 +2496,7 @@ Manual Page Name
\fBungetwch\fR
.ad
.RS 23n
-\fBcurs_getwch\fR(3CURSES)
+.BR curs_getwch (3CURSES)
.RE
.sp
@@ -2505,7 +2505,7 @@ Manual Page Name
\fBuntouchwin\fR
.ad
.RS 23n
-\fBcurs_touch\fR(3CURSES)
+.BR curs_touch (3CURSES)
.RE
.sp
@@ -2514,7 +2514,7 @@ Manual Page Name
\fBuse_env\fR
.ad
.RS 23n
-\fBcurs_util\fR(3CURSES)
+.BR curs_util (3CURSES)
.RE
.sp
@@ -2523,7 +2523,7 @@ Manual Page Name
\fBvidattr\fR
.ad
.RS 23n
-\fBcurs_terminfo\fR(3CURSES)
+.BR curs_terminfo (3CURSES)
.RE
.sp
@@ -2532,7 +2532,7 @@ Manual Page Name
\fBvidputs\fR
.ad
.RS 23n
-\fBcurs_terminfo\fR(3CURSES)
+.BR curs_terminfo (3CURSES)
.RE
.sp
@@ -2541,7 +2541,7 @@ Manual Page Name
\fBvwprintw\fR
.ad
.RS 23n
-\fBcurs_printw\fR(3CURSES)
+.BR curs_printw (3CURSES)
.RE
.sp
@@ -2550,7 +2550,7 @@ Manual Page Name
\fBvwscanw\fR
.ad
.RS 23n
-\fBcurs_scanw\fR(3CURSES)
+.BR curs_scanw (3CURSES)
.RE
.sp
@@ -2559,7 +2559,7 @@ Manual Page Name
\fBwaddch\fR
.ad
.RS 23n
-\fBcurs_addch\fR(3CURSES)
+.BR curs_addch (3CURSES)
.RE
.sp
@@ -2568,7 +2568,7 @@ Manual Page Name
\fBwaddchnstr\fR
.ad
.RS 23n
-\fBcurs_addchstr\fR(3CURSES)
+.BR curs_addchstr (3CURSES)
.RE
.sp
@@ -2577,7 +2577,7 @@ Manual Page Name
\fBwaddchstr\fR
.ad
.RS 23n
-\fBcurs_addchstr\fR(3CURSES)
+.BR curs_addchstr (3CURSES)
.RE
.sp
@@ -2586,7 +2586,7 @@ Manual Page Name
\fBwaddnstr\fR
.ad
.RS 23n
-\fBcurs_addstr\fR(3CURSES)
+.BR curs_addstr (3CURSES)
.RE
.sp
@@ -2595,7 +2595,7 @@ Manual Page Name
\fBwaddnwstr\fR
.ad
.RS 23n
-\fBcurs_addwstr\fR(3CURSES)
+.BR curs_addwstr (3CURSES)
.RE
.sp
@@ -2604,7 +2604,7 @@ Manual Page Name
\fBwaddstr\fR
.ad
.RS 23n
-\fBcurs_addstr\fR(3CURSES)
+.BR curs_addstr (3CURSES)
.RE
.sp
@@ -2613,7 +2613,7 @@ Manual Page Name
\fBwaddwch\fR
.ad
.RS 23n
-\fBcurs_addwch\fR(3CURSES)
+.BR curs_addwch (3CURSES)
.RE
.sp
@@ -2622,7 +2622,7 @@ Manual Page Name
\fBwaddwchnstr\fR
.ad
.RS 23n
-\fBcurs_addwchstr\fR(3CURSES)
+.BR curs_addwchstr (3CURSES)
.RE
.sp
@@ -2631,7 +2631,7 @@ Manual Page Name
\fBwaddwchstr\fR
.ad
.RS 23n
-\fBcurs_addwchstr\fR(3CURSES)
+.BR curs_addwchstr (3CURSES)
.RE
.sp
@@ -2640,7 +2640,7 @@ Manual Page Name
\fBwaddwstr\fR
.ad
.RS 23n
-\fBcurs_addwstr\fR(3CURSES)
+.BR curs_addwstr (3CURSES)
.RE
.sp
@@ -2649,7 +2649,7 @@ Manual Page Name
\fBwadjcurspos\fR
.ad
.RS 23n
-\fBcurs_alecompat\fR(3CURSES)
+.BR curs_alecompat (3CURSES)
.RE
.sp
@@ -2658,7 +2658,7 @@ Manual Page Name
\fBwattroff\fR
.ad
.RS 23n
-\fBcurs_attr\fR(3CURSES)
+.BR curs_attr (3CURSES)
.RE
.sp
@@ -2667,7 +2667,7 @@ Manual Page Name
\fBwattron\fR
.ad
.RS 23n
-\fBcurs_attr\fR(3CURSES)
+.BR curs_attr (3CURSES)
.RE
.sp
@@ -2676,7 +2676,7 @@ Manual Page Name
\fBwattrset\fR
.ad
.RS 23n
-\fBcurs_attr\fR(3CURSES)
+.BR curs_attr (3CURSES)
.RE
.sp
@@ -2685,7 +2685,7 @@ Manual Page Name
\fBwbkgd\fR
.ad
.RS 23n
-\fBcurs_bkgd\fR(3CURSES)
+.BR curs_bkgd (3CURSES)
.RE
.sp
@@ -2694,7 +2694,7 @@ Manual Page Name
\fBwbkgdset\fR
.ad
.RS 23n
-\fBcurs_bkgd\fR(3CURSES)
+.BR curs_bkgd (3CURSES)
.RE
.sp
@@ -2703,7 +2703,7 @@ Manual Page Name
\fBwborder\fR
.ad
.RS 23n
-\fBcurs_border\fR(3CURSES)
+.BR curs_border (3CURSES)
.RE
.sp
@@ -2712,7 +2712,7 @@ Manual Page Name
\fBwclear\fR
.ad
.RS 23n
-\fBcurs_clear\fR(3CURSES)
+.BR curs_clear (3CURSES)
.RE
.sp
@@ -2721,7 +2721,7 @@ Manual Page Name
\fBwclrtobot\fR
.ad
.RS 23n
-\fBcurs_clear\fR(3CURSES)
+.BR curs_clear (3CURSES)
.RE
.sp
@@ -2730,7 +2730,7 @@ Manual Page Name
\fBwclrtoeol\fR
.ad
.RS 23n
-\fBcurs_clear\fR(3CURSES)
+.BR curs_clear (3CURSES)
.RE
.sp
@@ -2739,7 +2739,7 @@ Manual Page Name
\fBwcursyncup\fR
.ad
.RS 23n
-\fBcurs_window\fR(3CURSES)
+.BR curs_window (3CURSES)
.RE
.sp
@@ -2748,7 +2748,7 @@ Manual Page Name
\fBwdelch\fR
.ad
.RS 23n
-\fBcurs_delch\fR(3CURSES)
+.BR curs_delch (3CURSES)
.RE
.sp
@@ -2757,7 +2757,7 @@ Manual Page Name
\fBwdeleteln\fR
.ad
.RS 23n
-\fBcurs_deleteln\fR(3CURSES)
+.BR curs_deleteln (3CURSES)
.RE
.sp
@@ -2766,7 +2766,7 @@ Manual Page Name
\fBwechochar\fR
.ad
.RS 23n
-\fBcurs_addch\fR(3CURSES)
+.BR curs_addch (3CURSES)
.RE
.sp
@@ -2775,7 +2775,7 @@ Manual Page Name
\fBwechowchar\fR
.ad
.RS 23n
-\fBcurs_addwch\fR(3CURSES)
+.BR curs_addwch (3CURSES)
.RE
.sp
@@ -2784,7 +2784,7 @@ Manual Page Name
\fBwerase\fR
.ad
.RS 23n
-\fBcurs_clear\fR(3CURSES)
+.BR curs_clear (3CURSES)
.RE
.sp
@@ -2793,7 +2793,7 @@ Manual Page Name
\fBwgetch\fR
.ad
.RS 23n
-\fBcurs_getch\fR(3CURSES)
+.BR curs_getch (3CURSES)
.RE
.sp
@@ -2802,7 +2802,7 @@ Manual Page Name
\fBwgetnstr\fR
.ad
.RS 23n
-\fBcurs_getstr\fR(3CURSES)
+.BR curs_getstr (3CURSES)
.RE
.sp
@@ -2811,7 +2811,7 @@ Manual Page Name
\fBwgetnwstr\fR
.ad
.RS 23n
-\fBcurs_getwstr\fR(3CURSES)
+.BR curs_getwstr (3CURSES)
.RE
.sp
@@ -2820,7 +2820,7 @@ Manual Page Name
\fBwgetstr\fR
.ad
.RS 23n
-\fBcurs_getstr\fR(3CURSES)
+.BR curs_getstr (3CURSES)
.RE
.sp
@@ -2829,7 +2829,7 @@ Manual Page Name
\fBwgetwch\fR
.ad
.RS 23n
-\fBcurs_getwch\fR(3CURSES)
+.BR curs_getwch (3CURSES)
.RE
.sp
@@ -2838,7 +2838,7 @@ Manual Page Name
\fBwgetwstr\fR
.ad
.RS 23n
-\fBcurs_getwstr\fR(3CURSES)
+.BR curs_getwstr (3CURSES)
.RE
.sp
@@ -2847,7 +2847,7 @@ Manual Page Name
\fBwhline\fR
.ad
.RS 23n
-\fBcurs_border\fR(3CURSES)
+.BR curs_border (3CURSES)
.RE
.sp
@@ -2856,7 +2856,7 @@ Manual Page Name
\fBwinch\fR
.ad
.RS 23n
-\fBcurs_inch\fR(3CURSES)
+.BR curs_inch (3CURSES)
.RE
.sp
@@ -2865,7 +2865,7 @@ Manual Page Name
\fBwinchnstr\fR
.ad
.RS 23n
-\fBcurs_inchstr\fR(3CURSES)
+.BR curs_inchstr (3CURSES)
.RE
.sp
@@ -2874,7 +2874,7 @@ Manual Page Name
\fBwinchstr\fR
.ad
.RS 23n
-\fBcurs_inchstr\fR(3CURSES)
+.BR curs_inchstr (3CURSES)
.RE
.sp
@@ -2883,7 +2883,7 @@ Manual Page Name
\fBwinnstr\fR
.ad
.RS 23n
-\fBcurs_instr\fR(3CURSES)
+.BR curs_instr (3CURSES)
.RE
.sp
@@ -2892,7 +2892,7 @@ Manual Page Name
\fBwinnwstr\fR
.ad
.RS 23n
-\fBcurs_inwstr\fR(3CURSES)
+.BR curs_inwstr (3CURSES)
.RE
.sp
@@ -2901,7 +2901,7 @@ Manual Page Name
\fBwinsch\fR
.ad
.RS 23n
-\fBcurs_insch\fR(3CURSES)
+.BR curs_insch (3CURSES)
.RE
.sp
@@ -2910,7 +2910,7 @@ Manual Page Name
\fBwinsdelln\fR
.ad
.RS 23n
-\fBcurs_deleteln\fR(3CURSES)
+.BR curs_deleteln (3CURSES)
.RE
.sp
@@ -2919,7 +2919,7 @@ Manual Page Name
\fBwinsertln\fR
.ad
.RS 23n
-\fBcurs_deleteln\fR(3CURSES)
+.BR curs_deleteln (3CURSES)
.RE
.sp
@@ -2928,7 +2928,7 @@ Manual Page Name
\fBwinsnstr\fR
.ad
.RS 23n
-\fBcurs_insstr\fR(3CURSES)
+.BR curs_insstr (3CURSES)
.RE
.sp
@@ -2937,7 +2937,7 @@ Manual Page Name
\fBwinsnwstr\fR
.ad
.RS 23n
-\fBcurs_inswstr\fR(3CURSES)
+.BR curs_inswstr (3CURSES)
.RE
.sp
@@ -2946,7 +2946,7 @@ Manual Page Name
\fBwinsstr\fR
.ad
.RS 23n
-\fBcurs_insstr\fR(3CURSES)
+.BR curs_insstr (3CURSES)
.RE
.sp
@@ -2955,7 +2955,7 @@ Manual Page Name
\fBwinstr\fR
.ad
.RS 23n
-\fBcurs_instr\fR(3CURSES)
+.BR curs_instr (3CURSES)
.RE
.sp
@@ -2964,7 +2964,7 @@ Manual Page Name
\fBwinswch\fR
.ad
.RS 23n
-\fBcurs_inswch\fR(3CURSES)
+.BR curs_inswch (3CURSES)
.RE
.sp
@@ -2973,7 +2973,7 @@ Manual Page Name
\fBwinswstr\fR
.ad
.RS 23n
-\fBcurs_inswstr\fR(3CURSES)
+.BR curs_inswstr (3CURSES)
.RE
.sp
@@ -2982,7 +2982,7 @@ Manual Page Name
\fBwinwch\fR
.ad
.RS 23n
-\fBcurs_inwch\fR(3CURSES)
+.BR curs_inwch (3CURSES)
.RE
.sp
@@ -2991,7 +2991,7 @@ Manual Page Name
\fBwinwchnstr\fR
.ad
.RS 23n
-\fBcurs_inwchstr\fR(3CURSES)
+.BR curs_inwchstr (3CURSES)
.RE
.sp
@@ -3000,7 +3000,7 @@ Manual Page Name
\fBwinwchstr\fR
.ad
.RS 23n
-\fBcurs_inwchstr\fR(3CURSES)
+.BR curs_inwchstr (3CURSES)
.RE
.sp
@@ -3009,7 +3009,7 @@ Manual Page Name
\fBwinwstr\fR
.ad
.RS 23n
-\fBcurs_inwstr\fR(3CURSES)
+.BR curs_inwstr (3CURSES)
.RE
.sp
@@ -3018,7 +3018,7 @@ Manual Page Name
\fBwmove\fR
.ad
.RS 23n
-\fBcurs_move\fR(3CURSES)
+.BR curs_move (3CURSES)
.RE
.sp
@@ -3027,7 +3027,7 @@ Manual Page Name
\fBwmovenextch\fR
.ad
.RS 23n
-\fBcurs_alecompat\fR(3CURSES)
+.BR curs_alecompat (3CURSES)
.RE
.sp
@@ -3036,7 +3036,7 @@ Manual Page Name
\fBwmoveprevch\fR
.ad
.RS 23n
-\fBcurs_alecompat\fR(3CURSES)
+.BR curs_alecompat (3CURSES)
.RE
.sp
@@ -3045,7 +3045,7 @@ Manual Page Name
\fBwnoutrefresh\fR
.ad
.RS 23n
-\fBcurs_refresh\fR(3CURSES)
+.BR curs_refresh (3CURSES)
.RE
.sp
@@ -3054,7 +3054,7 @@ Manual Page Name
\fBwprintw\fR
.ad
.RS 23n
-\fBcurs_printw\fR(3CURSES)
+.BR curs_printw (3CURSES)
.RE
.sp
@@ -3063,7 +3063,7 @@ Manual Page Name
\fBwredrawln\fR
.ad
.RS 23n
-\fBcurs_refresh\fR(3CURSES)
+.BR curs_refresh (3CURSES)
.RE
.sp
@@ -3072,7 +3072,7 @@ Manual Page Name
\fBwrefresh\fR
.ad
.RS 23n
-\fBcurs_refresh\fR(3CURSES)
+.BR curs_refresh (3CURSES)
.RE
.sp
@@ -3081,7 +3081,7 @@ Manual Page Name
\fBwscanw\fR
.ad
.RS 23n
-\fBcurs_scanw\fR(3CURSES)
+.BR curs_scanw (3CURSES)
.RE
.sp
@@ -3090,7 +3090,7 @@ Manual Page Name
\fBwscrl\fR
.ad
.RS 23n
-\fBcurs_scroll\fR(3CURSES)
+.BR curs_scroll (3CURSES)
.RE
.sp
@@ -3099,7 +3099,7 @@ Manual Page Name
\fBwsetscrreg\fR
.ad
.RS 23n
-\fBcurs_outopts\fR(3CURSES)
+.BR curs_outopts (3CURSES)
.RE
.sp
@@ -3108,7 +3108,7 @@ Manual Page Name
\fBwstandend\fR
.ad
.RS 23n
-\fBcurs_attr\fR(3CURSES)
+.BR curs_attr (3CURSES)
.RE
.sp
@@ -3117,7 +3117,7 @@ Manual Page Name
\fBwstandout\fR
.ad
.RS 23n
-\fBcurs_attr\fR(3CURSES)
+.BR curs_attr (3CURSES)
.RE
.sp
@@ -3126,7 +3126,7 @@ Manual Page Name
\fBwsyncdown\fR
.ad
.RS 23n
-\fBcurs_window\fR(3CURSES)
+.BR curs_window (3CURSES)
.RE
.sp
@@ -3135,7 +3135,7 @@ Manual Page Name
\fBwsyncup\fR
.ad
.RS 23n
-\fBcurs_window\fR(3CURSES)
+.BR curs_window (3CURSES)
.RE
.sp
@@ -3144,7 +3144,7 @@ Manual Page Name
\fBwtimeout\fR
.ad
.RS 23n
-\fBcurs_inopts\fR(3CURSES)
+.BR curs_inopts (3CURSES)
.RE
.sp
@@ -3153,7 +3153,7 @@ Manual Page Name
\fBwtouchln\fR
.ad
.RS 23n
-\fBcurs_touch\fR(3CURSES)
+.BR curs_touch (3CURSES)
.RE
.sp
@@ -3162,7 +3162,7 @@ Manual Page Name
\fBwvline\fR
.ad
.RS 23n
-\fBcurs_border\fR(3CURSES)
+.BR curs_border (3CURSES)
.RE
.SH RETURN VALUES
@@ -3184,7 +3184,7 @@ Routines that return pointers return \fINULL\fR on error.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -3200,8 +3200,11 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurses\fR(3XCURSES), \fBlibcurses\fR(3LIB), \fBlibcurses\fR(3XCURSES),
-\fBterminfo\fR(4), \fBattributes\fR(5)
+.BR libcurses (3LIB),
+.BR curses (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR terminfo (5),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/form_cursor.3curses b/usr/src/man/man3curses/form_cursor.3curses
index e7bde82e0f..1615a30206 100644
--- a/usr/src/man/man3curses/form_cursor.3curses
+++ b/usr/src/man/man3curses/form_cursor.3curses
@@ -62,7 +62,7 @@ The form is not posted.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -77,7 +77,9 @@ MT-Level Unsafe
.SH SEE ALSO
.LP
-\fBcurses\fR(3CURSES), \fBforms\fR(3CURSES), \fBattributes\fR(5)
+.BR curses (3CURSES),
+.BR forms (3CURSES),
+.BR attributes (7)
.SH NOTES
.LP
The header \fB<form.h>\fR automatically includes the headers \fB<eti.h>\fR and
diff --git a/usr/src/man/man3curses/form_data.3curses b/usr/src/man/man3curses/form_data.3curses
index 36b6c57270..b9cd83e33a 100644
--- a/usr/src/man/man3curses/form_data.3curses
+++ b/usr/src/man/man3curses/form_data.3curses
@@ -36,7 +36,7 @@ off-screen data behind; otherwise it returns \fBFALSE\fR (0).
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -52,7 +52,9 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurses\fR(3CURSES), \fBforms\fR(3CURSES), \fBattributes\fR(5)
+.BR curses (3CURSES),
+.BR forms (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/form_driver.3curses b/usr/src/man/man3curses/form_driver.3curses
index 5bd5e9c9a9..577e98e972 100644
--- a/usr/src/man/man3curses/form_driver.3curses
+++ b/usr/src/man/man3curses/form_driver.3curses
@@ -622,7 +622,7 @@ An unknown request was passed to the form driver.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -638,7 +638,9 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurses\fR(3CURSES), \fBforms\fR(3CURSES), \fBattributes\fR(5)
+.BR curses (3CURSES),
+.BR forms (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/form_field.3curses b/usr/src/man/man3curses/form_field.3curses
index d0e7bcbfeb..928ec51016 100644
--- a/usr/src/man/man3curses/form_field.3curses
+++ b/usr/src/man/man3curses/form_field.3curses
@@ -106,7 +106,7 @@ The form is posted.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -122,7 +122,9 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurses\fR(3CURSES), \fBforms\fR(3CURSES), \fBattributes\fR(5)
+.BR curses (3CURSES),
+.BR forms (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/form_field_attributes.3curses b/usr/src/man/man3curses/form_field_attributes.3curses
index e97e254973..3b94a13631 100644
--- a/usr/src/man/man3curses/form_field_attributes.3curses
+++ b/usr/src/man/man3curses/form_field_attributes.3curses
@@ -101,7 +101,7 @@ An argument is incorrect.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -117,7 +117,9 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurses\fR(3CURSES), \fBforms\fR(3CURSES), \fBattributes\fR(5)
+.BR curses (3CURSES),
+.BR forms (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/form_field_buffer.3curses b/usr/src/man/man3curses/form_field_buffer.3curses
index 82438c08a3..7084ec4afe 100644
--- a/usr/src/man/man3curses/form_field_buffer.3curses
+++ b/usr/src/man/man3curses/form_field_buffer.3curses
@@ -94,7 +94,7 @@ An argument is incorrect.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -109,7 +109,9 @@ MT-Level Unsafe
.SH SEE ALSO
.LP
-\fBcurses\fR(3CURSES), \fBforms\fR(3CURSES), \fBattributes\fR(5)
+.BR curses (3CURSES),
+.BR forms (3CURSES),
+.BR attributes (7)
.SH NOTES
.LP
The header \fB<form.h>\fR automatically includes the headers \fB<eti.h>\fR and
diff --git a/usr/src/man/man3curses/form_field_info.3curses b/usr/src/man/man3curses/form_field_info.3curses
index 39314e525d..a2162e69bc 100644
--- a/usr/src/man/man3curses/form_field_info.3curses
+++ b/usr/src/man/man3curses/form_field_info.3curses
@@ -71,7 +71,7 @@ An argument is incorrect.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -87,7 +87,9 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurses\fR(3CURSES), \fBforms\fR(3CURSES), \fBattributes\fR(5)
+.BR curses (3CURSES),
+.BR forms (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/form_field_just.3curses b/usr/src/man/man3curses/form_field_just.3curses
index 562b81029e..1eebbefd1a 100644
--- a/usr/src/man/man3curses/form_field_just.3curses
+++ b/usr/src/man/man3curses/form_field_just.3curses
@@ -105,7 +105,7 @@ An argument is incorrect.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -121,7 +121,9 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurses\fR(3CURSES), \fBforms\fR(3CURSES), \fBattributes\fR(5)
+.BR curses (3CURSES),
+.BR forms (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/form_field_new.3curses b/usr/src/man/man3curses/form_field_new.3curses
index 37c26c8486..29afba9e48 100644
--- a/usr/src/man/man3curses/form_field_new.3curses
+++ b/usr/src/man/man3curses/form_field_new.3curses
@@ -93,7 +93,7 @@ An argument is incorrect.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -108,7 +108,9 @@ MT-Level Unsafe
.SH SEE ALSO
.LP
-\fBcurses\fR(3CURSES), \fBforms\fR(3CURSES), \fBattributes\fR(5)
+.BR curses (3CURSES),
+.BR forms (3CURSES),
+.BR attributes (7)
.SH NOTES
.LP
The header \fB<form.h>\fR automatically includes the headers \fB<eti.h>\fR and
diff --git a/usr/src/man/man3curses/form_field_opts.3curses b/usr/src/man/man3curses/form_field_opts.3curses
index a54febd12a..c6f3e0e240 100644
--- a/usr/src/man/man3curses/form_field_opts.3curses
+++ b/usr/src/man/man3curses/form_field_opts.3curses
@@ -177,7 +177,7 @@ The field is the current field.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -193,7 +193,9 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurses\fR(3CURSES), \fBforms\fR(3CURSES), \fBattributes\fR(5)
+.BR curses (3CURSES),
+.BR forms (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/form_field_userptr.3curses b/usr/src/man/man3curses/form_field_userptr.3curses
index 4890267c6f..c9e948588a 100644
--- a/usr/src/man/man3curses/form_field_userptr.3curses
+++ b/usr/src/man/man3curses/form_field_userptr.3curses
@@ -54,7 +54,7 @@ System error.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -70,7 +70,9 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurses\fR(3CURSES), \fBforms\fR(3CURSES), \fBattributes\fR(5)
+.BR curses (3CURSES),
+.BR forms (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/form_field_validation.3curses b/usr/src/man/man3curses/form_field_validation.3curses
index 8c12b32950..399a4f843a 100644
--- a/usr/src/man/man3curses/form_field_validation.3curses
+++ b/usr/src/man/man3curses/form_field_validation.3curses
@@ -71,7 +71,7 @@ System error.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -87,7 +87,9 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurses\fR(3CURSES), \fBforms\fR(3CURSES), \fBattributes\fR(5)
+.BR curses (3CURSES),
+.BR forms (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/form_fieldtype.3curses b/usr/src/man/man3curses/form_fieldtype.3curses
index b263cc12c9..a1e15182aa 100644
--- a/usr/src/man/man3curses/form_fieldtype.3curses
+++ b/usr/src/man/man3curses/form_fieldtype.3curses
@@ -113,7 +113,7 @@ Type is connected to one or more fields.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -129,7 +129,9 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurses\fR(3CURSES), \fBforms\fR(3CURSES), \fBattributes\fR(5)
+.BR curses (3CURSES),
+.BR forms (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/form_hook.3curses b/usr/src/man/man3curses/form_hook.3curses
index f7e3df24b5..dcb93889af 100644
--- a/usr/src/man/man3curses/form_hook.3curses
+++ b/usr/src/man/man3curses/form_hook.3curses
@@ -109,7 +109,7 @@ System error.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -125,7 +125,9 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurses\fR(3CURSES), \fBforms\fR(3CURSES), \fBattributes\fR(5)
+.BR curses (3CURSES),
+.BR forms (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/form_new.3curses b/usr/src/man/man3curses/form_new.3curses
index 7029c4f96b..02ee2221bf 100644
--- a/usr/src/man/man3curses/form_new.3curses
+++ b/usr/src/man/man3curses/form_new.3curses
@@ -65,7 +65,7 @@ The form is posted.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -81,7 +81,9 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurses\fR(3CURSES), \fBforms\fR(3CURSES), \fBattributes\fR(5)
+.BR curses (3CURSES),
+.BR forms (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/form_new_page.3curses b/usr/src/man/man3curses/form_new_page.3curses
index 15a94c7d81..220071e01d 100644
--- a/usr/src/man/man3curses/form_new_page.3curses
+++ b/usr/src/man/man3curses/form_new_page.3curses
@@ -67,7 +67,7 @@ System error.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -83,7 +83,9 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurses\fR(3CURSES), \fBforms\fR(3CURSES), \fBattributes\fR(5)
+.BR curses (3CURSES),
+.BR forms (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/form_opts.3curses b/usr/src/man/man3curses/form_opts.3curses
index a892543bfe..7c6945a95d 100644
--- a/usr/src/man/man3curses/form_opts.3curses
+++ b/usr/src/man/man3curses/form_opts.3curses
@@ -86,7 +86,7 @@ System error.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -102,7 +102,9 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurses\fR(3CURSES), \fBforms\fR(3CURSES), \fBattributes\fR(5)
+.BR curses (3CURSES),
+.BR forms (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/form_page.3curses b/usr/src/man/man3curses/form_page.3curses
index 06bbad1d4f..0d5b00b620 100644
--- a/usr/src/man/man3curses/form_page.3curses
+++ b/usr/src/man/man3curses/form_page.3curses
@@ -121,7 +121,7 @@ The form driver request failed
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -137,7 +137,9 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurses\fR(3CURSES), \fBforms\fR(3CURSES), \fBattributes\fR(5)
+.BR curses (3CURSES),
+.BR forms (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/form_post.3curses b/usr/src/man/man3curses/form_post.3curses
index 48ce712137..36be438500 100644
--- a/usr/src/man/man3curses/form_post.3curses
+++ b/usr/src/man/man3curses/form_post.3curses
@@ -113,7 +113,7 @@ The field is not connected to a form.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -129,8 +129,11 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurses\fR(3CURSES), \fBforms\fR(3CURSES), \fBpanel_update\fR(3CURSES),
-\fBpanels\fR(3CURSES), \fBattributes\fR(5)
+.BR curses (3CURSES),
+.BR forms (3CURSES),
+.BR panel_update (3CURSES),
+.BR panels (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/form_userptr.3curses b/usr/src/man/man3curses/form_userptr.3curses
index 8b1933d0a4..15ab9a7f56 100644
--- a/usr/src/man/man3curses/form_userptr.3curses
+++ b/usr/src/man/man3curses/form_userptr.3curses
@@ -53,7 +53,7 @@ System error.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -69,7 +69,9 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurses\fR(3CURSES), \fBforms\fR(3CURSES), \fBattributes\fR(5)
+.BR curses (3CURSES),
+.BR forms (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/form_win.3curses b/usr/src/man/man3curses/form_win.3curses
index 8391511f61..fa72c02a4f 100644
--- a/usr/src/man/man3curses/form_win.3curses
+++ b/usr/src/man/man3curses/form_win.3curses
@@ -100,7 +100,7 @@ The form is posted.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -116,7 +116,9 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurses\fR(3CURSES), \fBforms\fR(3CURSES), \fBattributes\fR(5)
+.BR curses (3CURSES),
+.BR forms (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/forms.3curses b/usr/src/man/man3curses/forms.3curses
index 7efb6fda0c..076b2f7b7a 100644
--- a/usr/src/man/man3curses/forms.3curses
+++ b/usr/src/man/man3curses/forms.3curses
@@ -808,7 +808,7 @@ An unknown request was passed to the form driver.
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -822,7 +822,8 @@ MT-Level Unsafe
.TE
.SH SEE ALSO
-\fBcurses\fR(3CURSES), \fBattributes\fR(5)
+.BR curses (3CURSES),
+.BR attributes (7)
.SH NOTES
The header \fB<form.h>\fR automatically includes the headers \fB<eti.h>\fR and
\fB<curses.h>\fR\&.
diff --git a/usr/src/man/man3curses/menu_attributes.3curses b/usr/src/man/man3curses/menu_attributes.3curses
index 1103d1e1b4..cfea5a67e4 100644
--- a/usr/src/man/man3curses/menu_attributes.3curses
+++ b/usr/src/man/man3curses/menu_attributes.3curses
@@ -112,7 +112,7 @@ An incorrect argument was passed to the routine.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -128,7 +128,9 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurses\fR(3CURSES), \fBmenus\fR(3CURSES), \fBattributes\fR(5)
+.BR curses (3CURSES),
+.BR menus (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/menu_cursor.3curses b/usr/src/man/man3curses/menu_cursor.3curses
index dfaaa29212..6c2bd42454 100644
--- a/usr/src/man/man3curses/menu_cursor.3curses
+++ b/usr/src/man/man3curses/menu_cursor.3curses
@@ -67,7 +67,7 @@ The menu has not been posted.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -83,8 +83,11 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurses\fR(3CURSES), \fBmenus\fR(3CURSES), \fBpanel_update\fR(3CURSES),
-\fBpanels\fR(3CURSES), \fBattributes\fR(5)
+.BR curses (3CURSES),
+.BR menus (3CURSES),
+.BR panel_update (3CURSES),
+.BR panels (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/menu_driver.3curses b/usr/src/man/man3curses/menu_driver.3curses
index 8e95360ab2..019d95d158 100644
--- a/usr/src/man/man3curses/menu_driver.3curses
+++ b/usr/src/man/man3curses/menu_driver.3curses
@@ -271,7 +271,7 @@ The menu driver could not process the request.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -287,7 +287,9 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurses\fR(3CURSES), \fBmenus\fR(3CURSES), \fBattributes\fR(5)
+.BR curses (3CURSES),
+.BR menus (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/menu_format.3curses b/usr/src/man/man3curses/menu_format.3curses
index fce891cdff..7ba0eb599c 100644
--- a/usr/src/man/man3curses/menu_format.3curses
+++ b/usr/src/man/man3curses/menu_format.3curses
@@ -76,7 +76,7 @@ The menu is already posted.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -92,7 +92,9 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurses\fR(3CURSES), \fBmenus\fR(3CURSES), \fBattributes\fR(5)
+.BR curses (3CURSES),
+.BR menus (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/menu_hook.3curses b/usr/src/man/man3curses/menu_hook.3curses
index 3980aeb846..ccd86ebde7 100644
--- a/usr/src/man/man3curses/menu_hook.3curses
+++ b/usr/src/man/man3curses/menu_hook.3curses
@@ -101,7 +101,7 @@ System error.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -117,7 +117,9 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurses\fR(3CURSES), \fBmenus\fR(3CURSES), \fBattributes\fR(5)
+.BR curses (3CURSES),
+.BR menus (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/menu_item_current.3curses b/usr/src/man/man3curses/menu_item_current.3curses
index 253ef03e31..d1453d0e46 100644
--- a/usr/src/man/man3curses/menu_item_current.3curses
+++ b/usr/src/man/man3curses/menu_item_current.3curses
@@ -109,7 +109,7 @@ No items are connected to the menu.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -124,7 +124,9 @@ MT-Level Unsafe
.SH SEE ALSO
.LP
-\fBcurses\fR(3CURSES), \fBmenus\fR(3CURSES), \fBattributes\fR(5)
+.BR curses (3CURSES),
+.BR menus (3CURSES),
+.BR attributes (7)
.SH NOTES
.LP
The header \fB<menu.h>\fR automatically includes the headers \fB<eti.h>\fR and
diff --git a/usr/src/man/man3curses/menu_item_name.3curses b/usr/src/man/man3curses/menu_item_name.3curses
index cd0d61f47f..3420bd4e89 100644
--- a/usr/src/man/man3curses/menu_item_name.3curses
+++ b/usr/src/man/man3curses/menu_item_name.3curses
@@ -38,7 +38,7 @@ These routines return \fBNULL\fR on error.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -54,8 +54,10 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurses\fR(3CURSES), \fBmenus\fR(3CURSES), \fBmenu_new\fR(3CURSES),
-\fBattributes\fR(5)
+.BR curses (3CURSES),
+.BR menu_new (3CURSES),
+.BR menus (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/menu_item_new.3curses b/usr/src/man/man3curses/menu_item_new.3curses
index 40691d8284..0137d1193b 100644
--- a/usr/src/man/man3curses/menu_item_new.3curses
+++ b/usr/src/man/man3curses/menu_item_new.3curses
@@ -76,7 +76,7 @@ One or more items are already connected to another menu.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -92,7 +92,9 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurses\fR(3CURSES), \fBmenus\fR(3CURSES), \fBattributes\fR(5)
+.BR curses (3CURSES),
+.BR menus (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/menu_item_opts.3curses b/usr/src/man/man3curses/menu_item_opts.3curses
index 1f7b895272..0a7e25bc98 100644
--- a/usr/src/man/man3curses/menu_item_opts.3curses
+++ b/usr/src/man/man3curses/menu_item_opts.3curses
@@ -84,7 +84,7 @@ System error.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -100,7 +100,9 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurses\fR(3CURSES), \fBmenus\fR(3CURSES), \fBattributes\fR(5)
+.BR curses (3CURSES),
+.BR menus (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/menu_item_userptr.3curses b/usr/src/man/man3curses/menu_item_userptr.3curses
index cbb894a9a8..1c005b56ca 100644
--- a/usr/src/man/man3curses/menu_item_userptr.3curses
+++ b/usr/src/man/man3curses/menu_item_userptr.3curses
@@ -54,7 +54,7 @@ System error.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -70,7 +70,9 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurses\fR(3CURSES), \fBmenus\fR(3CURSES), \fBattributes\fR(5)
+.BR curses (3CURSES),
+.BR menus (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/menu_item_value.3curses b/usr/src/man/man3curses/menu_item_value.3curses
index aa2d8259db..7a8064ba29 100644
--- a/usr/src/man/man3curses/menu_item_value.3curses
+++ b/usr/src/man/man3curses/menu_item_value.3curses
@@ -68,7 +68,7 @@ The menu driver could not process the request.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -84,8 +84,10 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurses\fR(3CURSES), \fBmenus\fR(3CURSES), \fBmenu_opts\fR(3CURSES),
-\fBattributes\fR(5)
+.BR curses (3CURSES),
+.BR menu_opts (3CURSES),
+.BR menus (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/menu_item_visible.3curses b/usr/src/man/man3curses/menu_item_visible.3curses
index 3bda03648c..02fadb92e6 100644
--- a/usr/src/man/man3curses/menu_item_visible.3curses
+++ b/usr/src/man/man3curses/menu_item_visible.3curses
@@ -27,7 +27,7 @@ otherwise it returns \fBFALSE\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -43,8 +43,10 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurses\fR(3CURSES), \fBmenus\fR(3CURSES), \fBmenu_new\fR(3CURSES),
-\fBattributes\fR(5)
+.BR curses (3CURSES),
+.BR menu_new (3CURSES),
+.BR menus (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/menu_items.3curses b/usr/src/man/man3curses/menu_items.3curses
index 4bc016d3cf..1bfe02ab5d 100644
--- a/usr/src/man/man3curses/menu_items.3curses
+++ b/usr/src/man/man3curses/menu_items.3curses
@@ -92,7 +92,7 @@ One or more items are already connected to another menu.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -108,7 +108,9 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurses\fR(3CURSES), \fBmenus\fR(3CURSES), \fBattributes\fR(5)
+.BR curses (3CURSES),
+.BR menus (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/menu_mark.3curses b/usr/src/man/man3curses/menu_mark.3curses
index 8301d31f80..45de7288df 100644
--- a/usr/src/man/man3curses/menu_mark.3curses
+++ b/usr/src/man/man3curses/menu_mark.3curses
@@ -63,7 +63,7 @@ An incorrect argument was passed to the routine.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -79,7 +79,9 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurses\fR(3CURSES), \fBmenus\fR(3CURSES), \fBattributes\fR(5)
+.BR curses (3CURSES),
+.BR menus (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/menu_new.3curses b/usr/src/man/man3curses/menu_new.3curses
index 80166647ca..ca44a4321f 100644
--- a/usr/src/man/man3curses/menu_new.3curses
+++ b/usr/src/man/man3curses/menu_new.3curses
@@ -76,7 +76,7 @@ The menu is already posted.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -92,7 +92,9 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurses\fR(3CURSES), \fBmenus\fR(3CURSES), \fBattributes\fR(5)
+.BR curses (3CURSES),
+.BR menus (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/menu_opts.3curses b/usr/src/man/man3curses/menu_opts.3curses
index 3bcee2713f..45b3d68bb4 100644
--- a/usr/src/man/man3curses/menu_opts.3curses
+++ b/usr/src/man/man3curses/menu_opts.3curses
@@ -139,7 +139,7 @@ The menu is already posted.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -155,7 +155,9 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurses\fR(3CURSES), \fBmenus\fR(3CURSES), \fBattributes\fR(5)
+.BR curses (3CURSES),
+.BR menus (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/menu_pattern.3curses b/usr/src/man/man3curses/menu_pattern.3curses
index c5f31d366c..9979b337ae 100644
--- a/usr/src/man/man3curses/menu_pattern.3curses
+++ b/usr/src/man/man3curses/menu_pattern.3curses
@@ -75,7 +75,7 @@ The character failed to match.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -91,7 +91,9 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurses\fR(3CURSES), \fBmenus\fR(3CURSES), \fBattributes\fR(5)
+.BR curses (3CURSES),
+.BR menus (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/menu_post.3curses b/usr/src/man/man3curses/menu_post.3curses
index 1f496a8e99..ecfe33101e 100644
--- a/usr/src/man/man3curses/menu_post.3curses
+++ b/usr/src/man/man3curses/menu_post.3curses
@@ -111,7 +111,7 @@ No items are connected to the menu.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -127,8 +127,10 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurses\fR(3CURSES), \fBmenus\fR(3CURSES), \fBpanels\fR(3CURSES),
-\fBattributes\fR(5)
+.BR curses (3CURSES),
+.BR menus (3CURSES),
+.BR panels (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/menu_userptr.3curses b/usr/src/man/man3curses/menu_userptr.3curses
index 0c65a73485..4d15465353 100644
--- a/usr/src/man/man3curses/menu_userptr.3curses
+++ b/usr/src/man/man3curses/menu_userptr.3curses
@@ -55,7 +55,7 @@ System error.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -71,7 +71,9 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurses\fR(3CURSES), \fBmenus\fR(3CURSES), \fBattributes\fR(5)
+.BR curses (3CURSES),
+.BR menus (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/menu_win.3curses b/usr/src/man/man3curses/menu_win.3curses
index 7d874c380f..70b175e87a 100644
--- a/usr/src/man/man3curses/menu_win.3curses
+++ b/usr/src/man/man3curses/menu_win.3curses
@@ -100,7 +100,7 @@ No items are connected to the menu.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -116,7 +116,9 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurses\fR(3CURSES), \fBmenus\fR(3CURSES), \fBattributes\fR(5)
+.BR curses (3CURSES),
+.BR menus (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/menus.3curses b/usr/src/man/man3curses/menus.3curses
index ee571f1ac0..ddf9381ba8 100644
--- a/usr/src/man/man3curses/menus.3curses
+++ b/usr/src/man/man3curses/menus.3curses
@@ -226,7 +226,7 @@ The menu driver could not process the request.
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -240,7 +240,8 @@ MT-Level Unsafe
.TE
.SH SEE ALSO
-\fBcurses\fR(3CURSES), \fBattributes\fR(5)
+.BR curses (3CURSES),
+.BR attributes (7)
.SH NOTES
The header \fB<menu.h>\fR automatically includes the headers \fB<eti.h>\fR and
\fB<curses.h>\fR\&.
diff --git a/usr/src/man/man3curses/panel_above.3curses b/usr/src/man/man3curses/panel_above.3curses
index 32f26fa516..5dc69b4d67 100644
--- a/usr/src/man/man3curses/panel_above.3curses
+++ b/usr/src/man/man3curses/panel_above.3curses
@@ -42,7 +42,7 @@ the top panel in the deck.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -58,7 +58,9 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurses\fR(3CURSES), \fBpanels\fR(3CURSES), \fBattributes\fR(5)
+.BR curses (3CURSES),
+.BR panels (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/panel_move.3curses b/usr/src/man/man3curses/panel_move.3curses
index 265d598353..64e426f514 100644
--- a/usr/src/man/man3curses/panel_move.3curses
+++ b/usr/src/man/man3curses/panel_move.3curses
@@ -32,7 +32,7 @@ is returned.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -48,8 +48,10 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurses\fR(3CURSES), \fBpanel_update\fR(3CURSES), \fBpanels\fR(3CURSES),
-\fBattributes\fR(5)
+.BR curses (3CURSES),
+.BR panel_update (3CURSES),
+.BR panels (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/panel_new.3curses b/usr/src/man/man3curses/panel_new.3curses
index 6638f5068f..7e3e798ddf 100644
--- a/usr/src/man/man3curses/panel_new.3curses
+++ b/usr/src/man/man3curses/panel_new.3curses
@@ -41,7 +41,7 @@ panel pointer. The new panel is placed on top of the panel deck.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -57,8 +57,10 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurses\fR(3CURSES), \fBpanel_update\fR(3CURSES), \fBpanels\fR(3CURSES),
-\fBattributes\fR(5)
+.BR curses (3CURSES),
+.BR panel_update (3CURSES),
+.BR panels (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/panel_show.3curses b/usr/src/man/man3curses/panel_show.3curses
index 40013cb31d..5222ff3bc9 100644
--- a/usr/src/man/man3curses/panel_show.3curses
+++ b/usr/src/man/man3curses/panel_show.3curses
@@ -50,7 +50,7 @@ successful completion or \fBERR\fR upon error.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -66,8 +66,10 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurses\fR(3CURSES), \fBpanel_update\fR(3CURSES), \fBpanels\fR(3CURSES),
-\fBattributes\fR(5)
+.BR curses (3CURSES),
+.BR panel_update (3CURSES),
+.BR panels (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/panel_top.3curses b/usr/src/man/man3curses/panel_top.3curses
index 1d3822d33b..37c7a463ad 100644
--- a/usr/src/man/man3curses/panel_top.3curses
+++ b/usr/src/man/man3curses/panel_top.3curses
@@ -40,7 +40,7 @@ All of these routines return the integer \fBOK\fR upon successful completion or
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -56,8 +56,10 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurses\fR(3CURSES), \fBpanel_update\fR(3CURSES), \fBpanels\fR(3CURSES),
-\fBattributes\fR(5)
+.BR curses (3CURSES),
+.BR panel_update (3CURSES),
+.BR panels (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/panel_update.3curses b/usr/src/man/man3curses/panel_update.3curses
index 0a0596aa53..1ccdd6ae09 100644
--- a/usr/src/man/man3curses/panel_update.3curses
+++ b/usr/src/man/man3curses/panel_update.3curses
@@ -28,7 +28,7 @@ physical screen.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -44,8 +44,10 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurs_refresh\fR(3CURSES), \fBcurses\fR(3CURSES), \fBpanels\fR(3CURSES),
-\fBattributes\fR(5)
+.BR curs_refresh (3CURSES),
+.BR curses (3CURSES),
+.BR panels (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/panel_userptr.3curses b/usr/src/man/man3curses/panel_userptr.3curses
index 3176143dd3..333cb70509 100644
--- a/usr/src/man/man3curses/panel_userptr.3curses
+++ b/usr/src/man/man3curses/panel_userptr.3curses
@@ -45,7 +45,7 @@ Each panel has a user pointer available for maintaining relevant information.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -61,7 +61,9 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurses\fR(3CURSES), \fBpanels\fR(3CURSES), \fBattributes\fR(5)
+.BR curses (3CURSES),
+.BR panels (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/panel_window.3curses b/usr/src/man/man3curses/panel_window.3curses
index dc5e00e608..62b83fd69e 100644
--- a/usr/src/man/man3curses/panel_window.3curses
+++ b/usr/src/man/man3curses/panel_window.3curses
@@ -42,7 +42,7 @@ otherwise.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -58,7 +58,9 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurses\fR(3CURSES), \fBpanels\fR(3CURSES), \fBattributes\fR(5)
+.BR curses (3CURSES),
+.BR panels (3CURSES),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3curses/panels.3curses b/usr/src/man/man3curses/panels.3curses
index 0f2dbb6362..b53fa4c60e 100644
--- a/usr/src/man/man3curses/panels.3curses
+++ b/usr/src/man/man3curses/panels.3curses
@@ -63,7 +63,7 @@ Each \fBpanels\fR routine that returns a pointer to an object returns
\fBNULL\fR if an error occurs. Each panel routine that returns an integer,
returns \fBOK\fR if it executes successfully and \fBERR\fR if it does not.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -77,7 +77,7 @@ MT-Level Unsafe
.TE
.SH SEE ALSO
-\fBcurses\fR(3CURSES), \fBattributes\fR(5) and 3CURSES pages whose names begin
+\fBcurses\fR(3CURSES), \fBattributes\fR(7) and 3CURSES pages whose names begin
"panel_" for detailed routine descriptions.
.SH NOTES
The header \fB<panel.h>\fR automatically includes the header
diff --git a/usr/src/man/man3dat/dat_cno_create.3dat b/usr/src/man/man3dat/dat_cno_create.3dat
index 2688029423..66867cba68 100644
--- a/usr/src/man/man3dat/dat_cno_create.3dat
+++ b/usr/src/man/man3dat/dat_cno_create.3dat
@@ -106,7 +106,7 @@ was invalid, or the \fIagent\fR parameter is invalid.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -124,4 +124,5 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibdat\fR(3LIB), \fBattributes\fR(5)
+.BR libdat (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dat/dat_cno_free.3dat b/usr/src/man/man3dat/dat_cno_free.3dat
index 369ffcf72c..c017b9d16f 100644
--- a/usr/src/man/man3dat/dat_cno_free.3dat
+++ b/usr/src/man/man3dat/dat_cno_free.3dat
@@ -107,7 +107,7 @@ needed.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -125,4 +125,6 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBdat_cno_wait\fR(3DAT), \fBlibdat\fR(3LIB), \fBattributes\fR(5)
+.BR dat_cno_wait (3DAT),
+.BR libdat (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dat/dat_cno_modify_agent.3dat b/usr/src/man/man3dat/dat_cno_modify_agent.3dat
index eb4c3bee2b..586cb3575f 100644
--- a/usr/src/man/man3dat/dat_cno_modify_agent.3dat
+++ b/usr/src/man/man3dat/dat_cno_modify_agent.3dat
@@ -81,7 +81,7 @@ was invalid, or the \fIagent\fR parameter is invalid.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -99,4 +99,5 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBlibdat\fR(3LIB), \fBattributes\fR(5)
+.BR libdat (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dat/dat_cno_query.3dat b/usr/src/man/man3dat/dat_cno_query.3dat
index 9c5160fb52..eadadf24f6 100644
--- a/usr/src/man/man3dat/dat_cno_query.3dat
+++ b/usr/src/man/man3dat/dat_cno_query.3dat
@@ -96,7 +96,7 @@ The \fIcno_handle\fR parameter is invalid.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -114,4 +114,5 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBlibdat\fR(3LIB), \fBattributes\fR(5)
+.BR libdat (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dat/dat_cno_wait.3dat b/usr/src/man/man3dat/dat_cno_wait.3dat
index 692b9913b9..803b2c5923 100644
--- a/usr/src/man/man3dat/dat_cno_wait.3dat
+++ b/usr/src/man/man3dat/dat_cno_wait.3dat
@@ -130,7 +130,7 @@ The operation was interrupted by a signal.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -148,4 +148,5 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibdat\fR(3LIB), \fBattributes\fR(5)
+.BR libdat (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dat/dat_cr_accept.3dat b/usr/src/man/man3dat/dat_cr_accept.3dat
index 081249feaf..6a4b43b753 100644
--- a/usr/src/man/man3dat/dat_cr_accept.3dat
+++ b/usr/src/man/man3dat/dat_cr_accept.3dat
@@ -162,7 +162,7 @@ can change these default values during connection setup.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -180,4 +180,5 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBlibdat\fR(3LIB), \fBattributes\fR(5)
+.BR libdat (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dat/dat_cr_handoff.3dat b/usr/src/man/man3dat/dat_cr_handoff.3dat
index c4d9628139..bad4d70e55 100644
--- a/usr/src/man/man3dat/dat_cr_handoff.3dat
+++ b/usr/src/man/man3dat/dat_cr_handoff.3dat
@@ -81,7 +81,7 @@ The \fIhandoff\fR parameter is invalid.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -99,4 +99,5 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBlibdat\fR(3LIB), \fBattributes\fR(5)
+.BR libdat (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dat/dat_cr_query.3dat b/usr/src/man/man3dat/dat_cr_query.3dat
index 4a84457833..3f85aa0bff 100644
--- a/usr/src/man/man3dat/dat_cr_query.3dat
+++ b/usr/src/man/man3dat/dat_cr_query.3dat
@@ -102,7 +102,7 @@ its size.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -120,4 +120,5 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibdat\fR(3LIB), \fBattributes\fR(5)
+.BR libdat (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dat/dat_cr_reject.3dat b/usr/src/man/man3dat/dat_cr_reject.3dat
index cdf1b6b327..4373cd4b17 100644
--- a/usr/src/man/man3dat/dat_cr_reject.3dat
+++ b/usr/src/man/man3dat/dat_cr_reject.3dat
@@ -67,7 +67,7 @@ The \fIcr_handle\fR parameter is invalid.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -85,4 +85,5 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBlibdat\fR(3LIB), \fBattributes\fR(5)
+.BR libdat (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dat/dat_ep_connect.3dat b/usr/src/man/man3dat/dat_ep_connect.3dat
index 561a632787..9e531012b2 100644
--- a/usr/src/man/man3dat/dat_ep_connect.3dat
+++ b/usr/src/man/man3dat/dat_ep_connect.3dat
@@ -284,7 +284,7 @@ is allowed to change these default values during connection setup.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -302,4 +302,5 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBlibdat\fR(3LIB), \fBattributes\fR(5)
+.BR libdat (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dat/dat_ep_create.3dat b/usr/src/man/man3dat/dat_ep_create.3dat
index df922a7871..eb5fcf8fac 100644
--- a/usr/src/man/man3dat/dat_ep_create.3dat
+++ b/usr/src/man/man3dat/dat_ep_create.3dat
@@ -269,7 +269,7 @@ RDMA sizes.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -287,7 +287,11 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBdat_ep_connect\fR(3DAT), \fBdat_ep_dup_connect\fR(3DAT),
-\fBdat_ep_free\fR(3DAT), \fBdat_ep_get_status\fR(3DAT),
-\fBdat_ep_modify\fR(3DAT), \fBdat_ep_query\fR(3DAT), \fBlibdat\fR(3LIB),
-\fBattributes\fR(5)
+.BR dat_ep_connect (3DAT),
+.BR dat_ep_dup_connect (3DAT),
+.BR dat_ep_free (3DAT),
+.BR dat_ep_get_status (3DAT),
+.BR dat_ep_modify (3DAT),
+.BR dat_ep_query (3DAT),
+.BR libdat (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dat/dat_ep_create_with_srq.3dat b/usr/src/man/man3dat/dat_ep_create_with_srq.3dat
index 3a72d2e0c5..76fd15dd42 100644
--- a/usr/src/man/man3dat/dat_ep_create_with_srq.3dat
+++ b/usr/src/man/man3dat/dat_ep_create_with_srq.3dat
@@ -363,7 +363,7 @@ the latter case it is allowed to return \fBDAT_INVALID_PARAMETER\fR when a
mismatch is detected. Provider must allocate resources to satisfy the
combination of these two EP attributes for local RDMA Read DTOs.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -379,6 +379,9 @@ MT-Level Safe
.TE
.SH SEE ALSO
-\fBdat_ep_create\fR(3DAT), \fBdat_srq_create\fR(3DAT),
-\fBdat_srq_free\fR(3DAT), \fBdat_srq_query\fR(3DAT), \fBlibdat\fR(3LIB),
-\fBattributes\fR(5)
+.BR dat_ep_create (3DAT),
+.BR dat_srq_create (3DAT),
+.BR dat_srq_free (3DAT),
+.BR dat_srq_query (3DAT),
+.BR libdat (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dat/dat_ep_disconnect.3dat b/usr/src/man/man3dat/dat_ep_disconnect.3dat
index 13e51e1281..9597784a1d 100644
--- a/usr/src/man/man3dat/dat_ep_disconnect.3dat
+++ b/usr/src/man/man3dat/dat_ep_disconnect.3dat
@@ -168,7 +168,7 @@ disconnect.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -185,4 +185,5 @@ MT-Level Unsafe
.SH SEE ALSO
.LP
-\fBlibdat\fR(3LIB), \fBattributes\fR(5)
+.BR libdat (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dat/dat_ep_dup_connect.3dat b/usr/src/man/man3dat/dat_ep_dup_connect.3dat
index 9e7625d066..1c47d9d372 100644
--- a/usr/src/man/man3dat/dat_ep_dup_connect.3dat
+++ b/usr/src/man/man3dat/dat_ep_dup_connect.3dat
@@ -248,7 +248,7 @@ is allowed to change these default values during connection setup.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -266,4 +266,5 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBlibdat\fR(3LIB), \fBattributes\fR(5)
+.BR libdat (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dat/dat_ep_free.3dat b/usr/src/man/man3dat/dat_ep_free.3dat
index 313cbc62e0..ddd11291ee 100644
--- a/usr/src/man/man3dat/dat_ep_free.3dat
+++ b/usr/src/man/man3dat/dat_ep_free.3dat
@@ -98,7 +98,7 @@ Parameter in an invalid state. The Endpoint is in \fBDAT_EP_STATE_RESERVED\fR,
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -116,4 +116,5 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBlibdat\fR(3LIB), \fBattributes\fR(5)
+.BR libdat (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dat/dat_ep_get_status.3dat b/usr/src/man/man3dat/dat_ep_get_status.3dat
index c354324688..ce75b821f4 100644
--- a/usr/src/man/man3dat/dat_ep_get_status.3dat
+++ b/usr/src/man/man3dat/dat_ep_get_status.3dat
@@ -112,7 +112,7 @@ The \fIep_handle\fR parameter is invalid.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -130,4 +130,5 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibdat\fR(3LIB), \fBattributes\fR(5)
+.BR libdat (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dat/dat_ep_modify.3dat b/usr/src/man/man3dat/dat_ep_modify.3dat
index 61ad9ee915..8f5bb875a9 100644
--- a/usr/src/man/man3dat/dat_ep_modify.3dat
+++ b/usr/src/man/man3dat/dat_ep_modify.3dat
@@ -488,7 +488,7 @@ one of the parameters or attributes to be modified.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -506,4 +506,5 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBlibdat\fR(3LIB), \fBattributes\fR(5)
+.BR libdat (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dat/dat_ep_post_rdma_read.3dat b/usr/src/man/man3dat/dat_ep_post_rdma_read.3dat
index 61892c516c..0aeeae6a08 100644
--- a/usr/src/man/man3dat/dat_ep_post_rdma_read.3dat
+++ b/usr/src/man/man3dat/dat_ep_post_rdma_read.3dat
@@ -291,7 +291,7 @@ Transport enforcing it.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -309,4 +309,5 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBlibdat\fR(3LIB), \fBattributes\fR(5)
+.BR libdat (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dat/dat_ep_post_rdma_write.3dat b/usr/src/man/man3dat/dat_ep_post_rdma_write.3dat
index 2b059ba6e3..a088bb789f 100644
--- a/usr/src/man/man3dat/dat_ep_post_rdma_write.3dat
+++ b/usr/src/man/man3dat/dat_ep_post_rdma_write.3dat
@@ -278,7 +278,7 @@ segment of \fIlocal_iov\fR to the \fBDAT_OPTIMAL_ALIGNMENT\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -296,4 +296,5 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBlibdat\fR(3LIB), \fBattributes\fR(5)
+.BR libdat (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dat/dat_ep_post_recv.3dat b/usr/src/man/man3dat/dat_ep_post_recv.3dat
index 66671519c9..1a38e70e1c 100644
--- a/usr/src/man/man3dat/dat_ep_post_recv.3dat
+++ b/usr/src/man/man3dat/dat_ep_post_recv.3dat
@@ -218,7 +218,7 @@ Provider. For portable applications, the Consumer should align each buffer
segment of \fIlocal_iov\fR to the \fBDAT_OPTIMAL_ALIGNMENT\fR.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -235,4 +235,5 @@ MT-Level Unsafe
.SH SEE ALSO
.LP
-\fBlibdat\fR(3LIB), \fBattributes\fR(5)
+.BR libdat (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dat/dat_ep_post_send.3dat b/usr/src/man/man3dat/dat_ep_post_send.3dat
index d954044fe1..6d59316dbf 100644
--- a/usr/src/man/man3dat/dat_ep_post_send.3dat
+++ b/usr/src/man/man3dat/dat_ep_post_send.3dat
@@ -274,7 +274,7 @@ segment of \fIlocal_iov\fR to the \fBDAT_OPTIMAL_ALIGNMENT\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -292,4 +292,5 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBlibdat\fR(3LIB), \fBattributes\fR(5)
+.BR libdat (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dat/dat_ep_query.3dat b/usr/src/man/man3dat/dat_ep_query.3dat
index 632058d82a..f8b83d03c2 100644
--- a/usr/src/man/man3dat/dat_ep_query.3dat
+++ b/usr/src/man/man3dat/dat_ep_query.3dat
@@ -110,7 +110,7 @@ The \fIep_param_mask\fR parameter is invalid.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -128,4 +128,5 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBlibdat\fR(3LIB), \fBattributes\fR(5)
+.BR libdat (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dat/dat_ep_recv_query.3dat b/usr/src/man/man3dat/dat_ep_recv_query.3dat
index f8f4ff5ac4..5355b28030 100644
--- a/usr/src/man/man3dat/dat_ep_recv_query.3dat
+++ b/usr/src/man/man3dat/dat_ep_recv_query.3dat
@@ -193,7 +193,7 @@ than \fIn\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -211,6 +211,10 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBdat_ep_create\fR(3DAT), \fBdat_srq_create\fR(3DAT),
-\fBdat_srq_free\fR(3DAT), \fBdat_srq_query\fR(3DAT),
-\fBdat_ep_set_watermark\fR(3DAT), \fBlibdat\fR(3LIB), \fBattributes\fR(5)
+.BR dat_ep_create (3DAT),
+.BR dat_ep_set_watermark (3DAT),
+.BR dat_srq_create (3DAT),
+.BR dat_srq_free (3DAT),
+.BR dat_srq_query (3DAT),
+.BR libdat (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dat/dat_ep_reset.3dat b/usr/src/man/man3dat/dat_ep_reset.3dat
index 542a7fe4f9..bd7c589038 100644
--- a/usr/src/man/man3dat/dat_ep_reset.3dat
+++ b/usr/src/man/man3dat/dat_ep_reset.3dat
@@ -86,7 +86,7 @@ completions.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -104,4 +104,5 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBlibdat\fR(3LIB), \fBattributes\fR(5)
+.BR libdat (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dat/dat_ep_set_watermark.3dat b/usr/src/man/man3dat/dat_ep_set_watermark.3dat
index 6348559686..be9729ee05 100644
--- a/usr/src/man/man3dat/dat_ep_set_watermark.3dat
+++ b/usr/src/man/man3dat/dat_ep_set_watermark.3dat
@@ -140,7 +140,7 @@ hard (or both) high watermark values are simply replaced with the new ones.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -158,8 +158,13 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBdat_ep_create\fR(3DAT), \fBdat_ep_recv_query\fR(3DAT),
-\fBdat_srq_create\fR(3DAT), \fBdat_srq_free\fR(3DAT),
-\fBdat_srq_post_recv\fR(3DAT), \fBdat_srq_query\fR(3DAT),
-\fBdat_srq_resize\fR(3DAT), \fBdat_srq_set_lw\fR(3DAT), \fBlibdat\fR(3LIB),
-\fBattributes\fR(5)
+.BR dat_ep_create (3DAT),
+.BR dat_ep_recv_query (3DAT),
+.BR dat_srq_create (3DAT),
+.BR dat_srq_free (3DAT),
+.BR dat_srq_post_recv (3DAT),
+.BR dat_srq_query (3DAT),
+.BR dat_srq_resize (3DAT),
+.BR dat_srq_set_lw (3DAT),
+.BR libdat (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dat/dat_evd_clear_unwaitable.3dat b/usr/src/man/man3dat/dat_evd_clear_unwaitable.3dat
index 626682bd72..d3a648b9d7 100644
--- a/usr/src/man/man3dat/dat_evd_clear_unwaitable.3dat
+++ b/usr/src/man/man3dat/dat_evd_clear_unwaitable.3dat
@@ -65,7 +65,7 @@ The \fIevd_handle\fR parameter is invalid.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -83,6 +83,9 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBdat_evd_dequeue\fR(3DAT), \fBdat_evd_query\fR(3DAT),
-\fBdat_evd_set_unwaitable\fR(3DAT), \fBdat_evd_wait\fR(3DAT),
-\fBlibdat\fR(3LIB), \fBattributes\fR(5)
+.BR dat_evd_dequeue (3DAT),
+.BR dat_evd_query (3DAT),
+.BR dat_evd_set_unwaitable (3DAT),
+.BR dat_evd_wait (3DAT),
+.BR libdat (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dat/dat_evd_dequeue.3dat b/usr/src/man/man3dat/dat_evd_dequeue.3dat
index 339ea1bdec..995b02feea 100644
--- a/usr/src/man/man3dat/dat_evd_dequeue.3dat
+++ b/usr/src/man/man3dat/dat_evd_dequeue.3dat
@@ -162,7 +162,7 @@ semaphore.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -180,7 +180,12 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBdat_cr_accept\fR(3DAT), \fBdat_cr_handoff\fR(3DAT),
-\fBdat_cr_reject\fR(3DAT), \fBdat_ep_connect\fR(3DAT),
-\fBdat_ep_dup_connect\fR(3DAT), \fBdat_ep_free\fR(3DAT),
-\fBdat_evd_wait\fR(3DAT), \fBlibdat\fR(3LIB), \fBattributes\fR(5)
+.BR dat_cr_accept (3DAT),
+.BR dat_cr_handoff (3DAT),
+.BR dat_cr_reject (3DAT),
+.BR dat_ep_connect (3DAT),
+.BR dat_ep_dup_connect (3DAT),
+.BR dat_ep_free (3DAT),
+.BR dat_evd_wait (3DAT),
+.BR libdat (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dat/dat_evd_disable.3dat b/usr/src/man/man3dat/dat_evd_disable.3dat
index 3ebab0b935..f104fc192a 100644
--- a/usr/src/man/man3dat/dat_evd_disable.3dat
+++ b/usr/src/man/man3dat/dat_evd_disable.3dat
@@ -64,7 +64,7 @@ The \fIevd_handle\fR parameter is invalid.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -82,4 +82,6 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBdat_evd_enable\fR(3DAT), \fBlibdat\fR(3LIB), \fBattributes\fR(5)
+.BR dat_evd_enable (3DAT),
+.BR libdat (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dat/dat_evd_enable.3dat b/usr/src/man/man3dat/dat_evd_enable.3dat
index 4beab93026..c894ff7e2d 100644
--- a/usr/src/man/man3dat/dat_evd_enable.3dat
+++ b/usr/src/man/man3dat/dat_evd_enable.3dat
@@ -62,7 +62,7 @@ The \fIevd_handle\fR parameter is invalid.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -80,4 +80,6 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBdat_evd_disable\fR(3DAT), \fBlibdat\fR(3LIB), \fBattributes\fR(5)
+.BR dat_evd_disable (3DAT),
+.BR libdat (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dat/dat_evd_free.3dat b/usr/src/man/man3dat/dat_evd_free.3dat
index 9869e0cc60..50a5737805 100644
--- a/usr/src/man/man3dat/dat_evd_free.3dat
+++ b/usr/src/man/man3dat/dat_evd_free.3dat
@@ -88,7 +88,7 @@ and indirectly, including Event Dispatchers.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -106,4 +106,5 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBlibdat\fR(3LIB), \fBattributes\fR(5)
+.BR libdat (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dat/dat_evd_modify_cno.3dat b/usr/src/man/man3dat/dat_evd_modify_cno.3dat
index b6bc1ad919..3d5e9e3d93 100644
--- a/usr/src/man/man3dat/dat_evd_modify_cno.3dat
+++ b/usr/src/man/man3dat/dat_evd_modify_cno.3dat
@@ -98,7 +98,7 @@ Invalid DAT handle.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -116,4 +116,5 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBlibdat\fR(3LIB), \fBattributes\fR(5)
+.BR libdat (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dat/dat_evd_post_se.3dat b/usr/src/man/man3dat/dat_evd_post_se.3dat
index aa554bf325..9b5be64e02 100644
--- a/usr/src/man/man3dat/dat_evd_post_se.3dat
+++ b/usr/src/man/man3dat/dat_evd_post_se.3dat
@@ -101,7 +101,7 @@ The Event Dispatcher queue is full.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -119,4 +119,5 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBlibdat\fR(3LIB), \fBattributes\fR(5)
+.BR libdat (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dat/dat_evd_query.3dat b/usr/src/man/man3dat/dat_evd_query.3dat
index e5fb0c955f..7e4a355f37 100644
--- a/usr/src/man/man3dat/dat_evd_query.3dat
+++ b/usr/src/man/man3dat/dat_evd_query.3dat
@@ -93,7 +93,7 @@ The \fIevd_param_mask\fR parameter is invalid.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -111,4 +111,5 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBlibdat\fR(3LIB), \fBattributes\fR(5)
+.BR libdat (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dat/dat_evd_resize.3dat b/usr/src/man/man3dat/dat_evd_resize.3dat
index a0b79e387b..b902c0e397 100644
--- a/usr/src/man/man3dat/dat_evd_resize.3dat
+++ b/usr/src/man/man3dat/dat_evd_resize.3dat
@@ -105,7 +105,7 @@ placed on the event queue changes dynamically.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -123,4 +123,5 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBlibdat\fR(3LIB), \fBattributes\fR(5)
+.BR libdat (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dat/dat_evd_set_unwaitable.3dat b/usr/src/man/man3dat/dat_evd_set_unwaitable.3dat
index 3aa88aa130..0d398527ad 100644
--- a/usr/src/man/man3dat/dat_evd_set_unwaitable.3dat
+++ b/usr/src/man/man3dat/dat_evd_set_unwaitable.3dat
@@ -69,7 +69,7 @@ The \fIevd_handle\fR parameter is invalid.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -87,6 +87,9 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBdat_evd_clear_unwaitable\fR(3DAT), \fBdat_evd_dequeue\fR(3DAT),
-\fBdat_evd_query\fR(3DAT), \fBdat_evd_wait\fR(3DAT), \fBlibdat\fR(3LIB),
-\fBattributes\fR(5)
+.BR dat_evd_clear_unwaitable (3DAT),
+.BR dat_evd_dequeue (3DAT),
+.BR dat_evd_query (3DAT),
+.BR dat_evd_wait (3DAT),
+.BR libdat (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dat/dat_evd_wait.3dat b/usr/src/man/man3dat/dat_evd_wait.3dat
index 4e152737bd..3c25a71890 100644
--- a/usr/src/man/man3dat/dat_evd_wait.3dat
+++ b/usr/src/man/man3dat/dat_evd_wait.3dat
@@ -275,7 +275,7 @@ completions are Notification events.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -293,8 +293,13 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBdat_cr_accept\fR(3DAT), \fBdat_cr_handoff\fR(3DAT),
-\fBdat_cr_reject\fR(3DAT), \fBdat_ep_connect\fR(3DAT),
-\fBdat_ep_dup_connect\fR(3DAT), \fBdat_ep_free\fR(3DAT),
-\fBdat_evd_dequeue\fR(3DAT), \fBdat_evd_set_unwaitable\fR(3DAT),
-\fBlibdat\fR(3LIB), \fBattributes\fR(5)
+.BR dat_cr_accept (3DAT),
+.BR dat_cr_handoff (3DAT),
+.BR dat_cr_reject (3DAT),
+.BR dat_ep_connect (3DAT),
+.BR dat_ep_dup_connect (3DAT),
+.BR dat_ep_free (3DAT),
+.BR dat_evd_dequeue (3DAT),
+.BR dat_evd_set_unwaitable (3DAT),
+.BR libdat (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dat/dat_get_consumer_context.3dat b/usr/src/man/man3dat/dat_get_consumer_context.3dat
index 6f424ef888..88d74c7b62 100644
--- a/usr/src/man/man3dat/dat_get_consumer_context.3dat
+++ b/usr/src/man/man3dat/dat_get_consumer_context.3dat
@@ -72,7 +72,7 @@ The \fIdat_handle\fR parameter is invalid.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -90,4 +90,6 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBdat_set_consumer_context\fR(3DAT), \fBlibdat\fR(3LIB), \fBattributes\fR(5)
+.BR dat_set_consumer_context (3DAT),
+.BR libdat (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dat/dat_get_handle_type.3dat b/usr/src/man/man3dat/dat_get_handle_type.3dat
index 053d27cf70..38bc98f56a 100644
--- a/usr/src/man/man3dat/dat_get_handle_type.3dat
+++ b/usr/src/man/man3dat/dat_get_handle_type.3dat
@@ -85,7 +85,7 @@ operation on the Object handle.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -103,4 +103,5 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBlibdat\fR(3LIB), \fBattributes\fR(5)
+.BR libdat (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dat/dat_ia_close.3dat b/usr/src/man/man3dat/dat_ia_close.3dat
index b98362ab96..3da946d946 100644
--- a/usr/src/man/man3dat/dat_ia_close.3dat
+++ b/usr/src/man/man3dat/dat_ia_close.3dat
@@ -192,7 +192,7 @@ Provider Library cannot be removed when it is in use by a DAT Consumer.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -210,5 +210,8 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBdat_cno_free\fR(3DAT), \fBdat_evd_free\fR(3DAT), \fBdat_ia_open\fR(3DAT),
-\fBlibdat\fR(3LIB), \fBattributes\fR(5)
+.BR dat_cno_free (3DAT),
+.BR dat_evd_free (3DAT),
+.BR dat_ia_open (3DAT),
+.BR libdat (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dat/dat_ia_open.3dat b/usr/src/man/man3dat/dat_ia_open.3dat
index 7ef81ab999..bcbffdfdfb 100644
--- a/usr/src/man/man3dat/dat_ia_open.3dat
+++ b/usr/src/man/man3dat/dat_ia_open.3dat
@@ -211,7 +211,7 @@ by a DAT Consumer.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -231,6 +231,9 @@ Standard uDAPL, 1.1, 1.2 (except \fBRO_AWARE_\fR)
.SH SEE ALSO
.sp
.LP
-\fBdat_evd_modify_cno\fR(3DAT), \fBdat_evd_resize\fR(3DAT),
-\fBdat_ia_close\fR(3DAT), \fBdat_registry_list_providers\fR(3DAT),
-\fBlibdat\fR(3LIB), \fBattributes\fR(5)
+.BR dat_evd_modify_cno (3DAT),
+.BR dat_evd_resize (3DAT),
+.BR dat_ia_close (3DAT),
+.BR dat_registry_list_providers (3DAT),
+.BR libdat (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dat/dat_ia_query.3dat b/usr/src/man/man3dat/dat_ia_query.3dat
index 37013dc927..97996a345d 100644
--- a/usr/src/man/man3dat/dat_ia_query.3dat
+++ b/usr/src/man/man3dat/dat_ia_query.3dat
@@ -660,7 +660,7 @@ Invalid DAT handle; ia_handle is invalid.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -677,4 +677,5 @@ MT-Level Safe
.SH SEE ALSO
.LP
-\fBlibdat\fR(3LIB), \fBattributes\fR(5)
+.BR libdat (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dat/dat_lmr_create.3dat b/usr/src/man/man3dat/dat_lmr_create.3dat
index 18b072de31..b088b81868 100644
--- a/usr/src/man/man3dat/dat_lmr_create.3dat
+++ b/usr/src/man/man3dat/dat_lmr_create.3dat
@@ -387,7 +387,7 @@ way to invalidate it is to destroy the LMR with \fBdat_lmr_free\fR(3DAT).
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -409,4 +409,6 @@ T}
.SH SEE ALSO
.sp
.LP
-\fBdat_lmr_free\fR(3DAT), \fBlibdat\fR(3LIB), \fBattributes\fR(5)
+.BR dat_lmr_free (3DAT),
+.BR libdat (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dat/dat_lmr_free.3dat b/usr/src/man/man3dat/dat_lmr_free.3dat
index 8935a15be4..30ff34ec51 100644
--- a/usr/src/man/man3dat/dat_lmr_free.3dat
+++ b/usr/src/man/man3dat/dat_lmr_free.3dat
@@ -82,7 +82,7 @@ Parameter in an invalid state; LMR is in use by an RMR instance.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -100,4 +100,5 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBlibdat\fR(3LIB), \fBattributes\fR(5)
+.BR libdat (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dat/dat_lmr_query.3dat b/usr/src/man/man3dat/dat_lmr_query.3dat
index 54c84a1b3f..5521436612 100644
--- a/usr/src/man/man3dat/dat_lmr_query.3dat
+++ b/usr/src/man/man3dat/dat_lmr_query.3dat
@@ -92,7 +92,7 @@ The \fIlmr_handle\fR function is invalid.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -110,4 +110,5 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBlibdat\fR(3LIB), \fBattributes\fR(5)
+.BR libdat (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dat/dat_lmr_sync_rdma_read.3dat b/usr/src/man/man3dat/dat_lmr_sync_rdma_read.3dat
index 073aaf74d2..0d7f1d94c2 100644
--- a/usr/src/man/man3dat/dat_lmr_sync_rdma_read.3dat
+++ b/usr/src/man/man3dat/dat_lmr_sync_rdma_read.3dat
@@ -144,7 +144,7 @@ CPU noncoherent cache will be flushed.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -162,4 +162,6 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBdat_lmr_sync_rdma_write\fR(3DAT), \fBlibdat\fR(3LIB), \fBattributes\fR(5)
+.BR dat_lmr_sync_rdma_write (3DAT),
+.BR libdat (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dat/dat_lmr_sync_rdma_write.3dat b/usr/src/man/man3dat/dat_lmr_sync_rdma_write.3dat
index 0045f31cb9..4e12c409aa 100644
--- a/usr/src/man/man3dat/dat_lmr_sync_rdma_write.3dat
+++ b/usr/src/man/man3dat/dat_lmr_sync_rdma_write.3dat
@@ -145,7 +145,7 @@ I/O noncoherent cache will be flushed.
CPU noncoherent cache will be invalidated.
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -161,4 +161,6 @@ MT-Level Unsafe
.TE
.SH SEE ALSO
-\fBdat_lmr_sync_rdma_read\fR(3DAT), \fBlibdat\fR(3LIB), \fBattributes\fR(5)
+.BR dat_lmr_sync_rdma_read (3DAT),
+.BR libdat (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dat/dat_provider_fini.3dat b/usr/src/man/man3dat/dat_provider_fini.3dat
index 6f6338a217..9c72c91520 100644
--- a/usr/src/man/man3dat/dat_provider_fini.3dat
+++ b/usr/src/man/man3dat/dat_provider_fini.3dat
@@ -54,7 +54,7 @@ No values are returned.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -72,5 +72,7 @@ MT-Level
.SH SEE ALSO
.sp
.LP
-\fBdat_provider_init\fR(3DAT), \fBdat_registry_remove_provider\fR(3DAT),
-\fBlibdat\fR(3LIB), \fBattributes\fR(5)
+.BR dat_provider_init (3DAT),
+.BR dat_registry_remove_provider (3DAT),
+.BR libdat (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dat/dat_provider_init.3dat b/usr/src/man/man3dat/dat_provider_init.3dat
index dc4b184212..1955f3d655 100644
--- a/usr/src/man/man3dat/dat_provider_init.3dat
+++ b/usr/src/man/man3dat/dat_provider_init.3dat
@@ -91,7 +91,7 @@ No values are returned.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -109,7 +109,9 @@ MT-Level
.SH SEE ALSO
.sp
.LP
-\fBdat_ia_open\fR(3DAT), \fBdat_provider_fini\fR(3DAT),
-\fBdat_registry_add_provider\fR(3DAT),
-\fBdat_registry_remove_provider\fR(3DAT), \fBlibdat\fR(3LIB),
-\fBattributes\fR(5)
+.BR dat_ia_open (3DAT),
+.BR dat_provider_fini (3DAT),
+.BR dat_registry_add_provider (3DAT),
+.BR dat_registry_remove_provider (3DAT),
+.BR libdat (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dat/dat_psp_create.3dat b/usr/src/man/man3dat/dat_psp_create.3dat
index 0243297d9e..484c087ba9 100644
--- a/usr/src/man/man3dat/dat_psp_create.3dat
+++ b/usr/src/man/man3dat/dat_psp_create.3dat
@@ -338,7 +338,7 @@ If rejected, the Consumer does not have to provide any Endpoint for
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -356,4 +356,6 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBdat_cr_reject\fR(3DAT), \fBlibdat\fR(3LIB), \fBattributes\fR(5)
+.BR dat_cr_reject (3DAT),
+.BR libdat (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dat/dat_psp_create_any.3dat b/usr/src/man/man3dat/dat_psp_create_any.3dat
index 8e6259507d..289bf77df4 100644
--- a/usr/src/man/man3dat/dat_psp_create_any.3dat
+++ b/usr/src/man/man3dat/dat_psp_create_any.3dat
@@ -179,7 +179,7 @@ The requested Model was not supported by the Provider.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -197,4 +197,5 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibdat\fR(3LIB), \fBattributes\fR(5)
+.BR libdat (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dat/dat_psp_free.3dat b/usr/src/man/man3dat/dat_psp_free.3dat
index 3e4c9eb8c1..d9a2c975db 100644
--- a/usr/src/man/man3dat/dat_psp_free.3dat
+++ b/usr/src/man/man3dat/dat_psp_free.3dat
@@ -83,7 +83,7 @@ The \fIpsp_handle\fR parameter is invalid.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -101,4 +101,5 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBlibdat\fR(3LIB), \fBattributes\fR(5)
+.BR libdat (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dat/dat_psp_query.3dat b/usr/src/man/man3dat/dat_psp_query.3dat
index 8ac2dbd2ea..0b641d55c4 100644
--- a/usr/src/man/man3dat/dat_psp_query.3dat
+++ b/usr/src/man/man3dat/dat_psp_query.3dat
@@ -93,7 +93,7 @@ The \fIpsp_param_mask\fR parameter is invalid.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -111,4 +111,5 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibdat\fR(3LIB), \fBattributes\fR(5)
+.BR libdat (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dat/dat_pz_create.3dat b/usr/src/man/man3dat/dat_pz_create.3dat
index 427d74928e..2e7ce47e0d 100644
--- a/usr/src/man/man3dat/dat_pz_create.3dat
+++ b/usr/src/man/man3dat/dat_pz_create.3dat
@@ -86,7 +86,7 @@ The \fIia_handle\fR parameter is invalid.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -104,4 +104,5 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibdat\fR(3LIB), \fBattributes\fR(5)
+.BR libdat (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dat/dat_pz_free.3dat b/usr/src/man/man3dat/dat_pz_free.3dat
index da8d2ca61e..224b992f8d 100644
--- a/usr/src/man/man3dat/dat_pz_free.3dat
+++ b/usr/src/man/man3dat/dat_pz_free.3dat
@@ -71,7 +71,7 @@ The \fIpz_handle\fR parameter is invalid.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -89,4 +89,5 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBlibdat\fR(3LIB), \fBattributes\fR(5)
+.BR libdat (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dat/dat_pz_query.3dat b/usr/src/man/man3dat/dat_pz_query.3dat
index f70c33a4e4..662ad551a7 100644
--- a/usr/src/man/man3dat/dat_pz_query.3dat
+++ b/usr/src/man/man3dat/dat_pz_query.3dat
@@ -92,7 +92,7 @@ The \fIpz_handle\fR parameter is invalid.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -110,4 +110,5 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibdat\fR(3LIB), \fBattributes\fR(5)
+.BR libdat (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dat/dat_registry_add_provider.3dat b/usr/src/man/man3dat/dat_registry_add_provider.3dat
index 2cbee200f5..c300d3dab8 100644
--- a/usr/src/man/man3dat/dat_registry_add_provider.3dat
+++ b/usr/src/man/man3dat/dat_registry_add_provider.3dat
@@ -100,7 +100,7 @@ Invalid or nonunique name.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -118,4 +118,6 @@ MT-Level
.SH SEE ALSO
.sp
.LP
-\fBdat_ia_open\fR(3DAT), \fBlibdat\fR(3LIB), \fBattributes\fR(5)
+.BR dat_ia_open (3DAT),
+.BR libdat (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dat/dat_registry_list_providers.3dat b/usr/src/man/man3dat/dat_registry_list_providers.3dat
index c0820c9ce4..0ee74e2da7 100644
--- a/usr/src/man/man3dat/dat_registry_list_providers.3dat
+++ b/usr/src/man/man3dat/dat_registry_list_providers.3dat
@@ -134,7 +134,7 @@ Internal error. The DAT static registry is missing.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -152,4 +152,5 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibdat\fR(3LIB), \fBattributes\fR(5)
+.BR libdat (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dat/dat_registry_remove_provider.3dat b/usr/src/man/man3dat/dat_registry_remove_provider.3dat
index da8ec6a862..6df7eed984 100644
--- a/usr/src/man/man3dat/dat_registry_remove_provider.3dat
+++ b/usr/src/man/man3dat/dat_registry_remove_provider.3dat
@@ -82,7 +82,7 @@ The Provider was in use.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -100,4 +100,5 @@ MT-Level
.SH SEE ALSO
.sp
.LP
-\fBlibdat\fR(3LIB), \fBattributes\fR(5)
+.BR libdat (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dat/dat_rmr_bind.3dat b/usr/src/man/man3dat/dat_rmr_bind.3dat
index 175188ff88..90f5934b48 100644
--- a/usr/src/man/man3dat/dat_rmr_bind.3dat
+++ b/usr/src/man/man3dat/dat_rmr_bind.3dat
@@ -363,7 +363,7 @@ Protection violation for local or remote memory access.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -381,4 +381,5 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBlibdat\fR(3LIB), \fBattributes\fR(5)
+.BR libdat (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dat/dat_rmr_create.3dat b/usr/src/man/man3dat/dat_rmr_create.3dat
index 441c972b29..b86332020b 100644
--- a/usr/src/man/man3dat/dat_rmr_create.3dat
+++ b/usr/src/man/man3dat/dat_rmr_create.3dat
@@ -85,7 +85,7 @@ The \fIpz_handle\fR parameter is invalid.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -103,4 +103,5 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBdat_rmr_bind\fR(3DAT) , \fBlibdat\fR(3LIB), \fBattributes\fR(5)
+\fBdat_rmr_bind\fR(3DAT) , \fBlibdat\fR(3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dat/dat_rmr_free.3dat b/usr/src/man/man3dat/dat_rmr_free.3dat
index e6423812e6..4acd88c282 100644
--- a/usr/src/man/man3dat/dat_rmr_free.3dat
+++ b/usr/src/man/man3dat/dat_rmr_free.3dat
@@ -72,7 +72,7 @@ The \fIrmr_handle\fR handle is invalid.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -90,4 +90,5 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBlibdat\fR(3LIB), \fBattributes\fR(5)
+.BR libdat (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dat/dat_rmr_query.3dat b/usr/src/man/man3dat/dat_rmr_query.3dat
index 2c8384d554..a5f804d684 100644
--- a/usr/src/man/man3dat/dat_rmr_query.3dat
+++ b/usr/src/man/man3dat/dat_rmr_query.3dat
@@ -97,7 +97,7 @@ The \fImr_handle\fR parameter is invalid.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -115,4 +115,5 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBlibdat\fR(3LIB), \fBattributes\fR(5)
+.BR libdat (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dat/dat_rsp_create.3dat b/usr/src/man/man3dat/dat_rsp_create.3dat
index 963282ea3b..677970e5b7 100644
--- a/usr/src/man/man3dat/dat_rsp_create.3dat
+++ b/usr/src/man/man3dat/dat_rsp_create.3dat
@@ -216,7 +216,7 @@ The DAT Consumer can elect to destroy it or reuse it for other purposes.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -234,4 +234,5 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibdat\fR(3LIB), \fBattributes\fR(5)
+.BR libdat (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dat/dat_rsp_free.3dat b/usr/src/man/man3dat/dat_rsp_free.3dat
index 02df005067..f62b0f1e38 100644
--- a/usr/src/man/man3dat/dat_rsp_free.3dat
+++ b/usr/src/man/man3dat/dat_rsp_free.3dat
@@ -88,7 +88,7 @@ The \fIrsp_handle\fR parameter is invalid.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -106,4 +106,5 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBlibdat\fR(3LIB), \fBattributes\fR(5)
+.BR libdat (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dat/dat_rsp_query.3dat b/usr/src/man/man3dat/dat_rsp_query.3dat
index 5a732719f2..31ed65498f 100644
--- a/usr/src/man/man3dat/dat_rsp_query.3dat
+++ b/usr/src/man/man3dat/dat_rsp_query.3dat
@@ -92,7 +92,7 @@ The \fIrsp_param_mask\fR parameter is invalid.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -110,4 +110,5 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibdat\fR(3LIB), \fBattributes\fR(5)
+.BR libdat (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dat/dat_set_consumer_context.3dat b/usr/src/man/man3dat/dat_set_consumer_context.3dat
index 0022288df2..c527274efd 100644
--- a/usr/src/man/man3dat/dat_set_consumer_context.3dat
+++ b/usr/src/man/man3dat/dat_set_consumer_context.3dat
@@ -90,7 +90,7 @@ The \fIdat_handle\fR parameter is invalid.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -108,4 +108,6 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBdat_get_consumer_context\fR(3DAT), \fBlibdat\fR(3LIB), \fBattributes\fR(5)
+.BR dat_get_consumer_context (3DAT),
+.BR libdat (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dat/dat_srq_create.3dat b/usr/src/man/man3dat/dat_srq_create.3dat
index 3b4ae02b00..7c7b08c61a 100644
--- a/usr/src/man/man3dat/dat_srq_create.3dat
+++ b/usr/src/man/man3dat/dat_srq_create.3dat
@@ -190,7 +190,7 @@ different \fIrecv_evd\fRs.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -208,6 +208,10 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBdat_srq_free\fR(3DAT), \fBdat_srq_post_recv\fR(3DAT),
-\fBdat_srq_query\fR(3DAT), \fBdat_srq_resize\fR(3DAT),
-\fBdat_srq_set_lw\fR(3DAT), \fBlibdat\fR(3LIB), \fBattributes\fR(5)
+.BR dat_srq_free (3DAT),
+.BR dat_srq_post_recv (3DAT),
+.BR dat_srq_query (3DAT),
+.BR dat_srq_resize (3DAT),
+.BR dat_srq_set_lw (3DAT),
+.BR libdat (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dat/dat_srq_free.3dat b/usr/src/man/man3dat/dat_srq_free.3dat
index d9930d1753..2cf00a7781 100644
--- a/usr/src/man/man3dat/dat_srq_free.3dat
+++ b/usr/src/man/man3dat/dat_srq_free.3dat
@@ -76,7 +76,7 @@ destroyed object.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -94,6 +94,10 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBdat_srq_create\fR(3DAT), \fBdat_srq_post_recv\fR(3DAT),
-\fBdat_srq_query\fR(3DAT), \fBdat_srq_resize\fR(3DAT),
-\fBdat_srq_set_lw\fR(3DAT), \fBlibdat\fR(3LIB), \fBattributes\fR(5)
+.BR dat_srq_create (3DAT),
+.BR dat_srq_post_recv (3DAT),
+.BR dat_srq_query (3DAT),
+.BR dat_srq_resize (3DAT),
+.BR dat_srq_set_lw (3DAT),
+.BR libdat (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dat/dat_srq_post_recv.3dat b/usr/src/man/man3dat/dat_srq_post_recv.3dat
index 27f723ef0c..b773ed2b07 100644
--- a/usr/src/man/man3dat/dat_srq_post_recv.3dat
+++ b/usr/src/man/man3dat/dat_srq_post_recv.3dat
@@ -236,7 +236,7 @@ reception will be flushed.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -254,6 +254,10 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBdat_srq_create\fR(3DAT), \fBdat_srq_free\fR(3DAT),
-\fBdat_srq_query\fR(3DAT), \fBdat_srq_resize\fR(3DAT),
-\fBdat_srq_set_lw\fR(3DAT), \fBlibdat\fR(3LIB), \fBattributes\fR(5)
+.BR dat_srq_create (3DAT),
+.BR dat_srq_free (3DAT),
+.BR dat_srq_query (3DAT),
+.BR dat_srq_resize (3DAT),
+.BR dat_srq_set_lw (3DAT),
+.BR libdat (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dat/dat_srq_query.3dat b/usr/src/man/man3dat/dat_srq_query.3dat
index 1603c06dbb..9ea9b626e9 100644
--- a/usr/src/man/man3dat/dat_srq_query.3dat
+++ b/usr/src/man/man3dat/dat_srq_query.3dat
@@ -159,7 +159,7 @@ SRQ or available Recvs of SRQ, the value return for that attribute should be
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -177,6 +177,10 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBdat_srq_create\fR(3DAT), \fBdat_srq_free\fR(3DAT),
-\fBdat_srq_post_recv\fR(3DAT), \fBdat_srq_resize\fR(3DAT),
-\fBdat_srq_set_lw\fR(3DAT), \fBlibdat\fR(3LIB), \fBattributes\fR(5)
+.BR dat_srq_create (3DAT),
+.BR dat_srq_free (3DAT),
+.BR dat_srq_post_recv (3DAT),
+.BR dat_srq_resize (3DAT),
+.BR dat_srq_set_lw (3DAT),
+.BR libdat (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dat/dat_srq_resize.3dat b/usr/src/man/man3dat/dat_srq_resize.3dat
index c1535b6eeb..8989f99e95 100644
--- a/usr/src/man/man3dat/dat_srq_resize.3dat
+++ b/usr/src/man/man3dat/dat_srq_resize.3dat
@@ -125,7 +125,7 @@ not change the SRQ size and still returns \fBDAT_SUCCESS\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -143,6 +143,10 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBdat_srq_create\fR(3DAT), \fBdat_srq_free\fR(3DAT),
-\fBdat_srq_post_recv\fR(3DAT), \fBdat_srq_query\fR(3DAT),
-\fBdat_srq_set_lw\fR(3DAT), \fBlibdat\fR(3LIB), \fBattributes\fR(5)
+.BR dat_srq_create (3DAT),
+.BR dat_srq_free (3DAT),
+.BR dat_srq_post_recv (3DAT),
+.BR dat_srq_query (3DAT),
+.BR dat_srq_set_lw (3DAT),
+.BR libdat (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dat/dat_srq_set_lw.3dat b/usr/src/man/man3dat/dat_srq_set_lw.3dat
index d2dfd711d8..bec542c54f 100644
--- a/usr/src/man/man3dat/dat_srq_set_lw.3dat
+++ b/usr/src/man/man3dat/dat_srq_set_lw.3dat
@@ -110,7 +110,7 @@ watermark value is simply replaced with the new one.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -128,6 +128,10 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBdat_srq_create\fR(3DAT), \fBdat_srq_free\fR(3DAT),
-\fBdat_srq_post_recv\fR(3DAT), \fBdat_srq_query\fR(3DAT),
-\fBdat_srq_resize\fR(3DAT), \fBlibdat\fR(3LIB), \fBattributes\fR(5)
+.BR dat_srq_create (3DAT),
+.BR dat_srq_free (3DAT),
+.BR dat_srq_post_recv (3DAT),
+.BR dat_srq_query (3DAT),
+.BR dat_srq_resize (3DAT),
+.BR libdat (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dat/dat_strerror.3dat b/usr/src/man/man3dat/dat_strerror.3dat
index c58c3e7623..287c3f83f4 100644
--- a/usr/src/man/man3dat/dat_strerror.3dat
+++ b/usr/src/man/man3dat/dat_strerror.3dat
@@ -76,7 +76,7 @@ Invalid parameter. The \fIreturn\fR value is invalid.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -94,4 +94,5 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibdat\fR(3LIB), \fBattributes\fR(5)
+.BR libdat (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3devid/devid_get.3devid b/usr/src/man/man3devid/devid_get.3devid
index 66d8a7d70d..811a3bbe63 100644
--- a/usr/src/man/man3devid/devid_get.3devid
+++ b/usr/src/man/man3devid/devid_get.3devid
@@ -467,5 +467,5 @@ devid_free_nmlist(list);
.Sh SEE ALSO
.Xr free 3C ,
.Xr libdevid 3LIB ,
-.Xr attributes 5 ,
+.Xr attributes 7 ,
.Xr ddi_devid_compare 9F
diff --git a/usr/src/man/man3devinfo/di_binding_name.3devinfo b/usr/src/man/man3devinfo/di_binding_name.3devinfo
index 13e57f1ed3..53aaa980c0 100644
--- a/usr/src/man/man3devinfo/di_binding_name.3devinfo
+++ b/usr/src/man/man3devinfo/di_binding_name.3devinfo
@@ -162,7 +162,7 @@ functions.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -180,9 +180,13 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBdi_init\fR(3DEVINFO), \fBdi_prom_init\fR(3DEVINFO),
-\fBdi_prom_prop_data\fR(3DEVINFO), \fBdi_prom_prop_lookup_bytes\fR(3DEVINFO),
-\fBlibdevid\fR(3LIB), \fBlibdevinfo\fR(3LIB), \fBattributes\fR(5)
+.BR di_init (3DEVINFO),
+.BR di_prom_init (3DEVINFO),
+.BR di_prom_prop_data (3DEVINFO),
+.BR di_prom_prop_lookup_bytes (3DEVINFO),
+.BR libdevid (3LIB),
+.BR libdevinfo (3LIB),
+.BR attributes (7)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man3devinfo/di_child_node.3devinfo b/usr/src/man/man3devinfo/di_child_node.3devinfo
index 2a380113b0..70e0088d85 100644
--- a/usr/src/man/man3devinfo/di_child_node.3devinfo
+++ b/usr/src/man/man3devinfo/di_child_node.3devinfo
@@ -143,7 +143,7 @@ error may occur if the snapshot contains a partial device tree.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -161,7 +161,9 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBdi_init\fR(3DEVINFO), \fBlibdevinfo\fR(3LIB), \fBattributes\fR(5)
+.BR di_init (3DEVINFO),
+.BR libdevinfo (3LIB),
+.BR attributes (7)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man3devinfo/di_devfs_path.3devinfo b/usr/src/man/man3devinfo/di_devfs_path.3devinfo
index f64cf152d8..9df6f2dd33 100644
--- a/usr/src/man/man3devinfo/di_devfs_path.3devinfo
+++ b/usr/src/man/man3devinfo/di_devfs_path.3devinfo
@@ -134,7 +134,7 @@ also return any error value returned by \fBmalloc\fR(3C).
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -152,8 +152,10 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBdi_init\fR(3DEVINFO), \fBlibdevinfo\fR(3LIB), \fBmalloc\fR(3C),
-\fBattributes\fR(5)
+.BR malloc (3C),
+.BR di_init (3DEVINFO),
+.BR libdevinfo (3LIB),
+.BR attributes (7)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man3devinfo/di_devlink_dup.3devinfo b/usr/src/man/man3devinfo/di_devlink_dup.3devinfo
index ecb404117e..66ec95da5b 100644
--- a/usr/src/man/man3devinfo/di_devlink_dup.3devinfo
+++ b/usr/src/man/man3devinfo/di_devlink_dup.3devinfo
@@ -72,7 +72,7 @@ can also be set by \fBmalloc\fR(3C).
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -90,6 +90,9 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBdi_devlink_init\fR(3DEVINFO), \fBdi_devlink_path\fR(3DEVINFO),
-\fBdi_devlink_walk\fR(3DEVINFO), \fBlibdevinfo\fR(3LIB), \fBmalloc\fR(3C),
-\fBattributes\fR(5)
+.BR malloc (3C),
+.BR di_devlink_init (3DEVINFO),
+.BR di_devlink_path (3DEVINFO),
+.BR di_devlink_walk (3DEVINFO),
+.BR libdevinfo (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3devinfo/di_devlink_init.3devinfo b/usr/src/man/man3devinfo/di_devlink_init.3devinfo
index 80e672c0fd..183b1134b8 100644
--- a/usr/src/man/man3devinfo/di_devlink_init.3devinfo
+++ b/usr/src/man/man3devinfo/di_devlink_init.3devinfo
@@ -150,7 +150,7 @@ that can also be set by \fBmalloc\fR(3C), \fBopen\fR(2), \fBioctl\fR(2), or
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -168,6 +168,11 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBioctl\fR(2), \fBmmap\fR(2), \fBopen\fR(2), \fBdi_devlink_path\fR(3DEVINFO),
-\fBdi_devlink_walk\fR(3DEVINFO), \fBlibdevinfo\fR(3LIB), \fBmalloc\fR(3C),
-\fBattributes\fR(5)
+.BR ioctl (2),
+.BR mmap (2),
+.BR open (2),
+.BR malloc (3C),
+.BR di_devlink_path (3DEVINFO),
+.BR di_devlink_walk (3DEVINFO),
+.BR libdevinfo (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3devinfo/di_devlink_path.3devinfo b/usr/src/man/man3devinfo/di_devlink_path.3devinfo
index ee4b5b2602..703f01f512 100644
--- a/usr/src/man/man3devinfo/di_devlink_path.3devinfo
+++ b/usr/src/man/man3devinfo/di_devlink_path.3devinfo
@@ -70,7 +70,7 @@ The \fIdevlink\fR argument is invalid.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -88,5 +88,8 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBdi_devlink_init\fR(3DEVINFO), \fBdi_devlink_walk\fR(3DEVINFO),
-\fBlibdevinfo\fR(3LIB), \fBmalloc\fR(3C), \fBattributes\fR(5)
+.BR malloc (3C),
+.BR di_devlink_init (3DEVINFO),
+.BR di_devlink_walk (3DEVINFO),
+.BR libdevinfo (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3devinfo/di_devlink_walk.3devinfo b/usr/src/man/man3devinfo/di_devlink_walk.3devinfo
index bb6b04d767..8c144f12b5 100644
--- a/usr/src/man/man3devinfo/di_devlink_walk.3devinfo
+++ b/usr/src/man/man3devinfo/di_devlink_walk.3devinfo
@@ -33,7 +33,7 @@ A handle to a snapshot of devlinks in "\fB/dev\fR".
\fB\fIre\fR\fR
.ad
.RS 11n
-An extended regular expression as specified in \fBregex\fR(5) describing the
+An extended regular expression as specified in \fBregex\fR(7) describing the
paths of devlinks to visit. A null value matches all devlinks. The expression
should not involve the "\fB/dev\fR" prefix. For example, the "^\fBdsk/\fR" will
invoke \fIdevlink_callback\fR() for all "\fB/dev/dsk/\fR" links.
@@ -139,7 +139,7 @@ Insufficient memory is available.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -157,5 +157,9 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBdi_devlink_init\fR(3DEVINFO), \fBdi_devlink_path\fR(3DEVINFO),
-\fBlibdevinfo\fR(3LIB), \fBmalloc\fR(3C), \fBattributes\fR(5), \fBregex\fR(5)
+.BR malloc (3C),
+.BR di_devlink_init (3DEVINFO),
+.BR di_devlink_path (3DEVINFO),
+.BR libdevinfo (3LIB),
+.BR attributes (7),
+.BR regex (7)
diff --git a/usr/src/man/man3devinfo/di_init.3devinfo b/usr/src/man/man3devinfo/di_init.3devinfo
index 8586dd0597..13424640d8 100644
--- a/usr/src/man/man3devinfo/di_init.3devinfo
+++ b/usr/src/man/man3devinfo/di_init.3devinfo
@@ -151,7 +151,7 @@ Insufficient privilege for accessing device configuration data.
.ad
.RS 10n
Either the device named by \fIphys_path\fR is not present in the system, or the
-\fBdevinfo\fR(7D) driver is not installed properly.
+\fBdevinfo\fR(4D) driver is not installed properly.
.RE
.sp
@@ -268,7 +268,7 @@ main()
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -286,8 +286,11 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBopen\fR(2), \fBioctl\fR(2), \fBmmap\fR(2), \fBlibdevinfo\fR(3LIB),
-\fBattributes\fR(5)
+.BR ioctl (2),
+.BR mmap (2),
+.BR open (2),
+.BR libdevinfo (3LIB),
+.BR attributes (7)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man3devinfo/di_link_next_by_node.3devinfo b/usr/src/man/man3devinfo/di_link_next_by_node.3devinfo
index d6f23903c3..645185a9bc 100644
--- a/usr/src/man/man3devinfo/di_link_next_by_node.3devinfo
+++ b/usr/src/man/man3devinfo/di_link_next_by_node.3devinfo
@@ -117,7 +117,7 @@ Device usage information is not available in snapshot.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -135,4 +135,6 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBdi_init\fR(3DEVINFO), \fBlibdevinfo\fR(3LIB), \fBattributes\fR(5)
+.BR di_init (3DEVINFO),
+.BR libdevinfo (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3devinfo/di_link_spectype.3devinfo b/usr/src/man/man3devinfo/di_link_spectype.3devinfo
index 6a12e602f0..026f330abc 100644
--- a/usr/src/man/man3devinfo/di_link_spectype.3devinfo
+++ b/usr/src/man/man3devinfo/di_link_spectype.3devinfo
@@ -76,7 +76,7 @@ An argument is invalid.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -94,4 +94,6 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBdi_init\fR(3DEVINFO), \fBlibdevinfo\fR(3LIB), \fBattributes\fR(5)
+.BR di_init (3DEVINFO),
+.BR libdevinfo (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3devinfo/di_lnode_name.3devinfo b/usr/src/man/man3devinfo/di_lnode_name.3devinfo
index 4374601545..0f944414f1 100644
--- a/usr/src/man/man3devinfo/di_lnode_name.3devinfo
+++ b/usr/src/man/man3devinfo/di_lnode_name.3devinfo
@@ -91,7 +91,7 @@ An argument was invalid.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -109,4 +109,6 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBdi_init\fR(3DEVINFO), \fBlibdevinfo\fR(3LIB), \fBattributes\fR(5)
+.BR di_init (3DEVINFO),
+.BR libdevinfo (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3devinfo/di_lnode_next.3devinfo b/usr/src/man/man3devinfo/di_lnode_next.3devinfo
index a287975652..0e468d5f94 100644
--- a/usr/src/man/man3devinfo/di_lnode_next.3devinfo
+++ b/usr/src/man/man3devinfo/di_lnode_next.3devinfo
@@ -79,7 +79,7 @@ The end of the lnode list has been reached.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -97,4 +97,6 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBdi_init\fR(3DEVINFO), \fBlibdevinfo\fR(3LIB), \fBattributes\fR(5)
+.BR di_init (3DEVINFO),
+.BR libdevinfo (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3devinfo/di_minor_devt.3devinfo b/usr/src/man/man3devinfo/di_minor_devt.3devinfo
index d54a974335..d5dcfc8f97 100644
--- a/usr/src/man/man3devinfo/di_minor_devt.3devinfo
+++ b/usr/src/man/man3devinfo/di_minor_devt.3devinfo
@@ -72,7 +72,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -90,8 +90,10 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBattributes\fR(5), \fBddi_create_minor_node\fR(9F), \fBgetmajor\fR(9F),
-\fBgetminor\fR(9F)
+.BR attributes (7),
+.BR ddi_create_minor_node (9F),
+.BR getmajor (9F),
+.BR getminor (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man3devinfo/di_minor_next.3devinfo b/usr/src/man/man3devinfo/di_minor_next.3devinfo
index 0cee0b2999..8612bda020 100644
--- a/usr/src/man/man3devinfo/di_minor_next.3devinfo
+++ b/usr/src/man/man3devinfo/di_minor_next.3devinfo
@@ -80,7 +80,7 @@ End of minor node list.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -98,7 +98,8 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibdevinfo\fR(3LIB), \fBattributes\fR(5)
+.BR libdevinfo (3LIB),
+.BR attributes (7)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man3devinfo/di_node_private_set.3devinfo b/usr/src/man/man3devinfo/di_node_private_set.3devinfo
index e459b334e7..8549243e01 100644
--- a/usr/src/man/man3devinfo/di_node_private_set.3devinfo
+++ b/usr/src/man/man3devinfo/di_node_private_set.3devinfo
@@ -194,7 +194,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -212,4 +212,6 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBdi_init\fR(3DEVINFO), \fBlibdevinfo\fR(3LIB), \fBattributes\fR(5)
+.BR di_init (3DEVINFO),
+.BR libdevinfo (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3devinfo/di_path_bus_addr.3devinfo b/usr/src/man/man3devinfo/di_path_bus_addr.3devinfo
index 54e1e47dec..9d33615e9c 100644
--- a/usr/src/man/man3devinfo/di_path_bus_addr.3devinfo
+++ b/usr/src/man/man3devinfo/di_path_bus_addr.3devinfo
@@ -135,7 +135,7 @@ I/O operations.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -153,12 +153,18 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBdi_bus_addr\fR(3DEVINFO), \fBdi_devfs_path\fR(3DEVINFO),
-\fBdi_init\fR(3DEVINFO), \fBdi_instance\fR(3DEVINFO),
-\fBdi_node_name\fR(3DEVINFO), \fBdi_path_client_next_path\fR(3DEVINFO),
-\fBdi_path_prop_next\fR(3DEVINFO), \fBdi_path_prop_bytes\fR(3DEVINFO),
-\fBdi_path_prop_lookup_bytes\fR(3DEVINFO), \fBdi_path_prop_next\fR(3DEVINFO),
-\fBlibdevinfo\fR(3LIB), \fBattributes\fR(5)
+.BR di_bus_addr (3DEVINFO),
+.BR di_devfs_path (3DEVINFO),
+.BR di_init (3DEVINFO),
+.BR di_instance (3DEVINFO),
+.BR di_node_name (3DEVINFO),
+.BR di_path_client_next_path (3DEVINFO),
+.BR di_path_prop_bytes (3DEVINFO),
+.BR di_path_prop_lookup_bytes (3DEVINFO),
+.BR di_path_prop_next (3DEVINFO),
+.BR di_path_prop_next (3DEVINFO),
+.BR libdevinfo (3LIB),
+.BR attributes (7)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man3devinfo/di_path_client_next_path.3devinfo b/usr/src/man/man3devinfo/di_path_client_next_path.3devinfo
index 0a66174c4b..d41ef6a48b 100644
--- a/usr/src/man/man3devinfo/di_path_client_next_path.3devinfo
+++ b/usr/src/man/man3devinfo/di_path_client_next_path.3devinfo
@@ -114,7 +114,7 @@ The end of the path node list was reached.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -132,9 +132,11 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBdi_init\fR(3DEVINFO), \fBdi_path_bus_addr\fR(3DEVINFO),
-\fBdi_path_client_node\fR(3DEVINFO), \fBlibdevinfo\fR(3LIB),
-\fBattributes\fR(5)
+.BR di_init (3DEVINFO),
+.BR di_path_bus_addr (3DEVINFO),
+.BR di_path_client_node (3DEVINFO),
+.BR libdevinfo (3LIB),
+.BR attributes (7)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man3devinfo/di_path_prop_bytes.3devinfo b/usr/src/man/man3devinfo/di_path_prop_bytes.3devinfo
index 6cb08def24..23d765c412 100644
--- a/usr/src/man/man3devinfo/di_path_prop_bytes.3devinfo
+++ b/usr/src/man/man3devinfo/di_path_prop_bytes.3devinfo
@@ -203,7 +203,7 @@ The path property does not exist.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -221,8 +221,10 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBdi_path_prop_next\fR(3DEVINFO), \fBdi_prop_type\fR(3DEVINFO),
-\fBlibdevinfo\fR(3LIB), \fBattributes\fR(5)
+.BR di_path_prop_next (3DEVINFO),
+.BR di_prop_type (3DEVINFO),
+.BR libdevinfo (3LIB),
+.BR attributes (7)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man3devinfo/di_path_prop_lookup_bytes.3devinfo b/usr/src/man/man3devinfo/di_path_prop_lookup_bytes.3devinfo
index 1b102b2e6f..bd5d874a26 100644
--- a/usr/src/man/man3devinfo/di_path_prop_lookup_bytes.3devinfo
+++ b/usr/src/man/man3devinfo/di_path_prop_lookup_bytes.3devinfo
@@ -122,7 +122,7 @@ The path property does not exist.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -140,7 +140,9 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBdi_init\fR(3DEVINFO), \fBlibdevinfo\fR(3LIB), \fBattributes\fR(5)
+.BR di_init (3DEVINFO),
+.BR libdevinfo (3LIB),
+.BR attributes (7)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man3devinfo/di_path_prop_next.3devinfo b/usr/src/man/man3devinfo/di_path_prop_next.3devinfo
index 0b644c81cd..e62ab89635 100644
--- a/usr/src/man/man3devinfo/di_path_prop_next.3devinfo
+++ b/usr/src/man/man3devinfo/di_path_prop_next.3devinfo
@@ -82,7 +82,7 @@ There are no more properties.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -100,7 +100,8 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibdevinfo\fR(3LIB), \fBattributes\fR(5)
+.BR libdevinfo (3LIB),
+.BR attributes (7)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man3devinfo/di_prom_init.3devinfo b/usr/src/man/man3devinfo/di_prom_init.3devinfo
index e1a93b7bda..6a29025704 100644
--- a/usr/src/man/man3devinfo/di_prom_init.3devinfo
+++ b/usr/src/man/man3devinfo/di_prom_init.3devinfo
@@ -54,11 +54,11 @@ error.
.sp
.LP
The \fBdi_prom_init()\fR sets \fBerrno\fR function to any error code that can
-also be set by \fBopenprom\fR(7D) or \fBmalloc\fR(3C).
+also be set by \fBopenprom\fR(4D) or \fBmalloc\fR(3C).
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -76,6 +76,10 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBdi_nodeid\fR(3DEVINFO), \fBdi_prom_prop_next\fR(3DEVINFO),
-\fBdi_prom_prop_lookup_bytes\fR(3DEVINFO), \fBlibdevinfo\fR(3LIB),
-\fBmalloc\fR(3C), \fBattributes\fR(5), \fBopenprom\fR(7D)
+.BR malloc (3C),
+.BR di_nodeid (3DEVINFO),
+.BR di_prom_prop_lookup_bytes (3DEVINFO),
+.BR di_prom_prop_next (3DEVINFO),
+.BR libdevinfo (3LIB),
+.BR openprom (4D),
+.BR attributes (7)
diff --git a/usr/src/man/man3devinfo/di_prom_prop_data.3devinfo b/usr/src/man/man3devinfo/di_prom_prop_data.3devinfo
index 78f793a008..1aff7dad32 100644
--- a/usr/src/man/man3devinfo/di_prom_prop_data.3devinfo
+++ b/usr/src/man/man3devinfo/di_prom_prop_data.3devinfo
@@ -102,11 +102,11 @@ property. \fBDI_PROM_PROP_NIL\fR is returned if no additional properties exist.
.SH ERRORS
.sp
.LP
-See \fBopenprom\fR(7D) for a description of possible errors.
+See \fBopenprom\fR(4D) for a description of possible errors.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -124,7 +124,8 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBattributes\fR(5), \fBopenprom\fR(7D)
+.BR openprom (4D),
+.BR attributes (7)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man3devinfo/di_prom_prop_lookup_bytes.3devinfo b/usr/src/man/man3devinfo/di_prom_prop_lookup_bytes.3devinfo
index f4fe4fe489..112ce1e1b6 100644
--- a/usr/src/man/man3devinfo/di_prom_prop_lookup_bytes.3devinfo
+++ b/usr/src/man/man3devinfo/di_prom_prop_lookup_bytes.3devinfo
@@ -123,7 +123,7 @@ The property does not exist.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -141,8 +141,11 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBdi_init\fR(3DEVINFO), \fBdi_prom_prop_next\fR(3DEVINFO),
-\fBlibdevinfo\fR(3LIB), \fBattributes\fR(5), \fBopenprom\fR(7D)
+.BR di_init (3DEVINFO),
+.BR di_prom_prop_next (3DEVINFO),
+.BR libdevinfo (3LIB),
+.BR openprom (4D),
+.BR attributes (7)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man3devinfo/di_prop_bytes.3devinfo b/usr/src/man/man3devinfo/di_prop_bytes.3devinfo
index 5e7c51c525..a6b68b7633 100644
--- a/usr/src/man/man3devinfo/di_prop_bytes.3devinfo
+++ b/usr/src/man/man3devinfo/di_prop_bytes.3devinfo
@@ -208,7 +208,7 @@ Invalid argument. For example, the property type does not match the interface.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -226,8 +226,10 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBdi_prom_prop_lookup_bytes\fR(3DEVINFO), \fBdi_prop_next\fR(3DEVINFO),
-\fBlibdevinfo\fR(3LIB), \fBattributes\fR(5)
+.BR di_prom_prop_lookup_bytes (3DEVINFO),
+.BR di_prop_next (3DEVINFO),
+.BR libdevinfo (3LIB),
+.BR attributes (7)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man3devinfo/di_prop_lookup_bytes.3devinfo b/usr/src/man/man3devinfo/di_prop_lookup_bytes.3devinfo
index 1f202fce73..cfcc54063f 100644
--- a/usr/src/man/man3devinfo/di_prop_lookup_bytes.3devinfo
+++ b/usr/src/man/man3devinfo/di_prop_lookup_bytes.3devinfo
@@ -132,7 +132,7 @@ The property does not exist; try \fBdi_prom_prop_lookup_*()\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -150,8 +150,10 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBdi_init\fR(3DEVINFO), \fBdi_prom_prop_lookup_bytes\fR(3DEVINFO),
-\fBlibdevinfo\fR(3LIB), \fBattributes\fR(5)
+.BR di_init (3DEVINFO),
+.BR di_prom_prop_lookup_bytes (3DEVINFO),
+.BR libdevinfo (3LIB),
+.BR attributes (7)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man3devinfo/di_prop_next.3devinfo b/usr/src/man/man3devinfo/di_prop_next.3devinfo
index 6b116b699d..40621f7f2d 100644
--- a/usr/src/man/man3devinfo/di_prop_next.3devinfo
+++ b/usr/src/man/man3devinfo/di_prop_next.3devinfo
@@ -79,7 +79,7 @@ There are no more properties.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -97,7 +97,9 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBdi_init\fR(3DEVINFO), \fBlibdevinfo\fR(3LIB), \fBattributes\fR(5)
+.BR di_init (3DEVINFO),
+.BR libdevinfo (3LIB),
+.BR attributes (7)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man3devinfo/di_walk_link.3devinfo b/usr/src/man/man3devinfo/di_walk_link.3devinfo
index 04b2b8a537..d9e06c2e02 100644
--- a/usr/src/man/man3devinfo/di_walk_link.3devinfo
+++ b/usr/src/man/man3devinfo/di_walk_link.3devinfo
@@ -113,7 +113,7 @@ An argument is invalid.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -131,4 +131,6 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBdi_init\fR(3DEVINFO), \fBlibdevinfo\fR(3LIB), \fBattributes\fR(5)
+.BR di_init (3DEVINFO),
+.BR libdevinfo (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3devinfo/di_walk_lnode.3devinfo b/usr/src/man/man3devinfo/di_walk_lnode.3devinfo
index 5fd1856e4b..8a7d97c968 100644
--- a/usr/src/man/man3devinfo/di_walk_lnode.3devinfo
+++ b/usr/src/man/man3devinfo/di_walk_lnode.3devinfo
@@ -103,7 +103,7 @@ An argument is invalid.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -121,4 +121,6 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBdi_init\fR(3DEVINFO), \fBlibdevinfo\fR(3LIB), \fBattributes\fR(5)
+.BR di_init (3DEVINFO),
+.BR libdevinfo (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3devinfo/di_walk_minor.3devinfo b/usr/src/man/man3devinfo/di_walk_minor.3devinfo
index 88a5722aaa..5633603d86 100644
--- a/usr/src/man/man3devinfo/di_walk_minor.3devinfo
+++ b/usr/src/man/man3devinfo/di_walk_minor.3devinfo
@@ -115,7 +115,7 @@ Invalid argument.
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -131,9 +131,11 @@ MT-Level Safe
.TE
.SH SEE ALSO
-\fBdladm\fR(1M), \fBdi_minor_nodetype\fR(3DEVINFO), dlpi_walk(3DLPI),
-\fBlibdevinfo\fR(3LIB), \fBattributes\fR(5), \fBfilesystem\fR(5),
-\fBddi_create_minor_node\fR(9F)
+\fBdladm\fR(8), \fBdi_minor_nodetype\fR(3DEVINFO), dlpi_walk(3DLPI),
+.BR libdevinfo (3LIB),
+.BR attributes (7),
+.BR filesystem (7),
+.BR ddi_create_minor_node (9F)
.sp
.LP
\fIWriting Device Drivers\fR
@@ -149,5 +151,5 @@ networking devices (the objects displayed in the \fBDEVICE\fR field by
displayed by \fBdladm\fR \fBshow-link\fR). Datalink interfaces are represented
as the set of DLPI device nodes that applications can open by using
\fBdlpi_open\fR(3DLPI) or by opening DLPI nodes out of the \fB/dev/net\fR
-filesystem (see \fBfilesystem\fR(5)). The \fBdlpi_walk\fR(3DLPI) function is
+filesystem (see \fBfilesystem\fR(7)). The \fBdlpi_walk\fR(3DLPI) function is
the proper function to walk these nodes.
diff --git a/usr/src/man/man3devinfo/di_walk_node.3devinfo b/usr/src/man/man3devinfo/di_walk_node.3devinfo
index 7f18528a2b..a178c026c4 100644
--- a/usr/src/man/man3devinfo/di_walk_node.3devinfo
+++ b/usr/src/man/man3devinfo/di_walk_node.3devinfo
@@ -121,7 +121,7 @@ Invalid argument.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -139,7 +139,9 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBdi_init\fR(3DEVINFO), \fBlibdevinfo\fR(3LIB), \fBattributes\fR(5)
+.BR di_init (3DEVINFO),
+.BR libdevinfo (3LIB),
+.BR attributes (7)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man3dlpi/dlpi_arptype.3dlpi b/usr/src/man/man3dlpi/dlpi_arptype.3dlpi
index b262f52237..0879bf48e1 100644
--- a/usr/src/man/man3dlpi/dlpi_arptype.3dlpi
+++ b/usr/src/man/man3dlpi/dlpi_arptype.3dlpi
@@ -27,7 +27,7 @@ zero is returned.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -45,4 +45,5 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibdlpi\fR(3LIB), \fBattributes\fR(5)
+.BR libdlpi (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dlpi/dlpi_bind.3dlpi b/usr/src/man/man3dlpi/dlpi_bind.3dlpi
index b7833ac67c..1393baed3a 100644
--- a/usr/src/man/man3dlpi/dlpi_bind.3dlpi
+++ b/usr/src/man/man3dlpi/dlpi_bind.3dlpi
@@ -85,7 +85,7 @@ Unavailable \fBDLPI\fR \fBSAP\fR
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -103,5 +103,9 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBdlpi_info\fR(3DLPI), \fBdlpi_recv\fR(3DLPI), \fBdlpi_send\fR(3DLPI),
-\fBdlpi_unbind\fR(3DLPI), \fBlibdlpi\fR(3LIB), \fBattributes\fR(5)
+.BR dlpi_info (3DLPI),
+.BR dlpi_recv (3DLPI),
+.BR dlpi_send (3DLPI),
+.BR dlpi_unbind (3DLPI),
+.BR libdlpi (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dlpi/dlpi_close.3dlpi b/usr/src/man/man3dlpi/dlpi_close.3dlpi
index 5299bcf39f..eb0f4da707 100644
--- a/usr/src/man/man3dlpi/dlpi_close.3dlpi
+++ b/usr/src/man/man3dlpi/dlpi_close.3dlpi
@@ -24,7 +24,7 @@ link instance.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -42,4 +42,6 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBdlpi_open\fR(3DLPI), \fBlibdlpi\fR(3LIB), \fBattributes\fR(5)
+.BR dlpi_open (3DLPI),
+.BR libdlpi (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dlpi/dlpi_disabnotify.3dlpi b/usr/src/man/man3dlpi/dlpi_disabnotify.3dlpi
index 366bc3e9d4..e7115c66eb 100644
--- a/usr/src/man/man3dlpi/dlpi_disabnotify.3dlpi
+++ b/usr/src/man/man3dlpi/dlpi_disabnotify.3dlpi
@@ -75,7 +75,7 @@ The DLPI operation failed.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -93,4 +93,6 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBdlpi_enabnotify\fR(3DLPI), \fBlibdlpi\fR(3LIB), \fBattributes\fR(5)
+.BR dlpi_enabnotify (3DLPI),
+.BR libdlpi (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dlpi/dlpi_enabmulti.3dlpi b/usr/src/man/man3dlpi/dlpi_enabmulti.3dlpi
index 290709e00b..1cbd34b59a 100644
--- a/usr/src/man/man3dlpi/dlpi_enabmulti.3dlpi
+++ b/usr/src/man/man3dlpi/dlpi_enabmulti.3dlpi
@@ -84,7 +84,7 @@ Invalid argument
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -102,4 +102,5 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibdlpi\fR(3LIB), \fBattributes\fR(5)
+.BR libdlpi (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dlpi/dlpi_enabnotify.3dlpi b/usr/src/man/man3dlpi/dlpi_enabnotify.3dlpi
index f3dd38939b..2e5203562e 100644
--- a/usr/src/man/man3dlpi/dlpi_enabnotify.3dlpi
+++ b/usr/src/man/man3dlpi/dlpi_enabnotify.3dlpi
@@ -27,7 +27,7 @@ dlpi_enabnotify \- enable DLPI notification
.LP
The \fBdlpi_enabnotify()\fR function enables a notification callback for the
set of events specified in \fInotes\fR, which must be one or more (by a logical
-OR operation) of the DLPI notifications documented in \fBdlpi\fR(7P). The
+OR operation) of the DLPI notifications documented in \fBdlpi\fR(4P). The
callback function \fIfuncp\fR is registered with the DLPI handle \fIdh\fR and
is invoked when \fIdh\fR receives notification for any of the specified event
types. Upon success, \fIid\fR contains the identifier associated with the
@@ -184,7 +184,7 @@ The DLPI operation failed.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -202,5 +202,8 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBdlpi_disabnotify\fR(3DLPI), \fBdlpi_recv\fR(3DLPI), \fBlibdlpi\fR(3LIB),
-\fBattributes\fR(5), \fBdlpi\fR(7P)
+.BR dlpi_disabnotify (3DLPI),
+.BR dlpi_recv (3DLPI),
+.BR libdlpi (3LIB),
+.BR dlpi (4P),
+.BR attributes (7)
diff --git a/usr/src/man/man3dlpi/dlpi_fd.3dlpi b/usr/src/man/man3dlpi/dlpi_fd.3dlpi
index 60aa56c58e..2a59ea66cb 100644
--- a/usr/src/man/man3dlpi/dlpi_fd.3dlpi
+++ b/usr/src/man/man3dlpi/dlpi_fd.3dlpi
@@ -23,7 +23,7 @@ used to directly operate on the open \fBDLPI\fR stream associated with the
\fBDLPI\fR handle \fIdh\fR. This file descriptor can be used to perform
non-\fBDLPI\fR operations that do not alter the state of the \fBDLPI\fR stream,
such as waiting for an event using \fBpoll\fR(2), or pushing and configuring
-additional \fBSTREAMS\fR modules, such as \fBpfmod\fR(7M). If \fBDLPI\fR
+additional \fBSTREAMS\fR modules, such as \fBpfmod\fR(4M). If \fBDLPI\fR
operations are directly performed on the file descriptor, or a \fBSTREAMS\fR
module is pushed that alters the message-passing interface such that \fBDLPI\fR
operations can no longer be issued, future operations on \fIdh\fR might not
@@ -40,7 +40,7 @@ handle \fIdh\fR. If \fIdh\fR is invalid, \fB-1\fR is returned.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -58,5 +58,8 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBpoll\fR(2), \fBlibdlpi\fR(3LIB), \fBattributes\fR(5), \fBdlpi\fR(7P),
-\fBpfmod\fR(7M)
+.BR poll (2),
+.BR libdlpi (3LIB),
+.BR pfmod (4M),
+.BR dlpi (4P),
+.BR attributes (7)
diff --git a/usr/src/man/man3dlpi/dlpi_get_physaddr.3dlpi b/usr/src/man/man3dlpi/dlpi_get_physaddr.3dlpi
index 260ffcc66f..ef9ccd48fe 100644
--- a/usr/src/man/man3dlpi/dlpi_get_physaddr.3dlpi
+++ b/usr/src/man/man3dlpi/dlpi_get_physaddr.3dlpi
@@ -97,7 +97,7 @@ Invalid argument
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -115,4 +115,6 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBdlpi_set_physaddr\fR(3DLPI), \fBlibdlpi\fR(3LIB), \fBattributes\fR(5)
+.BR dlpi_set_physaddr (3DLPI),
+.BR libdlpi (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dlpi/dlpi_iftype.3dlpi b/usr/src/man/man3dlpi/dlpi_iftype.3dlpi
index d47471ae36..18e8b580de 100644
--- a/usr/src/man/man3dlpi/dlpi_iftype.3dlpi
+++ b/usr/src/man/man3dlpi/dlpi_iftype.3dlpi
@@ -28,7 +28,7 @@ Otherwise, zero is returned.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -46,4 +46,5 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibdlpi\fR(3LIB), \fBattributes\fR(5)
+.BR libdlpi (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dlpi/dlpi_info.3dlpi b/usr/src/man/man3dlpi/dlpi_info.3dlpi
index f2ad35eee5..680e8d809f 100644
--- a/usr/src/man/man3dlpi/dlpi_info.3dlpi
+++ b/usr/src/man/man3dlpi/dlpi_info.3dlpi
@@ -303,7 +303,7 @@ get_bcastaddr(const char *linkname, uchar_t *baddrlenp)
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -321,4 +321,6 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBdlpi_bind\fR(3DLPI), \fBlibdlpi\fR(3LIB), \fBattributes\fR(5)
+.BR dlpi_bind (3DLPI),
+.BR libdlpi (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dlpi/dlpi_linkname.3dlpi b/usr/src/man/man3dlpi/dlpi_linkname.3dlpi
index fa67960463..a8be73f309 100644
--- a/usr/src/man/man3dlpi/dlpi_linkname.3dlpi
+++ b/usr/src/man/man3dlpi/dlpi_linkname.3dlpi
@@ -32,7 +32,7 @@ the \fBDLPI\fR handle.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -50,4 +50,5 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibdlpi\fR(3LIB), \fBattributes\fR(5)
+.BR libdlpi (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dlpi/dlpi_mactype.3dlpi b/usr/src/man/man3dlpi/dlpi_mactype.3dlpi
index 01ce797a3b..11a0f56323 100644
--- a/usr/src/man/man3dlpi/dlpi_mactype.3dlpi
+++ b/usr/src/man/man3dlpi/dlpi_mactype.3dlpi
@@ -31,7 +31,7 @@ returned.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -49,4 +49,5 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibdlpi\fR(3LIB), \fBattributes\fR(5)
+.BR libdlpi (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dlpi/dlpi_open.3dlpi b/usr/src/man/man3dlpi/dlpi_open.3dlpi
index 489f66066a..28bc7f66cf 100644
--- a/usr/src/man/man3dlpi/dlpi_open.3dlpi
+++ b/usr/src/man/man3dlpi/dlpi_open.3dlpi
@@ -43,7 +43,7 @@ its trailing digits removed, a matching \fBDL_STYLE1\fR link has a filename of
\fIprovider\fR. If a \fBDL_STYLE2\fR link is opened, \fBdlpi_open()\fR
automatically performs the necessary \fBDLPI\fR operations to place the
\fBDLPI\fR link instance and the associated \fBDLPI\fR handle in the
-\fBDL_UNBOUND\fR state. See \fBdlpi\fR(7P) for the definition of
+\fBDL_UNBOUND\fR state. See \fBdlpi\fR(4P) for the definition of
\fIlinkname\fR.
.sp
.LP
@@ -61,7 +61,7 @@ listed below, defined in \fB<libdlpi.h>\fR.
.ad
.RS 18n
Specify that the named DLPI device is an IP observability device (see
-\fBipnet\fR(7D)), and \fBdl_open()\fR will open the device from the
+\fBipnet\fR(4D)), and \fBdl_open()\fR will open the device from the
\fB/dev/ipnet/\fR directory.
.RE
@@ -74,7 +74,7 @@ Specify that the named DLPI device is an IP observability device (see
This flag is applicable only when opening IP Observability devices (with
\fBDLPI_DEVIPNET\fR or by opening the \fB/dev/lo0\fR device). This flag causes
the \fBipnet\fR driver to prepend an \fBipnet\fR header to each received IP
-packet. See \fBipnet\fR(7D) for the contents of this header.
+packet. See \fBipnet\fR(4D) for the contents of this header.
.RE
.sp
@@ -83,7 +83,7 @@ packet. See \fBipnet\fR(7D) for the contents of this header.
\fB\fBDLPI_NATIVE\fR\fR
.ad
.RS 18n
-Enable \fBDLPI\fR native mode (see \fBDLIOCNATIVE\fR in \fBdlpi\fR(7P)) on a
+Enable \fBDLPI\fR native mode (see \fBDLIOCNATIVE\fR in \fBdlpi\fR(4P)) on a
\fBDLPI\fR link instance. Native mode persists until the \fBDLPI\fR handle is
closed by \fBdlpi_close\fR(3DLPI).
.RE
@@ -94,7 +94,7 @@ closed by \fBdlpi_close\fR(3DLPI).
\fB\fBDLPI_PASSIVE\fR\fR
.ad
.RS 18n
-Enable \fBDLPI\fR passive mode (see \fBDL_PASSIVE_REQ\fR in \fBdlpi\fR(7P)) on
+Enable \fBDLPI\fR passive mode (see \fBDL_PASSIVE_REQ\fR in \fBdlpi\fR(4P)) on
a \fBDLPI\fR link instance. Passive mode persists until the \fBDLPI\fR handle
is closed by \fBdlpi_close\fR(3DLPI).
.RE
@@ -105,7 +105,7 @@ is closed by \fBdlpi_close\fR(3DLPI).
\fB\fBDLPI_RAW\fR\fR
.ad
.RS 18n
-Enable \fBDLPI\fR raw mode (see \fBDLIOCRAW\fR in \fBdlpi\fR(7P)) on a
+Enable \fBDLPI\fR raw mode (see \fBDLIOCRAW\fR in \fBdlpi\fR(4P)) on a
\fBDLPI\fR link instance. Raw mode persists until the \fBDLPI\fR handle is
closed by \fBdlpi_close\fR(3DLPI).
.RE
@@ -208,7 +208,7 @@ DLPI operation failed
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.LP
@@ -237,5 +237,9 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBdlpi_close\fR(3DLPI), \fBdlpi_set_timeout\fR(3DLPI), \fBlibdlpi\fR(3LIB),
-\fBattributes\fR(5), \fBdlpi\fR(7P), \fBipnet\fR(7D)
+.BR dlpi_close (3DLPI),
+.BR dlpi_set_timeout (3DLPI),
+.BR libdlpi (3LIB),
+.BR ipnet (4D),
+.BR dlpi (4P),
+.BR attributes (7)
diff --git a/usr/src/man/man3dlpi/dlpi_promiscon.3dlpi b/usr/src/man/man3dlpi/dlpi_promiscon.3dlpi
index eec167d96e..4ef4f1b395 100644
--- a/usr/src/man/man3dlpi/dlpi_promiscon.3dlpi
+++ b/usr/src/man/man3dlpi/dlpi_promiscon.3dlpi
@@ -38,7 +38,7 @@
.Sh DESCRIPTION
.Fn dlpi_promiscon
enables promiscuous mode on a
-.Xr dlpi 7P
+.Xr dlpi 4P
link instance associated with a DLPI handle
.Fa dh ,
at the specified
@@ -52,7 +52,7 @@ This operation can be performed in any DLPI state of a handle.
.Pp
.Fn dlpi_promiscoff
disables promiscuous mode on a
-.Xr dlpi 7P
+.Xr dlpi 4P
link instance associated with DLPI handle
.Fa dh ,
at the specified level.
@@ -107,5 +107,5 @@ Operation timed out
.Sy Safe
.Sh SEE ALSO
.Xr libdlpi 3LIB ,
-.Xr attributes 5 ,
-.Xr dlpi 7P
+.Xr dlpi 4P ,
+.Xr attributes 7
diff --git a/usr/src/man/man3dlpi/dlpi_recv.3dlpi b/usr/src/man/man3dlpi/dlpi_recv.3dlpi
index b04700ef39..8812cba83f 100644
--- a/usr/src/man/man3dlpi/dlpi_recv.3dlpi
+++ b/usr/src/man/man3dlpi/dlpi_recv.3dlpi
@@ -67,7 +67,7 @@ use \fIdri_totmsglen\fR to determine the original total length of the message.
.sp
.LP
If the handle is in raw mode, as described in \fBdlpi_open\fR(3DLPI),
-\fImsgbuf\fR starts with the link-layer header. See \fBdlpi\fR(7P). The values
+\fImsgbuf\fR starts with the link-layer header. See \fBdlpi\fR(4P). The values
of \fIsaddrp\fR, \fIsaddrlenp\fR, and all the members of \fIdlpi_recvinfo_t\fR
except \fIdri_totmsglen\fR are invalid because the address information is
already included in the link-layer header returned by \fImsgbuf\fR.
@@ -142,7 +142,7 @@ Unavailable \fBDLPI\fR \fBSAP\fR
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -160,5 +160,8 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBdlpi_bind\fR(3DLPI), \fBdlpi_open\fR(3DLPI), \fBlibdlpi\fR(3LIB),
-\fBattributes\fR(5), \fBdlpi\fR(7P)
+.BR dlpi_bind (3DLPI),
+.BR dlpi_open (3DLPI),
+.BR libdlpi (3LIB),
+.BR dlpi (4P),
+.BR attributes (7)
diff --git a/usr/src/man/man3dlpi/dlpi_send.3dlpi b/usr/src/man/man3dlpi/dlpi_send.3dlpi
index 1a1af266cc..97e523e98e 100644
--- a/usr/src/man/man3dlpi/dlpi_send.3dlpi
+++ b/usr/src/man/man3dlpi/dlpi_send.3dlpi
@@ -55,7 +55,7 @@ SAP or priority (but not both), the current SAP can be retrieved using
.sp
.LP
If the handle is in raw mode (see \fBDLPI_RAW\fR in \fBdlpi_open\fR(3DLPI)),
-\fImsgbuf\fR must start with the link-layer header (see \fBdlpi\fR(7P)). In raw
+\fImsgbuf\fR must start with the link-layer header (see \fBdlpi\fR(4P)). In raw
mode, the contents of \fIdaddrp\fR and \fIsendp\fR are ignored, as they are
already specified by the link-layer header in \fImsgbuf\fR.
.sp
@@ -93,7 +93,7 @@ Invalid argument
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -111,5 +111,9 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBdlpi_bind\fR(3DLPI), \fBdlpi_info\fR(3DLPI), \fBdlpi_open\fR(3DLPI),
-\fBlibdlpi\fR(3LIB), \fBattributes\fR(5), \fBdlpi\fR(7P)
+.BR dlpi_bind (3DLPI),
+.BR dlpi_info (3DLPI),
+.BR dlpi_open (3DLPI),
+.BR libdlpi (3LIB),
+.BR dlpi (4P),
+.BR attributes (7)
diff --git a/usr/src/man/man3dlpi/dlpi_set_physaddr.3dlpi b/usr/src/man/man3dlpi/dlpi_set_physaddr.3dlpi
index 54d99b2b8e..5359be50c3 100644
--- a/usr/src/man/man3dlpi/dlpi_set_physaddr.3dlpi
+++ b/usr/src/man/man3dlpi/dlpi_set_physaddr.3dlpi
@@ -73,7 +73,7 @@ Invalid argument
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -91,4 +91,6 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBdlpi_get_physaddr\fR(3DLPI), \fBlibdlpi\fR(3LIB), \fBattributes\fR(5)
+.BR dlpi_get_physaddr (3DLPI),
+.BR libdlpi (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dlpi/dlpi_set_timeout.3dlpi b/usr/src/man/man3dlpi/dlpi_set_timeout.3dlpi
index e1ec338cc4..b5f6b55731 100644
--- a/usr/src/man/man3dlpi/dlpi_set_timeout.3dlpi
+++ b/usr/src/man/man3dlpi/dlpi_set_timeout.3dlpi
@@ -64,7 +64,7 @@ Invalid \fBDLPI\fR handle
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -82,4 +82,5 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibdlpi\fR(3LIB), \fBattributes\fR(5)
+.BR libdlpi (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dlpi/dlpi_strerror.3dlpi b/usr/src/man/man3dlpi/dlpi_strerror.3dlpi
index f6a3efd4ad..ee8fd76ff8 100644
--- a/usr/src/man/man3dlpi/dlpi_strerror.3dlpi
+++ b/usr/src/man/man3dlpi/dlpi_strerror.3dlpi
@@ -37,7 +37,7 @@ the error code is unknown, the string "Unknown DLPI error" is returned.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -55,4 +55,5 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibdlpi\fR(3LIB), \fBattributes\fR(5)
+.BR libdlpi (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dlpi/dlpi_unbind.3dlpi b/usr/src/man/man3dlpi/dlpi_unbind.3dlpi
index 7ab205f793..2f090d18e3 100644
--- a/usr/src/man/man3dlpi/dlpi_unbind.3dlpi
+++ b/usr/src/man/man3dlpi/dlpi_unbind.3dlpi
@@ -63,7 +63,7 @@ Invalid DLPI handle
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -81,4 +81,6 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBdlpi_bind\fR(3DLPI), \fBlibdlpi\fR(3LIB), \fBattributes\fR(5)
+.BR dlpi_bind (3DLPI),
+.BR libdlpi (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dlpi/dlpi_walk.3dlpi b/usr/src/man/man3dlpi/dlpi_walk.3dlpi
index 771439c984..076cd2f877 100644
--- a/usr/src/man/man3dlpi/dlpi_walk.3dlpi
+++ b/usr/src/man/man3dlpi/dlpi_walk.3dlpi
@@ -77,7 +77,7 @@ either when all links have been visited or when \fIfn\fR() returns
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -95,4 +95,5 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibdlpi\fR(3LIB), \fBattributes\fR(5)
+.BR libdlpi (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3dns_sd/DNSServiceBrowse.3dns_sd b/usr/src/man/man3dns_sd/DNSServiceBrowse.3dns_sd
index fe63d8e6fe..a0fdd79895 100644
--- a/usr/src/man/man3dns_sd/DNSServiceBrowse.3dns_sd
+++ b/usr/src/man/man3dns_sd/DNSServiceBrowse.3dns_sd
@@ -84,7 +84,7 @@ indicate an error has occurred. When an error is returned by
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -103,4 +103,4 @@ MT-Level Safe
.sp
.LP
\fBDNSServiceRefDeallocate\fR(3DNS_SD), \fBDNSServiceResolve\fR(3DNS_SD),
-\fBattributes\fR(5)
+.BR attributes (7)
diff --git a/usr/src/man/man3dns_sd/DNSServiceConstructFullName.3dns_sd b/usr/src/man/man3dns_sd/DNSServiceConstructFullName.3dns_sd
index f19bc681ff..2bbef704f7 100644
--- a/usr/src/man/man3dns_sd/DNSServiceConstructFullName.3dns_sd
+++ b/usr/src/man/man3dns_sd/DNSServiceConstructFullName.3dns_sd
@@ -25,7 +25,7 @@ escaped full domain name.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -43,4 +43,4 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBattributes\fR(5)
+.BR attributes (7)
diff --git a/usr/src/man/man3dns_sd/DNSServiceCreateConnection.3dns_sd b/usr/src/man/man3dns_sd/DNSServiceCreateConnection.3dns_sd
index 9a5665d44b..238409ea4d 100644
--- a/usr/src/man/man3dns_sd/DNSServiceCreateConnection.3dns_sd
+++ b/usr/src/man/man3dns_sd/DNSServiceCreateConnection.3dns_sd
@@ -110,7 +110,7 @@ The \fBDNSServiceCreateConnection\fR function returns
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -129,4 +129,4 @@ MT-Level Safe
.sp
.LP
\fBDNSServiceRefDeallocate\fR(3DNS_SD), \fBDNSServiceRegister\fR(3DNS_SD),
-\fBattributes\fR(5)
+.BR attributes (7)
diff --git a/usr/src/man/man3dns_sd/DNSServiceEnumerateDomains.3dns_sd b/usr/src/man/man3dns_sd/DNSServiceEnumerateDomains.3dns_sd
index dcaf375e99..8aa6868c84 100644
--- a/usr/src/man/man3dns_sd/DNSServiceEnumerateDomains.3dns_sd
+++ b/usr/src/man/man3dns_sd/DNSServiceEnumerateDomains.3dns_sd
@@ -76,7 +76,7 @@ errors are delivered to the callback.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -94,4 +94,4 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBDNSServiceRefDeallocate\fR(3DNS_SD), \fBattributes\fR(5)
+\fBDNSServiceRefDeallocate\fR(3DNS_SD), \fBattributes\fR(7)
diff --git a/usr/src/man/man3dns_sd/DNSServiceProcessResult.3dns_sd b/usr/src/man/man3dns_sd/DNSServiceProcessResult.3dns_sd
index 8b308a3b75..d67985ad5f 100644
--- a/usr/src/man/man3dns_sd/DNSServiceProcessResult.3dns_sd
+++ b/usr/src/man/man3dns_sd/DNSServiceProcessResult.3dns_sd
@@ -36,7 +36,7 @@ indicate the specific failure that has occurred.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -55,4 +55,4 @@ MT-Level Safe
.sp
.LP
\fBDNSServiceBrowse\fR(3DNS_SD), \fBDNSServiceRegister\fR(3DNS_SD),
-\fBattributes\fR(5)
+.BR attributes (7)
diff --git a/usr/src/man/man3dns_sd/DNSServiceQueryRecord.3dns_sd b/usr/src/man/man3dns_sd/DNSServiceQueryRecord.3dns_sd
index 0e5b950095..3c528f1573 100644
--- a/usr/src/man/man3dns_sd/DNSServiceQueryRecord.3dns_sd
+++ b/usr/src/man/man3dns_sd/DNSServiceQueryRecord.3dns_sd
@@ -87,7 +87,7 @@ indicate the specific failure that occurred.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -106,4 +106,4 @@ MT-Level Safe
.sp
.LP
\fBDNSServiceBrowse\fR(3DNS_SD), \fBDNSServiceRegister\fR(3DNS_SD),
-\fBDNSServiceResolve\fR(3DNS_SD), \fBattributes\fR(5)
+\fBDNSServiceResolve\fR(3DNS_SD), \fBattributes\fR(7)
diff --git a/usr/src/man/man3dns_sd/DNSServiceReconfirmRecord.3dns_sd b/usr/src/man/man3dns_sd/DNSServiceReconfirmRecord.3dns_sd
index 616826c642..1cfc2599ea 100644
--- a/usr/src/man/man3dns_sd/DNSServiceReconfirmRecord.3dns_sd
+++ b/usr/src/man/man3dns_sd/DNSServiceReconfirmRecord.3dns_sd
@@ -33,7 +33,7 @@ The \fBDNSServiceReconfirmRecord()\fR function returns
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -53,4 +53,4 @@ MT-Level Safe
.LP
\fBDNSServiceBrowse\fR(3DNS_SD), \fBDNSServiceQueryRecord\fR(3DNS_SD),
\fBDNSServiceRegister\fR(3DNS_SD), \fBDNSServiceResolve\fR(3DNS_SD),
-\fBattributes\fR(5)
+.BR attributes (7)
diff --git a/usr/src/man/man3dns_sd/DNSServiceRefDeallocate.3dns_sd b/usr/src/man/man3dns_sd/DNSServiceRefDeallocate.3dns_sd
index d313aabb83..bdb005a57c 100644
--- a/usr/src/man/man3dns_sd/DNSServiceRefDeallocate.3dns_sd
+++ b/usr/src/man/man3dns_sd/DNSServiceRefDeallocate.3dns_sd
@@ -25,7 +25,7 @@ using the \fBDNSServiceRef\fR are also terminated.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -44,4 +44,4 @@ MT-Level Safe
.sp
.LP
\fBDNSServiceBrowse\fR(3DNS_SD), \fBDNSServiceRegister\fR(3DNS_SD),
-\fBattributes\fR(5)
+.BR attributes (7)
diff --git a/usr/src/man/man3dns_sd/DNSServiceRefSockFD.3dns_sd b/usr/src/man/man3dns_sd/DNSServiceRefSockFD.3dns_sd
index 931171832d..73712ceae7 100644
--- a/usr/src/man/man3dns_sd/DNSServiceRefSockFD.3dns_sd
+++ b/usr/src/man/man3dns_sd/DNSServiceRefSockFD.3dns_sd
@@ -34,7 +34,7 @@ The underlying UNIX domain socket descriptor of the \fBDNSServiceRef\fR or
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -53,4 +53,4 @@ MT-Level Safe
.sp
.LP
\fBDNSServiceBrowse\fR(3DNS_SD), \fBDNSServiceRegister\fR(3DNS_SD),
-\fBattributes\fR(5)
+.BR attributes (7)
diff --git a/usr/src/man/man3dns_sd/DNSServiceRegister.3dns_sd b/usr/src/man/man3dns_sd/DNSServiceRegister.3dns_sd
index c385672c1f..223acc9271 100644
--- a/usr/src/man/man3dns_sd/DNSServiceRegister.3dns_sd
+++ b/usr/src/man/man3dns_sd/DNSServiceRegister.3dns_sd
@@ -104,7 +104,7 @@ registration, any subsequent asynchronous errors are delivered to the callback.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -122,4 +122,4 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBDNSServiceRefDeallocate\fR(3DNS_SD), \fBattributes\fR(5)
+\fBDNSServiceRefDeallocate\fR(3DNS_SD), \fBattributes\fR(7)
diff --git a/usr/src/man/man3dns_sd/DNSServiceResolve.3dns_sd b/usr/src/man/man3dns_sd/DNSServiceResolve.3dns_sd
index 8aa6ebbbc2..390df12c64 100644
--- a/usr/src/man/man3dns_sd/DNSServiceResolve.3dns_sd
+++ b/usr/src/man/man3dns_sd/DNSServiceResolve.3dns_sd
@@ -82,7 +82,7 @@ indicate an error has occurred. When an error is returned by
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -101,4 +101,4 @@ MT-Level Safe
.sp
.LP
\fBDNSServiceBrowse\fR(3DNS_SD), \fBDNSServiceRefDeallocate\fR(3DNS_SD),
-\fBattributes\fR(5)
+.BR attributes (7)
diff --git a/usr/src/man/man3dns_sd/TXTRecordCreate.3dns_sd b/usr/src/man/man3dns_sd/TXTRecordCreate.3dns_sd
index e77e64ced6..46054856f6 100644
--- a/usr/src/man/man3dns_sd/TXTRecordCreate.3dns_sd
+++ b/usr/src/man/man3dns_sd/TXTRecordCreate.3dns_sd
@@ -83,7 +83,7 @@ and port number, as part of the service registration.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -101,4 +101,4 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBattributes\fR(5)
+.BR attributes (7)
diff --git a/usr/src/man/man3elf/elf.3elf b/usr/src/man/man3elf/elf.3elf
index 8bab94270b..824715814d 100644
--- a/usr/src/man/man3elf/elf.3elf
+++ b/usr/src/man/man3elf/elf.3elf
@@ -354,7 +354,7 @@ failure()
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -372,22 +372,39 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBar.h\fR(3HEAD), \fBelf32_checksum\fR(3ELF), \fBelf32_fsize\fR(3ELF),
-\fBelf32_getshdr\fR(3ELF), \fBelf32_xlatetof\fR(3ELF), \fBelf_begin\fR(3ELF),
-\fBelf_cntl\fR(3ELF), \fBelf_errmsg\fR(3ELF), \fBelf_fill\fR(3ELF),
-\fBelf_getarhdr\fR(3ELF), \fBelf_getarsym\fR(3ELF), \fBelf_getbase\fR(3ELF),
-\fBelf_getdata\fR(3ELF), \fBelf_getident\fR(3ELF), \fBelf_getscn\fR(3ELF),
-\fBelf_hash\fR(3ELF), \fBelf_kind\fR(3ELF), \fBelf_memory\fR(3ELF),
-\fBelf_rawfile\fR(3ELF), \fBelf_strptr\fR(3ELF), \fBelf_update\fR(3ELF),
-\fBelf_version\fR(3ELF), \fBgelf\fR(3ELF), \fBlibelf\fR(3LIB),
-\fBattributes\fR(5), \fBlfcompile\fR(5)
+.BR elf32_checksum (3ELF),
+.BR elf32_fsize (3ELF),
+.BR elf32_getshdr (3ELF),
+.BR elf32_xlatetof (3ELF),
+.BR elf_begin (3ELF),
+.BR elf_cntl (3ELF),
+.BR elf_errmsg (3ELF),
+.BR elf_fill (3ELF),
+.BR elf_getarhdr (3ELF),
+.BR elf_getarsym (3ELF),
+.BR elf_getbase (3ELF),
+.BR elf_getdata (3ELF),
+.BR elf_getident (3ELF),
+.BR elf_getscn (3ELF),
+.BR elf_hash (3ELF),
+.BR elf_kind (3ELF),
+.BR elf_memory (3ELF),
+.BR elf_rawfile (3ELF),
+.BR elf_strptr (3ELF),
+.BR elf_update (3ELF),
+.BR elf_version (3ELF),
+.BR gelf (3ELF),
+.BR ar.h (3HEAD),
+.BR libelf (3LIB),
+.BR attributes (7),
+.BR lfcompile (7)
.sp
.LP
\fIANSI C Programmer's Guide\fR
.SS "SPARC only"
.sp
.LP
-\fBa.out\fR(4)
+.BR a.out (5)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3elf/elf32_checksum.3elf b/usr/src/man/man3elf/elf32_checksum.3elf
index 0dd53ad064..a84e297f6c 100644
--- a/usr/src/man/man3elf/elf32_checksum.3elf
+++ b/usr/src/man/man3elf/elf32_checksum.3elf
@@ -35,7 +35,7 @@ its value is not affected by utilities such as \fBstrip\fR(1).
For the 64\(mibit class, replace 32 with 64 as appropriate.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -52,5 +52,8 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBelf\fR(3ELF), \fBelf_version\fR(3ELF), \fBgelf\fR(3ELF), \fBlibelf\fR(3LIB),
-\fBattributes\fR(5)
+.BR elf (3ELF),
+.BR elf_version (3ELF),
+.BR gelf (3ELF),
+.BR libelf (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3elf/elf32_fsize.3elf b/usr/src/man/man3elf/elf32_fsize.3elf
index 36a03e3bce..52d8a839ea 100644
--- a/usr/src/man/man3elf/elf32_fsize.3elf
+++ b/usr/src/man/man3elf/elf32_fsize.3elf
@@ -53,7 +53,7 @@ For the 64\(mibit class, replace 32 with 64 as appropriate.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -71,5 +71,8 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBelf\fR(3ELF), \fBelf32_xlatetof\fR(3ELF), \fBelf_version\fR(3ELF),
-\fBlibelf\fR(3LIB), \fBattributes\fR(5)
+.BR elf (3ELF),
+.BR elf32_xlatetof (3ELF),
+.BR elf_version (3ELF),
+.BR libelf (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3elf/elf32_getehdr.3elf b/usr/src/man/man3elf/elf32_getehdr.3elf
index e75c92feaa..d386c3e19d 100644
--- a/usr/src/man/man3elf/elf32_getehdr.3elf
+++ b/usr/src/man/man3elf/elf32_getehdr.3elf
@@ -85,7 +85,7 @@ Extended Sections.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -103,6 +103,11 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBelf\fR(3ELF), \fBelf_begin\fR(3ELF), \fBelf_flagdata\fR(3ELF),
-\fBelf_getident\fR(3ELF), \fBelf_getshnum\fR(3ELF),
-\fBelf_getshstrndx\fR(3ELF), \fBlibelf\fR(3LIB), \fBattributes\fR(5)
+.BR elf (3ELF),
+.BR elf_begin (3ELF),
+.BR elf_flagdata (3ELF),
+.BR elf_getident (3ELF),
+.BR elf_getshnum (3ELF),
+.BR elf_getshstrndx (3ELF),
+.BR libelf (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3elf/elf32_getphdr.3elf b/usr/src/man/man3elf/elf32_getphdr.3elf
index 049b8f0d93..c1f9dd5b0f 100644
--- a/usr/src/man/man3elf/elf32_getphdr.3elf
+++ b/usr/src/man/man3elf/elf32_getphdr.3elf
@@ -100,7 +100,7 @@ before creating the program header table.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -118,5 +118,9 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBelf\fR(3ELF), \fBelf32_getehdr\fR(3ELF), \fBelf_begin\fR(3ELF),
-\fBelf_flagdata\fR(3ELF), \fBlibelf\fR(3LIB), \fBattributes\fR(5)
+.BR elf (3ELF),
+.BR elf32_getehdr (3ELF),
+.BR elf_begin (3ELF),
+.BR elf_flagdata (3ELF),
+.BR libelf (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3elf/elf32_getshdr.3elf b/usr/src/man/man3elf/elf32_getshdr.3elf
index 62e2878e58..369e2edba4 100644
--- a/usr/src/man/man3elf/elf32_getshdr.3elf
+++ b/usr/src/man/man3elf/elf32_getshdr.3elf
@@ -75,7 +75,7 @@ file's \fBELF\fR header before creating sections.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -93,5 +93,9 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBelf\fR(3ELF), \fBelf_flagdata\fR(3ELF), \fBelf_getscn\fR(3ELF),
-\fBelf_strptr\fR(3ELF), \fBlibelf\fR(3LIB), \fBattributes\fR(5)
+.BR elf (3ELF),
+.BR elf_flagdata (3ELF),
+.BR elf_getscn (3ELF),
+.BR elf_strptr (3ELF),
+.BR libelf (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3elf/elf32_xlatetof.3elf b/usr/src/man/man3elf/elf32_xlatetof.3elf
index 7e113bddc8..d7f846b634 100644
--- a/usr/src/man/man3elf/elf32_xlatetof.3elf
+++ b/usr/src/man/man3elf/elf32_xlatetof.3elf
@@ -133,7 +133,7 @@ For the 64\(mibit class, replace 32 with 64 as appropriate.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -151,5 +151,9 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBelf\fR(3ELF), \fBelf32_fsize\fR(3ELF), \fBelf_getdata\fR(3ELF),
-\fBelf_getident\fR(3ELF), \fBlibelf\fR(3LIB), \fBattributes\fR(5)
+.BR elf (3ELF),
+.BR elf32_fsize (3ELF),
+.BR elf_getdata (3ELF),
+.BR elf_getident (3ELF),
+.BR libelf (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3elf/elf_begin.3elf b/usr/src/man/man3elf/elf_begin.3elf
index ea182651de..31c98742cd 100644
--- a/usr/src/man/man3elf/elf_begin.3elf
+++ b/usr/src/man/man3elf/elf_begin.3elf
@@ -353,7 +353,7 @@ not obtain the performance advantages of \fBmmap\fR(2).
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -371,9 +371,22 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBcreat\fR(2), \fBlseek\fR(2), \fBmmap\fR(2), \fBopen\fR(2),
-\fBar.h\fR(3HEAD), \fBelf\fR(3ELF), \fBelf32_getehdr\fR(3ELF),
-\fBelf_cntl\fR(3ELF), \fBelf_getarhdr\fR(3ELF), \fBelf_getarsym\fR(3ELF),
-\fBelf_getbase\fR(3ELF), \fBelf_getdata\fR(3ELF), \fBelf_getscn\fR(3ELF),
-\fBelf_kind\fR(3ELF), \fBelf_rawfile\fR(3ELF), \fBelf_update\fR(3ELF),
-\fBelf_version\fR(3ELF), \fBlibelf\fR(3LIB), \fBattributes\fR(5)
+.BR creat (2),
+.BR lseek (2),
+.BR mmap (2),
+.BR open (2),
+.BR elf (3ELF),
+.BR elf32_getehdr (3ELF),
+.BR elf_cntl (3ELF),
+.BR elf_getarhdr (3ELF),
+.BR elf_getarsym (3ELF),
+.BR elf_getbase (3ELF),
+.BR elf_getdata (3ELF),
+.BR elf_getscn (3ELF),
+.BR elf_kind (3ELF),
+.BR elf_rawfile (3ELF),
+.BR elf_update (3ELF),
+.BR elf_version (3ELF),
+.BR ar.h (3HEAD),
+.BR libelf (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3elf/elf_cntl.3elf b/usr/src/man/man3elf/elf_cntl.3elf
index d382cdc07e..552fa2dc8a 100644
--- a/usr/src/man/man3elf/elf_cntl.3elf
+++ b/usr/src/man/man3elf/elf_cntl.3elf
@@ -66,7 +66,7 @@ If \fBelf_cntl()\fR succeeds, it returns \fB0\fR. Otherwise \fIelf\fR was
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -84,8 +84,12 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBelf\fR(3ELF), \fBelf_begin\fR(3ELF), \fBelf_getdata\fR(3ELF),
-\fBelf_rawfile\fR(3ELF), \fBlibelf\fR(3LIB), \fBattributes\fR(5)
+.BR elf (3ELF),
+.BR elf_begin (3ELF),
+.BR elf_getdata (3ELF),
+.BR elf_rawfile (3ELF),
+.BR libelf (3LIB),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3elf/elf_errmsg.3elf b/usr/src/man/man3elf/elf_errmsg.3elf
index a795b7d5ff..7245c83ab0 100644
--- a/usr/src/man/man3elf/elf_errmsg.3elf
+++ b/usr/src/man/man3elf/elf_errmsg.3elf
@@ -65,7 +65,7 @@ while (more_to_do)
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -83,4 +83,6 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBelf\fR(3ELF), \fBlibelf\fR(3LIB), \fBattributes\fR(5)
+.BR elf (3ELF),
+.BR libelf (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3elf/elf_fill.3elf b/usr/src/man/man3elf/elf_fill.3elf
index e1a2e36fc9..5084758e13 100644
--- a/usr/src/man/man3elf/elf_fill.3elf
+++ b/usr/src/man/man3elf/elf_fill.3elf
@@ -27,7 +27,7 @@ See \fBelf_getdata\fR(3ELF) for more information about these holes.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -45,8 +45,12 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBelf\fR(3ELF), \fBelf_flagdata\fR(3ELF), \fBelf_getdata\fR(3ELF),
-\fBelf_update\fR(3ELF), \fBlibelf\fR(3LIB), \fBattributes\fR(5)
+.BR elf (3ELF),
+.BR elf_flagdata (3ELF),
+.BR elf_getdata (3ELF),
+.BR elf_update (3ELF),
+.BR libelf (3LIB),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3elf/elf_flagdata.3elf b/usr/src/man/man3elf/elf_flagdata.3elf
index 66f730e592..094f3de334 100644
--- a/usr/src/man/man3elf/elf_flagdata.3elf
+++ b/usr/src/man/man3elf/elf_flagdata.3elf
@@ -131,7 +131,7 @@ elf_flagehdr(elf, ELF_C_SET, ELF_F_DIRTY);\fR
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -149,5 +149,8 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBelf\fR(3ELF), \fBelf32_getehdr\fR(3ELF), \fBelf_getdata\fR(3ELF),
-\fBelf_update\fR(3ELF), \fBattributes\fR(5)
+.BR elf (3ELF),
+.BR elf32_getehdr (3ELF),
+.BR elf_getdata (3ELF),
+.BR elf_update (3ELF),
+.BR attributes (7)
diff --git a/usr/src/man/man3elf/elf_getarhdr.3elf b/usr/src/man/man3elf/elf_getarhdr.3elf
index 4263898e03..e352c5d7bf 100644
--- a/usr/src/man/man3elf/elf_getarhdr.3elf
+++ b/usr/src/man/man3elf/elf_getarhdr.3elf
@@ -80,7 +80,7 @@ this causes the library to set \fBar_name\fR to a null pointer, the
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -98,5 +98,9 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBar.h\fR(3HEAD), \fBelf\fR(3ELF), \fBelf_begin\fR(3ELF),
-\fBelf_getarsym\fR(3ELF), \fBlibelf\fR(3LIB), \fBattributes\fR(5)
+.BR elf (3ELF),
+.BR elf_begin (3ELF),
+.BR elf_getarsym (3ELF),
+.BR ar.h (3HEAD),
+.BR libelf (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3elf/elf_getarsym.3elf b/usr/src/man/man3elf/elf_getarsym.3elf
index 3db3f95f56..741e054633 100644
--- a/usr/src/man/man3elf/elf_getarsym.3elf
+++ b/usr/src/man/man3elf/elf_getarsym.3elf
@@ -79,7 +79,7 @@ The hash value returned is guaranteed not to be the bit pattern of all ones (
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -97,6 +97,10 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBar.h\fR(3HEAD), \fBelf\fR(3ELF), \fBelf_begin\fR(3ELF),
-\fBelf_getarhdr\fR(3ELF), \fBelf_hash\fR(3ELF), \fBlibelf\fR(3LIB),
-\fBattributes\fR(5)
+.BR elf (3ELF),
+.BR elf_begin (3ELF),
+.BR elf_getarhdr (3ELF),
+.BR elf_hash (3ELF),
+.BR ar.h (3HEAD),
+.BR libelf (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3elf/elf_getbase.3elf b/usr/src/man/man3elf/elf_getbase.3elf
index 121ac5b9f6..d54e868675 100644
--- a/usr/src/man/man3elf/elf_getbase.3elf
+++ b/usr/src/man/man3elf/elf_getbase.3elf
@@ -27,7 +27,7 @@ the beginning of the archive member header.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -45,5 +45,8 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBar.h\fR(3HEAD), \fBelf\fR(3ELF), \fBelf_begin\fR(3ELF), \fBlibelf\fR(3LIB),
-\fBattributes\fR(5)
+.BR elf (3ELF),
+.BR elf_begin (3ELF),
+.BR ar.h (3HEAD),
+.BR libelf (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3elf/elf_getdata.3elf b/usr/src/man/man3elf/elf_getdata.3elf
index f75baa59e6..2448c451da 100644
--- a/usr/src/man/man3elf/elf_getdata.3elf
+++ b/usr/src/man/man3elf/elf_getdata.3elf
@@ -286,7 +286,7 @@ table, and \fBdata->d_size\fR holds the string table's size in bytes.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -304,9 +304,19 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBelf\fR(3ELF), \fBelf32_getehdr\fR(3ELF), \fBelf64_getehdr\fR(3ELF),
-\fBelf32_getshdr\fR(3ELF), \fBelf64_getshdr\fR(3ELF),
-\fBelf32_xlatetof\fR(3ELF), \fBelf64_xlatetof\fR(3ELF), \fBelf_cntl\fR(3ELF),
-\fBelf_fill\fR(3ELF), \fBelf_flagdata\fR(3ELF), \fBelf_getscn\fR(3ELF),
-\fBelf_rawfile\fR(3ELF), \fBelf_strptr\fR(3ELF), \fBelf_version\fR(3ELF),
-\fBlibelf\fR(3LIB), \fBattributes\fR(5)
+.BR elf (3ELF),
+.BR elf32_getehdr (3ELF),
+.BR elf32_getshdr (3ELF),
+.BR elf32_xlatetof (3ELF),
+.BR elf64_getehdr (3ELF),
+.BR elf64_getshdr (3ELF),
+.BR elf64_xlatetof (3ELF),
+.BR elf_cntl (3ELF),
+.BR elf_fill (3ELF),
+.BR elf_flagdata (3ELF),
+.BR elf_getscn (3ELF),
+.BR elf_rawfile (3ELF),
+.BR elf_strptr (3ELF),
+.BR elf_version (3ELF),
+.BR libelf (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3elf/elf_getident.3elf b/usr/src/man/man3elf/elf_getident.3elf
index ee6fc5cbe4..05d3f4b4f1 100644
--- a/usr/src/man/man3elf/elf_getident.3elf
+++ b/usr/src/man/man3elf/elf_getident.3elf
@@ -164,7 +164,7 @@ Upon successful completion, the \fBelf_getphnum()\fR, \fBelf_getshnum()\fR, and
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -188,9 +188,15 @@ The \fBelf_getident()\fR, \fBelf_getphdrnum()\fR, \fBelf_getshdrnum()\fR, and
.SH SEE ALSO
.sp
.LP
-\fBelf\fR(3ELF), \fBelf32_getehdr\fR(3ELF), \fBelf_begin\fR(3ELF),
-\fBelf_kind\fR(3ELF), \fBelf_newscn\fR(3ELF), \fBelf_rawfile\fR(3ELF),
-\fBelf_update\fR(3ELF), \fBlibelf\fR(3LIB), \fBattributes\fR(5)
+.BR elf (3ELF),
+.BR elf32_getehdr (3ELF),
+.BR elf_begin (3ELF),
+.BR elf_kind (3ELF),
+.BR elf_newscn (3ELF),
+.BR elf_rawfile (3ELF),
+.BR elf_update (3ELF),
+.BR libelf (3LIB),
+.BR attributes (7)
.sp
.LP
\fILinker and Libraries Guide\fR
diff --git a/usr/src/man/man3elf/elf_getscn.3elf b/usr/src/man/man3elf/elf_getscn.3elf
index bd65b6b023..b72ffd379a 100644
--- a/usr/src/man/man3elf/elf_getscn.3elf
+++ b/usr/src/man/man3elf/elf_getscn.3elf
@@ -100,7 +100,7 @@ while ((scn = elf_nextscn(elf, scn)) != 0)
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -118,6 +118,11 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBelf\fR(3ELF), \fBelf32_getehdr\fR(3ELF), \fBelf32_getshdr\fR(3ELF),
-\fBelf_begin\fR(3ELF), \fBelf_flagdata\fR(3ELF), \fBelf_getdata\fR(3ELF),
-\fBlibelf\fR(3LIB), \fBattributes\fR(5)
+.BR elf (3ELF),
+.BR elf32_getehdr (3ELF),
+.BR elf32_getshdr (3ELF),
+.BR elf_begin (3ELF),
+.BR elf_flagdata (3ELF),
+.BR elf_getdata (3ELF),
+.BR libelf (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3elf/elf_hash.3elf b/usr/src/man/man3elf/elf_hash.3elf
index 3b99e6ae6a..80dfcb33da 100644
--- a/usr/src/man/man3elf/elf_hash.3elf
+++ b/usr/src/man/man3elf/elf_hash.3elf
@@ -37,7 +37,7 @@ returned is guaranteed not to be the bit pattern of all ones ( \fB~0UL\fR).
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -55,5 +55,8 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBelf\fR(3ELF), \fBelf32_xlatetof\fR(3ELF), \fBelf_getdata\fR(3ELF),
-\fBlibelf\fR(3LIB), \fBattributes\fR(5)
+.BR elf (3ELF),
+.BR elf32_xlatetof (3ELF),
+.BR elf_getdata (3ELF),
+.BR libelf (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3elf/elf_kind.3elf b/usr/src/man/man3elf/elf_kind.3elf
index c3166de41e..3b7adf9489 100644
--- a/usr/src/man/man3elf/elf_kind.3elf
+++ b/usr/src/man/man3elf/elf_kind.3elf
@@ -70,7 +70,7 @@ return \fBELF_K_NONE\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -88,6 +88,10 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBar.h\fR(3HEAD), \fBelf\fR(3ELF), \fBelf32_getehdr\fR(3ELF),
-\fBelf_begin\fR(3ELF), \fBelf_getident\fR(3ELF), \fBlibelf\fR(3LIB),
-\fBattributes\fR(5)
+.BR elf (3ELF),
+.BR elf32_getehdr (3ELF),
+.BR elf_begin (3ELF),
+.BR elf_getident (3ELF),
+.BR ar.h (3HEAD),
+.BR libelf (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3elf/elf_rawfile.3elf b/usr/src/man/man3elf/elf_rawfile.3elf
index c5c32b9bc0..63955bd023 100644
--- a/usr/src/man/man3elf/elf_rawfile.3elf
+++ b/usr/src/man/man3elf/elf_rawfile.3elf
@@ -45,7 +45,7 @@ stored through \fIptr\fR, if \fIptr\fR is non-null.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -63,9 +63,15 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBelf\fR(3ELF), \fBelf32_getehdr\fR(3ELF), \fBelf_begin\fR(3ELF),
-\fBelf_cntl\fR(3ELF), \fBelf_getdata\fR(3ELF), \fBelf_getident\fR(3ELF),
-\fBelf_kind\fR(3ELF), \fBlibelf\fR(3LIB), \fBattributes\fR(5)
+.BR elf (3ELF),
+.BR elf32_getehdr (3ELF),
+.BR elf_begin (3ELF),
+.BR elf_cntl (3ELF),
+.BR elf_getdata (3ELF),
+.BR elf_getident (3ELF),
+.BR elf_kind (3ELF),
+.BR libelf (3LIB),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3elf/elf_strptr.3elf b/usr/src/man/man3elf/elf_strptr.3elf
index b4de9cb6eb..0c82ad8e95 100644
--- a/usr/src/man/man3elf/elf_strptr.3elf
+++ b/usr/src/man/man3elf/elf_strptr.3elf
@@ -55,7 +55,7 @@ while ((scn = elf_nextscn(elf, scn)) != 0) {
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -73,8 +73,12 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBelf\fR(3ELF), \fBelf32_getshdr\fR(3ELF), \fBelf32_xlatetof\fR(3ELF),
-\fBelf_getdata\fR(3ELF), \fBlibelf\fR(3LIB), \fBattributes\fR(5)
+.BR elf (3ELF),
+.BR elf32_getshdr (3ELF),
+.BR elf32_xlatetof (3ELF),
+.BR elf_getdata (3ELF),
+.BR libelf (3LIB),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3elf/elf_update.3elf b/usr/src/man/man3elf/elf_update.3elf
index cea8191c53..ff58a1f177 100644
--- a/usr/src/man/man3elf/elf_update.3elf
+++ b/usr/src/man/man3elf/elf_update.3elf
@@ -184,7 +184,7 @@ alignment of each buffer.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -202,10 +202,16 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBelf\fR(3ELF), \fBelf32_fsize\fR(3ELF), \fBelf32_getehdr\fR(3ELF),
-\fBelf32_getshdr\fR(3ELF), \fBelf32_xlatetof\fR(3ELF), \fBelf_begin\fR(3ELF),
-\fBelf_flagdata\fR(3ELF), \fBelf_getdata\fR(3ELF), \fBlibelf\fR(3LIB),
-\fBattributes\fR(5)
+.BR elf (3ELF),
+.BR elf32_fsize (3ELF),
+.BR elf32_getehdr (3ELF),
+.BR elf32_getshdr (3ELF),
+.BR elf32_xlatetof (3ELF),
+.BR elf_begin (3ELF),
+.BR elf_flagdata (3ELF),
+.BR elf_getdata (3ELF),
+.BR libelf (3LIB),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3elf/elf_version.3elf b/usr/src/man/man3elf/elf_version.3elf
index c244b3a3fb..fc7df033fa 100644
--- a/usr/src/man/man3elf/elf_version.3elf
+++ b/usr/src/man/man3elf/elf_version.3elf
@@ -59,7 +59,7 @@ older library:
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -77,8 +77,11 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBelf\fR(3ELF), \fBelf32_xlatetof\fR(3ELF), \fBelf_begin\fR(3ELF),
-\fBlibelf\fR(3LIB), \fBattributes\fR(5)
+.BR elf (3ELF),
+.BR elf32_xlatetof (3ELF),
+.BR elf_begin (3ELF),
+.BR libelf (3LIB),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3elf/gelf.3elf b/usr/src/man/man3elf/gelf.3elf
index cbddcc37e1..bfc1c07efd 100644
--- a/usr/src/man/man3elf/gelf.3elf
+++ b/usr/src/man/man3elf/gelf.3elf
@@ -593,7 +593,7 @@ shared object
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -611,12 +611,19 @@ MT Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBelf\fR(3ELF), \fBelf32_checksum\fR(3ELF), \fBelf32_fsize\fR(3ELF),
-\fBelf32_getehdr\fR(3ELF), \fBelf32_newehdr\fR(3ELF),
-\fBelf32_getphdr\fR(3ELF), \fBelf32_newphdr\fR(3ELF),
-\fBelf32_getshdr\fR(3ELF), \fBelf32_xlatetof\fR(3ELF),
-\fBelf32_xlatetom\fR(3ELF), \fBelf_errno\fR(3ELF), \fBlibelf\fR(3LIB),
-\fBattributes\fR(5)
+.BR elf (3ELF),
+.BR elf32_checksum (3ELF),
+.BR elf32_fsize (3ELF),
+.BR elf32_getehdr (3ELF),
+.BR elf32_getphdr (3ELF),
+.BR elf32_getshdr (3ELF),
+.BR elf32_newehdr (3ELF),
+.BR elf32_newphdr (3ELF),
+.BR elf32_xlatetof (3ELF),
+.BR elf32_xlatetom (3ELF),
+.BR elf_errno (3ELF),
+.BR libelf (3LIB),
+.BR attributes (7)
.sp
.LP
\fILinker and Libraries Guide\fR
diff --git a/usr/src/man/man3elf/nlist.3elf b/usr/src/man/man3elf/nlist.3elf
index bb804a9a84..589fa4f28d 100644
--- a/usr/src/man/man3elf/nlist.3elf
+++ b/usr/src/man/man3elf/nlist.3elf
@@ -52,7 +52,7 @@ contain a valid name list.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -70,6 +70,11 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBelf\fR(3ELF), \fBkvm_nlist\fR(3KVM), \fBkvm_open\fR(3KVM),
-\fBlibelf\fR(3LIB), \fBa.out\fR(4), \fBattributes\fR(5), \fBksyms\fR(7D),
-\fBmem\fR(7D)
+.BR elf (3ELF),
+.BR kvm_nlist (3KVM),
+.BR kvm_open (3KVM),
+.BR libelf (3LIB),
+.BR ksyms (4D),
+.BR mem (4D),
+.BR a.out (5),
+.BR attributes (7)
diff --git a/usr/src/man/man3exacct/ea_error.3exacct b/usr/src/man/man3exacct/ea_error.3exacct
index 2f5e3d5c9c..7136337698 100644
--- a/usr/src/man/man3exacct/ea_error.3exacct
+++ b/usr/src/man/man3exacct/ea_error.3exacct
@@ -112,7 +112,7 @@ processed by this library.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -130,4 +130,6 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBread\fR(2), \fBlibexacct\fR(3LIB), \fBattributes\fR(5)
+.BR read (2),
+.BR libexacct (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3exacct/ea_open.3exacct b/usr/src/man/man3exacct/ea_open.3exacct
index fdfe7c9711..bed95d80fd 100644
--- a/usr/src/man/man3exacct/ea_open.3exacct
+++ b/usr/src/man/man3exacct/ea_open.3exacct
@@ -126,7 +126,7 @@ if (ea_open(&ef, "/var/adm/exacct/proc", NULL, EO_HEAD,
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -144,5 +144,8 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBea_error\fR(3EXACCT), \fBea_pack_object\fR(3EXACCT),
-\fBea_set_item\fR(3EXACCT), \fBlibexacct\fR(3LIB), \fBattributes\fR(5)
+.BR ea_error (3EXACCT),
+.BR ea_pack_object (3EXACCT),
+.BR ea_set_item (3EXACCT),
+.BR libexacct (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3exacct/ea_pack_object.3exacct b/usr/src/man/man3exacct/ea_pack_object.3exacct
index 7eb492d07b..e910751ed8 100644
--- a/usr/src/man/man3exacct/ea_pack_object.3exacct
+++ b/usr/src/man/man3exacct/ea_pack_object.3exacct
@@ -330,7 +330,7 @@ ea_close(&ef);
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -348,5 +348,9 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBread\fR(2), \fBea_error\fR(3EXACCT), \fBea_open\fR(3EXACCT),
-\fBea_set_item\fR(3EXACCT), \fBlibexacct\fR(3LIB), \fBattributes\fR(5)
+.BR read (2),
+.BR ea_error (3EXACCT),
+.BR ea_open (3EXACCT),
+.BR ea_set_item (3EXACCT),
+.BR libexacct (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3exacct/ea_set_item.3exacct b/usr/src/man/man3exacct/ea_set_item.3exacct
index ae25e87e8e..91bfe167c6 100644
--- a/usr/src/man/man3exacct/ea_set_item.3exacct
+++ b/usr/src/man/man3exacct/ea_set_item.3exacct
@@ -194,7 +194,7 @@ ea_set_item(&obj, EXT_UINT32 | EXC_DEFAULT | EXT_PROC_PID,
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -212,5 +212,9 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBread\fR(2), \fBea_error\fR(3EXACCT), \fBea_open\fR(3EXACCT),
-\fBea_pack_object\fR(3EXACCT), \fBlibexacct\fR(3LIB), \fBattributes\fR(5)
+.BR read (2),
+.BR ea_error (3EXACCT),
+.BR ea_open (3EXACCT),
+.BR ea_pack_object (3EXACCT),
+.BR libexacct (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3ext/NOTE.3ext b/usr/src/man/man3ext/NOTE.3ext
index acf8c8234b..c49a404bf7 100644
--- a/usr/src/man/man3ext/NOTE.3ext
+++ b/usr/src/man/man3ext/NOTE.3ext
@@ -145,7 +145,7 @@ be compatible with an ANSI C tokenizer and that unquoted parentheses be
balanced (so that the end of the annotation can be determined without intimate
knowledge of any particular annotation).
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -159,4 +159,5 @@ MT-Level Safe
.TE
.SH SEE ALSO
-\fBnote\fR(4), \fBattributes\fR(5)
+.BR note (5),
+.BR attributes (7)
diff --git a/usr/src/man/man3ext/SUNW_C_GetMechSession.3ext b/usr/src/man/man3ext/SUNW_C_GetMechSession.3ext
index 17f15d8794..8aa79acffb 100644
--- a/usr/src/man/man3ext/SUNW_C_GetMechSession.3ext
+++ b/usr/src/man/man3ext/SUNW_C_GetMechSession.3ext
@@ -165,7 +165,7 @@ not likely to exist on non-Solaris systems. They are provided as a convenience
to application programmers. Use of these functions will make the application
non-portable to other systems.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -181,7 +181,8 @@ MT-Level MT-Safe
.TE
.SH SEE ALSO
-\fBlibpkcs11\fR(3LIB), \fBattributes\fR(5)
+.BR libpkcs11 (3LIB),
+.BR attributes (7)
.sp
.LP
http://www.rsasecurity.com
diff --git a/usr/src/man/man3ext/crypt.3ext b/usr/src/man/man3ext/crypt.3ext
index c308815a69..2b8c15ed47 100644
--- a/usr/src/man/man3ext/crypt.3ext
+++ b/usr/src/man/man3ext/crypt.3ext
@@ -137,7 +137,7 @@ to \fBENOSYS\fR to indicate that the functionality is not available.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -153,8 +153,13 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBed\fR(1), \fBlogin\fR(1), \fBpasswd\fR(1), \fBvi\fR(1), \fBgetpass\fR(3C),
-\fBpasswd\fR(4), \fBattributes\fR(5)
+.BR ed (1),
+.BR login (1),
+.BR passwd (1),
+.BR vi (1),
+.BR getpass (3C),
+.BR passwd (5),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3ext/ecb_crypt.3ext b/usr/src/man/man3ext/ecb_crypt.3ext
index 63a099f75a..8b44740dcc 100644
--- a/usr/src/man/man3ext/ecb_crypt.3ext
+++ b/usr/src/man/man3ext/ecb_crypt.3ext
@@ -104,7 +104,7 @@ Bad parameter to routine.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -120,7 +120,8 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBcrypt\fR(3C), \fBattributes\fR(5)
+.BR crypt (3C),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3ext/efi_alloc_and_init.3ext b/usr/src/man/man3ext/efi_alloc_and_init.3ext
index ad4c21a543..79f9500688 100644
--- a/usr/src/man/man3ext/efi_alloc_and_init.3ext
+++ b/usr/src/man/man3ext/efi_alloc_and_init.3ext
@@ -227,7 +227,7 @@ used on smaller disks. The application should attempt the \fBread_vtoc()\fR or
\fBwrite_vtoc()\fR call, check for an error of \fBVT_ENOTSUP\fR, then call the
analogous EFI function.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -243,6 +243,12 @@ MT-Level Unsafe
.TE
.SH SEE ALSO
-\fBfmthard\fR(1M), \fBformat\fR(1M), \fBprtvtoc\fR(1M), \fBioctl\fR(2),
-\fBopen\fR(2), \fBlibefi\fR(3LIB), \fBread_vtoc\fR(3EXT), \fBattributes\fR(5),
-\fBdkio\fR(7I)
+.BR ioctl (2),
+.BR open (2),
+.BR read_vtoc (3EXT),
+.BR libefi (3LIB),
+.BR dkio (4I),
+.BR attributes (7),
+.BR fmthard (8),
+.BR format (8),
+.BR prtvtoc (8)
diff --git a/usr/src/man/man3ext/ld_support.3ext b/usr/src/man/man3ext/ld_support.3ext
index b242682b50..754f57b2e1 100644
--- a/usr/src/man/man3ext/ld_support.3ext
+++ b/usr/src/man/man3ext/ld_support.3ext
@@ -100,7 +100,7 @@ mechanism.
.SH SEE ALSO
.sp
.LP
-\fBld\fR(1)
+.BR ld (1)
.sp
.LP
\fILinker and Libraries Guide\fR
diff --git a/usr/src/man/man3ext/md4.3ext b/usr/src/man/man3ext/md4.3ext
index 8f9c8e1ccb..fb61aa21fc 100644
--- a/usr/src/man/man3ext/md4.3ext
+++ b/usr/src/man/man3ext/md4.3ext
@@ -113,7 +113,7 @@ AuthenticateMsg(unsigned char *auth_buffer, struct iovec
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -131,7 +131,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBlibmd\fR(3LIB)
+.BR libmd (3LIB)
.sp
.LP
RFC 1320
diff --git a/usr/src/man/man3ext/md5.3ext b/usr/src/man/man3ext/md5.3ext
index aea7c65c64..5339e274e5 100644
--- a/usr/src/man/man3ext/md5.3ext
+++ b/usr/src/man/man3ext/md5.3ext
@@ -138,7 +138,7 @@ int AuthenticateMsg(unsigned char *auth_buffer, unsigned
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -156,7 +156,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBlibmd5\fR(3LIB)
+.BR libmd5 (3LIB)
.sp
.LP
Rivest, R., The MD5 Message-Digest Algorithm, RFC 1321, April 1992.
diff --git a/usr/src/man/man3ext/read_vtoc.3ext b/usr/src/man/man3ext/read_vtoc.3ext
index ee55b325f8..2349f42124 100644
--- a/usr/src/man/man3ext/read_vtoc.3ext
+++ b/usr/src/man/man3ext/read_vtoc.3ext
@@ -143,7 +143,7 @@ the fields in the data structure.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -159,10 +159,15 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBfmthard\fR(1M), \fBformat\fR(1M), \fBprtvtoc\fR(1M), \fBioctl\fR(2),
-\fBefi_alloc_and_init\fR(3EXT), \fBattributes\fR(5), \fBdkio\fR(7I)
+.BR ioctl (2),
+.BR efi_alloc_and_init (3EXT),
+.BR dkio (4I),
+.BR attributes (7),
+.BR fmthard (8),
+.BR format (8),
+.BR prtvtoc (8)
.SH BUGS
.sp
.LP
The \fBwrite_vtoc()\fR function cannot write a \fBVTOC\fR on an unlabeled
-disk. Use \fBformat\fR(1M) for this purpose.
+disk. Use \fBformat\fR(8) for this purpose.
diff --git a/usr/src/man/man3ext/rtld_audit.3ext b/usr/src/man/man3ext/rtld_audit.3ext
index 82751d0d95..83da89e579 100644
--- a/usr/src/man/man3ext/rtld_audit.3ext
+++ b/usr/src/man/man3ext/rtld_audit.3ext
@@ -103,7 +103,7 @@ for a full description of the link auditing mechanism.
.SH SEE ALSO
.sp
.LP
-\fBld.so.1\fR(1)
+.BR ld.so.1 (1)
.sp
.LP
\fILinker and Libraries Guide\fR
diff --git a/usr/src/man/man3ext/rtld_db.3ext b/usr/src/man/man3ext/rtld_db.3ext
index 676bf88c23..7ef8a280c1 100644
--- a/usr/src/man/man3ext/rtld_db.3ext
+++ b/usr/src/man/man3ext/rtld_db.3ext
@@ -100,7 +100,7 @@ documented in \fBps_pread\fR(3PROC) and \fBproc_service\fR(3PROC).
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -118,8 +118,12 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBld.so.1\fR(1), \fBlibc_db\fR(3LIB), \fBlibrtld_db\fR(3LIB),
-\fBproc_service\fR(3PROC), \fBps_pread\fR(3PROC), \fBattributes\fR(5)
+.BR ld.so.1 (1),
+.BR libc_db (3LIB),
+.BR librtld_db (3LIB),
+.BR proc_service (3PROC),
+.BR ps_pread (3PROC),
+.BR attributes (7)
.sp
.LP
\fILinker and Libraries Guide\fR
diff --git a/usr/src/man/man3ext/sendfile.3ext b/usr/src/man/man3ext/sendfile.3ext
index 38f974987e..cc8d416ac9 100644
--- a/usr/src/man/man3ext/sendfile.3ext
+++ b/usr/src/man/man3ext/sendfile.3ext
@@ -142,7 +142,7 @@ A signal was caught during the write operation and no data was transferred.
.SH USAGE
.LP
The \fBsendfile()\fR function has a transitional interface for 64-bit file
-offsets. See \fBlf64\fR(5).
+offsets. See \fBlf64\fR(7).
.SH EXAMPLES
.LP
\fBExample 1 \fRSending a Buffer Over a Socket
@@ -250,7 +250,7 @@ while (len > 0) {
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -267,5 +267,9 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBopen\fR(2), \fBlibsendfile\fR(3LIB), \fBsendfilev\fR(3EXT),
-\fBsocket\fR(3SOCKET), \fBattributes\fR(5), \fBlf64\fR(5)
+.BR open (2),
+.BR sendfilev (3EXT),
+.BR libsendfile (3LIB),
+.BR socket (3SOCKET),
+.BR attributes (7),
+.BR lf64 (7)
diff --git a/usr/src/man/man3ext/sendfilev.3ext b/usr/src/man/man3ext/sendfilev.3ext
index 37678b67c3..6679356d05 100644
--- a/usr/src/man/man3ext/sendfilev.3ext
+++ b/usr/src/man/man3ext/sendfilev.3ext
@@ -222,7 +222,7 @@ The socket type is not supported.
.SH USAGE
.LP
The \fBsendfilev()\fR function has a transitional interface for 64-bit file
-offsets. See \fBlf64\fR(5).
+offsets. See \fBlf64\fR(7).
.SH EXAMPLES
.LP
The following example sends 2 vectors, one of HEADER data and a file of length
@@ -263,7 +263,7 @@ main (int argc, char *argv[]){
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -280,5 +280,9 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBopen\fR(2), \fBwritev\fR(2), \fBlibsendfile\fR(3LIB), \fBsendfile\fR(3EXT),
-\fBsocket\fR(3SOCKET), \fBattributes\fR(5)
+.BR open (2),
+.BR writev (2),
+.BR sendfile (3EXT),
+.BR libsendfile (3LIB),
+.BR socket (3SOCKET),
+.BR attributes (7)
diff --git a/usr/src/man/man3ext/sha1.3ext b/usr/src/man/man3ext/sha1.3ext
index a8ef472123..73fd624465 100644
--- a/usr/src/man/man3ext/sha1.3ext
+++ b/usr/src/man/man3ext/sha1.3ext
@@ -117,7 +117,7 @@ AuthenticateMsg(unsigned char *auth_buffer, struct iovec
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -135,7 +135,8 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBsha2\fR(3EXT), \fBlibmd\fR(3LIB)
+.BR sha2 (3EXT),
+.BR libmd (3LIB)
.sp
.LP
RFC 1374
diff --git a/usr/src/man/man3ext/sha2.3ext b/usr/src/man/man3ext/sha2.3ext
index ae49257dc1..49ba7c269e 100644
--- a/usr/src/man/man3ext/sha2.3ext
+++ b/usr/src/man/man3ext/sha2.3ext
@@ -212,7 +212,7 @@ AuthenticateMsg(unsigned char *auth_buffer, struct iovec
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -229,7 +229,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBlibmd\fR(3LIB)
+.BR libmd (3LIB)
.sp
.LP
FIPS 180-2
diff --git a/usr/src/man/man3ext/stdarg.3ext b/usr/src/man/man3ext/stdarg.3ext
index 7ebafdeaab..3bb8b67cbe 100644
--- a/usr/src/man/man3ext/stdarg.3ext
+++ b/usr/src/man/man3ext/stdarg.3ext
@@ -134,7 +134,7 @@ declaration such as
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -150,7 +150,9 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBvprintf\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR vprintf (3C),
+.BR attributes (7),
+.BR standards (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3ext/tsalarm_get.3ext b/usr/src/man/man3ext/tsalarm_get.3ext
index 7a6768aad0..642e293d9d 100644
--- a/usr/src/man/man3ext/tsalarm_get.3ext
+++ b/usr/src/man/man3ext/tsalarm_get.3ext
@@ -298,7 +298,7 @@ int main(int argc, char **argv) {
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -316,4 +316,5 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibtsalarm\fR(3LIB), \fBattributes\fR(5)
+.BR libtsalarm (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3ext/varargs.3ext b/usr/src/man/man3ext/varargs.3ext
index 733d1e695d..532185d9ce 100644
--- a/usr/src/man/man3ext/varargs.3ext
+++ b/usr/src/man/man3ext/varargs.3ext
@@ -98,7 +98,10 @@ va_dcl
.SH SEE ALSO
.sp
.LP
-\fBexec\fR(2), \fBprintf\fR(3C), \fBvprintf\fR(3C), \fBstdarg\fR(3EXT)
+.BR exec (2),
+.BR printf (3C),
+.BR vprintf (3C),
+.BR stdarg (3EXT)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3fcoe/FCOE_CreatePort.3fcoe b/usr/src/man/man3fcoe/FCOE_CreatePort.3fcoe
index 7c5f64cd62..00d663f365 100644
--- a/usr/src/man/man3fcoe/FCOE_CreatePort.3fcoe
+++ b/usr/src/man/man3fcoe/FCOE_CreatePort.3fcoe
@@ -191,7 +191,7 @@ The API call was successful.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -209,4 +209,5 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibfcoe\fR(3LIB), \fBattributes\fR(5)
+.BR libfcoe (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3fcoe/FCOE_DeletePort.3fcoe b/usr/src/man/man3fcoe/FCOE_DeletePort.3fcoe
index 9bbf8f33f5..14848f7fe9 100644
--- a/usr/src/man/man3fcoe/FCOE_DeletePort.3fcoe
+++ b/usr/src/man/man3fcoe/FCOE_DeletePort.3fcoe
@@ -77,7 +77,7 @@ The API call was successful.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -95,4 +95,5 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibfcoe\fR(3LIB), \fBattributes\fR(5)
+.BR libfcoe (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3fcoe/FCOE_GetPortList.3fcoe b/usr/src/man/man3fcoe/FCOE_GetPortList.3fcoe
index 608a0eb474..7da2eaa051 100644
--- a/usr/src/man/man3fcoe/FCOE_GetPortList.3fcoe
+++ b/usr/src/man/man3fcoe/FCOE_GetPortList.3fcoe
@@ -90,7 +90,7 @@ The API call was successful.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -108,4 +108,6 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBfree\fR(3C), \fBlibfcoe\fR(3LIB), \fBattributes\fR(5)
+.BR free (3C),
+.BR libfcoe (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3fstyp/fstyp_get_attr.3fstyp b/usr/src/man/man3fstyp/fstyp_get_attr.3fstyp
index ffd802144b..73aa81d299 100644
--- a/usr/src/man/man3fstyp/fstyp_get_attr.3fstyp
+++ b/usr/src/man/man3fstyp/fstyp_get_attr.3fstyp
@@ -52,7 +52,7 @@ generic and are returned when appropriate for a particular file system type:
.RS 4n
Attribute for which \fBtrue\fR and \fBfalse\fR values are allowed. A
\fBfalse\fR value is returned if the file system is damaged or if the file
-system is not cleanly unmounted. In the latter case, \fBfsck\fR(1M) is required
+system is not cleanly unmounted. In the latter case, \fBfsck\fR(8) is required
before the file system can be mounted.
.RE
@@ -97,7 +97,7 @@ The \fBfstyp_get_attr()\fR function returns \fB0\fR on success and an error
value on failure. See \fBfstyp_strerror\fR(3FSTYP).
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -114,5 +114,8 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBfstyp_ident\fR(3FSTYP), \fBfstyp_mod_init\fR(3FSTYP),
-\fBfstyp_strerror\fR(3FSTYP), \fBlibfstyp\fR(3LIB), \fBattributes\fR(5)
+.BR fstyp_ident (3FSTYP),
+.BR fstyp_mod_init (3FSTYP),
+.BR fstyp_strerror (3FSTYP),
+.BR libfstyp (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3fstyp/fstyp_ident.3fstyp b/usr/src/man/man3fstyp/fstyp_ident.3fstyp
index dbd8c13a5a..4e70bd921d 100644
--- a/usr/src/man/man3fstyp/fstyp_ident.3fstyp
+++ b/usr/src/man/man3fstyp/fstyp_ident.3fstyp
@@ -65,7 +65,7 @@ on failure. See \fBfstyp_strerror\fR(3FSTYP).
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -83,5 +83,8 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBfstyp_init\fR(3FSTYP), \fBfstyp_mod_init\fR(3FSTYP),
-\fBfstyp_strerror\fR(3FSTYP), \fBlibfstyp\fR(3LIB), \fBattributes\fR(5)
+.BR fstyp_init (3FSTYP),
+.BR fstyp_mod_init (3FSTYP),
+.BR fstyp_strerror (3FSTYP),
+.BR libfstyp (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3fstyp/fstyp_init.3fstyp b/usr/src/man/man3fstyp/fstyp_init.3fstyp
index 21579a57d6..f814708c3c 100644
--- a/usr/src/man/man3fstyp/fstyp_init.3fstyp
+++ b/usr/src/man/man3fstyp/fstyp_init.3fstyp
@@ -93,7 +93,7 @@ on failure. See \fBfstyp_strerror\fR(3FSTYP).
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -111,5 +111,8 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBfstyp_ident\fR(3FSTYP), \fBfstyp_mod_init\fR(3FSTYP),
-\fBfstyp_strerror\fR(3FSTYP), \fBlibfstyp\fR(3LIB), \fBattributes\fR(5)
+.BR fstyp_ident (3FSTYP),
+.BR fstyp_mod_init (3FSTYP),
+.BR fstyp_strerror (3FSTYP),
+.BR libfstyp (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3fstyp/fstyp_mod_init.3fstyp b/usr/src/man/man3fstyp/fstyp_mod_init.3fstyp
index 4f42915d3e..6a35c4c4a1 100644
--- a/usr/src/man/man3fstyp/fstyp_mod_init.3fstyp
+++ b/usr/src/man/man3fstyp/fstyp_mod_init.3fstyp
@@ -101,7 +101,7 @@ functions map directly to the respective \fBlibfstyp\fR interfaces.
.LP
The \fBfstyp_mod_dump()\fR function is optional. It can be used to output
unformatted information about the file system. This function is used by the
-\fBfstyp\fR(1M) command when the \fB-v\fR option is specified. The
+\fBfstyp\fR(8) command when the \fB-v\fR option is specified. The
\fBfstyp_mod_dump()\fR function is not recommended and should be used only in
legacy modules.
.SH FILES
@@ -128,7 +128,7 @@ Default path to a \fBlibfstyp\fR module for an \fIfstype\fR file system.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -146,5 +146,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBfstyp\fR(1M), \fBfstyp_strerror\fR(3FSTYP), \fBlibfstyp\fR(3LIB),
-\fBattributes\fR(5)
+.BR fstyp_strerror (3FSTYP),
+.BR libfstyp (3LIB),
+.BR attributes (7),
+.BR fstyp (8)
diff --git a/usr/src/man/man3fstyp/fstyp_strerror.3fstyp b/usr/src/man/man3fstyp/fstyp_strerror.3fstyp
index dc2eb15dfd..8dc14c9fdf 100644
--- a/usr/src/man/man3fstyp/fstyp_strerror.3fstyp
+++ b/usr/src/man/man3fstyp/fstyp_strerror.3fstyp
@@ -174,7 +174,7 @@ File system name length exceeds system limit.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -192,4 +192,6 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBfstyp_init\fR(3FSTYP), \fBlibfstyp\fR(3LIB), \fBattributes\fR(5)
+.BR fstyp_init (3FSTYP),
+.BR libfstyp (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3gen/bgets.3gen b/usr/src/man/man3gen/bgets.3gen
index 81a3f8f368..325ba864fe 100644
--- a/usr/src/man/man3gen/bgets.3gen
+++ b/usr/src/man/man3gen/bgets.3gen
@@ -88,7 +88,7 @@ int main()
.in -2
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -102,7 +102,8 @@ MT-Level MT-Safe
.TE
.SH SEE ALSO
-\fBgets\fR(3C), \fBattributes\fR(5)
+.BR gets (3C),
+.BR attributes (7)
.SH NOTES
When compiling multithread applications, the \fB_REENTRANT\fR flag must be
defined on the compile line. This flag should only be used in multithreaded
diff --git a/usr/src/man/man3gen/bufsplit.3gen b/usr/src/man/man3gen/bufsplit.3gen
index 0328d79076..33dbd0d995 100644
--- a/usr/src/man/man3gen/bufsplit.3gen
+++ b/usr/src/man/man3gen/bufsplit.3gen
@@ -63,7 +63,7 @@ applications.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -79,4 +79,4 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBattributes\fR(5)
+.BR attributes (7)
diff --git a/usr/src/man/man3gen/copylist.3gen b/usr/src/man/man3gen/copylist.3gen
index 3545bcda0e..19d15e26f0 100644
--- a/usr/src/man/man3gen/copylist.3gen
+++ b/usr/src/man/man3gen/copylist.3gen
@@ -31,7 +31,7 @@ Otherwise it returns NULL if it has trouble finding the file, calling
.sp
.LP
The \fBcopylist()\fR function has a transitional interface for 64-bit file
-offsets. See \fBlf64\fR(5).
+offsets. See \fBlf64\fR(7).
.SH EXAMPLES
.LP
\fBExample 1 \fRExample of \fBcopylist()\fR function.
@@ -59,7 +59,7 @@ if (buf) {
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -75,7 +75,9 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBmalloc\fR(3C), \fBattributes\fR(5), \fBlf64\fR(5)
+.BR malloc (3C),
+.BR attributes (7),
+.BR lf64 (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3gen/gmatch.3gen b/usr/src/man/man3gen/gmatch.3gen
index 15dd15cf6c..7400daa464 100644
--- a/usr/src/man/man3gen/gmatch.3gen
+++ b/usr/src/man/man3gen/gmatch.3gen
@@ -46,7 +46,7 @@ gmatch (s, "*[a\e-]" )
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -62,7 +62,8 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBsh\fR(1), \fBattributes\fR(5)
+.BR sh (1),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3gen/isencrypt.3gen b/usr/src/man/man3gen/isencrypt.3gen
index 144acf38fb..a854720192 100644
--- a/usr/src/man/man3gen/isencrypt.3gen
+++ b/usr/src/man/man3gen/isencrypt.3gen
@@ -42,7 +42,7 @@ buffer is encrypted.
.SH RETURN VALUES
If the buffer is encrypted, \fB1\fR is returned; otherwise, zero is returned.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -56,7 +56,8 @@ MT-Level MT-Safe
.TE
.SH SEE ALSO
-\fBsetlocale\fR(3C), \fBattributes\fR(5)
+.BR setlocale (3C),
+.BR attributes (7)
.SH NOTES
When compiling multithreaded applications, the \fB_REENTRANT\fR flag must be
defined on the compile line. This flag should only be used in multithreaded
diff --git a/usr/src/man/man3gen/mkdirp.3gen b/usr/src/man/man3gen/mkdirp.3gen
index a972901510..38ee1657e3 100644
--- a/usr/src/man/man3gen/mkdirp.3gen
+++ b/usr/src/man/man3gen/mkdirp.3gen
@@ -71,7 +71,7 @@ rmdirp("sub1/sub2/sub3");
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -87,8 +87,11 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBchmod\fR(2), \fBmkdir\fR(2), \fBrmdir\fR(2), \fBmalloc\fR(3C),
-\fBattributes\fR(5)
+.BR chmod (2),
+.BR mkdir (2),
+.BR rmdir (2),
+.BR malloc (3C),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3gen/p2open.3gen b/usr/src/man/man3gen/p2open.3gen
index 8d5164efe5..2f21286218 100644
--- a/usr/src/man/man3gen/p2open.3gen
+++ b/usr/src/man/man3gen/p2open.3gen
@@ -80,7 +80,7 @@ char **argv;
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -96,7 +96,10 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBfclose\fR(3C), \fBpopen\fR(3C), \fBsetbuf\fR(3C), \fBattributes\fR(5)
+.BR fclose (3C),
+.BR popen (3C),
+.BR setbuf (3C),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3gen/pathfind.3gen b/usr/src/man/man3gen/pathfind.3gen
index 11404b7008..c295395bae 100644
--- a/usr/src/man/man3gen/pathfind.3gen
+++ b/usr/src/man/man3gen/pathfind.3gen
@@ -100,7 +100,7 @@ If no match is found, \fBpathname()\fR returns a null pointer, \fB((char *)
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -116,8 +116,13 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBsh\fR(1), \fBtest\fR(1), \fBaccess\fR(2), \fBmknod\fR(2), \fBstat\fR(2),
-\fBgetenv\fR(3C), \fBattributes\fR(5)
+.BR sh (1),
+.BR test (1),
+.BR access (2),
+.BR mknod (2),
+.BR stat (2),
+.BR getenv (3C),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3gen/regexpr.3gen b/usr/src/man/man3gen/regexpr.3gen
index 1e348b6173..1e46bb78be 100644
--- a/usr/src/man/man3gen/regexpr.3gen
+++ b/usr/src/man/man3gen/regexpr.3gen
@@ -177,7 +177,7 @@ ERROR MEANING
.TE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -191,8 +191,12 @@ MT-Level MT-Safe
.TE
.SH SEE ALSO
-\fBed\fR(1), \fBgrep\fR(1), \fBsed\fR(1), \fBmalloc\fR(3C),
-\fBattributes\fR(5), \fBregexp\fR(5)
+.BR ed (1),
+.BR grep (1),
+.BR sed (1),
+.BR malloc (3C),
+.BR attributes (7),
+.BR regexp (7)
.SH NOTES
When compiling multi-threaded applications, the \fB_REENTRANT\fR flag must be
defined on the compile line. This flag should only be used in multi-threaded
diff --git a/usr/src/man/man3gen/strccpy.3gen b/usr/src/man/man3gen/strccpy.3gen
index 3aaedfec4c..ea97370fcf 100644
--- a/usr/src/man/man3gen/strccpy.3gen
+++ b/usr/src/man/man3gen/strccpy.3gen
@@ -79,7 +79,7 @@ cp = strcadd( cp, input3 );
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -95,7 +95,9 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBstring\fR(3C), \fBstrfind\fR(3GEN), \fBattributes\fR(5)
+.BR string (3C),
+.BR strfind (3GEN),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3gen/strfind.3gen b/usr/src/man/man3gen/strfind.3gen
index 08276d5a85..38c6f36576 100644
--- a/usr/src/man/man3gen/strfind.3gen
+++ b/usr/src/man/man3gen/strfind.3gen
@@ -73,7 +73,7 @@ s2 = strtrns(s1, a1, a2, s2);\fR
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -89,4 +89,5 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBstring\fR(3C), \fBattributes\fR(5)
+.BR string (3C),
+.BR attributes (7)
diff --git a/usr/src/man/man3gss/gss_accept_sec_context.3gss b/usr/src/man/man3gss/gss_accept_sec_context.3gss
index 9febb67151..89aa4fe11f 100644
--- a/usr/src/man/man3gss/gss_accept_sec_context.3gss
+++ b/usr/src/man/man3gss/gss_accept_sec_context.3gss
@@ -520,7 +520,7 @@ do {
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -535,10 +535,15 @@ MT-Level Safe
.SH SEE ALSO
.LP
-\fBgss_delete_sec_context\fR(3GSS), \fBgss_export_sec_context\fR(3GSS),
-\fBgss_get_mic\fR(3GSS), \fBgss_init_sec_context\fR(3GSS),
-\fBgss_release_cred\fR(3GSS), \fBgss_release_name\fR(3GSS),
-\fBgss_store_cred\fR(3GSS), \fBgss_wrap\fR(3GSS), \fBattributes\fR(5)
+.BR gss_delete_sec_context (3GSS),
+.BR gss_export_sec_context (3GSS),
+.BR gss_get_mic (3GSS),
+.BR gss_init_sec_context (3GSS),
+.BR gss_release_cred (3GSS),
+.BR gss_release_name (3GSS),
+.BR gss_store_cred (3GSS),
+.BR gss_wrap (3GSS),
+.BR attributes (7)
.sp
.LP
\fISolaris Security for Developers Guide\fR
diff --git a/usr/src/man/man3gss/gss_acquire_cred.3gss b/usr/src/man/man3gss/gss_acquire_cred.3gss
index a8de3f2bbc..2b8e375865 100644
--- a/usr/src/man/man3gss/gss_acquire_cred.3gss
+++ b/usr/src/man/man3gss/gss_acquire_cred.3gss
@@ -117,7 +117,7 @@ credentials may be used either to initiate or accept security contexts.
.RS 22n
The returned credential handle. Resources associated with this credential
handle must be released by the application after use with a call to
-\fBgss_release_cred\fR(3GSS)
+.BR gss_release_cred (3GSS)
.RE
.sp
@@ -223,7 +223,7 @@ of the \fIminor_status\fR parameter details the error condition.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -239,10 +239,13 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBgss_accept_sec_context\fR(3GSS), \fBgss_init_sec_context\fR(3GSS),
-\fBgss_inquire_context\fR(3GSS), \fBgss_inquire_cred\fR(3GSS),
-\fBgss_release_cred\fR(3GSS), \fBgss_release_oid_set\fR(3GSS),
-\fBattributes\fR(5)
+.BR gss_accept_sec_context (3GSS),
+.BR gss_init_sec_context (3GSS),
+.BR gss_inquire_context (3GSS),
+.BR gss_inquire_cred (3GSS),
+.BR gss_release_cred (3GSS),
+.BR gss_release_oid_set (3GSS),
+.BR attributes (7)
.sp
.LP
\fISolaris Security for Developers Guide\fR
diff --git a/usr/src/man/man3gss/gss_add_cred.3gss b/usr/src/man/man3gss/gss_add_cred.3gss
index 6c39ac034e..c9d839a21a 100644
--- a/usr/src/man/man3gss/gss_add_cred.3gss
+++ b/usr/src/man/man3gss/gss_add_cred.3gss
@@ -325,7 +325,7 @@ the \fIminor_status\fR parameter details the error condition.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -341,10 +341,15 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBgss_accept_sec_context\fR(3GSS), \fBgss_acquire_cred\fR(3GSS),
-\fBgss_init_sec_context\fR(3GSS), \fBgss_inquire_context\fR(3GSS),
-\fBgss_inquire_cred\fR(3GSS), \fBgss_release_cred\fR(3GSS),
-\fBgss_release_oid_set\fR(3GSS), \fBlibgss\fR(3LIB), \fBattributes\fR(5)
+.BR gss_accept_sec_context (3GSS),
+.BR gss_acquire_cred (3GSS),
+.BR gss_init_sec_context (3GSS),
+.BR gss_inquire_context (3GSS),
+.BR gss_inquire_cred (3GSS),
+.BR gss_release_cred (3GSS),
+.BR gss_release_oid_set (3GSS),
+.BR libgss (3LIB),
+.BR attributes (7)
.sp
.LP
\fISolaris Security for Developers Guide\fR
diff --git a/usr/src/man/man3gss/gss_add_oid_set_member.3gss b/usr/src/man/man3gss/gss_add_oid_set_member.3gss
index 2921332d07..d64b19fc8d 100644
--- a/usr/src/man/man3gss/gss_add_oid_set_member.3gss
+++ b/usr/src/man/man3gss/gss_add_oid_set_member.3gss
@@ -93,7 +93,7 @@ of the \fIminor_status\fR parameter details the error condition.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -109,8 +109,9 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBgss_acquire_cred\fR(3GSS), \fBgss_create_empty_oid_set\fR(3GSS),
-\fBattributes\fR(5)
+.BR gss_acquire_cred (3GSS),
+.BR gss_create_empty_oid_set (3GSS),
+.BR attributes (7)
.sp
.LP
\fISolaris Security for Developers Guide\fR
diff --git a/usr/src/man/man3gss/gss_canonicalize_name.3gss b/usr/src/man/man3gss/gss_canonicalize_name.3gss
index f00611d51a..fdf2b1a971 100644
--- a/usr/src/man/man3gss/gss_canonicalize_name.3gss
+++ b/usr/src/man/man3gss/gss_canonicalize_name.3gss
@@ -125,7 +125,7 @@ of the \fIminor_status\fR parameter details the error condition.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -141,8 +141,10 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBgss_acquire_cred\fR(3GSS), \fBgss_init_sec_context\fR(3GSS),
-\fBgss_release_name\fR(3GSS), \fBattributes\fR(5)
+.BR gss_acquire_cred (3GSS),
+.BR gss_init_sec_context (3GSS),
+.BR gss_release_name (3GSS),
+.BR attributes (7)
.sp
.LP
\fISolaris Security for Developers Guide\fR
diff --git a/usr/src/man/man3gss/gss_compare_name.3gss b/usr/src/man/man3gss/gss_compare_name.3gss
index 15d96e077d..f08491fa99 100644
--- a/usr/src/man/man3gss/gss_compare_name.3gss
+++ b/usr/src/man/man3gss/gss_compare_name.3gss
@@ -113,7 +113,7 @@ of the \fIminor_status\fR parameter details the error condition.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -129,7 +129,7 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBattributes\fR(5)
+.BR attributes (7)
.sp
.LP
\fISolaris Security for Developers Guide\fR
diff --git a/usr/src/man/man3gss/gss_context_time.3gss b/usr/src/man/man3gss/gss_context_time.3gss
index b8554377f4..17501c330d 100644
--- a/usr/src/man/man3gss/gss_context_time.3gss
+++ b/usr/src/man/man3gss/gss_context_time.3gss
@@ -99,7 +99,7 @@ of the \fIminor_status\fR parameter details the error condition.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -115,11 +115,15 @@ MT Level Safe
.SH SEE ALSO
.sp
.LP
-\fBgss_init_sec_context\fR(3GSS), \fBgss_accept_sec_context\fR(3GSS),
-\fBgss_delete_sec_context\fR(3GSS), \fBgss_process_context_token\fR(3GSS),
-\fBgss_inquire_context\fR(3GSS), \fBgss_wrap_size_limit\fR(3GSS),
-\fBgss_export_sec_context\fR(3GSS), \fBgss_import_sec_context\fR(3GSS),
-\fBattributes\fR(5)
+.BR gss_accept_sec_context (3GSS),
+.BR gss_delete_sec_context (3GSS),
+.BR gss_export_sec_context (3GSS),
+.BR gss_import_sec_context (3GSS),
+.BR gss_init_sec_context (3GSS),
+.BR gss_inquire_context (3GSS),
+.BR gss_process_context_token (3GSS),
+.BR gss_wrap_size_limit (3GSS),
+.BR attributes (7)
.sp
.LP
\fISolaris Security for Developers Guide\fR
diff --git a/usr/src/man/man3gss/gss_create_empty_oid_set.3gss b/usr/src/man/man3gss/gss_create_empty_oid_set.3gss
index 6c0af5043c..1bab67dceb 100644
--- a/usr/src/man/man3gss/gss_create_empty_oid_set.3gss
+++ b/usr/src/man/man3gss/gss_create_empty_oid_set.3gss
@@ -77,7 +77,7 @@ of the \fIminor_status\fR parameter details the error condition.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -93,8 +93,10 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBgss_acquire_cred\fR(3GSS), \fBgss_add_oid_set_member\fR(3GSS),
-\fBgss_release_oid_set\fR(3GSS), \fBattributes\fR(5)
+.BR gss_acquire_cred (3GSS),
+.BR gss_add_oid_set_member (3GSS),
+.BR gss_release_oid_set (3GSS),
+.BR attributes (7)
.sp
.LP
\fISolaris Security for Developers Guide\fR
diff --git a/usr/src/man/man3gss/gss_delete_sec_context.3gss b/usr/src/man/man3gss/gss_delete_sec_context.3gss
index f336f75624..24b89897dc 100644
--- a/usr/src/man/man3gss/gss_delete_sec_context.3gss
+++ b/usr/src/man/man3gss/gss_delete_sec_context.3gss
@@ -109,7 +109,7 @@ of the \fIminor_status\fR parameter details the error condition.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -125,8 +125,9 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBgss_accept_sec_context\fR(3GSS), \fBgss_init_sec_context\fR(3GSS),
-\fBattributes\fR(5)
+.BR gss_accept_sec_context (3GSS),
+.BR gss_init_sec_context (3GSS),
+.BR attributes (7)
.sp
.LP
\fISolaris Security for Developers Guide\fR
diff --git a/usr/src/man/man3gss/gss_display_name.3gss b/usr/src/man/man3gss/gss_display_name.3gss
index 1702ca8e6a..0210421c66 100644
--- a/usr/src/man/man3gss/gss_display_name.3gss
+++ b/usr/src/man/man3gss/gss_display_name.3gss
@@ -114,7 +114,7 @@ of the \fIminor_status\fR parameter details the error condition.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -130,8 +130,9 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBgss_import_name\fR(3GSS), \fBgss_release_buffer\fR(3GSS),
-\fBattributes\fR(5)
+.BR gss_import_name (3GSS),
+.BR gss_release_buffer (3GSS),
+.BR attributes (7)
.sp
.LP
\fISolaris Security for Developers Guide\fR
diff --git a/usr/src/man/man3gss/gss_display_status.3gss b/usr/src/man/man3gss/gss_display_status.3gss
index a5a521879b..99fb558a89 100644
--- a/usr/src/man/man3gss/gss_display_status.3gss
+++ b/usr/src/man/man3gss/gss_display_status.3gss
@@ -147,7 +147,7 @@ of the \fIminor_status\fR parameter details the error condition.
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -161,8 +161,9 @@ MT-Level Safe
.TE
.SH SEE ALSO
-\fBgss_acquire_cred\fR(3GSS), \fBgss_release_buffer\fR(3GSS),
-\fBattributes\fR(5)
+.BR gss_acquire_cred (3GSS),
+.BR gss_release_buffer (3GSS),
+.BR attributes (7)
.sp
.LP
\fISolaris Security for Developers Guide\fR
diff --git a/usr/src/man/man3gss/gss_duplicate_name.3gss b/usr/src/man/man3gss/gss_duplicate_name.3gss
index 0091ba8d04..58e71765a1 100644
--- a/usr/src/man/man3gss/gss_duplicate_name.3gss
+++ b/usr/src/man/man3gss/gss_duplicate_name.3gss
@@ -93,7 +93,7 @@ of the \fIminor_status\fR parameter details the error condition.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -109,7 +109,8 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBgss_release_name\fR(3GSS), \fBattributes\fR(5)
+.BR gss_release_name (3GSS),
+.BR attributes (7)
.sp
.LP
\fISolaris Security for Developers Guide\fR
diff --git a/usr/src/man/man3gss/gss_export_name.3gss b/usr/src/man/man3gss/gss_export_name.3gss
index b6c484b4b5..9866f9dd95 100644
--- a/usr/src/man/man3gss/gss_export_name.3gss
+++ b/usr/src/man/man3gss/gss_export_name.3gss
@@ -95,7 +95,7 @@ of the \fIminor_status\fR parameter details the error condition.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -111,8 +111,11 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBgss_accept_sec_context\fR(3GSS), \fBgss_canonicalize_name\fR(3GSS),
-\fBgss_release_buffer\fR(3GSS), \fBmemory\fR(3C), \fBattributes\fR(5)
+.BR memory (3C),
+.BR gss_accept_sec_context (3GSS),
+.BR gss_canonicalize_name (3GSS),
+.BR gss_release_buffer (3GSS),
+.BR attributes (7)
.sp
.LP
\fISolaris Security for Developers Guide\fR
diff --git a/usr/src/man/man3gss/gss_export_sec_context.3gss b/usr/src/man/man3gss/gss_export_sec_context.3gss
index 286efc5da8..4c13b449e8 100644
--- a/usr/src/man/man3gss/gss_export_sec_context.3gss
+++ b/usr/src/man/man3gss/gss_export_sec_context.3gss
@@ -143,7 +143,7 @@ of the \fIminor_status\fR parameter details the error condition.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -159,9 +159,11 @@ MT Level Safe
.SH SEE ALSO
.sp
.LP
-\fBgss_accept_sec_context\fR(3GSS), \fBgss_import_sec_context\fR(3GSS),
-\fBgss_init_sec_context\fR(3GSS), \fBgss_release_buffer\fR(3GSS),
-\fBattributes\fR(5)
+.BR gss_accept_sec_context (3GSS),
+.BR gss_import_sec_context (3GSS),
+.BR gss_init_sec_context (3GSS),
+.BR gss_release_buffer (3GSS),
+.BR attributes (7)
.sp
.LP
\fISolaris Security for Developers Guide\fR
diff --git a/usr/src/man/man3gss/gss_get_mic.3gss b/usr/src/man/man3gss/gss_get_mic.3gss
index 35b339478d..f99ecac2d7 100644
--- a/usr/src/man/man3gss/gss_get_mic.3gss
+++ b/usr/src/man/man3gss/gss_get_mic.3gss
@@ -138,7 +138,7 @@ of the \fIminor_status\fR parameter details the error condition.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -154,7 +154,9 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBgss_release_buffer\fR(3GSS), \fBgss_wrap\fR(3GSS), \fBattributes\fR(5)
+.BR gss_release_buffer (3GSS),
+.BR gss_wrap (3GSS),
+.BR attributes (7)
.sp
.LP
\fISolaris Security for Developers Guide\fR
diff --git a/usr/src/man/man3gss/gss_import_name.3gss b/usr/src/man/man3gss/gss_import_name.3gss
index f3d2b860e0..9695529ac9 100644
--- a/usr/src/man/man3gss/gss_import_name.3gss
+++ b/usr/src/man/man3gss/gss_import_name.3gss
@@ -126,7 +126,7 @@ of the \fIminor_status\fR parameter details the error condition.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -142,7 +142,8 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBgss_release_buffer\fR(3GSS), \fBattributes\fR(5)
+.BR gss_release_buffer (3GSS),
+.BR attributes (7)
.sp
.LP
\fISolaris Security for Developers Guide\fR
diff --git a/usr/src/man/man3gss/gss_import_sec_context.3gss b/usr/src/man/man3gss/gss_import_sec_context.3gss
index f64feb59d0..e94d369e52 100644
--- a/usr/src/man/man3gss/gss_import_sec_context.3gss
+++ b/usr/src/man/man3gss/gss_import_sec_context.3gss
@@ -119,7 +119,7 @@ of the \fIminor_status\fR parameter details the error condition.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -135,11 +135,15 @@ MT Level Safe
.SH SEE ALSO
.sp
.LP
-\fBgss_accept_sec_context\fR(3GSS), \fBgss_context_time\fR(3GSS),
-\fBgss_delete_sec_context\fR(3GSS), \fBgss_export_sec_context\fR(3GSS),
-\fBgss_init_sec_context\fR(3GSS), \fBgss_inquire_context\fR(3GSS),
-\fBgss_process_context_token\fR(3GSS), \fBgss_wrap_size_limit\fR(3GSS),
-\fBattributes\fR(5)
+.BR gss_accept_sec_context (3GSS),
+.BR gss_context_time (3GSS),
+.BR gss_delete_sec_context (3GSS),
+.BR gss_export_sec_context (3GSS),
+.BR gss_init_sec_context (3GSS),
+.BR gss_inquire_context (3GSS),
+.BR gss_process_context_token (3GSS),
+.BR gss_wrap_size_limit (3GSS),
+.BR attributes (7)
.sp
.LP
\fISolaris Security for Developers Guide\fR
diff --git a/usr/src/man/man3gss/gss_indicate_mechs.3gss b/usr/src/man/man3gss/gss_indicate_mechs.3gss
index 53d6e4e314..6885985aeb 100644
--- a/usr/src/man/man3gss/gss_indicate_mechs.3gss
+++ b/usr/src/man/man3gss/gss_indicate_mechs.3gss
@@ -72,7 +72,7 @@ of the \fIminor_status\fR parameter details the error condition.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -88,7 +88,8 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBgss_release_oid_set\fR(3GSS), \fBattributes\fR(5)
+.BR gss_release_oid_set (3GSS),
+.BR attributes (7)
.sp
.LP
\fISolaris Security for Developers Guide\fR
diff --git a/usr/src/man/man3gss/gss_init_sec_context.3gss b/usr/src/man/man3gss/gss_init_sec_context.3gss
index 992eeec3b3..b9370a4852 100644
--- a/usr/src/man/man3gss/gss_init_sec_context.3gss
+++ b/usr/src/man/man3gss/gss_init_sec_context.3gss
@@ -647,7 +647,7 @@ while (!context_established) {
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -663,8 +663,11 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBgss_delete_sec_context\fR(3GSS), \fBgss_export_sec_context\fR(3GSS),
-\fBgss_get_mic\fR(3GSS), \fBgss_wrap\fR(3GSS), \fBattributes\fR(5)
+.BR gss_delete_sec_context (3GSS),
+.BR gss_export_sec_context (3GSS),
+.BR gss_get_mic (3GSS),
+.BR gss_wrap (3GSS),
+.BR attributes (7)
.sp
.LP
\fISolaris Security for Developers Guide\fR
diff --git a/usr/src/man/man3gss/gss_inquire_context.3gss b/usr/src/man/man3gss/gss_inquire_context.3gss
index 33e6cefae6..0823fb4782 100644
--- a/usr/src/man/man3gss/gss_inquire_context.3gss
+++ b/usr/src/man/man3gss/gss_inquire_context.3gss
@@ -266,7 +266,7 @@ of the \fIminor_status\fR parameter details the error condition.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -282,11 +282,16 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBgss_accept_sec_context\fR(3GSS), \fBgss_context_time\fR(3GSS),
-\fBgss_delete_sec_context\fR(3GSS), \fBgss_export_sec_context\fR(3GSS),
-\fBgss_import_sec_context\fR(3GSS), \fBgss_init_sec_context\fR(3GSS),
-\fBgss_process_context_token\fR(3GSS), \fBgss_wrap\fR(3GSS),
-\fBgss_wrap_size_limit\fR(3GSS), \fBattributes\fR(5)
+.BR gss_accept_sec_context (3GSS),
+.BR gss_context_time (3GSS),
+.BR gss_delete_sec_context (3GSS),
+.BR gss_export_sec_context (3GSS),
+.BR gss_import_sec_context (3GSS),
+.BR gss_init_sec_context (3GSS),
+.BR gss_process_context_token (3GSS),
+.BR gss_wrap (3GSS),
+.BR gss_wrap_size_limit (3GSS),
+.BR attributes (7)
.sp
.LP
\fISolaris Security for Developers Guide\fR
diff --git a/usr/src/man/man3gss/gss_inquire_cred.3gss b/usr/src/man/man3gss/gss_inquire_cred.3gss
index 78e5e9e9b0..e91e4ea6f5 100644
--- a/usr/src/man/man3gss/gss_inquire_cred.3gss
+++ b/usr/src/man/man3gss/gss_inquire_cred.3gss
@@ -147,7 +147,7 @@ the \fIminor_status\fR parameter details the error condition.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -163,8 +163,10 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBgss_release_name\fR(3GSS), \fBgss_release_oid_set\fR(3GSS),
-\fBlibgss\fR(3LIB), \fBattributes\fR(5)
+.BR gss_release_name (3GSS),
+.BR gss_release_oid_set (3GSS),
+.BR libgss (3LIB),
+.BR attributes (7)
.sp
.LP
\fISolaris Security for Developers Guide\fR
diff --git a/usr/src/man/man3gss/gss_inquire_cred_by_mech.3gss b/usr/src/man/man3gss/gss_inquire_cred_by_mech.3gss
index 52ff32fb89..fa21d876c1 100644
--- a/usr/src/man/man3gss/gss_inquire_cred_by_mech.3gss
+++ b/usr/src/man/man3gss/gss_inquire_cred_by_mech.3gss
@@ -166,7 +166,7 @@ specified mechanism type.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -182,7 +182,8 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBgss_release_name\fR(3GSS), \fBattributes\fR(5)
+.BR gss_release_name (3GSS),
+.BR attributes (7)
.sp
.LP
\fISolaris Security for Developers Guide\fR
diff --git a/usr/src/man/man3gss/gss_inquire_mechs_for_name.3gss b/usr/src/man/man3gss/gss_inquire_mechs_for_name.3gss
index e7f9386030..5fc155d203 100644
--- a/usr/src/man/man3gss/gss_inquire_mechs_for_name.3gss
+++ b/usr/src/man/man3gss/gss_inquire_mechs_for_name.3gss
@@ -117,7 +117,7 @@ of the \fIminor_status\fR parameter details the error condition.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -133,9 +133,12 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBgss_acquire_cred\fR(3GSS), \fBgss_add_cred\fR(3GSS),
-\fBgss_canonicalize_name\fR(3GSS), \fBgss_init_sec_context\fR(3GSS),
-\fBgss_release_oid_set\fR(3GSS), \fBattributes\fR(5)
+.BR gss_acquire_cred (3GSS),
+.BR gss_add_cred (3GSS),
+.BR gss_canonicalize_name (3GSS),
+.BR gss_init_sec_context (3GSS),
+.BR gss_release_oid_set (3GSS),
+.BR attributes (7)
.sp
.LP
\fISolaris Security for Developers Guide\fR
diff --git a/usr/src/man/man3gss/gss_inquire_names_for_mech.3gss b/usr/src/man/man3gss/gss_inquire_names_for_mech.3gss
index b932af1730..5ff82de8dd 100644
--- a/usr/src/man/man3gss/gss_inquire_names_for_mech.3gss
+++ b/usr/src/man/man3gss/gss_inquire_names_for_mech.3gss
@@ -83,7 +83,7 @@ of the \fIminor_status\fR parameter details the error condition.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -99,7 +99,8 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBgss_release_oid_set\fR(3GSS), \fBattributes\fR(5)
+.BR gss_release_oid_set (3GSS),
+.BR attributes (7)
.sp
.LP
\fISolaris Security for Developers Guide\fR
diff --git a/usr/src/man/man3gss/gss_oid_to_str.3gss b/usr/src/man/man3gss/gss_oid_to_str.3gss
index c82d634a5c..70c3b35934 100644
--- a/usr/src/man/man3gss/gss_oid_to_str.3gss
+++ b/usr/src/man/man3gss/gss_oid_to_str.3gss
@@ -107,7 +107,7 @@ of the \fIminor_status\fR parameter details the error condition.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -123,9 +123,11 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBgss_add_oid_set_member\fR(3GSS), \fBgss_create_empty_oid_set\fR(3GSS),
-\fBgss_release_oid_set\fR(3GSS), \fBgss_str_to_oid\fR(3GSS),
-\fBattributes\fR(5)
+.BR gss_add_oid_set_member (3GSS),
+.BR gss_create_empty_oid_set (3GSS),
+.BR gss_release_oid_set (3GSS),
+.BR gss_str_to_oid (3GSS),
+.BR attributes (7)
.sp
.LP
\fISolaris Security for Developers Guide\fR
diff --git a/usr/src/man/man3gss/gss_process_context_token.3gss b/usr/src/man/man3gss/gss_process_context_token.3gss
index 881883e006..e57307d0ea 100644
--- a/usr/src/man/man3gss/gss_process_context_token.3gss
+++ b/usr/src/man/man3gss/gss_process_context_token.3gss
@@ -117,7 +117,7 @@ of the \fIminor_status\fR parameter details the error condition.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -133,8 +133,10 @@ MT Level Safe
.SH SEE ALSO
.sp
.LP
-\fBgss_accept_sec_context\fR(3GSS), \fBgss_delete_sec_context\fR(3GSS),
-\fBgss_init_sec_context\fR(3GSS), \fBattributes\fR(5)
+.BR gss_accept_sec_context (3GSS),
+.BR gss_delete_sec_context (3GSS),
+.BR gss_init_sec_context (3GSS),
+.BR attributes (7)
.sp
.LP
\fISolaris Security for Developers Guide\fR
diff --git a/usr/src/man/man3gss/gss_release_buffer.3gss b/usr/src/man/man3gss/gss_release_buffer.3gss
index 654b6eec64..f6d33aa86e 100644
--- a/usr/src/man/man3gss/gss_release_buffer.3gss
+++ b/usr/src/man/man3gss/gss_release_buffer.3gss
@@ -75,7 +75,7 @@ of the \fIminor_status\fR parameter details the error condition.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -91,7 +91,7 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBattributes\fR(5)
+.BR attributes (7)
.sp
.LP
\fISolaris Security for Developers Guide\fR
diff --git a/usr/src/man/man3gss/gss_release_cred.3gss b/usr/src/man/man3gss/gss_release_cred.3gss
index fb54c03d74..388b9d7b93 100644
--- a/usr/src/man/man3gss/gss_release_cred.3gss
+++ b/usr/src/man/man3gss/gss_release_cred.3gss
@@ -83,7 +83,7 @@ of the \fIminor_status\fR parameter details the error condition.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -99,7 +99,7 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBattributes\fR(5)
+.BR attributes (7)
.sp
.LP
\fISolaris Security for Developers Guide\fR
diff --git a/usr/src/man/man3gss/gss_release_name.3gss b/usr/src/man/man3gss/gss_release_name.3gss
index 0693caed06..2244b2ba48 100644
--- a/usr/src/man/man3gss/gss_release_name.3gss
+++ b/usr/src/man/man3gss/gss_release_name.3gss
@@ -70,7 +70,7 @@ of the \fIminor_status\fR parameter details the error condition.
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -84,7 +84,7 @@ MT-Level Safe
.TE
.SH SEE ALSO
-\fBattributes\fR(5)
+.BR attributes (7)
.sp
.LP
\fISolaris Security for Developers Guide\fR
diff --git a/usr/src/man/man3gss/gss_release_oid.3gss b/usr/src/man/man3gss/gss_release_oid.3gss
index 34828951e6..d518abdda1 100644
--- a/usr/src/man/man3gss/gss_release_oid.3gss
+++ b/usr/src/man/man3gss/gss_release_oid.3gss
@@ -74,7 +74,7 @@ of the \fIminor_status\fR parameter details the error condition.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -90,8 +90,9 @@ MT Level Safe
.SH SEE ALSO
.sp
.LP
-\fBgss_release_oid_set\fR(3GSS), \fBgss_str_to_oid\fR(3GSS),
-\fBattributes\fR(5)
+.BR gss_release_oid_set (3GSS),
+.BR gss_str_to_oid (3GSS),
+.BR attributes (7)
.sp
.LP
\fISolaris Security for Developers Guide\fR
diff --git a/usr/src/man/man3gss/gss_release_oid_set.3gss b/usr/src/man/man3gss/gss_release_oid_set.3gss
index c5eee17717..c7a2cb49fd 100644
--- a/usr/src/man/man3gss/gss_release_oid_set.3gss
+++ b/usr/src/man/man3gss/gss_release_oid_set.3gss
@@ -78,7 +78,7 @@ of the \fIminor_status\fR parameter details the error condition.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -94,7 +94,7 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBattributes\fR(5)
+.BR attributes (7)
.sp
.LP
\fISolaris Security for Developers Guide\fR
diff --git a/usr/src/man/man3gss/gss_store_cred.3gss b/usr/src/man/man3gss/gss_store_cred.3gss
index 334e75d1e2..5723e18e14 100644
--- a/usr/src/man/man3gss/gss_store_cred.3gss
+++ b/usr/src/man/man3gss/gss_store_cred.3gss
@@ -209,7 +209,7 @@ the \fIminor_status\fR parameter details the error condition.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -226,10 +226,14 @@ MT-Level Safe
.SH SEE ALSO
.LP
-\fBgss_accept_sec_context\fR(3GSS), \fBgss_acquire_cred\fR(3GSS),
-\fBgss_add_cred\fR(3GSS), \fBgss_init_sec_context\fR(3GSS),
-\fBgss_inquire_cred\fR(3GSS), \fBgss_release_cred\fR(3GSS),
-\fBgss_release_oid_set\fR(3GSS), \fBattributes\fR(5)
+.BR gss_accept_sec_context (3GSS),
+.BR gss_acquire_cred (3GSS),
+.BR gss_add_cred (3GSS),
+.BR gss_init_sec_context (3GSS),
+.BR gss_inquire_cred (3GSS),
+.BR gss_release_cred (3GSS),
+.BR gss_release_oid_set (3GSS),
+.BR attributes (7)
.sp
.LP
\fISolaris Security for Developers Guide\fR
diff --git a/usr/src/man/man3gss/gss_str_to_oid.3gss b/usr/src/man/man3gss/gss_str_to_oid.3gss
index cb7d04c68c..7d01b39a4e 100644
--- a/usr/src/man/man3gss/gss_str_to_oid.3gss
+++ b/usr/src/man/man3gss/gss_str_to_oid.3gss
@@ -112,7 +112,7 @@ of the \fIminor_status\fR parameter details the error condition.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -128,9 +128,11 @@ MT Level Safe
.SH SEE ALSO
.sp
.LP
-\fBgss_add_oid_set_member\fR(3GSS), \fBgss_create_empty_oid_set\fR(3GSS),
-\fBgss_oid_to_str\fR(3GSS), \fBgss_release_oid_set\fR(3GSS),
-\fBattributes\fR(5)
+.BR gss_add_oid_set_member (3GSS),
+.BR gss_create_empty_oid_set (3GSS),
+.BR gss_oid_to_str (3GSS),
+.BR gss_release_oid_set (3GSS),
+.BR attributes (7)
.sp
.LP
\fISolaris Security for Developers Guide\fR
diff --git a/usr/src/man/man3gss/gss_test_oid_set_member.3gss b/usr/src/man/man3gss/gss_test_oid_set_member.3gss
index c19c954b7d..7f7ac01dc5 100644
--- a/usr/src/man/man3gss/gss_test_oid_set_member.3gss
+++ b/usr/src/man/man3gss/gss_test_oid_set_member.3gss
@@ -94,7 +94,7 @@ of the \fIminor_status\fR parameter details the error condition.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -110,8 +110,10 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBgss_acquire_cred\fR(3GSS), \fBgss_indicate_mechs\fR(3GSS),
-\fBgss_inquire_cred\fR(3GSS), \fBattributes\fR(5)
+.BR gss_acquire_cred (3GSS),
+.BR gss_indicate_mechs (3GSS),
+.BR gss_inquire_cred (3GSS),
+.BR attributes (7)
.sp
.LP
\fISolaris Security for Developers Guide\fR
diff --git a/usr/src/man/man3gss/gss_unwrap.3gss b/usr/src/man/man3gss/gss_unwrap.3gss
index 9b497e8b89..e091bfac64 100644
--- a/usr/src/man/man3gss/gss_unwrap.3gss
+++ b/usr/src/man/man3gss/gss_unwrap.3gss
@@ -199,7 +199,7 @@ of the \fIminor_status\fR parameter details the error condition.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -215,7 +215,9 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBgss_release_buffer\fR(3GSS), \fBgss_wrap\fR(3GSS), \fBattributes\fR(5)
+.BR gss_release_buffer (3GSS),
+.BR gss_wrap (3GSS),
+.BR attributes (7)
.sp
.LP
\fISolaris Security for Developers Guide\fR
diff --git a/usr/src/man/man3gss/gss_verify_mic.3gss b/usr/src/man/man3gss/gss_verify_mic.3gss
index 2330b2005e..468cad435f 100644
--- a/usr/src/man/man3gss/gss_verify_mic.3gss
+++ b/usr/src/man/man3gss/gss_verify_mic.3gss
@@ -183,7 +183,7 @@ of the \fIminor_status\fR parameter details the error condition.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -199,7 +199,8 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBgss_wrap\fR(3GSS), \fBattributes\fR(5)
+.BR gss_wrap (3GSS),
+.BR attributes (7)
.sp
.LP
\fISolaris Security for Developers Guide\fR
diff --git a/usr/src/man/man3gss/gss_wrap.3gss b/usr/src/man/man3gss/gss_wrap.3gss
index 9748d94399..b42d404f2e 100644
--- a/usr/src/man/man3gss/gss_wrap.3gss
+++ b/usr/src/man/man3gss/gss_wrap.3gss
@@ -161,7 +161,7 @@ of the \fIminor_status\fR parameter details the error condition.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -177,7 +177,8 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBgss_release_buffer\fR(3GSS), \fBattributes\fR(5)
+.BR gss_release_buffer (3GSS),
+.BR attributes (7)
.sp
.LP
\fISolaris Security for Developers Guide\fR
diff --git a/usr/src/man/man3gss/gss_wrap_size_limit.3gss b/usr/src/man/man3gss/gss_wrap_size_limit.3gss
index 3e2851e04c..ac7a2e5c30 100644
--- a/usr/src/man/man3gss/gss_wrap_size_limit.3gss
+++ b/usr/src/man/man3gss/gss_wrap_size_limit.3gss
@@ -155,7 +155,7 @@ of the \fIminor_status\fR parameter details the error condition.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -171,7 +171,8 @@ MT Level Safe
.SH SEE ALSO
.sp
.LP
-\fBgss_wrap\fR(3GSS), \fBattributes\fR(5)
+.BR gss_wrap (3GSS),
+.BR attributes (7)
.sp
.LP
\fISolaris Security for Developers Guide\fR
diff --git a/usr/src/man/man3head/acct.h.3head b/usr/src/man/man3head/acct.h.3head
index a7bfeccd4d..b5ea0921a3 100644
--- a/usr/src/man/man3head/acct.h.3head
+++ b/usr/src/man/man3head/acct.h.3head
@@ -107,7 +107,7 @@ information pertaining to prime time and non-prime time hours. The first
element in each array represents the time the resource was used during prime
time hours. The second element in each array represents the time the resource
was used during non-prime time hours. Prime time and non-prime time hours may
-be set in the \fBholidays\fR file (see \fBholidays\fR(4)).
+be set in the \fBholidays\fR file (see \fBholidays\fR(5)).
.sp
.LP
The \fBta_kcore\fR member is a cumulative measure of the amount of memory used
@@ -131,9 +131,18 @@ prime/non-prime time table
.SH SEE ALSO
.sp
.LP
-\fBacctcom\fR(1), \fBacct\fR(1M), \fBacctcon\fR(1M), \fBacctmerg\fR(1M),
-\fBacctprc\fR(1M), \fBacctsh\fR(1M), \fBprtacct\fR(1M), \fBrunacct\fR(1M),
-\fBshutacct\fR(1M), \fBacct\fR(2), \fBexec\fR(2), \fBfork\fR(2)
+.BR acctcom (1),
+.BR acct (2),
+.BR exec (2),
+.BR fork (2),
+.BR acct (8),
+.BR acctcon (8),
+.BR acctmerg (8),
+.BR acctprc (8),
+.BR acctsh (8),
+.BR prtacct (8),
+.BR runacct (8),
+.BR shutacct (8)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3head/aio.h.3head b/usr/src/man/man3head/aio.h.3head
index ffe255dae6..f8a56c26f3 100644
--- a/usr/src/man/man3head/aio.h.3head
+++ b/usr/src/man/man3head/aio.h.3head
@@ -155,5 +155,9 @@ A \fBlio_listio()\fR element operation option requesting a write.
.SH SEE ALSO
.sp
.LP
-\fBlseek\fR(2), \fBread\fR(2), \fBwrite\fR(2), \fBfsync\fR(3C),
-\fBlibaio\fR(3LIB), \fBlio_listio\fR(3C)
+.BR lseek (2),
+.BR read (2),
+.BR write (2),
+.BR fsync (3C),
+.BR lio_listio (3C),
+.BR libaio (3LIB)
diff --git a/usr/src/man/man3head/ar.h.3head b/usr/src/man/man3head/ar.h.3head
index 1593c0a444..991a85f43f 100644
--- a/usr/src/man/man3head/ar.h.3head
+++ b/usr/src/man/man3head/ar.h.3head
@@ -79,7 +79,7 @@ size of the file exclusive of padding.
Notice there is no provision for empty areas in an archive file.
.sp
.LP
-Each archive that contains object files (see \fBa.out\fR(4)) includes an
+Each archive that contains object files (see \fBa.out\fR(5)) includes an
archive symbol table. This symbol table is used by the link editor \fBld\fR to
determine which archive members must be loaded during the link edit process.
The archive symbol table (if it exists) is always the first file in the archive
@@ -210,7 +210,10 @@ _____________________|______________|___________________________
.SH SEE ALSO
.sp
.LP
-\fBar\fR(1), \fBld\fR(1), \fBstrip\fR(1), \fBa.out\fR(4)
+.BR ar (1),
+.BR ld (1),
+.BR strip (1),
+.BR a.out (5)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3head/assert.h.3head b/usr/src/man/man3head/assert.h.3head
index 682aa2c9ab..8473ab3030 100644
--- a/usr/src/man/man3head/assert.h.3head
+++ b/usr/src/man/man3head/assert.h.3head
@@ -86,7 +86,7 @@ program execution time, \fBstatic_assert()\fR is evaluated and checked by the
compiler at compilation-time.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -101,4 +101,6 @@ Interface Stability Standard
.SH SEE ALSO
.LP
-\fBassert\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR assert (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3head/complex.h.3head b/usr/src/man/man3head/complex.h.3head
index 562de51468..ebbdb54c50 100644
--- a/usr/src/man/man3head/complex.h.3head
+++ b/usr/src/man/man3head/complex.h.3head
@@ -115,7 +115,7 @@ Values are interpreted as radians, not degrees.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -131,12 +131,30 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBcabs\fR(3M), \fBcacos\fR(3M), \fBcacosh\fR(3M), \fBcarg\fR(3M),
-\fBcasin\fR(3M), \fBcasinh\fR(3M), \fBcatan\fR(3M), \fBcatanh\fR(3M),
-\fBccos\fR(3M), \fBccosh\fR(3M), \fBcexp\fR(3M), \fBcimag\fR(3M),
-\fBclog\fR(3M), \fBconj\fR(3M), \fBcpow\fR(3M), \fBcproj\fR(3M),
-\fBcreal\fR(3M), \fBcsin\fR(3M), \fBcsinh\fR(3M), \fBcsqrt\fR(3M),
-\fBctan\fR(3M), \fBctanh\fR(3M), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR cabs (3M),
+.BR cacos (3M),
+.BR cacosh (3M),
+.BR carg (3M),
+.BR casin (3M),
+.BR casinh (3M),
+.BR catan (3M),
+.BR catanh (3M),
+.BR ccos (3M),
+.BR ccosh (3M),
+.BR cexp (3M),
+.BR cimag (3M),
+.BR clog (3M),
+.BR conj (3M),
+.BR cpow (3M),
+.BR cproj (3M),
+.BR creal (3M),
+.BR csin (3M),
+.BR csinh (3M),
+.BR csqrt (3M),
+.BR ctan (3M),
+.BR ctanh (3M),
+.BR attributes (7),
+.BR standards (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3head/cpio.h.3head b/usr/src/man/man3head/cpio.h.3head
index 14d83470e6..d251fbecea 100644
--- a/usr/src/man/man3head/cpio.h.3head
+++ b/usr/src/man/man3head/cpio.h.3head
@@ -100,7 +100,7 @@ MAGIC "070707"
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -116,4 +116,6 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBpax\fR(1), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR pax (1),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3head/dirent.h.3head b/usr/src/man/man3head/dirent.h.3head
index aa22e353d4..63cc084e4f 100644
--- a/usr/src/man/man3head/dirent.h.3head
+++ b/usr/src/man/man3head/dirent.h.3head
@@ -89,7 +89,7 @@ bytes preceding the terminating null byte must not exceed {\fBNAME_MAX\fR}.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -105,6 +105,12 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBclosedir\fR(3C), \fBopendir\fR(3C), \fBreaddir\fR(3C), \fBrewinddir\fR(3C),
-\fBseekdir\fR(3C), \fBtelldir\fR(3C), \fBtypes.h\fR(3HEAD),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR closedir (3C),
+.BR opendir (3C),
+.BR readdir (3C),
+.BR rewinddir (3C),
+.BR seekdir (3C),
+.BR telldir (3C),
+.BR types.h (3HEAD),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3head/endian.h.3head b/usr/src/man/man3head/endian.h.3head
index 87138c2bed..1d03dc4c10 100644
--- a/usr/src/man/man3head/endian.h.3head
+++ b/usr/src/man/man3head/endian.h.3head
@@ -30,7 +30,7 @@ the functions are documented separately in
.Xr endian 3C .
More information on endianness and a general background on the topic can
be found in
-.Xr byteorder 5 .
+.Xr byteorder 7 .
.Pp
The
.In endian.h
@@ -88,5 +88,5 @@ endianness of the system.
.Xr byteorder 3C ,
.Xr endian 3C ,
.Xr types.h 3HEAD ,
-.Xr attributes 5 ,
-.Xr byteorder 5
+.Xr attributes 7 ,
+.Xr byteorder 7
diff --git a/usr/src/man/man3head/errno.h.3head b/usr/src/man/man3head/errno.h.3head
index e7cf2eab11..0975482ef6 100644
--- a/usr/src/man/man3head/errno.h.3head
+++ b/usr/src/man/man3head/errno.h.3head
@@ -66,7 +66,7 @@ non-zero values.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -82,4 +82,6 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBIntro\fR(2), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR Intro (2),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3head/fcntl.h.3head b/usr/src/man/man3head/fcntl.h.3head
index 3e272db601..b525d79947 100644
--- a/usr/src/man/man3head/fcntl.h.3head
+++ b/usr/src/man/man3head/fcntl.h.3head
@@ -456,7 +456,7 @@ Non-blocking mode.
\fB\fBO_NONBLOCK\fR\fR
.ad
.RS 14n
-Non-blocking mode (POSIX; see \fBstandards\fR(5)).
+Non-blocking mode (POSIX; see \fBstandards\fR(7)).
.RE
.sp
@@ -606,7 +606,7 @@ long f_id; /* Process unique identifier */
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -618,14 +618,20 @@ ATTRIBUTE TYPE ATTRIBUTE VALUE
_
Interface Stability Committed
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.LP
-\fBcreat\fR(2), \fBexec\fR(2), \fBfcntl\fR(2), \fBopen\fR(2),
-\fBfdatasync\fR(3C), \fBfsync\fR(3C), \fBfsattr\fR(5), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR creat (2),
+.BR exec (2),
+.BR fcntl (2),
+.BR open (2),
+.BR fdatasync (3C),
+.BR fsync (3C),
+.BR attributes (7),
+.BR fsattr (7),
+.BR standards (7)
.SH NOTES
.LP
Data is successfully transferred for a write operation to a regular file when
diff --git a/usr/src/man/man3head/fenv.h.3head b/usr/src/man/man3head/fenv.h.3head
index b2a9b5426e..856f587cc3 100644
--- a/usr/src/man/man3head/fenv.h.3head
+++ b/usr/src/man/man3head/fenv.h.3head
@@ -235,7 +235,7 @@ must contain an appropriately placed invocation as follows:
.in -2
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -249,8 +249,16 @@ Interface Stability Standard
.TE
.SH SEE ALSO
-\fBfeclearexcept\fR(3M), \fBfegetenv\fR(3M), \fBfegetexceptflag\fR(3M),
-\fBfegetround\fR(3M), \fBfeholdexcept\fR(3M), \fBferaiseexcept\fR(3M),
-\fBfesetenv\fR(3M), \fBfesetexceptflag\fR(3M), \fBfesetround\fR(3M),
-\fBfetestexcept\fR(3M), \fBfeupdateenv\fR(3M), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR feclearexcept (3M),
+.BR fegetenv (3M),
+.BR fegetexceptflag (3M),
+.BR fegetround (3M),
+.BR feholdexcept (3M),
+.BR feraiseexcept (3M),
+.BR fesetenv (3M),
+.BR fesetexceptflag (3M),
+.BR fesetround (3M),
+.BR fetestexcept (3M),
+.BR feupdateenv (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3head/float.h.3head b/usr/src/man/man3head/float.h.3head
index c7bb37c03f..3300b1f64e 100644
--- a/usr/src/man/man3head/float.h.3head
+++ b/usr/src/man/man3head/float.h.3head
@@ -416,7 +416,7 @@ LDBL_MIN
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -432,5 +432,7 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBcomplex.h\fR(3HEAD), \fBmath.h\fR(3HEAD), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR complex.h (3HEAD),
+.BR math.h (3HEAD),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3head/floatingpoint.h.3head b/usr/src/man/man3head/floatingpoint.h.3head
index ee7e030d36..e8eefad43e 100644
--- a/usr/src/man/man3head/floatingpoint.h.3head
+++ b/usr/src/man/man3head/floatingpoint.h.3head
@@ -213,6 +213,10 @@ numbers, infinities, or NaNs.
.SH SEE ALSO
.sp
.LP
-\fBabort\fR(3C), \fBdecimal_to_floating\fR(3C), \fBeconvert\fR(3C),
-\fBfloating_to_decimal\fR(3C), \fBsigfpe\fR(3C), \fBstring_to_decimal\fR(3C),
-\fBstrtod\fR(3C)
+.BR abort (3C),
+.BR decimal_to_floating (3C),
+.BR econvert (3C),
+.BR floating_to_decimal (3C),
+.BR sigfpe (3C),
+.BR string_to_decimal (3C),
+.BR strtod (3C)
diff --git a/usr/src/man/man3head/fmtmsg.h.3head b/usr/src/man/man3head/fmtmsg.h.3head
index 0915c2d2d2..245a4adcd3 100644
--- a/usr/src/man/man3head/fmtmsg.h.3head
+++ b/usr/src/man/man3head/fmtmsg.h.3head
@@ -257,7 +257,7 @@ The function was unable to generate a console message, but otherwise succeeded.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -273,4 +273,6 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBfmtmsg\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR fmtmsg (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3head/fnmatch.h.3head b/usr/src/man/man3head/fnmatch.h.3head
index b566905257..a4413f4dcb 100644
--- a/usr/src/man/man3head/fnmatch.h.3head
+++ b/usr/src/man/man3head/fnmatch.h.3head
@@ -104,7 +104,7 @@ Reserved.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -120,4 +120,6 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBfnmatch\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR fnmatch (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3head/ftw.h.3head b/usr/src/man/man3head/ftw.h.3head
index 3b3e4acd77..0084b9ad99 100644
--- a/usr/src/man/man3head/ftw.h.3head
+++ b/usr/src/man/man3head/ftw.h.3head
@@ -186,7 +186,7 @@ Inclusion of the <\fBftw.h\fR> header might also make visible all symbols from
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -202,4 +202,7 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBftw\fR(3C), \fBstat.h\fR(3HEAD), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR ftw (3C),
+.BR stat.h (3HEAD),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3head/glob.h.3head b/usr/src/man/man3head/glob.h.3head
index 34af2671fc..7f3713de35 100644
--- a/usr/src/man/man3head/glob.h.3head
+++ b/usr/src/man/man3head/glob.h.3head
@@ -182,7 +182,7 @@ Reserved.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -198,4 +198,6 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBglob\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR glob (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3head/grp.h.3head b/usr/src/man/man3head/grp.h.3head
index 875f1f7480..07fdb0d57d 100644
--- a/usr/src/man/man3head/grp.h.3head
+++ b/usr/src/man/man3head/grp.h.3head
@@ -74,7 +74,7 @@ The \fBgid_t\fR type is defined as described in <\fBsys/types.h\fR> (see
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -90,5 +90,7 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBgetgrnam\fR(3C), \fBtypes.h\fR(3HEAD), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR getgrnam (3C),
+.BR types.h (3HEAD),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3head/iconv.h.3head b/usr/src/man/man3head/iconv.h.3head
index 888b3ebb96..e8dc932860 100644
--- a/usr/src/man/man3head/iconv.h.3head
+++ b/usr/src/man/man3head/iconv.h.3head
@@ -68,7 +68,7 @@ Identifies the conversion from one codeset to another.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -84,5 +84,8 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBiconv\fR(3C), \fBiconv_close\fR(3C), \fBiconv_open\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR iconv (3C),
+.BR iconv_close (3C),
+.BR iconv_open (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3head/if.h.3head b/usr/src/man/man3head/if.h.3head
index 7c7f937991..e0bf4fcaea 100644
--- a/usr/src/man/man3head/if.h.3head
+++ b/usr/src/man/man3head/if.h.3head
@@ -81,7 +81,7 @@ interface name length
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -97,4 +97,6 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBif_nametoindex\fR(3XNET), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR if_nametoindex (3XNET),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3head/in.h.3head b/usr/src/man/man3head/in.h.3head
index 691a791d2e..d341a81f84 100644
--- a/usr/src/man/man3head/in.h.3head
+++ b/usr/src/man/man3head/in.h.3head
@@ -159,7 +159,7 @@ must be cast to \fBstruct sockaddr\fR for use with the socket interfaces.
.LP
For applications that do not require standard-conforming behavior (those that
use the socket interfaces described in section (3SOCKET) of the reference
-manual; see \fBIntro\fR(3) and \fBstandards\fR(5)), the <\fBnetinet/in.h\fR>
+manual; see \fBIntro\fR(3) and \fBstandards\fR(7)), the <\fBnetinet/in.h\fR>
header defines the \fBsockaddr_in\fR structure that includes the following
members:
.sp
@@ -176,7 +176,7 @@ char sin_zero[8]
.LP
For applications that require standard-conforming behavior (those that use the
socket interfaces described in section (3XNET) of the reference manual; see
-\fBIntro\fR(3) and \fBstandards\fR(5)), the <\fBnetinet/in.h\fR> header defines
+\fBIntro\fR(3) and \fBstandards\fR(7)), the <\fBnetinet/in.h\fR> header defines
the \fBsockaddr_in\fR structure that includes the following members:
.sp
.in +2
@@ -190,7 +190,7 @@ unsigned char sin_zero[8]
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -205,8 +205,18 @@ Interface Stability Standard
.SH SEE ALSO
.LP
-\fBIntro\fR(3), \fBconnect\fR(3SOCKET), \fBconnect\fR(3XNET),
-\fBgetsockopt\fR(3SOCKET), \fBgetsockopt\fR(3XNET), \fBsendmsg\fR(3SOCKET),
-\fBsendmsg\fR(3XNET), \fBsendto\fR(3SOCKET), \fBsendto\fR(3XNET),
-\fBsetsockopt\fR(3SOCKET), \fBsetsockopt\fR(3XNET), \fBsockaddr\fR(3SOCKET),
-\fBsocket.h\fR(3HEAD), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR Intro (3),
+.BR socket.h (3HEAD),
+.BR connect (3SOCKET),
+.BR getsockopt (3SOCKET),
+.BR sendmsg (3SOCKET),
+.BR sendto (3SOCKET),
+.BR setsockopt (3SOCKET),
+.BR sockaddr (3SOCKET),
+.BR connect (3XNET),
+.BR getsockopt (3XNET),
+.BR sendmsg (3XNET),
+.BR sendto (3XNET),
+.BR setsockopt (3XNET),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3head/inet.h.3head b/usr/src/man/man3head/inet.h.3head
index 8e48664781..b020f073f2 100644
--- a/usr/src/man/man3head/inet.h.3head
+++ b/usr/src/man/man3head/inet.h.3head
@@ -80,7 +80,7 @@ char *inet_ntoa(struct in_addr);
.LP
For applications that do not require standard-conforming behavior (those that
use the socket interfaces described in section 3N of the reference manual; see
-\fBIntro\fR(3) and \fBstandards\fR(5)), the following may be declared as
+\fBIntro\fR(3) and \fBstandards\fR(7)), the following may be declared as
functions, or defined as macros, or both:
.sp
.in +2
@@ -96,7 +96,7 @@ uint16_t ntohs(uint16_t);
.LP
For applications that require standard-conforming behavior (those that use the
socket interfaces described in section 3XN of the reference manual; see
-\fBIntro\fR(3) and \fBstandards\fR(5)), the following may be declared as
+\fBIntro\fR(3) and \fBstandards\fR(7)), the following may be declared as
functions, or defined as macros, or both:
.sp
.in +2
@@ -110,7 +110,7 @@ in_port_t ntohs(in_port_t);
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -125,6 +125,10 @@ Interface Stability Standard
.SH SEE ALSO
.LP
-\fBIntro\fR(3), \fBhtonl\fR(3C),
-\fBinet_addr\fR(3C), \fBinet_addr\fR(3XNET), \fBin.h\fR(3HEAD),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR Intro (3),
+.BR htonl (3C),
+.BR inet_addr (3C),
+.BR in.h (3HEAD),
+.BR inet_addr (3XNET),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3head/inttypes.h.3head b/usr/src/man/man3head/inttypes.h.3head
index 7ddc644756..7e88a88f08 100644
--- a/usr/src/man/man3head/inttypes.h.3head
+++ b/usr/src/man/man3head/inttypes.h.3head
@@ -171,7 +171,7 @@ int main(void)
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -187,4 +187,6 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBimaxdiv\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR imaxdiv (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3head/ipc.h.3head b/usr/src/man/man3head/ipc.h.3head
index 9376d0049c..70ed23aa22 100644
--- a/usr/src/man/man3head/ipc.h.3head
+++ b/usr/src/man/man3head/ipc.h.3head
@@ -155,7 +155,7 @@ Get options.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -171,4 +171,7 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBftok\fR(3C), \fBtypes.h\fR(3HEAD), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR ftok (3C),
+.BR types.h (3HEAD),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3head/iso646.h.3head b/usr/src/man/man3head/iso646.h.3head
index 16bcf7ae68..8e323cb66a 100644
--- a/usr/src/man/man3head/iso646.h.3head
+++ b/usr/src/man/man3head/iso646.h.3head
@@ -159,7 +159,7 @@ expand to the corresponding tokens (on the right):
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -175,4 +175,5 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3head/langinfo.h.3head b/usr/src/man/man3head/langinfo.h.3head
index 99cf84768e..db4ce11134 100644
--- a/usr/src/man/man3head/langinfo.h.3head
+++ b/usr/src/man/man3head/langinfo.h.3head
@@ -204,7 +204,7 @@ used to access information corresponding to \fBRADIXCHAR\fR, \fBTHOUSEP\fR, and
\fBCRNCYSTR\fR.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -219,6 +219,11 @@ Interface Stability Standard
.SH SEE ALSO
.LP
-\fBmkmsgs\fR(1), \fBlocaleconv\fR(3C), \fBnl_langinfo\fR(3C),
-\fBnl_types.h\fR(3HEAD), \fBsetlocale\fR(3C), \fBstrftime\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR mkmsgs (1),
+.BR localeconv (3C),
+.BR nl_langinfo (3C),
+.BR setlocale (3C),
+.BR strftime (3C),
+.BR nl_types.h (3HEAD),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3head/libgen.h.3head b/usr/src/man/man3head/libgen.h.3head
index 7e296c05c5..e95297ef6a 100644
--- a/usr/src/man/man3head/libgen.h.3head
+++ b/usr/src/man/man3head/libgen.h.3head
@@ -60,7 +60,7 @@ and pathname manipulation. See \fBlibgen\fR(3LIB).
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -76,5 +76,8 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBbasename\fR(3C), \fBdirname\fR(3C), \fBlibgen\fR(3LIB), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR basename (3C),
+.BR dirname (3C),
+.BR libgen (3LIB),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3head/libintl.h.3head b/usr/src/man/man3head/libintl.h.3head
index 0c6878840f..a48fea6a23 100644
--- a/usr/src/man/man3head/libintl.h.3head
+++ b/usr/src/man/man3head/libintl.h.3head
@@ -30,7 +30,7 @@ specified major revision of the GNU MO file format.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -46,4 +46,5 @@ Interface Stability Uncommitted
.SH SEE ALSO
.sp
.LP
-\fBgettext\fR(3C), \fBattributes\fR(5)
+.BR gettext (3C),
+.BR attributes (7)
diff --git a/usr/src/man/man3head/limits.h.3head b/usr/src/man/man3head/limits.h.3head
index 0e9e9fd470..b7a8d452fe 100644
--- a/usr/src/man/man3head/limits.h.3head
+++ b/usr/src/man/man3head/limits.h.3head
@@ -716,7 +716,7 @@ The resolution of the \fBCLOCK_REALTIME\fR clock, in nanoseconds.
The symbolic constants in the following list are symbolic names for the most
restrictive value for certain features on an implementation conforming to
various POSIX and Single Unix Specification requirements. See
-\fBstandards\fR(5).
+\fBstandards\fR(7).
.sp
.ne 2
.na
@@ -1594,4 +1594,7 @@ Default process priority.
.SH SEE ALSO
.sp
.LP
-\fBfpathconf\fR(2), \fBpathconf\fR(2), \fBsysconf\fR(3C), \fBstandards\fR(5)
+.BR fpathconf (2),
+.BR pathconf (2),
+.BR sysconf (3C),
+.BR standards (7)
diff --git a/usr/src/man/man3head/locale.h.3head b/usr/src/man/man3head/locale.h.3head
index 70f94979fb..c3dd5ee3a5 100644
--- a/usr/src/man/man3head/locale.h.3head
+++ b/usr/src/man/man3head/locale.h.3head
@@ -57,7 +57,7 @@ locale.h, locale \- category macros
.LP
The <\fBlocale.h\fR> header provides a definition for the \fBlconv\fR
structure, which includes the following members. (See the definition of
-\fBLC_MONETARY\fR in \fBlocale\fR(5).)
+\fBLC_MONETARY\fR in \fBlocale\fR(7).)
.sp
.in +2
.nf
@@ -159,7 +159,7 @@ Additional macro definitions, beginning with the characters \fBLC_\fR and an
uppercase letter, can also be specified here.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.TS
box;
c | c
@@ -177,6 +177,6 @@ Interface Stability Standard
.BR uselocale (3C),
.BR localeconv (3C),
.BR stddef.h (3HEAD),
-.BR attributes (5),
-.BR locale (5),
-.BR standards (5)
+.BR attributes (7),
+.BR locale (7),
+.BR standards (7)
diff --git a/usr/src/man/man3head/math.h.3head b/usr/src/man/man3head/math.h.3head
index 6f24cc874c..78255659c5 100644
--- a/usr/src/man/man3head/math.h.3head
+++ b/usr/src/man/man3head/math.h.3head
@@ -388,7 +388,7 @@ The <\fBmath.h\fR> header defines the structure and constants used by the
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -404,5 +404,10 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBIntro\fR(3), \fBfenv.h\fR(3HEAD), \fBlibm\fR(3LIB), \fBlimits.h\fR(3HEAD),
-\fBmatherr\fR(3M), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR Intro (3),
+.BR fenv.h (3HEAD),
+.BR limits.h (3HEAD),
+.BR libm (3LIB),
+.BR matherr (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3head/mman.h.3head b/usr/src/man/man3head/mman.h.3head
index 4ccf3f9a99..b0619bb03a 100644
--- a/usr/src/man/man3head/mman.h.3head
+++ b/usr/src/man/man3head/mman.h.3head
@@ -220,7 +220,7 @@ described in <\fBsys/types.h\fR>. See \fBtypes\fR(3HEAD).
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -232,12 +232,20 @@ ATTRIBUTE TYPE ATTRIBUTE VALUE
_
Interface Stability Committed
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.sp
.LP
-\fBmmap\fR(2), \fBmprotect\fR(2), \fBmunmap\fR(2), \fBmadvise\fR(3C),
-\fBmlock\fR(3C), \fBmlockall\fR(3C), \fBmsync\fR(3C), \fBshm_open\fR(3C),
-\fBshm_unlink\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR mmap (2),
+.BR mprotect (2),
+.BR munmap (2),
+.BR madvise (3C),
+.BR mlock (3C),
+.BR mlockall (3C),
+.BR msync (3C),
+.BR shm_open (3C),
+.BR shm_unlink (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3head/monetary.h.3head b/usr/src/man/man3head/monetary.h.3head
index 62d4c703f3..abb31e2ccb 100644
--- a/usr/src/man/man3head/monetary.h.3head
+++ b/usr/src/man/man3head/monetary.h.3head
@@ -77,7 +77,7 @@ As described in \fBtypes.h\fR(3HEAD).
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -93,5 +93,8 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBstddef.h\fR(3HEAD), \fBstrfmon\fR(3C), \fBtypes.h\fR(3HEAD),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR strfmon (3C),
+.BR stddef.h (3HEAD),
+.BR types.h (3HEAD),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3head/mqueue.h.3head b/usr/src/man/man3head/mqueue.h.3head
index 76fe62535a..34eb4c6589 100644
--- a/usr/src/man/man3head/mqueue.h.3head
+++ b/usr/src/man/man3head/mqueue.h.3head
@@ -85,7 +85,7 @@ the headers <\fBfcntl.h\fR>, <\fBsignal.h\fR>, <\fBsys/types.h\fR>, and
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -101,5 +101,9 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBfcntl.h\fR(3HEAD), \fBsignal.h\fR(3HEAD), \fBtime.h\fR(3HEAD),
-\fBtypes.h\fR(3HEAD), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR fcntl.h (3HEAD),
+.BR signal.h (3HEAD),
+.BR time.h (3HEAD),
+.BR types.h (3HEAD),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3head/msg.h.3head b/usr/src/man/man3head/msg.h.3head
index fceaddf562..0420b33adc 100644
--- a/usr/src/man/man3head/msg.h.3head
+++ b/usr/src/man/man3head/msg.h.3head
@@ -118,7 +118,7 @@ types are defined as described in <\fBsys/types.h\fR>. See \fBtypes\fR(3HEAD).
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -134,6 +134,11 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBmsgctl\fR(2), \fBmsgget\fR(2), \fBmsgrcv\fR(2), \fBmsgsnd\fR(2),
-\fBipc.h\fR(3HEAD), \fBtypes.h\fR(3HEAD), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR msgctl (2),
+.BR msgget (2),
+.BR msgrcv (2),
+.BR msgsnd (2),
+.BR ipc.h (3HEAD),
+.BR types.h (3HEAD),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3head/ndbm.h.3head b/usr/src/man/man3head/ndbm.h.3head
index 1e138255f9..dbd8563fae 100644
--- a/usr/src/man/man3head/ndbm.h.3head
+++ b/usr/src/man/man3head/ndbm.h.3head
@@ -97,7 +97,7 @@ Allow replacing existing entries.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -113,4 +113,6 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBndbm\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR ndbm (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3head/netdb.h.3head b/usr/src/man/man3head/netdb.h.3head
index 4c8545f533..85735b09ef 100644
--- a/usr/src/man/man3head/netdb.h.3head
+++ b/usr/src/man/man3head/netdb.h.3head
@@ -159,7 +159,7 @@ Inclusion of the <\fBnetdb.h\fR> header may also make visible all symbols from
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -175,7 +175,15 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBIntro\fR(3), \fBendhostent\fR(3NSL), \fBendhostent\fR(3XNET),
-\fBendnetent\fR(3SOCKET), \fBendnetent\fR(3XNET), \fBendprotoent\fR(3SOCKET),
-\fBendprotoent\fR(3XNET), \fBendservent\fR(3SOCKET), \fBendservent\fR(3XNET),
-\fBin.h\fR(3HEAD), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR Intro (3),
+.BR in.h (3HEAD),
+.BR endhostent (3NSL),
+.BR endnetent (3SOCKET),
+.BR endprotoent (3SOCKET),
+.BR endservent (3SOCKET),
+.BR endhostent (3XNET),
+.BR endnetent (3XNET),
+.BR endprotoent (3XNET),
+.BR endservent (3XNET),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3head/nl_types.h.3head b/usr/src/man/man3head/nl_types.h.3head
index d4f4da07e7..fe6a65578f 100644
--- a/usr/src/man/man3head/nl_types.h.3head
+++ b/usr/src/man/man3head/nl_types.h.3head
@@ -77,5 +77,8 @@ Maximum size of a message.
.SH SEE ALSO
.sp
.LP
-\fBgencat\fR(1), \fBcatgets\fR(3C), \fBcatopen\fR(3C), \fBnl_langinfo\fR(3C),
-\fBlanginfo.h\fR(3HEAD)
+.BR gencat (1),
+.BR catgets (3C),
+.BR catopen (3C),
+.BR nl_langinfo (3C),
+.BR langinfo.h (3HEAD)
diff --git a/usr/src/man/man3head/poll.h.3head b/usr/src/man/man3head/poll.h.3head
index 9ac36e8c3c..0022477f46 100644
--- a/usr/src/man/man3head/poll.h.3head
+++ b/usr/src/man/man3head/poll.h.3head
@@ -205,7 +205,7 @@ file and device-specific.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -221,5 +221,8 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBgetconf\fR(1), \fBpoll\fR(2), \fBconfstr\fR(3C), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR getconf (1),
+.BR poll (2),
+.BR confstr (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3head/pthread.h.3head b/usr/src/man/man3head/pthread.h.3head
index 1406e65414..174969ad5f 100644
--- a/usr/src/man/man3head/pthread.h.3head
+++ b/usr/src/man/man3head/pthread.h.3head
@@ -115,7 +115,7 @@ pthread_t
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -131,22 +131,44 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBsched.h\fR(3HEAD), \fBtime.h\fR(3HEAD), \fBtypes.h\fR(3HEAD),
-\fBpthread_attr_getguardsize\fR(3C), \fBpthread_attr_init\fR(3C),
-\fBpthread_attr_setscope\fR(3C), \fBpthread_cancel\fR(3C),
-\fBpthread_cleanup_pop\fR(3C), \fBpthread_cond_init\fR(3C),
-\fBpthread_cond_signal\fR(3C), \fBpthread_cond_wait\fR(3C),
-\fBpthread_condattr_init\fR(3C), \fBpthread_create\fR(3C),
-\fBpthread_detach\fR(3C), \fBpthread_equal\fR(3C), \fBpthread_exit\fR(3C),
-\fBpthread_getconcurrency\fR(3C), \fBpthread_getschedparam\fR(3C),
-\fBpthread_join\fR(3C), \fBpthread_key_create\fR(3C),
-\fBpthread_key_delete\fR(3C), \fBpthread_mutex_consistent\fR(3C),
-\fBpthread_mutex_init\fR(3C), \fBpthread_mutex_lock\fR(3C),
-\fBpthread_mutex_setprioceiling\fR(3C), \fBpthread_mutexattr_getrobust\fR(3C),
-\fBpthread_mutexattr_gettype\fR(3C), \fBpthread_mutexattr_getprotocol\fR(3C),
-\fBpthread_mutexattr_init\fR(3C), \fBpthread_once\fR(3C),
-\fBpthread_rwlock_init\fR(3C), \fBpthread_rwlock_rdlock\fR(3C),
-\fBpthread_rwlock_unlock\fR(3C), \fBpthread_rwlock_wrlock\fR(3C),
-\fBpthread_rwlockattr_getpshared\fR(3C), \fBpthread_rwlockattr_init\fR(3C),
-\fBpthread_self\fR(3C), \fBpthread_setcancelstate\fR(3C),
-\fBpthread_setspecific\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR pthread_attr_getguardsize (3C),
+.BR pthread_attr_init (3C),
+.BR pthread_attr_setscope (3C),
+.BR pthread_cancel (3C),
+.BR pthread_cleanup_pop (3C),
+.BR pthread_cond_init (3C),
+.BR pthread_cond_signal (3C),
+.BR pthread_cond_wait (3C),
+.BR pthread_condattr_init (3C),
+.BR pthread_create (3C),
+.BR pthread_detach (3C),
+.BR pthread_equal (3C),
+.BR pthread_exit (3C),
+.BR pthread_getconcurrency (3C),
+.BR pthread_getschedparam (3C),
+.BR pthread_join (3C),
+.BR pthread_key_create (3C),
+.BR pthread_key_delete (3C),
+.BR pthread_mutex_consistent (3C),
+.BR pthread_mutex_init (3C),
+.BR pthread_mutex_lock (3C),
+.BR pthread_mutex_setprioceiling (3C),
+.BR pthread_mutexattr_getprotocol (3C),
+.BR pthread_mutexattr_getrobust (3C),
+.BR pthread_mutexattr_gettype (3C),
+.BR pthread_mutexattr_init (3C),
+.BR pthread_once (3C),
+.BR pthread_rwlock_init (3C),
+.BR pthread_rwlock_rdlock (3C),
+.BR pthread_rwlock_unlock (3C),
+.BR pthread_rwlock_wrlock (3C),
+.BR pthread_rwlockattr_getpshared (3C),
+.BR pthread_rwlockattr_init (3C),
+.BR pthread_self (3C),
+.BR pthread_setcancelstate (3C),
+.BR pthread_setspecific (3C),
+.BR sched.h (3HEAD),
+.BR time.h (3HEAD),
+.BR types.h (3HEAD),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3head/pwd.h.3head b/usr/src/man/man3head/pwd.h.3head
index 37de8c6486..9085166cdc 100644
--- a/usr/src/man/man3head/pwd.h.3head
+++ b/usr/src/man/man3head/pwd.h.3head
@@ -75,7 +75,7 @@ The \fBgid_t\fR and \fBuid_t\fR types are defined as described in
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -91,5 +91,7 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBgetpwnam\fR(3C), \fBtypes.h\fR(3HEAD), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR getpwnam (3C),
+.BR types.h (3HEAD),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3head/regex.h.3head b/usr/src/man/man3head/regex.h.3head
index ccc0abbb3f..bee583ecdc 100644
--- a/usr/src/man/man3head/regex.h.3head
+++ b/usr/src/man/man3head/regex.h.3head
@@ -285,7 +285,7 @@ Reserved.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -301,5 +301,7 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBregcomp\fR(3C), \fBtypes.h\fR(3HEAD), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR regcomp (3C),
+.BR types.h (3HEAD),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3head/resource.h.3head b/usr/src/man/man3head/resource.h.3head
index d5f0a8e4d9..204a26b349 100644
--- a/usr/src/man/man3head/resource.h.3head
+++ b/usr/src/man/man3head/resource.h.3head
@@ -255,7 +255,7 @@ symbols from <\fBsys/time.h\fR>. See \fBtime.h\fR(3HEAD).
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -271,5 +271,9 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBgetrlimit\fR(2), \fBgetpriority\fR(3C), \fBtime.h\fR(3HEAD),
-\fBtypes.h\fR(3HEAD), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR getrlimit (2),
+.BR getpriority (3C),
+.BR time.h (3HEAD),
+.BR types.h (3HEAD),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3head/sched.h.3head b/usr/src/man/man3head/sched.h.3head
index 060cba30a6..d844b6ad32 100644
--- a/usr/src/man/man3head/sched.h.3head
+++ b/usr/src/man/man3head/sched.h.3head
@@ -149,6 +149,8 @@ the header \fB<time.h>\fR.
.SH SEE ALSO
.sp
.LP
-\fBpriocntl\fR(2), \fBsched_get_priority_max\fR(3C),
-\fBsched_get_priority_min\fR(3C), \fBsched_rr_get_interval\fR(3C),
-\fBtime.h\fR(3HEAD)
+.BR priocntl (2),
+.BR sched_get_priority_max (3C),
+.BR sched_get_priority_min (3C),
+.BR sched_rr_get_interval (3C),
+.BR time.h (3HEAD)
diff --git a/usr/src/man/man3head/search.h.3head b/usr/src/man/man3head/search.h.3head
index 3d84b53533..7f54f66cfb 100644
--- a/usr/src/man/man3head/search.h.3head
+++ b/usr/src/man/man3head/search.h.3head
@@ -84,7 +84,7 @@ The \fBsize_t\fR type is defined as described in <\fBsys/types.h\fR>. See
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -100,5 +100,10 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBhsearch\fR(3C), \fBinsque\fR(3C), \fBlsearch\fR(3C), \fBtsearch\fR(3C),
-\fBtypes.h\fR(3HEAD), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR hsearch (3C),
+.BR insque (3C),
+.BR lsearch (3C),
+.BR tsearch (3C),
+.BR types.h (3HEAD),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3head/select.h.3head b/usr/src/man/man3head/select.h.3head
index 0188f77db5..5ab945704e 100644
--- a/usr/src/man/man3head/select.h.3head
+++ b/usr/src/man/man3head/select.h.3head
@@ -98,7 +98,7 @@ the headers <\fBsignal.h\fR>, <\fBsys/time.h\fR>, and <\fBtime.h\fR>.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -114,5 +114,9 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBselect\fR(3C), \fBsignal.h\fR(3HEAD), \fBtime.h\fR(3HEAD),
-\fBtypes.h\fR(3HEAD), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR select (3C),
+.BR signal.h (3HEAD),
+.BR time.h (3HEAD),
+.BR types.h (3HEAD),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3head/sem.h.3head b/usr/src/man/man3head/sem.h.3head
index a7f98c3b02..53038b5253 100644
--- a/usr/src/man/man3head/sem.h.3head
+++ b/usr/src/man/man3head/sem.h.3head
@@ -187,7 +187,7 @@ included. See \fBipc.h\fR(3HEAD).
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -203,5 +203,10 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBsemctl\fR(2), \fBsemget\fR(2), \fBsemop\fR(2), \fBipc.h\fR(3HEAD),
-\fBtypes.h\fR(3HEAD), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR semctl (2),
+.BR semget (2),
+.BR semop (2),
+.BR ipc.h (3HEAD),
+.BR types.h (3HEAD),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3head/semaphore.h.3head b/usr/src/man/man3head/semaphore.h.3head
index 58051cc895..4cc306f595 100644
--- a/usr/src/man/man3head/semaphore.h.3head
+++ b/usr/src/man/man3head/semaphore.h.3head
@@ -68,7 +68,7 @@ and \fBtypes.h\fR(3HEAD).
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -80,13 +80,21 @@ ATTRIBUTE TYPE ATTRIBUTE VALUE
_
Interface Stability Committed
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.sp
.LP
-\fBfcntl.h\fR(3HEAD), \fBtypes.h\fR(3HEAD), \fBsem_destroy\fR(3C),
-\fBsem_getvalue\fR(3C), \fBsem_init\fR(3C), \fBsem_open\fR(3C),
-\fBsem_post\fR(3C), \fBsem_timedwait\fR(3C), \fBsem_unlink\fR(3C),
-\fBsem_wait\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR sem_destroy (3C),
+.BR sem_getvalue (3C),
+.BR sem_init (3C),
+.BR sem_open (3C),
+.BR sem_post (3C),
+.BR sem_timedwait (3C),
+.BR sem_unlink (3C),
+.BR sem_wait (3C),
+.BR fcntl.h (3HEAD),
+.BR types.h (3HEAD),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3head/setjmp.h.3head b/usr/src/man/man3head/setjmp.h.3head
index 24a75aa96d..de95613a90 100644
--- a/usr/src/man/man3head/setjmp.h.3head
+++ b/usr/src/man/man3head/setjmp.h.3head
@@ -61,7 +61,7 @@ to enable the visibility of the symbols in this header.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -77,4 +77,7 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fB_longjmp\fR(3C), \fBsetjmp\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR _longjmp (3C),
+.BR setjmp (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3head/shm.h.3head b/usr/src/man/man3head/shm.h.3head
index 6d5b155d2e..4988a6a2e3 100644
--- a/usr/src/man/man3head/shm.h.3head
+++ b/usr/src/man/man3head/shm.h.3head
@@ -128,7 +128,7 @@ header is included.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -144,5 +144,10 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBshmctl\fR(2), \fBshmget\fR(2), \fBshmop\fR(2), \fBipc.h\fR(3HEAD),
-\fBtypes.h\fR(3HEAD), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR shmctl (2),
+.BR shmget (2),
+.BR shmop (2),
+.BR ipc.h (3HEAD),
+.BR types.h (3HEAD),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3head/siginfo.h.3head b/usr/src/man/man3head/siginfo.h.3head
index f639a75def..db0064115b 100644
--- a/usr/src/man/man3head/siginfo.h.3head
+++ b/usr/src/man/man3head/siginfo.h.3head
@@ -259,10 +259,20 @@ T}
.SH SEE ALSO
.sp
.LP
-\fB_lwp_kill\fR(2), \fBkill\fR(2), \fBsetrctl\fR(2), \fBsigaction\fR(2),
-\fBsigsend\fR(2), \fBwaitid\fR(2), \fBabort\fR(3C), \fBaio_read\fR(3C),
-\fBmq_notify\fR(3C), \fBraise\fR(3C), \fBsignal.h\fR(3HEAD),
-\fBsigqueue\fR(3C), \fBtimer_create\fR(3C), \fBtimer_settime\fR(3C)
+.BR _lwp_kill (2),
+.BR kill (2),
+.BR setrctl (2),
+.BR sigaction (2),
+.BR sigsend (2),
+.BR waitid (2),
+.BR abort (3C),
+.BR aio_read (3C),
+.BR mq_notify (3C),
+.BR raise (3C),
+.BR sigqueue (3C),
+.BR timer_create (3C),
+.BR timer_settime (3C),
+.BR signal.h (3HEAD)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3head/signal.h.3head b/usr/src/man/man3head/signal.h.3head
index 7645c24c45..f17ddd9c49 100644
--- a/usr/src/man/man3head/signal.h.3head
+++ b/usr/src/man/man3head/signal.h.3head
@@ -161,9 +161,9 @@ The signals currently defined by <\fBsignal.h\fR> are as follows:
c c c c
l l l l .
Name Value Default Event
-\fBSIGHUP\fR 1 Exit Hangup (see \fBtermio\fR(7I))
-\fBSIGINT\fR 2 Exit Interrupt (see \fBtermio\fR(7I))
-\fBSIGQUIT\fR 3 Core Quit (see \fBtermio\fR(7I))
+\fBSIGHUP\fR 1 Exit Hangup (see \fBtermio\fR(4I))
+\fBSIGINT\fR 2 Exit Interrupt (see \fBtermio\fR(4I))
+\fBSIGQUIT\fR 3 Core Quit (see \fBtermio\fR(4I))
\fBSIGILL\fR 4 Core Illegal Instruction
\fBSIGTRAP\fR 5 Core Trace or Breakpoint Trap
\fBSIGABRT\fR 6 Core Abort
@@ -182,12 +182,12 @@ Name Value Default Event
\fBSIGPWR\fR 19 Ignore Power Fail or Restart
\fBSIGWINCH\fR 20 Ignore Window Size Change
\fBSIGURG\fR 21 Ignore Urgent Socket Condition
-\fBSIGPOLL\fR 22 Exit Pollable Event (see \fBstreamio\fR(7I))
+\fBSIGPOLL\fR 22 Exit Pollable Event (see \fBstreamio\fR(4I))
\fBSIGSTOP\fR 23 Stop Stopped (signal)
-\fBSIGTSTP\fR 24 Stop Stopped (user) (see \fBtermio\fR(7I))
+\fBSIGTSTP\fR 24 Stop Stopped (user) (see \fBtermio\fR(4I))
\fBSIGCONT\fR 25 Ignore Continued
-\fBSIGTTIN\fR 26 Stop Stopped (tty input) (see \fBtermio\fR(7I))
-\fBSIGTTOU\fR 27 Stop Stopped (tty output) (see \fBtermio\fR(7I))
+\fBSIGTTIN\fR 26 Stop Stopped (tty input) (see \fBtermio\fR(4I))
+\fBSIGTTOU\fR 27 Stop Stopped (tty output) (see \fBtermio\fR(4I))
\fBSIGVTALRM\fR 28 Exit Virtual Timer Expired
\fBSIGPROF\fR 29 Exit Profiling Timer Expired
\fBSIGXCPU\fR 30 Core T{
@@ -440,7 +440,7 @@ silently discarded.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -452,21 +452,41 @@ ATTRIBUTE TYPE ATTRIBUTE VALUE
_
Interface Stability Committed
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.sp
.LP
-\fBlockd\fR(1M), \fBIntro\fR(2), \fBalarm\fR(2), \fBexit\fR(2), \fBfcntl\fR(2),
-\fBgetrlimit\fR(2), \fBioctl\fR(2), \fBkill\fR(2), \fBpause\fR(2),
-\fBsetrctl\fR(2), \fBsigaction\fR(2), \fBsigaltstack\fR(2),
-\fBsigprocmask\fR(2), \fBsigsend\fR(2), \fBsigsuspend\fR(2), \fBsigwait\fR(2),
-\fBport_associate\fR(3C), \fBpthread_create\fR(3C), \fBpthread_kill\fR(3C),
-\fBpthread_sigmask\fR(3C), \fBsetjmp\fR(3C), \fBsiginfo.h\fR(3HEAD),
-\fBsignal\fR(3C), \fBsigqueue\fR(3C), \fBsigsetops\fR(3C),
-\fBucontext.h\fR(3HEAD), \fBwait\fR(3C), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR Intro (2),
+.BR alarm (2),
+.BR exit (2),
+.BR fcntl (2),
+.BR getrlimit (2),
+.BR ioctl (2),
+.BR kill (2),
+.BR pause (2),
+.BR setrctl (2),
+.BR sigaction (2),
+.BR sigaltstack (2),
+.BR sigprocmask (2),
+.BR sigsend (2),
+.BR sigsuspend (2),
+.BR sigwait (2),
+.BR port_associate (3C),
+.BR pthread_create (3C),
+.BR pthread_kill (3C),
+.BR pthread_sigmask (3C),
+.BR setjmp (3C),
+.BR signal (3C),
+.BR sigqueue (3C),
+.BR sigsetops (3C),
+.BR wait (3C),
+.BR siginfo.h (3HEAD),
+.BR ucontext.h (3HEAD),
+.BR attributes (7),
+.BR standards (7),
+.BR lockd (8)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3head/socket.h.3head b/usr/src/man/man3head/socket.h.3head
index 676e2966b4..5a9dee8c2c 100644
--- a/usr/src/man/man3head/socket.h.3head
+++ b/usr/src/man/man3head/socket.h.3head
@@ -712,7 +712,7 @@ in \fBread\fR(2). The \fImsg_accrights\fR parameter specifies the buffer in
which access rights sent along with the message are received. The
\fImsg_accrightslen\fR specifies the length of the buffer.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -726,18 +726,43 @@ Interface Stability Standard
.TE
.SH SEE ALSO
-\fBaccept\fR(3SOCKET), \fBaccept\fR(3XNET), \fBbind\fR(3SOCKET),
-\fBbind\fR(3XNET), \fBconnect\fR(3SOCKET), \fBconnect\fR(3XNET),
-\fBgetpeername\fR(3SOCKET), \fBgetpeername\fR(3XNET), \fBgetpeerucred\fR(3C),
-\fBgetsockname\fR(3SOCKET), \fBgetsockname\fR(3XNET),
-\fBgetsockopt\fR(3SOCKET), \fBgetsockopt\fR(3XNET), \fBlibsocket\fR(3LIB),
-\fBlisten\fR(3SOCKET), \fBlisten\fR(3XNET), \fBrecv\fR(3SOCKET),
-\fBrecv\fR(3XNET), \fBrecvfrom\fR(3SOCKET), \fBrecvfrom\fR(3XNET),
-\fBrecvmsg\fR(3SOCKET), \fBrecvmsg\fR(3XNET), \fBsend\fR(3SOCKET),
-\fBsend\fR(3XNET), \fBsendmsg\fR(3SOCKET), \fBsendmsg\fR(3XNET),
-\fBsendto\fR(3SOCKET), \fBsendto\fR(3XNET), \fBsetsockopt\fR(3SOCKET),
-\fBsetsockopt\fR(3XNET), \fBshutdown\fR(3SOCKET), \fBshutdown\fR(3XNET),
-\fBsockaddr\fR(3SOCKET),
-\fBsocket\fR(3SOCKET), \fBsocket\fR(3XNET), \fBsocketpair\fR(3SOCKET),
-\fBsocketpair\fR(3XNET), \fBucred_get\fR(3C), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR getpeerucred (3C),
+.BR ucred_get (3C),
+.BR libsocket (3LIB),
+.BR accept (3SOCKET),
+.BR bind (3SOCKET),
+.BR connect (3SOCKET),
+.BR getpeername (3SOCKET),
+.BR getsockname (3SOCKET),
+.BR getsockopt (3SOCKET),
+.BR listen (3SOCKET),
+.BR recv (3SOCKET),
+.BR recvfrom (3SOCKET),
+.BR recvmsg (3SOCKET),
+.BR send (3SOCKET),
+.BR sendmsg (3SOCKET),
+.BR sendto (3SOCKET),
+.BR setsockopt (3SOCKET),
+.BR shutdown (3SOCKET),
+.BR sockaddr (3SOCKET),
+.BR socket (3SOCKET),
+.BR socketpair (3SOCKET),
+.BR accept (3XNET),
+.BR bind (3XNET),
+.BR connect (3XNET),
+.BR getpeername (3XNET),
+.BR getsockname (3XNET),
+.BR getsockopt (3XNET),
+.BR listen (3XNET),
+.BR recv (3XNET),
+.BR recvfrom (3XNET),
+.BR recvmsg (3XNET),
+.BR send (3XNET),
+.BR sendmsg (3XNET),
+.BR sendto (3XNET),
+.BR setsockopt (3XNET),
+.BR shutdown (3XNET),
+.BR socket (3XNET),
+.BR socketpair (3XNET),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3head/spawn.h.3head b/usr/src/man/man3head/spawn.h.3head
index b6d8651796..e5b78fb891 100644
--- a/usr/src/man/man3head/spawn.h.3head
+++ b/usr/src/man/man3head/spawn.h.3head
@@ -81,7 +81,7 @@ Inclusion of the <\fBspawn.h\fR> header can make visible symbols defined in the
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -97,5 +97,9 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBsched.h\fR(3HEAD), \fBsemaphore.h\fR(3HEAD), \fBsignal.h\fR(3HEAD),
-\fBtypes.h\fR(3HEAD), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR sched.h (3HEAD),
+.BR semaphore.h (3HEAD),
+.BR signal.h (3HEAD),
+.BR types.h (3HEAD),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3head/stat.h.3head b/usr/src/man/man3head/stat.h.3head
index 0e4ccde84a..31670e12a3 100644
--- a/usr/src/man/man3head/stat.h.3head
+++ b/usr/src/man/man3head/stat.h.3head
@@ -63,7 +63,7 @@ l l l .
.sp
.LP
-The following macros are for POSIX conformance (see \fBstandards\fR(5)):
+The following macros are for POSIX conformance (see \fBstandards\fR(7)):
.sp
.sp
@@ -93,7 +93,7 @@ of the range [0, 999 999 999], for use with the \fBfutimens()\fR and
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -105,10 +105,13 @@ ATTRIBUTE TYPE ATTRIBUTE VALUE
_
Interface Stability Committed
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.LP
-\fBfutimens\fR(2), \fBstat\fR(2), \fBtypes.h\fR(3HEAD), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR futimens (2),
+.BR stat (2),
+.BR types.h (3HEAD),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3head/statvfs.h.3head b/usr/src/man/man3head/statvfs.h.3head
index d1c68b9ca2..5d271533c8 100644
--- a/usr/src/man/man3head/statvfs.h.3head
+++ b/usr/src/man/man3head/statvfs.h.3head
@@ -109,7 +109,7 @@ does not support \fBsetuid()\fR/\fBsetgid()\fR semantics
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -125,4 +125,7 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBstatvfs\fR(2), \fBtypes.h\fR(3HEAD), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR statvfs (2),
+.BR types.h (3HEAD),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3head/stdbool.h.3head b/usr/src/man/man3head/stdbool.h.3head
index 2c0f36635d..fbce7329e7 100644
--- a/usr/src/man/man3head/stdbool.h.3head
+++ b/usr/src/man/man3head/stdbool.h.3head
@@ -103,7 +103,7 @@ An application can undefine and then possibly redefine the macros \fBbool\fR,
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -119,4 +119,5 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3head/stddef.h.3head b/usr/src/man/man3head/stddef.h.3head
index 3e54a6932d..beba84ef0b 100644
--- a/usr/src/man/man3head/stddef.h.3head
+++ b/usr/src/man/man3head/stddef.h.3head
@@ -133,7 +133,7 @@ be obtained using the \fBconfstr\fR(3C) function or the \fBgetconf\fR(1)
utility.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -148,5 +148,9 @@ Interface Stability Standard
.SH SEE ALSO
.LP
-\fBgetconf\fR(1), \fBconfstr\fR(3C), \fBtypes.h\fR(3HEAD),
-\fBwchar.h\fR(3HEAD), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR getconf (1),
+.BR confstr (3C),
+.BR types.h (3HEAD),
+.BR wchar.h (3HEAD),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3head/stdint.h.3head b/usr/src/man/man3head/stdint.h.3head
index bf64e9473e..2381e03702 100644
--- a/usr/src/man/man3head/stdint.h.3head
+++ b/usr/src/man/man3head/stdint.h.3head
@@ -889,7 +889,7 @@ UINTMAX_C(\fIvalue\fR)
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -903,5 +903,9 @@ Interface Stability Standard
.TE
.SH SEE ALSO
-\fBinttypes.h\fR(3HEAD), \fBsignal.h\fR(3HEAD), \fBstddef.h\fR(3HEAD),
-\fBwchar.h\fR(3HEAD), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR inttypes.h (3HEAD),
+.BR signal.h (3HEAD),
+.BR stddef.h (3HEAD),
+.BR wchar.h (3HEAD),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3head/stdio.h.3head b/usr/src/man/man3head/stdio.h.3head
index 06446d9302..01233e7fd2 100644
--- a/usr/src/man/man3head/stdio.h.3head
+++ b/usr/src/man/man3head/stdio.h.3head
@@ -285,7 +285,7 @@ as described in <\fBstddef.h\fR>
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -301,12 +301,39 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBrename\fR(2), \fBctermid\fR(3C), \fBfclose\fR(3C), \fBfdopen\fR(3C),
-\fBfflush\fR(3C), \fBfgetc\fR(3C), \fBfgetpos\fR(3C), \fBfgets\fR(3C),
-\fBflockfile\fR(3C), \fBfopen\fR(3C), \fBfputc\fR(3C), \fBfputs\fR(3C),
-\fBfputwc\fR(3C), \fBfread\fR(3C), \fBfreopen\fR(3C), \fBfseek\fR(3C),
-\fBfsetpos\fR(3C), \fBftell\fR(3C), \fBfwrite\fR(3C), \fBgetwchar\fR(3C),
-\fBgetopt\fR(3C), \fBperror\fR(3C), \fBpopen\fR(3C), \fBprintf\fR(3C),
-\fBremove\fR(3C), \fBrewind\fR(3C), \fBscanf\fR(3C), \fBsetbuf\fR(3C),
-\fBstdio\fR(3C), \fBsystem\fR(3C), \fBtmpfile\fR(3C), \fBtmpnam\fR(3C),
-\fBungetc\fR(3C), \fBvprintf\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR rename (2),
+.BR ctermid (3C),
+.BR fclose (3C),
+.BR fdopen (3C),
+.BR fflush (3C),
+.BR fgetc (3C),
+.BR fgetpos (3C),
+.BR fgets (3C),
+.BR flockfile (3C),
+.BR fopen (3C),
+.BR fputc (3C),
+.BR fputs (3C),
+.BR fputwc (3C),
+.BR fread (3C),
+.BR freopen (3C),
+.BR fseek (3C),
+.BR fsetpos (3C),
+.BR ftell (3C),
+.BR fwrite (3C),
+.BR getopt (3C),
+.BR getwchar (3C),
+.BR perror (3C),
+.BR popen (3C),
+.BR printf (3C),
+.BR remove (3C),
+.BR rewind (3C),
+.BR scanf (3C),
+.BR setbuf (3C),
+.BR stdio (3C),
+.BR system (3C),
+.BR tmpfile (3C),
+.BR tmpnam (3C),
+.BR ungetc (3C),
+.BR vprintf (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3head/stdlib.h.3head b/usr/src/man/man3head/stdlib.h.3head
index 3158ab038c..b8ba0ba8aa 100644
--- a/usr/src/man/man3head/stdlib.h.3head
+++ b/usr/src/man/man3head/stdlib.h.3head
@@ -177,7 +177,7 @@ WTERMSIG
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -193,13 +193,37 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBa64l\fR(3C), \fBabort\fR(3C), \fBabs\fR(3C), \fBatexit\fR(3C),
-\fBbsearch\fR(3C), \fBdiv\fR(3C), \fBdrand48\fR(3C), \fBexit\fR(3C),
-\fBgetenv\fR(3C), \fBgetsubopt\fR(3C), \fBgrantpt\fR(3C), \fBmalloc\fR(3C),
-\fBmblen\fR(3C), \fBmbstowcs\fR(3C), \fBmbtowc\fR(3C), \fBmkstemp\fR(3C),
-\fBptsname\fR(3C), \fBputenv\fR(3C), \fBqsort\fR(3C), \fBrandom\fR(3C),
-\fBrealpath\fR(3C), \fBstrtod\fR(3C), \fBstrtol\fR(3C), \fBstrtoul\fR(3C),
-\fBunlockpt\fR(3C), \fBwcstombs\fR(3C), \fBwctomb\fR(3C),
-\fBlimits.h\fR(3HEAD), \fBmath.h\fR(3HEAD), \fBstddef.h\fR(3HEAD),
-\fBtypes.h\fR(3HEAD), \fBwait.h\fR(3HEAD), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR a64l (3C),
+.BR abort (3C),
+.BR abs (3C),
+.BR atexit (3C),
+.BR bsearch (3C),
+.BR div (3C),
+.BR drand48 (3C),
+.BR exit (3C),
+.BR getenv (3C),
+.BR getsubopt (3C),
+.BR grantpt (3C),
+.BR malloc (3C),
+.BR mblen (3C),
+.BR mbstowcs (3C),
+.BR mbtowc (3C),
+.BR mkstemp (3C),
+.BR ptsname (3C),
+.BR putenv (3C),
+.BR qsort (3C),
+.BR random (3C),
+.BR realpath (3C),
+.BR strtod (3C),
+.BR strtol (3C),
+.BR strtoul (3C),
+.BR unlockpt (3C),
+.BR wcstombs (3C),
+.BR wctomb (3C),
+.BR limits.h (3HEAD),
+.BR math.h (3HEAD),
+.BR stddef.h (3HEAD),
+.BR types.h (3HEAD),
+.BR wait.h (3HEAD),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3head/string.h.3head b/usr/src/man/man3head/string.h.3head
index 00949a9850..1e44580a2b 100644
--- a/usr/src/man/man3head/string.h.3head
+++ b/usr/src/man/man3head/string.h.3head
@@ -77,7 +77,7 @@ as described in <\fBstddef.h\fR>
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -93,6 +93,11 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBmemory\fR(3C), \fBstrcoll\fR(3C), \fBstring\fR(3C), \fBstrxfrm\fR(3C),
-\fBstddef.h\fR(3HEAD), \fBtypes.h\fR(3HEAD), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR memory (3C),
+.BR strcoll (3C),
+.BR string (3C),
+.BR strxfrm (3C),
+.BR stddef.h (3HEAD),
+.BR types.h (3HEAD),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3head/strings.h.3head b/usr/src/man/man3head/strings.h.3head
index 56ea4ad4d5..ae18e6c7c2 100644
--- a/usr/src/man/man3head/strings.h.3head
+++ b/usr/src/man/man3head/strings.h.3head
@@ -60,7 +60,7 @@ The \fBsize_t\fR type specified in <\fBstrings.h\fR> is defined through
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -76,5 +76,8 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBffs\fR(3C), \fBstring\fR(3C), \fBstddef.h\fR(3HEAD), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR ffs (3C),
+.BR string (3C),
+.BR stddef.h (3HEAD),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3head/stropts.h.3head b/usr/src/man/man3head/stropts.h.3head
index 3449c340aa..caa87e06f5 100644
--- a/usr/src/man/man3head/stropts.h.3head
+++ b/usr/src/man/man3head/stropts.h.3head
@@ -758,7 +758,7 @@ The <\fBstropts.h\fR> header can make visible all of the symbols from
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -774,7 +774,18 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBclose\fR(2), \fBfcntl\fR(2), \fBgetmsg\fR(2), \fBioctl\fR(2), \fBopen\fR(2),
-\fBpipe\fR(2), \fBpoll\fR(2), \fBputmsg\fR(2), \fBread\fR(2), \fBwrite\fR(2),
-\fBsignal\fR(3C), \fBtypes.h\fR(3HEAD), \fBunistd.h\fR(3HEAD),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR close (2),
+.BR fcntl (2),
+.BR getmsg (2),
+.BR ioctl (2),
+.BR open (2),
+.BR pipe (2),
+.BR poll (2),
+.BR putmsg (2),
+.BR read (2),
+.BR write (2),
+.BR signal (3C),
+.BR types.h (3HEAD),
+.BR unistd.h (3HEAD),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3head/syslog.h.3head b/usr/src/man/man3head/syslog.h.3head
index 176148b567..884ecd8b5e 100644
--- a/usr/src/man/man3head/syslog.h.3head
+++ b/usr/src/man/man3head/syslog.h.3head
@@ -353,7 +353,7 @@ A message useful for debugging programs.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -369,4 +369,6 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBsyslog\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR syslog (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3head/tar.h.3head b/usr/src/man/man3head/tar.h.3head
index 744d8ce04c..29be6f8d7a 100644
--- a/usr/src/man/man3head/tar.h.3head
+++ b/usr/src/man/man3head/tar.h.3head
@@ -160,7 +160,7 @@ Name Value Description
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -182,4 +182,6 @@ Evolving.
.SH SEE ALSO
.sp
.LP
-\fBpax\fR(1), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR pax (1),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3head/tcp.h.3head b/usr/src/man/man3head/tcp.h.3head
index bb37345ea6..4685b47192 100644
--- a/usr/src/man/man3head/tcp.h.3head
+++ b/usr/src/man/man3head/tcp.h.3head
@@ -74,7 +74,7 @@ of the option to be set with \fBsetsockopt()\fR or retrieved with
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -90,5 +90,7 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBgetsockopt\fR(3XNET), \fBsocket.h\fR(3HEAD), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR socket.h (3HEAD),
+.BR getsockopt (3XNET),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3head/termios.h.3head b/usr/src/man/man3head/termios.h.3head
index 0a37e9ce1c..10cc0102f7 100644
--- a/usr/src/man/man3head/termios.h.3head
+++ b/usr/src/man/man3head/termios.h.3head
@@ -53,7 +53,7 @@ termios.h, termios \- define values for termios
.SH DESCRIPTION
The <\fBtermios.h\fR> header contains the definitions used by the terminal I/O
-interfaces. See \fBtermios\fR(3C) and \fBtermio\fR(7I) for an overview of the
+interfaces. See \fBtermios\fR(3C) and \fBtermio\fR(4I) for an overview of the
terminal interface.
.SS "The termios Structure"
The following data types are defined through \fBtypedef\fR:
@@ -955,7 +955,7 @@ Restart output.
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -969,7 +969,16 @@ Interface Stability Standard
.TE
.SH SEE ALSO
-\fBgetconf\fR(1), \fBcfgetispeed\fR(3C), \fBcfsetispeed\fR(3C),
-\fBconfstr\fR(3C), \fBtcdrain\fR(3C), \fBtcflow\fR(3C), \fBtcflush\fR(3C),
-\fBtcgetattr\fR(3C), \fBtcgetsid\fR(3C), \fBtcsendbreak\fR(3C),
-\fBtcsetattr\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR getconf (1),
+.BR cfgetispeed (3C),
+.BR cfsetispeed (3C),
+.BR confstr (3C),
+.BR tcdrain (3C),
+.BR tcflow (3C),
+.BR tcflush (3C),
+.BR tcgetattr (3C),
+.BR tcgetsid (3C),
+.BR tcsendbreak (3C),
+.BR tcsetattr (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3head/tgmath.h.3head b/usr/src/man/man3head/tgmath.h.3head
index ee980dd869..d24b3b0ef3 100644
--- a/usr/src/man/man3head/tgmath.h.3head
+++ b/usr/src/man/man3head/tgmath.h.3head
@@ -233,7 +233,7 @@ cproj(ldc) cprojl(ldc)
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -249,5 +249,10 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBmodf\fR(3M), \fBcomplex.h\fR(3HEAD), \fBmath.h\fR(3HEAD), \fBcabs\fR(3M),
-\fBfabs\fR(3M), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR complex.h (3HEAD),
+.BR math.h (3HEAD),
+.BR cabs (3M),
+.BR fabs (3M),
+.BR modf (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3head/time.h.3head b/usr/src/man/man3head/time.h.3head
index dffdeaf5de..dfe9d8c139 100644
--- a/usr/src/man/man3head/time.h.3head
+++ b/usr/src/man/man3head/time.h.3head
@@ -222,5 +222,5 @@ and
.Xr timer_settime 3C ,
.Xr timespec_get 3C ,
.Xr types.h 3HEAD ,
-.Xr attributes 5 ,
-.Xr standards 5
+.Xr attributes 7 ,
+.Xr standards 7
diff --git a/usr/src/man/man3head/timeb.h.3head b/usr/src/man/man3head/timeb.h.3head
index e017a0af0a..d23ce95b80 100644
--- a/usr/src/man/man3head/timeb.h.3head
+++ b/usr/src/man/man3head/timeb.h.3head
@@ -73,7 +73,7 @@ The \fBtime_t\fR type is defined as described in <\fBsys/types.h\fR>.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -89,5 +89,7 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBtime.h\fR(3HEAD), \fBtypes.h\fR(3HEAD), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR time.h (3HEAD),
+.BR types.h (3HEAD),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3head/times.h.3head b/usr/src/man/man3head/times.h.3head
index a9ed39a361..77aefe67c9 100644
--- a/usr/src/man/man3head/times.h.3head
+++ b/usr/src/man/man3head/times.h.3head
@@ -75,7 +75,7 @@ The clock_t type is defined as described in <\fBsys/types.h\fR>.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -91,4 +91,7 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBtimes\fR(2), \fBtypes.h\fR(3HEAD), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR times (2),
+.BR types.h (3HEAD),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3head/types.h.3head b/usr/src/man/man3head/types.h.3head
index 88eae147a8..eb33a432b4 100644
--- a/usr/src/man/man3head/types.h.3head
+++ b/usr/src/man/man3head/types.h.3head
@@ -264,7 +264,7 @@ program.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -280,4 +280,6 @@ Interface Stability Stable
.SH SEE ALSO
.sp
.LP
-\fBtypes32.h\fR(3HEAD), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR types32.h (3HEAD),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3head/ucontext.h.3head b/usr/src/man/man3head/ucontext.h.3head
index a6b6417720..7f6eef56d9 100644
--- a/usr/src/man/man3head/ucontext.h.3head
+++ b/usr/src/man/man3head/ucontext.h.3head
@@ -48,7 +48,7 @@ modify or access \fBuc_mcontext\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -64,6 +64,10 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBgetcontext\fR(2), \fBsigaction\fR(2), \fBsigaltstack\fR(2),
-\fBsigprocmask\fR(2), \fBmakecontext\fR(3C), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR getcontext (2),
+.BR sigaction (2),
+.BR sigaltstack (2),
+.BR sigprocmask (2),
+.BR makecontext (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3head/uio.h.3head b/usr/src/man/man3head/uio.h.3head
index c238a7eb27..3045c2b03f 100644
--- a/usr/src/man/man3head/uio.h.3head
+++ b/usr/src/man/man3head/uio.h.3head
@@ -84,7 +84,7 @@ processed in one call, instead of assuming a fixed value.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -100,5 +100,9 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBread\fR(2), \fBwrite\fR(2), \fBlimits.h\fR(3HEAD), \fBtypes.h\fR(3HEAD),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR read (2),
+.BR write (2),
+.BR limits.h (3HEAD),
+.BR types.h (3HEAD),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3head/ulimit.h.3head b/usr/src/man/man3head/ulimit.h.3head
index 37d48c080c..18784e2529 100644
--- a/usr/src/man/man3head/ulimit.h.3head
+++ b/usr/src/man/man3head/ulimit.h.3head
@@ -78,7 +78,7 @@ Set maximum file size.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -94,4 +94,6 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBulimit\fR(2), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR ulimit (2),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3head/un.h.3head b/usr/src/man/man3head/un.h.3head
index 8189cf06c0..cdd2d1fd41 100644
--- a/usr/src/man/man3head/un.h.3head
+++ b/usr/src/man/man3head/un.h.3head
@@ -75,7 +75,7 @@ The <\fBsys/un.h\fR> header defines the type \fBsa_family_t\fR as described in
\fBsocket.h\fR(3HEAD).
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -90,7 +90,13 @@ Interface Stability Standard
.SH SEE ALSO
.LP
-\fBbind\fR(3SOCKET), \fBbind\fR(3XNET), \fBsocket.h\fR(3HEAD),
-\fBsocket\fR(3SOCKET), \fBsocket\fR(3XNET), \fBsocketpair\fR(3SOCKET),
-\fBsocketpair\fR(3XNET), \fBsockaddr\fR(3SOCKET), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR socket.h (3HEAD),
+.BR bind (3SOCKET),
+.BR sockaddr (3SOCKET),
+.BR socket (3SOCKET),
+.BR socketpair (3SOCKET),
+.BR bind (3XNET),
+.BR socket (3XNET),
+.BR socketpair (3XNET),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3head/unistd.h.3head b/usr/src/man/man3head/unistd.h.3head
index 52ad4665cb..bc0b83c609 100644
--- a/usr/src/man/man3head/unistd.h.3head
+++ b/usr/src/man/man3head/unistd.h.3head
@@ -69,7 +69,7 @@ The following symbolic constants are defined (with fixed values):
.ad
.RS 22n
Integer value indicating version of the POSIX standard (C language binding).
-See \fBstandards\fR(5).
+See \fBstandards\fR(7).
.RE
.sp
@@ -1230,7 +1230,7 @@ Pathname of the passwd file.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -1242,13 +1242,23 @@ ATTRIBUTE TYPE ATTRIBUTE VALUE
_
Interface Stability Committed
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.sp
.LP
-\fBaccess\fR(2), \fBexec\fR(2), \fBfcntl\fR(2), \fBfpathconf\fR(2),
-\fBlseek\fR(2), \fBconfstr\fR(3C), \fBlockf\fR(3C), \fBsysconf\fR(3C),
-\fBtermios\fR(3C), \fBgroup\fR(4), \fBpasswd\fR(4), \fBattributes\fR(5),
-\fBstandards\fR(5), \fBtermio\fR(7I)
+.BR access (2),
+.BR exec (2),
+.BR fcntl (2),
+.BR fpathconf (2),
+.BR lseek (2),
+.BR confstr (3C),
+.BR lockf (3C),
+.BR sysconf (3C),
+.BR termios (3C),
+.BR termio (4I),
+.BR group (5),
+.BR passwd (5),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3head/upanic.h.3head b/usr/src/man/man3head/upanic.h.3head
index 871cbbda7a..4602f19ff1 100644
--- a/usr/src/man/man3head/upanic.h.3head
+++ b/usr/src/man/man3head/upanic.h.3head
@@ -38,4 +38,4 @@ generating core files.
.Sy Committed
.Sh SEE ALSO
.Xr upanic 2 ,
-.Xr core 4
+.Xr core 5
diff --git a/usr/src/man/man3head/utime.h.3head b/usr/src/man/man3head/utime.h.3head
index df6815cfcb..274e5e30e6 100644
--- a/usr/src/man/man3head/utime.h.3head
+++ b/usr/src/man/man3head/utime.h.3head
@@ -74,7 +74,7 @@ The type \fBtime_t\fR is defined as described in <\fBsys/types.h\fR>.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -90,4 +90,7 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fButime\fR(2), \fBtypes.h\fR(3HEAD), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR utime (2),
+.BR types.h (3HEAD),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3head/utmpx.h.3head b/usr/src/man/man3head/utmpx.h.3head
index df0c3f1132..c129f40b81 100644
--- a/usr/src/man/man3head/utmpx.h.3head
+++ b/usr/src/man/man3head/utmpx.h.3head
@@ -190,7 +190,7 @@ Identifies a session leader who has exited.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -206,5 +206,8 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBendutxent\fR(3C), \fBtime.h\fR(3HEAD), \fBtypes.h\fR(3HEAD),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR endutxent (3C),
+.BR time.h (3HEAD),
+.BR types.h (3HEAD),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3head/utsname.h.3head b/usr/src/man/man3head/utsname.h.3head
index cccd19f33d..c23cc48c77 100644
--- a/usr/src/man/man3head/utsname.h.3head
+++ b/usr/src/man/man3head/utsname.h.3head
@@ -81,7 +81,7 @@ terminated by a null byte.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -97,4 +97,6 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBuname\fR(2), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR uname (2),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3head/wait.h.3head b/usr/src/man/man3head/wait.h.3head
index dafd617690..83d6962ba2 100644
--- a/usr/src/man/man3head/wait.h.3head
+++ b/usr/src/man/man3head/wait.h.3head
@@ -246,7 +246,7 @@ from <\fBsignal.h\fR> and <\fBsys/resource.h\fR>.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -262,5 +262,10 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBexit\fR(2), \fBwaitid\fR(2), \fBexit\fR(3C), \fBwait\fR(3C),
-\fBwaitpid\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR exit (2),
+.BR waitid (2),
+.BR exit (3C),
+.BR wait (3C),
+.BR waitpid (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3head/wchar.h.3head b/usr/src/man/man3head/wchar.h.3head
index 81ba124950..980ed07d83 100644
--- a/usr/src/man/man3head/wchar.h.3head
+++ b/usr/src/man/man3head/wchar.h.3head
@@ -177,7 +177,7 @@ Inclusion of the <\fBwchar.h\fR> header can make visible all symbols from the
headers <\fBctype.h\fR>, <\fBstring.h\fR>, <\fBstdarg.h\fR>, <\fBstddef.h\fR>,
<\fBstdio.h\fR>, <\fBstdlib.h\fR>, and <\fBtime.h\fR>.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.TS
box;
@@ -189,23 +189,57 @@ Interface Stability Standard
.TE
.SH SEE ALSO
-\fBgetconf\fR(1), \fBbtowc\fR(3C), \fBconfstr\fR(3C), \fBfgetwc\fR(3C),
-\fBgetws\fR(3C), \fBfputwc\fR(3C), \fBfputws\fR(3C), \fBfwide\fR(3C),
-\fBfwprintf\fR(3C), \fBfwscanf\fR(3C), \fBgetwc\fR(3C), \fBgetwchar\fR(3C),
-\fBiswalpha\fR(3C), \fBiswctype\fR(3C), \fBmbsinit\fR(3C), \fBmbrlen\fR(3C),
-\fBmbrtowc\fR(3C), \fBmbsrtowcs\fR(3C), \fBtowlower\fR(3C), \fBtowupper\fR(3C),
-\fBungetwc\fR(3C), \fBvfwprintf\fR(3C),
-\fBwcpcpy\fR(3C),
-\fBwcrtomb\fR(3C),
-\fBwcscasecmp\fR(3C),
-\fBwcsdup\fR(3C),
-\fBwcslen\fR(3C),
-\fBwcsrtombs\fR(3C),
-\fBwcstring\fR(3C), \fBwcsstr\fR(3C), \fBwcstod\fR(3C), \fBwcscoll\fR(3C),
-\fBwcsftime\fR(3C), \fBwcstol\fR(3C), \fBwcstoul\fR(3C), \fBwcswidth\fR(3C),
-\fBwcsxfrm\fR(3C), \fBwctob\fR(3C), \fBwctype\fR(3C), \fBwcwidth\fR(3C),
-\fBwmemchr\fR(3C), \fBwmemcmp\fR(3C), \fBwmemcpy\fR(3C), \fBwmemmove\fR(3C),
-\fBwmemset\fR(3C), \fBstdarg\fR(3EXT), \fBstddef.h\fR(3HEAD),
-\fBstdio.h\fR(3HEAD), \fBstdlib.h\fR(3HEAD), \fBstring.h\fR(3HEAD),
-\fBtime.h\fR(3HEAD), \fBwctype.h\fR(3HEAD), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR getconf (1),
+.BR btowc (3C),
+.BR confstr (3C),
+.BR fgetwc (3C),
+.BR fputwc (3C),
+.BR fputws (3C),
+.BR fwide (3C),
+.BR fwprintf (3C),
+.BR fwscanf (3C),
+.BR getwc (3C),
+.BR getwchar (3C),
+.BR getws (3C),
+.BR iswalpha (3C),
+.BR iswctype (3C),
+.BR mbrlen (3C),
+.BR mbrtowc (3C),
+.BR mbsinit (3C),
+.BR mbsrtowcs (3C),
+.BR towlower (3C),
+.BR towupper (3C),
+.BR ungetwc (3C),
+.BR vfwprintf (3C),
+.BR wcpcpy (3C),
+.BR wcrtomb (3C),
+.BR wcscasecmp (3C),
+.BR wcscoll (3C),
+.BR wcsdup (3C),
+.BR wcsftime (3C),
+.BR wcslen (3C),
+.BR wcsrtombs (3C),
+.BR wcsstr (3C),
+.BR wcstod (3C),
+.BR wcstol (3C),
+.BR wcstoul (3C),
+.BR wcstring (3C),
+.BR wcswidth (3C),
+.BR wcsxfrm (3C),
+.BR wctob (3C),
+.BR wctype (3C),
+.BR wcwidth (3C),
+.BR wmemchr (3C),
+.BR wmemcmp (3C),
+.BR wmemcpy (3C),
+.BR wmemmove (3C),
+.BR wmemset (3C),
+.BR stdarg (3EXT),
+.BR stddef.h (3HEAD),
+.BR stdio.h (3HEAD),
+.BR stdlib.h (3HEAD),
+.BR string.h (3HEAD),
+.BR time.h (3HEAD),
+.BR wctype.h (3HEAD),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3head/wctype.h.3head b/usr/src/man/man3head/wctype.h.3head
index 236240ca89..6e64e8116d 100644
--- a/usr/src/man/man3head/wctype.h.3head
+++ b/usr/src/man/man3head/wctype.h.3head
@@ -110,7 +110,7 @@ Inclusion of the <\fBwctype.h\fR> header can make visible all symbols from the
headers <\fBctype.h\fR>, <\fBstdarg.h\fR>, <\fBstddef.h\fR>, <\fBstdio.h\fR>,
<\fBstdlib.h\fR>, <\fBstring.h\fR>, <\fBtime.h\fR>, and <\fBwchar.h\fR>.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -124,9 +124,20 @@ Interface Stability Standard
.TE
.SH SEE ALSO
-\fBiswalpha\fR(3C), \fBiswctype\fR(3C), \fBlocale.h\fR(3HEAD),
-\fBsetlocale\fR(3C), \fBstdarg\fR(3EXT), \fBstddef.h\fR(3HEAD),
-\fBstdio.h\fR(3HEAD), \fBstdlib.h\fR(3HEAD), \fBstring.h\fR(3HEAD),
-\fBtime.h\fR(3HEAD), \fBtowctrans\fR(3C), \fBtowlower\fR(3C),
-\fBtowupper\fR(3C), \fBwctrans\fR(3C), \fBwctype\fR(3C), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR iswalpha (3C),
+.BR iswctype (3C),
+.BR setlocale (3C),
+.BR towctrans (3C),
+.BR towlower (3C),
+.BR towupper (3C),
+.BR wctrans (3C),
+.BR wctype (3C),
+.BR stdarg (3EXT),
+.BR locale.h (3HEAD),
+.BR stddef.h (3HEAD),
+.BR stdio.h (3HEAD),
+.BR stdlib.h (3HEAD),
+.BR string.h (3HEAD),
+.BR time.h (3HEAD),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3head/wordexp.h.3head b/usr/src/man/man3head/wordexp.h.3head
index 8cbf31935b..8e9c11b5d0 100644
--- a/usr/src/man/man3head/wordexp.h.3head
+++ b/usr/src/man/man3head/wordexp.h.3head
@@ -205,7 +205,7 @@ As described in <\fBstddef.h\fR>.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -221,4 +221,6 @@ Interface Stability Standard
.SH SEE ALSO
.sp
.LP
-\fBwordexp\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR wordexp (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3head/xlocale.h.3head b/usr/src/man/man3head/xlocale.h.3head
index d096d9d890..31047e6d11 100644
--- a/usr/src/man/man3head/xlocale.h.3head
+++ b/usr/src/man/man3head/xlocale.h.3head
@@ -37,7 +37,7 @@ be avoided in portable applications.
.SH ATTRIBUTES
.LP
See
-.BR attributes (5)
+.BR attributes (7)
for descriptions of the following attributes:
.TS
box;
@@ -54,6 +54,6 @@ Interface Stability Uncommitted
.BR setlocale (3C),
.BR uselocale (3C),
.BR locale (3HEAD),
-.BR attributes (5),
-.BR locale (5),
-.BR standards (5)
+.BR attributes (7),
+.BR locale (7),
+.BR standards (7)
diff --git a/usr/src/man/man3iscsit/it_config_load.3iscsit b/usr/src/man/man3iscsit/it_config_load.3iscsit
index 046fed8ffe..708d43813d 100644
--- a/usr/src/man/man3iscsit/it_config_load.3iscsit
+++ b/usr/src/man/man3iscsit/it_config_load.3iscsit
@@ -157,7 +157,7 @@ The configuration was updated by another client. See
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -175,8 +175,13 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBit_ini_create\fR(3ISCSIT), \fBit_portal_create\fR(3ISCSIT),
-\fBit_tgt_create\fR(3ISCSIT), \fBit_tpg_create\fR(3ISCSIT),
-\fBlibiscsit\fR(3LIB), \fBlibnvpair\fR(3LIB), \fBlibstmf\fR(3LIB),
-\fBstmfGetProviderData\fR(3STMF), \fBstmfSetProviderData\fR(3STMF),
-\fBattributes\fR(5)
+.BR it_ini_create (3ISCSIT),
+.BR it_portal_create (3ISCSIT),
+.BR it_tgt_create (3ISCSIT),
+.BR it_tpg_create (3ISCSIT),
+.BR libiscsit (3LIB),
+.BR libnvpair (3LIB),
+.BR libstmf (3LIB),
+.BR stmfGetProviderData (3STMF),
+.BR stmfSetProviderData (3STMF),
+.BR attributes (7)
diff --git a/usr/src/man/man3iscsit/it_ini_create.3iscsit b/usr/src/man/man3iscsit/it_ini_create.3iscsit
index 56944f9195..a71caf35b3 100644
--- a/usr/src/man/man3iscsit/it_ini_create.3iscsit
+++ b/usr/src/man/man3iscsit/it_ini_create.3iscsit
@@ -163,7 +163,7 @@ Resources could not be allocated.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -181,8 +181,13 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBit_config_commit\fR(3ISCSIT), \fBit_portal_create\fR(3ISCSIT),
-\fBit_tgt_create\fR(3ISCSIT), \fBit_tpg_create\fR(3ISCSIT),
-\fBlibiscsit\fR(3LIB), \fBlibnvpair\fR(3LIB), \fBlibstmf\fR(3LIB),
-\fBstmfGetProviderData\fR(3STMF), \fBstmfSetProviderData\fR(3STMF),
-\fBattributes\fR(5)
+.BR it_config_commit (3ISCSIT),
+.BR it_portal_create (3ISCSIT),
+.BR it_tgt_create (3ISCSIT),
+.BR it_tpg_create (3ISCSIT),
+.BR libiscsit (3LIB),
+.BR libnvpair (3LIB),
+.BR libstmf (3LIB),
+.BR stmfGetProviderData (3STMF),
+.BR stmfSetProviderData (3STMF),
+.BR attributes (7)
diff --git a/usr/src/man/man3iscsit/it_portal_create.3iscsit b/usr/src/man/man3iscsit/it_portal_create.3iscsit
index e6c387ef3c..f05cc545db 100644
--- a/usr/src/man/man3iscsit/it_portal_create.3iscsit
+++ b/usr/src/man/man3iscsit/it_portal_create.3iscsit
@@ -105,7 +105,7 @@ Resources could not be allocated.
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -121,7 +121,12 @@ MT-Level MT-Safe
.TE
.SH SEE ALSO
-\fBit_ini_create\fR(3ISCSIT), \fBit_tgt_create\fR(3ISCSIT),
-\fBit_tpg_create\fR(3ISCSIT), \fBlibiscsit\fR(3LIB),
-\fBit_config_commit\fR(3ISCSIT), \fBlibiscsit\fR(3LIB), \fBlibnvpair\fR(3LIB),
-\fBlibstmf\fR(3LIB), \fBattributes\fR(5)
+.BR it_config_commit (3ISCSIT),
+.BR it_ini_create (3ISCSIT),
+.BR it_tgt_create (3ISCSIT),
+.BR it_tpg_create (3ISCSIT),
+.BR libiscsit (3LIB),
+.BR libiscsit (3LIB),
+.BR libnvpair (3LIB),
+.BR libstmf (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3iscsit/it_tgt_create.3iscsit b/usr/src/man/man3iscsit/it_tgt_create.3iscsit
index 30cc41fb59..4f0eb7641c 100644
--- a/usr/src/man/man3iscsit/it_tgt_create.3iscsit
+++ b/usr/src/man/man3iscsit/it_tgt_create.3iscsit
@@ -267,7 +267,7 @@ Resources could not be allocated.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -285,7 +285,11 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBit_config_commit\fR(3ISCSIT), \fBit_ini_create\fR(3ISCSIT),
-\fBit_portal_create\fR(3ISCSIT), \fBit_tpg_create\fR(3ISCSIT),
-\fBlibiscsit\fR(3LIB), \fBlibnvpair\fR(3LIB), \fBlibstmf\fR(3LIB),
-\fBattributes\fR(5)
+.BR it_config_commit (3ISCSIT),
+.BR it_ini_create (3ISCSIT),
+.BR it_portal_create (3ISCSIT),
+.BR it_tpg_create (3ISCSIT),
+.BR libiscsit (3LIB),
+.BR libnvpair (3LIB),
+.BR libstmf (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3iscsit/it_tpg_create.3iscsit b/usr/src/man/man3iscsit/it_tpg_create.3iscsit
index 2ba3628a78..25767a94f8 100644
--- a/usr/src/man/man3iscsit/it_tpg_create.3iscsit
+++ b/usr/src/man/man3iscsit/it_tpg_create.3iscsit
@@ -151,7 +151,7 @@ Resources could not be allocated.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -169,7 +169,11 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBit_config_commit\fR(3ISCSIT), \fBit_ini_create\fR(3ISCSIT),
-\fBit_portal_create\fR(3ISCSIT), \fBit_tgt_create\fR(3ISCSIT),
-\fBlibiscsit\fR(3LIB), \fBlibnvpair\fR(3LIB), \fBlibstmf\fR(3LIB),
-\fBattributes\fR(5)
+.BR it_config_commit (3ISCSIT),
+.BR it_ini_create (3ISCSIT),
+.BR it_portal_create (3ISCSIT),
+.BR it_tgt_create (3ISCSIT),
+.BR libiscsit (3LIB),
+.BR libnvpair (3LIB),
+.BR libstmf (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3kstat/kstat.3kstat b/usr/src/man/man3kstat/kstat.3kstat
index ddab5ee8a6..47f3b33adb 100644
--- a/usr/src/man/man3kstat/kstat.3kstat
+++ b/usr/src/man/man3kstat/kstat.3kstat
@@ -465,4 +465,4 @@ system kstat header
.Xr kstat_open 3KSTAT ,
.Xr kstat_read 3KSTAT ,
.Xr kstat_write 3KSTAT ,
-.Xr attributes 5
+.Xr attributes 7
diff --git a/usr/src/man/man3kstat/kstat_chain_update.3kstat b/usr/src/man/man3kstat/kstat_chain_update.3kstat
index c15056d42e..6d7d2f0e37 100644
--- a/usr/src/man/man3kstat/kstat_chain_update.3kstat
+++ b/usr/src/man/man3kstat/kstat_chain_update.3kstat
@@ -112,4 +112,4 @@ The data for the given kstat was too large to be stored in the structure.
.Xr kstat_lookup 3KSTAT ,
.Xr kstat_open 3KSTAT ,
.Xr kstat_read 3KSTAT ,
-.Xr attributes 5
+.Xr attributes 7
diff --git a/usr/src/man/man3kstat/kstat_lookup.3kstat b/usr/src/man/man3kstat/kstat_lookup.3kstat
index 20de58f339..eb4b742810 100644
--- a/usr/src/man/man3kstat/kstat_lookup.3kstat
+++ b/usr/src/man/man3kstat/kstat_lookup.3kstat
@@ -144,4 +144,4 @@ The requested kstat could not be found.
.Xr kstat_chain_update 3KSTAT ,
.Xr kstat_open 3KSTAT ,
.Xr kstat_read 3KSTAT ,
-.Xr attributes 5
+.Xr attributes 7
diff --git a/usr/src/man/man3kstat/kstat_open.3kstat b/usr/src/man/man3kstat/kstat_open.3kstat
index f1840ef19c..cac74fe5d0 100644
--- a/usr/src/man/man3kstat/kstat_open.3kstat
+++ b/usr/src/man/man3kstat/kstat_open.3kstat
@@ -116,4 +116,4 @@ function can also return the error values for
.Xr kstat_chain_update 3KSTAT ,
.Xr kstat_lookup 3KSTAT ,
.Xr kstat_read 3KSTAT ,
-.Xr attributes 5
+.Xr attributes 7
diff --git a/usr/src/man/man3kstat/kstat_read.3kstat b/usr/src/man/man3kstat/kstat_read.3kstat
index a9536c7b40..4ec04e65b9 100644
--- a/usr/src/man/man3kstat/kstat_read.3kstat
+++ b/usr/src/man/man3kstat/kstat_read.3kstat
@@ -126,5 +126,5 @@ was not asserted in the effective privilege set.
.Xr kstat_chain_update 3KSTAT ,
.Xr kstat_lookup 3KSTAT ,
.Xr kstat_open 3KSTAT ,
-.Xr attributes 5 ,
-.Xr privileges 5
+.Xr attributes 7 ,
+.Xr privileges 7
diff --git a/usr/src/man/man3kvm/kvm_getu.3kvm b/usr/src/man/man3kvm/kvm_getu.3kvm
index 437734a526..ad3142d7ff 100644
--- a/usr/src/man/man3kvm/kvm_getu.3kvm
+++ b/usr/src/man/man3kvm/kvm_getu.3kvm
@@ -79,7 +79,7 @@ fragment that is stored in the u-area.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -97,8 +97,12 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBkvm_nextproc\fR(3KVM), \fBkvm_open\fR(3KVM), \fBkvm_kread\fR(3KVM),
-\fBmalloc\fR(3C), \fBlibkvm\fR(3LIB), \fBattributes\fR(5)
+.BR malloc (3C),
+.BR kvm_kread (3KVM),
+.BR kvm_nextproc (3KVM),
+.BR kvm_open (3KVM),
+.BR libkvm (3LIB),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3kvm/kvm_kread.3kvm b/usr/src/man/man3kvm/kvm_kread.3kvm
index ec6f0374fa..b833a2180c 100644
--- a/usr/src/man/man3kvm/kvm_kread.3kvm
+++ b/usr/src/man/man3kvm/kvm_kread.3kvm
@@ -65,7 +65,7 @@ failure, they return \(mi1.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -83,5 +83,7 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBkvm_getu\fR(3KVM), \fBkvm_nlist\fR(3KVM), \fBkvm_open\fR(3KVM),
-\fBattributes\fR(5)
+.BR kvm_getu (3KVM),
+.BR kvm_nlist (3KVM),
+.BR kvm_open (3KVM),
+.BR attributes (7)
diff --git a/usr/src/man/man3kvm/kvm_nextproc.3kvm b/usr/src/man/man3kvm/kvm_nextproc.3kvm
index 25e97718b9..20f99e4cda 100644
--- a/usr/src/man/man3kvm/kvm_nextproc.3kvm
+++ b/usr/src/man/man3kvm/kvm_nextproc.3kvm
@@ -73,7 +73,7 @@ The \fBkvm_setproc()\fR function returns 0 on success and \(mi1 on failure.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -91,5 +91,7 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBkvm_getu\fR(3KVM), \fBkvm_open\fR(3KVM), \fBkvm_kread\fR(3KVM),
-\fBattributes\fR(5)
+.BR kvm_getu (3KVM),
+.BR kvm_kread (3KVM),
+.BR kvm_open (3KVM),
+.BR attributes (7)
diff --git a/usr/src/man/man3kvm/kvm_nlist.3kvm b/usr/src/man/man3kvm/kvm_nlist.3kvm
index e6413d15e5..06a135f32b 100644
--- a/usr/src/man/man3kvm/kvm_nlist.3kvm
+++ b/usr/src/man/man3kvm/kvm_nlist.3kvm
@@ -35,7 +35,7 @@ cannot be located, the corresponding \fBn_type\fR field of \fInl\fR is set to
The \fBkvm_nlist()\fR functions returns the value of \fBnlist\fR(3ELF).
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -52,8 +52,10 @@ MT-Level Unsafe
.SH SEE ALSO
.LP
-\fBkvm_open\fR(3KVM), \fBkvm_kread\fR(3KVM), \fBnlist\fR(3ELF),
-\fBattributes\fR(5)
+.BR nlist (3ELF),
+.BR kvm_kread (3KVM),
+.BR kvm_open (3KVM),
+.BR attributes (7)
.SH NOTES
.LP
Although the \fBlibkvm\fR API is Stable, the symbol names and data values that
diff --git a/usr/src/man/man3kvm/kvm_open.3kvm b/usr/src/man/man3kvm/kvm_open.3kvm
index 18720dd297..bc40fcd872 100644
--- a/usr/src/man/man3kvm/kvm_open.3kvm
+++ b/usr/src/man/man3kvm/kvm_open.3kvm
@@ -40,7 +40,7 @@ instance, using \fB/dev/ksyms\fR as a default \fInamelist\fR file.
.sp
.LP
The \fIcorefile\fR argument specifies a file that contains an image of physical
-memory, for instance, a kernel crash dump file (see \fBsavecore\fR(1M)) or the
+memory, for instance, a kernel crash dump file (see \fBsavecore\fR(8)) or the
special device \fB/dev/mem\fR. If \fIcorefile\fR is \fINULL\fR, the currently
running kernel is accessed, using \fB/dev/mem\fR and \fB/dev/kmem\fR.
.sp
@@ -139,7 +139,7 @@ The \fBkvm_close()\fR function returns 0 on success and \(mi1 on failure.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -157,11 +157,21 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBsavecore\fR(1M), \fBexec\fR(2), \fBexit\fR(2), \fBpathconf\fR(2),
-\fBgetloadavg\fR(3C), \fBkstat\fR(3KSTAT), \fBkvm_getu\fR(3KVM),
-\fBkvm_nextproc\fR(3KVM), \fBkvm_nlist\fR(3KVM), \fBkvm_kread\fR(3KVM),
-\fBlibkvm\fR(3LIB), \fBsysconf\fR(3C), \fBproc\fR(4), \fBattributes\fR(5),
-\fBlfcompile\fR(5)
+.BR exec (2),
+.BR exit (2),
+.BR pathconf (2),
+.BR getloadavg (3C),
+.BR sysconf (3C),
+.BR kstat (3KSTAT),
+.BR kvm_getu (3KVM),
+.BR kvm_kread (3KVM),
+.BR kvm_nextproc (3KVM),
+.BR kvm_nlist (3KVM),
+.BR libkvm (3LIB),
+.BR proc (5),
+.BR attributes (7),
+.BR lfcompile (7),
+.BR savecore (8)
.SH NOTES
.sp
.LP
@@ -189,5 +199,5 @@ release-dependent.
Most of the traditional uses of \fBlibkvm\fR have been superseded by more
stable interfaces that allow the same information to be extracted more
efficiently, yet independent of the kernel data model. For examples, see
-\fBsysconf\fR(3C), \fBproc\fR(4), \fBkstat\fR(3KSTAT), \fBgetloadavg\fR(3C),
+\fBsysconf\fR(3C), \fBproc\fR(5), \fBkstat\fR(3KSTAT), \fBgetloadavg\fR(3C),
and \fBpathconf\fR(2).
diff --git a/usr/src/man/man3kvm/kvm_read.3kvm b/usr/src/man/man3kvm/kvm_read.3kvm
index 9147a34417..9c305009af 100644
--- a/usr/src/man/man3kvm/kvm_read.3kvm
+++ b/usr/src/man/man3kvm/kvm_read.3kvm
@@ -48,7 +48,7 @@ failure, they return \fB\(mi1\fR\&.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -66,5 +66,8 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBkvm_getu\fR(3KVM), \fBkvm_kread\fR(3KVM), \fBkvm_nlist\fR(3KVM),
-\fBkvm_open\fR(3KVM), \fBattributes\fR(5)
+.BR kvm_getu (3KVM),
+.BR kvm_kread (3KVM),
+.BR kvm_nlist (3KVM),
+.BR kvm_open (3KVM),
+.BR attributes (7)
diff --git a/usr/src/man/man3ldap/ber_decode.3ldap b/usr/src/man/man3ldap/ber_decode.3ldap
index e749de772f..deb8984fcb 100644
--- a/usr/src/man/man3ldap/ber_decode.3ldap
+++ b/usr/src/man/man3ldap/ber_decode.3ldap
@@ -463,7 +463,7 @@ application.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for a description of the following attributes:
+See \fBattributes\fR(7) for a description of the following attributes:
.sp
.sp
@@ -479,7 +479,8 @@ Interface Stability Committed
.SH SEE ALSO
.sp
.LP
-\fBber_encode\fR(3LDAP), \fBattributes\fR(5)
+.BR ber_encode (3LDAP),
+.BR attributes (7)
.sp
.LP
Yeong, W., Howes, T., and Hardcastle-Kille, S., "Lightweight Directory Access
diff --git a/usr/src/man/man3ldap/ber_encode.3ldap b/usr/src/man/man3ldap/ber_encode.3ldap
index ae7eb4a825..b9ca19e637 100644
--- a/usr/src/man/man3ldap/ber_encode.3ldap
+++ b/usr/src/man/man3ldap/ber_encode.3ldap
@@ -332,7 +332,7 @@ functions generally return \fB\(mi1\fR\&.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for a description of the following attributes:
+See \fBattributes\fR(7) for a description of the following attributes:
.sp
.sp
@@ -348,7 +348,8 @@ Interface Stability Committed
.SH SEE ALSO
.sp
.LP
-\fBber_decode\fR(3LDAP), \fBattributes\fR(5)
+.BR ber_decode (3LDAP),
+.BR attributes (7)
.sp
.LP
Yeong, W., Howes, T., and Hardcastle-Kille, S., "Lightweight Directory Access
diff --git a/usr/src/man/man3ldap/cldap_close.3ldap b/usr/src/man/man3ldap/cldap_close.3ldap
index fe28374299..b1222c1676 100644
--- a/usr/src/man/man3ldap/cldap_close.3ldap
+++ b/usr/src/man/man3ldap/cldap_close.3ldap
@@ -36,7 +36,7 @@ The LDAP pointer returned by a previous call to \fBcldap_open\fR(3LDAP).
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for a description of the following attributes:
+See \fBattributes\fR(7) for a description of the following attributes:
.sp
.sp
@@ -51,5 +51,7 @@ Interface Stability Evolving
.SH SEE ALSO
.sp
.LP
-\fBldap\fR(3LDAP), \fBcldap_open\fR(3LDAP), \fBcldap_search_s\fR(3LDAP),
-\fBcldap_setretryinfo\fR(3LDAP)
+.BR cldap_open (3LDAP),
+.BR cldap_search_s (3LDAP),
+.BR cldap_setretryinfo (3LDAP),
+.BR ldap (3LDAP)
diff --git a/usr/src/man/man3ldap/cldap_open.3ldap b/usr/src/man/man3ldap/cldap_open.3ldap
index 127d3818eb..3f9bb8d37c 100644
--- a/usr/src/man/man3ldap/cldap_open.3ldap
+++ b/usr/src/man/man3ldap/cldap_open.3ldap
@@ -40,7 +40,7 @@ The port number to connect.
.sp
.LP
The \fBcldap_open()\fR function is called to prepare for connectionless LDAP
-communication (over \fBudp\fR(7P)). It allocates an LDAP structure which is
+communication (over \fBudp\fR(4P)). It allocates an LDAP structure which is
passed to future search requests.
.sp
.LP
@@ -60,7 +60,7 @@ will be set appropriately.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for a description of the following attributes:
+See \fBattributes\fR(7) for a description of the following attributes:
.sp
.sp
@@ -75,5 +75,8 @@ Interface Stability Evolving
.SH SEE ALSO
.sp
.LP
-\fBldap\fR(3LDAP) \fBcldap_search_s\fR(3LDAP), \fBcldap_setretryinfo\fR(3LDAP),
-\fBcldap_close\fR(3LDAP), \fBattributes\fR(5), \fBudp\fR(7P)
+\fBldap\fR(3LDAP) \fBcldap_close\fR(3LDAP),
+.BR cldap_search_s (3LDAP),
+.BR cldap_setretryinfo (3LDAP),
+.BR udp (4P),
+.BR attributes (7)
diff --git a/usr/src/man/man3ldap/cldap_search_s.3ldap b/usr/src/man/man3ldap/cldap_search_s.3ldap
index 2e52782884..d7f863d310 100644
--- a/usr/src/man/man3ldap/cldap_search_s.3ldap
+++ b/usr/src/man/man3ldap/cldap_search_s.3ldap
@@ -33,7 +33,7 @@ by \fIRFC 1779, A String Representation of Distinguished Names\fR.
.SS "Retransmission Algorithm"
.sp
.LP
-\fBcldap_search_s()\fR operates using the CLDAP protocol over \fBudp\fR(7P).
+\fBcldap_search_s()\fR operates using the CLDAP protocol over \fBudp\fR(4P).
Since UDP is a non-reliable protocol, a retry mechanism is used to increase
reliability. The \fBcldap_setretryinfo\fR(3LDAP) function can be used to set
two retry parameters: \fItries\fR, a count of the number of times to send a
@@ -126,7 +126,7 @@ more information.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for a description of the following attributes:
+See \fBattributes\fR(7) for a description of the following attributes:
.sp
.sp
@@ -141,6 +141,11 @@ Interface Stability Evolving
.SH SEE ALSO
.sp
.LP
-\fBldap\fR(3LDAP), \fBldap_error\fR(3LDAP), \fBldap_search_s\fR(3LDAP),
-\fBcldap_open\fR(3LDAP), \fBcldap_setretryinfo\fR(3LDAP),
-\fBcldap_close\fR(3LDAP), \fBattributes\fR(5), \fBudp\fR(7P)
+.BR cldap_close (3LDAP),
+.BR cldap_open (3LDAP),
+.BR cldap_setretryinfo (3LDAP),
+.BR ldap (3LDAP),
+.BR ldap_error (3LDAP),
+.BR ldap_search_s (3LDAP),
+.BR udp (4P),
+.BR attributes (7)
diff --git a/usr/src/man/man3ldap/cldap_setretryinfo.3ldap b/usr/src/man/man3ldap/cldap_setretryinfo.3ldap
index 97a9e55e9f..50f7c83ac0 100644
--- a/usr/src/man/man3ldap/cldap_setretryinfo.3ldap
+++ b/usr/src/man/man3ldap/cldap_setretryinfo.3ldap
@@ -56,7 +56,7 @@ the retransmission algorithm used.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for a description of the following attributes:
+See \fBattributes\fR(7) for a description of the following attributes:
.sp
.sp
@@ -71,5 +71,8 @@ Interface Stability Evolving
.SH SEE ALSO
.sp
.LP
-\fBldap\fR(3LDAP), \fBcldap_open\fR(3LDAP), \fBcldap_search_s\fR(3LDAP),
-\fBcldap_close\fR(3LDAP), \fBattributes\fR(5)
+.BR cldap_close (3LDAP),
+.BR cldap_open (3LDAP),
+.BR cldap_search_s (3LDAP),
+.BR ldap (3LDAP),
+.BR attributes (7)
diff --git a/usr/src/man/man3ldap/ldap.3ldap b/usr/src/man/man3ldap/ldap.3ldap
index 6644b3c6bf..d504bcc272 100644
--- a/usr/src/man/man3ldap/ldap.3ldap
+++ b/usr/src/man/man3ldap/ldap.3ldap
@@ -81,7 +81,9 @@ Use \fBldap_modify_ext\fR(3LDAP) and \fBldap_modify_ext_s\fR(3LDAP) to modify
an existing entry in a LDAP server that supports for LDAPv3 server and client
controls. Similarly, use \fBldap_rename\fR(3LDAP) and
\fBldap_rename_s\fR(3LDAP) to change the name of an LDAP entry. The
-\fBldap_modrdn\fR(3LDAP), \fBldap_modrdn_s\fR(3LDAP), \fBldap_modrdn2\fR(3LDAP)
+.BR ldap_modrdn (3LDAP),
+.BR ldap_modrdn2 (3LDAP),
+.BR ldap_modrdn_s (3LDAP)
and \fBldap_modrdn2_s\fR(3LDAP) interfaces are deprecated.
.SS "Obtaining Results"
.LP
@@ -150,7 +152,7 @@ strings in the LDAP protocol.
Make calls to \fBldap_init_getfilter\fR(3LDAP) and \fBldap_search\fR(3LDAP) to
generate filters to be used in \fBldap_search\fR(3LDAP) and
\fBldap_search_s\fR(3LDAP). \fBldap_init_getfilter()\fR reads
-\fBldapfilter.conf\fR(4), the LDAP configuration file, while
+\fBldapfilter.conf\fR(5), the LDAP configuration file, while
\fBldap_init_getfilter_buf()\fR reads the configuration information from
\fIbuf\fR of length \fIbuflen\fR. \fBldap_getfilter_free\fR(3LDAP) frees memory
that has been allocated by means of \fBldap_init_getfilter()\fR.
@@ -1575,7 +1577,7 @@ Free memory allocated by LDAP API functions.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for a description of the following attributes:
+See \fBattributes\fR(7) for a description of the following attributes:
.sp
.sp
@@ -1590,4 +1592,4 @@ Stability Level Evolving
.SH SEE ALSO
.LP
-\fBattributes\fR(5)
+.BR attributes (7)
diff --git a/usr/src/man/man3ldap/ldap_abandon.3ldap b/usr/src/man/man3ldap/ldap_abandon.3ldap
index 2a5d87bd08..345b7dbb06 100644
--- a/usr/src/man/man3ldap/ldap_abandon.3ldap
+++ b/usr/src/man/man3ldap/ldap_abandon.3ldap
@@ -38,7 +38,7 @@ returned from a future call to \fBldap_result\fR(3LDAP).
setting \fIld_errno\fR appropriately. See \fBldap_error\fR(3LDAP) for details.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for a description of the following attributes:
+See \fBattributes\fR(7) for a description of the following attributes:
.sp
.sp
@@ -52,5 +52,7 @@ Interface Stability Evolving
.SH SEE ALSO
.LP
-\fBldap\fR(3LDAP), \fBldap_result\fR(3LDAP), \fBldap_error\fR(3LDAP),
-\fBattributes\fR(5)
+.BR ldap (3LDAP),
+.BR ldap_error (3LDAP),
+.BR ldap_result (3LDAP),
+.BR attributes (7)
diff --git a/usr/src/man/man3ldap/ldap_add.3ldap b/usr/src/man/man3ldap/ldap_add.3ldap
index d094d6df44..04d42db89b 100644
--- a/usr/src/man/man3ldap/ldap_add.3ldap
+++ b/usr/src/man/man3ldap/ldap_add.3ldap
@@ -77,7 +77,7 @@ error. \fBldap_add_s()\fR will return an LDAP error code directly.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for a description of the following attributes:
+See \fBattributes\fR(7) for a description of the following attributes:
.sp
.sp
@@ -92,5 +92,7 @@ Interface Stability Evolving
.SH SEE ALSO
.sp
.LP
-\fBldap\fR(3LDAP), \fBldap_error\fR(3LDAP), \fBldap_modify\fR(3LDAP),
-\fBattributes\fR(5)
+.BR ldap (3LDAP),
+.BR ldap_error (3LDAP),
+.BR ldap_modify (3LDAP),
+.BR attributes (7)
diff --git a/usr/src/man/man3ldap/ldap_ber_free.3ldap b/usr/src/man/man3ldap/ldap_ber_free.3ldap
index e36328eabb..2f20e55ec1 100644
--- a/usr/src/man/man3ldap/ldap_ber_free.3ldap
+++ b/usr/src/man/man3ldap/ldap_ber_free.3ldap
@@ -38,7 +38,7 @@ This function is deprecated . Use the \fBber_free()\fR function instead.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -54,5 +54,7 @@ Interface Stability Obsolete
.SH SEE ALSO
.sp
.LP
-\fBber_free\fR(3LDAP), \fBldap_first_attribute\fR(3LDAP),
-\fBldap_next_attribute\fR(3LDAP), \fBattributes\fR(5)
+.BR ber_free (3LDAP),
+.BR ldap_first_attribute (3LDAP),
+.BR ldap_next_attribute (3LDAP),
+.BR attributes (7)
diff --git a/usr/src/man/man3ldap/ldap_bind.3ldap b/usr/src/man/man3ldap/ldap_bind.3ldap
index b30b427007..c4e28bb8d8 100644
--- a/usr/src/man/man3ldap/ldap_bind.3ldap
+++ b/usr/src/man/man3ldap/ldap_bind.3ldap
@@ -222,7 +222,7 @@ credentials are returned, the result parameter is set to \fINULL\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -240,5 +240,9 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBldap\fR(3LDAP), \fBldap_error\fR(3LDAP), \fBldap_open\fR(3LDAP),
-\fBldap_result\fR(3LDAP), \fBlibsasl\fR(3LIB), \fBattributes\fR(5)
+.BR ldap (3LDAP),
+.BR ldap_error (3LDAP),
+.BR ldap_open (3LDAP),
+.BR ldap_result (3LDAP),
+.BR libsasl (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3ldap/ldap_charset.3ldap b/usr/src/man/man3ldap/ldap_charset.3ldap
index 171e330658..d54e0eacc8 100644
--- a/usr/src/man/man3ldap/ldap_charset.3ldap
+++ b/usr/src/man/man3ldap/ldap_charset.3ldap
@@ -108,7 +108,7 @@ not want to translate a binary attributes such as \fBjpegPhoto\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for a description of the following attributes:
+See \fBattributes\fR(7) for a description of the following attributes:
.sp
.sp
@@ -123,4 +123,5 @@ Interface Stability Evolving
.SH SEE ALSO
.sp
.LP
-\fBldap\fR(3LDAP), \fBattributes\fR(5)
+.BR ldap (3LDAP),
+.BR attributes (7)
diff --git a/usr/src/man/man3ldap/ldap_compare.3ldap b/usr/src/man/man3ldap/ldap_compare.3ldap
index a4944f7fab..b05e268fe7 100644
--- a/usr/src/man/man3ldap/ldap_compare.3ldap
+++ b/usr/src/man/man3ldap/ldap_compare.3ldap
@@ -75,7 +75,7 @@ the non-negative message id of the request if it was successful.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for a description of the following attributes:
+See \fBattributes\fR(7) for a description of the following attributes:
.sp
.sp
@@ -90,7 +90,9 @@ Interface Stability Evolving
.SH SEE ALSO
.sp
.LP
-\fBldap\fR(3LDAP), \fBldap_error\fR(3LDAP), \fBattributes\fR(5)
+.BR ldap (3LDAP),
+.BR ldap_error (3LDAP),
+.BR attributes (7)
.SH BUGS
.sp
.LP
diff --git a/usr/src/man/man3ldap/ldap_control_free.3ldap b/usr/src/man/man3ldap/ldap_control_free.3ldap
index 15a68d3a42..32ac80665d 100644
--- a/usr/src/man/man3ldap/ldap_control_free.3ldap
+++ b/usr/src/man/man3ldap/ldap_control_free.3ldap
@@ -39,7 +39,7 @@ No errors are defined for these functions.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for a description of the following attributes:
+See \fBattributes\fR(7) for a description of the following attributes:
.sp
.sp
@@ -54,4 +54,6 @@ Interface Stability Evolving
.SH SEE ALSO
.sp
.LP
-\fBldap_error\fR(3LDAP), \fBldap_result\fR(3LDAP), \fBattributes\fR(5)
+.BR ldap_error (3LDAP),
+.BR ldap_result (3LDAP),
+.BR attributes (7)
diff --git a/usr/src/man/man3ldap/ldap_delete.3ldap b/usr/src/man/man3ldap/ldap_delete.3ldap
index 34d265a5e4..ab4df67216 100644
--- a/usr/src/man/man3ldap/ldap_delete.3ldap
+++ b/usr/src/man/man3ldap/ldap_delete.3ldap
@@ -69,7 +69,7 @@ non-negative message id of the request if things were successful.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for a description of the following attributes:
+See \fBattributes\fR(7) for a description of the following attributes:
.sp
.sp
@@ -84,4 +84,6 @@ Interface Stability Evolving
.SH SEE ALSO
.sp
.LP
-\fBldap\fR(3LDAP), \fBldap_error\fR(3LDAP), \fBattributes\fR(5)
+.BR ldap (3LDAP),
+.BR ldap_error (3LDAP),
+.BR attributes (7)
diff --git a/usr/src/man/man3ldap/ldap_disptmpl.3ldap b/usr/src/man/man3ldap/ldap_disptmpl.3ldap
index aa9c22c88c..dff1b9efa9 100644
--- a/usr/src/man/man3ldap/ldap_disptmpl.3ldap
+++ b/usr/src/man/man3ldap/ldap_disptmpl.3ldap
@@ -92,7 +92,7 @@ Entry display templates provide a standard way for LDAP applications to display
directory entries. The general idea is that it is possible to map the list of
object class values present in an entry to an appropriate display template.
Display templates are defined in a configuration file. See
-\fBldaptemplates.conf\fR(4). Each display template contains a pre-determined
+\fBldaptemplates.conf\fR(5). Each display template contains a pre-determined
list of items, where each item generally corresponds to an attribute to be
displayed. The items contain information and flags that the caller can use to
display the attribute and values in a reasonable fashion. Each item has a
@@ -102,7 +102,7 @@ produce text output.
.sp
.LP
\fBldap_init_templates()\fR reads a sequence of templates from a valid LDAP
-template configuration file (see \fBldaptemplates.conf\fR(4)). Upon success,
+template configuration file (see \fBldaptemplates.conf\fR(5)). Upon success,
\fB0\fR is returned, and \fItmpllistp\fR is set to point to a list of
templates. Each member of the list is an \fBldap_disptmpl\fR structure
(defined below in the DISPTMPL Structure Elements section).
@@ -111,7 +111,7 @@ templates. Each member of the list is an \fBldap_disptmpl\fR structure
\fBldap_init_templates_buf()\fR reads a sequence of templates from \fIbuf\fR
(whose size is \fIbuflen).\fR \fIbuf\fR should point to the data in the format
defined for an LDAP template configuration file (see
-\fBldaptemplates.conf\fR(4)). Upon success, \fB0\fR is returned, and
+\fBldaptemplates.conf\fR(5)). Upon success, \fB0\fR is returned, and
\fItmpllistp\fR is set to point to a list of templates.
.sp
.LP
@@ -430,7 +430,7 @@ cannot be read. Other functions generally return \fINULL\fR upon error.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for a description of the following attributes:
+See \fBattributes\fR(7) for a description of the following attributes:
.sp
.sp
@@ -445,5 +445,7 @@ Interface Stability Evolving
.SH SEE ALSO
.sp
.LP
-\fBldap\fR(3LDAP), \fBldap_entry2text\fR(3LDAP), \fBldaptemplates.conf\fR(4),
-\fBattributes\fR(5)
+.BR ldap (3LDAP),
+.BR ldap_entry2text (3LDAP),
+.BR ldaptemplates.conf (5),
+.BR attributes (7)
diff --git a/usr/src/man/man3ldap/ldap_entry2text.3ldap b/usr/src/man/man3ldap/ldap_entry2text.3ldap
index bc67cfb587..45f1e8da97 100644
--- a/usr/src/man/man3ldap/ldap_entry2text.3ldap
+++ b/usr/src/man/man3ldap/ldap_entry2text.3ldap
@@ -78,7 +78,7 @@ cc[ \fIflag\fR... ] \fIfile\fR... -lldap[ \fIlibrary\fR... ]
.SH DESCRIPTION
These functions use the LDAP display template functions (see
-\fBldap_disptmpl\fR(3LDAP) and \fBldaptemplates.conf\fR(4)) to produce a
+\fBldap_disptmpl\fR(3LDAP) and \fBldaptemplates.conf\fR(5)) to produce a
plain text or an HyperText Markup Language (HTML) display of an entry or a set
of values. Typical plain text output produced for an entry might look like:
.sp
@@ -205,7 +205,7 @@ field of the \fIld\fR parameter is also set to indicate the error.
.SH FILES
\fBETCDIR/ldaptemplates.conf\fR
.SH ATTRIBUTES
-See \fBattributes\fR(5) for a description of the following attributes:
+See \fBattributes\fR(7) for a description of the following attributes:
.sp
.sp
@@ -218,5 +218,5 @@ Interface Stability Evolving
.TE
.SH SEE ALSO
-\fBldap\fR(3LDAP), \fBldap_disptmpl\fR(3LDAP), \fBldaptemplates.conf\fR(4) ,
-\fBattributes\fR(5)
+\fBldap\fR(3LDAP), \fBldap_disptmpl\fR(3LDAP), \fBldaptemplates.conf\fR(5) ,
+.BR attributes (7)
diff --git a/usr/src/man/man3ldap/ldap_error.3ldap b/usr/src/man/man3ldap/ldap_error.3ldap
index 071291ec42..f381c661b2 100644
--- a/usr/src/man/man3ldap/ldap_error.3ldap
+++ b/usr/src/man/man3ldap/ldap_error.3ldap
@@ -581,7 +581,7 @@ servers that the client can hop through to retrieve data.
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for a description of the following attributes:
+See \fBattributes\fR(7) for a description of the following attributes:
.sp
.sp
@@ -599,4 +599,4 @@ Interface Stability Committed
\fBldap_result\fR(3LDAP), \fBldap_parse_extended_result\fR(3LDAP),
\fBldap_parse_result\fR(3LDAP), \fBldap_parse_sasl_bind_result\fR(3LDAP),
\fBldap_search\fR(3LDAP), \fBmalloc\fR(3C), \fBperror\fR(3C) ,
-\fBattributes\fR(5)
+.BR attributes (7)
diff --git a/usr/src/man/man3ldap/ldap_first_attribute.3ldap b/usr/src/man/man3ldap/ldap_first_attribute.3ldap
index 2b90dfcf10..0c0f76bcb0 100644
--- a/usr/src/man/man3ldap/ldap_first_attribute.3ldap
+++ b/usr/src/man/man3ldap/ldap_first_attribute.3ldap
@@ -50,7 +50,7 @@ If an error occurs, \fINULL\fR is returned and the \fBld_errno\fR field in the
for a description of possible error codes.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for a description of the following attributes:
+See \fBattributes\fR(7) for a description of the following attributes:
.sp
.sp
@@ -65,8 +65,11 @@ Interface Stability Evolving
.SH SEE ALSO
.LP
-\fBldap\fR(3LDAP), \fBldap_first_entry\fR(3LDAP), \fBldap_get_values\fR(3LDAP),
-\fBldap_error\fR(3LDAP), \fBattributes\fR(5)
+.BR ldap (3LDAP),
+.BR ldap_error (3LDAP),
+.BR ldap_first_entry (3LDAP),
+.BR ldap_get_values (3LDAP),
+.BR attributes (7)
.SH NOTES
.LP
The \fBldap_first_attribute()\fR function alllocates memory that might need to
diff --git a/usr/src/man/man3ldap/ldap_first_entry.3ldap b/usr/src/man/man3ldap/ldap_first_entry.3ldap
index 8370b82eb6..00e6e596ae 100644
--- a/usr/src/man/man3ldap/ldap_first_entry.3ldap
+++ b/usr/src/man/man3ldap/ldap_first_entry.3ldap
@@ -90,7 +90,7 @@ codes.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for a description of the following attributes:
+See \fBattributes\fR(7) for a description of the following attributes:
.sp
.sp
@@ -105,6 +105,10 @@ Interface Stability Evolving
.SH SEE ALSO
.sp
.LP
-\fBldap\fR(3LDAP), \fBldap_result\fR(3LDAP), \fBldap_search\fR(3LDAP),
-\fBldap_first_attribute\fR(3LDAP), \fBldap_get_values\fR(3LDAP),
-\fBldap_get_dn\fR(3LDAP), \fBattributes\fR(5)
+.BR ldap (3LDAP),
+.BR ldap_first_attribute (3LDAP),
+.BR ldap_get_dn (3LDAP),
+.BR ldap_get_values (3LDAP),
+.BR ldap_result (3LDAP),
+.BR ldap_search (3LDAP),
+.BR attributes (7)
diff --git a/usr/src/man/man3ldap/ldap_first_message.3ldap b/usr/src/man/man3ldap/ldap_first_message.3ldap
index a7881ccdd4..78999116cc 100644
--- a/usr/src/man/man3ldap/ldap_first_message.3ldap
+++ b/usr/src/man/man3ldap/ldap_first_message.3ldap
@@ -69,7 +69,7 @@ session handle \fIld\fR will be set to indicate the error.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for a description of the following attributes:
+See \fBattributes\fR(7) for a description of the following attributes:
.sp
.sp
@@ -84,4 +84,6 @@ Interface Stability Evolving
.SH SEE ALSO
.sp
.LP
-\fBldap_error\fR(3LDAP), \fBldap_result\fR(3LDAP), \fBattributes\fR(5)
+.BR ldap_error (3LDAP),
+.BR ldap_result (3LDAP),
+.BR attributes (7)
diff --git a/usr/src/man/man3ldap/ldap_friendly.3ldap b/usr/src/man/man3ldap/ldap_friendly.3ldap
index 3339fc42a2..e9644c71a0 100644
--- a/usr/src/man/man3ldap/ldap_friendly.3ldap
+++ b/usr/src/man/man3ldap/ldap_friendly.3ldap
@@ -72,7 +72,7 @@ parameter is \fINULL\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for a description of the following attributes:
+See \fBattributes\fR(7) for a description of the following attributes:
.sp
.sp
@@ -87,4 +87,5 @@ Interface Stability Evolving
.SH SEE ALSO
.sp
.LP
-\fBldap\fR(3LDAP), \fBattributes\fR(5)
+.BR ldap (3LDAP),
+.BR attributes (7)
diff --git a/usr/src/man/man3ldap/ldap_get_dn.3ldap b/usr/src/man/man3ldap/ldap_get_dn.3ldap
index 5de6e000d3..bec4e3edea 100644
--- a/usr/src/man/man3ldap/ldap_get_dn.3ldap
+++ b/usr/src/man/man3ldap/ldap_get_dn.3ldap
@@ -107,7 +107,7 @@ caller should free the returned string if it is non-zero.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for a description of the following attributes:
+See \fBattributes\fR(7) for a description of the following attributes:
.sp
.sp
@@ -122,8 +122,10 @@ Interface Stability Evolving
.SH SEE ALSO
.sp
.LP
-\fBldap\fR(3LDAP), \fBldap_first_entry\fR(3LDAP), \fBldap_error\fR(3LDAP),
-\fBldap_value_free\fR(3LDAP)
+.BR ldap (3LDAP),
+.BR ldap_error (3LDAP),
+.BR ldap_first_entry (3LDAP),
+.BR ldap_value_free (3LDAP)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3ldap/ldap_get_entry_controls.3ldap b/usr/src/man/man3ldap/ldap_get_entry_controls.3ldap
index 55f0f67cb7..b10928e7dd 100644
--- a/usr/src/man/man3ldap/ldap_get_entry_controls.3ldap
+++ b/usr/src/man/man3ldap/ldap_get_entry_controls.3ldap
@@ -76,7 +76,7 @@ Memory cannot be allocated.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -92,4 +92,6 @@ Interface Stability Evolving
.SH SEE ALSO
.sp
.LP
-\fBldap_error\fR(3LDAP), \fBldap_parse_result\fR(3LDAP), \fBattributes\fR(5)
+.BR ldap_error (3LDAP),
+.BR ldap_parse_result (3LDAP),
+.BR attributes (7)
diff --git a/usr/src/man/man3ldap/ldap_get_lang_values.3ldap b/usr/src/man/man3ldap/ldap_get_lang_values.3ldap
index e8c759d283..1d08fcf0ee 100644
--- a/usr/src/man/man3ldap/ldap_get_lang_values.3ldap
+++ b/usr/src/man/man3ldap/ldap_get_lang_values.3ldap
@@ -72,7 +72,7 @@ the appropriate error code in the LDAP structure.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -88,6 +88,9 @@ Interface Stability Obsolete
.SH SEE ALSO
.sp
.LP
-\fBldap_first_attribute\fR(3LDAP), \fBldap_first_attribute\fR(3LDAP),
-\fBldap_get_values\fR(3LDAP), \fBldap_result\fR(3LDAP),
-\fBldap_search\fR(3LDAP), \fBattributes\fR(5)
+.BR ldap_first_attribute (3LDAP),
+.BR ldap_first_attribute (3LDAP),
+.BR ldap_get_values (3LDAP),
+.BR ldap_result (3LDAP),
+.BR ldap_search (3LDAP),
+.BR attributes (7)
diff --git a/usr/src/man/man3ldap/ldap_get_option.3ldap b/usr/src/man/man3ldap/ldap_get_option.3ldap
index 66808e19bb..1dedb0cd1f 100644
--- a/usr/src/man/man3ldap/ldap_get_option.3ldap
+++ b/usr/src/man/man3ldap/ldap_get_option.3ldap
@@ -527,7 +527,7 @@ If unsuccessful
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -545,7 +545,9 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBldap_init\fR(3LDAP), \fBsasl_setprop\fR(3SASL), \fBattributes\fR(5)
+.BR ldap_init (3LDAP),
+.BR sasl_setprop (3SASL),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3ldap/ldap_get_values.3ldap b/usr/src/man/man3ldap/ldap_get_values.3ldap
index 088e6ea646..d7b0138155 100644
--- a/usr/src/man/man3ldap/ldap_get_values.3ldap
+++ b/usr/src/man/man3ldap/ldap_get_values.3ldap
@@ -82,7 +82,7 @@ possible error codes.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for a description of the following attributes:
+See \fBattributes\fR(7) for a description of the following attributes:
.sp
.sp
@@ -97,8 +97,11 @@ Interface Stability Evolving
.SH SEE ALSO
.sp
.LP
-\fBldap\fR(3LDAP), \fBldap_first_entry\fR(3LDAP),
-\fBldap_first_attribute\fR(3LDAP), \fBldap_error\fR(3LDAP), \fBattributes\fR(5)
+.BR ldap (3LDAP),
+.BR ldap_error (3LDAP),
+.BR ldap_first_attribute (3LDAP),
+.BR ldap_first_entry (3LDAP),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3ldap/ldap_getfilter.3ldap b/usr/src/man/man3ldap/ldap_getfilter.3ldap
index c8e961a216..bdfa515eb2 100644
--- a/usr/src/man/man3ldap/ldap_getfilter.3ldap
+++ b/usr/src/man/man3ldap/ldap_getfilter.3ldap
@@ -65,7 +65,7 @@ to calling any of the other functions except \fBldap_build_filter\fR.
.LP
\fBldap_init_getfilter()\fR takes a file name as its only argument. The
contents of the file must be a valid LDAP filter configuration file (see
-\fBldapfilter.conf\fR(4)). If the file is successfully read, a pointer to an
+\fBldapfilter.conf\fR(5)). If the file is successfully read, a pointer to an
\fBLDAPFiltDesc\fR is returned. This is an opaque object that is passed in
subsequent get filter calls.
.sp
@@ -73,7 +73,7 @@ subsequent get filter calls.
\fBldap_init_getfilter_buf()\fR reads from \fIbuf\fR, whose length is
\fIbuflen\fR, the LDAP filter configuration information. \fIbuf\fR must point
to the contents of a valid LDAP filter configuration file. See
-\fBldapfilter.conf\fR(4). If the filter configuration information is
+\fBldapfilter.conf\fR(5). If the filter configuration information is
successfully read, a pointer to an \fBLDAPFiltDesc\fR is returned. This is an
opaque object that is passed in subsequent get filter calls.
.sp
@@ -111,7 +111,7 @@ A pattern for the desired filter is passed in \fIpattern.\fR Where the string
%a appears in the pattern it is replaced with \fIattr.\fR \fIprefix\fR is
pre-pended to the resulting filter, and \fIsuffix\fR is appended. Either can
be NULL , in which case they are not used. \fIvalue\fR and \fIvalwords\fR are
-used when the string %v appears in \fIpattern.\fR See \fBldapfilter.conf\fR(4)
+used when the string %v appears in \fIpattern.\fR See \fBldapfilter.conf\fR(5)
for a description of how %v is handled.
.SH ERRORS
.sp
@@ -133,7 +133,7 @@ LDAP filtering routine configuration file.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for a description of the following attributes:
+See \fBattributes\fR(7) for a description of the following attributes:
.sp
.sp
@@ -148,7 +148,9 @@ Interface Stability Evolving
.SH SEE ALSO
.sp
.LP
-\fBldap\fR(3LDAP), \fBldapfilter.conf\fR(4), \fBattributes\fR(5)
+.BR ldap (3LDAP),
+.BR ldapfilter.conf (5),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3ldap/ldap_memcache.3ldap b/usr/src/man/man3ldap/ldap_memcache.3ldap
index 8a72c74c0e..12b56b8caf 100644
--- a/usr/src/man/man3ldap/ldap_memcache.3ldap
+++ b/usr/src/man/man3ldap/ldap_memcache.3ldap
@@ -219,7 +219,7 @@ the operation was successful. Otherwise, they return another LDAP error code.
See \fBldap_error\fR(3LDAP) for a list of the LDAP error codes.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -234,5 +234,7 @@ Interface Stability Evolving
.SH SEE ALSO
.LP
-\fBldap_error\fR(3LDAP), \fBldap_open\fR(3LDAP), \fBldap_search\fR(3LDAP),
-\fBattributes\fR(5)
+.BR ldap_error (3LDAP),
+.BR ldap_open (3LDAP),
+.BR ldap_search (3LDAP),
+.BR attributes (7)
diff --git a/usr/src/man/man3ldap/ldap_memfree.3ldap b/usr/src/man/man3ldap/ldap_memfree.3ldap
index c31753611f..1b5541a167 100644
--- a/usr/src/man/man3ldap/ldap_memfree.3ldap
+++ b/usr/src/man/man3ldap/ldap_memfree.3ldap
@@ -45,7 +45,7 @@ There are no return values for the \fBldap_memfree()\fR function.
No errors are defined for the \fBldap_memfree()\fR function.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -60,5 +60,8 @@ Interface Stability Evolving
.SH SEE ALSO
.LP
-\fBldap\fR(3LDAP), \fBldap_first_attribute\fR(3LDAP), \fBldap_get_dn\fR(3LDAP),
-\fBldap_next_attribute\fR(3LDAP), \fBattributes\fR(5)
+.BR ldap (3LDAP),
+.BR ldap_first_attribute (3LDAP),
+.BR ldap_get_dn (3LDAP),
+.BR ldap_next_attribute (3LDAP),
+.BR attributes (7)
diff --git a/usr/src/man/man3ldap/ldap_modify.3ldap b/usr/src/man/man3ldap/ldap_modify.3ldap
index d79ad4bbe2..3cb1492ac0 100644
--- a/usr/src/man/man3ldap/ldap_modify.3ldap
+++ b/usr/src/man/man3ldap/ldap_modify.3ldap
@@ -127,7 +127,7 @@ an error. See \fBldap_error\fR(3LDAP).
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for a description of the following attributes:
+See \fBattributes\fR(7) for a description of the following attributes:
.sp
.sp
@@ -142,5 +142,8 @@ Interface Stability Evolving
.SH SEE ALSO
.sp
.LP
-\fBldap\fR(3LDAP), \fBldap_add\fR(3LDAP), \fBldap_error\fR(3LDAP),
-\fBldap_get_option\fR(3LDAP), \fBattributes\fR(5)
+.BR ldap (3LDAP),
+.BR ldap_add (3LDAP),
+.BR ldap_error (3LDAP),
+.BR ldap_get_option (3LDAP),
+.BR attributes (7)
diff --git a/usr/src/man/man3ldap/ldap_modrdn.3ldap b/usr/src/man/man3ldap/ldap_modrdn.3ldap
index 0f60ac8a3c..d771af5024 100644
--- a/usr/src/man/man3ldap/ldap_modrdn.3ldap
+++ b/usr/src/man/man3ldap/ldap_modrdn.3ldap
@@ -93,7 +93,7 @@ result.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for a description of the following attributes of the
+See \fBattributes\fR(7) for a description of the following attributes of the
\fBldap_modrdn()\fR, \fBldap_modrdn_s()\fR, \fBldap_modrdn2()\fR and
\fBldap_modrdn2_s()\fR functions:
.sp
@@ -126,4 +126,4 @@ Interface Stability Evolving
.SH SEE ALSO
.sp
.LP
-\fBldap\fR(3LDAP), \fBldap_error\fR(3LDAP) , \fBattributes\fR(5)
+\fBldap\fR(3LDAP), \fBldap_error\fR(3LDAP) , \fBattributes\fR(7)
diff --git a/usr/src/man/man3ldap/ldap_open.3ldap b/usr/src/man/man3ldap/ldap_open.3ldap
index fd6c8ec587..f73563afc8 100644
--- a/usr/src/man/man3ldap/ldap_open.3ldap
+++ b/usr/src/man/man3ldap/ldap_open.3ldap
@@ -102,7 +102,7 @@ ldap_init("[fec0::114:a00:20ff:ab3d:83ed]", 389)
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -120,5 +120,9 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBerrno\fR(3C), \fBldap\fR(3LDAP), \fBldap_bind\fR(3LDAP),
-\fBldap_get_option\fR(3LDAP), \fBldap_set_option\fR(3LDAP), \fBattributes\fR(5)
+.BR errno (3C),
+.BR ldap (3LDAP),
+.BR ldap_bind (3LDAP),
+.BR ldap_get_option (3LDAP),
+.BR ldap_set_option (3LDAP),
+.BR attributes (7)
diff --git a/usr/src/man/man3ldap/ldap_parse_result.3ldap b/usr/src/man/man3ldap/ldap_parse_result.3ldap
index 945a923979..c723d19348 100644
--- a/usr/src/man/man3ldap/ldap_parse_result.3ldap
+++ b/usr/src/man/man3ldap/ldap_parse_result.3ldap
@@ -47,7 +47,7 @@ LDAP error code if not (see \fBldap_error\fR(3LDAP)).
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for a description of the following attributes:
+See \fBattributes\fR(7) for a description of the following attributes:
.sp
.sp
@@ -62,4 +62,6 @@ Interface Stability Evolving
.SH SEE ALSO
.sp
.LP
-\fBldap_error\fR(3LDAP), \fBldap_result\fR(3LDAP), \fBattributes\fR(5)
+.BR ldap_error (3LDAP),
+.BR ldap_result (3LDAP),
+.BR attributes (7)
diff --git a/usr/src/man/man3ldap/ldap_result.3ldap b/usr/src/man/man3ldap/ldap_result.3ldap
index 186d066218..805d3b43c7 100644
--- a/usr/src/man/man3ldap/ldap_result.3ldap
+++ b/usr/src/man/man3ldap/ldap_result.3ldap
@@ -96,7 +96,7 @@ specified timeout was exceeded.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for a description of the following attributes:
+See \fBattributes\fR(7) for a description of the following attributes:
.sp
.sp
@@ -112,7 +112,7 @@ Interface Stability Committed
.sp
.LP
\fBselect\fR(1), \fBldap\fR(3LDAP), \fBldap_search\fR(3LDAP) ,
-\fBattributes\fR(5)
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3ldap/ldap_search.3ldap b/usr/src/man/man3ldap/ldap_search.3ldap
index 092ca22a01..8becc7f261 100644
--- a/usr/src/man/man3ldap/ldap_search.3ldap
+++ b/usr/src/man/man3ldap/ldap_search.3ldap
@@ -141,7 +141,7 @@ terminates unsuccessfully.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for a description of the following attributes:
+See \fBattributes\fR(7) for a description of the following attributes:
.sp
.sp
@@ -157,7 +157,7 @@ Interface Stability Evolving
.sp
.LP
\fBldap\fR(3LDAP), \fBldap_result\fR(3LDAP), \fBldap_getfilter\fR(3LDAP),
-\fBldap_error\fR(3LDAP) , \fBattributes\fR(5)
+\fBldap_error\fR(3LDAP) , \fBattributes\fR(7)
.sp
.LP
Howes, T., Kille, S., Yeong, W., Robbins, C., Wenn, J. \fIRFC 1778, The String
diff --git a/usr/src/man/man3ldap/ldap_searchprefs.3ldap b/usr/src/man/man3ldap/ldap_searchprefs.3ldap
index b5301647ae..195d7e9fbe 100644
--- a/usr/src/man/man3ldap/ldap_searchprefs.3ldap
+++ b/usr/src/man/man3ldap/ldap_searchprefs.3ldap
@@ -57,14 +57,14 @@ specify the type of search to be performed.
.LP
\fBldap_init_searchprefs()\fR reads a sequence of search preference
configurations from a valid LDAP searchpref configuration file. See
-\fBldapsearchprefs.conf\fR(4). Upon success, \fB0\fR is returned and
+\fBldapsearchprefs.conf\fR(5). Upon success, \fB0\fR is returned and
\fIsolistp\fR is set to point to a list of search preference data structures.
.sp
.LP
\fBldap_init_searchprefs_buf()\fR reads a sequence of search preference
configurations from \fIbuf\fR, whose size is \fIbuflen.\fR \fIbuf\fR should
point to the data in the format defined for an LDAP search preference
-configuration file. See \fBldapsearchprefs.conf\fR(4). Upon success, \fB0\fR
+configuration file. See \fBldapsearchprefs.conf\fR(5). Upon success, \fB0\fR
is returned and \fIsolistp\fR is set to point to a list of search preference
data structures.
.sp
@@ -108,7 +108,7 @@ Memory allocation problem.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for a description of the following attributes:
+See \fBattributes\fR(7) for a description of the following attributes:
.sp
.sp
@@ -123,7 +123,9 @@ Interface Stability Evolving
.SH SEE ALSO
.sp
.LP
-\fBldap\fR(3LDAP), \fBldapsearchprefs.conf\fR(4), \fBattributes\fR(5)
+.BR ldap (3LDAP),
+.BR ldapsearchprefs.conf (5),
+.BR attributes (7)
.sp
.LP
Yeong, W., Howes, T., and Hardcastle-Kille, S., "Lightweight Directory Access
diff --git a/usr/src/man/man3ldap/ldap_sort.3ldap b/usr/src/man/man3ldap/ldap_sort.3ldap
index e6a623a8f8..46e6a9d55e 100644
--- a/usr/src/man/man3ldap/ldap_sort.3ldap
+++ b/usr/src/man/man3ldap/ldap_sort.3ldap
@@ -76,7 +76,7 @@ For example:
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for a description of the following attributes:
+See \fBattributes\fR(7) for a description of the following attributes:
.sp
.sp
@@ -91,8 +91,11 @@ Interface Stability Evolving
.SH SEE ALSO
.sp
.LP
-\fBldap\fR(3LDAP), \fBldap_search\fR(3LDAP), \fBldap_result\fR(3LDAP),
-\fBqsort\fR(3C), \fBattributes\fR(5)
+.BR qsort (3C),
+.BR ldap (3LDAP),
+.BR ldap_result (3LDAP),
+.BR ldap_search (3LDAP),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3ldap/ldap_ufn.3ldap b/usr/src/man/man3ldap/ldap_ufn.3ldap
index 81ec34b3c2..f387ee7f1d 100644
--- a/usr/src/man/man3ldap/ldap_ufn.3ldap
+++ b/usr/src/man/man3ldap/ldap_ufn.3ldap
@@ -79,7 +79,7 @@ first", "ufn intermediate", and "ufn last".
.sp
.LP
The \fBldap_ufn_setfilter()\fR function is used to set the
-\fBldapfilter.conf\fR(4) file for use with the \fBldap_init_getfilter\fR(3LDAP)
+\fBldapfilter.conf\fR(5) file for use with the \fBldap_init_getfilter\fR(3LDAP)
function to \fIfname\fR.
.sp
.LP
@@ -98,7 +98,7 @@ actually be a pointer to a struct timeval. This is so \fBldap_ufn_timeout()\fR
can be used as a cancelproc in the above functions.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for a description of the following attributes:
+See \fBattributes\fR(7) for a description of the following attributes:
.sp
.sp
@@ -112,9 +112,13 @@ Interface Stability Evolving
.SH SEE ALSO
.LP
-\fBgettimeofday\fR(3C), \fBldap\fR(3LDAP), \fBldap_search\fR(3LDAP),
-\fBldap_getfilter\fR(3LDAP), \fBldapfilter.conf\fR(4), \fBldap_error\fR(3LDAP),
-\fBattributes\fR(5)
+.BR gettimeofday (3C),
+.BR ldap (3LDAP),
+.BR ldap_error (3LDAP),
+.BR ldap_getfilter (3LDAP),
+.BR ldap_search (3LDAP),
+.BR ldapfilter.conf (5),
+.BR attributes (7)
.SH NOTES
.LP
These functions may allocates memory. Return values are contained in
diff --git a/usr/src/man/man3ldap/ldap_url.3ldap b/usr/src/man/man3ldap/ldap_url.3ldap
index 77c95b8482..09edf7c4e3 100644
--- a/usr/src/man/man3ldap/ldap_url.3ldap
+++ b/usr/src/man/man3ldap/ldap_url.3ldap
@@ -250,7 +250,7 @@ URL doesn't begin with \fBldap://\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for a description of the following attributes:
+See \fBattributes\fR(7) for a description of the following attributes:
.sp
.sp
@@ -265,7 +265,9 @@ Interface Stability Evolving
.SH SEE ALSO
.sp
.LP
-\fBldap\fR(3LDAP), \fBldap_search\fR(3LDAP), \fBattributes\fR(5)
+.BR ldap (3LDAP),
+.BR ldap_search (3LDAP),
+.BR attributes (7)
.sp
.LP
\fBAn\fR \fBLDAP\fR \fBURL\fR \fBFormat,\fR Tim Howes and Mark Smith, December
diff --git a/usr/src/man/man3ldap/ldap_version.3ldap b/usr/src/man/man3ldap/ldap_version.3ldap
index dab60cb873..a1a2685b2f 100644
--- a/usr/src/man/man3ldap/ldap_version.3ldap
+++ b/usr/src/man/man3ldap/ldap_version.3ldap
@@ -33,7 +33,7 @@ the function returns \fB100\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -49,4 +49,5 @@ Interface Stability Obsolete
.SH SEE ALSO
.sp
.LP
-\fBldap_get_option\fR(3LDAP), \fBattributes\fR(5)
+.BR ldap_get_option (3LDAP),
+.BR attributes (7)
diff --git a/usr/src/man/man3lgrp/lgrp_affinity_get.3lgrp b/usr/src/man/man3lgrp/lgrp_affinity_get.3lgrp
index 3fed0a871f..8fea1266f5 100644
--- a/usr/src/man/man3lgrp/lgrp_affinity_get.3lgrp
+++ b/usr/src/man/man3lgrp/lgrp_affinity_get.3lgrp
@@ -138,7 +138,7 @@ The specified lgroup or LWP(s) was not found.
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -154,4 +154,6 @@ MT-Level MT-Safe
.TE
.SH SEE ALSO
-\fBlgrp_home\fR(3LGRP), \fBliblgrp\fR(3LIB), \fBattributes\fR(5)
+.BR lgrp_home (3LGRP),
+.BR liblgrp (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3lgrp/lgrp_children.3lgrp b/usr/src/man/man3lgrp/lgrp_children.3lgrp
index b10e19e89e..8489b89a9b 100644
--- a/usr/src/man/man3lgrp/lgrp_children.3lgrp
+++ b/usr/src/man/man3lgrp/lgrp_children.3lgrp
@@ -55,7 +55,7 @@ The specified lgroup ID was not found.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -73,5 +73,8 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBlgrp_init\fR(3LGRP), \fBlgrp_nlgrps\fR(3LGRP), \fBlgrp_parents\fR(3LGRP),
-\fBliblgrp\fR(3LIB), \fBattributes\fR(5)
+.BR lgrp_init (3LGRP),
+.BR lgrp_nlgrps (3LGRP),
+.BR lgrp_parents (3LGRP),
+.BR liblgrp (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3lgrp/lgrp_cookie_stale.3lgrp b/usr/src/man/man3lgrp/lgrp_cookie_stale.3lgrp
index 15a8368e04..6de9c3addc 100644
--- a/usr/src/man/man3lgrp/lgrp_cookie_stale.3lgrp
+++ b/usr/src/man/man3lgrp/lgrp_cookie_stale.3lgrp
@@ -54,7 +54,7 @@ The cookie is not valid.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -72,5 +72,8 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBlgrp_init\fR(3LGRP), \fBlgrp_fini\fR(3LGRP), \fBlgrp_view\fR(3LGRP),
-\fBliblgrp\fR(3LIB), \fBattributes\fR(5)
+.BR lgrp_fini (3LGRP),
+.BR lgrp_init (3LGRP),
+.BR lgrp_view (3LGRP),
+.BR liblgrp (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3lgrp/lgrp_cpus.3lgrp b/usr/src/man/man3lgrp/lgrp_cpus.3lgrp
index 497f630e54..b313787152 100644
--- a/usr/src/man/man3lgrp/lgrp_cpus.3lgrp
+++ b/usr/src/man/man3lgrp/lgrp_cpus.3lgrp
@@ -74,7 +74,7 @@ The specified lgroup ID was not found.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -92,5 +92,8 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBlgrp_init\fR(3LGRP), \fBlgrp_mem_size\fR(3LGRP),
-\fBlgrp_resources\fR(3LGRP), \fBliblgrp\fR(3LIB), \fBattributes\fR(5)
+.BR lgrp_init (3LGRP),
+.BR lgrp_mem_size (3LGRP),
+.BR lgrp_resources (3LGRP),
+.BR liblgrp (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3lgrp/lgrp_fini.3lgrp b/usr/src/man/man3lgrp/lgrp_fini.3lgrp
index 1d77ec9eb6..48e4b57b55 100644
--- a/usr/src/man/man3lgrp/lgrp_fini.3lgrp
+++ b/usr/src/man/man3lgrp/lgrp_fini.3lgrp
@@ -44,7 +44,7 @@ The \fIcookie\fR is not valid.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -62,5 +62,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBlgrp_init\fR(3LGRP), \fBlgrp_cookie_stale\fR(3LGRP), \fBliblgrp\fR(3LIB),
-\fBattributes\fR(5)
+.BR lgrp_cookie_stale (3LGRP),
+.BR lgrp_init (3LGRP),
+.BR liblgrp (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3lgrp/lgrp_home.3lgrp b/usr/src/man/man3lgrp/lgrp_home.3lgrp
index 15d5346daf..d88e50a721 100644
--- a/usr/src/man/man3lgrp/lgrp_home.3lgrp
+++ b/usr/src/man/man3lgrp/lgrp_home.3lgrp
@@ -74,7 +74,7 @@ The specified process or thread was not found.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -92,4 +92,6 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBlgrp_affinity_get\fR(3LGRP), \fBlgrp_init\fR(3LGRP), \fBattributes\fR(5)
+.BR lgrp_affinity_get (3LGRP),
+.BR lgrp_init (3LGRP),
+.BR attributes (7)
diff --git a/usr/src/man/man3lgrp/lgrp_init.3lgrp b/usr/src/man/man3lgrp/lgrp_init.3lgrp
index 69ebff507d..fb4c5ba52e 100644
--- a/usr/src/man/man3lgrp/lgrp_init.3lgrp
+++ b/usr/src/man/man3lgrp/lgrp_init.3lgrp
@@ -84,7 +84,7 @@ There was not enough memory to allocate the snapshot of the lgroup hierarchy.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -102,8 +102,15 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBlgrp_children\fR(3LGRP), \fBlgrp_cookie_stale\fR(3LGRP),
-\fBlgrp_cpus\fR(3LGRP), \fBlgrp_fini\fR(3LGRP), \fBlgrp_mem_size\fR(3LGRP),
-\fBlgrp_nlgrps\fR(3LGRP), \fBlgrp_parents\fR(3LGRP),
-\fBlgrp_resources\fR(3LGRP), \fBlgrp_root\fR(3LGRP), \fBlgrp_view\fR(3LGRP),
-\fBliblgrp\fR(3LIB), \fBattributes\fR(5)
+.BR lgrp_children (3LGRP),
+.BR lgrp_cookie_stale (3LGRP),
+.BR lgrp_cpus (3LGRP),
+.BR lgrp_fini (3LGRP),
+.BR lgrp_mem_size (3LGRP),
+.BR lgrp_nlgrps (3LGRP),
+.BR lgrp_parents (3LGRP),
+.BR lgrp_resources (3LGRP),
+.BR lgrp_root (3LGRP),
+.BR lgrp_view (3LGRP),
+.BR liblgrp (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3lgrp/lgrp_latency.3lgrp b/usr/src/man/man3lgrp/lgrp_latency.3lgrp
index c197215a31..619dcd5977 100644
--- a/usr/src/man/man3lgrp/lgrp_latency.3lgrp
+++ b/usr/src/man/man3lgrp/lgrp_latency.3lgrp
@@ -83,7 +83,7 @@ any CPUs, or the \fIto\fR lgroup does not have any memory.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -100,5 +100,8 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBlgrp_init\fR(3LGRP), \fBlgrp_parents\fR(3LGRP), \fBlgrp_children\fR(3LGRP),
-\fBliblgrp\fR(3LIB), \fBattributes\fR(5)
+.BR lgrp_children (3LGRP),
+.BR lgrp_init (3LGRP),
+.BR lgrp_parents (3LGRP),
+.BR liblgrp (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3lgrp/lgrp_mem_size.3lgrp b/usr/src/man/man3lgrp/lgrp_mem_size.3lgrp
index 9846503323..d254ef1f47 100644
--- a/usr/src/man/man3lgrp/lgrp_mem_size.3lgrp
+++ b/usr/src/man/man3lgrp/lgrp_mem_size.3lgrp
@@ -86,7 +86,7 @@ The specified lgroup ID was not found.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -104,5 +104,8 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBlgrp_init\fR(3LGRP), \fBlgrp_cpus\fR(3LGRP), \fBlgrp_resources\fR(3LGRP),
-\fBliblgrp\fR(3LIB), \fBattributes\fR(5)
+.BR lgrp_cpus (3LGRP),
+.BR lgrp_init (3LGRP),
+.BR lgrp_resources (3LGRP),
+.BR liblgrp (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3lgrp/lgrp_nlgrps.3lgrp b/usr/src/man/man3lgrp/lgrp_nlgrps.3lgrp
index 4892b9b41f..63c409192c 100644
--- a/usr/src/man/man3lgrp/lgrp_nlgrps.3lgrp
+++ b/usr/src/man/man3lgrp/lgrp_nlgrps.3lgrp
@@ -43,7 +43,7 @@ The \fIcookie\fR is not valid.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -61,5 +61,8 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBlgrp_children\fR(3LGRP), \fBlgrp_init\fR(3LGRP), \fBlgrp_parents\fR(3LGRP),
-\fBliblgrp\fR(3LIB), \fBattributes\fR(5)
+.BR lgrp_children (3LGRP),
+.BR lgrp_init (3LGRP),
+.BR lgrp_parents (3LGRP),
+.BR liblgrp (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3lgrp/lgrp_parents.3lgrp b/usr/src/man/man3lgrp/lgrp_parents.3lgrp
index 1727b642d6..01e42af817 100644
--- a/usr/src/man/man3lgrp/lgrp_parents.3lgrp
+++ b/usr/src/man/man3lgrp/lgrp_parents.3lgrp
@@ -57,7 +57,7 @@ The specified lgroup ID was not found.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -75,5 +75,8 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBlgrp_children\fR(3LGRP), \fBlgrp_init\fR(3LGRP), \fBlgrp_nlgrps\fR(3LGRP),
-\fBliblgrp\fR(3LIB), \fBattributes\fR(5)
+.BR lgrp_children (3LGRP),
+.BR lgrp_init (3LGRP),
+.BR lgrp_nlgrps (3LGRP),
+.BR liblgrp (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3lgrp/lgrp_resources.3lgrp b/usr/src/man/man3lgrp/lgrp_resources.3lgrp
index d0307bdbc2..5572f05749 100644
--- a/usr/src/man/man3lgrp/lgrp_resources.3lgrp
+++ b/usr/src/man/man3lgrp/lgrp_resources.3lgrp
@@ -72,7 +72,7 @@ The specified lgroup ID was not found.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -90,5 +90,8 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBlgrp_children\fR(3LGRP), \fBlgrp_init\fR(3LGRP), \fBlgrp_parents\fR(3LGRP),
-\fBliblgrp\fR(3LIB), \fBattributes\fR(5)
+.BR lgrp_children (3LGRP),
+.BR lgrp_init (3LGRP),
+.BR lgrp_parents (3LGRP),
+.BR liblgrp (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3lgrp/lgrp_root.3lgrp b/usr/src/man/man3lgrp/lgrp_root.3lgrp
index d00cb596d7..3f33fa668f 100644
--- a/usr/src/man/man3lgrp/lgrp_root.3lgrp
+++ b/usr/src/man/man3lgrp/lgrp_root.3lgrp
@@ -40,7 +40,7 @@ The \fIcookie\fR is not valid.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -58,5 +58,9 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBlgrp_children\fR(3LGRP), \fBlgrp_init\fR(3LGRP), \fBlgrp_nlgrps\fR(3LGRP),
-\fBlgrp_parents\fR(3LGRP), \fBliblgrp\fR(3LIB), \fBattributes\fR(5)
+.BR lgrp_children (3LGRP),
+.BR lgrp_init (3LGRP),
+.BR lgrp_nlgrps (3LGRP),
+.BR lgrp_parents (3LGRP),
+.BR liblgrp (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3lgrp/lgrp_version.3lgrp b/usr/src/man/man3lgrp/lgrp_version.3lgrp
index c750fc982a..a43df691bb 100644
--- a/usr/src/man/man3lgrp/lgrp_version.3lgrp
+++ b/usr/src/man/man3lgrp/lgrp_version.3lgrp
@@ -59,7 +59,7 @@ if (lgrp_version(LGRP_VER_CURRENT) != LGRP_VER_CURRENT) {
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -77,4 +77,6 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBlgrp_init\fR(3LGRP), \fBliblgrp\fR(3LIB), \fBattributes\fR(5)
+.BR lgrp_init (3LGRP),
+.BR liblgrp (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3lgrp/lgrp_view.3lgrp b/usr/src/man/man3lgrp/lgrp_view.3lgrp
index 809c61e689..fb5a895d6b 100644
--- a/usr/src/man/man3lgrp/lgrp_view.3lgrp
+++ b/usr/src/man/man3lgrp/lgrp_view.3lgrp
@@ -45,7 +45,7 @@ The \fIcookie\fR is not valid.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -62,5 +62,8 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBlgrp_cookie_stale\fR(3LGRP), \fBlgrp_fini\fR(3LGRP), \fBlgrp_init\fR(3LGRP),
-\fBliblgrp\fR(3LIB), \fBattributes\fR(5)
+.BR lgrp_cookie_stale (3LGRP),
+.BR lgrp_fini (3LGRP),
+.BR lgrp_init (3LGRP),
+.BR liblgrp (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3lib/libMPAPI.3lib b/usr/src/man/man3lib/libMPAPI.3lib
index 2f834806e9..be5b2fad94 100644
--- a/usr/src/man/man3lib/libMPAPI.3lib
+++ b/usr/src/man/man3lib/libMPAPI.3lib
@@ -632,7 +632,7 @@ shared object
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -651,7 +651,9 @@ T}
.TE
.SH SEE ALSO
-\fBIntro\fR(3), \fBMP_RegisterPlugin\fR(3MPAPI), \fBattributes\fR(5)
+.BR Intro (3),
+.BR MP_RegisterPlugin (3MPAPI),
+.BR attributes (7)
.sp
.LP
\fIMultipath Management API Version 1.0\fR
diff --git a/usr/src/man/man3lib/libSMHBAAPI.3lib b/usr/src/man/man3lib/libSMHBAAPI.3lib
index 2e443ad770..c859c31b11 100644
--- a/usr/src/man/man3lib/libSMHBAAPI.3lib
+++ b/usr/src/man/man3lib/libSMHBAAPI.3lib
@@ -121,7 +121,7 @@ l l .
Client applications link with the Common Library (using -\fBlSMHBAAPI\fR) to
access the interfaces. The Common Library dynamically loads individual
Vendor-Specific Libraries (VSL) listed in \fB/etc/smhba.conf\fR and described
-on \fBsmhba.conf\fR(4).
+on \fBsmhba.conf\fR(5).
.sp
.LP
Using the \fBlibSMHBAAPI\fR involves the following steps:
@@ -416,7 +416,7 @@ Close open HBAs by calling \fBHBA_CloseAdapter()\fR.
Unload the library by calling \fBHBA_FreeLibrary()\fR.
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -436,4 +436,5 @@ T}
.TE
.SH SEE ALSO
-\fBsmhba.conf\fR(4), \fBattributes\fR(5)
+.BR smhba.conf (5),
+.BR attributes (7)
diff --git a/usr/src/man/man3lib/libadm.3lib b/usr/src/man/man3lib/libadm.3lib
index 63b05a8fb0..cc51f06047 100644
--- a/usr/src/man/man3lib/libadm.3lib
+++ b/usr/src/man/man3lib/libadm.3lib
@@ -59,7 +59,7 @@ shared object
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -75,5 +75,8 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBpvs\fR(1), \fBIntro\fR(3), \fBread_vtoc\fR(3EXT), \fBattributes\fR(5),
-\fBregexp\fR(5)
+.BR pvs (1),
+.BR Intro (3),
+.BR read_vtoc (3EXT),
+.BR attributes (7),
+.BR regexp (7)
diff --git a/usr/src/man/man3lib/libaio.3lib b/usr/src/man/man3lib/libaio.3lib
index 80e032f786..53b4abe06b 100644
--- a/usr/src/man/man3lib/libaio.3lib
+++ b/usr/src/man/man3lib/libaio.3lib
@@ -73,7 +73,7 @@ shared object
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -88,6 +88,13 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBpvs\fR(1), \fBIntro\fR(2), \fBIntro\fR(3), \fBaiocancel\fR(3C),
-\fBaioread\fR(3C), \fBaiowait\fR(3C), \fBaiowrite\fR(3C), \fBaio.h\fR(3HEAD),
-\fBlibc\fR(3LIB), \fBattributes\fR(5)
+.BR pvs (1),
+.BR Intro (2),
+.BR Intro (3),
+.BR aiocancel (3C),
+.BR aioread (3C),
+.BR aiowait (3C),
+.BR aiowrite (3C),
+.BR aio.h (3HEAD),
+.BR libc (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3lib/libbsdmalloc.3lib b/usr/src/man/man3lib/libbsdmalloc.3lib
index b0b7032e45..4b76f3521d 100644
--- a/usr/src/man/man3lib/libbsdmalloc.3lib
+++ b/usr/src/man/man3lib/libbsdmalloc.3lib
@@ -58,7 +58,7 @@ shared object
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -73,4 +73,5 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBpvs\fR(1), \fBIntro\fR(3), \fBbsdmalloc\fR(3MALLOC), \fBattributes\fR(5)
+\fBpvs\fR(1), \fBIntro\fR(3), \fBbsdmalloc\fR(3MALLOC),
+.BR attributes (7)
diff --git a/usr/src/man/man3lib/libbsm.3lib b/usr/src/man/man3lib/libbsm.3lib
index 45d9da0beb..05da9435b7 100644
--- a/usr/src/man/man3lib/libbsm.3lib
+++ b/usr/src/man/man3lib/libbsm.3lib
@@ -74,7 +74,7 @@ shared object
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -89,4 +89,6 @@ T}
.TE
.SH SEE ALSO
-\fBpvs\fR(1), \fBIntro\fR(3), \fBattributes\fR(5)
+.BR pvs (1),
+.BR Intro (3),
+.BR attributes (7)
diff --git a/usr/src/man/man3lib/libc.3lib b/usr/src/man/man3lib/libc.3lib
index 9bdf613acf..29f84349fd 100644
--- a/usr/src/man/man3lib/libc.3lib
+++ b/usr/src/man/man3lib/libc.3lib
@@ -12,7 +12,7 @@
libc \- C library
.SH DESCRIPTION
Functions in this library provide various facilities defined by System V, ANSI
-C, POSIX, and so on. See \fBstandards\fR(5). In addition, those facilities
+C, POSIX, and so on. See \fBstandards\fR(7). In addition, those facilities
previously defined in the internationalization and the wide-character libraries
are now defined in this library, as are the facilities previously defined in
the multithreading libraries, \fBlibthread\fR and \fBlibpthread\fR.
@@ -967,7 +967,7 @@ symbols
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -980,8 +980,12 @@ MT-Level Safe
.TE
.SH SEE ALSO
-\fBpvs\fR(1), \fBIntro\fR(2), \fBIntro\fR(3), \fBattributes\fR(5),
-\fBlf64\fR(5), \fBstandards\fR(5)
+.BR pvs (1),
+.BR Intro (2),
+.BR Intro (3),
+.BR attributes (7),
+.BR lf64 (7),
+.BR standards (7)
.SH NOTES
The synonyms compatibility library, \fBc_synonyms.so.1\fR, provides a mechanism
to support old applications and libraries that were mistakenly built using
diff --git a/usr/src/man/man3lib/libc_db.3lib b/usr/src/man/man3lib/libc_db.3lib
index 820d22329e..e9bd6b81a6 100644
--- a/usr/src/man/man3lib/libc_db.3lib
+++ b/usr/src/man/man3lib/libc_db.3lib
@@ -145,7 +145,7 @@ shared object
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -158,4 +158,5 @@ MT-Level Safe
.TE
.SH SEE ALSO
-\fBIntro\fR(3), \fBtd_ta_new\fR(3C_DB), \fBattributes\fR(5), \fBthreads\fR(5)
+\fBIntro\fR(3), \fBtd_ta_new\fR(3C_DB), \fBattributes\fR(7),
+.BR threads (7)
diff --git a/usr/src/man/man3lib/libcfgadm.3lib b/usr/src/man/man3lib/libcfgadm.3lib
index 42cb612b18..a377e3d8f3 100644
--- a/usr/src/man/man3lib/libcfgadm.3lib
+++ b/usr/src/man/man3lib/libcfgadm.3lib
@@ -50,7 +50,7 @@ shared object
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -63,5 +63,8 @@ MT-Level Mt-Safe
.TE
.SH SEE ALSO
-\fBpvs\fR(1), \fBcfgadm\fR(1M), \fBIntro\fR(3), \fBconfig_admin\fR(3CFGADM),
-\fBattributes\fR(5)
+.BR pvs (1),
+.BR Intro (3),
+.BR config_admin (3CFGADM),
+.BR attributes (7),
+.BR cfgadm (8)
diff --git a/usr/src/man/man3lib/libcommputil.3lib b/usr/src/man/man3lib/libcommputil.3lib
index 21e7d6d564..70fc4e7a8d 100644
--- a/usr/src/man/man3lib/libcommputil.3lib
+++ b/usr/src/man/man3lib/libcommputil.3lib
@@ -77,7 +77,7 @@ shared object.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -95,4 +95,5 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBIntro\fR(3), \fBattributes\fR(5)
+.BR Intro (3),
+.BR attributes (7)
diff --git a/usr/src/man/man3lib/libcontract.3lib b/usr/src/man/man3lib/libcontract.3lib
index 616d9f607d..1f8139c382 100644
--- a/usr/src/man/man3lib/libcontract.3lib
+++ b/usr/src/man/man3lib/libcontract.3lib
@@ -17,7 +17,7 @@ cc [ \fIflag\fR... ] `getconf LFS_CFLAGS` \fIfile\fR... \fB-lcontract\fR [ \fIli
.sp
.LP
Functions in this library provide various interfaces to interact with the
-\fBcontract\fR(4) file system. The header provides structure and function
+\fBcontract\fR(5) file system. The header provides structure and function
declarations for all library interfaces.
.SH INTERFACES
.sp
@@ -96,7 +96,7 @@ shared object
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -114,5 +114,8 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBpvs\fR(1), \fBIntro\fR(3), \fBcontract\fR(4), \fBattributes\fR(5),
-\fBlfcompile\fR(5)
+.BR pvs (1),
+.BR Intro (3),
+.BR contract (5),
+.BR attributes (7),
+.BR lfcompile (7)
diff --git a/usr/src/man/man3lib/libcpc.3lib b/usr/src/man/man3lib/libcpc.3lib
index d4438e0c8b..ffab72789f 100644
--- a/usr/src/man/man3lib/libcpc.3lib
+++ b/usr/src/man/man3lib/libcpc.3lib
@@ -83,7 +83,7 @@ shared object
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -97,9 +97,13 @@ MT-Level Safe
.SH SEE ALSO
.LP
-\fBcputrack\fR(1), \fBcpustat\fR(1M), \fBIntro\fR(3), \fBcpc\fR(3CPC),
-\fBattributes\fR(5), \fBxVM\fR(5)
+.BR cputrack (1),
+.BR Intro (3),
+.BR cpc (3CPC),
+.BR attributes (7),
+.BR xVM (7),
+.BR cpustat (8)
.SH NOTES
.LP
-There is no support for access to performance counters in the \fBxVM\fR(5)
+There is no support for access to performance counters in the \fBxVM\fR(7)
environment. The \fB-h\fR operations for \fBcputrack\fR(1) are not enabled.
diff --git a/usr/src/man/man3lib/libcrypt.3lib b/usr/src/man/man3lib/libcrypt.3lib
index e19d1ea048..ee61b428bb 100644
--- a/usr/src/man/man3lib/libcrypt.3lib
+++ b/usr/src/man/man3lib/libcrypt.3lib
@@ -52,7 +52,7 @@ shared object
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -68,5 +68,8 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcrypt\fR(1), \fBIntro\fR(3), \fBencrypt\fR(3C), \fBsetkey\fR(3C),
-\fBattributes\fR(5)
+.BR crypt (1),
+.BR Intro (3),
+.BR encrypt (3C),
+.BR setkey (3C),
+.BR attributes (7)
diff --git a/usr/src/man/man3lib/libcurses.3lib b/usr/src/man/man3lib/libcurses.3lib
index 0f3787d5b0..85417f3b03 100644
--- a/usr/src/man/man3lib/libcurses.3lib
+++ b/usr/src/man/man3lib/libcurses.3lib
@@ -302,7 +302,7 @@ shared object (symbolic link to \fB/lib/libcurses.so.1\fR)
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -316,5 +316,7 @@ MT-Level Unsafe
.SH SEE ALSO
.LP
-\fBIntro\fR(3), \fBcurses\fR(3CURSES),
-\fBlibcurses\fR(3XCURSES), \fBattributes\fR(5)
+.BR Intro (3),
+.BR curses (3CURSES),
+.BR libcurses (3XCURSES),
+.BR attributes (7)
diff --git a/usr/src/man/man3lib/libdat.3lib b/usr/src/man/man3lib/libdat.3lib
index a9a96126c4..c1658d9f69 100644
--- a/usr/src/man/man3lib/libdat.3lib
+++ b/usr/src/man/man3lib/libdat.3lib
@@ -19,7 +19,7 @@ cc [ \fIflag\fR... ] \fIfile\fR... \fB-ldat\fR [ \fIlibrary\fR... ]
The libdat library provides an application with the User Direct Access
Programming Library (uDAPL) 1.2 functions to access the underlying RDMA-able
interconnects. Different uDAPL service providers listed in the DAT static
-registry \fBdat.conf\fR(4) can be registered during runtime with the DAT
+registry \fBdat.conf\fR(5) can be registered during runtime with the DAT
library. After an application opens an interface adapter belonging to a
particular service provider, all function calls will be redirected to that
service provider's library.
@@ -118,7 +118,7 @@ shared object
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -136,7 +136,10 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBdatadm\fR(1M), \fBIntro\fR(3), \fBdat.conf\fR(4), \fBattributes\fR(5)
+.BR Intro (3),
+.BR dat.conf (5),
+.BR attributes (7),
+.BR datadm (8)
.SH NOTES
.sp
.LP
@@ -154,6 +157,6 @@ l l .
.sp
.LP
In terms of installation, the service provider package should include a
-\fBservice_provider.conf\fR(4) file. The \fBdatadm\fR(1M) administrative
+\fBservice_provider.conf\fR(5) file. The \fBdatadm\fR(8) administrative
configuration program should be used to add and remove service provider's
-entries in the system-wide \fBdat.conf\fR(4).
+entries in the system-wide \fBdat.conf\fR(5).
diff --git a/usr/src/man/man3lib/libdevid.3lib b/usr/src/man/man3lib/libdevid.3lib
index 11e2668176..5df2c481ac 100644
--- a/usr/src/man/man3lib/libdevid.3lib
+++ b/usr/src/man/man3lib/libdevid.3lib
@@ -60,7 +60,7 @@ shared object.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -78,4 +78,6 @@ MT-Level MT\(miSafe
.SH SEE ALSO
.sp
.LP
-\fBpvs\fR(1), \fBIntro\fR(3), \fBattributes\fR(5)
+.BR pvs (1),
+.BR Intro (3),
+.BR attributes (7)
diff --git a/usr/src/man/man3lib/libdevinfo.3lib b/usr/src/man/man3lib/libdevinfo.3lib
index 4035658b01..7844c58bb6 100644
--- a/usr/src/man/man3lib/libdevinfo.3lib
+++ b/usr/src/man/man3lib/libdevinfo.3lib
@@ -80,7 +80,7 @@ interfaces are called to get minor node data.
.LP
In some configurations, multipath device access via a virtual host controller
interface (vHCI) abstraction is possible. An example of a driver using this
-abstraction is \fBscsi_vhci\fR(7D). In such cases, devices are not directly
+abstraction is \fBscsi_vhci\fR(4D). In such cases, devices are not directly
represented as children of their physical host controller interface (pHCI) bus
adapter. Instead, devices have an identity-oriented representation as a child
of a vHCI. All paths leading to the same identity are represented by a common
@@ -276,7 +276,7 @@ shared object
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -293,16 +293,28 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBpvs\fR(1), \fBdevlinks\fR(1M), \fBprtconf\fR(1M), \fBIntro\fR(3),
-\fBdi_binding_name\fR(3DEVINFO), \fBdi_child_node\fR(3DEVINFO),
-\fBdi_devfs_path\fR(3DEVINFO), \fBdi_init\fR(3DEVINFO),
-\fBdi_minor_devt\fR(3DEVINFO), \fBdi_minor_next\fR(3DEVINFO),
-\fBdi_path_bus_addr\fR(3DEVINFO), \fBdi_path_client_next_path\fR(3DEVINFO),
-\fBdi_path_prop_bytes\fR(3DEVINFO), \fBdi_path_prop_lookup_bytes\fR(3DEVINFO),
-\fBdi_path_prop_next\fR(3DEVINFO), \fBdi_prom_init\fR(3DEVINFO),
-\fBdi_prop_bytes\fR(3DEVINFO), \fBdi_prop_lookup_bytes\fR(3DEVINFO),
-\fBdi_prop_next\fR(3DEVINFO), \fBdi_walk_minor\fR(3DEVINFO),
-\fBdi_walk_node\fR(3DEVINFO), \fBattributes\fR(5)
+.BR pvs (1),
+.BR Intro (3),
+.BR di_binding_name (3DEVINFO),
+.BR di_child_node (3DEVINFO),
+.BR di_devfs_path (3DEVINFO),
+.BR di_init (3DEVINFO),
+.BR di_minor_devt (3DEVINFO),
+.BR di_minor_next (3DEVINFO),
+.BR di_path_bus_addr (3DEVINFO),
+.BR di_path_client_next_path (3DEVINFO),
+.BR di_path_prop_bytes (3DEVINFO),
+.BR di_path_prop_lookup_bytes (3DEVINFO),
+.BR di_path_prop_next (3DEVINFO),
+.BR di_prom_init (3DEVINFO),
+.BR di_prop_bytes (3DEVINFO),
+.BR di_prop_lookup_bytes (3DEVINFO),
+.BR di_prop_next (3DEVINFO),
+.BR di_walk_minor (3DEVINFO),
+.BR di_walk_node (3DEVINFO),
+.BR attributes (7),
+.BR devlinks (8),
+.BR prtconf (8)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man3lib/libdl.3lib b/usr/src/man/man3lib/libdl.3lib
index 2525c6146c..b3c9d2860a 100644
--- a/usr/src/man/man3lib/libdl.3lib
+++ b/usr/src/man/man3lib/libdl.3lib
@@ -63,7 +63,7 @@ shared object
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -79,5 +79,8 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBld.so.1\fR(1), \fBpvs\fR(1), \fBIntro\fR(3), \fBlibc\fR(3LIB),
-\fBattributes\fR(5)
+.BR ld.so.1 (1),
+.BR pvs (1),
+.BR Intro (3),
+.BR libc (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3lib/libdlpi.3lib b/usr/src/man/man3lib/libdlpi.3lib
index 86dff01d9b..b0ba50729e 100644
--- a/usr/src/man/man3lib/libdlpi.3lib
+++ b/usr/src/man/man3lib/libdlpi.3lib
@@ -67,7 +67,7 @@ shared object
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -85,4 +85,5 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBIntro\fR(3), \fBattributes\fR(5)
+.BR Intro (3),
+.BR attributes (7)
diff --git a/usr/src/man/man3lib/libdns_sd.3lib b/usr/src/man/man3lib/libdns_sd.3lib
index 5b499b27e6..01d471523b 100644
--- a/usr/src/man/man3lib/libdns_sd.3lib
+++ b/usr/src/man/man3lib/libdns_sd.3lib
@@ -60,7 +60,7 @@ shared object
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -78,4 +78,5 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBIntro\fR(3), \fBattributes\fR(5)
+.BR Intro (3),
+.BR attributes (7)
diff --git a/usr/src/man/man3lib/libdoor.3lib b/usr/src/man/man3lib/libdoor.3lib
index a5552fee42..7156cdb0b5 100644
--- a/usr/src/man/man3lib/libdoor.3lib
+++ b/usr/src/man/man3lib/libdoor.3lib
@@ -68,7 +68,7 @@ shared object
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -82,7 +82,9 @@ MT-Level Safe
.SH SEE ALSO
.LP
-\fBIntro\fR(3), \fBlibc\fR(3LIB), \fBattributes\fR(5)
+.BR Intro (3),
+.BR libc (3LIB),
+.BR attributes (7)
.sp
.LP
Stevens, W. Richard. \fIUNIX Network Programming, Volume 2: Interprocess
diff --git a/usr/src/man/man3lib/libdtrace.3lib b/usr/src/man/man3lib/libdtrace.3lib
index 5d212a1313..b1c183c8f2 100644
--- a/usr/src/man/man3lib/libdtrace.3lib
+++ b/usr/src/man/man3lib/libdtrace.3lib
@@ -39,7 +39,7 @@ shared object
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -55,7 +55,9 @@ MT-Level Unsafe
.SH SEE ALSO
.LP
-\fBdtrace\fR(1M), \fBattributes\fR(5), \fBdtrace\fR(7D)
+.BR dtrace (4D),
+.BR attributes (7),
+.BR dtrace (8)
.sp
.LP
\fIDynamic Tracing Guide\fR:
diff --git a/usr/src/man/man3lib/libefi.3lib b/usr/src/man/man3lib/libefi.3lib
index a42e3c26a7..177b55d613 100644
--- a/usr/src/man/man3lib/libefi.3lib
+++ b/usr/src/man/man3lib/libefi.3lib
@@ -47,7 +47,7 @@ shared object
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -63,4 +63,6 @@ MT-Level Unsafe
.TE
.SH SEE ALSO
-\fBIntro\fR(3), \fBefi_alloc_and_init\fR(3EXT), \fBattributes\fR(5)
+.BR Intro (3),
+.BR efi_alloc_and_init (3EXT),
+.BR attributes (7)
diff --git a/usr/src/man/man3lib/libelf.3lib b/usr/src/man/man3lib/libelf.3lib
index fd2cbd15ef..a2eac6109b 100644
--- a/usr/src/man/man3lib/libelf.3lib
+++ b/usr/src/man/man3lib/libelf.3lib
@@ -98,7 +98,7 @@ shared object
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -114,5 +114,8 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBpvs\fR(1), \fBIntro\fR(3), \fBelf\fR(3ELF), \fBgelf\fR(3ELF),
-\fBattributes\fR(5)
+.BR pvs (1),
+.BR Intro (3),
+.BR elf (3ELF),
+.BR gelf (3ELF),
+.BR attributes (7)
diff --git a/usr/src/man/man3lib/libexacct.3lib b/usr/src/man/man3lib/libexacct.3lib
index 46cc1dfd58..40481c594b 100644
--- a/usr/src/man/man3lib/libexacct.3lib
+++ b/usr/src/man/man3lib/libexacct.3lib
@@ -67,7 +67,7 @@ shared object
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -84,9 +84,13 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBacctadm\fR(1M), \fBIntro\fR(3), \fBea_error\fR(3EXACCT),
-\fBea_open\fR(3EXACCT), \fBea_pack_object\fR(3EXACCT),
-\fBea_set_item\fR(3EXACCT), \fBattributes\fR(5)
+.BR Intro (3),
+.BR ea_error (3EXACCT),
+.BR ea_open (3EXACCT),
+.BR ea_pack_object (3EXACCT),
+.BR ea_set_item (3EXACCT),
+.BR attributes (7),
+.BR acctadm (8)
.SH NOTES
.LP
Distributions may provide source code for the \fBexdump\fR utility that
diff --git a/usr/src/man/man3lib/libfcoe.3lib b/usr/src/man/man3lib/libfcoe.3lib
index 8c263e5663..09f16b395c 100644
--- a/usr/src/man/man3lib/libfcoe.3lib
+++ b/usr/src/man/man3lib/libfcoe.3lib
@@ -49,7 +49,7 @@ shared object
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -64,5 +64,8 @@ MT-Level Safe
.TE
.SH SEE ALSO
-\fBIntro\fR(3), \fBFCOE_CreatePort\fR(3FCOE), \fBFCOE_DeletePort\fR(3FCOE),
-\fBFCOE_GetPortList\fR(3FCOE), \fBattributes\fR(5)
+.BR Intro (3),
+.BR FCOE_CreatePort (3FCOE),
+.BR FCOE_DeletePort (3FCOE),
+.BR FCOE_GetPortList (3FCOE),
+.BR attributes (7)
diff --git a/usr/src/man/man3lib/libform.3lib b/usr/src/man/man3lib/libform.3lib
index 801a3b1b7b..c9784eb97d 100644
--- a/usr/src/man/man3lib/libform.3lib
+++ b/usr/src/man/man3lib/libform.3lib
@@ -88,7 +88,7 @@ shared object
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -104,4 +104,6 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBIntro\fR(3), \fBlibcurses\fR(3LIB), \fBattributes\fR(5)
+.BR Intro (3),
+.BR libcurses (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3lib/libfstyp.3lib b/usr/src/man/man3lib/libfstyp.3lib
index 8b4ff542f4..93a4ea83d7 100644
--- a/usr/src/man/man3lib/libfstyp.3lib
+++ b/usr/src/man/man3lib/libfstyp.3lib
@@ -47,7 +47,7 @@ shared object
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -63,5 +63,7 @@ MT-Level MT-Safe
.TE
.SH SEE ALSO
-\fBIntro\fR(3), \fBfstyp_mod_init\fR(3FSTYP), \fBlibnvpair\fR(3LIB),
-\fBattributes\fR(5)
+.BR Intro (3),
+.BR fstyp_mod_init (3FSTYP),
+.BR libnvpair (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3lib/libgen.3lib b/usr/src/man/man3lib/libgen.3lib
index 734d9478bf..37f49fa134 100644
--- a/usr/src/man/man3lib/libgen.3lib
+++ b/usr/src/man/man3lib/libgen.3lib
@@ -77,7 +77,7 @@ shared object
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -93,4 +93,5 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBIntro\fR(3), \fBattributes\fR(5)
+.BR Intro (3),
+.BR attributes (7)
diff --git a/usr/src/man/man3lib/libgss.3lib b/usr/src/man/man3lib/libgss.3lib
index 829630bd6b..7e3730425c 100644
--- a/usr/src/man/man3lib/libgss.3lib
+++ b/usr/src/man/man3lib/libgss.3lib
@@ -95,7 +95,7 @@ shared object
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -111,8 +111,11 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBpvs\fR(1), \fBIntro\fR(2), \fBIntro\fR(3), \fBsyslog\fR(3C),
-\fBattributes\fR(5)
+.BR pvs (1),
+.BR Intro (2),
+.BR Intro (3),
+.BR syslog (3C),
+.BR attributes (7)
.sp
.LP
\fISolaris Security for Developers Guide\fR
diff --git a/usr/src/man/man3lib/libintl.3lib b/usr/src/man/man3lib/libintl.3lib
index 2630572ba8..2c9d41af5a 100644
--- a/usr/src/man/man3lib/libintl.3lib
+++ b/usr/src/man/man3lib/libintl.3lib
@@ -63,7 +63,7 @@ a filter on \fB/lib/64/libc.so.1\fR
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -79,5 +79,8 @@ MT-Level Safe with exceptions
.SH SEE ALSO
.sp
.LP
-\fBpvs\fR(1), \fBIntro\fR(3), \fBgettext\fR(3C), \fBlibc\fR(3LIB),
-\fBattributes\fR(5)
+.BR pvs (1),
+.BR Intro (3),
+.BR gettext (3C),
+.BR libc (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3lib/libiscsit.3lib b/usr/src/man/man3lib/libiscsit.3lib
index 0f162fc6c9..2f979e09b9 100644
--- a/usr/src/man/man3lib/libiscsit.3lib
+++ b/usr/src/man/man3lib/libiscsit.3lib
@@ -64,7 +64,7 @@ shared object
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -82,6 +82,10 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBIntro\fR(3), \fBit_config_load\fR(3ISCSIT), \fBit_ini_create\fR(3ISCSIT),
-\fBit_portal_create\fR(3ISCSIT), \fBit_tgt_create\fR(3ISCSIT),
-\fBit_tpg_create\fR(3ISCSIT), \fBattributes\fR(5)
+.BR Intro (3),
+.BR it_config_load (3ISCSIT),
+.BR it_ini_create (3ISCSIT),
+.BR it_portal_create (3ISCSIT),
+.BR it_tgt_create (3ISCSIT),
+.BR it_tpg_create (3ISCSIT),
+.BR attributes (7)
diff --git a/usr/src/man/man3lib/libkmf.3lib b/usr/src/man/man3lib/libkmf.3lib
index 2c69a23f07..2a9d0a6f2f 100644
--- a/usr/src/man/man3lib/libkmf.3lib
+++ b/usr/src/man/man3lib/libkmf.3lib
@@ -142,7 +142,7 @@ KMF structures and types.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -158,7 +158,9 @@ MT-Level Safe
.SH SEE ALSO
.LP
-\fBkmfcfg\fR(1), \fBpktool\fR(1), \fBattributes\fR(5)
+.BR kmfcfg (1),
+.BR pktool (1),
+.BR attributes (7)
.sp
.LP
\fISolaris Security for Developers Guide\fR
diff --git a/usr/src/man/man3lib/libkrb5.3lib b/usr/src/man/man3lib/libkrb5.3lib
index e5a68aa1f2..85e754410b 100644
--- a/usr/src/man/man3lib/libkrb5.3lib
+++ b/usr/src/man/man3lib/libkrb5.3lib
@@ -960,7 +960,7 @@ shared object
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -977,4 +977,6 @@ MT-Level Safe
.SH SEE ALSO
.LP
-\fBkrb5-config\fR(1), \fBlibgss\fR(3LIB), \fBattributes\fR(5)
+.BR krb5-config (1),
+.BR libgss (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3lib/libkstat.3lib b/usr/src/man/man3lib/libkstat.3lib
index b9bdedd077..a76e073585 100644
--- a/usr/src/man/man3lib/libkstat.3lib
+++ b/usr/src/man/man3lib/libkstat.3lib
@@ -58,7 +58,7 @@ shared object
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -76,4 +76,7 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBpvs\fR(1), \fBIntro\fR(3), \fBkstat\fR(3KSTAT), \fBattributes\fR(5)
+.BR pvs (1),
+.BR Intro (3),
+.BR kstat (3KSTAT),
+.BR attributes (7)
diff --git a/usr/src/man/man3lib/libkvm.3lib b/usr/src/man/man3lib/libkvm.3lib
index 729cd52d02..a3267ca014 100644
--- a/usr/src/man/man3lib/libkvm.3lib
+++ b/usr/src/man/man3lib/libkvm.3lib
@@ -62,7 +62,7 @@ shared object
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -82,4 +82,6 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBpvs\fR(1), \fBIntro\fR(3), \fBattributes\fR(5)
+.BR pvs (1),
+.BR Intro (3),
+.BR attributes (7)
diff --git a/usr/src/man/man3lib/libl.3lib b/usr/src/man/man3lib/libl.3lib
index 85473620a5..18b561c34f 100644
--- a/usr/src/man/man3lib/libl.3lib
+++ b/usr/src/man/man3lib/libl.3lib
@@ -50,7 +50,7 @@ shared object
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -64,4 +64,6 @@ MT-Level Unsafe
.TE
.SH SEE ALSO
-\fBlex\fR(1), \fBIntro\fR(3), \fBattributes\fR(5)
+.BR lex (1),
+.BR Intro (3),
+.BR attributes (7)
diff --git a/usr/src/man/man3lib/liblgrp.3lib b/usr/src/man/man3lib/liblgrp.3lib
index 02c7532224..57817f1df1 100644
--- a/usr/src/man/man3lib/liblgrp.3lib
+++ b/usr/src/man/man3lib/liblgrp.3lib
@@ -65,7 +65,7 @@ shared object
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -83,9 +83,19 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBIntro\fR(3), \fBlgrp_affinity_get\fR(3LGRP), \fBlgrp_children\fR(3LGRP),
-\fBlgrp_cookie_stale\fR(3LGRP), \fBlgrp_cpus\fR(3LGRP), \fBlgrp_fini\fR(3LGRP),
-\fBlgrp_home\fR(3LGRP), \fBlgrp_init\fR(3LGRP), \fBlgrp_latency\fR(3LGRP),
-\fBlgrp_mem_size\fR(3LGRP), \fBlgrp_nlgrps\fR(3LGRP),
-\fBlgrp_parents\fR(3LGRP), \fBlgrp_root\fR(3LGRP), \fBlgrp_version\fR(3LGRP),
-\fBlgrp_view\fR(3LGRP), \fBattributes\fR(5)
+.BR Intro (3),
+.BR lgrp_affinity_get (3LGRP),
+.BR lgrp_children (3LGRP),
+.BR lgrp_cookie_stale (3LGRP),
+.BR lgrp_cpus (3LGRP),
+.BR lgrp_fini (3LGRP),
+.BR lgrp_home (3LGRP),
+.BR lgrp_init (3LGRP),
+.BR lgrp_latency (3LGRP),
+.BR lgrp_mem_size (3LGRP),
+.BR lgrp_nlgrps (3LGRP),
+.BR lgrp_parents (3LGRP),
+.BR lgrp_root (3LGRP),
+.BR lgrp_version (3LGRP),
+.BR lgrp_view (3LGRP),
+.BR attributes (7)
diff --git a/usr/src/man/man3lib/libm.3lib b/usr/src/man/man3lib/libm.3lib
index 9cebc5b60f..2104d4754b 100644
--- a/usr/src/man/man3lib/libm.3lib
+++ b/usr/src/man/man3lib/libm.3lib
@@ -15,7 +15,7 @@ c99 [ \fIflag\fR... ] \fIfile\fR... \fB-lm\fR [ \fIlibrary\fR... ]
.SH DESCRIPTION
Functions in this library provide common elementary mathematical functions and
floating point environment routines defined by System V, ANSI C, POSIX, and so
-on. See \fBstandards\fR(5). Additional functions in this library provide
+on. See \fBstandards\fR(7). Additional functions in this library provide
extended support for handling floating point exceptions.
.SH INTERFACES
The shared object \fBlibm.so.2\fR provides the public interfaces defined below.
@@ -648,7 +648,7 @@ shared object
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -668,5 +668,8 @@ As described on the \fBlgamma\fR(3M) manual page, \fBgamma()\fR and
\fBlgamma()\fR and their \fBfloat\fR and \fBlong double\fR counterparts are
Unsafe. All other functions in \fBlibm.so.2\fR are MT-Safe.
.SH SEE ALSO
-\fBIntro\fR(3), \fBlgamma\fR(3M), \fBmath.h\fR(3HEAD), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR Intro (3),
+.BR math.h (3HEAD),
+.BR lgamma (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3lib/libmail.3lib b/usr/src/man/man3lib/libmail.3lib
index 58ca51f295..b859a2eb48 100644
--- a/usr/src/man/man3lib/libmail.3lib
+++ b/usr/src/man/man3lib/libmail.3lib
@@ -56,7 +56,7 @@ shared object
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -72,4 +72,6 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBIntro\fR(3), \fBmaillock\fR(3MAIL), \fBattributes\fR(5)
+.BR Intro (3),
+.BR maillock (3MAIL),
+.BR attributes (7)
diff --git a/usr/src/man/man3lib/libmalloc.3lib b/usr/src/man/man3lib/libmalloc.3lib
index 5535e00d58..afd68da15c 100644
--- a/usr/src/man/man3lib/libmalloc.3lib
+++ b/usr/src/man/man3lib/libmalloc.3lib
@@ -59,7 +59,7 @@ shared object
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -75,4 +75,6 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBIntro\fR(3), \fBmalloc\fR(3MALLOC), \fBattributes\fR(5)
+.BR Intro (3),
+.BR malloc (3MALLOC),
+.BR attributes (7)
diff --git a/usr/src/man/man3lib/libmapmalloc.3lib b/usr/src/man/man3lib/libmapmalloc.3lib
index dc32afb241..81feb3ab92 100644
--- a/usr/src/man/man3lib/libmapmalloc.3lib
+++ b/usr/src/man/man3lib/libmapmalloc.3lib
@@ -61,7 +61,7 @@ shared object
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -77,5 +77,11 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBpvs\fR(1), \fBmmap\fR(2), \fBsbrk\fR(2), \fBIntro\fR(3), \fBmalloc\fR(3C),
-\fBmalloc\fR(3MALLOC), \fBmapmalloc\fR(3MALLOC), \fBattributes\fR(5)
+.BR pvs (1),
+.BR mmap (2),
+.BR sbrk (2),
+.BR Intro (3),
+.BR malloc (3C),
+.BR malloc (3MALLOC),
+.BR mapmalloc (3MALLOC),
+.BR attributes (7)
diff --git a/usr/src/man/man3lib/libmd5.3lib b/usr/src/man/man3lib/libmd5.3lib
index 9d81ce1c91..1555febf9d 100644
--- a/usr/src/man/man3lib/libmd5.3lib
+++ b/usr/src/man/man3lib/libmd5.3lib
@@ -55,7 +55,7 @@ shared object
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -71,4 +71,5 @@ MT-Level MT\(miSafe
.SH SEE ALSO
.sp
.LP
-\fBIntro\fR(3), \fBattributes\fR(5)
+.BR Intro (3),
+.BR attributes (7)
diff --git a/usr/src/man/man3lib/libmenu.3lib b/usr/src/man/man3lib/libmenu.3lib
index 67850b9a08..40f7fe80d6 100644
--- a/usr/src/man/man3lib/libmenu.3lib
+++ b/usr/src/man/man3lib/libmenu.3lib
@@ -82,7 +82,7 @@ shared object
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -98,4 +98,6 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBIntro\fR(3), \fBlibcurses\fR(3LIB), \fBattributes\fR(5)
+.BR Intro (3),
+.BR libcurses (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3lib/libmp.3lib b/usr/src/man/man3lib/libmp.3lib
index 127ac66ae4..8abd1cbb25 100644
--- a/usr/src/man/man3lib/libmp.3lib
+++ b/usr/src/man/man3lib/libmp.3lib
@@ -70,7 +70,7 @@ shared object
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -86,4 +86,8 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBpvs\fR(1), \fBIntro\fR(3), \fBexp\fR(3M), \fBmp\fR(3MP), \fBattributes\fR(5)
+.BR pvs (1),
+.BR Intro (3),
+.BR exp (3M),
+.BR mp (3MP),
+.BR attributes (7)
diff --git a/usr/src/man/man3lib/libmtmalloc.3lib b/usr/src/man/man3lib/libmtmalloc.3lib
index 35dc270aa2..20f5ab5a14 100644
--- a/usr/src/man/man3lib/libmtmalloc.3lib
+++ b/usr/src/man/man3lib/libmtmalloc.3lib
@@ -58,7 +58,7 @@ shared object
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -74,6 +74,11 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBpvs\fR(1), \fBsbrk\fR(2), \fBIntro\fR(3), \fBmalloc\fR(3C),
-\fBmalloc\fR(3MALLOC), \fBmapmalloc\fR(3MALLOC), \fBmtmalloc\fR(3MALLOC),
-\fBattributes\fR(5)
+.BR pvs (1),
+.BR sbrk (2),
+.BR Intro (3),
+.BR malloc (3C),
+.BR malloc (3MALLOC),
+.BR mapmalloc (3MALLOC),
+.BR mtmalloc (3MALLOC),
+.BR attributes (7)
diff --git a/usr/src/man/man3lib/libmvec.3lib b/usr/src/man/man3lib/libmvec.3lib
index 917aefbd2f..75ac6049d2 100644
--- a/usr/src/man/man3lib/libmvec.3lib
+++ b/usr/src/man/man3lib/libmvec.3lib
@@ -73,7 +73,7 @@ shared object
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -88,4 +88,7 @@ MT-Level MT-Safe
.TE
.SH SEE ALSO
-\fBIntro\fR(3), \fBcomplex.h\fR(3HEAD), \fBlibm\fR(3LIB), \fBattributes\fR(5)
+.BR Intro (3),
+.BR complex.h (3HEAD),
+.BR libm (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3lib/libnls.3lib b/usr/src/man/man3lib/libnls.3lib
index 8c8915d0b1..50e0bec76d 100644
--- a/usr/src/man/man3lib/libnls.3lib
+++ b/usr/src/man/man3lib/libnls.3lib
@@ -17,7 +17,7 @@ cc [ \fIflag\fR... ] \fIfile\fR... \fB-lnls\fR [ \fIlibrary\fR... ]
.sp
.LP
The functions in this library interact with the network listener daemon,
-\fBlisten\fR(1M). The functions are provided for services invoked by the
+\fBlisten\fR(8). The functions are provided for services invoked by the
listener daemon and for clients that connect to the services using
\fBlisten\fR.
.SH INTERFACES
@@ -58,7 +58,7 @@ shared object
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -74,4 +74,6 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBlisten\fR(1M), \fBIntro\fR(3), \fBattributes\fR(5)
+.BR Intro (3),
+.BR attributes (7),
+.BR listen (8)
diff --git a/usr/src/man/man3lib/libnsl.3lib b/usr/src/man/man3lib/libnsl.3lib
index 226446caa2..d9504058fc 100644
--- a/usr/src/man/man3lib/libnsl.3lib
+++ b/usr/src/man/man3lib/libnsl.3lib
@@ -263,7 +263,7 @@ shared object
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -278,5 +278,8 @@ MT-Level Safe with exceptions
.SH SEE ALSO
.LP
-\fBpvs\fR(1), \fBIntro\fR(2), \fBIntro\fR(3), \fBlibxnet\fR(3LIB),
-\fBattributes\fR(5)
+.BR pvs (1),
+.BR Intro (2),
+.BR Intro (3),
+.BR libxnet (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3lib/libnvpair.3lib b/usr/src/man/man3lib/libnvpair.3lib
index 0279ba94a2..b7d23b1774 100644
--- a/usr/src/man/man3lib/libnvpair.3lib
+++ b/usr/src/man/man3lib/libnvpair.3lib
@@ -180,7 +180,7 @@ shared object
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -197,4 +197,5 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBIntro\fR(3), \fBattributes\fR(5)
+.BR Intro (3),
+.BR attributes (7)
diff --git a/usr/src/man/man3lib/libpam.3lib b/usr/src/man/man3lib/libpam.3lib
index 4de65a5f31..8b543b383f 100644
--- a/usr/src/man/man3lib/libpam.3lib
+++ b/usr/src/man/man3lib/libpam.3lib
@@ -95,7 +95,7 @@ sample \fBPAM\fR module
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -111,11 +111,20 @@ MT Level MT-Safe with exceptions
.SH SEE ALSO
.sp
.LP
-\fBpvs\fR(1), \fBIntro\fR(3), \fBpam\fR(3PAM), \fBpam.conf\fR(4),
-\fBattributes\fR(5), \fBpam_authtok_check\fR(5), \fBpam_authtok_get\fR(5),
-\fBpam_authtok_store\fR(5), \fBpam_dial_auth\fR(5), \fBpam_dhkeys\fR(5),
-\fBpam_passwd_auth\fR(5), \fBpam_rhosts_auth\fR(5), \fBpam_sample\fR(5),
-\fBpam_unix_account\fR(5), \fBpam_unix_auth\fR(5), \fBpam_unix_session\fR(5)
+\fBpvs\fR(1), \fBIntro\fR(3), \fBpam\fR(3PAM),
+.BR pam.conf (5),
+.BR attributes (7),
+.BR pam_authtok_check (7),
+.BR pam_authtok_get (7),
+.BR pam_authtok_store (7),
+.BR pam_dhkeys (7),
+.BR pam_dial_auth (7),
+.BR pam_passwd_auth (7),
+.BR pam_rhosts_auth (7),
+.BR pam_sample (7),
+.BR pam_unix_account (7),
+.BR pam_unix_auth (7),
+.BR pam_unix_session (7)
.SH NOTES
.sp
.LP
@@ -123,8 +132,8 @@ The functions in \fBlibpam\fR are MT-Safe only if each thread within the
multithreaded application uses its own \fBPAM\fR handle.
.sp
.LP
-The \fBpam_unix\fR(5) module is no longer supported. Similar functionality is
-provided by \fBpam_authtok_check\fR(5), \fBpam_authtok_get\fR(5),
-\fBpam_authtok_store\fR(5), \fBpam_dhkeys\fR(5), \fBpam_passwd_auth\fR(5),
-\fBpam_unix_account\fR(5), \fBpam_unix_auth\fR(5), and
-\fBpam_unix_session\fR(5).
+The \fBpam_unix\fR(7) module is no longer supported. Similar functionality is
+provided by \fBpam_authtok_check\fR(7), \fBpam_authtok_get\fR(7),
+\fBpam_authtok_store\fR(7), \fBpam_dhkeys\fR(7), \fBpam_passwd_auth\fR(7),
+\fBpam_unix_account\fR(7), \fBpam_unix_auth\fR(7), and
+\fBpam_unix_session\fR(7).
diff --git a/usr/src/man/man3lib/libpanel.3lib b/usr/src/man/man3lib/libpanel.3lib
index f7605ad1f2..53f5553b5a 100644
--- a/usr/src/man/man3lib/libpanel.3lib
+++ b/usr/src/man/man3lib/libpanel.3lib
@@ -60,7 +60,7 @@ shared object
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -76,4 +76,6 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBIntro\fR(3), \fBlibcurses\fR(3LIB), \fBattributes\fR(5)
+.BR Intro (3),
+.BR libcurses (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3lib/libpapi.3lib b/usr/src/man/man3lib/libpapi.3lib
index 582930a8e2..ba66b5cb5d 100644
--- a/usr/src/man/man3lib/libpapi.3lib
+++ b/usr/src/man/man3lib/libpapi.3lib
@@ -19,7 +19,7 @@ API (PAPI).
.sp
.LP
This particular implementation of the PAPI includes naming support as described
-in the \fBprinters.conf\fR(4) and \fBprinters\fR(4) manual pages. It also
+in the \fBprinters.conf\fR(5) and \fBprinters\fR(5) manual pages. It also
supplies support for interaction with local LP services, remote LPD services,
and remote IPP services through the use of loadable modules that export the
same interface. These modules should not be linked with directly, but can be
@@ -178,7 +178,7 @@ private HTTP support
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -194,4 +194,7 @@ MT-Level Safe
.TE
.SH SEE ALSO
-\fBIntro\fR(3), \fBprinters\fR(4), \fBprinters.conf\fR(4), \fBattributes\fR(5)
+.BR Intro (3),
+.BR printers (5),
+.BR printers.conf (5),
+.BR attributes (7)
diff --git a/usr/src/man/man3lib/libpctx.3lib b/usr/src/man/man3lib/libpctx.3lib
index 7a9b350820..3c315f7d2e 100644
--- a/usr/src/man/man3lib/libpctx.3lib
+++ b/usr/src/man/man3lib/libpctx.3lib
@@ -16,7 +16,7 @@ cc [ \fIflag\fR... ] \fIfile\fR... \fB-lpctx\fR [ \fIlibrary\fR... ]
.sp
.LP
Functions in this library provide a simple means to access the underlying
-facilities of \fBproc\fR(4) to allow a controlling process to manipulate the
+facilities of \fBproc\fR(5) to allow a controlling process to manipulate the
state of a controlled process.
.sp
.LP
@@ -63,7 +63,7 @@ shared object
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -79,5 +79,9 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBcputrack\fR(1), \fBIntro\fR(3), \fBcpc\fR(3CPC), \fBlibcpc\fR(3LIB),
-\fBproc\fR(4), \fBattributes\fR(5)
+.BR cputrack (1),
+.BR Intro (3),
+.BR cpc (3CPC),
+.BR libcpc (3LIB),
+.BR proc (5),
+.BR attributes (7)
diff --git a/usr/src/man/man3lib/libpicl.3lib b/usr/src/man/man3lib/libpicl.3lib
index 3e32a222f4..e0d7859966 100644
--- a/usr/src/man/man3lib/libpicl.3lib
+++ b/usr/src/man/man3lib/libpicl.3lib
@@ -64,7 +64,7 @@ shared object
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -82,4 +82,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBpvs\fR(1), \fBIntro\fR(3), \fBlibpicl\fR(3PICL), \fBattributes\fR(5)
+.BR pvs (1),
+.BR Intro (3),
+.BR libpicl (3PICL),
+.BR attributes (7)
diff --git a/usr/src/man/man3lib/libpicltree.3lib b/usr/src/man/man3lib/libpicltree.3lib
index 0b99d8a8c2..d9a37e8c29 100644
--- a/usr/src/man/man3lib/libpicltree.3lib
+++ b/usr/src/man/man3lib/libpicltree.3lib
@@ -61,7 +61,7 @@ shared object
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -79,4 +79,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBpvs\fR(1), \fBIntro\fR(3), \fBlibpicltree\fR(3PICLTREE), \fBattributes\fR(5)
+.BR pvs (1),
+.BR Intro (3),
+.BR libpicltree (3PICLTREE),
+.BR attributes (7)
diff --git a/usr/src/man/man3lib/libpkcs11.3lib b/usr/src/man/man3lib/libpkcs11.3lib
index ac77c1b3a4..88c9b472ce 100644
--- a/usr/src/man/man3lib/libpkcs11.3lib
+++ b/usr/src/man/man3lib/libpkcs11.3lib
@@ -35,7 +35,7 @@ When available, the meta slot is always the first slot provided by
The meta slot feature can be configured either system-wide or by individual
users.
System-wide configuration for meta slot features is done with the
-.Xr cryptoadm 1M
+.Xr cryptoadm 8
utility.
User configuration for meta slot features is performed with environment
variables.
@@ -44,7 +44,7 @@ By default, the following is the system-wide configuration for meta slot.
Meta slot is enabled.
Meta slot provides token-based object support with the Software RSA PKCS#11
softtoken
-.Pq Xr pkcs11_softtoken 5 .
+.Pq Xr pkcs11_softtoken 7 .
Meta slot is
allowed to move sensitive token objects to other slots if that is necessary to
perform an operation.
@@ -93,7 +93,7 @@ All of its functionality can be used with the meta slot.
.Lp
This library filters the list of mechanisms available from plug-ins based on
the policy set by
-.Xr cryptoadm 1M .
+.Xr cryptoadm 8 .
.Lp
This library provides entry points for all PKCS#11 v2.40 functions.
See the PKCS#11 v2.40 specifications at
@@ -105,9 +105,9 @@ by the
.Sy pkcs11conf
class action
script during execution of
-.Xr pkgadd 1M .
+.Xr pkgadd 8 .
The available mechanisms are administered by the
-.Xr cryptoadm 1M
+.Xr cryptoadm 8
utility.
.Lp
Plug-ins must have all of their library dependencies specified, including
@@ -199,7 +199,7 @@ shared object
.El
.Sh ATTRIBUTES
See
-.Xr attributes 5
+.Xr attributes 7
for descriptions of the following attributes:
.Sh INTERFACE STABILITY
.Sy Committed
@@ -209,14 +209,14 @@ The PKCS#11 Standard functions are MT-Safe with exceptions.
See Section 2.5.3 of PKCS#11 Cryptographic Token Usage Guide v2.40 and
Section 5.1.5 of PKCS#11 Cryptographic Token Interface Base Standard v2.40
.Sh SEE ALSO
-.Xr cryptoadm 1M ,
-.Xr pkgadd 1M ,
.Xr Intro 3 ,
.Xr syslog 3C ,
.Xr SUNW_C_GetMechSession 3EXT ,
-.Xr attributes 5 ,
-.Xr pkcs11_kernel 5 ,
-.Xr pkcs11_softtoken 5
+.Xr attributes 7 ,
+.Xr pkcs11_kernel 7 ,
+.Xr pkcs11_softtoken 7 ,
+.Xr cryptoadm 8 ,
+.Xr pkgadd 8
.Rs
.%T "PKCS#11 Cryptographic Token Interface Base Specification v2.40 Plus Errata 01"
.%U http://docs.oasis-open.org/pkcs11/pkcs11-base/v2.40/errata01/os/pkcs11-base-v2.40-errata01-os.html
diff --git a/usr/src/man/man3lib/libpool.3lib b/usr/src/man/man3lib/libpool.3lib
index 6ecffed270..1856d65cf3 100644
--- a/usr/src/man/man3lib/libpool.3lib
+++ b/usr/src/man/man3lib/libpool.3lib
@@ -25,8 +25,8 @@ common abstraction called a pool. Processor sets and other entities can be
configured, grouped, and labelled in a persistent fashion such that workload
components can be associated with a subset of a system's total resources. The
\fBlibpool\fR library provides a C language API for accessing this
-functionality, while \fBpooladm\fR(1M), \fBpoolbind\fR(1M), and
-\fBpoolcfg\fR(1M) make this facility available through command invocations from
+functionality, while \fBpooladm\fR(8), \fBpoolbind\fR(8), and
+\fBpoolcfg\fR(8) make this facility available through command invocations from
a shell. Each of those manual pages describes aspects of the pools facility;
this page describes the properties available to the various entities managed
within the pools facility. These entities include the system, pools, and the
@@ -132,7 +132,7 @@ avoid denying users access to the system.
.sp
.LP
The various \fBpoold\fR properties are used to configure the operation of
-\fBpoold\fR(1M).
+\fBpoold\fR(8).
.sp
.LP
The \fBsystem.poold.log-level\fR property is used to specify the level of
@@ -202,7 +202,7 @@ T}
Relative importance of this pool; for possible resource dispute resolution.
T}
\fBpool.name\fR \fBstring\fR T{
-User name for pool; used by \fBsetproject\fR(3PROJECT) as value for 'project.pool' project attribute in \fBproject\fR(4) database.
+User name for pool; used by \fBsetproject\fR(3PROJECT) as value for 'project.pool' project attribute in \fBproject\fR(5) database.
T}
\fBpool.scheduler\fR \fBstring\fR T{
Scheduler class to which consumers of this pool will be bound. This property is optional and if not specified, the scheduler bindings for consumers of this pool are not affected.
@@ -481,7 +481,7 @@ shared object
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -499,20 +499,28 @@ MT-Level Safe
.TE
.SH SEE ALSO
-\fBIntro\fR(3), \fBpool_component_info\fR(3POOL), \fBpool_conf_open\fR(3POOL),
-\fBpool_conf_to_elem\fR(3POOL), \fBpool_create\fR(3POOL),
-\fBpool_error\fR(3POOL), \fBpool_get_binding\fR(3POOL),
-\fBpool_get_property\fR(3POOL), \fBpool_get_resource\fR(3POOL),
-\fBpool_resource_create\fR(3POOL), \fBpool_value_alloc\fR(3POOL),
-\fBpool_walk_pools\fR(3POOL), \fBattributes\fR(5), \fBsmf\fR(5)
+.BR Intro (3),
+.BR pool_component_info (3POOL),
+.BR pool_conf_open (3POOL),
+.BR pool_conf_to_elem (3POOL),
+.BR pool_create (3POOL),
+.BR pool_error (3POOL),
+.BR pool_get_binding (3POOL),
+.BR pool_get_property (3POOL),
+.BR pool_get_resource (3POOL),
+.BR pool_resource_create (3POOL),
+.BR pool_value_alloc (3POOL),
+.BR pool_walk_pools (3POOL),
+.BR attributes (7),
+.BR smf (7)
.SH NOTES
Functions in \fBlibpool\fR can be used to manipulate static configurations even
-when the pools facility is not enabled. See \fBpooladm\fR(1M) and
+when the pools facility is not enabled. See \fBpooladm\fR(8) and
\fBpool_set_status\fR(3POOL) for more information about enabling the pools
facility. The pools facility must be enabled, however, to modify the dynamic
configuration.
.sp
.LP
-Since the Resource Pools facility is an \fBsmf\fR(5) service, it can also be
+Since the Resource Pools facility is an \fBsmf\fR(7) service, it can also be
enabled and disabled using the standard Service Management Facility (SMF)
interfaces.
diff --git a/usr/src/man/man3lib/libproc.3lib b/usr/src/man/man3lib/libproc.3lib
index 3ae126d1f7..803534bfda 100644
--- a/usr/src/man/man3lib/libproc.3lib
+++ b/usr/src/man/man3lib/libproc.3lib
@@ -29,7 +29,7 @@ library provides consumers a general series of interfaces to inspect
and control both live processes and core files.
It is intended for introspection tools such as debuggers by providing a
high-level interface to the /proc file system
-.Pf ( Xr proc 4 ) .
+.Pf ( Xr proc 5 ) .
.Pp
The
.Nm
@@ -71,7 +71,7 @@ Users with the privilege
.Brq Sy PRIV_PROC_OWNER
may manipulate processes that they do not own; however, additional
restrictions as described in
-.Xr privileges 5
+.Xr privileges 7
apply.
.Pp
In addition, the
@@ -86,7 +86,7 @@ The
library has the ability to open and interpret core files produced by
processes on the system.
Process core dump generation is controlled by the
-.Xr coreadm 1M
+.Xr coreadm 8
command.
In addition, the library has the ability to understand and interpret core dumps
generated by Linux kernel and can provide a subset of its functionality on such
@@ -116,7 +116,7 @@ sections.
Many of the operations in the library rely on debug information being
present in a process and its associated libraries.
The library leverages symbol table information, CTF data
-.Pq Xr ctf 4
+.Pq Xr ctf 5
sections, and frame unwinding information based on the use of an ABI
defined frame pointer, e\&.g\&.
.Sy %ebp
@@ -386,7 +386,7 @@ of privileges.
To resume control call
.Xr Preopen 3PROC .
For more information on losing control of a process, see
-.Xr proc 4 .
+.Xr proc 5 .
.It Dv PS_UNDEAD
A zombie process.
It has terminated, but it has not been cleaned up yet by its parent.
@@ -424,7 +424,7 @@ may have a read-only snapshot of their tracing settings available.
The
.Nm
library uses many types that come from the /proc file system
-.Pq Xr proc 4
+.Pq Xr proc 5
and the ELF format
.Pq Xr elf 3ELF .
However, it also defines the following types:
@@ -472,13 +472,13 @@ and
to describe and control the types of content that get included.
Various content types may be included together through a bitwise-inclusive-OR.
The default system core contents are controlled with the
-.Xr coreadm 1M
+.Xr coreadm 8
tool.
The following table lists the current set of core contents in the system, though
the set may increase over time.
The string after the macro is the human readable string that corresponds with
the constant and is used by
-.Xr coreadm 1M ,
+.Xr coreadm 8 ,
.Xr proc_content2str 3PROC ,
and
.Xr proc_str2content 3PROC .
@@ -520,7 +520,7 @@ The contents include ISM (intimate shared memory) mappings.
The contents include DISM (dynamic shared memory) mappings.
.It Dv CC_CONTENT_CTF ("ctf")
The contents include
-.Xr ctf 4
+.Xr ctf 5
(Compact C Type Format) information.
Note, not all objects in the process may have CTF information available.
.It Dv CC_CONTENT_SYMTAB ("symtab")
@@ -689,7 +689,7 @@ The
.Fa pr_misc
member contains miscellaneous additional data relating to the file descriptor.
The format of these data is described in
-.Xr proc 4 .
+.Xr proc 5 .
.Pp
.Vt prsyminfo_t
.Pp
@@ -759,7 +759,7 @@ It is defined as
.Fc .
The first argument is a pointer to an argument that the user specifies,
while the second has the thread's status information and is defined in
-.Xr proc 4 .
+.Xr proc 5 .
For additional information on using this type, see
.Xr Plwp_iter 3PROC .
.Pp
@@ -784,7 +784,7 @@ thread-specific
.Xr ps 1
information respectively.
Both structures are defined in
-.Xr proc 4 .
+.Xr proc 5 .
For additional information on using this type, see
.Xr Plwp_iter_all 3PROC .
.Pp
@@ -831,7 +831,7 @@ The first argument contains the file descriptor information.
The
.Sy prfdinfo_t
structure is defined in
-.Xr proc 4 .
+.Xr proc 5 .
The final argument is a pointer to an argument that the user specifies.
For more information on using this, see
.Xr proc_fdwalk 3PROC .
@@ -857,7 +857,7 @@ information and the second argument contains the representative thread's
.Xr ps 1
information.
Both structures are defined in
-.Xr proc 4 .
+.Xr proc 5 .
The final argument is a pointer to an argument that the user specifies.
For more information on using this, see
.Xr proc_walk 3PROC .
@@ -884,7 +884,7 @@ It is defined as
The first argument is a pointer to an argument that the user specifies.
The second argument is describes the mapping information and is defined
in
-.Xr proc 4 .
+.Xr proc 5 .
The final argument contains the name of the mapping or object file in
question.
For additional information on using this type, see
@@ -917,7 +917,7 @@ Values in the environment follow the convention of the form
For more information on environment variables see
.Xr exec 2
and
-.Xr environ 5 .
+.Xr environ 7 .
For additional information on using this type, see
.Xr Penv_iter 3PROC .
.Pp
@@ -1005,7 +1005,7 @@ frame pointer, will be filled in to point to an entry.
The
.Vt prgregset_t
is defined in
-.Xr proc 4 .
+.Xr proc 5 .
.Pp
The third argument contains the number of arguments to the current stack
frame and the fourth argument contains an array of addresses that
@@ -1052,7 +1052,7 @@ when they hold a process handle across an exec.
In addition, users of the library should familiarize themselves with the
.Sy PROGRAMMING NOTES
section of the
-.Xr proc 4
+.Xr proc 5
manual page, which discusses issues of privileges and security.
.Sh DEBUGGING
The library provides a means for obtaining additional debugging
@@ -1086,7 +1086,7 @@ section.
The MT-Level of a routine that matches the above description will refer to this
manual page.
If it does not, then it refers to the standard attributes in
-.Xr attributes 5 .
+.Xr attributes 7 .
.Sh INTERFACE STABILITY
.Sy Uncommitted
.Pp
@@ -1101,18 +1101,18 @@ changes may occur which break both source and binary compatibility.
.Xr mdb 1 ,
.Xr proc 1 ,
.Xr ps 1 ,
-.Xr coreadm 1M ,
.Xr exec 2 ,
.Xr fcntl 2 ,
.Xr stat 2 ,
.Xr Intro 3 ,
.Xr dlopen 3C ,
.Xr elf 3ELF ,
-.Xr ctf 4 ,
-.Xr proc 4 ,
-.Xr attributes 5 ,
-.Xr environ 5 ,
-.Xr privileges 5
+.Xr ctf 5 ,
+.Xr proc 5 ,
+.Xr attributes 7 ,
+.Xr environ 7 ,
+.Xr privileges 7 ,
+.Xr coreadm 8
.Pp
.Rs
.%T Linkers and Libraries Guide
diff --git a/usr/src/man/man3lib/libproject.3lib b/usr/src/man/man3lib/libproject.3lib
index 44c24d6591..362d3266bd 100644
--- a/usr/src/man/man3lib/libproject.3lib
+++ b/usr/src/man/man3lib/libproject.3lib
@@ -17,7 +17,7 @@ cc [ \fIflag\fR... ] \fIfile\fR... \fB-lproject\fR [ \fIlibrary\fR... ]
.sp
.LP
Functions in this library provide various interfaces to extract data from the
-\fBproject\fR(4) database. The header provides structure and function
+\fBproject\fR(5) database. The header provides structure and function
declarations for all library interfaces.
.SH INTERFACES
.sp
@@ -63,7 +63,7 @@ shared object
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -81,5 +81,9 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBpvs\fR(1), \fBIntro\fR(3), \fBgetprojent\fR(3PROJECT), \fBproject\fR(4),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR pvs (1),
+.BR Intro (3),
+.BR getprojent (3PROJECT),
+.BR project (5),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3lib/libpthread.3lib b/usr/src/man/man3lib/libpthread.3lib
index 9e65618e8d..ab730c735d 100644
--- a/usr/src/man/man3lib/libpthread.3lib
+++ b/usr/src/man/man3lib/libpthread.3lib
@@ -14,7 +14,7 @@ cc -mt [ \fIflag\fR... ] \fIfile\fR... \fB-lpthread\fR [ \fIlibrary\fR... ]
.SH DESCRIPTION
Historically, functions in this library provided POSIX threading support. See
-\fBstandards\fR(5). This functionality now resides in \fBlibc\fR(3LIB).
+\fBstandards\fR(7). This functionality now resides in \fBlibc\fR(3LIB).
.LP
This library is maintained to provide backward compatibility for both runtime
and compilation environments. The shared object is implemented as a filter on
@@ -93,7 +93,7 @@ a filter on \fB/lib/64/libc.so.1\fR
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -107,6 +107,12 @@ MT-Level Safe
.TE
.SH SEE ALSO
-\fBpvs\fR(1), \fBIntro\fR(2), \fBIntro\fR(3), \fBlibc\fR(3LIB),
-\fBlibc_db\fR(3LIB), \fBlibthread\fR(3LIB), \fBattributes\fR(5),
-\fBstandards\fR(5), \fBthreads\fR(5)
+.BR pvs (1),
+.BR Intro (2),
+.BR Intro (3),
+.BR libc (3LIB),
+.BR libc_db (3LIB),
+.BR libthread (3LIB),
+.BR attributes (7),
+.BR standards (7),
+.BR threads (7)
diff --git a/usr/src/man/man3lib/libresolv.3lib b/usr/src/man/man3lib/libresolv.3lib
index 70c83174bb..cfa1bb0ac4 100644
--- a/usr/src/man/man3lib/libresolv.3lib
+++ b/usr/src/man/man3lib/libresolv.3lib
@@ -106,7 +106,7 @@ shared object
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -122,4 +122,7 @@ MT-Level See \fBresolver\fR(3RESOLV)
.TE
.SH SEE ALSO
-\fBpvs\fR(1), \fBIntro\fR(3), \fBresolver\fR(3RESOLV), \fBattributes\fR(5)
+.BR pvs (1),
+.BR Intro (3),
+.BR resolver (3RESOLV),
+.BR attributes (7)
diff --git a/usr/src/man/man3lib/librpcsvc.3lib b/usr/src/man/man3lib/librpcsvc.3lib
index 161c7adf78..eff0a7422e 100644
--- a/usr/src/man/man3lib/librpcsvc.3lib
+++ b/usr/src/man/man3lib/librpcsvc.3lib
@@ -59,7 +59,7 @@ shared object
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -75,4 +75,7 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBpvs\fR(1), \fBIntro\fR(3), \fBrstat\fR(3RPC), \fBattributes\fR(5)
+.BR pvs (1),
+.BR Intro (3),
+.BR rstat (3RPC),
+.BR attributes (7)
diff --git a/usr/src/man/man3lib/librsm.3lib b/usr/src/man/man3lib/librsm.3lib
index 1c1089ee17..6e5be4923f 100644
--- a/usr/src/man/man3lib/librsm.3lib
+++ b/usr/src/man/man3lib/librsm.3lib
@@ -77,7 +77,7 @@ shared object
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -95,4 +95,6 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBIntro\fR(2), \fBIntro\fR(3), \fBattributes\fR(5)
+.BR Intro (2),
+.BR Intro (3),
+.BR attributes (7)
diff --git a/usr/src/man/man3lib/librt.3lib b/usr/src/man/man3lib/librt.3lib
index 20f4c0c91e..1142ee0dfe 100644
--- a/usr/src/man/man3lib/librt.3lib
+++ b/usr/src/man/man3lib/librt.3lib
@@ -16,7 +16,7 @@ cc [ \fIflag\fR... ] \fIfile\fR... \fB-lrt\fR [ \fIlibrary\fR... ]
.sp
.LP
Historically, functions in this library provided many of the interfaces
-specified by the POSIX.1b Realtime Extension. See \fBstandards\fR(5). This
+specified by the POSIX.1b Realtime Extension. See \fBstandards\fR(7). This
functionality now resides in \fBlibc\fR(3LIB).
.sp
.LP
@@ -122,7 +122,7 @@ shared object
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -138,5 +138,8 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBpvs\fR(1), \fBIntro\fR(3), \fBlibc\fR(3LIB), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR pvs (1),
+.BR Intro (3),
+.BR libc (3LIB),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3lib/librtld_db.3lib b/usr/src/man/man3lib/librtld_db.3lib
index f85ad06376..4fd652e74e 100644
--- a/usr/src/man/man3lib/librtld_db.3lib
+++ b/usr/src/man/man3lib/librtld_db.3lib
@@ -66,7 +66,7 @@ shared object
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -82,8 +82,13 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBld.so.1\fR(1), \fBpvs\fR(1), \fBIntro\fR(3), \fBproc_service\fR(3PROC),
-\fBps_pread\fR(3PROC), \fBrtld_db\fR(3EXT), \fBattributes\fR(5)
+.BR ld.so.1 (1),
+.BR pvs (1),
+.BR Intro (3),
+.BR rtld_db (3EXT),
+.BR proc_service (3PROC),
+.BR ps_pread (3PROC),
+.BR attributes (7)
.sp
.LP
\fILinker and Libraries Guide\fR
diff --git a/usr/src/man/man3lib/libsasl.3lib b/usr/src/man/man3lib/libsasl.3lib
index 0f15e90761..0e07d36ec9 100644
--- a/usr/src/man/man3lib/libsasl.3lib
+++ b/usr/src/man/man3lib/libsasl.3lib
@@ -98,7 +98,7 @@ shared object
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -114,4 +114,4 @@ Interface Stability Evolving
.SH SEE ALSO
.sp
.LP
-\fBIntro\fR(3), \fBattributes\fR(5),
+\fBIntro\fR(3), \fBattributes\fR(7),
diff --git a/usr/src/man/man3lib/libscf.3lib b/usr/src/man/man3lib/libscf.3lib
index 54213878a2..c22079d366 100644
--- a/usr/src/man/man3lib/libscf.3lib
+++ b/usr/src/man/man3lib/libscf.3lib
@@ -159,7 +159,7 @@ shared object
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -175,4 +175,6 @@ MT-Level Safe
.TE
.SH SEE ALSO
-\fBIntro\fR(3), \fBattributes\fR(5), \fBsmf\fR(5)
+.BR Intro (3),
+.BR attributes (7),
+.BR smf (7)
diff --git a/usr/src/man/man3lib/libsctp.3lib b/usr/src/man/man3lib/libsctp.3lib
index dc700a9def..3c1ce124ff 100644
--- a/usr/src/man/man3lib/libsctp.3lib
+++ b/usr/src/man/man3lib/libsctp.3lib
@@ -57,7 +57,7 @@ shared object
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -75,4 +75,7 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBIntro\fR(2), \fBIntro\fR(3), \fBattributes\fR(5), \fBsctp\fR(7P)
+.BR Intro (2),
+.BR Intro (3),
+.BR sctp (4P),
+.BR attributes (7)
diff --git a/usr/src/man/man3lib/libsec.3lib b/usr/src/man/man3lib/libsec.3lib
index 69bed0e207..646bb2d1b0 100644
--- a/usr/src/man/man3lib/libsec.3lib
+++ b/usr/src/man/man3lib/libsec.3lib
@@ -62,7 +62,7 @@ shared object
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -78,4 +78,6 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBpvs\fR(1), \fBIntro\fR(3), \fBattributes\fR(5)
+.BR pvs (1),
+.BR Intro (3),
+.BR attributes (7)
diff --git a/usr/src/man/man3lib/libsecdb.3lib b/usr/src/man/man3lib/libsecdb.3lib
index 01d2851223..b55faa0a26 100644
--- a/usr/src/man/man3lib/libsecdb.3lib
+++ b/usr/src/man/man3lib/libsecdb.3lib
@@ -72,7 +72,7 @@ shared object
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -88,4 +88,5 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBIntro\fR(3), \fBattributes\fR(5)
+.BR Intro (3),
+.BR attributes (7)
diff --git a/usr/src/man/man3lib/libsendfile.3lib b/usr/src/man/man3lib/libsendfile.3lib
index c4a05581a7..79f899c487 100644
--- a/usr/src/man/man3lib/libsendfile.3lib
+++ b/usr/src/man/man3lib/libsendfile.3lib
@@ -66,7 +66,7 @@ shared object
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -84,5 +84,8 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBpvs\fR(1), \fBIntro\fR(3), \fBsendfile\fR(3EXT), \fBsendfilev\fR(3EXT),
-\fBattributes\fR(5)
+.BR pvs (1),
+.BR Intro (3),
+.BR sendfile (3EXT),
+.BR sendfilev (3EXT),
+.BR attributes (7)
diff --git a/usr/src/man/man3lib/libsip.3lib b/usr/src/man/man3lib/libsip.3lib
index 1845a341b8..e679ef6a4c 100644
--- a/usr/src/man/man3lib/libsip.3lib
+++ b/usr/src/man/man3lib/libsip.3lib
@@ -178,7 +178,7 @@ shared object
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -196,4 +196,5 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBIntro\fR(3), \fBattributes\fR(5)
+.BR Intro (3),
+.BR attributes (7)
diff --git a/usr/src/man/man3lib/libslp.3lib b/usr/src/man/man3lib/libslp.3lib
index 827e39a84d..a160d1ea3e 100644
--- a/usr/src/man/man3lib/libslp.3lib
+++ b/usr/src/man/man3lib/libslp.3lib
@@ -62,4 +62,7 @@ shared object
.SH SEE ALSO
.sp
.LP
-\fBpvs\fR(1), \fBIntro\fR(2), \fBIntro\fR(3), \fBattributes\fR(5)
+.BR pvs (1),
+.BR Intro (2),
+.BR Intro (3),
+.BR attributes (7)
diff --git a/usr/src/man/man3lib/libsocket.3lib b/usr/src/man/man3lib/libsocket.3lib
index 7d22c95840..3b16879871 100644
--- a/usr/src/man/man3lib/libsocket.3lib
+++ b/usr/src/man/man3lib/libsocket.3lib
@@ -87,7 +87,7 @@ shared object
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -102,5 +102,8 @@ MT-Level See the manual page for each interface.
.SH SEE ALSO
.LP
-\fBpvs\fR(1), \fBIntro\fR(2), \fBIntro\fR(3), \fBsocket.h\fR(3HEAD),
-\fBattributes\fR(5)
+.BR pvs (1),
+.BR Intro (2),
+.BR Intro (3),
+.BR socket.h (3HEAD),
+.BR attributes (7)
diff --git a/usr/src/man/man3lib/libstmf.3lib b/usr/src/man/man3lib/libstmf.3lib
index 049446b613..168925800c 100644
--- a/usr/src/man/man3lib/libstmf.3lib
+++ b/usr/src/man/man3lib/libstmf.3lib
@@ -180,7 +180,7 @@ shared object
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -198,4 +198,6 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBIntro\fR(3), \fBstmfAddViewEntry\fR(3STMF), \fBattributes\fR(5)
+.BR Intro (3),
+.BR stmfAddViewEntry (3STMF),
+.BR attributes (7)
diff --git a/usr/src/man/man3lib/libsysevent.3lib b/usr/src/man/man3lib/libsysevent.3lib
index 4a932e5a62..8bd221b8e5 100644
--- a/usr/src/man/man3lib/libsysevent.3lib
+++ b/usr/src/man/man3lib/libsysevent.3lib
@@ -19,7 +19,7 @@ cc [ \fIflag\fR... ] \fIfile\fR... \fB-lsysevent\fR [ \fIlibrary\fR... ]
Functions in this library extract specific identifier, publisher, and attribute
information from a system event (sysevent) handle, defined as \fBsysevent_t\fR,
and allow privileged user-level applications to queue system events for
-delivery to the system event daemon, \fBsyseventd\fR(1M).
+delivery to the system event daemon, \fBsyseventd\fR(8).
.sp
.LP
The \fBlibsysevent\fR interfaces do not work at all in non-global zones.
@@ -71,7 +71,7 @@ shared object
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -88,4 +88,6 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBsyseventd\fR(1M), \fBIntro\fR(3), \fBattributes\fR(5)
+.BR Intro (3),
+.BR attributes (7),
+.BR syseventd (8)
diff --git a/usr/src/man/man3lib/libtecla.3lib b/usr/src/man/man3lib/libtecla.3lib
index 682838e3e7..4bfc6ac23e 100644
--- a/usr/src/man/man3lib/libtecla.3lib
+++ b/usr/src/man/man3lib/libtecla.3lib
@@ -128,7 +128,7 @@ shared object
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -145,7 +145,12 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBenhance\fR(1), \fBIntro\fR(3), \fBcpl_complete_word\fR(3TECLA),
-\fBef_expand_file\fR(3TECLA), \fBgl_get_line\fR(3TECLA),
-\fBgl_io_mode\fR(3TECLA), \fBpca_lookup_file\fR(3TECLA), \fBattributes\fR(5),
-\fBtecla\fR(5)
+.BR enhance (1),
+.BR Intro (3),
+.BR cpl_complete_word (3TECLA),
+.BR ef_expand_file (3TECLA),
+.BR gl_get_line (3TECLA),
+.BR gl_io_mode (3TECLA),
+.BR pca_lookup_file (3TECLA),
+.BR attributes (7),
+.BR tecla (7)
diff --git a/usr/src/man/man3lib/libthread.3lib b/usr/src/man/man3lib/libthread.3lib
index 593fa7440d..3192127263 100644
--- a/usr/src/man/man3lib/libthread.3lib
+++ b/usr/src/man/man3lib/libthread.3lib
@@ -80,7 +80,7 @@ a filter on \fB64/libc.so.1\fR
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -96,6 +96,11 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBpvs\fR(1), \fBIntro\fR(2), \fBIntro\fR(3), \fBlibc\fR(3LIB),
-\fBlibc_db\fR(3LIB), \fBlibpthread\fR(3LIB), \fBattributes\fR(5),
-\fBthreads\fR(5)
+.BR pvs (1),
+.BR Intro (2),
+.BR Intro (3),
+.BR libc (3LIB),
+.BR libc_db (3LIB),
+.BR libpthread (3LIB),
+.BR attributes (7),
+.BR threads (7)
diff --git a/usr/src/man/man3lib/libtnfctl.3lib b/usr/src/man/man3lib/libtnfctl.3lib
index 3dcfb00f09..47531a168b 100644
--- a/usr/src/man/man3lib/libtnfctl.3lib
+++ b/usr/src/man/man3lib/libtnfctl.3lib
@@ -68,7 +68,7 @@ shared object
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -84,8 +84,11 @@ MT-Level MT-Safe with exceptions
.SH SEE ALSO
.sp
.LP
-\fBpvs\fR(1), \fBIntro\fR(3), \fBlibtnfctl\fR(3TNF), \fBtracing\fR(3TNF),
-\fBattributes\fR(5)
+.BR pvs (1),
+.BR Intro (3),
+.BR libtnfctl (3TNF),
+.BR tracing (3TNF),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3lib/libtsalarm.3lib b/usr/src/man/man3lib/libtsalarm.3lib
index de3eea1e4b..52ae8a0069 100644
--- a/usr/src/man/man3lib/libtsalarm.3lib
+++ b/usr/src/man/man3lib/libtsalarm.3lib
@@ -46,7 +46,7 @@ shared object
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -64,4 +64,5 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBtsalarm_get\fR(3EXT), \fBattributes\fR(5)
+.BR tsalarm_get (3EXT),
+.BR attributes (7)
diff --git a/usr/src/man/man3lib/libtsnet.3lib b/usr/src/man/man3lib/libtsnet.3lib
index 5d653fbb2f..96933c1a72 100644
--- a/usr/src/man/man3lib/libtsnet.3lib
+++ b/usr/src/man/man3lib/libtsnet.3lib
@@ -49,7 +49,7 @@ shared object
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -64,4 +64,6 @@ MT-Level Safe
.TE
.SH SEE ALSO
-\fBIntro\fR(3), \fBlibtsol\fR(3LIB), \fBattributes\fR(5)
+.BR Intro (3),
+.BR libtsol (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3lib/libtsol.3lib b/usr/src/man/man3lib/libtsol.3lib
index 072b52d2ae..e55c78781d 100644
--- a/usr/src/man/man3lib/libtsol.3lib
+++ b/usr/src/man/man3lib/libtsol.3lib
@@ -84,7 +84,7 @@ shared object
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -102,7 +102,9 @@ MT-Level Safe
.TE
.SH SEE ALSO
-\fBIntro\fR(3), \fBlibtsnet\fR(3LIB), \fBattributes\fR(5)
+.BR Intro (3),
+.BR libtsnet (3LIB),
+.BR attributes (7)
.SH NOTES
The functionality described on this manual page is available only if the system
has been configured with Trusted Extensions.
diff --git a/usr/src/man/man3lib/libumem.3lib b/usr/src/man/man3lib/libumem.3lib
index a4cbd6ebbf..12ec99af85 100644
--- a/usr/src/man/man3lib/libumem.3lib
+++ b/usr/src/man/man3lib/libumem.3lib
@@ -63,7 +63,7 @@ shared object
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -79,6 +79,10 @@ MT-Level MT-Safe
.TE
.SH SEE ALSO
-\fBIntro\fR(3), \fBmalloc\fR(3C), \fBumem_alloc\fR(3MALLOC),
-\fBumem_cache_create\fR(3MALLOC), \fBumem_debug\fR(3MALLOC),
-\fBumem_setmtbf\fR(3MALLOC), \fBattributes\fR(5)
+.BR Intro (3),
+.BR malloc (3C),
+.BR umem_alloc (3MALLOC),
+.BR umem_cache_create (3MALLOC),
+.BR umem_debug (3MALLOC),
+.BR umem_setmtbf (3MALLOC),
+.BR attributes (7)
diff --git a/usr/src/man/man3lib/libuuid.3lib b/usr/src/man/man3lib/libuuid.3lib
index 5026ba39f6..f68dc2d205 100644
--- a/usr/src/man/man3lib/libuuid.3lib
+++ b/usr/src/man/man3lib/libuuid.3lib
@@ -59,7 +59,7 @@ shared object
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -77,4 +77,6 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBIntro\fR(3), \fBuuid_clear\fR(3UUID), \fBattributes\fR(5)
+.BR Intro (3),
+.BR uuid_clear (3UUID),
+.BR attributes (7)
diff --git a/usr/src/man/man3lib/libvolmgt.3lib b/usr/src/man/man3lib/libvolmgt.3lib
index 230baa9ce5..1c3d18532b 100644
--- a/usr/src/man/man3lib/libvolmgt.3lib
+++ b/usr/src/man/man3lib/libvolmgt.3lib
@@ -60,7 +60,7 @@ shared object
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -76,8 +76,10 @@ MT-Level Safe with exceptions
.SH SEE ALSO
.sp
.LP
-\fBpvs\fR(1), \fBIntro\fR(3), \fBmedia_findname\fR(3VOLMGT),
-\fBattributes\fR(5)
+.BR pvs (1),
+.BR Intro (3),
+.BR media_findname (3VOLMGT),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3lib/libw.3lib b/usr/src/man/man3lib/libw.3lib
index 3385f889fa..90800fecf2 100644
--- a/usr/src/man/man3lib/libw.3lib
+++ b/usr/src/man/man3lib/libw.3lib
@@ -85,7 +85,7 @@ a filter on \fB64/libc.so.1\fR
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -101,4 +101,7 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBpvs\fR(1), \fBIntro\fR(3), \fBlibc\fR(3LIB), \fBattributes\fR(5)
+.BR pvs (1),
+.BR Intro (3),
+.BR libc (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3lib/libxnet.3lib b/usr/src/man/man3lib/libxnet.3lib
index 513a88126d..41a1ad4fc6 100644
--- a/usr/src/man/man3lib/libxnet.3lib
+++ b/usr/src/man/man3lib/libxnet.3lib
@@ -108,7 +108,7 @@ shared object
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -126,4 +126,6 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBIntro\fR(3), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR Intro (3),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3lib/liby.3lib b/usr/src/man/man3lib/liby.3lib
index 990f043baf..4688d2b0ee 100644
--- a/usr/src/man/man3lib/liby.3lib
+++ b/usr/src/man/man3lib/liby.3lib
@@ -52,7 +52,7 @@ shared object
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -68,4 +68,6 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fByacc\fR(1), \fBIntro\fR(3), \fBattributes\fR(5)
+.BR yacc (1),
+.BR Intro (3),
+.BR attributes (7)
diff --git a/usr/src/man/man3m/acos.3m b/usr/src/man/man3m/acos.3m
index 3f21a13180..9c90466ee7 100644
--- a/usr/src/man/man3m/acos.3m
+++ b/usr/src/man/man3m/acos.3m
@@ -135,7 +135,7 @@ and \fBacosl()\fR functions do not set \fBerrno\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -154,6 +154,11 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBcos\fR(3M), \fBfeclearexcept\fR(3M), \fBfetestexcept\fR(3M),
-\fBisnan\fR(3M), \fBmath.h\fR(3HEAD), \fBmatherr\fR(3M), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR math.h (3HEAD),
+.BR cos (3M),
+.BR feclearexcept (3M),
+.BR fetestexcept (3M),
+.BR isnan (3M),
+.BR matherr (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/acosh.3m b/usr/src/man/man3m/acosh.3m
index 0b8cad30eb..3cfef2d0f0 100644
--- a/usr/src/man/man3m/acosh.3m
+++ b/usr/src/man/man3m/acosh.3m
@@ -123,7 +123,7 @@ and \fBacoshl()\fR functions do not set \fBerrno\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -142,5 +142,10 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBcosh\fR(3M), \fBfeclearexcept\fR(3M), \fBfetestexcept\fR(3M),
-\fBmath.h\fR(3HEAD), \fBmatherr\fR(3M), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR math.h (3HEAD),
+.BR cosh (3M),
+.BR feclearexcept (3M),
+.BR fetestexcept (3M),
+.BR matherr (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/asin.3m b/usr/src/man/man3m/asin.3m
index 0cdf6b3862..459f46ac7e 100644
--- a/usr/src/man/man3m/asin.3m
+++ b/usr/src/man/man3m/asin.3m
@@ -139,7 +139,7 @@ and \fBasinl()\fR functions do not set \fBerrno\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -158,6 +158,11 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBisnan\fR(3M), \fBfeclearexcept\fR(3M), \fBfetestexcept\fR(3M),
-\fBmath.h\fR(3HEAD), \fBmatherr\fR(3M), \fBsin\fR(3M), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR math.h (3HEAD),
+.BR feclearexcept (3M),
+.BR fetestexcept (3M),
+.BR isnan (3M),
+.BR matherr (3M),
+.BR sin (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/asinh.3m b/usr/src/man/man3m/asinh.3m
index 95f7d699fb..0294f8ef97 100644
--- a/usr/src/man/man3m/asinh.3m
+++ b/usr/src/man/man3m/asinh.3m
@@ -87,7 +87,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -106,4 +106,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBmath.h\fR(3HEAD), \fBsinh\fR(3M), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR math.h (3HEAD),
+.BR sinh (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/atan.3m b/usr/src/man/man3m/atan.3m
index 924e80728e..a1f3ceb48a 100644
--- a/usr/src/man/man3m/atan.3m
+++ b/usr/src/man/man3m/atan.3m
@@ -103,7 +103,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -122,5 +122,9 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBatan2\fR(3M), \fBisnan\fR(3M), \fBmath.h\fR(3HEAD), \fBtan\fR(3M),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR math.h (3HEAD),
+.BR atan2 (3M),
+.BR isnan (3M),
+.BR tan (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/atan2.3m b/usr/src/man/man3m/atan2.3m
index 00ceccccbc..b380d5c320 100644
--- a/usr/src/man/man3m/atan2.3m
+++ b/usr/src/man/man3m/atan2.3m
@@ -166,7 +166,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -185,5 +185,9 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBatan\fR(3M), \fBisnan\fR(3M), \fBmath.h\fR(3HEAD), \fBtan\fR(3M),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR math.h (3HEAD),
+.BR atan (3M),
+.BR isnan (3M),
+.BR tan (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/atanh.3m b/usr/src/man/man3m/atanh.3m
index 6f87669648..fba733f5ee 100644
--- a/usr/src/man/man3m/atanh.3m
+++ b/usr/src/man/man3m/atanh.3m
@@ -153,7 +153,7 @@ and \fBatanhl()\fR functions do not set \fBerrno\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -172,5 +172,10 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBfeclearexcept\fR(3M), \fBfetestexcept\fR(3M), \fBmath.h\fR(3HEAD),
-\fBmatherr\fR(3M), \fBtanh\fR(3M), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR math.h (3HEAD),
+.BR feclearexcept (3M),
+.BR fetestexcept (3M),
+.BR matherr (3M),
+.BR tanh (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/cabs.3m b/usr/src/man/man3m/cabs.3m
index dfdf322f9c..66fd97581b 100644
--- a/usr/src/man/man3m/cabs.3m
+++ b/usr/src/man/man3m/cabs.3m
@@ -81,7 +81,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -100,4 +100,6 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBcomplex.h\fR(3HEAD), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR complex.h (3HEAD),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/cacos.3m b/usr/src/man/man3m/cacos.3m
index 5644a2b10f..265f4cfca6 100644
--- a/usr/src/man/man3m/cacos.3m
+++ b/usr/src/man/man3m/cacos.3m
@@ -86,7 +86,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -105,4 +105,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBccos\fR(3M), \fBcomplex.h\fR(3HEAD), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR complex.h (3HEAD),
+.BR ccos (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/cacosh.3m b/usr/src/man/man3m/cacosh.3m
index a38f50f074..fdae6b09dc 100644
--- a/usr/src/man/man3m/cacosh.3m
+++ b/usr/src/man/man3m/cacosh.3m
@@ -91,7 +91,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -110,5 +110,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBccosh\fR(3M), \fBcomplex.h\fR(3HEAD), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR complex.h (3HEAD),
+.BR ccosh (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/carg.3m b/usr/src/man/man3m/carg.3m
index e34b27b737..6d0179516d 100644
--- a/usr/src/man/man3m/carg.3m
+++ b/usr/src/man/man3m/carg.3m
@@ -89,7 +89,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -108,5 +108,9 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBcimag\fR(3M), \fBcomplex.h\fR(3HEAD), \fBconj\fR(3M), \fBcproj\fR(3M),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR complex.h (3HEAD),
+.BR cimag (3M),
+.BR conj (3M),
+.BR cproj (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/casin.3m b/usr/src/man/man3m/casin.3m
index 98232a927d..5b800f1488 100644
--- a/usr/src/man/man3m/casin.3m
+++ b/usr/src/man/man3m/casin.3m
@@ -90,7 +90,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -109,4 +109,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBcomplex.h\fR(3HEAD), \fBcsin\fR(3M), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR complex.h (3HEAD),
+.BR csin (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/casinh.3m b/usr/src/man/man3m/casinh.3m
index 391f21671d..fb71c1d201 100644
--- a/usr/src/man/man3m/casinh.3m
+++ b/usr/src/man/man3m/casinh.3m
@@ -91,7 +91,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -110,5 +110,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBcomplex.h\fR(3HEAD), \fBcsinh\fR(3M), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR complex.h (3HEAD),
+.BR csinh (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/catan.3m b/usr/src/man/man3m/catan.3m
index 5f2759ac21..157d40b34f 100644
--- a/usr/src/man/man3m/catan.3m
+++ b/usr/src/man/man3m/catan.3m
@@ -98,7 +98,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -117,4 +117,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBcomplex.h\fR(3HEAD), \fBctan\fR(3M), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR complex.h (3HEAD),
+.BR ctan (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/catanh.3m b/usr/src/man/man3m/catanh.3m
index 98b08bdaf2..018f727745 100644
--- a/usr/src/man/man3m/catanh.3m
+++ b/usr/src/man/man3m/catanh.3m
@@ -91,7 +91,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -110,5 +110,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBcomplex.h\fR(3HEAD), \fBctanh\fR(3M), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR complex.h (3HEAD),
+.BR ctanh (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/cbrt.3m b/usr/src/man/man3m/cbrt.3m
index 19c1408ca1..d2457dbe97 100644
--- a/usr/src/man/man3m/cbrt.3m
+++ b/usr/src/man/man3m/cbrt.3m
@@ -87,7 +87,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -106,4 +106,6 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBmath.h\fR(3HEAD), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR math.h (3HEAD),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/ccos.3m b/usr/src/man/man3m/ccos.3m
index c912999d36..85e8e892a0 100644
--- a/usr/src/man/man3m/ccos.3m
+++ b/usr/src/man/man3m/ccos.3m
@@ -80,7 +80,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -99,5 +99,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBcacos\fR(3M), \fBcomplex.h\fR(3HEAD), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR complex.h (3HEAD),
+.BR cacos (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/ccosh.3m b/usr/src/man/man3m/ccosh.3m
index 1e7032c688..ca14d13f06 100644
--- a/usr/src/man/man3m/ccosh.3m
+++ b/usr/src/man/man3m/ccosh.3m
@@ -80,7 +80,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -99,5 +99,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBcacosh\fR(3M), \fBcomplex.h\fR(3HEAD), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR complex.h (3HEAD),
+.BR cacosh (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/ceil.3m b/usr/src/man/man3m/ceil.3m
index b6485a4449..d3d5743da8 100644
--- a/usr/src/man/man3m/ceil.3m
+++ b/usr/src/man/man3m/ceil.3m
@@ -91,7 +91,7 @@ it to an integer type to avoid the undefined results of an integer overflow.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -110,5 +110,10 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBfeclearexcept\fR(3M), \fBfetestexcept\fR(3M), \fBfloor\fR(3M),
-\fBisnan\fR(3M), \fBmath.h\fR(3HEAD), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR math.h (3HEAD),
+.BR feclearexcept (3M),
+.BR fetestexcept (3M),
+.BR floor (3M),
+.BR isnan (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/cexp.3m b/usr/src/man/man3m/cexp.3m
index 10855a9b1f..5c84ce1edf 100644
--- a/usr/src/man/man3m/cexp.3m
+++ b/usr/src/man/man3m/cexp.3m
@@ -80,7 +80,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -99,4 +99,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBclog\fR(3M), \fBcomplex.h\fR(3HEAD), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR complex.h (3HEAD),
+.BR clog (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/cimag.3m b/usr/src/man/man3m/cimag.3m
index bca8121695..65202840bb 100644
--- a/usr/src/man/man3m/cimag.3m
+++ b/usr/src/man/man3m/cimag.3m
@@ -80,7 +80,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -99,5 +99,10 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBcarg\fR(3M), \fBcomplex.h\fR(3HEAD), \fBconj\fR(3M), \fBcproj\fR(3M),
-\fBcreal\fR(3M), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR complex.h (3HEAD),
+.BR carg (3M),
+.BR conj (3M),
+.BR cproj (3M),
+.BR creal (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/clog.3m b/usr/src/man/man3m/clog.3m
index 47a6c227d3..3e4dfefae3 100644
--- a/usr/src/man/man3m/clog.3m
+++ b/usr/src/man/man3m/clog.3m
@@ -83,7 +83,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -102,4 +102,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBcexp\fR(3M), \fBcomplex.h\fR(3HEAD), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR complex.h (3HEAD),
+.BR cexp (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/conj.3m b/usr/src/man/man3m/conj.3m
index 34befe6085..96504357e3 100644
--- a/usr/src/man/man3m/conj.3m
+++ b/usr/src/man/man3m/conj.3m
@@ -81,7 +81,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -100,5 +100,10 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBcarg\fR(3M), \fBcimag\fR(3M), \fBcomplex.h\fR(3HEAD), \fBcproj\fR(3M),
-\fBcreal\fR(3M), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR complex.h (3HEAD),
+.BR carg (3M),
+.BR cimag (3M),
+.BR cproj (3M),
+.BR creal (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/copysign.3m b/usr/src/man/man3m/copysign.3m
index b8e49b53d7..6bf99f2a42 100644
--- a/usr/src/man/man3m/copysign.3m
+++ b/usr/src/man/man3m/copysign.3m
@@ -83,7 +83,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -102,4 +102,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBmath.h\fR(3HEAD), \fBsignbit\fR(3M), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR math.h (3HEAD),
+.BR signbit (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/cos.3m b/usr/src/man/man3m/cos.3m
index 1845839218..8b7a565fb5 100644
--- a/usr/src/man/man3m/cos.3m
+++ b/usr/src/man/man3m/cos.3m
@@ -113,7 +113,7 @@ floating point exception flags to detect exceptions.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -132,6 +132,12 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBacos\fR(3M), \fBfeclearexcept\fR(3M), \fBfetestexcept\fR(3M),
-\fBisnan\fR(3M), \fBmath.h\fR(3HEAD), \fBsin\fR(3M), \fBtan\fR(3M),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR math.h (3HEAD),
+.BR acos (3M),
+.BR feclearexcept (3M),
+.BR fetestexcept (3M),
+.BR isnan (3M),
+.BR sin (3M),
+.BR tan (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/cosh.3m b/usr/src/man/man3m/cosh.3m
index 4b6ca6ee0a..1d43eb865c 100644
--- a/usr/src/man/man3m/cosh.3m
+++ b/usr/src/man/man3m/cosh.3m
@@ -131,7 +131,7 @@ and \fBcoshl()\fR functions do not set \fBerrno\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -150,6 +150,13 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBacosh\fR(3M), \fBfeclearexcept\fR(3M), \fBfetestexcept\fR(3M),
-\fBisnan\fR(3M), \fBmath.h\fR(3HEAD), \fBmatherr\fR(3M), \fBsinh\fR(3M),
-\fBtanh\fR(3M), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR math.h (3HEAD),
+.BR acosh (3M),
+.BR feclearexcept (3M),
+.BR fetestexcept (3M),
+.BR isnan (3M),
+.BR matherr (3M),
+.BR sinh (3M),
+.BR tanh (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/cpow.3m b/usr/src/man/man3m/cpow.3m
index 95e5c7b1ff..a42c8a42fe 100644
--- a/usr/src/man/man3m/cpow.3m
+++ b/usr/src/man/man3m/cpow.3m
@@ -82,7 +82,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -101,5 +101,8 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBcabs\fR(3M), \fBcomplex.h\fR(3HEAD), \fBcsqrt\fR(3M), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR complex.h (3HEAD),
+.BR cabs (3M),
+.BR csqrt (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/cproj.3m b/usr/src/man/man3m/cproj.3m
index d96f6eb5fb..6b630996f1 100644
--- a/usr/src/man/man3m/cproj.3m
+++ b/usr/src/man/man3m/cproj.3m
@@ -91,7 +91,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -110,5 +110,10 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBcarg\fR(3M), \fBcimag\fR(3M), \fBcomplex.h\fR(3HEAD), \fBconj\fR(3M),
-\fBcreal\fR(3M), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR complex.h (3HEAD),
+.BR carg (3M),
+.BR cimag (3M),
+.BR conj (3M),
+.BR creal (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/creal.3m b/usr/src/man/man3m/creal.3m
index abf5c60882..49c6102160 100644
--- a/usr/src/man/man3m/creal.3m
+++ b/usr/src/man/man3m/creal.3m
@@ -91,7 +91,7 @@ z == creal(z) + cimag(z)*I
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -110,5 +110,10 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBcarg\fR(3M), \fBcimag\fR(3M), \fBcomplex.h\fR(3HEAD), \fBconj\fR(3M),
-\fBcproj\fR(3M), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR complex.h (3HEAD),
+.BR carg (3M),
+.BR cimag (3M),
+.BR conj (3M),
+.BR cproj (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/csin.3m b/usr/src/man/man3m/csin.3m
index 54df42f810..12533fce8e 100644
--- a/usr/src/man/man3m/csin.3m
+++ b/usr/src/man/man3m/csin.3m
@@ -80,7 +80,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -99,5 +99,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBcasin\fR(3M), \fBcomplex.h\fR(3HEAD), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR complex.h (3HEAD),
+.BR casin (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/csinh.3m b/usr/src/man/man3m/csinh.3m
index 247ec56df2..0b16e2d540 100644
--- a/usr/src/man/man3m/csinh.3m
+++ b/usr/src/man/man3m/csinh.3m
@@ -80,7 +80,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -99,5 +99,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBcasinh\fR(3M), \fBcomplex.h\fR(3HEAD), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR complex.h (3HEAD),
+.BR casinh (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/csqrt.3m b/usr/src/man/man3m/csqrt.3m
index 01dfa8afd2..8dc3f65379 100644
--- a/usr/src/man/man3m/csqrt.3m
+++ b/usr/src/man/man3m/csqrt.3m
@@ -82,7 +82,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -101,5 +101,8 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBcabs\fR(3M), \fBcomplex.h\fR(3HEAD), \fBcpow\fR(3M), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR complex.h (3HEAD),
+.BR cabs (3M),
+.BR cpow (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/ctan.3m b/usr/src/man/man3m/ctan.3m
index 95cb0b287d..a5ec9a5168 100644
--- a/usr/src/man/man3m/ctan.3m
+++ b/usr/src/man/man3m/ctan.3m
@@ -80,7 +80,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -99,5 +99,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBcatan\fR(3M), \fBcomplex.h\fR(3HEAD), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR complex.h (3HEAD),
+.BR catan (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/ctanh.3m b/usr/src/man/man3m/ctanh.3m
index 33ef0f3562..8c55018ec4 100644
--- a/usr/src/man/man3m/ctanh.3m
+++ b/usr/src/man/man3m/ctanh.3m
@@ -80,7 +80,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -99,5 +99,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBcatanh\fR(3M), \fBcomplex.h\fR(3HEAD), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR complex.h (3HEAD),
+.BR catanh (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/erf.3m b/usr/src/man/man3m/erf.3m
index a02aab7e52..666c0d4679 100644
--- a/usr/src/man/man3m/erf.3m
+++ b/usr/src/man/man3m/erf.3m
@@ -87,7 +87,7 @@ If \fIx\fR is subnormal, 2/sqrt(\c
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -106,5 +106,10 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBerfc\fR(3M), \fBfeclearexcept\fR(3M), \fBfetestexcept\fR(3M),
-\fBisnan\fR(3M), \fBmath.h\fR(3HEAD), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR math.h (3HEAD),
+.BR erfc (3M),
+.BR feclearexcept (3M),
+.BR fetestexcept (3M),
+.BR isnan (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/erfc.3m b/usr/src/man/man3m/erfc.3m
index 0ccdb9ef08..1ab6564137 100644
--- a/usr/src/man/man3m/erfc.3m
+++ b/usr/src/man/man3m/erfc.3m
@@ -100,7 +100,7 @@ subtracted from 1.0.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -119,5 +119,8 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBerf\fR(3M), \fBisnan\fR(3M), \fBmath.h\fR(3HEAD), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR math.h (3HEAD),
+.BR erf (3M),
+.BR isnan (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/exp.3m b/usr/src/man/man3m/exp.3m
index 2889283b6c..a2651cb03b 100644
--- a/usr/src/man/man3m/exp.3m
+++ b/usr/src/man/man3m/exp.3m
@@ -92,7 +92,7 @@ If \fIx\fR is +Inf, \fIx\fR is returned.
.sp
.LP
For exceptional cases, \fBmatherr\fR(3M) tabulates the values to be returned by
-\fBexp()\fR as specified by SVID3 and XPG3. See \fBstandards\fR(5).
+\fBexp()\fR as specified by SVID3 and XPG3. See \fBstandards\fR(7).
.SH ERRORS
.sp
.LP
@@ -131,7 +131,7 @@ return, if \fBerrno\fR is non-zero, an error has occurred. The \fBexpf()\fR and
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -150,6 +150,12 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBfeclearexcept\fR(3M), \fBfetestexcept\fR(3M), \fBisnan\fR(3M),
-\fBlog\fR(3M), \fBmath.h\fR(3HEAD), \fBmatherr\fR(3M), \fBmp\fR(3MP),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR math.h (3HEAD),
+.BR feclearexcept (3M),
+.BR fetestexcept (3M),
+.BR isnan (3M),
+.BR log (3M),
+.BR matherr (3M),
+.BR mp (3MP),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/exp2.3m b/usr/src/man/man3m/exp2.3m
index c33067be1e..1626dfe801 100644
--- a/usr/src/man/man3m/exp2.3m
+++ b/usr/src/man/man3m/exp2.3m
@@ -120,7 +120,7 @@ floating point exception flags to detect exceptions.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -139,6 +139,11 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBexp\fR(3M), \fBfeclearexcept\fR(3M), \fBfetestexcept\fR(3M),
-\fBisnan\fR(3M), \fBlog\fR(3M), \fBmath.h\fR(3HEAD), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR math.h (3HEAD),
+.BR exp (3M),
+.BR feclearexcept (3M),
+.BR fetestexcept (3M),
+.BR isnan (3M),
+.BR log (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/expm1.3m b/usr/src/man/man3m/expm1.3m
index 1891ab0a2b..03e905fd9f 100644
--- a/usr/src/man/man3m/expm1.3m
+++ b/usr/src/man/man3m/expm1.3m
@@ -136,7 +136,7 @@ floating point exception flags to detect exceptions.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -155,6 +155,11 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBexp\fR(3M), \fBfeclearexcept\fR(3M), \fBfetestexcept\fR(3M),
-\fBilogb\fR(3M), \fBlog1p\fR(3M), \fBmath.h\fR(3HEAD), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR math.h (3HEAD),
+.BR exp (3M),
+.BR feclearexcept (3M),
+.BR fetestexcept (3M),
+.BR ilogb (3M),
+.BR log1p (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/fabs.3m b/usr/src/man/man3m/fabs.3m
index 0a2c5d15e8..174a6d1dc1 100644
--- a/usr/src/man/man3m/fabs.3m
+++ b/usr/src/man/man3m/fabs.3m
@@ -91,7 +91,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -110,4 +110,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBisnan\fR(3M), \fBmath.h\fR(3HEAD), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR math.h (3HEAD),
+.BR isnan (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/fdim.3m b/usr/src/man/man3m/fdim.3m
index a6b89bbfab..04a35c5a20 100644
--- a/usr/src/man/man3m/fdim.3m
+++ b/usr/src/man/man3m/fdim.3m
@@ -115,7 +115,7 @@ floating point exception flags to detect exceptions.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -134,5 +134,10 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBfeclearexcept\fR(3M), \fBfetestexcept\fR(3M), \fBfmax\fR(3M),
-\fBfmin\fR(3M), \fBmath.h\fR(3HEAD), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR math.h (3HEAD),
+.BR feclearexcept (3M),
+.BR fetestexcept (3M),
+.BR fmax (3M),
+.BR fmin (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/feclearexcept.3m b/usr/src/man/man3m/feclearexcept.3m
index 45c0fba5d5..a2a4a585b9 100644
--- a/usr/src/man/man3m/feclearexcept.3m
+++ b/usr/src/man/man3m/feclearexcept.3m
@@ -73,7 +73,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -92,6 +92,10 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBfenv.h\fR(3HEAD), \fBfegetexceptflag\fR(3M), \fBferaiseexcept\fR(3M),
-\fBfesetexceptflag\fR(3M), \fBfetestexcept\fR(3M), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR fenv.h (3HEAD),
+.BR fegetexceptflag (3M),
+.BR feraiseexcept (3M),
+.BR fesetexceptflag (3M),
+.BR fetestexcept (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/fegetenv.3m b/usr/src/man/man3m/fegetenv.3m
index 2d341113ec..9b0a8e6a99 100644
--- a/usr/src/man/man3m/fegetenv.3m
+++ b/usr/src/man/man3m/fegetenv.3m
@@ -90,7 +90,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -109,8 +109,11 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBfeholdexcept\fR(3M), \fBfenv.h\fR(3HEAD), \fBfeupdateenv\fR(3M),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR fenv.h (3HEAD),
+.BR feholdexcept (3M),
+.BR feupdateenv (3M),
+.BR attributes (7),
+.BR standards (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3m/fegetexceptflag.3m b/usr/src/man/man3m/fegetexceptflag.3m
index cc18b395f8..abe21cbb17 100644
--- a/usr/src/man/man3m/fegetexceptflag.3m
+++ b/usr/src/man/man3m/fegetexceptflag.3m
@@ -93,7 +93,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -112,5 +112,9 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBfenv.h\fR(3HEAD), \fBfeclearexcept\fR(3M), \fBferaiseexcept\fR(3M),
-\fBfesetexceptflag\fR(3M), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR fenv.h (3HEAD),
+.BR feclearexcept (3M),
+.BR feraiseexcept (3M),
+.BR fesetexceptflag (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/fegetround.3m b/usr/src/man/man3m/fegetround.3m
index 7c6b35c7ce..897c094ae6 100644
--- a/usr/src/man/man3m/fegetround.3m
+++ b/usr/src/man/man3m/fegetround.3m
@@ -114,7 +114,7 @@ void f(int round_dir)
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -133,4 +133,6 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBfenv.h\fR(3HEAD), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR fenv.h (3HEAD),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/feholdexcept.3m b/usr/src/man/man3m/feholdexcept.3m
index c5dd72288b..a7053a0b8b 100644
--- a/usr/src/man/man3m/feholdexcept.3m
+++ b/usr/src/man/man3m/feholdexcept.3m
@@ -74,7 +74,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -93,8 +93,11 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBfegetenv\fR(3M), \fBfenv.h\fR(3HEAD), \fBfeupdateenv\fR(3M),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR fenv.h (3HEAD),
+.BR fegetenv (3M),
+.BR feupdateenv (3M),
+.BR attributes (7),
+.BR standards (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3m/feraiseexcept.3m b/usr/src/man/man3m/feraiseexcept.3m
index 6d5baa1213..237ffb95c7 100644
--- a/usr/src/man/man3m/feraiseexcept.3m
+++ b/usr/src/man/man3m/feraiseexcept.3m
@@ -80,7 +80,7 @@ exceptions raised by this function are taken.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -99,5 +99,9 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBfeclearexcept\fR(3M), \fBfegetexceptflag\fR(3M), \fBfenv.h\fR(3HEAD),
-\fBfetestexcept\fR(3M), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR fenv.h (3HEAD),
+.BR feclearexcept (3M),
+.BR fegetexceptflag (3M),
+.BR fetestexcept (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/fesetprec.3m b/usr/src/man/man3m/fesetprec.3m
index 7565241fa1..75931fcf43 100644
--- a/usr/src/man/man3m/fesetprec.3m
+++ b/usr/src/man/man3m/fesetprec.3m
@@ -80,7 +80,7 @@ rounding precision is established and 0 otherwise.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -104,7 +104,9 @@ determined by each floating point instruction.
.SH SEE ALSO
.sp
.LP
-\fBfegetenv\fR(3M), \fBfesetround\fR(3M), \fBattributes\fR(5)
+.BR fegetenv (3M),
+.BR fesetround (3M),
+.BR attributes (7)
.sp
.LP
\fINumerical\fR \fIComputation\fR \fIGuide\fR
diff --git a/usr/src/man/man3m/fetestexcept.3m b/usr/src/man/man3m/fetestexcept.3m
index 1ba802698b..e9c577410f 100644
--- a/usr/src/man/man3m/fetestexcept.3m
+++ b/usr/src/man/man3m/fetestexcept.3m
@@ -100,7 +100,7 @@ and then function \fIg\fR( ) if an overflow exception is set:
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -119,5 +119,8 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBfeclearexcept\fR(3M), \fBfegetexceptflag\fR(3M), \fBfenv.h\fR(3HEAD),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR fenv.h (3HEAD),
+.BR feclearexcept (3M),
+.BR fegetexceptflag (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/feupdateenv.3m b/usr/src/man/man3m/feupdateenv.3m
index c9aa2e7509..f5a3642985 100644
--- a/usr/src/man/man3m/feupdateenv.3m
+++ b/usr/src/man/man3m/feupdateenv.3m
@@ -102,7 +102,7 @@ double f(double x)
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -121,8 +121,11 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBfegetenv\fR(3M), \fBfeholdexcept\fR(3M), \fBfenv.h\fR(3HEAD),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR fenv.h (3HEAD),
+.BR fegetenv (3M),
+.BR feholdexcept (3M),
+.BR attributes (7),
+.BR standards (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3m/fex_merge_flags.3m b/usr/src/man/man3m/fex_merge_flags.3m
index b2bad1953e..8a279cd135 100644
--- a/usr/src/man/man3m/fex_merge_flags.3m
+++ b/usr/src/man/man3m/fex_merge_flags.3m
@@ -31,7 +31,7 @@ The \fBfex_merge_flags\fR function does not return a value.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -49,9 +49,13 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBfeclearexcept\fR(3M), \fBfegetenv\fR(3M), \fBfesetround\fR(3M),
-\fBfesetprec\fR(3M), \fBfex_set_handling\fR(3M), \fBfex_set_log\fR(3M),
-\fBattributes\fR(5)
+.BR feclearexcept (3M),
+.BR fegetenv (3M),
+.BR fesetprec (3M),
+.BR fesetround (3M),
+.BR fex_set_handling (3M),
+.BR fex_set_log (3M),
+.BR attributes (7)
.sp
.LP
\fINumerical Computation Guide\fR
diff --git a/usr/src/man/man3m/fex_set_handling.3m b/usr/src/man/man3m/fex_set_handling.3m
index 3a2585025b..6d5c8696f4 100644
--- a/usr/src/man/man3m/fex_set_handling.3m
+++ b/usr/src/man/man3m/fex_set_handling.3m
@@ -417,7 +417,7 @@ When \fIx\fR = 0, \fIf(x)\fR is computed as 0/0 and an invalid operation
exception occurs. In this example, the value 2.0 is substituted for the
result.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -433,8 +433,11 @@ MT-Level MT-Safe (see Notes)
.TE
.SH SEE ALSO
-\fBsigfpe\fR(3C), \fBfeclearexcept\fR(3M), \fBfegetenv\fR(3M),
-\fBfex_set_log\fR(3M), \fBattributes\fR(5)
+.BR sigfpe (3C),
+.BR feclearexcept (3M),
+.BR fegetenv (3M),
+.BR fex_set_log (3M),
+.BR attributes (7)
.sp
.LP
\fINumerical Computation Guide\fR
diff --git a/usr/src/man/man3m/fex_set_log.3m b/usr/src/man/man3m/fex_set_log.3m
index 80ff310d3d..60f84b0d5c 100644
--- a/usr/src/man/man3m/fex_set_log.3m
+++ b/usr/src/man/man3m/fex_set_log.3m
@@ -149,7 +149,7 @@ n, nonstop mode
Recompiling the program or running it on another system can produce different
text addresses from those shown above.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -165,8 +165,12 @@ MT-Level MT-Safe (see NOTES)
.TE
.SH SEE ALSO
-\fBfeclearexcept\fR(3M), \fBfegetenv\fR(3M), \fBferaiseexcept\fR(3M),
-\fBfeupdateenv\fR(3M), \fBfex_set_handling\fR(3M), \fBattributes\fR(5)
+.BR feclearexcept (3M),
+.BR fegetenv (3M),
+.BR feraiseexcept (3M),
+.BR feupdateenv (3M),
+.BR fex_set_handling (3M),
+.BR attributes (7)
.sp
.LP
\fINumerical Computation Guide\fR
diff --git a/usr/src/man/man3m/floor.3m b/usr/src/man/man3m/floor.3m
index efcfd06578..f4de1c0a29 100644
--- a/usr/src/man/man3m/floor.3m
+++ b/usr/src/man/man3m/floor.3m
@@ -85,7 +85,7 @@ If \fIx\fR is \(+-Inf or \(+-0, \fIx\fR is returned.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -104,5 +104,10 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBceil\fR(3M), \fBfeclearexcept\fR(3M), \fBfetestexcept\fR(3M),
-\fBisnan\fR(3M), \fBmath.h\fR(3HEAD), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR math.h (3HEAD),
+.BR ceil (3M),
+.BR feclearexcept (3M),
+.BR fetestexcept (3M),
+.BR isnan (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/fma.3m b/usr/src/man/man3m/fma.3m
index ca78bd9957..d9799d070a 100644
--- a/usr/src/man/man3m/fma.3m
+++ b/usr/src/man/man3m/fma.3m
@@ -138,7 +138,7 @@ floating point exception flags to detect exceptions.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -157,5 +157,8 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBfeclearexcept\fR(3M), \fBfetestexcept\fR(3M), \fBmath.h\fR(3HEAD),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR math.h (3HEAD),
+.BR feclearexcept (3M),
+.BR fetestexcept (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/fmax.3m b/usr/src/man/man3m/fmax.3m
index 9c6f77248b..2a926ac3ce 100644
--- a/usr/src/man/man3m/fmax.3m
+++ b/usr/src/man/man3m/fmax.3m
@@ -90,7 +90,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -109,5 +109,8 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBfdim\fR(3M), \fBfmin\fR(3M), \fBmath.h\fR(3HEAD), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR math.h (3HEAD),
+.BR fdim (3M),
+.BR fmin (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/fmin.3m b/usr/src/man/man3m/fmin.3m
index 575fcd0527..ca8b8c26a4 100644
--- a/usr/src/man/man3m/fmin.3m
+++ b/usr/src/man/man3m/fmin.3m
@@ -81,7 +81,7 @@ If \fIx\fR and \fIy\fR are NaN, a NaN is returned.
.SH ERRORS
No errors are defined.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -98,5 +98,8 @@ MT-Level MT-Safe
.TE
.SH SEE ALSO
-\fBfdim\fR(3M), \fBfmax\fR(3M), \fBmath.h\fR(3HEAD), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR math.h (3HEAD),
+.BR fdim (3M),
+.BR fmax (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/fmod.3m b/usr/src/man/man3m/fmod.3m
index cc6dbb8878..39887166f6 100644
--- a/usr/src/man/man3m/fmod.3m
+++ b/usr/src/man/man3m/fmod.3m
@@ -122,7 +122,7 @@ floating point exception flags to detect exceptions.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -141,5 +141,9 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBfeclearexcept\fR(3M), \fBfetestexcept\fR(3M), \fBisnan\fR(3M),
-\fBmath.h\fR(3HEAD), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR math.h (3HEAD),
+.BR feclearexcept (3M),
+.BR fetestexcept (3M),
+.BR isnan (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/fpclassify.3m b/usr/src/man/man3m/fpclassify.3m
index 2a48d41e01..6a90f7f262 100644
--- a/usr/src/man/man3m/fpclassify.3m
+++ b/usr/src/man/man3m/fpclassify.3m
@@ -74,7 +74,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -93,5 +93,11 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBisfinite\fR(3M), \fBisinf\fR(3M), \fBisnan\fR(3M), \fBisnormal\fR(3M),
-\fBmath.h\fR(3HEAD), \fBsignbit\fR(3M), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR math.h (3HEAD),
+.BR isfinite (3M),
+.BR isinf (3M),
+.BR isnan (3M),
+.BR isnormal (3M),
+.BR signbit (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/frexp.3m b/usr/src/man/man3m/frexp.3m
index ba9945a541..66622d1c35 100644
--- a/usr/src/man/man3m/frexp.3m
+++ b/usr/src/man/man3m/frexp.3m
@@ -94,7 +94,7 @@ unspecified.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -113,5 +113,8 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBisnan\fR(3M), \fBldexp\fR(3M), \fBmodf\fR(3M), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR isnan (3M),
+.BR ldexp (3M),
+.BR modf (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/hypot.3m b/usr/src/man/man3m/hypot.3m
index 1e213ddc8f..f49949e6a5 100644
--- a/usr/src/man/man3m/hypot.3m
+++ b/usr/src/man/man3m/hypot.3m
@@ -129,7 +129,7 @@ floating point exception flags to detect exceptions.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -148,6 +148,11 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBfabs\fR(3M), \fBfeclearexcept\fR(3M), \fBfetestexcept\fR(3M),
-\fBisnan\fR(3M), \fBmath.h\fR(3HEAD), \fBsqrt\fR(3M), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR math.h (3HEAD),
+.BR fabs (3M),
+.BR feclearexcept (3M),
+.BR fetestexcept (3M),
+.BR isnan (3M),
+.BR sqrt (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/ilogb.3m b/usr/src/man/man3m/ilogb.3m
index 71e96abaef..00577ea8b2 100644
--- a/usr/src/man/man3m/ilogb.3m
+++ b/usr/src/man/man3m/ilogb.3m
@@ -102,7 +102,7 @@ as a signed integer value. They are equivalent to calling the corresponding
.LP
If \fIx\fR is 0, the value \fBFP_ILOGB0\fR is returned. For SUSv3-conforming
applications compiled with the \fBc99\fR compiler driver (see
-\fBstandards\fR(5)), a domain error occurs.
+\fBstandards\fR(7)), a domain error occurs.
.sp
.LP
If \fIx\fR is \(+-Inf, the value \fBINT_MAX\fR is returned. For
@@ -134,7 +134,7 @@ non-zero, then the invalid floating-point exception is raised.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -153,6 +153,11 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBfeclearexcept\fR(3M), \fBfetestexcept\fR(3M), \fBlimits.h\fR(3HEAD),
-\fBlogb\fR(3M), \fBmath.h\fR(3HEAD), \fBscalb\fR(3M), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR limits.h (3HEAD),
+.BR math.h (3HEAD),
+.BR feclearexcept (3M),
+.BR fetestexcept (3M),
+.BR logb (3M),
+.BR scalb (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/isfinite.3m b/usr/src/man/man3m/isfinite.3m
index 644ba9f4d7..da8f1ff60d 100644
--- a/usr/src/man/man3m/isfinite.3m
+++ b/usr/src/man/man3m/isfinite.3m
@@ -74,7 +74,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -93,5 +93,11 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBfpclassify\fR(3M), \fBisinf\fR(3M), \fBisnan\fR(3M), \fBisnormal\fR(3M),
-\fBmath.h\fR(3HEAD), \fBsignbit\fR(3M), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR math.h (3HEAD),
+.BR fpclassify (3M),
+.BR isinf (3M),
+.BR isnan (3M),
+.BR isnormal (3M),
+.BR signbit (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/isgreater.3m b/usr/src/man/man3m/isgreater.3m
index 0b1613d079..8c6e7f8058 100644
--- a/usr/src/man/man3m/isgreater.3m
+++ b/usr/src/man/man3m/isgreater.3m
@@ -91,7 +91,7 @@ the argument is an expression of \fBreal-floating\fR type.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -110,6 +110,11 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBisgreaterequal\fR(3M), \fBisless\fR(3M), \fBislessequal\fR(3M),
-\fBislessgreater\fR(3M), \fBisunordered\fR(3M), \fBmath.h\fR(3HEAD),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR math.h (3HEAD),
+.BR isgreaterequal (3M),
+.BR isless (3M),
+.BR islessequal (3M),
+.BR islessgreater (3M),
+.BR isunordered (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/isgreaterequal.3m b/usr/src/man/man3m/isgreaterequal.3m
index 08d3bdc7bf..61b8cddc7f 100644
--- a/usr/src/man/man3m/isgreaterequal.3m
+++ b/usr/src/man/man3m/isgreaterequal.3m
@@ -92,7 +92,7 @@ the argument is an expression of \fBreal-floating\fR type.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -111,6 +111,11 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBisgreater\fR(3M), \fBisless\fR(3M), \fBislessequal\fR(3M),
-\fBislessgreater\fR(3M), \fBisunordered\fR(3M), \fBmath.h\fR(3HEAD),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR math.h (3HEAD),
+.BR isgreater (3M),
+.BR isless (3M),
+.BR islessequal (3M),
+.BR islessgreater (3M),
+.BR isunordered (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/isinf.3m b/usr/src/man/man3m/isinf.3m
index b0d7e203bf..ac40b68364 100644
--- a/usr/src/man/man3m/isinf.3m
+++ b/usr/src/man/man3m/isinf.3m
@@ -74,7 +74,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -93,5 +93,11 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBfpclassify\fR(3M), \fBisfinite\fR(3M), \fBisnan\fR(3M), \fBisnormal\fR(3M),
-\fBmath.h\fR(3HEAD), \fBsignbit\fR(3M), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR math.h (3HEAD),
+.BR fpclassify (3M),
+.BR isfinite (3M),
+.BR isnan (3M),
+.BR isnormal (3M),
+.BR signbit (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/isless.3m b/usr/src/man/man3m/isless.3m
index 1a52d750dc..96bcf73fd8 100644
--- a/usr/src/man/man3m/isless.3m
+++ b/usr/src/man/man3m/isless.3m
@@ -91,7 +91,7 @@ the argument is an expression of \fBreal-floating\fR type.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -110,6 +110,11 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBisgreater\fR(3M), \fBisgreaterequal\fR(3M), \fBislessequal\fR(3M),
-\fBislessgreater\fR(3M), \fBisunordered\fR(3M), \fBmath.h\fR(3HEAD),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR math.h (3HEAD),
+.BR isgreater (3M),
+.BR isgreaterequal (3M),
+.BR islessequal (3M),
+.BR islessgreater (3M),
+.BR isunordered (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/islessequal.3m b/usr/src/man/man3m/islessequal.3m
index 0c6ac81dfc..cb0593cb19 100644
--- a/usr/src/man/man3m/islessequal.3m
+++ b/usr/src/man/man3m/islessequal.3m
@@ -91,7 +91,7 @@ the argument is an expression of \fBreal-floating\fR type.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -110,6 +110,11 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBisgreater\fR(3M), \fBisgreaterequal\fR(3M), \fBisless\fR(3M),
-\fBislessgreater\fR(3M), \fBisunordered\fR(3M), \fBmath.h\fR(3HEAD),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR math.h (3HEAD),
+.BR isgreater (3M),
+.BR isgreaterequal (3M),
+.BR isless (3M),
+.BR islessgreater (3M),
+.BR isunordered (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/islessgreater.3m b/usr/src/man/man3m/islessgreater.3m
index 55135b0501..387e09039b 100644
--- a/usr/src/man/man3m/islessgreater.3m
+++ b/usr/src/man/man3m/islessgreater.3m
@@ -92,7 +92,7 @@ the argument is an expression of \fBreal-floating\fR type.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -111,6 +111,11 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBisgreater\fR(3M), \fBisgreaterequal\fR(3M), \fBisless\fR(3M),
-\fBislessequal\fR(3M), \fBisunordered\fR(3M), \fBmath.h\fR(3HEAD),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR math.h (3HEAD),
+.BR isgreater (3M),
+.BR isgreaterequal (3M),
+.BR isless (3M),
+.BR islessequal (3M),
+.BR isunordered (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/isnan.3m b/usr/src/man/man3m/isnan.3m
index 7e302ce99d..c2b71f2a77 100644
--- a/usr/src/man/man3m/isnan.3m
+++ b/usr/src/man/man3m/isnan.3m
@@ -101,7 +101,7 @@ is obsolete and will no longer work.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -120,5 +120,11 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBfpclassify\fR(3M), \fBisfinite\fR(3M), \fBisinf\fR(3M), \fBisnormal\fR(3M),
-\fBmath.h\fR(3HEAD), \fBsignbit\fR(3M), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR math.h (3HEAD),
+.BR fpclassify (3M),
+.BR isfinite (3M),
+.BR isinf (3M),
+.BR isnormal (3M),
+.BR signbit (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/isnormal.3m b/usr/src/man/man3m/isnormal.3m
index cae253f762..e2f6b867d6 100644
--- a/usr/src/man/man3m/isnormal.3m
+++ b/usr/src/man/man3m/isnormal.3m
@@ -74,7 +74,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -93,5 +93,11 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBfpclassify\fR(3M), \fBisfinite\fR(3M), \fBisinf\fR(3M), \fBisnan\fR(3M),
-\fBmath.h\fR(3HEAD), \fBsignbit\fR(3M), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR math.h (3HEAD),
+.BR fpclassify (3M),
+.BR isfinite (3M),
+.BR isinf (3M),
+.BR isnan (3M),
+.BR signbit (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/isunordered.3m b/usr/src/man/man3m/isunordered.3m
index cc4a5ea0a1..b56dc6f19f 100644
--- a/usr/src/man/man3m/isunordered.3m
+++ b/usr/src/man/man3m/isunordered.3m
@@ -84,7 +84,7 @@ the argument shall be an expression of \fBreal-floating\fR type.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -103,6 +103,11 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBisgreater\fR(3M), \fBisgreaterequal\fR(3M), \fBisless\fR(3M),
-\fBislessequal\fR(3M), \fBislessgreater\fR(3M), \fBmath.h\fR(3HEAD),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR math.h (3HEAD),
+.BR isgreater (3M),
+.BR isgreaterequal (3M),
+.BR isless (3M),
+.BR islessequal (3M),
+.BR islessgreater (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/j0.3m b/usr/src/man/man3m/j0.3m
index 2fd6278e18..61a76b3ae5 100644
--- a/usr/src/man/man3m/j0.3m
+++ b/usr/src/man/man3m/j0.3m
@@ -116,7 +116,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -140,5 +140,8 @@ The \fBj0()\fR, \fBj1()\fR, and \fBjn()\fR functions are Standard. The
.SH SEE ALSO
.sp
.LP
-\fBisnan\fR(3M), \fBy0\fR(3M), \fBmath.h\fR(3HEAD), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR math.h (3HEAD),
+.BR isnan (3M),
+.BR y0 (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/ldexp.3m b/usr/src/man/man3m/ldexp.3m
index 030096ed9e..9f9494274a 100644
--- a/usr/src/man/man3m/ldexp.3m
+++ b/usr/src/man/man3m/ldexp.3m
@@ -128,7 +128,7 @@ and \fBldexpl()\fR functions do not set \fBerrno\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -147,5 +147,8 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBfrexp\fR(3M), \fBisnan\fR(3M), \fBmodf\fR(3M), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR frexp (3M),
+.BR isnan (3M),
+.BR modf (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/lgamma.3m b/usr/src/man/man3m/lgamma.3m
index 01864c6f4b..895c7b4faf 100644
--- a/usr/src/man/man3m/lgamma.3m
+++ b/usr/src/man/man3m/lgamma.3m
@@ -194,7 +194,7 @@ singularities \fIx\fR a nonpositive integer.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -226,8 +226,13 @@ and should be used instead.
.SH SEE ALSO
.sp
.LP
-\fBexp\fR(3M), \fBfeclearexcept\fR(3M), \fBfetestexcept\fR(3M),
-\fBisnan\fR(3M), \fBmath.h\fR(3HEAD), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR math.h (3HEAD),
+.BR exp (3M),
+.BR feclearexcept (3M),
+.BR fetestexcept (3M),
+.BR isnan (3M),
+.BR attributes (7),
+.BR standards (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3m/llrint.3m b/usr/src/man/man3m/llrint.3m
index 935210958b..e63da0053e 100644
--- a/usr/src/man/man3m/llrint.3m
+++ b/usr/src/man/man3m/llrint.3m
@@ -131,7 +131,7 @@ floating-point exception.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -150,5 +150,9 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBfeclearexcept\fR(3M), \fBfetestexcept\fR(3M), \fBlrint\fR(3M),
-\fBmath.h\fR(3HEAD), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR math.h (3HEAD),
+.BR feclearexcept (3M),
+.BR fetestexcept (3M),
+.BR lrint (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/llround.3m b/usr/src/man/man3m/llround.3m
index f3cb2f3952..3014399ffd 100644
--- a/usr/src/man/man3m/llround.3m
+++ b/usr/src/man/man3m/llround.3m
@@ -128,7 +128,7 @@ arguments that round to within the range of the return type.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -147,6 +147,11 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBfeclearexcept\fR(3M), \fBfetestexcept\fR(3M), \fBllrint\fR(3M),
-\fBlrint\fR(3M), \fBlround\fR(3M), \fBmath.h\fR(3HEAD), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR math.h (3HEAD),
+.BR feclearexcept (3M),
+.BR fetestexcept (3M),
+.BR llrint (3M),
+.BR lrint (3M),
+.BR lround (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/log.3m b/usr/src/man/man3m/log.3m
index 06cc0c91d5..f0abb3ed68 100644
--- a/usr/src/man/man3m/log.3m
+++ b/usr/src/man/man3m/log.3m
@@ -150,7 +150,7 @@ return, if \fBerrno\fR is non-zero, an error has occurred. The \fBlogf()\fR and
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -169,6 +169,13 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBexp\fR(3M), \fBfeclearexcept\fR(3M), \fBfetestexcept\fR(3M),
-\fBisnan\fR(3M), \fBlog10\fR(3M), \fBlog1p\fR(3M), \fBmath.h\fR(3HEAD),
-\fBmatherr\fR(3M), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR math.h (3HEAD),
+.BR exp (3M),
+.BR feclearexcept (3M),
+.BR fetestexcept (3M),
+.BR isnan (3M),
+.BR log10 (3M),
+.BR log1p (3M),
+.BR matherr (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/log10.3m b/usr/src/man/man3m/log10.3m
index bc047cb521..d132bace34 100644
--- a/usr/src/man/man3m/log10.3m
+++ b/usr/src/man/man3m/log10.3m
@@ -149,7 +149,7 @@ and \fBlog10l()\fR functions do not set \fBerrno\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -168,6 +168,12 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBfeclearexcept\fR(3M), \fBfetestexcept\fR(3M), \fBisnan\fR(3M),
-\fBlog\fR(3M), \fBmath.h\fR(3HEAD), \fBmatherr\fR(3M), \fBpow\fR(3M),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR math.h (3HEAD),
+.BR feclearexcept (3M),
+.BR fetestexcept (3M),
+.BR isnan (3M),
+.BR log (3M),
+.BR matherr (3M),
+.BR pow (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/log1p.3m b/usr/src/man/man3m/log1p.3m
index ba6cd5eb28..a83936dae2 100644
--- a/usr/src/man/man3m/log1p.3m
+++ b/usr/src/man/man3m/log1p.3m
@@ -146,7 +146,7 @@ and \fBlog1pl()\fR functions do not set \fBerrno\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -165,5 +165,10 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBfeclearexcept\fR(3M), \fBfetestexcept\fR(3M), \fBlog\fR(3M),
-\fBmath.h\fR(3HEAD), \fBmatherr\fR(3M), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR math.h (3HEAD),
+.BR feclearexcept (3M),
+.BR fetestexcept (3M),
+.BR log (3M),
+.BR matherr (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/log2.3m b/usr/src/man/man3m/log2.3m
index bacbf6059c..62c84411b6 100644
--- a/usr/src/man/man3m/log2.3m
+++ b/usr/src/man/man3m/log2.3m
@@ -137,7 +137,7 @@ floating point exception flags to detect exceptions.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -156,5 +156,9 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBfeclearexcept\fR(3M), \fBfetestexcept\fR(3M), \fBlog\fR(3M),
-\fBmath.h\fR(3HEAD), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR math.h (3HEAD),
+.BR feclearexcept (3M),
+.BR fetestexcept (3M),
+.BR log (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/logb.3m b/usr/src/man/man3m/logb.3m
index 34a7fcb12e..a554b4d4c1 100644
--- a/usr/src/man/man3m/logb.3m
+++ b/usr/src/man/man3m/logb.3m
@@ -103,7 +103,7 @@ If \fIx\fR is subnormal:
.ie t \(bu
.el o
For SUSv3-conforming applications compiled with the \fBc99\fR compiler driver
-(see \fBstandards\fR(5)), the exponent of \fIx\fR as if \fIx\fR were normalized
+(see \fBstandards\fR(7)), the exponent of \fIx\fR as if \fIx\fR were normalized
is returned.
.RE
.RS +4
@@ -163,7 +163,7 @@ and \fBlogbl()\fR functions do not set \fBerrno\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -182,6 +182,11 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBfeclearexcept\fR(3M), \fBfetestexcept\fR(3M), \fBilogb\fR(3M),
-\fBmath.h\fR(3HEAD), \fBmatherr\fR(3M), \fBscalb\fR(3M), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR math.h (3HEAD),
+.BR feclearexcept (3M),
+.BR fetestexcept (3M),
+.BR ilogb (3M),
+.BR matherr (3M),
+.BR scalb (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/lrint.3m b/usr/src/man/man3m/lrint.3m
index f2d03cebeb..4fdafe2a41 100644
--- a/usr/src/man/man3m/lrint.3m
+++ b/usr/src/man/man3m/lrint.3m
@@ -124,7 +124,7 @@ floating point exception flags to detect exceptions.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -143,5 +143,9 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBfeclearexcept\fR(3M), \fBfetestexcept\fR(3M), \fBllrint\fR(3M),
-\fBmath.h\fR(3HEAD), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR math.h (3HEAD),
+.BR feclearexcept (3M),
+.BR fetestexcept (3M),
+.BR llrint (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/lround.3m b/usr/src/man/man3m/lround.3m
index fb0230ea07..4923cb92a4 100644
--- a/usr/src/man/man3m/lround.3m
+++ b/usr/src/man/man3m/lround.3m
@@ -123,7 +123,7 @@ floating point exception flags to detect exceptions.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -142,5 +142,9 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBfeclearexcept\fR(3M), \fBfetestexcept\fR(3M), \fBllround\fR(3M),
-\fBmath.h\fR(3HEAD), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR math.h (3HEAD),
+.BR feclearexcept (3M),
+.BR fetestexcept (3M),
+.BR llround (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/matherr.3m b/usr/src/man/man3m/matherr.3m
index 07985f8232..f5fdbd7169 100644
--- a/usr/src/man/man3m/matherr.3m
+++ b/usr/src/man/man3m/matherr.3m
@@ -128,7 +128,7 @@ will be printed and \fBerrno\fR is not set.
.sp
.LP
When an application is built as a SVID3 conforming application (see
-\fBstandards\fR(5)), if \fBmatherr()\fR is not supplied by the user, the
+\fBstandards\fR(7)), if \fBmatherr()\fR is not supplied by the user, the
default matherr exception-handling mechanisms, summarized in the table below,
are invoked upon exception:
.sp
@@ -537,7 +537,7 @@ matherr(struct exception *x) {
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -554,4 +554,5 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/modf.3m b/usr/src/man/man3m/modf.3m
index 3a830d64e6..e2d89f19f8 100644
--- a/usr/src/man/man3m/modf.3m
+++ b/usr/src/man/man3m/modf.3m
@@ -93,7 +93,7 @@ x == a+*iptr ;
.in -2
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -110,5 +110,8 @@ MT-Level MT-Safe
.TE
.SH SEE ALSO
-\fBfrexp\fR(3M), \fBisnan\fR(3M), \fBldexp\fR(3M), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR frexp (3M),
+.BR isnan (3M),
+.BR ldexp (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/nan.3m b/usr/src/man/man3m/nan.3m
index 7a32b87c48..0e9ca6bf09 100644
--- a/usr/src/man/man3m/nan.3m
+++ b/usr/src/man/man3m/nan.3m
@@ -113,7 +113,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -132,4 +132,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBmath.h\fR(3HEAD), \fBstrtod\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR strtod (3C),
+.BR math.h (3HEAD),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/nearbyint.3m b/usr/src/man/man3m/nearbyint.3m
index 08b1007969..2cbbd1f150 100644
--- a/usr/src/man/man3m/nearbyint.3m
+++ b/usr/src/man/man3m/nearbyint.3m
@@ -87,7 +87,7 @@ If \fIx\fR is \(+-Inf, \fIx\fR is returned.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -106,5 +106,8 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBfeclearexcept\fR(3M), \fBfetestexcept\fR(3M), \fBmath.h\fR(3HEAD),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR math.h (3HEAD),
+.BR feclearexcept (3M),
+.BR fetestexcept (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/nextafter.3m b/usr/src/man/man3m/nextafter.3m
index f3d09cd426..ed77274d95 100644
--- a/usr/src/man/man3m/nextafter.3m
+++ b/usr/src/man/man3m/nextafter.3m
@@ -172,7 +172,7 @@ On return, if \fBerrno\fR is non-zero, an error has occurred. The
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -191,5 +191,8 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBfeclearexcept\fR(3M), \fBfetestexcept\fR(3M), \fBmath.h\fR(3HEAD),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR math.h (3HEAD),
+.BR feclearexcept (3M),
+.BR fetestexcept (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/pow.3m b/usr/src/man/man3m/pow.3m
index 320134eeee..66e655e388 100644
--- a/usr/src/man/man3m/pow.3m
+++ b/usr/src/man/man3m/pow.3m
@@ -113,7 +113,7 @@ If \fIx\fR or \fIy\fR is a NaN, a NaN is returned unless:
.el o
If \fIx\fR is +1 and \fIy\fR is NaN and the application was compiled with the
\fBc99\fR compiler driver and is therefore SUSv3-conforming (see
-\fBstandards\fR(5)), 1.0 is returned.
+\fBstandards\fR(7)), 1.0 is returned.
.RE
.RS +4
.TP
@@ -133,7 +133,7 @@ For \fIy\fR > 0 and not an odd integer, if \fIx\fR is \(+-0, +0 is returned.
If \fIx\fR is \(+-1 and \fIy\fR is \(+-Inf, and the application was compiled
with the \fBcc\fR compiler driver, NaN is returned. If, however, the
application was compiled with the \fBc99\fR compiler driver and is therefore
-SUSv3-conforming (see \fBstandards\fR(5)), 1.0 is returned.
+SUSv3-conforming (see \fBstandards\fR(7)), 1.0 is returned.
.sp
.LP
For |\fIx\fR| < 1, if \fIy\fR is \(miInf, +Inf is returned.
@@ -248,7 +248,7 @@ return, if \fBerrno\fR is non-zero, an error has occurred. The \fBpowf()\fR and
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -267,9 +267,14 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBexp\fR(3M), \fBfeclearexcept\fR(3M), \fBfetestexcept\fR(3M),
-\fBisnan\fR(3M), \fBmath.h\fR(3HEAD), \fBmatherr\fR(3M), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR math.h (3HEAD),
+.BR exp (3M),
+.BR feclearexcept (3M),
+.BR fetestexcept (3M),
+.BR isnan (3M),
+.BR matherr (3M),
+.BR attributes (7),
+.BR standards (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3m/remainder.3m b/usr/src/man/man3m/remainder.3m
index ba09953665..3e0490aa91 100644
--- a/usr/src/man/man3m/remainder.3m
+++ b/usr/src/man/man3m/remainder.3m
@@ -120,7 +120,7 @@ not set \fBerrno\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -139,5 +139,9 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBabs\fR(3C), \fBdiv\fR(3C), \fBfeclearexcept\fR(3M), \fBfetestexcept\fR(3M),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR abs (3C),
+.BR div (3C),
+.BR feclearexcept (3M),
+.BR fetestexcept (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/remquo.3m b/usr/src/man/man3m/remquo.3m
index 318d2269e8..6f095d6106 100644
--- a/usr/src/man/man3m/remquo.3m
+++ b/usr/src/man/man3m/remquo.3m
@@ -117,7 +117,7 @@ floating point exception flags to detect exceptions.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -136,5 +136,9 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBfeclearexcept\fR(3M), \fBfetestexcept\fR(3M), \fBmath.h\fR(3HEAD),
-\fBremainder\fR(3M), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR math.h (3HEAD),
+.BR feclearexcept (3M),
+.BR fetestexcept (3M),
+.BR remainder (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/rint.3m b/usr/src/man/man3m/rint.3m
index eee791bc5b..1140fbc265 100644
--- a/usr/src/man/man3m/rint.3m
+++ b/usr/src/man/man3m/rint.3m
@@ -96,7 +96,7 @@ If \fIx\fR is \(+-0 or \(+-Inf, \fIx\fR is returned.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -115,6 +115,13 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBabs\fR(3C), \fBceil\fR(3M), \fBfeclearexcept\fR(3M), \fBfetestexcept\fR(3M),
-\fBfloor\fR(3M), \fBisnan\fR(3M), \fBmath.h\fR(3HEAD), \fBnearbyint\fR(3M),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR abs (3C),
+.BR math.h (3HEAD),
+.BR ceil (3M),
+.BR feclearexcept (3M),
+.BR fetestexcept (3M),
+.BR floor (3M),
+.BR isnan (3M),
+.BR nearbyint (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/round.3m b/usr/src/man/man3m/round.3m
index d34aed8d16..a232e02710 100644
--- a/usr/src/man/man3m/round.3m
+++ b/usr/src/man/man3m/round.3m
@@ -85,7 +85,7 @@ If \fIx\fR is \(+-0 or \(+- Inf, \fIx\fR is returned.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -104,5 +104,8 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBfeclearexcept\fR(3M), \fBfetestexcept\fR(3M), \fBmath.h\fR(3HEAD),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR math.h (3HEAD),
+.BR feclearexcept (3M),
+.BR fetestexcept (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/scalb.3m b/usr/src/man/man3m/scalb.3m
index ed038d8f2d..23377a38c7 100644
--- a/usr/src/man/man3m/scalb.3m
+++ b/usr/src/man/man3m/scalb.3m
@@ -170,7 +170,7 @@ tabulates the values to be returned by
.Fn scalb
as specified by SVID3 and XPG3.
See
-.Xr standards 5 .
+.Xr standards 7 .
.
.Sh ERRORS
.
@@ -254,5 +254,5 @@ functions are
.Xr logb 3M ,
.Xr matherr 3M ,
.Xr scalbln 3M ,
-.Xr attributes 5 ,
-.Xr standards 5
+.Xr attributes 7 ,
+.Xr standards 7
diff --git a/usr/src/man/man3m/scalbln.3m b/usr/src/man/man3m/scalbln.3m
index 4b71f3e47d..b520ebb3fd 100644
--- a/usr/src/man/man3m/scalbln.3m
+++ b/usr/src/man/man3m/scalbln.3m
@@ -136,7 +136,7 @@ floating point exception flags to detect exceptions.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -155,5 +155,9 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBfeclearexcept\fR(3M), \fBfetestexcept\fR(3M), \fBmath.h\fR(3HEAD),
-\fBscalb\fR(3M), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR math.h (3HEAD),
+.BR feclearexcept (3M),
+.BR fetestexcept (3M),
+.BR scalb (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/signbit.3m b/usr/src/man/man3m/signbit.3m
index 0b17c88130..d2d15fa42b 100644
--- a/usr/src/man/man3m/signbit.3m
+++ b/usr/src/man/man3m/signbit.3m
@@ -72,7 +72,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -91,6 +91,11 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBfpclassify\fR(3M), \fBisfinite\fR(3M), \fBisinf\fR(3M), \fBisnan\fR(3M),
-\fBisnormal\fR(3M), \fBmath.h\fR(3HEAD), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR math.h (3HEAD),
+.BR fpclassify (3M),
+.BR isfinite (3M),
+.BR isinf (3M),
+.BR isnan (3M),
+.BR isnormal (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/significand.3m b/usr/src/man/man3m/significand.3m
index a422a888af..ff4289c741 100644
--- a/usr/src/man/man3m/significand.3m
+++ b/usr/src/man/man3m/significand.3m
@@ -83,7 +83,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -102,4 +102,6 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBlogb\fR(3M), \fBscalb\fR(3M), \fBattributes\fR(5)
+.BR logb (3M),
+.BR scalb (3M),
+.BR attributes (7)
diff --git a/usr/src/man/man3m/sin.3m b/usr/src/man/man3m/sin.3m
index e195fad587..7d6a4afe21 100644
--- a/usr/src/man/man3m/sin.3m
+++ b/usr/src/man/man3m/sin.3m
@@ -113,7 +113,7 @@ floating point exception flags to detect exceptions.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -132,5 +132,10 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBasin\fR(3M), \fBfeclearexcept\fR(3M), \fBfetestexcept\fR(3M),
-\fBisnan\fR(3M), \fBmath.h\fR(3HEAD), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR math.h (3HEAD),
+.BR asin (3M),
+.BR feclearexcept (3M),
+.BR fetestexcept (3M),
+.BR isnan (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/sincos.3m b/usr/src/man/man3m/sincos.3m
index c177ea54e8..b86877a2b8 100644
--- a/usr/src/man/man3m/sincos.3m
+++ b/usr/src/man/man3m/sincos.3m
@@ -38,7 +38,7 @@ Upon successful completion, these functions return the sine of \fIx\fR in
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -57,4 +57,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBcos\fR(3M), \fBsin\fR(3M), \fBmath.h\fR(3HEAD), \fBattributes\fR(5)
+.BR math.h (3HEAD),
+.BR cos (3M),
+.BR sin (3M),
+.BR attributes (7)
diff --git a/usr/src/man/man3m/sinh.3m b/usr/src/man/man3m/sinh.3m
index f6984a49dc..a4e3680ed7 100644
--- a/usr/src/man/man3m/sinh.3m
+++ b/usr/src/man/man3m/sinh.3m
@@ -128,7 +128,7 @@ and \fBasinhl()\fR functions do not set \fBerrno\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -147,6 +147,13 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBasinh\fR(3M), \fBcosh\fR(3M), \fBfeclearexcept\fR(3M),
-\fBfetestexcept\fR(3M), \fBisnan\fR(3M), \fBmath.h\fR(3HEAD),
-\fBmatherr\fR(3M), \fBtanh\fR(3M), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR math.h (3HEAD),
+.BR asinh (3M),
+.BR cosh (3M),
+.BR feclearexcept (3M),
+.BR fetestexcept (3M),
+.BR isnan (3M),
+.BR matherr (3M),
+.BR tanh (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/sqrt.3m b/usr/src/man/man3m/sqrt.3m
index f57a3fbef9..099bbbb873 100644
--- a/usr/src/man/man3m/sqrt.3m
+++ b/usr/src/man/man3m/sqrt.3m
@@ -115,7 +115,7 @@ and \fBsqrtl()\fR functions do not set \fBerrno\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -134,5 +134,9 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBfeclearexcept\fR(3M), \fBfetestexcept\fR(3M), \fBisnan\fR(3M),
-\fBmath.h\fR(3HEAD), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR math.h (3HEAD),
+.BR feclearexcept (3M),
+.BR fetestexcept (3M),
+.BR isnan (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/tan.3m b/usr/src/man/man3m/tan.3m
index adcb51e8e5..5f4342d3aa 100644
--- a/usr/src/man/man3m/tan.3m
+++ b/usr/src/man/man3m/tan.3m
@@ -118,7 +118,7 @@ floating point exception flags to detect exceptions.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -137,5 +137,10 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBatan\fR(3M), \fBfeclearexcept\fR(3M), \fBfetestexcept\fR(3M),
-\fBisnan\fR(3M), \fBmath.h\fR(3HEAD), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR math.h (3HEAD),
+.BR atan (3M),
+.BR feclearexcept (3M),
+.BR fetestexcept (3M),
+.BR isnan (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/tanh.3m b/usr/src/man/man3m/tanh.3m
index da3d868899..7decc6d8f8 100644
--- a/usr/src/man/man3m/tanh.3m
+++ b/usr/src/man/man3m/tanh.3m
@@ -91,7 +91,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -110,5 +110,9 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBatanh\fR(3M), \fBisnan\fR(3M), \fBmath.h\fR(3HEAD), \fBtan\fR(3M),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR math.h (3HEAD),
+.BR atanh (3M),
+.BR isnan (3M),
+.BR tan (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/tgamma.3m b/usr/src/man/man3m/tgamma.3m
index bfffa231e4..dcd5d24110 100644
--- a/usr/src/man/man3m/tgamma.3m
+++ b/usr/src/man/man3m/tgamma.3m
@@ -154,7 +154,7 @@ floating point exception flags to detect exceptions.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -173,5 +173,9 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBfeclearexcept\fR(3M), \fBfetestexcept\fR(3M), \fBlgamma\fR(3M),
-\fBmath.h\fR(3HEAD), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR math.h (3HEAD),
+.BR feclearexcept (3M),
+.BR fetestexcept (3M),
+.BR lgamma (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/trunc.3m b/usr/src/man/man3m/trunc.3m
index 37155456a2..148435b895 100644
--- a/usr/src/man/man3m/trunc.3m
+++ b/usr/src/man/man3m/trunc.3m
@@ -87,7 +87,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -106,4 +106,6 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBmath.h\fR(3HEAD), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR math.h (3HEAD),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3m/y0.3m b/usr/src/man/man3m/y0.3m
index 58ce1df54c..7a21d239df 100644
--- a/usr/src/man/man3m/y0.3m
+++ b/usr/src/man/man3m/y0.3m
@@ -138,7 +138,7 @@ floating point exception flags to detect exceptions.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -162,5 +162,11 @@ The \fBy0()\fR, \fBy1()\fR, and \fByn()\fR functions are Standard. The
.SH SEE ALSO
.sp
.LP
-\fBisnan\fR(3M), \fBfeclearexcept\fR(3M), \fBfetestexcept\fR(3M), \fBj0\fR(3M),
-\fBmath.h\fR(3HEAD), \fBmatherr\fR(3M), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR math.h (3HEAD),
+.BR feclearexcept (3M),
+.BR fetestexcept (3M),
+.BR isnan (3M),
+.BR j0 (3M),
+.BR matherr (3M),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3mail/maillock.3mail b/usr/src/man/man3mail/maillock.3mail
index f4fd267ee4..c5228ed5df 100644
--- a/usr/src/man/man3mail/maillock.3mail
+++ b/usr/src/man/man3mail/maillock.3mail
@@ -89,7 +89,7 @@ user mailbox lockfiles
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -105,7 +105,8 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBlibmail\fR(3LIB), \fBattributes\fR(5)
+.BR libmail (3LIB),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3malloc/bsdmalloc.3malloc b/usr/src/man/man3malloc/bsdmalloc.3malloc
index 2afb35edd1..1d5d1f9ed6 100644
--- a/usr/src/man/man3malloc/bsdmalloc.3malloc
+++ b/usr/src/man/man3malloc/bsdmalloc.3malloc
@@ -99,8 +99,11 @@ Comparative features of the various allocation libraries can be found in the
.SH SEE ALSO
.sp
.LP
-\fBbrk\fR(2), \fBmalloc\fR(3C), \fBmalloc\fR(3MALLOC),
-\fBmapmalloc\fR(3MALLOC), \fBumem_alloc\fR(3MALLOC)
+.BR brk (2),
+.BR malloc (3C),
+.BR malloc (3MALLOC),
+.BR mapmalloc (3MALLOC),
+.BR umem_alloc (3MALLOC)
.SH WARNINGS
.sp
.LP
diff --git a/usr/src/man/man3malloc/malloc.3malloc b/usr/src/man/man3malloc/malloc.3malloc
index f715ef9279..b0abf2b7bf 100644
--- a/usr/src/man/man3malloc/malloc.3malloc
+++ b/usr/src/man/man3malloc/malloc.3malloc
@@ -245,7 +245,7 @@ Comparative features of the various allocation libraries can be found in the
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -261,6 +261,12 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBbrk\fR(2), \fBbsdmalloc\fR(3MALLOC), \fBlibmtmalloc\fR(3LIB),
-\fBmalloc\fR(3C), \fBmapmalloc\fR(3MALLOC), \fBmtmalloc\fR(3MALLOC),
-\fBumem_alloc\fR(3MALLOC), \fBwatchmalloc\fR(3MALLOC), \fBattributes\fR(5)
+.BR brk (2),
+.BR malloc (3C),
+.BR libmtmalloc (3LIB),
+.BR bsdmalloc (3MALLOC),
+.BR mapmalloc (3MALLOC),
+.BR mtmalloc (3MALLOC),
+.BR umem_alloc (3MALLOC),
+.BR watchmalloc (3MALLOC),
+.BR attributes (7)
diff --git a/usr/src/man/man3malloc/mapmalloc.3malloc b/usr/src/man/man3malloc/mapmalloc.3malloc
index 969296d473..8552448764 100644
--- a/usr/src/man/man3malloc/mapmalloc.3malloc
+++ b/usr/src/man/man3malloc/mapmalloc.3malloc
@@ -95,7 +95,7 @@ or \fIelsize\fR is 0, a unique pointer to the arena is returned.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -111,5 +111,9 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBbrk\fR(2), \fBgetrlimit\fR(2), \fBmmap\fR(2), \fBrealloc\fR(3C),
-\fBmalloc\fR(3MALLOC), \fBattributes\fR(5)
+.BR brk (2),
+.BR getrlimit (2),
+.BR mmap (2),
+.BR realloc (3C),
+.BR malloc (3MALLOC),
+.BR attributes (7)
diff --git a/usr/src/man/man3malloc/mtmalloc.3malloc b/usr/src/man/man3malloc/mtmalloc.3malloc
index 1ca7a31fd8..b1206eae20 100644
--- a/usr/src/man/man3malloc/mtmalloc.3malloc
+++ b/usr/src/man/man3malloc/mtmalloc.3malloc
@@ -200,7 +200,7 @@ Comparative features of the various allocation libraries can be found in the
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -216,10 +216,17 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBbrk\fR(2), \fBgetrlimit\fR(2), \fBbsdmalloc\fR(3MALLOC), \fBdlopen\fR(3C),
-\fBmalloc\fR(3C), \fBmalloc\fR(3MALLOC), \fBmapmalloc\fR(3MALLOC),
-\fBsignal.h\fR(3HEAD), \fBumem_alloc\fR(3MALLOC), \fBwatchmalloc\fR(3MALLOC),
-\fBattributes\fR(5)
+.BR brk (2),
+.BR getrlimit (2),
+.BR dlopen (3C),
+.BR malloc (3C),
+.BR signal.h (3HEAD),
+.BR bsdmalloc (3MALLOC),
+.BR malloc (3MALLOC),
+.BR mapmalloc (3MALLOC),
+.BR umem_alloc (3MALLOC),
+.BR watchmalloc (3MALLOC),
+.BR attributes (7)
.SH WARNINGS
.sp
.LP
diff --git a/usr/src/man/man3malloc/umem_alloc.3malloc b/usr/src/man/man3malloc/umem_alloc.3malloc
index 4ef98da14f..7bdf3a862a 100644
--- a/usr/src/man/man3malloc/umem_alloc.3malloc
+++ b/usr/src/man/man3malloc/umem_alloc.3malloc
@@ -349,7 +349,7 @@ if (status == NULL) {
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -369,15 +369,25 @@ Standard See below.
.sp
.LP
For \fBmalloc()\fR, \fBcalloc()\fR, \fBfree()\fR, \fBrealloc()\fR, and
-\fBvalloc()\fR, see \fBstandards\fR(5).
+\fBvalloc()\fR, see \fBstandards\fR(7).
.SH SEE ALSO
.LP
-\fBexit\fR(2), \fBmmap\fR(2), \fBsbrk\fR(2), \fBbsdmalloc\fR(3MALLOC),
-\fBlibumem\fR(3LIB), \fBlongjmp\fR(3C), \fBmalloc\fR(3C),
-\fBmalloc\fR(3MALLOC), \fBmapmalloc\fR(3MALLOC), \fBpthread_exit\fR(3C),
-\fBthr_exit\fR(3C), \fBumem_cache_create\fR(3MALLOC),
-\fBumem_debug\fR(3MALLOC), \fBwatchmalloc\fR(3MALLOC), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR exit (2),
+.BR mmap (2),
+.BR sbrk (2),
+.BR longjmp (3C),
+.BR malloc (3C),
+.BR pthread_exit (3C),
+.BR thr_exit (3C),
+.BR libumem (3LIB),
+.BR bsdmalloc (3MALLOC),
+.BR malloc (3MALLOC),
+.BR mapmalloc (3MALLOC),
+.BR umem_cache_create (3MALLOC),
+.BR umem_debug (3MALLOC),
+.BR watchmalloc (3MALLOC),
+.BR attributes (7),
+.BR standards (7)
.sp
.LP
\fIModular Debugger Guide\fR:
diff --git a/usr/src/man/man3malloc/umem_cache_create.3malloc b/usr/src/man/man3malloc/umem_cache_create.3malloc
index 4d64b744b3..75d170fa69 100644
--- a/usr/src/man/man3malloc/umem_cache_create.3malloc
+++ b/usr/src/man/man3malloc/umem_cache_create.3malloc
@@ -542,7 +542,7 @@ umem_cache_free(my_obj_8k_cache, my_obj_8k);
See the \fBEXAMPLES\fR section of \fBumem_alloc\fR(3MALLOC) for examples
involving the \fBUMEM_NOFAIL\fR flag.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -558,9 +558,15 @@ MT-Level MT-Safe
.TE
.SH SEE ALSO
-\fBsetcontext\fR(2), \fBatexit\fR(3C), \fBlibumem\fR(3LIB), \fBlongjmp\fR(3C),
-\fBswapcontext\fR(3C), \fBthr_exit\fR(3C), \fBumem_alloc\fR(3MALLOC),
-\fBumem_debug\fR(3MALLOC), \fBattributes\fR(5)
+.BR setcontext (2),
+.BR atexit (3C),
+.BR longjmp (3C),
+.BR swapcontext (3C),
+.BR thr_exit (3C),
+.BR libumem (3LIB),
+.BR umem_alloc (3MALLOC),
+.BR umem_debug (3MALLOC),
+.BR attributes (7)
.sp
.LP
Bonwick, Jeff, "The Slab Allocator: An Object-Caching Kernel Memory Allocator",
diff --git a/usr/src/man/man3malloc/umem_debug.3malloc b/usr/src/man/man3malloc/umem_debug.3malloc
index 411d15e6f0..663186b870 100644
--- a/usr/src/man/man3malloc/umem_debug.3malloc
+++ b/usr/src/man/man3malloc/umem_debug.3malloc
@@ -171,7 +171,7 @@ cannot be allocated.
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -187,9 +187,12 @@ MT-Level MT-Safe
.TE
.SH SEE ALSO
-\fBmdb\fR(1), \fBabort\fR(3C), \fBsignal\fR(3C),
-\fBumem_cache_create\fR(3MALLOC), \fBumem_setmtbf\fR(3MALLOC),
-\fBattributes\fR(5)
+.BR mdb (1),
+.BR abort (3C),
+.BR signal (3C),
+.BR umem_cache_create (3MALLOC),
+.BR umem_setmtbf (3MALLOC),
+.BR attributes (7)
.sp
.LP
\fIModular Debugger Guide\fR:
diff --git a/usr/src/man/man3malloc/watchmalloc.3malloc b/usr/src/man/man3malloc/watchmalloc.3malloc
index 6f8407b019..abcffd30b1 100644
--- a/usr/src/man/man3malloc/watchmalloc.3malloc
+++ b/usr/src/man/man3malloc/watchmalloc.3malloc
@@ -58,7 +58,7 @@ The collection of \fBmalloc()\fR functions in this shared object are an
optional replacement for the standard versions of the same functions in the
system C library. See \fBmalloc\fR(3C). They provide a more strict interface
than the standard versions and enable enforcement of the interface through the
-watchpoint facility of \fB/proc\fR. See \fBproc\fR(4).
+watchpoint facility of \fB/proc\fR. See \fBproc\fR(5).
.sp
.LP
Any dynamically linked application can be run with these functions in place of
@@ -205,7 +205,7 @@ application is statically linked with respect to its \fBmalloc()\fR functions.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -221,7 +221,16 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBproc\fR(1), \fBbsdmalloc\fR(3MALLOC), \fBcalloc\fR(3C), \fBfree\fR(3C),
-\fBmalloc\fR(3C), \fBmalloc\fR(3MALLOC), \fBmapmalloc\fR(3MALLOC),
-\fBmemalign\fR(3C), \fBrealloc\fR(3C), \fBvalloc\fR(3C),
-\fBlibmapmalloc\fR(3LIB), \fBproc\fR(4), \fBattributes\fR(5)
+.BR proc (1),
+.BR calloc (3C),
+.BR free (3C),
+.BR malloc (3C),
+.BR memalign (3C),
+.BR realloc (3C),
+.BR valloc (3C),
+.BR libmapmalloc (3LIB),
+.BR bsdmalloc (3MALLOC),
+.BR malloc (3MALLOC),
+.BR mapmalloc (3MALLOC),
+.BR proc (5),
+.BR attributes (7)
diff --git a/usr/src/man/man3mp/mp.3mp b/usr/src/man/man3mp/mp.3mp
index 10e286ff3b..2fb4f5fc77 100644
--- a/usr/src/man/man3mp/mp.3mp
+++ b/usr/src/man/man3mp/mp.3mp
@@ -144,7 +144,7 @@ shared object
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -160,7 +160,10 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBexp\fR(3M), \fBmalloc\fR(3C), \fBlibmp\fR(3LIB), \fBattributes\fR(5)
+.BR malloc (3C),
+.BR libmp (3LIB),
+.BR exp (3M),
+.BR attributes (7)
.SH DIAGNOSTICS
.sp
.LP
diff --git a/usr/src/man/man3mpapi/MP_AssignLogicalUnitToTPG.3mpapi b/usr/src/man/man3mpapi/MP_AssignLogicalUnitToTPG.3mpapi
index 17446a801f..db3352f61b 100644
--- a/usr/src/man/man3mpapi/MP_AssignLogicalUnitToTPG.3mpapi
+++ b/usr/src/man/man3mpapi/MP_AssignLogicalUnitToTPG.3mpapi
@@ -115,7 +115,7 @@ The operation is successful.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -135,5 +135,7 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibMPAPI\fR(3LIB), \fBMP_GetAssociatedTPGOidList\fR(3MPAPI),
-\fBMP_GetMPLuOidListFromTPG\fR(3MPAPI), \fBattributes\fR(5)
+.BR libMPAPI (3LIB),
+.BR MP_GetAssociatedTPGOidList (3MPAPI),
+.BR MP_GetMPLuOidListFromTPG (3MPAPI),
+.BR attributes (7)
diff --git a/usr/src/man/man3mpapi/MP_CancelOverridePath.3mpapi b/usr/src/man/man3mpapi/MP_CancelOverridePath.3mpapi
index 672a37cb2f..7c0cdf1a6c 100644
--- a/usr/src/man/man3mpapi/MP_CancelOverridePath.3mpapi
+++ b/usr/src/man/man3mpapi/MP_CancelOverridePath.3mpapi
@@ -95,7 +95,7 @@ The API is not supported.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -115,7 +115,9 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibMPAPI\fR(3LIB), \fBMP_SetOverridePath\fR(3MPAPI), \fBattributes\fR(5)
+.BR libMPAPI (3LIB),
+.BR MP_SetOverridePath (3MPAPI),
+.BR attributes (7)
.sp
.LP
\fIMultipath Management API Version 1.0\fR
diff --git a/usr/src/man/man3mpapi/MP_CompareOIDs.3mpapi b/usr/src/man/man3mpapi/MP_CompareOIDs.3mpapi
index 75a218d244..8e8ab24227 100644
--- a/usr/src/man/man3mpapi/MP_CompareOIDs.3mpapi
+++ b/usr/src/man/man3mpapi/MP_CompareOIDs.3mpapi
@@ -63,7 +63,7 @@ The two object IDs refer to the same object.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -83,7 +83,8 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibMPAPI\fR(3LIB), \fBattributes\fR(5)
+.BR libMPAPI (3LIB),
+.BR attributes (7)
.sp
.LP
\fIMultipath Management API Version 1.0\fR
diff --git a/usr/src/man/man3mpapi/MP_DeregisterForObjectPropertyChanges.3mpapi b/usr/src/man/man3mpapi/MP_DeregisterForObjectPropertyChanges.3mpapi
index ab6c4b6c61..a3ad2c64b3 100644
--- a/usr/src/man/man3mpapi/MP_DeregisterForObjectPropertyChanges.3mpapi
+++ b/usr/src/man/man3mpapi/MP_DeregisterForObjectPropertyChanges.3mpapi
@@ -127,7 +127,7 @@ The \fIpClientFn\fR parameter deregistration is not possible.
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -145,8 +145,9 @@ MT-Level Safe
.TE
.SH SEE ALSO
-\fBlibMPAPI\fR(3LIB), \fBMP_RegisterForObjectPropertyChanges\fR(3MPAPI),
-\fBattributes\fR(5)
+.BR libMPAPI (3LIB),
+.BR MP_RegisterForObjectPropertyChanges (3MPAPI),
+.BR attributes (7)
.sp
.LP
\fIMultipath Management API Version 1.0\fR
diff --git a/usr/src/man/man3mpapi/MP_DeregisterForObjectVisibilityChanges.3mpapi b/usr/src/man/man3mpapi/MP_DeregisterForObjectVisibilityChanges.3mpapi
index 7b1b5acfd3..d1a418608e 100644
--- a/usr/src/man/man3mpapi/MP_DeregisterForObjectVisibilityChanges.3mpapi
+++ b/usr/src/man/man3mpapi/MP_DeregisterForObjectVisibilityChanges.3mpapi
@@ -126,7 +126,7 @@ The \fIpClientFn\fR parameter deregistration is not possible at this time.
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -144,8 +144,9 @@ MT-Level Safe
.TE
.SH SEE ALSO
-\fBlibMPAPI\fR(3LIB), \fBMP_RegisterForObjectVisibilityChanges\fR(3MPAPI),
-\fBattributes\fR(5)
+.BR libMPAPI (3LIB),
+.BR MP_RegisterForObjectVisibilityChanges (3MPAPI),
+.BR attributes (7)
.sp
.LP
\fIMultipath Management API Version 1.0\fR
diff --git a/usr/src/man/man3mpapi/MP_DeregisterPlugin.3mpapi b/usr/src/man/man3mpapi/MP_DeregisterPlugin.3mpapi
index e563547f34..72818f43b5 100644
--- a/usr/src/man/man3mpapi/MP_DeregisterPlugin.3mpapi
+++ b/usr/src/man/man3mpapi/MP_DeregisterPlugin.3mpapi
@@ -87,7 +87,7 @@ MPAPI library configuration file
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -105,8 +105,10 @@ MT-Level Safe
.TE
.SH SEE ALSO
-\fBlibMPAPI\fR(3LIB), \fBMP_RegisterPlugin\fR(3MPAPI), \fBmpapi.conf\fR(4),
-\fBattributes\fR(5)
+.BR libMPAPI (3LIB),
+.BR MP_RegisterPlugin (3MPAPI),
+.BR mpapi.conf (5),
+.BR attributes (7)
.sp
.LP
\fIMultipath Management API Version 1.0\fR
diff --git a/usr/src/man/man3mpapi/MP_DisableAutoFailback.3mpapi b/usr/src/man/man3mpapi/MP_DisableAutoFailback.3mpapi
index 92bb3c2afb..8796c4ec8c 100644
--- a/usr/src/man/man3mpapi/MP_DisableAutoFailback.3mpapi
+++ b/usr/src/man/man3mpapi/MP_DisableAutoFailback.3mpapi
@@ -80,7 +80,7 @@ The API is not supported.
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -98,7 +98,9 @@ MT-Level Safe
.TE
.SH SEE ALSO
-\fBlibMPAPI\fR(3LIB), \fBMP_EnableAutoFailback\fR(3MPAPI), \fBattributes\fR(5)
+.BR libMPAPI (3LIB),
+.BR MP_EnableAutoFailback (3MPAPI),
+.BR attributes (7)
.sp
.LP
\fIMultipath Management API Version 1.0\fR
diff --git a/usr/src/man/man3mpapi/MP_DisableAutoProbing.3mpapi b/usr/src/man/man3mpapi/MP_DisableAutoProbing.3mpapi
index 42304f17d4..0d03c4d8a9 100644
--- a/usr/src/man/man3mpapi/MP_DisableAutoProbing.3mpapi
+++ b/usr/src/man/man3mpapi/MP_DisableAutoProbing.3mpapi
@@ -80,7 +80,7 @@ The API is not supported.
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -98,7 +98,9 @@ MT-Level Safe
.TE
.SH SEE ALSO
-\fBlibMPAPI\fR(3LIB), \fBMP_EnableAutoProbing\fR(3MPAPI), \fBattributes\fR(5)
+.BR libMPAPI (3LIB),
+.BR MP_EnableAutoProbing (3MPAPI),
+.BR attributes (7)
.sp
.LP
\fIMultipath Management API Version 1.0\fR
diff --git a/usr/src/man/man3mpapi/MP_DisablePath.3mpapi b/usr/src/man/man3mpapi/MP_DisablePath.3mpapi
index 28ca0e33ec..807edf7260 100644
--- a/usr/src/man/man3mpapi/MP_DisablePath.3mpapi
+++ b/usr/src/man/man3mpapi/MP_DisablePath.3mpapi
@@ -113,7 +113,7 @@ The operation is successful.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -133,7 +133,9 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibMPAPI\fR(3LIB), \fBMP_EnablePath\fR(3MPAPI), \fBattributes\fR(5)
+.BR libMPAPI (3LIB),
+.BR MP_EnablePath (3MPAPI),
+.BR attributes (7)
.sp
.LP
\fIMultipath Management API Version 1.0\fR
diff --git a/usr/src/man/man3mpapi/MP_EnableAutoFailback.3mpapi b/usr/src/man/man3mpapi/MP_EnableAutoFailback.3mpapi
index 0633159b62..1923f4fa52 100644
--- a/usr/src/man/man3mpapi/MP_EnableAutoFailback.3mpapi
+++ b/usr/src/man/man3mpapi/MP_EnableAutoFailback.3mpapi
@@ -79,7 +79,7 @@ The API is not supported.
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -97,7 +97,9 @@ MT-Level Safe
.TE
.SH SEE ALSO
-\fBlibMPAPI\fR(3LIB), \fBMP_DisableAutoFailback\fR(3MPAPI), \fBattributes\fR(5)
+.BR libMPAPI (3LIB),
+.BR MP_DisableAutoFailback (3MPAPI),
+.BR attributes (7)
.sp
.LP
\fIMultipath Management API Version 1.0\fR
diff --git a/usr/src/man/man3mpapi/MP_EnableAutoProbing.3mpapi b/usr/src/man/man3mpapi/MP_EnableAutoProbing.3mpapi
index 9561e29d05..6cdf4db393 100644
--- a/usr/src/man/man3mpapi/MP_EnableAutoProbing.3mpapi
+++ b/usr/src/man/man3mpapi/MP_EnableAutoProbing.3mpapi
@@ -86,7 +86,7 @@ The API is not supported.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -106,7 +106,9 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibMPAPI\fR(3LIB), \fBMP_DisableAutoProbing\fR(3MPAPI), \fBattributes\fR(5)
+.BR libMPAPI (3LIB),
+.BR MP_DisableAutoProbing (3MPAPI),
+.BR attributes (7)
.sp
.LP
\fIMultipath Management API Version 1.0\fR
diff --git a/usr/src/man/man3mpapi/MP_EnablePath.3mpapi b/usr/src/man/man3mpapi/MP_EnablePath.3mpapi
index d566be1797..e005065aa2 100644
--- a/usr/src/man/man3mpapi/MP_EnablePath.3mpapi
+++ b/usr/src/man/man3mpapi/MP_EnablePath.3mpapi
@@ -100,7 +100,7 @@ The operation is successful.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -120,7 +120,9 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibMPAPI\fR(3LIB), \fBMP_DisablePath\fR(3MPAPI), \fBattributes\fR(5)
+.BR libMPAPI (3LIB),
+.BR MP_DisablePath (3MPAPI),
+.BR attributes (7)
.sp
.LP
\fIMultipath Management API Version 1.0\fR
diff --git a/usr/src/man/man3mpapi/MP_FreeOidList.3mpapi b/usr/src/man/man3mpapi/MP_FreeOidList.3mpapi
index 49b9c70fea..9911fdf1cb 100644
--- a/usr/src/man/man3mpapi/MP_FreeOidList.3mpapi
+++ b/usr/src/man/man3mpapi/MP_FreeOidList.3mpapi
@@ -59,7 +59,7 @@ The operation is successful.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -79,7 +79,8 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibMPAPI\fR(3LIB), \fBattributes\fR(5)
+.BR libMPAPI (3LIB),
+.BR attributes (7)
.sp
.LP
\fIMultipath Management API Version 1.0\fR
diff --git a/usr/src/man/man3mpapi/MP_GetAssociatedPathOidList.3mpapi b/usr/src/man/man3mpapi/MP_GetAssociatedPathOidList.3mpapi
index 241e2df9e7..91f40d9be1 100644
--- a/usr/src/man/man3mpapi/MP_GetAssociatedPathOidList.3mpapi
+++ b/usr/src/man/man3mpapi/MP_GetAssociatedPathOidList.3mpapi
@@ -95,7 +95,7 @@ The operation is successful.
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -113,8 +113,9 @@ MT-Level Safe
.TE
.SH SEE ALSO
-\fBlibMPAPI\fR(3LIB), \fBMP_GetPathLogicalUnitProperties\fR(3MPAPI),
-\fBattributes\fR(5)
+.BR libMPAPI (3LIB),
+.BR MP_GetPathLogicalUnitProperties (3MPAPI),
+.BR attributes (7)
.sp
.LP
\fIMultipath Management API Version 1.0\fR
diff --git a/usr/src/man/man3mpapi/MP_GetAssociatedPluginOid.3mpapi b/usr/src/man/man3mpapi/MP_GetAssociatedPluginOid.3mpapi
index a938db5da8..52c23bf39c 100644
--- a/usr/src/man/man3mpapi/MP_GetAssociatedPluginOid.3mpapi
+++ b/usr/src/man/man3mpapi/MP_GetAssociatedPluginOid.3mpapi
@@ -81,7 +81,7 @@ The \fIoid\fR owner ID is invalid.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -101,7 +101,8 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibMPAPI\fR(3LIB), \fBattributes\fR(5)
+.BR libMPAPI (3LIB),
+.BR attributes (7)
.sp
.LP
\fIMultipath Management API Version 1.0\fR
diff --git a/usr/src/man/man3mpapi/MP_GetAssociatedTPGOidList.3mpapi b/usr/src/man/man3mpapi/MP_GetAssociatedTPGOidList.3mpapi
index 049ca03bde..8e34cb9c8a 100644
--- a/usr/src/man/man3mpapi/MP_GetAssociatedTPGOidList.3mpapi
+++ b/usr/src/man/man3mpapi/MP_GetAssociatedTPGOidList.3mpapi
@@ -116,7 +116,7 @@ A memory allocation failure occurred.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -136,8 +136,9 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibMPAPI\fR(3LIB), \fBMP_GetTargetPortGroupProperties\fR(3MPAPI),
-\fBattributes\fR(5)
+.BR libMPAPI (3LIB),
+.BR MP_GetTargetPortGroupProperties (3MPAPI),
+.BR attributes (7)
.sp
.LP
\fIMultipath Management API Version 1.0\fR
diff --git a/usr/src/man/man3mpapi/MP_GetDeviceProductOidList.3mpapi b/usr/src/man/man3mpapi/MP_GetDeviceProductOidList.3mpapi
index a9ebe89d85..6fd8bc4f3f 100644
--- a/usr/src/man/man3mpapi/MP_GetDeviceProductOidList.3mpapi
+++ b/usr/src/man/man3mpapi/MP_GetDeviceProductOidList.3mpapi
@@ -116,7 +116,7 @@ The API is not supported.
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -134,8 +134,9 @@ MT-Level Safe
.TE
.SH SEE ALSO
-\fBlibMPAPI\fR(3LIB), \fBMP_GetDeviceProductProperties\fR(3MPAPI),
-\fBattributes\fR(5)
+.BR libMPAPI (3LIB),
+.BR MP_GetDeviceProductProperties (3MPAPI),
+.BR attributes (7)
.sp
.LP
\fIMultipath Management API Version 1.0\fR
diff --git a/usr/src/man/man3mpapi/MP_GetDeviceProductProperties.3mpapi b/usr/src/man/man3mpapi/MP_GetDeviceProductProperties.3mpapi
index 75fc2f7c4b..79ed6c0f13 100644
--- a/usr/src/man/man3mpapi/MP_GetDeviceProductProperties.3mpapi
+++ b/usr/src/man/man3mpapi/MP_GetDeviceProductProperties.3mpapi
@@ -104,7 +104,7 @@ The implementation does not support the API.
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -122,8 +122,9 @@ MT-Level Safe
.TE
.SH SEE ALSO
-\fBlibMPAPI\fR(3LIB), \fBMP_GetDeviceProductOidList\fR(3MPAPI),
-\fBattributes\fR(5)
+.BR libMPAPI (3LIB),
+.BR MP_GetDeviceProductOidList (3MPAPI),
+.BR attributes (7)
.sp
.LP
\fIMultipath Management API Version 1.0\fR
diff --git a/usr/src/man/man3mpapi/MP_GetInitiatorPortOidList.3mpapi b/usr/src/man/man3mpapi/MP_GetInitiatorPortOidList.3mpapi
index b1475dc32b..5a00f40e96 100644
--- a/usr/src/man/man3mpapi/MP_GetInitiatorPortOidList.3mpapi
+++ b/usr/src/man/man3mpapi/MP_GetInitiatorPortOidList.3mpapi
@@ -96,7 +96,7 @@ A memory allocation failure occurred.
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -114,8 +114,9 @@ MT-Level Safe
.TE
.SH SEE ALSO
-\fBlibMPAPI\fR(3LIB), \fBMP_GetInitiatorPortProperties\fR(3MPAPI),
-\fBattributes\fR(5)
+.BR libMPAPI (3LIB),
+.BR MP_GetInitiatorPortProperties (3MPAPI),
+.BR attributes (7)
.sp
.LP
\fIMultipath Management API Version 1.0\fR
diff --git a/usr/src/man/man3mpapi/MP_GetInitiatorPortProperties.3mpapi b/usr/src/man/man3mpapi/MP_GetInitiatorPortProperties.3mpapi
index 7c9d265abf..1dd8d21aac 100644
--- a/usr/src/man/man3mpapi/MP_GetInitiatorPortProperties.3mpapi
+++ b/usr/src/man/man3mpapi/MP_GetInitiatorPortProperties.3mpapi
@@ -90,7 +90,7 @@ The operation is successful.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -110,8 +110,9 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibMPAPI\fR(3LIB), \fBMP_GetInitiatorPortOidList\fR(3MPAPI),
-\fBattributes\fR(5)
+.BR libMPAPI (3LIB),
+.BR MP_GetInitiatorPortOidList (3MPAPI),
+.BR attributes (7)
.sp
.LP
\fIMultipath Management API Version 1.0\fR
diff --git a/usr/src/man/man3mpapi/MP_GetLibraryProperties.3mpapi b/usr/src/man/man3mpapi/MP_GetLibraryProperties.3mpapi
index 954f9be80c..1a192e32c3 100644
--- a/usr/src/man/man3mpapi/MP_GetLibraryProperties.3mpapi
+++ b/usr/src/man/man3mpapi/MP_GetLibraryProperties.3mpapi
@@ -57,7 +57,7 @@ The operation is successful.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -77,7 +77,8 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibMPAPI\fR(3LIB), \fBattributes\fR(5)
+.BR libMPAPI (3LIB),
+.BR attributes (7)
.sp
.LP
\fIMultipath Management API Version 1.0\fR
diff --git a/usr/src/man/man3mpapi/MP_GetMPLogicalUnitProperties.3mpapi b/usr/src/man/man3mpapi/MP_GetMPLogicalUnitProperties.3mpapi
index f2d6b13d69..32b0e62d39 100644
--- a/usr/src/man/man3mpapi/MP_GetMPLogicalUnitProperties.3mpapi
+++ b/usr/src/man/man3mpapi/MP_GetMPLogicalUnitProperties.3mpapi
@@ -91,7 +91,7 @@ The operation is successful.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -111,8 +111,10 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibMPAPI\fR(3LIB), \fBMP_GetMPLuOidListFromTPG\fR(3MPAPI),
-\fBMP_GetMultipathLus\fR(3MPAPI), \fBattributes\fR(5)
+.BR libMPAPI (3LIB),
+.BR MP_GetMPLuOidListFromTPG (3MPAPI),
+.BR MP_GetMultipathLus (3MPAPI),
+.BR attributes (7)
.sp
.LP
\fIMultipath Management API Version 1.0\fR
diff --git a/usr/src/man/man3mpapi/MP_GetMPLuOidListFromTPG.3mpapi b/usr/src/man/man3mpapi/MP_GetMPLuOidListFromTPG.3mpapi
index b8bd4a1e62..46f91e515c 100644
--- a/usr/src/man/man3mpapi/MP_GetMPLuOidListFromTPG.3mpapi
+++ b/usr/src/man/man3mpapi/MP_GetMPLuOidListFromTPG.3mpapi
@@ -109,7 +109,7 @@ A memory allocation failure occurred.
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -127,8 +127,9 @@ MT-Level Safe
.TE
.SH SEE ALSO
-\fBlibMPAPI\fR(3LIB), \fBMP_GetMPLogicalUnitProperties\fR(3MPAPI),
-\fBattributes\fR(5)
+.BR libMPAPI (3LIB),
+.BR MP_GetMPLogicalUnitProperties (3MPAPI),
+.BR attributes (7)
.sp
.LP
\fIMultipath Management API Version 1.0\fR
diff --git a/usr/src/man/man3mpapi/MP_GetMultipathLus.3mpapi b/usr/src/man/man3mpapi/MP_GetMultipathLus.3mpapi
index c897973dad..e838f91f53 100644
--- a/usr/src/man/man3mpapi/MP_GetMultipathLus.3mpapi
+++ b/usr/src/man/man3mpapi/MP_GetMultipathLus.3mpapi
@@ -114,7 +114,7 @@ A memory allocation failure occurred.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -134,8 +134,9 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibMPAPI\fR(3LIB), \fBMP_GetMPLogicalUnitProperties\fR(3MPAPI),
-\fBattributes\fR(5)
+.BR libMPAPI (3LIB),
+.BR MP_GetMPLogicalUnitProperties (3MPAPI),
+.BR attributes (7)
.sp
.LP
\fIMultipath Management API Version 1.0\fR
diff --git a/usr/src/man/man3mpapi/MP_GetObjectType.3mpapi b/usr/src/man/man3mpapi/MP_GetObjectType.3mpapi
index abb270371b..1ccf49d3d4 100644
--- a/usr/src/man/man3mpapi/MP_GetObjectType.3mpapi
+++ b/usr/src/man/man3mpapi/MP_GetObjectType.3mpapi
@@ -83,7 +83,7 @@ The operation is successful.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -103,8 +103,9 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibMPAPI\fR(3LIB), \fBMP_RegisterForObjectVisibilityChanges\fR(3MPAPI),
-\fBattributes\fR(5)
+.BR libMPAPI (3LIB),
+.BR MP_RegisterForObjectVisibilityChanges (3MPAPI),
+.BR attributes (7)
.sp
.LP
\fIMultipath Management API Version 1.0\fR
diff --git a/usr/src/man/man3mpapi/MP_GetPathLogicalUnitProperties.3mpapi b/usr/src/man/man3mpapi/MP_GetPathLogicalUnitProperties.3mpapi
index 9fa2aecdc0..c2ee787194 100644
--- a/usr/src/man/man3mpapi/MP_GetPathLogicalUnitProperties.3mpapi
+++ b/usr/src/man/man3mpapi/MP_GetPathLogicalUnitProperties.3mpapi
@@ -90,7 +90,7 @@ The operation is successful.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -110,8 +110,9 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibMPAPI\fR(3LIB), \fBMP_GetAssociatedPathOidList\fR(3MPAPI),
-\fBattributes\fR(5)
+.BR libMPAPI (3LIB),
+.BR MP_GetAssociatedPathOidList (3MPAPI),
+.BR attributes (7)
.sp
.LP
\fIMultipath Management API Version 1.0\fR
diff --git a/usr/src/man/man3mpapi/MP_GetPluginOidList.3mpapi b/usr/src/man/man3mpapi/MP_GetPluginOidList.3mpapi
index 17e960e729..6625aafa67 100644
--- a/usr/src/man/man3mpapi/MP_GetPluginOidList.3mpapi
+++ b/usr/src/man/man3mpapi/MP_GetPluginOidList.3mpapi
@@ -84,7 +84,7 @@ A memory allocation failure occurred.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -104,8 +104,10 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibMPAPI\fR(3LIB), \fBMP_FreeOidList\fR(3MPAPI),
-\fBMP_GetPluginProperties\fR(3MPAPI), \fBattributes\fR(5)
+.BR libMPAPI (3LIB),
+.BR MP_FreeOidList (3MPAPI),
+.BR MP_GetPluginProperties (3MPAPI),
+.BR attributes (7)
.sp
.LP
\fIMultipath Management API Version 1.0\fR
diff --git a/usr/src/man/man3mpapi/MP_GetPluginProperties.3mpapi b/usr/src/man/man3mpapi/MP_GetPluginProperties.3mpapi
index 6bf2eb83fa..61c695f105 100644
--- a/usr/src/man/man3mpapi/MP_GetPluginProperties.3mpapi
+++ b/usr/src/man/man3mpapi/MP_GetPluginProperties.3mpapi
@@ -83,7 +83,7 @@ The operation is successful.
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -101,8 +101,10 @@ MT-Level Safe
.TE
.SH SEE ALSO
-\fBlibMPAPI\fR(3LIB), \fBMP_GetProprietaryLoadBalanceProperties\fR(3MPAPI),
-\fBMP_GetPluginOidList\fR(3MPAPI), \fBattributes\fR(5)
+.BR libMPAPI (3LIB),
+.BR MP_GetPluginOidList (3MPAPI),
+.BR MP_GetProprietaryLoadBalanceProperties (3MPAPI),
+.BR attributes (7)
.sp
.LP
\fIMultipath Management API Version 1.0\fR
diff --git a/usr/src/man/man3mpapi/MP_GetProprietaryLoadBalanceOidList.3mpapi b/usr/src/man/man3mpapi/MP_GetProprietaryLoadBalanceOidList.3mpapi
index 3ac3aa257b..96e3af0818 100644
--- a/usr/src/man/man3mpapi/MP_GetProprietaryLoadBalanceOidList.3mpapi
+++ b/usr/src/man/man3mpapi/MP_GetProprietaryLoadBalanceOidList.3mpapi
@@ -126,7 +126,7 @@ The implementation does not support the API.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -146,8 +146,9 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibMPAPI\fR(3LIB), \fBMP_GetProprietaryLoadBalanceProperties\fR(3MPAPI),
-\fBattributes\fR(5)
+.BR libMPAPI (3LIB),
+.BR MP_GetProprietaryLoadBalanceProperties (3MPAPI),
+.BR attributes (7)
.sp
.LP
\fIMultipath Management API Version 1.0\fR
diff --git a/usr/src/man/man3mpapi/MP_GetProprietaryLoadBalanceProperties.3mpapi b/usr/src/man/man3mpapi/MP_GetProprietaryLoadBalanceProperties.3mpapi
index f0968c7c80..f3ff9c9b4e 100644
--- a/usr/src/man/man3mpapi/MP_GetProprietaryLoadBalanceProperties.3mpapi
+++ b/usr/src/man/man3mpapi/MP_GetProprietaryLoadBalanceProperties.3mpapi
@@ -91,7 +91,7 @@ The operation is successful.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -111,8 +111,9 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibMPAPI\fR(3LIB), \fBMP_GetProprietaryLoadBalanceOidList\fR(3MPAPI),
-\fBattributes\fR(5)
+.BR libMPAPI (3LIB),
+.BR MP_GetProprietaryLoadBalanceOidList (3MPAPI),
+.BR attributes (7)
.sp
.LP
\fIMultipath Management API Version 1.0\fR
diff --git a/usr/src/man/man3mpapi/MP_GetTargetPortGroupProperties.3mpapi b/usr/src/man/man3mpapi/MP_GetTargetPortGroupProperties.3mpapi
index 74ed4cc435..bd8aec7a9b 100644
--- a/usr/src/man/man3mpapi/MP_GetTargetPortGroupProperties.3mpapi
+++ b/usr/src/man/man3mpapi/MP_GetTargetPortGroupProperties.3mpapi
@@ -90,7 +90,7 @@ The operation is successful.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -110,8 +110,9 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibMPAPI\fR(3LIB), \fBMP_GetAssociatedTPGOidList\fR(3MPAPI),
-\fBattributes\fR(5)
+.BR libMPAPI (3LIB),
+.BR MP_GetAssociatedTPGOidList (3MPAPI),
+.BR attributes (7)
.sp
.LP
\fIMultipath Management API Version 1.0\fR
diff --git a/usr/src/man/man3mpapi/MP_GetTargetPortOidList.3mpapi b/usr/src/man/man3mpapi/MP_GetTargetPortOidList.3mpapi
index 930cd9a768..c39b215567 100644
--- a/usr/src/man/man3mpapi/MP_GetTargetPortOidList.3mpapi
+++ b/usr/src/man/man3mpapi/MP_GetTargetPortOidList.3mpapi
@@ -115,7 +115,7 @@ A memory allocation failure occurred.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -135,8 +135,9 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibMPAPI\fR(3LIB), \fBMP_GetTargetPortProperties\fR(3MPAPI),
-\fBattributes\fR(5)
+.BR libMPAPI (3LIB),
+.BR MP_GetTargetPortProperties (3MPAPI),
+.BR attributes (7)
.sp
.LP
\fIMultipath Management API Version 1.0\fR
diff --git a/usr/src/man/man3mpapi/MP_GetTargetPortProperties.3mpapi b/usr/src/man/man3mpapi/MP_GetTargetPortProperties.3mpapi
index 75f866199d..2db70e4b46 100644
--- a/usr/src/man/man3mpapi/MP_GetTargetPortProperties.3mpapi
+++ b/usr/src/man/man3mpapi/MP_GetTargetPortProperties.3mpapi
@@ -83,7 +83,7 @@ The operation is successful.
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -101,8 +101,9 @@ MT-Level Safe
.TE
.SH SEE ALSO
-\fBlibMPAPI\fR(3LIB), \fBMP_GetTargetPortOidList\fR(3MPAPI),
-\fBattributes\fR(5)
+.BR libMPAPI (3LIB),
+.BR MP_GetTargetPortOidList (3MPAPI),
+.BR attributes (7)
.sp
.LP
\fIMultipath Management API Version 1.0\fR
diff --git a/usr/src/man/man3mpapi/MP_RegisterForObjectPropertyChanges.3mpapi b/usr/src/man/man3mpapi/MP_RegisterForObjectPropertyChanges.3mpapi
index c610ce6952..4fd33370f4 100644
--- a/usr/src/man/man3mpapi/MP_RegisterForObjectPropertyChanges.3mpapi
+++ b/usr/src/man/man3mpapi/MP_RegisterForObjectPropertyChanges.3mpapi
@@ -141,7 +141,7 @@ An existing client function is replaced with the one specified in
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -161,8 +161,9 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibMPAPI\fR(3LIB), \fBMP_DeregisterForObjectPropertyChanges\fR(3MPAPI),
-\fBattributes\fR(5)
+.BR libMPAPI (3LIB),
+.BR MP_DeregisterForObjectPropertyChanges (3MPAPI),
+.BR attributes (7)
.sp
.LP
\fIMultipath Management API Version 1.0\fR
diff --git a/usr/src/man/man3mpapi/MP_RegisterForObjectVisibilityChanges.3mpapi b/usr/src/man/man3mpapi/MP_RegisterForObjectVisibilityChanges.3mpapi
index 6b013ec09b..a739d30044 100644
--- a/usr/src/man/man3mpapi/MP_RegisterForObjectVisibilityChanges.3mpapi
+++ b/usr/src/man/man3mpapi/MP_RegisterForObjectVisibilityChanges.3mpapi
@@ -129,7 +129,7 @@ An existing client function is replaced with the one specified in
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -149,8 +149,9 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibMPAPI\fR(3LIB), \fBMP_DeregisterForObjectVisibilityChanges\fR(3MPAPI),
-\fBattributes\fR(5)
+.BR libMPAPI (3LIB),
+.BR MP_DeregisterForObjectVisibilityChanges (3MPAPI),
+.BR attributes (7)
.sp
.LP
\fIMultipath Management API Version 1.0\fR
diff --git a/usr/src/man/man3mpapi/MP_RegisterPlugin.3mpapi b/usr/src/man/man3mpapi/MP_RegisterPlugin.3mpapi
index bdc49a6ff7..d68957d735 100644
--- a/usr/src/man/man3mpapi/MP_RegisterPlugin.3mpapi
+++ b/usr/src/man/man3mpapi/MP_RegisterPlugin.3mpapi
@@ -101,7 +101,7 @@ MPAPI library configuration file
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -121,8 +121,10 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibMPAPI\fR(3LIB), \fBMP_DeregisterPlugin\fR(3MPAPI), \fBmpapi.conf\fR(4),
-\fBattributes\fR(5)
+.BR libMPAPI (3LIB),
+.BR MP_DeregisterPlugin (3MPAPI),
+.BR mpapi.conf (5),
+.BR attributes (7)
.sp
.LP
\fIMultipath Management API Version 1.0\fR
diff --git a/usr/src/man/man3mpapi/MP_SetFailbackPollingRate.3mpapi b/usr/src/man/man3mpapi/MP_SetFailbackPollingRate.3mpapi
index a4a7ae7d2c..46095cd721 100644
--- a/usr/src/man/man3mpapi/MP_SetFailbackPollingRate.3mpapi
+++ b/usr/src/man/man3mpapi/MP_SetFailbackPollingRate.3mpapi
@@ -106,7 +106,7 @@ The implementation does not support the API.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -126,7 +126,8 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibMPAPI\fR(3LIB), \fBattributes\fR(5)
+.BR libMPAPI (3LIB),
+.BR attributes (7)
.sp
.LP
\fIMultipath Management API Version 1.0\fR
diff --git a/usr/src/man/man3mpapi/MP_SetLogicalUnitLoadBalanceType.3mpapi b/usr/src/man/man3mpapi/MP_SetLogicalUnitLoadBalanceType.3mpapi
index 709acfca96..58a088f461 100644
--- a/usr/src/man/man3mpapi/MP_SetLogicalUnitLoadBalanceType.3mpapi
+++ b/usr/src/man/man3mpapi/MP_SetLogicalUnitLoadBalanceType.3mpapi
@@ -106,7 +106,7 @@ The implementation does not support the API.
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -124,7 +124,8 @@ MT-Level Safe
.TE
.SH SEE ALSO
-\fBlibMPAPI\fR(3LIB), \fBattributes\fR(5)
+.BR libMPAPI (3LIB),
+.BR attributes (7)
.sp
.LP
\fIMultipath Management API Version 1.0\fR
diff --git a/usr/src/man/man3mpapi/MP_SetOverridePath.3mpapi b/usr/src/man/man3mpapi/MP_SetOverridePath.3mpapi
index 287d14f7b1..b5f243a55b 100644
--- a/usr/src/man/man3mpapi/MP_SetOverridePath.3mpapi
+++ b/usr/src/man/man3mpapi/MP_SetOverridePath.3mpapi
@@ -123,7 +123,7 @@ The driver cannot communicate through selected path
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -143,7 +143,8 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibMPAPI\fR(3LIB), \fBattributes\fR(5)
+.BR libMPAPI (3LIB),
+.BR attributes (7)
.sp
.LP
\fIMultipath Management API Version 1.0\fR
diff --git a/usr/src/man/man3mpapi/MP_SetPathWeight.3mpapi b/usr/src/man/man3mpapi/MP_SetPathWeight.3mpapi
index f5e173543d..86594cebe0 100644
--- a/usr/src/man/man3mpapi/MP_SetPathWeight.3mpapi
+++ b/usr/src/man/man3mpapi/MP_SetPathWeight.3mpapi
@@ -107,7 +107,7 @@ The driver does not support setting path weight.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -127,7 +127,8 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibMPAPI\fR(3LIB), \fBattributes\fR(5)
+.BR libMPAPI (3LIB),
+.BR attributes (7)
.sp
.LP
\fIMultipath Management API Version 1.0\fR
diff --git a/usr/src/man/man3mpapi/MP_SetPluginLoadBalanceType.3mpapi b/usr/src/man/man3mpapi/MP_SetPluginLoadBalanceType.3mpapi
index c789235387..214d448e55 100644
--- a/usr/src/man/man3mpapi/MP_SetPluginLoadBalanceType.3mpapi
+++ b/usr/src/man/man3mpapi/MP_SetPluginLoadBalanceType.3mpapi
@@ -108,7 +108,7 @@ The implementation does not support the API.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -128,7 +128,8 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibMPAPI\fR(3LIB), \fBattributes\fR(5)
+.BR libMPAPI (3LIB),
+.BR attributes (7)
.sp
.LP
\fIMultipath Management API Version 1.0\fR
diff --git a/usr/src/man/man3mpapi/MP_SetProbingPollingRate.3mpapi b/usr/src/man/man3mpapi/MP_SetProbingPollingRate.3mpapi
index 47860b00f9..9910cf193d 100644
--- a/usr/src/man/man3mpapi/MP_SetProbingPollingRate.3mpapi
+++ b/usr/src/man/man3mpapi/MP_SetProbingPollingRate.3mpapi
@@ -106,7 +106,7 @@ The implementation does not support the API.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -126,7 +126,8 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibMPAPI\fR(3LIB), \fBattributes\fR(5)
+.BR libMPAPI (3LIB),
+.BR attributes (7)
.sp
.LP
\fIMultipath Management API Version 1.0\fR
diff --git a/usr/src/man/man3mpapi/MP_SetProprietaryProperties.3mpapi b/usr/src/man/man3mpapi/MP_SetProprietaryProperties.3mpapi
index 412023db25..93c5f22b89 100644
--- a/usr/src/man/man3mpapi/MP_SetProprietaryProperties.3mpapi
+++ b/usr/src/man/man3mpapi/MP_SetProprietaryProperties.3mpapi
@@ -110,7 +110,7 @@ The API is not supported.
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -128,7 +128,8 @@ MT-Level Safe
.TE
.SH SEE ALSO
-\fBlibMPAPI\fR(3LIB), \fBattributes\fR(5)
+.BR libMPAPI (3LIB),
+.BR attributes (7)
.sp
.LP
\fIMultipath Management API Version 1.0\fR
diff --git a/usr/src/man/man3mpapi/MP_SetTPGAccess.3mpapi b/usr/src/man/man3mpapi/MP_SetTPGAccess.3mpapi
index ea872a388b..829eabdb94 100644
--- a/usr/src/man/man3mpapi/MP_SetTPGAccess.3mpapi
+++ b/usr/src/man/man3mpapi/MP_SetTPGAccess.3mpapi
@@ -151,7 +151,7 @@ The API is not supported.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -171,7 +171,8 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibMPAPI\fR(3LIB), \fBattributes\fR(5)
+.BR libMPAPI (3LIB),
+.BR attributes (7)
.sp
.LP
\fIMultipath Management API Version 1.0\fR
diff --git a/usr/src/man/man3mpapi/Sun_MP_SendScsiCmd.3mpapi b/usr/src/man/man3mpapi/Sun_MP_SendScsiCmd.3mpapi
index 1d09b20c01..85a59896f5 100644
--- a/usr/src/man/man3mpapi/Sun_MP_SendScsiCmd.3mpapi
+++ b/usr/src/man/man3mpapi/Sun_MP_SendScsiCmd.3mpapi
@@ -30,7 +30,7 @@ The object ID of the logical unit path.
\fB\fIcmd\fR\fR
.ad
.RS 7n
-A \fBuscsi_cmd\fR structure. See \fBuscsi\fR(7I).
+A \fBuscsi_cmd\fR structure. See \fBuscsi\fR(4I).
.RE
.SH DESCRIPTION
@@ -85,9 +85,9 @@ The operation is successful.
.SH WARNINGS
The \fBuscsi\fR command is very powerful but somewhat dangerous. See the
-WARNINGS section of \fBuscsi\fR(7I) before using this interface.
+WARNINGS section of \fBuscsi\fR(4I) before using this interface.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -103,8 +103,10 @@ MT-Level Safe
.TE
.SH SEE ALSO
-\fBlibMPAPI\fR(3LIB), \fBMP_GetPluginProperties\fR(3MPAPI),
-\fBattributes\fR(5), \fBuscsi\fR(7I)
+.BR libMPAPI (3LIB),
+.BR MP_GetPluginProperties (3MPAPI),
+.BR uscsi (4I),
+.BR attributes (7)
.sp
.LP
\fIMultipath Management API Version 1.0\fR
diff --git a/usr/src/man/man3mvec/vatan2_.3mvec b/usr/src/man/man3mvec/vatan2_.3mvec
index c38eadffd1..42b9d91d09 100644
--- a/usr/src/man/man3mvec/vatan2_.3mvec
+++ b/usr/src/man/man3mvec/vatan2_.3mvec
@@ -80,7 +80,7 @@ exact.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -99,5 +99,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBatan2\fR(3M), \fBfeclearexcept\fR(3M), \fBfetestexcept\fR(3M),
-\fBattributes\fR(5)
+.BR atan2 (3M),
+.BR feclearexcept (3M),
+.BR fetestexcept (3M),
+.BR attributes (7)
diff --git a/usr/src/man/man3mvec/vatan_.3mvec b/usr/src/man/man3mvec/vatan_.3mvec
index 6dd84f5d1f..cdb995f7f6 100644
--- a/usr/src/man/man3mvec/vatan_.3mvec
+++ b/usr/src/man/man3mvec/vatan_.3mvec
@@ -77,7 +77,7 @@ exact.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -96,5 +96,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBatan\fR(3M), \fBfeclearexcept\fR(3M), \fBfetestexcept\fR(3M),
-\fBattributes\fR(5)
+.BR atan (3M),
+.BR feclearexcept (3M),
+.BR fetestexcept (3M),
+.BR attributes (7)
diff --git a/usr/src/man/man3mvec/vcos_.3mvec b/usr/src/man/man3mvec/vcos_.3mvec
index dbf1aada7e..bf6d6b5119 100644
--- a/usr/src/man/man3mvec/vcos_.3mvec
+++ b/usr/src/man/man3mvec/vcos_.3mvec
@@ -77,7 +77,7 @@ exact.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -96,5 +96,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBcos\fR(3M), \fBfeclearexcept\fR(3M), \fBfetestexcept\fR(3M),
-\fBattributes\fR(5)
+.BR cos (3M),
+.BR feclearexcept (3M),
+.BR fetestexcept (3M),
+.BR attributes (7)
diff --git a/usr/src/man/man3mvec/vcospi_.3mvec b/usr/src/man/man3mvec/vcospi_.3mvec
index 23c6de2225..fdd27f0c23 100644
--- a/usr/src/man/man3mvec/vcospi_.3mvec
+++ b/usr/src/man/man3mvec/vcospi_.3mvec
@@ -89,7 +89,7 @@ exact.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -108,4 +108,6 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBfeclearexcept\fR(3M), \fBfetestexcept\fR(3M), \fBattributes\fR(5)
+.BR feclearexcept (3M),
+.BR fetestexcept (3M),
+.BR attributes (7)
diff --git a/usr/src/man/man3mvec/vexp_.3mvec b/usr/src/man/man3mvec/vexp_.3mvec
index e5d1402dce..17141aecc8 100644
--- a/usr/src/man/man3mvec/vexp_.3mvec
+++ b/usr/src/man/man3mvec/vexp_.3mvec
@@ -79,7 +79,7 @@ exact.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -98,5 +98,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBexp\fR(3M), \fBfeclearexcept\fR(3M), \fBfetestexcept\fR(3M),
-\fBattributes\fR(5)
+.BR exp (3M),
+.BR feclearexcept (3M),
+.BR fetestexcept (3M),
+.BR attributes (7)
diff --git a/usr/src/man/man3mvec/vhypot_.3mvec b/usr/src/man/man3mvec/vhypot_.3mvec
index 00985f965b..d78394180a 100644
--- a/usr/src/man/man3mvec/vhypot_.3mvec
+++ b/usr/src/man/man3mvec/vhypot_.3mvec
@@ -80,7 +80,7 @@ exact.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -99,5 +99,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBhypot\fR(3M), \fBfeclearexcept\fR(3M), \fBfetestexcept\fR(3M),
-\fBattributes\fR(5)
+.BR feclearexcept (3M),
+.BR fetestexcept (3M),
+.BR hypot (3M),
+.BR attributes (7)
diff --git a/usr/src/man/man3mvec/vlog_.3mvec b/usr/src/man/man3mvec/vlog_.3mvec
index 4f44502cda..699c960be6 100644
--- a/usr/src/man/man3mvec/vlog_.3mvec
+++ b/usr/src/man/man3mvec/vlog_.3mvec
@@ -77,7 +77,7 @@ exact.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -96,5 +96,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBlog\fR(3M), \fBfeclearexcept\fR(3M), \fBfetestexcept\fR(3M),
-\fBattributes\fR(5)
+.BR feclearexcept (3M),
+.BR fetestexcept (3M),
+.BR log (3M),
+.BR attributes (7)
diff --git a/usr/src/man/man3mvec/vpow_.3mvec b/usr/src/man/man3mvec/vpow_.3mvec
index 65f707d355..52f24f6506 100644
--- a/usr/src/man/man3mvec/vpow_.3mvec
+++ b/usr/src/man/man3mvec/vpow_.3mvec
@@ -82,7 +82,7 @@ exact.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -101,5 +101,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBpow\fR(3M), \fBfeclearexcept\fR(3M), \fBfetestexcept\fR(3M),
-\fBattributes\fR(5)
+.BR feclearexcept (3M),
+.BR fetestexcept (3M),
+.BR pow (3M),
+.BR attributes (7)
diff --git a/usr/src/man/man3mvec/vrhypot_.3mvec b/usr/src/man/man3mvec/vrhypot_.3mvec
index 097c5dbb42..8cdad33f6f 100644
--- a/usr/src/man/man3mvec/vrhypot_.3mvec
+++ b/usr/src/man/man3mvec/vrhypot_.3mvec
@@ -101,7 +101,7 @@ exact.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -120,5 +120,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBhypot\fR(3M), \fBfeclearexcept\fR(3M), \fBfetestexcept\fR(3M),
-\fBattributes\fR(5)
+.BR feclearexcept (3M),
+.BR fetestexcept (3M),
+.BR hypot (3M),
+.BR attributes (7)
diff --git a/usr/src/man/man3mvec/vrsqrt_.3mvec b/usr/src/man/man3mvec/vrsqrt_.3mvec
index 2eb0ecee83..3a4420df82 100644
--- a/usr/src/man/man3mvec/vrsqrt_.3mvec
+++ b/usr/src/man/man3mvec/vrsqrt_.3mvec
@@ -102,7 +102,7 @@ exact.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -121,5 +121,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBsqrt\fR(3M), \fBfeclearexcept\fR(3M), \fBfetestexcept\fR(3M),
-\fBattributes\fR(5)
+.BR feclearexcept (3M),
+.BR fetestexcept (3M),
+.BR sqrt (3M),
+.BR attributes (7)
diff --git a/usr/src/man/man3mvec/vsin_.3mvec b/usr/src/man/man3mvec/vsin_.3mvec
index 7b9658841b..464aa9e007 100644
--- a/usr/src/man/man3mvec/vsin_.3mvec
+++ b/usr/src/man/man3mvec/vsin_.3mvec
@@ -77,7 +77,7 @@ exact.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -96,5 +96,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBsin\fR(3M), \fBfeclearexcept\fR(3M), \fBfetestexcept\fR(3M),
-\fBattributes\fR(5)
+.BR feclearexcept (3M),
+.BR fetestexcept (3M),
+.BR sin (3M),
+.BR attributes (7)
diff --git a/usr/src/man/man3mvec/vsincos_.3mvec b/usr/src/man/man3mvec/vsincos_.3mvec
index f28d6d4c54..cc39a7554a 100644
--- a/usr/src/man/man3mvec/vsincos_.3mvec
+++ b/usr/src/man/man3mvec/vsincos_.3mvec
@@ -82,7 +82,7 @@ exact.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -101,5 +101,9 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBcos\fR(3M), \fBsin\fR(3M), \fBsincos\fR(3M), \fBfeclearexcept\fR(3M),
-\fBfetestexcept\fR(3M), \fBattributes\fR(5)
+.BR cos (3M),
+.BR feclearexcept (3M),
+.BR fetestexcept (3M),
+.BR sin (3M),
+.BR sincos (3M),
+.BR attributes (7)
diff --git a/usr/src/man/man3mvec/vsincospi_.3mvec b/usr/src/man/man3mvec/vsincospi_.3mvec
index b9b7e4d285..7c6260810a 100644
--- a/usr/src/man/man3mvec/vsincospi_.3mvec
+++ b/usr/src/man/man3mvec/vsincospi_.3mvec
@@ -104,7 +104,7 @@ exact.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -123,4 +123,6 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBfeclearexcept\fR(3M), \fBfetestexcept\fR(3M), \fBattributes\fR(5)
+.BR feclearexcept (3M),
+.BR fetestexcept (3M),
+.BR attributes (7)
diff --git a/usr/src/man/man3mvec/vsinpi_.3mvec b/usr/src/man/man3mvec/vsinpi_.3mvec
index 87f9eeea7a..f8cf7f79ce 100644
--- a/usr/src/man/man3mvec/vsinpi_.3mvec
+++ b/usr/src/man/man3mvec/vsinpi_.3mvec
@@ -95,7 +95,7 @@ exact.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -114,4 +114,6 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBfeclearexcept\fR(3M), \fBfetestexcept\fR(3M), \fBattributes\fR(5)
+.BR feclearexcept (3M),
+.BR fetestexcept (3M),
+.BR attributes (7)
diff --git a/usr/src/man/man3mvec/vsqrt_.3mvec b/usr/src/man/man3mvec/vsqrt_.3mvec
index 1b158f4b38..46311c0df2 100644
--- a/usr/src/man/man3mvec/vsqrt_.3mvec
+++ b/usr/src/man/man3mvec/vsqrt_.3mvec
@@ -76,7 +76,7 @@ exact.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -95,5 +95,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBsqrt\fR(3M), \fBfeclearexcept\fR(3M), \fBfetestexcept\fR(3M),
-\fBattributes\fR(5)
+.BR feclearexcept (3M),
+.BR fetestexcept (3M),
+.BR sqrt (3M),
+.BR attributes (7)
diff --git a/usr/src/man/man3mvec/vz_abs_.3mvec b/usr/src/man/man3mvec/vz_abs_.3mvec
index 6cf962dd34..6cb386302c 100644
--- a/usr/src/man/man3mvec/vz_abs_.3mvec
+++ b/usr/src/man/man3mvec/vz_abs_.3mvec
@@ -76,7 +76,7 @@ exact.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -95,5 +95,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBcabs\fR(3M), \fBfeclearexcept\fR(3M), \fBfetestexcept\fR(3M),
-\fBattributes\fR(5)
+.BR cabs (3M),
+.BR feclearexcept (3M),
+.BR fetestexcept (3M),
+.BR attributes (7)
diff --git a/usr/src/man/man3mvec/vz_exp_.3mvec b/usr/src/man/man3mvec/vz_exp_.3mvec
index 2003424c68..6e8138946a 100644
--- a/usr/src/man/man3mvec/vz_exp_.3mvec
+++ b/usr/src/man/man3mvec/vz_exp_.3mvec
@@ -72,7 +72,7 @@ exceptions and/or deliver different results from \fBcexp()\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -91,4 +91,5 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBcexp\fR(3M), \fBattributes\fR(5)
+.BR cexp (3M),
+.BR attributes (7)
diff --git a/usr/src/man/man3mvec/vz_log_.3mvec b/usr/src/man/man3mvec/vz_log_.3mvec
index 07b2958fc7..fbb1d5437f 100644
--- a/usr/src/man/man3mvec/vz_log_.3mvec
+++ b/usr/src/man/man3mvec/vz_log_.3mvec
@@ -67,7 +67,7 @@ exceptions and/or deliver different results from \fBclog()\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -86,4 +86,5 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBclog\fR(3M), \fBattributes\fR(5)
+.BR clog (3M),
+.BR attributes (7)
diff --git a/usr/src/man/man3mvec/vz_pow_.3mvec b/usr/src/man/man3mvec/vz_pow_.3mvec
index e51fdaa297..1448dacf2d 100644
--- a/usr/src/man/man3mvec/vz_pow_.3mvec
+++ b/usr/src/man/man3mvec/vz_pow_.3mvec
@@ -75,7 +75,7 @@ exceptions and/or deliver different results from \fBcpow()\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -94,4 +94,5 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBcpow\fR(3M), \fBattributes\fR(5)
+.BR cpow (3M),
+.BR attributes (7)
diff --git a/usr/src/man/man3nsl/dial.3nsl b/usr/src/man/man3nsl/dial.3nsl
index 0c905c8a75..0784a693d2 100644
--- a/usr/src/man/man3nsl/dial.3nsl
+++ b/usr/src/man/man3nsl/dial.3nsl
@@ -154,7 +154,7 @@ BAD_SYS \(mi13 /* system not in Systems file*/
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -170,8 +170,12 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBuucp\fR(1C), \fBalarm\fR(2), \fBread\fR(2), \fBwrite\fR(2),
-\fBattributes\fR(5), \fBtermio\fR(7I)
+.BR uucp (1C),
+.BR alarm (2),
+.BR read (2),
+.BR write (2),
+.BR termio (4I),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3nsl/doconfig.3nsl b/usr/src/man/man3nsl/doconfig.3nsl
index 7190d9cd47..3bf8052db7 100644
--- a/usr/src/man/man3nsl/doconfig.3nsl
+++ b/usr/src/man/man3nsl/doconfig.3nsl
@@ -25,7 +25,7 @@ the configuration scripts contained in the files
\fB</etc/saf/\fR\fIpmtag\fR\fB/_config>\fR, \fB</etc/saf/_sysconfig>\fR, and
\fB</etc/saf/\fR\fIpmtag\fR/\fIsvctag>\fR, where \fIpmtag\fR specifies the tag
associated with the port monitor, and \fIsvctag\fR specifies the service tag
-associated with a given service. See \fBpmadm\fR(1M) and \fBsacadm\fR(1M).
+associated with a given service. See \fBpmadm\fR(8) and \fBsacadm\fR(8).
.sp
.LP
\fBscript\fR is the name of the configuration script; \fIfildes\fR is a file
@@ -151,7 +151,7 @@ established should \fInot\fR be started.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -167,7 +167,10 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBsh\fR(1), \fBpmadm\fR(1M), \fBsacadm\fR(1M), \fBattributes\fR(5)
+.BR sh (1),
+.BR attributes (7),
+.BR pmadm (8),
+.BR sacadm (8)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3nsl/gethostbyname.3nsl b/usr/src/man/man3nsl/gethostbyname.3nsl
index 2468a6696b..a53c6edf51 100644
--- a/usr/src/man/man3nsl/gethostbyname.3nsl
+++ b/usr/src/man/man3nsl/gethostbyname.3nsl
@@ -100,7 +100,7 @@ gethostent_r, sethostent, endhostent \- get network host entry
.SH DESCRIPTION
These functions are used to obtain entries describing hosts. An entry can come
from any of the sources for \fBhosts\fR specified in the
-\fB/etc/nsswitch.conf\fR file. See \fBnsswitch.conf\fR(4). These functions have
+\fB/etc/nsswitch.conf\fR file. See \fBnsswitch.conf\fR(5). These functions have
been superseded by \fBgetipnodebyname\fR(3SOCKET),
\fBgetipnodebyaddr\fR(3SOCKET), and \fBgetaddrinfo\fR(3SOCKET), which provide
greater portability to applications when multithreading is performed or
@@ -347,7 +347,7 @@ configuration file for the name service switch
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -363,9 +363,17 @@ T}
.TE
.SH SEE ALSO
-\fBIntro\fR(2), \fBIntro\fR(3), \fBbyteorder\fR(3C), \fBinet\fR(3SOCKET),
-\fBnetdb.h\fR(3HEAD), \fBnetdir\fR(3NSL), \fBhosts\fR(4), \fBnetconfig\fR(4),
-\fBnss\fR(4), \fBnsswitch.conf\fR(4), \fBattributes\fR(5)
+.BR Intro (2),
+.BR Intro (3),
+.BR byteorder (3C),
+.BR netdb.h (3HEAD),
+.BR netdir (3NSL),
+.BR inet (3SOCKET),
+.BR hosts (5),
+.BR netconfig (5),
+.BR nss (5),
+.BR nsswitch.conf (5),
+.BR attributes (7)
.SH WARNINGS
The reentrant interfaces \fBgethostbyname_r()\fR, \fBgethostbyaddr_r()\fR, and
\fBgethostent_r()\fR are included in this release on an uncommitted basis only
@@ -375,10 +383,10 @@ To ensure that they all return consistent results, \fBgethostbyname()\fR,
\fBgethostbyname_r()\fR, and \fBnetdir_getbyname()\fR are implemented in terms
of the same internal library function. This function obtains the system-wide
source lookup policy based on the \fBinet\fR family entries in
-\fBnetconfig\fR(4) and the \fBhosts:\fR entry in \fBnsswitch.conf\fR(4).
+\fBnetconfig\fR(5) and the \fBhosts:\fR entry in \fBnsswitch.conf\fR(5).
Similarly, \fBgethostbyaddr()\fR, \fBgethostbyaddr_r()\fR, and
\fBnetdir_getbyaddr()\fR are implemented in terms of the same internal library
-function. If the \fBinet\fR family entries in \fBnetconfig\fR(4) have a ``-''
+function. If the \fBinet\fR family entries in \fBnetconfig\fR(5) have a ``-''
in the last column for \fBnametoaddr\fR libraries, then the entry for
\fBhosts\fR in \fBnsswitch.conf\fR will be used; \fBnametoaddr\fR libraries in
that column will be used, and \fBnsswitch.conf\fR will not be consulted.
@@ -405,7 +413,7 @@ The system attempts to put those addresses that are on the same subnet as the
caller before addresses that are on different subnets. However, if address
sorting is disabled by setting \fBSORT_ADDRS\fR to FALSE in the
\fB/etc/default/nss\fR file, the system does not put the local subnet addresses
-first. See \fBnss\fR(4) for more information.
+first. See \fBnss\fR(5) for more information.
.sp
.LP
When compiling multithreaded applications, see \fBIntro\fR(3), \fBMULTITHREADED
@@ -414,7 +422,7 @@ APPLICATIONS\fR, for information about the use of the \fB_REENTRANT\fR flag.
.LP
Use of the enumeration interfaces \fBgethostent()\fR and \fBgethostent_r()\fR
is discouraged; enumeration might not be supported for all database sources.
-The semantics of enumeration are discussed further in \fBnsswitch.conf\fR(4).
+The semantics of enumeration are discussed further in \fBnsswitch.conf\fR(5).
.sp
.LP
The current implementations of these functions only return or accept addresses
diff --git a/usr/src/man/man3nsl/getipsecalgbyname.3nsl b/usr/src/man/man3nsl/getipsecalgbyname.3nsl
index f25905b78f..0d486bd224 100644
--- a/usr/src/man/man3nsl/getipsecalgbyname.3nsl
+++ b/usr/src/man/man3nsl/getipsecalgbyname.3nsl
@@ -34,7 +34,7 @@ entries
.LP
Use the \fBgetipsecalgbyname()\fR, \fBgetipsecalgbynum()\fR,
\fBfreeipsecalgent()\fR functions to obtain the IPsec algorithm mappings that
-are defined by \fBipsecalgs\fR(1M). The IPsec algorithms and associated
+are defined by \fBipsecalgs\fR(8). The IPsec algorithms and associated
protocol name spaces are defined by \fIRFC 2407\fR.
.sp
.LP
@@ -173,7 +173,7 @@ Specified protocol number not found
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -189,8 +189,11 @@ Interface Stability Evolving
.SH SEE ALSO
.LP
-\fBcryptoadm\fR(1M), \fBipsecalgs\fR(1M), \fBgetipsecprotobyname\fR(3NSL),
-\fBgetipsecprotobyname\fR(3NSL), \fBattributes\fR(5)
+.BR getipsecprotobyname (3NSL),
+.BR getipsecprotobyname (3NSL),
+.BR attributes (7),
+.BR cryptoadm (8),
+.BR ipsecalgs (8)
.sp
.LP
Piper, D. \fIRFC 2407, The Internet IP Security Domain of Interpretation for
diff --git a/usr/src/man/man3nsl/getipsecprotobyname.3nsl b/usr/src/man/man3nsl/getipsecprotobyname.3nsl
index fe636c4fd6..990434e4f4 100644
--- a/usr/src/man/man3nsl/getipsecprotobyname.3nsl
+++ b/usr/src/man/man3nsl/getipsecprotobyname.3nsl
@@ -23,7 +23,7 @@ getipsecprotobyname, getipsecprotobynum \- query IPsec protocols entries
.SH DESCRIPTION
Use the \fBgetipsecprotobyname()\fR and \fBgetipsecprotobynum()\fR functions to
-obtain the IPsec algorithm mappings that are defined by \fBipsecalgs\fR(1M).
+obtain the IPsec algorithm mappings that are defined by \fBipsecalgs\fR(8).
You can also use the \fBgetipsecprotobyname()\fR and \fBgetipsecprotobynum()\fR
functions in conjunction with \fBgetipsecalgbyname\fR(3NSL) and
\fBgetipsecalgbynum\fR(3NSL) to obtain information about the supported IPsec
@@ -88,7 +88,7 @@ success, or \fB-1\fR if the protocol specified does not exist.
The \fBgetipsecprotobynum()\fR function returns a protocol name upon success,
or the \fINULL\fR value if the protocol number specified does not exist.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.TS
box;
@@ -101,8 +101,10 @@ Interface Stability Evolving
.TE
.SH SEE ALSO
-\fBipsecalgs\fR(1M), \fBgetipsecalgbyname\fR(3NSL),
-\fBgetipsecalgbyname\fR(3NSL), \fBattributes\fR(5)
+.BR getipsecalgbyname (3NSL),
+.BR getipsecalgbyname (3NSL),
+.BR attributes (7),
+.BR ipsecalgs (8)
.sp
.LP
Piper, D. \fIRFC 2407, The Internet IP Security Domain of Interpretation for
diff --git a/usr/src/man/man3nsl/getnetconfig.3nsl b/usr/src/man/man3nsl/getnetconfig.3nsl
index 08355211e1..80fb693ea4 100644
--- a/usr/src/man/man3nsl/getnetconfig.3nsl
+++ b/usr/src/man/man3nsl/getnetconfig.3nsl
@@ -55,7 +55,7 @@ The library routines described on this page are part of the Network Selection
component. They provide the application access to the system network
configuration database, \fB/etc/netconfig\fR. In addition to the routines for
accessing the \fBnetconfig\fR database, Network Selection includes the
-environment variable \fBNETPATH\fR (see \fBenviron\fR(5)) and the
+environment variable \fBNETPATH\fR (see \fBenviron\fR(7)) and the
\fBNETPATH\fR access routines described in \fBgetnetpath\fR(3NSL).
.sp
.LP
@@ -134,7 +134,7 @@ applications, this buffer is implemented as thread-specific data.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -150,5 +150,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBgetnetpath\fR(3NSL), \fBnetconfig\fR(4), \fBattributes\fR(5),
-\fBenviron\fR(5)
+.BR getnetpath (3NSL),
+.BR netconfig (5),
+.BR attributes (7),
+.BR environ (7)
diff --git a/usr/src/man/man3nsl/getnetpath.3nsl b/usr/src/man/man3nsl/getnetpath.3nsl
index 0953f815c6..9abce08c0a 100644
--- a/usr/src/man/man3nsl/getnetpath.3nsl
+++ b/usr/src/man/man3nsl/getnetpath.3nsl
@@ -33,7 +33,7 @@ NETPATH component
The routines described on this page are part of the Network Selection
component. They provide the application access to the system network
configuration database, \fB/etc/netconfig\fR, as it is "filtered" by the
-\fBNETPATH\fR environment variable. See \fBenviron\fR(5). See
+\fBNETPATH\fR environment variable. See \fBenviron\fR(7). See
\fBgetnetconfig\fR(3NSL) for other routines that also access the network
configuration database directly. The \fBNETPATH\fR variable is a list of
colon-separated network identifiers.
@@ -90,7 +90,7 @@ example, if \fBsetnetpath()\fR was not called previously).
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -106,5 +106,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBgetnetconfig\fR(3NSL), \fBnetconfig\fR(4), \fBattributes\fR(5),
-\fBenviron\fR(5)
+.BR getnetconfig (3NSL),
+.BR netconfig (5),
+.BR attributes (7),
+.BR environ (7)
diff --git a/usr/src/man/man3nsl/getpublickey.3nsl b/usr/src/man/man3nsl/getpublickey.3nsl
index cd6e408f0c..4ab80d4b52 100644
--- a/usr/src/man/man3nsl/getpublickey.3nsl
+++ b/usr/src/man/man3nsl/getpublickey.3nsl
@@ -32,7 +32,7 @@ sources:
.TP
.ie t \(bu
.el o
-\fB/etc/publickey\fR file. See \fBpublickey\fR(4).
+\fB/etc/publickey\fR file. See \fBpublickey\fR(5).
.RE
.RS +4
.TP
@@ -40,7 +40,7 @@ sources:
.el o
\fBNIS\fR map ``publickey.byname''.
The sources and their lookup order are specified in the
-\fB/etc/nsswitch.conf\fR file. See \fBnsswitch.conf\fR(4).
+\fB/etc/nsswitch.conf\fR file. See \fBnsswitch.conf\fR(5).
.RE
.sp
.LP
@@ -55,7 +55,7 @@ null-terminated, hexadecimal strings. If the password supplied to
but the \fIsecretkey\fR [0] will be set to \fINULL\fR.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -70,5 +70,7 @@ MT-Level Safe
.SH SEE ALSO
.LP
-\fBsecure_rpc\fR(3NSL), \fBnsswitch.conf\fR(4), \fBpublickey\fR(4),
-\fBattributes\fR(5)
+.BR secure_rpc (3NSL),
+.BR nsswitch.conf (5),
+.BR publickey (5),
+.BR attributes (7)
diff --git a/usr/src/man/man3nsl/getrpcbyname.3nsl b/usr/src/man/man3nsl/getrpcbyname.3nsl
index 283fd12ad0..120e1992bf 100644
--- a/usr/src/man/man3nsl/getrpcbyname.3nsl
+++ b/usr/src/man/man3nsl/getrpcbyname.3nsl
@@ -60,7 +60,7 @@ getrpcent_r, setrpcent, endrpcent \- get RPC entry
.LP
These functions are used to obtain entries for RPC (Remote Procedure Call)
services. An entry may come from any of the sources for \fBrpc\fR specified in
-the \fB/etc/nsswitch.conf\fR file (see \fBnsswitch.conf\fR(4)).
+the \fB/etc/nsswitch.conf\fR file (see \fBnsswitch.conf\fR(5)).
.sp
.LP
\fBgetrpcbyname()\fR searches for an entry with the RPC service name specified
@@ -184,7 +184,7 @@ result. See \fBIntro\fR(2) for the proper usage and interpretation of
\fB/etc/nsswitch.conf\fR
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -201,8 +201,11 @@ T}
.SH SEE ALSO
.LP
-\fBrpcinfo\fR(1M), \fBrpc\fR(3NSL), \fBnsswitch.conf\fR(4), \fBrpc\fR(4),
-\fBattributes\fR(5)
+.BR rpc (3NSL),
+.BR nsswitch.conf (5),
+.BR rpc (5),
+.BR attributes (7),
+.BR rpcinfo (8)
.SH WARNINGS
.LP
The reentrant interfaces \fBgetrpcbyname_r()\fR, \fBgetrpcbynumber_r()\fR, and
@@ -217,4 +220,4 @@ Multithreaded Applications\fR, for information about the use of the
.LP
Use of the enumeration interfaces \fBgetrpcent()\fR and \fBgetrpcent_r()\fR is
discouraged; enumeration may not be supported for all database sources. The
-semantics of enumeration are discussed further in \fBnsswitch.conf\fR(4).
+semantics of enumeration are discussed further in \fBnsswitch.conf\fR(5).
diff --git a/usr/src/man/man3nsl/netdir.3nsl b/usr/src/man/man3nsl/netdir.3nsl
index ecf02153dd..677d946da0 100644
--- a/usr/src/man/man3nsl/netdir.3nsl
+++ b/usr/src/man/man3nsl/netdir.3nsl
@@ -61,7 +61,7 @@ The \fBnetdir\fR functions provide a generic interface for name-to-address
mapping that will work with all transport protocols. This interface provides a
generic way for programs to convert transport specific addresses into common
structures and back again. The \fBnetconfig\fR structure, described on the
-\fBnetconfig\fR(4) manual page, identifies the transport.
+\fBnetconfig\fR(5) manual page, identifies the transport.
.sp
.LP
The \fBnetdir_getbyname()\fR function maps the machine name and service name in
@@ -309,7 +309,7 @@ data.
The \fBnetdir_getbyname()\fR, \fBnetdir_getbyaddr()\fR, and \fBnetdir_options()\fR
functions return \fB0\fR on success and a non-zero value on failure.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -323,5 +323,8 @@ MT-Level Safe
.TE
.SH SEE ALSO
-\fBgethostname\fR(3C), \fBgetnetconfig\fR(3NSL), \fBgetnetpath\fR(3NSL),
-\fBnetconfig\fR(4), \fBattributes\fR(5)
+.BR gethostname (3C),
+.BR getnetconfig (3NSL),
+.BR getnetpath (3NSL),
+.BR netconfig (5),
+.BR attributes (7)
diff --git a/usr/src/man/man3nsl/nlsgetcall.3nsl b/usr/src/man/man3nsl/nlsgetcall.3nsl
index dd199d56d9..fd0d62d910 100644
--- a/usr/src/man/man3nsl/nlsgetcall.3nsl
+++ b/usr/src/man/man3nsl/nlsgetcall.3nsl
@@ -54,7 +54,7 @@ shared object
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -70,9 +70,14 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBnlsadmin\fR(1M), \fBgetenv\fR(3C), \fBt_alloc\fR(3NSL),
-\fBt_connect\fR(3NSL), \fBt_error\fR(3NSL), \fBt_free\fR(3NSL),
-\fBt_sync\fR(3NSL), \fBattributes\fR(5)
+.BR getenv (3C),
+.BR t_alloc (3NSL),
+.BR t_connect (3NSL),
+.BR t_error (3NSL),
+.BR t_free (3NSL),
+.BR t_sync (3NSL),
+.BR attributes (7),
+.BR nlsadmin (8)
.SH WARNINGS
.sp
.LP
diff --git a/usr/src/man/man3nsl/nlsprovider.3nsl b/usr/src/man/man3nsl/nlsprovider.3nsl
index a1e750992f..3912c09e60 100644
--- a/usr/src/man/man3nsl/nlsprovider.3nsl
+++ b/usr/src/man/man3nsl/nlsprovider.3nsl
@@ -40,7 +40,7 @@ shared object
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -56,7 +56,8 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBnlsadmin\fR(1M), \fBattributes\fR(5)
+.BR attributes (7),
+.BR nlsadmin (8)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3nsl/nlsrequest.3nsl b/usr/src/man/man3nsl/nlsrequest.3nsl
index 380aa1902e..6eb487fa1b 100644
--- a/usr/src/man/man3nsl/nlsrequest.3nsl
+++ b/usr/src/man/man3nsl/nlsrequest.3nsl
@@ -95,7 +95,7 @@ shared object
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -111,8 +111,11 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBnlsadmin\fR(1M), \fBt_error\fR(3NSL), \fBt_snd\fR(3NSL), \fBt_rcv\fR(3NSL),
-\fBattributes\fR(5)
+.BR t_error (3NSL),
+.BR t_rcv (3NSL),
+.BR t_snd (3NSL),
+.BR attributes (7),
+.BR nlsadmin (8)
.SH WARNINGS
.sp
.LP
diff --git a/usr/src/man/man3nsl/rpc.3nsl b/usr/src/man/man3nsl/rpc.3nsl
index b6b75deb37..a77abe3cb7 100644
--- a/usr/src/man/man3nsl/rpc.3nsl
+++ b/usr/src/man/man3nsl/rpc.3nsl
@@ -33,7 +33,7 @@ linked with the \fBlibnsl\fR library.
In the case of multithreaded applications, the \fB-mt\fR option must be
specified on the command line at compilation time to enable a thread-specific
version of \fBrpc_createerr()\fR. See \fBrpc_clnt_create\fR(3NSL) and
-\fBthreads\fR(5).
+\fBthreads\fR(7).
.sp
.LP
When used in multithreaded applications, client-side routines are MT-Safe.
@@ -388,7 +388,7 @@ which they are described:
\fB\fBauth_destroy\fR\fR
.ad
.RS 27n
-\fBrpc_clnt_auth\fR(3NSL)
+.BR rpc_clnt_auth (3NSL)
.RE
.sp
@@ -397,7 +397,7 @@ which they are described:
\fB\fBauthdes_create\fR\fR
.ad
.RS 27n
-\fBrpc_soc\fR(3NSL)
+.BR rpc_soc (3NSL)
.RE
.sp
@@ -406,7 +406,7 @@ which they are described:
\fB\fBauthdes_getucred\fR\fR
.ad
.RS 27n
-\fBsecure_rpc\fR(3NSL)
+.BR secure_rpc (3NSL)
.RE
.sp
@@ -415,7 +415,7 @@ which they are described:
\fB\fBauthdes_seccreate\fR\fR
.ad
.RS 27n
-\fBsecure_rpc\fR(3NSL)
+.BR secure_rpc (3NSL)
.RE
.sp
@@ -424,7 +424,7 @@ which they are described:
\fB\fBauthnone_create\fR\fR
.ad
.RS 27n
-\fBrpc_clnt_auth\fR(3NSL)
+.BR rpc_clnt_auth (3NSL)
.RE
.sp
@@ -433,7 +433,7 @@ which they are described:
\fB\fBauthsys_create\fR\fR
.ad
.RS 27n
-\fBrpc_clnt_auth\fR(3NSL)
+.BR rpc_clnt_auth (3NSL)
.RE
.sp
@@ -442,7 +442,7 @@ which they are described:
\fB\fBauthsys_create_default\fR\fR
.ad
.RS 27n
-\fBrpc_clnt_auth\fR(3NSL)
+.BR rpc_clnt_auth (3NSL)
.RE
.sp
@@ -451,7 +451,7 @@ which they are described:
\fB\fBauthunix_create\fR\fR
.ad
.RS 27n
-\fBrpc_soc\fR(3NSL)
+.BR rpc_soc (3NSL)
.RE
.sp
@@ -460,7 +460,7 @@ which they are described:
\fB\fBauthunix_create_default\fR\fR
.ad
.RS 27n
-\fBrpc_soc\fR(3NSL)
+.BR rpc_soc (3NSL)
.RE
.sp
@@ -469,7 +469,7 @@ which they are described:
\fB\fBcallrpc\fR\fR
.ad
.RS 27n
-\fBrpc_soc\fR(3NSL)
+.BR rpc_soc (3NSL)
.RE
.sp
@@ -478,7 +478,7 @@ which they are described:
\fB\fBclnt_broadcast\fR\fR
.ad
.RS 27n
-\fBrpc_soc\fR(3NSL)
+.BR rpc_soc (3NSL)
.RE
.sp
@@ -487,7 +487,7 @@ which they are described:
\fB\fBclnt_call\fR\fR
.ad
.RS 27n
-\fBrpc_clnt_calls\fR(3NSL)
+.BR rpc_clnt_calls (3NSL)
.RE
.sp
@@ -496,7 +496,7 @@ which they are described:
\fB\fBclnt_control\fR\fR
.ad
.RS 27n
-\fBrpc_clnt_create\fR(3NSL)
+.BR rpc_clnt_create (3NSL)
.RE
.sp
@@ -505,7 +505,7 @@ which they are described:
\fB\fBclnt_create\fR\fR
.ad
.RS 27n
-\fBrpc_clnt_create\fR(3NSL)
+.BR rpc_clnt_create (3NSL)
.RE
.sp
@@ -514,7 +514,7 @@ which they are described:
\fB\fBclnt_destroy\fR\fR
.ad
.RS 27n
-\fBrpc_clnt_create\fR(3NSL)
+.BR rpc_clnt_create (3NSL)
.RE
.sp
@@ -523,7 +523,7 @@ which they are described:
\fB\fBclnt_dg_create\fR\fR
.ad
.RS 27n
-\fBrpc_clnt_create\fR(3NSL)
+.BR rpc_clnt_create (3NSL)
.RE
.sp
@@ -532,7 +532,7 @@ which they are described:
\fB\fBclnt_freeres\fR\fR
.ad
.RS 27n
-\fBrpc_clnt_calls\fR(3NSL)
+.BR rpc_clnt_calls (3NSL)
.RE
.sp
@@ -541,7 +541,7 @@ which they are described:
\fB\fBclnt_geterr\fR\fR
.ad
.RS 27n
-\fBrpc_clnt_calls\fR(3NSL)
+.BR rpc_clnt_calls (3NSL)
.RE
.sp
@@ -550,7 +550,7 @@ which they are described:
\fB\fBclnt_pcreateerror\fR\fR
.ad
.RS 27n
-\fBrpc_clnt_create\fR(3NSL)
+.BR rpc_clnt_create (3NSL)
.RE
.sp
@@ -559,7 +559,7 @@ which they are described:
\fB\fBclnt_perrno\fR\fR
.ad
.RS 27n
-\fBrpc_clnt_calls\fR(3NSL)
+.BR rpc_clnt_calls (3NSL)
.RE
.sp
@@ -568,7 +568,7 @@ which they are described:
\fB\fBclnt_perror\fR\fR
.ad
.RS 27n
-\fBrpc_clnt_calls\fR(3NSL)
+.BR rpc_clnt_calls (3NSL)
.RE
.sp
@@ -577,7 +577,7 @@ which they are described:
\fB\fBclnt_raw_create\fR\fR
.ad
.RS 27n
-\fBrpc_clnt_create\fR(3NSL)
+.BR rpc_clnt_create (3NSL)
.RE
.sp
@@ -586,7 +586,7 @@ which they are described:
\fB\fBclnt_spcreateerror\fR\fR
.ad
.RS 27n
-\fBrpc_clnt_create\fR(3NSL)
+.BR rpc_clnt_create (3NSL)
.RE
.sp
@@ -595,7 +595,7 @@ which they are described:
\fB\fBclnt_sperrno\fR\fR
.ad
.RS 27n
-\fBrpc_clnt_calls\fR(3NSL)
+.BR rpc_clnt_calls (3NSL)
.RE
.sp
@@ -604,7 +604,7 @@ which they are described:
\fB\fBclnt_sperror\fR\fR
.ad
.RS 27n
-\fBrpc_clnt_calls\fR(3NSL)
+.BR rpc_clnt_calls (3NSL)
.RE
.sp
@@ -613,7 +613,7 @@ which they are described:
\fB\fBclnt_tli_create\fR\fR
.ad
.RS 27n
-\fBrpc_clnt_create\fR(3NSL)
+.BR rpc_clnt_create (3NSL)
.RE
.sp
@@ -622,7 +622,7 @@ which they are described:
\fB\fBclnt_tp_create\fR\fR
.ad
.RS 27n
-\fBrpc_clnt_create\fR(3NSL)
+.BR rpc_clnt_create (3NSL)
.RE
.sp
@@ -631,7 +631,7 @@ which they are described:
\fB\fBclnt_vc_create\fR\fR
.ad
.RS 27n
-\fBrpc_clnt_create\fR(3NSL)
+.BR rpc_clnt_create (3NSL)
.RE
.sp
@@ -640,7 +640,7 @@ which they are described:
\fB\fBclntraw_create\fR\fR
.ad
.RS 27n
-\fBrpc_soc\fR(3NSL)
+.BR rpc_soc (3NSL)
.RE
.sp
@@ -649,7 +649,7 @@ which they are described:
\fB\fBclnttcp_create\fR\fR
.ad
.RS 27n
-\fBrpc_soc\fR(3NSL)
+.BR rpc_soc (3NSL)
.RE
.sp
@@ -658,7 +658,7 @@ which they are described:
\fB\fBclntudp_bufcreate\fR\fR
.ad
.RS 27n
-\fBrpc_soc\fR(3NSL)
+.BR rpc_soc (3NSL)
.RE
.sp
@@ -667,7 +667,7 @@ which they are described:
\fB\fBclntudp_create\fR\fR
.ad
.RS 27n
-\fBrpc_soc\fR(3NSL)
+.BR rpc_soc (3NSL)
.RE
.sp
@@ -676,7 +676,7 @@ which they are described:
\fB\fBget_myaddress\fR\fR
.ad
.RS 27n
-\fBrpc_soc\fR(3NSL)
+.BR rpc_soc (3NSL)
.RE
.sp
@@ -685,7 +685,7 @@ which they are described:
\fB\fBgetnetname\fR\fR
.ad
.RS 27n
-\fBsecure_rpc\fR(3NSL)
+.BR secure_rpc (3NSL)
.RE
.sp
@@ -694,7 +694,7 @@ which they are described:
\fB\fBhost2netname\fR\fR
.ad
.RS 27n
-\fBsecure_rpc\fR(3NSL)
+.BR secure_rpc (3NSL)
.RE
.sp
@@ -703,7 +703,7 @@ which they are described:
\fB\fBkey_decryptsession\fR\fR
.ad
.RS 27n
-\fBsecure_rpc\fR(3NSL)
+.BR secure_rpc (3NSL)
.RE
.sp
@@ -712,7 +712,7 @@ which they are described:
\fB\fBkey_encryptsession\fR\fR
.ad
.RS 27n
-\fBsecure_rpc\fR(3NSL)
+.BR secure_rpc (3NSL)
.RE
.sp
@@ -721,7 +721,7 @@ which they are described:
\fB\fBkey_gendes\fR\fR
.ad
.RS 27n
-\fBsecure_rpc\fR(3NSL)
+.BR secure_rpc (3NSL)
.RE
.sp
@@ -730,7 +730,7 @@ which they are described:
\fB\fBkey_setsecret\fR\fR
.ad
.RS 27n
-\fBsecure_rpc\fR(3NSL)
+.BR secure_rpc (3NSL)
.RE
.sp
@@ -739,7 +739,7 @@ which they are described:
\fB\fBnetname2host\fR\fR
.ad
.RS 27n
-\fBsecure_rpc\fR(3NSL)
+.BR secure_rpc (3NSL)
.RE
.sp
@@ -748,7 +748,7 @@ which they are described:
\fB\fBnetname2user\fR\fR
.ad
.RS 27n
-\fBsecure_rpc\fR(3NSL)
+.BR secure_rpc (3NSL)
.RE
.sp
@@ -757,7 +757,7 @@ which they are described:
\fB\fBpmap_getmaps\fR\fR
.ad
.RS 27n
-\fBrpc_soc\fR(3NSL)
+.BR rpc_soc (3NSL)
.RE
.sp
@@ -766,7 +766,7 @@ which they are described:
\fB\fBpmap_getport\fR\fR
.ad
.RS 27n
-\fBrpc_soc\fR(3NSL)
+.BR rpc_soc (3NSL)
.RE
.sp
@@ -775,7 +775,7 @@ which they are described:
\fB\fBpmap_rmtcall\fR\fR
.ad
.RS 27n
-\fBrpc_soc\fR(3NSL)
+.BR rpc_soc (3NSL)
.RE
.sp
@@ -784,7 +784,7 @@ which they are described:
\fB\fBpmap_set\fR\fR
.ad
.RS 27n
-\fBrpc_soc\fR(3NSL)
+.BR rpc_soc (3NSL)
.RE
.sp
@@ -793,7 +793,7 @@ which they are described:
\fB\fBpmap_unset\fR\fR
.ad
.RS 27n
-\fBrpc_soc\fR(3NSL)
+.BR rpc_soc (3NSL)
.RE
.sp
@@ -802,7 +802,7 @@ which they are described:
\fB\fBregisterrpc\fR\fR
.ad
.RS 27n
-\fBrpc_soc\fR(3NSL)
+.BR rpc_soc (3NSL)
.RE
.sp
@@ -811,7 +811,7 @@ which they are described:
\fB\fBrpc_broadcast\fR\fR
.ad
.RS 27n
-\fBrpc_clnt_calls\fR(3NSL)
+.BR rpc_clnt_calls (3NSL)
.RE
.sp
@@ -820,7 +820,7 @@ which they are described:
\fB\fBrpc_broadcast_exp\fR\fR
.ad
.RS 27n
-\fBrpc_clnt_calls\fR(3NSL)
+.BR rpc_clnt_calls (3NSL)
.RE
.sp
@@ -829,7 +829,7 @@ which they are described:
\fB\fBrpc_call\fR\fR
.ad
.RS 27n
-\fBrpc_clnt_calls\fR(3NSL)
+.BR rpc_clnt_calls (3NSL)
.RE
.sp
@@ -838,7 +838,7 @@ which they are described:
\fB\fBrpc_reg\fR\fR
.ad
.RS 27n
-\fBrpc_svc_reg\fR(3NSL)
+.BR rpc_svc_reg (3NSL)
.RE
.sp
@@ -847,7 +847,7 @@ which they are described:
\fB\fBsvc_create\fR\fR
.ad
.RS 27n
-\fBrpc_svc_create\fR(3NSL)
+.BR rpc_svc_create (3NSL)
.RE
.sp
@@ -856,7 +856,7 @@ which they are described:
\fB\fBsvc_destroy\fR\fR
.ad
.RS 27n
-\fBrpc_svc_create\fR(3NSL)
+.BR rpc_svc_create (3NSL)
.RE
.sp
@@ -865,7 +865,7 @@ which they are described:
\fB\fBsvc_dg_create\fR\fR
.ad
.RS 27n
-\fBrpc_svc_create\fR(3NSL)
+.BR rpc_svc_create (3NSL)
.RE
.sp
@@ -874,7 +874,7 @@ which they are described:
\fB\fBsvc_dg_enablecache\fR\fR
.ad
.RS 27n
-\fBrpc_svc_calls\fR(3NSL)
+.BR rpc_svc_calls (3NSL)
.RE
.sp
@@ -883,7 +883,7 @@ which they are described:
\fB\fBsvc_fd_create\fR\fR
.ad
.RS 27n
-\fBrpc_svc_create\fR(3NSL)
+.BR rpc_svc_create (3NSL)
.RE
.sp
@@ -892,7 +892,7 @@ which they are described:
\fB\fBsvc_fds\fR\fR
.ad
.RS 27n
-\fBrpc_soc\fR(3NSL)
+.BR rpc_soc (3NSL)
.RE
.sp
@@ -901,7 +901,7 @@ which they are described:
\fB\fBsvc_freeargs\fR\fR
.ad
.RS 27n
-\fBrpc_svc_calls\fR(3NSL)
+.BR rpc_svc_calls (3NSL)
.RE
.sp
@@ -910,7 +910,7 @@ which they are described:
\fB\fBsvc_getargs\fR\fR
.ad
.RS 27n
-\fBrpc_svc_calls\fR(3NSL)
+.BR rpc_svc_calls (3NSL)
.RE
.sp
@@ -919,7 +919,7 @@ which they are described:
\fB\fBsvc_getcaller\fR\fR
.ad
.RS 27n
-\fBrpc_soc\fR(3NSL)
+.BR rpc_soc (3NSL)
.RE
.sp
@@ -928,7 +928,7 @@ which they are described:
\fB\fBsvc_getreq\fR\fR
.ad
.RS 27n
-\fBrpc_soc\fR(3NSL)
+.BR rpc_soc (3NSL)
.RE
.sp
@@ -937,7 +937,7 @@ which they are described:
\fB\fBsvc_getreqset\fR\fR
.ad
.RS 27n
-\fBrpc_svc_calls\fR(3NSL)
+.BR rpc_svc_calls (3NSL)
.RE
.sp
@@ -946,7 +946,7 @@ which they are described:
\fB\fBsvc_getrpccaller\fR\fR
.ad
.RS 27n
-\fBrpc_svc_calls\fR(3NSL)
+.BR rpc_svc_calls (3NSL)
.RE
.sp
@@ -955,7 +955,7 @@ which they are described:
\fB\fBsvc_raw_create\fR\fR
.ad
.RS 27n
-\fBrpc_svc_create\fR(3NSL)
+.BR rpc_svc_create (3NSL)
.RE
.sp
@@ -964,7 +964,7 @@ which they are described:
\fB\fBsvc_reg\fR\fR
.ad
.RS 27n
-\fBrpc_svc_reg\fR(3NSL)
+.BR rpc_svc_reg (3NSL)
.RE
.sp
@@ -973,7 +973,7 @@ which they are described:
\fB\fBsvc_register\fR\fR
.ad
.RS 27n
-\fBrpc_soc\fR(3NSL)
+.BR rpc_soc (3NSL)
.RE
.sp
@@ -982,7 +982,7 @@ which they are described:
\fB\fBsvc_run\fR\fR
.ad
.RS 27n
-\fBrpc_svc_calls\fR(3NSL)
+.BR rpc_svc_calls (3NSL)
.RE
.sp
@@ -991,7 +991,7 @@ which they are described:
\fB\fBsvc_sendreply\fR\fR
.ad
.RS 27n
-\fBrpc_svc_calls\fR(3NSL)
+.BR rpc_svc_calls (3NSL)
.RE
.sp
@@ -1000,7 +1000,7 @@ which they are described:
\fB\fBsvc_tli_create\fR\fR
.ad
.RS 27n
-\fBrpc_svc_create\fR(3NSL)
+.BR rpc_svc_create (3NSL)
.RE
.sp
@@ -1009,7 +1009,7 @@ which they are described:
\fB\fBsvc_tp_create\fR\fR
.ad
.RS 27n
-\fBrpc_svc_create\fR(3NSL)
+.BR rpc_svc_create (3NSL)
.RE
.sp
@@ -1018,7 +1018,7 @@ which they are described:
\fB\fBsvc_unreg\fR\fR
.ad
.RS 27n
-\fBrpc_svc_reg\fR(3NSL)
+.BR rpc_svc_reg (3NSL)
.RE
.sp
@@ -1027,7 +1027,7 @@ which they are described:
\fB\fBsvc_unregister\fR\fR
.ad
.RS 27n
-\fBrpc_soc\fR(3NSL)
+.BR rpc_soc (3NSL)
.RE
.sp
@@ -1036,7 +1036,7 @@ which they are described:
\fB\fBsvc_vc_create\fR\fR
.ad
.RS 27n
-\fBrpc_svc_create\fR(3NSL)
+.BR rpc_svc_create (3NSL)
.RE
.sp
@@ -1045,7 +1045,7 @@ which they are described:
\fB\fBsvcerr_auth\fR\fR
.ad
.RS 27n
-\fBrpc_svc_err\fR(3NSL)
+.BR rpc_svc_err (3NSL)
.RE
.sp
@@ -1054,7 +1054,7 @@ which they are described:
\fB\fBsvcerr_decode\fR\fR
.ad
.RS 27n
-\fBrpc_svc_err\fR(3NSL)
+.BR rpc_svc_err (3NSL)
.RE
.sp
@@ -1063,7 +1063,7 @@ which they are described:
\fB\fBsvcerr_noproc\fR\fR
.ad
.RS 27n
-\fBrpc_svc_err\fR(3NSL)
+.BR rpc_svc_err (3NSL)
.RE
.sp
@@ -1072,7 +1072,7 @@ which they are described:
\fB\fBsvcerr_noprog\fR\fR
.ad
.RS 27n
-\fBrpc_svc_err\fR(3NSL)
+.BR rpc_svc_err (3NSL)
.RE
.sp
@@ -1081,7 +1081,7 @@ which they are described:
\fB\fBsvcerr_progvers\fR\fR
.ad
.RS 27n
-\fBrpc_svc_err\fR(3NSL)
+.BR rpc_svc_err (3NSL)
.RE
.sp
@@ -1090,7 +1090,7 @@ which they are described:
\fB\fBsvcerr_systemerr\fR\fR
.ad
.RS 27n
-\fBrpc_svc_err\fR(3NSL)
+.BR rpc_svc_err (3NSL)
.RE
.sp
@@ -1099,7 +1099,7 @@ which they are described:
\fB\fBsvcerr_weakauth\fR\fR
.ad
.RS 27n
-\fBrpc_svc_err\fR(3NSL)
+.BR rpc_svc_err (3NSL)
.RE
.sp
@@ -1108,7 +1108,7 @@ which they are described:
\fB\fBsvcfd_create\fR\fR
.ad
.RS 27n
-\fBrpc_soc\fR(3NSL)
+.BR rpc_soc (3NSL)
.RE
.sp
@@ -1117,7 +1117,7 @@ which they are described:
\fB\fBsvcraw_create\fR\fR
.ad
.RS 27n
-\fBrpc_soc\fR(3NSL)
+.BR rpc_soc (3NSL)
.RE
.sp
@@ -1126,7 +1126,7 @@ which they are described:
\fB\fBsvctcp_create\fR\fR
.ad
.RS 27n
-\fBrpc_soc\fR(3NSL)
+.BR rpc_soc (3NSL)
.RE
.sp
@@ -1135,7 +1135,7 @@ which they are described:
\fB\fBsvcudp_bufcreate\fR\fR
.ad
.RS 27n
-\fBrpc_soc\fR(3NSL)
+.BR rpc_soc (3NSL)
.RE
.sp
@@ -1144,7 +1144,7 @@ which they are described:
\fB\fBsvcudp_create\fR\fR
.ad
.RS 27n
-\fBrpc_soc\fR(3NSL)
+.BR rpc_soc (3NSL)
.RE
.sp
@@ -1153,7 +1153,7 @@ which they are described:
\fB\fBuser2netname\fR\fR
.ad
.RS 27n
-\fBsecure_rpc\fR(3NSL)
+.BR secure_rpc (3NSL)
.RE
.sp
@@ -1162,7 +1162,7 @@ which they are described:
\fB\fBxdr_accepted_reply\fR\fR
.ad
.RS 27n
-\fBrpc_xdr\fR(3NSL)
+.BR rpc_xdr (3NSL)
.RE
.sp
@@ -1171,7 +1171,7 @@ which they are described:
\fB\fBxdr_authsys_parms\fR\fR
.ad
.RS 27n
-\fBrpc_xdr\fR(3NSL)
+.BR rpc_xdr (3NSL)
.RE
.sp
@@ -1180,7 +1180,7 @@ which they are described:
\fB\fBxdr_authunix_parms\fR\fR
.ad
.RS 27n
-\fBrpc_soc\fR(3NSL)
+.BR rpc_soc (3NSL)
.RE
.sp
@@ -1189,7 +1189,7 @@ which they are described:
\fB\fBxdr_callhdr\fR\fR
.ad
.RS 27n
-\fBrpc_xdr\fR(3NSL)
+.BR rpc_xdr (3NSL)
.RE
.sp
@@ -1198,7 +1198,7 @@ which they are described:
\fB\fBxdr_callmsg\fR\fR
.ad
.RS 27n
-\fBrpc_xdr\fR(3NSL)
+.BR rpc_xdr (3NSL)
.RE
.sp
@@ -1207,7 +1207,7 @@ which they are described:
\fB\fBxdr_opaque_auth\fR\fR
.ad
.RS 27n
-\fBrpc_xdr\fR(3NSL)
+.BR rpc_xdr (3NSL)
.RE
.sp
@@ -1216,7 +1216,7 @@ which they are described:
\fB\fBxdr_rejected_reply\fR\fR
.ad
.RS 27n
-\fBrpc_xdr\fR(3NSL)
+.BR rpc_xdr (3NSL)
.RE
.sp
@@ -1225,7 +1225,7 @@ which they are described:
\fB\fBxdr_replymsg\fR\fR
.ad
.RS 27n
-\fBrpc_xdr\fR(3NSL)
+.BR rpc_xdr (3NSL)
.RE
.sp
@@ -1234,7 +1234,7 @@ which they are described:
\fB\fBxprt_register\fR\fR
.ad
.RS 27n
-\fBrpc_svc_reg\fR(3NSL)
+.BR rpc_svc_reg (3NSL)
.RE
.sp
@@ -1243,7 +1243,7 @@ which they are described:
\fB\fBxprt_unregister\fR\fR
.ad
.RS 27n
-\fBrpc_svc_reg\fR(3NSL)
+.BR rpc_svc_reg (3NSL)
.RE
.SH FILES
@@ -1251,7 +1251,7 @@ which they are described:
\fB/etc/netconfig\fR
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -1266,9 +1266,21 @@ MT-Level MT-Safe with exceptions
.SH SEE ALSO
.LP
-\fBgetnetconfig\fR(3NSL), \fBgetnetpath\fR(3NSL), \fBrpc_clnt_auth\fR(3NSL),
-\fBrpc_clnt_calls\fR(3NSL), \fBrpc_clnt_create\fR(3NSL),
-\fBrpc_svc_calls\fR(3NSL), \fBrpc_svc_create\fR(3NSL), \fBrpc_svc_err\fR(3NSL),
-\fBrpc_svc_reg\fR(3NSL), \fBrpc_xdr\fR(3NSL), \fBrpcbind\fR(3NSL),
-\fBsecure_rpc\fR(3NSL), \fBthreads\fR(5), \fBxdr\fR(3NSL), \fBnetconfig\fR(4),
-\fBrpc\fR(4), \fBattributes\fR(5), \fBenviron\fR(5)
+.BR getnetconfig (3NSL),
+.BR getnetpath (3NSL),
+.BR rpc_clnt_auth (3NSL),
+.BR rpc_clnt_calls (3NSL),
+.BR rpc_clnt_create (3NSL),
+.BR rpc_svc_calls (3NSL),
+.BR rpc_svc_create (3NSL),
+.BR rpc_svc_err (3NSL),
+.BR rpc_svc_reg (3NSL),
+.BR rpc_xdr (3NSL),
+.BR rpcbind (3NSL),
+.BR secure_rpc (3NSL),
+.BR xdr (3NSL),
+.BR netconfig (5),
+.BR rpc (5),
+.BR attributes (7),
+.BR environ (7),
+.BR threads (7)
diff --git a/usr/src/man/man3nsl/rpc_clnt_auth.3nsl b/usr/src/man/man3nsl/rpc_clnt_auth.3nsl
index 6cbd485653..8e444aa9c6 100644
--- a/usr/src/man/man3nsl/rpc_clnt_auth.3nsl
+++ b/usr/src/man/man3nsl/rpc_clnt_auth.3nsl
@@ -109,7 +109,7 @@ Call \fBauthsys_create()\fR with the appropriate parameters.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -124,5 +124,8 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBrpc\fR(3NSL), \fBrpc_clnt_calls\fR(3NSL), \fBrpc_clnt_create\fR(3NSL),
-\fBsecure_rpc\fR(3NSL), \fBattributes\fR(5)
+.BR rpc (3NSL),
+.BR rpc_clnt_calls (3NSL),
+.BR rpc_clnt_create (3NSL),
+.BR secure_rpc (3NSL),
+.BR attributes (7)
diff --git a/usr/src/man/man3nsl/rpc_clnt_calls.3nsl b/usr/src/man/man3nsl/rpc_clnt_calls.3nsl
index 1d63cd6be7..8c7c4efad7 100644
--- a/usr/src/man/man3nsl/rpc_clnt_calls.3nsl
+++ b/usr/src/man/man3nsl/rpc_clnt_calls.3nsl
@@ -314,7 +314,7 @@ control of timeouts or authentication using this routine.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -334,5 +334,8 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBprintf\fR(3C), \fBrpc\fR(3NSL), \fBrpc_clnt_auth\fR(3NSL),
-\fBrpc_clnt_create\fR(3NSL), \fBattributes\fR(5)
+.BR printf (3C),
+.BR rpc (3NSL),
+.BR rpc_clnt_auth (3NSL),
+.BR rpc_clnt_create (3NSL),
+.BR attributes (7)
diff --git a/usr/src/man/man3nsl/rpc_clnt_create.3nsl b/usr/src/man/man3nsl/rpc_clnt_create.3nsl
index 67f37cf3a1..b667b622e7 100644
--- a/usr/src/man/man3nsl/rpc_clnt_create.3nsl
+++ b/usr/src/man/man3nsl/rpc_clnt_create.3nsl
@@ -132,7 +132,7 @@ These routines are MT-Safe. In the case of multithreaded applications, the
\fB-mt\fR option must be specified on the command line at compilation time.
When the \fB-mt\fR option is specified, \fBrpc_createerr\fR becomes a macro
that enables each thread to have its own \fBrpc_createerr\fR. See
-\fBthreads\fR(5).
+\fBthreads\fR(7).
.SS "Routines"
.LP
See \fBrpc\fR(3NSL) for the definition of the \fBCLIENT\fR data structure.
@@ -457,7 +457,7 @@ Depending upon the type of the transport (connection-oriented or
connectionless), \fBclnt_tli_create()\fR calls appropriate client creation
routines. This routine returns \fINULL\fR if it fails. The
\fBclnt_pcreateerror()\fR routine can be used to print the reason for failure.
-The remote \fBrpcbind\fR service (see \fBrpcbind\fR(1M)) is not consulted for
+The remote \fBrpcbind\fR service (see \fBrpcbind\fR(8)) is not consulted for
the address of the remote service.
.RE
@@ -546,7 +546,7 @@ value for \fBrpc_createerr\fR.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -565,6 +565,11 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBrpcbind\fR(1M), \fBrpc\fR(3NSL), \fBrpc_clnt_auth\fR(3NSL),
-\fBrpc_clnt_calls\fR(3NSL), \fBrpc_svc_create\fR(3NSL),
-\fBsvc_raw_create\fR(3NSL), \fBthreads\fR(5), \fBattributes\fR(5)
+.BR rpc (3NSL),
+.BR rpc_clnt_auth (3NSL),
+.BR rpc_clnt_calls (3NSL),
+.BR rpc_svc_create (3NSL),
+.BR svc_raw_create (3NSL),
+.BR attributes (7),
+.BR threads (7),
+.BR rpcbind (8)
diff --git a/usr/src/man/man3nsl/rpc_control.3nsl b/usr/src/man/man3nsl/rpc_control.3nsl
index ce905004ab..cc0132bf4f 100644
--- a/usr/src/man/man3nsl/rpc_control.3nsl
+++ b/usr/src/man/man3nsl/rpc_control.3nsl
@@ -112,7 +112,7 @@ This routine returns \fBTRUE\fR if the operation was successful and
returns \fBFALSE\fR otherwise.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -127,8 +127,10 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBrpcbind\fR(1M), \fBrpc\fR(3NSL), \fBrpc_svc_calls\fR(3NSL),
-\fBattributes\fR(5)
+.BR rpc (3NSL),
+.BR rpc_svc_calls (3NSL),
+.BR attributes (7),
+.BR rpcbind (8)
.sp
.LP
\fINetwork Interfaces Programmer's Guide\fR
diff --git a/usr/src/man/man3nsl/rpc_gss_get_error.3nsl b/usr/src/man/man3nsl/rpc_gss_get_error.3nsl
index f1a9b56fd5..86c3e695fd 100644
--- a/usr/src/man/man3nsl/rpc_gss_get_error.3nsl
+++ b/usr/src/man/man3nsl/rpc_gss_get_error.3nsl
@@ -68,7 +68,7 @@ Unless there is a failure indication from an invoked \fBRPCSEC_GSS\fR function,
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -84,7 +84,10 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBperror\fR(3C), \fBrpc\fR(3NSL), \fBrpcsec_gss\fR(3NSL), \fBattributes\fR(5)
+.BR perror (3C),
+.BR rpc (3NSL),
+.BR rpcsec_gss (3NSL),
+.BR attributes (7)
.sp
.LP
\fIONC+ Developer\&'s Guide\fR
diff --git a/usr/src/man/man3nsl/rpc_gss_get_mechanisms.3nsl b/usr/src/man/man3nsl/rpc_gss_get_mechanisms.3nsl
index 1684e08249..4a58269ebd 100644
--- a/usr/src/man/man3nsl/rpc_gss_get_mechanisms.3nsl
+++ b/usr/src/man/man3nsl/rpc_gss_get_mechanisms.3nsl
@@ -140,7 +140,7 @@ File containing valid QOP values
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -156,8 +156,11 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBrpc\fR(3NSL), \fBrpcsec_gss\fR(3NSL), \fBmech\fR(4), \fBqop\fR(4),
-\fBattributes\fR(5)
+.BR rpc (3NSL),
+.BR rpcsec_gss (3NSL),
+.BR mech (5),
+.BR qop (5),
+.BR attributes (7)
.sp
.LP
\fIONC+ Developer\&'s Guide\fR
diff --git a/usr/src/man/man3nsl/rpc_gss_get_principal_name.3nsl b/usr/src/man/man3nsl/rpc_gss_get_principal_name.3nsl
index 72910a7b92..ac7d749af5 100644
--- a/usr/src/man/man3nsl/rpc_gss_get_principal_name.3nsl
+++ b/usr/src/man/man3nsl/rpc_gss_get_principal_name.3nsl
@@ -104,7 +104,7 @@ File containing valid security mechanisms
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -118,9 +118,13 @@ MT-Level MT-Safe
.TE
.SH SEE ALSO
-\fBfree\fR(3C), \fBrpc\fR(3NSL), \fBrpc_gss_get_mechanisms\fR(3NSL),
-\fBrpc_gss_set_svc_name\fR(3NSL), \fBrpcsec_gss\fR(3NSL), \fBmech\fR(4),
-\fBattributes\fR(5)
+.BR free (3C),
+.BR rpc (3NSL),
+.BR rpc_gss_get_mechanisms (3NSL),
+.BR rpc_gss_set_svc_name (3NSL),
+.BR rpcsec_gss (3NSL),
+.BR mech (5),
+.BR attributes (7)
.sp
.LP
\fIONC+ Developer\&'s Guide\fR
diff --git a/usr/src/man/man3nsl/rpc_gss_getcred.3nsl b/usr/src/man/man3nsl/rpc_gss_getcred.3nsl
index 889dee1ae4..b7cb14b546 100644
--- a/usr/src/man/man3nsl/rpc_gss_getcred.3nsl
+++ b/usr/src/man/man3nsl/rpc_gss_getcred.3nsl
@@ -82,7 +82,7 @@ structure that represents a context initiator.) See also
\fBrpc_gss_getcred()\fR returns TRUE if it is successful; otherwise, use
\fBrpc_gss_get_error()\fR to get the error associated with the failure.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -96,7 +96,11 @@ MT-Level MT-Safe
.TE
.SH SEE ALSO
-\fBrpc\fR(3NSL), \fBrpc_gss_set_callback\fR(3NSL), \fBrpc_gss_set_svc_name\fR(3NSL), \fBrpcsec_gss\fR(3NSL), \fBattributes\fR(5)
+.BR rpc (3NSL),
+.BR rpc_gss_set_callback (3NSL),
+.BR rpc_gss_set_svc_name (3NSL),
+.BR rpcsec_gss (3NSL),
+.BR attributes (7)
.sp
.LP
\fIONC+ Developer\&'s Guide\fR
diff --git a/usr/src/man/man3nsl/rpc_gss_max_data_length.3nsl b/usr/src/man/man3nsl/rpc_gss_max_data_length.3nsl
index fceb676b63..def06c47bb 100644
--- a/usr/src/man/man3nsl/rpc_gss_max_data_length.3nsl
+++ b/usr/src/man/man3nsl/rpc_gss_max_data_length.3nsl
@@ -72,7 +72,7 @@ Both functions return the maximum size of untransformed data allowed, as an
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -88,7 +88,9 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBrpc\fR(3NSL), \fBrpcsec_gss\fR(3NSL), \fBattributes\fR(5)
+.BR rpc (3NSL),
+.BR rpcsec_gss (3NSL),
+.BR attributes (7)
.sp
.LP
\fIONC+ Developer\&'s Guide\fR
diff --git a/usr/src/man/man3nsl/rpc_gss_mech_to_oid.3nsl b/usr/src/man/man3nsl/rpc_gss_mech_to_oid.3nsl
index 5209e6dfe3..76a31230a1 100644
--- a/usr/src/man/man3nsl/rpc_gss_mech_to_oid.3nsl
+++ b/usr/src/man/man3nsl/rpc_gss_mech_to_oid.3nsl
@@ -104,7 +104,7 @@ File containing valid QOP values
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -120,7 +120,13 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBrpc\fR(3NSL), \fBrpc_gss_get_error\fR(3NSL), \fBrpc_gss_get_mechanisms\fR(3NSL), \fBrpcsec_gss\fR(3NSL), \fBmech\fR(4), \fBqop\fR(4), \fBattributes\fR(5)
+.BR rpc (3NSL),
+.BR rpc_gss_get_error (3NSL),
+.BR rpc_gss_get_mechanisms (3NSL),
+.BR rpcsec_gss (3NSL),
+.BR mech (5),
+.BR qop (5),
+.BR attributes (7)
.sp
.LP
\fIONC+ Developer\&'s Guide\fR
diff --git a/usr/src/man/man3nsl/rpc_gss_seccreate.3nsl b/usr/src/man/man3nsl/rpc_gss_seccreate.3nsl
index d445c2e204..da08b5df3b 100644
--- a/usr/src/man/man3nsl/rpc_gss_seccreate.3nsl
+++ b/usr/src/man/man3nsl/rpc_gss_seccreate.3nsl
@@ -128,7 +128,7 @@ File containing valid QOP values.
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -142,7 +142,14 @@ MT-Level MT-Safe
.TE
.SH SEE ALSO
-\fBauth_destroy\fR(3NSL), \fBrpc\fR(3NSL), \fBrpc_gss_get_error\fR(3NSL), \fBrpc_gss_get_mechanisms\fR(3NSL), \fBrpcsec_gss\fR(3NSL), \fBmech\fR(4), \fBqop\fR(4), \fBattributes\fR(5)
+.BR auth_destroy (3NSL),
+.BR rpc (3NSL),
+.BR rpc_gss_get_error (3NSL),
+.BR rpc_gss_get_mechanisms (3NSL),
+.BR rpcsec_gss (3NSL),
+.BR mech (5),
+.BR qop (5),
+.BR attributes (7)
.sp
.LP
\fIONC+ Developer\&'s Guide\fR
diff --git a/usr/src/man/man3nsl/rpc_gss_set_callback.3nsl b/usr/src/man/man3nsl/rpc_gss_set_callback.3nsl
index b908e6c768..befb443595 100644
--- a/usr/src/man/man3nsl/rpc_gss_set_callback.3nsl
+++ b/usr/src/man/man3nsl/rpc_gss_set_callback.3nsl
@@ -109,7 +109,7 @@ accepted; false otherwise.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -125,7 +125,10 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBrpc\fR(3NSL), \fBrpc_gss_getcred\fR(3NSL), \fBrpcsec_gss\fR(3NSL), \fBattributes\fR(5)
+.BR rpc (3NSL),
+.BR rpc_gss_getcred (3NSL),
+.BR rpcsec_gss (3NSL),
+.BR attributes (7)
.sp
.LP
\fIONC+ Developer\&'s Guide\fR
diff --git a/usr/src/man/man3nsl/rpc_gss_set_defaults.3nsl b/usr/src/man/man3nsl/rpc_gss_set_defaults.3nsl
index e9d94e9c95..3874bc3657 100644
--- a/usr/src/man/man3nsl/rpc_gss_set_defaults.3nsl
+++ b/usr/src/man/man3nsl/rpc_gss_set_defaults.3nsl
@@ -73,7 +73,7 @@ File containing valid QOPs
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -89,7 +89,11 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBrpc\fR(3NSL), \fBrpc_gss_get_mech_info\fR(3NSL), \fBrpcsec_gss\fR(3NSL), \fBqop\fR(4), \fBattributes\fR(5)
+.BR rpc (3NSL),
+.BR rpc_gss_get_mech_info (3NSL),
+.BR rpcsec_gss (3NSL),
+.BR qop (5),
+.BR attributes (7)
.sp
.LP
\fIONC+ Developer\&'s Guide\fR
diff --git a/usr/src/man/man3nsl/rpc_gss_set_svc_name.3nsl b/usr/src/man/man3nsl/rpc_gss_set_svc_name.3nsl
index 0fc31f88bd..e4e13f83fb 100644
--- a/usr/src/man/man3nsl/rpc_gss_set_svc_name.3nsl
+++ b/usr/src/man/man3nsl/rpc_gss_set_svc_name.3nsl
@@ -96,7 +96,7 @@ File containing valid security mechanisms
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -112,7 +112,12 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBrpc\fR(3NSL), \fBrpc_gss_get_mechanisms\fR(3NSL), \fBrpc_gss_get_principal_name\fR(3NSL), \fBrpcsec_gss\fR(3NSL), \fBmech\fR(4), \fBattributes\fR(5)
+.BR rpc (3NSL),
+.BR rpc_gss_get_mechanisms (3NSL),
+.BR rpc_gss_get_principal_name (3NSL),
+.BR rpcsec_gss (3NSL),
+.BR mech (5),
+.BR attributes (7)
.sp
.LP
\fIONC+ Developer\&'s Guide\fR
diff --git a/usr/src/man/man3nsl/rpc_soc.3nsl b/usr/src/man/man3nsl/rpc_soc.3nsl
index a94dab4dfe..f69344409f 100644
--- a/usr/src/man/man3nsl/rpc_soc.3nsl
+++ b/usr/src/man/man3nsl/rpc_soc.3nsl
@@ -224,7 +224,7 @@ declarations for the old interfaces are included through the header files.
\fBauthdes_create()\fR is the first of two routines which interface to the
\fBRPC\fR secure authentication system, known as \fBDES\fR authentication. The
second is \fBauthdes_getucred()\fR, below. Note: the keyserver daemon
-\fBkeyserv\fR(1M) must be running for the \fBDES\fR authentication system to
+\fBkeyserv\fR(8) must be running for the \fBDES\fR authentication system to
work.
.sp
\fBauthdes_create()\fR, used on the client side, returns an authentication
@@ -800,7 +800,7 @@ This routine exists for backward compatibility only, and is made obsolete by
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -815,13 +815,26 @@ MT-Level Unsafe
.SH SEE ALSO
.LP
-\fBkeyserv\fR(1M), \fBrpcbind\fR(1M), \fBrpcinfo\fR(1M), \fBnetdir\fR(3NSL),
-\fBnetdir_getbyname\fR(3NSL), \fBrpc\fR(3NSL), \fBrpc_clnt_auth\fR(3NSL),
-\fBrpc_clnt_calls\fR(3NSL), \fBrpc_clnt_create\fR(3NSL),
-\fBrpc_svc_calls\fR(3NSL), \fBrpc_svc_create\fR(3NSL), \fBrpc_svc_err\fR(3NSL),
-\fBrpc_svc_reg\fR(3NSL), \fBrpc_xdr\fR(3NSL), \fBrpcbind\fR(3NSL),
-\fBsecure_rpc\fR(3NSL), \fBselect\fR(3C), \fBxdr_authsys_parms\fR(3NSL),
-\fBlibnsl\fR(3LIB), \fBattributes\fR(5)
+.BR select (3C),
+.BR libnsl (3LIB),
+.BR netdir (3NSL),
+.BR netdir_getbyname (3NSL),
+.BR rpc (3NSL),
+.BR rpc_clnt_auth (3NSL),
+.BR rpc_clnt_calls (3NSL),
+.BR rpc_clnt_create (3NSL),
+.BR rpc_svc_calls (3NSL),
+.BR rpc_svc_create (3NSL),
+.BR rpc_svc_err (3NSL),
+.BR rpc_svc_reg (3NSL),
+.BR rpc_xdr (3NSL),
+.BR rpcbind (3NSL),
+.BR secure_rpc (3NSL),
+.BR xdr_authsys_parms (3NSL),
+.BR attributes (7),
+.BR keyserv (8),
+.BR rpcbind (8),
+.BR rpcinfo (8)
.SH NOTES
.LP
These interfaces are unsafe in multithreaded applications. Unsafe interfaces
diff --git a/usr/src/man/man3nsl/rpc_svc_calls.3nsl b/usr/src/man/man3nsl/rpc_svc_calls.3nsl
index 5ca2a7d18c..d75c78b2a9 100644
--- a/usr/src/man/man3nsl/rpc_svc_calls.3nsl
+++ b/usr/src/man/man3nsl/rpc_svc_calls.3nsl
@@ -257,7 +257,7 @@ When \fIucred\fR is no longer needed, a credential allocated by
\fBsvc_getcallerucred()\fR should be freed with \fBucred_free\fR(3C).
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of attribute types and values.
+See \fBattributes\fR(7) for descriptions of attribute types and values.
.sp
.sp
@@ -281,7 +281,14 @@ the Automatic or the User MT mode. The \fBsvc_getreq_common()\fR,
multithreaded applications and should be called only from the main thread.
.SH SEE ALSO
.LP
-\fBrpcgen\fR(1), \fBpoll\fR(2), \fBgetpeerucred\fR(3C), \fBrpc\fR(3NSL),
-\fBrpc_control\fR(3NSL), \fBrpc_svc_create\fR(3NSL), \fBrpc_svc_err\fR(3NSL),
-\fBrpc_svc_reg\fR(3NSL), \fBselect\fR(3C), \fBucred_free\fR(3C),
-\fBattributes\fR(5)
+.BR rpcgen (1),
+.BR poll (2),
+.BR getpeerucred (3C),
+.BR select (3C),
+.BR ucred_free (3C),
+.BR rpc (3NSL),
+.BR rpc_control (3NSL),
+.BR rpc_svc_create (3NSL),
+.BR rpc_svc_err (3NSL),
+.BR rpc_svc_reg (3NSL),
+.BR attributes (7)
diff --git a/usr/src/man/man3nsl/rpc_svc_create.3nsl b/usr/src/man/man3nsl/rpc_svc_create.3nsl
index 476692d442..95d34c89c0 100644
--- a/usr/src/man/man3nsl/rpc_svc_create.3nsl
+++ b/usr/src/man/man3nsl/rpc_svc_create.3nsl
@@ -237,7 +237,7 @@ variable or in top to bottom order in the netconfig database. If \fInettype\fR
is \fINULL,\fR it defaults to \fBnetpath\fR.
.sp
\fBsvc_create()\fR registers itself with the \fBrpcbind\fR service (see
-\fBrpcbind\fR(1M)). \fIdispatch\fR is called when there is a remote procedure
+\fBrpcbind\fR(8)). \fIdispatch\fR is called when there is a remote procedure
call for the given \fIprognum\fR and \fIversnum\fR; this requires calling
\fBsvc_run()\fR (see \fBsvc_run()\fR in \fBrpc_svc_calls\fR(3NSL)). If
\fBsvc_create()\fR succeeds, it returns the number of server handles it
@@ -266,7 +266,7 @@ pointer to it. This routine returns \fINULL\fR if it fails, and an error
message is logged. \fIsendsz\fR and \fIrecvsz\fR are parameters used to specify
the size of the buffers. If they are \fB0\fR, suitable defaults are chosen. The
file descriptor \fIfildes\fR should be open and bound. The server is not
-registered with \fBrpcbind\fR(1M).
+registered with \fBrpcbind\fR(8).
.sp
Warning: since connectionless-based \fBRPC\fR messages can only hold limited
amount of encoded data, this transport cannot be used for procedures that take
@@ -322,7 +322,7 @@ outstanding connect requests is set to 8 for connection-oriented transports.
The user may specify the size of the send and receive buffers with the
parameters \fIsendsz\fR and \fIrecvsz\fR \fI;\fR values of \fB0\fR choose
suitable defaults. This routine returns \fINULL\fR if it fails, and an error
-message is logged. The server is not registered with the \fBrpcbind\fR(1M)
+message is logged. The server is not registered with the \fBrpcbind\fR(8)
service.
.RE
@@ -367,7 +367,7 @@ pointer to it. This routine returns \fINULL\fR if it fails, and an error
message is logged. The users may specify the size of the send and receive
buffers with the parameters \fIsendsz\fR and \fIrecvsz\fR; values of \fB0\fR
choose suitable defaults. The file descriptor \fIfildes\fR should be open and
-bound. The server is not registered with the \fBrpcbind\fR(1M) service.
+bound. The server is not registered with the \fBrpcbind\fR(8) service.
.RE
.sp
@@ -384,14 +384,14 @@ of the send buffer with the parameter \fIsendsz\fR. If \fIsendsz\fR is 0, the
corresponding default buffer size is 16 Kbyte. If successful, the
\fBsvc_door_create()\fR routine returns the service handle. Otherwise it
returns \fINULL\fR and sets a value for \fBrpc_createerr\fR. The server is not
-registered with \fBrpcbind\fR(1M). The \fBSVCSET_CONNMAXREC\fR and
+registered with \fBrpcbind\fR(8). The \fBSVCSET_CONNMAXREC\fR and
\fBSVCGET_CONNMAXREC\fR \fBsvc_control()\fR requests can be used to set and
change the maximum allowed request size for the doors transport.
.RE
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -410,6 +410,10 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBrpcbind\fR(1M), \fBrpc\fR(3NSL), \fBrpc_clnt_create\fR(3NSL),
-\fBrpc_svc_calls\fR(3NSL), \fBrpc_svc_err\fR(3NSL), \fBrpc_svc_reg\fR(3NSL),
-\fBattributes\fR(5)
+.BR rpc (3NSL),
+.BR rpc_clnt_create (3NSL),
+.BR rpc_svc_calls (3NSL),
+.BR rpc_svc_err (3NSL),
+.BR rpc_svc_reg (3NSL),
+.BR attributes (7),
+.BR rpcbind (8)
diff --git a/usr/src/man/man3nsl/rpc_svc_err.3nsl b/usr/src/man/man3nsl/rpc_svc_err.3nsl
index 4c97f9e899..f94314f8ae 100644
--- a/usr/src/man/man3nsl/rpc_svc_err.3nsl
+++ b/usr/src/man/man3nsl/rpc_svc_err.3nsl
@@ -113,7 +113,7 @@ calls \fBsvcerr_auth(xprt, AUTH_TOOWEAK)\fR.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -128,5 +128,8 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBrpc\fR(3NSL), \fBrpc_svc_calls\fR(3NSL), \fBrpc_svc_create\fR(3NSL),
-\fBrpc_svc_reg\fR(3NSL), \fBattributes\fR(5)
+.BR rpc (3NSL),
+.BR rpc_svc_calls (3NSL),
+.BR rpc_svc_create (3NSL),
+.BR rpc_svc_reg (3NSL),
+.BR attributes (7)
diff --git a/usr/src/man/man3nsl/rpc_svc_input.3nsl b/usr/src/man/man3nsl/rpc_svc_input.3nsl
index 7d1be024ff..9b3fc9347d 100644
--- a/usr/src/man/man3nsl/rpc_svc_input.3nsl
+++ b/usr/src/man/man3nsl/rpc_svc_input.3nsl
@@ -126,7 +126,7 @@ The \fIid\fR parameter is invalid.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -146,4 +146,6 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBpoll\fR(2), \fBrpc\fR(3NSL), \fBattributes\fR(5)
+.BR poll (2),
+.BR rpc (3NSL),
+.BR attributes (7)
diff --git a/usr/src/man/man3nsl/rpc_svc_reg.3nsl b/usr/src/man/man3nsl/rpc_svc_reg.3nsl
index d3437a78f0..e23090a5c5 100644
--- a/usr/src/man/man3nsl/rpc_svc_reg.3nsl
+++ b/usr/src/man/man3nsl/rpc_svc_reg.3nsl
@@ -11,7 +11,7 @@ xprt_unregister \- library routines for registering servers
.SH DESCRIPTION
.LP
These routines are a part of the \fBRPC\fR library which allows the \fBRPC\fR
-servers to register themselves with \fBrpcbind()\fR (see \fBrpcbind\fR(1M)),
+servers to register themselves with \fBrpcbind()\fR (see \fBrpcbind\fR(8)),
and associate the given program and version number with the dispatch function.
When the RPC server receives a RPC request, the library invokes the dispatch
routine with the appropriate arguments.
@@ -60,7 +60,7 @@ netconfig *\fInetconf\fR);\fR
Associates \fIprognum\fR and \fIversnum\fR with the service dispatch procedure,
\fIdispatch\fR. If \fInetconf\fR is \fINULL\fR, the service is not registered
with the \fBrpcbind\fR service. For example, if a service has already been
-registered using some other means, such as \fBinetd\fR (see \fBinetd\fR(1M)),
+registered using some other means, such as \fBinetd\fR (see \fBinetd\fR(8)),
it will not need to be registered again. If \fInetconf\fR is non-zero, then a
mapping of the triple [\fIprognum\fR, \fI versnum\fR, \fInetconf\fR->\fI]\fR to
\fIxprt\fR-> \fIxp_ltaddr\fR is established with the local \fBrpcbind\fR
@@ -140,7 +140,7 @@ routine.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -155,6 +155,12 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBinetd\fR(1M), \fBrpcbind\fR(1M), \fBrpc\fR(3NSL), \fBrpc_svc_calls\fR(3NSL),
-\fBrpc_svc_create\fR(3NSL), \fBrpc_svc_err\fR(3NSL), \fBrpcbind\fR(3NSL),
-\fBselect\fR(3C), \fBattributes\fR(5)
+.BR select (3C),
+.BR rpc (3NSL),
+.BR rpc_svc_calls (3NSL),
+.BR rpc_svc_create (3NSL),
+.BR rpc_svc_err (3NSL),
+.BR rpcbind (3NSL),
+.BR attributes (7),
+.BR inetd (8),
+.BR rpcbind (8)
diff --git a/usr/src/man/man3nsl/rpc_xdr.3nsl b/usr/src/man/man3nsl/rpc_xdr.3nsl
index be9643802e..3df1350f50 100644
--- a/usr/src/man/man3nsl/rpc_xdr.3nsl
+++ b/usr/src/man/man3nsl/rpc_xdr.3nsl
@@ -144,7 +144,7 @@ either an acceptance, rejection or \fINULL\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -160,4 +160,6 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBrpc\fR(3NSL), \fBxdr\fR(3NSL), \fBattributes\fR(5)
+.BR rpc (3NSL),
+.BR xdr (3NSL),
+.BR attributes (7)
diff --git a/usr/src/man/man3nsl/rpcbind.3nsl b/usr/src/man/man3nsl/rpcbind.3nsl
index 15d0fea75f..e0a7bcff11 100644
--- a/usr/src/man/man3nsl/rpcbind.3nsl
+++ b/usr/src/man/man3nsl/rpcbind.3nsl
@@ -57,7 +57,7 @@ rpcb_unset \- library routines for RPC bind service
.LP
These routines allow client C programs to make procedure calls to the RPC
binder service. \fBrpcbind\fR maintains a list of mappings between programs and
-their universal addresses. See \fBrpcbind\fR(1M).
+their universal addresses. See \fBrpcbind\fR(8).
.SS "Routines"
.ne 2
.na
@@ -157,7 +157,7 @@ super-user can destroy the mapping. See also \fBsvc_unreg()\fR in
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -172,5 +172,9 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBrpcbind\fR(1M), \fBrpcinfo\fR(1M), \fBrpc_clnt_calls\fR(3NSL),
-\fBrpc_clnt_create\fR(3NSL), \fBrpc_svc_calls\fR(3NSL), \fBattributes\fR(5)
+.BR rpc_clnt_calls (3NSL),
+.BR rpc_clnt_create (3NSL),
+.BR rpc_svc_calls (3NSL),
+.BR attributes (7),
+.BR rpcbind (8),
+.BR rpcinfo (8)
diff --git a/usr/src/man/man3nsl/rpcsec_gss.3nsl b/usr/src/man/man3nsl/rpcsec_gss.3nsl
index dc3e9bfdbe..ddc47f9d60 100644
--- a/usr/src/man/man3nsl/rpcsec_gss.3nsl
+++ b/usr/src/man/man3nsl/rpcsec_gss.3nsl
@@ -395,7 +395,7 @@ Maps ASCII QOP, mechansim to u_int number
.LP
The \fBgsscred\fR utility manages the \fBgsscred\fR table, which contains
mappings of principal names between network and local credentials. See
-\fBgsscred\fR(1M).
+\fBgsscred\fR(8).
.SH FILES
.sp
.ne 2
@@ -418,7 +418,7 @@ List of valid QOPs
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -434,7 +434,12 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBgsscred\fR(1M), \fBrpc\fR(3NSL), \fBrpc_clnt_auth\fR(3NSL), \fBxdr\fR(3NSL), \fBattributes\fR(5), \fBenviron\fR(5)
+.BR rpc (3NSL),
+.BR rpc_clnt_auth (3NSL),
+.BR xdr (3NSL),
+.BR attributes (7),
+.BR environ (7),
+.BR gsscred (8)
.sp
.LP
\fIONC+ Developer\&'s Guide\fR
diff --git a/usr/src/man/man3nsl/secure_rpc.3nsl b/usr/src/man/man3nsl/secure_rpc.3nsl
index 2f699585ce..9ab46c81c7 100644
--- a/usr/src/man/man3nsl/secure_rpc.3nsl
+++ b/usr/src/man/man3nsl/secure_rpc.3nsl
@@ -116,7 +116,7 @@ Traditional \fBUNIX-style\fR authentication.
.sp
.LP
The \fBauthdes_getucred()\fR and \fBauthdes_seccreate()\fR functions implement
-the \fBAUTH_DES\fR authentication style. The keyserver daemon \fBkeyserv\fR(1M)
+the \fBAUTH_DES\fR authentication style. The keyserver daemon \fBkeyserv\fR(8)
must be running for the \fBAUTH_DES\fR authentication system to work and
\fBkeylogin\fR(1) must have been run. The \fBAUTH_DES\fR style of
authentication is discussed here. For information about the \fBAUTH_NONE\fR and
@@ -248,7 +248,7 @@ the public key of the server and the secret key associated with the
effective \fBUID\fR of the calling process. If the keyserver does not have a
key registered for the UID, it falls back to using the secret key for the
netname \fBnobody\fR unless this feature has been disabled. See
-\fBkeyserv\fR(1M). The \fBkey_encryptsession()\fR function is the inverse of
+\fBkeyserv\fR(8). The \fBkey_encryptsession()\fR function is the inverse of
\fBkey_decryptsession()\fR function. The \fBkey_encryptsession()\fR function
returns \fB0\fR if it succeeds, \fB\(mi1\fR if it fails.
.RE
@@ -336,7 +336,7 @@ succeeds and \fB0\fR if it fails. The function is the inverse of
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -351,5 +351,10 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBchkey\fR(1), \fBkeylogin\fR(1), \fBkeyserv\fR(1M), \fBnewkey\fR(1M),
-\fBrpc\fR(3NSL), \fBrpc_clnt_auth\fR(3NSL), \fBattributes\fR(5)
+.BR chkey (1),
+.BR keylogin (1),
+.BR rpc (3NSL),
+.BR rpc_clnt_auth (3NSL),
+.BR attributes (7),
+.BR keyserv (8),
+.BR newkey (8)
diff --git a/usr/src/man/man3nsl/t_accept.3nsl b/usr/src/man/man3nsl/t_accept.3nsl
index d2b8559200..2184842c69 100644
--- a/usr/src/man/man3nsl/t_accept.3nsl
+++ b/usr/src/man/man3nsl/t_accept.3nsl
@@ -383,7 +383,7 @@ specify the buffer format.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -399,9 +399,15 @@ MT Level Safe
.SH SEE ALSO
.sp
.LP
-\fBt_connect\fR(3NSL), \fBt_getinfo\fR(3NSL), \fBt_getstate\fR(3NSL),
-\fBt_listen\fR(3NSL), \fBt_open\fR(3NSL), \fBt_optmgmt\fR(3NSL),
-\fBt_rcvconnect\fR(3NSL), \fBt_snddis\fR(3NSL), \fBattributes\fR(5)
+.BR t_connect (3NSL),
+.BR t_getinfo (3NSL),
+.BR t_getstate (3NSL),
+.BR t_listen (3NSL),
+.BR t_open (3NSL),
+.BR t_optmgmt (3NSL),
+.BR t_rcvconnect (3NSL),
+.BR t_snddis (3NSL),
+.BR attributes (7)
.SH WARNINGS
.sp
.LP
diff --git a/usr/src/man/man3nsl/t_alloc.3nsl b/usr/src/man/man3nsl/t_alloc.3nsl
index 2a5148d50a..50903eccde 100644
--- a/usr/src/man/man3nsl/t_alloc.3nsl
+++ b/usr/src/man/man3nsl/t_alloc.3nsl
@@ -296,7 +296,7 @@ will return success (see \fBt_open\fR(3NSL) or \fBt_getinfo\fR(3NSL)).
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -312,5 +312,10 @@ MT Level Safe
.SH SEE ALSO
.sp
.LP
-\fBfree\fR(3C), \fBmalloc\fR(3C), \fBt_connect\fR(3NSL), \fBt_free\fR(3NSL),
-\fBt_getinfo\fR(3NSL), \fBt_open\fR(3NSL), \fBattributes\fR(5)
+.BR free (3C),
+.BR malloc (3C),
+.BR t_connect (3NSL),
+.BR t_free (3NSL),
+.BR t_getinfo (3NSL),
+.BR t_open (3NSL),
+.BR attributes (7)
diff --git a/usr/src/man/man3nsl/t_bind.3nsl b/usr/src/man/man3nsl/t_bind.3nsl
index 6bbc605450..3451978fa6 100644
--- a/usr/src/man/man3nsl/t_bind.3nsl
+++ b/usr/src/man/man3nsl/t_bind.3nsl
@@ -128,9 +128,9 @@ specifies the number of bytes in the address, and
.Sy buf
points to the address buffer.
For
-.Xr tcp 7P
+.Xr tcp 4P
and
-.Xr udp 7P
+.Xr udp 4P
transports,
.Sy buf
points to a
@@ -415,7 +415,7 @@ Safe
.Xr t_connect 3NSL ,
.Xr t_unbind 3NSL ,
.Xr sockaddr 3SOCKET ,
-.Xr attributes 5
+.Xr attributes 7
.Sh WARNINGS
The requirement that the value of
.Sy qlen
diff --git a/usr/src/man/man3nsl/t_close.3nsl b/usr/src/man/man3nsl/t_close.3nsl
index c26b1bf3dd..f679bfac6a 100644
--- a/usr/src/man/man3nsl/t_close.3nsl
+++ b/usr/src/man/man3nsl/t_close.3nsl
@@ -164,7 +164,7 @@ be set by the \fBTLI\fR interface is:
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -180,5 +180,8 @@ MT Level Safe
.SH SEE ALSO
.sp
.LP
-\fBclose\fR(2), \fBt_getstate\fR(3NSL), \fBt_open\fR(3NSL),
-\fBt_unbind\fR(3NSL), \fBattributes\fR(5)
+.BR close (2),
+.BR t_getstate (3NSL),
+.BR t_open (3NSL),
+.BR t_unbind (3NSL),
+.BR attributes (7)
diff --git a/usr/src/man/man3nsl/t_connect.3nsl b/usr/src/man/man3nsl/t_connect.3nsl
index fccde37a69..b78994fb42 100644
--- a/usr/src/man/man3nsl/t_connect.3nsl
+++ b/usr/src/man/man3nsl/t_connect.3nsl
@@ -339,7 +339,7 @@ the buffer format.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
diff --git a/usr/src/man/man3nsl/t_errno.3nsl b/usr/src/man/man3nsl/t_errno.3nsl
index 0b88c68724..1e805b8405 100644
--- a/usr/src/man/man3nsl/t_errno.3nsl
+++ b/usr/src/man/man3nsl/t_errno.3nsl
@@ -144,7 +144,7 @@ be set by the \fBTLI\fR interface are:
.in -2
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -159,4 +159,4 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBattributes\fR(5)
+.BR attributes (7)
diff --git a/usr/src/man/man3nsl/t_error.3nsl b/usr/src/man/man3nsl/t_error.3nsl
index 79a4ddb7fe..3cc1648e8f 100644
--- a/usr/src/man/man3nsl/t_error.3nsl
+++ b/usr/src/man/man3nsl/t_error.3nsl
@@ -165,7 +165,7 @@ be set by the \fBTLI\fR interface is:
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -181,4 +181,6 @@ MT Level Safe
.SH SEE ALSO
.sp
.LP
-\fBt_errno\fR(3NSL), \fBstrerror\fR(3C), \fBattributes\fR(5)
+.BR strerror (3C),
+.BR t_errno (3NSL),
+.BR attributes (7)
diff --git a/usr/src/man/man3nsl/t_free.3nsl b/usr/src/man/man3nsl/t_free.3nsl
index 9a75e3e936..cffd2adad2 100644
--- a/usr/src/man/man3nsl/t_free.3nsl
+++ b/usr/src/man/man3nsl/t_free.3nsl
@@ -185,7 +185,7 @@ be set by the \fBTLI\fR interface is:
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -201,4 +201,5 @@ MT Level Safe
.SH SEE ALSO
.sp
.LP
-\fBt_alloc\fR(3NSL), \fBattributes\fR(5)
+.BR t_alloc (3NSL),
+.BR attributes (7)
diff --git a/usr/src/man/man3nsl/t_getinfo.3nsl b/usr/src/man/man3nsl/t_getinfo.3nsl
index a4ba4476bf..216b00692d 100644
--- a/usr/src/man/man3nsl/t_getinfo.3nsl
+++ b/usr/src/man/man3nsl/t_getinfo.3nsl
@@ -344,7 +344,7 @@ data, and disconnection data. The corresponding structure members are
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -360,5 +360,9 @@ MT Level Safe
.SH SEE ALSO
.sp
.LP
-\fBt_alloc\fR(3NSL), \fBt_open\fR(3NSL), \fBt_optmgmt\fR(3NSL),
-\fBt_rcvdis\fR(3NSL), \fBt_snddis\fR(3NSL), \fBattributes\fR(5)
+.BR t_alloc (3NSL),
+.BR t_open (3NSL),
+.BR t_optmgmt (3NSL),
+.BR t_rcvdis (3NSL),
+.BR t_snddis (3NSL),
+.BR attributes (7)
diff --git a/usr/src/man/man3nsl/t_getprotaddr.3nsl b/usr/src/man/man3nsl/t_getprotaddr.3nsl
index ad3b51eae3..402bc5f93f 100644
--- a/usr/src/man/man3nsl/t_getprotaddr.3nsl
+++ b/usr/src/man/man3nsl/t_getprotaddr.3nsl
@@ -143,7 +143,7 @@ defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -159,4 +159,5 @@ MT Level Safe
.SH SEE ALSO
.sp
.LP
-\fBt_bind\fR(3NSL), \fBattributes\fR(5)
+.BR t_bind (3NSL),
+.BR attributes (7)
diff --git a/usr/src/man/man3nsl/t_getstate.3nsl b/usr/src/man/man3nsl/t_getstate.3nsl
index 470dd8bdc1..90ded5a17e 100644
--- a/usr/src/man/man3nsl/t_getstate.3nsl
+++ b/usr/src/man/man3nsl/t_getstate.3nsl
@@ -215,7 +215,7 @@ be set by the \fBTLI\fR interface is:
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -231,4 +231,5 @@ MT Level Safe
.SH SEE ALSO
.sp
.LP
-\fBt_open\fR(3NSL), \fBattributes\fR(5)
+.BR t_open (3NSL),
+.BR attributes (7)
diff --git a/usr/src/man/man3nsl/t_listen.3nsl b/usr/src/man/man3nsl/t_listen.3nsl
index 2eb734b76f..917967e2f9 100644
--- a/usr/src/man/man3nsl/t_listen.3nsl
+++ b/usr/src/man/man3nsl/t_listen.3nsl
@@ -257,7 +257,7 @@ provider. Unlike the \fBXTI\fR interface, the \fBTLI\fR interface does not fix
the buffer format.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -272,9 +272,16 @@ MT Level Safe
.SH SEE ALSO
.LP
-\fBfcntl\fR(2), \fBt_accept\fR(3NSL), \fBt_alloc\fR(3NSL), \fBt_bind\fR(3NSL),
-\fBt_connect\fR(3NSL), \fBt_open\fR(3NSL), \fBt_optmgmt\fR(3NSL),
-\fBt_rcvconnect\fR(3NSL), \fBt_snddis\fR(3NSL), \fBattributes\fR(5)
+.BR fcntl (2),
+.BR t_accept (3NSL),
+.BR t_alloc (3NSL),
+.BR t_bind (3NSL),
+.BR t_connect (3NSL),
+.BR t_open (3NSL),
+.BR t_optmgmt (3NSL),
+.BR t_rcvconnect (3NSL),
+.BR t_snddis (3NSL),
+.BR attributes (7)
.SH WARNINGS
.LP
Some transport providers do not differentiate between a connection indication
diff --git a/usr/src/man/man3nsl/t_look.3nsl b/usr/src/man/man3nsl/t_look.3nsl
index 522aa80341..d959599eea 100644
--- a/usr/src/man/man3nsl/t_look.3nsl
+++ b/usr/src/man/man3nsl/t_look.3nsl
@@ -251,7 +251,7 @@ be set by the \fBTLI\fR interface is:
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -267,5 +267,7 @@ MT Level Safe
.SH SEE ALSO
.sp
.LP
-\fBt_open\fR(3NSL), \fBt_snd\fR(3NSL), \fBt_sndudata\fR(3NSL),
-\fBattributes\fR(5)
+.BR t_open (3NSL),
+.BR t_snd (3NSL),
+.BR t_sndudata (3NSL),
+.BR attributes (7)
diff --git a/usr/src/man/man3nsl/t_open.3nsl b/usr/src/man/man3nsl/t_open.3nsl
index 47c0b08a49..e4d3c5f20f 100644
--- a/usr/src/man/man3nsl/t_open.3nsl
+++ b/usr/src/man/man3nsl/t_open.3nsl
@@ -360,7 +360,7 @@ data, and disconnection data. The corresponding structure members are
\fBdiscon\fR, respectively.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -375,4 +375,5 @@ MT Level Safe
.SH SEE ALSO
.LP
-\fBopen\fR(2), \fBattributes\fR(5)
+.BR open (2),
+.BR attributes (7)
diff --git a/usr/src/man/man3nsl/t_optmgmt.3nsl b/usr/src/man/man3nsl/t_optmgmt.3nsl
index fbf0309345..b368180b77 100644
--- a/usr/src/man/man3nsl/t_optmgmt.3nsl
+++ b/usr/src/man/man3nsl/t_optmgmt.3nsl
@@ -517,7 +517,7 @@ transport provider has processed all previously sent data units.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -533,8 +533,19 @@ MT Level Safe
.SH SEE ALSO
.sp
.LP
-\fBclose\fR(2), \fBpoll\fR(2), \fBselect\fR(3C), \fBt_accept\fR(3NSL),
-\fBt_alloc\fR(3NSL), \fBt_bind\fR(3NSL), \fBt_close\fR(3NSL),
-\fBt_connect\fR(3NSL), \fBt_getinfo\fR(3NSL), \fBt_listen\fR(3NSL),
-\fBt_open\fR(3NSL), \fBt_rcv\fR(3NSL), \fBt_rcvconnect\fR(3NSL),
-\fBt_rcvudata\fR(3NSL), \fBt_snddis\fR(3NSL), \fBattributes\fR(5)
+.BR close (2),
+.BR poll (2),
+.BR select (3C),
+.BR t_accept (3NSL),
+.BR t_alloc (3NSL),
+.BR t_bind (3NSL),
+.BR t_close (3NSL),
+.BR t_connect (3NSL),
+.BR t_getinfo (3NSL),
+.BR t_listen (3NSL),
+.BR t_open (3NSL),
+.BR t_rcv (3NSL),
+.BR t_rcvconnect (3NSL),
+.BR t_rcvudata (3NSL),
+.BR t_snddis (3NSL),
+.BR attributes (7)
diff --git a/usr/src/man/man3nsl/t_rcv.3nsl b/usr/src/man/man3nsl/t_rcv.3nsl
index 6b55f7b7ed..919ff589e8 100644
--- a/usr/src/man/man3nsl/t_rcv.3nsl
+++ b/usr/src/man/man3nsl/t_rcv.3nsl
@@ -233,7 +233,7 @@ be set by the \fBTLI\fR interface is:
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -247,11 +247,16 @@ Interface Stability Committed
_
MT-Level Safe
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.sp
.LP
-\fBfcntl\fR(2), \fBt_getinfo\fR(3NSL), \fBt_look\fR(3NSL), \fBt_open\fR(3NSL),
-\fBt_snd\fR(3NSL), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR fcntl (2),
+.BR t_getinfo (3NSL),
+.BR t_look (3NSL),
+.BR t_open (3NSL),
+.BR t_snd (3NSL),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3nsl/t_rcvconnect.3nsl b/usr/src/man/man3nsl/t_rcvconnect.3nsl
index ed1f1a48cf..68ad743e87 100644
--- a/usr/src/man/man3nsl/t_rcvconnect.3nsl
+++ b/usr/src/man/man3nsl/t_rcvconnect.3nsl
@@ -222,7 +222,7 @@ circumstances than its \fBXTI\fR counterpart is \fBTBUFOVFLW\fR. It can be
returned even when the \fBmaxlen\fR field of the corresponding buffer has been
set to zero.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -236,6 +236,12 @@ MT Level Safe
.TE
.SH SEE ALSO
-\fBfcntl\fR(2), \fBt_accept\fR(3NSL), \fBt_alloc\fR(3NSL), \fBt_bind\fR(3NSL),
-\fBt_connect\fR(3NSL), \fBt_listen\fR(3NSL), \fBt_open\fR(3NSL),
-\fBt_optmgmt\fR(3NSL), \fBattributes\fR(5)
+.BR fcntl (2),
+.BR t_accept (3NSL),
+.BR t_alloc (3NSL),
+.BR t_bind (3NSL),
+.BR t_connect (3NSL),
+.BR t_listen (3NSL),
+.BR t_open (3NSL),
+.BR t_optmgmt (3NSL),
+.BR attributes (7)
diff --git a/usr/src/man/man3nsl/t_rcvdis.3nsl b/usr/src/man/man3nsl/t_rcvdis.3nsl
index 6caa4330b4..639f1971db 100644
--- a/usr/src/man/man3nsl/t_rcvdis.3nsl
+++ b/usr/src/man/man3nsl/t_rcvdis.3nsl
@@ -216,7 +216,7 @@ has been set to zero.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -232,5 +232,9 @@ MT Level Safe
.SH SEE ALSO
.sp
.LP
-\fBt_alloc\fR(3NSL), \fBt_connect\fR(3NSL), \fBt_listen\fR(3NSL),
-\fBt_open\fR(3NSL), \fBt_snddis\fR(3NSL), \fBattributes\fR(5)
+.BR t_alloc (3NSL),
+.BR t_connect (3NSL),
+.BR t_listen (3NSL),
+.BR t_open (3NSL),
+.BR t_snddis (3NSL),
+.BR attributes (7)
diff --git a/usr/src/man/man3nsl/t_rcvrel.3nsl b/usr/src/man/man3nsl/t_rcvrel.3nsl
index 6fd0601f17..644aafc95b 100644
--- a/usr/src/man/man3nsl/t_rcvrel.3nsl
+++ b/usr/src/man/man3nsl/t_rcvrel.3nsl
@@ -176,7 +176,7 @@ be set by the \fBTLI\fR interface are:
\fBTOUTSTATE\fR
.in -2
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -190,5 +190,7 @@ MT Level Safe
.TE
.SH SEE ALSO
-\fBt_getinfo\fR(3NSL), \fBt_open\fR(3NSL), \fBt_sndrel\fR(3NSL),
-\fBattributes\fR(5)
+.BR t_getinfo (3NSL),
+.BR t_open (3NSL),
+.BR t_sndrel (3NSL),
+.BR attributes (7)
diff --git a/usr/src/man/man3nsl/t_rcvreldata.3nsl b/usr/src/man/man3nsl/t_rcvreldata.3nsl
index 7fa9ea901e..dae862bfbf 100644
--- a/usr/src/man/man3nsl/t_rcvreldata.3nsl
+++ b/usr/src/man/man3nsl/t_rcvreldata.3nsl
@@ -80,8 +80,8 @@ int sequence;
After receipt of this indication, the user may not attempt to receive more
data by means of \fBt_rcv\fR(3NSL) or \fBt_rcvv\fR(3NSL) Such an attempt will
fail with \fIt_error\fR set to \fBTOUTSTATE\fR. However, the user may continue
-to send data over the connection if \fBt_sndrel\fR(3NSL) or \fBt_sndreldata\fR
-\fB(3N)\fR has not been called by the user.
+to send data over the connection if \fBt_sndrel\fR(3NSL) or
+\fBt_sndreldata\fR(3NSL) has not been called by the user.
.sp
.LP
The field \fIreason\fR specifies the reason for the disconnection through a
@@ -210,7 +210,7 @@ defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -226,8 +226,12 @@ MT Level Safe
.SH SEE ALSO
.sp
.LP
-\fBt_getinfo\fR(3NSL), \fBt_open\fR(3NSL), \fBt_sndreldata\fR(3NSL),
-\fBt_rcvrel\fR(3NSL), \fBt_sndrel\fR(3NSL), \fBattributes\fR(5)
+.BR t_getinfo (3NSL),
+.BR t_open (3NSL),
+.BR t_rcvrel (3NSL),
+.BR t_sndrel (3NSL),
+.BR t_sndreldata (3NSL),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3nsl/t_rcvudata.3nsl b/usr/src/man/man3nsl/t_rcvudata.3nsl
index 1517d2cbfb..7ced7e2021 100644
--- a/usr/src/man/man3nsl/t_rcvudata.3nsl
+++ b/usr/src/man/man3nsl/t_rcvudata.3nsl
@@ -252,7 +252,7 @@ the buffer format.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -268,5 +268,9 @@ MT Level Safe
.SH SEE ALSO
.sp
.LP
-\fBfcntl\fR(2), \fBt_alloc\fR(3NSL), \fBt_open\fR(3NSL),
-\fBt_rcvuderr\fR(3NSL), \fBt_sndudata\fR(3NSL), \fBattributes\fR(5)
+.BR fcntl (2),
+.BR t_alloc (3NSL),
+.BR t_open (3NSL),
+.BR t_rcvuderr (3NSL),
+.BR t_sndudata (3NSL),
+.BR attributes (7)
diff --git a/usr/src/man/man3nsl/t_rcvuderr.3nsl b/usr/src/man/man3nsl/t_rcvuderr.3nsl
index 4434c0f03d..17e66c9ebb 100644
--- a/usr/src/man/man3nsl/t_rcvuderr.3nsl
+++ b/usr/src/man/man3nsl/t_rcvuderr.3nsl
@@ -220,7 +220,7 @@ the buffer format.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -236,4 +236,6 @@ MT Level Safe
.SH SEE ALSO
.sp
.LP
-\fBt_rcvudata\fR(3NSL), \fBt_sndudata\fR(3NSL), \fBattributes\fR(5)
+.BR t_rcvudata (3NSL),
+.BR t_sndudata (3NSL),
+.BR attributes (7)
diff --git a/usr/src/man/man3nsl/t_rcvv.3nsl b/usr/src/man/man3nsl/t_rcvv.3nsl
index 9e6b33a844..725bc3bbb5 100644
--- a/usr/src/man/man3nsl/t_rcvv.3nsl
+++ b/usr/src/man/man3nsl/t_rcvv.3nsl
@@ -247,7 +247,7 @@ defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -263,5 +263,11 @@ MT Level Safe
.SH SEE ALSO
.sp
.LP
-\fBfcntl\fR(2), \fBt_getinfo\fR(3NSL), \fBt_look\fR(3NSL), \fBt_open\fR(3NSL),
-\fBt_rcv\fR(3NSL), \fBt_snd\fR(3NSL), \fBt_sndv\fR(3NSL), \fBattributes\fR(5)
+.BR fcntl (2),
+.BR t_getinfo (3NSL),
+.BR t_look (3NSL),
+.BR t_open (3NSL),
+.BR t_rcv (3NSL),
+.BR t_snd (3NSL),
+.BR t_sndv (3NSL),
+.BR attributes (7)
diff --git a/usr/src/man/man3nsl/t_rcvvudata.3nsl b/usr/src/man/man3nsl/t_rcvvudata.3nsl
index f1b062d0c8..9a5af0b471 100644
--- a/usr/src/man/man3nsl/t_rcvvudata.3nsl
+++ b/usr/src/man/man3nsl/t_rcvvudata.3nsl
@@ -241,7 +241,7 @@ defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -257,6 +257,11 @@ MT Level Safe
.SH SEE ALSO
.sp
.LP
-\fBfcntl\fR(2), \fBt_alloc\fR(3NSL), \fBt_open\fR(3NSL),
-\fBt_rcvudata\fR(3NSL), \fBt_rcvuderr\fR(3NSL), \fBt_sndudata\fR(3NSL),
-\fBt_sndvudata\fR(3NSL), \fBattributes\fR(5)
+.BR fcntl (2),
+.BR t_alloc (3NSL),
+.BR t_open (3NSL),
+.BR t_rcvudata (3NSL),
+.BR t_rcvuderr (3NSL),
+.BR t_sndudata (3NSL),
+.BR t_sndvudata (3NSL),
+.BR attributes (7)
diff --git a/usr/src/man/man3nsl/t_snd.3nsl b/usr/src/man/man3nsl/t_snd.3nsl
index 8b65a00023..c1501e24ca 100644
--- a/usr/src/man/man3nsl/t_snd.3nsl
+++ b/usr/src/man/man3nsl/t_snd.3nsl
@@ -341,7 +341,7 @@ only for illegal zero byte \fBTSDU\fR ( \fBETSDU\fR) send attempts.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -357,8 +357,12 @@ MT Level Safe
.SH SEE ALSO
.sp
.LP
-\fBfcntl\fR(2), \fBt_getinfo\fR(3NSL), \fBt_look\fR(3NSL), \fBt_open\fR(3NSL),
-\fBt_rcv\fR(3NSL), \fBattributes\fR(5)
+.BR fcntl (2),
+.BR t_getinfo (3NSL),
+.BR t_look (3NSL),
+.BR t_open (3NSL),
+.BR t_rcv (3NSL),
+.BR attributes (7)
.SH WARNINGS
.sp
.LP
diff --git a/usr/src/man/man3nsl/t_snddis.3nsl b/usr/src/man/man3nsl/t_snddis.3nsl
index 69164ddb37..7d6dcd1523 100644
--- a/usr/src/man/man3nsl/t_snddis.3nsl
+++ b/usr/src/man/man3nsl/t_snddis.3nsl
@@ -223,7 +223,7 @@ the buffer format.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -239,8 +239,12 @@ MT Level Safe
.SH SEE ALSO
.sp
.LP
-\fBt_connect\fR(3NSL), \fBt_getinfo\fR(3NSL), \fBt_listen\fR(3NSL),
-\fBt_open\fR(3NSL), \fBt_snd\fR(3NSL), \fBattributes\fR(5)
+.BR t_connect (3NSL),
+.BR t_getinfo (3NSL),
+.BR t_listen (3NSL),
+.BR t_open (3NSL),
+.BR t_snd (3NSL),
+.BR attributes (7)
.SH WARNINGS
.sp
.LP
diff --git a/usr/src/man/man3nsl/t_sndrel.3nsl b/usr/src/man/man3nsl/t_sndrel.3nsl
index 12e77250c5..efad4d2134 100644
--- a/usr/src/man/man3nsl/t_sndrel.3nsl
+++ b/usr/src/man/man3nsl/t_sndrel.3nsl
@@ -199,7 +199,7 @@ Whenever this function fails with \fBt_error\fR set to \fBTFLOW,\fR
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -215,5 +215,8 @@ MT Level Safe
.SH SEE ALSO
.sp
.LP
-\fBt_error\fR(3NSL), \fBt_getinfo\fR(3NSL), \fBt_open\fR(3NSL),
-\fBt_rcvrel\fR(3NSL), \fBattributes\fR(5)
+.BR t_error (3NSL),
+.BR t_getinfo (3NSL),
+.BR t_open (3NSL),
+.BR t_rcvrel (3NSL),
+.BR attributes (7)
diff --git a/usr/src/man/man3nsl/t_sndreldata.3nsl b/usr/src/man/man3nsl/t_sndreldata.3nsl
index 31bc51023d..66377fbb44 100644
--- a/usr/src/man/man3nsl/t_sndreldata.3nsl
+++ b/usr/src/man/man3nsl/t_sndreldata.3nsl
@@ -209,7 +209,7 @@ defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -225,8 +225,12 @@ MT Level Safe
.SH SEE ALSO
.sp
.LP
-\fBt_getinfo\fR(3NSL), \fBt_open\fR(3NSL), \fBt_rcvrel\fR(3NSL),
-\fBt_rcvreldata\fR(3NSL), \fBt_sndrel\fR(3NSL), \fBattributes\fR(5)
+.BR t_getinfo (3NSL),
+.BR t_open (3NSL),
+.BR t_rcvrel (3NSL),
+.BR t_rcvreldata (3NSL),
+.BR t_sndrel (3NSL),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3nsl/t_sndudata.3nsl b/usr/src/man/man3nsl/t_sndudata.3nsl
index 16f3c52de6..bb28d4016a 100644
--- a/usr/src/man/man3nsl/t_sndudata.3nsl
+++ b/usr/src/man/man3nsl/t_sndudata.3nsl
@@ -279,7 +279,7 @@ provider. Unlike the \fBXTI\fR interface, the \fBTLI\fR interface does not fix
the buffer format.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -294,6 +294,13 @@ MT Level Safe
.SH SEE ALSO
.LP
-\fBfcntl\fR(2), \fBt_alloc\fR(3NSL), \fBt_bind\fR(3NSL), \fBt_error\fR(3NSL),
-\fBt_getinfo\fR(3NSL), \fBt_look\fR(3NSL), \fBt_open\fR(3NSL),
-\fBt_rcvudata\fR(3NSL), \fBt_rcvuderr\fR(3NSL), \fBattributes\fR(5)
+.BR fcntl (2),
+.BR t_alloc (3NSL),
+.BR t_bind (3NSL),
+.BR t_error (3NSL),
+.BR t_getinfo (3NSL),
+.BR t_look (3NSL),
+.BR t_open (3NSL),
+.BR t_rcvudata (3NSL),
+.BR t_rcvuderr (3NSL),
+.BR attributes (7)
diff --git a/usr/src/man/man3nsl/t_sndv.3nsl b/usr/src/man/man3nsl/t_sndv.3nsl
index b9a5c099ac..c435367e36 100644
--- a/usr/src/man/man3nsl/t_sndv.3nsl
+++ b/usr/src/man/man3nsl/t_sndv.3nsl
@@ -337,7 +337,7 @@ defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -353,8 +353,12 @@ MT Level Safe
.SH SEE ALSO
.sp
.LP
-\fBt_getinfo\fR(3NSL), \fBt_open\fR(3NSL), \fBt_rcvv\fR(3NSL)
-\fBt_rcv\fR(3NSL), \fBt_snd\fR(3NSL), \fBattributes\fR(5)
+.BR t_getinfo (3NSL),
+.BR t_open (3NSL),
+.BR t_rcvv (3NSL)
+.BR t_rcv (3NSL),
+.BR t_snd (3NSL),
+.BR attributes (7)
.SH WARNINGS
.sp
.LP
diff --git a/usr/src/man/man3nsl/t_sndvudata.3nsl b/usr/src/man/man3nsl/t_sndvudata.3nsl
index 043613afdc..079d2486d3 100644
--- a/usr/src/man/man3nsl/t_sndvudata.3nsl
+++ b/usr/src/man/man3nsl/t_sndvudata.3nsl
@@ -260,7 +260,7 @@ In the \fBTLI\fR interface definition, no counterpart of this routine was
defined.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -277,4 +277,5 @@ MT Level Safe
.LP
\fBfcntl\fR(2), \fBt_alloc\fR(3NSL), \fBt_open\fR(3NSL),
\fBt_rcvudata\fR(3NSL), \fBt_rcvvudata\fR(3NSL) \fBt_rcvuderr\fR(3NSL),
-\fBt_sndudata\fR(3NSL), \fBattributes\fR(5)
+.BR t_sndudata (3NSL),
+.BR attributes (7)
diff --git a/usr/src/man/man3nsl/t_strerror.3nsl b/usr/src/man/man3nsl/t_strerror.3nsl
index 908640261b..34aa8e90bc 100644
--- a/usr/src/man/man3nsl/t_strerror.3nsl
+++ b/usr/src/man/man3nsl/t_strerror.3nsl
@@ -118,7 +118,7 @@ should \fInot\fR use this header. They should use the header:
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -134,4 +134,6 @@ MT Level Safe
.SH SEE ALSO
.sp
.LP
-\fBt_errno\fR(3NSL), \fBt_error\fR(3NSL), \fBattributes\fR(5)
+.BR t_errno (3NSL),
+.BR t_error (3NSL),
+.BR attributes (7)
diff --git a/usr/src/man/man3nsl/t_sync.3nsl b/usr/src/man/man3nsl/t_sync.3nsl
index 4d5bf02d9f..e29bc20314 100644
--- a/usr/src/man/man3nsl/t_sync.3nsl
+++ b/usr/src/man/man3nsl/t_sync.3nsl
@@ -238,7 +238,7 @@ be set by the \fBTLI\fR interface is:
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -254,4 +254,8 @@ MT Level Safe
.SH SEE ALSO
.sp
.LP
-\fBdup\fR(2), \fBexec\fR(2), \fBfork\fR(2), \fBopen\fR(2), \fBattributes\fR(5)
+.BR dup (2),
+.BR exec (2),
+.BR fork (2),
+.BR open (2),
+.BR attributes (7)
diff --git a/usr/src/man/man3nsl/t_sysconf.3nsl b/usr/src/man/man3nsl/t_sysconf.3nsl
index 90b56bc7fe..c95442b730 100644
--- a/usr/src/man/man3nsl/t_sysconf.3nsl
+++ b/usr/src/man/man3nsl/t_sysconf.3nsl
@@ -114,7 +114,7 @@ defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -130,5 +130,9 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBsysconf\fR(3C), \fBt_rcvv\fR(3NSL), \fBt_rcvvudata\fR(3NSL),
-\fBt_sndv\fR(3NSL), \fBt_sndvudata\fR(3NSL), \fBattributes\fR(5)
+.BR sysconf (3C),
+.BR t_rcvv (3NSL),
+.BR t_rcvvudata (3NSL),
+.BR t_sndv (3NSL),
+.BR t_sndvudata (3NSL),
+.BR attributes (7)
diff --git a/usr/src/man/man3nsl/t_unbind.3nsl b/usr/src/man/man3nsl/t_unbind.3nsl
index 10d950773f..1a6d062258 100644
--- a/usr/src/man/man3nsl/t_unbind.3nsl
+++ b/usr/src/man/man3nsl/t_unbind.3nsl
@@ -162,7 +162,7 @@ be set by the \fBTLI\fR interface is:
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -178,4 +178,5 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBt_bind\fR(3NSL), \fBattributes\fR(5)
+.BR t_bind (3NSL),
+.BR attributes (7)
diff --git a/usr/src/man/man3nsl/xdr.3nsl b/usr/src/man/man3nsl/xdr.3nsl
index 3b1ddd1d42..dfe54fa1ff 100644
--- a/usr/src/man/man3nsl/xdr.3nsl
+++ b/usr/src/man/man3nsl/xdr.3nsl
@@ -32,7 +32,7 @@ which they are described:
\fB\fBxdr_array\fR\fR
.ad
.RS 22n
-\fBxdr_complex\fR(3NSL)
+.BR xdr_complex (3NSL)
.RE
.sp
@@ -41,7 +41,7 @@ which they are described:
\fB\fBxdr_bool\fR\fR
.ad
.RS 22n
-\fBxdr_simple\fR(3NSL)
+.BR xdr_simple (3NSL)
.RE
.sp
@@ -50,7 +50,7 @@ which they are described:
\fB\fBxdr_bytes\fR\fR
.ad
.RS 22n
-\fBxdr_complex\fR(3NSL)
+.BR xdr_complex (3NSL)
.RE
.sp
@@ -59,7 +59,7 @@ which they are described:
\fB\fBxdr_char\fR\fR
.ad
.RS 22n
-\fBxdr_simple\fR(3NSL)
+.BR xdr_simple (3NSL)
.RE
.sp
@@ -68,7 +68,7 @@ which they are described:
\fB\fBxdr_control\fR\fR
.ad
.RS 22n
-\fBxdr_admin\fR(3NSL)
+.BR xdr_admin (3NSL)
.RE
.sp
@@ -77,7 +77,7 @@ which they are described:
\fB\fBxdr_destroy\fR\fR
.ad
.RS 22n
-\fBxdr_create\fR(3NSL)
+.BR xdr_create (3NSL)
.RE
.sp
@@ -86,7 +86,7 @@ which they are described:
\fB\fBxdr_double\fR\fR
.ad
.RS 22n
-\fBxdr_simple\fR(3NSL)
+.BR xdr_simple (3NSL)
.RE
.sp
@@ -95,7 +95,7 @@ which they are described:
\fB\fBxdr_enum\fR\fR
.ad
.RS 22n
-\fBxdr_simple\fR(3NSL)
+.BR xdr_simple (3NSL)
.RE
.sp
@@ -104,7 +104,7 @@ which they are described:
\fB\fBxdr_float\fR\fR
.ad
.RS 22n
-\fBxdr_simple\fR(3NSL)
+.BR xdr_simple (3NSL)
.RE
.sp
@@ -113,7 +113,7 @@ which they are described:
\fB\fBxdr_free\fR\fR
.ad
.RS 22n
-\fBxdr_simple\fR(3NSL)
+.BR xdr_simple (3NSL)
.RE
.sp
@@ -122,7 +122,7 @@ which they are described:
\fB\fBxdr_getpos\fR\fR
.ad
.RS 22n
-\fBxdr_admin\fR(3NSL)
+.BR xdr_admin (3NSL)
.RE
.sp
@@ -131,7 +131,7 @@ which they are described:
\fB\fBxdr_hyper\fR\fR
.ad
.RS 22n
-\fBxdr_simple\fR(3NSL)
+.BR xdr_simple (3NSL)
.RE
.sp
@@ -140,7 +140,7 @@ which they are described:
\fB\fBxdr_inline\fR\fR
.ad
.RS 22n
-\fBxdr_admin\fR(3NSL)
+.BR xdr_admin (3NSL)
.RE
.sp
@@ -149,7 +149,7 @@ which they are described:
\fB\fBxdr_int\fR\fR
.ad
.RS 22n
-\fBxdr_simple\fR(3NSL)
+.BR xdr_simple (3NSL)
.RE
.sp
@@ -158,7 +158,7 @@ which they are described:
\fB\fBxdr_long\fR\fR
.ad
.RS 22n
-\fBxdr_simple\fR(3NSL)
+.BR xdr_simple (3NSL)
.RE
.sp
@@ -167,7 +167,7 @@ which they are described:
\fB\fBxdr_longlong_t\fR\fR
.ad
.RS 22n
-\fBxdr_simple\fR(3NSL)
+.BR xdr_simple (3NSL)
.RE
.sp
@@ -176,7 +176,7 @@ which they are described:
\fB\fBxdr_opaque\fR\fR
.ad
.RS 22n
-\fBxdr_complex\fR(3NSL)
+.BR xdr_complex (3NSL)
.RE
.sp
@@ -185,7 +185,7 @@ which they are described:
\fB\fBxdr_pointer\fR\fR
.ad
.RS 22n
-\fBxdr_complex\fR(3NSL)
+.BR xdr_complex (3NSL)
.RE
.sp
@@ -194,7 +194,7 @@ which they are described:
\fB\fBxdr_quadruple\fR\fR
.ad
.RS 22n
-\fBxdr_simple\fR(3NSL)
+.BR xdr_simple (3NSL)
.RE
.sp
@@ -203,7 +203,7 @@ which they are described:
\fB\fBxdr_reference\fR\fR
.ad
.RS 22n
-\fBxdr_complex\fR(3NSL)
+.BR xdr_complex (3NSL)
.RE
.sp
@@ -212,7 +212,7 @@ which they are described:
\fB\fBxdr_setpos\fR\fR
.ad
.RS 22n
-\fBxdr_admin\fR(3NSL)
+.BR xdr_admin (3NSL)
.RE
.sp
@@ -221,7 +221,7 @@ which they are described:
\fB\fBxdr_short\fR\fR
.ad
.RS 22n
-\fBxdr_simple\fR(3NSL)
+.BR xdr_simple (3NSL)
.RE
.sp
@@ -230,7 +230,7 @@ which they are described:
\fB\fBxdr_sizeof\fR\fR
.ad
.RS 22n
-\fBxdr_admin\fR(3NSL)
+.BR xdr_admin (3NSL)
.RE
.sp
@@ -239,7 +239,7 @@ which they are described:
\fB\fBxdr_string\fR\fR
.ad
.RS 22n
-\fBxdr_complex\fR(3NSL)
+.BR xdr_complex (3NSL)
.RE
.sp
@@ -248,7 +248,7 @@ which they are described:
\fB\fBxdr_u_char\fR\fR
.ad
.RS 22n
-\fBxdr_simple\fR(3NSL)
+.BR xdr_simple (3NSL)
.RE
.sp
@@ -257,7 +257,7 @@ which they are described:
\fB\fBxdr_u_hyper\fR\fR
.ad
.RS 22n
-\fBxdr_simple\fR(3NSL)
+.BR xdr_simple (3NSL)
.RE
.sp
@@ -266,7 +266,7 @@ which they are described:
\fB\fBxdr_u_int\fR\fR
.ad
.RS 22n
-\fBxdr_simple\fR(3NSL)
+.BR xdr_simple (3NSL)
.RE
.sp
@@ -275,7 +275,7 @@ which they are described:
\fB\fBxdr_u_long\fR\fR
.ad
.RS 22n
-\fBxdr_simple\fR(3NSL)
+.BR xdr_simple (3NSL)
.RE
.sp
@@ -284,7 +284,7 @@ which they are described:
\fB\fBxdr_u_longlong_t\fR\fR
.ad
.RS 22n
-\fBxdr_simple\fR(3NSL)
+.BR xdr_simple (3NSL)
.RE
.sp
@@ -293,7 +293,7 @@ which they are described:
\fB\fBxdr_u_short\fR\fR
.ad
.RS 22n
-\fBxdr_simple\fR(3NSL)
+.BR xdr_simple (3NSL)
.RE
.sp
@@ -302,7 +302,7 @@ which they are described:
\fB\fBxdr_union\fR\fR
.ad
.RS 22n
-\fBxdr_complex\fR(3NSL)
+.BR xdr_complex (3NSL)
.RE
.sp
@@ -311,7 +311,7 @@ which they are described:
\fB\fBxdr_vector\fR\fR
.ad
.RS 22n
-\fBxdr_complex\fR(3NSL)
+.BR xdr_complex (3NSL)
.RE
.sp
@@ -320,7 +320,7 @@ which they are described:
\fB\fBxdr_void\fR\fR
.ad
.RS 22n
-\fBxdr_simple\fR(3NSL)
+.BR xdr_simple (3NSL)
.RE
.sp
@@ -329,7 +329,7 @@ which they are described:
\fB\fBxdr_wrapstring\fR\fR
.ad
.RS 22n
-\fBxdr_complex\fR(3NSL)
+.BR xdr_complex (3NSL)
.RE
.sp
@@ -338,7 +338,7 @@ which they are described:
\fB\fBxdrmem_create\fR\fR
.ad
.RS 22n
-\fBxdr_create\fR(3NSL)
+.BR xdr_create (3NSL)
.RE
.sp
@@ -347,7 +347,7 @@ which they are described:
\fB\fBxdrrec_create\fR\fR
.ad
.RS 22n
-\fBxdr_create\fR(3NSL)
+.BR xdr_create (3NSL)
.RE
.sp
@@ -356,7 +356,7 @@ which they are described:
\fB\fBxdrrec_endofrecord\fR\fR
.ad
.RS 22n
-\fBxdr_admin\fR(3NSL)
+.BR xdr_admin (3NSL)
.RE
.sp
@@ -365,7 +365,7 @@ which they are described:
\fB\fBxdrrec_eof\fR\fR
.ad
.RS 22n
-\fBxdr_admin\fR(3NSL)
+.BR xdr_admin (3NSL)
.RE
.sp
@@ -374,7 +374,7 @@ which they are described:
\fB\fBxdrrec_readbytes\fR\fR
.ad
.RS 22n
-\fBxdr_admin\fR(3NSL)
+.BR xdr_admin (3NSL)
.RE
.sp
@@ -383,7 +383,7 @@ which they are described:
\fB\fBxdrrec_skiprecord\fR\fR
.ad
.RS 22n
-\fBxdr_admin\fR(3NSL)
+.BR xdr_admin (3NSL)
.RE
.sp
@@ -392,13 +392,13 @@ which they are described:
\fB\fBxdrstdio_create\fR\fR
.ad
.RS 22n
-\fBxdr_create\fR(3NSL)
+.BR xdr_create (3NSL)
.RE
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -414,5 +414,9 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBrpc\fR(3NSL), \fBxdr_admin\fR(3NSL), \fBxdr_complex\fR(3NSL),
-\fBxdr_create\fR(3NSL), \fBxdr_simple\fR(3NSL), \fBattributes\fR(5)
+.BR rpc (3NSL),
+.BR xdr_admin (3NSL),
+.BR xdr_complex (3NSL),
+.BR xdr_create (3NSL),
+.BR xdr_simple (3NSL),
+.BR attributes (7)
diff --git a/usr/src/man/man3nsl/xdr_admin.3nsl b/usr/src/man/man3nsl/xdr_admin.3nsl
index 807eb78b07..094272ed52 100644
--- a/usr/src/man/man3nsl/xdr_admin.3nsl
+++ b/usr/src/man/man3nsl/xdr_admin.3nsl
@@ -166,7 +166,7 @@ outside of the \fBRPC\fR subsystem.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -181,5 +181,9 @@ MT-Level Safe
.SH SEE ALSO
.LP
-\fBmalloc\fR(3C), \fBrpc\fR(3NSL), \fBxdr_complex\fR(3NSL),
-\fBxdr_create\fR(3NSL), \fBxdr_simple\fR(3NSL), \fBattributes\fR(5)
+.BR malloc (3C),
+.BR rpc (3NSL),
+.BR xdr_complex (3NSL),
+.BR xdr_create (3NSL),
+.BR xdr_simple (3NSL),
+.BR attributes (7)
diff --git a/usr/src/man/man3nsl/xdr_complex.3nsl b/usr/src/man/man3nsl/xdr_complex.3nsl
index 192007f04a..157275f9e0 100644
--- a/usr/src/man/man3nsl/xdr_complex.3nsl
+++ b/usr/src/man/man3nsl/xdr_complex.3nsl
@@ -191,7 +191,7 @@ returns \fBTRUE\fR if it succeeds, \fBFALSE\fR otherwise.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -207,5 +207,9 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBmalloc\fR(3C), \fBrpc\fR(3NSL), \fBxdr_admin\fR(3NSL),
-\fBxdr_create\fR(3NSL), \fBxdr_simple\fR(3NSL), \fBattributes\fR(5)
+.BR malloc (3C),
+.BR rpc (3NSL),
+.BR xdr_admin (3NSL),
+.BR xdr_create (3NSL),
+.BR xdr_simple (3NSL),
+.BR attributes (7)
diff --git a/usr/src/man/man3nsl/xdr_create.3nsl b/usr/src/man/man3nsl/xdr_create.3nsl
index 2f189ea73b..d39f997791 100644
--- a/usr/src/man/man3nsl/xdr_create.3nsl
+++ b/usr/src/man/man3nsl/xdr_create.3nsl
@@ -127,7 +127,7 @@ contains some other value, assume that the call has succeeded.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -143,6 +143,12 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBread\fR(2), \fBwrite\fR(2), \fBfclose\fR(3C), \fBmalloc\fR(3C),
-\fBrpc\fR(3NSL), \fBxdr_admin\fR(3NSL), \fBxdr_complex\fR(3NSL),
-\fBxdr_simple\fR(3NSL), \fBattributes\fR(5)
+.BR read (2),
+.BR write (2),
+.BR fclose (3C),
+.BR malloc (3C),
+.BR rpc (3NSL),
+.BR xdr_admin (3NSL),
+.BR xdr_complex (3NSL),
+.BR xdr_simple (3NSL),
+.BR attributes (7)
diff --git a/usr/src/man/man3nsl/xdr_simple.3nsl b/usr/src/man/man3nsl/xdr_simple.3nsl
index a39df22e31..2824c3f3a2 100644
--- a/usr/src/man/man3nsl/xdr_simple.3nsl
+++ b/usr/src/man/man3nsl/xdr_simple.3nsl
@@ -353,7 +353,7 @@ that require a function parameter, where nothing is to be done.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -369,5 +369,9 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBmalloc\fR(3C), \fBrpc\fR(3NSL), \fBxdr_admin\fR(3NSL),
-\fBxdr_complex\fR(3NSL), \fBxdr_create\fR(3NSL), \fBattributes\fR(5)
+.BR malloc (3C),
+.BR rpc (3NSL),
+.BR xdr_admin (3NSL),
+.BR xdr_complex (3NSL),
+.BR xdr_create (3NSL),
+.BR attributes (7)
diff --git a/usr/src/man/man3nsl/yp_update.3nsl b/usr/src/man/man3nsl/yp_update.3nsl
index a6e7d8f967..f63f0578b6 100644
--- a/usr/src/man/man3nsl/yp_update.3nsl
+++ b/usr/src/man/man3nsl/yp_update.3nsl
@@ -47,7 +47,7 @@ error \fBYPERR_KEY\fR if the key already exists in the database.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -63,7 +63,9 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBsecure_rpc\fR(3NSL), \fBypclnt\fR(3NSL), \fBattributes\fR(5)
+.BR secure_rpc (3NSL),
+.BR ypclnt (3NSL),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3nsl/ypclnt.3nsl b/usr/src/man/man3nsl/ypclnt.3nsl
index 18f0d86d93..7f9cfb0e6c 100644
--- a/usr/src/man/man3nsl/ypclnt.3nsl
+++ b/usr/src/man/man3nsl/ypclnt.3nsl
@@ -80,7 +80,7 @@ interface
This package of functions provides an interface to \fBNIS\fR, Network
Information Service Version 2, formerly referred to as \fBYP\fR.
For commands used to access \fBNIS\fR from a
-client machine, see \fBypbind\fR(1M), \fBypwhich\fR(1), \fBypmatch\fR(1), and
+client machine, see \fBypbind\fR(8), \fBypwhich\fR(1), \fBypmatch\fR(1), and
\fBypcat\fR(1). The package can be loaded from the standard library,
\fB/usr/lib/libnsl.so.1\fR.
.sp
@@ -133,8 +133,8 @@ per-node resources used to bind it.
.sp
If an RPC failure results upon use of a binding, that domain will be unbound
automatically. At that point, the \fBypclnt()\fR layer will retry a few more
-times or until the operation succeeds, provided that \fBrpcbind\fR(1M) and
-\fBypbind\fR(1M) are running, and either:
+times or until the operation succeeds, provided that \fBrpcbind\fR(8) and
+\fBypbind\fR(8) are running, and either:
.RS +4
.TP
.ie t \(bu
@@ -506,7 +506,7 @@ Cannot communicate with \fBypserv\fR.
\fB/usr/lib/libnsl.so.1\fR
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -521,6 +521,13 @@ MT-Level Safe
.SH SEE ALSO
.LP
-\fBypcat\fR(1), \fBypmatch\fR(1), \fBypwhich\fR(1),
-\fBrpcbind\fR(1M), \fBypbind\fR(1M), \fBypserv\fR(1M),
-\fBsysinfo\fR(2), \fBmalloc\fR(3C), \fBypfiles\fR(4), \fBattributes\fR(5)
+.BR ypcat (1),
+.BR ypmatch (1),
+.BR ypwhich (1),
+.BR sysinfo (2),
+.BR malloc (3C),
+.BR ypfiles (5),
+.BR attributes (7),
+.BR rpcbind (8),
+.BR ypbind (8),
+.BR ypserv (8)
diff --git a/usr/src/man/man3nvpair/nvlist_add_boolean.3nvpair b/usr/src/man/man3nvpair/nvlist_add_boolean.3nvpair
index 2d85c2659d..23d19b120b 100644
--- a/usr/src/man/man3nvpair/nvlist_add_boolean.3nvpair
+++ b/usr/src/man/man3nvpair/nvlist_add_boolean.3nvpair
@@ -318,7 +318,7 @@ There is insufficient memory.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -335,4 +335,6 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBlibnvpair\fR(3LIB), \fBnvlist_alloc\fR(3NVPAIR), \fBattributes\fR(5)
+.BR libnvpair (3LIB),
+.BR nvlist_alloc (3NVPAIR),
+.BR attributes (7)
diff --git a/usr/src/man/man3nvpair/nvlist_alloc.3nvpair b/usr/src/man/man3nvpair/nvlist_alloc.3nvpair
index 728bc34c5e..fc1dd441f8 100644
--- a/usr/src/man/man3nvpair/nvlist_alloc.3nvpair
+++ b/usr/src/man/man3nvpair/nvlist_alloc.3nvpair
@@ -569,7 +569,7 @@ main(int argc, char *argv[])
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -586,4 +586,6 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBlibnvpair\fR(3LIB), \fBattributes\fR(5), \fBnvlist_alloc\fR(9F)
+.BR libnvpair (3LIB),
+.BR attributes (7),
+.BR nvlist_alloc (9F)
diff --git a/usr/src/man/man3nvpair/nvlist_lookup_boolean.3nvpair b/usr/src/man/man3nvpair/nvlist_lookup_boolean.3nvpair
index a32ae6e8ef..9f298a3de4 100644
--- a/usr/src/man/man3nvpair/nvlist_lookup_boolean.3nvpair
+++ b/usr/src/man/man3nvpair/nvlist_lookup_boolean.3nvpair
@@ -340,7 +340,7 @@ An encode/decode method is not supported.
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -356,5 +356,7 @@ MT-Level MT-Safe
.TE
.SH SEE ALSO
-\fBlibnvpair\fR(3LIB), \fBnvlist_alloc\fR(3NVPAIR), \fBnvpair_type\fR(3NVPAIR),
-\fBattributes\fR(5)
+.BR libnvpair (3LIB),
+.BR nvlist_alloc (3NVPAIR),
+.BR nvpair_type (3NVPAIR),
+.BR attributes (7)
diff --git a/usr/src/man/man3nvpair/nvlist_lookup_nvpair.3nvpair b/usr/src/man/man3nvpair/nvlist_lookup_nvpair.3nvpair
index 05799bf2a2..cd7e40622b 100644
--- a/usr/src/man/man3nvpair/nvlist_lookup_nvpair.3nvpair
+++ b/usr/src/man/man3nvpair/nvlist_lookup_nvpair.3nvpair
@@ -84,7 +84,7 @@ The list was not allocated with \fBNV_UNIQUE_NAME\fR.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -101,5 +101,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBlibnvpair\fR(3LIB), \fBnvlist_alloc\fR(3NVPAIR), \fBattributes\fR(5),
-\fBnvlist_lookup_nvpair\fR(9F)
+.BR libnvpair (3LIB),
+.BR nvlist_alloc (3NVPAIR),
+.BR attributes (7),
+.BR nvlist_lookup_nvpair (9F)
diff --git a/usr/src/man/man3nvpair/nvlist_next_nvpair.3nvpair b/usr/src/man/man3nvpair/nvlist_next_nvpair.3nvpair
index f62852f708..e66c3c33a5 100644
--- a/usr/src/man/man3nvpair/nvlist_next_nvpair.3nvpair
+++ b/usr/src/man/man3nvpair/nvlist_next_nvpair.3nvpair
@@ -267,7 +267,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -285,7 +285,9 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBlibnvpair\fR(3LIB), \fBnvlist_alloc\fR(3NVPAIR), \fBattributes\fR(5)
+.BR libnvpair (3LIB),
+.BR nvlist_alloc (3NVPAIR),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3nvpair/nvlist_remove.3nvpair b/usr/src/man/man3nvpair/nvlist_remove.3nvpair
index cf99dafa1d..9b7dca6e41 100644
--- a/usr/src/man/man3nvpair/nvlist_remove.3nvpair
+++ b/usr/src/man/man3nvpair/nvlist_remove.3nvpair
@@ -93,7 +93,7 @@ and \fItype\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -111,4 +111,5 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBlibnvpair\fR(3LIB), \fBattributes\fR(5)
+.BR libnvpair (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3nvpair/nvpair_value_byte.3nvpair b/usr/src/man/man3nvpair/nvpair_value_byte.3nvpair
index dd13e01463..890514595b 100644
--- a/usr/src/man/man3nvpair/nvpair_value_byte.3nvpair
+++ b/usr/src/man/man3nvpair/nvpair_value_byte.3nvpair
@@ -226,7 +226,7 @@ match the function name.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -244,4 +244,6 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBlibnvpair\fR(3LIB), \fBnvlist_alloc\fR(3NVPAIR), \fBattributes\fR(5)
+.BR libnvpair (3LIB),
+.BR nvlist_alloc (3NVPAIR),
+.BR attributes (7)
diff --git a/usr/src/man/man3ofmt/ofmt.3ofmt b/usr/src/man/man3ofmt/ofmt.3ofmt
index 9c05dc8c21..10dca7b36b 100644
--- a/usr/src/man/man3ofmt/ofmt.3ofmt
+++ b/usr/src/man/man3ofmt/ofmt.3ofmt
@@ -342,4 +342,4 @@ function returns the
.Sh SEE ALSO
.Xr ioctl 2 ,
.Xr strerror 3C ,
-.Xr attributes 5
+.Xr attributes 7
diff --git a/usr/src/man/man3pam/pam.3pam b/usr/src/man/man3pam/pam.3pam
index 785afddab4..66ddf14add 100644
--- a/usr/src/man/man3pam/pam.3pam
+++ b/usr/src/man/man3pam/pam.3pam
@@ -58,7 +58,7 @@ restrictions.
.LP
Category four contains the functions that perform session management after
access to the system has been granted. See \fBpam_open_session\fR(3PAM) and
-\fBpam_close_session\fR(3PAM)
+.BR pam_close_session (3PAM)
.sp
.LP
The fifth category consists of the function that changes authentication tokens,
@@ -140,7 +140,7 @@ The \fBPAM\fR architecture enables authentication by multiple authentication
services through \fIstacking\fR. System entry applications, such as
\fBlogin\fR(1), stack multiple service modules to authenticate users with
multiple authentication services. The order in which authentication service
-modules are stacked is specified in the configuration file, \fBpam.conf\fR(4).
+modules are stacked is specified in the configuration file, \fBpam.conf\fR(5).
A system administrator determines this ordering, and also determines whether
the same password can be used for all authentication services.
.SS "Administrative Interface"
@@ -148,7 +148,7 @@ the same password can be used for all authentication services.
.LP
The authentication library, \fB/usr/lib/libpam.so.1\fR, implements the
framework interface. Various authentication services are implemented by their
-own loadable modules whose paths are specified through the \fBpam.conf\fR(4)
+own loadable modules whose paths are specified through the \fBpam.conf\fR(5)
file.
.SH RETURN VALUES
.sp
@@ -230,7 +230,7 @@ Permission denied.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -246,10 +246,17 @@ MT Level MT-Safe with exceptions
.SH SEE ALSO
.sp
.LP
-\fBlogin\fR(1), \fBpam_authenticate\fR(3PAM), \fBpam_chauthtok\fR(3PAM),
-\fBpam_open_session\fR(3PAM), \fBpam_set_item\fR(3PAM),
-\fBpam_setcred\fR(3PAM), \fBpam_sm\fR(3PAM), \fBpam_start\fR(3PAM),
-\fBpam_strerror\fR(3PAM), \fBpam.conf\fR(4), \fBattributes\fR(5)
+.BR login (1),
+.BR pam_authenticate (3PAM),
+.BR pam_chauthtok (3PAM),
+.BR pam_open_session (3PAM),
+.BR pam_set_item (3PAM),
+.BR pam_setcred (3PAM),
+.BR pam_sm (3PAM),
+.BR pam_start (3PAM),
+.BR pam_strerror (3PAM),
+.BR pam.conf (5),
+.BR attributes (7)
.sp
.LP
\fISolaris Security for Developers Guide\fR
diff --git a/usr/src/man/man3pam/pam_acct_mgmt.3pam b/usr/src/man/man3pam/pam_acct_mgmt.3pam
index aa955a4810..9525997b59 100644
--- a/usr/src/man/man3pam/pam_acct_mgmt.3pam
+++ b/usr/src/man/man3pam/pam_acct_mgmt.3pam
@@ -94,7 +94,7 @@ User account has expired.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -112,8 +112,11 @@ MT-Level MT-Safe with exceptions
.SH SEE ALSO
.sp
.LP
-\fBpam\fR(3PAM), \fBpam_authenticate\fR(3PAM), \fBpam_start\fR(3PAM),
-\fBlibpam\fR(3LIB), \fBattributes\fR(5)
+.BR libpam (3LIB),
+.BR pam (3PAM),
+.BR pam_authenticate (3PAM),
+.BR pam_start (3PAM),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3pam/pam_authenticate.3pam b/usr/src/man/man3pam/pam_authenticate.3pam
index 6ce68a636e..d37df2ea72 100644
--- a/usr/src/man/man3pam/pam_authenticate.3pam
+++ b/usr/src/man/man3pam/pam_authenticate.3pam
@@ -101,7 +101,7 @@ No further retries should be attempted.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -119,9 +119,13 @@ MT-Level MT-Safe with exceptions
.SH SEE ALSO
.sp
.LP
-\fBpam\fR(3PAM), \fBpam_open_session\fR(3PAM), \fBpam_set_item\fR(3PAM),
-\fBpam_setcred\fR(3PAM), \fBpam_start\fR(3PAM), \fBlibpam\fR(3LIB),
-\fBattributes\fR(5)
+.BR libpam (3LIB),
+.BR pam (3PAM),
+.BR pam_open_session (3PAM),
+.BR pam_set_item (3PAM),
+.BR pam_setcred (3PAM),
+.BR pam_start (3PAM),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3pam/pam_chauthtok.3pam b/usr/src/man/man3pam/pam_chauthtok.3pam
index 998247892d..69686a1ebc 100644
--- a/usr/src/man/man3pam/pam_chauthtok.3pam
+++ b/usr/src/man/man3pam/pam_chauthtok.3pam
@@ -58,7 +58,7 @@ entered.
.LP
Upon successful completion of the call, the authentication token of the user
will be changed in accordance with the password service configured in the
-system through \fBpam.conf\fR(4).
+system through \fBpam.conf\fR(5).
.SH RETURN VALUES
.sp
.LP
@@ -131,7 +131,7 @@ Preliminary check by password service failed.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -163,7 +163,7 @@ Typically, applications such as \fBpasswd\fR(1) should not use this flag.
.LP
The \fBpam_chauthtok()\fR functions performs a preliminary check before
attempting to update passwords. This check is performed for each password
-module in the stack as listed in \fBpam.conf\fR(4). The check may include
+module in the stack as listed in \fBpam.conf\fR(5). The check may include
pinging remote name services to determine if they are available. If
\fBpam_chauthtok()\fR returns \fBPAM_TRY_AGAIN\fR, then the check has failed,
and passwords are not updated.
diff --git a/usr/src/man/man3pam/pam_get_user.3pam b/usr/src/man/man3pam/pam_get_user.3pam
index d1ddf0b95d..96e07f58af 100644
--- a/usr/src/man/man3pam/pam_get_user.3pam
+++ b/usr/src/man/man3pam/pam_get_user.3pam
@@ -64,7 +64,7 @@ related return values.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -82,9 +82,15 @@ MT-Level MT-Safe with exceptions
.SH SEE ALSO
.sp
.LP
-\fBpam\fR(3PAM), \fBpam_authenticate\fR(3PAM), \fBpam_end\fR(3PAM),
-\fBpam_get_item\fR(3PAM), \fBpam_set_item\fR(3PAM), \fBpam_sm\fR(3PAM),
-\fBpam_sm_authenticate\fR(3PAM), \fBpam_start\fR(3PAM), \fBattributes\fR(5)
+.BR pam (3PAM),
+.BR pam_authenticate (3PAM),
+.BR pam_end (3PAM),
+.BR pam_get_item (3PAM),
+.BR pam_set_item (3PAM),
+.BR pam_sm (3PAM),
+.BR pam_sm_authenticate (3PAM),
+.BR pam_start (3PAM),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3pam/pam_getenv.3pam b/usr/src/man/man3pam/pam_getenv.3pam
index 0afe7fdb66..330c04ed18 100644
--- a/usr/src/man/man3pam/pam_getenv.3pam
+++ b/usr/src/man/man3pam/pam_getenv.3pam
@@ -35,7 +35,7 @@ pointer.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -53,8 +53,11 @@ MT-Level MT-Safe with exceptions
.SH SEE ALSO
.sp
.LP
-\fBpam\fR(3PAM), \fBpam_getenvlist\fR(3PAM), \fBpam_putenv\fR(3PAM),
-\fBlibpam\fR(3LIB), \fBattributes\fR(5)
+.BR libpam (3LIB),
+.BR pam (3PAM),
+.BR pam_getenvlist (3PAM),
+.BR pam_putenv (3PAM),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3pam/pam_getenvlist.3pam b/usr/src/man/man3pam/pam_getenvlist.3pam
index de83b8280b..444734272a 100644
--- a/usr/src/man/man3pam/pam_getenvlist.3pam
+++ b/usr/src/man/man3pam/pam_getenvlist.3pam
@@ -36,7 +36,7 @@ of all the \fBPAM\fR environment variables stored in \fIpamh\fR. Otherwise,
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -54,8 +54,11 @@ MT-Level MT-Safe with exceptions
.SH SEE ALSO
.sp
.LP
-\fBpam\fR(3PAM), \fBpam_getenv\fR(3PAM), \fBpam_putenv\fR(3PAM),
-\fBlibpam\fR(3LIB), \fBattributes\fR(5)
+.BR libpam (3LIB),
+.BR pam (3PAM),
+.BR pam_getenv (3PAM),
+.BR pam_putenv (3PAM),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3pam/pam_open_session.3pam b/usr/src/man/man3pam/pam_open_session.3pam
index af668294a4..b77c1f3792 100644
--- a/usr/src/man/man3pam/pam_open_session.3pam
+++ b/usr/src/man/man3pam/pam_open_session.3pam
@@ -65,7 +65,7 @@ Cannot make or remove an entry for the specified session.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -83,8 +83,12 @@ MT-Level MT-Safe with exceptions
.SH SEE ALSO
.sp
.LP
-\fBgetutxent\fR(3C), \fBpam\fR(3PAM), \fBpam_acct_mgmt\fR(3PAM),
-\fBpam_authenticate\fR(3PAM), \fBpam_start\fR(3PAM), \fBattributes\fR(5)
+.BR getutxent (3C),
+.BR pam (3PAM),
+.BR pam_acct_mgmt (3PAM),
+.BR pam_authenticate (3PAM),
+.BR pam_start (3PAM),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3pam/pam_putenv.3pam b/usr/src/man/man3pam/pam_putenv.3pam
index 0e582497bb..2006e8c877 100644
--- a/usr/src/man/man3pam/pam_putenv.3pam
+++ b/usr/src/man/man3pam/pam_putenv.3pam
@@ -121,7 +121,7 @@ Permission denied.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -139,8 +139,12 @@ MT-Level MT-Safe with exceptions
.SH SEE ALSO
.sp
.LP
-\fBdlopen\fR(3C), \fBpam\fR(3PAM), \fBpam_getenv\fR(3PAM),
-\fBpam_getenvlist\fR(3PAM), \fBlibpam\fR(3LIB), \fBattributes\fR(5)
+.BR dlopen (3C),
+.BR libpam (3LIB),
+.BR pam (3PAM),
+.BR pam_getenv (3PAM),
+.BR pam_getenvlist (3PAM),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3pam/pam_set_data.3pam b/usr/src/man/man3pam/pam_set_data.3pam
index aa334618e4..95ebf4cd74 100644
--- a/usr/src/man/man3pam/pam_set_data.3pam
+++ b/usr/src/man/man3pam/pam_set_data.3pam
@@ -76,7 +76,7 @@ No module specific data is present.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -94,7 +94,10 @@ MT-Level MT-Safe with exceptions
.SH SEE ALSO
.sp
.LP
-\fBpam\fR(3PAM), \fBpam_end\fR(3PAM), \fBlibpam\fR(3LIB), \fBattributes\fR(5)
+.BR libpam (3LIB),
+.BR pam (3PAM),
+.BR pam_end (3PAM),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3pam/pam_set_item.3pam b/usr/src/man/man3pam/pam_set_item.3pam
index 4072b72540..f6163870d2 100644
--- a/usr/src/man/man3pam/pam_set_item.3pam
+++ b/usr/src/man/man3pam/pam_set_item.3pam
@@ -37,7 +37,7 @@ following:
.RS 19n
The authenticated user name. Applications that are trusted to correctly
identify the authenticated user should set this item to the authenticated user
-name. See NOTES and \fBpam_unix_cred\fR(5).
+name. See NOTES and \fBpam_unix_cred\fR(7).
.RE
.sp
@@ -76,7 +76,7 @@ The old user authentication token.
A semicolon-separated list of \fIkey\fR=\fIvalue\fR pairs that represent the
set of resource controls for application by \fBpam_setcred\fR(3PAM) or
\fBpam_open_session\fR(3PAM). See the individual service module definitions,
-such as \fBpam_unix_cred\fR(5), for interpretations of the keys and values.
+such as \fBpam_unix_cred\fR(7), for interpretations of the keys and values.
.RE
.sp
@@ -198,7 +198,7 @@ related return values.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -220,11 +220,17 @@ multithreaded application uses its own \fBPAM\fR handle.
.SH SEE ALSO
.sp
.LP
-\fBlibpam\fR(3LIB), \fBpam\fR(3PAM), \fBpam_acct_mgmt\fR(3PAM),
-\fBpam_authenticate\fR(3PAM), \fBpam_chauthtok\fR(3PAM),
-\fBpam_get_user\fR(3PAM), \fBpam_open_session\fR(3PAM),
-\fBpam_setcred\fR(3PAM), \fBpam_start\fR(3PAM), \fBattributes\fR(5),
-\fBpam_unix_cred\fR(5)
+.BR libpam (3LIB),
+.BR pam (3PAM),
+.BR pam_acct_mgmt (3PAM),
+.BR pam_authenticate (3PAM),
+.BR pam_chauthtok (3PAM),
+.BR pam_get_user (3PAM),
+.BR pam_open_session (3PAM),
+.BR pam_setcred (3PAM),
+.BR pam_start (3PAM),
+.BR attributes (7),
+.BR pam_unix_cred (7)
.SH NOTES
.sp
.LP
@@ -237,4 +243,4 @@ not set, a service module performs its default action.
PAM_AUSER is not intended as a replacement for PAM_USER. It is expected to be
used to supplement PAM_USER when there is an authenticated user from a source
other than \fBpam_authenticate\fR(3PAM). Such sources could be \fBsshd\fR
-host-based authentication, kerberized \fBrlogin\fR, and \fBsu\fR(1M).
+host-based authentication, kerberized \fBrlogin\fR, and \fBsu\fR(8).
diff --git a/usr/src/man/man3pam/pam_setcred.3pam b/usr/src/man/man3pam/pam_setcred.3pam
index fcdeea9899..ac293a4093 100644
--- a/usr/src/man/man3pam/pam_setcred.3pam
+++ b/usr/src/man/man3pam/pam_setcred.3pam
@@ -124,7 +124,7 @@ Failure setting user credentials.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -142,9 +142,13 @@ MT-Level MT-Safe with exceptions
.SH SEE ALSO
.sp
.LP
-\fBpam\fR(3PAM), \fBpam_acct_mgmt\fR(3PAM), \fBpam_authenticate\fR(3PAM),
-\fBpam_set_item\fR(3PAM), \fBpam_start\fR(3PAM), \fBlibpam\fR(3LIB),
-\fBattributes\fR(5)
+.BR libpam (3LIB),
+.BR pam (3PAM),
+.BR pam_acct_mgmt (3PAM),
+.BR pam_authenticate (3PAM),
+.BR pam_set_item (3PAM),
+.BR pam_start (3PAM),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3pam/pam_sm.3pam b/usr/src/man/man3pam/pam_sm.3pam
index 7320f7eced..b021e05846 100644
--- a/usr/src/man/man3pam/pam_sm.3pam
+++ b/usr/src/man/man3pam/pam_sm.3pam
@@ -200,7 +200,7 @@ contribute to the decision being made by the \fBPAM\fR framework.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -218,16 +218,30 @@ MT-Level MT-Safe with exceptions
.SH SEE ALSO
.sp
.LP
-\fBpam\fR(3PAM), \fBpam_authenticate\fR(3PAM), \fBpam_chauthtok\fR(3PAM),
-\fBpam_get_user\fR(3PAM), \fBpam_open_session\fR(3PAM),
-\fBpam_setcred\fR(3PAM), \fBpam_set_item\fR(3PAM),
-\fBpam_sm_authenticate\fR(3PAM), \fBpam_sm_chauthtok\fR(3PAM),
-\fBpam_sm_open_session\fR(3PAM), \fBpam_sm_setcred\fR(3PAM),
-\fBpam_start\fR(3PAM), \fBpam_strerror\fR(3PAM), \fBsyslog\fR(3C),
-\fBpam.conf\fR(4), \fBattributes\fR(5), \fBpam_authtok_check\fR(5),
-\fBpam_authtok_get\fR(5), \fBpam_authtok_store\fR(5), \fBpam_dhkeys\fR(5),
-\fBpam_passwd_auth\fR(5), \fBpam_unix_account\fR(5), \fBpam_unix_auth\fR(5),
-\fBpam_unix_session\fR(5)
+.BR syslog (3C),
+.BR pam (3PAM),
+.BR pam_authenticate (3PAM),
+.BR pam_chauthtok (3PAM),
+.BR pam_get_user (3PAM),
+.BR pam_open_session (3PAM),
+.BR pam_set_item (3PAM),
+.BR pam_setcred (3PAM),
+.BR pam_sm_authenticate (3PAM),
+.BR pam_sm_chauthtok (3PAM),
+.BR pam_sm_open_session (3PAM),
+.BR pam_sm_setcred (3PAM),
+.BR pam_start (3PAM),
+.BR pam_strerror (3PAM),
+.BR pam.conf (5),
+.BR attributes (7),
+.BR pam_authtok_check (7),
+.BR pam_authtok_get (7),
+.BR pam_authtok_store (7),
+.BR pam_dhkeys (7),
+.BR pam_passwd_auth (7),
+.BR pam_unix_account (7),
+.BR pam_unix_auth (7),
+.BR pam_unix_session (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3pam/pam_sm_acct_mgmt.3pam b/usr/src/man/man3pam/pam_sm_acct_mgmt.3pam
index f74540c1ba..ec514f3b3d 100644
--- a/usr/src/man/man3pam/pam_sm_acct_mgmt.3pam
+++ b/usr/src/man/man3pam/pam_sm_acct_mgmt.3pam
@@ -23,7 +23,7 @@ pam_sm_acct_mgmt \- service provider implementation for pam_acct_mgmt
.sp
.LP
In response to a call to \fBpam_acct_mgmt\fR(3PAM), the \fBPAM\fR framework
-calls \fBpam_sm_acct_mgmt()\fR from the modules listed in the \fBpam.conf\fR(4)
+calls \fBpam_sm_acct_mgmt()\fR from the modules listed in the \fBpam.conf\fR(5)
file. The account management provider supplies the back-end functionality for
this interface function. Applications should not call this \fBAPI\fR directly.
.sp
@@ -57,7 +57,7 @@ user has a null authentication token.
.sp
.LP
The \fIargc\fR argument represents the number of module options passed in from
-the configuration file \fBpam.conf\fR(4). \fIargv\fR specifies the module
+the configuration file \fBpam.conf\fR(5). \fIargv\fR specifies the module
options, which are interpreted and processed by the account management service.
Please refer to the specific module man pages for the various available
\fIoptions\fR. If an unknown option is passed to the module, an error should be
@@ -122,7 +122,7 @@ Ignore underlying account module regardless of whether the control flag is
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -140,9 +140,14 @@ MT-Level MT-Safe with exceptions
.SH SEE ALSO
.sp
.LP
-\fBpam\fR(3PAM), \fBpam_acct_mgmt\fR(3PAM), \fBpam_set_data\fR(3PAM),
-\fBpam_start\fR(3PAM), \fBsyslog\fR(3C), \fBlibpam\fR(3LIB), \fBpam.conf\fR(4),
-\fBattributes\fR(5)
+.BR syslog (3C),
+.BR libpam (3LIB),
+.BR pam (3PAM),
+.BR pam_acct_mgmt (3PAM),
+.BR pam_set_data (3PAM),
+.BR pam_start (3PAM),
+.BR pam.conf (5),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3pam/pam_sm_authenticate.3pam b/usr/src/man/man3pam/pam_sm_authenticate.3pam
index 7f428d631c..0928b0b398 100644
--- a/usr/src/man/man3pam/pam_sm_authenticate.3pam
+++ b/usr/src/man/man3pam/pam_sm_authenticate.3pam
@@ -23,7 +23,7 @@ pam_sm_authenticate \- service provider implementation for pam_authenticate
.LP
In response to a call to \fBpam_authenticate\fR(3PAM), the \fBPAM\fR framework
calls \fBpam_sm_authenticate()\fR from the modules listed in the
-\fBpam.conf\fR(4) file. The authentication provider supplies the back-end
+\fBpam.conf\fR(5) file. The authentication provider supplies the back-end
functionality for this interface function.
.sp
.LP
@@ -70,7 +70,7 @@ The user has a null authentication token.
.sp
.LP
The \fIargc\fR argument represents the number of module options passed in from
-the configuration file \fBpam.conf\fR(4). \fIargv\fR specifies the module
+the configuration file \fBpam.conf\fR(5). \fIargv\fR specifies the module
options, which are interpreted and processed by the authentication service.
Please refer to the specific module man pages for the various available
\fIoptions\fR. If any unknown option is passed in, the module should log the
@@ -150,7 +150,7 @@ is \fIrequired\fR,\fIoptional,\fR or \fIsufficient\fR1.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -168,10 +168,16 @@ MT-Level MT-Safe with exceptions
.SH SEE ALSO
.sp
.LP
-\fBpam\fR(3PAM), \fBpam_authenticate\fR(3PAM), \fBpam_get_item\fR(3PAM),
-\fBpam_set_data\fR(3PAM), \fBpam_set_item\fR(3PAM), \fBpam_setcred\fR(3PAM),
-\fBpam_start\fR(3PAM), \fBlibpam\fR(3LIB), \fBpam.conf\fR(4),
-\fBattributes\fR(5)
+.BR libpam (3LIB),
+.BR pam (3PAM),
+.BR pam_authenticate (3PAM),
+.BR pam_get_item (3PAM),
+.BR pam_set_data (3PAM),
+.BR pam_set_item (3PAM),
+.BR pam_setcred (3PAM),
+.BR pam_start (3PAM),
+.BR pam.conf (5),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3pam/pam_sm_chauthtok.3pam b/usr/src/man/man3pam/pam_sm_chauthtok.3pam
index 6a7e9ea570..daa6aa09c1 100644
--- a/usr/src/man/man3pam/pam_sm_chauthtok.3pam
+++ b/usr/src/man/man3pam/pam_sm_chauthtok.3pam
@@ -21,7 +21,7 @@ pam_sm_chauthtok \- service provider implementation for pam_chauthtok
.sp
.LP
In response to a call to \fBpam_chauthtok()\fR the \fBPAM\fR framework calls
-pam_sm_chauthtok(3PAM) from the modules listed in the \fBpam.conf\fR(4) file.
+pam_sm_chauthtok(3PAM) from the modules listed in the \fBpam.conf\fR(5) file.
The password management provider supplies the back-end functionality for this
interface function.
.sp
@@ -93,7 +93,7 @@ accordance with the authentication scheme configured within the system.
.sp
.LP
The \fIargc\fR argument represents the number of module options passed in from
-the configuration file \fBpam.conf\fR(4). The \fIargv\fR argument specifies the
+the configuration file \fBpam.conf\fR(5). The \fIargv\fR argument specifies the
module options, which are interpreted and processed by the password management
service. Please refer to the specific module man pages for the various
available \fIoptions\fR.
@@ -180,7 +180,7 @@ Preliminary check by password service failed.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -198,9 +198,15 @@ MT-Level MT-Safe with exceptions
.SH SEE ALSO
.sp
.LP
-\fBping\fR(1M), \fBpam\fR(3PAM), \fBpam_chauthtok\fR(3PAM),
-\fBpam_get_data\fR(3PAM), \fBpam_get_item\fR(3PAM), \fBpam_set_data\fR(3PAM),
-\fBlibpam\fR(3LIB), \fBpam.conf\fR(4), \fBattributes\fR(5)
+.BR libpam (3LIB),
+.BR pam (3PAM),
+.BR pam_chauthtok (3PAM),
+.BR pam_get_data (3PAM),
+.BR pam_get_item (3PAM),
+.BR pam_set_data (3PAM),
+.BR pam.conf (5),
+.BR attributes (7),
+.BR ping (8)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3pam/pam_sm_open_session.3pam b/usr/src/man/man3pam/pam_sm_open_session.3pam
index 10d1814374..c4064ba388 100644
--- a/usr/src/man/man3pam/pam_sm_open_session.3pam
+++ b/usr/src/man/man3pam/pam_sm_open_session.3pam
@@ -29,7 +29,7 @@ for pam_open_session and pam_close_session
In response to a call to \fBpam_open_session\fR(3PAM) and
\fBpam_close_session\fR(3PAM), the \fBPAM\fR framework calls
\fBpam_sm_open_session()\fR and \fBpam_sm_close_session()\fR, respectively from
-the modules listed in the \fBpam.conf\fR(4) file. The session management
+the modules listed in the \fBpam.conf\fR(5) file. The session management
provider supplies the back-end functionality for this interface function.
.sp
.LP
@@ -49,7 +49,7 @@ Session service should not generate any messages.
.sp
.LP
The \fIargc\fR argument represents the number of module options passed in from
-the configuration file \fBpam.conf\fR(4). \fIargv\fR specifies the module
+the configuration file \fBpam.conf\fR(5). \fIargv\fR specifies the module
options, which are interpreted and processed by the session management service.
If an unknown option is passed in, an error should be logged through
\fBsyslog\fR(3C) and the option ignored.
@@ -76,7 +76,7 @@ Ignore underlying session module regardless of whether the control flag is
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -92,8 +92,12 @@ MT-Level MT-Safe with exceptions
.TE
.SH SEE ALSO
-\fBpam\fR(3PAM), \fBpam_open_session\fR(3PAM), \fBsyslog\fR(3C),
-\fBlibpam\fR(3LIB), \fBpam.conf\fR(4), \fBattributes\fR(5)
+.BR syslog (3C),
+.BR libpam (3LIB),
+.BR pam (3PAM),
+.BR pam_open_session (3PAM),
+.BR pam.conf (5),
+.BR attributes (7)
.SH NOTES
The interfaces in \fBlibpam\fR are MT-Safe only if each thread within the
multithreaded application uses its own \fBPAM\fR handle.
diff --git a/usr/src/man/man3pam/pam_sm_setcred.3pam b/usr/src/man/man3pam/pam_sm_setcred.3pam
index 8fb5f76fbc..6760949d1d 100644
--- a/usr/src/man/man3pam/pam_sm_setcred.3pam
+++ b/usr/src/man/man3pam/pam_sm_setcred.3pam
@@ -23,7 +23,7 @@ pam_sm_setcred \- service provider implementation for pam_setcred
.sp
.LP
In response to a call to \fBpam_setcred\fR(3PAM), the \fBPAM\fR framework
-calls \fBpam_sm_setcred()\fR from the modules listed in the \fBpam.conf\fR(4)
+calls \fBpam_sm_setcred()\fR from the modules listed in the \fBpam.conf\fR(5)
file. The authentication provider supplies the back-end functionality for this
interface function.
.sp
@@ -83,7 +83,7 @@ If no flag is set, \fBPAM_ESTABLISH\fR \fB_CRED\fR is used as the default.
.sp
.LP
The \fIargc\fR argument represents the number of module options passed in from
-the configuration file \fBpam.conf\fR(4). \fIargv\fR specifies the module
+the configuration file \fBpam.conf\fR(5). \fIargv\fR specifies the module
options, which are interpreted and processed by the authentication service. If
an unknown option is passed to the module, an error should be logged and the
option ignored.
@@ -152,7 +152,7 @@ is \fIrequired\fR,\fIoptional\fR, or \fIsufficient\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -170,9 +170,14 @@ MT-Level MT-Safe with exceptions
.SH SEE ALSO
.sp
.LP
-\fBpam\fR(3PAM), \fBpam_authenticate\fR(3PAM), \fBpam_get_data\fR(3PAM)
-\fBpam_setcred\fR(3PAM), \fBpam_sm_authenticate\fR(3PAM), \fBlibpam\fR(3LIB),
-\fBpam.conf\fR(4), \fBattributes\fR(5)
+.BR pam (3PAM),
+.BR pam_authenticate (3PAM),
+.BR pam_get_data (3PAM)
+.BR libpam (3LIB),
+.BR pam_setcred (3PAM),
+.BR pam_sm_authenticate (3PAM),
+.BR pam.conf (5),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3pam/pam_start.3pam b/usr/src/man/man3pam/pam_start.3pam
index d2e9a79e35..462361fb06 100644
--- a/usr/src/man/man3pam/pam_start.3pam
+++ b/usr/src/man/man3pam/pam_start.3pam
@@ -177,7 +177,7 @@ Refer to the RETURN VALUES section on \fBpam\fR(3PAM).
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -195,10 +195,16 @@ MT-Level MT-Safe with exceptions
.SH SEE ALSO
.sp
.LP
-\fBlibpam\fR(3LIB), \fBpam\fR(3PAM), \fBpam_acct_mgmt\fR(3PAM),
-\fBpam_authenticate\fR(3PAM), \fBpam_chauthtok\fR(3PAM),
-\fBpam_open_session\fR(3PAM), \fBpam_setcred\fR(3PAM),
-\fBpam_set_data\fR(3PAM), \fBpam_strerror\fR(3PAM), \fBattributes\fR(5)
+.BR libpam (3LIB),
+.BR pam (3PAM),
+.BR pam_acct_mgmt (3PAM),
+.BR pam_authenticate (3PAM),
+.BR pam_chauthtok (3PAM),
+.BR pam_open_session (3PAM),
+.BR pam_set_data (3PAM),
+.BR pam_setcred (3PAM),
+.BR pam_strerror (3PAM),
+.BR attributes (7)
.sp
.LP
\fISolaris Security for Developers Guide\fR
diff --git a/usr/src/man/man3pam/pam_strerror.3pam b/usr/src/man/man3pam/pam_strerror.3pam
index d7dd0ee49e..999daef429 100644
--- a/usr/src/man/man3pam/pam_strerror.3pam
+++ b/usr/src/man/man3pam/pam_strerror.3pam
@@ -36,7 +36,7 @@ The \fBpam_strerror()\fR function returns the string "Unknown error" if
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -54,7 +54,9 @@ MT-Level MT-Safe with exceptions
.SH SEE ALSO
.sp
.LP
-\fBpam\fR(3PAM), \fBpam_start\fR(3PAM), \fBattributes\fR(5)
+.BR pam (3PAM),
+.BR pam_start (3PAM),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3papi/papiAttributeListAddValue.3papi b/usr/src/man/man3papi/papiAttributeListAddValue.3papi
index c34edc35ca..7861457b1f 100644
--- a/usr/src/man/man3papi/papiAttributeListAddValue.3papi
+++ b/usr/src/man/man3papi/papiAttributeListAddValue.3papi
@@ -637,7 +637,7 @@ main(int ac, char *av[])
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -654,4 +654,5 @@ MT-Level Safe
.SH SEE ALSO
.LP
-\fBlibpapi\fR(3LIB), \fBattributes\fR(5)
+.BR libpapi (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3papi/papiJobSubmit.3papi b/usr/src/man/man3papi/papiJobSubmit.3papi
index 99be053a57..49a36cccea 100644
--- a/usr/src/man/man3papi/papiJobSubmit.3papi
+++ b/usr/src/man/man3papi/papiJobSubmit.3papi
@@ -720,7 +720,7 @@ main(int ac, char *av[])
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -738,5 +738,6 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibpapi\fR(3LIB), \fBpapiAttributeListAddValue\fR(3PAPI),
-\fBattributes\fR(5)
+.BR libpapi (3LIB),
+.BR papiAttributeListAddValue (3PAPI),
+.BR attributes (7)
diff --git a/usr/src/man/man3papi/papiLibrarySupportedCall.3papi b/usr/src/man/man3papi/papiLibrarySupportedCall.3papi
index 4aa8f6031c..c221a0ca63 100644
--- a/usr/src/man/man3papi/papiLibrarySupportedCall.3papi
+++ b/usr/src/man/man3papi/papiLibrarySupportedCall.3papi
@@ -55,7 +55,7 @@ of strings listing all of the PAPI functions that return valid data other than
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -73,4 +73,5 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibpapi\fR(3LIB), \fBattributes\fR(5)
+.BR libpapi (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3papi/papiPrintersList.3papi b/usr/src/man/man3papi/papiPrintersList.3papi
index 69d31be0cc..750124ec04 100644
--- a/usr/src/man/man3papi/papiPrintersList.3papi
+++ b/usr/src/man/man3papi/papiPrintersList.3papi
@@ -521,7 +521,7 @@ main(int ac, char *av[])
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -539,4 +539,5 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibpapi\fR(3LIB), \fBattributes\fR(5)
+.BR libpapi (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3papi/papiServiceCreate.3papi b/usr/src/man/man3papi/papiServiceCreate.3papi
index 0e4477f8b1..6db50bdecf 100644
--- a/usr/src/man/man3papi/papiServiceCreate.3papi
+++ b/usr/src/man/man3papi/papiServiceCreate.3papi
@@ -290,7 +290,7 @@ main(int ac, char *av[])
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -307,4 +307,5 @@ MT-Level Safe
.SH SEE ALSO
.LP
-\fBlibpapi\fR(3LIB), \fBattributes\fR(5)
+.BR libpapi (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3papi/papiStatusString.3papi b/usr/src/man/man3papi/papiStatusString.3papi
index 7866f4baf2..dc7c672d77 100644
--- a/usr/src/man/man3papi/papiStatusString.3papi
+++ b/usr/src/man/man3papi/papiStatusString.3papi
@@ -64,7 +64,7 @@ main(int ac, char *av[])
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -82,4 +82,5 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibpapi\fR(3LIB), \fBattributes\fR(5)
+.BR libpapi (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3perl/Kstat.3perl b/usr/src/man/man3perl/Kstat.3perl
index e2baa41bdb..41b1105066 100644
--- a/usr/src/man/man3perl/Kstat.3perl
+++ b/usr/src/man/man3perl/Kstat.3perl
@@ -106,9 +106,13 @@ while (1) {
.SH SEE ALSO
.sp
.LP
-\fBperl\fR(1), \fBkstat\fR(1M), \fBkstat\fR(3KSTAT),
-\fBkstat_chain_update\fR(3KSTAT), \fBkstat_close\fR(3KSTAT),
-\fBkstat_open\fR(3KSTAT), \fBkstat_read\fR(3KSTAT)
+.BR perl (1),
+.BR kstat (3KSTAT),
+.BR kstat_chain_update (3KSTAT),
+.BR kstat_close (3KSTAT),
+.BR kstat_open (3KSTAT),
+.BR kstat_read (3KSTAT),
+.BR kstat (8)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3perl/Lgrp.3perl b/usr/src/man/man3perl/Lgrp.3perl
index 85007f313b..fb699cd221 100644
--- a/usr/src/man/man3perl/Lgrp.3perl
+++ b/usr/src/man/man3perl/Lgrp.3perl
@@ -1056,7 +1056,7 @@ always returns an empty list. The \fBlgrp_latency_cookie()\fR function is an
alias for \fBlgrp_latency()\fR for version 1.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -1071,11 +1071,22 @@ Interface Stability Unstable
.SH SEE ALSO
.LP
-\fBlgrp_affinity_get\fR(3LGRP), \fBlgrp_affinity_set\fR(3LGRP),
-\fBlgrp_children\fR(3LGRP), \fBlgrp_cookie_stale\fR(3LGRP),
-\fBlgrp_cpus\fR(3LGRP), \fBlgrp_fini\fR(3LGRP), \fBlgrp_home\fR(3LGRP),
-\fBlgrp_init\fR(3LGRP), \fBlgrp_latency\fR(3LGRP),
-\fBlgrp_latency_cookie\fR(3LGRP), \fBlgrp_mem_size\fR(3LGRP),
-\fBlgrp_nlgrps\fR(3LGRP), \fBlgrp_parents\fR(3LGRP),
-\fBlgrp_resources\fR(3LGRP), \fBlgrp_root\fR(3LGRP), \fBlgrp_version\fR(3LGRP),
-\fBlgrp_view\fR(3LGRP), \fBliblgrp\fR(3LIB), \fBattributes\fR(5)
+.BR lgrp_affinity_get (3LGRP),
+.BR lgrp_affinity_set (3LGRP),
+.BR lgrp_children (3LGRP),
+.BR lgrp_cookie_stale (3LGRP),
+.BR lgrp_cpus (3LGRP),
+.BR lgrp_fini (3LGRP),
+.BR lgrp_home (3LGRP),
+.BR lgrp_init (3LGRP),
+.BR lgrp_latency (3LGRP),
+.BR lgrp_latency_cookie (3LGRP),
+.BR lgrp_mem_size (3LGRP),
+.BR lgrp_nlgrps (3LGRP),
+.BR lgrp_parents (3LGRP),
+.BR lgrp_resources (3LGRP),
+.BR lgrp_root (3LGRP),
+.BR lgrp_version (3LGRP),
+.BR lgrp_view (3LGRP),
+.BR liblgrp (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3perl/Project.3perl b/usr/src/man/man3perl/Project.3perl
index 894f62f4b8..07b36d1279 100644
--- a/usr/src/man/man3perl/Project.3perl
+++ b/usr/src/man/man3perl/Project.3perl
@@ -151,7 +151,7 @@ process.
.sp .6
.RS 4n
This function returns the next project entry from \fB$filehandle\fR, a Perl
-file handle that must refer to a previously opened file in \fBproject\fR(4)
+file handle that must refer to a previously opened file in \fBproject\fR(5)
format. Return values are the same as for \fBgetprojent()\fR.
.RE
@@ -235,7 +235,7 @@ to selectively import constants and functions defined in this module:
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -251,6 +251,10 @@ Interface Stability Evolving
.SH SEE ALSO
.sp
.LP
-\fBgetprojid\fR(2), \fBgetdefaultproj\fR(3PROJECT), \fBinproj\fR(3PROJECT),
-\fBlibproject\fR(3LIB), \fBsetproject\fR(3PROJECT), \fBproject\fR(4),
-\fBattributes\fR(5)
+.BR getprojid (2),
+.BR libproject (3LIB),
+.BR getdefaultproj (3PROJECT),
+.BR inproj (3PROJECT),
+.BR setproject (3PROJECT),
+.BR project (5),
+.BR attributes (7)
diff --git a/usr/src/man/man3perl/Task.3perl b/usr/src/man/man3perl/Task.3perl
index f5fed1e647..c26d75324b 100644
--- a/usr/src/man/man3perl/Task.3perl
+++ b/usr/src/man/man3perl/Task.3perl
@@ -90,7 +90,7 @@ to selectively import constants and functions defined in this module:
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -106,4 +106,6 @@ Interface Stability Evolving
.SH SEE ALSO
.sp
.LP
-\fBgettaskid\fR(2), \fBsettaskid\fR(2), \fBattributes\fR(5)
+.BR gettaskid (2),
+.BR settaskid (2),
+.BR attributes (7)
diff --git a/usr/src/man/man3picl/libpicl.3picl b/usr/src/man/man3picl/libpicl.3picl
index 167c69a09f..5e383e7778 100644
--- a/usr/src/man/man3picl/libpicl.3picl
+++ b/usr/src/man/man3picl/libpicl.3picl
@@ -159,7 +159,7 @@ The maximum length of a PICL class name is specified by
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -175,4 +175,5 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBlibpicl\fR(3LIB), \fBattributes\fR(5)
+.BR libpicl (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3picl/picl_find_node.3picl b/usr/src/man/man3picl/picl_find_node.3picl
index 10e6fdb041..3ce11129bd 100644
--- a/usr/src/man/man3picl/picl_find_node.3picl
+++ b/usr/src/man/man3picl/picl_find_node.3picl
@@ -85,7 +85,7 @@ Stale handle
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -103,6 +103,8 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBpicl_get_propinfo\fR(3PICL), \fBpicl_get_propval\fR(3PICL),
-\fBpicl_get_propval_by_name\fR(3PICL), \fBpicl_get_prop_by_name\fR(3PICL),
-\fBattributes\fR(5)
+.BR picl_get_prop_by_name (3PICL),
+.BR picl_get_propinfo (3PICL),
+.BR picl_get_propval (3PICL),
+.BR picl_get_propval_by_name (3PICL),
+.BR attributes (7)
diff --git a/usr/src/man/man3picl/picl_get_first_prop.3picl b/usr/src/man/man3picl/picl_get_first_prop.3picl
index 9c0cd67223..54bcb82825 100644
--- a/usr/src/man/man3picl/picl_get_first_prop.3picl
+++ b/usr/src/man/man3picl/picl_get_first_prop.3picl
@@ -130,7 +130,7 @@ End of list
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -146,4 +146,5 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBpicl_get_prop_by_name\fR(3PICL), \fBattributes\fR(5)
+.BR picl_get_prop_by_name (3PICL),
+.BR attributes (7)
diff --git a/usr/src/man/man3picl/picl_get_frutree_parent.3picl b/usr/src/man/man3picl/picl_get_frutree_parent.3picl
index 81cdfec3ba..8ca2fc8b83 100644
--- a/usr/src/man/man3picl/picl_get_frutree_parent.3picl
+++ b/usr/src/man/man3picl/picl_get_frutree_parent.3picl
@@ -66,7 +66,7 @@ Stale handle
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -83,6 +83,8 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBpicl_get_propinfo\fR(3PICL), \fBpicl_get_propval\fR(3PICL),
-\fBpicl_get_propval_by_name\fR(3PICL), \fBpicl_get_prop_by_name\fR(3PICL),
-\fBattributes\fR(5)
+.BR picl_get_prop_by_name (3PICL),
+.BR picl_get_propinfo (3PICL),
+.BR picl_get_propval (3PICL),
+.BR picl_get_propval_by_name (3PICL),
+.BR attributes (7)
diff --git a/usr/src/man/man3picl/picl_get_next_by_row.3picl b/usr/src/man/man3picl/picl_get_next_by_row.3picl
index 7fba6685af..64a74bed3c 100644
--- a/usr/src/man/man3picl/picl_get_next_by_row.3picl
+++ b/usr/src/man/man3picl/picl_get_next_by_row.3picl
@@ -119,7 +119,7 @@ General system failure
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -135,4 +135,5 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBpicl_get_propval\fR(3PICL), \fBattributes\fR(5)
+.BR picl_get_propval (3PICL),
+.BR attributes (7)
diff --git a/usr/src/man/man3picl/picl_get_node_by_path.3picl b/usr/src/man/man3picl/picl_get_node_by_path.3picl
index a9e762d61f..e1a3475e8a 100644
--- a/usr/src/man/man3picl/picl_get_node_by_path.3picl
+++ b/usr/src/man/man3picl/picl_get_node_by_path.3picl
@@ -121,7 +121,7 @@ Not a node
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -139,4 +139,5 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBpicl_get_propval_by_name\fR(3PICL), \fBattributes\fR(5)
+.BR picl_get_propval_by_name (3PICL),
+.BR attributes (7)
diff --git a/usr/src/man/man3picl/picl_get_prop_by_name.3picl b/usr/src/man/man3picl/picl_get_prop_by_name.3picl
index 4118192321..aa1c7617a8 100644
--- a/usr/src/man/man3picl/picl_get_prop_by_name.3picl
+++ b/usr/src/man/man3picl/picl_get_prop_by_name.3picl
@@ -121,7 +121,7 @@ General system failure
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -137,4 +137,4 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBattributes\fR(5)
+.BR attributes (7)
diff --git a/usr/src/man/man3picl/picl_get_propinfo.3picl b/usr/src/man/man3picl/picl_get_propinfo.3picl
index ddf18cbb4b..dc17d53cc1 100644
--- a/usr/src/man/man3picl/picl_get_propinfo.3picl
+++ b/usr/src/man/man3picl/picl_get_propinfo.3picl
@@ -93,7 +93,7 @@ General system failure
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -107,5 +107,7 @@ MT-Level MT-Safe
.TE
.SH SEE ALSO
-\fBlibpicl\fR(3PICL), \fBpicl_get_propval\fR(3PICL),
-\fBpicl_get_propval_by_name\fR(3PICL), \fBattributes\fR(5)
+.BR libpicl (3PICL),
+.BR picl_get_propval (3PICL),
+.BR picl_get_propval_by_name (3PICL),
+.BR attributes (7)
diff --git a/usr/src/man/man3picl/picl_get_propinfo_by_name.3picl b/usr/src/man/man3picl/picl_get_propinfo_by_name.3picl
index 21cee5476c..49af47ba50 100644
--- a/usr/src/man/man3picl/picl_get_propinfo_by_name.3picl
+++ b/usr/src/man/man3picl/picl_get_propinfo_by_name.3picl
@@ -124,7 +124,7 @@ General system failure
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -140,5 +140,6 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBpicl_get_propinfo\fR(3PICL), \fBpicl_get_prop_by_name\fR(3PICL),
-\fBattributes\fR(5)
+.BR picl_get_prop_by_name (3PICL),
+.BR picl_get_propinfo (3PICL),
+.BR attributes (7)
diff --git a/usr/src/man/man3picl/picl_get_propval.3picl b/usr/src/man/man3picl/picl_get_propval.3picl
index 1b8d63d1bf..27c5f061ef 100644
--- a/usr/src/man/man3picl/picl_get_propval.3picl
+++ b/usr/src/man/man3picl/picl_get_propval.3picl
@@ -157,7 +157,7 @@ General system failure
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -173,4 +173,6 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBlibpicl\fR(3PICL), \fBpicl_get_propinfo\fR(3PICL), \fBattributes\fR(5)
+.BR libpicl (3PICL),
+.BR picl_get_propinfo (3PICL),
+.BR attributes (7)
diff --git a/usr/src/man/man3picl/picl_get_root.3picl b/usr/src/man/man3picl/picl_get_root.3picl
index 5fd965341a..18f9500e15 100644
--- a/usr/src/man/man3picl/picl_get_root.3picl
+++ b/usr/src/man/man3picl/picl_get_root.3picl
@@ -56,7 +56,7 @@ General system failure
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -72,4 +72,6 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBpicl_initialize\fR(3PICL), \fBpicl_shutdown\fR(3PICL), \fBattributes\fR(5)
+.BR picl_initialize (3PICL),
+.BR picl_shutdown (3PICL),
+.BR attributes (7)
diff --git a/usr/src/man/man3picl/picl_initialize.3picl b/usr/src/man/man3picl/picl_initialize.3picl
index 4d28420bba..c106e8ed9d 100644
--- a/usr/src/man/man3picl/picl_initialize.3picl
+++ b/usr/src/man/man3picl/picl_initialize.3picl
@@ -56,7 +56,7 @@ Daemon not responding
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -72,4 +72,5 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBpicl_shutdown\fR(3PICL), \fBattributes\fR(5)
+.BR picl_shutdown (3PICL),
+.BR attributes (7)
diff --git a/usr/src/man/man3picl/picl_set_propval.3picl b/usr/src/man/man3picl/picl_set_propval.3picl
index 5e0a125225..ffd43008ec 100644
--- a/usr/src/man/man3picl/picl_set_propval.3picl
+++ b/usr/src/man/man3picl/picl_set_propval.3picl
@@ -148,7 +148,7 @@ General system failure
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -164,4 +164,4 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBattributes\fR(5)
+.BR attributes (7)
diff --git a/usr/src/man/man3picl/picl_shutdown.3picl b/usr/src/man/man3picl/picl_shutdown.3picl
index d8c19b5ed5..ff4828662f 100644
--- a/usr/src/man/man3picl/picl_shutdown.3picl
+++ b/usr/src/man/man3picl/picl_shutdown.3picl
@@ -46,7 +46,7 @@ General system failure
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -62,4 +62,5 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBpicl_initialize\fR(3PICL), \fBattributes\fR(5)
+.BR picl_initialize (3PICL),
+.BR attributes (7)
diff --git a/usr/src/man/man3picl/picl_strerror.3picl b/usr/src/man/man3picl/picl_strerror.3picl
index 274a35c443..cbeff8b570 100644
--- a/usr/src/man/man3picl/picl_strerror.3picl
+++ b/usr/src/man/man3picl/picl_strerror.3picl
@@ -29,7 +29,7 @@ out-of-range.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -45,4 +45,5 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBlibpicl\fR(3PICL), \fBattributes\fR(5)
+.BR libpicl (3PICL),
+.BR attributes (7)
diff --git a/usr/src/man/man3picl/picl_wait.3picl b/usr/src/man/man3picl/picl_wait.3picl
index 69912a2efe..d2aa364239 100644
--- a/usr/src/man/man3picl/picl_wait.3picl
+++ b/usr/src/man/man3picl/picl_wait.3picl
@@ -66,7 +66,7 @@ General system failure
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -82,4 +82,4 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBattributes\fR(5)
+.BR attributes (7)
diff --git a/usr/src/man/man3picl/picl_walk_tree_by_class.3picl b/usr/src/man/man3picl/picl_walk_tree_by_class.3picl
index 745fcbe55d..dae55de810 100644
--- a/usr/src/man/man3picl/picl_walk_tree_by_class.3picl
+++ b/usr/src/man/man3picl/picl_walk_tree_by_class.3picl
@@ -106,7 +106,7 @@ General system failure
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -122,4 +122,5 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBpicl_get_propval_by_name\fR(3PICL), \fBattributes\fR(5)
+.BR picl_get_propval_by_name (3PICL),
+.BR attributes (7)
diff --git a/usr/src/man/man3picltree/libpicltree.3picltree b/usr/src/man/man3picltree/libpicltree.3picltree
index 5d8ca4c96b..5b1f588129 100644
--- a/usr/src/man/man3picltree/libpicltree.3picltree
+++ b/usr/src/man/man3picltree/libpicltree.3picltree
@@ -164,7 +164,7 @@ registration.
The plug-in modules may use the \fBpicld_log\fR(3PICLTREE) function to log
their messages to the system log file.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -178,5 +178,8 @@ MT-Level MT-Safe
.TE
.SH SEE ALSO
-\fBlibpicl\fR(3PICL), \fBlibpicltree\fR(3LIB), \fBpicld_log\fR(3PICLTREE),
-\fBpicld_plugin_register\fR(3PICLTREE), \fBattributes\fR(5)
+.BR libpicltree (3LIB),
+.BR libpicl (3PICL),
+.BR picld_log (3PICLTREE),
+.BR picld_plugin_register (3PICLTREE),
+.BR attributes (7)
diff --git a/usr/src/man/man3picltree/picld_log.3picltree b/usr/src/man/man3picltree/picld_log.3picltree
index 04bd330b55..dec86ce6da 100644
--- a/usr/src/man/man3picltree/picld_log.3picltree
+++ b/usr/src/man/man3picltree/picld_log.3picltree
@@ -33,7 +33,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -49,4 +49,5 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBsyslog\fR(3C), \fBattributes\fR(5)
+.BR syslog (3C),
+.BR attributes (7)
diff --git a/usr/src/man/man3picltree/picld_plugin_register.3picltree b/usr/src/man/man3picltree/picld_plugin_register.3picltree
index c86c1eff48..142385cabb 100644
--- a/usr/src/man/man3picltree/picld_plugin_register.3picltree
+++ b/usr/src/man/man3picltree/picld_plugin_register.3picltree
@@ -88,7 +88,7 @@ General system failure
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -106,4 +106,5 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBlibpicltree\fR(3PICLTREE), \fBattributes\fR(5)
+.BR libpicltree (3PICLTREE),
+.BR attributes (7)
diff --git a/usr/src/man/man3picltree/ptree_add_node.3picltree b/usr/src/man/man3picltree/ptree_add_node.3picltree
index 0c373af0e2..df08e7c2c1 100644
--- a/usr/src/man/man3picltree/ptree_add_node.3picltree
+++ b/usr/src/man/man3picltree/ptree_add_node.3picltree
@@ -100,7 +100,7 @@ General system failure
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -118,4 +118,4 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBattributes\fR(5)
+.BR attributes (7)
diff --git a/usr/src/man/man3picltree/ptree_add_prop.3picltree b/usr/src/man/man3picltree/ptree_add_prop.3picltree
index 6e712f65e1..910cb76b46 100644
--- a/usr/src/man/man3picltree/ptree_add_prop.3picltree
+++ b/usr/src/man/man3picltree/ptree_add_prop.3picltree
@@ -100,7 +100,7 @@ General system failure
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -118,4 +118,5 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBptree_create_prop\fR(3PICLTREE), \fBattributes\fR(5)
+.BR ptree_create_prop (3PICLTREE),
+.BR attributes (7)
diff --git a/usr/src/man/man3picltree/ptree_create_and_add_node.3picltree b/usr/src/man/man3picltree/ptree_create_and_add_node.3picltree
index b382c62fa0..0b6270ebb2 100644
--- a/usr/src/man/man3picltree/ptree_create_and_add_node.3picltree
+++ b/usr/src/man/man3picltree/ptree_create_and_add_node.3picltree
@@ -112,7 +112,7 @@ General system failure
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -130,5 +130,6 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBptree_create_node\fR(3PICLTREE), \fBptree_add_node\fR(3PICLTREE),
-\fBattributes\fR(5)
+.BR ptree_add_node (3PICLTREE),
+.BR ptree_create_node (3PICLTREE),
+.BR attributes (7)
diff --git a/usr/src/man/man3picltree/ptree_create_and_add_prop.3picltree b/usr/src/man/man3picltree/ptree_create_and_add_prop.3picltree
index 0df05d880e..852fe5f565 100644
--- a/usr/src/man/man3picltree/ptree_create_and_add_prop.3picltree
+++ b/usr/src/man/man3picltree/ptree_create_and_add_prop.3picltree
@@ -131,7 +131,7 @@ General system failure
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -149,5 +149,6 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBptree_create_prop\fR(3PICLTREE), \fBptree_add_prop\fR(3PICLTREE),
-\fBattributes\fR(5)
+.BR ptree_add_prop (3PICLTREE),
+.BR ptree_create_prop (3PICLTREE),
+.BR attributes (7)
diff --git a/usr/src/man/man3picltree/ptree_create_node.3picltree b/usr/src/man/man3picltree/ptree_create_node.3picltree
index e043d80084..1ba7d5b43b 100644
--- a/usr/src/man/man3picltree/ptree_create_node.3picltree
+++ b/usr/src/man/man3picltree/ptree_create_node.3picltree
@@ -132,7 +132,7 @@ General system failure
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -150,4 +150,5 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBptree_add_node\fR(3PICLTREE), \fBattributes\fR(5)
+.BR ptree_add_node (3PICLTREE),
+.BR attributes (7)
diff --git a/usr/src/man/man3picltree/ptree_create_prop.3picltree b/usr/src/man/man3picltree/ptree_create_prop.3picltree
index e2dbf5bc1b..a9202d5eb5 100644
--- a/usr/src/man/man3picltree/ptree_create_prop.3picltree
+++ b/usr/src/man/man3picltree/ptree_create_prop.3picltree
@@ -134,7 +134,7 @@ General system failure
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -152,5 +152,6 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBlibpicltree\fR(3PICLTREE), \fBptree_add_prop\fR(3PICLTREE),
-\fBattributes\fR(5)
+.BR libpicltree (3PICLTREE),
+.BR ptree_add_prop (3PICLTREE),
+.BR attributes (7)
diff --git a/usr/src/man/man3picltree/ptree_create_table.3picltree b/usr/src/man/man3picltree/ptree_create_table.3picltree
index 30531f6bab..08e297cf98 100644
--- a/usr/src/man/man3picltree/ptree_create_table.3picltree
+++ b/usr/src/man/man3picltree/ptree_create_table.3picltree
@@ -104,7 +104,7 @@ General system failure
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -122,4 +122,4 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBattributes\fR(5)
+.BR attributes (7)
diff --git a/usr/src/man/man3picltree/ptree_find_node.3picltree b/usr/src/man/man3picltree/ptree_find_node.3picltree
index ca5fada067..0140c08fc5 100644
--- a/usr/src/man/man3picltree/ptree_find_node.3picltree
+++ b/usr/src/man/man3picltree/ptree_find_node.3picltree
@@ -85,7 +85,7 @@ General system failure
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -103,6 +103,8 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBptree_get_prop_by_name\fR(3PICLTREE), \fBptree_get_propinfo\fR(3PICLTREE),
-\fBptree_get_propval\fR(3PICLTREE), \fBptree_get_propval_by_name\fR(3PICLTREE),
-\fBattributes\fR(5)
+.BR ptree_get_prop_by_name (3PICLTREE),
+.BR ptree_get_propinfo (3PICLTREE),
+.BR ptree_get_propval (3PICLTREE),
+.BR ptree_get_propval_by_name (3PICLTREE),
+.BR attributes (7)
diff --git a/usr/src/man/man3picltree/ptree_get_first_prop.3picltree b/usr/src/man/man3picltree/ptree_get_first_prop.3picltree
index b97f29f438..01d8485260 100644
--- a/usr/src/man/man3picltree/ptree_get_first_prop.3picltree
+++ b/usr/src/man/man3picltree/ptree_get_first_prop.3picltree
@@ -103,7 +103,7 @@ General system failure
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -121,4 +121,5 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBptree_get_prop_by_name\fR(3PICLTREE), \fBattributes\fR(5)
+.BR ptree_get_prop_by_name (3PICLTREE),
+.BR attributes (7)
diff --git a/usr/src/man/man3picltree/ptree_get_frutree_parent.3picltree b/usr/src/man/man3picltree/ptree_get_frutree_parent.3picltree
index 9300c5b3c4..ed419dafdc 100644
--- a/usr/src/man/man3picltree/ptree_get_frutree_parent.3picltree
+++ b/usr/src/man/man3picltree/ptree_get_frutree_parent.3picltree
@@ -66,7 +66,7 @@ Stale handle
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -83,6 +83,8 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBptree_get_propinfo\fR(3PICLTREE), \fBptree_get_propval\fR(3PICLTREE),
-\fBptree_get_propval_by_name\fR(3PICLTREE),
-\fBptree_get_prop_by_name\fR(3PICLTREE), \fBattributes\fR(5)
+.BR ptree_get_prop_by_name (3PICLTREE),
+.BR ptree_get_propinfo (3PICLTREE),
+.BR ptree_get_propval (3PICLTREE),
+.BR ptree_get_propval_by_name (3PICLTREE),
+.BR attributes (7)
diff --git a/usr/src/man/man3picltree/ptree_get_next_by_row.3picltree b/usr/src/man/man3picltree/ptree_get_next_by_row.3picltree
index 60096553d2..d3f263ec42 100644
--- a/usr/src/man/man3picltree/ptree_get_next_by_row.3picltree
+++ b/usr/src/man/man3picltree/ptree_get_next_by_row.3picltree
@@ -98,7 +98,7 @@ General system failure
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -116,4 +116,5 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBptree_create_table\fR(3PICLTREE), \fBattributes\fR(5)
+.BR ptree_create_table (3PICLTREE),
+.BR attributes (7)
diff --git a/usr/src/man/man3picltree/ptree_get_node_by_path.3picltree b/usr/src/man/man3picltree/ptree_get_node_by_path.3picltree
index fecacb579c..cb61f48d0b 100644
--- a/usr/src/man/man3picltree/ptree_get_node_by_path.3picltree
+++ b/usr/src/man/man3picltree/ptree_get_node_by_path.3picltree
@@ -105,7 +105,7 @@ General system failure
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -122,4 +122,5 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBptree_get_propval_by_name\fR(3PICLTREE), \fBattributes\fR(5)
+.BR ptree_get_propval_by_name (3PICLTREE),
+.BR attributes (7)
diff --git a/usr/src/man/man3picltree/ptree_get_prop_by_name.3picltree b/usr/src/man/man3picltree/ptree_get_prop_by_name.3picltree
index 44b76dd60b..4c743f5e4f 100644
--- a/usr/src/man/man3picltree/ptree_get_prop_by_name.3picltree
+++ b/usr/src/man/man3picltree/ptree_get_prop_by_name.3picltree
@@ -99,7 +99,7 @@ General system failure
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -117,5 +117,6 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBptree_get_first_prop\fR(3PICLTREE),
-\fBptree_get_propval_by_name\fR(3PICLTREE), \fBattributes\fR(5)
+.BR ptree_get_first_prop (3PICLTREE),
+.BR ptree_get_propval_by_name (3PICLTREE),
+.BR attributes (7)
diff --git a/usr/src/man/man3picltree/ptree_get_propinfo.3picltree b/usr/src/man/man3picltree/ptree_get_propinfo.3picltree
index b2e89ac3a1..a8c6df3449 100644
--- a/usr/src/man/man3picltree/ptree_get_propinfo.3picltree
+++ b/usr/src/man/man3picltree/ptree_get_propinfo.3picltree
@@ -75,7 +75,7 @@ General system failure
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -93,5 +93,6 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBlibpicltree\fR(3PICLTREE), \fBptree_create_prop\fR(3PICLTREE),
-\fBattributes\fR(5)
+.BR libpicltree (3PICLTREE),
+.BR ptree_create_prop (3PICLTREE),
+.BR attributes (7)
diff --git a/usr/src/man/man3picltree/ptree_get_propinfo_by_name.3picltree b/usr/src/man/man3picltree/ptree_get_propinfo_by_name.3picltree
index fdbd4e0875..ca5afd9c22 100644
--- a/usr/src/man/man3picltree/ptree_get_propinfo_by_name.3picltree
+++ b/usr/src/man/man3picltree/ptree_get_propinfo_by_name.3picltree
@@ -88,7 +88,7 @@ General system failure
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -106,5 +106,6 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBpicl_get_propinfo\fR(3PICL), \fBpicl_get_prop_by_name\fR(3PICL),
-\fBattributes\fR(5)
+.BR picl_get_prop_by_name (3PICL),
+.BR picl_get_propinfo (3PICL),
+.BR attributes (7)
diff --git a/usr/src/man/man3picltree/ptree_get_propval.3picltree b/usr/src/man/man3picltree/ptree_get_propval.3picltree
index c9a06913bd..d056c3699f 100644
--- a/usr/src/man/man3picltree/ptree_get_propval.3picltree
+++ b/usr/src/man/man3picltree/ptree_get_propval.3picltree
@@ -113,7 +113,7 @@ General system failure
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -128,4 +128,5 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBptree_update_propval\fR(3PICLTREE), \fBattributes\fR(5)
+.BR ptree_update_propval (3PICLTREE),
+.BR attributes (7)
diff --git a/usr/src/man/man3picltree/ptree_get_root.3picltree b/usr/src/man/man3picltree/ptree_get_root.3picltree
index 92da09066c..1e69923691 100644
--- a/usr/src/man/man3picltree/ptree_get_root.3picltree
+++ b/usr/src/man/man3picltree/ptree_get_root.3picltree
@@ -47,7 +47,7 @@ General system failure
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -65,5 +65,6 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBlibpicltree\fR(3PICLTREE), \fBptree_create_node\fR(3PICLTREE),
-\fBattributes\fR(5)
+.BR libpicltree (3PICLTREE),
+.BR ptree_create_node (3PICLTREE),
+.BR attributes (7)
diff --git a/usr/src/man/man3picltree/ptree_init_propinfo.3picltree b/usr/src/man/man3picltree/ptree_init_propinfo.3picltree
index 2d022019ea..37cec7c141 100644
--- a/usr/src/man/man3picltree/ptree_init_propinfo.3picltree
+++ b/usr/src/man/man3picltree/ptree_init_propinfo.3picltree
@@ -69,7 +69,7 @@ General system failure
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -87,4 +87,5 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBptree_get_propinfo\fR(3PICLTREE), \fBattributes\fR(5)
+.BR ptree_get_propinfo (3PICLTREE),
+.BR attributes (7)
diff --git a/usr/src/man/man3picltree/ptree_post_event.3picltree b/usr/src/man/man3picltree/ptree_post_event.3picltree
index 4dfcaf371a..1b53d34faf 100644
--- a/usr/src/man/man3picltree/ptree_post_event.3picltree
+++ b/usr/src/man/man3picltree/ptree_post_event.3picltree
@@ -74,7 +74,7 @@ General system failure
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -92,5 +92,6 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBptree_register_handler\fR(3PICLTREE),
-\fBptree_unregister_handler\fR(3PICLTREE), \fBattributes\fR(5)
+.BR ptree_register_handler (3PICLTREE),
+.BR ptree_unregister_handler (3PICLTREE),
+.BR attributes (7)
diff --git a/usr/src/man/man3picltree/ptree_register_handler.3picltree b/usr/src/man/man3picltree/ptree_register_handler.3picltree
index 2ba9909385..e2d53841ca 100644
--- a/usr/src/man/man3picltree/ptree_register_handler.3picltree
+++ b/usr/src/man/man3picltree/ptree_register_handler.3picltree
@@ -84,7 +84,7 @@ General system failure
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -102,4 +102,5 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBptree_unregister_handler\fR(3PICLTREE), \fBattributes\fR(5)
+.BR ptree_unregister_handler (3PICLTREE),
+.BR attributes (7)
diff --git a/usr/src/man/man3picltree/ptree_unregister_handler.3picltree b/usr/src/man/man3picltree/ptree_unregister_handler.3picltree
index fb8df098b3..4d914fefe8 100644
--- a/usr/src/man/man3picltree/ptree_unregister_handler.3picltree
+++ b/usr/src/man/man3picltree/ptree_unregister_handler.3picltree
@@ -42,7 +42,7 @@ This function does not return a value.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -58,4 +58,5 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBptree_register_handler\fR(3PICLTREE), \fBattributes\fR(5)
+.BR ptree_register_handler (3PICLTREE),
+.BR attributes (7)
diff --git a/usr/src/man/man3picltree/ptree_update_propval.3picltree b/usr/src/man/man3picltree/ptree_update_propval.3picltree
index 7179090651..ec3705d757 100644
--- a/usr/src/man/man3picltree/ptree_update_propval.3picltree
+++ b/usr/src/man/man3picltree/ptree_update_propval.3picltree
@@ -108,7 +108,7 @@ Property not found
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -126,4 +126,5 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBptree_get_propval\fR(3PICLTREE), \fBattributes\fR(5)
+.BR ptree_get_propval (3PICLTREE),
+.BR attributes (7)
diff --git a/usr/src/man/man3picltree/ptree_walk_tree_by_class.3picltree b/usr/src/man/man3picltree/ptree_walk_tree_by_class.3picltree
index 7789c2791d..63143b1d39 100644
--- a/usr/src/man/man3picltree/ptree_walk_tree_by_class.3picltree
+++ b/usr/src/man/man3picltree/ptree_walk_tree_by_class.3picltree
@@ -78,7 +78,7 @@ General system failure
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -96,4 +96,5 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBptree_get_propval_by_name\fR(3PICLTREE), \fBattributes\fR(5)
+.BR ptree_get_propval_by_name (3PICLTREE),
+.BR attributes (7)
diff --git a/usr/src/man/man3pool/pool_associate.3pool b/usr/src/man/man3pool/pool_associate.3pool
index 3e33318a4d..660a892d52 100644
--- a/usr/src/man/man3pool/pool_associate.3pool
+++ b/usr/src/man/man3pool/pool_associate.3pool
@@ -272,7 +272,7 @@ Pool names are unique across pools in a given configuration file. It is an
error to attempt to create a pool with a name that is currently used by another
pool within the same configuration.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -290,4 +290,6 @@ MT-Level Safe
.TE
.SH SEE ALSO
-\fBlibpool\fR(3LIB), \fBpool_error\fR(3POOL), \fBattributes\fR(5)
+.BR libpool (3LIB),
+.BR pool_error (3POOL),
+.BR attributes (7)
diff --git a/usr/src/man/man3pool/pool_component_info.3pool b/usr/src/man/man3pool/pool_component_info.3pool
index 92b6986f9a..63fe6d329f 100644
--- a/usr/src/man/man3pool/pool_component_info.3pool
+++ b/usr/src/man/man3pool/pool_component_info.3pool
@@ -90,7 +90,7 @@ The supplied configuration's status is not \fBPOF_VALID\fR.
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -108,4 +108,6 @@ MT-Level Safe
.TE
.SH SEE ALSO
-\fBlibpool\fR(3LIB), \fBpool_error\fR(3POOL), \fBattributes\fR(5)
+.BR libpool (3LIB),
+.BR pool_error (3POOL),
+.BR attributes (7)
diff --git a/usr/src/man/man3pool/pool_component_to_elem.3pool b/usr/src/man/man3pool/pool_component_to_elem.3pool
index 39bb56f8a1..b5954c3655 100644
--- a/usr/src/man/man3pool/pool_component_to_elem.3pool
+++ b/usr/src/man/man3pool/pool_component_to_elem.3pool
@@ -63,7 +63,7 @@ The supplied configuration's status is not \fBPOF_VALID\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -83,4 +83,6 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibpool\fR(3LIB), \fBpool_error\fR(3POOL), \fBattributes\fR(5)
+.BR libpool (3LIB),
+.BR pool_error (3POOL),
+.BR attributes (7)
diff --git a/usr/src/man/man3pool/pool_conf_alloc.3pool b/usr/src/man/man3pool/pool_conf_alloc.3pool
index 011584af79..6cea1f77fc 100644
--- a/usr/src/man/man3pool/pool_conf_alloc.3pool
+++ b/usr/src/man/man3pool/pool_conf_alloc.3pool
@@ -646,7 +646,7 @@ if (pool_conf_open(pool_conf, input_location,
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -666,4 +666,6 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibpool\fR(3LIB), \fBpool_error\fR(3POOL), \fBattributes\fR(5)
+.BR libpool (3LIB),
+.BR pool_error (3POOL),
+.BR attributes (7)
diff --git a/usr/src/man/man3pool/pool_dynamic_location.3pool b/usr/src/man/man3pool/pool_dynamic_location.3pool
index 996f06e078..a746c6b273 100644
--- a/usr/src/man/man3pool/pool_dynamic_location.3pool
+++ b/usr/src/man/man3pool/pool_dynamic_location.3pool
@@ -173,7 +173,7 @@ const char *location = pool_dynamic_location();
.in -2
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -191,4 +191,6 @@ MT-Level Safe
.TE
.SH SEE ALSO
-\fBlibpool\fR(3LIB), \fBpool_error\fR(3POOL), \fBattributes\fR(5)
+.BR libpool (3LIB),
+.BR pool_error (3POOL),
+.BR attributes (7)
diff --git a/usr/src/man/man3pool/pool_error.3pool b/usr/src/man/man3pool/pool_error.3pool
index 783c6b3c4e..10f17da522 100644
--- a/usr/src/man/man3pool/pool_error.3pool
+++ b/usr/src/man/man3pool/pool_error.3pool
@@ -144,7 +144,7 @@ The specified error value is not defined by the pools error facility.
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -162,4 +162,6 @@ MT-Level Safe
.TE
.SH SEE ALSO
-\fBerrno\fR(3C), \fBlibpool\fR(3LIB), \fBattributes\fR(5)
+.BR errno (3C),
+.BR libpool (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3pool/pool_get_binding.3pool b/usr/src/man/man3pool/pool_get_binding.3pool
index e0608a855e..f7853e7f4d 100644
--- a/usr/src/man/man3pool/pool_get_binding.3pool
+++ b/usr/src/man/man3pool/pool_get_binding.3pool
@@ -216,7 +216,7 @@ if (pool_set_binding("target", P_PID, pid) == PO_FAIL) \{
.in -2
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -234,4 +234,6 @@ MT-Level Safe
.TE
.SH SEE ALSO
-\fBlibpool\fR(3LIB), \fBpool_error\fR(3POOL), \fBattributes\fR(5)
+.BR libpool (3LIB),
+.BR pool_error (3POOL),
+.BR attributes (7)
diff --git a/usr/src/man/man3pool/pool_get_pool.3pool b/usr/src/man/man3pool/pool_get_pool.3pool
index cc5665f367..b485a5cf98 100644
--- a/usr/src/man/man3pool/pool_get_pool.3pool
+++ b/usr/src/man/man3pool/pool_get_pool.3pool
@@ -170,7 +170,7 @@ if ((pool = pool_get_pool(conf, "foo")) == NULL) {
.in -2
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -188,4 +188,6 @@ MT-Level Safe
.TE
.SH SEE ALSO
-\fBlibpool\fR(3LIB), \fBpool_error\fR(3POOL), \fBattributes\fR(5)
+.BR libpool (3LIB),
+.BR pool_error (3POOL),
+.BR attributes (7)
diff --git a/usr/src/man/man3pool/pool_get_property.3pool b/usr/src/man/man3pool/pool_get_property.3pool
index 39ac2fb084..ea8d1a22f8 100644
--- a/usr/src/man/man3pool/pool_get_property.3pool
+++ b/usr/src/man/man3pool/pool_get_property.3pool
@@ -246,7 +246,7 @@ A system error has occurred. Check the system error code for more details.
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -264,4 +264,6 @@ MT-Level Safe
.TE
.SH SEE ALSO
-\fBlibpool\fR(3LIB), \fBpool_error\fR(3POOL), \fBattributes\fR(5)
+.BR libpool (3LIB),
+.BR pool_error (3POOL),
+.BR attributes (7)
diff --git a/usr/src/man/man3pool/pool_resource_create.3pool b/usr/src/man/man3pool/pool_resource_create.3pool
index 08fb6283bc..bdd42070bd 100644
--- a/usr/src/man/man3pool/pool_resource_create.3pool
+++ b/usr/src/man/man3pool/pool_resource_create.3pool
@@ -306,7 +306,7 @@ if ((resource = pool_resource_create(conf, "pset",
.in -2
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -324,4 +324,6 @@ MT-Level Safe
.TE
.SH SEE ALSO
-\fBlibpool\fR(3LIB), \fBpool_error\fR(3POOL), \fBattributes\fR(5)
+.BR libpool (3LIB),
+.BR pool_error (3POOL),
+.BR attributes (7)
diff --git a/usr/src/man/man3pool/pool_value_alloc.3pool b/usr/src/man/man3pool/pool_value_alloc.3pool
index 8fba8123f3..d2516f46ee 100644
--- a/usr/src/man/man3pool/pool_value_alloc.3pool
+++ b/usr/src/man/man3pool/pool_value_alloc.3pool
@@ -221,7 +221,7 @@ A system error has occurred. Check the system error code for more details.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -241,4 +241,6 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibpool\fR(3LIB), \fBpool_error\fR(3POOL), \fBattributes\fR(5)
+.BR libpool (3LIB),
+.BR pool_error (3POOL),
+.BR attributes (7)
diff --git a/usr/src/man/man3pool/pool_walk_components.3pool b/usr/src/man/man3pool/pool_walk_components.3pool
index 27d8387aae..b2b3b8ae2e 100644
--- a/usr/src/man/man3pool/pool_walk_components.3pool
+++ b/usr/src/man/man3pool/pool_walk_components.3pool
@@ -92,7 +92,7 @@ A system error has occurred. Check the system error code for more details.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -112,4 +112,6 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibpool\fR(3LIB), \fBpool_error\fR(3POOL), \fBattributes\fR(5)
+.BR libpool (3LIB),
+.BR pool_error (3POOL),
+.BR attributes (7)
diff --git a/usr/src/man/man3proc/Lctlfd.3proc b/usr/src/man/man3proc/Lctlfd.3proc
index 0c1537d871..d4aeadd4ac 100644
--- a/usr/src/man/man3proc/Lctlfd.3proc
+++ b/usr/src/man/man3proc/Lctlfd.3proc
@@ -55,4 +55,4 @@ in
.Xr libproc 3LIB ,
.Xr Lfree 3PROC ,
.Xr Lgrab 3PROC ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/Lgrab.3proc b/usr/src/man/man3proc/Lgrab.3proc
index d5f840304d..2e40133d3a 100644
--- a/usr/src/man/man3proc/Lgrab.3proc
+++ b/usr/src/man/man3proc/Lgrab.3proc
@@ -114,4 +114,4 @@ for the list of possible errors.
.Xr libproc 3LIB ,
.Xr Lfree 3PROC ,
.Xr Lgrab_error 3PROC ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/Lpsinfo.3proc b/usr/src/man/man3proc/Lpsinfo.3proc
index 920c721112..d93120de50 100644
--- a/usr/src/man/man3proc/Lpsinfo.3proc
+++ b/usr/src/man/man3proc/Lpsinfo.3proc
@@ -34,7 +34,7 @@ information.
The
.Sy lwpsinfo_t
structure that is returned is defined in
-.Xr proc 4
+.Xr proc 5
and is valid until a subsequent call to
.Xr Lfree 3PROC .
.Sh RETURN VALUES
@@ -55,4 +55,4 @@ in
.Xr ps 1 ,
.Xr libproc 3LIB ,
.Xr Lfree 3PROC ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/Lstatus.3proc b/usr/src/man/man3proc/Lstatus.3proc
index 7d7456281a..ffaacbb753 100644
--- a/usr/src/man/man3proc/Lstatus.3proc
+++ b/usr/src/man/man3proc/Lstatus.3proc
@@ -32,7 +32,7 @@ function returns the status information about the thread handle
The
.Sy lwpstatus_t
structure is defined in
-.Xr proc 4
+.Xr proc 5
and contains information about the thread including its flags, the size
of its stack, its user and system time, and more.
.Pp
@@ -57,4 +57,4 @@ in
.Sh SEE ALSO
.Xr libproc 3LIB ,
.Xr Lfree 3PROC ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/Paddr_to_ctf.3proc b/usr/src/man/man3proc/Paddr_to_ctf.3proc
index 0364940975..9c8c862991 100644
--- a/usr/src/man/man3proc/Paddr_to_ctf.3proc
+++ b/usr/src/man/man3proc/Paddr_to_ctf.3proc
@@ -116,4 +116,4 @@ in
.Xr libproc 3LIB .
.Sh SEE ALSO
.Xr libproc 3LIB ,
-.Xr ctf 4
+.Xr ctf 5
diff --git a/usr/src/man/man3proc/Paddr_to_map.3proc b/usr/src/man/man3proc/Paddr_to_map.3proc
index f9fcd6bc80..974c739555 100644
--- a/usr/src/man/man3proc/Paddr_to_map.3proc
+++ b/usr/src/man/man3proc/Paddr_to_map.3proc
@@ -58,7 +58,7 @@ The
.Sy prmap_t
structure provides information such as the size, offset, and object of
the mapping and is defined in
-.Xr proc 4 .
+.Xr proc 5 .
.Pp
The pointer to the data returned by the library will only be valid for
as long as the handle
@@ -130,4 +130,4 @@ in
.Sh SEE ALSO
.Xr libproc 3LIB ,
.Xr Prelease 3PROC ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/Pasfd.3proc b/usr/src/man/man3proc/Pasfd.3proc
index 501d006de4..8c6e263be3 100644
--- a/usr/src/man/man3proc/Pasfd.3proc
+++ b/usr/src/man/man3proc/Pasfd.3proc
@@ -75,4 +75,4 @@ in
.Xr Pgrab_core 3PROC ,
.Xr Pgrab_file 3PROC ,
.Xr Prelease 3PROC ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/Pclearfault.3proc b/usr/src/man/man3proc/Pclearfault.3proc
index 744b43f566..d13cb5b8ac 100644
--- a/usr/src/man/man3proc/Pclearfault.3proc
+++ b/usr/src/man/man3proc/Pclearfault.3proc
@@ -37,7 +37,7 @@ due to a hardware exception, identifying a problem with the running process.
Hardware faults include things like executing illegal instructions, encountering
a breakpoint, and arithmetic exceptions.
Faults are discussed further in
-.Xr proc 4 .
+.Xr proc 5 .
.Pp
The
.Fn Pclearfault
@@ -79,7 +79,7 @@ and no faults are cleared.
For a full list of possible errors see the
.Sy DIAGNOSTICS
section in
-.Xr proc 4 .
+.Xr proc 5 .
.Sh INTERFACE STABILITY
.Sy Uncommitted
.Sh MT-LEVEL
@@ -89,4 +89,4 @@ in
.Xr libproc 3LIB .
.Sh SEE ALSO
.Xr libproc 3LIB ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/Pclearsig.3proc b/usr/src/man/man3proc/Pclearsig.3proc
index 116e23c391..81e9b397a4 100644
--- a/usr/src/man/man3proc/Pclearsig.3proc
+++ b/usr/src/man/man3proc/Pclearsig.3proc
@@ -74,7 +74,7 @@ and no faults are cleared.
For a full list of possible errors see the
.Sy DIAGNOSTICS
section in
-.Xr proc 4 .
+.Xr proc 5 .
.Sh INTERFACE STABILITY
.Sy Uncommitted
.Sh MT-LEVEL
@@ -85,4 +85,4 @@ in
.Sh SEE ALSO
.Xr signal.h 3HEAD ,
.Xr libproc 3LIB ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/Pcontent.3proc b/usr/src/man/man3proc/Pcontent.3proc
index 88d1708b6b..f97a2b7c6e 100644
--- a/usr/src/man/man3proc/Pcontent.3proc
+++ b/usr/src/man/man3proc/Pcontent.3proc
@@ -40,7 +40,7 @@ Handles that refer to ELF objects, obtained through
.Xr Pgrab_file 3PROC ,
will not have information such as a stack available.
The content of core files is controlled by
-.Xr coreadm 1M .
+.Xr coreadm 8 .
.Pp
The symbols that may be returned are listed in the
.Sy core_content_t
@@ -68,4 +68,4 @@ in
.Xr Pgrab 3PROC ,
.Xr Pgrab_core 3PROC ,
.Xr Pgrab_file 3PROC ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/Pcreate.3proc b/usr/src/man/man3proc/Pcreate.3proc
index 94552a1034..48e40d14e7 100644
--- a/usr/src/man/man3proc/Pcreate.3proc
+++ b/usr/src/man/man3proc/Pcreate.3proc
@@ -91,7 +91,7 @@ should be a
array of character strings whose entries are in the form of
.Em key=value .
For more on the process environment, see
-.Xr environ 5 .
+.Xr environ 7 .
.Pp
The
.Fn Pcreate_callback
diff --git a/usr/src/man/man3proc/Pcreate_agent.3proc b/usr/src/man/man3proc/Pcreate_agent.3proc
index d492b38d51..e4617cd4c9 100644
--- a/usr/src/man/man3proc/Pcreate_agent.3proc
+++ b/usr/src/man/man3proc/Pcreate_agent.3proc
@@ -33,7 +33,7 @@ function creates the agent LWP in the process represented by the handle
The agent LWP is used as a means to force system calls to be invoked on
the controlled process.
For more information on the agent LWP, see
-.Xr proc 4 .
+.Xr proc 5 .
.Pp
The agent LWP cannot be created for process handles corresponding to
core files, zombie processes, processes that have yet to run, and ELF
@@ -83,4 +83,4 @@ in
.Sh SEE ALSO
.Xr libproc 3LIB ,
.Xr Pdestroy_agent 3PROC ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/Pcred.3proc b/usr/src/man/man3proc/Pcred.3proc
index a71ea1c16e..3df7f5148c 100644
--- a/usr/src/man/man3proc/Pcred.3proc
+++ b/usr/src/man/man3proc/Pcred.3proc
@@ -38,7 +38,7 @@ The credentials are read into the buffer pointed to by
The
.Sy prcred_t
type is defined in
-.Xr proc 4 .
+.Xr proc 5 .
It contains information about the current effective, saved, and real
user and group IDs.
It also allows for supplemental groups to be obtained.
@@ -80,4 +80,4 @@ in
.Sh SEE ALSO
.Xr libproc 3LIB ,
.Xr Psetcred 3PROC ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/Pctlfd.3proc b/usr/src/man/man3proc/Pctlfd.3proc
index 7a51968201..75f3bb9ec4 100644
--- a/usr/src/man/man3proc/Pctlfd.3proc
+++ b/usr/src/man/man3proc/Pctlfd.3proc
@@ -70,4 +70,4 @@ in
.Xr Pgrab_file 3PROC ,
.Xr Prelease 3PROC ,
.Xr Preopen 3PROC ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/Pdelbkpt.3proc b/usr/src/man/man3proc/Pdelbkpt.3proc
index 15e04a8f08..4f27aa6e69 100644
--- a/usr/src/man/man3proc/Pdelbkpt.3proc
+++ b/usr/src/man/man3proc/Pdelbkpt.3proc
@@ -68,7 +68,7 @@ is set to indicate the error.
For a full list of possible errors see the
.Sy DIAGNOSTICS
section in
-.Xr proc 4 .
+.Xr proc 5 .
.Pp
The
.Fn Pdelbkpt
@@ -93,4 +93,4 @@ in
.Xr Pgrab_core 3PROC ,
.Xr Pgrab_file 3PROC ,
.Xr Psetbkpt 3PROC ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/Pdelwapt.3proc b/usr/src/man/man3proc/Pdelwapt.3proc
index 38bd63cb24..8f7ce98920 100644
--- a/usr/src/man/man3proc/Pdelwapt.3proc
+++ b/usr/src/man/man3proc/Pdelwapt.3proc
@@ -61,7 +61,7 @@ is set to indicate the error.
For a full list of possible errors see the
.Sy DIAGNOSTICS
section in
-.Xr proc 4 .
+.Xr proc 5 .
.Pp
The
.Fn Pdelwapt
@@ -86,4 +86,4 @@ in
.Xr Pgrab_core 3PROC ,
.Xr Pgrab_file 3PROC ,
.Xr Psetwapt 3PROC ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/Pfault.3proc b/usr/src/man/man3proc/Pfault.3proc
index cb106a4d19..f3a6e1232e 100644
--- a/usr/src/man/man3proc/Pfault.3proc
+++ b/usr/src/man/man3proc/Pfault.3proc
@@ -40,7 +40,7 @@ A hardware fault may occur because an illegal instruction was executed,
a breakpoint or watchpoint was encountered, or an arithmetic exception occurred,
among others.
The full list of faults is available in both
-.Xr proc 4
+.Xr proc 5
and
.In sys/fault.h .
.Pp
@@ -105,4 +105,4 @@ in
.Xr libproc 3LIB .
.Sh SEE ALSO
.Xr libproc 3LIB ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/Pgcore.3proc b/usr/src/man/man3proc/Pgcore.3proc
index 732331b7ff..0cd38cde69 100644
--- a/usr/src/man/man3proc/Pgcore.3proc
+++ b/usr/src/man/man3proc/Pgcore.3proc
@@ -46,7 +46,7 @@ wide variety of tools and libraries including
.Xr pstack 1 ,
and more.
For details on the core file format, see
-.Xr core 4 .
+.Xr core 5 .
.Pp
.Fn Pfgcore
writes the core to the file represented by the open descriptor
@@ -107,8 +107,8 @@ See
in
.Xr libproc 3LIB .
.Sh SEE ALSO
-.Xr coreadm 1M ,
.Xr libproc 3LIB ,
.Xr Pstop 3PROC ,
-.Xr core 4 ,
-.Xr proc 4
+.Xr core 5 ,
+.Xr proc 5 ,
+.Xr coreadm 8
diff --git a/usr/src/man/man3proc/Pgetareg.3proc b/usr/src/man/man3proc/Pgetareg.3proc
index e141b878fb..f2ad1f3153 100644
--- a/usr/src/man/man3proc/Pgetareg.3proc
+++ b/usr/src/man/man3proc/Pgetareg.3proc
@@ -59,7 +59,7 @@ to by
The getting and setting of registers of the process operates on the
representative thread (LWP).
For more information on how the representative is chosen, see
-.Xr proc 4 .
+.Xr proc 5 .
.Pp
To change the registers of a specific thread, use the
.Fn Lgetareg
@@ -180,4 +180,4 @@ in
.Xr Lgrab 3PROC ,
.Xr Pgrab_file 3PROC ,
.Xr Pstop 3PROC ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/Pgetauxval.3proc b/usr/src/man/man3proc/Pgetauxval.3proc
index 5a4abadf0a..6185203893 100644
--- a/usr/src/man/man3proc/Pgetauxval.3proc
+++ b/usr/src/man/man3proc/Pgetauxval.3proc
@@ -59,4 +59,4 @@ in
.Sh SEE ALSO
.Xr libproc 3LIB ,
.Xr Pgetauxvec 3PROC ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/Pgetauxvec.3proc b/usr/src/man/man3proc/Pgetauxvec.3proc
index 58801051a0..de855d5abb 100644
--- a/usr/src/man/man3proc/Pgetauxvec.3proc
+++ b/usr/src/man/man3proc/Pgetauxvec.3proc
@@ -56,4 +56,4 @@ in
.Sh SEE ALSO
.Xr libproc 3LIB ,
.Xr Pgetauxval 3PROC ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/Pgetenv.3proc b/usr/src/man/man3proc/Pgetenv.3proc
index b72eea536c..8b3f176560 100644
--- a/usr/src/man/man3proc/Pgetenv.3proc
+++ b/usr/src/man/man3proc/Pgetenv.3proc
@@ -60,4 +60,4 @@ in
.Sh SEE ALSO
.Xr libproc 3LIB ,
.Xr Penv_iter 3PROC ,
-.Xr environ 5
+.Xr environ 7
diff --git a/usr/src/man/man3proc/Pgrab.3proc b/usr/src/man/man3proc/Pgrab.3proc
index 67109a85e2..2eae7f96f5 100644
--- a/usr/src/man/man3proc/Pgrab.3proc
+++ b/usr/src/man/man3proc/Pgrab.3proc
@@ -156,7 +156,7 @@ For more details on the security and programming considerations, please see the
section
.Sy PROGRAMMING NOTES
in
-.Xr proc 4 .
+.Xr proc 5 .
.Sh RETURN VALUES
Upon successful completion, the
.Fn Pgrab
diff --git a/usr/src/man/man3proc/Pgrab_core.3proc b/usr/src/man/man3proc/Pgrab_core.3proc
index 9cb01133dd..d83443601e 100644
--- a/usr/src/man/man3proc/Pgrab_core.3proc
+++ b/usr/src/man/man3proc/Pgrab_core.3proc
@@ -46,7 +46,7 @@ however, all of the functions that iterate or query state will work.
These functions work on all illumos core files and the core files of some other
operating systems.
See both
-.Xr core 4
+.Xr core 5
and the
.Em Core Files
section of
@@ -195,4 +195,4 @@ indicates the system failure.
.Xr Pfree 3PROC ,
.Xr Pgrab_error 3PROC ,
.Xr Prelease 3PROC ,
-.Xr core 4
+.Xr core 5
diff --git a/usr/src/man/man3proc/Pisprocdir.3proc b/usr/src/man/man3proc/Pisprocdir.3proc
index db0cfeb4fb..a3a02722a7 100644
--- a/usr/src/man/man3proc/Pisprocdir.3proc
+++ b/usr/src/man/man3proc/Pisprocdir.3proc
@@ -51,5 +51,5 @@ in
.Xr libproc 3LIB .
.Sh SEE ALSO
.Xr libproc 3LIB ,
-.Xr proc 4 ,
-.Xr lofs 7FS
+.Xr lofs 4FS ,
+.Xr proc 5
diff --git a/usr/src/man/man3proc/Pldt.3proc b/usr/src/man/man3proc/Pldt.3proc
index e702875c48..b8351a8527 100644
--- a/usr/src/man/man3proc/Pldt.3proc
+++ b/usr/src/man/man3proc/Pldt.3proc
@@ -69,7 +69,7 @@ For example, callers could allocate space as:
For more information on the LDT and the
.Sy struct ssd ,
see
-.Xr proc 4 .
+.Xr proc 5 .
.Pp
The
.Fn proc_get_ldt
@@ -106,7 +106,7 @@ to indicate the error that occurred.
For a full list of possible errors see the
.Sy DIAGNOSTICS
section in
-.Xr proc 4 .
+.Xr proc 5 .
.Pp
The
.Fn Pldt
@@ -133,4 +133,4 @@ in
.Xr libproc 3LIB .
.Sh SEE ALSO
.Xr libproc 3LIB ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/Plmid.3proc b/usr/src/man/man3proc/Plmid.3proc
index fb54231c1e..26be9acf88 100644
--- a/usr/src/man/man3proc/Plmid.3proc
+++ b/usr/src/man/man3proc/Plmid.3proc
@@ -69,4 +69,4 @@ in
.Xr libproc 3LIB .
.Sh SEE ALSO
.Xr libproc 3LIB ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/Plookup_by_addr.3proc b/usr/src/man/man3proc/Plookup_by_addr.3proc
index d1b1593326..2c6f2ff454 100644
--- a/usr/src/man/man3proc/Plookup_by_addr.3proc
+++ b/usr/src/man/man3proc/Plookup_by_addr.3proc
@@ -197,4 +197,4 @@ in
.Xr elf 3ELF ,
.Xr gelf 3ELF ,
.Xr libproc 3LIB ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/Plwp_getasrs.3proc b/usr/src/man/man3proc/Plwp_getasrs.3proc
index ea0fa5d2fc..6a7d45c537 100644
--- a/usr/src/man/man3proc/Plwp_getasrs.3proc
+++ b/usr/src/man/man3proc/Plwp_getasrs.3proc
@@ -72,7 +72,7 @@ Processes may be stopped with
The
.Sy asrset_t
structure is described in
-.Xr proc 4 .
+.Xr proc 5 .
.Pp
One may not set the register values of a process that is not an active
process, e.g. a process handle that refers to a file or a core file.
@@ -93,7 +93,7 @@ is set to indicate the error.
For a full list of possible errors see the
.Sy DIAGNOSTICS
section in
-.Xr proc 4 .
+.Xr proc 5 .
.Pp
The
.Fn Plwp_getasrs
@@ -144,4 +144,4 @@ in
.Xr Plwp_setregs 3PROC ,
.Xr Plwp_setregs 3PROC ,
.Xr Pstop 3PROC ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/Plwp_getgwindows.3proc b/usr/src/man/man3proc/Plwp_getgwindows.3proc
index 173406352b..84c7177ff9 100644
--- a/usr/src/man/man3proc/Plwp_getgwindows.3proc
+++ b/usr/src/man/man3proc/Plwp_getgwindows.3proc
@@ -52,7 +52,7 @@ is set to indicate the error.
For a full list of possible errors see the
.Sy DIAGNOSTICS
section in
-.Xr proc 4 .
+.Xr proc 5 .
.Pp
The
.Fn Plwp_getgwindows
@@ -94,4 +94,4 @@ in
.Xr libproc 3LIB .
.Sh SEE ALSO
.Xr libproc 3LIB ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/Plwp_getname.3proc b/usr/src/man/man3proc/Plwp_getname.3proc
index 961cc5257d..caebf96605 100644
--- a/usr/src/man/man3proc/Plwp_getname.3proc
+++ b/usr/src/man/man3proc/Plwp_getname.3proc
@@ -61,7 +61,7 @@ The buffer may be modified even if an error is returned.
For a full list of possible errors also see the
.Sy DIAGNOSTICS
section in
-.Xr proc 4 .
+.Xr proc 5 .
.Pp
The
.Fn Plwp_getname
@@ -92,4 +92,4 @@ in
.Xr libproc 3LIB .
.Sh SEE ALSO
.Xr libproc 3LIB ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/Plwp_getpsinfo.3proc b/usr/src/man/man3proc/Plwp_getpsinfo.3proc
index 53b01ea1c2..a3691cc342 100644
--- a/usr/src/man/man3proc/Plwp_getpsinfo.3proc
+++ b/usr/src/man/man3proc/Plwp_getpsinfo.3proc
@@ -41,7 +41,7 @@ The caller should provide a pointer to an
.Sy lwpsinfo_t ,
.Fa lps ,
whose definition can be found in
-.Xr proc 4 .
+.Xr proc 5 .
.Fa lps
will be filled in with information such as the thread's id, its current
state, priority, and run-time.
@@ -71,7 +71,7 @@ is set to indicate the error.
For a full list of possible errors also see the
.Sy DIAGNOSTICS
section in
-.Xr proc 4 .
+.Xr proc 5 .
.Pp
The
.Fn Plwp_getpsinfo
@@ -100,4 +100,4 @@ in
.Xr libproc 3LIB .
.Sh SEE ALSO
.Xr libproc 3LIB ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/Plwp_getregs.3proc b/usr/src/man/man3proc/Plwp_getregs.3proc
index 7b7d3b4d3d..fedd75e071 100644
--- a/usr/src/man/man3proc/Plwp_getregs.3proc
+++ b/usr/src/man/man3proc/Plwp_getregs.3proc
@@ -97,7 +97,7 @@ individual threads.
Processes may be stopped with
.Xr Pstop 3PROC .
The structures used for registers are described in
-.Xr proc 4
+.Xr proc 5
and their definitions may be found in
.In procfs.h .
The definitions of these structures varies based on the architecture of
@@ -125,7 +125,7 @@ are the data pointers changed.
For a full list of possible errors also see the
.Sy DIAGNOSTICS
section in
-.Xr proc 4 .
+.Xr proc 5 .
.Pp
The
.Fn Plwp_getregs ,
@@ -154,4 +154,4 @@ in
.Xr libproc 3LIB .
.Sh SEE ALSO
.Xr libproc 3LIB ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/Plwp_getspymaster.3proc b/usr/src/man/man3proc/Plwp_getspymaster.3proc
index 762485ddda..227d1156b5 100644
--- a/usr/src/man/man3proc/Plwp_getspymaster.3proc
+++ b/usr/src/man/man3proc/Plwp_getspymaster.3proc
@@ -41,13 +41,13 @@ When an agent LWP is created, it leverages an existing thread in the process and
it also creates a record of whom created the agent, which is called the spy
master.
For more information on the agent LWP and the spy master, see
-.Xr proc 4 .
+.Xr proc 5 .
.Pp
If the thread identified
.Fa lwpid
has an agent LWP, the corresponding ps information
.Po see
-.Xr proc 4
+.Xr proc 5
for the definition of the
.Sy psinfo_t
.Pc
@@ -78,7 +78,7 @@ is not modified.
For a full list of possible errors also see the
.Sy DIAGNOSTICS
section in
-.Xr proc 4 .
+.Xr proc 5 .
.Pp
The
.Fn Plwp_getpsinfo
@@ -117,4 +117,4 @@ in
.Xr libproc 3LIB .
.Sh SEE ALSO
.Xr libproc 3LIB ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/Plwp_getxregs.3proc b/usr/src/man/man3proc/Plwp_getxregs.3proc
index f1c191f99f..673daa421c 100644
--- a/usr/src/man/man3proc/Plwp_getxregs.3proc
+++ b/usr/src/man/man3proc/Plwp_getxregs.3proc
@@ -71,7 +71,7 @@ Processes may be stopped with
The
.Sy prxregset_t
structure is described in
-.Xr proc 4 .
+.Xr proc 5 .
.Pp
One may not set the register values of a process that is not an active
process, e.g. a process handle that refers to a file or a core file.
@@ -92,7 +92,7 @@ is set to indicate the error.
For a full list of possible errors see the
.Sy DIAGNOSTICS
section in
-.Xr proc 4 .
+.Xr proc 5 .
.Pp
The
.Fn Plwp_getxregs
@@ -141,4 +141,4 @@ in
.Xr Plwp_setfpregs 3PROC ,
.Xr Plwp_setregs 3PROC ,
.Xr Pstop 3PROC ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/Plwp_stack.3proc b/usr/src/man/man3proc/Plwp_stack.3proc
index 77d84664c2..6f8bdc04e2 100644
--- a/usr/src/man/man3proc/Plwp_stack.3proc
+++ b/usr/src/man/man3proc/Plwp_stack.3proc
@@ -148,7 +148,7 @@ is not modified.
For a full list of possible errors also see the
.Sy DIAGNOSTICS
section in
-.Xr proc 4 .
+.Xr proc 5 .
.Pp
The
.Fn Plwp_stack ,
@@ -193,4 +193,4 @@ in
.Xr sigaction 2 ,
.Xr sigaltstack 2 ,
.Xr libproc 3LIB ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/Pmapping_iter.3proc b/usr/src/man/man3proc/Pmapping_iter.3proc
index 6d43906ad4..fab9626fc5 100644
--- a/usr/src/man/man3proc/Pmapping_iter.3proc
+++ b/usr/src/man/man3proc/Pmapping_iter.3proc
@@ -64,7 +64,7 @@ argument,
the
.Sy prmap_t
structure defined from
-.Xr proc 4 ,
+.Xr proc 5 ,
and a name of the mapping.
The way that the name is obtained varies based on whether one calls
.Fn Pmapping_iter
@@ -162,4 +162,4 @@ in
.Xr libproc 3LIB .
.Sh SEE ALSO
.Xr libproc 3LIB ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/Pobjname.3proc b/usr/src/man/man3proc/Pobjname.3proc
index 300d4fa9dd..b554ccd58a 100644
--- a/usr/src/man/man3proc/Pobjname.3proc
+++ b/usr/src/man/man3proc/Pobjname.3proc
@@ -89,4 +89,4 @@ in
.Xr mmap 2 ,
.Xr libproc 3LIB ,
.Xr Pobject_iter 3PROC ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/Pplatform.3proc b/usr/src/man/man3proc/Pplatform.3proc
index 82ff02bf3f..9e81edb21a 100644
--- a/usr/src/man/man3proc/Pplatform.3proc
+++ b/usr/src/man/man3proc/Pplatform.3proc
@@ -88,4 +88,4 @@ in
.Xr uname 1 ,
.Xr sysinfo 2 ,
.Xr libproc 3LIB ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/Ppriv.3proc b/usr/src/man/man3proc/Ppriv.3proc
index 7f698f4db0..e778463478 100644
--- a/usr/src/man/man3proc/Ppriv.3proc
+++ b/usr/src/man/man3proc/Ppriv.3proc
@@ -45,7 +45,7 @@ It must be released with a call to
The definition of the
.Sy prpriv_t
structure is documented in
-.Xr proc 4 .
+.Xr proc 5 .
.Pp
The
.Fn Ppriv_free
@@ -75,5 +75,5 @@ in
.Xr libproc 3LIB .
.Sh SEE ALSO
.Xr libproc 3LIB ,
-.Xr proc 4 ,
-.Xr privileges 5
+.Xr proc 5 ,
+.Xr privileges 7
diff --git a/usr/src/man/man3proc/Ppsinfo.3proc b/usr/src/man/man3proc/Ppsinfo.3proc
index f3151c1789..1c564a143b 100644
--- a/usr/src/man/man3proc/Ppsinfo.3proc
+++ b/usr/src/man/man3proc/Ppsinfo.3proc
@@ -35,7 +35,7 @@ information.
The
.Sy psinfo_t
structure that is returned is defined in
-.Xr proc 4
+.Xr proc 5
and is valid until a subsequent call to
.Xr Prelease 3PROC .
.Sh RETURN VALUES
@@ -56,4 +56,4 @@ in
.Xr ps 1 ,
.Xr libproc 3LIB ,
.Xr Prelease 3PROC ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/Prd_agent.3proc b/usr/src/man/man3proc/Prd_agent.3proc
index 2de9dd3759..8342b26e8f 100644
--- a/usr/src/man/man3proc/Prd_agent.3proc
+++ b/usr/src/man/man3proc/Prd_agent.3proc
@@ -59,4 +59,4 @@ in
.Xr exec 2 ,
.Xr libproc 3LIB ,
.Xr librtld_db 3LIB ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/Pread.3proc b/usr/src/man/man3proc/Pread.3proc
index 89c6cd1758..124b37d43d 100644
--- a/usr/src/man/man3proc/Pread.3proc
+++ b/usr/src/man/man3proc/Pread.3proc
@@ -98,7 +98,7 @@ to indicate the error.
For a full list of possible errors also see the
.Sy DIAGNOSTICS
section in
-.Xr proc 4
+.Xr proc 5
and
the
.Sy ERRORS
@@ -114,4 +114,4 @@ in
.Sh SEE ALSO
.Xr pread 2 ,
.Xr libproc 3LIB ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/Prelease.3proc b/usr/src/man/man3proc/Prelease.3proc
index 61fe282162..0aa9840cf7 100644
--- a/usr/src/man/man3proc/Prelease.3proc
+++ b/usr/src/man/man3proc/Prelease.3proc
@@ -115,4 +115,4 @@ in
.Xr Pcreate 3PROC ,
.Xr Pgrab 3PROC ,
.Xr Pgrab_core 3PROC ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/Preopen.3proc b/usr/src/man/man3proc/Preopen.3proc
index 01beb6c0af..d17b15c94b 100644
--- a/usr/src/man/man3proc/Preopen.3proc
+++ b/usr/src/man/man3proc/Preopen.3proc
@@ -42,7 +42,7 @@ read the object file.
For more information on this, see the
.Sy PROGRAMMING NOTES
section of
-.Xr proc 4 .
+.Xr proc 5 .
.Pp
If successful, the controlling process will obtain control of the
process specified by
@@ -71,4 +71,4 @@ in
.Xr libproc 3LIB ,
.Xr Prelease 3PROC ,
.Xr Pstatus 3PROC ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/Preset_maps.3proc b/usr/src/man/man3proc/Preset_maps.3proc
index 2e110af1ee..0a202edb7a 100644
--- a/usr/src/man/man3proc/Preset_maps.3proc
+++ b/usr/src/man/man3proc/Preset_maps.3proc
@@ -53,4 +53,4 @@ in
.Sh SEE ALSO
.Xr exec 2 ,
.Xr libproc 3LIB ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/Psecflags.3proc b/usr/src/man/man3proc/Psecflags.3proc
index 9eaf3515d3..07d50abc70 100644
--- a/usr/src/man/man3proc/Psecflags.3proc
+++ b/usr/src/man/man3proc/Psecflags.3proc
@@ -45,7 +45,7 @@ It must be released with a call to
The definition of the
.Sy prsecflags_t
structure is documented in
-.Xr proc 4 .
+.Xr proc 5 .
.Pp
The
.Fn Psecflags_free
@@ -75,5 +75,5 @@ in
.Xr libproc 3LIB .
.Sh SEE ALSO
.Xr libproc 3LIB ,
-.Xr proc 4 ,
-.Xr security-flags 5
+.Xr proc 5 ,
+.Xr security-flags 7
diff --git a/usr/src/man/man3proc/Psetbkpt.3proc b/usr/src/man/man3proc/Psetbkpt.3proc
index 8ebdbe2cf9..4e78c08ac0 100644
--- a/usr/src/man/man3proc/Psetbkpt.3proc
+++ b/usr/src/man/man3proc/Psetbkpt.3proc
@@ -69,7 +69,7 @@ is set to indicate the error.
For a full list of possible errors see the
.Sy DIAGNOSTICS
section in
-.Xr proc 4 .
+.Xr proc 5 .
.Pp
The
.Fn Psetbkpt
@@ -91,4 +91,4 @@ in
.Sh SEE ALSO
.Xr libproc 3LIB ,
.Xr Pdelbkpt 3PROC ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/Psetcred.3proc b/usr/src/man/man3proc/Psetcred.3proc
index 15865707be..5c6c6bc0ab 100644
--- a/usr/src/man/man3proc/Psetcred.3proc
+++ b/usr/src/man/man3proc/Psetcred.3proc
@@ -38,7 +38,7 @@ must be fully initialized.
The definition of the
.Sy prcred_t
structure may be found in
-.Xr proc 4 .
+.Xr proc 5 .
.Pp
Note, the credentials may only be updated for an active process.
If the process handle refers to a zombie process, core file, or a file, then
@@ -64,4 +64,4 @@ in
.Sh SEE ALSO
.Xr libproc 3LIB ,
.Xr Pcred 3PROC ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/Psetfault.3proc b/usr/src/man/man3proc/Psetfault.3proc
index fff818b333..df8348bbd5 100644
--- a/usr/src/man/man3proc/Psetfault.3proc
+++ b/usr/src/man/man3proc/Psetfault.3proc
@@ -41,7 +41,7 @@ For more information on faults and the
structure see the
.Sy PCSFAULT
section in
-.Xr proc 4 .
+.Xr proc 5 .
The current fault set for the process may be obtained through the
.Xr Pfault 3PROC
function.
@@ -59,4 +59,4 @@ in
.Sh SEE ALSO
.Xr libproc 3LIB ,
.Xr Pfault 3PROC ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/Psetflags.3proc b/usr/src/man/man3proc/Psetflags.3proc
index 0affa7ab01..5082bb9951 100644
--- a/usr/src/man/man3proc/Psetflags.3proc
+++ b/usr/src/man/man3proc/Psetflags.3proc
@@ -48,7 +48,7 @@ inherit-on-fork mode should be set on children.
A full list of the process flags is available in the
.Sy PCSET
section in
-.Xr proc 4 .
+.Xr proc 5 .
.Pp
The
.Fn Psetflags
@@ -95,7 +95,7 @@ is set to indicate the error.
For a full list of possible errors see the
.Sy DIAGNOSTICS
section in
-.Xr proc 4 .
+.Xr proc 5 .
.Sh INTERFACE STABILITY
.Sy Uncommitted
.Sh MT-LEVEL
@@ -106,4 +106,4 @@ in
.Sh SEE ALSO
.Xr libproc 3LIB ,
.Xr Pstatus 3PROC ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/Psetpriv.3proc b/usr/src/man/man3proc/Psetpriv.3proc
index bfaece0206..438dd7e045 100644
--- a/usr/src/man/man3proc/Psetpriv.3proc
+++ b/usr/src/man/man3proc/Psetpriv.3proc
@@ -37,11 +37,11 @@ The updated privilege set has restrictions on what it may change for a
process which are documented in the
.Sy PCSPRIV
section of
-.Xr proc 4 .
+.Xr proc 5 .
In addition, the definition of the
.Sy prpriv_t
structure is described in
-.Xr proc 4 .
+.Xr proc 5 .
.Pp
The current privilege set for the process may be obtained through a call
to
@@ -65,7 +65,7 @@ is set to indicate the error.
For a full list of possible errors see the
.Sy DIAGNOSTICS
section in
-.Xr proc 4 .
+.Xr proc 5 .
.Pp
The
.Fn Psetpriv
@@ -85,5 +85,5 @@ in
.Sh SEE ALSO
.Xr libproc 3LIB ,
.Xr Ppriv 3PROC ,
-.Xr proc 4 ,
-.Xr privileges 5
+.Xr proc 5 ,
+.Xr privileges 7
diff --git a/usr/src/man/man3proc/Psetrun.3proc b/usr/src/man/man3proc/Psetrun.3proc
index b21179156e..2c134f8d17 100644
--- a/usr/src/man/man3proc/Psetrun.3proc
+++ b/usr/src/man/man3proc/Psetrun.3proc
@@ -65,7 +65,7 @@ For the specific mechanics of single-stepping and what traps or signals will be
injected, see the
.Sy PRSTEP
section of
-.Xr proc 4 .
+.Xr proc 5 .
.It Dv PRSABORT
Indicates that the thread should abort the system call that it is
currently executing.
@@ -92,7 +92,7 @@ changes will be synchronized with the process.
For more information on resuming a thread see the
.Sy PCRUN
section in
-.Xr proc 4 .
+.Xr proc 5 .
.Pp
Note, the
.Fn Psetrun
@@ -129,7 +129,7 @@ is set to indicate the error.
For a full list of possible errors see the
.Sy DIAGNOSTICS
section in
-.Xr proc 4 .
+.Xr proc 5 .
.Pp
The
.Fn Psetrun
@@ -154,4 +154,4 @@ in
.Xr signal.h 3HEAD ,
.Xr libproc 3LIB ,
.Xr Pstatus 3PROC ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/Psetsignal.3proc b/usr/src/man/man3proc/Psetsignal.3proc
index ae390200ca..a20392cc00 100644
--- a/usr/src/man/man3proc/Psetsignal.3proc
+++ b/usr/src/man/man3proc/Psetsignal.3proc
@@ -43,7 +43,7 @@ For more information on the behavior of the signal tracing flags, including
which signals may be traced this way, see the
.Sy PCSTRACE
section in
-.Xr proc 4 .
+.Xr proc 5 .
.Pp
The
.Fa set
@@ -69,4 +69,4 @@ in
.Xr signal.h 3HEAD ,
.Xr libproc 3LIB ,
.Xr Psignal 3PROC ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/Psetsysentry.3proc b/usr/src/man/man3proc/Psetsysentry.3proc
index 5367d3f717..c6c207b2d4 100644
--- a/usr/src/man/man3proc/Psetsysentry.3proc
+++ b/usr/src/man/man3proc/Psetsysentry.3proc
@@ -55,7 +55,7 @@ For more information on the state of the thread and for information on
manipulating the
.Sy sysset_t ,
see
-.Xr proc 4 .
+.Xr proc 5 .
.Pp
Note that only active processes may have their system call tracing flags
updated.
@@ -71,4 +71,4 @@ in
.Sh SEE ALSO
.Xr Intro 2 ,
.Xr libproc 3LIB ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/Psetwapt.3proc b/usr/src/man/man3proc/Psetwapt.3proc
index e119d90841..0c2df4dbfd 100644
--- a/usr/src/man/man3proc/Psetwapt.3proc
+++ b/usr/src/man/man3proc/Psetwapt.3proc
@@ -40,7 +40,7 @@ For more information on watchpoints and the
structure, see the
.Sy PCWATCH
section in
-.Xr proc 4 .
+.Xr proc 5 .
The watched area will persist until a subsequent call to
.Xr Pdelwapt 3PROC .
.Pp
@@ -63,7 +63,7 @@ is set.
For a full list of possible errors see the
.Sy DIAGNOSTICS
section in
-.Xr proc 4 .
+.Xr proc 5 .
.Pp
The
.Fn Psetwapt
@@ -83,4 +83,4 @@ in
.Sh SEE ALSO
.Xr libproc 3LIB ,
.Xr Pdelwapt 3PROC ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/Psetzoneid.3proc b/usr/src/man/man3proc/Psetzoneid.3proc
index ef25c5d3b1..4e6f268c03 100644
--- a/usr/src/man/man3proc/Psetzoneid.3proc
+++ b/usr/src/man/man3proc/Psetzoneid.3proc
@@ -54,7 +54,7 @@ which will cause the process to terminate if the process that holds
.Fa P
unexpectedly terminates.
See
-.Xr proc 4
+.Xr proc 5
for more information on the
.Sy PR_KLC
flag.
@@ -78,7 +78,7 @@ is set.
For a full list of possible errors see the
.Sy DIAGNOSTICS
section in
-.Xr proc 4 .
+.Xr proc 5 .
.Pp
The
.Fn Psetzoneid
@@ -101,6 +101,6 @@ in
.Xr libproc 3LIB .
.Sh SEE ALSO
.Xr libproc 3LIB ,
-.Xr proc 4 ,
-.Xr privileges 5 ,
-.Xr zones 5
+.Xr proc 5 ,
+.Xr privileges 7 ,
+.Xr zones 7
diff --git a/usr/src/man/man3proc/Psignal.3proc b/usr/src/man/man3proc/Psignal.3proc
index 5ef567cdd2..a62d765ce4 100644
--- a/usr/src/man/man3proc/Psignal.3proc
+++ b/usr/src/man/man3proc/Psignal.3proc
@@ -102,4 +102,4 @@ in
.Xr signal.h 3HEAD ,
.Xr libproc 3LIB ,
.Xr Psetsignal 3PROC ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/Pstack_iter.3proc b/usr/src/man/man3proc/Pstack_iter.3proc
index bcb116dc27..1adc82f97d 100644
--- a/usr/src/man/man3proc/Pstack_iter.3proc
+++ b/usr/src/man/man3proc/Pstack_iter.3proc
@@ -130,4 +130,4 @@ in
.Xr libproc 3LIB .
.Sh SEE ALSO
.Xr libproc 3LIB ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/Pstatus.3proc b/usr/src/man/man3proc/Pstatus.3proc
index 8f9b24de53..22a0347a91 100644
--- a/usr/src/man/man3proc/Pstatus.3proc
+++ b/usr/src/man/man3proc/Pstatus.3proc
@@ -33,7 +33,7 @@ function returns the status information about the process handle
The
.Sy pstatus_t
structure is defined in
-.Xr proc 4
+.Xr proc 5
and contains information about the process including its flags, the
number of threads, the size of the stack, and more.
.Pp
@@ -57,4 +57,4 @@ in
.Sh SEE ALSO
.Xr libproc 3LIB ,
.Xr Prelease 3PROC ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/Pstopstatus.3proc b/usr/src/man/man3proc/Pstopstatus.3proc
index 07a500c8a7..4f36ed2f8a 100644
--- a/usr/src/man/man3proc/Pstopstatus.3proc
+++ b/usr/src/man/man3proc/Pstopstatus.3proc
@@ -192,7 +192,7 @@ is set to indicate the error that occurred.
For a full list of possible errors see the
.Sy DIAGNOSTICS
section in
-.Xr proc 4 .
+.Xr proc 5 .
.Pp
The
.Fn Pdstop ,
@@ -214,7 +214,7 @@ Callers should call
For more information on losing control, see
.Sy PROGRAMMING NOTES
in
-.Xr proc 4 .
+.Xr proc 5 .
.It Er ENOENT
The request was not
.Dv PCNULL
@@ -242,4 +242,4 @@ in
.Xr Pgrab 3PROC ,
.Xr Pgrab_core 3PROC ,
.Xr Pgrab_file 3PROC ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/Psymbol_iter.3proc b/usr/src/man/man3proc/Psymbol_iter.3proc
index 69e893a330..66885a3cb6 100644
--- a/usr/src/man/man3proc/Psymbol_iter.3proc
+++ b/usr/src/man/man3proc/Psymbol_iter.3proc
@@ -288,4 +288,4 @@ in
.Xr elf 3ELF ,
.Xr gelf 3ELF ,
.Xr libproc 3LIB ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/Psync.3proc b/usr/src/man/man3proc/Psync.3proc
index be7fa46d71..428253a9ba 100644
--- a/usr/src/man/man3proc/Psync.3proc
+++ b/usr/src/man/man3proc/Psync.3proc
@@ -78,4 +78,4 @@ in
.Xr Psignal 3PROC ,
.Xr Psysentry 3PROC ,
.Xr Psysexit 3PROC ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/Psysentry.3proc b/usr/src/man/man3proc/Psysentry.3proc
index ca0a92369a..8dbc8e1b53 100644
--- a/usr/src/man/man3proc/Psysentry.3proc
+++ b/usr/src/man/man3proc/Psysentry.3proc
@@ -51,7 +51,7 @@ call tracing, see the
and
.Sy PCSEXIT
sections of
-.Xr proc 4 .
+.Xr proc 5 .
.Pp
The value of the
.Fa stop
@@ -123,5 +123,5 @@ in
.Xr libproc 3LIB .
.Sh SEE ALSO
.Xr libproc 3LIB ,
-.Xr proc 4 ,
-.Xr attributes 5
+.Xr proc 5 ,
+.Xr attributes 7
diff --git a/usr/src/man/man3proc/Pupanic.3proc b/usr/src/man/man3proc/Pupanic.3proc
index 975ca08eec..fcf709e9f6 100644
--- a/usr/src/man/man3proc/Pupanic.3proc
+++ b/usr/src/man/man3proc/Pupanic.3proc
@@ -100,4 +100,4 @@ in
.Sh SEE ALSO
.Xr upanic 3C ,
.Xr libproc 3LIB ,
-.Xr core 4
+.Xr core 5
diff --git a/usr/src/man/man3proc/Pwrite.3proc b/usr/src/man/man3proc/Pwrite.3proc
index a98f02cd21..159f6d03d8 100644
--- a/usr/src/man/man3proc/Pwrite.3proc
+++ b/usr/src/man/man3proc/Pwrite.3proc
@@ -77,7 +77,7 @@ is set to indicate an error.
For the full list of errors see the
.Sy DIAGNOSTICS
section in
-.Xr proc 4
+.Xr proc 5
and
the
.Sy ERRORS
@@ -102,4 +102,4 @@ in
.Sh SEE ALSO
.Xr pwrite 2 ,
.Xr libproc 3LIB ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/Pxecbkpt.3proc b/usr/src/man/man3proc/Pxecbkpt.3proc
index 87640ff20d..7f8f1e2679 100644
--- a/usr/src/man/man3proc/Pxecbkpt.3proc
+++ b/usr/src/man/man3proc/Pxecbkpt.3proc
@@ -94,7 +94,7 @@ is set to indicate the error.
For a full list of errors see the
.Sy DIAGNOSTICS
section in
-.Xr proc 4 .
+.Xr proc 5 .
The
.Fn Pxecbkpt ,
.Fn Pxecwapt ,
@@ -123,4 +123,4 @@ in
.Xr Pdelwapt 3PROC ,
.Xr Psetbkpt 3PROC ,
.Xr Psetwapt 3PROC ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/Pzonename.3proc b/usr/src/man/man3proc/Pzonename.3proc
index 828e107b98..3d3f989b6b 100644
--- a/usr/src/man/man3proc/Pzonename.3proc
+++ b/usr/src/man/man3proc/Pzonename.3proc
@@ -134,4 +134,4 @@ in
.Sh SEE ALSO
.Xr getzoneidbyname 3C ,
.Xr libproc 3LIB ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/pr_access.3proc b/usr/src/man/man3proc/pr_access.3proc
index 3b4bc1d92c..5dc1070ddd 100644
--- a/usr/src/man/man3proc/pr_access.3proc
+++ b/usr/src/man/man3proc/pr_access.3proc
@@ -99,4 +99,4 @@ in
.Sh SEE ALSO
.Xr access 2 ,
.Xr libproc 3LIB ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/pr_close.3proc b/usr/src/man/man3proc/pr_close.3proc
index 40d03db923..97ae9d9f96 100644
--- a/usr/src/man/man3proc/pr_close.3proc
+++ b/usr/src/man/man3proc/pr_close.3proc
@@ -96,4 +96,4 @@ in
.Sh SEE ALSO
.Xr close 2 ,
.Xr libproc 3LIB ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/pr_creat.3proc b/usr/src/man/man3proc/pr_creat.3proc
index ee68431f47..f93049786c 100644
--- a/usr/src/man/man3proc/pr_creat.3proc
+++ b/usr/src/man/man3proc/pr_creat.3proc
@@ -99,4 +99,4 @@ in
.Sh SEE ALSO
.Xr creat 2 ,
.Xr libproc 3LIB ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/pr_door_info.3proc b/usr/src/man/man3proc/pr_door_info.3proc
index 7c813827fd..3225531771 100644
--- a/usr/src/man/man3proc/pr_door_info.3proc
+++ b/usr/src/man/man3proc/pr_door_info.3proc
@@ -99,4 +99,4 @@ in
.Sh SEE ALSO
.Xr door_info 3C ,
.Xr libproc 3LIB ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/pr_exit.3proc b/usr/src/man/man3proc/pr_exit.3proc
index 30fee8c0ef..82f9e1aa12 100644
--- a/usr/src/man/man3proc/pr_exit.3proc
+++ b/usr/src/man/man3proc/pr_exit.3proc
@@ -104,4 +104,4 @@ in
.Sh SEE ALSO
.Xr exit 2 ,
.Xr libproc 3LIB ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/pr_fcntl.3proc b/usr/src/man/man3proc/pr_fcntl.3proc
index 5d081c48ce..b33fa05088 100644
--- a/usr/src/man/man3proc/pr_fcntl.3proc
+++ b/usr/src/man/man3proc/pr_fcntl.3proc
@@ -101,4 +101,4 @@ in
.Sh SEE ALSO
.Xr fcntl 2 ,
.Xr libproc 3LIB ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/pr_fstatvfs.3proc b/usr/src/man/man3proc/pr_fstatvfs.3proc
index 6e627c5cc4..4060da052b 100644
--- a/usr/src/man/man3proc/pr_fstatvfs.3proc
+++ b/usr/src/man/man3proc/pr_fstatvfs.3proc
@@ -99,4 +99,4 @@ in
.Sh SEE ALSO
.Xr fstatvfs 2 ,
.Xr libproc 3LIB ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/pr_getitimer.3proc b/usr/src/man/man3proc/pr_getitimer.3proc
index 43a242c081..652a052a15 100644
--- a/usr/src/man/man3proc/pr_getitimer.3proc
+++ b/usr/src/man/man3proc/pr_getitimer.3proc
@@ -99,4 +99,4 @@ in
.Sh SEE ALSO
.Xr getitimer 2 ,
.Xr libproc 3LIB ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/pr_getpeername.3proc b/usr/src/man/man3proc/pr_getpeername.3proc
index 228ee7e22b..57c6289a84 100644
--- a/usr/src/man/man3proc/pr_getpeername.3proc
+++ b/usr/src/man/man3proc/pr_getpeername.3proc
@@ -101,4 +101,4 @@ in
.Sh SEE ALSO
.Xr libproc 3LIB ,
.Xr getpeername 3SOCKET ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/pr_getpeerucred.3proc b/usr/src/man/man3proc/pr_getpeerucred.3proc
index 58ef001da1..fa61281084 100644
--- a/usr/src/man/man3proc/pr_getpeerucred.3proc
+++ b/usr/src/man/man3proc/pr_getpeerucred.3proc
@@ -99,4 +99,4 @@ in
.Sh SEE ALSO
.Xr getpeerucred 3C ,
.Xr libproc 3LIB ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/pr_getprojid.3proc b/usr/src/man/man3proc/pr_getprojid.3proc
index 88426b99c4..07a6f34ec8 100644
--- a/usr/src/man/man3proc/pr_getprojid.3proc
+++ b/usr/src/man/man3proc/pr_getprojid.3proc
@@ -85,4 +85,4 @@ in
.Sh SEE ALSO
.Xr getprojid 2 ,
.Xr libproc 3LIB ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/pr_getrctl.3proc b/usr/src/man/man3proc/pr_getrctl.3proc
index 5725417a6b..20fe382439 100644
--- a/usr/src/man/man3proc/pr_getrctl.3proc
+++ b/usr/src/man/man3proc/pr_getrctl.3proc
@@ -103,4 +103,4 @@ in
.Sh SEE ALSO
.Xr getrctl 2 ,
.Xr libproc 3LIB ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/pr_getrlimit.3proc b/usr/src/man/man3proc/pr_getrlimit.3proc
index adcb0480f8..883ca1dd7e 100644
--- a/usr/src/man/man3proc/pr_getrlimit.3proc
+++ b/usr/src/man/man3proc/pr_getrlimit.3proc
@@ -74,7 +74,7 @@ function is equivalent to
however, rather than having the rlimit information be subject to the data model
of the target process, they always provide 64-bit rlimit information.
See
-.Xr lf64 5
+.Xr lf64 7
for more information.
.Sh RETURN VALUES
Upon successful completion, the
@@ -116,5 +116,5 @@ in
.Sh SEE ALSO
.Xr getrlimit 2 ,
.Xr libproc 3LIB ,
-.Xr proc 4 ,
-.Xr lf64 5
+.Xr proc 5 ,
+.Xr lf64 7
diff --git a/usr/src/man/man3proc/pr_getsockname.3proc b/usr/src/man/man3proc/pr_getsockname.3proc
index 9ec6eca88e..32fdaef445 100644
--- a/usr/src/man/man3proc/pr_getsockname.3proc
+++ b/usr/src/man/man3proc/pr_getsockname.3proc
@@ -101,4 +101,4 @@ in
.Sh SEE ALSO
.Xr libproc 3LIB ,
.Xr getsockname 3SOCKET ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/pr_getsockopt.3proc b/usr/src/man/man3proc/pr_getsockopt.3proc
index 1bd5dae0b9..d684d05c58 100644
--- a/usr/src/man/man3proc/pr_getsockopt.3proc
+++ b/usr/src/man/man3proc/pr_getsockopt.3proc
@@ -105,4 +105,4 @@ in
.Sh SEE ALSO
.Xr libproc 3LIB ,
.Xr getsockopt 3SOCKET ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/pr_gettaskid.3proc b/usr/src/man/man3proc/pr_gettaskid.3proc
index 783a5560bb..3aa57f034e 100644
--- a/usr/src/man/man3proc/pr_gettaskid.3proc
+++ b/usr/src/man/man3proc/pr_gettaskid.3proc
@@ -85,4 +85,4 @@ in
.Sh SEE ALSO
.Xr gettaskid 2 ,
.Xr libproc 3LIB ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/pr_getzoneid.3proc b/usr/src/man/man3proc/pr_getzoneid.3proc
index f58f6ea3ba..883659cc6d 100644
--- a/usr/src/man/man3proc/pr_getzoneid.3proc
+++ b/usr/src/man/man3proc/pr_getzoneid.3proc
@@ -85,4 +85,4 @@ in
.Sh SEE ALSO
.Xr getzoneid 3C ,
.Xr libproc 3LIB ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/pr_ioctl.3proc b/usr/src/man/man3proc/pr_ioctl.3proc
index dbe1d52a49..d58b1d0e78 100644
--- a/usr/src/man/man3proc/pr_ioctl.3proc
+++ b/usr/src/man/man3proc/pr_ioctl.3proc
@@ -111,4 +111,4 @@ in
.Sh SEE ALSO
.Xr ioctl 2 ,
.Xr libproc 3LIB ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/pr_link.3proc b/usr/src/man/man3proc/pr_link.3proc
index b981405f39..685bbbab53 100644
--- a/usr/src/man/man3proc/pr_link.3proc
+++ b/usr/src/man/man3proc/pr_link.3proc
@@ -99,4 +99,4 @@ in
.Sh SEE ALSO
.Xr link 2 ,
.Xr libproc 3LIB ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/pr_llseek.3proc b/usr/src/man/man3proc/pr_llseek.3proc
index 2d88e53ba6..b22b9bce80 100644
--- a/usr/src/man/man3proc/pr_llseek.3proc
+++ b/usr/src/man/man3proc/pr_llseek.3proc
@@ -101,4 +101,4 @@ in
.Sh SEE ALSO
.Xr llseek 2 ,
.Xr libproc 3LIB ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/pr_lseek.3proc b/usr/src/man/man3proc/pr_lseek.3proc
index bea7e7bb3a..f91726b102 100644
--- a/usr/src/man/man3proc/pr_lseek.3proc
+++ b/usr/src/man/man3proc/pr_lseek.3proc
@@ -101,4 +101,4 @@ in
.Sh SEE ALSO
.Xr lseek 2 ,
.Xr libproc 3LIB ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/pr_memcntl.3proc b/usr/src/man/man3proc/pr_memcntl.3proc
index e77e7debd7..c6087e8016 100644
--- a/usr/src/man/man3proc/pr_memcntl.3proc
+++ b/usr/src/man/man3proc/pr_memcntl.3proc
@@ -107,4 +107,4 @@ in
.Sh SEE ALSO
.Xr memcntl 2 ,
.Xr libproc 3LIB ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/pr_meminfo.3proc b/usr/src/man/man3proc/pr_meminfo.3proc
index 7e6dfae222..75afd3f984 100644
--- a/usr/src/man/man3proc/pr_meminfo.3proc
+++ b/usr/src/man/man3proc/pr_meminfo.3proc
@@ -107,4 +107,4 @@ in
.Sh SEE ALSO
.Xr meminfo 2 ,
.Xr libproc 3LIB ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/pr_mmap.3proc b/usr/src/man/man3proc/pr_mmap.3proc
index 988f79dede..e0e023f6cf 100644
--- a/usr/src/man/man3proc/pr_mmap.3proc
+++ b/usr/src/man/man3proc/pr_mmap.3proc
@@ -107,4 +107,4 @@ in
.Sh SEE ALSO
.Xr mmap 2 ,
.Xr libproc 3LIB ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/pr_munmap.3proc b/usr/src/man/man3proc/pr_munmap.3proc
index 0573cc4a2a..96b899c4d8 100644
--- a/usr/src/man/man3proc/pr_munmap.3proc
+++ b/usr/src/man/man3proc/pr_munmap.3proc
@@ -99,4 +99,4 @@ in
.Sh SEE ALSO
.Xr munmap 2 ,
.Xr libproc 3LIB ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/pr_open.3proc b/usr/src/man/man3proc/pr_open.3proc
index 9a15a11428..c4a0dd8c69 100644
--- a/usr/src/man/man3proc/pr_open.3proc
+++ b/usr/src/man/man3proc/pr_open.3proc
@@ -101,4 +101,4 @@ in
.Sh SEE ALSO
.Xr open 2 ,
.Xr libproc 3LIB ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/pr_processor_bind.3proc b/usr/src/man/man3proc/pr_processor_bind.3proc
index f30d6095d5..2040e17b22 100644
--- a/usr/src/man/man3proc/pr_processor_bind.3proc
+++ b/usr/src/man/man3proc/pr_processor_bind.3proc
@@ -103,4 +103,4 @@ in
.Sh SEE ALSO
.Xr processor_bind 2 ,
.Xr libproc 3LIB ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/pr_rename.3proc b/usr/src/man/man3proc/pr_rename.3proc
index a7b9a33762..1e07527e7a 100644
--- a/usr/src/man/man3proc/pr_rename.3proc
+++ b/usr/src/man/man3proc/pr_rename.3proc
@@ -99,4 +99,4 @@ in
.Sh SEE ALSO
.Xr rename 2 ,
.Xr libproc 3LIB ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/pr_setitimer.3proc b/usr/src/man/man3proc/pr_setitimer.3proc
index dc777fdd1d..d984c3c345 100644
--- a/usr/src/man/man3proc/pr_setitimer.3proc
+++ b/usr/src/man/man3proc/pr_setitimer.3proc
@@ -101,4 +101,4 @@ in
.Sh SEE ALSO
.Xr setitimer 2 ,
.Xr libproc 3LIB ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/pr_setrctl.3proc b/usr/src/man/man3proc/pr_setrctl.3proc
index 75ed161f20..1237fe87f8 100644
--- a/usr/src/man/man3proc/pr_setrctl.3proc
+++ b/usr/src/man/man3proc/pr_setrctl.3proc
@@ -103,4 +103,4 @@ in
.Sh SEE ALSO
.Xr setrctl 2 ,
.Xr libproc 3LIB ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/pr_setrlimit.3proc b/usr/src/man/man3proc/pr_setrlimit.3proc
index b7658278d2..2e7e52e004 100644
--- a/usr/src/man/man3proc/pr_setrlimit.3proc
+++ b/usr/src/man/man3proc/pr_setrlimit.3proc
@@ -74,7 +74,7 @@ function is equivalent to
however, rather than having the rlimit information be subject to the data model
of the target process, they always provide 64-bit rlimit information.
See
-.Xr lf64 5
+.Xr lf64 7
for more information.
.Sh RETURN VALUES
Upon successful completion, the
@@ -116,5 +116,5 @@ in
.Sh SEE ALSO
.Xr setrlimit 2 ,
.Xr libproc 3LIB ,
-.Xr proc 4 ,
-.Xr lf64 5
+.Xr proc 5 ,
+.Xr lf64 7
diff --git a/usr/src/man/man3proc/pr_settaskid.3proc b/usr/src/man/man3proc/pr_settaskid.3proc
index 368cc4243a..ea03443461 100644
--- a/usr/src/man/man3proc/pr_settaskid.3proc
+++ b/usr/src/man/man3proc/pr_settaskid.3proc
@@ -99,4 +99,4 @@ in
.Sh SEE ALSO
.Xr settaskid 2 ,
.Xr libproc 3LIB ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/pr_sigaction.3proc b/usr/src/man/man3proc/pr_sigaction.3proc
index 4103a0e203..cb19d563b1 100644
--- a/usr/src/man/man3proc/pr_sigaction.3proc
+++ b/usr/src/man/man3proc/pr_sigaction.3proc
@@ -101,4 +101,4 @@ in
.Sh SEE ALSO
.Xr sigaction 2 ,
.Xr libproc 3LIB ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/pr_stat.3proc b/usr/src/man/man3proc/pr_stat.3proc
index f9095db692..00504497ce 100644
--- a/usr/src/man/man3proc/pr_stat.3proc
+++ b/usr/src/man/man3proc/pr_stat.3proc
@@ -150,7 +150,7 @@ and
respectively; however, rather than having the stat information be subject to the
data model of the target process, they always provide 64-bit stat information.
See
-.Xr lf64 5
+.Xr lf64 7
for more information.
.Sh RETURN VALUES
Upon successful completion, the
@@ -192,5 +192,5 @@ in
.Sh SEE ALSO
.Xr stat 2 ,
.Xr libproc 3LIB ,
-.Xr proc 4 ,
-.Xr lf64 5
+.Xr proc 5 ,
+.Xr lf64 7
diff --git a/usr/src/man/man3proc/pr_statvfs.3proc b/usr/src/man/man3proc/pr_statvfs.3proc
index 30a8a4c90b..9fde191dbe 100644
--- a/usr/src/man/man3proc/pr_statvfs.3proc
+++ b/usr/src/man/man3proc/pr_statvfs.3proc
@@ -99,4 +99,4 @@ in
.Sh SEE ALSO
.Xr statvfs 2 ,
.Xr libproc 3LIB ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/pr_unlink.3proc b/usr/src/man/man3proc/pr_unlink.3proc
index 0dbf9702ef..23bd3894cd 100644
--- a/usr/src/man/man3proc/pr_unlink.3proc
+++ b/usr/src/man/man3proc/pr_unlink.3proc
@@ -96,4 +96,4 @@ in
.Sh SEE ALSO
.Xr unlink 2 ,
.Xr libproc 3LIB ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/pr_waitid.3proc b/usr/src/man/man3proc/pr_waitid.3proc
index 9eceeb7eab..950d5c3c3e 100644
--- a/usr/src/man/man3proc/pr_waitid.3proc
+++ b/usr/src/man/man3proc/pr_waitid.3proc
@@ -103,4 +103,4 @@ in
.Sh SEE ALSO
.Xr waitid 2 ,
.Xr libproc 3LIB ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/proc_arg_grab.3proc b/usr/src/man/man3proc/proc_arg_grab.3proc
index 9bba2d5981..976d619f99 100644
--- a/usr/src/man/man3proc/proc_arg_grab.3proc
+++ b/usr/src/man/man3proc/proc_arg_grab.3proc
@@ -162,4 +162,4 @@ were set and no process or core file could be found corresponding to
.Xr Pgrab_core 3PROC ,
.Xr Prelease 3PROC ,
.Xr proc_lwp_range_valid 3PROC ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/proc_arg_psinfo.3proc b/usr/src/man/man3proc/proc_arg_psinfo.3proc
index 2ebab46fc7..c0032638a7 100644
--- a/usr/src/man/man3proc/proc_arg_psinfo.3proc
+++ b/usr/src/man/man3proc/proc_arg_psinfo.3proc
@@ -140,4 +140,4 @@ were set and no process or core file could be found corresponding to
.Xr Pgrab_core 3PROC ,
.Xr Prelease 3PROC ,
.Xr proc_lwp_range_valid 3PROC ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/proc_content2str.3proc b/usr/src/man/man3proc/proc_content2str.3proc
index 4b01158d95..0c49cd5104 100644
--- a/usr/src/man/man3proc/proc_content2str.3proc
+++ b/usr/src/man/man3proc/proc_content2str.3proc
@@ -85,6 +85,6 @@ will be returned to indicate an unknown string.
.Sh MT-LEVEL
.Sy MT-Safe
.Sh SEE ALSO
-.Xr coreadm 1M ,
.Xr libproc 3LIB ,
-.Xr proc 4
+.Xr proc 5 ,
+.Xr coreadm 8
diff --git a/usr/src/man/man3proc/proc_fdinfo_misc.3proc b/usr/src/man/man3proc/proc_fdinfo_misc.3proc
index c7cdd4e338..02510e7d27 100644
--- a/usr/src/man/man3proc/proc_fdinfo_misc.3proc
+++ b/usr/src/man/man3proc/proc_fdinfo_misc.3proc
@@ -52,7 +52,7 @@ The definition of the
structure may be found in the
.Sx fdinfo
section of
-.Xr proc 4 .
+.Xr proc 5 .
.Sh RETURN VALUES
Upon successful completion, the
.Fn proc_fdinfo_misc
@@ -68,4 +68,4 @@ is returned to indicate that the item was not found.
.Sh SEE ALSO
.Xr libproc 3LIB ,
.Xr proc_fdinfowalk 3PROC ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/proc_fdinfowalk.3proc b/usr/src/man/man3proc/proc_fdinfowalk.3proc
index 1a35e9d209..cfce3de4ee 100644
--- a/usr/src/man/man3proc/proc_fdinfowalk.3proc
+++ b/usr/src/man/man3proc/proc_fdinfowalk.3proc
@@ -43,7 +43,7 @@ is available in
The miscellaneous data types and structures are found in the
.Sx fdinfo
section of
-.Xr proc 4 .
+.Xr proc 5 .
.Pp
.Fa func
will be called once for each miscellaneous item, providing the item's
@@ -92,4 +92,4 @@ functions.
.Xr opendir 3C ,
.Xr readdir 3C ,
.Xr libproc 3LIB ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/proc_fdwalk.3proc b/usr/src/man/man3proc/proc_fdwalk.3proc
index 52bf29ed60..55714ca31f 100644
--- a/usr/src/man/man3proc/proc_fdwalk.3proc
+++ b/usr/src/man/man3proc/proc_fdwalk.3proc
@@ -84,4 +84,4 @@ functions.
.Xr opendir 3C ,
.Xr readdir 3C ,
.Xr libproc 3LIB ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/proc_fltname.3proc b/usr/src/man/man3proc/proc_fltname.3proc
index f3f4a45aa0..6fa5f88d16 100644
--- a/usr/src/man/man3proc/proc_fltname.3proc
+++ b/usr/src/man/man3proc/proc_fltname.3proc
@@ -98,4 +98,4 @@ is returned.
.Xr proc_str2sys 3PROC ,
.Xr proc_str2sysset 3PROC ,
.Xr proc_sysset2str 3PROC ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/proc_fltset2str.3proc b/usr/src/man/man3proc/proc_fltset2str.3proc
index 96c40eeab2..000272db8e 100644
--- a/usr/src/man/man3proc/proc_fltset2str.3proc
+++ b/usr/src/man/man3proc/proc_fltset2str.3proc
@@ -116,4 +116,4 @@ is returned.
.Xr proc_str2sys 3PROC ,
.Xr proc_str2sysset 3PROC ,
.Xr proc_sysname 3PROC ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/proc_get_auxv.3proc b/usr/src/man/man3proc/proc_get_auxv.3proc
index 8f2ec70299..e5bc4c0112 100644
--- a/usr/src/man/man3proc/proc_get_auxv.3proc
+++ b/usr/src/man/man3proc/proc_get_auxv.3proc
@@ -49,4 +49,4 @@ is returned to indicate an error occurred.
.Sy MT-Safe
.Sh SEE ALSO
.Xr libproc 3LIB ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/proc_get_cred.3proc b/usr/src/man/man3proc/proc_get_cred.3proc
index ddff00283b..9cadaec39d 100644
--- a/usr/src/man/man3proc/proc_get_cred.3proc
+++ b/usr/src/man/man3proc/proc_get_cred.3proc
@@ -49,7 +49,7 @@ Callers could allocate it, using an expression similar to:
The definition of the
.Sy prcred_t
structure may be found in
-.Xr proc 4 .
+.Xr proc 5 .
.Sh RETURN VALUES
Upon successful completion, the
.Fn proc_get_cred
@@ -64,4 +64,4 @@ is returned to indicate an error occurred.
.Sy MT-Safe
.Sh SEE ALSO
.Xr libproc 3LIB ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/proc_get_fdinfo.3proc b/usr/src/man/man3proc/proc_get_fdinfo.3proc
index 1985230f4c..59f62537bc 100644
--- a/usr/src/man/man3proc/proc_get_fdinfo.3proc
+++ b/usr/src/man/man3proc/proc_get_fdinfo.3proc
@@ -48,7 +48,7 @@ structure.
The definition of the
.Vt prfdinfo_t
structure may be found in
-.Xr proc 4 .
+.Xr proc 5 .
.Pp
The caller must free the returned memory by calling the
.Fn proc_fdinfo_free
@@ -97,4 +97,4 @@ is not properly terminated.
.Sy MT-Safe
.Sh SEE ALSO
.Xr libproc 3LIB ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/proc_get_lwpsinfo.3proc b/usr/src/man/man3proc/proc_get_lwpsinfo.3proc
index 113ebf97b1..e02a02d23f 100644
--- a/usr/src/man/man3proc/proc_get_lwpsinfo.3proc
+++ b/usr/src/man/man3proc/proc_get_lwpsinfo.3proc
@@ -41,7 +41,7 @@ file will be placed in
The definition of the
.Vt lwpsinfo_t
structure may be found in
-.Xr proc 4 .
+.Xr proc 5 .
.Pp
The thread identifier for a thread is the same between POSIX pthreads,
C11 threads, and the native threads API.
@@ -62,4 +62,4 @@ is returned to indicate an error occurred.
.Sy MT-Safe
.Sh SEE ALSO
.Xr libproc 3LIB ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/proc_get_priv.3proc b/usr/src/man/man3proc/proc_get_priv.3proc
index d70c293cec..74a0d290ad 100644
--- a/usr/src/man/man3proc/proc_get_priv.3proc
+++ b/usr/src/man/man3proc/proc_get_priv.3proc
@@ -42,7 +42,7 @@ ensures that it is large enough to hold all of the privilege sets.
The definition of the
.Sy prpriv_t
structure may be found in
-.Xr proc 4 .
+.Xr proc 5 .
.Pp
The
.Fn proc_free_priv
@@ -69,4 +69,4 @@ is returned to indicate an error occurred.
.Sy MT-Safe
.Sh SEE ALSO
.Xr libproc 3LIB ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/proc_get_psinfo.3proc b/usr/src/man/man3proc/proc_get_psinfo.3proc
index cc2201b237..79583564f8 100644
--- a/usr/src/man/man3proc/proc_get_psinfo.3proc
+++ b/usr/src/man/man3proc/proc_get_psinfo.3proc
@@ -38,7 +38,7 @@ related information of the process will be filled into
The definition of the
.Sy psinfo_t
structure may be found in
-.Xr proc 4 .
+.Xr proc 5 .
.Sh RETURN VALUES
Upon successful completion, the
.Fn proc_get_psinfo
@@ -53,4 +53,4 @@ is returned to indicate an error occurred.
.Sy MT-Safe
.Sh SEE ALSO
.Xr libproc 3LIB ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/proc_get_status.3proc b/usr/src/man/man3proc/proc_get_status.3proc
index 7a9321f6e0..ac4d75d89e 100644
--- a/usr/src/man/man3proc/proc_get_status.3proc
+++ b/usr/src/man/man3proc/proc_get_status.3proc
@@ -36,7 +36,7 @@ The status information of the process will be filled into
The definition of the
.Sy pstatus_t
structure may be found in
-.Xr proc 4 .
+.Xr proc 5 .
.Sh RETURN VALUES
Upon successful completion, the
.Fn proc_get_status
@@ -51,4 +51,4 @@ is returned to indicate an error occurred.
.Sy MT-Safe
.Sh SEE ALSO
.Xr libproc 3LIB ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/proc_lwp_in_set.3proc b/usr/src/man/man3proc/proc_lwp_in_set.3proc
index bea97c1a71..4fc98a8a9f 100644
--- a/usr/src/man/man3proc/proc_lwp_in_set.3proc
+++ b/usr/src/man/man3proc/proc_lwp_in_set.3proc
@@ -40,7 +40,7 @@ whether a thread is in a range.
A thread range is a series of one or more series of range identifiers
which describe a collection of threads.
These are often used by programs such as
-.Xr pbind 1M ,
+.Xr pbind 8 ,
.Xr pstack 1 ,
.Xr prun 1 ,
.Xr pstop 1 ,
@@ -118,4 +118,4 @@ is returned to indicate that the set is invalid.
.Sy MT-Safe
.Sh SEE ALSO
.Xr libproc 3LIB ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/proc_service.3proc b/usr/src/man/man3proc/proc_service.3proc
index ce819d4dab..f22e479278 100644
--- a/usr/src/man/man3proc/proc_service.3proc
+++ b/usr/src/man/man3proc/proc_service.3proc
@@ -401,7 +401,7 @@ Reads the local descriptor table of the \fBLWP\fR.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -416,8 +416,11 @@ MT Level Safe
.SH SEE ALSO
.LP
-\fBlibc_db\fR(3LIB), \fBlibrtld_db\fR(3LIB), \fBps_pread\fR(3PROC),
-\fBrtld_db\fR(3EXT), \fBattributes\fR(5)
+.BR rtld_db (3EXT),
+.BR libc_db (3LIB),
+.BR librtld_db (3LIB),
+.BR ps_pread (3PROC),
+.BR attributes (7)
.sp
.LP
\fILinker and Libraries Guide\fR
diff --git a/usr/src/man/man3proc/proc_str2flt.3proc b/usr/src/man/man3proc/proc_str2flt.3proc
index 2b7ef2edff..430a1af184 100644
--- a/usr/src/man/man3proc/proc_str2flt.3proc
+++ b/usr/src/man/man3proc/proc_str2flt.3proc
@@ -81,4 +81,4 @@ is returned to indicate that a conversion could not take place.
.Xr proc_str2sigset 3PROC ,
.Xr proc_str2sysset 3PROC ,
.Xr proc_sysset2str 3PROC ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/proc_str2fltset.3proc b/usr/src/man/man3proc/proc_str2fltset.3proc
index e1fd1f5359..161435e10e 100644
--- a/usr/src/man/man3proc/proc_str2fltset.3proc
+++ b/usr/src/man/man3proc/proc_str2fltset.3proc
@@ -122,4 +122,4 @@ contains an unrecognized set name.
.Xr proc_str2sys 3PROC ,
.Xr proc_sysname 3PROC ,
.Xr proc_sysset2str 3PROC ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/proc_unctrl_psinfo.3proc b/usr/src/man/man3proc/proc_unctrl_psinfo.3proc
index 3df63004bb..911c3b790b 100644
--- a/usr/src/man/man3proc/proc_unctrl_psinfo.3proc
+++ b/usr/src/man/man3proc/proc_unctrl_psinfo.3proc
@@ -50,4 +50,4 @@ if the same value for
is passed in from multiple threads.
.Sh SEE ALSO
.Xr libproc 3LIB ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/proc_walk.3proc b/usr/src/man/man3proc/proc_walk.3proc
index 49f0489dc3..be0abea312 100644
--- a/usr/src/man/man3proc/proc_walk.3proc
+++ b/usr/src/man/man3proc/proc_walk.3proc
@@ -137,4 +137,4 @@ or
.Xr opendir 3C ,
.Xr readdir 3C ,
.Xr libproc 3LIB ,
-.Xr proc 4
+.Xr proc 5
diff --git a/usr/src/man/man3proc/ps_lgetregs.3proc b/usr/src/man/man3proc/ps_lgetregs.3proc
index 65a519831e..6daaf991b0 100644
--- a/usr/src/man/man3proc/ps_lgetregs.3proc
+++ b/usr/src/man/man3proc/ps_lgetregs.3proc
@@ -105,7 +105,7 @@ The function did not return successfully.
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -119,5 +119,7 @@ MT Level Safe
.TE
.SH SEE ALSO
-\fBlibc_db\fR(3LIB), \fBproc_service\fR(3PROC), \fBattributes\fR(5),
-\fBthreads\fR(5)
+.BR libc_db (3LIB),
+.BR proc_service (3PROC),
+.BR attributes (7),
+.BR threads (7)
diff --git a/usr/src/man/man3proc/ps_pglobal_lookup.3proc b/usr/src/man/man3proc/ps_pglobal_lookup.3proc
index 664d340baf..236246d3b5 100644
--- a/usr/src/man/man3proc/ps_pglobal_lookup.3proc
+++ b/usr/src/man/man3proc/ps_pglobal_lookup.3proc
@@ -66,7 +66,7 @@ The function did not return successfully.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -81,5 +81,8 @@ MT Level Safe
.SH SEE ALSO
.LP
-\fBkill\fR(2), \fBlibc_db\fR(3LIB), \fBproc_service\fR(3PROC),
-\fBattributes\fR(5), \fBthreads\fR(5)
+.BR kill (2),
+.BR libc_db (3LIB),
+.BR proc_service (3PROC),
+.BR attributes (7),
+.BR threads (7)
diff --git a/usr/src/man/man3proc/ps_pread.3proc b/usr/src/man/man3proc/ps_pread.3proc
index 25bae238b7..29b6e04c8f 100644
--- a/usr/src/man/man3proc/ps_pread.3proc
+++ b/usr/src/man/man3proc/ps_pread.3proc
@@ -92,7 +92,7 @@ The function did not return successfully.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -107,5 +107,9 @@ MT Level Safe
.SH SEE ALSO
.LP
-\fBlibc_db\fR(3LIB), \fBlibrtld_db\fR(3LIB), \fBproc_service\fR(3PROC),
-\fBrtld_db\fR(3EXT), \fBattributes\fR(5), \fBthreads\fR(5)
+.BR rtld_db (3EXT),
+.BR libc_db (3LIB),
+.BR librtld_db (3LIB),
+.BR proc_service (3PROC),
+.BR attributes (7),
+.BR threads (7)
diff --git a/usr/src/man/man3proc/ps_pstop.3proc b/usr/src/man/man3proc/ps_pstop.3proc
index 9932acb9cb..cd87ad1951 100644
--- a/usr/src/man/man3proc/ps_pstop.3proc
+++ b/usr/src/man/man3proc/ps_pstop.3proc
@@ -112,7 +112,7 @@ The function did not return successfully.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -127,5 +127,8 @@ MT Level Safe
.SH SEE ALSO
.LP
-\fBkill\fR(2), \fBlibc_db\fR(3LIB), \fBproc_service\fR(3PROC),
-\fBattributes\fR(5), \fBthreads\fR(5)
+.BR kill (2),
+.BR libc_db (3LIB),
+.BR proc_service (3PROC),
+.BR attributes (7),
+.BR threads (7)
diff --git a/usr/src/man/man3project/getprojent.3project b/usr/src/man/man3project/getprojent.3project
index abafad49e9..3f082e5cfc 100644
--- a/usr/src/man/man3project/getprojent.3project
+++ b/usr/src/man/man3project/getprojent.3project
@@ -67,7 +67,7 @@ cc [ \fIflag\fR... ] \fIfile\fR... \(milproject [ \fIlibrary\fR... ]
.LP
These functions are used to obtain entries describing user projects. Entries
can come from any of the sources for a project specified in the
-\fB/etc/nsswitch.conf\fR file (see \fBnsswitch.conf\fR(4)).
+\fB/etc/nsswitch.conf\fR file (see \fBnsswitch.conf\fR(5)).
.sp
.LP
The \fBsetprojent()\fR, \fBgetprojent()\fR, and \fBendprojent()\fR functions
@@ -137,7 +137,7 @@ returns the project ID if the requested entry is found; otherwise it returns
.LP
The \fBfgetprojent()\fR function, unlike the other functions described above,
does not use \fBnsswitch.conf\fR; it reads and parses the next line from the
-stream \fIf\fR, which is assumed to have the format of the \fBproject\fR(4)
+stream \fIf\fR, which is assumed to have the format of the \fBproject\fR(5)
file. This function returns the same values as \fBgetprojent()\fR.
.sp
.LP
@@ -263,7 +263,7 @@ the data to be referenced by the resulting \fBproject\fR structure.
.sp
.LP
These functions can also fail if the name service switch does not specify valid
-\fBproject\fR(4) name service sources. In the case of an incompletely
+\fBproject\fR(5) name service sources. In the case of an incompletely
configured name service switch configuration, \fBgetprojbyid()\fR and other
functions can return error values other than those documented above. These
conditions usually occur when the \fBnsswitch.conf\fR file indicates that one
@@ -278,10 +278,10 @@ Multithreaded Applications.
Use of the enumeration interface \fBgetprojent()\fR is discouraged. Enumeration
is supported for the project file, NIS, and LDAP but in general is not
efficient. The semantics of enumeration are discussed further in
-\fBnsswitch.conf\fR(4).
+\fBnsswitch.conf\fR(5).
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -298,6 +298,10 @@ MT-Level See Description.
.SH SEE ALSO
.LP
-\fBIntro\fR(3), \fBlibproject\fR(3LIB), \fBproject_walk\fR(3PROJECT),
-\fBsysconf\fR(3C), \fBnsswitch.conf\fR(4), \fBproject\fR(4),
-\fBattributes\fR(5)
+.BR Intro (3),
+.BR sysconf (3C),
+.BR libproject (3LIB),
+.BR project_walk (3PROJECT),
+.BR nsswitch.conf (5),
+.BR project (5),
+.BR attributes (7)
diff --git a/usr/src/man/man3project/project_walk.3project b/usr/src/man/man3project/project_walk.3project
index cc48ac333c..b345329831 100644
--- a/usr/src/man/man3project/project_walk.3project
+++ b/usr/src/man/man3project/project_walk.3project
@@ -89,7 +89,7 @@ if ((n = project_walk(simple_callback, &total_count)) >= 0)
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -107,5 +107,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBgetprojid\fR(2), \fBlibproject\fR(3LIB), \fBsettaskid\fR(2),
-\fBattributes\fR(5)
+.BR getprojid (2),
+.BR settaskid (2),
+.BR libproject (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3project/setproject.3project b/usr/src/man/man3project/setproject.3project
index 0ac2651130..eaba8aa049 100644
--- a/usr/src/man/man3project/setproject.3project
+++ b/usr/src/man/man3project/setproject.3project
@@ -21,7 +21,7 @@ cc [ \fIflag \&.\|.\|.\fR ] \fIfile\fR\&.\|.\|. \fB-lproject\fR [ \fIlibrary \&.
.LP
The \fBsetproject()\fR function provides a simplified method for the
association of a user process with a project and its various resource
-management attributes, as stored in the \fBproject\fR(4) name service database.
+management attributes, as stored in the \fBproject\fR(5) name service database.
These attributes include resource control settings, resource pool membership,
and third party attributes (which are ignored by \fBsetproject()\fR.)
.sp
@@ -39,7 +39,7 @@ superuser to join any project.
.sp
.LP
The current process will not be bound to a resource pool if the resource pools
-facility (see \fBpooladm\fR(1M)) is inactive. The \fBsetproject()\fR function
+facility (see \fBpooladm\fR(8)) is inactive. The \fBsetproject()\fR function
will succeed whether or not the project specified by \fIproject_name\fR
specifies a \fBproject.pool\fR attribute. If the resource pools facility is
active, \fBsetproject()\fR will fail if the project does not specify a
@@ -153,7 +153,7 @@ attributes.
.sp
.LP
The \fBsetproject()\fR function recognizes a name-structured value pair for the
-attributes in the \fBproject\fR(4) database with the following format:
+attributes in the \fBproject\fR(5) database with the following format:
.sp
.in +2
.nf
@@ -217,7 +217,7 @@ project.pool=pool_name
.sp
.LP
where \fBpool_name\fR is a valid resource pool within the active configuration
-enabled with \fBpooladm\fR(1M).
+enabled with \fBpooladm\fR(8).
.sp
.LP
The final attribute is used to finalize the task created by \fBsetproject()\fR.
@@ -232,11 +232,11 @@ task.final
.sp
.LP
All further attempts to create new tasks, such as using \fBnewtask\fR(1) and
-\fBsu\fR(1M), will fail.
+\fBsu\fR(8), will fail.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -254,7 +254,13 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBpooladm\fR(1M), \fBsetrctl\fR(2), \fBsettaskid\fR(2),
-\fBinproj\fR(3PROJECT), \fBlibproject\fR(3LIB), \fBpool_error\fR(3POOL),
-\fBpool_set_binding\fR(3POOL), \fBpasswd\fR(4), \fBproject\fR(4),
-\fBattributes\fR(5)
+.BR setrctl (2),
+.BR settaskid (2),
+.BR libproject (3LIB),
+.BR pool_error (3POOL),
+.BR pool_set_binding (3POOL),
+.BR inproj (3PROJECT),
+.BR passwd (5),
+.BR project (5),
+.BR attributes (7),
+.BR pooladm (8)
diff --git a/usr/src/man/man3resolv/resolver.3resolv b/usr/src/man/man3resolv/resolver.3resolv
index cf5b7037da..4fb8408d66 100644
--- a/usr/src/man/man3resolv/resolver.3resolv
+++ b/usr/src/man/man3resolv/resolver.3resolv
@@ -326,10 +326,10 @@ the header would be updated.
.SS "\fBres_ninit()\fR, \fBres_init()\fR"
The \fBres_ninit()\fR and \fBres_init()\fR routines read the configuration
file, if any is present, to get the default domain name, search list and the
-Internet address of the local name server(s). See \fBresolv.conf\fR(4). If no
+Internet address of the local name server(s). See \fBresolv.conf\fR(5). If no
server is configured, \fBres_init()\fR or \fBres_ninit()\fR will try to obtain
name resolution services from the host on which it is running. The current
-domain name is defined by \fBdomainname\fR(1M), or by the hostname if it is not
+domain name is defined by \fBdomainname\fR(8), or by the hostname if it is not
specified in the configuration file. Use the environment variable
\fBLOCALDOMAIN\fR to override the domain name. This environment variable may
contain several blank-separated tokens if you wish to override the search list
@@ -338,7 +338,7 @@ configuration file. You can set the \fBRES_OPTIONS\fR environment variable to
override certain internal resolver options. You can otherwise set them by
changing fields in the \fBstatp\fR /\fB_res\fR structure. Alternatively, they
are inherited from the configuration file's \fBoptions\fR command. See
-\fBresolv.conf\fR(4) for information regarding the syntax of the
+\fBresolv.conf\fR(5) for information regarding the syntax of the
\fBRES_OPTIONS\fR environment variable. Initialization normally occurs on the
first call to one of the other resolver routines.
.SS "\fBres_nquery()\fR, \fBres_query()\fR"
@@ -483,7 +483,7 @@ resolver configuration file
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -500,8 +500,11 @@ T}
.TE
.SH SEE ALSO
-\fBdomainname\fR(1M), \fBgethostbyname\fR(3NSL), \fBlibresolv\fR(3LIB),
-\fBresolv.conf\fR(4), \fBattributes\fR(5)
+.BR libresolv (3LIB),
+.BR gethostbyname (3NSL),
+.BR resolv.conf (5),
+.BR attributes (7),
+.BR domainname (8)
.sp
.LP
Lottor, M. \fIRFC 1033, Domain Administrators Operations Guide\fR. Network
diff --git a/usr/src/man/man3rpc/rstat.3rpc b/usr/src/man/man3rpc/rstat.3rpc
index c9ba21e02d..da1bb82cd1 100644
--- a/usr/src/man/man3rpc/rstat.3rpc
+++ b/usr/src/man/man3rpc/rstat.3rpc
@@ -28,7 +28,7 @@ rstat, havedisk \- get performance data from remote kernel
.SH DESCRIPTION
.sp
.LP
-These routines require that the \fBrpc.rstatd\fR(1M) daemon be configured and
+These routines require that the \fBrpc.rstatd\fR(8) daemon be configured and
available on the remote system indicated by \fIhost\fR. The \fBrstat()\fR
protocol is used to gather statistics from remote kernel. Statistics will be
available on items such as paging, swapping, and cpu utilization.
@@ -58,7 +58,7 @@ xdr_statsvar
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -74,5 +74,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBrup\fR(1), \fBrpc.rstatd\fR(1M), \fBrpc_clnt_calls\fR(3NSL),
-\fBattributes\fR(5)
+.BR rup (1),
+.BR rpc_clnt_calls (3NSL),
+.BR attributes (7),
+.BR rpc.rstatd (8)
diff --git a/usr/src/man/man3rpc/rusers.3rpc b/usr/src/man/man3rpc/rusers.3rpc
index 7f034277ab..f6cda58c8e 100644
--- a/usr/src/man/man3rpc/rusers.3rpc
+++ b/usr/src/man/man3rpc/rusers.3rpc
@@ -28,7 +28,7 @@ rusers, rnusers \- return information about users on remote machines
.SH DESCRIPTION
.sp
.LP
-These routines require that the \fBrpc.rusersd\fR(1M) daemon be configured and
+These routines require that the \fBrpc.rusersd\fR(8) daemon be configured and
available on the remote system indicated by \fIhost\fR. The \fBrusers()\fR
protocol is used to retrieve information about users logged in on the remote
system.
@@ -74,7 +74,7 @@ xdr_utmpidlearr
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -90,5 +90,8 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBrusers\fR(1), \fBrpc.rusersd\fR(1M), \fBrpc_clnt_calls\fR(3NSL),
-\fBxdr_free\fR(3NSL), \fBattributes\fR(5)
+.BR rusers (1),
+.BR rpc_clnt_calls (3NSL),
+.BR xdr_free (3NSL),
+.BR attributes (7),
+.BR rpc.rusersd (8)
diff --git a/usr/src/man/man3rpc/rwall.3rpc b/usr/src/man/man3rpc/rwall.3rpc
index 7ecd8a96f5..0c72abeed4 100644
--- a/usr/src/man/man3rpc/rwall.3rpc
+++ b/usr/src/man/man3rpc/rwall.3rpc
@@ -23,11 +23,11 @@ rwall \- write to specified remote machines
.SH DESCRIPTION
.sp
.LP
-These routines require that the \fBrpc.rwalld\fR(1M) daemon be configured and
+These routines require that the \fBrpc.rwalld\fR(8) daemon be configured and
available on the remote system indicated by \fIhost\fR.
.sp
.LP
-\fBrwall()\fR executes \fBwall\fR(1M) on \fIhost\fR. The \fBrpc.rwalld\fR
+\fBrwall()\fR executes \fBwall\fR(8) on \fIhost\fR. The \fBrpc.rwalld\fR
process on \fIhost\fR prints \fImsg\fR to all users logged on to that system.
\fBrwall()\fR returns \fBRPC_SUCCESS\fR if it was successful; otherwise a
\fBenum clnt_stat\fR is returned which can be displayed using
@@ -35,7 +35,7 @@ process on \fIhost\fR prints \fImsg\fR to all users logged on to that system.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -51,5 +51,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBrpc.rwalld\fR(1M), \fBwall\fR(1M), \fBrpc_clnt_calls\fR(3NSL),
-\fBattributes\fR(5)
+.BR rpc_clnt_calls (3NSL),
+.BR attributes (7),
+.BR rpc.rwalld (8),
+.BR wall (8)
diff --git a/usr/src/man/man3rsm/rsm_create_localmemory_handle.3rsm b/usr/src/man/man3rsm/rsm_create_localmemory_handle.3rsm
index 71126507b2..cb30e59280 100644
--- a/usr/src/man/man3rsm/rsm_create_localmemory_handle.3rsm
+++ b/usr/src/man/man3rsm/rsm_create_localmemory_handle.3rsm
@@ -113,7 +113,7 @@ Insufficient memory.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -131,4 +131,5 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBrsm_memseg_import_putv\fR(3RSM), \fBattributes\fR(5)
+.BR rsm_memseg_import_putv (3RSM),
+.BR attributes (7)
diff --git a/usr/src/man/man3rsm/rsm_get_controller.3rsm b/usr/src/man/man3rsm/rsm_get_controller.3rsm
index 2e740ffb3a..023e4a1d55 100644
--- a/usr/src/man/man3rsm/rsm_get_controller.3rsm
+++ b/usr/src/man/man3rsm/rsm_get_controller.3rsm
@@ -122,7 +122,7 @@ Invalid library version.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -140,5 +140,6 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBrsm_memseg_export_create\fR(3RSM), \fBrsm_memseg_import_connect\fR(3RSM),
-\fBattributes\fR(5)
+.BR rsm_memseg_export_create (3RSM),
+.BR rsm_memseg_import_connect (3RSM),
+.BR attributes (7)
diff --git a/usr/src/man/man3rsm/rsm_get_interconnect_topology.3rsm b/usr/src/man/man3rsm/rsm_get_interconnect_topology.3rsm
index 51198965b5..a2f5e89af5 100644
--- a/usr/src/man/man3rsm/rsm_get_interconnect_topology.3rsm
+++ b/usr/src/man/man3rsm/rsm_get_interconnect_topology.3rsm
@@ -89,7 +89,7 @@ Bad address.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -107,4 +107,4 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBattributes\fR(5)
+.BR attributes (7)
diff --git a/usr/src/man/man3rsm/rsm_get_segmentid_range.3rsm b/usr/src/man/man3rsm/rsm_get_segmentid_range.3rsm
index d7708f7966..41a5f4da15 100644
--- a/usr/src/man/man3rsm/rsm_get_segmentid_range.3rsm
+++ b/usr/src/man/man3rsm/rsm_get_segmentid_range.3rsm
@@ -104,7 +104,7 @@ file format is incorrect.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -122,4 +122,5 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBrsm_memseg_export_publish\fR(3RSM), \fBattributes\fR(5)
+.BR rsm_memseg_export_publish (3RSM),
+.BR attributes (7)
diff --git a/usr/src/man/man3rsm/rsm_intr_signal_post.3rsm b/usr/src/man/man3rsm/rsm_intr_signal_post.3rsm
index d877b447da..f15de78ff5 100644
--- a/usr/src/man/man3rsm/rsm_intr_signal_post.3rsm
+++ b/usr/src/man/man3rsm/rsm_intr_signal_post.3rsm
@@ -109,7 +109,7 @@ Timer expired.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -126,4 +126,5 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBrsm_memseg_get_pollfd\fR(3RSM), \fBattributes\fR(5)
+.BR rsm_memseg_get_pollfd (3RSM),
+.BR attributes (7)
diff --git a/usr/src/man/man3rsm/rsm_intr_signal_wait_pollfd.3rsm b/usr/src/man/man3rsm/rsm_intr_signal_wait_pollfd.3rsm
index 1b734958e8..27ba670377 100644
--- a/usr/src/man/man3rsm/rsm_intr_signal_wait_pollfd.3rsm
+++ b/usr/src/man/man3rsm/rsm_intr_signal_wait_pollfd.3rsm
@@ -122,7 +122,7 @@ Insufficient resources.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -139,6 +139,8 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBpoll\fR(2), \fBrsm_intr_signal_wait\fR(3RSM),
-\fBrsm_memseg_get_pollfd\fR(3RSM), \fBrsm_memseg_release_pollfd\fR(3RSM),
-\fBattributes\fR(5)
+.BR poll (2),
+.BR rsm_intr_signal_wait (3RSM),
+.BR rsm_memseg_get_pollfd (3RSM),
+.BR rsm_memseg_release_pollfd (3RSM),
+.BR attributes (7)
diff --git a/usr/src/man/man3rsm/rsm_memseg_export_create.3rsm b/usr/src/man/man3rsm/rsm_memseg_export_create.3rsm
index 7943564f1f..e7e3e6fa33 100644
--- a/usr/src/man/man3rsm/rsm_memseg_export_create.3rsm
+++ b/usr/src/man/man3rsm/rsm_memseg_export_create.3rsm
@@ -263,7 +263,7 @@ must be mapped \fBMAP_PRIVATE\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -281,5 +281,6 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBrsm_get_controller\fR(3RSM), \fBrsm_memseg_export_publish\fR(3RSM),
-\fBattributes\fR(5)
+.BR rsm_get_controller (3RSM),
+.BR rsm_memseg_export_publish (3RSM),
+.BR attributes (7)
diff --git a/usr/src/man/man3rsm/rsm_memseg_export_publish.3rsm b/usr/src/man/man3rsm/rsm_memseg_export_publish.3rsm
index d26aa1bebb..8fb62f2c3d 100644
--- a/usr/src/man/man3rsm/rsm_memseg_export_publish.3rsm
+++ b/usr/src/man/man3rsm/rsm_memseg_export_publish.3rsm
@@ -255,7 +255,7 @@ The operation was interrupted by a signal.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -273,7 +273,8 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBrsm_memseg_export_create\fR(3RSM), \fBattributes\fR(5)
+.BR rsm_memseg_export_create (3RSM),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3rsm/rsm_memseg_get_pollfd.3rsm b/usr/src/man/man3rsm/rsm_memseg_get_pollfd.3rsm
index 623758468d..c7ca7825cd 100644
--- a/usr/src/man/man3rsm/rsm_memseg_get_pollfd.3rsm
+++ b/usr/src/man/man3rsm/rsm_memseg_get_pollfd.3rsm
@@ -69,7 +69,7 @@ Invalid segment handle.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -87,5 +87,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBpoll\fR(2), \fBrsm_intr_signal_post\fR(3RSM),
-\fBrsm_intr_signal_wait_pollfd\fR(3RSM), \fBattributes\fR(5)
+.BR poll (2),
+.BR rsm_intr_signal_post (3RSM),
+.BR rsm_intr_signal_wait_pollfd (3RSM),
+.BR attributes (7)
diff --git a/usr/src/man/man3rsm/rsm_memseg_import_connect.3rsm b/usr/src/man/man3rsm/rsm_memseg_import_connect.3rsm
index 7caee2b7d6..cd7d6869aa 100644
--- a/usr/src/man/man3rsm/rsm_memseg_import_connect.3rsm
+++ b/usr/src/man/man3rsm/rsm_memseg_import_connect.3rsm
@@ -217,7 +217,7 @@ Poll file descriptor in use.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -234,4 +234,5 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBrsm_memseg_import_map\fR(3RSM), \fBattributes\fR(5)
+.BR rsm_memseg_import_map (3RSM),
+.BR attributes (7)
diff --git a/usr/src/man/man3rsm/rsm_memseg_import_get.3rsm b/usr/src/man/man3rsm/rsm_memseg_import_get.3rsm
index 65e65481fc..5604b51158 100644
--- a/usr/src/man/man3rsm/rsm_memseg_import_get.3rsm
+++ b/usr/src/man/man3rsm/rsm_memseg_import_get.3rsm
@@ -207,7 +207,7 @@ Connection aborted.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -225,6 +225,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBrsm_memseg_import_init_barrier\fR(3RSM),
-\fBrsm_memseg_import_open_barrier\fR(3RSM),
-\fBrsm_memseg_import_set_mode\fR(3RSM), \fBattributes\fR(5)
+.BR rsm_memseg_import_init_barrier (3RSM),
+.BR rsm_memseg_import_open_barrier (3RSM),
+.BR rsm_memseg_import_set_mode (3RSM),
+.BR attributes (7)
diff --git a/usr/src/man/man3rsm/rsm_memseg_import_init_barrier.3rsm b/usr/src/man/man3rsm/rsm_memseg_import_init_barrier.3rsm
index 171407d86f..c12196dadd 100644
--- a/usr/src/man/man3rsm/rsm_memseg_import_init_barrier.3rsm
+++ b/usr/src/man/man3rsm/rsm_memseg_import_init_barrier.3rsm
@@ -80,7 +80,7 @@ Insufficient memory.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -98,5 +98,6 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBrsm_memseg_import_open_barrier\fR(3RSM),
-\fBrsm_memseg_import_set_mode\fR(3RSM), \fBattributes\fR(5)
+.BR rsm_memseg_import_open_barrier (3RSM),
+.BR rsm_memseg_import_set_mode (3RSM),
+.BR attributes (7)
diff --git a/usr/src/man/man3rsm/rsm_memseg_import_map.3rsm b/usr/src/man/man3rsm/rsm_memseg_import_map.3rsm
index cee3e84b50..0cac17266f 100644
--- a/usr/src/man/man3rsm/rsm_memseg_import_map.3rsm
+++ b/usr/src/man/man3rsm/rsm_memseg_import_map.3rsm
@@ -176,7 +176,7 @@ Segment not connected.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -193,6 +193,8 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBrsm_memseg_import_connect\fR(3RSM), \fBrsm_memseg_import_get\fR(3RSM),
-\fBrsm_memseg_import_put\fR(3RSM), \fBrsm_memseg_get_pollfd\fR(3RSM),
-\fBattributes\fR(5)
+.BR rsm_memseg_get_pollfd (3RSM),
+.BR rsm_memseg_import_connect (3RSM),
+.BR rsm_memseg_import_get (3RSM),
+.BR rsm_memseg_import_put (3RSM),
+.BR attributes (7)
diff --git a/usr/src/man/man3rsm/rsm_memseg_import_open_barrier.3rsm b/usr/src/man/man3rsm/rsm_memseg_import_open_barrier.3rsm
index 39fea8c9c9..221a26192d 100644
--- a/usr/src/man/man3rsm/rsm_memseg_import_open_barrier.3rsm
+++ b/usr/src/man/man3rsm/rsm_memseg_import_open_barrier.3rsm
@@ -119,7 +119,7 @@ Connection aborted.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -136,5 +136,6 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBrsm_memseg_import_init_barrier\fR(3RSM),
-\fBrsm_memseg_import_set_mode\fR(3RSM), \fBattributes\fR(5)
+.BR rsm_memseg_import_init_barrier (3RSM),
+.BR rsm_memseg_import_set_mode (3RSM),
+.BR attributes (7)
diff --git a/usr/src/man/man3rsm/rsm_memseg_import_put.3rsm b/usr/src/man/man3rsm/rsm_memseg_import_put.3rsm
index ec4a5ac942..b44eada585 100644
--- a/usr/src/man/man3rsm/rsm_memseg_import_put.3rsm
+++ b/usr/src/man/man3rsm/rsm_memseg_import_put.3rsm
@@ -206,7 +206,7 @@ Connection aborted.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -224,6 +224,8 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBrsm_memseg_import_get\fR(3RSM), \fBrsm_memseg_import_init_barrier\fR(3RSM),
-\fBrsm_memseg_import_open_barrier\fR(3RSM),
-\fBrsm_memseg_import_set_mode\fR(3RSM), \fBattributes\fR(5)
+.BR rsm_memseg_import_get (3RSM),
+.BR rsm_memseg_import_init_barrier (3RSM),
+.BR rsm_memseg_import_open_barrier (3RSM),
+.BR rsm_memseg_import_set_mode (3RSM),
+.BR attributes (7)
diff --git a/usr/src/man/man3rsm/rsm_memseg_import_putv.3rsm b/usr/src/man/man3rsm/rsm_memseg_import_putv.3rsm
index e1ea9547c9..dd81b1e776 100644
--- a/usr/src/man/man3rsm/rsm_memseg_import_putv.3rsm
+++ b/usr/src/man/man3rsm/rsm_memseg_import_putv.3rsm
@@ -200,7 +200,7 @@ Remote node not reachable.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -218,5 +218,6 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBrsm_create_localmemory_handle\fR(3RSM),
-\fBrsm_free_localmemory_handle\fR(3RSM), \fBattributes\fR(5)
+.BR rsm_create_localmemory_handle (3RSM),
+.BR rsm_free_localmemory_handle (3RSM),
+.BR attributes (7)
diff --git a/usr/src/man/man3rsm/rsm_memseg_import_set_mode.3rsm b/usr/src/man/man3rsm/rsm_memseg_import_set_mode.3rsm
index 8e58337942..1866406b9b 100644
--- a/usr/src/man/man3rsm/rsm_memseg_import_set_mode.3rsm
+++ b/usr/src/man/man3rsm/rsm_memseg_import_set_mode.3rsm
@@ -53,7 +53,7 @@ Invalid segment handle.
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -69,5 +69,7 @@ MT-Level MT-Safe
.TE
.SH SEE ALSO
-\fBrsm_memseg_import_get\fR(3RSM), \fBrsm_memseg_import_init_barrier\fR(3RSM),
-\fBrsm_memseg_import_put\fR(3RSM), \fBattributes\fR(5)
+.BR rsm_memseg_import_get (3RSM),
+.BR rsm_memseg_import_init_barrier (3RSM),
+.BR rsm_memseg_import_put (3RSM),
+.BR attributes (7)
diff --git a/usr/src/man/man3sasl/sasl_authorize_t.3sasl b/usr/src/man/man3sasl/sasl_authorize_t.3sasl
index 68b6353d48..4727fc2bf3 100644
--- a/usr/src/man/man3sasl/sasl_authorize_t.3sasl
+++ b/usr/src/man/man3sasl/sasl_authorize_t.3sasl
@@ -127,7 +127,7 @@ See \fBsasl_errors\fR(3SASL) for information on SASL error codes.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -145,4 +145,6 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBsasl_errors\fR(3SASL), \fBsasl_server_new\fR(3SASL), \fBattributes\fR(5)
+.BR sasl_errors (3SASL),
+.BR sasl_server_new (3SASL),
+.BR attributes (7)
diff --git a/usr/src/man/man3sasl/sasl_auxprop.3sasl b/usr/src/man/man3sasl/sasl_auxprop.3sasl
index b0b13b3cf3..041b4a01de 100644
--- a/usr/src/man/man3sasl/sasl_auxprop.3sasl
+++ b/usr/src/man/man3sasl/sasl_auxprop.3sasl
@@ -295,7 +295,7 @@ that return a pointer will return a valid pointer upon success and return
\fINULL\fR upon failure.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -312,5 +312,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBsasl_auxprop_getctx\fR(3SASL), \fBsasl_auxprop_request\fR(3SASL),
-\fBsasl_errors\fR(3SASL), \fBattributes\fR(5)
+.BR sasl_auxprop_getctx (3SASL),
+.BR sasl_auxprop_request (3SASL),
+.BR sasl_errors (3SASL),
+.BR attributes (7)
diff --git a/usr/src/man/man3sasl/sasl_auxprop_add_plugin.3sasl b/usr/src/man/man3sasl/sasl_auxprop_add_plugin.3sasl
index c8d0d160e8..c8fca5ee21 100644
--- a/usr/src/man/man3sasl/sasl_auxprop_add_plugin.3sasl
+++ b/usr/src/man/man3sasl/sasl_auxprop_add_plugin.3sasl
@@ -82,7 +82,7 @@ See \fBsasl_errors\fR(3SASL) for information on other SASL error codes.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -100,4 +100,5 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBsasl_errors\fR(3SASL), \fBattributes\fR(5)
+.BR sasl_errors (3SASL),
+.BR attributes (7)
diff --git a/usr/src/man/man3sasl/sasl_auxprop_getctx.3sasl b/usr/src/man/man3sasl/sasl_auxprop_getctx.3sasl
index a2e31d04c7..6fc92b8610 100644
--- a/usr/src/man/man3sasl/sasl_auxprop_getctx.3sasl
+++ b/usr/src/man/man3sasl/sasl_auxprop_getctx.3sasl
@@ -41,7 +41,7 @@ The \fBsasl_conn_t\fR for which the request is being made
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -59,4 +59,4 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBattributes\fR(5)
+.BR attributes (7)
diff --git a/usr/src/man/man3sasl/sasl_auxprop_request.3sasl b/usr/src/man/man3sasl/sasl_auxprop_request.3sasl
index c040f800ba..827470e911 100644
--- a/usr/src/man/man3sasl/sasl_auxprop_request.3sasl
+++ b/usr/src/man/man3sasl/sasl_auxprop_request.3sasl
@@ -54,7 +54,7 @@ until a call to \fBsasl_dispose\fR(3SASL) on the \fBsasl_conn_t\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -72,6 +72,8 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBsasl_dispose\fR(3SASL), \fBsasl_errors\fR(3SASL),
-\fBsasl_server_new\fR(3SASL), \fBsasl_server_start\fR(3SASL),
-\fBattributes\fR(5)
+.BR sasl_dispose (3SASL),
+.BR sasl_errors (3SASL),
+.BR sasl_server_new (3SASL),
+.BR sasl_server_start (3SASL),
+.BR attributes (7)
diff --git a/usr/src/man/man3sasl/sasl_canon_user_t.3sasl b/usr/src/man/man3sasl/sasl_canon_user_t.3sasl
index b2304b5a62..ad236a902e 100644
--- a/usr/src/man/man3sasl/sasl_canon_user_t.3sasl
+++ b/usr/src/man/man3sasl/sasl_canon_user_t.3sasl
@@ -148,7 +148,7 @@ See \fBsasl_errors\fR(3SASL) for information on SASL error codes.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -166,4 +166,6 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBsasl_errors\fR(3SASL), \fBsasl_server_new\fR(3SASL), \fBattributes\fR(5)
+.BR sasl_errors (3SASL),
+.BR sasl_server_new (3SASL),
+.BR attributes (7)
diff --git a/usr/src/man/man3sasl/sasl_canonuser_add_plugin.3sasl b/usr/src/man/man3sasl/sasl_canonuser_add_plugin.3sasl
index 4b5199f357..15c17a6701 100644
--- a/usr/src/man/man3sasl/sasl_canonuser_add_plugin.3sasl
+++ b/usr/src/man/man3sasl/sasl_canonuser_add_plugin.3sasl
@@ -83,7 +83,7 @@ See \fBsasl_errors\fR(3SASL) for information on other SASL error codes.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -101,4 +101,5 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBsasl_errors\fR(3SASL), \fBattributes\fR(5)
+.BR sasl_errors (3SASL),
+.BR attributes (7)
diff --git a/usr/src/man/man3sasl/sasl_chalprompt_t.3sasl b/usr/src/man/man3sasl/sasl_chalprompt_t.3sasl
index f7eed32ded..d88e2af592 100644
--- a/usr/src/man/man3sasl/sasl_chalprompt_t.3sasl
+++ b/usr/src/man/man3sasl/sasl_chalprompt_t.3sasl
@@ -111,7 +111,7 @@ See \fBsasl_errors\fR(3SASL) for information on SASL error codes.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -129,4 +129,6 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBsasl_errors\fR(3SASL), \fBsasl_server_new\fR(3SASL), \fBattributes\fR(5)
+.BR sasl_errors (3SASL),
+.BR sasl_server_new (3SASL),
+.BR attributes (7)
diff --git a/usr/src/man/man3sasl/sasl_checkapop.3sasl b/usr/src/man/man3sasl/sasl_checkapop.3sasl
index 1262d22413..1bb33e9668 100644
--- a/usr/src/man/man3sasl/sasl_checkapop.3sasl
+++ b/usr/src/man/man3sasl/sasl_checkapop.3sasl
@@ -97,7 +97,7 @@ information on SASL error codes.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -117,7 +117,8 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBsasl_errors\fR(3SASL), \fBattributes\fR(5)
+.BR sasl_errors (3SASL),
+.BR attributes (7)
.sp
.LP
Meyers, J. and Rose, M. \fIRFC 1939, Post Office Protocol - Version 3\fR.
diff --git a/usr/src/man/man3sasl/sasl_checkpass.3sasl b/usr/src/man/man3sasl/sasl_checkpass.3sasl
index bed5416e28..2fa095008f 100644
--- a/usr/src/man/man3sasl/sasl_checkpass.3sasl
+++ b/usr/src/man/man3sasl/sasl_checkpass.3sasl
@@ -115,7 +115,7 @@ information on SASL error codes.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -133,4 +133,5 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBsasl_errors\fR(3SASL), \fBattributes\fR(5)
+.BR sasl_errors (3SASL),
+.BR attributes (7)
diff --git a/usr/src/man/man3sasl/sasl_client_add_plugin.3sasl b/usr/src/man/man3sasl/sasl_client_add_plugin.3sasl
index 7ffb669ae9..662ec6a475 100644
--- a/usr/src/man/man3sasl/sasl_client_add_plugin.3sasl
+++ b/usr/src/man/man3sasl/sasl_client_add_plugin.3sasl
@@ -82,7 +82,7 @@ See \fBsasl_errors\fR(3SASL) for information on other SASL error codes.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -100,4 +100,5 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBsasl_errors\fR(3SASL), \fBattributes\fR(5)
+.BR sasl_errors (3SASL),
+.BR attributes (7)
diff --git a/usr/src/man/man3sasl/sasl_client_init.3sasl b/usr/src/man/man3sasl/sasl_client_init.3sasl
index cd1aeaa5ec..a8bccd6dfa 100644
--- a/usr/src/man/man3sasl/sasl_client_init.3sasl
+++ b/usr/src/man/man3sasl/sasl_client_init.3sasl
@@ -85,7 +85,7 @@ information on SASL error codes.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -103,7 +103,8 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBsasl_errors\fR(3SASL), \fBattributes\fR(5)
+.BR sasl_errors (3SASL),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3sasl/sasl_client_new.3sasl b/usr/src/man/man3sasl/sasl_client_new.3sasl
index 3352cead03..129b47f2f1 100644
--- a/usr/src/man/man3sasl/sasl_client_new.3sasl
+++ b/usr/src/man/man3sasl/sasl_client_new.3sasl
@@ -186,7 +186,7 @@ information on SASL error codes.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -204,4 +204,6 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBsasl_client_init\fR(3SASL), \fBsasl_errors\fR(3SASL), \fBattributes\fR(5)
+.BR sasl_client_init (3SASL),
+.BR sasl_errors (3SASL),
+.BR attributes (7)
diff --git a/usr/src/man/man3sasl/sasl_client_plug_init_t.3sasl b/usr/src/man/man3sasl/sasl_client_plug_init_t.3sasl
index ab5e1bc486..6ce78913a2 100644
--- a/usr/src/man/man3sasl/sasl_client_plug_init_t.3sasl
+++ b/usr/src/man/man3sasl/sasl_client_plug_init_t.3sasl
@@ -91,7 +91,7 @@ See \fBsasl_errors\fR(3SASL) for information on SASL error codes.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -109,4 +109,5 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBsasl_errors\fR(3SASL), \fBattributes\fR(5)
+.BR sasl_errors (3SASL),
+.BR attributes (7)
diff --git a/usr/src/man/man3sasl/sasl_client_start.3sasl b/usr/src/man/man3sasl/sasl_client_start.3sasl
index b5d31c1a39..be1c63703b 100644
--- a/usr/src/man/man3sasl/sasl_client_start.3sasl
+++ b/usr/src/man/man3sasl/sasl_client_start.3sasl
@@ -114,7 +114,7 @@ authentication session should be quit. See \fBsasl_errors\fR(3SASL) for
information on SASL error codes.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -131,4 +131,5 @@ MT-Level Safe
.SH SEE ALSO
.LP
-\fBsasl_errors\fR(3SASL), \fBattributes\fR(5)
+.BR sasl_errors (3SASL),
+.BR attributes (7)
diff --git a/usr/src/man/man3sasl/sasl_client_step.3sasl b/usr/src/man/man3sasl/sasl_client_step.3sasl
index 636da0d68e..f0baec8296 100644
--- a/usr/src/man/man3sasl/sasl_client_step.3sasl
+++ b/usr/src/man/man3sasl/sasl_client_step.3sasl
@@ -131,7 +131,7 @@ authentication session should be quit. See \fBsasl_errors\fR(3SASL) for
information on SASL error codes.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -148,4 +148,5 @@ MT-Level Safe
.SH SEE ALSO
.LP
-\fBsasl_errors\fR(3SASL), \fBattributes\fR(5)
+.BR sasl_errors (3SASL),
+.BR attributes (7)
diff --git a/usr/src/man/man3sasl/sasl_decode.3sasl b/usr/src/man/man3sasl/sasl_decode.3sasl
index 6d77ddfe6d..46b99fcb5e 100644
--- a/usr/src/man/man3sasl/sasl_decode.3sasl
+++ b/usr/src/man/man3sasl/sasl_decode.3sasl
@@ -100,7 +100,7 @@ See \fBsasl_errors\fR(3SASL) for information on SASL error codes.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -118,4 +118,6 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBsasl_errors\fR(3SASL), \fBsasl_getprop\fR(3SASL), \fBattributes\fR(5)
+.BR sasl_errors (3SASL),
+.BR sasl_getprop (3SASL),
+.BR attributes (7)
diff --git a/usr/src/man/man3sasl/sasl_decode64.3sasl b/usr/src/man/man3sasl/sasl_decode64.3sasl
index fd9d699154..4eb2acf4ca 100644
--- a/usr/src/man/man3sasl/sasl_decode64.3sasl
+++ b/usr/src/man/man3sasl/sasl_decode64.3sasl
@@ -89,7 +89,7 @@ See \fBsasl_errors\fR(3SASL) for information on SASL error codes.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -107,4 +107,5 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBsasl_errors\fR(3SASL), \fBattributes\fR(5)
+.BR sasl_errors (3SASL),
+.BR attributes (7)
diff --git a/usr/src/man/man3sasl/sasl_dispose.3sasl b/usr/src/man/man3sasl/sasl_dispose.3sasl
index 6d7ba0b179..740789189c 100644
--- a/usr/src/man/man3sasl/sasl_dispose.3sasl
+++ b/usr/src/man/man3sasl/sasl_dispose.3sasl
@@ -41,7 +41,7 @@ The SASL connection context
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -59,4 +59,4 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBattributes\fR(5)
+.BR attributes (7)
diff --git a/usr/src/man/man3sasl/sasl_done.3sasl b/usr/src/man/man3sasl/sasl_done.3sasl
index cfaffdc33e..ecb02a822e 100644
--- a/usr/src/man/man3sasl/sasl_done.3sasl
+++ b/usr/src/man/man3sasl/sasl_done.3sasl
@@ -30,7 +30,7 @@ before you make a call to \fBsasl_done()\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -48,4 +48,5 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBsasl_dispose\fR(3SASL), \fBattributes\fR(5)
+.BR sasl_dispose (3SASL),
+.BR attributes (7)
diff --git a/usr/src/man/man3sasl/sasl_encode.3sasl b/usr/src/man/man3sasl/sasl_encode.3sasl
index 7406cec38e..6b7696471f 100644
--- a/usr/src/man/man3sasl/sasl_encode.3sasl
+++ b/usr/src/man/man3sasl/sasl_encode.3sasl
@@ -121,7 +121,7 @@ See \fBsasl_errors\fR(3SASL) for information on SASL error codes.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -139,4 +139,4 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBattributes\fR(5)
+.BR attributes (7)
diff --git a/usr/src/man/man3sasl/sasl_encode64.3sasl b/usr/src/man/man3sasl/sasl_encode64.3sasl
index 603856705b..95ee34060b 100644
--- a/usr/src/man/man3sasl/sasl_encode64.3sasl
+++ b/usr/src/man/man3sasl/sasl_encode64.3sasl
@@ -98,7 +98,7 @@ The output buffer was too small.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -116,4 +116,5 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBsasl_errors\fR(3SASL), \fBattributes\fR(5)
+.BR sasl_errors (3SASL),
+.BR attributes (7)
diff --git a/usr/src/man/man3sasl/sasl_erasebuffer.3sasl b/usr/src/man/man3sasl/sasl_erasebuffer.3sasl
index b556e2f02e..6f5b9c0298 100644
--- a/usr/src/man/man3sasl/sasl_erasebuffer.3sasl
+++ b/usr/src/man/man3sasl/sasl_erasebuffer.3sasl
@@ -52,7 +52,7 @@ None.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -70,4 +70,4 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBattributes\fR(5)
+.BR attributes (7)
diff --git a/usr/src/man/man3sasl/sasl_errdetail.3sasl b/usr/src/man/man3sasl/sasl_errdetail.3sasl
index 8ba361d06c..c04603ae1a 100644
--- a/usr/src/man/man3sasl/sasl_errdetail.3sasl
+++ b/usr/src/man/man3sasl/sasl_errdetail.3sasl
@@ -43,7 +43,7 @@ occurred, or \fINULL\fR, if there was an error retrieving it.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -61,4 +61,6 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBsasl_errors\fR(3SASL), \fBsasl_seterror\fR(3SASL), \fBattributes\fR(5)
+.BR sasl_errors (3SASL),
+.BR sasl_seterror (3SASL),
+.BR attributes (7)
diff --git a/usr/src/man/man3sasl/sasl_errors.3sasl b/usr/src/man/man3sasl/sasl_errors.3sasl
index 1daea38c08..679d96cc5f 100644
--- a/usr/src/man/man3sasl/sasl_errors.3sasl
+++ b/usr/src/man/man3sasl/sasl_errors.3sasl
@@ -289,7 +289,7 @@ User supplied passwords are not permitted.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -307,4 +307,4 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBattributes\fR(5)
+.BR attributes (7)
diff --git a/usr/src/man/man3sasl/sasl_errstring.3sasl b/usr/src/man/man3sasl/sasl_errstring.3sasl
index 7d2ec1045d..07ff4a5aee 100644
--- a/usr/src/man/man3sasl/sasl_errstring.3sasl
+++ b/usr/src/man/man3sasl/sasl_errstring.3sasl
@@ -70,7 +70,7 @@ occurred, or \fINULL\fR, if there was an error retrieving it.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -88,7 +88,9 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBsasl_errors\fR(3SASL), \fBsasl_seterror\fR(3SASL), \fBattributes\fR(5)
+.BR sasl_errors (3SASL),
+.BR sasl_seterror (3SASL),
+.BR attributes (7)
.sp
.LP
Alvestrand, H. \fIRFC 1766, Tags for the Identification of Languages\fR.
diff --git a/usr/src/man/man3sasl/sasl_getcallback_t.3sasl b/usr/src/man/man3sasl/sasl_getcallback_t.3sasl
index 9b6d88e50f..a826bbf567 100644
--- a/usr/src/man/man3sasl/sasl_getcallback_t.3sasl
+++ b/usr/src/man/man3sasl/sasl_getcallback_t.3sasl
@@ -103,7 +103,7 @@ See \fBsasl_errors\fR(3SASL) for information on SASL error codes.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -121,4 +121,5 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBsasl_errors\fR(3SASL), \fBattributes\fR(5)
+.BR sasl_errors (3SASL),
+.BR attributes (7)
diff --git a/usr/src/man/man3sasl/sasl_getopt_t.3sasl b/usr/src/man/man3sasl/sasl_getopt_t.3sasl
index c087ff3d8c..e6dd185e1a 100644
--- a/usr/src/man/man3sasl/sasl_getopt_t.3sasl
+++ b/usr/src/man/man3sasl/sasl_getopt_t.3sasl
@@ -96,7 +96,7 @@ See \fBsasl_errors\fR(3SASL) for information on SASL error codes.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -114,4 +114,5 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBsasl_errors\fR(3SASL), \fBattributes\fR(5)
+.BR sasl_errors (3SASL),
+.BR attributes (7)
diff --git a/usr/src/man/man3sasl/sasl_getpath_t.3sasl b/usr/src/man/man3sasl/sasl_getpath_t.3sasl
index fa6aa239db..cfba3d5d91 100644
--- a/usr/src/man/man3sasl/sasl_getpath_t.3sasl
+++ b/usr/src/man/man3sasl/sasl_getpath_t.3sasl
@@ -67,7 +67,7 @@ See \fBsasl_errors\fR(3SASL) for information on SASL error codes.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -85,4 +85,5 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBsasl_errors\fR(3SASL), \fBattributes\fR(5)
+.BR sasl_errors (3SASL),
+.BR attributes (7)
diff --git a/usr/src/man/man3sasl/sasl_getprop.3sasl b/usr/src/man/man3sasl/sasl_getprop.3sasl
index a73948c481..3ff013cf4a 100644
--- a/usr/src/man/man3sasl/sasl_getprop.3sasl
+++ b/usr/src/man/man3sasl/sasl_getprop.3sasl
@@ -179,7 +179,7 @@ See \fBsasl_errors\fR(3SASL) for information on SASL error codes.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -197,4 +197,5 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBsasl_errors\fR(3SASL), \fBattributes\fR(5)
+.BR sasl_errors (3SASL),
+.BR attributes (7)
diff --git a/usr/src/man/man3sasl/sasl_getrealm_t.3sasl b/usr/src/man/man3sasl/sasl_getrealm_t.3sasl
index 32984ded83..acd1fbbc49 100644
--- a/usr/src/man/man3sasl/sasl_getrealm_t.3sasl
+++ b/usr/src/man/man3sasl/sasl_getrealm_t.3sasl
@@ -89,7 +89,7 @@ See \fBsasl_errors\fR(3SASL) for information on SASL error codes.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -107,4 +107,5 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBsasl_errors\fR(3SASL), \fBattributes\fR(5)
+.BR sasl_errors (3SASL),
+.BR attributes (7)
diff --git a/usr/src/man/man3sasl/sasl_getsecret_t.3sasl b/usr/src/man/man3sasl/sasl_getsecret_t.3sasl
index 1117ec08df..5756fc0139 100644
--- a/usr/src/man/man3sasl/sasl_getsecret_t.3sasl
+++ b/usr/src/man/man3sasl/sasl_getsecret_t.3sasl
@@ -89,7 +89,7 @@ See \fBsasl_errors\fR(3SASL) for information on SASL error codes.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -107,4 +107,5 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBsasl_errors\fR(3SASL), \fBattributes\fR(5)
+.BR sasl_errors (3SASL),
+.BR attributes (7)
diff --git a/usr/src/man/man3sasl/sasl_getsimple_t.3sasl b/usr/src/man/man3sasl/sasl_getsimple_t.3sasl
index fec6112f28..25ad0af34c 100644
--- a/usr/src/man/man3sasl/sasl_getsimple_t.3sasl
+++ b/usr/src/man/man3sasl/sasl_getsimple_t.3sasl
@@ -120,7 +120,7 @@ See \fBsasl_errors\fR(3SASL) for information on SASL error codes.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -138,7 +138,8 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBsasl_errors\fR(3SASL), \fBattributes\fR(5)
+.BR sasl_errors (3SASL),
+.BR attributes (7)
.sp
.LP
Alvestrand, H. \fIRFC 1766, Tags for the Identification of Languages\fR.
diff --git a/usr/src/man/man3sasl/sasl_global_listmech.3sasl b/usr/src/man/man3sasl/sasl_global_listmech.3sasl
index 90b3017b07..8c81e6777f 100644
--- a/usr/src/man/man3sasl/sasl_global_listmech.3sasl
+++ b/usr/src/man/man3sasl/sasl_global_listmech.3sasl
@@ -31,7 +31,7 @@ On failure, \fINULL\fR is returned. The SASL library is uninitialized.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -49,4 +49,4 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBattributes\fR(5)
+.BR attributes (7)
diff --git a/usr/src/man/man3sasl/sasl_idle.3sasl b/usr/src/man/man3sasl/sasl_idle.3sasl
index f70db6d503..65612babe7 100644
--- a/usr/src/man/man3sasl/sasl_idle.3sasl
+++ b/usr/src/man/man3sasl/sasl_idle.3sasl
@@ -58,7 +58,7 @@ Indicates no action was taken
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -76,4 +76,4 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBattributes\fR(5)
+.BR attributes (7)
diff --git a/usr/src/man/man3sasl/sasl_listmech.3sasl b/usr/src/man/man3sasl/sasl_listmech.3sasl
index 331c79496c..e4350cda5f 100644
--- a/usr/src/man/man3sasl/sasl_listmech.3sasl
+++ b/usr/src/man/man3sasl/sasl_listmech.3sasl
@@ -126,7 +126,7 @@ See \fBsasl_errors\fR(3SASL) for information on SASL error codes.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -144,4 +144,5 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBsasl_errors\fR(3SASL), \fBattributes\fR(5)
+.BR sasl_errors (3SASL),
+.BR attributes (7)
diff --git a/usr/src/man/man3sasl/sasl_log_t.3sasl b/usr/src/man/man3sasl/sasl_log_t.3sasl
index a3360c3bc0..0017d4bc44 100644
--- a/usr/src/man/man3sasl/sasl_log_t.3sasl
+++ b/usr/src/man/man3sasl/sasl_log_t.3sasl
@@ -145,7 +145,7 @@ See \fBsasl_errors\fR(3SASL) for information on SASL error codes.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -163,4 +163,6 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBsasl_errors\fR(3SASL), \fBsyslog\fR(3C), \fBattributes\fR(5)
+.BR syslog (3C),
+.BR sasl_errors (3SASL),
+.BR attributes (7)
diff --git a/usr/src/man/man3sasl/sasl_server_add_plugin.3sasl b/usr/src/man/man3sasl/sasl_server_add_plugin.3sasl
index 52abe11ae0..250f713998 100644
--- a/usr/src/man/man3sasl/sasl_server_add_plugin.3sasl
+++ b/usr/src/man/man3sasl/sasl_server_add_plugin.3sasl
@@ -82,7 +82,7 @@ See \fBsasl_errors\fR(3SASL) for information on other SASL error codes.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -100,4 +100,5 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBsasl_errors\fR(3SASL), \fBattributes\fR(5)
+.BR sasl_errors (3SASL),
+.BR attributes (7)
diff --git a/usr/src/man/man3sasl/sasl_server_init.3sasl b/usr/src/man/man3sasl/sasl_server_init.3sasl
index 98240dfd54..73fcb78e45 100644
--- a/usr/src/man/man3sasl/sasl_server_init.3sasl
+++ b/usr/src/man/man3sasl/sasl_server_init.3sasl
@@ -76,7 +76,7 @@ information on SASL error codes.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -94,7 +94,8 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBsasl_errors\fR(3SASL), \fBattributes\fR(5)
+.BR sasl_errors (3SASL),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3sasl/sasl_server_new.3sasl b/usr/src/man/man3sasl/sasl_server_new.3sasl
index e230ea6a38..038434fd19 100644
--- a/usr/src/man/man3sasl/sasl_server_new.3sasl
+++ b/usr/src/man/man3sasl/sasl_server_new.3sasl
@@ -174,7 +174,7 @@ information on SASL error codes.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -192,4 +192,6 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBgethostname\fR(3C), \fBsasl_errors\fR(3SASL), \fBattributes\fR(5)
+.BR gethostname (3C),
+.BR sasl_errors (3SASL),
+.BR attributes (7)
diff --git a/usr/src/man/man3sasl/sasl_server_plug_init_t.3sasl b/usr/src/man/man3sasl/sasl_server_plug_init_t.3sasl
index 2c89042455..a6d291edf4 100644
--- a/usr/src/man/man3sasl/sasl_server_plug_init_t.3sasl
+++ b/usr/src/man/man3sasl/sasl_server_plug_init_t.3sasl
@@ -91,7 +91,7 @@ See \fBsasl_errors\fR(3SASL) for information on SASL error codes.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -109,4 +109,5 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBsasl_errors\fR(3SASL), \fBattributes\fR(5)
+.BR sasl_errors (3SASL),
+.BR attributes (7)
diff --git a/usr/src/man/man3sasl/sasl_server_start.3sasl b/usr/src/man/man3sasl/sasl_server_start.3sasl
index 5c11c5bc98..764890feaf 100644
--- a/usr/src/man/man3sasl/sasl_server_start.3sasl
+++ b/usr/src/man/man3sasl/sasl_server_start.3sasl
@@ -120,7 +120,7 @@ information on SASL error codes.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -138,4 +138,6 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBgethostname\fR(3C), \fBsasl_errors\fR(3SASL), \fBattributes\fR(5)
+.BR gethostname (3C),
+.BR sasl_errors (3SASL),
+.BR attributes (7)
diff --git a/usr/src/man/man3sasl/sasl_server_step.3sasl b/usr/src/man/man3sasl/sasl_server_step.3sasl
index 5bcf890e86..299098e01a 100644
--- a/usr/src/man/man3sasl/sasl_server_step.3sasl
+++ b/usr/src/man/man3sasl/sasl_server_step.3sasl
@@ -98,7 +98,7 @@ information on SASL error codes.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -116,4 +116,5 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBsasl_errors\fR(3SASL), \fBattributes\fR(5)
+.BR sasl_errors (3SASL),
+.BR attributes (7)
diff --git a/usr/src/man/man3sasl/sasl_server_userdb_checkpass_t.3sasl b/usr/src/man/man3sasl/sasl_server_userdb_checkpass_t.3sasl
index 8524a3c889..0a417c4f6b 100644
--- a/usr/src/man/man3sasl/sasl_server_userdb_checkpass_t.3sasl
+++ b/usr/src/man/man3sasl/sasl_server_userdb_checkpass_t.3sasl
@@ -102,7 +102,7 @@ See \fBsasl_errors\fR(3SASL) for information on SASL error codes.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -120,4 +120,5 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBsasl_errors\fR(3SASL), \fBattributes\fR(5)
+.BR sasl_errors (3SASL),
+.BR attributes (7)
diff --git a/usr/src/man/man3sasl/sasl_server_userdb_setpass_t.3sasl b/usr/src/man/man3sasl/sasl_server_userdb_setpass_t.3sasl
index 87f5c30837..563c89e532 100644
--- a/usr/src/man/man3sasl/sasl_server_userdb_setpass_t.3sasl
+++ b/usr/src/man/man3sasl/sasl_server_userdb_setpass_t.3sasl
@@ -112,7 +112,7 @@ See \fBsasl_errors\fR(3SASL) for information on SASL error codes.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -130,4 +130,6 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBsasl_errors\fR(3SASL), \fBsasl_setpass\fR(3SASL), \fBattributes\fR(5)
+.BR sasl_errors (3SASL),
+.BR sasl_setpass (3SASL),
+.BR attributes (7)
diff --git a/usr/src/man/man3sasl/sasl_set_alloc.3sasl b/usr/src/man/man3sasl/sasl_set_alloc.3sasl
index 15ec8dd522..2638da0984 100644
--- a/usr/src/man/man3sasl/sasl_set_alloc.3sasl
+++ b/usr/src/man/man3sasl/sasl_set_alloc.3sasl
@@ -59,7 +59,7 @@ A pointer to a \fBrealloc()\fR function
.SH RETURN VALUES
\fBsasl_set_alloc()\fR has no return values.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -75,7 +75,7 @@ MT-Level Unsafe
.TE
.SH SEE ALSO
-\fBattributes\fR(5)
+.BR attributes (7)
.SH NOTES
While most of \fBlibsasl\fR is MT-Safe, \fBsasl_set_*\fR modifies the global
state and should be considered Unsafe.
diff --git a/usr/src/man/man3sasl/sasl_set_mutex.3sasl b/usr/src/man/man3sasl/sasl_set_mutex.3sasl
index 291b1e6cf3..195a3099e2 100644
--- a/usr/src/man/man3sasl/sasl_set_mutex.3sasl
+++ b/usr/src/man/man3sasl/sasl_set_mutex.3sasl
@@ -67,7 +67,7 @@ A pointer to the mutex unlock function
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -85,7 +85,7 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBattributes\fR(5)
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3sasl/sasl_seterror.3sasl b/usr/src/man/man3sasl/sasl_seterror.3sasl
index 8a7e498345..a73faf0fcb 100644
--- a/usr/src/man/man3sasl/sasl_seterror.3sasl
+++ b/usr/src/man/man3sasl/sasl_seterror.3sasl
@@ -76,7 +76,7 @@ A \fBsyslog\fR(3C) style format string.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -94,7 +94,9 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBsasl_errdetail\fR(3SASL), \fBsyslog\fR(3C), \fBattributes\fR(5)
+.BR syslog (3C),
+.BR sasl_errdetail (3SASL),
+.BR attributes (7)
.sp
.LP
Whistler, K. and Adams, G. \fIRFC 2482, Language Tagging in Unicode Plain
diff --git a/usr/src/man/man3sasl/sasl_setpass.3sasl b/usr/src/man/man3sasl/sasl_setpass.3sasl
index 70ccd1cef7..f3de40edec 100644
--- a/usr/src/man/man3sasl/sasl_setpass.3sasl
+++ b/usr/src/man/man3sasl/sasl_setpass.3sasl
@@ -112,7 +112,7 @@ See \fBsasl_errors\fR(3SASL) for information on SASL error codes.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -130,4 +130,6 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBsasl_errors\fR(3SASL), \fBsasl_getprop\fR(3SASL), \fBattributes\fR(5)
+.BR sasl_errors (3SASL),
+.BR sasl_getprop (3SASL),
+.BR attributes (7)
diff --git a/usr/src/man/man3sasl/sasl_setprop.3sasl b/usr/src/man/man3sasl/sasl_setprop.3sasl
index e3b6e34301..1cfa3466e7 100644
--- a/usr/src/man/man3sasl/sasl_setprop.3sasl
+++ b/usr/src/man/man3sasl/sasl_setprop.3sasl
@@ -133,7 +133,7 @@ See \fBsasl_errors\fR(3SASL) for information on SASL error codes.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -151,4 +151,5 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBsasl_errors\fR(3SASL), \fBattributes\fR(5)
+.BR sasl_errors (3SASL),
+.BR attributes (7)
diff --git a/usr/src/man/man3sasl/sasl_utf8verify.3sasl b/usr/src/man/man3sasl/sasl_utf8verify.3sasl
index a41407d05c..a5b13f4453 100644
--- a/usr/src/man/man3sasl/sasl_utf8verify.3sasl
+++ b/usr/src/man/man3sasl/sasl_utf8verify.3sasl
@@ -69,7 +69,7 @@ There was invalid UTF-8, or an error was found.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -87,4 +87,4 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBattributes\fR(5)
+.BR attributes (7)
diff --git a/usr/src/man/man3sasl/sasl_verifyfile_t.3sasl b/usr/src/man/man3sasl/sasl_verifyfile_t.3sasl
index 15819ade18..bb73fa4094 100644
--- a/usr/src/man/man3sasl/sasl_verifyfile_t.3sasl
+++ b/usr/src/man/man3sasl/sasl_verifyfile_t.3sasl
@@ -82,7 +82,7 @@ See \fBsasl_errors\fR(3SASL) for information on SASL error codes.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -100,4 +100,5 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBsasl_errors\fR(3SASL), \fBattributes\fR(5)
+.BR sasl_errors (3SASL),
+.BR attributes (7)
diff --git a/usr/src/man/man3sasl/sasl_version.3sasl b/usr/src/man/man3sasl/sasl_version.3sasl
index 397d16c8dd..fc6315652e 100644
--- a/usr/src/man/man3sasl/sasl_version.3sasl
+++ b/usr/src/man/man3sasl/sasl_version.3sasl
@@ -41,7 +41,7 @@ A vendor-defined represetation of the version number.
.SH RETURN VALUES
The \fBsasl_version()\fR interface has no return values.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -57,4 +57,4 @@ MT-Level MT-Safe
.TE
.SH SEE ALSO
-\fBattributes\fR(5)
+.BR attributes (7)
diff --git a/usr/src/man/man3scf/scf_entry_create.3scf b/usr/src/man/man3scf/scf_entry_create.3scf
index 5650d8646d..4e83935131 100644
--- a/usr/src/man/man3scf/scf_entry_create.3scf
+++ b/usr/src/man/man3scf/scf_entry_create.3scf
@@ -56,7 +56,7 @@ The \fBscf_entry_handle()\fR function retrieves the handle associated with
.LP
A transaction entry represents a single action on a property in a property
group. If an entry is added to a transaction using
-\fBscf_transaction_property_new\fR(3SCF),
+.BR scf_transaction_property_new (3SCF),
\fBscf_transaction_property_change\fR(3SCF), or
\fBscf_transaction_property_change_type\fR(3SCF), \fBscf_entry_add_value()\fR
can be called zero or more times to set up the set of values for that property.
@@ -187,7 +187,7 @@ The \fBscf_error\fR(3SCF) function can be used to retrieve the error value.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -205,9 +205,12 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibscf\fR(3LIB), \fBscf_error\fR(3SCF), \fBscf_transaction_commit\fR(3SCF),
-\fBscf_transaction_property_change\fR(3SCF),
-\fBscf_transaction_property_change_type\fR(3SCF),
-\fBscf_transaction_property_delete\fR(3SCF),
-\fBscf_transaction_property_new\fR(3SCF), \fBscf_transaction_reset\fR(3SCF),
-\fBattributes\fR(5)
+.BR libscf (3LIB),
+.BR scf_error (3SCF),
+.BR scf_transaction_commit (3SCF),
+.BR scf_transaction_property_change (3SCF),
+.BR scf_transaction_property_change_type (3SCF),
+.BR scf_transaction_property_delete (3SCF),
+.BR scf_transaction_property_new (3SCF),
+.BR scf_transaction_reset (3SCF),
+.BR attributes (7)
diff --git a/usr/src/man/man3scf/scf_error.3scf b/usr/src/man/man3scf/scf_error.3scf
index d7aa4eafa4..4e328df402 100644
--- a/usr/src/man/man3scf/scf_error.3scf
+++ b/usr/src/man/man3scf/scf_error.3scf
@@ -42,7 +42,7 @@ The error values are as follows:
.ad
.sp .6
.RS 4n
-The storage mechanism that the repository server (\fBsvc.configd\fR(1M)) chose
+The storage mechanism that the repository server (\fBsvc.configd\fR(8)) chose
for the operation denied access.
.RE
@@ -56,7 +56,7 @@ for the operation denied access.
The storage mechanism that the repository server (\fBsvc.configd\fR) chose for
the operation is read-only. For the local filesystem storage mechanism
(currently \fB/etc/svc/repository.db\fR), this usually occurs because the
-filesystem that contains it is mounted read-only. See \fBmount\fR(1M)
+filesystem that contains it is mounted read-only. See \fBmount\fR(8)
.RE
.sp
@@ -227,7 +227,7 @@ Cannot use unset value.
.sp .6
.RS 4n
The user lacks sufficient authority to conduct the requested operation. See
-\fBsmf_security\fR(5).
+\fBsmf_security\fR(7).
.RE
.sp
@@ -260,7 +260,7 @@ not fail.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -278,5 +278,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBsvc.configd\fR(1M), \fBlibscf\fR(3LIB), \fBattributes\fR(5),
-\fBsvc.configd\fR(1M)
+.BR libscf (3LIB),
+.BR attributes (7),
+.BR svc.configd (8),
+.BR svc.configd (8)
diff --git a/usr/src/man/man3scf/scf_handle_create.3scf b/usr/src/man/man3scf/scf_handle_create.3scf
index d751808b40..66d7e2cf34 100644
--- a/usr/src/man/man3scf/scf_handle_create.3scf
+++ b/usr/src/man/man3scf/scf_handle_create.3scf
@@ -70,7 +70,7 @@ invalid values will not cause errors prior to the call to
.sp
.LP
The \fBscf_handle_bind()\fR function binds the handle to a running
-\fBsvc.configd\fR(1M) daemon, using the current decorations to modify the
+\fBsvc.configd\fR(8) daemon, using the current decorations to modify the
connection. All states derived from the handle are reset immediately after a
successful binding.
.sp
@@ -262,7 +262,7 @@ The \fBscf_error\fR(3SCF) function can be used to retrieve the error value.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -286,4 +286,6 @@ handles cannot be mixed, as this will lead to an
.SH SEE ALSO
.sp
.LP
-\fBlibscf\fR(3LIB), \fBscf_error\fR(3SCF), \fBattributes\fR(5)
+.BR libscf (3LIB),
+.BR scf_error (3SCF),
+.BR attributes (7)
diff --git a/usr/src/man/man3scf/scf_handle_decode_fmri.3scf b/usr/src/man/man3scf/scf_handle_decode_fmri.3scf
index d5b4f60a35..a2f4ac2bc7 100644
--- a/usr/src/man/man3scf/scf_handle_decode_fmri.3scf
+++ b/usr/src/man/man3scf/scf_handle_decode_fmri.3scf
@@ -112,7 +112,7 @@ The \fBscf_handle_decode_fmri()\fR function will fail if:
.ad
.sp .6
.RS 4n
-The storage mechanism that the repository server (\fBsvc.configd\fR(1M))
+The storage mechanism that the repository server (\fBsvc.configd\fR(8))
chose for the operation denied access.
.RE
@@ -267,7 +267,7 @@ The \fBscf_error\fR(3SCF) function can be used to retrieve the error value.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -285,4 +285,6 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibscf\fR(3LIB), \fBscf_error\fR(3SCF), \fBattributes\fR(5)
+.BR libscf (3LIB),
+.BR scf_error (3SCF),
+.BR attributes (7)
diff --git a/usr/src/man/man3scf/scf_instance_create.3scf b/usr/src/man/man3scf/scf_instance_create.3scf
index 76a76a5e46..6883f782c1 100644
--- a/usr/src/man/man3scf/scf_instance_create.3scf
+++ b/usr/src/man/man3scf/scf_instance_create.3scf
@@ -87,7 +87,7 @@ of the property groups necessary to run the instance. See
.sp
.LP
-See \fBsmf\fR(5) for information about instances.
+See \fBsmf\fR(7) for information about instances.
.sp
.LP
An \fBscf_instance_t\fR is an opaque handle that can be set to a single
@@ -300,7 +300,7 @@ The \fBscf_service_get_instance()\fR function will fail if:
\fB\fBSCF_ERROR_BACKEND_ACCESS\fR\fR
.ad
.RS 28n
-The storage mechanism that the repository server (\fBsvc.configd\fR(1M))
+The storage mechanism that the repository server (\fBsvc.configd\fR(8))
chose for the operation denied access.
.RE
@@ -457,7 +457,7 @@ The server does not have adequate resources for a new instance handle.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -475,10 +475,15 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibscf\fR(3LIB), \fBscf_error\fR(3SCF), \fBscf_iter_instance_pgs\fR(3SCF),
-\fBscf_iter_instance_pgs_typed\fR(3SCF),
-\fBscf_iter_instance_snapshots\fR(3SCF), \fBscf_pg_create\fR(3SCF),
-\fBscf_snapshot_create\fR(3SCF), \fBattributes\fR(5), \fBsmf\fR(5)
+.BR libscf (3LIB),
+.BR scf_error (3SCF),
+.BR scf_iter_instance_pgs (3SCF),
+.BR scf_iter_instance_pgs_typed (3SCF),
+.BR scf_iter_instance_snapshots (3SCF),
+.BR scf_pg_create (3SCF),
+.BR scf_snapshot_create (3SCF),
+.BR attributes (7),
+.BR smf (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3scf/scf_iter_create.3scf b/usr/src/man/man3scf/scf_iter_create.3scf
index 186496941c..2a3b4111c8 100644
--- a/usr/src/man/man3scf/scf_iter_create.3scf
+++ b/usr/src/man/man3scf/scf_iter_create.3scf
@@ -539,7 +539,7 @@ scf_iter_destroy(inst_iter);
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -557,5 +557,8 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibscf\fR(3LIB), \fBscf_entry_add_value\fR(3SCF), \fBscf_error\fR(3SCF),
-\fBscf_handle_create\fR(3SCF), \fBattributes\fR(5)
+.BR libscf (3LIB),
+.BR scf_entry_add_value (3SCF),
+.BR scf_error (3SCF),
+.BR scf_handle_create (3SCF),
+.BR attributes (7)
diff --git a/usr/src/man/man3scf/scf_limit.3scf b/usr/src/man/man3scf/scf_limit.3scf
index 59f39e9559..050e32a055 100644
--- a/usr/src/man/man3scf/scf_limit.3scf
+++ b/usr/src/man/man3scf/scf_limit.3scf
@@ -96,7 +96,7 @@ The \fBscf_error\fR(3SCF) function can be used to retrieve the error value.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -114,4 +114,6 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBlibscf\fR(3LIB), \fBscf_error\fR(3SCF), \fBattributes\fR(5)
+.BR libscf (3LIB),
+.BR scf_error (3SCF),
+.BR attributes (7)
diff --git a/usr/src/man/man3scf/scf_pg_create.3scf b/usr/src/man/man3scf/scf_pg_create.3scf
index ba7bddb440..46de885404 100644
--- a/usr/src/man/man3scf/scf_pg_create.3scf
+++ b/usr/src/man/man3scf/scf_pg_create.3scf
@@ -164,7 +164,7 @@ The \fBscf_pg_get_flags()\fR function retrieves the flags for the property
group to which \fIpg\fR is set. If \fBSCF_PG_FLAG_NONPERSISTENT\fR is set, the
property group is not included in snapshots and will lose its contents upon
system shutdown or reboot. Non-persistent property groups are mainly used for
-smf-internal state. See \fBsmf\fR(5).
+smf-internal state. See \fBsmf\fR(7).
.sp
.LP
The \fBscf_pg_update()\fR function ensures that \fIpg\fR is attached to the
@@ -363,7 +363,7 @@ The \fBscf_service_get_pg()\fR, \fBscf_instance_get_pg()\fR,
.ad
.sp .6
.RS 4n
-The storage mechanism that the repository server (\fBsvc.configd\fR(1M))
+The storage mechanism that the repository server (\fBsvc.configd\fR(8))
chose for the operation denied access.
.RE
@@ -784,7 +784,7 @@ scf_property_t *out) {
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -802,7 +802,13 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibscf\fR(3LIB), \fBscf_error\fR(3SCF), \fBscf_handle_decode_fmri\fR(3SCF),
-\fBscf_instance_create\fR(3SCF), \fBscf_pg_to_fmri\fR(3SCF),
-\fBscf_service_create\fR(3SCF), \fBscf_snaplevel_create\fR(3SCF),
-\fBscf_transaction_create\fR(3SCF), \fBattributes\fR(5), \fBsmf\fR(5)
+.BR libscf (3LIB),
+.BR scf_error (3SCF),
+.BR scf_handle_decode_fmri (3SCF),
+.BR scf_instance_create (3SCF),
+.BR scf_pg_to_fmri (3SCF),
+.BR scf_service_create (3SCF),
+.BR scf_snaplevel_create (3SCF),
+.BR scf_transaction_create (3SCF),
+.BR attributes (7),
+.BR smf (7)
diff --git a/usr/src/man/man3scf/scf_property_create.3scf b/usr/src/man/man3scf/scf_property_create.3scf
index f6a9b7b9ef..dd92e91655 100644
--- a/usr/src/man/man3scf/scf_property_create.3scf
+++ b/usr/src/man/man3scf/scf_property_create.3scf
@@ -258,7 +258,7 @@ The \fBscf_pg_get_property()\fR function will fail if:
.ad
.sp .6
.RS 4n
-The storage mechanism that the repository server (\fBsvc.configd\fR(1M))
+The storage mechanism that the repository server (\fBsvc.configd\fR(8))
chose for the operation denied access.
.RE
@@ -403,7 +403,7 @@ The \fBscf_error\fR(3SCF) function can be used to retrieve the error value.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -421,7 +421,12 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibscf\fR(3LIB), \fBscf_error\fR(3SCF), \fBscf_handle_decode_fmri\fR(3SCF),
-\fBscf_iter_property_values\fR(3SCF), \fBscf_pg_create\fR(3SCF),
-\fBscf_property_to_fmri\fR(3SCF), \fBscf_transaction_create\fR(3SCF),
-\fBscf_value_create\fR(3SCF), \fBattributes\fR(5)
+.BR libscf (3LIB),
+.BR scf_error (3SCF),
+.BR scf_handle_decode_fmri (3SCF),
+.BR scf_iter_property_values (3SCF),
+.BR scf_pg_create (3SCF),
+.BR scf_property_to_fmri (3SCF),
+.BR scf_transaction_create (3SCF),
+.BR scf_value_create (3SCF),
+.BR attributes (7)
diff --git a/usr/src/man/man3scf/scf_scope_create.3scf b/usr/src/man/man3scf/scf_scope_create.3scf
index cb1ddacc07..c6897e7a1c 100644
--- a/usr/src/man/man3scf/scf_scope_create.3scf
+++ b/usr/src/man/man3scf/scf_scope_create.3scf
@@ -222,7 +222,7 @@ The \fBscf_error\fR(3SCF) function can be used to retrieve the error value.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -240,7 +240,12 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibscf\fR(3LIB), \fBscf_error\fR(3SCF), \fBscf_handle_decode_fmri\fR(3SCF),
-\fBscf_iter_handle_scopes\fR(3SCF), \fBscf_iter_next_scope\fR(3SCF),
-\fBscf_iter_scope_services\fR(3SCF), \fBscf_scope_to_fmri\fR(3SCF),
-\fBscf_service_create\fR(3SCF), \fBattributes\fR(5)
+.BR libscf (3LIB),
+.BR scf_error (3SCF),
+.BR scf_handle_decode_fmri (3SCF),
+.BR scf_iter_handle_scopes (3SCF),
+.BR scf_iter_next_scope (3SCF),
+.BR scf_iter_scope_services (3SCF),
+.BR scf_scope_to_fmri (3SCF),
+.BR scf_service_create (3SCF),
+.BR attributes (7)
diff --git a/usr/src/man/man3scf/scf_service_create.3scf b/usr/src/man/man3scf/scf_service_create.3scf
index 9776694f76..c44c8506b6 100644
--- a/usr/src/man/man3scf/scf_service_create.3scf
+++ b/usr/src/man/man3scf/scf_service_create.3scf
@@ -264,7 +264,7 @@ The \fBscf_scope_get_service()\fR function will fail if:
\fB\fBSCF_ERROR_BACKEND_ACCESS\fR\fR
.ad
.RS 28n
-The storage mechanism that the repository server (\fBsvc.configd\fR(1M))
+The storage mechanism that the repository server (\fBsvc.configd\fR(8))
chose for the operation denied access.
.RE
@@ -401,7 +401,7 @@ The \fBscf_error\fR(3SCF) function can be used to retrieve the error value.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -419,8 +419,14 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibscf\fR(3LIB), \fBscf_error\fR(3SCF), \fBscf_handle_decode_fmri\fR(3SCF),
-\fBscf_iter_service_pgs\fR(3SCF), \fBscf_iter_service_pgs_typed\fR(3SCF),
-\fBscf_instance_create\fR(3SCF), \fBscf_pg_create\fR(3SCF),
-\fBscf_scope_create\fR(3SCF), \fBscf_service_to_fmri\fR(3SCF),
-\fBattributes\fR(5), \fBsmf\fR(5)
+.BR libscf (3LIB),
+.BR scf_error (3SCF),
+.BR scf_handle_decode_fmri (3SCF),
+.BR scf_instance_create (3SCF),
+.BR scf_iter_service_pgs (3SCF),
+.BR scf_iter_service_pgs_typed (3SCF),
+.BR scf_pg_create (3SCF),
+.BR scf_scope_create (3SCF),
+.BR scf_service_to_fmri (3SCF),
+.BR attributes (7),
+.BR smf (7)
diff --git a/usr/src/man/man3scf/scf_simple_prop_get.3scf b/usr/src/man/man3scf/scf_simple_prop_get.3scf
index 1fdcc0e29f..aa578eefd0 100644
--- a/usr/src/man/man3scf/scf_simple_prop_get.3scf
+++ b/usr/src/man/man3scf/scf_simple_prop_get.3scf
@@ -506,7 +506,7 @@ scf_simple_app_props_free(appprops);
.in -2
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -522,4 +522,6 @@ MT-Level Safe
.TE
.SH SEE ALSO
-\fBlibscf\fR(3LIB), \fBscf_error\fR(3SCF), \fBattributes\fR(5)
+.BR libscf (3LIB),
+.BR scf_error (3SCF),
+.BR attributes (7)
diff --git a/usr/src/man/man3scf/scf_simple_walk_instances.3scf b/usr/src/man/man3scf/scf_simple_walk_instances.3scf
index 5fe2759df3..354fc50f33 100644
--- a/usr/src/man/man3scf/scf_simple_walk_instances.3scf
+++ b/usr/src/man/man3scf/scf_simple_walk_instances.3scf
@@ -90,7 +90,7 @@ Otherwise, it returns -1.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -108,4 +108,5 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBlibscf\fR(3LIB), \fBattributes\fR(5)
+.BR libscf (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3scf/scf_snaplevel_create.3scf b/usr/src/man/man3scf/scf_snaplevel_create.3scf
index 90662d5e0b..1842fe246e 100644
--- a/usr/src/man/man3scf/scf_snaplevel_create.3scf
+++ b/usr/src/man/man3scf/scf_snaplevel_create.3scf
@@ -358,7 +358,7 @@ The \fBscf_error\fR(3SCF) function can be used to retrieve the error value.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -376,6 +376,9 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibscf\fR(3LIB), \fBscf_error\fR(3SCF), \fBscf_iter_snaplevel_pgs\fR(3SCF),
-\fBscf_iter_snaplevel_pgs_typed\fR(3SCF), \fBscf_snaplevel_get_pg\fR(3SCF),
-\fBattributes\fR(5)
+.BR libscf (3LIB),
+.BR scf_error (3SCF),
+.BR scf_iter_snaplevel_pgs (3SCF),
+.BR scf_iter_snaplevel_pgs_typed (3SCF),
+.BR scf_snaplevel_get_pg (3SCF),
+.BR attributes (7)
diff --git a/usr/src/man/man3scf/scf_snapshot_create.3scf b/usr/src/man/man3scf/scf_snapshot_create.3scf
index 909f33c636..e6ae8d6251 100644
--- a/usr/src/man/man3scf/scf_snapshot_create.3scf
+++ b/usr/src/man/man3scf/scf_snapshot_create.3scf
@@ -55,7 +55,7 @@ cc [ \fIflag\fR\&.\|.\|. ] \fIfile\fR\&.\|.\|. \fB-lscf\fR [ \fIlibrary\fR\&.\|.
.LP
A snapshot is an unchanging picture of the full set of property groups
associated with an instance. Snapshots are automatically created and managed by
-the Service Management Facility. See \fBsmf\fR(5).
+the Service Management Facility. See \fBsmf\fR(7).
.sp
.LP
A snapshot consists of a set of snaplevels, each of which holds copies of the
@@ -276,7 +276,7 @@ The \fBscf_instance_get_snapshot()\fR function will fail if:
.ad
.sp .6
.RS 4n
-The storage mechanism that the repository server (\fBsvc.configd\fR(1M))
+The storage mechanism that the repository server (\fBsvc.configd\fR(8))
chose for the operation denied access.
.RE
@@ -375,7 +375,7 @@ The instance is not set.
The \fBscf_error\fR(3SCF) function can be used to retrieve the error value.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -392,6 +392,9 @@ MT-Level Safe
.SH SEE ALSO
.LP
-\fBlibscf\fR(3LIB), \fBscf_error\fR(3SCF),
-\fBscf_iter_instance_snapshots\fR(3SCF),
-\fBscf_snapshot_get_base_snaplevel\fR(3SCF), \fBattributes\fR(5), \fBsmf\fR(5)
+.BR libscf (3LIB),
+.BR scf_error (3SCF),
+.BR scf_iter_instance_snapshots (3SCF),
+.BR scf_snapshot_get_base_snaplevel (3SCF),
+.BR attributes (7),
+.BR smf (7)
diff --git a/usr/src/man/man3scf/scf_tmpl_pg_create.3scf b/usr/src/man/man3scf/scf_tmpl_pg_create.3scf
index 510c6cd47e..6a9d3473ef 100644
--- a/usr/src/man/man3scf/scf_tmpl_pg_create.3scf
+++ b/usr/src/man/man3scf/scf_tmpl_pg_create.3scf
@@ -70,7 +70,7 @@ FMRI is specified, the current properties are used.
.LP
By default, these functions also explore template data defined by the service
or instance itself, the service's restarter, and global template data. See
-\fBsmf_template\fR(5) for more information about this composition.
+\fBsmf_template\fR(7) for more information about this composition.
.sp
.LP
Once retrieved, the \fBscf_pg_tmpl_t\fR can be explored using the
@@ -143,7 +143,7 @@ The \fBscf_tmpl_get_by_pg()\fR, \fBscf_tmpl_get_by_pg_name()\fR, and
.ad
.sp .6
.RS 4n
-The storage mechanism that the repository server (\fBsvc.configd\fR(1M)) chose
+The storage mechanism that the repository server (\fBsvc.configd\fR(8)) chose
for the operation denied access.
.RE
@@ -285,7 +285,7 @@ There is no memory available.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -303,5 +303,8 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBsvc.configd\fR(1M), \fBscf_tmpl_pg_name\fR(3SCF),
-\fBscf_tmpl_prop_create\fR(3SCF), \fBattributes\fR(5), \fBsmf_template\fR(5)
+.BR scf_tmpl_pg_name (3SCF),
+.BR scf_tmpl_prop_create (3SCF),
+.BR attributes (7),
+.BR smf_template (7),
+.BR svc.configd (8)
diff --git a/usr/src/man/man3scf/scf_tmpl_pg_name.3scf b/usr/src/man/man3scf/scf_tmpl_pg_name.3scf
index 37cbc21266..d088674953 100644
--- a/usr/src/man/man3scf/scf_tmpl_pg_name.3scf
+++ b/usr/src/man/man3scf/scf_tmpl_pg_name.3scf
@@ -58,14 +58,14 @@ one of the \fBscf_tmpl_pg_create\fR(3SCF) suite of functions.
.LP
The \fBscf_tmpl_pg_name()\fR function retrieves the name of the property group
template and place it in *\fIout\fR. If the property group name is implicitly
-wildcarded (see \fBsmf_template\fR(5)) in the template, this function will
+wildcarded (see \fBsmf_template\fR(7)) in the template, this function will
return a string containing \fBSCF_TMPL_WILDCARD\fR ("*") in *\fIout\fR. The
caller is responsible for freeing the *\fIout\fR buffer on success.
.sp
.LP
The \fBscf_tmpl_pg_type()\fR function will retrieve the type of the property
group template and place it in *\fIout\fR. If the property group type is
-implicitly wildcarded (see \fBsmf_template\fR(5)) in the template, this
+implicitly wildcarded (see \fBsmf_template\fR(7)) in the template, this
function will return a string containing \fBSCF_TMPL_WILDCARD\fR ("*") in
*\fIout\fR. The caller is responsible for freeing the *\fIout\fR buffer on
success.
@@ -126,7 +126,7 @@ if:
.ad
.sp .6
.RS 4n
-The storage mechanism that the repository server (\fBsvc.configd\fR(1M)) chose
+The storage mechanism that the repository server (\fBsvc.configd\fR(8)) chose
for the operation denied access.
.RE
@@ -245,7 +245,7 @@ The locale string is too long.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -263,5 +263,8 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBsvc.configd\fR(1M), \fBscf_tmpl_pg_create\fR(3SCF), \fBsetlocale\fR(3C),
-\fBattributes\fR(5), \fBsmf_template\fR(5)
+.BR setlocale (3C),
+.BR scf_tmpl_pg_create (3SCF),
+.BR attributes (7),
+.BR smf_template (7),
+.BR svc.configd (8)
diff --git a/usr/src/man/man3scf/scf_tmpl_prop_create.3scf b/usr/src/man/man3scf/scf_tmpl_prop_create.3scf
index 1235b1f7e2..936e6e0977 100644
--- a/usr/src/man/man3scf/scf_tmpl_prop_create.3scf
+++ b/usr/src/man/man3scf/scf_tmpl_prop_create.3scf
@@ -91,7 +91,7 @@ fail if:
.ad
.sp .6
.RS 4n
-The storage mechanism that the repository server (\fBsvc.configd\fR(1M)) chose
+The storage mechanism that the repository server (\fBsvc.configd\fR(8)) chose
for the operation denied access.
.RE
@@ -242,7 +242,7 @@ There is no memory available.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -260,5 +260,8 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBsvc.configd\fR(1M), \fBscf_tmpl_pg_create\fR(3SCF),
-\fBscf_tmpl_prop_name\fR(3SCF), \fBattributes\fR(5), \fBsmf_template\fR(5)
+.BR scf_tmpl_pg_create (3SCF),
+.BR scf_tmpl_prop_name (3SCF),
+.BR attributes (7),
+.BR smf_template (7),
+.BR svc.configd (8)
diff --git a/usr/src/man/man3scf/scf_tmpl_prop_name.3scf b/usr/src/man/man3scf/scf_tmpl_prop_name.3scf
index 4cda998bbb..afbd8f2602 100644
--- a/usr/src/man/man3scf/scf_tmpl_prop_name.3scf
+++ b/usr/src/man/man3scf/scf_tmpl_prop_name.3scf
@@ -417,7 +417,7 @@ functions will fail if:
.ad
.sp .6
.RS 4n
-The storage mechanism that the repository server (\fBsvc.configd\fR(1M)) chose
+The storage mechanism that the repository server (\fBsvc.configd\fR(8)) chose
for the operation denied access.
.RE
@@ -617,7 +617,7 @@ A range with \fImin\fR value > \fImax\fR value is found.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -635,6 +635,10 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBsvc.configd\fR(1M), \fBscf_tmpl_prop_create\fR(3SCF), \fBsetlocale\fR(3C),
-\fBstrtoll\fR(3C), \fBstrtoull\fR(3C), \fBattributes\fR(5),
-\fBsmf_template\fR(5)
+.BR setlocale (3C),
+.BR strtoll (3C),
+.BR strtoull (3C),
+.BR scf_tmpl_prop_create (3SCF),
+.BR attributes (7),
+.BR smf_template (7),
+.BR svc.configd (8)
diff --git a/usr/src/man/man3scf/scf_tmpl_validate_fmri.3scf b/usr/src/man/man3scf/scf_tmpl_validate_fmri.3scf
index eb02188581..17916384d2 100644
--- a/usr/src/man/man3scf/scf_tmpl_validate_fmri.3scf
+++ b/usr/src/man/man3scf/scf_tmpl_validate_fmri.3scf
@@ -101,7 +101,7 @@ argument. If \fIflags\fR includes \fBSCF_TMPL_VALIDATE_FLAG_CURRENT\fR, the
.LP
By default, these functions also explore template data defined by the service
or instance itself, the service's restarter, and global template data. See
-\fBsmf_template\fR(5) for more information about this composition.
+\fBsmf_template\fR(7) for more information about this composition.
.sp
.LP
An instance FMRI is required, and FMRIs that specify other entities (for
@@ -426,7 +426,7 @@ FMRI of the source of the template that was violated. This string is freed by
.LP
The \fBscf_tmpl_error_pg_tmpl()\fR function retrieves strings with the name and
type of the property group template that was violated. If the property group
-name or type was implicitly wildcarded (see \fBsmf_template\fR(5)) in the
+name or type was implicitly wildcarded (see \fBsmf_template\fR(7)) in the
template, this function returns a string containing \fBSCF_TMPL_WILDCARD\fR
("*"). These strings are freed by \fBscf_tmpl_errors_destroy()\fR.
.sp
@@ -438,7 +438,7 @@ of the property group that was violated. These strings are freed by
.LP
The \fBscf_tmpl_error_prop_tmpl()\fR function retrieves strings with the name
and type of the property template that was violated. If the property type was
-implicitly wildcarded (see \fBsmf_template\fR(5)) in the template, this
+implicitly wildcarded (see \fBsmf_template\fR(7)) in the template, this
function returns a string containing \fBSCF_TMPL_WILDCARD\fR ("*"). These
strings are freed by \fBscf_tmpl_errors_destroy()\fR.
.sp
@@ -489,7 +489,7 @@ The \fBscf_tmpl_validate_fmri()\fR function will fail if:
.ad
.sp .6
.RS 4n
-The storage mechanism that the repository server (\fBsvc.configd\fR(1M)) chose
+The storage mechanism that the repository server (\fBsvc.configd\fR(8)) chose
for the operation denied access.
.RE
@@ -639,7 +639,7 @@ supplied.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -657,5 +657,7 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBsvc.configd\fR(1M), \fBscf_tmpl_value_in_constraint\fR(3SCF),
-\fBattributes\fR(5), \fBsmf_template\fR(5)
+.BR scf_tmpl_value_in_constraint (3SCF),
+.BR attributes (7),
+.BR smf_template (7),
+.BR svc.configd (8)
diff --git a/usr/src/man/man3scf/scf_transaction_create.3scf b/usr/src/man/man3scf/scf_transaction_create.3scf
index b895683679..7202a804cd 100644
--- a/usr/src/man/man3scf/scf_transaction_create.3scf
+++ b/usr/src/man/man3scf/scf_transaction_create.3scf
@@ -419,7 +419,7 @@ and \fBscf_transaction_property_change_type()\fR functions will fail if:
.ad
.sp .6
.RS 4n
-The storage mechanism that the repository server (\fBsvc.configd\fR(1M))
+The storage mechanism that the repository server (\fBsvc.configd\fR(8))
chose for the operation denied access.
.RE
@@ -736,7 +736,7 @@ scf_value_destroy(v1);
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -754,5 +754,8 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibscf\fR(3LIB), \fBscf_value_reset\fR(3SCF), \fBscf_error\fR(3SCF),
-\fBscf_pg_create\fR(3SCF), \fBattributes\fR(5)
+.BR libscf (3LIB),
+.BR scf_error (3SCF),
+.BR scf_pg_create (3SCF),
+.BR scf_value_reset (3SCF),
+.BR attributes (7)
diff --git a/usr/src/man/man3scf/scf_value_create.3scf b/usr/src/man/man3scf/scf_value_create.3scf
index 10cec46cd0..38dc7a3e62 100644
--- a/usr/src/man/man3scf/scf_value_create.3scf
+++ b/usr/src/man/man3scf/scf_value_create.3scf
@@ -388,7 +388,7 @@ base-type chain.
.LP
The \fBscf_error\fR(3SCF) function can be used to retrieve the error value.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -404,5 +404,7 @@ MT-Level Safe
.TE
.SH SEE ALSO
-\fBlibscf\fR(3LIB), \fBscf_entry_add_value\fR(3SCF), \fBscf_error\fR(3SCF),
-\fBattributes\fR(5)
+.BR libscf (3LIB),
+.BR scf_entry_add_value (3SCF),
+.BR scf_error (3SCF),
+.BR attributes (7)
diff --git a/usr/src/man/man3scf/smf_enable_instance.3scf b/usr/src/man/man3scf/smf_enable_instance.3scf
index 9333b16265..98d859bfde 100644
--- a/usr/src/man/man3scf/smf_enable_instance.3scf
+++ b/usr/src/man/man3scf/smf_enable_instance.3scf
@@ -75,7 +75,7 @@ flags are to be use.
.LP
The \fBsmf_disable_instance()\fR function places the service instance specified
by \fIinstance\fR FMRI in the disabled state and triggers the stop method (see
-\fBsvc.startd\fR(1M)). If \fIflags\fR is \fBSMF_TEMPORARY\fR, the disabling of
+\fBsvc.startd\fR(8)). If \fIflags\fR is \fBSMF_TEMPORARY\fR, the disabling of
the service instance is a temporary change, lasting only for the lifetime of
the current system instance. The \fIflags\fR argument is set to \fB0\fR if no
flags are to be use.
@@ -208,7 +208,7 @@ The \fBsmf_maintain_instance()\fR, \fBsmf_refresh_instance()\fR,
.ad
.sp .6
.RS 4n
-User does not have proper authorizations. See \fBsmf_security\fR(5).
+User does not have proper authorizations. See \fBsmf_security\fR(7).
.RE
.sp
@@ -249,7 +249,7 @@ The function is called on an instance in an inappropriate state.
.LP
The \fBscf_error\fR(3SCF) function can be used to retrieve the error value.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -265,5 +265,9 @@ MT-Level Safe
.TE
.SH SEE ALSO
-\fBsvc.startd\fR(1M), \fBlibscf\fR(3LIB), \fBscf_error\fR(3SCF),
-\fBattributes\fR(5), \fBsmf_security\fR(5), \fBsvcs\fR(1)
+.BR svcs (1),
+.BR libscf (3LIB),
+.BR scf_error (3SCF),
+.BR attributes (7),
+.BR smf_security (7),
+.BR svc.startd (8)
diff --git a/usr/src/man/man3sec/acl_check.3sec b/usr/src/man/man3sec/acl_check.3sec
index 6b866b4192..ba938f5763 100644
--- a/usr/src/man/man3sec/acl_check.3sec
+++ b/usr/src/man/man3sec/acl_check.3sec
@@ -116,7 +116,7 @@ Inheritance flags are only allowed for ACLs on directories.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -134,5 +134,8 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBacl\fR(2), \fBaclcheck\fR(3SEC), \fBaclsort\fR(3SEC), \fBacl\fR(5),
-\fBattributes\fR(5)
+.BR acl (2),
+.BR aclcheck (3SEC),
+.BR aclsort (3SEC),
+.BR acl (7),
+.BR attributes (7)
diff --git a/usr/src/man/man3sec/acl_free.3sec b/usr/src/man/man3sec/acl_free.3sec
index b6da135a1b..03899796c8 100644
--- a/usr/src/man/man3sec/acl_free.3sec
+++ b/usr/src/man/man3sec/acl_free.3sec
@@ -27,7 +27,7 @@ The \fBacl_free()\fR function does not return a value.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -45,4 +45,6 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBacl_get\fR(3SEC), \fBacl\fR(5), \fBattributes\fR(5)
+.BR acl_get (3SEC),
+.BR acl (7),
+.BR attributes (7)
diff --git a/usr/src/man/man3sec/acl_get.3sec b/usr/src/man/man3sec/acl_get.3sec
index 4d6bb38bab..738416d3fd 100644
--- a/usr/src/man/man3sec/acl_get.3sec
+++ b/usr/src/man/man3sec/acl_get.3sec
@@ -112,7 +112,7 @@ The ACL supplied could not be translated to an NFSv4 ACL.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -129,4 +129,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBchmod\fR(1), \fBacl\fR(2), \fBacl\fR(5), \fBattributes\fR(5)
+.BR chmod (1),
+.BR acl (2),
+.BR acl (7),
+.BR attributes (7)
diff --git a/usr/src/man/man3sec/acl_strip.3sec b/usr/src/man/man3sec/acl_strip.3sec
index 761e22684f..a4f390af03 100644
--- a/usr/src/man/man3sec/acl_strip.3sec
+++ b/usr/src/man/man3sec/acl_strip.3sec
@@ -128,7 +128,7 @@ The file system is mounted read-only.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -146,4 +146,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBacl_get\fR(3SEC), \fBacl_trivial\fR(3SEC), \fBacl\fR(5), \fBattributes\fR(5)
+.BR acl_get (3SEC),
+.BR acl_trivial (3SEC),
+.BR acl (7),
+.BR attributes (7)
diff --git a/usr/src/man/man3sec/acl_totext.3sec b/usr/src/man/man3sec/acl_totext.3sec
index 8524d144e5..ae9cf04bc9 100644
--- a/usr/src/man/man3sec/acl_totext.3sec
+++ b/usr/src/man/man3sec/acl_totext.3sec
@@ -734,7 +734,7 @@ owner@:----------c---:------allow,user:tom:r-------------:f-i---:deny
.sp
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -750,5 +750,10 @@ MT-Level Safe
.TE
.SH SEE ALSO
-\fBls\fR(1), \fBtar\fR(1), \fBacl\fR(2), \fBmalloc\fR(3C),
-\fBaclfromtext\fR(3SEC), \fBacl\fR(5), \fBattributes\fR(5)
+.BR ls (1),
+.BR tar (1),
+.BR acl (2),
+.BR malloc (3C),
+.BR aclfromtext (3SEC),
+.BR acl (7),
+.BR attributes (7)
diff --git a/usr/src/man/man3sec/acl_trivial.3sec b/usr/src/man/man3sec/acl_trivial.3sec
index 76027b79cc..3fb4db6e2b 100644
--- a/usr/src/man/man3sec/acl_trivial.3sec
+++ b/usr/src/man/man3sec/acl_trivial.3sec
@@ -55,7 +55,7 @@ empty string.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -72,4 +72,5 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBacl\fR(5), \fBattributes\fR(5)
+.BR acl (7),
+.BR attributes (7)
diff --git a/usr/src/man/man3sec/aclcheck.3sec b/usr/src/man/man3sec/aclcheck.3sec
index 61cf6db1fa..2f9e6580a2 100644
--- a/usr/src/man/man3sec/aclcheck.3sec
+++ b/usr/src/man/man3sec/aclcheck.3sec
@@ -194,7 +194,7 @@ The system cannot allocate any memory. The \fBwhich\fR parameter returns
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -210,4 +210,6 @@ MT-Level Unsafe
.TE
.SH SEE ALSO
-\fBacl\fR(2), \fBaclsort\fR(3SEC), \fBattributes\fR(5)
+.BR acl (2),
+.BR aclsort (3SEC),
+.BR attributes (7)
diff --git a/usr/src/man/man3sec/aclsort.3sec b/usr/src/man/man3sec/aclsort.3sec
index 248dab28de..a0db9c3591 100644
--- a/usr/src/man/man3sec/aclsort.3sec
+++ b/usr/src/man/man3sec/aclsort.3sec
@@ -80,7 +80,7 @@ Upon successful completion, the function returns \fB0\fR. Otherwise, it returns
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -98,4 +98,6 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBacl\fR(2), \fBaclcheck\fR(3SEC), \fBattributes\fR(5)
+.BR acl (2),
+.BR aclcheck (3SEC),
+.BR attributes (7)
diff --git a/usr/src/man/man3sec/acltomode.3sec b/usr/src/man/man3sec/acltomode.3sec
index bc8bb9ff6c..1337d01dda 100644
--- a/usr/src/man/man3sec/acltomode.3sec
+++ b/usr/src/man/man3sec/acltomode.3sec
@@ -70,7 +70,7 @@ Upon successful completion, the function returns \fB0\fR. Otherwise, it returns
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -88,4 +88,5 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBacl\fR(2), \fBattributes\fR(5)
+.BR acl (2),
+.BR attributes (7)
diff --git a/usr/src/man/man3sec/acltotext.3sec b/usr/src/man/man3sec/acltotext.3sec
index 06bf4def79..768e36eb09 100644
--- a/usr/src/man/man3sec/acltotext.3sec
+++ b/usr/src/man/man3sec/acltotext.3sec
@@ -210,7 +210,7 @@ a text string. Otherwise, it returns \fBNULL\fR.
Upon successful completion, the \fBaclfromtext()\fR function returns a pointer
to a list of \fBACL\fR entries. Otherwise, it returns \fBNULL\fR.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -226,4 +226,6 @@ MT-Level Unsafe
.TE
.SH SEE ALSO
-\fBacl\fR(2), \fBmalloc\fR(3C), \fBattributes\fR(5)
+.BR acl (2),
+.BR malloc (3C),
+.BR attributes (7)
diff --git a/usr/src/man/man3secdb/getauthattr.3secdb b/usr/src/man/man3secdb/getauthattr.3secdb
index 010e825e08..56df0e4790 100644
--- a/usr/src/man/man3secdb/getauthattr.3secdb
+++ b/usr/src/man/man3secdb/getauthattr.3secdb
@@ -45,8 +45,8 @@ cc [ \fIflag\fR... ] \fIfile\fR... -lsecdb -lsocket -lnsl [ \fIlibrary\fR...
.SH DESCRIPTION
.LP
The \fBgetauthattr()\fR and \fBgetauthnam()\fR functions each return an
-\fBauth_attr\fR(4) entry. Entries can come from any of the sources specified in
-the \fBnsswitch.conf\fR(4) file.
+\fBauth_attr\fR(5) entry. Entries can come from any of the sources specified in
+the \fBnsswitch.conf\fR(5) file.
.sp
.LP
The \fBgetauthattr()\fR function enumerates \fBauth_attr\fR entries. The
@@ -93,8 +93,8 @@ any of the profiles specified in the \fBCONSOLE_USER\fR keyword, then reads the
\fBPROFS_GRANTED\fR key in \fB/etc/security/policy.conf\fR and returns 1 if the
given authorization is in any profiles specified with the \fBPROFS_GRANTED\fR
keyword. If a match is not found from the default authorizations and default
-profiles, \fBchkauthattr()\fR reads the \fBuser_attr\fR(4) database. If it does
-not find a match in \fBuser_attr\fR, it reads the \fBprof_attr\fR(4) database,
+profiles, \fBchkauthattr()\fR reads the \fBuser_attr\fR(5) database. If it does
+not find a match in \fBuser_attr\fR, it reads the \fBprof_attr\fR(5) database,
using the list of profiles assigned to the user, and checks if any of the
profiles assigned to the user has the given authorization. The
\fBchkauthattr()\fR function returns 0 if it does not find a match in any of
@@ -215,7 +215,7 @@ profile information
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -230,7 +230,14 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBgetexecattr\fR(3SECDB), \fBgetprofattr\fR(3SECDB), \fBgetuserattr\fR(3SECDB),
-\fBkva_match\fR(3SECDB), \fBauth_attr\fR(4), \fBnsswitch.conf\fR(4),
-\fBpolicy.conf\fR(4), \fBprof_attr\fR(4), \fBuser_attr\fR(4),
-\fBattributes\fR(5), \fBrbac\fR(5)
+.BR getexecattr (3SECDB),
+.BR getprofattr (3SECDB),
+.BR getuserattr (3SECDB),
+.BR kva_match (3SECDB),
+.BR auth_attr (5),
+.BR nsswitch.conf (5),
+.BR policy.conf (5),
+.BR prof_attr (5),
+.BR user_attr (5),
+.BR attributes (7),
+.BR rbac (7)
diff --git a/usr/src/man/man3secdb/getexecattr.3secdb b/usr/src/man/man3secdb/getexecattr.3secdb
index 6f68f50403..c125c65ac7 100644
--- a/usr/src/man/man3secdb/getexecattr.3secdb
+++ b/usr/src/man/man3secdb/getexecattr.3secdb
@@ -53,9 +53,9 @@ cc [ \fIflag\fR... ] \fIfile\fR... -lsecdb -lsocket -lnsl [ \fIlibrary\fR...
.SH DESCRIPTION
.LP
-The \fBgetexecattr()\fR function returns a single \fBexec_attr\fR(4) entry.
+The \fBgetexecattr()\fR function returns a single \fBexec_attr\fR(5) entry.
Entries can come from any of the sources specified in the
-\fBnsswitch.conf\fR(4) file.
+\fBnsswitch.conf\fR(5) file.
.sp
.LP
Successive calls to \fBgetexecattr()\fR return either successive
@@ -101,11 +101,11 @@ file, deallocate any internal storage, and so forth.
.LP
The \fBgetexecuser()\fR function returns a linked list of entries that match
the \fItype\fR and \fIid\fR arguments and have a profile that has been assigned
-to the user specified by \fIusername\fR, as described in \fBpasswd\fR(4).
+to the user specified by \fIusername\fR, as described in \fBpasswd\fR(5).
Profiles for the user are obtained from the list of default profiles in
-\fB/etc/security/policy.conf\fR (see \fBpolicy.conf\fR(4)) and the
-\fBuser_attr\fR(4) database. Only entries in the name service scope for which
-the corresponding profile entry is found in the \fBprof_attr\fR(4) database are
+\fB/etc/security/policy.conf\fR (see \fBpolicy.conf\fR(5)) and the
+\fBuser_attr\fR(5) database. Only entries in the name service scope for which
+the corresponding profile entry is found in the \fBprof_attr\fR(5) database are
returned.
.sp
.LP
@@ -254,7 +254,7 @@ profile information
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -269,7 +269,13 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBgetauthattr\fR(3SECDB), \fBgetprofattr\fR(3SECDB), \fBgetuserattr\fR(3SECDB),
-\fBkva_match\fR(3SECDB), \fBexec_attr\fR(4), \fBpasswd\fR(4),
-\fBpolicy.conf\fR(4), \fBprof_attr\fR(4), \fBuser_attr\fR(4),
-\fBattributes\fR(5)
+.BR getauthattr (3SECDB),
+.BR getprofattr (3SECDB),
+.BR getuserattr (3SECDB),
+.BR kva_match (3SECDB),
+.BR exec_attr (5),
+.BR passwd (5),
+.BR policy.conf (5),
+.BR prof_attr (5),
+.BR user_attr (5),
+.BR attributes (7)
diff --git a/usr/src/man/man3secdb/getprofattr.3secdb b/usr/src/man/man3secdb/getprofattr.3secdb
index fb268c602b..512f346058 100644
--- a/usr/src/man/man3secdb/getprofattr.3secdb
+++ b/usr/src/man/man3secdb/getprofattr.3secdb
@@ -50,7 +50,7 @@ cc [ \fIflag\fR... ] \fIfile\fR... -lsecdb -lsocket -lnsl [ \fIlibrary\fR... ]
.LP
The \fBgetprofattr()\fR and \fBgetprofnam()\fR functions each return a
\fBprof_attr\fR entry. Entries can come from any of the sources specified in
-the \fBnsswitch.conf\fR(4) file.
+the \fBnsswitch.conf\fR(5) file.
.sp
.LP
The \fBgetprofattr()\fR function enumerates \fBprof_attr\fR entries. The
@@ -133,7 +133,7 @@ profiles and their descriptions
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -148,6 +148,10 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBauths\fR(1), \fBprofiles\fR(1), \fBgetexecattr\fR(3SECDB),
-\fBgetauthattr\fR(3SECDB), \fBkva_match\fR(3SECDB), \fBprof_attr\fR(4),
-\fBattributes\fR(5)
+.BR auths (1),
+.BR profiles (1),
+.BR getauthattr (3SECDB),
+.BR getexecattr (3SECDB),
+.BR kva_match (3SECDB),
+.BR prof_attr (5),
+.BR attributes (7)
diff --git a/usr/src/man/man3secdb/getuserattr.3secdb b/usr/src/man/man3secdb/getuserattr.3secdb
index 72d0a899d0..4ce24c02e0 100644
--- a/usr/src/man/man3secdb/getuserattr.3secdb
+++ b/usr/src/man/man3secdb/getuserattr.3secdb
@@ -49,8 +49,8 @@ cc [ \fIflag\fR... ] \fIfile\fR... -lsecdb -lsocket -lnsl [ \fIlibrary\fR... ]
.SH DESCRIPTION
.LP
The \fBgetuserattr()\fR, \fBgetusernam()\fR, and \fBgetuseruid()\fR functions
-each return a \fBuser_attr\fR(4) entry. Entries can come from any of the
-sources specified in the \fBnsswitch.conf\fR(4) file. The \fBgetuserattr()\fR
+each return a \fBuser_attr\fR(5) entry. Entries can come from any of the
+sources specified in the \fBnsswitch.conf\fR(5) file. The \fBgetuserattr()\fR
function enumerates \fBuser_attr\fR entries. The \fBgetusernam()\fR function
searches for a \fBuser_attr\fR entry with a given user name \fIname\fR. The
\fBgetuseruid()\fR function searches for a \fBuser_attr\fR entry with a given
@@ -133,7 +133,7 @@ configuration file lookup information for the name service switch
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -148,6 +148,9 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBgetauthattr\fR(3SECDB), \fBgetexecattr\fR(3SECDB),
-\fBgetprofattr\fR(3SECDB), \fBkva_match\fR(3SECDB), \fBuser_attr\fR(4),
-\fBattributes\fR(5)
+.BR getauthattr (3SECDB),
+.BR getexecattr (3SECDB),
+.BR getprofattr (3SECDB),
+.BR kva_match (3SECDB),
+.BR user_attr (5),
+.BR attributes (7)
diff --git a/usr/src/man/man3secdb/kva_match.3secdb b/usr/src/man/man3secdb/kva_match.3secdb
index 3abdb656ad..d24ab90008 100644
--- a/usr/src/man/man3secdb/kva_match.3secdb
+++ b/usr/src/man/man3secdb/kva_match.3secdb
@@ -29,7 +29,7 @@ Upon successful completion, the function returns a pointer to the value sought.
Otherwise, it returns \fINULL\fR.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -44,8 +44,10 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBgetauthattr\fR(3SECDB), \fBgetexecattr\fR(3SECDB),
-\fBgetprofattr\fR(3SECDB), \fBgetuserattr\fR(3SECDB)
+.BR getauthattr (3SECDB),
+.BR getexecattr (3SECDB),
+.BR getprofattr (3SECDB),
+.BR getuserattr (3SECDB)
.SH NOTES
.LP
The \fBkva_match()\fR function returns a pointer to data that already exists in
diff --git a/usr/src/man/man3sip/sip_add_branchid_to_via.3sip b/usr/src/man/man3sip/sip_add_branchid_to_via.3sip
index f8e2103832..119a06fdc1 100644
--- a/usr/src/man/man3sip/sip_add_branchid_to_via.3sip
+++ b/usr/src/man/man3sip/sip_add_branchid_to_via.3sip
@@ -67,7 +67,7 @@ There is an error allocating memory for creating headers/parameters.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -85,4 +85,4 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBlibsip\fR(3LIB)
+.BR libsip (3LIB)
diff --git a/usr/src/man/man3sip/sip_add_from.3sip b/usr/src/man/man3sip/sip_add_from.3sip
index 98e7c26879..b14633ae87 100644
--- a/usr/src/man/man3sip/sip_add_from.3sip
+++ b/usr/src/man/man3sip/sip_add_from.3sip
@@ -771,7 +771,7 @@ There is an error allocating memory for creating headers/parameters.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -789,4 +789,4 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBlibsip\fR(3LIB)
+.BR libsip (3LIB)
diff --git a/usr/src/man/man3sip/sip_add_header.3sip b/usr/src/man/man3sip/sip_add_header.3sip
index 673b2793d9..ce98e0bfa9 100644
--- a/usr/src/man/man3sip/sip_add_header.3sip
+++ b/usr/src/man/man3sip/sip_add_header.3sip
@@ -62,7 +62,7 @@ Error allocating memory for creating headers/parameters.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -80,4 +80,4 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBlibsip\fR(3LIB)
+.BR libsip (3LIB)
diff --git a/usr/src/man/man3sip/sip_add_param.3sip b/usr/src/man/man3sip/sip_add_param.3sip
index 8c6b8b1e13..4a50c3b3dc 100644
--- a/usr/src/man/man3sip/sip_add_param.3sip
+++ b/usr/src/man/man3sip/sip_add_param.3sip
@@ -70,7 +70,7 @@ There is an error allocating memory for creating headers/parameters.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -88,4 +88,4 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBlibsip\fR(3LIB)
+.BR libsip (3LIB)
diff --git a/usr/src/man/man3sip/sip_add_request_line.3sip b/usr/src/man/man3sip/sip_add_request_line.3sip
index 935bb917c4..91c7352c50 100644
--- a/usr/src/man/man3sip/sip_add_request_line.3sip
+++ b/usr/src/man/man3sip/sip_add_request_line.3sip
@@ -131,7 +131,7 @@ creating headers in the \fBACK\fR request.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -149,4 +149,4 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBlibsip\fR(3LIB)
+.BR libsip (3LIB)
diff --git a/usr/src/man/man3sip/sip_branchid.3sip b/usr/src/man/man3sip/sip_branchid.3sip
index bca244914b..22417ab425 100644
--- a/usr/src/man/man3sip/sip_branchid.3sip
+++ b/usr/src/man/man3sip/sip_branchid.3sip
@@ -37,7 +37,7 @@ error.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -55,4 +55,4 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBlibsip\fR(3LIB)
+.BR libsip (3LIB)
diff --git a/usr/src/man/man3sip/sip_clone_msg.3sip b/usr/src/man/man3sip/sip_clone_msg.3sip
index 40f1695270..99b6abe05f 100644
--- a/usr/src/man/man3sip/sip_clone_msg.3sip
+++ b/usr/src/man/man3sip/sip_clone_msg.3sip
@@ -33,7 +33,7 @@ error.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -51,4 +51,4 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBlibsip\fR(3LIB)
+.BR libsip (3LIB)
diff --git a/usr/src/man/man3sip/sip_copy_start_line.3sip b/usr/src/man/man3sip/sip_copy_start_line.3sip
index f05090bd12..96c0b740c6 100644
--- a/usr/src/man/man3sip/sip_copy_start_line.3sip
+++ b/usr/src/man/man3sip/sip_copy_start_line.3sip
@@ -97,7 +97,7 @@ If the input SIP message cannot be modified.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -115,4 +115,4 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBlibsip\fR(3LIB)
+.BR libsip (3LIB)
diff --git a/usr/src/man/man3sip/sip_create_OKack.3sip b/usr/src/man/man3sip/sip_create_OKack.3sip
index 8c07b54da3..9959cfcc56 100644
--- a/usr/src/man/man3sip/sip_create_OKack.3sip
+++ b/usr/src/man/man3sip/sip_create_OKack.3sip
@@ -98,7 +98,7 @@ creating headers in the \fBACK\fR request.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -116,4 +116,4 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBlibsip\fR(3LIB)
+.BR libsip (3LIB)
diff --git a/usr/src/man/man3sip/sip_create_dialog_req.3sip b/usr/src/man/man3sip/sip_create_dialog_req.3sip
index 1e9b1caf2a..84e7534231 100644
--- a/usr/src/man/man3sip/sip_create_dialog_req.3sip
+++ b/usr/src/man/man3sip/sip_create_dialog_req.3sip
@@ -110,7 +110,7 @@ error.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -128,4 +128,5 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBlibsip\fR(3LIB), \fBattributes\fR(5)
+.BR libsip (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3sip/sip_create_response.3sip b/usr/src/man/man3sip/sip_create_response.3sip
index b402f7cd2a..4e08485fcf 100644
--- a/usr/src/man/man3sip/sip_create_response.3sip
+++ b/usr/src/man/man3sip/sip_create_response.3sip
@@ -70,7 +70,7 @@ error.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -88,4 +88,4 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBlibsip\fR(3LIB)
+.BR libsip (3LIB)
diff --git a/usr/src/man/man3sip/sip_delete_dialog.3sip b/usr/src/man/man3sip/sip_delete_dialog.3sip
index 91e961f164..839738becf 100644
--- a/usr/src/man/man3sip/sip_delete_dialog.3sip
+++ b/usr/src/man/man3sip/sip_delete_dialog.3sip
@@ -48,7 +48,7 @@ error.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -66,4 +66,4 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBlibsip\fR(3LIB)
+.BR libsip (3LIB)
diff --git a/usr/src/man/man3sip/sip_delete_start_line.3sip b/usr/src/man/man3sip/sip_delete_start_line.3sip
index 68f5bc0a06..df4b9bdd7b 100644
--- a/usr/src/man/man3sip/sip_delete_start_line.3sip
+++ b/usr/src/man/man3sip/sip_delete_start_line.3sip
@@ -93,7 +93,7 @@ If the \fBSIP\fR message cannot be modified.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -111,4 +111,4 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBlibsip\fR(3LIB)
+.BR libsip (3LIB)
diff --git a/usr/src/man/man3sip/sip_enable_counters.3sip b/usr/src/man/man3sip/sip_enable_counters.3sip
index ed43d71062..2c2a30b938 100644
--- a/usr/src/man/man3sip/sip_enable_counters.3sip
+++ b/usr/src/man/man3sip/sip_enable_counters.3sip
@@ -151,7 +151,7 @@ or if \fIcounterval\fR is \fINULL\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -169,4 +169,4 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBattributes\fR(5)
+.BR attributes (7)
diff --git a/usr/src/man/man3sip/sip_enable_trans_logging.3sip b/usr/src/man/man3sip/sip_enable_trans_logging.3sip
index 81ad69f55a..a11fc53db0 100644
--- a/usr/src/man/man3sip/sip_enable_trans_logging.3sip
+++ b/usr/src/man/man3sip/sip_enable_trans_logging.3sip
@@ -135,7 +135,7 @@ Dialog State : SIP_DLG_CONFIRMED
.in -2
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -151,4 +151,5 @@ MT-Level MT-Safe
.TE
.SH SEE ALSO
-\fBsip_stack_init\fR(3SIP), \fBattributes\fR(5)
+.BR sip_stack_init (3SIP),
+.BR attributes (7)
diff --git a/usr/src/man/man3sip/sip_get_contact_display_name.3sip b/usr/src/man/man3sip/sip_get_contact_display_name.3sip
index 26e16d5d3c..cb398b974e 100644
--- a/usr/src/man/man3sip/sip_get_contact_display_name.3sip
+++ b/usr/src/man/man3sip/sip_get_contact_display_name.3sip
@@ -1074,7 +1074,7 @@ There is an error allocating memory for the return value.
On success, the value of the location pointed to by \fIerror\fR is set to
\fB0\fR.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -1090,4 +1090,4 @@ MT-Level MT-Safe
.TE
.SH SEE ALSO
-\fBlibsip\fR(3LIB)
+.BR libsip (3LIB)
diff --git a/usr/src/man/man3sip/sip_get_cseq.3sip b/usr/src/man/man3sip/sip_get_cseq.3sip
index 083d4b2d8b..95a2223eee 100644
--- a/usr/src/man/man3sip/sip_get_cseq.3sip
+++ b/usr/src/man/man3sip/sip_get_cseq.3sip
@@ -33,7 +33,7 @@ error.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -51,4 +51,4 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBlibsip\fR(3LIB)
+.BR libsip (3LIB)
diff --git a/usr/src/man/man3sip/sip_get_dialog_state.3sip b/usr/src/man/man3sip/sip_get_dialog_state.3sip
index 6bc576fa41..dcb05fab36 100644
--- a/usr/src/man/man3sip/sip_get_dialog_state.3sip
+++ b/usr/src/man/man3sip/sip_get_dialog_state.3sip
@@ -264,7 +264,7 @@ On success, the value of the location pointed to by \fIerror\fR is set to
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -282,4 +282,4 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBlibsip\fR(3LIB)
+.BR libsip (3LIB)
diff --git a/usr/src/man/man3sip/sip_get_header.3sip b/usr/src/man/man3sip/sip_get_header.3sip
index c6d1fb09ee..91d90f36c2 100644
--- a/usr/src/man/man3sip/sip_get_header.3sip
+++ b/usr/src/man/man3sip/sip_get_header.3sip
@@ -74,7 +74,7 @@ been deleted; or, the \fIheader_name\fR is not specified and there are no
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -92,4 +92,4 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBlibsip\fR(3LIB)
+.BR libsip (3LIB)
diff --git a/usr/src/man/man3sip/sip_get_header_value.3sip b/usr/src/man/man3sip/sip_get_header_value.3sip
index 777f128004..521a65a42d 100644
--- a/usr/src/man/man3sip/sip_get_header_value.3sip
+++ b/usr/src/man/man3sip/sip_get_header_value.3sip
@@ -70,7 +70,7 @@ On success, the value of the location pointed to by \fIerror\fR is set to
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -88,4 +88,4 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBlibsip\fR(3LIB)
+.BR libsip (3LIB)
diff --git a/usr/src/man/man3sip/sip_get_msg_len.3sip b/usr/src/man/man3sip/sip_get_msg_len.3sip
index c96af751f4..2c5a542907 100644
--- a/usr/src/man/man3sip/sip_get_msg_len.3sip
+++ b/usr/src/man/man3sip/sip_get_msg_len.3sip
@@ -71,7 +71,7 @@ On success, the value of the location pointed to by \fIerror\fR is set to
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -89,4 +89,4 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBlibsip\fR(3LIB)
+.BR libsip (3LIB)
diff --git a/usr/src/man/man3sip/sip_get_num_via.3sip b/usr/src/man/man3sip/sip_get_num_via.3sip
index 7fcbc73b30..b397ef63f1 100644
--- a/usr/src/man/man3sip/sip_get_num_via.3sip
+++ b/usr/src/man/man3sip/sip_get_num_via.3sip
@@ -96,7 +96,7 @@ On success, the value of the location pointed to by \fIerror\fR is set to
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -114,4 +114,4 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBlibsip\fR(3LIB)
+.BR libsip (3LIB)
diff --git a/usr/src/man/man3sip/sip_get_param_value.3sip b/usr/src/man/man3sip/sip_get_param_value.3sip
index 03ca8544df..23a94a101e 100644
--- a/usr/src/man/man3sip/sip_get_param_value.3sip
+++ b/usr/src/man/man3sip/sip_get_param_value.3sip
@@ -102,7 +102,7 @@ On success, the value of the location pointed to by \fIerror\fR is set to
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -120,4 +120,4 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBlibsip\fR(3LIB)
+.BR libsip (3LIB)
diff --git a/usr/src/man/man3sip/sip_get_request_method.3sip b/usr/src/man/man3sip/sip_get_request_method.3sip
index 9ec271bd01..7a34efd3cf 100644
--- a/usr/src/man/man3sip/sip_get_request_method.3sip
+++ b/usr/src/man/man3sip/sip_get_request_method.3sip
@@ -184,7 +184,7 @@ There is an error allocating memory for the return value.
On success, the value of the location pointed to by \fIerror\fR is set to
\fB0\fR.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -200,4 +200,4 @@ MT-Level MT-Safe
.TE
.SH SEE ALSO
-\fBlibsip\fR(3LIB)
+.BR libsip (3LIB)
diff --git a/usr/src/man/man3sip/sip_get_request_uri_str.3sip b/usr/src/man/man3sip/sip_get_request_uri_str.3sip
index 12d932c24b..7591ce6808 100644
--- a/usr/src/man/man3sip/sip_get_request_uri_str.3sip
+++ b/usr/src/man/man3sip/sip_get_request_uri_str.3sip
@@ -85,7 +85,7 @@ For \fIsip_get_request_uri_str\fR, the request \fBURI\fR is invalid.
On success, the value of the location pointed to by \fIerror\fR is set to
\fB0\fR.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -101,4 +101,4 @@ MT-Level MT-Safe
.TE
.SH SEE ALSO
-\fBlibsip\fR(3LIB)
+.BR libsip (3LIB)
diff --git a/usr/src/man/man3sip/sip_get_resp_desc.3sip b/usr/src/man/man3sip/sip_get_resp_desc.3sip
index 3fbfa121fa..2e9b417380 100644
--- a/usr/src/man/man3sip/sip_get_resp_desc.3sip
+++ b/usr/src/man/man3sip/sip_get_resp_desc.3sip
@@ -29,7 +29,7 @@ error.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -47,4 +47,4 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBlibsip\fR(3LIB)
+.BR libsip (3LIB)
diff --git a/usr/src/man/man3sip/sip_get_trans.3sip b/usr/src/man/man3sip/sip_get_trans.3sip
index 6bc8540290..1e99fa9bda 100644
--- a/usr/src/man/man3sip/sip_get_trans.3sip
+++ b/usr/src/man/man3sip/sip_get_trans.3sip
@@ -55,7 +55,7 @@ On success, the value of the location pointed to by \fIerror\fR is set to
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -73,4 +73,4 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBlibsip\fR(3LIB)
+.BR libsip (3LIB)
diff --git a/usr/src/man/man3sip/sip_get_trans_method.3sip b/usr/src/man/man3sip/sip_get_trans_method.3sip
index 3b551253ca..aadc1c7259 100644
--- a/usr/src/man/man3sip/sip_get_trans_method.3sip
+++ b/usr/src/man/man3sip/sip_get_trans_method.3sip
@@ -197,7 +197,7 @@ On success, the value of the location pointed to by \fIerror\fR is set to
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -215,4 +215,4 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBlibsip\fR(3LIB)
+.BR libsip (3LIB)
diff --git a/usr/src/man/man3sip/sip_get_uri_parsed.3sip b/usr/src/man/man3sip/sip_get_uri_parsed.3sip
index 2eb342c9d0..60888f8491 100644
--- a/usr/src/man/man3sip/sip_get_uri_parsed.3sip
+++ b/usr/src/man/man3sip/sip_get_uri_parsed.3sip
@@ -58,7 +58,7 @@ On success, the value of the location pointed to by \fIerror\fR is set to
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -76,4 +76,4 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBlibsip\fR(3LIB)
+.BR libsip (3LIB)
diff --git a/usr/src/man/man3sip/sip_guid.3sip b/usr/src/man/man3sip/sip_guid.3sip
index 8d8e38e4a2..8770be023b 100644
--- a/usr/src/man/man3sip/sip_guid.3sip
+++ b/usr/src/man/man3sip/sip_guid.3sip
@@ -32,7 +32,7 @@ error.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -50,4 +50,4 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBlibsip\fR(3LIB)
+.BR libsip (3LIB)
diff --git a/usr/src/man/man3sip/sip_hold_dialog.3sip b/usr/src/man/man3sip/sip_hold_dialog.3sip
index 59ed47d1a8..8a87d3767a 100644
--- a/usr/src/man/man3sip/sip_hold_dialog.3sip
+++ b/usr/src/man/man3sip/sip_hold_dialog.3sip
@@ -56,7 +56,7 @@ error.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -74,4 +74,4 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBlibsip\fR(3LIB)
+.BR libsip (3LIB)
diff --git a/usr/src/man/man3sip/sip_hold_msg.3sip b/usr/src/man/man3sip/sip_hold_msg.3sip
index 50efd6f86d..04220b332b 100644
--- a/usr/src/man/man3sip/sip_hold_msg.3sip
+++ b/usr/src/man/man3sip/sip_hold_msg.3sip
@@ -43,7 +43,7 @@ error.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -61,4 +61,4 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBlibsip\fR(3LIB)
+.BR libsip (3LIB)
diff --git a/usr/src/man/man3sip/sip_hold_trans.3sip b/usr/src/man/man3sip/sip_hold_trans.3sip
index 0a8a9c35ec..4fed795170 100644
--- a/usr/src/man/man3sip/sip_hold_trans.3sip
+++ b/usr/src/man/man3sip/sip_hold_trans.3sip
@@ -39,7 +39,7 @@ error.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -57,4 +57,4 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBlibsip\fR(3LIB)
+.BR libsip (3LIB)
diff --git a/usr/src/man/man3sip/sip_init_conn_object.3sip b/usr/src/man/man3sip/sip_init_conn_object.3sip
index 6a012258c3..e5e05052d9 100644
--- a/usr/src/man/man3sip/sip_init_conn_object.3sip
+++ b/usr/src/man/man3sip/sip_init_conn_object.3sip
@@ -55,7 +55,7 @@ error.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -73,4 +73,4 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBlibsip\fR(3LIB)
+.BR libsip (3LIB)
diff --git a/usr/src/man/man3sip/sip_is_sip_uri.3sip b/usr/src/man/man3sip/sip_is_sip_uri.3sip
index 2a07335c57..6fc0c5dccb 100644
--- a/usr/src/man/man3sip/sip_is_sip_uri.3sip
+++ b/usr/src/man/man3sip/sip_is_sip_uri.3sip
@@ -263,7 +263,7 @@ components are requested from a \fBSIP[S]\fR \fBURI\fR.
On success, the value of the location pointed to by \fIerror\fR is set to
\fB0\fR.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -279,4 +279,4 @@ MT-Level MT-Safe
.TE
.SH SEE ALSO
-\fBlibsip\fR(3LIB)
+.BR libsip (3LIB)
diff --git a/usr/src/man/man3sip/sip_msg_is_request.3sip b/usr/src/man/man3sip/sip_msg_is_request.3sip
index 6957c19ac6..0187d86c56 100644
--- a/usr/src/man/man3sip/sip_msg_is_request.3sip
+++ b/usr/src/man/man3sip/sip_msg_is_request.3sip
@@ -82,7 +82,7 @@ On success, the value of the location pointed to by \fIerror\fR is set to
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -100,4 +100,4 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBlibsip\fR(3LIB)
+.BR libsip (3LIB)
diff --git a/usr/src/man/man3sip/sip_msg_to_str.3sip b/usr/src/man/man3sip/sip_msg_to_str.3sip
index 1bef68a8ea..9654febe79 100644
--- a/usr/src/man/man3sip/sip_msg_to_str.3sip
+++ b/usr/src/man/man3sip/sip_msg_to_str.3sip
@@ -108,7 +108,7 @@ On success, the value of the location pointed to by \fIerror\fR is set to
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -126,4 +126,4 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBlibsip\fR(3LIB)
+.BR libsip (3LIB)
diff --git a/usr/src/man/man3sip/sip_new_msg.3sip b/usr/src/man/man3sip/sip_new_msg.3sip
index b963b7a66d..8d0f75dd7d 100644
--- a/usr/src/man/man3sip/sip_new_msg.3sip
+++ b/usr/src/man/man3sip/sip_new_msg.3sip
@@ -31,7 +31,7 @@ error.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -49,4 +49,4 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBlibsip\fR(3LIB)
+.BR libsip (3LIB)
diff --git a/usr/src/man/man3sip/sip_parse_uri.3sip b/usr/src/man/man3sip/sip_parse_uri.3sip
index f7219532ae..d6f9870536 100644
--- a/usr/src/man/man3sip/sip_parse_uri.3sip
+++ b/usr/src/man/man3sip/sip_parse_uri.3sip
@@ -97,7 +97,7 @@ components are requested from a \fBSIP[S]\fR \fBURI\fR.
On success, the value of the location pointed to by \fIerror\fR is set to
\fB0\fR.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -113,4 +113,4 @@ MT-Level MT-Safe
.TE
.SH SEE ALSO
-\fBlibsip\fR(3LIB)
+.BR libsip (3LIB)
diff --git a/usr/src/man/man3sip/sip_process_new_packet.3sip b/usr/src/man/man3sip/sip_process_new_packet.3sip
index 028b675fa6..ee35cc910e 100644
--- a/usr/src/man/man3sip/sip_process_new_packet.3sip
+++ b/usr/src/man/man3sip/sip_process_new_packet.3sip
@@ -39,7 +39,7 @@ error.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -57,4 +57,4 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBlibsip\fR(3LIB)
+.BR libsip (3LIB)
diff --git a/usr/src/man/man3sip/sip_register_sent_by.3sip b/usr/src/man/man3sip/sip_register_sent_by.3sip
index 157a58764a..3f10121329 100644
--- a/usr/src/man/man3sip/sip_register_sent_by.3sip
+++ b/usr/src/man/man3sip/sip_register_sent_by.3sip
@@ -56,7 +56,7 @@ error.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -74,4 +74,4 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBlibsip\fR(3LIB)
+.BR libsip (3LIB)
diff --git a/usr/src/man/man3sip/sip_sendmsg.3sip b/usr/src/man/man3sip/sip_sendmsg.3sip
index fd3bc5f4c9..c89f2e468f 100644
--- a/usr/src/man/man3sip/sip_sendmsg.3sip
+++ b/usr/src/man/man3sip/sip_sendmsg.3sip
@@ -106,7 +106,7 @@ or adding a transaction or during transaction related processing.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -124,4 +124,4 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBlibsip\fR(3LIB)
+.BR libsip (3LIB)
diff --git a/usr/src/man/man3sip/sip_stack_init.3sip b/usr/src/man/man3sip/sip_stack_init.3sip
index b2daf54386..f363accd02 100644
--- a/usr/src/man/man3sip/sip_stack_init.3sip
+++ b/usr/src/man/man3sip/sip_stack_init.3sip
@@ -433,7 +433,7 @@ missing.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -450,4 +450,5 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBlibsip\fR(3LIB), \fBsockaddr\fR(3SOCKET)
+.BR libsip (3LIB),
+.BR sockaddr (3SOCKET)
diff --git a/usr/src/man/man3slp/SLPClose.3slp b/usr/src/man/man3slp/SLPClose.3slp
index d527972e0e..699f45dd26 100644
--- a/usr/src/man/man3slp/SLPClose.3slp
+++ b/usr/src/man/man3slp/SLPClose.3slp
@@ -65,8 +65,11 @@ When set, use this file for configuration.
.SH SEE ALSO
.sp
.LP
-\fBslpd\fR(1M), \fBslp_api\fR(3SLP), \fBslp.conf\fR(4), \fBslpd.reg\fR(4),
-\fBattributes\fR(5)
+.BR slp_api (3SLP),
+.BR slp.conf (5),
+.BR slpd.reg (5),
+.BR attributes (7),
+.BR slpd (8)
.sp
.LP
\fISystem Administration Guide: Network Services\fR
diff --git a/usr/src/man/man3slp/SLPDelAttrs.3slp b/usr/src/man/man3slp/SLPDelAttrs.3slp
index b6bc921f0e..ac65fb2c1d 100644
--- a/usr/src/man/man3slp/SLPDelAttrs.3slp
+++ b/usr/src/man/man3slp/SLPDelAttrs.3slp
@@ -109,8 +109,11 @@ When set, use this file for configuration.
.SH SEE ALSO
.sp
.LP
-\fBslpd\fR(1M), \fBslp_api\fR(3SLP), \fBslp.conf\fR(4), \fBslpd.reg\fR(4),
-\fBattributes\fR(5)
+.BR slp_api (3SLP),
+.BR slp.conf (5),
+.BR slpd.reg (5),
+.BR attributes (7),
+.BR slpd (8)
.sp
.LP
\fISystem Administration Guide: Network Services\fR
diff --git a/usr/src/man/man3slp/SLPDereg.3slp b/usr/src/man/man3slp/SLPDereg.3slp
index ac9cd667ec..56ef0e6028 100644
--- a/usr/src/man/man3slp/SLPDereg.3slp
+++ b/usr/src/man/man3slp/SLPDereg.3slp
@@ -101,8 +101,11 @@ When set, use this file for configuration.
.SH SEE ALSO
.sp
.LP
-\fBslpd\fR(1M), \fBslp_api\fR(3SLP), \fBslp.conf\fR(4), \fBslpd.reg\fR(4),
-\fBattributes\fR(5)
+.BR slp_api (3SLP),
+.BR slp.conf (5),
+.BR slpd.reg (5),
+.BR attributes (7),
+.BR slpd (8)
.sp
.LP
\fISystem Administration Guide: Network Services\fR
diff --git a/usr/src/man/man3slp/SLPEscape.3slp b/usr/src/man/man3slp/SLPEscape.3slp
index 25397146d7..30416475bf 100644
--- a/usr/src/man/man3slp/SLPEscape.3slp
+++ b/usr/src/man/man3slp/SLPEscape.3slp
@@ -92,8 +92,12 @@ When set, use this file for configuration.
.SH SEE ALSO
.sp
.LP
-\fBslpd\fR(1M), \fBslp_api\fR(3SLP), \fBSLPFree\fR(3SLP), \fBslp.conf\fR(4),
-\fBslpd.reg\fR(4), \fBattributes\fR(5)
+.BR SLPFree (3SLP),
+.BR slp_api (3SLP),
+.BR slp.conf (5),
+.BR slpd.reg (5),
+.BR attributes (7),
+.BR slpd (8)
.sp
.LP
\fISystem Administration Guide: Network Services\fR
diff --git a/usr/src/man/man3slp/SLPFindAttrs.3slp b/usr/src/man/man3slp/SLPFindAttrs.3slp
index f0f5c7ab7d..4991a6bc92 100644
--- a/usr/src/man/man3slp/SLPFindAttrs.3slp
+++ b/usr/src/man/man3slp/SLPFindAttrs.3slp
@@ -154,8 +154,11 @@ When set, use this file for configuration.
.SH SEE ALSO
.sp
.LP
-\fBslpd\fR(1M), \fBslp_api\fR(3SLP), \fBslp.conf\fR(4), \fBslpd.reg\fR(4),
-\fBattributes\fR(5)
+.BR slp_api (3SLP),
+.BR slp.conf (5),
+.BR slpd.reg (5),
+.BR attributes (7),
+.BR slpd (8)
.sp
.LP
\fISystem Administration Guide: Network Services\fR
diff --git a/usr/src/man/man3slp/SLPFindScopes.3slp b/usr/src/man/man3slp/SLPFindScopes.3slp
index e422616991..3a1b90c21b 100644
--- a/usr/src/man/man3slp/SLPFindScopes.3slp
+++ b/usr/src/man/man3slp/SLPFindScopes.3slp
@@ -88,8 +88,12 @@ When set, use this file for configuration.
.SH SEE ALSO
.sp
.LP
-\fBslpd\fR(1M), \fBslp_api\fR(3SLP), \fBSLPFree\fR(3SLP), \fBslp.conf\fR(4),
-\fBslpd.reg\fR(4), \fBattributes\fR(5)
+.BR SLPFree (3SLP),
+.BR slp_api (3SLP),
+.BR slp.conf (5),
+.BR slpd.reg (5),
+.BR attributes (7),
+.BR slpd (8)
.sp
.LP
\fISystem Administration Guide: Network Services\fR
diff --git a/usr/src/man/man3slp/SLPFindSrvTypes.3slp b/usr/src/man/man3slp/SLPFindSrvTypes.3slp
index 121872939b..1a230367b5 100644
--- a/usr/src/man/man3slp/SLPFindSrvTypes.3slp
+++ b/usr/src/man/man3slp/SLPFindSrvTypes.3slp
@@ -138,8 +138,11 @@ When set, use this file for configuration.
.SH SEE ALSO
.sp
.LP
-\fBslpd\fR(1M), \fBslp_api\fR(3SLP), \fBslp.conf\fR(4), \fBslpd.reg\fR(4),
-\fBattributes\fR(5)
+.BR slp_api (3SLP),
+.BR slp.conf (5),
+.BR slpd.reg (5),
+.BR attributes (7),
+.BR slpd (8)
.sp
.LP
\fISystem Administration Guide: Network Services\fR
diff --git a/usr/src/man/man3slp/SLPFindSrvs.3slp b/usr/src/man/man3slp/SLPFindSrvs.3slp
index 346c00f213..70cdf67a1a 100644
--- a/usr/src/man/man3slp/SLPFindSrvs.3slp
+++ b/usr/src/man/man3slp/SLPFindSrvs.3slp
@@ -148,8 +148,11 @@ When set, use this file for configuration.
.SH SEE ALSO
.sp
.LP
-\fBslpd\fR(1M), \fBslp_api\fR(3SLP), \fBslp.conf\fR(4), \fBslpd.reg\fR(4),
-\fBattributes\fR(5)
+.BR slp_api (3SLP),
+.BR slp.conf (5),
+.BR slpd.reg (5),
+.BR attributes (7),
+.BR slpd (8)
.sp
.LP
\fISystem Administration Guide: Network Services\fR
diff --git a/usr/src/man/man3slp/SLPFree.3slp b/usr/src/man/man3slp/SLPFree.3slp
index cf58dacdfa..0069ae0e42 100644
--- a/usr/src/man/man3slp/SLPFree.3slp
+++ b/usr/src/man/man3slp/SLPFree.3slp
@@ -67,9 +67,15 @@ When set, use this file for configuration.
.SH SEE ALSO
.sp
.LP
-\fBslpd\fR(1M), \fBSLPEscape\fR(3SLP), \fBSLPFindScopes\fR(3SLP),
-\fBSLPParseSrvURL\fR(3SLP), \fBSLPUnescape\fR(3SLP), \fBslp_api\fR(3SLP),
-\fBslp.conf\fR(4), \fBslpd.reg\fR(4), \fBattributes\fR(5)
+.BR SLPEscape (3SLP),
+.BR SLPFindScopes (3SLP),
+.BR SLPParseSrvURL (3SLP),
+.BR SLPUnescape (3SLP),
+.BR slp_api (3SLP),
+.BR slp.conf (5),
+.BR slpd.reg (5),
+.BR attributes (7),
+.BR slpd (8)
.sp
.LP
\fISystem Administration Guide: Network Services\fR
diff --git a/usr/src/man/man3slp/SLPGetProperty.3slp b/usr/src/man/man3slp/SLPGetProperty.3slp
index 95ec821ee4..1fe4d77824 100644
--- a/usr/src/man/man3slp/SLPGetProperty.3slp
+++ b/usr/src/man/man3slp/SLPGetProperty.3slp
@@ -69,8 +69,11 @@ When set, use this file for configuration.
.SH SEE ALSO
.sp
.LP
-\fBslpd\fR(1M), \fBslp_api\fR(3SLP), \fBslp.conf\fR(4), \fBslpd.reg\fR(4),
-\fBattributes\fR(5)
+.BR slp_api (3SLP),
+.BR slp.conf (5),
+.BR slpd.reg (5),
+.BR attributes (7),
+.BR slpd (8)
.sp
.LP
\fISystem Administration Guide: Network Services\fR
diff --git a/usr/src/man/man3slp/SLPGetRefreshInterval.3slp b/usr/src/man/man3slp/SLPGetRefreshInterval.3slp
index 6f17543a4a..39daf50814 100644
--- a/usr/src/man/man3slp/SLPGetRefreshInterval.3slp
+++ b/usr/src/man/man3slp/SLPGetRefreshInterval.3slp
@@ -58,8 +58,11 @@ When set, use this file for configuration.
.SH SEE ALSO
.sp
.LP
-\fBslpd\fR(1M), \fBslp_api\fR(3SLP), \fBslp.conf\fR(4), \fBslpd.reg\fR(4),
-\fBattributes\fR(5)
+.BR slp_api (3SLP),
+.BR slp.conf (5),
+.BR slpd.reg (5),
+.BR attributes (7),
+.BR slpd (8)
.sp
.LP
\fISystem Administration Guide: Network Services\fR
diff --git a/usr/src/man/man3slp/SLPOpen.3slp b/usr/src/man/man3slp/SLPOpen.3slp
index 5788b64063..22efcc76bc 100644
--- a/usr/src/man/man3slp/SLPOpen.3slp
+++ b/usr/src/man/man3slp/SLPOpen.3slp
@@ -101,8 +101,11 @@ When set, use this file for configuration.
.SH SEE ALSO
.sp
.LP
-\fBslpd\fR(1M), \fBslp_api\fR(3SLP), \fBslp.conf\fR(4), \fBslpd.reg\fR(4),
-\fBattributes\fR(5)
+.BR slp_api (3SLP),
+.BR slp.conf (5),
+.BR slpd.reg (5),
+.BR attributes (7),
+.BR slpd (8)
.sp
.LP
\fISystem Administration Guide: Network Services\fR
diff --git a/usr/src/man/man3slp/SLPParseSrvURL.3slp b/usr/src/man/man3slp/SLPParseSrvURL.3slp
index 49fde717a8..f09174ae85 100644
--- a/usr/src/man/man3slp/SLPParseSrvURL.3slp
+++ b/usr/src/man/man3slp/SLPParseSrvURL.3slp
@@ -91,8 +91,11 @@ When set, use this file for configuration.
.SH SEE ALSO
.sp
.LP
-\fBslpd\fR(1M), \fBslp_api\fR(3SLP), \fBslp.conf\fR(4), \fBslpd.reg\fR(4),
-\fBattributes\fR(5)
+.BR slp_api (3SLP),
+.BR slp.conf (5),
+.BR slpd.reg (5),
+.BR attributes (7),
+.BR slpd (8)
.sp
.LP
\fISystem Administration Guide: Network Services\fR
diff --git a/usr/src/man/man3slp/SLPReg.3slp b/usr/src/man/man3slp/SLPReg.3slp
index 000ca21677..c8925db099 100644
--- a/usr/src/man/man3slp/SLPReg.3slp
+++ b/usr/src/man/man3slp/SLPReg.3slp
@@ -164,8 +164,11 @@ When set, use this file for configuration.
.SH SEE ALSO
.sp
.LP
-\fBslpd\fR(1M), \fBslp_api\fR(3SLP), \fBslp.conf\fR(4), \fBslpd.reg\fR(4),
-\fBattributes\fR(5)
+.BR slp_api (3SLP),
+.BR slp.conf (5),
+.BR slpd.reg (5),
+.BR attributes (7),
+.BR slpd (8)
.sp
.LP
\fISystem Administration Guide: Network Services\fR
diff --git a/usr/src/man/man3slp/SLPSetProperty.3slp b/usr/src/man/man3slp/SLPSetProperty.3slp
index 223f2efae0..dd30b1f1fc 100644
--- a/usr/src/man/man3slp/SLPSetProperty.3slp
+++ b/usr/src/man/man3slp/SLPSetProperty.3slp
@@ -75,8 +75,11 @@ When set, use this file for configuration.
.SH SEE ALSO
.sp
.LP
-\fBslpd\fR(1M), \fBslp_api\fR(3SLP), \fBslp.conf\fR(4), \fBslpd.reg\fR(4),
-\fBattributes\fR(5)
+.BR slp_api (3SLP),
+.BR slp.conf (5),
+.BR slpd.reg (5),
+.BR attributes (7),
+.BR slpd (8)
.sp
.LP
\fISystem Administration Guide: Network Services\fR
diff --git a/usr/src/man/man3slp/SLPUnescape.3slp b/usr/src/man/man3slp/SLPUnescape.3slp
index 0bec2e53ab..ba956b1393 100644
--- a/usr/src/man/man3slp/SLPUnescape.3slp
+++ b/usr/src/man/man3slp/SLPUnescape.3slp
@@ -92,8 +92,12 @@ When set, use this file for configuration.
.SH SEE ALSO
.sp
.LP
-\fBslpd\fR(1M), \fBSLPFree\fR(3SLP), \fBslp_api\fR(3SLP), \fBslp.conf\fR(4),
-\fBslpd.reg\fR(4), \fBattributes\fR(5)
+.BR SLPFree (3SLP),
+.BR slp_api (3SLP),
+.BR slp.conf (5),
+.BR slpd.reg (5),
+.BR attributes (7),
+.BR slpd (8)
.sp
.LP
\fISystem Administration Guide: Network Services\fR
diff --git a/usr/src/man/man3slp/slp_api.3slp b/usr/src/man/man3slp/slp_api.3slp
index b8975ab55d..45824f7a85 100644
--- a/usr/src/man/man3slp/slp_api.3slp
+++ b/usr/src/man/man3slp/slp_api.3slp
@@ -60,7 +60,7 @@ consists of a backslash followed by the two hexadecimal digits encoding the
byte. An example is "\fB\e2c\fR" for the byte \fB0x2c\fR. Clients handle opaque
processing themselves, since the algorithm is relatively simple and uniform.
.SS "System Properties"
-The system properties established in \fBslp.conf\fR(4), the configuration file,
+The system properties established in \fBslp.conf\fR(5), the configuration file,
are accessible through the \fBSLPGetProperty()\fR and \fBSLPSetProperty()\fR
functions. The \fBSLPSetProperty()\fR function modifies properties only in the
running process, not in the configuration file. Errors are checked when the
@@ -161,7 +161,7 @@ replies has been collected and returned.
.RE
.SS "Configuration Files"
-The \fBAPI\fR library reads \fBslp.conf\fR(4), the default configuration file,
+The \fBAPI\fR library reads \fBslp.conf\fR(5), the default configuration file,
to obtain the operating parameters. You can specify the location of this file
with the \fBSLP_CONF_FILE\fR environment variable. If you do not set this
variable, or the file it refers to is invalid, the \fBAPI\fR will use the
@@ -915,7 +915,7 @@ free memory
.SH ENVIRONMENT VARIABLES
When \fBSLP_CONF_FILE\fR is set, use this file for configuration.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -931,7 +931,10 @@ MT-Level Safe
.TE
.SH SEE ALSO
-\fBslpd\fR(1M), \fBslp.conf\fR(4), \fBslpd.reg\fR(4), \fBattributes\fR(5)
+.BR slp.conf (5),
+.BR slpd.reg (5),
+.BR attributes (7),
+.BR slpd (8)
.sp
.LP
\fISystem Administration Guide: Network Services\fR
diff --git a/usr/src/man/man3slp/slp_strerror.3slp b/usr/src/man/man3slp/slp_strerror.3slp
index 85ed9b48c9..dba1e88df4 100644
--- a/usr/src/man/man3slp/slp_strerror.3slp
+++ b/usr/src/man/man3slp/slp_strerror.3slp
@@ -64,8 +64,11 @@ When set, use this file for configuration.
.SH SEE ALSO
.sp
.LP
-\fBslpd\fR(1M), \fBslp_api\fR(3SLP), \fBslp.conf\fR(4), \fBslpd.reg\fR(4),
-\fBattributes\fR(5)
+.BR slp_api (3SLP),
+.BR slp.conf (5),
+.BR slpd.reg (5),
+.BR attributes (7),
+.BR slpd (8)
.sp
.LP
\fISystem Administration Guide: Network Services\fR
diff --git a/usr/src/man/man3socket/accept.3socket b/usr/src/man/man3socket/accept.3socket
index 1cd0dc2546..2a66a51ab1 100644
--- a/usr/src/man/man3socket/accept.3socket
+++ b/usr/src/man/man3socket/accept.3socket
@@ -33,7 +33,7 @@ present on the queue and the socket is not marked as non-blocking,
\fBaccept()\fR blocks the caller until a connection is present. If the socket
is marked as non-blocking and no pending connections are present on the queue,
\fBaccept()\fR returns an error as described below. The \fBaccept()\fR
-function uses the \fBnetconfig\fR(4) file to determine the \fBSTREAMS\fR device
+function uses the \fBnetconfig\fR(5) file to determine the \fBSTREAMS\fR device
file name associated with \fIs\fR. This is the device on which the connect
indication will be accepted. The accepted socket, \fIns\fR, is used to read and
write data to and from the socket that connected to \fIns\fR. It is not used to
@@ -92,7 +92,7 @@ was called on it. This sets the socket into non-blocking mode. See
.RS 12n
The accepted socket will have the \fBO_NONBLOCK\fR flag set as if
\fBfcntl()\fR was called on it. This sets the socket into non-blocking mode
-(POSIX; see \fBstandards(5)\fR). See \fBO_NONBLOCK\fR in \fBfcntl.h(3HEAD)\fR
+(POSIX; see \fBstandards\fR(7)). See \fBO_NONBLOCK\fR in \fBfcntl.h(3HEAD)\fR
for more details.
.RE
.sp
@@ -237,7 +237,7 @@ bitwise inclusive-OR of \fBSOCK_CLOEXEC\fR, \fBSOCK_NONBLOCK\fR, and
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -254,5 +254,5 @@ MT-Level Safe
.LP
\fBpoll\fR(2), \fBbind\fR(3SOCKET), \fBconnect\fR(3SOCKET),
\fBlisten\fR(3SOCKET), \fBsockaddr\fR(3SOCKET), \fBselect\fR(3C),
-\fBsocket.h\fR(3HEAD), \fBsocket\fR(3SOCKET), \fBnetconfig\fR(4),
-\fBattributes\fR(5), \fBfcntl.h(3HEAD)\fR, \fBfcntl(2)\fR, \fBstandards(5)\fR
+\fBsocket.h\fR(3HEAD), \fBsocket\fR(3SOCKET), \fBnetconfig\fR(5),
+\fBattributes\fR(7), \fBfcntl.h(3HEAD)\fR, \fBfcntl(2)\fR, \fBstandards\fR(7)
diff --git a/usr/src/man/man3socket/bind.3socket b/usr/src/man/man3socket/bind.3socket
index 8c0f1cdfd7..ec76f57bd9 100644
--- a/usr/src/man/man3socket/bind.3socket
+++ b/usr/src/man/man3socket/bind.3socket
@@ -172,7 +172,7 @@ The inode would reside on a read-only file system.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -187,8 +187,12 @@ MT-Level Safe
.SH SEE ALSO
.LP
-\fBunlink\fR(2), \fBsocket\fR(3SOCKET), \fBsockaddr\fR(3SOCKET),
-\fBattributes\fR(5), \fBprivileges\fR(5), \fBsocket.h\fR(3HEAD)
+.BR unlink (2),
+.BR socket.h (3HEAD),
+.BR sockaddr (3SOCKET),
+.BR socket (3SOCKET),
+.BR attributes (7),
+.BR privileges (7)
.SH NOTES
.LP
Binding a name in the UNIX domain creates a socket in the file system that must
diff --git a/usr/src/man/man3socket/connect.3socket b/usr/src/man/man3socket/connect.3socket
index 53659f39cd..c0018566a7 100644
--- a/usr/src/man/man3socket/connect.3socket
+++ b/usr/src/man/man3socket/connect.3socket
@@ -453,7 +453,7 @@ type \fIs\fR. For example, \fIs\fR is a \fBSOCK_DGRAM\fR socket, while
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -468,6 +468,11 @@ MT-Level Safe
.SH SEE ALSO
.LP
-\fBclose\fR(2), \fBaccept\fR(3SOCKET), \fBgetsockname\fR(3SOCKET),
-\fBselect\fR(3C), \fBsocket\fR(3SOCKET), \fBsockaddr\fR(3SOCKET),
-\fBsocket.h\fR(3HEAD), \fBattributes\fR(5)
+.BR close (2),
+.BR select (3C),
+.BR socket.h (3HEAD),
+.BR accept (3SOCKET),
+.BR getsockname (3SOCKET),
+.BR sockaddr (3SOCKET),
+.BR socket (3SOCKET),
+.BR attributes (7)
diff --git a/usr/src/man/man3socket/ethers.3socket b/usr/src/man/man3socket/ethers.3socket
index a1bb59d838..f307a31a69 100644
--- a/usr/src/man/man3socket/ethers.3socket
+++ b/usr/src/man/man3socket/ethers.3socket
@@ -88,14 +88,14 @@ do the mapping, both these functions may lookup one or more of the following
sources: the ethers file and the \fBNIS\fR maps \fBethers.byname\fR and
\fBethers.byaddr\fR. The sources and
their lookup order are specified in the \fB/etc/nsswitch.conf\fR file. See
-\fBnsswitch.conf\fR(4) for details.
+\fBnsswitch.conf\fR(5) for details.
.sp
.LP
The function \fBether_line()\fR scans a line, pointed to by \fIl\fR, and sets
the hostname and the Ethernet number, pointed to by \fIe\fR. The string pointed
to by hostname must be long enough to hold the hostname and a \fINULL\fR
character. The function returns zero upon success and non-zero upon failure.
-The format of the scanned line is described by \fBethers\fR(4).
+The format of the scanned line is described by \fBethers\fR(5).
.SH FILES
.ne 2
.na
@@ -116,7 +116,7 @@ configuration file for the name service switch
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -131,4 +131,6 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBethers\fR(4), \fBnsswitch.conf\fR(4), \fBattributes\fR(5)
+.BR ethers (5),
+.BR nsswitch.conf (5),
+.BR attributes (7)
diff --git a/usr/src/man/man3socket/getaddrinfo.3socket b/usr/src/man/man3socket/getaddrinfo.3socket
index 6e24126b66..fa14f040f8 100644
--- a/usr/src/man/man3socket/getaddrinfo.3socket
+++ b/usr/src/man/man3socket/getaddrinfo.3socket
@@ -333,7 +333,7 @@ Prefer a destination that is reachable through the IP routing table.
T}
_
Prefer matching scope. T{
-Prefer a destination whose scope is equal to the scope of its source address. See \fBinet6\fR(7P) for the definition of scope used by this rule.
+Prefer a destination whose scope is equal to the scope of its source address. See \fBinet6\fR(4P) for the definition of scope used by this rule.
T}
_
Avoid link-local source. T{
@@ -345,13 +345,13 @@ Prefer a destination that is not deprecated (\fBIFF_DEPRECATED\fR).
T}
_
T{
-Prefer matching label. This rule uses labels that are obtained through the IPv6 default address selection policy table. See \fBipaddrsel\fR(1M) for a description of the default contents of the table and how the table is configured.
+Prefer matching label. This rule uses labels that are obtained through the IPv6 default address selection policy table. See \fBipaddrsel\fR(8) for a description of the default contents of the table and how the table is configured.
T} T{
Prefer a destination whose label is equal to the label of its source address.
T}
_
T{
-Prefer higher precedence. This rule uses precedence values that are obtained through the IPv6 default address selection policy table. See \fBipaddrsel\fR(1M) for a description of the default contents of the table and how the table is configured.
+Prefer higher precedence. This rule uses precedence values that are obtained through the IPv6 default address selection policy table. See \fBipaddrsel\fR(8) for a description of the default contents of the table and how the table is configured.
T} T{
Prefer the destination whose precedence is higher than the other destination.
T}
@@ -361,7 +361,7 @@ Prefer a destination if the interface that is used for sending packets to that d
T}
_
T{
-Prefer smaller scope. See \fBinet6\fR(7P) for the definition of this rule.
+Prefer smaller scope. See \fBinet6\fR(4P) for the definition of this rule.
T} T{
Prefer the destination whose scope is smaller than the other destination.
T}
@@ -512,7 +512,7 @@ configuration file for the name service switch
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -526,15 +526,24 @@ Interface Stability Committed
_
MT-Level MT-Safe
_
-Standard See \fBstandards\fR(5).
+Standard See \fBstandards\fR(7).
.TE
.SH SEE ALSO
.LP
-\fBipaddrsel\fR(1M), \fBgethostbyname\fR(3NSL), \fBgetipnodebyname\fR(3SOCKET),
-\fBhtonl\fR(3C), \fBinet\fR(3SOCKET), \fBsockaddr\fR(3SOCKET),
-\fBnetdb.h\fR(3HEAD), \fBsocket\fR(3SOCKET), \fBhosts\fR(4),
-\fBnsswitch.conf\fR(4), \fBattributes\fR(5), \fBstandards\fR(5), \fBinet6\fR(7P)
+.BR htonl (3C),
+.BR netdb.h (3HEAD),
+.BR gethostbyname (3NSL),
+.BR getipnodebyname (3SOCKET),
+.BR inet (3SOCKET),
+.BR sockaddr (3SOCKET),
+.BR socket (3SOCKET),
+.BR inet6 (4P),
+.BR hosts (5),
+.BR nsswitch.conf (5),
+.BR attributes (7),
+.BR standards (7),
+.BR ipaddrsel (8)
.sp
.LP
Draves, R. \fIRFC 3484, Default Address Selection for Internet Protocol version
diff --git a/usr/src/man/man3socket/getifaddrs.3socket b/usr/src/man/man3socket/getifaddrs.3socket
index 69324271af..274ae8f720 100644
--- a/usr/src/man/man3socket/getifaddrs.3socket
+++ b/usr/src/man/man3socket/getifaddrs.3socket
@@ -92,7 +92,7 @@ or \fBNULL\fR if one is not set.
If the \fBIFF_BROADCAST\fR bit is set in \fIifa_flags\fR, then
\fIifa_broadaddr\fR is valid, or \fBNULL\fR if not present. If the
\fBIFF_POINTOPOINT\fR bit is set, then \fIifa_dstaddr\fR is valid, or \fBNULL\fR
-if not present. These two flags are mutually exclusive; see \fBif_tcp\fR(7P)
+if not present. These two flags are mutually exclusive; see \fBif_tcp\fR(4P)
for more information.
.sp
@@ -129,14 +129,20 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBipadm\fR(1M), \fBifconfig\fR(1M), \fBioctl\fR(2), \fBmalloc\fR(3C),
-\fBsocket\fR(3SOCKET), \fBsockaddr\fR(3SOCKET), \fBsocket.h\fR(3HEAD),
-\fBif_tcp\fR(7P), \fBattributes\fR(5)
+.BR ioctl (2),
+.BR malloc (3C),
+.BR socket.h (3HEAD),
+.BR sockaddr (3SOCKET),
+.BR socket (3SOCKET),
+.BR if_tcp (4P),
+.BR attributes (7),
+.BR ifconfig (8),
+.BR ipadm (8)
.SH NOTES
.LP
On an illumos system, this function lists only interfaces with the \fBIFF_UP\fR
-flag set; see \fBif_tcp\fR(7P) and \fBifconfig\fR(1M) for more information.
+flag set; see \fBif_tcp\fR(4P) and \fBifconfig\fR(8) for more information.
.SH BUGS
.LP
diff --git a/usr/src/man/man3socket/getipnodebyname.3socket b/usr/src/man/man3socket/getipnodebyname.3socket
index 89e6100e03..cc1418254b 100644
--- a/usr/src/man/man3socket/getipnodebyname.3socket
+++ b/usr/src/man/man3socket/getipnodebyname.3socket
@@ -487,7 +487,7 @@ hostname.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -504,9 +504,14 @@ MT-Level Safe
.SH SEE ALSO
.LP
-\fBgetaddrinfo\fR(3SOCKET), \fBgethostbyname\fR(3NSL), \fBhtonl\fR(3C),
-\fBinet\fR(3SOCKET), \fBnetdb.h\fR(3HEAD), \fBhosts\fR(4),
-\fBnsswitch.conf\fR(4), \fBattributes\fR(5)
+.BR htonl (3C),
+.BR netdb.h (3HEAD),
+.BR gethostbyname (3NSL),
+.BR getaddrinfo (3SOCKET),
+.BR inet (3SOCKET),
+.BR hosts (5),
+.BR nsswitch.conf (5),
+.BR attributes (7)
.SH NOTES
.LP
No enumeration functions are provided for IPv6. Existing enumeration functions
diff --git a/usr/src/man/man3socket/getnetbyname.3socket b/usr/src/man/man3socket/getnetbyname.3socket
index acc0b88606..c2d4fdfbe3 100644
--- a/usr/src/man/man3socket/getnetbyname.3socket
+++ b/usr/src/man/man3socket/getnetbyname.3socket
@@ -58,7 +58,7 @@ getnetent_r, setnetent, endnetent \- get network entry
.LP
These functions are used to obtain entries for networks. An entry may come from
any of the sources for \fBnetworks\fR specified in the \fB/etc/nsswitch.conf\fR
-file. See \fBnsswitch.conf\fR(4).
+file. See \fBnsswitch.conf\fR(5).
.sp
.LP
\fBgetnetbyname()\fR searches for a network entry with the network name
@@ -242,7 +242,7 @@ configuration file for the name service switch
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -258,9 +258,14 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBIntro\fR(2), \fBIntro\fR(3), \fBbyteorder\fR(3SOCKET), \fBinet\fR(3SOCKET),
-\fBnetdb.h\fR(3HEAD), \fBnetworks\fR(4), \fBnsswitch.conf\fR(4),
-\fBattributes\fR(5)
+.BR Intro (2),
+.BR Intro (3),
+.BR netdb.h (3HEAD),
+.BR byteorder (3SOCKET),
+.BR inet (3SOCKET),
+.BR networks (5),
+.BR nsswitch.conf (5),
+.BR attributes (7)
.sp
.LP
Fuller, V., Li, T., Yu, J., and Varadhan, K. \fIRFC 1519, Classless
@@ -288,4 +293,4 @@ Multithread Applications\fR, for information about the use of the
.LP
Use of the enumeration interfaces \fBgetnetent()\fR and \fBgetnetent_r()\fR is
discouraged; enumeration may not be supported for all database sources. The
-semantics of enumeration are discussed further in \fBnsswitch.conf\fR(4).
+semantics of enumeration are discussed further in \fBnsswitch.conf\fR(5).
diff --git a/usr/src/man/man3socket/getpeername.3socket b/usr/src/man/man3socket/getpeername.3socket
index d1a6072637..dc4505878c 100644
--- a/usr/src/man/man3socket/getpeername.3socket
+++ b/usr/src/man/man3socket/getpeername.3socket
@@ -78,7 +78,7 @@ The argument \fIs\fR is not a socket.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -93,6 +93,10 @@ MT-Level Safe
.SH SEE ALSO
.LP
-\fBaccept\fR(3SOCKET), \fBbind\fR(3SOCKET), \fBgetsockname\fR(3SOCKET),
-\fBsockaddr\fR(3SOCKET),
-\fBsocket\fR(3SOCKET), \fBattributes\fR(5), \fBsocket.h\fR(3HEAD)
+.BR socket.h (3HEAD),
+.BR accept (3SOCKET),
+.BR bind (3SOCKET),
+.BR getsockname (3SOCKET),
+.BR sockaddr (3SOCKET),
+.BR socket (3SOCKET),
+.BR attributes (7)
diff --git a/usr/src/man/man3socket/getprotobyname.3socket b/usr/src/man/man3socket/getprotobyname.3socket
index 3a4d146c44..f4dd806210 100644
--- a/usr/src/man/man3socket/getprotobyname.3socket
+++ b/usr/src/man/man3socket/getprotobyname.3socket
@@ -75,10 +75,10 @@ each return a protocol entry.
.sp
.LP
The entry may come from one of the following sources: the protocols file (see
-\fBprotocols\fR(4)), the \fBNIS\fR maps ``protocols.byname'' and
+\fBprotocols\fR(5)), the \fBNIS\fR maps ``protocols.byname'' and
``protocols.bynumber''. The sources and
their lookup order are specified in the \fB/etc/nsswitch.conf\fR file (see
-\fBnsswitch.conf\fR(4) for details). Some name services such as NIS will return
+\fBnsswitch.conf\fR(5) for details). Some name services such as NIS will return
only one name for a host, whereas others such as DNS will return all
aliases.
.sp
@@ -169,7 +169,7 @@ the result.
\fB/etc/nsswitch.conf\fR
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -184,8 +184,11 @@ MT-Level See \fBNOTES\fR below.
.SH SEE ALSO
.LP
-\fBIntro\fR(3), \fBnsswitch.conf\fR(4), \fBprotocols\fR(4),
-\fBattributes\fR(5), \fBnetdb.h\fR(3HEAD)
+.BR Intro (3),
+.BR netdb.h (3HEAD),
+.BR nsswitch.conf (5),
+.BR protocols (5),
+.BR attributes (7)
.SH NOTES
.LP
Although \fBgetprotobyname_r()\fR, \fBgetprotobynumber_r()\fR, and
@@ -218,7 +221,7 @@ Use of \fBgetprotoent_r()\fR and \fBgetprotoent()\fR is discouraged;
enumeration is well-defined for the protocols file and is supported (albeit
inefficiently) for \fBNIS\fR but in general may not be
well-defined. The semantics of enumeration are discussed in
-\fBnsswitch.conf\fR(4).
+\fBnsswitch.conf\fR(5).
.SH BUGS
.LP
Only the Internet protocols are currently understood.
diff --git a/usr/src/man/man3socket/getservbyname.3socket b/usr/src/man/man3socket/getservbyname.3socket
index b9b2f1a98b..2779af5af0 100644
--- a/usr/src/man/man3socket/getservbyname.3socket
+++ b/usr/src/man/man3socket/getservbyname.3socket
@@ -56,7 +56,7 @@ getservent_r, setservent, endservent \- get service entry
.LP
These functions are used to obtain entries for Internet services. An entry may
come from any of the sources for \fBservices\fR specified in the
-\fB/etc/nsswitch.conf\fR file. See \fBnsswitch.conf\fR(4).
+\fB/etc/nsswitch.conf\fR file. See \fBnsswitch.conf\fR(5).
.sp
.LP
The \fBgetservbyname()\fR and \fBgetservbyport()\fR functions sequentially
@@ -266,7 +266,7 @@ configuration file for the name-service switch
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -283,9 +283,15 @@ T}
.SH SEE ALSO
.LP
-\fBIntro\fR(2), \fBIntro\fR(3), \fBbyteorder\fR(3C), \fBnetdir\fR(3NSL),
-\fBnetconfig\fR(4), \fBnsswitch.conf\fR(4), \fBservices\fR(4),
-\fBattributes\fR(5), \fBnetdb.h\fR(3HEAD)
+.BR Intro (2),
+.BR Intro (3),
+.BR byteorder (3C),
+.BR netdb.h (3HEAD),
+.BR netdir (3NSL),
+.BR netconfig (5),
+.BR nsswitch.conf (5),
+.BR services (5),
+.BR attributes (7)
.SH WARNINGS
.LP
The reentrant interfaces \fBgetservbyname_r()\fR, \fBgetservbyport_r()\fR, and
@@ -304,10 +310,10 @@ To ensure that they all return consistent results, \fBgetservbyname()\fR,
\fBgetservbyname_r()\fR, and \fBnetdir_getbyname()\fR are implemented in terms
of the same internal library function. This function obtains the system-wide
source lookup policy based on the \fBinet\fR family entries in
-\fBnetconfig\fR(4) and the \fBservices:\fR entry in \fBnsswitch.conf\fR(4).
+\fBnetconfig\fR(5) and the \fBservices:\fR entry in \fBnsswitch.conf\fR(5).
Similarly, \fBgetservbyport()\fR, \fBgetservbyport_r()\fR, and
\fBnetdir_getbyaddr()\fR are implemented in terms of the same internal library
-function. If the \fBinet\fR family entries in \fBnetconfig\fR(4) have a ``-''
+function. If the \fBinet\fR family entries in \fBnetconfig\fR(5) have a ``-''
in the last column for nametoaddr libraries, then the entry for \fBservices\fR
in \fBnsswitch.conf\fR will be used; otherwise the nametoaddr libraries in that
column will be used, and \fBnsswitch.conf\fR will not be consulted.
@@ -327,4 +333,4 @@ Multithread Applications\fR, for information about the use of the
.LP
Use of the enumeration interfaces \fBgetservent()\fR and \fBgetservent_r()\fR
is discouraged; enumeration may not be supported for all database sources. The
-semantics of enumeration are discussed further in \fBnsswitch.conf\fR(4).
+semantics of enumeration are discussed further in \fBnsswitch.conf\fR(5).
diff --git a/usr/src/man/man3socket/getsockname.3socket b/usr/src/man/man3socket/getsockname.3socket
index 98e134bddd..c1a75d369e 100644
--- a/usr/src/man/man3socket/getsockname.3socket
+++ b/usr/src/man/man3socket/getsockname.3socket
@@ -68,7 +68,7 @@ The argument \fIs\fR is not a socket.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -83,5 +83,8 @@ MT-Level Safe
.SH SEE ALSO
.LP
-\fBbind\fR(3SOCKET), \fBgetpeername\fR(3SOCKET), \fBsockaddr\fR(3SOCKET),
-\fBsocket\fR(3SOCKET), \fBattributes\fR(5)
+.BR bind (3SOCKET),
+.BR getpeername (3SOCKET),
+.BR sockaddr (3SOCKET),
+.BR socket (3SOCKET),
+.BR attributes (7)
diff --git a/usr/src/man/man3socket/getsockopt.3socket b/usr/src/man/man3socket/getsockopt.3socket
index d6b9002229..7e2c55509f 100644
--- a/usr/src/man/man3socket/getsockopt.3socket
+++ b/usr/src/man/man3socket/getsockopt.3socket
@@ -290,7 +290,7 @@ increased for high-volume connections or may be decreased to limit the possible
backlog of incoming data. The maximum buffer size for \fBUDP\fR is determined
by the value of the \fBndd\fR variable \fBudp_max_buf\fR. The maximum buffer
size for \fBTCP\fR is determined the value of the \fBndd\fR variable
-\fBtcp_max_buf\fR. Use the \fBndd\fR(1M) utility to determine the current
+\fBtcp_max_buf\fR. Use the \fBndd\fR(8) utility to determine the current
default values. See the \fISolaris Tunable Parameters Reference Manual\fR for
information on setting the values of \fBudp_max_buf\fR and \fBtcp_max_buf\fR.
At present, lowering \fBSO_RCVBUF\fR on a TCP connection after it has been
@@ -315,7 +315,7 @@ the native data format, corresponding to when the datagram was received.
The \fBSO_EXCLBIND\fR option is used to enable or disable the exclusive binding
of a socket. It overrides the use of the \fBSO_REUSEADDR\fR option to reuse an
address on \fBbind\fR(3SOCKET). The actual semantics of the \fBSO_EXCLBIND\fR
-option depend on the underlying protocol. See \fBtcp\fR(7P) or \fBudp\fR(7P)
+option depend on the underlying protocol. See \fBtcp\fR(4P) or \fBudp\fR(4P)
for more information.
.sp
.LP
@@ -353,7 +353,7 @@ that use the \fBSO_ALLZONES\fR option to initiate connections or send datagram
traffic should specify the source address for outbound traffic by binding to a
specific address. There is no effect from setting this option in an
exclusive-IP zone. Setting this option requires the \fBsys_net_config\fR
-privilege. See \fBzones\fR(5).
+privilege. See \fBzones\fR(7).
.SH RETURN VALUES
.sp
.LP
@@ -505,7 +505,7 @@ has been shut down.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -521,11 +521,21 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBndd\fR(1M), \fBclose\fR(2), \fBioctl\fR(2), \fBread\fR(2),
-\fBbind\fR(3SOCKET), \fBgetprotobyname\fR(3SOCKET), \fBrecv\fR(3SOCKET),
-\fBrecvmsg\fR(3XNET), \fBsend\fR(3SOCKET), \fBsocket\fR(3SOCKET),
-\fBsocket.h\fR(3HEAD), \fBattributes\fR(5), \fBzones\fR(5), \fBtcp\fR(7P),
-\fBudp\fR(7P)
+.BR close (2),
+.BR ioctl (2),
+.BR read (2),
+.BR socket.h (3HEAD),
+.BR bind (3SOCKET),
+.BR getprotobyname (3SOCKET),
+.BR recv (3SOCKET),
+.BR send (3SOCKET),
+.BR socket (3SOCKET),
+.BR recvmsg (3XNET),
+.BR tcp (4P),
+.BR udp (4P),
+.BR attributes (7),
+.BR zones (7),
+.BR ndd (8)
.sp
.LP
\fISolaris Tunable Parameters Reference Manual\fR
diff --git a/usr/src/man/man3socket/getsourcefilter.3socket b/usr/src/man/man3socket/getsourcefilter.3socket
index 7087498ac0..a38d81c0c9 100644
--- a/usr/src/man/man3socket/getsourcefilter.3socket
+++ b/usr/src/man/man3socket/getsourcefilter.3socket
@@ -195,7 +195,7 @@ The source filter list is larger than that allowed by the implementation.
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -211,8 +211,10 @@ MT-Level Safe
.TE
.SH SEE ALSO
-\fBif_nametoindex\fR(3SOCKET), \fBsocket\fR(3SOCKET), \fBsockaddr\fR(3SOCKET),
-\fBattributes\fR(5)
+.BR if_nametoindex (3SOCKET),
+.BR sockaddr (3SOCKET),
+.BR socket (3SOCKET),
+.BR attributes (7)
.sp
.LP
RFC 3678
diff --git a/usr/src/man/man3socket/icmp6_filter.3socket b/usr/src/man/man3socket/icmp6_filter.3socket
index 3bd77f69f2..362aec5421 100644
--- a/usr/src/man/man3socket/icmp6_filter.3socket
+++ b/usr/src/man/man3socket/icmp6_filter.3socket
@@ -80,7 +80,7 @@ ICMP6_FILTER.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
diff --git a/usr/src/man/man3socket/if_nametoindex.3socket b/usr/src/man/man3socket/if_nametoindex.3socket
index 04331f79ab..bfe206d556 100644
--- a/usr/src/man/man3socket/if_nametoindex.3socket
+++ b/usr/src/man/man3socket/if_nametoindex.3socket
@@ -147,7 +147,7 @@ pointer that was returned by \fBif_nameindex()\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -162,5 +162,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBifconfig\fR(1M), \fBif_nametoindex\fR(3XNET), \fBattributes\fR(5),
-\fBif\fR(7P)
+.BR if_nametoindex (3XNET),
+.BR if (4P),
+.BR attributes (7),
+.BR ifconfig (8)
diff --git a/usr/src/man/man3socket/inet6_opt.3socket b/usr/src/man/man3socket/inet6_opt.3socket
index 75aa96b066..94ab5cb1b6 100644
--- a/usr/src/man/man3socket/inet6_opt.3socket
+++ b/usr/src/man/man3socket/inet6_opt.3socket
@@ -156,7 +156,7 @@ The \fBinet6_opt_get_val()\fR function returns the \fIoffset\fR for the next
field (that is, \fIoffset\fR + \fIvallen\fR) which can be used when extracting
option content with multiple fields.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
diff --git a/usr/src/man/man3socket/inet6_rth.3socket b/usr/src/man/man3socket/inet6_rth.3socket
index 02dca243d4..ddee47986b 100644
--- a/usr/src/man/man3socket/inet6_rth.3socket
+++ b/usr/src/man/man3socket/inet6_rth.3socket
@@ -167,7 +167,7 @@ the routing header.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
diff --git a/usr/src/man/man3socket/listen.3socket b/usr/src/man/man3socket/listen.3socket
index f918145a50..beeeb95559 100644
--- a/usr/src/man/man3socket/listen.3socket
+++ b/usr/src/man/man3socket/listen.3socket
@@ -76,7 +76,7 @@ The socket is not of a type that supports the operation \fBlisten()\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -92,8 +92,11 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBaccept\fR(3SOCKET), \fBconnect\fR(3SOCKET), \fBsocket\fR(3SOCKET),
-\fBattributes\fR(5), \fBsocket.h\fR(3HEAD)
+.BR socket.h (3HEAD),
+.BR accept (3SOCKET),
+.BR connect (3SOCKET),
+.BR socket (3SOCKET),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3socket/rcmd.3socket b/usr/src/man/man3socket/rcmd.3socket
index cd9517a569..386647d3be 100644
--- a/usr/src/man/man3socket/rcmd.3socket
+++ b/usr/src/man/man3socket/rcmd.3socket
@@ -65,7 +65,7 @@ clients that request as service with \fBrcmd\fR.
.sp
.LP
All of these functions are present in the same file and are used by the
-\fBin.rshd\fR(1M) server among others.
+\fBin.rshd\fR(8) server among others.
.sp
.LP
The \fBrcmd()\fR and \fBrcmd_af()\fR functions look up the host \fI*ahost\fR
@@ -89,7 +89,7 @@ arbitrary signals to the remote process, other than possibly sending
out-of-band data.
.sp
.LP
-The protocol is described in detail in \fBin.rshd\fR(1M).
+The protocol is described in detail in \fBin.rshd\fR(8).
.sp
.LP
The \fBrresvport()\fR and \fBrresvport_af()\fR functions are used to obtain a
@@ -148,7 +148,7 @@ user's trusted hosts and users
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -168,6 +168,12 @@ should be called only from the main thread.
.SH SEE ALSO
.sp
.LP
-\fBrlogin\fR(1), \fBrsh\fR(1), \fBin.rexecd\fR(1M), \fBin.rshd\fR(1M),
-\fBIntro\fR(2), \fBgetaddrinfo\fR(3SOCKET), \fBgethostbyname\fR(3NSL),
-\fBrexec\fR(3SOCKET), \fBattributes\fR(5)
+.BR rlogin (1),
+.BR rsh (1),
+.BR Intro (2),
+.BR gethostbyname (3NSL),
+.BR getaddrinfo (3SOCKET),
+.BR rexec (3SOCKET),
+.BR attributes (7),
+.BR in.rexecd (8),
+.BR in.rshd (8)
diff --git a/usr/src/man/man3socket/recv.3socket b/usr/src/man/man3socket/recv.3socket
index 0881252913..9d95155967 100644
--- a/usr/src/man/man3socket/recv.3socket
+++ b/usr/src/man/man3socket/recv.3socket
@@ -126,7 +126,7 @@ error.
In addition to the errors documented below, an asynchronous error generated by
the underlying socket protocol may be returned. For the full list of errors,
please see the corresponding socket protocol manual page. For example, for a
-list of TCP errors, please see \fBtcp\fR(7P).
+list of TCP errors, please see \fBtcp\fR(4P).
.sp
.LP
The \fBrecv()\fR, \fBrecvfrom()\fR, and \fBrecvmsg()\fR functions return errors
@@ -276,7 +276,7 @@ One of the \fIiov_len\fR values in the \fBmsg_iov\fR array member of the
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -295,6 +295,10 @@ MT-Level Safe
.LP
\fBfcntl\fR(2), \fBioctl\fR(2), \fBpoll\fR(2), \fBread\fR(2),
\fBconnect\fR(3SOCKET), \fBgetsockopt\fR(3SOCKET), \fBlibxnet\fR(3LIB),
-\fBport_get(3C)\fR, \fBselect\fR(3C), \fBsend\fR(3SOCKET),
-\fBsockaddr\fR(3SOCKET), \fBsocket\fR(3SOCKET), \fBsocket.h\fR(3HEAD),
-\fBattributes\fR(5), \fBtcp\fR(7P)
+\fBport_get(3C)\fR, \fBselect\fR(3C),
+.BR socket.h (3HEAD),
+.BR send (3SOCKET),
+.BR sockaddr (3SOCKET),
+.BR socket (3SOCKET),
+.BR tcp (4P),
+.BR attributes (7)
diff --git a/usr/src/man/man3socket/rexec.3socket b/usr/src/man/man3socket/rexec.3socket
index 99461eb178..639ac708f0 100644
--- a/usr/src/man/man3socket/rexec.3socket
+++ b/usr/src/man/man3socket/rexec.3socket
@@ -47,7 +47,7 @@ connectivity to the remote host.
The port \fIinport\fR specifies which \fBDARPA\fR Internet port to use for the
connection. The port number used must be in network byte order, as supplied by
a call to \fBhtons\fR(3C). The protocol for connection is described in
-detail in \fBin.rexecd\fR(1M).
+detail in \fBin.rexecd\fR(8).
.sp
.LP
If the call succeeds, a socket of type \fBSOCK_STREAM\fR is returned to the
@@ -82,7 +82,7 @@ the socket type \fBSOCK_STREAM\fR in the address family \fBAF_INET\fR or
If either \fBrexec()\fR or \fBrexec_af()\fR fails, \fB\(mi1\fR is returned.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -101,6 +101,10 @@ This interface is Unsafe in multithreaded applications. Unsafe interfaces
should be called only from the main thread.
.SH SEE ALSO
.LP
-\fBin.rexecd\fR(1M), \fBgetaddrinfo\fR(3SOCKET), \fBgethostbyname\fR(3NSL),
-\fBgetservbyname\fR(3SOCKET), \fBhtonl\fR(3C), \fBsocket\fR(3SOCKET),
-\fBattributes\fR(5)
+.BR htonl (3C),
+.BR gethostbyname (3NSL),
+.BR getaddrinfo (3SOCKET),
+.BR getservbyname (3SOCKET),
+.BR socket (3SOCKET),
+.BR attributes (7),
+.BR in.rexecd (8)
diff --git a/usr/src/man/man3socket/sctp_bindx.3socket b/usr/src/man/man3socket/sctp_bindx.3socket
index 60f3fe905d..87ddbc02d6 100644
--- a/usr/src/man/man3socket/sctp_bindx.3socket
+++ b/usr/src/man/man3socket/sctp_bindx.3socket
@@ -121,7 +121,7 @@ The last address is requested to be removed from an established association.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -138,11 +138,21 @@ MT-Level Safe
.SH SEE ALSO
.LP
-\fBbind\fR(3SOCKET), \fBin.h\fR(3HEAD), \fBlibsctp\fR(3LIB),
-\fBlisten\fR(3SOCKET), \fBsctp_freeladdrs\fR(3SOCKET),
-\fBsctp_freepaddrs\fR(3SOCKET), \fBsctp_getladdrs\fR(3SOCKET),
-\fBsctp_getpaddrs\fR(3SOCKET), \fBsockaddr\fR(3SOCKET), \fBsocket\fR(3SOCKET),
-\fBinet\fR(7P), \fBinet6\fR(7P), \fBip\fR(7P), \fBip6\fR(7P), \fBsctp\fR(7P)
+.BR in.h (3HEAD),
+.BR libsctp (3LIB),
+.BR bind (3SOCKET),
+.BR listen (3SOCKET),
+.BR sctp_freeladdrs (3SOCKET),
+.BR sctp_freepaddrs (3SOCKET),
+.BR sctp_getladdrs (3SOCKET),
+.BR sctp_getpaddrs (3SOCKET),
+.BR sockaddr (3SOCKET),
+.BR socket (3SOCKET),
+.BR inet (4P),
+.BR inet6 (4P),
+.BR ip (4P),
+.BR ip6 (4P),
+.BR sctp (4P)
.SH NOTES
.LP
diff --git a/usr/src/man/man3socket/sctp_getladdrs.3socket b/usr/src/man/man3socket/sctp_getladdrs.3socket
index f343921788..23c71cc3ba 100644
--- a/usr/src/man/man3socket/sctp_getladdrs.3socket
+++ b/usr/src/man/man3socket/sctp_getladdrs.3socket
@@ -96,7 +96,7 @@ The \fIid\fR argument is an invalid socket.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -113,8 +113,16 @@ MT-Level Safe
.SH SEE ALSO
.LP
-\fBbind\fR(3SOCKET), \fBin.h\fR(3HEAD), \fBlibsctp\fR(3LIB),
-\fBsctp_freepaddrs\fR(3SOCKET), \fBsctp_getpaddrs\fR(3SOCKET),
-\fBsockaddr\fR(3SOCKET),
-\fBsocket\fR(3SOCKET), \fBattributes\fR(5), \fBinet\fR(7P), \fBinet6\fR(7P),
-\fBip\fR(7P), \fBip6\fR(7P), \fBsctp\fR(7P)
+.BR in.h (3HEAD),
+.BR libsctp (3LIB),
+.BR bind (3SOCKET),
+.BR sctp_freepaddrs (3SOCKET),
+.BR sctp_getpaddrs (3SOCKET),
+.BR sockaddr (3SOCKET),
+.BR socket (3SOCKET),
+.BR inet (4P),
+.BR inet6 (4P),
+.BR ip (4P),
+.BR ip6 (4P),
+.BR sctp (4P),
+.BR attributes (7)
diff --git a/usr/src/man/man3socket/sctp_getpaddrs.3socket b/usr/src/man/man3socket/sctp_getpaddrs.3socket
index c2558279b2..7624e0b5ea 100644
--- a/usr/src/man/man3socket/sctp_getpaddrs.3socket
+++ b/usr/src/man/man3socket/sctp_getpaddrs.3socket
@@ -106,7 +106,7 @@ The specified socket is not connected.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -123,8 +123,16 @@ MT-Level Safe
.SH SEE ALSO
.LP
-\fBbind\fR(3SOCKET), \fBin.h\fR(3HEAD), \fBlibsctp\fR(3LIB),
-\fBsctp_freeladdrs\fR(3SOCKET), \fBsctp_getladdrs\fR(3SOCKET),
-\fBsockaddr\fR(3SOCKET),
-\fBsocket\fR(3SOCKET), \fBattributes\fR(5), \fBinet\fR(7P), \fBinet6\fR(7P),
-\fBip\fR(7P), \fBip6\fR(7P), \fBsctp\fR(7P)
+.BR in.h (3HEAD),
+.BR libsctp (3LIB),
+.BR bind (3SOCKET),
+.BR sctp_freeladdrs (3SOCKET),
+.BR sctp_getladdrs (3SOCKET),
+.BR sockaddr (3SOCKET),
+.BR socket (3SOCKET),
+.BR inet (4P),
+.BR inet6 (4P),
+.BR ip (4P),
+.BR ip6 (4P),
+.BR sctp (4P),
+.BR attributes (7)
diff --git a/usr/src/man/man3socket/sctp_opt_info.3socket b/usr/src/man/man3socket/sctp_opt_info.3socket
index 63984ffd88..1a52b80590 100644
--- a/usr/src/man/man3socket/sctp_opt_info.3socket
+++ b/usr/src/man/man3socket/sctp_opt_info.3socket
@@ -337,7 +337,7 @@ The address family for the peer's address is other than \fBAF_INET\fR or
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -354,6 +354,14 @@ MT-Level Safe
.SH SEE ALSO
.LP
-\fBin.h\fR(3HEAD), \fBlibsctp\fR(3LIB), \fBgetsockopt\fR(3SOCKET),
-\fBsetsockopt\fR(3SOCKET), \fBsockaddr\fR(3SOCKET), \fBsocket\fR(3SOCKET),
-\fBinet\fR(7P), \fBinet6\fR(7P), \fBip\fR(7P), \fBip6\fR(7P), \fBsctp\fR(7P)
+.BR in.h (3HEAD),
+.BR libsctp (3LIB),
+.BR getsockopt (3SOCKET),
+.BR setsockopt (3SOCKET),
+.BR sockaddr (3SOCKET),
+.BR socket (3SOCKET),
+.BR inet (4P),
+.BR inet6 (4P),
+.BR ip (4P),
+.BR ip6 (4P),
+.BR sctp (4P)
diff --git a/usr/src/man/man3socket/sctp_peeloff.3socket b/usr/src/man/man3socket/sctp_peeloff.3socket
index 6dd770f3b1..c2a62edcb5 100644
--- a/usr/src/man/man3socket/sctp_peeloff.3socket
+++ b/usr/src/man/man3socket/sctp_peeloff.3socket
@@ -67,7 +67,7 @@ Failure to create a new user file descriptor or file structure.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -84,4 +84,7 @@ MT-Level Safe
.SH SEE ALSO
.LP
-\fBin.h\fR(3HEAD), \fBlibsctp\fR(3LIB), \fBsocket\fR(3SOCKET), \fBsctp\fR(7P)
+.BR in.h (3HEAD),
+.BR libsctp (3LIB),
+.BR socket (3SOCKET),
+.BR sctp (4P)
diff --git a/usr/src/man/man3socket/sctp_recvmsg.3socket b/usr/src/man/man3socket/sctp_recvmsg.3socket
index 875afc6714..45f64206dd 100644
--- a/usr/src/man/man3socket/sctp_recvmsg.3socket
+++ b/usr/src/man/man3socket/sctp_recvmsg.3socket
@@ -114,7 +114,7 @@ There is no established association.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -131,8 +131,16 @@ MT-Level Safe
.SH SEE ALSO
.LP
-\fBaccept\fR(3SOCKET), \fBbind\fR(3SOCKET), \fBconnect\fR(3SOCKET),
-\fBin.h\fR(3HEAD), \fBlibsctp\fR(3LIB), \fBlisten\fR(3SOCKET),
-\fBrecvmsg\fR(3SOCKET), \fBsctp_opt_info\fR(3SOCKET), \fBsetsockopt\fR(3SOCKET),
-\fBsockaddr\fR(3SOCKET), \fBsocket\fR(3SOCKET), \fBsocket.h\fR(3HEAD),
-\fBsctp\fR(7P)
+.BR in.h (3HEAD),
+.BR socket.h (3HEAD),
+.BR libsctp (3LIB),
+.BR accept (3SOCKET),
+.BR bind (3SOCKET),
+.BR connect (3SOCKET),
+.BR listen (3SOCKET),
+.BR recvmsg (3SOCKET),
+.BR sctp_opt_info (3SOCKET),
+.BR setsockopt (3SOCKET),
+.BR sockaddr (3SOCKET),
+.BR socket (3SOCKET),
+.BR sctp (4P)
diff --git a/usr/src/man/man3socket/sctp_send.3socket b/usr/src/man/man3socket/sctp_send.3socket
index 3a44106596..bb319cf0be 100644
--- a/usr/src/man/man3socket/sctp_send.3socket
+++ b/usr/src/man/man3socket/sctp_send.3socket
@@ -161,7 +161,7 @@ or \fBAF_INET6\fR.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -178,7 +178,14 @@ MT-Level Safe
.SH SEE ALSO
.LP
-\fBaccept\fR(3SOCKET), \fBbind\fR(3SOCKET), \fBconnect\fR(3SOCKET),
-\fBin.h\fR(3HEAD), \fBlibsctp\fR(3LIB), \fBlisten\fR(3SOCKET),
-\fBsctp_sendmsg\fR(3SOCKET), \fBsendmsg\fR(3SOCKET), \fBsocket\fR(3SOCKET),
-\fBsocket.h\fR(3HEAD), \fBsctp\fR(7P)
+.BR in.h (3HEAD),
+.BR socket.h (3HEAD),
+.BR libsctp (3LIB),
+.BR accept (3SOCKET),
+.BR bind (3SOCKET),
+.BR connect (3SOCKET),
+.BR listen (3SOCKET),
+.BR sctp_sendmsg (3SOCKET),
+.BR sendmsg (3SOCKET),
+.BR socket (3SOCKET),
+.BR sctp (4P)
diff --git a/usr/src/man/man3socket/sctp_sendmsg.3socket b/usr/src/man/man3socket/sctp_sendmsg.3socket
index 281481a340..10f48f65c4 100644
--- a/usr/src/man/man3socket/sctp_sendmsg.3socket
+++ b/usr/src/man/man3socket/sctp_sendmsg.3socket
@@ -242,7 +242,7 @@ or \fBAF_INET6\fR.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -259,7 +259,15 @@ MT-Level Safe
.SH SEE ALSO
.LP
-\fBaccept\fR(3SOCKET), \fBbind\fR(3SOCKET), \fBconnect\fR(3SOCKET),
-\fBin.h\fR(3HEAD), \fBlibsctp\fR(3LIB), \fBlisten\fR(3SOCKET),
-\fBsendmsg\fR(3SOCKET), \fBsockaddr\fR(3SOCKET), \fBsocket\fR(3SOCKET),
-\fBsocket.h\fR(3HEAD), \fBattributes\fR(5), \fBsctp\fR(7P)
+.BR in.h (3HEAD),
+.BR socket.h (3HEAD),
+.BR libsctp (3LIB),
+.BR accept (3SOCKET),
+.BR bind (3SOCKET),
+.BR connect (3SOCKET),
+.BR listen (3SOCKET),
+.BR sendmsg (3SOCKET),
+.BR sockaddr (3SOCKET),
+.BR socket (3SOCKET),
+.BR sctp (4P),
+.BR attributes (7)
diff --git a/usr/src/man/man3socket/send.3socket b/usr/src/man/man3socket/send.3socket
index 9589479569..ee46cf77d5 100644
--- a/usr/src/man/man3socket/send.3socket
+++ b/usr/src/man/man3socket/send.3socket
@@ -105,7 +105,7 @@ Otherwise, they return \fB-1\fR and set \fBerrno\fR to indicate the error.
In addition to the errors documented below, an asynchronous error generated by
the underlying socket protocol may be returned. For the full list of errors,
please see the corresponding socket protocol manual page. For example, for a
-list of TCP errors, please see \fBtcp\fR(7P).
+list of TCP errors, please see \fBtcp\fR(4P).
.sp
.LP
The \fBsend()\fR, \fBsendto()\fR, and \fBsendmsg()\fR functions return errors
@@ -276,7 +276,7 @@ unless the \fBMSG_NOSIGNAL\fR flag is set.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -293,7 +293,15 @@ MT-Level Safe
.SH SEE ALSO
.LP
-\fBfcntl\fR(2), \fBpoll\fR(2), \fBwrite\fR(2), \fBconnect\fR(3SOCKET),
-\fBgetsockopt\fR(3SOCKET), \fBrecv\fR(3SOCKET), \fBselect\fR(3C),
-\fBsockaddr\fR(3SOCKET), \fBsocket\fR(3SOCKET), \fBsocket.h\fR(3HEAD),
-\fBattributes\fR(5), \fBtcp\fR(7P)
+.BR fcntl (2),
+.BR poll (2),
+.BR write (2),
+.BR select (3C),
+.BR socket.h (3HEAD),
+.BR connect (3SOCKET),
+.BR getsockopt (3SOCKET),
+.BR recv (3SOCKET),
+.BR sockaddr (3SOCKET),
+.BR socket (3SOCKET),
+.BR tcp (4P),
+.BR attributes (7)
diff --git a/usr/src/man/man3socket/shutdown.3socket b/usr/src/man/man3socket/shutdown.3socket
index 752a8731e7..d2de09d683 100644
--- a/usr/src/man/man3socket/shutdown.3socket
+++ b/usr/src/man/man3socket/shutdown.3socket
@@ -87,7 +87,7 @@ The \fIs\fR value is not a socket.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -103,5 +103,7 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBconnect\fR(3SOCKET), \fBsocket\fR(3SOCKET), \fBsocket.h\fR(3HEAD),
-\fBattributes\fR(5)
+.BR socket.h (3HEAD),
+.BR connect (3SOCKET),
+.BR socket (3SOCKET),
+.BR attributes (7)
diff --git a/usr/src/man/man3socket/sockaddr.3socket b/usr/src/man/man3socket/sockaddr.3socket
index 3d5af60020..504534e550 100644
--- a/usr/src/man/man3socket/sockaddr.3socket
+++ b/usr/src/man/man3socket/sockaddr.3socket
@@ -213,9 +213,9 @@ and the corresponding representation.
Example 1 shows how to prepare an IPv4 socket and deal with
network byte-order.
See
-.Xr inet 7P
+.Xr inet 4P
and
-.Xr ip 7P
+.Xr ip 4P
for more information on IPv4, socket options, etc.
.Ss struct sockaddr_in6
The
@@ -293,9 +293,9 @@ calls.
Example 2 shows how to prepare an IPv6 socket.
For more information on
IPv6, please see
-.Xr inet6 7P
+.Xr inet6 4P
and
-.Xr ip6 7P .
+.Xr ip6 4P .
.Ss struct sockaddr_un
The
.Sy sockaddr_un
@@ -328,7 +328,7 @@ The
.Sy sockaddr_dl
structure is used to describe a layer 2 link-level address.
This is used as part of various socket ioctls, such as those for
-.Xr arp 7P .
+.Xr arp 4P .
The structure has the following members:
.Bd -literal -offset indent
ushort_t sdl_family; /* address family */
@@ -350,7 +350,7 @@ is non-zero this refers to the interface identifier that corresponds to
the
.Sy struct sockaddr_dl .
This identifier is the same identifier that's shown by tools like
-.Xr ifconfig 1M
+.Xr ifconfig 8
and used in the SIOC* set of socket ioctls.
The member
.Em sdl_type
@@ -435,7 +435,7 @@ The member
.Em sll_ifindex
is the interface's index.
It is used as an identifier in various ioctls and included in the output of
-.Xr ifconfig 1M .
+.Xr ifconfig 8 .
When calling
.Xr bind 3SOCKET
it should be filled in with the index that corresponds to the interface
@@ -462,7 +462,7 @@ promiscuous mode.
The member
.Em sll_hatype
contains the hardware type as defined by
-.Xr arp 7P .
+.Xr arp 4P .
The list of types can be found in
.In net/if_arp.h .
The member
@@ -580,8 +580,8 @@ main(void)
.Xr bind 3SOCKET ,
.Xr connect 3SOCKET ,
.Xr socket 3SOCKET ,
-.Xr arp 7P ,
-.Xr inet 7P ,
-.Xr inet6 7P ,
-.Xr ip 7P ,
-.Xr ip6 7P
+.Xr arp 4P ,
+.Xr inet 4P ,
+.Xr inet6 4P ,
+.Xr ip 4P ,
+.Xr ip6 4P
diff --git a/usr/src/man/man3socket/socket.3socket b/usr/src/man/man3socket/socket.3socket
index 2b95a480d0..1ceceb1098 100644
--- a/usr/src/man/man3socket/socket.3socket
+++ b/usr/src/man/man3socket/socket.3socket
@@ -123,7 +123,7 @@ provide nonblocking semantics as described for \fBO_NONBLOCK\fR in \fBopen\fR(2)
.sp
.LP
-There must be an entry in the \fBnetconfig\fR(4) file for at least each
+There must be an entry in the \fBnetconfig\fR(5) file for at least each
protocol family and type required. If a non-zero protocol has been specified
but no exact match for the protocol family, type, and protocol is found, then
the first entry containing the specified family and type with a \fIprotocol\fR
@@ -298,7 +298,7 @@ One or more of the specified flags is not supported.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -314,12 +314,28 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBnca\fR(1), \fBclose\fR(2), \fBfcntl\fR(2), \fBioctl\fR(2), \fBread\fR(2),
-\fBwrite\fR(2), \fBaccept\fR(3SOCKET), \fBbind\fR(3SOCKET), \fBexec\fR(2),
-\fBconnect\fR(3SOCKET), \fBgetsockname\fR(3SOCKET), \fBgetsockopt\fR(3SOCKET),
-\fBin.h\fR(3HEAD), \fBlisten\fR(3SOCKET), \fBrecv\fR(3SOCKET), \fBopen\fR(2),
-\fBsetsockopt\fR(3SOCKET), \fBsend\fR(3SOCKET), \fBshutdown\fR(3SOCKET),
-\fBsocket.h\fR(3HEAD), \fBsocketpair\fR(3SOCKET), \fBattributes\fR(5)
+.BR nca (1),
+.BR close (2),
+.BR exec (2),
+.BR fcntl (2),
+.BR ioctl (2),
+.BR open (2),
+.BR read (2),
+.BR write (2),
+.BR in.h (3HEAD),
+.BR socket.h (3HEAD),
+.BR accept (3SOCKET),
+.BR bind (3SOCKET),
+.BR connect (3SOCKET),
+.BR getsockname (3SOCKET),
+.BR getsockopt (3SOCKET),
+.BR listen (3SOCKET),
+.BR recv (3SOCKET),
+.BR send (3SOCKET),
+.BR setsockopt (3SOCKET),
+.BR shutdown (3SOCKET),
+.BR socketpair (3SOCKET),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3socket/socketpair.3socket b/usr/src/man/man3socket/socketpair.3socket
index e4f5373ef1..00fbe418b8 100644
--- a/usr/src/man/man3socket/socketpair.3socket
+++ b/usr/src/man/man3socket/socketpair.3socket
@@ -99,7 +99,7 @@ The process does not have appropriate privileges.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -115,8 +115,11 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBpipe\fR(2), \fBread\fR(2), \fBwrite\fR(2), \fBsocket.h\fR(3HEAD),
-\fBattributes\fR(5)
+.BR pipe (2),
+.BR read (2),
+.BR write (2),
+.BR socket.h (3HEAD),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3socket/spray.3socket b/usr/src/man/man3socket/spray.3socket
index 994d3543d4..2aac7438cd 100644
--- a/usr/src/man/man3socket/spray.3socket
+++ b/usr/src/man/man3socket/spray.3socket
@@ -114,7 +114,7 @@ The following code fragment demonstrates how the spray program is used:
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -130,7 +130,9 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBspray\fR(1M), \fBrpc_clnt_calls\fR(3NSL), \fBattributes\fR(5)
+.BR rpc_clnt_calls (3NSL),
+.BR attributes (7),
+.BR spray (8)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3stmf/stmfAddToHostGroup.3stmf b/usr/src/man/man3stmf/stmfAddToHostGroup.3stmf
index fbaabb24e1..9a5afdc1ba 100644
--- a/usr/src/man/man3stmf/stmfAddToHostGroup.3stmf
+++ b/usr/src/man/man3stmf/stmfAddToHostGroup.3stmf
@@ -75,7 +75,7 @@ The API call was successful.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -93,4 +93,5 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibstmf\fR(3LIB), \fBattributes\fR(5)
+.BR libstmf (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3stmf/stmfAddToTargetGroup.3stmf b/usr/src/man/man3stmf/stmfAddToTargetGroup.3stmf
index ab01e17e33..a5f78d2482 100644
--- a/usr/src/man/man3stmf/stmfAddToTargetGroup.3stmf
+++ b/usr/src/man/man3stmf/stmfAddToTargetGroup.3stmf
@@ -76,7 +76,7 @@ The API call was successful.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -94,4 +94,5 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibstmf\fR(3LIB), \fBattributes\fR(5)
+.BR libstmf (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3stmf/stmfAddViewEntry.3stmf b/usr/src/man/man3stmf/stmfAddViewEntry.3stmf
index cf797753b3..5d84b15042 100644
--- a/usr/src/man/man3stmf/stmfAddViewEntry.3stmf
+++ b/usr/src/man/man3stmf/stmfAddViewEntry.3stmf
@@ -83,7 +83,7 @@ The API call was successful.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -101,7 +101,8 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibstmf\fR(3LIB), \fBattributes\fR(5)
+.BR libstmf (3LIB),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3stmf/stmfClearProviderData.3stmf b/usr/src/man/man3stmf/stmfClearProviderData.3stmf
index 8de3bd5d77..01c75e872d 100644
--- a/usr/src/man/man3stmf/stmfClearProviderData.3stmf
+++ b/usr/src/man/man3stmf/stmfClearProviderData.3stmf
@@ -65,7 +65,7 @@ The API call was successful.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -83,4 +83,5 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibstmf\fR(3LIB), \fBattributes\fR(5)
+.BR libstmf (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3stmf/stmfCreateHostGroup.3stmf b/usr/src/man/man3stmf/stmfCreateHostGroup.3stmf
index 58aa881577..49705634f9 100644
--- a/usr/src/man/man3stmf/stmfCreateHostGroup.3stmf
+++ b/usr/src/man/man3stmf/stmfCreateHostGroup.3stmf
@@ -63,7 +63,7 @@ The API call was successful.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -81,4 +81,5 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibstmf\fR(3LIB), \fBattributes\fR(5)
+.BR libstmf (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3stmf/stmfCreateLu.3stmf b/usr/src/man/man3stmf/stmfCreateLu.3stmf
index ecaf33c3c7..4096998b27 100644
--- a/usr/src/man/man3stmf/stmfCreateLu.3stmf
+++ b/usr/src/man/man3stmf/stmfCreateLu.3stmf
@@ -133,7 +133,7 @@ The specified data file could not be accessed.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -151,5 +151,7 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibstmf\fR(3LIB), \fBstmfCreateLuResource\fR(3STMF),
-\fBstmfSetLuProp\fR(3STMF), \fBattributes\fR(5)
+.BR libstmf (3LIB),
+.BR stmfCreateLuResource (3STMF),
+.BR stmfSetLuProp (3STMF),
+.BR attributes (7)
diff --git a/usr/src/man/man3stmf/stmfCreateLuResource.3stmf b/usr/src/man/man3stmf/stmfCreateLuResource.3stmf
index b396a72a18..3c7cb0cbbb 100644
--- a/usr/src/man/man3stmf/stmfCreateLuResource.3stmf
+++ b/usr/src/man/man3stmf/stmfCreateLuResource.3stmf
@@ -65,7 +65,7 @@ The API call was successful.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -83,4 +83,5 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibstmf\fR(3LIB), \fBattributes\fR(5)
+.BR libstmf (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3stmf/stmfCreateTargetGroup.3stmf b/usr/src/man/man3stmf/stmfCreateTargetGroup.3stmf
index b946491283..457920371e 100644
--- a/usr/src/man/man3stmf/stmfCreateTargetGroup.3stmf
+++ b/usr/src/man/man3stmf/stmfCreateTargetGroup.3stmf
@@ -63,7 +63,7 @@ The API call was successful.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -81,4 +81,5 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibstmf\fR(3LIB), \fBattributes\fR(5)
+.BR libstmf (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3stmf/stmfDeleteHostGroup.3stmf b/usr/src/man/man3stmf/stmfDeleteHostGroup.3stmf
index cbc8d9a035..ed204346e4 100644
--- a/usr/src/man/man3stmf/stmfDeleteHostGroup.3stmf
+++ b/usr/src/man/man3stmf/stmfDeleteHostGroup.3stmf
@@ -54,7 +54,7 @@ The API call was successful.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -72,4 +72,5 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibstmf\fR(3LIB), \fBattributes\fR(5)
+.BR libstmf (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3stmf/stmfDeleteLu.3stmf b/usr/src/man/man3stmf/stmfDeleteLu.3stmf
index a54633f5e6..aca8ac8661 100644
--- a/usr/src/man/man3stmf/stmfDeleteLu.3stmf
+++ b/usr/src/man/man3stmf/stmfDeleteLu.3stmf
@@ -58,7 +58,7 @@ The guid does not exist.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -76,4 +76,6 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibstmf\fR(3LIB), \fBstmfRemoveViewEntry\fR(3STMF), \fBattributes\fR(5)
+.BR libstmf (3LIB),
+.BR stmfRemoveViewEntry (3STMF),
+.BR attributes (7)
diff --git a/usr/src/man/man3stmf/stmfDeleteTargetGroup.3stmf b/usr/src/man/man3stmf/stmfDeleteTargetGroup.3stmf
index 583fa69513..5968aeb5cd 100644
--- a/usr/src/man/man3stmf/stmfDeleteTargetGroup.3stmf
+++ b/usr/src/man/man3stmf/stmfDeleteTargetGroup.3stmf
@@ -55,7 +55,7 @@ The API call was successful.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -73,4 +73,5 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibstmf\fR(3LIB), \fBattributes\fR(5)
+.BR libstmf (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3stmf/stmfDevidFromIscsiName.3stmf b/usr/src/man/man3stmf/stmfDevidFromIscsiName.3stmf
index d848b220ca..22165790ee 100644
--- a/usr/src/man/man3stmf/stmfDevidFromIscsiName.3stmf
+++ b/usr/src/man/man3stmf/stmfDevidFromIscsiName.3stmf
@@ -70,7 +70,7 @@ The API call was successful.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -88,4 +88,5 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibstmf\fR(3LIB), \fBattributes\fR(5)
+.BR libstmf (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3stmf/stmfDevidFromWwn.3stmf b/usr/src/man/man3stmf/stmfDevidFromWwn.3stmf
index 2bbc2432cb..da5372d571 100644
--- a/usr/src/man/man3stmf/stmfDevidFromWwn.3stmf
+++ b/usr/src/man/man3stmf/stmfDevidFromWwn.3stmf
@@ -68,7 +68,7 @@ The API call was successful.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -86,4 +86,5 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibstmf\fR(3LIB), \fBattributes\fR(5)
+.BR libstmf (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3stmf/stmfFreeLuResource.3stmf b/usr/src/man/man3stmf/stmfFreeLuResource.3stmf
index 619aaa1dac..e9d168c311 100644
--- a/usr/src/man/man3stmf/stmfFreeLuResource.3stmf
+++ b/usr/src/man/man3stmf/stmfFreeLuResource.3stmf
@@ -57,7 +57,7 @@ The \fIhdl\fR argument is not a valid logical unit resource.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -75,5 +75,7 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibstmf\fR(3LIB), \fBstmfCreateLuResource\fR(3STMF),
-\fBstmfGetLuResource\fR(3STMF), \fBattributes\fR(5)
+.BR libstmf (3LIB),
+.BR stmfCreateLuResource (3STMF),
+.BR stmfGetLuResource (3STMF),
+.BR attributes (7)
diff --git a/usr/src/man/man3stmf/stmfFreeMemory.3stmf b/usr/src/man/man3stmf/stmfFreeMemory.3stmf
index 21a8411679..367c1de7a8 100644
--- a/usr/src/man/man3stmf/stmfFreeMemory.3stmf
+++ b/usr/src/man/man3stmf/stmfFreeMemory.3stmf
@@ -37,7 +37,7 @@ No values are returned.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -55,4 +55,5 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibstmf\fR(3LIB), \fBattributes\fR(5)
+.BR libstmf (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3stmf/stmfGetHostGroupList.3stmf b/usr/src/man/man3stmf/stmfGetHostGroupList.3stmf
index d5e61afe68..75ea1b6ea9 100644
--- a/usr/src/man/man3stmf/stmfGetHostGroupList.3stmf
+++ b/usr/src/man/man3stmf/stmfGetHostGroupList.3stmf
@@ -57,7 +57,7 @@ The API call was successful.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -75,4 +75,6 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBstmfFreeMemory\fR(3STMF), \fBlibstmf\fR(3LIB), \fBattributes\fR(5)
+.BR libstmf (3LIB),
+.BR stmfFreeMemory (3STMF),
+.BR attributes (7)
diff --git a/usr/src/man/man3stmf/stmfGetHostGroupMembers.3stmf b/usr/src/man/man3stmf/stmfGetHostGroupMembers.3stmf
index d9769e3ee7..954fb56739 100644
--- a/usr/src/man/man3stmf/stmfGetHostGroupMembers.3stmf
+++ b/usr/src/man/man3stmf/stmfGetHostGroupMembers.3stmf
@@ -67,7 +67,7 @@ The API call was successful.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -85,4 +85,6 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBstmfFreeMemory\fR(3STMF), \fBlibstmf\fR(3LIB), \fBattributes\fR(5)
+.BR libstmf (3LIB),
+.BR stmfFreeMemory (3STMF),
+.BR attributes (7)
diff --git a/usr/src/man/man3stmf/stmfGetLogicalUnitList.3stmf b/usr/src/man/man3stmf/stmfGetLogicalUnitList.3stmf
index c0adf4f30c..6b0b9fea2d 100644
--- a/usr/src/man/man3stmf/stmfGetLogicalUnitList.3stmf
+++ b/usr/src/man/man3stmf/stmfGetLogicalUnitList.3stmf
@@ -57,7 +57,7 @@ The API call was successful.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -75,4 +75,6 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBstmfFreeMemory\fR(3STMF), \fBlibstmf\fR(3LIB), \fBattributes\fR(5)
+.BR libstmf (3LIB),
+.BR stmfFreeMemory (3STMF),
+.BR attributes (7)
diff --git a/usr/src/man/man3stmf/stmfGetLogicalUnitProperties.3stmf b/usr/src/man/man3stmf/stmfGetLogicalUnitProperties.3stmf
index c859836b50..4569c68bd2 100644
--- a/usr/src/man/man3stmf/stmfGetLogicalUnitProperties.3stmf
+++ b/usr/src/man/man3stmf/stmfGetLogicalUnitProperties.3stmf
@@ -70,7 +70,7 @@ The API call was successful.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -88,4 +88,5 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibstmf\fR(3LIB), \fBattributes\fR(5)
+.BR libstmf (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3stmf/stmfGetLuResource.3stmf b/usr/src/man/man3stmf/stmfGetLuResource.3stmf
index 04ddd94d6b..17f1420c3d 100644
--- a/usr/src/man/man3stmf/stmfGetLuResource.3stmf
+++ b/usr/src/man/man3stmf/stmfGetLuResource.3stmf
@@ -70,7 +70,7 @@ The guid does not exist.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -88,4 +88,6 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibstmf\fR(3LIB), \fBstmfFreeLuResource\fR(3STMF), \fBattributes\fR(5)
+.BR libstmf (3LIB),
+.BR stmfFreeLuResource (3STMF),
+.BR attributes (7)
diff --git a/usr/src/man/man3stmf/stmfGetPersistMethod.3stmf b/usr/src/man/man3stmf/stmfGetPersistMethod.3stmf
index 8bc727eed4..4be4f5fa6a 100644
--- a/usr/src/man/man3stmf/stmfGetPersistMethod.3stmf
+++ b/usr/src/man/man3stmf/stmfGetPersistMethod.3stmf
@@ -68,7 +68,7 @@ Unable to retrieve persist type from service.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -86,4 +86,5 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibstmf\fR(3LIB), \fBattributes\fR(5)
+.BR libstmf (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3stmf/stmfGetProviderData.3stmf b/usr/src/man/man3stmf/stmfGetProviderData.3stmf
index d3d69c44c7..8cc21071e7 100644
--- a/usr/src/man/man3stmf/stmfGetProviderData.3stmf
+++ b/usr/src/man/man3stmf/stmfGetProviderData.3stmf
@@ -77,7 +77,7 @@ The API call was successful.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -95,8 +95,10 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibstmf\fR(3LIB), \fBnvlist_free\fR(3NVPAIR),
-\fBstmfGetProviderDataProt\fR(3STMF), \fBattributes\fR(5)
+.BR libstmf (3LIB),
+.BR nvlist_free (3NVPAIR),
+.BR stmfGetProviderDataProt (3STMF),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3stmf/stmfGetProviderDataProt.3stmf b/usr/src/man/man3stmf/stmfGetProviderDataProt.3stmf
index 665fe80ccd..ef3c4fa2e3 100644
--- a/usr/src/man/man3stmf/stmfGetProviderDataProt.3stmf
+++ b/usr/src/man/man3stmf/stmfGetProviderDataProt.3stmf
@@ -89,7 +89,7 @@ The API call was successful.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -107,5 +107,7 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibstmf\fR(3LIB), \fBnvlist_free\fR(3NVPAIR),
-\fBstmfSetProviderDataProt\fR(3STMF), \fBattributes\fR(5)
+.BR libstmf (3LIB),
+.BR nvlist_free (3NVPAIR),
+.BR stmfSetProviderDataProt (3STMF),
+.BR attributes (7)
diff --git a/usr/src/man/man3stmf/stmfGetState.3stmf b/usr/src/man/man3stmf/stmfGetState.3stmf
index d886a97140..c593e48495 100644
--- a/usr/src/man/man3stmf/stmfGetState.3stmf
+++ b/usr/src/man/man3stmf/stmfGetState.3stmf
@@ -45,7 +45,7 @@ The API call was successful.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -63,4 +63,5 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibstmf\fR(3LIB), \fBattributes\fR(5)
+.BR libstmf (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3stmf/stmfGetTargetGroupList.3stmf b/usr/src/man/man3stmf/stmfGetTargetGroupList.3stmf
index fed57acaf6..730176f3c1 100644
--- a/usr/src/man/man3stmf/stmfGetTargetGroupList.3stmf
+++ b/usr/src/man/man3stmf/stmfGetTargetGroupList.3stmf
@@ -57,7 +57,7 @@ The API call was successful.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -75,4 +75,6 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibstmf\fR(3LIB), \fBstmfFreeMemory\fR(3STMF), \fBattributes\fR(5)
+.BR libstmf (3LIB),
+.BR stmfFreeMemory (3STMF),
+.BR attributes (7)
diff --git a/usr/src/man/man3stmf/stmfGetTargetGroupMembers.3stmf b/usr/src/man/man3stmf/stmfGetTargetGroupMembers.3stmf
index 6df7972d08..314dc71dbe 100644
--- a/usr/src/man/man3stmf/stmfGetTargetGroupMembers.3stmf
+++ b/usr/src/man/man3stmf/stmfGetTargetGroupMembers.3stmf
@@ -69,7 +69,7 @@ The API call was successful.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -87,4 +87,6 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibstmf\fR(3LIB), \fBstmfFreeMemory\fR(3STMF), \fBattributes\fR(5)
+.BR libstmf (3LIB),
+.BR stmfFreeMemory (3STMF),
+.BR attributes (7)
diff --git a/usr/src/man/man3stmf/stmfGetTargetList.3stmf b/usr/src/man/man3stmf/stmfGetTargetList.3stmf
index cfd8d1bfd9..06f2805c24 100644
--- a/usr/src/man/man3stmf/stmfGetTargetList.3stmf
+++ b/usr/src/man/man3stmf/stmfGetTargetList.3stmf
@@ -57,7 +57,7 @@ The API call was successful.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -75,4 +75,6 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibstmf\fR(3LIB), \fBstmfFreeMemory\fR(3STMF), \fBattributes\fR(5)
+.BR libstmf (3LIB),
+.BR stmfFreeMemory (3STMF),
+.BR attributes (7)
diff --git a/usr/src/man/man3stmf/stmfGetTargetProperties.3stmf b/usr/src/man/man3stmf/stmfGetTargetProperties.3stmf
index 3fbe1ebf40..40637765bd 100644
--- a/usr/src/man/man3stmf/stmfGetTargetProperties.3stmf
+++ b/usr/src/man/man3stmf/stmfGetTargetProperties.3stmf
@@ -67,7 +67,7 @@ The API call was successful.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -85,4 +85,5 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibstmf\fR(3LIB), \fBattributes\fR(5)
+.BR libstmf (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3stmf/stmfGetViewEntryList.3stmf b/usr/src/man/man3stmf/stmfGetViewEntryList.3stmf
index 6f07e84be1..ea8d5be3e2 100644
--- a/usr/src/man/man3stmf/stmfGetViewEntryList.3stmf
+++ b/usr/src/man/man3stmf/stmfGetViewEntryList.3stmf
@@ -69,7 +69,7 @@ The API call was successful.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -87,4 +87,6 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibstmf\fR(3LIB), \fBstmfFreeMemory\fR(3STMF), \fBattributes\fR(5)
+.BR libstmf (3LIB),
+.BR stmfFreeMemory (3STMF),
+.BR attributes (7)
diff --git a/usr/src/man/man3stmf/stmfModifyLu.3stmf b/usr/src/man/man3stmf/stmfModifyLu.3stmf
index 52b9bb25e0..d1e4ab32ac 100644
--- a/usr/src/man/man3stmf/stmfModifyLu.3stmf
+++ b/usr/src/man/man3stmf/stmfModifyLu.3stmf
@@ -175,7 +175,7 @@ The value of \fIprop\fR is unknown for this resource type.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -193,4 +193,6 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibstmf\fR(3LIB), \fBstmfCreateLuResource\fR(3STMF), \fBattributes\fR(5)
+.BR libstmf (3LIB),
+.BR stmfCreateLuResource (3STMF),
+.BR attributes (7)
diff --git a/usr/src/man/man3stmf/stmfOfflineLogicalUnit.3stmf b/usr/src/man/man3stmf/stmfOfflineLogicalUnit.3stmf
index d7ee7ec0f7..4844272450 100644
--- a/usr/src/man/man3stmf/stmfOfflineLogicalUnit.3stmf
+++ b/usr/src/man/man3stmf/stmfOfflineLogicalUnit.3stmf
@@ -65,7 +65,7 @@ The API call was successful.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -83,4 +83,5 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibstmf\fR(3LIB), \fBattributes\fR(5)
+.BR libstmf (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3stmf/stmfOfflineTarget.3stmf b/usr/src/man/man3stmf/stmfOfflineTarget.3stmf
index 021286bff2..80c05ed746 100644
--- a/usr/src/man/man3stmf/stmfOfflineTarget.3stmf
+++ b/usr/src/man/man3stmf/stmfOfflineTarget.3stmf
@@ -63,7 +63,7 @@ The API call was successful.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -81,4 +81,5 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibstmf\fR(3LIB), \fBattributes\fR(5)
+.BR libstmf (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3stmf/stmfOnlineLogicalUnit.3stmf b/usr/src/man/man3stmf/stmfOnlineLogicalUnit.3stmf
index de88aaf1a3..e3eb5da815 100644
--- a/usr/src/man/man3stmf/stmfOnlineLogicalUnit.3stmf
+++ b/usr/src/man/man3stmf/stmfOnlineLogicalUnit.3stmf
@@ -47,7 +47,7 @@ The API call was successful.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -65,4 +65,5 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibstmf\fR(3LIB), \fBattributes\fR(5)
+.BR libstmf (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3stmf/stmfOnlineTarget.3stmf b/usr/src/man/man3stmf/stmfOnlineTarget.3stmf
index f93e158ed1..18bbb9c82a 100644
--- a/usr/src/man/man3stmf/stmfOnlineTarget.3stmf
+++ b/usr/src/man/man3stmf/stmfOnlineTarget.3stmf
@@ -47,7 +47,7 @@ The API call was successful.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -65,4 +65,5 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibstmf\fR(3LIB), \fBattributes\fR(5)
+.BR libstmf (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3stmf/stmfRemoveFromHostGroup.3stmf b/usr/src/man/man3stmf/stmfRemoveFromHostGroup.3stmf
index dfd26c605c..5f4e74b86f 100644
--- a/usr/src/man/man3stmf/stmfRemoveFromHostGroup.3stmf
+++ b/usr/src/man/man3stmf/stmfRemoveFromHostGroup.3stmf
@@ -79,7 +79,7 @@ The API call was successful.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -97,4 +97,5 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibstmf\fR(3LIB), \fBattributes\fR(5)
+.BR libstmf (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3stmf/stmfRemoveFromTargetGroup.3stmf b/usr/src/man/man3stmf/stmfRemoveFromTargetGroup.3stmf
index 7270e7b08b..29226aa969 100644
--- a/usr/src/man/man3stmf/stmfRemoveFromTargetGroup.3stmf
+++ b/usr/src/man/man3stmf/stmfRemoveFromTargetGroup.3stmf
@@ -89,7 +89,7 @@ The API call was successful.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -107,4 +107,5 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibstmf\fR(3LIB), \fBattributes\fR(5)
+.BR libstmf (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3stmf/stmfRemoveViewEntry.3stmf b/usr/src/man/man3stmf/stmfRemoveViewEntry.3stmf
index f7dbc01f6b..f898b8ab17 100644
--- a/usr/src/man/man3stmf/stmfRemoveViewEntry.3stmf
+++ b/usr/src/man/man3stmf/stmfRemoveViewEntry.3stmf
@@ -65,7 +65,7 @@ The API call was successful.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -83,4 +83,5 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibstmf\fR(3LIB), \fBattributes\fR(5)
+.BR libstmf (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3stmf/stmfSetLuProp.3stmf b/usr/src/man/man3stmf/stmfSetLuProp.3stmf
index 3f0fc416e1..feaf4ff82b 100644
--- a/usr/src/man/man3stmf/stmfSetLuProp.3stmf
+++ b/usr/src/man/man3stmf/stmfSetLuProp.3stmf
@@ -299,7 +299,7 @@ The value of \fIprop\fR is unknown for this resource type.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -317,5 +317,7 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibstmf\fR(3LIB), \fBstmfCreateLuResource\fR(3STMF),
-\fBstmfGetLuResource\fR(3STMF), \fBattributes\fR(5)
+.BR libstmf (3LIB),
+.BR stmfCreateLuResource (3STMF),
+.BR stmfGetLuResource (3STMF),
+.BR attributes (7)
diff --git a/usr/src/man/man3stmf/stmfSetPersistMethod.3stmf b/usr/src/man/man3stmf/stmfSetPersistMethod.3stmf
index acdc949b2a..1c407ba042 100644
--- a/usr/src/man/man3stmf/stmfSetPersistMethod.3stmf
+++ b/usr/src/man/man3stmf/stmfSetPersistMethod.3stmf
@@ -66,7 +66,7 @@ The \fIpersistType\fR argument is invalid.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -84,4 +84,5 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibstmf\fR(3LIB), \fBattributes\fR(5)
+.BR libstmf (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3stmf/stmfSetProviderData.3stmf b/usr/src/man/man3stmf/stmfSetProviderData.3stmf
index 1e492a5331..547e41b09e 100644
--- a/usr/src/man/man3stmf/stmfSetProviderData.3stmf
+++ b/usr/src/man/man3stmf/stmfSetProviderData.3stmf
@@ -75,7 +75,7 @@ The API call was successful.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -93,7 +93,9 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibstmf\fR(3LIB), \fBstmfSetProviderDataProt\fR(3STMF), \fBattributes\fR(5)
+.BR libstmf (3LIB),
+.BR stmfSetProviderDataProt (3STMF),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3stmf/stmfSetProviderDataProt.3stmf b/usr/src/man/man3stmf/stmfSetProviderDataProt.3stmf
index 71ae13a01f..6f14ab1bf7 100644
--- a/usr/src/man/man3stmf/stmfSetProviderDataProt.3stmf
+++ b/usr/src/man/man3stmf/stmfSetProviderDataProt.3stmf
@@ -91,7 +91,7 @@ The API call was successful.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -109,6 +109,8 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlibstmf\fR(3LIB), \fBnvlist_free\fR(3NVPAIR),
-\fBstmfGetProviderDataProt\fR(3STMF), \fBstmfSetProviderData\fR(3STMF),
-\fBattributes\fR(5)
+.BR libstmf (3LIB),
+.BR nvlist_free (3NVPAIR),
+.BR stmfGetProviderDataProt (3STMF),
+.BR stmfSetProviderData (3STMF),
+.BR attributes (7)
diff --git a/usr/src/man/man3sysevent/sysevent_bind_handle.3sysevent b/usr/src/man/man3sysevent/sysevent_bind_handle.3sysevent
index 356e666a0b..f0abff15f7 100644
--- a/usr/src/man/man3sysevent/sysevent_bind_handle.3sysevent
+++ b/usr/src/man/man3sysevent/sysevent_bind_handle.3sysevent
@@ -65,7 +65,7 @@ argument to the invoked event delivery function, \fIevent_handler\fR.
.sp
.LP
Additional threads are created to service communication between
-\fBsyseventd\fR(1M) and the calling process and to run the event handler
+\fBsyseventd\fR(8) and the calling process and to run the event handler
routine, \fIevent_handler\fR.
.sp
.LP
@@ -134,7 +134,7 @@ There are insufficient resources to allocate the handle.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -152,8 +152,9 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBsyseventd\fR(1M), \fBsysevent_subscribe_event\fR(3SYSEVENT),
-\fBattributes\fR(5)
+.BR sysevent_subscribe_event (3SYSEVENT),
+.BR attributes (7),
+.BR syseventd (8)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3sysevent/sysevent_free.3sysevent b/usr/src/man/man3sysevent/sysevent_free.3sysevent
index 3e77260c78..0094f45cd4 100644
--- a/usr/src/man/man3sysevent/sysevent_free.3sysevent
+++ b/usr/src/man/man3sysevent/sysevent_free.3sysevent
@@ -33,7 +33,7 @@ buffer.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -51,7 +51,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBattributes\fR(5)
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3sysevent/sysevent_get_attr_list.3sysevent b/usr/src/man/man3sysevent/sysevent_get_attr_list.3sysevent
index 451e12aa58..1e3ce99aa3 100644
--- a/usr/src/man/man3sysevent/sysevent_get_attr_list.3sysevent
+++ b/usr/src/man/man3sysevent/sysevent_get_attr_list.3sysevent
@@ -74,7 +74,7 @@ Invalid \fBsysevent\fR event attribute list.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -92,8 +92,10 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBsyseventd\fR(1M), \fBnvlist_alloc\fR(3NVPAIR),
-\fBnvlist_lookup_boolean\fR(3NVPAIR), \fBattributes\fR(5)
+.BR nvlist_alloc (3NVPAIR),
+.BR nvlist_lookup_boolean (3NVPAIR),
+.BR attributes (7),
+.BR syseventd (8)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3sysevent/sysevent_get_class_name.3sysevent b/usr/src/man/man3sysevent/sysevent_get_class_name.3sysevent
index 2ab83a4259..63e851fcb7 100644
--- a/usr/src/man/man3sysevent/sysevent_get_class_name.3sysevent
+++ b/usr/src/man/man3sysevent/sysevent_get_class_name.3sysevent
@@ -133,7 +133,7 @@ event_handler(sysevent_t *ev)
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -151,7 +151,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBattributes\fR(5)
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3sysevent/sysevent_get_vendor_name.3sysevent b/usr/src/man/man3sysevent/sysevent_get_vendor_name.3sysevent
index bcbed4660e..1c5a0e1745 100644
--- a/usr/src/man/man3sysevent/sysevent_get_vendor_name.3sysevent
+++ b/usr/src/man/man3sysevent/sysevent_get_vendor_name.3sysevent
@@ -106,7 +106,7 @@ event_handler(sysevent_t *ev)
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -123,7 +123,8 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBmalloc\fR(3MALLOC), \fBattributes\fR(5)
+.BR malloc (3MALLOC),
+.BR attributes (7)
.SH NOTES
.LP
The \fBlibsysevent\fR interfaces do not work at all in non-global zones.
diff --git a/usr/src/man/man3sysevent/sysevent_post_event.3sysevent b/usr/src/man/man3sysevent/sysevent_post_event.3sysevent
index 607c52c6b2..e06937e90a 100644
--- a/usr/src/man/man3sysevent/sysevent_post_event.3sysevent
+++ b/usr/src/man/man3sysevent/sysevent_post_event.3sysevent
@@ -78,7 +78,7 @@ pointer to a string defining the vendor
.LP
The \fBsysevent_post_event()\fR function causes a system event of the specified
class, subclass, vendor, and publisher to be generated on behalf of the caller
-and queued for delivery to the sysevent daemon \fBsyseventd\fR(1M).
+and queued for delivery to the sysevent daemon \fBsyseventd\fR(8).
.sp
.LP
The vendor should be the company stock symbol (or similarly enduring
@@ -88,7 +88,7 @@ of the application generating the event.
.LP
For example, all events posted by Sun applications begin with the company's
stock symbol, "SUNW". The publisher is usually the name of the application
-generating the system event. A system event generated by \fBdevfsadm\fR(1M) has
+generating the system event. A system event generated by \fBdevfsadm\fR(8) has
a publisher string of \fBdevfsadm\fR.
.sp
.LP
@@ -203,7 +203,7 @@ if (nvlist_alloc(&attr_list, 0, 0) == 0) {
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -221,8 +221,11 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBdevfsadm\fR(1M), \fBsyseventd\fR(1M), \fBnvlist_add_boolean\fR(3NVPAIR),
-\fBnvlist_alloc\fR(3NVPAIR), \fBattributes\fR(5)
+.BR nvlist_add_boolean (3NVPAIR),
+.BR nvlist_alloc (3NVPAIR),
+.BR attributes (7),
+.BR devfsadm (8),
+.BR syseventd (8)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3sysevent/sysevent_subscribe_event.3sysevent b/usr/src/man/man3sysevent/sysevent_subscribe_event.3sysevent
index aa7d09e60f..0120ad29c1 100644
--- a/usr/src/man/man3sysevent/sysevent_subscribe_event.3sysevent
+++ b/usr/src/man/man3sysevent/sysevent_subscribe_event.3sysevent
@@ -229,7 +229,7 @@ main(int argc, char **argv)
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -247,10 +247,12 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBsyseventd\fR(1M), \fBsysevent_bind_handle\fR(3SYSEVENT),
-\fBsysevent_get_attr_list\fR(3SYSEVENT),
-\fBsysevent_get_class_name\fR(3SYSEVENT),
-\fBsysevent_get_vendor_name\fR(3SYSEVENT), \fBattributes\fR(5)
+.BR sysevent_bind_handle (3SYSEVENT),
+.BR sysevent_get_attr_list (3SYSEVENT),
+.BR sysevent_get_class_name (3SYSEVENT),
+.BR sysevent_get_vendor_name (3SYSEVENT),
+.BR attributes (7),
+.BR syseventd (8)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3sysevent/sysevents.3sysevent b/usr/src/man/man3sysevent/sysevents.3sysevent
index c609802f40..4e531b3e9e 100644
--- a/usr/src/man/man3sysevent/sysevents.3sysevent
+++ b/usr/src/man/man3sysevent/sysevents.3sysevent
@@ -44,7 +44,7 @@ Most system events are currently logged to the FMA information log which
can be retrieved with the
.Ar -I
option to the
-.Xr fmdump 1M
+.Xr fmdump 8
command.
.Sh EVENTS
This section contains a list of some of the events that are generated by
@@ -60,7 +60,7 @@ The following events belong to the class
.Bl -tag -width Dv
.It Dv ESC_DATALINK_LINK_STATE
This event fires any time a data link
-.Pq see Xr dladm 1M
+.Pq see Xr dladm 8
changes its state.
This may occur because a physical cable was inserted or removed from a
network adapter or because something has changed on a virtual adapter
diff --git a/usr/src/man/man3tecla/cpl_complete_word.3tecla b/usr/src/man/man3tecla/cpl_complete_word.3tecla
index bbac9a34ef..50dbe206e8 100644
--- a/usr/src/man/man3tecla/cpl_complete_word.3tecla
+++ b/usr/src/man/man3tecla/cpl_complete_word.3tecla
@@ -385,7 +385,7 @@ that each thread uses a separately allocated \fBWordCompletion\fR object. In
other words, if two threads want to do word completion, they should each call
\fBnew_WordCompletion()\fR to allocate their own completion objects.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -401,5 +401,8 @@ MT-Level MT-Safe
.TE
.SH SEE ALSO
-\fBef_expand_file\fR(3TECLA), \fBgl_get_line\fR(3TECLA), \fBlibtecla\fR(3LIB),
-\fBpca_lookup_file\fR(3TECLA), \fBattributes\fR(5)
+.BR libtecla (3LIB),
+.BR ef_expand_file (3TECLA),
+.BR gl_get_line (3TECLA),
+.BR pca_lookup_file (3TECLA),
+.BR attributes (7)
diff --git a/usr/src/man/man3tecla/ef_expand_file.3tecla b/usr/src/man/man3tecla/ef_expand_file.3tecla
index c9f06fb172..975d17e743 100644
--- a/usr/src/man/man3tecla/ef_expand_file.3tecla
+++ b/usr/src/man/man3tecla/ef_expand_file.3tecla
@@ -249,7 +249,7 @@ int main(int argc, char *argv[])
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -267,5 +267,8 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBcpl_complete_word\fR(3TECLA), \fBgl_get_line\fR(3TECLA),
-\fBlibtecla\fR(3LIB), \fBpca_lookup_file\fR(3TECLA), \fBattributes\fR(5)
+.BR libtecla (3LIB),
+.BR cpl_complete_word (3TECLA),
+.BR gl_get_line (3TECLA),
+.BR pca_lookup_file (3TECLA),
+.BR attributes (7)
diff --git a/usr/src/man/man3tecla/gl_get_line.3tecla b/usr/src/man/man3tecla/gl_get_line.3tecla
index 0056eb8f63..70a31c1e1a 100644
--- a/usr/src/man/man3tecla/gl_get_line.3tecla
+++ b/usr/src/man/man3tecla/gl_get_line.3tecla
@@ -273,7 +273,7 @@ UNIX \fBtcsh\fR shell. In addition to simple command-line editing, it supports
recall of previously entered command lines, TAB completion of file names, and
in-line wild-card expansion of filenames. Documentation of both the user-level
command-line editing features and all user configuration options can be found
-on the \fBtecla\fR(5) manual page.
+on the \fBtecla\fR(7) manual page.
.SS "An Example"
The following shows a complete example of how to use the \fBgl_get_line()\fR
function to get input from the user:
@@ -2339,7 +2339,7 @@ locale -a
.sp
.LP
at the shell prompt. Further documentation on how the user can make use of this
-to enter international characters can be found in the \fBtecla\fR(5) man page.
+to enter international characters can be found in the \fBtecla\fR(7) man page.
.SS "Thread Safety"
Unfortunately neither \fBterminfo\fR nor \fBtermcap\fR were designed to be
reentrant, so you cannot safely use the functions of the getline module in
@@ -2350,7 +2350,7 @@ directories, it is safe to use this module from a single thread of a
multi-threaded program, provided that your other threads do not use any
\fBtermcap\fR or \fBterminfo\fR functions.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -2366,6 +2366,10 @@ MT-Level MT-Safe
.TE
.SH SEE ALSO
-\fBcpl_complete_word\fR(3TECLA), \fBef_expand_file\fR(3TECLA),
-\fBgl_io_mode\fR(3TECLA), \fBlibtecla\fR(3LIB), \fBpca_lookup_file\fR(3TECLA),
-\fBattributes\fR(5), \fBtecla\fR(5)
+.BR libtecla (3LIB),
+.BR cpl_complete_word (3TECLA),
+.BR ef_expand_file (3TECLA),
+.BR gl_io_mode (3TECLA),
+.BR pca_lookup_file (3TECLA),
+.BR attributes (7),
+.BR tecla (7)
diff --git a/usr/src/man/man3tecla/gl_io_mode.3tecla b/usr/src/man/man3tecla/gl_io_mode.3tecla
index 56bcd07581..8b5f604742 100644
--- a/usr/src/man/man3tecla/gl_io_mode.3tecla
+++ b/usr/src/man/man3tecla/gl_io_mode.3tecla
@@ -525,7 +525,7 @@ key for the specified interval, so if the interval is long and the user keeps
typing, \fBgl_get_line()\fR might not return for a while. There is no guarantee
that it will return in the time specified.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -541,6 +541,10 @@ MT-Level MT-Safe
.TE
.SH SEE ALSO
-\fBcpl_complete_word\fR(3TECLA), \fBef_expand_file\fR(3TECLA),
-\fBgl_get_line\fR(3TECLA), \fBlibtecla\fR(3LIB), \fBpca_lookup_file\fR(3TECLA),
-\fBattributes\fR(5), \fBtecla\fR(5)
+.BR libtecla (3LIB),
+.BR cpl_complete_word (3TECLA),
+.BR ef_expand_file (3TECLA),
+.BR gl_get_line (3TECLA),
+.BR pca_lookup_file (3TECLA),
+.BR attributes (7),
+.BR tecla (7)
diff --git a/usr/src/man/man3tecla/libtecla_version.3tecla b/usr/src/man/man3tecla/libtecla_version.3tecla
index 2b66186bc9..a9634314ed 100644
--- a/usr/src/man/man3tecla/libtecla_version.3tecla
+++ b/usr/src/man/man3tecla/libtecla_version.3tecla
@@ -82,7 +82,7 @@ behind-the-scenes implementation.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -100,4 +100,5 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBlibtecla\fR(3LIB), \fBattributes\fR(5)
+.BR libtecla (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man3tecla/pca_lookup_file.3tecla b/usr/src/man/man3tecla/pca_lookup_file.3tecla
index 8a3160ad12..8652b9e4d8 100644
--- a/usr/src/man/man3tecla/pca_lookup_file.3tecla
+++ b/usr/src/man/man3tecla/pca_lookup_file.3tecla
@@ -305,7 +305,7 @@ that each thread uses a separately allocated \fBPathCache\fR object. In other
words, if two threads want to do path searching, they should each call
\fBnew_PathCache()\fR to allocate their own caches.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -321,5 +321,8 @@ MT-Level MT-Safe
.TE
.SH SEE ALSO
-\fBcpl_complete_word\fR(3TECLA), \fBef_expand_file\fR(3TECLA),
-\fBgl_get_line\fR(3TECLA), \fBlibtecla\fR(3LIB), \fBattributes\fR(5)
+.BR libtecla (3LIB),
+.BR cpl_complete_word (3TECLA),
+.BR ef_expand_file (3TECLA),
+.BR gl_get_line (3TECLA),
+.BR attributes (7)
diff --git a/usr/src/man/man3tnf/TNF_DECLARE_RECORD.3tnf b/usr/src/man/man3tnf/TNF_DECLARE_RECORD.3tnf
index 79cf63c24c..bb656366f2 100644
--- a/usr/src/man/man3tnf/TNF_DECLARE_RECORD.3tnf
+++ b/usr/src/man/man3tnf/TNF_DECLARE_RECORD.3tnf
@@ -147,7 +147,7 @@ pal_free(pal_header_t *header_p)
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -163,8 +163,11 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBprex\fR(1), \fBtnfdump\fR(1), \fBTNF_PROBE\fR(3TNF),
-\fBtnf_process_disable\fR(3TNF), \fBattributes\fR(5)
+.BR prex (1),
+.BR tnfdump (1),
+.BR TNF_PROBE (3TNF),
+.BR tnf_process_disable (3TNF),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3tnf/TNF_PROBE.3tnf b/usr/src/man/man3tnf/TNF_PROBE.3tnf
index 29459cc158..7f5bd161bf 100644
--- a/usr/src/man/man3tnf/TNF_PROBE.3tnf
+++ b/usr/src/man/man3tnf/TNF_PROBE.3tnf
@@ -295,7 +295,7 @@ probes in source code.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -311,9 +311,16 @@ MT Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBld\fR(1), \fBprex\fR(1), \fBtnfdump\fR(1), \fBdlopen\fR(3C),
-\fBlibtnfctl\fR(3TNF), \fBTNF_DECLARE_RECORD\fR(3TNF), \fBthreads\fR(5),
-\fBtnf_process_disable\fR(3TNF), \fBtracing\fR(3TNF), \fBattributes\fR(5)
+.BR ld (1),
+.BR prex (1),
+.BR tnfdump (1),
+.BR dlopen (3C),
+.BR TNF_DECLARE_RECORD (3TNF),
+.BR libtnfctl (3TNF),
+.BR tnf_process_disable (3TNF),
+.BR tracing (3TNF),
+.BR attributes (7),
+.BR threads (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3tnf/libtnfctl.3tnf b/usr/src/man/man3tnf/libtnfctl.3tnf
index ac1a673b98..6e0784413e 100644
--- a/usr/src/man/man3tnf/libtnfctl.3tnf
+++ b/usr/src/man/man3tnf/libtnfctl.3tnf
@@ -35,7 +35,7 @@ own probes.
.RS 17n
The target is a separate process; a client can either \fBexec\fR(2) a program
or attach to a running process for probe control. The \fBlibtnfctl\fR library
-uses \fBproc\fR(4) on the target process for probe and process control in this
+uses \fBproc\fR(5) on the target process for probe and process control in this
mode, and additionally provides basic process control features.
.RE
@@ -46,7 +46,7 @@ mode, and additionally provides basic process control features.
.ad
.RS 17n
The target is a separate process, but the controlling process is already using
-\fBproc\fR(4) to control the target, and hence \fBlibtnfctl\fR cannot use
+\fBproc\fR(5) to control the target, and hence \fBlibtnfctl\fR cannot use
those interfaces directly. Use this mode to control probes from within a
debugger. In this mode, the client must provide a set of functions that
\fBlibtnfctl\fR can use to query and update the target process.
@@ -412,7 +412,7 @@ Error code reserved for user.
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -426,22 +426,40 @@ MT Level MT-Safe with exceptions
.TE
.SH SEE ALSO
-\fBprex\fR(1), \fBexec\fR(2), \fBdlclose\fR(3C), \fBdlopen\fR(3C),
-\fBTNF_PROBE\fR(3TNF), \fBtnfctl_buffer_alloc\fR(3TNF),
-\fBtnfctl_buffer_dealloc\fR(3TNF), \fBtnfctl_check_libs\fR(3TNF),
-\fBtnfctl_close\fR(3TNF), \fBtnfctl_continue\fR(3TNF),
-\fBtnfctl_internal_open\fR(3TNF), \fBtnfctl_exec_open\fR(3TNF),
-\fBtnfctl_filter_list_add\fR(3TNF), \fBtnfctl_filter_list_delete\fR(3TNF),
-\fBtnfctl_filter_list_get\fR(3TNF), \fBtnfctl_filter_state_set\fR(3TNF),
-\fBtnfctl_kernel_open\fR(3TNF), \fBtnfctl_pid_open\fR(3TNF),
-\fBtnfctl_probe_apply\fR(3TNF), \fBtnfctl_probe_apply_ids\fR(3TNF),
-\fBtnfctl_probe_connect\fR(3TNF), \fBtnfctl_probe_disable\fR(3TNF),
-\fBtnfctl_probe_enable\fR(3TNF), \fBtnfctl_probe_state_get\fR(3TNF),
-\fBtnfctl_probe_trace\fR(3TNF), \fBtnfctl_probe_untrace\fR(3TNF),
-\fBtnfctl_indirect_open\fR(3TNF), \fBtnfctl_register_funcs\fR(3TNF),
-\fBtnfctl_strerror\fR(3TNF), \fBtnfctl_trace_attrs_get\fR(3TNF),
-\fBtnfctl_trace_state_set\fR(3TNF), \fBlibtnfctl\fR(3LIB), \fBproc\fR(4),
-\fBattributes\fR(5)
+.BR prex (1),
+.BR exec (2),
+.BR dlclose (3C),
+.BR dlopen (3C),
+.BR libtnfctl (3LIB),
+.BR TNF_PROBE (3TNF),
+.BR tnfctl_buffer_alloc (3TNF),
+.BR tnfctl_buffer_dealloc (3TNF),
+.BR tnfctl_check_libs (3TNF),
+.BR tnfctl_close (3TNF),
+.BR tnfctl_continue (3TNF),
+.BR tnfctl_exec_open (3TNF),
+.BR tnfctl_filter_list_add (3TNF),
+.BR tnfctl_filter_list_delete (3TNF),
+.BR tnfctl_filter_list_get (3TNF),
+.BR tnfctl_filter_state_set (3TNF),
+.BR tnfctl_indirect_open (3TNF),
+.BR tnfctl_internal_open (3TNF),
+.BR tnfctl_kernel_open (3TNF),
+.BR tnfctl_pid_open (3TNF),
+.BR tnfctl_probe_apply (3TNF),
+.BR tnfctl_probe_apply_ids (3TNF),
+.BR tnfctl_probe_connect (3TNF),
+.BR tnfctl_probe_disable (3TNF),
+.BR tnfctl_probe_enable (3TNF),
+.BR tnfctl_probe_state_get (3TNF),
+.BR tnfctl_probe_trace (3TNF),
+.BR tnfctl_probe_untrace (3TNF),
+.BR tnfctl_register_funcs (3TNF),
+.BR tnfctl_strerror (3TNF),
+.BR tnfctl_trace_attrs_get (3TNF),
+.BR tnfctl_trace_state_set (3TNF),
+.BR proc (5),
+.BR attributes (7)
.sp
.LP
\fILinker and Libraries Guide\fR
diff --git a/usr/src/man/man3tnf/tnf_process_disable.3tnf b/usr/src/man/man3tnf/tnf_process_disable.3tnf
index cebc8dd0d4..2042da9c7f 100644
--- a/usr/src/man/man3tnf/tnf_process_disable.3tnf
+++ b/usr/src/man/man3tnf/tnf_process_disable.3tnf
@@ -56,7 +56,7 @@ disable or enable probing for the process.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -74,8 +74,11 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBprex\fR(1), \fBtnfdump\fR(1), \fBTNF_DECLARE_RECORD\fR(3TNF),
-\fBTNF_PROBE\fR(3TNF), \fBattributes\fR(5)
+.BR prex (1),
+.BR tnfdump (1),
+.BR TNF_DECLARE_RECORD (3TNF),
+.BR TNF_PROBE (3TNF),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3tnf/tnfctl_buffer_alloc.3tnf b/usr/src/man/man3tnf/tnfctl_buffer_alloc.3tnf
index 0c9080a0b0..1d7a7f5666 100644
--- a/usr/src/man/man3tnf/tnfctl_buffer_alloc.3tnf
+++ b/usr/src/man/man3tnf/tnfctl_buffer_alloc.3tnf
@@ -176,7 +176,7 @@ An internal error occurred.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -192,8 +192,16 @@ MT Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBprex\fR(1), \fBrm\fR(1), \fBtnfxtract\fR(1), \fBTNF_PROBE\fR(3TNF),
-\fBlibtnfctl\fR(3TNF), \fBtnfctl_exec_open\fR(3TNF),
-\fBtnfctl_indirect_open\fR(3TNF), \fBtnfctl_internal_open\fR(3TNF),
-\fBtnfctl_kernel_open\fR(3TNF), \fBtnfctl_pid_open\fR(3TNF),
-\fBtnfctl_trace_attrs_get\fR(3TNF), \fBtracing\fR(3TNF), \fBattributes\fR(5)
+.BR prex (1),
+.BR rm (1),
+.BR tnfxtract (1),
+.BR TNF_PROBE (3TNF),
+.BR libtnfctl (3TNF),
+.BR tnfctl_exec_open (3TNF),
+.BR tnfctl_indirect_open (3TNF),
+.BR tnfctl_internal_open (3TNF),
+.BR tnfctl_kernel_open (3TNF),
+.BR tnfctl_pid_open (3TNF),
+.BR tnfctl_trace_attrs_get (3TNF),
+.BR tracing (3TNF),
+.BR attributes (7)
diff --git a/usr/src/man/man3tnf/tnfctl_close.3tnf b/usr/src/man/man3tnf/tnfctl_close.3tnf
index 6d099ffe8d..1d1a732e05 100644
--- a/usr/src/man/man3tnf/tnfctl_close.3tnf
+++ b/usr/src/man/man3tnf/tnfctl_close.3tnf
@@ -101,7 +101,7 @@ An internal error occurred.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -117,7 +117,13 @@ MT Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBprex\fR(1), \fBprun\fR(1), \fBTNF_PROBE\fR(3TNF), \fBlibtnfctl\fR(3TNF),
-\fBtnfctl_exec_open\fR(3TNF), \fBtnfctl_indirect_open\fR(3TNF),
-\fBtnfctl_kernel_open\fR(3TNF), \fBtnfctl_pid_open\fR(3TNF),
-\fBtracing\fR(3TNF), \fBattributes\fR(5)
+.BR prex (1),
+.BR prun (1),
+.BR TNF_PROBE (3TNF),
+.BR libtnfctl (3TNF),
+.BR tnfctl_exec_open (3TNF),
+.BR tnfctl_indirect_open (3TNF),
+.BR tnfctl_kernel_open (3TNF),
+.BR tnfctl_pid_open (3TNF),
+.BR tracing (3TNF),
+.BR attributes (7)
diff --git a/usr/src/man/man3tnf/tnfctl_indirect_open.3tnf b/usr/src/man/man3tnf/tnfctl_indirect_open.3tnf
index 4457f8d54a..4708ff4948 100644
--- a/usr/src/man/man3tnf/tnfctl_indirect_open.3tnf
+++ b/usr/src/man/man3tnf/tnfctl_indirect_open.3tnf
@@ -24,7 +24,7 @@ where caller provides /proc functionality
.SH DESCRIPTION
The interfaces \fBtnfctl_indirect_open()\fR and \fBtnfctl_check_libs()\fR are
used to control probes in another process where the \fBlibtnfctl\fR(3TNF)
-client has already opened \fBproc\fR(4) on the target process. An example of
+client has already opened \fBproc\fR(5) on the target process. An example of
this is when the client is a debugger. Since these clients already use
\fB/proc\fR on the target, \fBlibtnfctl\fR(3TNF) cannot use \fB/proc\fR
directly. Therefore, these clients must provide callback functions that can be
@@ -173,7 +173,7 @@ An internal error occurred.
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -187,10 +187,16 @@ MT Level MT-Safe
.TE
.SH SEE ALSO
-\fBprex\fR(1), \fBTNF_PROBE\fR(3TNF), \fBdlclose\fR(3C), \fBdlopen\fR(3C),
-\fBlibtnfctl\fR(3TNF), \fBtnfctl_probe_enable\fR(3TNF),
-\fBtnfctl_probe_trace\fR(3TNF), \fBtracing\fR(3TNF), \fBproc\fR(4),
-\fBattributes\fR(5)
+.BR prex (1),
+.BR dlclose (3C),
+.BR dlopen (3C),
+.BR TNF_PROBE (3TNF),
+.BR libtnfctl (3TNF),
+.BR tnfctl_probe_enable (3TNF),
+.BR tnfctl_probe_trace (3TNF),
+.BR tracing (3TNF),
+.BR proc (5),
+.BR attributes (7)
.sp
.LP
\fILinker and Libraries Guide\fR
diff --git a/usr/src/man/man3tnf/tnfctl_internal_open.3tnf b/usr/src/man/man3tnf/tnfctl_internal_open.3tnf
index 2eca48a662..c3062712c1 100644
--- a/usr/src/man/man3tnf/tnfctl_internal_open.3tnf
+++ b/usr/src/man/man3tnf/tnfctl_internal_open.3tnf
@@ -71,7 +71,7 @@ An internal error occurred.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -87,9 +87,14 @@ MT Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBld\fR(1), \fBprex\fR(1), \fBTNF_PROBE\fR(3TNF), \fBdlopen\fR(3C),
-\fBdlclose\fR(3C), \fBlibtnfctl\fR(3TNF), \fBtracing\fR(3TNF),
-\fBattributes\fR(5)
+.BR ld (1),
+.BR prex (1),
+.BR dlclose (3C),
+.BR dlopen (3C),
+.BR TNF_PROBE (3TNF),
+.BR libtnfctl (3TNF),
+.BR tracing (3TNF),
+.BR attributes (7)
.sp
.LP
\fILinker and Libraries Guide\fR
diff --git a/usr/src/man/man3tnf/tnfctl_kernel_open.3tnf b/usr/src/man/man3tnf/tnfctl_kernel_open.3tnf
index d349edef66..e9d23afd5a 100644
--- a/usr/src/man/man3tnf/tnfctl_kernel_open.3tnf
+++ b/usr/src/man/man3tnf/tnfctl_kernel_open.3tnf
@@ -92,7 +92,7 @@ Some other failure occurred.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -108,5 +108,10 @@ MT Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBprex\fR(1), \fBfuser\fR(1M), \fBTNF_PROBE\fR(3TNF), \fBlibtnfctl\fR(3TNF),
-\fBtracing\fR(3TNF), \fBtnf_kernel_probes\fR(4), \fBattributes\fR(5)
+.BR prex (1),
+.BR TNF_PROBE (3TNF),
+.BR libtnfctl (3TNF),
+.BR tracing (3TNF),
+.BR tnf_kernel_probes (5),
+.BR attributes (7),
+.BR fuser (8)
diff --git a/usr/src/man/man3tnf/tnfctl_pid_open.3tnf b/usr/src/man/man3tnf/tnfctl_pid_open.3tnf
index 0526dafb30..ad6257600a 100644
--- a/usr/src/man/man3tnf/tnfctl_pid_open.3tnf
+++ b/usr/src/man/man3tnf/tnfctl_pid_open.3tnf
@@ -467,7 +467,7 @@ case TNFCTL_EVENT_FORK:
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -486,7 +486,7 @@ MT Level MT-Safe
\fBld\fR(1), \fBprex\fR(1), \fBproc\fR(1), \fBexec\fR(2), \fBexecve\fR(2),
\fBexit\fR(2), \fBfork\fR(2), \fBTNF_PROBE\fR(3TNF), \fBdlclose\fR(3C),
\fBdlopen\fR(3C), \fBlibtnfctl\fR(3TNF), \fBtnfctl_close\fR(3TNF),
-\fBtnfctl_internal_open\fR(3TNF), \fBtracing\fR(3TNF) \fBattributes\fR(5)
+\fBtnfctl_internal_open\fR(3TNF), \fBtracing\fR(3TNF) \fBattributes\fR(7)
.sp
.LP
\fILinker and Libraries Guide\fR
diff --git a/usr/src/man/man3tnf/tnfctl_probe_apply.3tnf b/usr/src/man/man3tnf/tnfctl_probe_apply.3tnf
index 3face0b195..dbdb0d5ccf 100644
--- a/usr/src/man/man3tnf/tnfctl_probe_apply.3tnf
+++ b/usr/src/man/man3tnf/tnfctl_probe_apply.3tnf
@@ -198,7 +198,7 @@ Note that these examples do not have any error handling code.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -214,10 +214,16 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBprex\fR(1), \fBTNF_PROBE\fR(3TNF), \fBdlclose\fR(3C), \fBdlopen\fR(3C),
-\fBlibtnfctl\fR(3TNF), \fBtnfctl_close\fR(3TNF),
-\fBtnfctl_probe_state_get\fR(3TNF), \fBtracing\fR(3TNF),
-\fBtnf_kernel_probes\fR(4), \fBattributes\fR(5)
+.BR prex (1),
+.BR dlclose (3C),
+.BR dlopen (3C),
+.BR TNF_PROBE (3TNF),
+.BR libtnfctl (3TNF),
+.BR tnfctl_close (3TNF),
+.BR tnfctl_probe_state_get (3TNF),
+.BR tracing (3TNF),
+.BR tnf_kernel_probes (5),
+.BR attributes (7)
.sp
.LP
\fILinker and Libraries Guide\fR
diff --git a/usr/src/man/man3tnf/tnfctl_probe_state_get.3tnf b/usr/src/man/man3tnf/tnfctl_probe_state_get.3tnf
index 37fd3c4480..51386d7ce0 100644
--- a/usr/src/man/man3tnf/tnfctl_probe_state_get.3tnf
+++ b/usr/src/man/man3tnf/tnfctl_probe_state_get.3tnf
@@ -332,7 +332,7 @@ Cannot do probe operations until a buffer is allocated. See
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for description of the following attributes:
+See \fBattributes\fR(7) for description of the following attributes:
.sp
.sp
@@ -348,7 +348,13 @@ MT Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBprex\fR(1), \fBTNF_PROBE\fR(3TNF), \fBlibtnfctl\fR(3TNF),
-\fBtnfctl_check_libs\fR(3TNF), \fBtnfctl_continue\fR(3TNF),
-\fBtnfctl_probe_apply\fR(3TNF), \fBtnfctl_probe_apply_ids\fR(3TNF),
-\fBtracing\fR(3TNF), \fBtnf_kernel_probes\fR(4), \fBattributes\fR(5)
+.BR prex (1),
+.BR TNF_PROBE (3TNF),
+.BR libtnfctl (3TNF),
+.BR tnfctl_check_libs (3TNF),
+.BR tnfctl_continue (3TNF),
+.BR tnfctl_probe_apply (3TNF),
+.BR tnfctl_probe_apply_ids (3TNF),
+.BR tracing (3TNF),
+.BR tnf_kernel_probes (5),
+.BR attributes (7)
diff --git a/usr/src/man/man3tnf/tnfctl_register_funcs.3tnf b/usr/src/man/man3tnf/tnfctl_register_funcs.3tnf
index b1af9e7c8b..55cb11ea8f 100644
--- a/usr/src/man/man3tnf/tnfctl_register_funcs.3tnf
+++ b/usr/src/man/man3tnf/tnfctl_register_funcs.3tnf
@@ -55,7 +55,7 @@ An internal error occurred.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -71,10 +71,16 @@ MT Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBprex\fR(1), \fBTNF_PROBE\fR(3TNF), \fBdlclose\fR(3C), \fBdlopen\fR(3C),
-\fBlibtnfctl\fR(3TNF), \fBtnfctl_close\fR(3TNF),
-\fBtnfctl_probe_state_get\fR(3TNF), \fBtracing\fR(3TNF),
-\fBtnf_kernel_probes\fR(4), \fBattributes\fR(5)
+.BR prex (1),
+.BR dlclose (3C),
+.BR dlopen (3C),
+.BR TNF_PROBE (3TNF),
+.BR libtnfctl (3TNF),
+.BR tnfctl_close (3TNF),
+.BR tnfctl_probe_state_get (3TNF),
+.BR tracing (3TNF),
+.BR tnf_kernel_probes (5),
+.BR attributes (7)
.sp
.LP
\fILinker and Libraries Guide\fR
diff --git a/usr/src/man/man3tnf/tnfctl_strerror.3tnf b/usr/src/man/man3tnf/tnfctl_strerror.3tnf
index 00a5ecbc7f..651a36b6e4 100644
--- a/usr/src/man/man3tnf/tnfctl_strerror.3tnf
+++ b/usr/src/man/man3tnf/tnfctl_strerror.3tnf
@@ -31,7 +31,7 @@ the error number is not within the legal range.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -47,5 +47,8 @@ MT Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBprex\fR(1), \fBTNF_PROBE\fR(3TNF), \fBlibtnfctl\fR(3TNF),
-\fBtracing\fR(3TNF), \fBattributes\fR(5)
+.BR prex (1),
+.BR TNF_PROBE (3TNF),
+.BR libtnfctl (3TNF),
+.BR tracing (3TNF),
+.BR attributes (7)
diff --git a/usr/src/man/man3tnf/tnfctl_trace_attrs_get.3tnf b/usr/src/man/man3tnf/tnfctl_trace_attrs_get.3tnf
index 5fc994c2ad..f22726793a 100644
--- a/usr/src/man/man3tnf/tnfctl_trace_attrs_get.3tnf
+++ b/usr/src/man/man3tnf/tnfctl_trace_attrs_get.3tnf
@@ -157,7 +157,7 @@ An internal error occurred.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -173,7 +173,12 @@ MT Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBprex\fR(1), \fBTNF_PROBE\fR(3TNF), \fBlibtnfctl\fR(3TNF),
-\fBtnfctl_buffer_alloc\fR(3TNF), \fBtnfctl_continue\fR(3TNF),
-\fBtnfctl_filter_list_get\fR(3TNF), \fBtnf_process_disable\fR(3TNF),
-\fBtracing\fR(3TNF), \fBattributes\fR(5)
+.BR prex (1),
+.BR TNF_PROBE (3TNF),
+.BR libtnfctl (3TNF),
+.BR tnf_process_disable (3TNF),
+.BR tnfctl_buffer_alloc (3TNF),
+.BR tnfctl_continue (3TNF),
+.BR tnfctl_filter_list_get (3TNF),
+.BR tracing (3TNF),
+.BR attributes (7)
diff --git a/usr/src/man/man3tnf/tnfctl_trace_state_set.3tnf b/usr/src/man/man3tnf/tnfctl_trace_state_set.3tnf
index 0457e1d44f..21f927757b 100644
--- a/usr/src/man/man3tnf/tnfctl_trace_state_set.3tnf
+++ b/usr/src/man/man3tnf/tnfctl_trace_state_set.3tnf
@@ -250,7 +250,7 @@ An internal error occurred.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -266,6 +266,12 @@ MT Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBprex\fR(1), \fBTNF_PROBE\fR(3TNF), \fBfree\fR(3C), \fBlibtnfctl\fR(3TNF),
-\fBtnfctl_kernel_open\fR(3TNF), \fBtnfctl_trace_attrs_get\fR(3TNF),
-\fBtracing\fR(3TNF), \fBtnf_kernel_probes\fR(4), \fBattributes\fR(5)
+.BR prex (1),
+.BR free (3C),
+.BR TNF_PROBE (3TNF),
+.BR libtnfctl (3TNF),
+.BR tnfctl_kernel_open (3TNF),
+.BR tnfctl_trace_attrs_get (3TNF),
+.BR tracing (3TNF),
+.BR tnf_kernel_probes (5),
+.BR attributes (7)
diff --git a/usr/src/man/man3tnf/tracing.3tnf b/usr/src/man/man3tnf/tracing.3tnf
index 6ecbdad3c8..7fee555446 100644
--- a/usr/src/man/man3tnf/tracing.3tnf
+++ b/usr/src/man/man3tnf/tracing.3tnf
@@ -48,7 +48,7 @@ Displays and controls probes in running software. See prex(1).
A set of probes built into the Solaris kernel which capture information about
system calls, multithreading, page faults, swapping, memory management, and
I/O. You can use these probes to obtain detailed traces of kernel activity
-under your application workloads. See \fBtnf_kernel_probes\fR(4).
+under your application workloads. See \fBtnf_kernel_probes\fR(5).
.RE
.sp
@@ -286,7 +286,7 @@ variety of other tasks.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -302,7 +302,12 @@ MT Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBprex\fR(1), \fBtnfdump\fR(1), \fBtnfxtract\fR(1),
-\fBTNF_DECLARE_RECORD\fR(3TNF), \fBTNF_PROBE\fR(3TNF), \fBlibtnfctl\fR(3TNF),
-\fBtnf_process_disable\fR(3TNF), \fBtnf_kernel_probes\fR(4),
-\fBattributes\fR(5)
+.BR prex (1),
+.BR tnfdump (1),
+.BR tnfxtract (1),
+.BR TNF_DECLARE_RECORD (3TNF),
+.BR TNF_PROBE (3TNF),
+.BR libtnfctl (3TNF),
+.BR tnf_process_disable (3TNF),
+.BR tnf_kernel_probes (5),
+.BR attributes (7)
diff --git a/usr/src/man/man3tsol/blcompare.3tsol b/usr/src/man/man3tsol/blcompare.3tsol
index 2d6536997c..218ef430e5 100644
--- a/usr/src/man/man3tsol/blcompare.3tsol
+++ b/usr/src/man/man3tsol/blcompare.3tsol
@@ -59,7 +59,7 @@ otherwise zero is returned.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -77,9 +77,13 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBgetplabel\fR(3TSOL), \fBlabel_to_str\fR(3TSOL), \fBlibtsol\fR(3LIB),
-\fBucred_getlabel\fR(3C), \fBlabel_encodings\fR(4), \fBattributes\fR(5),
-\fBlabels\fR(5)
+.BR ucred_getlabel (3C),
+.BR libtsol (3LIB),
+.BR getplabel (3TSOL),
+.BR label_to_str (3TSOL),
+.BR label_encodings (5),
+.BR attributes (7),
+.BR labels (7)
.sp
.LP
\fIDetermining the Relationship Between Two Labels\fR in \fISolaris Trusted
diff --git a/usr/src/man/man3tsol/blminmax.3tsol b/usr/src/man/man3tsol/blminmax.3tsol
index 9a0280cf0a..cf44d4bb7c 100644
--- a/usr/src/man/man3tsol/blminmax.3tsol
+++ b/usr/src/man/man3tsol/blminmax.3tsol
@@ -45,7 +45,7 @@ original labels.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -63,8 +63,10 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBlabel_to_str\fR(3TSOL), \fBlibtsol\fR(3LIB), \fBsbltos\fR(3TSOL),
-\fBattributes\fR(5)
+.BR libtsol (3LIB),
+.BR label_to_str (3TSOL),
+.BR sbltos (3TSOL),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3tsol/bltocolor.3tsol b/usr/src/man/man3tsol/bltocolor.3tsol
index 69f964e331..2e0a25c6ae 100644
--- a/usr/src/man/man3tsol/bltocolor.3tsol
+++ b/usr/src/man/man3tsol/bltocolor.3tsol
@@ -64,7 +64,7 @@ and values for the defined labels of this system.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -93,7 +93,9 @@ should be used in multithreaded applications.
.SH SEE ALSO
.sp
.LP
-\fBlabel_to_str\fR(3TSOL), \fBlibtsol\fR(3LIB), \fBattributes\fR(5)
+.BR libtsol (3LIB),
+.BR label_to_str (3TSOL),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3tsol/bltos.3tsol b/usr/src/man/man3tsol/bltos.3tsol
index beed1de478..0f3d05543d 100644
--- a/usr/src/man/man3tsol/bltos.3tsol
+++ b/usr/src/man/man3tsol/bltos.3tsol
@@ -210,7 +210,7 @@ and values for the defined labels of this system.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -232,8 +232,12 @@ The \fBbsltos()\fR and \fBbcleartos()\fR functions are Obsolete. Use the
.SH SEE ALSO
.sp
.LP
-\fBfree\fR(3C), \fBlabel_to_str\fR(3TSOL), \fBlibtsol\fR(3LIB),
-\fBmalloc\fR(3C), \fBlabel_encodings\fR(4), \fBattributes\fR(5)
+.BR free (3C),
+.BR malloc (3C),
+.BR libtsol (3LIB),
+.BR label_to_str (3TSOL),
+.BR label_encodings (5),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3tsol/btohex.3tsol b/usr/src/man/man3tsol/btohex.3tsol
index 31b16f6ed9..39e34b8d04 100644
--- a/usr/src/man/man3tsol/btohex.3tsol
+++ b/usr/src/man/man3tsol/btohex.3tsol
@@ -110,7 +110,7 @@ translation, or \fB(char *)0\fR if the parameter is not of the required type.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -140,8 +140,12 @@ multithreaded applications.
.SH SEE ALSO
.sp
.LP
-\fBatohexlabel\fR(1M), \fBhextoalabel\fR(1M), \fBlabel_to_str\fR(3TSOL),
-\fBlibtsol\fR(3LIB), \fBattributes\fR(5), \fBlabels\fR(5)
+.BR libtsol (3LIB),
+.BR label_to_str (3TSOL),
+.BR attributes (7),
+.BR labels (7),
+.BR atohexlabel (8),
+.BR hextoalabel (8)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3tsol/getdevicerange.3tsol b/usr/src/man/man3tsol/getdevicerange.3tsol
index cec0f13f68..f45d482430 100644
--- a/usr/src/man/man3tsol/getdevicerange.3tsol
+++ b/usr/src/man/man3tsol/getdevicerange.3tsol
@@ -87,7 +87,7 @@ Invalid upper or lower bound for device.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -105,8 +105,11 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBlist_devices\fR(1), \fBfree\fR(3C), \fBlibtsol\fR(3LIB),
-\fBm_label_free\fR(3TSOL), \fBattributes\fR(5)
+.BR list_devices (1),
+.BR free (3C),
+.BR libtsol (3LIB),
+.BR m_label_free (3TSOL),
+.BR attributes (7)
.sp
.LP
\fIValidating the Label Request Against the Printer\&'s Label Range\fR in
diff --git a/usr/src/man/man3tsol/getlabel.3tsol b/usr/src/man/man3tsol/getlabel.3tsol
index 3eb47754fd..2db6905bf7 100644
--- a/usr/src/man/man3tsol/getlabel.3tsol
+++ b/usr/src/man/man3tsol/getlabel.3tsol
@@ -146,7 +146,7 @@ An \fBI/O\fR error occurred while reading from or writing to the file system.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -161,8 +161,11 @@ Interface Stability Committed
.SH SEE ALSO
.LP
-\fBopen\fR(2), \fBpathconf\fR(2), \fBm_label_alloc\fR(3TSOL),
-\fBattributes\fR(5), \fBlabels\fR(5)
+.BR open (2),
+.BR pathconf (2),
+.BR m_label_alloc (3TSOL),
+.BR attributes (7),
+.BR labels (7)
.sp
.LP
\fIObtaining a File Label\fR in \fISolaris Trusted Extensions Developer\&'s
diff --git a/usr/src/man/man3tsol/getpathbylabel.3tsol b/usr/src/man/man3tsol/getpathbylabel.3tsol
index 60bf476141..c38282bcc6 100644
--- a/usr/src/man/man3tsol/getpathbylabel.3tsol
+++ b/usr/src/man/man3tsol/getpathbylabel.3tsol
@@ -116,7 +116,7 @@ The named file does not exist.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -134,8 +134,11 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBreadlink\fR(2), \fBgetzonerootbyid\fR(3TSOL), \fBlibtsol\fR(3LIB),
-\fBattributes\fR(5), \fBlabels\fR(5)
+.BR readlink (2),
+.BR libtsol (3LIB),
+.BR getzonerootbyid (3TSOL),
+.BR attributes (7),
+.BR labels (7)
.SH WARNINGS
.sp
.LP
diff --git a/usr/src/man/man3tsol/getplabel.3tsol b/usr/src/man/man3tsol/getplabel.3tsol
index 10db5e9ed7..3b8c69e8c1 100644
--- a/usr/src/man/man3tsol/getplabel.3tsol
+++ b/usr/src/man/man3tsol/getplabel.3tsol
@@ -46,7 +46,7 @@ valid sensitivity label if:
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -64,8 +64,11 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBucred_getlabel\fR(3C), \fBlibtsol\fR(3LIB), \fBm_label_alloc\fR(3TSOL),
-\fBm_label_free\fR(3TSOL), \fBattributes\fR(5)
+.BR ucred_getlabel (3C),
+.BR libtsol (3LIB),
+.BR m_label_alloc (3TSOL),
+.BR m_label_free (3TSOL),
+.BR attributes (7)
.sp
.LP
\fIObtaining a Process Label\fR in \fISolaris Trusted Extensions Developer\&'s
diff --git a/usr/src/man/man3tsol/getuserrange.3tsol b/usr/src/man/man3tsol/getuserrange.3tsol
index 5b63556fdc..a22ad4f60c 100644
--- a/usr/src/man/man3tsol/getuserrange.3tsol
+++ b/usr/src/man/man3tsol/getuserrange.3tsol
@@ -31,7 +31,7 @@ workspaces.
.LP
The default value for a user's label range is specified in
\fBlabel_encodings\fR(4). Overriding values for individual users are specified
-in \fBuser_attr\fR(4).
+in \fBuser_attr\fR(5).
.SH RETURN VALUES
.sp
.LP
@@ -67,7 +67,7 @@ cannot be allocated.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -85,14 +85,18 @@ MT-Level MT-Safe
.sp
.LP
The \fBgetuserrange()\fR function is Committed for systems that implement the
-Defense Intelligence Agency (DIA) MAC policy of \fBlabel_encodings\fR(4). Other
+Defense Intelligence Agency (DIA) MAC policy of \fBlabel_encodings\fR(5). Other
policies might exist in a future release of Trusted Extensions that might make
obsolete or supplement \fBlabel_encodings\fR.
.SH SEE ALSO
.sp
.LP
-\fBfree\fR(3C), \fBlibtsol\fR(3LIB), \fBm_label_free\fR(3TSOL),
-\fBlabel_encodings\fR(4), \fBuser_attr\fR(4), \fBattributes\fR(5)
+.BR free (3C),
+.BR libtsol (3LIB),
+.BR m_label_free (3TSOL),
+.BR label_encodings (5),
+.BR user_attr (5),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3tsol/getzonelabelbyid.3tsol b/usr/src/man/man3tsol/getzonelabelbyid.3tsol
index b231f29236..fde9b2104b 100644
--- a/usr/src/man/man3tsol/getzonelabelbyid.3tsol
+++ b/usr/src/man/man3tsol/getzonelabelbyid.3tsol
@@ -89,7 +89,7 @@ No zone corresponds to the specified label.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -107,9 +107,13 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBIntro\fR(2), \fBgetzonenamebyid\fR(3C), \fBgetzoneidbyname\fR(3C),
-\fBlibtsol\fR(3LIB), \fBm_label_free\fR(3TSOL), \fBattributes\fR(5),
-\fBlabels\fR(5)
+.BR Intro (2),
+.BR getzoneidbyname (3C),
+.BR getzonenamebyid (3C),
+.BR libtsol (3LIB),
+.BR m_label_free (3TSOL),
+.BR attributes (7),
+.BR labels (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3tsol/getzonerootbyid.3tsol b/usr/src/man/man3tsol/getzonerootbyid.3tsol
index 4abcbc46bf..92348a92b8 100644
--- a/usr/src/man/man3tsol/getzonerootbyid.3tsol
+++ b/usr/src/man/man3tsol/getzonerootbyid.3tsol
@@ -99,7 +99,7 @@ Unable to allocate pathname.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -117,8 +117,12 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBIntro\fR(2), \fBfree\fR(3C), \fBgetzonenamebyid\fR(3C), \fBlibtsol\fR(3LIB),
-\fBattributes\fR(5), \fBlabels\fR(5)
+.BR Intro (2),
+.BR free (3C),
+.BR getzonenamebyid (3C),
+.BR libtsol (3LIB),
+.BR attributes (7),
+.BR labels (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3tsol/hextob.3tsol b/usr/src/man/man3tsol/hextob.3tsol
index 2a75eafd03..bb1323a3c6 100644
--- a/usr/src/man/man3tsol/hextob.3tsol
+++ b/usr/src/man/man3tsol/hextob.3tsol
@@ -61,7 +61,7 @@ zero is returned.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -84,8 +84,10 @@ removed in a future Solaris Trusted Extensions release. Use the
.SH SEE ALSO
.sp
.LP
-\fBlibtsol\fR(3LIB), \fBstr_to_label\fR(3TSOL), \fBattributes\fR(5),
-\fBlabels\fR(5)
+.BR libtsol (3LIB),
+.BR str_to_label (3TSOL),
+.BR attributes (7),
+.BR labels (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3tsol/label_to_str.3tsol b/usr/src/man/man3tsol/label_to_str.3tsol
index f3ff3b7b5f..577b505db5 100644
--- a/usr/src/man/man3tsol/label_to_str.3tsol
+++ b/usr/src/man/man3tsol/label_to_str.3tsol
@@ -181,7 +181,7 @@ cannot be allocated.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -207,12 +207,16 @@ input to \fBstr_to_label\fR(3TSOL).
.sp
.LP
Conversion types that are relative to the DIA encodings schema are Standard.
-Standard is specified in \fBlabel_encodings\fR(4).
+Standard is specified in \fBlabel_encodings\fR(5).
.SH SEE ALSO
.sp
.LP
-\fBfree\fR(3C), \fBlibtsol\fR(3LIB), \fBstr_to_label\fR(3TSOL),
-\fBlabel_encodings\fR(4), \fBattributes\fR(5), \fBlabels\fR(5)
+.BR free (3C),
+.BR libtsol (3LIB),
+.BR str_to_label (3TSOL),
+.BR label_encodings (5),
+.BR attributes (7),
+.BR labels (7)
.sp
.LP
\fIUsing the label_to_str Function\fR in \fISolaris Trusted Extensions
diff --git a/usr/src/man/man3tsol/m_label.3tsol b/usr/src/man/man3tsol/m_label.3tsol
index 16874cf1b7..291c9c63ed 100644
--- a/usr/src/man/man3tsol/m_label.3tsol
+++ b/usr/src/man/man3tsol/m_label.3tsol
@@ -99,7 +99,7 @@ cannot be allocated.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -117,8 +117,12 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBlabel_to_str\fR(3TSOL), \fBlibtsol\fR(3LIB), \fBstr_to_label\fR(3TSOL),
-\fBlabel_encodings\fR(4), \fBattributes\fR(5), \fBlabels\fR(5)
+.BR libtsol (3LIB),
+.BR label_to_str (3TSOL),
+.BR str_to_label (3TSOL),
+.BR label_encodings (5),
+.BR attributes (7),
+.BR labels (7)
.sp
.LP
\fIDetermining Whether the Printing Service Is Running in a Labeled
diff --git a/usr/src/man/man3tsol/sbltos.3tsol b/usr/src/man/man3tsol/sbltos.3tsol
index 59a70a1ab9..976a656545 100644
--- a/usr/src/man/man3tsol/sbltos.3tsol
+++ b/usr/src/man/man3tsol/sbltos.3tsol
@@ -140,7 +140,7 @@ and values for the defined labels of this system.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -163,8 +163,10 @@ removed in a future Solaris Trusted Extensions release. Use the
.SH SEE ALSO
.sp
.LP
-\fBlabel_to_str\fR(3TSOL), \fBlibtsol\fR(3LIB), \fBattributes\fR(5),
-\fBlabels\fR(5)
+.BR libtsol (3LIB),
+.BR label_to_str (3TSOL),
+.BR attributes (7),
+.BR labels (7)
.SH WARNINGS
.sp
.LP
diff --git a/usr/src/man/man3tsol/setflabel.3tsol b/usr/src/man/man3tsol/setflabel.3tsol
index 5c4a5e8040..21a830dab1 100644
--- a/usr/src/man/man3tsol/setflabel.3tsol
+++ b/usr/src/man/man3tsol/setflabel.3tsol
@@ -220,7 +220,7 @@ The file system is read-only or its label is \fBADMIN_LOW\fR or
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -238,7 +238,8 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBlibtsol\fR(3LIB), \fBattributes\fR(5)
+.BR libtsol (3LIB),
+.BR attributes (7)
.sp
.LP
\fISetting a File Sensitivity Label\fR in \fISolaris Trusted Extensions
diff --git a/usr/src/man/man3tsol/stobl.3tsol b/usr/src/man/man3tsol/stobl.3tsol
index cca58c2e5f..edbd209158 100644
--- a/usr/src/man/man3tsol/stobl.3tsol
+++ b/usr/src/man/man3tsol/stobl.3tsol
@@ -192,7 +192,7 @@ and values for the defined labels of this system.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -214,8 +214,11 @@ The \fBstobsl()\fR and \fBstobclear()\fR functions are obsolete. Use the
.SH SEE ALSO
.sp
.LP
-\fBblcompare\fR(3TSOL), \fBhextob\fR(3TSOL), \fBlibtsol\fR(3LIB),
-\fBstr_to_label\fR(3TSOL), \fBattributes\fR(5)
+.BR libtsol (3LIB),
+.BR blcompare (3TSOL),
+.BR hextob (3TSOL),
+.BR str_to_label (3TSOL),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3tsol/str_to_label.3tsol b/usr/src/man/man3tsol/str_to_label.3tsol
index a09be85ed1..795a14a349 100644
--- a/usr/src/man/man3tsol/str_to_label.3tsol
+++ b/usr/src/man/man3tsol/str_to_label.3tsol
@@ -95,7 +95,7 @@ the \fBsys_trans_label\fR privilege.
.LP
The manifest constants \fBADMIN_HIGH\fR and \fBADMIN_LOW\fR are the human
readable strings that correspond to the Trusted Extensions policy
-\fBadmin_high\fR and \fBadmin_low\fR label values. See \fBlabels\fR(5).
+\fBadmin_high\fR and \fBadmin_low\fR label values. See \fBlabels\fR(7).
.SH RETURN VALUES
.sp
.LP
@@ -141,7 +141,7 @@ cannot be allocated.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -161,12 +161,16 @@ Standard See below.
.sp
.LP
Parsing types that are relative to Defense Intelligence Agency (DIA) encodings
-schema are Standard. Standard is specified in \fBlabel_encodings\fR(4).
+schema are Standard. Standard is specified in \fBlabel_encodings\fR(5).
.SH SEE ALSO
.sp
.LP
-\fBlabel_to_str\fR(3TSOL), \fBlibtsol\fR(3LIB), \fBm_label\fR(3TSOL),
-\fBlabel_encodings\fR(4), \fBattributes\fR(5), \fBlabels\fR(5)
+.BR libtsol (3LIB),
+.BR label_to_str (3TSOL),
+.BR m_label (3TSOL),
+.BR label_encodings (5),
+.BR attributes (7),
+.BR labels (7)
.sp
.LP
\fIValidating the Label Request Against the Printer\&'s Label Range\fR in
diff --git a/usr/src/man/man3tsol/tsol_getrhtype.3tsol b/usr/src/man/man3tsol/tsol_getrhtype.3tsol
index f8ed80cd27..886ead57cf 100644
--- a/usr/src/man/man3tsol/tsol_getrhtype.3tsol
+++ b/usr/src/man/man3tsol/tsol_getrhtype.3tsol
@@ -50,7 +50,7 @@ Trusted network remote-host database
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -68,7 +68,8 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBlibtsnet\fR(3LIB), \fBattributes\fR(5)
+.BR libtsnet (3LIB),
+.BR attributes (7)
.sp
.LP
\fIObtaining the Remote Host Type\fR in \fISolaris Trusted Extensions
diff --git a/usr/src/man/man3utempter/utempter_add_record.3utempter b/usr/src/man/man3utempter/utempter_add_record.3utempter
index 21f0f44a94..99d53f236d 100644
--- a/usr/src/man/man3utempter/utempter_add_record.3utempter
+++ b/usr/src/man/man3utempter/utempter_add_record.3utempter
@@ -53,11 +53,11 @@
.Sh DESCRIPTION
These functions provide an interface for terminal emulators such as tmux,
screen, and xterm to record user sessions to
-.Xr utmpx 4
+.Xr utmpx 5
database.
Note that they are best effort and may not succeed.
If consumers need to know for certain that they have successfully updated the
-.Xr utmpx 4
+.Xr utmpx 5
database, these functions should not be used because they cannot communicate
that for compatibility reasons.
.Pp
@@ -66,7 +66,7 @@ The
and
.Fn addToUtmp
functions add a login record to the
-.Xr utmpx 4
+.Xr utmpx 5
database for the TTY belonging to the pseudo-terminal manager file descriptor
.Fa fd ,
using the username corresponding with the real user ID of the calling
@@ -131,4 +131,4 @@ are
.Sh SEE ALSO
.Xr pututxline 3c ,
.Xr utmpx 3head ,
-.Xr utmpx 4
+.Xr utmpx 5
diff --git a/usr/src/man/man3uuid/uuid_clear.3uuid b/usr/src/man/man3uuid/uuid_clear.3uuid
index 3eca2b0af7..0af23f7ff7 100644
--- a/usr/src/man/man3uuid/uuid_clear.3uuid
+++ b/usr/src/man/man3uuid/uuid_clear.3uuid
@@ -243,4 +243,4 @@ The resulting value is stored in the character string pointed to by
.Xr gettimeofday 3C ,
.Xr printf 3C ,
.Xr libuuid 3LIB ,
-.Xr attributes 5
+.Xr attributes 7
diff --git a/usr/src/man/man3volmgt/media_findname.3volmgt b/usr/src/man/man3volmgt/media_findname.3volmgt
index 1abadf2a44..b185ea4da9 100644
--- a/usr/src/man/man3volmgt/media_findname.3volmgt
+++ b/usr/src/man/man3volmgt/media_findname.3volmgt
@@ -25,7 +25,7 @@ This function is obsolete. The management of removable media by the Volume
Management feature, including \fBvold\fR, has been replaced by software that
supports the Hardware Abstraction Layer (HAL). Programmatic support for HAL is
through the HAL APIs, which are documented on the HAL web site. See
-\fBhal\fR(5). The return value of this function is undefined.
+\fBhal\fR(7). The return value of this function is undefined.
.sp
.LP
\fBmedia_findname()\fR converts the supplied \fIstart\fR string into an
@@ -140,7 +140,7 @@ currently known to be the first floppy drive.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -158,11 +158,19 @@ Interface Stability Obsolete
.SH SEE ALSO
.sp
.LP
-\fBfdformat\fR(1), \fBlstat\fR(2), \fBreadlink\fR(2), \fBstat\fR(2),
-\fBfree\fR(3C), \fBmalloc\fR(3C), \fBvolmgt_check\fR(3VOLMGT),
-\fBvolmgt_inuse\fR(3VOLMGT), \fBvolmgt_root\fR(3VOLMGT),
-\fBvolmgt_running\fR(3VOLMGT), \fBvolmgt_symname\fR(3VOLMGT),
-\fBattributes\fR(5), \fBhal\fR(5)
+.BR fdformat (1),
+.BR lstat (2),
+.BR readlink (2),
+.BR stat (2),
+.BR free (3C),
+.BR malloc (3C),
+.BR volmgt_check (3VOLMGT),
+.BR volmgt_inuse (3VOLMGT),
+.BR volmgt_root (3VOLMGT),
+.BR volmgt_running (3VOLMGT),
+.BR volmgt_symname (3VOLMGT),
+.BR attributes (7),
+.BR hal (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3volmgt/media_getattr.3volmgt b/usr/src/man/man3volmgt/media_getattr.3volmgt
index cd0d043217..e2eedaef93 100644
--- a/usr/src/man/man3volmgt/media_getattr.3volmgt
+++ b/usr/src/man/man3volmgt/media_getattr.3volmgt
@@ -29,7 +29,7 @@ This function is obsolete. The management of removable media by the Volume
Management feature, including \fBvold\fR, has been replaced by software that
supports the Hardware Abstraction Layer (HAL). Programmatic support for HAL is
through the HAL APIs, which are documented on the HAL web site. See
-\fBhal\fR(5). The return value of this function is undefined.
+\fBhal\fR(7). The return value of this function is undefined.
.sp
.LP
\fBmedia_setattr()\fR and \fBmedia_getattr()\fR respectively set and get
@@ -123,7 +123,7 @@ if ((res = media_setattr("/dev/aliases/floppy0", "s-enxio",
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -141,8 +141,17 @@ Interface Stability Obsolete
.SH SEE ALSO
.sp
.LP
-\fBlstat\fR(2), \fBopen\fR(2), \fBreadlink\fR(2), \fBstat\fR(2),
-\fBfree\fR(3C), \fBmalloc\fR(3C), \fBmedia_findname\fR(3VOLMGT),
-\fBvolmgt_check\fR(3VOLMGT), \fBvolmgt_inuse\fR(3VOLMGT),
-\fBvolmgt_root\fR(3VOLMGT), \fBvolmgt_running\fR(3VOLMGT),
-\fBvolmgt_symname\fR(3VOLMGT), \fBattributes\fR(5), \fBhal\fR(5)
+.BR lstat (2),
+.BR open (2),
+.BR readlink (2),
+.BR stat (2),
+.BR free (3C),
+.BR malloc (3C),
+.BR media_findname (3VOLMGT),
+.BR volmgt_check (3VOLMGT),
+.BR volmgt_inuse (3VOLMGT),
+.BR volmgt_root (3VOLMGT),
+.BR volmgt_running (3VOLMGT),
+.BR volmgt_symname (3VOLMGT),
+.BR attributes (7),
+.BR hal (7)
diff --git a/usr/src/man/man3volmgt/media_getid.3volmgt b/usr/src/man/man3volmgt/media_getid.3volmgt
index 7b05f531b2..ad85b8f936 100644
--- a/usr/src/man/man3volmgt/media_getid.3volmgt
+++ b/usr/src/man/man3volmgt/media_getid.3volmgt
@@ -24,7 +24,7 @@ This function is obsolete. The management of removable media by the Volume
Management feature, including \fBvold\fR, has been replaced by software that
supports the Hardware Abstraction Layer (HAL). Programmatic support for HAL is
through the HAL APIs, which are documented on the HAL web site. See
-\fBhal\fR(5). The return value of this function is undefined.
+\fBhal\fR(7). The return value of this function is undefined.
.sp
.LP
\fBmedia_getid()\fR returns the \fIid\fR of a piece of media. Volume management
@@ -75,7 +75,7 @@ name space, or volume management is not running.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -92,5 +92,7 @@ Interface Stability Obsolete
.SH SEE ALSO
.LP
-\fBvolmgt_ownspath\fR(3VOLMGT), \fBvolmgt_running\fR(3VOLMGT),
-\fBattributes\fR(5), \fBhal\fR(5)
+.BR volmgt_ownspath (3VOLMGT),
+.BR volmgt_running (3VOLMGT),
+.BR attributes (7),
+.BR hal (7)
diff --git a/usr/src/man/man3volmgt/volmgt_acquire.3volmgt b/usr/src/man/man3volmgt/volmgt_acquire.3volmgt
index e953ca1c7a..83e6e9d9a0 100644
--- a/usr/src/man/man3volmgt/volmgt_acquire.3volmgt
+++ b/usr/src/man/man3volmgt/volmgt_acquire.3volmgt
@@ -26,7 +26,7 @@ This function is obsolete. The management of removable media by the Volume
Management feature, including \fBvold\fR, has been replaced by software that
supports the Hardware Abstraction Layer (HAL). Programmatic support for HAL is
through the HAL APIs, which are documented on the HAL web site. See
-\fBhal\fR(5). The return value of this function is undefined.
+\fBhal\fR(7). The return value of this function is undefined.
.sp
.LP
The \fBvolmgt_acquire()\fR routine reserves the removable media device
@@ -173,7 +173,7 @@ if (override) {
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -191,8 +191,11 @@ Interface Stability Obsolete
.SH SEE ALSO
.sp
.LP
-\fBfree\fR(3C), \fBmalloc\fR(3C), \fBvolmgt_release\fR(3VOLMGT),
-\fBattributes\fR(5), \fBhal\fR(5)
+.BR free (3C),
+.BR malloc (3C),
+.BR volmgt_release (3VOLMGT),
+.BR attributes (7),
+.BR hal (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3volmgt/volmgt_check.3volmgt b/usr/src/man/man3volmgt/volmgt_check.3volmgt
index 2719a69326..3368e293ac 100644
--- a/usr/src/man/man3volmgt/volmgt_check.3volmgt
+++ b/usr/src/man/man3volmgt/volmgt_check.3volmgt
@@ -22,7 +22,7 @@ This function is obsolete. The management of removable media by the Volume
Management feature, including \fBvold\fR, has been replaced by software that
supports the Hardware Abstraction Layer (HAL). Programmatic support for HAL is
through the HAL APIs, which are documented on the HAL web site. See
-\fBhal\fR(5). The return value of this function is undefined.
+\fBhal\fR(7). The return value of this function is undefined.
.sp
.LP
This routine asks volume Management to check the specified \fIpathname\fR and
@@ -87,7 +87,7 @@ appropriate for the new media.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -103,8 +103,13 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBvolcheck\fR(1), \fBopen\fR(2), \fBstat\fR(2), \fBvolmgt_inuse\fR(3VOLMGT),
-\fBvolmgt_running\fR(3VOLMGT), \fBattributes\fR(5), \fBhal\fR(5)
+.BR volcheck (1),
+.BR open (2),
+.BR stat (2),
+.BR volmgt_inuse (3VOLMGT),
+.BR volmgt_running (3VOLMGT),
+.BR attributes (7),
+.BR hal (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3volmgt/volmgt_feature_enabled.3volmgt b/usr/src/man/man3volmgt/volmgt_feature_enabled.3volmgt
index b3dda0a409..8b95c962ef 100644
--- a/usr/src/man/man3volmgt/volmgt_feature_enabled.3volmgt
+++ b/usr/src/man/man3volmgt/volmgt_feature_enabled.3volmgt
@@ -25,7 +25,7 @@ This function is obsolete. The management of removable media by the Volume
Management feature, including \fBvold\fR, has been replaced by software that
supports the Hardware Abstraction Layer (HAL). Programmatic support for HAL is
through the HAL APIs, which are documented on the HAL web site. See
-\fBhal\fR(5). The return value of this function is undefined.
+\fBhal\fR(7). The return value of this function is undefined.
.sp
.LP
The \fBvolmgt_feature_enabled()\fR routine checks whether specific volume
@@ -63,7 +63,7 @@ if (volmgt_feature_enabled("floppy-summit-interfaces")) {
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -81,5 +81,7 @@ Interface Stability Obsolete
.SH SEE ALSO
.sp
.LP
-\fBvolmgt_acquire\fR(3VOLMGT), \fBvolmgt_release\fR(3VOLMGT),
-\fBattributes\fR(5), \fBhal\fR(5)
+.BR volmgt_acquire (3VOLMGT),
+.BR volmgt_release (3VOLMGT),
+.BR attributes (7),
+.BR hal (7)
diff --git a/usr/src/man/man3volmgt/volmgt_inuse.3volmgt b/usr/src/man/man3volmgt/volmgt_inuse.3volmgt
index 064635c234..f1f020d660 100644
--- a/usr/src/man/man3volmgt/volmgt_inuse.3volmgt
+++ b/usr/src/man/man3volmgt/volmgt_inuse.3volmgt
@@ -22,7 +22,7 @@ This function is obsolete. The management of removable media by the Volume
Management feature, including \fBvold\fR, has been replaced by software that
supports the Hardware Abstraction Layer (HAL). Programmatic support for HAL is
through the HAL APIs, which are documented on the HAL web site. See
-\fBhal\fR(5). The return value of this function is undefined.
+\fBhal\fR(7). The return value of this function is undefined.
.sp
.LP
\fBvolmgt_inuse()\fR checks whether volume management is managing the specified
@@ -77,7 +77,7 @@ if (volmgt_inuse("/dev/rdiskette0") != 0) {
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -96,7 +96,7 @@ Interface Stability Obsolete
.sp
.LP
\fBopen\fR(2), \fBstat\fR(2), \fBerrno\fR(3C), \fBvolmgt_check\fR(3VOLMGT),
-\fBvolmgt_running\fR(3VOLMGT), \fBattributes\fR(5), \fBhal\fR(5)
+\fBvolmgt_running\fR(3VOLMGT), \fBattributes\fR(7), \fBhal\fR(7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3volmgt/volmgt_ownspath.3volmgt b/usr/src/man/man3volmgt/volmgt_ownspath.3volmgt
index d6e229ad7c..efcb58e3cd 100644
--- a/usr/src/man/man3volmgt/volmgt_ownspath.3volmgt
+++ b/usr/src/man/man3volmgt/volmgt_ownspath.3volmgt
@@ -30,13 +30,13 @@ This function is obsolete. The management of removable media by the Volume
Management feature, including \fBvold\fR, has been replaced by software that
supports the Hardware Abstraction Layer (HAL). Programmatic support for HAL is
through the HAL APIs, which are documented on the HAL web site. See
-\fBhal\fR(5). The return value of this function is undefined.
+\fBhal\fR(7). The return value of this function is undefined.
.sp
.LP
The \fBvolmgt_ownspath()\fR function checks to see if a given \fIpath\fR is
contained in the volume management name space. This is achieved by comparing
the beginning of the supplied path name with the output from
-\fBvolmgt_root\fR(3VOLMGT)
+.BR volmgt_root (3VOLMGT)
.SH RETURN VALUES
.LP
The return from this function is undefined.
@@ -67,7 +67,7 @@ if (volmgt_running()) {
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -84,5 +84,7 @@ Interface Stability Obsolete
.SH SEE ALSO
.LP
-\fBvolmgt_root\fR(3VOLMGT), \fBvolmgt_running\fR(3VOLMGT), \fBattributes\fR(5),
-\fBhal\fR(5)
+.BR volmgt_root (3VOLMGT),
+.BR volmgt_running (3VOLMGT),
+.BR attributes (7),
+.BR hal (7)
diff --git a/usr/src/man/man3volmgt/volmgt_release.3volmgt b/usr/src/man/man3volmgt/volmgt_release.3volmgt
index 0c801da6af..0b3a6d39d3 100644
--- a/usr/src/man/man3volmgt/volmgt_release.3volmgt
+++ b/usr/src/man/man3volmgt/volmgt_release.3volmgt
@@ -24,7 +24,7 @@ This function is obsolete. The management of removable media by the Volume
Management feature, including \fBvold\fR, has been replaced by software that
supports the Hardware Abstraction Layer (HAL). Programmatic support for HAL is
through the HAL APIs, which are documented on the HAL web site. See
-\fBhal\fR(5). The return value of this function is undefined.
+\fBhal\fR(7). The return value of this function is undefined.
.sp
.LP
The \fBvolmgt_release()\fR routine releases the removable media device
@@ -92,7 +92,7 @@ if (!volmgt_release("floppy0")) {
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -110,4 +110,6 @@ Interface Stability Obsolete
.SH SEE ALSO
.sp
.LP
-\fBvolmgt_acquire\fR(3VOLMGT), \fBattributes\fR(5), \fBhal\fR(5)
+.BR volmgt_acquire (3VOLMGT),
+.BR attributes (7),
+.BR hal (7)
diff --git a/usr/src/man/man3volmgt/volmgt_root.3volmgt b/usr/src/man/man3volmgt/volmgt_root.3volmgt
index 7b403dee48..ba3169e49f 100644
--- a/usr/src/man/man3volmgt/volmgt_root.3volmgt
+++ b/usr/src/man/man3volmgt/volmgt_root.3volmgt
@@ -21,7 +21,7 @@ This function is obsolete. The management of removable media by the Volume
Management feature, including \fBvold\fR, has been replaced by software that
supports the Hardware Abstraction Layer (HAL). Programmatic support for HAL is
through the HAL APIs, which are documented on the HAL web site. See
-\fBhal\fR(5). The return value of this function is undefined.
+\fBhal\fR(7). The return value of this function is undefined.
.sp
.LP
The \fBvolmgt_root()\fR function returns the current volume management root
@@ -67,7 +67,7 @@ default location for the volume management root directory
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -85,8 +85,12 @@ Interface Stability Obsolete
.SH SEE ALSO
.sp
.LP
-\fBopen\fR(2), \fBvolmgt_check\fR(3VOLMGT), \fBvolmgt_inuse\fR(3VOLMGT),
-\fBvolmgt_running\fR(3VOLMGT), \fBattributes\fR(5), \fBhal\fR(5)
+.BR open (2),
+.BR volmgt_check (3VOLMGT),
+.BR volmgt_inuse (3VOLMGT),
+.BR volmgt_running (3VOLMGT),
+.BR attributes (7),
+.BR hal (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3volmgt/volmgt_running.3volmgt b/usr/src/man/man3volmgt/volmgt_running.3volmgt
index 5be5452aa7..977fd2c0c4 100644
--- a/usr/src/man/man3volmgt/volmgt_running.3volmgt
+++ b/usr/src/man/man3volmgt/volmgt_running.3volmgt
@@ -22,7 +22,7 @@ This function is obsolete. The management of removable media by the Volume
Management feature, including \fBvold\fR, has been replaced by software that
supports the Hardware Abstraction Layer (HAL). Programmatic support for HAL is
through the HAL APIs, which are documented on the HAL web site. See
-\fBhal\fR(5).
+\fBhal\fR(7).
.sp
.LP
\fBvolmgt_running()\fR tells whether or not Volume Management is running.
@@ -76,7 +76,7 @@ To see if Volume Management is running:
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -94,8 +94,12 @@ Interface Stability Obsolete
.SH SEE ALSO
.sp
.LP
-\fBopen\fR(2), \fBstat\fR(2), \fBvolmgt_check\fR(3VOLMGT),
-\fBvolmgt_inuse\fR(3VOLMGT), \fBattributes\fR(5), \fBhal\fR(5)
+.BR open (2),
+.BR stat (2),
+.BR volmgt_check (3VOLMGT),
+.BR volmgt_inuse (3VOLMGT),
+.BR attributes (7),
+.BR hal (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man3volmgt/volmgt_symname.3volmgt b/usr/src/man/man3volmgt/volmgt_symname.3volmgt
index 9aab41bb20..6af7955656 100644
--- a/usr/src/man/man3volmgt/volmgt_symname.3volmgt
+++ b/usr/src/man/man3volmgt/volmgt_symname.3volmgt
@@ -28,7 +28,7 @@ This function is obsolete. The management of removable media by the Volume
Management feature, including \fBvold\fR, has been replaced by software that
supports the Hardware Abstraction Layer (HAL). Programmatic support for HAL is
through the HAL APIs, which are documented on the HAL web site. See
-\fBhal\fR(5). The return value of this function is undefined.
+\fBhal\fR(7). The return value of this function is undefined.
.sp
.LP
These two routines compliment each other, translating between Volume
@@ -137,7 +137,7 @@ if ((nm = volmgt_symname("/dev/rdsk/c0t6d0s2")) == NULL) {
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -155,6 +155,12 @@ Interface Stability Obsolete
.SH SEE ALSO
.sp
.LP
-\fBopen\fR(2), \fBstat\fR(2), \fBfree\fR(3C), \fBmalloc\fR(3C),
-\fBvolmgt_check\fR(3VOLMGT), \fBvolmgt_inuse\fR(3VOLMGT),
-\fBvolmgt_running\fR(3VOLMGT), \fBattributes\fR(5), \fBhal\fR(5)
+.BR open (2),
+.BR stat (2),
+.BR free (3C),
+.BR malloc (3C),
+.BR volmgt_check (3VOLMGT),
+.BR volmgt_inuse (3VOLMGT),
+.BR volmgt_running (3VOLMGT),
+.BR attributes (7),
+.BR hal (7)
diff --git a/usr/src/man/man3xcurses/COLS.3xcurses b/usr/src/man/man3xcurses/COLS.3xcurses
index 0e5718ac2d..a5143060c4 100644
--- a/usr/src/man/man3xcurses/COLS.3xcurses
+++ b/usr/src/man/man3xcurses/COLS.3xcurses
@@ -27,7 +27,7 @@ terminal screen.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -45,5 +45,7 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBinitscr\fR(3XCURSES), \fBlibcurses\fR(3XCURSES), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR initscr (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/LINES.3xcurses b/usr/src/man/man3xcurses/LINES.3xcurses
index 06e8811272..25dbf0a3fc 100644
--- a/usr/src/man/man3xcurses/LINES.3xcurses
+++ b/usr/src/man/man3xcurses/LINES.3xcurses
@@ -27,7 +27,7 @@ screen.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -45,5 +45,7 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBinitscr\fR(3XCURSES), \fBlibcurses\fR(3XCURSES), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR initscr (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/add_wch.3xcurses b/usr/src/man/man3xcurses/add_wch.3xcurses
index 7d4d7467a3..fcad875801 100644
--- a/usr/src/man/man3xcurses/add_wch.3xcurses
+++ b/usr/src/man/man3xcurses/add_wch.3xcurses
@@ -122,7 +122,7 @@ None.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -140,8 +140,18 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBattr_off\fR(3XCURSES), \fBbkgrndset\fR(3XCURSES), \fBcurses\fR(3XCURSES),
-\fBdoupdate\fR(3XCURSES), \fBin_wch\fR(3XCURSES), \fBins_wch\fR(3XCURSES),
-\fBlibcurses\fR(3XCURSES), \fBnl\fR(3XCURSES), \fBprintw\fR(3XCURSES),
-\fBscrollok\fR(3XCURSES), \fBscrl\fR(3XCURSES), \fBsetscrreg\fR(3XCURSES),
-\fBterminfo\fR(4), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR attr_off (3XCURSES),
+.BR bkgrndset (3XCURSES),
+.BR curses (3XCURSES),
+.BR doupdate (3XCURSES),
+.BR in_wch (3XCURSES),
+.BR ins_wch (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR nl (3XCURSES),
+.BR printw (3XCURSES),
+.BR scrl (3XCURSES),
+.BR scrollok (3XCURSES),
+.BR setscrreg (3XCURSES),
+.BR terminfo (5),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/add_wchnstr.3xcurses b/usr/src/man/man3xcurses/add_wchnstr.3xcurses
index 83497c3504..9de86a5b9a 100644
--- a/usr/src/man/man3xcurses/add_wchnstr.3xcurses
+++ b/usr/src/man/man3xcurses/add_wchnstr.3xcurses
@@ -144,7 +144,7 @@ None.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -162,5 +162,9 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBaddnwstr\fR(3XCURSES), \fBadd_wch\fR(3XCURSES), \fBattr_off\fR(3XCURSES),
-\fBlibcurses\fR(3XCURSES), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR add_wch (3XCURSES),
+.BR addnwstr (3XCURSES),
+.BR attr_off (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/addch.3xcurses b/usr/src/man/man3xcurses/addch.3xcurses
index 02481f79cf..b95f4f0861 100644
--- a/usr/src/man/man3xcurses/addch.3xcurses
+++ b/usr/src/man/man3xcurses/addch.3xcurses
@@ -126,7 +126,7 @@ None.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -144,8 +144,16 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBattroff\fR(3XCURSES), \fBbkgdset\fR(3XCURSES), \fBdoupdate\fR(3XCURSES),
-\fBinch\fR(3XCURSES), \fBinsch\fR(3XCURSES), \fBlibcurses\fR(3XCURSES),
-\fBnl\fR(3XCURSES), \fBprintw\fR(3XCURSES), \fBscrollok\fR(3XCURSES),
-\fBscrl\fR(3XCURSES), \fBterminfo\fR(4), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR attroff (3XCURSES),
+.BR bkgdset (3XCURSES),
+.BR doupdate (3XCURSES),
+.BR inch (3XCURSES),
+.BR insch (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR nl (3XCURSES),
+.BR printw (3XCURSES),
+.BR scrl (3XCURSES),
+.BR scrollok (3XCURSES),
+.BR terminfo (5),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/addchstr.3xcurses b/usr/src/man/man3xcurses/addchstr.3xcurses
index 733a159a91..5899f79b2b 100644
--- a/usr/src/man/man3xcurses/addchstr.3xcurses
+++ b/usr/src/man/man3xcurses/addchstr.3xcurses
@@ -141,7 +141,7 @@ None.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -159,5 +159,9 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBaddch\fR(3XCURSES), \fBaddnstr\fR(3XCURSES), \fBattroff\fR(3XCURSES),
-\fBlibcurses\fR(3XCURSES), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR addch (3XCURSES),
+.BR addnstr (3XCURSES),
+.BR attroff (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/addnstr.3xcurses b/usr/src/man/man3xcurses/addnstr.3xcurses
index 32b74b5a25..6aad5b4d76 100644
--- a/usr/src/man/man3xcurses/addnstr.3xcurses
+++ b/usr/src/man/man3xcurses/addnstr.3xcurses
@@ -146,7 +146,7 @@ None.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -164,5 +164,9 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBaddch\fR(3XCURSES), \fBaddchstr\fR(3XCURSES), \fBcurses\fR(3XCURSES),
-\fBlibcurses\fR(3XCURSES), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR addch (3XCURSES),
+.BR addchstr (3XCURSES),
+.BR curses (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/addnwstr.3xcurses b/usr/src/man/man3xcurses/addnwstr.3xcurses
index ba791604e3..8e071ffbfa 100644
--- a/usr/src/man/man3xcurses/addnwstr.3xcurses
+++ b/usr/src/man/man3xcurses/addnwstr.3xcurses
@@ -148,7 +148,7 @@ None.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -166,5 +166,9 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBadd_wch\fR(3XCURSES), \fBadd_wchnstr\fR(3XCURSES), \fBcurses\fR(3XCURSES),
-\fBlibcurses\fR(3XCURSES), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR add_wch (3XCURSES),
+.BR add_wchnstr (3XCURSES),
+.BR curses (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/attr_get.3xcurses b/usr/src/man/man3xcurses/attr_get.3xcurses
index ce6162932b..5fa7e5a94c 100644
--- a/usr/src/man/man3xcurses/attr_get.3xcurses
+++ b/usr/src/man/man3xcurses/attr_get.3xcurses
@@ -143,7 +143,7 @@ None.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -161,7 +161,13 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBadd_wch\fR(3XCURSES), \fBaddnwstr\fR(3XCURSES), \fBattroff\fR(3XCURSES),
-\fBbkgrndset\fR(3XCURSES), \fBcurses\fR(3XCURSES), \fBinit_color\fR(3XCURSES),
-\fBlibcurses\fR(3XCURSES), \fBstart_color\fR(3XCURSES), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR add_wch (3XCURSES),
+.BR addnwstr (3XCURSES),
+.BR attroff (3XCURSES),
+.BR bkgrndset (3XCURSES),
+.BR curses (3XCURSES),
+.BR init_color (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR start_color (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/attroff.3xcurses b/usr/src/man/man3xcurses/attroff.3xcurses
index 53d51f42c5..0f00d263da 100644
--- a/usr/src/man/man3xcurses/attroff.3xcurses
+++ b/usr/src/man/man3xcurses/attroff.3xcurses
@@ -113,7 +113,7 @@ All of these functions may be macros.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -131,7 +131,13 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBaddch\fR(3XCURSES), \fBaddnstr\fR(3XCURSES), \fBattr_get\fR(3XCURSES),
-\fBbkgdset\fR(3XCURSES), \fBcurses\fR(3XCURSES), \fBinit_color\fR(3XCURSES),
-\fBlibcurses\fR(3XCURSES), \fBstart_color\fR(3XCURSES), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR addch (3XCURSES),
+.BR addnstr (3XCURSES),
+.BR attr_get (3XCURSES),
+.BR bkgdset (3XCURSES),
+.BR curses (3XCURSES),
+.BR init_color (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR start_color (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/baudrate.3xcurses b/usr/src/man/man3xcurses/baudrate.3xcurses
index 6a21060c87..5246fdda06 100644
--- a/usr/src/man/man3xcurses/baudrate.3xcurses
+++ b/usr/src/man/man3xcurses/baudrate.3xcurses
@@ -35,7 +35,7 @@ None.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -53,4 +53,6 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBlibcurses\fR(3XCURSES), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR libcurses (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/beep.3xcurses b/usr/src/man/man3xcurses/beep.3xcurses
index fedf50ebbe..8a3f408582 100644
--- a/usr/src/man/man3xcurses/beep.3xcurses
+++ b/usr/src/man/man3xcurses/beep.3xcurses
@@ -31,7 +31,7 @@ The \fBbeep()\fR and \fBflash()\fR functions produce an audio and visual alarm
on the terminal, respectively. If the terminal has the capability,
\fBbeep()\fR sounds a bell or beep and \fBflash()\fR flashes the screen. One
alarm is substituted for another if the terminal does not support the
-capability called (see \fBterminfo\fR(4) \fBbel\fR and \fBflash\fR
+capability called (see \fBterminfo\fR(5) \fBbel\fR and \fBflash\fR
capabilities). For example, a call to \fBbeep()\fR for a terminal without that
capability results in a flash.
.SH RETURN VALUES
@@ -45,7 +45,7 @@ None.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -63,5 +63,7 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBlibcurses\fR(3XCURSES), \fBterminfo\fR(4), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR libcurses (3XCURSES),
+.BR terminfo (5),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/bkgd.3xcurses b/usr/src/man/man3xcurses/bkgd.3xcurses
index b99618a299..0691db6a48 100644
--- a/usr/src/man/man3xcurses/bkgd.3xcurses
+++ b/usr/src/man/man3xcurses/bkgd.3xcurses
@@ -117,7 +117,7 @@ using only constants with the A_ prefix.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -135,8 +135,16 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBaddch\fR(3XCURSES), \fBaddchstr\fR(3XCURSES), \fBattroff\fR(3XCURSES),
-\fBbkgrnd\fR(3XCURSES), \fBclear\fR(3XCURSES), \fBclrtoeol\fR(3XCURSES),
-\fBclrtobot\fR(3XCURSES), \fBerase\fR(3XCURSES), \fBinch\fR(3XCURSES),
-\fBlibcurses\fR(3XCURSES), \fBmvprintw\fR(3XCURSES), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR addch (3XCURSES),
+.BR addchstr (3XCURSES),
+.BR attroff (3XCURSES),
+.BR bkgrnd (3XCURSES),
+.BR clear (3XCURSES),
+.BR clrtobot (3XCURSES),
+.BR clrtoeol (3XCURSES),
+.BR erase (3XCURSES),
+.BR inch (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR mvprintw (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/bkgrnd.3xcurses b/usr/src/man/man3xcurses/bkgrnd.3xcurses
index adcecdcb8c..79e86053f5 100644
--- a/usr/src/man/man3xcurses/bkgrnd.3xcurses
+++ b/usr/src/man/man3xcurses/bkgrnd.3xcurses
@@ -118,7 +118,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -136,8 +136,18 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBadd_wch\fR(3XCURSES), \fBadd_wchnstr\fR(3XCURSES), \fBaddch\fR(3XCURSES),
-\fBaddchstr\fR(3XCURSES), \fBattroff\fR(3XCURSES), \fBbkgd\fR(3XCURSES),
-\fBclear\fR(3XCURSES), \fBclrtoeol\fR(3XCURSES), \fBclrtobot\fR(3XCURSES),
-\fBerase\fR(3XCURSES), \fBinch\fR(3XCURSES), \fBlibcurses\fR(3XCURSES),
-\fBmvprintw\fR(3XCURSES), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR add_wch (3XCURSES),
+.BR add_wchnstr (3XCURSES),
+.BR addch (3XCURSES),
+.BR addchstr (3XCURSES),
+.BR attroff (3XCURSES),
+.BR bkgd (3XCURSES),
+.BR clear (3XCURSES),
+.BR clrtobot (3XCURSES),
+.BR clrtoeol (3XCURSES),
+.BR erase (3XCURSES),
+.BR inch (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR mvprintw (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/border.3xcurses b/usr/src/man/man3xcurses/border.3xcurses
index d4f6af140a..3ed8267b56 100644
--- a/usr/src/man/man3xcurses/border.3xcurses
+++ b/usr/src/man/man3xcurses/border.3xcurses
@@ -200,7 +200,7 @@ None.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -218,6 +218,11 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBadd_wch\fR(3XCURSES), \fBaddch\fR(3XCURSES), \fBattr_get\fR(3XCURSES),
-\fBattroff\fR(3XCURSES), \fBborder_set\fR(3XCURSES), \fBlibcurses\fR(3XCURSES),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR add_wch (3XCURSES),
+.BR addch (3XCURSES),
+.BR attr_get (3XCURSES),
+.BR attroff (3XCURSES),
+.BR border_set (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/border_set.3xcurses b/usr/src/man/man3xcurses/border_set.3xcurses
index e2c5339c2b..2274fbd9cc 100644
--- a/usr/src/man/man3xcurses/border_set.3xcurses
+++ b/usr/src/man/man3xcurses/border_set.3xcurses
@@ -206,7 +206,7 @@ None.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -224,6 +224,11 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBadd_wch\fR(3XCURSES), \fBaddch\fR(3XCURSES), \fBattr_get\fR(3XCURSES),
-\fBattroff\fR(3XCURSES), \fBborder\fR(3XCURSES), \fBlibcurses\fR(3XCURSES),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR add_wch (3XCURSES),
+.BR addch (3XCURSES),
+.BR attr_get (3XCURSES),
+.BR attroff (3XCURSES),
+.BR border (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/can_change_color.3xcurses b/usr/src/man/man3xcurses/can_change_color.3xcurses
index d2f32b9d0a..b28c184f7b 100644
--- a/usr/src/man/man3xcurses/can_change_color.3xcurses
+++ b/usr/src/man/man3xcurses/can_change_color.3xcurses
@@ -270,7 +270,7 @@ However, applications cannot rely on this to be true.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -288,5 +288,9 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBattroff\fR(3XCURSES), \fBdelscreen\fR(3XCURSES), \fBinitscr\fR(3XCURSES),
-\fBlibcurses\fR(3XCURSES), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR attroff (3XCURSES),
+.BR delscreen (3XCURSES),
+.BR initscr (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/cbreak.3xcurses b/usr/src/man/man3xcurses/cbreak.3xcurses
index 2a208c6214..2808c591fb 100644
--- a/usr/src/man/man3xcurses/cbreak.3xcurses
+++ b/usr/src/man/man3xcurses/cbreak.3xcurses
@@ -70,7 +70,7 @@ None.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -88,6 +88,11 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBgetch\fR(3XCURSES), \fBhalfdelay\fR(3XCURSES), \fBnodelay\fR(3XCURSES),
-\fBtimeout\fR(3XCURSES), \fBlibcurses\fR(3XCURSES), \fBattributes\fR(5),
-\fBstandards\fR(5), \fBtermio\fR(7I)
+.BR getch (3XCURSES),
+.BR halfdelay (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR nodelay (3XCURSES),
+.BR timeout (3XCURSES),
+.BR termio (4I),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/chgat.3xcurses b/usr/src/man/man3xcurses/chgat.3xcurses
index fdf3b3f8f7..7e12c60009 100644
--- a/usr/src/man/man3xcurses/chgat.3xcurses
+++ b/usr/src/man/man3xcurses/chgat.3xcurses
@@ -135,7 +135,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -153,5 +153,8 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBbkgrnd\fR(3XCURSES), \fBlibcurses\fR(3XCURSES), \fBsetcchar\fR(3XCURSES),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR bkgrnd (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR setcchar (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/clear.3xcurses b/usr/src/man/man3xcurses/clear.3xcurses
index 620ae0c4d0..8f0f725afa 100644
--- a/usr/src/man/man3xcurses/clear.3xcurses
+++ b/usr/src/man/man3xcurses/clear.3xcurses
@@ -81,7 +81,7 @@ An error occurred.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -99,7 +99,13 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBbkgdset\fR(3XCURSES), \fBclearok\fR(3XCURSES), \fBclrtobot\fR(3XCURSES),
-\fBclrtoeol\fR(3XCURSES), \fBdoupdate\fR(3XCURSES), \fBlibcurses\fR(3XCURSES),
-\fBrefresh\fR(3XCURSES), \fBwrefresh\fR(3XCURSES), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR bkgdset (3XCURSES),
+.BR clearok (3XCURSES),
+.BR clrtobot (3XCURSES),
+.BR clrtoeol (3XCURSES),
+.BR doupdate (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR refresh (3XCURSES),
+.BR wrefresh (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/clearok.3xcurses b/usr/src/man/man3xcurses/clearok.3xcurses
index 5e798348b9..05ca2a1c52 100644
--- a/usr/src/man/man3xcurses/clearok.3xcurses
+++ b/usr/src/man/man3xcurses/clearok.3xcurses
@@ -153,7 +153,7 @@ not use the cursor.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -171,6 +171,10 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBbkgdset\fR(3XCURSES), \fBclear\fR(3XCURSES), \fBdoupdate\fR(3XCURSES),
-\fBlibcurses\fR(3XCURSES), \fBscrl\fR(3XCURSES), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR bkgdset (3XCURSES),
+.BR clear (3XCURSES),
+.BR doupdate (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR scrl (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/clrtobot.3xcurses b/usr/src/man/man3xcurses/clrtobot.3xcurses
index 32eb3d9091..3918084f91 100644
--- a/usr/src/man/man3xcurses/clrtobot.3xcurses
+++ b/usr/src/man/man3xcurses/clrtobot.3xcurses
@@ -58,7 +58,7 @@ None.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -76,6 +76,10 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBbkgdset\fR(3XCURSES), \fBclear\fR(3XCURSES), \fBclearok\fR(3XCURSES),
-\fBclrtoeol\fR(3XCURSES), \fBlibcurses\fR(3XCURSES), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR bkgdset (3XCURSES),
+.BR clear (3XCURSES),
+.BR clearok (3XCURSES),
+.BR clrtoeol (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/clrtoeol.3xcurses b/usr/src/man/man3xcurses/clrtoeol.3xcurses
index e00af67960..95153d9c9e 100644
--- a/usr/src/man/man3xcurses/clrtoeol.3xcurses
+++ b/usr/src/man/man3xcurses/clrtoeol.3xcurses
@@ -59,7 +59,7 @@ None.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -77,6 +77,10 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBbkgdset\fR(3XCURSES), \fBclear\fR(3XCURSES), \fBclearok\fR(3XCURSES),
-\fBclrtobot\fR(3XCURSES), \fBlibcurses\fR(3XCURSES), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR bkgdset (3XCURSES),
+.BR clear (3XCURSES),
+.BR clearok (3XCURSES),
+.BR clrtobot (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/copywin.3xcurses b/usr/src/man/man3xcurses/copywin.3xcurses
index 94af2f64a8..a2c8a09086 100644
--- a/usr/src/man/man3xcurses/copywin.3xcurses
+++ b/usr/src/man/man3xcurses/copywin.3xcurses
@@ -132,7 +132,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -150,5 +150,9 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcurses\fR(3XCURSES), \fBlibcurses\fR(3XCURSES), \fBnewpad\fR(3XCURSES),
-\fBoverlay\fR(3XCURSES), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR curses (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR newpad (3XCURSES),
+.BR overlay (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/cur_term.3xcurses b/usr/src/man/man3xcurses/cur_term.3xcurses
index 9f3daed780..27dde0b86c 100644
--- a/usr/src/man/man3xcurses/cur_term.3xcurses
+++ b/usr/src/man/man3xcurses/cur_term.3xcurses
@@ -27,7 +27,7 @@ The external variable \fBcur_term\fR to identifies the record in the
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -45,5 +45,8 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBlibcurses\fR(3XCURSES), \fBset_curterm\fR(3XCURSES),
-\fBtigetflag\fR(3XCURSES), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR libcurses (3XCURSES),
+.BR set_curterm (3XCURSES),
+.BR tigetflag (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/curs_set.3xcurses b/usr/src/man/man3xcurses/curs_set.3xcurses
index 64e7c614dd..7f62cb6aaf 100644
--- a/usr/src/man/man3xcurses/curs_set.3xcurses
+++ b/usr/src/man/man3xcurses/curs_set.3xcurses
@@ -48,7 +48,7 @@ None.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -66,4 +66,6 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBlibcurses\fR(3XCURSES), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR libcurses (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/curscr.3xcurses b/usr/src/man/man3xcurses/curscr.3xcurses
index 58da17934a..14bbc741fd 100644
--- a/usr/src/man/man3xcurses/curscr.3xcurses
+++ b/usr/src/man/man3xcurses/curscr.3xcurses
@@ -28,7 +28,7 @@ be specified as an argument to certain functions such as
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -46,5 +46,7 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBclearok\fR(3XCURSES), \fBlibcurses\fR(3XCURSES), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR clearok (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/curses.3xcurses b/usr/src/man/man3xcurses/curses.3xcurses
index b1a06703d4..2970af80de 100644
--- a/usr/src/man/man3xcurses/curses.3xcurses
+++ b/usr/src/man/man3xcurses/curses.3xcurses
@@ -37,7 +37,7 @@ set in the Korn Shell (see \fBksh\fR(1)) by typing:
.sp
.LP
To set environment variables using other command line interfaces or shells, see
-the \fBenviron\fR(5) manual page.
+the \fBenviron\fR(7) manual page.
.sp
.LP
Three additional environment variables are useful, and can be set in the Korn
@@ -587,7 +587,7 @@ of input functions like \fBgetch\fR(3XCURSES) and \fBgetnstr\fR(3XCURSES).
.RS 27n
In line input mode, the terminal driver handles the input of line units as well
as \fBSIGERASE\fR and \fBSIGKILL\fR character processing. See
-\fBtermio\fR(7I) for more information.
+\fBtermio\fR(4I) for more information.
.sp
In this mode, the \fBgetch()\fR and \fBgetnstr()\fR functions will not return
until a complete line has been read by the terminal driver, at which point only
@@ -857,7 +857,7 @@ This second example is the same as the first, but with the right margin.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -875,18 +875,47 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBksh\fR(1), \fBCOLOR_PAIR\fR(3XCURSES), \fBPAIR_NUMBER\fR(3XCURSES),
-\fBaddchstr\fR(3XCURSES), \fBattr_off\fR(3XCURSES), \fBattroff\fR(3XCURSES),
-\fBbkgdset\fR(3XCURSES), \fBbkgrndset\fR(3XCURSES), \fBcbreak\fR(3XCURSES),
-\fBcopywin\fR(3XCURSES), \fBderwin\fR(3XCURSES), \fBecho\fR(3XCURSES),
-\fBgetcchar\fR(3XCURSES), \fBgetch\fR(3XCURSES), \fBgetnstr\fR(3XCURSES),
-\fBhalfdelay\fR(3XCURSES), \fBinch\fR(3XCURSES), \fBkeypad\fR(3XCURSES),
-\fBlibcurses\fR(3XCURSES), \fBnewpad\fR(3XCURSES), \fBnewwin\fR(3XCURSES),
-\fBnocbreak\fR(3XCURSES), \fBnodelay\fR(3XCURSES), \fBnoecho\fR(3XCURSES),
-\fBnoraw\fR(3XCURSES), \fBnotimeout\fR(3XCURSES), \fBoverlay\fR(3XCURSES),
-\fBoverwrite\fR(3XCURSES), \fBsetcchar\fR(3XCURSES), \fBsubwin\fR(3XCURSES),
-\fBtimeout\fR(3XCURSES), \fBwaddchstr\fR(3XCURSES), \fBwaddstr\fR(3XCURSES),
-\fBwcwidth\fR(3C), \fBwget_wch\fR(3XCURSES), \fBwinsch\fR(3XCURSES),
-\fBwnoutrefresh\fR(3XCURSES), \fBwprintw\fR(3XCURSES),
-\fBwrefresh\fR(3XCURSES), \fBwtimeout\fR(3XCURSES), \fBattributes\fR(5),
-\fBenviron\fR(5), \fBstandards\fR(5), \fBtermio\fR(7I)
+.BR ksh (1),
+.BR wcwidth (3C),
+.BR COLOR_PAIR (3XCURSES),
+.BR PAIR_NUMBER (3XCURSES),
+.BR addchstr (3XCURSES),
+.BR attr_off (3XCURSES),
+.BR attroff (3XCURSES),
+.BR bkgdset (3XCURSES),
+.BR bkgrndset (3XCURSES),
+.BR cbreak (3XCURSES),
+.BR copywin (3XCURSES),
+.BR derwin (3XCURSES),
+.BR echo (3XCURSES),
+.BR getcchar (3XCURSES),
+.BR getch (3XCURSES),
+.BR getnstr (3XCURSES),
+.BR halfdelay (3XCURSES),
+.BR inch (3XCURSES),
+.BR keypad (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR newpad (3XCURSES),
+.BR newwin (3XCURSES),
+.BR nocbreak (3XCURSES),
+.BR nodelay (3XCURSES),
+.BR noecho (3XCURSES),
+.BR noraw (3XCURSES),
+.BR notimeout (3XCURSES),
+.BR overlay (3XCURSES),
+.BR overwrite (3XCURSES),
+.BR setcchar (3XCURSES),
+.BR subwin (3XCURSES),
+.BR timeout (3XCURSES),
+.BR waddchstr (3XCURSES),
+.BR waddstr (3XCURSES),
+.BR wget_wch (3XCURSES),
+.BR winsch (3XCURSES),
+.BR wnoutrefresh (3XCURSES),
+.BR wprintw (3XCURSES),
+.BR wrefresh (3XCURSES),
+.BR wtimeout (3XCURSES),
+.BR termio (4I),
+.BR attributes (7),
+.BR environ (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/def_prog_mode.3xcurses b/usr/src/man/man3xcurses/def_prog_mode.3xcurses
index 331b72a79c..73027b9e0d 100644
--- a/usr/src/man/man3xcurses/def_prog_mode.3xcurses
+++ b/usr/src/man/man3xcurses/def_prog_mode.3xcurses
@@ -60,7 +60,7 @@ None.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -78,6 +78,10 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBendwin\fR(3XCURSES), \fBinitscr\fR(3XCURSES), \fBlibcurses\fR(3XCURSES),
-\fBnewterm\fR(3XCURSES), \fBsetupterm\fR(3XCURSES), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR endwin (3XCURSES),
+.BR initscr (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR newterm (3XCURSES),
+.BR setupterm (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/del_curterm.3xcurses b/usr/src/man/man3xcurses/del_curterm.3xcurses
index e3963e5c4b..fcc01b8da7 100644
--- a/usr/src/man/man3xcurses/del_curterm.3xcurses
+++ b/usr/src/man/man3xcurses/del_curterm.3xcurses
@@ -163,7 +163,7 @@ None.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -181,6 +181,12 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBbaudrate\fR(3XCURSES), \fBbeep\fR(3XCURSES), \fBinitscr\fR(3XCURSES),
-\fBlibcurses\fR(3XCURSES), \fBmvcur\fR(3XCURSES), \fBtigetflag\fR(3XCURSES),
-\fBuse_env\fR(3XCURSES), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR baudrate (3XCURSES),
+.BR beep (3XCURSES),
+.BR initscr (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR mvcur (3XCURSES),
+.BR tigetflag (3XCURSES),
+.BR use_env (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/delay_output.3xcurses b/usr/src/man/man3xcurses/delay_output.3xcurses
index c709f81678..cc6484ef8e 100644
--- a/usr/src/man/man3xcurses/delay_output.3xcurses
+++ b/usr/src/man/man3xcurses/delay_output.3xcurses
@@ -46,7 +46,7 @@ None.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -64,5 +64,7 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBlibcurses\fR(3XCURSES), \fBnapms\fR(3XCURSES), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR libcurses (3XCURSES),
+.BR napms (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/delch.3xcurses b/usr/src/man/man3xcurses/delch.3xcurses
index a75b405e44..8f1a3bc932 100644
--- a/usr/src/man/man3xcurses/delch.3xcurses
+++ b/usr/src/man/man3xcurses/delch.3xcurses
@@ -86,7 +86,7 @@ None.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -104,5 +104,8 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBbkgdset\fR(3XCURSES), \fBinsch\fR(3XCURSES), \fBlibcurses\fR(3XCURSES),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR bkgdset (3XCURSES),
+.BR insch (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/deleteln.3xcurses b/usr/src/man/man3xcurses/deleteln.3xcurses
index 65703c01ba..d29c6b5111 100644
--- a/usr/src/man/man3xcurses/deleteln.3xcurses
+++ b/usr/src/man/man3xcurses/deleteln.3xcurses
@@ -52,7 +52,7 @@ None.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -70,5 +70,9 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBbkgdset\fR(3XCURSES), \fBinsdelln\fR(3XCURSES), \fBinsertln\fR(3XCURSES),
-\fBlibcurses\fR(3XCURSES), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR bkgdset (3XCURSES),
+.BR insdelln (3XCURSES),
+.BR insertln (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/delscreen.3xcurses b/usr/src/man/man3xcurses/delscreen.3xcurses
index ebe2e4cc4f..dee79f3734 100644
--- a/usr/src/man/man3xcurses/delscreen.3xcurses
+++ b/usr/src/man/man3xcurses/delscreen.3xcurses
@@ -46,7 +46,7 @@ None.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -64,5 +64,9 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBendwin\fR(3XCURSES), \fBinitscr\fR(3XCURSES), \fBlibcurses\fR(3XCURSES),
-\fBnewterm\fR(3XCURSES), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR endwin (3XCURSES),
+.BR initscr (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR newterm (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/delwin.3xcurses b/usr/src/man/man3xcurses/delwin.3xcurses
index a8ebb58a97..8b694a573c 100644
--- a/usr/src/man/man3xcurses/delwin.3xcurses
+++ b/usr/src/man/man3xcurses/delwin.3xcurses
@@ -49,7 +49,7 @@ None.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -67,5 +67,8 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBderwin\fR(3XCURSES), \fBdupwin\fR(3XCURSES), \fBlibcurses\fR(3XCURSES),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR derwin (3XCURSES),
+.BR dupwin (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/derwin.3xcurses b/usr/src/man/man3xcurses/derwin.3xcurses
index ce2c4eb506..cadb6da6cc 100644
--- a/usr/src/man/man3xcurses/derwin.3xcurses
+++ b/usr/src/man/man3xcurses/derwin.3xcurses
@@ -125,7 +125,7 @@ None.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -143,5 +143,8 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBdoupdate\fR(3XCURSES), \fBis_linetouched\fR(3XCURSES),
-\fBlibcurses\fR(3XCURSES), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR doupdate (3XCURSES),
+.BR is_linetouched (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/doupdate.3xcurses b/usr/src/man/man3xcurses/doupdate.3xcurses
index 2e69a110bc..a482794282 100644
--- a/usr/src/man/man3xcurses/doupdate.3xcurses
+++ b/usr/src/man/man3xcurses/doupdate.3xcurses
@@ -81,7 +81,7 @@ None.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -99,6 +99,10 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBclearok\fR(3XCURSES), \fBcurses\fR(3XCURSES), \fBlibcurses\fR(3XCURSES),
-\fBprefresh\fR(3XCURSES), \fBredrawwin\fR(3XCURSES), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR clearok (3XCURSES),
+.BR curses (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR prefresh (3XCURSES),
+.BR redrawwin (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/dupwin.3xcurses b/usr/src/man/man3xcurses/dupwin.3xcurses
index accefc843b..5282a19669 100644
--- a/usr/src/man/man3xcurses/dupwin.3xcurses
+++ b/usr/src/man/man3xcurses/dupwin.3xcurses
@@ -46,7 +46,7 @@ None.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -64,5 +64,8 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBdelwin\fR(3XCURSES), \fBderwin\fR(3XCURSES), \fBlibcurses\fR(3XCURSES),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR delwin (3XCURSES),
+.BR derwin (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/echo.3xcurses b/usr/src/man/man3xcurses/echo.3xcurses
index 8610b5da62..8060d0bb91 100644
--- a/usr/src/man/man3xcurses/echo.3xcurses
+++ b/usr/src/man/man3xcurses/echo.3xcurses
@@ -45,7 +45,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -63,6 +63,10 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBgetch\fR(3XCURSES), \fBgetstr\fR(3XCURSES), \fBinitscr\fR(3XCURSES),
-\fBlibcurses\fR(3XCURSES), \fBscanw\fR(3XCURSES), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR getch (3XCURSES),
+.BR getstr (3XCURSES),
+.BR initscr (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR scanw (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/echo_wchar.3xcurses b/usr/src/man/man3xcurses/echo_wchar.3xcurses
index 06b1227565..f057e67f97 100644
--- a/usr/src/man/man3xcurses/echo_wchar.3xcurses
+++ b/usr/src/man/man3xcurses/echo_wchar.3xcurses
@@ -61,7 +61,7 @@ None.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -79,5 +79,9 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBadd_wch\fR(3XCURSES), \fBdoupdate\fR(3XCURSES), \fBechochar\fR(3XCURSES),
-\fBlibcurses\fR(3XCURSES), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR add_wch (3XCURSES),
+.BR doupdate (3XCURSES),
+.BR echochar (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/echochar.3xcurses b/usr/src/man/man3xcurses/echochar.3xcurses
index 2ccef3bf5f..72fd036248 100644
--- a/usr/src/man/man3xcurses/echochar.3xcurses
+++ b/usr/src/man/man3xcurses/echochar.3xcurses
@@ -61,7 +61,7 @@ None.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -79,5 +79,9 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBaddch\fR(3XCURSES), \fBdoupdate\fR(3XCURSES), \fBecho_wchar\fR(3XCURSES),
-\fBlibcurses\fR(3XCURSES), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR addch (3XCURSES),
+.BR doupdate (3XCURSES),
+.BR echo_wchar (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/endwin.3xcurses b/usr/src/man/man3xcurses/endwin.3xcurses
index b52379b41f..f87081ceb3 100644
--- a/usr/src/man/man3xcurses/endwin.3xcurses
+++ b/usr/src/man/man3xcurses/endwin.3xcurses
@@ -54,7 +54,7 @@ Non errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -72,5 +72,8 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBdoupdate\fR(3XCURSES), \fBlibcurses\fR(3XCURSES), \fBnewterm\fR(3XCURSES),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR doupdate (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR newterm (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/erasechar.3xcurses b/usr/src/man/man3xcurses/erasechar.3xcurses
index 968f2a77e1..f6afb785fc 100644
--- a/usr/src/man/man3xcurses/erasechar.3xcurses
+++ b/usr/src/man/man3xcurses/erasechar.3xcurses
@@ -73,7 +73,7 @@ On success, the \fBerasewchar()\fR and \fBkillwchar()\fR functions return
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -91,5 +91,9 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBgetch\fR(3XCURSES), \fBgetstr\fR(3XCURSES), \fBget_wch\fR(3XCURSES),
-\fBlibcurses\fR(3XCURSES), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR get_wch (3XCURSES),
+.BR getch (3XCURSES),
+.BR getstr (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/filter.3xcurses b/usr/src/man/man3xcurses/filter.3xcurses
index a863145000..9fce41b30a 100644
--- a/usr/src/man/man3xcurses/filter.3xcurses
+++ b/usr/src/man/man3xcurses/filter.3xcurses
@@ -56,7 +56,7 @@ None.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -74,5 +74,8 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBinitscr\fR(3XCURSES), \fBlibcurses\fR(3XCURSES), \fBnewterm\fR(3XCURSES),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR initscr (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR newterm (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/flushinp.3xcurses b/usr/src/man/man3xcurses/flushinp.3xcurses
index e1e76d9ee4..fbc2447880 100644
--- a/usr/src/man/man3xcurses/flushinp.3xcurses
+++ b/usr/src/man/man3xcurses/flushinp.3xcurses
@@ -35,7 +35,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -53,4 +53,6 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBlibcurses\fR(3XCURSES), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR libcurses (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/get_wch.3xcurses b/usr/src/man/man3xcurses/get_wch.3xcurses
index 11dad5aff8..74a0e504ff 100644
--- a/usr/src/man/man3xcurses/get_wch.3xcurses
+++ b/usr/src/man/man3xcurses/get_wch.3xcurses
@@ -133,7 +133,7 @@ None.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -151,7 +151,14 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcbreak\fR(3XCURSES), \fBecho\fR(3XCURSES), \fBhalfdelay\fR(3XCURSES),
-\fBkeypad\fR(3XCURSES), \fBlibcurses\fR(3XCURSES), \fBnodelay\fR(3XCURSES),
-\fBnotimeout\fR(3XCURSES), \fBraw\fR(3XCURSES), \fBtimeout\fR(3XCURSES),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR cbreak (3XCURSES),
+.BR echo (3XCURSES),
+.BR halfdelay (3XCURSES),
+.BR keypad (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR nodelay (3XCURSES),
+.BR notimeout (3XCURSES),
+.BR raw (3XCURSES),
+.BR timeout (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/getbegyx.3xcurses b/usr/src/man/man3xcurses/getbegyx.3xcurses
index 7ffb63e46a..f3fce28124 100644
--- a/usr/src/man/man3xcurses/getbegyx.3xcurses
+++ b/usr/src/man/man3xcurses/getbegyx.3xcurses
@@ -94,7 +94,7 @@ None.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -112,4 +112,6 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBlibcurses\fR(3XCURSES), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR libcurses (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/getcchar.3xcurses b/usr/src/man/man3xcurses/getcchar.3xcurses
index 0fe60d7567..0a78b3e59e 100644
--- a/usr/src/man/man3xcurses/getcchar.3xcurses
+++ b/usr/src/man/man3xcurses/getcchar.3xcurses
@@ -98,7 +98,7 @@ None
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -116,6 +116,9 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBattroff\fR(3XCURSES), \fBcan_change_color\fR(3XCURSES),
-\fBlibcurses\fR(3XCURSES), \fBsetcchar\fR(3XCURSES), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR attroff (3XCURSES),
+.BR can_change_color (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR setcchar (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/getch.3xcurses b/usr/src/man/man3xcurses/getch.3xcurses
index 7dc672464a..9cd37a8505 100644
--- a/usr/src/man/man3xcurses/getch.3xcurses
+++ b/usr/src/man/man3xcurses/getch.3xcurses
@@ -244,7 +244,7 @@ produce undesirable results.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -262,7 +262,14 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcbreak\fR(3XCURSES), \fBecho\fR(3XCURSES), \fBhalfdelay\fR(3XCURSES),
-\fBkeypad\fR(3XCURSES), \fBlibcurses\fR(3XCURSES), \fBnodelay\fR(3XCURSES),
-\fBnotimeout\fR(3XCURSES), \fBraw\fR(3XCURSES), \fBtimeout\fR(3XCURSES),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR cbreak (3XCURSES),
+.BR echo (3XCURSES),
+.BR halfdelay (3XCURSES),
+.BR keypad (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR nodelay (3XCURSES),
+.BR notimeout (3XCURSES),
+.BR raw (3XCURSES),
+.BR timeout (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/getn_wstr.3xcurses b/usr/src/man/man3xcurses/getn_wstr.3xcurses
index 162706d720..e2b72a4572 100644
--- a/usr/src/man/man3xcurses/getn_wstr.3xcurses
+++ b/usr/src/man/man3xcurses/getn_wstr.3xcurses
@@ -133,7 +133,7 @@ None.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -151,5 +151,8 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBget_wch\fR(3XCURSES), \fBgetnstr\fR(3XCURSES), \fBlibcurses\fR(3XCURSES),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR get_wch (3XCURSES),
+.BR getnstr (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/getnstr.3xcurses b/usr/src/man/man3xcurses/getnstr.3xcurses
index 2ae671e731..826608ed28 100644
--- a/usr/src/man/man3xcurses/getnstr.3xcurses
+++ b/usr/src/man/man3xcurses/getnstr.3xcurses
@@ -138,7 +138,7 @@ None.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -156,5 +156,7 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBgetch\fR(3XCURSES), \fBlibcurses\fR(3XCURSES), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR getch (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/getwin.3xcurses b/usr/src/man/man3xcurses/getwin.3xcurses
index e5670762bf..81c407275a 100644
--- a/usr/src/man/man3xcurses/getwin.3xcurses
+++ b/usr/src/man/man3xcurses/getwin.3xcurses
@@ -70,7 +70,7 @@ None.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -88,5 +88,7 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBlibcurses\fR(3XCURSES), \fBscr_dump\fR(3XCURSES), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR libcurses (3XCURSES),
+.BR scr_dump (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/halfdelay.3xcurses b/usr/src/man/man3xcurses/halfdelay.3xcurses
index b0778e5eb1..5ffb274664 100644
--- a/usr/src/man/man3xcurses/halfdelay.3xcurses
+++ b/usr/src/man/man3xcurses/halfdelay.3xcurses
@@ -51,7 +51,7 @@ None.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -69,5 +69,7 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcbreak\fR(3XCURSES), \fBlibcurses\fR(3XCURSES), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR cbreak (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/has_ic.3xcurses b/usr/src/man/man3xcurses/has_ic.3xcurses
index 7cb1881bcd..3f4066c766 100644
--- a/usr/src/man/man3xcurses/has_ic.3xcurses
+++ b/usr/src/man/man3xcurses/has_ic.3xcurses
@@ -49,7 +49,7 @@ None.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -67,4 +67,6 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBlibcurses\fR(3XCURSES), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR libcurses (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/hline.3xcurses b/usr/src/man/man3xcurses/hline.3xcurses
index 9f5f591743..482fdaa547 100644
--- a/usr/src/man/man3xcurses/hline.3xcurses
+++ b/usr/src/man/man3xcurses/hline.3xcurses
@@ -135,7 +135,7 @@ None
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -153,5 +153,9 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBborder\fR(3XCURSES), \fBborder_set\fR(3XCURSES), \fBhline_set\fR(3XCURSES),
-\fBlibcurses\fR(3XCURSES), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR border (3XCURSES),
+.BR border_set (3XCURSES),
+.BR hline_set (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/hline_set.3xcurses b/usr/src/man/man3xcurses/hline_set.3xcurses
index 58c88e3d01..1fba39f20e 100644
--- a/usr/src/man/man3xcurses/hline_set.3xcurses
+++ b/usr/src/man/man3xcurses/hline_set.3xcurses
@@ -135,7 +135,7 @@ None.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -153,5 +153,9 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBborder\fR(3XCURSES), \fBborder_set\fR(3XCURSES), \fBhline\fR(3XCURSES),
-\fBlibcurses\fR(3XCURSES), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR border (3XCURSES),
+.BR border_set (3XCURSES),
+.BR hline (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/idcok.3xcurses b/usr/src/man/man3xcurses/idcok.3xcurses
index 6e46929a8d..0a46ea6f6b 100644
--- a/usr/src/man/man3xcurses/idcok.3xcurses
+++ b/usr/src/man/man3xcurses/idcok.3xcurses
@@ -57,7 +57,7 @@ None.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -75,5 +75,8 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBclearok\fR(3XCURSES), \fBdoupdate\fR(3XCURSES), \fBlibcurses\fR(3XCURSES),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR clearok (3XCURSES),
+.BR doupdate (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/immedok.3xcurses b/usr/src/man/man3xcurses/immedok.3xcurses
index b0e5319963..235889dc53 100644
--- a/usr/src/man/man3xcurses/immedok.3xcurses
+++ b/usr/src/man/man3xcurses/immedok.3xcurses
@@ -57,7 +57,7 @@ None.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -75,6 +75,11 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBaddch\fR(3XCURSES), \fBclearok\fR(3XCURSES), \fBclrtobot\fR(3XCURSES),
-\fBdoupdate\fR(3XCURSES), \fBlibcurses\fR(3XCURSES), \fBscrl\fR(3XCURSES),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR addch (3XCURSES),
+.BR clearok (3XCURSES),
+.BR clrtobot (3XCURSES),
+.BR doupdate (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR scrl (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/in_wch.3xcurses b/usr/src/man/man3xcurses/in_wch.3xcurses
index 70d26f8753..8f85fd3649 100644
--- a/usr/src/man/man3xcurses/in_wch.3xcurses
+++ b/usr/src/man/man3xcurses/in_wch.3xcurses
@@ -97,7 +97,7 @@ None.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -115,5 +115,8 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBadd_wch\fR(3XCURSES), \fBinch\fR(3XCURSES), \fBlibcurses\fR(3XCURSES),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR add_wch (3XCURSES),
+.BR inch (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/in_wchnstr.3xcurses b/usr/src/man/man3xcurses/in_wchnstr.3xcurses
index 91e77de309..1b97511d72 100644
--- a/usr/src/man/man3xcurses/in_wchnstr.3xcurses
+++ b/usr/src/man/man3xcurses/in_wchnstr.3xcurses
@@ -137,7 +137,7 @@ None.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -155,5 +155,7 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBin_wch\fR(3XCURSES), \fBlibcurses\fR(3XCURSES), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR in_wch (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/inch.3xcurses b/usr/src/man/man3xcurses/inch.3xcurses
index 3d7ccd318e..a1c1ff56a7 100644
--- a/usr/src/man/man3xcurses/inch.3xcurses
+++ b/usr/src/man/man3xcurses/inch.3xcurses
@@ -89,7 +89,7 @@ None.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -107,5 +107,8 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBaddch\fR(3XCURSES), \fBattroff\fR(3XCURSES), \fBlibcurses\fR(3XCURSES),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR addch (3XCURSES),
+.BR attroff (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/inchnstr.3xcurses b/usr/src/man/man3xcurses/inchnstr.3xcurses
index 3597f21370..36c64ffc02 100644
--- a/usr/src/man/man3xcurses/inchnstr.3xcurses
+++ b/usr/src/man/man3xcurses/inchnstr.3xcurses
@@ -143,7 +143,7 @@ None.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -161,5 +161,8 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBinch\fR(3XCURSES), \fBinnstr\fR(3XCURSES), \fBlibcurses\fR(3XCURSES),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR inch (3XCURSES),
+.BR innstr (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/initscr.3xcurses b/usr/src/man/man3xcurses/initscr.3xcurses
index cb24583dec..a50d032da2 100644
--- a/usr/src/man/man3xcurses/initscr.3xcurses
+++ b/usr/src/man/man3xcurses/initscr.3xcurses
@@ -86,7 +86,7 @@ None.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -104,7 +104,13 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBdel_curterm\fR(3XCURSES), \fBdelscreen\fR(3XCURSES),
-\fBdoupdate\fR(3XCURSES), \fBendwin\fR(3XCURSES), \fBfilter\fR(3XCURSES),
-\fBlibcurses\fR(3XCURSES), \fBslk_attroff\fR(3XCURSES),
-\fBuse_env\fR(3XCURSES), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR del_curterm (3XCURSES),
+.BR delscreen (3XCURSES),
+.BR doupdate (3XCURSES),
+.BR endwin (3XCURSES),
+.BR filter (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR slk_attroff (3XCURSES),
+.BR use_env (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/innstr.3xcurses b/usr/src/man/man3xcurses/innstr.3xcurses
index 0c890d03e9..d2011ef320 100644
--- a/usr/src/man/man3xcurses/innstr.3xcurses
+++ b/usr/src/man/man3xcurses/innstr.3xcurses
@@ -157,7 +157,7 @@ All functions except \fBwinnstr()\fR may be macros.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -175,5 +175,8 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBinch\fR(3XCURSES), \fBinchstr\fR(3XCURSES), \fBlibcurses\fR(3XCURSES),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR inch (3XCURSES),
+.BR inchstr (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/innwstr.3xcurses b/usr/src/man/man3xcurses/innwstr.3xcurses
index 7c89d2840b..f62a4c6213 100644
--- a/usr/src/man/man3xcurses/innwstr.3xcurses
+++ b/usr/src/man/man3xcurses/innwstr.3xcurses
@@ -149,7 +149,7 @@ None.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -167,5 +167,8 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBin_wch\fR(3XCURSES), \fBin_wchnstr\fR(3XCURSES), \fBlibcurses\fR(3XCURSES),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR in_wch (3XCURSES),
+.BR in_wchnstr (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/ins_nwstr.3xcurses b/usr/src/man/man3xcurses/ins_nwstr.3xcurses
index 10c3c8469a..b2fbc7c15b 100644
--- a/usr/src/man/man3xcurses/ins_nwstr.3xcurses
+++ b/usr/src/man/man3xcurses/ins_nwstr.3xcurses
@@ -145,7 +145,7 @@ None.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -163,6 +163,11 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBadd_wchnstr\fR(3XCURSES), \fBaddnwstr\fR(3XCURSES),
-\fBclrtoeol\fR(3XCURSES), \fBins_wch\fR(3XCURSES), \fBinsnstr\fR(3XCURSES),
-\fBlibcurses\fR(3XCURSES), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR add_wchnstr (3XCURSES),
+.BR addnwstr (3XCURSES),
+.BR clrtoeol (3XCURSES),
+.BR ins_wch (3XCURSES),
+.BR insnstr (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/ins_wch.3xcurses b/usr/src/man/man3xcurses/ins_wch.3xcurses
index 3dc6372c38..693f4915e8 100644
--- a/usr/src/man/man3xcurses/ins_wch.3xcurses
+++ b/usr/src/man/man3xcurses/ins_wch.3xcurses
@@ -100,7 +100,7 @@ None.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -118,5 +118,8 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBadd_wch\fR(3XCURSES), \fBins_nwstr\fR(3XCURSES), \fBlibcurses\fR(3XCURSES),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR add_wch (3XCURSES),
+.BR ins_nwstr (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/insch.3xcurses b/usr/src/man/man3xcurses/insch.3xcurses
index 33db022ec2..7db0723d7c 100644
--- a/usr/src/man/man3xcurses/insch.3xcurses
+++ b/usr/src/man/man3xcurses/insch.3xcurses
@@ -100,7 +100,7 @@ using only constants with the \fBA_\fR prefix.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -118,5 +118,7 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBins_wch\fR(3XCURSES), \fBlibcurses\fR(3XCURSES), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR ins_wch (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/insdelln.3xcurses b/usr/src/man/man3xcurses/insdelln.3xcurses
index db8451acaa..6633ad7b23 100644
--- a/usr/src/man/man3xcurses/insdelln.3xcurses
+++ b/usr/src/man/man3xcurses/insdelln.3xcurses
@@ -64,7 +64,7 @@ None.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -82,5 +82,8 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBdeleteln\fR(3XCURSES), \fBinsertln\fR(3XCURSES), \fBlibcurses\fR(3XCURSES),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR deleteln (3XCURSES),
+.BR insertln (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/insertln.3xcurses b/usr/src/man/man3xcurses/insertln.3xcurses
index 8f0eec4425..2632cf09b0 100644
--- a/usr/src/man/man3xcurses/insertln.3xcurses
+++ b/usr/src/man/man3xcurses/insertln.3xcurses
@@ -52,7 +52,7 @@ None.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -70,5 +70,9 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBbkgdset\fR(3XCURSES), \fBdeleteln\fR(3XCURSES), \fBinsdelln\fR(3XCURSES),
-\fBlibcurses\fR(3XCURSES), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR bkgdset (3XCURSES),
+.BR deleteln (3XCURSES),
+.BR insdelln (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/insnstr.3xcurses b/usr/src/man/man3xcurses/insnstr.3xcurses
index f9f9c84b24..1f4ac0a48b 100644
--- a/usr/src/man/man3xcurses/insnstr.3xcurses
+++ b/usr/src/man/man3xcurses/insnstr.3xcurses
@@ -144,7 +144,7 @@ None.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -162,6 +162,11 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBaddchstr\fR(3XCURSES), \fBaddstr\fR(3XCURSES), \fBclrtoeol\fR(3XCURSES),
-\fBins_nwstr\fR(3XCURSES), \fBinsch\fR(3XCURSES), \fBlibcurses\fR(3XCURSES),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR addchstr (3XCURSES),
+.BR addstr (3XCURSES),
+.BR clrtoeol (3XCURSES),
+.BR ins_nwstr (3XCURSES),
+.BR insch (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/intrflush.3xcurses b/usr/src/man/man3xcurses/intrflush.3xcurses
index 12f163905c..f02af0ca54 100644
--- a/usr/src/man/man3xcurses/intrflush.3xcurses
+++ b/usr/src/man/man3xcurses/intrflush.3xcurses
@@ -61,7 +61,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -79,5 +79,8 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBflushinp\fR(3XCURSES), \fBlibcurses\fR(3XCURSES), \fBqiflush\fR(3XCURSES),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR flushinp (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR qiflush (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/is_linetouched.3xcurses b/usr/src/man/man3xcurses/is_linetouched.3xcurses
index 1717f83569..b5a813941e 100644
--- a/usr/src/man/man3xcurses/is_linetouched.3xcurses
+++ b/usr/src/man/man3xcurses/is_linetouched.3xcurses
@@ -154,7 +154,7 @@ None.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -172,5 +172,7 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBdoupdate\fR(3XCURSES), \fBlibcurses\fR(3XCURSES), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR doupdate (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/keyname.3xcurses b/usr/src/man/man3xcurses/keyname.3xcurses
index c5452cfdcd..d52c6152bf 100644
--- a/usr/src/man/man3xcurses/keyname.3xcurses
+++ b/usr/src/man/man3xcurses/keyname.3xcurses
@@ -88,7 +88,7 @@ None.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -106,5 +106,7 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBlibcurses\fR(3XCURSES), \fBmeta\fR(3XCURSES), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR libcurses (3XCURSES),
+.BR meta (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/keypad.3xcurses b/usr/src/man/man3xcurses/keypad.3xcurses
index 3caf1b0e39..258170cfb1 100644
--- a/usr/src/man/man3xcurses/keypad.3xcurses
+++ b/usr/src/man/man3xcurses/keypad.3xcurses
@@ -228,7 +228,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -246,7 +246,13 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBaddch\fR(3XCURSES), \fBendwin\fR(3XCURSES), \fBgetch\fR(3XCURSES),
-\fBinitscr\fR(3XCURSES), \fBlibcurses\fR(3XCURSES), \fBnewterm\fR(3XCURSES),
-\fBnocbreak\fR(3XCURSES), \fBnoraw\fR(3XCURSES), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR addch (3XCURSES),
+.BR endwin (3XCURSES),
+.BR getch (3XCURSES),
+.BR initscr (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR newterm (3XCURSES),
+.BR nocbreak (3XCURSES),
+.BR noraw (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/libcurses.3xcurses b/usr/src/man/man3xcurses/libcurses.3xcurses
index c80df46a10..edf2f0c2c5 100644
--- a/usr/src/man/man3xcurses/libcurses.3xcurses
+++ b/usr/src/man/man3xcurses/libcurses.3xcurses
@@ -278,7 +278,7 @@ is provided for backwards compatibility and will be removed in a future release
of the operating system. There is no plan to fix any of its defects.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -295,5 +295,8 @@ MT-Level Unsafe
.SH SEE ALSO
.LP
-\fBIntro\fR(3), \fBcurses\fR(3XCURSES), \fBlibcurses\fR(3LIB),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR Intro (3),
+.BR libcurses (3LIB),
+.BR curses (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/longname.3xcurses b/usr/src/man/man3xcurses/longname.3xcurses
index 81a3bcfd95..830783f987 100644
--- a/usr/src/man/man3xcurses/longname.3xcurses
+++ b/usr/src/man/man3xcurses/longname.3xcurses
@@ -40,7 +40,7 @@ None.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -58,5 +58,9 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBinitscr\fR(3XCURSES), \fBlibcurses\fR(3XCURSES), \fBnewterm\fR(3XCURSES),
-\fBsetupterm\fR(3XCURSES), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR initscr (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR newterm (3XCURSES),
+.BR setupterm (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/meta.3xcurses b/usr/src/man/man3xcurses/meta.3xcurses
index 60d6c0923b..52e80eeac7 100644
--- a/usr/src/man/man3xcurses/meta.3xcurses
+++ b/usr/src/man/man3xcurses/meta.3xcurses
@@ -71,7 +71,7 @@ None.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -89,5 +89,7 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBgetch\fR(3XCURSES), \fBlibcurses\fR(3XCURSES), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR getch (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/move.3xcurses b/usr/src/man/man3xcurses/move.3xcurses
index 246bc258f0..ab9f8fa2c7 100644
--- a/usr/src/man/man3xcurses/move.3xcurses
+++ b/usr/src/man/man3xcurses/move.3xcurses
@@ -72,7 +72,7 @@ None.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -90,5 +90,7 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBdoupdate\fR(3XCURSES), \fBlibcurses\fR(3XCURSES), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR doupdate (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/mvcur.3xcurses b/usr/src/man/man3xcurses/mvcur.3xcurses
index 0e4628345d..713d0c1209 100644
--- a/usr/src/man/man3xcurses/mvcur.3xcurses
+++ b/usr/src/man/man3xcurses/mvcur.3xcurses
@@ -82,7 +82,7 @@ None.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -100,4 +100,6 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBlibcurses\fR(3XCURSES), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR libcurses (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/mvderwin.3xcurses b/usr/src/man/man3xcurses/mvderwin.3xcurses
index 91436872b9..d3072482c2 100644
--- a/usr/src/man/man3xcurses/mvderwin.3xcurses
+++ b/usr/src/man/man3xcurses/mvderwin.3xcurses
@@ -72,7 +72,7 @@ None.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -90,5 +90,8 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBdelwin\fR(3XCURSES), \fBderwin\fR(3XCURSES), \fBlibcurses\fR(3XCURSES),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR delwin (3XCURSES),
+.BR derwin (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/mvprintw.3xcurses b/usr/src/man/man3xcurses/mvprintw.3xcurses
index 60658c079c..d9daf83bb9 100644
--- a/usr/src/man/man3xcurses/mvprintw.3xcurses
+++ b/usr/src/man/man3xcurses/mvprintw.3xcurses
@@ -91,7 +91,7 @@ return \fBERR\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -109,5 +109,8 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBaddnstr\fR(3XCURSES), \fBlibcurses\fR(3XCURSES), \fBprintf\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR printf (3C),
+.BR addnstr (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/mvscanw.3xcurses b/usr/src/man/man3xcurses/mvscanw.3xcurses
index 743509986e..2ee5dd9621 100644
--- a/usr/src/man/man3xcurses/mvscanw.3xcurses
+++ b/usr/src/man/man3xcurses/mvscanw.3xcurses
@@ -90,7 +90,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -108,5 +108,10 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBgetnstr\fR(3XCURSES), \fBlibcurses\fR(3XCURSES), \fBprintw\fR(3XCURSES),
-\fBscanf\fR(3C), \fBwcstombs\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR scanf (3C),
+.BR wcstombs (3C),
+.BR getnstr (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR printw (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/mvwin.3xcurses b/usr/src/man/man3xcurses/mvwin.3xcurses
index fa6f1777a7..6736aa226f 100644
--- a/usr/src/man/man3xcurses/mvwin.3xcurses
+++ b/usr/src/man/man3xcurses/mvwin.3xcurses
@@ -67,7 +67,7 @@ None.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -85,5 +85,7 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBderwin\fR(3XCURSES), \fBlibcurses\fR(3XCURSES), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR derwin (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/napms.3xcurses b/usr/src/man/man3xcurses/napms.3xcurses
index 52a2087267..7b3ebe0769 100644
--- a/usr/src/man/man3xcurses/napms.3xcurses
+++ b/usr/src/man/man3xcurses/napms.3xcurses
@@ -44,7 +44,7 @@ None.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -62,5 +62,7 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBdelay_output\fR(3XCURSES), \fBlibcurses\fR(3XCURSES), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR delay_output (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/newpad.3xcurses b/usr/src/man/man3xcurses/newpad.3xcurses
index 5c85bbca5e..a315d03493 100644
--- a/usr/src/man/man3xcurses/newpad.3xcurses
+++ b/usr/src/man/man3xcurses/newpad.3xcurses
@@ -189,7 +189,7 @@ On success, the \fBpnoutrefresh()\fR and \fBprefresh()\fR functions return
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -207,6 +207,10 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBclearok\fR(3XCURSES), \fBdoupdate\fR(3XCURSES),
-\fBis_linetouched\fR(3XCURSES), \fBlibcurses\fR(3XCURSES),
-\fBpechochar\fR(3XCURSES), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR clearok (3XCURSES),
+.BR doupdate (3XCURSES),
+.BR is_linetouched (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR pechochar (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/nl.3xcurses b/usr/src/man/man3xcurses/nl.3xcurses
index fd991e9bb7..d3bc2bd87a 100644
--- a/usr/src/man/man3xcurses/nl.3xcurses
+++ b/usr/src/man/man3xcurses/nl.3xcurses
@@ -47,7 +47,7 @@ None.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -65,4 +65,6 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBlibcurses\fR(3XCURSES), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR libcurses (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/nodelay.3xcurses b/usr/src/man/man3xcurses/nodelay.3xcurses
index 7f12ef0eb2..10932dc059 100644
--- a/usr/src/man/man3xcurses/nodelay.3xcurses
+++ b/usr/src/man/man3xcurses/nodelay.3xcurses
@@ -56,7 +56,7 @@ None.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -74,5 +74,9 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBgetch\fR(3XCURSES), \fBhalfdelay\fR(3XCURSES), \fBlibcurses\fR(3XCURSES),
-\fBnotimeout\fR(3XCURSES), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR getch (3XCURSES),
+.BR halfdelay (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR notimeout (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/noqiflush.3xcurses b/usr/src/man/man3xcurses/noqiflush.3xcurses
index 0838471ef9..aa61e6a273 100644
--- a/usr/src/man/man3xcurses/noqiflush.3xcurses
+++ b/usr/src/man/man3xcurses/noqiflush.3xcurses
@@ -41,7 +41,7 @@ None
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -59,5 +59,8 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBflushinp\fR(3XCURSES), \fBintrflush\fR(3XCURSES), \fBlibcurses\fR(3XCURSES),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR flushinp (3XCURSES),
+.BR intrflush (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/notimeout.3xcurses b/usr/src/man/man3xcurses/notimeout.3xcurses
index 56191c578e..451c56c246 100644
--- a/usr/src/man/man3xcurses/notimeout.3xcurses
+++ b/usr/src/man/man3xcurses/notimeout.3xcurses
@@ -97,7 +97,7 @@ None.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -115,5 +115,9 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBgetch\fR(3XCURSES), \fBhalfdelay\fR(3XCURSES), \fBlibcurses\fR(3XCURSES),
-\fBnodelay\fR(3XCURSES), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR getch (3XCURSES),
+.BR halfdelay (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR nodelay (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/overlay.3xcurses b/usr/src/man/man3xcurses/overlay.3xcurses
index c6df9ff055..b034f734d9 100644
--- a/usr/src/man/man3xcurses/overlay.3xcurses
+++ b/usr/src/man/man3xcurses/overlay.3xcurses
@@ -211,7 +211,7 @@ char *str;
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -229,5 +229,9 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBcopywin\fR(3XCURSES), \fBlibcurses\fR(3XCURSES), \fBwadd_wch\fR(3XCURSES),
-\fBwin_wch\fR(3XCURSES), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR copywin (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR wadd_wch (3XCURSES),
+.BR win_wch (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/pechochar.3xcurses b/usr/src/man/man3xcurses/pechochar.3xcurses
index 89e5f4364a..85c3d4bd78 100644
--- a/usr/src/man/man3xcurses/pechochar.3xcurses
+++ b/usr/src/man/man3xcurses/pechochar.3xcurses
@@ -71,7 +71,7 @@ None.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -89,5 +89,9 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBadd_wch\fR(3XCURSES), \fBaddch\fR(3XCURSES), \fBlibcurses\fR(3XCURSES),
-\fBnewpad\fR(3XCURSES), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR add_wch (3XCURSES),
+.BR addch (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR newpad (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/putp.3xcurses b/usr/src/man/man3xcurses/putp.3xcurses
index 25b8033ef4..9412864702 100644
--- a/usr/src/man/man3xcurses/putp.3xcurses
+++ b/usr/src/man/man3xcurses/putp.3xcurses
@@ -91,7 +91,7 @@ The output of \fBputp()\fR goes to \fBstdout\fR, not to the file descriptor,
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -109,6 +109,11 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBlibcurses\fR(3XCURSES), \fBputchar\fR(3C), \fBsetupterm\fR(3XCURSES),
-\fBtgetent\fR(3XCURSES), \fBtigetflag\fR(3XCURSES), \fBterminfo\fR(4),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR putchar (3C),
+.BR libcurses (3XCURSES),
+.BR setupterm (3XCURSES),
+.BR tgetent (3XCURSES),
+.BR tigetflag (3XCURSES),
+.BR terminfo (5),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/redrawwin.3xcurses b/usr/src/man/man3xcurses/redrawwin.3xcurses
index 38abb33de1..3c6039179e 100644
--- a/usr/src/man/man3xcurses/redrawwin.3xcurses
+++ b/usr/src/man/man3xcurses/redrawwin.3xcurses
@@ -82,7 +82,7 @@ None.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -100,5 +100,7 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBdoupdate\fR(3XCURSES), \fBlibcurses\fR(3XCURSES), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR doupdate (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/resetty.3xcurses b/usr/src/man/man3xcurses/resetty.3xcurses
index 35c34a4f89..5c88015607 100644
--- a/usr/src/man/man3xcurses/resetty.3xcurses
+++ b/usr/src/man/man3xcurses/resetty.3xcurses
@@ -42,7 +42,7 @@ None.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -60,4 +60,6 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBlibcurses\fR(3XCURSES), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR libcurses (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/ripoffline.3xcurses b/usr/src/man/man3xcurses/ripoffline.3xcurses
index 18ff536f27..f6a1969f7d 100644
--- a/usr/src/man/man3xcurses/ripoffline.3xcurses
+++ b/usr/src/man/man3xcurses/ripoffline.3xcurses
@@ -81,7 +81,7 @@ None.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -99,5 +99,9 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBdoupdate\fR(3XCURSES), \fBinitscr\fR(3XCURSES), \fBlibcurses\fR(3XCURSES),
-\fBslk_attroff\fR(3XCURSES), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR doupdate (3XCURSES),
+.BR initscr (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR slk_attroff (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/scr_dump.3xcurses b/usr/src/man/man3xcurses/scr_dump.3xcurses
index 861a69baea..278bbbf0ba 100644
--- a/usr/src/man/man3xcurses/scr_dump.3xcurses
+++ b/usr/src/man/man3xcurses/scr_dump.3xcurses
@@ -83,7 +83,7 @@ None.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -101,6 +101,10 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBdelscreen\fR(3XCURSES), \fBdoupdate\fR(3XCURSES), \fBendwin\fR(3XCURSES),
-\fBgetwin\fR(3XCURSES), \fBlibcurses\fR(3XCURSES), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR delscreen (3XCURSES),
+.BR doupdate (3XCURSES),
+.BR endwin (3XCURSES),
+.BR getwin (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/scrl.3xcurses b/usr/src/man/man3xcurses/scrl.3xcurses
index 2ca4f6ba5a..1aa2c6a960 100644
--- a/usr/src/man/man3xcurses/scrl.3xcurses
+++ b/usr/src/man/man3xcurses/scrl.3xcurses
@@ -73,7 +73,7 @@ None.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -91,5 +91,7 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBclearok\fR(3XCURSES), \fBlibcurses\fR(3XCURSES), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR clearok (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/set_term.3xcurses b/usr/src/man/man3xcurses/set_term.3xcurses
index 096390537f..a75517201c 100644
--- a/usr/src/man/man3xcurses/set_term.3xcurses
+++ b/usr/src/man/man3xcurses/set_term.3xcurses
@@ -47,7 +47,7 @@ None.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -65,4 +65,6 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBlibcurses\fR(3XCURSES), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR libcurses (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/setcchar.3xcurses b/usr/src/man/man3xcurses/setcchar.3xcurses
index 831702c9b1..73880d4235 100644
--- a/usr/src/man/man3xcurses/setcchar.3xcurses
+++ b/usr/src/man/man3xcurses/setcchar.3xcurses
@@ -86,7 +86,7 @@ None.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -104,6 +104,9 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBattroff\fR(3XCURSES), \fBcan_change_color\fR(3XCURSES),
-\fBgetcchar\fR(3XCURSES), \fBlibcurses\fR(3XCURSES), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR attroff (3XCURSES),
+.BR can_change_color (3XCURSES),
+.BR getcchar (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/slk_attroff.3xcurses b/usr/src/man/man3xcurses/slk_attroff.3xcurses
index deb0f3d30d..6fd242d91e 100644
--- a/usr/src/man/man3xcurses/slk_attroff.3xcurses
+++ b/usr/src/man/man3xcurses/slk_attroff.3xcurses
@@ -287,7 +287,7 @@ is likely to follow soon.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -305,6 +305,13 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBattr_get\fR(3XCURSES), \fBattroff\fR(3XCURSES), \fBdelscreen\fR(3XCURSES),
-\fBlibcurses\fR(3XCURSES), \fBmbstowcs\fR(3C), \fBripoffline\fR(3XCURSES),
-\fBwcswidth\fR(3C), \fBwcwidth\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR mbstowcs (3C),
+.BR wcswidth (3C),
+.BR wcwidth (3C),
+.BR attr_get (3XCURSES),
+.BR attroff (3XCURSES),
+.BR delscreen (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR ripoffline (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/standend.3xcurses b/usr/src/man/man3xcurses/standend.3xcurses
index 876befd196..67e36dfdf0 100644
--- a/usr/src/man/man3xcurses/standend.3xcurses
+++ b/usr/src/man/man3xcurses/standend.3xcurses
@@ -64,7 +64,7 @@ None.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -82,5 +82,8 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBattr_get\fR(3XCURSES), \fBattroff\fR(3XCURSES), \fBlibcurses\fR(3XCURSES),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR attr_get (3XCURSES),
+.BR attroff (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/stdscr.3xcurses b/usr/src/man/man3xcurses/stdscr.3xcurses
index 44999f39e4..3da3ff2409 100644
--- a/usr/src/man/man3xcurses/stdscr.3xcurses
+++ b/usr/src/man/man3xcurses/stdscr.3xcurses
@@ -28,7 +28,7 @@ functions that to not specify a window using an argument of type \fBWINDOW
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -46,5 +46,7 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBderwin\fR(3XCURSES), \fBlibcurses\fR(3XCURSES), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR derwin (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/syncok.3xcurses b/usr/src/man/man3xcurses/syncok.3xcurses
index 0a1519f0d0..5c3c8efe2c 100644
--- a/usr/src/man/man3xcurses/syncok.3xcurses
+++ b/usr/src/man/man3xcurses/syncok.3xcurses
@@ -88,7 +88,7 @@ None.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -106,6 +106,9 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBderwin\fR(3XCURSES), \fBdoupdate\fR(3XCURSES),
-\fBis_linetouched\fR(3XCURSES), \fBlibcurses\fR(3XCURSES), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR derwin (3XCURSES),
+.BR doupdate (3XCURSES),
+.BR is_linetouched (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/termattrs.3xcurses b/usr/src/man/man3xcurses/termattrs.3xcurses
index 16795f2565..15dbddfc3b 100644
--- a/usr/src/man/man3xcurses/termattrs.3xcurses
+++ b/usr/src/man/man3xcurses/termattrs.3xcurses
@@ -49,7 +49,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -67,5 +67,8 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBattr_get\fR(3XCURSES), \fBattroff\fR(3XCURSES), \fBlibcurses\fR(3XCURSES),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR attr_get (3XCURSES),
+.BR attroff (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/termname.3xcurses b/usr/src/man/man3xcurses/termname.3xcurses
index 8858587a4e..f857de9562 100644
--- a/usr/src/man/man3xcurses/termname.3xcurses
+++ b/usr/src/man/man3xcurses/termname.3xcurses
@@ -35,7 +35,7 @@ None.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -53,5 +53,7 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBdel_curterm\fR(3XCURSES), \fBlibcurses\fR(3XCURSES), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR del_curterm (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/tgetent.3xcurses b/usr/src/man/man3xcurses/tgetent.3xcurses
index 8e5c1136d8..5fc7147198 100644
--- a/usr/src/man/man3xcurses/tgetent.3xcurses
+++ b/usr/src/man/man3xcurses/tgetent.3xcurses
@@ -156,7 +156,7 @@ returned by \fBtgetstr()\fR and \fBtgoto()\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -174,5 +174,9 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBlibcurses\fR(3XCURSES), \fBputp\fR(3XCURSES), \fBsetupterm\fR(3XCURSES),
-\fBtigetflag\fR(3XCURSES), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR libcurses (3XCURSES),
+.BR putp (3XCURSES),
+.BR setupterm (3XCURSES),
+.BR tigetflag (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/tigetflag.3xcurses b/usr/src/man/man3xcurses/tigetflag.3xcurses
index d687a53ff2..b5ef5e2572 100644
--- a/usr/src/man/man3xcurses/tigetflag.3xcurses
+++ b/usr/src/man/man3xcurses/tigetflag.3xcurses
@@ -112,7 +112,7 @@ None.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -130,5 +130,8 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBlibcurses\fR(3XCURSES), \fBtgetent\fR(3XCURSES), \fBterminfo\fR(4),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR libcurses (3XCURSES),
+.BR tgetent (3XCURSES),
+.BR terminfo (5),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/typeahead.3xcurses b/usr/src/man/man3xcurses/typeahead.3xcurses
index d63c54a718..775ab4b61c 100644
--- a/usr/src/man/man3xcurses/typeahead.3xcurses
+++ b/usr/src/man/man3xcurses/typeahead.3xcurses
@@ -58,7 +58,7 @@ None.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -76,5 +76,9 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBdoupdate\fR(3XCURSES), \fBgetch\fR(3XCURSES), \fBinitscr\fR(3XCURSES),
-\fBlibcurses\fR(3XCURSES), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR doupdate (3XCURSES),
+.BR getch (3XCURSES),
+.BR initscr (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/unctrl.3xcurses b/usr/src/man/man3xcurses/unctrl.3xcurses
index 7c381a0602..a7570717ea 100644
--- a/usr/src/man/man3xcurses/unctrl.3xcurses
+++ b/usr/src/man/man3xcurses/unctrl.3xcurses
@@ -48,7 +48,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -66,5 +66,9 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBaddch\fR(3XCURSES), \fBaddstr\fR(3XCURSES), \fBlibcurses\fR(3XCURSES),
-\fBwunctrl\fR(3XCURSES), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR addch (3XCURSES),
+.BR addstr (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR wunctrl (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/ungetch.3xcurses b/usr/src/man/man3xcurses/ungetch.3xcurses
index 43c5a9f26d..8c1041f36c 100644
--- a/usr/src/man/man3xcurses/ungetch.3xcurses
+++ b/usr/src/man/man3xcurses/ungetch.3xcurses
@@ -65,7 +65,7 @@ None.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -83,5 +83,8 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBget_wch\fR(3XCURSES), \fBgetch\fR(3XCURSES), \fBlibcurses\fR(3XCURSES),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR get_wch (3XCURSES),
+.BR getch (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/use_env.3xcurses b/usr/src/man/man3xcurses/use_env.3xcurses
index 6d46857f92..43ce84937d 100644
--- a/usr/src/man/man3xcurses/use_env.3xcurses
+++ b/usr/src/man/man3xcurses/use_env.3xcurses
@@ -53,7 +53,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -71,5 +71,8 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBdel_curterm\fR(3XCURSES), \fBinitscr\fR(3XCURSES),
-\fBlibcurses\fR(3XCURSES), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR del_curterm (3XCURSES),
+.BR initscr (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/vidattr.3xcurses b/usr/src/man/man3xcurses/vidattr.3xcurses
index ece54d6403..611427a91c 100644
--- a/usr/src/man/man3xcurses/vidattr.3xcurses
+++ b/usr/src/man/man3xcurses/vidattr.3xcurses
@@ -133,7 +133,7 @@ displayed.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -151,6 +151,10 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBdoupdate\fR(3XCURSES), \fBis_linetouched\fR(3XCURSES),
-\fBlibcurses\fR(3XCURSES), \fBputchar\fR(3C), \fBtigetflag\fR(3XCURSES),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR putchar (3C),
+.BR doupdate (3XCURSES),
+.BR is_linetouched (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR tigetflag (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/vw_printw.3xcurses b/usr/src/man/man3xcurses/vw_printw.3xcurses
index 136d25bf62..477de5270a 100644
--- a/usr/src/man/man3xcurses/vw_printw.3xcurses
+++ b/usr/src/man/man3xcurses/vw_printw.3xcurses
@@ -73,7 +73,7 @@ work, due to the requirements to include <\fBvarargs.h\fR> and
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -91,5 +91,8 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBlibcurses\fR(3XCURSES), \fBmvprintw\fR(3XCURSES), \fBprintf\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR printf (3C),
+.BR libcurses (3XCURSES),
+.BR mvprintw (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/vw_scanw.3xcurses b/usr/src/man/man3xcurses/vw_scanw.3xcurses
index 7dd581cd7c..8c7f3adad7 100644
--- a/usr/src/man/man3xcurses/vw_scanw.3xcurses
+++ b/usr/src/man/man3xcurses/vw_scanw.3xcurses
@@ -73,7 +73,7 @@ which both contain definitions of \fBva_list\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -91,5 +91,8 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBlibcurses\fR(3XCURSES), \fBmvscanw\fR(3XCURSES), \fBscanf\fR(3C),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR scanf (3C),
+.BR libcurses (3XCURSES),
+.BR mvscanw (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/vwprintw.3xcurses b/usr/src/man/man3xcurses/vwprintw.3xcurses
index 6d476e3ad1..6cb2d49d40 100644
--- a/usr/src/man/man3xcurses/vwprintw.3xcurses
+++ b/usr/src/man/man3xcurses/vwprintw.3xcurses
@@ -74,7 +74,7 @@ the same file will not work, due to the requirements to include
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -92,5 +92,9 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBlibcurses\fR(3XCURSES), \fBmvprintw\fR(3XCURSES), \fBprintf\fR(3C),
-\fBvw_printw\fR(3XCURSES), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR printf (3C),
+.BR libcurses (3XCURSES),
+.BR mvprintw (3XCURSES),
+.BR vw_printw (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/vwscanw.3xcurses b/usr/src/man/man3xcurses/vwscanw.3xcurses
index 6af1a01b28..36cab965c1 100644
--- a/usr/src/man/man3xcurses/vwscanw.3xcurses
+++ b/usr/src/man/man3xcurses/vwscanw.3xcurses
@@ -74,7 +74,7 @@ the same file will not work, due to the requirements to include
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -92,5 +92,9 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBlibcurses\fR(3XCURSES), \fBmvscanw\fR(3XCURSES), \fBscanf\fR(3C),
-\fBvw_scanw\fR(3XCURSES), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR scanf (3C),
+.BR libcurses (3XCURSES),
+.BR mvscanw (3XCURSES),
+.BR vw_scanw (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xcurses/wunctrl.3xcurses b/usr/src/man/man3xcurses/wunctrl.3xcurses
index 85cf67b8b0..143b46ef6c 100644
--- a/usr/src/man/man3xcurses/wunctrl.3xcurses
+++ b/usr/src/man/man3xcurses/wunctrl.3xcurses
@@ -61,7 +61,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -79,5 +79,8 @@ MT-Level Unsafe
.SH SEE ALSO
.sp
.LP
-\fBkeyname\fR(3XCURSES), \fBlibcurses\fR(3XCURSES), \fBunctrl\fR(3XCURSES),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR keyname (3XCURSES),
+.BR libcurses (3XCURSES),
+.BR unctrl (3XCURSES),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xnet/accept.3xnet b/usr/src/man/man3xnet/accept.3xnet
index a090a3b514..a9fb4f19e3 100644
--- a/usr/src/man/man3xnet/accept.3xnet
+++ b/usr/src/man/man3xnet/accept.3xnet
@@ -276,7 +276,7 @@ been initialized.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -293,6 +293,10 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBsockaddr\fR(3SOCKET),
-\fBbind\fR(3XNET), \fBconnect\fR(3XNET), \fBlisten\fR(3XNET),
-\fBsocket\fR(3XNET), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR sockaddr (3SOCKET),
+.BR bind (3XNET),
+.BR connect (3XNET),
+.BR listen (3XNET),
+.BR socket (3XNET),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xnet/bind.3xnet b/usr/src/man/man3xnet/bind.3xnet
index 6e410b69bf..a6dbda1a82 100644
--- a/usr/src/man/man3xnet/bind.3xnet
+++ b/usr/src/man/man3xnet/bind.3xnet
@@ -328,7 +328,7 @@ There were insufficient STREAMS resources for the operation to complete.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -345,7 +345,11 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBsockaddr\fR(3SOCKET),
-\fBconnect\fR(3XNET), \fBgetsockname\fR(3XNET), \fBlisten\fR(3XNET),
-\fBsocket\fR(3XNET), \fBattributes\fR(5), \fBprivileges\fR(5),
-\fBstandards\fR(5)
+.BR sockaddr (3SOCKET),
+.BR connect (3XNET),
+.BR getsockname (3XNET),
+.BR listen (3XNET),
+.BR socket (3XNET),
+.BR attributes (7),
+.BR privileges (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xnet/connect.3xnet b/usr/src/man/man3xnet/connect.3xnet
index 10c2ccfe03..e0c233e5ba 100644
--- a/usr/src/man/man3xnet/connect.3xnet
+++ b/usr/src/man/man3xnet/connect.3xnet
@@ -422,7 +422,7 @@ The socket is listening and can not be connected.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -439,8 +439,15 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBsockaddr\fR(3SOCKET),
-\fBclose\fR(2), \fBpoll\fR(2), \fBaccept\fR(3XNET), \fBbind\fR(3XNET),
-\fBgetsockname\fR(3XNET), \fBselect\fR(3C), \fBsend\fR(3XNET),
-\fBshutdown\fR(3XNET), \fBsocket\fR(3XNET), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR close (2),
+.BR poll (2),
+.BR select (3C),
+.BR sockaddr (3SOCKET),
+.BR accept (3XNET),
+.BR bind (3XNET),
+.BR getsockname (3XNET),
+.BR send (3XNET),
+.BR shutdown (3XNET),
+.BR socket (3XNET),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xnet/endhostent.3xnet b/usr/src/man/man3xnet/endhostent.3xnet
index 50d8556f7f..143ba45b63 100644
--- a/usr/src/man/man3xnet/endhostent.3xnet
+++ b/usr/src/man/man3xnet/endhostent.3xnet
@@ -189,7 +189,7 @@ server to respond.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -207,5 +207,8 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBendservent\fR(3XNET), \fBhtonl\fR(3XNET), \fBinet_addr\fR(3XNET),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR endservent (3XNET),
+.BR htonl (3XNET),
+.BR inet_addr (3XNET),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xnet/endnetent.3xnet b/usr/src/man/man3xnet/endnetent.3xnet
index 0dd48d9bf1..2bcb94a2ac 100644
--- a/usr/src/man/man3xnet/endnetent.3xnet
+++ b/usr/src/man/man3xnet/endnetent.3xnet
@@ -127,7 +127,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -145,4 +145,5 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xnet/endprotoent.3xnet b/usr/src/man/man3xnet/endprotoent.3xnet
index ea9ad3634e..df00cdaabc 100644
--- a/usr/src/man/man3xnet/endprotoent.3xnet
+++ b/usr/src/man/man3xnet/endprotoent.3xnet
@@ -132,7 +132,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -150,4 +150,5 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xnet/endservent.3xnet b/usr/src/man/man3xnet/endservent.3xnet
index 960321ccb4..3671a313d0 100644
--- a/usr/src/man/man3xnet/endservent.3xnet
+++ b/usr/src/man/man3xnet/endservent.3xnet
@@ -140,7 +140,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -158,5 +158,9 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBendhostent\fR(3XNET), \fBendprotoent\fR(3XNET), \fBhtonl\fR(3XNET),
-\fBinet_addr\fR(3XNET), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR endhostent (3XNET),
+.BR endprotoent (3XNET),
+.BR htonl (3XNET),
+.BR inet_addr (3XNET),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xnet/freeaddrinfo.3xnet b/usr/src/man/man3xnet/freeaddrinfo.3xnet
index c6e5fe272b..168d285faa 100644
--- a/usr/src/man/man3xnet/freeaddrinfo.3xnet
+++ b/usr/src/man/man3xnet/freeaddrinfo.3xnet
@@ -339,7 +339,7 @@ of the \fIhints\fR structure should be set to \fBAF_INET\fR when
\fBgetaddrinfo()\fR is called.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -356,7 +356,13 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBconnect\fR(3XNET), \fBgai_strerror\fR(3XNET), \fBgethostbyname\fR(3XNET),
-\fBgetnameinfo\fR(3XNET), \fBgetservbyname\fR(3XNET), \fBinet_addr\fR(3XNET),
-\fBinet_ntop\fR(3XNET), \fBsocket\fR(3XNET), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR connect (3XNET),
+.BR gai_strerror (3XNET),
+.BR gethostbyname (3XNET),
+.BR getnameinfo (3XNET),
+.BR getservbyname (3XNET),
+.BR inet_addr (3XNET),
+.BR inet_ntop (3XNET),
+.BR socket (3XNET),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xnet/gai_strerror.3xnet b/usr/src/man/man3xnet/gai_strerror.3xnet
index 077c9e8278..207e0ef027 100644
--- a/usr/src/man/man3xnet/gai_strerror.3xnet
+++ b/usr/src/man/man3xnet/gai_strerror.3xnet
@@ -163,7 +163,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -181,5 +181,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBgetaddrinfo\fR(3XNET), \fBgetnameinfo\fR(3XNET), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR getaddrinfo (3XNET),
+.BR getnameinfo (3XNET),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xnet/gethostname.3xnet b/usr/src/man/man3xnet/gethostname.3xnet
index 31897f6a06..1b47cb1b6d 100644
--- a/usr/src/man/man3xnet/gethostname.3xnet
+++ b/usr/src/man/man3xnet/gethostname.3xnet
@@ -78,7 +78,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -96,4 +96,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBuname\fR(1), \fBgethostid\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR uname (1),
+.BR gethostid (3C),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xnet/getnameinfo.3xnet b/usr/src/man/man3xnet/getnameinfo.3xnet
index 4aa8b15de5..1bca1851c7 100644
--- a/usr/src/man/man3xnet/getnameinfo.3xnet
+++ b/usr/src/man/man3xnet/getnameinfo.3xnet
@@ -218,7 +218,7 @@ performs a lookup as if the socket address structure contains the IPv4 address
"1.2.3.4".
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -235,10 +235,13 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBsockaddr\fR(3SOCKET),
-\fBgai_strerror\fR(3XNET), \fBgetaddrinfo\fR(3XNET),
-\fBgetservbyname\fR(3XNET), \fBsocket\fR(3XNET), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR sockaddr (3SOCKET),
+.BR gai_strerror (3XNET),
+.BR getaddrinfo (3XNET),
+.BR getservbyname (3XNET),
+.BR socket (3XNET),
+.BR attributes (7),
+.BR standards (7)
.SH NOTES
.LP
The IPv6 unspecified address ("::") and the IPv6 loopback address ("::1") are
diff --git a/usr/src/man/man3xnet/getpeername.3xnet b/usr/src/man/man3xnet/getpeername.3xnet
index a98445a8ef..fdbe26dfd7 100644
--- a/usr/src/man/man3xnet/getpeername.3xnet
+++ b/usr/src/man/man3xnet/getpeername.3xnet
@@ -157,7 +157,7 @@ complete.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -174,6 +174,10 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBsockaddr\fR(3SOCKET),
-\fBaccept\fR(3XNET), \fBbind\fR(3XNET), \fBgetsockname\fR(3XNET),
-\fBsocket\fR(3XNET), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR sockaddr (3SOCKET),
+.BR accept (3XNET),
+.BR bind (3XNET),
+.BR getsockname (3XNET),
+.BR socket (3XNET),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xnet/getsockname.3xnet b/usr/src/man/man3xnet/getsockname.3xnet
index 6440e8873c..1cd112c4bc 100644
--- a/usr/src/man/man3xnet/getsockname.3xnet
+++ b/usr/src/man/man3xnet/getsockname.3xnet
@@ -149,7 +149,7 @@ complete.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -166,6 +166,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBsockaddr\fR(3SOCKET),
+.BR sockaddr (3SOCKET),
\fBaccept\fR(3XNET), \fBbind\fR(3XNET), \fBgetpeername\fR(3XNET),
-\fBsocket\fR(3XNET) \fBattributes\fR(5), \fBstandards\fR(5)
+\fBsocket\fR(3XNET) \fBattributes\fR(7),
+.BR standards (7)
diff --git a/usr/src/man/man3xnet/getsockopt.3xnet b/usr/src/man/man3xnet/getsockopt.3xnet
index 8bd3fd7bb4..185f43ed91 100644
--- a/usr/src/man/man3xnet/getsockopt.3xnet
+++ b/usr/src/man/man3xnet/getsockopt.3xnet
@@ -256,7 +256,7 @@ that use the \fBSO_ALLZONES\fR option to initiate connections or send datagram
traffic should specify the source address for outbound traffic by binding to a
specific address. There is no effect from setting this option in an
exclusive-IP zone. Setting this option requires the \fBsys_net_config\fR
-privilege. See \fBzones\fR(5).
+privilege. See \fBzones\fR(7).
.RE
.sp
@@ -388,7 +388,7 @@ complete.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -408,4 +408,4 @@ MT-Level MT-Safe
.LP
\fBclose\fR(2), \fBbind\fR(3XNET), \fBendprotoent\fR(3XNET),
\fBsetsockopt\fR(3XNET), \fBsocket\fR(3XNET), \fBattributes\fR,
-\fBstandards\fR(5)
+.BR standards (7)
diff --git a/usr/src/man/man3xnet/htonl.3xnet b/usr/src/man/man3xnet/htonl.3xnet
index 53eb87e687..dac5df1dd6 100644
--- a/usr/src/man/man3xnet/htonl.3xnet
+++ b/usr/src/man/man3xnet/htonl.3xnet
@@ -115,7 +115,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -133,5 +133,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBendhostent\fR(3XNET), \fBendservent\fR(3XNET), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR endhostent (3XNET),
+.BR endservent (3XNET),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xnet/if_nametoindex.3xnet b/usr/src/man/man3xnet/if_nametoindex.3xnet
index f5acc96cc4..5629c51e17 100644
--- a/usr/src/man/man3xnet/if_nametoindex.3xnet
+++ b/usr/src/man/man3xnet/if_nametoindex.3xnet
@@ -148,7 +148,7 @@ pointer that was returned by \fBif_nameindex()\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -166,5 +166,8 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBifconfig\fR(1M), \fBif_nametoindex\fR(3SOCKET), \fBattributes\fR(5),
-\fBstandards\fR(5), \fBif\fR(7P)
+.BR if_nametoindex (3SOCKET),
+.BR if (4P),
+.BR attributes (7),
+.BR standards (7),
+.BR ifconfig (8)
diff --git a/usr/src/man/man3xnet/inet_addr.3xnet b/usr/src/man/man3xnet/inet_addr.3xnet
index 861b0e53b1..c87668c6a9 100644
--- a/usr/src/man/man3xnet/inet_addr.3xnet
+++ b/usr/src/man/man3xnet/inet_addr.3xnet
@@ -200,7 +200,7 @@ No errors are defined.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -218,5 +218,7 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBendhostent\fR(3XNET), \fBendnetent\fR(3XNET), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR endhostent (3XNET),
+.BR endnetent (3XNET),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xnet/inet_ntop.3xnet b/usr/src/man/man3xnet/inet_ntop.3xnet
index 0828e2478d..db70d207f8 100644
--- a/usr/src/man/man3xnet/inet_ntop.3xnet
+++ b/usr/src/man/man3xnet/inet_ntop.3xnet
@@ -171,7 +171,7 @@ The size of the \fBinet_ntop()\fR result buffer is inadequate.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -189,4 +189,5 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBinet_addr\fR(3XNET), \fBattributes\fR(5)
+.BR inet_addr (3XNET),
+.BR attributes (7)
diff --git a/usr/src/man/man3xnet/listen.3xnet b/usr/src/man/man3xnet/listen.3xnet
index 563ab48859..a9a06f3f9b 100644
--- a/usr/src/man/man3xnet/listen.3xnet
+++ b/usr/src/man/man3xnet/listen.3xnet
@@ -170,7 +170,7 @@ Insufficient resources are available in the system to complete the call.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -188,5 +188,8 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBaccept\fR(3XNET), \fBconnect\fR(3XNET), \fBsocket\fR(3XNET),
-\fBattributes\fR(5), \fBstandards\fR(5)
+.BR accept (3XNET),
+.BR connect (3XNET),
+.BR socket (3XNET),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xnet/recv.3xnet b/usr/src/man/man3xnet/recv.3xnet
index 8afde15db2..6be111f948 100644
--- a/usr/src/man/man3xnet/recv.3xnet
+++ b/usr/src/man/man3xnet/recv.3xnet
@@ -172,7 +172,7 @@ an orderly shutdown, \fBrecv()\fR returns 0. Otherwise, -1 is returned and
In addition to the errors documented below, an asynchronous error generated by
the underlying socket protocol may be returned. For the full list of errors,
please see the corresponding socket protocol manual page. For example, for a
-list of TCP errors, please see \fBtcp\fR(7P).
+list of TCP errors, please see \fBtcp\fR(4P).
.sp
.LP
The \fBrecv()\fR function will fail if:
@@ -319,7 +319,7 @@ complete.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -336,7 +336,15 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBpoll\fR(2), \fBrecvmsg\fR(3XNET), \fBrecvfrom\fR(3XNET), \fBselect\fR(3C),
-\fBsend\fR(3XNET), \fBsendmsg\fR(3XNET), \fBsendto\fR(3XNET),
-\fBshutdown\fR(3XNET), \fBsocket\fR(3XNET), \fBattributes\fR(5),
-\fBstandards\fR(5), \fBtcp\fR(7P)
+.BR poll (2),
+.BR select (3C),
+.BR recvfrom (3XNET),
+.BR recvmsg (3XNET),
+.BR send (3XNET),
+.BR sendmsg (3XNET),
+.BR sendto (3XNET),
+.BR shutdown (3XNET),
+.BR socket (3XNET),
+.BR tcp (4P),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xnet/recvfrom.3xnet b/usr/src/man/man3xnet/recvfrom.3xnet
index eb252172c7..c07f0e7232 100644
--- a/usr/src/man/man3xnet/recvfrom.3xnet
+++ b/usr/src/man/man3xnet/recvfrom.3xnet
@@ -211,7 +211,7 @@ function returns \(mi1 and sets \fBerrno\fR to indicate the error.
In addition to the errors documented below, an asynchronous error generated by
the underlying socket protocol may be returned. For the full list of errors,
please see the corresponding socket protocol manual page. For example, for a
-list of TCP errors, please see \fBtcp\fR(7P).
+list of TCP errors, please see \fBtcp\fR(4P).
.sp
.LP
The \fBrecvfrom()\fR function will fail if:
@@ -356,7 +356,7 @@ complete.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -373,8 +373,16 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBpoll\fR(2), \fBsockaddr\fR(3SOCKET),
-\fBrecv\fR(3XNET), \fBrecvmsg\fR(3XNET), \fBselect\fR(3C)
-\fBsend\fR(3XNET), \fBsendmsg\fR(3XNET), \fBsendto\fR(3XNET),
-\fBshutdown\fR(3XNET), \fBsocket\fR(3XNET), \fBattributes\fR(5),
-\fBstandards\fR(5), \fBtcp\fR(7P)
+.BR poll (2),
+.BR sockaddr (3SOCKET),
+.BR recv (3XNET),
+.BR recvmsg (3XNET),
+.BR select (3C)
+.BR send (3XNET),
+.BR sendmsg (3XNET),
+.BR sendto (3XNET),
+.BR shutdown (3XNET),
+.BR socket (3XNET),
+.BR tcp (4P),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xnet/recvmsg.3xnet b/usr/src/man/man3xnet/recvmsg.3xnet
index 033e1928f1..b07c950a41 100644
--- a/usr/src/man/man3xnet/recvmsg.3xnet
+++ b/usr/src/man/man3xnet/recvmsg.3xnet
@@ -244,7 +244,7 @@ performed an orderly shutdown, \fBrecvmsg()\fR returns \fB0\fR. Otherwise,
In addition to the errors documented below, an asynchronous error generated by
the underlying socket protocol may be returned. For the full list of errors,
please see the corresponding socket protocol manual page. For example, for a
-list of TCP errors, please see \fBtcp\fR(7P).
+list of TCP errors, please see \fBtcp\fR(4P).
.sp
.LP
The \fBrecvmsg()\fR function will fail if:
@@ -402,7 +402,7 @@ complete.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -419,7 +419,17 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBpoll\fR(2), \fBrecv\fR(3XNET), \fBrecvfrom\fR(3XNET), \fBselect\fR(3C),
-\fBsend\fR(3XNET), \fBsendmsg\fR(3XNET), \fBsendto\fR(3XNET),
-\fBsetsockopt\fR(3XNET), \fBshutdown\fR(3XNET), \fBsocket\fR(3XNET),
-\fBsocket.h\fR(3HEAD), \fBattributes\fR(5), \fBstandards\fR(5), \fBtcp\fR(7P)
+.BR poll (2),
+.BR select (3C),
+.BR socket.h (3HEAD),
+.BR recv (3XNET),
+.BR recvfrom (3XNET),
+.BR send (3XNET),
+.BR sendmsg (3XNET),
+.BR sendto (3XNET),
+.BR setsockopt (3XNET),
+.BR shutdown (3XNET),
+.BR socket (3XNET),
+.BR tcp (4P),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xnet/send.3xnet b/usr/src/man/man3xnet/send.3xnet
index c90cd793a9..9cf909a771 100644
--- a/usr/src/man/man3xnet/send.3xnet
+++ b/usr/src/man/man3xnet/send.3xnet
@@ -163,7 +163,7 @@ Otherwise, \(mi1 is returned and \fBerrno\fR is set to indicate the error.
In addition to the errors documented below, an asynchronous error generated by
the underlying socket protocol may be returned. For the full list of errors,
please see the corresponding socket protocol manual page. For example, for a
-list of TCP errors, please see \fBtcp\fR(7P).
+list of TCP errors, please see \fBtcp\fR(4P).
.sp
.LP
The \fBsend()\fR function will fail if:
@@ -337,7 +337,7 @@ complete.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -354,8 +354,18 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBconnect\fR(3XNET), \fBgetsockopt\fR(3XNET), \fBpoll\fR(2),
-\fBrecv\fR(3XNET), \fBrecvfrom\fR(3XNET), \fBrecvmsg\fR(3XNET),
-\fBselect\fR(3C), \fBsendmsg\fR(3XNET), \fBsendto\fR(3XNET),
-\fBsetsockopt\fR(3XNET), \fBshutdown\fR(3XNET), \fBsocket\fR(3XNET),
-\fBattributes\fR(5), \fBstandards\fR(5), \fBtcp\fR(7P)
+.BR poll (2),
+.BR select (3C),
+.BR connect (3XNET),
+.BR getsockopt (3XNET),
+.BR recv (3XNET),
+.BR recvfrom (3XNET),
+.BR recvmsg (3XNET),
+.BR sendmsg (3XNET),
+.BR sendto (3XNET),
+.BR setsockopt (3XNET),
+.BR shutdown (3XNET),
+.BR socket (3XNET),
+.BR tcp (4P),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xnet/sendmsg.3xnet b/usr/src/man/man3xnet/sendmsg.3xnet
index 0ff4fb79a5..606c7a985f 100644
--- a/usr/src/man/man3xnet/sendmsg.3xnet
+++ b/usr/src/man/man3xnet/sendmsg.3xnet
@@ -169,7 +169,7 @@ the error.
In addition to the errors documented below, an asynchronous error generated by
the underlying socket protocol may be returned. For the full list of errors,
please see the corresponding socket protocol manual page. For example, for a
-list of TCP errors, please see \fBtcp\fR(7P).
+list of TCP errors, please see \fBtcp\fR(4P).
.sp
.LP
The \fBsendmsg()\fR function will fail if:
@@ -461,7 +461,7 @@ length exceeds \fIPATH_MAX\fR.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -478,8 +478,16 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBpoll\fR(2) \fBgetsockopt\fR(3XNET), \fBrecv\fR(3XNET),
-\fBrecvfrom\fR(3XNET), \fBrecvmsg\fR(3XNET), \fBselect\fR(3C),
-\fBsend\fR(3XNET), \fBsendto\fR(3XNET), \fBsetsockopt\fR(3XNET),
-\fBshutdown\fR(3XNET), \fBsocket\fR(3XNET), \fBattributes\fR(5),
-\fBstandards\fR(5), \fBtcp\fR(7P)
+\fBpoll\fR(2) \fBselect\fR(3C),
+.BR getsockopt (3XNET),
+.BR recv (3XNET),
+.BR recvfrom (3XNET),
+.BR recvmsg (3XNET),
+.BR send (3XNET),
+.BR sendto (3XNET),
+.BR setsockopt (3XNET),
+.BR shutdown (3XNET),
+.BR socket (3XNET),
+.BR tcp (4P),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xnet/sendto.3xnet b/usr/src/man/man3xnet/sendto.3xnet
index 1aa7b2d54d..3e2f35845f 100644
--- a/usr/src/man/man3xnet/sendto.3xnet
+++ b/usr/src/man/man3xnet/sendto.3xnet
@@ -190,7 +190,7 @@ Otherwise, \fB-1\fR is returned and \fBerrno\fR is set to indicate the error.
In addition to the errors documented below, an asynchronous error generated by
the underlying socket protocol may be returned. For the full list of errors,
please see the corresponding socket protocol manual page. For example, for a
-list of TCP errors, please see \fBtcp\fR(7P).
+list of TCP errors, please see \fBtcp\fR(4P).
.sp
.LP
The \fBsendto()\fR function will fail if:
@@ -477,7 +477,7 @@ length exceeds \fIPATH_MAX\fR.
.SH ATTRIBUTES
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -494,9 +494,18 @@ MT-Level MT-Safe
.SH SEE ALSO
.LP
-\fBpoll\fR(2), \fBsockaddr\fR(3SOCKET),
-\fBgetsockopt\fR(3XNET), \fBrecv\fR(3XNET),
-\fBrecvfrom\fR(3XNET), \fBrecvmsg\fR(3XNET), \fBselect\fR(3C),
-\fBsend\fR(3XNET), \fBsendmsg\fR(3XNET), \fBsetsockopt\fR(3XNET),
-\fBshutdown\fR(3XNET), \fBsocket\fR(3XNET), \fBattributes\fR(5),
-\fBstandards\fR(5), \fBtcp\fR(7P)
+.BR poll (2),
+.BR select (3C),
+.BR sockaddr (3SOCKET),
+.BR getsockopt (3XNET),
+.BR recv (3XNET),
+.BR recvfrom (3XNET),
+.BR recvmsg (3XNET),
+.BR send (3XNET),
+.BR sendmsg (3XNET),
+.BR setsockopt (3XNET),
+.BR shutdown (3XNET),
+.BR socket (3XNET),
+.BR tcp (4P),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xnet/setsockopt.3xnet b/usr/src/man/man3xnet/setsockopt.3xnet
index 17bdf5e160..df5fe2ca5d 100644
--- a/usr/src/man/man3xnet/setsockopt.3xnet
+++ b/usr/src/man/man3xnet/setsockopt.3xnet
@@ -226,7 +226,7 @@ that use the \fBSO_ALLZONES\fR option to initiate connections or send datagram
traffic should specify the source address for outbound traffic by binding to a
specific address. There is no effect from setting this option in an
exclusive-IP zone. Setting this option requires the \fBsys_net_config\fR
-privilege. See \fBzones\fR(5).
+privilege. See \fBzones\fR(7).
.RE
.sp
@@ -357,7 +357,7 @@ complete.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -375,5 +375,9 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBbind\fR(3XNET), \fBendprotoent\fR(3XNET), \fBgetsockopt\fR(3XNET),
-\fBsocket\fR(3XNET), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR bind (3XNET),
+.BR endprotoent (3XNET),
+.BR getsockopt (3XNET),
+.BR socket (3XNET),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xnet/shutdown.3xnet b/usr/src/man/man3xnet/shutdown.3xnet
index 7db5b1ae3b..b35619843a 100644
--- a/usr/src/man/man3xnet/shutdown.3xnet
+++ b/usr/src/man/man3xnet/shutdown.3xnet
@@ -177,7 +177,7 @@ complete.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -195,7 +195,14 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBgetsockopt\fR(3XNET), \fBrecv\fR(3XNET), \fBrecvfrom\fR(3XNET),
-\fBrecvmsg\fR(3XNET), \fBselect\fR(3C), \fBsend\fR(3XNET), \fBsendto\fR(3XNET),
-\fBsetsockopt\fR(3XNET), \fBsocket\fR(3XNET), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR select (3C),
+.BR getsockopt (3XNET),
+.BR recv (3XNET),
+.BR recvfrom (3XNET),
+.BR recvmsg (3XNET),
+.BR send (3XNET),
+.BR sendto (3XNET),
+.BR setsockopt (3XNET),
+.BR socket (3XNET),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xnet/sockatmark.3xnet b/usr/src/man/man3xnet/sockatmark.3xnet
index 69611f56a6..8847ab68f8 100644
--- a/usr/src/man/man3xnet/sockatmark.3xnet
+++ b/usr/src/man/man3xnet/sockatmark.3xnet
@@ -118,7 +118,7 @@ that there is data waiting to be read at the socket, either by \fBSIGURG\fR or
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -136,5 +136,8 @@ MT-Level Safe
.SH SEE ALSO
.sp
.LP
-\fBrecv\fR(3XNET), \fBrecvmsg\fR(3XNET), \fBselect\fR(3C), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR select (3C),
+.BR recv (3XNET),
+.BR recvmsg (3XNET),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xnet/socket.3xnet b/usr/src/man/man3xnet/socket.3xnet
index 2855698b57..7e956adc87 100644
--- a/usr/src/man/man3xnet/socket.3xnet
+++ b/usr/src/man/man3xnet/socket.3xnet
@@ -286,7 +286,7 @@ complete.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -304,9 +304,19 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBaccept\fR(3XNET), \fBbind\fR(3XNET), \fBconnect\fR(3XNET),
-\fBgetsockname\fR(3XNET), \fBgetsockopt\fR(3XNET), \fBlisten\fR(3XNET),
-\fBrecv\fR(3XNET), \fBrecvfrom\fR(3XNET), \fBrecvmsg\fR(3XNET),
-\fBsend\fR(3XNET), \fBsendmsg\fR(3XNET), \fBsetsockopt\fR(3XNET),
-\fBshutdown\fR(3XNET), \fBsocketpair\fR(3XNET), \fBattributes\fR(5),
-\fBstandards\fR(5)
+.BR accept (3XNET),
+.BR bind (3XNET),
+.BR connect (3XNET),
+.BR getsockname (3XNET),
+.BR getsockopt (3XNET),
+.BR listen (3XNET),
+.BR recv (3XNET),
+.BR recvfrom (3XNET),
+.BR recvmsg (3XNET),
+.BR send (3XNET),
+.BR sendmsg (3XNET),
+.BR setsockopt (3XNET),
+.BR shutdown (3XNET),
+.BR socketpair (3XNET),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man3xnet/socketpair.3xnet b/usr/src/man/man3xnet/socketpair.3xnet
index f232656313..3dd489d275 100644
--- a/usr/src/man/man3xnet/socketpair.3xnet
+++ b/usr/src/man/man3xnet/socketpair.3xnet
@@ -267,7 +267,7 @@ complete.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -285,4 +285,6 @@ MT-Level MT-Safe
.SH SEE ALSO
.sp
.LP
-\fBsocket\fR(3XNET), \fBattributes\fR(5), \fBstandards\fR(5)
+.BR socket (3XNET),
+.BR attributes (7),
+.BR standards (7)
diff --git a/usr/src/man/man4/FSS.4 b/usr/src/man/man4/FSS.4
new file mode 100644
index 0000000000..33b0136c4f
--- /dev/null
+++ b/usr/src/man/man4/FSS.4
@@ -0,0 +1,231 @@
+.\" Copyright (c) 2001, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 2019 Joyent, Inc.
+.\"
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.\"
+.Dd December 17, 2019
+.Dt FSS 4
+.Os
+.Sh NAME
+.Nm FSS
+.Nd Fair share scheduler
+.Sh DESCRIPTION
+The fair share scheduler (FSS) guarantees application performance by explicitly
+allocating shares of CPU resources to projects.
+A share indicates a project's
+entitlement to available CPU resources.
+Because shares are meaningful only in
+comparison with other project's shares, the absolute quantity of shares is not
+important.
+Any number that is in proportion with the desired CPU entitlement
+can be used.
+.Pp
+The goals of the FSS scheduler differ from the traditional time-sharing
+scheduling class (TS).
+In addition to scheduling individual LWPs, the FSS
+scheduler schedules projects against each other, making it impossible for any
+project to acquire more CPU cycles simply by running more processes
+concurrently.
+.Pp
+A project's entitlement is individually calculated by FSS independently for
+each processor set if the project contains processes bound to them.
+If a
+project is running on more than one processor set, it can have different
+entitlements on every set.
+A project's entitlement is defined as a ratio
+between the number of shares given to a project and the sum of shares of all
+active projects running on the same processor set.
+An active project is one
+that has at least one running or runnable process.
+Entitlements are recomputed
+whenever any project becomes active or inactive, or whenever the number of
+shares is changed.
+.Pp
+Processor sets represent virtual machines in the FSS scheduling class and
+processes are scheduled independently in each processor set.
+That is, processes
+compete with each other only if they are running on the same processor set.
+When a processor set is destroyed, all processes that were bound to it are
+moved to the default processor set, which always exists.
+Empty processor sets
+(that is, sets without processors in them) have no impact on the FSS scheduler
+behavior.
+.Pp
+If a processor set contains a mix of TS/IA and FSS processes, the fairness of
+the FSS scheduling class can be compromised because these classes use the same
+range of priorities.
+Fairness is most significantly affected if processes
+running in the TS scheduling class are CPU-intensive and are bound to
+processors within the processor set.
+As a result, you should avoid having
+processes from TS/IA and FSS classes share the same processor set.
+RT and FSS
+processes use disjoint priority ranges and therefore can share processor sets.
+.Pp
+As projects execute, their CPU usage is accumulated over time.
+The FSS
+scheduler periodically decays CPU usages of every project by multiplying it
+with a decay factor, ensuring that more recent CPU usage has greater weight
+when taken into account for scheduling.
+The FSS scheduler continually adjusts
+priorities of all processes to make each project's relative CPU usage converge
+with its entitlement.
+.Pp
+While FSS is designed to fairly allocate cycles over a long-term time period,
+it is possible that projects will not receive their allocated shares worth of
+CPU cycles due to uneven demand.
+This makes one-shot, instantaneous analysis of
+FSS performance data unreliable.
+.Pp
+Note that share is not the same as utilization.
+A project may be allocated 50%
+of the system, although on the average, it uses just 20%.
+Shares serve to cap a
+project's CPU usage only when there is competition from other projects running
+on the same processor set.
+When there is no competition, utilization may be
+larger than entitlement based on shares.
+Allocating a small share to a busy
+project slows it down but does not prevent it from completing its work if the
+system is not saturated.
+.Pp
+The configuration of CPU shares is managed by the name server as a property of
+the
+.Xr project 5
+database.
+In the following example, an entry in the
+.Pa /etc/project
+file sets the number of shares for project
+.Sy x-files
+to 10:
+.Bd -literal -offset 2n
+x-files:100::::project.cpu-shares=(privileged,10,none)
+.Ed
+.Pp
+Projects with undefined number of shares are given one share each.
+This means
+that such projects are treated with equal importance.
+Projects with 0 shares
+only run when there are no projects with non-zero shares competing for the same
+processor set.
+The maximum number of shares that can be assigned to one project
+is 65535.
+.Pp
+You can use the
+.Xr prctl 1
+command to determine the current share
+assignment for a given project:
+.Bd -literal -offset 2n
+$ prctl -n project.cpu-shares -i project x-files
+.Ed
+.Pp
+or to change the amount of shares if you have root privileges:
+.Bd -literal -offset 2n
+# prctl -r -n project.cpu-shares -v 5 -i project x-files
+.Ed
+.Pp
+See the
+.Xr prctl 1
+man page for additional information on how to modify and
+examine resource controls associated with active processes, tasks, or projects
+on the system.
+See
+.Xr resource_controls 7
+for a description of the resource
+controls supported in the current release of the Solaris operating system.
+.Pp
+By default, project
+.Sy system
+(project ID 0) includes all system daemons
+started by initialization scripts and has an
+.Dq unlimited
+amount of shares.
+That
+is, it is always scheduled first no matter how many shares are given to other
+projects.
+.Pp
+The following command sets FSS as the default scheduler for the system:
+.Bd -literal -offset 2n
+# dispadmin -d FSS
+.Ed
+.Pp
+This change will take effect on the next reboot.
+Alternatively, you can move
+processes from the time-share scheduling class (as well as the special case of
+init) into the FSS class without changing your default scheduling class and
+rebooting by becoming
+.Sy root ,
+and then using the
+.Xr priocntl 1
+command, as shown in the following example:
+.Bd -literal -offset 2n
+# priocntl -s -c FSS -i class TS
+# priocntl -s -c FSS -i pid 1
+.Ed
+.Sh CONFIGURING SCHEDULER WITH DISPADMIN
+You can use the
+.Xr dispadmin 8
+command to examine and tune the FSS
+scheduler's time quantum value.
+Time quantum is the amount of time that a
+thread is allowed to run before it must relinquish the processor.
+The following
+example dumps the current time quantum for the fair share scheduler:
+.Bd -literal -offset 2n
+$ dispadmin -g -c FSS
+ #
+ # Fair Share Scheduler Configuration
+ #
+ RES=1000
+ #
+ # Time Quantum
+ #
+ QUANTUM=110
+.Ed
+.Pp
+The value of the QUANTUM represents some fraction of a second with the
+fractional value determined by the reciprocal value of RES.
+With the default
+value of RES = 1000, the reciprocal of 1000 is \&.001, or milliseconds.
+Thus, by
+default, the QUANTUM value represents the time quantum in milliseconds.
+.Pp
+If you change the RES value using
+.Xr dispadmin 8
+with the
+.Fl r
+option, you also change the QUANTUM value.
+For example, instead of quantum of 110 with RES
+of 1000, a quantum of 11 with a RES of 100 results.
+The fractional unit is different while the amount of time is the same.
+.Pp
+You can use the
+.Fl s
+option to change the time quantum value.
+Note that such changes are not preserved across reboot.
+Please refer to the
+.Xr dispadmin 8
+man page for additional information.
+.Sh SEE ALSO
+.Xr prctl 1 ,
+.Xr priocntl 1 ,
+.Xr priocntl 2 ,
+.Xr project 5 ,
+.Xr resource_controls 7 ,
+.Xr dispadmin 8 ,
+.Xr psrset 8
+.Pp
+.%T System Administration Guide: Virtualization Using the Solaris Operating System
diff --git a/usr/src/man/man4/Intro.4 b/usr/src/man/man4/Intro.4
index ce2f7eb2f7..2f7fabf221 100644
--- a/usr/src/man/man4/Intro.4
+++ b/usr/src/man/man4/Intro.4
@@ -1,3 +1,6 @@
+.\" Copyright (c) 1999, Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 1989 AT&T
+.\" Copyright 2020 Joyent, Inc.
.\"
.\" The contents of this file are subject to the terms of the
.\" Common Development and Distribution License (the "License").
@@ -14,37 +17,193 @@
.\" fields enclosed by brackets "[]" replaced with your own identifying
.\" information: Portions Copyright [yyyy] [name of copyright owner]
.\"
-.\"
-.\" Copyright 2015 Nexenta Systems, Inc. All rights reserved.
-.\" Copyright 1989 AT&T
-.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved.
-.\"
-.Dd Mar 18, 2015
+.Dd January 6, 2020
.Dt INTRO 4
.Os
.Sh NAME
.Nm Intro ,
.Nm intro
-.Nd introduction to file formats and configurations
+.Nd introduction to special files
.Sh DESCRIPTION
-This section outlines the formats of various files and configurations of
-various subsystems.
-The C structure declarations for the file formats are given where applicable.
-Usually, the headers containing these structure declarations can be found in the
-directories
-.Pa /usr/include
-or
-.Pa /usr/include/sys .
-For inclusion in C language programs, however, the syntax
-.Sy #include
-.Sm off
-<
-.Em filename.h No >
-.Sm on
-or
-.Sy #include
-.Sm off
-<
-.Sy sys/ Em filename.h No >
-.Sm on
-should be used.
+This section describes various device and network interfaces available on the
+sysstem.
+The types of interfaces described include character and block
+devices,
+.Sy STREAMS
+modules, network protocols, file systems, and ioctl requests
+for driver subsystems and classes.
+.Pp
+This section contains the following major collections:
+.Bl -tag -width "xxxxx"
+.It Pq Sy 4D
+The system provides drivers for a variety of hardware devices, such as disk,
+magnetic tapes, serial communication lines, mice, and frame buffers, as well
+as virtual devices such as pseudo-terminals and windows.
+.Pp
+This section describes special files that refer to specific hardware
+peripherals and device drivers.
+.Sy STREAMS
+device drivers are also described.
+Characteristics of both the hardware device and the corresponding device driver
+are discussed where applicable.
+.Pp
+An application accesses a device through that device's special file.
+This
+section specifies the device special file to be used to access the device as
+well as application programming interface (API) information relevant to the use
+of the device driver.
+All device special files are located under the
+.Pa /devices
+directory.
+The
+.Pa /devices
+directory hierarchy attempts to mirror the hierarchy of system
+busses, controllers, and devices configured on the system.
+Logical device names for special files in
+.Pa /devices
+are located under the
+.Pa /dev
+directory.
+Although not every special file under
+.Pa /devices
+will have a corresponding logical entry under
+.Pa /dev ,
+whenever possible, an
+application should reference a device using the logical name for the device.
+Logical device names are listed in the
+.Sy FILES
+section of the page for the device in question.
+.Pp
+This section also describes driver configuration where applicable.
+Many device drivers have a driver configuration file of the form
+.Em driver_name Ns \&.conf
+associated with them (see
+.Xr driver.conf 5 ) .
+The configuration information stored in the driver
+configuration file is used to configure the driver and the device.
+Driver configuration files are located in
+.Pa /kernel/drv
+and
+.Pa /usr/kernel/drv .
+Driver configuration files for platform dependent
+drivers are located in
+.Pa /platform/`uname\ -i`/kernel/drv
+where
+.Pa `uname\ -i`
+is the output of the
+.Xr uname 1
+command with the
+.Fl i
+option.
+.Pp
+Some driver configuration files may contain user configurable properties.
+Changes in a driver's configuration file will not take effect until the system
+is rebooted or the driver has been removed and re-added (see
+.Xr rem_drv 8
+and
+.Xr add_drv 8 ) .
+.It Pq Sy 4FS
+This section describes the programmatic interface for several file systems
+supported by SunOS.
+.It Pq Sy 4I
+This section describes ioctl requests which apply to a class of drivers or
+subsystems.
+For example, ioctl requests which apply to most tape devices are
+discussed in
+.Xr mtio 4I .
+Ioctl requests relevant to only a specific
+device are described on the man page for that device.
+The page for the device
+in question should still be examined for exceptions to the ioctls listed in
+section 4I.
+.It Pq Sy 4M
+This section describes
+.Sy STREAMS
+modules.
+Note that
+.Sy STREAMS
+drivers are discussed in section 4D.
+.Xr streamio 4I
+contains a list of ioctl requests used to manipulate
+.Sy STREAMS
+modules and interface with the
+.Sy STREAMS
+framework.
+.Xr ioctl 2
+requests specific to a
+.Sy STREAMS
+module will be discussed on the man page for that module.
+.It Pq Sy 4P
+This section describes various network protocols available in SunOS.
+SunOS supports both socket-based and
+.Sy STREAMS Ns -based
+network communications.
+.Pp
+The Internet protocol family, described in
+.Xr inet 4P ,
+is the primary protocol family supported by SunOS, although the system can
+support a number of others.
+The raw interface provides low-level services, such as
+packet fragmentation and reassembly, routing, addressing, and basic transport
+for socket-based implementations.
+Facilities for communicating using an
+Internet-family protocol are generally accessed by specifying the
+.Dv AF_INET
+address family when binding a socket; see
+.Xr socket 3SOCKET
+for details.
+.Pp
+Major protocols in the Internet family include:
+.Bl -bullet -offset indent
+.It
+The Internet Protocol (IP) itself, which supports the universal datagram
+format, as described in
+.Xr ip 4P .
+This is the default protocol for
+.Dv SOCK_RAW
+type sockets within the
+.Dv AF_INET
+domain.
+.It
+The Transmission Control Protocol (TCP); see
+.Xr tcp 4P .
+This is the default protocol for
+.Dv SOCK_STREAM
+type sockets.
+.It
+The User Datagram Protocol (UDP); see
+.Xr udp 4P .
+This is the default
+protocol for
+.Dv SOCK_DGRAM
+type sockets.
+.It
+The Address Resolution Protocol (ARP); see
+.Xr arp 4P .
+.It
+The Internet Control Message Protocol (ICMP); see
+.Xr icmp 4P .
+.El
+.El
+.Sh SEE ALSO
+.Xr ioctl 2 ,
+.Xr Intro 3 ,
+.Xr socket 3SOCKET ,
+.Xr st 4D ,
+.Xr mtio 4I ,
+.Xr streamio 4I ,
+.Xr arp 4P ,
+.Xr icmp 4P ,
+.Xr inet 4P ,
+.Xr ip 4P ,
+.Xr tcp 4P ,
+.Xr udp 4P ,
+.Xr driver.conf 5 ,
+.Xr add_drv 8 ,
+.Xr rem_drv 8
+.Pp
+.%T System Administration Guide: IP Services
+.Pp
+.%T STREAMS Programming Guide
+.Pp
+.%T Writing Device Drivers
diff --git a/usr/src/man/man4/Makefile b/usr/src/man/man4/Makefile
index 941757d4f3..c367547dff 100644
--- a/usr/src/man/man4/Makefile
+++ b/usr/src/man/man4/Makefile
@@ -11,285 +11,22 @@
#
# Copyright 2011, Richard Lowe
-# Copyright 2015, Joyent, Inc.
-# Copyright 2018 Nexenta Systems, Inc.
-# Copyright 2018 Gary Mills
-# Copyright 2021 OmniOS Community Edition (OmniOSce) Association.
+# Copyright 2013 Nexenta Systems, Inc. All rights reserved.
#
include $(SRC)/Makefile.master
-MANSECT= 4
+MANSECT= 4
-_MANFILES= Intro.4 \
- NISLDAPmapping.4 \
- a.out.4 \
- admin.4 \
- alias.4 \
- aliases.4 \
- au.4 \
- audit.log.4 \
- audit_class.4 \
- audit_event.4 \
- auth_attr.4 \
- autofs.4 \
- bart_manifest.4 \
- bart_rules.4 \
- bootparams.4 \
- cardbus.4 \
- compver.4 \
- contents.4 \
- contract.4 \
- copyright.4 \
- core.4 \
- crypt.conf.4 \
- crypto_certs.4 \
- ctf.4 \
- d_passwd.4 \
- dacf.conf.4 \
- dat.conf.4 \
- default_fs.4 \
- defaultdomain.4 \
- defaultrouter.4 \
- depend.4 \
- device_allocate.4 \
- device_contract.4 \
- device_maps.4 \
- devices.4 \
- dfstab.4 \
- dhcp_inittab.4 \
- dialups.4 \
- dir_ufs.4 \
- driver.conf.4 \
- ethers.4 \
- exec_attr.4 \
- fdi.4 \
- format.dat.4 \
- fspec.4 \
- fstypes.4 \
- ftp.4 \
- ftpusers.4 \
- fx_dptbl.4 \
- gateways.4 \
- group.4 \
- gsscred.conf.4 \
- hba.conf.4 \
- holidays.4 \
- hosts.4 \
- hosts.equiv.4 \
- hosts_access.4 \
- hosts_options.4 \
- ib.4 \
- ike.config.4 \
- ike.preshared.4 \
- ipf.4 \
- ipmon.4 \
- ipnat.4 \
- ippool.4 \
- inet_type.4 \
- inetd.conf.4 \
- init.4 \
- init.d.4 \
- inittab.4 \
- ipaddrsel.conf.4 \
- ipnodes.4 \
- issue.4 \
- kadm5.acl.4 \
- kdc.conf.4 \
- keytables.4 \
- krb5.conf.4 \
- ldapfilter.conf.4 \
- ldapsearchprefs.conf.4 \
- ldaptemplates.conf.4 \
- logadm.conf.4 \
- logindevperm.4 \
- loginlog.4 \
- magic.4 \
- mailer.conf.4 \
- mech.4 \
- mnttab.4 \
- mpapi.conf.4 \
- nca.if.4 \
- ncad_addr.4 \
- ncakmod.conf.4 \
- ncalogd.conf.4 \
- ncaport.conf.4 \
- ndmp.4 \
- ndpd.conf.4 \
- netconfig.4 \
- netgroup.4 \
- netid.4 \
- netmasks.4 \
- netrc.4 \
- networks.4 \
- nfs.4 \
- nfslog.conf.4 \
- nfssec.conf.4 \
- nodename.4 \
- nologin.4 \
- note.4 \
- notrouter.4 \
- nscd.conf.4 \
- nsmbrc.4 \
- nss.4 \
- nsswitch.conf.4 \
- overlay_files.4 \
- packingrules.4 \
- pam.conf.4 \
- passwd.4 \
- path_to_inst.4 \
- pci.4 \
- phones.4 \
- pkginfo.4 \
- pkgmap.4 \
- policy.conf.4 \
- power.conf.4 \
- printers.4 \
- printers.conf.4 \
- priv_names.4 \
- proc.4 \
- process.4 \
- prof_attr.4 \
- profile.4 \
- project.4 \
- protocols.4 \
- prototype.4 \
- pseudo.4 \
- publickey.4 \
- queuedefs.4 \
- rcmscript.4 \
- remote.4 \
- resolv.conf.4 \
- rmtab.4 \
- rpc.4 \
- rt_dptbl.4 \
- sasl_appname.conf.4 \
- scsi.4 \
- securenets.4 \
- sendmail.4 \
- service_bundle.4 \
- service_provider.conf.4 \
- services.4 \
- shadow.4 \
- sharetab.4 \
- shells.4 \
- slp.conf.4 \
- slpd.reg.4 \
- smb.4 \
- smbautohome.4 \
- smhba.conf.4 \
- sock2path.d.4 \
- space.4 \
- sulog.4 \
- syslog.conf.4 \
- system.4 \
- term.4 \
- terminfo.4 \
- timezone.4 \
- tnf_kernel_probes.4 \
- ts_dptbl.4 \
- ttydefs.4 \
- ttysrch.4 \
- ufsdump.4 \
- updaters.4 \
- user_attr.4 \
- utmp.4 \
- utmpx.4 \
- vfstab.4 \
- warn.conf.4 \
- ypfiles.4 \
- yppasswdd.4 \
- ypserv.4 \
- zoneinfo.4
+MANFILES= FSS.4 \
+ Intro.4 \
+ cpr.4 \
+ ibmf.4 \
+ swap.4
-sparc_MANFILES= sbus.4
+MANLINKS= intro.4
-i386_MANFILES= bhyve_config.4 \
- loader.conf.4 \
- sysbus.4
-
-_MANLINKS= addresses.4 \
- devid_cache.4 \
- devname_cache.4 \
- dir.4 \
- dumpdates.4 \
- fbtab.4 \
- forward.4 \
- fs.4 \
- hosts.allow.4 \
- hosts.deny.4 \
- intro.4 \
- ipf.conf.4 \
- ipf6.conf.4 \
- ipmon.conf.4 \
- ipnat.conf.4 \
- ippool.conf.4 \
- mdi_ib_cache.4 \
- mdi_scsi_vhci_cache.4 \
- pci_unitaddr_persistent.4 \
- pcie.4 \
- qop.4 \
- rhosts.4 \
- TIMEZONE.4 \
- sendmail.cf.4 \
- snapshot_cache.4 \
- submit.cf.4 \
- wtmp.4 \
- wtmpx.4
-
-i386_MANLINKS= isa.4
-
-MANFILES= $(_MANFILES) $($(MACH)_MANFILES)
-MANLINKS= $(_MANLINKS) $($(MACH)_MANLINKS)
-
-intro.4 := LINKSRC = Intro.4
-
-addresses.4 := LINKSRC = aliases.4
-forward.4 := LINKSRC = aliases.4
-
-fs.4 := LINKSRC = default_fs.4
-
-devid_cache.4 := LINKSRC = devices.4
-devname_cache.4 := LINKSRC = devices.4
-mdi_ib_cache.4 := LINKSRC = devices.4
-mdi_scsi_vhci_cache.4 := LINKSRC = devices.4
-pci_unitaddr_persistent.4 := LINKSRC = devices.4
-snapshot_cache.4 := LINKSRC = devices.4
-
-dir.4 := LINKSRC = dir_ufs.4
-
-rhosts.4 := LINKSRC = hosts.equiv.4
-
-TIMEZONE.4 := LINKSRC = init.4
-
-hosts.allow.4 := LINKSRC = hosts_access.4
-hosts.deny.4 := LINKSRC = hosts_access.4
-
-ipf.conf.4 := LINKSRC = ipf.4
-ipf6.conf.4 := LINKSRC = ipf.4
-
-ipmon.conf.4 := LINKSRC = ipmon.4
-
-ipnat.conf.4 := LINKSRC = ipnat.4
-
-ippool.conf.4 := LINKSRC = ippool.4
-
-fbtab.4 := LINKSRC = logindevperm.4
-
-qop.4 := LINKSRC = mech.4
-
-pcie.4 := LINKSRC = pci.4
-
-sendmail.cf.4 := LINKSRC = sendmail.4
-submit.cf.4 := LINKSRC = sendmail.4
-
-isa.4 := LINKSRC = sysbus.4
-
-dumpdates.4 := LINKSRC = ufsdump.4
-
-wtmp.4 := LINKSRC = utmp.4
-
-wtmpx.4 := LINKSRC = utmpx.4
+intro.4 := LINKSRC = Intro.4
.KEEP_STATE:
diff --git a/usr/src/man/man4/NISLDAPmapping.4 b/usr/src/man/man4/NISLDAPmapping.4
deleted file mode 100644
index 91a3cbe0e6..0000000000
--- a/usr/src/man/man4/NISLDAPmapping.4
+++ /dev/null
@@ -1,1492 +0,0 @@
-'\" te
-.\" Copyright (C) 2006, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH NISLDAPMAPPING 4 "November 22, 2021"
-.SH NAME
-NISLDAPmapping \- mapping file used by the NIS server components
-.SH SYNOPSIS
-.nf
-\fB/var/yp/NISLDAPmapping\fR
-.fi
-
-.SH DESCRIPTION
-The \fBNISLDAPmapping\fR file specifies the mapping between NIS map entries and
-equivalent Directory Information Tree (DIT) entries.
-.sp
-.LP
-The presence of \fB/var/yp/NISLDAPmapping\fR on a NIS master server causes that
-server to obtain NIS data from LDAP. See \fBypserv\fR(4). If
-\fB/var/yp/NISLDAPmapping\fR is present but the connection configuration file
-that is defined in \fB/etc/default/ypserv\fR cannot be found, a warning is
-logged. See \fBypserv\fR(1M).
-.sp
-.LP
-NIS slave servers always obtain their data from a NIS master server, whether or
-not that server is getting data from LDAP, and ignore the
-\fB/var/yp/NISLDAPmapping\fR file.
-.sp
-.LP
-A simple \fBNISLDAPmapping\fR file is created using \fBinityp2l\fR(1M). You can
-customize your \fBNISLDAPmapping\fR file as you require.
-.sp
-.LP
-Each attribute defined below can be specified
-in \fB/var/yp/NISLDAPmapping\fR or as an LDAP attribute. If both are
-specified, then the attribute in \fB/var/yp/NISLDAPmapping\fR (including empty
-values) takes precedence.
-.sp
-.LP
-A continuation is indicated by a '\e' (backslash) in the last position,
-immediately before the newline of a line. Characters are escaped, that is,
-exempted from special interpretation, when preceded by a backslash character.
-.sp
-.LP
-The '#' (hash) character starts a comment. White space is either ASCII space or
-a horizontal tab. In general, lines consist of optional white space, an
-attribute name, at least one white space character, and an attribute value.
-.SH EXTENDED DESCRIPTION
-.SS "File Syntax"
-Repeated fields, with separator characters, are described by the following
-syntax:
-.sp
-.ne 2
-.na
-\fBOne or more entries\fR
-.ad
-.RS 24n
-entry:entry:entry
-.sp
-.in +2
-.nf
-entry[":"...]
-.fi
-.in -2
-
-.RE
-
-.sp
-.ne 2
-.na
-\fBZero or more entries\fR
-.ad
-.RS 24n
-.sp
-.in +2
-.nf
-[entry":"...]
-.fi
-.in -2
-
-.RE
-
-.SS "Attributes"
-Attributes generally apply to one more more NIS maps. Map names can be
-specified either on their own, that is in \fBpasswd.byname\fR, in which case
-they apply to all domains, or for individual NIS domains, for example, in
-\fBpasswd.byname,example.sun.uk\fR. Where a map is mentioned in more than one
-attribute, both versions are applied. If any parts of the attributes are in
-conflict, the domain specific version takes precedence over the non-domain
-specific version.
-.sp
-.LP
-Each domain specific attributes must appear in \fBNISLDAPmapping\fR before any
-related non-domain specific attribute. If non-domain specific attributes appear
-first, behavior may be unpredictable. Errors are logged when non-domain
-specific attributes are found first.
-.sp
-.LP
-You can associate a group of map names with a \fBdatabaseId\fR. In effect, a
-macro is expanded to the group of names. Use this mechanism where the same
-group of names is used in many attributes or where domain specific map names
-are used. Then, you can make any changes to the domain name in one place.
-.sp
-.LP
-Unless otherwise noted, all elements of the syntaxes below may be surrounded by
-white space. Separator characters and white space must be escaped if they are
-part of syntactic elements.
-.sp
-.LP
-The following attributes are recognized.
-.sp
-.ne 2
-.na
-\fB\fBnisLDAPdomainContext\fR\fR
-.ad
-.sp .6
-.RS 4n
-The context to use for a NIS domain.
-.sp
-The syntax for \fBnisLDAPdomainContext\fR is:
-.sp
-.in +2
-.nf
-NISDomainName ":" context
-.fi
-.in -2
-
-The following is an example of the \fBnisLDAPdomainContext\fR attribute:
-.sp
-.in +2
-.nf
-domain.one : dc=site, dc=example, dc=com
-.fi
-.in -2
-
-The mapping file should define the context for each domain before any other
-attribute makes use of the \fBNISDomainName\fR specified for that domain.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnisLDAPyppasswddDomains\fR\fR
-.ad
-.sp .6
-.RS 4n
-Lists the domains for which password changes should be made. NIS password
-change requests do not specify the domains in which any given password should
-be changed. In traditional NIS this information is effectively hard coded in
-the NIS makefile.
-.sp
-The syntax for the \fBnisLDAPyppasswddDomains\fR attribute is:
-.sp
-.in +2
-.nf
-domainname
-.fi
-.in -2
-
-If there are multiple domains, use multiple \fBnisLDAPyppasswddDomain\fR
-entries with one domainname per entry.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnisLDAPdatabaseIdMapping\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets up an alias for a group of NIS map names. There is no default value.
-.sp
-The syntax for the \fBnisLDAPdatabaseIdMapping\fR attribute is:
-.sp
-.in +2
-.nf
-databaseId ":" ["["indexlist"]"] mapname[" "...]
-.fi
-.in -2
-
-where
-.sp
-.in +2
-.nf
-databaseId = Label identifying a (subset of a) NIS
- object for mapping purposes.
-indexlist = fieldspec[","...]
-fieldspec = fieldname "=" fieldvalue
-fieldname = The name of a entry field as defined in
- nisLDAPnameFields.
-fieldvalue = fieldvaluestring | \e" fieldvaluestring \e"
-.fi
-.in -2
-
-\fBindexlist\fR is used for those cases where it is necessary to select a
-subset of entries from a NIS map. The subset are those NIS entries that match
-the \fBindexlist\fR. If there are multiple specifications indexed for a
-particular NIS map, they are tried in the order retrieved until one matches.
-Note that retrieval order usually is unspecified for multi-valued LDAP
-attributes. Hence, if using indexed specifications when
-\fBnisLDAPdatabaseIdMapping\fR is retrieved from LDAP, make sure that the
-subset match is unambiguous.
-.sp
-If the \fBfieldvaluestring\fR contains white space or commas, it must either be
-surrounded by double quotes, or the special characters must be escaped.
-Wildcards are allowed in the \fBfieldvaluestring\fR. See Wildcards.
-.sp
-To associate the \fBpasswd.byname\fR and \fBpasswd.byuid\fR maps with the
-\fBpasswd databaseId\fR:
-.sp
-.in +2
-.nf
-passwd:passwd.byname passwd.byuid
-.fi
-.in -2
-
-The \fBpasswd\fR and \fBpasswd.adjunct\fR \fBdatabaseIds\fR receive special
-handling. In addition to its normal usage, \fBpasswd\fR defines which maps
-\fByppasswdd\fR is to update when a \fBpasswd\fR is changed. In addition to its
-normal usage \fBpasswd.adjunct\fR defines which maps \fByppasswdd\fR is to
-update when an adjunct \fBpasswd\fR is changed.
-.sp
-You may not alias a single map name to a different name, as the results are
-unpredictable.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnisLDAPentryTtl\fR\fR
-.ad
-.sp .6
-.RS 4n
-Establish TTLs for NIS entries derived from LDAP.
-.sp
-The syntax for the \fBnisLDAPentryTtl\fR attribute is:
-.sp
-.in +2
-.nf
-mapName[" "...]":"
- initialTTLlo ":" initialTTLhi ":" runningTTL
-.fi
-.in -2
-
-where
-.sp
-.ne 2
-.na
-\fB\fBinitialTTLlo\fR\fR
-.ad
-.RS 16n
-The lower limit for the initial \fBTTL\fR (in seconds) for data read from LDAP
-when the \fBypserv\fR starts. If the \fBinitialTTLhi\fR also is specified, the
-actual \fBinitialTTL\fR will be randomly selected from the interval
-\fBinitialTTLlo\fR to \fBinitialTTLhi\fR, inclusive. Leaving the field empty
-yields the default value of 1800 seconds.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBinitialTTLhi\fR\fR
-.ad
-.RS 16n
-The upper limit for the initial TTL. If left empty, defaults to 5400 seconds.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrunningTTL\fR\fR
-.ad
-.RS 16n
-The TTL (in seconds) for data retrieved from LDAP while the ypserv is running.
-Leave the field empty to obtain the default value of 3600 seconds.
-.RE
-
-If there is no specification of \fBTTL\fRs for a particular map, the default
-values are used.
-.sp
-If the \fBinitialTTLlo\fR and \fBinitialTTLhi\fR have the same value, the
-effect will be that all data known to the \fBypserv\fR at startup times out at
-the same time. Depending on NIS data lookup patterns, this could cause spikes
-in ypserv-to-LDAP traffic. In order to avoid that, you can specify different
-\fBinitialTTLlo\fR and \fBinitialTTLhi\fR values, and obtain a spread in
-initial TTLs.
-.sp
-The following is an example of the \fBnisLDAPentryTtl\fR attribute used to
-specify that entries in the NIS host maps read from LDAP should be valid for
-four hours. When \fBypserv\fR restarts, the disk database entries are valid for
-between two and three hours.
-.sp
-.in +2
-.nf
-hosts.byname hosts.byaddr:7200:10800:14400
-.fi
-.in -2
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnisLDAPobjectDN\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the connection between a group of NIS maps and the LDAP directory.
-This attribute also defines the 'order' of the NIS maps. When NIS maps are bulk
-copied to or from the DIT, they are processed in the same order as related
-\fBnisLDAPobjectDN\fR attributes appear in \fB/var/yp/NISLDAPmapping.\fR
-.sp
-The syntax for the \fBnisLDAPobjectDN\fR\ attribute is:
-.sp
-.in +2
-.nf
-mapName[" "...] ":" objectDN *( ";" objectDN )
-.fi
-.in -2
-
-where
-.sp
-.in +2
-.nf
-objectDN = readObjectSpec [":"[writeObjectSpec]]
-readObjectSpec = [baseAndScope [filterAttrValList]]
-writeObjectSpec = [baseAndScope [attrValList]]
-baseAndScope = [baseDN] ["?" [scope]]
-filterAttrValList = ["?" [filter | attrValList]]]
-scope = "base" | "one" | "sub"
-attrValList = attribute "=" value
- *("," attribute "=" value)
-.fi
-.in -2
-
-The \fBbaseDN\fR defaults to the value of the \fBnisLDAPdomainContext\fR
-attribute for the accessed domain. If the \fBbaseDN\fR ends in a comma, the
-\fBnisLDAPdomainContext\fR value is appended.
-.sp
-\fBscope\fR defaults to one. \fBscope\fR has no meaning and is ignored in a
-\fBwriteObjectSpec\fR.
-.sp
-The \fBfilter\fR is an LDAP search filter and has no default value.
-.sp
-The \fBattrValList\fR is a list of attribute and value pairs. There is no
-default value.
-.sp
-As a convenience, if an \fBattrValList\fR is specified in a
-\fBreadObjectSpec\fR, it is converted to a search filter by ANDing together the
-attributes and the values. For example, the attribute and value list:
-.sp
-.in +2
-.nf
-objectClass=posixAccount,objectClass=shadowAccount
-.fi
-.in -2
-
-is converted to the filter:
-.sp
-.in +2
-.nf
-(&(objectClass=posixAccount)\e
- (objectClass=shadowAccount))
-.fi
-.in -2
-
-Map entries are mapped by means of the relevant mapping rules in the
-\fBnisLDAPnameFields\fR and \fBnisLDAPattributeFromField\fR .
-.sp
-If a \fBwriteObjectSpec\fR is omitted, the effect is one of the following:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-If there is no trailing colon after the \fBreadObjectSpec\fR, then there is no
-write at all.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-If there is a colon after the \fBreadObjectSpec\fR, then \fBwriteObjectSpec\fR
-equals \fBreadObjectSpec\fR.
-.RE
-The following is an example of a \fBnisLDAPobjectDN\fR attribute declaration
-that gets the \fBhosts.byaddr\fR map entries from the \fBou=Hosts\fR container
-under the default search base and writes to the same place.
-.sp
-.in +2
-.nf
-hosts.byaddr:ou=Hosts,?one?objectClass=ipHost:
-.fi
-.in -2
-
-The following is an example of a \fBnisLDAPobjectDN\fR attribute declaration
-that obtains \fBpasswd\fR map entries from the \fBou=People\fR containers under
-the default search base, and also from \fBdc=another,dc=domain\fR.
-.sp
-.in +2
-.nf
-passwd:ou=People,?one?\e
- objectClass=shadowAccount,\e
- objectClass=posixAccount:;\e
- ou=People,dc=another,dc=domain,?one?\e
- objectClass=shadowAccount,\e
- objectClass=posixAccount
-.fi
-.in -2
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnisLDAPnameFields\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the content of entries in a NIS map and how they should be broken
-into named fields. \fBnisLDAPnameFields\fR is required because NIS
-maps do not store information in named fields.
-.sp
-The syntax for the \fBnisLDAPnameFields\fR attribute is as follows:
-.sp
-.in +2
-.nf
-"nisLDAPnameFields" mapName ":" "(" matchspec "," fieldNames ")"
-fieldName = nameOrArrayName[","...]
-nameOrArrayName = Name of field or 'array' of repeated fields.
-matchspec = \e" formatString \e"
-.fi
-.in -2
-
-\fBformatString\fR may contain a list of \fB%s\fR and \fB%a\fR elements each
-of which represents a single named field or a list of repeated fields. A
-\fB%a\fR field is interpreted as an IPv4 address or an IPv6 address in
-preferred format. If an IPv6 address in non preferred format is found, then it
-is converted and a warning is logged.
-.sp
-Where there are a list of repeated fields, the entire list is stored as one
-entry. The fields are broken up into individual entries, based on the internal
-separator, at a latter stage. Other characters represent separators which must
-be present. Any separator, including whitespace, specified by the
-\fBformatString\fR, may be surrounded by a number of whitespace and tab
-characters. The whitespace and tab characters are ignored.
-.sp
-Regardless of the content of this entry some \fBfieldNames\fR are reserved:
-.sp
-.ne 2
-.na
-\fB\fBrf_key\fR\fR
-.ad
-.RS 18n
-The DBM key value.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrf_ipkey\fR\fR
-.ad
-.RS 18n
-The DBM key value handled as an IP address. See the discussion of \fB%a\fR
-fields.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrf_comment\fR\fR
-.ad
-.RS 18n
-Everything following the first occurrence of a symbol. \fBrf_comment\fR is
-defined by \fBnisLDAPcommentChar\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrf_domain\fR\fR
-.ad
-.RS 18n
-The name of the domain in which the current NIS operation is being carried out.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrf_searchipkey\fR\fR
-.ad
-.RS 18n
-The \fBrf_searchkey\fR value handled as an IP address. See the discussion of
-\fB%a\fR fields above.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrf_searchkey\fR\fR
-.ad
-.RS 18n
-See the description under \fBnisLDAPattributeFromField\fR below.
-.RE
-
-For example, the \fBrpc.bynumber\fR map has the format:
-.sp
-.in +2
-.nf
-name number alias[" "...]
-.fi
-.in -2
-
-The NIS to LDAP system is instructed to break it into a name, a number, and an
-array of alias field by the following entry in the mapping file:
-.sp
-.in +2
-.nf
-nisLDAPnameFields rpc.bynumber : \e
- "%s %s %s", name,number,aliases)
-.fi
-.in -2
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnisLDAPsplitFields\fR\fR
-.ad
-.sp .6
-.RS 4n
-Defines how a field, or list of fields, named by \fBnisLDAPnameFields\fR is
-split into subfields. The original field is compared with each line of this
-attribute until one matches. When a match is found named subfields are
-generated. In latter operations subfield names can be used in the same way as
-other field names.
-.sp
-The syntax for the \fBnisLDAPsplitFields\fR attribute is as follows:
-.sp
-.in +2
-.nf
-"nisLDAPsplitFields" fieldName ":" splitSpec[","...]
-splitSpec = "(" matchspec "," subFieldNames ")"
-fieldName = Name of a field from nisLDAPnameFields
-subFieldNames = subFieldname[","...]
-matchspec = \e" formatString \e"
-.fi
-.in -2
-
-The netgroup \fBmemberTriples\fR can have format \fB(host, user, domain)\fR or
-\fBgroupname\fR. The format is specified by the attribute:
-.sp
-.in +2
-.nf
-nisLDAPsplitField memberTriple: \e
- ("(%s,%s,%s)", host, user, domain) , \e
- ("%s", group)
-.fi
-.in -2
-
-Later operations can then use field names \fBhost\fR, \fBuser\fR, \fBdomain\fR,
-\fBgroup\fR or \fBmemberTriple\fR. Because lines are processed in order, if
-\fBhost\fR, \fBuser\fR and \fBdomain\fR are found, \fBgroup\fR will not be
-generated.
-.sp
-Several maps and databaseIds may contain fields that are to be split in the
-same way. As a consequence, the names of fields to be split must be unique
-across all maps and databaseIds.
-.sp
-Only one level of splitting is supported. That is, a subfield cannot be split
-into further subfields.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnisLDAPrepeatedFieldSeparators\fR\fR
-.ad
-.sp .6
-.RS 4n
-Where there is a list of repeated, splittable fields,
-\fBnisLDAPrepeatedFieldSeparators\fR specifies which characters separate
-instances of the splittable field.
-.sp
-The syntax for the \fBnisLDAPrepeatedFieldSeparators\fR attribute is as
-follows:
-.sp
-.in +2
-.nf
-"nisLDAPrepeatedFieldSeparators" fieldName \e"sepChar[...]\e"
-sepChar = A separator character.
-.fi
-.in -2
-
-The default value is space or tab. If repeated splittable fields are adjacent,
-that is, there is no separating character, then the following should be
-specified:
-.sp
-.in +2
-.nf
-nisLDAPrepeatedFieldSeparators netIdEntry: ""
-.fi
-.in -2
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnisLDAPcommentChar\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies which character represents the start of the special comment field in
-a given NIS map. If this attribute is not present then the default comment
-character \fB#\fR is used.
-.sp
-To specify that a map uses an asterisk to mark the start of comments.
-.sp
-.in +2
-.nf
-nisLDAPcommentChar mapname : '*'
-.fi
-.in -2
-
-If a map cannot contain comments, then the following attribute should be
-specified.
-.sp
-.in +2
-.nf
-nisLDAPcommentChar mapname : ''
-.fi
-.in -2
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnisLDAPmapFlags\fR\fR
-.ad
-.sp .6
-.RS 4n
- Indicates if \fBYP_INTERDOMAIN\fR or \fBYP_SECURE\fR entries should be created
-in a map. Using \fBnisLDAPmapFlags\fR is equivalent to running
-\fBmakedbm\fR(1M) with the \fB-b\fR or the \fB-s\fR option. When a map is
-created from the contents of the DIT, the mapping file attribute is the only
-source for the \fBYP_INTERDOMAIN\fR or \fBYP_SECURE\fR entries.
-.sp
-The syntax for the \fBnisLDAPmapFlags\fR attribute is as follows:
-.sp
-.in +2
-.nf
-"nisLDAPmapFlags" mapname ":" ["b"]["s"]
-.fi
-.in -2
-
-By default neither entry is created.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnisLDAPfieldFromAttribute\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies how a NIS entries field values are derived from LDAP attribute
-values.
-.sp
-The syntax for the \fBnisLDAPfieldFromAttribute\fR attribute is as follows:
-.sp
-.in +2
-.nf
-mapName ":" fieldattrspec *("," fieldattrspec)
-.fi
-.in -2
-
-The format of \fBfieldattrspec\fR is shown below at Field and Attribute
-Conversion Syntax.
-.sp
-To map by direct copy and assignment the value of the \fBipHostNumber\fR
-attribute to the \fBaddr\fR named field, for example:
-.sp
-.in +2
-.nf
-addr=ipHostNumber
-.fi
-.in -2
-
-Formats for the named field and attribute conversion syntax are discussed
-below, including examples of complex attribute to field conversions.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnisLDAPattributeFromField\fR\fR
-.ad
-.sp .6
-.RS 4n
- Specifies how an LDAP attribute value is derived from a NIS entry field
-value.
-.sp
-The syntax for the \fBnisLDAPattributeFromField\fR attribute is as follows:
-.sp
-.in +2
-.nf
-mapName ":" fieldattrspec *("," fieldattrspec )
-.fi
-.in -2
-
-The format of \fBfieldattrspec\fR is shown below at Field and Attribute
-Conversion Syntax.
-.sp
-As a special case, if the \fBdn\fR attribute value derived from a
-\fBfieldattrspec\fR ends in a comma ("\fB,\fR"), the domains context from
-\fBnisLDAPdomainContext\fR is appended.
-.sp
-Use the following example to map the value of the \fBaddr\fR field to the
-\fBipHostNumber\fR attribute by direct copy and assignment:
-.sp
-.in +2
-.nf
-ipHostNumber=addr
-.fi
-.in -2
-
-All relevant attributes, including the \fBdn\fR, must be specified.
-.sp
-For every map it must be possible to rapidly find a DIT entry based on its key.
-There are some maps for which a NIS to LDAP mapping for the key is not
-desirable, so a key mapping cannot be specified. In these cases a mapping that
-uses the reserved \fBrf_searchkey\fR must be specified. Mappings that use this
-field name are ignored when information is mapped into the DIT.
-.RE
-
-.SS "Field and Attribute Conversion Syntax"
-The general format of a \fBfieldattrspec\fR is:
-.sp
-.in +2
-.nf
-fieldattrspec = lhs "=" rhs
-lhs = lval | namespeclist
-rhs = rval | [namespec]
-namespeclist = namespec | "(" namespec *("," namespec) ")"
-.fi
-.in -2
-
-.sp
-.LP
-The \fBlval\fR and \fBrval\fR syntax are defined below at Values. The format of
-a \fBnamespec\fR is:
-.sp
-.ne 2
-.na
-\fB\fBnamespec\fR\fR
-.ad
-.RS 16n
-.sp
-.in +2
-.nf
-["ldap:"] attrspec [searchTriple] | ["yp:"] fieldname
-[mapspec]
-.fi
-.in -2
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfieldname\fR\fR
-.ad
-.RS 16n
-.sp
-.in +2
-.nf
-field | "(" field ")"
-.fi
-.in -2
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBattrspec\fR\fR
-.ad
-.RS 16n
-.sp
-.in +2
-.nf
-attribute | "(" attribute ")"
-.fi
-.in -2
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsearchTriple\fR\fR
-.ad
-.RS 16n
-.sp
-.in +2
-.nf
-":" [baseDN] ["?" [scope] ["?" [filter]]]
-.fi
-.in -2
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBbaseDN\fR\fR
-.ad
-.RS 16n
-Base DN for search
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfilter\fR\fR
-.ad
-.RS 16n
-LDAP search filter
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmapspec\fR\fR
-.ad
-.RS 16n
-Map name
-.RE
-
-.sp
-.LP
-The repository specification in a \fBnamespec\fR defaults is as follows:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-For assignments to a field:
-.RS
-
-.sp
-.ne 2
-.na
-\fBon the \fBLHS\fR\fR
-.ad
-.RS 14n
-yp
-.RE
-
-.sp
-.ne 2
-.na
-\fBon the \fBRHS\fR\fR
-.ad
-.RS 14n
-ldap
-.RE
-
-.RE
-
-NIS field values on the \fBRHS\fR are those that exist before the NIS entry is
-modified.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-For assignments to an attribute:
-.RS
-
-.sp
-.ne 2
-.na
-\fBon the \fBLHS\fR\fR
-.ad
-.RS 14n
-ldap
-.RE
-
-.sp
-.ne 2
-.na
-\fBon the \fBRHS\fR\fR
-.ad
-.RS 14n
-yp
-.RE
-
-.RE
-
-Attribute values on the \fBRHS\fR are those that exist before the LDAP entry is
-modified.
-.RE
-.sp
-.LP
-When the field or attribute name is enclosed in parenthesis, it denotes a list
-of field or attribute values. For attributes, the meaning is the list of all
-attributes of that name, and the interpretation depends on the context. See the
-discussion at Values. The list specification is ignored when a
-\fBsearchTriple\fR or \fBmapspec\fR is supplied.
-.sp
-.LP
-For fields, the \fBfieldname\fR syntax is used to map multiple attribute
-instances to multiple NIS entries.
-.sp
-.LP
-The \fBsearchTriple\fR can be used to specify an attribute from a location
-other than the read or write target. The defaultvalues are as follows:
-.sp
-.ne 2
-.na
-\fB\fBbaseDN\fR\fR
-.ad
-.RS 10n
-If \fBbaseDN\fR is omitted, the default is the current \fBobjectDN\fR. If the
-\fBbaseDN\fR ends in a comma, the context of the domain is appended from
-\fBnisLDAPdomainContext\fR .
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBscope\fR\fR
-.ad
-.RS 10n
-one
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfilter\fR\fR
-.ad
-.RS 10n
-Empty
-.RE
-
-.sp
-.LP
-Similarly, the \fBmapspec\fR can be used to specify a field value from a NIS
-map other than the one implicitly indicated by the \fBmapName\fR. If
-\fBsearchTriple\fR or \fBmapspec\fR is explicitly specified in a
-\fBnamespec\fR, the retrieval or assignment, whether from or to LDAP or NIS, is
-performed without checking if read and write are enabled for the LDAP container
-or NIS map.
-.sp
-.LP
-The omission of the \fBnamespec\fR in an \fBrhs\fR is only allowed if the
-\fBlhs\fR is one or more attributes. The effect is to delete the specified
-attribute(s). In all other situations, an omitted \fBnamespec\fR means that the
-rule is ignored.
-.sp
-.LP
-The \fBfilter\fR can be a value. See Values. For example, to find the
-\fBipHostNumber\fRthat uses the \fBcn\fR, you specify the following in the
-\fBfilter\fR field:
-.sp
-.in +2
-.nf
-ldap:ipHostNumber:?one?("cn=%s", (cname, "%s.*"))
-.fi
-.in -2
-
-.sp
-.LP
-In order to remove ambiguity, the unmodified value of a single field or
-attribute must be specified as the following when used in the \fBfilter\fR
-field.
-.sp
-.in +2
-.nf
-("%s", namespec)
-.fi
-.in -2
-
-.sp
-.LP
-If the \fBfilter\fR is not specified, the scope will be base, and the
-\fBbaseDN\fR is assumed to be the \fBDN\fR of the entry that contains the
-attribute to be retrieved or modified. To use previously existing field or
-attribute values in the mapping rules requires a lookup to find those values.
-Obviously, this adds to the time required to perform the modification. Also,
-there is a window between the time when a value is retrieved and then slightly
-later stored back. If the values have changed in the meantime, the change may
-be overwritten.
-.sp
-.LP
-When \fBfieldattrspecs\fR are grouped into rule sets, in the value of a
-\fBnisLDAPfieldFromAttribute\fR or \fBnisLDAPattributeFromField\fR attribute,
-the evaluation of the \fBfieldattrspecs\fR proceed in the listed order.
-However, evaluation may be done in parallel for multiple \fBfieldattrspecs\fR.
-If there is an error when evaluating a certain \fBfieldattrspec\fR, including
-retrieval or assignment of entry or field values, the extent to which the other
-\fBfieldattrspec\fR rules are evaluated is unspecified.
-.SS "Wildcards"
-Where wildcard support is available, it is of the following limited form:
-.sp
-.ne 2
-.na
-\fB\fB*\fR\fR
-.ad
-.RS 9n
-Matches any number of characters
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB[x]\fR\fR
-.ad
-.RS 9n
-Matches the character x
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB[x-y]\fR\fR
-.ad
-.RS 9n
-Matches any character in the range x to y, inclusive
-.RE
-
-.sp
-.LP
-Combinations such as \fB[a-cA-C0123]\fR are also allowed, which would match any
-one of a, b, c, A, B, C, 0, 1, 2, or 3.
-.SS "Substring Extraction"
-.in +2
-.nf
-substringextract = "(" namespec "," matchspec ")"
-name = field or attribute name
-matchspec =
-.fi
-.in -2
-
-.sp
-.LP
-The \fBmatchspec\fR is a string like the \fBsscanf\fR(3C) format string, except
-that there may be at most one format specifier, a single \fB%s\fR. The output
-value of the \fBsubstringextract\fR is the substring that matches the location
-of the \fB%s\fR.
-.sp
-.LP
-If there is no \fB%s\fR in the formatstring, it must instead be a single
-character, which is assumed to be a field separator for the \fBnamespec\fR. The
-output values are the field values. Wild cards are supported. If there is no
-match, the output value is the empty string, " ".
-.sp
-.LP
-For example, if the \fBfieldcname\fR has the value
-\fBuser.some.domain.name.\fR, the value of the expression:
-.sp
-.in +2
-.nf
-(cname, "%s.*")
-.fi
-.in -2
-
-.sp
-.LP
-is \fBuser\fR, which can be used to extract the user name from a NIS principal
-name.
-.sp
-.LP
-Similarly, use this expression to extract the third of the colon-separated
-fields of the shadow field:
-.sp
-.in +2
-.nf
-(shadow, "*:*:%s:*")
-.fi
-.in -2
-
-.sp
-.LP
-This form can be used to extract all of the shadow fields. However, a simpler
-way to specify that special case is:
-.sp
-.in +2
-.nf
-(shadow, ":")
-.fi
-.in -2
-
-.SS "Values"
-.in +2
-.nf
-lval = "(" formatspec "," namespec *("," namespec) ")"
-rval = "(" formatspec ["," namelist ["," elide] ] ")"
-
-namelist = name_or_sse *( "," name_or_sse)
-name_or_sse = namespec | removespec | substringextract
-removespec = list_or_name "-" namespec
-list_or_name = "(" namespec ")" | namespec
-formatspec =
-formatstring = A string combining text and % field specifications
-elide =
-singlechar = Any character
-.fi
-.in -2
-
-.sp
-.LP
-The syntax above is used to produce \fBrval\fR values that incorporate field or
-attribute values, in a manner like \fBsprintf\fR(3C), or to perform assignments
-to \fBlval\fR like \fBsscanf\fR(3C). One important restriction is that the
-format specifications,\fB%\fR plus a single character, use the designations
-from \fBber_printf\fR(3LDAP). Thus, while \fB%s\fR is used to extract a string
-value, \fB%i\fR causes BER conversion from an integer. Formats other than
-\fB%s\fR, for instance, \fB%i\fR, are only meaningfully defined in simple
-format strings without any other text.
-.sp
-.LP
-The following \fBber_printf()\fR format characters are recognized:
-.sp
-.in +2
-.nf
-b i n o s
-.fi
-.in -2
-
-.sp
-.LP
-If there are too few format specifiers, the format string may be repeated as
-needed.
-.sp
-.LP
-When used as an \fBlval\fR, there is a combination of pattern matching and
-assignment, possibly to multiple fields or attributes.
-.sp
-.LP
-In an assignment to an attribute, if the value of the \fBaddr\fR field is
-\fB1.2.3.4\fR, the \fBrval\fR:
-.sp
-.in +2
-.nf
-("ipNetworkNumber=%s,", addr)
-.fi
-.in -2
-
-.sp
-.LP
-produces the value \fBipNetworkNumber=1.2.3.4,\fR, while:
-.sp
-.in +2
-.nf
-("(%s,%s,%s)", host, user, domain)
-.fi
-.in -2
-
-.sp
-.LP
-results in:
-.sp
-.in +2
-.nf
-(assuming host="xyzzy", user="-", domain="x.y.z")
-"(xyzzy,-,x.y.z)"
-.fi
-.in -2
-
-.sp
-.LP
-The elide character feature is used with attribute lists. So:
-.sp
-.in +2
-.nf
-("%s,", (mgrprfc822mailmember), ",")
-.fi
-.in -2
-
-.sp
-.LP
-concatenates all \fBmgrprfc822mailmember\fR values into one comma-separated
-string, and then elides the final trailing comma. Thus, for
-.sp
-.in +2
-.nf
-mgrprfc822mailmember=usera
-mgrprfc822mailmember=userb
-mgrprfc822mailmember=userc
-.fi
-.in -2
-
-.sp
-.LP
-the value would be:
-.sp
-.in +2
-.nf
-usera,userb,userc
-.fi
-.in -2
-
-.sp
-.LP
-As a special case, to combine an \fBLHS\fR extraction with an \fBRHS\fR
-implicit list creates multiple entries and values. So
-.sp
-.in +2
-.nf
-("(%s,%s,%s)", host, user, domain)=(nisNetgroupTriple)
-.fi
-.in -2
-
-.sp
-.LP
-creates one NIS entry for each \fBnisNetgroupTriple\fR value.
-.sp
-.LP
-The \fB\&'removespec'\fR form is used to exclude previously assigned fields
-values from a list. So, if an LDAP entry contains:
-.sp
-.in +2
-.nf
-name: foo
-cn: foo
-cn: foo1
-cn: foo2
-.fi
-.in -2
-
-.sp
-.LP
-and the mapping file specifies :
-.sp
-.in +2
-.nf
-myName = name, \e
-myAliases = ("%s ", (cn) - yp:myName, " ")
-.fi
-.in -2
-
-.sp
-.LP
-then the following assignments are carried out:
-.RS +4
-.TP
-1.
-Assign value \fBfoo\fR to \fBmyName\fR
-.RE
-.RS +4
-.TP
-2.
-Assign value \fBfoo foo1 foo2\fR to \fBmyAliases\fR
-.RE
-.RS +4
-.TP
-3.
-Remove value of \fBmyName\fR from value \fBmyAliases\fR
-.RE
-.sp
-.LP
-This results in the field values \fBmyName\fR is set to \fBfoo\fR, and
-\fBmyAliases\fR is set to \fBfoo1 foo2\fR.
-.SS "Assignments"
-The assignment syntax, also found at Field and Attribute Conversion Syntax, is
-as follows:
-.sp
-.in +2
-.nf
-fieldattrspec = lhs "=" rhs
-lhs = lval | namespeclist
-rhs = rval | namespec
-namespeclist = namespec | "(" namespec *("," namespec) ")"
-.fi
-.in -2
-
-.sp
-.LP
-The general form of a simple assignment, which is a one-to-one mapping of field
-to attribute, is:
-.sp
-.in +2
-.nf
-("%s", fieldname)=("%s", attrname)
-.fi
-.in -2
-
-.sp
-.LP
-As a convenient shorthand, this can also be written as:
-.sp
-.in +2
-.nf
-fieldname=attrname
-.fi
-.in -2
-
-.sp
-.LP
-A list specification, which is a name enclosed in parenthesis, can be used to
-make many-to-many assignments. The expression:
-.sp
-.in +2
-.nf
-(fieldname)=(attrname)
-.fi
-.in -2
-
-.sp
-.LP
-where there are multiple instances of \fBattrname\fR, creates one NIS entry for
-each such instance, differentiated by their \fBfieldname\fR values. The
-following combinations of lists are allowed, but they are not particularly
-useful:
-.sp
-.ne 2
-.na
-\fB\fB(attrname)=(fieldname)\fR\fR
-.ad
-.RS 26n
-Equivalent to \fBattrname=fieldname\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBattrname=(fieldname)\fR\fR
-.ad
-.RS 26n
-Equivalent to \fBattrname=fieldname\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB(fieldname)=attrname\fR\fR
-.ad
-.RS 26n
-Equivalent to \fBfieldname=attrname\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfieldname=(attrname)\fR\fR
-.ad
-.RS 26n
-Equivalent to \fBfieldname=attrname\fR
-.RE
-
-.sp
-.LP
-If a multi-valued \fBRHS\fR is assigned to a single-valued \fBLHS\fR, the
-\fBLHS\fR value will be the first of the \fBRHS\fR values. If the \fBRHS\fR is
-an attribute list, the first attribute is the first one returned by the LDAP
-server when queried. Otherwise, the definition of "first" is implementation
-dependent.
-.sp
-.LP
-Finally, the \fBLHS\fR can be an explicit list of fields or attributes, such
-as:
-.sp
-.in +2
-.nf
-(name1,name2,name3)
-.fi
-.in -2
-
-.sp
-.LP
-If the \fBRHS\fR is single-valued, this assigns the \fBRHS\fR value to all
-entities in the list. If the \fBRHS\fR is multi-valued, the first value is
-assigned to the first entity of the list, the second value to the second
-entity, and so on. Excess values or entities are silently ignored.
-.SH EXAMPLES
-\fBExample 1 \fRAssigning an Attribute Value to a Field
-.sp
-.LP
-The following example illustrates how to assign the value of the
-\fBipHostNumber\fR attribute to the \fBaddr\fR field
-
-.sp
-.in +2
-.nf
-addr=ipHostNumber
-.fi
-.in -2
-
-.LP
-\fBExample 2 \fRCreating Multiple NIS Entries from Multi-Valued LDAP Attributes
-.sp
-.LP
-An LDAP entry with:
-
-.sp
-.in +2
-.nf
-cn=name1
-cn=name2
-cn=name3
-.fi
-.in -2
-
-.sp
-.LP
-and the following assignments:
-
-.sp
-.in +2
-.nf
-cname=cn
-(name)=(cn)
-.fi
-.in -2
-
-.sp
-.LP
-creates three NIS entries. Other attributes and fields are omitted for clarity.
-
-.sp
-.in +2
-.nf
-cname=name1, name=name1
-cname=name1, name=name2
-cname=name1, name=name3
-.fi
-.in -2
-
-.LP
-\fBExample 3 \fRAssigning String Constants
-.sp
-.LP
-The following expression sets the \fBpasswd\fR field to x:
-
-.sp
-.in +2
-.nf
-passwd=("x")
-.fi
-.in -2
-
-.LP
-\fBExample 4 \fRSplitting Field Values to Multi-Valued Attributes
-.sp
-.LP
-The \fBexpansion\fR field contains a comma-separated list of alias member
-names. In the following example, the expression assigns each member name to an
-instance of \fBmgrprfc822mailmember\fR:
-
-.sp
-.in +2
-.nf
-(mgrprfc822mailmember)=(expansion, ",")
-.fi
-.in -2
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/var/yp/NISLDAPmapping\fR\fR
-.ad
-.RS 26n
-Mapping file used by the NIS server components
-.RE
-
-.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Obsolete
-.TE
-
-.SH SEE ALSO
-\fBinityp2l\fR(1M), \fBmakedbm\fR(1M), \fBypserv\fR(1M),
-\fBber_printf\fR(3LDAP), \fBsprintf\fR(3C), \fBsscanf\fR(3C),
-\fBypserv\fR(4), \fBattributes\fR(5)
-.sp
-.LP
-\fISystem Administration Guide: Naming and Directory Services (DNS, NIS, and
-LDAP)\fR
diff --git a/usr/src/man/man4/a.out.4 b/usr/src/man/man4/a.out.4
deleted file mode 100644
index 3f4a3a0f8b..0000000000
--- a/usr/src/man/man4/a.out.4
+++ /dev/null
@@ -1,108 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
-.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH A.OUT 4 "Aug 24, 2009"
-.SH NAME
-a.out \- Executable and Linking Format (ELF) files
-.SH SYNOPSIS
-.LP
-.nf
-\fB#include <elf.h>\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The file name \fBa.out\fR is the default output file name from the link editor,
-\fBld\fR(1). The link editor will make an \fBa.out\fR executable if there were
-no errors in linking. The output file of the assembler, \fBas\fR(1), also
-follows the format of the \fBa.out\fR file although its default file name is
-different.
-.sp
-.LP
-Programs that manipulate ELF files may use the library that \fBelf\fR(3ELF)
-describes. An overview of the file format follows. For more complete
-information, see the references given below.
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-Linking View Execution View
-_
-ELF header ELF header
-_
-Program header table Program header table
-\fIoptional\fR
-_
-Section 1 Segment 1
-_
-\&...
-_
-Section \fIn\fR Segment 2
-_
-\&...
-_
-\&... \&...
-_
-Section header table Section header table
- \fIoptional\fR
-.TE
-
-.sp
-.LP
-An ELF header resides at the beginning and holds a ``road map'' describing the
-file's organization. Sections hold the bulk of object file information for the
-linking view: instructions, data, symbol table, relocation information, and so
-on. Segments hold the object file information for the program execution view.
-As shown, a segment may contain one or more sections.
-.sp
-.LP
-A program header table, if present, tells the system how to create a process
-image. Files used to build a process image (execute a program) must have a
-program header table; relocatable files do not need one. A section header table
-contains information describing the file's sections. Every section has an entry
-in the table; each entry gives information such as the section name, the
-section size, etc. Files used during linking must have a section header table;
-other object files may or may not have one.
-.sp
-.LP
-Although the figure shows the program header table immediately after the ELF
-header, and the section header table following the sections, actual files may
-differ. Moreover, sections and segments have no specified order. Only the ELF
-header has a fixed position in the file.
-.sp
-.LP
-When an \fBa.out\fR file is loaded into memory for execution, three logical
-segments are set up: the text segment, the data segment (initialized data
-followed by uninitialized, the latter actually being initialized to all 0's),
-and a stack. The text segment is not writable by the program; if other
-processes are executing the same \fBa.out\fR file, the processes will share a
-single text segment.
-.sp
-.LP
-The data segment starts at the next maximal page boundary past the last text
-address. If the system supports more than one page size, the ``maximal page''
-is the largest supported size. When the process image is created, the part of
-the file holding the end of text and the beginning of data may appear twice.
-The duplicated chunk of text that appears at the beginning of data is never
-executed; it is duplicated so that the operating system may bring in pieces of
-the file in multiples of the actual page size without having to realign the
-beginning of the data section to a page boundary. Therefore, the first data
-address is the sum of the next maximal page boundary past the end of text plus
-the remainder of the last text address divided by the maximal page size. If the
-last text address is a multiple of the maximal page size, no duplication is
-necessary. The stack is automatically extended as required. The data segment is
-extended as requested by the \fBbrk\fR(2) system call.
-.SH SEE ALSO
-.sp
-.LP
-\fBas\fR(1), \fBld\fR(1), \fBbrk\fR(2), \fBelf\fR(3ELF)
-.sp
-.LP
-\fIANSI C Programmer's Guide\fR
diff --git a/usr/src/man/man4/admin.4 b/usr/src/man/man4/admin.4
deleted file mode 100644
index 9163dfc5fb..0000000000
--- a/usr/src/man/man4/admin.4
+++ /dev/null
@@ -1,481 +0,0 @@
-'\" te
-.\" Copyright (c) 2017 Peter Tribble.
-.\" Copyright 1989 AT&T Copyright (c) 1997, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH ADMIN 4 "May 13, 2017"
-.SH NAME
-admin \- installation defaults file
-.SH DESCRIPTION
-.LP
-\fBadmin\fR is a generic name for an \fBASCII\fR file that defines default
-installation actions by assigning values to installation parameters. For
-example, it allows administrators to define how to proceed when the package
-being installed already exists on the system.
-.sp
-.LP
-\fB/var/sadm/install/admin/default\fR is the default \fBadmin\fR file delivered
-with this release. The default file is not writable, so to assign values
-different from this file, create a new \fBadmin\fR file. There are no naming
-restrictions for \fBadmin\fR files. Name the file when installing a package
-with the \fB-a\fR option of \fBpkgadd\fR(1M). If the \fB-a\fR option is not
-used, the default \fBadmin\fR file is used.
-.sp
-.LP
-Each entry in the \fBadmin\fR file is a line that establishes the value of a
-parameter in the following form:
-.sp
-.LP
-\fIparam\fR\fB=\fR\fIvalue\fR
-.sp
-.LP
-All of the parameters listed below can be defined in an \fBadmin\fR file, but
-it is not required to assign values to all of these. If a value is not
-assigned, \fBpkgadd\fR(1M) asks the installer how to proceed.
-.sp
-.LP
-The valid parameters and their possible values are shown below except as noted.
-They can be specified in any order. Any of these parameters (except the
-\fBmail\fR parameter) can be assigned the value \fBask\fR,
-which means that, when the parameter is reached during the installation
-sequence, the installer is notified and asked to supply instructions (see
-\fBNOTES\fR).
-.sp
-.ne 2
-.na
-\fB\fBbasedir\fR\fR
-.ad
-.RS 30n
-Indicates the base directory where relocatable packages are to be installed. If
-there is no \fBbasedir\fR entry in the file, the installer will be prompted for
-a path name, as if the file contained the entry \fBbasedir=ask\fR. This
-parameter can also be set to \fBdefault\fR (entry is \fBbasedir=default\fR). In
-this instance, the package is installed into the base directory specified by
-the \fBBASEDIR\fR parameter in the \fBpkginfo\fR(4) file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmail\fR\fR
-.ad
-.RS 30n
-Defines a list of users to whom mail should be sent following installation of a
-package. If the list is empty, no mail is sent. If the parameter is not present
-in the \fBadmin\fR file, the default value of \fBroot\fR is used. The \fBask\fR
-value cannot be used with this parameter.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrunlevel\fR\fR
-.ad
-.RS 30n
-Indicates resolution if the run level is not correct for the installation or
-removal of a package. Options are:
-.sp
-.ne 2
-.na
-\fB\fBnocheck\fR\fR
-.ad
-.RS 11n
-Do not check for run level.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBquit\fR\fR
-.ad
-.RS 11n
-Abort installation if run level is not met.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBconflict\fR\fR
-.ad
-.RS 30n
-Specifies what to do if an installation expects to overwrite a previously
-installed file, thus creating a conflict between packages. Options are:
-.sp
-.ne 2
-.na
-\fB\fBnocheck\fR\fR
-.ad
-.RS 12n
-Do not check for conflict; files in conflict will be overwritten.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBquit\fR\fR
-.ad
-.RS 12n
-Abort installation if conflict is detected.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnochange\fR\fR
-.ad
-.RS 12n
-Override installation of conflicting files; they will not be installed.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsetuid\fR\fR
-.ad
-.RS 30n
-Checks for executables which will have setuid or setgid bits enabled after
-installation. Options are:
-.sp
-.ne 2
-.na
-\fB\fBnocheck\fR\fR
-.ad
-.RS 12n
-Do not check for setuid executables.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBquit\fR\fR
-.ad
-.RS 12n
-Abort installation if setuid processes are detected.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnochange\fR\fR
-.ad
-.RS 12n
-Override installation of setuid processes; processes will be installed without
-setuid bits enabled.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBaction\fR\fR
-.ad
-.RS 30n
-Determines if action scripts provided by package developers contain possible
-security impact. Options are:
-.sp
-.ne 2
-.na
-\fB\fBnocheck\fR\fR
-.ad
-.RS 11n
-Ignore security impact of action scripts.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBquit\fR\fR
-.ad
-.RS 11n
-Abort installation if action scripts may have a negative security impact.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpartial\fR\fR
-.ad
-.RS 30n
-Checks to see if a version of the package is already partially installed on the
-system. Options are:
-.sp
-.ne 2
-.na
-\fB\fBnocheck\fR\fR
-.ad
-.RS 11n
-Do not check for a partially installed package.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBquit\fR\fR
-.ad
-.RS 11n
-Abort installation if a partially installed package exists.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBinstance\fR\fR
-.ad
-.RS 30n
-Determines how to handle installation if a previous version of the package
-(including a partially installed instance) already exists. Options are:
-.sp
-.ne 2
-.na
-\fB\fBquit\fR\fR
-.ad
-.RS 13n
-Exit without installing if an instance of the package already exists (does not
-overwrite existing packages).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBoverwrite\fR\fR
-.ad
-.RS 13n
-Overwrite an existing package if only one instance exists. If there is more
-than one instance, but only one has the same architecture, it overwrites that
-instance. Otherwise, the installer is prompted with existing instances and
-asked which to overwrite.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBunique\fR\fR
-.ad
-.RS 13n
-Do not overwrite an existing instance of a package. Instead, a new instance of
-the package is created. The new instance will be assigned the next available
-instance identifier.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBidepend\fR\fR
-.ad
-.RS 30n
-Controls resolution if the package to be installed depends on other packages
-and if other packages depend on the one to be installed. Options are:
-.sp
-.ne 2
-.na
-\fB\fBnocheck\fR\fR
-.ad
-.RS 11n
-Do not check package dependencies.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBquit\fR\fR
-.ad
-.RS 11n
-Abort installation if package dependencies are not met.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrdepend\fR\fR
-.ad
-.RS 30n
-Controls resolution if other packages depend on the package to be removed.
-Options are:
-.sp
-.ne 2
-.na
-\fB\fBnocheck\fR\fR
-.ad
-.RS 11n
-Do not check package or product dependencies.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBquit\fR\fR
-.ad
-.RS 11n
-Abort removal if package or product dependencies are not met.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBspace\fR\fR
-.ad
-.RS 30n
-Controls resolution if disk space requirements for package are not met. Options
-are:
-.sp
-.ne 2
-.na
-\fB\fBnocheck\fR\fR
-.ad
-.RS 11n
-Do not check space requirements (installation fails if it runs out of space).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBquit\fR\fR
-.ad
-.RS 11n
-Abort installation if space requirements are not met.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrscriptalt=root | noaccess\fR\fR
-.ad
-.RS 30n
-Determines the user that will run request scripts. This parameter can have
-either of the values described below. See \fBpkgadd\fR(1M) for details on the
-conditions under which this parameter is useful.
-.sp
-.ne 2
-.na
-\fB\fBroot\fR\fR
-.ad
-.RS 12n
-Run request script as user \fBinstall\fR, if such a user exists, with the
-privileges of that user. Otherwise, run script as user \fBroot\fR, with UID
-equal to 0 and with all/zone privileges. (See \fBzones\fR(5).)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnoaccess\fR\fR
-.ad
-.RS 12n
-Run request script as user \fBinstall\fR, if such a user exists, with the
-privileges of that user. Otherwise, run script as user \fBnoaccess\fR, with the
-basic privileges of the unprivileged user \fBnoaccess\fR.
-.RE
-
-If this parameter is not present or has a null value, the user \fBnoaccess\fR
-is assumed. Likewise, if this parameter is set to anything other than the
-values described here, a warning is issued, and \fBnoaccess\fR is assumed.
-\fBrscriptalt\fR is not present in the default \fBadmin\fR file,
-\fB/var/sadm/install/admin/default\fR. In this case, request scripts are run as
-the user \fBnoaccess\fR.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRDefault \fBadmin\fR File
-.sp
-.LP
-The default \fBadmin\fR file, named \fBdefault\fR, is shipped with user-,
-group-, and world-read privileges (444). Its contents are as follows:
-
-.sp
-.in +2
-.nf
-mail=
-instance=unique
-partial=ask
-runlevel=ask
-idepend=ask
-rdepend=ask
-space=ask
-setuid=ask
-conflict=ask
-action=ask
-basedir=default
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRSample \fBadmin\fR file.
-.sp
-.LP
-Below is a sample \fBadmin\fR file.
-
-.sp
-.in +2
-.nf
-basedir=default
-runlevel=quit
-conflict=quit
-setuid=quit
-action=quit
-partial=quit
-instance=unique
-idepend=quit
-rdepend=quit
-space=quit
-.fi
-.in -2
-.sp
-
-.SH FILES
-.LP
-The default \fBadmin\fR file is consulted during package installation when no
-other \fBadmin\fR file is specified.
-.sp
-.ne 2
-.na
-\fB\fB/var/sadm/install/admin/default\fR\fR
-.ad
-.sp .6
-.RS 4n
-default \fBadmin\fR file
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-.LP
-\fBpkgadd\fR(1M), \fBpkginfo\fR(4), \fBattributes\fR(5), \fBzones\fR(5)
-.SH NOTES
-.LP
-The value \fBask\fR should not be defined in an \fBadmin\fR file that will be
-used for non-interactive installation (because, by definition, there is no
-installer interaction). Doing so causes installation to fail at the point when
-input is needed.
diff --git a/usr/src/man/man4/alias.4 b/usr/src/man/man4/alias.4
deleted file mode 100644
index 047cd84823..0000000000
--- a/usr/src/man/man4/alias.4
+++ /dev/null
@@ -1,53 +0,0 @@
-'\" te
-.\" Copyright (c) 2001, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH ALIAS 4 "Oct 2, 2001"
-.SH NAME
-alias \- alias table file of encoding names
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/iconv/alias\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-This file contains the alias table of encoding names for \fBiconv_open\fR(3C).
-.sp
-.LP
-The format of the alias table is as follows:
-.sp
-.in +2
-.nf
-"%s %s\en", <variant encoding name>, <canonical encoding name>
-.fi
-.in -2
-
-.sp
-.LP
-The string specified for the variant encoding name is case-insensitive. A line
-beginning with '#' is treated as a comment.
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBiconv\fR(3C), \fBiconv_close\fR(3C), \fBiconv_open\fR(3C),
-\fBattributes\fR(5)
diff --git a/usr/src/man/man4/aliases.4 b/usr/src/man/man4/aliases.4
deleted file mode 100644
index 9d1c6705a1..0000000000
--- a/usr/src/man/man4/aliases.4
+++ /dev/null
@@ -1,450 +0,0 @@
-'\" te
-.\" Copyright (c) 2003 Sun Microsystems, Inc. - All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH ALIASES 4 "Feb 25, 2017"
-.SH NAME
-aliases, addresses, forward \- addresses and aliases for sendmail
-.SH SYNOPSIS
-.LP
-.nf
-/etc/mail/aliases
-.fi
-
-.LP
-.nf
-/etc/mail/aliases.db
-.fi
-
-.LP
-.nf
-/etc/mail/aliases.dir
-.fi
-
-.LP
-.nf
-/etc/mail/aliases.pag
-.fi
-
-.LP
-.nf
-~/.forward
-.fi
-
-.SH DESCRIPTION
-.LP
-These files contain mail addresses or aliases, recognized by \fBsendmail\fR(1M)
-for the local host:
-.sp
-.ne 2
-.na
-\fB/etc/passwd\fR
-.ad
-.sp .6
-.RS 4n
-Mail addresses (usernames) of local users.
-.RE
-
-.sp
-.ne 2
-.na
-\fB/etc/mail/aliases\fR
-.ad
-.sp .6
-.RS 4n
-Aliases for the local host, in \fBASCII\fR format. Root can edit this file to
-add, update, or delete local mail aliases.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/mail/aliases.\fR{\fIdir\fR , \fIpag\fR}\fR
-.ad
-.sp .6
-.RS 4n
-The aliasing information from \fB/etc/mail/aliases\fR, in binary \fBndbm\fR(3C)
-format for use by \fBsendmail\fR(1M). The program \fBnewaliases\fR(1M)
-maintains these files.
-.RE
-
-.sp
-.ne 2
-.na
-\fB/etc/mail/aliases.db\fR
-.ad
-.sp .6
-.RS 4n
- The aliasing information from \fB/etc/mail/aliases\fR, in binary, Berkeley
-DataBase format for use by \fBsendmail\fR(1M). The program maintains these
-files.
-.sp
-Depending on the configuration of the AliasFile option in
-\fB/etc/mail/sendmail.cf\fR, either the single file \fBaliases.db\fR or the
-pair of files \fBaliases.\fR{dir, pag} is generated by \fBnewaliases\fR(1M). As
-shipped with Solaris, \fBsendmail\fR(1M) supports both formats. If neither is
-specified, the Berkeley DataBase format which generates the single \fB\&.db\fR
-file is used.
-.RE
-
-.sp
-.ne 2
-.na
-\fB~/.forward\fR
-.ad
-.sp .6
-.RS 4n
-Addresses to which a user's mail is forwarded (see \fBAutomatic Forwarding\fR).
-.RE
-
-.sp
-.LP
-In addition, the \fBNIS\fR name services aliases map \fImail.aliases\fR
-contains addresses and aliases
-available for use across the network.
-.SS "Addresses"
-.LP
-As distributed, \fBsendmail\fR(1M) supports the following types of addresses:
-.SS "Local Usernames"
-.in +2
-.nf
-\fIusername\fR
-.fi
-.in -2
-
-.sp
-.LP
-Each local \fIusername\fR is listed in the local host's \fB/etc/passwd\fR file.
-.SS "Local Filenames"
-.in +2
-.nf
-\fIpathname\fR
-.fi
-.in -2
-
-.sp
-.LP
-Messages addressed to the absolute \fIpathname\fR of a file are appended to
-that file.
-.SS "Commands"
-.in +2
-.nf
-\fB|\fR\fBcommand\fR
-.fi
-.in -2
-
-.sp
-.LP
-If the first character of the address is a vertical bar (\fB\||\|\fR),
-\fBsendmail\fR(1M) pipes the message to the standard input of the \fBcommand\fR
-the bar precedes.
-.SS "Internet-standard Addresses"
-.in +2
-.nf
-\fIusername\fR\fB@\fR\fIdomain\fR
-.fi
-.in -2
-
-.sp
-.LP
-If \fIdomain\fR does not contain any `\fB\&.\fR' (dots), then it is interpreted
-as the name of a host in the current domain. Otherwise, the message is passed
-to a \fImailhost\fR that determines how to get to the specified domain. Domains
-are divided into subdomains separated by dots, with the top-level domain on the
-right.
-.sp
-.LP
-For example, the full address of John Smith could be:
-.sp
-.in +2
-.nf
-\fBjs@jsmachine.Podunk-U.EDU\fR
-.fi
-.in -2
-
-.sp
-.LP
-if he uses the machine named \fBjsmachine\fR at Podunk University.
-.SS "\fBuucp\fR Addresses"
-.in +2
-.nf
-\&.\|.\|. [\fIhost\fR\fB!\fR] \fIhost\fR\fB!\fR\fIusername\fR
-.fi
-.in -2
-
-.sp
-.LP
-These are sometimes mistakenly referred to as ``Usenet'' addresses.
-\fBuucp\fR(1C) provides links to numerous sites throughout the world for the
-remote copying of files.
-.sp
-.LP
-Other site-specific forms of addressing can be added by customizing the
-\fBsendmail.cf\fR configuration file. See \fBsendmail\fR(1M) for details.
-Standard addresses are recommended.
-.SS "Aliases"
-.SS "Local Aliases"
-.LP
-\fB/etc/mail/aliases\fR is formatted as a series of lines of the form
-.sp
-.in +2
-.nf
-\fIaliasname\fR\fB:\fR\fIaddress\fR[, \fIaddress\fR]
-.fi
-.in -2
-
-.sp
-.LP
-\fIaliasname\fR is the name of the alias or alias group, and \fIaddress\fR is
-the address of a recipient in the group. Aliases can be nested. That is, an
-\fIaddress\fR can be the name of another alias group. Because of the way
-\fBsendmail\fR(1M) performs mapping from upper-case to lower-case, an
-\fIaddress\fR that is the name of another alias group must not contain any
-upper-case letters.
-.sp
-.LP
-Lines beginning with white space are treated as continuation lines for the
-preceding alias. Lines beginning with \fB#\fR are comments.
-.SS "Special Aliases"
-.LP
-An alias of the form:
-.sp
-.in +2
-.nf
-\fBowner-aliasname :\fR \fIaddress\fR
-.fi
-.in -2
-
-.sp
-.LP
-\fBsendmail\fR directs error-messages resulting from mail to \fIaliasname\fR to
-\fIaddress\fR, instead of back to the person who sent the message.
-\fBsendmail\fR rewrites the \fBSMTP\fR envelope sender to match this, so
-\fBowner-aliasname\fR should always point to \fBalias-request\fR, and
-\fBalias-request\fR should point to the owner's actual address:
-.sp
-.in +2
-.nf
-owner-aliasname: aliasname-request
-aliasname-request \fIaddress\fR
-.fi
-.in -2
-
-.sp
-.LP
-An alias of the form:
-.sp
-.in +2
-.nf
-\fIaliasname\fR\fB: :include:\fR\fIpathname\fR
-.fi
-.in -2
-
-.sp
-.LP
-with colons as shown, adds the recipients listed in the file \fIpathname\fR to
-the \fIaliasname\fR alias. This allows a private list to be maintained
-separately from the aliases file.
-.SS "NIS Domain Aliases"
-.LP
-The aliases file on the master \fBNIS\fR server is used for the
-\fImail.aliases\fR \fBNIS\fR map, which can be made available to every
-\fBNIS\fR client. Thus, the \fB/etc/mail/aliases*\fR files on the various
-hosts in a network will one day be obsolete. Domain-wide aliases should
-ultimately be resolved into usernames on specific hosts. For example, if the
-following were in the domain-wide alias file:
-.sp
-.in +2
-.nf
-jsmith:js@jsmachine
-.fi
-.in -2
-
-.sp
-.LP
-then any \fBNIS\fR client could just mail to \fBjsmith\fR and not
-have to remember the machine and username for John Smith.
-.sp
-.LP
-If a \fBNIS\fR alias does not resolve to an address with a
-specific host, then the name of the \fBNIS\fR domain is used.
-There should be an alias of the domain name for a host in this case.
-.sp
-.LP
-For example, the alias:
-.sp
-.in +2
-.nf
-jsmith:root
-.fi
-.in -2
-
-.sp
-.LP
-sends mail on a \fBNIS\fR client to \fBroot@podunk-u\fR if the
-name of the \fBNIS\fR domain is \fBpodunk-u\fR.
-.SS "Automatic Forwarding"
-.LP
-When an alias (or address) is resolved to the name of a user on the local host,
-\fBsendmail\fR(1M) checks for a ~/.forward file, owned by the intended
-recipient, in that user's home directory, and with universal read access. This
-file can contain one or more addresses or aliases as described above, each of
-which is sent a copy of the user's mail.
-.sp
-.LP
-Care must be taken to avoid creating addressing loops in the \fB~/.forward\fR
-file. When forwarding mail between machines, be sure that the destination
-machine does not return the mail to the sender through the operation of any
-\fBNIS\fR aliases. Otherwise, copies of the message may "bounce." Usually, the
-solution is to change the \fBNIS\fR alias to direct mail to the proper
-destination.
-.sp
-.LP
-A backslash before a username inhibits further aliasing. For instance, to
-invoke the \fBvacation\fR program, user \fBjs\fR creates a \fB~/.forward\fR
-file that contains the line:
-.sp
-.in +2
-.nf
-\ejs, "|/usr/ucb/vacation js"
-.fi
-.in -2
-
-.sp
-.LP
-so that one copy of the message is sent to the user, and another is piped into
-the \fBvacation\fR program.
-.sp
-.LP
-The \fB~/.forward\fR file can be used to specify special "per user" extensions
-by creating a \fB\&.forward+extension\fR file in the home directory. For
-example, with an address like \fBjsmith+jerry@jsmachine\fR, the
-\fBsendmail\fR(1M) utility recognizes everything before the "\fB+\fR" as the
-actual username (\fBjsmith\fR) and everything after it, up to the "\fB@\fR"
-symbol, as the extension (\fBjerry\fR) which is passed to the mail delivery
-agent for local use.
-.sp
-.LP
-The default value of the \fBForwardPath\fR processing option in
-\fBsendmail\fR(1M) is:
-.sp
-.in +2
-.nf
-O ForwardPath=$z/.forward.$w+$h:$z/.forward+$h:$z/.forward.$w:$z \e
-/.forward
-.fi
-.in -2
-
-.sp
-.LP
-where \fB$z\fR is the macro for the user's home directory, \fB$w\fR is the
-macro for the local machine name and \fB$h\fR is the extension. For example,
-for mail using the address, \fBjsmith+jerry@jsmachine\fR, the
-\fBsendmail\fR(1M) utility checks each of the four following file names, in the
-order given, to see if it exists and if it has "safe" permissions, that is,
-that neither the file nor any of its parent directories are group- or
-world-writable:
-.sp
-.in +2
-.nf
-~jsmith/.forward.jsmachine+jerry
-~jsmith/.forward+jerry
-~jsmith/.forward.jsmachine
-~jsmith/.forward
-.fi
-.in -2
-
-.sp
-.LP
-The first file that meets the conditions is used to forward the mail, that is,
-all the entries in that file receive a copy of the mail. The search is then
-stopped.
-.SH FILES
-.ne 2
-.na
-\fB\fB/etc/passwd\fR\fR
-.ad
-.RS 25n
-Password file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/nsswitch.conf\fR\fR
-.ad
-.RS 25n
-Name service switch configuration file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/mail/aliases\fR\fR
-.ad
-.RS 25n
-Mail aliases file (ascii)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/mail/aliases.db\fR\fR
-.ad
-.RS 25n
-Database of mail aliases (binary)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/mail/aliases.dir\fR\fR
-.ad
-.RS 25n
-Database of mail aliases (binary)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/mail/aliases.pag\fR\fR
-.ad
-.RS 25n
-Database of mail aliases (binary)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/mail/sendmail.cf\fR\fR
-.ad
-.RS 25n
-sendmail configuration file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB~/.forward\fR\fR
-.ad
-.RS 25n
-Forwarding information file
-.RE
-
-.SH SEE ALSO
-.LP
-\fBpasswd\fR(1), \fBuucp\fR(1C), \fBvacation\fR(1), \fBnewaliases\fR(1M),
-\fBsendmail\fR(1M), \fBndbm\fR(3C), \fBgetusershell\fR(3C), \fBpasswd\fR(4),
-\fBshells\fR(4), \fBattributes\fR(5)
-.SH NOTES
-.LP
-Because of restrictions in \fBndbm\fR(3C), a single alias cannot contain more
-than about \fB1000\fR characters (if this format is used). The Berkeley
-DataBase format does not have any such restriction. Nested aliases can be used
-to circumvent this limit.
-.sp
-.LP
-For aliases which result in piping to a program or concatenating a file, the
-shell of the controlling user must be allowed. Which shells are and are not
-allowed are determined by \fBgetusershell\fR(3C).
diff --git a/usr/src/man/man4/au.4 b/usr/src/man/man4/au.4
deleted file mode 100644
index 3d82f314d6..0000000000
--- a/usr/src/man/man4/au.4
+++ /dev/null
@@ -1,213 +0,0 @@
-'\" te
-.\" Copyright (c) 2001, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH AU 4 "Jan 15, 2001"
-.SH NAME
-au \- AU audio file format
-.SH SYNOPSIS
-.LP
-.nf
-\fB#include <audio/au.h>\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-An AU audio file is composed of three parts: a header, an optional description
-field, and a contiguous segment of audio data. The header is 24 bytes, and the
-description field is at least 4 bytes. Therefore, the offset for most AU files
-is 28 bytes. However, some people store additional data in the AU header.
-.sp
-.LP
-The AU audio structure members and audio data are stored big endian. That is,
-it starts with the most significant byte, regardless of the native byte order
-of the machine architecture on which an application may be running. Therefore,
-multi-byte audio data may require byte reversal for proper playback on
-different processor architectures. See the macro section for properly reading
-and writing the AU audio structure members.
-.sp
-.LP
-The AU header is defined by the following structure:
-.sp
-.in +2
-.nf
-struct au_filehdr {
- uint32_t au_magic; /* magic number (.snd) */
- uint32_t au_offset; /* byte offset to start of audio data */
- uint32_t au_data_size; /* data length in bytes */
- uint32_t au_encoding; /* data encoding */
- uint32_t au_sample_rate; /* samples per second */
- uint32_t au_channels; /* number of interleaved channels */
-};
-typedef struct au_filehdr au_filehdr_t;
-.fi
-.in -2
-
-.sp
-.LP
-The \fBau_magic\fR field always contains the following constant for an AU audio
-file:
-.sp
-.in +2
-.nf
-AUDIO_AU_FILE_MAGIC ( 0x2e736e64 ) /* ".snd" */
-.fi
-.in -2
-
-.sp
-.LP
-The \fBau_offset\fR field contains the length of the audio file header plus the
-variable length info field. Consequently, it can be interpreted as the offset
-from the start of the file to the start of the audio data.
-.sp
-.LP
-The \fBau_data_size\fR field contains the length, in bytes, of the audio data
-segment. If this length is not known when the header is written, it should be
-set to \fBAUDIO_AU_UNKNOWN_SIZE\fR, defined as follows:
-.sp
-.in +2
-.nf
-AUDIO_AU_UNKNOWN_SIZE ( ~0 ) /* (unsigned) -1 */
-.fi
-.in -2
-
-.sp
-.LP
-When the \fBau_data_size\fR field contains \fBAUDIO_AU_UNKNOWN_SIZE\fR, the
-length of the audio data can be determined by subtracting \fBau_offset\fR from
-the total length of the file.
-.sp
-.LP
-The encoding field contains one of the following enumerated keys:
-.sp
-.in +2
-.nf
-AUDIO_AU_ENCODING_ULAW /* 8-bit u-law */
-AUDIO_AU_ENCODING_LINEAR_8 /* 8-bit linear PCM */
-AUDIO_AU_ENCODING_LINEAR_16 /* 16-bit linear PCM */
-AUDIO_AU_ENCODING_LINEAR_24 /* 24-bit linear PCM */
-AUDIO_AU_ENCODING_LINEAR_32 /* 32-bit linear PCM */
-AUDIO_AU_ENCODING_FLOAT /* Floating point */
-AUDIO_AU_ENCODING_DOUBLE /* Double precision float */
-AUDIO_AU_ENCODING_FRAGMENTED /* Fragmented sample data */
-AUDIO_AU_ENCODING_DSP /* DSP program */
-AUDIO_AU_ENCODING_FIXED_8 /* 8-bit fixed point */
-AUDIO_AU_ENCODING_FIXED_16 /* 16-bit fixed point */
-AUDIO_AU_ENCODING_FIXED_24 /* 24-bit fixed point */
-AUDIO_AU_ENCODING_FIXED_32 /* 32-bit fixed point */
-AUDIO_AU_ENCODING_EMPHASIS /* 16-bit linear with emphasis */
-AUDIO_AU_ENCODING_COMPRESSED /* 16-bit linear compressed */
-AUDIO_AU_ENCODING_EMP_COMP /* 16-bit linear with emphasis
- and compression */
-AUDIO_AU_ENCODING_MUSIC_KIT /* Music kit DSP commands */
-AUDIO_AU_ENCODING_ADPCM_G721 /* CCITT G.721 ADPCM */
-AUDIO_AU_ENCODING_ADPCM_G722 /* CCITT G.722 ADPCM */
-AUDIO_AU_ENCODING_ADPCM_G723_3 /* CCITT G.723.3 ADPCM */
-AUDIO_AU_ENCODING_ADPCM_G723_5 /* CCITT G.723.5 ADPCM */
-AUDIO_AU_ENCODING_ALAW /* 8-bit A-law G.711 */
-.fi
-.in -2
-
-.sp
-.LP
-All of the linear encoding formats are signed integers centered at zero.
-.sp
-.LP
-The \fBau_sample_rate\fR field contains the audio file's sampling rate in
-samples per second. Some common sample rates include 8000, 11025, 22050, 44100,
-and 48000 samples per second.
-.sp
-.LP
-The \fBau_channels\fR field contains the number of interleaved data channels.
-For monaural data, this value is set to one. For stereo data, this value is set
-to two. More than two data channels can be interleaved, but such formats are
-currently unsupported by the Solaris audio driver architecture. For a stereo
-sound file, the first sample is the left track and the second sample is the
-right track.
-.sp
-.LP
-The optional info field is a variable length annotation field that can be
-either text or data. If it is a text description of the sound, then it should
-be NULL terminated. However, some older files might not be terminated properly.
-The size of the info field is set when the structure is created and cannot be
-enlarged later.
-.SS "Macros"
-.sp
-.LP
-Accessing all of the AU audio structure members should be done through the
-supplied \fBAUDIO_AU_FILE2HOST\fR and \fBAUDIO_AU_HOST2FILE\fR macros. By
-always using these macros, code will be byte-order independent. See the example
-below.
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRDisplaying Header Information for a Sound File
-.sp
-.LP
-The following program reads and displays the header information for an AU sound
-file. The \fBAUDIO_AU_FILE2HOST\fR macro ensures that this information will
-always be in the proper byte order.
-
-.sp
-.in +2
-.nf
-void main(void)
-{
- au_filehdr_t hdr;
- au_filehdr_t local;
- int fd;
- char *name = "bark.au";
-
- if ((fd = open(name, O_RDONLY)) < 0) {
- printf("can't open file %s\en", name);
- exit(1);
- }
-
- (void) read(fd, &hdr, sizeof (hdr));
-
- AUDIO_AU_FILE2HOST(&hdr.au_magic, &local.au_magic);
- AUDIO_AU_FILE2HOST(&hdr.au_offset, &local.au_offset);
- AUDIO_AU_FILE2HOST(&hdr.au_data_size, &local.au_data_size);
- AUDIO_AU_FILE2HOST(&hdr.au_encoding, &local.au_encoding);
- AUDIO_AU_FILE2HOST(&hdr.au_sample_rate, &local.au_sample_rate);
- AUDIO_AU_FILE2HOST(&hdr.au_channels, &local.au_channels);
-
- printf("Magic = %x\en", local.au_magic);
- printf("Offset = %d\en", local.au_offset);
- printf("Number of data bytes = %d\en", local.au_data_size);
- printf("Sound format = %d\en", local.au_encoding);
- printf("Sample rate = %d\en", local.au_sample_rate);
- printf("Number of channels = %d\en", local.au_channels);
-
- (void) close(fd);
-}
-.fi
-.in -2
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Stability Level Evolving
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBattributes\fR(5)
-.SH NOTES
-.sp
-.LP
-Some older AU audio files are incorrectly coded with info strings that are not
-properly NULL-terminated. Thus, applications should always use the \fBau_offset
-value\fR to find the end of the info data and the beginning of the audio data.
diff --git a/usr/src/man/man4/audit.log.4 b/usr/src/man/man4/audit.log.4
deleted file mode 100644
index 44c9b17e9c..0000000000
--- a/usr/src/man/man4/audit.log.4
+++ /dev/null
@@ -1,795 +0,0 @@
-'\" te
-.\" Copyright (c) 2017 Peter Tribble
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
-.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH AUDIT.LOG 4 "Mar 6, 2017"
-.SH NAME
-audit.log \- audit trail file
-.SH SYNOPSIS
-.LP
-.nf
-\fB#include <bsm/audit.h>\fR
-.fi
-
-.LP
-.nf
-\fB#include <bsm/audit_record.h>\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-\fBaudit.log\fR files are the depository for audit records stored locally or on
-an NFS-mounted audit server. These files are kept in directories as specified
-by the \fBp_dir\fR attribute of the \fBaudit_binfile\fR(5) plugin. They are
-named to reflect the time they are created and are, when possible, renamed to
-reflect the time they are closed as well. The name takes the form
-.sp
-.LP
-\fIyyyymmddhhmmss\fR\fB\&.not_terminated.\fR\fIhostname\fR
-.sp
-.LP
-when open or if \fBauditd\fR(1M) terminated ungracefully, and the form
-.sp
-.LP
-\fIyyyymmddhhmmss\fR\fB\&.\fR\fIyyyymmddhhmmss\fR\fB\&.\fR\fIhostname\fR
-.sp
-.LP
-when properly closed. \fByyyy\fR is the year, \fBmm\fR the month, \fBdd\fR day
-in the month, \fBhh\fR hour in the day, \fBmm\fR minute in the hour, and
-\fBss\fR second in the minute. All fields are of fixed width.
-.sp
-.LP
-Audit data is generated in the binary format described below; the default for
-audit is binary format. See \fBaudit_syslog\fR(5) for an alternate data
-format.
-.sp
-.LP
-The \fBaudit.log\fR file begins with a standalone \fBfile token\fR and
-typically ends with one also. The beginning \fBfile token\fR records the
-pathname of the previous audit file, while the ending \fBfile token\fR records
-the pathname of the next audit file. If the file name is \fBNULL\fR the
-appropriate path was unavailable.
-.sp
-.LP
-The \fBaudit.log\fR files contains audit records. Each audit record is made up
-of \fIaudit tokens\fR. Each record contains a header token followed by various
-data tokens. Depending on the audit policy in place by \fBauditon\fR(2),
-optional other tokens such as trailers or sequences may be included.
-.sp
-.LP
-The tokens are defined as follows:
-.sp
-.LP
-The \fBfile\fR token consists of:
-.sp
-.in +2
-.nf
-token ID 1 byte
-seconds of time 4 bytes
-microseconds of time 4 bytes
-file name length 2 bytes
-file pathname N bytes + 1 terminating NULL byte
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The \fBheader\fR token consists of:
-.sp
-.in +2
-.nf
-token ID 1 byte
-record byte count 4 bytes
-version # 1 byte [2]
-event type 2 bytes
-event modifier 2 bytes
-seconds of time 4 bytes/8 bytes (32-bit/64-bit value)
-nanoseconds of time 4 bytes/8 bytes (32-bit/64-bit value)
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The expanded \fBheader\fR token consists of:
-.sp
-.in +2
-.nf
-token ID 1 byte
-record byte count 4 bytes
-version # 1 byte [2]
-event type 2 bytes
-event modifier 2 bytes
-address type/length 1 byte
-machine address 4 bytes/16 bytes (IPv4/IPv6 address)
-seconds of time 4 bytes/8 bytes (32/64-bits)
-nanoseconds of time 4 bytes/8 bytes (32/64-bits)
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The \fBtrailer\fR token consists of:
-.sp
-.in +2
-.nf
-token ID 1 byte
-trailer magic number 2 bytes
-record byte count 4 bytes
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The \fBarbitrary\fR \fBdata\fR token is defined:
-.sp
-.in +2
-.nf
-token ID 1 byte
-how to print 1 byte
-basic unit 1 byte
-unit count 1 byte
-data items (depends on basic unit)
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The \fBin_addr\fR token consists of:
-.sp
-.in +2
-.nf
-token ID 1 byte
-IP address type/length 1 byte
-IP address 4 bytes/16 bytes (IPv4/IPv6 address)
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The expanded \fBin_addr\fR token consists of:
-.sp
-.in +2
-.nf
-token ID 1 byte
-IP address type/length 4 bytes/16 bytes (IPv4/IPv6 address)
-IP address 16 bytes
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The \fBip\fR token consists of:
-.sp
-.in +2
-.nf
-token ID 1 byte
-version and ihl 1 byte
-type of service 1 byte
-length 2 bytes
-id 2 bytes
-offset 2 bytes
-ttl 1 byte
-protocol 1 byte
-checksum 2 bytes
-source address 4 bytes
-destination address 4 bytes
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The expanded \fBip\fR token consists of:
-.sp
-.in +2
-.nf
-token ID 1 byte
-version and ihl 1 byte
-type of service 1 byte
-length 2 bytes
-id 2 bytes
-offset 2 bytes
-ttl 1 byte
-protocol 1 byte
-checksum 2 bytes
-address type/type 1 byte
-source address 4 bytes/16 bytes (IPv4/IPv6 address)
-address type/length 1 byte
-destination address 4 bytes/16 bytes (IPv4/IPv6 address)
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The \fBiport\fR token consists of:
-.sp
-.in +2
-.nf
-token ID 1 byte
-port IP address 2 bytes
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The \fBpath\fR token consists of:
-.sp
-.in +2
-.nf
-token ID 1 byte
-path length 2 bytes
-path N bytes + 1 terminating NULL byte
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The \fBpath_attr\fR token consists of:
-.sp
-.in +2
-.nf
-token ID 1 byte
-count 4 bytes
-path \fIcount\fR null-terminated string(s)
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The \fBprocess\fR token consists of:
-.sp
-.in +2
-.nf
-token ID 1 byte
-audit ID 4 bytes
-effective user ID 4 bytes
-effective group ID 4 bytes
-real user ID 4 bytes
-real group ID 4 bytes
-process ID 4 bytes
-session ID 4 bytes
-terminal ID
- port ID 4 bytes/8 bytes (32-bit/64-bit value)
- machine address 4 bytes
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The expanded \fBprocess\fR token consists of:
-.sp
-.in +2
-.nf
-token ID 1 byte
-audit ID 4 bytes
-effective user ID 4 bytes
-effective group ID 4 bytes
-real user ID 4 bytes
-real group ID 4 bytes
-process ID 4 bytes
-session ID 4 bytes
-terminal ID
- port ID 4 bytes/8 bytes (32-bit/64-bit value)
- address type/length 1 byte
- machine address 4 bytes/16 bytes (IPv4/IPv6 address)
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The \fBreturn\fR token consists of:
-.sp
-.in +2
-.nf
-token ID 1 byte
-error number 1 byte
-return value 4 bytes/8 bytes (32-bit/64-bit value)
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The \fBsubject\fR token consists of:
-.sp
-.in +2
-.nf
-token ID 1 byte
-audit ID 4 bytes
-effective user ID 4 bytes
-effective group ID 4 bytes
-real user ID 4 bytes
-real group ID 4 bytes
-process ID 4 bytes
-session ID 4 bytes
-terminal ID
- port ID 4 bytes/8 bytes (32-bit/64-bit value)
- machine address 4 bytes
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The expanded \fBsubject\fR token consists of:
-.sp
-.in +2
-.nf
-token ID 1 byte
-audit ID 4 bytes
-effective user ID 4 bytes
-effective group ID 4 bytes
-real user ID 4 bytes
-real group ID 4 bytes
-process ID 4 bytes
-session ID 4 bytes
-terminal ID
- port ID 4 bytes/8 bytes (32-bit/64-bit value)
- address type/length 1 byte
- machine address 4 bytes/16 bytes (IPv4/IPv6 address)
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The \fBSystem V IPC\fR token consists of:
-.sp
-.in +2
-.nf
-token ID 1 byte
-object ID type 1 byte
-object ID 4 bytes
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The \fBtext\fR token consists of:
-.sp
-.in +2
-.nf
-token ID 1 byte
-text length 2 bytes
-text N bytes + 1 terminating NULL byte
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The \fBattribute\fR token consists of:
-.sp
-.in +2
-.nf
-token ID 1 byte
-file access mode 4 bytes
-owner user ID 4 bytes
-owner group ID 4 bytes
-file system ID 4 bytes
-node ID 8 bytes
-device 4 bytes/8 bytes (32-bit/64-bit)
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The \fBgroups\fR token consists of:
-.sp
-.in +2
-.nf
-token ID 1 byte
-number groups 2 bytes
-group list N * 4 bytes
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The \fBSystem V IPC permission\fR token consists of:
-.sp
-.in +2
-.nf
-token ID 1 byte
-owner user ID 4 bytes
-owner group ID 4 bytes
-creator user ID 4 bytes
-creator group ID 4 bytes
-access mode 4 bytes
-slot sequence # 4 bytes
-key 4 bytes
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The \fBarg\fR token consists of:
-.sp
-.in +2
-.nf
-token ID 1 byte
-argument # 1 byte
-argument value 4 bytes/8 bytes (32-bit/64-bit value)
-text length 2 bytes
-text N bytes + 1 terminating NULL byte
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The \fBexec_args\fR token consists of:
-.sp
-.in +2
-.nf
-token ID 1 byte
-count 4 bytes
-text \fIcount\fR null-terminated string(s)
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The \fBexec_env\fR token consists of:
-.sp
-.in +2
-.nf
-token ID 1 byte
-count 4 bytes
-text \fIcount\fR null-terminated string(s)
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The \fBexit\fR token consists of:
-.sp
-.in +2
-.nf
-token ID 1 byte
-status 4 bytes
-return value 4 bytes
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The \fBsocket\fR token consists of:
-.sp
-.in +2
-.nf
-token ID 1 byte
-socket type 2 bytes
-remote port 2 bytes
-remote Internet address 4 bytes
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The expanded \fBsocket\fR token consists of:
-.sp
-.in +2
-.nf
-token ID 1 byte
-socket domain 2 bytes
-socket type 2 bytes
-local port 2 bytes
-address type/length 2 bytes
-local port 2 bytes
-local Internet address 4 bytes/16 bytes (IPv4/IPv6 address)
-remote port 2 bytes
-remote Internet address 4 bytes/16 bytes (IPv4/IPv6 address)
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The \fBseq\fR token consists of:
-.sp
-.in +2
-.nf
-token ID 1 byte
-sequence number 4 bytes
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The \fBprivilege\fR token consists of:
-.sp
-.in +2
-.nf
-token ID 1 byte
-text length 2 bytes
-privilege set name N bytes + 1 terminating NULL byte
-text length 2 bytes
-list of privileges N bytes + 1 terminating NULL byte
-.fi
-.in -2
-
-.sp
-.LP
-The \fBuse-of-auth\fR token consists of:
-.sp
-.in +2
-.nf
-token ID 1 byte
-text length 2 bytes
-authorization(s) N bytes + 1 terminating NULL byte
-.fi
-.in -2
-
-.sp
-.LP
-The \fBuse-of-privilege\fR token consists of:
-.sp
-.in +2
-.nf
-token ID 1 byte
-succ/fail 1 byte
-text length 2 bytes
-privilege used N bytes + 1 terminating NULL byte
-.fi
-.in -2
-
-.sp
-.LP
-The \fBcommand\fR token consists of:
-.sp
-.in +2
-.nf
-token ID 1 byte
-count of args 2 bytes
-argument list (count times)
-text length 2 bytes
-argument text N bytes + 1 terminating NULL byte
-count of env strings 2 bytes
-environment list (count times)
-text length 2 bytes
-env. text N bytes + 1 terminating NULL byte
-.fi
-.in -2
-
-.sp
-.LP
-The \fBACL\fR token consists of:
-.sp
-.in +2
-.nf
-token ID 1 byte
-type 4 bytes
-value 4 bytes
-file mode 4 bytes
-.fi
-.in -2
-
-.sp
-.LP
-The ACE token consists of:
-.sp
-.in +2
-.nf
-token ID 1 byte
-who 4 bytes
-access_mask 4 bytes
-flags 2 bytes
-type 2 bytes
-.fi
-.in -2
-
-.sp
-.LP
-The \fBzonename\fR token consists of:
-.sp
-.in +2
-.nf
-token ID 1 byte
-name length 2 bytes
-name \fI<name length>\fR including terminating NULL byte
-.fi
-.in -2
-
-.sp
-.LP
-The \fBfmri\fR token consists of:
-.sp
-.in +2
-.nf
-token ID 1 byte
-fmri length 2 bytes
-fmri \fI<fmri length>\fR including terminating NULL byte
-.fi
-.in -2
-
-.sp
-.LP
-The \fBlabel\fR token consists of:
-.sp
-.in +2
-.nf
-token ID 1 byte
-label ID 1 byte
-compartment length 1 byte
-classification 2 bytes
-compartment words \fI<compartment length>\fR * 4 bytes
-.fi
-.in -2
-
-.sp
-.LP
-The \fBxatom\fR token consists of:
-.sp
-.in +2
-.nf
-token ID 1 byte
-string length 2 bytes
-atom string \fIstring length\fR bytes
-.fi
-.in -2
-
-.sp
-.LP
-The \fBxclient\fR token consists of:
-.sp
-.in +2
-.nf
-token ID 1 byte
-client ID 4 bytes
-.fi
-.in -2
-
-.sp
-.LP
-The \fBxcolormap\fR token consists of:
-.sp
-.in +2
-.nf
-token ID 1 byte
-XID 4 bytes
-creator UID 4 bytes
-.fi
-.in -2
-
-.sp
-.LP
-The \fBxcursor\fR token consists of:
-.sp
-.in +2
-.nf
-token ID 1 byte
-XID 4 bytes
-creator UID 4 bytes
-.fi
-.in -2
-
-.sp
-.LP
-The \fBxfont\fR token consists of:
-.sp
-.in +2
-.nf
-token ID 1 byte
-XID 4 bytes
-creator UID 4 bytes
-.fi
-.in -2
-
-.sp
-.LP
-The \fBxgc\fR token consists of:
-.sp
-.in +2
-.nf
-token ID 1 byte
-XID 4 bytes
-creator UID 4 bytes
-.fi
-.in -2
-
-.sp
-.LP
-The \fBxpixmap\fR token consists of:
-.sp
-.in +2
-.nf
-token ID 1 byte
-XID 4 bytes
-creator UID 4 bytes
-.fi
-.in -2
-
-.sp
-.LP
-The \fBxproperty\fR token consists of:
-.sp
-.in +2
-.nf
-token ID 1 byte
-XID 4 bytes
-creator UID 4 bytes
-string length 2 bytes
-string \fIstring length\fR bytes
-.fi
-.in -2
-
-.sp
-.LP
-The \fBxselect\fR token consists of:
-.sp
-.in +2
-.nf
-token ID 1 byte
-property length 2 bytes
-property string \fIproperty length\fR bytes
-prop. type len. 2 bytes
-prop type \fIprop. type len.\fR bytes
-data length 2 bytes
-window data \fIdata length\fR bytes
-.fi
-.in -2
-
-.sp
-.LP
-The \fBxwindow\fR token consists of:
-.sp
-.in +2
-.nf
-token ID 1 byte
-XID 4 bytes
-creator UID 4 bytes
-.fi
-.in -2
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability See below.
-.TE
-
-.sp
-.LP
-The binary file format is Committed. The binary file contents is Uncommitted.
-.SH SEE ALSO
-.LP
-\fBaudit\fR(1M), \fBauditd\fR(1M), \fBaudit\fR(2),
-\fBauditon\fR(2), \fBau_to\fR(3BSM),
-\fBaudit_binfile\fR(5), \fBaudit_remote\fR(5), \fBaudit_syslog\fR(5)
-.SH NOTES
-.LP
-Each token is generally written using the \fBau_to\fR(3BSM) family of function
-calls.
diff --git a/usr/src/man/man4/audit_class.4 b/usr/src/man/man4/audit_class.4
deleted file mode 100644
index 141c1d5996..0000000000
--- a/usr/src/man/man4/audit_class.4
+++ /dev/null
@@ -1,173 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH AUDIT_CLASS 4 "Mar 6, 2017"
-.SH NAME
-audit_class \- audit class definitions
-.SH SYNOPSIS
-.LP
-.nf
-\fB/etc/security/audit_class\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-\fB/etc/security/audit_class\fR is a user-configurable ASCII system file that
-stores class definitions used in the audit system. Audit events in
-\fBaudit_event\fR(4) are mapped to one or more of the defined audit classes.
-\fBaudit_event\fR can be updated in conjunction with changes to
-\fBaudit_class\fR.
-Programs can use the \fBgetauclassent\fR(3BSM) routines to access audit
-class information.
-.sp
-.LP
-The fields for each class entry are separated by colons. Each class entry is a
-bitmap and is separated from each other by a newline.
-.sp
-.LP
-Each entry in the \fBaudit_class\fR file has the form:
-.sp
-.in +2
-.nf
-\fImask\fR:\fIname\fR:\fIdescription\fR
-.fi
-.in -2
-
-.sp
-.LP
-The fields are defined as follows:
-.sp
-.ne 2
-.na
-\fB\fImask\fR\fR
-.ad
-.RS 15n
-class mask
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIname\fR\fR
-.ad
-.RS 15n
-class name
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIdescription\fR\fR
-.ad
-.RS 15n
-class description
-.RE
-
-.sp
-.LP
-Each class is represented as a bit in the class mask which is an unsigned
-integer. Thus, there are 32 different classes available. Meta-classes can also
-be defined. These are supersets composed of multiple base classes, and thus
-will have more than 1 bit in its mask. See Examples. Two special meta-classes
-are also pre-defined: \fBall\fR, and \fBno\fR.
-.sp
-.ne 2
-.na
-\fB\fBall\fR\fR
-.ad
-.RS 7n
-Represents a conjunction of all allowed classes, and is provided as a shorthand
-method of specifying all classes.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBno\fR\fR
-.ad
-.RS 7n
-Is the invalid class, and any event mapped solely to this class will not be
-audited. Turning auditing on to the \fBall\fR meta class will not cause events
-mapped solely to the \fBno\fR class to be written to the audit trail. This
-class is also used to map obsolete events which are no longer generated.
-Obsolete events are retained to process old audit trails files.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRUsing an \fBaudit_class\fR File
-.sp
-.LP
-The following is an example of an \fBaudit_class\fR file:
-
-.sp
-.in +2
-.nf
-0x00000000:no:invalid class
-0x00000001:fr:file read
-0x00000002:fw:file write
-0x00000004:fa:file attribute access
-0x00000008:fm:file attribute modify
-0x00000010:fc:file create
-0x00000020:fd:file delete
-0x00000040:cl:file close
-0x00000100:nt:network
-0x00000200:ip:ipc
-0x00000400:na:non-attribute
-0x00001000:lo:login or logout
-0x00004000:ap:application
-0x000f0000:ad:old administrative (meta-class)
-0x00070000:am:administrative (meta-class)
-0x00010000:ss:change system state
-0x00020000:as:system-wide administration
-0x00040000:ua:user administration
-0x00080000:aa:audit utilization
-0x00300000:pc:process (meta-class)
-0x00100000:ps:process start/stop
-0x00200000:pm:process modify
-0x20000000:io:ioctl
-0x40000000:ex:exec
-0x80000000:ot:other
-0xffffffff:all:all classes (meta-class)
-.fi
-.in -2
-.sp
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/etc/security/audit_class\fR\fR
-.ad
-.RS 29n
-
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability See below.
-.TE
-
-.sp
-.LP
-The file format stability is Committed. The file content is Uncommitted.
-.SH SEE ALSO
-.LP
-\fBau_preselect\fR(3BSM), \fBgetauclassent\fR(3BSM),
-\fBaudit_event\fR(4), \fBattributes\fR(5)
-.SH NOTES
-.LP
-It is possible to deliberately turn on the \fBno\fR class in the kernel, in
-which case the audit trail will be flooded with records for the audit event
-\fBAUE_NULL\fR.
diff --git a/usr/src/man/man4/audit_event.4 b/usr/src/man/man4/audit_event.4
deleted file mode 100644
index b1b0935138..0000000000
--- a/usr/src/man/man4/audit_event.4
+++ /dev/null
@@ -1,171 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH AUDIT_EVENT 4 "Mar 6, 2017"
-.SH NAME
-audit_event \- audit event definition and class mapping
-.SH SYNOPSIS
-.LP
-.nf
-\fB/etc/security/audit_event\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-\fB/etc/security/audit_event\fR is a user-configurable ASCII system file that
-stores event definitions used in the audit system. As part of this definition,
-each event is mapped to one or more of the audit classes defined in
-\fBaudit_class\fR(4).
-Programs can use the \fBgetauevent\fR(3BSM) routines to access audit
-event information.
-.sp
-.LP
-The fields for each event entry are separated by colons. Each event is
-separated from the next by a NEWLINE.Each entry in the audit_event file has the
-form:
-.sp
-.in +2
-.nf
-\fInumber\fR:\fIname\fR:\fIdescription\fR:\fIflags\fR
-.fi
-.in -2
-
-.sp
-.LP
-The fields are defined as follows:
-.sp
-.ne 2
-.na
-\fB\fInumber\fR\fR
-.ad
-.RS 15n
-Event number.
-.sp
-Event number ranges are assigned as follows:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 15n
-Reserved as an invalid event number.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB1-2047\fR\fR
-.ad
-.RS 15n
-Reserved for the Solaris Kernel events.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB2048-32767\fR\fR
-.ad
-.RS 15n
-Reserved for the Solaris TCB programs.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB32768-65535\fR\fR
-.ad
-.RS 15n
-Available for third party TCB applications.
-.sp
-System administrators must \fBnot\fR add, delete, or modify (except to change
-the class mapping), events with an event number less than \fB32768\fR. These
-events are reserved by the system.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIname\fR\fR
-.ad
-.RS 15n
-Event name.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIdescription\fR\fR
-.ad
-.RS 15n
-Event description.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIflags\fR\fR
-.ad
-.RS 15n
-Flags specifying classes to which the event is mapped. Classes are comma
-separated, without spaces.
-.sp
-Obsolete events are commonly assigned to the special class \fBno\fR (invalid)
-to indicate they are no longer generated. Obsolete events are retained to
-process old audit trail files. Other events which are not obsolete may also be
-assigned to the \fBno\fR class.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRUsing the \fBaudit_event\fR File
-.sp
-.LP
-The following is an example of some \fBaudit_event\fR file entries:
-
-.sp
-.in +2
-.nf
-7:AUE_EXEC:exec(2):ps,ex
-79:AUE_OPEN_WTC:open(2) - write,creat,trunc:fc,fd,fw
-6152:AUE_login:login - local:lo
-6153:AUE_logout:logout:lo
-6154:AUE_telnet:login - telnet:lo
-6155:AUE_rlogin:login - rlogin:lo
-.fi
-.in -2
-.sp
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability See below.
-.TE
-
-.sp
-.LP
-The file format stability is Committed. The file content is Uncommitted.
-.SH FILES
-.ne 2
-.na
-\fB\fB/etc/security/audit_event\fR\fR
-.ad
-.RS 29n
-
-.RE
-
-.SH SEE ALSO
-.LP
-\fBgetauevent\fR(3BSM), \fBaudit_class\fR(4)
diff --git a/usr/src/man/man4/auth_attr.4 b/usr/src/man/man4/auth_attr.4
deleted file mode 100644
index eeac62e684..0000000000
--- a/usr/src/man/man4/auth_attr.4
+++ /dev/null
@@ -1,275 +0,0 @@
-'\" te
-.\" Copyright (C) 2002, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH AUTH_ATTR 4 "Feb 25, 2017"
-.SH NAME
-auth_attr \- authorization description database
-.SH SYNOPSIS
-.LP
-.nf
-\fB/etc/security/auth_attr\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-\fB/etc/security/auth_attr\fR is a local source for authorization names and
-descriptions. The \fBauth_attr\fR file can be used with other authorization
-sources, including the \fBauth_attr\fR \fBNIS\fR map.
-Programs use the \fBgetauthattr\fR(3SECDB) routines to access this information.
-.sp
-.LP
-The search order for multiple authorization sources is specified in the
-\fB/etc/nsswitch.conf\fR file, as described in the \fBnsswitch.conf\fR(4) man
-page.
-.sp
-.LP
-An authorization is a right assigned to users that is checked by certain
-privileged programs to determine whether users can execute restricted
-functionality. Each entry in the \fBauth_attr\fR database consists of one line
-of text containing six fields separated by colons (\fB:\fR). Line continuations
-using the backslash (\fB\e\fR) character are permitted. The format of each
-entry is:
-.sp
-.in +2
-.nf
-\fIname\fR:\fIres1\fR:\fIres2\fR:\fIshort_desc\fR:\fIlong_desc\fR:\fIattr\fR
-.fi
-.in -2
-
-.sp
-.ne 2
-.na
-\fB\fIname\fR\fR
-.ad
-.RS 14n
-The name of the authorization. Authorization names are unique strings.
-Construct authorization names using the following convention:
-.sp
-\fIprefix.\fR or \fIprefix.suffix\fR
-.sp
-.ne 2
-.na
-\fB\fIprefix\fR\fR
-.ad
-.RS 10n
-Everything in the name field up to the final dot (\fB\&.\fR). Authorizations
-from Sun Microsystems, Inc. use \fBsolaris\fR as a prefix. To avoid name
-conflicts, all other authorizations should use a prefix that begins with the
-reverse-order Internet domain name of the organization that creates the
-authorization (for example, \fBcom.xyzcompany\fR). Prefixes can have additional
-arbitrary components chosen by the authorization's developer, with components
-separated by dots.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIsuffix\fR\fR
-.ad
-.RS 10n
-The final component in the name field. Specifies what is being authorized.
-.sp
-When there is no suffix, the name is defined as a heading. Headings are not
-assigned to users but are constructed for use by applications in their
-\fBGUI\fRs.
-.RE
-
-When a name ends with the word \fBgrant\fR, the entry defines a grant
-authorization. Grant authorizations are used to support fine-grained
-delegation. Users with appropriate grant authorizations can delegate some of
-their authorizations to others. To assign an authorization, the user needs to
-have both the authorization itself and the appropriate grant authorization.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIres1\fR\fR
-.ad
-.RS 14n
-Reserved for future use.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIres2\fR\fR
-.ad
-.RS 14n
-Reserved for future use.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIshort_desc\fR\fR
-.ad
-.RS 14n
-A short description or terse name for the authorization. This name should be
-suitable for displaying in user interfaces, such as in a scrolling list in a
-\fBGUI\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIlong_desc\fR\fR
-.ad
-.RS 14n
-A long description. This field can explain the precise purpose of the
-authorization, the applications in which it is used, and the type of user that
-would be interested in using it. The long description can be displayed in the
-help text of an application.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIattr\fR\fR
-.ad
-.RS 14n
-An optional list of semicolon-separated (\fB;\fR) key-value pairs that describe
-the attributes of an authorization. Zero or more keys may be specified. The
-keyword \fBhelp\fR identifies a help file in HTML.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRConstructing a Name
-.sp
-.LP
-In the following example, the name has a prefix (\fBsolaris.admin.usermgr\fR)
-followed by a suffix (\fBread\fR):
-
-.sp
-.in +2
-.nf
-solaris.admin.usermgr.read
-.fi
-.in -2
-
-.LP
-\fBExample 2 \fRDefining a Heading
-.sp
-.LP
-Because the name field ends with a dot, the following entry defines a heading:
-
-.sp
-.in +2
-.nf
-solaris.admin.usermgr.:::User Accounts::help=AuthUsermgrHeader.html
-.fi
-.in -2
-
-.LP
-\fBExample 3 \fRAssigning Separate Authorizations to Set User Attributes
-.sp
-.LP
-In this example, a heading entry is followed by other associated authorization
-entries. The entries below the heading provide separate authorizations for
-setting user attributes. The \fIattr\fR field for each entry, including the
-heading entry, assigns a help file. The application that uses the \fBhelp\fR
-key requires the value to equal the name of a file ending in \fB\&.htm\fR or
-\fB\&.html\fR:
-
-.sp
-.in +2
-.nf
-solaris.admin.usermgr.:::User Accounts::help=AuthUsermgrHeader.html
-solaris.admin.usermgr.pswd:::Change Password::help=AuthUserMgrPswd.html
-solaris.admin.usermgr.write:::Manage Users::help=AuthUsermgrWrite.html
-.fi
-.in -2
-
-.LP
-\fBExample 4 \fRAssigning a Grant Authorization
-.sp
-.LP
-This example assigns to an administrator the following authorizations:
-
-.sp
-.in +2
-.nf
-solaris.admin.printer.grant
-solaris.admin.printer.delete
-solaris.admin.printer.modify
-solaris.admin.printer.read
-solaris.login.enable
-.fi
-.in -2
-
-.sp
-.LP
-With the above authorizations, the administrator can assign to others the
-\fBsolaris.admin.printer.delete\fR, \fBsolaris.admin.printer.modify\fR, and
-\fBsolaris.admin.printer.read\fR authorizations, but not the
-\fBsolaris.login.enable\fR authorization. If the administrator has both the
-grant authorization, \fBsolaris.admin.printmgr.grant\fR, and the wildcard
-authorization, \fBsolaris.admin.printmgr.*\fR, the administrator can grant to
-others any of the printer authorizations. See \fBuser_attr\fR(4) for more
-information about how wildcards can be used to assign multiple authorizations
-whose names begin with the same components.
-
-.LP
-\fBExample 5 \fRAuthorizing the Ability to Assign Other Authorizations
-.sp
-.LP
-The following entry defines an authorization that grants the ability to assign
-any authorization created with a \fBsolaris\fR prefix, when the administrator
-also has either the specific authorization being granted or a matching wildcard
-entry:
-
-.sp
-.in +2
-.nf
-solaris.grant:::Grant All Solaris Authorizations::help=PriAdmin.html
-.fi
-.in -2
-
-.LP
-\fBExample 6 \fRConsulting the Local Authorization File Ahead of the NIS Table
-.sp
-.LP
-With the following entry from \fB/etc/nsswitch.conf\fR, the local
-\fBauth_attr\fR file is consulted before the \fBNIS\fR table:
-
-.sp
-.in +2
-.nf
-auth_attr:files nis
-.fi
-.in -2
-
-.SH FILES
-.LP
-\fB/etc/nsswitch.conf\fR
-.sp
-.LP
-\fB/etc/user_attr\fR
-.sp
-.LP
-\fB/etc/security/auth_attr\fR
-.SH SEE ALSO
-.LP
-\fBgetauthattr\fR(3SECDB), \fBgetexecattr\fR(3SECDB),
-\fBgetprofattr\fR(3SECDB), \fBgetuserattr\fR(3SECDB), \fBexec_attr\fR(4),
-\fBnsswitch.conf\fR(4), \fBuser_attr\fR(4)
-.SH NOTES
-.LP
-Because the list of legal keys is likely to expand, any code that parses this
-database must be written to ignore unknown key-value pairs without error. When
-any new keywords are created, the names should be prefixed with a unique
-string, such as the company's stock symbol, to avoid potential naming
-conflicts.
-.sp
-.LP
-Each application has its own requirements for whether the help value must be a
-relative pathname ending with a filename or the name of a file. The only known
-requirement is for the name of a file.
-.sp
-.LP
-The following characters are used in describing the database format and must be
-escaped with a backslash if used as data: colon (\fB:\fR), semicolon (\fB;\fR),
-equals (\fB=\fR), and backslash (\fB\e\fR).
diff --git a/usr/src/man/man4/autofs.4 b/usr/src/man/man4/autofs.4
deleted file mode 100644
index 1bc8567869..0000000000
--- a/usr/src/man/man4/autofs.4
+++ /dev/null
@@ -1,113 +0,0 @@
-.\"
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.\"
-.\"
-.\" Copyright (c) 2002 Sun Microsystems, Inc. All rights reserved.
-.\" Copyright 2016 Nexenta Systems, Inc.
-.\"
-.Dd March 1, 2016
-.Dt AUTOFS 4
-.Os
-.Sh NAME
-.Nm autofs
-.Nd automount configuration properties
-.Sh DESCRIPTION
-The behavior of the
-.Xr automount 1M
-command and the
-.Xr automountd 1M
-daemon is controlled by property values that are stored in the Service
-Management Facility,
-.Xr smf 5 .
-The
-.Xr sharectl 1M
-command should be used to query or change values for these properties.
-.Pp
-Changes made to
-.Nm
-property values on an
-.Nm automount
-or
-.Nm automountd
-command line override the values set using
-.Xr sharectl 1M .
-.Pp
-The following list describes the properties:
-.Bl -tag -width Ds
-.It Sy timeout Ns = Ns Ar num
-Specifies a duration, in seconds, that a file system is to remain mounted when
-not in use.
-The default value is 600
-.Pq 10 minutes .
-Equivalent to the
-.Fl t
-option in
-.Nm automount .
-.It Sy automount_verbose Ns = Ns Sy true Ns | Ns Sy false
-Verbose mode.
-Causes you to be notified of non-critical events, such as
-.Nm
-mounts and unmounts.
-The default value is
-.Sy false .
-Equivalent to the
-.Fl v
-option in
-.Nm automount .
-.It Sy automountd_verbose Ns = Ns Sy true Ns | Ns Sy false
-Verbose mode.
-Causes status messages to be logged to the svc:/system/filesystem/autofs:default
-log file.
-The default value is
-.Sy false .
-Equivalent to the
-.Fl v
-option in
-.Nm automountd .
-.It Sy nobrowse Ns = Ns Sy true Ns | Ns Sy false
-Turn on or off browsing for all
-.Nm
-mount points.
-The default value is
-.Sy false .
-Equivalent to the
-.Fl n
-option in
-.Nm automountd .
-.It Sy trace Ns = Ns Ar num
-Expands each RPC call and logs it to svc:/system/filesystem/autofs:default
-log file.
-The default value, 0, turns off such tracing.
-Starting with 1, with each higher value, the verbosity of trace output
-increases.
-.It Xo
-.Sy environment Ns = Ns Ar name Ns = Ns Ar value Ns
-.Oo , Ns Ar name Ns = Ns Ar value Oc Ns ...
-.Xc
-Specifies a comma separated list of environment variables.
-If an environment variable has more than one value, those values should be
-separated with a comma, preceded by a backslash as an escape character
-.Pq Qq Sy \e, .
-For example:
-.Bd -literal -offset indent
-VAR1=val1,VAR2=val2\e,val3
-.Ed
-.El
-.Sh SEE ALSO
-.Xr automount 1M ,
-.Xr automountd 1M ,
-.Xr sharectl 1M ,
-.Xr smf 5
diff --git a/usr/src/man/man4/bart_manifest.4 b/usr/src/man/man4/bart_manifest.4
deleted file mode 100644
index dd2950a25f..0000000000
--- a/usr/src/man/man4/bart_manifest.4
+++ /dev/null
@@ -1,306 +0,0 @@
-'\" te
-.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH BART_MANIFEST 4 "December 28, 2020"
-.SH NAME
-bart_manifest \- system audit manifest file
-.SH DESCRIPTION
-The \fBbart\fR(1M) command generates a manifest that describes the contents of
-a managed host. A manifest consists of a header and entries. Each entry
-represents a single file. Entries are sorted in ascending order by file name.
-Any nonstandard file names, such as those that contain embedded newline or tab
-characters, have the special characters quoted prior to being sorted. See
-\fBQuoting Syntax\fR.
-.sp
-.LP
-Lines that begin with \fB!\fR supply metadata about the manifest. The manifest
-version line indicates the manifest specification version. The date line shows
-the date on which the manifest was created, in \fBdate\fR(1) form.
-.sp
-.LP
-Some lines are ignored by the manifest comparison tool. Ignored lines include
-blank lines, lines that consist only of white space, and comments that begin
-with \fB#\fR.
-.sp
-.LP
-In addition to metadata lines, the header contains the format comment block.
-This comment block lists the attributes reported for each file type.
-.sp
-.LP
-To see the format of a manifest file, see \fBEXAMPLES\fR.
-.SS "Manifest File Entries"
-Each manifest file entry is a single line of one of the following forms,
-depending on the file type:
-.sp
-.in +2
-.nf
-\fIfname\fR D \fIsize mode acl dirmtime uid gid\fR
-\fIfname\fR P \fIsize mode acl mtime uid gid\fR
-\fIfname\fR S \fIsize mode acl mtime uid gid\fR
-\fIfname\fR F \fIsize mode acl mtime uid gid contents\fR
-\fIfname\fR L \fIsize mode acl lnmtime uid gid dest\fR
-\fIfname\fR B \fIsize mode acl mtime uid gid devnode\fR
-\fIfname\fR C \fIsize mode acl mtime uid gid devnode\fR
-.fi
-.in -2
-
-.sp
-.LP
-The fields of the manifest file entries are described as follows:
-.sp
-.ne 2
-.na
-\fB\fIfname\fR\fR
-.ad
-.RS 12n
-Name of the file. To prevent parsing problems that are caused by special
-characters embedded in file names, file names are encoded as described in
-Quoting Syntax.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fItype\fR\fR
-.ad
-.RS 12n
-Type of file.
-.sp
-Possible values for \fItype\fR are as follows:
-.sp
-.ne 2
-.na
-\fBB\fR
-.ad
-.RS 5n
-Block device node
-.RE
-
-.sp
-.ne 2
-.na
-\fBC\fR
-.ad
-.RS 5n
-Character device node
-.RE
-
-.sp
-.ne 2
-.na
-\fBD\fR
-.ad
-.RS 5n
-Directory
-.RE
-
-.sp
-.ne 2
-.na
-\fBF\fR
-.ad
-.RS 5n
-File
-.RE
-
-.sp
-.ne 2
-.na
-\fBL\fR
-.ad
-.RS 5n
-Symbolic link
-.RE
-
-.sp
-.ne 2
-.na
-\fBP\fR
-.ad
-.RS 5n
-Pipe
-.RE
-
-.sp
-.ne 2
-.na
-\fBS\fR
-.ad
-.RS 5n
-Socket
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIsize\fR\fR
-.ad
-.RS 12n
-File size in bytes.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fImode\fR\fR
-.ad
-.RS 12n
-Octal number that represents the permissions of the file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIacl\fR\fR
-.ad
-.RS 12n
-ACL attributes for the file. For a file with ACL attributes, this field
-contains the output from \fBacltotext()\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIuid\fR\fR
-.ad
-.RS 12n
-Numerical user ID of the owner of this entry.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIgid\fR\fR
-.ad
-.RS 12n
-Numerical group ID of the owner of this entry.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIdirmtime\fR\fR
-.ad
-.RS 12n
-Modification time in seconds since 00:00:00 UTC, January 1, 1970 for
-directories.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIlnmtime\fR\fR
-.ad
-.RS 12n
-Creation time for links.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fImtime\fR\fR
-.ad
-.RS 12n
-Modification time in seconds since 00:00:00 UTC, January 1, 1970 for files.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIcontents\fR\fR
-.ad
-.RS 12n
-Checksum value of the file. This attribute is only specified for regular files.
-If you turn off context checking or if checksums cannot be computed, the value
-of this field is \fB-\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIdest\fR\fR
-.ad
-.RS 12n
-Destination of a symbolic link.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIdevnode\fR\fR
-.ad
-.RS 12n
-Value of the device node. This attribute is for character device files and
-block device files only.
-.RE
-
-.SS "Quoting Syntax"
-The rules file supports a quoting syntax for representing nonstandard file
-names.
-.sp
-.LP
-When generating a manifest for file names that contain embedded TAB, SPACE, or
-NEWLINE characters, the special characters are encoded in their octal forms.
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-Input Character Quoted Character
-_
-SPACE \eSPACE
-_
-TAB \eTAB
-_
-NEWLINE \eNEWLINE
-_
-? \e?
-_
-[ \e[
-_
-* \e*
-.TE
-
-.SH EXAMPLES
-\fBExample 1 \fRSample Manifest File
-.sp
-.LP
-The following is a sample system manifest file. The file entries are sorted by
-the encoded versions of the file names to correctly handle special characters.
-
-.sp
-.in +2
-.nf
-! Version 1.0
-! Mon Feb 11 10:55:30 2002
-# Format:
-# fname D size mode acl dirmtime uid gid
-# fname P size mode acl mtime uid gid
-# fname S size mode acl mtime uid gid
-# fname F size mode acl mtime uid gid contents
-# fname L size mode acl lnmtime uid gid dest
-# fname B size mode acl mtime uid gid devnode
-# fname C size mode acl mtime uid gid devnode
-/etc D 3584 40755 user::rwx,group::r-x,mask::r-x,other::r-x,
- 3c6803d7 0 3
-/etc/.login F 524 100644 user::rw-,group::r--,mask::r--,other::r--,
- 3c165878 0 3 27b53d5c3e844af3306f1f12b330b318
-/etc/.pwd.lock F 0 100600 user::rw-,group::---,mask::---,other::---,
- 3c166121 0 0 d41d8cd98f00b204e9800998ecf8427e
-/etc/.syslog_door L 20 120777 user::rw-,group::r--,mask::
- rwx,other::r--,3c6803d5 0 0 /var/run/syslog_door
-/etc/autopush L 16 120777 user::r-x,group::r-x,mask::r-x,other::r-x,
- 3c165863 0 0 ../sbin/autopush
-/etc/cron.d/FIFO P 0 10600 user::rw-,group::---,mask::---,other::---,
- 3c6803d5 0 0
-.fi
-.in -2
-
-.SH SEE ALSO
-\fBdate\fR(1), \fBbart\fR(1M), \fBbart_rules\fR(4), \fBattributes\fR(5)
diff --git a/usr/src/man/man4/bart_rules.4 b/usr/src/man/man4/bart_rules.4
deleted file mode 100644
index e3a73623ed..0000000000
--- a/usr/src/man/man4/bart_rules.4
+++ /dev/null
@@ -1,426 +0,0 @@
-'\" te
-.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH BART_RULES 4 "Sep 9, 2003"
-.SH NAME
-bart_rules \- bart rules file
-.SH DESCRIPTION
-.sp
-.LP
-The \fBbart_rules\fR file is a text file that is used by the \fBbart\fR(1M)
-command. The rules file determines which files to validate and which file
-attributes of those files to ignore.
-.sp
-.LP
-Some lines are ignored by the manifest comparison tool. Ignored lines include
-blank lines, lines that consist only of white space, and comments that begin
-with \fB#\fR.
-.sp
-.LP
-The rules file supports three directives: \fBCHECK\fR, \fBIGNORE\fR, and a
-\fIsubtree\fR directive, which is an absolute path name and optional pattern
-matching modifiers. Each \fBCHECK\fR, \fBIGNORE\fR, and \fIsubtree\fR directive
-must be on a separate line. Bart supports continuation of long lines using a
-backslash (\fB\e\fR). The rules file uses the directives to create logical
-blocks.
-.SS "Syntax"
-.sp
-.LP
-The syntax for the rules file is as follows:
-.sp
-.in +2
-.nf
-[IGNORE \fIattribute\fR...]*
-[CHECK] [\fIattribute\fR...]*
-
-\fIsubtree1\fR [\fIpattern\fR...]*
-[IGNORE \fIattribute\fR...]*
-[CHECK] [\fIattribute\fR...]*
-
-\fIsubtree2\fR [\fIpattern\fR...]*
-\fIsubtree3\fR [\fIpattern\fR...]*
-\fIsubtree4\fR [\fIpattern\fR...]*
-[IGNORE \fIattribute\fR...]*
-[CHECK] [\fIattribute\fR...]*
-\&...
-.fi
-.in -2
-
-.SS "Rule Blocks"
-.sp
-.LP
-Rule blocks are composed of statements that are created by using directives and
-arguments.
-.sp
-.LP
-There are three types of blocks:
-.sp
-.ne 2
-.na
-\fBGlobal Block\fR
-.ad
-.RS 16n
-The first block in the file. The block is considered ``global'' if it specifies
-\fBCHECK\fR and \fBIGNORE\fR statements, but no previous subtree statement. A
-global block pertains to all subsequent blocks.
-.RE
-
-.sp
-.ne 2
-.na
-\fBLocal block\fR
-.ad
-.RS 16n
-A block that specifies \fBCHECK\fR and \fBIGNORE\fR statements as well as a
-subtree directive. The rules in this block pertain to files and directories
-found in the specified subtree.
-.RE
-
-.sp
-.ne 2
-.na
-\fBHeir block\fR
-.ad
-.RS 16n
-A block that contains a null \fBCHECK\fR statement, no arguments. This block
-inherits the global \fBCHECK\fR statements and \fBIGNORE\fR statements.
-.RE
-
-.sp
-.LP
-The order in which \fBCHECK\fR and \fBIGNORE\fR statements appear in blocks is
-important. The \fBbart\fR command processes \fBCHECK\fR and \fBIGNORE\fR
-statements in the order in which they are read, with later statements
-overriding earlier statements.
-.sp
-.LP
-Subtree specifications must appear one per line. Each specification must begin
-with an absolute path name. Optionally, each specification can be followed by
-pattern-matching arguments.
-.sp
-.LP
-When a file system being tracked belongs to more than one subtree directive,
-\fBbart\fR performs the following resolution steps:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Applies the \fBCHECK\fR and \fBIGNORE\fR statements set in the global block.
-Note that all \fBCHECK\fR and \fBIGNORE\fR statements are processed in order.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Finds the last subtree directive that matches the file.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Processes the \fBCHECK\fR and \fBIGNORE\fR statements that belong to the last
-matching subtree directive. These statements are processed in the order in
-which they are read, overriding global settings.
-.RE
-.SS "Pattern Matching Statements"
-.sp
-.LP
-There are two types of pattern matching statements
-.sp
-.ne 2
-.na
-\fBAND\fR
-.ad
-.RS 7n
-For a given subtree directive, all pattern matching statements are logically
-ANDed with the subtree. Patterns have the following syntax:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Wildcards are permitted for both the subtree and pattern matching statements.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The exclamation point (\fB!\fR) character represents logical NOT.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-A pattern that terminates with a slash is a subtree. The absence of a slash
-indicates that the pattern is not a directory. The subtree itself does not
-require an end slash.
-.RE
-For example, the following subtree example includes the contents of
-\fB/home/nickiso/src\fR except for object files, core files, and all of the
-SCCS subtrees. Note that directory names that terminate with \fB\&.o\fR and
-directories named \fBcore\fR are \fBnot\fR excluded because the patterns
-specified do not terminate with \fB/\fR.
-.sp
-.in +2
-.nf
-/home/nickiso/src !*.o !core !SCCS/
-CHECK all
-.fi
-.in -2
-
-.RE
-
-.sp
-.ne 2
-.na
-\fBOR\fR
-.ad
-.RS 7n
-Group multiple subtree directives together. Such subtree directives are
-logically ORed together.
-.sp
-.in +2
-.nf
-/home/nickiso/src !*.o !core
-/home/nickiso/Mail
-/home/nickiso/docs *.sdw
-CHECK all
-IGNORE mtime lnmtime dirmtime
-.fi
-.in -2
-
-The files included in the previous example are as follows:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Everything under \fB/home/nickiso/src\fR except for \fB*.o\fR and \fBcore\fR
-files
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Everything under \fB/home/nickiso/Mail\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-All files under \fB/home/nickiso/docs\fR that end in \fB*.sdw\fR
-.RE
-For these files, all attributes are checked except for modification times.
-.RE
-
-.SS "File Attributes"
-.sp
-.LP
-The \fBbart\fR command uses \fBCHECK\fR and \fBIGNORE\fR statements to define
-which attributes to track or ignore. Each attribute has an associated keyword.
-.sp
-.LP
-The attribute keywords are as follows:
-.sp
-.ne 2
-.na
-\fBacl\fR
-.ad
-.RS 12n
-ACL attributes for the file. For a file with ACL attributes, this field
-contains the output from \fBacltotext()\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBall\fR
-.ad
-.RS 12n
-All attributes.
-.RE
-
-.sp
-.ne 2
-.na
-\fBcontents\fR
-.ad
-.RS 12n
-Checksum value of the file. This attribute is only specified for regular files.
-If you turn off context checking or if checksums cannot be computed, the value
-of this field is \fB-\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBdest\fR
-.ad
-.RS 12n
-Destination of a symbolic link.
-.RE
-
-.sp
-.ne 2
-.na
-\fBdevnode\fR
-.ad
-.RS 12n
-Value of the device node. This attribute is for character device files and
-block device files only.
-.RE
-
-.sp
-.ne 2
-.na
-\fBdirmtime\fR
-.ad
-.RS 12n
-Modification time in seconds since 00:00:00 UTC, January 1, 1970 for
-directories.
-.RE
-
-.sp
-.ne 2
-.na
-\fBgid\fR
-.ad
-.RS 12n
-Numerical group ID of the owner of this entry.
-.RE
-
-.sp
-.ne 2
-.na
-\fBlnmtime\fR
-.ad
-.RS 12n
-Creation time for links.
-.RE
-
-.sp
-.ne 2
-.na
-\fBmode\fR
-.ad
-.RS 12n
-Octal number that represents the permissions of the file.
-.RE
-
-.sp
-.ne 2
-.na
-\fBmtime\fR
-.ad
-.RS 12n
-Modification time in seconds since 00:00:00 UTC, January 1, 1970 for files.
-.RE
-
-.sp
-.ne 2
-.na
-\fBsize\fR
-.ad
-.RS 12n
-File size in bytes.
-.RE
-
-.sp
-.ne 2
-.na
-\fBtype\fR
-.ad
-.RS 12n
-Type of file.
-.RE
-
-.sp
-.ne 2
-.na
-\fBuid\fR
-.ad
-.RS 12n
-Numerical user ID of the owner of this entry.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRSample Rules File
-.sp
-.LP
-The following is a sample rules file:
-
-.sp
-.in +2
-.nf
-# Global rules, track everything except dirmtime.
-CHECK all
-IGNORE dirmtime
-
-# The files in /data* are expected to change, so don't bother
-# tracking the attributes expected to change.
-# Furthermore, by specifying ``IGNORE contents,'' you save
-# time and resources.
-/data*
-IGNORE contents mtime size
-
-/home/nickiso f* bar/
-IGNORE acl
-
-# For /usr, apply the global rules.
-/usr
-CHECK
-
-# Note: Since /usr/tmp follows the /usr block, the /usr/tmp
-# subtree is subjected to the ``IGNORE all.''
-/usr/tmp
-/home/nickiso *.o
-/home/nickiso core
-/home/nickiso/proto
-IGNORE all
-.fi
-.in -2
-
-.sp
-.LP
-The following files are cataloged based on the sample rules file:
-
-.RS +4
-.TP
-.ie t \(bu
-.el o
-All attributes, except for \fBdirmtime\fR, \fBmtime\fR, \fBsize\fR, and
-\fBcontents\fR, are tracked for files under the \fB/data*\fR subtrees.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Files under the \fB/usr\fR subtree, except for \fB/usr/tmp\fR, are cataloged by
-using the global rules.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-If the \fB/home/nickiso/foo.c\fR file exists, its attributes, except for
-\fBacl\fR and \fBdirmtime\fR, are cataloged.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-All \fB\&.o\fR and \fBcore\fR files under \fB/home/nickiso\fR, as well as the
-\fB/home/nickiso/proto\fR and \fB/usr/tmp\fR subtrees, are ignored.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-If the \fB/home/nickiso/bar/foo.o\fR file exists, it is ignored because it is
-subject to the last block.
-.RE
-.SH SEE ALSO
-.sp
-.LP
-\fBbart\fR(1M), \fBbart_manifest\fR(4), \fBattributes\fR(5)
diff --git a/usr/src/man/man4/bhyve_config.4 b/usr/src/man/man4/bhyve_config.4
deleted file mode 100644
index 94572b7ace..0000000000
--- a/usr/src/man/man4/bhyve_config.4
+++ /dev/null
@@ -1,524 +0,0 @@
-.\" SPDX-License-Identifier: BSD-2-Clause
-.\"
-.\" Copyright (c) 2021 John H. Baldwin <jhb@FreeBSD.org>
-.\"
-.\" Redistribution and use in source and binary forms, with or without
-.\" modification, are permitted provided that the following conditions
-.\" are met:
-.\" 1. Redistributions of source code must retain the above copyright
-.\" notice, this list of conditions and the following disclaimer.
-.\" 2. Redistributions in binary form must reproduce the above copyright
-.\" notice, this list of conditions and the following disclaimer in the
-.\" documentation and/or other materials provided with the distribution.
-.\"
-.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
-.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
-.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
-.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
-.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-.\" SUCH DAMAGE.
-.\"
-.\" Portions Copyright 2022 OmniOS Community Edition (OmniOSce) Association.
-.\"
-.Dd February 26, 2022
-.Dt BHYVE_CONFIG 4
-.Os
-.Sh NAME
-.Nm bhyve_config
-.Nd "bhyve configuration variables"
-.Sh DESCRIPTION
-.Xr bhyve 1M
-uses a hierarchical tree of configuration variables to describe global and
-per-device settings.
-Internal nodes in this tree do not have a value,
-only leaf nodes have values.
-This manual describes the configuration variables understood by
-.Xr bhyve 1M .
-If additional variables are defined,
-.Xr bhyve 1M
-will ignore them and will not emit errors for unknown variables.
-However, these additional variables can be referenced by other
-variables as described below.
-.Sh VARIABLE VALUES
-Configuration variable values are stored as strings.
-A configuration variable value may refer to one or more other
-configuration values by name.
-Instances of the pattern
-.Sq % Ns Pq Ar var
-are replaced by the value of the configuration variable
-.Va var .
-To avoid unwanted expansion,
-.Sq %
-characters can be escaped by a leading
-.Sq % .
-For example,
-if a configuration variable
-.Va disk
-uses the value
-.Pa /dev/zvol/bhyve/%(name) ,
-then the final value of the
-.Va disk
-variable will be set to the path of a ZFS volume whose name matches
-the name of the virtual machine on the pool
-.Pa bhyve .
-.Pp
-Some configuration variables may be interpreted as a boolean value.
-For those variables the following case-insensitive values may be used to
-indicate true:
-.Pp
-.Bl -bullet -offset indent -compact
-.It
-true
-.It
-on
-.It
-yes
-.It
-1
-.El
-.Pp
-The following values may be used to indicate false:
-.Pp
-.Bl -bullet -offset indent -compact
-.It
-false
-.It
-off
-.It
-no
-.It
-0
-.El
-.Pp
-Some configuration variables may be interpreted as an integer.
-For those variables,
-any syntax supported by
-.Xr strtoul 3C
-may be used.
-.Sh GLOBAL SETTINGS
-.Ss Architecture Neutral Settings
-.Bl -column "memory.guest_in_core" "integer" "Default"
-.It Sy Name Ta Sy Format Ta Sy Default Ta Sy Description
-.It Va name Ta string Ta Ta
-The name of the VM.
-.It Va cpus Ta integer Ta 1 Ta
-The total number of virtual CPUs.
-.It Va cores Ta integer Ta 1 Ta
-The number of virtual cores in each virtual socket.
-.It Va threads Ta integer Ta 1 Ta
-The number of virtual CPUs in each virtual core.
-.It Va sockets Ta integer Ta 1 Ta
-The number of virtual sockets.
-.It Va memory.size Ta string Ta 256M Ta
-Guest physical memory size.
-The size argument may be suffixed with one of K, M, G or T (either upper
-or lower case) to indicate a multiple of kibibytes, mebibytes, gibibytes,
-or tebibytes.
-If no suffix is given, the value is assumed to be in mebibytes.
-.It Va memory.wired Ta bool Ta false Ta
-Wire guest memory.
-.It Va acpi_tables Ta bool Ta false Ta
-Generate ACPI tables; these tables are
-.Em not
-used on illumos.
-.It Va destroy_on_poweroff Ta bool Ta false Ta
-Destroy the VM on guest-initiated power-off.
-.It Va gdb.address Ta string Ta localhost Ta
-Hostname, IP address, or IPv6 address for the debug server.
-.It Va gdb.port Ta integer Ta 0 Ta
-TCP port number for the debug server.
-If this is set to a non-zero value, a debug server
-will listen for connections on this port.
-.It Va gdb.wait Ta bool Ta false Ta
-If the debug server is enabled, wait for a debugger to connect
-before starting the guest.
-.It Va rtc.use_localtime Ta bool Ta true Ta
-The real time clock uses the local time of the host.
-If this is set to false, the real time clock uses UTC.
-.It Va uuid Ta string Ta Ta
-The universally unique identifier (UUID) to use in the guest's
-System Management BIOS System Information structure.
-If an explicit value is not set, a valid UUID is generated from
-the host's hostname and the VM name.
-.It Va virtio_msix Ta bool Ta true Ta
-Use MSI-X interrupts for PCI VirtIO devices.
-If set to false, MSI interrupts are used instead.
-.It Va config.dump Ta bool Ta false Ta
-If this value is set to true then, after parsing command line options,
-.Xr bhyve 1M
-will write all of its configuration variables to
-.Dv stdout
-and exit.
-No VM will be started.
-.It Va privileges.debug Ta bool Ta false Ta
-Enable debug messages relating to privilege management.
-These messages are sent to
-.Dv stdout .
-.El
-.Ss x86-Specific Settings
-.Bl -column "x86.vmexit_on_pause" "integer" "Default"
-.It Sy Name Ta Sy Format Ta Sy Default Ta Sy Description
-.It Va x86.mptable Ta bool Ta true Ta
-Generate an MPTable.
-.It Va x86.x2apic Ta bool Ta false Ta
-Configure guest's local APICs in x2APIC mode.
-.It Va x86.strictio Ta bool Ta false Ta
-Exit if a guest accesses an I/O port that is not emulated.
-By default, writes are ignored and reads return all bits set.
-.It Va x86.strictmsr Ta bool Ta true Ta
-Inject a general protection fault if a guest accesses a Model Specific
-Register (MSR) that is not emulated.
-If this is false, writes are ignored and reads return zero.
-.It Va x86.vmexit_on_hlt Ta bool Ta false Ta
-Force a VM exit when a guest CPU executes the
-.Dv HLT
-instruction.
-This allows idle guest CPUs to yield the host CPU.
-.It Va x86.vmexit_on_pause Ta bool Ta false Ta
-Force a VM exit when a guest CPU executes the
-.Dv PAUSE
-instruction.
-.El
-.Sh DEVICE SETTINGS
-Device settings are stored under a device node.
-The device node's name is set by the parent bus of the device.
-.Ss PCI Device Settings
-PCI devices are described by a device node named
-.Dq pci . Ns Ar bus . Ns Ar slot . Ns Ar function
-where each of
-.Ar bus ,
-.Ar slot ,
-and
-.Ar function
-are formatted as decimal values with no padding.
-All PCI device nodes must contain a configuration variable named
-.Dq device
-which specifies the device model to use.
-The following PCI device models are supported:
-.Bl -tag -width indent
-.It Li hostbridge
-Provide a simple PCI-Host bridge device.
-This is usually configured at pci0:0:0 and is required by most guest
-operating systems.
-.It Li ahci
-AHCI storage controller.
-.It Li e1000
-Intel e82545 network interface.
-.It Li fbuf
-VGA framebuffer device attached to VNC server.
-.It Li lpc
-LPC PCI-ISA bridge with COM1-COM4 16550 serial ports,
-a boot ROM,
-and an optional debug/test device.
-This device must be configured on bus 0.
-.It Li nvme
-NVM Express (NVMe) controller.
-.It Li passthru
-PCI pass-through device.
-.It Li uart
-PCI 16550 serial device.
-.It Li virtio-9p
-VirtIO 9p (VirtFS) interface.
-.It Li virtio-blk
-VirtIO block storage interface.
-.It Li virtio-console
-VirtIO console interface.
-.It Li virtio-net-viona
-Accelerated VirtIO network interface.
-.It Li net-viona
-Legacy VirtIO network interface.
-.It Li virtio-rnd
-VirtIO random number generator interface.
-.It Li xhci
-Extensible Host Controller Interface (XHCI) USB controller.
-.El
-.Ss USB Device Settings
-USB controller devices contain zero or more child USB devices
-attached to slots.
-Each USB device stores its settings in a node named
-.Dq slot. Ns Va N
-under the controller's device node.
-.Va N
-is the number of the slot to which the USB device is attached.
-Note that USB slot numbers begin at 1.
-All USB device nodes must contain a configuration variable named
-.Dq device
-which specifies the device model to use.
-The following USB device models are supported:
-.Bl -tag -width indent
-.It Li tablet
-A USB tablet device which provides precise cursor synchronization
-when using VNC.
-.El
-.Ss Block Device Settings
-Block devices use the following settings to configure their backing store.
-These settings are stored in the configuration node of the respective device.
-.Bl -column "sectorsize" "logical[/physical]" "Default"
-.It Sy Name Ta Sy Format Ta Sy Default Ta Sy Description
-.It path Ta string Ta Ta
-The path of the file or disk device to use as the backing store.
-.It nocache Ta bool Ta false Ta
-Disable caching on the backing file by opening the backing file with
-.Dv O_DIRECT .
-.It nodelete Ta bool Ta false Ta
-Disable emulation of guest trim requests via
-.Dv DIOCGDELETE
-requests.
-.It sync Ta bool Ta false Ta
-Write changes to the backing file with synchronous writes.
-.It direct Ta bool Ta false Ta
-An alias for
-.Va sync .
-.It ro Ta bool Ta false Ta
-Disable writes to the backing file.
-.It sectorsize Ta Va logical Ns Op / Ns Va physical Ta Ta
-Specify the logical and physical sector size of the emulated disk.
-If the physical size is not specified, it is set to be equal to the logical
-size.
-.El
-.Ss virtio-net-viona Network Backend Settings
-Viona network devices use the following settings to configure their backend.
-.Bl -column "feature_flags" "string" "Default"
-.It Sy Name Ta Sy Format Ta Sy Default Ta Sy Description
-.It vnic Ta string Ta Ta
-The VNIC to use for the network connection.
-.It feature_mask Ta integer Ta 0 Ta
-Specify a mask to apply to the virtio features advertised to the guest.
-.El
-.Ss Other Network Backend Settings
-Other network devices use the following settings to configure their backend.
-.Bl -column "feature_flags" "string" "Default"
-.It Sy Name Ta Sy Format Ta Sy Default Ta Sy Description
-.It vnic Ta string Ta Ta
-The VNIC to use for the network connection.
-.It promiscphys Ta bool Ta false Ta
-Enable promiscuous mode at the physical level.
-.It promiscsap Ta bool Ta true Ta
-Enable promiscuous mode at the SAP level.
-.It promiscmulti Ta bool Ta true Ta
-Enable promiscuous mode for all multicast addresses.
-.It promiscrxonly Ta bool Ta true Ta
-The selected promiscuous modes are only enabled for received traffic.
-.El
-.Ss UART Device Settings
-.Bl -column "Name" "Format" "Default"
-.It Sy Name Ta Sy Format Ta Sy Default Ta Sy Description
-.It Va path Ta path Ta Ta
-Backend device for the serial port.
-Either the pathname of a character device or
-.Dq stdio
-to use standard input and output of the
-.Xr bhyve 1M
-process.
-.El
-.Ss Host Bridge Settings
-Host Bridge devices use the following settings.
-When configuring parameters, either the
-.Va model
-by itself, or both of
-.Va vendor
-and
-.Va devid
-must be specified.
-.Bl -column "vendor" "integer" "Default"
-.It Sy Name Ta Sy Format Ta Sy Default Ta Sy Description
-.It Va model Ta string Ta netapp Ta
-Specify a hostbridge model to emulate.
-Valid model strings, and their associated vendor and device IDs are:
-.Sy amd Pq 0x1022/0x7432 ,
-.Sy netapp Pq 0x1275/0x1275 ,
-.Sy i440fx Pq 0x8086/0x1237
-and
-.Sy q35 Pq 0x8086/0x29b0 .
-.It Va vendor Ta integer Ta 0x1275 Ta
-PCI vendor ID.
-.It Va devid Ta integer Ta 0x1275 Ta
-PCI device ID.
-.El
-.Ss AHCI Controller Settings
-AHCI controller devices contain zero or more ports each of which
-provides a storage device.
-Each port stores its settings in a node named
-.Dq port. Ns Va N
-under the controller's device node.
-The
-.Va N
-values are formatted as successive decimal values starting with 0.
-In addition to the block device settings described above, each
-port supports the following settings:
-.Bl -column "model" "integer" "generated"
-.It Sy Name Ta Sy Format Ta Sy Default Ta Sy Description
-.It Va type Ta string Ta Ta
-The type of storage device to emulate.
-Must be set to either
-.Dq cd
-or
-.Dq hd .
-.It Va nmrr Ta integer Ta 0 Ta
-Nominal Media Rotation Rate, also known as RPM.
-A value 1 of indicates a device with no rate such as a Solid State Disk.
-.It Va ser Ta string Ta generated Ta
-Serial number of up to twenty characters.
-A default serial number is generated using a hash of the backing
-store's pathname.
-.It Va rev Ta string Ta 001 Ta
-Revision number of up to eight characters.
-.It Va model Ta string Ta Ta
-Model number of up to forty characters.
-Separate default model strings are used for
-.Dq cd
-and
-.Dq hd
-device types.
-.El
-.Ss Frame Buffer Settings
-.Bl -column "password" "[IP:]port" "127.0.0.1:5900"
-.It Sy Name Ta Sy Format Ta Sy Default Ta Sy Description
-.It Va wait Ta bool Ta false Ta
-Wait for a remote connection before starting the VM.
-.It Va rfb Ta Oo Ar IP Ns \&: Oc Ns Ar port Ta 127.0.0.1:5900 Ta
-TCP address to listen on for remote connections.
-The IP address must be given as a numeric address.
-IPv6 addresses must be enclosed in square brackets and
-support scoped identifiers as described in
-.Xr getaddrinfo 3SOCKET .
-A bare port number may be given in which case the IPv4
-localhost address is used.
-.It Va unix Ta string Ta Ta
-UNIX socket to listen on for VNC connections.
-.It Va vga Ta string Ta io Ta
-VGA configuration.
-More details are provided in
-.Xr bhyve 1M .
-.It Va w Ta integer Ta 1024 Ta
-Frame buffer width in pixels.
-.It Va h Ta integer Ta 768 Ta
-Frame buffer height in pixels.
-.It Va password Ta string Ta Ta
-Password to use for VNC authentication.
-This type of authentication is known to be cryptographically weak and is not
-intended for use on untrusted networks.
-.El
-.Ss LPC Device Settings
-The LPC bridge stores its configuration under a top-level
-.Va lpc
-node rather than under the PCI LPC device's node.
-The following nodes are available under
-.Va lpc :
-.Bl -column "pc-testdev" "Format" "Default"
-.It Sy Name Ta Sy Format Ta Sy Default Ta Sy Description
-.It Va bootrom Ta path Ta Ta
-Path to a boot ROM.
-The contents of this file are copied into the guest's
-memory ending just before the 4GB physical address.
-If a boot ROM is present, a firmware interface device is
-also enabled for use by the boot ROM.
-.It Va com1 Ta node Ta Ta
-Settings for the COM1 serial port device.
-.It Va com2 Ta node Ta Ta
-Settings for the COM2 serial port device.
-.It Va com3 Ta node Ta Ta
-Settings for the COM3 serial port device.
-.It Va com4 Ta node Ta Ta
-Settings for the COM4 serial port device.
-.It Va pc-testdev Ta bool Ta false Ta
-Enable the PC debug/test device.
-.El
-.Ss NVMe Controller Settings
-Each NVMe controller supports a single storage device.
-The device can be backed either by a memory disk described by the
-.Va ram
-variable, or a block device using the block device settings described above.
-In addition, each controller supports the following settings:
-.Bl -column "ioslots" "Format" "Default"
-.It Sy Name Ta Sy Format Ta Sy Default Ta Sy Description
-.It Va maxq Ta integer Ta 16 Ta
-Maximum number of I/O submission and completion queue pairs.
-.It Va qsz Ta integer Ta 2058 Ta
-Number of elements in each I/O queue.
-.It Va ioslots Ta integer Ta 8 Ta
-Maximum number of concurrent I/O requests.
-.It Va sectsz Ta integer Ta Ta
-Sector size.
-Can be one of 512, 4096, or 8192.
-Devices backed by a memory disk use 4096 as the default.
-Devices backed by a block device use the block device's sector size
-as the default.
-.It Va ser Ta string Ta Ta
-Serial number of up to twenty characters.
-A default serial number is generated using a hash of the device's PCI address.
-.It Va eui64 Ta integer Ta Ta
-IEEE Extended Unique Identifier.
-If an EUI is not provided, a default is generated using a checksum of the
-device's PCI address.
-.It Va dsm Ta string Ta auto Ta
-Whether or not to advertise Dataset Management (DSM) support.
-One of
-.Dq auto ,
-.Dq enable ,
-or
-.Dq disable .
-The
-.Dq auto
-setting only advertises support if the backing store supports
-resource freeing, for example via TRIM.
-.It Va ram Ta integer Ta Ta
-If set, allocate a memory disk as the backing store.
-The value of this variable is the size of the memory disk in megabytes.
-.El
-.Ss PCI Passthrough Settings
-.Bl -column "Name" "integer" "Default"
-.It Sy Name Ta Sy Format Ta Sy Default Ta Sy Description
-.It Va path Ta string Ta Ta
-Path to a PCI passthrough device in the form
-.Pa /dev/ppt Ns Ar N
-where
-.Ar N
-is the device number.
-.El
-.Ss VirtIO 9p Settings
-Each VirtIO 9p device exposes a single filesystem from a host path.
-.Bl -column "sharename" "Format" "Default"
-.It Sy Name Ta Sy Format Ta Sy Default Ta Sy Description
-.It Va sharename Ta string Ta Ta
-The share name exposed to the guest.
-.It Va path Ta path Ta Ta
-The path of a directory on the host to export to the guest.
-.It Va ro Ta bool Ta false Ta
-If true, the guest filesystem is read-only.
-.El
-.Ss VirtIO Block Device Settings
-In addition to the block device settings described above, each
-VirtIO block device supports the following settings:
-.Bl -column "model" "integer" "generated"
-.It Sy Name Ta Sy Format Ta Sy Default Ta Sy Description
-.It Va ser Ta string Ta generated Ta
-Serial number of up to twenty characters.
-A default serial number is generated using a hash of the backing
-store's pathname.
-.El
-.Ss VirtIO Console Device Settings
-Each VirtIO Console device contains one or more console ports.
-Each port stores its settings in a node named
-.Dq port. Ns Va N
-under the controller's device node.
-The
-.Va N
-values are formatted as successive decimal values starting with 0.
-Each port supports the following settings:
-.Bl -column "Name" "Format" "Default"
-.It Sy Name Ta Sy Format Ta Sy Default Ta Sy Description
-.It Va name Ta string Ta Ta
-The name of the port exposed to the guest.
-.It Va path Ta path Ta Ta
-The path of a UNIX domain socket providing the host connection for the port.
-.El
-.Sh SEE ALSO
-.Xr bhyve 1M ,
-.Xr strtoul 3C ,
-.Xr getaddrinfo 3SOCKET
diff --git a/usr/src/man/man4/bootparams.4 b/usr/src/man/man4/bootparams.4
deleted file mode 100644
index 50c582efff..0000000000
--- a/usr/src/man/man4/bootparams.4
+++ /dev/null
@@ -1,227 +0,0 @@
-'\" te
-.\" Copyright 2021 Peter Tribble
-.\" Copyright (C) 2002, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH BOOTPARAMS 4 "November 22, 2021"
-.SH NAME
-bootparams \- boot parameter data base
-.SH SYNOPSIS
-.nf
-\fB/etc/bootparams\fR
-.fi
-
-.SH DESCRIPTION
-The \fBbootparams\fR file contains a list of client entries that diskless
-clients use for booting. Diskless booting clients retrieve this information by
-issuing requests to a server running the \fBrpc.bootparamd\fR(1M) program. The
-\fBbootparams\fR file may be used in conjunction with or in place of other
-sources for the \fBbootparams\fR information. See \fBnsswitch.conf\fR(4).
-.sp
-.LP
-For each client the file contains an entry with the client's name and a list of
-boot parameter values for that client. Each entry has the form:
-.sp
-.in +2
-.nf
-\fIclientname keyword=value\fR...
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The first item of each entry is the host name of the diskless client. You can
-use the asterisk ('*') character as a "wildcard" in place of the client name in
-a single entry. A wildcard entry applies to all clients for which there is not
-an entry that specifically names them.
-.sp
-.LP
-In a given entry, the host name or asterisk is followed by one or more
-whitespace characters and a series of keyword\(emvalue pairs separated by
-whitespace characters. There must not be any whitespace within a
-keyword\(emvalue pair.
-.sp
-.LP
-Each keyword\(emvalue pair has the syntax:
-.sp
-.in +2
-.nf
-\fIkeyword\fR\fB=\fR\fIvalue\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The preceding form breaks out further as:
-.sp
-.in +2
-.nf
-\fIkeyword\fR\fB=\fR\fIserver\fR\fB:\fR\fIvalue\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Where \fIserver\fR can be null and \fIvalue\fR can be a pathname.
-.sp
-.LP
-An example that includes a server is:
-.sp
-.in +2
-.nf
-client1 root=server1:/export/client1/root
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-An example where \fIserver\fR is null is:
-.sp
-.in +2
-.nf
-client1 rootopts=:vers2
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-A minor variation of the \fIkeyword=value\fR syntax is used for the
-\fBdomain\fR keyword. Unlike the forms shown above, this syntax does not use a
-colon. For example:
-.sp
-.in +2
-.nf
-client1 domain=bldg1.example.com
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Entries can span multiple lines. Use the backslash ('\e') character as the last
-character of a line to continue the entry to the following line. For
-multiple-line entries, you can split a line only in places where whitespace is
-allowed. For example, you can use a backslash to split the following entry
-between the end of the path (\fBroot\fR) and the keyword \fBdomain\fR:
-.sp
-.in +2
-.nf
-client1 root=server1:/export/client1/root domain=bldg1.example.com
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-In entries that specify a server, \fIserver\fR is the name of the server that
-will provide the file or filesystem to the diskless client and \fIvalue\fR is
-the pathname of the exported file or filesystem on that server.
-.sp
-.LP
-In entries that use the \fBdomain\fR keyword, the domain name specified must be
-the client's domain name. The algorithm for determining a client's domain name
-is to first check for a \fBdomain\fR keyword in the client-specific entry and
-then in "wildcard" entry. If none is found, the server's domain name is used.
-.sp
-.LP
-For the JumpStart installation of machines that do not have video displays, use
-the \fBterm\fR keyword to identify the terminal type of the boot server.
-Terminal types are listed in \fB/usr/share/lib/terminfo\fR (see
-\fBterminfo\fR(4)).
-.sp
-.LP
-An entry with the \fBns\fR keyword associates a server (a name server) with,
-instead of a pathname, a specific name service (\fBNIS+\fR, \fBNIS\fR,
-\fBLDAP\fR, or \fBnone\fR) and, if that server is not on a local subnet, the
-netmask needed to reach it. For example:
-.sp
-.in +2
-.nf
-ns=hoot:nisplus(255.255.255.0)
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-An \fBns\fR entry forces \fBsysidtool\fR to use the specified name service.
-By default, \fBsysidtool\fR uses \fBNIS+\fR in preference to \fBNIS\fR or
-\fBLDAP\fR if it can find an \fBNIS+\fR server for the system's domain on the
-subnet. An \fBns\fR entry might be necessary if you are trying to set up a
-hands-off installation, or if the name server is on a different subnet, which
-is common with \fBNIS+\fR.
-.sp
-.LP
-If an \fBns\fR keyword is not used, \fBsysidtool\fR uses broadcast to attempt
-to bind to either a \fBNIS+\fR, \fBNIS\fR, or \fBLDAP\fR server. If a name
-server is not on the local subnet, which is possible for \fBNIS+\fR or
-\fBLDAP\fR, the bind will fail, automatic configuration of the name service
-will fail, and an interactive screen is displayed, prompting the user to
-specify the name service.
-.sp
-.LP
-The \fBns\fR keyword can be set in \fBadd_install_client\fR or by Host Manager.
-.SH EXAMPLES
-\fBExample 1 \fRSample \fBbootparams\fR Entry
-.sp
-.LP
-Here is an example of an entry in the \fBbootparams\fR file:
-
-.sp
-.in +2
-.nf
- client1 root=server1:/export/client1/root rootopts=:vers=2 \e
- domain=bldg1.example.com
- client2 root=server2:/export/client2/root ns=:nis
- client3 root=server2:/export/client3/root ns=watson:
- client4 root=server2:/export/client4/root \e
- ns=mach:nisplus(255.255.255.0)
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRSample Entry for JumpStart
-.sp
-.LP
-The following is an example of an entry that might be used for the JumpStart
-installation of diskless clients that do not have displays.
-
-.sp
-.in +2
-.nf
-mozart root=haydn:/export/install/sparc/os/latest/Solaris_9/boot \e
-install=haydn:/export/install/sparc/os/8.1/latest boottype=:in \e
-install_config=haydn:/usr/local/share/lib/jump-net \e
-ns=otis:nisplus(255.255.255.0) term=:xterms domain=eu.cte.example.com
-.fi
-.in -2
-.sp
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/etc/bootparams\fR\fR
-.ad
-.RS 19n
-
-.RE
-
-.SH SEE ALSO
-\fBrpc.bootparamd\fR(1M), \fBnsswitch.conf\fR(4)
-.SH NOTES
-The \fBNIS+\fR, \fBsysidtool\fR, and jumpstart facilities are not present in
-illumos. They are documented here solely for users who wish to use illumos as
-a jumpstart server for older Solaris releases.
-.sp
-.LP
-Solaris diskless clients use the keywords \fBroot\fR and \fBrootopts\fR to look
-up the pathname for the root filesystem and the mount options for the root
-filesystem, respectively. These are the only keywords meaningful for diskless
-booting clients. See \fBmount_ufs\fR(1M).
diff --git a/usr/src/man/man4/cardbus.4 b/usr/src/man/man4/cardbus.4
deleted file mode 100644
index a2bdfab88e..0000000000
--- a/usr/src/man/man4/cardbus.4
+++ /dev/null
@@ -1,237 +0,0 @@
-'\" te
-.\" Copyright (c) 2005 Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH CARDBUS 4 "Jul 11, 2006"
-.SH NAME
-cardbus \- configuration files for cardbus device drivers
-.SH DESCRIPTION
-.sp
-.LP
-The CardBus bus share the same configuration parameters with the PCI bus.
-CardBus devices are self-identifying, which means that these devices provide
-configuration parameters to the system that allow the system to identify the
-device and its driver. The configuration parameters are represented in the form
-of name-value pairs that can be retrieved using the \fBDDI\fR property
-interfaces. See \fBddi_prop_lookup\fR(9F) for details.
-.sp
-.LP
-The CardBus bus properties of CardBus devices are derived from PCI
-configuration space. Therefore, driver configuration files are not necessary
-for these devices.
-.sp
-.LP
-On some occasions, drivers for CardBus devices can use driver configuration
-files to provide driver private properties through the global property
-mechanism. See \fBdriver.conf\fR(4) for further details. Driver configuration
-files can also be used to augment or override properties for a specific
-instance of a driver.
-.sp
-.LP
-The CardBus nexus driver recognizes the following properties:
-.sp
-.ne 2
-.na
-\fB\fBreg\fR\fR
-.ad
-.RS 14n
-An arbitrary length array where each element of the array consists of a 5-tuple
-of 32-bit values. Each array element describes a logically contiguous mappable
-resource on the \fBPCI\fR bus.
-.sp
-The first three values in the 5-tuple describe the \fBPCI\fR address of the
-mappable resource. The first tuple contains the following information:
-.sp
-
-.sp
-.TS
-l l l
-l l l .
-Bits 0 - 7 8-bit register number
-Bits 8 - 10 3-bit function number
-Bits 11 - 15 5-bit device number
-Bits 16 - 23 8-bit bus number
-Bits 24 - 25 2-bit address space type identifier
-Bits 31 - 28 T{
-Register number extended bits 8:11 for extended config space. Zero for conventional configuration space.
-T}
-.TE
-
-The address space type identifier can be interpreted as follows:
-.sp
-
-.sp
-.TS
-l l l
-l l l .
-0x0 configuration space
-0x1 I/O space
-0x2 32-bit memory space address
-.TE
-
-The bus number is a unique identifying number assigned to each bus within the
-\fBPCI\fR or PCIe domain.
-.sp
-The device number is a unique identifying number assigned to each device on a
-\fBPCI\fR bus, PCIe logical bus, or CardBus bus. A device number is unique only
-within the set of device numbers for a particular bus or logical bus.
-.sp
-Each CardBus device can have one to eight logically independent functions, each
-with its own independent set of configuration registers. Each function on a
-device is assigned a function number. For a device with only one function, the
-function number must be \fB0\fR.
-.sp
-The register number fields select a particular register within the set of
-configuration registers corresponding to the selected function. When the
-address space type identifier indicates configuration space, non-zero register
-number extended bits select registers in extended configuration space.
-.sp
-The second and third values in the \fBreg\fR property 5-tuple specify the
-64-bit address of the mappable resource within the \fBPCI\fR or PCIe address
-domain. Since the CardBus is a 32-bit bus, the second 32-bit tuple is not used.
-The third 32-bit tuple corresponds to the 32-bit address.
-.sp
-The fourth and fifth 32-bit values in the 5-tuple \fBreg\fR property specify
-the size of the mappable resource. The size is a 64-bit value. Since it's a
-32-bit bus, only the fifth tuple is used.
-.sp
-The driver can refer to the elements of this array by index, and construct
-kernel mappings to these addresses using \fBddi_regs_map_setup\fR(9F). The
-index into the array is passed as the \fIrnumber\fR argument of
-\fBddi_regs_map_setup\fR(9F).
-.sp
-At a high-level interrupt context, you can use the \fBddi_get*\fR and
-\fBddi_put*\fR family of functions to access I/O and memory space. However,
-access to configuration space is not allowed when running at a high-interrupt
-level.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBinterrupts\fR\fR
-.ad
-.RS 14n
-This property consists of a single-integer element array. Valid interrupt
-property values are \fB1\fR, \fB2\fR, \fB3\fR, and \fB4\fR. This value is
-derived directly from the contents of the device's configuration-interrupt-pin
-register.
-.sp
-A driver should use an index value of \fB0\fR when registering its interrupt
-handler with the DDI interrupt interfaces.
-.RE
-
-.sp
-.LP
-All CardBus devices support the \fBreg\fR property. The device number and
-function number as derived from the \fBreg\fR property are used to construct
-the address part of the device name under \fB/devices\fR.
-.sp
-.LP
-Only devices that generate interrupts support an \fBinterrupts\fR property.
-.sp
-.LP
-Occasionally it might be necessary to override or augment the configuration
-information supplied by a CardBus device. This change can be achieved by
-writing a driver configuration file that describes a prototype device node
-specification containing the additional properties required.
-.sp
-.LP
-For the system to merge the prototype node specification into an actual device
-node, certain conditions must be met.
-.RS +4
-.TP
-.ie t \(bu
-.el o
-First, the \fBname\fR property must be identical. The value of the \fBname\fR
-property needs to match the binding name of the device. The binding name is the
-name chosen by the system to bind a driver to a device and is either an alias
-associated with the driver or the hardware node name of the device.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Second, the parent property must identify the PCI bus or PCIe logical bus.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Third, the unit-address property must identify the card. The format of the
-unit-address property is:
-.RE
-.sp
-.LP
-\fBDD[,F]\fR
-.sp
-.LP
-where \fBDD\fR is the device number and \fBF\fR is the function number. If the
-function number is 0, only \fBDD\fR is specified.
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRSample Configuration File
-.sp
-.LP
-An example configuration file called \fBACME,scsi-hba.conf\fR for a CardBus
-device driver called \fBACME,scsi-hba\fR follows:
-
-.sp
-.in +2
-.nf
-#
-# Copyright (c) 1995, ACME SCSI Host Bus Adaptor
-# ident "@(#)ACME,scsi-hba.conf 1.1 96/02/04"
-name="ACME,scsi-hba" parent="/pci@1,0/pci@1f,4000"
- unit-address="3" scsi-initiator-id=6;
-hba-advanced-mode="on";
-hba-dma-speed=10;
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-In this example, a property \fBscsi-initiator-id\fR specifies the \fBSCSI\fR
-bus initiator id that the adapter should use, for just one particular instance
-of adapter installed in the machine. The \fBname\fR property identifies the
-driver and the parent property to identify the particular bus the card is
-plugged into. This example uses the parent's full path name to identify the
-bus. The unit-address property identifies the card itself, with device number
-of 3 and function number of 0.
-
-.sp
-.LP
-Two global driver properties are also created: \fBhba-advanced-mode\fR (which
-has the string value \fBon\fR) and \fBhba-dma-speed\fR (which has the value
-\fB10\fR M bit/s). These properties apply to all device nodes of the
-\fBACME,scsi-hba\fR.
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture SPARC, x86
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBdriver.conf\fR(4), \fBattributes\fR(5), \fBddi_intr_add_handler\fR(9F),
-\fBddi_prop_lookup\fR(9F), \fBddi_regs_map_setup\fR(9F)
-.sp
-.LP
-\fIWriting Device Drivers\fR
-.sp
-.LP
-\fIIEEE 1275 PCI Bus Binding\fR
diff --git a/usr/src/man/man4/compver.4 b/usr/src/man/man4/compver.4
deleted file mode 100644
index 7d515af71c..0000000000
--- a/usr/src/man/man4/compver.4
+++ /dev/null
@@ -1,60 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 1996, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH COMPVER 4 "Oct 4, 1996"
-.SH NAME
-compver \- compatible versions file
-.SH DESCRIPTION
-.sp
-.LP
-\fBcompver\fR is an \fBASCII\fR file used to specify previous versions of the
-associated package which are upward compatible. It is created by a package
-developer.
-.sp
-.LP
-Each line of the file specifies a previous version of the associated package
-with which the current version is backward compatible.
-.sp
-.LP
-Since some packages may require installation of a specific version of another
-software package, compatibility information is extremely crucial. Consider, for
-example, a package called "A" which requires version "1.0" of application "B"
-as a prerequisite for installation. If the customer installing "A" has a newer
-version of "B" (version 1.3), the \fBcompver\fR file for "B" must indicate that
-"1.3" is compatible with version "1.0" in order for the customer to install
-package "A".
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRSample \fBcompver\fR file.
-.sp
-.LP
-A sample \fBcompver\fR file is shown below:
-
-.sp
-.in +2
-.nf
-\fBVersion 1.3
-Version 1.0\fR
-.fi
-.in -2
-.sp
-
-.SH SEE ALSO
-.sp
-.LP
-\fBpkginfo\fR(4)
-.sp
-.LP
-\fIApplication Packaging Developer\&'s Guide\fR
-.SH NOTES
-.sp
-.LP
-The comparison of the version string disregards white space and tabs. It is
-performed on a word-by-word basis. Thus, "Version 1.3" and "Version 1.3" would
-be considered the same.
-.sp
-.LP
-The entries in the \fBcompver\fR file must match the values assigned to the
-\fBVERSION\fR parameter in the \fBpkginfo\fR(4) files.
diff --git a/usr/src/man/man4/contents.4 b/usr/src/man/man4/contents.4
deleted file mode 100644
index e8c81ec5c4..0000000000
--- a/usr/src/man/man4/contents.4
+++ /dev/null
@@ -1,245 +0,0 @@
-'\" te
-.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH CONTENTS 4 "Dec 20, 2007"
-.SH NAME
-contents \- list of files and associated packages
-.SH SYNOPSIS
-.LP
-.nf
-\fB/var/sadm/install/contents\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The file \fB/var/sadm/install/contents\fR is a source of information about the
-packages installed on the system. This file must never be edited directly.
-Always use the package commands (see SEE ALSO) to make changes to the
-\fBcontents\fR file.
-.sp
-.LP
-Each entry in the \fBcontents\fR file is a single line. Fields in each entry
-are separated by a single space character.
-.sp
-.LP
-Two major styles of entries exist, old style and new style. The following is
-the format of an old-style entry:
-.sp
-.in +2
-.nf
-\fIftype\fR \fIclass\fR \fIpath\fR \fIpackage(s)\fR
-.fi
-.in -2
-
-.sp
-.LP
-The following is the general format of a new-style entry:
-.sp
-.in +2
-.nf
-\fIpath\fR[=\fIrpath\fR] \fIftype\fR \fIclass\fR [\fIftype-optional-fields\fR] \fIpackage(s)\fR
-.fi
-.in -2
-
-.sp
-.LP
-New-style entries differ for each \fBftype\fR. The \fBftype\fR designates the
-entry type, as specified in \fBpkgmap\fR(4). The format for new-style entries,
-for each \fBftype\fR, is as follows:
-.sp
-.in +2
-.nf
-ftype s: \fIpath\fR=\fIrpath\fR s \fIclass\fR \fIpackage\fR
-ftype l: \fIpath\fR l \fIclass\fR \fIpackage\fR
-ftype d: \fIpath\fR d \fIclass\fR \fImode\fR \fIowner\fR \fIgroup\fR \fIpackage(s)\fR
-ftype b: \fIpath\fR b \fIclass\fR \fImajor\fR \fIminor\fR \fImode\fR \fIowner\fR \fIgroup\fR \fIpackage\fR
-ftype c: \fIpath\fR c \fIclass\fR \fImajor\fR \fIminor\fR \fImode\fR \fIowner\fR \fIgroup\fR \fIpackage\fR
-ftype f: \fIpath\fR f \fIclass\fR \fImode\fR \fIowner\fR \fIgroup\fR \fIsize\fR \fIcksum\fR \fImodtime\fR \fIpackage\fR
-ftype x: \fIpath\fR x \fIclass\fR \fImode\fR \fIowner\fR \fIgroup\fR \fIpackage\fR
-ftype v: \fIpath\fR v \fIclass\fR \fImode\fR \fIowner\fR \fIgroup\fR \fIsize\fR \fIcksum\fR \fImodtime\fR \fIpackage\fR
-ftype e: \fIpath\fR e \fIclass\fR \fImode\fR \fIowner\fR \fIgroup\fR \fIsize\fR \fIcksum\fR \fImodtime\fR \fIpackage\fR
-.fi
-.in -2
-
-.sp
-.LP
-A significant distinction between old- and new-style entries is that the former
-do not begin with a slash (/) character, while the latter (new-style) always
-do. For example, the following are old-style entries:
-.sp
-.in +2
-.nf
-d none /dev SUNWcsd
-e passwd /etc/passwd SUNWcsr
-.fi
-.in -2
-
-.sp
-.LP
-The following are new-style entries:
-.sp
-.in +2
-.nf
-/dev d none 0755 root sys SUNWcsr SUNWcsd
-/etc/passwd e passwd 0644 root sys 580 48299 1077177419 SUNWcsr
-.fi
-.in -2
-
-.sp
-.LP
-The following are the descriptions of the fields in both old- and new-style
-entries.
-.sp
-.ne 2
-.na
-\fB\fIpath\fR\fR
-.ad
-.RS 11n
-The absolute path of the node being described. For \fBftype\fR \fBs\fR
-(indicating a symbolic link) this is the indirect pointer (link) name.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIrpath\fR\fR
-.ad
-.RS 11n
-The relative path to the real file or linked-to directory name.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIftype\fR\fR
-.ad
-.RS 11n
-A one-character field that indicates the entry type (see \fBpkgmap\fR(4)).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIclass\fR\fR
-.ad
-.RS 11n
-The installation class to which the file belongs (see \fBpkgmap\fR(4)).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIpackage\fR\fR
-.ad
-.RS 11n
-The package associated with this entry. For \fBftype\fR \fBd\fR (directory)
-more than one package can be present.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fImode\fR\fR
-.ad
-.RS 11n
-The octal mode of the file (see \fBpkgmap\fR(4)).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIowner\fR\fR
-.ad
-.RS 11n
-The owner of the file (see \fBpkgmap\fR(4)).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIgroup\fR\fR
-.ad
-.RS 11n
-The group to which the file belongs (see \fBpkgmap\fR(4)).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fImajor\fR\fR
-.ad
-.RS 11n
-The major device number (see \fBpkgmap\fR(4)).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIminor\fR\fR
-.ad
-.RS 11n
-The minor device number (see \fBpkgmap\fR(4)).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIsize\fR\fR
-.ad
-.RS 11n
-The actual size of the file in bytes as reported by sum (see \fBpkgmap\fR(4)).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIcksum\fR\fR
-.ad
-.RS 11n
-The checksum of the file contents (see \fBpkgmap\fR(4)).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fImodtime\fR\fR
-.ad
-.RS 11n
-The time of last modification (see \fBpkgmap\fR(4)).
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Unstable
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBpkgadd\fR(1M), \fBpkgadm\fR(1M), \fBpkgchk\fR(1M), \fBpkgmap\fR(4),
-\fBattributes\fR(5)
-.SH NOTES
-.sp
-.LP
-As shown above, the interface stability of \fB/var/sadm/install/contents\fR is
-Unstable (see \fBattributes\fR(5)). It is common practice to use this file in a
-read-only manner to determine which files belong to which packages installed on
-a system. While this file has been present for many releases of the Solaris
-operating system, it might not be present in future releases. The fully
-supported way to obtain information from the installed package database is
-through \fBpkgchk\fR(1M). It is highly recommended that you use \fBpkgchk\fR
-rather than relying on the \fBcontents\fR file.
diff --git a/usr/src/man/man4/contract.4 b/usr/src/man/man4/contract.4
deleted file mode 100644
index 8c261b5711..0000000000
--- a/usr/src/man/man4/contract.4
+++ /dev/null
@@ -1,616 +0,0 @@
-'\" te
-.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH CONTRACT 4 "Nov 26, 2017"
-.SH NAME
-contract \- the contract file system
-.SH SYNOPSIS
-.LP
-.nf
-\fB/system/contract\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fB/system/contract\fR file system acts as the primary interface to the
-contract subsystem. There is a subdirectory of \fB/system/contract\fR for each
-available contract type.
-.sp
-.LP
-\fB/system/contract\fR can be mounted on any mount point, in addition to the
-standard \fB/system/contract\fR mount point, and can be mounted several places
-at once. Such additional mounts are allowed in order to facilitate the
-confinement of processes to subtrees of the file system using \fBchroot\fR(1M)
-and yet allow such processes to continue to use contract commands and
-interfaces.
-.sp
-.LP
-A combination of standard system calls (for example, \fBopen\fR(2),
-\fBclose\fR(2), and \fBpoll\fR(2)) and calls to \fBlibcontract\fR(3LIB) access
-\fB/system/contract\fR files.
-.sp
-.LP
-Consumers of the contract file system must be large file aware. See
-\fBlargefile\fR(5) and \fBlfcompile64\fR(5).
-.SS "DIRECTORY STRUCTURE"
-.LP
-At the top level, the \fB/system/contract\fR directory contains subdirectories
-named with each available contract type, and one special directory, \fBall\fR.
-Each of these directories is world-readable and world-searchable.
-.SS "STRUCTURE OF \fB/system/contract/\fItype\fR\fR"
-.LP
-Each \fB/system/contract/\fItype\fR\fR directory contains a fixed number of
-files. It also contains a variable number of subdirectories corresponding to
-existing contracts of type \fItype\fR and named with the decimal representation
-of the contracts' IDs.
-.sp
-.LP
-The following files are in a \fB/system/contract/\fItype\fR\fR directory:
-.sp
-.ne 2
-.na
-\fB\fBtemplate\fR\fR
-.ad
-.RS 12n
-Opening this file returns a file descriptor for a new \fItype\fR contract
-template.
-.sp
-You can use the following \fBlibcontract\fR(3LIB) calls on a template file
-descriptor:
-.sp
-.in +2
-.nf
->
-
- ct_tmpl_activate(3contract)
- ct_tmpl_clear(3contract)
- ct_tmpl_create(3contract)
-.fi
-.in -2
-.sp
-
-See TERMS for additional template functions.
-.RE
-
-.sp
-.ne 2
-.na
-\fBlatest\fR
-.ad
-.RS 12n
-Opening this file returns a file descriptor for the status file of the last
-\fItype\fR contract written by the opening LWP. See \fBSTRUCTURE OF
-/system/contract/\fItype\fR/\fIid\fR\fR. If the opening LWP has not created a
-\fItype\fR contract, opening latest fails with \fBESRCH\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBbundle\fR
-.ad
-.RS 12n
-Opening this file returns a file descriptor for an event endpoint which
-receives events from all \fItype\fR contracts on the system. No privileges are
-required to open a type bundle event endpoint. Events sent by contracts owned
-and written by users other than the reader's effective user id are invisible,
-that is, they are silently skipped, unless the reader has
-\fB{PRIV_CONTRACT_OBSERVER}\fR in its effective set. See \fBEVENTS\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBpbundle\fR
-.ad
-.RS 12n
-Opening this file returns a file descriptor for an event endpoint which
-receives events from all \fItype\fR contracts held by the opening process. See
-\fBEVENTS\fR.
-.RE
-
-.SS "STRUCTURE OF /system/contract/all"
-.LP
-The \fB/system/contract/all\fR directory contains a numerically named file for
-each contract in the system. Each file is a symbolic link to the type-specific
-directory for that contract, that is \fB/system/contract/all/\fIid\fR\fR points
-to \fB/system/contract/\fItype\fR/\fIid\fR\fR.
-.SS "STRUCTURE OF /system/contract/\fItype\fR/\fIid\fR"
-.LP
-Each \fB/system/contract/\fItype\fR/\fIid\fR\fR directory contains the
-following files:
-.sp
-.ne 2
-.na
-\fBctl\fR
-.ad
-.RS 10n
-Opening this file returns a file descriptor for contract \fIid\fR's control
-file. The open fails if the opening process does not hold contract \fIid\fR and
-the contract has not been inherited by the process contract of which the
-opening process is a member. See \fBprocess\fR(4).
-.sp
-The following \fBlibcontract\fR(3LIB) calls can be made on a \fBctl\fR file
-descriptor if the contract is owned by the caller:
-.sp
-.in +2
-.nf
-ct_ctl_abandon(3contract)
-ct_ctl_newct(3contract)
-ct_ctl_ack(3contract)
-ct_ctl_qack(3contract)
-.fi
-.in -2
-.sp
-
-The following \fBlibcontract\fR(3LIB) call can be made on a ctl file descriptor
-if the contract doesn't have an owner:
-.sp
-.in +2
-.nf
-ct_ctl_adopt(3contract)
-.fi
-.in -2
-.sp
-
-.RE
-
-.sp
-.ne 2
-.na
-\fBstatus\fR
-.ad
-.RS 10n
-Opening this file returns a file descriptor for contract \fIid\fR's status
-file. The following \fBlibcontract\fR(3LIB) calls can be made on a status file
-descriptor:
-.LP
-.nf
-ct_status_read(3contract)
-.fi
-
- See STATUS.
-.RE
-
-.sp
-.ne 2
-.na
-\fBevents\fR
-.ad
-.RS 10n
-Opening this file returns a file descriptor for an event endpoint which
-receives events from contract \fIid\fR. See \fBEVENTS\fR.
-.sp
-Only a process which has the same effective user ID as the process owning the
-contract, the same effective user ID as the contract's author, or has
-\fB{PRIV_CONTRACT_OBSERVER}\fR in its effective set can open the event endpoint
-for a contract.
-.RE
-
-.SS "TERMS"
-.LP
-The following terms are defined for all contracts:
-.sp
-.ne 2
-.na
-\fBcookie\fR
-.ad
-.RS 25n
-Specifies a 64-bit quantity that the contract author can use to identify the
-contract. Use \fBct_tmpl_set_cookie\fR(3CONTRACT) to set this term.
-.RE
-
-.sp
-.ne 2
-.na
-\fBinformative event set\fR
-.ad
-.RS 25n
-Selects which events are delivered as informative events. Use
-\fBct_tmpl_set_informative\fR(3CONTRACT) to set this term.
-.RE
-
-.sp
-.ne 2
-.na
-\fBcritical event set\fR
-.ad
-.RS 25n
-Selects which events are delivered as critical events. Use
-\fBct_tmpl_set_critical\fR(3CONTRACT) to set this term.
-.RE
-
-.SS "STATUS"
-.LP
-A status object returned by \fBct_status_read\fR(3CONTRACT) contains the
-following pieces of information:
-.sp
-.ne 2
-.na
-\fBcontract ID\fR
-.ad
-.sp .6
-.RS 4n
-The numeric ID of the contract. Use \fBct_status_get_id\fR(3CONTRACT) to obtain
-this information.
-.RE
-
-.sp
-.ne 2
-.na
-\fBcontract type\fR
-.ad
-.sp .6
-.RS 4n
-The type of the contract, specified as a string. Obtained using
-\fBct_status_get_type\fR(3CONTRACT). The contract type is the same as its
-subdirectory name under \fB/system/contract\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBcreator's zone ID\fR
-.ad
-.sp .6
-.RS 4n
-The zone ID of the process which created the contract. Obtained using
-\fBct_status_get_zoneid\fR(3CONTRACT).
-.RE
-
-.sp
-.ne 2
-.na
-\fBownership state\fR
-.ad
-.sp .6
-.RS 4n
-The state of the contract, specified as \fBCTS_OWNED\fR, \fBCTS_INHERITED\fR,
-\fBCTS_ORPHAN\fR, or \fBCTS_DEAD\fR. Use \fBct_status_get_state\fR(3CONTRACT)
-to obtain this information.
-.RE
-
-.sp
-.ne 2
-.na
-\fBcontract holder\fR
-.ad
-.sp .6
-.RS 4n
-If the contract's state is \fBCTS_OWNED\fR, the ID of the process which owns
-the contract. If the contract's state is \fBCTS_INHERITED\fR, the ID of the
-contract which is acting as regent. If the contract's state is \fBCTS_ORPHAN\fR
-or \fBCTS_DEAD\fR, this is undefined. Use \fBct_status_get_holder\fR(3CONTRACT)
-to obtain this information.
-.RE
-
-.sp
-.ne 2
-.na
-\fBnumber of critical events\fR
-.ad
-.sp .6
-.RS 4n
-The number of unacknowledged critical events pending on the contract's event
-queue. Use \fBct_status_get_nevents\fR(3CONTRACT) to obtain this information.
-.RE
-
-.sp
-.ne 2
-.na
-\fBnegotiation time\fR
-.ad
-.sp .6
-.RS 4n
-The time remaining before the current synchronous negotiation times out. Use
-\fBct_status_get_ntime\fR(3CONTRACT) to obtain this information.
-.RE
-
-.sp
-.ne 2
-.na
-\fBnegotiation quantum time\fR
-.ad
-.sp .6
-.RS 4n
-The time remaining before the current negotiation quantum runs out. Use
-\fBct_status_get_qtime\fR(3CONTRACT) to obtain this information.
-.RE
-
-.sp
-.ne 2
-.na
-\fBnegotiation event ID\fR
-.ad
-.sp .6
-.RS 4n
-The ID of the event which initiated the negotiation timeout. Use
-\fBct_status_get_nevid\fR(3CONTRACT) to obtain this information.
-.RE
-
-.sp
-.ne 2
-.na
-\fBcookie (term)\fR
-.ad
-.sp .6
-.RS 4n
-The contract's cookie term. Use \fBct_status_get_cookie\fR(3CONTRACT) to obtain
-this information.
-.RE
-
-.sp
-.ne 2
-.na
-\fBInformative event set (term)\fR
-.ad
-.sp .6
-.RS 4n
-The contract's informative event set. Use
-\fBct_status_get_informative\fR(3CONTRACT) to obtain this information.
-.RE
-
-.sp
-.ne 2
-.na
-\fBCritical event set (term)\fR
-.ad
-.sp .6
-.RS 4n
-The contract's critical event set. Use \fBct_status_get_critical\fR(3CONTRACT)
-to obtain this information.
-.RE
-
-.SS "EVENTS"
-.LP
-All three event endpoints, \fB/system/contract/\fItype\fR/bundle\fR,
-\fB/system/contract/\fItype\fR/pbundle\fR, and
-\fB/system/contract/\fItype\fR/\fIid\fR/events\fR, are accessed in the same
-manner.
-.sp
-.LP
-The following \fBlibcontract\fR(3LIB) interfaces are used with an event
-endpoint file descriptor:
-.sp
-.in +2
-.nf
-ct_event_read(3contract)
-ct_event_read_critical(3contract)
-ct_event_reset(3contract)
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-To facilitate processes watching multiple event endpoints, it is possible to
-poll(2) on event endpoints. When it is possible to receive on an endpoint file
-descriptor, POLLIN is set for that descriptor.
-.sp
-.LP
-An event object returned by \fBct_event_read\fR(3CONTRACT) contains the
-following information:
-.sp
-.ne 2
-.na
-\fBcontract ID\fR
-.ad
-.RS 28n
-The ID of the contract that generated the event. Use
-\fBct_event_read\fR(3CONTRACT) to obtain this information.
-.RE
-
-.sp
-.ne 2
-.na
-\fBevent ID\fR
-.ad
-.RS 28n
-The ID of the contract event.Use \fBct_event_get_evid\fR(3CONTRACT).
-.RE
-
-.sp
-.ne 2
-.na
-\fBflags\fR
-.ad
-.RS 28n
-A bit vector possibly including \fBCT_ACK\fR and \fBCTE_INFO\fR. Use
-\fBct_event_get_flags\fR(3CONTRACT) to obtain this information.
-.RE
-
-.sp
-.ne 2
-.na
-\fBevent type\fR
-.ad
-.RS 28n
-The type of event, equal to one of the constants specified in the contract
-type's manual page or \fBCT_EV_NEGEND\fR. Use
-\fBct_event_get_type\fR(3CONTRACT) to obtain this information.
-.RE
-
-.SS "EVENT TYPES"
-.LP
-The following event types are defined:
-.sp
-.ne 2
-.na
-\fB\fBCT_EV_NEGEND\fR\fR
-.ad
-.RS 16n
-Some time after an exit negotiation is initiated, the \fBCT_EV_NEGEND\fR event
-is sent. This indicates that the negotiation ended. This might be because the
-operation was cancelled, or because the operation was successful. If
-successful, and the owner requested that a new contract be written, this
-contains the ID of that contract.
-.sp
-\fBCT_EV_NEGEND\fR cannot be included in a contract's informative or critical
-event set. It is always delivered and always critical. If \fBCT_EV_NEGEND\fR
-indicates that the operation was successful, no further events are sent. The
-contract's owner should use \fBct_ctl_abandon\fR(3CONTRACT) to abandon the
-contract.
-.sp
-A \fBCT_EV_NEGEND\fR event contains:
-.sp
-.ne 2
-.na
-\fBnegotiation ID\fR
-.ad
-.RS 19n
-The ID of the negotiation which ended. Use \fBct_event_get_nevid\fR(3CONTRACT)
-to obain this information.
-.RE
-
-.sp
-.ne 2
-.na
-\fBnew contract ID\fR
-.ad
-.RS 19n
-The ID of the newly created contract. This value is 0 if no contract was
-created, or the ID of the existing contract if the operation was not completed.
-Use \fBct_event_get_newct\fR(3CONTRACT) to obtain this information.
-.RE
-
-.RE
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/system/contract\fR\fR
-.ad
-.sp .6
-.RS 4n
-List of all contract types
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/system/contract/all\fR\fR
-.ad
-.sp .6
-.RS 4n
-Directory of all contract IDs
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/system/contract/all/\fIid\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Symbolic link to the type-specific directory of contract \fIid\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/system/contract/\fItype\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specific type directory
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/system/contract/\fItype\fR/template\fR\fR
-.ad
-.sp .6
-.RS 4n
-Template for the contract type
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/system/contract/\fItype\fR/bundle\fR\fR
-.ad
-.sp .6
-.RS 4n
-Listening point for all contracts of that type
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/system/contract/\fItype\fR/pbundle\fR\fR
-.ad
-.sp .6
-.RS 4n
-Listening point for all contracts of that type for the opening process
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/system/contract/\fItype\fR /latest\fR\fR
-.ad
-.sp .6
-.RS 4n
-Status of most recent \fItype\fR contract created by the opening LWP
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/system/contract/\fItype\fR/\fIID\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Directory for contract id
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/system/contract/\fItype\fR/\fIID\fR/events\fR\fR
-.ad
-.sp .6
-.RS 4n
-Listening point for contract id's events
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/system/contract/\fItype\fR/\fIID\fR/ctl\fR\fR
-.ad
-.sp .6
-.RS 4n
-Control file for contract ID
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/system/contract/\fItype\fR/\fIID\fR/status\fR\fR
-.ad
-.sp .6
-.RS 4n
-Status info for contract ID
-.RE
-
-.SH SEE ALSO
-.LP
-\fBctrun\fR(1), \fBctstat\fR(1), \fBctwatch\fR(1), \fBchroot\fR(1M),
-\fBclose\fR(2), \fBioctl\fR(2), \fBopen\fR(2), \fBpoll\fR(2),
-\fBct_ctl_abandon\fR(3CONTRACT), \fBct_event_read\fR(3CONTRACT),
-\fBct_event_get_evid\fR(3CONTRACT), \fBct_event_get_flags\fR(3CONTRACT),
-\fBct_event_get_nevid\fR(3CONTRACT), \fBct_event_get_newct\fR(3CONTRACT),
-\fBct_event_get_type\fR(3CONTRACT),
-\fBct_status_read\fR(3CONTRACT), \fBct_status_get_cookie\fR(3CONTRACT),
-\fBct_status_get_critical\fR(3CONTRACT), \fBct_status_get_holder\fR(3CONTRACT),
-\fBct_status_get_id\fR(3CONTRACT), \fBct_status_get_informative\fR(3CONTRACT),
-\fBct_status_get_nevid\fR(3CONTRACT), \fBct_status_get_nevents\fR(3CONTRACT),
-\fBct_status_get_ntime\fR(3CONTRACT), \fBct_status_get_qtime\fR(3CONTRACT),
-\fBct_status_get_state\fR(3CONTRACT), \fBct_status_get_type\fR(3CONTRACT),
-\fBct_tmpl_set_cookie\fR(3CONTRACT), \fBct_tmpl_set_critical\fR(3CONTRACT),
-\fBct_tmpl_set_informative\fR(3CONTRACT), \fBlibcontract\fR(3LIB),
-\fBprocess\fR(4), \fBlargefile\fR(5), \fBlfcompile\fR(5), \fBprivileges\fR(5)
diff --git a/usr/src/man/man4/copyright.4 b/usr/src/man/man4/copyright.4
deleted file mode 100644
index 55c3764dd1..0000000000
--- a/usr/src/man/man4/copyright.4
+++ /dev/null
@@ -1,19 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 1997, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH COPYRIGHT 4 "Feb 7, 1997"
-.SH NAME
-copyright \- copyright information file
-.SH DESCRIPTION
-.sp
-.LP
-\fBcopyright\fR is an \fBASCII\fR file used to provide a copyright notice for a
-package. The text may be in any format. The full file contents (including
-comment lines) are displayed on the terminal at the time of package
-installation.
-.SH SEE ALSO
-.sp
-.LP
-\fIApplication Packaging Developer\&'s Guide\fR
diff --git a/usr/src/man/man4/core.4 b/usr/src/man/man4/core.4
deleted file mode 100644
index be63925f9f..0000000000
--- a/usr/src/man/man4/core.4
+++ /dev/null
@@ -1,583 +0,0 @@
-'\"
-.\" Copyright (C) 2008, Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 2012 DEY Storage Systems, Inc. All rights reserved.
-.\" Copyright (c) 2013, Joyent, Inc. All rights reserved.
-.\" Copyright 2020 OmniOS Community Edition (OmniOSce) Association.
-.\" Copyright 2021 Oxide Computer Company
-.\" Copyright 1989 AT&T
-.\"
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.\"
-.Dd August 3, 2021
-.Dt CORE 4
-.Os
-.Sh NAME
-.Nm core
-.Nd process core file
-.Sh DESCRIPTION
-The operating system writes out a core file for a process when the process is
-terminated due to receiving certain signals.
-A core file is a disk copy of the contents of the process address space at the
-time the process received the signal, along with additional information about
-the state of the process.
-This information can be consumed by a debugger.
-Core files can also be generated by applying the
-.Xr gcore 1
-utility to a running process.
-.Pp
-Typically, core files are produced following abnormal termination of a process
-resulting from a bug in the corresponding application.
-Whatever the cause, the core file itself provides invaluable information to the
-programmer or support engineer to aid in diagnosing the problem.
-The core file can be inspected using a debugger such as
-.Xr mdb 1 ,
-gdb, dbx, or or by applying one of the
-.Xr proc 1
-tools.
-.Pp
-The operating system attempts to create up to two core files for each
-abnormally terminating process, using a global core file name pattern and a
-per-process core file name pattern.
-These patterns are expanded to determine the pathname of the resulting core
-files, and can be configured by
-.Xr coreadm 1M .
-By default, the global core file pattern is disabled and not used, and the
-per-process core file pattern is set to
-.Sy core .
-Therefore, by default, the operating system attempts to create a core file named
-.Pa core
-in the process's current working directory.
-.Pp
-A process terminates and produces a core file whenever it receives one of the
-signals whose default disposition is to cause a core dump or the
-.Xr upanic 2
-system call is used.
-The list of signals that result in generating a core file is shown in
-.Xr signal.h 3HEAD .
-Therefore, a process might not produce a core file if it has blocked or
-modified the behavior of the corresponding signal.
-Additionally, no core dump can be created under the following conditions:
-.Bl -bullet
-.It
-If normal file and directory access permissions prevent the creation or
-modification of the per-process core file pathname by the current process user
-and group ID.
-This test does not apply to the global core file pathname because, regardless of
-the UID of the process dumping core, the attempt to write the global core file
-is made as the superuser.
-.It
-Core files owned by the user
-.Sy nobody
-will not be produced.
-For example, core files generated for the superuser on an NFS directory are
-owned by
-.Sy nobody
-and are, therefore, not written.
-.It
-If the core file pattern expands to a pathname that contains intermediate
-directory components that do not exist.
-For example, if the global pattern is set to
-.Pa /var/core/%n/core.%p ,
-and no directory
-.Pa /var/core/`uname -n`
-has been created, no global core files are produced.
-.It
-If the destination directory is part of a filesystem that is mounted read-only.
-.It
-If the resource limit
-.Dv RLIMIT_CORE
-has been set to
-.Sy 0
-for the
-process, no per-process core file is produced.
-Refer to
-.Xr setrlimit 2
-and
-.Xr ulimit 1
-for more information on resource limits.
-.It
-If the core file name already exists in the destination directory and is not a
-regular file
-.Pq that is, is a symlink, block or character special-file, and so forth .
-.It
-If the kernel cannot open the destination file
-.Dv O_EXCL ,
-which can occur if same file is being created by another process simultaneously.
-.It
-If the process's effective user ID is different from its real user ID or if its
-effective group ID is different from its real group ID.
-Similarly, set-user-ID and set-group-ID programs do not produce core files as
-this could potentially compromise system security.
-These processes can be explicitly granted permission to produce core files using
-.Xr coreadm 1M ,
-at the risk of exposing secure information.
-.El
-.Pp
-The core file contains all the process information pertinent to debugging:
-contents of hardware registers, process status, and process data.
-The format of a core file is object file specific.
-.Pp
-For ELF executable programs
-.Po
-see
-.Xr a.out 4
-.Pc ,
-the core file generated is also an ELF file, containing ELF program and file
-headers.
-The
-.Fa e_type
-field in the file header has type
-.Dv ET_CORE .
-The program header contains an entry for every segment that was part of the
-process address space, including shared library segments.
-The contents of the mappings specified by
-.Xr coreadm 1M
-are also part of the core image.
-Each program header has its
-.Fa p_memsz
-field set to the size of the mapping.
-The program headers that represent mappings whose data is included in the core
-file have their
-.Fa p_filesz
-field set the same as
-.Fa p_memsz ,
-otherwise
-.Fa p_filesz
-is
-.Sy zero .
-.Pp
-A mapping's data can be excluded due to the core file content settings
-.Po
-see
-.Xr coreadm 1M
-.Pc ,
-due to a failure, or due to a signal received after core dump initiation but
-before its completion.
-If the data is excluded because of a failure, the program header entry will
-have the
-.Dv PF_SUNW_FAILURE
-flag set in its
-.Fa p_flags
-field; if the data is excluded because of a signal, the segment's
-.Fa p_flags
-field will have the
-.Dv PF_SUNW_KILLED
-flag set.
-.Pp
-The program headers of an
-.Sy ELF
-core file also contain entries for two
-.Sy NOTE
-segments, each containing several note entries as described below.
-The note entry header and core file note type
-.Pq Fa n_type
-definitions are contained in
-.In sys/elf.h .
-The first
-.Sy NOTE
-segment exists for binary compatibility with old programs that deal with core
-files.
-It contains structures defined in
-.In sys/old_procfs.h .
-New programs should recognize and skip this
-.Sy BNOTE
-segment, advancing instead to the new
-.Sy NOTE
-segment.
-The old
-.Sy NOTE
-segment is deleted from core files in a future release.
-.Pp
-The old
-.Sy NOTE
-segment contains the following entries.
-Each has entry name
-.Sy "CORE"
-and presents the contents of a system structure:
-.Bl -tag -width prpsinfo_t
-.It Vt prpsinfo_t
-.Fa n_type :
-.Dv NT_PRPSINFO .
-This entry contains information of interest to the
-.Xr ps 1
-command, such as process status, CPU usage, nice value, controlling terminal,
-user-ID, process-ID, the name of the executable, and so forth.
-The
-.Vt prpsinfo_t
-structure is defined in
-.In sys/old_procfs.h .
-.It Vt char[]
-.Fa n_type :
-.Dv NT_PLATFORM .
-This entry contains a string describing the specific model of the hardware
-platform on which this core file was created.
-This information is the same as provided by
-.Xr sysinfo 2
-when invoked with the command
-.Dv SI_PLATFORM .
-.It Vt auxv_t[]
-.Fa n_type :
-.Dv NT_AUXV .
-This entry contains the array of
-.Vt Bauxv_t
-structures that was passed by the operating system as startup information to
-the dynamic linker.
-Auxiliary vector information is defined in
-.In sys/auxv.h .
-.El
-.Pp
-Following these entries, for each active (non-zombie) light-weight process
-.Pq LWP
-in the process, the old
-.Sy NOTE
-segment contains an entry with a
-.Vt prstatus_t
-structure, plus other optionally-present entries describing the LWP, as follows:
-.Bl -tag -width "prfpregset_t"
-.It Vt prstatus_t
-.Fa n_type :
-.Dv NT_PRSTATUS .
-This structure contains things of interest to a debugger from the operating
-system, such as the general registers, signal dispositions, state, reason for
-stopping, process-ID, and so forth.
-The
-.Vt prstatus_t
-structure is defined in
-.In sys/old_procfs.h .
-.It Vt prfpregset_t
-.Fa n_type :
-.Dv NT_PRFPREG .
-This entry is present only if the
-.Sy BLWP
-used the floating-point hardware.
-It contains the floating-point registers.
-The
-.Vt prfpregset_t
-structure is defined in
-.In sys/procfs_isa.h .
-.It Vt gwindows_t
-.Fa n_type :
-.Dv NT_GWINDOWS .
-This entry is present only on a SPARC machine and only if the system was unable
-to flush all of the register windows to the stack.
-It contains all of the unspilled register windows.
-The
-.Vt gwindows_t
-structure is defined in
-.In sys/regset.h .
-.It Vt prxregset_t
-.Fa n_type :
-.Dv NT_PRXREG .
-This entry is present only if the machine has extra register state associated
-with it.
-It contains the extra register state.
-The
-.Vt prxregset_t
-structure is defined in
-.Vt sys/procfs_isa.h .
-.El
-.Pp
-The new
-.Sy NOTE
-segment contains the following entries.
-Each has entry name
-.Sy "CORE"
-and presents the contents of a system structure:
-.Bl -tag -width prxregset_t
-.It Vt psinfo_t
-.Fa n_type :
-.Dv NT_PSINFO .
-This structure contains information of interest to the
-.Xr ps 1
-command, such as process status, CPU usage, nice value, controlling terminal,
-user-ID, process-ID, the name of the executable, and so forth.
-The
-.Vt psinfo_t
-structure is defined in
-.In sys/procfs.h
-.It Vt pstatus_t
-.Fa n_type :
-.Dv NT_PSTATUS .
-This structure contains things of interest to a debugger from the operating
-system, such as pending signals, state, process-ID, and so forth.
-The
-.Vt pstatus_t
-structure is defined in
-.In sys/procfs.h .
-.It Vt char[]
-.Fa n_type :
-.Dv NT_PLATFORM .
-This entry contains a string describing the specific model of the hardware
-platform on which this core file was created.
-This information is the same as provided by
-.Xr sysinfo 2
-when invoked with the command
-.Dv SI_PLATFORM .
-.It auxv_t[]
-.Fa n_type :
-.Dv NT_AUXV .
-This entry contains the array of
-.Vt auxv_t
-structures that was passed by the operating system as startup information to
-the dynamic linker.
-Auxiliary vector information is defined in
-.In sys/auxv.h .
-.It Vt struct utsname
-.Fa n_type :
-.Dv NT_UTSNAME .
-This structure contains the system information that would have been returned
-to the process if it had performed a
-.Xr uname 2
-system call prior to dumping core.
-The
-.Vt utsname
-structure is defined in
-.In sys/utsname.h .
-.It pcred_t
-.Fa n_type :
-.Dv NT_PRCRED .
-This structure contains the process credentials, including the real, saved,
-and effective user and group IDs.
-The
-.Vt pcred_t
-structure is defined in
-.In sys/procfs.h .
-Following the structure is an optional array of supplementary group IDs.
-The total number of supplementary group IDs is given by the
-.Fa pr_ngroups
-member of the
-.Vt pcred_t
-structure, and the structure includes space for one supplementary group.
-If
-.Fa pr_ngroups
-is greater than 1, there is
-.So
-.Fa pr_ngroups
-- 1
-.Sc
-.Fa gid_t
-items following the structure; otherwise, there is no additional data.
-.It Vt char[]
-.Fa n_type :
-.Dv NT_ZONENAME .
-This entry contains a string which describes the name of the zone in
-which the process was running.
-See
-.Xr zones 5 .
-The information is the same as provided by
-.Xr getzonenamebyid 3C
-when invoked with the numerical ID returned by
-.Xr getzoneid 3C .
-.It Vt prfdinfo_core_t
-.Fa n_type :
-.Dv NT_FDINFO .
-This structure contains information about any open file descriptors, including
-the path, flags, and
-.Xr stat 2
-information.
-The
-.Vt prfdinfo_core_t
-structure is defined in
-.In sys/procfs.h .
-.It Vt struct ssd[]
-.Fa n_type :
-.Dv NT_LDT .
-This entry is present only on an 32-bit x86 machine and only if the process has
-set up a Local Descriptor Table
-.Pq LDT .
-It contains an array of structures of type
-.Vt struct ssd ,
-each of which was typically used to set up the
-.Sy %gs
-segment register to be used to fetch the address of the current thread
-information structure in a multithreaded process.
-The
-.Vt ssd
-structure is defined in
-.In sys/sysi86.h .
-.It Vt core_content_t
-.Fa n_type :
-.Dv NT_CONTENT .
-This optional entry indicates which parts of the process image are specified
-to be included in the core file.
-See
-.Xr coreadm 1M .
-.It Vt prsecflags_t
-.Fa n_type :
-.Dv NT_SECFLAGS .
-This entry contains the process security-flags, see
-.Xr security-flags 5 ,
-.Xr proc 4 ,
-and
-.Xr psecflags 1
-for more information.
-.It Vt prupanic_t
-.Fa n_type :
-.Dv NT_UPANIC .
-This entry is included if a process terminated through the
-.Xr upanic 2
-system call.
-It is defined in
-.In sys/procfs.h .
-.Pp
-The
-.Fa pru_version
-member indicates the current revision of the structure, which is expected to be
-.Dv PRUPANIC_VERSION_1
-.Pq 1 .
-The
-.Fa pru_flags
-member will be set to the bitwise-inclusive-OR of the following fields:
-.Bl -tag -offset indent -width PRUPANIC_FLAG_MSG_TRUNC
-.It Dv PRUPANIC_FLAG_MSG_VALID
-Indicates that
-.Fa pru_data
-member has valid contents and that the process provided a message in the
-.Xr upanic 2
-call .
-.It Dv PRUPANIC_FLAG_MSG_ERROR
-Indicates that the calling process attempted to include a message; however, the
-provided address of the message did not point to valid memory.
-.It Dv PRUPANIC_FLAG_MSG_TRUNC
-Indicates that the calling process included a message; however, the message it
-wanted to provide was larger than the current message length.
-.El
-The
-.Fa pru_data
-array contains binary data that the terminating process used to indicate that
-the reason why it panicked.
-This member should be ignored if the
-.Dv PRUPANIC_FLAG_MSG_VALID
-flag is not set in
-.Fa pru_flags .
-While it is recommended that processes terminate with an ASCII string, consumers
-of this should not assume that the binary data is made of of printable
-characters.
-.El
-.Pp
-For each active and zombie
-.Sy LWP
-in the process,
-the new
-.Sy NOTE
-segment contains an entry with an
-.Vt lwpsinfo_t
-structure plus, for a non-zombie LWP, an entry with an
-.Vt lwpstatus_t
-structure, plus other optionally-present entries describing the LWP, as follows.
-A zombie LWP is a non-detached LWP that has terminated but has not yet been
-reaped by another LWP in the same process.
-.Bl -tag -width "prxregset_t"
-.It Vt lwpsinfo_t
-.Fa n_type :
-.Dv NT_LWPSINFO .
-This structure contains information of interest to the
-.Xr ps 1
-command, such as LWP status, CPU usage, nice value, LWP-ID, and so forth.
-The
-.Vt lwpsinfo_t
-structure is defined in
-.In sys/procfs.h .
-This is the only entry present for a zombie LWP.
-.It lwpstatus_t
-.Fa n_type :
-.Dv NT_LWPSTATUS .
-This structure contains things of interest to a debugger from the operating
-system, such as the general registers, the floating point registers, state,
-reason for stopping, LWP-ID, and so forth.
-The
-.Vt lwpstatus_t
-structure is defined in
-.In sys/procfs.h .
-.Vt gwindows_t
-.Fa n_type :
-.Dv NT_GWINDOWS .
-This entry is present only on a SPARC machine and only if the system was unable
-to flush all of the register windows to the stack.
-It contains all of the unspilled register windows.
-The
-.Vt gwindows_t
-structure is defined in
-.In sys/regset.h .
-.It Vt prxregset_t
-.Fa n_type :
-.Dv NT_PRXREG .
-This entry is present only if the machine has extra register state associated
-with it.
-It contains the extra register state.
-The
-.Vt prxregset_t
-structure is defined in
-.In sys/procfs_isa.h .
-.It Vt asrset_t
-\fB\fBasrset_t\fR\fR
-.Fa n_type :
-.Dv NT_ASRS .
-This entry is present only on a SPARC V9 machine and only if the process is a
-64-bit process.
-It contains the ancillary state registers for the LWP.
-The
-.Vt asrset_t asrset_t
-structure is defined in
-.In sys/regset.h .
-.It Vt psinfo_t
-.Fa n_type :
-.Dv NT_SPYMASTER .
-This entry is present only for an agent LWP and contains the
-.Vt psinfo_t
-of the process that created the agent LWP.
-See the
-.Xr proc 4 description of the
-.Sy spymaster
-entry for more details.
-.El
-.Pp
-Depending on the
-.Xr coreadm 1M
-settings, the section header of an ELF core file can contain entries for CTF,
-DWARF debug information, symbol table, and string table sections.
-The
-.Fa sh_addr
-fields are set to the base address of the first mapping of the load object that
-they came from to.
-This can be used to match those sections with the corresponding load object.
-.Pp
-The size of the core file created by a process can be controlled by the user
-.Po
-see
-.Xr getrlimit 2
-.Pc
-.Sh SEE ALSO
-.Xr elfdump 1 ,
-.Xr gcore 1 ,
-.Xr mdb 1 ,
-.Xr proc 1 ,
-.Xr ps 1 ,
-.Xr coreadm 1M ,
-.Xr getrlimit 2 ,
-.Xr setrlimit 2 ,
-.Xr setuid 2 ,
-.Xr sysinfo 2 ,
-.Xr uname 2 ,
-.Xr upanic 2 ,
-.Xr getzoneid 3C ,
-.Xr getzonenamebyid 3C ,
-.Xr elf 3ELF ,
-.Xr signal.h 3HEAD ,
-.Xr a.out 4 ,
-.Xr proc 4 ,
-.Xr security-flags 5 ,
-.Xr zones 5
diff --git a/usr/src/man/man4/cpr.4 b/usr/src/man/man4/cpr.4
new file mode 100644
index 0000000000..574b21f233
--- /dev/null
+++ b/usr/src/man/man4/cpr.4
@@ -0,0 +1,114 @@
+.\" Copyright (c) 2001, Sun Microsystems, Inc.
+.\" All Rights Reserved
+.\"
+.\" Copyright 2020 Joyent, Inc.
+.\"
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.\"
+.Dd January 12, 2020
+.Dt CPR 4
+.Os
+.Sh NAME
+.Nm cpr
+.Nd Suspend and resume module
+.Sh SYNOPSIS
+.Pa /platform/i86pc/kernel/misc/amd64/cpr
+.Pa /platform/sun4u/kernel/misc/sparcv9/cpr
+.Sh DESCRIPTION
+The
+.Nm
+module is a loadable module used to suspend and resume the entire system.
+You may wish to suspend a system to save power or to power off
+temporarily for transport.
+The
+.Nm
+module should not be used in place of
+a normal shutdown when performing any hardware reconfiguration or replacement.
+In order for the resume operation to succeed, it is important that the hardware
+configuration remain the same.
+When the system is suspended, the entire system
+state is preserved in non-volatile storage until a resume operation is
+conducted.
+.Pp
+.Xr pmconfig 8
+and
+.Xr power.conf 5
+are used to configure the suspend-resume feature.
+.Pp
+The speed of suspend and resume operations can range from 15 seconds to
+several minutes, depending on the system speed, memory size, and load.
+.Pp
+During resume operation, the
+.Dv SIGTHAW
+signal is sent to all processes to
+allow them to do any special processing in response to suspend-resume
+operation.
+Normally applications are not required to do any special processing
+because of suspend-resume, but some specialized processes can use
+.Dv SIGTHAW
+to restore the state prior to suspend.
+For example,
+.Sy X
+can refresh the screen in response to
+.Dv SIGTHAW .
+.Pp
+In some cases the
+.Nm
+module may be unable to perform the suspend operation.
+If a system contains additional devices outside the standard shipped
+configuration, it is possible that device drivers for these additional devices
+might not support suspend-resume operations.
+In this case, the suspend fails and an error message is displayed.
+These devices must be removed or their
+device drivers unloaded for the suspend operation to succeed.
+Contact the
+device manufacturer to obtain a new version of device driver that supports
+suspend-resume.
+.Pp
+A suspend may also fail when devices or processes are performing critical or
+time-sensitive operations (such as realtime operations).
+The system will remain in its current running state.
+Messages reporting the failure will be displayed
+on the console and status returned to the caller.
+Once the system is
+successfully suspended the resume operation will succeed, barring external
+influences such as a hardware reconfiguration.
+.Pp
+Some network-based applications may fail across a suspend and resume cycle.
+This largely depends on the underlying network protocol and the applications
+involved.
+In general, applications that retry and automatically reestablish
+connections will continue to operate transparently on a resume operation;
+those applications that do not will likely fail.
+.Sh INTERFACE STABILITY
+Unstable
+.Sh SEE ALSO
+.Xr uadmin 2 ,
+.Xr power.conf 5 ,
+.Xr attributes 7 ,
+.Xr pmconfig 8 ,
+.Xr uadmin 8
+.Pp
+.%T Writing Device Drivers
+.Sh NOTES
+Certain device operations such as tape and floppy disk activities are not
+resumable due to the nature of removable media.
+These activities are detected
+at suspend time, and must be stopped before the suspend operation will
+complete successfully.
+.Pp
+Suspend-resume is currently supported only on a limited set of hardware
+platforms.
diff --git a/usr/src/man/man4/crypt.conf.4 b/usr/src/man/man4/crypt.conf.4
deleted file mode 100644
index f86fdf8d2c..0000000000
--- a/usr/src/man/man4/crypt.conf.4
+++ /dev/null
@@ -1,101 +0,0 @@
-'\" te
-.\" Copyright (c) 2001, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH CRYPT.CONF 4 "December 28, 2020"
-.SH NAME
-crypt.conf \- configuration file for pluggable crypt modules
-.SH SYNOPSIS
-.nf
-/etc/security/crypt.conf
-.fi
-
-.SH DESCRIPTION
-\fBcrypt.conf\fR is the configuration file for the pluggable crypt
-architecture. Each crypt module must provide a function to generate a password
-hash, \fBcrypt_genhash_impl\fR(3C), and a function to generate the salt,
-\fBcrypt_gensalt_impl\fR(3C).
-.sp
-.LP
-There must be at least one entry in \fBcrypt.conf\fR with the same name as is
-stored in the \fBcrypt_algorithm_magic\fR symbol of the module. The
-documentation provided with the module should list this name.
-.sp
-.LP
-The \fBmodule_path\fR field specifies the path name to a shared library object
-that implements \fBcrypt_genhash_impl()\fR, \fBcrypt_gensalt_impl()\fR, and
-\fBcrypt_algorithm_magic\fR. If the path name is not absolute, it is assumed
-to be relative to \fB/usr/lib/security/$ISA\fR. If the path name contains the
-\fB$ISA\fR token, the token is replaced by an implementation-defined directory
-name that defines the path relative to the calling program's instruction set
-architecture.
-.sp
-.LP
-The \fBparams\fR field is used to pass module-specific options to the shared
-objects. See \fBcrypt_genhash_impl\fR(3C) and \fBcrypt_gensalt_impl\fR(3C). It
-is the responsibility of the module to parse and interpret the options. The
-\fBparams\fR field can be used by the modules to turn on debugging or to pass
-any module-specific parameters that control the output of the hashing
-algorithm.
-.SH EXAMPLES
-\fBExample 1 \fRProvide compatibility for md5crypt-generated passwords.
-.sp
-.LP
-The default configuration preserves previous Solaris behavior while adding
-compatibility for md5crypt-generated passwords as provided on some BSD and
-Linux systems.
-
-.sp
-.in +2
-.nf
-#
-# crypt.conf
-#
-1 /usr/lib/security/$ISA/crypt_bsdmd5.so
-.fi
-.in -2
-
-.LP
-\fBExample 2 \fRUse md5crypt to demonstrate compatibility with BSD- and
-Linux-based systems.
-.sp
-.LP
-The following example lists 4 algorithms and demonstrates how compatibility
-with BSD- and Linux-based systems using md5crypt is made available, using the
-algorithm names 1 and 2.
-
-.sp
-.in +2
-.nf
-#
-# crypt.conf
-#
-md5 /usr/lib/security/$ISA/crypt_md5.so
-rot13 /usr/lib/security/$ISA/crypt_rot13.so
-
-# For *BSD/Linux compatibility
-# 1 is md5, 2 is Blowfish
-1 /usr/lib/security/$ISA/crypt_bsdmd5.so
-2 /usr/lib/security/$ISA/crypt_bsdbf.so
-.fi
-.in -2
-
-.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-\fBpasswd\fR(1), \fBcrypt\fR(3C), \fBcrypt_genhash_impl\fR(3C),
-\fBcrypt_gensalt\fR(3C), \fBcrypt_gensalt_impl\fR(3C), \fBgetpassphrase\fR(3C),
-\fBpasswd\fR(4), \fBattributes\fR(5), \fBcrypt_unix\fR(5)
diff --git a/usr/src/man/man4/crypto_certs.4 b/usr/src/man/man4/crypto_certs.4
deleted file mode 100644
index d700f62798..0000000000
--- a/usr/src/man/man4/crypto_certs.4
+++ /dev/null
@@ -1,69 +0,0 @@
-'\" te
-.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH CRYPTO_CERTS 4 "Feb 23, 2007"
-.SH NAME
-crypto_certs \- directory for certificate files for Solaris Cryptographic
-Framework
-.SH SYNOPSIS
-.LP
-.nf
-\fB/etc/crypto/certs/CA\fR
-.fi
-
-.LP
-.nf
-\fB/etc/crypto/certs/SUNWobjectCA\fR
-.fi
-
-.LP
-.nf
-\fB/etc/crypto/certs/*\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fB/etc/crypto/certs\fR directory contains ASN.1 BER or PEM encoded
-certificate files for use by the Solaris Cryptographic Framework.
-.sp
-.LP
-A default installation contains root anchors and signing certificates. The
-\fBCA\fR and \fBSUNWobjectCA\fR certificates are the trust anchors for all
-other certificates. Other certificates contain the certificates used to sign
-and verify the Solaris user and kernel cryptographic plug-ins
-.sp
-.LP
-Additional signing certificates may be installed by third-party cryptographic
-providers. They should either be copied to \fB/etc/crypto/certs\fR or included
-in the package that delivers the provider.
-.sp
-.LP
-Only certificates that are issued by the \fBCA\fR or \fBSUNWobjectCA\fR
-certificates and include the organization unit "Solaris Cryptographic
-Framework" in their subject distinguished names are accepted by the Solaris
-Cryptographic Framework. This restriction is in place due to US Export Law on
-the export of open cryptographic interfaces at the time of shipping this
-revision of the product.
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBelfsign\fR(1), \fBlibpkcs11\fR(3LIB), \fBattributes\fR(5)
diff --git a/usr/src/man/man4/ctf.4 b/usr/src/man/man4/ctf.4
deleted file mode 100644
index 7e00f8d99a..0000000000
--- a/usr/src/man/man4/ctf.4
+++ /dev/null
@@ -1,1215 +0,0 @@
-.\"
-.\" This file and its contents are supplied under the terms of the
-.\" Common Development and Distribution License ("CDDL"), version 1.0.
-.\" You may only use this file in accordance with the terms of version
-.\" 1.0 of the CDDL.
-.\"
-.\" A full copy of the text of the CDDL should have accompanied this
-.\" source. A copy of the CDDL is also available via the Internet at
-.\" http://www.illumos.org/license/CDDL.
-.\"
-.\"
-.\" Copyright (c) 2014 Joyent, Inc.
-.\"
-.Dd Sep 26, 2014
-.Dt CTF 4
-.Os
-.Sh NAME
-.Nm ctf
-.Nd Compact C Type Format
-.Sh SYNOPSIS
-.In sys/ctf.h
-.Sh DESCRIPTION
-.Nm
-is designed to be a compact representation of the C programming
-language's type information focused on serving the needs of dynamic
-tracing, debuggers, and other in-situ and post-mortem introspection
-tools.
-.Nm
-data is generally included in
-.Sy ELF
-objects and is tagged as
-.Sy SHT_PROGBITS
-to ensure that the data is accessible in a running process and in subsequent
-core dumps, if generated.
-.Lp
-The
-.Nm
-data contained in each file has information about the layout and
-sizes of C types, including intrinsic types, enumerations, structures,
-typedefs, and unions, that are used by the corresponding
-.Sy ELF
-object.
-The
-.Nm
-data may also include information about the types of global objects and
-the return type and arguments of functions in the symbol table.
-.Lp
-Because a
-.Nm
-file is often embedded inside a file, rather than being a standalone
-file itself, it may also be referred to as a
-.Nm
-.Sy container .
-.Lp
-On illumos systems,
-.Nm
-data is consumed by multiple programs.
-It can be used by the modular debugger,
-.Xr mdb 1 ,
-as well as by
-.Xr dtrace 1M .
-Programmatic access to
-.Nm
-data can be obtained through
-.Xr libctf 3LIB .
-.Lp
-The
-.Nm
-file format is broken down into seven different sections.
-The first section is the
-.Sy preamble
-and
-.Sy header ,
-which describes the version of the
-.Nm
-file, links it has to other
-.Nm
-files, and the sizes of the other sections.
-The next section is the
-.Sy label
-section,
-which provides a way of identifying similar groups of
-.Nm
-data across multiple files.
-This is followed by the
-.Sy object
-information section, which describes the type of global
-symbols.
-The subsequent section is the
-.Sy function
-information section, which describes the return
-types and arguments of functions.
-The next section is the
-.Sy type
-information section, which describes
-the format and layout of the C types themselves, and finally the last
-section is the
-.Sy string
-section, which contains the names of types, enumerations, members, and
-labels.
-.Lp
-While strictly speaking, only the
-.Sy preamble
-and
-.Sy header
-are required, to be actually useful, both the type and string
-sections are necessary.
-.Lp
-A
-.Nm
-file may contain all of the type information that it requires, or it
-may optionally refer to another
-.Nm
-file which holds the remaining types.
-When a
-.Nm
-file refers to another file, it is called the
-.Sy child
-and the file it refers to is called the
-.Sy parent .
-A given file may only refer to one parent.
-This process is called
-.Em uniquification
-because it ensures each child only has type information that is
-unique to it.
-A common example of this is that most kernel modules in illumos are uniquified
-against the kernel module
-.Sy genunix
-and the type information that comes from the
-.Sy IP
-module.
-This means that a module only has types that are unique to itself and the most
-common types in the kernel are not duplicated.
-.Sh FILE FORMAT
-This documents version
-.Em two
-of the
-.Nm
-file format.
-All applications and tools currently produce and operate on this version.
-.Lp
-The file format can be summarized with the following image, the
-following sections will cover this in more detail.
-.Bd -literal
-
- +-------------+ 0t0
-+--------| Preamble |
-| +-------------+ 0t4
-|+-------| Header |
-|| +-------------+ 0t36 + cth_lbloff
-||+------| Labels |
-||| +-------------+ 0t36 + cth_objtoff
-|||+-----| Objects |
-|||| +-------------+ 0t36 + cth_funcoff
-||||+----| Functions |
-||||| +-------------+ 0t36 + cth_typeoff
-|||||+---| Types |
-|||||| +-------------+ 0t36 + cth_stroff
-||||||+--| Strings |
-||||||| +-------------+ 0t36 + cth_stroff + cth_strlen
-|||||||
-|||||||
-|||||||
-||||||| +-- magic - vers flags
-||||||| | | | |
-||||||| +------+------+------+------+
-+---------| 0xcf | 0xf1 | 0x02 | 0x00 |
- |||||| +------+------+------+------+
- |||||| 0 1 2 3 4
- ||||||
- |||||| + parent label + objects
- |||||| | + parent name | + functions + strings
- |||||| | | + label | | + types | + strlen
- |||||| | | | | | | | |
- |||||| +------+------+------+------+------+-------+-------+-------+
- +--------| 0x00 | 0x00 | 0x00 | 0x08 | 0x36 | 0x110 | 0x5f4 | 0x611 |
- ||||| +------+------+------+------+------+-------+-------+-------+
- ||||| 0x04 0x08 0x0c 0x10 0x14 0x18 0x1c 0x20 0x24
- |||||
- ||||| + Label name
- ||||| | + Label type
- ||||| | | + Next label
- ||||| | | |
- ||||| +-------+------+-----+
- +-----------| 0x01 | 0x42 | ... |
- |||| +-------+------+-----+
- |||| cth_lbloff +0x4 +0x8 cth_objtoff
- ||||
- ||||
- |||| Symidx 0t15 0t43 0t44
- |||| +------+------+------+-----+
- +----------| 0x00 | 0x42 | 0x36 | ... |
- ||| +------+------+------+-----+
- ||| cth_objtoff +0x2 +0x4 +0x6 cth_funcoff
- |||
- ||| + CTF_TYPE_INFO + CTF_TYPE_INFO
- ||| | + Return type |
- ||| | | + arg0 |
- ||| +--------+------+------+-----+
- +---------| 0x2c10 | 0x08 | 0x0c | ... |
- || +--------+------+------+-----+
- || cth_funcff +0x2 +0x4 +0x6 cth_typeoff
- ||
- || + ctf_stype_t for type 1
- || | integer + integer encoding
- || | | + ctf_stype_t for type 2
- || | | |
- || +--------------------+-----------+-----+
- +--------| 0x19 * 0xc01 * 0x0 | 0x1000000 | ... |
- | +--------------------+-----------+-----+
- | cth_typeoff +0x08 +0x0c cth_stroff
- |
- | +--- str 0
- | | +--- str 1 + str 2
- | | | |
- | v v v
- | +----+---+---+---+----+---+---+---+---+---+----+
- +---| \\0 | i | n | t | \\0 | f | o | o | _ | t | \\0 |
- +----+---+---+---+----+---+---+---+---+---+----+
- 0 1 2 3 4 5 6 7 8 9 10 11
-.Ed
-.Lp
-Every
-.Nm
-file begins with a
-.Sy preamble ,
-followed by a
-.Sy header .
-The
-.Sy preamble
-is defined as follows:
-.Bd -literal
-typedef struct ctf_preamble {
- ushort_t ctp_magic; /* magic number (CTF_MAGIC) */
- uchar_t ctp_version; /* data format version number (CTF_VERSION) */
- uchar_t ctp_flags; /* flags (see below) */
-} ctf_preamble_t;
-.Ed
-.Pp
-The
-.Sy preamble
-is four bytes long and must be four byte aligned.
-This
-.Sy preamble
-defines the version of the
-.Nm
-file which defines the format of the rest of the header.
-While the header may change in subsequent versions, the preamble will not change
-across versions, though the interpretation of its flags may change from
-version to version.
-The
-.Em ctp_magic
-member defines the magic number for the
-.Nm
-file format.
-This must always be
-.Li 0xcff1 .
-If another value is encountered, then the file should not be treated as
-a
-.Nm
-file.
-The
-.Em ctp_version
-member defines the version of the
-.Nm
-file.
-The current version is
-.Li 2 .
-It is possible to encounter an unsupported version.
-In that case, software should not try to parse the format, as it may have
-changed.
-Finally, the
-.Em ctp_flags
-member describes aspects of the file which modify its interpretation.
-The following flags are currently defined:
-.Bd -literal
-#define CTF_F_COMPRESS 0x01
-.Ed
-.Pp
-The flag
-.Sy CTF_F_COMPRESS
-indicates that the body of the
-.Nm
-file, all the data following the
-.Sy header ,
-has been compressed through the
-.Sy zlib
-library and its
-.Sy deflate
-algorithm.
-If this flag is not present, then the body has not been compressed and no
-special action is needed to interpret it.
-All offsets into the data as described by
-.Sy header ,
-always refer to the
-.Sy uncompressed
-data.
-.Lp
-In version two of the
-.Nm
-file format, the
-.Sy header
-denotes whether whether or not this
-.Nm
-file is the child of another
-.Nm
-file and also indicates the size of the remaining sections.
-The structure for the
-.Sy header ,
-logically contains a copy of the
-.Sy preamble
-and the two have a combined size of 36 bytes.
-.Bd -literal
-typedef struct ctf_header {
- ctf_preamble_t cth_preamble;
- uint_t cth_parlabel; /* ref to name of parent lbl uniq'd against */
- uint_t cth_parname; /* ref to basename of parent */
- uint_t cth_lbloff; /* offset of label section */
- uint_t cth_objtoff; /* offset of object section */
- uint_t cth_funcoff; /* offset of function section */
- uint_t cth_typeoff; /* offset of type section */
- uint_t cth_stroff; /* offset of string section */
- uint_t cth_strlen; /* length of string section in bytes */
-} ctf_header_t;
-.Ed
-.Pp
-After the
-.Sy preamble ,
-the next two members
-.Em cth_parlablel
-and
-.Em cth_parname ,
-are used to identify the parent.
-The value of both members are offsets into the
-.Sy string
-section which point to the start of a null-terminated string.
-For more information on the encoding of strings, see the subsection on
-.Sx String Identifiers .
-If the value of either is zero, then there is no entry for that
-member.
-If the member
-.Em cth_parlabel
-is set, then the
-.Em ctf_parname
-member must be set, otherwise it will not be possible to find the
-parent.
-If
-.Em ctf_parname
-is set, it is not necessary to define
-.Em cth_parlabel ,
-as the parent may not have a label.
-For more information on labels and their interpretation, see
-.Sx The Label Section .
-.Lp
-The remaining members (excepting
-.Em cth_strlen )
-describe the beginning of the corresponding sections.
-These offsets are relative to the end of the
-.Sy header .
-Therefore, something with an offset of 0 is at an offset of thirty-six
-bytes relative to the start of the
-.Nm
-file.
-The difference between members indicates the size of the section itself.
-Different offsets have different alignment requirements.
-The start of the
-.Em cth_objotoff
-and
-.Em cth_funcoff
-must be two byte aligned, while the sections
-.Em cth_lbloff
-and
-.Em cth_typeoff
-must be four-byte aligned.
-The section
-.Em cth_stroff
-has no alignment requirements.
-To calculate the size of a given section, excepting the
-.Sy string
-section, one should subtract the offset of the section from the following one.
-For example, the size of the
-.Sy types
-section can be calculated by subtracting
-.Em cth_stroff
-from
-.Em cth_typeoff .
-.Lp
-Finally, the member
-.Em cth_strlen
-describes the length of the string section itself.
-From it, you can also calculate the size of the entire
-.Nm
-file by adding together the size of the
-.Sy ctf_header_t ,
-the offset of the string section in
-.Em cth_stroff ,
-and the size of the string section in
-.Em cth_srlen .
-.Ss Type Identifiers
-Through the
-.Nm ctf
-data, types are referred to by identifiers.
-A given
-.Nm
-file supports up to 32767 (0x7fff) types.
-The first valid type identifier is 0x1.
-When a given
-.Nm
-file is a child, indicated by a non-zero entry for the
-.Sy header Ns 's
-.Em cth_parname ,
-then the first valid type identifier is 0x8000 and the last is 0xffff.
-In this case, type identifiers 0x1 through 0x7fff are references to the
-parent.
-.Lp
-The type identifier zero is a sentinel value used to indicate that there
-is no type information available or it is an unknown type.
-.Lp
-Throughout the file format, the identifier is stored in different sized
-values; however, the minimum size to represent a given identifier is a
-.Sy uint16_t .
-Other consumers of
-.Nm
-information may use larger or opaque identifiers.
-.Ss String Identifiers
-String identifiers are always encoded as four byte unsigned integers
-which are an offset into a string table.
-The
-.Nm
-format supports two different string tables which have an identifier of
-zero or one.
-This identifier is stored in the high-order bit of the unsigned four byte
-offset.
-Therefore, the maximum supported offset into one of these tables is 0x7ffffffff.
-.Lp
-Table identifier zero, always refers to the
-.Sy string
-section in the CTF file itself.
-String table identifier one refers to an external string table which is the ELF
-string table for the ELF symbol table associated with the
-.Nm
-container.
-.Ss Type Encoding
-Every
-.Nm
-type begins with metadata encoded into a
-.Sy uint16_t .
-This encoded information tells us three different pieces of information:
-.Bl -bullet -offset indent -compact
-.It
-The kind of the type
-.It
-Whether this type is a root type or not
-.It
-The length of the variable data
-.El
-.Lp
-The 16 bits that make up the encoding are broken down such that you have
-five bits for the kind, one bit for indicating whether or not it is a
-root type, and 10 bits for the variable length.
-This is laid out as follows:
-.Bd -literal -offset indent
-+--------------------+
-| kind | root | vlen |
-+--------------------+
-15 11 10 9 0
-.Ed
-.Lp
-The current version of the file format defines 14 different kinds.
-The interpretation of these different kinds will be discussed in the section
-.Sx The Type Section .
-If a kind is encountered that is not listed below, then it is not a valid
-.Nm
-file.
-The kinds are defined as follows:
-.Bd -literal -offset indent
-#define CTF_K_UNKNOWN 0
-#define CTF_K_INTEGER 1
-#define CTF_K_FLOAT 2
-#define CTF_K_POINTER 3
-#define CTF_K_ARRAY 4
-#define CTF_K_FUNCTION 5
-#define CTF_K_STRUCT 6
-#define CTF_K_UNION 7
-#define CTF_K_ENUM 8
-#define CTF_K_FORWARD 9
-#define CTF_K_TYPEDEF 10
-#define CTF_K_VOLATILE 11
-#define CTF_K_CONST 12
-#define CTF_K_RESTRICT 13
-.Ed
-.Lp
-Programs directly reference many types; however, other types are referenced
-indirectly because they are part of some other structure.
-These types that are referenced directly and used are called
-.Sy root
-types.
-Other types may be used indirectly, for example, a program may reference
-a structure directly, but not one of its members which has a type.
-That type is not considered a
-.Sy root
-type.
-If a type is a
-.Sy root
-type, then it will have bit 10 set.
-.Lp
-The variable length section is specific to each kind and is discussed in the
-section
-.Sx The Type Section .
-.Lp
-The following macros are useful for constructing and deconstructing the encoded
-type information:
-.Bd -literal -offset indent
-
-#define CTF_MAX_VLEN 0x3ff
-#define CTF_INFO_KIND(info) (((info) & 0xf800) >> 11)
-#define CTF_INFO_ISROOT(info) (((info) & 0x0400) >> 10)
-#define CTF_INFO_VLEN(info) (((info) & CTF_MAX_VLEN))
-
-#define CTF_TYPE_INFO(kind, isroot, vlen) \\
- (((kind) << 11) | (((isroot) ? 1 : 0) << 10) | ((vlen) & CTF_MAX_VLEN))
-.Ed
-.Ss The Label Section
-When consuming
-.Nm
-data, it is often useful to know whether two different
-.Nm
-containers come from the same source base and version.
-For example, when building illumos, there are many kernel modules that are built
-against a single collection of source code.
-A label is encoded into the
-.Nm
-files that corresponds with the particular build.
-This ensures that if files on the system were to become mixed up from multiple
-releases, that they are not used together by tools, particularly when a child
-needs to refer to a type in the parent.
-Because they are linked used the type identifiers, if the wrong parent is used
-then the wrong type will be encountered.
-.Lp
-Each label is encoded in the file format using the following eight byte
-structure:
-.Bd -literal
-typedef struct ctf_lblent {
- uint_t ctl_label; /* ref to name of label */
- uint_t ctl_typeidx; /* last type associated with this label */
-} ctf_lblent_t;
-.Ed
-.Lp
-Each label has two different components, a name and a type identifier.
-The name is encoded in the
-.Em ctl_label
-member which is in the format defined in the section
-.Sx String Identifiers .
-Generally, the names of all labels are found in the internal string
-section.
-.Lp
-The type identifier encoded in the member
-.Em ctl_typeidx
-refers to the last type identifier that a label refers to in the current
-file.
-Labels only refer to types in the current file, if the
-.Nm
-file is a child, then it will have the same label as its parent;
-however, its label will only refer to its types, not its parents.
-.Lp
-It is also possible, though rather uncommon, for a
-.Nm
-file to have multiple labels.
-Labels are placed one after another, every eight bytes.
-When multiple labels are present, types may only belong to a single label.
-.Ss The Object Section
-The object section provides a mapping from ELF symbols of type
-.Sy STT_OBJECT
-in the symbol table to a type identifier.
-Every entry in this section is a
-.Sy uint16_t
-which contains a type identifier as described in the section
-.Sx Type Identifiers .
-If there is no information for an object, then the type identifier 0x0
-is stored for that entry.
-.Lp
-To walk the object section, you need to have a corresponding
-.Sy symbol table
-in the ELF object that contains the
-.Nm
-data.
-Not every object is included in this section.
-Specifically, when walking the symbol table.
-An entry is skipped if it matches any of the following conditions:
-.Lp
-.Bl -bullet -offset indent -compact
-.It
-The symbol type is not
-.Sy STT_OBJECT
-.It
-The symbol's section index is
-.Sy SHN_UNDEF
-.It
-The symbol's name offset is zero
-.It
-The symbol's section index is
-.Sy SHN_ABS
-and the value of the symbol is zero.
-.It
-The symbol's name is
-.Li _START_
-or
-.Li _END_ .
-These are skipped because they are used for scoping local symbols in
-ELF.
-.El
-.Lp
-The following sample code shows an example of iterating the object
-section and skipping the correct symbols:
-.Bd -literal
-#include <gelf.h>
-#include <stdio.h>
-
-/*
- * Given the start of the object section in the CTF file, the number of symbols,
- * and the ELF Data sections for the symbol table and the string table, this
- * prints the type identifiers that correspond to objects. Note, a more robust
- * implementation should ensure that they don't walk beyond the end of the CTF
- * object section.
- */
-static int
-walk_symbols(uint16_t *objtoff, Elf_Data *symdata, Elf_Data *strdata,
- long nsyms)
-{
- long i;
- uintptr_t strbase = strdata->d_buf;
-
- for (i = 1; i < nsyms; i++, objftoff++) {
- const char *name;
- GElf_Sym sym;
-
- if (gelf_getsym(symdata, i, &sym) == NULL)
- return (1);
-
- if (GELF_ST_TYPE(sym.st_info) != STT_OBJECT)
- continue;
- if (sym.st_shndx == SHN_UNDEF || sym.st_name == 0)
- continue;
- if (sym.st_shndx == SHN_ABS && sym.st_value == 0)
- continue;
- name = (const char *)(strbase + sym.st_name);
- if (strcmp(name, "_START_") == 0 || strcmp(name, "_END_") == 0)
- continue;
-
- (void) printf("Symbol %d has type %d\n", i, *objtoff);
- }
-
- return (0);
-}
-.Ed
-.Ss The Function Section
-The function section of the
-.Nm
-file encodes the types of both the function's arguments and the function's
-return type.
-Similar to
-.Sx The Object Section ,
-the function section encodes information for all symbols of type
-.Sy STT_FUNCTION ,
-excepting those that fit specific criteria.
-Unlike with objects, because functions have a variable number of arguments, they
-start with a type encoding as defined in
-.Sx Type Encoding ,
-which is the size of a
-.Sy uint16_t .
-For functions which have no type information available, they are encoded as
-.Li CTF_TYPE_INFO(CTF_K_UNKNOWN, 0, 0) .
-Functions with arguments are encoded differently.
-Here, the variable length is turned into the number of arguments in the
-function.
-If a function is a
-.Sy varargs
-type function, then the number of arguments is increased by one.
-Functions with type information are encoded as:
-.Li CTF_TYPE_INFO(CTF_K_FUNCTION, 0, nargs) .
-.Lp
-For functions that have no type information, nothing else is encoded, and the
-next function is encoded.
-For functions with type information, the next
-.Sy uint16_t
-is encoded with the type identifier of the return type of the function.
-It is followed by each of the type identifiers of the arguments, if any exist,
-in the order that they appear in the function.
-Therefore, argument 0 is the first type identifier and so on.
-When a function has a final varargs argument, that is encoded with the type
-identifier of zero.
-.Lp
-Like
-.Sx The Object Section ,
-the function section is encoded in the order of the symbol table.
-It has similar, but slightly different considerations from objects.
-While iterating the symbol table, if any of the following conditions are true,
-then the entry is skipped and no corresponding entry is written:
-.Lp
-.Bl -bullet -offset indent -compact
-.It
-The symbol type is not
-.Sy STT_FUNCTION
-.It
-The symbol's section index is
-.Sy SHN_UNDEF
-.It
-The symbol's name offset is zero
-.It
-The symbol's name is
-.Li _START_
-or
-.Li _END_ .
-These are skipped because they are used for scoping local symbols in
-ELF.
-.El
-.Ss The Type Section
-The type section is the heart of the
-.Nm
-data.
-It encodes all of the information about the types themselves.
-The base of the type information comes in two forms, a short form and a long
-form, each of which may be followed by a variable number of arguments.
-The following definitions describe the short and long forms:
-.Bd -literal
-#define CTF_MAX_SIZE 0xfffe /* max size of a type in bytes */
-#define CTF_LSIZE_SENT 0xffff /* sentinel for ctt_size */
-#define CTF_MAX_LSIZE UINT64_MAX
-
-typedef struct ctf_stype {
- uint_t ctt_name; /* reference to name in string table */
- ushort_t ctt_info; /* encoded kind, variant length */
- union {
- ushort_t _size; /* size of entire type in bytes */
- ushort_t _type; /* reference to another type */
- } _u;
-} ctf_stype_t;
-
-typedef struct ctf_type {
- uint_t ctt_name; /* reference to name in string table */
- ushort_t ctt_info; /* encoded kind, variant length */
- union {
- ushort_t _size; /* always CTF_LSIZE_SENT */
- ushort_t _type; /* do not use */
- } _u;
- uint_t ctt_lsizehi; /* high 32 bits of type size in bytes */
- uint_t ctt_lsizelo; /* low 32 bits of type size in bytes */
-} ctf_type_t;
-
-#define ctt_size _u._size /* for fundamental types that have a size */
-#define ctt_type _u._type /* for types that reference another type */
-.Ed
-.Pp
-Type sizes are stored in
-.Sy bytes .
-The basic small form uses a
-.Sy ushort_t
-to store the number of bytes.
-If the number of bytes in a structure would exceed 0xfffe, then the alternate
-form, the
-.Sy ctf_type_t ,
-is used instead.
-To indicate that the larger form is being used, the member
-.Em ctt_size
-is set to value of
-.Sy CTF_LSIZE_SENT
-(0xffff).
-In general, when going through the type section, consumers use the
-.Sy ctf_type_t
-structure, but pay attention to the value of the member
-.Em ctt_size
-to determine whether they should increment their scan by the size of the
-.Sy ctf_stype_t
-or
-.Sy ctf_type_t .
-Not all kinds of types use
-.Sy ctt_size .
-Those which do not, will always use the
-.Sy ctf_stype_t
-structure.
-The individual sections for each kind have more information.
-.Lp
-Types are written out in order.
-Therefore the first entry encountered has a type id of 0x1, or 0x8000 if a
-child.
-The member
-.Em ctt_name
-is encoded as described in the section
-.Sx String Identifiers .
-The string that it points to is the name of the type.
-If the identifier points to an empty string (one that consists solely of a null
-terminator) then the type does not have a name, this is common with anonymous
-structures and unions that only have a typedef to name them, as well as,
-pointers and qualifiers.
-.Lp
-The next member, the
-.Em ctt_info ,
-is encoded as described in the section
-.Sx Type Encoding .
-The types kind tells us how to interpret the remaining data in the
-.Sy ctf_type_t
-and any variable length data that may exist.
-The rest of this section will be broken down into the interpretation of the
-various kinds.
-.Ss Encoding of Integers
-Integers, which are of type
-.Sy CTF_K_INTEGER ,
-have no variable length arguments.
-Instead, they are followed by a four byte
-.Sy uint_t
-which describes their encoding.
-All integers must be encoded with a variable length of zero.
-The
-.Em ctt_size
-member describes the length of the integer in bytes.
-In general, integer sizes will be rounded up to the closest power of two.
-.Lp
-The integer encoding contains three different pieces of information:
-.Bl -bullet -offset indent -compact
-.It
-The encoding of the integer
-.It
-The offset in
-.Sy bits
-of the type
-.It
-The size in
-.Sy bits
-of the type
-.El
-.Pp
-This encoding can be expressed through the following macros:
-.Bd -literal -offset indent
-#define CTF_INT_ENCODING(data) (((data) & 0xff000000) >> 24)
-#define CTF_INT_OFFSET(data) (((data) & 0x00ff0000) >> 16)
-#define CTF_INT_BITS(data) (((data) & 0x0000ffff))
-
-#define CTF_INT_DATA(encoding, offset, bits) \\
- (((encoding) << 24) | ((offset) << 16) | (bits))
-.Ed
-.Pp
-The following flags are defined for the encoding at this time:
-.Bd -literal -offset indent
-#define CTF_INT_SIGNED 0x01
-#define CTF_INT_CHAR 0x02
-#define CTF_INT_BOOL 0x04
-#define CTF_INT_VARARGS 0x08
-.Ed
-.Lp
-By default, an integer is considered to be unsigned, unless it has the
-.Sy CTF_INT_SIGNED
-flag set.
-If the flag
-.Sy CTF_INT_CHAR
-is set, that indicates that the integer is of a type that stores character
-data, for example the intrinsic C type
-.Sy char
-would have the
-.Sy CTF_INT_CHAR
-flag set.
-If the flag
-.Sy CTF_INT_BOOL
-is set, that indicates that the integer represents a boolean type.
-For example, the intrinsic C type
-.Sy _Bool
-would have the
-.Sy CTF_INT_BOOL
-flag set.
-Finally, the flag
-.Sy CTF_INT_VARARGS
-indicates that the integer is used as part of a variable number of arguments.
-This encoding is rather uncommon.
-.Ss Encoding of Floats
-Floats, which are of type
-.Sy CTF_K_FLOAT ,
-are similar to their integer counterparts.
-They have no variable length arguments and are followed by a four byte encoding
-which describes the kind of float that exists.
-The
-.Em ctt_size
-member is the size, in bytes, of the float.
-The float encoding has three different pieces of information inside of it:
-.Lp
-.Bl -bullet -offset indent -compact
-.It
-The specific kind of float that exists
-.It
-The offset in
-.Sy bits
-of the float
-.It
-The size in
-.Sy bits
-of the float
-.El
-.Lp
-This encoding can be expressed through the following macros:
-.Bd -literal -offset indent
-#define CTF_FP_ENCODING(data) (((data) & 0xff000000) >> 24)
-#define CTF_FP_OFFSET(data) (((data) & 0x00ff0000) >> 16)
-#define CTF_FP_BITS(data) (((data) & 0x0000ffff))
-
-#define CTF_FP_DATA(encoding, offset, bits) \\
- (((encoding) << 24) | ((offset) << 16) | (bits))
-.Ed
-.Lp
-Where as the encoding for integers was a series of flags, the encoding for
-floats maps to a specific kind of float.
-It is not a flag-based value.
-The kinds of floats correspond to both their size, and the encoding.
-This covers all of the basic C intrinsic floating point types.
-The following are the different kinds of floats represented in the encoding:
-.Bd -literal -offset indent
-#define CTF_FP_SINGLE 1 /* IEEE 32-bit float encoding */
-#define CTF_FP_DOUBLE 2 /* IEEE 64-bit float encoding */
-#define CTF_FP_CPLX 3 /* Complex encoding */
-#define CTF_FP_DCPLX 4 /* Double complex encoding */
-#define CTF_FP_LDCPLX 5 /* Long double complex encoding */
-#define CTF_FP_LDOUBLE 6 /* Long double encoding */
-#define CTF_FP_INTRVL 7 /* Interval (2x32-bit) encoding */
-#define CTF_FP_DINTRVL 8 /* Double interval (2x64-bit) encoding */
-#define CTF_FP_LDINTRVL 9 /* Long double interval (2x128-bit) encoding */
-#define CTF_FP_IMAGRY 10 /* Imaginary (32-bit) encoding */
-#define CTF_FP_DIMAGRY 11 /* Long imaginary (64-bit) encoding */
-#define CTF_FP_LDIMAGRY 12 /* Long double imaginary (128-bit) encoding */
-.Ed
-.Ss Encoding of Arrays
-Arrays, which are of type
-.Sy CTF_K_ARRAY ,
-have no variable length arguments.
-They are followed by a structure which describes the number of elements in the
-array, the type identifier of the elements in the array, and the type identifier
-of the index of the array.
-With arrays, the
-.Em ctt_size
-member is set to zero.
-The structure that follows an array is defined as:
-.Bd -literal
-typedef struct ctf_array {
- ushort_t cta_contents; /* reference to type of array contents */
- ushort_t cta_index; /* reference to type of array index */
- uint_t cta_nelems; /* number of elements */
-} ctf_array_t;
-.Ed
-.Lp
-The
-.Em cta_contents
-and
-.Em cta_index
-members of the
-.Sy ctf_array_t
-are type identifiers which are encoded as per the section
-.Sx Type Identifiers .
-The member
-.Em cta_nelems
-is a simple four byte unsigned count of the number of elements.
-This count may be zero when encountering C99's flexible array members.
-.Ss Encoding of Functions
-Function types, which are of type
-.Sy CTF_K_FUNCTION ,
-use the variable length list to be the number of arguments in the function.
-When the function has a final member which is a varargs, then the argument count
-is incremented by one to account for the variable argument.
-Here, the
-.Em ctt_type
-member is encoded with the type identifier of the return type of the function.
-Note that the
-.Em ctt_size
-member is not used here.
-.Lp
-The variable argument list contains the type identifiers for the arguments of
-the function, if any.
-Each one is represented by a
-.Sy uint16_t
-and encoded according to the
-.Sx Type Identifiers
-section.
-If the function's last argument is of type varargs, then it is also written out,
-but the type identifier is zero.
-This is included in the count of the function's arguments.
-.Ss Encoding of Structures and Unions
-Structures and Unions, which are encoded with
-.Sy CTF_K_STRUCT
-and
-.Sy CTF_K_UNION
-respectively, are very similar constructs in C.
-The main difference between them is the fact that every member of a structure
-follows one another, where as in a union, all members share the same memory.
-They are also very similar in terms of their encoding in
-.Nm .
-The variable length argument for structures and unions represents the number of
-members that they have.
-The value of the member
-.Em ctt_size
-is the size of the structure and union.
-There are two different structures which are used to encode members in the
-variable list.
-When the size of a structure or union is greater than or equal to the large
-member threshold, 8192, then a different structure is used to encode the member,
-all members are encoded using the same structure.
-The structure for members is as follows:
-.Bd -literal
-typedef struct ctf_member {
- uint_t ctm_name; /* reference to name in string table */
- ushort_t ctm_type; /* reference to type of member */
- ushort_t ctm_offset; /* offset of this member in bits */
-} ctf_member_t;
-
-typedef struct ctf_lmember {
- uint_t ctlm_name; /* reference to name in string table */
- ushort_t ctlm_type; /* reference to type of member */
- ushort_t ctlm_pad; /* padding */
- uint_t ctlm_offsethi; /* high 32 bits of member offset in bits */
- uint_t ctlm_offsetlo; /* low 32 bits of member offset in bits */
-} ctf_lmember_t;
-.Ed
-.Lp
-Both the
-.Em ctm_name
-and
-.Em ctlm_name
-refer to the name of the member.
-The name is encoded as an offset into the string table as described by the
-section
-.Sx String Identifiers .
-The members
-.Sy ctm_type
-and
-.Sy ctlm_type
-both refer to the type of the member.
-They are encoded as per the section
-.Sx Type Identifiers .
-.Lp
-The last piece of information that is present is the offset which describes the
-offset in memory that the member begins at.
-For unions, this value will always be zero because the start of unions in memory
-is always zero.
-For structures, this is the offset in
-.Sy bits
-that the member begins at.
-Note that a compiler may lay out a type with padding.
-This means that the difference in offset between two consecutive members may be
-larger than the size of the member.
-When the size of the overall structure is strictly less than 8192 bytes, the
-normal structure,
-.Sy ctf_member_t ,
-is used and the offset in bits is stored in the member
-.Em ctm_offset .
-However, when the size of the structure is greater than or equal to 8192 bytes,
-then the number of bits is split into two 32-bit quantities.
-One member,
-.Em ctlm_offsethi ,
-represents the upper 32 bits of the offset, while the other member,
-.Em ctlm_offsetlo ,
-represents the lower 32 bits of the offset.
-These can be joined together to get a 64-bit sized offset in bits by shifting
-the member
-.Em ctlm_offsethi
-to the left by thirty two and then doing a binary or of
-.Em ctlm_offsetlo .
-.Ss Encoding of Enumerations
-Enumerations, noted by the type
-.Sy CTF_K_ENUM ,
-are similar to structures.
-Enumerations use the variable list to note the number of values that the
-enumeration contains, which we'll term enumerators.
-In C, an enumeration is always equivalent to the intrinsic type
-.Sy int ,
-thus the value of the member
-.Em ctt_size
-is always the size of an integer which is determined based on the current model.
-For illumos systems, this will always be 4, as an integer is always defined to
-be 4 bytes large in both
-.Sy ILP32
-and
-.Sy LP64 ,
-regardless of the architecture.
-.Lp
-The enumerators encoded in an enumeration have the following structure in the
-variable list:
-.Bd -literal
-typedef struct ctf_enum {
- uint_t cte_name; /* reference to name in string table */
- int cte_value; /* value associated with this name */
-} ctf_enum_t;
-.Ed
-.Pp
-The member
-.Em cte_name
-refers to the name of the enumerator's value, it is encoded according to the
-rules in the section
-.Sx String Identifiers .
-The member
-.Em cte_value
-contains the integer value of this enumerator.
-.Ss Encoding of Forward References
-Forward references, types of kind
-.Sy CTF_K_FORWARD ,
-in a
-.Nm
-file refer to types which may not have a definition at all, only a name.
-If the
-.Nm
-file is a child, then it may be that the forward is resolved to an
-actual type in the parent, otherwise the definition may be in another
-.Nm
-container or may not be known at all.
-The only member of the
-.Sy ctf_type_t
-that matters for a forward declaration is the
-.Em ctt_name
-which points to the name of the forward reference in the string table as
-described earlier.
-There is no other information recorded for forward references.
-.Ss Encoding of Pointers, Typedefs, Volatile, Const, and Restrict
-Pointers, typedefs, volatile, const, and restrict are all similar in
-.Nm .
-They all refer to another type.
-In the case of typedefs, they provide an alternate name, while volatile, const,
-and restrict change how the type is interpreted in the C programming language.
-This covers the
-.Nm
-kinds
-.Sy CTF_K_POINTER ,
-.Sy CTF_K_TYPEDEF ,
-.Sy CTF_K_VOLATILE ,
-.Sy CTF_K_RESTRICT ,
-and
-.Sy CTF_K_CONST .
-.Lp
-These types have no variable list entries and use the member
-.Em ctt_type
-to refer to the base type that they modify.
-.Ss Encoding of Unknown Types
-Types with the kind
-.Sy CTF_K_UNKNOWN
-are used to indicate gaps in the type identifier space.
-These entries consume an identifier, but do not define anything.
-Nothing should refer to these gap identifiers.
-.Ss Dependencies Between Types
-C types can be imagined as a directed, cyclic, graph.
-Structures and unions may refer to each other in a way that creates a cyclic
-dependency.
-In cases such as these, the entire type section must be read in and processed.
-Consumers must not assume that every type can be laid out in dependency order;
-they cannot.
-.Ss The String Section
-The last section of the
-.Nm
-file is the
-.Sy string
-section.
-This section encodes all of the strings that appear throughout the other
-sections.
-It is laid out as a series of characters followed by a null terminator.
-Generally, all names are written out in ASCII, as most C compilers do not allow
-and characters to appear in identifiers outside of a subset of ASCII.
-However, any extended characters sets should be written out as a series of UTF-8
-bytes.
-.Lp
-The first entry in the section, at offset zero, is a single null
-terminator to reference the empty string.
-Following that, each C string should be written out, including the null
-terminator.
-Offsets that refer to something in this section should refer to the first byte
-which begins a string.
-Beyond the first byte in the section being the null terminator, the order of
-strings is unimportant.
-.Sh Data Encoding and ELF Considerations
-.Nm
-data is generally included in ELF objects which specify information to
-identify the architecture and endianness of the file.
-A
-.Nm
-container inside such an object must match the endianness of the ELF object.
-Aside from the question of the endian encoding of data, there should be no other
-differences between architectures.
-While many of the types in this document refer to non-fixed size C integral
-types, they are equivalent in the models
-.Sy ILP32
-and
-.Sy LP64 .
-If any other model is being used with
-.Nm
-data that has different sizes, then it must not use the model's sizes for
-those integral types and instead use the fixed size equivalents based on an
-.Sy ILP32
-environment.
-.Lp
-When placing a
-.Nm
-container inside of an ELF object, there are certain conventions that are
-expected for the purposes of tooling being able to find the
-.Nm
-data.
-In particular, a given ELF object should only contain a single
-.Nm
-section.
-Multiple containers should be merged together into a single one.
-.Lp
-The
-.Nm
-file should be included in its own ELF section.
-The section's name must be
-.Ql .SUNW_ctf .
-The type of the section must be
-.Sy SHT_PROGBITS .
-The section should have a link set to the symbol table and its address
-alignment must be 4.
-.Sh SEE ALSO
-.Xr mdb 1 ,
-.Xr dtrace 1M ,
-.Xr gelf 3ELF ,
-.Xr libelf 3LIB ,
-.Xr a.out 4
diff --git a/usr/src/man/man4/d_passwd.4 b/usr/src/man/man4/d_passwd.4
deleted file mode 100644
index e81c1cfc7f..0000000000
--- a/usr/src/man/man4/d_passwd.4
+++ /dev/null
@@ -1,196 +0,0 @@
-'\" te
-.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH D_PASSWD 4 "Sep 2, 2004"
-.SH NAME
-d_passwd \- dial-up password file
-.SH SYNOPSIS
-.LP
-.nf
-\fB/etc/d_passwd\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-A dial-up password is an additional password required of users who access the
-computer through a modem or dial-up port. The correct password must be entered
-before the user is granted access to the computer.
-.sp
-.LP
-\fBd_passwd\fR is an \fBASCII\fR file which contains a list of executable
-programs (typically shells) that require a dial-up password and the associated
-encrypted passwords. When a user attempts to log in on any of the ports listed
-in the \fBdialups\fR file (see \fBdialups\fR(4)), the login program looks at
-the user's login entry stored in the \fBpasswd\fR file (see \fBpasswd\fR(4)),
-and compares the login shell field to the entries in \fBd_passwd\fR. These
-entries determine whether the user will be required to supply a dial-up
-password.
-.sp
-.LP
-Each entry in \fBd_passwd\fR is a single line of the form:
-.sp
-.in +2
-.nf
-\fIlogin-shell\fR\fB:\fR\fIpassword\fR\fB:\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-where
-.sp
-.ne 2
-.na
-\fB\fIlogin-shell\fR\fR
-.ad
-.RS 15n
-The name of the login program that will require an additional dial-up password.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIpassword\fR\fR
-.ad
-.RS 15n
-An encrypted password. Users accessing the computer through a dial-up port or
-modem using \fIlogin-shell\fR will be required to enter this password before
-gaining access to the computer.
-.RE
-
-.sp
-.LP
-\fBd_passwd\fR should be owned by the \fBroot\fR user and the \fBroot\fR group.
-The file should have read and write permissions for the owner (\fBroot\fR)
-only.
-.sp
-.LP
-If the user's login program in the \fBpasswd\fR file is not found in
-\fBd_passwd\fR or if the login shell field in \fBpasswd\fR is empty, the user
-must supply the default password. The default password is the entry for
-\fB/usr/bin/sh\fR. If \fBd_passwd\fR has no entry for \fB/usr/bin/sh\fR, then
-those users whose login shell field in \fBpasswd\fR is empty or does not match
-any entry in \fBd_passwd\fR will not be prompted for a dial-up password.
-.sp
-.LP
-Dial-up logins are disabled if \fBd_passwd\fR has only the following entry:
-.sp
-.in +2
-.nf
-/usr/bin/sh:*:
-.fi
-.in -2
-.sp
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRSample \fBd_passwd\fR file.
-.sp
-.LP
-Here is a sample \fBd_passwd\fR file:
-
-.sp
-.in +2
-.nf
-/usr/lib/uucp/uucico:q.mJzTnu8icF0:
-/usr/bin/csh:6k/7KCFRPNVXg:
-/usr/bin/ksh:9df/FDf.4jkRt:
-/usr/bin/sh:41FuGVzGcDJlw:
-.fi
-.in -2
-.sp
-
-.SS "Generating An Encrypted Password"
-.sp
-.LP
-The \fBpasswd\fR (see \fBpasswd\fR(1)) utility can be used to generate the
-encrypted password for each login program. \fBpasswd\fR generates encrypted
-passwords for users and places the password in the \fBshadow\fR (see
-\fBshadow\fR(4)) file. Passwords for the \fBd_passwd\fR file will need to be
-generated by first adding a temporary user id using \fBuseradd\fR (see
-\fBuseradd\fR(1M)), and then using \fBpasswd\fR(1) to generate the desired
-password in the \fBshadow\fR file. Once the encrypted version of the password
-has been created, it can be copied to the \fBd_passwd\fR file.
-.sp
-.LP
-For example:
-.RS +4
-.TP
-1.
-Type \fBuseradd\fR \fBtempuser\fR and press Return. This creates a user
-named \fBtempuser\fR.
-.RE
-.RS +4
-.TP
-2.
-Type \fBpasswd\fR \fBtempuser\fR and press Return. This creates an encrypted
-password for \fBtempuser\fR and places it in the \fBshadow\fR file.
-.RE
-.RS +4
-.TP
-3.
-Find the entry for \fBtempuser\fR in the \fBshadow\fR file and copy the
-encrypted password to the desired entry in the \fBd_passwd\fR file.
-.RE
-.RS +4
-.TP
-4.
-Type \fBuserdel\fR \fBtempuser\fR and press Return to delete \fBtempuser\fR.
-.RE
-.sp
-.LP
-These steps must be executed as the \fBroot\fR user.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/d_passwd\fR\fR
-.ad
-.RS 17n
-dial-up password file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/dialups\fR\fR
-.ad
-.RS 17n
-list of dial-up ports requiring dial-up passwords
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/passwd\fR\fR
-.ad
-.RS 17n
-password file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/shadow\fR\fR
-.ad
-.RS 17n
-shadow password file
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBpasswd\fR(1), \fBuseradd\fR(1M), \fBdialups\fR(4), \fBpasswd\fR(4),
-\fBshadow\fR(4)
-.SH WARNINGS
-.sp
-.LP
-When creating a new dial-up password, be sure to remain logged in on at least
-one terminal while testing the new password. This ensures that there is an
-available terminal from which you can correct any mistakes that were made when
-the new password was added.
diff --git a/usr/src/man/man4/dacf.conf.4 b/usr/src/man/man4/dacf.conf.4
deleted file mode 100644
index cb854b836e..0000000000
--- a/usr/src/man/man4/dacf.conf.4
+++ /dev/null
@@ -1,37 +0,0 @@
-'\" te
-.\" Copyright (c) 2001 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH DACF.CONF 4 "May 15, 2001"
-.SH NAME
-dacf.conf \- device auto-configuration configuration file
-.SH SYNOPSIS
-.LP
-.nf
-\fB/etc/dacf.conf\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The kernel uses the \fBdacf.conf\fR file to automatically configure hot plugged
-devices. Because the \fBdacf.conf\fR file contains important kernel state
-information, it should not be modified.
-.sp
-.LP
-The format of the \fB/etc/dacf.conf\fR file is not public and might change in
-versions of the Solaris operating environment that are not compatible with
-Solaris 8.
-.SH SEE ALSO
-.sp
-.LP
-\fBattributes\fR(5)
-.SH NOTES
-.sp
-.LP
- This document does not constitute an \fBAPI\fR. The \fB/etc/dacf.conf\fR file
-might not exist or might contain different contents or interpretations in
-versions of the Solaris operating environment that are not compatible with
-Solaris 8. The existence of this notice does not imply that any other
-documentation lacking this notice constitutes an \fBAPI\fR.
diff --git a/usr/src/man/man4/dat.conf.4 b/usr/src/man/man4/dat.conf.4
deleted file mode 100644
index 364cb28946..0000000000
--- a/usr/src/man/man4/dat.conf.4
+++ /dev/null
@@ -1,192 +0,0 @@
-'\" te
-.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH DAT.CONF 4 "Jun 18, 2004"
-.SH NAME
-dat.conf \- DAT static registry
-.SH SYNOPSIS
-.LP
-.nf
-\fB/etc/dat/dat.conf\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The DAT static registry, \fB/etc/dat/dat.conf\fR is a system-wide data resource
-maintained by the system administrative command \fBdatadm\fR(1M).
-.sp
-.LP
-\fB/etc/dat/dat.conf\fR contains a list of interface adapters supported by
-uDAPL service providers. An interface adapter on Infiniband (IB) corresponds to
-an IPoIB device instance, for example, \fBibd0\fR. An IPoIB device name
-represents an IP interface plumbed by \fBifconfig\fR(1M) on an IB
-partition/Host Channel Adapter port combination.
-.sp
-.LP
-Each entry in the DAT static registry is a single line that contains eight
-fields. Fields are separated by a SPACE. Lines that begin with a pound sign
-(\fB#\fR) are considered comments. All characters that follow the \fB#\fR are
-ignored. Enclose Solaris specific strings (\fISolaris_specific_string\fR) and
-service provider's instance data (\fIservice _provider_instance_data\fR) in
-quotes.
-.sp
-.LP
-The following shows the order of the fields in a \fBdat.conf\fR entry:
-.sp
-.in +2
-.nf
-"\fIinterface_adapter_name\fR" "\fIAPI_version\fR" "\fIthreadsafe\fR | \fInonthreadsafe\fR" \e
-"\fIdefault\fR | \fInondefault\fR" "\fIservice_provider_library_pathname\fR" \e
-"\fIservice_provider_version\fR" "\fIservice _provider_instance_data\fR"\e
-"\fISolaris_specific_string\fR"
-.fi
-.in -2
-
-.sp
-.LP
-The fields are defined as follows:
-.sp
-.ne 2
-.na
-\fB\fIinterface_adapter_name\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the Interface Adapter (IA) name. In IB, this is the IPoIB device
-instance name, for example, \fBibd0\fR. This represents an IP interface plumbed
-on an IB partition/port combination of the HCA.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIAPI_version\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the API version of the service provide library: For example,
-\fB"u"major.minor\fR is \fBu1.2\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIthreadsafe\fR | \fInonthreadsafe\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies a threadsafe or non-threadsafe library.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIdefault\fR | \fInondefault\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies a default or non-default version of library. A service provider can
-offer several versions of the library. If so, one version is designated as
-\fBdefault\fR with the rest as \fBnondefault\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIservice_provider_library_pathname\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the pathname of the library image.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIservice_provider_version\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the version of the service provider. By convention, specify the
-company stock symbol as the service provider, followed by major and minor
-version numbers, for example, \fBSUNW1.0\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIservice _provider_instance_data\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the service provider instance data.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fISolaris_specific_string\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies a platform specific string, for example, the device name in the
-\fBservice_provider.conf\fR file.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRSample \fBdat.conf\fR File
-.sp
-.LP
-The following \fBdat.conf\fR file shows a \fBuDAPL 1.2\fR service provider for
-\fBtavor, udapl_tavor.so.1\fR supporting two interfaces, \fBibd0\fR and
-\fBibd1\fR:
-
-.sp
-.in +2
-.nf
-#
-# dat.conf for uDAPL 1.2
-#
-ibd0 u1.2 nonthreadsafe default udapl_tavor.so.1 SUNW.1.0 ""
-"driver_name=tavor"
-ibd1 u1.2 nonthreadsafe default udapl_tavor.so.1 SUNW.1.0 ""
-"driver_name=tavor"
-.fi
-.in -2
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Standard
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBdatadm\fR(1M), \fBifconfig\fR(1M), \fBlibdat\fR(3LIB),
-\fBservice_provider.conf\fR(4), \fBattributes\fR(5)
-.SH NOTES
-.sp
-.LP
-An empty \fBdat.conf\fR is created during the package \fBSUNWudaplr\fR
-installation if no file is present beforehand. Entries in the file are added or
-removed by running \fBdatadm\fR(1M).
-.sp
-.LP
-The content of the platform specific string does not constitute an API. It is
-generated by \fBdatadm\fR(1M) and might have a different content or
-interpretation in a future release.
diff --git a/usr/src/man/man4/default_fs.4 b/usr/src/man/man4/default_fs.4
deleted file mode 100644
index e28d63b0b4..0000000000
--- a/usr/src/man/man4/default_fs.4
+++ /dev/null
@@ -1,69 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH DEFAULT_FS 4 "Mar 20, 1992"
-.SH NAME
-default_fs, fs \- specify the default file system type for local or remote file
-systems
-.SH DESCRIPTION
-.sp
-.LP
-When file system administration commands have both specific and generic
-components (for example, \fBfsck\fR(1M)), the file system type must be
-specified. If it is not explicitly specified using the \fB-F\fR \fIFSType\fR
-command line option, the generic command looks in \fB/etc/vfstab\fR in order to
-determine the file system type, using the supplied raw or block device or mount
-point. If the file system type can not be determined by searching
-\fB/etc/vfstab\fR, the command will use the default file system type specified
-in either \fB/etc/default/fs\fR or \fB/etc/dfs/dfstypes\fR, depending on
-whether the file system is local or remote.
-.sp
-.LP
-The default local file system type is specified in \fB/etc/default/fs\fR by a
-line of the form \fBLOCAL=\fR\fIfstype\fR (for example, \fBLOCAL=ufs\fR). The
-default remote file system type is determined by the first entry in the
-\fB/etc/dfs/fstypes\fR file.
-.sp
-.LP
-File system administration commands will determine whether the file system is
-local or remote by examining the specified device name. If the device name
-starts with ``/'' (slash), it is considered to be local; otherwise it is
-remote.
-.sp
-.LP
-The default file system types can be changed by editing the default files with
-a text editor.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/vfstab\fR\fR
-.ad
-.RS 20n
-list of default parameters for each file system
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/default/fs\fR\fR
-.ad
-.RS 20n
-the default local file system type
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/dfs/fstypes\fR\fR
-.ad
-.RS 20n
-the default remote file system type
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBfsck\fR(1M), \fBfstypes\fR(4), \fBvfstab\fR(4)
diff --git a/usr/src/man/man4/defaultdomain.4 b/usr/src/man/man4/defaultdomain.4
deleted file mode 100644
index eadfeaef5f..0000000000
--- a/usr/src/man/man4/defaultdomain.4
+++ /dev/null
@@ -1,36 +0,0 @@
-'\" te
-.\" Copyright (c) 2000, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH DEFAULTDOMAIN 4 "Feb 25, 2017"
-.SH NAME
-defaultdomain \- specify host's domain name
-.SH SYNOPSIS
-.LP
-.nf
-\fB/etc/defaultdomain\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-The file \fB/etc/defaultdomain\fR determines a host's domain name for direct
-use by the \fBNIS\fR name service. The \fBdefaultdomain\fR file
-is read at boot time and its contents used by the \fBdomainname\fR(1M) command.
-Because of its use by \fBdomainname\fR, \fBdefaultdomain\fR is also used by the
-\fBLDAP\fR service (see \fBldap\fR(1)). Under certain, narrow circumstances
-(see \fBresolv.conf\fR(4)), because \fBdomainname\fR uses \fBdefaultdomain\fR,
-a \fBDNS\fR client can use the contents of \fBdefaultdomain\fR.
-.sp
-.LP
-The contents of \fBdefaultdomain\fR consists of a single line containing a
-host's domain name.
-.SH SEE ALSO
-.LP
-\fBuname\fR(1), \fBldapclient\fR(1M),
-\fBypbind\fR(1M), \fBypinit\fR(1M), \fBresolv.conf\fR(4)
-.SH NOTES
-.LP
-The \fBdefaultdomain\fR file is created and modified by Solaris installation
-and configuration scripts. Only users knowledgeable of name service
-configuration should edit the file.
diff --git a/usr/src/man/man4/defaultrouter.4 b/usr/src/man/man4/defaultrouter.4
deleted file mode 100644
index 7451b4292d..0000000000
--- a/usr/src/man/man4/defaultrouter.4
+++ /dev/null
@@ -1,65 +0,0 @@
-'\" te
-.\" Copyright (c) 2000, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH DEFAULTROUTER 4 "Aug 17, 2004"
-.SH NAME
-defaultrouter \- configuration file for default router(s)
-.SH SYNOPSIS
-.LP
-.nf
-\fB/etc/defaultrouter\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fB/etc/defaultrouter\fR file specifies a IPv4 host's default router(s).
-.sp
-.LP
-The format of the file is as follows:
-.sp
-.in +2
-.nf
-IP_address
-\&...
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The \fB/etc/defaultrouter\fR file can contain the IP addresses or hostnames of
-one or more default routers, with each entry on its own line. If you use
-hostnames, each hostname must also be listed in the local \fB/etc/hosts\fR
-file, because no name services are running at the time that \fBdefaultrouter\fR
-is read.
-.sp
-.LP
-Lines beginning with the ``#'' character are treated as comments.
-.sp
-.LP
-The default routes listed in this file replace those added by the kernel during
-diskless booting. An empty \fB/etc/defaultrouter\fR file will cause the default
-route added by the kernel to be deleted.
-.sp
-.LP
-Use of a default route, whether received from a \fBDHCP\fR server or from
-\fB/etc/defaultrouter\fR, prevents a machine from acting as an IPv4 router. You
-can use \fBrouteadm\fR(1M) to override this behavior.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/defaultrouter\fR\fR
-.ad
-.RS 22n
-Configuration file containing the hostnames or IP addresses of one or more
-default routers.
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBin.rdisc\fR(1M), \fBin.routed\fR(1M), \fBrouteadm\fR(1M), \fBhosts\fR(4)
diff --git a/usr/src/man/man4/depend.4 b/usr/src/man/man4/depend.4
deleted file mode 100644
index 29c4c35543..0000000000
--- a/usr/src/man/man4/depend.4
+++ /dev/null
@@ -1,136 +0,0 @@
-'\" te
-.\" Copyright (c) 2000, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH DEPEND 4 "Oct 4, 1996"
-.SH NAME
-depend \- software dependencies file
-.SH DESCRIPTION
-.sp
-.LP
-\fBdepend\fR is an \fBASCII\fR file used to specify information concerning
-software dependencies for a particular package. The file is created by a
-software developer.
-.sp
-.LP
-Each entry in the \fBdepend\fR file describes a single software package. The
-instance of the package is described after the entry line by giving the package
-architecture and/or version. The format of each entry and subsequent instance
-definition is:
-.sp
-.in +2
-.nf
-\fItype pkg name
- (arch)version
- (arch)version
- .\|.\|.\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The fields are:
-.sp
-.ne 2
-.na
-\fB\fBtype\fR\fR
-.ad
-.RS 17n
-Defines the dependency type. Must be one of the following characters:
-.sp
-.ne 2
-.na
-\fB\fBP\fR\fR
-.ad
-.RS 5n
-Indicates a prerequisite for installation; for example, the referenced package
-or versions must be installed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBI\fR\fR
-.ad
-.RS 5n
-Implies that the existence of the indicated package or version is incompatible.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBR\fR\fR
-.ad
-.RS 5n
-Indicates a reverse dependency. Instead of defining the package's own
-dependencies, this designates that another package depends on this one. This
-type should be used only when an old package does not have a \fBdepend\fR file,
-but relies on the newer package nonetheless. Therefore, the present package
-should not be removed if the designated old package is still on the system
-since, if it is removed, the old package will no longer work.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIpkg\fR\fR
-.ad
-.RS 17n
-Indicates the package abbreviation.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIname\fR\fR
-.ad
-.RS 17n
-Specifies the full package name.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fI(arch)version\fR\fR
-.ad
-.RS 17n
-Specifies a particular instance of the software. A version name cannot begin
-with a left parenthesis. The instance specifications, both \fI(arch)\fR and
-\fIversion\fR, are completely optional, but each \fI(arch)version\fR pair must
-begin on a new line that begins with white space. A null version set equates to
-any version of the indicated package.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRSample of \fBdepend\fR file
-.sp
-.LP
-Here are the contents of a sample \fBdepend\fR file, for the \fBSUNWftpr\fR
-(FTP Server) package, stored in \fB/var/sadm/pkg/SUNWftpr/install\fR:
-
-.sp
-.in +2
-.nf
-P SUNWcar Core Architecture, (Root)
-P SUNWkvm Core Architecture, (Kvm)
-P SUNWcsr Core Solaris, (Root)
-P SUNWcsu Core Solaris, (Usr)
-P SUNWcsd Core Solaris Devices
-P SUNWcsl Core Solaris Libraries
-R SUNWftpu FTP Server, (Usr)
-.fi
-.in -2
-
-.SH SEE ALSO
-.sp
-.LP
-\fBpkginfo\fR(4)
-.sp
-.LP
-\fIApplication Packaging Developer\&'s Guide\fR
diff --git a/usr/src/man/man4/device_allocate.4 b/usr/src/man/man4/device_allocate.4
deleted file mode 100644
index 099022328e..0000000000
--- a/usr/src/man/man4/device_allocate.4
+++ /dev/null
@@ -1,268 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH DEVICE_ALLOCATE 4 "Mar 6, 2017"
-.SH NAME
-device_allocate \- device_allocate file
-.SH SYNOPSIS
-.LP
-.nf
-\fB/etc/security/device_allocate\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBdevice_allocate\fR file is an \fBASCII\fR file that resides in the
-\fB/etc/security\fR directory. It contains mandatory access control information
-about each physical device. Each device is represented by a one- line entry of
-the form:
-.sp
-.LP
-\fIdevice-name\fR;\fIdevice-type\fR;reserved1;reserved2;\fIauths\fR;\fIdevice-e
-xec\fR
-.sp
-.LP
-where:
-.sp
-.ne 2
-.na
-\fB\fIdevice-name\fR\fR
-.ad
-.sp .6
-.RS 4n
-Represents an arbitrary \fBASCII\fR string naming the physical device. This
-field contains no embedded white space or non-printable characters.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIdevice-type\fR\fR
-.ad
-.sp .6
-.RS 4n
-Represents an arbitrary \fBASCII\fR string naming the generic device type. This
-field identifies and groups together devices of like type. This field contains
-no embedded white space or non-printable characters. The following types of
-devices are currently managed by the system: audio, \fBsr\fR (represents CDROM
-drives), \fBfd\fR (represents floppy drives), \fBst\fR (represents tape
-drives), \fBrmdisk\fR (removable media devices).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBreserved1\fR\fR
-.ad
-.sp .6
-.RS 4n
-On systems configured with Trusted Extensions, this field stores a
-colon-separated (\fB:\fR) list of key-value pairs that describe device
-allocation attributes used in Trusted Extensions. Zero or more keys can be
-specified. The following keys are currently interpreted by Trusted Extensions
-systems:
-.sp
-.ne 2
-.na
-\fB\fBminlabel\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the minimum label at which device can be allocated. Default value is
-\fBadmin_low\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmaxlabel\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the maximum label at which device can be allocated. Default value is
-\fBadmin_high\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBzone\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the name of the zone in which device is currently allocated.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBclass\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies a logical grouping of devices. For example, all Sun Ray devices of
-all device types. There is no default class.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBxdpy\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the X display name. This is used to identify devices associated with
-that X session. There is no default \fBxdpy\fR value.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBreserved2\fR\fR
-.ad
-.sp .6
-.RS 4n
-Represents a field reserved for future use.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIauths\fR\fR
-.ad
-.sp .6
-.RS 4n
-Represents a field that contains a comma-separated list of authorizations
-required to allocate the device, an asterisk (\fB*\fR) to indicate that the
-device is \fInot\fR allocatable, or an '\fB@\fR' symbol to indicate that no
-explicit authorization is needed to allocate the device. The default
-authorization is \fBsolaris.device.allocate\fR. See \fBauths\fR(1).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIdevice-exec\fR\fR
-.ad
-.sp .6
-.RS 4n
-The physical device's data clean program to be run any time the device is acted
-on by \fBallocate\fR(1). This ensures that unmanaged data does not remain in
-the physical device between uses. This field contains the filename of a program
-in \fB/etc/security/lib\fR or the full pathname of a cleanup script provided by
-the system administrator.
-.RE
-
-.SS "Notes on \fBdevice_allocate\fR"
-.LP
-The \fBdevice_allocate\fR file is an ASCII file that resides in the
-\fB/etc/security\fR directory.
-.sp
-.LP
-Lines in \fBdevice_allocate\fR can end with a `\fB\e\fR\&' to continue an entry
-on the next line.
-.sp
-.LP
-Comments can also be included. A `\fB#\fR' makes a comment of all further text
-until the next NEWLINE not immediately preceded by a `\fB\e\fR\&'.
-.sp
-.LP
-White space is allowed in any field.
-.sp
-.LP
-The \fBdevice_allocate\fR file must be created by the system administrator
-before device allocation is enabled.
-.sp
-.LP
-The \fBdevice_allocate\fR file is owned by root, with a group of \fBsys\fR, and
-a mode of 0644.
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRDeclaring an Allocatable Device
-.sp
-.LP
-Declare that physical device \fBst0\fR is a type \fBst\fR. \fBst\fR is
-allocatable, and the script used to clean the device after running
-\fBdeallocate\fR(1) is named \fB/etc/security/lib/st_clean\fR.
-
-.sp
-.in +2
-.nf
-# scsi tape
-st0;\e
- st;\e
- reserved;\e
- reserved;\e
- solaris.device.allocate;\e
- /etc/security/lib/st_clean
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRDeclaring an Allocatable Device with Authorizations
-.sp
-.LP
-Declare that physical device \fBfd0\fR is of type \fBfd\fR. \fBfd\fR is
-allocatable by users with the \fBsolaris.device.allocate\fR authorization, and
-the script used to clean the device after running \fBdeallocate\fR(1) is named
-\fB/etc/security/lib/fd_clean\fR.
-
-.sp
-.in +2
-.nf
-# floppy drive
-fd0;\e
- fd;\e
- reserved;\e
- reserved;\e
- solaris.device.allocate;\e
- /etc/security/lib/fd_clean
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Making a device allocatable means that you need to allocate and deallocate it
-to use it (with \fBallocate\fR(1) and \fBdeallocate\fR(1)). If a device is not
-allocatable, there is an asterisk (\fB*\fR) in the \fIauths\fR field, and no
-one can use the device.
-.SH FILES
-.ne 2
-.na
-\fB\fB/etc/security/device_allocate\fR\fR
-.ad
-.sp .6
-.RS 4n
-Contains list of allocatable devices
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Uncommitted
-.TE
-
-.SH SEE ALSO
-.LP
-\fBauths\fR(1), \fBallocate\fR(1), \fBdeallocate\fR(1),
-\fBlist_devices\fR(1), \fBauth_attr\fR(4), \fBattributes\fR(5)
-.SH NOTES
-.LP
-On systems configured with Trusted Extensions, the functionality is enabled by
-default. On such systems, the \fBdevice_allocate\fR file is updated
-automatically by the system.
diff --git a/usr/src/man/man4/device_contract.4 b/usr/src/man/man4/device_contract.4
deleted file mode 100644
index c6be174238..0000000000
--- a/usr/src/man/man4/device_contract.4
+++ /dev/null
@@ -1,374 +0,0 @@
-'\" te
-.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH DEVICE_CONTRACT 4 "Aug 21, 2007"
-.SH NAME
-device_contract \- device contract type
-.SH SYNOPSIS
-.LP
-.nf
-\fB/system/contract/device\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-Device contracts allow processes to monitor events involving a device of
-interest and to react and/or block state changes involving such devices.
-.sp
-.LP
-Device contracts are managed using the \fBcontract\fR(4) file system and the
-\fBlibcontract\fR(3LIB) library. The process contract type directory is
-\fB/system/contract/device\fR.
-.SS "Creation"
-.sp
-.LP
-A device contract may be created in one of two ways:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-A process may create and activate a template and then invoke open on a minor
-node of the device. The act of opening creates a contract based on the terms in
-the activated template.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-A process may create a contract after it has opened a device by creating a
-template, setting appropriate terms (including the path to a minor node) on the
-template and then invoking \fBct_tmpl_create\fR() on the template.
-.RE
-.SS "States, Breaks and Events"
-.sp
-.LP
-A state refers to the state of the device which is the subject of the contract.
-Currently, three states are defined for device contracts:
-.sp
-.ne 2
-.na
-\fB\fBCT_DEV_EV_ONLINE\fR\fR
-.ad
-.RS 22n
-The device is online and functioning normally.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBCT_DEV_EV_DEGRADED\fR\fR
-.ad
-.RS 22n
-The device is online, but functioning in a degraded capacity.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBCT_DEV_EV_OFFLINE\fR\fR
-.ad
-.RS 22n
-The device is offline and is not configured for use.
-.RE
-
-.sp
-.LP
-A process creates a device contract with the kernel to get a guarantee that the
-device is in an acceptable set of states as long as the contract is valid. This
-acceptable set (or "A-set", for short) is specified as one of the terms of the
-contract when the contract is created.
-.sp
-.LP
-When a device moves to a state outside the "A-set", the contract is broken. The
-breaking of the contract may be either asynchronous or synchronous, depending
-on whether the transition that led to the breaking of the contract is
-synchronous or asynchronous.
-.sp
-.LP
-If the breaking of a contract is asynchronous, then a critical event is
-generated and sent to the contract holder. The event is generated even if the
-contract holder has not subscribed to the event via the critical or informative
-event sets.
-.sp
-.LP
-If the breaking of the contract is synchronous, a critical contract event is
-generated with the \fBCTE_NEG\fR flag set to indicate that this is a
-negotiation event. The contract holder is expected to either acknowledge
-(\fBACK\fR) this change and allow the state change to occur or it may
-negatively acknowledge (\fBNACK\fR) the change to block it (if it has
-sufficient privileges).
-.sp
-.LP
-The term "event" refers to the transition of a device from one state to
-another. The event is named by the state to which the device is transitioning.
-For instance, if a device is transitioning to the \fBOFFLINE\fR state, the name
-of the event is \fBCT_DEV_EV_OFFLINE\fR. An event may have no consequence for a
-contract, or it may result in the asynchronous breaking of a contract or it may
-result in a synchronous (that is, negotiated) breaking of a contract. Events
-are delivered to a contract holder in three cases:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The contract holder has subscribed to the event via the critical or informative
-event sets. The event may be either critical or informative in this case
-depending on the subscription.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The device transitions to a state outside the contract's "A-set" and the
-transition is asynchronous. This results in the asynchronous breaking of the
-contract and a critical event is delivered to the holder.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The device transitions to a state outside the contract's "A-set" and the
-transition is synchronous. This results in the synchronous breaking of the
-contract and a critical event with the \fBCTE_NEG\fR flag set is delivered to
-the holder.
-.RE
-.sp
-.LP
-In the last two cases, a critical event is delivered even if the holder has not
-subscribed to the event via the critical or informative event sets.
-.SS "NEGOTIATION"
-.sp
-.LP
-If the breaking of a contract is synchronous, the kernel begins negotiations
-with the contract holder by generating a critical event before the device
-changes state. The event has the \fBCTE_NEG\fR flag set indicating that this is
-a negotiation event. The contract owner is allowed a limited period of time in
-which to either \fBACK\fR the contract event (thus, allowing the state change)
-or if it has appropriate privileges, \fBNACK\fR the state change (thus,
-blocking the state change). \fBACK\fRs may be sent by the holder via
-\fBct_ctl_ack\fR(3CONTRACT) and \fBNACK\fRs may be sent via
-\fBct_ctl_nack\fR(3CONTRACT). If a contract holder does not send either a
-\fBNACK\fR or \fBACK\fR within a specified period of time, an \fBACK\fR is
-assumed and the kernel proceeds with the state change.
-.sp
-.LP
-Once the device state change is finalized, the contract subsystem sends
-negotiation end (\fBNEGEND\fR) critical messages to the contract owner
-indicating the final disposition of the state transition. That is, either
-success or failure.
-.sp
-.LP
-Once a contract is broken, a contract owner may choose to create a replacement
-contract. It may do this after the contract is broken or it may choose to do
-this synchronously with the breaking of the old contract via
-\fBct_ctl_newct\fR(3CONTRACT).
-.SS "TERMS"
-.sp
-.LP
-The following common contract terms, defined in \fBcontract\fR(4), have
-device-contract specific attributes:
-.sp
-.ne 2
-.na
-\fBinformative set\fR
-.ad
-.RS 19n
-The default value for the informative set is \fBCT_DEV_EV_DEGRADE\fR that is,
-transitions to the \fBDEGRADED\fR state will by default result in informative
-events. Use \fBct_tmpl_set_informative\fR(3CONTRACT) to set this term.
-.RE
-
-.sp
-.ne 2
-.na
-\fBcritical set\fR
-.ad
-.RS 19n
-The default value for the informative set is \fBCT_DEV_EV_OFFLINE\fR. That is,
-transitions to the \fBOFFLINE\fR state will by default result in critical
-events. Use \fBct_tmpl_set_critical\fR(3CONTRACT) to set this term.
-.RE
-
-.sp
-.LP
-The following contract terms can be read from or written to a device contract
-template using the named \fBlibcontract\fR(3LIB) interfaces. These contract
-terms are in addition to those described in \fBcontract\fR(4).
-.sp
-.ne 2
-.na
-\fB\fBCTDP_ACCEPT\fR\fR
-.ad
-.RS 15n
-Acceptable set or "A-set".
-.sp
-This term is required for every device contract. It defines the set of device
-states which the contract owner expects to exist as long as the contract is
-valid. If a device transitions to a state outside this "A-set", then the
-contract breaks and is no longer valid. A critical contract event is sent to
-the contract owner to signal this break.
-.sp
-Use \fBct_dev_tmpl_set_aset\fR() to set this term. The default "A-set" is
-\fBCT_DEV_EV_ONLINE\fR | \fBCT_DEV_EV_DEGRADE\fR. This term is mandatory. Use
-\fBct_dev_tmpl_get_aset\fR() to query a template for this term.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBCTDP_MINOR\fR\fR
-.ad
-.RS 15n
-Specifies the \fBdevfs\fR path to a minor node that is the subject of the
-contract. Used to specify the minor node to be used for creating a contract
-when contract creation takes place other than at open time.
-.sp
-If the contract is created synchronously at \fBopen\fR(2) time, then this term
-is implied to be the minor node being opened. In this case, this term need not
-be explicitly be set.
-.sp
-Use \fBct_dev_tmpl_set_minor\fR() to set this term. The default setting for
-this term is \fBNULL\fR. That is, no minor node is specified.
-.sp
-Use \fBct_dev_tmpl_get_noneg\fR() to query a template for the setting of this
-term.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBCTDP_NONEG\fR\fR
-.ad
-.RS 15n
-If set, this term indicates that any negotiable departure from the contract
-terms should be \fBNACK\fRed. That is, the contract subsystem should assume a
-\fBNACK\fR for any negotiated breaking of the contract. This term is ignored
-for asynchronous contract breaks.
-.sp
-Use \fBct_dev_tmpl_set_noneg\fR() to set this term. The default setting is off.
-.sp
-Use \fBct_dev_tmpl_get_noneg\fR() to query a template for the setting of this
-term.
-.RE
-
-.SS "STATUS"
-.sp
-.LP
-In addition to the standard items, the status object read from a status file
-descriptor contains the following items if \fBCTD_FIXED\fR is specified:
-.sp
-.ne 2
-.na
-\fB\fBCTDS_STATE\fR\fR
-.ad
-.RS 14n
-Returns the current state of the device. One of the following states is
-returned:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBCT_DEV_EV_ONLINE\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBCT_DEV_EV_DEGRADED\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBCT_DEV_EV_OFFLINE\fR
-.sp
-Use \fBct_dev_status_get_dev_state\fR() to obtain this information.
-.RE
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBCTDS_ASET\fR\fR
-.ad
-.RS 14n
-Returns the acceptable states ("A-set") of the device contract. The return
-value is a bitset of device states and may include one or more of the
-following:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBCT_DEV_EV_ONLINE\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBCT_DEV_EV_DEGRADED\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBCT_DEV_EV_OFFLINE\fR
-.sp
-Use \fBct_dev_status_get_aset\fR() to obtain this information.
-.RE
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBCTDS_NONEG\fR\fR
-.ad
-.RS 14n
-Returns the current setting of the \fBnoneg\fR flag. Returns 1 if the
-\fBnoneg\fR flag is set, or 0 if the flag is not set. Use
-\fBct_dev_status_get_noneg\fR() to obtain this information.
-.RE
-
-.sp
-.LP
-If \fBCTD_ALL\fR is specified, the following items are also available:
-.sp
-.ne 2
-.na
-\fB\fBCTDS_MINOR\fR\fR
-.ad
-.RS 14n
-The \fBdevfs\fR path of the device which is the subject of the device contract.
-Use \fBct_dev_status_get_minor\fR() to obtain this information.
-.RE
-
-.SS "EVENTS"
-.sp
-.LP
-No new event related interfaces (beyond the standard contract event interfaces)
-are defined for device contract events.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/usr/include/sys/contract/device.h\fR\fR
-.ad
-.sp .6
-.RS 4n
-Contains definitions of events, status fields and event fields
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBctrun\fR(1), \fBctstat\fR(1), \fBctwatch\fR(1), \fBopen\fR(2),
-\fBct_tmpl_set_critical\fR(3CONTRACT),
-\fBct_tmpl_set_informative\fR(3CONTRACT),
-\fBct_dev_tmpl_set_aset\fR(3CONTRACT), \fBct_dev_tmpl_get_aset\fR(3CONTRACT),
-\fBct_dev_tmpl_set_minor\fR(3CONTRACT), \fBct_dev_tmpl_get_minor\fR(3CONTRACT),
-\fBct_dev_tmpl_set_noneg\fR(3CONTRACT), \fBct_dev_tmpl_get_noneg\fR(3CONTRACT),
-\fBct_dev_status_get_dev_state\fR(3CONTRACT),
-\fBct_dev_status_get_aset\fR(3CONTRACT),
-\fBct_dev_status_get_minor\fR(3CONTRACT), \fBlibcontract\fR(3LIB),
-\fBcontract\fR(4), \fBprivileges\fR(5)
diff --git a/usr/src/man/man4/device_maps.4 b/usr/src/man/man4/device_maps.4
deleted file mode 100644
index 5460ca44a0..0000000000
--- a/usr/src/man/man4/device_maps.4
+++ /dev/null
@@ -1,140 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH DEVICE_MAPS 4 "Mar 6, 2017"
-.SH NAME
-device_maps \- device_maps file
-.SH SYNOPSIS
-.LP
-.nf
-\fB/etc/security/device_maps\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBdevice_maps\fR file contains access control information about each
-physical device. Each device is represented by a one line entry of the form:
-.sp
-.in +2
-.nf
-\fIdevice-name\fR \fB:\fR \fIdevice-type\fR \fB:\fR \fIdevice-list\fR \fB:\fR
-.fi
-.in -2
-
-.sp
-.LP
-where
-.sp
-.ne 2
-.na
-\fB\fIdevice-name\fR\fR
-.ad
-.sp .6
-.RS 4n
-This is an arbitrary \fBASCII\fR string naming the physical device. This field
-contains no embedded white space or non-printable characters.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIdevice-type\fR\fR
-.ad
-.sp .6
-.RS 4n
-This is an arbitrary \fBASCII\fR string naming the generic device type. This
-field identifies and groups together devices of like type. This field contains
-no embedded white space or non-printable characters.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIdevice-list\fR\fR
-.ad
-.sp .6
-.RS 4n
-This is a list of the device special files associated with the physical device.
-This field contains valid device special file path names separated by white
-space.
-.RE
-
-.sp
-.LP
-The \fBdevice_maps\fR file is an \fBASCII\fR file that resides in the
-\fB/etc/security\fR directory.
-.sp
-.LP
-Lines in \fBdevice_maps\fR can end with a `\fB\e\fR\&' to continue an entry on
-the next line.
-.sp
-.LP
-Comments may also be included. A `\fB#\fR' makes a comment of all further text
-until the next \fBNEWLINE\fR not immediately preceded by a `\fB\e\fR\&'.
-.sp
-.LP
-Leading and trailing blanks are allowed in any of the fields.
-.sp
-.LP
-The \fBdevice_maps\fR file must be created by the system administrator bef\eore
-device allocation is enabled.
-.sp
-.LP
-This file is owned by root, with a group of \fBsys\fR, and a mode of 0644.
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRA Sample \fBdevice_maps\fR File
-.sp
-.LP
-The following is a sample \fBdevice_maps\fR file:
-
-.sp
-.in +2
-.nf
-# scsi tape
-st1:\e
-rmt:\e
-/dev/rst21 /dev/nrst21 /dev/rst5 /dev/nrst5 /dev/rst13 \e
-/dev/nrst13 /dev/rst29 /dev/nrst29 /dev/rmt/1l /dev/rmt/1m \e
-/dev/rmt/1 /dev/rmt/1h /dev/rmt/1u /dev/rmt/1ln /dev/rmt/1mn \e
-/dev/rmt/1n /dev/rmt/1hn /dev/rmt/1un /dev/rmt/1b /dev/rmt/1bn:\e
-.fi
-.in -2
-.sp
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/etc/security/device_maps\fR\fR
-.ad
-.RS 29n
-Contains access control information for devices.
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Uncommitted
-.TE
-
-.SH SEE ALSO
-.LP
-\fBallocate\fR(1), \fBdeallocate\fR(1),
-\fBlist_devices\fR(1), \fBdminfo\fR(1M), \fBdevice_allocate\fR(4),
-\fBattributes\fR(5)
-.SH NOTES
-.LP
-On systems configured with Trusted Extensions, the functionality is enabled by
-default. On such systems, the \fBdevice_allocate\fR(4) file is updated
-automatically by the system.
diff --git a/usr/src/man/man4/devices.4 b/usr/src/man/man4/devices.4
deleted file mode 100644
index ca77d094f1..0000000000
--- a/usr/src/man/man4/devices.4
+++ /dev/null
@@ -1,64 +0,0 @@
-'\" te
-.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH DEVICES 4 "Jun 8, 2006"
-.SH NAME
-devices, devid_cache, snapshot_cache, mdi_scsi_vhci_cache, mdi_ib_cache,
-devname_cache \- device configuration information
-.SH SYNOPSIS
-.LP
-.nf
-\fB/etc/devices\fR
-.fi
-
-.LP
-.nf
-\fB/etc/devices/devid_cache\fR
-.fi
-
-.LP
-.nf
-\fB/etc/devices/snapshot_cache\fR
-.fi
-
-.LP
-.nf
-\fB/etc/devices/mdi_scsi_vhci_cache\fR
-.fi
-
-.LP
-.nf
-\fB/etc/devices/mdi_ib_cache\fR
-.fi
-
-.LP
-.nf
-\fB/etc/devices/devname_cache\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The directory \fB/etc/devices\fR is a repository of device-related data. Files
-in this directory are used to preserve this information across reboots and are
-created and updated as necessary by the system.
-.sp
-.LP
-There are no administrative actions necessary with respect to files in
-\fB/etc/devices\fR. Should the contents of a file become corrupted or an update
-fail, the file can simply be removed. The system re-creates the file as
-necessary.
-.SH SEE ALSO
-.sp
-.LP
-\fBdevfsadm\fR(1M), \fBdev\fR(7FS), \fBddi_devid_compare\fR(9F),
-\fBddi_devid_compare\fR(9F)
-.SH NOTES
-.sp
-.LP
-Files in this directory do not constitute an API. Files might not exist or
-might have a different content or interpretation in a future release. The
-existence of this notice does not imply that any other documentation that lacks
-this notice constitutes an API.
diff --git a/usr/src/man/man4/dfstab.4 b/usr/src/man/man4/dfstab.4
deleted file mode 100644
index 44eb353d4c..0000000000
--- a/usr/src/man/man4/dfstab.4
+++ /dev/null
@@ -1,44 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH DFSTAB 4 "Aug 15, 2008"
-.SH NAME
-dfstab \- file containing commands for sharing resources across a network
-.SH DESCRIPTION
-.sp
-.LP
-\fBdfstab\fR resides in directory \fB/etc/dfs\fR and contains commands for
-sharing resources across a network. \fBdfstab\fR gives a system administrator a
-uniform method of controlling the automatic sharing of local resources.
-.sp
-.LP
-Each line of the \fBdfstab\fR file consists of a \fBshare\fR(1M) command. The
-\fBdfstab\fR file can be read by the shell to share all resources. System
-administrators can also prepare their own shell scripts to execute particular
-lines from \fBdfstab\fR.
-.sp
-.LP
-The contents of \fBdfstab\fR put into effect when the command shown below is
-run. See \fBsvcadm\fR(1M).
-.sp
-.in +2
-.nf
-/usr/sbin/svcadm enable network/nfs/server
-.fi
-.in -2
-
-.SH SEE ALSO
-.sp
-.LP
-\fBshare\fR(1M), \fBshareall\fR(1M), \fBsharemgr\fR(1M), \fBsvcadm\fR(1M)
-.SH NOTES
-.sp
-.LP
-Do not modify this file directly. This file is reconstructed and only
-maintained for backwards compatibility. Configuration lines could be lost.
-.sp
-.LP
-Use the \fBsharemgr\fR(1M) command for all share management.
diff --git a/usr/src/man/man4/dhcp_inittab.4 b/usr/src/man/man4/dhcp_inittab.4
deleted file mode 100644
index bf0c305f62..0000000000
--- a/usr/src/man/man4/dhcp_inittab.4
+++ /dev/null
@@ -1,623 +0,0 @@
-'\" te
-.\" Copyright (C) 2009, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright (c) 2016, Chris Fraire <cfraire@me.com>.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
-.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH DHCP_INITTAB 4 "Oct 31, 2016"
-.SH NAME
-dhcp_inittab \- information repository for DHCP options
-.SH DESCRIPTION
-.LP
-The \fB/etc/dhcp/inittab\fR and the \fB/etc/dhcp/inittab6\fR files contain
-information about the Dynamic Host Configuration Protocol (\fBDHCP\fR) options,
-which are network configuration parameters passed from \fBDHCP\fR servers to
-\fBDHCP\fR clients when a client machine uses \fBDHCP\fR. Since many
-\fBDHCP\fR-related commands must parse and understand these \fBDHCP\fR options,
-this file serves as a central location where information about these options
-may be obtained.
-.sp
-.LP
-The \fBDHCP\fR \fBinittab\fR and \fBinittab6\fR files provide three general
-pieces of information:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-A mnemonic alias, or symbol name, for each option number. For instance, option
-12 is aliased to the name \fBHostname\fR. This is useful for \fBDHCP\fR-related
-programs that require human interaction, such as \fBdhcpinfo\fR(1).
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Information about the syntax for each option. This includes information such as
-the type of the value, for example, whether it is a 16-bit integer or an
-\fBIP\fR address.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The policy for what options are visible to which \fBDHCP\fR-related programs.
-.RE
-.sp
-.LP
-If you make any changes to the \fB/etc/dhcp/inittab\fR file, note that only
-additions of or changes to \fBSITE\fR options are preserved during upgrade. For
-\fB/etc/dhcp/inittab6\fR, no options are preserved during upgrade.
-.sp
-.LP
-The \fBVENDOR\fR options defined here are intended for use by the Solaris
-\fBDHCP\fR client and \fBDHCP\fR management tools. The \fBSUNW\fR vendor space
-is owned by Sun, and changes are likely during upgrade. If you need to
-configure the Solaris \fBDHCP\fR server to support the vendor options of a
-different client, see \fBdhcptab\fR(4) for details.
-.sp
-.LP
-Each \fBDHCP\fR option belongs to a certain category, which roughly defines the
-scope of the option; for instance, an option may only be understood by certain
-hosts within a given site, or it may be globally understood by all \fBDHCP\fR
-clients and servers. The following categories are defined; the category names
-are not case-sensitive:
-.sp
-.ne 2
-.na
-\fB\fBSTANDARD\fR\fR
-.ad
-.RS 12n
-All client and server \fBDHCP\fR implementations agree on the semantics. These
-are administered by the Internet Assigned Numbers Authority (\fBIANA\fR). These
-options are numbered from \fB1\fR to \fB127\fR for IPv4 DHCP, and \fB1\fR to
-\fB65535\fR for DHCPv6.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSITE\fR\fR
-.ad
-.RS 12n
-Within a specific site, all client and server implementations agree on the
-semantics. However, at another site the type and meaning of the option may be
-quite different. These options are numbered from \fB128\fR to \fB254\fR for
-IPv4 DHCP. DHCPv6 does not support site options.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBVENDOR\fR\fR
-.ad
-.RS 12n
-Each vendor may define \fB254\fR options (65536 for DHCPv6) unique to that
-vendor. The vendor is identified within a \fBDHCP\fR packet by the "Vendor
-Class" option, number \fB60\fR (number \fB17\fR for DHCPv6). An option with a
-specific numeric identifier belonging to one vendor will, in general, have a
-type and semantics different from that of a different vendor. Vendor options
-are "super-encapsulated" into the vendor field number \fB43\fR, as defined in
-\fIRFC 2132\fR for IPv4 DHCP, and number \fB17\fR as defined in RFC 3315 for
-DHCPv6. The \fB/etc/dhcp/inittab\fR file contains only Sun vendor options.
-Define non-Sun vendor options in the \fBdhcptab\fR file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBFIELD\fR\fR
-.ad
-.RS 12n
-This category allows the fixed fields within a \fBDHCP\fR packet to be aliased
-to a mnemonic name for use with \fBdhcpinfo\fR(1).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBINTERNAL\fR\fR
-.ad
-.RS 12n
-This category is internal to the Solaris \fBDHCP\fR implementation and will not
-be further defined.
-.RE
-
-.SS "DHCP \fBinittab\fR and \fBinittab6\fR Format"
-.LP
-Data entries are written one per line and have seven fields; each entry
-provides information for one option. Each field is separated by a comma, except
-for the first and second, which are separated by whitespace (as defined in
-\fBisspace\fR(3C)). An entry cannot be continued onto another line. Blank lines
-and those whose first non-whitespace character is '#' are ignored.
-.sp
-.LP
-The fields, in order, are:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Mnemonic Identifier
-.sp
-The Mnemonic Identifier is a user-friendly alias for the option number; it is
-not case sensitive. This field must be per-category unique and should be unique
-across all categories. The option names in the \fBSTANDARD\fR, \fBSITE\fR, and
-\fBVENDOR\fR spaces should not overlap, or the behavior will be undefined. See
-\fBMnemonic Identifiers for Options\fR section of this man page for
-descriptions of the option names.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Category (scope)
-.sp
-The Category field is one of \fBSTANDARD\fR, \fBSITE\fR, \fBVENDOR\fR,
-\fBFIELD\fR, or \fBINTERNAL\fR and identifies the scope in which the option
-falls. \fBSITE\fR is not used in \fBinittab6\fR.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Option Number
-.sp
-The Option Number is the number of this option when it is in a \fBDHCP\fR
-packet. This field should be per-category unique and the \fBSTANDARD\fR and
-\fBSITE\fR fields should not have overlapping code fields or the behavior is
-undefined.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Data Type
-.sp
-Data Type is one of the following values, which are not case sensitive:
-.RS
-
-.sp
-.ne 2
-.na
-\fB\fBAscii\fR\fR
-.ad
-.RS 13n
-A printable character string
-.RE
-
-.sp
-.ne 2
-.na
-\fBBool\fR
-.ad
-.RS 13n
-Has no value. Scope limited to category limited to \fBINTERNAL\fR. Presence of
-an option of this type within a Solaris configuration file represents
-\fBTRUE\fR, absence represents \fBFALSE\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBOctet\fR\fR
-.ad
-.RS 13n
-An array of bytes
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBUnumber8\fR\fR
-.ad
-.RS 13n
-An 8-bit unsigned integer
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSnumber8\fR\fR
-.ad
-.RS 13n
-An 8-bit signed integer
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBUnumber16\fR\fR
-.ad
-.RS 13n
-A 16-bit unsigned integer
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSnumber16\fR\fR
-.ad
-.RS 13n
-A 16-bit signed integer
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBUnumber24\fR\fR
-.ad
-.RS 13n
-A 24-bit unsigned integer
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBUnumber32\fR\fR
-.ad
-.RS 13n
-A 32-bit unsigned integer
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSnumber32\fR\fR
-.ad
-.RS 13n
-A 32-bit signed integer
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBUnumber64\fR\fR
-.ad
-.RS 13n
-A 64-bit unsigned integer
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSnumber64\fR\fR
-.ad
-.RS 13n
-A 64-bit signed integer
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBIp\fR\fR
-.ad
-.RS 13n
-An \fBIPv4\fR address
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBIpv6\fR\fR
-.ad
-.RS 13n
-An \fBIPv6\fR address
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBDuid\fR\fR
-.ad
-.RS 13n
-An RFC 3315 Unique Identifier
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBDomain\fR\fR
-.ad
-.RS 13n
-An RFC 1035-encoded domain name
-.RE
-
-.RE
-
-The data type field describes an indivisible unit of the option payload, using
-one of the values listed above.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Granularity
-.sp
-The Granularity field describes how many indivisible units in the option
-payload make up a whole value or item for this option. The value must be
-greater than zero (\fB0\fR) for any data type other than Bool, in which case it
-must be zero (\fB0\fR).
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Maximum Number Of Items
-.sp
-This value specifies the maximum items of Granularity which are permissible
-in a definition using this symbol. For example, there can only be one IP
-address specified for a subnet mask, so the Maximum number of items
-in this case is one (\fB1\fR). A Maximum value of zero (\fB0\fR) means
-that a variable number of items is permitted.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Visibility
-.sp
-The Visibility field specifies which \fBDHCP\fR-related programs make use of
-this information, and should always be defined as \fBsdmi\fR for newly added
-options.
-.RE
-.SS "Mnemonic Identifiers for IPv4 Options"
-.LP
-The following table maps the mnemonic identifiers used in Solaris DHCP to
-\fIRFC 2132\fR options:
-.sp
-
-.sp
-.TS
-c c c
-l l l .
-\fISymbol\fR \fICode\fR \fIDescription\fR
-_
-\fBSubnet\fR \fB1\fR T{
-Subnet Mask, dotted Internet address (IP).
-T}
-\fBUTCoffst\fR \fB2\fR T{
-Coordinated Universal time offset (seconds) [deprecated].
-T}
-\fBRouter\fR \fB3\fR List of Routers, IP.
-\fBTimeserv\fR \fB4\fR List of RFC-868 servers, IP.
-\fBIEN116ns\fR \fB5\fR List of IEN 116 name servers, IP.
-\fBDNSserv\fR \fB6\fR List of DNS name servers, IP.
-\fBLogserv\fR \fB7\fR List of MIT-LCS UDP log servers, IP.
-\fBCookie\fR \fB8\fR List of RFC-865 cookie servers, IP.
-\fBLprserv\fR \fB9\fR T{
-List of RFC-1179 line printer servers, IP.
-T}
-\fBImpress\fR \fB10\fR List of Imagen Impress servers, IP.
-\fBResource\fR \fB11\fR T{
-List of RFC-887 resource location servers, IP.
-T}
-\fBHostname\fR \fB12\fR T{
-Client's hostname, value from hosts database.
-T}
-\fBBootsize\fR \fB13\fR T{
-Number of 512 octet blocks in boot image, NUMBER.
-T}
-\fBDumpfile\fR \fB14\fR T{
-Path where core image should be dumped, ASCII.
-T}
-\fBDNSdmain\fR \fB15\fR DNS domain name, ASCII.
-\fBSwapserv\fR \fB16\fR Client's swap server, IP.
-\fBRootpath\fR \fB17\fR Client's Root path, ASCII.
-\fBExtendP\fR \fB18\fR Extensions path, ASCII.
-\fBIpFwdF\fR \fB19\fR IP Forwarding Enable/Disable, NUMBER.
-\fBNLrouteF\fR \fB20\fR Non-local Source Routing, NUMBER.
-\fBPFilter\fR \fB21\fR Policy Filter, IP.
-\fBMaxIpSiz\fR \fB22\fR T{
-Maximum datagram Reassembly Size, NUMBER.
-T}
-\fBIpTTL\fR \fB23\fR T{
-Default IP Time to Live, (1=<x<=255), NUMBER.
-T}
-\fBPathTO\fR \fB24\fR RFC-1191 Path MTU Aging Timeout, NUMBER.
-\fBPathTbl\fR \fB25\fR RFC-1191 Path MTU Plateau Table, NUMBER.
-\fBMTU\fR \fB26\fR Interface MTU, x>=68, NUMBER.
-\fBSameMtuF\fR \fB27\fR All Subnets are Local, NUMBER.
-\fBBroadcst\fR \fB28\fR Broadcast Address, IP.
-\fBMaskDscF\fR \fB29\fR Perform Mask Discovery, NUMBER.
-\fBMaskSupF\fR \fB30\fR Mask Supplier, NUMBER.
-\fBRDiscvyF\fR \fB31\fR Perform Router Discovery, NUMBER.
-\fBRSolictS\fR \fB32\fR Router Solicitation Address, IP.
-\fBStaticRt\fR \fB33\fR T{
-Static Route, Double IP (network router).
-T}
-\fBTrailerF\fR \fB34\fR Trailer Encapsulation, NUMBER.
-\fBArpTimeO\fR \fB35\fR ARP Cache Time out, NUMBER.
-\fBEthEncap\fR \fB36\fR Ethernet Encapsulation, NUMBER.
-\fBTcpTTL\fR \fB37\fR TCP Default Time to Live, NUMBER.
-\fBTcpKaInt\fR \fB38\fR TCP Keepalive Interval, NUMBER.
-\fBTcpKaGbF\fR \fB39\fR TCP Keepalive Garbage, NUMBER.
-\fBNISdmain\fR \fB40\fR NIS Domain name, ASCII.
-\fBNISservs\fR \fB41\fR List of NIS servers, IP.
-\fBNTPservs\fR \fB42\fR List of NTP servers, IP.
-\fBNetBNms\fR \fB44\fR List of NetBIOS Name servers, IP.
-\fBNetBDsts\fR \fB45\fR T{
-List of NetBIOS Distribution servers, IP.
-T}
-\fBNetBNdT\fR \fB46\fR T{
-NetBIOS Node type (1=B-node, 2=P, 4=M, 8=H).
-T}
-\fBNetBScop\fR \fB47\fR NetBIOS scope, ASCII.
-\fBXFontSrv\fR \fB48\fR List of X Window Font servers, IP.
-\fBXDispMgr\fR \fB49\fR List of X Window Display managers, IP.
-\fBLeaseTim\fR \fB51\fR Lease Time Policy, (-1 = PERM), NUMBER.
-\fBMessage\fR \fB56\fR T{
-Message to be displayed on client, ASCII.
-T}
-\fBT1Time\fR \fB58\fR Renewal (T1) time, NUMBER.
-\fBT2Time\fR \fB59\fR Rebinding (T2) time, NUMBER.
-\fBNW_dmain\fR \fB62\fR NetWare/IP Domain Name, ASCII.
-\fBNWIPOpts\fR \fB63\fR T{
-NetWare/IP Options, OCTET (unknown type).
-T}
-\fBNIS+dom\fR \fB64\fR NIS+ Domain name, ASCII.
-\fBNIS+serv\fR \fB65\fR NIS+ servers, IP.
-\fBTFTPsrvN\fR \fB66\fR TFTP server hostname, ASCII.
-\fBOptBootF\fR \fB67\fR Optional Bootfile path, ASCII.
-\fBMblIPAgt\fR \fB68\fR Mobile IP Home Agent, IP.
-\fBSMTPserv\fR \fB69\fR T{
-Simple Mail Transport Protocol Server, IP.
-T}
-\fBPOP3serv\fR \fB70\fR Post Office Protocol (POP3) Server, IP.
-\fBNNTPserv\fR \fB71\fR T{
-Network News Transport Proto. (NNTP) Server, IP.
-T}
-\fBWWWservs\fR \fB72\fR Default WorldWideWeb Server, IP.
-\fBFingersv\fR \fB73\fR Default Finger Server, IP.
-\fBIRCservs\fR \fB74\fR Internet Relay Chat Server, IP.
-\fBSTservs\fR \fB75\fR StreetTalk Server, IP.
-\fBSTDAservs\fR \fB76\fR StreetTalk Directory Assist. Server, IP.
-\fBUserClas\fR \fB77\fR User class information, ASCII.
-\fBSLP_DA\fR \fB78\fR Directory agent, OCTET.
-\fBSLP_SS\fR \fB79\fR Service scope, OCTET.
-\fBClientFQDN\fR \fB81\fR Fully Qualified Domain Name, OCTET.
-\fBAgentOpt\fR \fB82\fR Agent circuit ID, OCTET.
-\fBFQDN\fR \fB89\fR Fully Qualified Domain Name, OCTET.
-\fBPXEarch\fR \fB93\fR Client system architecture, NUMBER.
-\fBBootFile\fR \fBN/A\fR File to Boot, ASCII.
-\fBBootPath\fR \fBN/A\fR T{
-Boot path prefix to apply to client's requested boot file, ASCII.
-T}
-\fBBootSrvA\fR \fBN/A\fR Boot Server, IP.
-\fBBootSrvN\fR \fBN/A\fR Boot Server Hostname, ASCII.
-\fBEchoVC\fR \fBN/A\fR T{
-Echo Vendor Class Identifier Flag, (Present=\fBTRUE\fR)
-T}
-\fBLeaseNeg\fR \fBN/A\fR Lease is Negotiable Flag, (Present=\fBTRUE\fR)
-.TE
-
-.SS "Mnemonic Identifiers for IPv6 Options"
-.LP
-The following table maps the mnemonic identifiers used in Solaris DHCP to RFC
-3315, 3319, 3646, 3898, 4075, and 4280 options:
-.sp
-
-.sp
-.TS
-c c c
-l l l .
-\fISymbol\fR \fICode\fR \fIDescription\fR
-_
-\fBClientID\fR \fB1\fR Unique identifier for client, DUID
-\fBServerID\fR \fB2\fR Unique identifier for server, DUID
-\fBPreference\fR \fB7\fR Server preference, NUMBER
-\fBUnicast\fR \fB12\fR Unicast server address, IPV6
-\fBUserClass\fR \fB15\fR User classes for client, OCTET
-\fBVendorClass\fR \fB16\fR Vendor client hardware items, OCTET
-\fBSIPNames\fR \fB21\fR SIP proxy server name list, DOMAIN
-\fBSIPAddresses\fR \fB22\fR T{
-SIP proxy server addresses in preference order, IPV6
-T}
-\fBDNSAddresses\fR \fB23\fR T{
-DNS server addresses in preference order, IPV6
-T}
-\fBDNSSearch\fR \fB24\fR DNS search list, DOMAIN
-\fBNISServers\fR \fB27\fR T{
-NIS server addresses in preference order, IPV6
-T}
-\fBNIS+Servers\fR \fB28\fR T{
-NIS+ server addresses in preference order, IPV6
-T}
-\fBNISDomain\fR \fB29\fR NIS domain name, DOMAIN
-\fBNIS+Domain\fR \fB30\fR NIS+ domain name, DOMAIN
-\fBSNTPServers\fR \fB31\fR IPV6
-\fBInfoRefresh\fR \fB32\fR UNUMBER32
-\fBBCMCDomain\fR \fB33\fR T{
-Broadcast/multicast control server name list, DOMAIN
-T}
-\fBBCMCAddresses\fR \fB34\fR T{
-Broadcast/multicast control server addresses, IPV6
-T}
-.TE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRAltering the DHCP \fBinittab\fR File
-.sp
-.LP
-In general, the \fBDHCP\fR \fBinittab\fR file should only be altered to add
-\fBSITE\fR options. If other options are added, they will not be automatically
-carried forward when the system is upgraded. For instance:
-
-.sp
-.in +2
-.nf
-ipPairs SITE, 132, IP, 2, 0, sdmi
-.fi
-.in -2
-
-.sp
-.LP
-describes an option named \fBipPairs\fR, that is in the \fBSITE\fR category.
-That is, it is defined by each individual site, and is option code 132, which
-is of type \fBIP\fR Address, consisting of a potentially infinite number of
-pairs of \fBIP\fR addresses.
-
-.SH FILES
-.in +2
-\fB/etc/dhcp/inittab\fR
-.in -2
-.br
-.in +2
-\fB/etc/dhcp/inittabv6\fR
-.in -2
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Committed
-.TE
-
-.SH SEE ALSO
-.LP
-\fBdhcpinfo\fR(1), \fBdhcpagent\fR(1M), \fBisspace\fR(3C), \fBdhcptab\fR(4),
-\fBattributes\fR(5), \fBdhcp\fR(5), \fBdhcp_modules\fR(5)
-.sp
-.LP
-\fISystem Administration Guide: IP Services\fR
-.sp
-.LP
-Alexander, S., and R. Droms. \fIRFC 2132, DHCP Options and BOOTP Vendor
-Extensions\fR. Network Working Group. March 1997.
-.sp
-.LP
-Droms, R. \fI RFC 2131, Dynamic Host Configuration Protocol\fR. Network Working
-Group. March 1997.
-.sp
-.LP
-Droms, R. \fIRFC 3315, Dynamic Host Configuration Protocol for IPv6
-(DHCPv6)\fR. Cisco Systems. July 2003.
-.sp
-.LP
-Schulzrinne, H., and B. Volz. \fIRFC 3319, Dynamic Host Configuration Protocol
-(DHCPv6) Options for Session Initiation Protocol (SIP) Servers\fR. Columbia
-University and Ericsson. July 2003.
-.sp
-.LP
-Droms, R. \fIRFC 3646, DNS Configuration options for Dynamic Host Configuration
-Protocol for IPv6 (DHCPv6)\fR. Cisco Systems. December 2003.
-.sp
-.LP
-Kalusivalingam, V. \fIRFC 3898, Network Information Service (NIS) Configuration
-Options for Dynamic Host Configuration Protocol for IPv6 (DHCPv6)\fR. Cisco
-Systems. October 2004.
-.sp
-.LP
-Chowdhury, K., P. Yegani, and L. Madour. \fIRFC 4280, Dynamic Host
-Configuration Protocol (DHCP) Options for Broadcast and Multicast Control
-Servers\fR. Starent Networks, Cisco Systems, and Ericsson. November 2005.
-.sp
-.LP
-Mockapetris, P.V. \fIRFC 1035, Domain names - implementation and
-specification\fR. ISI. November 1987.
diff --git a/usr/src/man/man4/dialups.4 b/usr/src/man/man4/dialups.4
deleted file mode 100644
index 1ba309c61e..0000000000
--- a/usr/src/man/man4/dialups.4
+++ /dev/null
@@ -1,92 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH DIALUPS 4 "May 4, 1994"
-.SH NAME
-dialups \- list of terminal devices requiring a dial-up password
-.SH SYNOPSIS
-.LP
-.nf
-\fB/etc/dialups\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBdialups\fR is an \fBASCII\fR file which contains a list of terminal devices
-that require a dial-up password. A dial-up password is an additional password
-required of users who access the computer through a modem or dial-up port. The
-correct password must be entered before the user is granted access to the
-computer. The set of ports that require a dial-up password are listed in the
-\fBdialups\fR file.
-.sp
-.LP
-Each entry in the \fBdialups\fR file is a single line of the form:
-.sp
-.in +2
-.nf
-\fIterminal-device\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-where
-.sp
-.ne 2
-.na
-\fB\fIterminal-device\fR\fR
-.ad
-.RS 19n
-The full path name of the terminal device that will require a dial-up password
-for users accessing the computer through a modem or dial-up port.
-.RE
-
-.sp
-.LP
-The \fBdialups\fR file should be owned by the \fBroot\fR user and the
-\fBroot\fR group. The file should have read and write permissions for the
-owner (\fBroot\fR) only.
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRA sample \fBdialups\fR file.
-.sp
-.LP
-Here is a sample \fBdialups\fR file:
-
-.sp
-.in +2
-.nf
-/dev/term/a
-/dev/term/b
-/dev/term/c
-.fi
-.in -2
-.sp
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/d_passwd\fR\fR
-.ad
-.RS 17n
-dial-up password file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/dialups\fR\fR
-.ad
-.RS 17n
-list of dial-up ports requiring dial-up passwords
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBd_passwd\fR(4)
diff --git a/usr/src/man/man4/dir_ufs.4 b/usr/src/man/man4/dir_ufs.4
deleted file mode 100644
index f0c3e97f88..0000000000
--- a/usr/src/man/man4/dir_ufs.4
+++ /dev/null
@@ -1,74 +0,0 @@
-'\" te
-.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH DIR_UFS 4 "Apr 16, 2003"
-.SH NAME
-dir_ufs, dir \- format of ufs directories
-.SH SYNOPSIS
-.LP
-.nf
-\fB#include <sys/param.h>\fR
-.fi
-
-.LP
-.nf
-\fB#include <sys/types.h>\fR
-.fi
-
-.LP
-.nf
-\fB#include <sys/fs/ufs_fsdir.h>\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-A directory consists of some number of blocks of \fBDIRBLKSIZ\fR bytes, where
-\fBDIRBLKSIZ\fR is chosen such that it can be transferred to disk in a single
-atomic operation, for example, 512 bytes on most machines.
-.sp
-.LP
-Each \fBDIRBLKSIZ\fR-byte block contains some number of directory entry
-structures, which are of variable length. Each directory entry has a
-\fBstruct direct\fR at the front of it, containing its inode number, the length
-of the entry, and the length of the name contained in the entry. These entries
-are followed by the name padded to a 4 byte boundary with null bytes. All
-names are guaranteed null-terminated. The maximum length of a name in a
-directory is \fBMAXNAMLEN\fR.
-.sp
-.in +2
-.nf
-#define DIRBLKSIZ DEV_BSIZE
-#define MAXNAMLEN 256
-struct direct {
- ulong_t d_ino; /* inode number of entry */
- ushort_t d_reclen; /* length of this record */
- ushort_t d_namlen; /* length of string in d_name */
- char d_name[MAXNAMLEN + 1]; /* maximum name length */
-};
-.fi
-.in -2
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for a description of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Unstable
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBattributes\fR(5), \fBufs\fR(7FS)
diff --git a/usr/src/man/man4/driver.conf.4 b/usr/src/man/man4/driver.conf.4
deleted file mode 100644
index 92cb57d2ef..0000000000
--- a/usr/src/man/man4/driver.conf.4
+++ /dev/null
@@ -1,221 +0,0 @@
-'\" te
-.\" Copyright (c) 2005, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH DRIVER.CONF 4 "Sep 16, 2018"
-.SH NAME
-driver.conf \- driver configuration files
-.SH SYNOPSIS
-.LP
-.nf
-\fBdriver.conf\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-Driver configuration files provide values for device properties. The values
-override values provided by the devices themselves. Most modern devices provide
-enough property values to make a driver configuration file unnecessary.
-.sp
-.LP
-The system associates a driver with its configuration file by name. For
-example, a driver in \fB/usr/kernel/drv\fR called \fBwombat\fR has the driver
-configuration file \fBwombat.conf\fR, also stored in \fB/usr/kernel/drv\fR,
-associated with it. On systems that support 64-bit drivers, the driver
-configuration file should be placed in the directory in which the 32-bit driver
-is (or would be) located, even if only a 64-bit version is provided. For
-example, a 64-bit driver stored in \fB/usr/kernel/drv/sparcv9\fR stores its
-driver configuration file in \fB/usr/kernel/drv\fR.
-.sp
-.LP
-The value of the \fBname\fR property is the node name. In a \fBdriver.conf\fR
-file, where the generic node name and \fBcompatible\fR property associated with
-a self-identifying devices are typically not used, the node name must be a
-binding name. The binding name is the name chosen by the system to bind a
-driver to the device. The binding name is either an alias associated with the
-driver established by \fBadd_drv\fR(1M) or the driver name itself.
-.sp
-.LP
-The syntax of a single entry in a driver configuration file takes one of three
-forms:
-.sp
-.in +2
-.nf
-\fBname\fR="\fInode name\fR" \fBparent\fR="\fIparent name\fR" [\fIproperty-name=value\fR ...]\fB;\fR
-.fi
-.in -2
-
-.sp
-.LP
-In this form, the parent name can be either the binding name of the parent
-nexus driver or a specific full pathname, beginning with a slash (\fB/\fR)
-character, identifying a specific instance of a parent bus. If a binding name
-is used then all parent nodes bound to that driver match. A generic name (for
-example, \fBpci\fR) is not a valid binding name even though it can appear in
-the full pathname of all intended parents.
-.sp
-.LP
-Alternatively, the parent can be specified by the type of interface it presents
-to its children.
-.sp
-.in +2
-.nf
-\fBname\fR="\fInode name\fR" \fBclass\fR="\fIclass name\fR" [\fIproperty-name=value\fR ...]\fB;\fR
-.fi
-.in -2
-
-.sp
-.LP
-For example, the driver for the \fBSCSI\fR host adapter can have different
-names on different platforms, but the target drivers can use class \fBscsi\fR
-to insulate themselves from these differences.
-.sp
-.LP
-Entries of either form above correspond to a device information (\fBdevinfo\fR)
-node in the kernel device tree. Each node has a \fIname\fR which is usually the
-name of the driver, and a \fIparent\fR name which is the name of the parent
-\fBdevinfo\fR node to which it will be connected. Any number of name-value
-pairs can be specified to create properties on the prototype \fBdevinfo\fR
-node. These properties can be retrieved using the DDI property interfaces (for
-example, \fBddi_prop_get_int\fR(9F) and \fBddi_prop_lookup\fR(9F)). The
-prototype \fBdevinfo\fR node specification must be terminated with a semicolon
-(\fB;\fR).
-.sp
-.LP
-The third form of an entry is simply a list of properties.
-.sp
-.in +2
-.nf
-[\fIproperty-name=value\fR ...]\fB;\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-A property created in this way is treated as global to the driver. It can be
-overridden by a property with the same name on a particular \fBdevinfo\fR node,
-either by creating one explicitly on the prototype node in the driver.conf file
-or by the driver.
-.sp
-.LP
-Items are separated by any number of newlines, \fBSPACE\fR or \fBTAB\fR
-characters.
-.sp
-.LP
-The configuration file can contain several entries to specify different device
-configurations and parent nodes. The system can call the driver for each
-possible prototype \fBdevinfo\fR node, and it is generally the responsibility
-of the drivers \fBprobe\fR(9E) routine to determine if the hardware described
-by the prototype \fBdevinfo\fR node is really present.
-.sp
-.LP
-Property names must not violate the naming conventions for Open Boot PROM
-properties or for IEEE 1275 names. In particular, property names should contain
-only printable characters, and should not contain at-sign (\fB@\fR), slash
-(\fB/\fR), backslash (\fB\e\fR), colon (\fB:\fR), or square brackets
-(\fB[]\fR). Property values can be decimal integers or strings delimited by
-double quotes (\fB"\fR). Hexadecimal integers can be constructed by prefixing
-the digits with \fB0x\fR.
-.sp
-.LP
-A comma separated list of integers can be used to construct properties whose
-value is an integer array. The value of such properties can be retrieved inside
-the driver using \fBddi_prop_lookup_int_array\fR(9F).
-.sp
-.LP
-Comments are specified by placing a \fB#\fR character at the beginning of the
-comment string, the comment string extends for the rest of the line.
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRConfiguration File for a PCI Bus Frame Buffer
-.sp
-.LP
-The following is an example of a configuration file called
-\fBACME,simple.conf\fR for a \fBPCI\fR bus frame buffer called
-\fBACME,simple\fR.
-
-.sp
-.in +2
-.nf
-#
-# Copyright (c) 1993, by ACME Fictitious Devices, Inc.
-#
-#ident "@(#)ACME,simple.conf 1.3 1999/09/09"
-
-name="ACME,simple" class="pci" unit-address="3,1"
- debug-mode=12;
-.fi
-.in -2
-
-.sp
-.LP
-This example creates a prototype \fBdevinfo\fR node called \fBACME,simple\fR
-under all parent nodes of class \fBpci\fR. The node has device and function
-numbers of 3 and 1, respectively; the property \fBdebug-mode\fR is provided for
-all instances of the driver.
-
-.LP
-\fBExample 2 \fRConfiguration File for a Pseudo Device Driver
-.sp
-.LP
-The following is an example of a configuration file called
-\fBACME,example.conf\fR for a pseudo device driver called \fBACME,example\fR.
-
-.sp
-.in +2
-.nf
-#
-# Copyright (c) 1993, ACME Fictitious Devices, Inc.
-#
-#ident "@(#)ACME,example.conf 1.2 93/09/09"
-name="ACME,example" parent="pseudo" instance=0
- debug-level=1;
-
-name="ACME,example" parent="pseudo" instance=1;
-
-whizzy-mode="on";
-debug-level=3;
-.fi
-.in -2
-
-.sp
-.LP
-This creates two \fBdevinfo\fR nodes called \fBACME,example\fR which attaches
-below the \fBpseudo\fR node in the kernel device tree. The \fBinstance\fR
-property is only interpreted by the \fBpseudo\fR node, see \fBpseudo\fR(4) for
-further details. A property called \fBdebug-level\fR is created on the first
-\fBdevinfo\fR node which has the value 1. The \fBexample\fR driver is able to
-fetch the value of this property using \fBddi_prop_get_int\fR(9F).
-
-.sp
-.LP
-Two global driver properties are created, \fBwhizzy-mode\fR (which has the
-string value "on") and \fBdebug-level\fR (which has the value 3). If the driver
-looks up the property \fBwhizzy-mode\fR on either node, it retrieves the value
-of the global \fBwhizzy-mode\fR property ("on"). If the driver looks up the
-\fBdebug-level\fR property on the first node, it retrieves the value of the
-\fBdebug-level\fR property on that node (1). Looking up the same property on
-the second node retrieves the value of the global \fBdebug-level\fR property
-(3).
-
-.SH SEE ALSO
-.LP
-\fBadd_drv\fR(1M), \fBpci\fR(4), \fBpseudo\fR(4), \fBsbus\fR(4), \fBscsi\fR(4),
-\fBprobe\fR(9E), \fBddi_getlongprop\fR(9F), \fBddi_getprop\fR(9F),
-\fBddi_getproplen\fR(9F), \fBddi_prop_get_int\fR(9F),
-\fBddi_prop_lookup\fR(9F), \fBddi_prop_op\fR(9F)
-.sp
-.LP
-\fIWriting Device Drivers\fR
-.SH WARNINGS
-.LP
-To avoid namespace collisions between multiple driver vendors, it is strongly
-recommended that the \fIname\fR property of the driver should begin with a
-vendor-unique string. A reasonably compact and unique choice is the vendor
-over-the-counter stock symbol.
-.SH NOTES
-.LP
-The \fBupdate_drv\fR(1M) command should be used to prompt the kernel to reread
-\fBdriver.conf\fR files.
diff --git a/usr/src/man/man4/ethers.4 b/usr/src/man/man4/ethers.4
deleted file mode 100644
index 93c67d9dd6..0000000000
--- a/usr/src/man/man4/ethers.4
+++ /dev/null
@@ -1,47 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 1988 Sun Microsystems, Inc. - All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH ETHERS 4 "Feb 25, 2017"
-.SH NAME
-ethers \- Ethernet address to hostname database or domain
-.SH DESCRIPTION
-.LP
-The \fBethers\fR file is a local source of information about the (48-bit)
-Ethernet addresses of hosts on the Internet. The \fBethers\fR file can be used
-in conjunction with or instead of other \fBethers\fR sources, including the
-\fBNIS\fR maps \fBethers.byname\fR and \fBethers.byaddr\fR,
-or Ethernet address data stored on an LDAP server. Programs
-use the \fBethers\fR(3SOCKET) routines to access this information.
-.sp
-.LP
-The \fBethers\fR file has one line for each host on an Ethernet. The line has
-the following format:
-.sp
-.LP
-\fIEthernet-address\fR \fIofficial-host-name\fR
-.sp
-.LP
-Items are separated by any number of \fBSPACE\fR and/or \fBTAB\fR characters. A
-`\fB#\fR' indicates the beginning of a comment extending to the end of line.
-.sp
-.LP
-The standard form for Ethernet addresses is
-"\fIx\fR\fB:\fR\fIx\fR\fB:\fR\fIx\fR\fB:\fR\fIx\fR\fB:\fR\fIx\fR\fB:\fR\fIx\fR"
-where \fIx\fR is a hexadecimal number between 0 and ff, representing one byte.
-The address bytes are always in network order. Host names may contain any
-printable character other than \fBSPACE\fR, \fBTAB\fR, \fBNEWLINE\fR, or
-comment character.
-.SH FILES
-.ne 2
-.na
-\fB\fB/etc/ethers\fR\fR
-.ad
-.RS 15n
-
-.RE
-
-.SH SEE ALSO
-.LP
-\fBethers\fR(3SOCKET), \fBhosts\fR(4), \fBnsswitch.conf\fR(4)
diff --git a/usr/src/man/man4/exec_attr.4 b/usr/src/man/man4/exec_attr.4
deleted file mode 100644
index a2eb6b77a4..0000000000
--- a/usr/src/man/man4/exec_attr.4
+++ /dev/null
@@ -1,229 +0,0 @@
-'\" te
-.\" Copyright 2017 Peter Tribble
-.\" Copyright (c) 2006 by Sun Microsystems, Inc. All rights reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH EXEC_ATTR 4 "Aug 3, 2017"
-.SH NAME
-exec_attr \- execution profiles database
-.SH SYNOPSIS
-.LP
-.nf
-\fB/etc/security/exec_attr\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-\fB/etc/security/exec_attr\fR is a local database that specifies the execution
-attributes associated with profiles. The \fBexec_attr\fR file can be used with
-other sources for execution profiles, including the \fBexec_attr\fR \fBNIS\fR
-map. Programs use the \fBgetexecattr\fR(3SECDB) routines
-to access this information.
-.sp
-.LP
-The search order for multiple execution profile sources is specified in the
-\fB/etc/nsswitch.conf\fR file, as described in the \fBnsswitch.conf\fR(4) man
-page. The search order follows the entry for \fBprof_attr\fR(4).
-.sp
-.LP
-A profile is a logical grouping of authorizations and commands that is
-interpreted by a profile shell to form a secure execution environment. The
-shells that interpret profiles are \fBpfcsh\fR, \fBpfksh\fR, and \fBpfsh\fR.
-See the \fBpfsh\fR(1) man page. Each user's account is assigned zero or more
-profiles in the \fBuser_attr\fR(4) database file.
-.sp
-.LP
-Each entry in the \fBexec_attr\fR database consists of one line of text
-containing seven fields separated by colons (\fB:\fR). Line continuations using
-the backslash (\fB\e\fR) character are permitted. The basic format of each
-entry is:
-.sp
-.LP
-\fIname\fR:\fIpolicy\fR:\fItype\fR:\fIres1\fR:\fIres2\fR:\fIid\fR:\fIattr\fR
-.sp
-.ne 2
-.na
-\fB\fIname\fR\fR
-.ad
-.RS 10n
-The name of the profile. Profile names are case-sensitive.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIpolicy\fR\fR
-.ad
-.RS 10n
-The security policy that is associated with the profile entry. The valid
-policies are \fBsuser\fR (standard Solaris superuser) and \fBsolaris\fR. The
-\fBsolaris\fR policy recognizes privileges (see \fBprivileges\fR(5)); the
-\fBsuser\fR policy does not.
-.sp
-The \fBsolaris\fR and \fBsuser\fR policies can coexist in the same
-\fBexec_attr\fR database, so that Solaris releases prior to the current release
-can use the \fBsuser\fR policy and the current Solaris release can use a
-\fBsolaris\fR policy. \fBsolaris\fR is a superset of \fBsuser\fR; it allows you
-to specify privileges in addition to UIDs. Policies that are specific to the
-current release of Solaris or that contain privileges should use \fBsolaris\fR.
-Policies that use UIDs only or that are not specific to the current Solaris
-release should use \fBsuser\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fItype\fR\fR
-.ad
-.RS 10n
-The type of object defined in the profile. The only valid type is
-\fBcmd\fR, which specifies that the \fBID\fR field is a
-command that would be executed by a shell.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIres1\fR\fR
-.ad
-.RS 10n
-Reserved for future use.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIres2\fR\fR
-.ad
-.RS 10n
-Reserved for future use.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIid\fR\fR
-.ad
-.RS 10n
-A string that uniquely identifies the object described by the profile.
-The id is either the full path to the command or the asterisk (\fB*\fR) symbol,
-which is used to allow all commands. An asterisk that replaces the filename
-component in a pathname indicates all files in a particular directory.
-.sp
-To specify arguments, the pathname should point to a shell script that is
-written to execute the command with the desired argument. In a Bourne shell,
-the effective UID is reset to the real UID of the process when the effective
-UID is less than 100 and not equal to the real UID. Depending on the \fBeuid\fR
-and \fBegid\fR values, Bourne shell limitations might make other shells
-preferable. To prevent the effective UIDs from being reset to real UIDs, you
-can start the script with the \fB-p\fR option.
-.sp
-.in +2
-.nf
-#!/bin/sh -p
-.fi
-.in -2
-.sp
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIattr\fR\fR
-.ad
-.RS 10n
-An optional list of semicolon-separated (\fB;\fR) key-value pairs that describe
-the security attributes to apply to the object upon execution. Zero or more
-keys may be specified. The list of valid key words depends on the policy
-enforced. The following key words are valid: \fBeuid\fR, \fBuid,\fR \fBegid\fR,
-\fBgid\fR, \fBprivs\fR, and \fBlimitprivs\fR.
-.sp
-\fBeuid\fR and \fBuid\fR contain a single user name or a numeric user \fBID\fR.
-Commands designated with \fBeuid\fR run with the effective \fBUID\fR indicated,
-which is similar to setting the setuid bit on an executable file. Commands
-designated with \fBuid\fR run with both the real and effective \fBUID\fRs.
-Setting \fBuid\fR may be more appropriate than setting the \fBeuid\fR on
-privileged shell scripts.
-.sp
-\fBegid\fR and \fBgid\fR contain a single group name or a numeric group
-\fBID\fR. Commands designated with \fBegid\fR run with the effective \fBGID\fR
-indicated, which is similar to setting the setgid bit on a file. Commands
-designated with \fBgid\fR run with both the real and effective \fBGID\fRs.
-Setting \fBgid\fR may be more appropriate than setting \fBguid\fR on privileged
-shell scripts.
-.sp
-\fBprivs\fR contains a privilege set which will be added to the inheritable set
-prior to running the command.
-.sp
-\fBlimitprivs\fR contains a privilege set which will be assigned to the limit
-set prior to running the command.
-.sp
-\fBprivs\fR and \fBlimitprivs\fR are only valid for the \fBsolaris\fR policy.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRUsing Effective User ID
-.sp
-.LP
-The following example shows the \fBaudit\fR command specified in the Audit
-Control profile to execute with an effective user \fBID\fR of root (\fB0\fR):
-
-.sp
-.in +2
-.nf
-\fBAudit Control:suser:cmd:::/usr/sbin/audit:euid=0\fR
-.fi
-.in -2
-.sp
-
-.SH FILES
-.LP
-\fB/etc/nsswitch.conf\fR
-.sp
-.LP
-\fB/etc/user_attr\fR
-.sp
-.LP
-\fB/etc/security/exec_attr\fR
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Availibility SUNWcsr
-_
-Interface Stability See below.
-.TE
-
-.sp
-.LP
-The command-line syntax is Committed. The output is Uncommitted.
-.SH CAVEATS
-.LP
-Because the list of legal keys is likely to expand, any code that parses this
-database must be written to ignore unknown key-value pairs without error. When
-any new keywords are created, the names should be prefixed with a unique
-string, such as the company's stock symbol, to avoid potential naming
-conflicts.
-.sp
-.LP
-The following characters are used in describing the database format and must be
-escaped with a backslash if used as data: colon (\fB:\fR), semicolon (\fB;\fR),
-equals (\fB=\fR), and backslash (\fB\e\fR).
-.SH SEE ALSO
-.LP
-\fBauths\fR(1), \fBprofiles\fR(1), \fBroles\fR(1),
-\fBsh\fR(1), \fBmakedbm\fR(1M), \fBgetauthattr\fR(3SECDB),
-\fBgetexecattr\fR(3SECDB), \fBgetprofattr\fR(3SECDB),
-\fBgetuserattr\fR(3SECDB), \fBkva_match\fR(3SECDB), \fBauth_attr\fR(4),
-\fBprof_attr\fR(4), \fBuser_attr\fR(4), \fBattributes\fR(5),
-\fBprivileges\fR(5)
diff --git a/usr/src/man/man4/fdi.4 b/usr/src/man/man4/fdi.4
deleted file mode 100644
index 39b5db99a4..0000000000
--- a/usr/src/man/man4/fdi.4
+++ /dev/null
@@ -1,448 +0,0 @@
-'\" te
-.\" This manual page is dervied from documentation obtained from David Zeuthen.
-.\" Portions Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH FDI 4 "April 9, 2016"
-.SH NAME
-fdi \- HAL device information file format
-.SH SYNOPSIS
-.LP
-.nf
-/usr/share/lib/xml/dtd/fdi.dtd.1
-.fi
-
-.SH DESCRIPTION
-.LP
-The hardware abstraction layer facility, described in \fBhal\fR(5), uses an
-\fBXML\fR-based file format to merge arbitrary properties onto device objects.
-The way device information files works is that once all physical properties are
-merged onto a device object, it is tried against the set of installed device
-information files. Device information files are used for both merging facts and
-policy settings for devices.
-.sp
-.LP
-Each device information file has a number of match directives that are tested
-against the properties of the device object. The directives have the form:
-.sp
-.in +2
-.nf
-<match key="property" [string|int|bool|..]="value">
-.fi
-.in -2
-
-.sp
-.LP
-If all the match directives pass, then the device information can include the
-following property directives in the form:
-.sp
-.in +2
-.nf
-<[merge|append|prepend] key="property" type="[string|int|bool|..]">
-.fi
-.in -2
-
-.sp
-.LP
-These directives are used to merge new properties or append to existing
-properties on the device object. Any previously property stemming from device
-detection can be overridden by a device information file.
-.sp
-.LP
-The \fBmatch\fR, \fBmerge\fR, \fBappend\fR, and \fBprepend\fR directives
-require that the key attribute be either a property name on the device object
-in question or a path to a property on another device object. The path to a
-property is expressed either through direct specification of the \fBUDI\fR,
-such as \fB/org/freedesktop/Hal/devices/computer:foo.bar\fR or through indirect
-references such as "\fB@info.parent:baz\fR", meaning that the device object
-specified by the \fBUDI\fR in the string property "\fBinfo.parent\fR" should be
-used to query the property "\fBbaz\fR". It is also possible to use multiple
-indirections. For example, for a volume on a \fBUSB\fR memory stick, the
-indirection
-"\fB@block.storage_device:@storage.physical_device:usb.vendor_id\fR" references
-the "\fBusb.vendor_id\fR" property on the device object representing the
-\fBUSB\fR interface.
-.sp
-.LP
-When the property to match has been determined, the following attributes can be
-used within the "\fBmatch\fR" tag:
-.sp
-.ne 2
-.na
-\fB\fBstring\fR\fR
-.ad
-.RS 20n
-Match a string property. For example, <match key= "foo.bar" string="baz">
-matches only if "\fBfoo.bar\fR" is a string property assuming the value
-"\fBbaz\fR".
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBint\fR\fR
-.ad
-.RS 20n
-Match an integer property
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBuint64\fR\fR
-.ad
-.RS 20n
-Match property with the 64-bit unsigned type
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBbool\fR\fR
-.ad
-.RS 20n
-Match a boolean property
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdouble\fR\fR
-.ad
-.RS 20n
-Match a property of type double
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBexists\fR\fR
-.ad
-.RS 20n
-Used as <match key="foo.bar" exists="true">. This attribute can be used with
-"true" and "false", respectively to match when a property exists or does not
-exist.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBempty\fR\fR
-.ad
-.RS 20n
-This attribute can only be used on string properties with "true" and "false".
-The semantics for "true" is to match only when the string is non-empty.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBis_absolute_path\fR\fR
-.ad
-.RS 20n
-Matches only when a string property represents an absolute path (the path does
-not have to exist). This attribute can be can be used with "true" or "false".
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBis_ascii\fR\fR
-.ad
-.RS 20n
-Matches only when a string property contains \fBASCII\fR characters. This
-attribute can be used with "true" or "false".
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcompare_lt\fR\fR
-.ad
-.RS 20n
-This attribute can be used with \fBint\fR, \fBuint64\fR, \fBdouble\fR and
-\fBstring\fR properties to compare with a constant. It matches when the given
-property is less than the given constant using the default ordering.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcompare_le\fR\fR
-.ad
-.RS 20n
-Similar to \fBcompare_lt\fR, but matches when the given property is less than
-or equal than the given constant using the default ordering.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcompare_gt\fR\fR
-.ad
-.RS 20n
-Similar to \fBcompare_lt\fR, but matches when the given property is greater
-than the given constant using the default ordering.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fR
-.ad
-.RS 20n
-Similar to \fBcompare_lt\fR, but matches when the given property is greater
-than or equal than the given constant using the default ordering.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fR
-.ad
-.RS 20n
-This attribute can only be used with \fBstring\fR and \fBstrlist\fR (string
-list). For a string key, this matches when the property contains the given
-(sub)string. For a string list, this matches if the given string matches a item
-in the list.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcontains_ncase\fR\fR
-.ad
-.RS 20n
-Similar to \fBcontains\fR, but the property and the given key are converted to
-lowercase before it is checked.
-.RE
-
-.sp
-.LP
-The \fBmerge\fR, \fBappend\fR, and \fBprepend\fR directives all require the
-attribute type which specifies what is to be merged. The following values are
-supported:
-.sp
-.ne 2
-.na
-\fB\fBstring\fR\fR
-.ad
-.RS 17n
-The value is copied to the property. For example, <merge key="foo bar"
-type="string"> baz</merege> merges the value "baz" into the property "foo.bar".
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBstrlist\fR\fR
-.ad
-.RS 17n
-For \fBmerge\fR, the value is copied to the property and the current property
-is overwritten. For \fBappend\fR and \fBprepend\fR, the value is appended or
-prepended to the list as a new item.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBbool\fR\fR
-.ad
-.RS 17n
-This attribute can merge the values "true" or "false"
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBint\fR\fR
-.ad
-.RS 17n
-Merges an integer
-.RE
-
-.sp
-.ne 2
-.na
-\fBuint64\fR
-.ad
-.RS 17n
-Merges an unsigned 64-bit integer
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdouble\fR\fR
-.ad
-.RS 17n
-Merges a double precision floating point number
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcopy_property\fR\fR
-.ad
-.RS 17n
-Copies the value of a given property; supports paths with direct and indirect
-UDI's. For example, <merge key="foo.bar"
-type="copy_property">@info.parent:baz.bat</merge> merges the value of the
-property "baz.bat" on the device object with the \fBUDI\fR from the property
-"info.parent" into the property "foo.bar" on the device object being processed.
-.RE
-
-.sp
-.LP
-The \fBremove\fR directive requires only a key and can be used with all keys.
-For \fBstrlist\fR, there is also a special syntax to remove a item from the
-string list. For example, to remove item "bla" from property "foo.bar", use the
-following syntax:
-.sp
-.in +2
-.nf
-<remove key="foo.bar" type="strlist">bla</merge>
-.fi
-.in -2
-
-.sp
-.LP
-Device Information files are stored in the following standard hierarchy with the
-following default top level directories \fBinformation\fR, \fBpolicy\fR and
-\fBpreprobe\fR:
-.sp
-.ne 2
-.na
-\fB\fBinformation\fR\fR
-.ad
-.RS 15n
-Device information files to merge device information.
-.sp
-.ne 2
-.na
-\fB\fB10freedesktop\fR\fR
-.ad
-.RS 17n
-Device information files included with the \fBhal\fR tarball.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB20thirdparty\fR\fR
-.ad
-.RS 17n
-Device information files from the device manufacturer and installed from media
-accompanying the hardware.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB30user\fR\fR
-.ad
-.RS 17n
-Device information for specific devices.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpolicy\fR\fR
-.ad
-.RS 15n
-Device information files to merge policy properties.
-.sp
-.ne 2
-.na
-\fB10osvendor\fR
-.ad
-.RS 16n
-Device information files included with the hal tarball and supplied by the
-operating system vendor for policy rules.
-.RE
-
-.sp
-.ne 2
-.na
-\fB20thirdparty\fR
-.ad
-.RS 16n
-Policy rules from the device manufacturer and installed from media accompanying
-the hardware.
-.RE
-
-.sp
-.ne 2
-.na
-\fB30user\fR
-.ad
-.RS 16n
-Policy rules for specific devices.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fBpreprobe\fR
-.ad
-.RS 15n
-Device information files to merge information before probe devices.
-.sp
-.ne 2
-.na
-\fB10osvendor\fR
-.ad
-.RS 16n
-Device information files included with the \fBhal\fR tarball and supplied by
-the operating system vendor.
-.RE
-
-.sp
-.ne 2
-.na
-\fB20thirdparty\fR
-.ad
-.RS 16n
-Device information files from the device manufacturer and installed from media
-accompanying the hardware.
-.RE
-
-.sp
-.ne 2
-.na
-\fB30user\fR
-.ad
-.RS 16n
-Device information for specific devices.
-.RE
-
-.RE
-
-.sp
-.LP
-All device information files are matched for every \fBhal\fR device object.
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Volatile
-.TE
-
-.SH SEE ALSO
-.LP
-\fBhald\fR(1M), \fBattributes\fR(5), \fBhal\fR(5), \fBlocale\fR(5),
-\fBsmf\fR(5)
diff --git a/usr/src/man/man4/format.dat.4 b/usr/src/man/man4/format.dat.4
deleted file mode 100644
index 010ece499c..0000000000
--- a/usr/src/man/man4/format.dat.4
+++ /dev/null
@@ -1,480 +0,0 @@
-'\" te
-.\" Copyright (c) 1999, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH FORMAT.DAT 4 "Apr 19, 2001"
-.SH NAME
-format.dat \- disk drive configuration for the format command
-.SH DESCRIPTION
-.sp
-.LP
-\fBformat.dat\fR enables you to use your specific disk drives with
-\fBformat\fR(1M). On Solaris 2.3 and compatible systems, \fBformat\fR will
-automatically configure and label SCSI drives, so that they need not be defined
-in \fBformat.dat\fR. Three things can be defined in the data file:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-search paths
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-disk types
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-partition tables.
-.RE
-.SS "Syntax"
-.sp
-.LP
-The following syntax rules apply to the data file:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The pound \fB#\fR sign is the comment character. Any text on a line after a
-pound sign is not interpreted by \fBformat\fR.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Each definition in the \fBformat.dat\fR file appears on a single logical line.
-If the definition is more than one line long, all but the last line of the
-definition must end with a backslash (\e).
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-A definition consists of a series of assignments that have an identifier on the
-left side and one or more values on the right side. The assignment operator is
-the equal sign (=). Assignments within a definition must be separated by a
-colon (:).
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-White space is ignored by \fBformat\fR(1M). If you want an assigned value to
-contain white space, enclose the entire value in double quotes ("). This will
-cause the white space within quotes to be preserved as part of the assignment
-value.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Some assignments can have multiple values on the right hand side. Separate
-values by a comma (,).
-.RE
-.SS "Keywords"
-.sp
-.LP
-The data file contains disk definitions that are read in by \fBformat\fR(1M)
-when it starts up. Each definition starts with one of the following keywords:
-\fBsearch_path\fR, \fBdisk_type\fR, and \fBpartition\fR.
-.sp
-.ne 2
-.na
-\fB\fBsearch_path\fR\fR
-.ad
-.RS 15n
-4.x: Tells \fBformat\fR which disks it should search for when it starts up. The
-list in the default data file contains all the disks in the GENERIC
-configuration file. If your system has disks that are not in the GENERIC
-configuration file, add them to the \fBsearch_path\fR definition in your data
-file. The data file can contain only one \fBsearch_path\fR definition. However,
-this single definition lets you specify all the disks you have in your system.
-.sp
-5.x: By default, \fBformat\fR(1M) understands all the logical devices that are
-of the form \fB/dev/rdsk/cntndnsn\fR; hence \fBsearch_path\fR is not normally
-defined on a 5.x system.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdisk_type\fR\fR
-.ad
-.RS 15n
-Defines the controller and disk model. Each \fBdisk_type\fR definition contains
-information concerning the physical geometry of the disk. The default data file
-contains definitions for the controllers and disks that the Solaris operating
-environment supports. You need to add a new \fBdisk_type\fR only if you have an
-unsupported disk. You can add as many \fBdisk_type\fR definitions to the data
-file as you want.
-.sp
-The following controller types are supported by \fBformat\fR(1M):
-.sp
-.ne 2
-.na
-\fBXY450\fR
-.ad
-.RS 10n
-Xylogics 450 controller (SMD)
-.RE
-
-.sp
-.ne 2
-.na
-\fBXD7053\fR
-.ad
-.RS 10n
-Xylogics 7053 controller (SMD)
-.RE
-
-.sp
-.ne 2
-.na
-\fBSCSI\fR
-.ad
-.RS 10n
-True SCSI (CCS or SCSI-2)
-.RE
-
-.sp
-.ne 2
-.na
-\fBISP-80\fR
-.ad
-.RS 10n
-IPI panther controller
-.RE
-
-The keyword itself is assigned the name of the disk type. This name appears in
-the disk's label and is used to identify the disk type whenever
-\fBformat\fR(1M) is run. Enclose the name in double quotes to preserve any
-white space in the name.
-.sp
-Below are lists of identifiers for supported controllers. Note that an asterisk
-('*') indicates the identifier is mandatory for that controller -- it is not
-part of the keyword name.
-.sp
-The following identifiers are assigned values in all \fBdisk_type\fR
-definitions:
-.sp
-.ne 2
-.na
-\fB\fBacyl*\fR\fR
-.ad
-.RS 12n
-alternate cylinders
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBasect\fR\fR
-.ad
-.RS 12n
-alternate sectors per track
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBatrks\fR\fR
-.ad
-.RS 12n
-alternate tracks
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfmt_time\fR\fR
-.ad
-.RS 12n
-formatting time per cylinder
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBncyl*\fR\fR
-.ad
-.RS 12n
-number of logical cylinders
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnhead*\fR\fR
-.ad
-.RS 12n
-number of logical heads
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnsect*\fR\fR
-.ad
-.RS 12n
-number of logical sectors per track
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpcyl*\fR\fR
-.ad
-.RS 12n
-number of physical cylinders
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBphead\fR\fR
-.ad
-.RS 12n
-number of physical heads
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpsect\fR\fR
-.ad
-.RS 12n
-number of physical sectors per track
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrpm*\fR\fR
-.ad
-.RS 12n
-drive RPM
-.RE
-
-These identifiers are for SCSI and MD-21 Controllers
-.sp
-.ne 2
-.na
-\fB\fBread_retries\fR\fR
-.ad
-.RS 17n
-page 1 byte 3 (read retries)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBwrite_retries\fR\fR
-.ad
-.RS 17n
-page 1 byte 8 (write retries)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcyl_skew\fR\fR
-.ad
-.RS 17n
-page 3 bytes 18-19 (cylinder skew)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBtrk_skew\fR\fR
-.ad
-.RS 17n
-page 3 bytes 16-17 (track skew)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBtrks_zone\fR\fR
-.ad
-.RS 17n
-page 3 bytes 2-3 (tracks per zone)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcache\fR\fR
-.ad
-.RS 17n
-page 38 byte 2 (cache parameter)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBprefetch\fR\fR
-.ad
-.RS 17n
-page 38 byte 3 (prefetch parameter)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmax_prefetch\fR\fR
-.ad
-.RS 17n
-page 38 byte 4 (minimum prefetch)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmin_prefetch\fR\fR
-.ad
-.RS 17n
-page 38 byte 6 (maximum prefetch)
-.RE
-
-Note: The Page 38 values are device-specific. Refer the user to the particular
-disk's manual for these values.
-.sp
-For SCSI disks, the following geometry specifiers may cause a mode select on
-the byte(s) indicated:
-.sp
-.ne 2
-.na
-\fB\fBasect\fR\fR
-.ad
-.RS 9n
-page 3 bytes 4-5 (alternate sectors per zone)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBatrks\fR\fR
-.ad
-.RS 9n
-page 3 bytes 8-9 (alt. tracks per logical unit)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBphead\fR\fR
-.ad
-.RS 9n
-page 4 byte 5 (number of heads)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpsect\fR\fR
-.ad
-.RS 9n
-page 3 bytes 10-11 (sectors per track)
-.RE
-
-And these identifiers are for SMD Controllers Only
-.sp
-.ne 2
-.na
-\fB\fBbps*\fR\fR
-.ad
-.RS 8n
-bytes per sector (SMD)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBbpt*\fR\fR
-.ad
-.RS 8n
-bytes per track (SMD)
-.RE
-
-Note: under SunOS 5.x, bpt is only required for SMD disks. Under SunOS 4.x, bpt
-was required for all disk types, even though it was only used for SMD disks.
-.sp
-And this identifier is for XY450 SMD Controllers Only
-.sp
-.ne 2
-.na
-\fB\fBdrive_type*\fR\fR
-.ad
-.RS 15n
-drive type (SMD) (just call this "xy450 drive type")
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpartition\fR\fR
-.ad
-.RS 15n
-Defines a partition table for a specific disk type. The partition table
-contains the partitioning information, plus a name that lets you refer to it in
-\fBformat\fR(1M). The default data file contains default partition definitions
-for several kinds of disk drives. Add a partition definition if you
-repartitioned any of the disks on your system. Add as many partition
-definitions to the data file as you need.
-.sp
-Partition naming conventions differ in SunOS 4.x and in SunOS 5.x.
-.sp
-4.x: the partitions are named as \fBa\fR, \fBb\fR, \fBc\fR, \fBd\fR, \fBe\fR,
-\fBf\fR, \fBg\fR, \fBh\fR.
-.sp
-5.x: the partitions are referred to by numbers \fB0\fR, \fB1\fR, \fB2\fR,
-\fB3\fR, \fB4\fR, \fB5\fR, \fB6\fR, \fB7\fR.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRA sample \fBdisk_type\fR and \fBpartition\fR.
-.sp
-.LP
-Following is a sample \fBdisk_type\fR and \fBpartition\fR definition in
-\fBformat.dat\fR file for SUN0535 disk device.
-
-.sp
-.in +2
-.nf
-disk_type = "SUN0535" \e
- : ctlr = SCSI : fmt_time = 4 \e
- : ncyl = 1866 : acyl = 2 : pcyl = 2500 : nhead = 7 : nsect = 80 \e
- : rpm = 5400
-partition = "SUN0535" \e
- : disk = "SUN0535" : ctlr = SCSI \e
- : 0 = 0, 64400 : 1 = 115, 103600 : 2 = 0, 1044960 : 6 = 300, 876960
-.fi
-.in -2
-.sp
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/format.dat\fR\fR
-.ad
-.RS 19n
-default data file if \fBformat\fR \fB-x\fR is not specified, nor is there a
-\fBformat.dat\fR file in the current directory.
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBformat\fR(1M)
-.sp
-.LP
-\fISystem Administration Guide: Basic Administration\fR
diff --git a/usr/src/man/man4/fspec.4 b/usr/src/man/man4/fspec.4
deleted file mode 100644
index 29ed119d77..0000000000
--- a/usr/src/man/man4/fspec.4
+++ /dev/null
@@ -1,116 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH FSPEC 4 "Jul 3, 1990"
-.SH NAME
-fspec \- format specification in text files
-.SH DESCRIPTION
-.sp
-.LP
-It is sometimes convenient to maintain text files on the system with
-non-standard tabs, (tabs that are not set at every eighth column). Such files
-must generally be converted to a standard format, frequently by replacing all
-tabs with the appropriate number of spaces, before they can be processed by
-system commands. A format specification occurring in the first line of a text
-file specifies how tabs are to be expanded in the remainder of the file.
-.sp
-.LP
-A format specification consists of a sequence of parameters separated by blanks
-and surrounded by the brackets \fB<:\fR and \fB:>\fR. Each parameter consists
-of a keyletter, possibly followed immediately by a value. The following
-parameters are recognized:
-.sp
-.ne 2
-.na
-\fB\fBt\fR\fItabs\fR\fR
-.ad
-.RS 11n
-The \fBt\fR parameter specifies the tab settings for the file. The value of
-\fBtabs\fR must be one of the following:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-A list of column numbers separated by commas, indicating tabs set at the
-specified columns.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-A '\fB\(mi\fR\&' followed immediately by an integer \fIn\fR, indicating tabs at
-intervals of \fIn\fR columns.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-A '\fB\(mi\fR\&' followed by the name of a ``canned'' tab specification.
-.RE
-Standard tabs are specified by \fBt\(mi8\fR, or equivalently, \fBt1,9,17,25,\fR
-etc. The canned tabs that are recognized are defined by the \fBtabs\fR(1)
-command.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBs\fR\fIsize\fR\fR
-.ad
-.RS 11n
-The \fBs\fR parameter specifies a maximum line size. The value of \fBsize\fR
-must be an integer. Size checking is performed after tabs have been expanded,
-but before the margin is prepended.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBm\fR\fImargin\fR\fR
-.ad
-.RS 11n
-The \fBm\fR parameter specifies a number of spaces to be prepended to each
-line. The value of \fImargin\fR must be an integer.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBd\fR\fR
-.ad
-.RS 11n
-The \fBd\fR parameter takes no value. Its presence indicates that the line
-containing the format specification is to be deleted from the converted file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBe\fR\fR
-.ad
-.RS 11n
-The \fBe\fR parameter takes no value. Its presence indicates that the current
-format is to prevail only until another format specification is encountered in
-the file.
-.RE
-
-.sp
-.LP
-Default values, which are assumed for parameters not supplied, are \fBt\(mi8\fR
-and \fBm0\fR. If the \fBs\fR parameter is not specified, no size checking is
-performed. If the first line of a file does not contain a format specification,
-the above defaults are assumed for the entire file. The following is an example
-of a line containing a format specification:
-.sp
-.LP
-\fB* <:t5,10,15 s72:> *\fR
-.sp
-.LP
-If a format specification can be disguised as a comment, it is not necessary to
-code the \fBd\fR parameter.
-.SH SEE ALSO
-.sp
-.LP
-\fBed\fR(1), \fBnewform\fR(1), \fBtabs\fR(1)
diff --git a/usr/src/man/man4/fstypes.4 b/usr/src/man/man4/fstypes.4
deleted file mode 100644
index ddabacdc04..0000000000
--- a/usr/src/man/man4/fstypes.4
+++ /dev/null
@@ -1,31 +0,0 @@
-'\" te
-.\" Copyright (c) 1993, Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH FSTYPES 4 "Dec 18, 1991"
-.SH NAME
-fstypes \- file that registers distributed file system packages
-.SH DESCRIPTION
-.sp
-.LP
-\fBfstypes\fR resides in directory \fB/etc/dfs\fR and lists distributed file
-system utilities packages installed on the system. For each installed
-distributed file system type, there is a line that begins with the file system
-type name (for example, ``nfs''), followed by white space and descriptive text.
-.sp
-.LP
-The file system indicated in the first line of the file is the default file
-system; when Distributed File System (DFS) Administration commands are entered
-without the option \fB\(miF\fR \fIfstypes\fR, the system takes the file
-system type from the first line of the \fBfstypes\fR file.
-.sp
-.LP
-The default file system can be changed by editing the \fBfstypes\fR file with
-any supported text editor.
-.SH SEE ALSO
-.sp
-.LP
-\fBdfmounts\fR(1M), \fBdfshares\fR(1M), \fBshare\fR(1M), \fBshareall\fR(1M),
-\fBunshare\fR(1M)
diff --git a/usr/src/man/man4/ftp.4 b/usr/src/man/man4/ftp.4
deleted file mode 100644
index 2b5285b948..0000000000
--- a/usr/src/man/man4/ftp.4
+++ /dev/null
@@ -1,45 +0,0 @@
-'\" te
-.\" Copyright (C) 2002, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH FTP 4 "Oct 22, 2002"
-.SH NAME
-ftp \- FTP client configuration file
-.SH SYNOPSIS
-.LP
-.nf
-\fB/etc/default/ftp\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-Use the \fBftp\fR file to configure the behavior of the FTP client. Lines that
-begin with a hash symbol ("# ") are treated as comment lines and are ignored.
-.SS "Behavior Directives"
-.sp
-.LP
-The \fBftp\fR file supports the following behavior directives:
-.sp
-.ne 2
-.na
-\fB\fBFTP_LS_SENDS_NLST=yes | no\fR\fR
-.ad
-.RS 30n
-The \fBls\fR command of the ftp client sends an \fBNLST\fR to the FTP Server by
-default. Several non-Solaris clients send \fBLIST\fR instead. In order to make
-the Solaris \fBftp\fR client send \fBLIST\fR when the \fBls\fR command is
-issued, set \fBFTP_LS_SENDS_NLST\fR to \fBno\fR. The value of
-\fBFTP_LS_SENDS_NLST\fR is \fByes\fR by default.
-.RE
-
-.sp
-.LP
-If the user sets a value for \fBFTP_LS_SENDS_NLST\fR in the user's environment,
-this value will override any \fBFTP_LS_SENDS_NLST\fR directive that is
-specified in \fB/etc/default/ftp\fR.
-.SH SEE ALSO
-.sp
-.LP
-\fBftp\fR(1), \fBattributes\fR(5)
diff --git a/usr/src/man/man4/ftpusers.4 b/usr/src/man/man4/ftpusers.4
deleted file mode 100644
index 54ba4780ca..0000000000
--- a/usr/src/man/man4/ftpusers.4
+++ /dev/null
@@ -1,153 +0,0 @@
-'\" te
-.\" Copyright (C) 2003, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH FTPUSERS 4 "May 1, 2003"
-.SH NAME
-ftpusers \- file listing users to be disallowed ftp login privileges
-.SH SYNOPSIS
-.LP
-.nf
-\fB/etc/ftpd/ftpusers\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBftpusers\fR file lists users for whom \fBftp\fR login privileges are
-disallowed. Each \fBftpuser\fR entry is a single line of the form:
-.sp
-.in +2
-.nf
-name
-.fi
-.in -2
-
-.sp
-.LP
-where \fBname\fR is the user's login name.
-.sp
-.LP
-The FTP Server, \fBin.ftpd\fR(1M), reads the \fBftpusers\fR file. If the login
-name of the user matches one of the entries listed, it rejects the login
-attempt.
-.sp
-.LP
-The \fBftpusers\fR file has the following default configuration entries:
-.sp
-.in +2
-.nf
-root
-daemon
-bin
-sys
-adm
-lp
-uccp
-nuucp
-smmsp
-listen
-nobody
-noaccess
-nobody4
-.fi
-.in -2
-
-.sp
-.LP
-These entries match the default instantiated entries from \fBpasswd\fR(4). The
-list of default entries typically contains the superuser \fBroot\fR and other
-administrative and system application identities.
-.sp
-.LP
-The root entry is included in the \fBftpusers\fR file as a security measure
-since the default policy is to disallow remote logins for this identity. This
-policy is also set in the default value of the \fBCONSOLE\fR entry in the
-\fB/etc/default/login\fR file. See \fBlogin\fR(1). If you allow \fBroot\fR
-login privileges by deleting the root entry in \fBftpusers\fR, you should also
-modify the security policy in \fB/etc/default/login\fR to reflect the site
-security policy for remote login access by \fBroot\fR.
-.sp
-.LP
-Other default entries are administrative identities that are typically assumed
-by system applications but never used for local or remote login, for example
-\fBsys\fR and \fBnobody\fR. Since these entries do not have a valid password
-field instantiated in \fBshadow\fR(4), no login can be performed.
-.sp
-.LP
-If a site adds similar administrative or system application identities in
-\fBpasswd\fR(4) and \fBshadow\fR(4), for example, \fBmajordomo\fR, the site
-should consider including them in the \fBftpusers\fR file for a consistent
-security policy.
-.sp
-.LP
-Lines that begin with \fB#\fR are treated as comment lines and are ignored.
-.SH FILES
-.ne 2
-.na
-\fB\fB/etc/ftpd/ftpusers\fR\fR
-.ad
-.RS 22n
-A file that lists users for whom \fBftp\fR login privileges are disallowed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/ftpusers\fR\fR
-.ad
-.RS 22n
-See \fB/etc/ftpd/ftpusers\fR. This file is deprecated, although its use is
-still supported.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/default/login\fR\fR
-.ad
-.RS 22n
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/passwd\fR\fR
-.ad
-.RS 22n
-password file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/shadow\fR\fR
-.ad
-.RS 22n
-shadow password file
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability See below.
-.TE
-
-.sp
-.LP
-The interface stability for \fB/etc/ftpd/ftpusers\fR is Volatile. The interface
-stability for \fB/etc/ftpusers\fR is (Obsolete).
-.SH SEE ALSO
-.LP
-\fBlogin\fR(1), \fBftphosts\fR(4),
-\fBpasswd\fR(4), \fBshadow\fR(4), \fBattributes\fR(5), \fBenviron\fR(5)
diff --git a/usr/src/man/man4/fx_dptbl.4 b/usr/src/man/man4/fx_dptbl.4
deleted file mode 100644
index ce2ad1bc3f..0000000000
--- a/usr/src/man/man4/fx_dptbl.4
+++ /dev/null
@@ -1,398 +0,0 @@
-'\" te
-.\" Copyright (C) 2002, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH FX_DPTBL 4 "Oct 15, 2002"
-.SH NAME
-fx_dptbl \- fixed priority dispatcher parameter table
-.SH SYNOPSIS
-.nf
-\fBfx_dptbl\fR
-.fi
-
-.SH DESCRIPTION
-The process scheduler or dispatcher is the portion of the kernel that controls
-allocation of the CPU to processes. The scheduler supports the notion of
-scheduling classes, where each class defines a scheduling policy used to
-schedule processes within that class. Associated with each scheduling class is
-a set of priority queues on which ready-to-run processes are linked. These
-priority queues are mapped by the system configuration into a set of global
-scheduling priorities, which are available to processes within the class. The
-dispatcher always selects for execution the process with the highest global
-scheduling priority in the system. The priority queues associated with a given
-class are viewed by that class as a contiguous set of priority levels numbered
-from 0 (lowest priority) to \fIn\fR (highest priority\(ema
-configuration-dependent value). The set of global scheduling priorities that
-the queues for a given class are mapped into might not start at zero and might
-not be contiguous, depending on the configuration.
-.sp
-.LP
-Processes in the fixed priority class are scheduled according to the parameters
-in a fixed-priority dispatcher parameter table (\fBfx_dptbl\fR). The
-\fBfx_dptbl\fR table consists of an array (\fBconfig_fx_dptbl[]\fR) of
-parameter structures (\fBstruct fxdpent_t\fR), one for each of the \fIn\fR
-priority levels used by fixed priority processes in user mode. The structures
-are accessed by way of a pointer, (\fBfx_dptbl\fR), to the array. The
-properties of a given priority level \fIi\fR are specified by the \fIi\fRth
-parameter structure in this array (\fBfx_dptbl[\fIi\fR]\fR).
-.sp
-.LP
-A parameter structure consists of the following members. These are also
-described in the \fB/usr/include/sys/fx.h\fR header.
-.sp
-.ne 2
-.na
-\fB\fBfx_globpri\fR\fR
-.ad
-.RS 14n
-The global scheduling priority associated with this priority level. The mapping
-between fixed-priority priority levels and global scheduling priorities is
-determined at boot time by the system configuration. \fBfx_globpri\fR can not
-be changed with \fBdispadmin\fR(1M).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfx_quantum\fR\fR
-.ad
-.RS 14n
-The length of the time quantum allocated to processes at this level in ticks
-(\fBhz\fR). The time quantum value is only a default or starting value for
-processes at a particular level, as the time quantum of a fixed priority
-process can be changed by the user with the \fBpriocntl\fR(1) command or the
-\fBpriocntl\fR(2) system call.
-.sp
-In the default high resolution clock mode (\fBhires_tick\fR set to \fB1\fR),
-the value of \fBhz\fR is set to \fB1000\fR. If this value is overridden to
-\fB0\fR then \fBhz\fR will instead be \fB100\fR; the number of ticks per
-quantum must then be decreased to maintain the same length of quantum in
-absolute time.
-.sp
-An administrator can affect the behavior of the fixed priority portion of the
-scheduler by reconfiguring the \fBfx_dptbl\fR. There are two methods available
-for doing this: reconfigure with a loadable module at boot-time or by using
-\fBdispadmin\fR(1M) at run-time.
-.RE
-
-.SS "fx_dptbl Loadable Module"
-The \fBfx_dptbl\fR can be reconfigured with a loadable module that contains a
-new fixed priority dispatch table. The module containing the dispatch table is
-separate from the \fBFX\fR loadable module, which contains the rest of the
-fixed priority software. This is the only method that can be used to change the
-number of fixed priority priority levels or the set of global scheduling
-priorities used by the fixed priority class. The relevant procedure and source
-code is described in Replacing the fx_dptbl Loadable Module below.
-.SS "dispadmin Configuration File"
-The \fBfx_quantum\fR values in the \fBfx_dptbl\fR can be examined and modified
-on a running system using the \fBdispadmin\fR(1M) command. Invoking
-\fBdispadmin\fR for the fixed-priority class allows the administrator to
-retrieve the current \fBfx_dptbl\fR configuration from the kernel's in-core
-table or overwrite the in-core table with values from a configuration file. The
-configuration file used for input to \fBdispadmin\fR must conform to the
-specific format described as follows:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Blank lines are ignored and any part of a line to the right of a # symbol is
-treated as a comment.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The first non-blank, non-comment line must indicate the resolution to be used
-for interpreting the time quantum values. The resolution is specified as:
-.sp
-.in +2
-.nf
-RES=\fIres\fR
-.fi
-.in -2
-.sp
-
-where \fIres\fR is a positive integer between 1 and 1,000,000,000 inclusive and
-the resolution used is the reciprocal of \fIres\fR in seconds (for example,
-\fBRES=1000\fR specifies millisecond resolution). Although you can specify very
-fine (nanosecond) resolution, the time quantum lengths are rounded up to the
-next integral multiple of the system clock's resolution.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The remaining lines in the file are used to specify the \fBfx_quantum\fR values
-for each of the fixed-priority priority levels. The first line specifies the
-quantum for fixed-priority level 0, the second line specifies the quantum for
-fixed-priority level 1, and so forth. There must be exactly one line for each
-configured fixed priority priority level. Each \fBfx_quantum\fR entry must be a
-positive integer specifying the desired time quantum in the resolution given by
-\fIres\fR.
-.RE
-.sp
-.LP
-See Examples for an example of an excerpt of a \fBdispadmin\fR configuration
-file.
-.SS "Replacing the fx_dptbl Loadable Module"
-To change the size of the fixed priority dispatch table, you must build the
-loadable module that contains the dispatch table information. Save the existing
-module before using the following procedure.
-.RS +4
-.TP
-1.
-Place the dispatch table code shown below in a file called \fBfx_dptbl.c\fR.
-See EXAMPLES, below, for an example of this file.
-.RE
-.RS +4
-.TP
-2.
-Compile the code using the given compilation and link lines supplied:
-.sp
-.in +2
-.nf
-cc -c -0 -D_KERNEL fx_dptbl.c
-ld -r -o FX_DPTBL fx_dptbl.o
-.fi
-.in -2
-.sp
-
-.RE
-.RS +4
-.TP
-3.
-Copy the current dispatch table in \fB/usr/kernel/sched\fR to
-\fBFX_DPTBL.bak\fR.
-.RE
-.RS +4
-.TP
-4.
-Replace the current \fBFX_DPTBL\fR in \fB/usr/kernel/sched\fR.
-.RE
-.RS +4
-.TP
-5.
-Make changes in the \fB/etc/system\fR file to reflect the changes to the
-sizes of the tables. See \fBsystem\fR(4). The variables affected is
-\fBfx_maxupri\fR. The syntax for setting this is as follows:
-.sp
-.in +2
-.nf
-set FX:fx_maxupri=(\fIvalue for max fixed-priority user priority\fR)
-.fi
-.in -2
-.sp
-
-.RE
-.RS +4
-.TP
-6.
-Reboot the system to use the new dispatch table.
-.RE
-.sp
-.LP
-Exercise great care in using the preceding method to replace the dispatch
-table. A mistake can result in panics, thus making the system unusable.
-.SH EXAMPLES
-\fBExample 1 \fRConfiguration File Excerpt
-.sp
-.LP
-The following excerpt from a \fBdispadmin\fR configuration file illustrates the
-correct format. Note that, for each line specifying a set of parameters, there
-is a comment indicating the corresponding priority level. These level numbers
-indicate priority within the fixed priority class; the mapping between these
-fixed-priority priorities and the corresponding global scheduling priorities is
-determined by the configuration specified in the \fBFX_DPTBL\fR loadable
-module. The level numbers are strictly for the convenience of the administrator
-reading the file and, as with any comment, they are ignored by \fBdispadmin\fR.
-The \fBdispadmin\fR command assumes that the lines in the file are ordered by
-consecutive, increasing priority level (from 0 to the maximum configured
-fixed-priority priority). For the sake of someone reading the file, the level
-numbers in the comments should agree with this ordering. If for some reason
-they do not, \fBdispadmin\fR is unaffected.
-
-.sp
-.in +2
-.nf
-# Fixed Priority Dispatcher Configuration File RES=1000
-
-RES=1000
-# TIME QUANTUM PRIORITY
-# (fx_quantum) LEVEL
-200 # 0
-200 # 1
-200 # 2
-200 # 3
-200 # 4
-200 # 5
-200 # 6
-200 # 7
- . . .
- . . .
- . . .
-20 # 58
-20 # 59
-20 # 60
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fR\fBfx_dptbl.c\fR File Used for Building the New \fBfx_dptbl\fR
-.sp
-.LP
-The following is an example of a \fBfx_dptbl.c\fR file used for building the
-new \fBfx_dptbl\fR.
-
-.sp
-.in +2
-.nf
-/* BEGIN fx_dptbl.c */
-
-#include <sys/proc.h>
-#include <sys/priocntl.h>
-#include <sys/class.h>
-#include <sys/disp.h>
-#include <sys/fx.h>
-#include <sys/fxpriocntl.h>
-
-
-/*
- * This is the loadable module wrapper.
- */
-
-#include <sys/modctl.h>
-
-extern struct mod_ops mod_miscops;
-
-/*
- * Module linkage information for the kernel.
- */
-
-static struct modlmisc modlmisc = {
- &mod_miscops, "Fixed priority dispatch table"
-};
-
-static struct modlinkage modlinkage = {
- MODREV_1, &modlmisc, 0
-};
-
-_init()
-{
- return (mod_install(&modlinkage));
-}
-
-_info(modinfop)
- struct modinfo *modinfop;
-{
- return (mod_info(&modlinkage, modinfop));
-}
-
-#define FXGPUP0 0 /* Global priority for FX user priority 0 */
-fxdpent_t config_fx_dptbl[] = {
-
-/* glbpri qntm */
-
- FXGPUP0+0, 20,
- FXGPUP0+1, 20,
- FXGPUP0+2, 20,
- FXGPUP0+3, 20,
- FXGPUP0+4, 20,
- FXGPUP0+5, 20,
- FXGPUP0+6, 20,
- FXGPUP0+7, 20,
- FXGPUP0+8, 20,
- FXGPUP0+9, 20,
- FXGPUP0+10, 16,
- FXGPUP0+11, 16,
- FXGPUP0+12, 16,
- FXGPUP0+13, 16,
- FXGPUP0+14, 16,
- FXGPUP0+15, 16,
- FXGPUP0+16, 16,
- FXGPUP0+17, 16,
- FXGPUP0+18, 16,
- FXGPUP0+19, 16,
- FXGPUP0+20, 12,
- FXGPUP0+21, 12,
- FXGPUP0+22, 12,
- FXGPUP0+23, 12,
- FXGPUP0+24, 12,
- FXGPUP0+25, 12,
- FXGPUP0+26, 12,
- FXGPUP0+27, 12,
- FXGPUP0+28, 12,
- FXGPUP0+29, 12,
- FXGPUP0+30, 8,
- FXGPUP0+31, 8,
- FXGPUP0+32, 8,
- FXGPUP0+33, 8,
- FXGPUP0+34, 8,
- FXGPUP0+35, 8,
- FXGPUP0+36, 8,
- FXGPUP0+37, 8,
- FXGPUP0+38, 8,
- FXGPUP0+39, 8,
- FXGPUP0+40, 4,
- FXGPUP0+41, 4,
- FXGPUP0+42, 4,
- FXGPUP0+43, 4,
- FXGPUP0+44, 4,
- FXGPUP0+45, 4,
- FXGPUP0+46, 4,
- FXGPUP0+47, 4,
- FXGPUP0+48, 4,
- FXGPUP0+49, 4,
- FXGPUP0+50, 4,
- FXGPUP0+51, 4,
- FXGPUP0+52, 4,
- FXGPUP0+53, 4,
- FXGPUP0+54, 4,
- FXGPUP0+55, 4,
- FXGPUP0+56, 4,
- FXGPUP0+57, 4,
- FXGPUP0+58, 4,
- FXGPUP0+59, 2,
- FXGPUP0+60 2,
-};
-
-
-
-pri_t config_fx_maxumdpri =
- sizeof (config_fx_dptbl) / sizeof (fxdpent_t) - 1;
-
-/*
- * Return the address of config_fx_dptbl
- */
-fxdpent_t *
-fx_getdptbl()
-{
- return (config_fx_dptbl);
-}
-
-/*
- * Return the address of fx_maxumdpri
- */
-pri_t
-fx_getmaxumdpri()
-{
-/*
- * the config_fx_dptbl table.
- */
- return (config_fx_maxumdpri);
-}
-.fi
-.in -2
-.sp
-
-.SH SEE ALSO
-\fBpriocntl\fR(1), \fBdispadmin\fR(1M), \fBpriocntl\fR(2), \fBsystem\fR(4)
-.sp
-.LP
-\fISystem Administration Guide, Volume 1, System Interface Guide\fR
-.SH NOTES
-In order to improve performance under heavy system load, both the \fBnfsd\fR
-daemon and the \fBlockd\fR daemon utilize the maximum priority in the \fBFX\fR
-class. Unusual \fBfx_dptbl\fR configurations may have significant negative
-impact on the performance of the \fBnfsd\fR and \fBlockd\fR daemons.
diff --git a/usr/src/man/man4/gateways.4 b/usr/src/man/man4/gateways.4
deleted file mode 100644
index ae4abcf561..0000000000
--- a/usr/src/man/man4/gateways.4
+++ /dev/null
@@ -1,501 +0,0 @@
-'\" te
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
-.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH GATEWAYS 4 "May 20, 2009"
-.SH NAME
-gateways \- configuration file for /usr/sbin/in.routed IPv4 network routing
-daemon
-.SH SYNOPSIS
-.LP
-.nf
-\fB/etc/gateways\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fB/etc/gateways\fR file is used by the routing daemon,
-\fBin.routed\fR(1M). When the daemon starts, it reads \fB/etc/gateways\fR to
-find such distant gateways that cannot be located using only information from a
-routing socket, to discover if some of the local gateways are passive, and to
-obtain other parameters.
-.sp
-.LP
-The \fB/etc/gateways\fR file consists of a series of lines, each in one of the
-two formats shown below or consisting of parameters described later. Blank
-lines and lines starting with "\fB#\fR" are treated as comments.
-.sp
-.LP
-One format specifies networks:
-.sp
-.in +2
-.nf
-net Nname[/mask] gateway Gname metric value <passive | active | external>
-.fi
-.in -2
-
-.sp
-.LP
-The other format specifies hosts:
-.sp
-.in +2
-.nf
-host \fIHname\fR gateway \fIGname\fR metric \fIvalue\fR <passive | active | external>
-.fi
-.in -2
-
-.sp
-.LP
-Host \fIhname\fR is equivalent to \fBnet \fInname\fR/32\fR.
-.sp
-.LP
-The parameters in the lines shown above are described as follows:
-.sp
-.ne 2
-.na
-\fB\fINname\fR or \fIHname\fR\fR
-.ad
-.sp .6
-.RS 4n
-Name of the destination network or host. It can be a symbolic network name or
-an Internet address specified in \fBdot\fR notation (see \fBinet\fR(3SOCKET)).
-If it is a name, then it must either be defined in \fB/etc/networks\fR or
-\fB/etc/hosts\fR, or a naming service must have been started before
-\fBin.routed\fR(1M).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIMask\fR\fR
-.ad
-.sp .6
-.RS 4n
-An optional number between 1 and 32 indicating the netmask associated with
-Nname.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIGname\fR\fR
-.ad
-.sp .6
-.RS 4n
-Name or address of the gateway to which RIP responses should be forwarded.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIValue\fR\fR
-.ad
-.sp .6
-.RS 4n
-The hop count to the destination host or network.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpassive\fR | \fBactive\fR | \fBexternal\fR\fR
-.ad
-.sp .6
-.RS 4n
-One of these keywords must be present to indicate whether the gateway should be
-treated as passive or active, or whether the gateway is external to the scope
-of the RIP protocol. A passive gateway is not expected to exchange routing
-information, while gateways marked active should be willing to exchange RIP
-packets. See \fBin.routed\fR(1M) for further details.
-.RE
-
-.sp
-.LP
-After turning on debugging in \fBin.routed\fR with the \fB-t\fR option, you can
-see that lines that follow the format described above create pseudo-interfaces.
-To set parameters for remote or external interfaces, use a line starting with
-\fBif=alias(\fIHname\fR)\fR, \fBif=remote(\fIHname\fR)\fR, and so forth.
-.sp
-.LP
-For backward compatibility with the previous Solaris \fBin.routed\fR
-implementation, three special keyword formats are accepted. If present, these
-forms must each be on a separate line, and must not be combined on the same
-line with any of the keywords listed elsewhere in this document. These three
-forms are:
-.sp
-.ne 2
-.na
-\fB\fBnorip \fIifname\fR\fR\fR
-.ad
-.RS 19n
-Disable all RIP processing on the specified interface.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnoripin \fIifname\fR\fR\fR
-.ad
-.RS 19n
-Disable the processing of received RIP responses on the specified interface.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnoripout \fIifname\fR\fR\fR
-.ad
-.RS 19n
-Disable RIP output on the specified interface.
-.RE
-
-.sp
-.LP
-Lines that start with neither \fBnet\fR nor \fBhost\fR must consist of one or
-more of the following parameter settings, separated by commas or blanks:
-.sp
-.ne 2
-.na
-\fB\fB\fR\fBif=\fIifname\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Indicates that the other parameters on the line apply only to the interface
-name \fIifname\fR. If this parameter is not specified, then other parameters on
-the line apply to all interfaces.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsubnet=\fInname\fR[/\fImask\fR][,\fImetric\fR]\fR\fR
-.ad
-.sp .6
-.RS 4n
-Advertises a route to network nname with mask mask and the supplied metric
-(default 1). This is useful for filling \fBholes\fR in CIDR allocations. This
-parameter must appear by itself on a line. The network number must specify a
-full, 32-bit value, as in \fB192.0.2.0\fR instead of \fB192.0.2\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBripv1_mask=\fInname\fR/\fImask1\fR,\fImask2\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies that the netmask of the network of which \fInname\fR/\fImask1\fR is a
-subnet should be \fImask2\fR. For example, \fBripv1_mask=192.0.2.16/28,27\fR
-marks \fB192.0.2.16/28\fR as a subnet of \fB192.0.2.0/27\fR instead of
-\fB192.0.2.0/24\fR. It is better to turn on RIPv2 instead of using this
-facility. See the description of \fBripv2_out\fR, below.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpasswd=\fIXXX\fR[|\fIKeyID\fR[\fIstart\fR|\fIstop\fR]]\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies a RIPv2 cleartext password that will be included on all RIPv2
-responses sent, and checked on all RIPv2 responses received. Any blanks, tab
-characters, commas, or "\fB#\fR", "\fB|\fR", or NULL characters in the password
-must be escaped with a backslash (\fB\e\fR). The common escape sequences
-\fB\en\fR, \fB\er\fR, \fB\et\fR, \fB\eb\fR, and \fB\e\fIxxx\fR\fR have their
-usual meanings. The \fIKeyID\fR must be unique but is ignored for cleartext
-passwords. If present, \fIstart\fR and \fIstop\fR are timestamps in the form
-year/month/day@hour:minute. They specify when the password is valid. The valid
-password with the longest future is used on output packets, unless all
-passwords have expired, in which case the password that expired most recently
-is used. If no passwords are valid yet, no password is output. Incoming packets
-can carry any password that is valid, will be valid within 24 hours, or that
-was valid within 24 hours. To protect password secrecy, the passwd settings are
-valid only in the \fB/etc/gateways\fR file and only when that file is readable
-only by UID 0.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmd5_passwd=\fR\fIXXX\fR|\fIKeyID\fR[\fIstart\fR|\fIstop\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Specifies a RIPv2 MD5 password. Except that a KeyID is required, this keyword
-is similar to \fBpasswd\fR (described above).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBno_ag\fR\fR
-.ad
-.sp .6
-.RS 4n
-Turns off aggregation of subnets in RIPv1 and RIPv2 responses.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBno_host\fR\fR
-.ad
-.sp .6
-.RS 4n
-Turns off acceptance of host routes.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBno_super_ag\fR\fR
-.ad
-.sp .6
-.RS 4n
-Turns off aggregation of networks into supernets in RIPv2 responses.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpassive\fR\fR
-.ad
-.sp .6
-.RS 4n
-Marks the interface not to be advertised in updates sent over other interfaces,
-and turns off all RIP and router discovery through the interface.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBno_rip\fR\fR
-.ad
-.sp .6
-.RS 4n
-Disables all RIP processing on the specified interface. If no interfaces are
-allowed to process RIP packets, \fBin.routed\fR acts purely as a router
-discovery daemon.
-.sp
-Note that turning off RIP without explicitly turning on router discovery
-advertisements with \fBrdisc_adv\fR or \fB-s\fR causes \fBin.routed\fR to act
-as a client router discovery daemon, which does not advertise.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBno_rip_mcast\fR\fR
-.ad
-.sp .6
-.RS 4n
-Causes RIPv2 packets to be broadcast instead of multicast.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBno_ripv1_in\fR\fR
-.ad
-.sp .6
-.RS 4n
-Causes RIPv1 received responses to be ignored.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBno_ripv2_in\fR\fR
-.ad
-.sp .6
-.RS 4n
-Causes RIPv2 received responses to be ignored.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBripv2_out\fR\fR
-.ad
-.sp .6
-.RS 4n
-Turns on RIPv2 output and causes RIPv2 advertisements to be multicast when
-possible.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBripv2\fR\fR
-.ad
-.sp .6
-.RS 4n
-Equivalent to \fBno_ripv1_in\fR and \fBripv2_out\fR. This enables RIPv2 and
-disables RIPv1.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBno_rdisc\fR\fR
-.ad
-.sp .6
-.RS 4n
-Disables the Internet Router Discovery Protocol.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBno_solicit\fR\fR
-.ad
-.sp .6
-.RS 4n
-Disables the transmission of Router Discovery Solicitations.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsend_solicit\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies that Router Discovery solicitations should be sent, even on
-point-to-point links, which, by default, only listen to Router Discovery
-messages.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBno_rdisc_adv\fR\fR
-.ad
-.sp .6
-.RS 4n
-Disables the transmission of Router Discovery Advertisements.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrdisc_adv\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies that Router Discovery Advertisements should be sent, even on
-point-to-point links, which by default only listen to Router Discovery
-messages.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBbcast_rdisc\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies that Router Discovery packets should be broadcast instead of
-multicast.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrdisc_pref=\fIN\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets the preference in Router Discovery Advertisements to the optionally signed
-integer \fIN\fR. The default preference is 0. Default routes with higher or
-less negative preferences are preferred by clients.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrdisc_interval=\fIN\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets the nominal interval with which Router Discovery Advertisements are
-transmitted to \fIN\fR seconds and their lifetime to 3*\fIN\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfake_default=\fImetric\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Has an identical effect to \fB-F\fR \fBnet\fR[/\fImask\fR][=\fImetric\fR] with
-the network number and netmask coming from the specified interface.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpm_rdisc\fR\fR
-.ad
-.sp .6
-.RS 4n
-Similar to \fBfake_default\fR. To prevent RIPv1 listeners from receiving RIPv2
-routes when those routes are multicast, this feature causes a RIPv1 default
-route to be broadcast to RIPv1 listeners. Unless modified with
-\fBfake_default\fR, the default route is broadcast with a metric of 14. That
-serves as a \fBpoor man's router discovery\fR protocol.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBtrust_gateway=\fIrtr_name\fR[|\fInet1\fR/\fImask1\fR|\fInet2\fR/\fImask2\fR|...]\fR\fR
-.ad
-.sp .6
-.RS 4n
-Causes RIP packets from that router and other routers named in other
-\fBtrust_gateway\fR keywords to be accepted, and packets from other routers to
-be ignored. If networks are specified, then routes to other networks will be
-ignored from that router.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBredirect_ok\fR\fR
-.ad
-.sp .6
-.RS 4n
-Causes RIP to allow ICMP Redirect messages when the system is acting as a
-router and forwarding packets. Otherwise, ICMP Redirect messages are
-overridden.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrip_neighbor=\fIx.x.x.x\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-By default, RIPv1 advertisements over point-to-point links are sent to the
-peer's address (255.255.255.255, if none is available), and RIPv2
-advertisements are sent to either the RIP multicast address or the peer's
-address if \fBno_rip_mcast\fR is set. This option overrides those defaults and
-configures a specific address to use on the indicated interface. This can be
-used to set a broadcast type advertisement on a point-to-point link.
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBin.routed\fR(1M), \fBroute\fR(1M), \fBrtquery\fR(1M), \fBinet\fR(3SOCKET),
-.sp
-.LP
-\fIInternet Transport Protocols, XSIS 028112, Xerox System Integration
-Standard\fR
diff --git a/usr/src/man/man4/group.4 b/usr/src/man/man4/group.4
deleted file mode 100644
index 025c936b78..0000000000
--- a/usr/src/man/man4/group.4
+++ /dev/null
@@ -1,161 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH GROUP 4 "Feb 25, 2017"
-.SH NAME
-group \- group file
-.SH DESCRIPTION
-.LP
-The \fBgroup\fR file is a local source of group information. The \fBgroup\fR
-file can be used in conjunction with other group sources, including the
-\fBNIS\fR maps \fBgroup.byname\fR and \fBgroup.bygid\fR, or group information
-stored on an LDAP server. Programs use the
-\fBgetgrnam\fR(3C) routines to access this information.
-.sp
-.LP
-The \fBgroup\fR file contains a one-line entry for each group recognized by the
-system, of the form:
-.sp
-.LP
-\fIgroupname\fR:\fIpassword\fR: \fIgid\fR:\fIuser-list\fR
-.sp
-.LP
-where
-.sp
-.ne 2
-.na
-\fB\fIgroupname\fR\fR
-.ad
-.RS 13n
-The name of the group. A string consisting of lower case alphabetic characters
-and numeric characters. Neither a colon (\fB:\fR) nor a NEWLINE can be part of
-a \fIgroupname\fR. The string must be less than \fBMAXGLEN-1\fR, usually
-\fB8\fR, characters long.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIgid\fR\fR
-.ad
-.RS 13n
-The group's unique numerical ID (GID) within the system.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIuser-list\fR\fR
-.ad
-.RS 13n
-A comma-separated list of users allowed in the group.
-.RE
-
-.sp
-.LP
-The maximum value of the \fIgid\fR field is 2147483647. To maximize
-interoperability and compatibility, administrators are recommended to assign
-groups using the range of GIDs below 60000 where possible.
-.sp
-.LP
-If the password field is empty, no password is demanded. During user
-identification and authentication, the supplementary group access list is
-initialized sequentially from information in this file. If a user is in more
-groups than the system is configured for, \fB{NGROUPS_MAX}\fR, a warning will
-be given and subsequent group specifications will be ignored.
-.sp
-.LP
-Malformed entries cause routines that read this file to halt, in which case
-group assignments specified further along are never made. To prevent this from
-happening, use \fBgrpck\fR(1B) to check the \fB/etc/group\fR database from time
-to time.
-.sp
-.LP
-If the number of characters in an entry exceeds 2047, group maintenance
-commands, such as \fBgroupdel\fR(1M) and \fBgroupmod\fR(1M), fail.
-.sp
-.LP
-Previous releases used a group entry beginning with a `\fB+\fR' (plus sign) or
-`\fB\(mi\fR\&' (minus sign) to selectively incorporate entries from a naming
-service source (for example, an NIS map or data from an LDAP server) for group.
-If still required, this is supported by specifying \fBgroup:compat\fR in
-\fBnsswitch.conf\fR(4). The \fBcompat\fR source may not be supported in future
-releases. Possible sources are \fBfiles\fR followed by \fBldap\fR.
-This has the effect of incorporating information from an LDAP
-server after the \fBgroup\fR file.
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRExample \fBgroup\fR File.
-.sp
-.LP
-The following is an example of a \fBgroup\fR file:
-
-.sp
-.in +2
-.nf
-\fBroot::0:root
-stooges:q.mJzTnu8icF.:10:larry,moe,curly\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-and the sample group entry from \fBnsswitch.conf\fR:
-
-.sp
-.in +2
-.nf
-\fBgroup: files ldap\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-With these entries, the group \fBstooges\fR will have members \fBlarry\fR,
-\fBmoe\fR, and \fBcurly\fR, and all groups listed on the LDAP server are
-effectively incorporated after the entry for \fBstooges\fR.
-
-.sp
-.LP
-If the \fBgroup\fR file was:
-
-.sp
-.in +2
-.nf
-root::0:root
-stooges:q.mJzTnu8icF.:10:larry,moe,curly
-+:
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-and the group entry from \fBnsswitch.conf\fR:
-
-.sp
-.in +2
-.nf
-\fBgroup: compat\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-all the groups listed in the \fBNIS\fR \fBgroup.bygid\fR and \fBgroup.byname\fR
-maps would be effectively incorporated after the entry for stooges.
-
-.SH SEE ALSO
-.LP
-\fBgroups\fR(1), \fBgrpck\fR(1B), \fBnewgrp\fR(1), \fBgroupadd\fR(1M),
-\fBgroupdel\fR(1M), \fBgroupmod\fR(1M), \fBgetgrnam\fR(3C),
-\fBinitgroups\fR(3C), \fBnsswitch.conf\fR(4), \fBunistd.h\fR(3HEAD)
-.sp
-.LP
-\fISystem Administration Guide: Basic Administration\fR
diff --git a/usr/src/man/man4/gsscred.conf.4 b/usr/src/man/man4/gsscred.conf.4
deleted file mode 100644
index d8764f1f14..0000000000
--- a/usr/src/man/man4/gsscred.conf.4
+++ /dev/null
@@ -1,64 +0,0 @@
-'\" te
-.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH GSSCRED.CONF 4 "Mar 17, 2004"
-.SH NAME
-gsscred.conf \- Generic Security Services credential configuration file
-.SH SYNOPSIS
-.LP
-.nf
-\fB/etc/gss/gsscred.conf\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBgsscred.conf\fR file contains GSS credential information including
-options that can be set by the system administrator.
-.sp
-.LP
-The options that are in this file include:
-.sp
-.in +2
-.nf
-SYSLOG_UID_MAPPING=yes
-.fi
-.in -2
-
-.sp
-.LP
-If this option is set to \fByes\fR, GSS cred to Unix cred mapping results will
-be logged to \fBsyslog\fR(3C) at level \fBauth.debug\fR.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/gss/gsscred.conf\fR\fR
-.ad
-.RS 25n
-Contains GSS credential information.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBgsscred\fR(1M), \fBgssd\fR(1M), \fBsyslog\fR(3C), \fBkrb5.conf\fR(4),
-\fBattributes\fR(5), \fBkerberos\fR(5)
diff --git a/usr/src/man/man4/hba.conf.4 b/usr/src/man/man4/hba.conf.4
deleted file mode 100644
index a6434e19dd..0000000000
--- a/usr/src/man/man4/hba.conf.4
+++ /dev/null
@@ -1,104 +0,0 @@
-'\" te
-.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH HBA.CONF 4 "Sep 4, 2003"
-.SH NAME
-hba.conf \- configuration file for the HBAAPI library
-.SH DESCRIPTION
-.sp
-.LP
-The \fB/etc/hba.conf\fR file is used to specify the Vendor-Specific Libraries
-that are installed on the system. This file is used by the Common Library to
-load the individual VSLs when \fBHBA_LoadLibrary\fR(3HBAAPI) is called. If
-changes are made to the file while the library is in use, the library should be
-freed and reloaded. A version 1 VSL is compatible only with a version 1 Common
-Library. A version 2 VSL is compatible with both a version 1 and a version 2
-Common Library.
-.sp
-.LP
-Each VSL entry is a single line of the form:
-.sp
-.in +2
-.nf
-"name" "library path"
-.fi
-.in -2
-
-.sp
-.LP
-where:
-.sp
-.ne 2
-.na
-\fB\fIname\fR\fR
-.ad
-.RS 16n
-is the description of library. The library name should be prepended with the
-domain of the manufacturer of the library.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIlibrary path\fR\fR
-.ad
-.RS 16n
-is the absolute path to the shared object library file.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRContents of \fB/etc/hba.conf\fR
-.sp
-.in +2
-.nf
-#
-# This file contains names and references to HBA libraries
-#
-# Format:
-#
-# <library name> <library pathname>
-#
-# The library name should be prepended with the domain of
-# the manufacturer or driver author.
-com.sun.fchba32 /usr/lib/libsun_fc.so.1
-com.sun.fchba64 /usr/lib/sparcv9/libsun_fc.so.1
-.fi
-.in -2
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Standard: FC-MI 1.92 (API version 1)
-_
- T{
-Standard: FC-HBA Version 4 (API version 2)
-T}
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBHBA_LoadLibrary\fR(3HBAAPI), \fBlibhbaapi\fR(3LIB), \fBattributes\fR(5)
-.SH BUGS
-.sp
-.LP
-The HBAAPI is provided in both 32- and 64-bit versions, but only one
-configuration file is specified. As a result, both 32- and 64-bit VSL libraries
-must be specified within the same file. When using the 32-bit Common Library,
-the 64-bit VSLs will fail to load. When using the 64-bit Common Library, the
-32-bit VSLs will fail to load. These failures are silently ignored by the
-Common Library during normal usage, but can result in warning messages when
-running client applications in a debugger.
diff --git a/usr/src/man/man4/holidays.4 b/usr/src/man/man4/holidays.4
deleted file mode 100644
index 2e86b41cb2..0000000000
--- a/usr/src/man/man4/holidays.4
+++ /dev/null
@@ -1,94 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH HOLIDAYS 4 "Aug 18, 2008"
-.SH NAME
-holidays \- prime/nonprime table for the accounting system
-.SH SYNOPSIS
-.LP
-.nf
-\fB/etc/acct/holidays\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fB/etc/acct/holidays\fR file specifies prime time hours and holidays.
-Holidays and weekends are considered non-prime time hours.
-.sp
-.LP
-\fB/etc/acct/holidays\fR is used by the accounting system.
-.sp
-.LP
-All lines beginning with an \fB*\fR are comments.
-.sp
-.LP
-The \fB/etc/acct/holidays\fR file consists of two sections. The first
-non-comment line defines the current year and the start time of prime and
-non-prime time hours, in the form of:
-.sp
-.in +2
-.nf
-\fIcurrent_year\fR \fIprime_start\fR \fInon_prime_start\fR
-.fi
-.in -2
-
-.sp
-.LP
-Specify \fIprime_start\fR and \fInon_prime_start\fR times in the range of
-\fB0000\fR to \fB2400\fR.
-.sp
-.LP
-The remaining non-comment lines define the holidays in the form of:
-.sp
-.in +2
-.nf
-\fImonth/day\fR \fIcompany_holiday\fR
-.fi
-.in -2
-
-.sp
-.LP
-Of these two fields, only the \fImonth/day\fR is actually used by the
-accounting system programs.
-.sp
-.LP
-The \fB/etc/acct/holidays\fR file must be updated every year.
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRAn Example of the \fB/etc/acct/holidays\fR File
-.sp
-.LP
-The following is an example of the \fB/etc/acct/holidays\fR file:
-
-.sp
-.in +2
-.nf
-* Prime/Nonprime Table for the accounting system
-*
-* Curr Prime Non-Prime
-* Year Start Start
-*
- 1991 0830 1800
-*
-* only the first column (month/day) is significant.
-*
-* month/day Company Holiday
-*
- 1/1 New Years Day
- 5/30 Memorial Day
- 7/4 Indep. Day
- 9/5 Labor Day
- 11/24 Thanksgiving Day
- 11/25 day after Thanksgiving
- 12/25 Christmas
- 12/26 day after Christmas
-.fi
-.in -2
-
-.SH SEE ALSO
-.sp
-.LP
-\fBacct\fR(1M)
diff --git a/usr/src/man/man4/hosts.4 b/usr/src/man/man4/hosts.4
deleted file mode 100644
index d8c36d4e49..0000000000
--- a/usr/src/man/man4/hosts.4
+++ /dev/null
@@ -1,177 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 1988, 1995 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH HOSTS 4 "Feb 25, 2017"
-.SH NAME
-hosts \- host name database
-.SH SYNOPSIS
-.LP
-.nf
-\fB/etc/inet/hosts\fR
-.fi
-
-.LP
-.nf
-\fB/etc/hosts\fR
-.fi
-
-.LP
-.nf
-\fB/etc/inet/ipnodes\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBhosts\fR file is a local database that associates the names of hosts
-with their Internet Protocol (IP) addresses. An IP address can be in either
-IPv4 or IPv6 format. The \fBhosts\fR file can be used in conjunction with, or
-instead of, other hosts databases, including the Domain Name System (DNS), the
-NIS \fBhosts\fR map, or information from an LDAP
-server. Programs use library interfaces to access information in the
-\fBhosts\fR file.
-.sp
-.LP
-Note that \fB/etc/hosts\fR and \fB/etc/inet/ipnodes\fR are symbolic links to
-\fB/etc/inet/hosts\fR.
-.sp
-.LP
-The \fBhosts\fR file has one entry for each IP address of each host. If a host
-has more than one IP address, it will have one entry for each, on consecutive
-lines. The format of each line is:
-.sp
-.LP
-\fIIP-address\fR \fIofficial-host-name\fR \fInicknames\|.\|.\|\fR.
-.sp
-.LP
-Items are separated by any number of \fBSPACE\fR and/or \fBTAB\fR characters.
-The first item on a line is the host's IP address. The second entry is the
-host's official name. Subsequent entries on the same line are alternative names
-for the same machine, or "nicknames." Nicknames are optional.
-.sp
-.LP
-For a host with more than one IP address, consecutive entries for these
-addresses may contain the same or differing nicknames. Different nicknames are
-useful for assigning distinct names to different addresses.
-.sp
-.LP
-A call to \fBgethostbyname\fR(3NSL) returns a \fBhostent\fR structure
-containing the union of all IPv4 addresses and nicknames from each line
-containing a matching official name or nickname. A call to
-\fBgetipnodebyname\fR(3SOCKET) is similar, but is capable of returning
-\fBhostent\fR structures containing IPv4 and IPv6 addresses. Applications might
-prefer to use the address-family independent \fBgetaddrinfo\fR(3SOCKET) API for
-name-to-address lookups.
-.sp
-.LP
-A `\fB#\fR' indicates the beginning of a comment; characters up to the end of
-the line are not interpreted by routines that search the file.
-.sp
-.LP
-Network addresses are written in one of two ways:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The conventional "decimal dot" notation and interpreted using the
-\fBinet_addr\fR routine from the Internet address manipulation library,
-\fBinet\fR(3SOCKET).
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The IP Version 6 protocol [IPV6], defined in RFC 1884 and interpreted using the
-\fBinet_pton()\fR routine from the Internet address manipulation library. See
-\fBinet\fR(3SOCKET).
-.RE
-.sp
-.LP
-This interface supports node names as defined in Internet RFC 952, which
-states:
-.sp
-.LP
-A "name" (Net, Host, Gateway, or Domain name) is a text string up to 24
-characters drawn from the alphabet (A-Z), digits (0-9), minus sign (\(mi), and
-period (.). Note that periods are only allowed when they serve to delimit
-components of "domain style names". (See RFC 921, "Domain Name System
-Implementation Schedule," for background). No blank or space characters are
-permitted as part of a name. No distinction is made between uppercase and
-lowercase. The first character must be an alpha character [or a digit. (RFC
-1123 relaxed RFC 952's limitation of the first character to only alpha
-characters.)] The last character must not be a minus sign or period.
-.sp
-.LP
-Host names must not consist of numbers only. A host name must contain at least
-one alphabetical or special character.
-.sp
-.LP
-Although the interface accepts host names longer than 24 characters for the
-host portion (exclusive of the domain component), choosing names for hosts that
-adhere to the 24 character restriction will insure maximum interoperability on
-the Internet.
-.sp
-.LP
-A host which serves as a GATEWAY should have "\(miGATEWAY" or "\(miGW" as part
-of its name. Hosts which do not serve as Internet gateways should not use
-"\(miGATEWAY" and "\(miGW" as part of their names. A host which is a TAC should
-have "\(miTAC" as the last part of its host name, if it is a DoD host. Single
-character names or nicknames are not allowed.
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRExample \fBhosts\fR File Entry
-.sp
-.LP
-The following is a typical line from the \fBhosts\fR file:
-
-.sp
-.in +2
-.nf
-192.9.1.20 gaia # John Smith
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRExample IPv6 Address Entry
-.sp
-.LP
-The following is an example of an IPv6 \fBhosts\fR entry:
-
-.sp
-.in +2
-.nf
-2001:0db8:3c4d:55:a00:20ff:fe8e:f3ad myhost # John Smith
-.fi
-.in -2
-.sp
-
-.SH SEE ALSO
-.LP
-\fBgethostbyname\fR(3NSL), \fBgetipnodebyname\fR(3SOCKET), \fBinet\fR(3SOCKET),
-\fBnsswitch.conf\fR(4), \fBresolv.conf\fR(4)
-.sp
-.LP
-Braden, B., editor, RFC 1123, \fIRequirements for Internet Hosts - Application
-and Support\fR, Network Working Group, October, 1989.
-.sp
-.LP
-Harrenstien, K., Stahl, M., and Feinler, E., RFC 952, \fIDOD Internet Host
-Table Specification\fR, Network Working Group, October 1985.
-.sp
-.LP
-Hinden, R., and Deering, S., editors, RFC 1884, \fIIP Version 6 Addressing
-Architecture\fR, Network Working Group, December, 1995.
-.sp
-.LP
-Postel, Jon, RFC 921, \fIDomain Name System Implementation Schedule
-(Revised)\fR, Network Working Group, October 1984.
-.SH NOTES
-.LP
-\fB/etc/inet/hosts\fR is the official SVR4 name of the \fBhosts\fR file. The
-symbolic link \fB/etc/hosts\fR exists for \fBBSD\fR compatibility.
-.sp
-.LP
-The symbolic link \fB/etc/net/ipnodes\fR exists for backwards compatibility
-with previous Solaris releases.
diff --git a/usr/src/man/man4/hosts.equiv.4 b/usr/src/man/man4/hosts.equiv.4
deleted file mode 100644
index 81679a1aa8..0000000000
--- a/usr/src/man/man4/hosts.equiv.4
+++ /dev/null
@@ -1,331 +0,0 @@
-'\" te
-.\" Copyright (c) 1997, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH HOSTS.EQUIV 4 "Nov 26, 2017"
-.SH NAME
-hosts.equiv, rhosts \- trusted remote hosts and users
-.SH DESCRIPTION
-.LP
-The \fB/etc/hosts.equiv\fR and \fB\&.rhosts\fR files provide the "remote
-authentication" database for \fBrlogin\fR(1), \fBrsh\fR(1), \fBrcp\fR(1), and
-\fBrcmd\fR(3SOCKET). The files specify remote hosts and users that are
-considered "trusted". Trusted users are allowed to access the local system
-without supplying a password. The library routine \fBruserok()\fR (see
-\fBrcmd\fR(3SOCKET)) performs the authentication procedure for programs by
-using the \fB/etc/hosts.equiv\fR and \fB\&.rhosts\fR files. The
-\fB/etc/hosts.equiv\fR file applies to the entire system, while individual
-users can maintain their own \fB\&.rhosts\fR files in their home directories.
-.sp
-.LP
-These files bypass the standard password-based user authentication mechanism.
-To maintain system security, care must be taken in creating and maintaining
-these files.
-.sp
-.LP
-The remote authentication procedure determines whether a user from a remote
-host should be allowed to access the local system with the identity of a local
-user. This procedure first checks the \fB/etc/hosts.equiv\fR file and then
-checks the \fB\&.rhosts\fR file in the home directory of the local user who is
-requesting access. Entries in these files can be of two forms. Positive entries
-allow access, while negative entries deny access. The authentication succeeds
-when a matching positive entry is found. The procedure fails when the first
-matching negative entry is found, or if no matching entries are found in either
-file. The order of entries is important. If the files contain both positive and
-negative entries, the entry that appears first will prevail. The \fBrsh\fR(1)
-and \fBrcp\fR(1) programs fail if the remote authentication procedure fails.
-The \fBrlogin\fR program falls back to the standard password-based login
-procedure if the remote authentication fails.
-.sp
-.LP
-Both files are formatted as a list of one-line entries. Each entry has the
-form:
-.sp
-.in +2
-.nf
-\fIhostname\fR [\fIusername\fR]
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Hostnames must be the official name of the host, not one of its nicknames.
-.sp
-.LP
-Negative entries are differentiated from positive entries by a `\(mi' character
-preceding either the \fIhostname\fR or \fIusername\fR field.
-.SS "Positive Entries"
-.LP
-If the form:
-.sp
-.in +2
-.nf
-\fIhostname\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-is used, then users from the named host are trusted. That is, they may access
-the system with the same user name as they have on the remote system. This form
-may be used in both the \fB/etc/hosts.equiv\fR and \fB\&.rhosts\fR files.
-.sp
-.LP
-If the line is in the form:
-.sp
-.in +2
-.nf
-\fIhostname\fR \fIusername\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-then the named user from the named host can access the system. This form may be
-used in individual \fB\&.rhosts\fR files to allow remote users to access the
-system \fIas a different local user\fR. If this form is used in the
-\fB/etc/hosts.equiv\fR file, the named remote user will be allowed to access
-the system as \fBany\fR local user.
-.sp
-.LP
-\fBnetgroup\fR(4) can be used in either the \fIhostname\fR or \fIusername\fR
-fields to match a number of hosts or users in one entry. The form:
-.sp
-.in +2
-.nf
-\fB+@\fR\fInetgroup\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-allows access from all hosts in the named netgroup. When used in the
-\fIusername\fR field, netgroups allow a group of remote users to access the
-system as a particular local user. The form:
-.sp
-.in +2
-.nf
-\fIhostname\fR \fB+@\fR\fInetgroup\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-allows all of the users in the named netgroup from the named host to access the
-system as the local user. The form:
-.sp
-.in +2
-.nf
-\fB+@\fR\fInetgroup1\fR \fB+@\fR\fInetgroup2\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-allows the users in \fInetgroup2\fR from the hosts in \fInetgroup1\fR to access
-the system as the local user.
-.sp
-.LP
-The special character `+' can be used in place of either \fIhostname\fR or
-\fIusername\fR to match any host or user. For example, the entry
-.sp
-.in +2
-.nf
-\fB+\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-will allow a user from any remote host to access the system with the same
-username. The entry
-.sp
-.in +2
-.nf
-\fB+\fR \fIusername\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-will allow the named user from any remote host to access the system. The entry
-.sp
-.in +2
-.nf
-\fIhostname\fR \fB+\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-will allow any user from the named host to access the system as the local user.
-.SS "Negative Entries"
-.LP
-Negative entries are preceded by a `\(mi' sign. The form:
-.sp
-.in +2
-.nf
-\fB\(mi\fR\fIhostname\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-will disallow all access from the named host. The form:
-.sp
-.in +2
-.nf
-\fB\(mi@\fR\fInetgroup\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-means that access is explicitly disallowed from all hosts in the named
-netgroup. The form:
-.sp
-.in +2
-.nf
-\fIhostname\fR \fB\(mi\fR\fIusername\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-disallows access by the named user only from the named host, while the form:
-.sp
-.in +2
-.nf
-\fB+ \(mi@\fR\fInetgroup\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-will disallow access by all of the users in the named netgroup from all hosts.
-.SS "Search Sequence"
-.LP
-To help maintain system security, the \fB/etc/hosts.equiv\fR file is not
-checked when access is being attempted for super-user. If the user attempting
-access is not the super-user, \fB/etc/hosts.equiv\fR is searched for lines of
-the form described above. Checks are made for lines in this file in the
-following order:
-.RS +4
-.TP
-1.
-\fB+\fR
-.RE
-.RS +4
-.TP
-2.
-\fB+@\fR\fInetgroup\fR
-.RE
-.RS +4
-.TP
-3.
-\fB\(mi@\fR\fInetgroup\fR
-.RE
-.RS +4
-.TP
-4.
-\fB\(mi\fR\fIhostname\fR
-.RE
-.RS +4
-.TP
-5.
-\fIhostname\fR
-.RE
-.sp
-.LP
-The user is granted access if a positive match occurs. Negative entries apply
-only to \fB/etc/hosts.equiv\fR and may be overridden by subsequent
-\fB\&.rhosts\fR entries.
-.sp
-.LP
-If no positive match occurred, the \fB\&.rhosts\fR file is then searched if the
-user attempting access maintains such a file. This file is searched whether or
-not the user attempting access is the super-user. As a security feature, the
-\fB\&.rhosts\fR file must be owned by the user who is attempting access. Checks
-are made for lines in \fB\&.rhosts\fR in the following order:
-.RS +4
-.TP
-1.
-\fB+\fR
-.RE
-.RS +4
-.TP
-2.
-\fB+@\fR\fInetgroup\fR
-.RE
-.RS +4
-.TP
-3.
-\fB\(mi@\fR\fInetgroup\fR
-.RE
-.RS +4
-.TP
-4.
-\fB\(mi\fR\fIhostname\fR
-.RE
-.RS +4
-.TP
-5.
-\fIhostname\fR
-.RE
-.SH FILES
-.ne 2
-.na
-\fB\fB/etc/hosts.equiv\fR\fR
-.ad
-.RS 20n
-system trusted hosts and users
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB~/.rhosts\fR\fR
-.ad
-.RS 20n
-user's trusted hosts and users
-.RE
-
-.SH SEE ALSO
-.LP
-\fBrcp\fR(1), \fBrlogin\fR(1), \fBrsh\fR(1), \fBrcmd\fR(3SOCKET),
-\fBhosts\fR(4), \fBnetgroup\fR(4), \fBpasswd\fR(4)
-.SH WARNINGS
-.LP
-Positive entries in \fB/etc/hosts.equiv\fR that include a \fIusername\fR field
-(either an individual named user, a netgroup, or `\fB+\fR' sign) should be
-used with extreme caution. Because \fB/etc/hosts.equiv\fR applies system-wide,
-these entries allow one, or a group of, remote users to access the system
-\fBas any local user\fR. This can be a security hole. For example, because of
-the search sequence, an \fB/etc/hosts.equiv\fR file consisting of the entries
-.sp
-.in +2
-.nf
-\fB+
-\(mihostxxx\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-will not deny access to "hostxxx".
diff --git a/usr/src/man/man4/hosts_access.4 b/usr/src/man/man4/hosts_access.4
deleted file mode 100644
index ebeaa7f513..0000000000
--- a/usr/src/man/man4/hosts_access.4
+++ /dev/null
@@ -1,399 +0,0 @@
-'\" t
-.\"
-.\" Modified for Solaris to to add the Solaris stability classification,
-.\" and to add a note about source availability.
-.\"
-.TH HOSTS_ACCESS 4 "May 13, 2017"
-.SH NAME
-hosts_access \- format of host access control files
-.SH DESCRIPTION
-This manual page describes a simple access control language that is
-based on client (host name/address, user name), and server (process
-name, host name/address) patterns. Examples are given at the end. The
-impatient reader is encouraged to skip to the EXAMPLES section for a
-quick introduction.
-.PP
-An extended version of the access control language is described in the
-\fIhosts_options\fR(4) document. The extensions are turned on at
-program build time by building with -DPROCESS_OPTIONS.
-.PP
-In the following text, \fIdaemon\fR is the process name of a
-network daemon process, and \fIclient\fR is the name and/or address of
-a host requesting service. Network daemon process names are specified
-in the inetd configuration file.
-.SH ACCESS CONTROL FILES
-The access control software consults two files. The search stops
-at the first match:
-.IP \(bu
-Access will be granted when a (daemon,client) pair matches an entry in
-the \fI/etc/hosts.allow\fR file.
-.IP \(bu
-Otherwise, access will be denied when a (daemon,client) pair matches an
-entry in the \fI/etc/hosts.deny\fR file.
-.IP \(bu
-Otherwise, access will be granted.
-.PP
-A non-existing access control file is treated as if it were an empty
-file. Thus, access control can be turned off by providing no access
-control files.
-.SH ACCESS CONTROL RULES
-Each access control file consists of zero or more lines of text. These
-lines are processed in order of appearance. The search terminates when a
-match is found.
-.IP \(bu
-A newline character is ignored when it is preceded by a backslash
-character. This permits you to break up long lines so that they are
-easier to edit.
-.IP \(bu
-Blank lines or lines that begin with a `#\' character are ignored.
-This permits you to insert comments and whitespace so that the tables
-are easier to read.
-.IP \(bu
-All other lines should satisfy the following format, things between []
-being optional:
-.sp
-daemon_list : client_list [ : shell_command ]
-.PP
-\fIdaemon_list\fR is a list of one or more daemon process names
-(argv[0] values) or wildcards (see below).
-.PP
-\fIclient_list\fR is a list
-of one or more host names, host addresses, patterns or wildcards (see
-below) that will be matched against the client host name or address.
-.PP
-The more complex forms \fIdaemon@host\fR and \fIuser@host\fR are
-explained in the sections on server endpoint patterns and on client
-username lookups, respectively.
-.PP
-List elements should be separated by blanks and/or commas.
-.PP
-With the exception of NIS (YP) netgroup lookups, all access control
-checks are case insensitive.
-.ne 4
-.SH HOST ADDRESSES
-IPv4 client addresses can be denoted in their usual dotted notation, i.e.
-x.x.x.x, but IPv6 addresses require a square brace around them - e.g.
-[::1].
-.SH PATTERNS
-The access control language implements the following patterns:
-.IP \(bu
-A string that begins with a `.\' character. A host name is matched if
-the last components of its name match the specified pattern. For
-example, the pattern `.tue.nl\' matches the host name
-`wzv.win.tue.nl\'.
-.IP \(bu
-A string that ends with a `.\' character. A host address is matched if
-its first numeric fields match the given string. For example, the
-pattern `131.155.\' matches the address of (almost) every host on the
-Eind\%hoven University network (131.155.x.x).
-.IP \(bu
-A string that begins with an `@\' character is treated as an NIS
-(formerly YP) netgroup name. A host name is matched if it is a host
-member of the specified netgroup. Netgroup matches are not supported
-for daemon process names or for client user names.
-.IP \(bu
-An expression of the form `n.n.n.n/m.m.m.m\' is interpreted as a
-`net/mask\' pair. A host address is matched if `net\' is equal to the
-bitwise AND of the address and the `mask\'. For example, the net/mask
-pattern `131.155.72.0/255.255.254.0\' matches every address in the
-range `131.155.72.0\' through `131.155.73.255\'.
-.IP \(bu
-Prefixes can be specified for IPv6 address, e.g. [2001:DB8::/32]
-.SH WILDCARDS
-The access control language supports explicit wildcards:
-.IP ALL
-The universal wildcard, always matches.
-.IP LOCAL
-Matches any host whose name does not contain a dot character.
-.IP UNKNOWN
-Matches any user whose name is unknown, and matches any host whose name
-\fIor\fR address are unknown. This pattern should be used with care:
-host names may be unavailable due to temporary name server problems. A
-network address will be unavailable when the software cannot figure out
-what type of network it is talking to.
-.IP KNOWN
-Matches any user whose name is known, and matches any host whose name
-\fIand\fR address are known. This pattern should be used with care:
-host names may be unavailable due to temporary name server problems. A
-network address will be unavailable when the software cannot figure out
-what type of network it is talking to.
-.IP PARANOID
-Matches any host whose name does not match its address. When tcpd is
-built with -DPARANOID (default mode), it drops requests from such
-clients even before looking at the access control tables. Build
-without -DPARANOID when you want more control over such requests.
-.ne 6
-.SH OPERATORS
-.IP EXCEPT
-Intended use is of the form: `list_1 EXCEPT list_2\'; this construct
-matches anything that matches \fIlist_1\fR unless it matches
-\fIlist_2\fR. The EXCEPT operator can be used in daemon_lists and in
-client_lists. The EXCEPT operator can be nested: if the control
-language would permit the use of parentheses, `a EXCEPT b EXCEPT c\'
-would parse as `(a EXCEPT (b EXCEPT c))\'.
-.br
-.ne 6
-.SH SHELL COMMANDS
-If the first-matched access control rule contains a shell command, that
-command is subjected to %<letter> substitutions (see next section).
-The result is executed by a \fI/bin/sh\fR child process with standard
-input, output and error connected to \fI/dev/null\fR. Specify an `&\'
-at the end of the command if you do not want to wait until it has
-completed.
-.PP
-Shell commands should not rely on the PATH setting of the inetd.
-Instead, they should use absolute path names, or they should begin with
-an explicit PATH=whatever statement.
-.PP
-The \fIhosts_options\fR(4) document describes an alternative language
-that uses the shell command field in a different and incompatible way.
-.SH % EXPANSIONS
-The following expansions are available within shell commands:
-.IP "%a (%A)"
-The client (server) host address.
-.IP %c
-Client information: user@host, user@address, a host name, or just an
-address, depending on how much information is available.
-.IP %d
-The daemon process name (argv[0] value).
-.IP "%h (%H)"
-The client (server) host name or address, if the host name is
-unavailable.
-.IP "%n (%N)"
-The client (server) host name (or "unknown" or "paranoid").
-.IP %p
-The daemon process id.
-.IP %s
-Server information: daemon@host, daemon@address, or just a daemon name,
-depending on how much information is available.
-.IP %u
-The client user name (or "unknown").
-.IP %%
-Expands to a single `%\' character.
-.PP
-Characters in % expansions that may confuse the shell are replaced by
-underscores.
-.SH SERVER ENDPOINT PATTERNS
-In order to distinguish clients by the network address that they
-connect to, use patterns of the form:
-.sp
-process_name@host_pattern : client_list ...
-.sp
-Patterns like these can be used when the machine has different internet
-addresses with different internet hostnames. Service providers can use
-this facility to offer FTP, GOPHER or WWW archives with internet names
-that may even belong to different organizations. See also the `twist'
-option in the hosts_options(4) document. Some systems (Solaris,
-FreeBSD) can have more than one internet address on one physical
-interface; with other systems you may have to resort to SLIP or PPP
-pseudo interfaces that live in a dedicated network address space.
-.sp
-The host_pattern obeys the same syntax rules as host names and
-addresses in client_list context. Usually, server endpoint information
-is available only with connection-oriented services.
-.SH CLIENT USERNAME LOOKUP
-When the client host supports the RFC 931 protocol or one of its
-descendants (TAP, IDENT, RFC 1413) the wrapper programs can retrieve
-additional information about the owner of a connection. Client username
-information, when available, is logged together with the client host
-name, and can be used to match patterns like:
-.PP
-daemon_list : ... user_pattern@host_pattern ...
-.PP
-The daemon wrappers can be configured at compile time to perform
-rule-driven username lookups (default) or to always interrogate the
-client host. In the case of rule-driven username lookups, the above
-rule would cause username lookup only when both the \fIdaemon_list\fR
-and the \fIhost_pattern\fR match.
-.PP
-A user pattern has the same syntax as a daemon process pattern, so the
-same wildcards apply (netgroup membership is not supported). One
-should not get carried away with username lookups, though.
-.IP \(bu
-The client username information cannot be trusted when it is needed
-most, i.e. when the client system has been compromised. In general,
-ALL and (UN)KNOWN are the only user name patterns that make sense.
-.IP \(bu
-Username lookups are possible only with TCP-based services, and only
-when the client host runs a suitable daemon; in all other cases the
-result is "unknown".
-.IP \(bu
-A well-known UNIX kernel bug may cause loss of service when username
-lookups are blocked by a firewall. The wrapper README document
-describes a procedure to find out if your kernel has this bug.
-.IP \(bu
-Username lookups may cause noticeable delays for non-UNIX users. The
-default timeout for username lookups is 10 seconds: too short to cope
-with slow networks, but long enough to irritate PC users.
-.PP
-Selective username lookups can alleviate the last problem. For example,
-a rule like:
-.PP
-daemon_list : @pcnetgroup ALL@ALL
-.PP
-would match members of the pc netgroup without doing username lookups,
-but would perform username lookups with all other systems.
-.SH DETECTING ADDRESS SPOOFING ATTACKS
-A flaw in the sequence number generator of many TCP/IP implementations
-allows intruders to easily impersonate trusted hosts and to break in
-via, for example, the remote shell service. The IDENT (RFC931 etc.)
-service can be used to detect such and other host address spoofing
-attacks.
-.PP
-Before accepting a client request, the wrappers can use the IDENT
-service to find out that the client did not send the request at all.
-When the client host provides IDENT service, a negative IDENT lookup
-result (the client matches `UNKNOWN@host') is strong evidence of a host
-spoofing attack.
-.PP
-A positive IDENT lookup result (the client matches `KNOWN@host') is
-less trustworthy. It is possible for an intruder to spoof both the
-client connection and the IDENT lookup, although doing so is much
-harder than spoofing just a client connection. It may also be that
-the client\'s IDENT server is lying.
-.PP
-Note: IDENT lookups don\'t work with UDP services.
-.SH EXAMPLES
-The language is flexible enough that different types of access control
-policy can be expressed with a minimum of fuss. Although the language
-uses two access control tables, the most common policies can be
-implemented with one of the tables being trivial or even empty.
-.PP
-When reading the examples below it is important to realize that the
-allow table is scanned before the deny table, that the search
-terminates when a match is found, and that access is granted when no
-match is found at all.
-.PP
-The examples use host and domain names. They can be improved by
-including address and/or network/netmask information, to reduce the
-impact of temporary name server lookup failures.
-.SH MOSTLY CLOSED
-In this case, access is denied by default. Only explicitly authorized
-hosts are permitted access.
-.PP
-The default policy (no access) is implemented with a trivial deny
-file:
-.PP
-.ne 2
-/etc/hosts.deny:
-.in +3
-ALL: ALL
-.PP
-This denies all service to all hosts, unless they are permitted access
-by entries in the allow file.
-.PP
-The explicitly authorized hosts are listed in the allow file.
-For example:
-.PP
-.ne 2
-/etc/hosts.allow:
-.in +3
-ALL: LOCAL @some_netgroup
-.br
-ALL: .foobar.edu EXCEPT terminalserver.foobar.edu
-.PP
-The first rule permits access from hosts in the local domain (no `.\'
-in the host name) and from members of the \fIsome_netgroup\fP
-netgroup. The second rule permits access from all hosts in the
-\fIfoobar.edu\fP domain (notice the leading dot), with the exception of
-\fIterminalserver.foobar.edu\fP.
-.SH MOSTLY OPEN
-Here, access is granted by default; only explicitly specified hosts are
-refused service.
-.PP
-The default policy (access granted) makes the allow file redundant so
-that it can be omitted. The explicitly non-authorized hosts are listed
-in the deny file. For example:
-.PP
-/etc/hosts.deny:
-.in +3
-ALL: some.host.name, .some.domain
-.br
-ALL EXCEPT in.fingerd: other.host.name, .other.domain
-.PP
-The first rule denies some hosts and domains all services; the second
-rule still permits finger requests from other hosts and domains.
-.SH BOOBY TRAPS
-The next example permits tftp requests from hosts in the local domain
-(notice the leading dot). Requests from any other hosts are denied.
-Instead of the requested file, a finger probe is sent to the offending
-host. The result is mailed to the superuser.
-.PP
-.ne 2
-/etc/hosts.allow:
-.in +3
-.nf
-in.tftpd: LOCAL, .my.domain
-.PP
-.ne 2
-/etc/hosts.deny:
-.in +3
-in.tftpd: ALL: (/some/where/safe_finger -l @%h | \\
- /usr/ucb/mail -s %d-%h root) &
-.fi
-.PP
-The safe_finger command comes with the tcpd wrapper and should be
-installed in a suitable place. It limits possible damage from data sent
-by the remote finger server. It gives better protection than the
-standard finger command.
-.PP
-The expansion of the %h (client host) and %d (service name) sequences
-is described in the section on shell commands.
-.PP
-Warning: do not booby-trap your finger daemon, unless you are prepared
-for infinite finger loops.
-.PP
-On network firewall systems this trick can be carried even further.
-The typical network firewall only provides a limited set of services to
-the outer world. All other services can be "bugged" just like the above
-tftp example. The result is an excellent early-warning system.
-.br
-.ne 4
-.SH DIAGNOSTICS
-An error is reported when a syntax error is found in a host access
-control rule; when the length of an access control rule exceeds the
-capacity of an internal buffer; when an access control rule is not
-terminated by a newline character; when the result of %<letter>
-expansion would overflow an internal buffer; when a system call fails
-that shouldn\'t. All problems are reported via the syslog daemon.
-.SH FILES
-.na
-.nf
-/etc/hosts.allow, (daemon,client) pairs that are granted access.
-/etc/hosts.deny, (daemon,client) pairs that are denied access.
-.ad
-.fi
-.SH SEE ALSO
-.nf
-tcpd(1M) tcp/ip daemon wrapper program.
-tcpdchk(1M), tcpdmatch(1M), test programs.
-.SH BUGS
-If a name server lookup times out, the host name will not be available
-to the access control software, even though the host is registered.
-.PP
-Domain name server lookups are case insensitive; NIS (formerly YP)
-netgroup lookups are case sensitive.
-.SH AUTHOR
-.nf
-Wietse Venema (wietse@wzv.win.tue.nl)
-Department of Mathematics and Computing Science
-Eindhoven University of Technology
-Den Dolech 2, P.O. Box 513
-5600 MB Eindhoven, The Netherlands
-.fi
-.\" @(#) hosts_access.5 1.20 95/01/30 19:51:46
-.\" Begin Sun update
-.SH ATTRIBUTES
-See
-.BR attributes (5)
-for descriptions of the following attributes:
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-=
-Interface Stability Committed
-.TE
-.\" End Sun update
diff --git a/usr/src/man/man4/hosts_options.4 b/usr/src/man/man4/hosts_options.4
deleted file mode 100644
index 0fcc660792..0000000000
--- a/usr/src/man/man4/hosts_options.4
+++ /dev/null
@@ -1,183 +0,0 @@
-'\" t
-.\"
-.\" Modified for Solaris to to add the Solaris stability classification,
-.\" and to add a note about source availability.
-.\"
-.TH HOSTS_OPTIONS 4 "Sep 15, 2011"
-.SH NAME
-hosts_options \- host access control language extensions
-.SH DESCRIPTION
-This document describes optional extensions to the language described
-in the hosts_access(4) document. The extensions are enabled at program
-build time. For example, by editing the Makefile and turning on the
-PROCESS_OPTIONS compile-time option.
-.PP
-The extensible language uses the following format:
-.sp
-daemon_list : client_list : option : option ...
-.PP
-The first two fields are described in the hosts_access(4) manual page.
-The remainder of the rules is a list of zero or more options. Any ":"
-characters within options should be protected with a backslash.
-.PP
-An option is of the form "keyword" or "keyword value". Options are
-processed in the specified order. Some options are subjected to
-%<letter> substitutions. For the sake of backwards compatibility with
-earlier versions, an "=" is permitted between keyword and value.
-.SH LOGGING
-.IP "severity mail.info"
-.IP "severity notice"
-Change the severity level at which the event will be logged. Facility
-names (such as mail) are optional, and are not supported on systems
-with older syslog implementations. The severity option can be used
-to emphasize or to ignore specific events.
-.SH ACCESS CONTROL
-.IP "allow"
-.IP "deny"
-Grant (deny) service. These options must appear at the end of a rule.
-.PP
-The \fIallow\fR and \fIdeny\fR keywords make it possible to keep all
-access control rules within a single file, for example in the
-\fIhosts.allow\fR file.
-.sp
-To permit access from specific hosts only:
-.sp
-.ne 2
-ALL: .friendly.domain: ALLOW
-ALL: ALL: DENY
-.sp
-To permit access from all hosts except a few trouble makers:
-.sp
-.ne 2
-ALL: .bad.domain: DENY
-ALL: ALL: ALLOW
-.sp
-Notice the leading dot on the domain name patterns.
-.SH RUNNING OTHER COMMANDS
-.IP "spawn shell_command"
-Execute, in a child process, the specified shell command, after
-performing the %<letter> expansions described in the hosts_access(4)
-manual page. The command is executed with stdin, stdout and stderr
-connected to the null device, so that it won\'t mess up the
-conversation with the client host. Example:
-.sp
-.nf
-spawn (/some/where/safe_finger -l @%h | /usr/ucb/mail root) &
-.fi
-.sp
-executes, in a background child process, the shell command "safe_finger
--l @%h | mail root" after replacing %h by the name or address of the
-remote host.
-.sp
-The example uses the "safe_finger" command instead of the regular
-"finger" command, to limit possible damage from data sent by the finger
-server. The "safe_finger" command is part of the daemon wrapper
-package; it is a wrapper around the regular finger command that filters
-the data sent by the remote host.
-.IP "twist shell_command"
-Replace the current process by an instance of the specified shell
-command, after performing the %<letter> expansions described in the
-hosts_access(4) manual page. Stdin, stdout and stderr are connected to
-the client process. This option must appear at the end of a rule.
-.sp
-To send a customized bounce message to the client instead of
-running the real ftp daemon:
-.sp
-.nf
-in.ftpd : ... : twist /bin/echo 421 Some bounce message
-.fi
-.sp
-For an alternative way to talk to client processes, see the
-\fIbanners\fR option below.
-.sp
-To run /some/other/in.telnetd without polluting its command-line
-array or its process environment:
-.sp
-.nf
-in.telnetd : ... : twist PATH=/some/other; exec in.telnetd
-.fi
-.sp
-Warning: in case of UDP services, do not twist to commands that use
-the standard I/O or the read(2)/write(2) routines to communicate with
-the client process; UDP requires other I/O primitives.
-.SH NETWORK OPTIONS
-.IP "keepalive"
-Causes the server to periodically send a message to the client. The
-connection is considered broken when the client does not respond. The
-keepalive option can be useful when users turn off their machine while
-it is still connected to a server. The keepalive option is not useful
-for datagram (UDP) services.
-.IP "linger number_of_seconds"
-Specifies how long the kernel will try to deliver not-yet delivered
-data after the server process closes a connection.
-.SH USERNAME LOOKUP
-.IP "rfc931 [ timeout_in_seconds ]"
-Look up the client user name with the RFC 931 (TAP, IDENT, RFC 1413)
-protocol. This option is silently ignored in case of services based on
-transports other than TCP. It requires that the client system runs an
-RFC 931 (IDENT, etc.) -compliant daemon, and may cause noticeable
-delays with connections from non-UNIX clients. The timeout period is
-optional. If no timeout is specified a compile-time defined default
-value is taken.
-.SH MISCELLANEOUS
-.IP "banners /some/directory"
-Look for a file in `/some/directory' with the same name as the daemon
-process (for example in.telnetd for the telnet service), and copy its
-contents to the client. Newline characters are replaced by
-carriage-return newline, and %<letter> sequences are expanded (see
-the hosts_access(4) manual page).
-.sp
-The tcp wrappers source code distribution provides a sample makefile
-(Banners.Makefile) for convenient banner maintenance.
-.sp
-Warning: banners are supported for connection-oriented (TCP) network
-services only.
-.IP "nice [ number ]"
-Change the nice value of the process (default 10). Specify a positive
-value to spend more CPU resources on other processes.
-.IP "setenv name value"
-Place a (name, value) pair into the process environment. The value is
-subjected to %<letter> expansions and may contain whitespace (but
-leading and trailing blanks are stripped off).
-.sp
-Warning: many network daemons reset their environment before spawning a
-login or shell process.
-.IP "umask 022"
-Like the umask command that is built into the shell. An umask of 022
-prevents the creation of files with group and world write permission.
-The umask argument should be an octal number.
-.IP "user nobody"
-.IP "user nobody.kmem"
-Assume the privileges of the "nobody" userid (or user "nobody", group
-"kmem"). The first form is useful with inetd implementations that run
-all services with root privilege. The second form is useful for
-services that need special group privileges only.
-.SH DIAGNOSTICS
-When a syntax error is found in an access control rule, the error
-is reported to the syslog daemon; further options will be ignored,
-and service is denied.
-.SH SEE ALSO
-hosts_access(4), the default access control language
-.SH AUTHOR
-.nf
-Wietse Venema (wietse@wzv.win.tue.nl)
-Department of Mathematics and Computing Science
-Eindhoven University of Technology
-Den Dolech 2, P.O. Box 513,
-5600 MB Eindhoven, The Netherlands
-\" @(#) hosts_options.5 1.10 94/12/28 17:42:28
-.\" Begin Sun update
-.SH ATTRIBUTES
-See
-.BR attributes (5)
-for descriptions of the following attributes:
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-=
-Interface Stability Committed
-.TE
-.\" End Sun update
diff --git a/usr/src/man/man4/ib.4 b/usr/src/man/man4/ib.4
deleted file mode 100644
index cd0f63353a..0000000000
--- a/usr/src/man/man4/ib.4
+++ /dev/null
@@ -1,86 +0,0 @@
-'\" te
-.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH IB 4 "Feb 19, 2004"
-.SH NAME
-ib \- InfiniBand device driver configuration files
-.SH DESCRIPTION
-.sp
-.LP
-The InfiniBand (IB) bus is an I/O transport based on switched fabrics. IB
-devices are managed by the \fBib\fR(7D) nexus driver. There are three
-categories of InfiniBand devices:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-IB port/IB VPPA/IB HCA_SVC devices
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-IB IOC devices
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-IB Pseudo devices
-.RE
-.sp
-.LP
-The IB port/IB VPPA/IB HCA_SVC devices are enumerated by way of the
-\fBib.conf\fR file. See \fBib\fR(7D).
-.sp
-.LP
-The IB IOC devices are enumerated using the InfiniBand Device management class.
-See \fBibdm\fR(7D).
-.sp
-.LP
-For devices not in these two categories, most notably IB Pseudo devices, the
-driver must provide configuration files to inform the system of the IB devices
-to be created. Configuration parameters are represented in the form of name
-value pairs you can retrieve using the DDI property interfaces. See
-\fBddi_prop_op\fR(9F) for details.
-.sp
-.LP
-Configuration files for IB device drivers must identify the parent driver
-explicitly as \fBib\fR, and must create a string array property called
-\fBunit-address\fR which is unique to this entry in the configuration file.
-Drivers name \fBibport\fR and \fBioc\fR are reserved by \fBib\fR(7D) and should
-not be used.
-.sp
-.LP
-Each entry in the configuration file creates a prototype \fBdevinfo\fR node.
-Each node is assigned a unit address which is determined by the value of the
-\fBunit-address\fR property. This property is only applicable to children of
-the IB parent and is required. See \fBdriver.conf\fR(4) for further details on
-configuration file syntax.
-.SH EXAMPLES
-.sp
-.LP
-Example 1: Sample configuration file
-.sp
-.LP
-Here is a configuration file called \fBibgen.conf\fR for an IB device driver
-that implements a generic IB driver. This file creates a node called
-\fBibgen\fR.
-.sp
-.in +2
-.nf
- #
- # Copyright 2002-2003 Sun Microsystems, Inc. All rights reserved.
- # Use is subject to license terms.
- #
- #ident "@(#)ibgen.conf 1.3 03/05/01 SMI"
- name="ibgen" parent="ib" unit-address="0";
-.fi
-.in -2
-
-.SH SEE ALSO
-.sp
-.LP
-\fBdriver.conf\fR(4), \fBib\fR(7D), \fBibtl\fR(7D), \fBddi_prop_op\fR(9F)
diff --git a/usr/src/man/man4/ibmf.4 b/usr/src/man/man4/ibmf.4
new file mode 100644
index 0000000000..04e688cf19
--- /dev/null
+++ b/usr/src/man/man4/ibmf.4
@@ -0,0 +1,47 @@
+.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 2020 Joyent, Inc.
+.\"
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.\"
+.Dd January 12, 2020
+.Dt IBMF 4
+.Os
+.Sh NAME
+.Nm ibmf
+.Nd InfiniBand Management Transport Framework
+.Sh DESCRIPTION
+The InfiniBand (IB) Management Transport Framework provides the mechanisms for
+IB management modules to communicate with other InfiniBand management modules
+such as the Subnet Administration process.
+It also provides helper functions
+such as Subnet Administration Access (SAA) for commonly performed operations.
+.Sh FILES
+.Bl -tag -width Pa
+.It Pa /kernel/misc/amd64/ibmf
+Device driver (x86).
+.It Pa /kernel/misc/sparcv9/ibmf
+Device driver (SPARC)
+.El
+.Sh ARCHITECTURE
+PCI-based systems
+.Sh INTERFACE STABILITY
+Private
+.Sh SEE ALSO
+.Xr ibtl 4D
+.Pp
+.%T InfiniBand Architecture Specification, Version 1\&.1
+.Pp
+.%U www.infinibandta.org
diff --git a/usr/src/man/man4/ike.config.4 b/usr/src/man/man4/ike.config.4
deleted file mode 100644
index 1e9140a5ce..0000000000
--- a/usr/src/man/man4/ike.config.4
+++ /dev/null
@@ -1,1194 +0,0 @@
-'\" te
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright (c) 2015, Circonus, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH IKE.CONFIG 4 "November 22, 2021"
-.SH NAME
-ike.config \- configuration file for IKE policy
-.SH SYNOPSIS
-.nf
-\fB/etc/inet/ike/config\fR
-.fi
-
-.SH DESCRIPTION
-The \fB/etc/inet/ike/config\fR file contains rules for matching inbound IKE
-requests. It also contains rules for preparing outbound \fBIKE\fR requests.
-.sp
-.LP
-You can test the syntactic correctness of an \fB/etc/inet/ike/config\fR file by
-using the \fB-c\fR or \fB-f\fR options of \fBin.iked\fR(1M). You must use the
-\fB-c\fR option to test a \fBconfig\fR file. You might need to use the \fB-f\fR
-option if it is not in \fB/etc/inet/ike/config\fR.
-.SS "Lexical Components"
-On any line, an unquoted \fB#\fR character introduces a comment. The remainder
-of that line is ignored. Additionally, on any line, an unquoted \fB//\fR
-sequence introduces a comment. The remainder of that line is ignored.
-.sp
-.LP
-There are several types of lexical tokens in the \fBike.config\fR file:
-.sp
-.ne 2
-.na
-\fB\fInum\fR\fR
-.ad
-.sp .6
-.RS 4n
-A decimal, hex, or octal number representation is as in 'C'.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIIPaddr\fR/\fIprefix\fR/\fIrange\fR\fR
-.ad
-.sp .6
-.RS 4n
-An IPv4 or IPv6 address with an optional /\fINNN\fR suffix, (where \fINNN\fR is
-a \fInum\fR) that indicates an address (\fBCIDR\fR) prefix (for example,
-\fB10.1.2.0/24\fR). An optional /\fIADDR\fR suffix (where \fIADDR\fR is a
-second IP address) indicates an address/mask pair (for example,
-\fB10.1.2.0/255.255.255.0\fR). An optional -\fIADDR\fR suffix (where \fIADDR\fR
-is a second IPv4 address) indicates an inclusive range of addresses (for
-example, \fB10.1.2.0-10.1.2.255\fR). The \fB/\fR or \fB-\fR can be surrounded
-by an arbitrary amount of white space.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBXXX\fR | \fBYYY\fR | \fBZZZ\fR\fR
-.ad
-.sp .6
-.RS 4n
-Either the words \fBXX\fRX, \fBYYY\fR, or \fBZZZ\fR, for example, {yes,no}.
-.RE
-
-.sp
-.ne 2
-.na
-\fBp1-id-type\fR
-.ad
-.sp .6
-.RS 4n
-An IKE phase 1 identity type. IKE phase 1 identity types include:
-.br
-.in +2
-\fBdn, DN\fR
-.in -2
-.br
-.in +2
-\fBdns, DNS\fR
-.in -2
-.br
-.in +2
-\fBfqdn, FQDN\fR
-.in -2
-.br
-.in +2
-\fBgn, GN\fR
-.in -2
-.br
-.in +2
-\fBip, IP\fR
-.in -2
-.br
-.in +2
-\fBipv4\fR
-.in -2
-.br
-.in +2
-\fBipv4_prefix\fR
-.in -2
-.br
-.in +2
-\fBipv4_range\fR
-.in -2
-.br
-.in +2
-\fBipv6\fR
-.in -2
-.br
-.in +2
-\fBipv6_prefix\fR
-.in -2
-.br
-.in +2
-\fBipv6_range\fR
-.in -2
-.br
-.in +2
-\fBmbox, MBOX\fR
-.in -2
-.br
-.in +2
-\fBuser_fqdn\fR
-.in -2
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB"\fR\fIstring\fR\fB"\fR\fR
-.ad
-.sp .6
-.RS 4n
-A quoted string.
-.sp
-Examples include:\fB"Label foo"\fR, or \fB"C=US, OU=Sun Microsystems\e, Inc.,
-N=olemcd@eng.example.com"\fR
-.sp
-A backslash (\fB\e\fR) is an escape character. If the string needs an actual
-backslash, two must be specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIcert-sel\fR\fR
-.ad
-.sp .6
-.RS 4n
-A certificate selector, a \fIstring\fR which specifies the identities of zero
-or more certificates. The specifiers can conform to \fBX.509\fR naming
-conventions.
-.sp
-A \fIcert-sel\fR can also use various shortcuts to match either subject
-alternative names, the filename or \fBslot\fR of a certificate in
-\fB/etc/inet/ike/publickeys\fR, or even the \fBISSUER\fR. For example:
-.sp
-.in +2
-.nf
-"SLOT=0"
-"EMAIL=postmaster@example.org"
-"webmaster@example.org" # Some just work w/o TYPE=
-"IP=10.0.0.1"
-"10.21.11.11" # Some just work w/o TYPE=
-"DNS=www.example.org"
-"mailhost.example.org" # Some just work w/o TYPE=
-"ISSUER=C=US, O=Sun Microsystems\\, Inc., CN=Sun CA"
-.fi
-.in -2
-.sp
-
-Any \fIcert-sel\fR preceded by the character \fB!\fR indicates a negative
-match, that is, not matching this specifier. These are the same kind of strings
-used in \fBikecert\fR(1M).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIldap-list\fR\fR
-.ad
-.sp .6
-.RS 4n
-A quoted, comma-separated list of LDAP servers and ports.
-.sp
-For example, \fB"ldap1.example.com"\fR, \fB"ldap1.example.com:389"\fR,
-\fB"ldap1.example.com:389,ldap2.example.com"\fR.
-.sp
-The default port for LDAP is \fB389\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIparameter-list\fR\fR
-.ad
-.sp .6
-.RS 4n
-A list of parameters.
-.RE
-
-.SS "File Body Entries"
-There are four main types of entries:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-global parameters
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-IKE phase 1 transform defaults
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-IKE rule defaults
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-IKE rules
-.RE
-.sp
-.LP
-The global parameter entries are as follows:
-.sp
-.ne 2
-.na
-\fBcert_root \fIcert-sel\fR\fR
-.ad
-.sp .6
-.RS 4n
-The X.509 distinguished name of a certificate that is a trusted root CA
-certificate. It must be encoded in a file in the \fB/etc/inet/ike/publickeys\fR
-directory. It must have a CRL in \fB/etc/inet/ike/crl\fRs. Multiple
-\fBcert_root\fR parameters aggregate.
-.RE
-
-.sp
-.ne 2
-.na
-\fBcert_trust \fIcert-sel\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies an X.509 distinguished name of a certificate that is self-signed, or
-has otherwise been verified as trustworthy for signing IKE exchanges. It must
-be encoded in a file in \fB/etc/inet/ike/publickeys\fR. Multiple
-\fBcert_trust\fR parameters aggregate.
-.RE
-
-.sp
-.ne 2
-.na
-\fBexpire_timer \fIinteger\fR\fR
-.ad
-.sp .6
-.RS 4n
-The number of seconds to let a not-yet-complete IKE Phase I (Main Mode)
-negotiation linger before deleting it. Default value: 300 seconds.
-.RE
-
-.sp
-.ne 2
-.na
-\fBignore_crls\fR
-.ad
-.sp .6
-.RS 4n
-If this keyword is present in the file, \fBin.iked\fR(1M) ignores Certificate
-Revocation Lists (\fBCRL\fRs) for root \fBCA\fRs (as given in \fBcert_root\fR)
-.RE
-
-.sp
-.ne 2
-.na
-\fBldap_server \fIldap-list\fR\fR
-.ad
-.sp .6
-.RS 4n
-A list of LDAP servers to query for certificates. The list can be additive.
-.RE
-
-.sp
-.ne 2
-.na
-\fBpkcs11_path \fIstring\fR\fR
-.ad
-.sp .6
-.RS 4n
-The string that follows is a name of a shared object (\fB\&.so\fR) that
-implements the PKCS#11 standard. The name is passed directly into
-\fBdlopen\fR(3C) for linking, with all of the semantics of that library call.
-By default, \fBin.iked\fR(1M) runs the same ISA as the running kernel, so a
-library specified using \fBpkcs11_path\fR and an absolute pathname \fBmust\fR
-match the same ISA as the kernel. One can use the start/exec SMF property (see
-\fBsvccfg\fR(1M)) to change \fBin.iked\fR's ISA, but it is not recommended.
-.sp
-If this setting is not present, the default value is set to \fBlibpkcs11.so\fR.
-Most cryptographic providers go through the default library, and this parameter
-should only be used if a specialized provider of IKE-useful cryptographic
-services cannot interface with the Solaris Cryptographic Framework. See
-\fBcryptoadm\fR(1M).
-.sp
-This option is now deprecated, and may be removed in a future release.
-.RE
-
-.sp
-.ne 2
-.na
-\fBretry_limit \fIinteger\fR\fR
-.ad
-.sp .6
-.RS 4n
-The number of retransmits before any IKE negotiation is aborted. Default value:
-5 times.
-.RE
-
-.sp
-.ne 2
-.na
-\fBretry_timer_init \fIinteger\fR or \fIfloat\fR\fR
-.ad
-.sp .6
-.RS 4n
-The initial interval (in seconds) between retransmits. This interval is doubled
-until the \fBretry_timer_max\fR value (see below) is reached. Default value:
-0.5 seconds.
-.RE
-
-.sp
-.ne 2
-.na
-\fBretry_timer_max \fIinteger\fR or \fIfloat\fR\fR
-.ad
-.sp .6
-.RS 4n
-The maximum interval (in seconds) between retransmits. The doubling retransmit
-interval stops growing at this limit. Default value: 30 seconds.
-.LP
-Note -
-.sp
-.RS 2
-This value is never reached with the default configuration. The longest
-interval is 8 (0.5 * 2 ^ (5 - 1)) seconds.
-.RE
-.RE
-
-.sp
-.ne 2
-.na
-\fBproxy \fIstring\fR\fR
-.ad
-.sp .6
-.RS 4n
-The string following this keyword must be a URL for an HTTP proxy, for example,
-\fBhttp://proxy:8080\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBsocks \fIstring\fR\fR
-.ad
-.sp .6
-.RS 4n
-The string following this keyword must be a URL for a SOCKS proxy, for example,
-\fBsocks://socks-proxy\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBuse_http\fR
-.ad
-.sp .6
-.RS 4n
-If this keyword is present in the file, \fBin.iked\fR(1M) uses HTTP to retrieve
-Certificate Revocation Lists (\fBCRL\fRs).
-.RE
-
-.sp
-.LP
-The following IKE phase 1 transform parameters can be prefigured using
-file-level defaults. Values specified within any given transform override these
-defaults.
-.sp
-.LP
-The IKE phase 1 transform defaults are as follows:
-.sp
-.ne 2
-.na
-\fBp1_lifetime_secs \fInum\fR\fR
-.ad
-.sp .6
-.RS 4n
-The proposed default lifetime, in seconds, of an IKE phase 1 security
-association (\fBSA\fR).
-.RE
-
-.sp
-.ne 2
-.na
-\fBp1_nonce_len \fInum\fR\fR
-.ad
-.sp .6
-.RS 4n
-The length in bytes of the phase 1 (quick mode) nonce data. This cannot be
-specified on a per-rule basis.
-.RE
-
-.sp
-.LP
-The following IKE rule parameters can be prefigured using file-level defaults.
-Values specified within any given rule override these defaults, unless a rule
-cannot.
-.sp
-.ne 2
-.na
-\fBp2_lifetime_secs \fInum\fR\fR
-.ad
-.sp .6
-.RS 4n
-The proposed default lifetime, in seconds, of an IKE phase 2 security
-association (SA). This value is optional. If omitted, a default value is used.
-.RE
-
-.sp
-.ne 2
-.na
-\fBp2_softlife_secs \fInum\fR\fR
-.ad
-.sp .6
-.RS 4n
-The soft lifetime of a phase 2 SA, in seconds. If this value is specified, the
-SA soft expires after the number of seconds specified by
-\fBp2_softlife_secs\fR. This causes \fBin.iked\fR to renegotiate a new phase 2
-SA before the original SA expires.
-.sp
-This value is optional, if omitted soft expiry occurs after 90% of the lifetime
-specified by \fBp2_lifetime_secs\fR. The value specified by
-\fBp2_softlife_secs\fR is ignored if \fBp2_lifetime_secs\fR is not specified.
-.sp
-Setting \fBp2_softlife_secs\fR to the same value as \fBp2_lifetime_secs\fR
-disables soft expires.
-.RE
-
-.sp
-.ne 2
-.na
-\fBp2_idletime_secs \fInum\fR\fR
-.ad
-.sp .6
-.RS 4n
-The idle lifetime of a phase 2 SA, in seconds. If the value is specified, the
-value specifies the lifetime of the SA, if the security association is not used
-before the SA is revalidated.
-.RE
-
-.sp
-.ne 2
-.na
-\fBp2_lifetime_kb \fInum\fR\fR
-.ad
-.sp .6
-.RS 4n
-The lifetime of an SA can optionally be specified in kilobytes. This parameter
-specifies the default value. If lifetimes are specified in both seconds and
-kilobytes, the SA expires when either the seconds or kilobyte thresholds are
-passed.
-.RE
-
-.sp
-.ne 2
-.na
-\fBp2_softlife_kb \fInum\fR\fR
-.ad
-.sp .6
-.RS 4n
-This value is the number of kilobytes that can be protected by an SA before a
-soft expire occurs (see \fBp2_softlife_secs\fR, above).
-.sp
-This value is optional. If omitted, soft expiry occurs after 90% of the
-lifetime specified by \fBp2_lifetime_kb\fR. The value specified by
-\fBp2_softlife_kb\fR is ignored if \fBp2_lifetime_kb\fR is not specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fBp2_nonce_len \fInum\fR\fR
-.ad
-.sp .6
-.RS 4n
-The length in bytes of the phase 2 (quick mode) nonce data. This cannot be
-specified on a per-rule basis.
-.RE
-
-.sp
-.ne 2
-.na
-\fBlocal_id_type \fIp1-id-type\fR\fR
-.ad
-.sp .6
-.RS 4n
-The local identity for IKE requires a type. This identity type is reflected in
-the IKE exchange. The type can be one of the following:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-an IP address (for example, \fB10.1.1.2\fR)
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-DNS name (for example, \fBtest.example.com\fR)
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-MBOX RFC 822 name (for example, \fBroot@example.com\fR)
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-DNX.509 distinguished name (for example, \fBC=US, O=Sun Microsystems\, Inc.,
-CN=Sun Test cert\fR)
-.RE
-.RE
-
-.sp
-.ne 2
-.na
-\fBp1_xform '{' parameter-list '}\fR
-.ad
-.sp .6
-.RS 4n
-A phase 1 transform specifies a method for protecting an IKE phase 1 exchange.
-An initiator offers up lists of phase 1 transforms, and a receiver is expected
-to only accept such an entry if it matches one in a phase 1 rule. There can be
-several of these, and they are additive. There must be either at least one
-phase 1 transform in a rule or a global default phase 1 transform list. In a
-configuration file without a global default phase 1 transform list \fBand\fR a
-rule without a phase, transform list is an invalid file. Unless specified as
-optional, elements in the parameter-list must occur exactly once within a given
-transform's parameter-list:
-.sp
-.ne 2
-.na
-\fBoakley_group \fInumber\fR\fR
-.ad
-.sp .6
-.RS 4n
-The Oakley Diffie-Hellman group used for IKE SA key derivation. The group
-numbers are defined in RFC 2409, Appendix A, RFC 3526, and RFC 5114, section
-3.2. Acceptable values are currently:
-.br
-.in +2
-1 (MODP 768-bit)
-.in -2
-.br
-.in +2
-2 (MODP 1024-bit)
-.in -2
-.br
-.in +2
-3 (EC2N 155-bit)
-.in -2
-.br
-.in +2
-4 (EC2N 185-bit)
-.in -2
-.br
-.in +2
-5 (MODP 1536-bit)
-.in -2
-.br
-.in +2
-14 (MODP 2048-bit)
-.in -2
-.br
-.in +2
-15 (MODP 3072-bit)
-.in -2
-.br
-.in +2
-16 (MODP 4096-bit)
-.in -2
-.br
-.in +2
-17 (MODP 6144-bit)
-.in -2
-.br
-.in +2
-18 (MODP 8192-bit)
-.in -2
-.br
-.in +2
-19 (ECP 256-bit)
-.in -2
-.br
-.in +2
-20 (ECP 384-bit)
-.in -2
-.br
-.in +2
-21 (ECP 521-bit)
-.in -2
-.br
-.in +2
-22 (MODP 1024-bit, with 160-bit Prime Order Subgroup)
-.in -2
-.br
-.in +2
-23 (MODP 2048-bit, with 224-bit Prime Order Subgroup)
-.in -2
-.br
-.in +2
-24 (MODP 2048-bit, with 256-bit Prime Order Subgroup)
-.in -2
-.br
-.in +2
-25 (ECP 192-bit)
-.in -2
-.br
-.in +2
-26 (ECP 224-bit)
-.in -2
-.RE
-
-.sp
-.ne 2
-.na
-\fBencr_alg {3des, 3des-cbc, blowfish, blowfish-cdc, des, des-cbc, aes,
-aes-cbc}\fR
-.ad
-.sp .6
-.RS 4n
-An encryption algorithm, as in \fBipsecconf\fR(1M). However, of the ciphers
-listed above, only \fBaes\fR and \fBaes-cbc\fR allow optional key-size setting,
-using the "low value-to-high value" syntax. To specify a single AES key size,
-the low value must equal the high value. If no range is specified, all three
-AES key sizes are allowed.
-.RE
-
-.sp
-.ne 2
-.na
-\fBauth_alg {md5, sha, sha1, sha256, sha384, sha512}\fR
-.ad
-.sp .6
-.RS 4n
-An authentication algorithm.
-.sp
-Use \fBipsecalgs\fR(1M) with the \fB-l\fR option to list the IPsec protocols
-and algorithms currently defined on a system. The \fBcryptoadm list\fR command
-displays a list of installed providers and their mechanisms. See
-\fBcryptoadm\fR(1M).
-.RE
-
-.sp
-.ne 2
-.na
-\fBauth_method {preshared, rsa_sig, rsa_encrypt, dss_sig}\fR
-.ad
-.sp .6
-.RS 4n
-The authentication method used for IKE phase 1.
-.RE
-
-.sp
-.ne 2
-.na
-\fBp1_lifetime_secs \fInum\fR\fR
-.ad
-.sp .6
-.RS 4n
-Optional. The lifetime for a phase 1 SA.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fBp2_lifetime_secs \fInum\fR\fR
-.ad
-.sp .6
-.RS 4n
-If configuring the kernel defaults is not sufficient for different tasks, this
-parameter can be used on a per-rule basis to set the IPsec \fBSA\fR lifetimes
-in seconds.
-.RE
-
-.sp
-.ne 2
-.na
-\fBp2_pfs \fInum\fR\fR
-.ad
-.sp .6
-.RS 4n
-Use perfect forward secrecy for phase 2 (quick mode). If selected, the oakley
-group specified is used for phase 2 PFS. Acceptable values are:
-.br
-.in +2
-0 (do not use Perfect Forward Secrecy for IPsec SAs)
-.in -2
-.br
-.in +2
-1 (768-bit)
-.in -2
-.br
-.in +2
-2 (1024-bit)
-.in -2
-.br
-.in +2
-5 (1536-bit)
-.in -2
-.br
-.in +2
-14 (2048-bit)
-.in -2
-.br
-.in +2
-15 (3072-bit)
-.in -2
-.br
-.in +2
-16 (4096-bit)
-.in -2
-.RE
-
-.sp
-.LP
-An IKE rule starts with a right-curly-brace (\fB{\fR), ends with a
-left-curly-brace (\fB}\fR), and has the following parameters in between:
-.sp
-.ne 2
-.na
-\fBlabel \fIstring\fR\fR
-.ad
-.sp .6
-.RS 4n
-Required parameter. The administrative interface to \fBin.iked\fR looks up
-phase 1 policy rules with the label as the search string. The administrative
-interface also converts the label into an index, suitable for an extended
-ACQUIRE message from PF_KEY - effectively tying IPsec policy to IKE policy in
-the case of a node initiating traffic. Only one \fBlabel\fR parameter is
-allowed per rule.
-.RE
-
-.sp
-.ne 2
-.na
-\fBlocal_addr <\fIIPaddr\fR/\fIprefix\fR/\fIrange\fR>\fR
-.ad
-.sp .6
-.RS 4n
-Required parameter. The local address, address prefix, or address range for
-this phase 1 rule. Multiple \fBlocal_addr\fR parameters accumulate within a
-given rule.
-.RE
-
-.sp
-.ne 2
-.na
-\fBremote_addr <\fIIPaddr\fR/\fIprefix\fR/\fIrang\fRe>\fR
-.ad
-.sp .6
-.RS 4n
-Required parameter. The remote address, address prefix, or address range for
-this phase 1 rule. Multiple \fBremote_addr\fR parameters accumulate within a
-given rule.
-.RE
-
-.sp
-.ne 2
-.na
-\fBlocal_id_type \fIp1-id-type\fR\fR
-.ad
-.sp .6
-.RS 4n
-Which phase 1 identity type I uses. This is needed because a single certificate
-can contain multiple values for use in IKE phase 1. Within a given rule, all
-phase 1 transforms must either use preshared or non-preshared authentication
-(they cannot be mixed). For rules with preshared authentication, the
-\fBlocal_id_type\fR parameter is optional, and defaults to \fBIP\fR. For rules
-which use non-preshared authentication, the 'local_id_type' parameter is
-required. Multiple 'local_id_type' parameters within a rule are not allowed.
-.RE
-
-.sp
-.ne 2
-.na
-\fBlocal_id \fIcert-sel\fR\fR
-.ad
-.sp .6
-.RS 4n
-Disallowed for preshared authentication method; required parameter for
-non-preshared authentication method. The local identity string or certificate
-selector. Only one local identity per rule is used, the first one stated.
-.RE
-
-.sp
-.ne 2
-.na
-\fBremote_id \fIcert-sel\fR\fR
-.ad
-.sp .6
-.RS 4n
-Disallowed for preshared authentication method; required parameter for
-non-preshared authentication method. Selector for which remote phase 1
-identities are allowed by this rule. Multiple \fBremote_id\fR parameters
-accumulate within a given rule. If a single empty string (\fB""\fR) is given,
-then this accepts any remote \fBID\fR for phase 1. It is recommended that
-certificate trust chains or address enforcement be configured strictly to
-prevent a breakdown in security if this value for \fBremote_id\fR is used.
-.RE
-
-.sp
-.ne 2
-.na
-\fBp2_lifetime_secs \fInum\fR\fR
-.ad
-.sp .6
-.RS 4n
-If configuring the kernel defaults is not sufficient for different tasks, this
-parameter can be used on a per-rule basis to set the IPsec \fBSA\fR lifetimes
-in seconds.
-.RE
-
-.sp
-.ne 2
-.na
-\fBp2_pfs \fInum\fR\fR
-.ad
-.sp .6
-.RS 4n
-Use perfect forward secrecy for phase 2 (quick mode). If selected, the oakley
-group specified is used for phase 2 PFS. Acceptable values are:
-.br
-.in +2
-0 (do not use Perfect Forward Secrecy for IPsec SAs)
-.in -2
-.br
-.in +2
-1 (768-bit)
-.in -2
-.br
-.in +2
-2 (1024-bit)
-.in -2
-.br
-.in +2
-5 (1536-bit)
-.in -2
-.br
-.in +2
-14 (2048-bit)
-.in -2
-.br
-.in +2
-15 (3072-bit)
-.in -2
-.br
-.in +2
-16 (4096-bit)
-.in -2
-.RE
-
-.sp
-.ne 2
-.na
-\fBp1_xform \fB{\fR \fIparameter-list\fR \fB}\fR\fR
-.ad
-.sp .6
-.RS 4n
-A phase 1 transform specifies a method for protecting an IKE phase 1 exchange.
-An initiator offers up lists of phase 1 transforms, and a receiver is expected
-to only accept such an entry if it matches one in a phase 1 rule. There can be
-several of these, and they are additive. There must be either at least one
-phase 1 transform in a rule or a global default phase 1 transform list. A
-\fBike.config\fR file without a global default phase 1 transform list \fBand\fR
-a rule without a phase 1 transform list is an invalid file. Elements within the
-parameter-list; unless specified as optional, must occur exactly once within a
-given transform's parameter-list:
-.sp
-.ne 2
-.na
-\fBoakley_group \fInumber\fR\fR
-.ad
-.sp .6
-.RS 4n
-The Oakley Diffie-Hellman group used for \fBIKE SA\fR key derivation.
-Acceptable values are currently:
-.br
-.in +2
-1 (768-bit)
-.in -2
-.br
-.in +2
-2 (1024-bit)
-.in -2
-.br
-.in +2
-5 (1536-bit)
-.in -2
-.br
-.in +2
-14 (2048-bit)
-.in -2
-.br
-.in +2
-15 (3072-bit)
-.in -2
-.br
-.in +2
-16 (4096-bit)
-.in -2
-.RE
-
-.sp
-.ne 2
-.na
-\fBencr_alg {3des, 3des-cbc, blowfish, blowfish-cdc, des, des-cbc, aes,
-aes-cbc}\fR
-.ad
-.sp .6
-.RS 4n
-An encryption algorithm, as in \fBipsecconf\fR(1M). However, of the ciphers
-listed above, only \fBaes\fR and \fBaes-cbc\fR allow optional key-size setting,
-using the "low value-to-high value" syntax. To specify a single AES key size,
-the low value must equal the high value. If no range is specified, all three
-AES key sizes are allowed.
-.RE
-
-.sp
-.ne 2
-.na
-\fBauth_alg {md5, sha, sha1}\fR
-.ad
-.sp .6
-.RS 4n
-An authentication algorithm, as specified in \fBipseckey\fR(1M).
-.RE
-
-.sp
-.ne 2
-.na
-\fBauth_method {preshared, rsa_sig, rsa_encrypt, dss_sig}\fR
-.ad
-.sp .6
-.RS 4n
-The authentication method used for IKE phase 1.
-.RE
-
-.sp
-.ne 2
-.na
-\fBp1_lifetime_secs \fInum\fR\fR
-.ad
-.sp .6
-.RS 4n
-Optional. The lifetime for a phase 1 SA.
-.RE
-
-.RE
-
-.SH EXAMPLES
-\fBExample 1 \fRA Sample \fBike.config\fR File
-.sp
-.LP
-The following is an example of an \fBike.config\fR file:
-
-.sp
-.in +2
-.nf
-
-### BEGINNING OF FILE
-
-### First some global parameters...
-
-### certificate parameters...
-
-# Root certificates. I SHOULD use a full Distinguished Name.
-# I must have this certificate in my local filesystem, see ikecert(1m).
-cert_root "C=US, O=Sun Microsystems\\, Inc., CN=Sun CA"
-
-# Explicitly trusted certs that need no signatures, or perhaps
-# self-signed ones. Like root certificates, use full DNs for them
-# for now.
-cert_trust "EMAIL=root@example.org"
-
-# Where do I send LDAP requests?
-ldap_server "ldap1.example.org,ldap2.example.org:389"
-
-## phase 1 transform defaults...
-
-p1_lifetime_secs 14400
-p1_nonce_len 20
-
-## Parameters that might also show up in rules.
-
-p1_xform { auth_method preshared oakley_group 5 auth_alg sha
- encr_alg 3des }
-p2_pfs 2
-
-
-
-### Now some rules...
-
-{
- label "simple inheritor"
- local_id_type ip
- local_addr 10.1.1.1
- remote_addr 10.1.1.2
-}
-{
- label "simple inheritor IPv6"
- local_id_type ipv6
- local_addr fe80::a00:20ff:fe7d:6
- remote_addr fe80::a00:20ff:fefb:3780
-}
-
-{
- # an index-only rule. If I'm a receiver, and all I
- # have are index-only rules, what do I do about inbound IKE requests?
- # Answer: Take them all!
-
- label "default rule"
- # Use whatever "host" (e.g. IP address) identity is appropriate
- local_id_type ipv4
-
- local_addr 0.0.0.0/0
- remote_addr 0.0.0.0/0
-
- p2_pfs 5
-
- # Now I'm going to have the p1_xforms
- p1_xform
- {auth_method preshared oakley_group 5 auth_alg md5 encr_alg \e
- blowfish } p1_xform
- {auth_method preshared oakley_group 5 auth_alg md5 encr_alg 3des }
-
- # After said list, another keyword (or a '}') stops xform
- # parsing.
-}
-
-{
- # Let's try something a little more conventional.
-
- label "host to .80 subnet"
- local_id_type ip
- local_id "10.1.86.51"
-
- remote_id "" # Take any, use remote_addr for access control.
-
- local_addr 10.1.86.51
- remote_addr 10.1.80.0/24
-
- p1_xform
- { auth_method rsa_sig oakley_group 5 auth_alg md5 encr_alg 3des }
- p1_xform
- { auth_method rsa_sig oakley_group 5 auth_alg md5 encr_alg \e
- blowfish }
- p1_xform
- { auth_method rsa_sig oakley_group 5 auth_alg sha1 encr_alg 3des }
- p1_xform
- { auth_method rsa_sig oakley_group 5 auth_alg sha1 encr_alg \e
- blowfish }
-}
-
-{
- # Let's try something a little more conventional, but with ipv6.
-
- label "host to fe80::/10 subnet"
- local_id_type ip
- local_id "fe80::a00:20ff:fe7d:6"
-
- remote_id "" # Take any, use remote_addr for access control.
-
- local_addr fe80::a00:20ff:fe7d:6
- remote_addr fe80::/10
-
- p1_xform
- { auth_method rsa_sig oakley_group 5 auth_alg md5 encr_alg 3des }
- p1_xform
- { auth_method rsa_sig oakley_group 5 auth_alg md5 encr_alg \e
- blowfish }
- p1_xform
- { auth_method rsa_sig oakley_group 5 auth_alg sha1 encr_alg \e
- 3des }
- p1_xform
- { auth_method rsa_sig oakley_group 5 auth_alg sha1 encr_alg \e
- blowfish }
-}
-
-{
- # How 'bout something with a different cert type and name?
-
- label "punchin-point"
- local_id_type mbox
- local_id "ipsec-wizard@example.org"
-
- remote_id "10.5.5.128"
-
- local_addr 0.0.0.0/0
- remote_addr 10.5.5.128
-
- p1_xform
- { auth_method rsa_sig oakley_group 5 auth_alg md5 encr_alg \e
- blowfish }
-}
-
-{
- label "receiver side"
-
- remote_id "ipsec-wizard@example.org"
-
- local_id_type ip
- local_id "10.5.5.128"
-
- local_addr 10.5.5.128
- remote_addr 0.0.0.0/0
-
- p1_xform
- { auth_method rsa_sig oakley_group 5 auth_alg md5 encr_alg blowfish }
- # NOTE: Specifying preshared null-and-voids the remote_id/local_id
- # fields.
- p1_xform
- { auth_method preshared oakley_group 5 auth_alg md5 encr_alg \e
- blowfish}
-
-}
-.fi
-.in -2
-
-.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Committed
-.TE
-
-.SH SEE ALSO
-\fBcryptoadm\fR(1M), \fBikeadm\fR(1M), \fBin.iked\fR(1M), \fBikecert\fR(1M),
-\fBipseckey\fR(1M), \fBipsecalgs\fR(1M), \fBipsecconf\fR(1M), \fBsvccfg\fR(1M),
-\fBdlopen\fR(3C), \fBattributes\fR(5), \fBrandom\fR(7D)
-.sp
-.LP
-Harkins, Dan and Carrel, Dave. \fIRFC 2409, Internet Key Exchange (IKE)\fR.
-Cisco Systems, November 1998.
-.sp
-.LP
-Maughan, Douglas et. al. \fIRFC 2408, Internet Security Association and Key
-Management Protocol (ISAKMP)\fR. National Security Agency, Ft. Meade, MD.
-November 1998.
-.sp
-.LP
-Piper, Derrell. \fIRFC 2407, The Internet IP Security Domain of Interpretation
-for ISAKMP\fR. Network Alchemy. Santa Cruz, California. November 1998.
-.sp
-.LP
-Kivinen, T. \fIRFC 3526, More Modular Exponential (MODP) Diffie-Hellman Groups
-for Internet Key Exchange (IKE)\fR. The Internet Society, Network Working
-Group. May 2003.
-.sp
-.LP
-Lepinksi, M. and Kent, S. \fIRFC 5114, Additional Diffie-Hellman Groups for Use
-with IETF Standards\fR. BBN Technologies, January 2008.
-.sp
-.LP
-Fu, D. and Solinas, J. \fIRFC 5903, Elliptic Curve Groups modulo a Prime (ECP
-Groups) for IKE and IKEv2\fR. NSA, June 2010.
diff --git a/usr/src/man/man4/ike.preshared.4 b/usr/src/man/man4/ike.preshared.4
deleted file mode 100644
index 2d525f2cbf..0000000000
--- a/usr/src/man/man4/ike.preshared.4
+++ /dev/null
@@ -1,95 +0,0 @@
-'\" te
-.\" Copyright (c) 2001, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH IKE.PRESHARED 4 "Oct 15, 2001"
-.SH NAME
-ike.preshared \- pre-shared keys file for IKE
-.SH SYNOPSIS
-.LP
-.nf
-\fB/etc/inet/secret/ike.preshared\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
- The \fB/etc/inet/secret/ike.preshared\fR file contains secret keying material
-that two \fBIKE\fR instances can use to authenticate each other. Because of the
-sensitive nature of this data, it is kept in the \fB/etc/inet/secret\fR
-directory, which is only accessible by root.
-.sp
-.LP
-Pre-shared keys are delimited by open-curly-brace (\fB{\fR) and
-close-curly-brace (\fB}\fR) characters. There are five name-value pairs
-required inside a pre-shared key:
-.sp
-
-.sp
-.TS
-c c c
-l l l .
-Name Value Example
-localidtype IP localidtype IP
-remoteidtype IP remoteidtype IP
-localid IP-address localid 10.1.1.2
-remoteid IP-address remoteid 10.1.1.3
-key hex-string 1234567890abcdef
-.TE
-
-.sp
-.LP
-Comment lines with \fB#\fR appearing in the first column are also legal.
-.sp
-.LP
-Files in this format can also be used by the \fBikeadm\fR(1M) command to load
-additional pre-shared keys into a running an \fBin.iked\fR(1M) process.
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRA Sample ike.preshared File
-.sp
-.LP
-The following is an example of an \fBike.preshared\fR file:
-
-.sp
-.in +2
-.nf
-
-#
-# Two pre-shared keys between myself, 10.1.1.2, and two remote
-# hosts. Note that names are not allowed for IP addresses.
-#
-# A decent hex string can be obtained by performing:
-# od -x </dev/random | head
-#
-
-{
- localidtype IP
- localid 10.1.1.2
- remoteidtype IP
- remoteid 10.21.12.4
- key 4b656265207761732068657265210c0a
-}
-
-{
- localidtype IP
- localid 10.1.1.2
- remoteidtype IP
- remoteid 10.9.1.25
- key 536f20776572652042696c6c2c2052656e65652c20616e642043687269732e0a
-}
-.fi
-.in -2
-
-.SH SECURITY
-.sp
-.LP
-If this file is compromised, all \fBIPsec\fR security associations derived from
-secrets in this file will be compromised as well. The default permissions on
-\fBike.preshared\fR are \fB0600\fR. They should stay this way.
-.SH SEE ALSO
-.sp
-.LP
-\fBod\fR(1), \fBikeadm\fR(1M), \fBin.iked\fR(1M), \fBipseckey\fR(1M),
-\fBattributes\fR(5), \fBrandom\fR(7D)
diff --git a/usr/src/man/man4/inet_type.4 b/usr/src/man/man4/inet_type.4
deleted file mode 100644
index c9d68008d6..0000000000
--- a/usr/src/man/man4/inet_type.4
+++ /dev/null
@@ -1,101 +0,0 @@
-'\" te
-.\" Copyright (C) 1999, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH INET_TYPE 4 "Jun 16, 1999"
-.SH NAME
-inet_type \- default Internet protocol type
-.SH SYNOPSIS
-.LP
-.nf
-\fB/etc/default/inet_type\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBinet_type\fR file defines the default \fBIP\fR protocol to use.
-Currently this file is only used by the \fBifconfig\fR(1M) and
-\fBnetstat\fR(1M) commands.
-.sp
-.LP
-The \fBinet_type\fR file can contain a number of \fB<variable>=<value>\fR
-lines. Currently, the only variable defined is \fBDEFAULT_IP\fR, which can be
-assigned a value of \fBIP_VERSION4\fR, \fBIP_VERSION6\fR, or \fBBOTH\fR.
-.sp
-.LP
-The output displayed by the \fBifconfig\fR and \fBnetstat\fR commands can be
-controlled by the value of \fBDEFAULT_IP\fR set in \fBinet_type\fR file. By
-default, both commands display the IPv4 and IPv6 information available on the
-system. The user can choose to suppress display of IPv6 information by setting
-the value of \fBDEFAULT_IP\fR. The following shows the possible values for
-\fBDEFAULT_IP\fR and the resulting \fBifconfig\fR and \fBnetstat\fR output that
-will be displayed:
-.sp
-.ne 2
-.na
-\fB\fBIP_VERSION4\fR\fR
-.ad
-.RS 15n
-Displays only IPv4 related information. The output displayed is backward
-compatible with older versions of the \fBifconfig\fR(1M) and \fBnetstat\fR(1M)
-commands.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBIP_VERSION6\fR\fR
-.ad
-.RS 15n
-Displays both IPv4 and IPv6 related information for \fBifconfig\fR and
-\fBnetstat\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBBOTH\fR\fR
-.ad
-.RS 15n
-Displays both IPv4 and IPv6 related information for \fBifconfig\fR and
-\fBnetstat\fR.
-.RE
-
-.sp
-.LP
-The command-line options to the \fBifconfig\fR and \fBnetstat\fR commands
-override the effect of \fBDEFAULT_IP\fR as set in the \fBinet_type\fR file. For
-example, even if the value of \fBDEFAULT_IP\fR is \fBIP_VERSION4\fR, the
-command
-.sp
-.in +2
-.nf
-example% \fBifconfig -a6\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-will display all IPv6 interfaces.
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRSuppressing IPv6 Related Output
-.sp
-.LP
-This is what the \fBinet_type\fR file must contain if you want to suppress IPv6
-related output:
-
-.sp
-.in +2
-.nf
-DEFAULT_IP=IP_VERSION4
-.fi
-.in -2
-
-.SH SEE ALSO
-.sp
-.LP
-\fBifconfig\fR(1M), \fBnetstat\fR(1M)
diff --git a/usr/src/man/man4/inetd.conf.4 b/usr/src/man/man4/inetd.conf.4
deleted file mode 100644
index 1b272d6b28..0000000000
--- a/usr/src/man/man4/inetd.conf.4
+++ /dev/null
@@ -1,250 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 1985 Regents of the University of California. All rights reserved. The Berkeley software License Agreement specifies the terms and conditions for redistribution.
-.\" Copyright (C) 2004, Sun Microsystems, Inc. All Rights Reserved
-.TH INETD.CONF 4 "April 9, 2016"
-.SH NAME
-inetd.conf \- Internet servers database
-.SH SYNOPSIS
-.LP
-.nf
-\fB/etc/inet/inetd.conf\fR
-.fi
-
-.LP
-.nf
-\fB/etc/inetd.conf\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-In the current release of the Solaris operating system, the \fBinetd.conf\fR
-file is no longer directly used to configure \fBinetd\fR. The Solaris services
-which were formerly configured using this file are now configured in the
-Service Management Facility (see \fBsmf\fR(5)) using \fBinetadm\fR(1M). Any
-records remaining in this file after installation or upgrade, or later created
-by installing additional software, must be converted to \fBsmf\fR(5) services
-and imported into the SMF repository using \fBinetconv\fR(1M), otherwise the
-service will not be available.
-.sp
-.LP
-For Solaris operating system releases prior to the current release (such as
-Solaris 9), the \fBinetd.conf\fR file contains the list of servers that
-\fBinetd\fR(1M) invokes when it receives an Internet request over a socket.
-Each server entry is composed of a single line of the form:
-.sp
-.in +2
-.nf
-\fIservice-name\fR \fIendpoint-type\fR \fIprotocol \fR\fIwait-status\fR \fIuid\fR \fIserver-program\fR \e
-\fIserver-arguments\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Fields are separated by either SPACE or TAB characters. A `\fB#\fR' (number
-sign) indicates the beginning of a comment; characters up to the end of the
-line are not interpreted by routines that search this file.
-.sp
-.ne 2
-.na
-\fB\fIservice-name\fR\fR
-.ad
-.RS 20n
-The name of a valid service listed in the \fBservices\fR file. For \fBRPC\fR
-services, the value of the \fIservice-name\fR field consists of the \fBRPC\fR
-service name or program number, followed by a '\fB/\fR' (slash) and either a
-version number or a range of version numbers, for example, \fBrstatd/2-4\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIendpoint-type\fR\fR
-.ad
-.RS 20n
-Can be one of:
-.sp
-.ne 2
-.na
-\fB\fBstream\fR\fR
-.ad
-.RS 13n
-for a stream socket
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdgram\fR\fR
-.ad
-.RS 13n
-for a datagram socket
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBraw\fR\fR
-.ad
-.RS 13n
-for a raw socket
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBseqpacket\fR\fR
-.ad
-.RS 13n
-for a sequenced packet socket
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBtli\fR\fR
-.ad
-.RS 13n
-for all \fBTLI\fR endpoints
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIprotocol\fR\fR
-.ad
-.RS 20n
-A recognized protocol listed in the file \fB/etc/inet/protocols\fR. For servers
-capable of supporting \fBTCP\fR and \fBUDP\fR over IPv6, the following protocol
-types are also recognized:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBtcp6\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBudp6\fR
-.RE
-\fB\fR\fBtcp6\fR and \fBudp6\fR are not official protocols; accordingly, they
-are not listed in the \fB/etc/inet/protocols\fR file.
-.sp
-Here the \fBinetd\fR program uses an \fBAF_INET6\fR type socket endpoint. These
-servers can also handle incoming IPv4 client requests in addition to IPv6
-client requests.
-.sp
-For \fBRPC\fR services, the field consists of the string \fBrpc\fR followed by
-a '/' (slash) and either a '*' (asterisk), one or more nettypes, one or more
-netids, or a combination of nettypes and netids. Whatever the value, it is
-first treated as a nettype. If it is not a valid nettype, then it is treated as
-a netid. For example, \fBrpc/*\fR for an \fBRPC\fR service using all the
-transports supported by the system (the list can be found in the
-\fB/etc/netconfig\fR file), equivalent to saying \fBrpc/visible rpc/ticots\fR
-for an \fBRPC\fR service using the Connection-Oriented Transport Service.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIwait-status\fR\fR
-.ad
-.RS 20n
-This field has values \fBwait\fR or \fBnowait\fR. This entry specifies whether
-the server that is invoked by \fBinetd\fR will take over the listening socket
-associated with the service, and whether once launched, \fBinetd\fR will
-\fBwait\fR for that server to exit, if ever, before it resumes listening for
-new service requests. The \fIwait-status\fR for datagram servers must be set to
-\fBwait\fR, as they are always invoked with the original datagram socket that
-will participate in delivering the service bound to the specified service. They
-do not have separate "listening" and "accepting" sockets. Accordingly, do not
-configure \fBUDP\fR services as \fBnowait\fR. This causes a race condition by
-which the \fBinetd\fR program selects on the socket and the server program
-reads from the socket. Many server programs will be forked, and performance
-will be severely compromised. Connection-oriented services such as \fBTCP\fR
-stream services can be designed to be either \fBwait\fR or \fBnowait\fR status.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIuid\fR\fR
-.ad
-.RS 20n
-The user \fBID\fR under which the server should run. This allows servers to run
-with access privileges other than those for root.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIserver-program\fR\fR
-.ad
-.RS 20n
-Either the pathname of a server program to be invoked by \fBinetd\fR to perform
-the requested service, or the value \fBinternal\fR if \fBinetd\fR itself
-provides the service.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIserver-arguments\fR\fR
-.ad
-.RS 20n
-If a server must be invoked with command line arguments, the entire command
-line (including argument 0) must appear in this field (which consists of all
-remaining words in the entry). If the server expects \fBinetd\fR to pass it the
-address of its peer, for compatibility with 4.2BSD executable daemons, then the
-first argument to the command should be specified as \fB%A\fR. No more than 20
-arguments are allowed in this field. The \fB%A\fR argument is implemented only
-for services whose \fIwait-status\fR value is \fBnowait\fR.
-.RE
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/etc/netconfig\fR\fR
-.ad
-.RS 23n
-network configuration file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/inet/protocols\fR\fR
-.ad
-.RS 23n
-Internet protocols
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/inet/services\fR\fR
-.ad
-.RS 23n
-Internet network services
-.RE
-
-.SH SEE ALSO
-.LP
-\fBrlogin\fR(1), \fBrsh\fR(1), \fBin.tftpd\fR(1M), \fBinetadm\fR(1M),
-\fBinetconv\fR(1M), \fBinetd\fR(1M), \fBservices\fR(4), \fBsmf\fR(5)
-.SH NOTES
-.LP
-\fB/etc/inet/inetd.conf\fR is the official SVR4 name of the \fBinetd.conf\fR
-file. The symbolic link \fB/etc/inetd.conf\fR exists for \fBBSD\fR
-compatibility.
-.sp
-.LP
-This man page describes \fBinetd.conf\fR as it was supported in Solaris
-operating system releases prior to the current release. The services that were
-configured by means of \fBinetd.conf\fR are now configured in the Service
-Management Facility (see \fBsmf\fR(5)) using \fBinetadm\fR(1M).
diff --git a/usr/src/man/man4/init.4 b/usr/src/man/man4/init.4
deleted file mode 100644
index be72691a62..0000000000
--- a/usr/src/man/man4/init.4
+++ /dev/null
@@ -1,141 +0,0 @@
-'\"
-.\" Copyright 2021 OmniOS Community Edition (OmniOSce) Association.
-.\" Copyright 2014 Garrett D'Amore
-.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 1989 AT&T
-.\"
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.\"
-.Dd November 7, 2021
-.Dt INIT 4
-.Os
-.Sh NAME
-.Nm init ,
-.Nm TIMEZONE
-.Nd set default system time zone and locale
-.Sh SYNOPSIS
-.Pa /etc/default/init
-.Pp
-.Pa /etc/TIMEZONE
-.Sh DESCRIPTION
-This file sets the time zone environment variable
-.Ev TZ ,
-and the locale-related environment variables
-.Ev LANG ,
-.Ev LC_COLLATE ,
-.Ev LC_CTYPE ,
-.Ev LC_MESSAGES ,
-.Ev LC_MONETARY ,
-.Ev LC_NUMERIC
-and
-.Ev LC_TIME .
-.Pp
-It can also be used to set any additional environment variables which should be
-present in all processes started by
-.Xr init 1M
-or
-.Xr svc.startd 1M ,
-and in any
-.Xr zoneadmd 1M
-daemons started automatically to support zone operations.
-.Pp
-The format of the file is a set of tokens of the form:
-.Pp
-.Dl Ar VAR Ns No \&= Ns Ar value
-.Pp
-where
-.Ar VAR
-is an environment variable and
-.Ar value
-is the value assigned to the variable.
-.Ar value
-can be enclosed in double quotes
-.Pq \&"
-or single quotes
-.Pq \&' ,
-however, these quotes cannot be part of the value.
-Neither
-.Ar VAR
-nor
-.Ar value
-may contain whitespace.
-Multiple
-.Ar VAR Ns No \&= Ns Ar value
-pairs can occur on the same line, separated by whitespace or a semicolon
-.Pq \&; ,
-but, for compatibility with existing software, the
-.Ev TZ
-variable
-.Em must
-appear on its own line with no leading whitespace.
-Comments are supported; each comment must be on its own line and begin with a
-hash
-.Pq #
-character.
-.Pp
-If the
-.Ev CMASK
-variable is specified, it is not passed to the environment but the value is
-used to set the initial umask that
-.Xr init 1M
-uses and that every other process inherits.
-The
-.Ev CMASK
-value is specified in octal and must be between 000 and 077 to be accepted; the
-value is silently ignored otherwise.
-If the value is missing or cannot be parsed as an octal number, then a value
-of 0 is assumed.
-A sequence of valid octal digits followed by other trailing characters will be
-treated as if the trailing characters were not present.
-.Pp
-For
-.Xr init 1M ,
-the number of environment variables that can be set is limited to 20.
-.Pp
-.Pa /etc/TIMEZONE
-is a symbolic link to
-.Pa /etc/default/init .
-This link exists for compatibility with legacy software, is obsolete, and may
-be removed in a future release.
-.Sh SEE ALSO
-.Xr init 1M ,
-.Xr rtc 1M ,
-.Xr svc.startd 1M ,
-.Xr zoneadmd 1M ,
-.Xr ctime 3C ,
-.Xr environ 5
-.Sh NOTES
-When changing the
-.Ev TZ
-setting on x86 systems, you must make a corresponding change to the
-.Pa /etc/rtc_config
-file to account for the new timezone setting.
-This can be accomplished by executing the following commands, followed by a
-reboot, to make the changes take effect:
-.Bd -literal -offset indent
-# rtc -z zone-name
-# rtc -c
-.Ed
-.Pp
-where
-.Ar zone-name
-is the same name as the
-.Ev TZ
-variable setting.
-.Pp
-See
-.Xr rtc 1M
-for more information.
diff --git a/usr/src/man/man4/init.d.4 b/usr/src/man/man4/init.d.4
deleted file mode 100644
index c0ae9654c0..0000000000
--- a/usr/src/man/man4/init.d.4
+++ /dev/null
@@ -1,107 +0,0 @@
-'\" te
-.\" Copyright (c) 2000, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH INIT.D 4 "May 13, 2017"
-.SH NAME
-init.d \- initialization and termination scripts for changing init states
-.SH SYNOPSIS
-.LP
-.nf
-\fB/etc/init.d\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-\fB/etc/init.d\fR is a directory containing initialization and termination
-scripts for changing init states. These scripts are linked when appropriate to
-files in the \fBrc?.d\fR directories, where `\fB?\fR' is a single character
-corresponding to the init state. See \fBinit\fR(1M) for definitions of the
-states.
-.sp
-.LP
-The service management facility (see \fBsmf\fR(5)) is the preferred mechanism
-for service initiation and termination. The \fBinit.d\fR and \fBrc?.d\fR
-directories are obsolete, and are provided for compatibility purposes only.
-Applications launched from these directories by \fBsvc.startd\fR(1M) are
-incomplete services, and will not be restarted on failure.
-.sp
-.LP
-File names in \fBrc?.d\fR directories are of the form \fB[SK]nn\fI<init.d
-filename>\fR\fR, where \fBS\fR means start this job, \fBK\fR means kill this
-job, and \fBnn\fR is the relative sequence number for killing or starting the
-job.
-.sp
-.LP
-When entering a state (init S,0,2,3,etc.) the \fBrc[S0-6]\fR script executes
-those scripts in \fB/etc/rc[S0-6].d\fR that are prefixed with \fBK\fR followed
-by those scripts prefixed with \fBS\fR. When executing each script in one of
-the \fB/etc/rc[S0-6] directories, the /sbin/rc[S0-6]\fR script passes a single
-argument. It passes the argument 'stop' for scripts prefixed with \fBK\fR and
-the argument 'start' for scripts prefixed with \fBS\fR. There is no harm in
-applying the same sequence number to multiple scripts. In this case the order
-of execution is deterministic but unspecified.
-.sp
-.LP
-Guidelines for selecting sequence numbers are provided in \fBREADME\fR files
-located in the directory associated with that target state. For example,
-\fB/etc/rc[S0-6].d/README\fR. Absence of a \fBREADME\fR file indicates that
-there are currently no established guidelines.
-.sp
-.LP
-Do not put \fB/etc/init.d\fR in your \fB$PATH\fR. Having this directory in your
-\fB$PATH\fR can cause unexpected behavior. The programs in \fB/etc/init.d\fR
-are associated with \fBinit\fR state changes and, under normal circumstances,
-are not intended to be invoked from a command line.
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRExample of \fB/sbin/rc2\fR.
-.sp
-.LP
-When changing to init state 2 (multi-user mode, network resources not
-exported), \fB/sbin/rc2\fR is initiated by the \fBsvc.startd\fR(1M) process.
-The following steps are performed by \fB/sbin/rc2\fR.
-
-.RS +4
-.TP
-1.
-In the directory \fB/etc/rc2.d\fR are files used to stop processes that
-should not be running in state 2. The filenames are prefixed with \fBK\fR. Each
-\fBK\fR file in the directory is executed (by \fB/sbin/rc2\fR) in alphanumeric
-order when the system enters init state 2. See example below.
-.RE
-.RS +4
-.TP
-2.
-Also in the \fBrc2.d\fR directory are files used to start processes that
-should be running in state 2. As in Step 1, each \fBS\fR file is executed.
-.RE
-.sp
-.LP
-Assume the file \fB/etc/init.d/netdaemon\fR is a script that will initiate
-networking daemons when given the argument 'start', and will terminate the
-daemons if given the argument 'stop'. It is linked to
-\fB/etc/rc2.d/S68netdaemon\fR, and to \fB/etc/rc0.d/K67netdaemon\fR. The file
-is executed by \fB/etc/rc2.d/S68netdaemon start\fR when init state 2 is entered
-and by \fB/etc/rc0.d/K67netdaemon stop\fR when shutting the system down.
-
-.SH SEE ALSO
-.LP
-\fBsvcs\fR(1), \fBinit\fR(1M), \fBsvc.startd\fR(1M), \fBsvccfg\fR(1M),
-\fBsmf\fR(5)
-.SH NOTES
-.LP
-Solaris now provides an expanded mechanism, which includes automated restart,
-for applications historically started via the init script mechanism. The
-Service Management Facility (introduced in \fBsmf\fR(5)) is the preferred
-delivery mechanism for persistently running applications. Existing \fBinit.d\fR
-scripts will, however, continue to be executed according to the rules in this
-manual page. The details of execution in relation to managed services are
-available in \fBsvc.startd\fR(1M).
-.sp
-.LP
-On earlier Solaris releases, a script named with a suffix of '.sh' would be
-sourced, allowing scripts to modify the environment of other scripts executed
-later. This behavior is no longer supported; for altering the environment in
-which services are run, see the \fBsetenv\fR subcommand in \fBsvccfg\fR(1M).
diff --git a/usr/src/man/man4/inittab.4 b/usr/src/man/man4/inittab.4
deleted file mode 100644
index 97d7a4c869..0000000000
--- a/usr/src/man/man4/inittab.4
+++ /dev/null
@@ -1,250 +0,0 @@
-'\" te
-.\" Copyright (c) 2001 Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH INITTAB 4 "Dec 9, 2004"
-.SH NAME
-inittab \- script for init
-.SH DESCRIPTION
-.sp
-.LP
-The \fB/etc/inittab\fR file controls process dispatching by \fBinit\fR. The
-processes most typically dispatched by \fBinit\fR are daemons.
-.sp
-.LP
-It is no longer necessary to edit the \fB/etc/inittab\fR file directly.
-Administrators should use the Solaris Service Management Facility (SMF) to
-define services instead. Refer to \fBsmf\fR(5) and the \fISystem Administration
-Guide: Basic Administration\fR for more information on SMF.
-.sp
-.LP
-To modify parameters passed to \fBttymon\fR(1M), use \fBsvccfg\fR(1M) to modify
-the SMF repository. See \fBttymon\fR(1M) for details on the available SMF
-properties.
-.sp
-.LP
-The \fBinittab\fR file is composed of entries that are position dependent and
-have the following format:
-.sp
-.LP
-\fIid\fR\fB:\fR\fIrstate\fR\fB:\fR\fIaction\fR\fB:\fR\fIprocess\fR
-.sp
-.LP
-Each entry is delimited by a newline; however, a backslash (\e) preceding a
-newline indicates a continuation of the entry. Up to 512 characters for each
-entry are permitted. Comments may be inserted in the \fIprocess\fR field using
-the convention for comments described in \fBsh\fR(1). There are no limits
-(other than maximum entry size) imposed on the number of entries in the
-\fBinittab\fR file. The entry fields are:
-.sp
-.ne 2
-.na
-\fB\fIid\fR\fR
-.ad
-.RS 11n
-One to four characters used to uniquely identify an entry. Do not use the
-characters "r" or "t" as the first or only character in this field. These
-characters are reserved for the use of \fBrlogin\fR(1) and \fBtelnet\fR(1).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIrstate\fR\fR
-.ad
-.RS 11n
-Define the run level in which this entry is to be processed. Run-levels
-effectively correspond to a configuration of processes in the system. That is,
-each process spawned by \fBinit\fR is assigned a run level(s) in which it is
-allowed to exist. The run levels are represented by a number ranging from
-\fB0\fR through \fB6\fR. For example, if the system is in run level \fB1\fR,
-only those entries having a \fB1\fR in the \fIrstate\fR field are processed.
-.sp
-When \fBinit\fR is requested to change run levels, all processes that do not
-have an entry in the \fIrstate\fR field for the target run level are sent the
-warning signal \fBSIGTERM\fR and allowed a 5-second grace period before being
-forcibly terminated by the kill signal \fBSIGKILL\fR. The \fIrstate\fR field
-can define multiple run levels for a process by selecting more than one run
-level in any combination from \fB0\fR through \fB6\fR. If no run level is
-specified, then the process is assumed to be valid at all run levels \fB0\fR
-through \fB6\fR.
-.sp
-There are three other values, \fBa\fR, \fBb\fR and \fBc\fR, which can appear in
-the \fIrstate\fR field, even though they are not true run levels. Entries which
-have these characters in the \fIrstate\fR field are processed only when an
-\fBinit\fR or \fBtelinit\fR process requests them to be run (regardless of the
-current run level of the system). See \fBinit\fR(1M). These differ from run
-levels in that \fBinit\fR can never enter run level \fBa\fR, \fBb\fR or
-\fBc\fR. Also, a request for the execution of any of these processes does not
-change the current run level. Furthermore, a process started by an \fBa\fR,
-\fBb\fR or \fBc\fR command is not killed when \fBinit\fR changes levels. They
-are killed only if their line in \fBinittab\fR is marked \fBoff\fR in the
-\fIaction\fR field, their line is deleted entirely from \fBinittab\fR, or
-\fBinit\fR goes into single-user state.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIaction\fR\fR
-.ad
-.RS 11n
-Key words in this field tell \fBinit\fR how to treat the process specified in
-the \fIprocess\fR field. The actions recognized by \fBinit\fR are as follows:
-.sp
-.ne 2
-.na
-\fB\fBrespawn\fR\fR
-.ad
-.RS 13n
-If the process does not exist, then start the process; do not wait for its
-termination (continue scanning the \fBinittab\fR file), and when the process
-dies, restart the process. If the process currently exists, do nothing and
-continue scanning the \fBinittab\fR file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBwait\fR\fR
-.ad
-.RS 13n
-When \fBinit\fR enters the run level that matches the entry's \fIrstate\fR,
-start the process and wait for its termination. All subsequent reads of the
-\fBinittab\fR file while \fBinit\fR is in the same run level cause \fBinit\fR
-to ignore this entry.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBonce\fR\fR
-.ad
-.RS 13n
-When \fBinit\fR enters a run level that matches the entry's \fIrstate\fR, start
-the process, do not wait for its termination. When it dies, do not restart the
-process. If \fBinit\fR enters a new run level and the process is still running
-from a previous run level change, the program is not restarted.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBboot\fR\fR
-.ad
-.RS 13n
-The entry is to be processed only at \fBinit\fR's boot-time read of the
-\fBinittab\fR file. \fBinit\fR is to start the process and not wait for its
-termination; when it dies, it does not restart the process. In order for this
-instruction to be meaningful, the \fIrstate\fR should be the default or it must
-match \fBinit\fR's run level at boot time. This action is useful for an
-initialization function following a hardware reboot of the system.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBbootwait\fR\fR
-.ad
-.RS 13n
-The entry is to be processed the first time \fBinit\fR goes from single-user to
-multi-user state after the system is booted. \fBinit\fR starts the process,
-waits for its termination and, when it dies, does not restart the process.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpowerfail\fR\fR
-.ad
-.RS 13n
-Execute the process associated with this entry only when \fBinit\fR receives a
-power fail signal, \fBSIGPWR\fR (see \fBsignal\fR(3C)).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpowerwait\fR\fR
-.ad
-.RS 13n
-Execute the process associated with this entry only when \fBinit\fR receives a
-power fail signal, \fBSIGPWR\fR, and wait until it terminates before continuing
-any processing of \fBinittab\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBoff\fR\fR
-.ad
-.RS 13n
-If the process associated with this entry is currently running, send the
-warning signal \fBSIGTERM\fR and wait 5 seconds before forcibly terminating the
-process with the kill signal \fBSIGKILL\fR. If the process is nonexistent,
-ignore the entry.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBondemand\fR\fR
-.ad
-.RS 13n
-This instruction is really a synonym for the \fBrespawn\fR action. It is
-functionally identical to \fBrespawn\fR but is given a different keyword in
-order to divorce its association with run levels. This instruction is used only
-with the \fBa\fR, \fBb\fR or \fBc\fR values described in the \fIrstate\fR
-field.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsysinit\fR\fR
-.ad
-.RS 13n
-Entries of this type are executed before \fBinit\fR tries to access the console
-(that is, before the \fBConsole Login:\fR prompt). It is expected that this
-entry will be used only to initialize devices that \fBinit\fR might try to ask
-the run level question. These entries are executed and \fBinit\fR waits for
-their completion before continuing.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIprocess\fR\fR
-.ad
-.RS 11n
-Specify a command to be executed. The entire \fBprocess\fR field is prefixed
-with \fBexec\fR and passed to a forked \fBsh\fR as \fBsh \(mic 'exec\fR
-\fBcommand\fR'. For this reason, any legal \fBsh\fR syntax can appear in the
-\fIprocess\fR field.
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBsh\fR(1), \fBwho\fR(1), \fBinit\fR(1M), \fBsvcadm\fR(1M),
-\fBsvc.startd\fR(1M), \fBttymon\fR(1M), \fBexec\fR(2), \fBopen\fR(2),
-\fBsignal\fR(3C), \fBsmf\fR(5)
-.sp
-.LP
-\fISystem Administration Guide: Basic Administration\fR
-.SH NOTES
-.sp
-.LP
-With the introduction of the service management facility, the system-provided
-\fB/etc/inittab\fR file is greatly reduced from previous releases.
-.sp
-.LP
-The \fBinitdefault\fR entry is not recognized in Solaris 10. See \fBsmf\fR(5)
-for information on \fBSMF\fR milestones, and \fBsvcadm\fR(1M), which describes
-the "\fBsvcadm\fR \fBmilestone\fR \fB-d\fR" command; this provides similar
-functionality to modifying the \fBinitdefault\fR entry in previous versions of
-the Solaris OS.
diff --git a/usr/src/man/man4/ipaddrsel.conf.4 b/usr/src/man/man4/ipaddrsel.conf.4
deleted file mode 100644
index 070a64395e..0000000000
--- a/usr/src/man/man4/ipaddrsel.conf.4
+++ /dev/null
@@ -1,67 +0,0 @@
-'\" te
-.\" Copyright (C) 2003, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH IPADDRSEL.CONF 4 "Mar 6, 2003"
-.SH NAME
-ipaddrsel.conf \- IPv6 default address selection policy
-.SH SYNOPSIS
-.LP
-.nf
-\fB/etc/inet/ipaddrsel.conf\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBipaddrsel.conf\fR file contains the IPv6 default address selection
-policy table used for IPv6 source address selection and the sorting of
-\fBAF_INET6\fR addresses returned from name to address resolution. The
-mechanism for loading the file, the file format, and the meaning of the
-contents are described in \fBipaddrsel\fR(1M).
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRDefault \fB/etc/inet/ipaddrsel.conf\fR File
-.sp
-.LP
-The following is the default \fB/etc/inet/ipaddrsel.conf\fR file:
-
-.sp
-.in +2
-.nf
-#
-#ident "@(#)ipv6das.conf 1.1 02/07/28 SMI"
-#
-# Copyright 2002 Sun Microsystems, Inc. All rights reserved.
-# Use is subject to license terms.
-#
-# Prefix Precedence Label
-::1/128 50 0
-::/0 40 1
-2002::/16 30 2
-::/96 20 3
-::ffff:0.0.0.0/96 10 4
-.fi
-.in -2
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBipaddrsel\fR(1M), \fBattributes\fR(5)
diff --git a/usr/src/man/man4/ipf.4 b/usr/src/man/man4/ipf.4
deleted file mode 100644
index 9fde984978..0000000000
--- a/usr/src/man/man4/ipf.4
+++ /dev/null
@@ -1,550 +0,0 @@
-'\" te
-.\" To view license terms, attribution, and copyright for IP Filter, the
-.\" default path is /usr/lib/ipf/IPFILTER.LICENCE. If the illumos operating
-.\" environment has been installed anywhere other than the default, modify the
-.\" given path to access the file at the installed location.
-.\" Portions Copyright (c) 2015, Joyent, Inc.
-.TH IPF 4 "Mar 18, 2015"
-.SH NAME
-ipf, ipf.conf, ipf6.conf \- IP packet filter rule syntax
-.SH DESCRIPTION
-A rule file for \fBipf\fP may have any name or even be stdin. As
-\fBipfstat\fP produces parsable rules as output when displaying the internal
-kernel filter lists, it is quite plausible to use its output to feed back
-into \fBipf\fP. Thus, to remove all filters on input packets, the following
-could be done:
-.nf
-
-# ipfstat \-i | ipf \-rf \-\fP
-.fi
-.SH GRAMMAR
-The format used by \fBipf\fP for construction of filtering rules can be
-described using the following grammar in BNF:
-.nf
-filter-rule = [ insert ] action in-out [ options ] [ tos ] [ ttl ]
- [ proto ] ip [ group ].
-
-insert = "@" decnumber .
-action = block | "pass" | log | "count" | skip | auth | call .
-in-out = "in" | "out" .
-options = [ log ] [ tag ] [ "quick" ] [ "on" interface-name [ dup ]
- [ froute ] [ replyto ] ] .
-tos = "tos" decnumber | "tos" hexnumber .
-ttl = "ttl" decnumber .
-proto = "proto" protocol .
-ip = srcdst [ flags ] [ with withopt ] [ icmp ] [ keep ] .
-group = [ "head" decnumber ] [ "group" decnumber ] .
-
-block = "block" [ return-icmp[return-code] | "return-rst" ] .
-log = "log" [ "body" ] [ "first" ] [ "or-block" ] [ "level" loglevel ] .
-tag = "tag" tagid .
-skip = "skip" decnumber .
-auth = "auth" | "preauth" .
-call = "call" [ "now" ] function-name .
-dup = "dup-to" interface-name [ ":" ipaddr ] .
-froute = "fastroute" | "to" interface-name [ ":" ipaddr ] .
-replyto = "reply-to" interface-name [ ":" ipaddr ] .
-protocol = "tcp/udp" | "udp" | "tcp" | "icmp" | decnumber .
-srcdst = "all" | fromto .
-fromto = "from" [ "!" ] object "to" [ "!" ] object .
-
-return-icmp = "return-icmp" | "return-icmp-as-dest" .
-return-code = "(" icmp-code ")" .
-object = addr [ port-comp | port-range ] .
-addr = "any" | nummask | host-name [ "mask" ipaddr | "mask" hexnumber ] .
-addr = "any" | "<thishost>" | nummask |
- host-name [ "mask" ipaddr | "mask" hexnumber ] .
-port-comp = "port" compare port-num .
-port-range = "port" port-num range port-num .
-flags = "flags" flag { flag } [ "/" flag { flag } ] .
-with = "with" | "and" .
-icmp = "icmp-type" icmp-type [ "code" decnumber ] .
-return-code = "(" icmp-code ")" .
-keep = "keep" "state" [ "(" state-options ")" ] | "keep" "frags" .
-loglevel = facility"."priority | priority .
-
-nummask = host-name [ "/" decnumber ] .
-host-name = ipaddr | hostname | "any" .
-ipaddr = host-num "." host-num "." host-num "." host-num .
-host-num = digit [ digit [ digit ] ] .
-port-num = service-name | decnumber .
-state-options = state-opts [ "," state-options ] .
-
-state-opts = "age" decnumber [ "/" decnumber ] | "strict" |
- "no-icmp-err" | "limit" decnumber | "newisn" | "sync" .
-withopt = [ "not" | "no" ] opttype [ withopt ] .
-opttype = "ipopts" | "short" | "frag" | "opt" optname .
-optname = ipopts [ "," optname ] .
-ipopts = optlist | "sec-class" [ secname ] .
-secname = seclvl [ "," secname ] .
-seclvl = "unclass" | "confid" | "reserv-1" | "reserv-2" | "reserv-3" |
- "reserv-4" | "secret" | "topsecret" .
-icmp-type = "unreach" | "echo" | "echorep" | "squench" | "redir" |
- "timex" | "paramprob" | "timest" | "timestrep" | "inforeq" |
- "inforep" | "maskreq" | "maskrep" | decnumber .
-icmp-code = decumber | "net-unr" | "host-unr" | "proto-unr" | "port-unr" |
- "needfrag" | "srcfail" | "net-unk" | "host-unk" | "isolate" |
- "net-prohib" | "host-prohib" | "net-tos" | "host-tos" |
- "filter-prohib" | "host-preced" | "cutoff-preced" .
-optlist = "nop" | "rr" | "zsu" | "mtup" | "mtur" | "encode" | "ts" |
- "tr" | "sec" | "lsrr" | "e-sec" | "cipso" | "satid" | "ssrr" |
- "addext" | "visa" | "imitd" | "eip" | "finn" .
-facility = "kern" | "user" | "mail" | "daemon" | "auth" | "syslog" |
- "lpr" | "news" | "uucp" | "cron" | "ftp" | "authpriv" |
- "audit" | "logalert" | "local0" | "local1" | "local2" |
- "local3" | "local4" | "local5" | "local6" | "local7" .
-priority = "emerg" | "alert" | "crit" | "err" | "warn" | "notice" |
- "info" | "debug" .
-
-hexnumber = "0" "x" hexstring .
-hexstring = hexdigit [ hexstring ] .
-decnumber = digit [ decnumber ] .
-
-compare = "=" | "!=" | "<" | ">" | "<=" | ">=" | "eq" | "ne" | "lt" |
- "gt" | "le" | "ge" .
-range = "<>" | "><" .
-hexdigit = digit | "a" | "b" | "c" | "d" | "e" | "f" .
-digit = "0" | "1" | "2" | "3" | "4" | "5" | "6" | "7" | "8" | "9" .
-flag = "F" | "S" | "R" | "P" | "A" | "U" .
-.fi
-.PP
-This syntax is somewhat simplified for readability, some combinations
-that match this grammar are disallowed by the software because they do
-not make sense (such as tcp \fBflags\fP for non-TCP packets).
-.SH FILTER RULES
-The "briefest" valid rules are (currently) no-ops and are of the form:
-.nf
- block in all
- pass in all
- log out all
- count in all
-.fi
-.PP
-Filter rules are checked in order, with the last matching rule
-determining the fate of the packet (but see the \fBquick\fP option,
-below).
-.PP
-Filters are installed by default at the end of the kernel's filter
-lists, prepending the rule with \fB@n\fP will cause it to be inserted
-as the n'th entry in the current list. This is especially useful when
-modifying and testing active filter rulesets. See \fBipf\fP(1M) for more
-information.
-.SH ACTIONS
-The action indicates what to do with the packet if it matches the rest
-of the filter rule. Each rule MUST have an action. The following
-actions are recognised:
-.TP
-.B block
-indicates that the packet should be flagged to be dropped. In response
-to blocking a packet, the filter may be instructed to send a reply
-packet, either an ICMP packet (\fBreturn-icmp\fP), an ICMP packet
-masquerading as being from the original packet's destination
-(\fBreturn-icmp-as-dest\fP), or a TCP "reset" (\fBreturn-rst\fP). An
-ICMP packet may be generated in response to any IP packet, and its
-type may optionally be specified, but a TCP reset may only be used
-with a rule which is being applied to TCP packets. When using
-\fBreturn-icmp\fP or \fBreturn-icmp-as-dest\fP, it is possible to specify
-the actual unreachable `type'. That is, whether it is a network
-unreachable, port unreachable or even administratively
-prohibited. This is done by enclosing the ICMP code associated with
-it in parenthesis directly following \fBreturn-icmp\fP or
-\fBreturn-icmp-as-dest\fP as follows:
-.nf
- block return-icmp(11) ...
-.fi
-.PP
-Would return a Type-Of-Service (TOS) ICMP unreachable error.
-.TP
-.B pass
-will flag the packet to be let through the filter.
-.TP
-.B log
-causes the packet to be logged (as described in the LOGGING section
-below) and has no effect on whether the packet will be allowed through
-the filter.
-.TP
-.B count
-causes the packet to be included in the accounting statistics kept by
-the filter, and has no effect on whether the packet will be allowed through
-the filter. These statistics are viewable with ipfstat(1M).
-.TP
-.B call
-this action is used to invoke the named function in the kernel, which
-must conform to a specific calling interface. Customised actions and
-semantics can thus be implemented to supplement those available. This
-feature is for use by knowledgeable hackers, and is not currently
-documented.
-.TP
-.B "skip <n>"
-causes the filter to skip over the next \fIn\fP filter rules. If a rule is
-inserted or deleted inside the region being skipped over, then the value of
-\fIn\fP is adjusted appropriately.
-.TP
-.B auth
-this allows authentication to be performed by a user-space program running
-and waiting for packet information to validate. The packet is held for a
-period of time in an internal buffer whilst it waits for the program to return
-to the kernel the \fIreal\fP flags for whether it should be allowed through
-or not. Such a program might look at the source address and request some sort
-of authentication from the user (such as a password) before allowing the
-packet through or telling the kernel to drop it if from an unrecognised source.
-.TP
-.B preauth
-tells the filter that for packets of this class, it should look in the
-pre-authenticated list for further clarification. If no further matching
-rule is found, the packet will be dropped (the FR_PREAUTH is not the same
-as FR_PASS). If a further matching rule is found, the result from that is
-used in its instead. This might be used in a situation where a person
-\fIlogs in\fP to the firewall and it sets up some temporary rules defining
-the access for that person.
-.PP
-The next word must be either \fBin\fP or \fBout\fP. Each packet
-moving through the kernel is either inbound (just been received on an
-interface, and moving towards the kernel's protocol processing) or
-outbound (transmitted or forwarded by the stack, and on its way to an
-interface). There is a requirement that each filter rule explicitly
-state which side of the I/O it is to be used on.
-.SH OPTIONS
-The list of options is brief, and all are indeed optional. Where
-options are used, they must be present in the order shown here. These
-are the currently supported options:
-.TP
-.B log
-indicates that, should this be the last matching rule, the packet
-header will be written to the \fBipl\fP log (as described in the
-LOGGING section below).
-.TP
-.B tag tagid
-indicates that, if this rule causes the packet to be logged or entered
-in the state table, the tagid will be logged as part of the log entry.
-This can be used to quickly match "similar" rules in scripts that post
-process the log files for e.g. generation of security reports or accounting
-purposes. The tagid is a 32 bit unsigned integer.
-.TP
-.B quick
-allows "short-cut" rules in order to speed up the filter or override
-later rules. If a packet matches a filter rule which is marked as
-\fBquick\fP, this rule will be the last rule checked, allowing a
-"short-circuit" path to avoid processing later rules for this
-packet. The current status of the packet (after any effects of the
-current rule) will determine whether it is passed or blocked.
-.IP
-If this option is missing, the rule is taken to be a "fall-through"
-rule, meaning that the result of the match (block/pass) is saved and
-that processing will continue to see if there are any more matches.
-.TP
-.B on
-allows an interface name to be incorporated into the matching
-procedure. Interface names are as printed by "netstat \-i". If this
-option is used, the rule will only match if the packet is going
-through that interface in the specified direction (in/out). If this
-option is absent, the rule is taken to be applied to a packet
-regardless of the interface it is present on (i.e. on all interfaces).
-Filter rulesets are common to all interfaces, rather than having a
-filter list for each interface.
-.IP
-This option is especially useful for simple IP-spoofing protection:
-packets should only be allowed to pass inbound on the interface from
-which the specified source address would be expected, others may be
-logged and/or dropped.
-.TP
-.B dup-to
-causes the packet to be copied, and the duplicate packet to be sent
-outbound on the specified interface, optionally with the destination
-IP address changed to that specified. This is useful for off-host
-logging, using a network sniffer.
-.TP
-.B to
-causes the packet to be moved to the outbound queue on the
-specified interface. This can be used to circumvent kernel routing
-decisions, and even to bypass the rest of the kernel processing of the
-packet (if applied to an inbound rule). It is thus possible to
-construct a firewall that behaves transparently, like a filtering hub
-or switch, rather than a router. The \fBfastroute\fP keyword is a
-synonym for this option.
-.SH MATCHING PARAMETERS
-The keywords described in this section are used to describe attributes
-of the packet to be used when determining whether rules match or don't
-match. The following general-purpose attributes are provided for
-matching, and must be used in this order:
-.TP
-.B tos
-packets with different Type-Of-Service values can be filtered.
-Individual service levels or combinations can be filtered upon. The
-value for the TOS mask can either be represented as a hex number or a
-decimal integer value.
-.TP
-.B ttl
-packets may also be selected by their Time-To-Live value. The value given in
-the filter rule must exactly match that in the packet for a match to occur.
-This value can only be given as a decimal integer value.
-.TP
-.B proto
-allows a specific protocol to be matched against. All protocol names
-found in \fB/etc/protocols\fP are recognised and may be used.
-However, the protocol may also be given as a DECIMAL number, allowing
-for rules to match your own protocols, or new ones which would
-out-date any attempted listing.
-.IP
-The special protocol keyword \fBtcp/udp\fP may be used to match either
-a TCP or a UDP packet, and has been added as a convenience to save
-duplication of otherwise-identical rules.
-.\" XXX grammar should reflect this (/etc/protocols)
-.PP
-The \fBfrom\fP and \fBto\fP keywords are used to match against IP
-addresses (and optionally port numbers). Rules must specify BOTH
-source and destination parameters.
-.PP
-IP addresses may be specified in one of two ways: as a numerical
-address\fB/\fPmask, or as a hostname \fBmask\fP netmask. The hostname
-may either be a valid hostname, from either the hosts file or DNS
-(depending on your configuration and library) or of the dotted numeric
-form. There is no special designation for networks but network names
-are recognised. Note that having your filter rules depend on DNS
-results can introduce an avenue of attack, and is discouraged.
-.PP
-There is a special case for the hostname \fBany\fP which is taken to
-be 0.0.0.0/0 (see below for mask syntax) and matches all IP addresses.
-Only the presence of "any" has an implied mask, in all other
-situations, a hostname MUST be accompanied by a mask. It is possible
-to give "any" a hostmask, but in the context of this language, it is
-non-sensical.
-.PP
-The numerical format "x\fB/\fPy" indicates that a mask of y
-consecutive 1 bits set is generated, starting with the MSB, so a y value
-of 16 would give 0xffff0000. The symbolic "x \fBmask\fP y" indicates
-that the mask y is in dotted IP notation or a hexadecimal number of
-the form 0x12345678. Note that all the bits of the IP address
-indicated by the bitmask must match the address on the packet exactly;
-there isn't currently a way to invert the sense of the match, or to
-match ranges of IP addresses which do not express themselves easily as
-bitmasks (anthropomorphization; it's not just for breakfast anymore).
-.PP
-If a \fBport\fP match is included, for either or both of source and
-destination, then it is only applied to
-.\" XXX - "may only be" ? how does this apply to other protocols? will it not match, or will it be ignored?
-TCP and UDP packets. If there is no \fBproto\fP match parameter,
-packets from both protocols are compared. This is equivalent to "proto
-tcp/udp". When composing \fBport\fP comparisons, either the service
-name or an integer port number may be used. Port comparisons may be
-done in a number of forms, with a number of comparison operators, or
-port ranges may be specified. When the port appears as part of the
-\fBfrom\fP object, it matches the source port number, when it appears
-as part of the \fBto\fP object, it matches the destination port number.
-See the examples for more information.
-.PP
-The \fBall\fP keyword is essentially a synonym for "from any to any"
-with no other match parameters.
-.PP
-Following the source and destination matching parameters, the
-following additional parameters may be used:
-.TP
-.B with
-is used to match irregular attributes that some packets may have
-associated with them. To match the presence of IP options in general,
-use \fBwith ipopts\fP. To match packets that are too short to contain
-a complete header, use \fBwith short\fP. To match fragmented packets,
-use \fBwith frag\fP. For more specific filtering on IP options,
-individual options can be listed.
-.IP
-Before any parameter used after the \fBwith\fP keyword, the word
-\fBnot\fP or \fBno\fP may be inserted to cause the filter rule to only
-match if the option(s) is not present.
-.IP
-Multiple consecutive \fBwith\fP clauses are allowed. Alternatively,
-the keyword \fBand\fP may be used in place of \fBwith\fP, this is
-provided purely to make the rules more readable ("with ... and ...").
-When multiple clauses are listed, all those must match to cause a
-match of the rule.
-.\" XXX describe the options more specifically in a separate section
-.TP
-.B flags
-is only effective for TCP filtering. Each of the letters possible
-represents one of the possible flags that can be set in the TCP
-header. The association is as follows:
-.LP
-.nf
- F - FIN
- S - SYN
- R - RST
- P - PUSH
- A - ACK
- U - URG
-.fi
-.IP
-The various flag symbols may be used in combination, so that "SA"
-would represent a SYN-ACK combination present in a packet. There is
-nothing preventing the specification of combinations, such as "SFR",
-that would not normally be generated by law-abiding TCP
-implementations. However, to guard against weird aberrations, it is
-necessary to state which flags you are filtering against. To allow
-this, it is possible to set a mask indicating which TCP flags you wish
-to compare (i.e., those you deem significant). This is done by
-appending "/<flags>" to the set of TCP flags you wish to match
-against, e.g.:
-.LP
-.nf
- ... flags S
- # becomes "flags S/AUPRFS" and will match
- # packets with ONLY the SYN flag set.
-
- ... flags SA
- # becomes "flags SA/AUPRFS" and will match any
- # packet with only the SYN and ACK flags set.
-
- ... flags S/SA
- # will match any packet with just the SYN flag set
- # out of the SYN-ACK pair; the common "establish"
- # keyword action. "S/SA" will NOT match a packet
- # with BOTH SYN and ACK set, but WILL match "SFP".
-.fi
-.TP
-.B icmp-type
-is only effective when used with \fBproto icmp\fP and must NOT be used
-in conjunction with \fBflags\fP. There are a number of types, which can be
-referred to by an abbreviation recognised by this language, or the numbers
-with which they are associated can be used. The most important from
-a security point of view is the ICMP redirect.
-.SH KEEP HISTORY
-The second last parameter which can be set for a filter rule is whether or not
-to record historical information for that packet, and what sort to keep. The
-following information can be kept:
-.TP
-.B state
-keeps information about the flow of a communication session. State can
-be kept for TCP, UDP, and ICMP packets.
-.TP
-.B frags
-keeps information on fragmented packets, to be applied to later
-fragments.
-.PP
-allowing packets which match these to flow straight through, rather
-than going through the access control list.
-.SH GROUPS
-The last pair of parameters control filter rule "grouping". By default, all
-filter rules are placed in group 0 if no other group is specified. To add a
-rule to a non-default group, the group must first be started by creating a
-group \fIhead\fP. If a packet matches a rule which is the \fIhead\fP of a
-group, the filter processing then switches to the group, using that rule as
-the default for the group. If \fBquick\fP is used with a \fBhead\fP rule, rule
-processing isn't stopped until it has returned from processing the group.
-.PP
-A rule may be both the head for a new group and a member of a non-default
-group (\fBhead\fP and \fBgroup\fP may be used together in a rule).
-.TP
-.B "head <n>"
-indicates that a new group (number n) should be created.
-.TP
-.B "group <n>"
-indicates that the rule should be put in group (number n) rather than group 0.
-.SH LOGGING
-When a packet is logged, with either the \fBlog\fP action or option,
-the headers of the packet are written to the \fBipl\fP packet logging
-pseudo-device. Immediately following the \fBlog\fP keyword, the
-following qualifiers may be used (in order):
-.TP
-.B body
-indicates that the first 128 bytes of the packet contents will be
-logged after the headers.
-.TP
-.B first
-If log is being used in conjunction with a "keep" option, it is recommended
-that this option is also applied so that only the triggering packet is logged
-and not every packet which thereafter matches state information.
-.TP
-.B or-block
-indicates that, if for some reason the filter is unable to log the
-packet (such as the log reader being too slow) then the rule should be
-interpreted as if the action was \fBblock\fP for this packet.
-.TP
-.B "level <loglevel>"
-indicates what logging facility and priority, or just priority with
-the default facility being used, will be used to log information about
-this packet using ipmon's -s option.
-.PP
-See ipl(4) for the format of records written
-to this device. The ipmon(1M) program can be used to read and format
-this log.
-.SH EXAMPLES
-The \fBquick\fP option is good for rules such as:
-.nf
-block in quick from any to any with ipopts
-.fi
-.PP
-which will match any packet with a non-standard header length (IP
-options present) and abort further processing of later rules,
-recording a match and also that the packet should be blocked.
-.PP
-The "fall-through" rule parsing allows for effects such as this:
-.LP
-.nf
- block in from any to any port < 6000
- pass in from any to any port >= 6000
- block in from any to any port > 6003
-.fi
-.PP
-which sets up the range 6000-6003 as being permitted and all others being
-denied. Note that the effect of the first rule is overridden by subsequent
-rules. Another (easier) way to do the same is:
-.LP
-.nf
- block in from any to any port 6000 <> 6003
- pass in from any to any port 5999 >< 6004
-.fi
-.PP
-Note that both the "block" and "pass" are needed here to effect a
-result as a failed match on the "block" action does not imply a pass,
-only that the rule hasn't taken effect. To then allow ports < 1024, a
-rule such as:
-.LP
-.nf
- pass in quick from any to any port < 1024
-.fi
-.PP
-would be needed before the first block. To create a new group for
-processing all inbound packets on le0/le1/lo0, with the default being to block
-all inbound packets, we would do something like:
-.LP
-.nf
- block in all
- block in quick on le0 all head 100
- block in quick on le1 all head 200
- block in quick on lo0 all head 300
-.fi
-.PP
-and to then allow ICMP packets in on le0, only, we would do:
-.LP
-.nf
- pass in proto icmp all group 100
-.fi
-.PP
-Note that because only inbound packets on le0 are used processed by group 100,
-there is no need to respecify the interface name. Likewise, we could further
-breakup processing of TCP, etc, as follows:
-.LP
-.nf
- block in proto tcp all head 110 group 100
- pass in from any to any port = 23 group 110
-.fi
-.PP
-and so on. The last line, if written without the groups would be:
-.LP
-.nf
- pass in on le0 proto tcp from any to any port = telnet
-.fi
-.PP
-Note, that if we wanted to say "port = telnet", "proto tcp" would
-need to be specified as the parser interprets each rule on its own and
-qualifies all service/port names with the protocol specified.
-.SH FILES
-/dev/ipauth
-.br
-/dev/ipl
-.br
-/dev/ipstate
-.br
-/etc/hosts
-.br
-/etc/services
-.SH SEE ALSO
-\fBipnat\fR(4), \fBipf\fR(1M), \fBipfstat\fR(1M), \fBipfilter\fR(5)
diff --git a/usr/src/man/man4/ipmon.4 b/usr/src/man/man4/ipmon.4
deleted file mode 100644
index 22b46ee3e8..0000000000
--- a/usr/src/man/man4/ipmon.4
+++ /dev/null
@@ -1,72 +0,0 @@
-'\" te
-.\" To view license terms, attribution, and copyright for IP Filter, the
-.\" default path is /usr/lib/ipf/IPFILTER.LICENCE. If the Illumos operating
-.\" environment has been installed anywhere other than the default, modify the
-.\" given path to access the file at the installed location.
-.\" Portions Copyright (c) 2015, Joyent, Inc.
-.TH IPMON 4 "Mar 18, 2015"
-.SH NAME
-ipmon, ipmon.conf \- ipmon configuration file format
-.SH DESCRIPTION
-The format for files accepted by ipmon is described by the following grammar:
-.LP
-.nf
-"match" "{" matchlist "}" "do" "{" doing "}" ";"
-
-matchlist ::= matching [ "," matching ] .
-matching ::= direction | dstip | dstport | every | group | interface |
- logtag | nattag | protocol | result | rule | srcip | srcport .
-
-dolist ::= doing [ "," doing ] .
-doing ::= execute | save | syslog .
-
-direction ::= "in" | "out" .
-dstip ::= "dstip" "=" ipv4 "/" number .
-dstport ::= "dstport" "=" number .
-every ::= "every" every-options .
-execute ::= "execute" "=" string .
-group ::= "group" "=" string | "group" "=" number .
-interface ::= "interface" "=" string .
-logtag ::= "logtag" "=" string | "logtag" "=" number .
-nattag ::= "nattag" "=" string .
-protocol ::= "protocol" "=" string | "protocol" "=" number .
-result ::= "result" "=" result-option .
-rule ::= "rule" "=" number .
-srcip ::= "srcip" "=" ipv4 "/" number .
-srcport ::= "srcport" "=" number .
-type ::= "type" "=" ipftype .
-ipv4 ::= number "." number "." number "." number .
-
-every-options ::= "second" | number "seconds" | "packet" | number "packets" .
-result-option ::= "pass" | "block" | "short" | "nomatch" | "log" .
-ipftype ::= "ipf" | "nat" | "state" .
-
-.fi
-.PP
-In addition, lines that start with a # are considered to be comments.
-.SH OVERVIEW
-.PP
-The ipmon configuration file is used for defining rules to be executed when
-logging records are read from
-.B /dev/ipl.
-.PP
-At present, only IPv4 matching is available for source/destination address
-matching.
-.SH MATCHING
-.PP
-Each rule for ipmon consists of two primary segments: the first describes how
-the log record is to be matched, the second defines what action to take if
-there is a positive match. All entries of the rules present in the file are
-compared for matches - there is no first or last rule match.
-.SH FILES
-/dev/ipl
-.br
-/dev/ipf
-.br
-/dev/ipnat
-.br
-/dev/ipstate
-.br
-/etc/ipmon.conf
-.SH SEE ALSO
-\fBipmon\fR(1M), \fBipfilter\fR(5)
diff --git a/usr/src/man/man4/ipnat.4 b/usr/src/man/man4/ipnat.4
deleted file mode 100644
index 6c3f0f85cf..0000000000
--- a/usr/src/man/man4/ipnat.4
+++ /dev/null
@@ -1,295 +0,0 @@
-'\" te
-.\" To view license terms, attribution, and copyright for IP Filter, the
-.\" default path is /usr/lib/ipf/IPFILTER.LICENCE. If the Illumos operating
-.\" environment has been installed anywhere other than the default, modify the
-.\" given path to access the file at the installed location.
-.\" Portions Copyright (c) 2015, Joyent, Inc.
-.TH IPNAT 4 "Mar 18, 2015"
-.SH NAME
-ipnat, ipnat.conf \- IP NAT file format
-.SH DESCRIPTION
-The format for files accepted by ipnat is described by the following grammar:
-.LP
-.nf
-ipmap :: = mapblock | redir | map .
-
-map ::= mapit ifname lhs "->" dstipmask [ mapicmp | mapport | mapproxy ]
- mapoptions .
-mapblock ::= "map-block" ifname lhs "->" ipmask [ ports ] mapoptions .
-redir ::= "rdr" ifname rlhs "->" ip [ "," ip ] rdrport rdroptions .
-
-lhs ::= ipmask | fromto .
-rlhs ::= ipmask dport | fromto .
-dport ::= "port" portnum [ "-" portnum ] .
-ports ::= "ports" numports | "auto" .
-rdrport ::= "port" portnum .
-mapit ::= "map" | "bimap" .
-fromto ::= "from" object "to" object .
-ipmask ::= ip "/" bits | ip "/" mask | ip "netmask" mask .
-dstipmask ::= ipmask | "range" ip "-" ip .
-mapicmp ::= "icmpidmap" "icmp" number ":" number .
-mapport ::= "portmap" tcpudp portspec .
-mapoptions ::= [ tcpudp ] [ "frag" ] [ age ] [ clamp ] .
-rdroptions ::= rdrproto [ rr ] [ "frag" ] [ age ] [ clamp ] [ rdrproxy ] .
-
-object :: = addr [ port-comp | port-range ] .
-addr :: = "any" | nummask | host-name [ "mask" ipaddr | "mask" hexnumber ] .
-port-comp :: = "port" compare port-num .
-port-range :: = "port" port-num range port-num .
-rdrproto ::= tcpudp | protocol .
-
-rr ::= "round-robin" .
-age ::= "age" decnumber [ "/" decnumber ] .
-clamp ::= "mssclamp" decnumber .
-tcpudp ::= "tcp/udp" | protocol .
-mapproxy ::= "proxy" "port" port proxy-name '/' protocol
-rdrproxy ::= "proxy" proxy-name .
-
-protocol ::= protocol-name | decnumber .
-nummask ::= host-name [ "/" decnumber ] .
-portspec ::= "auto" | portnumber ":" portnumber .
-port ::= portnumber | port-name .
-portnumber ::= number { numbers } .
-ifname ::= 'A' - 'Z' { 'A' - 'Z' } numbers .
-
-numbers ::= '0' | '1' | '2' | '3' | '4' | '5' | '6' | '7' | '8' | '9' .
-.fi
-.PP
-For standard NAT functionality, a rule should start with \fBmap\fP and then
-proceeds to specify the interface for which outgoing packets will have their
-source address rewritten.
-.PP
-Packets which will be rewritten can only be selected by matching the original
-source address. A netmask must be specified with the IP address.
-.PP
-The address selected for replacing the original is chosen from an IP#/netmask
-pair. A netmask of all 1's indicating a hostname is valid. A netmask of
-31 1's (255.255.255.254) is considered invalid as there is no space for
-allocating host IP#'s after consideration for broadcast and network
-addresses.
-.PP
-When remapping TCP and UDP packets, it is also possible to change the source
-port number. Either TCP or UDP or both can be selected by each rule, with a
-range of port numbers to remap into given as \fBport-number:port-number\fP.
-.SH COMMANDS
-There are four commands recognised by IP Filter's NAT code:
-.TP
-.B map
-that is used for mapping one address or network to another in an unregulated
-round robin fashion;
-.TP
-.B rdr
-that is used for redirecting packets to one IP address and port pair to
-another;
-.TP
-.B bimap
-for setting up bidirectional NAT between an external IP address and an internal
-IP address and
-.TP
-.B map-block
-which sets up static IP address based translation, based on a algorithm to
-squeeze the addresses to be translated into the destination range.
-.SH MATCHING
-.PP
-For basic NAT and redirection of packets, the address subject to change is used
-along with its protocol to check if a packet should be altered. The packet
-\fImatching\fP part of the rule is to the left of the "->" in each rule.
-.PP
-Matching of packets has now been extended to allow more complex compares.
-In place of the address which is to be translated, an IP address and port
-number comparison can be made using the same expressions available with
-\fBipf\fP. A simple NAT rule could be written as:
-.LP
-.nf
-map de0 10.1.0.0/16 -> 201.2.3.4/32
-.fi
-.LP
-or as
-.LP
-.nf
-map de0 from 10.1.0.0/16 to any -> 201.2.3.4/32
-.fi
-.LP
-Only IP address and port numbers can be compared against. This is available
-with all NAT rules.
-.SH TRANSLATION
-.PP
-To the right of the "->" is the address and port specification which will be
-written into the packet providing it has already successfully matched the
-prior constraints. The case of redirections (\fBrdr\fP) is the simplest:
-the new destination address is that specified in the rule. For \fBmap\fP
-rules, the destination address will be one for which the tuple combining
-the new source and destination is known to be unique. If the packet is
-either a TCP or UDP packet, the destination and source ports come into the
-equation too. If the tuple already exists, IP Filter will increment the
-port number first, within the available range specified with \fBportmap\fP
-and if there exists no unique tuple, the source address will be incremented
-within the specified netmask. If a unique tuple cannot be determined, then
-the packet will not be translated. The \fBmap-block\fP is more limited in
-how it searches for a new, free and unique tuple, in that it will used an
-algorithm to determine what the new source address should be, along with the
-range of available ports - the IP address is never changed and nor does the
-port number ever exceed its allotted range.
-.SH ICMPIDMAP
-.PP
-ICMP messages can be divided into two groups: "errors" and "queries". ICMP
-errors are generated as a response of another IP packet. IP Filter will take
-care that ICMP errors that are the response of a NAT-ed IP packet are
-handled properly.
-.PP
-For 4 types of ICMP queries (echo request, timestamp request, information
-request and address mask request) IP Filter supports an additional mapping
-called "ICMP id mapping". All these 4 types of ICMP queries use a unique
-identifier called the ICMP id. This id is set by the process sending the
-ICMP query and it is usually equal to the process id. The receiver of the
-ICMP query will use the same id in its response, thus enabling the
-sender to recognize that the incoming ICMP reply is intended for him and is
-an answer to a query that he made. The "ICMP id mapping" feature modifies
-these ICMP id in a way identical to \fBportmap\fP for TCP or UDP.
-.PP
-The reason that you might want this, is that using this feature you don't
-need an IP address per host behind the NAT box, that wants to do ICMP queries.
-The two numbers behind the \fBicmpidmap\fP keyword are the first and the
-last icmp id number that can be used. There is one important caveat: if you
-map to an IP address that belongs to the NAT box itself (notably if you have
-only a single public IP address), then you must ensure that the NAT box does
-not use the \fBicmpidmap\fP range that you specified in the \fBmap\fP rule.
-.SH KERNEL PROXIES
-.PP
-IP Filter comes with a few, simple, proxies built into the code that is loaded
-into the kernel to allow secondary channels to be opened without forcing the
-packets through a user program. The current state of the proxies is listed
-below, as one of three states:
-.HP
-Aging - protocol is roughly understood from
-the time at which the proxy was written but it is not well tested or
-maintained;
-.HP
-Developmental - basic functionality exists, works most of the time but
-may be problematic in extended real use;
-.HP
-Experimental - rough support for the protocol at best, may or may not
-work as testing has been at best sporadic, possible large scale changes
-to the code in order to properly support the protocol.
-.HP
-Mature - well tested, protocol is properly
-understood by the proxy;
-.PP
-The currently compiled in proxy list is as follows:
-.HP
-FTP - Mature
-.HP
-IRC - Experimental
-.HP
-rpcbind - Experimental
-.HP
-H.323 - Experimental
-.HP
-Real Audio (PNA) - Aging
-.HP
-IPsec - Developmental
-.HP
-netbios - Experimental
-.HP
-R-command - Mature
-
-.SH TRANSPARENT PROXIES
-.PP
-True transparent proxying should be performed using the redirect (\fBrdr\fP)
-rules directing ports to localhost (127.0.0.1) with the proxy program doing
-a lookup through \fB/dev/ipnat\fP to determine the real source and address
-of the connection.
-.SH LOAD-BALANCING
-.PP
-Two options for use with \fBrdr\fP are available to support primitive,
-\fIround-robin\fP based load balancing. The first option allows for a
-\fBrdr\fP to specify a second destination, as follows:
-.LP
-.nf
-rdr le0 203.1.2.3/32 port 80 -> 203.1.2.3,203.1.2.4 port 80 tcp
-.fi
-.LP
-This would send alternate connections to either 203.1.2.3 or 203.1.2.4.
-In scenarios where the load is being spread amongst a larger set of
-servers, you can use:
-.LP
-.nf
-rdr le0 203.1.2.3/32 port 80 -> 203.1.2.3,203.1.2.4 port 80 tcp round-robin
-rdr le0 203.1.2.3/32 port 80 -> 203.1.2.5 port 80 tcp round-robin
-.fi
-.LP
-In this case, a connection will be redirected to 203.1.2.3, then 203.1.2.4
-and then 203.1.2.5 before going back to 203.1.2.3. In accomplishing this,
-the rule is removed from the top of the list and added to the end,
-automatically, as required. This will not effect the display of rules
-using "ipnat -l", only the internal application order.
-.SH EXAMPLES
-.PP
-This section deals with the \fBmap\fP command and its variations.
-.PP
-To change IP#'s used internally from network 10 into an ISP provided 8 bit
-subnet at 209.1.2.0 through the ppp0 interface, the following would be used:
-.LP
-.nf
-map ppp0 10.0.0.0/8 -> 209.1.2.0/24
-.fi
-.PP
-The obvious problem here is we're trying to squeeze over 16,000,000 IP
-addresses into a 254 address space. To increase the scope, remapping for TCP
-and/or UDP, port remapping can be used;
-.LP
-.nf
-map ppp0 10.0.0.0/8 -> 209.1.2.0/24 portmap tcp/udp 1025:65000
-.fi
-.PP
-which falls only 527,566 `addresses' short of the space available in network
-10. If we were to combine these rules, they would need to be specified as
-follows:
-.LP
-.nf
-map ppp0 10.0.0.0/8 -> 209.1.2.0/24 portmap tcp/udp 1025:65000
-map ppp0 10.0.0.0/8 -> 209.1.2.0/24
-.fi
-.PP
-so that all TCP/UDP packets were port mapped and only other protocols, such as
-ICMP, only have their IP# changed. In some instances, it is more appropriate
-to use the keyword \fBauto\fP in place of an actual range of port numbers if
-you want to guarantee simultaneous access to all within the given range.
-However, in the above case, it would default to 1 port per IP address, since
-we need to squeeze 24 bits of address space into 8. A good example of how
-this is used might be:
-.LP
-.nf
-map ppp0 172.192.0.0/16 -> 209.1.2.0/24 portmap tcp/udp auto
-.fi
-.PP
-which would result in each IP address being given a small range of ports to
-use (252). In all cases, the new port number that is used is deterministic.
-That is, port X will always map to port Y.
-WARNING: It is not advisable to use the \fBauto\fP feature if you are map'ing
-to a /32 (i.e. 0/32) because the NAT code will try to map multiple hosts to
-the same port number, outgoing and ultimately this will only succeed for one
-of them.
-The problem here is that the \fBmap\fP directive tells the NAT
-code to use the next address/port pair available for an outgoing connection,
-resulting in no easily discernible relation between external addresses/ports
-and internal ones. This is overcome by using \fBmap-block\fP as follows:
-.LP
-.nf
-map-block ppp0 172.192.0.0/16 -> 209.1.2.0/24 ports auto
-.fi
-.PP
-For example, this would result in 172.192.0.0/24 being mapped to 209.1.2.0/32
-with each address, from 172.192.0.0 to 172.192.0.255 having 252 ports of its
-own. As opposed to the above use of \fBmap\fP, if for some reason the user
-of (say) 172.192.0.2 wanted 260 simultaneous connections going out, they would
-be limited to 252 with \fBmap-block\fP but would just \fImove on\fP to the next
-IP address with the \fBmap\fP command.
-/dev/ipnat
-.br
-/etc/services
-.br
-/etc/hosts
-.SH SEE ALSO
-\fBhosts\fR(4), \fBipf\fR(4), \fBservices\fR(4), \fBipf\fR(1M),
-\fBipnat\fR(1M), \fBipfilter\fR(5)
diff --git a/usr/src/man/man4/ipnodes.4 b/usr/src/man/man4/ipnodes.4
deleted file mode 100644
index 413a5cdcf9..0000000000
--- a/usr/src/man/man4/ipnodes.4
+++ /dev/null
@@ -1,25 +0,0 @@
-'\" te
-.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH IPNODES 4 "Aug 15, 2006"
-.SH NAME
-ipnodes \- symbolic link to hosts database
-.SH SYNOPSIS
-.LP
-.nf
-\fB/etc/inet/ipnodes\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBipnodes\fR file is now a symbolic link to the \fB/etc/hosts\fR file. See
-\fBhosts\fR(4). In prior releases of the Solaris operating system,
-\fBipnodes\fR was a local database distinct from \fBhosts\fR. The man page for
-a given Solaris release describes the \fBipnodes\fR file for that release.
-.SH SEE ALSO
-.sp
-.LP
-\fBhosts\fR(4)
diff --git a/usr/src/man/man4/ippool.4 b/usr/src/man/man4/ippool.4
deleted file mode 100644
index 1b6586a4b0..0000000000
--- a/usr/src/man/man4/ippool.4
+++ /dev/null
@@ -1,156 +0,0 @@
-'\" te
-.\" To view license terms, attribution, and copyright for IP Filter, the
-.\" default path is /usr/lib/ipf/IPFILTER.LICENCE. If the illumos operating
-.\" environment has been installed anywhere other than the default, modify the
-.\" given path to access the file at the installed location.
-.\" Portions Copyright (c) 2015, Joyent, Inc.
-.TH IPPOOL 4 "May 16, 2020"
-.SH NAME
-ippool, ippool.conf \- IP Pool file format
-.SH DESCRIPTION
-The format for files accepted by ippool is described by the following grammar:
-.LP
-.nf
-line ::= table | groupmap .
-table ::= "table" role tabletype .
-groupmap ::= "group-map" inout role number ipfgroup
-tabletype ::= ipftree | ipfhash .
-
-role ::= "role" "=" "ipf" .
-inout ::= "in" | "out" .
-
-ipftree ::= "type" "=" "tree" number "{" addrlist "}" .
-ipfhash ::= "type" "=" "hash" number hashopts "{" hashlist "}" .
-
-ipfgroup ::= setgroup hashopts "{" grouplist "}" |
- hashopts "{" setgrouplist "}" .
-setgroup ::= "group" "=" groupname .
-
-hashopts ::= size [ seed ] | seed .
-
-size ::= "size" number .
-seed ::= "seed" number .
-
-addrlist ::= [ "!" ] addrmask ";" [ addrlist ] .
-grouplist ::= groupentry ";" [ grouplist ] | addrmask ";" [ grouplist ] .
-
-setgrouplist ::= groupentry ";" [ setgrouplist ] .
-
-groupentry ::= addrmask "," setgroup .
-
-hashlist ::= hashentry ";" [ hashlist ] .
-hashentry ::= addrmask .
-
-addrmask ::= ipaddr | ipaddr "/" mask .
-
-mask ::= number | ipaddr .
-
-groupname ::= number | name .
-
-number ::= digit { digit } .
-
-ipaddr = host-num "." host-num "." host-num "." host-num .
-host-num = digit [ digit [ digit ] ] .
-
-digit ::= "0" | "1" | "2" | "3" | "4" | "5" | "6" | "7" | "8" | "9" .
-name ::= letter { letter | digit } .
-.fi
-.PP
-The IP pool configuration file is used for defining a single object that
-contains a reference to multiple IP address/netmask pairs. A pool may consist
-of a mixture of netmask sizes, from 0 to 32.
-.PP
-At this point in time, only IPv4 addressing is supported.
-.SH OVERVIEW
-The IP pool configuration file provides for defining two different mechanisms
-for improving speed in matching IP addresses with rules.
-The first,
-.B table
-, defines a lookup
-.I table
-to provide a single reference in a
-filter rule to multiple targets and the second,
-.B group-map
-, provides a mechanism to target multiple groups from a single filter line.
-.PP
-The
-.B group-map
-command can only be used with filter rules that use the
-.B call
-command to invoke either
-.B fr_srcgrpmap
-or
-.B fr_dstgrpmap
-, to use the source or destination address,
-respectively, for determining which filter group to jump to next for
-continuation of filter packet processing.
-.SH POOL TYPES
-Two storage formats are provided: hash tables and tree structure. The hash
-table is intended for use with objects all containing the same netmask or a
-few different sized netmasks of non-overlapping address space and the tree
-is designed for being able to support exceptions to a covering mask, in
-addition to normal searching as you would do with a table. It is not possible
-to use the tree data storage type with
-.B group-map
-configuration entries.
-.SH POOL ROLES
-When a pool is defined in the configuration file, it must have an associated
-role. At present the only supported role is
-.B ipf.
-Future development will see further expansion of their use by other sections
-of IPFilter code.
-.SH EXAMPLES
-The following examples show how the pool configuration file is used with
-the ipf configuration file to enhance the ability for the ipf configuration
-file to be succinct in meaning.
-.TP
-1
-The first example shows how a filter rule makes reference to a specific
-pool for matching of the source address.
-.nf
-pass in from pool/100 to any
-.fi
-.PP
-The pool configuration, which matches IP addresses 1.1.1.1 and any
-in 2.2.0.0/16, except for those in 2.2.2.0/24.
-.PP
-.nf
-table role = ipf type = tree number = 100
- { 1.1.1.1/32; 2.2.0.0/16; !2.2.2.0/24 };
-.fi
-.TP
-2
-The following ipf.conf extract uses the
-fr_srcgrpmap/fr_dstgrpmap lookups to use the
-.B group-map
-facility to lookup the next group to use for filter processing, providing
-the
-.B call
-filter rule is matched.
-.nf
-call now fr_srcgrpmap/1010 in all
-call now fr_dstgrpmap/2010 out all
-pass in all group 1020
-block in all group 1030
-pass out all group 2020
-block out all group 2040
-.fi
-.PP
-A ippool configuration to work with the above ipf.conf file might
-look like this:
-.PP
-.nf
-group-map in role = ipf number = 1010
- { 1.1.1.1/32, group = 1020; 3.3.0.0/16, group = 1030; };
-group-map out role = ipf number = 2010 group = 2020
- { 2.2.2.2/32; 4.4.0.0/16; 5.0.0.0/8, group = 2040; };
-.fi
-.SH FILES
-/dev/iplookup
-.br
-/etc/ippool.conf
-.br
-/etc/hosts
-.SH SEE ALSO
-\fBippool\fR(1M), \fBhosts\fR(4), \fBipf\fR(4), \fBipf\fR(1M), \fBipnat\fR(1M),
-\fBipfilter\fR(5)
diff --git a/usr/src/man/man4/issue.4 b/usr/src/man/man4/issue.4
deleted file mode 100644
index e927815312..0000000000
--- a/usr/src/man/man4/issue.4
+++ /dev/null
@@ -1,29 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T, Copyright (c) 2002, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH ISSUE 4 "Jan 2, 2002"
-.SH NAME
-issue \- issue identification file
-.SH DESCRIPTION
-.sp
-.LP
-The file \fB/etc/issue\fR contains the issue or project identification to be
-printed as a login prompt. \fBissue\fR is an ASCII file that is read by program
-\fBttymon\fR and then written to any terminal spawned or respawned, prior to
-the normal prompt.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/issue\fR\fR
-.ad
-.RS 14n
-
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBlogin\fR(1), \fBttymon\fR(1M)
diff --git a/usr/src/man/man4/kadm5.acl.4 b/usr/src/man/man4/kadm5.acl.4
deleted file mode 100644
index 25e8a76e22..0000000000
--- a/usr/src/man/man4/kadm5.acl.4
+++ /dev/null
@@ -1,395 +0,0 @@
-'\" te
-.\" Copyright (c) 2006 Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH KADM5.ACL 4 "Oct 29, 2015"
-.SH NAME
-kadm5.acl \- Kerberos access control list (ACL) file
-.SH SYNOPSIS
-.LP
-.nf
-\fB/etc/krb5/kadm5.acl\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBACL\fR file is used by the \fBkadmind\fR(1M) command to determine which
-principals are allowed to perform Kerberos administration actions. For
-operations that affect principals, the \fBACL\fR file also controls which
-principals can operate on which other principals. The location of the \fBACL\fR
-file is determined by the \fBacl_file\fR configuration variable in the
-\fBkdc.conf\fR(4) file. The default location is \fB/etc/krb5/kadm5.acl\fR.
-.sp
-.LP
-For incremental propagation, see \fBkadmind\fR(1M). The ACL file must contain
-the \fBkiprop\fR service principal with propagation privileges in order for the
-slave KDC to pull updates from the master's principal database. Refer to the
-EXAMPLES section for this case.
-.sp
-.LP
-The \fBACL\fR file can contain comment lines, null lines, or lines that contain
-\fBACL\fR entries. Comment lines start with the pound sign (\fB#\fR) and
-continue until the end of the line.
-.sp
-.LP
-The order of entries is significant. The first matching entry specifies the
-principal on which the control access applies, whether it is on just the
-principal or on the principal when it operates on a target principal.
-.sp
-.LP
-Lines containing \fBACL\fR entries must have the following format:
-.sp
-.in +2
-.nf
-\fIprincipal\fR \fIoperation-mask\fR [\fIoperation-target\fR]
-.fi
-.in -2
-.sp
-
-.sp
-.ne 2
-.na
-\fB\fIprincipal\fR\fR
-.ad
-.RS 20n
-Specifies the principal on which the \fIoperation-mask\fR applies. Can specify
-either a partially or fully qualified Kerberos principal name. Each component
-of the name can be substituted with a wildcard, using the asterisk ( \fB*\fR )
-character.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIoperation-mask\fR\fR
-.ad
-.RS 20n
-Specifies what operations can or cannot be performed by a principal matching a
-particular entry. Specify \fIoperation-mask\fR as one or more \fIprivilege\fRs.
-.sp
-A \fIprivilege\fR is a string of one or more of the following characters:
-\fBa\fR, \fBA\fR, \fBc\fR, \fBC\fR, \fBd\fR, \fBD\fR, \fBi\fR, \fBI\fR,
-\fBl\fR, \fBL\fR, \fBm\fR, \fBM\fR, \fBp\fR, \fBP\fR, \fBu\fR, \fBU\fR,
-\fBx\fR, or \fB*\fR. Generally, if the character is lowercase, the privilege is
-allowed and if the character is uppercase, the operation is disallowed. The
-\fBx\fR and \fB*\fR characters are exceptions to the uppercase convention.
-.sp
-The following \fIprivilege\fRs are supported:
-.sp
-.ne 2
-.na
-\fB\fBa\fR\fR
-.ad
-.RS 5n
-Allows the addition of principals or policies in the database.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBA\fR\fR
-.ad
-.RS 5n
-Disallows the addition of principals or policies in the database.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBc\fR\fR
-.ad
-.RS 5n
-Allows the changing of passwords for principals in the database.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBC\fR\fR
-.ad
-.RS 5n
-Disallows the changing of passwords for principals in the database.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBd\fR\fR
-.ad
-.RS 5n
-Allows the deletion of principals or policies in the database.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBD\fR\fR
-.ad
-.RS 5n
-Disallows the deletion of principals or policies in the database.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBi\fR\fR
-.ad
-.RS 5n
-Allows inquiries to the database.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBI\fR\fR
-.ad
-.RS 5n
-Disallows inquiries to the database.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBl\fR\fR
-.ad
-.RS 5n
-Allows the listing of principals or policies in the database.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBL\fR\fR
-.ad
-.RS 5n
-Disallows the listing of principals or policies in the database.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBm\fR\fR
-.ad
-.RS 5n
-Allows the modification of principals or policies in the database.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM\fR\fR
-.ad
-.RS 5n
-Disallows the modification of principals or policies in the database.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBp\fR\fR
-.ad
-.RS 5n
-Allow the propagation of the principal database.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBP\fR\fR
-.ad
-.RS 5n
-Disallow the propagation of the principal database.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBu\fR\fR
-.ad
-.RS 5n
-Allows the creation of one-component user principals whose password can be
-validated with PAM.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBU\fR\fR
-.ad
-.RS 5n
-Negates the \fBu\fR privilege.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBx\fR\fR
-.ad
-.RS 5n
-Short for specifying privileges \fBa\fR, \fBd\fR,\fBm\fR,\fBc\fR,\fBi\fR, and
-\fBl\fR. The same as \fB*\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB*\fR\fR
-.ad
-.RS 5n
-Short for specifying privileges \fBa\fR, \fBd\fR,\fBm\fR,\fBc\fR,\fBi\fR, and
-\fBl\fR. The same as \fBx\fR.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIoperation-target\fR\fR
-.ad
-.RS 20n
-Optional. When specified, the \fIprivileges\fR apply to the \fIprincipal\fR
-when it operates on the \fIoperation-target\fR. For the \fIoperation-target\fR,
-you can specify a partially or fully qualified Kerberos principal name. Each
-component of the name can be substituted by a wildcard, using the asterisk (
-\fB*\fR ) character.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRSpecifying a Standard, Fully Qualified Name
-.sp
-.LP
-The following ACL entry specifies a standard, fully qualified name:
-
-.sp
-.in +2
-.nf
-user/instance@realm adm
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The \fIoperation-mask\fR applies only to the \fBuser/instance@realm\fR
-principal and specifies that the principal can add, delete, or modify
-principals and policies, but it cannot change passwords.
-
-.LP
-\fBExample 2 \fRSpecifying a Standard Fully Qualified Name and Target
-.sp
-.LP
-The following ACL entry specifies a standard, fully qualified name:
-
-.sp
-.in +2
-.nf
-user/instance@realm cim service/instance@realm
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The \fIoperation-mask\fR applies only to the \fBuser/instance@realm\fR
-principal operating on the \fBservice/instance@realm\fR target, and specifies
-that the principal can change the target's password, request information about
-the target, and modify it.
-
-.LP
-\fBExample 3 \fRSpecifying a Name Using a Wildcard
-.sp
-.LP
-The following ACL entry specifies a name using a wildcard:
-
-.sp
-.in +2
-.nf
-user/*@realm ac
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The \fIoperation-mask\fR applies to all principals in realm \fBrealm\fR whose
-first component is \fBuser\fR and specifies that the principals can add
-principals and change passwords.
-
-.LP
-\fBExample 4 \fRSpecifying a Name Using a Wildcard and a Target
-.sp
-.LP
-The following ACL entry specifies a name using a wildcard and a target:
-
-.sp
-.in +2
-.nf
-user/*@realm i */instance@realm
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The \fIoperation-mask\fR applies to all principals in realm \fBrealm\fR whose
-first component is \fBuser\fR and specifies that the principals can perform
-inquiries on principals whose second component is \fBinstance\fR and realm is
-\fBrealm\fR.
-
-.LP
-\fBExample 5 \fRSpecifying Incremental Propagation Privileges
-.sp
-.LP
-The following ACL entry specifies propagation privileges for the \fBkiprop\fR
-service principal:
-
-.sp
-.in +2
-.nf
-kiprop/slavehost@realm p
-.fi
-.in -2
-
-.sp
-.LP
-The operation-mask applies to the \fBkiprop\fR service principal for the
-specified slave host \fBslavehost\fR in realm \fBrealm\fR. This specifies that
-the associated \fBkiprop\fR service principal can receive incremental principal
-updates.
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/krb5/kdc.conf\fR\fR
-.ad
-.RS 22n
-KDC configuration information.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBkpasswd\fR(1), \fBkadmind\fR(1M), \fBkadmin.local\fR(1M),
-\fBkdb5_util\fR(1M), \fBkdc.conf\fR(4), \fBattributes\fR(5), \fBkerberos\fR(5),
-\fBpam_krb5_migrate\fR(5)
diff --git a/usr/src/man/man4/kdc.conf.4 b/usr/src/man/man4/kdc.conf.4
deleted file mode 100644
index b463abdbe9..0000000000
--- a/usr/src/man/man4/kdc.conf.4
+++ /dev/null
@@ -1,1079 +0,0 @@
-'\" te
-.\" Copyright (c) 2007 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH KDC.CONF 4 "Oct 29, 2015"
-.SH NAME
-kdc.conf \- Key Distribution Center (KDC) configuration file
-.SH SYNOPSIS
-.LP
-.nf
-\fB/etc/krb5/kdc.conf\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBkdc.conf\fR file contains \fBKDC\fR configuration information, including
-defaults used when issuing Kerberos tickets. This file must reside on all
-\fBKDC\fR servers. After you make any changes to the \fBkdc.conf\fR file, stop
-and restart the \fBkrb5kdc\fR daemon on the \fBKDC\fR for the changes to take
-effect.
-.sp
-.LP
-The format of the \fBkdc.conf\fR consists of section headings in square
-brackets (\fB[]\fR). Each section contains zero or more configuration variables
-(called relations), of the form of:
-.sp
-.in +2
-.nf
-\fIrelation\fR = \fIrelation-value\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-or
-.sp
-.in +2
-.nf
-\fIrelation-subsection\fR = {
- \fIrelation\fR = \fIrelation-value\fR
- \fIrelation\fR = \fIrelation-value\fR
- }
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The \fBkdc.conf\fR file contains one of more of the following three sections:
-.sp
-.ne 2
-.na
-\fB\fBkdcdefaults\fR\fR
-.ad
-.sp .6
-.RS 4n
-Contains default values for overall behavior of the \fBKDC\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrealms\fR\fR
-.ad
-.sp .6
-.RS 4n
-Contains subsections for Kerberos realms, where \fIrelation-subsection\fR is
-the name of a realm. Each subsection contains relations that define \fBKDC\fR
-properties for that particular realm, including where to find the Kerberos
-servers for that realm.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBlogging\fR\fR
-.ad
-.sp .6
-.RS 4n
-Contains relations that determine how Kerberos programs perform logging.
-.RE
-
-.SS "The \fBkdcdefaults\fR Section"
-.sp
-.LP
-The following relation can be defined in the \fB[kdcdefaults]\fR section:
-.sp
-.ne 2
-.na
-\fB\fBkdc_ports\fR\fR
-.ad
-.sp .6
-.RS 4n
-This relation lists the UDP ports on which the Kerberos server should listen by
-default. This list is a comma-separated list of integers. If the assigned value
-is 0, the Kerberos server does not listen on any UDP port. If this relation is
-not specified, the Kerberos server listens on port \fB750\fR and port \fB88\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBkdc_tcp_ports\fR\fR
-.ad
-.sp .6
-.RS 4n
-This relation lists the TCP ports on which the Kerberos server should listen by
-default. This list is a comma-separated list of integers. If the assigned value
-is 0, the Kerberos server does not listen on any TCP port. If this relation is
-not specified, the Kerberos server listens on the \fBkdc\fR TCP port specified
-in \fB/etc/services\fR. If this port is not found in \fB/etc/services\fR the
-Kerberos server defaults to listen on TCP port 88.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBkdc_max_tcp_connections\fR\fR
-.ad
-.sp .6
-.RS 4n
-This relation controls the maximum number of TCP connections the KDC allows.
-The minimum value is 10. If this relation is not specified, the Kerberos server
-allows a maximum of 30 TCP connections.
-.RE
-
-.SS "The \fBrealms\fR Section"
-.sp
-.LP
-This section contains subsections for Kerberos realms, where
-\fIrelation-subsection\fR is the name of a realm. Each subsection contains
-relations that define \fBKDC\fR properties for that particular realm.
-.sp
-.LP
-The following relations can be specified in each subsection:
-.sp
-.ne 2
-.na
-\fB\fBacl_file\fR\fR
-.ad
-.sp .6
-.RS 4n
-(string) Location of the Kerberos V5 access control list (\fBACL\fR) file that
-\fBkadmin\fR uses to determine the privileges allowed to each principal on the
-database. The default location is \fB\fR\fB/etc/krb5/kadm5.acl\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBadmin_keytab\fR\fR
-.ad
-.sp .6
-.RS 4n
-(string) Location of the \fBkeytab\fR file that \fBkadmin\fR uses to
-authenticate to the database. The default location is
-\fB/etc/krb5/kadm5.keytab\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdatabase_name\fR\fR
-.ad
-.sp .6
-.RS 4n
-(string) Location of the Kerberos database for this realm. The default location
-is \fB/var/krb5/principal\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdefault_principal_expiration\fR\fR
-.ad
-.sp .6
-.RS 4n
-(absolute time string) The default expiration date of principals created in
-this realm. See the \fBTime Format\fR section in \fBkinit\fR(1) for the valid
-absolute time formats you can use for \fBdefault_principal_expiration\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdefault_principal_flags\fR\fR
-.ad
-.sp .6
-.RS 4n
-(flag string) The default attributes of principals created in this realm. Some
-of these flags are better to set on an individual principal basis through the
-use of the attribute modifiers when using the \fBkadmin\fR command to create
-and modify principals. However, some of these options can be applied to all
-principals in the realm by adding them to the list of flags associated with
-this relation.
-.sp
-A "flag string" is a list of one or more of the flags listed below preceded by
-a minus (\fB-\fR) or a plus (\fB+\fR) character, indicating that the option
-that follows should be enabled or disabled.
-.sp
-Flags below marked with an asterisk (\fB*\fR) are flags that are best applied
-on an individual principal basis through the \fBkadmin\fR interface rather
-than as a blanket attribute to be applied to all principals.
-.sp
-.ne 2
-.na
-\fB\fBpostdateable\fR\fR
-.ad
-.sp .6
-.RS 4n
-Create postdatable tickets.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBforwardable\fR\fR
-.ad
-.sp .6
-.RS 4n
-Create forwardable tickets.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBtgt-based\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow TGT-based requests.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrenewable\fR\fR
-.ad
-.sp .6
-.RS 4n
-Create Renewable tickets.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBproxiable\fR\fR
-.ad
-.sp .6
-.RS 4n
-Create Proxiable tickets.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdup-skey\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow DUP_SKEY requests, this enables user-to-user authentication.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpreauth\fR\fR
-.ad
-.sp .6
-.RS 4n
-Require the use of pre-authentication data whenever principals request TGTs.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBhwauth\fR\fR
-.ad
-.sp .6
-.RS 4n
-Require the use of hardware-based pre-authentication data whenever principals
-request TGTs.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB* allow-tickets\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow tickets to be issued for all principals.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB* pwdchange\fR\fR
-.ad
-.sp .6
-.RS 4n
-Require principal's to change their password.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB* service\fR\fR
-.ad
-.sp .6
-.RS 4n
-Enable or disable a service.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB* pwservice\fR\fR
-.ad
-.sp .6
-.RS 4n
-Mark principals as password changing principals.
-.RE
-
-An example of \fBdefault_principal_flags\fR is shown in EXAMPLES, below.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdict_file\fR\fR
-.ad
-.sp .6
-.RS 4n
-(string) Location of the dictionary file containing strings that are not
-allowed as passwords. A principal with any password policy is not allowed to
-select a password in the dictionary. The default location is
-\fB/var/krb5/kadm5.dict\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBkadmind_port\fR\fR
-.ad
-.sp .6
-.RS 4n
-(port number) The port that the \fBkadmind\fR daemon is to listen on for this
-realm. The assigned port for \fBkadmind\fR is 749.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBkey_stash_file\fR\fR
-.ad
-.sp .6
-.RS 4n
-(string) Location where the master key has been stored (by \fBkdb5_util
-stash\fR). The default location is \fB/var/krb5/.k5.\fR\fIrealm\fR, where
-\fIrealm\fR is the Kerberos realm.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBkdc_ports\fR\fR
-.ad
-.sp .6
-.RS 4n
-(string) The list of UDP ports that the \fBKDC\fR listens on for this realm. By
-default, the value of \fBkdc_ports\fR as specified in the \fB[kdcdefaults]\fR
-section is used.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBkdc_tcp_ports\fR\fR
-.ad
-.sp .6
-.RS 4n
-(string) The list of TCP ports that the KDC listens on (in addition to the UDP
-ports specified by \fBkdc_ports\fR) for this realm. By default, the value of
-\fBkdc_tcp_ports\fR as specified in the \fB[kdcdefaults]\fR section is used.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmaster_key_name\fR\fR
-.ad
-.sp .6
-.RS 4n
-(string) The name of the master key.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmaster_key_type\fR\fR
-.ad
-.sp .6
-.RS 4n
-(key type string) The master key's key type. This is used to determine the type
-of encryption that encrypts the entries in the principal db. \fBdes-cbc-crc\fR,
-\fBdes3-cbc-md5\fR, \fBdes3-cbc-sha1-kd\fR, \fBarcfour-hmac-md5\fR,
-\fBarcfour-hmac-md5-exp\fR, \fBaes128-cts-hmac-sha1-96\fR, and
-\fBaes256-cts-hmac-sha1-96\fR are supported at this time (\fBdes-cbc-crc\fR is
-the default). If you set this to \fBdes3-cbc-sha1-kd\fR all systems that
-receive copies of the principal db, such as those running slave KDC's, must
-support \fBdes3-cbc-sha1-kd\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmax_life\fR\fR
-.ad
-.sp .6
-.RS 4n
-(delta time string) The maximum time period for which a ticket is valid in this
-realm. See the \fBTime\fR \fBFormat\fR section in \fBkinit\fR(1) for the valid
-time duration formats you can use for \fBmax_life\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmax_renewable_life\fR\fR
-.ad
-.sp .6
-.RS 4n
-(delta time string) The maximum time period during which a valid ticket can be
-renewed in this realm. See the \fBTime\fR \fBFormat\fR section in
-\fBkinit\fR(1) for the valid time duration formats you can use for
-\fBmax_renewable_life\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsunw_dbprop_enable = [true | false]\fR\fR
-.ad
-.sp .6
-.RS 4n
-Enable or disable incremental database propagation. Default is \fBfalse\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsunw_dbprop_master_ulogsize = N\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the maximum number of log entries available for incremental
-propagation to the slave KDC servers. The maximum value that this can be is
-2500 entries. Default value is 1000 entries.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsunw_dbprop_slave_poll = N[s, m, h]\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies how often the slave KDC polls for new updates that the master might
-have. Default is \fB2m\fR (two minutes).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsupported_enctypes\fR\fR
-.ad
-.sp .6
-.RS 4n
-List of \fBkey\fR/\fBsalt\fR strings. The default \fBkey\fR/\fBsalt\fR
-combinations of principals for this realm. The \fBkey\fR is separated from the
-\fBsalt\fR by a colon (\fB:\fR) or period (\fB\&.\fR). Multiple
-\fBkey\fR/\fBsalt\fR strings can be used by separating each string with a
-space. The \fBsalt\fR is additional information encoded within the key that
-tells what kind of key it is. Only the \fBnormal\fR \fBsalt\fR is supported at
-this time, for example, \fBdes-cbc-crc:normal\fR. If this relation is not
-specified, the default setting is:
-.sp
-.in +2
-.nf
-aes256-cts-hmac-sha1-96:normal \e \fI(see note below)\fR
-aes128-cts-hmac-sha1-96:normal \e
-des3-cbc-sha1-kd:normal \e
-arcfour-hmac-md5:normal \e
-des-cbc-md5:normal
-.fi
-.in -2
-
-.LP
-Note -
-.sp
-.RS 2
-The unbundled Strong Cryptographic packages must be installed for the
-\fBaes256-cts-hmac-sha1-96:normal\fR \fBenctype\fR to be available for
-Kerberos.
-.RE
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBreject_bad_transit\fR\fR
-.ad
-.sp .6
-.RS 4n
-This boolean specifies whether the list of transited realms for cross-realm
-tickets should be checked against the transit path computed from the realm
-names and the \fB[capaths]\fR section of its \fBkrb5.conf\fR(4) file.
-.sp
-The default for \fBreject_bad_transit\fR is \fBtrue\fR.
-.RE
-
-.SS "The \fBlogging\fR Section"
-.sp
-.LP
-This section indicates how Kerberos programs perform logging. The same relation
-can be repeated if you want to assign it multiple logging methods. The
-following relations can be defined in the \fB[logging]\fR section:
-.sp
-.ne 2
-.na
-\fB\fBkdc\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies how the \fBKDC\fR is to perform its logging. The default is
-\fBFILE:/var/krb5/kdc.log\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBadmin_server\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies how the administration server is to perform its logging. The default
-is \fBFILE:/var/krb5/kadmin.log\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdefault\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies how to perform logging in the absence of explicit specifications.
-.RE
-
-.sp
-.LP
-The \fB[logging]\fR relations can have the following values:
-.sp
-.LP
-\fBFILE:\fR\fIfilename\fR
-.sp
-.LP
-or
-.sp
-.ne 2
-.na
-\fB\fBFILE=\fR\fIfilename\fR\fR
-.ad
-.sp .6
-.RS 4n
-This value causes the entity's logging messages to go to the specified file. If
-the `=' form is used, the file is overwritten. If the `:' form is used, the
-file is appended to.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSTDERR\fR\fR
-.ad
-.sp .6
-.RS 4n
-This value sends the entity's logging messages to its standard error stream.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBCONSOLE\fR\fR
-.ad
-.sp .6
-.RS 4n
-This value sends the entity's logging messages to the console, if the system
-supports it.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBDEVICE=\fR\fIdevicename\fR\fR
-.ad
-.sp .6
-.RS 4n
-This sends the entity's logging messages to the specified device.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSYSLOG[:\fR\fIseverity\fR\fB[:\fR\fIfacility\fR\fB]]\fR\fR
-.ad
-.sp .6
-.RS 4n
-This sends the entity's logging messages to the system log.
-.sp
-The \fIseverity\fR argument specifies the default severity of system log
-messages. This default can be any of the following severities supported by the
-\fBsyslog\fR(3C) call, minus the \fBLOG_\fR prefix: \fBLOG_EMERG\fR,
-\fBLOG_ALERT\fR, \fBLOG_CRIT\fR, \fBLOG_ERR\fR, \fBLOG_WARNING\fR,
-\fBLOG_NOTICE\fR, \fBLOG_INFO\fR, and \fBLOG_DEBUG\fR. For example, a value of
-\fBCRIT\fR would specify \fBLOG_CRIT\fR severity.
-.sp
-The \fIfacility\fR argument specifies the facility under which the messages are
-logged. This can be any of the following facilities supported by the
-\fBsyslog\fR(3C) call minus the \fBLOG_\fR prefix: \fBLOG_KERN\fR,
-\fBLOG_USER\fR, \fBLOG_MAIL\fR, \fBLOG_DAEMON\fR, \fBLOG_AUTH\fR,
-\fBLOG_LPR\fR, \fBLOG_NEWS\fR, \fBLOG_UUCP\fR, \fBLOG_CRON\fR, and
-\fBLOG_LOCAL0\fR through \fBLOG_LOCAL7\fR.
-.sp
-If no severity is specified, the default is \fBERR\fR. If no facility is
-specified, the default is \fBAUTH\fR.
-.sp
-In the following example, the logging messages from the \fBKDC\fR go to the
-console and to the system log under the facility \fBLOG_DAEMON\fR with default
-severity of \fBLOG_INFO\fR; the logging messages from the administration server
-are appended to the \fB/var/krb5/kadmin.log\fR file and sent to the
-\fB/dev/tty04\fR device.
-.sp
-.in +2
-.nf
-[logging]
-kdc = CONSOLE
-kdc = SYSLOG:INFO:DAEMON
-admin_server = FILE:/export/logging/kadmin.log
-admin_server = DEVICE=/dev/tty04
-.fi
-.in -2
-.sp
-
-.RE
-
-.SS "PKINIT-specific Options"
-.sp
-.LP
-The following are \fBpkinit-specific\fR options. These values can be specified
-in \fB[kdcdefaults]\fR as global defaults, or within a realm-specific
-subsection of \fB[realms]\fR. A realm-specific value overrides, does not add
-to, a generic \fB[kdcdefaults]\fR specification. The search order is
-.RS +4
-.TP
-1.
-realm-specific subsection of \fB[realms]\fR
-.sp
-.ne 2
-.na
-\fB[realms]\fR
-.ad
-.RS 12n
-.sp
-.in +2
-.nf
-[realms]
- EXAMPLE.COM = {
- pkinit_anchors = FILE:/usr/local/example.com.crt
- }
-.fi
-.in -2
-
-.RE
-
-.RE
-.RS +4
-.TP
-2.
-generic value in the \fB[kdcdefaults]\fR section
-.sp
-.in +2
-.nf
-[kdcdefaults]
- pkinit_anchors = DIR:/usr/local/generic_trusted_cas/
-.fi
-.in -2
-
-.RE
-.sp
-.ne 2
-.na
-\fB\fBpkinit_identity\fR \fB=\fR \fIURI\fR\fR
-.ad
-.RS 25n
-Specifies the location of the KDC's X.509 identity information. This option is
-required if \fBpkinit\fR is supported by the KDC. Valid \fIURI\fR types are
-\fBFILE\fR, \fBDIR\fR, \fBPKCS11\fR, \fBPKCS12\fR, and \fBENV\fR. See the
-\fBPKINIT URI Types\fR section for more details.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpkinit_anchors\fR \fB=\fR \fIURI\fR\fR
-.ad
-.RS 25n
-Specifies the location of trusted anchor (root) certificates which the KDC
-trusts to sign client certificates. This option is required if \fBpkinit\fR is
-supported by the KDC. This option can be specified multiple times. Valid
-\fIURI\fR types are \fBFILE\fR and \fBDIR\fR. See the \fBPKINIT URI Types\fR
-section for details.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpkinit_pool\fR\fR
-.ad
-.RS 25n
-Specifies the location of intermediate certificates which can be used by the
-KDC to complete the trust chain between a client's certificate and a trusted
-anchor. This option can be specified multiple times. Valid \fIURI\fR types are
-\fBFILE\fR and \fBDIR\fR. See the \fBPKINIT URI Types\fR section for more
-details.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpkinit_revoke\fR\fR
-.ad
-.RS 25n
-Specifies the location of Certificate Revocation List (CRL) information to be
-used by the KDC when verifying the validity of client certificates. This option
-can be specified multiple times. The default certificate verification process
-always checks the available revocation information to see if a certificate has
-been revoked. If a match is found for the certificate in a CRL, verification
-fails. If the certificate being verified is not listed in a CRL, or there is no
-CRL present for its issuing CA, and \fBpkinit_require_crl_checking\fR is
-\fBfalse\fR, then verification succeeds. The only valid \fIURI\fR types is
-\fBDIR\fR. See the \fBPKINIT URI Types\fR section for more details. If
-\fBpkinit_require_crl_checking\fR is \fBtrue\fR and there is no CRL information
-available for the issuing CA, verification fails.
-\fBpkinit_require_crl_checking\fR should be set to \fBtrue\fR if the policy is
-such that up-to-date CRLs must be present for every CA.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpkinit_dh_min_bits\fR\fR
-.ad
-.RS 25n
-Specifies the minimum number of bits the KDC is willing to accept for a
-client's Diffie-Hellman key.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpkinit_allow_upn\fR\fR
-.ad
-.RS 25n
-Specifies that the KDC is willing to accept client certificates with the
-Microsoft UserPrincipalName (UPN) Subject Alternative Name (SAN). This means
-the KDC accepts the binding of the UPN in the certificate to the Kerberos
-principal name.
-.sp
-The default is \fBfalse\fR.
-.sp
-Without this option, the KDC only accepts certificates with the
-\fBid-pkinit-san\fR as defined in RFC4556. There is currently no option to
-disable SAN checking in the KDC.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpkinit_eku_checking\fR\fR
-.ad
-.RS 25n
-This option specifies what Extended Key Usage (EKU) values the KDC is willing
-to accept in client certificates. The values recognized in the \fBkdc.conf\fR
-file are:
-.sp
-.ne 2
-.na
-\fBkpClientAuth\fR
-.ad
-.RS 16n
-This is the default value and specifies that client certificates must have the
-\fBid-pkinit-KPClientAuth EKU\fR as defined in RFC4556.
-.RE
-
-.sp
-.ne 2
-.na
-\fBscLogin\fR
-.ad
-.RS 16n
-If \fBscLogin\fR is specified, client certificates with the Microsoft Smart
-Card Login EKU (\fBid-ms-kp-sc-logon\fR) is accepted.
-.RE
-
-.RE
-
-.SS "PKINIT URI Types"
-.sp
-.ne 2
-.na
-\fBFILE:\fIfile-name\fR[\fI,key-file-name\fR]\fR
-.ad
-.sp .6
-.RS 4n
-This option has context-specific behavior.
-.sp
-.ne 2
-.na
-\fBpkinit_identity\fR
-.ad
-.RS 19n
-\fIfile-name\fR specifies the name of a PEM-format file containing the user's
-certificate. If \fIkey-file-name\fR is not specified, the user's private key is
-expected to be in \fIfile-name\fR as well. Otherwise, \fIkey-file-name\fR is
-the name of the file containing the private key.
-.RE
-
-.sp
-.ne 2
-.na
-\fBpkinit_anchors\fR
-.ad
-.br
-.na
-\fBpkinit_pool\fR
-.ad
-.RS 19n
-\fIfile-name\fR is assumed to be the name of an OpenSSL-style ca-bundle file.
-The \fIca-bundle\fR file should be base-64 encoded.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fBDIR:\fIdirectory-name\fR\fR
-.ad
-.sp .6
-.RS 4n
-This option has context-specific behavior.
-.sp
-.ne 2
-.na
-\fBpkinit_identity\fR
-.ad
-.RS 19n
-\fIdirectory-name\fR specifies a directory with files named \fB*.crt\fR and
-\fB*.key\fR, where the first part of the file name is the same for matching
-pairs of certificate and private key files. When a file with a name ending with
-\fB\&.crt\fR is found, a matching file ending with .\fBkey\fR is assumed to
-contain the private key. If no such file is found, then the certificate in the
-\fB\&.crt\fR is not used.
-.RE
-
-.sp
-.ne 2
-.na
-\fBpkinit_anchors\fR
-.ad
-.br
-.na
-\fBpkinit_pool\fR
-.ad
-.RS 19n
-\fIdirectory-name\fR is assumed to be an OpenSSL-style hashed CA directory
-where each CA cert is stored in a file named \fBhash-of-ca-cert.\fR\fI#\fR.
-This infrastructure is encouraged, but all files in the directory is examined
-and if they contain certificates (in PEM format), they are used.
-.RE
-
-.sp
-.ne 2
-.na
-\fBpkinit_revoke\fR
-.ad
-.RS 19n
-\fIdirectory-name\fR is assumed to be an OpenSSL-style hashed CA directory
-where each revocation list is stored in a file named
-\fBhash-of-ca-cert.r\fR\fI#\fR. This infrastructure is encouraged, but all
-files in the directory is examined and if they contain a revocation list (in
-PEM format), they are used.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fBPKCS12:pkcs12-file-name\fR
-.ad
-.sp .6
-.RS 4n
-\fBpkcs12-file-name\fR is the name of a PKCS #12 format file, containing the
-user's certificate and private key.
-.RE
-
-.sp
-.ne 2
-.na
-\fBPKCS11:[slotid=\fIslot-id\fR][:token=\fItoken-label\fR][:certid=\fIcert-id\fR][:certlabel=\fIcert-label\fR]\fR
-.ad
-.sp .6
-.RS 4n
-All keyword/values are optional. PKCS11 modules (for example,
-\fBopensc-pkcs11.so\fR) must be installed as a crypto provider under
-\fBlibpkcs11\fR(3LIB). \fBslotid=\fR and/or \fBtoken=\fR can be specified to
-force the use of a particular smard card reader or token if there is more than
-one available. \fBcertid=\fR and/or \fBcertlabel=\fR can be specified to force
-the selection of a particular certificate on the device. See the
-\fBpkinit_cert_match\fR configuration option for more ways to select a
-particular certificate to use for \fBpkinit\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBENV:\fIenvironment-variable-name\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fIenvironment-variable-name\fR specifies the name of an environment variable
-which has been set to a value conforming to one of the previous values. For
-example, \fBENV:X509_PROXY\fR, where environment variable \fBX509_PROXY\fR has
-been set to \fBFILE:/tmp/my_proxy.pem\fR.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRSample \fBkdc.conf\fR File
-.sp
-.LP
-The following is an example of a \fBkdc.conf\fR file:
-
-.sp
-.in +2
-.nf
-[kdcdefaults]
- kdc_ports = 88
-
-[realms]
- ATHENA.MIT.EDU = {
- kadmind_port = 749
- max_life = 10h 0m 0s
- max_renewable_life = 7d 0h 0m 0s
- default_principal_flags = +preauth,+forwardable,-postdateable
- master_key_type = des-cbc-crc
- supported_enctypes = des-cbc-crc:normal
- }
-
-[logging]
- kdc = FILE:/export/logging/kdc.log
- admin_server = FILE:/export/logging/kadmin.log
-.fi
-.in -2
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/krb5/kadm5.acl\fR\fR
-.ad
-.sp .6
-.RS 4n
-List of principals and their \fBkadmin\fR administrative privileges.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/krb5/kadm5.keytab\fR\fR
-.ad
-.sp .6
-.RS 4n
-Keytab for \fBkadmind\fR principals: \fBkadmin\fR/\fIfqdn\fR,
-\fBchangepw\fR/\fIfqdn\fR, and \fBkadmin\fR/\fBchangepw\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/krb5/principal\fR\fR
-.ad
-.sp .6
-.RS 4n
-Kerberos principal database.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/krb5/principal.ulog\fR\fR
-.ad
-.sp .6
-.RS 4n
-The update log file for incremental propagation.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/krb5/kadm5.dict\fR\fR
-.ad
-.sp .6
-.RS 4n
-Dictionary of strings explicitly disallowed as passwords.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/krb5/kdc.log\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBKDC\fR logging file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/krb5/kadmin.log\fR\fR
-.ad
-.sp .6
-.RS 4n
-Kerberos administration server logging file.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability See below.
-.TE
-
-.sp
-.LP
-All of the keywords, except for the \fBPKINIT\fR keywords are Committed. The
-\fBPKINIT\fR keywords are Volatile.
-.SH SEE ALSO
-.sp
-.LP
-\fBkpasswd\fR(1), \fBkadmind\fR(1M), \fBkadmin.local\fR(1M),
-\fBkdb5_util\fR(1M), \fBkpropd\fR(1M), \fBlibpkcs11\fR(3LIB), \fBsyslog\fR(3C),
-\fBkadm5.acl\fR(4), \fBkrb5.conf\fR(4), \fBattributes\fR(5), \fBkerberos\fR(5)
diff --git a/usr/src/man/man4/keytables.4 b/usr/src/man/man4/keytables.4
deleted file mode 100644
index de6c0916e2..0000000000
--- a/usr/src/man/man4/keytables.4
+++ /dev/null
@@ -1,964 +0,0 @@
-'\" te
-.\" Copyright (c) 2003 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH KEYTABLES 4 "Feb 18, 2003"
-.SH NAME
-keytables \- keyboard table descriptions for loadkeys and dumpkeys
-.SH DESCRIPTION
-.sp
-.LP
-These files are used by \fBloadkeys\fR(1) to modify the translation tables used
-by the keyboard streams module and generated from those translation tables. See
-\fBloadkeys\fR(1).
-.sp
-.LP
-Any line in the file beginning with \fB#\fR is a comment, and is ignored.
-\fB#\fR is treated specially only at the beginning of a line.
-.sp
-.LP
-Other lines specify the values to load into the tables for a particular
-keystation. The format is either:
-.sp
-.in +2
-.nf
-\fBkey\fR \fInumber list_of_entries\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-or
-.sp
-.in +2
-.nf
-\fBswap\fR \fInumber1\fR \fBwith\fR \fInumber2\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-or
-.sp
-.in +2
-.nf
-\fBkey\fR \fInumber1\fR \fBsame as\fR \fInumber2\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-or a blank line, which is ignored.
-.sp
-.in +2
-.nf
-\fBkey\fR \fInumber list_of_entries\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-sets the entries for keystation \fInumber\fR from the list given. An entry in
-that list is of the form
-.sp
-.in +2
-.nf
-\fItablename\fR \fIcode\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-where \fItablename\fR is the name of a particular translation table, or
-\fBall\fR. The translation tables are:
-.sp
-.ne 2
-.na
-\fB\fBbase\fR\fR
-.ad
-.RS 9n
-entry when no shifts are active
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBshift\fR\fR
-.ad
-.RS 9n
-entry when "Shift" key is down
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcaps\fR\fR
-.ad
-.RS 9n
-entry when "Caps Lock" is in effect
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBctrl\fR\fR
-.ad
-.RS 9n
-entry when "Control" is down
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBaltg\fR\fR
-.ad
-.RS 9n
-entry when "Alt Graph" is down
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnuml\fR\fR
-.ad
-.RS 9n
-entry when "Num Lock" is in effect
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBup\fR\fR
-.ad
-.RS 9n
-entry when a key goes up
-.RE
-
-.sp
-.LP
-All tables other than \fBup\fR refer to the action generated when a key goes
-down. Entries in the \fBup\fR table are used only for shift keys, since the
-shift in question goes away when the key goes up, except for keys such as "Caps
-Lock" or "Num Lock"; the keyboard streams module makes the key look as if it
-were a latching key.
-.sp
-.LP
-A table name of \fBall\fR indicates that the entry for all tables should be set
-to the specified value, with the following exception: for entries with a value
-other than \fBhole\fR, the entry for the \fBnuml\fR table should be set to
-\fBnonl\fR, and the entry for the \fBup\fR table should be set to \fBnop\fR.
-.sp
-.LP
-The \fIcode\fR specifies the effect of the key in question when the specified
-shift key is down. A \fIcode\fR consists of either:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-A character, which indicates that the key should generate the given character.
-The character can either be a single character, a single character preceded by
-\fB^\fR which refers to a "control character" (for instance, \fB^c\fR is
-control-C), or a C-style character constant enclosed in single quote characters
-(\fB\&'\fR), which can be expressed with C-style escape sequences such as \er
-for \fBRETURN\fR or \e000 for the null character. Note that the single
-character may be any character in an 8-bit character set, such as ISO 8859/1.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-A string, consisting of a list of characters enclosed in double quote
-characters (\fB"\fR). Note that the use of the double quote character means
-that a \fIcode\fR of double quote must be enclosed in single quotes.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-One of the following expressions:
-.RS
-
-.sp
-.ne 2
-.na
-\fB\fBshiftkeys+leftshift\fR\fR
-.ad
-.sp .6
-.RS 4n
-the key is to be the left-hand "Shift" key
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBshiftkeys+rightshift\fR\fR
-.ad
-.sp .6
-.RS 4n
-the key is to be the right-hand "Shift" key
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBshiftkeys+leftctrl\fR\fR
-.ad
-.sp .6
-.RS 4n
-the key is to be the left-hand "Control" key
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBshiftkeys+rightctrl\fR\fR
-.ad
-.sp .6
-.RS 4n
-the key is to be the right-hand "Control" key
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBshiftkeys+alt\fR\fR
-.ad
-.sp .6
-.RS 4n
-the key is to be the "Alt" shift key
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBshiftkeys+altgraph\fR\fR
-.ad
-.sp .6
-.RS 4n
-the key is to be the "Alt Graph" shift key
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBshiftkeys+capslock\fR\fR
-.ad
-.sp .6
-.RS 4n
-the key is to be the "Caps Lock" key
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBshiftkeys+shiftlock\fR\fR
-.ad
-.sp .6
-.RS 4n
-the key is to be the "Shift Lock" key
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBshiftkeys+numlock\fR\fR
-.ad
-.sp .6
-.RS 4n
-the key is to be the "Num Lock" key
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBbuckybits+systembit\fR\fR
-.ad
-.sp .6
-.RS 4n
-the key is to be the "Stop" key in SunView; this is normally the L1 key, or the
-SETUP key on the VT100 keyboard
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBbuckybits+metabit\fR\fR
-.ad
-.sp .6
-.RS 4n
-the key is to be the "meta" key. That is, the "Left" or "Right" key on a Sun-2
-or Sun-3 keyboard or the "diamond" key on a Sun-4 keyboard
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcompose\fR\fR
-.ad
-.sp .6
-.RS 4n
-the key is to be the "Compose" key
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBctrlq\fR\fR
-.ad
-.sp .6
-.RS 4n
-on the "VT100" keyboard, the key is to transmit the control-Q character (this
-would be the entry for the "Q" key in the \fBctrl\fR table)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBctrls\fR\fR
-.ad
-.sp .6
-.RS 4n
-on the "VT100" keyboard, the key is to transmit the control-S character (this
-would be the entry for the "S" key in the \fBctrl\fR table)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnoscroll\fR\fR
-.ad
-.sp .6
-.RS 4n
-on the "VT100" keyboard, the key is to be the "No Scroll" key
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBstring+uparrow\fR\fR
-.ad
-.sp .6
-.RS 4n
-the key is to be the "up arrow" key
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBstring+downarrow\fR\fR
-.ad
-.sp .6
-.RS 4n
-the key is to be the "down arrow" key
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBstring+leftarrow\fR\fR
-.ad
-.sp .6
-.RS 4n
-the key is to be the "left arrow" key
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBstring+rightarrow\fR\fR
-.ad
-.sp .6
-.RS 4n
-the key is to be the "right arrow" key
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBstring+homearrow\fR\fR
-.ad
-.sp .6
-.RS 4n
-the key is to be the "home" key
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfa_acute\fR\fR
-.ad
-.sp .6
-.RS 4n
-the key is to be the acute accent "floating accent" key
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfa_cedilla\fR\fR
-.ad
-.sp .6
-.RS 4n
-the key is to be the cedilla "floating accent" key
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfa_cflex\fR\fR
-.ad
-.sp .6
-.RS 4n
-the key is to be the circumflex "floating accent" key
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfa_grave\fR\fR
-.ad
-.sp .6
-.RS 4n
-the key is to be the grave accent "floating accent" key
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfa_tilde\fR\fR
-.ad
-.sp .6
-.RS 4n
-the key is to be the tilde "floating accent" key
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfa_umlaut\fR\fR
-.ad
-.sp .6
-.RS 4n
-the key is to be the umlaut "floating accent" key
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnonl\fR\fR
-.ad
-.sp .6
-.RS 4n
-this is used only in the Num Lock table; the key is not to be affected by the
-state of Num Lock
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpad0\fR\fR
-.ad
-.sp .6
-.RS 4n
-the key is to be the "0" key on the numeric keypad
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpad1\fR\fR
-.ad
-.sp .6
-.RS 4n
-the key is to be the "1" key on the numeric keypad
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpad2\fR\fR
-.ad
-.sp .6
-.RS 4n
-the key is to be the "2" key on the numeric keypad
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpad3\fR\fR
-.ad
-.sp .6
-.RS 4n
-the key is to be the "3" key on the numeric keypad
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpad4\fR\fR
-.ad
-.sp .6
-.RS 4n
-the key is to be the "4" key on the numeric keypad
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpad5\fR\fR
-.ad
-.sp .6
-.RS 4n
-the key is to be the "5" key on the numeric keypad
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpad6\fR\fR
-.ad
-.sp .6
-.RS 4n
-the key is to be the "6" key on the numeric keypad
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpad7\fR\fR
-.ad
-.sp .6
-.RS 4n
-the key is to be the "7" key on the numeric keypad
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpad8\fR\fR
-.ad
-.sp .6
-.RS 4n
-the key is to be the "8" key on the numeric keypad
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpad9\fR\fR
-.ad
-.sp .6
-.RS 4n
-the key is to be the "9" key on the numeric keypad
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpaddot\fR\fR
-.ad
-.sp .6
-.RS 4n
-the key is to be the "." key on the numeric keypad
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpadenter\fR\fR
-.ad
-.sp .6
-.RS 4n
-the key is to be the "Enter" key on the numeric keypad
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpadplus\fR\fR
-.ad
-.sp .6
-.RS 4n
-the key is to be the "+" key on the numeric keypad
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpadminus\fR\fR
-.ad
-.sp .6
-.RS 4n
-the key is to be the "\(mi" key on the numeric keypad
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpadstar\fR\fR
-.ad
-.sp .6
-.RS 4n
-the key is to be the "*" key on the numeric keypad
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpadslash\fR\fR
-.ad
-.sp .6
-.RS 4n
-the key is to be the "/" key on the numeric keypad
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpadequal\fR\fR
-.ad
-.sp .6
-.RS 4n
-the key is to be the "=" key on the numeric keypad
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpadsep\fR\fR
-.ad
-.sp .6
-.RS 4n
-the key is to be the "," (separator) key on the numeric keypad
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBlf(\fIn\fR)\fR\fR
-.ad
-.sp .6
-.RS 4n
-the key is to be the left-hand function key \fIn\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrf(\fIn\fR)\fR\fR
-.ad
-.sp .6
-.RS 4n
-the key is to be the right-hand function key \fIn\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBtf(\fIn\fR)\fR\fR
-.ad
-.sp .6
-.RS 4n
-the key is to be the top function key \fIn\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBbf(\fIn\fR)\fR\fR
-.ad
-.sp .6
-.RS 4n
-the key is to be the "bottom" function key \fIn\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnop\fR\fR
-.ad
-.sp .6
-.RS 4n
-the key is to do nothing
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBerror\fR\fR
-.ad
-.sp .6
-.RS 4n
-this code indicates an internal error; to be used only for keystation 126, and
-must be used there
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBidle\fR\fR
-.ad
-.sp .6
-.RS 4n
-this code indicates that the keyboard is idle (that is, has no keys down); to
-be used only for all entries other than the \fBnuml\fR and \fBup\fR table
-entries for keystation 127, and must be used there
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBoops\fR\fR
-.ad
-.sp .6
-.RS 4n
-this key exists, but its action is not defined; it has the same effect as
-\fBnop\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBreset\fR\fR
-.ad
-.sp .6
-.RS 4n
-this code indicates that the keyboard has just been reset; to be used only for
-the \fBup\fR table entry for keystation 127, and must be used there.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBswap\fR \fInumber1\fR with \fInumber2\fR\fR
-.ad
-.sp .6
-.RS 4n
-exchanges the entries for keystations \fInumber1\fR and \fInumber2\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBkey \fInumber1\fR\fR same as \fInumber2\fR\fR
-.ad
-.sp .6
-.RS 4n
-sets the entries for keystation \fInumber1\fR to be the same as those for
-keystation \fInumber2\fR. If the file does not specify entries for keystation
-\fInumber2\fR, the entries currently in the translation table are used; if the
-file does specify entries for keystation \fInumber2\fR, those entries are used.
-.RE
-
-.RE
-
-.RE
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRExample of setting multiple keystations.
-.sp
-.LP
-The following entry sets keystation 15 to be a "hole" (that is, an entry
-indicating that there is no keystation 15); sets keystation 30 to do nothing
-when Alt Graph is down, generate "!" when Shift is down, and generate "1" under
-all other circumstances; and sets keystation 76 to be the left-hand Control
-key.
-
-.sp
-.in +2
-.nf
-key 15 all hole
-key 30 base 1 shift ! caps 1 ctrl 1 altg nop
-key 76 all shiftkeys+leftctrl up shiftkeys+leftctrl
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRExchange DELETE and BACKSPACE keys
-.sp
-.LP
-The following entry exchanges the Delete and Back Space keys on the Type 4
-keyboard:
-
-.sp
-.in +2
-.nf
-swap 43 with 66
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Keystation 43 is normally the Back Space key, and keystation 66 is normally the
-Delete key.
-
-.LP
-\fBExample 3 \fRDisable CAPS LOCK key
-.sp
-.LP
-The following entry disables the Caps Lock key on the Type 3 and U.S. Type 4
-keyboards:
-
-.sp
-.in +2
-.nf
-key 119 all nop
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 4 \fRStandard translation tables for the U.S. Type 4 keyboard
-.sp
-.LP
-The following specifies the standard translation tables for the U.S. Type 4
-keyboard:
-
-.sp
-.in +2
-.nf
-key 0 all hole
-key 1 all buckybits+systembit up buckybits+systembit
-key 2 all hole
-key 3 all lf(2)
-key 4 all hole
-key 5 all tf(1)
-key 6 all tf(2)
-key 7 all tf(10)
-key 8 all tf(3)
-key 9 all tf(11)
-key 10 all tf(4)
-key 11 all tf(12)
-key 12 all tf(5)
-key 13 all shiftkeys+altgraph up shiftkeys+altgraph
-key 14 all tf(6)
-key 15 all hole
-key 16 all tf(7)
-key 17 all tf(8)
-key 18 all tf(9)
-key 19 all shiftkeys+alt up shiftkeys+alt
-key 20 all hole
-key 21 all rf(1)
-key 22 all rf(2)
-key 23 all rf(3)
-key 24 all hole
-key 25 all lf(3)
-key 26 all lf(4)
-key 27 all hole
-key 28 all hole
-key 29 all ^[
-key 30 base 1 shift ! caps 1 ctrl 1 altg nop
-key 31 base 2 shift @ caps 2 ctrl ^@ altg nop
-key 32 base 3 shift # caps 3 ctrl 3 altg nop
-key 33 base 4 shift $ caps 4 ctrl 4 altg nop
-key 34 base 5 shift % caps 5 ctrl 5 altg nop
-key 35 base 6 shift ^ caps 6 ctrl ^^ altg nop
-key 36 base 7 shift & caps 7 ctrl 7 altg nop
-key 37 base 8 shift * caps 8 ctrl 8 altg nop
-key 38 base 9 shift ( caps 9 ctrl 9 altg nop
-key 39 base 0 shift ) caps 0 ctrl 0 altg nop
-key 40 base - shift _ caps - ctrl ^_ altg nop
-key 41 base = shift + caps = ctrl = altg nop
-key 42 base ` shift ~ caps ` ctrl ^^ altg nop
-key 43 all '\eb'
-key 44 all hole
-key 45 all rf(4) numl padequal
-key 46 all rf(5) numl padslash
-key 47 all rf(6) numl padstar
-key 48 all bf(13)
-key 49 all lf(5)
-key 50 all bf(10) numl padequal
-key 51 all lf(6)
-key 52 all hole
-key 53 all '\et'
-key 54 base q shift Q caps Q ctrl ^Q altg nop
-key 55 base w shift W caps W ctrl ^W altg nop
-key 56 base e shift E caps E ctrl ^E altg nop
-key 57 base r shift R caps R ctrl ^R altg nop
-key 58 base t shift T caps T ctrl ^T altg nop
-key 59 base y shift Y caps Y ctrl ^Y altg nop
-key 60 base u shift U caps U ctrl ^U altg nop
-key 61 base i shift I caps I ctrl '\et' altg nop
-key 62 base o shift O caps O ctrl ^O altg nop
-key 63 base p shift P caps P ctrl ^P altg nop
-key 64 base [ shift { caps [ ctrl ^[ altg nop
-key 65 base ] shift } caps ] ctrl ^] altg nop
-key 66 all '\e177'
-key 67 all compose
-key 68 all rf(7) numl pad7
-key 69 all rf(8) numl pad8
-key 70 all rf(9) numl pad9
-key 71 all bf(15) numl padminus
-key 72 all lf(7)
-key 73 all lf(8)
-key 74 all hole
-key 75 all hole
-key 76 all shiftkeys+leftctrl up shiftkeys+leftctrl
-key 77 base a shift A caps A ctrl ^A altg nop
-key 78 base s shift S caps S ctrl ^S altg nop
-key 79 base d shift D caps D ctrl ^D altg nop
-key 80 base f shift F caps F ctrl ^F altg nop
-key 81 base g shift G caps G ctrl ^G altg nop
-key 82 base h shift H caps H ctrl '\eb' altg nop
-key 83 base j shift J caps J ctrl '\en' altg nop
-key 84 base k shift K caps K ctrl '\ev' altg nop
-key 85 base l shift L caps L ctrl ^L altg nop
-key 86 base ; shift : caps ; ctrl ; altg nop
-key 87 base '\e'' shift '"' caps '\e'' ctrl '\e'' altg nop
-key 88 base '\e\e' shift | caps '\e\e' ctrl ^\e altg nop
-key 89 all '\er'
-key 90 all bf(11) numl padenter
-key 91 all rf(10) numl pad4
-key 92 all rf(11) numl pad5
-key 93 all rf(12) numl pad6
-key 94 all bf(8) numl pad0
-key 95 all lf(9)
-key 96 all hole
-key 97 all lf(10)
-key 98 all shiftkeys+numlock
-key 99 all shiftkeys+leftshift up shiftkeys+leftshift
-key 100 base z shift Z caps Z ctrl ^Z altg nop
-key 101 base x shift X caps X ctrl ^X altg nop
-key 102 base c shift C caps C ctrl ^C altg nop
-key 103 base v shift V caps V ctrl ^V altg nop
-key 104 base b shift B caps B ctrl ^B altg nop
-key 105 base n shift N caps N ctrl ^N altg nop
-key 106 base m shift M caps M ctrl '\er' altg nop
-key 107 base , shift < caps , ctrl , altg nop
-key 108 base . shift > caps . ctrl . altg nop
-key 109 base / shift ? caps / ctrl ^_ altg nop
-key 110 all shiftkeys+rightshift up shiftkeys+rightshift
-key 111 all '\en'
-key 112 all rf(13) numl pad1
-key 113 all rf(14) numl pad2
-key 114 all rf(15) numl pad3
-key 115 all hole
-key 116 all hole
-key 117 all hole
-key 118 all lf(16)
-key 119 all shiftkeys+capslock
-key 120 all buckybits+metabit up buckybits+metabit
-key 121 base ' ' shift ' ' caps ' ' ctrl ^@ altg ' '
-key 122 all buckybits+metabit up buckybits+metabit
-key 123 all hole
-key 124 all hole
-key 125 all bf(14) numl padplus
-key 126 all error numl error up hole
-key 127 all idle numl idle up reset
-.fi
-.in -2
-.sp
-
-.SH SEE ALSO
-.sp
-.LP
-\fBloadkeys\fR(1)
diff --git a/usr/src/man/man4/krb5.conf.4 b/usr/src/man/man4/krb5.conf.4
deleted file mode 100644
index 62dabd5445..0000000000
--- a/usr/src/man/man4/krb5.conf.4
+++ /dev/null
@@ -1,1873 +0,0 @@
-'\" te
-.\" Copyright (c) 2009 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH KRB5.CONF 4 "November 22, 2021"
-.SH NAME
-krb5.conf \- Kerberos configuration file
-.SH SYNOPSIS
-.nf
-/etc/krb5/krb5.conf
-.fi
-
-.SH DESCRIPTION
-The \fBkrb5.conf\fR file contains Kerberos configuration information, including
-the locations of \fBKDC\fRs and administration daemons for the Kerberos realms
-of interest, defaults for the current realm and for Kerberos applications, and
-mappings of host names onto Kerberos realms. This file must reside on all
-Kerberos clients.
-.sp
-.LP
-The format of the \fBkrb5.conf\fR consists of sections headings in square
-brackets. Each section can contain zero or more configuration variables (called
-\fIrelations\fR), of the form:
-.sp
-.LP
-\fIrelation\fR= \fIrelation-value\fR
-.sp
-.LP
-or
-.sp
-.LP
-\fIrelation-subsection\fR = {
-.br
-.in +2
-\fIrelation\fR= \fIrelation-value\fR
-.in -2
-.br
-.in +2
-\fIrelation\fR= \fIrelation-value\fR
-.in -2
-.sp
-.LP
-}
-.sp
-.LP
-The \fBkrb5.conf\fR file can contain any or all of the following sections:
-.sp
-.ne 2
-.na
-\fB\fBlibdefaults\fR\fR
-.ad
-.sp .6
-.RS 4n
-Contains default values used by the Kerberos V5 library.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBappdefaults\fR\fR
-.ad
-.sp .6
-.RS 4n
-Contains subsections for Kerberos V5 applications, where
-\fIrelation-subsection\fR is the name of an application. Each subsection
-describes application-specific defaults.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrealms\fR\fR
-.ad
-.sp .6
-.RS 4n
-Contains subsections for Kerberos realms, where \fIrelation-subsection\fR is
-the name of a realm. Each subsection contains relations that define the
-properties for that particular realm.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdomain_realm\fR\fR
-.ad
-.sp .6
-.RS 4n
-Contains relations which map domain names and subdomains onto Kerberos realm
-names. This is used by programs to determine what realm a host should be in,
-given its fully qualified domain name.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBlogging\fR\fR
-.ad
-.sp .6
-.RS 4n
-Contains relations which determine how Kerberos programs are to perform
-logging.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcapaths\fR\fR
-.ad
-.sp .6
-.RS 4n
-Contains the authentication paths used with direct (nonhierarchical)
-cross-realm authentication. Entries in this section are used by the client to
-determine the intermediate realms which can be used in cross-realm
-authentication. It is also used by the end-service when checking the transited
-field for trusted intermediate realms.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdbmodules\fR\fR
-.ad
-.sp .6
-.RS 4n
-Contains relations for Kerberos database plug-in-specific configuration
-information.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBkdc\fR\fR
-.ad
-.sp .6
-.RS 4n
-For a Key Distribution Center (\fBKDC\fR), can contain the location of the
-\fBkdc.conf\fR file.
-.RE
-
-.SS "The \fB[libdefaults]\fR Section"
-The \fB[libdefaults]\fR section can contain any of the following relations:
-.sp
-.ne 2
-.na
-\fB\fBdatabase_module\fR\fR
-.ad
-.sp .6
-.RS 4n
-Selects the \fBdbmodule\fR section entry to use to access the Kerberos
-database. If this parameter is not present the code uses the standard
-\fBdb2\fR-based Kerberos database.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdefault_keytab_name\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the default keytab name to be used by application servers such as
-\fBtelnetd\fR and \fBrlogind\fR. The default is \fB/etc/krb5/krb5.keytab\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdefault_realm\fR\fR
-.ad
-.sp .6
-.RS 4n
-Identifies the default Kerberos realm for the client. Set its value to your
-Kerberos realm.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdefault_tgs_enctypes\fR\fR
-.ad
-.sp .6
-.RS 4n
-Identifies the supported list of session key encryption types that should be
-returned by the \fBKDC\fR. The list can be delimited with commas or whitespace.
-The supported encryption types are \fBdes3-cbc-sha1-kd\fR, \fBdes-cbc-crc\fR,
-\fBdes-cbc-md5\fR, \fBarcfour-hmac-md5\fR, \fBarcfour-hmac-md5-exp\fR,
-\fBaes128-cts-hmac-sha1-96\fR, and \fBaes256-cts-hmac-sha1-96\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdefault_tkt_enctypes\fR\fR
-.ad
-.sp .6
-.RS 4n
-Identifies the supported list of session key encryption types that should be
-requested by the client. The format is the same as for
-\fBdefault_tgs_enctypes\fR. The supported encryption types are
-\fBdes3-cbc-sha1-kd\fR, \fBdes-cbc-crc\fR, \fBdes-cbc-md5\fR,
-\fBarcfour-hmac-md5\fR, \fBarcfour-hmac-md5-exp\fR,
-\fBaes128-cts-hmac-sha1-96\fR, and \fBaes256-cts-hmac-sha1-96\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBclockskew\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets the maximum allowable amount of clock skew in seconds that the library
-tolerates before assuming that a Kerberos message is invalid. The default value
-is 300 seconds, or five minutes.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBforwardable =\fR [\fBtrue\fR | \fBfalse\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Sets the "\fBforwardable\fR" flag in all tickets. This allows users to transfer
-their credentials from one host to another without reauthenticating. This
-option can also be set in the \fB[appdefaults]\fR or \fB[realms]\fR section
-(see below) to limit its use in particular applications or just to a specific
-realm.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpermitted_enctypes\fR\fR
-.ad
-.sp .6
-.RS 4n
-This relation controls the encryption types for session keys permitted by
-server applications that use Kerberos for authentication. In addition, it
-controls the encryption types of keys added to a \fBkeytab\fR by means of the
-\fBkadmin\fR(1M) \fBktadd\fR command. The default is:
-\fBaes256-cts-hmac-sha1-96\fR, \fBaes128-cts-hmac-sha1-96\fR,
-\fBdes3-hmac-sha1-kd\fR, \fBarcfour-hmac-md5\fR, \fBarcfour-hmac-md5-exp\fR,
-\fBdes-cbc-md5\fR, \fBdes-cbc-crc\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBproxiable =\fR [\fBtrue\fR | \fBfalse\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Sets the \fBproxiable\fR flag in all tickets. This allows users to create a
-proxy ticket that can be transferred to a kerberized service to allow that
-service to perform some function on behalf of the original user. This option
-can also be set in the \fB[appdefaults]\fR or \fB[realms]\fR section (see
-below) to limit its use in particular applications or just to a specific realm.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrenew_lifetime =\fR\fIlifetime\fR\fR
-.ad
-.sp .6
-.RS 4n
-Requests renewable tickets, with a total lifetime of \fIlifetime\fR. The value
-for \fIlifetime\fR must be followed immediately by one of the following
-delimiters:
-.sp
-.ne 2
-.na
-\fB\fBs\fR\fR
-.ad
-.sp .6
-.RS 4n
-seconds
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBm\fR\fR
-.ad
-.sp .6
-.RS 4n
-minutes
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBh\fR\fR
-.ad
-.sp .6
-.RS 4n
-hours
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBd\fR\fR
-.ad
-.sp .6
-.RS 4n
-days
-.RE
-
-Example:
-.sp
-.in +2
-.nf
-\fBrenew_lifetime = 90m\fR
-.fi
-.in -2
-.sp
-
-Do not mix units. A value of "\fB3h30m\fR" results in an error.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmax_lifetime =\fR\fIlifetime\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets the requested maximum lifetime of the ticket. The values for
-\fIlifetime\fR follow the format described for the \fBrenew_lifetime\fR option,
-above.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdns_lookup_kdc\fR\fR
-.ad
-.sp .6
-.RS 4n
-Indicates whether DNS SRV records need to be used to locate the KDCs and the
-other servers for a realm, if they have not already been listed in the
-\fB[realms]\fR section. This option makes the machine vulnerable to a certain
-type of DoS attack if someone spoofs the DNS records and does a redirect to
-another server. This is, however, no worse than a DoS, since the bogus KDC is
-unable to decode anything sent (excepting the initial ticket request, which has
-no encrypted data). Also, anything the fake KDC sends out isl not trusted
-without verification (the local machine is unaware of the secret key to be
-used). If \fBdns_lookup_kdc\fR is not specified but \fBdns_fallback\fR is, then
-that value is used instead. In either case, values (if present) in the
-\fB[realms]\fR section override DNS. \fBdns_lookup_kdc\fR is enabled by
-default.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdns_lookup_realm\fR\fR
-.ad
-.sp .6
-.RS 4n
-Indicates whether DNS TXT records need to be used to determine the Kerberos
-realm information and/or the host/domain name-to-realm mapping of a host, if
-this information is not already present in the \fBkrb5.conf\fR file. Enabling
-this option might make the host vulnerable to a redirection attack, wherein
-spoofed DNS replies persuade a client to authenticate to the wrong realm. In a
-realm with no cross-realm trusts, this a DoS attack. If \fBdns_lookup_realm\fR
-is not specified but \fBdns_fallback\fR is, then that value is used instead. In
-either case, values (if present) in the \fB[libdefaults]\fR and
-\fB[domain_realm]\fR sections override DNS.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdns_fallback\fR\fR
-.ad
-.sp .6
-.RS 4n
-Generic flag controlling the use of DNS for retrieval of information about
-Kerberos servers and host/domain name-to-realm mapping. If both
-\fBdns_lookup_kdc\fR and \fBdns_lookup_realm\fR have been specified, this
-option has no effect.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBverify_ap_req_nofail [true | false]\fR\fR
-.ad
-.sp .6
-.RS 4n
-If \fBtrue\fR, the local keytab file (\fB/etc/krb5/krb5.keytab\fR) must contain
-an entry for the local \fBhost\fR principal, for example,
-\fBhost/foo.example.net@EXAMPLE.COM\fR. This entry is needed to verify that the
-\fBTGT\fR requested was issued by the same \fBKDC\fR that issued the key for
-the host principal. If undefined, the behavior is as if this option were set to
-\fBtrue\fR. Setting this value to \fBfalse\fR leaves the system vulnerable to
-\fBDNS\fR spoofing attacks. This parameter can be in the \fB[realms]\fR section
-to set it on a per-realm basis, or it can be in the \fB[libdefaults]\fR section
-to make it a network-wide setting for all realms.
-.RE
-
-.SS "The \fB[appdefaults]\fR Section"
-This section contains subsections for Kerberos V5 applications, where
-\fIrelation-subsection\fR is the name of an application. Each subsection
-contains relations that define the default behaviors for that application.
-.sp
-.LP
-The following relations can be found in the \fB[appdefaults]\fR section, though
-not all relations are recognized by all kerberized applications. Some are
-specific to particular applications.
-.sp
-.ne 2
-.na
-\fB\fBautologin =\fR [\fBtrue\fR | \fBfalse\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Forces the application to attempt automatic login by presenting Kerberos
-credentials. This is valid for the following applications: \fBrlogin\fR,
-\fBrsh\fR, \fBrcp\fR, \fBrdist\fR, and \fBtelnet\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBencrypt =\fR [\fBtrue\fR | \fBfalse\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Forces applications to use encryption by default (after authentication) to
-protect the privacy of the sessions. This is valid for the following
-applications: \fBrlogin\fR, \fBrsh\fR, \fBrcp\fR, \fBrdist\fR, and
-\fBtelnet\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBforward =\fR [\fBtrue\fR | \fBfalse\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Forces applications to forward the user'ss credentials (after authentication)
-to the remote server. This is valid for the following applications:
-\fBrlogin\fR, \fBrsh\fR, \fBrcp\fR, \fBrdist\fR, and \fBtelnet\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBforwardable =\fR [\fBtrue\fR | \fBfalse\fR]\fR
-.ad
-.sp .6
-.RS 4n
-See the description in the \fB[libdefaults]\fR section above. This is used by
-any application that creates a ticket granting ticket and also by applications
-that can forward tickets to a remote server.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBproxiable =\fR [\fBtrue\fR | \fBfalse\fR]\fR
-.ad
-.sp .6
-.RS 4n
-See the description in the \fB[libdefaults]\fR section above. This is used by
-any application that creates a ticket granting ticket.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrenewable =\fR [\fBtrue\fR | \fBfalse\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Creates a TGT that can be renewed (prior to the ticket expiration time). This
-is used by any application that creates a ticket granting ticket.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBno_addresses =\fR [\fBtrue\fR | \fBfalse\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Creates tickets with no address bindings. This is to allow tickets to be used
-across a \fBNAT\fR boundary or when using multi-homed systems. This option is
-valid in the \fBkinit\fR \fB[appdefault]\fR section only.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmax_life =\fR\fIlifetime\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets the maximum lifetime of the ticket, with a total lifetime of
-\fIlifetime\fR. The values for \fIlifetime\fR follow the format described in
-the \fB[libdefaults]\fR section above. This option is obsolete and is removed
-in a future release of the Solaris operating system.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmax_renewable_life =\fR\fIlifetime\fR\fR
-.ad
-.sp .6
-.RS 4n
-Requests renewable tickets, with a total lifetime of \fIlifetime\fR. The values
-for \fIlifetime\fR follow the format described in the \fB[libdefaults]\fR
-section above. This option is obsolete and is removed in a future release of
-the Solaris operating system.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrcmd_protocol =\fR [ \fBrcmdv1\fR | \fBrcmdv2\fR ]\fR
-.ad
-.sp .6
-.RS 4n
-Specifies which Kerberized "\fBrcmd\fR" protocol to use when using the
-Kerberized \fBrlogin\fR(1), \fBrsh\fR(1), \fBrcp\fR(1), or \fBrdist\fR(1)
-programs. The default is to use \fBrcmdv2\fR by default, as this is the more
-secure and more recent update of the protocol. However, when talking to older
-\fBMIT\fR or \fBSEAM\fR-based "\fBrcmd\fR" servers, it can be necessary to
-force the new clients to use the older \fBrcmdv1\fR protocol. This option is
-valid only for the following applications: \fBrlogin\fR, \fBrcp\fR, \fBrsh\fR,
-and \fBrdist\fR.
-.RE
-
-.sp
-.LP
-The following application defaults can be set to \fBtrue\fR or \fBfalse\fR:
-.sp
-.in +2
-.nf
-kinit
- forwardable = true
- proxiable = true
- renewable = true
- no_addresses = true
- max_life = \fIdelta_time\fR
- max_renewable_life = \fIdelta_time\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-See \fBkinit\fR(1) for the valid time duration formats you can specify for
-\fIdelta_time\fR.
-.sp
-.LP
-In the following example, \fBkinit\fR gets forwardable tickets by default and
-\fBtelnet\fR has three default behaviors specified:
-.sp
-.in +2
-.nf
-[appdefaults]
- kinit = {
- forwardable = true
- }
-
- telnet = {
- forward = true
- encrypt = true
- autologin = true
- }
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The application defaults specified here are overridden by those specified in
-the \fB[realms]\fR section.
-.SS "The \fB[realms]\fR Section"
-This section contains subsections for Kerberos realms, where
-\fIrelation-subsection\fR is the name of a realm. Each subsection contains
-relations that define the properties for that particular realm. The following
-relations can be specified in each \fB[realms]\fR subsection:
-.sp
-.ne 2
-.na
-\fB\fBadmin_server\fR\fR
-.ad
-.sp .6
-.RS 4n
-Identifies the host where the Kerberos administration daemon (\fBkadmind\fR) is
-running. Typically, this is the master \fBKDC\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIapplication defaults\fR\fR
-.ad
-.sp .6
-.RS 4n
-Application defaults that are specific to a particular realm can be specified
-within a \fB[realms]\fR subsection. Realm-specific application defaults
-override the global defaults specified in the \fB[appdefaults]\fR section.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBauth_to_local_realm\fR\fR
-.ad
-.sp .6
-.RS 4n
-For use in the default realm, non-default realms can be equated with the
-default realm for authenticated name-to-local name mapping.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBauth_to_local_names\fR\fR
-.ad
-.sp .6
-.RS 4n
-This subsection allows you to set explicit mappings from principal names to
-local user names. The tag is the mapping name and the value is the
-corresponding local user name.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBauth_to_local\fR\fR
-.ad
-.sp .6
-.RS 4n
-This tag allows you to set a general rule for mapping principal names to local
-user names. It is used if there is not an explicit mapping for the principal
-name that is being translated. The possible values are:
-.sp
-.in +2
-.nf
-RULE:[<ncomps>:<format>](<regex>)s/<regex>/<text>/
-.fi
-.in -2
-
-Each rule has three parts:
-.sp
-.ne 2
-.na
-\fBFirst part\(emFormulate the string on which to perform operations:\fR
-.ad
-.sp .6
-.RS 4n
-If not present then the string defaults to the fully flattened principal minus
-the realm name. Otherwise the syntax is as follows:
-.sp
-.in +2
-.nf
-"[" \fI<ncomps>\fR ":" \fI<format>\fR "]"
-.fi
-.in -2
-
-Where:
-.sp
-\fI<ncomps>\fR is the number of expected components for this rule. If the
-particular principal does not have this number of components, then this rule
-does not apply.
-.sp
-\fI<format>\fR is a string of \fI<component>\fR or verbatim characters to be
-inserted.
-.sp
-\fI<component>\fR is of the form "\fB$\fR"\fI<number>\fR to select the
-\fI<number>\fRth component. \fI<number>\fR begins from 1.
-.RE
-
-.sp
-.ne 2
-.na
-\fBSecond part\(emselect rule validity:\fR
-.ad
-.sp .6
-.RS 4n
-If not present, this rule can apply to all selections. Otherwise the syntax is
-as follows:
-.sp
-.in +2
-.nf
-"(" \fI<regex>\fR ")"
-.fi
-.in -2
-
-Where:
-.sp
-\fI<regex>\fR is a selector regular expression. If this regular expression
-matches the whole pattern generated from the first part, then this rule still
-applies.
-.RE
-
-.sp
-.ne 2
-.na
-\fBThird part\(emTransform rule:\fR
-.ad
-.sp .6
-.RS 4n
-If not present, then the selection string is passed verbatim and is matched.
-Otherwise, the syntax is as follows:
-.sp
-.in +2
-.nf
-\fI<rule>\fR ...
-.fi
-.in -2
-
-Where:
-.sp
-\fI<rule>\fR is of the form:
-.sp
-.in +2
-.nf
-"s/" <regex> "/" <text> "/" ["g"]
-.fi
-.in -2
-
-Regular expressions are defined in \fBregex\fR(5).
-.sp
-For example:
-.sp
-auth_to_local = RULE:[1:$1@$0](.*@.*EXAMPLE\.COM)s/@.*//
-.sp
-The preceding maps \fB\fIusername\fR@EXAMPLE.COM\fR and all sub-realms of
-\fBEXAMPLE.COM\fR to \fIusername\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBDEFAULT\fR
-.ad
-.sp .6
-.RS 4n
-The principal name is used as the local name. If the principal has more than
-one component or is not in the default realm, this rule is not applicable and
-the conversion fails.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdatabase_module\fR\fR
-.ad
-.sp .6
-.RS 4n
-Selects the \fBdbmodule\fR section entry to use to access the Kerberos
-database.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBextra_addresses\fR...\fR
-.ad
-.sp .6
-.RS 4n
-This allows a computer to use multiple local addresses, to allow Kerberos to
-work in a network that uses NATs. The addresses should be in a comma-separated
-list.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBkdc\fR\fR
-.ad
-.sp .6
-.RS 4n
-The name of a host running a \fBKDC\fR for that realm. An optional port number
-(separated from the hostname by a colon) can be included.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBkpasswd_server\fR\fR
-.ad
-.sp .6
-.RS 4n
-Identifies the host where the Kerberos password-changing server is running.
-Typically, this is the same as host indicated in the \fBadmin_server\fR. If
-this parameter is omitted, the host in \fBadmin_server\fR is used. You can also
-specify a port number if the server indicated by \fBkpasswd_server\fR runs on a
-port other than 464 (the default). The format of this parameter is:
-\fIhostname\fR[:\fIport\fR].
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBkpasswd_protocol\fR\fR
-.ad
-.sp .6
-.RS 4n
-Identifies the protocol to be used when communicating with the server indicated
-by \fBkpasswd_server\fR. By default, this parameter is defined to be
-\fBRPCSEC_GSS\fR, which is the protocol used by Solaris-based administration
-servers. To be able to change a principal's password stored on non-Solaris
-Kerberos server, such as Microsoft Active Directory or \fBMIT\fR Kerberos, this
-value should be \fBSET_CHANGE\fR. This indicates that a non-RPC- based protocol
-is used to communicate the password change request to the server in the
-\fBkpasswd_server\fR entry.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBudp_preference_limit\fR\fR
-.ad
-.sp .6
-.RS 4n
-When sending a message to the KDC, the library tries using TCP before UDP if
-the size of the message is above \fBudp_preference_limit\fR. If the message is
-smaller than \fBudp_preference_limit\fR, then UDP is tried before TCP.
-Regardless of the size, both protocols are tried if the first attempt fails.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBverify_ap_req_nofail\fR [\fBtrue\fR | \fBfalse\fR]\fR
-.ad
-.sp .6
-.RS 4n
-If \fBtrue\fR, the local keytab file (\fB/etc/krb5/krb5.keytab\fR) must contain
-an entry for the local \fBhost\fR principal, for example,
-\fBhost/foo.example.net@EXAMPLE.COM\fR. This entry is needed to verify that the
-\fBTGT\fR requested was issued by the same \fBKDC\fR that issued the key for
-the host principal. If undefined, the behavior is as if this option were set to
-\fBtrue\fR. Setting this value to \fBfalse\fR leaves the system vulnerable to
-\fBDNS\fR spoofing attacks. This parameter might be in the \fB[realms]\fR
-section to set it on a per-realm basis, or it might be in the
-\fB[libdefaults]\fR section to make it a network-wide setting for all realms.
-.RE
-
-.sp
-.LP
-The parameters "\fBforwardable\fR", "\fBproxiable\fR", and
-"\fBrenew_lifetime\fR" as described in the \fB[libdefaults]\fR section (see
-above) are also valid in the \fB[realms]\fR section.
-.sp
-.LP
-Notice that \fBkpasswd_server\fR and \fBkpasswd_protocol\fR are realm-specific
-parameters. Most often, you need to specify them only when using a
-non-Solaris-based Kerberos server. Otherwise, the change request is sent over
-\fBRPCSEC_GSS\fR to the Solaris Kerberos administration server.
-.SS "The \fB[domain_realm]\fR Section"
-This section provides a translation from a domain name or hostname to a
-Kerberos realm name. The \fIrelation\fR can be a host name, or a domain name,
-where domain names are indicated by a period (`\fB\&.\fR') prefix.
-\fIrelation-value\fR is the Kerberos realm name for that particular host or
-domain. Host names and domain names should be in lower case.
-.sp
-.LP
-If no translation entry applies, the host's realm is considered to be the
-hostname's domain portion converted to upper case. For example, the following
-\fB[domain_realm]\fR section maps \fBcrash.mit.edu\fR into the
-\fBTEST.ATHENA.MIT.EDU\fR realm:
-.sp
-.in +2
-.nf
-[domain_realm]
- .mit.edu = ATHENA.MIT.EDU
- mit.edu = ATHENA.MIT.EDU
- crash.mit.edu = TEST.ATHENA.MIT.EDU
- .example.org = EXAMPLE.ORG
- example.org = EXAMPLE.ORG
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-All other hosts in the \fBmit.edu\fR domain maps by default to the
-\fBATHENA.MIT.EDU\fR realm, and all hosts in the \fBexample.org\fR domain maps by
-default into the \fBEXAMPLE.ORG\fR realm. The entries for the hosts \fBmit.edu\fR
-and \fBexample.org\fR. Without these entries, these hosts would be mapped into
-the Kerberos realms \fBEDU\fR and \fBORG\fR, respectively.
-.SS "The \fB[logging]\fR Section"
-This section indicates how Kerberos programs are to perform logging. There are
-two types of relations for this section: relations to specify how to log and a
-relation to specify how to rotate \fBkdc\fR log files.
-.sp
-.LP
-The following relations can be defined to specify how to log. The same relation
-can be repeated if you want to assign it multiple logging methods.
-.sp
-.ne 2
-.na
-\fB\fBadmin_server\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies how to log the Kerberos administration daemon (\fBkadmind\fR). The
-default is \fBFILE:/var/krb5/kadmin.log.\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdefault\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies how to perform logging in the absence of explicit specifications
-otherwise.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBkdc\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies how the \fBKDC\fR is to perform its logging. The default is
-\fBFILE:/var/krb5/kdc.log\fR.
-.RE
-
-.sp
-.LP
-The \fBadmin_server\fR, \fBdefault\fR, and \fBkdc\fR relations can have the
-following values:
-.sp
-.ne 2
-.na
-\fB\fBFILE:\fR\fIfilename\fR\fR
-.ad
-.br
-.na
-\fB\fBFILE=\fR\fIfilename\fR\fR
-.ad
-.sp .6
-.RS 4n
-This value causes the entity's logging messages to go to the specified file. If
-the `=' form is used, the file is overwritten. If the `:' form is used, the
-file is appended to.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSTDERR\fR\fR
-.ad
-.sp .6
-.RS 4n
-This value causes the entity's logging messages to go to its standard error
-stream.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBCONSOLE\fR\fR
-.ad
-.sp .6
-.RS 4n
-This value causes the entity's logging messages to go to the console, if the
-system supports it.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBDEVICE=\fR\fIdevicename\fR\fR
-.ad
-.sp .6
-.RS 4n
-This causes the entity's logging messages to go to the specified device.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSYSLOG[:\fR\fIseverity\fR\fB[:\fR\fIfacility\fR\fB]]\fR\fR
-.ad
-.sp .6
-.RS 4n
-This causes the entity's logging messages to go to the system log.
-.RE
-
-.sp
-.LP
-The \fIseverity\fR argument specifies the default severity of system log
-messages. This can be any of the following severities supported by the
-\fBsyslog\fR(3C) call, minus the \fBLOG_\fR prefix: \fBLOG_EMERG\fR,
-\fBLOG_ALERT\fR, \fBLOG_CRIT\fR, \fBLOG_ERR\fR, \fBLOG_WARNING\fR,
-\fBLOG_NOTICE\fR, \fBLOG_INFO\fR, and \fBLOG_DEBUG\fR. For example, a value of
-\fBCRIT\fR would specify \fBLOG_CRIT\fR severity.
-.sp
-.LP
-The \fIfacility\fR argument specifies the facility under which the messages are
-logged. This can be any of the following facilities supported by the
-\fBsyslog\fR(3C) call minus the \fBLOG_\fR prefix: \fBLOG_KERN\fR,
-\fBLOG_USER\fR, \fBLOG_MAIL\fR, \fBLOG_DAEMON\fR, \fBLOG_AUTH\fR,
-\fBLOG_LPR\fR, \fBLOG_NEWS\fR, \fBLOG_UUCP\fR, \fBLOG_CRON\fR, and
-\fBLOG_LOCAL0\fR through \fBLOG_LOCAL7\fR.
-.sp
-.LP
-If no severity is specified, the default is \fBERR\fR. If no facility is
-specified, the default is \fBAUTH\fR.
-.sp
-.LP
-The following relation can be defined to specify how to rotate \fBkdc\fR log
-files if the \fBFILE:\fR value is being used to log:
-.sp
-.ne 2
-.na
-\fB\fBkdc_rotate\fR\fR
-.ad
-.sp .6
-.RS 4n
-A relation subsection that enables \fBkdc\fR logging to be rotated to multiple
-files based on a time interval. This can be used to avoid logging to one file,
-which might grow too large and bring the \fBKDC\fR to a halt.
-.RE
-
-.sp
-.LP
-The time interval for the rotation is specified by the \fBperiod\fR relation.
-The number of log files to be rotated is specified by the \fBversions\fR
-relation. Both the \fBperiod\fR and \fBversions\fR (described below) should be
-included in this subsection. And, this subsection applies only if the \fBkdc\fR
-relation has a \fBFILE:\fR value.
-.sp
-.LP
-The following relations can be specified for the \fBkdc_rotate\fR relation
-subsection:
-.sp
-.ne 2
-.na
-\fB\fB\fR\fBperiod=\fIdelta_time\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the time interval before a new log file is created. See the
-\fBTime\fR\fBFormats\fR section in \fBkinit\fR(1) for the valid time duration
-formats you can specify for \fIdelta_time\fR. If \fBperiod\fR is not specified
-or set to \fBnever\fR, no rotation occurs.
-.RE
-
-.sp
-.LP
-Specifying a time interval does not mean that the log files are rotated at the
-time interval based on real time. This is because the time interval is checked
-at each attempt to write a record to the log, or when logging is actually
-occurring. Therefore, rotation occurs only when logging has actually occurred
-for the specified time interval.
-.sp
-.ne 2
-.na
-\fB\fBversions=\fR\fInumber\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies how many previous versions are saved before the rotation begins. A
-number is appended to the log file, starting with 0 and ending with
-(\fInumber\fR - 1). For example, if \fBversions\fR is set to \fB2\fR, up to
-three logging files are created (\fIfilename\fR, \fIfilename\fR.0, and
-\fIfilename\fR.1) before the first one is overwritten to begin the rotation.
-.RE
-
-.sp
-.LP
-Notice that if \fBversions\fR is not specified or set to \fB0\fR, only one log
-file is created, but it is overwritten whenever the time interval is met.
-.sp
-.LP
-In the following example, the logging messages from the Kerberos administration
-daemon goes to the console. The logging messages from the \fBKDC\fR is appended
-to the \fB/var/krb5/kdc.log\fR, which is rotated between twenty-one log files
-with a specified time interval of a day.
-.sp
-.in +2
-.nf
-[logging]
- admin_server = CONSOLE
- kdc = FILE:/export/logging/kadmin.log
- kdc_rotate = {
- period = 1d
- versions = 20
- }
-.fi
-.in -2
-.sp
-
-.SS "The \fB[capaths]\fR Section"
-In order to perform direct (non-hierarchical) cross-realm authentication, a
-database is needed to construct the authentication paths between the realms.
-This section defines that database.
-.sp
-.LP
-A client uses this section to find the authentication path between its realm
-and the realm of the server. The server uses this section to verify the
-authentication path used by the client, by checking the transited field of the
-received ticket.
-.sp
-.LP
-There is a subsection for each participating realm, and each subsection has
-relations named for each of the realms. The \fIrelation-value\fR is an
-intermediate realm which can participate in the cross-realm authentication. The
-relations can be repeated if there is more than one intermediate realm. A value
-of '.' means that the two realms share keys directly, and no intermediate
-realms should be allowed to participate.
-.sp
-.LP
-There are n**2 possible entries in this table, but only those entries which is
-needed on the client or the server need to be present. The client needs a
-subsection named for its local realm, with relations named for all the realms
-of servers it needs to authenticate with. A server needs a subsection named for
-each realm of the clients it serves.
-.sp
-.LP
-For example, \fBANL.GOV\fR, \fBPNL.GOV\fR, and \fBNERSC.GOV\fR all wish to use
-the \fBES.NET\fR realm as an intermediate realm. \fBANL\fR has a sub realm of
-\fBTEST.ANL.GOV\fR, which authenticates with \fBNERSC.GOV\fR but not
-\fBPNL.GOV\fR. The \fB[capath]\fR section for \fBANL.GOV\fR systems would look
-like this:
-.sp
-.in +2
-.nf
-[capaths]
- ANL.GOV = {
- TEST.ANL.GOV = .
- PNL.GOV = ES.NET
- NERSC.GOV = ES.NET
- ES.NET = .
- }
-
- TEST.ANL.GOV = {
- ANL.GOV = .
- }
-
- PNL.GOV = {
- ANL.GOV = ES.NET
- }
-
- NERSC.GOV = {
- ANL.GOV = ES.NET
- }
-
- ES.NET = {
- ANL.GOV = .
- }
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The \fB[capath]\fR section of the configuration file used on \fBNERSC.GOV\fR
-systems would look like this:
-.sp
-.in +2
-.nf
-[capaths]
- NERSC.GOV = {
- ANL.GOV = ES.NET
- TEST.ANL.GOV = ES.NET
- TEST.ANL.GOV = ANL.GOV
- PNL.GOV = ES.NET
- ES.NET = .
- }
-
- ANL.GOV = {
- NERSC.GOV = ES.NET
- }
-
- PNL.GOV = {
- NERSC.GOV = ES.NET
- }
-
- ES.NET = {
- NERSC.GOV = .
- }
-
- TEST.ANL.GOV = {
- NERSC.GOV = ANL.GOV
- NERSC.GOV = ES.NET
- }
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-In the above examples, the ordering is not important, except when the same
-relation is used more than once. The client uses this to determine the path.
-(It is not important to the server, since the transited field is not sorted.)
-.SS "PKINIT-specific Options"
-The following are \fBpkinit-specific\fR options. These values can be specified
-in \fB[libdefaults]\fR as global defaults, or within a realm-specific
-subsection of \fB[libdefaults]\fR, or can be specified as realm-specific values
-in the \fB[realms]\fR section. A realm-specific value overrides, does not add
-to, a generic \fB[libdefaults]\fR specification.
-.sp
-.LP
-The search order is:
-.RS +4
-.TP
-1.
-realm-specific subsection of \fB[libdefaults]\fR
-.sp
-.in +2
-.nf
- [libdefaults]
- EXAMPLE.COM = {
- pkinit_anchors = FILE:/usr/local/example.com.crt
-.fi
-.in -2
-
-.RE
-.RS +4
-.TP
-2.
-realm-specific value in the \fB[realms]\fR section
-.sp
-.in +2
-.nf
- [realms]
- OTHERREALM.ORG = {
- pkinit_anchors = FILE:/usr/local/otherrealm.org.crt
-.fi
-.in -2
-
-.RE
-.RS +4
-.TP
-3.
-generic value in the \fB[libdefaults]\fR section
-.sp
-.in +2
-.nf
- [libdefaults]
- pkinit_anchors = DIR:/usr/local/generic_trusted_cas/
-.fi
-.in -2
-
-.RE
-.sp
-.LP
-The syntax for specifying Public Key identity, trust, and revocation
-information for \fBpkinit\fR is as follows:
-.sp
-.ne 2
-.na
-\fB\fBpkinit_identities\fR \fB=\fR \fIURI\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the location(s) to be used to find the user's X.509 identity
-information. This option can be specified multiple times. Each value is
-attempted in order until identity information is found and authentication is
-attempted. These values are not used if the user specifies
-\fBX509_user_identity\fR on the command line.
-.sp
-Valid \fIURI\fR types are \fBFILE\fR, \fBDIR\fR, \fBPKCS11\fR, \fBPKCS12\fR,
-and \fBENV\fR. See the \fBPKINIT URI Types\fR section for more details.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpkinit_anchors\fR \fB=\fR \fIURI\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the location of trusted anchor (root) certificates which the client
-trusts to sign KDC certificates. This option can be specified multiple times.
-These values from the \fBconfig\fR file are not used if the user specifies
-\fBX509_anchors\fR on the command line.
-.sp
-Valid \fIURI\fR types are \fBFILE\fR and \fBDIR\fR. See the \fBPKINIT URI
-Types\fR section for more details.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpkinit_pool\fR \fB=\fR \fIURI\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the location of intermediate certificates which can be used by the
-client to complete the trust chain between a KDC certificate and a trusted
-anchor. This option can be specified multiple times.
-.sp
-Valid \fIURI\fR types are \fBFILE\fR and \fBDIR\fR. See the \fBPKINIT URI
-Types\fR section for more details.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpkinit_revoke\fR \fB=\fR \fIURI\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the location of Certificate Revocation List (CRL) information to be
-used by the client when verifying the validity of the KDC certificate
-presented. This option can be specified multiple times.
-.sp
-The only valid \fIURI\fR type is \fBDIR\fR. See the \fBPKINIT URI Types\fR
-section for more details.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpkinit_require_crl_checking\fR \fB=\fR \fIvalue\fR\fR
-.ad
-.sp .6
-.RS 4n
-The default certificate verification process always checks the available
-revocation information to see if a certificate has been revoked. If a match is
-found for the certificate in a CRL, verification fails. If the certificate
-being verified is not listed in a CRL, or there is no CRL present for its
-issuing CA, and \fBpkinit_require_crl_checking\fR is \fBfalse\fR, then
-verification succeeds. However, if \fBpkinit_require_crl_checking\fR is
-\fBtrue\fR and there is no CRL information available for the issuing CA, then
-verification fails. \fBpkinit_require_crl_checking\fR should be set to
-\fBtrue\fR if the policy is such that up-to-date CRLs must be present for every
-CA.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpkinit_dh_min_bits\fR \fB=\fR \fIvalue\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the size of the Diffie-Hellman key the client attempts to use. The
-acceptable values are currently 1024, 2048, and 4096. The default is 2048.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpkinit_win2k\fR \fB=\fR \fIvalue\fR\fR
-.ad
-.sp .6
-.RS 4n
-This flag specifies whether the target realm is assumed to support only the
-old, pre-RFC version of the protocol. The default is \fBfalse\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpkinit_win2k_require_binding\fR \fB=\fR \fIvalue\fR\fR
-.ad
-.sp .6
-.RS 4n
-If this flag is set to \fBtrue\fR, it expects that the target KDC is patched to
-return a reply with a checksum rather than a nonce. The default is \fBfalse\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpkinit_eku_checking\fR \fB=\fR \fIvalue\fR\fR
-.ad
-.sp .6
-.RS 4n
-This option specifies what Extended Key Usage value the KDC certificate
-presented to the client must contain. If the KDC certificate has the \fBpkinit
-SubjectAlternativeName\fR encoded as the Kerberos TGS name, EKU checking is not
-necessary since the issuing CA has certified this as a KDC certificate. The
-values recognized in the \fBkrb5.conf\fR file are:
-.sp
-.ne 2
-.na
-\fB\fBkpKDC\fR\fR
-.ad
-.RS 16n
-This is the default value and specifies that the KDC must have the
-\fBid-pkinit-KPKdc EKU\fR as defined in RFC4556.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBkpServerAuth\fR\fR
-.ad
-.RS 16n
-If \fBkpServerAuth\fR is specified, a KDC certificate with the
-\fBid-kp-serverAuth EKU\fR as used by Microsoft is accepted.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnone\fR\fR
-.ad
-.RS 16n
-If \fBnone\fR is specified, then the KDC certificate is not checked to verify
-it has an acceptable EKU. The use of this option is not recommended.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpkinit_kdc_hostname\fR \fB=\fR \fIvalue\fR\fR
-.ad
-.sp .6
-.RS 4n
-The presence of this option indicates that the client is willing to accept a
-KDC certificate with a \fBdNSName\fR SAN (Subject Alternative Name) rather than
-requiring the \fBid-pkinit-san\fR as defined in RFC4556. This option can be
-specified multiple times. Its value should contain the acceptable hostname for
-the KDC (as contained in its certificate).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpkinit_cert_match\fR \fB=\fR \fIrule\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies matching rules that the client certificate must match before it is
-used to attempt \fBpkinit\fR authentication. If a user has multiple
-certificates available (on a smart card, or by way of another media), there
-must be exactly one certificate chosen before attempting \fBpkinit\fR
-authentication. This option can be specified multiple times. All the
-available certificates are checked against each rule in order until there is a
-match of exactly one certificate.
-.sp
-The Subject and Issuer comparison strings are the RFC2253 string
-representations from the certificate Subject DN and Issuer DN values.
-.sp
-The syntax of the matching rules is:
-.sp
-.in +2
-.nf
-[relation-operator]component-rule `...'
-.fi
-.in -2
-
-where
-.sp
-.ne 2
-.na
-\fB\fIrelation-operator\fR\fR
-.ad
-.RS 21n
-Specify \fIrelation-operator\fR as \fB&&\fR, meaning all component rules must
-match, or \fB||\fR, meaning only one component rule must match. If
-\fIrelation-operator\fR is not specified, the default is \fB&&\fR\&.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIcomponent-rule\fR\fR
-.ad
-.RS 21n
-There is no punctuation or white space between component rules.Specify
-\fIcomponent-rule\fR as one of the following:
-.sp
-.in +2
-.nf
-`<SUBJECT>'regular-expression
-
-`<ISSUER>'regular-expression
-
-`<SAN>'regular-expression
-
-`<EKU>'extended-key-usage-list
- where extended-key-usage-list is a comma-separated list
- of required Extended Key Usage values. All values in
- the list must be present in the certificate.
- `pkinit'
- `msScLogin'
- `clientAuth'
- `emailProtection'
-`<KU>'key-usage-list
- where key-usage-list is a comma-separated list of
- required Key Usage values. All values in the list must
- be present in the certificate.
- `digitalSignature'
-.fi
-.in -2
-
-.RE
-
-Examples:
-.sp
-.in +2
-.nf
-pkinit_cert_match = ||<SUBJECT>.*DoE.*<SAN>.*@EXAMPLE.COM
-pkinit_cert_match = &&<EKU>msScLogin,clientAuth<ISSUER>.*DoE.*
-pkinit_cert_match = <EKU>msScLogin,clientAuth<KU>digitalSignature
-.fi
-.in -2
-
-.RE
-
-.SS "PKINIT URI Types"
-.ne 2
-.na
-\fB\fBFILE:\fR\fIfile-name[,key-file-name]\fR\fR
-.ad
-.sp .6
-.RS 4n
-This option has context-specific behavior.
-.sp
-.ne 2
-.na
-\fB\fBpkinit_identities\fR\fR
-.ad
-.RS 21n
-\fIfile-name\fR specifies the name of a PEM-format file containing the user's
-certificate. If \fIkey-file-name\fR is not specified, the user's private key
-is expected to be in \fIfile-name\fR as well. Otherwise, \fIkey-file-name\fR
-is the name of the file containing the private key.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpkinit_anchors\fR\fR
-.ad
-.br
-.na
-\fB\fBpkinit_pool\fR\fR
-.ad
-.RS 21n
-\fIfile-name\fR is assumed to be the name of an \fBOpenSSL-style ca-bundle\fR
-file. The \fBca-bundle\fR file should be base-64 encoded.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBDIR:\fR\fIdirectory-name\fR\fR
-.ad
-.sp .6
-.RS 4n
-This option has context-specific behavior.
-.sp
-.ne 2
-.na
-\fB\fBpkinit_identities\fR\fR
-.ad
-.RS 21n
-\fIdirectory-name\fR specifies a directory with files named \fB*.crt\fR and
-\fB*.key\fR, where the first part of the file name is the same for matching
-pairs of certificate and private key files. When a file with a name ending with
-\&.\fBcrt\fR is found, a matching file ending with \fB\&.key\fR is assumed to
-contain the private key. If no such file is found, then the certificate in the
-\fB\&.crt\fR is not used.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpkinit_anchors\fR\fR
-.ad
-.br
-.na
-\fB\fBpkinit_pool\fR\fR
-.ad
-.RS 21n
-\fIdirectory-name\fR is assumed to be an OpenSSL-style hashed CA directory
-where each CA cert is stored in a file named \fBhash-of-ca-cert\fR.\fI#\fR.
-This infrastructure is encouraged, but all files in the directory are examined
-and if they contain certificates (in PEM format), they are used.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPKCS12:\fR\fIpkcs12-file-name\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fIpkcs12-file-name\fR is the name of a \fBPKCS #12\fR format file, containing
-the user's certificate and private key.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPKCS11:[slotid=\fR\fIslot-id\fR\fB][:token=\fR\fItoken-label\fR\fB][:cert
-id=\fR\fIcert-id\fR\fB][:certlabel=\fR\fIcert-label\fR\fB]\fR\fR
-.ad
-.sp .6
-.RS 4n
-All keyword/values are optional. PKCS11 modules (for example,
-\fBopensc-pkcs11.so\fR) must be installed as a \fBcrypto\fR provider under
-\fBlibpkcs11\fR(3LIB). \fBslotid=\fR and/or \fBtoken=\fR can be specified to
-force the use of a particular smart card reader or token if there is more than
-one available. \fBcertid=\fR and/or \fBcertlabel=\fR can be specified to force
-the selection of a particular certificate on the device. See the
-\fBpkinit_cert_match\fR configuration option for more ways to select a
-particular certificate to use for \fBpkinit\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBENV:\fR\fIenvironment-variable-name\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fIenvironment-variable-name\fR specifies the name of an environment variable
-which has been set to a value conforming to one of the previous values. For
-example, \fBENV:X509_PROXY\fR, where environment variable \fBX509_PROXY\fR has
-been set to \fBFILE:/tmp/my_proxy.pem\fR.
-.RE
-
-.SS "The \fB[dbmodules]\fR Section"
-This section consists of relations that provide configuration information for
-plug-in modules. In particular, the relations describe the configuration for
-LDAP KDB plug-in. Use of the \fBdb2\fR KDB plug-in is the default behavior and
-that this section does not need to be filled out in that case.
-.sp
-.ne 2
-.na
-\fB\fBdb_library\fR\fR
-.ad
-.sp .6
-.RS 4n
-Name of the plug-in library. To use the LDAP KDB plug-in the name must be
-\fBkdb_ldap\fR. The default value is \fBdb2\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdb_module_dir\fR\fR
-.ad
-.sp .6
-.RS 4n
-Path to the plug-in libraries. The default is \fB/usr/lib/krb5\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBldap_cert_path\fR\fR
-.ad
-.sp .6
-.RS 4n
-Path to the Network Security Services (NSS) trusted database for an SSL
-connection. This is a required parameter when using the LDAP KDB plug-in.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBldap_conns_per_server\fR\fR
-.ad
-.sp .6
-.RS 4n
-Number of connections per LDAP instance. The default is \fB5\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBldap_kadmind_dn\fR\fR
-.ad
-.sp .6
-.RS 4n
-Bind DN for \fBkadmind\fR. This specifies the DN that the \fBkadmind\fR service
-uses when binding to the LDAP Directory Server. The password for this bind DN
-should be in the \fBldap_service_password_file\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBldap_kdc_dn\fR\fR
-.ad
-.sp .6
-.RS 4n
-Bind DN for a Key Distribution Center (KDC). This specifies the DN that the
-\fBkrb5kdc\fR service use when binding to the LDAP Directory Server. The
-password for this bind DN should be in the \fBldap_service_password_file\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBldap_servers\fR\fR
-.ad
-.sp .6
-.RS 4n
-List of LDAP directory servers in URI format. Use of either of the following is
-acceptable.
-.sp
-.in +2
-.nf
-ldap://\fI<ds hostname>\fR:\fI<SSL port>\fR
-ldap://\fI<ds hostname>\fR
-.fi
-.in -2
-.sp
-
-Each server URI should be separated by whitespace.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBldap_service_password_file\fR\fR
-.ad
-.sp .6
-.RS 4n
-File containing stashed passwords used by the KDC when binding to the LDAP
-Directory Server. The default is \fB/var/krb5/service_passwd\fR. This file is
-created using \fBkdb5_ldap_util\fR(1M).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBldap_ssl_port\fR\fR
-.ad
-.sp .6
-.RS 4n
-Port number for SSL connection with directory server. The default is \fB389\fR.
-.RE
-
-.SH EXAMPLES
-\fBExample 1 \fRSample File
-.sp
-.LP
-The following is an example of a generic \fBkrb5.conf\fR file:
-
-.sp
-.in +2
-.nf
-[libdefaults]
- default_realm = ATHENA.MIT.EDU
- default_tkt_enctypes = des-cbc-crc
- default_tgs_enctypes = des-cbc-crc
-
-[realms]
- ATHENA.MIT.EDU = {
- kdc = kerberos.mit.edu
- kdc = kerberos-1.mit.edu
- kdc = kerberos-2.mit.edu
- admin_server = kerberos.mit.edu
- auth_to_local_realm = KRBDEV.ATHENA.MIT.EDU
- }
-
- EXAMPLE.ORG = {
- kdc = kerberos.example.org
- kdc = kerberos-1.example.org
- admin_server = kerberos.example.org
- }
-
-[domain_realm]
- .mit.edu = ATHENA.MIT.EDU
- mit.edu = ATHENA.MIT.EDU
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRKDC Using the LDAP KDB plug-in, \fBrealms\fR and
-\fBdbmodules\fR Sections
-.sp
-.LP
-The following is an example of the \fBrealms\fR and \fBdbmodules\fR sections of
-a Kerberos configuration file when the KDC is using the LDAP KDB plug-in.
-
-.sp
-.in +2
-.nf
-[realms]
- EXAMPLE.COM = {
- kdc = kc-umpk-01.athena.mit.edu
- kdc = kc-umpk-02.athena.mit.edu
- admin_server = kc-umpk-01.athena.mit.edu
- database_module = LDAP
- }
-
-[dbmodules]
- LDAP = {
- db_library = kdb_ldap
- ldap_kerberos_container_dn = "cn=krbcontainer,dc=mit,dc=edu"
- ldap_kdc_dn = "cn=kdc service,ou=profile,dc=mit,dc=edu"
- ldap_kadmind_dn = "cn=kadmin service,ou=profile,dc=mit,dc=edu"
- ldap_cert_path = /var/ldap
- ldap_servers = ldaps://ds.mit.edu
- }
-.fi
-.in -2
-.sp
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/var/krb5/kdc.log\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBKDC\fR logging file
-.RE
-
-.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability See below.
-.TE
-
-.sp
-.LP
-All of the keywords are Committed, except for the \fBPKINIT\fR keywords, which
-are Volatile.
-.SH SEE ALSO
-\fBkinit\fR(1), \fBrcp\fR(1), \fBrdist\fR(1), \fBrlogin\fR(1), \fBrsh\fR(1),
-\fBtelnet\fR(1), \fBsyslog\fR(3C), \fBattributes\fR(5), \fBkerberos\fR(5),
-\fBregex\fR(5)
-.SH NOTES
-If the \fBkrb5.conf\fR file is not formatted properly, the \fBtelnet\fR command
-fails. However, the \fBdtlogin\fR and \fBlogin\fR commands still succeed, even
-if the \fBkrb5.conf\fR file is specified as required for the commands. If this
-occurs, the following error message is displayed:
-.sp
-.in +2
-.nf
-Error initializing krb5: Improper format of \fIitem\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-To bypass any other problems that might occur, you should fix the file as soon
-as possible.
-.sp
-.LP
-The \fBmax_life\fR and \fBmax_renewable_life\fR options are obsolete and is
-removed in a future release of the Solaris operating system.
diff --git a/usr/src/man/man4/ldapfilter.conf.4 b/usr/src/man/man4/ldapfilter.conf.4
deleted file mode 100644
index 43d6f09088..0000000000
--- a/usr/src/man/man4/ldapfilter.conf.4
+++ /dev/null
@@ -1,182 +0,0 @@
-'\" te
-.\" Copyright (C) 1990, Regents of the University of Michigan. All Rights Reserved.
-.\" Portions Copyright (C) 1997, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH LDAPFILTER.CONF 4 "Jul 9, 2003"
-.SH NAME
-ldapfilter.conf \- configuration file for LDAP filtering routines
-.SH SYNOPSIS
-.LP
-.nf
-\fB/etc/opt/SUNWconn/ldap/current/ldapfilter.conf\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBldapfilter.conf\fR file contains information used by the LDAP filtering
-routines.
-.sp
-.LP
-Blank lines and lines that begin with a hash character (\fB#\fR) are treated as
-comments and ignored. The configuration information consists of lines that
-contain one to five tokens. Tokens are separated by white space, and double
-quotes can be used to include white space inside a token.
-.sp
-.LP
-The file consists of a sequence of one or more filter sets. A filter set begins
-with a line containing a single token called a \fItag\fR.
-.sp
-.LP
-The filter set consists of a sequence of one or more filter lists. The first
-line in a filter list must contain four or five tokens: the \fIvalue
-pattern\fR, the \fIdelimiter list\fR, a \fIfiltertemplate\fR, a \fImatch
-description\fR, and an optional \fIsearch scope\fR. The \fIvalue pattern\fR is
-a regular expression that is matched against the value passed to the LDAP
-library call to select the filter list.
-.sp
-.LP
-The \fIdelimiter list\fR is a list of the characters (in the form of a single
-string) that can be used to break the \fBvalue\fR into distinct words.
-.sp
-.LP
-The \fIfilter template\fR is used to construct an LDAP filter (see description
-below)
-.sp
-.LP
-The \fImatch description\fR is returned to the caller along with a filter as a
-piece of text that can be used to describe the sort of LDAP search that took
-place. It should correctly compete both of the following phrases: "One \fImatch
-description\fR match was found for ..." and "Three \fImatch description\fR
-matches were found for...."
-.sp
-.LP
-The \fIsearch scope\fR is optional, and should be one of \fBbase\fR,
-\fBonelevel\fR, or \fBsubtree\fR. If \fIsearch scope\fR is not provided, the
-default is \fBsubtree\fR.
-.sp
-.LP
-The remaining lines of the filter list should contain two or three tokens, a
-\fIfilter template,\fR a \fImatch description\fR and an optional \fIsearch
-scope\fR.
-.sp
-.LP
-The \fIfilter template\fR is similar in concept to a \fBprintf\fR(3C) style
-format string. Everything is taken literally except for the character
-sequences:
-.sp
-.ne 2
-.na
-\fB\fB%v\fR \fR
-.ad
-.RS 9n
-Substitute the entire \fBvalue\fR string in place of the \fB%v\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB%v$\fR \fR
-.ad
-.RS 9n
-Substitute the last word in this field.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB%v\fR\fIN\fR\fR
-.ad
-.RS 9n
-Substitute word \fIN\fR in this field (where \fIN\fR is a single digit
-\fB1\fR-\fB9\fR). Words are numbered from left to right within the value
-starting at \fB1\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB%v\fR\fIM-N\fR\fR
-.ad
-.RS 9n
-Substitute the indicated sequence of words where \fIM\fR and \fIN\fR are both
-single digits \fB1\fR-\fB9\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB%v\fR\fIN-\fR\fR
-.ad
-.RS 9n
-Substitute word \fIN\fR through the last word in \fBvalue\fR where \fIN\fR is
-again a single digit \fB1\fR-\fB9\fR.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRAn LDAP Filter Configuration File
-.sp
-.LP
-The following LDAP filter configuration file contains two filter sets,
-\fBexample1\fR and \fBexample2 onelevel\fR, each of which contains four filter
-lists.
-
-.sp
-.in +2
-.nf
-# ldap filter file
-#
-example1
-"=" " " "%v" "arbitrary filter"
-"[0-9][0-9-]*" " " "(telephoneNumber=*%v)" "phone number"
-
-"@" " " "(mail=%v)" "email address"
-
-"^.[. _].*" ". _" "(cn=%v1* %v2-)" "first initial"
-
-".*[. _].$" ". _" "(cn=%v1-*)" "last initial"
-
-"[. _]" ". _" "(|(sn=%v1-)(cn=%v1-))" "exact"
- "(|(sn~=%v1-)(cn~=%v1-))" "approximate"
-
-".*" ". " "(|(cn=%v1)(sn=%v1)(uid=%v1))" "exact"
- "(|(cn~=%v1)(sn~=%v1))" "approximate"
-
-"example2 onelevel"
-"^..$" " " "(|(o=%v)(c=%v)(l=%v)(co=%v))" "exact" "onelevel"
- "(|(o~=%v)(c~=%v)(l~=%v)(co~=%v))" "approximate"
-"onelevel"
-
-" " " " "(|(o=%v)(l=%v)(co=%v)" "exact" "onelevel"
- "(|(o~=%v)(l~=%v)(co~=%v)" "approximate" "onelevel"
-
-"." " " "(associatedDomain=%v)" "exact" "onelevel"
-
-".*" " " "(|(o=%v)(l=%v)(co=%v)" "exact" "onelevel"
- "(|(o~=%v)(l~=%v)(co~=%v)" "approximate" "onelevel"
-.fi
-.in -2
-.sp
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for a description of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-l | l
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-Stability Level Evolving
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBldap_getfilter\fR(3LDAP), \fBldap_ufn\fR(3LDAP), \fBattributes\fR(5)
diff --git a/usr/src/man/man4/ldapsearchprefs.conf.4 b/usr/src/man/man4/ldapsearchprefs.conf.4
deleted file mode 100644
index 661f938f28..0000000000
--- a/usr/src/man/man4/ldapsearchprefs.conf.4
+++ /dev/null
@@ -1,279 +0,0 @@
-'\" te
-.\" Copyright (C) 1990, Regents of the University of Michigan. All Rights Reserved.
-.\" Portions Copyright (C) 1997, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH LDAPSEARCHPREFS.CONF 4 "Nov 26, 2017"
-.SH NAME
-ldapsearchprefs.conf \- configuration file for LDAP search preference routines
-.SH SYNOPSIS
-.LP
-.nf
-\fB/etc/opt/SUNWconn/ldap/current/ldapsearchprefs.conf\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBldapsearchprefs.conf\fR file contains information used by LDAP when
-searching the directory. Blank lines and lines that start with a hash ('#')
-character are treated as comments and ignored. Non-comment lines contain one or
-more tokens. Tokens are separated by white space, and double quotes can be used
-to include white space inside a token.
-.sp
-.LP
-Search preferences are typically used by LDAP-based client programs to specify
-what a user may search for, which attributes are searched, and which options
-are available to the user.
-.sp
-.LP
-The first non-comment line specifies the version of the template information
-and must contain the token \fBVersion\fR followed by an integer version number.
-For example:
-.sp
-.in +2
-.nf
-Version 1
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The current version is \fI1,\fR so the above example is always the correct
-opening line.
-.sp
-.LP
-The remainder of the file consists of one or more search preference
-configurations. The first line of a search preference is a human-readable name
-for the type of object being searched for, for example \fBPeople\fR or
-\fBOrganizations\fR. This name is stored in the \fIso_objtypeprompt\fR member
-of the \fBldap_searchobj\fR structure (see \fBldap_searchprefs\fR(3LDAP)). For
-example:
-.sp
-.in +2
-.nf
-People
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-specifies a label for a search preference designed to find X.500 entries for
-people.
-.sp
-.LP
-The next line specifies a list of options for this search object. The only
-option currently allowed is "internal" which means that this search object
-should not be presented directly to a user. Options are placed in the
-\fIso_options\fR member of the \fIldap_searchobj\fR structure and can be tested
-using the \fBLDAP_IS_SEARCHOBJ_OPTION_SET()\fR macro. Use "" if no special
-options are required.
-.sp
-.LP
-The next line specifies a label to use for "Fewer Choices" searches. "Fewer
-Choices" searches are those where the user's input is fed to the ldap_filter
-routines to determine an appropriate filter to use. This contrasts with
-explicitly-constructed LDAP filters, or "More Choices" searches, where the user
-can explicitly construct an LDAP filter.
-.sp
-.LP
-For example:
-.sp
-.in +2
-.nf
-"Search For:"
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-can be used by LDAP client programs to label the field into which the user can
-type a "Fewer Choices" search.
-.sp
-.LP
-The next line specifies an LDAP filter prefix to append to all "More Choices"
-searched. This is typically used to limit the types of entries returned to
-those containing a specific object class. For example:
-.sp
-.in +2
-.nf
-"(&(objectClass=person)"
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-would cause only entries containing the object class \fIperson\fR to be
-returned by a search. Note that parentheses may be unbalanced here, since this
-is a filter prefix, not an entire filter.
-.sp
-.LP
-The next line is an LDAP filter tag which specifies the set of LDAP filters to
-be applied for "Fewer Choices" searching. The line
-.sp
-.in +2
-.nf
-\fB"x500-People"\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-would tell the client program to use the set of LDAP filters from the ldap
-filter configuration file tagged "x500-People".
-.sp
-.LP
-The next line specifies an LDAP attribute to retrieve to help the user choose
-when several entries match the search terms specified. For example:
-.sp
-.in +2
-.nf
-"title"
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-specifies that if more than one entry matches the search criteria, the client
-program should retrieve the \fBtitle\fR attribute that and present that to the
-user to allow them to select the appropriate entry. The next line specifies a
-label for the above attribute, for example,
-.sp
-.in +2
-.nf
-"Title:"
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Note that the values defined so far in the file are defaults, and are intended
-to be overridden by the specific search options that follow.
-.sp
-.LP
-The next line specifies the scope of the LDAP search to be performed.
-Acceptable values are subtree, onelevel, and base.
-.sp
-.LP
-The next section is a list of "More Choices" search options, terminated by a
-line containing only the string \fBEND\fR. For example:
-.sp
-.in +2
-.nf
-"Common Name" cn 11111 "" ""
-"Surname" sn 11111 "" ""
-"Business Phone" "telephoneNumber" 11101 "" ""
-END
-.fi
-.in -2
-.sp
-
-.sp
-.LP
- Each line represents one method of searching. In this example, there are three
-ways of searching - by Common Name, by Surname, and by Business Phone number.
-The first field is the text which should be displayed to user. The second field
-is the attribute which will be searched. The third field is a bitmap which
-specifies which of the match types are permitted for this search type. A "1"
-value in a given bit position indicates that a particular match type is valid,
-and a "0" indicates that is it not valid. The fourth and fifth fields are,
-respectively, the select attribute name and on-screen name for the selected
-attribute. These values are intended to override the defaults defined above. If
-no specific values are specified, the client software uses the default values
-above.
-.sp
-.LP
-The next section is a list of search match options, terminated by a a line
-containing only the string \fBEND\fR. Example:
-.sp
-.in +2
-.nf
-"exactly matches" "(%a=%v))"
-"approximately matches" "(%a~=%v))"
-"starts with" "(%a=%v*))"
-"ends with" "(%a=*%v))"
-"contains" "(%a=*%v*))"
-END
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-In this example, there are five ways of refining the search. For each method,
-there is an LDAP filter suffix which is appended to the ldap filter.
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRA Sample Configuration Using Search Preference for "people"
-.sp
-.LP
-The following example illustrates one possible configuration of search
-preferences for "people".
-
-.sp
-.in +2
-.nf
-# Version number
-Version 1
-# Name for this search object
-People
-# Label to place before text box user types in
-"Search For:"
-# Filter prefix to append to all "More Choices" searches
-"(&(objectClass=person)"
-# Tag to use for "Fewer Choices" searches - from ldapfilter.conf file
-"x500-People"
-# If a search results in > 1 match, retrieve this attribute to help
-# user distinguish between the entries...
-multilineDescription
-# ...and label it with this string:
-"Description"
-# Search scope to use when searching
-subtree
-# Follows a list of "More Choices" search options. Format is:
-# Label, attribute, select-bitmap, extra attr display name, extra attr ldap name
-# If last two are null, "Fewer Choices" name/attributes used
-"Common Name" cn 11111 "" ""
-"Surname" sn 11111 "" ""
-"Business Phone" "telephoneNumber" 11101 "" ""
-"E-Mail Address" "mail" 11111 "" ""
-"Uniqname" "uid" 11111 "" ""
-END
-# Match types
-"exactly matches" "(%a=%v))"
-"approximately matches" "(%a~=%v))"
-"starts with" "(%a=%v*))"
-"ends with" "(%a=*%v))"
-"contains" "(%a=*%v*))"
-END
-.fi
-.in -2
-
-.sp
-.LP
-In this example, the user may search for People. For "fewer choices" searching,
-the tag for the \fBldapfilter.conf\fR(4) file is "x500-People".
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for a description of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-Stability Level Evolving
-.TE
-
-.SH SEE ALSO
-.LP
-\fBldap_searchprefs\fR(3LDAP), \fBattributes\fR(5)
diff --git a/usr/src/man/man4/ldaptemplates.conf.4 b/usr/src/man/man4/ldaptemplates.conf.4
deleted file mode 100644
index 7d62bcbbbe..0000000000
--- a/usr/src/man/man4/ldaptemplates.conf.4
+++ /dev/null
@@ -1,431 +0,0 @@
-'\" te
-.\" Copyright (C) 1990, Regents of the University of Michigan. All Rights Reserved.
-.\" Portions Copyright (C) 1997, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH LDAPTEMPLATES.CONF 4 "Jul 9, 2003"
-.SH NAME
-ldaptemplates.conf \- configuration file for LDAP display template routines
-.SH SYNOPSIS
-.LP
-.nf
-\fB/etc/opt/SUNWconn/ldap/current/ldaptemplates.conf\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBldaptemplates.conf\fR file contains information used by the LDAP display
-routines.
-.sp
-.LP
-Blank lines and lines that start with a hash character ('#') are treated as
-comments and ignored. Non-comment lines contain one or more tokens. Tokens are
-separated by white space, and double quotes can be used to include white space
-inside a token.
-.sp
-.LP
-The first non-comment line specifies the version of the template information
-and must contain the token \fBVersion\fR followed by an integer version number.
-For example,
-.sp
-.in +2
-.nf
-Version 1
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The current version is \fI1\fR, so the above example is always the correct
-first line.
-.sp
-.LP
-The remainder of the file consists of one or more display templates. The first
-two lines of the display template each contain a single token that specifies
-singular and plural names for the template in a user-friendly format. For
-example,
-.sp
-.in +2
-.nf
-"Person"
-"People"
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-specifies appropriate names for a template designed to display person
-information.
-.sp
-.LP
-The next line specifies the name of the icon or similar element that is
-associated with this template. For example,
-.sp
-.in +2
-.nf
-"person icon"
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The next line is a blank-separated list of template options. "" can be used if
-no options are desired. Available options are: \fBaddable\fR (it is appropriate
-to allow entries of this type to be added), \fBmodrdn\fR (it is appropriate to
-offer the \fBmodify rdn\fR operation), \fBaltview\fR (this template is an
-alternate view of another template). For example,
-.sp
-.in +2
-.nf
-"addable" "modrdn"
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The next portion of the template is a list of X.500 object classes that is used
-to determine whether the template should be used to display a given entry. The
-object class information consists of one or more lines, followed by a
-terminating line that contains the single token \fBEND\fR. Each line contains
-one or more object class names, all of which must be present in a directory
-entry. Multiple lines can be used to associate more than one set of object
-classes with a given template. For example,
-.sp
-.in +2
-.nf
-emailPerson
-orgPerson
-END
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-means that the template is appropriate for display of \fBemailPerson\fR entries
-or \fBorgPerson\fR entries.
-.sp
-.LP
-The next line after the object class list is the name of the attribute to
-authenticate as to make changes (use "" if it is appropriate to authenticate as
-the entry itself). For example,
-.sp
-.in +2
-.nf
-"owner"
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The next line is the default attribute to use when naming a new entry, for
-example,
-.sp
-.in +2
-.nf
-"cn"
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The next line is the distinguished name of the default location under which new
-entries are created. For example,
-.sp
-.in +2
-.nf
-"o=XYZ, c=US"
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The next section is a list of rules used to assign default values to new
-entries. The list should be terminated with a line that contains the single
-token \fBEND\fR. Each line in this section should either begin with the token
-\fBconstant\fR and be followed by the name of the attribute and a constant
-value to assign, or the line should begin with \fBaddersdn\fR followed by the
-name of an attribute whose value will be the DN of the person who has
-authenticated to add the entry. For example,
-.sp
-.in +2
-.nf
-constant associatedDomain XYZ.us
-addersdn seeAlso
-END
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The last portion of the template is a list of items to display. It consists of
-one or more lines, followed by a terminating line that contains the single
-token \fBEND\fR. Each line is must begin with the token \fBsamerow\fR or the
-token \fBitem\fR
-.sp
-.LP
-It is assumed that each item appears on a row by itself unless it was preceded
-by a \fBsamerow\fR line (in which case it should be displayed on the same line
-as the previous item, if possible). Lines that begin with \fBsamerow\fR should
-not have any other tokens on them.
-.sp
-.LP
-Lines that begin with \fBitem\fR must have at least three more tokens on them:
-an item type, a label, and an attribute name. Any extra tokens are taken as
-extra arguments.
-.sp
-.LP
-The item type token must be one of the following strings:
-.sp
-.ne 2
-.na
-\fB\fBcis\fR \fR
-.ad
-.RS 14n
-case-ignore string attributes
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmls\fR \fR
-.ad
-.RS 14n
-multiline string attributes
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmail\fR \fR
-.ad
-.RS 14n
-RFC-822 conformant mail address attributes
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdn\fR \fR
-.ad
-.RS 14n
-distinguished name pointer attributes
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBbool\fR \fR
-.ad
-.RS 14n
-Boolean attributes
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBjpeg\fR \fR
-.ad
-.RS 14n
-JPEG photo attributes
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBjpegbtn\fR \fR
-.ad
-.RS 14n
-a button that will retrieve and show a JPEG photo attribute
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfax\fR \fR
-.ad
-.RS 14n
-FAX T.4 format image attributes
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfaxbtn\fR \fR
-.ad
-.RS 14n
-a button that will retrieve and show a FAX photo attribute
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBaudiobtn\fR \fR
-.ad
-.RS 14n
-audio attributes
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBtime\fR \fR
-.ad
-.RS 14n
-UTC time attributes
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdate\fR \fR
-.ad
-.RS 14n
-UTC time attributes where only the date portion should be shown
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBurl\fR \fR
-.ad
-.RS 14n
-labeled Uniform Resource Locator attributes
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsearchact\fR \fR
-.ad
-.RS 14n
-define an action that will do a directory search for other entries
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBlinkact\fR \fR
-.ad
-.RS 14n
-define an action which is a link to another display template
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBprotected\fR \fR
-.ad
-.RS 14n
-for an encrypted attribute, with values displayed as asterisks
-.RE
-
-.sp
-.LP
-An example of an item line for the drink attribute (displayed with label "Work
-Phone"):
-.sp
-.in +2
-.nf
-item cis "Work Phone" telephoneNumber
-.fi
-.in -2
-.sp
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRA Sample Configuration File Containing a Template that Displays
-People Entries
-.sp
-.LP
-The following template configuration file contains a templates for display of
-people entries.
-
-.sp
-.in +2
-.nf
- #
- # LDAP display templates
- #
- # Version must be 1 for now
- #
- Version 1
- #
- # Person template
- "Person"
- "People"
-
- # name of the icon that is associated with this template
- "person icon"
-
- # blank-separated list of template options ("" for none)
- "addable"
-
- #
- # objectclass list
- person
- END
-
- #
- # name of attribute to authenticate as ("" means auth as this entry)
- ""
-
- #
- # default attribute name to use when forming RDN of a new entry
- #
- "cn"
-
- #
- # default location when adding new entries (DN; "" means no default)
- "o=XYZ, c=US"
-
- #
- # rules used to define default values for new entries
- END
-
- #
- # list of items for display
- item jpegbtn "View Photo" jpegPhoto "Next Photo"
- item audiobtn "Play Sound" audio
- item cis "Also Known As" cn
- item cis "Title" title
- item mls "Work Address" postalAddress
- item cis "Work Phone" telephoneNumber
- item cis "Fax Number" facsimileTelephoneNumber
- item mls "Home Address" homePostalAddress
- item cis "Home Phone" homePhone
- item cis "User ID" uid
- item mail "E-Mail Address" mail
- item cis "Description" description
- item dn "See Also" seeAlso
- END
-.fi
-.in -2
-.sp
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for a description of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-Stability Level Evolving
-.TE
-
-.SH SEE ALSO
-.LP
-\fBldap_disptmpl\fR(3LDAP), \fBldap_entry2text\fR(3LDAP), \fBattributes\fR(5)
diff --git a/usr/src/man/man4/loader.conf.4 b/usr/src/man/man4/loader.conf.4
deleted file mode 100644
index 52dfb4eb8d..0000000000
--- a/usr/src/man/man4/loader.conf.4
+++ /dev/null
@@ -1,249 +0,0 @@
-.\" Copyright (c) 1999 Daniel C. Sobral
-.\" All rights reserved.
-.\"
-.\" Redistribution and use in source and binary forms, with or without
-.\" modification, are permitted provided that the following conditions
-.\" are met:
-.\" 1. Redistributions of source code must retain the above copyright
-.\" notice, this list of conditions and the following disclaimer.
-.\" 2. Redistributions in binary form must reproduce the above copyright
-.\" notice, this list of conditions and the following disclaimer in the
-.\" documentation and/or other materials provided with the distribution.
-.\"
-.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
-.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
-.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
-.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
-.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-.\" SUCH DAMAGE.
-.\"
-.Dd Nov 26, 2017
-.Dt LOADER.CONF 4
-.Os
-.Sh NAME
-.Nm loader.conf
-.Nd "system bootstrap configuration information"
-.Sh SYNOPSIS
-.Nm /boot/loader.conf
-.Sh DESCRIPTION
-The file
-.Nm
-contains descriptive information on bootstrapping the system.
-Through
-it you can specify the kernel to be booted, parameters to be passed to
-it, and additional modules to be loaded; and generally set all variables
-described in
-.Xr loader 5 .
-.Pp
-Loader implements set of builtin commands and functions and script
-interpreter as standalone binary program.
-When starting, the loader will read the file
-.Pa /boot/loader.rc
-as initialization and startup script, to include other support files
-and to read the configuration, describing current boot environment.
-All loader scripts and configuration files are located in the
-.Pa /boot
-directory tree.
-.Pp
-The file
-.Pa /boot/loader.rc
-must contain the following two lines for
-.Nm
-to be automatically processed:
-.Pp
-.Dl include /boot/forth/loader.4th
-.Dl start
-.Pp
-The default
-.Pa /boot/loader.rc
-is provided by the operating system and may be replaced on operating
-system update.
-The local updates are advised to be added into the
-.Pa /boot/loader.rc.local
-.Pp
-The configuration variables are read from the following files:
-.Bl -tag -width Ar
-.It Ar /boot/solaris/bootenv.rc
-Managed by the
-.Xr eeprom 1M
-command.
-.It Ar /boot/defaults/loader.conf
-Loader defaults provided by the operating system.
-.It Ar /boot/loader.conf
-System specific loader configuration.
-May be provided by the operating system.
-.It Ar /boot/loader.conf.local
-User editable loader configuration.
-.It Ar /boot/conf.d/*
-User editable loader configuration snippets.
-The files are processed in lexicographical order.
-The configuration snippets mechanism is not available in case of TFTP boot as
-TFTP does not provide the directory list.
-.It Ar /boot/transient.conf
-Configuration file for transient boot.
-This file is created by the
-.Xr reboot 1M
-command and is automatically removed when system is reaching the multi-user
-run level.
-.El
-.Pp
-The configuration is processed in the order listed above.
-.Ss SYNTAX
-The general parsing rules are:
-.Bl -bullet
-.It
-Spaces and empty lines are ignored.
-.It
-A # sign will mark the remainder of the line as a comment.
-.It
-Only one setting can be present on each line.
-.El
-.Pp
-All settings have the following format:
-.Pp
-.Dl variable="value"
-.Pp
-Unless it belongs to one of the classes of settings that receive special
-treatment, a setting will set the value of a
-.Xr loader 5
-environment variable.
-The settings that receive special
-treatment are listed below.
-Settings beginning with
-.Qq *
-below define the modules to be loaded and
-may have any prefix; the prefix identifies a module.
-All such settings sharing a common
-prefix refer to the same module.
-.Bl -tag -width Ar
-.It Ar exec
-Immediately executes a
-.Xr loader 5
-command.
-This type of setting cannot be processed by programs other
-than
-.Xr loader 5 ,
-so its use should be avoided.
-Multiple instances of it will be processed
-independently.
-.It Ar loader_conf_files
-Defines additional configuration files to be processed right after the
-present file.
-.It Ar kernel
-Name of the kernel to be loaded.
-If no kernel name is set, no additional
-modules will be loaded.
-.It Ar boot-args
-Flags to be passed to the kernel.
-.It Ar password
-Protect boot menu with a password without interrupting
-.Ic autoboot
-process.
-The password should be in clear text format.
-If a password is set, boot menu will not appear until any key is pressed during
-countdown period specified by
-.Va autoboot_delay
-variable or
-.Ic autoboot
-process fails.
-In both cases user should provide specified password to be able to access boot
-menu.
-.It Ar bootlock_password
-Provides a password to be required by check-password before execution is
-allowed to continue.
-The password should be in clear text format.
-If a password is set, the user must provide specified password to boot.
-.It Ar verbose_loading
-If set to
-.Dq YES ,
-module names will be displayed as they are loaded.
-.It Ar *_load
-If set to
-.Dq YES ,
-that module will be loaded.
-If no name is defined (see below), the
-module's name is taken to be the same as the prefix.
-.It Ar *_name
-Defines the name of the module.
-.It Ar *_type
-Defines the module's type.
-If none is given, it defaults to a kld module.
-.It Ar *_flags
-Flags and parameters to be passed to the module.
-.It Ar *_before
-Commands to be executed before the module is loaded.
-Use of this setting
-should be avoided.
-.It Ar *_after
-Commands to be executed after the module is loaded.
-Use of this setting
-should be avoided.
-.It Ar *_error
-Commands to be executed if the loading of a module fails.
-Except for the
-special value
-.Dq abort ,
-which aborts the bootstrap process, use of this setting should be avoided.
-.El
-.Ss DEFAULT SETTINGS
-Most of
-.Nm Ns 's
-default settings can be ignored.
-The few of them which are important
-or useful are:
-.Bl -tag -width bootfile -offset indent
-.It Va console
-.Pq Dq text
-.Dq ttya
--
-.Dq ttyd
-selects serial console,
-.Dq text
-selects the video console,
-.Dq nullconsole
-selects a mute console
-(useful for systems with neither a video console nor a serial port), and
-.Dq spinconsole
-selects the video console which prevents any input and hides all output
-replacing it with
-.Dq spinning
-character (useful for embedded products and such).
-.It Va kernel
-.Pq Dq i86pc/kernel/${ISADIR}
-.Ar /platform
-sub-directory containing kernel
-.It Va loader_conf_files
-.Pq Dq Pa /boot/loader.conf /boot/loader.conf.local
-.It Va beastie_disable
-If set to
-.Dq YES ,
-the beastie boot menu will be skipped.
-The beastie boot menu is always skipped if running non-x86 hardware.
-.It Va loader_logo Pq Dq Li illumos
-Selects a desired logo in the beastie boot menu.
-Possible values depend on distribution;
-.Dq Li none
-will disable the logo.
-.It Va loader_color
-If set to
-.Dq NO ,
-the beastie boot menu will be displayed without ANSI coloring.
-.El
-.Sh SEE ALSO
-.Xr boot 1M ,
-.Xr eeprom 1M ,
-.Xr loader 5 ,
-.Xr loader.4th 5
-.Sh NOTES
-The
-.Xr loader 5
-stops reading
-.Nm
-when it encounters a syntax error, so any options which are vital for
-booting a particular system should precede any experimental additions to
-.Nm .
diff --git a/usr/src/man/man4/logadm.conf.4 b/usr/src/man/man4/logadm.conf.4
deleted file mode 100644
index cb10ede60a..0000000000
--- a/usr/src/man/man4/logadm.conf.4
+++ /dev/null
@@ -1,70 +0,0 @@
-'\" te
-.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH LOGADM.CONF 4 "May 23, 2007"
-.SH NAME
-logadm.conf \- configuration file for logadm command
-.SH SYNOPSIS
-.LP
-.nf
-\fB/etc/logadm.conf\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fB/etc/logadm.conf\fR is the default configuration file for the log management
-tool \fBlogadm\fR(1M). Comments are allowed using the pound character (\fB#\fR)
-and extend to the end of line. Each non-comment line has the form:
-.sp
-.in +2
-.nf
-\fIlogname\fR \fIoptions\fR
-.fi
-.in -2
-
-.sp
-.LP
-where \fIlogname\fR is the name of the entry and \fIoptions\fR are the default
-command line options for the \fBlogadm\fR command. The name of the entry may be
-the same as the name of the log file, or a log file name may be given in the
-options section of the entry. Long lines may be folded using a backslash
-followed by a newline to continue an entry on the next line. Single or double
-quotes may be used to protect spaces or alternate-style quotes in strings.
-.sp
-.LP
-The preferred method for changing \fB/etc/logadm.conf\fR is to use the
-\fB-V\fR, \fB-w\fR, and \fB-r\fR options to the \fBlogadm\fR(1M) command, which
-allow you to lookup an entry, write an entry, or remove an entry from
-\fB/etc/logadm.conf\fR.
-.sp
-.LP
-A full description of how and when \fB/etc/logadm.conf\fR is used and sample
-entries are found in \fBlogadm\fR(1M).
-.sp
-.LP
-By default, \fBlogadm\fR(1M) works in \fBGMT\fR. Therefore, all entries in
-\fB/etc/logadm.conf\fR will have a \fBGMT\fR timestamp. Users can use the
-\fB-l\fR option to set \fBlogadm\fR to local time.
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBlogadm\fR(1M), \fBattributes\fR(5)
diff --git a/usr/src/man/man4/logindevperm.4 b/usr/src/man/man4/logindevperm.4
deleted file mode 100644
index 6fad0f269f..0000000000
--- a/usr/src/man/man4/logindevperm.4
+++ /dev/null
@@ -1,137 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH LOGINDEVPERM 4 "Sep 25, 2008"
-.SH NAME
-logindevperm, fbtab \- login-based device permissions
-.SH SYNOPSIS
-.LP
-.nf
-\fB/etc/logindevperm\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fB/etc/logindevperm\fR file contains information that is used by
-\fBlogin\fR(1) and \fBttymon\fR(1M) to change the owner, group, and permissions
-of devices upon logging into or out of a console device. By default, this file
-contains lines for the keyboard, mouse, audio, and frame buffer devices.
-.sp
-.LP
-The owner of the devices listed in \fB/etc/logindevperm\fR is set to the owner
-of the console by \fBlogin\fR(1). The group of the devices is set to the
-owner's group specified in \fB/etc/passwd\fR. The permissions are set as
-specified in \fB/etc/logindevperm\fR.
-.sp
-.LP
-If the console is \fB/dev/vt/active\fR, the owner of the devices is the first
-user logged in on the consoles (\fB/dev/console\fR or \fB/dev/vt/#\fR). Upon
-this first user's logout the owner and group of these devices is reset by
-\fBttymon\fR(1M) to owner root and root's group as specified in
-\fB/etc/passwd\fR.
-.sp
-.LP
-Fields are separated by a TAB or SPACE characters. Blank lines and comments can
-appear anywhere in the file; comments start with a hashmark, (\fB#\fR), and
-continue to the end of the line.
-.sp
-.LP
-The first field specifies the name of a console device (for example,
-\fB/dev/console\fR). By default, it is \fB/dev/vt/active\fR, which points to
-the current active console, including \fB/dev/console\fR and all virtual
-consoles (\fB/dev/vt/#\fR). The second field specifies the permissions to which
-the devices in the \fIdevice_list\fR field (third field) are set. These
-permissions must be expressed in octal format, for example, \fB0774\fR. A
-\fIdevice_list\fR is a colon-separated list of device names. A device name must
-be a \fB/dev\fR link.
-.sp
-.LP
-A directory or logical name in the device name can be either one of the
-following:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-A fully qualified name, for example, \fBfbs\fR.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-A regular expression, for example, \fB[a-z0-9.]+\fR. See \fBregexp\fR(5) for
-more information on regular expressions.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The wildcard character \fB*\fR specifying all directory or node names (except
-\fB\&.\fR and \fB\&..\fR, for example, \fB/dev/fbs/*\fR specifies all frame
-buffer devices.
-.RE
-.sp
-.LP
-Some examples of \fB/etc/logindevperm\fR file entries include:
-.sp
-.in +2
-.nf
-/dev/usb/[0-9a-f]+[.][0-9a-f]+/[0-9]+/[a-z0-9.]+
-/dev/usb/[0-9a-f]+[.][0-9a-f]+/[0-9]+/*
-/dev/usb/[0-9a-f]+[.][0-9a-f]+/*/*
-.fi
-.in -2
-
-.sp
-.LP
-Specify all \fBugen\fR(7D) endpoints and status nodes.
-.sp
-.LP
-Drivers can also be specified to limit the permission changes to minor nodes
-owned by the specified drivers. For example,
-.sp
-.in +2
-.nf
-/dev/console 0600 /dev/usb/[0-9a-f]+[.][0-9a-f]+/[0-9]+/* \e
-driver=usb_mid,scsa2usb,usbprn # libusb devices
-.fi
-.in -2
-
-.sp
-.LP
-Due to the persistence of \fBdevfs\fR(7FS) minor node management, the user
-should be logged in as root if the list of minor nodes will be reduced and the
-devices should all be plugged in.
-.sp
-.LP
-Once the devices are owned by the user, their permissions and ownership can be
-changed using \fBchmod\fR(1) and \fBchown\fR(1), as with any other user-owned
-file.
-.sp
-.LP
-Upon logout the owner and group of these devices are reset by \fBttymon\fR(1M)
-to owner \fBroot\fR and root's group as specified in \fB/etc/passwd\fR
-(typically \fBother\fR). The permissions are set as specified in the
-\fB/etc/logindevperm\fR file.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/passwd\fR\fR
-.ad
-.RS 15n
-File that contains user group information.
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBchmod\fR(1), \fBchown\fR(1), \fBlogin\fR(1), \fBttymon\fR(1M),
-\fBpasswd\fR(4), \fBregexp\fR(5), \fBugen\fR(7D)
-.SH NOTES
-.sp
-.LP
-\fB/etc/logindevperm\fR provides a superset of the functionality provided by
-\fB/etc/fbtab\fR in SunOS 4.\fIx\fR releases.
diff --git a/usr/src/man/man4/loginlog.4 b/usr/src/man/man4/loginlog.4
deleted file mode 100644
index 6d226f0a7d..0000000000
--- a/usr/src/man/man4/loginlog.4
+++ /dev/null
@@ -1,37 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH LOGINLOG 4 "Jul 3, 1990"
-.SH NAME
-loginlog \- log of failed login attempts
-.SH DESCRIPTION
-.sp
-.LP
-After five unsuccessful login attempts, all the attempts are logged in the file
-\fB/var/adm/loginlog\fR. This file contains one record for each failed attempt.
-Each record contains the login name, tty specification, and time.
-.sp
-.LP
-This is an \fBASCII\fR file. Each field within each entry is separated from the
-next by a colon. Each entry is separated from the next by a new-line.
-.sp
-.LP
-By default, \fBloginlog\fR does not exist, so no logging is done. To enable
-logging, the log file must be created with read and write permission for owner
-only. Owner must be \fBroot\fR and group must be \fBsys\fR.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/var/adm/loginlog\fR\fR
-.ad
-.RS 21n
-
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBlogin\fR(1), \fBpasswd\fR(1)
diff --git a/usr/src/man/man4/magic.4 b/usr/src/man/man4/magic.4
deleted file mode 100644
index a8770cdb02..0000000000
--- a/usr/src/man/man4/magic.4
+++ /dev/null
@@ -1,357 +0,0 @@
-'\" te
-.\" Copyright (c) 2004, Sun Microsystems, Inc.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH MAGIC 4 "Feb 6, 2004"
-.SH NAME
-magic \- file command's magic number file
-.SH SYNOPSIS
-.LP
-.nf
-\fB/etc/magic\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBfile\fR(1) command identifies the type of a file using, among other
-tests, a test for whether the file begins with a certain \fImagic number\fR.
-The \fB/etc/magic\fR file, or a file specified as an option-argument to the
-\fB-m\fR or \fB-M\fR options of \fBfile\fR(1), specifies what magic numbers are
-to be tested for, what message to print if a particular magic number is found,
-and additional information to extract from the file.
-.sp
-.LP
-Each line of the file specifies a position-sensitive test to perform. A test
-compares the data starting at a particular offset in the file with a 1-byte,
-2-byte, 4-byte, or 8-byte numeric value or string. If the test succeeds, a
-message is printed. The line consists of the following fields (separated by
-tabs): \fIoffset\fR \fItype\fR \fIvalue\fR \fImessage\fR
-.sp
-.ne 2
-.na
-\fB\fIoffset\fR\fR
-.ad
-.RS 11n
-A number specifying the offset, in bytes, into the file of the data which is to
-be tested.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fItype\fR\fR
-.ad
-.RS 11n
-The type of the data to be tested. The possible values are:
-.sp
-.ne 2
-.na
-\fB\fBbyte, d1, dC\fR\fR
-.ad
-.RS 24n
-A one-byte signed value.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBshort, d2, dS\fR\fR
-.ad
-.RS 24n
-A 2-byte signed value.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBlong, d4, dI, dL, d\fR\fR
-.ad
-.RS 24n
-A 4-byte signed value.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBllong, d8\fR\fR
-.ad
-.RS 24n
-An 8-byte signed value
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBubyte, u1, uC\fR\fR
-.ad
-.RS 24n
-A one-byte unsigned value.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBushort, u2, uS\fR\fR
-.ad
-.RS 24n
-A 2-byte unsigned value.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBulong, u4, uI, uL, u\fR\fR
-.ad
-.RS 24n
-A 4-byte unsigned value.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBullong, u8\fR\fR
-.ad
-.RS 24n
-An 8-byte unsigned value.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBstring, s\fR\fR
-.ad
-.RS 24n
-A string of bytes.
-.RE
-
-All type specifiers, except for \fBstring\fR and \fBs\fR, may be followed by a
-mask specifier of the form \fB&\fR\fInumber\fR. If a mask specifier is given,
-the value is AND'ed with the \fInumber\fR before any comparisons are done. The
-\fInumber\fR is specified in C form. For instance, \fB13\fR is decimal,
-\fB013\fR is octal, and \fB0x13\fR is hexadecimal.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIvalue\fR\fR
-.ad
-.RS 11n
-The value to be compared with the value from the file. If the type is numeric,
-this value is specified in \fBC\fR form. If it is a string, it is specified as
-a \fBC\fR string with the usual escapes permitted (for instance, \en for
-NEWLINE).
-.sp
-\fINumeric values\fR may be preceded by a character indicating the operation to
-be performed, as follows:
-.sp
-.ne 2
-.na
-\fB\fB=\fR\fR
-.ad
-.RS 5n
-The value from the file must equal the specified value.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB<\fR\fR
-.ad
-.RS 5n
-The value from the file must be less than the specified value.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB>\fR\fR
-.ad
-.RS 5n
-The value from the file must be greater than the specified value.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB&\fR\fR
-.ad
-.RS 5n
-All the bits in the specified value must be set in the value from the file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB^\fR\fR
-.ad
-.RS 5n
-At least one of the bits in the specified value must not be set in the value
-from the file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBx\fR\fR
-.ad
-.RS 5n
-Any value will match.
-.RE
-
-If the character is omitted, it is assumed to be "\fB=\fR".
-.sp
-For comparison of numeric values, the sign and size of both the value in the
-file and the value from the \fIvalue\fR field of the magic entry will match
-that of the corresponding \fItype\fR field. If there is a non-zero mask
-(\fB&\fR) in the \fItype\fR field, the comparison will be unsigned.
-.sp
-For string values, the byte string from the file must match the specified byte
-string. The byte string from the file which is matched is the same length as
-the specified byte string. If the value is a string, it can contain the
-following sequences:
-.sp
-.ne 2
-.na
-\fB\e\fIcharacter\fR\fR
-.ad
-.RS 15n
-The backslash-escape sequences \fB\e\e\fR, \fB\ea\fR, \fB\eb\fR, \fB\ef\fR,
-\fB\en\fR, \fB\er\fR, \fB\et\fR, \fB\ev\fR\&.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\e\fIoctal\fR\fR
-.ad
-.RS 15n
-Octal sequences that can be used to represent characters with specific coded
-values. An octal sequence consists of a backslash followed by the longest
-sequence of one, two, or three octal-digit characters (01234567).
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fImessage\fR\fR
-.ad
-.RS 11n
-The message to be printed if the comparison succeeds. If the string contains a
-\fBprintf\fR(3C) format specification, the value from the file (with any
-specified masking performed) is printed using the message as the format string.
-.RE
-
-.sp
-.LP
-Some file formats contain additional information which is to be printed along
-with the file type. A line which begins with the character "\fB>\fR" indicates
-additional tests and messages to be printed. If the test on the line preceding
-the first line with a "\fB>\fR" succeeds, the tests specified in all the
-subsequent lines beginning with "\fB>\fR" are performed, and the messages are
-printed if the tests succeed. The next line which does not begin with a
-"\fB>\fR" terminates this.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/magic\fR\fR
-.ad
-.RS 14n
-
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBfile\fR(1), \fBfile\fR(1B), \fBprintf\fR(3C)
-.SH NOTES
-.sp
-.LP
-In Solaris 9 and prior releases, the file utility may have performed unsigned
-comparisons for types \fBbyte\fR, \fBshort\fR, and \fBlong\fR. Old user-defined
-magic files, which were specified with the \fB-m\fR option, will need
-modification of \fBbyte\fR, \fBshort\fR, and \fBlong\fR entries to their
-corresponding unsigned types (\fBubyte\fR, \fBushort\fR, or \fBulong\fR) for
-those entries for which all of the following are true:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The entry uses the "\fB<\fR" or the "\fB>\fR" operator.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The \fBtype\fR field does not contain a non-zero mask.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The intention of the entry is to test unsigned values.
-.RE
-.sp
-.LP
-For example, if the following entry is expected to match any non-zero, one-byte
-value from the file, including values for which the sign bit is on:
-.sp
-.in +2
-.nf
-#offset type value message
-0 byte >0 this matches any non-zero value
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-then that entry should be changed to:
-.sp
-.in +2
-.nf
-0 ubyte >0 this matches any non-zero value
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-In Solaris 7 through Solaris 9, when applying tests for magic file entries
-whose \fBtype\fR field is the numeric type "short" or "long", the file utility
-in the x86 environment would switch the byte order of the numeric values read.
-Starting in Solaris 10, the byte order will not be switched on x86. A test for
-a numeric value whose byte order is identical in both little- and big-endian
-architectures may require two magic file entries, to ensure that the test
-correctly identifies files in both environments. For example, a magic file
-entry that will match on a big-endian system may look like this:
-.sp
-.in +2
-.nf
-0 long 0xf00000ff extended accounting file
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Its corresponding magic file entry that will match the same value on a
-little-endian system would look like this:
-.sp
-.in +2
-.nf
-0 long 0xff0000f0 extended accounting file
-.fi
-.in -2
-.sp
-
-.SH BUGS
-.sp
-.LP
-There should be more than one level of subtests, with the level indicated by
-the number of `\fB>\fR' at the beginning of the line.
diff --git a/usr/src/man/man4/mailer.conf.4 b/usr/src/man/man4/mailer.conf.4
deleted file mode 100644
index a46f0160e4..0000000000
--- a/usr/src/man/man4/mailer.conf.4
+++ /dev/null
@@ -1,107 +0,0 @@
-.\" $NetBSD: mailer.conf.5,v 1.2 1999/05/29 18:18:30 christos Exp $
-.\"
-.\" Copyright (c) 1998
-.\" Perry E. Metzger. All rights reserved.
-.\"
-.\" Redistribution and use in source and binary forms, with or without
-.\" modification, are permitted provided that the following conditions
-.\" are met:
-.\" 1. Redistributions of source code must retain the above copyright
-.\" notice, this list of conditions and the following disclaimer.
-.\" 2. Redistributions in binary form must reproduce the above copyright
-.\" notice, this list of conditions and the following disclaimer in the
-.\" documentation and/or other materials provided with the distribution.
-.\" 3. All advertising materials mentioning features or use of this software
-.\" must display the following acknowledgment:
-.\" This product includes software developed for the NetBSD Project
-.\" by Perry E. Metzger.
-.\" 4. The name of the author may not be used to endorse or promote products
-.\" derived from this software without specific prior written permission.
-.\"
-.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
-.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
-.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
-.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
-.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
-.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
-.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-.\"
-.\" $FreeBSD: releng/9.1/share/man/man5/mailer.conf.5 213609 2010-10-08 20:13:12Z markm $
-.\"
-.Dd November 11, 2017
-.Dt MAILER.CONF 4
-.Os
-.Sh NAME
-.Nm mailer.conf
-.Nd configuration file for
-.Xr mailwrapper 1M
-.Sh DESCRIPTION
-The file
-.Pa /etc/mailer.conf
-contains a series of lines of the form
-.Pp
-.Ar name
-.Ar program
-.Op Ar arguments ...
-.Pp
-The first word of each line is the
-.Ar name
-of a program invoking
-.Xr mailwrapper 1M .
-(For example, on a typical system
-.Pa /usr/lib/sendmail
-would be a symbolic link to
-.Xr mailwrapper 1M ,
-as would
-.Xr newaliases 1M
-and
-.Xr mailq 1 .
-Thus,
-.Ar name
-might be
-.Dq Li sendmail
-or
-.Dq Li newaliases
-etc.)
-.Pp
-The second word of each line is the name of the
-.Ar program
-to actually execute when the first name is invoked.
-.Pp
-The further
-.Ar arguments ,
-if any, are passed to the
-.Ar program ,
-followed by the arguments
-.Xr mailwrapper 1M
-was called with.
-.Pp
-The file may also contain comment lines, denoted by a
-.Ql #
-mark in the first column of any line.
-.Sh FILES
-/etc/mailer.conf
-.Sh EXAMPLES
-This example shows how to set up
-.Nm
-to invoke the traditional
-.Xr sendmail 1M
-program:
-.Bd -literal -offset indent
-# Execute the "real" sendmail program located in
-# /usr/lib/smtp/sendmail/sendmail
-sendmail /usr/lib/smtp/sendmail/sendmail
-mailq /usr/lib/smtp/sendmail/sendmail
-newaliases /usr/lib/smtp/sendmail/sendmail
-.Ed
-.Sh SEE ALSO
-.Xr mail 1 ,
-.Xr mailq 1 ,
-.Xr mailwrapper 1M ,
-.Xr newaliases 1M ,
-.Xr sendmail 1M
-.Sh AUTHORS
-.An Perry E. Metzger Aq perry@piermont.com
diff --git a/usr/src/man/man4/mech.4 b/usr/src/man/man4/mech.4
deleted file mode 100644
index 2f32308765..0000000000
--- a/usr/src/man/man4/mech.4
+++ /dev/null
@@ -1,155 +0,0 @@
-'\" te
-.\" Copyright 2003 Sun Microsystems, Inc.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH MECH 4 "Sep 6, 2006"
-.SH NAME
-mech, qop \- mechanism and QOP files
-.SH SYNOPSIS
-.LP
-.nf
-\fB/etc/gss/mech\fR
-\fB/etc/gss/qop\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fB/etc/gss/mech\fR and \fB/etc/gss/qop\fR files contain tables showing
-installed security mechanisms and the Quality of Protection (\fBQOP\fR)
-associated with them, respectively. As security mechanisms are installed on the
-system, entries are added to these two files. Contents of these files may be
-accessed either manually or programmatically. For example, manually with
-\fBcat\fR(1) or \fBmore\fR(1), or programmatically with either
-\fBrpc_gss_get_mechanisms\fR(3NSL) or \fBrpc_gss_get_mech_info\fR(3NSL).
-.sp
-.LP
-The order of entries in the \fB/etc/gss/mech\fR file is significant: the order
-should be from the most preferred to the least preferred mechanisms.
-.sp
-.LP
-The \fB/etc/gss/mech\fR file contains five fields:
-.sp
-.ne 2
-.na
-\fB\fImechanism name\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBASCII\fR string representing the mechanism.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIobject identifier\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBRPC\fR \fBOID\fR for this mechanism.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIshared library\fR\fR
-.ad
-.sp .6
-.RS 4n
-Shared library which implements the services provided by this mechanism.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIkernel module\fR\fR
-.ad
-.sp .6
-.RS 4n
-Kernel module which implements the services provided by this mechanism.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIlibrary options\fR (optional field)\fR
-.ad
-.sp .6
-.RS 4n
-Optional parameters that are interpreted by the individual mechanism with which
-they are associated. Specific supported options are described in the
-documentation for the individual mechanism, if any. Not all mechanisms have
-support for optional parameters. \fIlibrary options\fR must be enclosed in
-brackets (\fB[ ]\fR) so they may be differentiated from the optional kernel
-module entries.
-.RE
-
-.sp
-.LP
-The \fB/etc/gss/qop\fR file contains three fields:
-.sp
-.ne 2
-.na
-\fB\fIQOP string\fR\fR
-.ad
-.RS 19n
-Name, in \fBASCII\fR, of this Quality of Protection.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIQOP value\fR\fR
-.ad
-.RS 19n
-Numeric value by which \fBRPC\fR identifies this \fBQOP\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fImechanism name\fR \fR
-.ad
-.RS 19n
-\fBASCII\fR string representing the mechanism with which this \fBQOP\fR is
-associated.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRA Typical Entry in \fB/etc/gss/mech\fR
-.sp
-.LP
-This is a typical entry in a \fB/etc/gss/mech\fR file:
-
-.sp
-.in +2
-.nf
-kerberosv5 1.2.840.113554.1.2.2 mech_krb5.so kmech_krb5
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRA Typical Entry in \fB/etc/gss/qop\fR
-.sp
-.LP
-This is a typical entry in a \fB/etc/gss/qop\fR file:
-
-.sp
-.in +2
-.nf
-GSS_KRB5_CONF_C_QOP_DES 0 kerberosv5
-.fi
-.in -2
-.sp
-
-.SH SEE ALSO
-.sp
-.LP
-\fBrpc\fR(3NSL), \fBrpc_gss_get_mechanisms\fR(3NSL),
-\fBrpc_gss_get_mech_info\fR(3NSL), \fBrpcsec_gss\fR(3NSL)
-.sp
-.LP
-\fIONC+ Developer\&'s Guide\fR
diff --git a/usr/src/man/man4/mnttab.4 b/usr/src/man/man4/mnttab.4
deleted file mode 100644
index e188b308e2..0000000000
--- a/usr/src/man/man4/mnttab.4
+++ /dev/null
@@ -1,241 +0,0 @@
-'\" te
-.\" Copyright (c) 2003 Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 2015 Nexenta Systems, Inc. All rights reserved.
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH MNTTAB 4 "Sep 8, 2015"
-.SH NAME
-mnttab \- mounted file system table
-.SH DESCRIPTION
-.LP
-The file \fB/etc/mnttab\fR is really a file system that provides read-only
-access to the table of mounted file systems for the current host.
-\fB/etc/mnttab\fR is read by programs using the routines described in
-\fBgetmntent\fR(3C). Mounting a file system adds an entry to this table.
-Unmounting removes an entry from this table. Remounting a file system causes
-the information in the mounted file system table to be updated to reflect any
-changes caused by the remount. The list is maintained by the kernel in order of
-mount time. That is, the first mounted file system is first in the list and the
-most recently mounted file system is last. When mounted on a mount point the
-file system appears as a regular file containing the current \fBmnttab\fR
-information.
-.LP
-Each entry is a line of fields separated by TABs in the form:
-.sp
-.in +2
-.nf
-\fIspecial mount_point fstype options time\fR
-.fi
-.in -2
-
-.LP
-where:
-.sp
-.ne 2
-.na
-\fB\fIspecial\fR\fR
-.ad
-.RS 15n
-The name of the resource that has been mounted.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fImount_point\fR\fR
-.ad
-.RS 15n
-The pathname of the directory on which the filesystem is mounted.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIfstype\fR\fR
-.ad
-.RS 15n
-The file system type of the mounted file system.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIoptions\fR\fR
-.ad
-.RS 15n
-The mount options. See respective mount file system man page in the See Also
-section below.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fItime\fR\fR
-.ad
-.RS 15n
-The time at which the file system was mounted.
-.RE
-
-.LP
-Examples of entries for the \fIspecial\fR field include the pathname of a
-block-special device, the name of a remote file system in the form of
-\fIhost:pathname\fR, or the name of a \fBswap file\fR, for example, a file made
-with \fBmkfile\fR(1M).
-.SH IOCTLS
-.LP
-The following \fBioctl\fR(2) calls are supported:
-.sp
-.ne 2
-.na
-\fB\fBMNTIOC_NMNTS\fR\fR
-.ad
-.RS 21n
-Returns the count of mounted resources in the current snapshot in the
-\fBuint32_t\fR pointed to by \fIarg\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBMNTIOC_GETDEVLIST\fR\fR
-.ad
-.RS 21n
-Returns an array of \fBuint32_t\fR's that is twice as long as the length
-returned by \fBMNTIOC_NMNTS\fR. Each pair of numbers is the major and minor
-device number for the file system at the corresponding line in the current
-\fB/etc/mnttab\fR snapshot. \fIarg\fR points to the memory buffer to receive
-the device number information.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBMNTIOC_SETTAG\fR\fR
-.ad
-.RS 21n
-Sets a tag word into the options list for a mounted file system. A tag is a
-notation that will appear in the options string of a mounted file system but it
-is not recognized or interpreted by the file system code. \fIarg\fR points to a
-filled in \fBmnttagdesc\fR structure, as shown in the following example:
-.sp
-.in +2
-.nf
-uint_t mtd_major; /* major number for mounted fs */
-uint_t mtd_minor; /* minor number for mounted fs */
-char *mtd_mntpt; /* mount point of file system */
-char *mtd_tag; /* tag to set/clear */
-.fi
-.in -2
-
-If the tag already exists then it is marked as set but not re-added. Tags can
-be at most \fBMAX_MNTOPT_TAG\fR long.
-.sp
-Use of this ioctl is restricted to processes with the \fB{PRIV_SYS_MOUNT}\fR
-privilege.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBMNTIOC_CLRTAG\fR\fR
-.ad
-.RS 21n
-Marks a tag in the options list for a mounted file system as not set. \fIarg\fR
-points to the same structure as \fBMNTIOC_SETTAG\fR, which identifies the file
-system and tag to be cleared.
-.sp
-Use of this ioctl is restricted to processes with the \fB{PRIV_SYS_MOUNT}\fR
-privilege.
-.RE
-
-.SH ERRORS
-.ne 2
-.na
-\fB\fBEFAULT\fR\fR
-.ad
-.RS 16n
-The arg pointer in an \fBMNTIOC_ ioctl\fR call pointed to an inaccessible
-memory location or a character pointer in a \fBmnttagdesc\fR structure pointed
-to an inaccessible memory location.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEINVAL\fR\fR
-.ad
-.RS 16n
-The tag specified in a \fBMNTIOC_SETTAG\fR call already exists as a file system
-option, or the tag specified in a \fBMNTIOC_CLRTAG\fR call does not exist.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBENAMETOOLONG\fR\fR
-.ad
-.RS 16n
-The tag specified in a \fBMNTIOC_SETTAG\fR call is too long or the tag would
-make the total length of the option string for the mounted file system too
-long.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEPERM\fR\fR
-.ad
-.RS 16n
-The calling process does not have \fB{PRIV_SYS_MOUNT}\fR privilege and either a
-\fBMNTIOC_SETTAG\fR or \fBMNTIOC_CLRTAG\fR call was made.
-.RE
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/etc/mnttab\fR\fR
-.ad
-.RS 28n
-Usual mount point for \fBmnttab\fR file system
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/include/sys/mntio.h\fR\fR
-.ad
-.RS 28n
-Header file that contains \fBIOCTL\fR definitions
-.RE
-
-.SH SEE ALSO
-.LP
-\fBmkfile\fR(1M), \fBmount_hsfs\fR(1M), \fBmount_nfs\fR(1M),
-\fBmount_pcfs\fR(1M), \fBmount_ufs\fR(1M), \fBmount\fR(1M),
-\fBioctl\fR(2), \fBread\fR(2), \fBpoll\fR(2), \fBstat\fR(2),
-\fBgetmntent\fR(3C)
-.SH WARNINGS
-.LP
-The \fBmnttab\fR file system provides the previously undocumented
-\fBdev=\fR\fIxxx\fR option in the option string for each mounted file system.
-This is provided for legacy applications that might have been using the
-\fBdev=information\fR option.
-.LP
-Using \fBdev=\fR\fIoption\fR in applications is strongly discouraged. The
-device number string represents a 32-bit quantity and might not contain correct
-information in 64-bit environments.
-.LP
-Applications requiring device number information for mounted file systems
-should use the \fBgetextmntent\fR(3C) interface, which functions properly in
-either 32- or 64-bit environments.
-.SH NOTES
-.LP
-The snapshot of the \fBmnttab\fR information is taken any time a \fBread\fR(2)
-is performed at offset \fB0\fR (the beginning) of the \fBmnttab\fR file. The
-file modification time returned by \fBstat\fR(2) for the \fBmnttab\fR file is
-the time of the last change to mounted file system information. A \fBpoll\fR(2)
-system call requesting a \fBPOLLRDBAND\fR event can be used to block and wait
-for the system's mounted file system information to be different from the most
-recent snapshot since the \fBmnttab\fR file was opened.
diff --git a/usr/src/man/man4/mpapi.conf.4 b/usr/src/man/man4/mpapi.conf.4
deleted file mode 100644
index 4edf6a9adb..0000000000
--- a/usr/src/man/man4/mpapi.conf.4
+++ /dev/null
@@ -1,98 +0,0 @@
-'\" te
-.\" Copyright (c) 2004-2006 Storage Networking Industry Association. All Rights Reserved.
-.\" Portions Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
-.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH MPAPI.CONF 4 "Sep 16, 2018"
-.SH NAME
-mpapi.conf \- configuration file for libMPAPI
-.SH SYNOPSIS
-.LP
-.nf
-/etc/mpapi.conf
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fB/etc/mpapi.conf\fR file is used to specify the vendor-provided plugin
-library that is installed on the system. This file is used by the
-\fBlibMPAPI\fR(3LIB) common library to load the individual plugin library when
-its interface is called. If changes are made to the file while the library is
-in use, the library should be unloaded and reloaded. Addition and removal of
-the plugin library should be handled through \fBMP_RegisterPlugin\fR(3MPAPI)
-and \fBMP_DeregisterPlugin\fR(3MPAPI).
-.sp
-.LP
-Each plugin library entry is a single line of the form:
-.sp
-.in +2
-.nf
-"id" "library file name"
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-where
-.sp
-.ne 2
-.na
-\fB\fBid\fR\fR
-.ad
-.RS 21n
-The identification of the library. It is the reversed domain name of the vendor
-followed by \fB\&.\fR followed by the vendor specific name of the plugin that
-uniquely identifies the plugin library.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBlibrary file name\fR\fR
-.ad
-.RS 21n
-The absolute path to the shared object library file.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRExample of an \fB/etc/mpapi.conf\fR file
-.sp
-.in +2
-.nf
-# This file contains names and references to MP API plugin libraries
-#
-# Do NOT manually edit this file
-#
-# Format:
-#
-# <library ID> <library file name>
-#
-com.sun.mpapi32 /lib/libmpscsi_vhci.so
-com.sun.mpapi64 /lib/64/libmpscsi_vhci.so
-.fi
-.in -2
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability T{
-Standard: ANSI INCITS 412 Multipath Management API
-T}
-.TE
-
-.SH SEE ALSO
-.LP
-\fBlibMPAPI\fR(3LIB), \fBMP_DeregisterPlugin\fR(3MPAPI),
-\fBMP_RegisterPlugin\fR(3MPAPI), \fBattributes\fR(5)
diff --git a/usr/src/man/man4/nca.if.4 b/usr/src/man/man4/nca.if.4
deleted file mode 100644
index 68fe2de3e7..0000000000
--- a/usr/src/man/man4/nca.if.4
+++ /dev/null
@@ -1,137 +0,0 @@
-'\" te
-.\" Copyright (C) 2003, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH NCA.IF 4 "Feb 18, 2003"
-.SH NAME
-nca.if \- the NCA configuration file that specifies physical interfaces
-.SH SYNOPSIS
-.LP
-.nf
-\fB/etc/nca/nca.if\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-Specify the physical interfaces for which the Solaris Network Cache and
-Accelerator ("\fBNCA\fR") feature will be configured in the \fBnca.if\fR
-configuration file. List the physical interfaces in the file, one per line. To
-configure \fBNCA\fR to listen on all physical interfaces present on the system
-backed by a \fBhostname.{interface_name}\fR, then list only an asterik
-("\fB*\fR") in \fBnca.if\fR.
-.sp
-.LP
-When the \fBncakmod\fR(1) initialization script is invoked during system boot,
-it will attempt to configure each physical interface specified in the
-\fBnca.if\fR file by using \fBncaconfd\fR(1M). Note that there must be an
-accompanying \fBhostname.{interface_name}\fR file and an entry in
-\fB/etc/hosts\fR for the contents of \fBhostname.{interface_name}\fR.
-.sp
-.LP
-You must reboot in order to implement changes to the \fBnca.if\fR file.
-.SH EXAMPLES
-.SS "x86"
-.LP
-\fBExample 1 \fR\fBnca.if\fR on x86
-.sp
-.LP
-The following is an example of an \fBnca.if\fR file that would be used on an
-x86 system:
-
-.sp
-.in +2
-.nf
-iprb1
-iprb6
-iprb8
-.fi
-.in -2
-
-.SS "SPARC"
-.LP
-\fBExample 2 \fR\fBnca.if\fR on SPARC
-.sp
-.LP
-The following is an example of an \fBnca.if\fR file that would be used on a
-SPARC system:
-
-.sp
-.in +2
-.nf
-hme2
-hme3
-hme4
-.fi
-.in -2
-
-.SS "All Platforms"
-.LP
-\fBExample 3 \fRConfiguring NCA to Listen on All Physical Interfaces
-.sp
-.LP
-The following example shows the contents of an \fBnca.if\fR file that would be
-used to configure either platform to listen on all physical interfaces present
-on the system:
-
-.sp
-.in +2
-.nf
-*
-.fi
-.in -2
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/nca/nca.if\fR\fR
-.ad
-.RS 25n
-Lists the physical interfaces on which \fBNCA\fR will run.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/hostname.{}{0-9}\fR\fR
-.ad
-.RS 25n
-Lists all physical interfaces configured on the server.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/hosts\fR\fR
-.ad
-.RS 25n
-Lists all host names associated with the server. Entries in this file must
-match with entries in \fB/etc/hostname.{}{0-9}\fR for \fBNCA\fR to function.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBnca\fR(1), \fBncab2clf\fR(1), \fBncakmod\fR(1), \fBifconfig\fR(1M),
-\fBncakmod.conf\fR(4), \fBncalogd.conf\fR(4), \fBattributes\fR(5)
-.sp
-.LP
-\fISystem Administration Guide: IP Services\fR
diff --git a/usr/src/man/man4/ncad_addr.4 b/usr/src/man/man4/ncad_addr.4
deleted file mode 100644
index 198a6e87ff..0000000000
--- a/usr/src/man/man4/ncad_addr.4
+++ /dev/null
@@ -1,75 +0,0 @@
-'\" te
-.\" Copyright (C) 2003, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH NCAD_ADDR 4 "April 9, 2016"
-.SH NAME
-ncad_addr \- name of the Solaris Network Cache and Accelerator (NCA) socket
-utility library
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/ncad_addr.so\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-\fBncad_addr.so\fR is the Solaris Network Cache and Accelerator (\fBNCA\fR)
-socket utility library. Use this library with a web server to avoid support for
-the \fBPF_NCA\fR family type socket. The web server can take advantage of NCA
-functionality.
-.sp
-.LP
-Interpose the \fBncad_addr\fR interfaces before the interfaces in
-\fBlibsocket\fR by setting the environment variable \fBLD_PRELOAD\fR to
-\fBncad_addr.so\fR so that it is preloaded before \fBlibsocket.so.1\fR. The
-\fBncad_addr.so\fR interfaces will be interposed only if NCA is enabled. See
-\fBncakmod\fR(1).
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRInterposing \fBncad_addr\fR
-.sp
-.LP
-Using Bourne shell syntax as an example, set \fBLD_PRELOAD\fR as shown below to
-interpose the \fBncad_addr\fR socket utility library:
-
-.sp
-.in +2
-.nf
-LD_PRELOAD=/usr/lib/ncad_addr.so /usr/bin/httpd
-.fi
-.in -2
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/usr/lib/ncad_addr.so\fR\fR
-.ad
-.RS 25n
-\fBncad_addr\fR socket utility library shared object
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Unstable
-.TE
-
-.SH SEE ALSO
-.LP
-\fBnca\fR(1), \fBncab2clf\fR(1), \fBncakmod\fR(1), \fBsocket\fR(3SOCKET),
-\fBnca.if\fR(4), \fBncakmod.conf\fR(4), \fBattributes\fR(5)
-.SH NOTES
-.LP
-Only applications that use the \fBNCA\fR feature, for example, web servers,
-should interpose this library.
diff --git a/usr/src/man/man4/ncakmod.conf.4 b/usr/src/man/man4/ncakmod.conf.4
deleted file mode 100644
index ed9f72fbb0..0000000000
--- a/usr/src/man/man4/ncakmod.conf.4
+++ /dev/null
@@ -1,104 +0,0 @@
-'\" te
-.\" Copyright (C) 2001, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH NCAKMOD.CONF 4 "Sep 28, 2001"
-.SH NAME
-ncakmod.conf \- ncakmod configuration file
-.SH SYNOPSIS
-.LP
-.nf
-\fB/etc/nca/ncakmod.conf\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBncakmod.conf\fR file is used to configure the Solaris Network Cache and
-Accelerator ("\fBNCA\fR") kernel module. The file contains two fields,
-\fBkey\fR and \fBvalue\fR.
-.sp
-.LP
-The \fBstatus\fR key is used to indicate if the user wants to have \fBNCA\fR
-turned on as a feature. If the value of \fBstatus\fR key is \fBenabled\fR,
-then the \fBNCA\fR kernel module will be pushed on to the specified interfaces.
-If the value of the \fBstatus\fR key is \fBdisabled\fR, then the \fBNCA\fR
-kernel module will not be pushed on to any interfaces . The default is
-\fBdisabled\fR.
-.sp
-.LP
-The \fBhttpd_door_path\fR key specifies the path name of the Solaris Door
-\fBRPC\fR mechanism that will be used to communicate with the \fBhttp\fR
-daemon. The default value is \fB/var/run/nca_httpd_1.door\fR.
-.sp
-.LP
-Use the \fBnca_active\fR key to indicate whether to allow NCA to actively open
-outgoing TCP connections. The default value for \fBnca_active\fR is
-\fBdisabled\fR. If set to \fBenabled\fR, \fBncaconfd\fR sets up NCA for each
-interface and then operates as a daemon, allowing NCA to make outgoing TCP
-connections. This functionality is possible only by using the doors interface
-to NCA. A web server that uses the sockets interface with \fBPF_NCA\fR or
-\fBncad_addr.so\fR cannot connect by means of \fBnca_active\fR.
-.sp
-.LP
-NCA supports the logging of in-kernel cache hits. See \fBncalogd.conf\fR(4).
-NCA stores logs in a binary format. Use the \fBncab2clf\fR(1) utility to
-convert the log from a binary format to the Common Log File format.
-.sp
-.LP
-In order to implement changes to the \fBncakmod.conf\fR file, you will need to
-reboot.
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRA Sample \fBncakmod.conf\fR File
-.sp
-.LP
-The following is a sample \fBncakmod.conf\fR file:
-
-.sp
-.in +2
-.nf
-#
-# NCA Kernel Module Configuration File
-#
-status=disabled
-httpd_door_path=/var/run/nca_httpd_1.door
-nca_active=disabled
-.fi
-.in -2
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/nca/ncakmod.conf\fR\fR
-.ad
-.RS 25n
-The NCA kernel module configuration file.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBnca\fR(1), \fBncab2clf\fR(1), \fBncakmod\fR(1), \fBdoor_create\fR(3C),
-\fBnca.if\fR(4), \fBncad_addr\fR(4), \fBncalogd.conf\fR(4), \fBattributes\fR(5)
-.sp
-.LP
-\fISystem Administration Guide: IP Services\fR
diff --git a/usr/src/man/man4/ncalogd.conf.4 b/usr/src/man/man4/ncalogd.conf.4
deleted file mode 100644
index 0d3a06a69f..0000000000
--- a/usr/src/man/man4/ncalogd.conf.4
+++ /dev/null
@@ -1,113 +0,0 @@
-'\" te
-.\" Copyright (C) 2002, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH NCALOGD.CONF 4 "Jan 22, 2002"
-.SH NAME
-ncalogd.conf \- NCA logging configuration file
-.SH SYNOPSIS
-.LP
-.nf
-\fB/etc/nca/ncalogd.conf\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBncalogd.conf\fR is used to configure Solaris Network Cache and
-Accelerator ("\fBNCA\fR") logging. The file contains two fields, \fBkey\fR and
-\fBvalue\fR.
-.sp
-.LP
-The \fBstatus\fR key is used to indicate if the user wants to have \fBNCA\fR
-logging turned on. If the value of \fBstatus\fR key is \fBenabled\fR, then
-\fBNCA\fR logging will be turned on. If the value of the \fBstatus\fR key is
-\fBdisabled\fR, then \fBNCA\fR logging will not be invoked. The default value
-is \fBdisabled\fR.
-.sp
-.LP
-The \fBlogd_path_name\fR key specifies the absolute pathname of the log file.
-The log file must be a raw device without a filesystem or a file on a local
-file system. The default value is \fB/var/nca/log\fR. \fBlogd_path_name\fR can
-also contain a whitespace-delimited list of values for multiple log files to a
-maximum of 16. If you specify multiple log files, you must enclose the list in
-quotation marks ("). With multiple files, \fBNCA\fR logging moves to the next
-file on the list once the file size specified by \fBlogd_file_size\fR has been
-reached. When the last file is full, \fBNCA\fR logging rotates back to the
-first file in the list. A pointer to the current log file is stored in
-\fB/var/nca/current\fR.
-.sp
-.LP
-The \fBlogd_file_size\fR key specifies the value of the file size, in bytes,
-allowed for each log file specified in by the \fBlogd_path_name\fR key. The
-default value is 1000000 bytes.
-.sp
-.LP
-In order to implement changes to the \fBncalogd.conf\fR file, you will need to
-stop and start NCA logging or reboot.
-.sp
-.LP
-NCA stores logs in a binary format. Use the \fBncab2clf\fR(1) utility to
-convert the log from a binary format to the Common Log File format.
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRA Sample \fBncalogd.conf\fR File
-.sp
-.LP
-The following is a sample \fBncalogd.conf\fR file that specifies three log
-files:
-
-.sp
-.in +2
-.nf
-#
-# NCA Log Daemon Configuration File
-#
-
-status=enabled
-logd_path_name="/var/nca/log1 /var/nca/log2 /var/nca/log3"
-logd_file_size=1000000
-.fi
-.in -2
-
-.sp
-.LP
-Note that there is no NCA logging daemon. Logging is performed as one of the
-functions of the NCA software.
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/nca/ncalogd.conf\fR\fR
-.ad
-.RS 25n
-Lists configuration parameters for \fBNCA\fRlogging.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBnca\fR(1), \fBncab2clf\fR(1), \fBncakmod\fR(1), \fBdd\fR(1M),
-\fBdoor_create\fR(3C), \fBnca.if\fR(4), \fBncakmod.conf\fR(4),
-\fBattributes\fR(5)
-.sp
-.LP
-\fISystem Administration Guide: IP Services\fR
diff --git a/usr/src/man/man4/ncaport.conf.4 b/usr/src/man/man4/ncaport.conf.4
deleted file mode 100644
index 1c85142dd9..0000000000
--- a/usr/src/man/man4/ncaport.conf.4
+++ /dev/null
@@ -1,66 +0,0 @@
-'\" te
-.\" Copyright (c) 2001, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH NCAPORT.CONF 4 "Jul 30, 2001"
-.SH NAME
-ncaport.conf \- ncaport configuration file
-.SH SYNOPSIS
-.LP
-.nf
-\fB/etc/nca/ncaport.conf\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBncaport.conf\fR file is used to configure the IP addresses and ports
-that the Solaris Network Cache and Acceleration (NCA) kernel module services.
-The file contains two fields, key and value, in the format of
-\fBncaport=\fIipaddress\fR/\fIport\fR\fR. IPv4 addresses must be in the dot
-notation \fId\fR.\fId\fR.\fId\fR.\fId\fR. IPv6 addresses must be in one of the
-three conventional forms (see \fBinet_pton\fR(3C)). If an asterisk
-(\fB*\fR) is used for an IP address, it is interpreted as \fBINADDR_ANY\fR,
-which matches any IP address.
-.sp
-.LP
-A web server uses the environment variable \fBLD_PRELOAD\fR and the
-\fBncaport.conf\fR configuration file to convert an \fBAF_INET\fR socket to an
-\fBAF_NCA\fR socket. \fBLD_PRELOAD\fR enables the NCA socket utility library to
-be loaded before \fBlibsocket.so.1\fR. See the \fBncad_addr\fR(4) for details.
-When a web server issues the \fBbind\fR(3SOCKET) system call, it is intercepted
-by the interposition library \fBncad_addr.so\fR. If the bind address is in the
-\fBncaport.conf\fR file, the \fBAF_INET\fR socket is converted to a
-\fBAF_NCA\fR socket.
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRSample \fBncaport.conf\fR File
-.sp
-.LP
-The following is a sample \fBncaport.conf\fR file:
-
-.sp
-.in +2
-.nf
-#
-# NCA Kernel Module Port Configuration File
-#
-ncaport=1080:0:0:0:8:800:200C:417A/100
-ncaport=192.168.84.71/80
-ncaport=*/9000
-.fi
-.in -2
-.sp
-
-.SH SEE ALSO
-.LP
-\fBnca\fR(1), \fBbind\fR(3SOCKET), \fBinet_pton\fR(3C),
-\fBncad_addr\fR(4), \fBattributes\fR(5)
-.SH NOTES
-.LP
-For those web servers that use \fBAF_NCA\fR sockets, the NCA port configuration
-described here has no effect.
-.sp
-.LP
-NCA does not currently support IPv6. Any IPv6 addresses in the file
-\fBncaport.conf\fR are ignored.
diff --git a/usr/src/man/man4/ndmp.4 b/usr/src/man/man4/ndmp.4
deleted file mode 100644
index 16ef84eadf..0000000000
--- a/usr/src/man/man4/ndmp.4
+++ /dev/null
@@ -1,174 +0,0 @@
-'\" te
-.\" Copyright (C) 2009, Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 2014 Nexenta Systems, Inc. All rights reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH NDMP 4 "Feb 24, 2014"
-.SH NAME
-ndmp \- configuration properties for Solaris Network Data Management Protocol
-(NDMP) server
-.SH DESCRIPTION
-.sp
-.LP
-The behavior of the Solaris NDMP server is specified by property values that
-are stored in the Service Management Facility, \fBsmf\fR(5).
-.sp
-.LP
-An authorized user can use the \fBndmpadm\fR(1M) command to set global values
-for these properties in SMF.
-.sp
-.LP
-You can set the following properties by using the \fBndmpadm set\fR command:
-.sp
-.ne 2
-.na
-\fB\fBbackup-quarantine\fR\fR
-.ad
-.RS 24n
-Backup the files marked as quarantined by AV. Acceptable values are \fByes\fR
-or \fBno\fR. The default is \fBno\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdar-support\fR\fR
-.ad
-.RS 24n
-Set the Direct Access Recovery mode. Acceptable values are \fByes\fR or
-\fBno\fR. The default is \fBno\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdebug-path\fR\fR
-.ad
-.RS 24n
-The path to which to save the debug log. The default is \fB/var/log/ndmp\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdebug-mode\fR\fR
-.ad
-.RS 24n
-Enable or disable debug log messages.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdump-pathnode\fR\fR
-.ad
-.RS 24n
-Enable or disable backing up the directories containing modified files or
-directories in \fBdump\fR(1) backup format. Acceptable values are yes or no.
-The default is no.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBignore-ctime\fR\fR
-.ad
-.RS 24n
-Determines whether the change timestamp (\fBctime\fR) of files and directories
-is used to determine whether a file should be backed up in level backup. If
-this parameter is set to \fByes\fR, only the modification time (\fBmtime\fR) of
-the file or directory determines whether it should be backed up. Acceptable
-values are \fByes\fR or \fBno\fR. The default value is \fBno\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBoverwrite-quarantine\fR\fR
-.ad
-.RS 24n
-Restore quarantined files on top of current files if they already exist.
-Acceptable values are \fByes\fR or \fBno\fR. The default value is \fBno\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrestore-quarantine\fR\fR
-.ad
-.RS 24n
-Restore the files that had been marked as quarantined by AV and are backed up.
-Acceptable values are yes or no. The default value is no.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBtar-pathnode\fR\fR
-.ad
-.RS 24n
-Enable or disable backing up the directories containing modified files or
-directories in \fBtar\fR(1) backup format. Acceptable values are \fByes\fR or
-\fBno\fR. The default value is \fBno\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBtoken-maxseq\fR\fR
-.ad
-.RS 24n
-Set the maximum sequence number for subsequent token-based incremental backup
-in NDMP-V4. The default value is \fB9\fR. There are two limits for this value:
-soft-limit, which is \fB59\fR, and hard-limit, equal to \fB64\fR. If the token
-sequence number, passed by the DMA, is between the soft and hard limits, a
-warning message is issued to the DMA. The token sequence number can never
-exceed the hard-limit value.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBversion\fR\fR
-.ad
-.RS 24n
-Set the maximum active NDMP protocol version. Valid values are currently
-\fB2\fR, \fB3\fR, and \fB4\fR. The default is \fB4\fR.
-.RE
-
-.sp
-.LP
-The following property can only be set when using the \fBndmpadm enable\fR or
-\fBndmpadm disable\fR command:
-.sp
-.ne 2
-.na
-\fB\fBauth-type\fR\fR
-.ad
-.RS 13n
-Sets the password encryption type for the authentication of local users. Valid
-values are \fBcram-md5\fR or \fBcleartext\fR.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Committed
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBdump\fR(1), \fBtar\fR(1), \fBndmpadm\fR(1M), \fBndmpd\fR(1M),
-\fBattributes\fR(5), \fBsmf\fR(5)
diff --git a/usr/src/man/man4/ndpd.conf.4 b/usr/src/man/man4/ndpd.conf.4
deleted file mode 100644
index f3ec1a3e1f..0000000000
--- a/usr/src/man/man4/ndpd.conf.4
+++ /dev/null
@@ -1,552 +0,0 @@
-'\" te
-.\" Copyright (C) 2004, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH NDPD.CONF 4 "Jan 4, 2007"
-.SH NAME
-ndpd.conf \- configuration file for IPv6 router autoconfiguration
-.SH SYNOPSIS
-.LP
-.nf
-\fB/etc/inet/ndpd.conf\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBndpd.conf\fR file contains configuration information for
-\fBin.ndpd\fR(1M). On a host, this file does not need to exist or can be empty.
-The file has one configuration entry per line; note that lines can be extended
-with a backslash (\fB\e\fR) followed by a NEWLINE. There are four forms of
-configuration entries which are identified by the first field on the line:
-\fBifdefault\fR, \fBprefixdefault\fR, \fBif\fR, or \fBprefix\fR. The
-\fBifdefault\fR and \fBif\fR entries set interface configuration variables. The
-former establishes the routing behavior for all interfaces, the latter sets
-per-interface parameters. Any \fBifdefault\fR entries must precede any \fBif\fR
-entries in the file.
-.sp
-.LP
-The \fBprefixdefault\fR and \fBprefix\fR entries control prefix configuration
-variables. \fBprefixdefault\fR establishes the default behavior for all prefix
-advertisements on all interfaces. The \fBprefix\fR keyword advertises
-per-prefix information. Any \fBprefixdefault\fR entries must precede any
-\fBprefix\fR entries in the file.
-.sp
-.LP
-Each \fBifdefault\fR entry is composed of a single line of the form:
-.sp
-.in +2
-.nf
-ifdefault [ \fIif-variable-name\fR \fIvalue\fR ]*
-.fi
-.in -2
-
-.sp
-.LP
-Each \fBif\fR entry is composed of a single line of the form:
-.sp
-.in +2
-.nf
-if \fIinterface\fR [ \fIif-variable-name\fR \fIvalue\fR ]*
-.fi
-.in -2
-
-.sp
-.LP
-Each \fBprefixdefault\fR entry is composed of a single line of the form:
-.sp
-.in +2
-.nf
-prefixdefault [ \fIprefix-variable-name\fR \fIvalue\fR ]*
-.fi
-.in -2
-
-.sp
-.LP
-Each prefix\fB\fR entry is composed of a single line of the form:
-.sp
-.in +2
-.nf
-prefix \fIprefix\fR/\fIprefix_length\fR \fIinterface\fR [ \fIprefix-variable-name\fR \fIvalue\fR ]*
-.fi
-.in -2
-
-.sp
-.LP
-Fields are separated by either SPACE or TAB characters. A `\fB#\fR' (number
-sign) indicates the beginning of a comment. Characters up to the end of the
-line are not interpreted by routines that search this file.
-.sp
-.ne 2
-.na
-\fB\fB\fIinterface\fR\fR\fR
-.ad
-.RS 24n
-The name of a network interface, for example, \fBeri0\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\fIprefix\fR\fR\fR
-.ad
-.RS 24n
-An IPv6 address in standard hexadecimal notation, for example,
-\fBfec0:0:0:1::0\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\fIprefix_length\fR\fR\fR
-.ad
-.RS 24n
-A number between 0 and 128.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\fIif-variable-name\fR\fR\fR
-.ad
-.RS 24n
-An interface variable. Below is the list of interface variables applicable to
-routers only along with their default values and units as discussed in \fIRFC
-2461\fR and \fIRFC 2462\fR. The \fBTmp\fR* variables apply to hosts and
-routers. The \fBTmp\fR* variables configure temporary address functionality as
-defined in \fIRFC 3041\fR.
-.sp
-.in +2
-.nf
-Variable Name Default Unit
-
-AdvSendAdvertisements false Boolean
-DupAddrDetectTransmits 1 Counter
-MaxRtrAdvInterval 600 Seconds
-MinRtrAdvInterval 200 Seconds
-AdvManagedFlag false Boolean
-AdvOtherConfigFlag false Boolean
-AdvLinkMTU 0 Bytes
-AdvReachableTime 0 Milliseconds
-AdvRetransTimer 0 Milliseconds
-AdvCurHopLimit see below Counter
-AdvDefaultLifetime 1800 Seconds
-.fi
-.in -2
-.sp
-
-These variables are described as follows:
-.sp
-.ne 2
-.na
-\fB\fBAdvSendAdvertisements\fR\fR
-.ad
-.RS 26n
-Indicates whether the node should send out advertisements and respond to router
-solicitations. You need to explicitly configure this value to turn on router
-advertisement functions.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBDupAddrDetectTransmits\fR\fR
-.ad
-.RS 26n
-Defines the number of consecutive Neighbor Solicitation messages that the
-Neighbor Discovery protocol should send during Duplicate Address Detection of
-the local node's address.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBMaxRtrAdvInterval\fR\fR
-.ad
-.RS 26n
-Specifies the maximum time to wait between sending unsolicited multicast
-advertisements.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBMinRtrAdvInterval\fR\fR
-.ad
-.RS 26n
-Specifies the minimum amount of time to wait between sending unsolicited
-multicast advertisements.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBAdvManagedFlag\fR\fR
-.ad
-.RS 26n
-Indicates the value to be placed in the "Manage address configuration" flag in
-the Router Advertisement. This flag causes hosts to run DHCPv6 to acquire
-addresses and other configuration information. This flag causes hosts to run
-DHCPv6 to acquire configuration information, but only if \fBAdvManagedFlag\fR
-is not set.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBAdvOtherConfigFlag\fR\fR
-.ad
-.RS 26n
-Indicates the value to be placed in the "Other stateful configuration"flag in
-the Router Advertisement.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBAdvLinkMTU\fR\fR
-.ad
-.RS 26n
-Specifies an MTU value to be sent by the router. The default of zero indicates
-that the router does not specify MTU options.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBAdvReachableTime\fR\fR
-.ad
-.RS 26n
-Specifies the value in the Reachable Time field in the advertisement messages
-sent by the router.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBAdvRetransTimer\fR\fR
-.ad
-.RS 26n
-Specifies the value in the Retrans Timer field in the advertisement messages
-sent by the router.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBAdvCurHopLimit\fR\fR
-.ad
-.RS 26n
-Specifies the value to be placed in the current hop limit field in the
-advertisement messages sent by the router. The default is the current diameter
-of the Internet.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBAdvDefaultLifetime\fR\fR
-.ad
-.RS 26n
-Specifies the default lifetime of the router advertisements.
-.RE
-
-Listed below is the interface variable that applies to both hosts and routers.
-.sp
-.in +2
-.nf
-Variable Name Default Unit
-
-StatefulAddrConf true Boolean
-StatelessAddrConf true Boolean
-TmpAddrsEnabled false Boolean
-TmpValidLifetime 604800 Seconds
- (1 week)
-TmpPreferredLifetime 86400 Seconds
- (1 day)
-TmpRegenAdvance 5 Seconds
-TmpMaxDesyncFactor 600 Seconds
-.fi
-.in -2
-.sp
-
-.sp
-.ne 2
-.na
-\fB\fBStatefulAddrConf\fR\fR
-.ad
-.RS 24n
-Controls whether the system configures its IPv6 addresses by means of the
-Stateful Address Autoconfiguration mechanism, also known as DHCPv6, as
-described in RFC 3315. If enabled (the default), hosts automatically run DHCPv6
-based on the "managed" and "other" flags sent by routers. If disabled,
-\fBin.ndpd\fR will not invoke DHCPv6 automatically. DHCPv6 can still be invoked
-manually by using \fBifconfig\fR(1M), in which case \fBin.ndpd\fR automatically
-sets the prefix length as needed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBStatelessAddrConf\fR\fR
-.ad
-.RS 24n
-Controls whether the system configures its IPv6 addresses by means of the
-Stateless Address Autoconfiguration mechanism described in \fIRFC 2462\fR. If
-enabled hosts (the default) autoconfigure addresses based on prefixes
-advertised by routers, routers will only autoconfigure addresses based on the
-prefixes they advertise themselves. In other words, even when enabled, routers
-do not autoconfigure addresses based on prefixes that other routers advertise.
-If you specify \fBfalse\fR for this variable, then the address must be
-configured manually.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBTmpAddrsEnabled\fR\fR
-.ad
-.RS 24n
-Indicates whether a temporary address should be created for all interfaces or
-for a particular interface of a node.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBTmpValidLifetime\fR\fR
-.ad
-.RS 24n
-Sets the valid lifetime for a temporary address.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBTmpPreferredLifetime\fR\fR
-.ad
-.RS 24n
-Sets the preferred lifetime of a temporary address.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBTmpRegenAdvance\fR\fR
-.ad
-.RS 24n
-Specifies the lead time in advance of address deprecation for generation of a
-new temporary address.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBTmpMaxDesyncFactor\fR\fR
-.ad
-.RS 24n
-Sets the upper bound on the DesyncFactor, which is a random value that is used
-to shorten the preferred lifetime so that clients do not regenerate an address
-at the same time.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIprefix-variable-name\fR\fR
-.ad
-.RS 24n
-A prefix variable as discussed in \fIRFC 2461 \fR and \fIRFC 2462\fR. The
-following lists the each interface variable and its default value and unit:
-.sp
-
-.sp
-.TS
-box;
-c | c | c
-l | l | l .
-Variable Name Default Unit
-_
-AdvValidLifetime 2592000 Seconds
-_
-AdvOnLinkFlag true Boolean
-_
-AdvPreferredLifetime 604800 Seconds
-_
-AdvAutonomousFlag true Boolean
-_
-AdvValidExpiration not set Date/Time
-_
-AdvPreferredExpiration not set Date/TIme
-.TE
-
-These variables are described as follows:
-.sp
-.ne 2
-.na
-\fB\fBAdvValidLifetime\fR\fR
-.ad
-.RS 26n
-Specifies the valid lifetime of the prefix that is being configured.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBAdvOnLinkFlag\fR\fR
-.ad
-.RS 26n
-Specifies the value to be placed in the on-link flag ("L-bit") field in the
-Prefix Information option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBAdvPreferredLifetime\fR\fR
-.ad
-.RS 26n
-Specifies the value to be placed in the Preferred Lifetime in the Prefix
-Information option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBAdvAutonomousFlag\fR\fR
-.ad
-.RS 26n
-Specifies the value to be placed in the Autonomous Flag field in the Prefix
-Information option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBAdvValidExpiration\fR\fR
-.ad
-.RS 26n
-Specifies the valid expiration date of the prefix.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBAdvPreferredExpiration\fR\fR
-.ad
-.RS 26n
-Specifies the preferred expiration date of the prefix.
-.RE
-
-The \fBAdvValidExpiration\fR and \fBAdvPreferredExpiration\fR variables are
-used to specify that the lifetime should be decremented in real time as
-specified in \fIRFC 2461\fR. If an \fBExpiration\fR variable is set, it takes
-precedence over the corresponding \fBAdvValidLifetime\fR or
-\fBAdvPreferredLifetime\fR variable setting.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIvalue\fR\fR
-.ad
-.RS 24n
-The value is a function of the unit. Boolean values are \fBtrue\fR,
-\fBfalse\fR, \fBon\fR, \fBoff\fR, \fB1\fR, or \fB0\fR.
-.sp
-Values in seconds can have characters appended for day (\fBd\fR), hour
-\fBh\fR), minute (\fBm\fR) and second (\fBs\fR). The default is seconds. For
-example, \fB1h\fR means 1 hour. This is equivalent to the value \fB3600\fR.
-.sp
-Values in milliseconds can have characters appended for day (\fBd\fR),hour
-(\fBh\fR), minute (\fBm\fR) second (\fBs\fR), and millisecond (\fBms\fR). The
-default is milliseconds. For example, \fB1h\fR is equivalent to the value
-\fB3600000\fR.
-.sp
-Date/time values are strings that use the recommended ISO date format described
-as "\fB%Y-%m-%d %R\fR", which represents a 4 digit year, a dash character, a
-numeric month, a dash character, and a numeric day of the month, followed by
-one or more whitespace characters and finally a 24 hour clock with hours, a
-colon, and minutes. For example, \fB1999-01-31 20:00\fR means 8pm January 31 in
-1999. Since the date/time values contain a space, use single or double quotes
-to declare the value. For example:
-.sp
-.in +2
-.nf
-prefixdefault AdvPreferredExpiration '1999-01-31 20:00'
-.fi
-.in -2
-
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRSending Router Advertisements for all Interfaces
-.sp
-.LP
-The following example can be used to send router advertisements out to all
-interfaces:
-
-.sp
-.in +2
-.nf
-# Send router advertisements out all interfaces
-ifdefault AdvSendAdvertisements on
-prefixdefault AdvOnLinkFlag on AdvAutonomousFlag on
-
-# Advertise a (bogus) global prefix and a site
-# local prefix on three interfaces using the default lifetimes
-prefix 2:0:0:9255::0/64 eri0
-prefix fec0:0:0:9255::0/64 eri0
-
-prefix 2:0:0:9256::0/64 eri1
-prefix fec0:0:0:9256::0/64 eri1
-
-prefix 2:0:0:9259::0/64 eri2
-prefix fec0:0:0:9259::0/64 eri2
-.fi
-.in -2
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Committed
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBdhcpagent\fR(1M), \fBifconfig\fR(1M), \fBin.ndpd\fR(1M), \fBrouteadm\fR(1M),
-\fBattributes\fR(5), \fBicmp6\fR(7P), \fBip6\fR(7P)
-.sp
-.LP
-Narten, T., Nordmark, E., and Simpson, W. \fIRFC 2461, Neighbor Discovery for
-IP Version 6 (IPv6)\fR. The Internet Society. December 1998.
-.sp
-.LP
-Thomson, S., and Narten, T. \fIRFC 2462, IPv6 Stateless Address
-Autoconfiguration\fR. The Internet Society. December 1998.
-.sp
-.LP
-Narten, T., and Draves, R. \fIRFC 3041, Privacy Extensions for Stateless
-Address Autoconfiguration in IPv6\fR. The Internet Society. January 2001.
-.sp
-.LP
-Droms, R. \fIRFC 3315, Dynamic Host Configuration Protocol for IPv6
-(DHCPv6)\fR. Cisco Systems. July 2003.
-.sp
-.LP
-\fISystem Administration Guide: IP Services\fR
diff --git a/usr/src/man/man4/netconfig.4 b/usr/src/man/man4/netconfig.4
deleted file mode 100644
index 074ab8627b..0000000000
--- a/usr/src/man/man4/netconfig.4
+++ /dev/null
@@ -1,584 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T
-.\" Copyright (C) 1999, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH NETCONFIG 4 "Nov 18, 2003"
-.SH NAME
-netconfig \- network configuration database
-.SH SYNOPSIS
-.LP
-.nf
-\fB/etc/netconfig\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The network configuration database, \fB/etc/netconfig\fR, is a system file used
-to store information about networks that are connected to the system. The
-\fBnetconfig\fR database and the routines that access it (see
-\fBgetnetconfig\fR(3NSL)) are part of the Network Selection component. The
-Network Selection component also includes \fBgetnetpath\fR(3NSL) routines to
-provide application-specific network search paths. These routines access the
-\fBnetconfig\fR database based on the environment variable \fBNETPATH\fR. See
-\fBenviron\fR(5).
-.sp
-.LP
-\fBnetconfig\fR contains an entry for each network available on the system.
-Entries are separated by newlines. Fields are separated by whitespace and occur
-in the order in which they are described below. Whitespace can be embedded as
-``\fB\e\fR\fIblank\fR'' or ``\fB\e\fR\fItab\fR''. Backslashes may be embedded
-as ``\fB\e\e\fR\&''. Lines in \fB/etc/netconfig\fR that begin with a \fB#\fR
-(hash) in column 1 are treated as comments.
-.sp
-.LP
-Each of the valid lines in the \fBnetconfig\fR database correspond to an
-available transport. Each entry is of the form:
-.sp
-.in +2
-.nf
-network ID semantics flag protocol-family \e
- protocol-name network-device translation-libraries
-.fi
-.in -2
-
-.sp
-.ne 2
-.na
-\fB\fInetwork ID\fR\fR
-.ad
-.RS 25n
-A string used to uniquely identify a network. \fInetwork ID\fR consists of
-non-null characters, and has a length of at least 1. No maximum length is
-specified. This namespace is locally significant and the local system
-administrator is the naming authority. All \fInetwork ID\fRs on a system must
-be unique.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIsemantics\fR\fR
-.ad
-.RS 25n
-The \fIsemantics\fR field is a string identifying the ``semantics'' of the
-network, that is, the set of services it supports, by identifying the service
-interface it provides. The \fIsemantics\fR field is mandatory. The following
-semantics are recognized.
-.sp
-.ne 2
-.na
-\fB\fBtpi_clts\fR\fR
-.ad
-.RS 16n
-Transport Provider Interface, connectionless
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBtpi_cots\fR\fR
-.ad
-.RS 16n
-Transport Provider Interface, connection oriented
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBtpi_cots_ord\fR\fR
-.ad
-.RS 16n
-Transport Provider Interface, connection oriented, supports orderly release.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIflag\fR\fR
-.ad
-.RS 25n
-The \fIflag\fR field records certain two-valued (``true'' and ``false'')
-attributes of networks. \fIflag\fR is a string composed of a combination of
-characters, each of which indicates the value of the corresponding attribute.
-If the character is present, the attribute is ``true.'' If the character is
-absent, the attribute is ``false.'' ``\fB-\fR'' indicates that none of the
-attributes are present. Only one character is currently recognized:
-.sp
-.ne 2
-.na
-\fB\fBv\fR\fR
-.ad
-.RS 5n
-Visible (``default'') network. Used when the environment variable \fBNETPATH\fR
-is unset.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIprotocol family\fR\fR
-.ad
-.RS 25n
-The \fIprotocol family\fR and \fIprotocol name\fR fields are provided for
-protocol-specific applications. The \fIprotocol family\fR field contains a
-string that identifies a protocol family. The \fIprotocol family\fR identifier
-follows the same rules as those for \fInetwork ID\fRs; the string consists of
-non-null characters, it has a length of at least \fB1\fR, and there is no
-maximum length specified. A ``\fB\(mi\fR\&'' in the \fIprotocol family\fR field
-indicates that no protocol family identifier applies (the network is
-experimental). The following are examples:
-.sp
-.ne 2
-.na
-\fB\fBloopback\fR\fR
-.ad
-.RS 13n
-Loopback (local to host).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBinet\fR\fR
-.ad
-.RS 13n
-Internetwork: UDP, TCP, and the like.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBinet6\fR\fR
-.ad
-.RS 13n
-Internetwork over IPv6: UDP, TCP, and the like.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBimplink\fR\fR
-.ad
-.RS 13n
-ARPANET imp addresses
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpup\fR\fR
-.ad
-.RS 13n
-PUP protocols: for example, BSP
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBchaos\fR\fR
-.ad
-.RS 13n
-MIT CHAOS protocols
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBns\fR\fR
-.ad
-.RS 13n
-XEROX NS protocols
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnbs\fR\fR
-.ad
-.RS 13n
-NBS protocols
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBecma\fR\fR
-.ad
-.RS 13n
-European Computer Manufacturers Association
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdatakit\fR\fR
-.ad
-.RS 13n
-DATAKIT protocols
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBccitt\fR\fR
-.ad
-.RS 13n
-CCITT protocols, X.25, and the like.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsna\fR\fR
-.ad
-.RS 13n
-IBM SNA
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdecnet\fR\fR
-.ad
-.RS 13n
-DECNET
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdli\fR\fR
-.ad
-.RS 13n
-Direct data link interface
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBlat\fR\fR
-.ad
-.RS 13n
-LAT
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBhylink\fR\fR
-.ad
-.RS 13n
-NSC Hyperchannel
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBappletalk\fR\fR
-.ad
-.RS 13n
-Apple Talk
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnit\fR\fR
-.ad
-.RS 13n
-Network Interface Tap
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBieee802\fR\fR
-.ad
-.RS 13n
-IEEE 802.2; also ISO 8802
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBosi\fR\fR
-.ad
-.RS 13n
-Umbrella for all families used by OSI (for example, protosw lookup)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBx25\fR\fR
-.ad
-.RS 13n
-CCITT X.25 in particular
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBosinet\fR\fR
-.ad
-.RS 13n
-AFI = 47, IDI = 4
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBgosip\fR\fR
-.ad
-.RS 13n
-U.S. Government OSI
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIprotocol name\fR\fR
-.ad
-.RS 25n
-The \fIprotocol name\fR field contains a string that identifies a protocol. The
-\fIprotocol name\fR identifier follows the same rules as those for \fInetwork
-ID\fRs; that is, the string consists of non-NULL characters, it has a length of
-at least \fB1\fR, and there is no maximum length specified. A ``\fB\(mi\fR\&''
-indicates that none of the names listed apply. The following protocol names are
-recognized.
-.sp
-.ne 2
-.na
-\fB\fBtcp\fR\fR
-.ad
-.RS 8n
-Transmission Control Protocol
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBudp\fR\fR
-.ad
-.RS 8n
-User Datagram Protocol
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBicmp\fR\fR
-.ad
-.RS 8n
-Internet Control Message Protocol
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fInetwork device\fR\fR
-.ad
-.RS 25n
-The \fInetwork device\fR is the full pathname of the device used to connect to
-the transport provider. Typically, this device will be in the \fB/dev\fR
-directory. The \fInetwork device\fR must be specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fItranslation libraries\fR\fR
-.ad
-.RS 25n
-The \fIname-to-address translation libraries\fR support a ``directory service''
-(a name-to-address mapping service) for the network. A ``\fB\(mi\fR\&'' in this
-field indicates the absence of any \fItranslation libraries\fR. This has a
-special meaning for networks of the protocol family \fBinet :\fR its
-name-to-address mapping is provided by the name service switch based on the
-entries for \fBhosts\fR and \fBservices\fR in \fBnsswitch.conf\fR(4). For
-networks of other families, a ``\fB\(mi\fR\&'' indicates non-functional
-name-to-address mapping. Otherwise, this field consists of a comma-separated
-list of pathnames to dynamically linked libraries. The pathname of the library
-can be either absolute or relative. See \fBdlopen\fR(3C).
-.RE
-
-.sp
-.LP
-Each field corresponds to an element in the \fBstruct netconfig\fR structure.
-\fBstruct netconfig\fR and the identifiers described on this manual page are
-defined in <\fBnetconfig.h\fR>. This structure includes the following members:
-.sp
-.ne 2
-.na
-\fB\fBchar *\fR\fInc_netid\fR\fR
-.ad
-.RS 30n
-Network ID, including \fBNULL\fR terminator.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBunsigned long\fR \fInc_semantics\fR\fR
-.ad
-.RS 30n
-Semantics.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBunsigned long\fR \fInc_flag\fR\fR
-.ad
-.RS 30n
-Flags.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBchar *\fR\fInc_protofmly\fR\fR
-.ad
-.RS 30n
-Protocol family.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBchar *\fR\fInc_proto\fR\fR
-.ad
-.RS 30n
-Protocol name.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBchar *\fR\fInc_device\fR\fR
-.ad
-.RS 30n
-Full pathname of the network device.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBunsigned long\fR \fInc_nlookups\fR\fR
-.ad
-.RS 30n
-Number of directory lookup libraries.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBchar **\fR\fInc_lookups\fR\fR
-.ad
-.RS 30n
-Names of the name-to-address translation libraries.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBunsigned long\fR \fInc_unused[9]\fR\fR
-.ad
-.RS 30n
-Reserved for future expansion.
-.RE
-
-.sp
-.LP
-The \fInc_semantics\fR field takes the following values, corresponding to the
-semantics identified above:
-.br
-.in +2
-\fBNC_TPI_CLTS\fR
-.in -2
-.br
-.in +2
-\fBNC_TPI_COTS\fR
-.in -2
-.br
-.in +2
-\fBNC_TPI_COTS_ORD\fR
-.in -2
-.sp
-.LP
-The \fInc_flag\fR field is a bitfield. The following bit, corresponding to the
-attribute identified above, is currently recognized. \fBNC_NOFLAG\fR indicates
-the absence of any attributes.
-.sp
-.in +2
-.nf
-\fBNC_VISIBLE\fR
-.fi
-.in -2
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRA Sample \fBnetconfig\fR File
-.sp
-.LP
-Below is a sample \fBnetconfig\fR file:
-
-.sp
-.in +2
-.nf
-#
-# The "Network Configuration" File.
-#
-# Each entry is of the form:
-#
-# <networkid> <semantics> <flags> <protofamily> <protoname> <device>
-# <nametoaddrlibs>
-#
-# The "-" in <nametoaddrlibs> for inet family transports indicates
-# redirection to the name service switch policies for "hosts" and
-# "services". The "-" may be replaced by nametoaddr libraries that
-# comply with the SVr4 specs, in which case the name service switch
-# will not be used for netdir_getbyname, netdir_getbyaddr,
-# gethostbyname, gethostbyaddr, getservbyname, and getservbyport.
-# There are no nametoaddr_libs for the inet family in Solaris anymore.
-#
-udp6 tpi_clts v inet6 udp /dev/udp6 -
-tcp6 tpi_cots_ord v inet6 tcp /dev/tcp6 -
-udp tpi_clts v inet udp /dev/udp -
-tcp tpi_cots_ord v inet tcp /dev/tcp -
-rawip tpi_raw - inet - /dev/rawip -
-ticlts tpi_clts v loopback - /dev/ticlts straddr.so
-ticotsord tpi_cots_ord v loopback - /dev/ticotsord straddr.so
-ticots tpi_cots v loopback - /dev/ticots straddr.so
-.fi
-.in -2
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB<\fBnetconfig.h\fR>\fR
-.ad
-.RS 17n
-
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBdlopen\fR(3C), \fBgetnetconfig\fR(3NSL), \fBgetnetpath\fR(3NSL),
-\fBnsswitch.conf\fR(4)
-.sp
-.LP
-\fISystem Administration Guide: IP Services\fR
diff --git a/usr/src/man/man4/netgroup.4 b/usr/src/man/man4/netgroup.4
deleted file mode 100644
index b693d6a7be..0000000000
--- a/usr/src/man/man4/netgroup.4
+++ /dev/null
@@ -1,158 +0,0 @@
-'\" te
-.\" Copyright 2012 Nexenta Systems, Inc. All rights reserved.
-.\" Copyright (C) 2003, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH NETGROUP 4 "Jun 17, 2021"
-.SH NAME
-netgroup \- list of network groups
-.SH SYNOPSIS
-.nf
-\fB/etc/netgroup\fR
-.fi
-.SH DESCRIPTION
-A \fBnetgroup\fR defines a network-wide group of hosts and users. Use a
-\fBnetgroup\fR to restrict access to shared \fBNFS\fR filesystems and to
-restrict remote login and shell access.
-.sp
-Network groups are usually stored in network information services,
-such as \fBLDAP\fR, or \fBNIS\fR, but may alternatively be stored in
-the local \fB/etc/netgroup\fR file. The \fBnetgroup\fR line of the
-\fBnsswitch.conf\fR(4) file determines which of those sources are used.
-.sp
-This manual page describes the format for a file that is used to supply input
-to a program such as \fBldapaddent\fR(1M) for LDAP, or \fBmakedbm\fR(1M) for
-NIS. The same file format is used in the local \fB/etc/netgroup\fR file.
-.sp
-Each line of the file defines the name and membership of a network group. The
-line should have the format:
-.sp
-.in +2
-.nf
-\fIgroupname member\fR...
-.fi
-.in -2
-.sp
-.sp
-The items on a line can be separated by a combination of one or more spaces or
-tabs.
-.sp
-The \fIgroupname\fR is the name of the group being defined. This is followed by
-a list of members of the group. Each \fImember\fR is either another group name,
-all of whose members are to be included in the group being defined, or a triple
-of the form:
-.sp
-.in +2
-.nf
-\fI(hostname,username,domainname)\fR
-.fi
-.in -2
-.sp
-.sp
-In each triple, any of the three fields \fIhostname\fR, \fIusername\fR, and
-\fIdomainname\fR, can be empty. An empty field signifies a wildcard that
-matches any value in that field. Thus:
-.sp
-.in +2
-.nf
-everything (\|,\|,this.domain)
-.fi
-.in -2
-.sp
-.sp
-defines a group named "everything" for the domain "this.domain" to which every
-host and user belongs.
-.sp
-The \fIdomainname\fR field refers to the domain in which the triple is valid,
-not the domain containing the host or user. In fact, applications using
-\fBnetgroup\fR generally do not check the \fIdomainname\fR. Therefore, using
-.sp
-.in +2
-.nf
-(,,domain)
-.fi
-.in -2
-.sp
-.sp
-is equivalent to
-.sp
-.in +2
-.nf
-(,,)
-.fi
-.in -2
-.sp
-.sp
-You can also use netgroups to control \fBNFS\fR mount access (see
-\fBshare_nfs\fR(1M)) and to control remote login and shell access (see
-\fBhosts.equiv\fR(4)). You can also use them to control local login access (see
-\fBpasswd\fR(4), \fBshadow\fR(4), and \fBcompat\fR in \fBnsswitch.conf\fR(4)).
-.sp
-When used for these purposes, a host is considered a member of a \fBnetgroup\fR
-if the \fBnetgroup\fR contains any triple in which the \fBhostname\fR field
-matches the name of the host requesting access and the \fBdomainname\fR field
-matches the domain of the host controlling access.
-.sp
-Similarly, a user is considered a member of a \fBnetgroup\fR if the
-\fBnetgroup\fR contains any triple in which the \fIusername\fR field matches
-the name of the \fBuser\fR requesting access and the \fIdomainname\fR field
-matches the domain of the host controlling access.
-.sp
-Note that when netgroups are used to control NFS mount access, access is
-granted depending only on whether the requesting host is a member of the
-\fBnetgroup\fR. Remote login and shell access can be controlled both on the
-basis of host and user membership in separate netgroups.
-.SH FILES
-.ne 2
-.na
-\fB\fB/etc/netgroup\fR\fR
-.ad
-.RS 17n
-Used by a network information service's utility to construct a map or table
-that contains \fBnetgroup\fR information. For example, \fBldapaddent\fR(1M)
-uses \fB/etc/netgroup\fR to construct an LDAP container. Alternatively,
-the \fB/etc/netgroup\fR file may be used directly if the \fBfiles\fR
-source is specified in \fBnsswitch.conf\fR(4) for the \fBnetgroup\fR
-database.
-.RE
-.SH SEE ALSO
-\fBldapaddent\fR(1M), \fBmakedbm\fR(1M),
-\fBshare_nfs\fR(1M), \fBinnetgr\fR(3C), \fBhosts\fR(4), \fBhosts.equiv\fR(4),
-\fBnsswitch.conf\fR(4), \fBpasswd\fR(4), \fBshadow\fR(4)
-.SH NOTES
-Applications may make general membership tests using the \fBinnetgr()\fR
-function. See \fBinnetgr\fR(3C).
-.sp
-Because the "-" character will not match any specific username or hostname, it
-is commonly used as a placeholder that will match only wildcarded membership
-queries. So, for example:
-.sp
-.in +2
-.nf
-onlyhosts (host1,-,our.domain) (host2,-,our.domain)
-onlyusers (-,john,our.domain) (-,linda,our.domain)
-.fi
-.in -2
-.sp
-.sp
-effectively define netgroups containing only hosts and only users,
-respectively. Any other string that is guaranteed not to be a legal username or
-hostname will also suffice for this purpose.
-.sp
-Use of placeholders will improve search performance.
-.sp
-When a machine with multiple interfaces and multiple names is defined as a
-member of a \fBnetgroup\fR, one must list all of the names. See \fBhosts\fR(4).
-A manageable way to do this is to define a \fBnetgroup\fR containing all of the
-machine names. For example, for a host "gateway" that has names
-"gateway-subnet1" and "gateway-subnet2" one may define the \fBnetgroup\fR:
-.sp
-.in +2
-.nf
-gateway (gateway-subnet1,\|,our.domain) (gateway-subnet2,\|,our.domain)
-.fi
-.in -2
-.sp
-and use this \fBnetgroup\fR "\fBgateway\fR" whenever the host is to be included
-in another \fBnetgroup\fR.
diff --git a/usr/src/man/man4/netid.4 b/usr/src/man/man4/netid.4
deleted file mode 100644
index 7f52e76ca8..0000000000
--- a/usr/src/man/man4/netid.4
+++ /dev/null
@@ -1,171 +0,0 @@
-'\" te
-.\" Copyright (c) 1994, Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH NETID 4 "November 22, 2021"
-.SH NAME
-netid \- netname database
-.SH SYNOPSIS
-.nf
-\fB/etc/netid\fR
-.fi
-
-.SH DESCRIPTION
-The \fBnetid\fR file is a local source of information on mappings between
-netnames (see \fBsecure_rpc\fR(3NSL)) and user ids or hostnames in the local
-domain. The \fBnetid\fR file can be used in conjunction with, or instead of,
-a network nameservice. The \fBpublickey\fR entry in
-the \fBnsswitch.conf\fR (see \fBnsswitch.conf\fR(4)) file determines which of
-these sources will be queried by the system to translate netnames to local user
-ids or hostnames.
-.sp
-.LP
-Each entry in the \fBnetid\fR file is a single line of the form:
-.sp
-.in +2
-.nf
-\fInetname uid\fR\fB:\fR\fIgid, gid, gid\|.\|.\|.\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-or
-.sp
-.in +2
-.nf
-\fInetname\fR \fB 0:\fR\fBhostname\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The first entry associates a local user id with a netname. The second entry
-associates a hostname with a netname.
-.sp
-.LP
-The \fBnetid\fR file field descriptions are as follows:
-.sp
-.ne 2
-.na
-\fB\fInetname\fR\fR
-.ad
-.RS 12n
-The operating system independent network name for the user or host.
-\fInetname\fR has one of two formats. The format used to specify a host is of
-the form:
-.sp
-\fBunix.\fR\fBhostname\fR\fB@\fR\fIdomain\fR
-.sp
-where \fBhostname\fR is the name of the host and \fIdomain\fR is the network
-domain name.
-.sp
-The format used to specify a user id is of the form:
-.sp
-\fBunix.\fR\fIuid\fR\fB@\fR\fIdomain\fR
-.sp
-where \fIuid\fR is the numerical id of the user and \fIdomain\fR is the network
-domain name.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIuid\fR\fR
-.ad
-.RS 12n
-The numerical id of the user (see \fBpasswd\fR(4)). When specifying a host
-name, \fIuid\fR is always zero.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIgroup\fR\fR
-.ad
-.RS 12n
-The numerical id of the group the user belongs to (see \fBgroup\fR(4)).
-Several groups, separated by commas, may be listed for a single \fIuid\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBhostname\fR\fR
-.ad
-.RS 12n
-The local hostname (see \fBhosts\fR(4)).
-.RE
-
-.sp
-.LP
-Blank lines are ignored. Any part of a line to the right of a `\fB#\fR' symbol
-is treated as a comment.
-.SH EXAMPLES
-\fBExample 1 \fRA sample \fBnetid\fR file.
-.sp
-.LP
-Here is a sample \fBnetid\fR file:
-
-.sp
-.in +2
-.nf
-unix.789@West.Example.COM 789:30,65
-unix.123@Bldg_xy.Example.COM 123:20,1521
-unix.candlestick@campus1.example.NET 0:candlestick
-.fi
-.in -2
-.sp
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/etc/group\fR\fR
-.ad
-.RS 18n
-groups file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/hosts\fR\fR
-.ad
-.RS 18n
-hosts database
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/netid\fR\fR
-.ad
-.RS 18n
-netname database
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/passwd\fR\fR
-.ad
-.RS 18n
-password file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/publickey\fR\fR
-.ad
-.RS 18n
-public key database
-.RE
-
-.SH SEE ALSO
-\fBnetname2user\fR(3NSL), \fBsecure_rpc\fR(3NSL), \fBgroup\fR(4),
-\fBhosts\fR(4), \fBnsswitch.conf\fR(4), \fBpasswd\fR(4), \fBpublickey\fR(4)
diff --git a/usr/src/man/man4/netmasks.4 b/usr/src/man/man4/netmasks.4
deleted file mode 100644
index 2d52182c3e..0000000000
--- a/usr/src/man/man4/netmasks.4
+++ /dev/null
@@ -1,133 +0,0 @@
-'\" te
-.\" Copyright 1996 Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH NETMASKS 4 "Jan 7, 1997"
-.SH NAME
-netmasks \- network mask database
-.SH SYNOPSIS
-.LP
-.nf
-\fB/etc/inet/netmasks\fR
-.fi
-
-.LP
-.nf
-\fB/etc/netmasks\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBnetmasks\fR file contains network masks used to implement \fBIP\fR
-subnetting. It supports both standard subnetting as specified in \fIRFC-950\fR
-and variable length subnetting as specified in \fIRFC-1519\fR. When using
-standard subnetting there should be a single line for each network that is
-subnetted in this file with the network number, any number of \fBSPACE\fR or
-\fBTAB\fR characters, and the network mask to use on that network. Network
-numbers and masks may be specified in the conventional \fBIP\fR `.' (dot)
-notation (like \fBIP\fR host addresses, but with zeroes for the host part).
-For example,
-.sp
-.ne 2
-.na
-\fB\fR
-.ad
-.sp .6
-.RS 4n
-.sp
-.in +2
-.nf
-128.32.0.0 255.255.255.0
-.fi
-.in -2
-.sp
-
-.RE
-
-.sp
-.LP
-can be used to specify that the Class B network 128.32.0.0 should have eight
-bits of subnet field and eight bits of host field, in addition to the standard
-sixteen bits in the network field.
-.sp
-.LP
-When using variable length subnetting, the format is identical. However, there
-should be a line for each subnet with the first field being the subnet and the
-second field being the netmask that applies to that subnet. The users of the
-database, such as \fBifconfig\fR(1M), perform a lookup to find the longest
-possible matching mask. It is possible to combine the \fIRFC-950\fR and
-\fIRFC-1519\fR form of subnet masks in the netmasks file. For example,
-.sp
-.ne 2
-.na
-\fB\fR
-.ad
-.sp .6
-.RS 4n
-.sp
-.in +2
-.nf
-128.32.0.0 255.255.255.0
-128.32.27.0 255.255.255.240
-128.32.27.16 255.255.255.240
-128.32.27.32 255.255.255.240
-128.32.27.48 255.255.255.240
-128.32.27.64 255.255.255.240
-128.32.27.80 255.255.255.240
-128.32.27.96 255.255.255.240
-128.32.27.112 255.255.255.240
-128.32.27.128 255.255.255.240
-128.32.27.144 255.255.255.240
-128.32.27.160 255.255.255.240
-128.32.27.176 255.255.255.240
-128.32.27.192 255.255.255.240
-128.32.27.208 255.255.255.240
-128.32.27.224 255.255.255.240
-128.32.27.240 255.255.255.240
-128.32.64.0 255.255.255.192
-.fi
-.in -2
-.sp
-
-.RE
-
-.sp
-.LP
-can be used to specify different netmasks in different parts of the 128.32.0.0
-Class B network number. Addresses 128.32.27.0 through 128.32.27.255 have a
-subnet mask with 28 bits in the combined network and subnet fields (often
-referred to as the subnet field) and 4 bits in the host field. Furthermore,
-addresses 128.32.64.0 through 128.32.64.63 have a 26 bits in the subnet field.
-Finally, all other addresses in the range 128.32.0.0 through 128.32.255.255
-have a 24 bit subnet field.
-.sp
-.LP
-Invalid entries are ignored.
-.SH SEE ALSO
-.sp
-.LP
-\fBifconfig\fR(1M), \fBinet\fR(7P)
-.sp
-.LP
-Postel, Jon, and Mogul, Jeff, \fIInternet Standard Subnetting Procedure\fR,
-\fBRFC\fR 950, Network Information Center, \fBSRI\fR International, Menlo Park,
-Calif., August 1985.
-.sp
-.LP
-V. Fuller, T. Li, J. Yu, K. Varadhan, \fIClassless Inter-Domain Routing
-(CIDR): an Address Assignment and Aggregation Strategy\fR, \fBRFC\fR 1519,
-Network Information Center, \fBSRI\fR International, Menlo Park, Calif.,
-September 1993.
-.sp
-.LP
-T. Pummill, B. Manning, \fIVariable Length Subnet Table For IPv4\fR, \fBRFC\fR
-1878, Network Information Center, \fBSRI\fR International, Menlo Park, Calif.,
-December 1995.
-.SH NOTES
-.sp
-.LP
-\fB/etc/inet/netmasks\fR is the official SVr4 name of the \fBnetmasks\fR file.
-The symbolic link \fB/etc/netmasks\fR exists for \fBBSD\fR compatibility.
diff --git a/usr/src/man/man4/netrc.4 b/usr/src/man/man4/netrc.4
deleted file mode 100644
index 3098daf61f..0000000000
--- a/usr/src/man/man4/netrc.4
+++ /dev/null
@@ -1,148 +0,0 @@
-'\" te
-.\" Copyright (c) 2006 Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH NETRC 4 "Aug 25, 2006"
-.SH NAME
-netrc \- file for ftp remote login data
-.SH DESCRIPTION
-.LP
-The \fB\&.netrc\fR file contains data for logging in to a remote host over the
-network for file transfers by \fBftp\fR(1). This file resides in the user's
-home directory on the machine initiating the file transfer. Its permissions
-should be set to disallow read access by group and others. See \fBchmod\fR(1).
-.sp
-.LP
-Tokens can be separated by \fBSPACE\fR, \fBTAB\fR, or \fBNEWLINE\fR characters.
-The following tokens are supported:
-.sp
-.ne 2
-.na
-\fB\fBaccount\fR \fIstring\fR\fR
-.ad
-.RS 19n
-Supply an additional account password. If this token is present, the auto-login
-process supplies the specified string if the remote server requires an
-additional account password. If the remote server does not require an
-additional account password, the auto-login process initiates an \fBACCT\fR
-command.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdefault\fR\fR
-.ad
-.RS 19n
-Same as \fBmachine\fR \fIname\fR, except that default matches any name. There
-can be only one \fBdefault\fR token, and it must be after all \fBmachine\fR
-tokens. The \fBdefault\fR token is normally used as follows:
-.sp
-.in +2
-.nf
-default login anonymous password \fIuser\fR@\fIsite\fR
-.fi
-.in -2
-.sp
-
-Such an entry gives the user automatic anonymous \fBftp\fR login to machines
-not specified in \fB\&.netrc\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBlogin\fR \fIname\fR\fR
-.ad
-.RS 19n
-Identify a user on the remote machine. If this token is present, the auto-login
-process initiates a login using the specified name.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmachine\fR \fIname\fR\fR
-.ad
-.RS 19n
-Identify a remote machine name. The auto-login process searches the
-\fB\&.netrc\fR file for a \fBmachine\fR token that matches the remote machine
-specified on the \fBftp\fR command line or as an \fBopen\fR command argument.
-Once a match is made, the subsequent \fB\&.netrc\fR tokens are processed,
-stopping when the \fBEOF\fR is reached or another \fBmachine\fR token is
-encountered.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmacdef\fR \fIname\fR\fR
-.ad
-.RS 19n
-Define a macro. This token functions the same as \fBftp\fR \fBmacdef\fR. A
-macro is defined with the specified name; its contents begin with the next
-\fB\&.netrc\fR line and continue until a null line (consecutive \fBNEWLINE\fR
-characters) is encountered. If a macro named \fBinit\fR is defined, it is
-automatically executed as the last step in the auto-login process.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpassword\fR \fIstring\fR\fR
-.ad
-.RS 19n
-Supply a password. If this token is present, the auto-login process supplies
-the specified string if the remote server requires a password as part of the
-login process. If this token is present in the \fB\&.netrc\fR file, \fBftp\fR
-aborts the auto-login process if the \fB\&.netrc\fR is readable by anyone
-besides the user.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBskipsyst\fR\fR
-.ad
-.RS 19n
-Skip the \fBSYST\fR command that is sent by default to all remote servers upon
-connection. The system command is what enables the automatic use of binary mode
-rather than the protocol default ascii mode.
-.sp
-As some older servers cannot handle the \fBftp\fR command, this directive is
-provided to allow inter-operability with these servers.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRA Sample \fB\&.netrc\fR File
-.sp
-.LP
-A \fB\&.netrc\fR file containing the following line:
-
-.sp
-.in +2
-.nf
-machine ray login demo password mypassword
-.fi
-.in -2
-
-.sp
-.LP
-allows an autologin to the machine \fBray\fR using the login name \fBdemo\fR
-with password \fBmypassword\fR.
-
-.SH FILES
-.ne 2
-.na
-\fB\fB~/.netrc\fR\fR
-.ad
-.RS 12n
-
-.RE
-
-.SH SEE ALSO
-.LP
-\fBchmod\fR(1), \fBftp\fR(1)
diff --git a/usr/src/man/man4/networks.4 b/usr/src/man/man4/networks.4
deleted file mode 100644
index 2ffa0390cb..0000000000
--- a/usr/src/man/man4/networks.4
+++ /dev/null
@@ -1,71 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T
-.\" Copyright (C) 2002, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH NETWORKS 4 "Feb 25, 2017"
-.SH NAME
-networks \- network name database
-.SH SYNOPSIS
-.LP
-.nf
-\fB/etc/inet/networks\fR
-.fi
-
-.LP
-.nf
-\fB/etc/networks\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBnetworks\fR file is a local source of information regarding the networks
-which comprise the Internet. The networks file can be used in conjunction
-with, or instead of, other networks sources, including the NIS maps
-\fBnetworks.byname\fR and \fBnetworks.byaddr\fR.
-Programs use the \fBgetnetbyname\fR(3SOCKET) routines to access
-this information.
-.sp
-.LP
-The network file has a single line for each network, with the following
-information:
-.sp
-.in +2
-.nf
-\fIofficial-network-name network-number aliases\fR
-.fi
-.in -2
-
-.sp
-.LP
-Items are separated by any number of \fBSPACE\fR or \fBTAB\fR characters. A
-`\fB#\fR' indicates the beginning of a comment. Characters up to the end of the
-line are not interpreted by routines which search the file. This file is
-normally created from the official network database maintained at the Network
-Information Control Center (NIC), though local changes may be required to bring
-it up to date regarding unofficial aliases and/or unknown networks.
-.sp
-.LP
-Network numbers may be specified in the conventional dot (`\fB\&.\fR') notation
-using the \fBinet_network\fR routine from the Internet address manipulation
-library, \fBinet\fR(7P). Network names may contain any printable character
-other than a field delimiter, \fBNEWLINE\fR, or comment character.
-.SH SEE ALSO
-.LP
-\fBgetnetbyaddr\fR(3SOCKET), \fBgetnetbyname\fR(3SOCKET), \fBinet\fR(3SOCKET),
-\fBnsswitch.conf\fR(4), \fBinet\fR(7P)
-.SH NOTES
-.LP
-The official SVR4 name of the \fBnetworks\fR file is \fB/etc/inet/networks\fR.
-The symbolic link \fB/etc/networks\fR exists for \fBBSD\fR compatibility.
-.sp
-.LP
-The network number in \fBnetworks\fR database is the host address shifted to
-the right by the number of 0 bits in the address mask. For example, for the
-address \fB24.132.47.86\fR that has a mask of \fBfffffe00\fR, its network
-number is \fB803351\fR. This is obtained when the address is shifted right by 9
-bits. The address maps to \fB12.66.23\fR. The trailing 0 bits should not be
-specified. The network number here is different from that described in
-\fBnetmasks\fR(4). For this example, the entry in \fBnetmasks\fR would be
-\fB24.132.46.0 fffffe00\fR.
diff --git a/usr/src/man/man4/nfs.4 b/usr/src/man/man4/nfs.4
deleted file mode 100644
index 6979f5f485..0000000000
--- a/usr/src/man/man4/nfs.4
+++ /dev/null
@@ -1,319 +0,0 @@
-.\"
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.\"
-.\"
-.\" Copyright 1989 AT&T
-.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 2016 Nexenta Systems, Inc.
-.\" Copyright 2020 Joyent, Inc.
-.\"
-.Dd November 22, 2021
-.Dt NFS 4
-.Os
-.Sh NAME
-.Nm nfs
-.Nd NFS configuration properties
-.Sh DESCRIPTION
-The behavior of the
-.Xr nfsd 1M ,
-.Xr nfsmapid 1M ,
-.Xr lockd 1M ,
-and
-.Xr mountd 1M
-daemons and
-.Xr mount_nfs 1M
-command is controlled by property values that are stored in the Service
-Management Facility, smf(5).
-The
-.Xr sharectl 1M
-command should be used to query or change values for these properties.
-.Pp
-Changes made to
-.Nm
-property values on the
-.Nm nfsd ,
-.Nm lockd ,
-.Nm mountd ,
-or
-.Nm mount_nfs
-command line override the values set using
-.Xr sharectl 1M .
-.Pp
-The following list describes the properties:
-.Bl -tag -width Ds
-.It Xo
-.Sy client_versmin Ns = Ns Ar num
-.br
-.Sy client_versmax Ns = Ns Ar num
-.Xc
-The NFS client only uses NFS versions in the range specified by these
-properties.
-Valid values of versions are: 2, 3, and 4.
-Default minimum version is
-.Li 2 ,
-while default maximum is
-.Li 4 .
-.Pp
-You can override this range on a per-mount basis by using the
-.Fl o Sy vers Ns =
-option to
-.Xr mount_nfs 1M .
-.It Xo
-.Sy server_versmin Ns = Ns Ar num
-.br
-.Sy server_versmax Ns = Ns Ar num
-.Xc
-The NFS server only uses NFS versions in the range specified by these
-properties.
-Valid values of versions are: 2, 3, and 4.
-Default minimum version is
-.Li 2 ,
-while the default maximum version is
-.Li 4 .
-.It Sy server_delegation Ns = Ns Sy on Ns | Ns Sy off
-By default the NFS server provides delegations to clients.
-The user can turn off delegations for all exported filesystems by setting this
-variable to
-.Li off .
-This variable only applies to NFS Version 4.
-.It Sy nfsmapid_domain Ns = Ns Op Ar string
-By default, the
-.Nm nfsmapid
-uses the DNS domain of the system.
-This setting overrides the default.
-This domain is used for identifying user and group attribute strings in the NFS
-Version 4 protocol.
-Clients and servers must match with this domain for operation to proceed
-normally.
-This variable only applies to NFS Version 4.
-See
-.Sx Setting nfsmapid_domain
-below for further details.
-.It Sy max_connections Ns = Ns Ar num
-Sets the maximum number of concurrent, connection-oriented connections.
-The default is
-.Li -1
-.Pq unlimited .
-Equivalent to the
-.Fl c
-option in
-.Nm nfsd .
-.It Sy listen_backlog Ns = Ns Ar num
-Set connection queue length for the NFS over a connection-oriented transport.
-The default value is
-.Li 32 ,
-meaning 32 entries in the queue.
-Equivalent to the
-.Fl l
-option in
-.Nm nfsd .
-.It Sy protocol Ns = Ns Op Sy all Ns | Ns Ar protocol
-Start
-.Nm nfsd
-over the specified protocol only.
-Equivalent to the
-.Fl p
-option in
-.Nm nfsd .
-.Sy all
-is equivalent to
-.Fl a
-on the
-.Nm nfsd
-command line.
-Mutually exclusive of
-.Sy device .
-For the UDP protocol, only version 2 and version 3 service is established.
-NFS Version 4 is not supported for the UDP protocol.
-.It Sy device Ns = Ns Op Ar devname
-Start NFS daemon for the transport specified by the given device only.
-Equivalent to the
-.Fl t
-option in
-.Nm nfsd .
-Mutually exclusive of
-.Sy protocol .
-.It Sy servers Ns = Ns Ar num
-Maximum number of concurrent NFS requests.
-Equivalent to last numeric argument on the
-.Nm nfsd
-command line.
-The default is
-.Li 1024 .
-.It Sy lockd_listen_backlog Ns = Ns Ar num
-Set connection queue length for
-.Nm lockd
-over a connection-oriented transport.
-The default and minimum value is
-.Li 32 .
-.It Sy lockd_servers Ns = Ns Ar num
-Maximum number of concurrent
-.Nm lockd
-requests.
-The default is 256.
-.It Sy lockd_retransmit_timeout Ns = Ns Ar num
-Retransmit timeout, in seconds, before
-.Nm lockd
-retries.
-The default is
-.Li 5 .
-.It Sy grace_period Ns = Ns Ar num
-Grace period, in seconds, that all clients
-.Pq both NLM and NFSv4
-have to reclaim locks after a server reboot.
-This parameter also controls the NFSv4 lease interval.
-The default is
-.Li 90 .
-.It Sy mountd_listen_backlog Ns = Ns Ar num
-Set the connection queue length for
-.Nm mountd
-over a connection-oriented transport.
-The default value is
-.Li 64 .
-.It Sy mountd_max_threads Ns = Ns Ar num
-Maximum number of threads for
-.Nm mountd .
-The default value is
-.Li 16 .
-.It Sy mountd_port Ns = Ns Ar num
-The IP port number on which
-.Nm mountd
-should listen.
-The default value is
-.Li 0 ,
-which means it should use a default binding.
-.It Sy statd_port Ns = Ns Ar num
-The IP port number on which
-.Nm statd
-should listen.
-The default value is
-.Li 0 ,
-which means it should use a default binding.
-.El
-.Ss Setting nfsmapid_domain
-As described above, the setting for
-.Sy nfsmapid_domain
-overrides the domain used by
-.Xr nfsmapid 1M
-for building and comparing outbound and inbound attribute strings, respectively.
-This setting overrides any other mechanism for setting the NFSv4 domain.
-In the absence of a
-.Sy nfsmapid_domain
-setting, the
-.Xr nfsmapid 1M
-daemon determines the NFSv4 domain as follows:
-.Bl -bullet
-.It
-If a properly configured
-.Pa /etc/resolv.conf
-.Po see
-.Xr resolv.conf 4
-.Pc
-exists,
-.Nm nfsmapid
-queries specified nameserver(s) for the domain.
-.It
-If a properly configured
-.Pa /etc/resolv.conf
-.Po see
-.Xr resolv.conf 4
-.Pc
-exists, but the queried nameserver does not have a proper record of the domain
-name,
-.Nm nfsmapid
-attempts to obtain the domain name through the BIND interface
-.Po see
-.Xr resolver 3RESOLV
-.Pc .
-.It
-If no
-.Pa /etc/resolv.conf
-exists,
-.Nm nfsmapid
-falls back on using the configured domain name
-.Po see
-.Xr domainname 1M
-.Pc ,
-which is returned with the leading domain suffix removed.
-For example, for
-.Li widgets.sales.example.com ,
-.Li sales.example.com
-is returned.
-.It
-If
-.Pa /etc/resolv.conf
-does not exist, no domain name has been configured
-.Po or no
-.Pa /etc/defaultdomain
-exists
-.Pc ,
-.Nm nfsmapid
-falls back on obtaining the domain name from the host name, if the host name
-contains a fully qualified domain name
-.Pq FQDN .
-.El
-.Pp
-If a domainname is still not obtained following all of the preceding steps,
-.Nm nfsmapid
-will have no domain configured.
-This results in the following behavior:
-.Bl -bullet
-.It
-Outbound
-.Qq owner
-and
-.Qq owner_group
-attribute strings are encoded as literal id's.
-For example, the UID 12345 is encoded as
-.Li 12345 .
-.It
-.Nm nfsmapid
-ignores the
-.Qq domain
-portion of the inbound attribute string and performs name service lookups only
-for the user or group.
-If the user/group exists in the local system name service databases, then the
-proper uid/gid will be mapped even when no domain has been configured.
-.Pp
-This behavior implies that the same administrative user/group domain exists
-between NFSv4 client and server (that is, the same uid/gid's for users/groups
-on both client and server).
-In the case of overlapping id spaces, the inbound attribute string could
-potentially be mapped to the wrong id.
-However, this is not functionally different from mapping the inbound string to
-.Sy nobody ,
-yet provides greater flexibility.
-.El
-.Sh ZONES
-NFS can be served out of a non-global zone.
-All of the above documentation applies to an in-zone NFS server.
-File sharing in zones is restricted to filesystems a zone completely controls.
-Some zone brands (see
-.Xr brands 5 )
-do not give the zone's root its own filesystem, for example.
-Delegated ZFS datasets to a zone are shareable, as well as lofs-remounted
-directories.
-The zone must have sys_nfs privileges; most brands grant this already.
-.Sh SEE ALSO
-.Xr lockd 1M ,
-.Xr mount_nfs 1M ,
-.Xr mountd 1M ,
-.Xr nfsd 1M ,
-.Xr nfsmapid 1M ,
-.Xr sharectl 1M ,
-.Xr brands 5 ,
-.Xr smf 5 ,
-.Xr zones 5
diff --git a/usr/src/man/man4/nfslog.conf.4 b/usr/src/man/man4/nfslog.conf.4
deleted file mode 100644
index a035a70a04..0000000000
--- a/usr/src/man/man4/nfslog.conf.4
+++ /dev/null
@@ -1,178 +0,0 @@
-'\" te
-.\" Copyright (c) 1999, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH NFSLOG.CONF 4 "Dec 2, 2004"
-.SH NAME
-nfslog.conf \- NFS server logging configuration file
-.SH SYNOPSIS
-.LP
-.nf
-\fB/etc/nfs/nfslog.conf\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBnfslog.conf\fR file specifies the location of the \fBNFS\fR server logs,
-as well as the location of the private work files used by the \fBNFS\fR server
-and \fBnfslogd\fR(1M) daemon during logging. Each entry in the file consists of
-a mandatory tag identifier and one or more parameter identifiers. The parameter
-identifier specifies the value or location of the specific parameter. For
-instance, the parameter identifier "\fBlog=/var/nfs/logs/serverLog\fR"
-specifies the location of the \fBNFS\fR server activity log. The mandatory tag
-identifier serves as an index into the \fB/etc/nfs/nfslog.conf\fR file to
-identify the various parameters to be used. At export time, the
-\fBshare_nfs\fR(1M) command specifies the \fBNFS\fR server logging parameters
-to use by associating a tag from the \fB/etc/nfs/nfslog.conf\fR file to the
-exported file system. It is legal for more than one file system to be exported
-using the same logging tag identifier.
-.sp
-.LP
-NFS server logging is not supported on Solaris machines that are using NFS
-Version 4.
-.sp
-.LP
-A "global" tag identifier is included in \fB/etc/nfs/nfslog.conf\fR. It
-specifies the default set of values to be used during logging. If no tag
-identifier is specified at export time, then the values in the "global" entry
-are used. The "global" values can be modified by updating this entry in
-\fB/etc/nfs/nfslog.conf\fR.
-.sp
-.LP
-Each entry in the file must contain a mandatory tag identifier and at least one
-parameter/value pair. If a parameter is not specified in a given entry, the
-global value of the parameter will be used. The exact entry syntax follows:
-.sp
-.in +2
-.nf
-<tag> [defaultdir=<path>] [log=<path><file>] \e
-[fhtable=<path><file>] [buffer=<path><file>] [logformat=basic|extended]
-.fi
-.in -2
-
-.sp
-.ne 2
-.na
-\fB\fBdefaultdir=\fI<path>\fR\fR\fR
-.ad
-.RS 28n
-Specifies the directory where the logging files and working files will be
-placed. This path is prepended to all relative paths specified in other
-parameters.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBlog=\fI<path>\fR\fI<file>\fR\fR\fR
-.ad
-.RS 28n
-Specifies the location of the user-readable log file. The log will be located
-in the \fBdefaultdir\fR, unless \fB<path>\fR is an absolute path.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfhtable=\fI<path>\fR\fI<file>\fR\fR\fR
-.ad
-.RS 28n
-Specifies the location of the private file handle to path mapping database
-files. These database files are for the private use of the \fBNFS\fR server
-kernel module and the \fBnfslog\fRd daemon. These files will be located in the
-\fBdefaultdir\fR, unless \fB<path>\fR is an absolute path. These database files
-are permanently stored in the file system. Consult \fBnfslogd\fR(1M) for
-information on pruning the database files.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBbuffer=\fI<path>\fR\fI<file>\fR\fR\fR
-.ad
-.RS 28n
-Specifies the location of the private work buffer file used by the \fBNFS\fR
-server kernel module to record raw \fBRPC\fR information. This file is later
-processed by the \fBnfslog\fR daemon, which in turn generates the user-readable
-log file. This work buffer file will be located in the \fBdefaultdir\fR, unless
-\fB<path>\fR is an absolute path.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBlogformat=basic|extended\fR\fR
-.ad
-.RS 28n
-Sets the format of the user-readable log file. If not specified, the basic
-format is used. The basic format is compatible with log files generated by the
-Washington University \fBFTPd\fR. The extended format provides a more detailed
-log, which includes directory modification operations not included in the basic
-format, such as \fBmkdir\fR, \fBrmdir\fR and \fBremove\fR. Note that the
-extended format is not compatible with Washington University's \fBFTPd\fR log
-format.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRUsing the \fBglobal\fR Tag
-.sp
-.LP
-The "global" tag may be modified so that all exported file systems that enabled
-logging use a common set of parameters that conform to the specific needs of
-the user. These values are used until a specific tag identifier overrides them.
-
-.sp
-.in +2
-.nf
-global defaultdir=/var/nfs log=logs/nfslog \e
- fhtable=tables/fhtable buffer=buffers/nfslog_workbuffer \e
- logformat=basic
-.fi
-.in -2
-
-.LP
-\fBExample 2 \fROverriding the Global \fBdefaultdir\fR and \fBlogformat\fR
-.sp
-.LP
-Because log files can become very large, it may be desirable to store the logs
-and working files in separate file systems. This can be easily accomplished by
-simply specifying a different \fBdefaultdir\fR for every file system exported
-by means of a unique tag:
-
-.sp
-.in +2
-.nf
-engineering defaultdir=/engineering/logging \e
- logformat=extended
-accounting defaultdir=/accounting/logging
-marketing defaultdir=/marketing/logging
-.fi
-.in -2
-
-.sp
-.LP
-File systems shared with the engineering identifier will have their logs and
-workfiles located in \fB/engineering/logging\fR. For instance, the log file
-will be located at \fB/engineering/logging/logs/nfslog\fR. Note that the
-engineering log file will be stored in the extended format, while the rest of
-the log files will remain in the basic format.
-
-.sp
-.LP
-Any of the parameters can be updated in a tag identifier, which overrides the
-global settings.
-
-.SH SEE ALSO
-.sp
-.LP
-\fBnfslogd\fR(1M), \fBshare_nfs\fR(1M), \fBattributes\fR(5)
-.SH NOTES
-.sp
-.LP
-Logs, work files, and file handle to path mapping database can become very
-large. Be aware of appropriate placement within the file system name space. See
-\fBnfslogd\fR(1M)) for information on pruning the database files and cycling
-logs.
diff --git a/usr/src/man/man4/nfssec.conf.4 b/usr/src/man/man4/nfssec.conf.4
deleted file mode 100644
index 1c38aa2827..0000000000
--- a/usr/src/man/man4/nfssec.conf.4
+++ /dev/null
@@ -1,26 +0,0 @@
-'\" te
-.\" Copyright (c) 2001 Sun Microsystems, Inc. All rights reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH NFSSEC.CONF 4 "Nov 12, 2001"
-.SH NAME
-nfssec.conf \- list NFS security modes
-.SH SYNOPSIS
-.LP
-.nf
-\fB/etc/nfssec.conf\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBnfssec.conf\fR file lists the NFS security modes supported on a system.
-These modes are defined in \fBnfssec\fR(5).
-.sp
-.LP
-The \fBnfssec.conf\fR file should not be edited by a user.
-.SH SEE ALSO
-.sp
-.LP
-\fBnfssec\fR(5)
diff --git a/usr/src/man/man4/nodename.4 b/usr/src/man/man4/nodename.4
deleted file mode 100644
index 6ebc66667f..0000000000
--- a/usr/src/man/man4/nodename.4
+++ /dev/null
@@ -1,64 +0,0 @@
-'\" te
-.\" Copyright 2015 Nexenta Systems, Inc. All rights reserved.
-.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH NODENAME 4 "Feb 25, 2017"
-.SH NAME
-nodename \- local source for system name
-.SH SYNOPSIS
-.LP
-.nf
-\fB/etc/nodename\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-When a machine is standalone or its IP address is configured locally, the
-\fB/etc/nodename\fR file contains the system name. By convention, the system
-name is the same as the hostname associated with the IP address of the primary
-network interface, for example, \fBhostname.hme0\fR.
-.sp
-.LP
-If the machine's network configuration is delivered by the RPC bootparams
-protocol, the \fB/etc/nodename\fR file is not used, as the system name is
-delivered by the remote service.
-.sp
-.LP
-If the machine's network configuration is delivered by the DHCP protocol, the
-\fB/etc/nodename\fR file is used only if the DHCP server does not provide a
-value for the Hostname option (DHCP standard option code 12).
-.sp
-.LP
-A system name configured in \fB/etc/nodename\fR should be unique within the
-system's name service domain in order to ensure that any network services
-provided by the system will operate correctly.
-.sp
-.LP
-Given a system name value, regardless of source, the \fBuname\fR utility
-invoked with the \fB-S\fR option is used to set the system name of the running
-system.
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRSyntax
-.sp
-.LP
-The syntax for \fBnodename\fR consists of a single line containing the system's
-name. For example, for a system named \fBmyhost\fR:
-
-.sp
-.in +2
-.nf
-myhost
-.fi
-.in -2
-
-.SH SEE ALSO
-.LP
-\fBuname\fR(1), \fBnamed\fR(1M), \fBypbind\fR(1M),
-\fBattributes\fR(5)
-.SH NOTES
-.LP
-The \fBnodename\fR file is modified by Solaris installation and de-installation
-scripts.
diff --git a/usr/src/man/man4/nologin.4 b/usr/src/man/man4/nologin.4
deleted file mode 100644
index f6be44ea40..0000000000
--- a/usr/src/man/man4/nologin.4
+++ /dev/null
@@ -1,40 +0,0 @@
-'\" te
-.\" Copyright (c) 1995 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH NOLOGIN 4 "Dec 21, 1995"
-.SH NAME
-nologin \- message displayed to users attempting to log on in the process of a
-system shutdown
-.SH SYNOPSIS
-.LP
-.nf
-\fB/etc/nologin\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fB/etc/nologin\fR file contains the message displayed to users attempting
-to log on to a machine in the process of being shutdown. After displaying the
-contents of the \fBnologin\fR file, the \fBlogin\fR procedure terminates,
-preventing the user from logging onto the machine.
-.sp
-.LP
-This procedure is preferable to terminating a user's session by
-\fBshutdown\fR shortly after the user has logged on.
-.sp
-.LP
-Logins by super-user are not affected by this procedure.
-.sp
-.LP
-The message contained in the \fBnologin\fR file is editable by super-user. A
-typical \fBnologin\fR file contains a message similar to:
-.sp
-.LP
-\fBNO LOGINS: System going down in 10 minutes.\fR
-.SH SEE ALSO
-.sp
-.LP
-\fBlogin\fR(1), \fBrlogin\fR(1), \fBtelnet\fR(1), \fBshutdown\fR(1M)
diff --git a/usr/src/man/man4/note.4 b/usr/src/man/man4/note.4
deleted file mode 100644
index 7c241154a2..0000000000
--- a/usr/src/man/man4/note.4
+++ /dev/null
@@ -1,79 +0,0 @@
-'\" te
-.\" Copyright (c) 1995, Sun Microsystems, Inc.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH NOTE 4 "Jan 17, 1995"
-.SH NAME
-note \- specify legal annotations
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/note\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-Each file in this directory contains the \fBNOTE\fR (also \fB_NOTE\fR)
-annotations legal for a single tool. The name of the file, by convention,
-should be the tool vendor's stock name, followed by a hyphen, followed by the
-tool name. For example, for Sun's \fBlock_lint\fR tool the filename should be
-\fBSUNW-lock_lint\fR.
-.sp
-.LP
-The file should contain the names of the annotations understood by the tool,
-one per line. For example, if a tool understands the following annotations:
-.sp
-.in +2
-.nf
-NOTE(NOT_REACHED)
-NOTE(MUTEX_PROTECTS_DATA(list_lock, list_head))
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-then its file in \fB/usr/lib/note\fR should contain the entries:
-.sp
-.in +2
-.nf
-\fBNOT_REACHED
-MUTEX_PROTECTS_DATA\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Blank lines, and lines beginning with a pound (#), are ignored.
-.sp
-.LP
-While \fB/usr/lib/note\fR is the default directory tools search for such files,
-they can be made to search other directories instead simply by setting
-environment variable \fBNOTE\fR\fBPATH\fR to contain the paths, separated by
-colons, of directories to be searched, e.g.,
-\fB/usr/mytool/note:/usr/lib/note\fR.
-.SH USAGE
-.sp
-.LP
-These files are used by such tools whenever they encounter \fBNOTE\fRs they do
-not understand. If a file in \fB/usr/lib/note\fR contains the annotation, then
-it is valid. If no such file contains the annotation, then the tool should
-issue a warning complaining that it might be invalid.
-.SH ENVIRONMENT VARIABLES
-.sp
-.ne 2
-.na
-\fB\fBNOTE\fR\fBPATH\fR\fR
-.ad
-.RS 12n
-specify paths to be searched for annotation files. Paths are separated by
-colons (":").
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBNOTE\fR(3EXT)
diff --git a/usr/src/man/man4/notrouter.4 b/usr/src/man/man4/notrouter.4
deleted file mode 100644
index 4fc79a35e0..0000000000
--- a/usr/src/man/man4/notrouter.4
+++ /dev/null
@@ -1,24 +0,0 @@
-'\" te
-.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH NOTROUTER 4 "Sep 10, 2004"
-.SH NAME
-notrouter \- flag to turn off IPv4 routing
-.SH SYNOPSIS
-.LP
-.nf
-\fB/etc/notrouter\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fB/etc/notrouter\fR file is no longer used as of the current release of
-the Solaris operating system. IPv4 forwarding is disabled by default and can be
-enabled using \fBrouteadm\fR(1M).
-.SH SEE ALSO
-.sp
-.LP
-\fBrouteadm\fR(1M)
diff --git a/usr/src/man/man4/nscd.conf.4 b/usr/src/man/man4/nscd.conf.4
deleted file mode 100644
index be0b415b61..0000000000
--- a/usr/src/man/man4/nscd.conf.4
+++ /dev/null
@@ -1,202 +0,0 @@
-'\" te
-.\" Copyright (c) 2004 Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH NSCD.CONF 4 "Mar 6, 2017"
-.SH NAME
-nscd.conf \- name service cache daemon configuration
-.SH SYNOPSIS
-.LP
-.nf
-\fB/etc/nscd.conf\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBnscd.conf\fR file contains the configuration information for
-\fBnscd\fR(1M). Each line specifies either an \fIattribute\fR and a
-\fIvalue\fR, or an \fIattribute\fR, \fIcachename\fR, and a \fIvalue\fR. Fields
-are separated either by SPACE or TAB characters. A `\fB#\fR' (number sign)
-indicates the beginning of a comment; characters up to the end of the line are
-not interpreted by \fBnscd\fR.
-.sp
-.LP
-\fIcachename\fR is represented by \fBhosts\fR, \fBipnodes\fR, \fBpasswd\fR,
-\fBgroup\fR, \fBexec_attr\fR, \fBprof_attr\fR, \fBuser_attr\fR, \fBethers\fR,
-\fBrpc\fR, \fBprotocols\fR, \fBnetworks\fR, \fBbootparams\fR,
-\fBauth_attr\fR, \fBservices\fR, \fBnetmasks\fR, \fBprinters\fR, or
-\fBproject\fR.
-.sp
-.LP
-The \fIattribute\fR field supports the following:
-.sp
-.ne 2
-.na
-\fB\fBcheck-files\fR \fIcachename value\fR\fR
-.ad
-.sp .6
-.RS 4n
-Enables or disables checking the file belonging to the specified
-\fIcachename\fR for changes. If enabled (which is the default), changes in the
-corresponding file cause the cache to be invalidated within 10 seconds. Can be
-disabled if files are never modified for a slight performance boost,
-particularly over \fBNFS\fR. \fIvalue\fR may be either \fByes\fR or \fBno\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdebug-level\fR \fIvalue\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets the debug level desired. \fIvalue\fR may range from \fB0\fR (the default)
-to \fB10\fR. Use of this option causes \fBnscd\fR(1M) to run in the foreground
-and not become a daemon. Note that the output of the debugging command is not
-likely to remain the same from release-to-release; scripts should \fInot\fR
-rely on its format.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBenable-cache\fR \fIcachename value\fR\fR
-.ad
-.sp .6
-.RS 4n
-Enables or disables the specified cache. \fIvalue\fR may be either \fByes\fR or
-\fBno\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBenable-per-user-lookup\fR \fIvalue\fR\fR
-.ad
-.sp .6
-.RS 4n
-Enables or disables the ability of \fBnscd\fR to create a per-user \fBnscd\fR.
-A per-user \fBnscd\fR performs per-user lookups and manages the per-user cache.
-The per-user lookups might not be possible if the corresponding name service
-switch backends do not support it or are not configured to do so. The value of
-this attribute can be either \fByes\fR or \fBno\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBkeep-hot-count\fR \fIcachename value\fR\fR
-.ad
-.sp .6
-.RS 4n
-This attribute allows the administrator to set the number of entries
-\fBnscd\fR(1M) is to keep current in the specified cache. \fIvalue\fR is an
-integer number which should approximate the number of entries frequently used
-during the day.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBlogfile\fR \fIdebug-file-name\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies name of the file to which debug info should be written. Use
-\fB/dev/tty\fR for standard output.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmaximum-per-user-nscd\fR \fIvalue\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets the maximum number of per-user \fBnscd\fRs that can be created and managed
-by the main \fBnscd\fR daemon. The value is an integer.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnegative-time-to-live\fR \fIcachename value\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets the time-to-live for negative entries (unsuccessful queries) in the
-specified cache. \fIvalue\fR is in integer seconds. Can result in significant
-performance improvements if there are several files owned by uids (user IDs)
-not in system databases; should be kept small to reduce cache coherency
-problems.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBper-user-nscd-time-to-live\fR \fIvalue\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets the time-to-live value for a per-user \fBnscd\fR based on the last time
-the per-user \fBnscd\fR was active. The value is an integer that specifies a
-number of seconds.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpositive-time-to-live\fR \fIcachename value\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets the time-to-live for positive entries (successful queries) in the
-specified cache. \fIvalue\fR is in integer seconds. Larger values increase
-cache hit rates and reduce mean response times, but increase problems with
-cache coherence. Note that sites that push (update) NIS maps nightly can set
-the value to be the equivalent of 12 hours or more with very good performance
-implications.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsuggested-size\fR \fIcachename value\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets the suggested number of hash buckets in the specified cache. This
-parameter should be changed only if the number of entries in the cache exceeds
-the suggested size by more than a factor of four or five. Since this is the
-internal hash table size, \fIvalue\fR should remain a prime number for optimum
-efficiency.
-.sp
-This attribute is obsolete and will be silently ignored. \fBnscd\fR now
-automatically adjusts the hash table size.
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Availibility SUNWcsu
-_
-Interface Stability Committed
-.TE
-
-.SH SEE ALSO
-.LP
-\fBnscd\fR(1M), \fBauth_attr\fR(4), \fBbootparams\fR(4),
-\fBethers\fR(4), \fBexec_attr\fR(4), \fBgroup\fR(4), \fBhosts\fR(4),
-\fBnetmasks\fR(4), \fBnetworks\fR(4), \fBpasswd\fR(4), \fBprinters\fR(4),
-\fBprof_attr\fR(4), \fBproject\fR(4), \fBprotocols\fR(4), \fBrpc\fR(4),
-\fBservices\fR(4), \fBuser_attr\fR(4), \fBattributes\fR(5)
diff --git a/usr/src/man/man4/nsmbrc.4 b/usr/src/man/man4/nsmbrc.4
deleted file mode 100644
index 26bb380eb5..0000000000
--- a/usr/src/man/man4/nsmbrc.4
+++ /dev/null
@@ -1,415 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.\" Copyright 2018 Nexenta Systems, Inc. All rights reserved.
-.TH NSMBRC 4 "November 22, 2021"
-.SH NAME
-nsmbrc \- configuration file for Solaris CIFS client requests
-.SH SYNOPSIS
-.nf
-\fB$HOME/.nsmbrc\fR
-.fi
-
-.SH DESCRIPTION
-Global behavior of the Solaris CIFS client is defined by property values that
-are stored in the Service Management Facility (SMF). The \fB\&.nsmbrc\fR file
-can be used to customize the behavior of the Solaris CIFS client on a per-user
-basis. Settings in the \fB$HOME/.nsmbrc\fR file are used unless they have
-security implications.
-.sp
-.LP
-An authorized user can use the \fBsharectl\fR command to set global values for
-these properties in SMF. See \fBsharectl\fR(1M).
-.sp
-.LP
-A regular user can change the global values when granted the "SMBFS Management"
-rights profile in the \fB/etc/user_attr\fR file. See \fBuser_attr\fR(4) and
-\fBrbac\fR(5).
-.sp
-.LP
-The SMBFS library first reads from SMF and then the \fB$HOME/.nsmbrc\fR file
-when determining which policy to apply to a particular server, user, or share.
-\fB$HOME/.nsmbrc\fR entries take precedence with the exception of the
-\fBminauth\fR property value. For \fBminauth\fR, the strongest authentication
-level specified is used. Sections are applied so that more specific sections
-override less specific sections. Not all keywords are valid in all sections.
-.sp
-.LP
-The configuration file is comprised of these four section types. Each section
-can include zero or more properties and associated values. The sections also
-have a hierarchical relationship with each other, as shown by the order of the
-following list:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBDefault section.\fR Specifies the default property values to be used by all
-other sections unless specifically overridden.
-.sp
-The section name appears in the \fB\&.nsmbrc\fR file as \fB[default]\fR.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBServer section.\fR Specifies the property values to be used by sections that
-are related to the named server. These property values can be specifically
-overridden by a related user section or share section.
-.sp
-The section name appears in the \fB\&.nsmbrc\fR file as
-\fB[\fIserver-name\fR]\fR. \fIserver-name\fR must use uppercase characters to
-match.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBUser section.\fR Specifies the property values to be used by sections that
-are related to the named server and user. These property values can be
-specifically overridden by a related share section.
-.sp
-The section name appears in the \fB\&.nsmbrc\fR as
-\fB[\fIserver-name\fR:\fIusername\fR]\fR. Both \fIserver-name\fR and
-\fIusername\fR must use uppercase characters to match.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBShare section.\fR Specifies the property values to be used by sections that
-are related to the named server, user, and share.
-.sp
-The section name appears in the \fB\&.nsmbrc\fR as
-\fB[\fIserver-name\fR:\fIusername\fR:\fIshare-name\fR]\fR. Both
-\fIserver-name\fR and \fIusername\fR must use uppercase characters to match.
-.RE
-.sp
-.LP
-The end of each section is marked either by the start of a new section or by an
-end of file (EOF).
-.sp
-.LP
-The following list describes the properties and states in which sections they
-can be set:
-.sp
-.ne 2
-.na
-\fB\fBaddr\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the DNS name or IP address of the CIFS server. This property can only
-be set in a server section. If this property is specified, it must specify a
-value as there is no default.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdomain\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the Windows domain name to use when authenticating with a server. The
-default value is \fBWORKGROUP\fR. This property can only be set in the default
-and server sections.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBminauth\fR\fR
-.ad
-.sp .6
-.RS 4n
-Is the minimum authentication level required, which can be one of
-\fBkerberos\fR, \fBntlmv2\fR, \fBntlm\fR, \fBlm\fR, or \fBnone\fR. If
-\fBminauth\fR is set globally and in a user's \fB\&.nsmbrc\fR file, the
-stronger authentication setting are used whether set by the user or globally.
-This property can only be set in the default and server sections. The default
-value is \fBntlm\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmin_protocol\fR\fR
-.ad
-.sp .6
-.RS 4n
-Is the minimum SMB protocol level that will be negotiated,
-which must be one of: \fB1\fR, \fB2.1\fR
-This property can only be set in the default and server sections.
-The default value is \fB1\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmax_protocol\fR\fR
-.ad
-.sp .6
-.RS 4n
-Is the maximum SMB protocol level that will be negotiated,
-which must be one of: \fB1\fR, \fB2.1\fR
-This property can only be set in the default and server sections.
-The default value is \fB2.1\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnbns\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the DNS name or IP address of the NetBIOS/WINS name server. This
-property can \fBonly\fR be set by an administrator by using the \fBsharectl\fR
-command. This property can only be set in the default section. The default
-value is empty, \fBnbns=""\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnbns_broadcast\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies whether to perform NetBIOS/WINS broadcast lookups. Broadcast lookups
-are less secure than unicast lookups. To prevent broadcast lookups, set the
-value to \fBno\fR. This property has no effect if the \fBnbns_enable\fR
-property is set to \fBno\fR or \fBfalse\fR. This property can \fBonly\fR be set
-by an administrator by using the \fBsharectl\fR command. This property can only
-be set in the default section. Valid values are \fByes\fR, \fBtrue\fR,
-\fBno\fR, and \fBfalse\fR. The default value is \fByes\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnbns_enable\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies whether to perform NetBIOS/WINS name lookups. To force all lookups to
-be done through the name service switch (see \fBnsswitch.conf\fR(4)), set the
-value to \fBno\fR. This property can \fBonly\fR be set by an administrator by
-using the \fBsharectl\fR command. This property can only be set in the default
-section. Valid values are \fByes\fR, \fBtrue\fR, \fBno\fR, and \fBfalse\fR. The
-default value is \fByes\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpassword\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the password to use when authenticating a server. The \fBpassword\fR
-property value is used as long as the \fB\&.nsmbrc\fR file can \fBonly\fR be
-read and written by the owner. This property can be set in the default, server,
-user, and share sections.
-.sp
-If you assign the hashed password from the \fBsmbutil crypt\fR command to the
-\fBpassword\fR property, be sure to escape the special characters in the
-password.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsigning\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies whether communications are digitally signed by SMB security
-signatures for the Solaris CIFS client. This property can only be set in the
-default and server sections. Valid values are \fBdisabled\fR, \fBenabled\fR,
-and \fBrequired\fR. The default value is \fBdisabled\fR.
-.sp
-When set to \fBdisabled\fR, the client permits the use of SMB security
-signatures only if the server requires signing. In such an instance, the
-Solaris CIFS client ignores local property values.
-.sp
-When set to \fBenabled\fR, the client permits, but does not require, the use of
-SMB security signatures.
-.sp
-When set to \fBrequired\fR, the client requires the use of SMB security
-signatures. So, if SMB security signatures are disabled on a CIFS server and a
-client has signing required, the client cannot connect to that server.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBtimeout\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the CIFS request timeout. By default, the timeout is 15 seconds. This
-property can only be set in the default, server, and share sections.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBuser\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the user name to use when authenticating a server. The default value
-is the Solaris account name of the user performing the authentication. This
-property can only be set in the default and server sections.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBworkgroup\fR\fR
-.ad
-.sp .6
-.RS 4n
-Is supported for compatibility purposes and is a synonym for the \fBdomain\fR
-property. Use the \fBdomain\fR property instead.
-.RE
-
-.SH EXAMPLES
-The examples in this section show how to use the \fB\&.nsmbrc\fR file and the
-\fBsmbutil\fR command to configure the \fBexample.com\fR environment.
-.sp
-.LP
-The \fBexample.com\fR environment is described by means of these sections and
-settings:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The \fBdefault\fR section describes the default domain, which is called
-\fBMYDOMAIN\fR, and sets a default user of \fBMYUSER\fR. These default settings
-are inherited by other sections unless property values are overridden.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBFSERVER\fR is a server section that defines a server called
-\fBfserv.example.com\fR. It is part of the \fBSALES\fR domain.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBRSERVER\fR is a server section that defines a server called
-\fBrserv.example.com\fR that belongs to a new domain called \fBREMGROUP\fR.
-.RE
-.LP
-\fBExample 1 \fRUsing the \fB$HOME/.nsmbrc\fR Configuration File
-.sp
-.LP
-The following example shows how a user can configure the \fBexample.com\fR
-environment by creating the \fB\&.nsmbrc\fR file.
-
-.sp
-.LP
-All lines that begin with the \fB#\fR character are comments and are not
-parsed.
-
-.sp
-.in +2
-.nf
-# Configuration file for example.com
-# Specify the Windows account name to use everywhere.
-[default]
-domain=MYDOMAIN
-user=MYUSER
-
-# The 'FSERVER' is server in our domain.
-[FSERVER]
-addr=fserv.example.com
-
-# The 'RSERVER' is a server in another domain.
-[RSERVER]
-domain=REMGROUP
-addr=rserv.example.com
-.fi
-.in -2
-
-.LP
-\fBExample 2 \fRUsing the \fBsharectl\fR Command
-.sp
-.LP
-The following example shows how an authorized user can use \fBsharectl\fR
-commands to configure global settings for the \fBexample.com\fR environment in SMF.
-
-.sp
-.in +2
-.nf
-# \fBsharectl set -p section=default -p domain=MYDOMAIN \e
--p user=MYUSER smbfs\fR
-# \fBsharectl set -p section=FSERVER -p addr=fserv.example.com smbfs\fR
-# \fBsharectl set -p section=RSERVER -p domain=REMGROUP \e
--p addr=rserv.example.com smbfs\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRUsing the \fBsharectl\fR Command to Show Current Settings
-.sp
-.LP
-The following example shows how an authorized user can use the \fBsharectl
-get\fR command to view the global settings for \fBsmbfs\fR in SMF. The values
-shown are those set by the previous example.
-
-.sp
-.in +2
-.nf
-# \fBsharectl get smbfs\fR
-[default]
- domain=MYDOMAIN
- user=MYUSER
-[FSERVER]
- addr=fserv.example.com
-[RSERVER]
- domain=REMGROUP
- addr=rserv.example.com
-.fi
-.in -2
-.sp
-
-.SH FILES
-.ne 2
-.na
-\fB\fB$HOME/.nsmbrc\fR\fR
-.ad
-.sp .6
-.RS 4n
-User-settable mount point configuration file to store the description for each
-connection.
-.RE
-
-.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Committed
-.TE
-
-.SH SEE ALSO
-\fBsmbutil\fR(1), \fBmount_smbfs\fR(1M), \fBsharectl\fR(1M),
-\fBnsswitch.conf\fR(4), \fBuser_attr\fR(4), \fBattributes\fR(5), \fBrbac\fR(5),
-\fBsmbfs\fR(7FS)
-.SH NOTES
-By default, passwords stored in the \fB\&.nsmbrc\fR file are ignored unless
-\fBonly\fR the file owner has read and write permission.
diff --git a/usr/src/man/man4/nss.4 b/usr/src/man/man4/nss.4
deleted file mode 100644
index 1274b55b31..0000000000
--- a/usr/src/man/man4/nss.4
+++ /dev/null
@@ -1,80 +0,0 @@
-'\" te
-.\" Copyright (c) 2003, Sun Microsystems, Inc.
-.\" All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH NSS 4 "Feb 25, 2017"
-.SH NAME
-nss \- configuration file for initgroups
-.SH SYNOPSIS
-.LP
-.nf
-\fB/etc/default/nss\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fB/etc/default/nss\fR configuration file provides methods for
-\fBinitgroups\fR(3C) lookup method. The file also provides a method to disable
-address sorting by name lookup functions. The file controls the behavior of the
-name service switch routines outside of the source database mappings provided
-by the \fB/etc/nsswitch.conf\fR file.
-.sp
-.LP
-\fB/etc/default/nss\fR supports the following options:
-.sp
-.ne 2
-.na
-\fB\fBNETID_AUTHORITATIVE\fR\fR
-.ad
-.RS 23n
-Changes the behavior of the name service lookups to use the \fBnetid\fR table
-in response to the \fBinitgroups()\fR call. By default,
-\fBinitgroups()\fR uses the \fBgroup\fR table. When \fBNETID_AUTHORITATIVE\fR
-is set to TRUE, \fBinitgroups()\fR uses \fBnetid\fR as the source for
-supplementary groups rather than the \fBgroup\fR table.
-.sp
-The name service administrator must ensure that the \fBnetid\fR table contains
-valid supplementary group information for users. Not all name services can
-automatically keep the members listed in the \fBgroup\fR table in sync with the
-\fBnetid\fR table.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSORT_ADDRS\fR\fR
-.ad
-.RS 23n
-If this option is set to FALSE, the sorting of addresses is disabled on
-addresses that are returned by name lookup functions such as
-\fBinitgroups()\fR, \fBgethostbyname\fR(3NSL), \fBnetdir_getbyname\fR(3NSL),
-\fBgetaddrinfo\fR(3SOCKET), and \fBgetipnodebyname\fR(3SOCKET). Setting this
-option to FALSE is useful when the order of addresses returned by the
-nameserver needs to be maintained. To use the DNS round robin feature, for
-example, address sorting by name lookup functions should be disabled.
-.sp
-By default, address sorting is enabled.
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-.LP
-\fBgetaddrinfo\fR(3SOCKET), \fBgethostbyname\fR(3NSL),
-\fBgetipnodebyname\fR(3SOCKET), \fBinitgroups\fR(3C),
-\fBnetdir_getbyname\fR(3NSL), \fBnsswitch.conf\fR(4), \fBattributes\fR(5)
diff --git a/usr/src/man/man4/nsswitch.conf.4 b/usr/src/man/man4/nsswitch.conf.4
deleted file mode 100644
index ea46118b9d..0000000000
--- a/usr/src/man/man4/nsswitch.conf.4
+++ /dev/null
@@ -1,800 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH NSSWITCH.CONF 4 "Mar 6, 2017"
-.SH NAME
-nsswitch.conf \- configuration file for the name service switch
-.SH SYNOPSIS
-.LP
-.nf
-\fB/etc/nsswitch.conf\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-The operating system uses a number of databases of information about hosts,
-ipnodes, users (\fBpasswd\fR(4), \fBshadow\fR(4), and \fBuser_attr\fR(4)), and
-groups. Data for these can come from a variety of sources: hostnames and host
-addresses, for example, can be found in \fB/etc/hosts\fR, \fBNIS\fR,
-\fBLDAP\fR, \fBDNS\fR or Multicast \fBDNS\fR. Zero or more sources
-can be used for each database; the sources and their lookup order are specified
-in the \fB/etc/nsswitch.conf\fR file.
-.sp
-.LP
-The following databases use the \fBswitch\fR file:
-.sp
-
-.sp
-.TS
-c c
-l l .
-Database Used By
-\fBaliases\fR \fBsendmail\fR(1M)
-\fBauth_attr\fR \fBgetauthnam\fR(3SECDB)
-\fBautomount\fR \fBautomount\fR(1M)
-\fBbootparams\fR \fBrpc.bootparamd\fR(1M)
-\fBethers\fR \fBethers\fR(3SOCKET)
-\fBgroup\fR \fBgetgrnam\fR(3C)
-\fBhosts\fR T{
-\fBgethostbyname\fR(3NSL), \fBgetaddrinfo\fR(3SOCKET). See \fBInteraction with netconfig\fR.
-T}
-\fBipnodes\fR Same as \fBhosts\fR.
-\fBnetgroup\fR \fBinnetgr\fR(3C)
-\fBnetmasks\fR \fBifconfig\fR(1M)
-\fBnetworks\fR \fBgetnetbyname\fR(3SOCKET)
-\fBpasswd\fR T{
-\fBgetpwnam\fR(3C), \fBgetspnam\fR(3C), \fBgetusernam\fR(3SECDB)
-T}
-\fBprinters\fR T{
-\fBlp\fR(1), \fBlpstat\fR(1), \fBcancel\fR(1), \fBlpr\fR(1B), \fBlpq\fR(1B), \fBlprm\fR(1B), \fBin.lpd\fR(1M), \fBlpadmin\fR(1M), \fBlpget\fR(1M), \fBlpset\fR(1M)
-T}
-\fBprof_attr\fR \fBgetprofnam\fR(3SECDB), \fBgetexecprof\fR(3SECDB)
-\fBproject\fR T{
-\fBgetprojent\fR(3PROJECT), \fBgetdefaultproj\fR(3PROJECT), \fBinproj\fR(3PROJECT), \fBnewtask\fR(1), \fBsetproject\fR(3PROJECT)
-T}
-\fBprotocols\fR \fBgetprotobyname\fR(3SOCKET)
-\fBpublickey\fR \fBgetpublickey\fR(3NSL), \fBsecure_rpc\fR(3NSL)
-\fBrpc\fR \fBgetrpcbyname\fR(3NSL)
-\fBservices\fR \fBgetservbyname\fR(3SOCKET).
- See \fBInteraction with netconfig\fR.
-\fBuser_attr\fR \fBgetuserattr\fR(3SECDB)
-.TE
-
-.sp
-.LP
-The following sources can be used:
-.sp
-
-.sp
-.TS
-c c
-l l .
-Source Uses
-\fBfiles\fR T{
-\fB/etc/hosts\fR, \fB/etc/passwd\fR, \fB/etc/inet/ipnodes\fR, \fB/etc/shadow\fR, \fB/etc/security/auth_attr\fR, \fB/etc/user_attr\fR
-T}
-\fBnis\fR \fBNIS\fR(\fBYP\fR)
-\fBldap\fR \fBLDAP\fR
-\fBad\fR Active Directory
-\fBdns\fR T{
-Valid only for hosts and ipnodes. Uses the Internet Domain Name Service.
-T}
-\fBmdns\fR T{
-Valid only for hosts and ipnodes. Uses the Multicast Domain Name Service.
-T}
-\fBcompat\fR T{
-Valid only for \fBpasswd\fR and \fBgroup\fR. Implements \fB+\fR and \fB-.\fR See \fBInteraction with +/- syntax\fR.
-T}
-\fBuser\fR T{
-Valid only for printers. Implements support for \fB${HOME}/.printers\fR.
-T}
-.TE
-
-.sp
-.LP
-Note that \fB/etc/inet/ipnodes\fR is a symbolic link to \fB/etc/hosts\fR.
-.sp
-.LP
-There is an entry in \fB/etc/nsswitch.conf\fR for each database. Typically
-these entries are simple, such as \fBprotocols: files\fR. However, when
-multiple sources are specified, it is sometimes necessary to define precisely
-the circumstances under which each source is tried. A source can return one
-of the following codes:
-.sp
-
-.sp
-.TS
-c c
-l l .
-Status Meaning
-\fBSUCCESS\fR Requested database entry was found.
-\fBUNAVAIL\fR T{
-Source is not configured on this system or internal failure.
-T}
-\fBNOTFOUND\fR Source responded "\fBno such entry\fR"
-\fBTRYAGAIN\fR T{
-Source is busy or not responding, might respond to retries.
-T}
-.TE
-
-.sp
-.LP
-For each status code, two actions are possible:
-.sp
-
-.sp
-.TS
-c c
-l l .
-Action Meaning
-\fBcontinue\fR Try the next source in the list.
-\fBreturn\fR Return now.
-.TE
-
-.sp
-.LP
-Additionally, for \fBTRYAGAIN\fR only, the following actions are possible:
-.sp
-
-.sp
-.TS
-c c
-l l .
-Action Meaning
-\fBforever\fR Retry the current source forever.
-\fIn\fR T{
-Retry the current source \fIn\fR more times, where \fIn\fR is an integer between \fB0\fR and \fBMAX_INT\fR (that is, 2.14 billion). After \fIn\fR retries has been exhausted, the \fBTRYAGAIN\fR action transitions to \fBcontinue\fR, until a future request receives a response, at which time \fBTRYAGAIN\fR=\fIn\fR is restored.
-T}
-.TE
-
-.sp
-.LP
-The complete syntax of an entry is:
-.sp
-.in +2
-.nf
-<entry> ::= <database> ":" [<source> [<criteria>]]*
-<criteria> ::= "[" <criterion>+ "]"
-<criterion> ::= <status> "=" <action>
-<status> ::= "success" | "notfound" | "unavail" | "tryagain"
-.fi
-.in -2
-
-.sp
-.LP
-For every status except \fBTRYAGAIN\fR, the action syntax is:
-.sp
-.in +2
-.nf
-<action> ::= "return" | "continue"
-.fi
-.in -2
-
-.sp
-.LP
-For the \fBTRYAGAIN\fR status, the action syntax is:
-.sp
-.in +2
-.nf
-<action> ::= "return" | "continue" | "forever" | <n>
-<n> ::= 0...MAX_INT
-.fi
-.in -2
-
-.sp
-.LP
-Each entry occupies a single line in the file. Lines that are blank, or that
-start with white space, are ignored. Everything on a line following a \fB#\fR
-character is also ignored; the \fB#\fR character can begin anywhere in a line,
-to be used to begin comments. The <database> and <source> names are
-case-sensitive, but <action> and <status> names are case-insensitive.
-.sp
-.LP
-The library functions contain compiled-in default entries that are used if the
-appropriate entry in \fBnsswitch.conf\fR is absent or syntactically incorrect.
-.sp
-.LP
-The default criteria for \fBDNS\fR and the \fBNIS\fR server in "DNS-forwarding
-mode" is [\fBSUCCESS\fR=return \fBNOTFOUND\fR=continue \fBUNAVAIL\fR=continue
-\fBTRYAGAIN\fR=3].
-.sp
-.LP
-The default criteria for all other sources is [\fBSUCCESS\fR=return
-\fBNOTFOUND\fR=continue \fBUNAVAIL\fR=continue \fBTRYAGAIN\fR=forever].
-.sp
-.LP
-The default, or explicitly specified, criteria are meaningless following the
-last source in an entry; and they are ignored, since the action is always to
-return to the caller irrespective of the status code the source returns.
-.SS "Interaction with \fBnetconfig\fR"
-.LP
-In order to ensure that they all return consistent results,
-\fBgethostbyname\fR(3NSL), \fBgetaddrinfo\fR(3SOCKET),
-\fBgetservbyname\fR(3SOCKET), and \fBnetdir_getbyname\fR(3NSL) functions are
-all implemented in terms of the same internal library function. This function
-obtains the system-wide source lookup policy for \fBhosts\fR, \fBipnodes\fR,
-and \fBservices\fR based on the \fBinet\fR family entries in \fBnetconfig\fR(4)
-and uses the switch entries only if the \fBnetconfig\fR entries have a \fB-\fR
-(hyphen) in the last column for \fBnametoaddr\fR libraries. See the Notes
-section in \fBgethostbyname\fR(3NSL) and \fBgetservbyname\fR(3SOCKET) for
-details.
-.SS "Interaction with server in DNS-forwarding Mode"
-.LP
-The \fBNIS\fR (\fBYP\fR) server can be run in DNS-forwarding mode, where it
-forwards lookup requests to \fBDNS\fR for host-names and -addresses that do not
-exist in its database. In this case, specifying \fBnis\fR as a source for
-\fBhosts\fR is sufficient to get \fBDNS\fR lookups; \fBdns\fR need not be
-specified explicitly as a source.
-.SS "Interaction with Password Aging"
-.LP
-When password aging is turned on, only a limited set of possible name services
-are permitted for the \fBpasswd\fR: database in the \fB/etc/nsswitch.conf\fR
-file:
-.sp
-.ne 2
-.na
-\fBpasswd:\fR
-.ad
-.RS 18n
-files
-.RE
-
-.sp
-.ne 2
-.na
-\fBpasswd:\fR
-.ad
-.RS 18n
-files nis
-.RE
-
-.sp
-.ne 2
-.na
-\fBpasswd:\fR
-.ad
-.RS 18n
-files ldap
-.RE
-
-.sp
-.ne 2
-.na
-\fBpasswd:\fR
-.ad
-.RS 18n
-compat
-.RE
-
-.sp
-.ne 2
-.na
-\fBpasswd_compat:\fR
-.ad
-.RS 18n
-ldap
-.RE
-
-.sp
-.LP
-You can add the \fBad\fR keyword to any of the \fBpasswd\fR configurations
-listed above. However, you cannot use the \fBpasswd\fR command to change the
-password of an Active Directory (AD) user. If the \fBad\fR keyword is found in
-the \fBpasswd\fR entry during a password update operation, it is ignored. To
-update the password of an AD user, use the \fBkpasswd\fR(1) command.
-.sp
-.LP
-Any other settings causes the \fBpasswd\fR(1) command to fail when it attempts
-to change the password after expiration and prevents the user from logging in.
-These are the \fBonly\fR permitted settings when password aging has been turned
-on. Otherwise, you can work around incorrect \fBpasswd\fR: lines by using the
-\fB-r repository\fR argument to the \fBpasswd\fR(1) command and using \fBpasswd
--r repository\fR to override the \fBnsswitch.conf\fR settings and specify in
-which name service you want to modify your password.
-.SS "Interaction with +/- syntax"
-.LP
-Releases prior to SunOS 5.0 did not have the name service switch but did allow
-the user some policy control. In \fB/etc/passwd\fR one could have entries of
-the form \fI+user\fR (include the specified user from \fBNIS\fR passwd.byname),
-\fI-user\fR (exclude the specified user) and \fB+\fR (include everything,
-except excluded users, from \fBNIS\fR passwd.byname). The desired behavior was
-often \fBeverything in the file followed by everything in NIS\fR, expressed by
-a solitary \fB+\fR at the end of \fB/etc/passwd\fR. The switch provides an
-alternative for this case (\fBpasswd: files nis\fR) that does not require
-\fB+\fR entries in \fB/etc/passwd\fR and \fB/etc/shadow\fR (the latter is a new
-addition to SunOS 5.0, see \fBshadow\fR(4)).
-.sp
-.LP
-If this is not sufficient, the \fBNIS/YP\fR compatibility source provides full
-+/- semantics. It reads \fB/etc/passwd\fR for \fBgetpwnam\fR(3C) functions and
-\fB/etc/shadow\fR for \fBgetspnam\fR(3C) functions and, if it finds +/-
-entries, invokes an appropriate source. By default, the source is \fBnis\fR,
-but this can be overridden by specifying \fBldap\fR as the
-source for the pseudo-database \fBpasswd_compat\fR.
-.sp
-.LP
-Note that in compat mode, for every \fB/etc/passwd\fR entry, there must be a
-corresponding entry in the \fB/etc/shadow\fR file.
-.sp
-.LP
-The NIS/YP compatibility source also provides full +/- semantics for
-\fBgroup\fR; the relevant pseudo-database is \fBgroup_compat\fR.
-.SS "Useful Configurations"
-.LP
-The compiled-in default entries for all databases use \fBNIS (YP)\fR as the
-enterprise level name service and are identical to those in the default
-configuration of this file:
-.sp
-.ne 2
-.na
-\fBpasswd:\fR
-.ad
-.RS 15n
-files nis
-.RE
-
-.sp
-.ne 2
-.na
-\fBgroup:\fR
-.ad
-.RS 15n
-files nis
-.RE
-
-.sp
-.ne 2
-.na
-\fBhosts:\fR
-.ad
-.RS 15n
-nis [NOTFOUND=return] files
-.RE
-
-.sp
-.ne 2
-.na
-\fBipnodes:\fR
-.ad
-.RS 15n
-nis [NOTFOUND=return] files
-.RE
-
-.sp
-.ne 2
-.na
-\fBnetworks:\fR
-.ad
-.RS 15n
-nis [NOTFOUND=return] files
-.RE
-
-.sp
-.ne 2
-.na
-\fBprotocols:\fR
-.ad
-.RS 15n
-nis [NOTFOUND=return] files
-.RE
-
-.sp
-.ne 2
-.na
-\fBrpc:\fR
-.ad
-.RS 15n
-nis [NOTFOUND=return] files
-.RE
-
-.sp
-.ne 2
-.na
-\fBethers:\fR
-.ad
-.RS 15n
-nis [NOTFOUND=return] files
-.RE
-
-.sp
-.ne 2
-.na
-\fBnetmasks:\fR
-.ad
-.RS 15n
-nis [NOTFOUND=return] files
-.RE
-
-.sp
-.ne 2
-.na
-\fBbootparams:\fR
-.ad
-.RS 15n
-nis [NOTFOUND=return] files
-.RE
-
-.sp
-.ne 2
-.na
-\fBpublickey:\fR
-.ad
-.RS 15n
-nis [NOTFOUND=return] files
-.RE
-
-.sp
-.ne 2
-.na
-\fBnetgroup:\fR
-.ad
-.RS 15n
-nis
-.RE
-
-.sp
-.ne 2
-.na
-\fBautomount:\fR
-.ad
-.RS 15n
-files nis
-.RE
-
-.sp
-.ne 2
-.na
-\fBaliases:\fR
-.ad
-.RS 15n
-files nis
-.RE
-
-.sp
-.ne 2
-.na
-\fBservices:\fR
-.ad
-.RS 15n
-files nis
-.RE
-
-.sp
-.ne 2
-.na
-\fBprinters:\fR
-.ad
-.RS 15n
-user files nis
-.RE
-
-.sp
-.ne 2
-.na
-\fBauth_attr\fR
-.ad
-.RS 15n
-files nis
-.RE
-
-.sp
-.ne 2
-.na
-\fBprof_attr\fR
-.ad
-.RS 15n
-files nis
-.RE
-
-.sp
-.ne 2
-.na
-\fBproject\fR
-.ad
-.RS 15n
-files nis
-.RE
-
-.sp
-.LP
-Note that the \fBfiles\fR source for the \fBipnodes\fR and \fBhosts\fR
-databases is identical, as \fB/etc/inet/ipnodes\fR is a symbolic link to
-\fB/etc/hosts\fR. Because other sources for the \fBipnodes\fR and \fBhosts\fR
-databases are different, do not remove the \fBipnodes\fR line from the
-\fB/etc/nsswitch.conf\fR file.
-.sp
-.LP
-The policy \fBnis [NOTFOUND=return] files\fR implies: if \fBnis\fR is
-\fBUNAVAIL\fR, continue on to \fBfiles\fR, and if \fBnis\fR returns
-\fBNOTFOUND\fR, return to the caller. In other words, treat \fBnis\fR as the
-authoritative source of information and try \fBfiles\fR only if \fBnis\fR is
-down. This, and other policies listed in the default configuration above, are
-identical to the hard-wired policies in SunOS releases prior to 5.0.
-.sp
-.LP
-If compatibility with the +/- syntax for \fBpasswd\fR and \fBgroup\fR is
-required, simply modify the entries for \fBpasswd\fR and \fBgroup\fR to:
-.sp
-.ne 2
-.na
-\fBpasswd:\fR
-.ad
-.RS 11n
-compat
-.RE
-
-.sp
-.ne 2
-.na
-\fBgroup:\fR
-.ad
-.RS 11n
-compat
-.RE
-
-.sp
-.LP
-If \fBLDAP\fR is the enterprise level name service, the default configuration
-should be modified to use \fBldap\fR instead of \fBnis\fR for every database on
-client machines. The file \fB/etc/nsswitch.ldap\fR contains a sample
-configuration that can be copied to \fB/etc/nsswitch.conf\fR to set this
-policy.
-.sp
-.LP
-When using Active Directory, \fBdns\fR is required to perform hosts resolution.
-.sp
-.LP
-If the use of +/- syntax is desired in conjunction with \fBLDAP\fR, use the
-following four entries:
-.sp
-.ne 2
-.na
-\fBpasswd:\fR
-.ad
-.RS 18n
-compat
-.RE
-
-.sp
-.ne 2
-.na
-\fBpasswd_compat:\fR
-.ad
-.RS 18n
-ldap
-.RE
-
-.sp
-.ne 2
-.na
-\fBgroup:\fR
-.ad
-.RS 18n
-compat
-.RE
-
-.sp
-.ne 2
-.na
-\fBgroup_compat:\fR
-.ad
-.RS 18n
-ldap
-.RE
-
-.sp
-.LP
-In order to get information from the Internet Domain Name Service for hosts
-that are not listed in the enterprise level name service, such as
-\fBLDAP\fR, use the following configuration and set up the
-\fB/etc/resolv.conf\fR file (see \fBresolv.conf\fR(4) for more details):
-.sp
-.ne 2
-.na
-\fBhosts:\fR
-.ad
-.RS 10n
-ldap dns [NOTFOUND=return] files
-.RE
-
-.SS "Enumeration - \fBgetXXXent()\fR"
-.LP
-Many of the databases have enumeration functions: \fBpasswd\fR has
-\fBgetpwent()\fR, \fBhosts\fR has \fBgethostent()\fR, and so on. These were
-reasonable when the only source was \fBfiles\fR but often make little sense for
-hierarchically structured sources that contain large numbers of entries, much
-less for multiple sources. The interfaces are still provided and the
-implementations strive to provide reasonable results, but the data returned can
-be incomplete (enumeration for \fBhosts\fR is simply not supported by the
-\fBdns\fR source), inconsistent (if multiple sources are used), formatted in an
-unexpected fashion,
-or very expensive (enumerating a \fBpasswd\fR database of 5,000 users is
-probably a bad idea). Furthermore, multiple threads in the same process using
-the same reentrant enumeration function (\fBgetXXXent_r()\fR are supported
-beginning with SunOS 5.3) share the same enumeration position; if they
-interleave calls, they enumerate disjoint subsets of the same database.
-.sp
-.LP
-In general, the use of the enumeration functions is deprecated. In the case of
-\fBpasswd\fR, \fBshadow\fR, and \fBgroup\fR, it might sometimes be appropriate
-to use \fBfgetgrent()\fR, \fBfgetpwent()\fR, and \fBfgetspent()\fR (see
-\fBgetgrnam\fR(3C), \fBgetpwnam\fR(3C), and \fBgetspnam\fR(3C), respectively),
-which use only the \fBfiles\fR source.
-.SH FILES
-.LP
-A source named SSS is implemented by a shared object named \fBnss_SSS.so.1\fR
-that resides in \fB/usr/lib\fR.
-.sp
-.ne 2
-.na
-\fB\fB/etc/nsswitch.conf\fR\fR
-.ad
-.RS 29n
-Configuration file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/nss_compat.so.1\fR\fR
-.ad
-.RS 29n
-Implements \fBcompat\fR source.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/nss_dns.so.1\fR\fR
-.ad
-.RS 29n
-Implements \fBdns\fR source.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/nss_files.so.1\fR\fR
-.ad
-.RS 29n
-Implements \fBfiles\fR source.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/nss_mdns.so.1\fR\fR
-.ad
-.RS 29n
-Implements \fBmdns\fR source.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/nss_nis.so.1\fR\fR
-.ad
-.RS 29n
-Implements \fBnis\fR source.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/nss_ldap.so.1\fR\fR
-.ad
-.RS 29n
-Implements \fBldap\fR source.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/nss_ad.so.1\fR\fR
-.ad
-.RS 29n
-Implements ad source.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/nss_user.so.1\fR\fR
-.ad
-.RS 29n
-Implements \fBuser\fR source.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/netconfig\fR\fR
-.ad
-.RS 29n
-Configuration file for \fBnetdir\fR(3NSL) functions that redirects
-hosts/devices policy to the switch.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/nsswitch.files\fR\fR
-.ad
-.RS 29n
-Sample configuration file that uses \fBfiles\fR only.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/nsswitch.nis\fR\fR
-.ad
-.RS 29n
-Sample configuration file that uses \fBfiles\fR and \fBnis\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/nsswitch.ldap\fR\fR
-.ad
-.RS 29n
-Sample configuration file that uses \fBfiles\fR and \fBldap\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/nsswitch.ad\fR\fR
-.ad
-.RS 29n
-Sample configuration file that uses \fBfiles\fR and \fBad\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/nsswitch.dns\fR\fR
-.ad
-.RS 29n
-Sample configuration file that uses \fBfiles\fR, \fBdns\fR and \fBmdns\fR
-(\fBdns\fR and \fBmdns\fR only for hosts).
-.RE
-
-.SH SEE ALSO
-.LP
-\fBkpasswd\fR(1), \fBldap\fR(1), \fBnewtask\fR(1),
-\fBpasswd\fR(1), \fBautomount\fR(1M), \fBifconfig\fR(1M), \fBmdnsd\fR(1M),
-\fBrpc.bootparamd\fR(1M), \fBsendmail\fR(1M),
-\fBgetgrnam\fR(3C), \fBgetnetgrent\fR(3C),
-\fBgetpwnam\fR(3C), \fBgetspnam\fR(3C), \fBgethostbyname\fR(3NSL),
-\fBgetpublickey\fR(3NSL), \fBgetrpcbyname\fR(3NSL), \fBnetdir\fR(3NSL),
-\fBsecure_rpc\fR(3NSL), \fBgetprojent\fR(3PROJECT),
-\fBgetdefaultproj\fR(3PROJECT), \fBinproj\fR(3PROJECT),
-\fBsetproject\fR(3PROJECT), \fBgetauthnam\fR(3SECDB),
-\fBgetexecprof\fR(3SECDB), \fBgetprofnam\fR(3SECDB), \fBgetuserattr\fR(3SECDB),
-\fBgetusernam\fR(3SECDB), \fBethers\fR(3SOCKET), \fBgetaddrinfo\fR(3SOCKET),
-\fBgetnetbyname\fR(3SOCKET), \fBgetprotobyname\fR(3SOCKET),
-\fBgetservbyname\fR(3SOCKET), \fBauth_attr\fR(4), \fBhosts\fR(4),
-\fBnetconfig\fR(4), \fBproject\fR(4), \fBresolv.conf\fR(4), \fBuser_attr\fR(4),
-\fBypfiles\fR(4), \fBad\fR(5)
-.SH NOTES
-.LP
-Within each process that uses \fBnsswitch.conf\fR, the entire file is read only
-once; if the file is later changed, the process continues using the old
-configuration.
-.sp
-.LP
-Do not use the \fBldap\fR and \fBad\fR keywords together when the Solaris LDAP
-client uses schema mapping to talk to Active Directory.
-.sp
-.LP
-Misspelled names of sources and databases are treated as legitimate names of
-(most likely nonexistent) sources and databases.
-.sp
-.LP
-The following functions do \fBnot\fR use the switch: \fBfgetgrent\fR(3C),
-\fBfgetprojent\fR(3PROJECT), \fBfgetpwent\fR(3C), \fBfgetspent\fR(3C),
-\fBgetpw\fR(3C), \fBputpwent\fR(3C), \fBshadow\fR(4).
diff --git a/usr/src/man/man4/overlay_files.4 b/usr/src/man/man4/overlay_files.4
deleted file mode 100644
index b9e5387871..0000000000
--- a/usr/src/man/man4/overlay_files.4
+++ /dev/null
@@ -1,187 +0,0 @@
-.\"
-.\" This file and its contents are supplied under the terms of the
-.\" Common Development and Distribution License ("CDDL"), version 1.0.
-.\" You may only use this file in accordance with the terms of version
-.\" 1.0 of the CDDL.
-.\"
-.\" A full copy of the text of the CDDL should have accompanied this
-.\" source. A copy of the CDDL is also available via the Internet at
-.\" http://www.illumos.org/license/CDDL.
-.\"
-.\"
-.\" Copyright 2015, Joyent, Inc.
-.\"
-.Dd Apr 13, 2015
-.Dt OVERLAY_FILES 4
-.Os
-.Sh NAME
-.Nm overlay_files
-.Nd Overlay files plugin file format
-.Sh DESCRIPTION
-The
-.Sy files
-plugin provides a means for a dynamic overlay where the destinations are
-determined based on a static description contained in a
-.Sy JSON
-file.
-This manual describes the format of the file used by the
-.Sy files/config
-property.
-To create and manage overlays with the
-.Sy files
-plugin, use
-.Xr dladm 1M .
-For more information on overlays, see
-.Xr overlay 5 .
-.Pp
-Using the
-.Sy files
-module, a static and simple overlay network can be created.
-This network does not support the use of
-.Em broadcast
-or
-.Em multicast
-traffic.
-Both ARP and NDP traffic are proxied by the plugin itself.
-In addition, the plugin allows for DHCP.
-Instead of providing a traditional DHCP proxy, when an initial DHCP broadcast
-goes out to a broadcast address, it will get rewritten to target a specific MAC
-address.
-The
-.Sy files
-plugin is useful as proof of concept and for simple static networks
-where addresses do not need to be reconfigured.
-If more advanced topologies or more streamlined updates are required, consider
-a different plugin.
-.Pp
-The file format is encoded as a series of
-.Sy JSON
-objects.
-Each object has a key, which is a MAC address on the
-.Sy overlay
-network.
-It has multiple values, some required, some optional, which describe various
-properties.
-The valid properties are:
-.Bl -hang -width Ds
-.It Sy ip
-.Bd -filled -compact
-The
-.Sy ip
-key indicates the IP address on the
-.Sy underlay
-network that houses the MAC address in question.
-Packets directed for the MAC address will be encapsulated and set to this
-address.
-This field is required.
-.Pp
-The value is a
-.Em JSON String .
-Both IPv4 and IPv6 addresses are supported and should be written out in their
-traditional forms.
-Follow the guidelines for writing addresses in
-.Xr inet_aton 3SOCKET .
-.Ed
-.It Sy port
-.Bd -filled -compact
-The
-.Sy port
-key indicates the port on the
-.Sy underlay
-network that houses the MAC address in question.
-This property is required if the encapsulation module requires a port for its
-destination.
-The value is a
-.Em JSON Number .
-.Ed
-.It Sy arp
-.Bd -filled -compact
-The
-.Sy arp
-key stores the IPv4 address that corresponds to this MAC address on the
-.Sy overlay
-network.
-This will be used to respond to ARP queries that would traditionally have been
-received by the OS kernel.
-If this address is not present, no IPv4 packets directed to this IP address will
-be received by the network interface that has this MAC address, regardless of
-what is configured on top of it.
-.Pp
-The value is a
-.Em JSON String
-and should be written out following the guidelines for IPv4 addresses in
-.Xr inet_aton 3SOCKET .
-.Ed
-.It Sy ndp
-.Bd -filled -compact
-The
-.Sy ndp
-key stores the IPv6 address that corresponds to this MAC address on the
-.Sy overlay
-network.
-This will be used to respond to NDP queries that would traditionally have been
-received by the OS kernel.
-If this address is not present, no IPv6 packets directed to this IP address will
-be received by the network interface that has this MAC address, regardless of
-what is configured on top of it.
-.Pp
-The value is a
-.Em JSON String
-and should be written out following the guidelines for IPv6 addresses in
-.Xr inet_aton 3SOCKET .
-.Ed
-.It Sy dhcp-proxy
-.Bd -filled -compact
-The
-.Sy dhcp-proxy
-key stores a MAC address that DHCP messages directed to a broadcast address get
-rewritten to be sent to.
-This can be viewed as a form of proxy DHCP, but is different in mechanism from a
-traditional proxy.
-The value is a
-.Em JSON String
-and should be written as a traditional MAC address string as described by
-.Xr ether_aton 3SOCKET .
-.Ed
-.El
-.Sh EXAMPLES
-.Sy Example 1
-Sample configuration file
-.Pp
-This configuration file provides information for three different MAC
-addresses.
-Each MAC address has an entry which describes what its IPv4
-and IPv6 address is, as well as the IP address and port of the host on
-the underlay network.
-Finally, one host has a DHCP proxy entry to demonstrate how one might
-configure DHCP.
-.Bd -literal -offset indent
-{
- "de:ad:be:ef:00:00": {
- "arp": "10.55.55.2",
- "ip": "10.88.88.69",
- "ndp": "fe80::3",
- "port": 4789
- },
- "de:ad:be:ef:00:01": {
- "arp": "10.55.55.3",
- "dhcp-proxy": "de:ad:be:ef:00:00",
- "ip": "10.88.88.70",
- "ndp": "fe80::4",
- "port": 4789
- },
- "de:ad:be:ef:00:02": {
- "arp": "10.55.55.4",
- "ip": "10.88.88.71",
- "ndp": "fe80::5",
- "port": 4789
- }
-}
-.Ed
-.Sh STABILITY
-This file format is
-.Sy committed ;
-however, keys that are not listed here are reserved for future use.
-.Sh SEE ALSO
-.Xr dladm 1M ,
-.Xr overlay 5
diff --git a/usr/src/man/man4/packingrules.4 b/usr/src/man/man4/packingrules.4
deleted file mode 100644
index bc8c891541..0000000000
--- a/usr/src/man/man4/packingrules.4
+++ /dev/null
@@ -1,182 +0,0 @@
-'\" te
-.\" Copyright (c) 1996 Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 2015 Nexenta Systems, Inc. All rights reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PACKINGRULES 4 "Sep 8, 2015"
-.SH NAME
-packingrules \- packing rules file for filesync
-.SH SYNOPSIS
-.LP
-.nf
-\fB$\fR\fBHOME\fR\fB/.packingrules\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-\fB$\fR\fBHOME\fR\fB/.packingrules\fR is a packing rules file for
-\fBfilesync\fR. \fB$\fR\fBHOME\fR\fB/.packingrules\fR
-contains a list of directories and files that are to be packed and
-synchronized. It also contains a list of directories and files that are to be
-specifically excluded from packing and synchronization. See \fBfilesync\fR(1).
-.LP
-The \fB$\fR\fBHOME\fR\fB/.packingrules\fR file is automatically created if
-users invoke \fBfilesync\fR with filename arguments. By using \fBfilesync\fR
-options, users can augment the packing rules in
-\fB$\fR\fBHOME\fR\fB/.packingrules\fR.
-.LP
-Many users choose to manually create the packing rules file and edit it by
-hand. Users can edit \fB$\fR\fBHOME\fR\fB/.packingrules\fR (using any editor)
-to permanently change the \fB$\fR\fBHOME\fR\fB/.packingrules\fR file, or to
-gain access to more powerful options that are not available from the command
-line (such as \fBIGNORE\fR commands). It is much easier to enter complex
-wildcard expressions by editing the \fB$\fR\fBHOME\fR\fB/.packingrules\fR file.
-.LP
-Blank lines and lines that begin with a pound sign (`\fB#\fR') are ignored.
-.LP
-Any line can be continued by placing a backslash (`\fB\e\fR\&') immediately
-before the \fBNEWLINE.\fR
-.LP
-All other lines in the \fB$\fR\fBHOME\fR\fB/.packingrules\fR file have one of
-the following formats:
-.sp
-.ne 2
-.na
-\fB\fBPACKINGRULES\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fImajor\fR. \fIminor\fR. This line is not actually required, but it should be
-the first line of every packing rules file. This line identifies the packing
-rules file for the \fBfile\fR(1) command and specifies a format version
-number. The current version number is 1.1. See \fBfile\fR(1).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBBASE\fR \fIdirectory-1\fR [\fIdirectory-2\fR]\fR
-.ad
-.sp .6
-.RS 4n
-This line identifies a directory (or pair of directories) under which files
-should be packed and synchronized. At least one directory name must be
-specified. For rules that are to be used by \fBfilesync\fR a second directory
-name (where the copies are to be kept) must also be specified. The arguments
-must be fully qualified path names, and may include environment variables.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBLIST\fR \fIname\fR \|.\|.\|.\fR
-.ad
-.sp .6
-.RS 4n
-This line enumerates a list of files and sub-directories (beneath the current
-\fBBASE)\fR that are to be kept synchronized. This specification is recursive,
-in that specifying the name of a directory automatically includes all files and
-subdirectories it contains. Regular expressions (as described in \fBglob\fR
-and \fBgmatch\fR) are permitted. See \fBglob\fR(1) and \fBgmatch\fR(3GEN).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBIGNORE\fR \fIname\fR \|.\|.\|.\fR
-.ad
-.sp .6
-.RS 4n
-This line enumerates a list of files that are not to be kept synchronized.
-Regular expressions (using \fBglob\fR and \fBgmatch\fR) are permitted.
-.RE
-
-.sp
-.LP
-There are important differences between the arguments to \fBLIST\fR and
-\fBIGNORE\fR statements. The arguments to a \fBLIST\fR statement can contain
-slashes and are interpreted as file names relative to the \fBBASE\fR
-directories. The arguments to an \fBIGNORE\fR statement are simpler names or
-expressions that cannot contain slashes. An \fBIGNORE\fR statement will not
-override a \fBLIST\fR statement. \fBIGNORE\fR statements only exclude files
-that are found beneath \fBLISTed\fR directories.
-.sp
-.LP
-If the first name argument to a \fBLIST\fR statement begins with an
-exclamation point (`\fB!\fR'), the remainder of the statement will be executed
-as a command. The command will be run in the current \fBBASE\fR directory. The
-output of the command will be treated as a list of newline separated file
-names to be packed/synchronized. The resulting file names will be interpreted
-relative to the enclosing \fBBASE\fR directory.
-.sp
-.LP
-If the first name argument to an \fBIGNORE\fR statement begins with an
-exclamation point (`\fB!\fR'), the remainder of the statement will be executed
-as a command. The command will be run in the current \fBBASE\fR directory. The
-command will be expected to figure out which names should not be synchronized.
-The output of the command will be treated as a list of newline separated file
-names that should be excluded from the packing and synchronization list.
-.sp
-.LP
-Commands will be broken into distinct arguments and run directly with \fBsh
-\fR\fB-c\fR. Blanks can be embedded in an argument by escaping them with a
-backslash (`\fB\e\fR\&') or enclosing the argument in double quotes (`
-\fB"\fR '). Double quotes can be passed in arguments by escaping the double quotes with
-a backslash (`\fB\e\fR\&').
-.sp
-.LP
-\fBLIST\fR lines only apply to the \fBBASE\fR statement that precedes them.
-\fBIGNORE\fR lines can appear before any \fBBASE\fR statement (in which case
-they apply to all \fBBASEs)\fR or after a \fBBASE\fR statement (in which case
-they only apply to the \fBBASE\fR that precedes them). Any number of these
-statements can occur in any combination. The order is not important.
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRA sample \fB$\fR\fBHOME\fR\fB\&.packingrules\fR file.
-.sp
-.LP
-The use of these statements is illustrated in the following
-\fB$\fR\fBHOME\fR\fB\&.packingrules\fR file.
-
-.sp
-.in +2
-.nf
-#
-# junk files, not worth copying
-#
-IGNORE core *.o *.bak *%
-#
-# most of the stuff I want to keep in sync is in my $HOME
-#
-BASE /net/bigserver/export/home/myname $HOME
-# everything in my work sub-directory should be maintained
-LIST work
-# a few of my favorite mail boxes should be replicated
-LIST m/incoming
-LIST m/action
-LIST m/pending
-#
-# I like to carry around a couple of project directories
-# but skip all the postscript output
-#
-BASE /net/bigserver/export/projects $HOME/projects
-LIST poindexter epiphany
-IGNORE *.ps
-#
-# the foonly package should always be kept on every machine
-#
-BASE /net/bigserver/opt/foonly /opt/foonly
-LIST !cat .packinglist
-#
-# and the latest executables for the standard build environment
-#
-BASE /net/bigserver/export/buildenv $HOME/buildenv
-LIST !find . -type f -a -perm -111 -a -print
-.fi
-.in -2
-.sp
-
-.SH SEE ALSO
-.LP
-\fBfile\fR(1), \fBfilesync\fR(1)
diff --git a/usr/src/man/man4/pam.conf.4 b/usr/src/man/man4/pam.conf.4
deleted file mode 100644
index 959030f496..0000000000
--- a/usr/src/man/man4/pam.conf.4
+++ /dev/null
@@ -1,462 +0,0 @@
-'\" te
-.\" Copyright (C) 2006, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PAM.CONF 4 "Mar 4, 2017"
-.SH NAME
-pam.conf \- configuration file for pluggable authentication modules
-.SH SYNOPSIS
-.LP
-.nf
-\fB/etc/pam.conf\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-\fBpam.conf\fR is the configuration file for the Pluggable Authentication
-Module architecture, or \fBPAM\fR. A \fBPAM\fR module provides functionality
-for one or more of four possible services: authentication, account management,
-session management, and password management.
-.sp
-.ne 2
-.na
-\fBauthentication service module\fR
-.ad
-.sp .6
-.RS 4n
-Provides functionality to authenticate a user and set up user credentials.
-.RE
-
-.sp
-.ne 2
-.na
-\fBaccount management module\fR
-.ad
-.sp .6
-.RS 4n
-Provides functionality to determine if the current user's account is valid.
-This includes checking for password and account expiration, as well as
-verifying access hour restrictions.
-.RE
-
-.sp
-.ne 2
-.na
-\fBsession management module\fR
-.ad
-.sp .6
-.RS 4n
-Provides functionality to set up and terminate login sessions.
-.RE
-
-.sp
-.ne 2
-.na
-\fBpassword management module\fR
-.ad
-.sp .6
-.RS 4n
-Provides functionality to change a user's authentication token or password.
-.RE
-
-.sp
-.LP
-Each of the four service modules can be implemented as a shared library object
-which can be referenced in the \fBpam.conf\fR configuration file.
-.SS "Simplified pam.conf Configuration File"
-.LP
-The \fBpam.conf\fR file contains a listing of services. Each service is paired
-with a corresponding service module. When a service is requested, its
-associated module is invoked. Each entry may be a maximum of 256 characters,
-including the end of line, and has the following format:
-.sp
-.in +2
-.nf
-\fIservice_name module_type control_flag module_path options\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The following is an example of a \fBpam.conf\fR configuration file with support
-for authentication, account management, session management and password
-management modules (See the \fBpam.conf\fR file that is shipped with your
-system for the contents of this file):
-.sp
-.in +2
-.nf
-login auth requisite pam_authtok_get.so.1
-login auth required pam_dhkeys.so.1
-login auth required pam_unix_auth.so.1
-login auth required pam_dial_auth.so.1
-
-other account requisite pam_roles.so.1
-other account required pam_unix_account.so.1
-
-other session required pam_unix_session.so.1
-
-other password required pam_dhkeys.so.1
-other password requisite pam_authtok_get.so.1
-other password requisite pam_authtok_check.so.1
-other password required pam_authtok_store.so.1
-.fi
-.in -2
-
-.sp
-.LP
-\fIservice_name\fR denotes the service (for example, \fBlogin\fR,
-\fBdtlogin\fR, or \fBrlogin\fR).
-.sp
-.LP
-The keyword, "\fBother\fR," indicates the module that all other applications
-which have not been specified should use. The "\fBother\fR" keyword can also be
-used if all services of the same \fImodule_type\fR have the same requirements.
-.sp
-.LP
-In the example, since all of the services use the same session module, they
-could have been replaced by a single \fBother\fR line.
-.sp
-.LP
-\fImodule_type\fR denotes the service module type: authentication (\fBauth\fR),
-account management (\fBaccount\fR), session management (\fBsession\fR), or
-password management (\fBpassword\fR).
-.sp
-.LP
-The \fIcontrol_flag\fR field determines the behavior of stacking.
-.sp
-.LP
-The \fImodule_path\fR field specifies the relative pathname to a shared library
-object, or an included \fBPAM\fR configuration file, which implements the
-service functionality. If the pathname is not absolute, shared library objects
-are assumed to be relative to \fB/usr/lib/security/$ISA/\fR, and included
-\fBPAM\fR configuration files are assumed to be relative to
-\fB/usr/lib/security/\fR.
-.sp
-.LP
-The \fBISA\fR token is replaced by an implementation defined directory name
-which defines the path relative to the calling program's instruction set
-architecture.
-.sp
-.LP
-The \fIoptions\fR field is used by the \fBPAM\fR framework layer to pass module
-specific options to the modules. It is up to the module to parse and interpret
-the options.
-.sp
-.LP
-This field can be used by the modules to turn on debugging or to pass any
-module specific parameters such as a \fBTIMEOUT\fR value. The options supported
-by the modules are documented in their respective manual pages.
-.SS "Integrating Multiple Authentication Services With Stacking"
-.LP
-When a \fIservice_name\fR of the same \fImodule_type\fR is defined more than
-once, the service is said to be stacked. Each module referenced in the
-\fImodule_path\fR for that service is then processed in the order that it
-occurs in the configuration file. The \fIcontrol_flag\fR field specifies the
-continuation and failure semantics of the modules, and can contain one of the
-following values:
-.sp
-.ne 2
-.na
-\fB\fBbinding\fR\fR
-.ad
-.RS 14n
-If the service module returns success and no preceding \fBrequired\fR modules
-returned failures, immediately return success without calling any subsequent
-modules. If a failure is returned, treat the failure as a \fBrequired\fR module
-failure, and continue to process the \fBPAM\fR stack.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBinclude\fR\fR
-.ad
-.RS 14n
-Process the lines from the \fBPAM\fR configuration file that is specified in
-the \fImodule_path\fR at this point in the \fBPAM\fR stack. The ``\fBother\fR''
-keyword is used if the specified service_name is not found. 32 levels of
-included \fBPAM\fR configuration files are supported. Any options are ignored.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBoptional\fR\fR
-.ad
-.RS 14n
-If the service module returns success, record the success, and continue to
-process the \fBPAM\fR stack. If a failure is returned, and it is the first
-\fBoptional\fR module failure, save the failure code as an \fBoptional\fR
-failure. Continue to process the \fBPAM\fR stack.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrequired\fR\fR
-.ad
-.RS 14n
-If the service module returns success, record the success, and continue to
-process the \fBPAM\fR stack. If a failure is returned, and it is the first
-\fBrequired\fR failure, save the failure code as a \fBrequired\fR failure.
-Continue to process the \fBPAM\fR stack.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrequisite\fR\fR
-.ad
-.RS 14n
-If the service module returns success, record the success, and continue to
-process the \fBPAM\fR stack. If a failure is returned, immediately return the
-first non-optional failure value recorded without calling any subsequent
-modules. That is, return this failure unless a previous required service module
-failed. If a previous required service module failed, then return the first of
-those values.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsufficient\fR\fR
-.ad
-.RS 14n
-If the service module return success and no preceding required modules returned
-failures, immediately return success without calling any subsequent modules. If
-a failure is returned, treat the failure as an optional module failure, and
-continue to process the \fBPAM\fR stack.
-.RE
-
-.sp
-.LP
-If the \fBPAM\fR stack runs to completion, that is, neither a \fBrequisite\fR
-module failed, nor a \fBbinding\fR or \fBsufficient\fR module success stops it,
-success is returned if no required modules failed and at least one required,
-requisite, optional module succeeded. If no module succeeded and a required or
-binding module failed, the first of those errors is returned. If no required or
-binding module failed and an optional module failed, the first of the option
-module errors is returned. If no module in the stack succeeded or failed, that
-is, all modules returned an ignore status, a default error based on module
-type, for example, "User account expired," is returned.
-.sp
-.LP
-All errors in \fBpam.conf\fR entries are logged to \fBsyslog\fR as
-\fBLOG_AUTH\fR | \fBLOG_ERR\fR errors. The use of a service with an error noted
-in the \fBpam.conf\fR entry for that service will fail. The system
-administrator will need to correct the noted errors before that service may be
-used. If no services are available or the \fBpam.conf\fR file is missing, the
-system administrator may enter system maintenance mode to correct or restore
-the file.
-.sp
-.LP
-The following is a sample configuration file that stacks the \fBsu\fR,
-\fBlogin\fR, and \fBrlogin\fR services.
-.sp
-.in +2
-.nf
-su auth required pam_inhouse.so.1
-su auth requisite pam_authtok_get.so.1
-su auth required pam_dhkeys.so.1
-su auth required pam_unix_auth.so.1
-
-login auth requisite pam_authtok_get.so.1
-login auth required pam_dhkeys.so.1
-login auth required pam_unix_auth.so.1
-login auth required pam_dial_auth.so.1
-login auth optional pam_inhouse.so.1
-
-rlogin auth sufficient pam_rhosts_auth.so.1
-rlogin auth requisite pam_authtok_get.so.1
-rlogin auth required pam_dhkeys.so.1
-rlogin auth required pam_unix_auth.so.1
-.fi
-.in -2
-
-.sp
-.LP
-In the case of \fBsu\fR, the user is authenticated by the \fBinhouse\fR and
-\fBauthtok_get\fR, \fBdhkeys\fR, and \fBunix_auth\fR authentication modules.
-Because the \fBinhouse\fR and the other authentication modules are
-\fBrequired\fR and \fBrequisite\fR, respectively, an error is returned back to
-the application if any module fails. In addition, if the \fBrequisite\fR
-authentication (\fBpam_authtok_get\fR authentication) fails, the other
-authentication modules are never invoked, and the error is returned immediately
-back to the application.
-.sp
-.LP
-In the case of \fBlogin\fR, the \fBrequired\fR keyword for \fIcontrol_flag\fR
-requires that the user be allowed to login only if the user is authenticated by
-all the service modules. If \fBpam_unix_auth\fR authentication fails, control
-continues to proceed down the stack, and the \fBinhouse\fR authentication
-module is invoked. \fBinhouse\fR authentication is optional by virtue of the
-optional keyword in the \fIcontrol_flag\fR field. The user can still log in
-even if \fBinhouse\fR authentication fails, assuming the modules stacked above
-succeeded.
-.sp
-.LP
-In the case of \fBrlogin\fR, the \fBsufficient\fR keyword for
-\fIcontrol_flag\fR specifies that if the \fBrhosts\fR authentication check
-succeeds, then \fBPAM\fR should return success to \fBrlogin\fR and \fBrlogin\fR
-should not prompt the user for a password. The other authentication modules,
-which are in the stack, will only be invoked if the \fBrhosts\fR check fails.
-This gives the system administrator the flexibility to determine if
-\fBrhosts\fR alone is sufficient enough to authenticate a remote user.
-.sp
-.LP
-Some modules return \fBPAM_IGNORE\fR in certain situations. In these cases the
-\fBPAM\fR framework ignores the entire entry in \fBpam.conf\fR regardless of
-whether or not it is \fBbinding\fR, \fBrequisite\fR, \fBrequired\fR,
-\fBoptional\fR, or \fBsufficient\fR.
-.SS "Utilities and Files"
-.LP
-The specific service names and module types for each service should be
-documented in the man page for that service. For instance, the \fBsshd\fR(1M)
-man page lists all of the \fBPAM\fR service names and module types for the
-\fBsshd\fR command.
-.sp
-.LP
-The \fBPAM\fR configuration file does not dictate either the name or the
-location of the service specific modules. The convention, however, is the
-following:
-.sp
-.ne 2
-.na
-\fB\fBpam_module_name.so.x\fR\fR
-.ad
-.RS 29n
-File that implements various function of specific authentication services. As
-the relative pathname specified, \fB/usr/lib/security/$ISA\fR is prepended to
-it.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/pam.conf\fR\fR
-.ad
-.RS 29n
-Configuration file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/$ISA/libpam.so.1\fR\fR
-.ad
-.RS 29n
-File that implements the \fBPAM\fR framework library
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRUsing the include control flag
-.sp
-.LP
-The following example collects the common Unix modules into a single file to be
-included as needed in the example of a \fBpam.conf\fR file. The common Unix
-module file is named \fBunix_common\fR and consists of:
-
-.sp
-.in +2
-.nf
-OTHER auth requisite pam_authtok_get.so.1
-OTHER auth required pam_dhkeys.so.1
-OTHER auth required pam_unix_auth.so.1
-OTHER auth required pam_unix_cred.so.1
-OTHER account requisite pam_roles.so.1
-OTHER account required pam_unix_account.so.1
-OTHER session required pam_unix_session.so.1
-OTHER password required pam_dhkeys.so.1
-OTHER password requisite pam_authtok_get.so.1
-OTHER password requisite pam_authtok_check.so.1
-OTHER password required pam_authtok_store.so.1
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The \fBpam.conf\fR file and consists of:
-
-.sp
-.in +2
-.nf
-# Authentication management
-#
-# login service (explicit because of pam_dial_auth)
-#
-login auth include unix_common
-login auth required pam_dial_auth.so.1
-#
-# rlogin service (explicit because of pam_rhost_auth)
-#
-rlogin auth sufficient pam_rhosts_auth.so.1
-rlogin auth include unix_common
-#
-# Default definitions for Authentication management
-# Used when service name is not explicitly mentioned
-#
-OTHER auth include unix_common
-#
-# Default definition for Account management
-# Used when service name is not explicitly mentioned
-#
-OTHER account include unix_common
-#
-# Default definition for Session management
-# Used when service name is not explicitly mentioned
-#
-OTHER session include unix_common
-#
-# Default definition for Password management
-# Used when service name is not explicitly mentioned
-#
-OTHER password include unix_common
-.fi
-.in -2
-.sp
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability See Below.
-.TE
-
-.sp
-.LP
-The format is Stable. The contents has no stability attributes.
-.SH SEE ALSO
-.LP
-\fBlogin\fR(1), \fBpasswd\fR(1), \fBin.rlogind\fR(1M),
-\fBin.rshd\fR(1M), \fBin.telnetd\fR(1M), \fBin.uucpd\fR(1M), \fBinit\fR(1M),
-\fBsac\fR(1M), \fBttymon\fR(1M), \fBsu\fR(1M),
-\fBpam\fR(3PAM), \fBsyslog\fR(3C), \fBlibpam\fR(3LIB), \fBattributes\fR(5),
-\fBenviron\fR(5), \fBpam_authtok_check\fR(5), \fBpam_authtok_get\fR(5),
-\fBpam_authtok_store\fR(5), \fBpam_dhkeys\fR(5), \fBpam_krb5\fR(5),
-\fBpam_passwd_auth\fR(5), \fBpam_unix_account\fR(5), \fBpam_unix_auth\fR(5),
-\fBpam_unix_session\fR(5)
-.SH NOTES
-.LP
-The \fBpam_unix\fR module is no longer supported. Similar functionality is
-provided by \fBpam_authtok_check\fR(5), \fBpam_authtok_get\fR(5),
-\fBpam_authtok_store\fR(5), \fBpam_dhkeys\fR(5), \fBpam_passwd_auth\fR(5),
-\fBpam_unix_account\fR(5), \fBpam_unix_auth\fR(5), and
-\fBpam_unix_session\fR(5).
-.sp
-.LP
-With the removal of the \fBpam_unix\fR module, the SunOS delivered PAM service
-modules no longer need or support the "\fBuse_first_pass\fR" or
-"\fBtry_first_pass\fR" options. This functionality is provided by stacking
-\fBpam_authtok_get\fR(5) above a module that requires a password.
diff --git a/usr/src/man/man4/passwd.4 b/usr/src/man/man4/passwd.4
deleted file mode 100644
index 168afb7c54..0000000000
--- a/usr/src/man/man4/passwd.4
+++ /dev/null
@@ -1,347 +0,0 @@
-'\" te
-.\" Copyright (c) 2013 Gary Mills
-.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PASSWD 4 "Feb 25, 2017"
-.SH NAME
-passwd \- password file
-.SH SYNOPSIS
-.LP
-.nf
-\fB/etc/passwd\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-The file \fB/etc/passwd\fR is a local source of information about users'
-accounts. The password file can be used in conjunction with other naming
-sources, such as the \fBNIS\fR maps \fBpasswd.byname\fR and \fBpasswd.bygid\fR,
-or password data stored on an LDAP
-server. Programs use the \fBgetpwnam\fR(3C) routines to access this
-information.
-.sp
-.LP
-Each \fBpasswd\fR entry is a single line of the form:
-.sp
-.in +2
-.nf
-\fIusername\fR\fB:\fR\fIpassword\fR\fB:\fR\fIuid\fR\fB:\fR
-\fIgid\fR\fB:\fR\fIgcos-field\fR\fB:\fR\fIhome-dir\fR\fB:\fR
-\fIlogin-shell\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-where
-.sp
-.ne 2
-.na
-\fB\fIusername\fR\fR
-.ad
-.RS 15n
-is the user's login name.
-.sp
-The login (\fBlogin\fR) and role (\fBrole\fR) fields accept a string of no more
-than 32 bytes consisting of characters from the set of alphabetic
-characters, numeric characters, period (\fB\&.\fR), underscore (\fB_\fR), and
-hyphen (\fB-\fR). The first character should be alphabetic and the field should
-contain at least one lower case alphabetic character. A warning message is
-displayed if these restrictions are not met.
-.sp
-The \fBlogin\fR and \fBrole\fR fields must contain at least one character and
-must not contain a colon (\fB:\fR) or a newline (\fB\en\fR).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIpassword\fR\fR
-.ad
-.RS 15n
-is an empty field. The encrypted password for the user is in the corresponding
-entry in the \fB/etc/shadow\fR file. \fBpwconv\fR(1M) relies on a special value
-of '\fBx\fR' in the password field of \fB/etc/passwd\fR. If this value
-of '\fBx\fR' exists in the password field of \fB/etc/passwd\fR, this indicates
-that the password for the user is already in \fB/etc/shadow\fR and should not
-be modified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIuid\fR\fR
-.ad
-.RS 15n
-is the user's unique numerical \fBID\fR for the system.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIgid\fR\fR
-.ad
-.RS 15n
-is the unique numerical \fBID\fR of the group that the user belongs to.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIgcos-field\fR\fR
-.ad
-.RS 15n
-is the user's real name, along with information to pass along in a mail-message
-heading. (It is called the gcos-field for historical reasons.) An ``\fB&\fR\&''
-(ampersand) in this field stands for the login name (in cases where the login
-name appears in a user's real name).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIhome-dir\fR\fR
-.ad
-.RS 15n
-is the pathname to the directory in which the user is initially positioned upon
-logging in.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIlogin-shell\fR\fR
-.ad
-.RS 15n
-is the user's initial shell program. If this field is empty, the default shell
-is \fB/usr/bin/sh\fR.
-.RE
-
-.sp
-.LP
-The maximum value of the \fIuid\fR and \fIgid\fR fields is \fB2147483647\fR. To
-maximize interoperability and compatibility, administrators are recommended to
-assign users a range of \fBUID\fRs and \fBGID\fRs below \fB60000\fR where
-possible. (\fBUID\fRs from \fB0\fR-\fB99\fR inclusive are reserved by the
-operating system vendor for use in future applications. Their use by end system
-users or vendors of layered products is not supported and may cause security
-related issues with future applications.)
-.sp
-.LP
-The password file is an \fBASCII\fR file that resides in the \fB/etc\fR
-directory. Because the encrypted passwords on a secure system are always kept
-in the \fBshadow\fR file, \fB/etc/passwd\fR has general read permission on all
-systems and can be used by routines that map between numerical user \fBID\fRs
-and user names.
-.sp
-.LP
-Blank lines are treated as malformed entries in the \fBpasswd\fR file and cause
-consumers of the file , such as \fBgetpwnam\fR(3C), to fail.
-.sp
-.LP
-The password file can contain entries beginning with a `+' (plus sign) or '-'
-(minus sign) to selectively incorporate entries from another naming service
-source, such as NIS or LDAP.
-.sp
-.LP
-A line beginning with a '+' means to incorporate entries from the naming
-service source. There are three styles of the '+' entries in this file. A
-single + means to insert all the entries from the alternate naming service
-source at that point, while a +\fIname\fR means to insert the specific entry,
-if one exists, from the naming service source. A +@\fInetgroup\fR means to
-insert the entries for all members of the network group \fInetgroup\fR from the
-alternate naming service. If a +\fIname\fR entry has a non-null \fBpassword\fR,
-\fIgcos\fR, \fIhome-dir\fR, or \fIlogin-shell\fR field, the value of that field
-overrides what is contained in the alternate naming service. The \fIuid\fR and
-\fIgid\fR fields cannot be overridden.
-.sp
-.LP
-A line beginning with a `\(mi' means to disallow entries from the alternate
-naming service. There are two styles of `-` entries in this file. -\fIname\fR
-means to disallow any subsequent entries (if any) for \fIname\fR (in this file
-or in a naming service), and -@\fInetgroup\fR means to disallow any subsequent
-entries for all members of the network group \fInetgroup\fR.
-.sp
-.LP
-This is also supported by specifying ``passwd : compat'' in
-\fBnsswitch.conf\fR(4). The "compat" source might not be supported in future
-releases. The preferred sources are \fBfiles\fR followed by the identifier of a
-name service, such as \fBnis\fR or \fBldap\fR. This has the effect of
-incorporating the entire contents of the naming service's \fBpasswd\fR database
-or password-related information after the \fBpasswd\fR file.
-.sp
-.LP
-Note that in compat mode, for every \fB/etc/passwd\fR entry, there must be a
-corresponding entry in the \fB/etc/shadow\fR file.
-.sp
-.LP
-Appropriate precautions must be taken to lock the \fB/etc/passwd\fR file
-against simultaneous changes if it is to be edited with a text editor;
-\fBvipw\fR(1B) does the necessary locking.
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRSample \fBpasswd\fR File
-.sp
-.LP
-The following is a sample \fBpasswd\fR file:
-
-.sp
-.in +2
-.nf
-root:x:0:1:Super-User:/:/sbin/sh
-fred:6k/7KCFRPNVXg:508:10:& Fredericks:/usr2/fred:/bin/csh
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-and the sample password entry from \fBnsswitch.conf\fR:
-
-.sp
-.in +2
-.nf
-passwd: files ldap
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-In this example, there are specific entries for users \fBroot\fR and \fBfred\fR
-to assure that they can login even when the system is running single-user. In
-addition, anyone whose password information is stored on an LDAP server will be
-able to login with their usual password, shell, and home directory.
-
-.sp
-.LP
-If the password file is:
-
-.sp
-.in +2
-.nf
-root:x:0:1:Super-User:/:/sbin/sh
-fred:6k/7KCFRPNVXg:508:10:& Fredericks:/usr2/fred:/bin/csh
-+
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-and the password entry in \fBnsswitch.conf\fR is:
-
-.sp
-.in +2
-.nf
-passwd: compat
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-then all the entries listed in the \fBNIS\fR \fBpasswd.byuid\fR and
-\fBpasswd.byname\fR maps will be effectively incorporated after the entries for
-\fBroot\fR and \fBfred\fR. If the password entry in \fBnsswitch.conf\fR is:
-
-.sp
-.in +2
-.nf
-passwd_compat: ldap
-passwd: compat
-.fi
-.in -2
-
-.sp
-.LP
-then all password-related entries stored on the LDAP server will be
-incorporated after the entries for \fBroot\fR and \fBfred\fR.
-
-.sp
-.LP
-The following is a sample \fBpasswd\fR file when \fBshadow\fR does not exist:
-
-.sp
-.in +2
-.nf
-root:q.mJzTnu8icf.:0:1:Super-User:/:/sbin/sh
-fred:6k/7KCFRPNVXg:508:10:& Fredericks:/usr2/fred:/bin/csh
-+john:
-+@documentation:no-login:
-+::::Guest
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The following is a sample \fBpasswd\fR file when \fBshadow\fR does exist:
-
-.sp
-.in +2
-.nf
-root:##root:0:1:Super-User:/:/sbin/sh
-fred:##fred:508:10:& Fredericks:/usr2/fred:/bin/csh
-+john:
-+@documentation:no-login:
-+::::Guest
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-In this example, there are specific entries for users \fBroot\fR and
-\fBfred\fR, to assure that they can log in even when the system is running
-standalone. The user \fBjohn\fR will have his password entry in the naming
-service source incorporated without change, anyone in the netgroup
-\fBdocumentation\fR will have their password field disabled, and anyone else
-will be able to log in with their usual password, shell, and home directory,
-but with a \fIgcos\fR field of \fBGuest\fR
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/etc/nsswitch.conf\fR\fR
-.ad
-.RS 22n
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/passwd\fR\fR
-.ad
-.RS 22n
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/shadow\fR\fR
-.ad
-.RS 22n
-
-.RE
-
-.SH SEE ALSO
-.LP
-\fBchgrp\fR(1), \fBchown\fR(1), \fBfinger\fR(1), \fBgroups\fR(1),
-\fBlogin\fR(1), \fBnewgrp\fR(1), \fBpasswd\fR(1),
-\fBsh\fR(1), \fBsort\fR(1), \fBdomainname\fR(1M), \fBgetent\fR(1M),
-\fBpassmgmt\fR(1M), \fBpwck\fR(1M), \fBpwconv\fR(1M),
-\fBsu\fR(1M), \fBuseradd\fR(1M), \fBuserdel\fR(1M), \fBusermod\fR(1M),
-\fBa64l\fR(3C), \fBcrypt\fR(3C), \fBgetpw\fR(3C), \fBgetpwnam\fR(3C),
-\fBgetspnam\fR(3C), \fBputpwent\fR(3C), \fBgroup\fR(4), \fBhosts.equiv\fR(4),
-\fBnsswitch.conf\fR(4), \fBshadow\fR(4), \fBenviron\fR(5),
-\fBunistd.h\fR(3HEAD)
-.sp
-.LP
-\fISystem Administration Guide: Basic Administration\fR
diff --git a/usr/src/man/man4/path_to_inst.4 b/usr/src/man/man4/path_to_inst.4
deleted file mode 100644
index af77f404dd..0000000000
--- a/usr/src/man/man4/path_to_inst.4
+++ /dev/null
@@ -1,140 +0,0 @@
-'\" te
-.\" Copyright 1992 Sun Microsystems Inc.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PATH_TO_INST 4 "May 18, 2007"
-.SH NAME
-path_to_inst \- device instance number file
-.SH SYNOPSIS
-.LP
-.nf
-\fB/etc/path_to_inst\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fB/etc/path_to_inst\fR records mappings of physical device names to instance
-numbers.
-.sp
-.LP
-The instance number of a device is encoded in its minor number, and is the way
-that a device driver determines which of the possible devices that it may drive
-is referred to by a given special file.
-.sp
-.LP
-In order to keep instance numbers persistent across reboots, the system records
-them in \fB/etc/path_to_inst\fR.
-.sp
-.LP
-This file is read only at boot time, and is updated by \fBadd_drv\fR(1M) and
-\fBdevfsadm\fR(1M).
-.sp
-.LP
-Note that it is generally not necessary for the system administrator to change
-this file, as the system will maintain it.
-.sp
-.LP
-The system administrator can change the assignment of instance numbers by
-editing this file and doing a reconfiguration reboot. However, any changes made
-in this file will be lost if \fBadd_drv\fR(1M) or \fBdevfsadm\fR(1M) is run
-before the system is rebooted.
-.sp
-.LP
-Each instance entry is a single line of the form:
-.sp
-.in +2
-.nf
-\fB"\fR\fIphysical name\fR\fB"\fR \fIinstance\fR \fInumber\fR \fB"\fR\fIdriver binding name\fR\fB"\fR
-.fi
-.in -2
-
-.sp
-.LP
-where
-.sp
-.ne 2
-.na
-\fB\fIphysical\fR \fIname\fR\fR
-.ad
-.RS 23n
-is the absolute physical pathname of a device. This pathname must be enclosed
-in double quotes.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIinstance number\fR\fR
-.ad
-.RS 23n
-is a decimal or hexadecimal number.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIdriver binding name\fR\fR
-.ad
-.RS 23n
-is the name used to determine the driver for the device. This name may be a
-driver alias or a driver name. The driver binding name must be enclosed in
-double quotes.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRSample \fBpath_to_inst\fR Entries
-.sp
-.LP
-Here are some sample \fBpath_to_inst\fR entries:
-
-.sp
-.in +2
-.nf
-"/iommu@f,e0000000" 0 "iommu"
-"/iommu@f,e0000000/sbus@f,e0001000" 0 "sbus"
-"/iommu@f,e0000000/sbus@f,e0001000/sbusmem@e,0" 14 "sbusmem"
-"/iommu@f,e0000000/sbus@f,e0001000/sbusmem@f,0" 15 "sbusmem"
-"/iommu@f,e0000000/sbus@f,e0001000/ledma@f,400010" 0 "ledma"
-"/obio/serial@0,100000" 0 "zs"
-"/SUNW,sx@f,80000000" 0 "SUNW,sx"
-.fi
-.in -2
-.sp
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/path_to_inst\fR\fR
-.ad
-.RS 21n
-Mapping of physical device names to instance numbers.
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBadd_drv\fR(1M), \fBboot\fR(1M), \fBdevfsadm\fR(1M), \fBmknod\fR(1M)
-.SH WARNINGS
-.sp
-.LP
-If the file is removed the system may not be bootable (as it may rely on
-information found in this file to find the root, usr or swap device). If it
-does successfully boot, it will regenerate the file, but after rebooting
-devices may end up having different minor numbers than they did before, and
-special files created via \fBmknod\fR(1M) may refer to different devices than
-expected.
-.sp
-.LP
-For the same reasons, changes should not be made to this file without careful
-consideration.
-.SH NOTES
-.sp
-.LP
-This document does not constitute an API. \fBpath_to_inst\fR may not exist or
-may have a different content or interpretation in a future release. The
-existence of this notice does not imply that any other documentation that lacks
-this notice constitutes an API.
diff --git a/usr/src/man/man4/pci.4 b/usr/src/man/man4/pci.4
deleted file mode 100644
index 7df0d6be9a..0000000000
--- a/usr/src/man/man4/pci.4
+++ /dev/null
@@ -1,271 +0,0 @@
-'\" te
-.\" Copyright (c) 2005 Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PCI 4 "May 13, 2017"
-.SH NAME
-pci, pcie \- configuration files for PCI and PCI Express device drivers
-.SH DESCRIPTION
-.LP
-The Peripheral Component Interconnect (PCI) bus is a little endian bus. PCI
-Express (PCIe) and PCI-X are successors to PCI. All three types of devices
-share the same configuration parameters. What is specified here for PCI devices
-applies to PCI-X 1.0 devices as well. All three types of devices are
-self-identifying, which means that these devices provide configuration
-parameters to the system that allow the system to identify the device and its
-driver. The configuration parameters are represented in the form of name-value
-pairs that can be retrieved using the \fBDDI\fR property interfaces. See
-\fBddi_prop_lookup\fR(9F) for details.
-.sp
-.LP
-The bus properties of PCI devices or logical bus properties of PCIe devices are
-derived from PCI configuration space, or supplied by the Fcode \fBPROM\fR, if
-it exists. Therefore, driver configuration files are not necessary for these
-devices.
-.sp
-.LP
-On some occasions, drivers for \fBPCI\fR and PCIe devices can use driver
-configuration files to provide driver private properties through the global
-property mechanism. See \fBdriver.conf\fR(4) for further details. Driver
-configuration files can also be used to augment or override properties for a
-specific instance of a driver.
-.sp
-.LP
-All bus drivers of PCI and PCIe devices recognize the following properties:
-.sp
-.ne 2
-.na
-\fB\fBreg\fR\fR
-.ad
-.RS 14n
-An arbitrary length array where each element of the array consists of a 5-tuple
-of 32-bit values. Each array element describes a logically contiguous mappable
-resource on the \fBPCI\fR bus or PCIe device tree.
-.sp
-The first three values in the 5-tuple describe the \fBPCI\fR address of the
-mappable resource. The first tuple contains the following information:
-.sp
-
-.sp
-.TS
-l l l
-l l l .
-Bits 0 - 7 8-bit register number
-Bits 8 - 10 3-bit function number
-Bits 11 - 15 5-bit device number
-Bits 16 - 23 8-bit bus number
-Bits 24 - 25 2-bit address space type identifier
-Bits 31 - 28 T{
-Register number extended bits 8:11 for extended config space. Zero for conventional configuration space.
-T}
-.TE
-
-The address space type identifier can be interpreted as follows:
-.sp
-
-.sp
-.TS
-l l l
-l l l .
-0x0 configuration space
-0x1 I/O space
-0x2 32-bit memory space address
-0x3 64-bit memory space address
-.TE
-
-The bus number is a unique identifying number assigned to each \fBPCI\fR bus or
-PCIe logical bus within its domain.
-.sp
-The device number is a unique identifying number assigned to each device on a
-\fBPCI\fR bus or PCIe logical bus. Note that a device number is unique only
-within the set of device numbers for a particular bus or logical bus.
-.sp
-Each \fBPCI\fR or PCIe device can have one to eight logically independent
-functions, each with its own independent set of configuration registers. Each
-function on a device is assigned a function number. For a device with only one
-function, the function number must be \fB0\fR.
-.sp
-The register number fields select a particular register within the set of
-configuration registers corresponding to the selected function. When the
-address space type identifier indicates configuration space, non-zero register
-number extended bits select registers in extended configuration space.
-.sp
-The second and third values in the \fBreg\fR property 5-tuple specify the
-64-bit address of the mappable resource within the \fBPCI\fR or PCIe address
-domain. The second 32-bit tuple corresponds to the high order four bytes of the
-64-bit address. The third 32-bit tuple corresponds to the low order bytes.
-.sp
-The fourth and fifth 32-bit values in the 5-tuple \fBreg\fR property specify
-the size of the mappable resource. The size is a 64-bit value, where the fourth
-tuple corresponds to the high order bytes of the 64-bit size and the fifth
-corresponds to the low order.
-.sp
-The driver can refer to the elements of this array by index, and construct
-kernel mappings to these addresses using \fBddi_regs_map_setup\fR(9F). The
-index into the array is passed as the \fIrnumber\fR argument of
-\fBddi_regs_map_setup\fR(9F).
-.sp
-At a high-level interrupt context, you can use the \fBddi_get*\fR and
-\fBddi_put*\fR family of functions to access I/O and memory space. However,
-access to configuration space is not allowed when running at a high-interrupt
-level.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBinterrupts\fR\fR
-.ad
-.RS 14n
-This property consists of a single-integer element array. Valid interrupt
-property values are \fB1\fR, \fB2\fR, \fB3\fR, and \fB4\fR. This value is
-derived directly from the contents of the device's configuration-interrupt-pin
-register.
-.sp
-A driver should use an index value of \fB0\fR when registering its interrupt
-handler with the DDI interrupt interfaces.
-.RE
-
-.sp
-.LP
-All \fBPCI\fR and PCIe devices support the \fBreg\fR property. The device
-number and function number as derived from the \fBreg\fR property are used to
-construct the address part of the device name under \fB/devices\fR.
-.sp
-.LP
-Only devices that generate interrupts support an \fBinterrupts\fR property.
-.sp
-.LP
-Occasionally it might be necessary to override or augment the configuration
-information supplied by a \fBPCI\fR or PCIe device. This change can be achieved
-by writing a driver configuration file that describes a prototype device node
-specification containing the additional properties required.
-.sp
-.LP
-For the system to merge the prototype node specification into an actual device
-node, certain conditions must be met.
-.RS +4
-.TP
-.ie t \(bu
-.el o
-First, the \fBname\fR property must be identical. The value of the \fBname\fR
-property needs to match the binding name of the device. The binding name is the
-name chosen by the system to bind a driver to a device and is either an alias
-associated with the driver or the hardware node name of the device.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Second, the parent property must identify the PCI bus or PCIe logical bus.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Third, the unit-address property must identify the card. The format of the
-unit-address property is:
-.RE
-.sp
-.LP
-\fBDD[,F]\fR
-.sp
-.LP
-where \fBDD\fR is the device number and \fBF\fR is the function number. If the
-function number is 0, only \fBDD\fR is specified.
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRSample Configuration File
-.sp
-.LP
-An example configuration file called \fBACME,scsi-hba.conf\fR for a \fBPCI\fR
-driver called \fBACME,scsi-hba\fR follows:
-
-.sp
-.in +2
-.nf
-#
-# Copyright (c) 1995, ACME SCSI Host Bus Adaptor
-# ident "@(#)ACME,scsi-hba.conf 1.1 96/02/04"
-name="ACME,scsi-hba" parent="/pci@1,0/pci@1f,4000"
- unit-address="3" scsi-initiator-id=6;
-hba-advanced-mode="on";
-hba-dma-speed=10;
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-In this example, a property \fBscsi-initiator-id\fR specifies the \fBSCSI\fR
-bus initiator id that the adapter should use, for just one particular instance
-of adapter installed in the machine. The \fBname\fR property identifies the
-driver and the parent property to identify the particular bus the card is
-plugged into. This example uses the parent's full path name to identify the
-bus. The unit-address property identifies the card itself, with device number
-of 3 and function number of 0.
-
-.sp
-.LP
-Two global driver properties are also created: \fBhba-advanced-mode\fR (which
-has the string value \fBon\fR) and \fBhba-dma-speed\fR (which has the value
-\fB10\fR M bit/s). These properties apply to all device nodes of the
-\fBACME,scsi-hba\fR.
-
-.sp
-.LP
-Configuration files for PCIe devices are similar. Shown below is an example
-configuration file called \fBACME,pcie-widget.conf\fR for a PCIe driver called
-\fBACME,pcie-widget\fR.
-
-.sp
-.in +2
-.nf
-#
-# Copyright (c) 2005, ACME PCIe Widget Adapter
-# ident "@(#)ACME,pcie-widget.conf 1.1 05/11/14"
-name="ACME,pcie-widget" parent="/pci@780" unit-address="2,1"
-debug-mode=12;
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-In this example, we provide a property \fBdebug-mode\fR for a particular PCIe
-device. As before, the logical bus is identified by the pathname of the parent
-of the device. The device has a device number of 2, and a function number of 1.
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture SPARC, x86
-.TE
-
-.SH SEE ALSO
-.LP
-\fBdriver.conf\fR(4), \fBattributes\fR(5), \fBddi_intr_add_handler\fR(9F),
-\fBddi_prop_lookup\fR(9F), \fBddi_regs_map_setup\fR(9F)
-.sp
-.LP
-\fIWriting Device Drivers\fR
-.sp
-.LP
-\fIIEEE 1275 PCI Bus Binding\fR
-.SH NOTES
-.LP
-PCIe devices support an extended configuration space unavailable to PCI
-devices. While PCIe devices can be operated using a PCI device driver,
-operating them using a PCIe device driver can make use of the extended
-properties and features made available only in the extended configuration
-space.
diff --git a/usr/src/man/man4/phones.4 b/usr/src/man/man4/phones.4
deleted file mode 100644
index 06f8f42dc8..0000000000
--- a/usr/src/man/man4/phones.4
+++ /dev/null
@@ -1,59 +0,0 @@
-'\" te
-.\" Copyright (c) 1992, Sun Microsystems, Inc.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PHONES 4 "Jan 14, 1992"
-.SH NAME
-phones \- remote host phone number database
-.SH SYNOPSIS
-.LP
-.nf
-\fB/etc/phones\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The file \fB/etc/phones\fR contains the system-wide private phone numbers for
-the \fBtip\fR(1) program. \fB/etc/phones\fR is normally unreadable, and so may
-contain privileged information. The format of \fB/etc/phones\fR is a series of
-lines of the form:
-.sp
-.in +2
-.nf
-\fB<\fR\fIsystem-name\fR\fB>[ \et]*<\fR\fIphone-number\fR\fB>.\fR
-.fi
-.in -2
-
-.sp
-.LP
-The system name is one of those defined in the \fBremote\fR(4) file and the
-phone number is constructed from \fB[0123456789\(mi=*%]\fR. The `\fB=\fR' and
-`\fB*\fR' characters are indicators to the auto call units to pause and wait
-for a second dial tone (when going through an exchange). The `\fB=\fR' is
-required by the \fBDF02-AC\fR and the `\fB*\fR' is required by the
-\fBBIZCOMP\fR 1030.
-.sp
-.LP
-Comment lines are lines containing a `\fB#\fR' sign in the first column of the
-line.
-.sp
-.LP
-Only one phone number per line is permitted. However, if more than one line in
-the file contains the same system name \fBtip\fR(1) will attempt to dial each
-one in turn, until it establishes a connection.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/phones\fR\fR
-.ad
-.RS 15n
-
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBtip\fR(1), \fBremote\fR(4)
diff --git a/usr/src/man/man4/pkginfo.4 b/usr/src/man/man4/pkginfo.4
deleted file mode 100644
index 3dd34ea876..0000000000
--- a/usr/src/man/man4/pkginfo.4
+++ /dev/null
@@ -1,748 +0,0 @@
-'\" te
-.\" Copyright 2017 Peter Tribble
-.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PKGINFO 4 "Nov 26, 2017"
-.SH NAME
-pkginfo \- package characteristics file
-.SH DESCRIPTION
-.LP
-\fBpkginfo\fR is an \fBASCII\fR file that describes the characteristics of the
-package along with information that helps control the flow of installation. It
-is created by the software package developer.
-.sp
-.LP
-Each entry in the \fBpkginfo\fR file is a line that establishes the value of a
-parameter in the following form:
-.sp
-.in +2
-.nf
-PARAM="\fIvalue\fR"
-.fi
-.in -2
-
-.sp
-.LP
-There is no required order in which the parameters must be specified within the
-file. The \fBPKG\fR, \fBNAME\fR, \fBARCH\fR, \fBVERSION\fR and \fBCATEGORY\fR
-parameters are mandatory. Other parameters are optional.
-.sp
-.LP
-\fBpkginfo\fR provides optional parameters and an environment variable in
-support of the zones (multiple Solaris environments) feature. See
-\fBzones\fR(5).
-.sp
-.LP
-The following parameters are mandatory:
-.sp
-.ne 2
-.na
-\fB\fBARCH\fR\fR
-.ad
-.sp .6
-.RS 4n
-A comma-separated list of alphanumeric tokens that indicate the architecture
-associated with the package. The \fBpkgmk\fR(1) tool can be used to create or
-modify this value when actually building the package. The maximum length of a
-token is 16 characters and it cannot include a comma.
-.sp
-Solaris's installation software meaningfully uses only one architecture token
-of the form:
-.sp
-.in +2
-.nf
-<\fIinstruction_set_architecture\fR>[.<\fIplatform_group\fR>]
-.fi
-.in -2
-
-where \fIplatform_group\fR is intended only for Solaris installation packages.
-Third party application software should restrict itself to \fBARCH\fR values
-from the following Solaris-supported instruction set architectures (\fBuname
--p\fR): \fBsparc\fR, \fBi386\fR, and \fBppc\fR. Examples of Solaris' platform
-groups (\fBuname -m\fR) are \fBsun4u\fR for the \fBSPARC\fR instruction set and
-\fBi86pc\fR for the i386 instruction set. See \fBuname\fR(1) and
-\fBisalist\fR(1) for more details.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBCATEGORY\fR\fR
-.ad
-.sp .6
-.RS 4n
-A comma-separated list of categories under which a package can be displayed. A
-package must at least belong to the system or application category. Categories
-are case-insensitive and can contain only alphanumerics. Each category is
-limited in length to 16 characters.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBNAME\fR\fR
-.ad
-.sp .6
-.RS 4n
-Text that specifies the package name (maximum length of 256 \fBASCII\fR
-characters). Use the \fBNAME\fR parameter as the foundation for describing the
-functionality and purpose of the package; spell out any acronyms and avoid
-internal product/project code names. The \fBDESC\fR parameter can then be used
-to expand the descriptive information. Use the \fBNAME\fR parameter to state as
-specifically as possible the use of the package, why a user would need to load
-it, and so on.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPKG\fR\fR
-.ad
-.sp .6
-.RS 4n
-Abbreviation for the package being installed. All characters in the
-abbreviation must be alphanumeric. You can also use the \fB\(mi\fR and \fB+\fR
-characters in the abbreviation. The first character cannot be numeric, a
-\fB+\fR or a \fB-\fR.
-.sp
-The abbreviation is limited to a maximum length of 32 characters.
-\fBinstall\fR, \fBnew\fR, and \fBall\fR are reserved abbreviations. It is
-customary to make the first four letters unique to your company, such as the
-company's stock symbol.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBVERSION\fR\fR
-.ad
-.sp .6
-.RS 4n
-Text that specifies the current version associated with the software package.
-The maximum length is 256 \fBASCII\fR characters and the first character cannot
-be a left parenthesis. The \fBpkgmk\fR(1) tool can be used to create or modify
-this value when actually building the package. Traditional Solaris
-practice was to assign this parameter monotonically increasing Dewey decimal
-values of the form:
-.sp
-.in +2
-.nf
-<\fImajor_revision\fR>.<\fIminor_revision\fR>[.<\fImicro_revision\fR>]
-.fi
-.in -2
-
-where all the revision fields are integers. The versioning fields can be
-extended to an arbitrary string of numbers in Dewey-decimal format, if
-necessary.
-.RE
-
-.sp
-.LP
-The following parameters are optional:
-.sp
-.ne 2
-.na
-\fB\fBBASEDIR\fR\fR
-.ad
-.sp .6
-.RS 4n
-The pathname to a default directory where "relocatable" files can be installed.
-If blank, the package is not relocatable and any files that have relative
-pathnames are not installed. An administrator can override the default
-directory.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBCLASSES\fR\fR
-.ad
-.sp .6
-.RS 4n
-A space-separated list of classes defined for a package. The order of the list
-determines the order in which the classes are installed. Classes listed first
-are installed first (on a media by media basis). This parameter can be modified
-by the request script.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBDESC\fR\fR
-.ad
-.sp .6
-.RS 4n
-Text that describes the package (maximum length of 256 \fBASCII\fR characters).
-This parameter value is used to provide the installer with a description of
-what the package contains and should build on the description provided in the
-\fBNAME\fR parameter. Try to make the two parameters work together so that a
-\fBpkginfo\fR \fB-l\fR provides a fairly comprehensive textual description of
-the package.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEMAIL\fR\fR
-.ad
-.sp .6
-.RS 4n
-An electronic address where further information is available or bugs can be
-reported (maximum length of 256 \fBASCII\fR characters).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBHOTLINE\fR\fR
-.ad
-.sp .6
-.RS 4n
-Phone number and/or mailing address where further information can be received
-or bugs can be reported (maximum length of 256 \fBASCII\fR characters).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBINTONLY\fR\fR
-.ad
-.sp .6
-.RS 4n
-Indicates that the package should only be installed interactively when set to
-any non-null value.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBISTATES\fR\fR
-.ad
-.sp .6
-.RS 4n
-A list of allowable run states for package installation (for example, "\fBS s
-1\fR" allows run states of \fBS\fR, \fBs\fR or \fB1\fR). The Solaris operating
-environment supports the run levels \fBs\fR, \fBS\fR, \fB0\fR, \fB1\fR,
-\fB2\fR, \fB3\fR, \fB5\fR, and \fB6\fR. Applicable run levels for this
-parameter are \fBs\fR, \fBS\fR, \fB1\fR, \fB2\fR, and \fB3\fR. See
-\fBinit\fR(1M) for details.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBMAXINST\fR\fR
-.ad
-.sp .6
-.RS 4n
-The maximum number of package instances that should be allowed on a machine at
-the same time. By default, only one instance of a package is allowed. This
-parameter must be set in order to have multiple instances of a package. In
-order to support multiple instances of packages (for example, packages that
-differ in their \fBARCH\fR or \fBVERSION\fR parameter value), the value of this
-parameter must be high enough to allow for all instances of a given package,
-including multiple versions coexisting on a software server.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBORDER\fR\fR
-.ad
-.sp .6
-.RS 4n
-A list of classes defining the order in which they should be put on the medium.
-Used by \fBpkgmk\fR(1) in creating the package. Classes not defined in this
-field are placed on the medium using the standard ordering procedures.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPSTAMP\fR\fR
-.ad
-.sp .6
-.RS 4n
-Production stamp used to mark the \fBpkgmap\fR(4) file on the output volumes.
-Provides a means for distinguishing between production copies of a version if
-more than one is in use at a time. If \fBPSTAMP\fR is not defined, the default
-is used. The default consists of the UNIX system machine name followed by the
-string "\fIYYYYMMDDHHMMSS\fR" (year, month, date, hour, minutes, seconds).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBRSTATES\fR\fR
-.ad
-.sp .6
-.RS 4n
-A list of allowable run states for package removal (for example, "\fBS s 1\fR"
-allows run states of \fBS\fR, \fBs\fR or \fB1\fR). The Solaris operating
-environment supports the run levels \fBs\fR, \fBS\fR, \fB0\fR, \fB1\fR,
-\fB2\fR, \fB3\fR, \fB5\fR, and \fB6\fR. Applicable run levels for this
-parameter are \fBs\fR, \fBS\fR, \fB1\fR, \fB2\fR, and \fB3\fR See
-\fBinit\fR(1M) for details.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSUNW_ISA\fR\fR
-.ad
-.sp .6
-.RS 4n
-Solaris-only optional parameter that indicates a software package contains
-64-bit objects if it is set to \fBsparcv9\fR. If this parameter is not set, the
-default \fBISA\fR (instruction set architecture) is set to the value of the
-\fBARCH\fR parameter.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSUNW_PKG_DIR\fR\fR
-.ad
-.sp .6
-.RS 4n
-A value set by \fBpkgadd\fR that contains the location of the installing
-package. This value is provided to any install time package procedure scripts
-that need to know where the installing package is located. This parameter
-should never be set manually from within a \fBpkginfo\fR file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSUNW_PKG_ALLZONES\fR\fR
-.ad
-.sp .6
-.RS 4n
-Defines whether a package, when installed, must be installed and must be
-identical in all zones. Assigned value can be \fBtrue\fR or \fBfalse\fR. The
-default value is \fBfalse\fR. The setting of \fBSUNW_PKG_ALLZONES\fR has the
-effects described below.
-.sp
-If set to \fBtrue\fR, the following conditions are in effect:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The package must be installed in the global zone.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The package must be installed in any non-global zone that is created.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The package must be identical in all zones.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The package can be installed only by the global zone administrator.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The package cannot be installed by a non-global zone administrator.
-.RE
-If set to \fBfalse\fR, the following conditions are in effect:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The package is not required to be installed in all zones.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The package is not required to be identical across all zones.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The package can be installed by the global zone administrator or by a
-non-global zone administrator.
-.RE
-Packages that must be identical across all zones must set this variable to
-\fBtrue\fR. This would include packages that deliver components that are part
-of the core operating system, or that are dependent on interfaces exported by
-the core operating system, or that deliver device drivers, or runtime libraries
-that use or export operating system interfaces that are not guaranteed to be
-stable across minor releases.
-.sp
-Packages that deliver components that are not part of the core operating system
-(such as application programs) that can be different between any two zones must
-set this variable to \fBfalse\fR.
-.sp
-With respect to \fBSUNW_PKG_ALLZONES\fR, keep in mind the following:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Use of \fBpkgadd\fR in the global zone installs packages in all zones unless
-\fB-G\fR is specified, in which case packages are installed in the global zone
-only. The setting of \fBSUNW_PKG_ALLZONES\fR does not change this behavior. For
-example, a package that has a setting of \fBSUNW_PKG_ALLZONES=false\fR is not
-installed in the global zone only.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The \fBSUNW_PKG_ALLZONES\fR attribute controls whether a package \fBmust\fR be
-installed in all zones (and must be the same in all zones) when it is
-installed.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Use of the \fB-G\fR option to \fBpkgadd\fR with a package that has
-\fBSUNW_PKG_ALLZONES=true\fR is an error and causes installation of that
-package to fail.
-.RE
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSUNW_PKG_HOLLOW\fR\fR
-.ad
-.sp .6
-.RS 4n
-Defines whether a package should be visible in any non-global zone if that
-package is required to be installed and be identical in all zones (for example,
-a package that has \fBSUNW_PKG_ALLZONES=true\fR). Assigned value can be
-\fBtrue\fR or \fBfalse\fR. The default value is \fBfalse\fR. The package is not
-required to be installed, but if it is installed, the setting of
-\fBSUNW_PKG_HOLLOW\fR has the effects described below.
-.sp
-If set to \fBfalse\fR, the following conditions are in effect:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-If installed in the global zone, the package content and installation
-information are required in all non-global zones.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Software delivered by the package is visible in all non-global zones. An
-example of such a a package is the package that delivers the \fBtruss\fR(1)
-command.
-.RE
-If set to \fBtrue\fR, the following conditions are in effect:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The package content is not delivered on any non-global zone. However, the
-package installation information is required on all non-global zones.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The package delivers software that should not be visible in all non-global
-zones. Examples include kernel drivers and system configuration files that work
-only in the global zone. This setting allows the non-global zone to resolve
-dependencies on packages that are installed only in the global zone without
-actually installing the package data.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-In the global zone, the package is recognized as having been installed, and all
-components of the package are installed. Directories are created, files are
-installed, and class action and other scripts are run as appropriate when the
-package is installed.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-In a non-global zone, the package is recognized as having been installed, but
-no components of the package are installed. No directories are created, no
-files are installed, and no class action or other install scripts are run when
-the package is installed.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-When removed from the global zone, the package is recognized as having been
-completely installed. Appropriate directories and files are removed, and class
-action or other install scripts are run when the package is removed.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-When removed from a non-global zone, the package is recognized as not having
-been completely installed. No directories are removed, no files are removed,
-and no class action or other install scripts are run when the package is
-removed.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The package is recognized as being installed in all zones for purposes of
-dependency checking by other packages that rely on this package being
-installed.
-.RE
-If \fBSUNW_PKG_ALLZONES\fR is set to \fBfalse\fR, the value of this variable
-has no meaning. It is a package construction error to set
-\fBSUNW_PKG_ALLZONES\fR to \fBfalse\fR, then set \fBSUNW_PKG_HOLLOW\fR to
-\fBtrue\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSUNW_PKG_THISZONE\fR\fR
-.ad
-.sp .6
-.RS 4n
-Defines whether a package must be installed in the current zone only. Assigned
-value can be \fBtrue\fR or \fBfalse\fR. The default value is \fBfalse\fR. The
-setting of \fBSUNW_PKG_THISZONE\fR has the effects described below.
-.sp
-If set to true, the following conditions are in effect:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The package is installed in the current zone only.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-If installed in the global zone, the package is not added to any currently
-existing or yet-to-be-created non-global zones. This is the same behavior that
-would occur if the \fB-G\fR option were specified to \fBpkgadd\fR.
-.RE
-If set to false, the following conditions are in effect:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-If \fBpkgadd\fR is run in a non-global zone, the package is installed in the
-current zone only.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-If \fBpkgadd\fR is run in the global zone, the package is installed in the
-global zone, and is also installed in all currently installed non-global zones.
-In addition, the package will be propagated to all future, newly installed
-non-global zones.
-.RE
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSUNW_PKGVERS\fR\fR
-.ad
-.sp .6
-.RS 4n
-Solaris-only parameter indicating of version of the Solaris operating
-environment package interface.
-.sp
-.in +2
-.nf
-SUNW_PKGVERS="<\fIsunw_package_version\fR>"
-.fi
-.in -2
-
-where <\fIsunw_package_version\fR> has the form \fIx.y[.z]\fR and \fIx\fR,
-\fIy\fR, and z are integers. For packages built for this release and previous
-releases, use \fBSUNW_PKGVERS="\fI1.0\fR"\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSUNW_PRODNAME\fR\fR
-.ad
-.sp .6
-.RS 4n
-Solaris-only parameter indicating the name of the product this package is a
-part of or comprises (maximum length of 256 \fBASCII\fR characters). A few
-examples of \fBSUNW_PRODNAME\fR values are: \fB"SunOS"\fR,
-\fB"OpenWindows"\fR, and \fB"Common Desktop Environment"\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSUNW_PRODVERS\fR\fR
-.ad
-.sp .6
-.RS 4n
-Solaris-only parameter indicating the version or release of the product
-described in \fBSUNW_PRODNAME\fR (maximum length of 256 \fBASCII\fR
-characters). For example, where \fBSUNW_PRODNAME="\fR\fISunOS\fR\fB"\fR, and
-the Solaris 2.x Beta release, this string could be \fB"5.x BETA"\fR, while for
-the Solaris 2.x FCS release, the string would be \fB"5.x"\fR. For Solaris 10,
-the string is \fB"5.10"\fR. If the \fBSUNW_PRODNAME\fR parameter is \fINULL\fR,
-so should be the \fBSUNW_PRODVERS\fR parameter.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBULIMIT\fR\fR
-.ad
-.sp .6
-.RS 4n
-If set, this parameter is passed as an argument to the \fBulimit\fR(1) command
-(see \fBlimit\fR(1)), which establishes the maximum size of a file during
-installation.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBVENDOR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Used to identify the vendor that holds the software copyright (maximum length
-of 256 \fBASCII\fR characters).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBVSTOCK\fR\fR
-.ad
-.sp .6
-.RS 4n
-The vendor stock number, if any, that identifies this product (maximum length
-of 256 \fBASCII\fR characters).
-.RE
-
-.sp
-.LP
-For further discussion of the zones-related parameters described above, see
-\fISystem Administration Guide: Virtualization Using the Solaris Operating
-System\fR.
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRA Sample \fBpkginfo\fR File
-.sp
-.LP
-Here is a sample \fBpkginfo\fR file:
-
-.sp
-.in +2
-.nf
-SUNW_PRODNAME="SunOS"
-SUNW_PRODVERS="5.5"
-SUNW_PKG_ALLZONES=false
-SUNW_PKG_HOLLOW=false
-PKG="SUNWesu"
-NAME="Extended System Utilities"
-VERSION="11.5.1"
-ARCH="sparc"
-VENDOR="Sun Microsystems, Inc."
-HOTLINE="Please contact your local service provider"
-EMAIL=""
-VSTOCK="0122c3f5566"
-CATEGORY="system"
-ISTATES="S 2"
-RSTATES="S 2"
-.fi
-.in -2
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability See entries below
-_
-PKG value Evolving
-_
-VERSION value Evolving
-_
-NAME value Evolving
-_
-DESC value Evolving
-_
-ARCH value Evolving
-_
-CATEGORY value Evolving
-_
-BASEDIR value Evolving
-_
-ISTATES value Evolving
-_
-RSTATES value Evolving
-_
-MAXINST value Evolving
-_
-SUNW_PKG_ALLZONES Evolving
-_
-SUNW_PKG_HOLLOW Evolving
-_
-SUNW_PKG_THISZONE Evolving
-_
-SUNW_PRODNAME Evolving
-_
-SUNW_PRODVERS Evolving
-_
-SUNW_PKGVERS Evolving
-_
-SUNW_PKG_DIR Evolving
-.TE
-
-.SH SEE ALSO
-.LP
-\fBisalist\fR(1), \fBlimit\fR(1), \fBpkgmk\fR(1), \fBuname\fR(1),
-\fBinit\fR(1M), \fBpkgmap\fR(4), \fBattributes\fR(5), \fBzones\fR(5)
-.sp
-.LP
-\fIApplication Packaging Developer\&'s Guide\fR
-.sp
-.LP
-\fISystem Administration Guide: Virtualization Using the Solaris Operating
-System\fR
-.SH NOTES
-.LP
-Developers can define their own installation parameters by adding a definition
-to this file. A developer-defined parameter must begin with a capital letter.
-.sp
-.LP
-Trailing white space after any parameter value is ignored. For example,
-\fBVENDOR="Sun Microsystems, Inc."\fR is the same as \fBVENDOR="Sun
-Microsystems, Inc. "\fR.
diff --git a/usr/src/man/man4/pkgmap.4 b/usr/src/man/man4/pkgmap.4
deleted file mode 100644
index aa3199cc68..0000000000
--- a/usr/src/man/man4/pkgmap.4
+++ /dev/null
@@ -1,364 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T
-.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PKGMAP 4 "Jul 12, 2006"
-.SH NAME
-pkgmap \- package contents description file
-.SH DESCRIPTION
-.sp
-.LP
-\fBpkgmap\fR is an \fBASCII\fR file that provides a complete listing of the
-package contents. It is automatically generated by \fBpkgmk\fR(1) using the
-information in the \fBprototype\fR(4) file.
-.sp
-.LP
-Each entry in \fBpkgmap\fR describes a single ``deliverable object file.'' A
-deliverable object file includes shell scripts, executable objects, data files,
-directories, and so forth. The entry consists of several fields of information,
-each field separated by a space. The fields are described below and must appear
-in the order shown.
-.sp
-.ne 2
-.na
-\fB\fIpart\fR\fR
-.ad
-.RS 12n
-An optional field designating the part number in which the object resides. A
-part is a collection of files and is the atomic unit by which a package is
-processed. A developer can choose the criteria for grouping files into a part
-(for example, based on class). If no value is defined in this field, part 1 is
-assumed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIftype\fR\fR
-.ad
-.RS 12n
-A one-character field that indicates the file type. Valid values are listed
-below. File types are divided between those that are not to be modified and
-those that are modifiable.
-.sp
-Files of the following types must never be modified:
-.sp
-.ne 2
-.na
-\fB\fBb\fR\fR
-.ad
-.RS 5n
-block special device
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBc\fR\fR
-.ad
-.RS 5n
-character special device
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBd\fR\fR
-.ad
-.RS 5n
-directory
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBf\fR\fR
-.ad
-.RS 5n
-a standard executable file, data file, or other type of file, the contents of
-which must never be modified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBi\fR\fR
-.ad
-.RS 5n
-information file (such as a file containing a copyright, list of dependencies,
-or package information) or installation script (such as checkinstall, class
-action [\fBi.\fR], pre/post install/remove), the contents of which must never
-be modified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBl\fR\fR
-.ad
-.RS 5n
-linked file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBp\fR\fR
-.ad
-.RS 5n
-named pipe
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBs\fR\fR
-.ad
-.RS 5n
-symbolic link
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBx\fR\fR
-.ad
-.RS 5n
-an exclusive directory accessible only by this package
-.RE
-
-Files of the following types can be modified:
-.sp
-.ne 2
-.na
-\fB\fBe\fR\fR
-.ad
-.RS 5n
-An editable file, intended to be edited (selectively modified) after
-installation. An editable file is expected to change on installation or
-removal, can be shared by several packages, and must be installed by a class
-action script. Examples are a configuration file or a list of users.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBv\fR\fR
-.ad
-.RS 5n
-A volatile file, intended to be overwritten or appended to after installation.
-A volatile file is not expected to change on installation or removal, is not
-preserved between installations, and can be installed by a class action script.
-Examples are a log file or a lock file.
-.RE
-
-Following package installation, the contents of files of all types except
-\fBe\fR and \fBv\fR must not change. Any file that is subject to change should
-be marked as \fBe\fR or \fBv\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIclass\fR\fR
-.ad
-.RS 12n
-The installation class to which the file belongs. This name must contain only
-alphanumeric characters and be no longer than 12 characters. It is not
-specified if the \fIftype\fR is \fBi\fR (information file).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIpathname\fR\fR
-.ad
-.RS 12n
-\fIpathname\fR may contain variables of the form \fB$\fR\fIvariable\fR that
-support install-time configuration of the file. \fIvariable\fR may be embedded
-in the pathname structure. (See \fBprototype\fR(4) for definitions of variable
-specifications.)
-.sp
-Do not use the following reserved words in \fIpathname\fR, since they are
-applied by \fBpkgadd\fR(1M) using a different mechanism:
-.sp
-.in +2
-.nf
-PKG_INSTALL_ROOT
-BASEDIR
-CLIENT_BASEDIR
-.fi
-.in -2
-.sp
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fImajor\fR\fR
-.ad
-.RS 12n
-The major device number. The field is only specified for block or character
-special devices.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIminor\fR\fR
-.ad
-.RS 12n
-The minor device number. The field is only specified for block or character
-special devices.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fImode\fR\fR
-.ad
-.RS 12n
-The octal mode of the file (for example, 0664). A question mark (\fB?\fR)
-indicates that the mode will be left unchanged, implying that the file already
-exists on the target machine. This field is not used for linked files,
-packaging information files, or non-installable files.
-.sp
-The mode can contain a variable specification. (See \fBprototype\fR(4) for
-definitions of variable specifications.)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIowner\fR\fR
-.ad
-.RS 12n
-The owner of the file (for example, \fBbin\fR or \fBroot\fR). The field is
-limited to 14 characters in length. A question mark (\fB?\fR) indicates that
-the owner will be left unchanged or changed to the owner stored in the package
-database, which could be different from what is on the file system. When the
-question mark is used, it implies that the file is already on the file system.
-This field is not used for linked files or non-installable files. It is used
-optionally with a package information file. If used, it indicates with what
-owner an installation script will be executed.
-.sp
-The owner can contain a variable specification. (See \fBprototype\fR(4) for
-definitions of variable specifications.)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIgroup\fR\fR
-.ad
-.RS 12n
-The group to which the file belongs (for example, \fBbin\fR or \fBsys\fR). The
-field is limited to 14 characters in length. A question mark (\fB?\fR)
-indicates that the group will be left unchanged or changed to the owner stored
-in the package database, which could be different from what is on the file
-system. When the question mark is used, it implies that the file is already on
-the file system. This field is not used for linked files or non-installable
-files. It is used optionally with a package information file. If used, it
-indicates with what group an installation script will be executed.
-.sp
-The group can contain a variable specification. (See \fBprototype\fR(4) for
-definitions of variable specifications.)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIsize\fR\fR
-.ad
-.RS 12n
-The actual size of the file in bytes. This field is not specified for named
-pipes, special devices, directories or linked files.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIcksum\fR\fR
-.ad
-.RS 12n
-The checksum of the file contents. This field is not specified for named pipes,
-special devices, directories, or linked files.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fImodtime\fR\fR
-.ad
-.RS 12n
-The time of last modification, as reported by the \fBstat\fR(2) function call.
-This field is not specified for named pipes, special devices, directories, or
-linked files.
-.RE
-
-.sp
-.LP
-Each \fBpkgmap\fR file must have one line that provides information about the
-number of parts, maximum size of parts that make up the package, and,
-optionally, the size of the package after compression (where size is given in
-512-byte blocks). This line is in the following format:
-.sp
-.LP
-\fB:\fR \fInumber_of_parts\fR \fImaximum_part_size\fR \fIcompressed_pkg_size\fR
-.sp
-.LP
-Lines that begin with ``\fB#\fR'' are comment lines and are ignored.
-.sp
-.LP
-When files are saved during installation before they are overwritten, they are
-normally just copied to a temporary pathname. However, for files whose mode
-includes execute permission (but which are not editable), the existing version
-is linked to a temporary pathname and the original file is removed. This allows
-processes which are executing during installation to be overwritten.
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRA Sample \fBpkgmap\fR File
-.sp
-.in +2
-.nf
-\fB: 2 500
-1 i pkginfo 237 1179 541296672
-1 b class1 /dev/diskette 17 134 0644 root other
-1 c class1 /dev/rdiskette 17 134 0644 root other
-1 d none bin 0755 root bin
-1 f none bin/INSTALL 0755 root bin 11103 17954 541295535
-1 f none bin/REMOVE 0755 root bin 3214 50237 541295541
-1 l none bin/UNINSTALL=bin/REMOVE
-1 f none bin/cmda 0755 root bin 3580 60325 541295567
-1 f none bin/cmdb 0755 root bin 49107 51255 541438368
-1 f class1 bin/cmdc 0755 root bin 45599 26048 541295599
-1 f class1 bin/cmdd 0755 root bin 4648 8473 541461238
-1 f none bin/cmde 0755 root bin 40501 1264 541295622
-1 f class2 bin/cmdf 0755 root bin 2345 35889 541295574
-1 f none bin/cmdg 0755 root bin 41185 47653 541461242
-2 d class2 data 0755 root bin
-2 p class1 data/apipe 0755 root other
-2 d none log 0755 root bin
-2 v none log/logfile 0755 root bin 41815 47563 541461333
-2 d none save 0755 root bin
-2 d none spool 0755 root bin
-2 d none tmp 0755 root bin\fR
-.fi
-.in -2
-.sp
-
-.SH SEE ALSO
-.sp
-.LP
-\fBpkgmk\fR(1), \fBpkgadd\fR(1M), \fBstat\fR(2), \fBpkginfo\fR(4),
-\fBprototype\fR(4)
-.sp
-.LP
-\fIApplication Packaging Developer\&'s Guide\fR
-.SH NOTES
-.sp
-.LP
-The \fBpkgmap\fR file may contain only one entry per unique pathname.
diff --git a/usr/src/man/man4/policy.conf.4 b/usr/src/man/man4/policy.conf.4
deleted file mode 100644
index 4c933fbfc4..0000000000
--- a/usr/src/man/man4/policy.conf.4
+++ /dev/null
@@ -1,251 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH POLICY.CONF 4 "Feb 25, 2008"
-.SH NAME
-policy.conf \- configuration file for security policy
-.SH SYNOPSIS
-.LP
-.nf
-/etc/security/policy.conf
-.fi
-
-.SH DESCRIPTION
-
-.LP
-The \fBpolicy.conf\fR file provides the security policy configuration for
-user-level attributes. Each entry consists of a key/value pair in the form:
-.sp
-.LP
-key=value
-.sp
-.LP
-The following keys are defined:
-.sp
-.ne 2
-.na
-\fB\fBAUTHS_GRANTED\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify the default set of authorizations granted to all users. This entry is
-interpreted by \fBchkauthattr\fR(3SECDB). The value is zero or more
-comma-separated authorizations defined in \fBauth_attr\fR(4).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPROFS_GRANTED\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify the default set of profiles granted to all users. This entry is
-interpreted by \fBchkauthattr\fR(3SECDB) and \fBgetexecuser\fR(3SECDB). The
-value is zero or more comma-separated profiles defined in \fBprof_attr\fR(4).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBCONSOLE_USER\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify an additional default set of profiles granted to the \fIconsole user\fR
-user. This entry is interpreted by \fBchkauthattr\fR(3SECDB) and
-\fBgetexecuser\fR(3SECDB). The value is zero or more comma-separated profiles
-defined in \fBprof_attr\fR(4).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_DEFAULT\fR and \fBPRIV_LIMIT\fR\fR
-.ad
-.sp .6
-.RS 4n
-Settings for these keys determine the default privileges that users have. (See
-\fBprivileges\fR(5).) If these keys are not set, the default privileges are
-taken from the inherited set. \fBPRIV_DEFAULT\fR determines the default set on
-login. \fBPRIV_LIMIT\fR defines the limit set on login. Users can have
-privileges assigned or taken away through use of \fBuser_attr\fR(4). Privileges
-can also be assigned to profiles, in which case users who have those profiles
-can exercise the assigned privileges through \fBpfexec\fR(1).
-.sp
-For maximum future compatibility, the privilege specifications should always
-include \fBbasic\fR or \fBall\fR. Privileges should then be removed using
-negation. See EXAMPLES. By assigning privileges in this way, you avoid a
-situation where, following an addition of a currently unprivileged operation to
-the basic privilege set, a user unexpectedly does not have the privileges he
-needs to perform that now-privileged operation.
-.sp
-Note that removing privileges from the limit set requires \fBextreme\fR care,
-as any set-uid root program might suddenly fail because it lacks certain
-privilege(s). Note also that dropping \fBbasic\fR privileges from the default
-privilege set can cause unexpected failure modes in applications.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBLOCK_AFTER_RETRIES=YES|NO\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies whether a local account is locked after the count of failed logins
-for a user equals or exceeds the allowed number of retries as defined by
-\fBRETRIES\fR in \fB/etc/default/login\fR. The default value for users is
-\fBNO\fR. Individual account overrides are provided by \fBuser_attr\fR(4).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBCRYPT_ALGORITHMS_ALLOW\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify the algorithms that are allowed for new passwords and is enforced only
-in \fBcrypt_gensalt\fR(3C).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBCRYPT_ALGORITHMS_DEPRECATE\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify the algorithm for new passwords that is to be deprecated. For example,
-to deprecate use of the traditional UNIX algorithm, specify
-\fBCRYPT_ALGORITHMS_DEPRECATE=__unix__\fR and change \fBCRYPT_DEFAULT=\fR to
-another algorithm, such as \fBCRYPT_DEFAULT=1\fR for BSD and Linux MD5.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBCRYPT_DEFAULT\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify the default algorithm for new passwords. The Solaris default was once
-the traditional UNIX algorithm. This is not listed in \fBcrypt.conf\fR(4) since
-it is internal to \fBlibc\fR. The reserved name \fB__unix__\fR is used to refer
-to it.
-.RE
-
-.sp
-.LP
-The key/value pair must appear on a single line, and the key must start the
-line. Lines starting with \fB#\fR are taken as comments and ignored. Option
-name comparisons are case-insensitive.
-.sp
-.LP
-Only one \fBCRYPT_ALGORITHMS_ALLOW\fR or \fBCRYPT_ALGORITHMS_DEPRECATE\fR value
-can be specified. Whichever is listed first in the file takes precedence. The
-algorithm specified for \fBCRYPT_DEFAULT\fR must either be specified for
-\fBCRYPT_ALGORITHMS_ALLOW\fR or not be specified for
-\fBCRYPT_ALGORITHMS_DEPRECATE\fR. If \fBCRYPT_DEFAULT\fR is not specified, the
-default is \fB__unix__\fR.
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRDefining a Key/Value Pair
-.sp
-.in +2
-.nf
-\fBAUTHS_GRANTED=solaris.date\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRSpecifying Privileges
-.sp
-.LP
-As noted above, you should specify privileges through negation, specifying
-\fBall\fR for \fBPRIV_LIMIT\fR and \fBbasic\fR for \fBPRIV_DEFAULT\fR, then
-subtracting privileges, as shown below.
-
-.sp
-.in +2
-.nf
-PRIV_LIMIT=all,!sys_linkdir
-PRIV_DEFAULT=basic,!file_link_any
-.fi
-.in -2
-
-.sp
-.LP
-The first line, above, takes away only the \fBsys_linkdir\fR privilege. The
-second line takes away only the \fBfile_link\fR privilege. These privilege
-specifications are unaffected by any future addition of privileges that might
-occur.
-
-.SH FILES
-
-.ne 2
-.na
-\fB\fB/etc/user_attr\fR\fR
-.ad
-.RS 29n
-Defines extended user attributes.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/security/auth_attr\fR\fR
-.ad
-.RS 29n
-Defines authorizations.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/security/prof_attr\fR\fR
-.ad
-.RS 29n
-Defines profiles.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/security/policy.conf\fR\fR
-.ad
-.RS 29n
-Defines policy for the system.
-.RE
-
-.SH ATTRIBUTES
-
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Committed
-.TE
-
-.SH SEE ALSO
-
-.LP
-\fBlogin\fR(1), \fBpfexec\fR(1), \fBchkauthattr\fR(3SECDB),
-\fBgetexecuser\fR(3SECDB), \fBauth_attr\fR(4), \fBcrypt.conf\fR(4),
-\fBprof_attr\fR(4), \fBuser_attr\fR(4), \fBattributes\fR(5),
-\fBprivileges\fR(5)
-.SH NOTES
-
-.LP
-The \fIconsole user\fR is defined as the owner of \fB/dev/console\fR.
diff --git a/usr/src/man/man4/power.conf.4 b/usr/src/man/man4/power.conf.4
deleted file mode 100644
index 56f841fe23..0000000000
--- a/usr/src/man/man4/power.conf.4
+++ /dev/null
@@ -1,815 +0,0 @@
-'\" te
-.\" Copyright (C) 2009, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH POWER.CONF 4 "June 20, 2021"
-.SH NAME
-power.conf \- Power Management configuration information file
-.SH SYNOPSIS
-.nf
-\fB/etc/power.conf\fR
-.fi
-
-.SH DESCRIPTION
-The \fBpower.conf\fR file is used by the Power Management configuration program
-\fBpmconfig\fR(1M), to initialize the settings for Power Management. If you
-make changes to this file, you must run \fBpmconfig\fR(1M) manually for the
-changes to take effect.
-.sp
-.LP
-Power Management addresses two specific management scenarios: management of
-individual devices and management of the whole system. An individual device is
-power managed if the device supports multiple power levels and if the device
-driver uses Power Management interfaces provided by the kernel to save device
-power when the device is idle.
-.sp
-.LP
-All entries in the \fBpower.conf\fR file are processed in the order that they
-occur in the file.
-.SS "Automatic Device Power Management"
-Devices with drivers that use the automatic device Power Management interfaces
-are automatically power managed if the \fBautopm\fR entry is enabled. The
-\fBautopm\fR entry is described near the end of this section. The
-\fBpm-components\fR property describes the Power Management model of a device
-driver to the Power Management framework. See \fBpm-components\fR(9P) for more
-information.
-.sp
-.LP
-When a component has been idle at a given power level for its threshold time,
-the power level of the component is reduced to the next lower power level of
-that component, if any. For devices which implement multiple components, each
-component is power-managed independently.
-.sp
-.LP
-Default thresholds for components of automatically power managed devices are
-computed by the Power Management framework based on the system idleness
-threshold. By default, all components of the device are powered off if they
-have all been idle for the system's idleness threshold. The default system
-idleness threshold is determined by the applicable United States Environmental
-Protection Agency's (EPA) \fIEnergy Star Memorandum of Understanding\fR. See
-the \fBNOTES\fR section of this manual page for more information.
-.sp
-.LP
-To set the system idleness \fIthreshold\fR, use one of the following entries:
-.sp
-.in +2
-.nf
-system-threshold \fIthreshold\fR
-.fi
-.in -2
-
-.sp
-.in +2
-.nf
-system-threshold \fBalways-on\fR
-.fi
-.in -2
-
-.sp
-.LP
-where \fIthreshold\fR is the value of the system idleness threshold in hours,
-minutes or seconds as indicated by a trailing \fBh\fR, \fBm\fR or \fBs\fR
-(defaulting to seconds if only a number is given). If \fBalways-on\fR is
-specified, then by default, all devices are left at full power.
-.sp
-.LP
-The \fBsystem-threshold\fR entry is applicable to CPU Power Management only
-when CPU Power Management has been configured to operate in poll-mode, which is
-expressed through the \fBcpupm\fR keyword.
-.sp
-.LP
-If a system has power manageable CPUs, these can be managed independently of
-the system idleness threshold by using one of the following entries:
-.sp
-.in +2
-.nf
-cpu-threshold \fIthreshold\fR
-.fi
-.in -2
-
-.sp
-.in +2
-.nf
-cpu-threshold \fBalways-on\fR
-.fi
-.in -2
-
-.sp
-.LP
-where \fIthreshold\fR is the value of the CPU idleness threshold in hours,
-minutes or seconds as indicated by a trailing \fBh\fR, \fBm\fR or \fBs\fR
-(defaulting to seconds if only a number is given). If \fBalways-on\fR is
-specified, then by default, all CPUs are left at full power.
-.sp
-.LP
-The \fBcpu-threshold\fR keyword is used only when CPU Power Management has been
-configured to operate in poll-mode, which is expressed through the \fBcpupm\fR
-keyword.
-.sp
-.LP
-If no \fBcpu-threshold\fR entry is specified, then the system idleness
-threshold is used.
-.sp
-.LP
-To override the default device component thresholds assigned by the Power
-Management framework, a \fBdevice-thresholds\fR entry can be used. A
-\fBdevice-thresholds\fR entry sets thresholds for a specific automatically
-power-managed device or disables automatic Power Management for the specific
-device.
-.sp
-.LP
-A \fBdevice-thresholds\fR entry has the form:
-.sp
-.in +2
-.nf
-device-thresholds \fIphys_path\fR \fI(threshold ...) ...\fR
-.fi
-.in -2
-
-.sp
-.LP
-or
-.sp
-.in +2
-.nf
-device-thresholds \fIphys_path\fR \fIthreshold\fR
-.fi
-.in -2
-
-.sp
-.LP
-or
-.sp
-.in +2
-.nf
-device-thresholds \fIphys_path\fR \fBalways-on\fR
-.fi
-.in -2
-
-.sp
-.LP
-where \fIphys_path\fR specifies the physical path (\fBlibdevinfo\fR(3LIB)) of a
-specific device. For example,
-\fB/pci@8,600000/scsi@4/ssd@w210000203700c3ee,0\fR specifies the physical path
-of a disk. A symbolic link into the \fB/devices\fR tree, for example
-\fB/dev/dsk/c1t1d0s0\fR, is also accepted. The thresholds apply (or keeping the
-device always on applies) to the specific device only.
-.sp
-.LP
-In the first form above, each \fIthreshold\fR value represents the number of
-hours, minutes or seconds, depending on a trailing \fBh\fR, \fBm\fR or \fBs\fR
-with a default to seconds, to spend idle at the corresponding power level
-before power is reduced to the next lower level of that component. Parentheses
-are used to group thresholds per component, with the first (leftmost) group
-being applied to component \fB0\fR, the next to component \fB1\fR, and the
-like. Within a group, the last (rightmost) number represents the time to be
-idle in the highest power level of the component before going to the
-next-to-highest level, while the first (leftmost) number represents the time to
-be idle in the next-to-lowest power level before going to the lowest power
-level.
-.sp
-.LP
-If the number of groups does not match the number of components exported by the
-device (by means of \fBpm-components\fR(9P) property), or the number of
-thresholds in a group is not one less than the number of power levels the
-corresponding component supports, then an error message is printed and the
-entry is ignored.
-.sp
-.LP
-For example, assume a device called \fBxfb\fR exports the components \fBFrame
-Buffer\fR and \fBMonitor\fR. Component \fBFrame Buffer\fR has two power levels:
-\fBOff\fR and \fBOn\fR. Component \fBMonitor\fR has four power levels:
-\fBOff\fR, \fBSuspend, Standby\fR, and \fBOn\fR.
-.sp
-.LP
-The following \fBdevice-thresholds\fR entry:
-.sp
-.in +2
-.nf
-device-thresholds \fI/pci@f0000/xfb@0 (0) (3m 5m 15m)\fR
-.fi
-.in -2
-
-.sp
-.LP
-would set the \fIthreshold\fR time for the \fBMonitor\fR component of the
-specific \fBxfb\fR card to go from \fBOn\fR to \fBStandby in\fR 15 minutes, the
-\fIthreshold\fR for \fBMonitor\fR to go from \fBStandby\fR to \fBSuspend\fR in 5
-minutes, and the \fIthreshold\fR for \fBMonitor\fR to go from \fBSuspend\fR to
-\fBOff\fR in 3 minutes. The threshold for \fBFrame Buffer\fR to go from
-\fBOn\fR to \fBOff\fR is 0 seconds.
-.sp
-.LP
-In the second form above, where a single threshold value is specified without
-parentheses, the threshold value represents a maximum overall time within which
-the entire device should be powered down if it is idle. Because the system does
-not know about any internal dependencies there can be among a device's
-components, the device can actually be powered down sooner than the specified
-\fIthreshold\fR, but does take longer than the specified \fIthreshold\fR,
-provided that all device components are idle.
-.sp
-.LP
-In the third form above, all components of the device are left at full power.
-.sp
-.LP
-Device Power Management entries are only effective if there is no user process
-controlling the device directly. For example, X Windows systems directly
-control frame buffers. The entries in the \fBpower.conf\fR file are effective
-only when X Windows is not running.
-.sp
-.LP
-Dependencies among devices can also be defined. A device depends upon another
-if none of its components might have their power levels reduced unless all
-components of the other device are powered off. A dependency can be indicated
-by an entry of the form:
-.sp
-.in +2
-.nf
-device-dependency \fIdependent_phys_path phys_path [ phys_path ... ]\fR
-.fi
-.in -2
-
-.sp
-.LP
-where \fIdependent_phys_path\fR is the path name (as above) of the device that
-is kept up by the others, and the \fIphys_path\fR entries specify the devices
-that keep it up. A symbolic link into the \fB/devices\fR tree, such as
-\fB/dev/fb\fR, is also accepted. This entry is needed only for logical
-dependents for the device. A logical dependent is a device that is not
-physically connected to the power managed device (for example, the display and
-the keyboard). Physical dependents are automatically considered and need not be
-included.
-.sp
-.LP
-In addition to listing dependents by physical path, an arbitrary group of
-devices can be made dependent upon another device by specifying a property
-dependency using the following syntax:
-.sp
-.in +2
-.nf
-device-dependency-property \fIproperty\fR \fIphys_path\fR [\fIphys_path\fR ...]
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-where each device that exports the property \fIproperty\fR is kept up by the
-devices named by \fIphys_path\fR(s). A symbolic link into the \fB/devices\fR
-tree (such as \fB/dev/fb\fR) is accepted as well as a pathname for
-\fIphys_path\fR.
-.sp
-.LP
-For example, the following entry ensures that every device that exports the
-boolean property named \fBremovable-media\fR is kept up when the console
-framebuffer is up. See \fBremovable-media\fR(9P).
-.sp
-.in +2
-.nf
-# This entry keeps removable media from being powered down unless the
-# console framebuffer and monitor are powered down
-# (See removable-media(9P))
-#
-device-dependency-property removable-media /dev/fb
-.fi
-.in -2
-
-.sp
-.LP
-An \fBautopm\fR entry can be used to enable or disable automatic device Power
-Management on a system-wide basis. The format of the \fBautopm\fR entry is:
-.sp
-.in +2
-.nf
-autopm \fIbehavior\fR
-.fi
-.in -2
-
-.sp
-.LP
-Acceptable behavior values are described as follows:
-.sp
-.ne 2
-.na
-\fB\fBdefault\fR\fR
-.ad
-.RS 11n
-The behavior of the system depends upon its model. Desktop models that fall
-under the United States Environmental Protection Agency's \fIEnergy Star
-Memorandum of Understanding #3\fR have automatic device Power Management
-enabled, and all others do not. See the \fBNOTES\fR section of this manual page
-for more information.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBenable\fR\fR
-.ad
-.RS 11n
-Automatic device Power Management is started when this entry is encountered.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdisable\fR\fR
-.ad
-.RS 11n
-Automatic device Power Management is stopped when this entry is encountered.
-.RE
-
-.sp
-.LP
-A \fBcpupm\fR entry can be used to enable or disable Power Management of CPUs
-on a system-wide basis, independent of \fBautopm\fR. The format of the
-\fBcpupm\fR entry is:
-.sp
-.in +2
-.nf
-cpupm \fIbehavior\fR
-.fi
-.in -2
-
-.sp
-.LP
-Acceptable behavior values and their meanings are :
-.sp
-.ne 2
-.na
-\fB\fBenable\fR\fR
-.ad
-.RS 11n
-CPU Power Management is started when this entry is encountered.
-.sp
-Where the behavior is \fBenable\fR, an optional \fImode\fR argument can be
-specified:
-.sp
-.in +2
-.nf
-cpupm enable \fImode\fR
-.fi
-.in -2
-
-Acceptable \fImode\fR values and their meanings are:
-.sp
-.ne 2
-.na
-\fB\fBevent-mode\fR\fR
-.ad
-.RS 14n
-CPU power state transitions is driven by thread scheduler/dispatcher events.
-The \fBcpu-threshold\fR, and \fBsystem-threshold\fR keywords are not used for
-CPUs in this mode.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpoll-mode\fR\fR
-.ad
-.RS 14n
-The Power Management framework polls the idleness of the system's CPUs, and
-manages their power once idle for the period of time specified by either the
-\fBsystem-threshold\fR or \fBcpu-threshold\fR.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdisable\fR\fR
-.ad
-.RS 11n
-CPU Power Management is stopped when this entry is encountered.
-.RE
-
-.sp
-.LP
-If supported by the platform, a \fBcpu_deep_idle\fR entry can be used to enable
-or disable automatic use of power saving cpu idle states. The format of the
-\fBcpu_deep_idle\fR entry is:
-.sp
-.in +2
-.nf
-\fBcpu_deep_idle\fR \fIbehavior\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Acceptable values for \fIbehavior\fR are:
-.sp
-.ne 2
-.na
-\fB\fBdefault\fR\fR
-.ad
-.RS 11n
-Advanced cpu idle power saving features are enabled on hardware which supports
-it. On X86 systems this can translate to the use of ACPI C-States beyond C1.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBenable\fR\fR
-.ad
-.RS 11n
-Enables the system to automatically use idle cpu power saving features.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdisable\fR\fR
-.ad
-.RS 11n
-The system does not automatically use idle cpu power saving features. This
-option can be used when maximum performance is required at the expense of
-power.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBabsent\fR\fR
-.ad
-.RS 11n
-It the \fBcpu_deep_idle\fR keyword is absent from \fBpower.conf\fR the behavior
-is the same as the default case.
-.RE
-
-.sp
-.LP
-Once every device is at its lowest possible power state, additional power
-savings can be obtained by putting the system into a sleep state (if the
-platform hardware is capable of doing so).
-.SS "S3 Support"
-Because of reliability problems encountered in BIOS implementations of X86
-systems not produced by Sun Microsystems, by default, only X86 workstation
-products produced by Sun are considered to support S3 (suspend to RAM). To
-override this default, an S3-support entry (of the format S3-support
-\fBbehavior\fR) can be used to indicate if the system supports S3.
-.sp
-.LP
-Acceptable behavior values are:
-.sp
-.ne 2
-.na
-\fBenable\fR
-.ad
-.RS 11n
-The system supports entry into S3 state. If the BIOS of a system enabled using
-an \fBS3-support enable\fR entry does not support entry into S3, the attempt
-fails and the system returns to normal operation. If support for S3 in the BIOS
-of a system enabled via an S3-support entry contains bugs, the system can be
-unable to enter S3 or resume successfully, so use this entry with caution.
-.RE
-
-.sp
-.ne 2
-.na
-\fBdisable\fR
-.ad
-.RS 11n
-The system does not support entry into S3 state.
-.RE
-
-.SS "Automatic Entry Into S3"
-If supported by your platform, an autoS3 entry can be used to enable or disable
-automatic entry into the S3 state. When in the S3 state, the power button,
-keyboard and mouse activity or network traffic (depending upon the capabilities
-of the platform hardware) can wake the system, returning it to the state it was
-in upon entry to the S3 state. If the platform doesn't support S3, the entry
-has no effect.
-.sp
-.LP
-The format of the autoS3 entry is autoS3 \fBbehavior\fR.
-.sp
-.LP
-Acceptable behavior values are:
-.sp
-.ne 2
-.na
-\fBdefault\fR
-.ad
-.RS 11n
-System behavior depends upon model. Sun X86 desktop and workstation models that
-fall under the United States Environmental Protection Agency's \fIEnergy Star
-Memorandum of Understanding #3\fR have automatic entry into the S3 state
-enabled. Non-Sun systems do not. See \fBNOTES\fR for more information.
-.RE
-
-.sp
-.ne 2
-.na
-\fBenable\fR
-.ad
-.RS 11n
-Enables the system to automatically enter the S3 state if autopm is enabled and
-every device is at its lowest power state.
-.RE
-
-.sp
-.ne 2
-.na
-\fBdisable\fR
-.ad
-.RS 11n
-The system does not automatically enter the S3 state.
-.RE
-
-.SS "System Power Management"
-The system Power Management entries control Power Management of the entire
-system using the suspend-resume feature. When the system is suspended, the
-complete current state is saved on the disk before power is removed. On reboot,
-the system automatically starts a resume operation and the system is restored
-to the state it was in prior to suspend.
-.sp
-.LP
-The system can be configured to do an automatic shutdown (autoshutdown) using
-the suspend-resume feature by an entry of the following form:
-.sp
-.in +2
-.nf
-autoshutdown \fIidle_time\fR \fIstart_time\fR \fIfinish_time\fR \fIbehavior\fR
-.fi
-.in -2
-
-.sp
-.LP
-\fIidle_time\fR specifies the time in minutes that system must have been idle
-before it is automatically shutdown. System idleness is determined by the
-inactivity of the system and can be configured as discussed below.
-.sp
-.LP
-\fIstart_time\fR and \fIfinish_time\fR (each in \fBhh:mm\fR) specify the time
-period during which the system can be automatically shutdown. These times are
-measured from the start of the day (12:00 a.m.). If the \fIfinish_time\fR is
-less than or equal to the \fIstart_time\fR, the period span from midnight to
-the \fIfinish_time\fR and from the \fIstart_time\fR to the following midnight.
-To specify continuous operation, the \fIfinish_time\fR can be set equal to the
-\fIstart_time\fR.
-.sp
-.LP
-Acceptable behavior values are described as follows:
-.sp
-.ne 2
-.na
-\fB\fBshutdown\fR\fR
-.ad
-.RS 16n
-The system is shut down automatically when it has been idle for the number of
-minutes specified in the \fIidle_time\fR value and the time of day falls
-between the \fIstart_time\fR and \fIfinish_time\fR values.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnoshutdown\fR\fR
-.ad
-.RS 16n
-The system is never shut down automatically.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBautowakeup\fR\fR
-.ad
-.RS 16n
-If the hardware has the capability to do \fBautowakeup\fR, the system is shut
-down as if the value were \fBshutdown\fR and the system is restarted
-automatically the next time the time of day equals \fIfinish_time\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdefault\fR\fR
-.ad
-.RS 16n
-The behavior of the system depends upon its model. Desktop models that fall
-under the United States Environmental Protection Agency's \fIEnergy Star
-Memorandum of Understanding #2\fR have automatic \fBshutdown\fR enabled, as if
-\fIbehavior\fR field were set to \fBshutdown\fR, and all others do not. See
-\fBNOTES\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBunconfigured\fR\fR
-.ad
-.RS 16n
-The system does not be shut down automatically. If the system has just been
-installed or upgraded, the value of this field is changed upon the next reboot.
-.RE
-
-.sp
-.LP
-You can use the following format to configure the system's notion of idleness:
-.sp
-.LP
-\fBidleness_parameter\fR \fIvalue\fR
-.sp
-.LP
-Where \fBidleness_parameter\fR can be:
-.sp
-.ne 2
-.na
-\fB\fBttychars\fR\fR
-.ad
-.RS 15n
-If the \fBidleness_parameter\fR is \fBttychars\fR, the \fIvalue\fR field is
-interpreted as the maximum number of tty characters that can pass through the
-\fBldterm\fR module while still allowing the system to be considered idle. This
-value defaults to \fB0\fR if no entry is provided.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBloadaverage\fR\fR
-.ad
-.RS 15n
-If the \fBidleness_parameter\fR is \fBloadaverage\fR, the (floating point)
-\fIvalue\fR field is interpreted as the maximum load average that can be seen
-while still allowing the system to be considered idle. This value defaults to
-\fB0.04\fR if no entry is provided.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdiskreads\fR\fR
-.ad
-.RS 15n
-If the \fBidleness_parameter\fR is \fBdiskreads\fR, the \fIvalue\fR field is
-interpreted as the maximum number of disk reads that can be perform by the
-system while still allowing the system to be considered idle. This value
-defaults to \fB0\fR if no entry is provided.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnfsreqs\fR\fR
-.ad
-.RS 15n
-If the \fBidleness_parameter\fR is \fBnfsreqs\fR, the \fIvalue\fR field is
-interpreted as the maximum number of NFS requests that can be sent or received
-by the system while still allowing the system to be considered idle. Null
-requests, access requests, and \fBgetattr\fR requests are excluded from this
-count. This value defaults to \fB0\fR if no entry is provided.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBidlecheck\fR\fR
-.ad
-.RS 15n
-If the \fBidleness_parameter\fR is \fBidlecheck\fR, the \fIvalue\fR must be
-pathname of a program to be executed to determine if the system is idle. If
-\fBautoshutdown\fR is enabled and the console keyboard, mouse, tty, CPU (as
-indicated by load average), network (as measured by NFS requests) and disk (as
-measured by read activity) have been idle for the amount of time specified in
-the \fBautoshutdown\fR entry specified above, and the time of day falls between
-the start and finish times, then this program is executed to check for other
-idleness criteria. The \fIvalue\fR of the idle time specified in the above
-\fBautoshutdown\fR entry is passed to the program in the environment variable
-\fBPM_IDLETIME\fR. The process must terminate with an exit code that represents
-the number of minutes that the process considers the system to have been idle.
-.sp
-There is no default \fIidlecheck\fR entry.
-.RE
-
-.sp
-.LP
-When the system is suspended, the current system state is saved on the disk in
-a statefile. An entry of following form can be used to change the location of
-statefile:
-.sp
-.in +2
-.nf
-\fBstatefile\fR \fIpathname\fR
-.fi
-.in -2
-
-.sp
-.LP
-where \fIpathname\fR identifies a block special file, for example,
-\fB/dev/dsk/c1t0d0s2\fR, or is the absolute pathname of a local \fBufs\fR file.
-If the pathname specifies a block special file, it can be a symbolic link as
-long as it does not have a file system mounted on it. If pathname specifies a
-local ufs file, it cannot be a symbolic link. If the file does not exist, it is
-created during the \fBsuspend\fR operation. All the directory components of the
-path must already exist.
-.sp
-.LP
-The actual size of statefile depends on a variety of factors, including the
-size of system memory, the number of loadable drivers/modules in use, the
-number and type of processes running, and the amount of user memory that has
-been locked down. It is recommended that statefile be placed on a file system
-with at least 10 Mbytes of free space. In case there is no statefile entry at
-boot time, an appropriate new entry is automatically created by the system.
-.SH EXAMPLES
-\fBExample 1 \fRDisabling Automatic Device Power Management
-.sp
-.LP
-To disable automatic device Power Management, change the following line in the
-\fB/etc/power.conf\fR file
-
-.sp
-.in +2
-.nf
-autopm default
-.fi
-.in -2
-
-.sp
-.LP
-to read:
-
-.sp
-.in +2
-.nf
-autopm disable
-.fi
-.in -2
-
-.sp
-.LP
-Then run \fBpmconfig\fR or reboot. See \fBpmconfig\fR(1M) for more information.
-
-.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface stability Committed
-.TE
-
-.SH SEE ALSO
-\fBpmconfig\fR(1M), \fBpowerd\fR(1M), \fBuadmin\fR(2),
-\fBlibdevinfo\fR(3LIB), \fBattributes\fR(5), \fBcpr\fR(7), \fBldterm\fR(7M),
-\fBpm\fR(7D), \fBpm-components\fR(9P), \fBremovable-media\fR(9P)
-.sp
-.LP
-\fIWriting Device Drivers\fR
-.SH NOTES
-SPARC desktop models first shipped after October 1, 1995 and before July 1,
-1999 comply with the United States Environmental Protection Agency's \fIEnergy
-Star Memorandum of Understanding #2\fR guidelines and have \fBautoshutdown\fR
-enabled by default after 30 minutes of system idleness. This is achieved by
-\fBdefault\fR keyword of \fBautoshutdown\fR entry behave as \fBshutdown\fR for
-these machines. The user is prompted to confirm this default behavior at system
-installation reboot.
-.sp
-.LP
-SPARC desktop models first shipped after July 1, 1999 comply with the United
-States Environmental Protection Agency's \fIEnergy Star Memorandum of
-Understanding #3\fR guidelines and have \fBautoshutdown\fR disabled by default,
-with \fBautopm\fR enabled after 30 minutes of idleness. This is achieved by
-interpreting default keyword of \fBautopm\fR entry behavior as \fBenabled\fR
-for these machines. User is not prompted to confirm this default behavior.
-.sp
-.LP
-To determine the version of the EPA's \fIEnergy Star Memorandum\fR applicable
-to your machine, use:
-.sp
-.in +2
-.nf
-prtconf -pv | grep -i energystar
-.fi
-.in -2
-
-.sp
-.LP
-Absence of a property indicates no Energy Star guidelines are applicable to
-your machine.
-.sp
-.LP
-System Power Management (suspend-resume) is currently supported only on a
-limited set of hardware platforms.
-.sp
-.LP
-Sun X86 desktop models first shipped after July 1, 1999 fall within United
-States Environmental Protection Agency's \fIEnergy Star Memorandum of
-Understanding #3\fR guidelines and have autopm and autoS3 enabled by default,
-with entry into S3 after 30 minutes of idleness. This is achieved by
-interpreting the default keyword of the autopm and autoS3 behaviors as enabled
-for these machines. You are not prompted to confirm the default behavior. On
-all other X86 systems, the autopm and autoS3 default keywords are interpreted
-as \fBdisable\fR.
diff --git a/usr/src/man/man4/printers.4 b/usr/src/man/man4/printers.4
deleted file mode 100644
index d790018360..0000000000
--- a/usr/src/man/man4/printers.4
+++ /dev/null
@@ -1,306 +0,0 @@
-'\" te
-.\" Copyright (C) 2006, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PRINTERS 4 "Feb 25, 2017"
-.SH NAME
-printers \- user-configurable printer alias database
-.SH SYNOPSIS
-.LP
-.nf
-$HOME/.printers
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fB$HOME/.printers\fR file is a simplified version of the system
-\fB/etc/printers.conf\fR file. See \fBprinters.conf\fR(4). Users create the
-\fB$HOME/.printers\fR file in their home directory. This optional file is
-customizable by the user.
-.sp
-.LP
-The \fB$HOME/.printers\fR file performs the following functions:
-.RS +4
-.TP
-1.
-Sets personal aliases for all print commands.
-.RE
-.RS +4
-.TP
-2.
-Sets the interest list for the \fBlpget\fR, \fBlpstat\fR, and \fBcancel\fR
-commands. See \fBlpget\fR(1M), \fBlpstat\fR(1) and \fBcancel\fR(1).
-.RE
-.RS +4
-.TP
-3.
-Sets the default printer for the \fBlp\fR, \fBlpr\fR, \fBlpq\fR, and
-\fBlprm\fR commands. See \fBlp\fR(1), \fBlpr\fR(1B), \fBlpq\fR(1B), and
-\fBlprm\fR(1B).
-.RE
-.SS "Entries"
-.LP
-Use a line or full screen editor to create or modify the \fB$HOME/.printers\fR
-file.
-.sp
-.LP
-Each entry in \fB$HOME/.printers\fR describes one destination. Entries are one
-line consisting of two fields separated by either BLANKs or TABs and terminated
-by a NEWLINE. Format for an entry in \fB$HOME/.printers\fR varies according to
-the purpose of the entry.
-.sp
-.LP
-Empty lines can be included for readability. Entries can continue on to
-multiple lines by adding a backslash (`\fB\e\fR\&') as the last character in
-the line. The \fB$HOME/.printers\fR file can include comments. Comments have a
-pound sign (`\fB#\fR') as the first character in the line, and are terminated
-by a NEWLINE.
-.SS "Setting Personal Aliases"
-.LP
-Specify the alias or aliases in the first field. Separate multiple aliases by a
-pipe sign (`\fB|\fR'). Specify the destination in the second field. A
-destination names a printer or class of printers, See \fBlpadmin\fR(1M).
-Specify the destination using atomic, URI-style
-(\fIscheme\fR\fB://\fR\fBendpoint\fR), or POSIX-style
-(\fIserver\fR\fB:\fR\fIdestination\fR) names. See \fBprinters.conf\fR(4) for
-information regarding the naming conventions for destination names.
-.SS "Setting the Interest List for lpget, lpstat and cancel"
-.LP
-Specify \fB_all\fR in the first field. Specify the list of destinations for the
-interest list in the second field. Separate each destinations by a comma
-(`\fB,\fR'). Specify destinations using atomic, URI-style
-(\fIscheme\fR\fB://\fR\fBendpoint\fR), or POSIX-style
-(\fIserver\fR\fB:\fR\fIdestination\fR) names. See \fBprinters.conf\fR(4) for
-information regarding the naming conventions for destination names. This list
-of destinations can refer to an alias defined in \fB$HOME/.printers\fR.
-.SS "Setting the Default Destination"
-.LP
-Specify \fB_default\fR in the first field. Specify the default destination in
-the second field. Specify the default destination using atomic, URI-style
-(\fIscheme\fR\fB://\fR\fBendpoint\fR), or POSIX-style
-(\fIserver\fR\fB:\fR\fIdestination\fR) names. See \fBprinters.conf\fR(4) for
-information regarding the naming conventions for destination names. The default
-destination can refer to an alias defined in \fB$HOME/.printers\fR.
-.SS "Locating Destination Information"
-.LP
-The print client commands locate destination information based on the
-"printers" database entry in the \fB/etc/nsswitch.conf\fR file. See
-\fBnsswitch.conf\fR(4).
-.SS "Locating the Personal Default Destination"
-.LP
-The default destination is located differently depending on the command.
-.sp
-.LP
-The \fBlp\fR command locates the default destination in the following order:
-.RS +4
-.TP
-1.
-\fBlp\fR command's \fB-d\fR \fIdestination\fR option.
-.RE
-.RS +4
-.TP
-2.
-\fBLPDEST\fR environment variable.
-.RE
-.RS +4
-.TP
-3.
-\fBPRINTER\fR environment variable.
-.RE
-.RS +4
-.TP
-4.
-\fB_default\fR destination in \fB$HOME/.printers\fR.
-.RE
-.RS +4
-.TP
-5.
-\fB_default\fR destination in \fB/etc/printers.conf\fR.
-.RE
-.sp
-.LP
-The \fBlpr\fR, \fBlpq\fR, and \fBlprm\fR commands locate the default
-destination in the following order:
-.RS +4
-.TP
-1.
-\fBlpr\fR command's \fB-P\fR \fIdestination\fR option.
-.RE
-.RS +4
-.TP
-2.
-\fBPRINTER\fR environment variable.
-.RE
-.RS +4
-.TP
-3.
-\fBLPDEST\fR environment variable.
-.RE
-.RS +4
-.TP
-4.
-\fB_default\fR destination in \fB$HOME/.printers\fR.
-.RE
-.RS +4
-.TP
-5.
-\fB_default\fR destination in \fB/etc/printers.conf\fR.
-.RE
-.SS "Locating the Interest List for lpget, lpstat, and cancel"
-.LP
-The \fBlpget\fR, \fBlpstat\fR, and \fBcancel\fR commands locate the interest
-list in the following order:
-.RS +4
-.TP
-1.
-\fB_all\fR list in \fB$HOME/.printers\fR.
-.RE
-.RS +4
-.TP
-2.
-\fB_all\fR list in \fB/etc/printers.conf\fR.
-.RE
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRSetting the Interest List
-.sp
-.LP
-The following entry sets the interest list to destinations \fBps\fR,
-\fBsecure\fR, and \fBdog\fR at server \fBwest\fR and \fBfinance_ps\fR:
-
-.sp
-.in +2
-.nf
-\fB_all ps,secure,west:dog,lpd://server/printers/queue\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRSetting Aliases to a Printer
-.sp
-.LP
-The following entry sets the aliases \fBps\fR, \fBlp\fR, and \fBlw\fR to
-\fBsparc_printer\fR:
-
-.sp
-.in +2
-.nf
-\fBps|lp|lw sparc_printer\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRSetting an Alias as a Default Destination
-.sp
-.LP
-The following entry sets the alias \fBpcl\fR to \fBhplj\fR and sets it as the
-default destination:
-
-.sp
-.in +2
-.nf
-\fBpcl|_default hplj\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 4 \fRSetting an Alias to a Server Destination
-.sp
-.LP
-The following entry sets the alias \fBsecure\fR to destination \fBcatalpa\fR at
-server \fBtabloid\fR:
-
-.sp
-.in +2
-.nf
-\fBsecure tabloid:catalpa\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 5 \fRSetting an Alias to a Site Destination
-.sp
-.LP
-The following entry sets the alias \fBinsecure\fR to destination \fBlegal_ps\fR
-using IPP:
-
-.sp
-.in +2
-.nf
-\fBinsecure ipp://server/printers/legal_ps\fR
-.fi
-.in -2
-.sp
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/etc/printers.conf\fR\fR
-.ad
-.RS 24n
-System printer configuration database
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB$HOME/.printers\fR\fR
-.ad
-.RS 24n
-User-configurable printer database
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBou=printers\fR\fR
-.ad
-.RS 24n
-LDAP version of \fB/etc/printers.conf\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBprinters.conf.byname\fR\fR
-.ad
-.RS 24n
-\fBNIS\fR version of \fB/etc/printers.conf\fR
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Stable
-.TE
-
-.SH SEE ALSO
-.LP
-\fBcancel\fR(1), \fBlp\fR(1), \fBlpq\fR(1B), \fBlpr\fR(1B), \fBlprm\fR(1B),
-\fBlpstat\fR(1), \fBlpadmin\fR(1M), \fBlpget\fR(1M), \fBnsswitch.conf\fR(4),
-\fBprinters.conf\fR(4), \fBattributes\fR(5), \fBstandards\fR(5)
-.sp
-.LP
-\fISystem Administration Guide: Basic Administration\fR
-.SH NOTES
-.LP
-\fB$HOME/.printers\fR is referenced by the printing commands before further
-name resolution is made in \fB/etc/printers.conf\fR or the name service. If the
-alias references a destination defined in \fB/etc/printers.conf\fR, it is
-possible that the destination is defined differently on different systems. This
-could cause output to be sent to an unintended destination if the user is
-logged in to a different system.
diff --git a/usr/src/man/man4/printers.conf.4 b/usr/src/man/man4/printers.conf.4
deleted file mode 100644
index 81318d73ed..0000000000
--- a/usr/src/man/man4/printers.conf.4
+++ /dev/null
@@ -1,442 +0,0 @@
-'\" te
-.\" Copyright (C) 2006, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PRINTERS.CONF 4 "Feb 25, 2017"
-.SH NAME
-printers.conf \- system printing configuration database
-.SH SYNOPSIS
-.LP
-.nf
-\fB/etc/printers.conf\fR
-.fi
-
-.SS "LDAP"
-.LP
-.nf
-\fBou=printers\fR
-.fi
-
-.SS "NIS"
-.LP
-.nf
-\fBprinters.conf.byname\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBprinters.conf\fR file is the system printing configuration database.
-System administrators use \fBprinters.conf\fR to describe destinations for the
-print client commands and the print protocol adaptor. A destination names a
-printer or class of printers. See \fBlpadmin\fR(1M). The \fBLP\fR print spooler
-uses private \fBLP\fR configuration data for represented in the
-\fBprinters.conf\fR database.
-.SS "Entries"
-.LP
-Each entry in \fBprinters.conf\fR describes one destination. Entries are one
-line consisting of any number of fields separated by colons (`\fB:\fR') and
-terminated by a NEWLINE. The first field of each entry specifies the name of
-the destination and aliases to which the entry describes. Specify one or more
-names or aliases of the destination in this first field. Specify the
-destination using atomic names. URI-style and POSIX-style names are not
-acceptable. See \fBstandards\fR(5). Separate destination names by pipe signs
-(`\fB|\fR').
-.sp
-.LP
-Two destination names are reserved for special use in the first entry. Use
-\fB_all\fR to specify the interest list for \fBlpget\fR, \fBlpstat\fR, and
-\fBcancel\fR. Use \fB_default\fR to specify the default destination.
-.sp
-.LP
-The remaining fields in an entry are \fIkey\fR\fB=\fR\fIvalue\fR pairs. See
-\fBSpecifying Configuration Options\fR for details regarding
-\fIkey\fR\fB=\fR\fIvalue\fR pairs.
-.sp
-.LP
-Empty lines can be included for readability. Entries can continue on to
-multiple lines by adding a backslash (`\fB\e\fR\&') as the last character in
-the line. \fBprinters.conf\fR can include comments. Comments have a pound sign
-(`\fB#\fR') as the first character in the line, and are terminated by a
-NEWLINE. Use the \fBlpset\fR command to create or modify \fBprinters.conf\fR.
-See \fBlpset\fR(1M). Do \fBnot\fR make changes in \fBprinters.conf\fR by using
-an editor.
-.SS "Specifying Configuration Options"
-.LP
-\fIkey\fR\fB=\fR\fIvalue\fR pairs are configuration options defined by the
-system administrator. \fIkey\fR and \fIvalue\fR can be of arbitrary length.
-Separate \fIkey\fR and \fIvalue\fR by the equal (`\fB='\fR) character.
-.SS "Client/Server Configuration Options"
-.LP
-The following client/server configuration options (represented as
-\fIkey\fR\fB=\fR\fIvalue\fR pairs) are supported:
-.sp
-.ne 2
-.na
-\fB\fBprinter-uri-supported=\fR\fIscheme\fR\fB://\fR\fIendpoint\fR\fR
-.ad
-.sp .6
-.RS 4n
-Provides the information necessary to contact the print service for the entry.
-The scheme generally identifies the print service or protocol to use. Currently
-this is limited to \fBlpsched\fR, \fBipp\fR, and \fBlpd\fR but might be
-expanded in the future. Each of these schemes imposes a set of restrictions for
-specifying the endpoint and the functionality provided.
-.sp
-.ne 2
-.na
-\fB\fBlpsched://\fR\fIlocalhost\fR\fB/printers/queue\fR\fR
-.ad
-.sp .6
-.RS 4n
- This is URI form is used for print queues that are configured under the local
-LP service.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBipp://\fR\fIserver\fR[:\fIport\fR\fB]/printers/queue\fR\fR
-.ad
-.br
-.na
-\fB\fBhttp://server:631/printers/queue\fR\fR
-.ad
-.br
-.na
-\fB\fBipp://\fR\fIserver\fR\fB[:\fR\fIport\fR\fB]/...\fR\fR
-.ad
-.sp .6
-.RS 4n
-This URI form is used for print queues that are remotely accessible by way of
-the Internet Print Protocol. This protocol is the preferred method of accessing
-remote print queues because it provides the greatest functionality over the
-wire. The \fBipp\fR uri scheme is specified in the internet print protocol
-specifications and is much more free form than listed above. The actual content
-and format of the endpoint is determined by the remote print service.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBlpd://\fR\fIserver\fR\fB/printers/queue[#Solaris]\fR\fR
-.ad
-.sp .6
-.RS 4n
-This URI form is used for print queues that are remotely accessible by way of
-the BSD Print Protocol. Though limited in capability, this protocol is widely
-used between client and server. It provides maximum interoperability with
-remote print services. When used to communicate with print services on a
-Solaris print server, the optional \fB#Solaris\fR component of the URI
-indicates that Solaris protocol extensions can be used during print job
-submission.
-.RE
-
-If an entry does not contain a printer-uri-supported key/value pair, the
-bsdaddr value is converted to its equivalent uri form and a
-printer-uri-supported key/value pair is added to the resulting data returned to
-applications requesting printer configuration data.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBbsdaddr=\fR\fIserver\fR\fB,\fR\fIdestination\fR[\fB,Solaris\fR]\fR
-.ad
-.sp .6
-.RS 4n
-Sets the server and destination name. Sets if the client generates protocol
-extensions for use with the \fBlp\fR command (see \fBlp\fR(1)). \fBSolaris\fR
-specifies a Solaris print server extension. If \fBSolaris\fR is not specified,
-no protocol extensions are generated. \fIserver\fR is the name of the host
-containing the queue for \fIdestination\fR. \fIdestination\fR is the atomic
-name by which the server knows the destination. If the configuration file
-contents are to be shared with legacy systems (Solaris 2.6 - Solaris 10), this
-key/value pair should be provided for backward compatibility.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBuse=\fR\fIdestination\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets the destination to continue searching for configuration information.
-\fIdestination\fR is an atomic, URI-style (\fIscheme\fR://\fIendpoint\fR), or
-Posix-style name (\fBserver\fR:\fBprinter\fR).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBall=\fR\fIdestination_list\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets the interest list for the \fBlpget\fR, \fBlpstat\fR, and \fBcancel\fR
-commands. \fIdestination_list\fR is a comma-separated list of destinations.
-Specify \fIdestination\fR using atomic, URI-style
-(\fIscheme\fR://\fIendpoint\fR), or Posix-style names (\fBserver:printer\fR).
-See \fBlpget\fR(1M), \fBlpstat\fR(1), and \fBcancel\fR(1).
-.RE
-
-.SS "LP Server Options"
-.LP
-The following \fBLP\fR configuration options (represented as
-\fIkey\fR\fB=\fR\fIvalue\fR pairs) are supported:
-.sp
-.ne 2
-.na
-\fB\fBuser-equivalence=\fR\fBtrue\fR|\fBfalse\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets whether or not usernames are considered equivalent when cancelling a print
-request submitted from a different host in a networked environment. \fBtrue\fR
-means that usernames are considered equivalent, and permits users to cancel a
-print requests submitted from a different host. \fBuser-equivalence\fR is set
-to \fBfalse\fR by default. \fBfalse\fR means that usernames are not considered
-equivalent, and does not permit users cancel a print request submitted from a
-different host. If \fBuser-equivalence\fR is set to \fBfalse\fR, print requests
-can only be cancelled by the users on the host on which the print request was
-generated or by the superuser on the print server.
-.RE
-
-.SS "Print Queue Name Resolution"
-.LP
-Applications needing to resolve print queue names (destinations) to the
-associated print service and communications endpoint make use of a specific
-name resolution ordering. Destination names in URI and POSIX form are complete
-unto themselves and require no further resolution. Names in atomic form are
-resolved based on the \fBprinters\fR database entry in the /etc/nsswitch.conf
-file. See nsswitch.conf(4)
-.SS "Locating the Personal Default Destination"
-.LP
-The default destination is located differently depending on the command.
-.sp
-.LP
-The \fBlp\fR command locates the default destination in the following order:
-.RS +4
-.TP
-1.
-\fBlp\fR command's \fB-d\fR \fIdestination\fR option.
-.RE
-.RS +4
-.TP
-2.
-\fBLPDEST\fR environment variable.
-.RE
-.RS +4
-.TP
-3.
-\fBPRINTER\fR environment variable.
-.RE
-.RS +4
-.TP
-4.
-\fB_default\fR destination in \fB$HOME/.printers\fR.
-.RE
-.RS +4
-.TP
-5.
-\fB_default\fR destination in \fB/etc/printers.conf\fR.
-.RE
-.sp
-.LP
-The \fBlpr\fR, \fBlpq\fR, and \fBlprm\fR commands locate the default
-destination in the following order:
-.RS +4
-.TP
-1.
-\fBlpr\fR command's \fB-P\fR \fIdestination\fR option.
-.RE
-.RS +4
-.TP
-2.
-\fBPRINTER\fR environment variable.
-.RE
-.RS +4
-.TP
-3.
-\fBLPDEST\fR environment variable.
-.RE
-.RS +4
-.TP
-4.
-\fB_default\fR destination in \fB$HOME/.printers\fR.
-.RE
-.RS +4
-.TP
-5.
-\fB_default\fR destination in \fB/etc/printers.conf\fR.
-.RE
-.SS "Locating the Interest List for lpstat, lpget, and cancel"
-.LP
-The \fBlpget\fR, \fBlpstat\fR, and \fBcancel\fR commands locate the interest
-list in the following order:
-.RS +4
-.TP
-1.
-\fB_all\fR list in \fB$HOME/.printers\fR.
-.RE
-.RS +4
-.TP
-2.
-\fB_all\fR list in \fB/etc/printers.conf\fR.
-.RE
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRSetting the Interest List
-.sp
-.LP
-The following entry sets the interest list for the \fBlpget\fR, \fBlpstat\fR
-and \fBcancel\fR commands to \fBprinter1\fR, \fBprinter2\fR and \fBprinter3\fR:
-
-.sp
-.in +2
-.nf
-\fB_all:all=printer1,printer2,printer3\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRSetting the Server Name
-.sp
-.LP
-The following entry sets the server name to \fBserver\fR and printer name
-to \fBps_printer\fR for destinations \fBprinter1\fR and \fBps\fR. It does not
-generate BSD protocol extensions.
-
-.sp
-.in +2
-.nf
-\fBprinter1|ps:bsdaddr=server,ps_printer\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRSetting Server Name and Destination Name
-.sp
-.LP
-The following entry sets the server name to \fBserver\fR and destination name
-to \fBpcl_printer\fR, for destination \fBprinter2\fR. It also generates
-\fBSolaris\fR protocol extensions.
-
-.sp
-.in +2
-.nf
-\fBprinter2:printer-uri-supported=lpd\://server/printers/pcl_printer#Solaris\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 4 \fRSetting Server Name and Destination Name with Continuous Search
-.sp
-.LP
-The following entry sets the server name to \fBserver\fR and destination name
-to \fBnew_printer\fR, for destination \fBprinter3\fR. It also sets the
-\fBprinter3\fR to continue searching for configuration information to printer
-\fBanother_printer\fR.
-
-.sp
-.in +2
-.nf
-\fBprinter3:bsdaddr=server,new_printer:use=another_printer\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 5 \fRSetting Default Destination
-.sp
-.LP
-The following entry sets the default destination to continue searching for
-configuration information to destination \fBprinter1\fR.
-
-.sp
-.in +2
-.nf
-\fB_default:use=printer1\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 6 \fRUsing IPP as the URI
-.sp
-.LP
-The following example uses IPP as the URI:
-
-.sp
-.in +2
-.nf
-\fBprinter4:printer-uri-supported=ipp\e://server/printers/queue\fR
-.fi
-.in -2
-.sp
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/etc/printers.conf\fR\fR
-.ad
-.RS 30n
-System configuration database
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB$HOME/.printers\fR\fR
-.ad
-.RS 30n
-User-configurable printer database
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBou=printers\fR\fR
-.ad
-.RS 30n
-LDAP version of \fB/etc/printers.conf\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBprinters.conf.byname\fR (\fBNIS\fR)\fR
-.ad
-.RS 30n
-\fBNIS\fR version of \fB/etc/printers.conf\fR
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Stability Level Stable
-.TE
-
-.SH SEE ALSO
-.LP
-\fBcancel\fR(1), \fBenable\fR(1), \fBenable\fR(1), \fBlp\fR(1), \fBlpq\fR(1B),
-\fBlpr\fR(1B), \fBlprm\fR(1B), \fBlpstat\fR(1), \fBaccept\fR(1M),
-\fBin.lpd\fR(1M), \fBlpadmin\fR(1M), \fBlpget\fR(1M), \fBlpmove\fR(1M),
-\fBlpset\fR(1M), \fBaccept\fR(1M), \fBnsswitch.conf\fR(4), \fBprinters\fR(4),
-\fBattributes\fR(5), \fBstandards\fR(5)
-.sp
-.LP
-\fISystem Administration Guide: Basic Administration\fR
diff --git a/usr/src/man/man4/priv_names.4 b/usr/src/man/man4/priv_names.4
deleted file mode 100644
index 6050c2cdd1..0000000000
--- a/usr/src/man/man4/priv_names.4
+++ /dev/null
@@ -1,54 +0,0 @@
-'\" te
-.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PRIV_NAMES 4 "Nov 24, 2003"
-.SH NAME
-priv_names \- privilege definition file
-.SH SYNOPSIS
-.LP
-.nf
-\fB/etc/security/priv_names\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBpriv_names\fR file, located in \fB/etc/security\fR, defines the
-privileges with which a process can be associated. See \fBprivileges\fR(5) for
-the privilege definitions. In that man page, privileges correspond to privilege
-names in \fBpriv_names\fR as shown in the following examples:
-.sp
-
-.sp
-.TS
-c c
-l l .
-name in privileges(5) Name in \fBpriv_names\fR
-_
-\fBPRIV_FILE_CHOWN\fR \fBfile_chown\fR
-\fBPRIV_FILE_CHOWN_SELF\fR \fBfile_chown_self\fR
-\fBPRIV_FILE_DAC_EXECUTE\fR \fBfile_dac_execute\fR
-.TE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBppriv\fR(1), \fBattributes\fR(5), \fBprivileges\fR(5)
diff --git a/usr/src/man/man4/proc.4 b/usr/src/man/man4/proc.4
deleted file mode 100644
index e42afdd1fc..0000000000
--- a/usr/src/man/man4/proc.4
+++ /dev/null
@@ -1,3248 +0,0 @@
-.\" Copyright 1989 AT&T
-.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 2019, Joyent, Inc.
-.\" Copyright 2020 OmniOS Community Edition (OmniOSce) Association.
-.\"
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.\"
-.Dd May 17, 2020
-.Dt PROC 4
-.Os
-.Sh NAME
-.Nm proc
-.Nd /proc, the process file system
-.Sh DESCRIPTION
-.Pa /proc
-is a file system that provides access to the state of each process
-and light-weight process (lwp) in the system.
-The name of each entry in the
-.Pa /proc
-directory is a decimal number corresponding to a process-ID.
-These entries are themselves subdirectories.
-Access to process state is provided by additional files contained within each
-subdirectory; the hierarchy is described more completely below.
-In this document,
-.Dq Pa /proc file
-refers to a non-directory file within the hierarchy rooted at
-.Pa /proc .
-The owner of each
-.Pa /proc
-file and subdirectory is determined by the user-ID of the process.
-.Pp
-.Pa /proc
-can be mounted on any mount point, in addition to the standard
-.Pa /proc
-mount point, and can be mounted several places at once.
-Such additional mounts are allowed in order to facilitate the confinement of
-processes to subtrees of the file system via
-.Xr chroot 2
-and yet allow such processes access to commands like
-.Xr ps 1 .
-.Pp
-Standard system calls are used to access
-.Pa /proc
-files:
-.Xr open 2 ,
-.Xr close 2 ,
-.Xr read 2 ,
-and
-.Xr write 2
-(including
-.Xr readv 2 ,
-.Xr writev 2 ,
-.Xr pread 2 ,
-and
-.Xr pwrite 2 ) .
-Most files describe process state and can only be opened for reading.
-.Pa ctl
-and
-.Pa lwpctl
-(control) files permit manipulation of process state and can only be opened for
-writing.
-.Pa as
-(address space) files contain the image of the running process and can be
-opened for both reading and writing.
-An open for writing allows process control; a read-only open allows inspection
-but not control.
-In this document, we refer to the process as open for reading or writing if
-any of its associated
-.Pa /proc
-files is open for reading or writing.
-.Pp
-In general, more than one process can open the same
-.Pa /proc
-file at the same time. \fIExclusive\fR \fIopen\fR is an advisory mechanism provided to
-allow controlling processes to avoid collisions with each other.
-A process can obtain exclusive control of a target process, with respect to
-other cooperating processes, if it successfully opens any
-.Pa /proc
-file in the target process for writing (the
-.Pa as
-or
-.Pa ctl
-files, or the
-.Pa lwpctl
-file of any lwp) while specifying
-.Sy O_EXCL
-in the
-.Xr open 2 .
-Such an open will fail if the target process is already open for writing (that
-is, if an
-.Pa as ,
-.Pa ctl ,
-or
-.Pa lwpctl
-file is already open for writing).
-There can be any number of concurrent read-only opens;
-.Sy O_EXCL
-is ignored on opens for reading.
-It is recommended that the first open for writing by a controlling
-process use the
-.Sy O_EXCL
-flag; multiple controlling processes usually result in chaos.
-.Pp
-If a process opens one of its own
-.Pa /proc
-files for writing, the open
-succeeds regardless of
-.Sy O_EXCL
-and regardless of whether some other process has the process open for writing.
-Self-opens do not count when another process attempts an exclusive open.
-(A process cannot exclude a debugger by opening itself for writing and the
-application of a debugger cannot prevent a process from opening itself.)
-All self-opens for writing are forced to be close-on-exec (see the
-.Sy F_SETFD
-operation of
-.Xr fcntl 2 ) .
-.Pp
-Data may be transferred from or to any locations in the address space of the
-traced process by applying
-.Xr lseek 2
-to position the
-.Pa as
-file at the virtual address of interest followed by
-.Xr read 2
-or
-.Xr write 2
-(or by using
-.Xr pread 2
-or
-.Xr pwrite 2
-for the combined operation).
-The address-map files
-.Pa /proc/ Ns Em pid Ns Pa /map
-and
-.Pa /proc/ Ns Em pid Ns Pa /xmap
-can be read to determine the accessible areas (mappings) of the address space.
-.Sy I/O
-transfers may span contiguous mappings.
-An
-.Sy I/O
-request extending into an unmapped area is truncated at the boundary.
-A write request beginning at an unmapped virtual address fails with
-.Er EIO ;
-a read request beginning at an unmapped virtual address returns zero (an
-end-of-file indication).
-.Pp
-Information and control operations are provided through additional files.
-.In procfs.h
-contains definitions of data structures and message formats
-used with these files.
-Some of these definitions involve the use of sets of flags.
-The set types
-.Sy sigset_t ,
-.Sy fltset_t ,
-and
-.Sy sysset_t
-correspond, respectively, to signal, fault, and system call enumerations
-defined in
-.In sys/signal.h ,
-.In sys/fault.h ,
-and
-.In sys/syscall.h .
-Each set type is large enough to hold flags for its own enumeration.
-Although they are of different sizes, they have a common
-structure and can be manipulated by these macros:
-.Bd -literal -offset indent
-prfillset(&set); /* turn on all flags in set */
-premptyset(&set); /* turn off all flags in set */
-praddset(&set, flag); /* turn on the specified flag */
-prdelset(&set, flag); /* turn off the specified flag */
-r = prismember(&set, flag); /* != 0 iff flag is turned on */
-.Ed
-.Pp
-One of
-.Fn prfillset
-or
-.Fn premptyset
-must be used to initialize
-.Fa set
-before it is used in any other operation.
-.Fa flag
-must be a member of the enumeration corresponding to
-.Fa set .
-.Pp
-Every process contains at least one
-.Em light-weight process ,
-or
-.Sy lwp .
-Each lwp represents a flow of execution that is independently scheduled by the
-operating system.
-All lwps in a process share its address space as well as many other attributes.
-Through the use of
-.Pa lwpctl
-and
-.Pa ctl
-files as described below, it is possible to affect individual lwps in a
-process or to affect all of them at once, depending on the operation.
-.Pp
-When the process has more than one lwp, a representative lwp is chosen by the
-system for certain process status files and control operations.
-The representative lwp is a stopped lwp only if all of the process's lwps are
-stopped; is stopped on an event of interest only if all of the lwps are so
-stopped (excluding
-.Sy PR_SUSPENDED
-lwps); is in a
-.Sy PR_REQUESTED
-stop only if there are no other events of interest to be found; or, failing
-everything else, is in a
-.Sy PR_SUSPENDED
-stop (implying that the process is deadlocked).
-See the description of the
-.Pa status
-file for definitions of stopped states.
-See the
-.Sy PCSTOP
-control operation for the definition of
-.Dq event of interest .
-.Pp
-The representative lwp remains fixed (it will be chosen again on the next
-operation) as long as all of the lwps are stopped on events of interest or are
-in a
-.Sy PR_SUSPENDED
-stop and the
-.Sy PCRUN
-control operation is not applied to any of them.
-.Pp
-When applied to the process control file, every
-.Pa /proc
-control operation
-that must act on an lwp uses the same algorithm to choose which lwp to act
-upon.
-Together with synchronous stopping (see
-.Sy PCSET ) ,
-this enables a debugger to control a multiple-lwp process using only the
-process-level status and control files if it so chooses.
-More fine-grained control can be achieved using the lwp-specific files.
-.Pp
-The system supports two process data models, the traditional 32-bit data model
-in which ints, longs and pointers are all 32 bits wide (the ILP32 data model),
-and on some platforms the 64-bit data model in which longs and pointers, but
-not ints, are 64 bits in width (the LP64 data model).
-In the LP64 data model some system data types, notably
-.Sy size_t ,
-.Sy off_t ,
-.Sy time_t
-and
-.Sy dev_t ,
-grow from 32 bits to 64 bits as well.
-.Pp
-The
-.Pa /proc
-interfaces described here are available to both 32-bit and
-64-bit controlling processes.
-However, many operations attempted by a 32-bit
-controlling process on a 64-bit target process will fail with
-.Er EOVERFLOW
-because the address space range of a 32-bit process cannot encompass a 64-bit
-process or because the data in some 64-bit system data type cannot be
-compressed to fit into the corresponding 32-bit type without loss of
-information.
-Operations that fail in this circumstance include reading and
-writing the address space, reading the address-map files, and setting the
-target process's registers.
-There is no restriction on operations applied by a
-64-bit process to either a 32-bit or a 64-bit target processes.
-.Pp
-The format of the contents of any
-.Pa /proc
-file depends on the data model of the observer (the controlling process), not
-on the data model of the target process.
-A 64-bit debugger does not have to translate the information it reads from a
-.Pa /proc
-file for a 32-bit process from 32-bit format to 64-bit format.
-However, it usually has to be aware of the data model of the target process.
-The
-.Sy pr_dmodel
-field of the
-.Pa status
-files indicates the target process's data model.
-.Pp
-To help deal with system data structures that are read from 32-bit processes, a
-64-bit controlling program can be compiled with the C preprocessor symbol
-.Dv _SYSCALL32
-defined before system header files are included.
-This makes explicit 32-bit fixed-width data structures (like
-.Sy struct stat32 )
-visible to the 64-bit program.
-See
-.Xr types32.h 3HEAD .
-.Sh DIRECTORY STRUCTURE
-At the top level, the directory
-.Pa /proc
-contains entries each of which names an existing process in the system.
-These entries are themselves directories.
-Except where otherwise noted, the files described below can be
-opened for reading only.
-In addition, if a process becomes a
-.Em zombie
-(one that has exited but whose parent has not yet performed a
-.Xr wait 3C
-upon it), most of its associated
-.Pa /proc
-files disappear from the hierarchy; subsequent attempts to open them, or to
-read or write files opened before the process exited, will elicit the error
-.Er ENOENT .
-.Pp
-Although process state and consequently the contents of
-.Pa /proc
-files can change from instant to instant, a single
-.Xr read 2
-of a
-.Pa /proc
-file is guaranteed to return a sane representation of state; that is, the read
-will be atomic with respect to the state of the process.
-No such guarantee applies to successive reads applied to a
-.Pa /proc
-file for a running process.
-In addition, atomicity is not guaranteed for
-.Sy I/O
-applied to the
-.Pa as
-(address-space) file for a running process or for a process whose address space
-contains memory shared by another running process.
-.Pp
-A number of structure definitions are used to describe the files.
-These structures may grow by the addition of elements at the end in future
-releases of the system and it is not legitimate for a program to assume that
-they will not.
-.Sh STRUCTURE OF Pa /proc/ Ns Em pid
-A given directory
-.Pa /proc/ Ns Em pid
-contains the following entries.
-A process can use the invisible alias
-.Pa /proc/self
-if it wishes to open one of its own
-.Pa /proc
-files (invisible in the sense that the name
-.Dq self
-does not appear in a directory listing of
-.Pa /proc
-obtained from
-.Xr ls 1 ,
-.Xr getdents 2 ,
-or
-.Xr readdir 3C ) .
-.Ss contracts
-A directory containing references to the contracts held by the process.
-Each entry is a symlink to the contract's directory under
-.Pa /system/contract .
-See
-.Xr contract 4 .
-.Ss as
-Contains the address-space image of the process; it can be opened for both
-reading and writing.
-.Xr lseek 2
-is used to position the file at the virtual address of interest and then the
-address space can be examined or changed through
-.Xr read 2
-or
-.Xr write 2
-(or by using
-.Xr pread 2
-or
-.Xr pwrite 2
-for the combined operation).
-.Ss ctl
-A write-only file to which structured messages are written directing the system
-to change some aspect of the process's state or control its behavior in some
-way.
-The seek offset is not relevant when writing to this file.
-Individual lwps also have associated
-.Pa lwpctl
-files in the lwp subdirectories.
-A control message may be written either to the process's
-.Pa ctl
-file or to a specific
-.Pa lwpctl
-file with operation-specific effects.
-The effect of a control message is immediately reflected in the state of the
-process visible through appropriate status and information files.
-The types of control messages are described in detail later.
-See
-.Sx CONTROL MESSAGES .
-.Ss status
-Contains state information about the process and the representative lwp.
-The file contains a
-.Sy pstatus
-structure which contains an embedded
-.Sy lwpstatus
-structure for the representative lwp, as follows:
-.Bd -literal -offset 2
-typedef struct pstatus {
- int pr_flags; /* flags (see below) */
- int pr_nlwp; /* number of active lwps in the process */
- int pr_nzomb; /* number of zombie lwps in the process */
- pid_tpr_pid; /* process id */
- pid_tpr_ppid; /* parent process id */
- pid_tpr_pgid; /* process group id */
- pid_tpr_sid; /* session id */
- id_t pr_aslwpid; /* obsolete */
- id_t pr_agentid; /* lwp-id of the agent lwp, if any */
- sigset_t pr_sigpend; /* set of process pending signals */
- uintptr_t pr_brkbase; /* virtual address of the process heap */
- size_t pr_brksize; /* size of the process heap, in bytes */
- uintptr_t pr_stkbase; /* virtual address of the process stack */
- size_tpr_stksize; /* size of the process stack, in bytes */
- timestruc_t pr_utime; /* process user cpu time */
- timestruc_t pr_stime; /* process system cpu time */
- timestruc_t pr_cutime; /* sum of children's user times */
- timestruc_t pr_cstime; /* sum of children's system times */
- sigset_t pr_sigtrace; /* set of traced signals */
- fltset_t pr_flttrace; /* set of traced faults */
- sysset_t pr_sysentry; /* set of system calls traced on entry */
- sysset_t pr_sysexit; /* set of system calls traced on exit */
- char pr_dmodel; /* data model of the process */
- taskid_t pr_taskid; /* task id */
- projid_t pr_projid; /* project id */
- zoneid_t pr_zoneid; /* zone id */
- lwpstatus_t pr_lwp; /* status of the representative lwp */
-} pstatus_t;
-.Ed
-.Pp
-.Sy pr_flags
-is a bit-mask holding the following process flags.
-For convenience, it also contains the lwp flags for the representative lwp,
-described later.
-.Bl -tag -width "PR_MSACCT" -offset indent
-.It Sy PR_ISSYS
-process is a system process (see
-.Sx PCSTOP ) .
-.It Sy PR_VFORKP
-process is the parent of a vforked child (see
-.Sx PCWATCH ) .
-.It Sy PR_FORK
-process has its inherit-on-fork mode set (see
-.Sx PCSET ) .
-.It Sy PR_RLC
-process has its run-on-last-close mode set (see
-.Sx PCSET ) .
-.It Sy PR_KLC
-process has its kill-on-last-close mode set (see
-.Sx PCSET ) .
-.It Sy PR_ASYNC
-process has its asynchronous-stop mode set (see
-.Sx PCSET ) .
-.It Sy PR_MSACCT
-Set by default in all processes to indicate that microstate accounting is
-enabled.
-However, this flag has been deprecated and no longer has any effect.
-Microstate accounting may not be disabled; however, it is still possible to
-toggle the flag.
-.It Sy PR_MSFORK
-Set by default in all processes to indicate that microstate accounting will be
-enabled for processes that this parent
-.Xr fork 2 Ns s .
-However, this flag has been deprecated and no longer has any effect.
-It is possible to toggle this flag; however, it is not possible to disable
-microstate accounting.
-.It Sy PR_BPTADJ
-process has its breakpoint adjustment mode set (see
-.Sx PCSET ) .
-.It Sy PR_PTRACE
-process has its ptrace-compatibility mode set (see
-.Sx PCSET ) .
-.El
-.Pp
-.Sy pr_nlwp
-is the total number of active lwps in the process.
-.Sy pr_nzomb
-is the total number of zombie lwps in the process.
-A zombie lwp is a non-detached lwp that has terminated but has not been reaped
-with
-.Xr thr_join 3C
-or
-.Xr pthread_join 3C .
-.Pp
-.Sy pr_pid ,
-.Sy pr_ppi ,
-.Sy pr_pgid ,
-and
-.Sy pr_sid
-are, respectively, the process ID, the ID of the process's parent, the
-process's process group ID, and the process's session ID.
-.Pp
-.Sy pr_aslwpid
-is obsolete and is always zero.
-.Pp
-.Sy pr_agentid
-is the lwp-ID for the
-.Pa /proc
-agent lwp (see the
-.Sx PCAGENT
-control operation).
-It is zero if there is no agent lwp in the process.
-.Pp
-.Sy pr_sigpend
-identifies asynchronous signals pending for the process.
-.Pp
-.Sy pr_brkbase
-is the virtual address of the process heap and
-.Sy pr_brksize
-is its size in bytes.
-The address formed by the sum of these values is the process
-.Sy break
-(see
-.Xr brk 2 ) .
-.Sy pr_stkbase
-and
-.Sy pr_stksize
-are, respectively, the virtual address of the process stack and its size in
-bytes.
-(Each lwp runs on a separate stack; the distinguishing characteristic of the
-process stack is that the operating system will grow it when necessary.)
-.Pp
-.Sy pr_utime ,
-.Sy pr_stime ,
-.Sy pr_cutime ,
-.Sy and pr_cstime
-are, respectively, the user
-.Sy CPU
-and system
-.Sy CPU
-time consumed by the process, and the cumulative user
-.Sy CPU
-and system
-.Sy CPU
-time consumed by the process's children, in seconds and nanoseconds.
-.Pp
-.Sy pr_sigtrace
-and
-.Sy pr_flttrace
-contain, respectively, the set of signals and the set of hardware faults that
-are being traced (see
-.Sx PCSTRACE
-and
-.Sx PCSFAULT ) .
-.Pp
-.Sy pr_sysentry
-and
-.Sy pr_sysexit
-contain, respectively, the sets of system calls being traced on entry and exit
-(see
-.Sx PCSENTRY
-and
-.Sx PCSEXIT ) .
-.Pp
-.Sy pr_dmodel
-indicates the data model of the process.
-Possible values are:
-.Bl -tag -width "PR_MODEL_NATIVE" -offset indent
-.It Sy PR_MODEL_ILP32
-process data model is ILP32.
-.It Sy PR_MODEL_LP64
-process data model is LP64.
-.It Sy PR_MODEL_NATIVE
-process data model is native.
-.El
-.Pp
-The
-.Sy pr_taskid ,
-.Sy pr_projid ,
-and
-.Sy pr_zoneid
-fields contain respectively, the numeric
-.Sy ID Ns s
-of the task, project, and zone in which the process was running.
-.Pp
-The constant
-.Sy PR_MODEL_NATIVE
-reflects the data model of the controlling process,
-.Em that is ,
-its value is
-.Sy PR_MODEL_ILP32
-or
-.Sy PR_MODEL_LP64
-according to whether the controlling process has been
-compiled as a 32-bit program or a 64-bit program, respectively.
-.Pp
-.Sy pr_lwp
-contains the status information for the representative lwp:
-.Bd -literal -offset 2
-typedef struct lwpstatus {
- int pr_flags; /* flags (see below) */
- id_t pr_lwpid; /* specific lwp identifier */
- short pr_why; /* reason for lwp stop, if stopped */
- short pr_what; /* more detailed reason */
- short pr_cursig; /* current signal, if any */
- siginfo_t pr_info; /* info associated with signal or fault */
- sigset_t pr_lwppend; /* set of signals pending to the lwp */
- sigset_t pr_lwphold; /* set of signals blocked by the lwp */
- struct sigaction pr_action;/* signal action for current signal */
- stack_t pr_altstack; /* alternate signal stack info */
- uintptr_t pr_oldcontext; /* address of previous ucontext */
- short pr_syscall; /* system call number (if in syscall) */
- short pr_nsysarg; /* number of arguments to this syscall */
- int pr_errno; /* errno for failed syscall */
- long pr_sysarg[PRSYSARGS]; /* arguments to this syscall */
- long pr_rval1; /* primary syscall return value */
- long pr_rval2; /* second syscall return value, if any */
- char pr_clname[PRCLSZ]; /* scheduling class name */
- timestruc_t pr_tstamp; /* real-time time stamp of stop */
- timestruc_t pr_utime; /* lwp user cpu time */
- timestruc_t pr_stime; /* lwp system cpu time */
- uintptr_t pr_ustack; /* stack boundary data (stack_t) address */
- ulong_t pr_instr; /* current instruction */
- prgregset_t pr_reg; /* general registers */
- prfpregset_t pr_fpreg; /* floating-point registers */
-} lwpstatus_t;
-.Ed
-.Pp
-.Sy pr_flags
-is a bit-mask holding the following lwp flags.
-For convenience, it also contains the process flags, described previously.
-.Bl -tag -width "PR_STOPPED" -offset indent
-.It Sy PR_STOPPED
-The lwp is stopped.
-.It Sy PR_ISTOP
-The lwp is stopped on an event of interest (see
-.Sx PCSTOP ) .
-.It Sy PR_DSTOP
-The lwp has a stop directive in effect (see
-.Sx PCSTOP ) .
-.It Sy PR_STEP
-The lwp has a single-step directive in effect (see
-.Sx PCRUN ) .
-.It Sy PR_ASLEEP
-The lwp is in an interruptible sleep within a system call.
-.It Sy PR_PCINVAL
-The lwp's current instruction
-.Pq Sy pr_instr
-is undefined.
-.It Sy PR_DETACH
-This is a detached lwp (see
-.Xr pthread_create 3C
-and
-.Xr pthread_join 3C ) .
-.It Sy PR_DAEMON
-This is a daemon lwp (see
-.Xr pthread_create 3C ) .
-.It Sy PR_ASLWP
-This flag is obsolete and is never set.
-.It Sy PR_AGENT
-This is the
-.Pa /proc
-agent lwp for the process.
-.El
-.Pp
-.Sy pr_lwpid
-names the specific lwp.
-.Pp
-.Sy pr_why
-.Sy and
-pr_what
-together describe, for a stopped lwp, the reason for the stop.
-Possible values of
-.Sy pr_why
-and the associated
-.Sy pr_what
-are:
-.Bl -tag -width "PR_JOBCONTROL" -offset left
-.It Sy PR_REQUESTED
-indicates that the stop occurred in response to a stop directive, normally
-because
-.Sy PCSTOP
-was applied or because another lwp stopped on an event of interest and the
-asynchronous-stop flag (see
-.Sx PCSET )
-was not set for the process.
-.Sy pr_what
-is unused in this case.
-.It Sy PR_SIGNALLED
-indicates that the lwp stopped on receipt of a signal (see
-.Sx PCSTRACE ) ;
-.Sy pr_what
-holds the signal number that caused the stop (for a newly-stopped
-lwp, the same value is in
-.Sy pr_cursig ) .
-.It Sy PR_FAULTED
-indicates that the lwp stopped on incurring a hardware fault (see
-.Sx PCSFAULT ) ;
-.Sy pr_what
-holds the fault number that caused the stop.
-.It Sy PR_SYSENTRY
-.It Sy PR_SYSEXIT
-indicate a stop on entry to or exit from a system call (see
-.Sx PCSENTRY
-and
-.Sx PCSEXIT ) ;
-.Sy pr_what
-holds the system call number.
-.It Sy PR_JOBCONTROL
-indicates that the lwp stopped due to the default action of a job control stop
-signal (see
-.Xr sigaction 2 ) ;
-.Sy pr_what
-holds the stopping signal number.
-.It Sy PR_SUSPENDED
-indicates that the lwp stopped due to internal synchronization of lwps within
-the process.
-.Sy pr_what
-is unused in this case.
-.It Sy PR_BRAND
-indicates that the lwp stopped for a brand-specific reason.
-Interpretation of the value of
-.Sy pr_what
-depends on which zone brand is in use.
-It is not generally expected that an lwp stopped in this state will be
-restarted by native
-.\" mandoc(1) doesn't like .Xr macros referring to itself, so this is
-.\" a bit of a hack.
-.Nm Ns Pq 4
-consumers.
-.El
-.Pp
-.Sy pr_cursig
-names the current signal, that is, the next signal to be delivered to the lwp,
-if any.
-.Sy pr_info ,
-when the lwp is in a
-.Sy PR_SIGNALLED
-or
-.Sy PR_FAULTED
-stop, contains additional information pertinent to the particular signal or
-fault (see
-.In sys/siginfo.h ) .
-.Pp
-.Sy pr_lwppend
-identifies any synchronous or directed signals pending for the lwp.
-.Sy pr_lwphold
-identifies those signals whose delivery is being blocked by the lwp (the
-signal mask).
-.Pp
-.Sy pr_action
-contains the signal action information pertaining to the current signal (see
-.Xr sigaction 2 ) ;
-it is undefined if
-.Sy pr_cursig
-is zero.
-.Sy pr_altstack
-contains the alternate signal stack information for the lwp (see
-.Xr sigaltstack 2 ) .
-.Pp
-.Sy pr_oldcontext ,
-if not zero, contains the address on the lwp stack of a
-.Sy ucontext
-structure describing the previous user-level context (see
-.Xr ucontext.h 3HEAD ) .
-It is non-zero only if the lwp is executing in the context of a signal handler.
-.Pp
-.Sy pr_syscall
-is the number of the system call, if any, being executed by
-the lwp; it is non-zero if and only if the lwp is stopped on
-.Sy PR_SYSENTRY
-or
-.Sy PR_SYSEXIT ,
-or is asleep within a system call
-.Pf ( Sy PR_ASLEEP
-is set).
-If
-.Sy pr_syscall
-is non-zero,
-.Sy pr_nsysarg
-is the number of arguments to the system call and
-.Sy pr_sysarg
-contains the actual arguments.
-.Pp
-.Sy pr_rval1 ,
-.Sy pr_rval2 ,
-and
-.Sy pr_errno
-are defined only if the lwp
-is stopped on
-.Sy PR_SYSEXIT
-or if the
-.Sy PR_VFORKP
-flag is set.
-If
-.Sy pr_errno
-is zero,
-.Sy pr_rval1
-and
-.Sy pr_rval2
-contain the return values from the system call.
-Otherwise,
-.Sy pr_errno
-contains the error number for the failing system call (see
-.In sys/errno.h ) .
-.Pp
-.Sy pr_clname
-contains the name of the lwp's scheduling class.
-.Pp
-.Sy pr_tstamp ,
-if the lwp is stopped, contains a time stamp marking when the
-lwp stopped, in real time seconds and nanoseconds since an arbitrary time in
-the past.
-.Pp
-.Sy pr_utime
-is the amount of user level CPU time used by this LWP.
-.Pp
-.Sy pr_stime
-is the amount of system level CPU time used by this LWP.
-.Pp
-.Sy pr_ustack
-is the virtual address of the
-.Sy stack_t
-that contains the stack boundaries for this LWP.
-See
-.Xr getustack 2
-and
-.Xr _stack_grow 3C .
-.Pp
-.Sy pr_instr
-contains the machine instruction to which the lwp's program counter refers.
-The amount of data retrieved from the process is machine-dependent.
-On SPARC based machines, it is a 32-bit word.
-On x86-based machines, it is a single byte.
-In general, the size is that of the machine's smallest instruction.
-If
-.Sy PR_PCINVAL
-is set,
-.Sy pr_instr
-is undefined; this occurs whenever the lwp is not stopped or when the program
-counter refers to an invalid virtual address.
-.Pp
-.Sy pr_reg
-is an array holding the contents of a stopped lwp's general registers.
-.Bl -tag -offset left -width "SPARC V8 (32-bit)"
-.It Sy SPARC
-On SPARC-based machines, the predefined constants
-.Sy R_G0
-\&.\&.\&.
-.Sy R_G7 ,
-.Sy R_O0
-\&.\&.\&.
-.Sy R_O7 ,
-.Sy R_L0
-\&.\&.\&.
-.Sy R_L7 ,
-.Sy R_I0
-\&.\&.\&.
-.Sy R_I7 ,
-.Sy R_PC ,
-.Sy R_nPC ,
-and
-.Sy R_Y
-can be used as indices to refer to the corresponding registers; previous
-register windows can be read from their overflow locations on the stack
-(however, see the
-.Pa gwindows
-file in the
-.Pa /proc/ Ns Em pid Ns Pa /lwp/ Ns Em lwpid
-subdirectory).
-.It Sy SPARC V8 (32-bit)
-For SPARC V8 (32-bit) controlling processes, the predefined constants
-.Sy R_PSR ,
-.Sy R_WIM ,
-and
-.Sy R_TBR
-can be used as indices to refer to the corresponding special registers.
-For SPARC V9 (64-bit) controlling processes, the predefined constants
-.Sy R_CCR ,
-.Sy R_ASI ,
-and
-.Sy R_FPRS
-can be used as indices to refer to the corresponding special registers.
-.It Sy x86 (32-bit)
-For 32-bit x86 processes, the predefined constants listed belowcan be used as
-indices to refer to the corresponding registers.
-.Bl -tag -width "TRAPNO" -offset indent -compact
-.It SS
-.It UESP
-.It EFL
-.It CS
-.It EIP
-.It ERR
-.It TRAPNO
-.It EAX
-.It ECX
-.It EDX
-.It EBX
-.It ESP
-.It EBP
-.It ESI
-.It EDI
-.It DS
-.It ES
-.It GS
-.El
-.Pp
-The preceding constants are listed in
-.In sys/regset.h .
-.Pp
-Note that a 32-bit process can run on an x86 64-bit system, using the constants
-listed above.
-.It Sy x86 (64-bit)
-To read the registers of a 32-
-.Em or
-a 64-bit process, a 64-bit x86 process should use the predefined constants
-listed below.
-.Bl -tag -width "REG_TRAPNO" -offset indent -compact
-.It REG_GSBASE
-.It REG_FSBASE
-.It REG_DS
-.It REG_ES
-.It REG_GS
-.It REG_FS
-.It REG_SS
-.It REG_RSP
-.It REG_RFL
-.It REG_CS
-.It REG_RIP
-.It REG_ERR
-.It REG_TRAPNO
-.It REG_RAX
-.It REG_RCX
-.It REG_RDX
-.It REG_RBX
-.It REG_RBP
-.It REG_RSI
-.It REG_RDI
-.It REG_R8
-.It REG_R9
-.It REG_R10
-.It REG_R11
-.It REG_R12
-.It REG_R13
-.It REG_R14
-.It REG_R15
-.El
-.Pp
-The preceding constants are listed in
-.In sys/regset.h .
-.El
-.Pp
-.Sy pr_fpreg
-is a structure holding the contents of the floating-point registers.
-.Pp
-SPARC registers, both general and floating-point, as seen by a 64-bit
-controlling process are the V9 versions of the registers, even if the target
-process is a 32-bit (V8) process.
-V8 registers are a subset of the V9 registers.
-.Pp
-If the lwp is not stopped, all register values are undefined.
-.Ss psinfo
-Contains miscellaneous information about the process and the representative lwp
-needed by the
-.Xr ps 1
-command.
-.Sy psinfo
-remains accessible after a process becomes a
-.Em zombie .
-The file contains a
-.Sy psinfo
-structure which contains an embedded
-.Sy lwpsinfo
-structure for the representative lwp, as follows:
-.Bd -literal -offset 2
-typedef struct psinfo {
- int pr_flag; /* process flags (DEPRECATED: see below) */
- int pr_nlwp; /* number of active lwps in the process */
- int pr_nzomb; /* number of zombie lwps in the process */
- pid_t pr_pid; /* process id */
- pid_t pr_ppid; /* process id of parent */
- pid_t pr_pgid; /* process id of process group leader */
- pid_t pr_sid; /* session id */
- uid_t pr_uid; /* real user id */
- uid_t pr_euid; /* effective user id */
- gid_t pr_gid; /* real group id */
- gid_t pr_egid; /* effective group id */
- uintptr_t pr_addr; /* address of process */
- size_t pr_size; /* size of process image in Kbytes */
- size_t pr_rssize; /* resident set size in Kbytes */
- dev_t pr_ttydev; /* controlling tty device (or PRNODEV) */
- ushort_t pr_pctcpu; /* % of recent cpu time used by all lwps */
- ushort_t pr_pctmem; /* % of system memory used by process */
- timestruc_t pr_start; /* process start time, from the epoch */
- timestruc_t pr_time; /* cpu time for this process */
- timestruc_t pr_ctime; /* cpu time for reaped children */
- char pr_fname[PRFNSZ]; /* name of exec'ed file */
- char pr_psargs[PRARGSZ]; /* initial characters of arg list */
- int pr_wstat; /* if zombie, the wait() status */
- int pr_argc; /* initial argument count */
- uintptr_t pr_argv; /* address of initial argument vector */
- uintptr_t pr_envp; /* address of initial environment vector */
- char pr_dmodel; /* data model of the process */
- taskid_t pr_taskid; /* task id */
- projid_t pr_projid; /* project id */
- poolid_t pr_poolid; /* pool id */
- zoneid_t pr_zoneid; /* zone id */
- ctid_t pr_contract; /* process contract id */
- lwpsinfo_t pr_lwp; /* information for representative lwp */
-} psinfo_t;
-.Ed
-.Pp
-Some of the entries in
-.Sy psinfo ,
-such as
-.Sy pr_addr ,
-refer to internal kernel data structures and should not be expected to retain
-their meanings across different versions of the operating system.
-.Pp
-.Sy psinfo_t.pr_flag
-is a deprecated interface that should no longer be used.
-Applications currently relying on the
-.Sy SSYS
-bit in
-.Sy pr_flag
-should migrate to checking
-.Sy PR_ISSYS
-in the
-.Sy pstatus
-structure's
-.Sy pr_flags
-field.
-.Pp
-.Sy pr_pctcpu
-and
-.Sy pr_pctmem
-are 16-bit binary fractions in the range 0.0 to 1.0 with the binary point to
-the right of the high-order bit (1.0 == 0x8000).
-.Sy pr_pctcpu
-is the summation over all lwps in the process.
-.Pp
-The
-.Sy pr_fname
-and
-.Sy pr_psargs
-are writable by the owner of the process.
-To write to them, the
-.Sy psinfo
-file should be open for writing and the desired value for the field should be
-written at the file offset that corresponds to the member of structure.
-No other entry may be written to; if a write is attempted to an offset that
-does not represent one of these two memers, or if the size of the write is not
-exactly the size of the member being written, no bytes will be written and
-zero will be returned.
-.Pp
-.Sy pr_lwp
-contains the
-.Xr ps 1
-information for the representative lwp.
-If the process is a
-.Em zombie ,
-.Sy pr_nlwp ,
-.Sy pr_nzomb ,
-and
-.Sy pr_lwp.pr_lwpid
-are zero and the other fields of
-.Sy pr_lwp
-are undefined:
-.Bd -literal -offset 2
-typedef struct lwpsinfo {
- int pr_flag; /* lwp flags (DEPRECATED: see below) */
- id_t pr_lwpid; /* lwp id */
- uintptr_t pr_addr; /* internal address of lwp */
- uintptr_t pr_wchan; /* wait addr for sleeping lwp */
- char pr_stype; /* synchronization event type */
- char pr_state; /* numeric lwp state */
- char pr_sname; /* printable character for pr_state */
- char pr_nice; /* nice for cpu usage */
- short pr_syscall; /* system call number (if in syscall) */
- char pr_oldpri; /* pre-SVR4, low value is high priority */
- char pr_cpu; /* pre-SVR4, cpu usage for scheduling */
- int pr_pri; /* priority, high value = high priority */
- ushort_t pr_pctcpu; /* % of recent cpu time used by this lwp */
- timestruc_t pr_start; /* lwp start time, from the epoch */
- timestruc_t pr_time; /* cpu time for this lwp */
- char pr_clname[PRCLSZ]; /* scheduling class name */
- char pr_name[PRFNSZ]; /* name of system lwp */
- processorid_t pr_onpro; /* processor which last ran this lwp */
- processorid_t pr_bindpro;/* processor to which lwp is bound */
- psetid_t pr_bindpset; /* processor set to which lwp is bound */
- lgrp_id_t pr_lgrp; /* home lgroup */
-} lwpsinfo_t;
-.Ed
-.Pp
-Some of the entries in
-.Sy lwpsinfo ,
-such as
-.Sy pr_addr ,
-.Sy pr_wchan ,
-.Sy pr_stype ,
-.Sy pr_state ,
-and
-.Sy pr_name ,
-refer to internal kernel data structures and should not be expected to retain
-their meanings across different versions of the operating system.
-.Pp
-.Sy lwpsinfo_t.pr_flag
-is a deprecated interface that should no longer be used.
-.Pp
-.Sy pr_pctcpu
-is a 16-bit binary fraction, as described above.
-It represents the
-.Sy CPU
-time used by the specific lwp.
-On a multi-processor machine, the maximum value is 1/N, where N is the number
-of
-.Sy CPU Ns s .
-.Pp
-.Sy pr_contract
-is the id of the process contract of which the process is a member.
-See
-.Xr contract 4
-and
-.Xr process 4 .
-.Ss cred
-Contains a description of the credentials associated with the process:
-.Bd -literal -offset 2
-typedef struct prcred {
- uid_t pr_euid; /* effective user id */
- uid_t pr_ruid; /* real user id */
- uid_t pr_suid; /* saved user id (from exec) */
- gid_t pr_egid; /* effective group id */
- gid_t pr_rgid; /* real group id */
- gid_t pr_sgid; /* saved group id (from exec) */
- int pr_ngroups; /* number of supplementary groups */
- gid_t pr_groups[1]; /* array of supplementary groups */
-} prcred_t;
-.Ed
-.Pp
-The array of associated supplementary groups in
-.Sy pr_groups
- is of variable
-length; the
-.Sy cred
-file contains all of the supplementary groups.
-.Sy pr_ngroups
-indicates the number of supplementary groups. (See also the
-.Sy PCSCRED
-and
-.Sy PCSCREDX
-control operations.)
-.Ss priv
-Contains a description of the privileges associated with the process:
-.Bd -literal -offset 2
-typedef struct prpriv {
- uint32_t pr_nsets; /* number of privilege set */
- uint32_t pr_setsize; /* size of privilege set */
- uint32_t pr_infosize; /* size of supplementary data */
- priv_chunk_t pr_sets[1]; /* array of sets */
-} prpriv_t;
-.Ed
-.Pp
-The actual dimension of the
-.Sy pr_sets Ns []
-field is
-.D1 pr_sets[pr_nsets][pr_setsize]
-.Pp
-which is followed by additional information about the process state
-.Sy pr_infosize
-bytes in size.
-.Pp
-The full size of the structure can be computed using
-.Fn PRIV_PRPRIV_SIZE "prpriv_t *" .
-.Ss secflags
-This file contains the security-flags of the process.
-It contains a description of the security flags associated with the process.
-.Bd -literal -offset 2
-typedef struct prsecflags {
- uint32_t pr_version; /* ABI Versioning of this structure */
- secflagset_t pr_effective; /* Effective flags */
- secflagset_t pr_inherit; /* Inheritable flags */
- secflagset_t pr_lower; /* Lower flags */
- secflagset_t pr_upper; /* Upper flags */
-} prsecflags_t;
-.Ed
-.Pp
-The
-.Sy pr_version
-field is a version number for the structure, currently
-.Sy PRSECFLAGS_VERSION_1 .
-.Ss sigact
-Contains an array of
-.Sy sigaction structures
-describing the current dispositions of all signals associated with the traced
-process (see
-.Xr sigaction 2 ) .
-Signal numbers are displaced by 1 from array indices, so that the action for
-signal number
-.Va n
-appears in position
-.Va n Ns -1
-of the array.
-.Ss auxv
-Contains the initial values of the process's aux vector in an array of
-.Sy auxv_t
-structures (see
-.In sys/auxv.h ) .
-The values are those that were passed by the operating system as startup
-information to the dynamic linker.
-.Ss argv
-Contains the concatenation of each of the argument strings, including their
-.Sy NUL
-terminators, in the argument vector
-.Pq Va argv
-for the process.
-If the process has modified either its argument vector, or the contents of
-any of the strings referenced by that vector, those changes will be visible
-here.
-.Ss ldt
-This file exists only on x86-based machines.
-It is non-empty only if the process has established a local descriptor table
-.Pq Sy LDT .
-If non-empty, the file contains the array of currently active
-.Sy LDT
-entries in an array of elements of type
-.Vt struct ssd ,
-defined in
-.In sys/sysi86.h ,
-one element for each active
-.Sy LDT
-entry.
-.Ss map, xmap
-Contain information about the virtual address map of the process.
-The map file contains an array of
-.Sy prmap
-structures while the xmap file contains an
-array of
-.Sy prxmap
-structures.
-Each structure describes a contiguous virtual
-address region in the address space of the traced process:
-.Bd -literal -offset 2
-typedef struct prmap {
- uintptr_tpr_vaddr; /* virtual address of mapping */
- size_t pr_size; /* size of mapping in bytes */
- char pr_mapname[PRMAPSZ]; /* name in /proc/pid/object */
- offset_t pr_offset; /* offset into mapped object, if any */
- int pr_mflags; /* protection and attribute flags */
- int pr_pagesize; /* pagesize for this mapping in bytes */
- int pr_shmid; /* SysV shared memory identifier */
-} prmap_t;
-.Ed
-.Bd -literal -offset 2
-typedef struct prxmap {
- uintptr_t pr_vaddr; /* virtual address of mapping */
- size_t pr_size; /* size of mapping in bytes */
- char pr_mapname[PRMAPSZ]; /* name in /proc/pid/object */
- offset_t pr_offset; /* offset into mapped object, if any */
- int pr_mflags; /* protection and attribute flags */
- int pr_pagesize; /* pagesize for this mapping in bytes */
- int pr_shmid; /* SysV shared memory identifier */
- dev_t pr_dev; /* device of mapped object, if any */
- uint64_t pr_ino; /* inode of mapped object, if any */
- size_t pr_rss; /* pages of resident memory */
- size_t pr_anon; /* pages of resident anonymous memory */
- size_t pr_locked; /* pages of locked memory */
- uint64_t pr_hatpagesize; /* pagesize of mapping */
-} prxmap_t;
-.Ed
-.Pp
-.Sy pr_vaddr
-is the virtual address of the mapping within the traced process and
-.Sy pr_size
-is its size in bytes.
-.Sy pr_mapname ,
-if it does not contain a null string, contains the name of a file in the
-.Sy object
-directory (see below) that can be opened read-only to obtain a file descriptor
-for the mapped file associated with the mapping.
-This enables a debugger to find object file symbol tables without having to
-know the real path names of the executable file and shared libraries of
-the process.
-.Sy pr_offset
-is the 64-bit offset within the mapped file (if any) to which the virtual
-address is mapped.
-.Pp
-.Sy pr_mflags
-is a bit-mask of protection and attribute flags:
-.Bl -tag -width "MA_NORESERVE" -offset left
-.It Sy MA_READ
-mapping is readable by the traced process.
-.It Sy MA_WRITE
-mapping is writable by the traced process.
-.It Sy MA_EXEC
-mapping is executable by the traced process.
-.It Sy MA_SHARED
-mapping changes are shared by the mapped object.
-.It Sy MA_ISM
-mapping is intimate shared memory (shared MMU resources)
-.It Sy MAP_NORESERVE
-mapping does not have swap space reserved (mapped with MAP_NORESERVE)
-.It Sy MA_SHM
-mapping System V shared memory
-.El
-.Pp
-A contiguous area of the address space having the same underlying mapped object
-may appear as multiple mappings due to varying read, write, and execute
-attributes.
-The underlying mapped object does not change over the range of a
-single mapping.
-An
-.Sy I/O
-operation to a mapping marked
-.Sy MA_SHARED
-fails if applied at a virtual address not corresponding to a valid page in the
-underlying mapped object.
-A write to a
-.Sy MA_SHARED
-mapping that is not marked
-.Sy MA_WRITE
-fails.
-Reads and writes to private mappings always succeed.
-Reads and writes to unmapped addresses fail.
-.Pp
-.Sy pr_pagesize
-is the page size for the mapping, currently always the system pagesize.
-.Pp
-.Sy pr_shmid
-is the shared memory identifier, if any, for the mapping.
-Its value is \-1
-if the mapping is not System V shared memory.
-See
-.Xr shmget 2 .
-.Pp
-.Sy pr_dev
-is the device of the mapped object, if any, for the mapping.
-Its value is
-.Sy PRNODEV
-.Pq \-1
-if the mapping does not have a device.
-.Pp
-.Sy pr_ino
-is the inode of the mapped object, if any, for the mapping.
-Its contents are only valid if
-.Sy pr_dev
-is not
-.Sy PRNODEV .
-.Pp
-.Sy pr_rss
-is the number of resident pages of memory for the mapping.
-The number of resident bytes for the mapping may be determined by multiplying
-.Sy pr_rss
-by the page size given by
-.Sy pr_pagesize .
-.Pp
-.Sy pr_anon
-is the number of resident anonymous memory pages (pages which are
-private to this process) for the mapping.
-.Pp
-.Sy pr_locked
-is the number of locked pages for the mapping.
-Pages which are locked are always resident in memory.
-.Pp
-.Sy pr_hatpagesize
-is the size, in bytes, of the
-.Sy HAT
-.Pq Sy MMU
-translation for the mapping.
-.Sy pr_hatpagesize
-may be different than
-.Sy pr_pagesize .
-The possible values are hardware architecture specific, and
-may change over a mapping's lifetime.
-.Ss rmap
-Contains information about the reserved address ranges of the process.
-The file contains an array of
-.Sy prmap
-structures, as defined above for the
-.Sy map
-file.
-Each structure describes a contiguous virtual address region in the
-address space of the traced process that is reserved by the system in the sense
-that an
-.Xr mmap 2
-system call that does not specify
-.Sy MAP_FIXED
-will not use any part of it for the new mapping.
-Examples of such reservations include the address ranges reserved for the
-process stack and the individual thread stacks of a multi-threaded process.
-.Ss cwd
-A symbolic link to the process's current working directory.
-See
-.Xr chdir 2 .
-A
-.Xr readlink 2
-of
-.Pa /proc/ Ns Em pid Ns Pa /cwd
-yields a null string.
-However, it can be opened, listed, and searched as a directory, and can be the
-target of
-.Xr chdir 2 .
-.Ss root
-A symbolic link to the process's root directory.
-.Pa /proc/ Ns Em pid Ns Pa /root
-can differ from the system root directory if the process or one of its
-ancestors executed
-.Xr chroot 2
-as super user.
-It has the same semantics as
-.Pa /proc/ Ns Em pid Ns Pa /cwd .
-.Ss fd
-A directory containing references to the open files of the process.
-Each entry is a decimal number corresponding to an open file descriptor in the
-process.
-.Pp
-If an entry refers to a regular file, it can be opened with normal file system
-semantics but, to ensure that the controlling process cannot gain greater
-access than the controlled process, with no file access modes other than its
-read/write open modes in the controlled process.
-If an entry refers to a directory, it can be accessed with the same semantics
-as
-.Pa /proc/ Ns Em pid Ns Pa /cwd .
-An attempt to open any other type of entry fails with
-.Er EACCES .
-.Ss fdinfo
-A directory containing information about each of the process's open files.
-Each entry is a decimal number corresponding to an open file descriptor in the
-process.
-Each file contains a
-.Sy prfdinfo_t
-structure defined as follows:
-.Bd -literal -offset 2
-typedef struct prfdinfo {
- int pr_fd; /* file descriptor number */
- mode_t pr_mode; /* (see st_mode in stat(2)) */
- uint64_t pr_ino; /* inode number */
- uint64_t pr_size; /* file size */
- int64_t pr_offset; /* current offset of file descriptor */
- uid_t pr_uid; /* owner's user id */
- gid_t pr_gid; /* owner's group id */
- major_t pr_major; /* major number of device containing file */
- minor_t pr_minor; /* minor number of device containing file */
- major_t pr_rmajor; /* major number (if special file) */
- minor_t pr_rminor; /* minor number (if special file) */
- int pr_fileflags; /* (see F_GETXFL in fcntl(2)) */
- int pr_fdflags; /* (see F_GETFD in fcntl(2)) */
- short pr_locktype; /* (see F_GETLK in fcntl(2)) */
- pid_t pr_lockpid; /* process holding file lock (see F_GETLK) */
- int pr_locksysid; /* sysid of locking process (see F_GETLK) */
- pid_t pr_peerpid; /* peer process (socket, door) */
- int pr_filler[25]; /* reserved for future use */
- char pr_peername[PRFNSZ]; /* peer process name */
-#if __STDC_VERSION__ >= 199901L
- char pr_misc[]; /* self describing structures */
-#else
- char pr_misc[1];
-#endif
-} prfdinfo_t;
-.Ed
-.Pp
-The
-.Sy pr_misc
-element points to a list of additional miscellaneous data items, each of which
-has a header of type
-.Sy pr_misc_header_t
-specifying the size and type, and some data which immediately follow
-the header.
-.Bd -literal -offset 2
-typedef struct pr_misc_header {
- uint_t pr_misc_size;
- uint_t pr_misc_type;
-} pr_misc_header_t;
-.Ed
-.Pp
-The
-.Sy pr_misc_size
-field is the sum of the sizes of the header and the associated data and any
-trailing padding bytes which will be set to zero.
-The end of the list is indicated by a header with a zero size and a type with
-all bits set.
-.Pp
-The following miscellaneous data types can be present:
-.Bl -tag -width "PR_SOCKOPT_TCP_CONGESTION" -offset left
-.It Sy PR_PATHNAME
-The file descriptor's path in the filesystem.
-This is a NUL-terminated sequence of characters.
-.It Sy PR_SOCKETNAME
-A
-.Sy sockaddr
-structure representing the local socket name for this file descriptor, as
-would be returned by calling
-.Fn getsockname
-within the process.
-.It Sy PR_PEERSOCKNAME
-A
-.Sy sockaddr
-structure representing the peer socket name for this file descriptor, as
-would be returned by calling
-.Fn getpeername
-within the process.
-.It Sy PR_SOCKOPTS_BOOL_OPTS
-An unsigned integer which has bits set corresponding to options which are
-set on the underlying socket.
-The following bits may be set:
-.Bl -tag -width "PR_SO_PASSIVE_CONNECT"
-.It Sy PR_SO_DEBUG
-.It Sy PR_SO_REUSEADDR
-.It Sy PR_SO_REUSEPORT
-.It Sy PR_SO_KEEPALIVE
-.It Sy PR_SO_DONTROUTE
-.It Sy PR_SO_BROADCAST
-.It Sy PR_SO_OOBINLINE
-.It Sy PR_SO_DGRAM_ERRIND
-.It Sy PR_SO_ALLZONES
-.It Sy PR_SO_MAC_EXEMPT
-.It Sy PR_SO_EXCLBIND
-.It Sy PR_SO_PASSIVE_CONNECT
-.It Sy PR_SO_ACCEPTCONN
-.It Sy PR_UDP_NAT_T_ENDPOINT
-.It Sy PR_SO_VRRP
-.It Sy PR_SO_MAC_IMPLICIT
-.El
-.It Sy PR_SOCKOPT_LINGER
-A
-.Sy struct linger
-as would be returned by calling
-.Fn getsockopt SO_LINGER
-within the process.
-.It Sy PR_SOCKOPT_SNDBUF
-The data that would be returned by calling
-.Fn getsockopt SO_SNDBUF
-within the process.
-.It Sy PR_SOCKOPT_RCVBUF
-The data that would be returned by calling
-.Fn getsockopt SO_RCVBUF
-within the process.
-.It Sy PR_SOCKOPT_IP_NEXTHOP
-The data that would be returned by calling
-.Fn getsockopt IPPROTO_IP IP_NEXTHOP
-within the process.
-.It Sy PR_SOCKOPT_IPV6_NEXTHOP
-The data that would be returned by calling
-.Fn getsockopt IPPROTO_IPV6 IPV6_NEXTHOP
-within the process.
-.It Sy PR_SOCKOPT_TYPE
-The data that would be returned by calling
-.Fn getsockopt SO_TYPE
-within the process.
-.It Sy PR_SOCKOPT_TCP_CONGESTION
-For TCP sockets, the data that would be returned by calling
-.Fn getsockopt IPPROTO_TCP TCP_CONGESTION
-within the process.
-This is a NUL-terminated character array containing the name of the congestion
-algorithm in use for the socket.
-.It Sy PR_SOCKFILTERS_PRIV
-Private data relating to up to the first 32 socket filters pushed on this
-descriptor.
-.El
-.Ss object
-A directory containing read-only files with names corresponding to the
-.Sy pr_mapname
-entries in the
-.Sy map
-and
-.Sy pagedata
-files.
-Opening such a file yields a file descriptor for the underlying mapped file
-associated with an address-space mapping in the process.
-The file name
-.Pa a.out
-appears in the directory as an alias for the process's executable file.
-.Pp
-The
-.Pa object
-directory makes it possible for a controlling process to gain
-access to the object file and any shared libraries (and consequently the symbol
-tables) without having to know the actual path names of the executable files.
-.Ss path
-A directory containing symbolic links to files opened by the process.
-The directory includes one entry for
-.Pa cwd
-and
-.Pa root .
-The directory also contains a numerical entry for each file descriptor in the
-.Pa fd
-directory, and entries matching those in the
-.Pa object
-directory.
-If this information is not available, any attempt to read the contents of the
-symbolic link will fail.
-This is most common for files that do not exist in the filesystem namespace
-(such as
-.Sy FIFO Ns s
-and sockets), but can also happen for regular files.
-For the file descriptor entries, the path may be different from the one
-used by the process to open the file.
-.Ss pagedata
-Opening the page data file enables tracking of address space references and
-modifications on a per-page basis.
-.Pp
-A
-.Xr read 2
-of the page data file descriptor returns structured page data
-and atomically clears the page data maintained for the file by the system.
-That is to say, each read returns data collected since the last read; the
-first read returns data collected since the file was opened.
-When the call completes, the read buffer contains the following structure as
-its header and thereafter contains a number of section header structures and
-associated byte arrays that must be accessed by walking linearly through the
-buffer.
-.Bd -literal -offset 2
-typedef struct prpageheader {
- timestruc_t pr_tstamp; /* real time stamp, time of read() */
- ulong_t pr_nmap; /* number of address space mappings */
- ulong_t pr_npage; /* total number of pages */
-} prpageheader_t;
-.Ed
-.Pp
-The header is followed by
-.Sy "pr_nmap prasmap"
-structures and associated data arrays.
-The
-.Sy prasmap
-structure contains the following elements:
-.Bd -literal -offset 2
-typedef struct prasmap {
- uintptr_t pr_vaddr; /* virtual address of mapping */
- ulong_t pr_npage; /* number of pages in mapping */
- char pr_mapname[PRMAPSZ]; /* name in /proc/pid/object */
- offset_t pr_offset; /* offset into mapped object, if any */
- int pr_mflags; /* protection and attribute flags */
- int pr_pagesize; /* pagesize for this mapping in bytes */
- int pr_shmid; /* SysV shared memory identifier */
-} prasmap_t;
-.Ed
-.Pp
-Each section header is followed by
-.Sy pr_npage
-bytes, one byte for each page in the mapping, plus 0-7 null bytes at the end
-so that the next
-.Sy prasmap
-structure begins on an eight-byte aligned boundary.
-Each data byte may contain these flags:
-.Bl -tag -width "PG_REFERENCED" -offset 2
-.It Sy PG_REFERENCED
-page has been referenced.
-.It Sy PG_MODIFIED
-page has been modified.
-.El
-.Pp
-If the read buffer is not large enough to contain all of the page data, the
-read fails with
-.Er E2BIG
-and the page data is not cleared.
-The required size of the read buffer can be determined through
-.Xr fstat 2 .
-Application of
-.Xr lseek 2
-to the page data file descriptor is ineffective; every read
-starts from the beginning of the file.
-Closing the page data file descriptor
-terminates the system overhead associated with collecting the data.
-.Pp
-More than one page data file descriptor for the same process can be opened, up
-to a system-imposed limit per traced process.
-A read of one does not affect the data being collected by the system for the
-others.
-An open of the page data file will fail with
-.Er ENOMEM
-if the system-imposed limit would be exceeded.
-.Ss watch
-Contains an array of
-.Vt prwatch
-structures, one for each watched area established by the
-.Sy PCWATCH
-control operation.
-See
-.Sx PCWATCH
-for details.
-.Ss usage
-Contains process usage information described by a
-.Vt prusage
-structure which contains at least the following fields:
-.Bd -literal -offset 2
-typedef struct prusage {
- id_t pr_lwpid; /* lwp id. 0: process or defunct */
- int pr_count; /* number of contributing lwps */
- timestruc_t pr_tstamp; /* real time stamp, time of read() */
- timestruc_t pr_create; /* process/lwp creation time stamp */
- timestruc_t pr_term; /* process/lwp termination time stamp */
- timestruc_t pr_rtime; /* total lwp real (elapsed) time */
- timestruc_t pr_utime; /* user level CPU time */
- timestruc_t pr_stime; /* system call CPU time */
- timestruc_t pr_ttime; /* other system trap CPU time */
- timestruc_t pr_tftime; /* text page fault sleep time */
- timestruc_t pr_dftime; /* data page fault sleep time */
- timestruc_t pr_kftime; /* kernel page fault sleep time */
- timestruc_t pr_ltime; /* user lock wait sleep time */
- timestruc_t pr_slptime; /* all other sleep time */
- timestruc_t pr_wtime; /* wait-cpu (latency) time */
- timestruc_t pr_stoptime; /* stopped time */
- ulong_t pr_minf; /* minor page faults */
- ulong_t pr_majf; /* major page faults */
- ulong_t pr_nswap; /* swaps */
- ulong_t pr_inblk; /* input blocks */
- ulong_t pr_oublk; /* output blocks */
- ulong_t pr_msnd; /* messages sent */
- ulong_t pr_mrcv; /* messages received */
- ulong_t pr_sigs; /* signals received */
- ulong_t pr_vctx; /* voluntary context switches */
- ulong_t pr_ictx; /* involuntary context switches */
- ulong_t pr_sysc; /* system calls */
- ulong_t pr_ioch; /* chars read and written */
-} prusage_t;
-.Ed
-.Pp
-Microstate accounting is now continuously enabled.
-While this information was
-previously an estimate, if microstate accounting were not enabled, the current
-information is now never an estimate represents time the process has spent in
-various states.
-.Ss lstatus
-Contains a
-.Vt prheader
-structure followed by an array of
-.Vt lwpstatus
-structures, one for each active lwp in the process (see also
-.Pa /proc/ Ns Em pid Ns Pa /lwp/ Ns Em lwpid Ns Pa /lwpstatus ,
-below).
-The
-.Vt prheader
-structure describes the number and size of the array entries that follow.
-.Bd -literal -offset 2
-typedef struct prheader {
- long pr_nent; /* number of entries */
- size_t pr_entsize; /* size of each entry, in bytes */
-} prheader_t;
-.Ed
-.Pp
-The
-.Vt lwpstatus
-structure may grow by the addition of elements at the end in future releases
-of the system.
-Programs must use
-.Sy pr_entsize
-in the file header to index through the array.
-These comments apply to all
-.Pa /proc
-files that include a
-.Vt prheader
-structure
-.Pf ( Pa lpsinfo
-and
-.Pa lusage ,
-below).
-.Ss lpsinfo
-Contains a
-.Vt prheader
-structure followed by an array of
-.Vt lwpsinfo
-structures, one for eachactive and zombie lwp in the process.
-See also
-.Pa /proc/ Ns Em pid Ns Pa /lwp/ Ns Em lwpid Ns Pa /lwpsinfo ,
-below.
-.Ss lusage
-Contains a
-.Vt prheader
-structure followed by an array of
-.Vt prusage
-structures, one for each active lwp in the process, plus an additional element
-at the beginning that contains the summation over all defunct lwps (lwps that
-once existed but no longer exist in the process).
-Excluding the
-.Sy pr_lwpid ,
-.Sy pr_tstamp ,
-.Sy pr_create ,
-and
-.Sy pr_term
-entries, the entry-by-entry summation over all these structures is the
-definition of the process usage information obtained from the
-.Pa usage
-file. (See also
-.Pa /proc/ Ns Em pid Ns Pa /lwp/ Ns Em lwpid Ns Pa /lwpusage ,
-below.)
-.Ss lwp
-A directory containing entries each of which names an active or zombie lwp
-within the process.
-These entries are themselves directories containing additional files as
-described below.
-Only the
-.Pa lwpsinfo
-file exists in the directory of a zombie lwp.
-.Sh "STRUCTURE OF" Pa /proc/ Ns Em pid Ns Pa /lwp/ Ns Em lwpid
-A given directory
-.Pa /proc/ Ns Em pid Ns Pa /lwp/ Ns Em lwpid
-contains the following entries:
-.Ss lwpctl
-Write-only control file.
-The messages written to this file affect the specific
-lwp rather than the representative lwp, as is the case for the process's
-.Pa ctl
-file.
-.Ss lwpname
-A buffer of
-.Dv THREAD_NAME_MAX
-bytes representing the LWP name; the buffer is
-zero-filled if the thread name is shorter than the buffer.
-If no thread name is set, the buffer contains the empty string.
-A read with a buffer shorter than
-.Dv THREAD_NAME_MAX
-bytes is not guaranteed to be NUL-terminated.
-Writing to this file will set the LWP name for the specific lwp.
-This file may not be present in older operating system versions.
-.Dv THREAD_NAME_MAX
-may increase in the future; clients should be prepared for this.
-.Ss lwpstatus
-lwp-specific state information.
-This file contains the
-.Vt lwpstatus
-structure for the specific lwp as described above for the representative lwp in
-the process's
-.Pa status
-file.
-.Ss lwpsinfo
-lwp-specific
-.Xr ps 1
-information.
-This file contains the
-.Vt lwpsinfo
-structure for the specific lwp as described above for the representative lwp in
-the process's
-.Pa psinfo
-file.
-The
-.Pa lwpsinfo
-file remains accessible after an lwp becomes a zombie.
-.Ss lwpusage
-This file contains the
-.Vt prusage
-structure for the specific lwp as described above for the process's
-.Pa usage
-file.
-.Ss gwindows
-This file exists only on SPARC based machines.
-If it is non-empty, it contains a
-.Vt gwindows_t
-structure, defined in
-.In sys/regset.h ,
-with the values of those SPARC register windows that could not be stored on
-the stack when the lwp stopped.
-Conditions under which register windows are not stored on the
-stack are: the stack pointer refers to nonexistent process memory or the stack
-pointer is improperly aligned.
-If the lwp is not stopped or if there are no
-register windows that could not be stored on the stack, the file is empty (the
-usual case).
-.Ss xregs
-Extra state registers.
-The extra state register set is architecture dependent;
-this file is empty if the system does not support extra state registers.
-If the file is non-empty, it contains an architecture dependent structure of
-type
-.Vt prxregset_t ,
-defined in
-.In procfs.h ,
-with the values of the lwp's extra state registers.
-If the lwp is not stopped, all register values are undefined.
-See also the
-.Sx PCSXREG
-control operation, below.
-.Ss asrs
-This file exists only for 64-bit SPARC V9 processes.
-It contains an
-.Vt asrset_t
-structure, defined in
-.In sys/regset.h ,
-containing the values of the lwp's platform-dependent ancillary state registers.
-If the lwp is not stopped, all register values are undefined.
-See also the
-.Sx PCSASRS
-control operation, below.
-.Ss spymaster
-For an agent lwp (see
-.Sx PCAGENT ) ,
-this file contains a
-.Vt psinfo_t
-structure that corresponds to the process that created the agent lwp at the
-time the agent was created.
-This structure is identical to that retrieved via the
-.Pa psinfo
-file, with one modification: the
-.Sy pr_time
-field does not correspond to the CPU time for the process, but rather to the
-creation time of the agent lwp.
-.Ss templates
-A directory which contains references to the active templates for the lwp,
-named by the contract type.
-Changes made to an active template descriptor do
-not affect the original template which was activated, though they do affect the
-active template.
-It is not possible to activate an active template descriptor.
-See
-.Xr contract 4 .
-.Sh CONTROL MESSAGES
-Process state changes are effected through messages written to a process's
-.Sy ctl
-file or to an individual lwp's
-.Sy lwpctl
-file.
-All control messages consist of a
-.Sy long
-that names the specific operation followed by
-additional data containing the operand, if any.
-.Pp
-Multiple control messages may be combined in a single
-.Xr write 2
-(or
-.Xr writev 2 )
-to a control file, but no partial writes are permitted.
-That is, each control message, operation code plus operand, if any, must be
-presented in its entirety to the
-.Xr write 2
-and not in pieces over several system calls.
-If a control operation fails, no subsequent operations contained in the same
-.Xr write 2
-are attempted.
-.Pp
-Descriptions of the allowable control messages follow.
-In all cases, writing a message to a control file for a process or lwp that
-has terminated elicits the error
-.Er ENOENT .
-.Ss PCSTOP PCDSTOP PCWSTOP PCTWSTOP
-When applied to the process control file,
-.Sy PCSTOP
-directs all lwps to stop and waits for them to stop,
-.Sy PCDSTOP
-directs all lwps to stop without waiting for them to stop, and
-.Sy PCWSTOP
-simply waits for all lwps to stop.
-When applied to an lwp control file,
-.Sy PCSTOP
-directs the specific lwp to stop and waits until it has stopped,
-.Sy PCDSTOP
-directs the specific lwp to stop without waiting for it to stop, and
-.Sy PCWSTOP
- simply waits for the specific lwp to stop.
-When applied to an lwp control file,
-.Sy PCSTOP
-and
-.Sy PCWSTOP
-complete when the lwp stops on an event of interest, immediately
-if already so stopped; when applied to the process control file, they complete
-when every lwp has stopped either on an event of interest or on a
-.Sy PR_SUSPENDED
-stop.
-.Pp
-.Sy PCTWSTOP
-is identical to
-.Sy PCWSTOP
-except that it enables the operation to time out, to avoid waiting forever for
-a process or lwp that may never stop on an event of interest.
-.Sy PCTWSTOP
-takes a
-.Sy long
-operand specifying a number of milliseconds; the wait will terminate
-successfully after the specified number of milliseconds even if the process or
-lwp has not stopped; a timeout value of zero makes the operation identical to
-.Sy PCWSTOP .
-.Pp
-An
-.Dq event of interest
-is either a
-.Sy PR_REQUESTED
-stop or a stop that has been specified in the process's tracing flags (set by
-.Sy PCSTRACE ,
-.Sy PCSFAULT ,
-.Sy PCSENTRY ,
-and
-.Sy PCSEXIT ) .
-.Sy PR_JOBCONTROL
- and
-.Sy PR_SUSPENDED
-stops are specifically not events of interest.
-(An lwp may stop twice due to a stop signal, first showing
-.Sy PR_SIGNALLED
-if the signal is traced and again showing
-.Sy PR_JOBCONTROL
-if the lwp is set running without clearing the signal.)
-If
-.Sy PCSTOP
-or
-.Sy PCDSTOP
-is applied to an
-lwp that is stopped, but not on an event of interest, the stop directive takes
-effect when the lwp is restarted by the competing mechanism.
-At that time, the lwp enters a
-.Sy PR_REQUESTED
-stop before executing any user-level code.
-.Pp
-A write of a control message that blocks is interruptible by a signal so that,
-for example, an
-.Xr alarm 2
-can be set to avoid waiting forever for a
-process or lwp that may never stop on an event of interest.
-If
-.Sy PCSTOP
-is interrupted, the lwp stop directives remain in effect even though the
-.Xr write 2
-returns an error.
-(Use of
-.Sy PCTWSTOP
-with a non-zero timeout is recommended over
-.Sy PCWSTOP
-with an
-.Xr alarm 2 . )
-.Pp
-A system process (indicated by the
-.Sy PR_ISSYS
-flag) never executes at user level, has no user-level address space visible
-through
-.Pa /proc ,
-and cannot be stopped.
-Applying one of these operations to a system process or any of its
-lwps elicits the error
-.Er EBUSY .
-.Ss PCRUN
-Make an lwp runnable again after a stop.
-This operation takes a
-.Vt long
-operand containing zero or more of the following flags:
-.Bl -tag -width "PRSABORT" -offset left
-.It Sy PRCSIG
-clears the current signal, if any (see
-.Sx PCCSIG ) .
-.It Sy PRCFAULT
-clears the current fault, if any (see
-.Sx PCCFAULT ) .
-.It Sy PRSTEP
-directs the lwp to execute a single machine instruction.
-On completion of the instruction, a trace trap occurs.
-If
-.Sy FLTTRACE
-is being traced, the lwp stops; otherwise, it is sent
-.Sy SIGTRAP .
-If
-.Sy SIGTRAP
-is being traced and is not blocked, the lwp stops.
-When the lwp stops on an event of interest,
-the single-step directive is cancelled, even if the stop occurs before the
-instruction is executed.
-This operation requires hardware and operating system
-support and may not be implemented on all processors.
-It is implemented on SPARC and x86-based machines.
-.It Sy PRSABORT
-is meaningful only if the lwp is in a
-.Sy PR_SYSENTRY
-stop or is marked
-.Sy PR_ASLEEP ;
-it instructs the lwp to abort execution of the system call (see
-.Sx PCSENTRY
-and
-.Sx PCSEXIT ) .
-.It Sy PRSTOP
-directs the lwp to stop again as soon as possible after resuming execution (see
-.Sx PCDSTOP ) .
-In particular, if the lwp is stopped on
-.Sy PR_SIGNALLED
-or
-.Sy PR_FAULTED ,
-the next stop will show
-.Sy PR_REQUESTED ,
-no other stop
-will have intervened, and the lwp will not have executed any user-level code.
-.El
-.Pp
-When applied to an lwp control file,
-.Sy PCRUN
-clears any outstanding
-directed-stop request and makes the specific lwp runnable.
-The operation fails with
-.Er EBUSY
-if the specific lwp is not stopped on an event of interest or
-has not been directed to stop or if the agent lwp exists and this is not the
-agent lwp (see
-.Sx PCAGENT ) .
-.Pp
-When applied to the process control file, a representative lwp is chosen for
-the operation as described for
-.Pa /proc/ Ns Em pid Ns Pa /status .
-The operation fails with
-.Er EBUSY
-if the representative lwp is not stopped on an
-event of interest or has not been directed to stop or if the agent lwp exists.
-If
-.Sy PRSTEP
-or
-.Sy PRSTOP
-was requested, the representative lwp is made
-runnable and its outstanding directed-stop request is cleared; otherwise all
-outstanding directed-stop requests are cleared and, if it was stopped on an
-event of interest, the representative lwp is marked
-.Sy PR_REQUESTED .
-If, as a consequence, all lwps are in the
-.Sy PR_REQUESTED
-or
-.Sy PR_SUSPENDED
-stop state, all lwps showing
-.Sy PR_REQUESTED
-are made runnable.
-.Ss PCSTRACE
-Define a set of signals to be traced in the process.
-The receipt of one of these signals by an lwp causes the lwp to stop.
-The set of signals is defined using an operand
-.Sy sigset_t
-contained in the control message.
-Receipt of
-.Sy SIGKILL
-cannot be traced; if specified, it is silently ignored.
-.Pp
-If a signal that is included in an lwp's held signal set (the signal mask) is
-sent to the lwp, the signal is not received and does not cause a stop until it
-is removed from the held signal set, either by the lwp itself or by setting the
-held signal set with
-.Sy PCSHOLD .
-.Ss PCCSIG
-The current signal, if any, is cleared from the specific or representative lwp.
-.Ss PCSSIG
-The current signal and its associated signal information for the specific or
-representative lwp are set according to the contents of the operand
-.Vt siginfo
-structure (see
-.In sys/siginfo.h ) .
-If the specified signal number is zero, the current signal is cleared.
-The semantics of this operation are different from those of
-.Xr kill 2
-in that the signal is delivered to the lwp immediately after execution is
-resumed (even if it is being blocked) and an additional
-.Sy PR_SIGNALLED
-stop does not intervene even if the signal is traced.
-Setting the current signal to
-.Sy SIGKILL
-terminates the process immediately.
-.Ss PCKILL
-If applied to the process control file, a signal is sent to the process with
-semantics identical to those of
-.Xr kill 2
-If applied to an lwp control file, a directed signal is sent to the specific
-lwp.
-The signal is named in a
-.Vt long
-operand contained in the message.
-Sending
-.Sy SIGKILL
-terminates the process immediately.
-.Ss PCUNKILL
-A signal is deleted, that is, it is removed from the set of pending signals.
-If applied to the process control file, the signal is deleted from the process's
-pending signals.
-If applied to an lwp control file, the signal is deleted from
-the lwp's pending signals.
-The current signal (if any) is unaffected.
-The signal is named in a
-.Sy long
-operand in the control message.
-It is an error
-.Pq Er EINVAL
-to attempt to delete
-.Sy SIGKILL .
-.Ss PCSHOLD
-Set the set of held signals for the specific or representative lwp (signals
-whose delivery will be blocked if sent to the lwp).
-The set of signals is specified with a
-.Vt sigset_t
-operand.
-.Sy SIGKILL
-and
-.Sy SIGSTOP
-cannot be held; if specified, they are silently ignored.
-.Ss PCSFAULT
-Define a set of hardware faults to be traced in the process.
-On incurring one of these faults, an lwp stops.
-The set is defined via the operand
-.Vt fltset_t
-structure.
-Fault names are defined in
-.In sys/fault.h
-and include the following.
-Some of these may not occur on all processors; there may
-be processor-specific faults in addition to these.
-.Bl -tag -width "FLTACCESS" -offset indent
-.It Sy FLTILL
-illegal instruction
-.It Sy FLTPRIV
-privileged instruction
-.It Sy FLTBPT
-breakpoint trap
-.It Sy FLTTRACE
-trace trap (single-step)
-.It Sy FLTWATCH
-watchpoint trap
-.It Sy FLTACCESS
-memory access fault (bus error)
-.It Sy FLTBOUNDS
-memory bounds violation
-.It Sy FLTIOVF
-integer overflow
-.It Sy FLTIZDIV
-integer zero divide
-.It Sy FLTFPE
-floating-point exception
-.It Sy FLTSTACK
-unrecoverable stack fault
-.It Sy FLTPAGE
-recoverable page fault
-.El
-.Pp
-When not traced, a fault normally results in the posting of a signal to the lwp
-that incurred the fault.
-If an lwp stops on a fault, the signal is posted to
-the lwp when execution is resumed unless the fault is cleared by
-.Sy PCCFAULT
-or by the
-.Sy PRCFAULT
-option of
-.Sy PCRUN .
-.Sy FLTPAGE
-is an exception; no signal is posted.
-The
-.Sy pr_info
-field in the
-.Vt lwpstatus
-structure identifies the signal to be sent and contains machine-specific
-information about the fault.
-.Ss PCCFAULT
-The current fault, if any, is cleared; the associated signal will not be sent
-to the specific or representative lwp.
-.Ss PCSENTRY PCSEXIT
-These control operations instruct the process's lwps to stop on entry to or
-exit from specified system calls.
-The set of system calls to be traced is defined via an operand
-.Vt sysset_t
-structure.
-.Pp
-When entry to a system call is being traced, an lwp stops after having begun
-the call to the system but before the system call arguments have been fetched
-from the lwp.
-When exit from a system call is being traced, an lwp stops on completion of
-the system call just prior to checking for signals and returning to user level.
-At this point, all return values have been stored into the lwp's registers.
-.Pp
-If an lwp is stopped on entry to a system call
-.Pq Sy PR_SYSENTRY
-or when sleeping in an interruptible system call
-.Pf ( Sy PR_ASLEEP
-is set), it may be instructed to go directly to system call exit by specifying
-the
-.Sy PRSABORT
-flag in a
-.Sy PCRUN
-control message.
-Unless exit from the system call is being traced, the lwp returns to user
-level showing
-.Er EINTR .
-.Ss PCWATCH
-Set or clear a watched area in the controlled process from a
-.Vt prwatch
-structure operand:
-.Bd -literal -offset 2
-typedef struct prwatch {
- uintptr_t pr_vaddr; /* virtual address of watched area */
- size_t pr_size; /* size of watched area in bytes */
- int pr_wflags; /* watch type flags */
-} prwatch_t;
-.Ed
-.Pp
-.Sy pr_vaddr
-specifies the virtual address of an area of memory to be watched
-in the controlled process.
-.Sy pr_size
-specifies the size of the area, in bytes.
-.Sy pr_wflags
-specifies the type of memory access to be monitored as a
-bit-mask of the following flags:
-.Bl -tag -width "WA_TRAPAFTER" -offset indent
-.It Sy WA_READ
-read access
-.It Sy WA_WRITE
-write access
-.It Sy WA_EXEC
-execution access
-.It Sy WA_TRAPAFTER
-trap after the instruction completes
-.El
-.Pp
-If
-.Sy pr_wflags
-is non-empty, a watched area is established for the virtual
-address range specified by
-.Sy pr_vaddr
-and
-.Sy pr_size .
-If
-.Sy pr_wflags
-is empty, any previously-established watched area starting at the specified
-virtual address is cleared;
-.Sy pr_size
-is ignored.
-.Pp
-A watchpoint is triggered when an lwp in the traced process makes a memory
-reference that covers at least one byte of a watched area and the memory
-reference is as specified in
-.Sy pr_wflags .
-When an lwp triggers a watchpoint, it incurs a watchpoint trap.
-If
-.Sy FLTWATCH
-is being traced, the lwp stops; otherwise, it is sent a
-.Sy SIGTRAP
-signal; if
-.Sy SIGTRAP
-is being traced and is not blocked, the lwp stops.
-.Pp
-The watchpoint trap occurs before the instruction completes unless
-.Sy WA_TRAPAFTER
-was specified, in which case it occurs after the instruction completes.
-If it occurs before completion, the memory is not modified.
-If it occurs after completion, the memory is modified (if the access is a write
-access).
-.Pp
-Physical i/o is an exception for watchpoint traps.
-In this instance, there is no guarantee that memory before the watched area
-has already been modified (or in the case of
-.Sy WA_TRAPAFTER ,
-that the memory following the watched area
-has not been modified) when the watchpoint trap occurs and the lwp stops.
-.Pp
-.Sy pr_info
-in the
-.Vt lwpstatus
-structure contains information pertinent to the watchpoint trap.
-In particular, the
-.Sy si_addr
-field contains the
-virtual address of the memory reference that triggered the watchpoint, and the
-.Sy si_code
-field contains one of
-.Sy TRAP_RWATCH ,
-.Sy TRAP_WWATCH ,
-or
-.Sy TRAP_XWATCH ,
-indicating read, write, or execute access, respectively.
-The
-.Sy si_trapafter
-field is zero unless
-.Sy WA_TRAPAFTER
-is in effect for this watched area; non-zero indicates that the current
-instruction is not the instruction that incurred the watchpoint trap.
-The
-.Sy si_pc
-field contains the virtual address of the instruction that incurred the trap.
-.Pp
-A watchpoint trap may be triggered while executing a system call that makes
-reference to the traced process's memory.
-The lwp that is executing the system call incurs the watchpoint trap while
-still in the system call.
-If it stops as a result, the
-.Vt lwpstatus
-structure contains the system call number and its arguments.
-If the lwp does not stop, or if it is set running again without
-clearing the signal or fault, the system call fails with
-.Er EFAULT .
-If
-.Sy WA_TRAPAFTER
-was specified, the memory reference will have completed and
-the memory will have been modified (if the access was a write access) when the
-watchpoint trap occurs.
-.Pp
-If more than one of
-.Sy WA_READ ,
-.Sy WA_WRITE ,
-and
-.Sy WA_EXEC
-is specified for a watched area, and a single instruction incurs more than one
-of the specified types, only one is reported when the watchpoint trap occurs.
-The precedence is
-.Sy WA_EXEC ,
-.Sy WA_READ ,
-.Sy WA_WRITE
-.Pf ( Sy WA_EXEC
-and
-.Sy WA_READ
-take precedence over
-.Sy WA_WRITE ) ,
-unless
-.Sy WA_TRAPAFTER
-was specified, in which case it is
-.Sy WA_WRITE ,
-.Sy WA_READ ,
-.Sy WA_EXEC
-.Pf ( Sy WA_WRITE
-takes precedence).
-.Pp
-.Sy PCWATCH
-fails with
-.Er EINVAL
-if an attempt is made to specify overlapping watched areas or if
-.Sy pr_wflags
-contains flags other than those specified above.
-It fails with
-.Er ENOMEM
-if an attempt is made to establish more watched areas than the system can
-support (the system can support thousands).
-.Pp
-The child of a
-.Xr vfork 2
-borrows the parent's address space.
-When a
-.Xr vfork 2
-is executed by a traced process, all watched areas established
-for the parent are suspended until the child terminates or performs an
-.Xr exec 2 .
-Any watched areas established independently in the child are
-cancelled when the parent resumes after the child's termination or
-.Xr exec 2 .
-.Sy PCWATCH
-fails with
-.Er EBUSY
-if applied to the parent of a
-.Xr vfork 2
-before the child has terminated or performed an
-.Xr exec 2 .
-The
-.Sy PR_VFORKP
-flag is set in the
-.Sy pstatus
-structure for such a parent process.
-.Pp
-Certain accesses of the traced process's address space by the operating system
-are immune to watchpoints.
-The initial construction of a signal stack frame when a signal is delivered to
-an lwp will not trigger a watchpoint trap even if the new frame covers watched
-areas of the stack.
-Once the signal handler is entered, watchpoint traps occur normally.
-On SPARC based machines, register window overflow and underflow will not
-trigger watchpoint traps, even if the register window save areas cover watched
-areas of the stack.
-.Pp
-Watched areas are not inherited by child processes, even if the traced
-process's inherit-on-fork mode,
-.Sy PR_FORK ,
-is set (see
-.Sy PCSET ,
-below).
-All watched areas are cancelled when the traced process performs a successful
-.Xr exec 2 .
-.Ss PCSET PCUNSET
-.Sy PCSET
-sets one or more modes of operation for the traced process.
-.Sy PCUNSET
-unsets these modes.
-The modes to be set or unset are specified by flags in an operand
-.Sy long
-in the control message:
-.Bl -tag -offset left -width "PR_MSFORK"
-.It Sy PR_FORK
-(inherit-on-fork): When set, the process's tracing flags and its
-inherit-on-fork mode are inherited by the child of a
-.Xr fork 2 ,
-.Xr fork1 2 ,
-or
-.Xr vfork 2 .
-When unset, child processes start with all tracing flags cleared.
-.It Sy PR_RLC
-(run-on-last-close): When set and the last writable
-.Pa /proc
-file descriptor referring to the traced process or any of its lwps is closed,
-all of the process's tracing flags and watched areas are cleared, any
-outstanding stop directives are canceled, and if any lwps are stopped on
-events of interest, they are set running as though
-.Sy PCRUN
-had been applied to them.
-When unset, the process's tracing flags and watched areas are retained and
-lwps are not set running on last close.
-.It Sy PR_KLC
-(kill-on-last-close): When set and the last writable
-.Pa /proc
-file descriptor referring to the traced process or any of its lwps is closed,
-the process is terminated with
-.Sy SIGKILL .
-.It Sy PR_ASYNC
-(asynchronous-stop): When set, a stop on an event of interest by one lwp does
-not directly affect any other lwp in the process.
-When unset and an lwp stops on an event of interest other than
-.Sy PR_REQUESTED ,
-all other lwps in the process are directed to stop.
-.It Sy PR_MSACCT
-(microstate accounting): Microstate accounting is now continuously enabled.
-This flag is deprecated and no longer has any effect upon microstate
-accounting.
-Applications may toggle this flag; however, microstate accounting
-will remain enabled regardless.
-.It Sy PR_MSFORK
-(inherit microstate accounting): All processes now inherit microstate
-accounting, as it is continuously enabled.
-This flag has been deprecated and its use no longer has any effect upon the
-behavior of microstate accounting.
-.It Sy PR_BPTADJ
-(breakpoint trap pc adjustment): On x86-based machines, a breakpoint trap
-leaves the program counter (the
-.Sy EIP )
-referring to the breakpointed instruction plus one byte.
-When
-.Sy PR_BPTADJ
-is set, the system will adjust the program counter back to the location of the
-breakpointed instruction when the lwp stops on a breakpoint.
-This flag has no effect on SPARC based machines, where breakpoint traps leave
-the program counter referring to the breakpointed instruction.
-.It Sy PR_PTRACE
-(ptrace-compatibility): When set, a stop on an event of interest by the traced
-process is reported to the parent of the traced process by
-.Xr wait 3C ,
-.Sy SIGTRAP
-is sent to the traced process when it executes a successful
-.Xr exec 2 ,
-setuid/setgid flags are not honored for execs performed by the
-traced process, any exec of an object file that the traced process cannot read
-fails, and the process dies when its parent dies.
-This mode is deprecated; it is provided only to allow
-.Xr ptrace 3C
-to be implemented as a library function using
-.Pa /proc .
-.El
-.Pp
-It is an error
-.Pq Er EINVAL
-to specify flags other than those described above
-or to apply these operations to a system process.
-The current modes are reported in the
-.Sy pr_flags
-field of
-.Pa /proc/ Ns Em pid Ns Pa /status
-and
-.Pa /proc/ Ns Em pid Ns Pa /lwp/ Ns Em lwp Ns Pa /lwpstatus .
-.Ss PCSREG
-Set the general registers for the specific or representative lwp according to
-the operand
-.Vt prgregset_t
-structure.
-.Pp
-On SPARC based systems, only the condition-code bits of the processor-status
-register (R_PSR) of SPARC V8 (32-bit) processes can be modified by
-.Sy PCSREG .
-Other privileged registers cannot be modified at all.
-.Pp
-On x86-based systems, only certain bits of the flags register (EFL) can be
-modified by
-.Sy PCSREG :
-these include the condition codes, direction-bit, and overflow-bit.
-.Pp
-.Sy PCSREG
-fails with
-.Er EBUSY
-if the lwp is not stopped on an event of interest.
-.Ss PCSVADDR
-Set the address at which execution will resume for the specific or
-representative lwp from the operand
-.Vt long .
-On SPARC based systems, both %pc and %npc are set, with %npc set to the
-instruction following the virtual address.
-On x86-based systems, only %eip is set.
-.Sy PCSVADDR
-fails with
-.Er EBUSY
-if the lwp is not stopped on an event of interest.
-.Ss PCSFPREG
-Set the floating-point registers for the specific or representative lwp
-according to the operand
-.Vt prfpregset_t
-structure.
-An error
-.Pq Er EINVAL
-is returned if the system does not support floating-point operations (no
-floating-point hardware and the system does not emulate floating-point machine
-instructions).
-.Sy PCSFPREG
-fails with
-.Er EBUSY
-if the lwp is not stopped on an event of interest.
-.Ss PCSXREG
-Set the extra state registers for the specific or representative lwp according
-to the architecture-dependent operand
-.Vt prxregset_t
-structure.
-An error
-.Pq Er EINVAL
-is returned if the system does not support extra state registers.
-.Sy PCSXREG
-fails with
-.Er EBUSY
-if the lwp is not stopped on an event of interest.
-.Ss PCSASRS
-Set the ancillary state registers for the specific or representative lwp
-according to the SPARC V9 platform-dependent operand
-.Vt asrset_t
-structure.
-An error
-.Pq Er EINVAL
-is returned if either the target process or the
-controlling process is not a 64-bit SPARC V9 process.
-Most of the ancillary state registers are privileged registers that cannot be
-modified.
-Only those that can be modified are set; all others are silently ignored.
-.Sy PCSASRS
-fails with
-.Er EBUSY
-if the lwp is not stopped on an event of interest.
-.Ss PCAGENT
-Create an agent lwp in the controlled process with register values from the
-operand
-.Vt prgregset_t
-structure (see
-.Sy PCSREG ,
-above).
-The agent lwp is created in the stopped state showing
-.Sy PR_REQUESTED
-and with its held signal set (the signal mask) having all signals except
-.Sy SIGKILL
-and
-.Sy SIGSTOP
-blocked.
-.Pp
-The
-.Sy PCAGENT
-operation fails with
-.Er EBUSY
-unless the process is fully stopped via
-.Pa /proc ,
-that is, unless all of the lwps in the process are
-stopped either on events of interest or on
-.Sy PR_SUSPENDED ,
-or are stopped on
-.Sy PR_JOBCONTROL
-and have been directed to stop via
-.Sy PCDSTOP .
-It fails with
-.Er EBUSY
-if an agent lwp already exists.
-It fails with
-.Er ENOMEM
-if system resources for creating new lwps have been exhausted.
-.Pp
-Any
-.Sy PCRUN
-operation applied to the process control file or to the control
-file of an lwp other than the agent lwp fails with
-.Er EBUSY
-as long as the agent lwp exists.
-The agent lwp must be caused to terminate by executing the
-.Sy SYS_lwp_exit
-system call trap before the process can be restarted.
-.Pp
-Once the agent lwp is created, its lwp-ID can be found by reading the process
-status file.
-To facilitate opening the agent lwp's control and status files,
-the directory name
-.Pa /proc/ Ns Em pid Ns Pa /lwp/agent
-is accepted for lookup operations as an invisible alias for
-.Pa /proc/ Ns Em pid Ns Pa /lwp/ Ns Em lwpid ,
-.Em lwpid
-being the lwp-ID of the agent lwp (invisible in the sense that the name
-.Dq agent
-does not appear in a directory listing of
-.Pa /proc/ Ns Em pid Ns Pa /lwp
-obtained from
-.Xr ls 1 ,
-.Xr getdents 2 ,
-or
-.Xr readdir 3C .
-.Pp
-The purpose of the agent lwp is to perform operations in the controlled process
-on behalf of the controlling process: to gather information not directly
-available via
-.Pa /proc
-files, or in general to make the process change state
-in ways not directly available via
-.Pa /proc
-control operations.
-To make use of an agent lwp, the controlling process must be capable of making
-it execute system calls (specifically, the
-.Sy SYS_lwp_exit
-system call trap).
-The register values given to the agent lwp on creation are typically the
-registers of the representative lwp, so that the agent lwp can use its stack.
-.Pp
-If the controlling process neglects to force the agent lwp to execute the
-.Sy SYS_lwp_exit
-system call (due to either logic error or fatal failure on
-the part of the controlling process), the agent lwp will remain in the target
-process.
-For purposes of being able to debug these otherwise rogue agents,
-information as to the creator of the agent lwp is reflected in that lwp's
-.Pa spymaster
-file in
-.Pa /proc .
-Should the target process generate a core
-dump with the agent lwp in place, this information will be available via the
-.Sy NT_SPYMASTER
-note in the core file (see
-.Xr core 4 ) .
-.Pp
-The agent lwp is not allowed to execute any variation of the
-.Sy SYS_fork
-or
-.Sy SYS_exec
-system call traps.
-Attempts to do so yield
-.Er ENOTSUP
-to the agent lwp.
-.Pp
-Symbolic constants for system call trap numbers like
-.Sy SYS_lwp_exit
-and
-.Sy SYS_lwp_create
-can be found in the header file
-.In sys/syscall.h .
-.Ss PCREAD PCWRITE
-Read or write the target process's address space via a
-.Vt priovec
-structure operand:
-.Bd -literal -offset 2
-typedef struct priovec {
- void *pio_base; /* buffer in controlling process */
- size_t pio_len; /* size of read/write request in bytes */
- off_t pio_offset; /* virtual address in target process */
-} priovec_t;
-.Ed
-.Pp
-These operations have the same effect as
-.Xr pread 2
-and
-.Xr pwrite 2 ,
-respectively, of the target process's address space file.
-The difference is that more than one
-.Sy PCREAD
-or
-.Sy PCWRITE
-control operation can be
-written to the control file at once, and they can be interspersed with other
-control operations in a single write to the control file.
-This is useful, for example, when planting many breakpoint instructions in
-the process's address space, or when stepping over a breakpointed instruction.
-Unlike
-.Xr pread 2
-and
-.Xr pwrite 2 ,
-no provision is made for partial reads or writes; if the
-operation cannot be performed completely, it fails with
-.Er EIO .
-.Ss PCNICE
-The traced process's
-.Xr nice 2
-value is incremented by the amount in the
-operand
-.Vt long .
-Only a process with the
-.Brq Sy PRIV_PROC_PRIOCNTL
-privilege asserted in its effective set can better a process's priority in this
-way, but any user may lower the priority.
-This operation is not meaningful for all scheduling classes.
-.Ss PCSCRED
-Set the target process credentials to the values contained in the
-.Vt prcred_t
-structure operand (see
-.Pa /proc/ Ns Em pid Ns Pa /cred ) .
-The
-effective, real, and saved user-IDs and group-IDs of the target process are
-set.
-The target process's supplementary groups are not changed; the
-.Sy pr_ngroups
-and
-.Sy pr_groups
-members of the structure operand are ignored.
-Only the privileged processes can perform this operation; for all
-others it fails with
-.Er EPERM .
-.Ss PCSCREDX
-Operates like
-.Sy PCSCRED
-but also sets the supplementary groups; the length
-of the data written with this control operation should be "sizeof
-.Pq Vt prcred_t
-+ sizeof
-.Pq Vt gid_t
-* (#groups - 1)".
-.Ss PCSPRIV
-Set the target process privilege to the values contained in the
-.Vt prpriv_t
-operand (see
-.Pa /proc/pid/priv ) .
-The effective, permitted, inheritable, and
-limit sets are all changed.
-Privilege flags can also be set.
-The process is made privilege aware unless it can relinquish privilege awareness.
-See
-.Xr privileges 5 .
-.Pp
-The limit set of the target process cannot be grown.
-The other privilege sets must be subsets of the intersection of the effective set
-of the calling process with the new limit set of the target process or subsets of
-the original values of the sets in the target process.
-.Pp
-If any of the above restrictions are not met,
-.Er EPERM
-is returned.
-If the structure written is improperly formatted,
-.Er EINVAL
-is returned.
-.Sh PROGRAMMING NOTES
-For security reasons, except for the
-.Sy psinfo ,
-.Sy usage ,
-.Sy lpsinfo ,
-.Sy lusage ,
-.Sy lwpsinfo ,
-and
-.Sy lwpusage
-files, which are world-readable, and except for privileged processes, an open
-of a
-.Pa /proc
-file fails unless both the user-ID and group-ID of the caller match those of
-the traced process and the process's object file is readable by the caller.
-The effective set of the caller is a superset of both the inheritable and the
-permitted set of the target process.
-The limit set of the caller is a superset of the limit set of the target
-process.
-Except for the world-readable files just mentioned, files corresponding to
-setuid and setgid processes can be opened only by the appropriately privileged
-process.
-.Pp
-A process that is missing the basic privilege
-.Brq Sy PRIV_PROC_INFO
-cannot see any processes under
-.Pa /proc
-that it cannot send a signal to.
-.Pp
-A process that has
-.Brq Sy PRIV_PROC_OWNER
-asserted in its effective set can open any file for reading.
-To manipulate or control a process, the controlling process must have at least
-as many privileges in its effective set as the target process has in its
-effective, inheritable, and permitted sets.
-The limit set of the controlling process must be a superset of the limit set
-of the target process.
-Additional restrictions apply if any of the uids of the target process are 0.
-See
-.Xr privileges 5 .
-.Pp
-Even if held by a privileged process, an open process or lwp file descriptor
-(other than file descriptors for the world-readable files) becomes invalid if
-the traced process performs an
-.Xr exec 2
-of a setuid/setgid object file or
-an object file that the traced process cannot read.
-Any operation performed on an invalid file descriptor, except
-.Xr close 2 ,
-fails with
-.Er EAGAIN .
-In this situation, if any tracing flags are set and the process or any lwp
-file descriptor is open for writing, the process will have been directed to
-stop and its run-on-last-close flag will have been set (see
-.Sx PCSET ) .
-This enables a controlling process (if it has permission) to reopen the
-.Pa /proc
-files to get new valid file descriptors, close the invalid file descriptors,
-unset the run-on-last-close flag (if desired), and proceed.
-Just closing the invalid file descriptors causes the traced process to resume
-execution with all tracing flags cleared.
-Any process not currently open for writing via
-.Pa /proc ,
-but that has left-over tracing flags from a previous open, and that executes
-a setuid/setgid or unreadable object file, will not be stopped but will have
-all its tracing flags cleared.
-.Pp
-To wait for one or more of a set of processes or lwps to stop or terminate,
-.Pa /proc
-file descriptors (other than those obtained by opening the
-.Pa cwd
-or
-.Pa root
-directories or by opening files in the
-.Pa fd
-or
-.Pa object
-directories) can be used in a
-.Xr poll 2
-system call.
-When requested and returned, either of the polling events
-.Sy POLLPRI
-or
-.Sy POLLWRNORM
-indicates that the process or lwp stopped on an event of
-interest.
-Although they cannot be requested, the polling events
-.Sy POLLHUP ,
-.Sy POLLERR ,
-and
-.Sy POLLNVAL
-may be returned.
-.Sy POLLHUP
-indicates that the process or lwp has terminated.
-.Sy POLLERR
-indicates that the file descriptor has become invalid.
-.Sy POLLNVAL
-is returned immediately if
-.Sy POLLPRI
-or
-.Sy POLLWRNORM
-is requested on a file descriptor referring to a system process (see
-.Sx PCSTOP ) .
-The requested events may be empty to wait simply for termination.
-.Sh FILES
-.Bl -tag -compact -width Ds
-.It Pa /proc
-directory (list of processes)
-.It Pa /proc/ Ns Em pid
-specific process directory
-.It Pa /proc/self
-alias for a process's own directory
-.It Pa /proc/ Ns Em pid Ns Pa /as
-address space file
-.It Pa /proc/ Ns Em pid Ns Pa /ctl
-process control file
-.It Pa /proc/ Ns Em pid Ns Pa /status
-process status
-.It Pa /proc/ Ns Em pid Ns Pa /lstatus
-array of lwp status structs
-.It Pa /proc/ Ns Em pid Ns Pa /psinfo
-process
-.Xr ps 1
-info
-.It Pa /proc/ Ns Em pid Ns Pa /lpsinfo
-array of lwp
-.Xr ps 1
-info structs
-.It Pa /proc/ Ns Em pid Ns Pa /map
-address space map
-.It Pa /proc/ Ns Em pid Ns Pa /xmap
-extended address space map
-.It Pa /proc/ Ns Em pid Ns Pa /rmap
-reserved address map
-.It Pa /proc/ Ns Em pid Ns Pa /cred
-process credentials
-.It Pa /proc/ Ns Em pid Ns Pa /priv
-process privileges
-.It Pa /proc/ Ns Em pid Ns Pa /sigact
-process signal actions
-.It Pa /proc/ Ns Em pid Ns Pa /auxv
-process aux vector
-.It Pa /proc/ Ns Em pid Ns Pa /argv
-process argument vector
-.It Pa /proc/ Ns Em pid Ns Pa /ldt
-process
-.Sy LDT
-(x86 only)
-.It Pa /proc/ Ns Em pid Ns Pa /usage
-process usage
-.It Pa /proc/ Ns Em pid Ns Pa /lusage
-array of lwp usage structs
-.It Pa /proc/ Ns Em pid Ns Pa /path
-symbolic links to process open files
-.It Pa /proc/ Ns Em pid Ns Pa /pagedata
-process page data
-.It Pa /proc/ Ns Em pid Ns Pa /watch
-active watchpoints
-.It Pa /proc/ Ns Em pid Ns Pa /cwd
-alias for the current working directory
-.It Pa /proc/ Ns Em pid Ns Pa /root
-alias for the root directory
-.It Pa /proc/ Ns Em pid Ns Pa /fd
-directory (list of open files)
-.It Pa /proc/ Ns Em pid Ns Pa /fd/*
-aliases for process's open files
-.It Pa /proc/ Ns Em pid Ns Pa /object
-directory (list of mapped files)
-.It Pa /proc/ Ns Em pid Ns Pa /object/a.out
-alias for process's executable file
-.It Pa /proc/ Ns Em pid Ns Pa /object/*
-aliases for other mapped files
-.It Pa /proc/ Ns Em pid Ns Pa /lwp
-directory (list of lwps)
-.It Pa /proc/ Ns Em pid Ns Pa /lwp/ Ns Em lwpid
-specific lwp directory
-.It Pa /proc/ Ns Em pid Ns Pa /lwp/agent
-alias for the agent lwp directory
-.It Pa /proc/ Ns Em pid Ns Pa /lwp/ Ns Em lwpid Ns Pa /lwpctl
-lwp control file
-.It Pa /proc/ Ns Em pid Ns Pa /lwp/ Ns Em lwpid Ns Pa /lwpstatus
-lwp status
-.It Pa /proc/ Ns Em pid Ns Pa /lwp/ Ns Em lwpid Ns Pa /lwpsinfo
-lwp
-.Xr ps 1
-info
-.It Pa /proc/ Ns Em pid Ns Pa /lwp/ Ns Em lwpid Ns Pa /lwpusage
-lwp usage
-.It Pa /proc/ Ns Em pid Ns Pa /lwp/ Ns Em lwpid Ns Pa /gwindows
-register windows (SPARC only)
-.It Pa /proc/ Ns Em pid Ns Pa /lwp/ Ns Em lwpid Ns Pa /xregs
-extra state registers
-.It Pa /proc/ Ns Em pid Ns Pa /lwp/ Ns Em lwpid Ns Pa /asrs
-ancillary state registers (SPARC V9 only)
-.It Pa /proc/ Ns Em pid Ns Pa /lwp/ Ns Em lwpid Ns Pa /spymaster
-For an agent LWP, the controlling process
-.El
-.Sh DIAGNOSTICS
-Errors that can occur in addition to the errors normally associated with file
-system access:
-.Bl -tag -width "EOVERFLOW" -offset left
-.It Er E2BIG
-Data to be returned in a
-.Xr read 2
-of the page data file exceeds the size of the read buffer provided by the
-caller.
-.It Er EACCES
-An attempt was made to examine a process that ran under a different uid than
-the controlling process and
-.Brq Sy PRIV_PROC_OWNER
-was not asserted in the effective set.
-.It Er EAGAIN
-The traced process has performed an
-.Xr exec 2
-of a setuid/setgid object
-file or of an object file that it cannot read; all further operations on the
-process or lwp file descriptor (except
-.Xr close 2 )
-elicit this error.
-.It Er EBUSY
-.Sy PCSTOP ,
-.Sy PCDSTOP ,
-.Sy PCWSTOP , or
-.Sy PCTWSTOP
-was applied to a system process; an exclusive
-.Xr open 2
-was attempted on a
-.Pa /proc
-file for a process already open for writing;
-.Sy PCRUN ,
-.Sy PCSREG ,
-.Sy PCSVADDR ,
-.Sy PCSFPREG ,
-or
-.Sy PCSXREG
-was applied to a process or
-lwp not stopped on an event of interest; an attempt was made to mount
-.Pa /proc
-when it was already mounted;
-.Sy PCAGENT
-was applied to a process
-that was not fully stopped or that already had an agent lwp.
-.It Er EINVAL
-In general, this means that some invalid argument was supplied to a system
-call.
-A non-exhaustive list of conditions eliciting this error includes: a
-control message operation code is undefined; an out-of-range signal number was
-specified with
-.Sy PCSSIG ,
-.Sy PCKILL ,
-or
-.Sy PCUNKILL ;
-.Sy SIGKILL
-was specified with
-.Sy PCUNKILL ;
-.Sy PCSFPREG
-was applied on a system that does not support floating-point operations;
-.Sy PCSXREG
-was applied on a system that does not support extra state registers.
-.It Er EINTR
-A signal was received by the controlling process while waiting for the traced
-process or lwp to stop via
-.Sy PCSTOP ,
-.Sy PCWSTOP ,
-or
-.Sy PCTWSTOP .
-.It Er EIO
-A
-.Xr write 2
-was attempted at an illegal address in the traced process.
-.It Er ENOENT
-The traced process or lwp has terminated after being opened.
-The basic privilege
-.Brq Sy PRIV_PROC_INFO
-is not asserted in the effective set of the calling process and the calling
-process cannot send a signal to the target process.
-.It Er ENOMEM
-The system-imposed limit on the number of page data file descriptors was
-reached on an open of
-.Pa /proc/ Ns Em pid Ns Pa /pagedata ;
-an attempt was made
-with
-.Sy PCWATCH
-to establish more watched areas than the system can support;
-the
-.Sy PCAGENT
-operation was issued when the system was out of resources for
-creating lwps.
-.It Er ENOSYS
-An attempt was made to perform an unsupported operation (such as
-.Xr creat 2 ,
-.Xr link 2 ,
-or
-.Xr unlink 2 )
-on an entry in
-.Pa /proc .
-.It Er EOVERFLOW
-A 32-bit controlling process attempted to read or write the
-.Pa as
-file or attempted to read the
-.Pa map ,
-.Pa rmap ,
-or
-.Pa pagedata
-file of a 64-bit target process.
-A 32-bit controlling process attempted to apply one of the
-control operations
-.Sy PCSREG ,
-.Sy PCSXREG ,
-.Sy PCSVADDR ,
-.Sy PCWATCH ,
-.Sy PCAGENT ,
-.Sy PCREAD ,
-.Sy PCWRITE
-to a 64-bit target process.
-.It Er EPERM
-The process that issued the
-.Sy PCSCRED
-or
-.Sy PCSCREDX
-operation did not have the
-.Brq Sy PRIV_PROC_SETID
-privilege asserted in its effective set, or
-the process that issued the
-.Sy PCNICE
-operation did not have the
-.Brq Sy PRIV_PROC_PRIOCNTL
-in its effective set.
-.Pp
-An attempt was made to control a process of which the E, P, and I privilege
-sets were not a subset of the effective set of the controlling process or the
-limit set of the controlling process is not a superset of limit set of the
-controlled process.
-.Pp
-Any of the uids of the target process are
-.Sy 0
-or an attempt was made to change any of the uids to
-.Sy 0
-using
-.Sy PCSCRED
-and the security policy imposed additional restrictions.
-See
-.Xr privileges 5 .
-.El
-.Sh SEE ALSO
-.Xr ls 1 ,
-.Xr ps 1 ,
-.Xr chroot 1M ,
-.Xr alarm 2 ,
-.Xr brk 2 ,
-.Xr chdir 2 ,
-.Xr chroot 2 ,
-.Xr close 2 ,
-.Xr creat 2 ,
-.Xr dup 2 ,
-.Xr exec 2 ,
-.Xr fcntl 2 ,
-.Xr fork 2 ,
-.Xr fork1 2 ,
-.Xr fstat 2 ,
-.Xr getdents 2 ,
-.Xr getustack 2 ,
-.Xr kill 2 ,
-.Xr lseek 2 ,
-.Xr mmap 2 ,
-.Xr nice 2 ,
-.Xr open 2 ,
-.Xr poll 2 ,
-.Xr pread 2 ,
-.Xr pwrite 2 ,
-.Xr read 2 ,
-.Xr readlink 2 ,
-.Xr readv 2 ,
-.Xr shmget 2 ,
-.Xr sigaction 2 ,
-.Xr sigaltstack 2 ,
-.Xr vfork 2 ,
-.Xr write 2 ,
-.Xr writev 2 ,
-.Xr _stack_grow 3C ,
-.Xr pthread_create 3C ,
-.Xr pthread_join 3C ,
-.Xr ptrace 3C ,
-.Xr readdir 3C ,
-.Xr thr_create 3C ,
-.Xr thr_join 3C ,
-.Xr wait 3C ,
-.Xr siginfo.h 3HEAD ,
-.Xr signal.h 3HEAD ,
-.Xr types32.h 3HEAD ,
-.Xr ucontext.h 3HEAD ,
-.Xr contract 4 ,
-.Xr core 4 ,
-.Xr process 4 ,
-.Xr lfcompile 5 ,
-.Xr privileges 5 ,
-.Xr security-flags 5
-.Sh NOTES
-Descriptions of structures in this document include only interesting structure
-elements, not filler and padding fields, and may show elements out of order for
-descriptive clarity.
-The actual structure definitions are contained in
-.In procfs.h .
-.Sh BUGS
-Because the old
-.Xr ioctl 2 Ns -based
-version of
-.Pa /proc
-is currently supported for binary compatibility with old applications, the
-top-level directory for a process,
-.Pa /proc/ Ns Em pid ,
-is not world-readable, but it is world-searchable.
-Thus, anyone can open
-.Pa /proc/ Ns Em pid Ns Pa /psinfo
-even though
-.Xr ls 1
-applied to
-.Pa /proc/ Ns Em pid
-will fail for anyone but the owner or an appropriately privileged process.
-Support for the old
-.Xr ioctl 2 Ns -based
-version of
-.Pa /proc
-will be dropped in a future release, at which time the top-level directory for
-a process will be made world-readable.
-.Pp
-On SPARC based machines, the types
-.Sy gregset_t
-and
-.Sy fpregset_t
-defined in
-.In sys/regset.h
-are similar to but not the same as the types
-.Sy prgregset_t
-and
-.Sy prfpregset_t
-defined in
-.In procfs.h .
diff --git a/usr/src/man/man4/process.4 b/usr/src/man/man4/process.4
deleted file mode 100644
index 4a61edb777..0000000000
--- a/usr/src/man/man4/process.4
+++ /dev/null
@@ -1,565 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 2016, Joyent, Inc.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PROCESS 4 "December 28, 2020"
-.SH NAME
-process \- process contract type
-.SH SYNOPSIS
-.nf
-\fB/system/contract/process\fR
-.fi
-
-.SH DESCRIPTION
-Process contracts allow processes to create a fault boundary around a set of
-subprocesses and observe events which occur within that boundary.
-.sp
-.LP
-Process contracts are managed using the \fBcontract\fR(4) file system and the
-\fBlibcontract\fR(3LIB) library. The process contract type directory is
-\fB/system/contract/process\fR.
-.SS "CREATION"
-A process contract is created when an LWP that has an active process contract
-template calls \fBfork\fR(2). Initially, the child process created by
-\fBfork()\fR is the only resource managed by the contract. When an LWP that
-does not have an active process contract template calls \fBfork()\fR, the child
-process created by \fBfork()\fR is added as a resource to the process contract
-of which the parent was a member.
-.SS "EVENT TYPES"
-The following events types are defined:
-.sp
-.ne 2
-.na
-\fB\fBCT_PR_EV_EMPTY\fR\fR
-.ad
-.sp .6
-.RS 4n
-The last member of the process contract exited.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBCT_PR_EV_FORK\fR\fR
-.ad
-.sp .6
-.RS 4n
-A new process has been added to the process contract.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBCT_PR_EV_EXIT\fR\fR
-.ad
-.sp .6
-.RS 4n
-A member of the process contract exited.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBCT_PR_EV_CORE\fR\fR
-.ad
-.sp .6
-.RS 4n
-A process failed and dumped core. This could also occur if the process would
-have dumped core had appropriate \fBcoreadm\fR(1M) options been enabled and
-core file size was unlimited.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBCT_PR_EV_SIGNAL\fR\fR
-.ad
-.sp .6
-.RS 4n
-A process received a fatal signal from a process, other than the owner of the
-process contract, that is a member of a different process contract.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBCT_PR_EV_HWERR\fR\fR
-.ad
-.sp .6
-.RS 4n
-A process was killed because of an uncorrectable hardware error.
-.RE
-
-.SS "TERMS"
-The following common contract terms, defined in \fBcontract\fR(4), have
-process-contract specific attributes:
-.sp
-.ne 2
-.na
-\fBcritical event set\fR
-.ad
-.sp .6
-.RS 4n
-The default value for the critical event set is \fB(CT_PR_EV_EMPTY |
-CT_PR_EV_HWERR)\fR.
-.sp
-An attempt by a user without the \fB{PRIV_CONTRACT_EVENT}\fR privilege in its
-effective set to add an event, other than \fBCT_PR_EV_EMPTY\fR, to the critical
-event set which is not present in the fatal set, or if the \fBCT_PR_PGONLY\fR
-parameter is set and the same user attempts to add any event, other than
-\fBCT_PR_EV_EMPTY\fR, to the critical event set, fails.
-.RE
-
-.sp
-.ne 2
-.na
-\fBinformative event set\fR
-.ad
-.sp .6
-.RS 4n
-The default value for the informative event set is \fB(CT_PR_EV_CORE |
-CT_PR_EV_SIGNAL)\fR.
-.RE
-
-.sp
-.LP
-The following contract terms can be read from or written to a process contract
-template using the named \fBlibcontract\fR(3LIB) interfaces. These contract
-terms are in addition to those described in \fBcontract\fR(4).
-.sp
-.ne 2
-.na
-\fBcreator's aux\fR
-.ad
-.sp .6
-.RS 4n
-Auxiliary contract description. The purpose of this field is to provide the
-contract creator with a way to differentiate process contracts it creates under
-the same service FMRI. Use ct_pr_tmpl_set_svc_aux(3CONTRACT) to set this term.
-The default value is an empty string. The contents of this field should be
-limited to 7-bit ASCII values.
-.RE
-
-.sp
-.ne 2
-.na
-\fBfatal event set\fR
-.ad
-.sp .6
-.RS 4n
-Defines a set of events which, when generated, causes all members of the
-process contract to be killed with \fBSIGKILL\fR, or the intersection of the
-contract and the containing process group if the \fBCT_PR_PGRPONLY\fR parameter
-is set. Set this term with \fBct_pr_tmpl_set_fatal\fR(3CONTRACT). The fatal
-event set is restricted to \fBCT_PR_EV_CORE\fR, \fBCT_PR_EV_SIGNAL\fR, and
-\fBCT_PR_EV_HWERR\fR. For \fBCT_PR_EV_CORE\fR and \fBCT_PR_EV_SIGNAL\fR events,
-the scope of \fBSIGKILL\fR is limited to those processes which the contract
-author or the event source could have normally sent signals to.
-.sp
-The default value for the fatal event set is \fBCT_PR_EV_HWERR\fR.
-.sp
-If a user without the \fB{PRIV_CONTRACT_EVENT}\fR privilege in its effective
-set removes an event from the fatal event set which is present in the critical
-event set, the corresponding event is automatically removed from the critical
-event set and added to the informative event set.
-.RE
-
-.sp
-.ne 2
-.na
-\fBparameter set\fR
-.ad
-.sp .6
-.RS 4n
-Defines miscellaneous other settings. Use \fBct_pr_tmpl_set_param\fR(3CONTRACT)
-to set this term.
-.sp
-The default parameter set is empty.
-.sp
-The value is a bit vector comprised of some or all of:
-.sp
-.ne 2
-.na
-\fB\fBCT_PR_INHERIT\fR\fR
-.ad
-.sp .6
-.RS 4n
-If set, indicates that the process contract is to be inherited by the process
-contract the contract owner is a member of if the contract owner exits before
-explicitly abandoning the process contract.
-.sp
-If not set, the process contract is automatically abandoned when the owner
-exits.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBCT_PR_KEEP_EXEC\fR\fR
-.ad
-.sp .6
-.RS 4n
-If set, the process contract template remains active across \fBexec\fR(2).
-This can be used to setup a contract for children of an application which
-is not contract-aware. If this is not set then the system clears the active
-template when the process execs. Because this option is intended for an
-application which is not contract-aware, new child process contracts will be
-automatically abandoned by the parent.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBCT_PR_NOORPHAN\fR\fR
-.ad
-.sp .6
-.RS 4n
-If set, all processes in a process contract are sent \fBSIGKILL\fR if the
-process contract is abandoned, either explicitly or because the holder died and
-\fBCT_PR_INHERIT\fR was not set. The scope of \fBSIGKILL\fR is limited to those
-processes which the contract author or the event source could have normally
-sent signals to.
-.sp
-If this is not set and the process contract is abandoned, the process contract
-is orphaned, that is, continues to exist without owner.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBCT_PR_PGRPONLY\fR\fR
-.ad
-.sp .6
-.RS 4n
-If set, only those processes within the same process group and process contract
-as a fatal error-generating process are killed.
-.sp
-If not set, all processes within the process contract are killed if a member
-process encounters an error specified in the fatal set.
-.sp
-If a user without the \fB{PRIV_CONTRACT_EVENT}\fR privilege in its effective
-set adds \fBCT_PR_PGRPONLY\fR to a template's parameter set, any events other
-than \fBCT_PR_EV_EMPTY\fR are automatically removed from the critical event set
-and added to the informative event set.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBCT_PR_REGENT\fR\fR
-.ad
-.sp .6
-.RS 4n
-If set, the process contract can inherit unabandoned contracts left by exiting
-member processes.
-.sp
-If not set, indicates that the process contract should not inherit contracts
-from member processes. If a process exits before abandoning a contract it owns
-and is a member of a process contract which does not have \fBCT_PR_REGENT\fR
-set, the system automatically abandons the contract.
-.sp
-If a regent process contract has inherited contracts and is abandoned by its
-owner, its inherited contracts are abandoned.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fBservice FMRI\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the service FMRI associated with the process contract. Use
-\fBct_pr_tmpl_set_svc_fmri\fR(3CONTRACT) to set this term. The default is to
-inherit the value from the creator's process contract. When this term is
-uninitialized, \fBct_pr_tmpl_get_svc_fmri\fR(3CONTRACT) returns the token
-string \fBinherited:\fR to indicate the value has not been set and is
-inherited. Setting the service FMRI to \fBinherited\fR: clears the current
-(\fBB\fR value and the \fBterm\fR is inherited from the creator's process
-contract. To set this term a process must have \fB{PRIV_CONTRACT_IDENTITY}\fR
-in its effective set.
-.RE
-
-.sp
-.ne 2
-.na
-\fBtransfer contract\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the ID of an empty process contract held by the caller whose
-inherited process contracts are to be transferred to the newly created
-contract. Use \fBct_pr_tmpl_set_transfer\fR(3CONTRACT) to set the transfer
-contract. Attempts to specify a contract not held by the calling process, or a
-contract which still has processes in it, fail.
-.sp
-The default transfer term is \fB0\fR, that is, no contract.
-.RE
-
-.SS "STATUS"
-In addition to the standard items, the status object read from a status file
-descriptor contains the following items to obtain this information
-respectively:
-.sp
-.ne 2
-.na
-\fBservice contract ID\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the process contract id which defined the service FMRI term. Use
-\fBct_pr_status_get_svc_ctid\fR(3CONTRACT) to read the term's value. It can be
-used to determine if the service FMRI was inherited as in the example below.
-.sp
-.in +2
-.nf
-ctid_t ctid; /* our contract id */
-int fd; /* fd of ctid's status file */
-
-ct_stathdl_(Bt status;
-ctid_t svc_ctid;
-
-if (ct_status_read(fd, CTD_FIXED, &status) == 0) {
- if (ct_pr_status_get_svc_ctid(status, &svc_ctid) == 0) {
- if (svc_ctid == ctid)
- /* not inherited */
- else
- /* inherited */
- }
- ct_status_free(status);
-}
-.fi
-.in -2
-.sp
-
-.RE
-
-.sp
-.LP
-If \fBCTD_ALL\fR is specified, the following items are also available:
-.sp
-.ne 2
-.na
-\fBMember list\fR
-.ad
-.sp .6
-.RS 4n
-The PIDs of processes which are members of the process contract. Use
-\fBct_pr_status_get_members\fR(3CONTRACT) for this information.
-.RE
-
-.sp
-.ne 2
-.na
-\fBInherited contract list\fR
-.ad
-.sp .6
-.RS 4n
-The IDs of contracts which have been inherited by the process contract. Use
-\fBct_pr_status_get_contracts\fR(3CONTRACT) to obtain this information.
-.RE
-
-.sp
-.ne 2
-.na
-\fBService FMRI (term)\fR
-.ad
-.sp .6
-.RS 4n
-Values equal to the terms used when the contract was written. The Service FMRI
-term of the process contract of a process en(\fBBtering\fR a zone has the
-value \fBsvc:/system/zone_enter:default\fR when read from the non-global zone.
-.RE
-
-.sp
-.ne 2
-.na
-\fBcontract creator\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the process that created the process contract. Use
-\fBct_pr_status_get_svc_creator\fR(3CONTRACT) to read the term's value.
-.RE
-
-.sp
-.ne 2
-.na
-\fBcreator's aux (term)\fR
-.ad
-.sp .6
-.RS 4n
-Values equal to the terms used when the contract was written.
-.RE
-
-.sp
-.LP
-The following standard status items have different meanings in some situations:
-.sp
-.ne 2
-.na
-\fBOwnership state\fR
-.ad
-.sp .6
-.RS 4n
-If the process contract has a state of \fBCTS_OWNED\fR or \fBCTS_INHERITED\fR
-and is held by an entity in the global zone, but contains processes in a
-non-global zone, it appears to have the state \fBCTS_OWNED\fR when observed by
-processes in the non-global zone.
-.RE
-
-.sp
-.ne 2
-.na
-\fBContract holder\fR
-.ad
-.sp .6
-.RS 4n
-If the process contract has a state of \fBCTS_OWNED\fR or \fBCTS_INHERITED\fR
-and is held by an entity in the global zone, but contains processes in a
-non-global zone, it appears to be held by the non-global zone's \fBzsched\fR
-when observed by processes in the non-global zone.
-.RE
-
-.SS "EVENTS"
-In addition to the standard items, an event generated by a process contract
-contains the following information:
-.sp
-.ne 2
-.na
-\fBGenerating PID\fR
-.ad
-.sp .6
-.RS 4n
-The process ID of the member process which experienced the event, or caused the
-contract event to be generated (in the case of \fBCT_PR_EV_EMPTY\fR). Use
-\fBct_pr_event_get_pid\fR(3CONTRACT) to obtain this information.
-.RE
-
-.sp
-.LP
-If the event type is \fBCT_PR_EV_FORK\fR, the event contains:
-.sp
-.ne 2
-.na
-\fBParent PID\fR
-.ad
-.sp .6
-.RS 4n
-The process ID which forked [Generating PID]. Use
-\fBct_pr_event_get_ppid\fR(3CONTRACT) to obtain this information.
-.RE
-
-.sp
-.LP
-If the event type is \fBCT_PR_EV_EXIT\fR, the event contains:
-.sp
-.ne 2
-.na
-\fBExit status\fR
-.ad
-.sp .6
-.RS 4n
-The exit status of the process. Use \fBct_pr_event_get_exitstatus\fR(3CONTRACT)
-to obtain this information.
-.RE
-
-.sp
-.LP
-If the event type is \fBCT_PR_EV_CORE\fR, the event can contain:
-.sp
-.ne 2
-.na
-\fBProcess core name\fR
-.ad
-.sp .6
-.RS 4n
-The name of the per-process core file. Use
-\fBct_pr_event_get_pcorefile\fR(3CONTRACT) to obtain this information.
-.RE
-
-.sp
-.ne 2
-.na
-\fBGlobal core name\fR
-.ad
-.sp .6
-.RS 4n
-The name of the process's zone's global core file. Use
-\fBct_pr_event_get_gcorefile\fR(3CONTRACT) to obtain this information.
-.RE
-
-.sp
-.ne 2
-.na
-\fBZone core name\fR
-.ad
-.sp .6
-.RS 4n
-The name of the system-wide core file in the global zone. Use
-\fBct_pr_event_get_zcorefile\fR(3CONTRACT) to obtain this information.
-.RE
-
-.sp
-.LP
-See \fBcoreadm\fR(1M) for more information about per-process, global, and
-system-wide core files.
-.sp
-.LP
-If the event type is \fBCT_PR_EV_SIGNAL\fR, the event contains:
-.sp
-.ne 2
-.na
-\fBSignal\fR
-.ad
-.sp .6
-.RS 4n
-The number of the signal which killed the process. Use
-\fBct_pr_event_get_signal\fR(3CONTRACT) to obtain this information.
-.RE
-
-.sp
-.LP
-It can contain:
-.sp
-.ne 2
-.na
-\fBsender\fR
-.ad
-.sp .6
-.RS 4n
-The PID of the process which sent the signal. Use
-\fBct_pr_event_get_sender\fR(3CONTRACT) to obtain this information.
-.RE
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/usr/include/sys/contract/process.h\fR\fR
-.ad
-.sp .6
-.RS 4n
-Contains definitions of event-type macros.
-.RE
-
-.SH SEE ALSO
-\fBctrun\fR(1), \fBctstat\fR(1), \fBctwatch\fR(1), \fBcoreadm\fR(1M),
-\fBclose\fR(2), \fBfork\fR(2), \fBioctl\fR(2), \fBopen\fR(2), \fBpoll\fR(2),
-\fBct_pr_event_get_exitstatus\fR(3CONTRACT),
-\fBct_pr_event_get_gcorefile\fR(3CONTRACT),
-\fBct_pr_event_get_pcorefile\fR(3CONTRACT),
-\fBct_pr_event_get_pid\fR(3CONTRACT), \fBct_pr_event_get_ppid\fR(3CONTRACT),
-\fBct_pr_event_get_signal\fR(3CONTRACT),
-\fBct_pr_event_get_zcorefile\fR(3CONTRACT),
-\fBct_pr_status_get_contracts\fR(3CONTRACT),
-\fBct_pr_status_get_members\fR(3CONTRACT),
-\fBct_pr_status_get_param\fR(3CONTRACT), \fBct_pr_tmpl_set_fatal\fR(3CONTRACT),
-\fBct_pr_tmpl_set_param\fR(3CONTRACT),
-\fBct_pr_tmpl_set_transfer\fR(3CONTRACT), \fBct_tmpl_set_cookie\fR(3CONTRACT),
-\fBct_tmpl_set_critical\fR(3CONTRACT),
-\fBct_tmpl_set_informative\fR(3CONTRACT), \fBlibcontract\fR(3LIB),
-\fBcontract\fR(4), \fBprivileges\fR(5)
diff --git a/usr/src/man/man4/prof_attr.4 b/usr/src/man/man4/prof_attr.4
deleted file mode 100644
index 41bf4622b5..0000000000
--- a/usr/src/man/man4/prof_attr.4
+++ /dev/null
@@ -1,169 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All rights reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PROF_ATTR 4 "Feb 25, 2017"
-.SH NAME
-prof_attr \- profile description database
-.SH SYNOPSIS
-.LP
-.nf
-\fB/etc/security/prof_attr\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-\fB/etc/security/prof_attr\fR is a local source for execution profile names,
-descriptions, and other attributes of execution profiles. The \fBprof_attr\fR
-file can be used with other profile sources, including the \fBprof_attr\fR
-\fBNIS\fR map. Programs use the \fBgetprofattr\fR(3SECDB)
-routines to gain access to this information.
-.sp
-.LP
-The search order for multiple \fBprof_attr\fR sources is specified in the
-\fB/etc/nsswitch.conf\fR file, as described in the \fBnsswitch.conf\fR(4) man
-page.
-.sp
-.LP
-An execution profile is a mechanism used to bundle together the commands and
-authorizations needed to perform a specific function. An execution profile can
-also contain other execution profiles. Each entry in the \fBprof_attr\fR
-database consists of one line of text containing five fields separated by
-colons (\fB:\fR). Line continuations using the backslash (\fB\e\fR) character
-are permitted. The format of each entry is:
-.sp
-.LP
-\fIprofname\fR:\fIres1\fR:\fIres2\fR:\fIdesc\fR:\fIattr\fR
-.sp
-.ne 2
-.na
-\fB\fIprofname\fR\fR
-.ad
-.RS 12n
-The name of the profile. Profile names are case-sensitive.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIres1\fR\fR
-.ad
-.RS 12n
-Reserved for future use.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIres2\fR\fR
-.ad
-.RS 12n
-Reserved for future use.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIdesc\fR\fR
-.ad
-.RS 12n
-A long description. This field should explain the purpose of the profile,
-including what type of user would be interested in using it. The long
-description should be suitable for displaying in the help text of an
-application.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIattr\fR\fR
-.ad
-.RS 12n
-An optional list of semicolon-separated (\fB;\fR) key-value pairs that describe
-the security attributes to apply to the object upon execution. Zero or more
-keys can be specified. There are four valid keys: \fBhelp\fR, \fBprofiles\fR,
-\fBauths\fR, and \fBprivs\fR.
-.sp
-\fBhelp\fR is assigned the name of a file ending in \fB\&.htm\fR or
-\fB\&.html\fR.
-.sp
-\fBauths\fR specifies a comma-separated list of authorization names chosen from
-those names defined in the \fBauth_attr\fR(4) database. Authorization names can
-be specified using the asterisk (\fB*\fR) character as a wildcard. For example,
-\fBsolaris.printer.*\fR would mean all of Sun's authorizations for printing.
-.sp
-\fBprofiles\fR specifies a comma-separated list of profile names chosen from
-those names defined in the \fBprof_attr\fR database.
-.sp
-\fBprivs\fR specifies a comma-separated list of privileges names chosen from
-those names defined in the \fBpriv_names\fR(4) database. These privileges can
-then be used for executing commands with \fBpfexec\fR(1).
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRAllowing Execution of All Commands
-.sp
-.LP
-The following entry allows the user to execute all commands:
-
-.sp
-.in +2
-.nf
-\fBAll:::Use this profile to give a :help=All.html\fR
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRConsulting the Local \fBprof_attr\fR File First
-.sp
-.LP
-With the following \fBnsswitch.conf\fR entry, the local \fBprof_attr\fR file is
-consulted before the \fBNIS\fR map:
-
-.sp
-.in +2
-.nf
-\fBprof_attr: files nis\fR
-.fi
-.in -2
-.sp
-
-.SH FILES
-.LP
-\fB/etc/nsswitch.conf\fR
-.sp
-.LP
-\fB/etc/security/prof_attr\fR
-.SH NOTES
-.LP
-The root user is usually defined in local databases because root needs to be
-able to log in and do system maintenance in single-user mode and at other times
-when the network name service databases are not available. So that the profile
-definitions for root can be located at such times, root's profiles should be
-defined in the local \fBprof_attr\fR file, and the order shown in the example
-\fBnsswitch.conf\fR(4) file entry under EXAMPLES is highly recommended.
-.sp
-.LP
-Because the list of legal keys is likely to expand, any code that parses this
-database must be written to ignore unknown key-value pairs without error. When
-any new keywords are created, the names should be prefixed with a unique
-string, such as the company's stock symbol, to avoid potential naming
-conflicts.
-.sp
-.LP
-Each application has its own requirements for whether the \fBhelp\fR value must
-be a relative pathname ending with a filename or the name of a file. The only
-known requirement is for the name of a file.
-.sp
-.LP
-The following characters are used in describing the database format and must be
-escaped with a backslash if used as data: colon (\fB:\fR), semicolon (\fB;\fR),
-equals (\fB=\fR), and backslash (\fB\e\fR).
-.SH SEE ALSO
-.LP
-\fBauths\fR(1), \fBpfexec\fR(1), \fBprofiles\fR(1), \fBgetauthattr\fR(3SECDB),
-\fBgetprofattr\fR(3SECDB), \fBgetuserattr\fR(3SECDB), \fBauth_attr\fR(4),
-\fBexec_attr\fR(4), \fBpriv_names\fR(4), \fBuser_attr\fR(4)
diff --git a/usr/src/man/man4/profile.4 b/usr/src/man/man4/profile.4
deleted file mode 100644
index 293cddad2b..0000000000
--- a/usr/src/man/man4/profile.4
+++ /dev/null
@@ -1,101 +0,0 @@
-'\" te
-.\" Copyright (c) 1992, Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PROFILE 4 "Dec 20, 1992"
-.SH NAME
-profile \- setting up an environment for user at login time
-.SH SYNOPSIS
-.LP
-.nf
-\fB/etc/profile\fR
-.fi
-
-.LP
-.nf
-\fB$\fR\fBHOME\fR\fB/.profile\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-All users who have the shell, \fBsh\fR(1), as their login command have the
-commands in these files executed as part of their login sequence.
-.sp
-.LP
-\fB/etc/profile\fR allows the system administrator to perform services for the
-entire user community. Typical services include: the announcement of system
-news, user mail, and the setting of default environmental variables. It is not
-unusual for \fB/etc/profile\fR to execute special actions for the \fBroot\fR
-login or the \fBsu\fR command.
-.sp
-.LP
-The file \fB$\fR\fBHOME\fR\fB/.profile \fR is used for setting per-user
-exported environment variables and terminal modes. The following example is
-typical (except for the comments):
-.sp
-.in +2
-.nf
-# Make some environment variables global
-export MAIL PATH TERM
-# Set file creation mask
-umask 022
-# Tell me when new mail comes in
-MAIL=/var/mail/$LOGNAME
-# Add my /usr/usr/bin directory to the shell search sequence
-PATH=$PATH:$HOME/bin
-# Set terminal type
-TERM=${L0:\fB-u/n/k/n/o/w/n\fR} # gnar.invalid
-while :
-do
- if [ \fB-f\fR ${TERMINFO:-/usr/share/lib/terminfo}/?/$TERM ]
- then break
- elif [ \fB-f\fR /usr/share/lib/terminfo/?/$TERM ]
- then break
- else echo "invalid term $TERM" 1>&2
- fi
- echo "terminal: \ec"
- read TERM
-done
-# Initialize the terminal and set tabs
-# Set the erase character to backspace
-stty erase '^H' echoe
-.fi
-.in -2
-.sp
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB$\fR\fBHOME\fR\fB/.profile \fR\fR
-.ad
-.RS 19n
-user-specific environment
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/profile\fR\fR
-.ad
-.RS 19n
-system-wide environment
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBenv\fR(1), \fBlogin\fR(1), \fBmail\fR(1), \fBsh\fR(1), \fBstty\fR(1),
-\fBtput\fR(1), \fBsu\fR(1M), \fBterminfo\fR(4), \fBenviron\fR(5), \fBterm\fR(5)
-.sp
-.LP
-\fISolaris Advanced User\&'s Guide\fR
-.SH NOTES
-.sp
-.LP
-Care must be taken in providing system-wide services in \fB/etc/profile\fR.
-Personal \fB\&.profile\fR files are better for serving all but the most global
-needs.
diff --git a/usr/src/man/man4/project.4 b/usr/src/man/man4/project.4
deleted file mode 100644
index 60bd5985e4..0000000000
--- a/usr/src/man/man4/project.4
+++ /dev/null
@@ -1,230 +0,0 @@
-'\" te
-.\" Copyright (c) 2005, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
-.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PROJECT 4 "May 9, 2005"
-.SH NAME
-project \- project file
-.SH DESCRIPTION
-.sp
-.LP
-The \fBproject\fR file is a local source of project information. The
-\fBproject\fR file can be used in conjunction with other project sources,
-including the \fBNIS\fR maps \fBproject.byname\fR and \fBproject.bynumber\fR
-and the \fBLDAP\fR database \fBproject\fR. Programs use the
-\fBgetprojent\fR(3PROJECT) routines to access this information.
-.sp
-.LP
-The \fBproject\fR file contains a one-line entry for each project recognized by
-the system, of the form:
-.sp
-.in +2
-.nf
-\fIprojname\fR:\fIprojid\fR:\fIcomment\fR:\fIuser-list\fR:\fIgroup-list\fR:\fIattributes\fR
-.fi
-.in -2
-
-.sp
-.LP
-where the fields are defined as:
-.sp
-.ne 2
-.na
-\fB\fIprojname\fR\fR
-.ad
-.RS 14n
-The name of the project. The name must be a string that consists of
-alphanumeric characters, underline (_) characters, hyphens (-), and periods
-(.). The period, which is reserved for projects with special meaning to the
-operating system, can be used only in the names of default projects for users.
-\fIprojname\fR cannot contain colons (:) or newline characters.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIprojid\fR\fR
-.ad
-.RS 14n
-The project's unique numerical \fBID\fR (\fBPROJID\fR) within the system. The
-maximum value of the \fIprojid\fR field is \fBMAXPROJID\fR. Project IDs below
-100 are reserved for the use of the operating system.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIcomment\fR\fR
-.ad
-.RS 14n
-The project's description.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIuser-list\fR\fR
-.ad
-.RS 14n
-A comma-separated list of users allowed in the project. With the exception of
-the special projects referred to below, an empty field indicates no users are
-allowed. See note about the use of wildcards below.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIgroup-list\fR\fR
-.ad
-.RS 14n
-A comma-separated list of groups of users allowed in the project. With the
-exception of the special projects referred to below, an empty field indicates
-no groups are allowed. See note about the use of wildcards below.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIattributes\fR\fR
-.ad
-.RS 14n
-A semicolon-separated list of name value pairs. Each pair has the following
-format:
-.sp
-\fIname\fR[=\fIvalue\fR]
-.sp
-where \fIname\fR is the arbitrary string specifying the key's name and
-\fIvalue\fR is the optional key value. An explanation of the valid name-value
-pair syntax is provided in the \fBUSAGE\fR section of this page. The expected
-most frequent use of the attribute field is for the specification of resource
-controls. See \fBresource_controls\fR(5) for a description of the resource
-controls supported in the current release of the Solaris operating system. You
-can also use the attribute field for resource caps (see \fBrcapd\fR(1M)) and
-for the \fBproject.pool\fR attribute (see \fBsetproject\fR(3PROJECT)).
-.RE
-
-.sp
-.LP
-Null entries (empty fields) in the \fIuser-list\fR and \fIgroup-list\fR fields,
-which normally mean "no users" and "no groups", respectively, have a different
-meaning in the entries for three special projects, \fBuser.\fIusername\fR\fR,
-\fBgroup.\fIgroupname\fR\fR, and \fBdefault\fR. See \fBgetprojent\fR(3PROJECT)
-for a description of these projects.
-.sp
-.LP
-Wildcards can be used in user-list and group-list fields of the project
-database entry. The asterisk (\fB*\fR), allows all users or groups to join the
-project. The exclamation mark followed by the asterisk (\fB!*\fR), excludes all
-users or groups from the project. The exclamation mark (\fB!\fR) followed by a
-username or groupname excludes the specified user or group from the project.
-See EXAMPLES, below.
-.sp
-.LP
-Malformed entries cause routines that read this file to halt, in which case
-project assignments specified further along are never made. Blank lines are
-treated as malformed entries in the \fBproject\fR file, and cause
-\fBgetprojent\fR(3PROJECT) and derived interfaces to fail.
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRSample \fBproject\fR File
-.sp
-.LP
-The following is a sample \fBproject\fR file:
-
-.sp
-.in +2
-.nf
-system:0:System:::
-user.root:1:Super-User:::
-noproject:2:No Project:::
-default:3::::
-group.staff:10::::
-beatles:100:The Beatles:john,paul,george,ringo::task.max-lwps=
- (privileged,100,signal=SIGTERM),(privileged,110,deny);
- process.max-file-descriptor
-.fi
-.in -2
-
-.sp
-.LP
-Note that the two line breaks in the line that begins with \fBbeatles\fR are
-not valid in a \fBproject\fR file. They are shown here only to allow the
-example to display on a printed or displayed page. Each entry must be on one
-and only one line.
-
-.sp
-.LP
-An example project entry for \fBnsswitch.conf\fR(4) is:
-
-.sp
-.in +2
-.nf
-project: files nis
-.fi
-.in -2
-
-.sp
-.LP
-With these entries, the project \fBbeatles\fR will have members \fBjohn\fR,
-\fBpaul\fR, \fBgeorge\fR, and \fBringo\fR, and all projects listed in the
-\fBNIS\fR project table are effectively incorporated after the entry for
-\fBbeatles\fR.
-
-.sp
-.LP
-The \fBbeatles\fR project has two values set on the \fBtask.max-lwps\fR
-resource control. When a task in the \fBbeatles\fR project requests (via one of
-its member processes) its 100th and 110th LWPs, an action associated with the
-encountered threshold triggers. Upon the request for the 100th LWP, the process
-making the request is sent the signal \fBSIGTERM\fR and is granted the request
-for an additional lightweight process (LWP). At this point, the threshold for
-110 LWPs becomes the active threshold. When a request for the 110th LWP in the
-task is made, the requesting process is denied the request--no LWP will be
-created. Since the 110th LWP is never granted, the threshold remains active,
-and all subsequent requests for an 110th LWP will fail. (If LWPs are given up,
-then subsequent requests will succeed, unless they would take the total number
-of LWPs across the task over 110.) The \fBprocess.max-file-descriptor\fR
-resource control is given no values. This means that processes entering this
-project will only have the system resource control value on this \fBrctl\fR.
-
-.LP
-\fBExample 2 \fRProject Entry with Wildcards
-.sp
-.LP
-The following entries use wildcards:
-
-.sp
-.in +2
-.nf
-notroot:200:Shared Project:*,!root::
-notused:300:Unused Project::!*:
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-In this example, any user except "root" is a member of project "notroot". For
-the project "notused", all groups are excluded.
-
-.SH USAGE
-.sp
-.LP
-The \fBproject\fR database offers a reasonably flexible attribute mechanism in
-the final name-value pair field. Name-value pairs are separated from one
-another with the semicolon (;) character. The name is in turn distinguished
-from the (optional) value by the equals (=) character. The value field can
-contain multiple values separated by the comma (,) character, with grouping
-support (into further values lists) by parentheses. Each of these values can be
-composed of the upper and lower case alphabetic characters, the digits '0'
-through '9', and the punctuation characters hyphen (-), plus (+), period (.),
-slash (/), and underscore (_). Example resource control value specifications
-are provided in EXAMPLES, above, and in \fBresource_controls\fR(5) and
-\fBgetprojent\fR(3PROJECT).
-.SH SEE ALSO
-.sp
-.LP
-\fBnewtask\fR(1), \fBprojects\fR(1), \fBprctl\fR(1),
-\fBgetprojent\fR(3PROJECT), \fBsetrctl\fR(2), \fBunistd.h\fR(3HEAD),
-\fBnsswitch.conf\fR(4), \fBresource_controls\fR(5)
diff --git a/usr/src/man/man4/protocols.4 b/usr/src/man/man4/protocols.4
deleted file mode 100644
index 2f2c575777..0000000000
--- a/usr/src/man/man4/protocols.4
+++ /dev/null
@@ -1,99 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T
-.\" Copyright (C) 2002, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PROTOCOLS 4 "Feb 25, 2017"
-.SH NAME
-protocols \- protocol name database
-.SH SYNOPSIS
-.LP
-.nf
-\fB/etc/inet/protocols\fR
-.fi
-
-.LP
-.nf
-\fB/etc/protocols\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBprotocols\fR file is a local source of information regarding the known
-protocols used in the \fBDARPA\fR Internet. The protocols file can be used in
-conjunction with or instead of other protocols sources, including the \fBNIS\fR
-maps "protocols.byname" and "protocols.bynumber". Programs use the
-\fBgetprotobyname\fR(3SOCKET) routine to access this information.
-.sp
-.LP
-The \fBprotocols\fR file has one line for each protocol. The line has the
-following format:
-.sp
-.in +2
-.nf
-\fIofficial-protocol-name\fR \fIprotocol-number\fR \fIaliases\fR
-.fi
-.in -2
-
-.sp
-.LP
-Items are separated by any number of blanks and/or TAB characters. A `\fB#\fR'
-indicates the beginning of a comment; characters up to the end of the line are
-not interpreted by routines which search the file. Protocol names may contain
-any printable character other than a field delimiter, NEWLINE, or comment
-character.
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRA Sample Database
-.sp
-.LP
-The following is a sample database:
-
-.sp
-.in +2
-.nf
-#
-# Internet (IP) protocols
-#
-ip 0 IP # internet protocol, pseudo protocol number
-icmp 1 ICMP # internet control message protocol
-ggp 3 GGP # gateway-gateway protocol
-tcp 6 TCP # transmission control protocol
-egp 8 EGP # exterior gateway protocol
-pup 12 PUP # PARC universal packet protocol
-udp 17 UDP # user datagram protocol
-
-#
-# Internet (IPv6) extension headers
-#
-hopopt 0 HOPOPT # Hop-by-hop options for IPv6
-ipv6 41 IPv6 # IPv6 in IP encapsulation
-ipv6-route 43 IPv6-Route # Routing header for IPv6
-ipv6-frag 44 IPv6-Frag # Fragment header for IPv6
-esp 50 ESP # Encap Security Payload for IPv6
-ah 51 AH # Authentication Header for IPv6
-ipv6-icmp 58 IPv6-ICMP # IPv6 internet control message protocol
-ipv6-nonxt 59 IPv6-NoNxt # No next header extension header for IPv6
-ipv6-opts 60 IPv6-Opts # Destination Options for IPv6
-.fi
-.in -2
-.sp
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/etc/nsswitch.conf\fR\fR
-.ad
-.RS 22n
-configuration file for name-service switch
-.RE
-
-.SH SEE ALSO
-.LP
-\fBgetprotobyname\fR(3SOCKET), \fBnsswitch.conf\fR(4)
-.SH NOTES
-.LP
-\fB/etc/inet/protocols\fR is the official SVR4 name of the \fBprotocols\fR
-file. The symbolic link \fB/etc/protocols\fR exists for \fBBSD\fR
-compatibility.
diff --git a/usr/src/man/man4/prototype.4 b/usr/src/man/man4/prototype.4
deleted file mode 100644
index 4137206ad8..0000000000
--- a/usr/src/man/man4/prototype.4
+++ /dev/null
@@ -1,426 +0,0 @@
-'\" te
-.\" Copyright (c) 1996, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PROTOTYPE 4 "May 3, 2008"
-.SH NAME
-prototype \- package information file
-.SH DESCRIPTION
-.sp
-.LP
-\fBprototype\fR is an \fBASCII\fR file used to specify package information.
-Each entry in the file describes a single deliverable object. An object can be
-a data file, directory, source file, executable object, and so forth. This file
-is generated by the package developer.
-.sp
-.LP
-Entries in a \fBprototype\fR file consist of several fields of information
-separated by white space. Comment lines begin with a ``\fB#\fR'' and are
-ignored. The fields are described below and must appear in the order shown.
-.sp
-.ne 2
-.na
-\fB\fIpart\fR\fR
-.ad
-.RS 12n
-An optional field designating the part number in which the object resides. A
-part is a collection of files and is the atomic unit by which a package is
-processed. A developer can choose criteria for grouping files into a part (for
-example, based on class). If this field is not used, part 1 is assumed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIftype\fR\fR
-.ad
-.RS 12n
-A one-character field that indicates the file type. Valid values are:
-.sp
-.ne 2
-.na
-\fB\fBb\fR\fR
-.ad
-.RS 5n
-block special device
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBc\fR\fR
-.ad
-.RS 5n
-character special device
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBd\fR\fR
-.ad
-.RS 5n
-directory
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBe\fR\fR
-.ad
-.RS 5n
-a file to be edited upon installation or removal (can be shared by several
-packages)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBf\fR\fR
-.ad
-.RS 5n
-a standard executable or data file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBi\fR\fR
-.ad
-.RS 5n
-installation script or information file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBl\fR\fR
-.ad
-.RS 5n
-linked file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBp\fR\fR
-.ad
-.RS 5n
-named pipe
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBs\fR\fR
-.ad
-.RS 5n
-symbolic link
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBv\fR\fR
-.ad
-.RS 5n
-volatile file (one whose contents are expected to change, like a log file)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBx\fR\fR
-.ad
-.RS 5n
-an exclusive directory accessible only by this package
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIclass\fR\fR
-.ad
-.RS 12n
-The installation class to which the file belongs. This name can be no longer
-than 64 characters. The field is not specified for installation scripts.
-(\fBadmin\fR and all classes beginning with capital letters are reserved class
-names.)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIpathname\fR\fR
-.ad
-.RS 12n
-The pathname where the file resides on the target machine, for example,
-\fB/usr/bin/mail\fR or \fBbin/ras/proc\fR. Relative pathnames (those that do
-not begin with a slash) indicate that the file is relocatable. The form
-.sp
-\fIpath1\fR\fB=\fR\fIpath2\fR
-.sp
-can be used for two purposes: to define a link and to define local pathnames.
-.sp
-For linked files, \fIpath1\fR indicates the destination of the link and
-\fIpath2\fR indicates the source file. (This format is mandatory for linked
-files.)
-.sp
-For local pathnames, \fIpath1\fR indicates the pathname an object should have
-on the machine where the entry is to be installed and \fIpath2\fR indicates
-either a relative or fixed pathname to a file on the host machine which
-contains the actual contents.
-.sp
-A pathname can contain a variable specification of the form
-\fB$\fR\fIvariable.\fR If \fIvariable\fR begins with a lower case letter, it is
-a build variable. If \fIvariable\fR begins with an upper case letter, it is an
-install variable. Build variables are bound at build time. If an install
-variable is known at build time, its definition is inserted into the
-\fBpkginfo\fR(4) file so that it is available at install time. If an install
-variable is not known at build time, it is bound at install time.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fImajor\fR\fR
-.ad
-.RS 12n
-The major device number. The field is only specified for block or character
-special devices.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIminor\fR\fR
-.ad
-.RS 12n
-The minor device number. The field is only specified for block or character
-special devices.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fImode\fR\fR
-.ad
-.RS 12n
-The octal mode of the file (for example, 0664). A question mark (\fB?\fR)
-indicates that the mode is left unchanged, implying that the file already
-exists on the target machine. This field is not used for linked files or
-packaging information files.
-.sp
-The mode can be a variable specification of the form \fB$\fR\fIvariable.\fR If
-\fIvariable\fR begins with a lower case letter, it is a build variable. If
-\fIvariable\fR begins with an upper case letter, it is an install variable.
-Build variables are bound at build time. If an install variable is known at
-build time, its definition is inserted into the \fBpkginfo\fR(4) file so that
-it is available at install time. If an install variable is not known at build
-time, it is bound at install time.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIowner\fR\fR
-.ad
-.RS 12n
-The owner of the file (for example, \fBbin\fR or \fBroot\fR). The field is
-limited to 14 characters in length. A question mark (\fB?\fR) indicates that
-the owner is left unchanged, implying that the file already exists on the
-target machine. This field is not used for linked files or packaging
-information files.
-.sp
-The owner can be a variable specification of the form \fB$\fR\fIvariable.\fR If
-\fIvariable\fR begins with a lower case letter, it is a build variable. If
-\fIvariable\fR begins with an upper case letter, it is an install variable.
-Build variables are bound at build time. If an install variable is known at
-build time, its definition is inserted into the \fBpkginfo\fR(4) file so that
-it is available at install time. If an install variable is not known at build
-time, it is bound at install time.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIgroup\fR\fR
-.ad
-.RS 12n
-The group to which the file belongs (for example, \fBbin\fR or \fBsys\fR). The
-field is limited to 14 characters in length. A question mark (\fB?\fR)
-indicates that the group is left unchanged, implying that the file already
-exists on the target machine. This field is not used for linked files or
-packaging information files.
-.sp
-The group can be a variable specification of the form \fB$\fR\fIvariable.\fR If
-\fIvariable\fR begins with a lower case letter, it is a build variable. If
-\fIvariable\fR begins with an upper case letter, it is an install variable.
-Build variables are bound at build time. If an install variable is known at
-build time, its definition is inserted into the \fBpkginfo\fR(4) file so that
-it is available at install time. If an install variable is not known at build
-time, it is bound at install time.
-.RE
-
-.sp
-.LP
-An exclamation point (\fB!\fR) at the beginning of a line indicates that the
-line contains a command. These commands are used to incorporate files in other
-directories, to locate objects on a host machine, and to set permanent
-defaults. The following commands are available:
-.sp
-.ne 2
-.na
-\fB\fBsearch\fR\fR
-.ad
-.RS 15n
-Specifies a list of directories (separated by white space) to search for when
-looking for file contents on the host machine. The base name of the \fIpath\fR
-field is appended to each directory in the ordered list until the file is
-located. Searches are not recursive.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBinclude\fR\fR
-.ad
-.RS 15n
-Specifies a pathname which points to another prototype file to include. Note
-that \fBsearch\fR requests do not span \fBinclude\fR files.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdefault\fR\fR
-.ad
-.RS 15n
-Specifies a list of attributes (mode, owner, and group) to be used by default
-if attribute information is not provided for prototype entries which require
-the information. The defaults do not apply to entries in \fBinclude\fR
-prototype files.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIparam\fR\fB=\fR\fIvalue\fR\fR
-.ad
-.RS 15n
-Places the indicated parameter in the current environment. Spans to subsequent
-included prototype files.
-.RE
-
-.sp
-.LP
-The above commands can have variable substitutions embedded within them, as
-demonstrated in the two example prototype files below.
-.sp
-.LP
-Before files are overwritten during installation, they are copied to a
-temporary pathname. The exception to this rule is files whose mode includes
-execute permission, unless the file is editable (that is, \fIftype\fR is
-\fBe\fR). For files which meet this exception, the existing version is linked
-to a temporary pathname, and the original file is removed. This allows
-processes which are executing during installation to be overwritten.
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRExample 1:
-.sp
-.in +2
-.nf
-!PROJDIR=/usr/proj
-!BIN=$PROJDIR/bin
-!CFG=$PROJDIR/cfg
-!LIB=$PROJDIR/lib
-!HDRS=$PROJDIR/hdrs
-!search /usr/myname/usr/bin /usr/myname/src /usr/myname/hdrs
-i pkginfo=/usr/myname/wrap/pkginfo
-i depend=/usr/myname/wrap/depend
-i version=/usr/myname/wrap/version
-d none /usr/wrap 0755 root bin
-d none /usr/wrap/usr/bin 0755 root bin
-! search $BIN
-f none /usr/wrap/bin/INSTALL 0755 root bin
-f none /usr/wrap/bin/REMOVE 0755 root bin
-f none /usr/wrap/bin/addpkg 0755 root bin
-!default 755 root bin
-f none /usr/wrap/bin/audit
-f none /usr/wrap/bin/listpkg
-f none /usr/wrap/bin/pkgmk
-# the following file starts out zero length but grows
-v none /usr/wrap/logfile=/dev/null 0644 root bin
-# the following specifies a link (dest=src)
-l none /usr/wrap/src/addpkg=/usr/wrap/bin/rmpkg
-! search $SRC
-!default 644 root other
-f src /usr/wrap/src/INSTALL.sh
-f src /usr/wrap/src/REMOVE.sh
-f src /usr/wrap/src/addpkg.c
-f src /usr/wrap/src/audit.c
-f src /usr/wrap/src/listpkg.c
-f src /usr/wrap/src/pkgmk.c
-d none /usr/wrap/data 0755 root bin
-d none /usr/wrap/save 0755 root bin
-d none /usr/wrap/spool 0755 root bin
-d none /usr/wrap/tmp 0755 root bin
-d src /usr/wrap/src 0755 root bin
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRExample 2:
-.sp
-.in +2
-.nf
-\fB# this prototype is generated by 'pkgproto' to refer
-# to all prototypes in my src directory
-!PROJDIR=/usr/dew/projx
-!include $PROJDIR/src/cmd/prototype
-!include $PROJDIR/src/cmd/audmerg/protofile
-!include $PROJDIR/src/lib/proto\fR
-.fi
-.in -2
-.sp
-
-.SH SEE ALSO
-.sp
-.LP
-\fBpkgmk\fR(1), \fBpkginfo\fR(4)
-.sp
-.LP
-\fIApplication Packaging Developer\&'s Guide\fR
-.SH NOTES
-.sp
-.LP
-Normally, if a file is defined in the \fBprototype\fR file but does not exist,
-that file is created at the time of package installation. However, if the file
-pathname includes a directory that does not exist, the file is not created. For
-example, if the \fBprototype\fR file has the following entry:
-.sp
-.in +2
-.nf
-\fBf none /usr/dev/bin/command\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-and that file does not exist, it is created if the directory \fB/usr/dev/bin\fR
-already exists or if the \fBprototype\fR also has an entry defining the
-directory:
-.sp
-.in +2
-.nf
-\fBd none /usr/dev/bin\fR
-.fi
-.in -2
-.sp
-
diff --git a/usr/src/man/man4/pseudo.4 b/usr/src/man/man4/pseudo.4
deleted file mode 100644
index 8adfb6fe7a..0000000000
--- a/usr/src/man/man4/pseudo.4
+++ /dev/null
@@ -1,58 +0,0 @@
-'\" te
-.\" Copyright (c) 1993, Sun Microsystems, Inc.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PSEUDO 4 "Jun 15, 1993"
-.SH NAME
-pseudo \- configuration files for pseudo device drivers
-.SH DESCRIPTION
-.sp
-.LP
-Pseudo devices are devices that are implemented entirely in software. Drivers
-for pseudo devices must provide driver configuration files to inform the system
-of each pseudo device that should be created.
-.sp
-.LP
-Configuration files for pseudo device drivers must identify the parent driver
-explicitly as \fIpseudo,\fR and must create an integer property called
-\fIinstance\fR which is unique to this entry in the configuration file.
-.sp
-.LP
-Each entry in the configuration file creates a prototype devinfo node. Each
-node is assigned an instance number which is determined by the value of the
-\fIinstance\fR property. This property is only applicable to children of the
-\fIpseudo\fR parent, and is required since pseudo devices have no hardware
-address from which to determine the instance number. See \fBdriver.conf\fR(4)
-for further details of configuration file syntax.
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRA sample configuration file.
-.sp
-.LP
-Here is a configuration file called \fBramdisk.conf\fR for a pseudo device
-driver that implements a RAM disk. This file creates two nodes called
-"ramdisk". The first entry creates ramdisk node instance 0, and the second
-creates ramdisk node, instance 1, with the additional \fBdisk-size\fR property
-set to \fB512.\fR
-
-.sp
-.in +2
-.nf
-\fB#
-# Copyright (c) 1993, by Sun Microsystems, Inc.
-#
-#ident "@(#)ramdisk.conf 1.3 93/06/04 SMI"
-name="ramdisk" parent="pseudo" instance=0;
-name="ramdisk" parent="pseudo" instance=1 disk-size=512;\fR
-.fi
-.in -2
-.sp
-
-.SH SEE ALSO
-.sp
-.LP
-\fBdriver.conf\fR(4), \fBddi_prop_op\fR(9F)
-.sp
-.LP
-\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man4/publickey.4 b/usr/src/man/man4/publickey.4
deleted file mode 100644
index d37314f21a..0000000000
--- a/usr/src/man/man4/publickey.4
+++ /dev/null
@@ -1,30 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T .\e" Copyright (c) 1988 Sun Microsystems, Inc. - All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PUBLICKEY 4 "Feb 25, 2017"
-.SH NAME
-publickey \- public key database
-.SH SYNOPSIS
-.LP
-.nf
-\fB/etc/publickey\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-\fB/etc/publickey\fR is a local public key database that is used for secure
-RPC. The \fB/etc/publickey\fR file can be used in conjunction with or instead
-of other publickey databases, including the NIS publickey map.
-Each entry in the database consists of a network user name
-(which may refer to either a user or a hostname), followed by the user's public
-key (in hex notation), a colon, and then the user's secret key encrypted with a
-password (also in hex notation).
-.sp
-.LP
-The \fB/etc/publickey\fR file contains a default entry for \fBnobody\fR.
-.SH SEE ALSO
-.LP
-\fBchkey\fR(1), \fBnewkey\fR(1M), \fBgetpublickey\fR(3NSL),
-\fBnsswitch.conf\fR(4)
diff --git a/usr/src/man/man4/queuedefs.4 b/usr/src/man/man4/queuedefs.4
deleted file mode 100644
index f6a83b777c..0000000000
--- a/usr/src/man/man4/queuedefs.4
+++ /dev/null
@@ -1,121 +0,0 @@
-'\" te
-.\" Copyright (c) 1994, Sun Microsystems, Inc.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH QUEUEDEFS 4 "Mar 1, 1994"
-.SH NAME
-queuedefs \- queue description file for at, batch, and cron
-.SH SYNOPSIS
-.LP
-.nf
-\fB/etc/cron.d/queuedefs\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBqueuedefs\fR file describes the characteristics of the queues managed by
-\fBcron\fR(1M). Each non-comment line in this file describes one queue. The
-format of the lines are as follows:
-.sp
-.LP
-\fIq\fR\fB\&.\fR[\fInjob\fR\fBj\fR][\fBnice\fR\fBn\fR][\fInwait\fR\fBw\fR]
-.sp
-.LP
-The fields in this line are:
-.sp
-.ne 2
-.na
-\fB\fIq\fR\fR
-.ad
-.RS 9n
-The name of the queue. \fBa\fR is the default queue for jobs started by
-\fBat\fR(1); \fBb\fR is the default queue for jobs started by \fBbatch\fR (see
-\fBat\fR(1)); \fBc\fR is the default queue for jobs run from a \fBcrontab\fR(1)
-file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fInjob\fR\fR
-.ad
-.RS 9n
-The maximum number of jobs that can be run simultaneously in that queue; if
-more than \fInjob\fR jobs are ready to run, only the first \fInjob\fR jobs will
-be run, and the others will be run as jobs that are currently running
-terminate. The default value is \fB100\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnice\fR\fR
-.ad
-.RS 9n
-The \fBnice\fR(1) value to give to all jobs in that queue that are not run with
-a user \fBID\fR of super-user. The default value is \fB2\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fInwait\fR\fR
-.ad
-.RS 9n
-The number of seconds to wait before rescheduling a job that was deferred
-because more than \fInjob\fR jobs were running in that job's queue, or because
-the system-wide limit of jobs executing has been reached. The default value is
-\fB60\fR.
-.RE
-
-.sp
-.LP
-Lines beginning with \fB#\fR are comments, and are ignored.
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRA sample file.
-.sp
-.in +2
-.nf
-\fB#
-#
-a.4j1n
-b.2j2n90w\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-This file specifies that the \fBa\fR queue, for \fBat\fR jobs, can have up to 4
-jobs running simultaneously; those jobs will be run with a \fBnice\fR value of
-1. As no \fInwait\fR value was given, if a job cannot be run because too many
-other jobs are running \fBcron\fR will wait 60 seconds before trying again to
-run it.
-
-.sp
-.LP
-The \fBb\fR queue, for \fBbatch\fR(1) jobs, can have up to 2 jobs running
-simultaneously; those jobs will be run with a \fBnice\fR(1) value of 2. If a
-job cannot be run because too many other jobs are running, \fBcron\fR(1M) will
-wait 90 seconds before trying again to run it. All other queues can have up to
-100 jobs running simultaneously; they will be run with a \fBnice\fR value of 2,
-and if a job cannot be run because too many other jobs are running \fBcron\fR
-will wait 60 seconds before trying again to run it.
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/cron.d/queuedefs\fR\fR
-.ad
-.RS 25n
-queue description file for \fBat\fR, \fBbatch\fR, and \fBcron\fR.
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBat\fR(1), \fBcrontab\fR(1), \fBnice\fR(1), \fBcron\fR(1M)
diff --git a/usr/src/man/man4/rcmscript.4 b/usr/src/man/man4/rcmscript.4
deleted file mode 100644
index c8142136fb..0000000000
--- a/usr/src/man/man4/rcmscript.4
+++ /dev/null
@@ -1,984 +0,0 @@
-'\" te
-.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH RCMSCRIPT 4 "Feb 18, 2003"
-.SH NAME
-rcmscript \- script interface specification for the Reconfiguration and
-Coordination Manager
-.SH SYNOPSIS
-.LP
-.nf
-\fB\fIrcm_scriptname\fR scriptinfo\fR
-.fi
-
-.LP
-.nf
-\fB\fIrcm_scriptname\fR register\fR
-.fi
-
-.LP
-.nf
-\fB\fIrcm_scriptname\fR resourceinfo \fIresourcename\fR\fR
-.fi
-
-.LP
-.nf
-\fB\fIrcm_scriptname\fR queryremove \fIresourcename\fR\fR
-.fi
-
-.LP
-.nf
-\fB\fIrcm_scriptname\fR preremove \fIresourcename\fR\fR
-.fi
-
-.LP
-.nf
-\fB\fIrcm_scriptname\fR postremove \fIresourcename\fR\fR
-.fi
-
-.LP
-.nf
-\fB\fIrcm_scriptname\fR undoremove \fIresourcename\fR\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-Reconfiguration and Coordination Manager (RCM) is a framework designed to
-coordinate device consumers during Solaris Dynamic Reconfiguration (DR). The
-interfaces specified in this man page allow device consumers, such as
-application vendors or site administrators, to act before and after DR
-operations take place by providing RCM scripts. You can write your own RCM
-scripts to shut down your applications, or to cleanly release the devices from
-your applications during dynamic remove operations.
-.sp
-.LP
-An RCM script is an executable perl script, a shell script or a binary. Perl is
-the recommended language. Each script is run in its own address space using the
-user-id of the script file owner.
-.sp
-.LP
-An RCM script is invoked on demand in response to DR as follows:
-.sp
-.in +2
-.nf
-\fI<scriptname>\fR \fI<command>\fR [\fIargs\fR ...]
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Every script must implement the following RCM commands:
-.sp
-.ne 2
-.na
-\fB\fBscriptinfo\fR\fR
-.ad
-.RS 16n
-Get script information.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBregister\fR\fR
-.ad
-.RS 16n
-Register devices the script handles.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBresourceinfo\fR\fR
-.ad
-.RS 16n
-Get resource information.
-.RE
-
-.sp
-.LP
-A script might include some or all the of the following commands:
-.sp
-.ne 2
-.na
-\fB\fBqueryremove\fR\fR
-.ad
-.RS 15n
-Queries whether the resource can be released.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpreremove\fR\fR
-.ad
-.RS 15n
-Releases the resource.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpostremove\fR\fR
-.ad
-.RS 15n
-Provides post-resource removal notification.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBundoremove\fR\fR
-.ad
-.RS 15n
-Undo the actions done in preremove.
-.RE
-
-.sp
-.LP
-When a script's \fBregister\fR command is run, the script should supply, in
-return data, all resource names the script or its application handles that
-could potentially be removed by DR. A resource name refers to a name in
-\fB/dev\fR path name.
-.sp
-.LP
-Below is a high-level overview of the sequence of script invocations that
-occurs when dynamic removal of a script's registered resource is attempted. See
-the COMMANDS section for a detailed description of the commands.
-.RS +4
-.TP
-1.
-Prior to removing the resource from the system during DR, the script's
-\fBqueryremove\fR command is run:
-.sp
-.in +2
-.nf
-\fI<scriptname>\fR queryremove \fI<resourcename>\fR
-.fi
-.in -2
-.sp
-
-The script should check for obvious reasons why the resource can not be removed
-from the perspective of its service or application.
-.RE
-.RS +4
-.TP
-2.
-If the script indicates that the resource can be removed in the
-\fBqueryremove\fR command. The script's \fBpreremove\fR command is run:
-.sp
-.in +2
-.nf
-\fI<scriptname>\fR preremove \fI<resourcename>\fR
-.fi
-.in -2
-.sp
-
-The script releases the resource from the service or application represented by
-the script and prepares for the resource removal. Releasing the resource
-includes closing the resource if the resource is currently opened by its
-application.
-.RE
-.RS +4
-.TP
-3.
-The system then proceeds to remove the resource.
-.RE
-.RS +4
-.TP
-4.
-If the system has removed the resource successfully the script's
-\fBpostremove\fR command is run:
-.sp
-.in +2
-.nf
-\fI<scriptname>\fR postremove \fI<resourcename>\fR
-.fi
-.in -2
-.sp
-
-Otherwise the script's \fBundoremove\fR command is run:
-.sp
-.in +2
-.nf
-\fI<scriptname>\fR undoremove \fI<resourcename>\fR
-.fi
-.in -2
-.sp
-
-.RE
-.sp
-.LP
-For any commands the script does not implement, it must exit with exit status
-of 2. RCM silently returns success for the script's unimplemented commands.
-.sp
-.LP
-A script performs the following basic steps:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Takes RCM command and additional arguments from the command line and
-environment parameters.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Processes the command.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Writes the expected return data to stdout as \fIname=value\fR pairs delimited
-by newlines, where \fIname\fR is the name of the return data item that RCM
-expects and \fIvalue\fR is the value associated with the data item.
-.RE
-.SS "Environment"
-.LP
-The initial environment of RCM scripts is set as follows:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Process UID is set to the UID of the script.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Process GID is set to the GID of the script.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBPATH\fR variable is set to \fB/usr/sbin:/usr/bin\fR.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Current working directory is set to:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fB/var/run\fR for scripts owned by root
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fB/tmp\fR for scripts not owned by root
-.RE
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-File descriptor 0 (stdin) is set to \fB/dev/null\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Environment variable \fBRCM_ENV_DEBUG_LEVEL\fR is set to the debug level.
-Logging is discussed below.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
- The following environment variables are also set where possible:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBLANG\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBLC_COLLATE\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBLC_CTYPE\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBLC_MESSAGES\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBLC_MONETARY\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBLC_NUMERIC\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBLC_TIME\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBLC_ALL\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBTZ\fR
-.RE
-See \fBenviron\fR(5) for a description of these variables. See \fBgettext\fR(1)
-for details on retrieving localized messages.
-.RE
-.sp
-.LP
-All environment variable names beginning with \fBRCM_ENV_\fR are reserved for
-use by the RCM.
-.sp
-.LP
-The character encoding used by the RCM and RCM scripts to exchange RCM
-commands, environment parameters, and name-value pairs is ASCII unless the
-controlling environment variables are specified otherwise.
-.SS "Commands"
-.SS "\fBscriptinfo\fR"
-.LP
-The \fBscriptinfo\fR command is invoked to gather information about the script.
-.sp
-.ne 2
-.na
-\fBReturn data:\fR
-.ad
-.RS 16n
-If successful, the script must write the following name-value pairs to stdout
-and exit with status 0:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBrcm_script_version=1\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBrcm_script_func_info=\fR\fIscript_func_info\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBrcm_cmd_timeout=\fR\fIcommand_timeout_value\fR
-.RE
-where \fIscript_func_info\fR is a localized human-readable message describing
-the functionality of the script.
-.sp
-The RCM monitors the execution time of RCM commands by RCM scripts.
-\fIcommand_timeout_value\fR is the maximum time in seconds the script is
-expected to take to process any RCM command except the \fBscriptinfo\fR command
-itself. If an RCM script does not process the RCM command and exit within this
-time, RCM sends a \fBSIGABRT\fR signal to the script process. RCM then waits
-for a few seconds for the script to finish the processing of the current RCM
-command and exit. If the script does not exit within this time, RCM sends a
-\fBSIGKILL\fR signal to the script.
-.sp
-The \fBrcm_cmd_timeout\fR name-value pair is optional. It is only needed if the
-script is expected to take more than a few seconds to process any RCM command.
-Setting this name to a value of 0 (zero) disables the timer. If this name-value
-pair is not supplied, a default value is assigned by the RCM.
-.sp
-Upon failure, the script must specify the failure reason using the name-value
-pair \fBrcm_failure_reason\fR and exit with status 1.
-.RE
-
-.SS "\fBregister\fR"
-.LP
-The \fBregister\fR command is invoked to allow a script to specify the
-resources that it or its application handles that could potentially be removed
-by DR. The script has to supply all its resource names to RCM using the
-name-value pair \fBrcm_resource_name\fR.
-.sp
-.ne 2
-.na
-\fBReturn Data:\fR
-.ad
-.RS 16n
-If successful, the script must write the following name-value pairs to stdout
-and exit with status 0:
-.sp
-.in +2
-.nf
-rcm_resource_name=\fIresourcename\fR
-rcm_resource_name=\fIresourcename\fR
- .
- .
- .
-.fi
-.in -2
-.sp
-
-where \fIresourcename\fR is the name of the resource the script is interested
-in.
-.sp
-Upon failure, the script must specify the failure reason using the name-value
-pair \fBrcm_failure_reason\fR and exit with status 1.
-.RE
-
-.SS "\fBresourceinfo\fR \fIresourcename\fR"
-.LP
-The \fBresourceinfo\fR command is invoked to get the usage information about
-\fIresourcename\fR.
-.sp
-.ne 2
-.na
-\fBReturn Data:\fR
-.ad
-.RS 16n
-If successful, the script must write the following name-value pair to stdout
-and exit with status 0:
-.sp
-.in +2
-.nf
-rcm_resource_usage_info=\fIresource_usage\fR
-.fi
-.in -2
-.sp
-
-where \fIresource_usage\fR is a localized human readable message describing the
-usage of the resource by the script.
-.sp
-Upon failure, the script must specify the failure reason using the name-value
-pair \fBrcm_failure_reason\fR and exit with status 1.
-.RE
-
-.SS "\fBqueryremove\fR \fIresourcename\fR"
-.LP
-Prior to removing the resource from the system, the \fBqueryremove\fR command
-is invoked to query the script to determine whether the script can release the
-given resource successfully from the service or application it represents. The
-script does not actually release the resource. The script might indicate that
-it is not able to release the resource if the resource is critical for its
-service or application.
-.sp
-.LP
-Additional environment parameter:
-.sp
-.ne 2
-.na
-\fB\fBRCM_ENV_FORCE\fR\fR
-.ad
-.RS 17n
-Can be one of:
-.sp
-.ne 2
-.na
-\fB\fBFALSE\fR\fR
-.ad
-.RS 9n
-Normal request.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBTRUE\fR\fR
-.ad
-.RS 9n
-Request is urgent. The script should check whether the resource can be released
-successfully by force, such as by using the force option to unmount a file
-system.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fBReturn Data:\fR
-.ad
-.RS 16n
-If the command succeeds, the script must return no data and exit with status 0.
-.sp
-If the script would not be able to release the resource, it must specify the
-reason using the name-value pair \fBrcm_failure_reason\fR and exit with status
-3.
-.sp
-Upon any other failure, the script must specify the failure reason using the
-name-value pair \fBrcm_failure_reason\fR and exit with status 1.
-.RE
-
-.SS "\fBpreremove\fR \fIresourcename\fR"
-.LP
-The \fBpreremove\fR command is invoked prior to an attempt to remove the given
-\fIresourcename\fR. In response to this command the script can either release
-the resource (including closing the device if the device is currently opened)
-from the service or application it represents or indicate that it can not
-release the resource if the resource is critical for its service or
-application.
-.sp
-.LP
-Additional environment parameter:
-.sp
-.ne 2
-.na
-\fB\fBRCM_ENV_FORCE\fR\fR
-.ad
-.RS 17n
-Can be one of:
-.sp
-.ne 2
-.na
-\fB\fBFALSE\fR\fR
-.ad
-.RS 9n
-Normal request.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBTRUE\fR\fR
-.ad
-.RS 9n
-Request is urgent. The script should make extra effort to release the resource,
-such as by using the force option to unmount a file system.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fBReturn Data:\fR
-.ad
-.RS 16n
-If the command succeeds, the script must return no data and exit with status 0.
-.sp
-If the script cannot release the resource, it must specify the reason using the
-name-value pair \fBrcm_failure_reason\fR and exit with status 3.
-.sp
-Upon any other failure, the script must specify the failure reason using the
-name-value pair \fBrcm_failure_reason\fR and exit with status 1.
-.RE
-
-.SS "\fBpostremove\fR \fIresourcename\fR"
-.LP
-The \fBpostremove\fR command is invoked after the given \fIresourcename\fR has
-been removed.
-.sp
-.ne 2
-.na
-\fBReturn Data:\fR
-.ad
-.RS 16n
-If the command succeeds, the script must return no data and exit with status 0.
-.sp
-Upon failure, the script must specify the failure reason using the name-value
-pair \fBrcm_failure_reason\fR and exit with status 1.
-.RE
-
-.sp
-.LP
-\fBundoremove\fR \fIresourcename\fR
-.sp
-.LP
-The \fBundoremove\fR command is invoked to undo what was done in the previous
-\fBpreremove\fR command for the given \fIresourcename\fR. The script can bring
-the state of the resource to the same state it was in when the script received
-the \fBpreremove\fR command for that resource.
-.sp
-.ne 2
-.na
-\fBReturn Data:\fR
-.ad
-.RS 16n
-If the command succeeds, the script must return no data and exit with status 0.
-.sp
-Upon failure, the script must specify the failure reason using the name-value
-pair \fBrcm_failure_reason\fR and exit with status 1.
-.RE
-
-.SS "Logging"
-.LP
-A script must log all error and debug messages by writing to stdout the
-name-value pairs listed below. The logged messages go to \fBsyslogd\fR(1M) with
-the \fBsyslog\fR facility of \fBLOG_DAEMON\fR. See \fBsyslog.conf\fR(4).
-.sp
-.ne 2
-.na
-\fB\fBrcm_log_err=\fR\fImessage\fR\fR
-.ad
-.RS 25n
-Logs the \fImessage\fR with the syslog level of \fBLOG_ERR\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrcm_log_warn=\fR\fImessage\fR\fR
-.ad
-.RS 25n
-Logs the \fImessage\fR with the syslog level of \fBLOG_WARNING\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrcm_log_info=\fR\fImessage\fR\fR
-.ad
-.RS 25n
-Logs the \fImessage\fR with the syslog level of \fBLOG_INFO\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrcm_log_debug=\fR\fImessage\fR\fR
-.ad
-.RS 25n
-Logs the \fImessage\fR with the syslog level of \fBLOG_DEBUG\fR.
-.RE
-
-.sp
-.LP
-A script can use the environment variable \fBRCM_ENV_DEBUG_LEVEL\fR to control
-the amount of information to log. \fBRCM_ENV_DEBUG_LEVEL\fR is a numeric value
-ranging from 0 to 9, with 0 meaning log the least amount of information and 9
-meaning log the most.
-.SS "Installing or Removing RCM Scripts"
-.LP
-You must use the following format to name a script:
-.sp
-.in +2
-.nf
-\fIvendor\fR,\fIservice\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-where \fIvendor\fR is the stock symbol (or any distinctive name) of the vendor
-providing the script and \fIservice\fR is the name of service the script
-represents.
-.sp
-.LP
-You must be a superuser (root) to install or remove an RCM script.
-.sp
-.LP
-Select one of the following directories where you want to place the script:
-.sp
-.ne 2
-.na
-\fB\fB/etc/rcm/scripts\fR\fR
-.ad
-.sp .6
-.RS 4n
-Scripts for specific systems
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/platform/`uname -i`/lib/rcm/scripts\fR\fR
-.ad
-.sp .6
-.RS 4n
-Scripts for specific hardware implementation
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/platform/`uname -m`/lib/rcm/scripts\fR\fR
-.ad
-.sp .6
-.RS 4n
-Scripts for specific hardware class
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/rcm/scripts\fR\fR
-.ad
-.sp .6
-.RS 4n
-Scripts for any hardware
-.RE
-
-.SS "Installing a Script"
-.LP
-To install a script, copy the script to the appropriate directory from the list
-above, change the userid and the groupid of the script to the desired values,
-and send \fBSIGHUP\fR to \fBrcm_daemon\fR. For example:
-.sp
-.in +2
-.nf
-# cp SUNW,sample.pl /usr/lib/rcm/scripts
-# chown user[:group] /usr/lib/rcm/scripts/SUNW,sample.pl
-# pkill -HUP -x -u root rcm_daemon
-.fi
-.in -2
-.sp
-
-.SS "Removing a script"
-.LP
-Remove the script from the appropriate directory from the list above and send
-\fBSIGHUP\fR to \fBrcm_daemon\fR. For example:
-.sp
-.in +2
-.nf
-# rm /usr/lib/rcm/scripts/SUNW,sample.pl
-# pkill -HUP -x -u root rcm_daemon
-.fi
-.in -2
-.sp
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRSite Customization RCM Script
-.sp
-.in +2
-.nf
-#! /usr/bin/perl -w
-
-#
-# A sample site customization RCM script for a tape backup application.
-#
-# This script registers all tape drives in the system with RCM.
-# When the system attempts to remove a tape drive by DR the script
-# does the following:
-# - if the tape drive is not being used for backup, it allows the
-# DR to continue.
-# - if the tape drive is being used for backup, and when DR is not
-# forced (RCM_ENV_FORCE=FALSE) it indicates that it cannot release
-# the tape drive with appropriate error message. When forced
-# (RCM_ENV_FORCE=TRUE) it kills the tape backup application in
-# order to allow the DR to continue.
-#
-# This script does not implement the postremove and undoremove commands
-# since there is nothing to cleanup after DR remove operation is
-# completed or failed. If any cleanup is needed after the DR removal
-# completed, postremove command needs to implemented. If any cleanup is
-# needed in the event of DR removal failure, undoremove command needs
-# to be implemented.
-#
-
-use strict;
-
-my ($cmd, %dispatch);
-
-$cmd = shift(@ARGV);
-
-# dispatch table for RCM commands
-%dispatch = (
- "scriptinfo" => \&do_scriptinfo,
- "register" => \&do_register,
- "resourceinfo" => \&do_resourceinfo,
- "queryremove" => \&do_preremove,
- "preremove" => \&do_preremove
-);
-
-if (defined($dispatch{$cmd})) {
- &{$dispatch{$cmd}};
-} else {
- exit (2);
-}
-
-sub do_scriptinfo
-{
- print "rcm_script_version=1\en";
- print "rcm_script_func_info=Tape backup appl script for DR\en";
- exit (0);
-}
-
-sub do_register
-{
- my ($dir, $f, $errmsg);
-
- $dir = opendir(RMT, "/dev/rmt");
- if (!$dir) {
- $errmsg = "Unable to open /dev/rmt directory: $!";
- print "rcm_failure_reason=$errmsg\en";
- exit (1);
- }
-
- while ($f = readdir(RMT)) {
- # ignore hidden files and multiple names for the same device
- if (($f !~ /^\./) && ($f =~ /^[0-9]+$/)) {
- print "rcm_resource_name=/dev/rmt/$f\en";
- }
-
- }
-
- closedir(RMT);
- exit (0);
-}
-
-sub do_resourceinfo
-{
- my ($rsrc, $unit);
-
- $rsrc = shift(@ARGV);
- if ($rsrc =~ /^\e/dev\e/rmt\e/([0-9]+)$/) {
- $unit = $1;
- print "rcm_resource_usage_info=Backup Tape Unit Number $unit\en";
- exit (0);
- } else {
- print "rcm_failure_reason=Unknown tape device!\en";
- exit (1);
- }
-}
-
-sub do_preremove
-{
- my ($rsrc);
-
- $rsrc = shift(@ARGV);
-
- # check if backup application is using this resource
- # if (the backup application is not running on $rsrc) {
- # allow the DR to continue
- # exit (0);
- #}
- #
- # If RCM_ENV_FORCE is FALSE deny the operation.
- # If RCM_ENV_FORCE is TRUE kill the backup application in order
- # to allow the DR operation to proceed
- #
- if ($ENV{RCM_ENV_FORCE} eq 'TRUE') {
- if ($cmd eq 'preremove') {
- # kill the tape backup application
- }
- exit (0);
- } else {
- #
- # indicate that the tape drive can not be released
- # since the device is being used for backup by the
- # tape backup application
- #
- print "rcm_failure_reason=tape backup in progress pid=...\en";
- exit (3);
-
- }
-}
-.fi
-.in -2
-
-.SH EXIT STATUS
-.LP
-A script must exit with following exit status values:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 5n
-Operation specified by the given RCM command has been executed successfully by
-the script. For \fBqueryremove\fR command it also means that the script can
-successfully release the resource.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB1\fR\fR
-.ad
-.RS 5n
-An error occurred while processing the RCM command. The script should provide
-the error message to RCM using the name-value pair \fBrcm_failure_reason\fR
-before exiting.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB2\fR\fR
-.ad
-.RS 5n
-The script does not support the given RCM command. A script must exit with this
-status if it cannot understand the given RCM command.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB3\fR\fR
-.ad
-.RS 5n
-Indicates that the script cannot release the resource for \fBpreremove\fR and
-\fBqueryremove\fR commands. The script should provide a message to RCM
-specifying the reason for not being able to release the resource using the
-name-value pair \fBrcm_failure_reason\fR before exiting.
-.RE
-
-.SH ERRORS
-.LP
-If a script cannot successfully process an RCM command, it must supply to the
-RCM a message indicating the reason for failure by writing a name-value pair,
-in the form shown below, to stdout and exiting with the appropriate exit
-status.
-.sp
-.in +2
-.nf
-rcm_failure_reason=\fIfailure_reason\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-where \fIfailure_reason\fR is a localized human readable message describing the
-reason for failure of the RCM command.
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-.LP
-\fBgettext\fR(1), \fBcfgadm\fR(1M), \fBcfgadm_scsi\fR(1M),
-\fBcfgadm_pci\fR(1M), \fBsyslog\fR(3C), \fBsignal.h\fR(3HEAD),
-\fBsyslog.conf\fR(4), \fBattributes\fR(5), \fBenviron\fR(5)
-.SH NOTES
-.LP
-RCM scripts are expected to properly handle all RCM commands that the script
-implements and to log all errors. Only root has permission to add or remove an
-RCM script. An ill-behaved RCM script can cause unexpected DR failures.
-.sp
-.LP
-RCM commands are invoked only for the resources whose subsystems participate
-within the RCM framework. Currently, not all subsystems participate within the
-RCM framework.
diff --git a/usr/src/man/man4/remote.4 b/usr/src/man/man4/remote.4
deleted file mode 100644
index aab09a3faf..0000000000
--- a/usr/src/man/man4/remote.4
+++ /dev/null
@@ -1,526 +0,0 @@
-'\" te
-.\" Copyright (C) 2002, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH REMOTE 4 "Jun 13, 2002"
-.SH NAME
-remote \- remote host description file
-.SH SYNOPSIS
-.LP
-.nf
-\fB/etc/remote\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The systems known by \fBtip\fR(1) and their attributes are stored in an
-\fBASCII\fR file which is structured somewhat like the \fBtermcap\fR file. Each
-line in the file provides a description for a single \fIsystem\fR. Fields are
-separated by a colon `\fB:\fR'. Lines ending in a `\fB\e\fR\&' character with
-an immediately following \fBNEWLINE\fR are continued on the next line.
-.sp
-.LP
-The first entry is the name(s) of the host system. If there is more than one
-name for a system, the names are separated by vertical bars. After the name of
-the system comes the fields of the description. A field name followed by an
-`\fB=\fR' sign indicates a string value follows. A field name followed by a
-`\fB#\fR' sign indicates a following numeric value.
-.sp
-.LP
-Entries named \fBtip\fR\fIbaudrate\fR are used as default entries by \fBtip\fR,
-as follows. When \fBtip\fR is invoked with only a phone number, it looks for
-an entry of the form \fBtip\fR\fIbaudrate\fR, where \fIbaudrate\fR is the baud
-rate with which the connection is to be made. For example, if the connection
-is to be made at \fB300\fR baud, \fBtip\fR looks for an entry of the form
-\fBtip300\fR.
-.SH CAPABILITIES
-.sp
-.LP
-Capabilities are either strings \fB(str)\fR, numbers \fB(num)\fR, or boolean
-flags \fB(bool)\fR. A string capability is specified by
-\fIcapability\fR=\fIvalue\fR; for example, `\fBdv=/dev/harris\fR'. A numeric
-capability is specified by \fIcapability\fR#\fIvalue\fR; for example,
-`\fBxa#99\fR'. A boolean capability is specified by simply listing the
-capability.
-.sp
-.ne 2
-.na
-\fB\fBat\fR\fR
-.ad
-.RS 6n
-\fB(str)\fR Auto call unit type. The following lists valid '\fBat\fR' types and
-their corresponding hardware:
-.sp
-.ne 2
-.na
-\fB\fBbiz31f\fR\fR
-.ad
-.RS 10n
-Bizcomp 1031, tone dialing
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBbiz31w\fR\fR
-.ad
-.RS 10n
-Bizcomp 1031, pulse dialing
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBbiz22f\fR\fR
-.ad
-.RS 10n
-Bizcomp 1022, tone dialing
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBbiz22w\fR\fR
-.ad
-.RS 10n
-Bizcomp 1022, pulse dialing
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdf02\fR\fR
-.ad
-.RS 10n
-DEC DF02
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdf03\fR\fR
-.ad
-.RS 10n
-DEC DF03
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBventel\fR\fR
-.ad
-.RS 10n
-Ventel 212+
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBv3451\fR\fR
-.ad
-.RS 10n
-Vadic 3451 Modem
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBv831\fR\fR
-.ad
-.RS 10n
-Vadic 831
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBhayes\fR\fR
-.ad
-.RS 10n
-Any Hayes-compatible modem
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBat\fR\fR
-.ad
-.RS 10n
-Any Hayes-compatible modem
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBbr\fR\fR
-.ad
-.RS 6n
-\fB(num)\fR The baud rate used in establishing a connection to the remote host.
-This is a decimal number. The default baud rate is \fB300\fR baud.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcm\fR\fR
-.ad
-.RS 6n
-\fB(str)\fR An initial connection message to be sent to the remote host. For
-example, if a host is reached through a port selector, this might be set to the
-appropriate sequence required to switch to the host.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcu\fR\fR
-.ad
-.RS 6n
-\fB(str)\fR Call unit if making a phone call. Default is the same as the
-\fBdv\fR field.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdb\fR\fR
-.ad
-.RS 6n
-\fB(bool)\fR Cause \fBtip\fR(1) to ignore the first hangup it sees. \fBdb\fR
-(dialback) allows the user to remain in \fBtip\fR while the remote machine
-disconnects and places a call back to the local machine. For more information
-about dialback configuration, see \fISystem Administration Guide: IP
-Services\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdi\fR\fR
-.ad
-.RS 6n
-\fB(str)\fR Disconnect message sent to the host when a disconnect is requested
-by the user.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdu\fR\fR
-.ad
-.RS 6n
-\fB(bool)\fR This host is on a dial-up line.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdv\fR\fR
-.ad
-.RS 6n
-\fB(str)\fR Device(s) to open to establish a connection. If this file refers to
-a terminal line, \fBtip\fR attempts to perform an exclusive open on the device
-to insure only one user at a time has access to the port.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBec\fR\fR
-.ad
-.RS 6n
-\fB(bool)\fR Initialize the \fBtip\fR variable \fBechocheck\fR to \fBon\fR, so
-that \fBtip\fR will synchronize with the remote host during file transfer by
-waiting for the echo of the last character transmitted.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBel\fR\fR
-.ad
-.RS 6n
-\fB(str)\fR Characters marking an end-of-line. The default is no characters.
-\fBtip\fR only recognizes `\fB~\fR' escapes after one of the characters in
-\fBel\fR, or after a \fBRETURN.\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBes\fR\fR
-.ad
-.RS 6n
-\fB(str)\fR The command prefix (escape) character for \fBtip\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBet\fR\fR
-.ad
-.RS 6n
-\fB(num)\fR Number of seconds to wait for an echo response when echo-check mode
-is on. This is a decimal number. The default value is \fB10\fR seconds.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBex\fR\fR
-.ad
-.RS 6n
-\fB(str)\fR Set of non-printable characters not to be discarded when scripting
-with beautification turned on. The default value is "\fB\et\en\eb\ef\fR".
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfo\fR\fR
-.ad
-.RS 6n
-\fB(str)\fR Character used to force literal data transmission. The default
-value is `\fB\e377\fR\&'.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfs\fR\fR
-.ad
-.RS 6n
-\fB(num)\fR Frame size for transfers. The default frame size is equal to
-\fB1024\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBhd\fR\fR
-.ad
-.RS 6n
-\fB(bool)\fR Initialize the \fBtip\fR variable \fBhalfduplex\fR to \fBon\fR, so
-local echo should be performed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBhf\fR\fR
-.ad
-.RS 6n
-\fB(bool)\fR Initialize the \fBtip\fR variable \fBhardwareflow\fR to \fBon\fR,
-so hardware flow control is used.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBie\fR\fR
-.ad
-.RS 6n
-\fB(str)\fR Input end-of-file marks. The default is a null string ("").
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnb\fR\fR
-.ad
-.RS 6n
-\fB(bool)\fR Initialize the \fBtip\fR variable \fBbeautify\fR to \fIoff\fR, so
-that unprintable characters will not be discarded when scripting.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnt\fR\fR
-.ad
-.RS 6n
-\fB(bool)\fR Initialize the \fBtip\fR variable \fBtandem\fR to \fIoff\fR, so
-that \fBXON/XOFF\fR flow control will not be used to throttle data from the
-remote host.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnv\fR\fR
-.ad
-.RS 6n
-\fB(bool)\fR Initialize the \fBtip\fR variable \fBverbose\fR to \fIoff\fR, so
-that verbose mode will be turned on.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBoe\fR\fR
-.ad
-.RS 6n
-\fB(str)\fR Output end-of-file string. The default is a null string ("").
-When \fBtip\fR is transferring a file, this string is sent at end-of-file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpa\fR\fR
-.ad
-.RS 6n
-\fB(str)\fR The type of parity to use when sending data to the host. This may
-be one of \fBeven\fR, \fBodd\fR, \fBnone\fR, \fBzero\fR (always set bit
-\fB8\fR to \fB0\fR), \fBone\fR (always set bit \fB8\fR to \fB1\fR). The
-default is \fBnone\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpn\fR\fR
-.ad
-.RS 6n
-\fB(str)\fR Telephone number(s) for this host. If the telephone number field
-contains an `\fB@\fR' sign, \fBtip\fR searches the \fB/etc/phones\fR file for a
-list of telephone numbers \(em see \fBphones\fR(4). A `\fB%\fR' sign in the
-telephone number indicates a 5-second delay for the Ventel Modem.
-.sp
-For Hayes-compatible modems, if the telephone number starts with an 'S', the
-telephone number string will be sent to the modem without the "\fBDT\fR", which
-allows reconfiguration of the modem's S-registers and other parameters; for
-example, to disable auto-answer: "\fBpn=S0=0DT5551234\fR"; or to also
-restrict the modem to return only the basic result codes:
-"\fBpn=S0=0X0DT5551234\fR".
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpr\fR\fR
-.ad
-.RS 6n
-\fB(str)\fR Character that indicates end-of-line on the remote host. The
-default value is \fB`\fR\en\fB\&'.\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBra\fR\fR
-.ad
-.RS 6n
-\fB(bool)\fR Initialize the \fBtip\fR variable \fBraise\fR to \fBon\fR, so that
-lower case letters are mapped to upper case before sending them to the remote
-host.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrc\fR\fR
-.ad
-.RS 6n
-\fB(str)\fR Character that toggles case-mapping mode. The default value is
-`\fB\e377\fR\&'.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBre\fR\fR
-.ad
-.RS 6n
-\fB(str)\fR The file in which to record session scripts. The default value is
-\fBtip.record\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrw\fR\fR
-.ad
-.RS 6n
-\fB(bool)\fR Initialize the \fBtip\fR variable \fBrawftp\fR to \fBon\fR, so
-that all characters will be sent as is during file transfers.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsc\fR\fR
-.ad
-.RS 6n
-\fB(bool)\fR Initialize the \fBtip\fR variable \fBscript\fR to \fBon\fR, so
-that everything transmitted by the remote host will be recorded.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBtb\fR\fR
-.ad
-.RS 6n
-\fB(bool)\fR Initialize the \fBtip\fR variable \fBtabexpand\fR to \fBon\fR, so
-that tabs will be expanded to spaces during file transfers.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBtc\fR\fR
-.ad
-.RS 6n
-\fB(str)\fR Indicates that the list of capabilities is continued in the named
-description. This is used primarily to share common capability information.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRUsing the Capability Continuation Feature
-.sp
-.LP
-Here is a short example showing the use of the capability continuation feature:
-
-.sp
-.in +2
-.nf
-UNIX-1200:\e
- :dv=/dev/cua0:el=^D^U^C^S^Q^O@:du:at=ventel:ie=#$%:oe=^D
-:br#1200:arpavax|ax:\e
- :pn=7654321%:tc=UNIX-1200
-.fi
-.in -2
-.sp
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/remote\fR\fR
-.ad
-.RS 15n
-remote host description file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/phones\fR\fR
-.ad
-.RS 15n
-remote host phone number database.
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBtip\fR(1), \fBphones\fR(4)
-.sp
-.LP
-\fISystem Administration Guide: IP Services\fR
diff --git a/usr/src/man/man4/resolv.conf.4 b/usr/src/man/man4/resolv.conf.4
deleted file mode 100644
index 855acd44e2..0000000000
--- a/usr/src/man/man4/resolv.conf.4
+++ /dev/null
@@ -1,257 +0,0 @@
-'\" te
-.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 1989 AT&T
-.\" Copyright (c) 1983 Regents of the University of California. All rights reserved. The Berkeley software License Agreement specifies the terms and conditions for redistribution.
-.TH RESOLV.CONF 4 "Dec 15, 2004"
-.SH NAME
-resolv.conf \- resolver configuration file
-.SH SYNOPSIS
-.LP
-.nf
-\fB/etc/resolv.conf\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBresolver\fR is a set of routines that provide access to the Internet
-Domain Name System. See \fBresolver\fR(3RESOLV). \fBresolv.conf\fR is a
-configuration file that contains the information that is read by the
-\fBresolver\fR routines the first time they are invoked by a process. The file
-is designed to be human readable and contains a list of keywords with values
-that provide various types of \fBresolver\fR information.
-.sp
-.LP
-The \fBresolv.conf\fR file contains the following configuration directives:
-.sp
-.ne 2
-.na
-\fB\fBnameserver\fR\fR
-.ad
-.RS 23n
-Specifies the IPv4 or IPv6 Internet address of a name server that the resolver
-is to query. Up to \fIMAXNS\fR name servers may be listed, one per keyword. See
-<\fBresolv.h\fR>. If there are multiple servers, the resolver library queries
-them in the order listed. If no name server entries are present, the resolver
-library queries the name server on the local machine. The resolver library
-follows the algorithm to try a name server until the query times out. It then
-tries the name servers that follow, until each query times out. It repeats all
-the name servers until a maximum number of retries are made.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdomain\fR\fR
-.ad
-.RS 23n
-Specifies the local domain name. Most queries for names within this domain can
-use short names relative to the local domain. If no domain entry is present,
-the domain is determined from \fBsysinfo\fR(2) or from \fBgethostname\fR(3C).
-(Everything after the first `.' is presumed to be the domain name.) If the host
-name does not contain a domain part, the root domain is assumed. You can use
-the \fBLOCALDOMAIN\fR environment variable to override the domain name.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsearch\fR\fR
-.ad
-.RS 23n
-The search list for host name lookup. The search list is normally determined
-from the local domain name. By default, it contains only the local domain name.
-You can change the default behavior by listing the desired domain search path
-following the search keyword, with spaces or tabs separating the names. Most
-\fBresolver\fR queries will be attempted using each component of the search
-path in turn until a match is found. This process may be slow and will generate
-a lot of network traffic if the servers for the listed domains are not local.
-Queries will time out if no server is available for one of the domains.
-.sp
-The search list is currently limited to six domains and a total of 256
-characters.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsortlist\fR\fIaddresslist\fR\fR
-.ad
-.RS 23n
-Allows addresses returned by the libresolv-internal \fBgethostbyname()\fR to be
-sorted. A \fBsortlist\fR is specified by IP address netmask pairs. The netmask
-is optional and defaults to the natural netmask of the net. The IP address and
-optional network pairs are separated by slashes. Up to 10 pairs may be
-specified. For example:
-.sp
-.in +2
-.nf
-sortlist 130.155.160.0/255.255.240.0 130.155.0.0
-.fi
-.in -2
-.sp
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBoptions\fR\fR
-.ad
-.RS 23n
-Allows certain internal resolver variables to be modified. The syntax is
-.sp
-.in +2
-.nf
-options option ...
-.fi
-.in -2
-.sp
-
-where option is one of the following:
-.sp
-.ne 2
-.na
-\fB\fBdebug\fR\fR
-.ad
-.RS 18n
-Sets \fBRES_DEBUG\fR in the \fB_res.options\fR field.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBndots:\fR\fIn\fR\fR
-.ad
-.RS 18n
-Sets a threshold floor for the number of dots which must appear in a name given
-to \fBres_query()\fR before an initial absolute (as-is) query is performed. See
-\fBresolver\fR(3RESOLV). The default value for \fIn\fR is 1, which means that
-if there are any dots in a name, the name is tried first as an absolute name
-before any search list elements are appended to it.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBtimeout:\fR\fIn\fR\fR
-.ad
-.br
-.na
-\fB\fBretrans:\fR\fIn\fR\fR
-.ad
-.RS 18n
-Sets the amount of time the resolver will wait for a response from a remote
-name server before retrying the query by means of a different name server.
-Measured in seconds, the default is \fBRES_TIMEOUT\fR. See <\fBresolv.h\fR>.
-The \fBtimeout\fR and \fBretrans\fR values are the starting point for an
-exponential back off procedure where the \fBtimeout\fR is doubled for every
-retransmit attempt.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBattempts:\fR\fIn\fR\fR
-.ad
-.br
-.na
-\fB\fBretry:\fR\fIn\fR\fR
-.ad
-.RS 18n
-Sets the number of times the resolver will send a query to its name servers
-before giving up and returning an error to the calling application. The default
-is \fBRES_DFLRETRY\fR. See <\fBresolv.h\fR>.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrotate\fR\fR
-.ad
-.RS 18n
-Sets \fBRES_ROTATE\fR in \fB_res.options\fR. The name servers are queried
-round-robin from among those listed. The query load is spread among all listed
-servers, rather than having all clients try the first listed server first every
-time.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBno-check-names\fR\fR
-.ad
-.RS 18n
-Sets \fBRES_NOCHECKNAME\fR in \fB_res.options\fR. This disables the modern BIND
-checking of incoming host names and mail names for invalid characters such as
-underscore (\fB_\fR), non-ASCII, or control characters.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBinet6\fR\fR
-.ad
-.RS 18n
-Sets \fBRES_USE_INET6\fR in \fB_res.options\fR. In the Solaris BIND port, this
-has no effect on \fBgethostbyname\fR(3NSL). To retrieve IPv6 addresses or IPv4
-addresses, use \fBgetaddrinfo\fR(3SOCKET) instead of setting \fBinet6\fR.
-.RE
-
-.RE
-
-.sp
-.LP
-The \fBdomain\fR and \fBsearch\fR keywords are mutually exclusive. If more than
-one instance of these keywords is present, the last instance takes precedence.
-.sp
-.LP
-You can override the \fBsearch\fR keyword of the system \fBresolv.conf\fR file
-on a per-process basis by setting the environment variable \fBLOCALDOMAIN\fR to
-a space-separated list of search domains.
-.sp
-.LP
-You can amend the \fBoptions\fR keyword of the system \fBresolv.conf\fR file on
-a per-process basis by setting the environment variable \fBRES_OPTIONS\fR to a
-space-separated list of resolver options.
-.sp
-.LP
-The keyword and value must appear on a single line. Start the line with the
-keyword, for example, \fBnameserver\fR, followed by the value, separated by
-white space.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/resolv.conf\fR\fR
-.ad
-.RS 20n
-
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Standard BIND 8.3.3
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBdomainname\fR(1M), \fBsysinfo\fR(2), \fBgethostbyname\fR(3NSL),
-\fBgetnameinfo\fR(3SOCKET), \fBgetipnodebyname\fR(3SOCKET),
-\fBgethostname\fR(3C), \fBresolver\fR(3RESOLV), \fBattributes\fR(5)
-.sp
-.LP
-Vixie, Paul, Dunlap, Keven J., Karels, Michael J. \fIName Server Operations
-Guide for BIND\fR. Internet Software Consortium, 1996.
diff --git a/usr/src/man/man4/rmtab.4 b/usr/src/man/man4/rmtab.4
deleted file mode 100644
index cd8fb2ac50..0000000000
--- a/usr/src/man/man4/rmtab.4
+++ /dev/null
@@ -1,57 +0,0 @@
-'\" te
-.\" Copyright (C) 1999, Sun Microsystems,
-.\" Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH RMTAB 4 "Nov 15, 1990"
-.SH NAME
-rmtab \- remote mounted file system table
-.SH SYNOPSIS
-.LP
-.nf
-\fB/etc/rmtab\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBrmtab\fR contains a table of filesystems that are remotely mounted by
-\fBNFS\fR clients. This file is maintained by \fBmountd\fR(1M), the mount
-daemon. The data in this file should be obtained only from \fBmountd\fR(1M)
-using the \fBMOUNTPROC_DUMP\fR remote procedure call.
-.sp
-.LP
-The file contains a line of information for each remotely mounted filesystem.
-There are a number of lines of the form:
-.sp
-.in +2
-.nf
-\fBhostname\fR\fB:\fR\fIfsname\fR
-.fi
-.in -2
-
-.sp
-.LP
-The mount daemon adds an entry for any client that successfully executes a
-mount request and deletes the appropriate entries for an unmount request.
-.sp
-.LP
-Lines beginning with a hash (' \fB#\fR') are commented out. These lines are
-removed from the file by \fBmountd\fR(1M) when it first starts up. Stale
-entries may accumulate for clients that crash without sending an unmount
-request.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/rmtab\fR\fR
-.ad
-.RS 14n
-
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBmountd\fR(1M), \fBshowmount\fR(1M)
diff --git a/usr/src/man/man4/rpc.4 b/usr/src/man/man4/rpc.4
deleted file mode 100644
index 3f626e4cfb..0000000000
--- a/usr/src/man/man4/rpc.4
+++ /dev/null
@@ -1,77 +0,0 @@
-'\" te
-.\" Copyright (c) 1991, Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH RPC 4 "Feb 25, 2017"
-.SH NAME
-rpc \- rpc program number data base
-.SH SYNOPSIS
-.LP
-.nf
-\fB/etc/rpc\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBrpc\fR file is a local source containing user readable names that can be
-used in place of \fBRPC\fR program numbers. The \fBrpc\fR file can be used in
-conjunction with or instead of other rpc sources, including the \fBNIS\fR maps
-``rpc.byname'' and ``rpc.bynumber''.
-.sp
-.LP
-The rpc file has one line for each \fBRPC\fR program name. The line has the
-following format:
-.sp
-.in +2
-.nf
-\fIname-of-the-RPC-program\fR \fIRPC-program-number\fR \fIaliases\fR
-.fi
-.in -2
-
-.sp
-.LP
-Items are separated by any number of blanks and/or tab characters. A
-``\fB#\fR'' indicates the beginning of a comment; characters up to the end of
-the line are not interpreted by routines which search the file.
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRRPC Database
-.sp
-.LP
-Below is an example of an RPC database:
-
-.sp
-.in +2
-.nf
-#
-# rpc
-#
-rpcbind 100000 portmap sunrpc portmapper
-rusersd 100002 rusers
-nfs 100003 nfsprog
-mountd 100005 mount showmount
-walld 100008 rwall shutdown
-sprayd 100012 spray
-llockmgr 100020
-nlockmgr 100021
-status 100024
-bootparam 100026
-keyserv 100029 keyserver
-.fi
-.in -2
-.sp
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/etc/nsswitch.conf\fR\fR
-.ad
-.RS 22n
-
-.RE
-
-.SH SEE ALSO
-.LP
-\fBnsswitch.conf\fR(4)
diff --git a/usr/src/man/man4/rt_dptbl.4 b/usr/src/man/man4/rt_dptbl.4
deleted file mode 100644
index bace4ec80b..0000000000
--- a/usr/src/man/man4/rt_dptbl.4
+++ /dev/null
@@ -1,345 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T, Copyright (c) 2001, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH RT_DPTBL 4 "Oct 15, 2002"
-.SH NAME
-rt_dptbl \- real-time dispatcher parameter table
-.SH DESCRIPTION
-The process scheduler (or dispatcher) is the portion of the kernel that
-controls allocation of the \fBCPU\fR to processes. The scheduler supports the
-notion of scheduling classes where each class defines a scheduling policy, used
-to schedule processes within that class. Associated with each scheduling class
-is a set of priority queues on which ready to run processes are linked. These
-priority queues are mapped by the system configuration into a set of global
-scheduling priorities which are available to processes within the class. The
-dispatcher always selects for execution the process with the highest global
-scheduling priority in the system. The priority queues associated with a given
-class are viewed by that class as a contiguous set of priority levels numbered
-from 0 (lowest priority) to \fIn\fR (highest priority\(ema configuration
-dependent value). The set of global scheduling priorities that the queues for a
-given class are mapped into might not start at zero and might not be
-contiguous, depending on the configuration.
-.sp
-.LP
-The real-time class maintains an in-core table, with an entry for each priority
-level, giving the properties of that level. This table is called the real-time
-dispatcher parameter table (\fBrt_dptbl\fR). The \fBrt_dptbl\fR consists of an
-array (\fBconfig_rt_dptbl[]\fR) of parameter structures (\fBstruct
-rtdpent_t\fR), one for each of the \fIn\fR priority levels. The structure are
-accessed via a pointer, (\fBrt_dptbl\fR), to the array. The properties of a
-given priority level \fIi\fR are specified by the \fIi\fRth parameter structure
-in this array ( \fBrt_dptbl[\fR\fIi\fR\fB]\fR ).
-.sp
-.LP
-A parameter structure consists of the following members. These are also
-described in the \fB/usr/include/sys/rt.h\fR header file.
-.sp
-.ne 2
-.na
-\fB\fBrt_globpri\fR\fR
-.ad
-.RS 14n
-The global scheduling priority associated with this priority level. The
-\fBrt_globpri\fR values cannot be changed with \fBdispadmin\fR(1M).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrt_quantum\fR\fR
-.ad
-.RS 14n
-The length of the time quantum allocated to processes at this level in ticks
-(\fBhz\fR). The time quantum value is only a default or starting value for
-processes at a particular level as the time quantum of a real-time process can
-be changed by the user with the \fBpriocntl\fR command or the \fBpriocntl\fR
-system call.
-.sp
-In the default high resolution clock mode (\fBhires_tick\fR set to \fB1\fR),
-the value of \fBhz\fR is set to \fB1000\fR. If this value is overridden to
-\fB0\fR then \fBhz\fR will instead be \fB100\fR; the number of ticks per
-quantum must then be decreased to maintain the same length of quantum in
-absolute time.
-.RE
-
-.sp
-.LP
-An administrator can affect the behavior of the real-time portion of the
-scheduler by reconfiguring the \fBrt_dptbl\fR. There are two methods available
-for doing this: reconfigure with a loadable module at boot-time or by using
-\fBdispadmin\fR(1M) at run-time.
-.SS "rt_dptbl Loadable Module"
-The \fBrt_dptbl\fR can be reconfigured with a loadable module which contains a
-new real time dispatch table. The module containing the dispatch table is
-separate from the RT loadable module which contains the rest of the real time
-software. This is the only method that can be used to change the number of real
-time priority levels or the set of global scheduling priorities used by the
-real time class. The relevant procedure and source code is described in the
-Examples section.
-.SS "dispadmin Configuration File"
-The \fBrt_quantum\fR values in the \fBrt_dptbl\fR can be examined and modified
-on a running system using the \fBdispadmin\fR(1M) command. Invoking
-\fBdispadmin\fR for the real-time class allows the administrator to retrieve
-the current \fBrt_dptbl\fR configuration from the kernel's in-core table, or
-overwrite the in-core table with values from a configuration file. The
-configuration file used for input to \fBdispadmin\fR must conform to the
-specific format described below.
-.sp
-.LP
-Blank lines are ignored and any part of a line to the right of a \fI#\fR symbol
-is treated as a comment. The first non-blank, non-comment line must indicate
-the resolution to be used for interpreting the time quantum values. The
-resolution is specified as
-.sp
-.in +2
-.nf
-RES=\fIres\fR
-.fi
-.in -2
-
-.sp
-.LP
-where \fIres\fR is a positive integer between 1 and 1,000,000,000 inclusive and
-the resolution used is the reciprocal of \fIres\fR in seconds. (For example,
-\fBRES=1000\fR specifies millisecond resolution.) Although very fine
-(nanosecond) resolution may be specified, the time quantum lengths are rounded
-up to the next integral multiple of the system clock's resolution.
-.sp
-.LP
-The remaining lines in the file are used to specify the \fBrt_quantum\fR values
-for each of the real-time priority levels. The first line specifies the quantum
-for real-time level 0, the second line specifies the quantum for real-time
-level 1. There must be exactly one line for each configured real-time priority
-level. Each \fBrt_quantum\fR entry must be either a positive integer specifying
-the desired time quantum (in the resolution given by \fIres\fR), or the value
--2 indicating an infinite time quantum for that level.
-.SH EXAMPLES
-\fBExample 1 \fRA Sample \fBdispadmin\fR Configuration File
-.sp
-.LP
-The following excerpt from a \fBdispadmin\fR configuration file illustrates the
-format. Note that for each line specifying a time quantum there is a comment
-indicating the corresponding priority level. These level numbers indicate
-priority within the real-time class, and the mapping between these real-time
-priorities and the corresponding global scheduling priorities is determined by
-the configuration specified in the \fBRT_DPTBL\fR loadable module. The level
-numbers are strictly for the convenience of the administrator reading the file
-and, as with any comment, they are ignored by \fBdispadmin\fR on input.
-\fBdispadmin\fR assumes that the lines in the file are ordered by consecutive,
-increasing priority level (from 0 to the maximum configured real-time
-priority). The level numbers in the comments should normally agree with this
-ordering; if for some reason they don't, however, \fBdispadmin\fR is
-unaffected.
-
-.sp
-.in +2
-.nf
-# Real-Time Dispatcher Configuration File
-RES=1000
-
-# TIME QUANTUM PRIORITY
-# (rt_quantum)LEVEL
-100# 0
-100# 1
-100# 2
-100# 3
-100# 4
-100# 5
-90 # 6
-90 # 7
-\&.. .
-\&.. .
-\&.. .
-10# 58
-10# 59
-.fi
-.in -2
-
-.LP
-\fBExample 2 \fRReplacing The rt_dptbl Loadable Module
-.sp
-.LP
-In order to change the size of the real time dispatch table, the loadable
-module which contains the dispatch table information will have to be built. It
-is recommended that you save the existing module before using the following
-procedure.
-
-.RS +4
-.TP
-1.
-Place the dispatch table code shown below in a file called \fBrt_dptbl.c\fR
-An example of an \fBrt_dptbl.c\fR file follows.
-.RE
-.RS +4
-.TP
-2.
-Compile the code using the given compilation and link lines supplied.
-.sp
-.in +2
-.nf
-cc -c -0 -D_KERNEL rt_dptbl.c
-ld -r -o RT_DPTBL rt_dptbl.o
-.fi
-.in -2
-.sp
-
-.RE
-.RS +4
-.TP
-3.
-Copy the current dispatch table in \fB/usr/kernel/sched\fR to
-\fBRT_DPTBL.bak\fR.
-.RE
-.RS +4
-.TP
-4.
-Replace the current \fBRT_DPTBL\fR in \fB/usr/kernel/sched\fR.
-.RE
-.RS +4
-.TP
-5.
-You will have to make changes in the \fB/etc/system\fR file to reflect the
-changes to the sizes of the tables. See \fBsystem\fR(4). The \fBrt_maxpri\fR
-variable may need changing. The syntax for setting this is:
-.sp
-.in +2
-.nf
-set RT:rt_maxpri=(class-specific value for maximum \e
- real-time priority)
-.fi
-.in -2
-
-.RE
-.RS +4
-.TP
-6.
-Reboot the system to use the new dispatch table.
-.RE
-.sp
-.LP
-Great care should be used in replacing the dispatch table using this method. If
-you don't get it right, the system may not behave properly.
-
-.sp
-.LP
-The following is an example of a \fBrt_dptbl.c\fR file used for building the
-new \fBrt_dptbl\fR.
-
-.sp
-.in +2
-.nf
-/* BEGIN rt_dptbl.c */
-#include <sys/proc.h>
-#include <sys/priocntl.h>
-#include <sys/class.h>
-#include <sys/disp.h>
-#include <sys/rt.h>
-#include <sys/rtpriocntl.h>
-/*
- * This is the loadable module wrapper.
- */
-#include <sys/modctl.h>
-extern struct mod_ops mod_miscops;
-/*
- * Module linkage information for the kernel.
- */
-static struct modlmisc modlmisc = {
- &mod_miscops, "realtime dispatch table"
-};
-static struct modlinkage modlinkage = {
- MODREV_1, &modlmisc, 0
-};
-_init()
-{
- return (mod_install(&modlinkage));
-}
-_info (struct modinfo *modinfop)
-{
- return (mod_info(&modlinkage, modinfop));
-}
-rtdpent_t config_rt_dptbl[] = {
-
-/* prilevel Time quantum */
-
-100,100,
-101,100,
-102,100,
-103,100,
-104,100,
-105,100,
-106,100,
-107,100,
-108,100,
-109,100,
-110,80,
-111,80,
-112,80,
-113,80,
-114,80,
-115,80,
-116,80,
-117,80,
-118,80,
-119,80,
-120,60,
-121,60,
-122,60,
-123,60,
-124,60,
-125,60,
-126,60,
-127,60,
-128,60,
-129,60,
-130,40,
-131,40,
-132,40,
-133,40,
-134,40,
-135,40,
-136,40,
-137,40,
-138,40,
-139,40,
-140,20,
-141,20,
-142,20,
-143,20,
-144,20,
-145,20,
-146,20,
-147,20,
-148,20,
-149,20,
-150,10,
-151,10,
-152,10,
-153,10,
-154,10,
-155,10,
-156,10,
-157,10,
-158,10,
-159,10,
-
-};
-/*
- * Return the address of config_rt_dptbl
- */ rtdpent_t *
- rt_getdptbl()
-{
- return (config_rt_dptbl);
-}
-.fi
-.in -2
-
-.SH SEE ALSO
-\fBpriocntl\fR(1), \fBdispadmin\fR(1M), \fBpriocntl\fR(2), \fBsystem\fR(4)
-.sp
-.LP
-\fISystem Administration Guide: Basic Administration\fR
-.sp
-.LP
- \fIProgramming Interfaces Guide\fR
diff --git a/usr/src/man/man4/sasl_appname.conf.4 b/usr/src/man/man4/sasl_appname.conf.4
deleted file mode 100644
index fb2a643dad..0000000000
--- a/usr/src/man/man4/sasl_appname.conf.4
+++ /dev/null
@@ -1,170 +0,0 @@
-'\" te
-.\" Copyright (C) 1998-2003, Carnegie Mellon Univeristy. All Rights Reserved.
-.\" Portions Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SASL_APPNAME.CONF 4 "Oct 14, 2003"
-.SH NAME
-sasl_appname.conf \- SASL options and configuration file
-.SH SYNOPSIS
-.LP
-.nf
-/etc/sasl/\fIappname\fR\fB\&.conf\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fB/etc/sasl/\fIappname\fR.conf\fR file is a user-supplied configuration
-file that supports user set options for server applications.
-.sp
-.LP
-You can modify the behavior of \fBlibsasl\fR and its plug-ins for server
-applications by specifying option values in \fB/etc/sasl/\fIappname\fR.conf\fR
-file, where \fIappname\fR is the application defined name of the application.
-For \fBsendmail\fR, the file would be \fB/etc/sasl/Sendmail.conf\fR. See your
-application documentation for information on the application name.
-.sp
-.LP
-Options that you set in a \fB\fIappname\fR.conf\fR file do not override SASL
-options specified by the application itself.
-.sp
-.LP
-The format for each option setting is:
-.sp
-.in +2
-.nf
-option_name:value.
-.fi
-.in -2
-
-.sp
-.LP
-You can comment lines in the file by using a leading #.
-.sp
-.LP
-The SASL library supports the following options for server applications:
-.sp
-.ne 2
-.na
-\fB\fBauto_transition\fR\fR
-.ad
-.RS 25n
-When set to \fByes\fR, plain users and login plug-ins are automatically
-transitioned to other mechanisms when they do a successful plaintext
-authentication. The default value for \fBauto_transition\fR is \fBno\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBauxprop_plugin\fR\fR
-.ad
-.RS 25n
-A space-separated list of names of auxiliary property plug-ins to use. By
-default, SASL will use or query all available auxiliary property plug-ins.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcanon_user_plugin\fR\fR
-.ad
-.RS 25n
-The name of the canonical user plug-in to use. By default, the value of
-\fBcanon_user_plugin\fR is \fBINTERNAL\fR, to indicated the use of built-in
-plug-ins..
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBlog_level\fR\fR
-.ad
-.RS 25n
-An integer value for the desired level of logging for a server, as defined in
-<\fBsasl.h\fR>. This sets the \fBlog_level\fR in the \fBsasl_server_params_t
-struct\fR in \fB/usr/include/sasl/saslplug.h\fR. The default value for
-\fBlog_level\fR is \fB1\fR to indicate \fBSASL_LOG_ERR\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmech_list\fR\fR
-.ad
-.RS 25n
-Whitespace separated list of SASL mechanisms to allow, for example,
-\fBDIGEST-MD5 GSSAPI\fR. The \fBmech_list\fR option is used to restrict the
-mechanisms to a subset of the installed plug-ins. By default, SASL will use all
-available mechanisms.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpw_check\fR\fR
-.ad
-.RS 25n
-Whitespace separated list of mechanisms used to verify passwords that are used
-by \fBsasl_checkpass\fR(3SASL). The default value for \fBpw_check\fR is
-\fBauxprop\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBreauth_timeout\fR\fR
-.ad
-.RS 25n
-This SASL option is used by the server DIGEST-MD5 plug-in. The value of
-\fBreauth_timeout\fR is the length in time (in minutes) that authentication
-information will be cached for a fast reauthorization. A value of 0 will
-disable reauthorization. The default value of \fBreauth_timeout\fR is 1440 (24
-hours).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBserver_load_mech_list\fR\fR
-.ad
-.RS 25n
-A space separated list of mechanisms to load. If in the process of loading
-server plug-ns no desired mechanisms are included in the plug-in, the plug-in
-will be unloaded. By default, SASL loads all server plug-ins.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBuser_authid\fR\fR
-.ad
-.RS 25n
-If the value of \fBuser_authid\fR is \fByes\fR, then the GSSAPI will acquire
-the client credentials rather than use the default credentials when it creates
-the GSS client security context. The default value of \fBuser_authid\fR is
-\fBno\fR, whereby SASL uses the default client Kerberos identity.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBattributes\fR(5)
diff --git a/usr/src/man/man4/sbus.4 b/usr/src/man/man4/sbus.4
deleted file mode 100644
index 98cd72a8f9..0000000000
--- a/usr/src/man/man4/sbus.4
+++ /dev/null
@@ -1,185 +0,0 @@
-'\" te
-.\" Copyright (c) 1999, Sun Microsystems, Inc.
-.\" All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SBUS 4 "Dec 31, 1996"
-.SH NAME
-sbus \- configuration files for SBus device drivers
-.SH DESCRIPTION
-.LP
-The \fBSBus\fR is a geographically addressed peripheral bus present on many
-\fBSPARC\fR hardware platforms. \fBSBus\fR devices are \fIself-identifying\fR
-\(em that is to say the \fBSBus\fR card itself provides information to the
-system so that it can identify the device driver that needs to be used. The
-device usually provides additional information to the system in the form of
-name-value pairs that can be retrieved using the \fBDDI\fR property interfaces.
-See \fBddi_prop_op\fR(9F) for details.
-.sp
-.LP
-The information is usually derived from a small Forth program stored in the
-\fBFCode\fR \fBPROM\fR on the card, so driver configuration files should be
-completely unnecessary for these devices. However, on some occasions, drivers
-for \fBSBus\fR devices may need to use driver configuration files to augment
-the information provided by the \fBSBus\fR card. See \fBdriver.conf\fR(4) for
-further details.
-.sp
-.LP
-When they are needed, configuration files for \fBSBus\fR device drivers should
-identify the parent bus driver implicitly using the \fIclass\fR keyword. This
-removes the dependency on the particular bus driver involved since this may be
-named differently on different platforms.
-.sp
-.LP
-All bus drivers of class \fBsbus\fR recognise the following properties:
-.sp
-.ne 2
-.na
-\fB\fBreg\fR\fR
-.ad
-.RS 14n
-An arbitrary length array where each element of the array consists of a 3-tuple
-of integers. Each array element describes a logically contiguous mappable
-resource on the \fBSBus.\fR
-.sp
-The first integer of each tuple specifies the slot number the card is plugged
-into. The second integer of each 3-tuple specifies the offset in the slot
-address space identified by the first element. The third integer of each
-3-tuple specifies the size in bytes of the mappable resource.
-.sp
-The driver can refer to the elements of this array by index, and construct
-kernel mappings to these addresses using \fBddi_map_regs\fR(9F). The index into
-the array is passed as the \fIrnumber\fR argument of \fBddi_map_regs()\fR.
-.sp
-You can use the \fBddi_get*\fR and \fBddi_put*\fR family of functions to access
-register space from a high-level interrupt context.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBinterrupts\fR\fR
-.ad
-.RS 14n
-An arbitrary length array where each element of the array consists of a single
-integer. Each array element describes a possible \fBSBus\fR interrupt level
-that the device might generate.
-.sp
-The driver can refer to the elements of this array by index, and register
-interrupt handlers with the system using \fBddi_add_intr\fR(9F). The index into
-the array is passed as the \fIinumber\fR argument of \fBddi_add_intr()\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBregisters\fR\fR
-.ad
-.RS 14n
-An arbitrary length array where each element of the array consists of a 3-tuple
-of integers. Each array element describes a logically contiguous mappable
-resource on the \fBSBus.\fR
-.sp
-The first integer of each tuple should be set to \fB\(mi1\fR, specifying that
-any SBus slot may be matched. The second integer of each 3-tuple specifies the
-offset in the slot address space identified by the first element. The third
-integer of each 3-tuple specifies the size in bytes of the mappable resource.
-.sp
-The \fBregisters\fR property can only be used to augment an incompletely
-specified \fBreg\fR property with information from a driver configuration file.
-It may only be specified in a driver configuration file.
-.RE
-
-.sp
-.LP
-All \fBSBus\fR devices must provide \fBreg\fR properties to the system. The
-first two integer elements of the \fBreg\fR property are used to construct the
-address part of the device name under \fB/devices\fR.
-.sp
-.LP
-Only devices that generate interrupts need to provide \fBinterrupts\fR
-properties.
-.sp
-.LP
-Occasionally, it may be necessary to override or augment the configuration
-information supplied by the \fBSBus\fR device. This can be achieved by writing
-a driver configuration file that describes a prototype device information
-(devinfo) node specification, containing the additional properties required.
-.sp
-.LP
-For the system to merge the information, certain conditions must be met. First,
-the \fBname\fR property must be the same. Second, either the first two integers
-(slot number and offset) of the two \fBreg\fR properties must be the same, or
-the second integer (offset) of the \fBreg\fR and \fBregisters\fR properties
-must be the same.
-.sp
-.LP
-In the event that the \fBSBus\fR card has no \fBreg\fR property at all, the
-self-identifying information cannot be used, so all the details of the card
-must be specified in a driver configuration file.
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRA sample configuration file.
-.sp
-.LP
-Here is a configuration file for an \fBSBus\fR card called \fBSUNW,netboard\fR.
-The card already has a simple \fBFCode\fR \fBPROM\fR that creates \fBname\fR
-and \fBreg\fR properties, and will have a complete set of properties for normal
-use once the driver and firmware is complete.
-
-.sp
-.LP
-In this example, we want to augment the properties given to us by the firmware.
-We use the same \fBname\fR property, and use the \fBregisters\fR property to
-match the firmware \fBreg\fR property. That way we don't have to worry about
-which slot the card is really plugged into.
-
-.sp
-.LP
-We want to add an \fBinterrupts\fR property while we are developing the
-firmware and driver so that we can start to experiment with interrupts. The
-device can generate interrupts at \fBSBus\fR level 3. Additionally, we want to
-set a \fBdebug-level\fR property to 4.
-
-.sp
-.in +2
-.nf
-#
-# Copyright (c) 1992, by Sun Microsystems, Inc.
-#ident "@(#)SUNW,netboard.conf 1.4 92/03/10 SMI"
-#
-name="SUNW,netboard" class="sbus"
- registers=-1,0x40000,64,-1,0x80000,1024
- interrupts=3 debug-level=4;
-.fi
-.in -2
-.sp
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture SPARC
-.TE
-
-.SH SEE ALSO
-.LP
-\fBdriver.conf\fR(4), \fBattributes\fR(5), \fBddi_add_intr\fR(9F),
-\fBddi_map_regs\fR(9F), \fBddi_prop_op\fR(9F)
-.sp
-.LP
-\fIWriting Device Drivers\fR
-.SH WARNINGS
-.LP
-The wildcarding mechanism of the \fBregisters\fR property matches every
-instance of the particular device attached to the system. This may not always
-be what is wanted.
diff --git a/usr/src/man/man4/scsi.4 b/usr/src/man/man4/scsi.4
deleted file mode 100644
index 76346a4d0a..0000000000
--- a/usr/src/man/man4/scsi.4
+++ /dev/null
@@ -1,344 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SCSI 4 "May 30, 2008"
-.SH NAME
-scsi \- configuration files for SCSI target drivers
-.SH DESCRIPTION
-The architecture of the illumos \fBSCSI\fR subsystem distinguishes two types of
-device drivers: \fBSCSI\fR target drivers, and \fBSCSI\fR host adapter drivers.
-Target drivers like \fBsd\fR(7D) and \fBst\fR(7D) manage the device on the
-other end of the \fBSCSI\fR bus. Host adapter drivers manage the \fBSCSI\fR bus
-on behalf of all the devices that share it.
-.sp
-.LP
-Drivers for host adapters provide a common set of interfaces for target
-drivers. These interfaces comprise the Sun Common \fBSCSI\fR Architecture (
-\fBSCSA)\fR which are documented as part of the illumos DDI/DKI. See
-\fBscsi_ifgetcap\fR(9F), \fBscsi_init_pkt\fR(9F), and \fBscsi_transport\fR(9F)
-for further details of these, and associated routines.
-.sp
-.LP
-Depending on the interconnect (transport), SCSI target devices are either
-self-identifying or rely on \fBdriver.conf\fR(4) entries to be recognized by
-the system. For self-identifying target devices the driver binding is chosen
-based on the IEEE-1275 like 'compatible' forms of the target devices. Currently
-the Fibre Channel interconnects, \fBfcp\fR(7D), \fBifp\fR(7D),
-\fBscsi_vhci\fR(7D), \fBsf\fR(7D), and the SATA framework drivers (see
-\fBsata\fR(7D)) are self-identifying. You must specify other possible
-interconnects target devices by using the target driver \fBdriver.conf\fR(4)
-configuration files.
-.SS "Self-Identifying"
-Host adapter drivers of class scsi-self-identifying that dynamically create
-self-identifying target device children establish a \fBcompatible\fR property
-on each child. The compatible property is an ordered array of strings, each
-string is a compatible \fBform\fR. High precedence forms are defined first. For
-a particular device, the highest precedence form that has an established driver
-alias selects the driver for the device. Driver associations to compatible
-forms, called aliases, are administered by way of \fBadd_drv\fR(1M),
-\fBupdate_drv\fR(1M), and \fBrem_drv\fR(1M) utilities.
-.sp
-.LP
-The forms for self-identifying SCSI target devices are derived from the SCSI
-target device's INQUIRY data. A diverse set of forms is defined, allowing for
-flexibility in binding.
-.sp
-.LP
-From the SCSI INQUIRY data, three types of information are extracted:
-scsi_dtype, flag bits, and SCSI_ASCII vendor product revision.
-.sp
-.LP
-The scsi_dtype is the first component of most forms. It is represented as two
-hex digits. For nodes that represent embedded secondary functions, such as an
-embedded enclosure service or media changer, additional forms are generated
-that contain the dtype of the secondary function followed by the dtype of the
-device in which the secondary function is embedded.
-.sp
-.LP
-For forms that use flag bits, all applicable flags are concatenated (in
-alphabetical order) into a single flags string. Removable media is represented
-by a flag. For forms that use the SCSI_ASCII INQUIRY vendor, product, and
-revision fields, a one-way conversion algorithm translates SCSI_ASCII to a IEEE
-1275 compatible string.
-.sp
-.LP
-It is possible that a device might change the INQUIRY data it returns over time
-as a result of a device initialization sequence or in response to out-of-band
-management. A device node's compatible property is based on the INQUIRY data
-when the device node was created.
-.sp
-.LP
-The following forms, in high to low precedence order, are defined for SCSI
-target device nodes.
-.sp
-.in +2
-.nf
-scsiclass,DDEEFFF.vVVVVVVVV.pPPPPPPPPPPPPPPPP.rRRRR (1 *1&2)
-scsiclass,DDEE.vVVVVVVVV.pPPPPPPPPPPPPPPPP.rRRRR (2 *1)
-scsiclass,DDFFF.vVVVVVVVV.pPPPPPPPPPPPPPPPP.rRRRR (3 *2)
-scsiclass,DD.vVVVVVVVV.pPPPPPPPPPPPPPPPP.rRRRR (4)
-scsiclass,DDEEFFF.vVVVVVVVV.pPPPPPPPPPPPPPPPP (5 *1&2)
-scsiclass,DDEE.vVVVVVVVV.pPPPPPPPPPPPPPPPP (6 *1)
-scsiclass,DDFFF.vVVVVVVVV.pPPPPPPPPPPPPPPPP (7 *2)
-scsiclass,DD.vVVVVVVVV.pPPPPPPPPPPPPPPPP (8)
-scsiclass,DDEEFFF (9 *1&2)
-scsiclass,DDEE (10 *1)
-scsiclass,DDFFF (11 *2)
-scsiclass,DD (12)
-scsiclass (13)
- *1 only produced on a secondary function node
- *2 only produced on a node with flags
-.fi
-.in -2
-
-.sp
-.LP
-where:
-.sp
-.ne 2
-.na
-\fB\fBv\fR\fR
-.ad
-.RS 20n
-Is the letter \fBv\fR. Denotes the beginning of \fBVVVVVVVV\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBVVVVVVVV\fR\fR
-.ad
-.RS 20n
-Translated scsi_vendor: SCSI standard INQUIRY data "Vendor identification"
-SCSI_ASCII field (bytes 8-15).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBp\fR\fR
-.ad
-.RS 20n
-Is the letter \fBp\fR. Denotes the beginning of \fBPPPPPPPPPPPPPPPP\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPPPPPPPPPPPPPPPP\fR\fR
-.ad
-.RS 20n
-Translated scsi_product: SCSI standard INQUIRY data "Product identification"
-SCSI_ASCII field (bytes 16-31).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBr\fR\fR
-.ad
-.RS 20n
-Is the letter \fBr\fR. Denotes the beginning of \fBRRRR\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBRRRR\fR\fR
-.ad
-.RS 20n
-Translated scsi_revision: SCSI standard INQUIRY data "Product revision level"
-SCSI_ASCII field (bytes 32-35).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBDD\fR\fR
-.ad
-.RS 20n
-Is a two digit ASCII hexadecimal number. The value of the two digits is based
-one the SCSI "Peripheral device type" command set associated with the node. On
-a primary node this is the scsi_dtype of the primary command set; on a
-secondary node this is the \fBscsi_dtype\fR associated with the embedded
-function command set.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEE\fR\fR
-.ad
-.RS 20n
-Same encoding used for \fBDD\fR. This form is only generated on secondary
-function nodes. The \fBDD\fR function is embedded in an \fBEE\fR device.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBFFF\fR\fR
-.ad
-.RS 20n
-Concatenation, in alphabetical order, of the flag characters below. The
-following flag characters are defined:
-.sp
-.ne 2
-.na
-\fBR\fR
-.ad
-.RS 5n
-Removable media: Used when \fBscsi_rmb\fR is set
-.RE
-
-Forms using \fBFFF\fR are only be generated if there are applicable flag
-characters.
-.RE
-
-.sp
-.LP
-illumos might create additional \fBcompatible\fR forms not described. These
-forms are for illumos internal use only. Any additional use of these forms is
-discouraged. Future releases of illumos might not produce these forms.
-.SS "driver.conf"
-Configuration files for \fBSCSI\fR target drivers should identify the host
-adapter driver implicitly using the \fIclass\fR keyword to remove any
-dependency on the particular host adapter involved.
-.sp
-.LP
-All host adapter drivers of class \fBscsi\fR recognize the following
-properties:
-.sp
-.ne 2
-.na
-\fB\fBtarget\fR\fR
-.ad
-.RS 10n
-Integer-valued \fBSCSI\fR target identifier that this driver claims.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBlun\fR\fR
-.ad
-.RS 10n
-Integer-valued \fBSCSI\fR logical unit number ( \fBLUN)\fR that this driver
-claims.
-.RE
-
-.sp
-.LP
-All \fBSCSI\fR target driver configuration file device definitions except stub
-device definitions for discovery of \fBdevid\fR must provide target and
-\fBlun\fR properties. These properties are used to construct the address part
-of the device name under \fB/devices\fR. The stub device definitions for
-discovery of \fBdevid\fR must be able to specify or imply the host adapter
-drivers that might have children that bind to the target driver. So all SCSI
-target driver configuration file stub device definitions must be defined by
-property class or parent.
-.sp
-.LP
-The \fBSCSI\fR target driver configuration files shipped with illumos have
-entries for \fBLUN\fR \fB0\fR only. For devices that support other \fBLUNs,\fR
-such as some \fBCD\fR changers, the system administrator can edit the driver
-configuration file to add entries for other \fBLUNs.\fR
-.SH EXAMPLES
-\fBExample 1 \fRAn Example Configuration File for a SCSI Target Driver
-.sp
-.LP
-The following is an example configuration file for a SCSI target driver called
-\fBtoaster.conf\fR.
-
-.sp
-.in +2
-.nf
-#
-# Copyright (c) 1992, by Sun Microsystems, Inc.
-#
-#ident "@(#)toaster.conf 1.2 92/05/12 SMI"
-name="toaster" class="scsi" target=4 lun=0;
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Add the following lines to \fBsd.conf\fR for a six- \fBCD\fR changer on
-\fBtarget 3\fR, with \fBLUNs\fR \fB0\fR to \fB5\fR.
-
-.sp
-.in +2
-.nf
-name="sd" class="scsi" target=3 lun=1;
-name="sd" class="scsi" target=3 lun=2;
-name="sd" class="scsi" target=3 lun=3;
-name="sd" class="scsi" target=3 lun=4;
-name="sd" class="scsi" target=3 lun=5;
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-It is not necessary to add the line for \fBLUN\fR \fB0\fR, as it already exists
-in the file shipped with illumos.
-
-.LP
-\fBExample 2 \fRA Stub Device Definition of \fBsd.conf\fR
-.sp
-.LP
-The following line is a stub device definition which implies the host adapter
-drivers of class scsi-self-identifying might have children that bind to the
-\fBsd\fR(7D) driver:
-
-.sp
-.in +2
-.nf
-name="sd" class="scsi-self-identifying";
-.fi
-.in -2
-.sp
-
-.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Committed
-.TE
-
-.SH SEE ALSO
-\fBadd_drv\fR(1M), \fBrem_drv\fR(1M), \fBupdate_drv\fR(1M),
-\fBdriver.conf\fR(4), \fBattributes\fR(5), \fBfcp\fR(7D), \fBifp\fR(7D),
-\fBsata\fR(7D), \fBscsi_vhci\fR(7D), \fBsd\fR(7D), \fBsf\fR(7D), \fBst\fR(7D),
-\fBscsi_ifgetcap\fR(9F), \fBscsi_init_pkt\fR(9F), \fBscsi_transport\fR(9F)
-.sp
-.LP
-\fIWriting Device Drivers\fR
-.sp
-.LP
-\fIANS X3T9.2/82-2 SMALL COMPUTER SYSTEM INTERFACE (SCSI-1)\fR
-.sp
-.LP
-\fIANS X3T9.2/375D Small Computer System Interface - 2 (SCSI-2)\fR
-.sp
-.LP
-\fIANS X3T10/994D SCSI-3 Architecture Model (SAM)\fR
-.sp
-.LP
-\fIIEEE 1275 SCSI Target Device Binding\fR
-.SH NOTES
-With \fBdriver.conf\fR(4) configuration, you need to ensure that the
-\fBtarget\fR and \fBlun\fR values claimed by your target driver do not conflict
-with existing target drivers on the system. For example, if the target is a
-direct access device, the standard \fBsd.conf\fR file usually makes \fBsd\fR
-claim it before any other driver has a chance to probe it.
diff --git a/usr/src/man/man4/securenets.4 b/usr/src/man/man4/securenets.4
deleted file mode 100644
index 825b72f835..0000000000
--- a/usr/src/man/man4/securenets.4
+++ /dev/null
@@ -1,174 +0,0 @@
-'\" te
-.\" Copyright (C) 2000, Sun Microsystems,
-.\" Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SECURENETS 4 "May 16, 2020"
-.SH NAME
-securenets \- configuration file for NIS security
-.SH SYNOPSIS
-.nf
-\fB/var/yp/securenets\fR
-.fi
-
-.SH DESCRIPTION
-The \fB/var/yp/securenets\fR file defines the networks or hosts which are
-allowed access to information by the Network Information Service ("\fBNIS\fR").
-.sp
-.LP
-The format of the file is as follows:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Lines beginning with the ``#'' character are treated as comments.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Otherwise, each line contains two fields separated by white space. The first
-field is a netmask, the second a network.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The netmask field may be either \fB255.255.255.255\fR (IPv4),
-\fBffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff\fR (IPv6) , or the string ``host''
-indicating that the second field is a specific host to be allowed access.
-.RE
-.sp
-.LP
-Both \fBypserv\fR(1M) and \fBypxfrd\fR(1M) use the \fB/var/yp/securenets\fR
-file. The file is read when the \fBypserv\fR(1M) and \fBypxfrd\fR(1M) daemons
-begin. If \fB/var/yp/securenets\fR is present, \fBypserv\fR(1M) and
-\fBypxfrd\fR(1M) respond only to \fBIP\fR addresses in the range given. In
-order for a change in the \fB/var/yp/securenets\fR file to take effect, you
-must kill and restart any active daemons using \fBypstop\fR(1M) and
-\fBypstart\fR(1M).
-.sp
-.LP
-An important thing to note for all the examples below is that the server must
-be allowed to access itself. You accomplish this either by the server being
-part of a subnet that is allowed to access the server, or by adding an
-individual entry, as the following:
-.sp
-.in +2
-.nf
-hosts 127.0.0.1
-.fi
-.in -2
-.sp
-
-.SH EXAMPLES
-\fBExample 1 \fRAccess for Individual Entries
-.sp
-.LP
-If individual machines are to be give access, the entry could be:
-
-.sp
-.in +2
-.nf
-255.255.255.255 192.9.1.20
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-or
-
-.sp
-.in +2
-.nf
-host 192.0.1.20
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRAccess for a Class C Network
-.sp
-.LP
-If access is to be given to an entire class C network, the entry could be:
-
-.sp
-.in +2
-.nf
-255.255.255.0 192.9.1.0
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 3 \fRAccess for a Class B Network
-.sp
-.LP
-The entry for access to a class B network could be:
-
-.sp
-.in +2
-.nf
-255.255.0.0 9.9.0.0
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 4 \fRAccess for an Individual IPv6 Address
-.sp
-.LP
-Similarly, to allow access for an individual IPv6 address:
-
-.sp
-.in +2
-.nf
-ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff fec0::111:abba:ace0:fba5e:1
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-or
-
-.sp
-.in +2
-.nf
-host fec0::111:abba:ace0:fba5e:1
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 5 \fRAccess for all IPv6 Addresses Starting with fe80
-.sp
-.LP
-To allow access for all IPv6 addresses starting with fe80:
-
-.sp
-.in +2
-.nf
-ffff:: fe80::
-.fi
-.in -2
-.sp
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/var/yp/securenets\fR\fR
-.ad
-.RS 22n
-Configuration file for \fBNIS\fR security.
-.RE
-
-.SH SEE ALSO
-\fBypserv\fR(1M), \fBypstart\fR(1M), \fBypstop\fR(1M), \fBypxfrd\fR(1M)
-.SH NOTES
-The Network Information Service (NIS) was formerly known as Sun Yellow Pages
-(YP). The functionality of the two remains the same; only the name has
-changed. The name Yellow Pages is a registered trademark in the United Kingdom
-of British Telecommunications plc, and may not be used without permission.
diff --git a/usr/src/man/man4/sendmail.4 b/usr/src/man/man4/sendmail.4
deleted file mode 100644
index 917bd8d5c4..0000000000
--- a/usr/src/man/man4/sendmail.4
+++ /dev/null
@@ -1,295 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SENDMAIL 4 "May 13, 2017"
-.SH NAME
-sendmail, sendmail.cf, submit.cf \- sendmail configuration files
-.SH SYNOPSIS
-.LP
-.nf
-\fB/etc/mail/sendmail.cf\fR
-.fi
-
-.LP
-.nf
-\fB/etc/mail/submit.cf\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBsendmail.cf\fR and \fBsubmit.cf\fR files are the configuration files for
-\fBsendmail\fR(1M). Starting with version 8.12 of \fBsendmail\fR, which was
-shipped with version 9 of the Solaris operating system, two configuration files
-are used for submission and transmission of mail, instead of only
-\fBsendmail.cf\fR, as before. These are:
-.sp
-.ne 2
-.na
-\fB\fBsendmail.cf\fR\fR
-.ad
-.RS 15n
-Remains the principal \fBsendmail\fR configuration file. Used for the Mail
-Transmission Agent (MTA).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsubmit.cf\fR\fR
-.ad
-.RS 15n
-Used for the Mail Submission Program (MSP). The MSP is used to submit mail
-messages. Unlike the MTA, it does not run as an SMTP daemon.
-.RE
-
-.sp
-.LP
-The MSP does not require root privileges, thus the two-file model provides
-better security than the pre-\fBsendmail\fR 8.12 model, in which the MSP ran as
-a daemon and required root privileges.
-.sp
-.LP
-In the default \fBsendmail\fR configuration, \fBsendmail\fR uses
-\fBsubmit.cf\fR, as indicated in \fBps\fR(1) output. In \fBps\fR output, you
-will observe two \fBsendmail\fR invocations, such as the ones below:
-.sp
-.in +2
-.nf
-/usr/lib/sendmail -Ac -q15m
-/usr/lib/sendmail -bd -q15m
-.fi
-.in -2
-
-.sp
-.LP
-The first indicates the use of \fBsubmit.cf\fR, with the client queue
-(\fB/var/spool/clientmqueue\fR) being checked\(emand, if needed,
-flushed\(emevery 15 minutes. The second invocation runs \fBsendmail\fR as a
-daemon, waiting for incoming SMTP connections.
-.sp
-.LP
-As shipped, \fBsendmail.cf\fR and, in particular, \fBsubmit.cf\fR, are
-appropriate for most environments. Where a knowledgeable system administrator
-needs to make a change, he should use the following procedures.
-.sp
-.LP
-For \fBsendmail.cf\fR:
-.RS +4
-.TP
-1.
-Change directories to the directory that contains the source files for the
-configuration files.
-.sp
-.in +2
-.nf
-# \fBcd /etc/mail/cf/cf\fR
-.fi
-.in -2
-.sp
-
-.RE
-.RS +4
-.TP
-2.
-Create a copy of the \fBsendmail\fR file for your system.
-.sp
-.in +2
-.nf
-# \fBcp sendmail.mc `hostname`.mc\fR
-.fi
-.in -2
-.sp
-
-.RE
-.RS +4
-.TP
-3.
-Edit \fB`hostname`.mc\fR. Make changes suitable for your system and
-environment.
-.RE
-.RS +4
-.TP
-4.
-Run \fBmake\fR to generate the configuration file.
-.sp
-.in +2
-.nf
-# \fB/usr/bin/make `hostname`.cf\fR
-.fi
-.in -2
-.sp
-
-.RE
-.RS +4
-.TP
-5.
-Copy the newly generated file to its correct location.
-.sp
-.in +2
-.nf
-# \fBcp `hostname`.cf /etc/mail/sendmail.cf\fR
-.fi
-.in -2
-.sp
-
-.RE
-.RS +4
-.TP
-6.
-Restart the \fBsendmail\fR service.
-.sp
-.in +2
-.nf
-# \fBsvcadm restart sendmail\fR
-.fi
-.in -2
-.sp
-
-.RE
-.sp
-.LP
-You must restart \fBsendmail\fR for \fBsendmail.cf\fR file changes to take
-effect, as indicated in step 6. Steps 4 - 6 can be automated. See \fBAutomated
-Rebuilding of Configuration Files\fR below.
-.sp
-.LP
-For \fBsubmit.cf\fR:
-.RS +4
-.TP
-1.
-Change directories to the directory that contains the source files for the
-configuration files.
-.sp
-.in +2
-.nf
-# \fBcd /etc/mail/cf/cf\fR
-.fi
-.in -2
-.sp
-
-.RE
-.RS +4
-.TP
-2.
-Create a copy of the \fBsubmit\fR file for your system.
-.sp
-.in +2
-.nf
-# \fBcp submit.mc submit-`hostname`.mc\fR
-.fi
-.in -2
-.sp
-
-.RE
-.RS +4
-.TP
-3.
-Edit \fBsubmit-`hostname`.mc\fR. Make changes suitable for your system and
-environment.
-.RE
-.RS +4
-.TP
-4.
-Run \fBmake\fR to generate the configuration file.
-.sp
-.in +2
-.nf
-# \fB/usr/bin/make submit-`hostname`.cf\fR
-.fi
-.in -2
-.sp
-
-.RE
-.RS +4
-.TP
-5.
-Copy the newly generated file to its correct location.
-.sp
-.in +2
-.nf
-# \fBcp submit-`hostname`.cf /etc/mail/submit.cf\fR
-.fi
-.in -2
-.sp
-
-.RE
-.sp
-.LP
-You do not need to restart \fBsendmail\fR for changes to \fBsubmit.cf\fR to
-take effect. Steps 4 and 5 can be automated. See \fBAutomated Rebuilding of
-Configuration Files\fR below.
-.SS "Enabling Access to Remote Clients"
-.LP
-The \fBsendmail\fR(1M) man page describes how the \fBconfig/local_only\fR
-property can be set to \fBtrue\fR or \fBfalse\fR to disallow or allow,
-respectively, access to remote clients for unmodified systems.
-.sp
-.LP
-Setting values for the following properties for the service instance
-\fBsvc:/network/smtp:sendmail\fR results in automated (re)building of
-configuration files:
-.sp
-.in +2
-.nf
-path_to_sendmail_mc
-path_to_submit_mc
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The values for these properties should be strings which represent the path name
-of the \fB\&.mc\fR files referred to in steps 2 and 3 of both procedures above.
-Recommended values are:
-.sp
-.in +2
-.nf
-/etc/mail/cf/cf/`hostname`.mc
-/etc/mail/cf/cf/submit-`hostname`.mc
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Each property, if set, results in the corresponding \fB\&.mc\fR file being used
-to (re)build the matching \fB\&.cf\fR file when the service is started.
-.sp
-.LP
-These properties persist across updates. To prevent an update
-from clobbering your \fB\&.cf\fR file, or renaming it to
-\fB\&.cf.old\fR, you can set the desired properties instead.
-.SH FILES
-.ne 2
-.na
-\fB\fB/etc/mail/cf/README\fR\fR
-.ad
-.RS 23n
-Describes \fBsendmail\fR configuration files.
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Committed
-.TE
-
-.SH SEE ALSO
-.LP
-\fBmake\fR(1S), \fBps\fR(1), \fBsendmail\fR(1M), \fBsvcadm\fR(1M),
-\fBattributes\fR(5)
-.sp
-.LP
-\fISystem Administration Guide: Network Services\fR
diff --git a/usr/src/man/man4/service_bundle.4 b/usr/src/man/man4/service_bundle.4
deleted file mode 100644
index 5ec1eb7733..0000000000
--- a/usr/src/man/man4/service_bundle.4
+++ /dev/null
@@ -1,147 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
-.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SERVICE_BUNDLE 4 "Mar 6, 2009"
-.SH NAME
-service_bundle \- service manifest file format
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/share/lib/xml/dtd/service_bundle.dtd.1\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The service management facility, described in \fBsmf\fR(5), utilizes an
-XML-based file format to marshal the description of a set of services or
-service instances between systems. This file is known as a service bundle. The
-primary form of a service bundle is the inventory of services that are provided
-by a package, which is called a \fBservice manifest\fR.
-.sp
-.LP
-The DTD describing the \fBservice_bundle\fR is provided at
-\fB/usr/share/lib/xml/dtd/service_bundle.dtd.1\fR. The attributes and tags are
-fully described in the commented DTD. The services supplied with the operating
-system, stored under \fB/var/svc/manifest\fR, provide examples of correctly
-formed service descriptions.
-.sp
-.LP
-\fBservice_bundle\fR documents can also use the XML Inclusions (\fBXInclude\fR)
-facility to merge multiple documents into one. A \fBservice_bundle\fR document
-manipulator must therefore support the functionality defined by the XInclude
-specification.
-.sp
-.LP
-A complete service description consists of the following:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-A set of properties that identify the service and identify its restarter
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-A set of properties that identify each instance
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-A set of framework property groups that describe the framework's understanding
-of each instance
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-A set of method property groups as required by \fBsvc.startd\fR(1M), or by a
-delegated restarter
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Additional optional method property groups
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-A set of dependency property groups
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-An optional group of properties that indicate services to which dependencies on
-the described service were added
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-A set of application property groups or application-specific typed property
-groups containing application configuration data
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-A template that describes supporting information about this service, such as a
-description, links to documentation, and metadata about property groups and
-properties.
-.RE
-.sp
-.LP
-The document type definition for the service bundle provides markup to define
-each of these aspects of a service description, as well as a number of entities
-that identify regular features in describing a service, such as the
-\fB<create_default_instance>\fR tag.
-.SS "Manifest Handling During Packaging Operations"
-.sp
-.LP
-Service manifests within packages should be identified with the class
-\fBmanifest\fR. Class action scripts that install and remove service manifests
-are included in the packaging subsystem. When \fBpkgadd\fR(1M) is invoked, the
-service manifest is imported.
-.sp
-.LP
-When \fBpkgrm\fR(1M) is invoked, instances in the manifest that are disabled
-are deleted. Any services in the manifest with no remaining instances are also
-deleted.
-.sp
-.LP
-If the \fB-R\fR option is supplied to \fBpkgadd\fR(1M) or \fBpkgrm\fR(1M), the
-actions described in this section are done when the system is next rebooted
-with that alternate root path.
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Stability Committed
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBpkgadd\fR(1M), \fBpkgrm\fR(1M), \fBsvcadm\fR(1M), \fBsvccfg\fR(1M),
-\fBsvc.startd\fR(1M), \fBlibscf\fR(3LIB), \fBattributes\fR(5), \fBlocale\fR(5),
-\fBsmf\fR(5), \fBsmf_method\fR(5), \fBsmf_template\fR(5)
-.SH NOTES
-.sp
-.LP
-Nested \fBservice_bundle\fR elements must be of the same type.
diff --git a/usr/src/man/man4/service_provider.conf.4 b/usr/src/man/man4/service_provider.conf.4
deleted file mode 100644
index d96d7bcebf..0000000000
--- a/usr/src/man/man4/service_provider.conf.4
+++ /dev/null
@@ -1,183 +0,0 @@
-'\" te
-.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SERVICE_PROVIDER.CONF 4 "Jun 18, 2004"
-.SH NAME
-service_provider.conf \- service provider configuration file
-.SH SYNOPSIS
-.LP
-.nf
-\fBservice_provider.conf\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-\fBservice_provider.conf\fR contains information about the device type that the
-service provider supports. This information includes the pathname of the
-service provider library, the library version and other library characteristics
-that are required by the system administrative command, \fBdatadm\fR(1M).
-\fBdatadm\fR(1M) puts this information in the DAT static register file,
-\fBdat.conf\fR(4).
-.sp
-.LP
-The \fBdatadm\fR program enumerates each device entry into a list of interface
-adapters, that is, interfaces to external network that are available to uDAPL
-consumers. This new list of interface adapters is appended to other service
-providers' information in the DAT static registry, \fBdat.conf\fR. You can do
-this if you invoke the \fBdatadm\fR program with the \fB-a\fR option and the
-pathname of the \fBservice_provider.conf\fR file.
-.sp
-.LP
-Each entry in the service_provider.conf is a single line of 7 fields.
-.sp
-.LP
-The following shows the order of the fields in a \fBservice_provider.conf\fR
-entry:
-.sp
-.in +2
-.nf
-"\fIdriver_name\fR" "\fIAPI_version\fR" "\fIthreadsafe_library\fR | \e
- \fInonthreadsafe_library\fR"\e
-"\fIdefault_version\fR | \fInondefault_version\fR" \e
- "\fIservice_provider_library_pathname\fR"\e
-"\fIservice_provider_version\fR" "\fIservice_provider_instance_data\fR"\e
-.fi
-.in -2
-
-.sp
-.LP
-The fields are defined as follows:
-.sp
-.ne 2
-.na
-\fB\fIdriver_name\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies a driver name in the format of \fBdriver_name\fR=\fIvalue pair\fR,
-for example, \fBdriver_name=tavor\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIAPI_version\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the API version of the service provider library: For example,
-\fB"u"major.minor\fR is \fBu1.2\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIthreadsafe_library\fR | \fInonthreadsafe_library\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies a threadsafe or non-threadsafe library.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIdefault_version\fR | \fInondefault_version\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies a default or non-default version of a library. A service provider can
-offer several versions of the library. If so, one version is designated as
-\fBdefault\fR with the rest as \fBnondefault\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIservice_provider_library_pathname\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the pathname of the library image.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIservice_provider_version\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the version of the service provider. By convention, specify the
-company stock symbol as the service provider, followed by major and minor
-version numbers, for example, \fBSUNW1.0\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIservice_provider_instance_data\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the service provider instance data.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRUsing a Logical Device Name
-.sp
-.LP
-The following example \fBservice_provider.conf\fR entry uses a logical device
-name:
-
-.sp
-.in +2
-.nf
-#
-# Sample service_provider.conf entry showing an uDAPL 1.2 service
-# provider, udapl_tavor.so.1 supporting a device with a driver named
-# tavor
-driver_name=tavor u1.2 nonthreadsafe default udapl_tavor.so.1 \e
- SUNW.1.0 ""
-.fi
-.in -2
-
-.LP
-\fBExample 2 \fRUsing a Physical Device Name
-.sp
-.LP
-The following example \fBservice_provider.conf\fR uses a physical device name:
-
-.sp
-.in +2
-.nf
-#
-# Sample service_provider.conf entry showing an uDAPL 1.2
-# service provider, udapl_tavor.so.1 supporting a device named
-# pci15b3,5a44 that can be located under /devices
-#
-pci15b3,5a44 u1.2 nonthreadsafe default \e
- /usr/lib/tavor/udapl_tavor.so.1 SUNWudaplt1.0 ""
-.fi
-.in -2
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-Stability Evolving
-.TE
-
-.SH SEE ALSO
-.LP
-\fBdatadm\fR(1M), \fBdat.conf\fR(4), \fBattributes\fR(5)
diff --git a/usr/src/man/man4/services.4 b/usr/src/man/man4/services.4
deleted file mode 100644
index 69b3ee46e0..0000000000
--- a/usr/src/man/man4/services.4
+++ /dev/null
@@ -1,93 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 1983 Regents of the University of California. All rights reserved. The Berkeley software License Agreement specifies the terms and conditions for redistribution.
-.\" Copyright (C) 2000, Sun Microsystems, Inc. All Rights Reserved
-.TH SERVICES 4 "Feb 25, 2017"
-.SH NAME
-services \- Internet services and aliases
-.SH SYNOPSIS
-.LP
-.nf
-\fB/etc/inet/services\fR
-.fi
-
-.LP
-.nf
-\fB/etc/services\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBservices\fR file is a local source of information regarding each
-service available through the Internet. The \fBservices\fR file can be used in
-conjunction with or instead of other services sources, including the \fBNIS\fR
-map "services.byname". Programs use the
-\fBgetservbyname\fR(3SOCKET) routines to access this information.
-.sp
-.LP
-The \fBservices\fR file contains an entry for each service. Each entry has the
-form:
-.sp
-.in +2
-.nf
-\fIservice-name port\fR/\fIprotocol aliases\fR
-.fi
-.in -2
-
-.sp
-.ne 2
-.na
-\fB\fIservice-name\fR\fR
-.ad
-.RS 17n
-This is the official Internet service name.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIport\fR/\fIprotocol\fR\fR
-.ad
-.RS 17n
-This field is composed of the port number and protocol through which the
-service is provided, for instance, \fB512/tcp\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIaliases\fR\fR
-.ad
-.RS 17n
-This is a list of alternate names by which the service might be requested.
-.RE
-
-.sp
-.LP
-Fields can be separated by any number of \fBSPACE\fR and/or \fBTAB\fR
-characters. A number sign (\fB#\fR) indicates the beginning of a comment; any
-characters that follow the comment character up to the end of the line are not
-interpreted by routines which search the file.
-.sp
-.LP
-Service names may contain any printable character other than a field delimiter,
-a \fBNEWLINE\fR, or a comment character.
-.sp
-.LP
-Any changes to a port assignment do not affect the actual port registration of
-the service.
-.SH FILES
-.ne 2
-.na
-\fB\fB/etc/nsswitch.conf\fR\fR
-.ad
-.RS 22n
-configuration file for name-service switch
-.RE
-
-.SH SEE ALSO
-.LP
-\fBgetservbyname\fR(3SOCKET), \fBinetd.conf\fR(4), \fBnsswitch.conf\fR(4)
-.SH NOTES
-.LP
-\fB/etc/inet/services\fR is the official SVR4 name of the \fBservices\fR file.
-The symbolic link \fB/etc/services\fR exists for \fBBSD\fR compatibility.
diff --git a/usr/src/man/man4/shadow.4 b/usr/src/man/man4/shadow.4
deleted file mode 100644
index 9565697eff..0000000000
--- a/usr/src/man/man4/shadow.4
+++ /dev/null
@@ -1,219 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 2002, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SHADOW 4 "Feb 25, 2017"
-.SH NAME
-shadow \- shadow password file
-.SH DESCRIPTION
-.LP
-\fB/etc/shadow\fR is an access-restricted ASCII system file that stores users'
-encrypted passwords and related information. The shadow file can be used in
-conjunction with other shadow sources, including the \fBNIS\fR maps
-\fBpasswd.byname\fR and \fBpasswd.byuid\fR.
-Programs use the \fBgetspnam\fR(3C) routines to access this information.
-.sp
-.LP
-The fields for each user entry are separated by colons. Each user is separated
-from the next by a newline. Unlike the \fB/etc/passwd\fR file,
-\fB/etc/shadow\fR does not have general read permission.
-.sp
-.LP
-Each entry in the shadow file has the form:
-.sp
-.in +2
-.nf
-\fIusername\fR:\fIpassword\fR:\fIlastchg\fR:\fImin\fR:\fImax\fR:\fIwarn\fR:\fIinactive\fR:\fIexpire\fR:\fIflag\fR
-.fi
-.in -2
-
-.sp
-.LP
-The fields are defined as follows:
-.sp
-.ne 2
-.na
-\fB\fIusername\fR\fR
-.ad
-.RS 12n
-The user's login name (UID).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIpassword\fR\fR
-.ad
-.RS 12n
-An encrypted password for the user generated by \fBcrypt\fR(3C), a \fIlock\fR
-string to indicate that the login is not accessible, or no string, which shows
-that there is no password for the login.
-.sp
-The lock string is defined as \fB*LK*\fR in the first four characters of the
-password field.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIlastchg\fR\fR
-.ad
-.RS 12n
-The number of days between January 1, 1970, and the date that the password was
-last modified. The \fIlastchg\fR value is a decimal number, as interpreted by
-\fBstrtol\fR(3C).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fImin\fR\fR
-.ad
-.RS 12n
-The minimum number of days required between password changes. This field must
-be set to 0 or above to enable password aging.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fImax\fR\fR
-.ad
-.RS 12n
-The maximum number of days the password is valid.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIwarn\fR\fR
-.ad
-.RS 12n
-The number of days before password expires that the user is warned.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIinactive\fR\fR
-.ad
-.RS 12n
-The number of days of inactivity allowed for that user. This is counted on a
-per-machine basis; the information about the last login is taken from the
-machine's \fBlastlog\fR file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIexpire\fR\fR
-.ad
-.RS 12n
-An absolute date expressed as the number of days since the Unix Epoch (January
-1, 1970). When this number is reached the login can no longer be used. For
-example, an \fIexpire\fR value of \fB13514\fR specifies a login expiration of
-January 1, 2007.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIflag\fR\fR
-.ad
-.RS 12n
-Failed login count in low order four bits; remainder reserved for future use,
-set to zero.
-.RE
-
-.sp
-.LP
-A value of \fB-1\fR for \fImin\fR, \fImax\fR, or \fIwarn\fR disables password
-aging.
-.sp
-.LP
-The encrypted password consists of at most \fBCRYPT_MAXCIPHERTEXTLEN\fR
-characters chosen from a 64-character alphabet (\fB\&.\fR, \fB/\fR,
-\fB0\(mi9\fR, \fBA\(miZ\fR, \fBa\(miz\fR). Two additional special characters,
-"$" and ",", can also be used and are defined in \fBcrypt\fR(3C). To update
-this file, use the \fBpasswd\fR(1), \fBuseradd\fR(1M), \fBusermod\fR(1M), or
-\fBuserdel\fR(1M) commands.
-.sp
-.LP
-In order to make system administration manageable, \fB/etc/shadow\fR entries
-should appear in exactly the same order as \fB/etc/passwd\fR entries; this
-includes ``+'' and ``-'' entries if the \fBcompat\fR source is being used (see
-\fBnsswitch.conf\fR(4)).
-.sp
-.LP
-Values for the various time-related fields are interpreted as Greenwich Mean
-Time.
-.SH FILES
-.ne 2
-.na
-\fB\fB/etc/shadow\fR\fR
-.ad
-.RS 22n
-shadow password file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/passwd\fR\fR
-.ad
-.RS 22n
-password file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/nsswitch.conf\fR\fR
-.ad
-.RS 22n
-name-service switch configuration file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/adm/lastlog\fR\fR
-.ad
-.RS 22n
-time of last login
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Stable
-.TE
-
-.SH SEE ALSO
-.LP
-\fBlogin\fR(1), \fBpasswd\fR(1), \fBuseradd\fR(1M), \fBuserdel\fR(1M),
-\fBusermod\fR(1M), \fBstrtol\fR(3C), \fBcrypt\fR(3C), \fBcrypt_gensalt\fR(3C),
-\fBgetspnam\fR(3C), \fBputspent\fR(3C), \fBnsswitch.conf\fR(4),
-\fBpasswd\fR(4), \fBattributes\fR(5), \fBpam_unix_account\fR(5),
-\fBpam_unix_auth\fR(5)
-.SH NOTES
-.LP
-If password aging is turned on in any name service the \fIpasswd:\fR line in
-the \fB/etc/nsswitch.conf\fR file must have a format specified in the
-\fBnsswitch.conf\fR(4) man page.
-.sp
-.LP
-If the \fB/etc/nsswitch.conf\fR passwd policy is not in one of the supported
-formats, logins will not be allowed upon password expiration, because the
-software does not know how to handle password updates under these conditions.
-See \fBnsswitch.conf\fR(4) for additional information.
diff --git a/usr/src/man/man4/sharetab.4 b/usr/src/man/man4/sharetab.4
deleted file mode 100644
index 303017ec07..0000000000
--- a/usr/src/man/man4/sharetab.4
+++ /dev/null
@@ -1,73 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SHARETAB 4 "Jul 3, 1990"
-.SH NAME
-sharetab \- shared file system table
-.SH DESCRIPTION
-.sp
-.LP
-\fBsharetab\fR resides in directory \fB/etc/dfs\fR and contains a table of
-local resources shared by the \fBshare\fR command.
-.sp
-.LP
-Each line of the file consists of the following fields:
-.sp
-.LP
-\fIpathname resource fstype specific_options description\fR
-.sp
-.LP
-where
-.sp
-.ne 2
-.na
-\fB\fIpathname\fR\fR
-.ad
-.RS 20n
-Indicate the path name of the shared resource.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIresource\fR\fR
-.ad
-.RS 20n
-Indicate the symbolic name by which remote systems can access the resource.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIfstype\fR\fR
-.ad
-.RS 20n
-Indicate the file system type of the shared resource.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIspecific_options\fR\fR
-.ad
-.RS 20n
-Indicate file-system-type-specific options that were given to the \fBshare\fR
-command when the resource was shared.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIdescription\fR\fR
-.ad
-.RS 20n
-Describe the shared resource provided by the system administrator when the
-resource was shared.
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBshare\fR(1M)
diff --git a/usr/src/man/man4/shells.4 b/usr/src/man/man4/shells.4
deleted file mode 100644
index 342028eef5..0000000000
--- a/usr/src/man/man4/shells.4
+++ /dev/null
@@ -1,57 +0,0 @@
-'\" te
-.\" Copyright (c) 2007 Sun Microsystems, Inc. All Rights Reserved.
-.\" Portions Copyright (c) 1982-2007 AT&T Knowledge Ventures
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SHELLS 4 "Nov 20, 2007"
-.SH NAME
-shells \- shell database
-.SH SYNOPSIS
-.LP
-.nf
-\fB/etc/shells\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBshells\fR file contains a list of the shells on the system. Applications
-use this file to determine whether a shell is valid. See
-\fBgetusershell\fR(3C). For each shell a single line should be present,
-consisting of the shell's path, relative to root.
-.sp
-.LP
-A hash mark (\fB#\fR) indicates the beginning of a comment; subsequent
-characters up to the end of the line are not interpreted by the routines which
-search the file. Blank lines are also ignored.
-.sp
-.LP
-The following default shells are used by utilities: \fB/bin/bash\fR,
-\fB/bin/csh\fR, \fB/bin/jsh\fR, \fB/bin/ksh\fR, \fB/bin/ksh93\fR,
-\fB/bin/pfcsh\fR, \fB/bin/pfksh\fR, \fB/bin/pfsh\fR, \fB/bin/sh\fR,
-\fB/bin/tcsh\fR, \fB/bin/zsh\fR, \fB/sbin/jsh\fR, \fB/sbin/sh\fR,
-\fB/usr/bin/bash\fR, \fB/usr/bin/csh\fR, \fB/usr/bin/jsh\fR,
-\fB/usr/bin/ksh\fR, \fB/usr/bin/ksh93\fR, \fB/usr/bin/pfcsh\fR,
-\fB/usr/bin/pfksh\fR, \fB/usr/bin/pfsh\fR, and \fB/usr/bin/sh\fR,
-\fB/usr/bin/tcsh\fR, \fB/usr/bin/zsh\fR, and \fB/usr/sfw/bin/zsh\fR.
-\fB/etc/shells\fR overrides the default list.
-.sp
-.LP
-Invalid shells in \fB/etc/shells\fR could cause unexpected behavior, such as
-being unable to log in by way of \fBftp\fR(1).
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/shells\fR\fR
-.ad
-.RS 15n
-list of shells on system
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBvipw\fR(1B), \fBftpd\fR(1M), \fBsendmail\fR(1M), \fBgetusershell\fR(3C),
-\fBaliases\fR(4)
diff --git a/usr/src/man/man4/slp.conf.4 b/usr/src/man/man4/slp.conf.4
deleted file mode 100644
index ecb2e90f0c..0000000000
--- a/usr/src/man/man4/slp.conf.4
+++ /dev/null
@@ -1,1149 +0,0 @@
-'\" te
-.\" Copyright (C) 2003, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SLP.CONF 4 "Feb 18, 2003"
-.SH NAME
-slp.conf \- configuration file for Service Location Protocol agents
-.SH SYNOPSIS
-.LP
-.nf
-\fB/etc/inet/slp.conf\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBslp.conf \fR provides all Service Location Protocol ("\fBSLP\fR") agents
-with their operational configuration. \fBslpd\fR(1M) reads \fBslp.conf\fR on
-startup. Service Agents ("\fBSA\fRs") and User Agents ("\fBUA\fRs") read
-\fBslp.conf\fR on invocation of the \fBSA\fR and \fBUA\fR library routines;
-configuration parameters are then cached on a per-process basis. All \fBSA\fR's
-must use the same set of properties as \fBslpd\fR on the local machine, since
-\fBslpd\fR acts as an \fBSA\fR server.
-.sp
-.LP
-The configuration file format consists of a newline-delimited list of zero or
-more property definitions. Each property definition corresponds to a particular
-configurable \fBSLP\fR, network, or other parameter in one or more of the three
-\fBSLP\fR agents. The file format grammar is shown in \fIRFC 2234\fR as
-follows:
-.sp
-.in +2
-.nf
-config-file = line-list
-line-list = line / line line-list
-line = property-line / comment-line
-comment-line = ( "#" / ";" ) 1*allchar newline
-property-line = property newline
-property = tag "=" value-list
-tag = prop / prop "." tag
-prop = 1*tagchar
-value-list = value / value "," value-list
-value = int / bool /
- "(" value-list ")" / string
-int = 1*DIGIT
-bool = "true" / "false" / "TRUE" / "FALSE"
-newline = CR / ( CRLF )
-string = 1*stringchar
-tagchar = DIGIT / ALPHA / tother / escape
-tother = %x21-%x2d / %x2f /
- %x3a / %x3c-%x40 /
- %x5b-%x60 / %7b-%7e
- ; i.e., all characters except `.',
- ; and `='.
-stringchar = DIGIT / ALPHA / sother / escape
-sother = %x21-%x29 / %x2a-%x2b /
- %x2d-%x2f / %x3a-%x40 /
- %x5b-%x60 / %7b-%7e
- ; i.e., all characters except `,'
-allchar = DIGIT / ALPHA / HTAB / SP
-escape = "\e" HEXDIG HEXDIG
- ; Used for reserved characters
-.fi
-.in -2
-
-.sp
-.LP
-The properties fall into one of the following categories:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBDA\fR Configuration
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Static Scope Configuration
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Tracing and Logging
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Serialized Proxy Registrations
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Networking Configuration Parameters
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBUA\fR Configuration
-.RE
-.SS "DA Configuration"
-.sp
-.LP
-The following are configuration properties and their parameters for \fBDA\fRs:
-.sp
-.ne 2
-.na
-\fB\fBnet.slp.isDA\fR\fR
-.ad
-.RS 24n
-.sp
-.ne 2
-.na
-\fBSetting Type\fR
-.ad
-.RS 19n
-Boolean
-.RE
-
-.sp
-.ne 2
-.na
-\fBDefault Value\fR
-.ad
-.RS 19n
-\fBFalse\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fBRange of Values\fR
-.ad
-.RS 19n
-\fBTrue\fR or \fBFalse\fR
-.RE
-
-A boolean that indicates whether \fBslpd\fR(1M) is to act as a \fBDA\fR. If
-\fBFalse\fR, \fBslpd\fR(1M) is not run as a \fBDA\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnet.slp.DAHeartBeat\fR\fR
-.ad
-.RS 24n
-.sp
-.ne 2
-.na
-\fBSetting Type\fR
-.ad
-.RS 19n
-Integer
-.RE
-
-.sp
-.ne 2
-.na
-\fBDefault Value\fR
-.ad
-.RS 19n
-10800 seconds (3 hours)
-.RE
-
-.sp
-.ne 2
-.na
-\fBRange of Values\fR
-.ad
-.RS 19n
-2000 - 259200000 seconds
-.RE
-
-A 32-bit integer giving the number of seconds for the passive \fBDA\fR
-advertisement heartbeat. The default value is 10800 seconds. This property is
-ignored if \fBnet.slp.isDA\fR is \fBFalse\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnet.slp.DAAttributes\fR\fR
-.ad
-.RS 24n
-.sp
-.ne 2
-.na
-\fBSetting Type\fR
-.ad
-.RS 19n
-List of Strings
-.RE
-
-.sp
-.ne 2
-.na
-\fBDefault Value\fR
-.ad
-.RS 19n
-Unassigned
-.RE
-
-.sp
-.ne 2
-.na
-\fBRange of Values\fR
-.ad
-.RS 19n
-List of Attribute Tag/Value List Pairs
-.RE
-
-A comma-separated list of parenthesized attribute tag/value list pairs that the
-\fBDA\fR must advertise in \fBDA\fR advertisements. The property must be in
-the \fBSLP\fR attribute list wire format, which requires that you use a
-backslash ("\\") to escape reserved characters. See \fIRFC 2608\fR for more
-information on reserved characters, or refer to the \fISystem Administration
-Guide: Network Services\fR.
-.RE
-
-.SS "Static Scope Configuration"
-.sp
-.LP
-The following properties and their parameters allow you to configure various
-aspects of scope and \fBDA\fR handling:
-.sp
-.ne 2
-.na
-\fB\fBnet.slp.useScopes\fR\fR
-.ad
-.RS 23n
-.sp
-.ne 2
-.na
-\fBSetting Type\fR
-.ad
-.RS 19n
-List of Strings
-.RE
-
-.sp
-.ne 2
-.na
-\fBDefault Value\fR
-.ad
-.RS 19n
-\fBDefault\fR, for \fBSA\fR and \fBDA\fR; unassigned for \fBUA\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBRange of Values\fR
-.ad
-.RS 19n
-List of Strings
-.RE
-
-A list of strings indicating either the scopes that a \fBUA\fR or an \fBSA\fR
-is allowed to use when making requests, or the scopes a \fBDA\fR must
-support. If not present for the \fBDA\fR and \fBSA\fR, the default scope
-\fBDefault\fR is used. If not present for the \fBUA\fR, then the user scoping
-model is in force, in which active and passive \fBDA\fR or \fBSA\fR discovery
-are used for scope discovery. The scope \fBDefault\fR is used if no other
-information is available. If a \fBDA\fR or \fBSA\fR gets another scope in a
-request, a \fBSCOPE_NOT_SUPPORTED\fR error is returned, unless the request was
-multicast, in which case it is dropped. If a \fBDA\fR receives another scope in
-a registration, a \fBSCOPE_NOT_SUPPORTED\fR error will be returned. Unlike
-other properties, this property is "read-only", so attempts to change it
-programmatically after the configuration file has been read are ignored.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnet.slp.DAAddresses\fR\fR
-.ad
-.RS 23n
-.sp
-.ne 2
-.na
-\fBSetting Type\fR
-.ad
-.RS 19n
-List of Strings
-.RE
-
-.sp
-.ne 2
-.na
-\fBDefault Value\fR
-.ad
-.RS 19n
-Unassigned
-.RE
-
-.sp
-.ne 2
-.na
-\fBRange of Values\fR
-.ad
-.RS 19n
-IPv4 addresses or host names
-.RE
-
-A list of \fBIP\fR addresses or \fBDNS\fR-resolvable names that denote
-the \fBDA\fRs to use for statically configured \fBUA\fRs and \fBSA\fRs. The
-property is read by \fBslpd\fR(1M), and registrations are forwarded to the
-\fBDA\fRs. The \fBDA\fRs are provided to \fBUA\fRs upon request. Unlike other
-properties, this property is "read-only", so attempts to change it after the
-configuration file has been read are ignored.
-.sp
-The following grammar describes the property:
-.sp
-.in +2
-.nf
-addr-list = addr / addr "," addr-list
-addr = fqdn / hostnumber
-fqdn = ALPHA / ALPHA *[ anum / "-" ] anum
-anum = ALPHA / DIGIT
-hostnumber = 1*3DIGIT 3("." 1*3DIGIT)
-.fi
-.in -2
-
-The following is an example using this grammar:
-.sp
-.in +2
-.nf
-sawah,mandi,sambal
-.fi
-.in -2
-
-\fBIP\fR addresses can be used instead of host names in networks where
-\fBDNS\fR is not deployed, but network administrators are reminded that using
-\fBIP\fR addresses will complicate machine renumbering, since the \fBSLP\fR
-configuration property files in statically configured networks will have to be
-changed.
-.RE
-
-.SS "Tracing and Logging"
-.sp
-.LP
-These properties direct tracing and logging information to be sent to
-\fBsyslogd\fR at the \fBLOG_INFO\fR priority. These properties affect
-\fBslpd\fR(1M) only.
-.sp
-.ne 2
-.na
-\fB\fBnet.slp.traceDATraffic\fR\fR
-.ad
-.RS 26n
-.sp
-.ne 2
-.na
-\fBSetting Type\fR
-.ad
-.RS 19n
-Boolean
-.RE
-
-.sp
-.ne 2
-.na
-\fBDefault Value\fR
-.ad
-.RS 19n
-\fBFalse\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fBRange of Values\fR
-.ad
-.RS 19n
-\fBTrue\fR or \fBFalse\fR
-.RE
-
-Set \fBnet.slp.traceDATraffic\fR to \fBTrue\fR to enable logging of \fBDA\fR
-traffic by \fBslpd\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnet.slp.traceMsg\fR\fR
-.ad
-.RS 26n
-.sp
-.ne 2
-.na
-\fBSetting Type\fR
-.ad
-.RS 19n
-Boolean
-.RE
-
-.sp
-.ne 2
-.na
-\fBDefault Value\fR
-.ad
-.RS 19n
-\fBFalse\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fBRange of Values\fR
-.ad
-.RS 19n
-\fBTrue\fR or \fBFalse\fR
-.RE
-
-Set \fBnet.slp.traceMsg\fR to \fBTrue\fR to display details about \fBSLP\fR
-messages. The fields in all incoming messages and outgoing replies are
-printed by \fBslpd\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnet.slp.traceDrop\fR\fR
-.ad
-.RS 26n
-.sp
-.ne 2
-.na
-\fBSetting Type\fR
-.ad
-.RS 19n
-Boolean
-.RE
-
-.sp
-.ne 2
-.na
-\fBDefault Value\fR
-.ad
-.RS 19n
-\fBFalse\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fBRange of Values\fR
-.ad
-.RS 19n
-\fBTrue\fR or \fBFalse\fR
-.RE
-
-Set this property to \fBTrue\fR to display details when an \fBSLP\fRmessage is
-dropped by \fBslpd\fR for any reason.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnet.slp.traceReg\fR\fR
-.ad
-.RS 26n
-.sp
-.ne 2
-.na
-\fBSetting Type\fR
-.ad
-.RS 19n
-Boolean
-.RE
-
-.sp
-.ne 2
-.na
-\fBDefault Value\fR
-.ad
-.RS 19n
-\fBFalse\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fBRange of Values\fR
-.ad
-.RS 19n
-\fBTrue\fR or \fBFalse\fR
-.RE
-
-Set this property to \fBTrue\fR to display the table of service advertisements
-when a registration or deregistration is processed by \fBslpd\fR.
-.RE
-
-.SS "Serialized Proxy Registrations"
-.sp
-.LP
-The following properties control reading and writing serialized
-registrations.
-.sp
-.ne 2
-.na
-\fB\fBnet.slp.serializedRegURL\fR\fR
-.ad
-.RS 28n
-.sp
-.ne 2
-.na
-\fBSetting Type\fR
-.ad
-.RS 19n
-String
-.RE
-
-.sp
-.ne 2
-.na
-\fBDefault Value\fR
-.ad
-.RS 19n
-Unassigned
-.RE
-
-.sp
-.ne 2
-.na
-\fBRange of Values\fR
-.ad
-.RS 19n
-Valid \fBURL\fR
-.RE
-
-A string containing a \fBURL\fR pointing to a document, which contains
-serialized registrations that should be processed when the \fBslpd\fR starts
-up.
-.RE
-
-.SS "Networking Configuration Parameters"
-.sp
-.LP
-The properties that follow allow you to set various network configuration
-parameters:
-.sp
-.ne 2
-.na
-\fB\fBnet.slp.isBroadcastOnly\fR\fR
-.ad
-.sp .6
-.RS 4n
-.sp
-.ne 2
-.na
-\fBSetting Type\fR
-.ad
-.RS 19n
-Boolean
-.RE
-
-.sp
-.ne 2
-.na
-\fBDefault Value\fR
-.ad
-.RS 19n
-\fBFalse\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fBRange of Values\fR
-.ad
-.RS 19n
-\fBTrue\fR or \fBFalse\fR
-.RE
-
-A boolean that indicates if broadcast should be used instead of multicast.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnet.slp.multicastTTL\fR\fR
-.ad
-.sp .6
-.RS 4n
-.sp
-.ne 2
-.na
-\fBSetting Type\fR
-.ad
-.RS 19n
-Positive Integer
-.RE
-
-.sp
-.ne 2
-.na
-\fBDefault Value\fR
-.ad
-.RS 19n
-\fB255\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fBRange of Values\fR
-.ad
-.RS 19n
-A positive integer from 1 to 255.
-.RE
-
-A positive integer less than or equal to 255 that defines the multicast
-\fBTTL\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnet.slp.DAActiveDiscoveryInterval\fR\fR
-.ad
-.sp .6
-.RS 4n
-.sp
-.ne 2
-.na
-\fBSetting Type\fR
-.ad
-.RS 19n
-Integer
-.RE
-
-.sp
-.ne 2
-.na
-\fBDefault Value\fR
-.ad
-.RS 19n
-900 seconds (15 minutes)
-.RE
-
-.sp
-.ne 2
-.na
-\fBRange of Values\fR
-.ad
-.RS 19n
-From 300 to 10800 seconds
-.RE
-
-A 16-bit positive integer giving the number of seconds between \fBDA\fR active
-discovery queries. The default value is 900 seconds (15 minutes). If the
-property is set to zero, active discovery is turned off. This is useful when
-the \fBDA\fRs available are explicitly restricted to those obtained from the
-\fBnet.slp.DAAddresses\fR property.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnet.slp.multicastMaximumWait\fR\fR
-.ad
-.sp .6
-.RS 4n
-.sp
-.ne 2
-.na
-\fBSetting Type\fR
-.ad
-.RS 19n
-Integer
-.RE
-
-.sp
-.ne 2
-.na
-\fBDefault Value\fR
-.ad
-.RS 19n
-15000 milliseconds (15 seconds)
-.RE
-
-.sp
-.ne 2
-.na
-\fBRange of Values\fR
-.ad
-.RS 19n
- 1000 to 60000 milliseconds
-.RE
-
-A 32-bit integer giving the maximum value for the sum of the
-\fBnet.slp.multicastTimeouts\fR values and \fBnet.slp.DADiscoveryTimeouts\fR
-values in milliseconds.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnet.slp.multicastTimeouts\fR\fR
-.ad
-.sp .6
-.RS 4n
-.sp
-.ne 2
-.na
-\fBSetting Type\fR
-.ad
-.RS 19n
-List of Integers
-.RE
-
-.sp
-.ne 2
-.na
-\fBDefault Value\fR
-.ad
-.RS 19n
-\fB3000,3000,3000,3000\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fBRange of Values\fR
-.ad
-.RS 19n
-List of Positive Integers
-.RE
-
-A list of 32-bit integers used as timeouts, in milliseconds, to implement the
-multicast convergence algorithm. Each value specifies the time to wait before
-sending the next request, or until nothing new has been learned from two
-successive requests. In a fast network the aggressive values of
-\fB1000,1250,1500,2000,4000\fR allow better performance. The sum of the list
-must equal \fBnet.slp.multicastMaximumWait\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnet.slp.passiveDADetection\fR\fR
-.ad
-.sp .6
-.RS 4n
-.sp
-.ne 2
-.na
-\fBSetting Type\fR
-.ad
-.RS 19n
-Boolean
-.RE
-
-.sp
-.ne 2
-.na
-\fBDefault Value\fR
-.ad
-.RS 19n
-\fBTrue\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fBRange of Values\fR
-.ad
-.RS 19n
-\fBTrue\fR or \fBFalse\fR
-.RE
-
-A boolean indicating whether \fBslpd\fR should perform passive \fBDA\fR
-detection.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnet.slp.DADiscoveryTimeouts\fR\fR
-.ad
-.sp .6
-.RS 4n
-.sp
-.ne 2
-.na
-\fBSetting Type\fR
-.ad
-.RS 19n
-List of Integers.
-.RE
-
-.sp
-.ne 2
-.na
-\fBDefault Value\fR
-.ad
-.RS 19n
-\fB2000,2000,2000,2000,3000,4000\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fBRange of Values\fR
-.ad
-.RS 19n
-List of Positive Integers
-.RE
-
-A list of 32-bit integers used as timeouts, in milliseconds, to implement the
-multicast convergence algorithm during active \fBDA\fR discovery. Each value
-specifies the time to wait before sending the next request, or until nothing
-new has been learned from two successive requests. The sum of the list must
-equal \fBnet.slp.multicastMaximumWait\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnet.slp.datagramTimeouts\fR\fR
-.ad
-.sp .6
-.RS 4n
-.sp
-.ne 2
-.na
-\fBSetting Type\fR
-.ad
-.RS 19n
-List of Integers
-.RE
-
-.sp
-.ne 2
-.na
-\fBDefault Value\fR
-.ad
-.RS 19n
-\fB3000,3000,3000\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fBRange of Values\fR
-.ad
-.RS 19n
-List of Positive Integers
-.RE
-
-A list of 32-bit integers used as timeouts, in milliseconds, to implement
-unicast datagram transmission to \fBDA\fRs. The \fIn\fRth value gives the time
-to block waiting for a reply on the \fIn\fRth try to contact the \fBDA\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnet.slp.randomWaitBound\fR\fR
-.ad
-.sp .6
-.RS 4n
-.sp
-.ne 2
-.na
-\fBSetting Type\fR
-.ad
-.RS 19n
-Integer
-.RE
-
-.sp
-.ne 2
-.na
-\fBDefault Value\fR
-.ad
-.RS 19n
-1000 milliseconds (1 second)
-.RE
-
-.sp
-.ne 2
-.na
-\fBRange of Values\fR
-.ad
-.RS 19n
-1000 to 3000 milliseconds
-.RE
-
-Sets the upper bound for calculating the random wait time before attempting to
-contact a \fBDA\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnet.slp.MTU\fR\fR
-.ad
-.sp .6
-.RS 4n
-.sp
-.ne 2
-.na
-\fBSetting Type\fR
-.ad
-.RS 19n
-Integer
-.RE
-
-.sp
-.ne 2
-.na
-\fBDefault Value\fR
-.ad
-.RS 19n
-1400
-.RE
-
-.sp
-.ne 2
-.na
-\fBRange of Values\fR
-.ad
-.RS 19n
-128 to 8192
-.RE
-
-A 16-bit integer that specifies the network packet size, in bytes. The packet
-size includes \fBIP\fR and \fBTCP\fR or \fBUDP\fR headers.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnet.slp.interfaces\fR\fR
-.ad
-.sp .6
-.RS 4n
-.sp
-.ne 2
-.na
-\fBSetting Type\fR
-.ad
-.RS 19n
-List of Strings
-.RE
-
-.sp
-.ne 2
-.na
-\fBDefault Value\fR
-.ad
-.RS 19n
-Default interface
-.RE
-
-.sp
-.ne 2
-.na
-\fBRange of Values\fR
-.ad
-.RS 19n
-IPv4 addresses or host names
-.RE
-
-List of strings giving the \fBIP\fR addresses or host names of the network
-interface cards on which the \fBDA\fR or \fBSA\fR should listen on port 427 for
-multicast, unicast \fBUDP\fR, and \fBTCP\fR messages. The default value is
-unassigned, indicating that the default network interface card should be used.
-An example is:
-.sp
-.in +2
-.nf
-195.42.42.42,195.42.142.1,195.42.120.1
-.fi
-.in -2
-
-The example machine has three interfaces on which the \fBDA\fR should listen.
-Note that if \fBIP\fR addresses are used, the property must be renumbered if
-the network is renumbered.
-.RE
-
-.SS "UA Configuration"
-.sp
-.LP
-The following configuration parameters apply to the \fBUA\fR:
-.sp
-.ne 2
-.na
-\fB\fBnet.slp.locale\fR\fR
-.ad
-.RS 22n
-.sp
-.ne 2
-.na
-\fBSetting Type\fR
-.ad
-.RS 19n
-String
-.RE
-
-.sp
-.ne 2
-.na
-\fBDefault Value\fR
-.ad
-.RS 19n
-\fBen\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fBRange of Values\fR
-.ad
-.RS 19n
-See \fIRFC 1766\fR for a list of the locale language tag names.
-.RE
-
-A \fIRFC 1766\fR Language Tag for the language locale. Setting this
-property causes the property value to become the default locale for
-\fBSLP\fR messages.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnet.slp.maxResults\fR\fR
-.ad
-.RS 22n
-.sp
-.ne 2
-.na
-\fBSetting Type\fR
-.ad
-.RS 19n
-Integer
-.RE
-
-.sp
-.ne 2
-.na
-\fBDefault Value\fR
-.ad
-.RS 19n
-\fB-1\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fBRange of Values\fR
-.ad
-.RS 19n
-\fB-1\fR, positive integer
-.RE
-
-A 32 bit-integer that specifies the maximum number of results to accumulate and
-return for a synchronous request before the timeout, or the maximum number of
-results to return through a callback if the request results are reported
-asynchronously. Positive integers and \fB-1\fR are legal values. If the value
-of \fBnet.slp.maxResults\fR is \fB-1\fR, all results should be returned.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnet.slp.typeHint\fR\fR
-.ad
-.RS 22n
-.sp
-.ne 2
-.na
-\fBSetting Type\fR
-.ad
-.RS 19n
-List of Strings
-.RE
-
-.sp
-.ne 2
-.na
-\fBDefault Value\fR
-.ad
-.RS 19n
-Unassigned
-.RE
-
-.sp
-.ne 2
-.na
-\fBRange of Values\fR
-.ad
-.RS 19n
-Service type names
-.RE
-
-A list of service type names. In the absence of any \fBDA\fRs, \fBUA\fRs
-perform \fBSA\fR discovery to find scopes. If the \fBnet.slp.typeHint\fR
-property is set, only \fBSA\fR's advertising types on the list respond. Note
-that \fBUA\fRs set this property programmatically. It is not typically set in
-the configuration file. The default is unassigned, meaning do not restrict the
-type.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-CSI Enabled
-_
-Interface Stability Standard
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBslpd\fR(1M), \fBslpd.reg\fR(4), \fBslp_api\fR(3SLP), \fBslp\fR(7P)
-.sp
-.LP
-\fISystem Administration Guide: Network Services\fR
-.sp
-.LP
-Alvestrand, H. \fIRFC 1766: Tags for the Identification of Languages\fR.
-Network Working Group. March 1995.
-.sp
-.LP
-Crocker, D., Overell, P. \fIRFC 2234, Augmented BNF for Syntax Specifications:
-ABNF\fR. The Internet Society. 1997.
-.sp
-.LP
-Kempf, J. and Guttman, E. \fIRFC 2614, An API for Service Location\fR. The
-Internet Society. June 1999.
diff --git a/usr/src/man/man4/slpd.reg.4 b/usr/src/man/man4/slpd.reg.4
deleted file mode 100644
index 7701544b0d..0000000000
--- a/usr/src/man/man4/slpd.reg.4
+++ /dev/null
@@ -1,148 +0,0 @@
-'\" te
-.\" Copyright (C) 2000, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SLPD.REG 4 "Nov 17, 1999"
-.SH NAME
-slpd.reg \- serialized registration file for the service location protocol
-daemon (slpd)
-.SH SYNOPSIS
-.LP
-.nf
-\fB/etc/inet/slpd.reg\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-The serialized registration file contains a group of registrations that
-\fBslpd\fR(1M) registers when it starts. These registrations are primarily for
-older service programs that do not internally support \fBSLP\fR and cannot be
-converted. The character format of the registration file is required to be
-\fBASCII\fR. To use serialized registrations, set the
-\fBnet.slp.serializedRegURL\fR property in \fBslp.conf\fR(4) to point at a
-valid \fBslpd.reg\fR file. The syntax of the serialized registration file, in
-\fBABNF\fR format (see \fIRFC 2234\fR), is as follows:
-.sp
-.in +2
-.nf
-ser-file = reg-list
-reg-list = reg / reg reg-list
-reg = creg / ser-reg
-creg = comment-line ser-reg
-comment-line = ( "#" / ";" ) 1*allchar newline
-ser-reg = url-props [slist] [attr-list] newline
-url-props = surl "," lang "," ltime [ "," type ] newline
-surl = ;The registration's URL. See
- ; [8] for syntax.
-lang = 1*8ALPHA [ "-" 1*8ALPHA ]
- ;RFC 1766 Language Tag see [6].
-ltime = 1*5DIGIT
- ; A positive 16-bit integer
- ; giving the lifetime
- ; of the registration.
-type = ; The service type name, see [7]
- ; and [8] for syntax.
-slist = "scopes" "=" scope-list newline
-scope-list = scope-name / scope-name "," scope-list
-scope = ; See grammar of [7] for
- ; scope-name syntax.
-attr-list = attr-def / attr-def attr-list
-attr-def = ( attr / keyword ) newline
-keyword = attr-id
-attr = attr-id "=" attr-val-list
-attr-id = ;Attribute id, see [7] for syntax.
-attr-val-list = attr-val / attr-val "," attr-val-list
-attr-val = ;Attribute value, see [7] for syntax
-allchar = char / WSP
-char = DIGIT / ALPHA / other
-other = %x21-%x2f / %x3a-%x40 /
- %x5b-%x60 / %7b-%7e
- ; All printable, nonwhitespace US-ASCII
- ; characters.
-newline = CR / ( CRLF )
-.fi
-.in -2
-
-.sp
-.LP
-The syntax for attributes and attribute values requires that you use a
-backslash to escape special characters, in addition to non-\fBASCII\fR
-characters, as specified in \fIRFC 2608\fR. The \fBslpd\fR command handles
-serialized registrations exactly as if they were registered by an \fBSA\fR. In
-the \fBurl-props\fR production, the type token is optional. If the type token
-is present for a service: \fBURL\fR, a warning is signalled, and the type name
-is ignored. If the maximum lifetime of \fB65535\fR seconds is specified, the
-registration is taken to be permanent, and it is continually refreshed by the
-\fBDA\fR or \fBSA\fR server until it exits.
-.sp
-.LP
-Scopes can be included in a registration by including an attribute definition
-with tag \fBscopes\fR followed by a comma-separated list of scope names
-immediately after the \fBurl-props\fR production. If the optional
-\fBscope-list\fR is present, the registrations are made in the indicated scopes;
-otherwise, they are registered in the scopes with which the \fBDA\fR or
-\fBSA\fR server was configured through the \fBnet.slp.useScopes\fR property. If
-any conflicts occur between the scope list and the \fBnet.slp.useScopes\fR
-property, an error message is issued by way of \fBsyslog\fR(3C). Refer to
-information regarding \fBLOG_INFO\fR in \fBsyslog\fR(3C).
-.sp
-.LP
-Service advertisements are separated by a single blank line. Additionally, the
-file must end with a single blank line.
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRUsing a Serialized Registration File
-.sp
-.LP
-The following serialized registration file shows an instance of the service
-type \fBfoo\fR, with a lifetime of \fB65535\fR seconds, in the \fBen\fR
-locale, with scope \fBsomescope\fR:
-
-.sp
-.in +2
-.nf
-# register foo
-service:foo://fooserver/foopath,en,65535
-scopes=somescope
-description=bogus
-security=kerberos_v5
-location=headquarters
-
-# next registration...
-.fi
-.in -2
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-CSI Enabled
-_
-Interface Stability Standard
-.TE
-
-.SH SEE ALSO
-.LP
-\fBslpd\fR(1M), \fBslp_api\fR(3SLP), \fBsyslog\fR(3C), \fBslp.conf\fR(4),
-\fBattributes\fR(5)
-.sp
-.LP
-Crocker, D. and Overell, P., \fIRFC 2234, Augmented BNF for Syntax
-Specifications: ABNF\fR, The Internet Society, November 1997.
-.sp
-.LP
-Guttman, E., Perkins, C., Veizades, J., and Day, M., \fIRFC 2608, Service
-Location Protocol, Version 2\fR, The Internet Society, June 1999.
-.sp
-.LP
-Kempf, J. and Guttman, E., \fIRFC 2614, An API for Service Location\fR, The
-Internet Society, June 1999.
diff --git a/usr/src/man/man4/smb.4 b/usr/src/man/man4/smb.4
deleted file mode 100644
index 637d22c862..0000000000
--- a/usr/src/man/man4/smb.4
+++ /dev/null
@@ -1,617 +0,0 @@
-'\" te
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 2017, Nexenta Systems, Inc. All Rights Reserved.
-.\" Copyright 2021, RackTop Systems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.\"
-.TH SMB 4 "December 28, 2020"
-.SH NAME
-smb \- configuration properties for Solaris CIFS server
-.SH DESCRIPTION
-Behavior of the Solaris CIFS server is defined by property values that are
-stored in the Service Management Facility, \fBsmf\fR(5).
-.sp
-.LP
-An authorized user can use the \fBsharectl\fR(1M) command to set global values
-for these properties in SMF.
-.sp
-.LP
-The following list describes the properties:
-.sp
-.ne 2
-.na
-\fB\fBads_site\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the site configured in DNS to look up Active Directory information.
-Sites provide a mechanism to partition or delegate administration and policy
-management, which are typically used in large or complex domains.
-.sp
-The value should not be set if you do not have a local Active Directory site.
-By default, no value is set.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBautohome_map\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the full path for the SMD autohome map file, \fBsmbautohome\fR. The
-default path is \fB/etc\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBbypass_traverse_checking\fR\fR
-.ad
-.sp .6
-.RS 4n
-When set, allows the SMB server to bypass ACL "traverse" checks.
-The default value is \fBtrue\fR, for Windows compatibility.
-If this parameter is \fBfalse\fR, ACL checks require that
-"traverse" (directory execute) is granted on every directory
-above the directory the SMB client tries to access.
-Windows shares are normally setup with the higher level
-directories not specifically granting such access.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdisposition\fR\fR
-.ad
-.sp .6
-.RS 4n
-A value that controls whether to disconnect the share or proceed if the map
-command fails. The disposition property only has meaning when the map property
-has been set. Otherwise it will have no effect.
-.sp
-.in +2
-.nf
-disposition = [ continue | terminate ]
-.fi
-.in -2
-.sp
-
-.sp
-.ne 2
-.na
-\fB\fBcontinue\fR\fR
-.ad
-.sp .6
-.RS 4n
-Proceed with share connection if the map command fails. This is the default in
-the event that disposition is not specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBterminate\fR\fR
-.ad
-.sp .6
-.RS 4n
-Disconnect the share if the map command fails.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBddns_enable\fR\fR
-.ad
-.sp .6
-.RS 4n
-Enables or disables dynamic DNS updates. A value of \fBtrue\fR enables dynamic
-updates, while a value of \fBfalse\fR disables dynamic updates. By default, the
-value is \fBfalse\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBencrypt\fR\fR
-.ad
-.sp .6
-.RS 4n
-Controls SMB3 Encryption. For requests on a particular share, the server's
-behavior is controlled by the stricter of this option and the per-share
-"encrypt" option.
-.sp
-When set to \fBdisabled\fR, the server will not ask clients to encrypt requests.
-When set to \fBenabled\fR, the server will ask clients to encrypt requests,
-but will not require that they do so. Any message that can be encrypted
-will be encrypted.
-When set to \fBrequired\fR, the server will deny access to or disconnect
-any client that does not support encryption or fails to encrypt requests
-that they should.
-.sp
-In other words, the \fBenabled\fR behavior is that any message that CAN
-be encrypted SHOULD be encrypted, while the \fBrequired\fR behavior is that any
-message that CAN be encrypted MUST be encrypted.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBencrypt_cipher\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies a list of enabled SMB 3.1.1 encryption ciphers. This property is only
-used when encryption is On (see \fBencrypt\fR property) and negotiated SMB
-dialect is 3.1.1 or higher (see \fBmax_protocol\fR property). Otherwise it is
-ignored.
-.sp
-When the property is set, a list of comma separated ciphers should be specified,
-or the value \fBall\fR should be used instead to enable all supported ciphers.
-By default, when the property is empty, it is equivalent to value \fBall\fR -
-all available ciphers will be enabled.
-.sp
-The list of ciphers should contain these values:
-.sp
-.ne 2
-.na
-\fBaes128-ccm\fR
-.ad
-.RS 13n
-AES-128-CCM cipher is enabled. It is the only cipher used for SMB 3.0.2
-dialect.
-.RE
-
-.sp
-.ne 2
-.na
-\fBaes128-gcm\fR
-.ad
-.RS 13n
-AES-128-GCM cipher is enabled.
-preferred.
-.RE
-
-.sp
-.ne 2
-.na
-\fBall\fR
-.ad
-.RS 13n
-All ciphers are enabled.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBipv6_enable\fR\fR
-.ad
-.sp .6
-.RS 4n
-Enables IPv6 Internet protocol support within the CIFS Service. Valid values
-are \fBtrue\fR and \fBfalse\fR. The default value is \fBfalse\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBkeep_alive\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the number of seconds before an idle SMB connection is dropped by the
-Solaris CIFS server. If set to 0, idle connections are not dropped. Valid
-values are 0 and from 20 seconds and above. The default value is 0.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBlmauth_level\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the LAN Manager (LM) authentication level. The LM compatibility level
-controls the type of user authentication to use in workgroup mode or domain
-mode. The default value is 3.
-.sp
-The following describes the behavior at each level.
-.sp
-.ne 2
-.na
-\fB2\fR
-.ad
-.RS 13n
-In Windows workgroup mode, the Solaris CIFS server accepts LM, NTLM, LMv2, and
-NTLMv2 requests. In domain mode, the SMB redirector on the Solaris CIFS server
-sends NTLM requests.
-.RE
-
-.sp
-.ne 2
-.na
-\fB3\fR
-.ad
-.RS 13n
-In Windows workgroup mode, the Solaris CIFS server accepts LM, NTLM, LMv2, and
-NTLMv2 requests. In domain mode, the SMB redirector on the Solaris CIFS server
-sends LMv2 and NTLMv2 requests.
-.RE
-
-.sp
-.ne 2
-.na
-\fB4\fR
-.ad
-.RS 13n
-In Windows workgroup mode, the Solaris CIFS server accepts NTLM, LMv2, and
-NTLMv2 requests. In domain mode, the SMB redirector on the Solaris CIFS server
-sends LMv2 and NTLMv2 requests.
-.RE
-
-.sp
-.ne 2
-.na
-\fB5\fR
-.ad
-.RS 13n
-In Windows workgroup mode, the Solaris CIFS server accepts LMv2 and NTLMv2
-requests. In domain mode, the SMB redirector on the Solaris CIFS server sends
-LMv2 and NTLMv2 requests.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmap\fR\fR
-.ad
-.sp .6
-.RS 4n
-The value is a command to be executed when connecting to the share. The command
-can take the following arguments, which will be substituted when the command is
-exec'd as described below:
-.sp
-.ne 2
-.na
-\fB\fB%U\fR\fR
-.ad
-.sp .6
-.RS 4n
-Windows username.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB%D\fR\fR
-.ad
-.sp .6
-.RS 4n
-Name of the domain or workgroup of \fB%U\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB%h\fR\fR
-.ad
-.sp .6
-.RS 4n
-The server hostname.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB%M\fR\fR
-.ad
-.sp .6
-.RS 4n
-The client hostname, or \fB""\fR if not available.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB%L\fR\fR
-.ad
-.sp .6
-.RS 4n
-The server NetBIOS name.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB%m\fR\fR
-.ad
-.sp .6
-.RS 4n
-The client NetBIOS name, or \fB""\fR if not available. This option is only
-valid for NetBIOS connections (port 139).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB%I\fR\fR
-.ad
-.sp .6
-.RS 4n
-The IP address of the client machine.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB%i\fR\fR
-.ad
-.sp .6
-.RS 4n
-The local IP address to which the client is connected.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB%S\fR\fR
-.ad
-.sp .6
-.RS 4n
-The name of the share.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB%P\fR\fR
-.ad
-.sp .6
-.RS 4n
-The root directory of the share.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB%u\fR\fR
-.ad
-.sp .6
-.RS 4n
-The UID of the Unix user.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmax_protocol\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the maximum SMB protocol level that the SMB service
-should allow clients to negotiate. The default value is \fB3.11\fR.
-Valid settings include: \fB1\fR, \fB2.1\fR, \fB3.0\fR, \fB3.02\fR, \fB3.11\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmin_protocol\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the minimum SMB protocol level that the SMB service
-should allow clients to negotiate. The default value is \fB1\fR.
-Valid settings include: \fB1\fR, \fB2.1\fR, \fB3.0\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmax_workers\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the maximum number of worker threads that will be launched to process
-incoming CIFS requests. The SMB \fBmax_mpx\fR value, which indicates to a
-client the maximum number of outstanding SMB requests that it may have pending
-on the server, is derived from the \fBmax_workers\fR value. To ensure
-compatibility with older versions of Windows the lower 8-bits of \fBmax_mpx\fR
-must not be zero. If the lower byte of \fBmax_workers\fR is zero, \fB64\fR is
-added to the value. Thus the minimum value is \fB64\fR and the default value,
-which appears in \fBsharectl\fR(1M) as \fB1024\fR, is \fB1088\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnetbios_scope\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the NetBIOS scope identifier, which identifies logical NetBIOS
-networks that are on the same physical network. When you specify a NetBIOS
-scope identifier, the server filters the number of machines that are listed in
-the browser display to make it easier to find other hosts. The value is a text
-string that represents a domain name. By default, no value is set.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBoplock_enable\fR\fR
-.ad
-.sp .6
-.RS 4n
-Controls whether "oplocks" may be granted by the SMB server.
-The term "oplock" is short for "opportunistic lock", which is
-the legacy name for cache delegations in SMB.
-By default, oplocks are enabled.
-Note that if oplocks are disabled, file I/O performance may be
-severely reduced.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpdc\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the preferred IP address for the domain controller. This property is
-sometimes used when there are multiple domain controllers to indicate which one
-is preferred. If the specified domain controller responds, it is chosen even if
-the other domain controllers are also available. By default, no value is set.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrestrict_anonymous\fR\fR
-.ad
-.sp .6
-.RS 4n
-Disables anonymous access to IPC$, which requires that the client be
-authenticated to get access to MSRPC services through IPC$. A value of
-\fBtrue\fR disables anonymous access to IPC$, while a value of \fBfalse\fR
-enables anonymous access.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsigning_enabled\fR\fR
-.ad
-.sp .6
-.RS 4n
-Enables SMB signing. When signing is enabled but not required it is possible
-for clients to connect regardless of whether or not the client supports SMB
-signing. If a packet has been signed, the signature will be verified. If a
-packet has not been signed it will be accepted without signature verification.
-Valid values are \fBtrue\fR and \fBfalse\fR. The default value is \fBfalse\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsigning_required\fR\fR
-.ad
-.sp .6
-.RS 4n
-When SMB signing is required, all packets must be signed or they will be
-rejected, and clients that do not support signing will be unable to connect to
-the server. The \fBsigning_required\fR setting is only taken into account when
-\fBsigning_enabled\fR is \fBtrue\fR. Valid values are \fBtrue\fR and
-\fBfalse\fR. The default value is \fBfalse\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsystem_comment\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies an optional description for the system, which is a text string. This
-property value might appear in various places, such as Network Neighborhood or
-Network Places on Windows clients. By default, no value is set.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBtraverse_mounts\fR\fR
-.ad
-.sp .6
-.RS 4n
-The \fBtraverse_mounts\fR setting determines how the SMB server
-presents sub-mounts underneath an SMB share. When \fBtraverse_mounts\fR
-is \fBtrue\fR (the default), sub-mounts are presented to SMB clients
-like any other subdirectory. When \fBtraverse_mounts\fR is \fBfalse\fR,
-sub-mounts are not shown to SMB clients.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBunmap\fR\fR
-.ad
-.sp .6
-.RS 4n
-The value is a command to be executed when disconnecting the share. The command
-can take the same substitutions listed on the \fBmap\fR property.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBwins_exclude\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies a comma-separated list of network interfaces that should not be
-registered with WINS. NetBIOS host announcements are made on excluded
-interfaces.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBwins_server_1\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the IP address of the primary WINS server. By default, no value is
-set.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBwins_server_2\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the IP address of the secondary WINS server. By default, no value is
-set.
-.RE
-
-.SH ATTRIBUTES
-See the \fBattributes\fR(5) man page for descriptions of the following
-attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Uncommitted
-.TE
-
-.SH SEE ALSO
-\fBsharectl\fR(1M), \fBsmbadm\fR(1M), \fBsmbd\fR(1M), \fBsmbstat\fR(1M),
-\fBattributes\fR(5), \fBsmf\fR(5)
diff --git a/usr/src/man/man4/smbautohome.4 b/usr/src/man/man4/smbautohome.4
deleted file mode 100644
index 448321c825..0000000000
--- a/usr/src/man/man4/smbautohome.4
+++ /dev/null
@@ -1,201 +0,0 @@
-'\" te
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SMBAUTOHOME 4 "Feb 25, 2017"
-.SH NAME
-smbautohome \- CIFS autohome configuration
-.SH SYNOPSIS
-.LP
-.nf
-\fBsmbautohome\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-The Solaris CIFS service can automatically share home directories when a CIFS
-client connects. The autohome map file, \fB/etc/smbautohome\fR, uses the search
-options and rules to determine whether to share a home directory when a CIFS
-client connects to the server.
-.sp
-.LP
-For example, the following entries specify the autohome rules for a particular
-environment:
-.sp
-.in +2
-.nf
-+nsswitch dn=ad,dn=sun,dn=com,ou=users
-jane /home/?/& dn=ad,dn=sun,dn=com,ou=users
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The \fBnsswitch\fR autohome entry uses the naming service to match users to
-home directories. The second autohome entry specifies that the home directory
-for user \fBjane\fR is \fB/home/j/jane\fR.
-.SS "autohome Map Entry Format"
-.LP
-A map entry, which is also referred to as a mapping, uses the following format:
-.sp
-.in +2
-.nf
-\fIkey\fR \fIlocation\fR [ \fIoptions\fR ]
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-\fIkey\fR is a user name, \fIlocation\fR is the fully qualified path for the
-user's home directory, and \fIoptions\fR specifies the share options, for
-example, an AD container or description. See \fBsharemgr\fR(1M) for information
-on share options.
-.sp
-.LP
-If you intend to publish the share in Active Directory (AD), you \fBmust\fR
-specify an AD container name, which is specified as a comma-separated list of
-attribute name-value pairs. The attributes use the LDAP distinguished name (DN)
-or relative distinguished name (RDN) format.
-.sp
-.LP
-The DN or RDN must be specified in LDAP format by using the following attribute
-types:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBcn=\fR represents the common name
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBou=\fR represents the organizational unit
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBdc=\fR represents the domain component
-.RE
-.sp
-.LP
-The attribute type that is used to describe an object's RDN is called a
-\fBnaming attribute\fR. AD uses the naming attributes as follows:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBcn\fR for the \fBuser\fR object class
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBou\fR for the \fBOU\fR (organizational unit) object class
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBdc\fR for the \fBdomainDns\fR object class
-.RE
-.SS "autohome Map Key Substitution"
-.LP
-The autohome feature supports the following wildcard substitutions for the
-value of the key field:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The ampersand character (\fB&\fR) is expanded to the value of the key field for
-the entry in which it occurs. In the following example, \fB&\fR expands to
-\fBjane\fR:
-.sp
-.in +2
-.nf
-jane /home/&
-.fi
-.in -2
-
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The question mark character (\fB?\fR) is expanded to the value of the first
-character in the key field for the entry in which it occurs. In the following
-example, \fB?\fR expands to \fBj\fR:
-.sp
-.in +2
-.nf
-jane /home/?/&
-.fi
-.in -2
-
-.RE
-.SS "Wildcard Rule"
-.LP
-When supplied in the key field, the asterisk character (\fB*\fR) is recognized
-as the "catch-all" entry. Such an entry matches any key not previously matched.
-.sp
-.LP
-For example, the following entry would map any user to a home directory in
-\fB/home\fR in which the home directory name was the same as the user name:
-.sp
-.in +2
-.nf
-* /home/&
-.fi
-.in -2
-
-.sp
-.LP
-The wildcard rule is \fBonly\fR applied if an appropriate rule is not matched
-by another map entry.
-.SS "NSSwitch Map"
-.LP
-The \fBnsswitch\fR map is used to request that the home directory be obtained
-from a password database, such as the local, NIS, or LDAP databases. If
-an AD path is appended, it is used to publish shares.
-.sp
-.in +2
-.nf
-+nsswitch
-.fi
-.in -2
-
-.sp
-.LP
-Like the "catch-all" entry, the \fBnsswitch\fR map is \fBonly\fR searched if an
-appropriate rule is not matched by another map entry.
-.sp
-.LP
-The wildcard and \fBnsswitch\fR rules are mutually exclusive. Do not include an
-\fBnsswitch\fR rule if a wildcard rule has already been defined.
-.SH FILES
-.LP
-\fB/etc/smbautohome\fR
-.SH ATTRIBUTES
-.LP
-See the \fBattributes\fR(5) man page for descriptions of the following
-attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Uncommitted
-.TE
-
-.SH SEE ALSO
-.LP
-\fBsharectl\fR(1M), \fBsharemgr\fR(1M), \fBsmbadm\fR(1M), \fBsmbd\fR(1M),
-\fBsmbstat\fR(1M), \fBsmb\fR(4), \fBattributes\fR(5)
diff --git a/usr/src/man/man4/smhba.conf.4 b/usr/src/man/man4/smhba.conf.4
deleted file mode 100644
index a960c3526f..0000000000
--- a/usr/src/man/man4/smhba.conf.4
+++ /dev/null
@@ -1,95 +0,0 @@
-'\" te
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
-.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SMHBA.CONF 4 "May 16, 2020"
-.SH NAME
-smhba.conf \- configuration file for the SMHBAAPI library
-.SH DESCRIPTION
-The \fB/etc/smhba.conf\fR file is used to specify the Vendor-Specific Libraries
-that are installed on the system. This file is used by the Common Library to
-load the individual VSLs when \fBHBA_LoadLibrary\fR(3HBAAPI) is called. If
-changes are made to the file while the library is in use, the library should be
-freed and reloaded. A version 1 VSL is compatible only with a version 1 Common
-Library. A version 2 VSL is compatible with both a version 1 and a version 2
-Common Library.
-.sp
-.LP
-Each VSL entry is a single line of the form:
-.sp
-.in +2
-.nf
-"name" "library path"
-.fi
-.in -2
-
-.sp
-.LP
-where:
-.sp
-.ne 2
-.na
-\fB\fIname\fR\fR
-.ad
-.RS 16n
-is the description of library. The library name should be prepended with the
-domain of the manufacturer of the library.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIlibrary path\fR\fR
-.ad
-.RS 16n
-is the absolute path to the shared object library file.
-.RE
-
-.SH EXAMPLES
-\fBExample 1 \fRContents of \fB/etc/smhba.conf\fR
-.sp
-.in +2
-.nf
-#
-# This file contains names and references to SM-HBA libraries
-#
-# Format:
-#
-# <library name> <library pathname>
-#
-# The library name should be prepended with the domain of
-# the manufacturer or driver author.
-com.sun.sashba /usr/lib/libsun_sas.so.1
-com.sun.sashba64 /usr/lib/64/libsun_sas.so.1
-.fi
-.in -2
-
-.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Committed
-_
-Standard T{
-ANSI INCITS 428 Storage Management Host Bus Adapter Application Programming Interface(SM-HBA)
-T}
-.TE
-
-.SH SEE ALSO
-\fBHBA_LoadLibrary\fR(3HBAAPI), \fBlibSMHBAAPI\fR(3LIB), \fBattributes\fR(5)
-.SH NOTES
-The SMHBAAPI library is provided in both 32-and 64-bit versions, but only one
-configuration file is specified. As a result, both 32- and 64-bit VSL libraries
-must be specified within the same file. When using the 32-bit Common Library,
-the 64-bit VSLs will fail to load. When using the 64-bit Common Library, the
-32-bit VSLs will fail to load. These failures are silently ignored by the
-Common Library during normal usage, but can result in warning messages when
-running client applications in a debugger.
diff --git a/usr/src/man/man4/sock2path.d.4 b/usr/src/man/man4/sock2path.d.4
deleted file mode 100644
index d7a5f188e3..0000000000
--- a/usr/src/man/man4/sock2path.d.4
+++ /dev/null
@@ -1,58 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SOCK2PATH.D 4 "Apr 12, 2014"
-.SH NAME
-sock2path.d \- socket mapping files that map sockets to transport providers
-.SH SYNOPSIS
-.LP
-.nf
-\fB/etc/sock2path.d\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fB/etc/sock2path.d\fR is a directory containing files with mappings
-between the \fBsocket\fR(3SOCKET) call parameters and the transport
-provider driver. The mapping file format is described in the
-\fBsoconfig\fR(1M) manual page.
-.sp
-.LP
-The \fBinit\fR(1M) utility uses the \fBsoconfig\fR utility with the
-\fBsock2path.d\fR directory during the boot sequence.
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRAn Example of a Mapping File
-.sp
-.LP
-The following is an example of a mapping file:
-
-.sp
-.in +2
-.nf
-# Family Type Protocol Module | Path
- 2 2 0 tcp
- 2 2 6 tcp
- 26 2 0 tcp
- 26 2 6 tcp
- 2 1 0 udp
- 2 1 17 udp
- 26 1 0 udp
- 26 1 17 udp
- 1 2 0 /dev/ticotsord
- 1 6 0 /dev/ticotsord
- 1 1 0 /dev/ticlts
- 2 4 0 icmp
- 26 4 0 icmp
- 24 4 0 rts
- 27 4 2 /dev/keysock
-.fi
-.in -2
-
-.SH SEE ALSO
-.sp
-.LP
-\fBinit\fR(1M), \fBsoconfig\fR(1M), \fBsocket\fR(3SOCKET)
diff --git a/usr/src/man/man4/space.4 b/usr/src/man/man4/space.4
deleted file mode 100644
index 7a3b61def2..0000000000
--- a/usr/src/man/man4/space.4
+++ /dev/null
@@ -1,77 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 1997, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SPACE 4 "Feb 7, 1997"
-.SH NAME
-space \- disk space requirement file
-.SH DESCRIPTION
-.sp
-.LP
-\fBspace\fR is an \fBASCII\fR file that gives information about disk space
-requirements for the target environment. The \fBspace\fR file defines space
-needed beyond what is used by objects defined in the \fBprototype\fR(4) file;
-for example, files which will be installed with the \fBinstallf\fR(1M) command.
-The \fBspace\fR file should define the maximum amount of additional space that
-a package will require.
-.sp
-.LP
-The generic format of a line in this file is:
-.sp
-.LP
-\fIpathname blocks inodes\fR
-.sp
-.LP
-Definitions for the fields are as follows:
-.sp
-.ne 2
-.na
-\fB\fIpathname\fR\fR
-.ad
-.RS 12n
-Specify a directory name which may or may not be the mount point for a
-filesystem. Names that do not begin with a slash ('\fB/\fR') indicate
-relocatable directories.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIblocks\fR\fR
-.ad
-.RS 12n
-Define the number of disk blocks required for installation of the files and
-directory entries contained in the pathname (using a 512-byte block size).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIinodes\fR\fR
-.ad
-.RS 12n
-Define the number of inodes required for installation of the files and
-directory entries contained in the pathname.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRA sample file.
-.sp
-.in +2
-.nf
-# extra space required by config data which is
-# dynamically loaded onto the system
-data 500 1
-.fi
-.in -2
-.sp
-
-.SH SEE ALSO
-.sp
-.LP
-\fBinstallf\fR(1M), \fBprototype\fR(4)
-.sp
-.LP
-\fIApplication Packaging Developer\&'s Guide\fR
diff --git a/usr/src/man/man4/sulog.4 b/usr/src/man/man4/sulog.4
deleted file mode 100644
index 62f7623da2..0000000000
--- a/usr/src/man/man4/sulog.4
+++ /dev/null
@@ -1,139 +0,0 @@
-'\" te
-.\" Copyright (c) 1994, Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SULOG 4 "Jun 6, 1994"
-.SH NAME
-sulog \- su command log file
-.SH SYNOPSIS
-.LP
-.nf
-\fB/var/adm/sulog\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBsulog\fR file is a record of all attempts by users on the system to
-execute the \fBsu\fR(1M) command. Each time \fBsu\fR(1M) is executed, an
-entry is added to the \fBsulog\fR file.
-.sp
-.LP
-Each entry in the \fBsulog\fR file is a single line of the form:
-.sp
-.in +2
-.nf
-\fBSU\fR \fBdate\fR \fBtime\fR
-\fIresult port user\fR\fB-\fR\fInewuser\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-where
-.sp
-.ne 2
-.na
-\fB\fBdate\fR\fR
-.ad
-.RS 11n
-The month and date \fBsu\fR(1M) was executed. \fBdate\fR is displayed in the
-form \fImm\fR\fB/\fR\fBdd\fR where \fImm\fR is the month number and \fBdd\fR
-is the day number in the month.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBtime\fR\fR
-.ad
-.RS 11n
-The time \fBsu\fR(1M) was executed. \fBtime\fR is displayed in the form
-\fIHH\fR\fB/\fR\fIMM\fR where \fIHH\fR is the hour number (24 hour system) and
-\fIMM\fR is the minute number.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIresult\fR\fR
-.ad
-.RS 11n
-The result of the \fBsu\fR(1M) command. A ` + ' sign is displayed in this
-field if the su attempt was successful; otherwise a ` - ' sign is displayed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIport\fR\fR
-.ad
-.RS 11n
-The name of the terminal device from which \fBsu\fR(1M) was executed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIuser\fR\fR
-.ad
-.RS 11n
-The user id of the user executing the \fBsu\fR(1M) command.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fInewuser\fR\fR
-.ad
-.RS 11n
-The user id being switched to with \fBsu\fR(1M).
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRA sample \fBsulog\fR file.
-.sp
-.LP
-Here is a sample \fBsulog\fR file:
-
-.sp
-.in +2
-.nf
-SU 02/25 09:29 + console root-sys
-SU 02/25 09:32 + pts/3 user1-root
-SU 03/02 08:03 + pts/5 user1-root
-SU 03/03 08:19 + pts/5 user1-root
-SU 03/09 14:24 - pts/5 guest3-root
-SU 03/09 14:24 - pts/5 guest3-root
-SU 03/14 08:31 + pts/4 user1-root
-.fi
-.in -2
-.sp
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/var/adm/sulog\fR\fR
-.ad
-.RS 19n
-su log file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/default/su\fR\fR
-.ad
-.RS 19n
-contains the default location of \fBsulog\fR
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBsu\fR(1M)
diff --git a/usr/src/man/man4/swap.4 b/usr/src/man/man4/swap.4
new file mode 100644
index 0000000000..0d2faddf6d
--- /dev/null
+++ b/usr/src/man/man4/swap.4
@@ -0,0 +1,92 @@
+.\"
+.\" This file and its contents are supplied under the terms of the
+.\" Common Development and Distribution License ("CDDL"), version 1.0.
+.\" You may only use this file in accordance with the terms of version
+.\" 1.0 of the CDDL.
+.\"
+.\" A full copy of the text of the CDDL should have accompanied this
+.\" source. A copy of the CDDL is also available via the Internet at
+.\" http://www.illumos.org/license/CDDL.
+.\"
+.\"
+.\" Copyright 2017, Joyent, Inc.
+.\"
+.Dd Aug 14, 2017
+.Dt SWAP 4
+.Os
+.Sh NAME
+.Nm swap
+.Nd swap space
+.Sh DESCRIPTION
+The operating system uses demand paging as the primary mechanism to implement
+virtual memory.
+The system can also use traditional swapping, wherein an entire process state
+is moved between physical memory and swap space on disk, but it is very rare
+for the system to actually swap an entire process out to disk.
+A system which is swapping does not have enough enough physical memory to
+support the workload on the machine.
+In this case, work should be reduced or more memory added.
+.Pp
+Given that the system rarely, if ever, swaps, but still has swap space
+configured, the question arises as to what this space is for?
+.Pp
+In a demand paged virtual memory system, every page mapped by a process is
+backed by some object.
+For the actual program code used by the process, the backing objects are the
+underlying files in the filesystem for the program's binary, and any
+dynamically linked libraries.
+The portions of a process that are not backed by a named file, including its
+stack and its heap, are called anonymous memory.
+The system uses the swap space as the backing store for these pages.
+When the system determines that it needs to page out one of the anonymous pages,
+the swap space is where that page is written.
+.Pp
+Unlike some other operating systems, illumos reserves the backing storage
+space for anonymous memory at the time of allocation.
+For example, if a process asks for more heap space, the total size of the
+swap allocation that may be required to store the new pages if they need to
+be paged out is reserved at that time.
+This does not mean that anything is written to the swap space, but simply that
+the space is reserved for the entire allocation.
+Thus, a process will always get a correct error from the
+.Xr sbrk 2
+system call if swap space is unavailable.
+Some other operating systems don't allocate backing store for anonymous memory
+until it is used, so the error handling when space is not available can be
+complex or problematic on those systems.
+.Pp
+The
+.Xr vmstat 8
+command can be used to monitor swap and paging activity.
+The
+.Xr pmap 1
+command can be used to inspect all of the mappings in a process address space,
+and their backing objects.
+The
+.Xr swap 8
+command can be used to monitor, add and remove swap space.
+.Pp
+The operating system provides the
+.Ql zone.max-swap
+resource control to limit the amount of
+anonymous memory used by all of the processes within a zone.
+This resource control can also be configured under the
+.Xr capped-memory 2
+setting for a zone.
+See the
+.Xr prctl 1
+and
+.Xr zonecfg 8
+man pages for information on setting this limit.
+The zone's usage against this resource control can be seen using the
+.Ql swapresv_zone_{zoneid}
+kstat.
+.Sh SEE ALSO
+.Xr pmap 1 ,
+.Xr prctl 1 ,
+.Xr sbrk 2 ,
+.Xr resource_controls 7 ,
+.Xr kstat 8 ,
+.Xr swap 8 ,
+.Xr vmstat 8 ,
+.Xr zonecfg 8
diff --git a/usr/src/man/man4/sysbus.4 b/usr/src/man/man4/sysbus.4
deleted file mode 100644
index 77970edacc..0000000000
--- a/usr/src/man/man4/sysbus.4
+++ /dev/null
@@ -1,126 +0,0 @@
-'\" te
-.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SYSBUS 4 "December 28, 2020"
-.SH NAME
-sysbus, isa \- device tree properties for ISA bus device drivers
-.SH DESCRIPTION
-Solaris for x86 supports the \fBISA\fR bus as the system bus. Drivers for
-devices on this bus use the device tree built by the booting system to
-retrieve the necessary system resources used by the driver. These resources
-include device I/O port addresses, any interrupt capabilities that the device
-can have, any DMA channels it can require, and any memory-mapped addresses it
-can occupy.
-.sp
-.LP
-Configuration files for \fBISA\fR device drivers are only necessary to describe
-properties used by a particular driver that are not part of the standard
-properties found in the device tree. See \fBdriver.conf\fR(4) for further
-details of configuration file syntax.
-.sp
-.LP
-The \fBISA\fR nexus drivers all belong to class \fBsysbus\fR. All bus drivers
-of class \fBsysbus\fR recognize the following properties:
-.sp
-.ne 2
-.na
-\fB\fBinterrupts\fR\fR
-.ad
-.RS 16n
-An arbitrary-length array where each element of the array represents a hardware
-interrupt (IRQ) that is used by the device. In general, this array only has
-one entry unless a particular device uses more than one IRQ.
-.sp
-Solaris defaults all \fBISA\fR interrupts to IPL 5. This interrupt priority
-can be overridden by placing an \fBinterrupt-priorities\fR property in a .conf
-file for the driver. Each entry in the array of integers for the
-\fBinterrupt-priorities\fR property is matched one-to-one with the elements in
-the \fBinterrupts\fR property to specify the \fBIPL\fR value that is used by
-the system for this interrupt in this driver. This is the priority that this
-device's interrupt handler receives relative to the interrupt handlers of other
-drivers. The priority is an integer from \fB1\fR to \fB16\fR. Generally,
-disks are assigned a priority of \fB5\fR, while mice and printers are lower,
-and serial communication devices are higher, typically \fB7\fR. \fB10\fR is
-reserved by the system and must not be used. Priorities \fB11\fR and greater
-are high level priorities and are generally not recommended (see
-\fBddi_intr_hilevel\fR(9F)).
-.sp
-The driver can refer to the elements of this array by index using
-\fBddi_add_intr\fR(9F). The index into the array is passed as the
-\fIinumber\fR argument of \fBddi_add_intr()\fR.
-.sp
-Only devices that generate interrupts have an \fBinterrupts\fR property.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBreg\fR\fR
-.ad
-.RS 16n
-An arbitrary-length array where each element of the array consists of a 3-tuple
-of integers. Each array element describes a contiguous memory address range
-associated with the device on the bus.
-.sp
-The first integer of the tuple specifies the memory type, \fB0\fR specifies a
-memory range and \fB1\fR specifies an I/O range. The second integer specifies
-the base address of the memory range. The third integer of each 3-tuple
-specifies the size, in bytes, of the mappable region.
-.sp
-The driver can refer to the elements of this array by index, and construct
-kernel mappings to these addresses using \fBddi_map_regs\fR(9F). The index into
-the array is passed as the \fIrnumber\fR argument of \fBddi_map_regs()\fR.
-.sp
-All \fBsysbus\fR devices have \fBreg\fR properties. The first tuple of this
-property is used to construct the address part of the device name under
-\fB/devices\fR. In the case of \fBPlug and Play ISA\fR devices, the first tuple
-is a special tuple that does not denote a memory range, but is used by the
-system only to create the address part of the device name. This special tuple
-can be recognized by determining if the top bit of the first integer is set to
-a one.
-.sp
-The order of the tuples in the reg property is determined by the boot system
-probe code and depends on the characteristics of each particular device.
-However, the reg property maintains the same order of entries from system boot
-to system boot. The recommended way to determine the reg property for a
-particular device is to use the \fBprtconf\fR(1M) command after installing the
-particular device. The output of the \fBprtconf\fR command can be examined to
-determine the reg property for any installed device.
-.sp
-You can use the \fBddi_get*\fR and \fBddi_put*\fR family of functions to access
-register space from a high-level interrupt context.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdma-channels\fR\fR
-.ad
-.RS 16n
-A list of integers that specifies the DMA channels used by this device. Only
-devices that use DMA channels have a \fBdma-channels\fR property.
-.RE
-
-.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture x86
-.TE
-
-.SH SEE ALSO
-\fBprtconf\fR(1M), \fBdriver.conf\fR(4), \fBscsi\fR(4), \fBattributes\fR(5),
-\fBddi_add_intr\fR(9F), \fBddi_intr_hilevel\fR(9F), \fBddi_map_regs\fR(9F),
-\fBddi_prop_op\fR(9F)
-.sp
-.LP
-\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man4/syslog.conf.4 b/usr/src/man/man4/syslog.conf.4
deleted file mode 100644
index 7dcc4f5731..0000000000
--- a/usr/src/man/man4/syslog.conf.4
+++ /dev/null
@@ -1,424 +0,0 @@
-'\" te
-.\" Copyright (c) 2013 Gary Mills
-.\" Copyright (c) 2003 Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright (c) 1983 Regents of the University of California. All rights reserved. The Berkeley software License Agreement specifies the terms and conditions for redistribution.
-.TH SYSLOG.CONF 4 "Nov 19, 2013"
-.SH NAME
-syslog.conf \- configuration file for syslogd system log daemon
-.SH SYNOPSIS
-.LP
-.nf
-\fB/etc/syslog.conf\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-The file \fB/etc/syslog.conf\fR contains information used by the system log
-daemon, \fBsyslogd\fR(1M), to forward a system message to appropriate log files
-and/or users. \fBsyslogd\fR preprocesses this file through \fBm4\fR(1) to
-obtain the correct information for certain log files, defining \fBLOGHOST\fR if
-the address of "loghost" is the same as one of the addresses of the host that
-is running \fBsyslogd\fR.
-.sp
-.LP
-A configuration entry is composed of two TAB-separated fields:
-.sp
-.in +2
-.nf
-\fIselector action\fR
-.fi
-.in -2
-
-.sp
-.LP
-The \fIselector\fR field contains a semicolon-separated list of priority
-specifications of the form:
-.sp
-.in +2
-.nf
-\fIfacility\fR\fB\&.\fR\fIlevel\fR [ \fB;\fR \fIfacility\fR\fB\&.\fR\fIlevel\fR ]
-.fi
-.in -2
-
-.sp
-.LP
-where \fIfacility\fR is a system facility, or comma-separated list of
-facilities, and \fIlevel\fR is an indication of the severity of the condition
-being logged.
-The presence of a facility name only implies that it is available.
-Each individual service determines which facility it will use for logging.
-In particular, many facilities are only useful for \fBsyslog\fR messages
-that are forwarded from other operating systems.
-Recognized values for \fIfacility\fR include:
-.sp
-.ne 2
-.na
-\fB\fBkern\fR\fR
-.ad
-.RS 12n
-Messages generated by the kernel.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBuser\fR\fR
-.ad
-.RS 12n
-Messages generated by user processes. This is the default priority for messages
-from programs or facilities not listed in this file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmail\fR\fR
-.ad
-.RS 12n
-The mail system.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdaemon\fR\fR
-.ad
-.RS 12n
-Various system daemons.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBauth\fR\fR
-.ad
-.RS 12n
-The authorization system: \fBlogin\fR(1), \fBsu\fR(1M), \fBgetty\fR(1M), among
-others.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBlpr\fR\fR
-.ad
-.RS 12n
-The line printer spooling system: \fBlpr\fR(1B), \fBlpc\fR(1B), among others.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnews\fR\fR
-.ad
-.RS 12n
-Designated for the USENET network news system.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBuucp\fR\fR
-.ad
-.RS 12n
-Designated for the UUCP system; it does not currently use the \fBsyslog\fR
-mechanism.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBaltcron\fR\fR
-.ad
-.RS 12n
-Designated for the BSD cron/at system.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBauthpriv\fR\fR
-.ad
-.RS 12n
-Designated for the BSD security/authorization system.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBftp\fR\fR
-.ad
-.RS 12n
-Designated for the file transfer system.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBntp\fR\fR
-.ad
-.RS 12n
-Designated for the network time system.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBaudit\fR\fR
-.ad
-.RS 12n
-Designated for audit messages generated by systems that audit by means of
-syslog.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBconsole\fR\fR
-.ad
-.RS 12n
-Designated for the BSD console system.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcron\fR\fR
-.ad
-.RS 12n
-Designated for \fBcron\fR/\fBat\fR messages generated by systems that do
-logging through \fBsyslog\fR.
-The current versions of \fBcron\fR and \fBat\fR do not use this facility
-for logging.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBlocal0-7\fR\fR
-.ad
-.RS 12n
-Designated for local use.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmark\fR\fR
-.ad
-.RS 12n
-For timestamp messages produced internally by \fBsyslogd\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB*\fR\fR
-.ad
-.RS 12n
-An asterisk indicates all facilities except for the \fBmark\fR facility.
-.RE
-
-.sp
-.LP
-Recognized values for \fIlevel\fR are (in descending order of severity):
-.sp
-.ne 2
-.na
-\fB\fBemerg\fR\fR
-.ad
-.RS 11n
-For panic conditions that would normally be broadcast to all users.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBalert\fR\fR
-.ad
-.RS 11n
-For conditions that should be corrected immediately, such as a corrupted system
-database.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcrit\fR\fR
-.ad
-.RS 11n
-For warnings about critical conditions, such as hard device errors.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBerr\fR\fR
-.ad
-.RS 11n
-For other errors.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBwarning\fR\fR
-.ad
-.RS 11n
-For warning messages.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnotice\fR\fR
-.ad
-.RS 11n
-For conditions that are not error conditions, but may require special handling.
-A configuration entry with a \fIlevel\fR value of \fBnotice\fR must appear on a
-separate line.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBinfo\fR\fR
-.ad
-.RS 11n
-Informational messages.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdebug\fR\fR
-.ad
-.RS 11n
-For messages that are normally used only when debugging a program.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnone\fR\fR
-.ad
-.RS 11n
-Do not send messages from the indicated \fIfacility\fR to the selected file.
-For example, a \fIselector\fR of
-.sp
-\fB*.debug;mail.none\fR
-.sp
-sends all messages \fIexcept\fR mail messages to the selected file.
-.RE
-
-.sp
-.LP
-For a given \fIfacility\fR and \fIlevel\fR, \fBsyslogd\fR matches all messages
-for that level and all higher levels. For example, an entry that specifies a
-level of \fBcrit\fR also logs messages at the \fBalert\fR and \fBemerg\fR
-levels.
-.sp
-.LP
-The \fIaction\fR field indicates where to forward the message. Values for this
-field can have one of four forms:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-A filename, beginning with a leading slash, which indicates that messages
-specified by the \fIselector\fR are to be written to the specified file. The
-file is opened in append mode if it exists. If the file does not exist, logging
-silently fails for this action.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The name of a remote host, prefixed with an \fB@\fR, as with:
-\fB@\fR\fIserver\fR, which indicates that messages specified by the
-\fIselector\fR are to be forwarded to the \fBsyslogd\fR on the named host. The
-hostname "loghost" is treated, in the default \fBsyslog.conf\fR, as the
-hostname given to the machine that logs \fBsyslogd\fR messages. Every machine
-is "loghost" by default, per the hosts database. It is also possible to specify
-one machine on a network to be "loghost" by, literally, naming the machine
-"loghost". If the local machine is designated to be "loghost", then
-\fBsyslogd\fR messages are written to the appropriate files. Otherwise, they
-are sent to the machine "loghost" on the network.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-A comma-separated list of usernames, which indicates that messages specified by
-the \fIselector\fR are to be written to the named users if they are logged in.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-An asterisk, which indicates that messages specified by the \fIselector\fR are
-to be written to all logged-in users.
-.RE
-.sp
-.LP
-Blank lines are ignored. Lines for which the first nonwhite character is
-a '\fB#\fR' are treated as comments.
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRA Sample Configuration File
-.sp
-.LP
-With the following configuration file:
-
-.sp
-
-.sp
-.TS
-l l
-l l .
-\fB*.notice\fR \fB/var/log/notice\fR
-\fBmail.info\fR \fB/var/log/notice\fR
-\fB*.crit\fR \fB/var/log/critical\fR
-\fBkern,mark.debug\fR \fB/dev/console\fR
-\fBkern.err\fR \fB@server\fR
-\fB*.emerg\fR \fB*\fR
-\fB*.alert\fR \fBroot,operator\fR
-\fB*.alert;auth.warning\fR \fB/var/log/auth\fR
-.TE
-
-.sp
-.LP
-\fBsyslogd\fR(1M) logs all mail system messages except \fBdebug\fR messages and
-all \fBnotice\fR (or higher) messages into a file named \fB/var/log/notice\fR.
-It logs all critical messages into \fB/var/log/critical\fR, and all kernel
-messages and 20-minute marks onto the system console.
-
-.sp
-.LP
-Kernel messages of \fBerr\fR (error) severity or higher are forwarded to the
-machine named \fBserver\fR. Emergency messages are forwarded to all users. The
-users \fBroot\fR and \fBoperator\fR are informed of any \fBalert\fR messages.
-All messages from the authorization system of \fBwarning\fR level or higher are
-logged in the file \fB/var/log/auth\fR.
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Stable
-.TE
-
-.SH SEE ALSO
-.LP
-\fBat\fR(1), \fBcrontab\fR(1), \fBlogger\fR(1), \fBlogin\fR(1), \fBlp\fR(1),
-\fBlpc\fR(1B), \fBlpr\fR(1B), \fBm4\fR(1), \fBcron\fR(1M), \fBgetty\fR(1M),
-\fBin.ftpd\fR(1M), \fBsu\fR(1M), \fBsyslogd\fR(1M), \fBsyslog\fR(3C),
-\fBhosts\fR(4), \fBattributes\fR(5)
diff --git a/usr/src/man/man4/system.4 b/usr/src/man/man4/system.4
deleted file mode 100644
index 7420c833ba..0000000000
--- a/usr/src/man/man4/system.4
+++ /dev/null
@@ -1,366 +0,0 @@
-'\" te
-.\" Copyright (c) 2003 Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 2016 Hans Rosenfeld <rosenfeld@grumpf.hope-2000.org>
-.\" Copyright 2019 OmniOS Community Edition (OmniOSce) Association.
-.\" Copyright 2019 Peter Tribble
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SYSTEM 4 "Apr 20, 2019"
-.SH NAME
-system \- system configuration information file
-.SH DESCRIPTION
-.LP
-The \fBsystem\fR file is used for customizing the operation of the operating
-system kernel. The recommended procedure is to preserve the original
-\fBsystem\fR file before modifying it.
-.sp
-.LP
-It is not recommended to edit the \fB/etc/system\fR file directly but rather
-to deliver configuration fragments into files under \fB/etc/system.d\fR;
-files in this directory are combined in alphabetical order and read by the
-kernel before \fB/etc/system\fR is processed. Directives in \fB/etc/system\fR
-therefore take precedence over any settings delivered in fragment files.
-.sp
-.LP
-The recommended naming schema for the fragment files is to use the name of
-the package which is delivering the file with '\fB/\fR' characters replaced
-by '\fB:\fR'; file names that start with a dot (\fB.\fR) will be ignored.
-.sp
-.LP
-If \fB/etc/system.d/\fR exists and contains any fragment files,
-then the directory must also be writable or it will not be possible to
-create or update the system boot archive.
-.sp
-.LP
-The \fBsystem\fR file contains commands which are read by the kernel during
-initialization and used to customize the operation of your system. These
-commands are useful for modifying the system's treatment of its loadable kernel
-modules.
-.sp
-.LP
-The syntax of the \fBsystem\fR file consists of a list of keyword/value pairs
-which are recognized by the system as valid commands. Comment lines must begin
-with an asterisk (\fB*\fR) or a hash mark (\fB#\fR) and end with a newline
-character. All commands are case-insensitive except where noted.
-.sp
-.LP
-Commands that modify the system's operation with respect to loadable kernel
-modules require you to specify the module type by listing the module's
-namespace. The following namespaces are currently supported on all platforms:
-.sp
-.ne 2
-.na
-\fB\fBdrv\fR\fR
-.ad
-.RS 10n
-Modules in this namespace are device drivers.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBexec\fR\fR
-.ad
-.RS 10n
-Modules in this namespace are execution format modules. The following
-\fBexec\fR modules are currently provided:
-.sp
-.ne 2
-.na
-\fBOnly on SPARC systems:\fR
-.ad
-.RS 28n
-.sp
-.in +2
-.nf
-aoutexec
-.fi
-.in -2
-.sp
-
-.RE
-
-.sp
-.ne 2
-.na
-\fBOn SPARC and IA systems:\fR
-.ad
-.RS 28n
-.sp
-.in +2
-.nf
-elfexec
-intpexec
-javaexec
-.fi
-.in -2
-.sp
-
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfirmware\fR\fR
-.ad
-.RS 10n
-Raw firmware images in subdirectories, one for each device driver
-module using \fBfirmload\fR(9F).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfs\fR\fR
-.ad
-.RS 10n
-These modules are filesystems.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsched\fR\fR
-.ad
-.RS 10n
-These modules implement a process scheduling algorithm.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBstrmod\fR\fR
-.ad
-.RS 10n
-These modules are \fBSTREAMS\fR modules.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsys\fR\fR
-.ad
-.RS 10n
-These modules implement loadable system-call modules.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmisc\fR\fR
-.ad
-.RS 10n
-These modules do not fit into any of the above categories, so are considered
-"miscellaneous" modules.
-.RE
-
-.sp
-.LP
-SPARC only:
-.sp
-.ne 2
-.na
-\fB\fBdacf\fR\fR
-.ad
-.RS 8n
-These modules provide rules and actions for device auto-configuration.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBtod\fR\fR
-.ad
-.RS 8n
-These modules provide support for the time of day hardware.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcpu\fR\fR
-.ad
-.RS 8n
-These modules provide \fBCPU\fR-specific kernel routines.
-.RE
-
-.sp
-.LP
-A description of each of the supported commands follows:
-.sp
-.ne 2
-.na
-\fB\fBexclude:\fR <\fInamespace\fR>/<\fImodulename\fR>\fR
-.ad
-.sp .6
-.RS 4n
-Do not allow the listed loadable kernel module to be loaded. \fBexclude\fR
-commands are cumulative; the list of modules to \fBexclude\fR is created by
-combining every \fBexclude\fR entry in the \fBsystem\fR file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBinclude:\fR <\fInamespace\fR>/<\fImodulename\fR>\fR
-.ad
-.sp .6
-.RS 4n
-Include the listed loadable kernel module. This is the system's default, so
-using \fBinclude\fR does not modify the system's operation. \fBinclude\fR
-commands are cumulative.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBforceload:\fR <\fInamespace\fR>/<\fImodulename\fR>\fR
-.ad
-.sp .6
-.RS 4n
-Force this kernel module to be loaded during kernel initialization. The default
-action is to automatically load the kernel module when its services are first
-accessed. \fBforceload\fR commands are cumulative.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrootdev:\fR <\fIdevice name\fR>\fR
-.ad
-.sp .6
-.RS 4n
-Set the root device to the listed value instead of using the default root
-device as supplied by the boot program.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrootfs:\fR <\fIroot filesystem type\fR>\fR
-.ad
-.sp .6
-.RS 4n
-Set the root filesystem type to the listed value.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmoddir:\fR <\fIfirst module path\fR>[[{:, }<\fIsecond ...\fR>]...]\fR
-.ad
-.sp .6
-.RS 4n
-Set the search path for loadable kernel modules. This command operates very
-much like the \fBPATH\fR shell variable. Multiple directories to search can be
-listed together, delimited either by blank spaces or colons.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBset\fR [\fI<module>\fR:]\fI<symbol>\fR {=, |, &} [~][-]\fI<value>\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set an integer or character pointer in the kernel or in the selected kernel
-module to a new value. This command is used to change kernel and module
-parameters and thus modify the operation of your system. Assignment operations
-are not cumulative, whereas bitwise \fBAND\fR and \fBOR\fR operations are
-cumulative.
-.sp
-Operations that are supported for modifying integer variables are: simple
-assignment, inclusive bitwise \fBOR,\fR bitwise \fBAND,\fR one's complement,
-and negation. Variables in a specific loadable module can be targeted for
-modification by specifying the variable name prefixed with the kernel module
-name and a colon (:) separator. Values can be specified as hexadecimal (0x10),
-Octal (046), or Decimal (5).
-.sp
-The only operation supported for modifying character pointers is simple
-assignment. Static string data such as character arrays cannot be modified
-using the \fBset\fR command. Use care and ensure that the variable you are
-modifying is in fact a character pointer. The \fBset\fR command is very
-powerful, and will likely cause problems if used carelessly. The following
-escape sequences are supported within the quoted string:
-.sp
-.in +2
-.nf
-\en (newline)
-\et (tab)
-\eb (backspace)
-.fi
-.in -2
-.sp
-
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRA sample \fBsystem\fR file.
-.sp
-.LP
-The following is a sample \fBsystem\fR file.
-
-.sp
-.in +2
-.nf
-* Force the ELF exec kernel module to be loaded during kernel
-* initialization. Execution type modules are in the exec namespace.
-forceload: exec/elfexec
-* Change the root device to /sbus@1,f8000000/esp@0,800000/sd@3,0:a.
-* You can derive root device names from /devices.
-* Root device names must be the fully expanded Open Boot Prom
-* device name. This command is platform and configuration specific.
-* This example uses the first partition (a) of the SCSI disk at
-* SCSI target 3 on the esp host adapter in slot 0 (on board)
-* of the SBus of the machine.
-* Adapter unit-address 3,0 at sbus unit-address 0,800000.
-rootdev: /sbus@1,f8000000/esp@0,800000/sd@3,0:a
-* Set the filesystem type of the root to ufs. Note that
-* the equal sign can be used instead of the colon.
-rootfs:ufs
-* Set the search path for kernel modules to look first in
-* /usr/phil/mod_test for modules, then in /kernel/modules (the
-* default) if not found. Useful for testing new modules.
-* Note that you can delimit your module pathnames using
-* colons instead of spaces: moddir:/newmodules:/kernel/modules
-moddir:/usr/phil/mod_test /kernel/modules.
-* Set the configuration option {_POSIX_CHOWN_RESTRICTED} :
-* This configuration option is enabled by default.
-set rstchown = 1
-* Disable the configuration option {_POSIX_CHOWN_RESTRICTED} :
-set rstchown = 0
-* Turn on debugging messages in the modules mydriver. This is useful
-* during driver development.
-set mydriver:debug = 1
-* Bitwise AND the kernel variable "moddebug" with the
-* one's complement of the hex value 0x880, and set
-* "moddebug" to this new value.
-set moddebug & ~0x880
-* Demonstrate the cumulative effect of the SET
-* bitwise AND/OR operations by further modifying "moddebug"
-* by ORing it with 0x40.
-set moddebug | 0x40
-.fi
-.in -2
-.sp
-
-.SH SEE ALSO
-.LP
-\fBboot\fR(1M), \fBinit\fR(1M), \fBkernel\fR(1M)
-.SH WARNINGS
-.LP
-Use care when modifying the \fBsystem\fR file; it modifies the operation of the
-kernel. If you preserved the original \fBsystem\fR file, you can boot using
-\fBboot -a\fR, which will ask you to specify the path to the saved file. This
-should allow the system to boot correctly. If you cannot locate a \fBsystem\fR
-file that will work, you may specify \fB/dev/null\fR. This acts as an empty
-\fBsystem\fR file, and the system will attempt to boot using its default
-settings.
-.SH NOTES
-.LP
-The \fBsystem\fR files are read only once, at boot time.
diff --git a/usr/src/man/man4/term.4 b/usr/src/man/man4/term.4
deleted file mode 100644
index dbf0b42b19..0000000000
--- a/usr/src/man/man4/term.4
+++ /dev/null
@@ -1,218 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 1996, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH TERM 4 "Jul 3, 1996"
-.SH NAME
-term \- format of compiled term file
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/share/lib/terminfo/?/*\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBterm\fR file is compiled from \fBterminfo\fR(4) source files using
-\fBtic\fR(1M). Compiled files are organized in a directory hierarchy under the
-first letter of each terminal name. For example, the \fBvt100\fR file would
-have the pathname \fB/usr/lib/terminfo/v/vt100\fR. The default directory is
-\fB/usr/share/lib/terminfo\fR. Synonyms for the same terminal are implemented
-by multiple links to the same compiled file.
-.sp
-.LP
-The format has been chosen so that it is the same on all hardware. An 8-bit
-byte is assumed, but no assumptions about byte ordering or sign extension are
-made. Thus, these binary \fBterminfo\fR files can be transported to other
-hardware with 8-bit bytes.
-.sp
-.LP
-Short integers are stored in two 8-bit bytes. The first byte contains the least
-significant 8 bits of the value, and the second byte contains the most
-significant 8 bits. (Thus, the value represented is
-256*\fIsecond\fR+\fIfirst\fR.) The value \fB\(mi1\fR is represented by
-\fB0377,0377\fR, and the value \fB\(mi2\fR is represented by \fB0376,0377\fR;
-other negative values are illegal. The \fB\(mi1\fR generally means that a
-capability is missing from this terminal. The \fB\(mi2\fR means that the
-capability has been cancelled in the \fBterminfo\fR source and also is to be
-considered missing.
-.sp
-.LP
-The compiled file is created from the source file descriptions of the terminals
-(see the \fB-I\fR option of \fBinfocmp\fR) by using the \fBterminfo\fR
-compiler, \fBtic\fR, and read by the routine \fBsetupterm\fR (see
-\fBcurses\fR(3CURSES)). The file is divided into six parts in the following
-order: the header, terminal names, boolean flags, numbers, strings, and string
-table.
-.sp
-.LP
-The header section begins the file six short integers in the format described
-below. These integers are:
-.RS +4
-.TP
-1.
-the magic number (octal \fB0432\fR);
-.RE
-.RS +4
-.TP
-2.
-the size, in bytes, of the names section;
-.RE
-.RS +4
-.TP
-3.
-the number of bytes in the boolean section
-.RE
-.RS +4
-.TP
-4.
-the number of short integers in the numbers section;
-.RE
-.RS +4
-.TP
-5.
-the number of offsets (short integers) in the strings section;
-.RE
-.RS +4
-.TP
-6.
-the size, in bytes, of the string table.
-.RE
-.sp
-.LP
-The terminal name section comes next. It contains the first line of the
-\fBterminfo\fR description, listing the various names for the terminal,
-separated by the bar ( | ) character (see \fBterm\fR(5)). The section is
-terminated with an \fBASCII NUL\fR character.
-.sp
-.LP
-The terminal name section is followed by the Boolean section, number section,
-string section, and string table.
-.sp
-.LP
-The boolean flags section consists of one byte for each flag. This byte is
-either \fB0\fR or \fB1\fR as the flag is present or absent. The value of
-\fB2\fR means that the flag has been cancelled. The capabilities are in the
-same order as the file <\fBterm.h\fR>.
-.sp
-.LP
-Between the boolean flags section and the number section, a null byte is
-inserted, if necessary, to ensure that the number section begins on an even
-byte offset. All short integers are aligned on a short word boundary.
-.sp
-.LP
-The numbers section is similar to the boolean flags section. Each capability
-takes up two bytes, and is stored as a short integer. If the value represented
-is \fB\(mi1\fR or \fB\(mi2\fR, the capability is taken to be missing.
-.sp
-.LP
-The strings section is also similar. Each capability is stored as a short
-integer, in the format above. A value of \fB\(mi1\fR or \fB\(mi2\fR means the
-capability is missing. Otherwise, the value is taken as an offset from the
-beginning of the string table. Special characters in ^X or \ec notation are
-stored in their interpreted form, not the printing representation. Padding
-information ($<nn>) and parameter information (%x) are stored intact in
-uninterpreted form.
-.sp
-.LP
-The final section is the string table. It contains all the values of string
-capabilities referenced in the string section. Each string is null terminated.
-.sp
-.LP
-Note that it is possible for \fBsetupterm\fR to expect a different set of
-capabilities than are actually present in the file. Either the database may
-have been updated since \fBsetupterm\fR has been recompiled (resulting in extra
-unrecognized entries in the file) or the program may have been recompiled more
-recently than the database was updated (resulting in missing entries). The
-routine \fBsetupterm\fR must be prepared for both possibilities\(emthis is why
-the numbers and sizes are included. Also, new capabilities must always be added
-at the end of the lists of boolean, number, and string capabilities.
-.sp
-.LP
-As an example, here is terminal information on the AT&T Model 37 KSR terminal
-as output by the \fBinfocmp \fR\fB-I\fR\fB tty37\fR command:
-.sp
-.in +2
-.nf
-37|tty37|AT&T model 37 teletype,
- hc, os, xon,
- bel=^G, cr=\er, cub1=\eb, cud1=\en, cuu1=\eE7, hd=\eE9,
- hu=\eE8, ind=\en,
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The following is an octal dump of the corresponding \fBterm\fR file, produced
-by the \fBod -c /usr/share/lib/terminfo/t/tty37\fR command:
-.sp
-.in +2
-.nf
-0000000 032 001 \e0 032 \e0 013 \e0 021 001 3 \e0 3 7 | t
-0000020 t y 3 7 | A T & T m o d e l
-0000040 3 7 t e l e t y p e \e0 \e0 \e0 \e0 \e0
-0000060 \e0 \e0 \e0 001 \e0 \e0 \e0 \e0 \e0 \e0 \e0 001 \e0 \e0 \e0 \e0
-0000100 001 \e0 \e0 \e0 \e0 \e0 377 377 377 377 377 377 377 377 377 377
-0000120 377 377 377 377 377 377 377 377 377 377 377 377 377 377 & \e0
-0000140 \e0 377 377 377 377 377 377 377 377 377 377 377 377 377 377
-0000160 377 377 " \e0 377 377 377 377 ( \e0 377 377 377 377 377 377
-0000200 377 377 0 \e0 377 377 377 377 377 377 377 377 - \e0 377 377
-0000220 377 377 377 377 377 377 377 377 377 377 377 377 377 377 377 377
- *
-0000520 377 377 377 377 377 377 377 377 377 377 377 377 377 377 $ \e0
-0000540 377 377 377 377 377 377 377 377 377 377 377 377 377 377 * \e0
-0000560 377 377 377 377 377 377 377 377 377 377 377 377 377 377 377 377
- *
-0001160 377 377 377 377 377 377 377 377 377 377 377 377 377 377 3 7
-0001200 | t t y 3 7 | A T & T m o d e
-0001220 l 3 7 t e l e t y p e \e0 \er \e0
-0001240 \en \e0 \en \e0 007 \e0 \eb \e0 033 8 \e0 033 9 \e0 033 7
-0001260 \e0 \e0
-0001261
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Some limitations: total compiled entries cannot exceed 4096 bytes; all entries
-in the name field cannot exceed 128 bytes.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/usr/share/lib/terminfo/?/*\fR\fR
-.ad
-.sp .6
-.RS 4n
-compiled terminal description database
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/include/term.h\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBterminfo\fR header
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/xpg4/include/term.h\fR\fR
-.ad
-.sp .6
-.RS 4n
-X/Open Curses \fBterminfo\fR header
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBinfocmp\fR(1M), \fBcurses\fR(3CURSES), \fBcurses\fR(3XCURSES),
-\fBterminfo\fR(4), \fBterm\fR(5)
diff --git a/usr/src/man/man4/terminfo.4 b/usr/src/man/man4/terminfo.4
deleted file mode 100644
index 1666d8e3f9..0000000000
--- a/usr/src/man/man4/terminfo.4
+++ /dev/null
@@ -1,2917 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T
-.\" Copyright (c) 1996, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH TERMINFO 4 "June 20, 2021"
-.SH NAME
-terminfo \- terminal and printer capability database
-.SH SYNOPSIS
-.nf
-\fB/usr/share/lib/terminfo/?/*\fR
-.fi
-
-.SH DESCRIPTION
-The \fBterminfo\fR database describes the capabilities of devices such as
-terminals and printers. Devices are described in \fBterminfo\fR source files by
-specifying a set of capabilities, by quantifying certain aspects of the device,
-and by specifying character sequences that affect particular results. This
-database is often used by screen oriented applications such as \fBvi\fR and
-\fBcurses\fR-based programs, as well as by some system commands such as
-\fBls\fR and \fBmore\fR. This usage allows them to work with a variety of
-devices without changes to the programs.
-.sp
-.LP
-\fBterminfo\fR descriptions are located in the directory pointed to by the
-environment variable \fBTERMINFO\fR or in \fB/usr/share/lib/terminfo\fR.
-\fBterminfo\fR descriptions are generated by \fBtic\fR(1M).
-.sp
-.LP
-\fBterminfo\fR source files consist of one or more device descriptions. Each
-description consists of a header (beginning in column 1) and one or more lines
-that list the features for that particular device. Every line in a
-\fBterminfo\fR source file must end in a comma (\fB,\fR). Every line in a
-\fBterminfo\fR source file except the header must be indented with one or more
-white spaces (either spaces or tabs).
-.sp
-.LP
-Entries in \fBterminfo\fR source files consist of a number of comma-separated
-fields. White space after each comma is ignored. Embedded commas must be
-escaped by using a backslash. Each device entry has the following format:
-.sp
-.in +2
-.nf
-\fBalias\fR1 | \fBalias\fR2 | .\|.\|. | \fBalias\fRn | \fIfullname\fR,
- capability1, \fIcapability\fR2,
- .
- .
- .
- \fIcapability\fRn,
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The first line, commonly referred to as the header line, must begin in column
-one and must contain at least two aliases separated by vertical bars. The last
-field in the header line must be the long name of the device and it may
-contain any string. Alias names must be unique in the \fBterminfo\fR database
-and they must conform to system file naming conventions. See \fBtic\fR(1M).
-They cannot, for example, contain white space or slashes.
-.sp
-.LP
-Every device must be assigned a name, such as "vt100". Device names (except the
-long name) should be chosen using the following conventions. The name should
-not contain hyphens because hyphens are reserved for use when adding suffixes
-that indicate special modes.
-.sp
-.LP
-These special modes may be modes that the hardware can be in, or user
-preferences. To assign a special mode to a particular device, append a suffix
-consisting of a hyphen and an indicator of the mode to the device name. For
-example, the \fB-w\fR suffix means "wide mode". When specified, it allows for a
-width of 132 columns instead of the standard 80 columns. Therefore, if you want
-to use a "vt100" device set to wide mode, name the device "vt100-w". Use the
-following suffixes where possible.
-.sp
-
-.sp
-.TS
-l l l l
-l l l l .
- Suffix Meaning Example
- \fB-w\fR Wide mode (more than 80 columns) \fB5410-w\fR
- \fB-am\fR With auto. margins (usually default) \fBvt100-am\fR
- \fB-nam\fR Without automatic margins \fBvt100-nam\fR
- \fI-n\fR Number of lines on the screen \fB2300-40\fR
- \fB-na\fR No arrow keys (leave them in local) \fBc100-na\fR
- -\fIn\fRp Number of pages of memory \fBc100-4p\fR
- \fB-rv\fR Reverse video \fB4415-rv\fR
-.TE
-
-.sp
-.LP
-The \fBterminfo\fR reference manual page is organized in two sections:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBPART 1: DEVICE CAPABILITIES\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBPART 2: PRINTER CAPABILITIES\fR
-.RE
-.SS "PART 1: DEVICE CAPABILITIES"
-Capabilities in \fBterminfo\fR are of three types: Boolean capabilities (which
-show that a device has or does not have a particular feature), numeric
-capabilities (which quantify particular features of a device), and string
-capabilities (which provide sequences that can be used to perform particular
-operations on devices).
-.sp
-.LP
-In the following table, a \fBVariable\fR is the name by which a \fBC\fR
-programmer accesses a capability (at the \fBterminfo\fR level). A \fBCapname\fR
-is the short name for a capability specified in the \fBterminfo\fR source file.
-It is used by a person updating the source file and by the \fBtput\fR command.
-A \fBTermcap Code\fR is a two-letter sequence that corresponds to the
-\fBtermcap\fR capability name. (Note that \fBtermcap\fR is no longer
-supported.)
-.sp
-.LP
-Capability names have no real length limit, but an informal limit of five
-characters has been adopted to keep them short. Whenever possible, capability
-names are chosen to be the same as or similar to those specified by the ANSI
-X3.64-1979 standard. Semantics are also intended to match those of the ANSI
-standard.
-.sp
-.LP
-All string capabilities listed below may have padding specified, with the
-exception of those used for input. Input capabilities, listed under the
-\fBStrings\fR section in the following tables, have names beginning with
-\fBkey_\fR. The \fB#i\fR symbol in the description field of the following
-tables refers to the \fIi\fRth parameter.
-.SS "Booleans"
-.in +2
-.nf
-________________________________________________________________
- Cap- Termcap
-Variable name Code Description
-________________________________________________________________
-
-auto_left_margin bw bw cub1 wraps from column 0 to
- last column
-auto_right_margin am am Terminal has automatic margins
-back_color_erase bce be Screen erased with background
- color
-can_change ccc cc Terminal can re-define existing
- color
-ceol_standout_glitch xhp xs Standout not erased by
- overwriting (hp)
-col_addr_glitch xhpa YA Only positive motion
- for hpa/mhpa caps
-cpi_changes_res cpix YF Changing character pitch
- changes resolution
-cr_cancels_micro_mode crxm YB Using cr turns off micro mode
-dest_tabs_magic_smso xt xt Destructive tabs, magic
- smso char (t1061)
-eat_newline_glitch xenl xn Newline ignored after
- 80 columns (Concept)
-erase_overstrike eo eo Can erase overstrikes with a
- blank
-generic_type gn gn Generic line type
- (for example, dialup, switch)
-hard_copy hc hc Hardcopy terminal
-hard_cursor chts HC Cursor is hard to see
-has_meta_key km km Has a meta key (shift,
- sets parity bit)
-has_print_wheel daisy YC Printer needs operator
- to change character set
-has_status_line hs hs Has extra "status line"
-hue_lightness_saturation hls hl Terminal uses only HLS
- color notation (Tektronix)
-insert_null_glitch in in Insert mode distinguishes nulls
-lpi_changes_res lpix YG Changing line pitch
- changes resolution
-memory_above da da Display may be retained
- above the screen
-memory_below db db Display may be retained
- below the screen
-move_insert_mode mir mi Safe to move while in insert
- mode
-move_standout_mode msgr ms Safe to move in standout modes
-needs_xon_xoff nxon nx Padding won't work,
- xon/xoff required
-no_esc_ctlc xsb xb Beehive (f1=escape, f2=ctrl C)
-no_pad_char npc NP Pad character doesn't exist
-non_dest_scroll_region ndscr ND Scrolling region
- is nondestructive
-non_rev_rmcup nrrmc NR smcup does not reverse rmcup
-over_strike os os Terminal overstrikes
- on hard-copy terminal
-prtr_silent mc5i 5i Printer won't echo on screen
-row_addr_glitch xvpa YD Only positive motion
- for vpa/mvpa caps
-semi_auto_right_margin sam YE Printing in last column causes
- cr
-status_line_esc_ok eslok es Escape can be used on
- the status line
-tilde_glitch hz hz Hazeltine; can't print tilde (~)
-transparent_underline ul ul Underline character overstrikes
-xon_xoff xon xo Terminal uses xon/xoff
- handshaking
-.fi
-.in -2
-.sp
-
-.SS "Numbers"
-.in +2
-.nf
-________________________________________________________________
- Cap- Termcap
-Variable name Code Description
-________________________________________________________________
-
-bit_image_entwining bitwin Yo Number of passes for each
- bit-map row
-bit_image_type bitype Yp Type of bit image device
-buffer_capacity bufsz Ya Number of bytes buffered
- before printing
-buttons btns BT Number of buttons on the mouse
-columns cols co Number of columns in a line
-dot_horz_spacing spinh Yc Spacing of dots horizontally
- in dots per inch
-dot_vert_spacing spinv Yb Spacing of pins vertically
- in pins per inch
-init_tabs it it Tabs initially every # spaces
-label_height lh lh Number of rows in each label
-label_width lw lw Number of columns in each label
-lines lines li Number of lines on a screen or
- a page
-lines_of_memory lm lm Lines of memory if > lines;
- 0 means varies
-max_attributes ma ma Maximum combined video attributes
- terminal can display
-magic_cookie_glitch xmc sg Number of blank characters
- left by smso or rmso
-max_colors colors Co Maximum number of colors
- on the screen
-max_micro_address maddr Yd Maximum value in
- micro_..._address
-max_micro_jump mjump Ye Maximum value in parm_..._micro
-max_pairs pairs pa Maximum number of
- color-pairs on the screen
-maximum_windows Wnum MW Maximum number of definable windows
-micro_char_size mcs Yf Character step size when
- in micro mode
-micro_line_size mls Yg Line step size when in micro mode
-no_color_video ncv NC Video attributes that
- can't be used with colors
-num_labels nlab Nl Number of labels on screen
-number_of_pins npins Yh Number of pins in print-head
-output_res_char orc Yi Horizontal resolution in
- units per character
-output_res_line orl Yj Vertical resolution in units per
- line
-output_res_horz_inch orhi Yk Horizontal resolution in
- units per inch
-output_res_vert_inch orvi Yl Vertical resolution in
- units per inch
-padding_baud_rate pb pb Lowest baud rate
-print_rate cps Ym Print rate in characters per second
- where padding needed
-virtual_terminal vt vt Virtual terminal number (system)
-wide_char_size widcs Yn Character step size when
- in double wide mode
-width_status_line wsl ws Number of columns in status line
-.fi
-.in -2
-.sp
-
-.SS "Strings"
-.in +2
-.nf
-________________________________________________________________
- Cap- Termcap
-Variable name Code Description
-________________________________________________________________
-
-acs_chars acsc ac Graphic charset pairs aAbBcC
-alt_scancode_esc scesa S8 Alternate escape for
- scancode emulation
- (default is for vt100)
-back_tab cbt bt Back tab
-bell bel bl Audible signal (bell)
-bit_image_carriage_return bicr Yv Move to beginning of
- same row (use tparm)
-bit_image_newline binel Zz Move to next row of
- the bit image (use tparm)
-bit_image_repeat birep Zy Repeat bit-image cell
- #1 #2 times (use tparm)
-carriage_return cr cr Carriage return
-change_char_pitch cpi ZA Change number of
- characters per inch
-change_line_pitch lpi ZB Change number of lines per inch
-change_res_horz chr ZC Change horizontal resolution
-change_res_vert cvr ZD Change vertical resolution
-change_scroll_region csr cs Change to lines #1
- through #2 (vt100)
-char_padding rmp rP Like ip but when in replace
- mode
-char_set_names csnm Zy List of character set names
-clear_all_tabs tbc ct Clear all tab stops
-clear_margins mgc MC Clear all margins
- (top, bottom, and sides)
-clear_screen clear cl Clear screen and home cursor
-clr_bol el1 cb Clear to beginning of
- line, inclusive
-clr_eol el ce Clear to end of line
-clr_eos ed cd Clear to end of display
-code_set_init csin ci Init sequence
- for multiple codesets
-color_names colornm Yw Give name for color #1
-column_address hpa ch Horizontal position
-command_character cmdch CC Terminal settable cmd
- character in prototype
-create_window cwin CW Define win #1 to go
- from #2,#3to #4,#5
-cursor_address cup cm Move to row #1 col #2
-cursor_down cud1 do Down one line
-cursor_home home ho Home cursor (if no cup)
-cursor_invisible civis vi Make cursor invisible
-cursor_left cub1 le Move left one space.
-cursor_mem_address mrcup CM Memory relative cursor
- addressing
-cursor_normal cnorm ve Make cursor appear
- normal (undo vs/vi)
-cursor_right cuf1 nd Non-destructive space
- (cursor or carriage right)
-cursor_to_ll ll ll Last line, first
- column (if no cup)
-cursor_up cuu1 up Upline (cursor up)
-cursor_visible cvvis vs Make cursor very visible
-define_bit_image_region defbi Yx Define rectangular bit-
- image region (use tparm)
-define_char defc ZE Define a character in
- a character set
-delete_character dch1 dc Delete character
-delete_line dl1 dl Delete line
-device_type devt dv Indicate language/
- codeset support
-dial_phone dial DI Dial phone number #1
-dis_status_line dsl ds Disable status line
-display_clock dclk DK Display time-of-day clock
-display_pc_char dispc S1 Display PC character
-down_half_line hd hd Half-line down (forward
- 1/2 linefeed)
-ena_acs enacs eA Enable alternate character set
-end_bit_image_region endbi Yy End a bit-image region
- (use tparm)
-enter_alt_charset_mode smacs as Start alternate character set
-enter_am_mode smam SA Turn on automatic margins
-enter_blink_mode blink mb Turn on blinking
-enter_bold_mode bold md Turn on bold (extra
- bright) mode
-enter_ca_mode smcup ti String to begin programs
- that use cup
-enter_delete_mode smdc dm Delete mode (enter)
-enter_dim_mode dim mh Turn on half-bright mode
-enter_doublewide_mode swidm ZF Enable double wide printing
-enter_draft_quality sdrfq ZG Set draft quality print mode
-enter_insert_mode smir im Insert mode (enter)
-enter_italics_mode sitm ZH Enable italics
-enter_leftward_mode slm ZI Enable leftward carriage
- motion
-enter_micro_mode smicm ZJ Enable micro motion
- capabilities
-enter_near_letter_quality snlq ZK Set near-letter quality print
-enter_normal_quality snrmq ZL Set normal quality
-enter_pc_charset_mode smpch S2 Enter PC character display mode
-enter_protected_mode prot mp Turn on protected mode
-enter_reverse_mode rev mr Turn on reverse video mode
-enter_scancode_mode smsc S4 Enter PC scancode mode
-enter_scancode_mode smsc S4 Enter PC scancode mode
-enter_secure_mode invis mk Turn on blank mode
- (characters invisible)
-enter_shadow_mode sshm ZM Enable shadow printing
-enter_standout_mode smso so Begin standout mode
-enter_subscript_mode ssubm ZN Enable subscript printing
-enter_superscript_mode ssupm ZO Enable superscript printing
-enter_underline_mode smul us Start underscore mode
-enter_upward_mode sum ZP Enable upward carriage motion
- mode
-enter_xon_mode smxon SX Turn on xon/xoff handshaking
-erase_chars ech ec Erase #1 characters
-exit_alt_charset_mode rmacs ae End alternate character set
-exit_am_mode rmam RA Turn off automatic margins
-exit_attribute_mode sgr0 me Turn off all attributes
-exit_ca_mode rmcup te String to end programs
- that use cup
-exit_delete_mode rmdc ed End delete mode
-exit_doublewide_mode rwidm ZQ Disable double wide printing
-exit_insert_mode rmir ei End insert mode
-exit_italics_mode ritm ZR Disable italics
-exit_leftward_mode rlm ZS Enable rightward (normal)
- carriage motion
-exit_micro_mode rmicm ZT Disable micro motion
- capabilities
-exit_pc_charset_mode rmpch S3 Disable PC character
- display mode
-exit_scancode_mode rmsc S5 Disable PC scancode mode
-exit_shadow_mode rshm ZU Disable shadow printing
-exit_standout_mode rmso se End standout mode
-exit_subscript_mode rsubm ZV Disable subscript printing
-exit_superscript_mode rsupm ZW Disable superscript printing
-exit_underline_mode rmul ue End underscore mode
-exit_upward_mode rum ZX Enable downward (normal)
- carriage motion
-exit_xon_mode rmxon RX Turn off xon/xoff handshaking
-fixed_pause pause PA Pause for 2-3 seconds
-flash_hook hook fh Flash the switch hook
-flash_screen flash vb Visible bell (may
- not move cursor)
-form_feed ff ff Hardcopy terminal page eject
-from_status_line fsl fs Return from status line
-get_mouse getm Gm Curses should get button events
-goto_window wingo WG Go to window #1
-hangup hup HU Hang-up phone
-init_1string is1 i1 Terminal or printer
- initialization string
-init_2string is2 is Terminal or printer
- initialization string
-init_3string is3 i3 Terminal or printer
- initialization string
-init_file if if Name of initialization file
-init_prog iprog iP Path name of program
- for initialization
-initialize_color initc Ic Initialize the
- definition of color
-initialize_pair initp Ip Initialize color-pair
-insert_character ich1 ic Insert character
-insert_line il1 al Add new blank line
-insert_padding ip ip Insert pad after
- character inserted
-.fi
-.in -2
-.sp
-
-.SS "key_Strings"
-The ``\fBkey_\fR'' strings are sent by specific keys. The ``\fBkey_\fR''
-descriptions include the macro, defined in \fB<curses.h>\fR, for the code
-returned by the \fBcurses\fR routine \fBgetch\fR when the key is pressed (see
-\fBcurs_getch\fR(3CURSES)).
-.sp
-.in +2
-.nf
-________________________________________________________________
- Cap- Termcap
-Variable name Code Description
-________________________________________________________________
-
-key_a1 ka1 K1 KEY_A1, upper left of keypad
-key_a3 ka3 K3 KEY_A3, upper right of keypad
-key_b2 kb2 K2 KEY_B2, center of keypad
-key_backspace kbs kb KEY_BACKSPACE, sent by
- backspace key
-key_beg kbeg @1 KEY_BEG, sent by beg(inning) key
-key_btab kcbt kB KEY_BTAB, sent by back-tab key
-key_c1 kc1 K4 KEY_C1, lower left of keypad
-key_c3 kc3 K5 KEY_C3, lower right of keypad
-key_cancel kcan @2 KEY_CANCEL, sent by cancel key
-key_catab ktbc ka KEY_CATAB, sent by
- clear-all-tabs key
-key_clear kclr kC KEY_CLEAR, sent by
- clear-screen or erase key
-key_close kclo @3 KEY_CLOSE, sent by close key
-key_command kcmd @4 KEY_COMMAND, sent by
- cmd (command) key
-key_copy kcpy @5 KEY_COPY, sent by copy key
-key_create kcrt @6 KEY_CREATE, sent by create key
-key_ctab kctab kt KEY_CTAB, sent by clear-tab key
-key_dc kdch1 kD KEY_DC, sent by delete-character
- key
-key_dl kdl1 kL KEY_DL, sent by delete-line key
-key_down kcud1 kd KEY_DOWN, sent by terminal
- down-arrow key
-key_eic krmir kM KEY_EIC, sent by rmir or smir in
- insert mode
-key_end kend @7 KEY_END, sent by end key
-key_enter kent @8 KEY_ENTER, sent by enter/send
- key
-key_eol kel kE KEY_EOL, sent by
- clear-to-end-of-line key
-key_eos ked kS KEY_EOS, sent by
- clear-to-end-of-screen key
-key_exit kext @9 KEY_EXIT, sent by exit key
-key_f0 kf0 k0 KEY_F(0), sent by function key f0
-key_f1 kf1 k1 KEY_F(1), sent by function key f1
-key_f2 kf2 k2 KEY_F(2), sent by function key f2
-key_f3 kf3 k3 KEY_F(3), sent by function key f3
-key_fB kf4 k4 KEY_F(4), sent by function key fB
-key_f5 kf5 k5 KEY_F(5), sent by function key f5
-key_f6 kf6 k6 KEY_F(6), sent by function key f6
-key_f7 kf7 k7 KEY_F(7), sent by function key f7
-key_f8 kf8 k8 KEY_F(8), sent by function key f8
-key_f9 kf9 k9 KEY_F(9), sent by function key f9
-
-key_f10 kf10 k; KEY_F(10), sent by function key
- f10
-key_f11 kf11 F1 KEY_F(11), sent by function key
- f11
-key_f12 kf12 F2 KEY_F(12), sent by function key
- f12
-key_f13 kf13 F3 KEY_F(13), sent by function key
- f13
-key_f14 kf14 F4 KEY_F(14), sent by function key
- f14
-key_f15 kf15 F5 KEY_F(15), sent by function key
- f15
-key_f16 kf16 F6 KEY_F(16), sent by function key
- f16
-key_f17 kf17 F7 KEY_F(17), sent by function key
- f17
-key_f18 kf18 F8 KEY_F(18), sent by function key
- f18
-key_f19 kf19 F9 KEY_F(19), sent by function key
- f19
-key_f20 kf20 FA KEY_F(20), sent by function key
- f20
-key_f21 kf21 FB KEY_F(21), sent by function key
- f21
-key_f22 kf22 FC KEY_F(22), sent by function key
- f22
-key_f23 kf23 FD KEY_F(23), sent by function key
- f23
-key_f24 kf24 FE KEY_F(24), sent by function key
- f24
-key_f25 kf25 FF KEY_F(25), sent by function key
- f25
-key_f26 kf26 FG KEY_F(26), sent by function key
- f26
-key_f27 kf27 FH KEY_F(27), sent by function key
- f27
-key_f28 kf28 FI KEY_F(28), sent by function key
- f28
-key_f29 kf29 FJ KEY_F(29), sent by function key
- f29
-key_f30 kf30 FK KEY_F(30), sent by function key
- f30
-key_f31 kf31 FL KEY_F(31), sent by function key
- f31
-key_f32 kf32 FM KEY_F(32), sent by function key
- f32
-key_f33 kf33 FN KEY_F(13), sent by function key
- f13
-key_f34 kf34 FO KEY_F(34), sent by function key
- f34
-key_f35 kf35 FP KEY_F(35), sent by function key
- f35
-key_f36 kf36 FQ KEY_F(36), sent by function key
- f36
-key_f37 kf37 FR KEY_F(37), sent by function key
- f37
-key_f38 kf38 FS KEY_F(38), sent by function key
- f38
-key_f39 kf39 FT KEY_F(39), sent by function key
- f39
-key_fB0 kf40 FU KEY_F(40), sent by function key
- fB0
-key_fB1 kf41 FV KEY_F(41), sent by function key
- fB1
-key_fB2 kf42 FW KEY_F(42), sent by function key
- fB2
-key_fB3 kf43 FX KEY_F(43), sent by function key
- fB3
-key_fB4 kf44 FY KEY_F(44), sent by function key
- fB4
-key_fB5 kf45 FZ KEY_F(45), sent by function key
- fB5
-key_fB6 kf46 Fa KEY_F(46), sent by function key
- fB6
-key_fB7 kf47 Fb KEY_F(47), sent by function key
- fB7
-key_fB8 kf48 Fc KEY_F(48), sent by function key
- fB8
-key_fB9 kf49 Fd KEY_F(49), sent by function key
- fB9
-key_f50 kf50 Fe KEY_F(50), sent by function key
- f50
-key_f51 kf51 Ff KEY_F(51), sent by function key
- f51
-key_f52 kf52 Fg KEY_F(52), sent by function key
- f52
-key_f53 kf53 Fh KEY_F(53), sent by function key
- f53
-key_f54 kf54 Fi KEY_F(54), sent by function key
- f54
-key_f55 kf55 Fj KEY_F(55), sent by function key
- f55
-key_f56 kf56 Fk KEY_F(56), sent by function key
- f56
-key_f57 kf57 Fl KEY_F(57), sent by function key
- f57
-key_f58 kf58 Fm KEY_F(58), sent by function key
- f58
-key_f59 kf59 Fn KEY_F(59), sent by function key
- f59
-key_f60 kf60 Fo KEY_F(60), sent by function key
- f60
-key_f61 kf61 Fp KEY_F(61), sent by function key
- f61
-key_f62 kf62 Fq KEY_F(62), sent by function key
- f62
-key_f63 kf63 Fr KEY_F(63), sent by function key
- f63
-key_find kfnd @0 KEY_FIND, sent by find key
-key_help khlp %1 KEY_HELP, sent by help key
-key_home khome kh KEY_HOME, sent by home key
-key_ic kich1 kI KEY_IC, sent by ins-char/enter
- ins-mode key
-key_il kil1 kA KEY_IL, sent by insert-line key
-key_left kcub1 kl KEY_LEFT, sent by
- terminal left-arrow key
-key_ll kll kH KEY_LL, sent by home-down key
-key_mark kmrk %2 KEY_MARK, sent by
-key_message kmsg %3 KEY_MESSAGE, sent by message key
-key_mouse kmous Km 0631, Mouse event has occurred
-key_move kmov %4 KEY_MOVE, sent by move key
-key_next knxt %5 KEY_NEXT, sent by next-object
- key
-key_npage knp kN KEY_NPAGE, sent by next-page
- key
-key_open kopn %6 KEY_OPEN, sent by open key
-key_options kopt %7 KEY_OPTIONS, sent by options
- key
-key_ppage kpp kP KEY_PPAGE, sent by
- previous-page key
-key_previous kprv %8 KEY_PREVIOUS, sent by
- previous-object key
-key_print kprt %9 KEY_PRINT, sent by
- print or copy key
-key_redo krdo %0 KEY_REDO, sent by redo key
-key_reference kref &1 KEY_REFERENCE, sent by
- reference key
-key_refresh krfr &2 KEY_REFRESH, sent by
- refresh key
-key_replace krpl &3 KEY_REPLACE, sent by
- replace key
-key_restart krst &4 KEY_RESTART, sent by
- restart key
-key_resume kres &5 KEY_RESUME, sent by resume key
-key_right kcuf1 kr KEY_RIGHT, sent by terminal
- right-arrow key
-key_save ksav &6 KEY_SAVE, sent by save key
-key_sbeg kBEG &9 KEY_SBEG, sent by
- shifted beginning key
-key_scancel kCAN &0 KEY_SCANCEL, sent by
- shifted cancel key
-key_scommand kCMD *1 KEY_SCOMMAND, sent by
- shifted command key
-key_scopy kCPY *2 KEY_SCOPY, sent by
- shifted copy key
-key_screate kCRT *3 KEY_SCREATE, sent by
- shifted create key
-key_sdc kDC *4 KEY_SDC, sent by
- shifted delete-char key
-key_sdl kDL *5 KEY_SDL, sent by
- shifted delete-line key
-key_select kslt *6 KEY_SELECT, sent by
- select key
-key_send kEND *7 KEY_SEND, sent by
- shifted end key
-key_seol kEOL *8 KEY_SEOL, sent by
- shifted clear-line key
-key_sexit kEXT *9 KEY_SEXIT, sent by
- shifted exit key
-key_sf kind kF KEY_SF, sent by
- scroll-forward/down key
-key_sfind kFND *0 KEY_SFIND, sent by
- shifted find key
-key_shelp kHLP #1 KEY_SHELP, sent by
- shifted help key
-key_shome kHOM #2 KEY_SHOME, sent by
- shifted home key
-key_sic kIC #3 KEY_SIC, sent by
- shifted input key
-key_sleft kLFT #4 KEY_SLEFT, sent by
- shifted left-arrow key
-key_smessage kMSG %a KEY_SMESSAGE, sent by
- shifted message key
-key_smove kMOV %b KEY_SMOVE, sent by
- shifted move key
-key_snext kNXT %c KEY_SNEXT, sent by
- shifted next key
-key_soptions kOPT %d KEY_SOPTIONS, sent by
- shifted options key
-key_sprevious kPRV %e KEY_SPREVIOUS, sent by
- shifted prev key
-key_sprint kPRT %f KEY_SPRINT, sent by
- shifted print key
-key_sr kri kR KEY_SR, sent by
- scroll-backward/up key
-key_sredo kRDO %g KEY_SREDO, sent by
- shifted redo key
-key_sreplace kRPL %h KEY_SREPLACE, sent by
- shifted replace key
-key_sright kRIT %i KEY_SRIGHT, sent by shifted
- right-arrow key
-key_srsume kRES %j KEY_SRSUME, sent by
- shifted resume key
-key_ssave kSAV !1 KEY_SSAVE, sent by
- shifted save key
-key_ssuspend kSPD !2 KEY_SSUSPEND, sent by
- shifted suspend key
-key_stab khts kT KEY_STAB, sent by
- set-tab key
-key_sundo kUND !3 KEY_SUNDO, sent by
- shifted undo key
-key_suspend kspd &7 KEY_SUSPEND, sent by
- suspend key
-key_undo kund &8 KEY_UNDO, sent by undo key
-key_up kcuu1 ku KEY_UP, sent by
- terminal up-arrow key
-keypad_local rmkx ke Out of
- ``keypad-transmit'' mode
-keypad_xmit smkx ks Put terminal in
- ``keypad-transmit'' mode
-lab_f0 lf0 l0 Labels on function key
- f0 if not f0
-lab_f1 lf1 l1 Labels on function key
- f1 if not f1
-lab_f2 lf2 l2 Labels on function key
- f2 if not f2
-lab_f3 lf3 l3 Labels on function key
- f3 if not f3
-lab_fB lfB l4 Labels on function key
- fB if not fB
-lab_f5 lf5 l5 Labels on function key
- f5 if not f5
-lab_f6 lf6 l6 Labels on function key
- f6 if not f6
-lab_f7 lf7 l7 Labels on function key
- f7 if not f7
-lab_f8 lf8 l8 Labels on function key
- f8 if not f8
-lab_f9 lf9 l9 Labels on function key
- f9 if not f9
-lab_f10 lf10 la Labels on function key
- f10 if not f10
-label_format fln Lf Label format
-label_off rmln LF Turn off soft labels
-label_on smln LO Turn on soft labels
-meta_off rmm mo Turn off "meta mode"
-meta_on smm mm Turn on "meta mode" (8th bit)
-micro_column_address mhpa ZY Like column_address
- for micro adjustment
-micro_down mcud1 ZZ Like cursor_down
- for micro adjustment
-micro_left mcub1 Za Like cursor_left
- for micro adjustment
-micro_right mcuf1 Zb Like cursor_right
- for micro adjustment
-micro_row_address mvpa Zc Like row_address
- for micro adjustment
-micro_up mcuu1 Zd Like cursor_up
- for micro adjustment
-mouse_info minfo Mi Mouse status information
-newline nel nw Newline (behaves like
- cr followed by lf)
-order_of_pins porder Ze Matches software bits
- to print-head pins
-orig_colors oc oc Set all color(-pair)s
- to the original ones
-orig_pair op op Set default color-pair
- to the original one
-pad_char pad pc Pad character (rather than null)
-parm_dch dch DC Delete #1 chars
-parm_delete_line dl DL Delete #1 lines
-parm_down_cursor cud DO Move down #1 lines
-parm_down_micro mcud Zf Like parm_down_cursor
- for micro adjust
-parm_ich ich IC Insert #1 blank chars
-parm_index indn SF Scroll forward #1 lines
-parm_insert_line il AL Add #1 new blank lines
-parm_left_cursor cub LE Move cursor left #1 spaces
-parm_left_micro mcub Zg Like parm_left_cursor
- for micro adjust
-parm_right_cursor cuf RI Move right #1 spaces
-parm_right_micro mcuf Zh Like parm_right_cursor
- for micro adjust
-parm_rindex rin SR Scroll backward #1 lines
-parm_up_cursor cuu UP Move cursor up #1 lines
-parm_up_micro mcuu Zi Like parm_up_cursor
- for micro adjust
-pc_term_options pctrm S6 PC terminal options
-pkey_key pfkey pk Prog funct key #1 to
- type string #2
-pkey_local pfloc pl Prog funct key #1 to
- execute string #2
-pkey_plab pfxl xl Prog key #1 to xmit
- string #2 and show string #3
-pkey_xmit pfx px Prog funct key #1 to
- xmit string #2
-plab_norm pln pn Prog label #1 to show
- string #2
-print_screen mc0 ps Print contents of the screen
-prtr_non mc5p pO Turn on the printer for #1 bytes
-prtr_off mc4 pf Turn off the printer
-prtr_on mc5 po Turn on the printer
-pulse pulse PU Select pulse dialing
-quick_dial qdial QD Dial phone number #1, without
- progress detection
-remove_clock rmclk RC Remove time-of-day clock
-repeat_char rep rp Repeat char #1 #2 times
-req_for_input rfi RF Send next input char (for ptys)
-req_mouse_pos reqmp RQ Request mouse position report
-reset_1string rs1 r1 Reset terminal completely to
- sane modes
-reset_2string rs2 r2 Reset terminal completely to
- sane modes
-reset_3string rs3 r3 Reset terminal completely to
- sane modes
-reset_file rf rf Name of file containing
- reset string
-restore_cursor rc rc Restore cursor to
- position of last sc
-row_address vpa cv Vertical position absolute
-save_cursor sc sc Save cursor position
-scancode_escape scesc S7 Escape for scancode emulation
-scroll_forward ind sf Scroll text up
-scroll_reverse ri sr Scroll text down
-select_char_set scs Zj Select character set
-set0_des_seq s0ds s0 Shift into codeset 0
- (EUC set 0, ASCII)
-set1_des_seq s1ds s1 Shift into codeset 1
-set2_des_seq s2ds s2 Shift into codeset 2
-set3_des_seq s3ds s3 Shift into codeset 3
- attributes #1-#6
-set_a_background setab AB Set background color
- using ANSI escape
-set_a_foreground setaf AF Set foreground color
- using ANSI escape
-set_attributes sgr sa Define the video
- attributes #1-#9
-set_background setb Sb Set current background color
-set_bottom_margin smgb Zk Set bottom margin at
- current line
-set_bottom_margin_parm smgbp Zl Set bottom margin at
- line #1 or #2
- lines from bottom
-set_clock sclk SC Set time-of-day clock
-set_color_band setcolor YzChange to ribbon color #1
-set_color_pair scp sp Set current color-pair
-set_foreground setf Sf Set current foreground color1
-set_left_margin smgl ML Set left margin at current line
-set_left_margin_parm smglp Zm Set left (right) margin
- at column #1 (#2)
-set_lr_margin smglr ML Sets both left and right margins
-set_page_length slines YZ Set page length to #1 lines
- (use tparm) of an inch
-set_right_margin smgr MR Set right margin at
- current column
-set_right_margin_parm smgrp Zn Set right margin at column #1
-set_tab hts st Set a tab in all rows,
- current column
-set_tb_margin smgtb MT Sets both top and bottom margins
-set_top_margin smgt Zo Set top margin at current line
-set_top_margin_parm smgtp Zp Set top (bottom) margin
- at line #1 (#2)
-set_window wind wi Current window is lines
- #1-#2 cols #3-#4
-start_bit_image sbim Zq Start printing bit image graphics
-start_char_set_def scsd Zr Start definition of a character
- set
-stop_bit_image rbim Zs End printing bit image graphics
-stop_char_set_def rcsd Zt End definition of a character set
-subscript_characters subcs Zu List of ``subscript-able''
- characters
-superscript_characters supcs Zv List of ``superscript-able''
- characters
-tab ht ta Tab to next 8-space hardware tab
- stop
-these_cause_cr docr Zw Printing any of these
- chars causes cr
-to_status_line tsl ts Go to status line, col #1
-tone tone TO Select touch tone dialing
-user0 u0 u0 User string 0
-user1 u1 u1 User string 1
-user2 u2 u2 User string 2
-user3 u3 u3 User string 3
-user4 u4 u4 User string 4
-user5 u5 u5 User string 5
-user6 u6 u6 User string 6
-user7 u7 u7 User string 7
-user8 u8 u8 User string 8
-user9 u9 u9 User string 9
-underline_char uc uc Underscore one char
- and move past it
-up_half_line hu hu Half-line up (reverse
- 1/2 linefeed)
-wait_tone wait WA Wait for dial tone
-xoff_character xoffc XF X-off character
-xon_character xonc XN X-on character
-zero_motion zerom Zx No motion for the
- subsequent character
-.fi
-.in -2
-.sp
-
-.SS "Sample Entry"
-The following entry, which describes the AT&T 610 terminal, is among the more
-complex entries in the \fBterminfo\fR file as of this writing.
-.sp
-.in +2
-.nf
-610|610bct|ATT610|att610|AT&T610;80column;98key keyboard
- am, eslok, hs, mir, msgr, xenl, xon,
- cols#80, it#8, lh#2, lines#24, lw#8, nlab#8, wsl#80,
- acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
- bel=^G, blink=\eE[5m, bold=\eE[1m, cbt=\eE[Z,
- civis=\eE[?25l, clear=\eE[H\eE[J, cnorm=\eE[?25h\eE[?12l,
- cr=\er, csr=\eE[%i%p1%d;%p2%dr, cub=\eE[%p1%dD, cub1=\eb,
- cud=\eE[%p1%dB, cud1=\eE[B, cuf=\eE[%p1%dC, cuf1=\eE[C,
- cup=\eE[%i%p1%d;%p2%dH, cuu=\eE[%p1%dA, cuu1=\eE[A,
- cvvis=\eE[?12;25h, dch=\eE[%p1%dP, dch1=\eE[P, dim=\eE[2m,
- dl=\eE[%p1%dM, dl1=\eE[M, ed=\eE[J, el=\eE[K, el1=\eE[1K,
- flash=\eE[?5h$<200>\eE[?5l, fsl=\eE8, home=\eE[H, ht=\et,
- ich=\eE[%p1%d@, il=\eE[%p1%dL, il1=\eE[L, ind=\eED, .ind=\eED$<9>,
- invis=\eE[8m,
- is1=\eE[8;0 | \eE[?3;4;5;13;15l\eE[13;20l\eE[?7h\eE[12h\eE(B\eE)0,
- is2=\eE[0m^O, is3=\eE(B\eE)0, kLFT=\eE[\es@, kRIT=\eE[\esA,
- kbs=^H, kcbt=\eE[Z, kclr=\eE[2J, kcub1=\eE[D, kcud1=\eE[B,
- kcuf1=\eE[C, kcuu1=\eE[A, kf1=\eEOc, kf10=\eENp,
- kf11=\eENq, kf12=\eENr, kf13=\eENs, kf14=\eENt, kf2=\eEOd,
- kf3=\eEOe, kf4=\eEOf, kf5=\eEOg, kf6=\eEOh, kf7=\eEOi,
- kf8=\eEOj, kf9=\eENo, khome=\eE[H, kind=\eE[S, kri=\eE[T,
- ll=\eE[24H, mc4=\eE[?4i, mc5=\eE[?5i, nel=\eEE,
- pfxl=\eE[%p1%d;%p2%l%02dq%?%p1%{9}%<%t\es\es\esF%p1%1d\es\es\es\es\es
-\es\es\es\es\es\es%%p2%s,
- pln=\eE[%p1%d;0;0;0q%p2%:-16.16s, rc=\eE8, rev=\eE[7m,
- ri=\eEM, rmacs=^O, rmir=\eE[4l, rmln=\eE[2p, rmso=\eE[m,
- rmul=\eE[m, rs2=\eEc\eE[?3l, sc=\eE7,
- sgr=\eE[0%?%p6%t;1%%?%p5%t;2%%?%p2%t;4%%?%p4%t;5%
-%?%p3%p1% | %t;7%%?%p7%t;8%m%?%p9%t^N%e^O%,
- sgr0=\eE[m^O, smacs=^N, smir=\eE[4h, smln=\eE[p,
- smso=\eE[7m, smul=\eE[4m, tsl=\eE7\eE[25;%i%p1%dx,
-.fi
-.in -2
-
-.SS "Types of Capabilities in the Sample Entry"
-The sample entry shows the formats for the three types of \fBterminfo\fR
-capabilities listed: Boolean, numeric, and string. All capabilities specified
-in the \fBterminfo\fR source file must be followed by commas, including the
-last capability in the source file. In \fBterminfo\fR source files,
-capabilities are referenced by their capability names (as shown in the previous
-tables).
-.sp
-.LP
-Boolean capabilities are specified simply by their comma separated cap names.
-.sp
-.LP
-Numeric capabilities are followed by the character `#' and then a positive
-integer value. Thus, in the sample, \fBcols\fR (which shows the number of
-columns available on a device) is assigned the value \fB80\fR for the AT&T 610.
-(Values for numeric capabilities may be specified in decimal, octal, or
-hexadecimal, using normal C programming language conventions.)
-.sp
-.LP
-Finally, string-valued capabilities such as \fBel\fR (clear to end of line
-sequence) are listed by a two- to five-character capname, an `=', and a string
-ended by the next occurrence of a comma. A delay in milliseconds may appear
-anywhere in such a capability, preceded by \fB$\fR and enclosed in angle
-brackets, as in \fBel=\eEK$<3>\fR. Padding characters are supplied by
-\fBtput\fR. The delay can be any of the following: a number, a number followed
-by an asterisk, such as \fB5*\fR, a number followed by a slash, such as
-\fB5/\fR, or a number followed by both, such as \fB5*/\fR. A `\fB*\fR\fB\&'\fR
-shows that the padding required is proportional to the number of lines affected
-by the operation, and the amount given is the per-affected-unit padding
-required. (In the case of insert characters, the factor is still the number of
-lines affected. This is always 1 unless the device has \fBin\fR and the
-software uses it.) When a `\fB*\fR\fB\&'\fR is specified, it is sometimes
-useful to give a delay of the form \fB3.5\fR to specify a delay per unit to
-tenths of milliseconds. (Only one decimal place is allowed.)
-.sp
-.LP
-A `/' indicates that the padding is mandatory. If a device has \fBxon\fR
-defined, the padding information is advisory and will only be used for cost
-estimates or when the device is in raw mode. Mandatory padding will be
-transmitted regardless of the setting of \fBxon\fR. If padding (whether
-advisory or mandatory) is specified for \fBbel\fR or \fBflash\fR, however, it
-will always be used, regardless of whether \fBxon\fR is specified.
-.sp
-.LP
-\fBterminfo\fR offers notation for encoding special characters. Both \fB\eE\fR
-and \fB\ee\fR map to an ESCAPE character, \fI^x\fR maps to a control \fIx\fR
-for any appropriate \fIx\fR, and the sequences \fB\en, \el, \er, \et, \eb,
-\ef\fR, and \fB\es\fR give a newline, linefeed, return, tab, backspace,
-formfeed, and space, respectively. Other escapes include: \fB\e^\fR for caret
-(^); \fB\e\e\fR for backslash (\e); \fB\e\fR, for comma (,); \fB\e:\fR for
-colon (:); and \fB\e0\fR for null. (\fB\e0\fR will actually produce
-\fB\e200\fR, which does not terminate a string but behaves as a null character
-on most devices, providing CS7 is specified. (See \fBstty\fR(1)). Finally,
-characters may be given as three octal digits after a backslash (for example,
-\e123).
-.sp
-.LP
-Sometimes individual capabilities must be commented out. To do this, put a
-period before the capability name. For example, see the second \fBind\fR in the
-example above. Note that capabilities are defined in a left-to-right order and,
-therefore, a prior definition will override a later definition.
-.SS "Preparing Descriptions"
-The most effective way to prepare a device description is by imitating the
-description of a similar device in \fBterminfo\fR and building up a description
-gradually, using partial descriptions with \fBvi\fR to check that they are
-correct. Be aware that a very unusual device may expose deficiencies in the
-ability of the \fBterminfo\fR file to describe it or the inability of \fBvi\fR
-to work with that device. To test a new device description, set the environment
-variable \fBTERMINFO\fR to the pathname of a directory containing the compiled
-description you are working on and programs will look there rather than in
-\fB/usr/share/lib/terminfo\fR. To get the padding for insert-line correct (if
-the device manufacturer did not document it) a severe test is to comment out
-\fBxon\fR, edit a large file at 9600 baud with \fBvi\fR, delete 16 or so lines
-from the middle of the screen, and then press the \fBu\fR key several times
-quickly. If the display is corrupted, more padding is usually needed. A similar
-test can be used for insert-character.
-.SS "Section 1-1: Basic Capabilities"
-The number of columns on each line for the device is given by the \fBcols\fR
-numeric capability. If the device has a screen, then the number of lines on the
-screen is given by the \fBlines\fR capability. If the device wraps around to
-the beginning of the next line when it reaches the right margin, then it should
-have the \fBam\fR capability. If the terminal can clear its screen, leaving the
-cursor in the home position, then this is given by the \fBclear\fR string
-capability. If the terminal overstrikes (rather than clearing a position when a
-character is struck over) then it should have the \fBos\fR capability. If the
-device is a printing terminal, with no soft copy unit, specify both \fBhc\fR
-and \fBos\fR. If there is a way to move the cursor to the left edge of the
-current row, specify this as \fBcr\fR. (Normally this will be carriage return,
-control M.) If there is a way to produce an audible signal (such as a bell or a
-beep), specify it as \fBbel\fR. If, like most devices, the device uses the
-xon-xoff flow-control protocol, specify \fBxon\fR.
-.sp
-.LP
-If there is a way to move the cursor one position to the left (such as
-backspace), that capability should be given as \fBcub1\fR. Similarly, sequences
-to move to the right, up, and down should be given as \fBcuf1\fR, \fBcuu1\fR,
-and \fBcud1\fR, respectively. These local cursor motions must not alter the
-text they pass over; for example, you would not normally use ``\fBcuf1\fR=\es''
-because the space would erase the character moved over.
-.sp
-.LP
-A very important point here is that the local cursor motions encoded in
-\fBterminfo\fR are undefined at the left and top edges of a screen terminal.
-Programs should never attempt to backspace around the left edge, unless
-\fBbw\fR is specified, and should never attempt to go up locally off the top.
-To scroll text up, a program goes to the bottom left corner of the screen and
-sends the \fBind\fR (index) string.
-.sp
-.LP
-To scroll text down, a program goes to the top left corner of the screen and
-sends the \fBri\fR (reverse index) string. The strings \fBind\fR and \fBri\fR
-are undefined when not on their respective corners of the screen.
-.sp
-.LP
-Parameterized versions of the scrolling sequences are \fBindn\fR and \fBrin\fR.
-These versions have the same semantics as \fBind\fR and \fBri\fR, except that
-they take one parameter and scroll the number of lines specified by that
-parameter. They are also undefined except at the appropriate edge of the
-screen.
-.sp
-.LP
-The \fBam\fR capability tells whether the cursor sticks at the right edge of
-the screen when text is output, but this does not necessarily apply to a
-\fBcuf1\fR from the last column. Backward motion from the left edge of the
-screen is possible only when \fBbw\fR is specified. In this case, \fBcub1\fR
-will move to the right edge of the previous row. If \fBbw\fR is not given, the
-effect is undefined. This is useful for drawing a box around the edge of the
-screen, for example. If the device has switch selectable automatic margins,
-\fBam\fR should be specified in the \fBterminfo\fR source file. In this case,
-initialization strings should turn on this option, if possible. If the device
-has a command that moves to the first column of the next line, that command can
-be given as \fBnel\fR (newline). It does not matter if the command clears the
-remainder of the current line, so if the device has no \fBcr\fR and \fBlf\fR it
-may still be possible to craft a working \fBnel\fR out of one or both of them.
-.sp
-.LP
-These capabilities suffice to describe hardcopy and screen terminals. Thus the
-AT&T 5320 hardcopy terminal is described as follows:
-.sp
-.in +2
-.nf
-5320|att5320|AT&T 5320 hardcopy terminal,
- am, hc, os,
- cols#132,
- bel=^G, cr=\er, cub1=\eb, cnd1=\en,
- dch1=\eE[P, dl1=\eE[M,
- ind=\en,
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-while the Lear Siegler ADM\(mi3 is described as
-.sp
-.in +2
-.nf
-adm3 | lsi adm3,
- am, bel=^G, clear=^Z, cols#80, cr=^M, cub1=^H,
- cud1=^J, ind=^J, lines#24,
-.fi
-.in -2
-.sp
-
-.SS "Section 1-2: Parameterized Strings"
-Cursor addressing and other strings requiring parameters are described by a
-parameterized string capability, with \fBprintf\fR-like escapes
-(\fB%\fR\fIx\fR) in it. For example, to address the cursor, the \fBcup\fR
-capability is given, using two parameters: the row and column to address to.
-(Rows and columns are numbered from zero and refer to the physical screen
-visible to the user, not to any unseen memory.) If the terminal has memory
-relative cursor addressing, that can be indicated by \fBmrcup\fR.
-.sp
-.LP
-The parameter mechanism uses a stack and special \fB%\fR codes to manipulate
-the stack in the manner of Reverse Polish Notation (postfix). Typically a
-sequence will push one of the parameters onto the stack and then print it in
-some format. Often more complex operations are necessary. Operations are in
-postfix form with the operands in the usual order. That is, to subtract 5 from
-the first parameter, one would use \fB%p1%{5}%\(mi\fR.
-.sp
-.LP
-The \fB%\fR encodings have the following meanings:
-.sp
-.ne 2
-.na
-\fB\fB%%\fR\fR
-.ad
-.sp .6
-.RS 4n
-outputs `%'
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB%[[:]\fR\fIflags\fR][\fIwidth\fR[\fI\&.precision\fR]][\fBdoxXs\fR]\fR
-.ad
-.sp .6
-.RS 4n
-as in \fBprintf\fR, flags are \fB[\(mi+#]\fR and space
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB%c\fR\fR
-.ad
-.sp .6
-.RS 4n
-print pop gives %c
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB%p[1-9]\fR\fR
-.ad
-.sp .6
-.RS 4n
-push \fIi\fRth parm
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB%P[a-z]\fR\fR
-.ad
-.sp .6
-.RS 4n
-set dynamic variable [a-z] to pop
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB%g[a-z]\fR\fR
-.ad
-.sp .6
-.RS 4n
-get dynamic variable [a-z] and push it
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB%P[A-Z]\fR\fR
-.ad
-.sp .6
-.RS 4n
-set static variable [a-z] to pop
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB%g[A-Z]\fR\fR
-.ad
-.sp .6
-.RS 4n
-get static variable [a-z] and push it
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB%'\fR\fIc\fR'\fR
-.ad
-.sp .6
-.RS 4n
-push char constant \fIc\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB%{\fR\fInn\fR}\fR
-.ad
-.sp .6
-.RS 4n
-push decimal constant \fInn\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB%l\fR\fR
-.ad
-.sp .6
-.RS 4n
-push strlen(pop)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB%+ %\(mi %* %/ %m\fR\fR
-.ad
-.sp .6
-.RS 4n
-arithmetic (\fB%m\fR is mod): push(pop integer2 op pop integer1)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB%& %| %^\fR\fR
-.ad
-.sp .6
-.RS 4n
-bit operations: push(pop integer2 op pop integer1)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB%= %> %<\fR\fR
-.ad
-.sp .6
-.RS 4n
-logical operations: push(pop integer2 op pop integer1)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB%A %O\fR\fR
-.ad
-.sp .6
-.RS 4n
-logical operations: and, or
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB%! %~\fR\fR
-.ad
-.sp .6
-.RS 4n
-unary operations: push(op pop)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB%i\fR\fR
-.ad
-.sp .6
-.RS 4n
-(for ANSI terminals) add 1 to first parm, if one parm present, or first two
-parms, if more than one parm present
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB%?\fR \fBexpr\fR %t \fIthenpart\fR %e \fIelsepart\fR %\fR
-.ad
-.sp .6
-.RS 4n
-if-then-else, \fB%e\fR \fIelsepart\fR is optional; else-if's are possible ala
-Algol 68: \fB%? c\fR(1) %t b(1) %e c(2) %t b(2) %e c(3) %t b(3) %e c(4) %t b(4)
-%e b(5)% c(\fIi\fR) are conditions, b(\fIi\fR) are bodies.
-.RE
-
-.sp
-.LP
-If the ``\fB\(mi\fR\&'' flag is used with ``\fB%\fR[doxXs]'', then a colon
-(\fB:\fR) must be placed between the ``\fB%\fR'' and the ``\fB\(mi\fR\&'' to
-differentiate the flag from the binary ``\fB%\(mi\fR'' operator, for example
-``\fB%:\(mi16.16s\fR''.
-.sp
-.LP
-Consider the Hewlett-Packard 2645, which, to get to row 3 and column 12, needs
-to be sent \fB\eE&a12c03Y\fR padded for 6 milliseconds. Note that the order of
-the rows and columns is inverted here, and that the row and column are
-zero-padded as two digits. Thus its \fBcup\fR capability is:
-\fBcup=\eE&a%p2%2.2dc%p1%2.2dY$<6>\fR
-.sp
-.LP
-The Micro-Term ACT-IV needs the current row and column sent preceded by a
-\fB^T\fR, with the row and column simply encoded in binary,
-``\fBcup=^T%p1%c%p2%c\fR''. Devices that use ``\fB%c\fR'' need to be able to
-backspace the cursor (\fBcub1\fR), and to move the cursor up one line on the
-screen (\fBcuu1\fR). This is necessary because it is not always safe to
-transmit \fB\en\fR, \fB^D\fR, and \fB\er\fR, as the system may change or
-discard them. (The library routines dealing with \fBterminfo\fR set tty modes
-so that tabs are never expanded, so \fB\et\fR is safe to send. This turns out
-to be essential for the Ann Arbor 4080.)
-.sp
-.LP
-A final example is the LSI ADM-3a, which uses row and column offset by a blank
-character, thus ``\fBcup=\eE=%p1%'\es'%+%c%p2%'\es'%+%c\fR''. After sending
-``\fB\eE=\fR\&'', this pushes the first parameter, pushes the ASCII value for a
-space (32), adds them (pushing the sum on the stack in place of the two
-previous values), and outputs that value as a character. Then the same is done
-for the second parameter. More complex arithmetic is possible using the stack.
-.SS "Section 1-3: Cursor Motions"
-If the terminal has a fast way to home the cursor (to very upper left corner of
-screen) then this can be given as \fBhome\fR; similarly a fast way of getting
-to the lower left-hand corner can be given as \fBll\fR; this may involve going
-up with \fBcuu1\fR from the home position, but a program should never do this
-itself (unless \fBll\fR does) because it can make no assumption about the
-effect of moving up from the home position. Note that the home position is the
-same as addressing to (0,0): to the top left corner of the screen, not of
-memory. (Thus, the \fB\eEH\fR sequence on Hewlett-Packard terminals cannot be
-used for \fBhome\fR without losing some of the other features on the terminal.)
-.sp
-.LP
-If the device has row or column absolute-cursor addressing, these can be given
-as single parameter capabilities \fBhpa\fR (horizontal position absolute) and
-\fBvpa\fR (vertical position absolute). Sometimes these are shorter than the
-more general two-parameter sequence (as with the Hewlett-Packard 2645) and can
-be used in preference to \fBcup\fR. If there are parameterized local motions
-(for example, move \fIn\fR spaces to the right) these can be given as
-\fBcud\fR, \fBcub\fR, \fBcuf\fR, and \fBcuu\fR with a single parameter
-indicating how many spaces to move. These are primarily useful if the device
-does not have \fBcup\fR, such as the Tektronix 4025.
-.sp
-.LP
-If the device needs to be in a special mode when running a program that uses
-these capabilities, the codes to enter and exit this mode can be given as
-\fBsmcup\fR and \fBrmcup\fR. This arises, for example, from terminals, such as
-the Concept, with more than one page of memory. If the device has only memory
-relative cursor addressing and not screen relative cursor addressing, a one
-screen-sized window must be fixed into the device for cursor addressing to work
-properly. This is also used for the Tektronix 4025, where \fBsmcup\fR sets the
-command character to be the one used by \fBterminfo\fR. If the \fBsmcup\fR
-sequence will not restore the screen after an \fBrmcup\fR sequence is output
-(to the state prior to outputting \fBrmcup\fR), specify \fBnrrmc\fR.
-.SS "Section 1-4: Area Clears"
-If the terminal can clear from the current position to the end of the line,
-leaving the cursor where it is, this should be given as \fBel\fR. If the
-terminal can clear from the beginning of the line to the current position
-inclusive, leaving the cursor where it is, this should be given as \fBel1\fR.
-If the terminal can clear from the current position to the end of the display,
-then this should be given as \fBed\fR. \fBed\fR is only defined from the first
-column of a line. (Thus, it can be simulated by a request to delete a large
-number of lines, if a true \fBed\fR is not available.)
-.SS "Section 1-5: Insert/Delete Line"
-If the terminal can open a new blank line before the line where the cursor is,
-this should be given as \fBil1\fR; this is done only from the first position of
-a line. The cursor must then appear on the newly blank line. If the terminal
-can delete the line which the cursor is on, then this should be given as
-\fBdl1\fR; this is done only from the first position on the line to be deleted.
-Versions of \fBil1\fR and \fBdl1\fR which take a single parameter and insert or
-delete that many lines can be given as \fBil\fR and \fBdl\fR.
-.sp
-.LP
-If the terminal has a settable destructive scrolling region (like the VT100)
-the command to set this can be described with the \fBcsr\fR capability, which
-takes two parameters: the top and bottom lines of the scrolling region. The
-cursor position is, alas, undefined after using this command. It is possible to
-get the effect of insert or delete line using this command \(em the \fBsc\fR
-and \fBrc\fR (save and restore cursor) commands are also useful. Inserting
-lines at the top or bottom of the screen can also be done using \fBri\fR or
-\fBind\fR on many terminals without a true insert/delete line, and is often
-faster even on terminals with those features.
-.sp
-.LP
-To determine whether a terminal has destructive scrolling regions or
-non-destructive scrolling regions, create a scrolling region in the middle of
-the screen, place data on the bottom line of the scrolling region, move the
-cursor to the top line of the scrolling region, and do a reverse index
-(\fBri\fR) followed by a delete line (\fBdl1\fR) or index (\fBind\fR). If the
-data that was originally on the bottom line of the scrolling region was
-restored into the scrolling region by the \fBdl1\fR or \fBind\fR, then the
-terminal has non-destructive scrolling regions. Otherwise, it has destructive
-scrolling regions. Do not specify \fBcsr\fR if the terminal has non-destructive
-scrolling regions, unless \fBind\fR, \fBri\fR, \fBindn\fR, \fBrin\fR, \fBdl\fR,
-and \fBdl1\fR all simulate destructive scrolling.
-.sp
-.LP
-If the terminal has the ability to define a window as part of memory, which all
-commands affect, it should be given as the parameterized string \fBwind\fR. The
-four parameters are the starting and ending lines in memory and the starting
-and ending columns in memory, in that order.
-.sp
-.LP
-If the terminal can retain display memory above, then the \fBda\fR capability
-should be given; if display memory can be retained below, then \fBdb\fR should
-be given. These indicate that deleting a line or scrolling a full screen may
-bring non-blank lines up from below or that scrolling back with \fBri\fR may
-bring down non-blank lines.
-.SS "Section 1-6: Insert/Delete Character"
-There are two basic kinds of intelligent terminals with respect to
-insert/delete character operations which can be described using \fBterminfo.\fR
-The most common insert/delete character operations affect only the characters
-on the current line and shift characters off the end of the line rigidly. Other
-terminals, such as the Concept 100 and the Perkin Elmer Owl, make a distinction
-between typed and untyped blanks on the screen, shifting upon an insert or
-delete only to an untyped blank on the screen which is either eliminated, or
-expanded to two untyped blanks. You can determine the kind of terminal you have
-by clearing the screen and then typing text separated by cursor motions. Type
-``\fBabc def\fR'' using local cursor motions (not spaces) between the \fBabc\fR
-and the \fBdef\fR. Then position the cursor before the \fBabc\fR and put the
-terminal in insert mode. If typing characters causes the rest of the line to
-shift rigidly and characters to fall off the end, then your terminal does not
-distinguish between blanks and untyped positions. If the \fBabc\fR shifts over
-to the \fBdef\fR which then move together around the end of the current line
-and onto the next as you insert, you have the second type of terminal, and
-should give the capability \fBin\fR, which stands for ``insert null.'' While
-these are two logically separate attributes (one line versus multiline insert
-mode, and special treatment of untyped spaces) we have seen no terminals whose
-insert mode cannot be described with the single attribute.
-.sp
-.LP
-\fBterminfo\fR can describe both terminals that have an insert mode and
-terminals which send a simple sequence to open a blank position on the current
-line. Give as \fBsmir\fR the sequence to get into insert mode. Give as
-\fBrmir\fR the sequence to leave insert mode. Now give as \fBich1\fR any
-sequence needed to be sent just before sending the character to be inserted.
-Most terminals with a true insert mode will not give \fBich1\fR; terminals that
-send a sequence to open a screen position should give it here. (If your
-terminal has both, insert mode is usually preferable to \fBich1\fR. Do not give
-both unless the terminal actually requires both to be used in combination.) If
-post-insert padding is needed, give this as a number of milliseconds padding in
-\fBip\fR (a string option). Any other sequence which may need to be sent after
-an insert of a single character may also be given in \fBip\fR. If your terminal
-needs both to be placed into an `insert mode' and a special code to precede
-each inserted character, then both \fBsmir\fR/rmir and \fBich1\fR can be given,
-and both will be used. The \fBich\fR capability, with one parameter, \fIn\fR,
-will insert \fIn\fR blanks.
-.sp
-.LP
-If padding is necessary between characters typed while not in insert mode, give
-this as a number of milliseconds padding in \fBrmp\fR.
-.sp
-.LP
-It is occasionally necessary to move around while in insert mode to delete
-characters on the same line (for example, if there is a tab after the insertion
-position). If your terminal allows motion while in insert mode you can give the
-capability \fBmir\fR to speed up inserting in this case. Omitting \fBmir\fR
-will affect only speed. Some terminals (notably Datamedia's) must not have
-\fBmir\fR because of the way their insert mode works.
-.sp
-.LP
-Finally, you can specify \fBdch1\fR to delete a single character, \fBdch\fR
-with one parameter, \fIn\fR, to delete \fIn\fR characters, and delete mode by
-giving \fBsmdc\fR and \fBrmdc\fR to enter and exit delete mode (any mode the
-terminal needs to be placed in for \fBdch1\fR to work).
-.sp
-.LP
-A command to erase \fIn\fR characters (equivalent to outputting \fIn\fR blanks
-without moving the cursor) can be given as \fBech\fR with one parameter.
-.SS "Section 1-7: Highlighting, Underlining, and Visible Bells"
-Your device may have one or more kinds of display attributes that allow you to
-highlight selected characters when they appear on the screen. The following
-display modes (shown with the names by which they are set) may be available: a
-blinking screen (\fBblink\fR), bold or extra-bright characters (\fBbold\fR),
-dim or half-bright characters (\fBdim\fR), blanking or invisible text
-(\fBinvis\fR), protected text (\fBprot\fR), a reverse-video screen (\fBrev\fR),
-and an alternate character set (\fBsmacs\fR to enter this mode and \fBrmacs\fR
-to exit it). (If a command is necessary before you can enter alternate
-character set mode, give the sequence in \fBenacs\fR or "enable
-alternate-character-set" mode.) Turning on any of these modes singly may or may
-not turn off other modes.
-.sp
-.LP
-\fBsgr0\fR should be used to turn off all video enhancement capabilities. It
-should always be specified because it represents the only way to turn off some
-capabilities, such as \fBdim\fR or \fBblink\fR.
-.sp
-.LP
-You should choose one display method as \fIstandout mode\fR and use it to
-highlight error messages and other kinds of text to which you want to draw
-attention. Choose a form of display that provides strong contrast but that is
-easy on the eyes. (We recommend reverse-video plus half-bright or reverse-video
-alone.) The sequences to enter and exit standout mode are given as \fBsmso\fR
-and \fBrmso\fR, respectively. If the code to change into or out of standout
-mode leaves one or even two blank spaces on the screen, as the TVI 912 and
-Teleray 1061 do, then \fBxmc\fR should be given to tell how many spaces are
-left.
-.sp
-.LP
-Sequences to begin underlining and end underlining can be specified as
-\fBsmul\fR and \fBrmul ,\fR respectively. If the device has a sequence to
-underline the current character and to move the cursor one space to the right
-(such as the Micro-Term MIME), this sequence can be specified as \fBuc\fR.
-.sp
-.LP
-Terminals with the ``magic cookie'' glitch (\fBxmc\fR\fB)\fR deposit special
-``cookies'' when they receive mode-setting sequences, which affect the display
-algorithm rather than having extra bits for each character. Some terminals,
-such as the Hewlett-Packard 2621, automatically leave standout mode when they
-move to a new line or the cursor is addressed. Programs using standout mode
-should exit standout mode before moving the cursor or sending a newline, unless
-the \fBmsgr\fR capability, asserting that it is safe to move in standout mode,
-is present.
-.sp
-.LP
-If the terminal has a way of flashing the screen to indicate an error quietly
-(a bell replacement), then this can be given as \fBflash\fR; it must not move
-the cursor. A good flash can be done by changing the screen into reverse video,
-pad for 200 ms, then return the screen to normal video.
-.sp
-.LP
-If the cursor needs to be made more visible than normal when it is not on the
-bottom line (to make, for example, a non-blinking underline into an easier to
-find block or blinking underline) give this sequence as \fBcvvis\fR. The
-boolean \fBchts\fR should also be given. If there is a way to make the cursor
-completely invisible, give that as \fBcivis\fR. The capability \fBcnorm\fR
-should be given which undoes the effects of either of these modes.
-.sp
-.LP
-If your terminal generates underlined characters by using the underline
-character (with no special sequences needed) even though it does not otherwise
-overstrike characters, then you should specify the capability \fBul\fR. For
-devices on which a character overstriking another leaves both characters on the
-screen, specify the capability \fBos\fR. If overstrikes are erasable with a
-blank, then this should be indicated by specifying \fBeo\fR.
-.sp
-.LP
-If there is a sequence to set arbitrary combinations of modes, this should be
-given as \fBsgr\fR (set attributes), taking nine parameters. Each parameter is
-either \fB0\fR or non-zero, as the corresponding attribute is on or off. The
-nine parameters are, in order: standout, underline, reverse, blink, dim, bold,
-blank, protect, alternate character set. Not all modes need to be supported by
-\fBsgr\fR; only those for which corresponding separate attribute commands exist
-should be supported. For example, let's assume that the terminal in question
-needs the following escape sequences to turn on various modes.
-.sp
-
-.sp
-.TS
-c c c
-c c c .
-tparm
-parameter attribute escape sequence
-_
- none \eE[0m
-p1 standout \eE[0;4;7m
-p2 underline \eE[0;3m
-p3 reverse \eE[0;4m
-p4 blink \eE[0;5m
-p5 dim \eE[0;7m
-p6 bold \eE[0;3;4m
-p7 invis \eE[0;8m
-p8 protect not available
-p9 altcharset ^O (off) ^N (on)
-.TE
-
-.sp
-.LP
-Note that each escape sequence requires a \fB0\fR to turn off other modes
-before turning on its own mode. Also note that, as suggested above,
-\fIstandout\fR is set up to be the combination of \fIreverse\fR and \fIdim\fR.
-Also, because this terminal has no \fIbold\fR mode, \fIbold\fR is set up as the
-combination of \fIreverse\fR and \fIunderline\fR. In addition, to allow
-combinations, such as \fIunderline+blink\fR, the sequence to use would be
-\fB\eE[0;3;5m\fR\&. The terminal doesn't have \fIprotect\fR mode, either, but
-that cannot be simulated in any way, so \fBp8\fR is ignored. The
-\fIaltcharset\fR mode is different in that it is either \fB^O\fR or \fB^N\fR,
-depending on whether it is off or on. If all modes were to be turned on, the
-sequence would be \fB\eE[0;3;4;5;7;8m^N\fR\&.
-.sp
-.LP
-Now look at when different sequences are output. For example, \fB;3\fR is
-output when either \fBp2\fR or \fBp6\fR is true, that is, if either
-\fIunderline\fR or \fIbold\fR modes are turned on. Writing out the above
-sequences, along with their dependencies, gives the following:
-.sp
-
-.sp
-.TS
-c c c
-l l l .
-sequence when to output terminfo translation
-_
-\eE[0 always \eE[0
-;3 if \fBp2\fR or \fBp6\fR %?%p2%p6%|%t;3%
-;4 if \fBp1\fR or \fBp3\fR or \fBp6\fR %?%p1%p3%|%p6%|%t;4%
-;5 if \fBp4\fR %?%p4%t;5%
-;7 if \fBp1\fR or \fBp5\fR %?%p1%p5%|%t;7%
-;8 if \fBp7\fR %?%p7%t;8%
-m always m
-^N or ^O if \fBp9 ^N\fR, else \fB^O\fR %?%p9%t^N%e^O%
-.TE
-
-.sp
-.LP
-Putting this all together into the \fBsgr\fR sequence gives:
-.sp
-.LP
-\fBsgr=\eE[0%?%p2%p6%|%t;3%%?%p1%p3%|%p6% |%t;4%%?%p5%t;5%%?%p1%p5%
-|%t;7%%?%p7%t;8%m%?%p9%t^N%e^O%,\fR
-.sp
-.LP
-Remember that \fBsgr\fR and \fBsgr0\fR must always be specified.
-.SS "Section 1-8: Keypad"
-If the device has a keypad that transmits sequences when the keys are pressed,
-this information can also be specified. Note that it is not possible to handle
-devices where the keypad only works in local (this applies, for example, to the
-unshifted Hewlett-Packard 2621 keys). If the keypad can be set to transmit or
-not transmit, specify these sequences as \fBsmkx\fR and \fBrmkx\fR. Otherwise
-the keypad is assumed to always transmit.
-.sp
-.LP
-The sequences sent by the left arrow, right arrow, up arrow, down arrow, and
-home keys can be given as \fBkcub1, kcuf1, kcuu1, kcud1,\fRand \fBkhome\fR,
-respectively. If there are function keys such as f0, f1, ..., f63, the
-sequences they send can be specified as \fBkf0, kf1, ..., kf63\fR. If the first
-11 keys have labels other than the default f0 through f10, the labels can be
-given as \fBlf0, lf1, ..., lf10\fR. The codes transmitted by certain other
-special keys can be given: \fBkll\fR (home down), \fBkbs\fR (backspace),
-\fBktbc\fR (clear all tabs), \fBkctab\fR (clear the tab stop in this column),
-\fBkclr\fR (clear screen or erase key), \fBkdch1\fR (delete character),
-\fBkdl1\fR (delete line), \fBkrmir\fR (exit insert mode), \fBkel\fR (clear to
-end of line), \fBked\fR (clear to end of screen), \fBkich1\fR (insert character
-or enter insert mode), \fBkil1\fR (insert line), \fBknp\fR (next page),
-\fBkpp\fR (previous page), \fBkind\fR (scroll forward/down), \fBkri\fR (scroll
-backward/up), \fBkhts\fR (set a tab stop in this column). In addition, if the
-keypad has a 3 by 3 array of keys including the four arrow keys, the other five
-keys can be given as \fBka1\fR, \fBka3\fR, \fBkb2\fR, \fBkc1\fR, and \fBkc3\fR.
-These keys are useful when the effects of a 3 by 3 directional pad are needed.
-Further keys are defined above in the capabilities list.
-.sp
-.LP
-Strings to program function keys can be specified as \fBpfkey\fR, \fBpfloc\fR,
-and \fBpfx\fR. A string to program screen labels should be specified as
-\fBpln\fR. Each of these strings takes two parameters: a function key
-identifier and a string to program it with. \fBpfkey\fR causes pressing the
-given key to be the same as the user typing the given string; \fBpfloc\fR
-causes the string to be executed by the terminal in local mode; and \fBpfx\fR
-causes the string to be transmitted to the computer. The capabilities
-\fBnlab\fR, \fBlw\fR and \fBlh\fR define the number of programmable screen
-labels and their width and height. If there are commands to turn the labels on
-and off, give them in \fBsmln\fR and \fBrmln\fR. \fBsmln\fR is normally output
-after one or more \fBpln\fR sequences to make sure that the change becomes
-visible.
-.SS "Section 1-9: Tabs and Initialization"
-If the device has hardware tabs, the command to advance to the next tab stop
-can be given as \fBht\fR (usually control I). A ``backtab'' command that moves
-leftward to the next tab stop can be given as \fBcbt\fR. By convention, if tty
-modes show that tabs are being expanded by the computer rather than being sent
-to the device, programs should not use \fBht\fR or \fBcbt\fR (even if they are
-present) because the user may not have the tab stops properly set. If the
-device has hardware tabs that are initially set every \fIn\fR spaces when the
-device is powered up, the numeric parameter \fBit\fR is given, showing the
-number of spaces the tabs are set to. This is normally used by \fBtput\fR
-\fBinit\fR (see \fBtput\fR(1)) to determine whether to set the mode for
-hardware tab expansion and whether to set the tab stops. If the device has tab
-stops that can be saved in nonvolatile memory, the \fBterminfo\fR description
-can assume that they are properly set. If there are commands to set and clear
-tab stops, they can be given as \fBtbc\fR (clear all tab stops) and \fBhts\fR
-(set a tab stop in the current column of every row).
-.sp
-.LP
-Other capabilities include: \fBis1\fR, \fBis2\fR, and \fBis3\fR, initialization
-strings for the device; \fBiprog\fR, the path name of a program to be run to
-initialize the device; and \fBif\fR, the name of a file containing long
-initialization strings. These strings are expected to set the device into modes
-consistent with the rest of the \fBterminfo\fR description. They must be sent
-to the device each time the user logs in and be output in the following order:
-run the program \fBiprog\fR; output \fBis1\fR; output \fBis2\fR; set the
-margins using \fBmgc\fR, \fBsmgl\fR and \fBsmgr\fR; set the tabs using
-\fBtbc\fR and \fBhts\fR; print the file \fBif\fR; and finally output \fBis3\fR.
-This is usually done using the \fBinit\fR option of \fBtput\fR.
-.sp
-.LP
-Most initialization is done with \fBis2\fR. Special device modes can be set up
-without duplicating strings by putting the common sequences in \fBis2\fR and
-special cases in \fBis1\fR and \fBis3\fR. Sequences that do a reset from a
-totally unknown state can be given as \fBrs1\fR, \fBrs2\fR, \fBrf\fR, and
-\fBrs3\fR, analogous to \fBis1\fR, \fBis2\fR, \fBis3\fR, and \fBif\fR. (The
-method using files, \fBif\fR and \fBrf\fR, is used for a few terminals, from
-\fB/usr/share/lib/tabset/*\fR; however, the recommended method is to use the
-initialization and reset strings.) These strings are output by \fBtput\fR
-reset, which is used when the terminal gets into a wedged state. Commands are
-normally placed in \fBrs1\fR, \fBrs2\fR, \fBrs3\fR, and \fBrf\fR only if they
-produce annoying effects on the screen and are not necessary when logging in.
-For example, the command to set a terminal into 80-column mode would normally
-be part of \fBis2\fR, but on some terminals it causes an annoying glitch on the
-screen and is not normally needed because the terminal is usually already in
-80-column mode.
-.sp
-.LP
-If a more complex sequence is needed to set the tabs than can be described by
-using \fBtbc\fR and \fBhts\fR, the sequence can be placed in \fBis2\fR or
-\fBif\fR.
-.sp
-.LP
-Any margin can be cleared with \fBmgc\fR. (For instructions on how to specify
-commands to set and clear margins, see "Margins" below under "PRINTER
-CAPABILITIES".)
-.SS "Section 1-10: Delays"
-Certain capabilities control padding in the \fBtty\fR driver. These are
-primarily needed by hard-copy terminals, and are used by \fBtput\fR \fBinit\fR
-to set tty modes appropriately. Delays embedded in the capabilities \fBcr\fR,
-\fBind\fR, \fBcub1\fR, \fBff\fR, and \fBtab\fR can be used to set the
-appropriate delay bits to be set in the tty driver. If \fBpb\fR (padding baud
-rate) is given, these values can be ignored at baud rates below the value of
-\fBpb\fR.
-.SS "Section 1-11: Status Lines"
-If the terminal has an extra ``status line'' that is not normally used by
-software, this fact can be indicated. If the status line is viewed as an extra
-line below the bottom line, into which one can cursor address normally (such as
-the Heathkit h19's 25th line, or the 24th line of a VT100 which is set to a
-23-line scrolling region), the capability \fBhs\fR should be given. Special
-strings that go to a given column of the status line and return from the status
-line can be given as \fBtsl\fR and \fBfsl\fR. (\fBfsl\fR must leave the cursor
-position in the same place it was before \fBtsl\fR. If necessary, the \fBsc\fR
-and \fBrc\fR strings can be included in \fBtsl\fR and \fBfsl\fR to get this
-effect.) The capability \fBtsl\fR takes one parameter, which is the column
-number of the status line the cursor is to be moved to.
-.sp
-.LP
-If escape sequences and other special commands, such as tab, work while in the
-status line, the flag \fBeslok\fR can be given. A string which turns off the
-status line (or otherwise erases its contents) should be given as \fBdsl\fR. If
-the terminal has commands to save and restore the position of the cursor, give
-them as \fBsc\fR and \fBrc\fR. The status line is normally assumed to be the
-same width as the rest of the screen, for example, \fBcols\fR. If the status
-line is a different width (possibly because the terminal does not allow an
-entire line to be loaded) the width, in columns, can be indicated with the
-numeric parameter \fBwsl\fR.
-.SS "Section 1-12: Line Graphics"
-If the device has a line drawing alternate character set, the mapping of glyph
-to character would be given in \fBacsc\fR. The definition of this string is
-based on the alternate character set used in the DEC VT100 terminal, extended
-slightly with some characters from the AT&T 4410v1 terminal.
-.sp
-
-.sp
-.TS
-c c
-l l .
-Glyph Name vt100+ Character
-_
-arrow pointing right +
-arrow pointing left ,
-arrow pointing down \&.
-solid square block 0
-lantern symbol I
-arrow pointing up \(mi
-diamond `
-checker board (stipple) a
-degree symbol f
-plus/minus g
-board of squares h
-lower right corner j
-upper right corner k
-upper left corner l
-lower left corner m
-plus n
-scan line 1 o
-horizontal line q
-scan line 9 s
-left tee t
-right tee u
-bottom tee v
-top tee w
-vertical line x
-bullet ~
-.TE
-
-.sp
-.LP
-The best way to describe a new device's line graphics set is to add a third
-column to the above table with the characters for the new device that produce
-the appropriate glyph when the device is in the alternate character set mode.
-For example,
-.sp
-
-.sp
-.TS
-c c c
-l l l .
-Glyph Name vt100+ Char New tty Char
-_
-upper left corner l R
-lower left corner m F
-upper right corner k T
-lower right corner j G
-horizontal line q ,
-vertical line x \&.
-.TE
-
-.sp
-.LP
-Now write down the characters left to right, as in
-``\fBacsc=lRmFkTjGq\e,x.\fR''.
-.sp
-.LP
-In addition, \fBterminfo\fR allows you to define multiple character sets. See
-Section 2-5 for details.
-.SS "Section 1-13: Color Manipulation"
-Let us define two methods of color manipulation: the Tektronix method and the
-HP method. The Tektronix method uses a set of N predefined colors (usually 8)
-from which a user can select "current" foreground and background colors. Thus a
-terminal can support up to N colors mixed into N*N color-pairs to be displayed
-on the screen at the same time. When using an HP method the user cannot define
-the foreground independently of the background, or vice-versa. Instead, the
-user must define an entire color-pair at once. Up to M color-pairs, made from
-2*M different colors, can be defined this way. Most existing color terminals
-belong to one of these two classes of terminals.
-.sp
-.LP
-The numeric variables \fBcolors\fR and \fBpairs\fR define the number of colors
-and color-pairs that can be displayed on the screen at the same time. If a
-terminal can change the definition of a color (for example, the Tektronix 4100
-and 4200 series terminals), this should be specified with \fBccc\fR (can change
-color). To change the definition of a color (Tektronix 4200 method), use
-\fBinitc\fR (initialize color). It requires four arguments: color number
-(ranging from 0 to \fBcolors\fR\(mi1) and three RGB (red, green, and blue)
-values or three HLS colors (Hue, Lightness, Saturation). Ranges of RGB and HLS
-values are terminal dependent.
-.sp
-.LP
-Tektronix 4100 series terminals only use HLS color notation. For such terminals
-(or dual-mode terminals to be operated in HLS mode) one must define a boolean
-variable \fBhls\fR; that would instruct the \fBcurses init_color\fR routine to
-convert its RGB arguments to HLS before sending them to the terminal. The last
-three arguments to the \fBinitc\fR string would then be HLS values.
-.sp
-.LP
-If a terminal can change the definitions of colors, but uses a color notation
-different from RGB and HLS, a mapping to either RGB or HLS must be developed.
-.sp
-.LP
-To set current foreground or background to a given color, use \fBsetaf\fR (set
-ANSI foreground) and \fBsetab\fR (set ANSI background). They require one
-parameter: the number of the color. To initialize a color-pair (HP method),
-use \fBinitp\fR (initialize pair). It requires seven parameters: the number of
-a color-pair (range=0 to \fBpairs\fR\(mi1), and six RGB values: three for the
-foreground followed by three for the background. (Each of these groups of three
-should be in the order RGB.) When \fBinitc\fR or \fBinitp\fR are used, RGB or
-HLS arguments should be in the order "red, green, blue" or "hue, lightness,
-saturation"), respectively. To make a color-pair current, use \fBscp\fR (set
-color-pair). It takes one parameter, the number of a color-pair.
-.sp
-.LP
-Some terminals (for example, most color terminal emulators for PCs) erase areas
-of the screen with current background color. In such cases, \fBbce\fR
-(background color erase) should be defined. The variable \fBop\fR (original
-pair) contains a sequence for setting the foreground and the background colors
-to what they were at the terminal start-up time. Similarly, \fBoc\fR (original
-colors) contains a control sequence for setting all colors (for the Tektronix
-method) or color-pairs (for the HP method) to the values they had at the
-terminal start-up time.
-.sp
-.LP
-Some color terminals substitute color for video attributes. Such video
-attributes should not be combined with colors. Information about these video
-attributes should be packed into the \fBncv\fR (no color video) variable. There
-is a one-to-one correspondence between the nine least significant bits of that
-variable and the video attributes. The following table depicts this
-correspondence.
-.sp
-
-.sp
-.TS
-c c c
-l l l .
-Attribute Bit Position Decimal Value
-_
-A_STANDOUT 0 1
-A_UNDERLINE 1 2
-A_REVERSE 2 4
-A_BLINK 3 8
-A_DIM 4 16
-A_BOLD 5 32
-A_INVIS 6 64
-A_PROTECT 7 128
-A_ALTCHARSET 8 256
-.TE
-
-.sp
-.LP
-When a particular video attribute should not be used with colors, the
-corresponding \fBncv\fR bit should be set to 1; otherwise it should be set to
-zero. To determine the information to pack into the \fBncv\fR variable, you
-must add together the decimal values corresponding to those attributes that
-cannot coexist with colors. For example, if the terminal uses colors to
-simulate reverse video (bit number 2 and decimal value 4) and bold (bit number
-5 and decimal value 32), the resulting value for \fBncv\fR will be 36 (4 + 32).
-.SS "Section 1-14: Miscellaneous"
-If the terminal requires other than a null (zero) character as a pad, then this
-can be given as \fBpad\fR. Only the first character of the \fBpad\fR string is
-used. If the terminal does not have a pad character, specify \fBnpc\fR.
-.sp
-.LP
-If the terminal can move up or down half a line, this can be indicated with
-\fBhu\fR (half-line up) and \fBhd\fR (half-line down). This is primarily useful
-for superscripts and subscripts on hardcopy terminals. If a hardcopy terminal
-can eject to the next page (form feed), give this as \fBff\fR (usually control
-L).
-.sp
-.LP
-If there is a command to repeat a given character a given number of times (to
-save time transmitting a large number of identical characters) this can be
-indicated with the parameterized string \fBrep\fR. The first parameter is the
-character to be repeated and the second is the number of times to repeat it.
-Thus, \fBtparm(repeat_char, 'x', 10)\fR is the same as \fBxxxxxxxxxx.\fR
-.sp
-.LP
-If the terminal has a settable command character, such as the Tektronix 4025,
-this can be indicated with \fBcmdch\fR. A prototype command character is chosen
-which is used in all capabilities. This character is given in the \fBcmdch\fR
-capability to identify it. The following convention is supported on some
-systems: If the environment variable \fBCC\fR exists, all occurrences of the
-prototype character are replaced with the character in \fBCC\fR.
-.sp
-.LP
-Terminal descriptions that do not represent a specific kind of known terminal,
-such as \fBswitch\fR, \fIdialup\fR, \fBpatch\fR, and \fInetwork\fR, should
-include the \fBgn\fR (generic) capability so that programs can complain that
-they do not know how to talk to the terminal. (This capability does not apply
-to \fIvirtual\fR terminal descriptions for which the escape sequences are
-known.) If the terminal is one of those supported by the system virtual
-terminal protocol, the terminal number can be given as \fBvt\fR. A
-line-turn-around sequence to be transmitted before doing reads should be
-specified in \fBrfi\fR.
-.sp
-.LP
-If the device uses xon/xoff handshaking for flow control, give \fBxon\fR.
-Padding information should still be included so that routines can make better
-decisions about costs, but actual pad characters will not be transmitted.
-Sequences to turn on and off xon/xoff handshaking may be given in \fBsmxon\fR
-and \fBrmxon\fR. If the characters used for handshaking are not \fB^S\fR and
-\fB^Q\fR, they may be specified with \fBxonc\fR and \fBxoffc\fR.
-.sp
-.LP
-If the terminal has a ``meta key'' which acts as a shift key, setting the 8th
-bit of any character transmitted, this fact can be indicated with \fBkm\fR.
-Otherwise, software will assume that the 8th bit is parity and it will usually
-be cleared. If strings exist to turn this ``meta mode'' on and off, they can be
-given as \fBsmm\fR and \fBrmm\fR.
-.sp
-.LP
-If the terminal has more lines of memory than will fit on the screen at once,
-the number of lines of memory can be indicated with \fBlm\fR. A value of
-\fBlm\fR#0 indicates that the number of lines is not fixed, but that there is
-still more memory than fits on the screen.
-.sp
-.LP
-Media copy strings which control an auxiliary printer connected to the terminal
-can be given as \fBmc0\fR: print the contents of the screen, \fBmc4\fR: turn
-off the printer, and \fBmc5\fR: turn on the printer. When the printer is on,
-all text sent to the terminal will be sent to the printer. A variation,
-\fBmc5p\fR, takes one parameter, and leaves the printer on for as many
-characters as the value of the parameter, then turns the printer off. The
-parameter should not exceed 255. If the text is not displayed on the terminal
-screen when the printer is on, specify \fBmc5i\fR (silent printer). All text,
-including \fBmc4\fR, is transparently passed to the printer while an \fBmc5p\fR
-is in effect.
-.SS "Section 1-15: Special Cases"
-The working model used by \fBterminfo\fR fits most terminals reasonably well.
-However, some terminals do not completely match that model, requiring special
-support by \fBterminfo\fR. These are not meant to be construed as deficiencies
-in the terminals; they are just differences between the working model and the
-actual hardware. They may be unusual devices or, for some reason, do not have
-all the features of the \fBterminfo\fR model implemented.
-.sp
-.LP
-Terminals that cannot display tilde (~) characters, such as certain Hazeltine
-terminals, should indicate \fBhz\fR.
-.sp
-.LP
-Terminals that ignore a linefeed immediately after an \fBam\fR wrap, such as
-the Concept 100, should indicate \fBxenl\fR. Those terminals whose cursor
-remains on the right-most column until another character has been received,
-rather than wrapping immediately upon receiving the right-most character, such
-as the VT100, should also indicate \fBxenl\fR.
-.sp
-.LP
-If \fBel\fR is required to get rid of standout (instead of writing normal text
-on top of it), \fBxhp\fR should be given.
-.sp
-.LP
-Those Teleray terminals whose tabs turn all characters moved over to blanks,
-should indicate \fBxt\fR (destructive tabs). This capability is also taken to
-mean that it is not possible to position the cursor on top of a ``magic
-cookie.'' Therefore, to erase standout mode, it is necessary, instead, to use
-delete and insert line.
-.sp
-.LP
-Those Beehive Superbee terminals which do not transmit the escape or
-control\(miC characters, should specify \fBxsb\fR, indicating that the f1 key
-is to be used for escape and the f2 key for control C.
-.SS "Section 1-16: Similar Terminals"
-If there are two very similar terminals, one can be defined as being just like
-the other with certain exceptions. The string capability \fBuse\fR can be given
-with the name of the similar terminal. The capabilities given before \fBuse\fR
-override those in the terminal type invoked by \fBuse\fR. A capability can be
-canceled by placing \fIxx\fR\fB@\fR to the left of the capability definition,
-where \fIxx\fR is the capability. For example, the entry
-.sp
-.in +2
-.nf
-\fBatt4424-2|Teletype4424 in display function group ii,
-rev@, sgr@, smul@, use=att4424,\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-defines an AT&T4424 terminal that does not have the \fBrev\fR, \fBsgr\fR, and
-\fBsmul\fR capabilities, and hence cannot do highlighting. This is useful for
-different modes for a terminal, or for different user preferences. More than
-one \fBuse\fR capability may be given.
-.SS "PART 2: PRINTER CAPABILITIES"
-The \fBterminfo\fR database allows you to define capabilities of printers as
-well as terminals. To find out what capabilities are available for printers as
-well as for terminals, see the two lists under "DEVICE CAPABILITIES" that list
-capabilities by variable and by capability name.
-.SS "Section 2-1: Rounding Values"
-Because parameterized string capabilities work only with integer values, we
-recommend that \fBterminfo\fR designers create strings that expect numeric
-values that have been rounded. Application designers should note this and
-should always round values to the nearest integer before using them with a
-parameterized string capability.
-.SS "Section 2-2: Printer Resolution"
-A printer's resolution is defined to be the smallest spacing of characters it
-can achieve. In general printers have independent resolution horizontally and
-vertically. Thus the vertical resolution of a printer can be determined by
-measuring the smallest achievable distance between consecutive printing
-baselines, while the horizontal resolution can be determined by measuring the
-smallest achievable distance between the left-most edges of consecutive
-printed, identical, characters.
-.sp
-.LP
-All printers are assumed to be capable of printing with a uniform horizontal
-and vertical resolution. The view of printing that \fBterminfo\fR currently
-presents is one of printing inside a uniform matrix: All characters are printed
-at fixed positions relative to each ``cell'' in the matrix; furthermore, each
-cell has the same size given by the smallest horizontal and vertical step sizes
-dictated by the resolution. (The cell size can be changed as will be seen
-later.)
-.sp
-.LP
-Many printers are capable of ``proportional printing,'' where the horizontal
-spacing depends on the size of the character last printed. \fBterminfo\fR does
-not make use of this capability, although it does provide enough capability
-definitions to allow an application to simulate proportional printing.
-.sp
-.LP
-A printer must not only be able to print characters as close together as the
-horizontal and vertical resolutions suggest, but also of ``moving'' to a
-position an integral multiple of the smallest distance away from a previous
-position. Thus printed characters can be spaced apart a distance that is an
-integral multiple of the smallest distance, up to the length or width of a
-single page.
-.sp
-.LP
-Some printers can have different resolutions depending on different ``modes.''
-In ``normal mode,'' the existing \fBterminfo\fR capabilities are assumed to
-work on columns and lines, just like a video terminal. Thus the old \fBlines\fR
-capability would give the length of a page in lines, and the \fBcols\fR
-capability would give the width of a page in columns. In ``micro mode,'' many
-\fBterminfo\fR capabilities work on increments of lines and columns. With some
-printers the micro mode may be concomitant with normal mode, so that all the
-capabilities work at the same time.
-.SS "Section 2-3: Specifying Printer Resolution"
-The printing resolution of a printer is given in several ways. Each specifies
-the resolution as the number of smallest steps per distance:
-.sp
-.in +2
-.nf
- Specification of Printer Resolution
- Characteristic Number of Smallest Steps
-
- orhi Steps per inch horizontally
- orvi Steps per inch vertically
- orc Steps per column
- orl Steps per line
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-When printing in normal mode, each character printed causes movement to the
-next column, except in special cases described later; the distance moved is the
-same as the per-column resolution. Some printers cause an automatic movement to
-the next line when a character is printed in the rightmost position; the
-distance moved vertically is the same as the per-line resolution. When printing
-in micro mode, these distances can be different, and may be zero for some
-printers.
-.sp
-.in +2
-.nf
- Specification of Printer Resolution
- Automatic Motion after Printing
-
- Normal Mode:
-
- orc Steps moved horizontally
- orl Steps moved vertically
-
- Micro Mode:
-
- mcs Steps moved horizontally
- mls Steps moved vertically
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Some printers are capable of printing wide characters. The distance moved when
-a wide character is printed in normal mode may be different from when a regular
-width character is printed. The distance moved when a wide character is printed
-in micro mode may also be different from when a regular character is printed in
-micro mode, but the differences are assumed to be related: If the distance
-moved for a regular character is the same whether in normal mode or micro mode
-(\fBmcs\fR=orc), then the distance moved for a wide character is also the same
-whether in normal mode or micro mode. This doesn't mean the normal character
-distance is necessarily the same as the wide character distance, just that the
-distances don't change with a change in normal to micro mode. However, if the
-distance moved for a regular character is different in micro mode from the
-distance moved in normal mode (\fBmcs\fR<\fBorc\fR), the micro mode distance is
-assumed to be the same for a wide character printed in micro mode, as the table
-below shows.
-.sp
-.in +2
-.nf
- Specification of Printer Resolution
- Automatic Motion after Printing Wide Character
-
- Normal Mode or Micro Mode (mcs = orc):
- sp
- widcs Steps moved horizontally
-
- Micro Mode (mcs < orc):
-
- mcs Steps moved horizontally
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-There may be control sequences to change the number of columns per inch (the
-character pitch) and to change the number of lines per inch (the line pitch).
-If these are used, the resolution of the printer changes, but the type of
-change depends on the printer:
-.sp
-.in +2
-.nf
- Specification of Printer Resolution
- Changing the Character/Line Pitches
-
- cpi Change character pitch
- cpix If set, cpi changes orhi, otherwise changes
- orc
- lpi Change line pitch
- lpix If set, lpi changes orvi, otherwise changes
- orl
- chr Change steps per column
- cvr Change steps per line
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The \fBcpi\fR and \fBlpi\fR string capabilities are each used with a single
-argument, the pitch in columns (or characters) and lines per inch,
-respectively. The \fBchr\fR and \fBcvr\fR string capabilities are each used
-with a single argument, the number of steps per column and line, respectively.
-.sp
-.LP
-Using any of the control sequences in these strings will imply a change in some
-of the values of \fBorc\fR, \fBorhi\fR, \fBorl\fR, and \fBorvi\fR. Also, the
-distance moved when a wide character is printed, \fBwidcs\fR, changes in
-relation to \fBorc\fR. The distance moved when a character is printed in micro
-mode, \fBmcs\fR, changes similarly, with one exception: if the distance is 0
-or 1, then no change is assumed (see items marked with * in the following
-table).
-.sp
-.LP
-Programs that use \fBcpi\fR, \fBlpi\fR, \fBchr\fR, or \fBcvr\fR should
-recalculate the printer resolution (and should recalculate other values\(em see
-"Effect of Changing Printing Resolution" under "Dot-Mapped Graphics").
-.sp
-.in +2
-.nf
- Specification of Printer Resolution
- Effects of Changing the Character/Line Pitches
-
- Before After
-
-Using cpi with cpix clear:
- $bold orhi '$ orhi
- $bold orc '$ $bold orc = bold orhi over V sub italic cpi$
-
- Using cpi with cpix set:
- $bold orhi '$ $bold orhi = bold orc cdot V sub italic cpi$
- $bold orc '$ $bold orc$
-
- Using lpi with lpix clear:
- $bold orvi '$ $bold orvi$
- $bold orl '$ $bold orl = bold orvi over V sub italic lpi$
-
- Using lpi with lpix set:
- $bold orvi '$ $bold orvi = bold orl cdot V sub italic lpi$
- $bold orl '$ $bold orl$
-
- Using chr:
- $bold orhi '$ $bold orhi$
- $bold orc '$ $V sub italic chr$
-
- Using cvr:
- $bold orvi '$ $bold orvi$
- $bold orl '$ $V sub italic cvr$
-
- Using cpi or chr:
- $bold widcs '$ $bold widcs = bold {widcs '} bold orc over { bold {orc '} }$
- $bold mcs '$ $bold mcs = bold {mcs '} bold orc over { bold {orc '} }$
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-$V sub italic cpi$, $V sub italic lpi$, $V sub italic chr$, and $V sub italic
-cvr$ are the arguments used with \fBcpi\fR, \fBlpi\fR, \fBchr\fR, and
-\fBcvr\fR, respectively. The prime marks (\|'\|) indicate the old values.
-.SS "Section 2-4: Capabilities that Cause Movement"
-In the following descriptions, ``movement'' refers to the motion of the
-``current position.'' With video terminals this would be the cursor; with some
-printers this is the carriage position. Other printers have different
-equivalents. In general, the current position is where a character would be
-displayed if printed.
-.sp
-.LP
-\fBterminfo\fR has string capabilities for control sequences that cause
-movement a number of full columns or lines. It also has equivalent string
-capabilities for control sequences that cause movement a number of smallest
-steps.
-.sp
-.in +2
-.nf
-String Capabilities for Motion
-
- mcub1 Move 1 step left
- mcuf1 Move 1 step right
- mcuu1 Move 1 step up
- mcud1 Move 1 step down
- mcub Move N steps left
- mcuf Move N steps right
- mcuu Move N steps up
- mcud Move N steps down
- mhpa Move N steps from the left
- mvpa Move N steps from the top
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The latter six strings are each used with a single argument, \fIN\fR.
-.sp
-.LP
-Sometimes the motion is limited to less than the width or length of a page.
-Also, some printers don't accept absolute motion to the left of the current
-position. \fBterminfo\fR has capabilities for specifying these limits.
-.sp
-.in +2
-.nf
-Limits to Motion
-
- mjump Limit on use of mcub1, mcuf1, mcuu1, mcud1
- maddr Limit on use of mhpa, mvpa
- xhpa If set, hpa and mhpa can't move left
- xvpa If set, vpa and mvpa can't move up
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-If a printer needs to be in a ``micro mode'' for the motion capabilities
-described above to work, there are string capabilities defined to contain the
-control sequence to enter and exit this mode. A boolean is available for those
-printers where using a carriage return causes an automatic return to normal
-mode.
-.sp
-.in +2
-.nf
- Entering/Exiting Micro Mode
-
- smicm Enter micro mode
- rmicm Exit micro mode
- crxm Using cr exits micro mode
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The movement made when a character is printed in the rightmost position varies
-among printers. Some make no movement, some move to the beginning of the next
-line, others move to the beginning of the same line. \fBterminfo\fR has boolean
-capabilities for describing all three cases.
-.sp
-.in +2
-.nf
- What Happens After Character
- Printed in Rightmost Position
-
- sam Automatic move to beginning of same line
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Some printers can be put in a mode where the normal direction of motion is
-reversed. This mode can be especially useful when there are no capabilities for
-leftward or upward motion, because those capabilities can be built from the
-motion reversal capability and the rightward or downward motion capabilities.
-It is best to leave it up to an application to build the leftward or upward
-capabilities, though, and not enter them in the \fBterminfo\fR database. This
-allows several reverse motions to be strung together without intervening wasted
-steps that leave and reenter reverse mode.
-.sp
-.in +2
-.nf
-Entering/Exiting Reverse Modes
-
- slm Reverse sense of horizontal motions
- rlm Restore sense of horizontal motions
- sum Reverse sense of vertical motions
- rum Restore sense of vertical motions
-
- While sense of horizontal motions reversed:
- mcub1 Move 1 step right
- mcuf1 Move 1 step left
- mcub Move N steps right
- mcuf Move N steps left
- cub1 Move 1 column right
- cuf1 Move 1 column left
- cub Move N columns right
- cuf Move N columns left
-
- While sense of vertical motions reversed:
- mcuu1 Move 1 step down
- mcud1 Move 1 step up
- mcuu Move N steps down
- mcud Move N steps up
- cuu1 Move 1 line down
- cud1 Move 1 line up
- cuu Move N lines down
- cud Move N lines up
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The reverse motion modes should not affect the \fBmvpa\fR and \fBmhpa\fR
-absolute motion capabilities. The reverse vertical motion mode should, however,
-also reverse the action of the line ``wrapping'' that occurs when a character
-is printed in the right-most position. Thus printers that have the standard
-\fBterminfo\fR capability \fBam\fR defined should experience motion to the
-beginning of the previous line when a character is printed in the right-most
-position under reverse vertical motion mode.
-.sp
-.LP
-The action when any other motion capabilities are used in reverse motion modes
-is not defined; thus, programs must exit reverse motion modes before using
-other motion capabilities.
-.sp
-.LP
-Two miscellaneous capabilities complete the list of new motion capabilities.
-One of these is needed for printers that move the current position to the
-beginning of a line when certain control characters, such as ``line-feed'' or
-``form-feed,'' are used. The other is used for the capability of suspending the
-motion that normally occurs after printing a character.
-.sp
-.in +2
-.nf
-Miscellaneous Motion Strings
-
- docr List of control characters causing cr
- zerom Prevent auto motion after printing next single character
-.fi
-.in -2
-.sp
-
-.SS "Margins"
-\fBterminfo\fR provides two strings for setting margins on terminals: one for
-the left and one for the right margin. Printers, however, have two additional
-margins, for the top and bottom margins of each page. Furthermore, some
-printers require not using motion strings to move the current position to a
-margin and then fixing the margin there, but require the specification of where
-a margin should be regardless of the current position. Therefore \fBterminfo\fR
-offers six additional strings for defining margins with printers.
-.sp
-.in +2
-.nf
-Setting Margins
-
- smgl Set left margin at current column
- smgr Set right margin at current column
- smgb Set bottom margin at current line
- smgt Set top margin at current line
- smgbp Set bottom margin at line N
- smglp Set left margin at column N
- smgrp Set right margin at column N
- smgtp Set top margin at line N
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The last four strings are used with one or more arguments that give the
-position of the margin or margins to set. If both of \fBsmglp\fR and
-\fBsmgrp\fR are set, each is used with a single argument, \fIN,\fR that gives
-the column number of the left and right margin, respectively. If both of
-\fBsmgtp\fR and \fBsmgbp\fR are set, each is used to set the top and bottom
-margin, respectively: \fBsmgtp\fR is used with a single argument, \fIN,\fR the
-line number of the top margin; however, \fBsmgbp\fR is used with two arguments,
-\fIN\fR and \fIM,\fR that give the line number of the bottom margin, the first
-counting from the top of the page and the second counting from the bottom. This
-accommodates the two styles of specifying the bottom margin in different
-manufacturers' printers. When coding a \fBterminfo\fR entry for a printer that
-has a settable bottom margin, only the first or second parameter should be
-used, depending on the printer. When writing an application that uses
-\fBsmgbp\fR to set the bottom margin, both arguments must be given.
-.sp
-.LP
-If only one of \fBsmglp\fR and \fBsmgrp\fR is set, then it is used with two
-arguments, the column number of the left and right margins, in that order.
-Likewise, if only one of \fBsmgtp\fR and \fBsmgbp\fR is set, then it is used
-with two arguments that give the top and bottom margins, in that order,
-counting from the top of the page. Thus when coding a \fBterminfo\fR entry for
-a printer that requires setting both left and right or top and bottom margins
-simultaneously, only one of \fBsmglp\fR and \fBsmgrp\fR or \fBsmgtp\fR and
-\fBsmgbp\fR should be defined; the other should be left blank. When writing an
-application that uses these string capabilities, the pairs should be first
-checked to see if each in the pair is set or only one is set, and should then
-be used accordingly.
-.sp
-.LP
-In counting lines or columns, line zero is the top line and column zero is the
-left-most column. A zero value for the second argument with \fBsmgbp\fR means
-the bottom line of the page.
-.sp
-.LP
-All margins can be cleared with \fBmgc\fR.
-.SS "Shadows, Italics, Wide Characters"
-Five new sets of strings describe the capabilities printers have of enhancing
-printed text.
-.sp
-.in +2
-.nf
-Enhanced Printing
-
- sshm Enter shadow-printing mode
- rshm Exit shadow-printing mode
- sitm Enter italicizing mode
- ritm Exit italicizing mode
- swidm Enter wide character mode
- rwidm Exit wide character mode
- ssupm Enter superscript mode
- rsupd
- m Exit superscript mode
- supcs List of characters available as superscripts
- ssubm Enter subscript mode
- rsubm Exit subscript mode
- subcs List of characters available as subscripts
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-If a printer requires the \fBsshm\fR control sequence before every character to
-be shadow-printed, the \fBrshm\fR string is left blank. Thus programs that find
-a control sequence in \fBsshm\fR but none in \fBrshm\fR should use the
-\fBsshm\fR control sequence before every character to be shadow-printed;
-otherwise, the \fBsshm\fR control sequence should be used once before the set
-of characters to be shadow-printed, followed by \fBrshm\fR. The same is also
-true of each of the \fBsitm\fR/\fBritm\fR, \fBswidm\fR/\fBrwidm\fR,
-\fBssupm\fR/\fBrsupm\fR, and \fBssubm\fR/ \fBrsubm\fR pairs.
-.sp
-.LP
-Note that \fBterminfo\fR also has a capability for printing emboldened text
-(\fBbold\fR). While shadow printing and emboldened printing are similar in that
-they ``darken'' the text, many printers produce these two types of print in
-slightly different ways. Generally, emboldened printing is done by overstriking
-the same character one or more times. Shadow printing likewise usually involves
-overstriking, but with a slight movement up and/or to the side so that the
-character is ``fatter.''
-.sp
-.LP
-It is assumed that enhanced printing modes are independent modes, so that it
-would be possible, for instance, to shadow print italicized subscripts.
-.sp
-.LP
-As mentioned earlier, the amount of motion automatically made after printing a
-wide character should be given in \fBwidcs\fR.
-.sp
-.LP
-If only a subset of the printable ASCII characters can be printed as
-superscripts or subscripts, they should be listed in \fBsupcs\fR or \fBsubcs\fR
-strings, respectively. If the \fBssupm\fR or \fBssubm\fR strings contain
-control sequences, but the corresponding \fBsupcs\fR or \fBsubcs\fR strings are
-empty, it is assumed that all printable ASCII characters are available as
-superscripts or subscripts.
-.sp
-.LP
-Automatic motion made after printing a superscript or subscript is assumed to
-be the same as for regular characters. Thus, for example, printing any of the
-following three examples will result in equivalent motion:
-.sp
-.LP
-\fBBi B\fR(i) B^i
-.sp
-.LP
-Note that the existing \fBmsgr\fR boolean capability describes whether motion
-control sequences can be used while in ``standout mode.'' This capability is
-extended to cover the enhanced printing modes added here. \fBmsgr\fR should be
-set for those printers that accept any motion control sequences without
-affecting shadow, italicized, widened, superscript, or subscript printing.
-Conversely, if \fBmsgr\fR is not set, a program should end these modes before
-attempting any motion.
-.SS "Section 2-5: Alternate Character Sets"
-In addition to allowing you to define line graphics (described in Section
-1-12), \fBterminfo\fR lets you define alternate character sets. The following
-capabilities cover printers and terminals with multiple selectable or definable
-character sets.
-.sp
-.in +2
-.nf
-Alternate Character Sets
-
- scs Select character set N
- scsd Start definition of character set N, M characters
- defc Define character A, B dots wide, descender D
- rcsd End definition of character set N
- csnm List of character set names
- daisy Printer has manually changed print-wheels
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The \fBscs\fR, \fBrcsd\fR, and \fBcsnm\fR strings are used with a single
-argument, \fIN\fR, a number from 0 to 63 that identifies the character set. The
-\fBscsd\fR string is also used with the argument \fIN\fR and another, \fIM\fR,
-that gives the number of characters in the set. The \fBdefc\fR string is used
-with three arguments: \fIA\fR gives the ASCII code representation for the
-character, \fIB\fR gives the width of the character in dots, and \fID\fR is
-zero or one depending on whether the character is a ``descender'' or not. The
-\fBdefc\fR string is also followed by a string of ``image-data'' bytes that
-describe how the character looks (see below).
-.sp
-.LP
-Character set 0 is the default character set present after the printer has been
-initialized. Not every printer has 64 character sets, of course; using
-\fBscs\fR with an argument that doesn't select an available character set
-should cause a null result from \fBtparm\fR.
-.sp
-.LP
-If a character set has to be defined before it can be used, the \fBscsd\fR
-control sequence is to be used before defining the character set, and the
-\fBrcsd\fR is to be used after. They should also cause a null result from
-\fBtparm\fR when used with an argument \fIN\fR that doesn't apply. If a
-character set still has to be selected after being defined, the \fBscs\fR
-control sequence should follow the \fBrcsd\fR control sequence. By examining
-the results of using each of the \fBscs\fR, \fBscsd\fR, and \fBrcsd\fR strings
-with a character set number in a call to \fBtparm\fR, a program can determine
-which of the three are needed.
-.sp
-.LP
-Between use of the \fBscsd\fR and \fBrcsd\fR strings, the \fBdefc\fR string
-should be used to define each character. To print any character on printers
-covered by \fBterminfo\fR, the ASCII code is sent to the printer. This is true
-for characters in an alternate set as well as ``normal'' characters. Thus the
-definition of a character includes the ASCII code that represents it. In
-addition, the width of the character in dots is given, along with an indication
-of whether the character should descend below the print line (such as the lower
-case letter ``g'' in most character sets). The width of the character in dots
-also indicates the number of image-data bytes that will follow the \fBdefc\fR
-string. These image-data bytes indicate where in a dot-matrix pattern ink
-should be applied to ``draw'' the character; the number of these bytes and
-their form are defined below under ``Dot-Mapped Graphics.''
-.sp
-.LP
-It's easiest for the creator of \fBterminfo\fR entries to refer to each
-character set by number; however, these numbers will be meaningless to the
-application developer. The \fBcsnm\fR string alleviates this problem by
-providing names for each number.
-.sp
-.LP
-When used with a character set number in a call to \fBtparm\fR, the \fBcsnm\fR
-string will produce the equivalent name. These names should be used as a
-reference only. No naming convention is implied, although anyone who creates a
-\fBterminfo\fR entry for a printer should use names consistent with the names
-found in user documents for the printer. Application developers should allow a
-user to specify a character set by number (leaving it up to the user to examine
-the \fBcsnm\fR string to determine the correct number), or by name, where the
-application examines the \fBcsnm\fR string to determine the corresponding
-character set number.
-.sp
-.LP
-These capabilities are likely to be used only with dot-matrix printers. If they
-are not available, the strings should not be defined. For printers that have
-manually changed print-wheels or font cartridges, the boolean \fBdaisy\fR is
-set.
-.SS "Section 2-6: Dot-Matrix Graphics"
-Dot-matrix printers typically have the capability of reproducing
-``raster-graphics'' images. Three new numeric capabilities and three new string
-capabilities can help a program draw raster-graphics images independent of the
-type of dot-matrix printer or the number of pins or dots the printer can handle
-at one time.
-.sp
-.in +2
-.nf
-Dot-Matrix Graphics
-
- npins Number of pins, N, in print-head
- spinv Spacing of pins vertically in pins per inch
- spinh Spacing of dots horizontally in dots per inch
- porder Matches software bits to print-head pins
- sbim Start printing bit image graphics, B bits wide
- rbim End printing bit image graphics
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The \fBsbim\fR string is used with a single argument, \fIB\fR, the width of the
-image in dots.
-.sp
-.LP
-The model of dot-matrix or raster-graphics that \fBterminfo\fR presents is
-similar to the technique used for most dot-matrix printers: each pass of the
-printer's print-head is assumed to produce a dot-matrix that is \fIN\fR dots
-high and \fIB\fR dots wide. This is typically a wide, squat, rectangle of dots.
-The height of this rectangle in dots will vary from one printer to the next;
-this is given in the \fBnpins\fR numeric capability. The size of the rectangle
-in fractions of an inch will also vary; it can be deduced from the \fBspinv\fR
-and \fBspinh\fR numeric capabilities. With these three values an application
-can divide a complete raster-graphics image into several horizontal strips,
-perhaps interpolating to account for different dot spacing vertically and
-horizontally.
-.sp
-.LP
-The \fBsbim\fR and \fBrbim\fR strings are used to start and end a dot-matrix
-image, respectively. The \fBsbim\fR string is used with a single argument that
-gives the width of the dot-matrix in dots. A sequence of ``image-data bytes''
-are sent to the printer after the \fBsbim\fR string and before the \fBrbim\fR
-string. The number of bytes is a integral multiple of the width of the
-dot-matrix; the multiple and the form of each byte is determined by the
-\fBporder\fR string as described below.
-.sp
-.LP
-The \fBporder\fR string is a comma separated list of pin numbers optionally
-followed by an numerical offset. The offset, if given, is separated from the
-list with a semicolon. The position of each pin number in the list corresponds
-to a bit in an 8-bit data byte. The pins are numbered consecutively from 1 to
-\fBnpins\fR, with 1 being the top pin. Note that the term ``pin'' is used
-loosely here; ``ink-jet'' dot-matrix printers don't have pins, but can be
-considered to have an equivalent method of applying a single dot of ink to
-paper. The bit positions in \fBporder\fR are in groups of 8, with the first
-position in each group the most significant bit and the last position the least
-significant bit. An application produces 8-bit bytes in the order of the groups
-in \fBporder\fR.
-.sp
-.LP
-An application computes the ``image-data bytes'' from the internal image,
-mapping vertical dot positions in each print-head pass into 8-bit bytes, using
-a 1 bit where ink should be applied and 0 where no ink should be applied. This
-can be reversed (0 bit for ink, 1 bit for no ink) by giving a negative pin
-number. If a position is skipped in \fBporder\fR, a 0 bit is used. If a
-position has a lower case `x' instead of a pin number, a 1 bit is used in the
-skipped position. For consistency, a lower case `o' can be used to represent a
-0 filled, skipped bit. There must be a multiple of 8 bit positions used or
-skipped in \fBporder\fR; if not, 0 bits are used to fill the last byte in the
-least significant bits. The offset, if given, is added to each data byte; the
-offset can be negative.
-.sp
-.LP
-Some examples may help clarify the use of the \fBporder\fR string. The AT&T
-470, AT&T 475 and C.Itoh 8510 printers provide eight pins for graphics. The
-pins are identified top to bottom by the 8 bits in a byte, from least
-significant to most. The \fBporder\fR strings for these printers would be
-\fB8,7,6,5,4,3,2,1\fR. The AT&T 478 and AT&T 479 printers also provide eight
-pins for graphics. However, the pins are identified in the reverse order. The
-\fBporder\fR strings for these printers would be \fB1,2,3,4,5,6,7,8\fR. The
-AT&T 5310, AT&T 5320, DEC LA100, and DEC LN03 printers provide six pins for
-graphics. The pins are identified top to bottom by the decimal values 1, 2, 4,
-8, 16 and 32. These correspond to the low six bits in an 8-bit byte, although
-the decimal values are further offset by the value 63. The \fBporder\fR string
-for these printers would be \fB,,6,5,4,3,2,1;63\fR, or alternately
-\fBo,o,6,5,4,3,2,1;63\fR.
-.SS "Section 2-7: Effect of Changing Printing Resolution"
-If the control sequences to change the character pitch or the line pitch are
-used, the pin or dot spacing may change:
-.sp
-.in +2
-.nf
- Dot-Matrix Graphics
- Changing the Character/Line Pitches
-
- cpi Change character pitch
- cpix If set, cpi changes spinh
- lpi Change line pitch
- lpix If set, lpi changes spinv
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Programs that use \fBcpi\fR or \fBlpi\fR should recalculate the dot spacing:
-.sp
-.in +2
-.nf
-Dot-Matrix Graphics
- Effects of Changing the Character/Line Pitches
-
- Before After
-
-Using cpi with cpix clear:
- $bold spinh '$ $bold spinh$
-
-Using cpi with cpix set:
- $bold spinh '$ $bold spinh = bold spinh ' cdot bold orhi over
- { bold {orhi '} }$
-
-Using lpi with lpix clear:
- $bold spinv '$ $bold spinv$
-
-Using lpi with lpix set:
- $bold spinv '$ $bold spinv = bold {spinv '} cdot bold orhi over
- { bold {orhi '}}$
-
-Using chr:
- $bold spinh '$ $bold spinh$
-
-Using cvr:
- $bold spinv '$ $bold spinv$
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-\fBorhi\fR' and \fBorhi\fR are the values of the horizontal resolution in steps
-per inch, before using \fBcpi\fR and after using \fBcpi\fR, respectively.
-Likewise, \fBorvi'\fR and \fBorvi\fR are the values of the vertical resolution
-in steps per inch, before using \fBlpi\fR and after using \fBlpi\fR,
-respectively. Thus, the changes in the dots per inch for dot-matrix graphics
-follow the changes in steps per inch for printer resolution.
-.SS "Section 2-8: Print Quality"
-Many dot-matrix printers can alter the dot spacing of printed text to produce
-near ``letter quality'' printing or ``draft quality'' printing. Usually it is
-important to be able to choose one or the other because the rate of printing
-generally falls off as the quality improves. There are three new strings used
-to describe these capabilities.
-.sp
-.in +2
-.nf
-Print Quality
-
- snlq Set near-letter quality print
- snrmq Set normal quality print
- sdrfq Set draft quality print
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The capabilities are listed in decreasing levels of quality. If a printer
-doesn't have all three levels, one or two of the strings should be left blank
-as appropriate.
-.SS "Section 2-9: Printing Rate and Buffer Size"
-Because there is no standard protocol that can be used to keep a program
-synchronized with a printer, and because modern printers can buffer data before
-printing it, a program generally cannot determine at any time what has been
-printed. Two new numeric capabilities can help a program estimate what has been
-printed.
-.sp
-.in +2
-.nf
-Print Rate/Buffer Size
-
- cps Nominal print rate in characters per second
- bufsz Buffer capacity in characters
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-\fBcps\fR is the nominal or average rate at which the printer prints
-characters; if this value is not given, the rate should be estimated at
-one-tenth the prevailing baud rate. \fBbufsz\fR is the maximum number of
-subsequent characters buffered before the guaranteed printing of an earlier
-character, assuming proper flow control has been used. If this value is not
-given it is assumed that the printer does not buffer characters, but prints
-them as they are received.
-.sp
-.LP
-As an example, if a printer has a 1000-character buffer, then sending the
-letter ``a'' followed by 1000 additional characters is guaranteed to cause the
-letter ``a'' to print. If the same printer prints at the rate of 100 characters
-per second, then it should take 10 seconds to print all the characters in the
-buffer, less if the buffer is not full. By keeping track of the characters sent
-to a printer, and knowing the print rate and buffer size, a program can
-synchronize itself with the printer.
-.sp
-.LP
-Note that most printer manufacturers advertise the maximum print rate, not the
-nominal print rate. A good way to get a value to put in for \fBcps\fR is to
-generate a few pages of text, count the number of printable characters, and
-then see how long it takes to print the text.
-.sp
-.LP
-Applications that use these values should recognize the variability in the
-print rate. Straight text, in short lines, with no embedded control sequences
-will probably print at close to the advertised print rate and probably faster
-than the rate in \fBcps\fR. Graphics data with a lot of control sequences, or
-very long lines of text, will print at well below the advertised rate and below
-the rate in \fBcps\fR. If the application is using \fBcps\fR to decide how long
-it should take a printer to print a block of text, the application should pad
-the estimate. If the application is using \fBcps\fR to decide how much text has
-already been printed, it should shrink the estimate. The application will thus
-err in favor of the user, who wants, above all, to see all the output in its
-correct place.
-.SH FILES
-.ne 2
-.na
-\fB\fB/usr/share/lib/terminfo/?/*\fR\fR
-.ad
-.sp .6
-.RS 4n
-compiled terminal description database
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/share/lib/.COREterm/?/*\fR\fR
-.ad
-.sp .6
-.RS 4n
-subset of compiled terminal description database
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/share/lib/tabset/*\fR\fR
-.ad
-.sp .6
-.RS 4n
-tab settings for some terminals, in a format appropriate to be output to the
-terminal (escape sequences that set margins and tabs)
-.RE
-
-.SH SEE ALSO
-\fBls\fR(1), \fBpg\fR(1), \fBstty\fR(1), \fBtput\fR(1), \fBtty\fR(1),
-\fBvi\fR(1), \fBinfocmp\fR(1M), \fBtic\fR(1M), \fBprintf\fR(3C),
-\fBcurses\fR(3CURSES), \fBcurses\fR(3XCURSES)
-.SH NOTES
-The most effective way to prepare a terminal description is by imitating the
-description of a similar terminal in \fBterminfo\fR and to build up a
-description gradually, using partial descriptions with a screen oriented
-editor, such as \fBvi\fR, to check that they are correct. To easily test a new
-terminal description the environment variable \fBTERMINFO\fR can be set to the
-pathname of a directory containing the compiled description, and programs will
-look there rather than in \fB/usr/share/lib/terminfo\fR.
diff --git a/usr/src/man/man4/timezone.4 b/usr/src/man/man4/timezone.4
deleted file mode 100644
index cfa7cf0ddc..0000000000
--- a/usr/src/man/man4/timezone.4
+++ /dev/null
@@ -1,65 +0,0 @@
-'\" te
-.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH TIMEZONE 4 "November 22, 2021"
-.SH NAME
-timezone \- default timezone data base
-.SH SYNOPSIS
-.nf
-\fB/etc/timezone\fR
-.fi
-
-.SH DESCRIPTION
-The timezone file contains information regarding the default timezone for each
-host in a domain. Alternatively, a single default line for the entire domain
-may be specified. Each entry has the format:
-.sp
-.in +2
-.nf
-\fITimezone-name official-host-or-domain-name\fR
-.fi
-.in -2
-
-.sp
-.LP
-Items are separated by any number of blanks and/or TAB characters. A `#'
-indicates the beginning of a comment; characters up to the end of the line are
-not interpreted by routines which search the file. The timezone is a pathname
-relative to the directory \fB/usr/share/lib/zoneinfo\fR.
-.sp
-.LP
-This file is not actually referenced by any system software; it is merely used
-as a source file to construct the \fBNIS\fR \fBtimezone.byname\fR map, which
-was used by the installer in older releases of Solaris.
-.sp
-.LP
-The \fBtimezone\fR file does not set the timezone environment variable
-\fBTZ\fR. See \fBTIMEZONE\fR(4) for information to set the \fBTZ\fR environment
-variable.
-.SH EXAMPLES
-\fBExample 1 \fRTypical timezone line
-.sp
-.LP
-Here is a typical line from the \fB/etc/timezone\fR file:
-
-.sp
-.in +2
-.nf
-US/Eastern East.Example.COM #Host on East Coast
-.fi
-.in -2
-.sp
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/etc/timezone\fR\fR
-.ad
-.RS 17n
-
-.RE
-
-.SH SEE ALSO
-\fBTIMEZONE\fR(4)
diff --git a/usr/src/man/man4/tnf_kernel_probes.4 b/usr/src/man/man4/tnf_kernel_probes.4
deleted file mode 100644
index 12ab068ccb..0000000000
--- a/usr/src/man/man4/tnf_kernel_probes.4
+++ /dev/null
@@ -1,942 +0,0 @@
-'\" te
-.\" Copyright 1999 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH TNF_KERNEL_PROBES 4 "June 20, 2021"
-.SH NAME
-tnf_kernel_probes \- TNF kernel probes
-.SH DESCRIPTION
-The set of probes (trace instrumentation points) available in the standard
-kernel. The probes log trace data to a kernel trace buffer in Trace Normal
-Form (TNF). Kernel probes are controlled by \fBprex\fR(1). A snapshot of the
-kernel trace buffer can be made using \fBtnfxtract\fR(1) and examined using
-\fBtnfdump\fR(1).
-.sp
-.LP
-Each probe has a \fIname\fR and is associated with a set of symbolic
-\fIkeys\fR, or \fIcategories\fR. These are used to select and control probes
-from \fBprex\fR(1). A probe that is enabled for tracing generates a \fBTNF\fR
-record, called an \fIevent record\fR. An event record contains two common
-members and may contain other probe-specific data members.
-.SS "Common Members"
-.in +2
-.nf
-\fBtnf_probe_event\fR \fItag\fR
-\fBtnf_time_delta\fR \fItime_delta\fR
-.fi
-.in -2
-
-.sp
-.ne 2
-.na
-\fB\fItag\fR\fR
-.ad
-.RS 14n
-Encodes \fBTNF\fR references to two other records:
-.sp
-.ne 2
-.na
-\fB\fItag\fR\fR
-.ad
-.RS 12n
-Describes the layout of the event record.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIschedule\fR\fR
-.ad
-.RS 12n
-Identifies the writing thread and also contains a 64-bit base time in
-nanoseconds.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fItime_delta\fR\fR
-.ad
-.RS 14n
-A 32-bit time offset from the base time; the sum of the two times is the actual
-time of the event.
-.RE
-
-.SS "Threads"
-.SS "\fBthread_create\fR"
-.in +2
-.nf
-\fBtnf_kthread_id\fR \fItid\fR
-\fBtnf_pid\fR \fIpid\fR
-\fBtnf_symbol\fR \fIstart_pc\fR
-.fi
-.in -2
-
-.sp
-.LP
-Thread creation event.
-.sp
-.ne 2
-.na
-\fB\fItid\fR\fR
-.ad
-.RS 12n
-The thread identifier for the new thread.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIpid\fR\fR
-.ad
-.RS 12n
-The process identifier for the new thread.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIstart_pc\fR\fR
-.ad
-.RS 12n
-The kernel address of its start routine.
-.RE
-
-.SS "\fBthread_state\fR"
-.in +2
-.nf
-\fBtnf_kthread_id\fR \fItid\fR
-\fBtnf_microstate\fR \fIstate\fR
-.fi
-.in -2
-
-.sp
-.LP
-Thread microstate transition events.
-.sp
-.ne 2
-.na
-\fB\fItid\fR\fR
-.ad
-.RS 9n
-Optional; if it is absent, the event is for the writing thread, otherwise the
-event is for the specified thread.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIstate\fR\fR
-.ad
-.RS 9n
-Indicates the thread state:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Running in user mode.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Running in system mode.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Asleep waiting for a user-mode lock.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Asleep on a kernel object.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Runnable (waiting for a cpu).
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Stopped.
-.RE
-The values of this member are defined in <\fBsys/msacct.h\fR>. Note that to
-reduce trace output, transitions between the \fIsystem\fR and \fIuser\fR
-microstates that are induced by system calls are not traced. This information
-is implicit in the system call entry and exit events.
-.RE
-
-.SS "thread_exit"
-Thread termination event for writing thread. This probe has no data members
-other than the common members.
-.SS "Scheduling"
-\fB\fR
-.SS "thread_queue"
-.in +2
-.nf
-\fBtnf_kthread_id\fR \fItid\fR
-\fBtnf_cpuid\fR \fIcpuid\fR
-\fBtnf_long\fR \fIpriority\fR
-\fBtnf_ulong\fR \fIqueue_length\fR
-.fi
-.in -2
-
-.sp
-.LP
-Thread scheduling events. These are triggered when a runnable thread is placed
-on a dispatch queue.
-.sp
-.ne 2
-.na
-\fB\fIcpuid\fR\fR
-.ad
-.RS 16n
-Specifies the cpu to which the queue is attached.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIpriority\fR\fR
-.ad
-.RS 16n
-The (global) dispatch priority of the thread.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIqueue_length\fR\fR
-.ad
-.RS 16n
-The current length of the cpu's dispatch queue.
-.RE
-
-.SS "Blocking"
-.SS "\fBthread_block\fR"
-.in +2
-.nf
-\fBtnf_opaque\fR \fIreason\fR
-\fBtnf_symbols\fR \fIstack\fR
-.fi
-.in -2
-
-.sp
-.LP
-Thread blockage event. This probe captures a partial stack backtrace when the
-current thread blocks.
-.sp
-.ne 2
-.na
-\fB\fIreason\fR\fR
-.ad
-.RS 11n
-The address of the object on which the thread is blocking.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIsymbols\fR\fR
-.ad
-.RS 11n
-References a \fBTNF\fR array of kernel addresses representing the PCs on the
-stack at the time the thread blocks.
-.RE
-
-.SS "System Calls"
-.SS "\fBsyscall_start\fR"
-.in +2
-.nf
-\fBtnf_sysnum\fR \fIsysnum\fR
-.fi
-.in -2
-
-.sp
-.LP
-System call entry event.
-.sp
-.ne 2
-.na
-\fB\fIsysnum\fR\fR
-.ad
-.RS 10n
-The system call number. The writing thread implicitly enters the \fIsystem\fR
-microstate with this event.
-.RE
-
-.SS "\fBsyscall_end\fR"
-.in +2
-.nf
-\fBtnf_long\fR \fIrval1\fR
-\fBtnf_long\fR \fIrval2\fR
-\fBtnf_long\fR \fIerrno\fR
-.fi
-.in -2
-
-.sp
-.LP
-System call exit event.
-.sp
-.ne 2
-.na
-\fB\fIrval1\fR and \fIrval2\fR\fR
-.ad
-.RS 19n
-The two return values of the system call
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIerrno\fR\fR
-.ad
-.RS 19n
-The error return.
-.RE
-
-.sp
-.LP
-The writing thread implicitly enters the \fIuser\fR microstate with this event.
-.SS "Page Faults"
-.SS "\fBaddress_fault\fR"
-.in +2
-.nf
-\fBtnf_opaque\fR \fIaddress\fR
-\fBtnf_fault_type\fR \fIfault_type\fR
-\fBtnf_seg_access\fR \fIaccess\fR
-.fi
-.in -2
-
-.sp
-.LP
-Address-space fault event.
-.sp
-.ne 2
-.na
-\fB\fIaddress\fR\fR
-.ad
-.RS 14n
-Gives the faulting virtual address.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIfault_type\fR\fR
-.ad
-.RS 14n
-Gives the fault type: invalid page, protection fault, software requested
-locking or unlocking.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIaccess\fR\fR
-.ad
-.RS 14n
-Gives the desired access protection: read, write, execute or create. The values
-for these two members are defined in <\fBvm/seg_enum.h\fR>.
-.RE
-
-.SS "\fBmajor_fault\fR"
-.in +2
-.nf
-\fBtnf_opaque\fR \fIvnode\fR
-\fBtnf_offset\fR \fIoffset\fR
-.fi
-.in -2
-
-.sp
-.LP
-Major page fault event. The faulting page is mapped to the file given by the
-\fIvnode\fR member, at the given \fIoffset\fR into the file. (The faulting
-virtual address is in the most recent \fBaddress_fault\fR event for the writing
-thread.)
-.SS "\fBanon_private\fR"
-.in +2
-.nf
-\fBtnf_opaque\fR \fIaddress\fR
-.fi
-.in -2
-
-.sp
-.LP
-Copy-on-write page fault event.
-.sp
-.ne 2
-.na
-\fB\fIaddress\fR\fR
-.ad
-.RS 11n
-The virtual address at which the new page is mapped.
-.RE
-
-.SS "\fBanon_zero\fR"
-.in +2
-.nf
-\fBtnf_opaque\fR \fIaddress\fR
-.fi
-.in -2
-
-.sp
-.LP
-Zero-fill page fault event.
-.sp
-.ne 2
-.na
-\fB\fIaddress\fR\fR
-.ad
-.RS 11n
-The virtual address at which the new page is mapped.
-.RE
-
-.SS "\fBpage_unmap\fR"
-.in +2
-.nf
-\fBtnf_opaque\fR \fIvnode\fR
-\fBtnf_offset\fR \fIoffset\fR
-.fi
-.in -2
-
-.sp
-.LP
-Page unmapping event. This probe marks the unmapping of a file system page
-from the system.
-.sp
-.ne 2
-.na
-\fB\fIvnode\fR and \fIoffset\fR\fR
-.ad
-.RS 20n
-Identifies the file and offset of the page being unmapped.
-.RE
-
-.SS "Pageins and Pageouts"
-.SS "\fBpagein\fR"
-.in +2
-.nf
-\fBtnf_opaque\fR \fIvnode\fR
-\fBtnf_offset\fR \fIoffset\fR
-\fBtnf_size\fR \fIsize\fR
-.fi
-.in -2
-
-.sp
-.LP
-Pagein start event. This event signals the initiation of pagein I/O.
-.sp
-.ne 2
-.na
-\fB\fIvnode\fR and \fIoffset\fR\fR
-.ad
-.RS 18n
-Identifies the file and offset to be paged in.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIsize\fR\fR
-.ad
-.RS 18n
-Specifies the number of bytes to be paged in.
-.RE
-
-.SS "\fBpageout\fR"
-.in +2
-.nf
-\fBtnf_opaque\fR \fIvnode\fR
-\fBtnf_ulong\fR \fIpages_pageout\fR
-\fBtnf_ulong\fR \fIpages_freed\fR
-\fBtnf_ulong\fR \fIpages_reclaimed\fR
-.fi
-.in -2
-
-.sp
-.LP
-Pageout completion event. This event signals the completion of pageout I/O.
-.sp
-.ne 2
-.na
-\fB\fIvnode\fR\fR
-.ad
-.RS 19n
-Identifies the file of the pageout request.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIpages_pageout\fR\fR
-.ad
-.RS 19n
-The number of pages written out.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIpages_freed\fR\fR
-.ad
-.RS 19n
-The number of pages freed after being written out.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIpages_reclaimed\fR\fR
-.ad
-.RS 19n
-The number of pages reclaimed after being written out.
-.RE
-
-.SS "Page Daemon (Page Stealer)"
-.SS "\fBpageout_scan_start\fR"
-.in +2
-.nf
-\fBtnf_ulong\fR \fIpages_free\fR
-\fBtnf_ulong\fR \fIpages_needed\fR
-.fi
-.in -2
-
-.sp
-.LP
-Page daemon scan start event. This event signals the beginning of one
-iteration of the page daemon.
-.sp
-.ne 2
-.na
-\fB\fIpages_free\fR\fR
-.ad
-.RS 16n
-The number of free pages in the system.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIpages_needed\fR\fR
-.ad
-.RS 16n
-The number of pages desired free.
-.RE
-
-.SS "\fBpageout_scan_end\fR"
-.in +2
-.nf
-\fBtnf_ulong\fR \fIpages_free\fR
-\fBtnf_ulong\fR \fIpages_scanned\fR
-.fi
-.in -2
-
-.sp
-.LP
-Page daemon scan end event. This event signals the end of one iteration of the
-page daemon.
-.sp
-.ne 2
-.na
-\fB\fIpages_free\fR\fR
-.ad
-.RS 17n
-The number of free pages in the system.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIpages_scanned\fR\fR
-.ad
-.RS 17n
-The number of pages examined by the page daemon. (Potentially more pages will
-be freed when any queued pageout requests complete.)
-.RE
-
-.SS "Swapper"
-.SS "\fBswapout_process\fR"
-.in +2
-.nf
-\fBtnf_pid\fR \fIpid\fR
-\fBtnf_ulong\fR \fIpage_count\fR
-.fi
-.in -2
-
-.sp
-.LP
-Address space swapout event. This event marks the swapping out of a process
-address space.
-.sp
-.ne 2
-.na
-\fB\fIpid\fR\fR
-.ad
-.RS 14n
-Identifies the process.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIpage_count\fR\fR
-.ad
-.RS 14n
-Reports the number of pages either freed or queued for pageout.
-.RE
-
-.SS "\fBswapout_lwp\fR"
-.in +2
-.nf
-\fBtnf_pid\fR \fIpid\fR
-\fBtnf_lwpid\fR \fIlwpid\fR
-\fBtnf_kthread_id\fR \fItid\fR
-\fBtnf_ulong\fR \fIpage_count\fR
-.fi
-.in -2
-
-.sp
-.LP
-Light-weight process swapout event. This event marks the swapping out of an
-\fBLWP\fR and its stack.
-.sp
-.ne 2
-.na
-\fB\fIpid\fR\fR
-.ad
-.RS 14n
-The \fBLWP's\fR process identifier
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIlwpid\fR\fR
-.ad
-.RS 14n
-The \fBLWP\fR identifier
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fItid\fR \fImember\fR\fR
-.ad
-.RS 14n
-The \fBLWP's\fR kernel thread identifier.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIpage_count\fR\fR
-.ad
-.RS 14n
-The number of pages swapped out.
-.RE
-
-.SS "\fBswapin_lwp\fR"
-.in +2
-.nf
-\fBtnf_pid\fR \fIpid\fR
-\fBtnf_lwpid\fR \fIlwpid\fR
-\fBtnf_kthread_id\fR \fItid\fR
-\fBtnf_ulong\fR \fIpage_count\fR
-.fi
-.in -2
-
-.sp
-.LP
-Light-weight process swapin event. This event marks the swapping in of an
-\fBLWP\fR and its stack.
-.sp
-.ne 2
-.na
-\fB\fIpid\fR\fR
-.ad
-.RS 14n
-The \fBLWP's\fR process identifier.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIlwpid\fR\fR
-.ad
-.RS 14n
-The \fBLWP\fR identifier.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fItid\fR\fR
-.ad
-.RS 14n
-The \fBLWP's\fR kernel thread identifier.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIpage_count\fR\fR
-.ad
-.RS 14n
-The number of pages swapped in.
-.RE
-
-.SS "Local I/O"
-.SS "\fBstrategy\fR"
-.in +2
-.nf
-\fBtnf_device\fR \fIdevice\fR
-\fBtnf_diskaddr\fR \fIblock\fR
-\fBtnf_size\fR \fIsize\fR
-\fBtnf_opaque\fR \fIbuf\fR
-\fBtnf_bioflags\fR \fI flags\fR
-.fi
-.in -2
-
-.sp
-.LP
-Block I/O strategy event. This event marks a call to the \fBstrategy\fR(9E)
-function of a block device driver.
-.sp
-.ne 2
-.na
-\fB\fIdevice\fR\fR
-.ad
-.RS 10n
-Contains the major and minor numbers of the device.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIblock\fR\fR
-.ad
-.RS 10n
-The logical block number to be accessed on the device.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIsize\fR\fR
-.ad
-.RS 10n
-The size of the I/O request.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIbuf\fR\fR
-.ad
-.RS 10n
-The kernel address of the \fBbuf\fR(9S) structure associated with the transfer.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIflags\fR\fR
-.ad
-.RS 10n
-The \fBbuf\fR(9S) flags associated with the transfer.
-.RE
-
-.SS "\fBbiodone\fR"
-.in +2
-.nf
-\fBtnf_device\fR \fIdevice\fR
-\fBtnf_diskaddr\fR \fIblock\fR
-\fBtnf_opaque\fR \fIbuf\fR
-.fi
-.in -2
-
-.sp
-.LP
-Buffered I/O completion event. This event marks calls to the \fBbiodone\fR(9F)
-function.
-.sp
-.ne 2
-.na
-\fB\fIdevice\fR\fR
-.ad
-.RS 10n
-Contains the major and minor numbers of the device.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIblock\fR\fR
-.ad
-.RS 10n
-The logical block number accessed on the device.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIbuf\fR\fR
-.ad
-.RS 10n
-The kernel address of the \fBbuf\fR(9S) structure associated with the transfer.
-.RE
-
-.SS "\fBphysio_start\fR"
-.in +2
-.nf
-\fBtnf_device\fR \fIdevice\fR
-\fBtnf_offset\fR \fIoffset\fR
-\fBtnf_size\fR \fIsize\fR
-\fBtnf_bioflags\fR \fIrw\fR
-.fi
-.in -2
-
-.sp
-.LP
-Raw I/O start event. This event marks entry into the \fBphysio\fR(9F)
-function which performs unbuffered I/O.
-.sp
-.ne 2
-.na
-\fB\fIdevice\fR\fR
-.ad
-.RS 10n
-Contains the major and minor numbers of the device of the transfer.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIoffset\fR\fR
-.ad
-.RS 10n
-The logical offset on the device for the transfer.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIsize\fR\fR
-.ad
-.RS 10n
-The number of bytes to be transferred.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIrw\fR\fR
-.ad
-.RS 10n
-The direction of the transfer: read or write (see \fBbuf\fR(9S)).
-.RE
-
-.SS "\fBphysio_end\fR"
-.in +2
-.nf
-\fBtnf_device\fR \fIdevice\fR
-.fi
-.in -2
-
-.sp
-.LP
-Raw I/O end event. This event marks exit from the \fBphysio\fR(9F) function.
-.sp
-.ne 2
-.na
-\fB\fIdevice\fR\fR
-.ad
-.RS 10n
-The major and minor numbers of the device of the transfer.
-.RE
-
-.SH USAGE
-Use the \fBprex\fR utility to control kernel probes. The standard \fBprex\fR
-commands to list and manipulate probes are available to you, along with
-commands to set up and manage kernel tracing.
-.sp
-.LP
-Kernel probes write trace records into a kernel trace buffer. You must copy the
-buffer into a TNF file for post-processing; use the \fBtnfxtract\fR utility for
-this.
-.sp
-.LP
-You use the \fBtnfdump\fR utility to examine a kernel trace file. This is
-exactly the same as examining a user-level trace file.
-.sp
-.LP
-The steps you typically follow to take a kernel trace are:
-.RS +4
-.TP
-1.
-Become superuser (\fBsu\fR).
-.RE
-.RS +4
-.TP
-2.
-Allocate a kernel trace buffer of the desired size (\fBprex\fR).
-.RE
-.RS +4
-.TP
-3.
-Select the probes you want to trace and enable (\fBprex\fR).
-.RE
-.RS +4
-.TP
-4.
-Turn kernel tracing on (\fBprex\fR).
-.RE
-.RS +4
-.TP
-5.
-Run your application.
-.RE
-.RS +4
-.TP
-6.
-Turn kernel tracing off (\fBprex\fR).
-.RE
-.RS +4
-.TP
-7.
-Extract the kernel trace buffer (\fBtnfxtract\fR).
-.RE
-.RS +4
-.TP
-8.
-Disable all probes (\fBprex\fR).
-.RE
-.RS +4
-.TP
-9.
-Deallocate the kernel trace buffer (\fBprex\fR).
-.RE
-.RS +4
-.TP
-10.
-Examine the trace file (\fBtnfdump\fR).
-.RE
-.sp
-.LP
-A convenient way to follow these steps is to use two shell windows; run an
-interactive \fBprex\fR session in one, and run your application and
-\fBtnfxtract\fR in the other.
-.SH SEE ALSO
-\fBprex\fR(1), \fBtnfdump\fR(1), \fBtnfxtract\fR(1), \fBlibtnfctl\fR(3TNF),
-\fBTNF_PROBE\fR(3TNF), \fBtracing\fR(3TNF), \fBstrategy\fR(9E),
-\fBbiodone\fR(9F), \fBphysio\fR(9F), \fBbuf\fR(9S)
diff --git a/usr/src/man/man4/ts_dptbl.4 b/usr/src/man/man4/ts_dptbl.4
deleted file mode 100644
index 9dbcc11d15..0000000000
--- a/usr/src/man/man4/ts_dptbl.4
+++ /dev/null
@@ -1,452 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T, Copyright (c) 2002, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH TS_DPTBL 4 "Oct 15, 2002"
-.SH NAME
-ts_dptbl \- time-sharing dispatcher parameter table
-.SH DESCRIPTION
-The process scheduler (or dispatcher) is the portion of the kernel that
-controls allocation of the \fBCPU\fR to processes. The scheduler supports the
-notion of scheduling classes where each class defines a scheduling policy, used
-to schedule processes within that class. Associated with each scheduling class
-is a set of priority queues on which ready to run processes are linked. These
-priority queues are mapped by the system configuration into a set of global
-scheduling priorities which are available to processes within the class. (The
-dispatcher always selects for execution the process with the highest global
-scheduling priority in the system.) The priority queues associated with a given
-class are viewed by that class as a contiguous set of priority levels numbered
-from 0 (lowest priority) to \fIn\fR (highest priority\(ema
-configuration-dependent value). The set of global scheduling priorities that
-the queues for a given class are mapped into might not start at zero and might
-not be contiguous (depending on the configuration).
-.sp
-.LP
-Processes in the time-sharing class which are running in user mode (or in
-kernel mode before going to sleep) are scheduled according to the parameters in
-a time-sharing dispatcher parameter table (\fBts_dptbl\fR). Processes in the
-inter-active scheduling class are also scheduled according to the parameters in
-the time-sharing dispatcher parameter table. (Time-sharing processes and
-inter-active processes running in kernel mode after sleeping are run within a
-special range of priorities reserved for such processes and are not affected by
-the parameters in the \fBts_dptbl\fR until they return to user mode.) The
-\fBts_dptbl\fR consists of an array (\fBconfig_ts_dptbl[]\fR) of parameter
-structures (\fBstruct tsdpent_t\fR), one for each of the \fIn\fR priority
-levels used by time-sharing processes and inter-active processes in user mode.
-The structures are accessed via a pointer, (\fBts_dptbl\fR), to the array. The
-properties of a given priority level \fIi\fR are specified by the \fIi\fRth
-parameter structure in this array (\fBts_dptbl[\fR \fIi\fR\fB]\fR ).
-.sp
-.LP
-A parameter structure consists of the following members. These are also
-described in the \fB/usr/include/sys/ts.h\fR header.
-.sp
-.ne 2
-.na
-\fB\fBts_globpri\fR\fR
-.ad
-.RS 14n
-The global scheduling priority associated with this priority level. The mapping
-between time-sharing priority levels and global scheduling priorities is
-determined at boot time by the system configuration. \fBts_globpri\fR is the
-only member of the \fBts_dptbl\fR which cannot be changed with
-\fBdispadmin\fR(1M).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBts_quantum\fR\fR
-.ad
-.RS 14n
-The length of the time quantum allocated to processes at this level in ticks
-(\fBhz\fR).
-.sp
-In the default high resolution clock mode (\fBhires_tick\fR set to \fB1\fR),
-the value of \fBhz\fR is set to \fB1000\fR. If this value is overridden to
-\fB0\fR then \fBhz\fR will instead be \fB100\fR; the number of ticks per
-quantum must then be decreased to maintain the same length of quantum in
-absolute time.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBts_tqexp\fR\fR
-.ad
-.RS 14n
-Priority level of the new queue on which to place a process running at the
-current level if it exceeds its time quantum. Normally this field links to a
-lower priority time-sharing level that has a larger quantum.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBts_slpret\fR\fR
-.ad
-.RS 14n
-Priority level of the new queue on which to place a process, that was
-previously in user mode at this level, when it returns to user mode after
-sleeping. Normally this field links to a higher priority level that has a
-smaller quantum.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBts_maxwait\fR\fR
-.ad
-.RS 14n
-A per process counter, \fBts_dispwait\fR is initialized to zero each time a
-time-sharing or inter-active process is placed back on the dispatcher queue
-after its time quantum has expired or when it is awakened (\fBts_dispwait\fR is
-not reset to zero when a process is preempted by a higher priority process).
-This counter is incremented once per second for each process on a dispatcher or
-sleep queue. If a process' \fBts_dispwait\fR value exceeds the \fBts_maxwait\fR
-value for its level, the process' priority is changed to that indicated by
-\fBts_lwait\fR. The purpose of this field is to prevent starvation.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBts_lwait\fR\fR
-.ad
-.RS 14n
-Move a process to this new priority level if \fBts_dispwait\fR is greater than
-\fBts_maxwait\fR.
-.RE
-
-.sp
-.LP
-An administrator can affect the behavior of the time-sharing portion of the
-scheduler by reconfiguring the \fBts_dptbl\fR. Since processes in the
-time-sharing and inter-active scheduling classes share the same dispatch
-parameter table (\fBts_dptbl\fR), changes to this table will affect both
-scheduling classes. There are two methods available for doing this: reconfigure
-with a loadable module at boot-time or by using \fBdispadmin\fR(1M) at
-run-time.
-.SS "ts_dptbl Loadable Module"
-The \fBts_dptbl\fR can be reconfigured with a loadable module which contains a
-new time sharing dispatch table. The module containing the dispatch table is
-separate from the TS loadable module which contains the rest of the
-time-sharing and inter-active software. This is the only method that can be
-used to change the number of time-sharing priority levels or the set of global
-scheduling priorities used by the time-sharing and inter-active classes. The
-relevant procedure and source code is described in the \fBREPLACING THE
-TS_DPTBL LOADABLE MODULE\fR section.
-.SS "dispadmin Configuration File"
-With the exception of \fBts_globpri\fR all of the members of the \fBts_dptbl\fR
-can be examined and modified on a running system using the \fBdispadmin\fR(1M)
-command. Invoking \fBdispadmin\fR for the time-sharing or inter-active class
-allows the administrator to retrieve the current \fBts_dptbl\fR configuration
-from the kernel's in-core table, or overwrite the in-core table with values
-from a configuration file. The configuration file used for input to
-\fBdispadmin\fR must conform to the specific format described below.
-.sp
-.LP
-Blank lines are ignored and any part of a line to the right of a \fI#\fR symbol
-is treated as a comment. The first non-blank, non-comment line must indicate
-the resolution to be used for interpreting the \fBts_quantum\fR time quantum
-values. The resolution is specified as
-.sp
-.in +2
-.nf
-\fBRES=\fR\fIres\fR
-.fi
-.in -2
-
-.sp
-.LP
-where \fIres\fR is a positive integer between 1 and 1,000,000,000 inclusive and
-the resolution used is the reciprocal of \fIres\fR in seconds (for example,
-\fBRES=1000\fR specifies millisecond resolution). Although very fine
-(nanosecond) resolution may be specified, the time quantum lengths are rounded
-up to the next integral multiple of the system clock's resolution.
-.sp
-.LP
-The remaining lines in the file are used to specify the parameter values for
-each of the time-sharing priority levels. The first line specifies the
-parameters for time-sharing level 0, the second line specifies the parameters
-for time-sharing level 1, etc. There must be exactly one line for each
-configured time-sharing priority level.
-.SH EXAMPLES
-\fBExample 1 \fRA Sample From a Configuration File
-.sp
-.LP
-The following excerpt from a \fBdispadmin\fR configuration file illustrates the
-format. Note that for each line specifying a set of parameters there is a
-comment indicating the corresponding priority level. These level numbers
-indicate priority within the time-sharing and interactive classes, and the
-mapping between these time-sharing priorities and the corresponding global
-scheduling priorities is determined by the configuration specified in the
-\fBts\fR master file. The level numbers are strictly for the convenience of the
-administrator reading the file and, as with any comment, they are ignored by
-\fBdispadmin\fR. \fBdispadmin\fR assumes that the lines in the file are ordered
-by consecutive, increasing priority level (from 0 to the maximum configured
-time-sharing priority). The level numbers in the comments should normally agree
-with this ordering; if for some reason they don't, however, \fBdispadmin\fR is
-unaffected.
-
-.sp
-.in +2
-.nf
-# Time-Sharing Dispatcher Configuration File RES=1000
-
-
-# ts_quantum ts_tqexp ts_slpret ts_maxwait ts_lwait PRIORITY
-# LEVEL
-500 0 10 5 10 # 0
-500 0 11 5 11 # 1
-500 1 12 5 12 # 2
-500 1 13 5 13 # 3
-500 2 14 5 14 # 4
-500 2 15 5 15 # 5
-450 3 16 5 16 # 6
-450 3 17 5 17 # 7
-\&. . . . . . .
-\&. . . . . . .
-\&. . . . . . .
-50 48 59 5 59 # 58
-50 49 59 5 59 # 59
-.fi
-.in -2
-
-.LP
-\fBExample 2 \fRReplacing The ts_dptbl Loadable Module
-.sp
-.LP
-In order to change the size of the time sharing dispatch table, the loadable
-module which contains the dispatch table information will have to be built. It
-is recommended that you save the existing module before using the following
-procedure.
-
-.RS +4
-.TP
-1.
-Place the dispatch table code shown below in a file called \fBts_dptbl.c\fR
-An example of this file follows.
-.RE
-.RS +4
-.TP
-2.
-Compile the code using the given compilation and link lines supplied.
-.sp
-.in +2
-.nf
-cc -c -0 -D_KERNEL
-ts_dptbl.c
-ld -r -o TS_DPTBL ts_dptbl.o
-.fi
-.in -2
-.sp
-
-.RE
-.RS +4
-.TP
-3.
-Copy the current dispatch table in \fB/kernel/sched\fR to
-\fBTS_DPTBL.bak\fR.
-.RE
-.RS +4
-.TP
-4.
-Replace the current \fBTS_DPTBL\fR in \fB/kernel/sched\fR.
-.RE
-.RS +4
-.TP
-5.
-You will have to make changes in the \fB/etc/system\fR file to reflect the
-changes to the sizes of the tables. See \fBsystem\fR(4). The two variables
-affected are \fBts_maxupri\fR and \fBts_maxkmdpri\fR. The syntax for setting
-these is as follows:
-.sp
-.in +2
-.nf
-set TS:ts_maxupri=(value for max time-sharing user priority)
-set TS:ts_maxkmdpri=(number of kernel mode priorities - 1)
-.fi
-.in -2
-.sp
-
-.RE
-.RS +4
-.TP
-6.
-Reboot the system to use the new dispatch table.
-.RE
-.sp
-.LP
-Great care should be used in replacing the dispatch table using this method. If
-you do not get it right, panics may result, thus making the system unusable.
-
-.sp
-.LP
-The following is an example of a \fBts_dptbl.c\fR file used for building the
-new \fBts_dptbl\fR.
-
-.sp
-.in +2
-.nf
-/* BEGIN ts_dptbl.c */
-#include <sys/proc.h>
-#include <sys/priocntl.h>
-#include <sys/class.h>
-#include <sys/disp.h>
-#include <sys/ts.h>
-#include <sys/rtpriocntl.h>
-/*
- * This is the loadable module wrapper.
- */
-#include <sys/modctl.h>
-extern struct mod_ops mod_miscops;
-/*
- * Module linkage information for the kernel.
- */
-static struct modlmisc modlmisc = {
- &mod_miscops, "Time sharing dispatch table"
-};
-static struct modlinkage modlinkage = {
- MODREV_1, &modlmisc, 0
-};
-_init()
-{
- return (mod_install(&modlinkage));
-}
-_info(modinfop)
- struct modinfo *modinfop;
-{
- return (mod_info(&modlinkage, modinfop));
-}
-/*
- * array of global priorities used by ts procs sleeping or
- * running in kernel mode after sleep. Must have at least
- * 40 values.
- */
-pri_t config_ts_kmdpris[] = {
- 60,61,62,63,64,65,66,67,68,69,
- 70,71,72,73,74,75,76,77,78,79,
- 80,81,82,83,84,85,86,87,88,89,
- 90,91,92,93,94,95,96,97,98,99,
-};
-tsdpent_t config_ts_dptbl[] = {
-
-/* glbpri qntm tqexp slprt mxwt lwt */
-
- 0, 100, 0, 10, 5, 10,
- 1, 100, 0, 11, 5, 11,
- 2, 100, 1, 12, 5, 12,
- 3, 100, 1, 13, 5, 13,
- 4, 100, 2, 14, 5, 14
- 5, 100, 2, 15, 5, 15,
- 6, 100, 3, 16, 5, 16,
- 7, 100, 3, 17, 5, 17,
- 8, 100, 4, 18, 5, 18,
- 9, 100, 4, 19, 5, 19,
- 10, 80, 5, 20, 5, 20,
- 11, 80, 5, 21, 5, 21,
- 12, 80, 6, 22, 5, 22,
- 13, 80, 6, 23, 5, 23,
- 14, 80, 7, 24, 5, 24,
- 15, 80, 7, 25, 5, 25,
- 16, 80, 8, 26, 5, 26,
- 17, 80, 8, 27, 5, 27,
- 18, 80, 9, 28, 5, 28,
- 19, 80, 9, 29, 5, 29,
- 20, 60, 10, 30, 5, 30,
- 21, 60, 11, 31, 5, 31,
- 22, 60, 12, 32, 5, 33,
- 24, 60, 14, 34, 5, 34,
- 25, 60, 15, 35, 5, 35,
- 26, 60, 16, 36, 5, 36,
- 27, 60, 17, 37, 5, 37,
- 28, 60, 18, 38, 5, 38,
- 29, 60, 19, 39, 5, 39,
- 30, 40, 20, 40, 5, 40,
- 31, 40, 21, 41, 5, 41,
- 32, 40, 22, 42, 5, 42,
- 33, 40, 23, 43, 5, 43,
- 34, 40, 24, 44, 5, 44,
- 35, 40, 25, 45, 5, 45,
- 36, 40, 26, 46, 5, 46,
- 37, 40, 27, 47, 5, 47,
- 38, 40, 28, 48, 5, 48,
- 39, 40, 29, 49, 5, 49,
- 40, 20, 30, 50, 5, 50,
- 41, 20, 31, 50, 5, 50,
- 42, 20, 32, 51, 5, 51,
- 43, 20, 33, 51, 5, 51,
- 44, 20, 34, 52, 5, 52,
- 45, 20, 35, 52, 5, 52,
- 46, 20, 36, 53, 5, 53,
- 47, 20 37, 53, 5, 53,
- 48, 20, 38, 54, 5, 54,
- 49, 20, 39, 54, 5, 54,
- 50, 10, 40, 55, 5, 55,
- 51, 10, 41, 55, 5, 55,
- 52, 10, 42, 56, 5, 56,
- 53, 10, 43, 56, 5, 56,
- 54, 10, 44, 57, 5, 57,
- 55, 10, 45, 57, 5, 57,
- 56, 10, 46, 58, 5, 58,
- 57, 10, 47, 58, 5, 58,
- 58, 10, 48, 59, 5, 59,
- 59, 10, 49, 59, 5, 59,
-
-};
-
-short config_ts_maxumdpri = sizeof (config_ts_dptbl)/16 - 1;
-/*
- * Return the address of config_ts_dptbl
- */
-tsdpent_t *
-ts_getdptbl()
-{
- return (config_ts_dptbl);
-}
-
-/*
- * Return the address of config_ts_kmdpris
- */
- int *
- ts_getkmdpris()
-{
- return (config_ts_kmdpris);
-}
-
-/*
- * Return the address of ts_maxumdpri
- */
-short
-ts_getmaxumdpri()
-{
- return (config_ts_maxumdpri);
-}
-
-/* END ts_dptbl.c */
-.fi
-.in -2
-
-.SH SEE ALSO
-\fBpriocntl\fR(1), \fBdispadmin\fR(1M), \fBpriocntl\fR(2), \fBsystem\fR(4)
-.sp
-.LP
-\fISystem Administration Guide: Basic Administration\fR
-.sp
-.LP
-\fIProgramming Interfaces Guide\fR
-.SH NOTES
-\fBdispadmin\fR does some limited sanity checking on the values supplied in the
-configuration file. The sanity checking is intended to ensure that the new
-\fBts_dptbl\fR values do not cause the system to panic. The sanity checking
-does not attempt to analyze the effect that the new values will have on the
-performance of the system. Unusual \fBts_dptbl\fR configurations may have a
-dramatic negative impact on the performance of the system.
-.sp
-.LP
-No sanity checking is done on the \fBts_dptbl\fR values specified in the
-\fBTS_DPTBL\fR loadable module. Specifying an inconsistent or nonsensical
-\fBts_dptbl\fR configuration through the \fBTS_DPTBL\fR loadable module could
-cause serious performance problems and/or cause the system to panic.
diff --git a/usr/src/man/man4/ttydefs.4 b/usr/src/man/man4/ttydefs.4
deleted file mode 100644
index 4529e2f8f9..0000000000
--- a/usr/src/man/man4/ttydefs.4
+++ /dev/null
@@ -1,85 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 1997, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH TTYDEFS 4 "Jan 27, 1994"
-.SH NAME
-ttydefs \- file contains terminal line settings information for ttymon
-.SH DESCRIPTION
-.sp
-.LP
-\fB/etc/ttydefs\fR is an administrative file that contains records divided into
-fields by colons (":"). This information used by \fBttymon\fR to set up the
-speed and terminal settings for a TTY port.
-.sp
-.LP
-The \fBttydefs\fR file contains the following fields:
-.sp
-.ne 2
-.na
-\fB\fIttylabel\fR\fR
-.ad
-.RS 17n
-The string \fBttymon\fR tries to match against the TTY port's \fIttylabel\fR
-field in the port monitor administrative file. It often describes the speed at
-which the terminal is supposed to run, for example, \fB1200\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIinitial-flags\fR\fR
-.ad
-.RS 17n
-Contains the initial \fBtermio\fR(7I) settings to which the terminal is to be
-set. For example, the system administrator will be able to specify what the
-default erase and kill characters will be. \fIinitial-flags\fR must be
-specified in the syntax recognized by the \fBstty\fR command.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIfinal-flags\fR\fR
-.ad
-.RS 17n
-\fIfinal-flags\fR must be specified in the same format as \fIinitial-flags\fR.
-\fBttymon\fR sets these final settings after a connection request has been made
-and immediately prior to invoking a port's service.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIautobaud\fR\fR
-.ad
-.RS 17n
-If the autobaud field contains the character 'A,' autobaud will be enabled.
-Otherwise, autobaud will be disabled. \fBttymon\fR determines what line speed
-to set the TTY port to by analyzing the carriage returns entered. If autobaud
-has been disabled, the hunt sequence is used for baud rate determination.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fInextlabel\fR\fR
-.ad
-.RS 17n
-If the user indicates that the current terminal setting is not appropriate by
-sending a BREAK, \fBttymon\fR searchs for a \fBttydefs\fR entry whose
-\fIttylabel\fR field matches the \fInextlabel\fR field. If a match is found,
-\fBttymon\fR uses that field as its \fIttylabel\fR field. A series of speeds is
-often linked together in this way into a closed set called a hunt sequence. For
-example, \fB4800\fR may be linked to \fB1200\fR, which in turn is linked to
-\fB2400\fR, which is finally linked to \fB4800\fR.
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBsttydefs\fR(1M), \fBttymon\fR(1M), \fBtermio\fR(7I)
-.sp
-.LP
-\fISystem Administration Guide: Basic Administration\fR
diff --git a/usr/src/man/man4/ttysrch.4 b/usr/src/man/man4/ttysrch.4
deleted file mode 100644
index 65043b9a2a..0000000000
--- a/usr/src/man/man4/ttysrch.4
+++ /dev/null
@@ -1,95 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH TTYSRCH 4 "Feb 23, 1994"
-.SH NAME
-ttysrch \- directory search list for ttyname
-.SH DESCRIPTION
-.sp
-.LP
-\fBttysrch\fR is an optional file that is used by the \fBttyname\fR library
-routine. This file contains the names of directories in \fB/dev\fR that contain
-terminal and terminal-related device files. The purpose of this file is to
-improve the performance of \fBttyname\fR by indicating which subdirectories in
-\fB/dev\fR contain terminal-related device files and should be searched first.
-These subdirectory names must appear on separate lines and must begin with
-\fB/dev\fR. Those path names that do not begin with \fB/dev\fR will be ignored
-and a warning will be sent to the console. Blank lines (lines containing only
-white space) and lines beginning with the comment character "#" will be
-ignored. For each file listed (except for the special entry \fB/dev\fR),
-\fBttyname\fR will recursively search through subdirectories looking for a
-match. If \fB/dev\fR appears in the \fBttysrch\fR file, the \fB/dev\fR
-directory itself will be searched but there will not be a recursive search
-through its subdirectories.
-.sp
-.LP
-When \fBttyname\fR searches through the device files, it tries to find a file
-whose major/minor device number, file system identifier, and inode number match
-that of the file descriptor it was given as an argument. If a match is not
-found, it will settle for a match of just major/minor device and file system
-identifier, if one can be found. However, if the file descriptor is associated
-with a cloned device, this algorithm does not work efficiently because the
-inode number of the device file associated with a clonable device will never
-match the inode number of the file descriptor that was returned by the open of
-that clonable device. To help with these situations, entries can be put into
-the \fB/etc/ttysrch\fR file to improve performance when cloned devices are used
-as terminals on a system (for example, for remote login). However, this is
-only useful if the minor devices related to a cloned device are put into a
-subdirectory. (It is important to note that device files need not exist for
-cloned devices and if that is the case, \fBttyname\fR will eventually fail.) An
-optional second field is used in the \fB/etc/ttysrch\fR file to indicate the
-matching criteria. This field is separated by white space (any combination of
-blanks or tabs). The letter \fBM\fR means major/minor device number, \fBF\fR
-means file system identifier, and \fBI\fR means inode number. If this field is
-not specified for an entry, the default is \fBMFI\fR which means try to match
-on all three. For cloned devices the field should be \fBMF\fR, which indicates
-that it is not necessary to match on the inode number.
-.sp
-.LP
-Without the \fB/etc/ttysrch\fR file, \fBttyname\fR will search the \fB/dev\fR
-directory by first looking in the directories \fB/dev/term\fR, \fB/dev/pts\fR,
-and \fB/dev/xt\fR. If a system has terminal devices installed in directories
-other than these, it may help performance if the \fBttysrch\fR file is created
-and contains that list of directories.
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRA sample display of \fB/etc/ttysrch\fR command.
-.sp
-.LP
-A sample \fB/etc/ttysrch\fR file follows:
-
-.sp
-.in +2
-.nf
-/dev/term MFI
-/dev/pts MFI
-/dev/xt MFI
-/dev/slan MF
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-This file tells \fBttyname\fR that it should first search through those
-directories listed and that when searching through the \fB/dev/slan\fR
-directory, if a file is encountered whose major/minor devices and file system
-identifier match that of the file descriptor argument to \fBttyname\fR, this
-device name should be considered a match.
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/ttysrch\fR\fR
-.ad
-.RS 16n
-
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBttyname\fR(3C)
diff --git a/usr/src/man/man4/ufsdump.4 b/usr/src/man/man4/ufsdump.4
deleted file mode 100644
index 49d27c5fef..0000000000
--- a/usr/src/man/man4/ufsdump.4
+++ /dev/null
@@ -1,740 +0,0 @@
-'\" te
-.\" Copyright (c) 1980 Regents of the University of California. All rights reserved. The Berkeley software License Agreement specifies the terms and conditions for redistribution. Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved.
-.TH UFSDUMP 4 "June 19, 2021"
-.SH NAME
-ufsdump, dumpdates \- incremental dump format
-.SH SYNOPSIS
-.nf
-\fB#include <protocols/dumprestore.h>\fR
-.fi
-
-.LP
-.nf
-\fB/etc/dumpdates\fR
-.fi
-
-.SH DESCRIPTION
-Tapes used by \fBufsdump\fR(1M) and \fBufsrestore\fR(1M) contain:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-a header record
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-two groups of bit map records
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-a group of records describing directories
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-a group of records describing files
-.RE
-.sp
-.LP
-The format of the header record and the format of the first record of each
-description in the \fB<protocols/dumprestore.h>\fR include file are:
-.sp
-.in +2
-.nf
-#define TP_BSIZE_MAX 65536
-#define TP_BSIZE_MIN 1024
-#define ESIZE_SHIFT_MAX 6
-
-#ifdef SUPPORTS_MTB_TAPE_FORMAT
-#define TP_BUFSIZE TP_BSIZE_MAX
-#else
-#define TP_BSIZE 1024
-#define TP_BUFSIZE TP_BSIZE
-#endif /* SUPPORTS_MTB_TAPE_FORMAT */
-
-#define NTREC 10
-#define HIGHDENSITYTREC 32
-#define CARTRIDGETREC 63
-#define TP_NINDIR (TP_BSIZE_MIN/2)
-#define TP_NINOS (TP_NINDIR / sizeof (long))
-#define LBLSIZE 16
-#define NAMELEN 64
-
-#define OFS_MAGIC (int)60011
-#define NFS_MAGIC (int)60012
-#define MTB_MAGIC (int)60013
-#define CHECKSUM (int)84446
-.fi
-.in -2
-
-.sp
-.in +2
-.nf
-union u_data {
- char s_addrs[TP_NINDIR];
- int32_t s_inos[TP_NINOS];
-};
-
-union u_shadow {
- struct s_nonsh {
- int32_t c_level;
- char c_filesys[NAMELEN];
- char c_dev[NAMELEN];
- char c_host[NAMELEN];
- } c_nonsh;
- char c_shadow[1];
-};
-
-union u_spcl {
- char dummy[TP_BUFSIZE];
- struct s_spcl {
- int32_t c_type;
- time32_t c_date;
- time32_t c_ddate;
- int32_t c_volume;
- daddr32_t c_tapea;
- ino32_t c_inumber;
- int32_t c_magic;
- int32_t c_checksum;
- struct dinode c_dinode;
- int32_t c_count;
- union u_data c_data;
- char c_label[LBLSIZE];
- union u_shadow c_shadow;
- int32_t c_flags;
- int32_t c_firstrec;
-#ifdef SUPPORTS_MTB_TAPE_FORMAT
- int32_t c_tpbsize;
- int32_t c_spare[31];
-#else
- int32_t c_spare[32];
-#endif /* SUPPORTS_MTB_TAPE_FORMAT */
-} s_spcl;
-} u_spcl;
-.fi
-.in -2
-
-.sp
-.in +2
-.nf
-int32_t c_type;
-time32_t c_date;
-time32_t c_ddate;
-int32_t c_volume;
-daddr32_t c_tapea;
-ino32_t c_inumber;
-int32_t c_magic;
-int32_t c_checksum;
-struct dinode c_dinode;
-int32_t c_count;
-union u_data c_data;
-char c_label[LBLSIZE];
-union u_shadow c_shadow;
-int32_t c_flags;
-int32_t c_firstrec;
-#ifdef SUPPORTS_MTB_TAPE_FORMAT
-int32_t c_tpbsize;
-int32_t c_spare[31];
-#else
-int32_t c_spare[32];
-#endif /*
- SUPPORTS_MTB_TAPE_FORMAT */
-.fi
-.in -2
-
-.sp
-.in +2
-.nf
- } s_spcl;
-} u_spcl;
-#define spcl u_spcl.s_spcl
-#define c_addr c_data.s_addrs
-#define c_inos c_data.s_inos
-#define c_level c_shadow.c_nonsh.c_level
-#define c_filesys c_shadow.c_nonsh.c_filesys
-#define c_dev c_shadow.c_nonsh.c_dev
-#define c_host c_shadow.c_nonsh.c_host
-.fi
-.in -2
-
-.sp
-.in +2
-.nf
-#define TS_TAPE 1
-#define TS_INODE 2
-#define TS_ADDR 4
-#define TS_BITS 3
-#define TS_CLRI 6
-#define TS_END 5
-#define TS_EOM 7
-
-#define DR_NEWHEADER 1
-#define DR_INODEINFO 2
-#define DR_REDUMP 4
-#define DR_TRUEINC 8
-#define DR_HASMETA 16
-.fi
-.in -2
-
-.sp
-.LP
-This header describes three formats for the \fBufsdump\fR/\fBufsrestore\fR
-interface:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-An old format, non-MTB, that supports dump sizes of less than 2 terabytes. This
-format is represented by \fBNFS_MAGIC\fR.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-A new format, MTB, that supports dump sizes of greater than 2 terabytes using a
-variable block size and 2 new constants: \fBTP_BSIZE_MIN\fR and
-\fBTP_BSIZE_MAX\fR. This format is represented by \fBMTB_MAGIC\fR.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-A much older format that might be found on existing backup tapes. The
-\fBufsrestore\fR command can restore tapes of this format, but no longer
-generates tapes of this format. Backups in this format have the \fBOFS_MAGIC\fR
-magic number in their tape headers.
-.RE
-.sp
-.LP
-The constants are described as follows:
-.sp
-.ne 2
-.na
-\fB\fBTP_BSIZE\fR\fR
-.ad
-.RS 20n
-Size of file blocks on the dump tapes for the old format. Note that
-\fBTP_BSIZE\fR must be a multiple of \fBDEV_BSIZE\fR This is applicable for
-dumps of type \fBNFS_MAGIC\fR or \fBOFS_MAGIC\fR, but is not applicable for
-dumps of type \fBMTB_MAGIC\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBTP_BSIZE_MIN\fR\fR
-.ad
-.RS 20n
-Minimum size of file blocks on the dump tapes for the new MTB format
-(\fBMTB_MAGIC\fR) only.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBTP_BSIZE_MAX\fR\fR
-.ad
-.RS 20n
-Maximum size of file blocks on the dump tapes for the new MTB format
-(\fBMTB_MAGIC\fR) only.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBNTREC\fR\fR
-.ad
-.RS 20n
-Number of \fBTP_BSIZE\fR blocks that are written in each tape record.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBHIGHDENSITYNTREC\fR\fR
-.ad
-.RS 20n
-Number of \fBTP_BSIZE\fR blocks that are written in each tape record on 6250
-BPI or higher density tapes.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBCARTRIDGETREC\fR\fR
-.ad
-.RS 20n
-Number of \fBTP_BSIZE\fR blocks that are written in each tape record on
-cartridge tapes.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBTP_NINDIR\fR\fR
-.ad
-.RS 20n
-Number of indirect pointers in a \fBTS_INODE\fR or \fBTS_ADDR\fR record. It
-must be a power of 2.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBTP_NINOS\fR\fR
-.ad
-.RS 20n
-The maximum number of volumes on a tape.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBLBLSIZE\fR\fR
-.ad
-.RS 20n
-The maximum size of a volume label.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBNAMELEN\fR\fR
-.ad
-.RS 20n
-The maximum size of a host's name.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBOFS_MAGIC\fR\fR
-.ad
-.RS 20n
-Magic number that is used for the very old format.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBNFS_MAGIC\fR\fR
-.ad
-.RS 20n
-Magic number that is used for the non-MTB format.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBMTB_MAGIC\fR\fR
-.ad
-.RS 20n
-Magic number that is used for the MTB format.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBCHECKSUM\fR\fR
-.ad
-.RS 20n
-Header records checksum to this value.
-.RE
-
-.sp
-.LP
-The \fBTS_\fR entries are used in the \fBc_type\fR field to indicate what sort
-of header this is. The types and their meanings are as follows:
-.sp
-.ne 2
-.na
-\fB\fBTS_TAPE\fR\fR
-.ad
-.RS 12n
-Tape volume label.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBTS_INODE\fR\fR
-.ad
-.RS 12n
-A file or directory follows. The \fBc_dinode\fR field is a copy of the disk
-inode and contains bits telling what sort of file this is.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBTS_ADDR\fR\fR
-.ad
-.RS 12n
-A subrecord of a file description. See \fBs_addrs\fR below.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBTS_BITS\fR\fR
-.ad
-.RS 12n
-A bit map follows. This bit map has a one bit for each inode that was dumped.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBTS_CLRI\fR\fR
-.ad
-.RS 12n
-A bit map follows. This bit map contains a zero bit for all inodes that were
-empty on the file system when dumped.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBTS_END\fR\fR
-.ad
-.RS 12n
-End of tape record.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBTS_EOM\fR\fR
-.ad
-.RS 12n
-diskette \fBEOM\fRindicates that the restore is compatible with old dump
-.RE
-
-.sp
-.LP
-The flags are described as follows:
-.sp
-.ne 2
-.na
-\fB\fBDR_NEWHEADER\fR\fR
-.ad
-.RS 17n
-New format tape header.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBDR_INFODEINFO\fR\fR
-.ad
-.RS 17n
-Header contains starting inode info.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBDR_REDUMP\fR\fR
-.ad
-.RS 17n
-Dump contains recopies of active files.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBDR_TRUEINC\fR\fR
-.ad
-.RS 17n
-Dump is a "true incremental".
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBDR_HASMETA\fR\fR
-.ad
-.RS 17n
-The metadata in this header.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBDUMPOUTFMT\fR\fR
-.ad
-.RS 17n
-Name, incon, and ctime (date) for printf.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBDUMPINFMT\fR\fR
-.ad
-.RS 17n
-Inverse for scanf.
-.RE
-
-.sp
-.LP
-The fields of the header structure are as follows:
-.sp
-.ne 2
-.na
-\fB\fBs_addrs\fR\fR
-.ad
-.RS 17n
-An array of bytes describing the blocks of the dumped file. A byte is zero if
-the block associated with that byte was not present on the file system;
-otherwise, the byte is non-zero. If the block was not present on the file
-lsystem, no block was dumped; the block will be stored as a hole in the file.
-If there is not sufficient space in this record to describe all the blocks in
-a file, \fBTS_ADDR\fR records will be scattered through the file, each one
-picking up where the last left off
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBs_inos\fR\fR
-.ad
-.RS 17n
-The starting inodes on tape.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBc_type\fR\fR
-.ad
-.RS 17n
-The type of the record.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBc_date\fR\fR
-.ad
-.RS 17n
-The date of the previous dump.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBc_ddate\fR\fR
-.ad
-.RS 17n
-The date of this dump.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBc_volume\fR\fR
-.ad
-.RS 17n
-The current volume number of the dump.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBc_tapea\fR\fR
-.ad
-.RS 17n
-The logical block of this record.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBc_inumber\fR\fR
-.ad
-.RS 17n
-The number of the inode being dumped if this is of type \fBTS_INODE\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBc_magic\fR\fR
-.ad
-.RS 17n
-This contains the value \fBMAGIC\fR above, truncated as needed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBc_checksum\fR\fR
-.ad
-.RS 17n
-This contains whatever value is needed to make the record sum to
-\fBCHECKSUM\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBc_dinode\fR\fR
-.ad
-.RS 17n
-This is a copy of the inode as it appears on the file system.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBc_count\fR\fR
-.ad
-.RS 17n
-The count of bytes in \fBs_addrs\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBu_data c_data\fR\fR
-.ad
-.RS 17n
-The union of either \fBu_data c_data\fR The union of either \fBs_addrs\fR or
-\fBs_inos\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBc_label\fR\fR
-.ad
-.RS 17n
-Label for this dump.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBc_level\fR\fR
-.ad
-.RS 17n
-Level of this dump.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBc_filesys\fR\fR
-.ad
-.RS 17n
-Name of dumped file system.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBc_dev\fR\fR
-.ad
-.RS 17n
-Name of dumped service.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBc_host\fR\fR
-.ad
-.RS 17n
-Name of dumped host.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBc_flags\fR\fR
-.ad
-.RS 17n
-Additional information.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBc_firstrec\fR\fR
-.ad
-.RS 17n
-First record on volume.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBc_spare\fR\fR
-.ad
-.RS 17n
-Reserved for future uses.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBc_tpbsize\fR\fR
-.ad
-.RS 17n
-Tape block size for MTB format only.
-.RE
-
-.sp
-.LP
-Each volume except the last ends with a tapemark (read as an end of file). The
-last volume ends with a \fBTS_END\fR record and then the tapemark.
-.sp
-.LP
-The dump history is kept in the file \fB/etc/dumpdates\fR. It is an \fBASCII\fR
-file with three fields separated by white space:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The name of the device on which the dumped file system resides.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The level number of the dump tape; see \fBufsdump\fR(1M).
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The date of the incremental dump in the format generated by \fBctime\fR(3C).
-.RE
-.sp
-.LP
-\fBDUMPOUTFMT\fR is the format to use when using \fBprintf\fR(3C) to write an
-entry to \fB/etc/dumpdates\fR; \fBDUMPINFMT\fR is the format to use when using
-\fBscanf\fR(3C) to read an entry from \fB/etc/dumpdates\fR.
-.SH ATTRIBUTES
-See \fBattributes\fR(5) for a description of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Stability Level Unstable
-.TE
-
-.SH SEE ALSO
-\fBufsdump\fR(1M), \fBufsrestore\fR(1M), \fBctime\fR(3C), \fBprintf\fR(3C),
-\fBscanf\fR(3C), \fBtypes.h\fR(3HEAD), \fBattributes\fR(5),
diff --git a/usr/src/man/man4/updaters.4 b/usr/src/man/man4/updaters.4
deleted file mode 100644
index 1efaf5c3fa..0000000000
--- a/usr/src/man/man4/updaters.4
+++ /dev/null
@@ -1,114 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 1988 Sun Microsystems, Inc. - All Rights Reserved. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH UPDATERS 4 "Oct 24, 1996"
-.SH NAME
-updaters \- configuration file for NIS updating
-.SH SYNOPSIS
-.LP
-.nf
-\fB/var/yp/updaters\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The file \fB/var/yp/updaters\fR is a makefile (see \fBmake\fR(1S)) which is
-used for updating the Network Information Service (NIS) databases. Databases
-can only be updated in a secure network, that is, one that has a
-\fBpublickey\fR(4) database. Each entry in the file is a make target for a
-particular \fBNIS\fR database. For example, if there is an \fBNIS\fR database
-named \fBpasswd.byname\fR that can be updated, there should be a \fBmake\fR
-target named \fBpasswd.byname\fR in the \fBupdaters\fR file with the command to
-update the file.
-.sp
-.LP
-The information necessary to make the update is passed to the update command
-through standard input. The information passed is described below (all items
-are followed by a \fBNEWLINE\fR except for 4 and 6):
-.sp
-.ne 2
-.na
-\fB\fB1.\fR\fR
-.ad
-.RS 6n
-Network name of client wishing to make the update (a string).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB2.\fR\fR
-.ad
-.RS 6n
-Kind of update (an integer).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB3.\fR\fR
-.ad
-.RS 6n
-Number of bytes in key (an integer).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB4.\fR\fR
-.ad
-.RS 6n
-Actual bytes of key.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB5.\fR\fR
-.ad
-.RS 6n
-Number of bytes in data (an integer).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB6.\fR\fR
-.ad
-.RS 6n
-Actual bytes of data.
-.RE
-
-.sp
-.LP
-After receiving this information through standard input, the command to update
-the particular database determines whether the user is allowed to make the
-change. If not, it exits with the status \fBYPERR_ACCESS.\fR If the user is
-allowed to make the change, the command makes the change and exits with a
-status of zero. If there are any errors that may prevent the \fBupdaters\fR
-from making the change, it should exit with the status that matches a valid
-\fBNIS\fR error code described in \fB<rpcsvc/ypclnt.h>\fR\&.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/var/yp/updaters\fR\fR
-.ad
-.RS 20n
-The makefile used for updating the \fBNIS\fR databases.
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBmake\fR(1S), \fBrpc.ypupdated\fR(1M), \fBpublickey\fR(4)
-.SH NOTES
-.sp
-.LP
-The Network Information Service (NIS) was formerly known as Sun Yellow Pages
-(YP). The functionality of the two remains the same; only the name has
-changed. The name Yellow Pages is a registered trademark in the United Kingdom
-of British Telecommunications plc, and may not be used without permission.
diff --git a/usr/src/man/man4/user_attr.4 b/usr/src/man/man4/user_attr.4
deleted file mode 100644
index ab19073461..0000000000
--- a/usr/src/man/man4/user_attr.4
+++ /dev/null
@@ -1,351 +0,0 @@
-'\" te
-.\" Copyright 2020 OmniOS Community Edition (OmniOSce) Association.
-.\" Copyright (C) 2008 Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH USER_ATTR 4 "Oct 1, 2020"
-.SH NAME
-user_attr \- extended user attributes database
-.SH SYNOPSIS
-.nf
-\fB/etc/user_attr\fR
-.fi
-
-.SH DESCRIPTION
-\fB/etc/user_attr\fR is a local source of extended attributes associated with
-users and roles. \fBuser_attr\fR can be used with other user attribute sources,
-including the LDAP people container and the \fBuser_attr\fR \fBNIS\fR map.
-Programs use the \fBgetuserattr\fR(3SECDB)
-routines to gain access to this information.
-.sp
-.LP
-The search order for multiple \fBuser_attr\fR sources is specified in the
-\fB/etc/nsswitch.conf\fR file, as described in the \fBnsswitch.conf\fR(4) man
-page. The search order follows that for \fBpasswd\fR(4).
-.sp
-.LP
-Each entry in the \fBuser_attr\fR databases consists of a single line with five
-fields separated by colons (\fB:\fR). Line continuations using the backslash
-(\fB\e\fR) character are permitted. Each entry has the form:
-.sp
-.in +2
-.nf
-\fIuser\fR:\fIqualifier\fR:\fIres1\fR:\fIres2\fR:\fIattr\fR
-.fi
-.in -2
-
-.sp
-.ne 2
-.na
-\fB\fIuser\fR\fR
-.ad
-.sp .6
-.RS 4n
-The name of the user as specified in the \fBpasswd\fR(4) database.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIqualifier\fR\fR
-.ad
-.sp .6
-.RS 4n
-Reserved for future use.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIres1\fR\fR
-.ad
-.sp .6
-.RS 4n
-Reserved for future use.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIres2\fR\fR
-.ad
-.sp .6
-.RS 4n
-Reserved for future use.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIattr\fR\fR
-.ad
-.sp .6
-.RS 4n
-An optional list of semicolon-separated (\fB;\fR) key-value pairs that describe
-the security attributes to apply to the object upon execution. Zero or more
-keys may be specified. The following keys are currently interpreted by the
-system:
-.sp
-.ne 2
-.na
-\fBauths\fR
-.ad
-.sp .6
-.RS 4n
-Specifies a comma-separated list of authorization names chosen from those names
-defined in the \fBauth_attr\fR(4) database. Authorization names may be
-specified using the asterisk (\fB*\fR) character as a wildcard. For example,
-\fBsolaris.printer.*\fR means all of Sun's printer authorizations.
-.RE
-
-.sp
-.ne 2
-.na
-\fBprofiles\fR
-.ad
-.sp .6
-.RS 4n
-Contains an ordered, comma-separated list of profile names chosen from
-\fBprof_attr\fR(4). Profiles are enforced by the profile shells, \fBpfcsh\fR,
-\fBpfksh\fR, and \fBpfsh\fR. See \fBpfsh\fR(1). A default profile is assigned
-in \fB/etc/security/policy.conf\fR (see \fBpolicy.conf\fR(4)). If no profiles
-are assigned, the profile shells do not allow the user to execute any commands.
-.RE
-
-.sp
-.ne 2
-.na
-\fBroleauth\fR
-.ad
-.sp .6
-.RS 4n
-Specifies whether a user assuming a role is required to use the role password
-or their own password.
-If the \fBroleauth\fR key value is not specified, the role password is required
-for users assuming the role.
-.RE
-
-.sp
-.ne 2
-.na
-\fBroles\fR
-.ad
-.sp .6
-.RS 4n
-Can be assigned a comma-separated list of role names from the set of user
-accounts in this database whose \fBtype\fR field indicates the account is a
-role. If the \fBroles\fR key value is not specified, the user is not permitted
-to assume any role.
-.RE
-
-.sp
-.ne 2
-.na
-\fBtype\fR
-.ad
-.sp .6
-.RS 4n
-Can be assigned one of these strings: \fBnormal\fR, indicating that this
-account is for a normal user, one who logs in; or \fBrole\fR, indicating that
-this account is for a role. Roles can only be assumed by a normal user after
-the user has logged in.
-.RE
-
-.sp
-.ne 2
-.na
-\fBproject\fR
-.ad
-.sp .6
-.RS 4n
-Can be assigned a name of one project from the \fBproject\fR(4) database to be
-used as a default project to place the user in at login time. For more
-information, see \fBgetdefaultproj\fR(3PROJECT).
-.RE
-
-.sp
-.ne 2
-.na
-\fBdefaultpriv\fR
-.ad
-.sp .6
-.RS 4n
-The default set of privileges assigned to a user's inheritable set upon login.
-See "Privileges Keywords," below.
-.RE
-
-.sp
-.ne 2
-.na
-\fBlimitpriv\fR
-.ad
-.sp .6
-.RS 4n
-The maximum set of privileges a user or any process started by the user,
-whether through \fBsu\fR(1M) or any other means, can obtain. The system
-administrator must take extreme care when removing privileges from the limit
-set. Removing any basic privilege has the ability of crippling all
-applications; removing any other privilege can cause many or all applications
-requiring privileges to malfunction. See "Privileges Keywords," below.
-.RE
-
-.sp
-.ne 2
-.na
-\fBlock_after_retries\fR
-.ad
-.sp .6
-.RS 4n
-Specifies whether an account is locked after the count of failed logins for a
-user equals or exceeds the allowed number of retries as defined by
-\fBRETRIES\fR in \fB/etc/default/login\fR. Possible values are \fByes\fR or
-\fBno\fR. The default is \fBno\fR. Account locking is applicable only to local
-accounts.
-.RE
-
-The following keys are available only if the system is configured with the
-Trusted Extensions feature:
-.sp
-.ne 2
-.na
-\fBclearance\fR
-.ad
-.sp .6
-.RS 4n
-Contains the maximum label at which the user can operate. If unspecified, in
-the Defense Intelligence Agency (\fBDIA\fR) encodings scheme, the default is
-specified in \fBlabel_encodings\fR(4) (see \fBlabel_encodings\fR(4) and
-\fBlabels\fR(5) in the \fISolaris Trusted Extensions Reference Manual\fR).
-.RE
-
-.sp
-.ne 2
-.na
-\fBmin_label\fR
-.ad
-.sp .6
-.RS 4n
-Contains the minimum label at which the user can log in. If unspecified, in the
-\fBDIA\fR encodings scheme, the default is specified in
-\fBlabel_encodings\fR(4) (see \fBlabel_encodings\fR(4) and \fBlabels\fR(5) in
-the \fISolaris Trusted Extensions Reference Manual\fR).
-.RE
-
-.RE
-
-.sp
-.LP
-Except for the \fBtype\fR key, the \fB\fIkey\fR=\fIvalue\fR\fR fields in
-\fB/etc/user_attr\fR can be added using \fBroleadd\fR(1M) and
-\fBuseradd\fR(1M). You can use \fBrolemod\fR(1M) and \fBusermod\fR(1M) to
-modify \fB\fIkey\fR=\fIvalue\fR\fR fields in \fB/etc/user_attr\fR. Modification
-of the \fBtype\fR key is restricted as described in \fBrolemod\fR and
-\fBusermod\fR.
-.SS "Privileges Keywords"
-The \fBdefaultpriv\fR and \fBlimitpriv\fR are the privileges-related keywords
-and are described above.
-.sp
-.LP
-See \fBprivileges\fR(5) for a description of privileges. The command
-\fBppriv\fR \fB-l\fR (see \fBppriv\fR(1)) produces a list of all supported
-privileges. Note that you specify privileges as they are displayed by
-\fBppriv\fR. In \fBprivileges\fR(5), privileges are listed in the form
-\fBPRIV_\fR\fI<privilege_name>\fR\&. For example, the privilege
-\fBfile_chown\fR, as you would specify it in \fBuser_attr\fR, is listed in
-\fBprivileges\fR(5) as \fBPRIV_FILE_CHOWN\fR.
-.sp
-.LP
-See \fBusermod\fR(1M) for examples of commands that
-modify privileges and their subsequent effect on \fBuser_attr\fR.
-.SH EXAMPLES
-\fBExample 1 \fRAssigning a Profile to Root
-.sp
-.LP
-The following example entry assigns to root the \fBAll\fR profile, which allows
-root to use all commands in the system, and also assigns two authorizations:
-
-.sp
-.in +2
-.nf
-root::::auths=solaris.*,solaris.grant;profiles=All;type=normal
-.fi
-.in -2
-
-.sp
-.LP
-The \fBsolaris.*\fR wildcard authorization shown above gives root all the
-\fBsolaris\fR authorizations; and the \fBsolaris.grant\fR authorization gives
-root the right to grant to others any \fBsolaris\fR authorizations that root
-has. The combination of authorizations enables root to grant to others all the
-\fBsolaris\fR authorizations. See \fBauth_attr\fR(4) for more about
-authorizations.
-
-.SH FILES
-.ne 2
-.na
-\fB/etc/nsswitch.conf\fR
-.ad
-.sp .6
-.RS 4n
-See \fBnsswitch.conf\fR(4).
-.RE
-
-.sp
-.ne 2
-.na
-\fB/etc/user_attr\fR
-.ad
-.sp .6
-.RS 4n
-Described here.
-.RE
-
-.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Availibility SUNWcsr
-_
-Interface Stability See below
-.TE
-
-.sp
-.LP
-The command-line syntax is Committed. The output is Uncommitted.
-.SH SEE ALSO
-\fBauths\fR(1), \fBpfcsh\fR(1), \fBpfksh\fR(1), \fBpfsh\fR(1), \fBppriv\fR(1),
-\fBprofiles\fR(1), \fBroles\fR(1), \fBroleadd\fR(1M), \fBrolemod\fR(1M),
-\fBuseradd\fR(1M), \fBusermod\fR(1M), \fBgetdefaultproj\fR(3PROJECT),
-\fBgetuserattr\fR(3SECDB), \fBauth_attr\fR(4), \fBexec_attr\fR(4),
-\fBnsswitch.conf\fR(4), \fBpasswd\fR(4), \fBpolicy.conf\fR(4),
-\fBprof_attr\fR(4), \fBproject\fR(4), \fBattributes\fR(5), \fBprivileges\fR(5)
-.sp
-.LP
-\fISystem Administration Guide: Security Services\fR
-.SH NOTES
-The root user is usually defined in local databases for a number of reasons,
-including the fact that root needs to be able to log in and do system
-maintenance in single-user mode, before the network name service databases are
-available. For this reason, an entry should exist for root in the local
-\fBuser_attr\fR file, and the precedence shown in the example
-\fBnsswitch.conf\fR(4) file entry under EXAMPLES is highly recommended.
-.sp
-.LP
-Because the list of legal keys is likely to expand, any code that parses this
-database must be written to ignore unknown key-value pairs without error. When
-any new keywords are created, the names should be prefixed with a unique
-string, such as the company's stock symbol, to avoid potential naming
-conflicts.
-.sp
-.LP
-In the \fBattr\fR field, escape the following symbols with a backslash
-(\fB\e\fR) if you use them in any value: colon (\fB:\fR), semicolon (\fB;\fR),
-carriage return (\fB\en\fR), equals (\fB=\fR), or backslash (\fB\e\fR).
diff --git a/usr/src/man/man4/utmp.4 b/usr/src/man/man4/utmp.4
deleted file mode 100644
index 4b65cb10bf..0000000000
--- a/usr/src/man/man4/utmp.4
+++ /dev/null
@@ -1,34 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 1998, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH UTMP 4 "Feb 22, 1999"
-.SH NAME
-utmp, wtmp \- utmp and wtmp database entry formats
-.SH SYNOPSIS
-.LP
-.nf
-\fB#include <utmp.h>\fR
-\fB/var/adm/utmp\fR
-\fB/var/adm/wtmp\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fButmp\fR and \fBwtmp\fR database files are obsolete and are no longer
-present on the system. They have been superseded by the extended database
-contained in the \fButmpx\fR and \fBwtmpx\fR database files. See
-\fButmpx\fR(4).
-.sp
-.LP
-It is possible for \fB/var/adm/utmp\fR to reappear on the system. This would
-most likely occur if a third party application that still uses \fButmp\fR
-recreates the file if it finds it missing. This file should not be allowed to
-remain on the system. The user should investigate to determine which
-application is recreating this file.
-.SH SEE ALSO
-.sp
-.LP
-\fButmpx\fR(4)
diff --git a/usr/src/man/man4/utmpx.4 b/usr/src/man/man4/utmpx.4
deleted file mode 100644
index 7bcd3c6ad9..0000000000
--- a/usr/src/man/man4/utmpx.4
+++ /dev/null
@@ -1,54 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH UTMPX 4 "April 9, 2016"
-.SH NAME
-utmpx, wtmpx \- utmpx and wtmpx database entry formats
-.SH SYNOPSIS
-.LP
-.nf
-\fB#include <utmpx.h>\fR
-\fB/var/adm/utmpx\fR
-\fB/var/adm/wtmpx\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fButmpx\fR and \fBwtmpx\fR files are extended database files that have
-superseded the obsolete \fButmp\fR and \fBwtmp\fR database files.
-.sp
-.LP
-The \fButmpx\fR database contains user access and accounting information for
-commands such as \fBwho\fR(1), \fBwrite\fR(1), and \fBlogin\fR(1). The
-\fBwtmpx\fR database contains the history of user access and accounting
-information for the \fButmpx\fR database.
-.SH USAGE
-.LP
-Applications should not access these databases directly, but should use the
-functions described on the \fBgetutxent\fR(3C) manual page to interact with the
-\fButmpx\fR and \fBwtmpx\fR databases to ensure that they are maintained
-consistently.
-.SH FILES
-.ne 2
-.na
-\fB\fB/var/adm/utmpx\fR\fR
-.ad
-.RS 18n
-user access and administration information
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/adm/wtmpx\fR\fR
-.ad
-.RS 18n
-history of user access and administrative information
-.RE
-
-.SH SEE ALSO
-.LP
-\fBgetutxent\fR(3C), \fBwait\fR(3C), \fBwait.h\fR(3HEAD)
diff --git a/usr/src/man/man4/vfstab.4 b/usr/src/man/man4/vfstab.4
deleted file mode 100644
index 5b6a815784..0000000000
--- a/usr/src/man/man4/vfstab.4
+++ /dev/null
@@ -1,196 +0,0 @@
-'\"
-.\" Copyright (c) 2001 Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 1989 AT&T
-.\" Copyright 2015 Nexenta Systems, Inc. All rights reserved.
-.\" Copyright 2022 Oxide Computer Company
-.\"
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.\"
-.Dd January 16, 2022
-.Dt VFSTAB 4
-.Os
-.Sh NAME
-.Nm vfstab
-.Nd table of file system defaults
-.Sh DESCRIPTION
-The file
-.Pa /etc/vfstab
-describes defaults for each file system.
-The information is stored in a table with the following column headings:
-.Bd -literal
-device device mount FS fsck mount mount
-to mount to fsck point type pass at boot options
-.Ed
-.Pp
-The fields in the table are space-separated and show the resource name
-.Pq Fa device to mount ,
-the raw device to
-.Sy fsck
-.Pq Em device to fsck ,
-the default mount directory
-.Pq Em mount point ,
-the name of the file system type
-.Pq Em FS type ,
-the number used by
-.Xr fsck 1M
-to decide whether to check the file system automatically
-.Pq Em fsck pass ,
-whether the file system should be mounted automatically by
-.Xr mountall 1M
-.Pq Em mount at boot ,
-and the file system mount options
-.Pq Em mount options .
-See respective mount file system man page below in
-.Sx SEE ALSO
-for
-.Em mount options.
-A
-.Sq -
-is used to indicate no entry in a field.
-This may be used when a field does not apply to the resource being mounted.
-.Pp
-The
-.Xr getvfsent 3C
-family of routines is used to read
-.Pa /etc/vfstab .
-There are currently no library routines to automate the writing of
-.Pa /etc/vfstab .
-.Pp
-.Pa /etc/vfstab
-can be used to specify swap areas.
-An entry so specified,
-.Pq which can be a file or a device ,
-will automatically be added as a swap area by the
-.Pa /sbin/swapadd
-script when the system boots.
-To specify a swap area, the
-.Em device-to-mount
-field contains the name of the swap file or device, the
-.Em FS-type
-is
-.Dq swap ,
-.Em mount-at-boot
-is
-.Dq no
-and all other fields have no entry.
-.Sh EXAMPLES
-The following are
-.Pa /etc/vfstab
-entries for various file system types supported in illumos.
-.Pp
-.Sy Example 1
-NFS and UFS Mounts
-.Pp
-The following entry invokes NFS to automatically mount the directory
-.Pa /usr/local
-of the server
-.Sy example1
-on the client's
-.Pa /usr/local
-directory with read-only permission:
-.Bd -literal -offset indent
-example1:/usr/local - /usr/local nfs - yes ro
-.Ed
-.Pp
-The following example assumes a small departmental mail setup, in which clients
-mount
-.Pa /var/mail
-from a server
-.Sy mailsvr .
-The following entry would be listed in each client's
-.Pa /etc/vfstab:
-.Bd -literal -offset indent
-mailsvr:/var/mail - /var/mail nfs - yes intr,bg
-.Ed
-.Pp
-The following is an example for a UFS file system in which logging is enabled:
-.Bd -literal -offset indent
-/dev/dsk/c2t10d0s0 /dev/rdsk/c2t10d0s0 /export/local ufs 3 yes logging
-.Ed
-.Pp
-See
-.Xr mount_nfs 1M
-for a description of NFS mount options and
-.Xr mount_ufs 1M
-for a description of UFS options.
-.Pp
-.Sy Example 2
-pcfs Mounts
-.Pp
-The following example mounts a pcfs file system on a fixed hard disk on an x86
-machine:
-.Bd -literal -offset indent
-/dev/dsk/c1t2d0p0:c - /win98 pcfs - yes -
-.Ed
-.Pp
-The example below mounts a Jaz drive on a SPARC machine.
-Normally, the volume management software handles mounting of removable media,
-obviating a
-.Nm
-entry.
-Specifying a device that supports removable media in
-.Pa /etc/vfstab
-with set the mount-at-boot field to
-.Dq no
-.Pq as shown below
-disables the automatic handling of that device.
-Such an entry presumes you are not running volume management software.
-.Bd -literal -offset indent
-/dev/dsk/c1t2d0s2:c - /jaz pcfs - no -
-.Ed
-.Pp
-For removable media on a SPARC machine, the convention for the slice portion of
-the disk identifier is to specify
-.Sy s2 ,
-which stands for the entire medium.
-.Pp
-For pcfs file systems on x86 machines, note that the disk identifier uses
-a
-.Sy p
-.Pq Sy p0
-and a logical drive
-.Po
-.Sy c ,
-in the
-.Pa /win98
-example above
-.Pc
-for a pcfs logical drive.
-See
-.Xr mount_pcfs 1M
-for syntax for pcfs logical drives and for pcfs-specific mount options.
-.Pp
-.Sy Example 3
-loopback File System Mount
-.Pp
-The following is an example of mounting a loopback
-.Pq lofs
-file system:
-.Bd -literal
-/export/test - /opt/test lofs - yes -
-.Ed
-See
-.Xr lofs 7FS
-for an overview of the loopback file system.
-.Sh SEE ALSO
-.Xr fsck 1M ,
-.Xr mount 1M ,
-.Xr mount_hsfs 1M ,
-.Xr mount_nfs 1M ,
-.Xr mount_tmpfs 1M ,
-.Xr mount_ufs 1M ,
-.Xr swap 1M ,
-.Xr getvfsent 3C
diff --git a/usr/src/man/man4/warn.conf.4 b/usr/src/man/man4/warn.conf.4
deleted file mode 100644
index 62f5b7bab0..0000000000
--- a/usr/src/man/man4/warn.conf.4
+++ /dev/null
@@ -1,233 +0,0 @@
-'\" te
-.\" Copyright 1987, 1989 by the Student Information Processing Board of the Massachusetts Institute of Technology. For copying and distribution information, please see the file kerberosv5/mit-sipb-copyright.h.
-.\" Portions Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH WARN.CONF 4 "November 22, 2021"
-.SH NAME
-warn.conf \- Kerberos warning configuration file
-.SH SYNOPSIS
-.nf
-/etc/krb5/warn.conf
-.fi
-
-.SH DESCRIPTION
-The \fBwarn.conf\fR file contains configuration information specifying how
-users will be warned by the \fBktkt_warnd\fR daemon about ticket expiration. In
-addition, this file can be used to auto-renew the user's Ticket-Granting Ticket
-(TGT) instead of warning the user. Credential expiration warnings and
-auto-renew results are sent, by means of syslog, to \fBauth.notice\fR.
-.sp
-.LP
-Each Kerberos client host must have a \fBwarn.conf\fR file in order for users
-on that host to get Kerberos warnings from the client. Entries in the
-\fBwarn.conf\fR file must have the following format:
-.sp
-.in +2
-.nf
-\fIprincipal\fR [renew[:\fIopt1\fR,...\fIoptN\fR]] syslog|terminal \fItime\fR
-.fi
-.in -2
-
-.sp
-.LP
-or:
-.sp
-.in +2
-.nf
-\fIprincipal\fR [renew[:\fIopt1\fR,...\fIoptN\fR]] mail \fItime\fR [\fIemail address\fR]
-.fi
-.in -2
-
-.sp
-.ne 2
-.na
-\fB\fIprincipal\fR\fR
-.ad
-.RS 17n
-Specifies the principal name to be warned. The asterisk (\fB*\fR) wildcard can
-be used to specify groups of principals.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrenew\fR\fR
-.ad
-.RS 17n
-Automatically renew the credentials (TGT) until renewable lifetime expires.
-This is equivalent to the user running \fBkinit\fR \fB-R\fR.
-.sp
-The renew options include:
-.sp
-.ne 2
-.na
-\fB\fBlog-success\fR\fR
-.ad
-.RS 15n
-Log the result of the renew attempt on success using the specified method
-(\fBsyslog\fR|\fBterminal\fR|\fBmail\fR).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBlog-failure\fR\fR
-.ad
-.RS 15n
-Log the result of the renew attempt on failure using the specified method
-(\fBsyslog\fR|\fBterminal\fR|\fBmail\fR). Some renew failure conditions are:
-TGT renewable lifetime has expired, the KDCs are unavailable, or the cred cache
-file has been removed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBlog\fR\fR
-.ad
-.RS 15n
-Same as specifying both \fBlog-success\fR and \fBlog-failure\fR.
-.RE
-
-.LP
-Note -
-.sp
-.RS 2
-If no log options are given, no logging is done.
-.RE
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsyslog\fR\fR
-.ad
-.RS 17n
-Sends the warnings to the system's syslog. Depending on the
-\fB/etc/syslog.conf\fR file, syslog entries are written to the
-\fB/var/adm/messages\fR file and/or displayed on the terminal.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBterminal\fR\fR
-.ad
-.RS 17n
-Sends the warnings to display on the terminal.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmail\fR\fR
-.ad
-.RS 17n
-Sends the warnings as email to the address specified by \fIemail_address\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fItime\fR\fR
-.ad
-.RS 17n
-Specifies how much time before the \fBTGT\fR expires when a warning should be
-sent. The default time value is seconds, but you can specify \fBh\fR (hours)
-and \fBm\fR (minutes) after the number to specify other time values.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIemail_address\fR\fR
-.ad
-.RS 17n
-Specifies the email address at which to send the warnings. This field must be
-specified only with the \fBmail\fR field.
-.RE
-
-.SH EXAMPLES
-\fBExample 1 \fRSpecifying Warnings
-.sp
-.LP
-The following \fBwarn.conf\fR entry
-
-.sp
-.in +2
-.nf
-\fB* syslog 5m\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-specifies that warnings will be sent to the syslog five minutes before the
-expiration of the \fBTGT\fR for all principals. The form of the message is:
-
-.sp
-.in +2
-.nf
-jdb@EXAMPLE.COM: your kerberos credentials expire in 5 minutes
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRSpecifying Renewal
-.sp
-.LP
-The following \fBwarn.conf\fR entry:
-
-.sp
-.in +2
-.nf
-* renew:log terminal 30m
-.fi
-.in -2
-
-.sp
-.LP
-\&...specifies that renew results will be sent to the user's terminal 30
-minutes before the expiration of the TGT for all principals. The form of the
-message (on renew success) is:
-
-.sp
-.in +2
-.nf
-myname@EXAMPLE.COM: your kerberos credentials have been renewed
-.fi
-.in -2
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/usr/lib/krb5/ktkt_warnd\fR\fR
-.ad
-.RS 28n
-Kerberos warning daemon
-.RE
-
-.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-\fBkinit\fR(1), \fBkdestroy\fR(1), \fBktkt_warnd\fR(1M), \fBsyslog.conf\fR(4),
-\fButmpx\fR(4), \fBattributes\fR(5), \fBkerberos\fR(5), \fBpam_krb5\fR(5)
-.SH NOTES
-The auto-renew of the TGT is attempted only if the user is logged-in, as
-determined by examining \fButmpx\fR(4).
diff --git a/usr/src/man/man4/ypfiles.4 b/usr/src/man/man4/ypfiles.4
deleted file mode 100644
index 8c23bc14e2..0000000000
--- a/usr/src/man/man4/ypfiles.4
+++ /dev/null
@@ -1,154 +0,0 @@
-'\" te
-.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH YPFILES 4 "Feb 25, 2017"
-.SH NAME
-ypfiles \- Network Information Service Version 2, formerly known as YP
-.SH DESCRIPTION
-.LP
-The NIS network information service uses a distributed, replicated database of
-\fBdbm\fR files , in ASCII form, that are contained in the \fB/var/yp\fR
-directory hierarchy on each NIS server.
-.sp
-.LP
-A \fBdbm\fR database served by the NIS server is called a NIS \fImap\fR. A NIS
-\fIdomain\fR is a subdirectory of \fB/var/yp\fR that contains a set of NIS maps
-on each NIS server.
-.sp
-.LP
-Standard nicknames are defined in the file \fB/var/yp/nicknames\fR. These names
-can be used in place of the full map name in the \fBypmatch\fR and \fBypcat\fR
-commands. Use the command \fBypwhich\fR \fB-x\fR to display the current set of
-nicknames. Use the command \fBypwhich\fR \fB-m\fR to display all the available
-maps. Each line of the nickname file contains two fields separated by white
-space. The first field is the nickname, and the second field is the name of the
-map that it expands to. The nickname cannot contain a ".".
-.SS "NIS to LDAP (N2L)"
-.LP
-If the \fB/var/yp/NISLDAPmapping\fR configuration file is present, the NIS
-server operates in NIS to LDAP (N2L) mode. In this mode, NIS maps are stored in
-a new set of DBM files, prepended by the \fBLDAP_\fR prefix, at
-\fB/var/yp/\fIdomainname\fR\fR. These files are used as a cache backed by
-information from an LDAP server. Additional DBM files are created in the same
-directory to hold the cache's TTL values.
-.sp
-.LP
-N2L mode enables NIS clients to be supported in an LDAP environment.
-.sp
-.LP
-In N2L mode, the old style DBM files, NIS source files, and the
-\fBypmake\fR(1M) utility have to role. They are retained to enable easy
-conversion back to the traditional mode, if required.
-.SS "Converting from N2L to Traditional NIS"
-.LP
-When NIS is operating in N2L mode, it uses a new set of NIS maps with an
-\fBLDAP_\fR prefix, based on the contents of the LDAP DIT. The NIS source files
-are unused and become out of date. If you wish to convert back to the
-traditional NIS mode, the N2L configuration file should be deleted. The system
-will then return to using the standard map files. Optionally, the N2L mode map
-files, \fB/var/yp/*/LDAP_*\fR can also be deleted.
-.sp
-.LP
-If you want to run the system in traditional mode with information based on the
-DIT, then the NIS source files must be regenerated based on the N2L maps. To
-regenerate the NIS source files based on the N2L maps, run \fBypmap2src\fR(1M).
-.SH FILES
-.ne 2
-.na
-\fB\fB/var/yp\fR\fR
-.ad
-.sp .6
-.RS 4n
-Directory containing NIS configuration files.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/yp/binding\fR\fR
-.ad
-.sp .6
-.RS 4n
-Stores the information required to bind the NIS client to the NIS server.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/yp/binding/\fIypdomain\fR/ypservers\fR\fR
-.ad
-.sp .6
-.RS 4n
-Contains the servers to which the NIS client is allowed to bind.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/yp/Makefile\fR\fR
-.ad
-.sp .6
-.RS 4n
-Builds the NIS \fBndbm\fR databases.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/yp/nicknames\fR\fR
-.ad
-.sp .6
-.RS 4n
-Nicknames file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/yp/securenets\fR\fR
-.ad
-.sp .6
-.RS 4n
-Defines the hosts and networks that are granted access to information in the
-served domain. This file is read at startup time by \fBypserv\fR and
-\fBypxfrd\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/yp/\fIypdomain\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Directory containing \fBndbm\fR databases.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/yp/NISLDAPmapping\fR\fR
-.ad
-.sp .6
-.RS 4n
-NIS to LDAP configuration file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/yp/*/LDAP_*\fR\fR
-.ad
-.sp .6
-.RS 4n
-NIS to LDAP mode map files
-.RE
-
-.SH SEE ALSO
-.LP
-\fBldap\fR(1), \fBmakedbm\fR(1M), \fBypbind\fR(1M), \fBypinit\fR(1M),
-\fBypmake\fR(1M), \fBypmap2src\fR(1M), \fBypserv\fR(1M), \fBypxfrd\fR(1M),
-\fBndbm\fR(3C), \fBypclnt\fR(3NSL)
diff --git a/usr/src/man/man4/yppasswdd.4 b/usr/src/man/man4/yppasswdd.4
deleted file mode 100644
index 837c6402af..0000000000
--- a/usr/src/man/man4/yppasswdd.4
+++ /dev/null
@@ -1,61 +0,0 @@
-'\" te
-.\" Copyright (c) 2001, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH YPPASSWDD 4 "Nov 8, 2001"
-.SH NAME
-yppasswdd \- configuration file for rpc.yppasswdd (NIS password daemon)
-.SH SYNOPSIS
-.LP
-.nf
-\fB/etc/default/yppasswdd\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fByppasswdd\fR file contains a parameter that modifies the behavior of the
-\fBrpc.yppasswdd\fR(1M) daemon.
-.sp
-.LP
-The \fByppasswdd\fR file contains a single parameter:
-.sp
-.in +2
-.nf
-#check_restricted_shell_name=1
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-By default in the current release, this line in \fByppasswdd\fR is commented
-out. If you uncomment the line, when a user attempts to change his default
-shell using \fB`passwd -r nis -e`\fR (see \fBpasswd\fR(1)), the
-\fBrpc.yppasswdd\fR daemon checks whether the name of the user's current shell
-begins with an 'r'. \fBrpc.yppasswdd\fR considers any shell whose name begins
-with an 'r' (for example, \fBrcsh\fR) to be a restricted shell. If a user's
-shell does begin with 'r', his attempt to change from the default shell will
-fail.
-.sp
-.LP
-If the line in the \fByppasswdd\fR file is commented out (the default), the
-\fBrpc.yppasswdd\fR daemon does not perform the restricted shell check.
-.sp
-.LP
-The \fByppasswdd\fR file is editable only by root or a member of the sys group.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/default/yppasswdd\fR\fR
-.ad
-.RS 26n
-configuration file for \fBrpc.yppasswdd\fR daemon
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBrpc.yppasswdd\fR(1M)
diff --git a/usr/src/man/man4/ypserv.4 b/usr/src/man/man4/ypserv.4
deleted file mode 100644
index 4cec3b4dd8..0000000000
--- a/usr/src/man/man4/ypserv.4
+++ /dev/null
@@ -1,714 +0,0 @@
-'\" te
-.\" Copyright (C) 2003, Sun Microsystems, Inc.
-.\" All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH YPSERV 4 "Feb 25, 2017"
-.SH NAME
-ypserv \- configuration file for NIS to LDAP transition daemons
-.SH SYNOPSIS
-.LP
-.nf
-\fB/etc/default/ypserv\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBypserv\fR file specifies configuration information for the
-\fBypserv\fR(1M) daemon. Configuration information can come from LDAP or be
-specified in the \fBypserv\fR file.
-.sp
-.LP
-You can create a simple \fBypserv\fR file by running \fBinityp2l\fR(1M). The
-\fBypserv\fR file can then be customized as required.
-.sp
-.LP
-A related \fBNISLDAPmapping\fR file contains mapping information that converts
-NIS entries into LDAP entries. See the \fBNISLDAPmapping\fR(4) man page for an
-overview of the setup that is needed to map NIS data to or from LDAP.
-.SH EXTENDED DESCRIPTION
-.LP
-The \fBypserv\fR(1M) server recognizes the attributes that follow. Values
-specified for these attributes in the \fBypserv\fR file, including any empty
-values, override values that are obtained from LDAP. However, the
-\fBnisLDAPconfig*\fR values are read from the \fBypserv\fR file only
-.SS "Attributes"
-.LP
-The following are attributes that are used for initial configuration.
-.sp
-.ne 2
-.na
-\fB\fBnisLDAPconfigDN\fR\fR
-.ad
-.sp .6
-.RS 4n
-The \fBDN\fR for configuration information. If \fBnisLDAPconfigDN\fR is empty,
-all other \fBnisLDAPConfig*\fR values are ignored.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnisLDAPconfigPreferredServerList\fR\fR
-.ad
-.sp .6
-.RS 4n
-The list of servers to use for the configuration phase. There is no default
-value. The following is an example of a value for
-\fBnisLDAPconfigPreferredServerList\fR:
-.sp
-.in +2
-.nf
-nisLDAPconfigPreferredServerList=127.0.0.1:389
-.fi
-.in -2
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnisLDAPconfigAuthenticationMethod\fR\fR
-.ad
-.sp .6
-.RS 4n
-The authentication method used to obtain the configuration information. The
-recognized values for \fBnisLDAPconfigAuthenticationMethod\fR are:
-.sp
-.ne 2
-.na
-\fB\fBnone\fR\fR
-.ad
-.RS 19n
-No authentication attempted
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsimple\fR\fR
-.ad
-.RS 19n
-Password of proxy user sent in the clear to the LDAP server
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsasl/cram-md5\fR\fR
-.ad
-.RS 19n
-Use \fBSASL/CRAM-MD5\fR authentication. This authentication method may not be
-supported by all LDAP servers. A password must be supplied.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsasl/digest-md5\fR\fR
-.ad
-.RS 19n
-Use SASL/DIGEST-MD5 authentication. The \fBSASL/CRAM-MD5\fRauthentication
-method may not be supported by all LDAP servers. A password must be supplied.
-.RE
-
-\fBnisLDAPconfigAuthenticationMethod\fR has no default value. The following is
-an example of a value for \fBnisLDAPconfigAuthenticationMethod\fR:
-.sp
-.in +2
-.nf
-nisLDAPconfigAuthenticationMethod=simple
-.fi
-.in -2
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnisLDAPconfigTLS\fR\fR
-.ad
-.sp .6
-.RS 4n
-The transport layer security used for the connection to the server. The
-recognized values are:
-.sp
-.ne 2
-.na
-\fB\fBnone\fR\fR
-.ad
-.RS 8n
-No encryption of transport layer data. The default value is \fBnone\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBssl\fR\fR
-.ad
-.RS 8n
-\fBSSL\fR encryption of transport layer data. A certificate is required.
-.RE
-
-Export and import control restrictions might limit the availability of
-transport layer security.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnisLDAPconfigTLSCertificateDBPath\fR\fR
-.ad
-.sp .6
-.RS 4n
-The name of the directory that contains the certificate database. The default
-path is \fB/var/yp\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnisLDAPconfigProxyUser\fR\fR
-.ad
-.sp .6
-.RS 4n
-The proxy user used to obtain configuration information.
-\fBnisLDAPconfigProxyUser\fR has no default value. If the value ends with a
-comma, the value of the \fBnisLDAPconfigDN\fR attribute is appended. For
-example:
-.sp
-.in +2
-.nf
-nisLDAPconfigProxyUser=cn=nisAdmin,ou=People,
-.fi
-.in -2
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnisLDAPconfigProxyPassword\fR\fR
-.ad
-.sp .6
-.RS 4n
-The password that should be supplied to LDAP for the proxy user when the
-authentication method requires one. To avoid exposing this password publicly on
-the machine, the password should only appear in the configuration file, and the
-file should have an appropriate owner, group, and file mode.
-\fBnisLDAPconfigProxyPassword\fR has no default value.
-.RE
-
-.sp
-.LP
-The following are attributes used for data retrieval. The object class name
-used for these attributes is \fBnisLDAPconfig\fR.
-.sp
-.ne 2
-.na
-\fB\fBpreferredServerList\fR\fR
-.ad
-.sp .6
-.RS 4n
-The list of servers to use to read or to write mapped NIS data from or to LDAP.
-\fBpreferredServerList\fR has no default value. For example:
-.sp
-.in +2
-.nf
-preferredServerList=127.0.0.1:389
-.fi
-.in -2
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBauthenticationMethod\fR\fR
-.ad
-.sp .6
-.RS 4n
-The authentication method to use to read or to write mapped NIS data from or to
-LDAP. For recognized values, see the \fBLDAPconfigAuthenticationMethod
-attribute\fR. \fBauthenticationMethod\fR has no default value. For example:
-.sp
-.in +2
-.nf
-authenticationMethod=simple
-.fi
-.in -2
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnisLDAPTLS\fR\fR
-.ad
-.sp .6
-.RS 4n
-The transport layer security to use to read or to write NIS data from or to
-LDAP. For recognized values, see the \fBnisLDAPconfigTLS\fR attribute. The
-default value is none. Export and import control restrictions might limit the
-availability of transport layer security.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnisLDAPTLSCertificateDBPath\fR\fR
-.ad
-.sp .6
-.RS 4n
-The name of the directory that contains the certificate \fBDB\fR. For
-recognized and default values for \fBnisLDAPTLSCertificateDBPath\fR, see the
-\fBnisLDAPconfigTLSCertificateDBPath\fR attribute.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnisLDAPproxyUser\fR\fR
-.ad
-.sp .6
-.RS 4n
-Proxy user used by \fBypserv\fR(1M), \fBypxfrd\fR(1M) and \fByppasswdd\fR(1M)
-to read or to write from or to LDAP. Assumed to have the appropriate permission
-to read and modify LDAP data. There is no default value. If the value ends in a
-comma, the value of the context for the current domain, as defined by a
-\fBnisLDAPdomainContext\fR attribute, is appended. See \fBNISLDAPmapping\fR(4).
-For example:
-.sp
-.in +2
-.nf
-nisLDAPproxyUser=cn=nisAdmin,ou=People,
-.fi
-.in -2
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnisLDAPproxyPassword\fR\fR
-.ad
-.sp .6
-.RS 4n
-The password that should be supplied to LDAP for the proxy user when the
-authentication method so requires. To avoid exposing this password publicly on
-the machine, the password should only appear in the configuration file, and the
-file must have an appropriate owner, group, and file mode.
-\fBnisLDAPproxyPassword\fR has no default value.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnisLDAPsearchTimeout\fR\fR
-.ad
-.sp .6
-.RS 4n
-Establishes the timeout for the LDAP search operation. The default value for
-\fBnisLDAPsearchTimeout\fR is 180 seconds.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnisLDAPbindTimeout\fR\fR
-.ad
-.br
-.na
-\fB\fBnisLDAPmodifyTimeout\fR\fR
-.ad
-.br
-.na
-\fB\fBnisLDAPaddTimeout\fR\fR
-.ad
-.br
-.na
-\fB\fBnisLDAPdeleteTimeout\fR\fR
-.ad
-.sp .6
-.RS 4n
-Establish timeouts for LDAP bind, modify, add, and delete operations,
-respectively. The default value is 15 seconds for each attribute. Decimal
-values are allowed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnisLDAPsearchTimeLimit\fR\fR
-.ad
-.sp .6
-.RS 4n
-Establish a value for the \fBLDAP_OPT_TIMELIMIT\fR option, which suggests a
-time limit for the search operation on the LDAP server. The server may impose
-its own constraints on possible values. See your LDAP server documentation. The
-default is the \fBnisLDAPsearchTimeout\fR value. Only integer values are
-allowed.
-.sp
-Since the \fBnisLDAPsearchTimeout\fR limits the amount of time the client
-\fBypserv\fR will wait for completion of a search operation, do not set the
-value of \fBnisLDAPsearchTimeLimit\fR larger than the value of
-\fBnisLDAPsearchTimeout\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnisLDAPsearchSizeLimit\fR\fR
-.ad
-.sp .6
-.RS 4n
-Establish a value for the \fBLDAP_OPT_SIZELIMIT\fR option, which suggests a
-size limit, in bytes, for the search results on the LDAP server. The server may
-impose its own constraints on possible values. See your LDAP server
-documentation. The default value for \fBnisLDAPsearchSizeLimit\fR is zero,
-which means the size limit is unlimited. Only integer values are allowed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnisLDAPfollowReferral\fR\fR
-.ad
-.sp .6
-.RS 4n
-Determines if the \fBypserv\fR should follow referrals or not. Recognized
-values for \fBnisLDAPfollowReferral\fR are \fByes\fR and \fBno\fR. The default
-value for \fBnisLDAPfollowReferral\fR is \fBno\fR.
-.RE
-
-.sp
-.LP
-The following attributes specify the action to be taken when some event occurs.
-The values are all of the form \fBevent=action\fR. The default action is the
-first one listed for each event.
-.sp
-.ne 2
-.na
-\fB\fBnisLDAPretrieveErrorAction\fR\fR
-.ad
-.sp .6
-.RS 4n
-If an error occurs while trying to retrieve an entry from LDAP, one of the
-following actions can be selected:
-.sp
-.ne 2
-.na
-\fB\fBuse_cached\fR\fR
-.ad
-.RS 14n
-Retry the retrieval the number of time specified by
-\fBnisLDAPretrieveErrorAttempts\fR, with the \fBnisLDAPretrieveErrorTimeout\fR
-value controlling the wait between each attempt.
-.sp
-If all attempts fail, then a warning is logged and the value currently in the
-cache is returned to the client.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfail\fR\fR
-.ad
-.RS 14n
-Proceed as for \fBuse_cached\fR, but if all attempts fail, a \fBYPERR_YPERR\fR
-error is returned to the client.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnisLDAPretrieveErrorAttempts\fR\fR
-.ad
-.sp .6
-.RS 4n
-The number of times a failed retrieval should be retried. The default value for
-\fBnisLDAPretrieveErrorAttempts\fR is unlimited. While retries are made the
-\fBypserv\fR daemon will be prevented from servicing further
-requests .\fBnisLDAPretrieveErrorAttempts\fR values other than \fB1\fR should be used
-with caution.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnisLDAPretrieveErrorTimeout\fR\fR
-.ad
-.sp .6
-.RS 4n
-The timeout in seconds between each new attempt to retrieve LDAP data. The
-default value for \fBnisLDAPretrieveErrorTimeout\fR is 15 seconds.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnisLDAPstoreErrorAction\fR\fR
-.ad
-.sp .6
-.RS 4n
-An error occurred while trying to store data to the LDAP repository.
-.sp
-.ne 2
-.na
-\fB\fBretry\fR\fR
-.ad
-.RS 9n
-Retry operation \fBnisLDAPstoreErrorAttempts\fR times with
-\fBnisLDAPstoreErrorTimeout\fR seconds between each attempt. While retries are
-made, the NIS daemon will be prevented from servicing further requests. Use
-with caution.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfail\fR\fR
-.ad
-.RS 9n
-Return \fBYPERR_YPERR\fR error to the client.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnisLDAPstoreErrorAttempts\fR\fR
-.ad
-.sp .6
-.RS 4n
-The number of times a failed attempt to store should be retried. The default
-value for \fBnisLDAPstoreErrorAttempts\fR is unlimited. The value for
-\fBnisLDAPstoreErrorAttempts\fR is ignored unless
-\fBnisLDAPstoreErrorAction=retry\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnisLDAPstoreErrortimeout\fR\fR
-.ad
-.sp .6
-.RS 4n
-The timeout, in seconds, between each new attempt to store LDAP data. The
-default value for \fBnisLDAPstoreErrortimeout\fR is 15 seconds. The
-\fBnisLDAPstoreErrortimeout\fR value is ignored unless
-\fBnisLDAPstoreErrorAction=retry\fR.
-.RE
-
-.SS "Storing Configuration Attributes in LDAP"
-.LP
-Most attributes described on this man page, as well as those described on
-\fBNISLDAPmapping\fR(4), can be stored in LDAP. In order to do so, you will
-need to add the following definitions to your LDAP server, which are described
-here in \fBLDIF\fR format suitable for use by \fBldapadd\fR(1). The attribute
-and objectclass OIDs are examples only.
-.sp
-.in +2
-.nf
-dn: cn=schema
-changetype: modify
-add: attributetypes
-attributetypes: ( 1.3.6.1.4.1.11.1.3.1.1.2 NAME 'preferredServerList' \e
- DESC 'Preferred LDAP server host addresses used by DUA' \e
- EQUALITY caseIgnoreMatch \
- SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE )
-attributetypes: ( 1.3.6.1.4.1.11.1.3.1.1.6 NAME 'authenticationMethod' \e
- DESC 'Authentication method used to contact the DSA' \e
- EQUALITY caseIgnoreMatch \
- SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE )
-
-dn: cn=schema
- changetype: modify
- add: attributetypes
- attributetypes: ( 1.3.6.1.4.1.42.2.27.5.42.43.1.0 \e
- NAME 'nisLDAPTLS' \e
- DESC 'Transport Layer Security' \e
- SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )
- attributetypes: ( 1.3.6.1.4.1.42.2.27.5.42.43.1.1 \e
- NAME 'nisLDAPTLSCertificateDBPath' \e
- DESC 'Certificate file' \e
- SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )
- attributetypes: ( 1.3.6.1.4.1.42.2.27.5.42.43.1.2 \e
- NAME 'nisLDAPproxyUser' \e
- DESC 'Proxy user for data store/retrieval' \e
- SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )
- attributetypes: ( 1.3.6.1.4.1.42.2.27.5.42.43.1.3 \e
- NAME 'nisLDAPproxyPassword' \e
- DESC 'Password/key/shared secret for proxy user' \e
- SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )
- attributetypes: ( 1.3.6.1.4.1.42.2.27.5.42.43.1.6 \e
- NAME 'nisLDAPretrieveErrorAction' \e
- DESC 'Action following an LDAP search error' \e
- SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )
- attributetypes: ( 1.3.6.1.4.1.42.2.27.5.42.43.1.7 \e
- NAME 'nisLDAPretrieveErrorAttempts' \e
- DESC 'Number of times to retry an LDAP search' \e
- SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )
- attributetypes: ( 1.3.6.1.4.1.42.2.27.5.42.43.1.8 \e
- NAME 'nisLDAPretrieveErrorTimeout' \e
- DESC 'Timeout between each search attempt' \e
- SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )
- attributetypes: ( 1.3.6.1.4.1.42.2.27.5.42.43.1.9 \e
- NAME 'nisLDAPstoreErrorAction' \e
- DESC 'Action following an LDAP store error' \e
- SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )
- attributetypes: ( 1.3.6.1.4.1.42.2.27.5.42.43.1.10 \e
- NAME 'nisLDAPstoreErrorAttempts' \e
- DESC 'Number of times to retry an LDAP store' \e
- SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )
- attributetypes: ( 1.3.6.1.4.1.42.2.27.5.42.43.1.11 \e
- NAME 'nisLDAPstoreErrorTimeout' \e
- DESC 'Timeout between each store attempt' \e
- SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )
- attributetypes: ( 1.3.6.1.4.1.42.2.27.5.42.43.1.12 \e
- NAME 'nisLDAPdomainContext' \e
- DESC 'Context for a single domain' \e
- SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )
- attributetypes: ( 1.3.6.1.4.1.42.2.27.5.42.43.1.13 \e
- NAME 'nisLDAPyppasswddDomains' \e
- DESC 'List of domains for which password changes are made' \e
- SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )
- attributetypes: ( 1.3.6.1.4.1.42.2.27.5.42.43.1.14 \e
- NAME 'nisLDAPdatabaseIdMapping' \e
- DESC 'Defines a database id for a NIS object' \e
- SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
- attributetypes: ( 1.3.6.1.4.1.42.2.27.5.42.43.1.15 \e
- NAME 'nisLDAPentryTtl' \e
- DESC 'TTL for cached objects derived from LDAP' \e
- SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
- attributetypes: ( 1.3.6.1.4.1.42.2.27.5.42.43.1.16 \e
- NAME 'nisLDAPobjectDN' \e
- DESC 'Location in LDAP tree where NIS data is stored' \e
- SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
- attributetypes: ( 1.3.6.1.4.1.42.2.27.5.42.43.1.17 ) \e
- NAME 'nisLDAPnameFields' \e
- DESC 'Rules for breaking NIS entries into fields' \\e
- SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
- attributetypes: ( 1.3.6.1.4.1.42.2.27.5.42.43.1.18 ) \e
- NAME 'nisLDAPsplitFields' \e
- DESC 'Rules for breaking fields into sub fields' \e
- SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
-
- attributetypes: ( 1.3.6.1.4.1.42.2.27.5.42.43.1.19 \e
- NAME 'nisLDAPattributeFromField' \e
- DESC 'Rules for mapping fields to LDAP attributes' \e
- SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
-
- attributetypes: ( 1.3.6.1.4.1.42.2.27.5.42.43.1.20 \e
- NAME 'nisLDAPfieldFromAttribute' \e
- DESC 'Rules for mapping fields to LDAP attributes' \e
- SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
-
- attributetypes: ( 1.3.6.1.4.1.42.2.27.5.42.43.1.21 \e
- NAME 'nisLDAPrepeatedFieldSeparators' \e
- DESC 'Rules for mapping fields to LDAP attributes' \e
- SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
-
- attributetypes: ( 1.3.6.1.4.1.42.2.27.5.42.43.1.22 \e
- NAME 'nisLDAPcommentChar' \e
- DESC 'Rules for mapping fields to LDAP attributes' \e
- SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
-
- attributetypes: ( 1.3.6.1.4.1.42.2.27.5.42.43.1.23 \e
- NAME 'nisLDAPmapFlags' \e
- DESC 'Rules for mapping fields to LDAP attributes' \e
- SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
-
- dn: cn=schema
- changetype: modify
- add: objectclasses
- objectclasses: ( 1.3.6.1.4.1.42.2.27.5.42.43.1.0 NAME 'nisLDAPconfig' \e
- DESC 'NIS/LDAP mapping configuration' \e
- SUP top STRUCTURAL \e
- MAY ( cn $ preferredServerList $
- authenticationMethod $ nisLDAPTLS $
- nisLDAPTLSCertificateDBPath $
- nisLDAPproxyUser $ nisLDAPproxyPassword $
- nisLDAPretrieveErrorAction $
- nisLDAPretrieveErrorAttempts $
- nisLDAPretrieveErrorTimeout $
- nisLDAPstoreErrorAction $
- nisLDAPstoreErrorAttempts $
- nisLDAPstoreErrorTimeout $
- nisLDAPdomainContext $
- nisLDAPyppasswddDomains $
- nisLDAPdatabaseIdMapping $
- nisLDAPentryTtl $
- nisLDAPobjectDN $
- nisLDAPnameFields $
- nisLDAPsplitFields $
- nisLDAPattributeFromField $
- nisLDAPfieldFromAttribute $
- nisLDAPrepeatedFieldSeparators $
- nisLDAPcommentChar $
- nisLDAPmapFlags ) )
-.fi
-.in -2
-
-.sp
-.LP
-Create a file containing the following LDIF data. Substitute your actual
-\fBnisLDAPconfigDN\fR for \fBconfigDN\fR:
-.sp
-.in +2
-.nf
-dn: configDN
-objectClass: top
-objectClass: nisLDAPconfig
-.fi
-.in -2
-
-.sp
-.LP
-Use this file as input to the \fBldapadd\fR(1) command in order to create the
-NIS to LDAP configuration entry. Initially, the entry is empty. You can use the
-\fBldapmodify\fR(1) command to add configuration attributes.
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRCreating a NIS to LDAP Configuration Entry
-.sp
-.LP
-To set the server list to port 389 on 127.0.0.1, create the following file and
-use it as input to \fBldapmodify\fR(1):
-
-.sp
-.in +2
-.nf
-dn: configDN
-preferredServerList: 127.0.0.1:389
-.fi
-.in -2
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Obsolete
-.TE
-
-.SH SEE ALSO
-.LP
-\fBldapadd\fR(1), \fBldapmodify\fR(1), \fBinityp2l\fR(1M), \fByppasswdd\fR(1M),
-\fBypserv\fR(1M), \fBypxfrd\fR(1M), \fBNISLDAPmapping\fR(4),
-\fBattributes\fR(5)
-.sp
-.LP
-\fISystem Administration Guide: Naming and Directory Services (DNS, NIS, and
-LDAP)\fR
diff --git a/usr/src/man/man4/zoneinfo.4 b/usr/src/man/man4/zoneinfo.4
deleted file mode 100644
index 1685518408..0000000000
--- a/usr/src/man/man4/zoneinfo.4
+++ /dev/null
@@ -1,13 +0,0 @@
-'\" te
-.\" Copyright (c) 1999, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH ZONEINFO 4 "Jun 21, 1999"
-.SH NAME
-zoneinfo \- timezone information
-.SH DESCRIPTION
-.sp
-.LP
-For notes regarding the zoneinfo timezones, see
-\fB/usr/share/lib/zoneinfo/src/README\fR.
diff --git a/usr/src/man/man4d/Makefile b/usr/src/man/man4d/Makefile
new file mode 100644
index 0000000000..2b20c60b32
--- /dev/null
+++ b/usr/src/man/man4d/Makefile
@@ -0,0 +1,300 @@
+#
+# This file and its contents are supplied under the terms of the
+# Common Development and Distribution License ("CDDL"), version 1.0.
+# You may only use this file in accordance with the terms of version
+# 1.0 of the CDDL.
+#
+# A full copy of the text of the CDDL should have accompanied this
+# source. A copy of the CDDL is also available via the Internet
+# at http://www.illumos.org/license/CDDL.
+#
+
+#
+# Copyright 2011, Richard Lowe
+# Copyright 2016 Garrett D'Amore <garrett@damore.org>
+# Copyright 2019 Joyent, Inc.
+# Copyright 2016 Hans Rosenfeld <rosenfeld@grumpf.hope-2000.org>
+# Copyright 2018 Nexenta Systems, Inc.
+# Copyright 2020 Peter Tribble
+# Copyright 2021 Oxide Computer Company
+#
+
+include $(SRC)/Makefile.master
+
+MANSECT= 4d
+
+_MANFILES= aac.4d \
+ afe.4d \
+ audio.4d \
+ audio1575.4d \
+ audioens.4d \
+ audiols.4d \
+ audiop16x.4d \
+ audiopci.4d \
+ audiots.4d \
+ av1394.4d \
+ bge.4d \
+ blkdev.4d \
+ bnxe.4d \
+ ccid.4d \
+ chxge.4d \
+ console.4d \
+ cpuid.4d \
+ dca.4d \
+ dcam1394.4d \
+ devinfo.4d \
+ dmfe.4d \
+ dtrace.4d \
+ e1000g.4d \
+ ehci.4d \
+ ena.4d \
+ fasttrap.4d \
+ fbt.4d \
+ fcip.4d \
+ fcoe.4d \
+ fcoei.4d \
+ fcoet.4d \
+ fcp.4d \
+ fctl.4d \
+ fd.4d \
+ fp.4d \
+ full.4d \
+ gld.4d \
+ hci1394.4d \
+ hermon.4d \
+ hid.4d \
+ hme.4d \
+ hubd.4d \
+ hxge.4d \
+ ib.4d \
+ ibcm.4d \
+ ibd.4d \
+ ibdm.4d \
+ ibdma.4d \
+ ibtl.4d \
+ ieee1394.4d \
+ igb.4d \
+ ipnet.4d \
+ iscsi.4d \
+ iser.4d \
+ ixgbe.4d \
+ kmdb.4d \
+ kstat.4d \
+ ksensor.4d \
+ ksyms.4d \
+ llc1.4d \
+ lockstat.4d \
+ lofi.4d \
+ log.4d \
+ mem.4d \
+ mpt_sas.4d \
+ mr_sas.4d \
+ msglog.4d \
+ mt.4d \
+ mxfe.4d \
+ myri10ge.4d \
+ null.4d \
+ nulldriver.4d \
+ nxge.4d \
+ ohci.4d \
+ openprom.4d \
+ pcic.4d \
+ pcmcia.4d \
+ physmem.4d \
+ pm.4d \
+ poll.4d \
+ profile.4d \
+ ptm.4d \
+ pty.4d \
+ qlc.4d \
+ ramdisk.4d \
+ random.4d \
+ rge.4d \
+ rtls.4d \
+ sad.4d \
+ sata.4d \
+ scsa1394.4d \
+ scsa2usb.4d \
+ sd.4d \
+ sdp.4d \
+ sdt.4d \
+ ses.4d \
+ sfe.4d \
+ sgen.4d \
+ srpt.4d \
+ st.4d \
+ sysmsg.4d \
+ systrace.4d \
+ ticlts.4d \
+ tty.4d \
+ tzmon.4d \
+ ufm.4d \
+ ugen.4d \
+ uhci.4d \
+ usb_ac.4d \
+ usb_as.4d \
+ usb_ia.4d \
+ usb_mid.4d \
+ usba.4d \
+ usbftdi.4d \
+ usbprn.4d \
+ usbsacm.4d \
+ usbsksp.4d \
+ usbsprl.4d \
+ usbvc.4d \
+ virtualkm.4d \
+ vni.4d \
+ vr.4d \
+ vnd.4d \
+ wscons.4d \
+ xge.4d \
+ yge.4d \
+ zcons.4d \
+ zero.4d \
+ zfd.4d
+
+sparc_MANFILES= audiocs.4d \
+ bbc_beep.4d \
+ dad.4d \
+ dm2s.4d \
+ dr.4d \
+ eri.4d \
+ fas.4d \
+ gpio_87317.4d \
+ grbeep.4d \
+ mc-opl.4d \
+ n2rng.4d \
+ ntwdt.4d \
+ oplkmdrv.4d \
+ oplmsu.4d \
+ oplpanel.4d \
+ pcicmu.4d \
+ pcipsy.4d \
+ pcisch.4d \
+ sf.4d \
+ smbus.4d \
+ socal.4d \
+ ssd.4d \
+ su.4d \
+ todopl.4d \
+ tsalarm.4d \
+ zs.4d \
+ zsh.4d
+
+i386_MANFILES= ahci.4d \
+ amd8111s.4d \
+ amdnbtemp.4d \
+ amdzen.4d \
+ amr.4d \
+ arcmsr.4d \
+ arn.4d \
+ asy.4d \
+ ata.4d \
+ atge.4d \
+ ath.4d \
+ atu.4d \
+ audio810.4d \
+ audiocmi.4d \
+ audiocmihd.4d \
+ audioemu10k.4d \
+ audiohd.4d \
+ audioixp.4d \
+ audiosolo.4d \
+ audiovia823x.4d \
+ bcm_sata.4d \
+ bfe.4d \
+ cmdk.4d \
+ coretemp.4d \
+ cpqary3.4d \
+ dnet.4d \
+ ecpp.4d \
+ elxl.4d \
+ i40e.4d \
+ imc.4d \
+ imcstub.4d \
+ ipmi.4d \
+ iprb.4d \
+ ipw.4d \
+ iwh.4d \
+ iwi.4d \
+ iwn.4d \
+ mega_sas.4d \
+ mlxcx.4d \
+ npe.4d \
+ ntxn.4d \
+ nv_sata.4d \
+ nvme.4d \
+ pchtemp.4d \
+ pcn.4d \
+ qede.4d \
+ ral.4d \
+ rtw.4d \
+ rum.4d \
+ rwd.4d \
+ rwn.4d \
+ sda.4d \
+ sdhost.4d \
+ sfxge.4d \
+ si3124.4d \
+ skd.4d \
+ smbios.4d \
+ smntemp.4d \
+ uath.4d \
+ ural.4d \
+ urtw.4d \
+ usmn.4d \
+ vioblk.4d \
+ vioif.4d \
+ virtio.4d \
+ wpi.4d \
+ xhci.4d \
+ zen_udf.4d \
+ zyd.4d
+
+_MANLINKS= 1394.4d \
+ allkmem.4d \
+ fdc.4d \
+ firewire.4d \
+ kmem.4d \
+ lo0.4d \
+ pts.4d \
+ ticots.4d \
+ ticotsord.4d \
+ urandom.4d \
+ usb.4d
+
+sparc_MANLINKS= drmach.4d
+
+i386_MANLINKS= amdzen_stub.4d
+
+MANFILES = $(_MANFILES) $($(MACH)_MANFILES)
+MANLINKS = $(_MANLINKS) $($(MACH)_MANLINKS)
+
+amdzen_stub.4d := LINKSRC = amdzen.4d
+
+drmach.4d := LINKSRC = dr.4d
+
+fdc.4d := LINKSRC = fd.4d
+
+1394.4d := LINKSRC = ieee1394.4d
+firewire.4d := LINKSRC = ieee1394.4d
+
+lo0.4d := LINKSRC = ipnet.4d
+
+pts.4d := LINKSRC = ptm.4d
+
+allkmem.4d := LINKSRC = mem.4d
+kmem.4d := LINKSRC = mem.4d
+
+urandom.4d := LINKSRC = random.4d
+
+ticots.4d := LINKSRC = ticlts.4d
+ticotsord.4d := LINKSRC = ticlts.4d
+
+usb.4d := LINKSRC = usba.4d
+
+.KEEP_STATE:
+
+include $(SRC)/man/Makefile.man
+
+install: $(ROOTMANFILES) $(ROOTMANLINKS)
diff --git a/usr/src/man/man4d/aac.4d b/usr/src/man/man4d/aac.4d
new file mode 100644
index 0000000000..027e83eb5f
--- /dev/null
+++ b/usr/src/man/man4d/aac.4d
@@ -0,0 +1,94 @@
+'\" te
+.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH AAC 4D "Dec 27, 2007"
+.SH NAME
+aac \- SCSI HBA driver for Adaptec AdvancedRAID Controller
+.SH DESCRIPTION
+.sp
+.LP
+The \fBaac\fR plain SCSI host bus adapter driver is a SCSA-compliant nexus
+driver that supports the Adaptec 2200S/2120S SCSI RAID card, Dell PERC 3Di SCSI
+RAID controller, Dell PERC 3Si SCSI RAID controller, Adaptec 2820SA SATA
+RAID card, Adaptec 4800SAS, 4805SAS SAS RAID cards and SUN's STK RAID REM, STK
+RAID INT, and STK RAID EXT RAID cards.
+.sp
+.LP
+The \fBaac\fR driver is ported from FreeBSD and supports RAID disk I/O
+functions and the RAID management interface.
+.SH DRIVER CONFIGURATION
+.sp
+.LP
+There are no user configurable parameters available. Please configure your
+hardware through BIOS.
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for a description of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture T{
+x86, SPARC (Limited to systems with AAC hardware RAID cards.)
+T}
+.TE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/aac\fR\fR
+.ad
+.RS 27n
+32-bit ELF kernel module.
+.RE
+
+.sp
+.ne 2
+.na
+\fB/kernel/drv/amd64/aac\fR
+.ad
+.RS 27n
+64-bit ELF kernel module. (x86)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/sparcv9/aac\fR\fR
+.ad
+.RS 27n
+64-bit ELF kernel module. (SPARC)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/aac.conf\fR\fR
+.ad
+.RS 27n
+Configuration file. (Contains no user-configurable options).
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7),
+.BR prtconf (8),
+.BR scsi_hba_attach (9F),
+.BR scsi_sync_pkt (9F),
+.BR scsi_transport (9F),
+.BR scsi_device (9S),
+.BR scsi_inquiry (9S),
+.BR scsi_pkt (9S)
+.sp
+.LP
+\fISmall Computer System Interface-2 (SCSI-2)\fR
diff --git a/usr/src/man/man4d/afe.4d b/usr/src/man/man4d/afe.4d
new file mode 100644
index 0000000000..12273ce097
--- /dev/null
+++ b/usr/src/man/man4d/afe.4d
@@ -0,0 +1,67 @@
+.\" Copyright 2014 Garrett D'Amore <garrett@damore.org>
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\" notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\" notice, this list of conditions and the following disclaimer in the
+.\" documentation and/or other materials provided with the distribution.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER AND CONTRIBUTORS
+.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+.\" LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+.\" FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+.\" COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
+.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
+.\" USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
+.\" ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE
+.\"
+.Dd "Aug 3, 2014"
+.Dt AFE 4D
+.Os
+.Sh NAME
+.Nm afe
+.Nd ADMtek Fast Ethernet device driver
+.Sh SYNOPSIS
+.Pa /dev/afe
+.Sh DESCRIPTION
+The
+.Nm
+driver provides support for the Centaur and Comet families of Fast Ethernet
+PCI controllers originally produced by ADMtek and Infineon.
+.Lp
+These devices generally support the standard Fast Ethernet features, including
+10BASE-T and 100BASE-TX, both full and half duplex operation, IEEE 802.3
+autonegotiation, etc.
+They also support full size MTUs (1500 bytes), even when used with VLANs.
+Most of them also support flow control.
+.
+.Lp
+The device driver supports the
+.Xr ieee802.3 7
+properties, which can be configured with
+.Xr dladm 8 .
+.
+.\" The driver also has a "forcefiber" driver.conf setting, but this is for
+.\" very very obscure hardware, and we are not documenting this option
+.\" for now.
+.
+.Sh FILES
+.Bl -tag -width /dev/afe
+.It Pa /dev/afe
+Special character device.
+.El
+.Sh SEE ALSO
+.Xr dlpi 4P ,
+.Xr pci 5 ,
+.Xr ieee802.3 7 ,
+.Xr dladm 8 ,
+.Xr ifconfig 8
+.Rs
+.%T IEEE 802.3: Ethernet
+.%Q IEEE Standards Association
+.Re
diff --git a/usr/src/man/man4d/ahci.4d b/usr/src/man/man4d/ahci.4d
new file mode 100644
index 0000000000..3183b477bc
--- /dev/null
+++ b/usr/src/man/man4d/ahci.4d
@@ -0,0 +1,95 @@
+'\" te
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH AHCI 4D "Sep 10, 2009"
+.SH NAME
+ahci \- Advanced Host Controller Interface SATA controller driver
+.SH SYNOPSIS
+.LP
+.nf
+\fBsata@unit-address\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBahci\fR driver is a SATA framework-compliant HBA driver that supports
+SATA HBA controllers that are compatible with the \fIAdvanced Host Controller
+Interface 1.0\fR specification. AHCI is an Intel-developed protocol that
+describes the register-level interface for host controllers for serial ATA 1.0a
+and Serial ATA II. The \fIAHCI 1.0\fR specification describes the interface
+between the system software and the host controller hardware.
+.sp
+.LP
+The \fBahci\fR driver currently supports the Intel ICH6/7/8/9/10, VIA vt8251
+and JMicron AHCI controllers which are compliant with the Advanced Host
+Controller Interface 1.0 specification. The Intel ICH6/7/8/9 and VIA vt8251
+controllers support standard SATA features. The \fBahci\fR driver currently
+supports hard disk, ATAPI DVD, ATAPI tape, ATAPI disk (i.e. Dell RD1000),
+hotplug, NCQ (Native command queuing) and Port multipliers (Silicon Image
+3726/4726). Power management is not yet supported.
+.SH CONFIGURATION
+.sp
+.LP
+The \fBahci\fR module contains no user configurable parameters.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/ahci\fR\fR
+.ad
+.sp .6
+.RS 4n
+32-bit \fBELF\fR kernel module (x86).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/ahci\fR\fR
+.ad
+.sp .6
+.RS 4n
+64-bit \fBELF\fR kernel module (x86).
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attribute:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture x86
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR sata (4D),
+.BR cfgadm (8),
+.BR cfgadm_sata (8),
+.BR prtconf (8)
+.sp
+.LP
+\fIAdvanced Host Controller Interface 1.0\fR
+.sp
+.LP
+\fIWriting Device Drivers\fR
+.SH NOTES
+.sp
+.LP
+To bind the \fBahci\fR driver to your controller, choose the [AHCI] BIOS
+option.
+.sp
+.LP
+Note that booting is not supported if toggle exists between the [IDE] and
+[AHCI] BIOS options
diff --git a/usr/src/man/man4d/amd8111s.4d b/usr/src/man/man4d/amd8111s.4d
new file mode 100644
index 0000000000..7b120eb060
--- /dev/null
+++ b/usr/src/man/man4d/amd8111s.4d
@@ -0,0 +1,115 @@
+'\" te
+.\" Copyright (c) 2007 by Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH AMD8111S 4D "Jul 30, 2007"
+.SH NAME
+amd8111s \- AMD-8111 Fast Ethernet Network Adapter driver
+.SH SYNOPSIS
+.LP
+.nf
+/dev/amd8111s
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBamd8111s\fR Fast Ethernet driver is a multi-threaded, loadable,
+clonable, GLD-based STREAMS driver supporting the Data Link Provider
+Interface, \fBdlpi\fR(4P), on the AMD-8111 Fast Ethernet Network Adapter.
+.sp
+.LP
+The \fBamd8111s\fR driver functions include controller initialization, frame
+transmit and receive, promiscuous and multicast support, and error recovery and
+reporting.
+.SH APPLICATION PROGRAMMING INTERFACE
+.sp
+.LP
+The cloning, character-special device \fB/dev/amd8111\fR is used to access all
+AMD-8111 Fast Ethernet devices installed within the system.
+.sp
+.LP
+The \fBamd8111s\fR driver is managed by the \fBdladm\fR(8) command line
+utility, which allows VLANs to be defined on top of amd8111s instances and for
+amd8111s instances to be aggregated. See \fBdladm\fR(8) for more details.
+.SH CONFIGURATION
+.sp
+.LP
+By default, the \fBamd8111s\fR driver performs auto-negotiation to select the
+link speed and mode. Link speed and mode can be any of the following:
+.sp
+.LP
+100 Mbps, full-duplex.
+.sp
+.LP
+100 Mbps, half-duplex.
+.sp
+.LP
+10 Mbps, full-duplex.
+.sp
+.LP
+10 Mbps, half-duplex.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/dev/amd8111s*\fR \fR
+.ad
+.sp .6
+.RS 4n
+Special character device.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd8111s*\fR \fR
+.ad
+.sp .6
+.RS 4n
+32-bit ELF kernel module (x86).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/amd8111s*\fR \fR
+.ad
+.sp .6
+.RS 4n
+64-bit ELF Kernel module (x86).
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+l l
+l l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+Architecture x86
+Interface Stability Committed
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR streamio (4I),
+.BR dlpi (4P),
+.BR attributes (7),
+.BR dladm (8)
+.sp
+.LP
+\fIWriting Device Drivers\fR
+.sp
+.LP
+\fISTREAMS Programming Guide\fR
+.sp
+.LP
+\fINetwork Interfaces Programmer's Guide\fR
diff --git a/usr/src/man/man4d/amdnbtemp.4d b/usr/src/man/man4d/amdnbtemp.4d
new file mode 100644
index 0000000000..a20cc02e49
--- /dev/null
+++ b/usr/src/man/man4d/amdnbtemp.4d
@@ -0,0 +1,78 @@
+.\"
+.\" This file and its contents are supplied under the terms of the
+.\" Common Development and Distribution License ("CDDL"), version 1.0.
+.\" You may only use this file in accordance with the terms of version
+.\" 1.0 of the CDDL.
+.\"
+.\" A full copy of the text of the CDDL should have accompanied this
+.\" source. A copy of the CDDL is also available via the Internet at
+.\" http://www.illumos.org/license/CDDL.
+.\"
+.\"
+.\" Copyright 2019 Robert Mustacchi
+.\"
+.Dd December 24, 2019
+.Dt AMDNBTEMP 4D
+.Os
+.Sh NAME
+.Nm amdnbtemp
+.Nd AMD northbridge temperature sensor driver
+.Sh SYNOPSIS
+.Pa /dev/sensors/temperature/cpu/*
+.Sh DESCRIPTION
+The
+.Nm
+driver provides the system the ability to read the temperature sensor
+found in several AMD processors.
+This includes the K10 microarchitecture, and its derivatives, as well as
+the Bulldozer microarchitecture.
+The following AMD processors are supported:
+.Bl -dash
+.It
+AMD Family 10h Processors
+.Pq K10
+.It
+AMD Family 11h Processors
+.Pq Turion X2 Ultra
+.It
+AMD Family 12h Processors
+.Pq Llano APUs
+.It
+AMD Family 14h Processors
+.Pq Bobcat
+.It
+Family 15h models 0-fh, 10h-1fh, 30-3fh
+.Pq Bulldozer and Piledriver
+.It
+AMD Family 16h Processors
+.Pq Puma and Jaguar
+.El
+.Pp
+Some AMD Family 10h processors that utilize socket F and socket AM2 are
+subject to erratum 319 which indicates that the temperature sensor has
+an inaccurate measurement.
+If such a processor is detected, the system does not attach a
+temperature sensor to the device.
+.Pp
+AMD Family 15h models 60-7fh
+.Pq Steamroller and Excavator
+are not supported at this time.
+.Pp
+For AMD Family 17h
+.Pq Zen
+processors, the
+.Xr smntemp 4D
+driver provides access to the temperature sensors.
+.Sh SEE ALSO
+.Xr smntemp 4D ,
+.Xr fmadm 8
+.Rs
+.%A AMD
+.%B BIOS and Kernel Developer’s Guide (BKDG) for AMD Family 16h Models 00h-0Fh Processors
+.%O 49125
+.Re
+.Rs
+.%A AMD
+.%B Revision Guide for AMD Family 10h Processors
+.%O 41322
+.Re
diff --git a/usr/src/man/man4d/amdzen.4d b/usr/src/man/man4d/amdzen.4d
new file mode 100644
index 0000000000..7d17a6a9d4
--- /dev/null
+++ b/usr/src/man/man4d/amdzen.4d
@@ -0,0 +1,80 @@
+.\"
+.\" This file and its contents are supplied under the terms of the
+.\" Common Development and Distribution License ("CDDL"), version 1.0.
+.\" You may only use this file in accordance with the terms of version
+.\" 1.0 of the CDDL.
+.\"
+.\" A full copy of the text of the CDDL should have accompanied this
+.\" source. A copy of the CDDL is also available via the Internet at
+.\" http://www.illumos.org/license/CDDL.
+.\"
+.\"
+.\" Copyright 2021 Oxide Computer Company
+.\"
+.Dd September 26, 2020
+.Dt AMDZEN 4D
+.Os
+.Sh NAME
+.Nm amdzen ,
+.Nm amdzen_stub
+.Nd AMD Zen Nexus Driver
+.Sh DESCRIPTION
+The
+.Nm
+driver provides access to the Northbridge, Data Fabric, and System
+Management Network
+.Pq SMN
+for a number of AMD processor lines, including AMD Ryzen CPUs and APUs,
+ThreadRipper CPUs, and EPYC CPUs from the following families:
+.Bl -bullet
+.It
+AMD Zen Naples, Summit Ridge, Whitehaven
+.Pq Family 17h
+.It
+AMD Zen+ Colfax, Picasso, and Pinnacle Ridge
+.Pq Family 17h
+.It
+AMD Zen 2 Castle Peak, Matisse, Rome, and Renoir
+.Pq Family 17h
+.It
+AMD Zen 3 Cezanne, Milan, and Vermeer
+.Pq Family 19h
+.El
+.Pp
+This driver is a nexus driver and facilitates access to the northbridge,
+data fabric, and SMN between various other devices such as
+.Xr smntemp 4D .
+The various processor devices that make up the northbridge and data
+fabric have the
+.Sy amdzen_stub
+driver attached to them.
+The different devices are all amalgamated and a single uniform view is
+provided by the
+.Sy amdzen
+driver.
+.Pp
+The
+.Nm
+driver is a nexus driver that has the following children:
+.Bl -tag -width "smntemp(4D)"
+.It Xr smntemp 4D
+Provides access to on-die temperature sensors.
+.It Xr usmn 4D
+Provides read access to the SMN.
+This driver is intended for development purposes.
+.It Xr zen_udf 4D
+Provides read access to the data fabric.
+This driver is intended for development purposes.
+.El
+.Sh ARCHITECTURE
+The
+.Sy amdzen
+and
+.Sy amdzen_stub
+drivers are limited to
+.Sy x86
+platforms with AMD Family 17h and 19h processors.
+.Sh SEE ALSO
+.Xr smntemp 4D ,
+.Xr usmn 4D ,
+.Xr zen_udf 4D
diff --git a/usr/src/man/man4d/amr.4d b/usr/src/man/man4d/amr.4d
new file mode 100644
index 0000000000..6175ecd88a
--- /dev/null
+++ b/usr/src/man/man4d/amr.4d
@@ -0,0 +1,81 @@
+'\" te
+.\" Copyright (c) 2005, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH AMR 4D "Apr 20, 2005"
+.SH NAME
+amr \- SCSI HBA driver for Dell PERC 3/DC, 4/SC, 4/DC and 4/DI
+.SH DESCRIPTION
+.sp
+.LP
+The \fBamr\fR plain \fBSCSI\fR host bus adapter driver is a SCSA-compliant
+nexus driver that supports the Dell PERC 3DC/4SC/4DC/4Di RAID devices.
+.sp
+.LP
+The \fBamr\fR driver ports from FreeBSD and only supports basic RAID disk I/O
+functions.
+.SH DRIVER CONFIGURATION
+.sp
+.LP
+There are no user configurable parameters available. Please configure your
+hardware through BIOS.
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for a description of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture x86
+.TE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amr\fR\fR
+.ad
+.RS 25n
+32-bit ELF kernel module.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/amr\fR\fR
+.ad
+.RS 25n
+64-bit kernel module (x86 only).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amr.conf\fR\fR
+.ad
+.RS 25n
+Driver configuration file (contains no user-configurable options).
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR lsimega (4D),
+.BR attributes (7),
+.BR prtconf (8),
+.BR scsi_hba_attach_setup (9F),
+.BR scsi_sync_pkt (9F),
+.BR scsi_transport (9F),
+.BR scsi_device (9S),
+.BR scsi_inquiry (9S),
+.BR scsi_pkt (9S)
+.sp
+.LP
+\fISmall Computer System Interface-2 (SCSI-2)\fR
diff --git a/usr/src/man/man4d/arcmsr.4d b/usr/src/man/man4d/arcmsr.4d
new file mode 100644
index 0000000000..9c0dbb9dbd
--- /dev/null
+++ b/usr/src/man/man4d/arcmsr.4d
@@ -0,0 +1,119 @@
+'\" te
+.\" Copyright 2011 Nexenta Systems, Inc. All rights reserved.
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH ARCMSR 4D "May 28, 2011"
+.SH NAME
+arcmsr \- SAS and SATA HBA driver for Areca Hardware Raid devices
+.SH DESCRIPTION
+.sp
+.LP
+The \fBarcmsr\fR host bus adapter driver is a SCSA-compliant nexus driver that
+supports Areca Technology SAS and SATA RAID devices.
+.sp
+.LP
+Supported SATA RAID cards:
+.sp
+.in +2
+.nf
+ARC-1110 pci17d3,1110
+ARC-1120 pci17d3,1120
+ARC-1130 pci17d3,1130
+ARC-1160 pci17d3,1160
+ARC-1170 pci17d3,1170
+ARC-1201 pci17d3,1201
+ARC-1210 pci17d3,1210
+ARC-1220 pci17d3,1220
+ARC-1230 pci17d3,1230
+ARC-1260 pci17d3,1260
+ARC-1270 pci17d3,1270
+ARC-1280 pci17d3,1280
+.fi
+.in -2
+
+.sp
+.LP
+Supported SAS RAID cards:
+.sp
+.in +2
+.nf
+ARC-1380 pci17d3,1380
+ARC-1381 pci17d3,1381
+ARC-1680 pci17d3,1680
+ARC-1681 pci17d3,1681
+ARC-1880 pci17d3,1880
+.fi
+.in -2
+
+.SH CONFIGURATION
+.sp
+.LP
+There are no user configurable parameters available. Please configure your
+hardware through the host system BIOS.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB/kernel/drv/arcmsr\fR
+.ad
+.RS 28n
+32-bit ELF kernel module.
+.RE
+
+.sp
+.ne 2
+.na
+\fB/kernel/drv/amd64/arcmsr\fR
+.ad
+.RS 28n
+64-bit kernel module (x64 only).
+.RE
+
+.sp
+.ne 2
+.na
+\fB/kernel/drv/arcmsr.conf\fR
+.ad
+.RS 28n
+Driver configuration file (contains no user-configurable options).
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for a description of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture x86
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7),
+.BR prtconf (8),
+.BR scsi_hba_attach_setup (9F),
+.BR scsi_sync_pkt (9F),
+.BR scsi_transport (9F),
+.BR scsi_device (9S),
+.BR scsi_inquiry (9S),
+.BR scsi_pkt (9S)
+.sp
+.LP
+\fISmall Computer System Interface-2 (SCSI-2)\fR
+.sp
+.LP
+\fIhttp://www.areca.com.tw/products/main.htm\fR
+.sp
+.LP
+\fIhttp://developer.intel.com/design/iio/index.htm\fR \(em(Intel Corp IO
+processors provide the underlying RAID engine for the supported devices).
diff --git a/usr/src/man/man4d/arn.4d b/usr/src/man/man4d/arn.4d
new file mode 100644
index 0000000000..8ecfdbb23c
--- /dev/null
+++ b/usr/src/man/man4d/arn.4d
@@ -0,0 +1,78 @@
+'\" te
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH ARN 4D "Aug 24, 2009"
+.SH NAME
+arn \- Atheros AR9280/9281/9285 IEEE802.11 a/b/g/n wireless network device
+.SH DESCRIPTION
+.sp
+.LP
+The \fBarn\fR IEEE802.11 a/b/g/n wireless driver is a loadable, clonable,
+GLDv3-based STREAMS driver supporting Atheros AR9280/9281/9285 IEEE802.11
+a/b/g/n wireless network device.
+.SS "Configuration"
+.sp
+.LP
+The \fBarn\fR driver performs auto-negotiation to determine the data rate and
+mode. The driver supports only BSS networks (also known as \fBap\fR or
+\fBinfrastructure\fR networks) and \fBopen\fR(or \fBopen-system\fR) or
+\fBshared system\fR authentication. For wireless security, WEP encryption,
+WPA-PSK, and WPA2-PSK are currently supported. Configuration and administration
+tasks can be performed with the \fBdladm\fR(8) and \fBwificonfig\fR(8)
+utilities.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/dev/arn\fR\fR
+.ad
+.RS 25n
+Special character device
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/arn\fR\fR
+.ad
+.RS 25n
+32-bit ELF kernel module (x86)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/arn\fR\fR
+.ad
+.RS 25n
+64-bit ELF kernel driver module (x86)
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for a description of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+l | l
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture x86
+_
+Interface Stability Committed
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR gld (4D),
+.BR dlpi (4P),
+.BR attributes (7),
+.BR dladm (8),
+.BR wificonfig (8)
diff --git a/usr/src/man/man4d/asy.4d b/usr/src/man/man4d/asy.4d
new file mode 100644
index 0000000000..f65224abe3
--- /dev/null
+++ b/usr/src/man/man4d/asy.4d
@@ -0,0 +1,286 @@
+'\" te
+.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH ASY 4D "Oct 9, 2004"
+.SH NAME
+asy \- asynchronous serial port driver
+.SH SYNOPSIS
+.LP
+.nf
+#include <fcntl.h>
+.fi
+
+.LP
+.nf
+#include <sys/termios.h>
+.fi
+
+.LP
+.nf
+open("/dev/term/\fIn\fR", \fImode\fR);
+.fi
+
+.LP
+.nf
+open("/dev/tty/\fIn\fR", \fImode\fR);
+.fi
+
+.LP
+.nf
+open("/dev/cua/\fIn\fR", \fImode\fR);
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBasy\fR module is a loadable STREAMS driver that provides basic support
+for Intel-8250, National Semiconductor-16450, 16550, and some 16650 and 16750
+and equivalent UARTs connected via the ISA-bus, in addition to basic
+asynchronous communication support. The \fBasy\fR module supports those
+\fBtermio\fR(4I) device control functions specified by flags in the
+\fBc_cflag\fR word of the \fBtermios\fR structure, and by the \fBIGNBRK,\fR
+\fBIGNPAR,\fR \fBPARMRK\fR, \fBINPCK\fR, \fBIXON\fR, \fBIXANY\fR, or
+\fBIXOFF\fR flags in the c_iflag word of the termios structure. All other
+\fBtermio\fR(4I) functions must be performed by \fBSTREAMS\fR modules pushed
+atop the driver. When a device is opened, the \fBldterm\fR(4M) and
+\fBttcompat\fR(4M) \fBSTREAMS\fR modules are automatically pushed on top of the
+stream, providing the standard \fBtermio\fR(4I) interface.
+.sp
+.LP
+The character-special devices \fB/dev/term/a\fR, \fB/dev/term/b\fR,
+\fB/dev/term/c\fR and \fB/dev/term/d\fR are used to access the four standard
+serial ports (COM1, COM2, COM3 and COM4 at I/O addresses 3f8, 2f8, 3e8 and 2e8
+respectively). Serial ports on non-standard ISA-bus I/O addresses are accessed
+via the character-special devices \fB/dev/term/0\fR, \fB/dev/term/1\fR, etc.
+Device names are typically used to provide a logical access point for a dial-in
+line that is used with a modem.
+.sp
+.LP
+To allow a single tty line to be connected to a modem and used for incoming and
+outgoing calls, a special feature is available that is controlled by the minor
+device number. By accessing character-special devices with names of the form
+\fB/dev/cua/\fR\fIn, \fR it is possible to open a port without the \fBCarrier
+Detect\fR signal being asserted, either through hardware or an equivalent
+software mechanism. These devices are commonly known as dial-out lines.
+.LP
+Note -
+.sp
+.RS 2
+This module is affected by the setting of certain eeprom variables,
+ttya-ignore-cd and ttya-rts-dtr-off (and similarly for ttyb-, ttyc-, and ttyd-
+parameters). For information on these parameters, see the \fBeeprom\fR(8) man
+page.
+.RE
+.LP
+Note -
+.sp
+.RS 2
+For serial ports on the standard COM1 to COM4 I/O addresses above, the default
+setting for ttya-ignore-cd and ttya-rts-dtr-off is true. If any of these ports
+are connected to a modem, these settings should be changed to false. For serial
+ports on non-standard I/O addresses, the default setting for ttya-ignore-cd and
+ttya-rts-dtr-off is false.
+.RE
+.SH APPLICATION PROGRAMMING INTERFACE
+.sp
+.LP
+Once a \fB/dev/cua/\fR\fIn\fR line is opened, the corresponding tty line cannot
+be opened until the \fB/dev/cua/\fR\fIn\fR line is closed. A blocking open will
+wait until the \fB/dev/cua/\fR\fIn\fR line is closed (which will drop \fBData
+Terminal Ready\fR, after which \fBCarrier Detect\fR will usually drop as well)
+and carrier is detected again. A non-blocking open will return an error. If the
+\fB/dev/ttyd\fR\fIn\fR line has been opened successfully (usually only when
+carrier is recognized on the modem), the corresponding \fB/dev/cua/\fR\fIn\fR
+line cannot be opened. This allows a modem to be attached to
+\fB/dev/term/\fR[\fIn\fR] (renamed from \fB/dev/tty\fR[\fIn\fR]) and used for
+dial-in (by enabling the line for login in \fB/etc/inittab\fR) or dial-out (by
+\fBtip\fR(1) or \fBuucp\fR(1C)) as \fB/dev/cua/\fR\fIn\fR when no one is logged
+in on the line.
+.SH IOCTLS
+.sp
+.LP
+The standard set of \fBtermio\fR \fBioctl()\fR calls are supported by
+\fBasy\fR.
+.sp
+.LP
+Breaks can be generated by the \fBTCSBRK,\fR \fBTIOCSBRK,\fR and \fBTIOCCBRK\fR
+\fBioctl()\fR calls.
+.sp
+.LP
+The input and output line speeds may be set to any speed that is supported by
+\fBtermio\fR. The speeds cannot be set independently; for example, when the
+output speed is set, the input speed is automatically set to the same speed.
+.sp
+.LP
+When the \fBasy\fR module is used to service the serial console port, it
+supports a BREAK condition that allows the system to enter the debugger or the
+monitor. The BREAK condition is generated by hardware and it is usually enabled
+by default.
+.sp
+.LP
+A BREAK condition originating from erroneous electrical signals cannot be
+distinguished from one deliberately sent by remote DCE. The Alternate Break
+sequence can be used as a remedy against this. Due to a risk of incorrect
+sequence interpretation, SLIP and certain other binary protocols should not be
+run over the serial console port when Alternate Break sequence is in effect.
+Although PPP is a binary protocol, it is able to avoid these sequences using
+the ACCM feature in \fIRFC 1662\fR. For Solaris PPP 4.0, you do this by adding
+the following line to the \fB/etc/ppp/options\fR file (or other configuration
+files used for the connection; see \fBpppd\fR(8) for details):
+.sp
+.in +2
+.nf
+asyncmap 0x00002000
+.fi
+.in -2
+
+.sp
+.LP
+By default, the Alternate Break sequence is a three character sequence:
+carriage return, tilde and control-B (CR ~ CTRL-B), but may be changed by the
+driver. For more information on breaking (entering the debugger or monitor),
+see \fBkbd\fR(1) and \fBkb\fR(4M).
+.SH ERRORS
+.sp
+.LP
+An \fBopen()\fR will fail under the following conditions:
+.sp
+.ne 2
+.na
+\fB\fBENXIO\fR\fR
+.ad
+.RS 9n
+The unit being opened does not exist.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEBUSY\fR\fR
+.ad
+.RS 9n
+The dial-out device is being opened while the dial-in device is already open,
+or the dial-in device is being opened with a no-delay open and the dial-out
+device is already open.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEBUSY\fR\fR
+.ad
+.RS 9n
+The unit has been marked as exclusive-use by another process with a
+\fBTIOCEXCL\fR \fBioctl()\fR call.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEINTR\fR\fR
+.ad
+.RS 9n
+The open was interrupted by the delivery of a signal.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/dev/term/\fR[\fIa-d\fR]\fR
+.ad
+.br
+.na
+\fB\fB/dev/term/\fR[\fI012...\fR]\fR
+.ad
+.RS 25n
+dial-in tty lines
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/cua/\fR[\fIa-d\fR]\fR
+.ad
+.br
+.na
+\fB\fB/dev/cua/\fR[\fI012...\fR]\fR
+.ad
+.RS 25n
+ dial-out tty lines
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/asy\fR\fR
+.ad
+.RS 25n
+64-bit kernel module for 64-bit x86 platform
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/asy.conf\fR\fR
+.ad
+.RS 25n
+\fBasy\fR configuration file
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture x86
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR kbd (1),
+.BR tip (1),
+.BR uucp (1C),
+.BR ioctl (2),
+.BR open (2),
+.BR termios (3C),
+.BR termio (4I),
+.BR kb (4M),
+.BR ldterm (4M),
+.BR ttcompat (4M),
+.BR attributes (7),
+.BR eeprom (8),
+.BR pppd (8)
+.SH DIAGNOSTICS
+.sp
+.ne 2
+.na
+\fB\fBasy\fR\fIn\fR\fB\|: silo overflow.\fR\fR
+.ad
+.sp .6
+.RS 4n
+The hardware overrun occurred before the input character could be serviced.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBasy\fR\fIn\fR\fB\|: ring buffer overflow.\fR\fR
+.ad
+.sp .6
+.RS 4n
+The driver's character input ring buffer overflowed before it could be
+serviced.
+.RE
+
diff --git a/usr/src/man/man4d/ata.4d b/usr/src/man/man4d/ata.4d
new file mode 100644
index 0000000000..9c83521819
--- /dev/null
+++ b/usr/src/man/man4d/ata.4d
@@ -0,0 +1,385 @@
+'\" te
+.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH ATA 4D "Aug 18, 2016"
+.SH NAME
+ata \- AT attachment disk driver
+.SH SYNOPSIS
+.LP
+.nf
+\fBide@unit-\fR\fIaddress\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBata\fR driver supports disk and ATAPI CD/DVD devices conforming to the
+AT Attachment specification including IDE interfaces. Support is provided for
+both parallel ATA (PATA) and serial ATA (SATA) interfaces.
+.sp
+.LP
+Refer to the \fISolaris x86 Hardware Compatibility List\fR for a list of
+supported controllers.
+.SH PRECONFIGURE
+.LP
+A PCI IDE controller can operate in compatibility mode or in PCI-native mode.
+If more than one controller is present in the system, only one can operate in
+compatibility mode.
+.sp
+.LP
+If two PATA drives share the same controller, you must set one to master and
+the other to slave. If both a PATA disk drive and a PATA CD-ROM drive utilize
+the same controller, you can designate the disk drive as the master with the
+CD-ROM drive as the slave, although this is not mandatory.
+.SS "Supported Settings"
+.LP
+Supported settings for the primary controller when in compatibility mode are:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+IRQ Level: 14
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+I/O Address: 0x1F0
+.RE
+.sp
+.LP
+Supported settings for the secondary controller when in compatibility mode are:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+IRQ Level: 15
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+I/O Address: 0x170
+.RE
+.LP
+Note -
+.sp
+.RS 2
+When in PCI-native mode, the IRQ and I/O address resources are configured by
+the system BIOS.
+.RE
+.SS "Known Problems and Limitations"
+.RS +4
+.TP
+.ie t \(bu
+.el o
+This driver does not support any RAID features present on a PATA/SATA
+controller. As a result, you should configure BIOS to select IDE mode rather
+than RAID mode. Some systems may require updating BIOS to allow switching
+modes.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+On some systems, the SATA controller must have option ROM enabled or BIOS will
+not consider SATA drives as bootable devices.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Panasonic LK-MC579B and the Mitsumi FX34005 IDE CD-ROM drives are not supported
+and cannot be used to install the Solaris operating environment.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+CMD-604 is unable to handle simultaneous I/O on both IDE interfaces. This
+defect causes the Solaris software to hang if both interfaces are used. Use
+only the primary IDE interface at address 0x1F0.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+NEC CDR-260/CDR-260R/CDR-273 and Sony CDU-55E ATAPI CD-ROM drives might fail
+during installation.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Sony CDU-701 CD-ROM drives must be upgraded to use firmware version 1.0r or
+later to support booting from the CD.
+.sp
+A Compact Flash(CF) card can work as an ATA disk through a CF-to-ATA adapter.
+If both card and adapter implement Compact Flash Version 2.0, DMA is supported.
+If either of them does not, you should set ata-disk-dma-enabled to '0.'
+.RE
+.SH CONFIGURATION
+.LP
+The ata driver properties are usually set in \fBata.conf\fR. However, it may be
+convenient, or in some cases necessary, for you to set some of the DMA related
+properties as a system global boot environment property. You set or modify
+properties in the boot environment immediately prior to booting the illumos
+kernel using the boot loader command line. You can also set
+boot environment properties using the \fBeeprom\fR(8) command or by editing
+the \fBbootenv.rc\fR configuration file. If a property is set in both the
+driver's \fBata.conf\fR file and the boot environment, the \fBata.conf\fR
+property takes precedence.
+.sp
+.LP
+Property modifications other than with the boot loader command line are
+not effective until you reboot the system. Property modifications via the
+boot loader command line do not persist across future boots.
+.sp
+.LP
+Direct Memory Access is enabled for disks and atapi CD/DVD by default. If you
+want to disable DMA when booting from a CD/DVD, you must first set
+atapi-cd-dma-enabled to 0 using the boot loader command line.
+.sp
+.ne 2
+.na
+\fB\fBata-dma-enabled\fR\fR
+.ad
+.RS 27n
+This property is examined before the DMA properties discussed below. If it is
+set to '0,' DMA is disabled for all ATA/ATAPI devices, and no further property
+checks are made. If this property is absent or is set to '1,' DMA status is
+determined by further examining one of the other properties listed below.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBata-disk-dma-enabled\fR\fR
+.ad
+.RS 27n
+This property is examined only for ATA disk devices, and only if
+ata-dma-enabled is not set to '0.'
+.sp
+If ata-disk-dma-enabled set to '0,' DMA is disabled for all ATA disks in the
+system. If this property is absent or set to '1,' DMA is enabled for all ATA
+disks and no further property checks are made. If needed, this property should
+be created by the administrator using the boot loader command line or the
+\fBeeprom\fR(8) command.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBatapi-cd-dma-enabled\fR\fR
+.ad
+.RS 27n
+This property is examined only for ATAPI CD/DVD devices, and only if
+ata-dma-enabled is not set to '0.'
+.sp
+If atapi-cd-dma-enabled is absent or set to '0,' DMA is disabled for all ATAPI
+CD/DVD's. If set to '1,' DMA is enabled and no further property checks are
+made.
+.sp
+The Solaris installation program creates this property in the boot environment
+with a value of '1.' It can be changed with the boot loader command line
+or \fBeeprom\fR(8) as shown in the Example section of this manpage.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBatapi-other-dma-enabled\fR\fR
+.ad
+.RS 27n
+This property is examined only for non-CD/DVD ATAPI devices such as ATAPI tape
+drives, and only if ata-dma-enabled is not set to '0.'
+.sp
+If atapi-other-dma-enabled is set to '0,' DMA is disabled for all non-CD/DVD
+ATAPI devices. If this property is absent or set to '1,' DMA is enabled and no
+further property checks are made.
+.sp
+If needed, this property should be created by the administrator using the
+boot loader command line or the \fBeeprom\fR(8) command.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdrive0_block_factor\fR\fR
+.ad
+.br
+.na
+\fB\fBdrive1_block_factor\fR\fR
+.ad
+.RS 27n
+\fBATA\fR controllers support some amount of buffering (blocking). The purpose
+is to interrupt the host when an entire buffer full of data has been read or
+written instead of using an interrupt for each sector. This reduces interrupt
+overhead and significantly increases throughput. The driver interrogates the
+controller to find the buffer size. Some controllers hang when buffering is
+used, so the values in the configuration file are used by the driver to reduce
+the effect of buffering (blocking). The values presented may be chosen from
+\fB0x1\fR, \fB0x2\fR, \fB0x4\fR, \fB0x8\fR and \fB0x10\fR.
+.sp
+The values as shipped are set to \fB0x1\fR, and they can be tuned to increase
+performance.
+.sp
+If your controller hangs when attempting to use higher block factors, you may
+be unable to reboot the system. For x86 based systems, it is recommended that
+tuning be performed using a duplicate of the \fB/platform/i86pc/kernel\fR
+directory subtree. This ensures that a bootable kernel subtree exists in the
+event of a failed test.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBata-revert-to-defaults\fR\fR
+.ad
+.br
+.na
+\fB\fBrevert\(em<diskmodel>\fR\fR
+.ad
+.RS 27n
+When rebooting or shutting down, the driver can set a feature which allows the
+drive to return to the power-on settings when the drive receives a software
+reset (SRST) sequence. If this property is present and set to 1, the driver
+will set the feature to revert to defaults during reset. Setting this property
+to 1 may prevent some systems from soft-rebooting and would require cycling the
+power to boot the system. If this property is not present the system will not
+set the feature to revert to defaults during reset.
+.sp
+To determine the string to substitute for <diskmodel>, boot your system (you
+may have to press the reset button or power-cycle) and then view
+\fB/var/adm/messages\fR. Look for the string "IDE device at targ" or "ATAPI
+device at targ." The next line will contain the word "model" followed by the
+model number and a comma. Ignore all characters except letters, digits, ".",
+"_", and "-". Change uppercase letters to lower case. If the string
+revert-<diskmodel> is longer than 31 characters, use only the first 31
+characters.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRSample ata Configuration File
+.sp
+.in +2
+.nf
+\fB# for higher performance - set block factor to 16
+ drive0_block_factor=0x1 drive1_block_factor=0x1
+ max_transfer=0x100
+ flow_control="dmult" queue="qsort" disk="dadk" ;\fR
+.fi
+.in -2
+
+.LP
+\fBExample 2 \fRRevert to defaults property
+.sp
+.in +2
+.nf
+\fBrevert-st320420a=1;\fR
+.fi
+.in -2
+
+.sp
+.LP
+Output of \fB/var/adm/messages\fR:
+
+.sp
+.in +2
+.nf
+Aug 17 06:49:43 caesar ata:[ID 640982 kern.info] IDE device at targ 0,
+ lun 0 lastlun 0x0
+Aug 17 06:49:43 caesar ata:[ID 521533 kern.info] model ST320420A, stat
+.fi
+.in -2
+
+.LP
+\fBExample 3 \fRChange DMA property using the boot loader command line
+.sp
+.LP
+To change a DMA property using the boot loader command line:
+
+.RS +4
+.TP
+1.
+Reset the system.
+.RE
+.RS +4
+.TP
+2.
+Press "Esc" to interrupt the timeout.
+.RE
+.RS +4
+.TP
+3.
+Enter: boot -B atapi-cd-dma-enabled=1
+.RE
+.LP
+\fBExample 4 \fRChange DMA Property with eeprom(8)
+.sp
+.LP
+To enable DMA for optical devices while the Solaris kernel is running with the
+\fBeeprom\fR(8) system command:
+
+.sp
+.in +2
+.nf
+eeprom 'atapi-cd-dma-enabled=1'
+.fi
+.in -2
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/platform/i86pc/kernel/drv/ata\fR\fR
+.ad
+.sp .6
+.RS 4n
+Device driver.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/platform/i86pc/kernel/drv/ata.conf\fR\fR
+.ad
+.sp .6
+.RS 4n
+Configuration file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/boot/solaris/bootenv.rc\fR\fR
+.ad
+.sp .6
+.RS 4n
+Boot environment variables file for Solaris x86. \fBeeprom\fR(8) can be used
+to modify properties in this file.
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture x86
+.TE
+
+.SH SEE ALSO
+.LP
+.BR attributes (7),
+.BR eeprom (8)
+.sp
+.LP
+\fIINCITS T13 ATA/ATAPI-7\fR specifications
diff --git a/usr/src/man/man4d/atge.4d b/usr/src/man/man4d/atge.4d
new file mode 100644
index 0000000000..54fda6b245
--- /dev/null
+++ b/usr/src/man/man4d/atge.4d
@@ -0,0 +1,114 @@
+'\" te
+.\" Copyright (c) 2012 Gary Mills
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH ATGE 4D "Sep 11, 2009"
+.SH NAME
+atge \- Device driver for Atheros/Attansic Ethernet chipsets
+.SH DESCRIPTION
+.sp
+.LP
+The \fBatge\fR ethernet driver supports the
+Atheros/Attansic L1, L1E, and L1C Ethernet
+(AR8121/AR8113/8114, AR8131/AR8132, and AR8151/AR8152) chipsets:
+.sp
+.in +2
+.nf
+pciex1969,1026 Atheros AR8121/8113/8114
+pciex1969,1048 Attansic L1
+pciex1969,1062 Atheros AR8132 Fast Ethernet
+pciex1969,1063 Atheros AR8131 Gigabit Ethernet
+pciex1969,1073 Atheros AR8151 v1.0 Gigabit Ethernet
+pciex1969,1083 Atheros AR8151 v2.0 Gigabit Ethernet
+pciex1969,2060 Atheros AR8152 v1.1 Fast Ethernet
+pciex1969,2062 Atheros AR8152 v2.0 Fast Ethernet
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The \fBatge\fR driver supports IEEE 802.3 auto-negotiation, flow control and
+VLAN tagging.
+.SS "Configuration"
+.sp
+.LP
+The default configuration is auto-negotiation with bi-directional flow control.
+The advertised capabilities for auto-negotiation are based on the capabilities
+of the \fBPHY\fR.
+.sp
+.LP
+You can set the capabilities advertised by the \fBatge\fR controlled device
+using \fBdladm\fR(8). The driver supports only those parameters which begin
+with en (enabled) in the parameters listed by the command \fBdladm\fR(8). Each
+of these boolean parameters determines if the device advertises that mode of
+operation when the hardware supports it.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/dev/atge\fR\fR
+.ad
+.RS 26n
+Special character device
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/atge\fR\fR
+.ad
+.RS 26n
+32-bit device drive (x86)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/atge\fR\fR
+.ad
+.RS 26n
+64-bit device driver (x86)
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for a description of the following attribute:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture SPARC, x86
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR streamio (4I),
+.BR dlpi (4P),
+.BR driver.conf (5),
+.BR attributes (7),
+.BR ieee802.3 (7),
+.BR dladm (8),
+.BR ndd (8),
+.BR netstat (8)
+.sp
+.LP
+\fIWriting Device Drivers\fR
+.sp
+.LP
+\fINetwork Interface Guide\fR
+.sp
+.LP
+\fISTREAMS Programmer's Guide\fR
+.sp
+.LP
+\fIIEEE 802.3ae Specification, 2002\fR
diff --git a/usr/src/man/man4d/ath.4d b/usr/src/man/man4d/ath.4d
new file mode 100644
index 0000000000..95449e1572
--- /dev/null
+++ b/usr/src/man/man4d/ath.4d
@@ -0,0 +1,95 @@
+'\" te
+.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH ATH 4D "Nov 14, 2006"
+.SH NAME
+ath \- Atheros AR52xx 802.11b/g wireless NIC driver
+.SH DESCRIPTION
+.sp
+.LP
+The \fBath\fR \fI802.11b/g \fR wireless NIC driver is a multi-threaded,
+loadable, clonable, GLDv3-based STREAMS driver for the Atheros AR52xx
+(AR5210/5211/5212) chipset-based wireless NIC.
+.sp
+.LP
+The \fBath\fR driver functions include controller initialization, wireless
+\fI802.11b/g\fR infrastructure network connection, WEP, frame transmit and
+receive, and promiscuous and multi-cast support.
+.SH DRIVER CONFIGURATION
+.sp
+.LP
+The \fBath\fR driver performs auto-negotiation to determine the data rates and
+mode. Supported \fI802.11b\fR data rates (Mbits/sec.) are 1, 2, 5.5 and 11.
+Supported \fI802.11g\fR data rates (Mbits/sec.) are 1, 2, 5.5, 11, 6, 9, 12,
+18, 24, 36, 48 and 54.
+.sp
+.LP
+ The \fBath\fR driver supports only BSS networks (also known as "ap" or
+"infrastructure" networks) and the "open" (or "opensystem") authentication
+type. Only WEP encryption is currently supported. Configuration and
+administration can be performed through the \fBdladm\fR(8) or
+\fBwificonfig\fR(8) utilities.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/dev/ath*\fR \fR
+.ad
+.RS 26n
+Special character device.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/ath\fR \fR
+.ad
+.RS 26n
+32-bit ELF kernel module (x86).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/ath\fR \fR
+.ad
+.RS 26n
+64-bit ELF kernel module (x86).
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture x86
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR gld (4D),
+.BR dladm (8),
+.BR wificonfig (8)
+.sp
+.LP
+\fIANSI/IEEE Std 802.11\fR- Standard for Wireless LAN Technology, 1999.
+.sp
+.LP
+\fIIEEE Std 802.11a\fR- Standard for Wireless LAN Technology-Rev. A, 2003
+.sp
+.LP
+\fIIEEE Std 802.11b\fR - Standard for Wireless LAN Technology-Rev.B, 2003
+.sp
+.LP
+\fIIEEE Std 802.11g\fR\(em Standard for Wireless LAN Technology - Rev. G, 2003
diff --git a/usr/src/man/man4d/atu.4d b/usr/src/man/man4d/atu.4d
new file mode 100644
index 0000000000..f0144b169a
--- /dev/null
+++ b/usr/src/man/man4d/atu.4d
@@ -0,0 +1,85 @@
+'\" te
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
+.TH ATU 4D "Mar 26, 2009"
+.SH NAME
+atu \- Atmel AT76C50x USB IEEE 802.11b Wireless Device Driver
+.SH DESCRIPTION
+.sp
+.LP
+The \fBatu 802.11b\fR wireless driver is a multi-threaded, loadable, clonable,
+GLDv3-based STREAMS driver supporting the Atmel AT76C50x chipset-based wireless
+devices.
+.SS "Configuration"
+.sp
+.LP
+The \fBatu\fR driver performs auto-negotiation to determine the data rate and
+mode. Supported 802.11b data rates are 1, 2, 5.5, and 11 Mbits/sec.
+.sp
+.LP
+The \fBatu\fR driver supports only BSS networks (also known as \fBap\fR or
+\fBinfrastructure\fR networks).
+.sp
+.LP
+\fBopen\fR (or \fBopen-system\fR) and \fBshared key\fR authentication modes are
+supported. Encryption types WEP40 and WEP104 are supported.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/dev/atu*\fR\fR
+.ad
+.RS 25n
+Special character device
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/atu\fR\fR
+.ad
+.RS 25n
+32-bit ELF kernel module (x86)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/atu\fR\fR
+.ad
+.RS 25n
+64-bit ELF kernel module (x86)
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for a description of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+l | l
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture x86
+_
+Interface Stability Committed
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR gld (4D),
+.BR dlpi (4P),
+.BR attributes (7),
+.BR dladm (8),
+.BR wificonfig (8)
+.sp
+.LP
+\fI802.11 - Wireless LAN Media Access Control and Physical Layer Specification
+- IEEE, 2001\fR
diff --git a/usr/src/man/man4d/audio.4d b/usr/src/man/man4d/audio.4d
new file mode 100644
index 0000000000..3ab5d389ee
--- /dev/null
+++ b/usr/src/man/man4d/audio.4d
@@ -0,0 +1,180 @@
+'\" te
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH AUDIO 4D "Jan 10, 2020"
+.SH NAME
+audio \- common audio framework
+.SH DESCRIPTION
+The \fBaudio\fR driver provides common support routines for audio devices in
+Solaris.
+.sp
+.LP
+The audio framework supports multiple \fBpersonalities\fR, allowing for devices
+to be accessed with different programming interfaces.
+.sp
+.LP
+The audio framework also provides a number of facilities, such as mixing of
+audio streams, and data format and sample rate conversion.
+.SS "Overview"
+The audio framework provides a software mixing engine (audio mixer) for all
+audio devices, allowing more than one process to play or record audio at the
+same time.
+.SS "Multi-Stream Codecs"
+The audio mixer supports multi-stream Codecs. These devices have DSP engines
+that provide sample rate conversion, hardware mixing, and other features. The
+use of such hardware features is opaque to applications.
+.SS "Backward Compatibility"
+It is not possible to disable the mixing function. Applications must not assume
+that they have exclusive access to the audio device.
+.SS "Audio Formats"
+Digital audio data represents a quantized approximation of an analog audio
+signal waveform. In the simplest case, these quantized numbers represent the
+amplitude of the input waveform at particular sampling intervals. To achieve
+the best approximation of an input signal, the highest possible sampling
+frequency and precision should be used. However, increased accuracy comes at a
+cost of increased data storage requirements. For instance, one minute of
+monaural audio recorded in u-Law format (pronounced \fBmew-law\fR) at 8 KHz
+requires nearly 0.5 megabytes of storage, while the standard Compact Disc audio
+format (stereo 16-bit linear PCM data sampled at 44.1 KHz) requires
+approximately 10 megabytes per minute.
+.sp
+.LP
+An audio data format is characterized in the audio driver by four parameters:
+sample Rate, encoding, precision, and channels. Refer to the device-specific
+manual pages for a list of the audio formats that each device supports. In
+addition to the formats that the audio device supports directly, other formats
+provide higher data compression. Applications can convert audio data to and
+from these formats when playing or recording.
+.SS "Sample Rate"
+Sample rate is a number that represents the sampling frequency (in samples per
+second) of the audio data.
+.sp
+.LP
+The audio mixer always configures the hardware for the highest possible sample
+rate for both play and record. This ensures that none of the audio streams
+require compute-intensive low pass filtering. The result is that high sample
+rate audio streams are not degraded by filtering.
+.sp
+.LP
+Sample rate conversion can be a compute-intensive operation, depending on the
+number of channels and a device's sample rate. For example, an 8KHz signal can
+be easily converted to 48KHz, requiring a low cost up sampling by 6. However,
+converting from 44.1KHz to 48KHz is computer intensive because it must be up
+sampled by 160 and then down sampled by 147. This is only done using integer
+multipliers.
+.sp
+.LP
+Applications can greatly reduce the impact of sample rate conversion by
+carefully picking the sample rate. Applications should always use the highest
+sample rate the device supports. An application can also do its own sample rate
+conversion (to take advantage of floating point and accelerated instructions)
+or use small integers for up and down sampling.
+.sp
+.LP
+All modern audio devices run at 48 kHz or a multiple thereof, hence just using
+48 kHz can be a reasonable compromise if the application is not prepared to
+select higher sample rates.
+.SS "Encodings"
+An encoding parameter specifies the audiodata representation. u-Law encoding
+corresponds to CCITT G.711, and is the standard for voice data used by
+telephone companies in the United States, Canada, and Japan. A-Law encoding is
+also part of CCITT G.711 and is the standard encoding for telephony elsewhere
+in the world. A-Law and u-Law audio data are sampled at a rate of 8000 samples
+per second with 12-bit precision, with the data compressed to 8-bit samples.
+The resulting audio data quality is equivalent to that of stan dard analog
+telephone service.
+.sp
+.LP
+Linear Pulse Code Modulation (PCM) is an uncompressed, signed audio format in
+which sample values are directly proportional to audio signal voltages. Each
+sample is a 2's complement number that represents a positive or negative
+amplitude.
+.SS "Precision"
+Precision indicates the number of bits used to store each audio sample. For
+instance, u-Law and A-Law data are stored with 8-bit precision. PCM data can be
+stored at various precisions, though 16-bit is the most common.
+.SS "Channels"
+Multiple channels of audio can be interleaved at sample boundaries. A sample
+frame consists of a single sample from each active channel. For example, a
+sample frame of stereo 16-bit PCM data consists of 2 16-bit samples,
+corresponding to the left and right channel data. The audio mixer sets the
+hardware to the maximum number of channels supported. If a mono signal is
+played or recorded, it is mixed on the first two (usually the left and right)
+channel only. Silence is mixed on the remaining channels.
+.SS "Supported Formats"
+The audio mixer supports the following audio formats:
+.sp
+.in +2
+.nf
+Encoding Precision Channels
+Signed Linear PCM 32-bit Mono or Stereo
+Signed Linear PCM 16-bit Mono or Stereo
+Signed Linear PCM 8-bit Mono or Stereo
+u-Law 8-bit Mono or Stereo
+A-Law 8-bit Mono or Stereo
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The audio mixer converts all audio streams to 24-bit Linear PCM before mixing.
+After mixing, conversion is made to the best possible Codec format. The
+conversion process is not compute intensive and audio applications can choose
+the encoding format that best meets their needs.
+.sp
+.LP
+The mixer discards the low order 8 bits of 32-bit Signed Linear PCM in order to
+perform mixing. (This is done to allow for possible overflows to fit into
+32-bits when mixing multiple streams together.) Hence, the maximum effective
+precision is 24-bits.
+.SH FILES
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/audio\fR\fR
+.ad
+.RS 29n
+Device driver (x86)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/sparcv9/audio\fR\fR
+.ad
+.RS 29n
+Device driver (SPARC)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/audio.conf\fR\fR
+.ad
+.RS 29n
+Driver configuration file
+.RE
+
+.SH ATTRIBUTES
+See \fBattributes\fR(7) for a description of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+l | l
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture SPARC, x86
+_
+Interface Stability Uncommitted
+.TE
+
+.SH SEE ALSO
+.BR ioctl (2),
+.BR audio (4I),
+.BR dsp (4I),
+.BR attributes (7)
diff --git a/usr/src/man/man4d/audio1575.4d b/usr/src/man/man4d/audio1575.4d
new file mode 100644
index 0000000000..46c30174a1
--- /dev/null
+++ b/usr/src/man/man4d/audio1575.4d
@@ -0,0 +1,102 @@
+'\" te
+.\" Copyright (c) 2009 Sun Microsystems, Inc. All rights reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH AUDIO1575 4D "May 13, 2009"
+.SH NAME
+audio1575 \- Uli M1575 Super South Bridge audio digital controller interface
+.SH DESCRIPTION
+.sp
+.LP
+The \fBaudio1575\fR device uses the Uli M1575 AC97-compatible audio digital
+controller and an AC-97 Codec to implement the audio device interface. This
+interface allows analog only inputs and outputs.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/sparcv9/audio1575\fR\fR
+.ad
+.sp .6
+.RS 4n
+64-bit driver module
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/audio1575.conf\fR\fR
+.ad
+.sp .6
+.RS 4n
+Driver configuration file
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture SPARC, x86
+_
+Stability level Uncommitted
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR ioctl (2),
+.BR audio (4I),
+.BR mixer (4I),
+.BR streamio (4I),
+.BR attributes (7)
+.sp
+.LP
+\fIUli M1575 Super South Bridge Data Sheet Data Sheet\fR\(em Uli USA Inc.
+.sp
+.LP
+\fIAD1981B AC '97 SoundMAX(R) Codec Data Sheet\fR\(em Analog Devices Inc.
+.SH DIAGNOSTICS
+.sp
+.LP
+In addition to being logged, the following messages might appear on the system
+console:
+.sp
+.ne 2
+.na
+\fB\fBplay-interrupts too low\fR\fR
+.ad
+.br
+.na
+\fB\fBrecord-interrupts too low\fR\fR
+.ad
+.RS 30n
+The interrupt rate specified in \fBaudio1575.conf\fR is set too low. It has
+been reset to the rate specified in the message. Update \fBaudio1575.conf\fR to
+a higher interrupt rate.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBplay-interrupts too high\fR\fR
+.ad
+.br
+.na
+\fB\fBrecord-interrupts too high\fR\fR
+.ad
+.RS 30n
+The interrupt rate specified in \fBaudio1575.conf\fR is set too high. It has
+been reset to the rate specified in the message. Update \fBaudio1575.conf\fR to
+a lower interrupt rate.
+.RE
+
diff --git a/usr/src/man/man4d/audio810.4d b/usr/src/man/man4d/audio810.4d
new file mode 100644
index 0000000000..c298b87ca2
--- /dev/null
+++ b/usr/src/man/man4d/audio810.4d
@@ -0,0 +1,107 @@
+'\" te
+.\" Copyright (c) 2009 Sun Microsystems, Inc. All rights reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH AUDIO810 4D "September 12, 2020"
+.SH NAME
+audio810 \- Intel ICH series, nVidia nForce series and AMD 8111 audio core
+support
+.SH DESCRIPTION
+The \fBaudio810\fR driver provides support for AC 97 audio controllers embedded
+in Intel ICH, nVidia nForce, and AMD 8111 chips.
+.SH FILES
+.ne 2
+.na
+\fB\fB/kernel/drv/audio810\fR\fR
+.ad
+.RS 30n
+32-bit kernel driver module
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/audio810\fR\fR
+.ad
+.RS 30n
+64-bit x86 kernel driver module
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/audio810.conf\fR\fR
+.ad
+.RS 30n
+\fBaudio810\fR driver configuration file
+.RE
+
+.SH ATTRIBUTES
+See \fBattributes\fR(7) for a descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture PC-based systems
+_
+Interface Stability Uncommitted
+.TE
+
+.SH SEE ALSO
+.BR ioctl (2),
+.BR audio (4I),
+.BR mixer (4I),
+.BR streamio (4I),
+.BR attributes (7)
+.sp
+.LP
+\fIAMD-8111 HyperTransport I/O Hub Data Sheet\fR \(em Advanced Micro Devices
+Inc.
+.sp
+.LP
+\fIALC655 Specification\fR \(em Realtek Inc.
+.SH NOTES
+Some laptops (including Sony VAIO, among others), have their on-board amplifier
+powered down by default, meaning that audio is suppressed even if hardware and
+the \fBaudio810\fR driver are working normally. To correct this, set the
+\fBac97-invert-amp=1\fR property in the \fB/kernel/drv/audio810.conf\fR to
+power-up the amplifier.
+.SH DIAGNOSTICS
+In addition to being logged, the following messages may appear on the system
+console:
+.sp
+.ne 2
+.na
+\fB\fBplay-interrupts too low\fR\fR
+.ad
+.br
+.na
+\fB\fBrecord-interrupts too low\fR\fR
+.ad
+.RS 30n
+The interrupt rate in \fBaudio810.conf\fR is set too low. It has been reset to
+the rate specified in the message. Update \fBaudio810.conf\fR to a higher
+interrupt rate.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBplay-interrupts too high\fR\fR
+.ad
+.br
+.na
+\fB\fBrecord-interrupts too high\fR\fR
+.ad
+.RS 30n
+The interrupt rate set in \fBaudio810.conf\fR is set too high. It has been
+reset to the rate specified in the message. Update \fBaudio810.conf\fR to a
+lower interrupt rate.
+.RE
+
diff --git a/usr/src/man/man4d/audiocmi.4d b/usr/src/man/man4d/audiocmi.4d
new file mode 100644
index 0000000000..2812211209
--- /dev/null
+++ b/usr/src/man/man4d/audiocmi.4d
@@ -0,0 +1,79 @@
+'\" te
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All rights reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH AUDIOCMI 4D "Aug 17, 2009"
+.SH NAME
+audiocmi \- C-Media 8738, 8768, and 8338 driver support
+.SH DESCRIPTION
+.sp
+.LP
+The \fBaudiocmi\fR driver provides support for the C-Media 8738, 8768, and 8338
+audio controllers. These are found on some motherboards and some add-in PCI
+cards.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/audiocmi\fR\fR
+.ad
+.sp .6
+.RS 4n
+32-bit kernel driver module
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/audiocmi\fR\fR
+.ad
+.sp .6
+.RS 4n
+64-bit x86 kernel driver module
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/sparcv9/audiocmi\fR\fR
+.ad
+.sp .6
+.RS 4n
+64-bit SPARC kernel driver module
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/audiocmi.conf\fR\fR
+.ad
+.sp .6
+.RS 4n
+Driver configuration file
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for a descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture PC-based system
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR ioctl (2),
+.BR audio (4I),
+.BR mixer (4I),
+.BR streamio (4I),
+.BR attributes (7)
diff --git a/usr/src/man/man4d/audiocmihd.4d b/usr/src/man/man4d/audiocmihd.4d
new file mode 100644
index 0000000000..c5b309dd76
--- /dev/null
+++ b/usr/src/man/man4d/audiocmihd.4d
@@ -0,0 +1,66 @@
+'\" t
+.\" This file and its contents are supplied under the terms of the
+.\" Common Development and Distribution License ("CDDL"), version 1.0.
+.\" You may only use this file in accordance with the terms of version
+.\" 1.0 of the CDDL.
+.\"
+.\" A full copy of the text of the CDDL should have accompanied this
+.\" source. A copy of the CDDL is also available via the Internet at
+.\" http://www.illumos.org/license/CDDL.
+.\"
+.\"
+.\" Copyright 2011 Nexenta Systems, Inc. All rights reserved.
+.\"
+.TH AUDIOCMIHD 4D "Mar 18, 2011"
+.SH NAME
+audiocmihd \- CMI8788 HD audio driver
+.SH DESCRIPTION
+.sp
+.LP
+The \fBaudiocmihd\fR driver provides support for audio devices based on
+the CMedia 8788 and similar parts. Most often these are seen in
+devices sold under the Asus Xonar brand.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB/kernel/drv/audiocmihd\fR
+.ad
+.sp .6
+.RS 4n
+32-bit kernel module
+.RE
+
+.sp
+.ne 2
+.na
+\fB/kernel/drv/amd64/audiocmihd\fR
+.ad
+.sp .6
+.RS 4n
+64-bit kernel module
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture x86
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR audio (4I),
+.BR dsp (4I),
+.BR mixer (4I),
+.BR attributes (7)
diff --git a/usr/src/man/man4d/audiocs.4d b/usr/src/man/man4d/audiocs.4d
new file mode 100644
index 0000000000..6ec9997eb9
--- /dev/null
+++ b/usr/src/man/man4d/audiocs.4d
@@ -0,0 +1,107 @@
+'\" te
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All rights reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH AUDIOCS 4D "May 12, 2009"
+.SH NAME
+audiocs \- Crystal Semiconductor 4231 Audio driver
+.SH DESCRIPTION
+.sp
+.LP
+The \fBaudiocs\fR driver supports the Crystal Semiconductor 4231 Codec to
+implement the audio device interface.
+.sp
+.LP
+The \fBaudiocs\fR device provides support for the internal speaker, headphone,
+line out, line in, microphone, and, on some platforms, internal CD-ROM audio
+in.
+.SH ERRORS
+.sp
+.LP
+\fBaudiocs\fR errors are described in the \fBaudio\fR(4I) manual page.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/sparcv9/audiocs\fR\fR
+.ad
+.sp .6
+.RS 4n
+64-bit \fBaudiocs\fR driver
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/audiocs.conf\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBaudiocs\fR driver configuration file
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture SPARC
+_
+Stability level Uncommitted
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR ioctl (2),
+.BR audio (4I),
+.BR mixer (4I),
+.BR streamio (4I),
+.BR attributes (7)
+.sp
+.LP
+Crystal Semiconductor, Inc. \fBCS4231\fR Data Sheet
+.SH DIAGNOSTICS
+.sp
+.LP
+In addition to being logged, the following messages can appear on the system
+console:
+.sp
+.ne 2
+.na
+\fB\fBplay-interrupts too low\fR\fR
+.ad
+.br
+.na
+\fB\fBrecord-interrupts too low\fR\fR
+.ad
+.RS 30n
+The interrupt rate specified in \fBaudiocs.conf\fR is set too low. It is being
+reset to the rate specified in the message. Update \fBaudiocs.conf\fR to a
+higher interrupt rate.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBplay-interrupts too high\fR\fR
+.ad
+.br
+.na
+\fB\fBrecord-interrupts too high\fR\fR
+.ad
+.RS 30n
+The interrupt rate specified in \fBaudiocs.conf\fR is set too high. It is being
+reset to the rate specified in the message. Update \fBaudiocs.conf\fR to a
+lower interrupt rate.
+.RE
+
diff --git a/usr/src/man/man4d/audioemu10k.4d b/usr/src/man/man4d/audioemu10k.4d
new file mode 100644
index 0000000000..fdf5a4cc86
--- /dev/null
+++ b/usr/src/man/man4d/audioemu10k.4d
@@ -0,0 +1,69 @@
+'\" t
+.\" This file and its contents are supplied under the terms of the
+.\" Common Development and Distribution License ("CDDL"), version 1.0.
+.\" You may only use this file in accordance with the terms of version
+.\" 1.0 of the CDDL.
+.\"
+.\" A full copy of the text of the CDDL should have accompanied this
+.\" source. A copy of the CDDL is also available via the Internet at
+.\" http://www.illumos.org/license/CDDL.
+.\"
+.\"
+.\" Copyright 2011 Nexenta Systems, Inc. All rights reserved.
+.\"
+.TH AUDIOEMU10K 4D "Mar 18, 2011"
+.SH NAME
+audioemu10k \- EMU10K audio driver
+.SH DESCRIPTION
+.sp
+.LP
+The \fBaudioemu10\fR driver provides support for audio devices based on
+the Creative EMU10K1 and EMU10K2 chips. Most often these are seen in
+devices sold under the Audigy or Sound Blaster Live! brand names.
+.LP
+The \fBaudioemu10k\fR driver provides support for surround sound and
+SPDIF features on devices with such capabilities.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB/kernel/drv/audioemu10k\fR
+.ad
+.sp .6
+.RS 4n
+32-bit kernel module
+.RE
+
+.sp
+.ne 2
+.na
+\fB/kernel/drv/amd64/audioemu10k\fR
+.ad
+.sp .6
+.RS 4n
+64-bit kernel module
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture x86
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR audio (4I),
+.BR dsp (4I),
+.BR mixer (4I),
+.BR attributes (7)
diff --git a/usr/src/man/man4d/audioens.4d b/usr/src/man/man4d/audioens.4d
new file mode 100644
index 0000000000..a70d8988ac
--- /dev/null
+++ b/usr/src/man/man4d/audioens.4d
@@ -0,0 +1,70 @@
+'\" te
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH AUDIOENS 4D "May 15, 2009"
+.SH NAME
+audioens \- Ensoniq ESS 1371 and ESS 1373 audio driver
+.SH DESCRIPTION
+.sp
+.LP
+The \fBaudioens\fR driver provides support for the Ensoniq ESS1371, ESS1373,
+and Creative 5880 AC'97 devices. These devices are commonly known by several
+different names, including the Sound Blaster PCI128 and AudioPCI '97.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/audioens\fR\fR
+.ad
+.sp .6
+.RS 4n
+32-bit kernel module
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/audioens\fR\fR
+.ad
+.sp .6
+.RS 4n
+64-bit x86 kernel module
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/sparcv9/audioens\fR\fR
+.ad
+.sp .6
+.RS 4n
+64-bit SPARC kernel module
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture SPARC, x86
+_
+Interface Stability Uncommitted
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR audio (4I),
+.BR dsp (4I),
+.BR mixer (4I),
+.BR attributes (7)
diff --git a/usr/src/man/man4d/audiohd.4d b/usr/src/man/man4d/audiohd.4d
new file mode 100644
index 0000000000..0ab59e52d5
--- /dev/null
+++ b/usr/src/man/man4d/audiohd.4d
@@ -0,0 +1,108 @@
+'\" te
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All rights reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH AUDIOHD 4D "May 12, 2009"
+.SH NAME
+audiohd \- Intel High Definition Audio Controller support
+.SH DESCRIPTION
+.sp
+.LP
+The \fBaudiohd\fR driver provides support for the generic codec chips which are
+compatible with the Intel High-Definition Audio Controller 1.0 specification.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/audiohd.conf\fR\fR
+.ad
+.RS 29n
+\fBaudiohd\fR driver configuration file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/audiohd\fR\fR
+.ad
+.RS 29n
+32-bit x86 kernel driver module
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/audiohd\fR\fR
+.ad
+.RS 29n
+64-bit x86 kernel driver module
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for a descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture PC-based system
+_
+Stability level Uncommitted
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR ioctl (2),
+.BR audio (4I),
+.BR mixer (4I),
+.BR streamio (4I),
+.BR attributes (7)
+.sp
+.LP
+\fIIntel High-Definition Audio Specification 1.0.\fR - Intel Corporation
+.sp
+.LP
+\fIALC880 Specification\fR \(em Realtek Inc.
+.SH DIAGNOSTICS
+.sp
+.LP
+In addition to being logged, the following messages can appear on the system
+console:
+.sp
+.ne 2
+.na
+\fB\fBplay-interrupts too low\fR\fR
+.ad
+.br
+.na
+\fB\fBrecord-interrupts too low\fR\fR
+.ad
+.RS 30n
+The interrupt rate in \fBaudiohd.conf\fR is set too low. It has been reset to
+the rate specified in the message. Update \fBaudiohd.conf\fR to a higher
+interrupt rate.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBredcord-interrupts too low\fR\fR
+.ad
+.br
+.na
+\fB\fBrecord-interrupts too high\fR\fR
+.ad
+.RS 30n
+The interrupt rate in \fBaudiohd.conf\fR is set too low. It has been reset to
+the rate specified in the message. Update \fBaudiohd.conf\fR to a higher
+interrupt rate
+.RE
+
diff --git a/usr/src/man/man4d/audioixp.4d b/usr/src/man/man4d/audioixp.4d
new file mode 100644
index 0000000000..b8e5450097
--- /dev/null
+++ b/usr/src/man/man4d/audioixp.4d
@@ -0,0 +1,109 @@
+'\" te
+.\" Copyright (c) 2009 Sun Microsystems, Inc. All rights reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH AUDIOIXP 4D "May 12, 2009"
+.SH NAME
+audioixp \- ATI IXP400 south bridge audio digital controller interface
+.SH DESCRIPTION
+.sp
+.LP
+The \fBaudioixp\fR device uses the IXP400 south bridge audio digital controller
+and a AC-97 Codec to implement the audio device interface.
+.sp
+.LP
+The \fBaudioixp\fR device provides support for the internal speaker,
+headphone, line out, line in, and microphone.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/audioixp.conf\fR\fR
+.ad
+.RS 30n
+Driver configuration file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/audioixp\fR\fR
+.ad
+.RS 30n
+32-bit kernel driver module
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/audioixp\fR\fR
+.ad
+.RS 30n
+64-bit kernel driver module
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for a descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture PC-based system
+_
+Stability level Uncommitted
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR ioctl (2),
+.BR audio (4I),
+.BR mixer (4I),
+.BR streamio (4I),
+.BR attributes (7)
+.sp
+.LP
+\fIATI IXP400 South Bridge Data Sheet\fR
+.SH DIAGNOSTICS
+.sp
+.LP
+In addition to being logged, the following messages may appear on the system
+console:
+.sp
+.ne 2
+.na
+\fB\fBplay-interrupts too low\fR\fR
+.ad
+.br
+.na
+\fB\fBrecord-interrupts too low\fR\fR
+.ad
+.RS 30n
+The interrupt rate in \fBaudioixp.conf\fR is set too low. It has been reset to
+the rate specified in the message. Update \fBaudioixp.conf\fR to a higher
+interrupt rate.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBplay-interrupts too high\fR\fR
+.ad
+.br
+.na
+\fB\fBrecord-interrupts too high\fR\fR
+.ad
+.RS 30n
+The interrupt rate set in \fBaudioixp.conf\fR is set too high. It has been
+reset to the rate specified in the message. Update \fBaudioixp.conf\fR to a
+lower interrupt rate.
+.RE
+
diff --git a/usr/src/man/man4d/audiols.4d b/usr/src/man/man4d/audiols.4d
new file mode 100644
index 0000000000..e8af3204d5
--- /dev/null
+++ b/usr/src/man/man4d/audiols.4d
@@ -0,0 +1,63 @@
+'\" te
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All rights reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH AUDIOLS 4D "Sep 8, 2009"
+.SH NAME
+audiols \- Creative Audigy LS audio device support
+.SH DESCRIPTION
+.sp
+.LP
+The \fBaudiols\fR driver provides support for the Creative Audigy LS audio
+device.
+.sp
+.LP
+There are numerous devices marketed under the Audigy brand by Creative, but
+only Audigy LS devices are supported by this driver.
+.sp
+.LP
+This device is capable of 5.1 surround sound.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/audiols\fR\fR
+.ad
+.RS 29n
+32-bit kernel driver module
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/audiols\fR\fR
+.ad
+.RS 29n
+64-bit kernel driver module
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for a descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture x86
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR ioctl (2),
+.BR audio (4I),
+.BR mixer (4I),
+.BR streamio (4I),
+.BR attributes (7)
diff --git a/usr/src/man/man4d/audiop16x.4d b/usr/src/man/man4d/audiop16x.4d
new file mode 100644
index 0000000000..821279a2cc
--- /dev/null
+++ b/usr/src/man/man4d/audiop16x.4d
@@ -0,0 +1,76 @@
+'\" te
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All rights reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH AUDIOP16X 4D "Sep 8, 2009"
+.SH NAME
+audiop16x \- Creative Sound Blaster Live! OEM support
+.SH DESCRIPTION
+.sp
+.LP
+The \fBaudiop16x\fR driver provides support for the Creative Sound Blaster
+Live! products based on the P16X device. These chips are also known as the
+\fBEMU10K1X\fR device, not to be confused with the \fBEMU10K1\fR.
+.sp
+.LP
+Add-in boards known to work with this driver are Sound Blaster Live! cards with
+model numbers SB0200 or SB0213.
+.sp
+.LP
+This device is capable of 5.1 surround sound.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/audiop16x\fR\fR
+.ad
+.sp .6
+.RS 4n
+32-bit kernel driver module
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/audiop16x\fR\fR
+.ad
+.sp .6
+.RS 4n
+64-bit x86 kernel driver module
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/sparcv9/audiop16x\fR\fR
+.ad
+.sp .6
+.RS 4n
+64-bit SPARC kernel driver module
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for a descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture x86, SPARC
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR ioctl (2),
+.BR audio (4I),
+.BR mixer (4I),
+.BR streamio (4I),
+.BR attributes (7)
diff --git a/usr/src/man/man4d/audiopci.4d b/usr/src/man/man4d/audiopci.4d
new file mode 100644
index 0000000000..6adc8582de
--- /dev/null
+++ b/usr/src/man/man4d/audiopci.4d
@@ -0,0 +1,74 @@
+'\" te
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH AUDIOPCI 4D "May 13, 2017"
+.SH NAME
+audiopci \- Ensoniq 1370 driver support
+.SH DESCRIPTION
+.LP
+The \fBaudiopci\fR driver provides support for the Ensoniq 1370 audio
+controller. Ensoniq 1370 chips are found on add-in PCI cards commonly
+identified as Audio PCI and SoundBlaster PCI.
+.SH FILES
+.ne 2
+.na
+\fB\fB/kernel/drv/audiopci\fR\fR
+.ad
+.RS 30n
+32-bit kernel driver module
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/audiopci\fR\fR
+.ad
+.RS 30n
+64-bit x86 kernel driver module
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/sparcv9/audiopci\fR\fR
+.ad
+.RS 30n
+64-bit SPARC kernel driver module
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/audiopci.conf\fR\fR
+.ad
+.RS 30n
+Driver configuration file
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for a description of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+l | l
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture PCI-based systems
+.TE
+
+.SH SEE ALSO
+.LP
+.BR ioctl (2),
+.BR audio (4I),
+.BR mixer (4I),
+.BR streamio (4I),
+.BR attributes (7)
+.sp
+.LP
+\fICreative Technology Ltd ES1370 Specification\fR
diff --git a/usr/src/man/man4d/audiosolo.4d b/usr/src/man/man4d/audiosolo.4d
new file mode 100644
index 0000000000..fb9fd7287b
--- /dev/null
+++ b/usr/src/man/man4d/audiosolo.4d
@@ -0,0 +1,59 @@
+'\" te
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All rights reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER,
+.\" with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH AUDIOSOLO 4D "Sep 18, 2009"
+.SH NAME
+audiosolo \- ESS Solo-1 audio device support
+.SH DESCRIPTION
+.sp
+.LP
+The \fBaudiosolo\fR driver provides support for the ESS Solo-1 audio device.
+This device is found on certain motherboards and discrete audio cards. It
+supports 16-bit 48 kHZ stereo playback and capture.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/audiosolo\fR\fR
+.ad
+.sp .6
+.RS 4n
+32-bit kernel driver module
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/audiosolo\fR\fR
+.ad
+.sp .6
+.RS 4n
+64-bit kernel driver module
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for a descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture x86
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR ioctl (2),
+.BR audio (4I),
+.BR mixer (4I),
+.BR streamio (4I),
+.BR attributes (7)
diff --git a/usr/src/man/man4d/audiots.4d b/usr/src/man/man4d/audiots.4d
new file mode 100644
index 0000000000..87594d6a90
--- /dev/null
+++ b/usr/src/man/man4d/audiots.4d
@@ -0,0 +1,102 @@
+'\" te
+.\" Copyright (c) 2009 Sun Microsystems, Inc. All rights reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH AUDIOTS 4D "May 12, 2009"
+.SH NAME
+audiots \- Acer Laboratories Inc. M5451 audio processor interface
+.SH DESCRIPTION
+.sp
+.LP
+The \fBaudiots\fR device uses the ALI M5451 audio processor and an AC-97 Codec
+to implement the audio device interface.
+.sp
+.LP
+The \fBaudiots\fR device provides support for the internal speaker, headphone,
+line out, line in, and microphone.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/sparcv9/audiots\fR\fR
+.ad
+.sp .6
+.RS 4n
+64-bit \fBaudiots\fR driver
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/audiots.conf\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBaudiots\fR driver configuration file
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for a descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture SPARC
+_
+Stability level Uncommitted
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR ioctl (2),
+.BR audio (4I),
+.BR mixer (4I),
+.BR streamio (4I),
+.BR attributes (7)
+.sp
+.LP
+Acer Laboratories Inc. \fBM5451\fR PCI Audio Processor Technical Specification
+.SH DIAGNOSTICS
+.sp
+.LP
+In addition to being logged, the following messages can appear on the system
+console:
+.sp
+.ne 2
+.na
+\fB\fBplay-interrupts too low\fR\fR
+.ad
+.br
+.na
+\fB\fBrecord-interrupts too low\fR\fR
+.ad
+.RS 30n
+The interrupt rate in \fBaudiots.conf\fR is set too low. It has been reset to
+the rate specified in the message. Update \fBaudiots.conf\fR to a higher
+interrupt rate.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBplay-interrupts too high\fR\fR
+.ad
+.br
+.na
+\fB\fBrecord-interrupts too high\fR\fR
+.ad
+.RS 30n
+The interrupt rate set in \fBaudiots.conf\fR is set too high. It has been reset
+to the rate specified in the message. Update \fBaudiots.conf\fR to a lower
+interrupt rate.
+.RE
+
diff --git a/usr/src/man/man4d/audiovia823x.4d b/usr/src/man/man4d/audiovia823x.4d
new file mode 100644
index 0000000000..26442fe81f
--- /dev/null
+++ b/usr/src/man/man4d/audiovia823x.4d
@@ -0,0 +1,60 @@
+'\" te
+.\" Copyright (c) 2009 Sun Microsystems, Inc. All rights reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH AUDIOVIA823X 4D "May 12, 2009"
+.SH NAME
+audiovia823x \- VIA VT8233, VT8235, and VT8237) support
+.SH DESCRIPTION
+.sp
+.LP
+The \fBaudiovia823\fR\fIx\fR driver provides support for the VIA VT8233,
+VT8235, and VT8237 AC'97 devices found on motherboards with certain VIA chip
+sets.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/audiovia823x\fR\fR
+.ad
+.sp .6
+.RS 4n
+32-bit x86 kernel module
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/audiovia823x\fR\fR
+.ad
+.sp .6
+.RS 4n
+64-bit x86 kernel module
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture x86
+_
+Interface Stability Committed
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR audio (4I),
+.BR dsp (4I),
+.BR mixer (4I),
+.BR attributes (7)
diff --git a/usr/src/man/man4d/av1394.4d b/usr/src/man/man4d/av1394.4d
new file mode 100644
index 0000000000..c84c0fb647
--- /dev/null
+++ b/usr/src/man/man4d/av1394.4d
@@ -0,0 +1,88 @@
+'\" te
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
+.TH AV1394 4D "Jan 10, 2020"
+.SH NAME
+av1394 \- 1394 audio/video driver
+.SH SYNOPSIS
+.nf
+\fBunit@GUID\fR
+.fi
+
+.SH DESCRIPTION
+The \fBav1394\fR driver implements \fBiec61883\fR(4I) interfaces for IEEE 1394
+compliant devices.
+.SS "Asynchronous Transactions"
+The driver allows applications to act as FCP controllers, but not FCP targets.
+Only \fBIEC61883_FCP_CMD\fR requests can be sent with \fBwrite\fR(2). Only
+\fBIEC61883_FCP_RESP\fR requests can be received with \fBread\fR(2).
+.SS "Isochronous Transactions"
+When the read/write method of is used for transmit, the driver is capable of
+auto-detecting and transmitting SD-DVCR 525/60 and 625/50 streams. See
+\fBiec61883\fR(4I) for details.
+.SH FILES
+.ne 2
+.na
+\fB/dev/av/N/async\fR
+.ad
+.RS 29n
+device node for asynchronous data
+.RE
+
+.sp
+.ne 2
+.na
+\fB/dev/av/N/isoch\fR
+.ad
+.RS 29n
+device node for isochronous data
+.RE
+
+.sp
+.ne 2
+.na
+\fB/kernel/drv/sparcv9/av1394\fR
+.ad
+.RS 29n
+Device driver (SPARC)
+.RE
+
+.sp
+.ne 2
+.na
+\fB/kernel/drv/amd64/av1394\fR
+.ad
+.RS 29n
+Device driver (x86)
+.RE
+
+.SH ATTRIBUTES
+See \fBattributes\fR(7) for a description of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+l | l
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture All
+_
+Interface Stability Committed
+.TE
+
+.SH SEE ALSO
+.BR read (2),
+.BR write (2),
+.BR hci1394 (4D),
+.BR iec61883 (4I),
+.BR attributes (7)
+.sp
+.LP
+\fIIEEE Std 1394-1995 Standard for a High Performance Serial Bus\fR
+.sp
+.LP
+\fIIEC 61883 Consumer audio/video equipment - Digital interface\fR
diff --git a/usr/src/man/man4d/bbc_beep.4d b/usr/src/man/man4d/bbc_beep.4d
new file mode 100644
index 0000000000..27b00478d5
--- /dev/null
+++ b/usr/src/man/man4d/bbc_beep.4d
@@ -0,0 +1,65 @@
+'\" te
+.\" Copyright (c) 2001, Sun Microsystems, Inc.
+.\" All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH BBC_BEEP 4D "Dec 18, 2001"
+.SH NAME
+bbc_beep \- Platform-dependent Beep driver for BBC-based hardware.
+.SH SYNOPSIS
+.LP
+.nf
+beep@unit-address
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBbbc_beep\fR driver generates beeps on platforms (including Sun Blade
+1000) that use BBC-based registers and USB keyboards. When the \fBKIOCCMD\fR
+ioctl is issued to the USB keyboard module (see \fBusbkbm\fR(4M)) with command
+\fBKBD_CMD_BELL/KBD_CMD_NOBELL\fR, \fBusbkbm\fR(4M) passes the request to the
+\fBbbc_beep\fR driver to turn the beep on and off, respectively.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/platform/sun4u/kernel/drv/sparcv9/bbc_beep\fR\fR
+.ad
+.sp .6
+.RS 4n
+ 64-bit ELF kernel driver
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See attributes(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture BBC-based SPARC
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR kbd (1),
+.BR grbeep (4D),
+.BR kb (4M),
+.BR usbkbm (4M),
+.BR attributes (7)
+.sp
+.LP
+\fIWriting Device Drivers\fR
+.SH DIAGNOSTICS
+.sp
+.LP
+None
diff --git a/usr/src/man/man4d/bcm_sata.4d b/usr/src/man/man4d/bcm_sata.4d
new file mode 100644
index 0000000000..1227103942
--- /dev/null
+++ b/usr/src/man/man4d/bcm_sata.4d
@@ -0,0 +1,77 @@
+'\" te
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH BCM_SATA 4D "Aug 31, 2009"
+.SH NAME
+bcm_sata \- Broadcom HT1000 SATA controller driver
+.SH SYNOPSIS
+.sp
+.LP
+\fBsata@\fR\fIunit-address\fR
+.SH DESCRIPTION
+.sp
+.LP
+The \fBbcm_sata\fR driver is a SATA HBA driver that supports Broadcom HT1000
+SATA HBA controllers.
+.sp
+.LP
+HT1000 SATA controllers are compliant with the Serial ATA 1.0 specification and
+SATA II Phase 1.0 specification (the extension to the SATA 1.0 specification).
+These HT1000 controllers support standard SATA features including SATA-II
+disks, NCQ, hotplug, ATAPI devices and port multiplier.
+.sp
+.LP
+The driver does not currently support NCQ and port multiplier features.
+.SS "Configuration"
+.sp
+.LP
+The \fBbcm_sata\fR module contains no user configurable parameters.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/bcm_sata\fR\fR
+.ad
+.RS 30n
+32-bit ELF kernel module (x86)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/bcm_sata\fR\fR
+.ad
+.RS 30n
+64-bit ELF kernel module (x86)
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for a description of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+l | l
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture x86
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR sata (4D),
+.BR sd (4D),
+.BR attributes (7),
+.BR cfgadm (8),
+.BR cfgadm_sata (8),
+.BR prtconf (8)
+.sp
+.LP
+\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man4d/bfe.4d b/usr/src/man/man4d/bfe.4d
new file mode 100644
index 0000000000..5e3079e3a7
--- /dev/null
+++ b/usr/src/man/man4d/bfe.4d
@@ -0,0 +1,96 @@
+'\" te
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH BFE 4D "Jun 23, 2009"
+.SH NAME
+bfe \- Device driver for Broadcom BCM4401 100Base-T NIC
+.SH DESCRIPTION
+.sp
+.LP
+The \fBbfe\fR Fast Ethernet driver is GLD-based and supports the Broadcom
+BCM4401 100Base-T NIC adapters :\fBpci14e4,170c Broadcom BCM4401 100Base-T.\fR.
+.sp
+.LP
+The \fBbfe\fR driver supports IEEE 802.3 auto-negotiation, flow control and
+VLAN tagging.
+.SS "Configuration"
+.sp
+.LP
+The default configuration is auto-negotiation with bidirectional flow control.
+The advertised capabilities for auto-negotiation are based on the capabilities
+of the \fBPHY\fR.
+.sp
+.LP
+You can set the capabilities advertised by the \fBbfe\fR controlled device
+using \fBdladm\fR(8). The driver supports only those parameters which begin
+with en (enabled) in the parameters listed by the command \fBdladm\fR(8). Each
+of these boolean parameters determines if the device advertises that mode of
+operation when the hardware supports it.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/dev/bfe\fR\fR
+.ad
+.RS 25n
+Special character device
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/bfe\fR\fR
+.ad
+.RS 25n
+32-bit device driver (x86)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/bfe\fR\fR
+.ad
+.RS 25n
+64-bit device driver (x86)
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for a description of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+l | l
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture SPARC, x86
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR streamio (4I),
+.BR dlpi (4P),
+.BR driver.conf (5),
+.BR attributes (7),
+.BR ieee802.3 (7),
+.BR dladm (8),
+.BR netstat (8)
+.sp
+.LP
+\fIWriting Device Drivers\fR
+.sp
+.LP
+\fISTREAMS Programmer's Guide\fR
+.sp
+.LP
+\fINetwork Interface Guide\fR
+.sp
+.LP
+\fIIEEE 802.3ae Specification - 2002\fR
diff --git a/usr/src/man/man4d/bge.4d b/usr/src/man/man4d/bge.4d
new file mode 100644
index 0000000000..bb8ec8a381
--- /dev/null
+++ b/usr/src/man/man4d/bge.4d
@@ -0,0 +1,315 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH BGE 4D "Apr 9, 2008"
+.SH NAME
+bge \- SUNW,bge Gigabit Ethernet driver for Broadcom BCM57xx
+.SH SYNOPSIS
+.LP
+.nf
+\fB/dev/bge*\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBbge\fR Gigabit Ethernet driver is a multi-threaded, loadable, clonable,
+GLD-based STREAMS driver supporting the Data Link Provider Interface,
+\fBdlpi\fR(4P), on Broadcom BCM57xx
+(BCM5700/5701/5703/5704/5705/5705M/5714/5721/5751/5751M/5782/5788 on x86)
+Gigabit Ethernet controllers fitted to the system motherboard. With the
+exception of BCM5700/BCM5701/BCM5704S, these devices incorporate both MAC and
+PHY functions and provide three-speed (copper) Ethernet operation on the RJ-45
+connectors. (BCM5700/BCM5701/BCM5704S do not have a PHY integrated into the MAC
+chipset.)
+.sp
+.LP
+The \fBbge\fR driver functions include controller initialization, frame
+transmit and receive, promiscuous and multicast support, and error recovery and
+reporting.
+.sp
+.LP
+The \fBbge\fR driver and hardware support auto-negotiation, a protocol
+specified by the 1000 Base-T standard. Auto-negotiation allows each device to
+advertise its capabilities and discover those of its peer (link partner). The
+highest common denominator supported by both link partners is automatically
+selected, yielding the greatest available throughput, while requiring no manual
+configuration. The \fBbge\fR driver also allows you to configure the advertised
+capabilities to less than the maximum (where the full speed of the interface is
+not required), or to force a specific mode of operation, irrespective of the
+link partner's advertised capabilities.
+.SH APPLICATION PROGRAMMING INTERFACE
+.sp
+.LP
+The cloning character-special device, \fB/dev/bge\fR, is used to access all
+BCM57xx devices ( (BCM5700/5701/5703/5704, 5705/5714/5721/5751/5751M/5782 on
+x86) fitted to the system motherboard.
+.sp
+.LP
+The \fBbge\fR driver is managed by the \fBdladm\fR(8) command line utility,
+which allows VLANs to be defined on top of bge instances and for \fBbge\fR
+instances to be aggregated. See \fBdladm\fR(8) for more details.
+.sp
+.LP
+You must send an explicit DL_ATTACH_REQ message to associate the opened stream
+with a particular device (PPA). The PPA ID is interpreted as an unsigned
+integer data type and indicates the corresponding device instance (unit)
+number. The driver returns an error (DL_ERROR_ACK) if the PPA field value does
+not correspond to a valid device instance number for the system. The device is
+initialized on first attach and de-initialized (stopped) at last detach.
+.sp
+.LP
+The values returned by the driver in the DL_INFO_ACK primitive in response to a
+DL_INFO_REQ are:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Maximum SDU (default 1500).
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Minimum SDU (default 0).
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+DLSAP address length is 8.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+MAC type is \fBDL_ETHER\fR.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBSAP\fR length value is \fI-2\fR, meaning the physical address component is
+followed immediately by a 2-byte \fBSAP\fR component within the \fBDLSAP\fR
+address.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Broadcast address value is the Ethernet/IEEE broadcast address
+(FF:FF:FF:FF:FF:FF).
+.RE
+.sp
+.LP
+Once in the DL_ATTACHED state, you must send a DL_BIND_REQ to associate a
+particular Service Access Point (SAP) with the stream.
+.SH CONFIGURATION
+.sp
+.LP
+By default, the \fBbge\fR driver performs auto-negotiation to select the link
+speed and mode. Link speed and mode can be any one of the following, (as
+described in the \fI IEEE803.2\fR standard):
+.RS +4
+.TP
+.ie t \(bu
+.el o
+1000 Mbps, full-duplex
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+1000 Mbps, half-duplex
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+100 Mbps, full-duplex
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+100 Mbps, half-duplex
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+10 Mbps, full-duplex
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+10 Mbps, half-duplex
+.RE
+.sp
+.LP
+The auto-negotiation protocol automatically selects:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Speed (1000 Mbps, 100 Mbps, or 10 Mbps)
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Operation mode (full-duplex or half-duplex)
+.RE
+.sp
+.LP
+as the highest common denominator supported by both link partners. Because the
+\fBbge\fR device supports all modes, the effect is to select the highest
+throughput mode supported by the other device.
+.sp
+.LP
+Alternatively, you can set the capabilities advertised by the \fBbge\fR device
+using \fBdladm\fR(8). The driver supports a number of parameters whose names
+begin with \fBen_\fR (see below). Each of these parameters contains a boolean
+value that determines whether the device advertises that mode of operation. If
+\fBen_autoneg_cap\fR is set to 0, the driver forces the mode of operation
+selected by the first non-zero parameter in priority order as listed below:
+.sp
+.in +2
+.nf
+ (highest priority/greatest throughput)
+ en_1000fdx_cap 1000Mbps full duplex
+ en_1000hdx_cap 1000Mbps half duplex
+ en_100fdx_cap 100Mbps full duplex
+ en_100hdx_cap 100Mbps half duplex
+ en_10fdx_cap 10Mbps full duplex
+ en_10hdx_cap 10Mbps half duplex
+ (lowest priority/least throughput)
+.fi
+.in -2
+
+.sp
+.LP
+For example, to prevent the device 'bge2' from advertising gigabit
+capabilities, enter (as super-user):
+.sp
+.in +2
+.nf
+# dladm set-linkprop -p enable_1000hdx_cap=0 bge2
+# dladm set-linkprop -p enable_1000fdx_cap=0 bge2
+.fi
+.in -2
+
+.sp
+.LP
+All capabilities default to enabled. Note that changing any capability
+parameter causes the link to go down while the link partners renegotiate the
+link speed/duplex using the newly changed capabilities.
+.sp
+.LP
+The current settings of the parameters may be found using dladm show-ether. In
+addition, the driver exports the current state, speed, duplex setting, and
+working mode of the link via kstat parameters (these are read only and may not
+be changed). For example, to check link state of device \fBbge0\fR:
+.sp
+.in +2
+.nf
+# dladm show-ether -x bge0
+LINK PTYPE STATE AUTO SPEED-DUPLEX PAUSE
+bge0 current up yes 1G-f bi
+-- capable -- yes 1G-fh,100M-fh,10M-fh bi
+-- adv -- yes 1G-fh bi
+-- peeradv -- yes 1G-f bi
+.fi
+.in -2
+
+.sp
+.LP
+The output above indicates that the link is up and running at 1Gbps full-duplex
+with its rx/tx direction pause capability.
+.sp
+.LP
+To extract link state information for the same link using kstat:
+.sp
+.in +2
+.nf
+# kstat bge:0:mac:link_state
+module: bge instance: 0
+name: mac class: net
+link_state
+.fi
+.in -2
+
+.sp
+.LP
+The default MTU is 1500. To enable Jumbo Frames support, you can configure the
+\fBbge\fR driver by defining the default_mtu property via \fBdladm\fR(8) or in
+\fBdriver.conf\fR(5) to greater than 1500 bytes (for example:
+default_mtu=9000). Note that the largest jumbo size supported by bge is 9000
+bytes. Additionally, not all bge-derived devices currently support Jumbo
+Frames. The following devices support Jumbo Frames up to 9KB: BCM5700, 5701,
+5702, 5703C, 5703S, 5704C, 5704S, 5714C, 5714S, 5715C and 5715S. Other devices
+currently do not support Jumbo Frames.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/bge*\fR\fR
+.ad
+.RS 27n
+32-bit ELF kernel module. (x86)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/bge\fR\fR
+.ad
+.RS 27n
+64-bit ELF kernel module (x86).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/sparcv9/bge\fR\fR
+.ad
+.RS 27n
+64-bit ELF kernel module (SPARC).
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for a description of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture SPARC, x86
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR streamio (4I),
+.BR dlpi (4P),
+.BR driver.conf (5),
+.BR attributes (7),
+.BR dladm (8)
+.sp
+.LP
+\fIWriting Device Drivers\fR
+.sp
+.LP
+\fISTREAMS Programming Guide\fR
+.sp
+.LP
+\fINetwork Interfaces Programmer's Guide\fR
diff --git a/usr/src/man/man4d/blkdev.4d b/usr/src/man/man4d/blkdev.4d
new file mode 100644
index 0000000000..3e7fbc33be
--- /dev/null
+++ b/usr/src/man/man4d/blkdev.4d
@@ -0,0 +1,82 @@
+.\"
+.\" This file and its contents are supplied under the terms of the
+.\" Common Development and Distribution License ("CDDL"), version 1.0.
+.\" You may only use this file in accordance with the terms of version
+.\" 1.0 of the CDDL.
+.\"
+.\" A full copy of the text of the CDDL should have accompanied this
+.\" source. A copy of the CDDL is also available via the Internet at
+.\" http://www.illumos.org/license/CDDL.
+.\"
+.\" Copyright 2014 Garrett D'Amore <garrett@damore.org>
+.
+.Dd "Jul 30, 2014"
+.Dt BLKDEV 4D
+.Os
+.Sh NAME
+.Nm blkdev
+.Nd generic block device driver
+.Sh DESCRIPTION
+The
+.Nm
+driver supports generic block-oriented devices, such as non-volatile
+memory storage devices.
+It provides a hardware independent layer for such storage devices, allowing them
+to concentrate on the hardware-specific details, while
+.Nm
+takes care of all the other details, such as
+.Xr dkio 4I .
+.Lp
+The
+.Nm
+driver only supports block-oriented, random-access devices.
+It does not support traditional rotational media and does not support
+SCSI commands.
+.Lp
+The most typical use case for
+.Nm
+devices is to be used to host a file system, such as
+.Xr pcfs 4FS
+or
+.Xr zfs 4FS .
+.
+.Sh INTERFACE STABILITY
+.Sy Uncommitted .
+.
+.Sh FILES
+.
+.Bl -tag -compact -width Pa
+.It Pa /dev/dsk/cndnsn
+Block device minor nodes.
+.It Pa /dev/rdsk/cndnsn
+Raw block device minor nodes.
+.El
+.Lp
+In the above, the following substitutions may occur:
+.Bl -tag -offset indent -width Va
+.It Va cn
+A controller number, typically one for each instance of
+each underlying hardware dependent device driver (there can be multiple
+such drivers in the system.) Controller numbers are dynamically assigned
+by the system.
+.It Va dn
+Generally, each instance of the underlying hardware will have a
+logical unit number as well.
+.It Va sn
+This is the
+.Em slice
+number, representing a subset of the disk.
+See
+.Xr dkio 4I .
+.El
+.
+.Sh SEE ALSO
+.Xr rmformat 1 ,
+.Xr sd 4D ,
+.Xr pcfs 4FS ,
+.Xr zfs 4FS ,
+.Xr dkio 4I ,
+.Xr devinfo 8 ,
+.Xr fdisk 8 ,
+.Xr mount 8 ,
+.Xr umount 8
diff --git a/usr/src/man/man4d/bnxe.4d b/usr/src/man/man4d/bnxe.4d
new file mode 100644
index 0000000000..fb91ba4806
--- /dev/null
+++ b/usr/src/man/man4d/bnxe.4d
@@ -0,0 +1,153 @@
+.\"
+.\" This file and its contents are supplied under the terms of the
+.\" Common Development and Distribution License ("CDDL"), version 1.0.
+.\" You may only use this file in accordance with the terms of version
+.\" 1.0 of the CDDL.
+.\"
+.\" A full copy of the text of the CDDL should have accompanied this
+.\" source. A copy of the CDDL is also available via the Internet at
+.\" http://www.illumos.org/license/CDDL.
+.\"
+.\"
+.\" Copyright (c) 2014 QLogic Corporation. All Rights Reserved
+.\"
+.TH BNXE 4D "Jan 10, 2020"
+.SH NAME
+bnxe \- QLogic NetXtreme II 10 Gigabit Ethernet Device Driver
+
+.SH SYNOPSIS
+.na
+/dev/bnxe*
+.ad
+
+.SH DESCRIPTION
+The
+.B bnxe
+Ethernet driver is a multi-threaded, loadable,
+clonable, GLDv3-based driver supporting the Data Link Provider Interface,
+.BR dlpi (4P),
+over QLogic NetXtreme II 10 Gigabit Ethernet controllers. Multiple
+NetXtreme II controllers installed within the system are supported by
+the driver.
+
+The
+.B bnxe
+driver provides support for the NetXtreme II 10 Gigabit line of devices.
+Functions include chip initialization, frame transmit and receive,
+multicast and promiscuous support, error recovery and reporting. These
+devices provide 10/100/1000/2500/10000 Mbps networking interfaces.
+
+.SH DRIVER CONFIGURATION
+
+The primary methods of configuration are via modification of the
+.I /kernel/drv/bnxe.conf
+file or execution of the
+.BR dladm (8)
+utility. There are many configuration items available and all are thoroughly
+documented in the
+.I /kernel/drv/bnxe.conf
+file. Note that for
+changes to this file to take affect the driver must be reloaded or the system
+rebooted. In order to reload the driver with new configuration changes all
+.B bnxe
+interfaces must be first unplumbed and then the
+.BR update_drv (8)
+tool must be executed. For the configuration items that do not require a
+driver reload the
+.BR dladm (8)
+tool can be used to dynamically change the option.
+
+.SH DEBUGGING
+
+.SS kstat
+
+There are many statistics exposed via
+.B kstat
+by
+.BR bnxe .
+
+The main groups are:
+.TP
+"intr"
+for interrupts stats
+.TP
+"l2chip"
+for layer 2 chip stats,
+.TP
+"l2driver"
+for layer 2 driver stats,
+.TP
+"l2stats"
+for general layer 2 stats,
+.TP
+"link"
+for detailed link status,
+.TP
+"mac"
+for GLDv3 MAC layer stats,
+.TP
+"rxq#"
+for Rx ring stats,
+.TP
+"txq#"
+for Tx ring stats, and
+.TP
+"stats"
+for general driver stats and version info.
+.LP
+To get a list of all the individual statistics in these groups run:
+.na
+% kstat -m bnxe -i 0 -l
+.ad
+
+.SH FILES
+.ne 2
+.na
+/dev/bnxe[instance]
+.ad
+.RS 16n
+.B bnxe
+Character special device
+.RE
+
+.sp
+.ne 2
+.na
+/kernel/drv/bnxe.conf
+.ad
+.RS 16n
+Driver configuration file
+.RE
+
+.sp
+.ne 2
+.na
+/kernel/drv/amd64/bnxe
+.ad
+.RS 16n
+Device driver (x86)
+.RE
+
+.sp
+.ne 2
+.na
+/kernel/drv/sparcv9/bnxe
+.ad
+.RS 16n
+Device driver (SPARC)
+.RE
+
+.SH SEE ALSO
+.BR gld (4P),
+.BR driver.conf (5),
+.BR dladm (8),
+.BR ifconfig (8),
+.BR netstat (8)
+.LP
+.I QLogic NetXtreme II 10 Gigabit Adapter Driver Installation Notes
+.LP
+.I Writing Device Drivers
+.LP
+.I STREAMS Programming Guide
+.LP
+.I Network Interfaces Guide
diff --git a/usr/src/man/man4d/ccid.4d b/usr/src/man/man4d/ccid.4d
new file mode 100644
index 0000000000..622d37109e
--- /dev/null
+++ b/usr/src/man/man4d/ccid.4d
@@ -0,0 +1,558 @@
+.\"
+.\" This file and its contents are supplied under the terms of the
+.\" Common Development and Distribution License ("CDDL"), version 1.0.
+.\" You may only use this file in accordance with the terms of version
+.\" 1.0 of the CDDL.
+.\"
+.\" A full copy of the text of the CDDL should have accompanied this
+.\" source. A copy of the CDDL is also available via the Internet at
+.\" http://www.illumos.org/license/CDDL.
+.\"
+.\"
+.\" Copyright 2019 Joyent, Inc.
+.\"
+.Dd December 20, 2019
+.Dt CCID 4D
+.Os
+.Sh NAME
+.Nm ccid
+.Nd chip card interface device USB client class driver
+.Sh SYNOPSIS
+.In sys/usb/clients/ccid/uccid.h
+.Sh INTERFACE LEVEL
+.Sy Volatile
+.Pp
+The interfaces provided by this driver are private at this time and
+subject to change.
+It should not be relied upon.
+.Sh DESCRIPTION
+The
+.Nm
+driver is a USB CCID (chip card interface device) class device driver.
+.Pp
+The driver exposes interfaces that allow consumers to send and receive
+APDUs (application protocol data unit) to a given smart card that is
+plugged into a reader.
+The driver also provides interfaces to obtain status information, the
+ATR (answer to reset), and obtain exclusive access to the device.
+In addition, the system exposes control of CCID devices through
+.Xr cfgadm 8 .
+.Ss Supported Devices
+The CCID specification allows for readers to come in different flavors.
+These different flavors support different communication protocols and
+have different levels of automation for determining the protocol and
+transfers that are required.
+.Pp
+At this time, only the short APDU protocol is supported, which also works with
+readers using the extended APDU protocol.
+TPDU and character level readers are not supported by the driver.
+Readers in this category will still attach; however,
+I/O cannot be performed to them.
+.Pp
+In addition, at this time the driver does not support devices which
+require manually setting the clock and data rates to support an ICC.
+.Ss Device Model
+Each CCID class device provides a number of slots.
+Each slot may have an independent ICC (integrated circuit card or Smart
+Card) inserted into it.
+Each device, or reader, has its own directory under
+.Pa /dev/ccid
+based on its device number.
+Inside of each directory is a character device for each slot.
+A slot exists regardless of whether or not an ICC is inserted into it.
+As long as a CCID device is present in the system, its device nodes will
+be present.
+.Pp
+Slots are enumerated using this pattern:
+.Pa /dev/ccid/ccid%instance/slot%slot .
+.Pp
+For example, all the slots that belong to CCID instance 5 will be
+enumerated under the directory
+.Pa /dev/ccid/ccid5 .
+Slots are numbered starting at zero for each reader and increment from
+there.
+For example, the second physical slot would be numbered as slot one.
+If this were on CCID instance zero, then we would find a character
+device at:
+.Pa /dev/ccid/ccid0/slot1 .
+.Pp
+To enumerate all of the ccid devices present on the system, one could
+read all of the directories under
+.Pa /dev/ccid .
+To enumerate all of the slots on a device, one could read all of the
+device nodes under a particular CCID device, such as:
+.Pa /dev/ccid/ccid0 .
+The number of slots is also obtainable through various ioctls that will
+be discussed later on.
+It's important to note that while slot numbering will always be
+consistent for a given device, the CCID numbering is based on the driver
+instance.
+Therefore, it is possible for a device to change device numbers.
+To deal with this, symlinks based on other properties will be provided
+(for example, the USB serial number).
+.Pp
+All of the CCID devices in the system can also be listed by using the
+.Xr ccidadm 8
+command.
+.Ss I/O Model
+To send and receive responses to commands, a program must open up the
+corresponding slot's device node.
+In many of the commands that use an ICC, there is a logical notion of
+state associated with the ICC that is mutated by performing commands on
+it.
+For example, a command might be issued that uses a PIN to unlock a slot
+or that selects a particular PIV applet for use.
+Because of this, all I/O to a given device must be performed inside the
+context of a transaction.
+When a program begins a transaction, it is guaranteed that no one else
+may send commands to the ICC.
+When a program is finished, it must explicitly end the transaction,
+which may have the side effect of resetting the ICC.
+If a program with an open transaction crashes or closes the file
+descriptor without taking other actions, then the transaction will be
+automatically closed and the ICC will be reset.
+Without a transaction open, it will still be possible to issue ioctls
+that obtain the status of the slot and the reader.
+.Pp
+While in an active transaction, a program may send commands to a card.
+Sending a command and reading a response are done through the
+traditional
+.Xr read 2
+and
+.Xr write 2
+family of system calls.
+To submit a command, the program would issue a
+.Xr write 2
+family system call that contained the payload to send to the ICC.
+Once submitted, the call would return and the program would be able to
+issue a
+.Xr read 2
+system call to obtain the results.
+Once a command has been submitted, it is illegal to submit another one.
+The next command cannot be submitted until the response has been fully
+consumed.
+Similarly, if a command has not been submitted, one cannot issue a
+.Xr read 2
+system call to obtain results.
+Only a single thread may be blocked waiting to submit a command or
+read a response.
+.Pp
+To facilitate non-blocking operation, the underlying file descriptor may
+be opened with
+.Dv O_NONBLOCK .
+.Pp
+While a transaction is active,
+.Xr poll 2
+may be used to receive status information about the slot.
+The following events are used by
+.Nm :
+.Bl -tag -width POLLRDNORM
+.It Dv POLLOUT
+The device is ready to receive a command using
+.Xr write 2 .
+.It Dv POLLIN, POLLRDNORM
+The device has completed a command the results may be retrieved with
+.Xr read 2 .
+.It Dv POLLHUP
+The card has been removed from the slot.
+.It Dv POLLERR
+An hardware error has occurred, or the CCID reader has been disconnected.
+.El
+.Pp
+One important note is that readers with multiple slots often still only
+allow I/O a single command to be outstanding across all of the slots in
+the system.
+Because transactions are on a per-slot basis, it is still possible for a
+command submission to block even though one has a transaction open.
+.Pp
+While a transaction is open, various events can occur that cause a fatal
+error on the transaction.
+These include:
+.Bl -bullet -offset indent
+.It
+USB CCID reader removed
+.It
+ICC removed
+.It
+A fatal error while communicating to the device
+.It
+An administrator issued an ioctl to power off or reset the ICC
+.El
+.Pp
+Once such a fatal error has occurred, all new I/O will fail though it
+will still be possible to read any successfully completed commands.
+To clear the error state the program will need to end the transaction
+and begin a new one or close the file descriptor if the device has been
+removed.
+.Ss Opening Devices, Exclusive Access, and Performing I/O
+To perform I/O to a particular card, one must first open the slot of
+interest.
+Opening the slot requires that the process be in the global zone and
+that it have the privilege
+.Sy PRIV_SYS_DEVICES .
+The device node can be opened through the
+.Xr open 2
+or
+.Xr openat 2
+system calls.
+For programs that just want to query the slot status using the
+.Dv UCCID_CMD_STATUS
+command, opening the device node read-only is sufficient.
+All other uses require that the device be opened both for reading and
+writing
+.Po Dv O_RDWR Pc .
+.Pp
+Once the device has been opened, the program may issue ioctls to get
+status information.
+.Pp
+To perform general I/O to the card, a program must be in the context of
+a transaction as discussed in the
+.Sx I/O Model
+section.
+To open a transaction, a program must issue the
+.Dv UCCID_CMD_TXN_BEGIN
+command through the
+.Xr ioctl 2
+system call.
+.Pp
+When a program is done, it must issue the
+.Dv UCCID_CMD_TXN_END
+command to release the transaction.
+As part of issuing the command, the program must determine a disposition
+of what it would like done with the card when it has completed.
+These options include leaving the ICC alone and resetting the ICC.
+For many use cases, such as those where a pin is entered or the ICC's
+state is mutated, a reset is the recommended option.
+If the program crashes or closes the file descriptor without issuing a
+transaction end, then the ICC will be reset.
+.Pp
+Please see the ioctl listing in the
+.Sx IOCTLS
+section for more information on the command structure.
+.Pp
+If a multi-threaded application opens a slot once and shares it among multiple
+threads performing I/O to that slot, there can still only be one transaction
+active or waiting on the slot shared by all threads.
+Acquiring another transaction on the same slot minor while another thread is
+already blocked waiting for one will return
+.Dv EINPROGRESS .
+If another transaction is already active,
+.Dv EINVAL
+will be returned.
+Consequently, all threads in a multi-threaded application share the transaction
+state and may issue writes, and read the results.
+The same applies to any other method of sharing an open file descriptor of a slot
+minor, be it by sharing the fd over a socket, a child process inheriting it from
+its parent during
+.Xr fork 2 ,
+even across calls to
+.Xr exec 2 .
+.Ss Device Status and ATR
+Once a slot has been opened, any caller may issue commands to get the
+status of the slot.
+This can also be used to obtain the ATR (answer to reset) of an ICC that
+is present on the slot, if it is known.
+.Pp
+While exclusive access is not required to issue these commands, there is
+no guarantee that they will not have changed between the time that the
+program issued the command and it obtains a transaction.
+.Pp
+To obtain information about the reader, slot, and the ATR, one should
+issue the
+.Dv UCCID_CMD_STATUS
+command.
+Please see the ioctl listing in the
+.Sx IOCTLS
+section for more information.
+.Sh IOCTLS
+This section lists the different commands that may be issued to a CCID
+device through the
+.Xr ioctl 2
+system call.
+.Ss Ic UCCID_CMD_STATUS
+This command is used to obtain the status of the slot.
+It may be used regardless of whether or not the caller has exclusive access.
+.Pp
+The
+.Ic UCCID_CMD_STATUS
+command uses the structure
+.Vt uccid_cmd_status_t ,
+the fields of which have the following meanings:
+.Bl -tag -width Fa
+.It Fa uint32_t ucs_version
+Indicates the current version of the structure.
+This should be set to
+.Dv UCCID_CURRENT_VERSION .
+.It Fa uint32_t ucs_status
+This value is ignored when issuing the command.
+On return, it will be filled in with various flags that describe the
+current status of the slot and the contents returned in the
+.Vt uccid_cmd_status_t .
+The following flags are defined:
+.Bl -tag -width Dv
+.It Dv UCCID_STATUS_F_CARD_PRESENT
+A card has been inserted into the slot of the CCID class device.
+.It Dv UCCID_STATUS_F_CARD_ACTIVE
+The inserted card has been successfully activated.
+This will only be set if the
+.Dv UCCID_STATUS_F_CARD_PRESENT
+flag is also set.
+.It Dv UCCID_STATUS_F_PRODUCT_VALID
+The contents of
+.Fa ucs_product
+are valid.
+.It Dv UCCID_STATUS_F_SERIAL_VALID
+The contents of
+.Fa ucs_serial
+are valid.
+.It Dv UCCID_STATUS_F_PARAMS_VALID
+The parameters returned in
+.Fa ucs_params
+are valid.
+.El
+.It Fa int32_t ucs_instance
+The instance number of the CCID device.
+.It Fa uint32_t ucs_slot
+The slot number currently in use.
+.It Fa uint8_t ucs_atr[UCCID_ATR_MAX]
+The ATR (answer to reset) of the card.
+.It Fa uint8_t ucs_atrlen
+The actual length of the ATR data.
+A length of 0 indicates that there is no ATR data.
+.It Fa int8_t ucs_product[256]
+The product string of the CCID device.
+.It Fa int8_t ucs_serial[256]
+The serial number of the CCID device.
+.It Fa ccid_class_descr_t ucs_class
+The CCID class descriptor of the CCID device.
+.It Fa uccid_prot_t ucs_prot
+The protocol in use by the ICC.
+This can be either
+.Dv UCCID_PROT_T0
+for the TPDU T=0 protocol or
+.Dv UCCID_PROT_T1
+for the TPDU T=1 protocol.
+.It Fa ccid_params_t ucs_params
+The CCID parameters available on the card.
+.El
+.Ss Ic UCCID_CMD_TXN_BEGIN
+This command is used to begin a transaction.
+The command will block until exclusive access is available to the
+caller.
+If the caller does not wish to block, it should set the
+.Dv UCCID_TXN_DONT_BLOCK
+flag.
+.Pp
+The command uses the structure
+.Vt uccid_cmd_txn_begin_t
+with the following members:
+.Bl -tag -width Fa
+.It Fa uint32_t ucs_version
+Indicates the current version of the structure.
+This should be set to
+.Dv UCCID_CURRENT_VERSION .
+.It Fa uint32_t uct_flags
+Flags that impact the behavior of the command.
+The following flags are defined:
+.Bl -tag -width Dv
+.It Dv UCCID_TXN_DONT_BLOCK
+The command should not block for exclusive access.
+If exclusive access is not available, then the command will fail
+immediately.
+.El
+.Pp
+If an unknown flag is specified, an error will be returned.
+.El
+.Ss Ic UCCID_CMD_TXN_END
+The
+.Dv UCCID_CMD_TXN_END
+command is used to end a transaction and relinquish exclusive access
+to the ICC.
+.Pp
+The command uses the structure
+.Vt uccid_cmd_txn_end_t
+with the following members:
+.Bl -tag -width Fa
+.It Fa uint32_t uct_version
+Indicates the current version of the structure.
+This should be set to
+.Dv UCCID_CURRENT_VERSION .
+.It Fa uint32_t uct_flags
+.Bl -tag -width Dv
+.It Dv UCCID_TXN_END_RESET
+The ICC should be reset at the end of the transaction.
+.It Dv UCCID_TXN_END_RELEASE
+The ICC should be released without being reset at the end of the
+transaction.
+.El
+.Pp
+Exactly one of these two flags must be specified.
+It is an error if neither flag or both flags are specified at the same
+time.
+If the device is closed without ending a transaction first, then the ICC
+will be reset.
+.El
+.Ss Ic UCCID_CMD_ICC_MODIFY
+This command can be used to change the state of an ICC, if present.
+.Pp
+The command uses the structure
+.Vt uccid_cmd_icc_modify_t
+with the following members:
+.Bl -tag -width Fa
+.It Fa uint32_t uci_version
+Indicates the current version of the structure.
+This should be set to
+.Dv UCCID_CURRENT_VERSION .
+.It Fa uint32_t uci_action
+The action to be taken on the ICC.
+The following actions are defined:
+.Bl -tag -width Dv
+.It Dv UCCID_ICC_POWER_ON
+Power on the ICC.
+.It Dv UCCID_ICC_POWER_OFF
+Power off the ICC.
+.It Dv UCCID_ICC_WARM_RESET
+Perform a warm reset of the ICC.
+.El
+.El
+.Ss Ic FIONREAD
+This command returns the size in bytes of a command response available
+for reading with
+.Xr read 2 .
+The size is returned in an
+.Vt int
+pointed to by the argument.
+.Sh SYSTEM CALLS
+This section lists the different system calls that may be issued to a
+CCID device.
+.Ss Xr open 2
+.Nm
+slot device nodes can be opened using
+.Xr open 2 .
+Non-blocking operation can be selected by using the
+.Dv O_NONBLOCK
+flag when opening the device node.
+A device node opened for read-only operations will not allow creating
+transactions or doing I/O, but it will allow the ICC/reader status to
+be queried.
+.Ss Xr close 2
+When no longer needed by a program, a device node can be closed with
+.Xr close 2 .
+If a transaction is still active when a device node is closed, the transaction
+will be ended automatically and the ICC will be reset.
+Any unread data is discarded.
+.Ss Xr ioctl 2
+The
+.Xr ioctl 2
+system call can be used to start or end a transaction, query the reply size for
+.Xr read 2 ,
+query the ICC and CCID reader status, or change the state of an ICC in a reader.
+See section
+.Sx IOCTLS
+for details.
+.Ss Xr write 2
+Within an active transaction the
+.Xr write 2
+system call can be used to transfer an APDU (application protocol data unit) to
+an ICC, one single complete APDU at a time.
+Partial writes or writing more than one APDU at a time are not supported.
+The data returned by the ICC must be consumed by a subsequent
+.Xr read 2
+call before
+.Xr write 2
+can be called again within the same transaction.
+.Pp
+The following errors for
+.Xr write 2
+have specific meaning in
+.Nm :
+.Bl -tag -width Dv
+.It Dv E2BIG
+The number of bytes to write is larger than the maximum APDU length supported by
+.Nm ,
+currently defined as 261 bytes.
+.It Dv EACCES
+The device is opened read-only, or no transaction is active.
+.It Dv EBUSY
+There is unread data from a previous call to
+.Xr write 2 .
+.It Dv ENOTSUP
+The reader and/or ICC is unsupported for I/O.
+.It Dv ENXIO
+The ICC is inactive and can't be used for I/O.
+.It Dv ENODEV
+The CCID reader has been disconnected.
+.El
+.Ss Xr read 2
+Within an active transaction the
+.Xr read 2
+system call is used to read the reply from an ICC following sending an APDU with
+.Xr write 2 .
+The whole reply needs to be read with a single call to
+.Xr read 2 .
+The size of the reply can be queried before reading by issuing the
+.Dv FIONREAD
+ioctl.
+See section
+.Sx IOCTLS
+for details.
+.Pp
+The following errors for
+.Xr read 2
+have specific meaning in
+.Nm :
+.Bl -tag -width Dv
+.It Dv EACCES
+No transaction is active.
+.It Dv EBUSY
+Another thread is already blocked in
+.Xr read 2
+waiting for data.
+.It Dv EOVERFLOW
+The buffer size is too small to fit the reply.
+.It Dv ENODATA
+No
+.Xr write 2
+was issued before and consequently there is no reply to be read.
+.It Dv ENODEV
+The CCID reader has been disconnected.
+.El
+.Ss Xr poll 2
+Within an active transaction the
+.Xr poll 2
+system call is used to wait for status changes on a device node.
+See section
+.Sx I/O model
+for details.
+.Pp
+The following errors for
+.Xr poll 2
+have specific meaning in
+.Nm :
+.Bl -tag -width Dv
+.It Dv EACCES
+No transaction is active.
+.It Dv ENODEV
+The CCID reader has been disconnected.
+.El
+.Sh SEE ALSO
+.Xr close 2 ,
+.Xr ioctl 2 ,
+.Xr open 2 ,
+.Xr poll 2 ,
+.Xr read 2 ,
+.Xr write 2 ,
+.Xr ccidadm 8 ,
+.Xr cfgadm 8
+.Rs
+.%T Universal Serial Bus Device Class: Smart Card CCID
+.%O Revision 1.1
+.%D April 22, 2005
+.Re
+.Rs
+.%Q ISO/IEC
+.%B Identification Cards - Integrated Circuits
+.%N Part 3: Cards with contacts — Electrical interface and transmission protocols
+.%O ISO/IEC 7616-3:2006
+.%D 2006
+.Re
diff --git a/usr/src/man/man4d/chxge.4d b/usr/src/man/man4d/chxge.4d
new file mode 100644
index 0000000000..a12fab2713
--- /dev/null
+++ b/usr/src/man/man4d/chxge.4d
@@ -0,0 +1,134 @@
+'\" te
+.\" Copyright (c) 2005, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH CHXGE 4D "Jan 17, 2005"
+.SH NAME
+chxge \- Chelsio Ethernet network interface controllers
+.SH SYNOPSIS
+.LP
+.nf
+/dev/chxge
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBchxge\fR Ethernet driver is a multi-threaded, loadable, clonable,
+STREAMS hardware driver supporting the connectionless Data Link Provider
+Interface, \fBdlpi\fR(4P), over Chelsio NIC controllers. Multiple (and mixed)
+NIC controllers installed within the system are supported by the driver. The
+\fBchxge\fR driver provides basic support for the NIC hardware. Functions
+include chip initialization, frame transmit and receive, and error recovery and
+reporting.
+.SH APPLICATION PROGRAMMING INTERFACE
+.sp
+.LP
+The cloning, character-special device \fB/dev/chxge\fR is used to access NIC
+devices installed within the system.
+.SH CHXGE AND DLPI
+.sp
+.LP
+The \fBchxge\fR driver is dependent on \fB/kernel/misc/gld\fR, a loadable
+kernel module that provides the \fBchxge\fR driver with the DLPI and STREAMS
+functionality required of a LAN driver. See \fBgld\fR(4D) for more details on
+the primitives supported by the driver.
+.sp
+.LP
+The values returned by the driver in the DL_INFO_ACK primitive in response to
+the DL_INFO_REQ are:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Default Maximum SDU is 1500 (ETHERMTU).
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+dlsap address length is 8.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+MAC type is DL_ETHER.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The sap length value is -2, meaning the physical address component is
+followed immediately by a 2-byte sap component within the DLSAP address.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Broadcast address value is Ethernet/IEEE broadcast address
+(FF:FF:FF:FF:FF:FF).
+.RE
+.SH FILES
+.sp
+.ne 2
+.na
+\fB/dev/chxge\fR
+.ad
+.RS 29n
+Character special device.
+.RE
+
+.sp
+.ne 2
+.na
+\fB/kernel/drv/sparcv9/chxge\fR
+.ad
+.RS 29n
+SPARC chxge driver binary.
+.RE
+
+.sp
+.ne 2
+.na
+\fB/kernel/drv/chxge\fR
+.ad
+.RS 29n
+x86 platform kernel module. (32-bit).
+.RE
+
+.sp
+.ne 2
+.na
+\fB/kernel/drv/amd64/chxge\fR
+.ad
+.RS 29n
+x86 platform kernel module. (64-bit).
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture SPARC, x86
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR gld (4D),
+.BR dlpi (4P),
+.BR attributes (7),
+.BR netstat (8),
+.BR gld (9F),
+.BR gld_mac_info (9S)
diff --git a/usr/src/man/man4d/cmdk.4d b/usr/src/man/man4d/cmdk.4d
new file mode 100644
index 0000000000..c708f0ce6d
--- /dev/null
+++ b/usr/src/man/man4d/cmdk.4d
@@ -0,0 +1,150 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH CMDK 4D "Nov 4, 2008"
+.SH NAME
+cmdk \- common disk driver
+.SH SYNOPSIS
+.LP
+.nf
+cmdk@\fItarget\fR, \fIlun\fR : [ \fIpartition\fR \fB|\fR \fIslice\fR ]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBcmdk\fR device driver is a common interface to various disk devices. The
+driver supports magnetic fixed disks and magnetic removable disks.
+.sp
+.LP
+The \fBcmdk\fR device driver supports three different disk labels: fdisk
+partition table, Solaris x86 VTOC and EFI/GPT.
+.sp
+.LP
+The block-files access the disk using the system's normal buffering mechanism
+and are read and written without regard to physical disk records. There is also
+a "raw" interface that provides for direct transmission between the disk and
+the user's read or write buffer. A single read or write call usually results in
+one I/O operation; raw I/O is therefore considerably more efficient when many
+bytes are transmitted. The names of the block files are found in
+\fB/dev/dsk\fR. Raw file names are found in \fB/dev/rdsk\fR.
+.sp
+.LP
+I/O requests to the magnetic disk must have an offset and transfer length that
+is a multiple of 512 bytes or the driver returns an \fBEINVAL\fR error.
+.sp
+.LP
+Slice 0 is normally used for the root file system on a disk, slice 1 as a
+paging area (for example, swap), and slice 2 for backing up the entire fdisk
+partition for Solaris software. Other slices may be used for \fBusr\fR file
+systems or system reserved area.
+.sp
+.LP
+The fdisk partition 0 is to access the entire disk and is generally used by the
+\fBfdisk\fR(8) program.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/dev/dsk/c\fR\fIn\fR\fBd\fR\fIn\fR[\fBs\fR|\fBp\fR]\fIn\fR\fR
+.ad
+.RS 26n
+block device (IDE)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/rdsk/c\fR\fIn\fR\fBd\fR\fIn\fR[\fBs\fR|\fBp\fR]\fIn\fR\fR
+.ad
+.RS 26n
+raw device (IDE)
+.sp
+where:
+.sp
+.ne 2
+.na
+\fB\fBc\fR\fIn\fR\fR
+.ad
+.RS 6n
+controller \fIn\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBd\fR\fIn\fR\fR
+.ad
+.RS 6n
+lun \fIn (0-1)\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBs\fR\fIn\fR\fR
+.ad
+.RS 6n
+UNIX system slice \fIn (0-15).\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBp\fR\fIn\fR\fR
+.ad
+.RS 6n
+fdisk partition (0-36).
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/cmdk\fR\fR
+.ad
+.RS 26n
+32-bit kernel module.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/cmdk\fR\fR
+.ad
+.RS 26n
+64-bit kernel module.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture x86
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR lseek (2),
+.BR read (2),
+.BR write (2),
+.BR readdir (3C),
+.BR dkio (4I),
+.BR scsi (5),
+.BR vfstab (5),
+.BR attributes (7),
+.BR fdisk (8),
+.BR mount (8)
diff --git a/usr/src/man/man4d/console.4d b/usr/src/man/man4d/console.4d
new file mode 100644
index 0000000000..4b715eba00
--- /dev/null
+++ b/usr/src/man/man4d/console.4d
@@ -0,0 +1,56 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 1997, Sun Microsystems, Inc.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH CONSOLE 4D "Apr 23, 1999"
+.SH NAME
+console \- STREAMS-based console interface
+.SH SYNOPSIS
+.LP
+.nf
+\fB/dev/console\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The file \fB/dev/console\fR refers to the system console device.
+\fB/dev/console\fR should be used for interactive purposes only. Use of
+\fB/dev/console\fR for logging purposes is discouraged; \fBsyslog\fR(3C) or
+\fBmsglog\fR(4D) should be used instead.
+.sp
+.LP
+The identity of this device depends on the \fBEEPROM\fR or \fBNVRAM\fR settings
+in effect at the most recent system reboot; by default, it is the ``workstation
+console'' device consisting of the workstation keyboard and frame buffer acting
+in concert to emulate an \fBASCII\fR terminal (see \fBwscons\fR(4D)).
+.sp
+.LP
+Regardless of the system configuration, the console device provides
+asynchronous serial driver semantics so that, in conjunction with the
+\fBSTREAMS\fR line discipline module \fBldterm\fR(4M), it supports the
+\fBtermio\fR(4I) terminal interface.
+.SH SEE ALSO
+.sp
+.LP
+.BR syslog (3C),
+.BR termios (3C),
+.BR msglog (4D),
+.BR wscons (4D),
+.BR termio (4I),
+.BR ldterm (4M)
+.SH NOTES
+.sp
+.LP
+In contrast to pre-SunOS 5.0 releases, it is no longer possible to redirect I/O
+intended for \fB/dev/console\fR to some other device. Instead, redirection now
+applies to the workstation console device using a revised programming interface
+(see \fBwscons\fR(4D)). Since the system console is normally configured to be
+the work station console, the overall effect is largely unchanged from previous
+releases.
+.sp
+.LP
+See \fBwscons\fR(4D) for detailed descriptions of control sequence syntax,
+\fBANSI\fR control functions, control character functions and escape sequence
+functions.
diff --git a/usr/src/man/man4d/coretemp.4d b/usr/src/man/man4d/coretemp.4d
new file mode 100644
index 0000000000..79a479d4e8
--- /dev/null
+++ b/usr/src/man/man4d/coretemp.4d
@@ -0,0 +1,49 @@
+.\"
+.\" This file and its contents are supplied under the terms of the
+.\" Common Development and Distribution License ("CDDL"), version 1.0.
+.\" You may only use this file in accordance with the terms of version
+.\" 1.0 of the CDDL.
+.\"
+.\" A full copy of the text of the CDDL should have accompanied this
+.\" source. A copy of the CDDL is also available via the Internet at
+.\" http://www.illumos.org/license/CDDL.
+.\"
+.\"
+.\" Copyright 2019, Joyent, Inc.
+.\"
+.Dd January 10, 2020
+.Dt CORETEMP 4D
+.Os
+.Sh NAME
+.Nm coretemp
+.Nd Intel core-family temperature sensor driver
+.Sh SYNOPSIS
+.Pa /dev/sensors/temperature/cpu/*
+.Sh DESCRIPTION
+The
+.Nm
+driver provides the system with a means of reading the per-core and,
+when available, per-package digital temperature sensors on Intel CPUs.
+Currently, the
+.Nm
+driver supports Intel Core family processors after Penryn
+microarchitecture and Intel Atom processors starting with the Silvermont
+microarchitecture.
+.Pp
+Temperature information is available to the system via the fault
+management architecture
+.Pq FMA .
+The file system location and programming interface to the
+.Nm
+driver are considered
+.Sy Volatile ,
+subject to change without notice, and should not be used directly.
+Raw temperature information can be dumped through the FMA developer
+utility fmtopo.
+.Sh SEE ALSO
+.Xr fmadm 8
+.Rs
+.%A Intel Corporation
+.%B Intel 64 and IA-32 Architectures Software Developer's Manual
+.%V Volume 3 (3A, 3B, 3C & 3D): System Programming Guide
+.Re
diff --git a/usr/src/man/man4d/cpqary3.4d b/usr/src/man/man4d/cpqary3.4d
new file mode 100644
index 0000000000..9ebf0812b0
--- /dev/null
+++ b/usr/src/man/man4d/cpqary3.4d
@@ -0,0 +1,84 @@
+.\"
+.\" This file and its contents are supplied under the terms of the
+.\" Common Development and Distribution License ("CDDL"), version 1.0.
+.\" You may only use this file in accordance with the terms of version
+.\" 1.0 of the CDDL.
+.\"
+.\" A full copy of the text of the CDDL should have accompanied this
+.\" source. A copy of the CDDL is also available via the Internet at
+.\" http://www.illumos.org/license/CDDL.
+.\"
+.\"
+.\" Copyright (C) 2013 Hewlett-Packard Development Company, L.P.
+.\"
+.TH CPQARY3 4D "December 28, 2020"
+.SH NAME
+cpqary3 - provides disk and SCSI tape support for HP Smart Array controllers
+.SH DESCRIPTION
+The cpqary3 module provides low-level interface routines between the common
+disk I/O subsystem and the HP SMART Array controllers. The cpqary3 driver
+provides disk and SCSI tape support for the HP Smart Array controllers.
+.LP
+Please refer to the cpqary3 release notes, for the supported HP Smart Array
+Controllers and Storage boxes.
+.LP
+Each controller should be the sole initiator on a SCSI bus. Auto
+configuration code determines if the adapter is present at the Configured
+address and what types of devices are attached to it.
+.SH CONFIGURATION
+Use the Array Configuration Utility to configure the controllers. Each
+controller can support up to 32 logical volumes. In addition, each controller
+supports up to a maximum of 28 connected SCSI tape drives.
+With 1.90 and later versions of cpqary3 driver, HP Smart Array SAS controllers,
+having Firmware Revision 5.10 or later, will support 64 logical drives. This
+firmware also supports Dual Domain Multipath configurations.
+.LP
+The driver attempts to initialize itself in accordance with the information
+found in the configuration file, /kernel/drv/cpqary3.conf.
+.LP
+New component - hmaeventd which logs the storage events onto console and to the
+Integrated Management Log is made a part of HPQhma 5.0.0 package, which is not
+part of the operating system. Therefore, by default, notify on event
+functionality is disabled in the driver from 2.1.0 onwards. Storage event
+logging may be enabled in the driver by modifying cpqary3.conf to set the
+cpqary3_noe property to "on". Modification of driver properties requires
+reloading the driver, which in most cases will occur only following a reboot of
+the system.
+.LP
+The target driver's configuration file shall need entries if support is needed
+for targets numbering greater than the default number of targets supported by
+the corresponding target driver.
+.LP
+By default, entries for SCSI target numbers 0 to 15 are present in sd.conf.
+Entries for target numbers 16 and above must be added to the \&'scsi' class in
+sd.conf to support additional corresponding logical volumes.
+.LP
+If SCSI tape drives are connected to the supported controllers, entries for
+target IDs from 33 to 33+N must be added in the /kernel/drv/st.conf file under
+\&'scsi' class, where N is the total number of SCSI tape drives connected to the
+controller with largest number of tape drives connected to it, in the existing
+configuration. For example, two supported controller, c1 and c2 are present in
+the system. If controller c1 has two (2) tape drives and controller c2 has five
+(5) tape drives connected, then entries for target IDs 33 thru 38 are required
+under 'scsi' class in /kernel/drv/st.conf file. The maximum number of tape
+drives that can be connected to a controller is 28. With 1.90 and later versions
+of cpqary3 driver, if tape drives are connected to Smart Array SAS controllers,
+then target ID entries for tape drives from 65 to 65+N must be added in
+/kernel/drv/st.conf file under the \&'scsi' class.
+.SH FILES
+.PD 0
+.TP 25
+.B /kernel/drv/cpqary3.conf
+- configuration file for CPQary3
+.PD
+.SH "SEE ALSO"
+.BR sd (4D),
+.BR st (4D),
+.BR driver.conf (5)
+.SH NOTES
+The Smart Array controllers supported by the current version of the
+cpqary3 driver do not support 'format unit' SCSI command. Hence, selecting
+\&'format' option under 'format' utility main menu is not supported. In addition,
+the 'repair' option under 'format' utility main menu is not supported as this
+operation is not applicable to Logical volumes connected to the supported Smart
+Array controllers.
diff --git a/usr/src/man/man4d/cpuid.4d b/usr/src/man/man4d/cpuid.4d
new file mode 100644
index 0000000000..7e70907ee3
--- /dev/null
+++ b/usr/src/man/man4d/cpuid.4d
@@ -0,0 +1,163 @@
+'\" te
+.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 2015, Joyent, Inc.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH CPUID 4D "April 9, 2016"
+.SH NAME
+cpuid \- CPU identification driver
+.SH SYNOPSIS
+.LP
+.nf
+\fB/dev/cpu/self/cpuid\fR
+.fi
+
+.SH DESCRIPTION
+.SS "SPARC and x86 system"
+.LP
+This device provides implementation-private information via ioctls about
+various aspects of the implementation to Solaris libraries and utilities.
+.SS "x86 systems only"
+.LP
+This device also provides a file-like view of the namespace and return values
+of the x86 cpuid instruction. The cpuid instruction takes a single 32-bit
+integer function code, and returns four 32-bit integer values corresponding to
+the input value that describe various aspects of the capabilities and
+configuration of the processor.
+.LP
+The API for the character device consists of using the seek offset to set the
+function code value, and using a \fBread\fR(2) or \fBpread\fR(2) of 16 bytes to
+fetch the four 32-bit return values of the instruction in the order %\fBeax\fR,
+%\fBebx\fR, %\fBecx\fR and %\fBedx\fR.
+.LP
+No data can be written to the device. Like the \fBcpuid\fR instruction, no
+special privileges are required to use the device.
+.LP
+The device is useful to enable low-level configuration information to be
+extracted from the CPU without having to write any assembler code to invoke the
+\fBcpuid\fR instruction directly. It also allows the kernel to attempt to
+correct any erroneous data returned by the instruction (prompted by occasional
+errors in the information exported by various processor implementations over
+the years).
+.LP
+See the processor manufacturers documentation for further information about the
+syntax and semantics of the wide variety of information available from this
+instruction.
+.LP
+Some systems can be configured to limit the cpuid opcodes which are accessible.
+While illumos handles this condition, other software may malfunction when such
+limits are enabled. Those settings are typically manipulated in the BIOS.
+.SH EXAMPLE
+.LP
+This example allows you to determine if the current x86 processor supports
+"long mode," which is a necessary (but not sufficient) condition for running
+the 64-bit Solaris kernel on the processor.
+.sp
+.in +2
+.nf
+/*
+
+#include <sys/types.h>
+#include <sys/stat.h>
+#include <fcntl.h>
+#include <unistd.h>
+#include <string.h>
+#include <errno.h>
+#include <stdio.h>
+
+static const char devname[] = "/dev/cpu/self/cpuid";
+
+/*ARGSUSED*/
+int
+main(int argc, char *argv[])
+{
+ struct {
+ uint32_t r_eax, r_ebx, r_ecx, r_edx;
+ } _r, *rp = &_r;
+ int d;
+ char *s;
+
+ if ((d = open(devname, O_RDONLY)) == -1) {
+ perror(devname);
+ return (1);
+ }
+
+ if (pread(d, rp, sizeof (*rp), 0) != sizeof (*rp)) {
+ perror(devname);
+ goto fail;
+ }
+
+ s = (char *)&rp->r_ebx;
+ if (strncmp(s, "Auth" "cAMD" "enti", 12) != 0 &&
+ strncmp(s, "Genu" "ntel" "ineI", 12) != 0)
+ goto fail;
+
+ if (pread(d, rp, sizeof (*rp), 0x80000001) == sizeof (*rp)) {
+ /*
+ * Read extended feature word; check bit 29
+ */
+ (void) close(d);
+ if ((rp->r_edx >> 29) & 1) {
+ (void) printf("processor supports long mode\en");
+ return (0);
+ }
+ }
+fail:
+ (void) close(d);
+ return (1);
+}
+.fi
+.in -2
+
+.SH ERRORS
+.ne 2
+.na
+\fBENXIO\fR
+.ad
+.RS 10n
+Results from attempting to read data from the device on a system that does not
+support the CPU identification interfaces
+.RE
+
+.sp
+.ne 2
+.na
+\fBEINVAL\fR
+.ad
+.RS 10n
+Results from reading from an offset larger than UINT_MAX, or attempting to read
+with a size that is not multiple of 16 bytes.
+.RE
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/dev/cpu/self/cpuid\fR\fR
+.ad
+.RS 23n
+Provides access to CPU identification data.
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.LP
+.BR pread (2),
+.BR read (2),
+.BR attributes (7),
+.BR prtconf (8),
+.BR psrinfo (8)
diff --git a/usr/src/man/man4d/dad.4d b/usr/src/man/man4d/dad.4d
new file mode 100644
index 0000000000..e0658bde58
--- /dev/null
+++ b/usr/src/man/man4d/dad.4d
@@ -0,0 +1,361 @@
+'\" te
+.\" Copyright 2004 Sun Microsystems, Inc. All rights reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH DAD 4D "Oct 24, 2005"
+.SH NAME
+dad \- driver for IDE disk devices
+.SH SYNOPSIS
+.LP
+.nf
+\fBdad@\fR \fItarget\fR,\fIlun\fR:\fIpartition\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+This driver handles the ide disk drives on SPARC platforms. The type of disk
+drive is determined using the ATA IDE identify device command and by reading
+the volume label stored on the drive. The \fBdad\fR device driver supports the
+Solaris SPARC VTOC and the EFI/GPT disk volume labels.
+.sp
+.LP
+The block-files access the disk using the system's normal buffering mechanism
+and are read and written without regard to physical disk records. There is
+also a "raw" interface that provides for direct transmission between the disk
+and the user's read or write buffer. A single read or write call usually
+results in one I/O operation; raw I/O is therefore considerably more efficient
+when many bytes are transmitted. The names of the block files are found in
+\fB/dev/dsk\fR. Raw file names are found in \fB/dev/rdsk\fR.
+.sp
+.LP
+I/O requests to the raw device must be aligned on a 512-byte (\fBDEV_BSIZE\fR)
+boundary and must have a length that is a multiple of 512 bytes. Requests that
+do not meet the restrictions cause the driver to return an \fBEINVAL\fR error.
+I/O requests to the block device have no alignment or length restrictions.
+.SS "Device Statistics Support"
+.sp
+.LP
+Each device maintains I/O statistics both for the device and for each partition
+allocated on that device. For each device/partition, the driver accumulates
+reads, writes, bytes read, and bytes written. The driver also takes
+hi-resolution time stamps at queue entry and exit points, which facilitates
+monitoring the residence time and cumulative residence-length product for each
+queue.
+.sp
+.LP
+Each device also has error statistics associated with it. These must include
+counters for hard errors, soft errors and transport errors. Other data may be
+implemented as required.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/dev/dsk/c\fR\fIn\fR\fBt\fR\fIn\fR\fBd\fR\fIn\fR\fBs\fR\fIn\fR \fR
+.ad
+.RS 23n
+block files
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/rdsk/c\fR\fIn\fR\fBt\fR\fIn\fR\fBd\fR\fIn\fR\fBs\fR\fIn\fR \fR
+.ad
+.RS 23n
+raw files
+.RE
+
+.sp
+.LP
+where:
+.sp
+.ne 2
+.na
+\fB\fBc\fR\fIn\fR \fR
+.ad
+.RS 7n
+controller \fIn\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBt\fR\fIn\fR \fR
+.ad
+.RS 7n
+IDE target id \fIn\fR (0-3)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBd\fR\fIn\fR \fR
+.ad
+.RS 7n
+Always 0.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBs\fR\fIn\fR \fR
+.ad
+.RS 7n
+partition \fIn\fR (0-7)
+.RE
+
+.sp
+.LP
+The target ide numbers are assigned as:
+.sp
+.ne 2
+.na
+\fB0\fR
+.ad
+.RS 5n
+Master disk on Primary channel.
+.RE
+
+.sp
+.ne 2
+.na
+\fB1\fR
+.ad
+.RS 5n
+Slave disk on Primary channel.
+.RE
+
+.sp
+.ne 2
+.na
+\fB2\fR
+.ad
+.RS 5n
+Master disk on Secondary channel
+.RE
+
+.sp
+.ne 2
+.na
+\fB3\fR
+.ad
+.RS 5n
+Slave disk on Secondary channel.
+.RE
+
+.SH IOCTLS
+.sp
+.LP
+Refer to \fBdkio\fR(4I).
+.SH ERRORS
+.sp
+.ne 2
+.na
+\fB\fBEACCES\fR \fR
+.ad
+.RS 11n
+Permission denied.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEBUSY\fR \fR
+.ad
+.RS 11n
+The partition was opened exclusively by another thread.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEFAULT\fR \fR
+.ad
+.RS 11n
+Argument was a bad address.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEINVAL\fR \fR
+.ad
+.RS 11n
+Invalid argument.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEIO\fR \fR
+.ad
+.RS 11n
+ I/O error occurred.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBENOTTY\fR \fR
+.ad
+.RS 11n
+The device does not support the requested ioctl function.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBENXIO\fR \fR
+.ad
+.RS 11n
+The device did not exist during opening.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEROFS\fR \fR
+.ad
+.RS 11n
+The device is a read-only device.
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR lseek (2),
+.BR read (2),
+.BR write (2),
+.BR dkio (4I),
+.BR driver.conf (5),
+.BR vfstab (5),
+.BR format (8),
+.BR mount (8)
+.sp
+.LP
+X3T10 ATA-4 specifications.
+.SH DIAGNOSTICS
+.sp
+.ne 2
+.na
+\fB\fBCommand:<\fInumber\fR>\fR, Error:<\fInumber\fR>, Status:<\fInumber\fR>\fR
+.ad
+.sp .6
+.RS 4n
+Indicates that the command failed with an error and provides status register
+contents. Where <\fInumber\fR> is a hexadecimal value.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBoffline\fR \fR
+.ad
+.sp .6
+.RS 4n
+The driver has decided that the target disk is no longer there.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdisk ok\fR \fR
+.ad
+.sp .6
+.RS 4n
+The target disk is now responding again.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdisk not responding to selection\fR \fR
+.ad
+.sp .6
+.RS 4n
+The target disk is not responding.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBi/o to invalid geometry\fR \fR
+.ad
+.sp .6
+.RS 4n
+The geometry of the drive could not be established.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBincomplete read/write - retrying/giving up\fR \fR
+.ad
+.sp .6
+.RS 4n
+There was a residue after the command completed normally.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBno bp for disk label\fR \fR
+.ad
+.sp .6
+.RS 4n
+A bp with consistent memory could not be allocated.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBno memory for disk label\fR \fR
+.ad
+.sp .6
+.RS 4n
+Free memory pool exhausted.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBATA transport failed: reason 'nnnn': {retrying|giving}\fR \fR
+.ad
+.sp .6
+.RS 4n
+The host adapter has failed to transport a command to the target for the reason
+stated. The driver will either retry the command or, ultimately, give up.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBno mem for property\fR \fR
+.ad
+.sp .6
+.RS 4n
+Free memory pool exhausted.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBtransport rejected (<n>)\fR \fR
+.ad
+.sp .6
+.RS 4n
+Host adapter driver was unable to accept a command.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBDevice Fault\fR \fR
+.ad
+.sp .6
+.RS 4n
+Device fault - reason for such error is vendor specific.
+.RE
+
diff --git a/usr/src/man/man4d/dca.4d b/usr/src/man/man4d/dca.4d
new file mode 100644
index 0000000000..c499b21056
--- /dev/null
+++ b/usr/src/man/man4d/dca.4d
@@ -0,0 +1,241 @@
+'\" te
+.\" Copyright (c) 2005, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH DCA 4D "Aug 14, 2005"
+.SH NAME
+dca \- Crypto Accelerator device driver
+.SH SYNOPSIS
+.LP
+.nf
+\fBpci108e,5454@\fIpci-slot\fR\fR
+.fi
+
+.LP
+.nf
+\fBpci108e,5455@\fIpci-slot\fR\fR
+.fi
+
+.LP
+.nf
+\fBpci108e,5456@\fIpci-slot\fR\fR
+.fi
+
+.LP
+.nf
+\fBpci14e4,5820@\fIpci-slot\fR\fR
+.fi
+
+.LP
+.nf
+\fBpci14e4,5821@\fIpci-slot\fR\fR
+.fi
+
+.LP
+.nf
+\fBpci14e4,5822@\fIpci-slot\fR\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBdca\fR device driver is a multi-threaded, loadable hardware driver
+supporting Sun PCI-based (\fBpci108e,5454\fR) cryptographic accelerators, such
+as the Sun Crypto Accelerator 1000.
+.sp
+.LP
+The \fBdca\fR driver requires the presence of Solaris Cryptographic Framework
+for applications and kernel clients to access the provided services.
+.SH EXTENDED DESCRIPTION
+.sp
+.LP
+The \fBdca\fR driver maintains the following statistics:
+.sp
+.ne 2
+.na
+\fB\fB3desjobs\fR\fR
+.ad
+.RS 16n
+Total number of jobs submitted to the device for 3DES encryption.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB3desbytes\fR\fR
+.ad
+.RS 16n
+Total number of bytes submitted to the device for 3DES encryption.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrsapublic\fR\fR
+.ad
+.RS 16n
+Total number of jobs submitted to the device for RSA public key operations.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrsaprivate\fR\fR
+.ad
+.RS 16n
+Total number of jobs submitted to the device for RSA private key operations.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdsasign\fR\fR
+.ad
+.RS 16n
+Total number of jobs submitted to the device for DSA signing.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdsaverify\fR\fR
+.ad
+.RS 16n
+Total number of jobs submitted to the device for DSA verification.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrngjobs\fR\fR
+.ad
+.RS 16n
+Total number of jobs submitted for pure entropy generation.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrngbytes\fR\fR
+.ad
+.RS 16n
+Total number of bytes of pure entropy requested from the device.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrngsha1jobs\fR\fR
+.ad
+.RS 16n
+Total number of jobs submitted for entropy generation, with SHA-1
+post-processing.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrngsha1bytes\fR\fR
+.ad
+.RS 16n
+Total number of bytes of entropy requested from the device, with SHA-1
+post-processing.
+.RE
+
+.sp
+.LP
+Additional statistics may be supplied for Sun support personnel, but are not
+useful to end users and are not documented here.
+.sp
+.LP
+The \fBdca\fR driver can be configured by defining properties in
+\fB/kernel/drv/dca.conf\fR which override the default settings. The following
+properties are supported:
+.sp
+.ne 2
+.na
+\fB\fBnostats\fR\fR
+.ad
+.RS 13n
+Disables the generation of statistics. This property may be used to help
+prevent traffic analysis, but this may inhibit support personnel.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrngdirect\fR\fR
+.ad
+.RS 13n
+Disables the SHA-1 post-processing of generated entropy. This may give "truer"
+random numbers, but it may also introduce the risk of external biases
+influencing the distribution of generated random numbers.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture SPARC
+_
+Interface Stability Unstable
+.TE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/dca.conf\fR\fR
+.ad
+.RS 27n
+\fBdca\fR configuration file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/sparcv9/dca\fR\fR
+.ad
+.RS 27n
+64-bit ELF kernel driver (SPARC)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/dca\fR\fR
+.ad
+.RS 27n
+32-bit ELF kernel driver (x86)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/dca\fR\fR
+.ad
+.RS 27n
+64-bit ELF kernel driver (AMD64)
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR driver.conf (5),
+.BR attributes (7),
+.BR cryptoadm (8),
+.BR kstat (8),
+.BR prtconf (8)
+.sp
+.LP
+\fISolaris Cryptographic Framework.\fR
diff --git a/usr/src/man/man4d/dcam1394.4d b/usr/src/man/man4d/dcam1394.4d
new file mode 100644
index 0000000000..153f3e9550
--- /dev/null
+++ b/usr/src/man/man4d/dcam1394.4d
@@ -0,0 +1,947 @@
+'\" te
+.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH DCAM1394 4D "Jan 10, 2020"
+.SH NAME
+dcam1394 \- 1394-based digital camera (IIDC) driver
+.SH SYNOPSIS
+.nf
+\fB#include <sys/dcam/dcam1394_io.h>\fR
+.fi
+
+.SH DESCRIPTION
+The \fBdcam1394\fR driver supports devices implementing the \fI1394 Trade
+Association Digital Camera Specification\fR (also referred to as the IIDC
+specification). Only a subset of the specification is supported.
+.SH READING DATA
+Isochronous data is read from the driver frame-by-frame and is maintained
+within the driver in a ring buffer.
+.sp
+.LP
+Video frames are read from the isochronous input device using \fBread\fR(2).
+.sp
+.LP
+The \fBdcam1394_frame_t\fR structure describes the frame layout and is defined
+as follows:
+.sp
+.in +2
+.nf
+ struct {
+ unsigned int vid_mode;
+ unsigned int seq_num;
+ hrtime_t timestamp;
+ unsigned char *buff;
+ };
+.fi
+.in -2
+
+.sp
+.LP
+The size to allocate for the structure is determined by the video mode for
+which the camera is configured. Possible values for the vid_mode field are
+listed under DCAM1394_PARAM_VID_MODE below.
+.SH IOCTL REQUESTS
+The following ioctl requests are supported:
+.sp
+.ne 2
+.na
+\fBDCAM1394_CMD_CAM_RESET\fR
+.ad
+.sp .6
+.RS 4n
+Reset the device.
+.RE
+
+.sp
+.ne 2
+.na
+\fBDCAM1394_CMD_REG_READ\fR
+.ad
+.sp .6
+.RS 4n
+Read the indicated dcam/IIDC register. The argument is a pointer to a
+\fBdcam1394_reg_io_t\fR structure, which is defined as follows:
+.sp
+.in +2
+.nf
+ struct {
+ unsigned int offs;
+ unsigned int val;
+ };
+.fi
+.in -2
+
+The offs field should be set to the offset of the register from which to read.
+Register offset values are defined in the \fI1394 Trade Association Digital
+Camera Specification\fR.
+.sp
+After the operation is completed, the camera register value is put in the
+\fBval\fR field.
+.RE
+
+.sp
+.ne 2
+.na
+\fBDCAM1394_CMD_REG_WRITE\fR
+.ad
+.sp .6
+.RS 4n
+Write the indicated dcam/IIDC register. The argument is a pointer to a
+\fBdcam1394_reg_io_t\fR structure (described above).
+.sp
+The offs field should be set to the offset of the register from which to read.
+The register offset values are defined in the \fI1394 Trade Association Digital
+Camera Specification\fR.
+.sp
+The val field should be set to the value to be written to the camera register.
+.RE
+
+.sp
+.ne 2
+.na
+\fBDCAM1394_CMD_PARAM_GET\fR
+.ad
+.sp .6
+.RS 4n
+Gets a list of parameters associated with a camera. The argument is a pointer
+to a \fBdcam1394_param_list_t\fR structure (described below). The parameter
+list is accessed through macros defined below.
+.sp
+The parameter list only supports Format 1 video formats.
+.RE
+
+.sp
+.ne 2
+.na
+\fBDCAM1394_CMD_PARAM_SET\fR
+.ad
+.sp .6
+.RS 4n
+Sets a list of parameters associated with a camera. The argument is a pointer
+to a \fBdcam1394_param_list_t structure\fR (described below). The parameter
+list is accessed through macros defined below.
+.sp
+The parameter list only supports Format 1 video formats.
+.RE
+
+.sp
+.ne 2
+.na
+\fBDCAM1394_CMD_FRAME_RCV_START\fR
+.ad
+.sp .6
+.RS 4n
+Start receiving video frames from the camera.
+.sp
+The contents of the ring buffer may be accessed by reading the isochronous
+stream device.
+.RE
+
+.sp
+.ne 2
+.na
+\fBDCAM1394_CMD_FRAME_RCV_STOP\fR
+.ad
+.sp .6
+.RS 4n
+Stop receiving frames from the camera.
+.RE
+
+.sp
+.ne 2
+.na
+\fBDCAM1394_CMD_RING_BUFF_FLUSH\fR
+.ad
+.sp .6
+.RS 4n
+Flush the frames in the ring buffer.
+.RE
+
+.sp
+.ne 2
+.na
+\fBDCAM1394_CMD_FRAME_SEQ_NUM_COUNT_RESET\fR
+.ad
+.sp .6
+.RS 4n
+Reset frame sequence number.
+.RE
+
+.SH PARAMETER LIST ACCESS
+The parameter list is initialized and access through macros. The data type for
+the parameter list is \fBdcam1394_param_list_t\fR.
+.sp
+.LP
+The following macros are used to access the parameter list:
+.sp
+.ne 2
+.na
+\fBPARAM_LIST_INIT(param_list)\fR
+.ad
+.sp .6
+.RS 4n
+Initialize the parameter list.
+.RE
+
+.sp
+.ne 2
+.na
+\fBPARAM_LIST_ADD(param_list, param, subparam)\fR
+.ad
+.sp .6
+.RS 4n
+Add a parameter to the list.
+.RE
+
+.sp
+.ne 2
+.na
+\fBPARAM_LIST_REMOVE(param_list, param, subparam)\fR
+.ad
+.sp .6
+.RS 4n
+Remove a parameter from the list.
+.RE
+
+.sp
+.ne 2
+.na
+\fBPARAM_LIST_IS_ENTRY(param_list, param, subparam)\fR
+.ad
+.sp .6
+.RS 4n
+Indicates if a specific parameter is in the list.
+.RE
+
+.sp
+.ne 2
+.na
+\fBPARAM_VAL(param_list, param, subparam)\fR
+.ad
+.sp .6
+.RS 4n
+Value of a specified parameter.
+.RE
+
+.sp
+.ne 2
+.na
+\fBPARAM_ERR(param_list, param, subparam)\fR
+.ad
+.sp .6
+.RS 4n
+Indicates if a specific parameter is successfully set.
+.RE
+
+.sp
+.LP
+When no subparam value is required, the value DCAM1394_SUBPARAM_NONE may be
+used.
+.SH PARAMETERS
+The following parameters may appear in the list:
+.sp
+.ne 2
+.na
+\fBDCAM1394_PARAM_CAP_POWER_CTRL\fR
+.ad
+.sp .6
+.RS 4n
+Queries if the camera can be turned off and on through software. The subparam
+value is ignored.
+.RE
+
+.sp
+.ne 2
+.na
+\fBDCAM1394_PARAM_POWER\fR
+.ad
+.sp .6
+.RS 4n
+Controls or queries if the camera is powered up. Verify this feature using
+DCAM1394_PARAM_CAP_POWER_CTRL before use. The subparam field is ignored.
+.RE
+
+.sp
+.ne 2
+.na
+\fBDCAM1394_PARAM_CAP_VID_MOD\fR
+.ad
+.sp .6
+.RS 4n
+Queries if a specific video mode is supported by the camera.
+.sp
+subparam is one of the following and is used to determine if a specified video
+mode is supported by the camera:
+.sp
+.in +2
+.nf
+ DCAM1394_SUBPARAM_VID_MODE_0
+ DCAM1394_SUBPARAM_VID_MODE_YUV_444_160_120
+ Video mode is 4:4:4, YUV color space, 160x120 resolution.
+
+ DCAM1394_SUBPARAM_VID_MODE_1
+ DCAM1394_SUBPARAM_VID_MODE_YUV_422_320_240
+ Video mode is 4:2:2, YUV color space, 320x240 resolution.
+
+ DCAM1394_SUBPARAM_VID_MODE_2
+ DCAM1394_SUBPARAM_VID_MODE_YUV_411_640_480
+ Video mode is 4:1:1, YUV color space, 640x480 resolution.
+
+ DCAM1394_SUBPARAM_VID_MODE_3
+ DCAM1394_SUBPARAM_VID_MODE_YUV_422_640_480
+ Video mode is 4:2:2, YUV color space, 640x480 resolution.
+
+ DCAM1394_SUBPARAM_VID_MODE_4
+ DCAM1394_SUBPARAM_VID_MODE_RGB_640_480
+ Video mode is RGB color space, 640x480 resolution.
+
+ DCAM1394_SUBPARAM_VID_MODE_5
+ DCAM1394_SUBPARAM_VID_MODE_Y_640_480
+ Video mode is Y color space, 640x480 resolution.
+.fi
+.in -2
+
+.RE
+
+.sp
+.ne 2
+.na
+\fBDCAM1394_PARAM_VID_MODE\fR
+.ad
+.sp .6
+.RS 4n
+Controls or queries the current video mode of the camera. The subparam field
+is ignored. When selecting the video mode, it should be compatible with the
+capability of the camera, which may be determined by checking the
+DCAM1394_PARAM_CAP_VID_MODE parameter.
+.sp
+The value of this parameter may be one of the following:
+.sp
+.in +2
+.nf
+ DCAM1394_VID_MODE_0
+ DCAM1394_VID_MODE_YUV_444_160_120
+ Video mode is 4:4:4, YUV color space, 160x120 resolution.
+
+ DCAM1394_VID_MODE_1
+ DCAM1394_VID_MODE_YUV_422_320_240
+ Video mode is 4:2:2, YUV color space, 320x240 resolution.
+
+ DCAM1394_VID_MODE_2
+ DCAM1394_VID_MODE_YUV_411_640_480
+ Video mode is 4:1:1, YUV color space, 640x480 resolution.
+
+ DCAM1394_VID_MODE_3
+ DCAM1394_VID_MODE_YUV_422_640_480
+ Video mode is 4:2:2, YUV color space, 640x480 resolution.
+
+ DCAM1394_VID_MODE_4
+ DCAM1394_VID_MODE_RGB_640_480
+ Video mode is RGB color space, 640x480 resolution.
+
+ DCAM1394_VID_MODE_5
+ DCAM1394_VID_MODE_Y_640_480
+ Video mode is Y color space, 640x480 resolution.
+.fi
+.in -2
+
+.RE
+
+.sp
+.ne 2
+.na
+\fBDCAM1394_PARAM_CAP_FRAME_RATE_VID_MODE_0\fR
+.ad
+.sp .6
+.RS 4n
+Queries if a specific frame rate is supported by the camera in video mode 0
+(4:4:4, YUV, 160x120).
+.sp
+subparam is one of the following and used to determine if a specified frame
+rate is supported by the camera:
+.sp
+.in +2
+.nf
+ DCAM1394_SUBPARAM_FRAME_RATE_0
+ DCAM1394_SUBPARAM_FRAME_RATE_3_75_FPS
+ Frame rate is 3.75 frames/second.
+
+ DCAM1394_SUBPARAM_FRAME_RATE_1
+ DCAM1394_SUBPARAM_FRAME_RATE_7_5_FPS
+ Frame rate is 7.5 frames/second.
+
+ DCAM1394_SUBPARAM_FRAME_RATE_2
+ DCAM1394_SUBPARAM_FRAME_RATE_15_FPS
+ Frame rate is 15 frames/second.
+
+ DCAM1394_SUBPARAM_FRAME_RATE_3
+ DCAM1394_SUBPARAM_FRAME_RATE_30_FPS
+ Frame rate is 30 frames/second.
+
+ DCAM1394_SUBPARAM_FRAME_RATE_4
+ DCAM1394_SUBPARAM_FRAME_RATE_60_FPS
+ Frame rate is 60 frames/second.
+.fi
+.in -2
+
+.RE
+
+.sp
+.ne 2
+.na
+\fBDCAM1394_PARAM_CAP_FRAME_RATE_VID_MODE_1\fR
+.ad
+.sp .6
+.RS 4n
+Queries if a specific frame rate is supported by the camera in video mode 1
+(4:2:2, YUV, 320x240). See DCAM1394_PARAM_CAP_FRAME_RATE_VID_MODE_0 for a
+listing of valid subparam values.
+.RE
+
+.sp
+.ne 2
+.na
+\fBDCAM1394_PARAM_CAP_FRAME_RATE_VID_MODE_2\fR
+.ad
+.sp .6
+.RS 4n
+Queries if a specific frame rate is supported by the camera in video mode 2
+(4:1:1, YUV, 640x480). See DCAM1394_PARAM_CAP_FRAME_RATE_VID_MODE_0 for a
+listing of valid subparam values.
+.RE
+
+.sp
+.ne 2
+.na
+\fBDCAM1394_PARAM_CAP_FRAME_RATE_VID_MODE_3\fR
+.ad
+.sp .6
+.RS 4n
+Queries if a specific frame rate is supported by the camera in video mode 3
+(4:2:2, YUV, 640x480). See DCAM1394_PARAM_CAP_FRAME_RATE_VID_MODE_0 for a
+listing of valid subparam values.
+.RE
+
+.sp
+.ne 2
+.na
+\fBDCAM1394_PARAM_CAP_FRAME_RATE_VID_MODE_4\fR
+.ad
+.sp .6
+.RS 4n
+Queries if a specific frame rate is supported by the camera in video mode 4.
+(RGB, 640x480). See DCAM1394_PARAM_CAP_FRAME_RATE_VID_MODE_0 for a listing of
+valid subparam values.
+.RE
+
+.sp
+.ne 2
+.na
+\fBDCAM1394_PARAM_CAP_FRAME_RATE_VID_MODE_5\fR
+.ad
+.sp .6
+.RS 4n
+Queries if a specific frame rate is supported by the camera in video mode 5.
+(Y, 640x480). See DCAM1394_PARAM_CAP_FRAME_RATE_VID_MODE_0 for a listing of
+valid subparam values.
+.RE
+
+.sp
+.ne 2
+.na
+\fBDCAM1394_PARAM_FRAME_RATE\fR
+.ad
+.sp .6
+.RS 4n
+Controls or queries the current frame rate of the camera. The subparam field
+is ignored. When selecting a frame rate, it should be compatible with the
+capability of the camera, which can be determined by querying one of the frame
+rate capability parameters above.
+.sp
+The value of this parameter may be one of the following:
+.sp
+.in +2
+.nf
+ DCAM1394_FRAME_RATE_0
+ DCAM1394_3_75_FPS
+ The frame rate is 3.75 frames per second.
+
+ DCAM1394_FRAME_RATE_1
+ DCAM1394_7_5_FPS
+ The frame rate is 7.5 frames per second.
+
+ DCAM1394_FRAME_RATE_2
+ DCAM1394_15_FPS
+ The frame rate is 15 frames per second.
+
+ DCAM1394_FRAME_RATE_3
+ DCAM1394_30_FPS
+ The frame rate is 30 frames per second.
+
+ DCAM1394_FRAME_RATE_4
+ DCAM1394_60_FPS
+ The frame rate is 60 frames per second.
+.fi
+.in -2
+
+.RE
+
+.sp
+.ne 2
+.na
+\fBDCAM1394_PARAM_RING_BUFF_CAPACITY\fR
+.ad
+.sp .6
+.RS 4n
+Controls or queries the number of frames that the ring buffer may hold. This
+value can range between 2 and 30. The subparam field is ignored.
+.RE
+
+.sp
+.ne 2
+.na
+\fBDCAM1394_PARAM_RING_BUFF_NUM_FRAMES_READY\fR
+.ad
+.sp .6
+.RS 4n
+Queries the number of frames in the ring buffer ready to be accessed. The
+subparam field is ignored.
+.RE
+
+.sp
+.ne 2
+.na
+\fBDCAM1394_PARAM_RING_BUFF_READ_PTR_INCR\fR
+.ad
+.sp .6
+.RS 4n
+Controls or queries the number of bytes to advance the read pointer as it
+consumes data from the ring buffer. The subparam field is ignored.
+.RE
+
+.sp
+.ne 2
+.na
+\fBDCAM1394_PARAM_FRAME_NUM_BYTES\fR
+.ad
+.sp .6
+.RS 4n
+Queries the number of bytes in a frame at the current video mode. The subparam
+field is ignored.
+.RE
+
+.sp
+.ne 2
+.na
+\fBDCAM1394_PARAM_STATUS\fR
+.ad
+.sp .6
+.RS 4n
+Queries the parameter status. The subparam field is ignored.
+.sp
+The values for the parameter status is a bit field with the following values
+possibly set:
+.sp
+.ne 2
+.na
+\fBDCAM1394_STATUS_FRAME_RCV_DONE\fR
+.ad
+.sp .6
+.RS 4n
+Frame successfully received.
+.RE
+
+.sp
+.ne 2
+.na
+\fBDCAM1394_STATUS_RING_BUFF_LOST_FRAME\fR
+.ad
+.sp .6
+.RS 4n
+A frame has been lost while processing the ring buffer.
+.RE
+
+.sp
+.ne 2
+.na
+\fBDCAM1394_STATUS_PARAM_CHANGE\fR
+.ad
+.sp .6
+.RS 4n
+A parameter has been changed.
+.RE
+
+.sp
+.ne 2
+.na
+\fBDCAM1394_STATUS_FRAME_SEQ_NUM_COUNT_OVERFLOW\fR
+.ad
+.sp .6
+.RS 4n
+Frame sequence number has reached its maximum possible value and has
+overflowed.
+.RE
+
+.sp
+.ne 2
+.na
+\fBDCAM1394_STATUS_CAM_UNPLUG\fR
+.ad
+.sp .6
+.RS 4n
+Camera has been unplugged.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fBDCAM1394_PARAM_BRIGHTNESS\fR
+.ad
+.sp .6
+.RS 4n
+Query or control a camera feature. This feature queries or controls the
+brightness of the camera.
+.sp
+.ne 2
+.na
+\fBDCAM1394_SUBPARAM_PRESENCE\fR
+.ad
+.sp .6
+.RS 4n
+Indicates if the feature is available.
+.RE
+
+.sp
+.ne 2
+.na
+\fBDCAM1394_SUBPARAM_CAP_ON_OFF\fR
+.ad
+.sp .6
+.RS 4n
+Indicates if the feature may be enabled and disabled. May only be queried.
+.RE
+
+.sp
+.ne 2
+.na
+\fBDCAM1394_SUBPARAM_ON_OFF\fR
+.ad
+.sp .6
+.RS 4n
+Indicates if the feature is enabled.
+.RE
+
+.sp
+.ne 2
+.na
+\fBDCAM1394_SUBPARAM_CAP_CTRL_AUTO\fR
+.ad
+.sp .6
+.RS 4n
+Indicates if the automatic control of this feature is supported by the camera.
+May only be queried.
+.RE
+
+.sp
+.ne 2
+.na
+\fBDCAM1394_SUBPARAM_CAP_CTRL_MANUAL\fR
+.ad
+.sp .6
+.RS 4n
+Indicates if the manual control of this feature is supported by the camera. May
+only be queried.
+.RE
+
+.sp
+.ne 2
+.na
+\fBDCAM1394_SUBPARAM_CTRL_MODE\fR
+.ad
+.sp .6
+.RS 4n
+Indicates if the feature is in auto or manual mode.
+.RE
+
+.sp
+.ne 2
+.na
+\fBDCAM1394_SUBPARAM_MIN_VAL\fR
+.ad
+.sp .6
+.RS 4n
+Minimum value of the feature. May only be queried.
+.RE
+
+.sp
+.ne 2
+.na
+\fBDCAM1394_SUBPARAM_MAX_VAL\fR
+.ad
+.sp .6
+.RS 4n
+Maximum value of the feature. May only be queried.
+.RE
+
+.sp
+.ne 2
+.na
+\fBDCAM1394_SUBPARAM_VALUE\fR
+.ad
+.sp .6
+.RS 4n
+Current value of the feature.
+.RE
+
+.sp
+.ne 2
+.na
+\fBDCAM1394_SUBPARAM_CAP_READ\fR
+.ad
+.sp .6
+.RS 4n
+Indicates if the feature may be read. May only be queried.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fBDCAM1394_PARAM_EXPOSURE\fR
+.ad
+.sp .6
+.RS 4n
+Query or control a camera feature. This feature queries or controls the
+exposure of the camera. The subparams supported by this feature are described
+under DCAM1394_PARAM_BRIGHTNESS.
+.RE
+
+.sp
+.ne 2
+.na
+\fBDCAM1394_PARAM_SHARPNESS\fR
+.ad
+.sp .6
+.RS 4n
+Query or control a camera feature. This feature queries or controls the
+sharpness of the camera. The subparams supported by this feature are described
+under DCAM1394_PARAM_BRIGHTNESS.
+.RE
+
+.sp
+.ne 2
+.na
+\fBDCAM1394_PARAM_WHITE_BALANCE\fR
+.ad
+.sp .6
+.RS 4n
+Query or control a camera feature. This feature queries or controls the white
+balance of the camera. The subparams supported by this feature are described
+under DCAM1394_PARAM_BRIGHTNESS, except for DCAM1394_SUBPARAM_VALUE.
+DCAM1394_SUBPARAM_VALUE is replaced by two distinct subparams.
+.sp
+.ne 2
+.na
+\fBDCAM1394_SUBPARAM_U_VALUE\fR
+.ad
+.RS 29n
+U or B component of the white balance.
+.RE
+
+.sp
+.ne 2
+.na
+\fBDCAM1394_SUBPARAM_V_VALUE\fR
+.ad
+.RS 29n
+V or R component of the white balance.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fBDCAM1394_PARAM_HUE\fR
+.ad
+.sp .6
+.RS 4n
+Query or control a camera feature. This feature queries or controls the hue of
+the camera. The subparams supported by this feature are described under
+DCAM1394_PARAM_BRIGHTNESS.
+.RE
+
+.sp
+.ne 2
+.na
+\fBDCAM1394_PARAM_SATURATION\fR
+.ad
+.sp .6
+.RS 4n
+Query or control a camera feature. This feature queries or controls the
+saturation of the camera. The subparams supported by this feature are described
+under DCAM1394_PARAM_BRIGHTNESS.
+.RE
+
+.sp
+.ne 2
+.na
+\fBDCAM1394_PARAM_GAMMA\fR
+.ad
+.sp .6
+.RS 4n
+Query or control a camera feature. This feature queries or controls the gamma
+of the camera. The subparams supported by this feature are described under
+DCAM1394_PARAM_BRIGHTNESS.
+.RE
+
+.sp
+.ne 2
+.na
+\fBDCAM1394_PARAM_SHUTTER\fR
+.ad
+.sp .6
+.RS 4n
+Query or control a camera feature. This feature queries or controls the
+sharpness of the camera. The subparams supported by this feature are described
+under DCAM1394_PARAM_BRIGHTNESS.
+.RE
+
+.sp
+.ne 2
+.na
+\fBDCAM1394_PARAM_GAIN\fR
+.ad
+.sp .6
+.RS 4n
+Query or control a camera feature. This feature queries or controls the gain of
+the camera. The subparams supported by this feature are described under
+DCAM1394_PARAM_BRIGHTNESS.
+.RE
+
+.sp
+.ne 2
+.na
+\fBDCAM1394_PARAM_IRIS\fR
+.ad
+.sp .6
+.RS 4n
+Query or control a camera feature. This feature queries or controls the iris of
+the camera. The subparams supported by this feature are described under
+DCAM1394_PARAM_BRIGHTNESS.
+.RE
+
+.sp
+.ne 2
+.na
+\fBDCAM1394_PARAM_FOCUS\fR
+.ad
+.sp .6
+.RS 4n
+Query or control a camera feature. This feature queries or controls the focus
+of the camera. The subparams supported by this feature are described under
+DCAM1394_PARAM_BRIGHTNESS.
+.RE
+
+.sp
+.ne 2
+.na
+\fBDCAM1394_PARAM_ZOOM\fR
+.ad
+.sp .6
+.RS 4n
+Query or control a camera feature. This feature queries or controls the zoom of
+the camera. The subparams supported by this feature are described under
+DCAM1394_PARAM_BRIGHTNESS.
+.RE
+
+.sp
+.ne 2
+.na
+\fBDCAM1394_PARAM_PAN\fR
+.ad
+.sp .6
+.RS 4n
+Query or control a camera feature. This feature queries or controls the pan of
+the camera. The subparams supported by this feature are described under
+DCAM1394_PARAM_BRIGHTNESS.
+.RE
+
+.sp
+.ne 2
+.na
+\fBDCAM1394_PARAM_TILT\fR
+.ad
+.sp .6
+.RS 4n
+Query or control a camera feature. This feature queries or controls the tilt of
+the camera.The subparams supported by this feature are described under
+DCAM1394_PARAM_BRIGHTNESS.
+.RE
+
+.SH DEVICE SPECIAL FILES
+.ne 2
+.na
+\fB/dev/dcam\fIN\fR\fR
+.ad
+.RS 17n
+Device node for isochronous input from camera.
+.RE
+
+.sp
+.ne 2
+.na
+\fB/dev/dcamctl\fIN\fR\fR
+.ad
+.RS 17n
+Device node for camera control.
+.RE
+
+.SH FILES
+.ne 2
+.na
+\fB/kernel/drv/sparcv9/dcam1394\fR
+.ad
+.sp .6
+.RS 4n
+Device driver (SPARC)
+.RE
+
+.sp
+.ne 2
+.na
+\fB/kernel/drv/amd64/dcam1394\fR
+.ad
+.sp .6
+.RS 4n
+Device driver (x86)
+.RE
+
+.SH ATTRIBUTES
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.BR hci1394 (4D),
+.BR attributes (7)
+.sp
+.LP
+\fI1394 Trade Association Digital Camera Specification, Version 1.04 - 1996\fR
+.sp
+.LP
+\fIIEEE Std 1394-2000 Standard for a High Performance Serial Bus - 2000\fR
diff --git a/usr/src/man/man4d/devinfo.4d b/usr/src/man/man4d/devinfo.4d
new file mode 100644
index 0000000000..e93e7faf22
--- /dev/null
+++ b/usr/src/man/man4d/devinfo.4d
@@ -0,0 +1,42 @@
+'\" te
+.\" Copyright (c) 1998, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH DEVINFO 4D "Jan 9, 1998"
+.SH NAME
+devinfo \- device information driver
+.SH DESCRIPTION
+.sp
+.LP
+The \fBdevinfo\fR driver is a private mechanism used by the
+\fBlibdevinfo\fR(3LIB) interfaces to access kernel device configuration data
+and to guarantee data consistency.
+.SH FILES
+.sp
+.LP
+\fB/devices/pseudo/devinfo@0:devinfo\fR
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Stability Level Private
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR libdevinfo (3LIB),
+.BR attributes (7)
+.sp
+.LP
+\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man4d/dm2s.4d b/usr/src/man/man4d/dm2s.4d
new file mode 100644
index 0000000000..173f4556f2
--- /dev/null
+++ b/usr/src/man/man4d/dm2s.4d
@@ -0,0 +1,40 @@
+'\" te
+.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH DM2S 4D "Apr 6, 2006"
+.SH NAME
+dm2s \- loadable STREAMS driver
+.SH SYNOPSIS
+.LP
+.nf
+dm2s@0
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBdm2s\fR module is a loadable STREAMS driver that provides synchronous
+serial communication support for DSCP communication. \fBdm2s\fR is specific to
+the SPARC Enterprise Server family.
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Private
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7)
diff --git a/usr/src/man/man4d/dmfe.4d b/usr/src/man/man4d/dmfe.4d
new file mode 100644
index 0000000000..17aa594f32
--- /dev/null
+++ b/usr/src/man/man4d/dmfe.4d
@@ -0,0 +1,200 @@
+'\" te
+.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH DMFE 4D "Sep 17, 2007"
+.SH NAME
+dmfe \- Davicom Fast Ethernet driver for Davicom DM9102A
+.SH SYNOPSIS
+.LP
+.nf
+/kernel/drv/sparcv9/dmfe
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBdmfe\fR Ethernet device provides 100Base-TX networking interfaces using
+the Davicom DM9102A chip, which incorporates its own internal transceiver.
+.sp
+.LP
+The \fBdmfe\fR driver functions include controller initialization, frame
+transmit and receive, promiscuous and multicast support, and error recovery and
+reporting. Multiple controllers installed within the system are supported by
+the driver.
+.sp
+.LP
+The 100Base-TX standard specifies an auto-negotiation protocol to automatically
+select the mode and speed of operation. The internal transceiver is capable of
+performing auto-negotiation with the remote-end of the link (link partner) and
+receives the capabilities of the remote end. It selects the highest common
+denominator mode of operation based on the priorities. The internal transceiver
+also supports a forced-mode of operation under which the driver selects the
+operational mode.
+.SH APPLICATION PROGRAMMING INTERFACE
+.sp
+.LP
+The \fB/dev/dmfe\fR cloning character-special device is used to access all
+Davicom DM9102A devices installed in the system.
+.sp
+.LP
+You must send an explicit DL_ATTACH_REQ message to associate the opened stream
+with a particular device (ppa). The ppa ID is interpreted as an unsigned
+integer data type and indicates the corresponding device instance (unit)
+number. If the ppa field value does not correspond to a valid device instance
+number for this system, an error (DL_ERROR_ACK) is returned. The device is
+initialized on first attach and de-initialized (stopped) at last detach.
+.sp
+.LP
+The values returned by the driver in the DL_INFO_ACK primitive in response to a
+DL_INFO_REQ are as follows:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Maximum SDU is 1500 (ETHERMTU - defined in \fBsys/ethernet.h\fR).
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Minimum SDU is 0.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+DLSAP address length is 8.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+MAC type is DL_ETHER.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The sap length value is -2, meaning the physical address component is
+followed immediately by a 2-byte sap component within the DLSAP address.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The broadcast address value is the Ethernet/IEEE broadcast address
+(FF:FF:FF:FF:FF:FF).
+.RE
+.sp
+.LP
+Once in the DL_ATTACHED state, you must send a DL_BIND_REQ to associate a
+particular Service Access Point (SAP) with the stream.
+.SH CONFIGURATION
+.sp
+.LP
+By default, the \fBdmfe\fR driver performs auto-negotiation to select the speed
+and mode of the link. Link speed and mode can be 100 Mbps (full or half-duplex)
+or 10 Mbps (full or half-duplex) as described in the 100Base-TX standard.
+.sp
+.LP
+The auto-negotiation protocol automatically selects speed mode (either 100 Mbps
+or 10 Mbps) and operation mode (either full-duplex or half-duplex) as the
+highest common denominator supported by both link partners. Because the
+\fBdmfe\fR device supports all modes, this effectively selects the
+highest-throughput mode supported by the other device.
+.sp
+.LP
+Alternatively, you can explicitly specify the link parameters by adding entries
+to the \fBdmfe\fR driver configuration file (\fB/kernel/drv/dmfe.conf\fR). You
+can set the \fBspeed\fR parameter to 10 or 100 to force \fBdmfe\fR devices to
+operate at the specified speed. Additionally, you can set the full-duplex
+parameter to 0 or 1 to disable or force full-duplex operation, respectively.
+.sp
+.LP
+Note that specifying either "speed" or "full-duplex" explicitly disables
+auto-negotiation. To enable the driver to determine the appropriate setting for
+each parameter, you should always set both parameters. If it is necessary to
+force either speed or duplex setting (for example, because the \fBdmfe\fR
+device is connected to an ancient device or hub that does not support
+auto-negotiation), both parameters should be explicitly specified to match the
+requirements of the external device.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/dev/dmfe\fR\fR
+.ad
+.RS 28n
+Character special device
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/dmfe\fR\fR
+.ad
+.RS 28n
+32-bit kernel module (x86)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/sparcv9/dmfe\fR\fR
+.ad
+.RS 28n
+64-bit kernel module (SPARC)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/dmfe\fR\fR
+.ad
+.RS 28n
+64-bit kernel module (x86)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/dmfe.conf\fR\fR
+.ad
+.RS 28n
+\fBdmfe\fR configuration file
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture SPARC, x86
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR gld (4D),
+.BR streamio (4I),
+.BR dlpi (4P),
+.BR attributes (7)
+.sp
+.LP
+\fIWriting Device Drivers\fR
+.sp
+.LP
+\fISTREAMS Programming Guide\fR
+.sp
+.LP
+\fINetwork Interfaces Programmer's Guide\fR
diff --git a/usr/src/man/man4d/dnet.4d b/usr/src/man/man4d/dnet.4d
new file mode 100644
index 0000000000..ac7fb48360
--- /dev/null
+++ b/usr/src/man/man4d/dnet.4d
@@ -0,0 +1,191 @@
+'\" te
+.\" All Rights Reserved. Copyright (c) 2000, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH DNET 4D "Oct 20, 2000"
+.SH NAME
+dnet \- Ethernet driver for DEC 21040, 21041, 21140 Ethernet cards
+.SH SYNOPSIS
+.LP
+.nf
+\fB/kernel/drv/dnet\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBdnet\fR Ethernet driver is a multithreaded, loadable, clonable,
+\fBSTREAMS GLD\fR driver. Multiple controllers installed within the system are
+supported by the driver. The \fBdnet\fR driver functions include controller
+initialization, frame transmit and receive, functional addresses, promiscuous
+and multicast support, and error recovery and reporting.
+.SH APPLICATION PROGRAMMING INTERFACE
+.sp
+.LP
+The cloning character-special device, \fB/dev/dnet\fR, is used to access all
+DEC 21040/21041/21140 devices installed in the system.
+.sp
+.LP
+The \fBdnet\fR driver is dependent on \fB/kernel/misc/gld\fR, a loadable kernel
+module that provides the \fBdnet\fR driver with the \fBDLPI\fR and
+\fBSTREAMS\fR functionality required of a \fBLAN\fR driver. See \fBgld\fR(4D)
+for more details on the primitives supported by the driver.
+.sp
+.LP
+The device is initialized on the first attach and de-initialized (stopped) on
+the last detach.
+.sp
+.LP
+The values returned by the driver in the \fBDL_INFO_ACK\fR primitive in
+response to a \fBDL_INFO_REQ\fR from the user are as follows:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The maximum \fBSDU\fR is \fB1500\fR (\fBETHERMTU\fR - defined in
+<\fBsys/ethernet.h\fR>).
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The minimum \fBSDU\fR is \fB0\fR.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The \fBDLSAP\fR address length is \fB8\fR.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The \fBMAC\fR type is \fBDL_ETHER\fR.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The \fBsap\fR length value is \fB\(mi2\fR, meaning the physical address
+component is followed immediately by a 2-byte \fBsap\fR component within the
+\fBDLSAP\fR address.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The broadcast address value is the Ethernet/IEEE broadcast address
+(\fBFF:FF:FF:FF:FF:FF\fR).
+.RE
+.sp
+.LP
+Once in the \fBDL_ATTACHED\fR state, the user must send a \fBDL_BIND_REQ\fR to
+associate a particular Service Access Point (SAP) with the stream.
+.SH PRECONFIGURATION
+.sp
+.LP
+The PCI configuration process varies from system to system. Follow the
+instructions provided by the vendor.
+.SS "Known Problems and Limitations"
+.RS +4
+.TP
+.ie t \(bu
+.el o
+On multiport cards (exception: Osicom (Rockwell) RNS2340), the first port is
+the top port. (On the Osicom RNS2340, the first port is the bottom port.)
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+If the \fBdnet\fR driver fails to determine the correct speed and duplex mode
+resulting in a corresponding drop in performance, set the speed and duplex mode
+using the \fBdnet.conf\fR file.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The \fBdnet\fR driver incorrectly counts carrier lost or no carrier errors
+while in full-duplex mode. There is no carrier signal present when in
+full-duplex mode and it should not be counted as an error.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Version 4 SROM formats are not supported.
+.RE
+.SH CONFIGURATION
+.sp
+.LP
+The \fB/kernel/drv/dnet.conf\fR file supports the following options:
+.sp
+.ne 2
+.na
+\fB\fBfull-duplex\fR\fR
+.ad
+.RS 15n
+For full duplex operation use \fBfull-duplex=1\fR, for half duplex use
+\fBfull-duplex=0\fR. Half-duplex operation gives better results on older 10mbit
+networks.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBspeed\fR\fR
+.ad
+.RS 15n
+For 10mbit operation use \fBspeed=10\fR, for 100mbit operation use
+\fBspeed=100\fR. Certain 21140 based cards will operate at either speed. Use
+the speed property to override the 100mbit default in this case.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/dev/dnet\fR\fR
+.ad
+.RS 25n
+character special device
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/dnet.conf\fR\fR
+.ad
+.RS 25n
+\fBdnet\fR configuration file
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture x86
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+\fBattributes\fR(7), \fBdlpi\fR(4P), \fBgld\fR(4D) \fBstreamio\fR(4I)
+.sp
+.LP
+\fIWriting Device Drivers\fR
+.sp
+.LP
+ \fISTREAMS Programming Guide\fR
diff --git a/usr/src/man/man4d/dr.4d b/usr/src/man/man4d/dr.4d
new file mode 100644
index 0000000000..166c8d159c
--- /dev/null
+++ b/usr/src/man/man4d/dr.4d
@@ -0,0 +1,35 @@
+'\" te
+.\" Copyright 2019 Peter Tribble.
+.\" Copyright (c) 2001 Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH DR 4D "Jun 13, 2019"
+.SH NAME
+dr, drmach \- dynamic reconfiguration driver
+.SH SYNOPSIS
+.LP
+.nf
+\fBdr\fR
+.fi
+
+.LP
+.nf
+\fBdrmach\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+The dynamic reconfiguration (DR) driver consists of a platform-independent
+driver and a platform-specific module. The DR driver uses standard features of
+the Solaris operating environment whenever possible to control DR operations
+and calls the platform specific module as needed. The DR driver creates minor
+nodes in the file system that serve as attachment points for DR operations.
+.sp
+.LP
+The DR driver provides a pseudo-driver interface to sequence attach and detach
+operations on system boards using file system entry points referred to as
+"attachment points." The attachment point form depends on the platform.
+.SH SEE ALSO
+.LP
+\fBioctl\fR(2), \fBlibcfgadm(3LIB)\fR
diff --git a/usr/src/man/man4d/dtrace.4d b/usr/src/man/man4d/dtrace.4d
new file mode 100644
index 0000000000..4794583b32
--- /dev/null
+++ b/usr/src/man/man4d/dtrace.4d
@@ -0,0 +1,43 @@
+'\" te
+.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH DTRACE 4D "Dec 10, 2017"
+.SH NAME
+dtrace \- DTrace dynamic tracing facility
+.SH DESCRIPTION
+.LP
+The \fBdtrace\fR driver provides the dynamic instrumentation and tracing
+facilities for the DTrace software, as well as the built-in \fBdtrace\fR
+provider. The \fBdtrace\fR driver is not a public interface and you access the
+instrumentation offered by this provider through DTrace tools such as
+\fBdtrace\fR(8). Refer to the \fIDynamic Tracing Guide\fR for a
+description of the public documented interfaces available for the DTrace
+facility and dtrace provider probes.
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for a description of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Private
+.TE
+
+.SH SEE ALSO
+.LP
+.BR libdtrace (3LIB),
+.BR attributes (7),
+.BR dtrace (8)
+.sp
+.LP
+\fIDynamic Tracing Guide\fR:
+.sp
+.LP
+https://illumos.org/books/dtrace/
diff --git a/usr/src/man/man4d/e1000g.4d b/usr/src/man/man4d/e1000g.4d
new file mode 100644
index 0000000000..7dbbcdc80f
--- /dev/null
+++ b/usr/src/man/man4d/e1000g.4d
@@ -0,0 +1,213 @@
+.\"
+.\" This file and its contents are supplied under the terms of the
+.\" Common Development and Distribution License ("CDDL"), version 1.0.
+.\" You may only use this file in accordance with the terms of version
+.\" 1.0 of the CDDL.
+.\"
+.\" A full copy of the text of the CDDL should have accompanied this
+.\" source. A copy of the CDDL is also available via the Internet at
+.\" http://www.illumos.org/license/CDDL.
+.\"
+.\"
+.\" Copyright 2020 Robert Mustacchi
+.\" Copyright 2022 Oxide Computer Company
+.\"
+.Dd January 17, 2022
+.Dt E1000G 4D
+.Os
+.Sh NAME
+.Nm e1000g
+.Nd Intel 1 Gigabit Client Ethernet Controller
+.Sh SYNOPSIS
+.Pa /dev/net/e1000g*
+.Sh DESCRIPTION
+The
+.Nm
+driver is a GLDv3 NIC driver for Intel 1 Gigabit Ethernet devices which
+are often found as discrete PCI and PCI expresss add-on-cards and built
+into many Intel chipsets and platforms.
+.Pp
+On most models, the device driver supports transmit and receive
+checksumming, 9000 byte jumbo frames, large send offload
+.Pq LSO ,
+LED control and Ethernet Pause frames.
+.Pp
+For each device supported by the
+.Nm
+driver, a character special-file will be created for each instance.
+The first instance would have id 0 and would be named
+.Sy e1000g0
+and found in the file system at
+.Pa /dev/net/e1000g0 .
+This device node supports the Data Link Provider Interface
+.Pq DLPI
+which is documented in
+.Xr dlpi 4P .
+.Xr libdlpi 3LIB
+provides a more usable interface on top of that.
+.Pp
+For administrative control, the device can be manipulated through the
+.Xr dladm 8
+utility.
+.Pp
+The following Ethernet controllers are supported by this driver:
+.Bl -bullet
+.It
+82542 Gigabit Ethernet Controller
+.It
+82543GC Gigabit Ethernet Controller
+.It
+82544EI Gigabit Ethernet Controller
+.It
+82544GC Gigabit Ethernet Controller
+.It
+82540EM Gigabit Ethernet Controller
+.It
+82540EP Gigabit Ethernet Controller
+.It
+8254EM Gigabit Ethernet Controller
+.It
+82545GM Gigabit Ethernet Controller
+.It
+82546GB Gigabit Ethernet Adapter
+.It
+82541EI Gigabit Ethernet Controller
+.It
+82541ER Gigabit Ethernet Controller
+.It
+82541GI Gigabit Ethernet Controller
+.It
+82547EI Gigabit Ethernet Controller
+.It
+82547GI Gigabit Ethernet Controller
+.It
+82571EB Gigabit Ethernet Controller
+.It
+82571GB Gigabit Ethernet Controller
+.It
+82571PT Gigabit PT Quad Port Server ExpressModule
+.It
+82572EI Gigabit Ethernet Controller
+.It
+82573E Gigabit Ethernet Controller
+.It
+82573V Gigabit Ethernet Controller
+.It
+82573L Gigabit Ethernet Controller
+.It
+82574L Gigabit Ethernet Controller
+.It
+82583V Gigabit Ethernet Controller
+.It
+80003ES2LAN Gigabit Ethernet Controller
+.It
+82566MM Gigabit Network Connection
+.It
+82566DM Gigabit Network Connection v1-2
+.It
+82566DC Gigabit Network Connection v1-2
+.It
+82562V 10/100 Network Connection v1-2
+.It
+82562GT 10/100 Network Connection v1-2
+.It
+82562G 10/100 Network Connection v1-2
+.It
+82566MC Gigabit Network Connection
+.It
+82567LM v1-v4 Gigabit Network Connection
+.It
+82567LF v1-v3 Gigabit Network Connection
+.It
+82567V v1-v4 Gigabit Network Connection
+.It
+82577LM Gigabit Network Connection
+.It
+82577LC Gigabit Network Connection
+.It
+82578DM Gigabit Ethernet PHY
+.It
+82578DC Gigabit Ethernet PHY
+.It
+82579LM Gigabit Network Connection
+.It
+82579V Gigabit Network Connection
+.It
+Ethernet Connection I217-LM
+.It
+Ethernet Connection I217-V
+.It
+Ethernet Connection I218-LM v1-3
+.It
+Ethernet Connection I218-V v1-3
+.It
+Ethernet Connection I219-LM v1-23
+.It
+Ethernet Connection I219-V v1-23
+.El
+.Pp
+The following specific devices are supported by this driver:
+.Bl -bullet
+.It
+Gigabit CT2 Desktop Adapter
+.It
+PRO/1000 Gigabit Server Adapter
+.It
+PRO/1000 CT Desktop, Mobile, and Network Connection
+.It
+PRO/1000 F Server Adapter
+.It
+PRO/1000 GT Desktop, Server, and Quad Port Server Adapter
+.It
+PRO/1000 MB Server and Dual Port Server Connection
+.It
+PRO/1000 MF Server and Dual Port Server Adapter
+.It
+PRO/1000 MT Desktop, Mobile, Network, Server, Dual Port Server, and Quad
+Port Server Adapter
+.It
+PRO/1000 P Dual Port Server Adapter
+.It
+PRO/1000 PB Dual Port Server Connection
+.It
+PRO/1000 PF Server, Dual Port Server and Quad Port Server Adapter
+.It
+PRO/1000 PL Network Connection
+.It
+PRO/1000 PT Desktop, Server, Dual Port Server, Quad Port Server, and Quad Port LP Server
+Adapter
+.It
+PRO/1000 T Desktop and Server Adapter
+.It
+PRO/1000 XF Server Adapter
+.It
+PRO/1000 XT Server and Desktop Adapter
+.El
+.Pp
+The
+.Xr igb 4D
+driver supports many other Intel Gigabit parts.
+.Sh CONFIGURATION
+The
+.Pa e1000g.conf
+file contains some user configurable parameters, the format of which
+is documented in
+.Xr driver.conf 5 .
+Generally, the use of
+.Xr dladm 8
+is recommended over editing the configuration file.
+.Sh FILES
+.Bl -tag -width Pa
+.It Pa /kernel/drv/amd64/e1000g
+Device driver (x86)
+.It Pa /kernel/drv/sparcv9/e1000g
+Device driver (SPARC)
+.It Pa /kernel/drv/e1000g.conf
+Driver configuration file
+.El
+.Sh SEE ALSO
+.Xr libdlpi 3LIB ,
+.Xr igb 4D ,
+.Xr dlpi 4P ,
+.Xr driver.conf 5 ,
+.Xr dladm 8
diff --git a/usr/src/man/man4d/ecpp.4d b/usr/src/man/man4d/ecpp.4d
new file mode 100644
index 0000000000..ae01bd380a
--- /dev/null
+++ b/usr/src/man/man4d/ecpp.4d
@@ -0,0 +1,473 @@
+'\" te
+.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH ECPP 4D "May 17, 2020"
+.SH NAME
+ecpp \- IEEE 1284 compliant parallel port driver
+.SH SYNOPSIS
+.nf
+#include <sys/types.h>
+.fi
+
+.LP
+.nf
+#include <sys/ecppio.h>
+.fi
+
+.LP
+.nf
+ecpp@unit-address
+.fi
+
+.SH DESCRIPTION
+The \fBecpp\fR driver provides a bi-directional interface to \fIIEEE 1284\fR
+compliant devices as well as a forward single-directional interface to
+Centronics devices. In addition to the Centronics protocol, the \fBecpp\fR
+driver supports the \fIIEEE 1284\fR Compatibility, Nibble, and ECP protocols.
+\fBECPP_COMPAT_MODE\fR and \fBECPP_CENTRONICS\fR modes of operation have
+logically identical handshaking protocols, however devices that support
+\fBECPP_COMPAT_MODE\fR are \fIIEEE 1284\fR compliant devices. \fIIEEE 1284\fR
+compliant devices support at least \fBECPP_COMPAT_MODE\fR and
+\fBECPP_NIBBLE_MODE\fR. Centronics devices support only \fBECPP_CENTRONICS\fR
+mode.
+.sp
+.LP
+By default, \fBECPP_COMPAT_MODE\fR devices have a strobe handshaking pulse
+width of 500ns. For this mode, forward data transfers are conducted by DMA. By
+default, the strobe pulse width for \fBECPP_CENTRONICS\fR devices is two
+microseconds. Forward transfers for these devices are managed through PIO. The
+default characteristics for both \fBECPP_COMPAT_MODE\fR and
+\fBECPP_CENTRONICS\fR devices may be changed through tunable variables defined
+in \fBecpp.conf\fR.
+.sp
+.LP
+The \fBecpp\fR driver is an \fIexclusive-use\fR device, meaning that if the
+device is already open, subsequent opens fail with \fBEBUSY\fR.
+.SS "Default Operation"
+Each time the \fBecpp\fR device is opened, the device is marked as \fBEBUSY\fR
+and the configuration variables are set to their default values. The
+\fBwrite_timeout\fR period is set to 90 seconds.
+.sp
+.LP
+The driver sets the mode variable according to the following algorithm: The
+driver initially attempts to negotiate the link into \fBECPP_ECP_MODE\fR during
+\fBopen\fR(2). If it fails, the driver tries to negotiate into
+\fBECPP_NIBBLE_MODE\fR mode. If that fails, the driver operates in
+\fBECPP_CENTRONICS\fR mode. Upon successfully opening the device, \fIIEEE
+1284\fR compliant devices will be left idle in either reverse idle phase of
+\fBECPP_ECP_MODE\fR or in \fBECPP_NIBBLE_MODE\fR. Subsequent calls to
+\fBwrite\fR(2) invokes the driver to move the link into either
+\fBECPP_COMPAT_MODE\fR or the forward phase of \fBECPP_ECP_MODE\fR. After the
+transfer completes, the link returns to idle state.
+.sp
+.LP
+The application may attempt to negotiate the device into a specific mode or set
+the \fBwrite_timeout\fR values through the \fBECPPIOC_SETPARMS\fR
+\fBioctl\fR(2) call. For mode negotiation to be successful, both the host
+workstation and the peripheral must support the requested mode.
+.SS "Tunables"
+Characteristics of the \fBecpp\fR driver may be tuned by the variables
+described in \fB/kernel/drv/ecpp.conf\fR. These variables are read by the
+kernel during system startup. To tune the variables, edit the \fBecpp.conf\fR
+file and invoke \fBupdate_drv\fR(8) to have the kernel read the file again.
+.sp
+.LP
+Some Centronics peripherals and certain \fIIEEE 1284\fR compatible peripherals
+will not operate with the parallel port operating in a fast handshaking mode.
+If printing problems occur, set "fast-centronics" and "fast-1284-compatible" to
+"false." See \fB/kernel/drv/ecpp.conf\fR for more information.
+.SS "Read/Write Operation"
+The \fBecpp\fR driver is a full duplex STREAMS device driver. While an
+application is writing to an \fIIEEE 1284\fR compliant device, another thread
+may read from it.
+.SS "Write Operation"
+A \fBwrite\fR(2) operation returns the number of bytes successfully written to
+the stream head. If a failure occurs while a Centronics device is transferring
+data, the content of the status bits will be captured at the time of the error
+and can be retrieved by the application program using the \fBBPPIOC_GETERR\fR
+\fBioctl\fR(2) call. The captured status information is overwritten each time
+an attempted transfer or a \fBBPPIOC_TESTIO\fR \fBioctl\fR(2) occurs.
+.SS "Read Operation"
+If a failure or error condition occurs during a \fBread\fR(2), the number of
+bytes successfully read is returned (short read). When attempting to read a
+port that has no data currently available, \fBread\fR(2) returns \fB0\fR if
+\fBO_NDELAY\fR is set. If \fBO_NONBLOCK\fR is set, \fBread\fR(2) returns
+\fB-1\fR and sets errno to \fBEAGAIN.\fR If \fBO_NDELAY\fR and \fBO_NONBLOCK\fR
+are clear, \fBread\fR(2) blocks until data become available.
+.SH IOCTLS
+The \fBioctl\fR(2) calls described below are supported. Note that when
+\fBecpp\fR is transferring data, the driver waits until the data has been sent
+to the device before processing the \fBioctl\fR(2) call.
+.sp
+.LP
+The ecpp driver supports \fBprnio\fR(4I) interfaces.
+.LP
+Note -
+.sp
+.RS 2
+The \fBPRNIOC_RESET\fR command toggles the \fBnInit\fR signal for 2 ms,
+followed by default negotiation.
+.RE
+.sp
+.LP
+The following \fBioctl\fR(2) calls are supported for backward compatibility and
+are not recommended for new applications:
+.sp
+.ne 2
+.na
+\fB\fBECPPIOC_GETPARMS\fR\fR
+.ad
+.RS 20n
+Get current transfer parameters. The argument is a pointer to a struct
+\fBecpp_transfer_parms\fR. See below for a description of the elements of this
+structure. If no parameters have been configured since the device was opened,
+the structure will be set to its default configuration. See Default Operation
+above for more information.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBECPPIOC_SETPARMS\fR\fR
+.ad
+.RS 20n
+Set transfer parameters. The argument is a pointer to a struct
+\fBecpp_transfer_parms\fR. If a parameter is out of range, \fBEINVAL\fR is
+returned. If the peripheral or host device cannot support the requested mode,
+\fBEPROTONOSUPPORT\fR is returned. See below for a description of
+\fBecpp_transfer_parms\fR and its valid parameters.
+.sp
+The Transfer Parameters Structure is defined in <\fBsys/ecppio.h\fR>.
+.sp
+.in +2
+.nf
+struct ecpp_transfer_parms {
+ int write_timeout;
+ int mode;
+};
+.fi
+.in -2
+
+The \fBwrite_timeout\fR field is set to the value of
+\fBecpp-transfer-timeout\fR specified in the \fBecpp.conf\fR. The
+\fBwrite_timeout\fR field specifies how long the driver will wait for the
+peripheral to respond to a transfer request. The value must be greater than
+\fB0\fR and less than \fBECPP_MAX_TIMEOUT.\fR All other values are out of
+range.
+.sp
+The mode field reflects the \fIIEEE 1284\fR mode to which the parallel port is
+currently configured. The mode may be set to one of the following values only:
+\fBECPP_CENTRONICS\fR, \fBECPP_COMPAT_MODE\fR, \fBECPP_NIBBLE_MODE\fR,
+\fBECPP_ECP_MODE\fR. All other values are invalid. If the requested mode is not
+supported, \fBECPPIOC_SETPARMS\fR will return \fBEPROTONOSUPPORT\fR and the
+mode will be set to \fBECPP_CENTRONICS\fR mode. Afterwards, the application may
+change the mode back to the original mode with \fBECPPIOC_SETPARMS\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBECPPIOC_GETDEVID\fR\fR
+.ad
+.RS 20n
+This ioctl gets the \fIIEEE 1284\fR device ID from the peripheral in specified
+mode. Currently, the device ID can be retrieved only in Nibble mode. A pointer
+to the structure defined in \fB<sys/ecppsys.h>\fR must be passed as an
+argument.
+.sp
+The 1284 device ID structure:
+.sp
+.in +2
+.nf
+struct ecpp_device_id {
+ int mode; /* mode to use for reading device id */
+ int len; /* length of buffer */
+ int rlen; /* actual length of device id string */
+ char *addr; /* buffer address */
+};
+.fi
+.in -2
+
+The mode is the \fIIEEE 1284\fR mode into which the port will be negotiated to
+retrieve device ID information. If the peripheral or host do not support the
+mode, \fBEPROTONOSUPPORT\fR is returned. Applications should set mode to
+\fBECPP_NIBBLE_MODE\fR. \fBlen\fR is the length of the buffer pointed to by
+\fBaddr\fR. \fBrlen\fR is the actual length of the device ID string returned
+from the peripheral. If the returned \fBrlen\fR is greater than \fBlen\fR, the
+application can call \fBECPPIOC_GETDEVID\fR again with a buffer length equal or
+greater than \fBrlen\fR. Note that the two length bytes of the \fIIEEE 1284\fR
+device ID are not taken into account and are not returned in the user buffer.
+.sp
+After \fBECPPIOC_GETDEVID\fR successfully completes, the driver returns the
+link to \fBECPP_COMPAT_MODE\fR. The application is responsible for determining
+the previous mode the link was operating in and returning the link to that
+mode.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBBPPIOC_TESTIO\fR\fR
+.ad
+.RS 20n
+Tests the forward transfer readiness of a peripheral operating in Centronics or
+Compatibility mode.
+.sp
+\fBTESTIO\fR determines if the peripheral is ready to receive data by checking
+the open flags and the Centronics status signals. If the current mode of the
+device is \fBECPP_NIBBLE_MODE\fR, the driver negotiates the link into
+\fBECPP_COMPAT_MODE\fR, check the status signals and then return the link to
+\fBECPP_NIBBLE_MODE\fR mode. If the current mode is \fBECPP_CENTRONICS\fR or
+\fBECPP_COMPAT_MODE\fR, \fBTESTIO\fR examines the Centronics status signals in
+the current mode. To receive data, the device must have the \fBnErr\fR and
+\fBSelect\fR signals asserted and must not have the \fBPE\fR and \fBBusy\fR
+signals asserted. If \fBecpp\fR is transferring data, \fBTESTIO\fR waits until
+the previous data sent to the driver is delivered before executing
+\fBTESTIO\fR. However if an error condition occurs while a \fBTESTIO\fR is
+waiting, \fBTESTIO\fR returns immediately. If \fBTESTIO\fR determines that the
+conditions are ok, \fB0\fR is returned. Otherwise, \fB-1\fR is returned, errno
+is set to \fBEIO\fR and the state of the status pins is captured. The captured
+status can be retrieved using the \fBBPPIOC_GETERR\fR \fBioctl\fR(2) call. The
+\fBtimeout_occurred\fR and \fBbus_error\fR fields will never be set by this
+\fBioctl\fR(2).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBBPPIOC_GETERR\fR\fR
+.ad
+.RS 20n
+Get last error status. The argument is a pointer to a \fBstruct
+bpp_error_status\fR defined in \fB<sys/bpp_io.h>\fR header file. The error
+status structure is:
+.sp
+.in +2
+.nf
+struct bpp_error_status {
+ char timeout_occurred; /* 1=timeout */
+ char bus_error; /* not used */
+ uchar_t pin_status; /* status of pins which
+ /* could cause error */
+};
+.fi
+.in -2
+
+The pin_status field indicates possible error conditions. The valid bits for
+pin_status are: \fBBPP_ERR_ERR\fR, \fBBPP_SLCT_ERR\fR, \fBBPP_PE_ERR\fR,
+\fBBPP_BUSY_ERR\fR. A set bit indicates that the associated pin is asserted.
+.sp
+This structure indicates the status of all the appropriate status bits at the
+time of the most recent error condition during a \fBwrite\fR(2) call, or the
+status of the bits at the most recent \fBBPPIOC_TESTIO\fR \fBioctl\fR(2)call.
+.sp
+\fBpin_status\fR indicates possible error conditions under
+\fBECPP_CENTRONICS\fR or \fBECPP_COMPAT_MODE\fR. Under these modes, the state
+of the status pins will indicate the state of the device. For instance, many
+Centronics printers lower the \fBnErr\fR signal when a paper jam occurs. The
+behavior of the status pins depends on the device. Additional status
+information may be retrieved through the backchannel.
+.sp
+The \fBtimeout_occurred\fR value is set when a timeout occurs during
+\fBwrite\fR(2). \fBbus_error\fR is not used in this interface.
+.RE
+
+.sp
+.LP
+The following ioctls are used to directly read and write the parallel port
+status and control signals. If the current mode of the device is
+\fBECPP_ECP_MODE\fR or \fBECPP_NIBBLE_MODE\fR, the driver negotiates the link
+into \fBECPP_COMPAT_MODE\fR, gets or sets the registers and then returns the
+link to \fBECPP_NIBBLE_MODE\fR. If the current mode is \fBECPP_CENTRONICS\fR or
+\fBECPP_COMPAT_MODE\fR, these ioctls will get/set the register values in the
+current mode.
+.sp
+.ne 2
+.na
+\fB\fBECPPIOC_GETREGS\fR\fR
+.ad
+.RS 19n
+Read register values. The argument is a pointer to a \fBstruct ecpp_regs\fR.
+See below for a description of this structure.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBECPPIOC_SETREGS\fR\fR
+.ad
+.RS 19n
+Set \fBecpp\fR register values. The argument is a pointer to a \fBstruct
+ecpp_regs\fR. See below for a description of this structure. If a parameter is
+out of range, \fBEINVAL\fR is returned.
+.sp
+The Port Register Structure is defined in <\fBsys/ecppio.h\fR>.
+.sp
+.in +2
+.nf
+struct ecpp_regs {
+ uchar dsr; /* status reg */
+ u_char dcr; /* control reg */
+};
+.fi
+.in -2
+
+The status register is read-only. The \fBECPPIOC_SETREGS\fR ioctl has no affect
+on this register. Valid bit values for dsr are: \fBECPP_nERR\fR,
+\fBECPP_SLCT\fR, \fBECPP_PE\fR, \fBECPP_nACK\fR, \fBECPP_nBUSY\fR. All other
+bits are reserved and always return \fB1\fR.
+.sp
+The control register is read/write. Valid bit values for dcr are:
+\fBECPP_STB\fR, \fBECPP_AFX\fR, \fBECPP_nINIT\fR, \fBECPP_SLCTIN\fR. All other
+bits are reserved. Reading reserved bits always return 1. An attempt to write
+0s into these bits results in \fBEINVAL\fR.
+.RE
+
+.SH DEVICE SPECIAL FILES
+.ne 2
+.na
+\fB\fB/dev/lp\fIN\fR\fR\fR
+.ad
+.RS 19n
+x86 only. (Backwards compatibility with former \fBlp\fR(4D) devices.)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/printers/\fIN\fR\fR\fR
+.ad
+.RS 19n
+1284 compliant parallel port device special files appears in both namespaces.
+.RE
+
+.SH FILES
+.ne 2
+.na
+\fB/kernel/drv/sparcv9/ecpp\fR
+.ad
+.sp .6
+.RS 4n
+Device driver (SPARC)
+.RE
+
+.sp
+.ne 2
+.na
+\fB/kernel/drv/amd64/ecpp\fR
+.ad
+.sp .6
+.RS 4n
+Device driver (x86)
+.RE
+
+.sp
+.ne 2
+.na
+\fB/kernel/drv/ecpp.conf\fR
+.ad
+.sp .6
+.RS 4n
+Driver configuration file
+.RE
+
+.SH ERRORS
+.ne 2
+.na
+\fB\fBEBADF\fR\fR
+.ad
+.RS 10n
+The device is opened for write-only access and a read is attempted, or the
+device is opened for read-only access and a write is attempted.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEBUSY\fR\fR
+.ad
+.RS 10n
+The device has been opened and another open is attempted. An attempt has been
+made to unload the driver while one of the units is open.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEINVAL\fR\fR
+.ad
+.RS 10n
+A \fBECPPIOC_SETPARMS\fR \fBioctl()\fR is attempted with an out-of-range value
+in the \fBecpp_transfer_parms\fR structure. A \fBECPPIOC_SETREGS\fR
+\fBioctl()\fR is attempted with an invalid value in the \fBecpp_regs\fR
+structure. An \fBioctl()\fR is attempted with an invalid value in the command
+argument.An invalid command argument is received during \fBmodload\fR(8) or
+\fBmodunload\fR(8).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEIO\fR\fR
+.ad
+.RS 10n
+The driver encountered a bus error when attempting an access. A read or write
+did not complete properly, due to a peripheral error or a transfer timeout.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBENXIO\fR\fR
+.ad
+.RS 10n
+The driver has received an open request for a unit for which the attach failed.
+The driver has received a write request for a unit which has an active
+peripheral error.
+.RE
+
+.SH ATTRIBUTES
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture PCI-based systems
+_
+ ISA-based systems (x86)
+_
+Interface stability Evolving
+.TE
+
+.SH SEE ALSO
+.BR ioctl (2),
+.BR open (2),
+.BR read (2),
+.BR write (2),
+.BR usbprn (4D),
+.BR prnio (4I),
+.BR streamio (4I),
+.BR attributes (7),
+.BR modload (8),
+.BR modunload (8),
+.BR update_drv (8)
+.sp
+.LP
+\fIIEEE Std 1284-1994\fR
+.SH DIAGNOSTICS
+.ne 2
+.na
+\fBParallel port controller not supported\fR
+.ad
+.sp .6
+.RS 4n
+Driver does not support parallel port controller on the given host. Attach
+failed.
+.RE
diff --git a/usr/src/man/man4d/ehci.4d b/usr/src/man/man4d/ehci.4d
new file mode 100644
index 0000000000..669811848f
--- /dev/null
+++ b/usr/src/man/man4d/ehci.4d
@@ -0,0 +1,320 @@
+'\" te
+.\" Copyright (c) 2006 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH EHCI 4D "Jan 10, 2020"
+.SH NAME
+ehci \- Enhanced host controller driver
+.SH SYNOPSIS
+.nf
+\fBusb@unit-address\fR
+.fi
+
+.SH DESCRIPTION
+The \fBehci\fR driver is a USBA (Solaris USB Architecture) compliant nexus
+driver that supports the Enhanced Host Controller Interface Specification 2.0,
+an industry standard developed by Intel.
+.sp
+.LP
+A USB 2.0 host controller includes one high-speed host controller and zero or
+more USB 1.1 host controllers. The high-speed host controller implements an
+EHCI (Enhanced Host Controller Interface) that is used for all high-speed
+communications to high-speed-mode devices.
+.sp
+.LP
+All USB 2.0 devices connected to the root ports of the USB 2.0 host
+controller and all devices connected to a high-speed-mode hub should be routed
+to the EHCI host controller.
+.sp
+.LP
+All full- and low-speed devices connected to the root ports of the USB 2.0 host
+controller should be routed to the companion USB 1.1 host controllers. (OHCI or
+UHCI host controller).
+.sp
+.LP
+The \fBehci\fR supports bulk, interrupt, control and isochronous transfers
+(on USB1.\fIx\fR devices behind a USB2.0 hub).
+.SH FILES
+.ne 2
+.na
+\fB\fB/kernel/drv/sparcv9/ehci\fR\fR
+.ad
+.RS 28n
+Device driver (SPARC)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/ehci\fR\fR
+.ad
+.RS 28n
+Device driver (x86)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/ehci.conf\fR\fR
+.ad
+.RS 28n
+Driver configuration file
+.RE
+
+.SH ATTRIBUTES
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture SPARC, x86, PCI-based systems
+.TE
+
+.SH SEE ALSO
+.BR hubd (4D),
+.BR ohci (4D),
+.BR uhci (4D),
+.BR usba (4D),
+.BR attributes (7),
+.BR add_drv (8),
+.BR prtconf (8),
+.BR rem_drv (8),
+.BR update_drv (8)
+.sp
+.LP
+\fIWriting Device Drivers\fR
+.sp
+.LP
+\fIUniversal Serial Bus Specification 2.0\fR
+.sp
+.LP
+\fIEnhanced Host Controller Interface Specification 1.0\fR
+.sp
+.LP
+\fISystem Administration Guide: Basic Administration\fR
+.sp
+.LP
+\fIhttp://www.usb.org\fR
+.sp
+.LP
+\fIhttp://www.intel.com/technology/usb/ehcispec.htm\fR
+.SH DIAGNOSTICS
+In addition to being logged, the following messages may appear on the system
+console. All messages are formatted in the following manner:
+.sp
+.in +2
+.nf
+WARNING: <device path> (ehci<instance number>): Message...
+.fi
+.in -2
+.sp
+
+.sp
+.ne 2
+.na
+\fBUnrecoverable USB hardware error.\fR
+.ad
+.sp .6
+.RS 4n
+There was an unrecoverable USB hardware error reported by the \fBehci\fR
+controller. Reboot the system. If this problem persists, contact your system
+vendor.
+.RE
+
+.sp
+.ne 2
+.na
+\fBNo SOF interrupts.\fR
+.ad
+.br
+.na
+\fB\fR
+.ad
+.sp .6
+.RS 4n
+No SOF interrupts have been received. This USB EHCI controller is unusable.
+.RE
+
+.sp
+.ne 2
+.na
+\fBError recovery failure: Please hotplug the 2.0 hub at <device path>.\fR
+.ad
+.sp .6
+.RS 4n
+The driver failed to clear 2.0 hub's TT buffer. Remove and reinsert the
+external USB2.0 hub.
+.RE
+
+.sp
+.ne 2
+.na
+\fBRevision<xx> is not supported.\fR
+.ad
+.sp .6
+.RS 4n
+High speed USB devices prior to revision 0.95 are not supported.
+.RE
+
+.sp
+.LP
+The following messages may be entered into the system log. They are formatted
+in the following manner:
+.sp
+.in +2
+.nf
+<device path> (ehci<instance number>): Message...
+.fi
+.in -2
+.sp
+
+.sp
+.ne 2
+.na
+\fBUnable to take control from BIOS. Failure is ignored.\fR
+.ad
+.sp .6
+.RS 4n
+The driver was unable to take control of the EHCI hardware from the system's
+BIOS. This failure is ignored. To abort the attach on this take-over failure,
+comment out a property in ehci.conf. (x86 only).
+.RE
+
+.sp
+.ne 2
+.na
+\fBUnable to take control from BIOS.\fR
+.ad
+.sp .6
+.RS 4n
+The driver is unable to take control of the EHCI hardware from the
+system's BIOS and aborts the attach. High speed (USB 2.0) support is disabled.
+In this case, all USB devices run at full/low speed. Contact your system vendor
+or your system administrator for possible changes in BIOS settings. You can
+disable a property in \fBehci.conf\fR to ignore this failure. (x86 only.)
+.RE
+
+.sp
+.ne 2
+.na
+\fBLow speed device is not supported.\fR
+.ad
+.br
+.na
+\fBFull speed device is not supported.\fR
+.ad
+.sp .6
+.RS 4n
+The driver detected a low or full speed device on its root hub port. Per USB
+2.0 specification, the device should be routed to a companion host controller
+(OHCI or UHCI). However, no attached companion host controller appears to be
+available. Therefore, low and full speed devices are not supported.
+.RE
+
+.sp
+.ne 2
+.na
+\fBLow speed endpoint's poll interval of <n> ms is below threshold. Rounding up
+to 8 ms.\fR
+.ad
+.sp .6
+.RS 4n
+Low speed endpoints are limited to polling intervals between 8 ms and 255 ms.
+If a device reports a polling interval that is less than 8 ms, the driver uses
+8 ms instead.
+.RE
+
+.sp
+.ne 2
+.na
+\fBLow speed endpoint's poll interval is greater than 255 ms.\fR
+.ad
+.sp .6
+.RS 4n
+The low speed device's polling interval is out of range. The host controller
+does not allocate bandwidth for this device. This device is not usable.
+.RE
+
+.sp
+.ne 2
+.na
+\fBFull speed endpoint's poll interval must be between 1 and 255 ms.\fR
+.ad
+.sp .6
+.RS 4n
+The full speed device's polling interval is out of range. The host controller
+does not allocate bandwidth for this device. This device is not usable.
+.RE
+
+.sp
+.ne 2
+.na
+\fBHigh speed endpoint's poll interval must be between 1 and 16 units.\fR
+.ad
+.sp .6
+.RS 4n
+The high speed device's polling interval is out of range. The host controller
+will not allocate bandwidth for this device. This device will not be usable.
+Refer to the USB specification, revision 2.0 for the unit definition.
+.RE
+
+.sp
+.ne 2
+.na
+\fBehci_modify_qh_status_bit: Failed to halt qh=<address>.\fR
+.ad
+.sp .6
+.RS 4n
+Error recovery failed. Please disconnect and reinsert all devices or reboot.
+.RE
+
+.LP
+Note -
+.sp
+.RS 2
+Due to recently discovered incompatibilities with this USB controller,
+USB2.\fIx\fR transfer support has been disabled. However, this device continues
+to function as a USB1.\fIx\fR controller. Information on enabling USB2.x
+support is provided in this man page.
+.LP
+VIA chips may not be compatible with this driver. To bind \fBehci\fR
+specifically to the chip and eliminate the warnings, and to enable USB2.x
+support, a new, more specific driver alias (refer to \fBadd_drv\fR(8) and
+\fBupdate_drv\fR(8)) must be specified for \fBehci\fR. By default, the
+\fBehci\fR alias is 'pciclass,0c0320.' The compatible names in the
+\fBprtconf\fR(8) output provides additional aliases. For example:
+.RE
+.sp
+.in +2
+.nf
+ # prtconf -vp | grep pciclass,0c0320
+ compatible: 'pci1106,3104.1106.3104.2063' +
+\&'pci1106,3104.1106.3104' + 'pci1106,3104' +
+ pci1106,3104.2063' + 'pci1106,3104' + 'pciclass,0c0320' +
+\&'pciclass,0c03'
+ ....
+
+
+ A more specific alias is 'pci1106,3104.' Perform the follow-
+ ing step to add this alias, then reboot the system:
+
+
+ # update_drv -a -i '"pci1106,3104"' ehci
+
+ # reboot
+.fi
+.in -2
+
+.sp
+.LP
+After you apply the above workaround, the following message is displayed in
+your system log:
+.sp
+.LP
+Applying VIA workarounds.
diff --git a/usr/src/man/man4d/elxl.4d b/usr/src/man/man4d/elxl.4d
new file mode 100644
index 0000000000..66fc4a6371
--- /dev/null
+++ b/usr/src/man/man4d/elxl.4d
@@ -0,0 +1,103 @@
+.\" Copyright 2014 Garrett D'Amore <garrett@damore.org>
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\" notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\" notice, this list of conditions and the following disclaimer in the
+.\" documentation and/or other materials provided with the distribution.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER AND CONTRIBUTORS
+.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+.\" LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+.\" FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+.\" COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
+.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
+.\" USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
+.\" ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE
+.\"
+.Dd "Jan 10, 2020"
+.Dt ELXL 4D
+.Os
+.Sh NAME
+.Nm elxl
+.Nd 3Com Etherlink XL device driver
+.Sh SYNOPSIS
+.Pa /dev/elxl
+.Sh DESCRIPTION
+The
+.Nm
+driver provides support for the 3Com Etherlink XL
+family of Ethernet and Fast Ethernet PCI controllers.
+These are often known by their part numbers, most often 3c905 or 3c900 variants.
+.Lp
+The 3c905 devices generally support some form of 100 Mbps Ethernet,
+whereas the 3c900 devices usually only support 10 Mbps.
+Some devices support legacy media such as 10BASE-15, 10BASE-2, and even
+10BASE-FL.
+.
+Where applicable, the devices support auto-negotiation, both full and
+half duplex, etc.
+They also support full size MTUs (1500 bytes), even when used with VLANs.
+.
+.Lp
+The device driver supports the
+.Xr ieee802.3 7
+properties, which can be configured with
+.Xr dladm 8 .
+.Lp
+In addition, for devices with multiple external media ports, the driver
+supports a driver-specific
+.Xr dladm 8
+property called
+.Sy media ,
+which can take one of the following values, depending on the available
+media options on the device:
+.Lp
+.Bl -tag -compact -offset indent -width Sy
+.It Sy mii
+Media Independent Interface (MII), also 100BASE-TX
+.It Sy tp-hdx
+10 Mbps twisted pair, half-duplex
+.It Sy tp-fdx
+10 Mbps twisted pair full-duplex
+.It Sy fx-hdx
+100BASE-FX (fiber), half-duplex
+.It Sy fx-hdx
+100BASE-FX (fiber), full-duplex
+.It Sy bnc
+10BASE-2
+.Pq BNC, aka Dq thin-net
+.It Sy aui
+10BASE-15
+.Pq aka Dq thick-net
+.It Sy fl-hdx
+10BASE-FL (fiber), half-duplex
+.It Sy fl-fdx
+10BASE-FL (fiber), full-duplex
+.El
+.Lp
+The specific media options available can be queried with the
+device-specific
+.Sy available_media
+.Xr dladm 8
+property.
+.Sh FILES
+.Bl -tag -width /dev/elxl
+.It Pa /dev/elxl
+Special character device.
+.El
+.Sh SEE ALSO
+.Xr dlpi 4P ,
+.Xr pci 5 ,
+.Xr ieee802.3 7 ,
+.Xr dladm 8 ,
+.Xr ifconfig 8
+.Rs
+.%T IEEE 802.3: Ethernet
+.%Q IEEE Standards Association
+.Re
diff --git a/usr/src/man/man4d/ena.4d b/usr/src/man/man4d/ena.4d
new file mode 100644
index 0000000000..e1b3522550
--- /dev/null
+++ b/usr/src/man/man4d/ena.4d
@@ -0,0 +1,135 @@
+.\"
+.\" This file and its contents are supplied under the terms of the
+.\" Common Development and Distribution License ("CDDL"), version 1.0.
+.\" You may only use this file in accordance with the terms of version
+.\" 1.0 of the CDDL.
+.\"
+.\" A full copy of the text of the CDDL should have accompanied this
+.\" source. A copy of the CDDL is also available via the Internet at
+.\" http://www.illumos.org/license/CDDL.
+.\"
+.\"
+.\" Copyright 2021 Oxide Computer Company
+.\"
+.Dd Nov 17, 2021
+.Dt ENA 4D
+.Os
+.Sh NAME
+.Nm ena
+.Nd Driver for the AWS Elastic Network Adapter
+.Sh SYNOPSIS
+.Pa /dev/net/ena*
+.Sh DESCRIPTION
+The
+.Sy ena
+driver is a GLDv3 NIC driver for the AWS Elastic Network Adapter
+family of virtual devices.
+The driver supports:
+.Bl -dash -offset indent
+.It
+Jumbo frames up to 9216 bytes.
+.It
+Multiple Rx and Tx rings.
+.El
+.Pp
+By design, this driver does not support VNICs.
+A given ENA device can only ever receive traffic for a single unicast
+MAC address and IP address combination, as determined by the AWS configuration.
+There is no support for promiscuous mode, or for receiving traffic for
+additional unicast or multicast addresses.
+.Sh CONFIGURATION
+The
+.Sy ena.conf
+file contains user configurable parameters, each of which is described
+below.
+This file is read when an ENA device is found and an instance of the
+driver is attached to it.
+Changes made to this file do not affect running instances.
+Only instances attached after the changes will see the effects of
+those changes.
+Therefore, if you want your change to take effect on a running
+instance, you must somehow reload it.
+That could be done by a manual reloading of the driver or a system
+reboot.
+.Sh PROPERTIES
+The configuration file can be found at
+.Pa /kernel/drv/ena.conf .
+.Bl -hang -width Ds
+.It Sy rx_queue_num_descs
+.Bd -filled -compact
+Minimum:
+.Sy 64 |
+Maximum:
+.Sy device dependent
+.Ed
+.Bd -filled -compact
+Default:
+.Sy device maximum
+.Ed
+.Bd -filled
+The
+.Sy rx_queue_num_descs
+property determines the number of descriptors provided by the Rx queue.
+Currently a single descriptor is equal to a single packet, but in the
+future it may be that a single packet consumes multiple descriptors.
+.Ed
+.It Sy rx_queue_intr_limit
+.Bd -filled -compact
+Minimum:
+.Sy 16 |
+Maximum:
+.Sy 4096
+.Ed
+.Bd -filled -compact
+Default:
+.Sy 256
+.Ed
+.Bd -filled
+The
+.Sy rx_queue_intr_limit
+property determines the number frames an Rx interrupt will attempt to
+process before returning and claiming the interrupt.
+This is meant to keep the ENA Rx interrupt handler from consuming too
+much system time.
+In general, when a NIC becomes saturated with packets, the
+.Sy MAC
+layer will switch the driver into polling mode to reduce interrupt
+load.
+.Ed
+.It Sy tx_queue_num_descs
+.Bd -filled -compact
+Minimum:
+.Sy 64 |
+Maximum:
+.Sy device dependent
+.Ed
+.Bd -filled -compact
+Default:
+.Sy device maximum
+.Ed
+.Bd -filled
+The
+.Sy tx_queue_num_descs
+property determines the number of descriptors provided by the Tx queue.
+Currently a single descriptor is equal to a single packet, but in the
+future it may be that a single packet consumes multiple descriptors.
+.Ed
+.El
+.Sh FILES
+.Bl -tag -width Pa
+.It Pa /kernel/drv/amd64/ena
+Device driver (x86)
+.It Pa /kernel/drv/ena.conf
+Driver configuration file containing user-configurable options
+.El
+.Sh INTERFACE STABILITY
+The tunables in
+.Pa ena.conf
+are considered
+.Sy Evolving
+and may change in the future.
+.Sh SEE ALSO
+.Xr dlpi 4P ,
+.Xr driver.conf 5 ,
+.Xr dladm 8 ,
+.Xr snoop 8
diff --git a/usr/src/man/man4d/eri.4d b/usr/src/man/man4d/eri.4d
new file mode 100644
index 0000000000..74fa68e500
--- /dev/null
+++ b/usr/src/man/man4d/eri.4d
@@ -0,0 +1,355 @@
+'\" te
+.\" Copyright (c) 2000, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH ERI 4D "Mar 1, 2000"
+.SH NAME
+eri \- eri Fast-Ethernet device driver
+.SH SYNOPSIS
+.LP
+.nf
+\fB/dev/eri\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBeri\fR Fast Ethernet driver is a multi-threaded, loadable, clonable,
+\fBSTREAMS\fR\(embased hardware driver supporting the connectionless Data Link
+Provider Interface \fBdlpi\fR(4P) over an \fBeri\fR Fast-Ethernet controller.
+Multiple \fBeri\fR devices installed within the system are supported by the
+driver.
+.sp
+.LP
+The \fBeri\fR driver provides basic support for the \fBeri\fR hardware and
+handles the \fBeri\fR device. Functions include chip initialization, frame
+transit and receive, multicast and promiscuous support, and error recovery and
+reporting.
+.sp
+.LP
+The \fBeri\fR device provides 100Base-TX networking interfaces using the SUN
+\fBRIO\fR \fBASIC\fR and an internal transceiver. The \fBRIO\fR \fBASIC\fR
+provides the \fBPCI\fR interface and \fBMAC\fR functions. The physical layer
+functions are provided by the internal transceiver which connects to a RJ-45
+connector.
+.sp
+.LP
+The 100Base-TX standard specifies an auto-negotiation protocol to automatically
+select the mode and speed of operation. The internal transceiver is capable of
+performing auto-negotiation using the remote-end of the link (link partner) and
+receives the capabilities of the remote end. It selects the highest common
+denominator mode of operation based on the priorities. It also supports a
+forced-mode of operation under which the driver selects the mode of operation.
+.SH APPLICATION PROGRAMMING INTERFACE
+.sp
+.LP
+The cloning character-special device \fB/dev/eri\fR is used to access all
+\fBeri\fR controllers installed within the system.
+.SS "eri and DLPI"
+.sp
+.LP
+The \fBeri\fR driver is a "style 2" Data Link Service provider. All
+\fBM_PROTO\fR and \fBM_PCPROTO\fR type messages are interpreted as \fBDLPI\fR
+primitives. Valid \fBDLPI\fR primitives are defined in \fB<sys/dlpi.h>.\fR
+Refer to \fBdlpi\fR(4P) for more information.
+.sp
+.LP
+An explicit \fBDL_ATTACH_REQ\fR message by the user is required to associate
+the opened stream with a particular device (\fBppa\fR). The \fBppa\fR ID is
+interpreted as an \fBunsigned integer\fR data type and indicates the
+corresponding device instance (unit) number. An error (\fBDL_ERROR_ACK\fR) is
+returned by the driver if the \fBppa\fR field value does not correspond to a
+valid device instance number for this system. The device is initialized on
+first attach and de-initialized (stopped) at last detach.
+.sp
+.LP
+The values returned by the driver in the \fBDL_INFO_ACK\fR primitive in
+response to the \fBDL_INFO_REQ\fR from the user are as follows:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The maximum \fBSDU\fR is \fB1500\fR (\fBETHERMTU\fR - defined in
+\fB<sys/ethernet.h>\fR ).
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The minimum \fBSDU\fR is \fB0\fR.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The \fBdlsap\fR address length is \fB8\fR.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The \fBMAC\fR type is \fBDL_ETHER\fR.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The \fBsap\fR length values is \fB-2\fR, meaning the physical address component
+is followed immediately by a 2 byte \fBsap\fR component within the \fBDLSAP\fR
+address.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The service mode is \fBDL_CLDLS\fR.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Optional quality of service (\fBQOS\fR) is not currently supported so
+\fBQOS\fR fields are \fB0\fR.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The provider style is \fBDL_STYLE\fR.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The version is \fBDL_VERSION_2\fR.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The broadcast address value is Ethernet/IEEE broadcast address
+(\fB0xFFFFFF\fR).
+.RE
+.sp
+.LP
+Once in the \fBDL_ATTACHED\fR state, the user must send a \fBDL_BIND_REQ\fR to
+associate a particular \fBSAP\fR (Service Access Pointer) with the stream. The
+\fBeri\fR driver interprets the \fBsap\fR field within the \fBDL_BIND_REQ\fR as
+an Ethernet "type," therefore valid values for the \fBsap\fR field are in the
+[\fB0\fR-\fB0xFFFF\fR] range. Only one Ethernet type can be bound to the
+stream at any time.
+.sp
+.LP
+If the user selects a \fBsap\fR with a value of \fB0\fR, the receiver will be
+in IEEE 802.3 mode. All frames received from the media having a Ethernet type
+field in the range [\fB0\fR-\fB1500\fR] are assumed to be 802.3 frames and are
+routed up all open Streams which are bound to \fBsap\fR value \fB0\fR. If more
+than one Stream is in 802.3 mode, the frame will be duplicated and routed up
+multiple Streams as \fBDL_UNITDATA_IND\fR messages.
+.sp
+.LP
+In transmission, the driver checks the \fBsap\fR field of the \fBDL_BIND_REQ\fR
+to determine if the value is \fB0\fR or if the Ethernet type field is in the
+range [\fB0\fR-\fB1500\fR]. If either is true, the driver computes the length
+of the message, not including initial \fBM_PROTO\fR mblk (message block), of
+all subsequent \fBDL_UNITDATA_REQ\fR messages, and transmits 802.3 frames that
+have this value in the \fBMAC\fR frame header length field.
+.sp
+.LP
+The \fBeri\fR driver's \fBDLSAP\fR address format consists of the 6 byte
+physical (Ethernet) address component followed immediately by the 2 byte
+\fBsap\fR (type) component, producing an 8 byte \fBDLSAP\fR address.
+Applications should \fInot\fR hardcode to this particular
+implementation-specific \fBDLSAP\fR address format but use information returned
+in the \fBDL_INFO_ACK\fR primitive to compose and decompose \fBDLSAP\fR
+addresses. The \fBsap\fR length, full \fBDLSAP\fR length, and
+\fBsap\fR/physical ordering are included within the \fBDL_INFO_ACK.\fR The
+physical address length can be computed by subtracting the \fBsap\fR length
+from the full \fBDLSAP\fR address length or by issuing the
+\fBDL_PHYS_ADDR_REQ\fR to obtain the current physical address associated with
+the stream.
+.sp
+.LP
+Once in the \fBDL_BOUND\fR state, the user may transmit frames on the Ethernet
+by sending \fBDL_UNITDATA_REQ\fR messages to the \fBeri\fR driver. The
+\fBeri\fR driver will route received Ethernet frames up all open and bound
+streams having a \fBsap\fR which matches the Ethernet type as
+\fBDL_UNITDATA_IND\fR messages. Received Ethernet frames are duplicated and
+routed up multiple open streams if necessary. The \fBDLSAP\fR address contained
+within the \fBDL_UNITDATA_REQ\fR and \fBDL_UNITDATA_IND\fR messages consists of
+both the \fBsap\fR (type) and physical (Ethernet) components.
+.SS "eri Primitives"
+.sp
+.LP
+In addition to the mandatory connectionless \fBDLPI\fR message set, the driver
+also supports the following primitives:
+.sp
+.LP
+The \fBDL_ENABMULTI_REQ\fR and \fBDL_DISABMULTI_REQ\fR primitives
+enable/disable reception of individual multicast group addresses. A set of
+multicast addresses may be iteratively created and modified on a per-stream
+basis using these primitives. These primitives are accepted by the driver in
+any state following \fBDL_ATTACHED\fR.
+.sp
+.LP
+The \fBDL_PROMISCON_REQ\fR and \fBDL_PROMISCOFF_REQ\fR primitives with the
+\fBDL_PROMISC_PHYS\fR flag set in the \fBdl_level\fR field enables/disables
+reception of all promiscuous mode frames on the media, including frames
+generated by the local host. When used with the \fBDL_PROMISC_SAP\fR flag set,
+this enables/disables reception of all \fBsap\fR (Ethernet type) values. When
+used with the \fBDL_PROMISC_MULTI\fR flag set, this enables/disables reception
+of all multicast group addresses. The effect of each is always on a per-stream
+basis and independent of the other \fBsap\fR and physical level configurations
+on this stream or other streams.
+.sp
+.LP
+The \fBDL_PHYS_ADDR_REQ\fR primitive returns the 6 octet Ethernet address
+currently associated (attached) to the stream in the \fBDL_PHYS_ADDR_ACK\fR
+primitive. This primitive is valid only in states following a successful
+\fBDL_ATTACH_REQ\fR.
+.sp
+.LP
+The \fBDL_SET_PHYS_ADDR_REQ\fR primitive changes the 6 octet Ethernet address
+currently associated (attached) to this stream. The credentials of the process
+which originally opened this stream must be superuser, or \fBEPERM\fR is
+returned in the \fBDL_ERROR_ACK\fR. This primitive is destructive because it
+affects all current and future streams attached to this device. An \fB
+M_ERROR\fR is sent up all other streams attached to this device when this
+primitive is successful on this stream. Once changed, all streams subsequently
+opened and attached to this device will obtain this new physical address. Once
+changed, the physical address will remain until this primitive is used to
+change the physical address again or the system is rebooted, whichever comes
+first.
+.SS "eri DRIVER"
+.sp
+.LP
+By default, the eri driver performs auto-negotiation to select the mode and
+speed of the link, which can be in one of the following modes, as described in
+the 100Base-TX standard:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+100 Mbps, full-duplex
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+100 Mbps, half-duplex
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+10 Mbps, full-duplex
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+10 Mbps, half-duplex
+.RE
+.sp
+.LP
+The auto-negotiation protocol automatically selects:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Operation mode (half-duplex or full-duplex)
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Speed (100 Mbps or 10 Mbps)
+.RE
+.sp
+.LP
+The auto-negotiation protocol does the following:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Gets all modes of operation supported by the link partner
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Advertises its capabilities to the Link Partner
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Selects the highest common denominator mode of operation based on the
+priorities
+.RE
+.sp
+.LP
+The internal transceiver is capable of all of the operating speeds and modes
+listed above. By default, auto-negotiation is used to select the speed and the
+mode of the link and the common mode of operation with the link partner.
+.sp
+.LP
+For users who want to select the speed and mode of the link, the \fBeri\fR
+device supports programmable \fBIPG\fR (Inter-Packet Gap) parameters \fBipg1\fR
+and \fBipg2\fR. Sometimes, the user may want to alter these values depending
+on whether the driver supports 10 Mbps or 100 Mbps and accordingly, \fBIPG\fR
+will be set to 9.6 or 0.96 microseconds.
+.SS "eri Parameter List"
+.sp
+.LP
+The \fBeri\fR driver provides for setting and getting various parameters for
+the \fBeri\fR device. The parameter list includes current transceiver status,
+current link status, inter-packet gap, local transceiver capabilities and link
+partner capabilities.
+.sp
+.LP
+The local transceiver has two set of capabilities: one set reflects hardware
+capabilities, which are read-only \fB(RO)\fR parameters. The second set
+reflects the values chosen by the user and is used in speed selection and
+possess read/write \fB(RW)\fR capability. At boot time, these two sets of
+capabilities will be the same. Because the current default value of these
+parameters can only be read and not modified, the link partner capabilities are
+also read only.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/dev/eri\fR \fR
+.ad
+.RS 28n
+\fBeri\fR special character device.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/eri.conf\fR \fR
+.ad
+.RS 28n
+ System wide default device driver properties
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/sparcv9/eri\fR \fR
+.ad
+.RS 28n
+ 64 bit device driver
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR hme (4D),
+.BR qfe (4D),
+.BR dlpi (4P),
+.BR driver.conf (5),
+.BR ndd (8),
+.BR netstat (8)
diff --git a/usr/src/man/man4d/fas.4d b/usr/src/man/man4d/fas.4d
new file mode 100644
index 0000000000..de909a97dd
--- /dev/null
+++ b/usr/src/man/man4d/fas.4d
@@ -0,0 +1,1016 @@
+'\" te
+.\" Copyright (c) 1995, Sun Microsystems, Inc.
+.\" All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH FAS 4D "Jun 20, 1997"
+.SH NAME
+fas \- FAS SCSI Host Bus Adapter Driver
+.SH SYNOPSIS
+.LP
+.nf
+fas@\fIsbus-slot\fR,0x8800000
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBfas\fR Host Bus Adapter driver is a \fBSCSA\fR compliant nexus driver
+that supports the Qlogic FAS366 \fBSCSI\fR chip.
+.sp
+.LP
+The \fBfas\fR driver supports the standard functions provided by the
+\fBSCSA\fR interface. The driver supports tagged and untagged queuing, wide and
+fast \fBSCSI,\fR almost unlimited transfer size (using a moving \fBDVMA\fR
+window approach), and auto request sense; but it does not support linked
+commands.
+.SS "Driver Configuration"
+.sp
+.LP
+The \fBfas\fR driver can be configured by defining properties in
+\fBfas.conf\fR which override the global \fBSCSI\fR settings. Supported
+properties are: \fBscsi-options\fR, \fBtarget<\fIn\fR>-scsi-options\fR,
+\fBscsi-reset-delay\fR, \fBscsi-watchdog-tick\fR, \fBscsi-tag-age-limit\fR,
+\fBscsi-initiator-id\fR.
+.sp
+.LP
+\fBtarget<\fIn\fR>-scsi-options\fR overrides the \fBscsi-options\fR property
+value for \fBtarget<\fIn\fR>\fR. <\fIn\fR> can vary from decimal \fB0\fR to
+\fB15\fR. The supported \fBscsi-options\fR are: \fBSCSI_OPTIONS_DR\fR,
+\fBSCSI_OPTIONS_SYNC\fR, \fBSCSI_OPTIONS_TAG\fR, \fBSCSI_OPTIONS_FAST\fR, and
+\fBSCSI_OPTIONS_WIDE\fR.
+.sp
+.LP
+After periodic interval \fBscsi-watchdog-tick\fR, the \fBfas\fR driver searches
+all current and disconnected commands for timeouts.
+.sp
+.LP
+\fBscsi-tag-age-limit\fR is the number of times that the \fBfas\fR driver
+attempts to allocate a particular tag ID that is currently in use after going
+through all tag IDs in a circular fashion. After finding the same tag ID in
+use \fBscsi-tag-age-limit\fR times, no more commands will be submitted to this
+target until all outstanding commands complete or timeout.
+.sp
+.LP
+Refer to \fBscsi_hba_attach\fR(9F) for details.
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRA sample of fas configuration file
+.sp
+.LP
+Create a file called \fB/kernel/drv/fas.conf\fR and add this line:
+
+.sp
+.LP
+\fBscsi-options=0x78;\fR
+
+.sp
+.LP
+This disables tagged queuing, Fast \fBSCSI,\fR and Wide mode for all \fBfas\fR
+instances. The following example disables an option for one specific \fBfas\fR
+(refer to \fBdriver.conf\fR(5) for more details):
+
+.sp
+.in +2
+.nf
+ name="fas" parent="/iommu@f,e0000000/sbus@f,e0001000"
+ reg=3,0x8800000,0x10,3,0x8810000,0x40
+ target1-scsi-options=0x58
+ scsi-options=0x178 scsi-initiator-id=6;
+.fi
+.in -2
+
+.sp
+.LP
+Note that the default initiator ID in OBP is 7 and that the change to ID 6 will
+occur at attach time. It may be preferable to change the initiator ID in OBP.
+
+.sp
+.LP
+The example above sets \fBscsi-options\fR for target 1 to \fB0x58\fR and all
+other targets on this \fBSCSI\fR bus to \fB0x178\fR.
+
+.sp
+.LP
+The physical pathname of the parent can be determined using the \fB/devices\fR
+tree or following the link of the logical device name:
+
+.sp
+.in +2
+.nf
+ # ls \fB-l\fR /dev/rdsk/c1t3d0s0
+ lrwxrwxrwx 1 root other 78 Aug 28 16:05 /dev/rdsk/c1t3d0s0 ->
+
+\&.\|.\|/.\|.\|/devices/iommu@f,e0000000\
+ sbus@f,e0001000/SUNW,fas@3,8800000/sd@3,0:a,raw
+.fi
+.in -2
+
+.sp
+.LP
+Determine the register property values using the output from \fBprtconf\fR(8)
+(with the \fB-v\fR option):
+
+.sp
+.in +2
+.nf
+SUNW,fas, instance #0
+ \|.\|.\|.\|.
+ Register Specifications:
+ Bus Type=0x3, Address=0x8800000, Size=10
+ Bus Type=0x3, Address=0x8810000, Size=40
+.fi
+.in -2
+
+.sp
+.LP
+\fBscsi-options\fR can also be specified per device type using the device
+inquiry string. All the devices with the same inquiry string will have the same
+\fBscsi-options\fR set. This can be used to disable some \fBscsi-options\fR on
+all the devices of the same type.
+
+.sp
+.in +2
+.nf
+device-type-scsi-options-list=
+ "TOSHIBA XM5701TASUN12XCD", "cd-scsi-options";
+cd-scsi-options = 0x0;
+.fi
+.in -2
+
+.sp
+.LP
+The above entry in \fB/kernel/drv/fas.conf\fR sets the \fBscsi-options\fR for
+all devices with inquiry string \fBTOSHIBA XM5701TASUN12XCD\fR to
+\fBcd-scsi-options\fR. To get the inquiry string, run the \fBprobe-scsi\fR or
+\fBprobe-scsi-all\fR command at the \fBok\fR prompt before booting the system.
+
+.sp
+.LP
+To set \fBscsi-options\fR more specifically per target:
+
+.sp
+.in +2
+.nf
+target1-scsi-options=0x78;
+device-type-scsi-options-list =
+ "SEAGATE ST32550W", "seagate-scsi-options" ;
+seagate-scsi-options = 0x58;
+scsi-options=0x3f8;
+.fi
+.in -2
+
+.sp
+.LP
+The above sets \fBscsi-options\fR for target 1 to \fB0x78\fR and for all other
+targets on this \fBSCSI\fR bus to \fB0x3f8\fR except for one specific disk type
+which will have \fBscsi-options\fR set to \fB0x58\fR.
+
+.sp
+.LP
+\fBscsi-options\fR specified per target ID have the highest precedence,
+followed by \fBscsi-options\fR per device type. Global \fBfas scsi-options\fR
+(effecting all instances) per bus have the lowest precedence.
+
+.sp
+.LP
+The system needs to be rebooted before the specified \fBscsi-options\fR take
+effect.
+
+.SS "Driver Capabilities"
+.sp
+.LP
+The target driver needs to set capabilities in the \fBfas\fR driver in order to
+enable some driver features. The target driver can query and modify these
+capabilities: \fBsynchronous\fR, \fBtagged-qing\fR, \fBwide-xfer\fR,
+\fBauto-rqsense\fR, \fBqfull-retries\fR, \fBqfull-retry-interval\fR. All other
+capabilities can only be queried.
+.sp
+.LP
+By default, \fBtagged-qing\fR, \fBauto-rqsense\fR, and \fBwide-xfer\fR
+capabilities are disabled, while \fBdisconnect\fR, \fBsynchronous\fR, and
+\fBuntagged-qing\fR are enabled. These capabilities can only have binary values
+(\fB0\fR or \fB1\fR). The default value for \fBqfull-retries\fR is \fB10\fR and
+the default value for \fBqfull-retry-interval\fR is \fB100\fR. The
+\fBqfull-retries\fR capability is a \fBuchar_t\fR (\fB0\fR to \fB255\fR) while
+\fBqfull-retry-interval\fR is a \fBushort_t\fR (\fB0\fR to \fB65535\fR).
+.sp
+.LP
+The target driver needs to enable \fBtagged-qing\fR and \fBwide-xfer\fR
+explicitly. The \fBuntagged-qing\fR capability is always enabled and its value
+cannot be modified, because \fBfas\fR can queue commands even when
+\fBtagged-qing\fR is disabled.
+.sp
+.LP
+Whenever there is a conflict between the value of \fBscsi-options\fR and a
+capability, the value set in \fBscsi-options\fR prevails. Only \fBwhom != 0\fR
+is supported in the \fBscsi_ifsetcap\fR(9F) call.
+.sp
+.LP
+Refer to \fBscsi_ifsetcap\fR(9F) and \fBscsi_ifgetcap\fR(9F) for details.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/fas\fR\fR
+.ad
+.RS 24n
+\fBELF\fR Kernel Module
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/fas.conf\fR\fR
+.ad
+.RS 24n
+Optional configuration file
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture T{
+Limited to Sparc SBus-based systems with FAS366-based SCSI port and SunSWIFT SBus SCSI Host Adapter/Fast Ethernet option.
+T}
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR driver.conf (5),
+.BR attributes (7),
+.BR prtconf (8),
+.BR scsi_abort (9F),
+.BR scsi_hba_attach (9F),
+.BR scsi_ifgetcap (9F),
+.BR scsi_ifsetcap (9F),
+.BR scsi_reset (9F),
+.BR scsi_sync_pkt (9F),
+.BR scsi_transport (9F),
+.BR scsi_device (9S),
+.BR scsi_extended_sense (9S),
+.BR scsi_inquiry (9S),
+.BR scsi_pkt (9S)
+.sp
+.LP
+\fIWriting Device Drivers\fR
+.sp
+.LP
+\fIANSI Small Computer System Interface-2 (SCSI-2)\fR
+.sp
+.LP
+QLogic Corporation, \fIFAS366 Technical Manuals\fR.
+.SH DIAGNOSTICS
+.sp
+.LP
+The messages described below are some that may appear on the system console, as
+well as being logged.
+.sp
+.LP
+The first five messages may be displayed while the \fBfas\fR driver is trying
+to attach; these messages mean that the \fBfas\fR driver was unable to attach.
+All of these messages are preceded by "fas%d", where "%d" is the instance
+number of the \fBfas\fR controller.
+.sp
+.ne 2
+.na
+\fBDevice in slave-only slot\fR
+.ad
+.sp .6
+.RS 4n
+The SBus device has been placed in a slave-only slot and will not be
+accessible; move to non-slave-only SBus slot.
+.RE
+
+.sp
+.ne 2
+.na
+\fBDevice is using a hilevel intr\fR
+.ad
+.sp .6
+.RS 4n
+The device was configured with an interrupt level that cannot be used with this
+\fBfas\fR driver. Check the SBus device.
+.RE
+
+.sp
+.ne 2
+.na
+\fBCannot alloc dma handle\fR
+.ad
+.sp .6
+.RS 4n
+Driver was unable to allocate memory for a DMA controller.
+.RE
+
+.sp
+.ne 2
+.na
+\fBCannot alloc cmd area\fR
+.ad
+.sp .6
+.RS 4n
+Driver was unable to allocate memory for a command address.
+.RE
+
+.sp
+.ne 2
+.na
+\fBCannot create kmem_cache\fR
+.ad
+.sp .6
+.RS 4n
+Driver was unable to allocate memory for internal data structures.
+.RE
+
+.sp
+.ne 2
+.na
+\fBUnable to map FAS366 registers\fR
+.ad
+.sp .6
+.RS 4n
+Driver was unable to map device registers; check for bad hardware. Driver did
+not attach to device; \fBSCSI\fR devices will be inaccessible.
+.RE
+
+.sp
+.ne 2
+.na
+\fBCannot add intr\fR
+.ad
+.sp .6
+.RS 4n
+Driver could not add its interrupt service routine to the kernel.
+.RE
+
+.sp
+.ne 2
+.na
+\fBCannot map dma\fR
+.ad
+.sp .6
+.RS 4n
+Driver was unable to locate a \fBDMA\fR controller. This is an
+auto-configuration error.
+.RE
+
+.sp
+.ne 2
+.na
+\fBCannot bind cmdarea\fR
+.ad
+.sp .6
+.RS 4n
+Driver was unable to bind the \fBDMA\fR handle to an address.
+.RE
+
+.sp
+.ne 2
+.na
+\fBCannot create devctl minor node\fR
+.ad
+.sp .6
+.RS 4n
+Driver is unable to create a minor node for the controller.
+.RE
+
+.sp
+.ne 2
+.na
+\fBCannot attach\fR
+.ad
+.sp .6
+.RS 4n
+The driver was unable to attach; usually follows another warning that indicates
+why attach failed.
+.RE
+
+.sp
+.ne 2
+.na
+\fBDisabled TQ since disconnects are disabled\fR
+.ad
+.sp .6
+.RS 4n
+Tagged queuing was disabled because disconnects were disabled in
+\fBscsi-options\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBBad clock frequency\fR
+.ad
+.sp .6
+.RS 4n
+Check for bad hardware.
+.RE
+
+.sp
+.ne 2
+.na
+\fBSync of pkt (<address>) failed\fR
+.ad
+.sp .6
+.RS 4n
+Syncing a \fBSCSI\fR packet failed. Refer to \fBscsi_sync_pkt\fR(9F).
+.RE
+
+.sp
+.ne 2
+.na
+\fBAll tags in use!\fR
+.ad
+.sp .6
+.RS 4n
+The driver could not allocate another tag number. The target devices do not
+properly support tagged queuing.
+.RE
+
+.sp
+.ne 2
+.na
+\fBGross error in FAS366 status\fR
+.ad
+.sp .6
+.RS 4n
+The driver experienced severe \fBSCSI\fR bus problems. Check cables and
+terminator.
+.RE
+
+.sp
+.ne 2
+.na
+\fBSpurious interrupt\fR
+.ad
+.sp .6
+.RS 4n
+The driver received an interrupt while the hardware was not interrupting.
+.RE
+
+.sp
+.ne 2
+.na
+\fBLost state in phasemanage\fR
+.ad
+.sp .6
+.RS 4n
+The driver is confused about the state of the \fBSCSI\fR bus.
+.RE
+
+.sp
+.ne 2
+.na
+\fBUnrecoverable DMA \fBerror\fR \fBduring selection\fR\fR
+.ad
+.sp .6
+.RS 4n
+The \fBDMA\fR controller experienced host SBus problems. Check for bad
+hardware.
+.RE
+
+.sp
+.ne 2
+.na
+\fBBad sequence step (<step number>) in selection\fR
+.ad
+.sp .6
+.RS 4n
+The FAS366 hardware reported a bad sequence step. Check for bad hardware.
+.RE
+
+.sp
+.ne 2
+.na
+\fBUndetermined selection failure\fR
+.ad
+.sp .6
+.RS 4n
+The selection of a target failed unexpectedly. Check for bad hardware.
+.RE
+
+.sp
+.ne 2
+.na
+\fBTarget <n>: failed reselection (bad reselect bytes)\fR
+.ad
+.sp .6
+.RS 4n
+A reconnect failed, target sent incorrect number of message bytes. Check for
+bad hardware.
+.RE
+
+.sp
+.ne 2
+.na
+\fBTarget <n>: failed reselection (bad identify message)\fR
+.ad
+.sp .6
+.RS 4n
+A reconnect failed, target didn't send identify message or it got corrupted.
+Check for bad hardware.
+.RE
+
+.sp
+.ne 2
+.na
+\fBTarget <n>: failed reselection (not in msgin phase)\fR
+.ad
+.sp .6
+.RS 4n
+Incorrect \fBSCSI\fR bus phase after reconnection. Check for bad hardware.
+.RE
+
+.sp
+.ne 2
+.na
+\fBTarget <n>: failed reselection (unexpected bus free)\fR
+.ad
+.sp .6
+.RS 4n
+Incorrect \fBSCSI\fR bus phase after reconnection. Check for bad hardware.
+.RE
+
+.sp
+.ne 2
+.na
+\fBTarget <n>: failed reselection (timeout on receiving tag msg)\fR
+.ad
+.sp .6
+.RS 4n
+A reconnect failed; target failed to send tag bytes. Check for bad hardware.
+.RE
+
+.sp
+.ne 2
+.na
+\fBTarget <n>: failed reselection (botched tag)\fR
+.ad
+.sp .6
+.RS 4n
+A reconnect failed; target failed to send tag bytes. Check for bad hardware.
+.RE
+
+.sp
+.ne 2
+.na
+\fBTarget <n>: failed reselection (invalid tag)\fR
+.ad
+.sp .6
+.RS 4n
+A reconnect failed; target sent incorrect tag bytes. Check for bad hardware.
+.RE
+
+.sp
+.ne 2
+.na
+\fBTarget <n>: failed reselection (Parity error in reconnect msg's)\fR
+.ad
+.sp .6
+.RS 4n
+A reconnect failed; parity error detected. Check for bad hardware.
+.RE
+
+.sp
+.ne 2
+.na
+\fBTarget <n>: failed reselection (no command)\fR
+.ad
+.sp .6
+.RS 4n
+A reconnect failed; target accepted \fBabort\fR or \fBreset\fR, but still tries
+to reconnect. Check for bad hardware.
+.RE
+
+.sp
+.ne 2
+.na
+\fBUnexpected bus free\fR
+.ad
+.sp .6
+.RS 4n
+Target disconnected from the bus without notice. Check for bad hardware.
+.RE
+
+.sp
+.ne 2
+.na
+\fBTarget <n> didn't disconnect after sending <message>\fR
+.ad
+.sp .6
+.RS 4n
+The target unexpectedly did not disconnect after sending
+\fB<\fR\fImessage\fR\fB>.\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fBBad sequence step (0x?) in selection\fR
+.ad
+.sp .6
+.RS 4n
+The sequence step register shows an improper value. The target might be
+misbehaving.
+.RE
+
+.sp
+.ne 2
+.na
+\fBIllegal dma boundary?\fR
+.ad
+.sp .6
+.RS 4n
+An attempt was made to cross a boundary that the driver could not handle.
+.RE
+
+.sp
+.ne 2
+.na
+\fBUnwanted data xfer direction for Target <n>\fR
+.ad
+.sp .6
+.RS 4n
+The target went into an unexpected phase.
+.RE
+
+.sp
+.ne 2
+.na
+\fBUnrecoverable DMA error on dma <send/receive>\fR
+.ad
+.sp .6
+.RS 4n
+There is a \fBDMA\fR error while sending/receiving data. The host \fBDMA\fR
+controller is experiencing some problems.
+.RE
+
+.sp
+.ne 2
+.na
+\fBSCSI bus DATA IN phase parity error\fR
+.ad
+.sp .6
+.RS 4n
+The driver detected parity errors on the \fBSCSI\fR bus.
+.RE
+
+.sp
+.ne 2
+.na
+\fBSCSI bus MESSAGE IN phase parity error\fR
+.ad
+.sp .6
+.RS 4n
+The driver detected parity errors on the \fBSCSI\fR bus.
+.RE
+
+.sp
+.ne 2
+.na
+\fBSCSI bus STATUS phase parity \fBerror\fR\fR
+.ad
+.sp .6
+.RS 4n
+The driver detected parity errors on the \fBSCSI\fR bus.
+.RE
+
+.sp
+.ne 2
+.na
+\fBPremature end of extended message\fR
+.ad
+.sp .6
+.RS 4n
+An extended \fBSCSI\fR bus message did not complete. Suspect a target firmware
+problem.
+.RE
+
+.sp
+.ne 2
+.na
+\fBPremature end of input message\fR
+.ad
+.sp .6
+.RS 4n
+A multibyte input message was truncated. Suspect a target firmware problem.
+.RE
+
+.sp
+.ne 2
+.na
+\fBInput message botch\fR
+.ad
+.sp .6
+.RS 4n
+The driver is confused about messages coming from the target.
+.RE
+
+.sp
+.ne 2
+.na
+\fBExtended message <n> is too long\fR
+.ad
+.sp .6
+.RS 4n
+The extended message sent by the target is longer than expected.
+.RE
+
+.sp
+.ne 2
+.na
+\fB<name> message <n> from Target <m> garbled\fR
+.ad
+.sp .6
+.RS 4n
+Target \fB<\fR\fIm\fR\fB>\fR sent message \fB<\fR\fIname\fR\fB>\fR of value
+\fB<\fR\fIn\fR\fB>\fR which the driver did not understand.
+.RE
+
+.sp
+.ne 2
+.na
+\fBTarget <n> rejects our message <name>\fR
+.ad
+.sp .6
+.RS 4n
+Target \fB<\fR\fIn\fR\fB>\fR rejected a message sent by the driver.
+.RE
+
+.sp
+.ne 2
+.na
+\fBRejecting message <name> from Target <n>\fR
+.ad
+.sp .6
+.RS 4n
+The driver rejected a message received from target \fB<\fR\fIn\fR\fB>.\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fBCmd transmission \fBerror\fR\fR
+.ad
+.sp .6
+.RS 4n
+The driver was unable to send out command bytes.
+.RE
+
+.sp
+.ne 2
+.na
+\fBTarget <n> refused message resend\fR
+.ad
+.sp .6
+.RS 4n
+The target did not accept a message resend.
+.RE
+
+.sp
+.ne 2
+.na
+\fBMESSAGE OUT phase parity error\fR
+.ad
+.sp .6
+.RS 4n
+The driver detected parity errors on the SCSI bus.
+.RE
+
+.sp
+.ne 2
+.na
+\fBTwo byte message <name> <value> rejected\fR
+.ad
+.sp .6
+.RS 4n
+The driver does not accept this two byte message.
+.RE
+
+.sp
+.ne 2
+.na
+\fBGross error in fas status <stat>\fR
+.ad
+.sp .6
+.RS 4n
+The \fBfas\fR chip has indicated a gross error like \fBFIFO\fR overflow.
+.RE
+
+.sp
+.ne 2
+.na
+\fBPolled cmd failed (target busy)\fR
+.ad
+.sp .6
+.RS 4n
+A polled command failed because the target did not complete outstanding
+commands within a reasonable time.
+.RE
+
+.sp
+.ne 2
+.na
+\fBPolled cmd failed\fR
+.ad
+.sp .6
+.RS 4n
+A polled command failed because of timeouts or bus errors.
+.RE
+
+.sp
+.ne 2
+.na
+\fBAuto request sense failed\fR
+.ad
+.sp .6
+.RS 4n
+Driver is unable to get request sense from the target.
+.RE
+
+.sp
+.ne 2
+.na
+\fBDisconnected command timeout for Target <id>.<lun>\fR
+.ad
+.sp .6
+.RS 4n
+A timeout occurred while target \fBid\fR/\fIlun\fR was disconnected. This is
+usually a target firmware problem. For tagged queuing targets,
+\fB<\fR\fIn\fR\fB>\fR commands were outstanding when the timeout was detected.
+.RE
+
+.sp
+.ne 2
+.na
+\fBDisconnected tagged cmds (<n>) timeout for Target <id>.<lun>\fR
+.ad
+.sp .6
+.RS 4n
+A timeout occurred while target \fBid\fR/\fIlun\fR was disconnected. This is
+usually a target firmware problem. For tagged queuing targets,
+\fB<\fR\fIn\fR\fB>\fR commands were outstanding when the timeout was detected.
+.RE
+
+.sp
+.ne 2
+.na
+\fBConnected command timeout for Target <id>.<lun>\fR
+.ad
+.sp .6
+.RS 4n
+This is usually a \fBSCSI\fR bus problem. Check cables and termination.
+.RE
+
+.sp
+.ne 2
+.na
+\fBTarget <id>.<lun> reverting to async. mode\fR
+.ad
+.sp .6
+.RS 4n
+A data transfer hang was detected. The driver attempts to eliminate this
+problem by reducing the data transfer rate.
+.RE
+
+.sp
+.ne 2
+.na
+\fBTarget <id>.<lun> reducing sync. transfer rate\fR
+.ad
+.sp .6
+.RS 4n
+A data transfer hang was detected. The driver attempts to eliminate this
+problem by reducing the data transfer rate.
+.RE
+
+.sp
+.ne 2
+.na
+\fBReverting to slow SCSI cable mode\fR
+.ad
+.sp .6
+.RS 4n
+A data transfer hang was detected. The driver attempts to eliminate this
+problem by reducing the data transfer rate.
+.RE
+
+.sp
+.ne 2
+.na
+\fBTarget <id> reducing sync. transfer rate\fR
+.ad
+.sp .6
+.RS 4n
+A data transfer hang was detected. The driver attempts to eliminate this
+problem by reducing the data transfer rate.
+.RE
+
+.sp
+.ne 2
+.na
+\fBTarget <id> reverting to async. mode\fR
+.ad
+.sp .6
+.RS 4n
+A data transfer hang was detected. The driver attempts to eliminate this
+problem by reducing the data transfer rate.
+.RE
+
+.sp
+.ne 2
+.na
+\fBTarget <id> disabled wide SCSI mode\fR
+.ad
+.sp .6
+.RS 4n
+Due to problems on the \fBSCSI\fR bus, the driver goes into more conservative
+mode of operation to avoid further problems.
+.RE
+
+.sp
+.ne 2
+.na
+\fBReset SCSI bus failed\fR
+.ad
+.sp .6
+.RS 4n
+An attempt to reset the \fBSCSI\fR bus failed.
+.RE
+
+.sp
+.ne 2
+.na
+\fBExternal SCSI bus reset\fR
+.ad
+.sp .6
+.RS 4n
+Another initiator reset the \fBSCSI\fR bus.
+.RE
+
+.SH WARNINGS
+.sp
+.LP
+The \fBfas\fR hardware (FAS366) supports both Wide and Fast \fBSCSI\fR mode,
+but fast20 is not supported. The maximum \fBSCSI\fR bandwidth is 20 MB/sec.
+Initiator mode block sequence (IBS) is not supported.
+.SH NOTES
+.sp
+.LP
+The \fBfas\fR driver exports properties indicating per target the negotiated
+transfer speed (\fBtarget<n>-sync-speed\fR), whether wide bus is supported
+(\fBtarget<n>-wide\fR), \fBscsi-options\fR for that particular target
+(\fBtarget<n>-scsi-options\fR), and whether tagged queuing has been enabled
+(\fBtarget<n>-TQ\fR). The \fBsync-speed\fR property value is the data transfer
+rate in KB/sec. The \fBtarget<n>-TQ\fR and the \fBtarget<n>-wide\fR property
+have value \fB1\fR to indicate that the corresponding capability is enabled, or
+\fB0\fR to indicate that the capability is disabled for that target. Refer to
+\fBprtconf\fR(8) (verbose option) for viewing the \fBfas\fR properties.
+.sp
+.in +2
+.nf
+SUNW,fas,instance #1
+ Driver software properties:
+ name <target3-TQ> length <4>
+ value <0x00000001>.
+ name <target3-wide> length <4>
+ value <0x00000000>.
+ name <target3-sync-speed> length <4>
+ value <0x00002710>.
+ name <target3-scsi-options> length <4>
+ value <0x000003f8>.
+ name <target0-TQ> length <4>
+ value <0x00000001>.
+ name <pm_norm_pwr> length <4>
+ value <0x00000001>.
+ name <pm_timestamp> length <4>
+ value <0x30040346>.
+ name <scsi-options> length <4>
+ value <0x000003f8>.
+ name <scsi-watchdog-tick> length <4>
+ value <0x0000000a>.
+ name <scsi-tag-age-limit> length <4>
+ value <0x00000002>.
+ name <scsi-reset-delay> length <4>
+ value <0x00000bb8>.
+ Register Specifications:
+ Bus Type=0x3, Address=0x8800000, Size=10
+ Bus Type=0x3, Address=0x8810000, Size=40
+ Interrupt Specifications:
+ Interrupt Priority=0x35 (ipl 5)
+.fi
+.in -2
+
diff --git a/usr/src/man/man4d/fasttrap.4d b/usr/src/man/man4d/fasttrap.4d
new file mode 100644
index 0000000000..4806913e4a
--- /dev/null
+++ b/usr/src/man/man4d/fasttrap.4d
@@ -0,0 +1,58 @@
+'\" te
+.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH FASTTRAP 4D "Dec 10, 2017"
+.SH NAME
+fasttrap \- DTrace user instruction tracing provider
+.SH DESCRIPTION
+.LP
+The \fBfasttrap\fR driver is a DTrace dynamic tracing provider that performs
+dynamic instrumentation of arbitrary instructions in illumos processes. The
+\fBfasttrap\fR driver implements the DTrace \fBfasttrap\fR and \fBpid\fR
+providers.
+.sp
+.LP
+The \fBfasttrap\fR driver is not a public interface and you access
+instrumentation offered by this provider through DTrace. Refer to the
+\fIDynamic Tracing Guide\fR for a description of the public documented
+interfaces available for the DTrace facility and the probes offered by the
+\fBfasttrap\fR provider.
+.SH SPARC ONLY
+.LP
+The \fBfasttrap\fR provider provides a DTrace probe that fires each time a user
+process executes an instruction. The \fBpid\fR provider allows for the dynamic
+creation of DTrace probes corresponding to instruction locations inside any
+user process specified using a process ID and an instruction address or symbol
+name. Together these providers permit DTrace users to perform instrumentation
+of user processes and to trace the interactions between processes and
+the operating system. See the chapter entitled "User Process Tracing" in the
+\fIDynamic Tracing Guide\fR for information on how to use these
+providers to instrument processes.
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for a description of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Private
+.TE
+
+.SH SEE ALSO
+.LP
+.BR dtrace (4D),
+.BR attributes (7),
+.BR dtrace (8)
+.sp
+.LP
+\fIDynamic Tracing Guide\fR:
+.sp
+.LP
+https://illumos.org/books/dtrace/
diff --git a/usr/src/man/man4d/fbt.4d b/usr/src/man/man4d/fbt.4d
new file mode 100644
index 0000000000..e69bd1fe0a
--- /dev/null
+++ b/usr/src/man/man4d/fbt.4d
@@ -0,0 +1,55 @@
+'\" te
+.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH FBT 4D "Dec 10, 2017"
+.SH NAME
+fbt \- DTrace function boundary tracing provider
+.SH DESCRIPTION
+.LP
+The \fBfbt\fR driver is a DTrace dynamic tracing provider that performs dynamic
+instrumentation at function boundaries in the kernel.
+.sp
+.LP
+The function is the fundamental unit of program text. In a well-designed
+system, the function performs a discrete and well-defined operation on a
+specified object or series of like objects. Most functions are implemented by
+themselves calling functions on encapsulated objects, but some functions
+\(emso-called "leaf functions" \(em are implemented without making further
+function calls. The Function Boundary Tracing \fBfbt\fR provider contains a
+mechanism for instrumenting the vast majority of functions in the kernel and
+offering the instrumentation as a set of DTrace probes.
+.sp
+.LP
+The \fBfbt\fR driver is not a public interface and you access the
+instrumentation offered by this provider through DTrace. Refer to the
+\fIDynamic Tracing Guide\fR for a description of the public documented
+interfaces available for the DTrace facility and the probes offered by the
+\fBfbt\fR provider.
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for a description of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Private
+.TE
+
+.SH SEE ALSO
+.LP
+.BR dtrace (4D),
+.BR attributes (7),
+.BR dtrace (8)
+.sp
+.LP
+\fIDynamic Tracing Guide\fR:
+.sp
+.LP
+https://illumos.org/books/dtrace/
diff --git a/usr/src/man/man4d/fcip.4d b/usr/src/man/man4d/fcip.4d
new file mode 100644
index 0000000000..a293a112c0
--- /dev/null
+++ b/usr/src/man/man4d/fcip.4d
@@ -0,0 +1,249 @@
+'\" te
+.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH FCIP 4D "Oct 18, 2004"
+.SH NAME
+fcip \- IP/ARP over Fibre Channel datagram encapsulation driver
+.SH SYNOPSIS
+.LP
+.nf
+/dev/fcip
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBfcip\fR driver is a Fibre Channel upper layer protocol module for
+encapsulating \fBIP\fR (IPv4) and \fBARP\fR datagrams over Fibre Channel. The
+\fBfcip\fR driver is a loadable, clonable, \fBSTREAMS\fR driver supporting
+the connectionless Data Link Provider Interface, \fBdlpi\fR(4P) over any Sun
+Fibre Channel transport layer-compliant host adapter.
+.sp
+.LP
+The \fBfcip\fR driver complies with the \fIRFC 2625\fR specification for
+encapsulating IP/ARP datagrams over Fibre Channel, and allows encapsulation of
+IPv4 only, as specified in \fIRFC 2625\fR. The \fBfcip\fR driver interfaces
+with the \fBfp\fR(4D) Sun Fibre Channel port driver.
+.SH APPLICATION PROGRAMMING INTERFACE
+.sp
+.LP
+The cloning character-special device \fB/dev/fcip\fR is used to access all
+Fibre Channel ports capable of supporting \fBIP\fR/\fBARP\fR traffic on the
+system.
+.SS "fcip and DLPI"
+.sp
+.LP
+The \fBfcip\fR driver is a "style 2" Data Link Service Provider. All
+\fBM_PROTO\fR and \fBM_PCPROTO\fR type messages are interpreted as \fBDLPI\fR
+primitives. Valid \fBDLPI\fR primitives are defined in \fB<sys/dlpi.h>\fR\&.
+Refer to \fBdlpi\fR(4P) for more information on \fBDLPI\fR primitives.
+.sp
+.LP
+An explicit \fBDL_ATTACH_REQ\fR message must be sent to associate the opened
+stream with a particular Fibre Channel port (ppa). The ppa ID is interpreted
+as an unsigned long data type and indicates the corresponding Fibre Channel
+port driver instance number. An error (\fBDL_ERROR_ACK\fR) is returned by the
+driver if the ppa field value does not correspond to a valid port driver
+instance number or if the Fibre Channel port is not \fBONLINE\fR. Refer to
+\fBfp\fR(4D) for more details on the Fibre Channel port driver.
+.sp
+.LP
+The values returned by the driver in the \fBDL_INFO_ACK\fR primitive in
+response to a \fBDL_INFO_REQ\fR from the user are as follows:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Maximum SDU is \fB65280\fR (defined in \fIRFC 2625\fR).
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Minimum SDU is \fB0\fR.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBDLSAP\fR address length is \fB8\fR.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+MAC type is \fBDL_ETHER\fR.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBSAP\fR length is \fB-2\fR.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Service mode is \fBDL_CLDLS\fR.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Optional quality of service (\fBQOS\fR) fields are set to \fB0\fR.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Provider style is \fBDL_STYLE2\fR.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Provider version is \fBDL_VERSION_2\fR.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Broadcast address value is \fB0xFFFFFFFF\fR.
+.RE
+.sp
+.LP
+Once in \fBDL_ATTACHED\fR state, the user must send a \fBDL_BIND_REQ\fR to
+associate a particular \fBSAP\fR (Service Access Point) with the stream. The
+\fBfcip\fR driver \fBDLSAP\fR address format consists of the 6-byte physical
+address component followed immediately by the 2-byte \fBSAP\fR component
+producing an 8-byte \fBDLSAP\fR address. Applications should not be programmed
+to use this implementation-specific \fBDLSAP\fR address format, but use
+information returned in the \fBDL_INFO_ACK\fR primitive to compose and
+decompose \fBDLSAP\fR addresses. The \fBSAP\fR length, full \fBDLSAP\fR length,
+and \fBSAP\fR/physical ordering are included within the \fBDL_INFO_ACK\fR.
+The physical address length is the full \fBDLSAP\fR address length minus the
+\fBSAP\fR length. The physical address length can also be computed by
+issuing the \fBDL_PHYS_ADDR_REQ\fR primitive to obtain the current physical
+address associated with the stream.
+.sp
+.LP
+Once in the \fBDL_BOUND\fR state, the user can transmit frames on the fibre by
+sending \fBDL_UNITDATA_REQ\fR messages to the \fBfcip\fR driver. The
+\fBfcip\fR driver will route received frames up any of the open and bound
+streams having a \fBSAP\fR which matches the received frame's \fBSAP\fR type
+as \fBDL_UNITDATA_IND\fR messages. Received Fibre Channel frames are
+duplicated and routed up multiple open streams if necessary. The \fBDLSAP\fR
+address contained within the \fBDL_UNITDATA_REQ\fR and \fBDL_UNITDATA_IND\fR
+messages consists of both the \fBSAP\fR (type) and physical address
+(WorldWideName) components.
+.SS "Other Primitives"
+.sp
+.LP
+In Fibre Channel, \fBmulticasting\fR is defined as an optional service for
+Fibre Channel classes three and six only. If required, the Fibre Channel
+broadcast service can be used for multicasting. The \fIRFC 2625\fR
+specification does not support \fBIP \fRmulticasting or promiscuous mode.
+.SS "fcip Fibre Channel ELS"
+.sp
+.LP
+The \fBfcip\fR driver will use the \fBFARP\fR Fibre Channel Extended Link
+Service (\fBELS\fR), where supported, to resolve WorldWide Names (MAC address)
+to FC Port Identifiers(Port_ID). The \fBfcip\fR driver also supports InARP to
+resolve WorldWide Name and Port_ID to an IP address.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/dev/fcip\fR\fR
+.ad
+.RS 28n
+fcip character-special device
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/fcip\fR\fR
+.ad
+.RS 28n
+32-bit ELF kernel driver (x86)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/fcip\fR\fR
+.ad
+.RS 28n
+64-bit ELF kernel driver (x86)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/sparcv9/fcip\fR\fR
+.ad
+.RS 28n
+64-bit ELF kernel driver (SPARC)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/fcip.conf\fR\fR
+.ad
+.RS 28n
+fcip driver configuration file
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture SPARC
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR fp (4D),
+.BR dlpi (4P),
+.BR driver.conf (5),
+.BR netstat (8),
+.BR prtconf (8)
+.sp
+.LP
+\fIWriting Device Drivers\fR
+.sp
+.LP
+\fIIP and ARP over Fibre Channel, RFC 2625\fR M. Rajagopal, R. Bhagwat, W.
+Rickard. Gadzoox Networks, June 1999
+.sp
+.LP
+\fIANSI X3.230-1994, Fibre Channel Physical and Signalling Interface (FC-PH)\fR
+.sp
+.LP
+\fIANSI X3.272-1996, Fibre Channel Arbitrated Loop (FC-AL)\fR
+.SH NOTES
+.sp
+.LP
+If you use a Fibre Channel adapter with two or more ports that each share a
+common Node WorldWideName, the \fBfcip\fR driver will likely attach to the
+first port on the adapter.
+.sp
+.LP
+\fIRFC 2625\fR requires that both source and destination WorldWideNames have
+their 4 bit NAA identifiers set to binary '0001,' indicating that an IEEE
+48-bit MAC address is contained in the lower 48 bits of the network address
+fields. For additional details, see the \fIRFC 2625\fR specification.
diff --git a/usr/src/man/man4d/fcoe.4d b/usr/src/man/man4d/fcoe.4d
new file mode 100644
index 0000000000..f94fc4696c
--- /dev/null
+++ b/usr/src/man/man4d/fcoe.4d
@@ -0,0 +1,59 @@
+'\" te
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 2020 Peter Tribble.
+.TH FCOE 4D "Jan 10, 2020"
+.SH NAME
+fcoe \- fibre channel over Ethernet transport driver
+.SH DESCRIPTION
+The \fBfcoe\fR driver is a pseudo nexus driver which supports the
+transportation of FCoE encapsulated frames. FCoE Ethernet frame will
+encapsulate the raw Fibre Channel frame.
+.sp
+.LP
+The \fBfcoe\fR driver interfaces with FCoE target mode device driver,
+\fBfcoet\fR(4D).
+.SH FILES
+.ne 2
+.na
+\fB/kernel/drv/amd64/fcoe\fR
+.ad
+.RS 26n
+Device driver (x86)
+.RE
+
+.sp
+.ne 2
+.na
+\fB/kernel/drv/sparcv9/fcoe\fR
+.ad
+.RS 26n
+Device driver (SPARC)
+.RE
+
+.SH ATTRIBUTES
+See \fBattributes\fR(7) for a description of the following attribute:
+.sp
+
+.sp
+.TS
+box;
+l | l
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture SPARC, x86
+.TE
+
+.SH SEE ALSO
+.BR fcoet (4D),
+.BR driver.conf (5),
+.BR attributes (7)
+.sp
+.LP
+\fIWriting Device Drivers\fR
+.sp
+.LP
+\fIANSI X3.269-1996, Fibre Channel Protocol for SCSI (FCP)\fR
diff --git a/usr/src/man/man4d/fcoei.4d b/usr/src/man/man4d/fcoei.4d
new file mode 100644
index 0000000000..7a01ba1a4c
--- /dev/null
+++ b/usr/src/man/man4d/fcoei.4d
@@ -0,0 +1,67 @@
+'\" te
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following
+.\" below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH FCOEI 4D "Jan 10, 2020"
+.SH NAME
+fcoei \- Fibre Channel Over Ethernet Initiator Mode Driver
+.SH SYNOPSIS
+.in +2
+.nf
+fcoei@port,0
+.fi
+.in -2
+
+.SH DESCRIPTION
+The \fBfcoei\fR driver is a pseudo device driver which encapsulates the raw
+Fibre Channel frames into FCoE ethernet frames, or decapsulates FC frames from
+FCoE ethernet frames. The supported FC frames include extended/basic link
+services, common transport frames and initiator mode FCP frames.
+.sp
+.LP
+The \fBfcoei\fR driver interfaces with the Sun Fibre Channel port driver,
+\fBfp\fR(4D), and the FCoE transport driver, \fBfcoe\fR(4D).
+.SH FILES
+.ne 2
+.na
+\fB/kernel/drv/amd64/fcoei\fR
+.ad
+.RS 27n
+Device driver (x86)
+.RE
+
+.sp
+.ne 2
+.na
+\fB/kernel/drv/sparcv9/fcoei\fR
+.ad
+.RS 27n
+Device driver (SPARC)
+.RE
+
+.SH ATTRIBUTES
+See \fBattributes\fR(7) for a description of the following attribute:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture SPARC, x86
+.TE
+
+.SH SEE ALSO
+.BR fcoe (4D),
+.BR fcoet (4D),
+.BR fp (4D),
+.BR driver.conf (5),
+.BR attributes (7)
+.sp
+.LP
+\fIWriting Device Drivers\fR
+.sp
+.LP
+\fIANSI X3.269-1996, Fibre Channel Protocol for SCSI (FCP)\fR
diff --git a/usr/src/man/man4d/fcoet.4d b/usr/src/man/man4d/fcoet.4d
new file mode 100644
index 0000000000..9298426276
--- /dev/null
+++ b/usr/src/man/man4d/fcoet.4d
@@ -0,0 +1,59 @@
+'\" te
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
+.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
+.TH FCOET 4D "Jan 10, 2020"
+.SH NAME
+fcoet \- fibre channel over Ethernet target mode driver
+.SH DESCRIPTION
+The \fBfcoet\fR driver is a pseudo device driver which encapsulates the raw
+Fibre Channel frames into FCoE Ethernet frames, or decapsulates FC frames from
+FCoE Ethernet frames. The supported FC frames contain extended/basic link
+services, common transport frames and target mode FCP frames.
+.sp
+.LP
+The \fBfcoet\fR driver interfaces with COMSTAR FC transport driver, \fBfct\fR,
+and FCoE transport driver, \fBfcoe\fR(4D).
+.SH FILES
+.ne 2
+.na
+\fB/kernel/drv/amd64/fcoet\fR
+.ad
+.RS 29n
+Device driver (x86)
+.RE
+
+.sp
+.ne 2
+.na
+\fB/kernel/drv/sparcv9/fcoet\fR
+.ad
+.RS 29n
+Device driver (SPARC)
+.RE
+
+.SH ATTRIBUTES
+See \fBattributes\fR(7) for a description of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+l | l
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture SPARC, x86
+.TE
+
+.SH SEE ALSO
+.BR fcoe (4D),
+.BR driver.conf (5),
+.BR attributes (7)
+.sp
+.LP
+\fIWriting Device Drivers\fR
+.sp
+.LP
+\fIANSI X3.269-1996, Fibre Channel Protocol for SCSI (FCP)\fR
diff --git a/usr/src/man/man4d/fcp.4d b/usr/src/man/man4d/fcp.4d
new file mode 100644
index 0000000000..45b007b5a5
--- /dev/null
+++ b/usr/src/man/man4d/fcp.4d
@@ -0,0 +1,91 @@
+'\" te
+.\" Copyright (c) 2004 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH FCP 4D "Oct 20, 2004"
+.SH NAME
+fcp \- Fibre Channel protocol driver
+.SH DESCRIPTION
+.sp
+.LP
+The \fBfcp\fR driver is the upper layer protocol that supports mechanisms for
+transporting \fBSCSI\fR-3 commands over Fibre Channel. The \fBfcp\fR driver,
+which interfaces with the Sun Fibre Channel transport library \fBfctl\fR(4D),
+supports the standard functions provided by the \fBSCSA \fRinterface.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/fcp\fR\fR
+.ad
+.RS 27n
+32-bit ELF kernel driver (x86)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/fcp\fR\fR
+.ad
+.RS 27n
+64-bit ELF kernel driver (x86)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/sparcv9/fcp\fR\fR
+.ad
+.RS 27n
+64-bit ELF kernel driver (SPARC)
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See attributes(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture SPARC
+_
+Interface stability Unknown
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR fctl (4D),
+.BR fp (4D),
+.BR usoc (4D),
+.BR driver.conf (5),
+.BR prtconf (8)
+.sp
+.LP
+\fIWriting Device Drivers\fR
+.sp
+.LP
+\fIFibre Channel Physical and Signaling Interface (FC-PH) ANSI X3.230: 1994\fR
+.sp
+.LP
+\fIFibre Channel Generic Services (FC-GS-2) Project 1134-D\fR
+.sp
+.LP
+\fIFibre Channel Arbitrated Loop (FC-AL) ANSI X3.272-1996\fR
+.sp
+.LP
+\fIFibre Channel Protocol for SCSI (FCP) ANSI X3.269-1996\fR
+.sp
+.LP
+\fISCSI-3 Architecture Model (SAM) Fibre Channel Private Loop SCSI Direct
+Attach (FC-PLDA) ANSI X3.270-1996\fR
+.sp
+.LP
+\fIFabric Loop Attachment (FC-FLA), NCITS TR-20:1998\fR
diff --git a/usr/src/man/man4d/fctl.4d b/usr/src/man/man4d/fctl.4d
new file mode 100644
index 0000000000..78412e6556
--- /dev/null
+++ b/usr/src/man/man4d/fctl.4d
@@ -0,0 +1,64 @@
+'\" te
+.\" Copyright (c) 2004 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH FCTL 4D "Oct 20, 2004"
+.SH NAME
+fctl \- Sun Fibre Channel transport library
+.SH DESCRIPTION
+.sp
+.LP
+The \fBfctl\fR kernel module interfaces the Sun Fibre Channel upper layer
+protocol (ULP) mapping modules with Sun Fibre Channel adapter (FCA) drivers.
+There are no user-configurable options for this module.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/kernel/misc/fctl\fR\fR
+.ad
+.RS 29n
+ 32-bit ELF kernel module (x86)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/misc/amd64/fctl\fR\fR
+.ad
+.RS 29n
+64-bit ELF kernel module (x86)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/misc/sparcv9/fctl\fR\fR
+.ad
+.RS 29n
+64-bit ELF kernel module (SPARC)
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See attributes(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture SPARC
+_
+Interface stability Unknown
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR fp (4D)
diff --git a/usr/src/man/man4d/fd.4d b/usr/src/man/man4d/fd.4d
new file mode 100644
index 0000000000..20bde66ce7
--- /dev/null
+++ b/usr/src/man/man4d/fd.4d
@@ -0,0 +1,805 @@
+'\" te
+.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH FD 4D "Mar 2, 2007"
+.SH NAME
+fd, fdc \- drivers for floppy disks and floppy disk controllers
+.SH SYNOPSIS
+.SS "SPARC"
+.LP
+.nf
+\fB/dev/diskette0\fR
+.fi
+
+.LP
+.nf
+\fB/dev/rdiskette0\fR
+.fi
+
+.SS "x86"
+.LP
+.nf
+\fB/dev/diskette[0-1]\fR
+.fi
+
+.LP
+.nf
+\fB/dev/rdiskette[0-1]\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBfd\fR and \fBfdc\fR drivers provide the interfaces to floppy disks using
+the Intel 8272, Intel 82077, NEC 765, or compatible disk controllers on x86
+based systems.
+.sp
+.LP
+The default partitions for the floppy driver are:
+.sp
+.ne 2
+.na
+\fBa\fR
+.ad
+.RS 5n
+All cylinders except the last
+.RE
+
+.sp
+.ne 2
+.na
+\fBb\fR
+.ad
+.RS 5n
+Only the last cylinder
+.RE
+
+.sp
+.ne 2
+.na
+\fBc\fR
+.ad
+.RS 5n
+Entire diskette
+.RE
+
+.sp
+.LP
+The \fBfd\fR driver autosenses the density of the diskette.
+.sp
+.LP
+When the floppy is first opened the driver looks for a SunOS label in logical
+block 0 of the diskette. If attempts to read the SunOS label fail, the open
+will fail. If block 0 is read successfully but a SunOS label is not found,
+auto-sensed geometry and default partitioning are assumed.
+.sp
+.LP
+The \fBfd\fR driver supports both block and raw interfaces.
+.sp
+.LP
+The block files (\fB/dev/diskette*\fR) access the diskette using the system's
+normal buffering mechanism and may be read and written without regard to
+physical diskette records.
+.sp
+.LP
+There is also a raw (\fB/dev/rdiskette*\fR) interface that provides for direct
+transmission between the diskette and the user's read or write buffer. A single
+\fBread\fR(2) or \fBwrite\fR(2) call usually results in one I/O operation;
+therefore raw I/O is considerably more efficient when larger blocking factors
+are used. A blocking factor of no less than 8 Kbytes is recommended. See the
+Notes section, below, for information on the number of sectors per track.
+.SS "3.5" Diskettes"
+.sp
+.LP
+For 3.5" double-sided diskettes, the following densities are supported:
+.SS "SPARC"
+.sp
+.ne 2
+.na
+\fB1.7 Mbyte density\fR
+.ad
+.RS 21n
+80 cylinders, 21 sectors per track, 1.7 Mbyte capacity
+.RE
+
+.sp
+.ne 2
+.na
+\fBhigh density\fR
+.ad
+.RS 21n
+80 cylinders, 18 sectors per track, 1.44 Mbyte capacity
+.RE
+
+.sp
+.ne 2
+.na
+\fBdouble density\fR
+.ad
+.RS 21n
+80 cylinders, 9 sectors per track, 720 Kbyte capacity
+.RE
+
+.SS "x86"
+.sp
+.ne 2
+.na
+\fBextended density\fR
+.ad
+.RS 21n
+80 cylinders, 36 sectors per track, 2.88 Mbyte capacity
+.RE
+
+.sp
+.ne 2
+.na
+\fB1.7 Mbyte density\fR
+.ad
+.RS 21n
+80 cylinders, 21 sectors per track, 1.7 Mbyte capacity
+.RE
+
+.sp
+.ne 2
+.na
+\fBhigh density\fR
+.ad
+.RS 21n
+80 cylinders, 18 sectors per track, 1.44 Mbyte capacity
+.RE
+
+.sp
+.ne 2
+.na
+\fBdouble density\fR
+.ad
+.RS 21n
+80 cylinders, 9 sectors per track, 760 Kbyte capacity
+.RE
+
+.SS "5.25" Diskettes"
+.sp
+.LP
+For 5.25" double-sided diskettes on x86 platforms, the densities listed below
+are supported:
+.SS "SPARC"
+.sp
+.LP
+5.25" diskettes are not supported on SPARC platforms.
+.SS "x86"
+.sp
+.ne 2
+.na
+\fBhigh density\fR
+.ad
+.RS 18n
+80 cylinders, 15 sectors per track, 1.2 Mbyte capacity
+.RE
+
+.sp
+.ne 2
+.na
+\fBdouble density\fR
+.ad
+.RS 18n
+40 cylinders, 9 sectors per track, 360 Kbyte capacity
+.RE
+
+.sp
+.ne 2
+.na
+\fBdouble density\fR
+.ad
+.RS 18n
+40 cylinders, 8 sectors per track, 320 Kbyte capacity
+.RE
+
+.sp
+.ne 2
+.na
+\fBquad density\fR
+.ad
+.RS 18n
+80 cylinders, 9 sectors per track, 720 Kbyte capacity
+.RE
+
+.sp
+.ne 2
+.na
+\fBdouble density\fR
+.ad
+.RS 18n
+40 cylinders, 16 sectors per track (256 bytes per sector), 320 Kbyte capacity
+.RE
+
+.sp
+.ne 2
+.na
+\fBdouble density\fR
+.ad
+.RS 18n
+40 cylinders, 4 sectors per track (1024 bytes per sector), 320 Kbyte capacity
+.RE
+
+.SH ERRORS
+.sp
+.ne 2
+.na
+\fB\fBEBUSY\fR\fR
+.ad
+.RS 10n
+During opening, the partition has been opened for exclusive access and another
+process wants to open the partition. Once open, this error is returned if the
+floppy disk driver attempted to pass a command to the floppy disk controller
+when the controller was busy handling another command. In this case, the
+application should try the operation again.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEFAULT\fR\fR
+.ad
+.RS 10n
+An invalid address was specified in an ioctl command (see \fBfdio\fR(4I)).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEINVAL\fR\fR
+.ad
+.RS 10n
+The number of bytes read or written is not a multiple of the diskette's sector
+size. This error is also returned when an unsupported command is specified
+using the \fBFDIOCMD\fR ioctl command (see \fBfdio\fR(4I)).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEIO\fR\fR
+.ad
+.RS 10n
+During opening, the diskette does not have a label or there is no diskette in
+the drive. Once open, this error is returned if the requested I/O transfer
+could not be completed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBENOSPC\fR\fR
+.ad
+.RS 10n
+An attempt was made to write past the end of the diskette.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBENOTTY\fR\fR
+.ad
+.RS 10n
+The floppy disk driver does not support the requested ioctl functions (see
+\fBfdio\fR(4I)).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBENXIO\fR\fR
+.ad
+.RS 10n
+The floppy disk device does not exist or the device is not ready.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEROFS\fR\fR
+.ad
+.RS 10n
+The floppy disk device is opened for write access and the diskette in the drive
+is write protected.
+.RE
+
+.SS "x86 Only"
+.sp
+.ne 2
+.na
+\fB\fBENOSYS\fR\fR
+.ad
+.RS 10n
+The floppy disk device does not support the requested ioctl function (
+\fBFDEJECT\fR).
+.RE
+
+.SH X86 CONFIGURATION
+.sp
+.LP
+The driver attempts to initialize itself using the information found in the
+configuration file, \fB/platform/i86pc/kernel/drv/fd.conf\fR.
+.sp
+.in +2
+.nf
+name="fd" parent="fdc" unit=0;
+name="fd" parent="fdc" unit=1;
+.fi
+.in -2
+
+.SH FILES
+.SS "SPARC"
+.sp
+.ne 2
+.na
+\fB\fB/platform/sun4u/kernel/drv/fd\fR\fR
+.ad
+.sp .6
+.RS 4n
+driver module
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/include/sys/fdreg.h\fR\fR
+.ad
+.sp .6
+.RS 4n
+structs and definitions for Intel 82072 and 82077 controllers
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/include/sys/fdvar.h\fR\fR
+.ad
+.sp .6
+.RS 4n
+structs and definitions for floppy drivers
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/diskette\fR\fR
+.ad
+.sp .6
+.RS 4n
+device file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/diskette0\fR\fR
+.ad
+.sp .6
+.RS 4n
+device file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/rdiskette\fR\fR
+.ad
+.sp .6
+.RS 4n
+raw device file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/rdiskette0\fR\fR
+.ad
+.sp .6
+.RS 4n
+raw device file
+.RE
+
+.SS "For ucb Compatibility"
+.sp
+.ne 2
+.na
+\fB\fB/dev/fd0[a-c]\fR\fR
+.ad
+.RS 24n
+block file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/rfd0[a-c]\fR\fR
+.ad
+.RS 24n
+raw file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/diskette0\fR\fR
+.ad
+.RS 24n
+directory containing volume management character device file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/rdiskette0\fR\fR
+.ad
+.RS 24n
+directory containing the volume management raw character device file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/aliases/floppy0\fR\fR
+.ad
+.RS 24n
+symbolic link to the entry in \fB/dev/rdiskette0\fR
+.RE
+
+.SS "x86"
+.sp
+.ne 2
+.na
+\fB\fB/platform/i86pc/kernel/drv/fd\fR\fR
+.ad
+.sp .6
+.RS 4n
+driver module
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/platform/i86pc/kernel/drv/fd.conf\fR\fR
+.ad
+.sp .6
+.RS 4n
+configuration file for floppy driver
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/platform/i86pc/kernel/drv/fdc\fR\fR
+.ad
+.sp .6
+.RS 4n
+floppy-controller driver module
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/platform/i86pc/kernel/drv/fdc.con\fRf\fR
+.ad
+.sp .6
+.RS 4n
+configuration file for the floppy-controller
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/include/sys/fdc.h\fR\fR
+.ad
+.sp .6
+.RS 4n
+structs and definitions for x86 floppy devices
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/include/sys/fdmedia.h\fR\fR
+.ad
+.sp .6
+.RS 4n
+structs and definitions for x86 floppy media
+.RE
+
+.SS "x86 First Drive"
+.sp
+.ne 2
+.na
+\fB\fB/dev/diskette\fR\fR
+.ad
+.RS 19n
+device file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/diskette0\fR\fR
+.ad
+.RS 19n
+device file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/rdiskette\fR\fR
+.ad
+.RS 19n
+raw device file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/rdiskette0\fR\fR
+.ad
+.RS 19n
+raw device file
+.RE
+
+.SS "For ucb Compatibility"
+.sp
+.ne 2
+.na
+\fB\fB/dev/fd0[a-c]\fR\fR
+.ad
+.RS 24n
+block file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/rfd0[a-c]\fR\fR
+.ad
+.RS 24n
+raw file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/diskette0\fR\fR
+.ad
+.RS 24n
+directory containing volume management character device file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/rdiskette0\fR\fR
+.ad
+.RS 24n
+directory containing the volume management raw character device file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/aliases/floppy0\fR\fR
+.ad
+.RS 24n
+symbolic link to the entry in /dev/rdiskette0
+.RE
+
+.SS "x86 Second Drive"
+.sp
+.ne 2
+.na
+\fB\fB/dev/diskette1\fR\fR
+.ad
+.RS 19n
+device file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/rdiskette1\fR\fR
+.ad
+.RS 19n
+raw device file
+.RE
+
+.SS "For ucb Compatibility"
+.sp
+.ne 2
+.na
+\fB\fB/dev/fd1[a-c]\fR\fR
+.ad
+.RS 24n
+block file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/rfd1[a-c]\fR\fR
+.ad
+.RS 24n
+raw file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/diskette1\fR\fR
+.ad
+.RS 24n
+directory containing volume management character device file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/rdiskette1\fR\fR
+.ad
+.RS 24n
+directory containing the volume management raw character device file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/aliases/floppy1\fR\fR
+.ad
+.RS 24n
+symbolic link to the entry in \fB/dev/rdiskette1\fR
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+\fBfdformat\fR(1), \fBdd\fR(8), \fBdrvconfig\fR(8), \fBread\fR(2),
+\fBwrite\fR(2), \fBdriver.conf\fR(5), \fBdkio\fR(4I) \fBfdio\fR(4I)
+.SH DIAGNOSTICS
+.SS "All Platforms"
+.sp
+.ne 2
+.na
+\fB\fBfd<n>: <command name> failed (<sr1> <sr2> <sr3>)\fR\fR
+.ad
+.sp .6
+.RS 4n
+The <command name> failed after several retries on drive <n>. The three hex
+values in parenthesis are the contents of status register 0, status register 1,
+and status register 2 of the Intel 8272, the Intel 82072, and the Intel 82077
+Floppy Disk Controller on completion of the command, as documented in the data
+sheet for that part. This error message is usually followed by one of the
+following, interpreting the bits of the status register:
+.sp
+.ne 2
+.na
+\fB\fBfd<\fR\fIn\fR\fB>:\fR\fR
+.ad
+.RS 10n
+\fBnot writable\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfd<\fR\fIn\fR\fB>:\fR\fR
+.ad
+.RS 10n
+\fBcrc error blk <block number>\fR
+.sp
+There was a data error on <block number>.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfd<\fR\fIn\fR\fB>:\fR\fR
+.ad
+.RS 10n
+\fBbad format\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfd<\fR\fIn\fR\fB>:\fR\fR
+.ad
+.RS 10n
+\fBtimeout\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfd<\fR\fIn\fR\fB>:\fR\fR
+.ad
+.RS 10n
+\fBdrive not ready\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfd<\fR\fIn\fR\fB>:\fR\fR
+.ad
+.RS 10n
+\fBunformatted diskette or no diskette in drive\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfd<\fR\fIn\fR\fB>:\fR\fR
+.ad
+.RS 10n
+\fBblock <block number> is past the end!\fR
+.sp
+\fB(nblk=<total number of blocks>)\fR
+.sp
+The operation tried to access a block number that is greater than the total
+number of blocks.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfd<\fR\fIn\fR\fB>:\fR\fR
+.ad
+.RS 10n
+\fBb_bcount 0x<op_size> not % 0x<sect_size>\fR
+.sp
+The size of an operation is not a multiple of the sector size.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfd<\fR\fIn\fR\fB>:\fR\fR
+.ad
+.RS 10n
+\fBoverrun/underrun\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfd<\fR\fIn\fR\fB>:\fR\fR
+.ad
+.RS 10n
+\fBhost bus error\fR. There was a hardware error on a system bus.
+.RE
+
+.RE
+
+.SS "SPARC Only"
+.sp
+.LP
+Overrun/underrun errors occur when accessing a diskette while the system is
+heavily loaded. Decrease the load on the system and retry the diskette access.
+.SH NOTES
+.sp
+.LP
+3.5" high density diskettes have 18 sectors per track and 5.25" high density
+diskettes have 15 sectors per track. They can cross a track (though not a
+cylinder) boundary without losing data, so when using \fBdd\fR(8) or
+\fBread\fR(2)/\fBwrite\fR(2) calls to or from the raw diskette, you should
+specify \fBbs=18k\fR or multiples thereof for 3.5" diskettes, and \fBbs=15k\fR
+or multiples thereof for 5.25" diskettes.
+.sp
+.LP
+The SPARC \fBfd\fR driver is \fInot\fR an unloadable module.
+.sp
+.LP
+Under Solaris (x86 Edition), the configuration of the floppy drives is
+specified in \fBCMOS\fR configuration memory. Use the \fBBIOS\fR setup program
+for the system to define the diskette size and density/capacity for each
+installed drive. Note that \fBMS-DOS\fR may operate the floppy drives
+correctly, even though the \fBCMOS\fR configuration may be in error. Solaris
+(x86 Edition) relies on the \fBCMOS\fR configuration to be accurate.
diff --git a/usr/src/man/man4d/fp.4d b/usr/src/man/man4d/fp.4d
new file mode 100644
index 0000000000..f3eff6c786
--- /dev/null
+++ b/usr/src/man/man4d/fp.4d
@@ -0,0 +1,198 @@
+'\" te
+.\" Copyright (c) 2008 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH FP 4D "Jan 10, 2008"
+.SH NAME
+fp \- Sun Fibre Channel port driver
+.SH DESCRIPTION
+.sp
+.LP
+The \fBfp\fR driver is a Sun fibre channel nexus driver that enables fibre
+channel topology discovery, device discovery, fibre channel adapter port
+management and other capabilities through well-defined fibre channel adapter
+driver interfaces.
+.sp
+.LP
+The \fBfp\fR driver requires the presence of a fabric name server in fabric and
+public loop topologies to discover fibre channel devices. In private loop
+topologies, the driver discovers devices by performing \fBPLOGI\fR to all valid
+\fBAL_PA\fRs, provided that devices do not participate in \fBLIRP\fR and
+\fBLILP\fR stages of loop initialization. The \fBfp\fR driver also discovers
+devices in N_Port point-to-point topologies.
+.SH CONFIGURATION
+.sp
+.LP
+The \fBfp\fR driver is configured by defining properties in the \fBfp.conf\fR
+file. Note that you must reboot the system to have any changes you make to
+\fBfp.conf\fR take effect. The \fBfp\fR driver supports the following
+properties:
+.sp
+.ne 2
+.na
+\fBmpxio-disable\fR
+.ad
+.sp .6
+.RS 4n
+Solaris I/O multipathing is enabled or disabled on fibre channel devices with
+the mpxio-disable property. Specifying mpxio-disable="no" activates I/O
+multipathing, while mpxio-disable="yes" disables the feature. Solaris I/O
+multipathing may be enabled or disabled on a per port basis. Per port settings
+override the global setting for the specified ports. The following example
+shows how to disable multipathing on port 0 whose parent is
+/pci@8,600000/SUNW,qlc@4:
+.sp
+.in +2
+.nf
+name="fp" parent="/pci@8,600000/SUNW,qlc@4" port=0
+mpxio-disable="yes";
+.fi
+.in -2
+
+.RE
+
+.sp
+.ne 2
+.na
+\fBmanual_configuration_only\fR
+.ad
+.sp .6
+.RS 4n
+Automatic configuration of SCSI devices in the fabric is enabled by default and
+thus allows all devices discovered in the SAN zone to be enumerated in the
+kernel's device tree automatically. The \fBmanual_configuration_only\fR
+property may be configured to disable the default behavior and force the
+manual configuration of the devices in the SAN. Specifying
+manual_configuration_only=1 disables the automatic configuration of devices.
+.RE
+
+.sp
+.ne 2
+.na
+\fBpwwn-lun-blacklist\fR
+.ad
+.sp .6
+.RS 4n
+Allows you to specify target port WWNs and LUN numbers you do not want
+configured. LUN numbers are interpreted as decimals. White spaces and commas
+(',') can be used in the list of LUN numbers.
+.sp
+.in +2
+.nf
+ #
+ # pwwn-lun-blacklist=
+ # "target-port-wwn,lun-list"
+ #
+ # To prevent LUNs 1 and 2 from being configured for target
+ # port 510000f010fd92a1 and target port 510000e012079df1, set:
+ #
+ # pwwn-lun-blacklist=
+ # "510000f010fd92a1,1,2",
+ # "510000e012079df1,1,2";
+ #
+.fi
+.in -2
+
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/fp\fR\fR
+.ad
+.RS 26n
+32-bit ELF kernel driver (x86)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/fp\fR\fR
+.ad
+.RS 26n
+64-bit ELF kernel driver (x86)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/sparcv9/fp\fR\fR
+.ad
+.RS 26n
+64-bit ELF kernel driver (SPARC)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/fp.conf\fR\fR
+.ad
+.RS 26n
+\fBfp\fR driver configuration file.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+mpxio-disable Uncommitted
+_
+manual_configuration_only Obsolete
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR fcp (4D),
+.BR fctl (4D),
+.BR scsi_vhci (4D),
+.BR driver.conf (5),
+.BR attributes (7),
+.BR cfgadm_fp (8),
+.BR prtconf (8),
+.BR stmsboot (8)
+.sp
+.LP
+\fIWriting Device Drivers\fR
+.sp
+.LP
+\fIFibre Channel Physical and Signaling Interface (FC-PH) ANSI X3.230: 1994\fR
+.sp
+.LP
+\fIFibre Channel Generic Services (FC-GS-2) Project 1134-D\fR
+.sp
+.LP
+\fIFibre Channel Arbitrated Loop (FC-AL) ANSI X3.272-1996\fR
+.sp
+.LP
+\fIFibre Channel Protocol for SCSI (FCP) ANSI X3.269-1996\fR
+.sp
+.LP
+\fISCSI-3 Architecture Model (SAM) Fibre Channel Private Loop SCSI Direct
+Attach (FC-PLDA) ANSI X3.270-1996\fR
+.sp
+.LP
+\fISCSI Direct Attach (FC-PLDA) ANSI X3.270-1996\fR
+.sp
+.LP
+\fISCSI Direct Attach (FC-PLDA) NCITS TR-19:1998\fR
+.sp
+.LP
+\fIFabric Loop Attachment (FC-FLA), NCITS TR-20:1998\fR
+.SH NOTES
+.sp
+.LP
+In N_Port point-to-point topologies, FCP error recovery does not work across
+events such as link bounce/cable pull. I/O to devices with FCP-2/FCP-3 support
+(for example, FC tape drives) will be disrupted by such events.
diff --git a/usr/src/man/man4d/full.4d b/usr/src/man/man4d/full.4d
new file mode 100644
index 0000000000..63e9232490
--- /dev/null
+++ b/usr/src/man/man4d/full.4d
@@ -0,0 +1,46 @@
+.\"
+.\" This file and its contents are supplied under the terms of the
+.\" Common Development and Distribution License ("CDDL"), version 1.0.
+.\" You may only use this file in accordance with the terms of version
+.\" 1.0 of the CDDL.
+.\"
+.\" A full copy of the text of the CDDL should have accompanied this
+.\" source. A copy of the CDDL is also available via the Internet at
+.\" http://www.illumos.org/license/CDDL.
+.\"
+.\" Copyright 2017 James S Blachly, MD <james.blachly@gmail.com>
+.
+.Dd "Feb 7, 2017"
+.Dt FULL 4D
+.Os
+.Sh NAME
+.Nm full
+.Nd always-full device
+.Sh SYNOPSIS
+.Pa /dev/full
+.Sh DESCRIPTION
+The
+.Nm
+device is used to test program behavior in out-of-space conditions.
+.Lp
+Writes always yield the error
+.Er ENOSPC.
+.Lp
+Reads supply an endless stream of zeros, identical to
+.Xr zero 4D
+.Lp
+.Xr lseek 2
+will always return successfully.
+.Lp
+.Xr mmap 2
+is not implemented.
+.Sh FILES
+.
+.Bl -tag -width Pa
+.It Pa /dev/full
+.El
+.
+.Sh SEE ALSO
+.Xr mem 4D ,
+.Xr null 4D ,
+.Xr zero 4D
diff --git a/usr/src/man/man4d/gld.4d b/usr/src/man/man4d/gld.4d
new file mode 100644
index 0000000000..7ebe7b5624
--- /dev/null
+++ b/usr/src/man/man4d/gld.4d
@@ -0,0 +1,1031 @@
+'\" te
+.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH GLD 4D "Nov 10, 2005"
+.SH NAME
+gld \- Generic \fBLAN\fR Driver
+.SH SYNOPSIS
+.nf
+\fB#include\fR \fB<sys/stropts.h>\fR
+.fi
+
+.LP
+.nf
+\fB#include\fR \fB<sys/stream.h>\fR
+.fi
+
+.LP
+.nf
+\fB#include\fR \fB<sys/dlpi.h>\fR
+.fi
+
+.LP
+.nf
+\fB#include\fR \fB<sys/gld.h>\fR
+.fi
+
+.SH INTERFACE LEVEL
+illumos architecture specific (illumos DDI).
+.SH DESCRIPTION
+GLD is a multi-threaded, clonable, loadable kernel module providing support for
+illumos local area network (\fBLAN\fR) device drivers. \fBLAN\fR drivers in
+illumos are \fBSTREAMS\fR-based drivers that use the Data Link Provider
+Interface (\fBDLPI\fR) to communicate with network protocol stacks. These
+protocol stacks use the network drivers to send and receive packets on a local
+area network. A network device driver must implement and adhere to the
+requirements imposed by the DDI/DKI specification, \fBSTREAMS\fR specification,
+DLPI specification, and programmatic interface of the device itself.
+.sp
+.LP
+GLD implements most \fBSTREAMS\fR and DLPI functionality required of an illumos
+LAN driver. Several illumos network drivers are implemented using GLD.
+.sp
+.LP
+An illumos network driver implemented using GLD comprises two distinct parts: a
+generic component that deals with \fBSTREAMS\fR and DLPI interfaces, and a
+device-specific component that deals with the particular hardware device. The
+device-specific module indicates its dependency on the GLD module and registers
+itself with GLD from within the driver's \fBattach\fR(9E) function. Once it is
+successfully loaded, the driver is \fBDLPI\fR-compliant. The device-specific
+part of the driver calls \fBgld\fR(9F) functions when it receives data or needs
+some service from GLD. GLD makes calls into the \fBgld\fR(9E) entry points of
+the device-specific driver through pointers provided to GLD by the
+device-specific driver when it registered itself with GLD. The
+\fBgld_mac_info\fR(9S) structure is the main data interface between GLD and the
+device-specific driver.
+.sp
+.LP
+The GLD facility currently supports devices of type \fBDL_ETHER\fR,
+\fBDL_TPR\fR, and \fBDL_FDDI\fR. GLD drivers are expected to process
+fully-formed MAC-layer packets and should not perform logical link control
+(LLC) handling.
+.LP
+Note -
+.sp
+.RS 2
+Support for the DL_TPR and DL_FDDI media types in GLD is obsolete and may be
+removed in a future release of illumos.
+.RE
+.sp
+.LP
+In some cases, it may be necessary or desirable to implement a full
+DLPI-compliant driver without using the GLD facility. This is true for devices
+that are not IEEE 802-style LAN devices, or where a device type or DLPI service
+not supported by GLD is required.
+.SS "Device Naming Constraints"
+The name of the device-specific driver module must adhere to the naming
+constraints outlined in the NOTES section of \fBdlpi\fR(4P).
+.SS "Type DL_ETHER: Ethernet V2 and ISO 8802-3 (IEEE 802.3)"
+For devices designated type \fBDL_ETHER\fR, GLD provides support for both
+Ethernet V2 and ISO 8802-3 (IEEE 802.3) packet processing. Ethernet V2 enables
+a data link service user to access and use any of a variety of conforming data
+link service providers without special knowledge of the provider's protocol. A
+service access point (\fBSAP\fR) is the point through which the user
+communicates with the service provider.
+.sp
+.LP
+SAP 0 denotes that the user wishes to use \fI802.3\fR mode. In transmission,
+GLD checks the destination SAP value of the DL_UNITDATA_REQ and the SAP value
+to which the stream is bound. If both are 0, the GLD computes the length of
+the packet payload and transmits \fI802.3\fR frames having that length in the
+MAC frame header type field. Such lengths will never exceed 1500.
+.sp
+.LP
+All frames received from the media that have a type field in the range [0-1500]
+are assumed to be \fI802.3\fR frames and are routed up all open streams that
+are in \fI802.3\fR mode, (those streams bound to a SAP value in of 0. If more
+than one stream is in \fI802.3\fR mode, the incoming frame is duplicated and
+routed up each such stream.
+.sp
+.LP
+Streams bound to a SAP value of 1536 or greater receive incoming packets
+whose Ethernet MAC header type value exactly matches the value of the SAP to
+which the stream is bound. SAP values in the range [1-1535] are undefined and
+should not be used.
+.SS "Types DL_TPR and DL_FDDI: SNAP Processing"
+Note -
+.sp
+.RS 2
+Support for the DL_TPR and DL_FDDI media types in GLD is obsolete and may be
+removed in a future release of illumos.
+.RE
+.sp
+.LP
+For media types DL_TPR and DL_FDDI, GLD implements minimal SNAP (Sub-Net
+Access Protocol) processing for SAP values of 1536 or greater. A SAP value of
+0 denotes that the user wishes to use LLC mode. SAP values in the range
+[1-1535] have undefined semantics and should not be used.
+.sp
+.LP
+\fBSNAP\fR headers are carried under LLC headers with destination SAP 0xAA. For
+outgoing packets with SAP values greater than 1535, GLD creates an LLC+SNAP
+header that always looks like:
+.sp
+.LP
+``AA AA 03 00 00 00 XX XX''
+.sp
+.LP
+where ``XX XX'' represents the 16-bit SAP, corresponding to the Ethernet V2
+style ``type.'' This is the only class of SNAP header that is processed -
+non-zero OUI fields, and LLC control fields other than 03 are considered to be
+LLC packets with SAP 0xAA.
+.sp
+.LP
+A DL_UNITDATA_REQ message specifying a destination SAP value of 0, passed
+down a stream bound to SAP 0, is assumed to contain an LLC packet and
+will not undergo SNAP processing.
+.sp
+.LP
+Incoming packets are examined to ascertain whether they fall into the format
+specified above. Packets that do will be passed to streams bound to the
+packet's 16-bit SNAP type, as well as being passed to any stream in LLC mode
+(those bound to a SAP value of 0).
+.SS "Type DL_TPR: Source Routing"
+Note -
+.sp
+.RS 2
+Support for the DL_TPR media type in GLD is obsolete and may be removed in a
+future release of illumos.
+.RE
+.sp
+.LP
+For type \fBDL_TPR\fR devices, GLD implements minimal support for source
+routing. Source routing enables a station that is sending a packet across a
+bridged medium to specify (in the packet MAC header) routing information that
+determines the route that the packet will take through the network.
+.sp
+.LP
+Functionally, the source routing support provided by GLD learns routes,
+solicits and responds to requests for information about possible multiple
+routes and selects among the multiple routes that are available. It adds
+\fIRouting Information Fields\fR to the MAC headers of outgoing packets and
+recognizes such fields in incoming packets.
+.sp
+.LP
+GLD's source routing support does not implement the full \fIRoute Determination
+Entity\fR \fB(RDE)\fR specified in \fIISO 8802-2 (IEEE 802.2)\fR Section 9.
+However, it is designed to interoperate with any such implementations that may
+exist in the same (or a bridged) network.
+.SS "Style 1 and 2 Providers"
+GLD implements both Style 1 and Style 2 providers. A physical point of
+attachment (\fBPPA\fR) is the point at which a system attaches itself to a
+physical communication medium. All communication on that physical medium
+funnels through the \fBPPA\fR. The Style 1 provider attaches the stream to a
+particular \fBPPA\fR based on the major/minor device that has been opened. The
+Style 2 provider requires the DLS user to explicitly identify the desired
+\fBPPA\fR using \fBDL_ATTACH_REQ.\fR In this case, \fBopen\fR(9E) creates a
+stream between the user and GLD and \fBDL_ATTACH_REQ\fR subsequently associates
+a particular \fBPPA\fR with that stream. Style 2 is denoted by a minor number
+of zero. If a device node whose minor number is not zero is opened, Style 1 is
+indicated and the associated \fBPPA\fR is the minor number minus 1. In both
+Style 1 and Style 2 opens, the device is cloned.
+.SS "Implemented DLPI Primitives"
+GLD implements the following DLPI primitives:
+.sp
+.LP
+The \fBDL_INFO_REQ\fR primitive requests information about the DLPI stream. The
+message consists of one \fBM_PROTO\fR message block. GLD returns
+device-dependent values in the \fBDL_INFO_ACK\fR response to this request,
+based on information the GLD-based driver specified in the
+\fBgld_mac_info\fR(9S) structure passed to \fBgld_register()\fR. However GLD
+returns the following values on behalf of all GLD-based drivers:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The version is \fBDL_VERSION_2\fR.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The service mode is \fBDL_CLDLS\fR \(em GLD implements connectionless-mode
+service.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The provider style is \fBDL_STYLE1\fR or \fBDL_STYLE2,\fR depending on how the
+stream was opened.
+.RE
+.sp
+.LP
+The \fBDL_ATTACH_REQ\fR primitive is called to associate a \fBPPA\fR with a
+stream. This request is needed for Style 2 DLS providers to identify the
+physical medium over which the communication will transpire. Upon completion,
+the state changes from \fBDL_UNATTACHED\fR to \fBDL_UNBOUND.\fR The message
+consists of one \fBM_PROTO\fR message block. This request may not be issued
+when using the driver in Style 1 mode; streams opened using Style 1 are already
+attached to a \fBPPA\fR by the time the open completes.
+.sp
+.LP
+The \fBDL_DETACH_REQ\fR primitive requests to detach the \fBPPA\fR from the
+stream. This is only allowed if the stream was opened using Style 2.
+.sp
+.LP
+The \fBDL_BIND_REQ\fR and \fBDL_UNBIND_REQ\fR primitives bind and unbind a
+\fBDLSAP\fR to the stream. The \fBPPA\fR associated with each stream will have
+been initialized upon completion of the processing of the \fBDL_BIND_REQ.\fR
+Multiple streams may be bound to the same \fBSAP\fR; each such stream receives
+a copy of any packets received for that SAP.
+.sp
+.LP
+The \fBDL_ENABMULTI_REQ\fR and \fBDL_DISABMULTI_REQ\fR primitives enable and
+disable reception of individual multicast group addresses. A set of multicast
+addresses may be iteratively created and modified on a per-stream basis using
+these primitives. The stream must be attached to a \fBPPA\fR for these
+primitives to be accepted.
+.sp
+.LP
+The \fBDL_PROMISCON_REQ\fR and \fBDL_PROMISCOFF_REQ\fR primitives enable and
+disable promiscuous mode on a per-stream basis, either at a physical level or
+at the \fBSAP\fR level. The DL Provider will route all received messages on the
+media to the DLS user until either a \fBDL_DETACH_REQ\fR or a
+\fBDL_PROMISCOFF_REQ\fR is received or the stream is closed. Physical level
+promiscuous mode may be specified for all packets on the medium or for
+multicast packets only. The stream must be attached to a \fBPPA\fR for these
+primitives to be accepted.
+.sp
+.LP
+The \fBDL_UNITDATA_REQ\fR primitive is used to send data in a connectionless
+transfer. Because this is an unacknowledged service, there is no guarantee of
+delivery. The message consists of one \fBM_PROTO\fR message block followed by
+one or more \fBM_DATA\fR blocks containing at least one byte of data.
+.sp
+.LP
+The \fBDL_UNITDATA_IND\fR type is used when a packet is received and is to be
+passed upstream. The packet is put into an \fBM_PROTO\fR message with the
+primitive set to \fBDL_UNITDATA_IND\fR.
+.sp
+.LP
+The \fBDL_PHYS_ADDR_REQ\fR primitive returns the MAC address currently
+associated with the \fBPPA\fR attached to the stream, in the
+\fBDL_PHYS_ADDR_ACK\fR primitive. When using style 2, this primitive is only
+valid following a successful \fBDL_ATTACH_REQ\fR.
+.sp
+.LP
+The \fBDL_SET_PHYS_ADDR_REQ\fR primitive changes the MAC address currently
+associated with the \fBPPA\fR attached to the stream. This primitive affects
+all other current and future streams attached to this device. Once changed, all
+streams currently or subsequently opened and attached to this device will
+obtain this new physical address. The new physical address will remain in
+effect until this primitive is used to change the physical address again or the
+driver is reloaded.
+.sp
+.LP
+The \fBDL_GET_STATISTICS_REQ\fR primitive requests a
+\fBDL_GET_STATISTICS_ACK\fR response containing statistics information
+associated with the PPA attached to the stream. Style 2 streams must be
+attached to a particular \fBPPA\fR using \fBDL_ATTACH_REQ\fR before this
+primitive will be successful.
+.sp
+.LP
+GLD supports the DL_NOTE_LINK_UP, DL_NOTE_LINK_DOWN and DL_NOTE_SPEED
+notifications using the DL_NOTIFY_IND primitive. See \fBdlpi\fR(4P).
+.SS "Implemented ioctl Functions"
+GLD implements the \fBDLIOCRAW\fR ioctl described in \fBdlpi\fR(4P). For any
+other ioctl command, GLD passes it to the device-specific driver's
+\fBgldm_ioctl()\fR function as described in \fBgld\fR(9E).
+.SS "Requirements on GLD Drivers"
+GLD-based drivers must include the header file \fB<sys/gld.h>\fR\&.
+.sp
+.LP
+GLD-based drivers must also specify a link dependency on "misc/gld". (See
+the -N option in \fBld\fR(1)).
+.sp
+.LP
+GLD implements the \fBopen\fR(9E) and \fBclose\fR(9E) functions and the
+required \fBSTREAMS\fR \fBput\fR(9E) and \fBsrv\fR(9E) functions on behalf of
+the device-specific driver. GLD also implements the \fBgetinfo\fR(9E) function
+for the driver.
+.sp
+.LP
+The \fBmi_idname\fR element of the \fBmodule_info\fR(9S) structure is a string
+specifying the name of the driver. This must exactly match the name of the
+driver module as it exists in the file system.
+.sp
+.LP
+The read-side \fBqinit\fR(9S) structure should specify the following elements
+as shown below:
+.sp
+.ne 2
+.na
+\fB\fBqi_putp\fR \fR
+.ad
+.RS 14n
+\fINULL\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBqi_srvp\fR \fR
+.ad
+.RS 14n
+\fBgld_rsrv\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBqi_qopen\fR \fR
+.ad
+.RS 14n
+\fBgld_open\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBqi_qclose\fR \fR
+.ad
+.RS 14n
+\fBgld_close\fR
+.RE
+
+.sp
+.LP
+The write-side \fBqinit\fR(9S) structure should specify the following elements
+as shown below:
+.sp
+.ne 2
+.na
+\fB\fBqi_putp\fR \fR
+.ad
+.RS 14n
+\fBgld_wput\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBqi_srvp\fR \fR
+.ad
+.RS 14n
+\fBgld_wsrv\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBqi_qopen\fR \fR
+.ad
+.RS 14n
+\fINULL\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBqi_qclose\fR \fR
+.ad
+.RS 14n
+\fINULL\fR
+.RE
+
+.sp
+.LP
+The \fBdevo_getinfo\fR element of the \fBdev_ops\fR(9S) structure should
+specify \fBgld_getinfo\fR as the \fBgetinfo\fR(9E) routine.
+.sp
+.LP
+The driver's \fBattach\fR(9E) function does all the work of associating the
+hardware-specific device driver with the GLD facility and preparing the device
+and driver for use.
+.sp
+.LP
+The \fBattach\fR(9E) function allocates a \fBgld_mac_info\fR(9S) (``macinfo'')
+structure using \fBgld_mac_alloc()\fR. The driver usually needs to save more
+information per device than is defined in the macinfo structure; it should
+allocate the additional required data structure and save a pointer to it in the
+\fBgldm_private\fR member of the \fBgld_mac_info\fR(9S) structure.
+.sp
+.LP
+The \fBattach\fR(9E) routine must initialize the macinfo structure as described
+in \fBgld_mac_info\fR(9S) and then call \fBgld_register()\fR to link the driver
+with the GLD module. The driver should map registers if necessary and be fully
+initialized and prepared to accept interrupts before calling
+\fBgld_register()\fR. The \fBattach\fR(9E) function should add interrupts but
+not enable the device to generate them. The driver should reset the hardware
+before calling \fBgld_register()\fR to ensure it is quiescent; the device must
+not be started or put into a state where it may generate an interrupt before
+\fBgld_register()\fR is called. That will be done later when GLD calls the
+driver's \fBgldm_start()\fR entry point described in \fBgld\fR(9E). Once
+\fBgld_register()\fR succeeds, the \fBgld\fR(9E) entry points may be called by
+GLD at any time.
+.sp
+.LP
+The \fBattach\fR(9E) routine should return \fBDDI_SUCCESS\fR if
+\fBgld_register()\fR succeeds. If \fBgld_register()\fR fails, it returns
+\fBDDI_FAILURE\fR and the \fBattach\fR(9E) routine should deallocate any
+resources it allocated before calling \fBgld_register()\fR and then also return
+\fBDDI_FAILURE\fR. Under no circumstances should a failed macinfo structure be
+reused; it should be deallocated using \fBgld_mac_free\fR().
+.sp
+.LP
+The \fBdetach\fR(9E) function should attempt to unregister the driver from GLD.
+This is done by calling \fBgld_unregister()\fR described in \fBgld\fR(9F). The
+\fBdetach\fR(9E) routine can get a pointer to the needed \fBgld_mac_info\fR(9S)
+structure from the device's private data using
+\fBddi_get_driver_private\fR(9F). \fBgld_unregister\fR() checks certain
+conditions that could require that the driver not be detached. If the checks
+fail, \fBgld_unregister()\fR returns \fBDDI_FAILURE\fR, in which case the
+driver's \fBdetach\fR(9E) routine must leave the device operational and return
+\fBDDI_FAILURE\fR. If the checks succeed, \fBgld_unregister()\fR ensures that
+the device interrupts are stopped, calling the driver's \fBgldm_stop()\fR
+routine if necessary, unlinks the driver from the GLD framework, and returns
+\fBDDI_SUCCESS\fR. In this case, the \fBdetach\fR(9E) routine should remove
+interrupts, deallocate any data structures allocated in the \fBattach\fR(9E)
+routine, using \fBgld_mac_free()\fR to deallocate the macinfo structure, and
+return \fBDDI_SUCCESS\fR. It is important to remove the interrupt \fIbefore\fR
+calling \fBgld_mac_free()\fR.
+.SS "Network Statistics"
+illumos network drivers must implement statistics variables. GLD itself tallies
+some network statistics, but other statistics must be counted by each GLD-based
+driver. GLD provides support for GLD-based drivers to report a standard set of
+network driver statistics. Statistics are reported by GLD using the
+\fBkstat\fR(4D) and \fBkstat\fR(9S) mechanism. The \fBDL_GET_STATISTICS_REQ\fR
+DLPI command may also be used to retrieve the current statistics counters. All
+statistics are maintained as unsigned, and all are 32 bits unless otherwise
+noted.
+.sp
+.LP
+GLD maintains and reports the following statistics.
+.sp
+.ne 2
+.na
+\fB\fBrbytes64\fR \fR
+.ad
+.RS 15n
+Total bytes successfully received on the interface (64 bits).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrbytes\fR \fR
+.ad
+.RS 15n
+Total bytes successfully received on the interface.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBobytes64\fR \fR
+.ad
+.RS 15n
+Total bytes requested to be transmitted on the interface (64 bits).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBobytes\fR \fR
+.ad
+.RS 15n
+Total bytes requested to be transmitted on the interface.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBipackets64\fR \fR
+.ad
+.RS 15n
+Total packets successfully received on the interface (64 bits).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBipackets\fR \fR
+.ad
+.RS 15n
+Total packets successfully received on the interface.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBopackets64\fR \fR
+.ad
+.RS 15n
+Total packets requested to be transmitted on the interface (64 bits).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBopackets\fR \fR
+.ad
+.RS 15n
+Total packets requested to be transmitted on the interface.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmultircv\fR \fR
+.ad
+.RS 15n
+Multicast packets successfully received, including group and functional
+addresses (long).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmultixmt\fR \fR
+.ad
+.RS 15n
+Multicast packets requested to be transmitted, including group and functional
+addresses (long).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBbrdcstrcv\fR \fR
+.ad
+.RS 15n
+Broadcast packets successfully received (long).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBbrdcstxmt\fR \fR
+.ad
+.RS 15n
+Broadcast packets requested to be transmitted (long).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBunknowns\fR \fR
+.ad
+.RS 15n
+Valid received packets not accepted by any stream (long).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnoxmtbuf\fR \fR
+.ad
+.RS 15n
+Packets discarded on output because transmit buffer was busy, or no buffer
+could be allocated for transmit (long).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBblocked\fR \fR
+.ad
+.RS 15n
+Times a received packet could not be put up a stream because the queue was flow
+controlled (long).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBxmtretry\fR \fR
+.ad
+.RS 15n
+Times transmit was retried after having been delayed due to lack of resources
+(long).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpromisc\fR \fR
+.ad
+.RS 15n
+Current ``promiscuous'' state of the interface (string).
+.RE
+
+.sp
+.LP
+The device dependent driver counts the following statistics, keeping track of
+them in a private per-instance structure. When GLD is asked to report
+statistics, it calls the driver's \fBgldm_get_stats()\fR entry point, as
+described in \fBgld\fR(9E), to update the device-specific statistics in the
+\fBgld_stats\fR(9S) structure. GLD then reports the updated statistics using
+the named statistics variables below.
+.sp
+.ne 2
+.na
+\fB\fBifspeed\fR \fR
+.ad
+.RS 13n
+Current estimated bandwidth of the interface in bits per second (64 bits).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmedia\fR \fR
+.ad
+.RS 13n
+Current media type in use by the device (string).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBintr\fR \fR
+.ad
+.RS 13n
+Times interrupt handler was called and claimed the interrupt (long).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnorcvbuf\fR \fR
+.ad
+.RS 13n
+Times a valid incoming packet was known to have been discarded because no
+buffer could be allocated for receive (long).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBierrors\fR \fR
+.ad
+.RS 13n
+Total packets received that couldn't be processed because they contained errors
+(long).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBoerrors\fR \fR
+.ad
+.RS 13n
+Total packets that weren't successfully transmitted because of errors (long).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmissed\fR \fR
+.ad
+.RS 13n
+Packets known to have been dropped by the hardware on receive (long).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBuflo\fR \fR
+.ad
+.RS 13n
+Times FIFO underflowed on transmit (long).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBoflo\fR \fR
+.ad
+.RS 13n
+Times receiver overflowed during receive (long).
+.RE
+
+.sp
+.LP
+The following group of statistics applies to networks of type \fBDL_ETHER\fR;
+these are maintained by device-specific drivers of that type, as above.
+.sp
+.ne 2
+.na
+\fB\fBalign_errors\fR \fR
+.ad
+.RS 23n
+Packets received with framing errors (not an integral number of octets) (long).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfcs_errors\fR \fR
+.ad
+.RS 23n
+Packets received with CRC errors (long).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBduplex\fR \fR
+.ad
+.RS 23n
+Current duplex mode of the interface (string).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcarrier_errors\fR \fR
+.ad
+.RS 23n
+Times carrier was lost or never detected on a transmission attempt (long).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcollisions\fR \fR
+.ad
+.RS 23n
+Ethernet collisions during transmit (long).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBex_collisions\fR \fR
+.ad
+.RS 23n
+Frames where excess collisions occurred on transmit, causing transmit failure
+(long).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBtx_late_collisions\fR \fR
+.ad
+.RS 23n
+Times a transmit collision occurred late (after 512 bit times) (long).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdefer_xmts\fR \fR
+.ad
+.RS 23n
+Packets without collisions where first transmit attempt was delayed because the
+medium was busy (long).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfirst_collisions\fR \fR
+.ad
+.RS 23n
+Packets successfully transmitted with exactly one collision.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmulti_collisions\fR \fR
+.ad
+.RS 23n
+Packets successfully transmitted with multiple collisions.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsqe_errors\fR \fR
+.ad
+.RS 23n
+Times SQE test error was reported.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmacxmt_errors\fR \fR
+.ad
+.RS 23n
+Packets encountering transmit MAC failures, except carrier and collision
+failures.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmacrcv_errors\fR \fR
+.ad
+.RS 23n
+Packets received with MAC errors, except align, fcs, and toolong errors.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBtoolong_errors\fR \fR
+.ad
+.RS 23n
+Packets received larger than the maximum permitted length.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrunt_errors\fR \fR
+.ad
+.RS 23n
+Packets received smaller than the minimum permitted length (long).
+.RE
+
+.sp
+.LP
+The following group of statistics applies to networks of type \fBDL_TPR\fR;
+these are maintained by device-specific drivers of that type, as above.
+.sp
+.ne 2
+.na
+\fB\fBline_errors\fR \fR
+.ad
+.RS 24n
+Packets received with non-data bits or FCS errors.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBburst_errors\fR \fR
+.ad
+.RS 24n
+Times an absence of transitions for five half-bit timers was detected.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsignal_losses\fR \fR
+.ad
+.RS 24n
+Times loss of signal condition on the ring was detected.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBace_errors\fR \fR
+.ad
+.RS 24n
+Times an AMP or SMP frame in which A is equal to C is equal to 0, was followed
+by another such SMP frame without an intervening AMP frame.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBinternal_errors\fR \fR
+.ad
+.RS 24n
+Times the station recognized an internal error.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBlost_frame_errors\fR \fR
+.ad
+.RS 24n
+Times the TRR timer expired during transmit.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBframe_copied_errors\fR \fR
+.ad
+.RS 24n
+Times a frame addressed to this station was received with the FS field A bit
+set to 1.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBtoken_errors\fR \fR
+.ad
+.RS 24n
+Times the station acting as the active monitor recognized an error condition
+that needed a token transmitted.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfreq_errors\fR \fR
+.ad
+.RS 24n
+Times the frequency of the incoming signal differed from the expected
+frequency.
+.RE
+
+.sp
+.LP
+The following group of statistics applies to networks of type \fBDL_FDDI\fR;
+these are maintained by device-specific drivers of that type, as above.
+.sp
+.ne 2
+.na
+\fB\fBmac_errors\fR \fR
+.ad
+.RS 20n
+Frames detected in error by this MAC that had not been detected in error by
+another MAC.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmac_lost_errors\fR \fR
+.ad
+.RS 20n
+Frames received with format errors such that the frame was stripped.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmac_tokens\fR \fR
+.ad
+.RS 20n
+Number of tokens received (total of non-restricted and restricted).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmac_tvx_expired\fR \fR
+.ad
+.RS 20n
+Number of times that TVX has expired.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmac_late\fR \fR
+.ad
+.RS 20n
+Number of TRT expirations since this MAC was reset or a token was received.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmac_ring_ops\fR \fR
+.ad
+.RS 20n
+Number of times the ring has entered the ``Ring_Operational'' state from the
+``Ring Not Operational'' state.
+.RE
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/kernel/misc/gld\fR \fR
+.ad
+.RS 21n
+loadable kernel module
+.RE
+
+.SH SEE ALSO
+.BR ld (1),
+.BR kstat (4D),
+.BR dlpi (4P),
+.BR attach (9E),
+.BR gld (9E),
+.BR open (9E),
+.BR gld (9F),
+.BR gld_mac_info (9S),
+.BR gld_stats (9S),
+.BR kstat (9S)
+.sp
+.LP
+\fIWriting Device Drivers\fR
+.SH WARNINGS
+Contrary to the DLPI specification, GLD returns the device's correct address
+length and broadcast address in \fBDL_INFO_ACK\fR even before the stream has
+been attached to a \fBPPA\fR.
+.sp
+.LP
+Promiscuous mode may only be entered by streams that are attached to a
+\fBPPA\fR.
+.sp
+.LP
+The physical address of a \fBPPA\fR may be changed by the superuser while other
+streams are bound to the same PPA.
diff --git a/usr/src/man/man4d/gpio_87317.4d b/usr/src/man/man4d/gpio_87317.4d
new file mode 100644
index 0000000000..b359138cfa
--- /dev/null
+++ b/usr/src/man/man4d/gpio_87317.4d
@@ -0,0 +1,38 @@
+'\" te
+.\" Copyright (2000 Sun Microsystems, Inc. All
+.\" Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH GPIO_87317 4D "Apr 12, 2000"
+.SH NAME
+gpio_87317 \- General purpose I/O driver for SuperIO
+.SH DESCRIPTION
+.sp
+.LP
+The \fBgpio_87317\fR driver is the general purpose I/O driver for the National
+Semiconductor SuperIO (PC87317) chipset. It supports remote system controller
+(RSC) administration via an interface to the SuperIO's general purpose I/O
+bits.
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture Limited to SPARC systems with SuperIO
+_
+Interface Stability Unstable
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+\fIPC87317VUL/PC97317VUL SuperI/O Data Sheet \fR\(em National Semiconductor
diff --git a/usr/src/man/man4d/grbeep.4d b/usr/src/man/man4d/grbeep.4d
new file mode 100644
index 0000000000..697551d0df
--- /dev/null
+++ b/usr/src/man/man4d/grbeep.4d
@@ -0,0 +1,64 @@
+'\" te
+.\" Copyright (c) 2001 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH GRBEEP 4D "Dec 18, 2001"
+.SH NAME
+grbeep \- Platform-dependent beep driver for SMBus-based hardware
+.SH SYNOPSIS
+.LP
+.nf
+beep@unit-address
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBgrbeep\fR driver generates beeps on platforms (including Sun Blade 100,
+150, 1500, 2500) that use SMBbus-based registers and USB keyboards. When the
+\fBKIOCCMD\fR ioctl is issued to the USB keyboard module (see \fBusbkbm\fR(4M))
+with command \fBKBD_CMD_BELL/KBD_CMD_NOBELL\fR, \fBusbkbm\fR(4M) passes the
+request to the \fBgrbeep\fR driver to turn the beep on and off, respectively.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/platform/sun4u/kernel/drv/sparcv9/grbeep\fR\fR
+.ad
+.sp .6
+.RS 4n
+ 64-bit ELF kernel driver
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See attributes(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture SMBus-based SPARC
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR kbd (1),
+.BR bbc_beep (4D),
+.BR kb (4M),
+.BR usbkbm (4M),
+.BR attributes (7)
+.sp
+.LP
+\fIWriting Device Drivers\fR
+.SH DIAGNOSTICS
+.sp
+.LP
+None
diff --git a/usr/src/man/man4d/hci1394.4d b/usr/src/man/man4d/hci1394.4d
new file mode 100644
index 0000000000..3cd1da758e
--- /dev/null
+++ b/usr/src/man/man4d/hci1394.4d
@@ -0,0 +1,65 @@
+'\" te
+.\" Copyright (c) 2005 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH HCI1394 4D "Jan 10, 2020"
+.SH NAME
+hci1394 \- 1394 OpenHCI host controller driver
+.SH SYNOPSIS
+.nf
+\fBfirewire@unit-address\fR
+.fi
+
+.SH DESCRIPTION
+The \fBhci1394\fR host controller driver is an IEEE 1394 compliant nexus driver
+that supports the \fI1394 Open Host Controller Interface Specification 1.0\fR,
+an industry standard developed by Sun, Apple, Compaq, Intel, Microsoft,
+National Semiconductor, and Texas Instruments. The \fBhci1394\fR driver supports
+asynchronous transfers, isochronous transfers, and bus reset management. The
+\fBhci1394\fR driver also supports the nexus device control interface.
+.SH FILES
+.ne 2
+.na
+\fB\fB/kernel/drv/sparcv9/hci1394\fR\fR
+.ad
+.sp .6
+.RS 4n
+Device driver (SPARC)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/hci1394\fR\fR
+.ad
+.sp .6
+.RS 4n
+Device driver (x86)
+.RE
+
+.SH ATTRIBUTES
+See \fBattributes\fR(7) for a description of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+l | l
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture SPARC, x86, PCI-based systems
+_
+Interface Stability Unstable
+.TE
+
+.SH SEE ALSO
+.BR ieee1394 (4D),
+.BR attributes (7)
+.sp
+.LP
+\fIIEEE 1394 - IEEE Standard for a High Performance Serial Bus\fR
+.sp
+.LP
+\fI1394 Open Host Controller Interface Specification 1.0\fR
diff --git a/usr/src/man/man4d/hermon.4d b/usr/src/man/man4d/hermon.4d
new file mode 100644
index 0000000000..331b2ce86a
--- /dev/null
+++ b/usr/src/man/man4d/hermon.4d
@@ -0,0 +1,173 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH HERMON 4D "Jul 31, 2008"
+.SH NAME
+hermon \- ConnectX MT25408/MT25418/MT25428 InfiniBand (IB) Driver
+.SH DESCRIPTION
+.sp
+.LP
+The \fBhermon\fR driver is an IB Architecture-compliant implementation of an
+HCA, which operates on the Mellanox MT25408, MT25418 and MT25428 InfiniBand
+ASSPs using host memory for context storage rather than locally attached
+memory on the card. Cards based on these ASSP's utilize the PCI-Express I/O
+bus. These ASSP's support the link and physical layers of the InfiniBand
+specification while the ASSP and the driver support the transport layer.
+.sp
+.LP
+The \fBhermon\fR driver interfaces with the InfiniBand Transport Framework
+(IBTF) and provides an implementation of the Channel Interfaces that are
+defined by that framework. It also enables management applications and
+agents to access the IB fabric.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/hermon\fR\fR
+.ad
+.sp .6
+.RS 4n
+32-bit \fBELF\fR kernel module. (x86)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/hermon\fR\fR
+.ad
+.sp .6
+.RS 4n
+64-bit \fBELF\fR kernel module. (x86)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/sparcv9/hermon\fR\fR
+.ad
+.sp .6
+.RS 4n
+64-bit ELF Kernel Module. (SPARC)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/hermon.conf\fR\fR
+.ad
+.sp .6
+.RS 4n
+Driver configuration file.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attribute:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture PCIe-based systems
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR driver.conf (5),
+.BR printers.conf (5),
+.BR attributes (7)
+.sp
+.LP
+\fIWriting Device Drivers\fR
+.SH DIAGNOSTICS
+.sp
+.LP
+In addition to being logged, the following messages may appear on the system
+console:
+.sp
+.ne 2
+.na
+\fBhermon\fBi\fR: driver attached for maintenance mode only.\fR
+.ad
+.sp .6
+.RS 4n
+There was a failure in the boot process of the hermon ASSP and the only
+function that can be performed is to re-flash firmware on the ASSP. (Note that
+\fBi\fR represents the instance of the hermon device number.)
+.RE
+
+.sp
+.ne 2
+.na
+\fBhermon\fBi:\fR driver failed to attach\fR
+.ad
+.sp .6
+.RS 4n
+The ASSP could not boot into either operational (HCA) mode or into
+maintenance mode. The device is inoperable. (Note that \fB i\fR represents the
+instance of the hermon device number.)
+.RE
+
+.sp
+.ne 2
+.na
+\fBUnexpected port number in port state change event.\fR
+.ad
+.sp .6
+.RS 4n
+A port state change event occurred, but the port number in the message does
+not exist on this HCA. This message also indicates the port number that was in
+the port state changed.
+.RE
+
+.sp
+.ne 2
+.na
+\fBHermon driver successfully detached.\fR
+.ad
+.sp .6
+.RS 4n
+The driver has been removed from the system and the HCA is no longer available
+for transfer operations.
+.RE
+
+.sp
+.ne 2
+.na
+\fBhermon\fBi:\fR port \fBm\fR up.\fR
+.ad
+.sp .6
+.RS 4n
+A port up asynchronous event has occurred. (Note that \fB i\fR represents the
+instance of the Hermon device number while "m" represents the port number on
+the Hermon device.
+.RE
+
+.sp
+.ne 2
+.na
+\fBhermon\fBi:\fR port \fBm\fR down.\fR
+.ad
+.sp .6
+.RS 4n
+A port up asynchronous event has occurred. Similar to port up event.
+.RE
+
+.sp
+.ne 2
+.na
+\fBhermon: <command name> command failed.\fR
+.ad
+.sp .6
+.RS 4n
+A internal firmware command failed to execute.
+.RE
+
diff --git a/usr/src/man/man4d/hid.4d b/usr/src/man/man4d/hid.4d
new file mode 100644
index 0000000000..c072ea8590
--- /dev/null
+++ b/usr/src/man/man4d/hid.4d
@@ -0,0 +1,243 @@
+'\" te
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH HID 4D "June 19, 2021"
+.SH NAME
+hid \- Human interface device (HID) class driver
+.SH SYNOPSIS
+.nf
+\fBkeyboard@unit-address\fR
+\fBmouse@unit-address\fR
+\fBinput@unit-address:consumer_control\fR
+\fB#include <sys/usb/clients/hid/hid.h>\fR
+\fBint ioctl(int fildes, int command, ... /*arg*/);\fR
+.fi
+
+.SH DESCRIPTION
+The \fBhid\fR driver is a USBA (Solaris USB Architecture) compliant client
+driver that supports the \fIHuman Interface Device Class (HID) 1.0\fR
+specification. The Human Interface Device (HID) class encompasses devices
+controlled by humans to operate computer systems. Typical examples of HID
+devices include keyboards, mice, trackballs, and joysticks. HID also covers
+front-panel controls such as knobs, switches, and buttons. A USB device with
+multiple interfaces may have one interface for audio and a HID interface to
+define the buttons that control the audio.
+.sp
+.LP
+The \fBhid\fR driver is general and primarily handles the USB functionality of
+the device and generic HID functionality. For example, HID interfaces are
+required to have an interrupt pipe for the device to send data packets, and the
+\fBhid\fR driver opens the pipe to the interrupt endpoint and starts polling.
+The \fBhid\fR driver is also responsible for managing the device through the
+default control pipe. In addition to being a USB client driver, the \fBhid\fR
+driver is also a STREAMS driver so that modules may be pushed on top of it.
+.sp
+.LP
+The HID specification is flexible, and HID devices dynamically describe their
+packets and other parameters through a HID report descriptor. The HID parser is
+a misc module that parses the HID report descriptor and creates a database of
+information about the device. The \fBhid\fR driver queries the HID parser to
+find out the type and characteristics of the HID device. The HID specification
+predefines packet formats for the boot protocol keyboard and mouse.
+.SH IOCTLS
+.ne 2
+.na
+\fB\fBHIDIOCKMGDIRECT\fR\fR
+.ad
+.RS 19n
+This ioctl should only be addressed to a USB keyboard or mouse device. The
+\fBhid\fR driver maintains two streams for each USB keyboard/mouse instance: an
+internal one for the use of the kernel and an external one for the use of user
+applications. This ioctl returns the information of which stream gets the input
+for the moment.
+.sp
+\fIarg\fR must point to a variable of \fBint\fR type. Upon return, \fB0\fR
+means the internal stream gets the input, \fB1\fR means the external stream
+gets the input.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBHIDIOCKMSDIRECT\fR\fR
+.ad
+.RS 19n
+This ioctl should only be addressed to a USB keyboard or mouse device. The hid
+driver maintains two streams for each USB keyboard/mouse instance: an internal
+one for the use of the kernel and an external one for the use of user
+applications. This ioctl sets which stream should get the input for the moment.
+.sp
+\fIarg\fR must point to a variable of \fBint\fR type. The argument \fB0\fR
+means the internal stream gets the input, \fB1\fR means the external stream
+gets the input.
+.RE
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/hid\fR\fR
+.ad
+.sp .6
+.RS 4n
+64-bit x86 ELF kernel hid module
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/sparcv9/hid\fR\fR
+.ad
+.sp .6
+.RS 4n
+64-bit SPARC ELF kernel hid module
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/misc/amd64/hidparser\fR\fR
+.ad
+.sp .6
+.RS 4n
+64-bit x86 ELF kernel hidparser module
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/misc/sparcv9/hidparser\fR\fR
+.ad
+.sp .6
+.RS 4n
+64-bit SPARC ELF kernel hidparser module
+.RE
+
+.SH ATTRIBUTES
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture SPARC, x86, PCI-based systems
+.TE
+
+.SH SEE ALSO
+.BR usba (4D),
+.BR virtualkm (4D),
+.BR attributes (7),
+.BR cfgadm_usb (8)
+.sp
+.LP
+\fIWriting Device Drivers\fR
+.sp
+.LP
+\fISTREAMS Programming Guide\fR
+.sp
+.LP
+\fIUniversal Serial Bus Specification 1.0 and 1.1\fR
+.sp
+.LP
+\fIDevice Class Definition for Human Interface Devices (HID) 1.1\fR
+.sp
+.LP
+\fISystem Administration Guide: Basic Administration\fR
+.SH DIAGNOSTICS
+.ne 2
+.na
+\fBhid_attach: Unsupported HID device.\fR
+.ad
+.sp .6
+.RS 4n
+The device requires a protocol not supported by the hid driver.
+.RE
+
+.sp
+.ne 2
+.na
+\fBParsing of hid descriptor failed.\fR
+.ad
+.sp .6
+.RS 4n
+The HID report descriptor cannot be parsed correctly. The device cannot be
+supported by the hid driver.
+.RE
+
+.sp
+.ne 2
+.na
+\fBInvalid report descriptor.\fR
+.ad
+.sp .6
+.RS 4n
+The HID report descriptor is invalid. The device cannot be supported by the hid
+driver.
+.RE
+
+.sp
+.LP
+The following messages may be logged into the system log. They are formatted in
+the following manner:
+.sp
+.in +2
+.nf
+<device path><hid<instance number>): message...
+.fi
+.in -2
+.sp
+
+.sp
+.ne 2
+.na
+\fBhid_attach: Unsupported HID device.\fR
+.ad
+.sp .6
+.RS 4n
+The device cannot be supported by this version of the HID driver.
+.RE
+
+.sp
+.ne 2
+.na
+\fBParsing of HID descriptor failed.\fR
+.ad
+.sp .6
+.RS 4n
+The device cannot be supported by this version of the HID driver.
+.RE
+
+.sp
+.ne 2
+.na
+\fBInvalid report descriptor.\fR
+.ad
+.sp .6
+.RS 4n
+The device cannot be supported by this version of the HID driver.
+.RE
+
+.SH NOTES
+The hid driver currently supports only keyboard, mouse and audio HID control
+devices.
+.sp
+.LP
+Normally a mouse is not power managed and consequently, screen darkening can be
+undone with a mouse movement. If power management of the mouse is required, add
+the following line to \fBhid.conf\fR then reboot the system:
+.sp
+.in +2
+.nf
+hid-mouse-pm-enable;
+.fi
+.in -2
+
+.sp
+.LP
+Modern mice that are power managed require a 'click' to wake up. Occasionally,
+this may cause unexpected results.
diff --git a/usr/src/man/man4d/hme.4d b/usr/src/man/man4d/hme.4d
new file mode 100644
index 0000000000..ef5c2cee5b
--- /dev/null
+++ b/usr/src/man/man4d/hme.4d
@@ -0,0 +1,401 @@
+'\" te
+.\" Copyright (c) 1995, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH HME 4D "Sep 5, 1995"
+.SH NAME
+hme \- SUNW,hme Fast-Ethernet device driver
+.SH SYNOPSIS
+.LP
+.nf
+\fB/dev/hme\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBSUNW,hme\fR Fast-Ethernet driver is a multi-threaded, loadable,
+clonable, STREAMS hardware driver supporting the connectionless Data Link
+Provider Interface, \fBdlpi\fR(4P), over a \fBSUNW,hme\fR Fast-Ethernet
+controller. The motherboard and add-in SBus \fBSUNW,hme\fR controllers of
+several varieties are supported. Multiple \fBSUNW,hme\fR controllers installed
+within the system are supported by the driver.
+.sp
+.LP
+The \fBhme\fR driver provides basic support for the \fBSUNW,hme\fR hardware. It
+is used to handle the \fBSUNW,hme\fR device. Functions include chip
+initialization, frame transit and receive, multicast and promiscuous support,
+and error recovery and reporting. \fBSUNW,hme\fR The \fBSUNW,hme\fR device
+provides 100Base-TX networking interfaces using SUN's \fBFEPS ASIC\fR and an
+Internal Transceiver. The FEPS ASIC provides the Sbus interface and MAC
+functions and the Physical layer functions are provided by the Internal
+Transceiver which connects to a \fBRJ-45\fR connector. In addition to the RJ-45
+connector, an \fBMII\fR (Media Independent Interface) connector is also
+provided on all \fBSUNW,hme\fR devices except the \fBSunSwith SBus adapter\fR
+board. The MII interface is used to connect to an External Transceiver which
+may use any physical media (copper or fiber) specified in the 100Base-TX
+standard. When an External Transceiver is connected to the MII, the driver
+selects the External Transceiver and disables the Internal Transceiver.
+.sp
+.LP
+The 100Base-TX standard specifies an "auto-negotiation" protocol to
+automatically select the mode and speed of operation. The Internal transceiver
+is capable of doing "auto-negotiation" with the remote-end of the link (Link
+Partner) and receives the capabilities of the remote end. It selects the
+\fBHighest Common Denominator\fR mode of operation based on the priorities. It
+also supports \fBforced-mode\fR of operation where the driver can select the
+mode of operation.
+.SH APPLICATION PROGRAMMING INTERFACE
+.sp
+.LP
+The cloning character-special device \fB/dev/hme\fR is used to access all
+\fBSUNW,hme\fR controllers installed within the system.
+.SS "hme and DLPI"
+.sp
+.LP
+The \fBhme\fR driver is a "style 2" Data Link Service provider. All
+\fBM_PROTO\fR and \fBM_PCPROTO\fR type messages are interpreted as \fBDLPI\fR
+primitives. Valid \fBDLPI\fR primitives are defined in \fB<sys/dlpi.h>.\fR
+Refer to \fBdlpi\fR(4P) for more information. An explicit \fBDL_ATTACH_REQ\fR
+message by the user is required to associate the opened stream with a
+particular device (\fBppa\fR). The \fBppa\fR ID is interpreted as an
+\fBunsigned long\fR data type and indicates the corresponding device instance
+(unit) number. An error (\fBDL_ERROR_ACK\fR) is returned by the driver if the
+\fBppa\fR field value does not correspond to a valid device instance number for
+this system. The device is initialized on first attach and de-initialized
+(stopped) at last detach.
+.sp
+.LP
+The values returned by the driver in the \fBDL_INFO_ACK\fR primitive in
+response to the \fBDL_INFO_REQ\fR from the user are as follows:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The maximum \fBSDU\fR is \fB1500\fR (\fBETHERMTU\fR - defined in
+<sys/ethernet.h> ).
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The minimum \fBSDU\fR is \fB0\fR.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The \fBdlsap\fR address length is \fB8.\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The \fBMAC\fR type is \fBDL_ETHER.\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The \fBsap\fR length values is \fB\(mi2\fR meaning the physical address
+component is followed immediately by a 2 byte \fBsap\fR component within the
+\fBDLSAP\fR address.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The service mode is \fBDL_CLDLS.\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+No optional quality of service (QOS) support is included at present so the
+\fBQOS\fR fields are \fB0\fR.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The provider style is \fBDL_STYLE2.\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The version is \fBDL_VERSION_2.\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The broadcast address value is Ethernet/IEEE broadcast address
+(\fB0xFFFFFF\fR).
+.RE
+.sp
+.LP
+Once in the \fBDL_ATTACHED\fR state, the user must send a \fBDL_BIND_REQ\fR to
+associate a particular \fBSAP\fR (Service Access Pointer) with the stream. The
+\fBhme\fR driver interprets the \fBsap\fR field within the \fBDL_BIND_REQ\fR as
+an Ethernet "type" therefore valid values for the \fBsap\fR field are in the
+[\fB0\fR-\fB0xFFFF\fR] range. Only one Ethernet type can be bound to the
+stream at any time.
+.sp
+.LP
+If the user selects a \fBsap\fR with a value of \fB0\fR, the receiver will be
+in "802.3 mode". All frames received from the media having a "type" field in
+the range [\fB0\fR-\fB1500\fR] are assumed to be 802.3 frames and are routed up
+all open Streams which are bound to \fBsap\fR value \fB0\fR. If more than one
+Stream is in "802.3 mode" then the frame will be duplicated and routed up
+multiple Streams as \fBDL_UNITDATA_IND\fR messages.
+.sp
+.LP
+In transmission, the driver checks the \fBsap\fR field of the \fBDL_BIND_REQ\fR
+if the \fBsap\fR value is \fB0\fR, and if the destination type field is in the
+range [\fB0\fR-\fB1500\fR]. If either is true, the driver computes the length
+of the message, not including initial \fBM_PROTO\fR mblk (message block), of
+all subsequent \fBDL_UNITDATA_REQ\fR messages and transmits 802.3 frames that
+have this value in the MAC frame header length field.
+.sp
+.LP
+The \fBhme\fR driver \fBDLSAP\fR address format consists of the 6 byte physical
+(Ethernet) address component followed immediately by the 2 byte \fBsap\fR
+(type) component producing an 8 byte \fBDLSAP\fR address. Applications should
+\fInot\fR hardcode to this particular implementation-specific \fBDLSAP\fR
+address format but use information returned in the \fBDL_INFO_ACK\fR primitive
+to compose and decompose \fBDLSAP\fR addresses. The \fBsap\fR length, full
+\fBDLSAP\fR length, and \fBsap\fR/physical ordering are included within the
+\fBDL_INFO_ACK.\fR The physical address length can be computed by subtracting
+the \fBsap\fR length from the full \fBDLSAP\fR address length or by issuing the
+\fBDL_PHYS_ADDR_REQ\fR to obtain the current physical address associated with
+the stream.
+.sp
+.LP
+Once in the \fBDL_BOUND\fR state, the user may transmit frames on the Ethernet
+by sending \fBDL_UNITDATA_REQ\fR messages to the \fBhme\fR driver. The
+\fBhme\fR driver will route received Ethernet frames up all those open and
+bound streams having a \fBsap\fR which matches the Ethernet type as
+\fBDL_UNITDATA_IND\fR messages. Received Ethernet frames are duplicated and
+routed up multiple open streams if necessary. The \fBDLSAP\fR address contained
+within the \fBDL_UNITDATA_REQ\fR and \fBDL_UNITDATA_IND\fR messages consists of
+both the \fBsap\fR (type) and physical (Ethernet) components.
+.sp
+.LP
+In addition to the mandatory connectionless \fBDLPI\fR message set the driver
+additionally supports the following primitives.
+.SS "hme Primitives"
+.sp
+.LP
+The \fBDL_ENABMULTI_REQ\fR and \fBDL_DISABMULTI_REQ\fR primitives
+enable/disable reception of individual multicast group addresses. A set of
+multicast addresses may be iteratively created and modified on a per-stream
+basis using these primitives. These primitives are accepted by the driver in
+any state following \fBDL_ATTACHED.\fR
+.sp
+.LP
+The \fBDL_PROMISCON_REQ\fR and \fBDL_PROMISCOFF_REQ\fR primitives with the
+\fBDL_PROMISC_PHYS\fR flag set in the \fBdl_level\fR field enables/disables
+reception of all ("promiscuous mode") frames on the media including frames
+generated by the local host. When used with the \fBDL_PROMISC_SAP\fR flag set
+this enables/disables reception of all \fBsap\fR (Ethernet type) values. When
+used with the \fBDL_PROMISC_MULTI\fR flag set this enables/disables reception
+of all multicast group addresses. The effect of each is always on a per-stream
+basis and independent of the other \fBsap\fR and physical level configurations
+on this stream or other streams.
+.sp
+.LP
+The \fBDL_PHYS_ADDR_REQ\fR primitive returns the 6 octet Ethernet address
+currently associated (attached) to the stream in the \fBDL_PHYS_ADDR_ACK\fR
+primitive. This primitive is valid only in states following a successful
+\fBDL_ATTACH_REQ.\fR
+.sp
+.LP
+The \fBDL_SET_PHYS_ADDR_REQ\fR primitive changes the 6 octet Ethernet address
+currently associated (attached) to this stream. The credentials of the process
+which originally opened this stream must be superuser. Otherwise \fBEPERM\fR
+is returned in the \fBDL_ERROR_ACK.\fR This primitive is destructive in that it
+affects all other current and future streams attached to this device. An
+\fBM_ERROR\fR is sent up all other streams attached to this device when this
+primitive is successful on this stream. Once changed, all streams subsequently
+opened and attached to this device will obtain this new physical address. Once
+changed, the physical address will remain until this primitive is used to
+change the physical address again or the system is rebooted, whichever comes
+first.
+.SS "hme DRIVER"
+.sp
+.LP
+By default, the hme driver performs "auto-negotiation" to select the
+\fBmode\fR and \fBspeed\fR of the link, when the Internal Transceiver is used.
+.sp
+.LP
+When an External Transceiver is connected to the \fBMII\fR interface, the
+driver selects the External Transceiver for networking operations. If the
+External Transceiver supports "auto-negotiation", the driver uses the
+auto-negotiation procedure to select the link speed and mode. If the External
+Transceiver does not support auto-negotiation, it will select the highest
+priority mode supported by the transceiver.
+.RS +4
+.TP
+.ie t \(bu
+.el o
+100 Mbps, full-duplex
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+100 Mbps, half-duplex
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+10 Mbps, full-duplex
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+10 Mbps, half-duplex
+.RE
+.sp
+.LP
+The link can be in one of the \fI4\fR following modes:
+.sp
+.LP
+These speeds and modes are described in the 100Base-TX standard.
+.sp
+.LP
+The \fIauto\(minegotiation\fR protocol automatically selects:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Operation mode (half-duplex or full-duplex)
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Speed (100 Mbps or 10 Mbps)
+.RE
+.sp
+.LP
+The auto\(minegotiation protocol does the following:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Gets all the modes of operation supported by the Link Partner
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Advertises its capabilities to the Link Partner
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Selects the highest common denominator mode of operation based on the
+priorities
+.RE
+.sp
+.LP
+The \fIinternal\fR \fItransceiver\fR is capable of all of the operating speeds
+and modes listed above. When the internal transceiver is used, by
+\fIdefault\fR, auto-negotiation is used to select the speed and the mode of the
+link and the common mode of operation with the Link Partner.
+.sp
+.LP
+When an \fIexternal\fR \fItransceiver\fR is connected to the \fBMII\fR
+interface, the driver selects the external transceiver for networking
+operations. If the external transceiver supports auto-negotiation:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The driver uses the auto-negotiation procedure to select the link speed and
+mode.
+.RE
+.sp
+.LP
+If the external transceiver \fIdoes\fR \fInot\fR support auto-negotiation
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The driver selects the highest priority mode supported by the transceiver.
+.RE
+.sp
+.LP
+Sometimes, the user may want to select the speed and mode of the link. The
+\fBSUNW,hme\fR device supports programmable \fB"IPG"\fR (Inter-Packet Gap)
+parameters \fBipg1\fR and \fBipg2\fR. By default, the driver sets \fBipg1\fR
+to 8 \fBbyte-times\fR and \fBipg2\fR to 4 \fBbyte-times\fR (which are the
+standard values). Sometimes, the user may want to alter these values depending
+on whether the driver supports 10 Mbps or 100 Mbps and accordingly, \fBIPG\fR
+will be set to 9.6 or 0.96 microseconds.
+.SS "hme Parameter List"
+.sp
+.LP
+The hme driver provides for setting and getting various parameters for the
+\fBSUNW,hme\fR device. The parameter list includes:
+.br
+.in +2
+\fBcurrent transceiver status\fR
+.in -2
+.br
+.in +2
+\fBcurrent link status\fR
+.in -2
+.br
+.in +2
+\fBinter-packet gap\fR
+.in -2
+.br
+.in +2
+\fBlocal transceiver capabilities\fR
+.in -2
+.br
+.in +2
+\fBlink partner capabilities\fR
+.in -2
+.sp
+.LP
+The local transceiver has two set of capabilities: one set reflects the
+capabilities of the \fBhardware\fR, which are \fBread-only\fR \fB(RO)\fR
+parameters and the second set reflects the values chosen by the user and is
+used in \fBspeed selection\fR. There are \fBread/write\fR \fB(RW)\fR
+capabilities. At boot time, these two sets of capabilities will be the same.
+The Link Partner capabilities are also read only parameters because the current
+default value of these parameters can only be read and cannot be modified.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/dev/hme\fR\fR
+.ad
+.RS 24n
+\fBhme\fR special character device
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/hme.conf\fR\fR
+.ad
+.RS 24n
+System-wide default device driver properties
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR dlpi (4P),
+.BR driver.conf (5),
+.BR ndd (8),
+.BR netstat (8)
diff --git a/usr/src/man/man4d/hubd.4d b/usr/src/man/man4d/hubd.4d
new file mode 100644
index 0000000000..910bedfc13
--- /dev/null
+++ b/usr/src/man/man4d/hubd.4d
@@ -0,0 +1,316 @@
+'\" te
+.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH HUBD 4D "May 13, 2017"
+.SH NAME
+hubd \- USB hub driver
+.SH SYNOPSIS
+.LP
+.nf
+\fBhub@unit-address\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBhubd\fR is a USBA (illumos USB Architecture) compliant client driver
+that supports USB hubs conforming to the \fIUniversal Serial Bus Specification
+3.0\fR. The \fBhubd\fR driver supports bus-powered and self-powered hubs. The
+driver supports hubs with individual port power, ganged power and no power
+switching.
+.sp
+.LP
+When a device is attached to a hub port, the \fBhubd\fR driver enumerates the
+device by determining its type and assigning an address to it. For
+multi-configuration devices, \fBhubd\fR sets the preferred configuration (refer
+to \fBcfgadm_usb\fR(8) to select a configuration). The \fBhubd\fR driver
+attaches a driver to the device if one is available for the default or selected
+configuration. When the device is disconnected from the hub port, the
+\fBhubd\fR driver offlines any driver instance attached to the device.
+.SH FILES
+.ne 2
+.na
+\fB\fB/kernel/drv/hubd\fR\fR
+.ad
+.RS 28n
+32- bit x86 ELF kernel module
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/hubd\fR\fR
+.ad
+.RS 28n
+64- bit x86 ELF kernel module
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/sparcv9/hubd\fR\fR
+.ad
+.RS 28n
+64-bit SPARC ELF kernel module
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for a description of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture SPARC, x86, PCI-based systems
+.TE
+
+.SH SEE ALSO
+.LP
+.BR usba (4D),
+.BR attributes (7),
+.BR cfgadm_usb (8)
+.sp
+.LP
+\fIWriting Device Drivers\fR
+.sp
+.LP
+\fIUniversal Serial Bus Specification 2.0\fR
+.sp
+.LP
+\fISystem Administration Guide: Basic Administration\fR
+.SH DIAGNOSTICS
+.LP
+In addition to being logged, the following messages may also appear on the
+system console. Messages are formatted in the following manner:
+.sp
+.in +2
+.nf
+WARNING: <device path> <hubd<instance number>): Message...
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+where \fB<instance number>\fR is the instance number of \fBhubd\fR and
+\fB<device path>\fR is the physical path to the device in \fB/devices\fR
+directory. Messages from the root hub are displayed with a \fBusb<instance
+number>\fR prefix instead of \fBhub<instance number>\fR as the root hub is an
+integrated part of the host controller.
+.sp
+.ne 2
+.na
+\fBConnecting device on port \fI<number>\fR failed.\fR
+.ad
+.sp .6
+.RS 4n
+The driver failed to enumerate the device connected on port \fI<number>\fR of
+hub. If enumeration fails, disconnect and re-connect.
+.RE
+
+.sp
+.ne 2
+.na
+\fBUse of a USB 1.0 hub behind a high speed port may cause unexpected
+failures.\fR
+.ad
+.sp .6
+.RS 4n
+Devices connected to a USB 1.0 hub which are in turn connected to an external
+USB 2.0 hub, may misbehave unexpectedly or suddenly go offline. This is due to
+a documented incompatibility between USB 1.0 hubs and USB 2.0 hub Transaction
+Translators. Please use only USB 2.0 or USB 1.1 hubs behind high-speed ports.
+.RE
+
+.sp
+.ne 2
+.na
+\fBConnecting a high speed device to a non-high speed hub (port x) will result
+in a loss of performance. Please connect the device to a high speed port to get
+the maximum performance.\fR
+.ad
+.sp .6
+.RS 4n
+USB 2.0 devices connected to USB 1.0 or 1.1 hubs cannot run at their highest
+speed, even when the hub is in turn connected to a high-speed port. For best
+performance, reconnect without going through a USB 1.0 or 1.1 hub.
+.RE
+
+.sp
+.ne 2
+.na
+\fBCannot access <device>. Please reconnect.\fR
+.ad
+.sp .6
+.RS 4n
+This hub has been disconnected because a device other than the original one has
+been inserted. The driver informs you of this fact by displaying the name of
+the original device.
+.RE
+
+.sp
+.ne 2
+.na
+\fBPort <n> overcurrent. \fR
+.ad
+.sp .6
+.RS 4n
+An overcurrent condition was detected. Please remove the device on this port.
+.RE
+
+.sp
+.ne 2
+.na
+\fBDevices not identical to the previous one on this port. Please disconnect
+and reconnect.\fR
+.ad
+.sp .6
+.RS 4n
+Same condition as described above; however in this case, the driver is unable
+to identify the original device with a name string.
+.RE
+
+.sp
+.ne 2
+.na
+\fBHub driver supports max of \fI<n>\fR ports on hub. Hence, using the first
+\fI<number of physical ports>\fR of \fI<n>\fR ports available.\fR
+.ad
+.sp .6
+.RS 4n
+The current hub driver supports hubs that have \fI<n>\fR ports or less. A hub
+with more than \fI<n>\fR ports has been plugged in. Only the first \fI<n>\fR
+out of the total \fI<number of physical ports>\fR ports are usable.
+.RE
+
+.sp
+.ne 2
+.na
+\fBHub global over current condition, please disconnect the devices connected
+to the hub to clear the condition. You may need to re-connect the hub if the
+ports do not work.\fR
+.ad
+.sp .6
+.RS 4n
+An overcurrent condition was detected on the hub. This means that the
+aggregate current being drawn by the devices on the downstream ports exceeds a
+preset value. Refer to section 7.2.1.2 and 11.13 of the \fIUniversal Serial Bus
+Specification 2.0\fR. If this message continues to display, you may need to
+remove downstream devices to eliminate the problem. If any port does not work
+after the overcurrent condition is cleared, re-connect the hub to re-enable the
+ports.
+.RE
+
+.sp
+.ne 2
+.na
+\fBRoot hub over current condition, please check your system to clear the
+condition as soon as possible. You may need to reboot the system if the root
+hub does not recover automatically.\fR
+.ad
+.sp .6
+.RS 4n
+An overcurrent condition was detected on the root hub, indicating that
+malfunctioning devices on the downstream ports are drawing too much current.
+Please disconnect the problematic downstream devices to eliminate the problem.
+If the root hub doesn't work after the overcurrent condition is cleared, you
+may need to reboot the system.
+.RE
+
+.sp
+.LP
+The following messages may be logged into the system log. They are formatted in
+the following manner:
+.sp
+.in +2
+.nf
+<device path><hubd<instance number>): message...
+.fi
+.in -2
+.sp
+
+.sp
+.ne 2
+.na
+\fBLocal power has been lost, please disconnect hub.\fR
+.ad
+.sp .6
+.RS 4n
+A USB self-powered hub has lost external power. All USB devices connected
+down-stream from this hub will cease to function. Disconnect the hub, plug in
+the external power-supply and then plug in the hub again.
+.RE
+
+.sp
+.ne 2
+.na
+\fBLocal power has been lost, the hub could draw <x> mA power from the USB
+bus.\fR
+.ad
+.sp .6
+.RS 4n
+A USB self/bus-powered hub has lost external power. Some USB devices connected
+down-stream from this hub may cease to function. Disconnect the
+external power-supply and then plug in the hub again.
+.RE
+
+.sp
+.ne 2
+.na
+\fBTwo bus-powered hubs cannot be concatenated.\fR
+.ad
+.sp .6
+.RS 4n
+A bus-powered hub was connected to a bus powered hub port. Please remove this
+bus-powered hub and connect it to a self-powered hub or a root hub port.
+.RE
+
+.sp
+.ne 2
+.na
+\fBConfiguration <n> for device <device> at port <m> exceeds power available
+for this port. Please re-insert your device into another hub port which has
+enough power.\fR
+.ad
+.sp .6
+.RS 4n
+The device requires more power than is available on this port.
+.RE
+
+.sp
+.ne 2
+.na
+\fBPort <\fIn\fR\fB> in over current condition, please check the attached device
+to clear the condition. The system will try to recover the port, but if not
+successful, you need to re-connect the hub or reboot the system to bring the
+port back to work.\fR
+.ad
+.sp .6
+.RS 4n
+An overcurrent condition was detected on port <\fIn\fR>. This means the device
+connected to the port is drawing more current than the hub can supply. If this
+message continues to display, please disconnect the device to eliminate the
+problem. If the port doesn't work after the overcurrent condition is cleared,
+please re-connect the hub or reboot the system to enable the port again.
+.RE
+
+.sp
+.ne 2
+.na
+\fBUnable to attach USB 3.x hub <vendor> <device>. A maximum of 5 hubs
+may be cascaded.\fR
+.ad
+.sp .6
+.RS 4n
+USB 3.0 has an upper bound on the number of hubs that may be chained
+together. If this limit is exceeded, a hub may not be detected or
+attached. The hub will be functional if plugged into a different part of
+the USB topology. To determine the depth of the hub, count the number of
+devices between it and the host controller.
+.RE
diff --git a/usr/src/man/man4d/hxge.4d b/usr/src/man/man4d/hxge.4d
new file mode 100644
index 0000000000..8f19e4cf7c
--- /dev/null
+++ b/usr/src/man/man4d/hxge.4d
@@ -0,0 +1,208 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH HXGE 4D "June 20, 2021"
+.SH NAME
+hxge \- Sun Blade 10 Gigabit Ethernet network driver
+.SH SYNOPSIS
+.nf
+/dev/hxge*
+.fi
+
+.SH DESCRIPTION
+The \fBhxge\fR Gigabit Ethernet driver is a multi-threaded, loadable, clonable,
+GLD-based STREAMS driver supporting the Data Link Provider Interface,
+\fBdlpi\fR(4P), on the Sun Blade Shared 10Gb Ethernet Interface.
+.sp
+.LP
+The Shared PCI-Express 10 Gb networking interface provides network I/O
+consolidation for up to six Constellation blades, with each blade seeing its
+own portion of the network interface.
+.sp
+.LP
+The \fBhxge\fR driver functions include chip initialization, frame transmit and
+receive, flow classification, multicast and promiscuous support and error
+recovery and reporting in the blade domain.
+.SH APPLICATION PROGRAMMING INTERFACE
+The cloning character-special device, \fB/dev/hxge\fR, is used to access Sun
+Blade Shared 10Gb Ethernet Interface devices installed within the system.
+.sp
+.LP
+The \fBhxge\fR driver is managed by the \fBdladm\fR(8) command line utility,
+which allows VLANs to be defined on top of \fBhxge\fR instances and for
+\fBhxge\fR instances to be aggregated. See \fBdladm\fR(8) for more details.
+.sp
+.LP
+You must send an explicit DL_ATTACH_REQ message to associate the opened stream
+with a particular device (PPA). The PPA ID is interpreted as an unsigned
+integer data type and indicates the corresponding device instance (unit)
+number. The driver returns an error (DL_ERROR_ACK) if the PPA field value does
+not correspond to a valid device instance number for the system. The device is
+initialized on first attach and de-initialized (stopped) at last detach
+.sp
+.LP
+The values returned by the driver in the DL_INFO_ACK primitive in response to a
+DL_INFO_REQ are:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Maximum SDU is 1500 (ETHERMTU - defined in <\fBsys/ethernet.h\fR>).
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Minimum SDU is 0.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+DLSAP address length is 8.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+MAC type is \fBDL_ETHER\fR.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBSAP\fR length value is \fI-2\fR, meaning the physical address component is
+followed immediately by a 2-byte \fBSAP\fR component within the \fBDLSAP\fR
+address.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Broadcast address value is the Ethernet/IEEE broadcast address
+(FF:FF:FF:FF:FF:FF).
+.sp
+Due to the nature of the link address definition for IPoIB, the
+DL_SET_PHYS_ADDR_REQ DLPI primitive is not supported.
+.sp
+In the transmit case for streams that have been put in raw mode via the
+DLIOCRAW ioctl, the \fBdlpi\fR application must prepend the 20 byte IPoIB
+destination address to the data it wants to transmit over-the-wire. In the
+receive case, applications receive the IP/ARP datagram along with the IETF
+defined 4 byte header.
+.RE
+.sp
+.LP
+Once in the DL_ATTACHED state, you must send a DL_BIND_REQ to associate a
+particular Service Access Point (SAP) with the stream.
+.SH CONFIGURATION
+The link speed and mode are fixed at 10 Gbps full-duplex.
+.sp
+.LP
+The default MTU is 1500. To enable jumbo frame support, you configure the
+\fBhxge\fR driver by defining the accept-jumbo property to 1 in the
+\fBhxge.conf\fR file. Note that the largest jumbo size is 9178 bytes.
+.sp
+.LP
+The driver may be configured to discard certain classes of traffic. By default,
+no class of traffic is allowed. You configure the \fBhxge\fR driver by defining
+the class option property to 0x20000 in \fBhxge.conf\fR to discard the
+specified class of traffic. For example, the following line in \fBhxge.conf\fR
+discards all IP Version 4 TCP traffic:
+.sp
+.in +2
+.nf
+class-opt-ipv4-tcp = 0x20000;
+.fi
+.in -2
+
+.sp
+.LP
+You can also use the \fBndd\fR(8) command to configure the \fBhxge\fR driver
+at runtime to discard any classes of traffic.
+.sp
+.LP
+The \fBhxge\fR driver supports self-healing functionality, see \fBfmd\fR(8). By
+default it is configured to DDI_FM_EREPORT_CAPABLE | DDI_FM_ERRCB_CAPABLE.
+You configure the \fBhxge\fR driver by defining the fm-capable property in
+\fBhxge.conf\fR to other capabilities or to 0x0 to disable it entirely.
+.sp
+.LP
+The \fBhxge\fR driver may be configured using the standard \fBifconfig\fR(8)
+command.
+.sp
+.LP
+The \fBhxge\fR driver also reports various hardware and software statistics
+data. You can view these statistics using the \fBkstat\fR(8) command.
+.SH FILES
+.ne 2
+.na
+\fB\fB/dev/hxge*\fR\fR
+.ad
+.RS 28n
+Special character device.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/sparcv9/hxge\fR\fR
+.ad
+.RS 28n
+64-bit device driver (SPARC).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/hxge\fR\fR
+.ad
+.RS 28n
+64-bit device driver (x86).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/hxge.conf\fR\fR
+.ad
+.RS 28n
+Configuration file.
+.RE
+
+.SH ATTRIBUTES
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture SPARC, x86
+.TE
+
+.SH SEE ALSO
+.BR streamio (4I),
+.BR dlpi (4P),
+.BR driver.conf (5),
+.BR attributes (7),
+.BR dladm (8),
+.BR fmd (8),
+.BR ifconfig (8),
+.BR kstat (8),
+.BR ndd (8),
+.BR netstat (8)
+.sp
+.LP
+\fIWriting Device Drivers\fR
+.sp
+.LP
+\fISTREAMS Programming Guide\fR
+.sp
+.LP
+\fINetwork Interfaces Programmer's Guide\fR
diff --git a/usr/src/man/man4d/i40e.4d b/usr/src/man/man4d/i40e.4d
new file mode 100644
index 0000000000..90a519f280
--- /dev/null
+++ b/usr/src/man/man4d/i40e.4d
@@ -0,0 +1,335 @@
+.\"
+.\" This file and its contents are supplied under the terms of the
+.\" Common Development and Distribution License ("CDDL"), version 1.0.
+.\" You may only use this file in accordance with the terms of version
+.\" 1.0 of the CDDL.
+.\"
+.\" A full copy of the text of the CDDL should have accompanied this
+.\" source. A copy of the CDDL is also available via the Internet at
+.\" http://www.illumos.org/license/CDDL.
+.\"
+.\"
+.\" Copyright (c) 2018 Joyent, Inc.
+.\" Copyright 2020 Ryan Zezeski
+.\" Copyright 2021 Oxide Computer Company
+.\"
+.Dd January 18, 2021
+.Dt I40E 4D
+.Os
+.Sh NAME
+.Nm i40e
+.Nd Intel 710/722 Ethernet Device Driver
+.Sh SYNOPSIS
+.Pa /dev/net/i40e*
+.Sh DESCRIPTION
+The
+.Nm
+driver is a GLDv3, multi-threaded, clonable, loadable device driver that
+supports the Data Link Provider Interface,
+.Xr dlpi 4P .
+The
+.Nm
+driver supports the Intel 710 and 722 Ethernet Controller families of
+networking interface cards which support speeds of 1 GbE, 2.5 GbE, 5 GbE, 10
+GbE, 25 GbE, and 40 GbE.
+.Pp
+In addition to basic device initialization and the sending and receiving
+of frames, it supports the following features:
+.Bl -dash -offset indent
+.It
+Jumbo frames up to 9710 bytes.
+.It
+Promiscuous access via
+.Xr snoop 8 and
+.Xr dlpi 4P
+.It
+IPv4 Checksum Offload
+.It
+TCP, UDP, and SCTP checksum offload
+.It
+IPv4 and IPv6 TCP Segmentation offload
+.El
+.Pp
+At this time, the
+.Nm
+driver does not enable the use of energy efficient Ethernet (EEE) or
+support the use of flow control through hardware pause frames.
+.Sh APPLICATION PROGRAMMING INTERFACE
+For each device supported by the
+.Nm
+installed in the system, a character-special file will be created.
+This file supports the Data Link Provider Interface (DLPI) which is documented
+in
+.Xr dlpi 4P .
+For most consumers, the use of
+.Xr libdlpi 3LIB ,
+is recommended.
+.Pp
+Each instance is assigned a unique ascending integer identifier.
+A device which has multiple ports may appear to the system as separate
+instances.
+The system does not provide a guarantee on how these will be presented.
+Using this instance identifier, one can determine the exact character-special
+file to open.
+For example, the first instance enumerated in the system, with id 0, would be
+named
+.Sy i40e0 .
+It exists in the file system at
+.Pa /dev/net/i40e0 .
+.Sh CONFIGURATION
+The
+.Nm i40e
+driver always performs auto-negotiation and depending on the model may
+negotiate to 40 Gbps, 25 Gbps, 10 Gbps, or 1 Gbps.
+At this time, the driver requires the use of auto-negotiation.
+.Pp
+The
+.Nm
+driver is managed by the
+.Xr dladm 8
+utility.
+.Xr dladm 8
+is the preferred interface for setting all properties.
+While
+.Xr driver.conf 5
+based configuration is possible,
+.Xr dladm 8
+is recommended.
+The
+.Nm
+driver may be joined into an aggregation based on the link aggregation
+control protocol (LACP) through
+.Xr dladm 8 .
+.Sh PROPERTIES
+The device supports the following properties which may be tuned through
+its driver.conf file,
+.Pa /kernel/drv/i40e.conf .
+Most of these properties cannot be changed after the device has been started.
+The device is started in response to a DLPI consumer opening the device and
+binding to it.
+This happens when an IP interfaces is plumbed or another
+.Xr dlpi 4P
+consumer such as
+.Xr snoop 8
+or an LLDP daemon is started.
+.Pp
+Some properties may be tuned at runtime with the
+.Xr dladm 8
+utility.
+Properties that can be will have the name of the dladm property called out
+explicitly.
+.Pp
+These properties are not considered stable at this time.
+They may change and should not be relied on.
+They are considered
+.Sy Volatile .
+It is not expected that administrators of the system will have to tune
+these values.
+.Bl -hang -width Ds
+.It Sy default_mtu
+.Bd -filled -compact
+Minimum:
+.Sy 1500 |
+Maximum:
+.Sy 9710 |
+Runtime Property:
+.Sy mtu
+.Ed
+.Bd -filled
+The
+.Sy default_mtu
+property determines the starting MTU of the various device instances.
+Note that the device's MTU also determines the upper bound of the MTU of
+all VNICs created over the device.
+The default MTU is
+.Sy 1500 .
+.Ed
+.It Sy mr_enable
+.Bd -filled -compact
+Minimum:
+.Sy 0 |
+Maximum:
+.Sy 1
+.Ed
+.Bd -filled
+The
+.Sy mr_enable
+property determines whether or not support for multiple rings is enabled
+for the device.
+The default is always to enable them.
+It is not recommended to to disable them.
+.Ed
+.It Sy rx_num_groups
+.Bd -filled -compact
+Minimum:
+.Sy 1 |
+Maximum:
+.Sy 32
+.Ed
+.Bd -filled
+The
+.Sy rx_num_groups
+property determines the number of receive mac groups provided by the driver.
+Each group can handle all unicast traffic for a single MAC address, more groups
+means more unicast traffic that can be steered by hardware.
+However, more groups also means more demand for kernel memory.
+If you are not making heavy use of VNICs, or do not need the efficiency gains
+of hardware steering, then reducing this number can reduce kernel memory
+taken by
+.Nm i40e.
+.Ed
+.It Sy rx_ring_size
+.Bd -filled -compact
+Minimum:
+.Sy 64 |
+Maximum:
+.Sy 4096
+.Ed
+.Bd -filled
+The
+.Sy rx_ring_size
+property determines the number of descriptors that will be used in each
+receive ring on the card.
+Administrators should not normally need to tune this value.
+Hardware requires that the ring size be a multiple of 32.
+The system will round up the set value to the nearest multiple of 32.
+.Ed
+.It Sy tx_ring_size
+.Bd -filled -compact
+Minimum:
+.Sy 64 |
+Maximum:
+.Sy 4096
+.Ed
+.Bd -filled
+The
+.Sy tx_ring_size
+property determines the number of descriptors that will be used in each
+transmit ring on the card.
+Administrators should not normally need to tune this value.
+Hardware requires that the ring size be a multiple of 32.
+The system will round up the set value to the nearest multiple of 32.
+.Ed
+.It Sy tx_resched_threshold
+.Bd -filled -compact
+Minimum:
+.Sy 8 |
+Maximum:
+.Sy Variable
+.Ed
+.Bd -filled
+The
+.Sy tx_resched_threshold
+property determines the number of descriptors that must be available for
+a frame to be transmitted.
+The maximum is variable.
+It is dependent on the value of the
+.Sy tx_ring_size
+property.
+At least eight descriptors must be available for the device to function
+correctly.
+.Ed
+.It Sy rx_limit_per_intr
+.Bd -filled -compact
+Minimum:
+.Sy 16 |
+Maximum:
+.Sy 4096
+.Ed
+.Bd -filled
+The
+.Sy rx_limit_per_intr
+property determines the maximum number of packets that will be processed
+on a given ring during a single interrupt.
+This is done to try and guarantee some amount of liveness in the system.
+It is not expected that administrators will have to tune this value.
+.Ed
+.It Sy tx_hcksum_enable
+.Bd -filled -compact
+Minimum:
+.Sy 0 |
+Maximum:
+.Sy 1
+.Ed
+.Bd -filled
+The
+.Sy tx_hcksum_enable
+property controls whether or not the device enables support for hardware
+checksumming of outgoing packets.
+The default is to always enable support for this.
+Turning it off will increase latency and decrease throughput when transmitting
+packets, but should be done if a hardware bug is suspected.
+.Ed
+.It Sy rx_hcksum_enable
+.Bd -filled -compact
+Minimum:
+.Sy 0 |
+Maximum:
+.Sy 1
+.Ed
+.Bd -filled
+The
+.Sy rx_hcksum_enable
+property controls whether or not the device enables support for hardware
+checksumming of incoming packets.
+The default is to always enable support for this.
+Turning it off will increase latency and decrease throughput when receiving
+packets, but should be done if a hardware bug is suspected.
+.Ed
+.It Sy rx_dma_threshold
+.Bd -filled -compact
+Minimum:
+.Sy 0 |
+Maximum:
+.Sy INT32_MAX |
+Runtime Property:
+.Sy _rx_dma_threshold
+.Ed
+.Bd -filled
+The
+.Sy rx_dma_threshold
+indicates the size in bytes of a received frame, including all of its
+headers, at which the driver should not copy the frame but instead bind
+DMA memory.
+By setting this property to its minimum, all frames will be processed with DMA
+binding.
+By setting this property to its maximum, all frames will be processed by copying
+the frame.
+.Ed
+.It Sy tx_lso_enable
+.Bd -filled -compact
+Minimum:
+.Sy 0 |
+Maximum:
+.Sy 1
+.Ed
+.Bd -filled
+The
+.Sy tx_lso_enable
+property controls whether or not the device enables support for Large Segment
+Offloand (LSO) when transmitting packets.
+The default is to always enable support for this.
+Turning it off will decrease throughput when transmitting packets, but should
+be done if a hardware bug is suspected.
+.Ed
+.El
+.Sh ARCHITECTURE
+The
+.Nm
+driver is only supported on
+.Sy x86
+systems at this time.
+.Sh FILES
+.Bl -tag -width Pa
+.It Pa /dev/net/i40e*
+Per-instance character device.
+.It Pa /kernel/drv/amd64/i40e
+Device driver (x86)
+.It Pa /kernel/drv/i40e.conf
+Driver configuration file
+.El
+.Sh SEE ALSO
+.Xr dlpi 4P ,
+.Xr driver.conf 5 ,
+.Xr dladm 8 ,
+.Xr snoop 8
diff --git a/usr/src/man/man4d/ib.4d b/usr/src/man/man4d/ib.4d
new file mode 100644
index 0000000000..d8235370b8
--- /dev/null
+++ b/usr/src/man/man4d/ib.4d
@@ -0,0 +1,289 @@
+'\" te
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH IB 4D "Jan 26, 2009"
+.SH NAME
+ib \- InfiniBand Bus Nexus Driver
+.SH DESCRIPTION
+.sp
+.LP
+The \fBib\fR (IB nexus) driver is a pseudo nexus driver that supports
+enumeration of port devices, VPPA (Virtual Physical Point Attachment), HCA_SVC
+(HCA Service) devices, and I/O controllers (IOC) on the InfiniBand fabric that
+are visible to the host and provides interfaces to \fBcfgadm_ib\fR(8) to
+manage hot-plugging of IB devices. The \fBib\fR nexus driver enumerates the
+port device, VPPA devices and HCA_SVC devices based on entries specified in the
+\fBib.conf\fR file. IOC devices are enumerated on demand. The IB nexus driver
+uses InfiniBand Device Manager services (\fBibdm\fR(4D)) to enumerate port
+devices, VPPA devices, HCA_SVC devices, and IOCs on the IB fabric.
+.SH CONFIGURATION
+.sp
+.LP
+You configure the \fBib\fR driver by defining properties in the \fBib.conf\fR
+file. The IB nexus driver supports the following properties:
+.sp
+
+.sp
+.TS
+box;
+l | l | l
+l | l | l .
+PROPERTY NAME DEFAULT POSSIBLE VALUES
+_
+port-svc-list \fB""\fR T{
+List of service names, for example: srv
+T}
+_
+vppa-svc-list \fB""\fR List of service names, for example: ipib
+_
+hca-svc-list \fB""\fR T{
+List of service names, for example: hca_nfs
+T}
+.TE
+
+.sp
+.LP
+The \fBport-svc-list\fR property defines the list of port communication service
+names per port. The IB nexus driver creates a device instance for each entry in
+this property per Host Channel Adapter (\fBHCA\fR) port. The \fBib.conf\fR file
+contains a \fBport-svc-list=""\fR entry by default. You update
+\fBport-svc-list\fR with service names you want to add to the system.
+.sp
+.LP
+The \fBvppa-svc-list\fR property defines the list of \fBVPPA\fR communication
+service names per port per partition key. The IB nexus driver creates a device
+instance for each entry in this property per Host Channel Adapter (\fBHCA\fR)
+port. The \fBib.conf\fR file contains a \fBvppa-svc-list=""\fR entry by
+default. You update \fBvppa-svc-list\fR with service names you want to add to
+the system.
+.sp
+.LP
+The \fBhca-svc-list\fR property defines the list of HCA_SVC communication
+service names per HCA. The IB nexus driver creates a device instance for each
+entry in this property per Host Channel Adapter (HCA). The \fBib.conf\fR file
+contains a \fBhca-svc-list=""\fR entry by default. You update
+\fBhca-svc-list\fR with service names you want to add to the system.
+.sp
+.LP
+The service name specified in \fBport-svc-list\fR, \fBvppa-svc-list\fR and
+\fBhca-svc-list\fR must be unique, be a maximum of four characters long, and
+is limited to digits 0-9 and letters a-z and A-Z.
+.sp
+.LP
+IOC drivers (which are parented by the IB nexus driver) may themselves
+have .conf files. To distinguish those cases from pseudo drivers parented by IB
+nexus, such drivers should include the \fB"ib-node-type"\fR property with value
+\fBmerge\fR in the IOC \fBdriver.conf\fR file. That property ensures that
+properties from the .conf file are merged with other properties found through
+hardware probing.
+.SH EXAMPLES
+.sp
+.LP
+Example 1: A sample \fBib.conf\fR file with one service name entry for PORT
+communication services.
+.sp
+.in +2
+.nf
+ #
+ # Copyright 2001-2003 Sun Microsystems, Inc. All rights reserved.
+ # Use is subject to license terms.
+ #
+ port-svc-list=""
+ vppa-svc-list="";
+ hca-svc-list="";
+.fi
+.in -2
+
+.sp
+.LP
+In Example 1, the IB nexus driver does not create any port/vppa/hca_svc device
+instances.
+.sp
+.LP
+Example 2: A sample \fBib.conf\fR file with one entry for \fB"srv"\fR service:
+.sp
+.in +2
+.nf
+
+ port-svc-list="srv"
+ vppa-svc-list="";
+ hca-svc-list="";
+.fi
+.in -2
+
+.sp
+.LP
+The IB nexus driver creates one \fBsrv\fR service instance for every \fBHCA\fR
+port that exists on the host. For example, if there are two \fBHCA\fRs, each
+with two ports on the host, the IB nexus driver creates four instances of the
+\fBsrv\fR service.
+.sp
+.LP
+Example 3: A sample \fBib.conf\fR file with one service name entry for
+each of Port and VPPA communication services:
+.sp
+.in +2
+.nf
+
+ port-svc-list="srv"
+ vppa-svc-list="ipib";
+ hca-svc-list="";
+.fi
+.in -2
+
+.sp
+.LP
+If there are two \fBHCA\fRs in the system with two ports each and each port has
+two valid PKEY values, the IB nexus driver creates four instances of srv
+service (one for each port). It also creates eight instances of \fBipd\fR
+service (one per each port/PKEY combination).
+.sp
+.LP
+Example 4: A sample \fBib.conf\fR file with one service name entry for each
+of Port, VPPA and HCA_SVC communication services:
+.sp
+.in +2
+.nf
+
+ port-svc-list="srv";
+ vppa-svc-list="ipib";
+ hca-svc-list="hca_nfs";
+.fi
+.in -2
+
+.sp
+.LP
+The IB nexus driver creates one instance of hca_nfs service for each HCA in the
+system.
+.sp
+.LP
+Example 5: IOC \fBdriver .conf\fR
+.sp
+.in +2
+.nf
+ ib-node-type="merge";
+ enable-special-mode="on";
+.fi
+.in -2
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/ib\fR\fR
+.ad
+.RS 26n
+32-bit x86 ELF kernel module
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/ib\fR\fR
+.ad
+.RS 26n
+64-bit x86 ELF kernel module
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/sparcv9/ib\fR\fR
+.ad
+.RS 26n
+64-bit SPARC ELF kernel module
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/ib.conf\fR\fR
+.ad
+.RS 26n
+driver configuration file
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for a description of the following attribute:
+.sp
+
+.sp
+.TS
+box;
+l | l
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture SPARC, x86
+_
+Interface Stability Consolidation Private
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR ibcm (4D),
+.BR ibdm (4D),
+.BR ibtl (4D),
+.BR driver.conf (5),
+.BR ib (5),
+.BR attributes (7),
+.BR cfgadm_ib (8)
+.sp
+.LP
+\fIWriting Device Drivers\fR
+.sp
+.LP
+\fIInfiniBand Architecture Specification, Volume 1: Release 1.1\fR
+.sp
+.LP
+\fISystem Administration Guide: Basic Administration\fR
+.SH DIAGNOSTICS
+.sp
+.LP
+In addition to being logged, the following messages may appear on the system
+console. All messages are formatted in the following manner:
+.sp
+.in +2
+.nf
+ib: WARNING: Error message...
+.fi
+.in -2
+.sp
+
+.sp
+.ne 2
+.na
+\fBunit-address property in \fB%s.conf\fR not well-formed.\fR
+.ad
+.sp .6
+.RS 4n
+The \fBdriver.conf\fR file does not have a valid \fB"unit-addr"\fR property
+defined. This property is an array of strings.
+.RE
+
+.sp
+.ne 2
+.na
+\fBcannot find unit-address in \fB%s.conf\fR.\fR
+.ad
+.sp .6
+.RS 4n
+The \fBdriver.conf\fR file does not have a valid \fB"unit-addr"\fR property
+defined. This property is an array of strings.
+.RE
+
+.sp
+.ne 2
+.na
+\fBWaiting for Port %d initialization.\fR
+.ad
+.sp .6
+.RS 4n
+Waiting for port initialization from subnet manager.
+.RE
+
diff --git a/usr/src/man/man4d/ibcm.4d b/usr/src/man/man4d/ibcm.4d
new file mode 100644
index 0000000000..be2acd1ff9
--- /dev/null
+++ b/usr/src/man/man4d/ibcm.4d
@@ -0,0 +1,75 @@
+'\" te
+.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH IBCM 4D "Apr 2, 2004"
+.SH NAME
+ibcm \- Solaris InfiniBand Communication Manager
+.SH DESCRIPTION
+.sp
+.LP
+The Solaris InfiniBand Communication Manager (\fBIBCM\fR) is a Solaris kernel
+misc module that adheres to the \fIInfiniBand Architecture Specification,
+Volume 1: Release 1.1\fR for InfiniBand Communication Management Class.
+.sp
+.LP
+\fBIBCM\fR provides a transport layer abstraction to IB clients to set up
+reliable connected channels along with service, multicast, and path
+lookup-related functionality. \fBIBCM\fR implements the CM protocol as per the
+\fIInfiniBand Architecture Specification, Volume 1: Release 1.1\fR and utilizes
+the InfiniBand Management Framework module for all IB management-related
+functionality and the InfiniBand Transport Layer (see \fBibtl\fR(4D)) for all
+IB Verbs-related functionality.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/kernel/misc/ibcm\fR\fR
+.ad
+.RS 29n
+32-bit x86 ELF kernel module
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/misc/amd64/ibcm\fR\fR
+.ad
+.RS 29n
+64-bit x86 ELF kernel module
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/misc/sparcv9/ibcm\fR\fR
+.ad
+.RS 29n
+64-bit SPARC ELF kernel module
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for a description of the following attribute:
+.sp
+
+.sp
+.TS
+box;
+l | l
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Consolidation Private
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR ibtl (4D),
+.BR attributes (7)
+.sp
+.LP
+\fIInfiniBand Architecture Specification, Volume 1: Release 1.1\fR
diff --git a/usr/src/man/man4d/ibd.4d b/usr/src/man/man4d/ibd.4d
new file mode 100644
index 0000000000..8054409e00
--- /dev/null
+++ b/usr/src/man/man4d/ibd.4d
@@ -0,0 +1,260 @@
+'\" te
+.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH IBD 4D "April 9, 2016"
+.SH NAME
+ibd \- Infiniband IPoIB device driver
+.SH SYNOPSIS
+.LP
+.nf
+\fB/dev/ibd*\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBibd\fR driver implements the IETF IP over Infiniband protocol and
+provides IPoIB service for all IBA ports present in the system.
+.sp
+.LP
+The \fBibd\fR driver is a multi-threaded, loadable, clonable, STREAMS hardware
+driver supporting the connectionless Data Link Provider Interface,
+\fBdlpi\fR(4P)). The \fBibd\fR driver provides basic support for the IBA
+Unreliable Datagram Queue Pair hardware. Functions include QP initialization,
+frame transmit and receive, multicast and promiscuous mode support, and
+statistics reporting.
+.sp
+.LP
+Use the cloning, character-special device \fB/dev/ibd\fR to access all
+\fBibd\fR devices installed within the system.
+.sp
+.LP
+The \fBibd\fR driver is dependent on GLD, a loadable kernel module that
+provides the \fBibd\fR driver with the DLPI and STREAMS functionality required
+of a LAN driver. Except as noted in the Application Programming Interface
+section of this manpage, see \fBgld\fR(4D) for more details on the primitives
+supported by the driver. The GLD module is located at
+\fB/kernel/misc/sparcv9/gld\fR on 64 bit systems and at \fB/kernel/misc/gld\fR
+on 32 bit systems.
+.sp
+.LP
+The \fBibd\fR driver expects certain configuration of the IBA fabric prior to
+operation (which also implies the SM must be active and managing the fabric).
+Specifically, the IBA multicast group representing the IPv4 limited broadcast
+address 255.255.255.255 (also defined as broadcast-GID in IETF documents) must
+be created prior to initializing the device. IBA properties (including mtu,
+qkey and sl) of this group is used by the driver to create any other IBA
+multicast group as instructed by higher level (IP) software. The driver probes
+for the existence of this broadcast-GID during \fBattach\fR(9E).
+.SH APPLICATION PROGRAMMING INTERFACE (DLPI)
+.LP
+The values returned by the driver in the DL_INFO_ACK primitive in response to
+your DL_INFO_REQ are:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Maximum SDU is the MTU associated with the broadcast-GID group, less the 4 byte
+IPoIB header.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Minimum SDU is 0.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+dlsap address length is 22.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+MAC type is DL_IB.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The sap length value is -2, meaning the physical address component is followed
+immediately by a 2-byte sap component within the DLSAP address.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Broadcast address value is the MAC address consisting of the 4 bytes of QPN
+00:FF:FF:FF prepended to the IBA multicast address of the broadcast-GID.
+.sp
+Due to the nature of link address definition for IPoIB, the
+DL_SET_PHYS_ADDR_REQ DLPI primitive is not supported.
+.sp
+In the transmit case for streams that have been put in raw mode via the
+DLIOCRAW ioctl, the DLPI application must prepend the 20 byte IPoIB destination
+address to the data it wants to transmit over-the-wire. In the receive case,
+applications receive the IP/ARP datagram along with the IETF defined 4 byte
+header.
+.RE
+.SH WARNING
+.LP
+This section describes warning messages that might be generated by the driver.
+Please note that while the format of these messages may be modified in future
+versions, the same general information will be provided.
+.sp
+.LP
+While joining IBA multicast groups corresponding to IP multicast groups as part
+of multicast promiscuous operations as required by IP multicast routers, or as
+part of running \fBsnoop\fR(8), it is possible that joins to some multicast
+groups can fail due to inherent resource constraints in the IBA components. In
+such cases, warning message similar to the following appear in the system log,
+indicating the interface on which the failure occurred:
+.sp
+.in +2
+.nf
+NOTICE: ibd0: Could not get list of IBA multicast groups
+NOTICE: ibd0: IBA promiscuous mode missed multicast group
+NOTICE: ibd0: IBA promiscuous mode missed new multicast gid
+.fi
+.in -2
+
+.sp
+.LP
+Also, if the IBA SM indicates that multicast trap support is suspended or
+unavailable, the system log contains a message similar to:
+.sp
+.in +2
+.nf
+NOTICE: ibd0: IBA multicast support degraded due to
+unavailability of multicast traps
+.fi
+.in -2
+
+.sp
+.LP
+And when the SM indicates trap support is restored:
+.sp
+.in +2
+.nf
+NOTICE: ibd0: IBA multicast support restored due to
+availability of multicast traps
+.fi
+.in -2
+
+.sp
+.LP
+Additionally, if the IBA link transitions to an unavailable state (that is, the
+IBA link state becomes "Down," "Initialize" or "Armed") and then becomes active
+again, the driver tries to rejoin previously joined groups if required. Failure
+to rejoin multicast groups will trigger messages like:
+.sp
+.in +2
+.nf
+NOTICE: ibd0: Failure on port up to rejoin multicast gid
+.fi
+.in -2
+
+.sp
+.LP
+If the corresponding HCA port is in the unavailable state defined above when
+initializing an ibd interface using \fBifconfig\fR(8), a message is emitted by
+the driver:
+.sp
+.in +2
+.nf
+NOTICE: ibd0: Port is not active
+.fi
+.in -2
+
+.sp
+.LP
+Further, as described above, if the broadcast-GID is not found, or the
+associated MTU is higher than what the HCA port can support, the following
+messages are printed to the system log:
+.sp
+.in +2
+.nf
+NOTICE: ibd0: IPoIB broadcast group absent
+NOTICE: ibd0: IPoIB broadcast group MTU 4096 greater than port's
+maximum MTU 2048
+.fi
+.in -2
+
+.sp
+.LP
+In all cases of these reported problems when running \fBifconfig\fR(8), it
+should be checked that IBA cabling is intact, an SM is running on the fabric,
+and the broadcast-GID with appropriate properties has been created in the IBA
+partition.
+.SH CONFIGURATION
+.LP
+The IPoIB service comes preconfigured on all HCA ports in the system. To turn
+the service off, or back on after turning it off, refer to documentation in
+\fBcfgadm_ib(8)\fR.
+.SH FILES
+.ne 2
+.na
+\fB\fB/dev/ibd*\fR\fR
+.ad
+.RS 27n
+special character device
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/ib.conf\fR\fR
+.ad
+.RS 27n
+configuration file to start IPoIB service
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/sparcv9/ibd\fR\fR
+.ad
+.RS 27n
+64-bit SPARC device driver
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/ibd\fR\fR
+.ad
+.RS 27n
+64-bit x86 device driver
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/ibd\fR\fR
+.ad
+.RS 27n
+32-bit x86 device driver
+.RE
+
+.SH SEE ALSO
+.LP
+\fBcfgadm\fR(8), \fBcfgadm_ib(8)\fR, \fBgld\fR(4D),
+.BR ib (4D),
+.BR kstat (4D),
+.BR streamio (4I),
+.BR dlpi (4P),
+.BR attributes (7),
+.BR ifconfig (8),
+.BR syslogd (8),
+.BR attach (9E)
+.SH NOTES
+.LP
+IBD is a GLD-based driver and provides the statistics described by
+\fBgld\fR(4D). Note that valid received packets not accepted by any stream
+(long) will increase when IBD transmits broadcast IP packets. This happens
+because the infiniband hardware copies and loops back the transmitted broadcast
+packets to the source. These packets are discarded by GLD and are recorded
+as 'unknowns'.
diff --git a/usr/src/man/man4d/ibdm.4d b/usr/src/man/man4d/ibdm.4d
new file mode 100644
index 0000000000..df2770f440
--- /dev/null
+++ b/usr/src/man/man4d/ibdm.4d
@@ -0,0 +1,76 @@
+'\" te
+.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH IBDM 4D "Oct 9, 2004"
+.SH NAME
+ibdm \- Solaris InfiniBand Device Manager
+.SH DESCRIPTION
+.sp
+.LP
+The Infiniband Device Manager (\fBIBDM\fR) is an IBTF-compliant kernel misc
+module. \fBIBDM\fR adheres to the InfiniBand Device Management class as
+described in \fIInfiniBand Architecture Specification, Volume 1: Release 1.1\fR
+and enumerates all the devices which are visible from a given host and
+maintains a data base of all IB devices visible to the host. \fBIBDM\fR
+provides interfaces to the IB nexus driver that enables the driver to retrieve
+information about IB devices on the fabric.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/kernel/misc/ibdm\fR\fR
+.ad
+.RS 29n
+32-bit x86 ELF kernel module
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/misc/amd64/ibdm\fR\fR
+.ad
+.RS 29n
+64-bit x86 ELF kernel module
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/misc/sparcv9/ibdm\fR\fR
+.ad
+.RS 29n
+64-bit SPARC ELF kernel module
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for a description of the following attribute:
+.sp
+
+.sp
+.TS
+box;
+l | l
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Contract Consolidation Private
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR ib (4D),
+.BR ibcm (4D),
+.BR ibtl (4D),
+.BR attributes (7)
+.sp
+.LP
+\fIInfiniBand Architecture Specification, Volume 1: Release 1.1\fR
+.SH DIAGNOSTICS
+.sp
+.LP
+None.
diff --git a/usr/src/man/man4d/ibdma.4d b/usr/src/man/man4d/ibdma.4d
new file mode 100644
index 0000000000..2160e30579
--- /dev/null
+++ b/usr/src/man/man4d/ibdma.4d
@@ -0,0 +1,63 @@
+'\" te
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH IBDMA 4D "May 21, 2009"
+.SH NAME
+ibdma \- Solaris InfiniBand Device Manager Agent
+.SH DESCRIPTION
+.sp
+.LP
+The Infiniband Device Manager Agent (\fBibdma\fR) is an IBTF-compliant kernel
+misc module.
+.sp
+.LP
+\fBIBDMA\fR implements limited portions of the target (agent) side of the
+InfiniBand Device Management class as described in \fIInfiniBand Architecture
+Specification, Volume 1: Release 1.2.1\fR.
+.sp
+.LP
+\fBIBDMA\fR responds to incoming Device Management Datagrams (MADS) by
+enumerating available target-side Infiniband services. Initiator systems can
+use this service to discover target-side resources such as the virtual I/O
+Controllers exported by \fBsrpt\fR(4D).
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/kernel/misc/ibdma\fR\fR
+.ad
+.RS 30n
+32-bit x86 ELF kernel module
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/misc/amd64/ibdma\fR\fR
+.ad
+.RS 30n
+64-bit x86 ELF kernel module
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/misc/sparcv9/ibdma\fR\fR
+.ad
+.RS 30n
+64-bit SPARC ELF kernel module
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR ib (4D),
+.BR ibdm (4D),
+.BR ibtl (4D),
+.BR srpt (4D),
+.BR attributes (7)
+.sp
+.LP
+\fIInfiniBand Architecture Specification, Volume 1: Release 1.2.1\fR
diff --git a/usr/src/man/man4d/ibtl.4d b/usr/src/man/man4d/ibtl.4d
new file mode 100644
index 0000000000..3bf36b6492
--- /dev/null
+++ b/usr/src/man/man4d/ibtl.4d
@@ -0,0 +1,86 @@
+'\" te
+.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH IBTL 4D "Oct 9, 2004"
+.SH NAME
+ibtl \- Solaris InfiniBand Transport Layer
+.SH DESCRIPTION
+.sp
+.LP
+InfiniBand (\fBIB\fR) is an I/O technology based on switched fabrics. The
+Solaris InfiniBand Transport Layer (\fBIBTL\fR) is a Solaris kernel misc module
+and adheres to the \fIIB Architecture Version 1.1\fR specification and provides
+a transport layer abstraction to \fBIB\fR client drivers.
+.sp
+.LP
+\fBIBTL\fR implements the programming interfaces for the Solaris InfiniBand
+Transport Framework (\fBIBTF\fR), consisting of the IB Channel Interface (CI)
+and the IB Transport Interface (TI).
+.sp
+.LP
+The CI consists of Host Channel Adapters (HCAs) and HCA drivers. A host is
+attached to the IB fabric through the CI layer. The Solaris InfiniBand CI is
+Sun's API rendering of the InfiniBand Architecture (IBTA) "verbs"
+specification.
+.sp
+.LP
+The Solaris InfiniBand TI is the kernel service driver interface into the
+Solaris InfiniBand Transport Framework. It provides transport and
+communications setup programming interfaces for Unreliable Datagram (UD) and
+Reliable Connected (RC) transport types only.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/kernel/misc/ibtl\fR\fR
+.ad
+.RS 29n
+32-bit x86 ELF kernel misc module
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/misc/amd64/ibtl\fR\fR
+.ad
+.RS 29n
+64-bit x86 ELF kernel misc module
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/misc/sparcv9/ibtl\fR\fR
+.ad
+.RS 29n
+64-bit SPARC ELF kernel module
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for a description of the following attribute:
+.sp
+
+.sp
+.TS
+box;
+l | l
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Consolidation Private
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR ib (4D),
+.BR ibcm (4D),
+.BR ibdm (4D),
+.BR attributes (7)
+.sp
+.LP
+\fIInfiniBand Architecture Specification, Volume 1: Release 1.1\fR
diff --git a/usr/src/man/man4d/ieee1394.4d b/usr/src/man/man4d/ieee1394.4d
new file mode 100644
index 0000000000..61ec63c9bb
--- /dev/null
+++ b/usr/src/man/man4d/ieee1394.4d
@@ -0,0 +1,109 @@
+'\" te
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 2020 Peter Tribble.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
+.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH IEEE1394 4D "Jan 10, 2020"
+.SH NAME
+ieee1394, firewire, 1394 \- illumos IEEE-1394 Architecture
+.SH DESCRIPTION
+IEEE-1394 provides a means for interconnecting devices in computer and home
+entertainment systems. (The IEEE-1394 architecture is also known as Firewire,
+an Apple Computer trademark, and i.Link, a Sony trademark). The most common
+IEEE-1394 devices are digital camcorders, mass-storage devices and cameras
+(including webcam-type devices). For more information on IEEE-1394, refer to the
+1394 Trade Association website at http://\fIwww.1394ta.org\fR.
+.sp
+.LP
+The illumos IEEE-1394 architecture supports up to 63 hot-pluggable IEEE-1394
+devices per IEEE-1394 bus. The maximum data transfer rate is 400 Mbits,
+depending on the capabilities of the attached device.
+.sp
+.LP
+The illumos IEEE-1394 architecture supports devices implementing a number of
+different specifications. The basic behavior of the IEEE-1394 bus is described
+in the \fIIEEE 1394-1995\fR and \fIIEEE 1394a-2000\fR specifications.
+.sp
+.LP
+IEEE-1394 host controllers implementing the 1394 Open Host Controller Interface
+specification are supported. Camcorders implementing the \fIIEC 61883\fR
+and 1394 Trade Association AV/C specifications are supported. Mass-storage
+devices implementing the \fIANSI SBP-2\fR specification are supported. Digital
+cameras implementing the 1394 Trade Association 1394-based Digital Camera
+(IIDC) specification are supported.
+.SH FILES
+Listed below are drivers and modules which either utilize or are utilized by
+the illumos IEEE-1394 architecture.
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+SUPPORT MODULE(S) FUNCTION
+_
+/kernel/misc/[sparcv9|amd64]/s1394 IEEE-1394 framework
+_
+/kernel/misc/[sparcv9|amd64]/sbp2 Serial Bus Protocol-2 (SBP-2)
+.TE
+
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+TARGET DRIVER DEVICE CLASS
+_
+/kernel/drv/[sparcv9|amd64]/scsa1394 mass storage class
+_
+/kernel/drv/[sparcv9|amd64]/av1394 camcorder (AV/C) class
+_
+/kernel/drv/[sparcv9|amd64]/dcam1394 digital camera (IIDC) class
+.TE
+
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+HOST CONTROLLER INTERFACE DRIVER(S) DEVICE
+_
+/kernel/drv/[sparcv9|amd64]/hci1394 Open HCI
+.TE
+
+.SH ATTRIBUTES
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture PCI-based systems
+.TE
+
+.SH SEE ALSO
+.BR av1394 (4D),
+.BR dcam1394 (4D),
+.BR hci1394 (4D),
+.BR scsa1394 (4D),
+.BR iec61883 (4I),
+.BR attributes (7)
+.sp
+.LP
+\fIIEEE 1394a\fR Specification - 1394 Trade Association, 2000
+.sp
+.LP
+\fIIEEE 1394\fR Specification - 1394 Trade Association, 1995
+.SH NOTES
+Booting from IEEE-1394 mass-storage devices is not supported, but may be
+possible if supported by the BIOS of the computer system.
diff --git a/usr/src/man/man4d/igb.4d b/usr/src/man/man4d/igb.4d
new file mode 100644
index 0000000000..8586af1f6f
--- /dev/null
+++ b/usr/src/man/man4d/igb.4d
@@ -0,0 +1,126 @@
+.\"
+.\" This file and its contents are supplied under the terms of the
+.\" Common Development and Distribution License ("CDDL"), version 1.0.
+.\" You may only use this file in accordance with the terms of version
+.\" 1.0 of the CDDL.
+.\"
+.\" A full copy of the text of the CDDL should have accompanied this
+.\" source. A copy of the CDDL is also available via the Internet at
+.\" http://www.illumos.org/license/CDDL.
+.\"
+.\"
+.\" Copyright 2020 Oxide Computer Company
+.\"
+.Dd September 14, 2020
+.Dt IGB 4D
+.Os
+.Sh NAME
+.Nm igb
+.Nd Intel 1 GbE Server NIC Driver
+.Sh SYNOPSIS
+.Pa /dev/net/igb*
+.Sh DESCRIPTION
+The
+.Nm
+driver is a GLDv3 NIC driver for Intel 1 Gigabit Ethernet PCIe
+controllers which are built-in to motherboards and discrete PCIe
+devices.
+.Pp
+The driver supports the following device families:
+.Bl -dash
+.It
+Intel 82575 Gigabit Ethernet Controller
+.It
+Intel 82576 Gigabit Ethernet Controller
+.It
+Intel 82580 Gigabit Ethernet Controller
+.It
+Intel Ethernet Controller I210
+.It
+Intel Ethernet Controller I211
+.It
+Intel Ethernet Controller I350
+.El
+.Pp
+Many other Intel 1 GbE devices are supported by the
+.Xr e1000g 4D
+driver.
+.Pp
+The driver supports the following functionality depending on the
+controller generation:
+.Bl -dash
+.It
+Jumbo frames up to 9000 bytes.
+.It
+Checksum offload for TCP and UDP on IPv4 and IPv6.
+Checksum offload for IPv4 headers.
+.It
+TCP Segmentation Offload
+.Pq TSO
+over IPv4 and IPv6.
+.It
+Support for multiple hardware rings, enabling receive-side steering
+.Pq RSS
+and multiple MAC address filters.
+.It
+Promiscuous access via
+.Xr snoop 8
+and
+.Xr dlpi 4P .
+.It
+LED control.
+.It
+Link auto-negotiation, manual link controls, and IEEE 802.3x flow
+control.
+.El
+.Sh APPLICATION PROGRAMMING INTERFACE
+For each supported device instance, which corresponds to a port, a
+character-special file is created.
+This device can be used with the Data Link Provider Interface
+.Pq DLPI
+through either
+.Xr libdlpi 3LIB
+or
+.Xr dlpi 4P .
+.Pp
+Each instance is assigned a unique ascending integer identifier starting
+from zero.
+The first instance in the system would be enumerated with the id 0 and
+be named
+.Sy igb0
+and be found in the file system at
+.Pa /dev/net/igb0 .
+.Sh CONFIGURATION
+The
+.Nm
+driver supports operating at 1 Gbps full-duplex, 100 Mbps full and
+half-duplex, and 10 Mbps full and half-duplex.
+By default, the device will use auto-negotiation and prefer the highest
+compatible speed.
+The advertised speeds and broader configuration can be observed and
+modified with
+.Xr dladm 8 .
+While
+.Xr driver.conf 5
+based configuration is possible, it is recommended that
+.Xr dladm 8
+is used wherever possible.
+.Sh FILES
+.Bl -tag -width Pa
+.It Pa /dev/net/igb*
+.Nm
+special character device.
+.It Pa /kernel/drv/amd64/igb
+x86 device driver.
+.It Pa /kernel/drv/sparcv9/igb
+SPARC device driver
+.It Pa /kernel/drv/igb.conf
+Configuration file.
+.El
+.Sh SEE ALSO
+.Xr libdlpi 3LIB ,
+.Xr e1000g 4D ,
+.Xr dlpi 4P ,
+.Xr driver.conf 5 ,
+.Xr dladm 8 ,
+.Xr mac 9E
diff --git a/usr/src/man/man4d/imc.4d b/usr/src/man/man4d/imc.4d
new file mode 100644
index 0000000000..0f41af9e8e
--- /dev/null
+++ b/usr/src/man/man4d/imc.4d
@@ -0,0 +1,103 @@
+.\"
+.\" This file and its contents are supplied under the terms of the
+.\" Common Development and Distribution License ("CDDL"), version 1.0.
+.\" You may only use this file in accordance with the terms of version
+.\" 1.0 of the CDDL.
+.\"
+.\" A full copy of the text of the CDDL should have accompanied this
+.\" source. A copy of the CDDL is also available via the Internet at
+.\" http://www.illumos.org/license/CDDL.
+.\"
+.\"
+.\" Copyright 2019 Joyent, Inc.
+.\"
+.Dd June 25, 2019
+.Dt IMC 4D
+.Os
+.Sh NAME
+.Nm imc
+.Nd Intel memory controller driver
+.Sh SYNOPSIS
+.Pa /dev/mc/mc*
+.Sh DESCRIPTION
+The
+.Nm
+driver interfaces with the memory controller found on certain
+generations of Intel CPUs and provides a means for decoding physical
+addresses to the corresponding memory device.
+The
+.Nm
+driver plugs into the operating systems fault management framework
+providing additional details to the system about the memory topology and
+the ability to decode physical addresses into the corresponding portion
+of the memory hierarchy.
+.Pp
+The
+.Nm
+driver is supported on the following Intel processors:
+.Bl -bullet -offset indent -width Sy
+.It
+Sandy Bridge E5 and E7 Xeon Processors
+.It
+Ivy Bridge E5 and E7 Xeon Processors
+.It
+Haswell E5 and E7 Xeon Processors
+.It
+Broadwell E5 and E7 Xeon Processors
+.It
+Skylake Xeon Scalable Processors
+.It
+Cascade Lake Xeon Scalable Processors
+.It
+Broadwell and Skylake Xeon-D processors
+.El
+.Pp
+Other lines involving the above microarchitectures, such as Xeon E3
+branded processors, are not supported as they do not provide the
+necessary hardware support.
+.Pp
+The
+.Nm
+driver is a pseudo-device driver that amalgamates all of the different
+.Xr imcstub 4D
+instances into a coherent view.
+The
+.Xr imcstub 4D
+driver attaches to all of the different PCI devices that the processor
+exposes.
+.Pp
+One challenge with the
+.Nm
+driver is the Intel Enhanced Machine Check Architecture v2
+.Pq EMCAv2 .
+Many vendors use EMCAv2 to hide memory errors from the operating system.
+Such systems limit the effectiveness of the
+.Nm
+driver and the fault management architecture by hiding correctable and
+uncorrectable DIMM errors from the operating system.
+.Pp
+The
+.Nm
+driver has a few limitations.
+Currently it does not always properly handle lockstep and mirroring
+mode, particularly in variants that are common on Skylake and newer
+systems.
+It also does not properly handle cases where Intel Optane NVDIMMs are in
+use on the memory bus.
+.Sh ARCHITECTURE
+The
+.Nm
+driver is only supported on specific Intel
+.Sy x86
+systems.
+.Sh FILES
+.Bl -tag -width Pa
+.It Pa /platform/i86pc/kernel/drv/amd64/imc
+64-bit device driver (x86).
+.It Pa /platform/i86pc/kernel/drv/imc.conf
+Driver configuration file.
+.El
+.Sh SEE ALSO
+.Xr imcstub 4D ,
+.Xr fmadm 8 ,
+.Xr fmdump 8
diff --git a/usr/src/man/man4d/imcstub.4d b/usr/src/man/man4d/imcstub.4d
new file mode 100644
index 0000000000..d3b14cdad2
--- /dev/null
+++ b/usr/src/man/man4d/imcstub.4d
@@ -0,0 +1,46 @@
+.\"
+.\" This file and its contents are supplied under the terms of the
+.\" Common Development and Distribution License ("CDDL"), version 1.0.
+.\" You may only use this file in accordance with the terms of version
+.\" 1.0 of the CDDL.
+.\"
+.\" A full copy of the text of the CDDL should have accompanied this
+.\" source. A copy of the CDDL is also available via the Internet at
+.\" http://www.illumos.org/license/CDDL.
+.\"
+.\"
+.\" Copyright 2019 Joyent, Inc.
+.\"
+.Dd June 25, 2019
+.Dt IMCSTUB 4D
+.Os
+.Sh NAME
+.Nm imcstub
+.Nd Intel memory controller stub driver
+.Sh DESCRIPTION
+The
+.Nm
+driver is a counterpart to the
+.Xr imc 4D
+driver.
+The
+.Nm
+driver is responsible for attaching to all of the logical PCI devices
+that are exposed by Intel CPUs and providing them for use by the
+.Xr imc 4D
+driver.
+For more information on how this is used by the system, please see
+.Xr imc 4D .
+.Sh ARCHITECTURE
+The
+.Nm
+driver is only supported on certain Intel
+.Sy x86
+systems.
+.Sh FILES
+.Bl -tag -width Pa
+.It Pa /platform/i86pc/kernel/drv/amd64/imcstub
+64-bit device driver (x86).
+.El
+.Sh SEE ALSO
+.Xr imc 4D
diff --git a/usr/src/man/man4d/ipmi.4d b/usr/src/man/man4d/ipmi.4d
new file mode 100644
index 0000000000..21770a14f5
--- /dev/null
+++ b/usr/src/man/man4d/ipmi.4d
@@ -0,0 +1,172 @@
+'\"
+.\" CDDL HEADER START
+.\"
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.\"
+.\" CDDL HEADER END
+.\"
+.\" Copyright (c) 2012, Joyent, Inc. All Rights Reserved
+.\" Copyright 2013 Nexenta Systems, Inc. All rights reserved.
+.\"
+.TH IPMI 4D "Oct 31, 2013"
+.SH NAME
+ipmi \- OpenIPMI compatible IPMI interface driver
+.SH SYNOPSIS
+.nf
+\fB/dev/ipmi0\fR
+.fi
+
+.SH DESCRIPTION
+The \fBipmi\fR device is a character special file that provides access to the
+Intelligent Platform Management Interface for the system. For more
+information on \fBIPMI\fR and to obtain a copy of the \fBIPMI\fR
+specification and implementation guidelines, refer to
+http://www.intel.com/design/servers/ipmi/.
+The driver is adapted from the FreeBSD driver which is in turn adapted from
+the Linux driver, however, not all features described in the standard are
+supported. The current implementation depends on the \fBsmbios\fR(4D) to
+discover the existence of an IPMI device.
+
+.SH IOCTLS
+Sending and receiving messages through the IPMI drivers requires the use of
+\fBioctl\fR(2).
+
+The ioctl command codes below are defined in \fBsys/ipmi.h\fR.
+The third argument to ioctl should be a pointer to the type indicated.
+Currently the following ioctls are supported:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+IPMICTL_RECEIVE_MSG "struct ipmi_recv"
+.br
+Receive a message.
+.br
+Possible error values:
+.RS +8
+EAGAIN No messages are in the process queue.
+.br
+EFAULT An address supplied was invalid.
+.br
+EMSGSIZE The address could not fit in the message buffer and
+will remain in the buffer.
+.RE
+.RE
+
+.RS +4
+.TP
+.ie t \(bu
+.el o
+IPMICTL_RECEIVE_MSG_TRUNC "struct ipmi_recv"
+.br
+Like IPMICTL_RECEIVE_MSG but if the message cannot fit into the buffer, it
+will truncate the contents instead of leaving the data in the buffer.
+.RE
+
+.RS +4
+.TP
+.ie t \(bu
+.el o
+IPMICTL_SEND_COMMAND "struct ipmi_req"
+.br
+Send a message to the interface.
+.br
+Possible error values:
+.RS +8
+EFAULT An address supplied was invalid
+.br
+ENOMEM Buffers could not be allowed for the command, out of memory.
+.RE
+.RE
+
+.RS +4
+.TP
+.ie t \(bu
+.el o
+IPMICTL_SET_MY_ADDRESS_CMD "unsigned int"
+.br
+Set the slave address for source messages.
+.RE
+
+.RS +4
+.TP
+.ie t \(bu
+.el o
+IPMICTL_GET_MY_ADDRESS_CMD "unsigned int"
+.br
+Get the slave address for source messages.
+.RE
+
+.RS +4
+.TP
+.ie t \(bu
+.el o
+IPMICTL_SET_MY_LUN_CMD "unsigned int"
+.br
+Set the slave LUN for source messages.
+.RE
+
+.RS +4
+.TP
+.ie t \(bu
+.el o
+IPMICTL_GET_MY_LUN_CMD "unsigned int"
+.br
+Get the slave LUN for source messages.
+.RE
+
+Stub Only Ioctl
+
+.RS +4
+.TP
+.ie t \(bu
+.el o
+IPMICTL_SET_GETS_EVENTS_CMD int
+.br
+Set whether this interface receives events.
+.RE
+
+Unimplemented Ioctls
+
+.RS +4
+.TP
+.ie t \(bu
+.el o
+IPMICTL_REGISTER_FOR_CMD
+.br
+Register to receive a specific command
+.RE
+
+.RS +4
+.TP
+.ie t \(bu
+.el o
+IPMICTL_UNREGISTER_FOR_CMD
+.br
+Unregister to receive a specific command
+.RE
+
+.SH SEE ALSO
+.BR ipmitool (1),
+.BR ioctl (2),
+.BR smbios (4D)
+.sp
+.LP
+\fIIntelligent Platform Management Interface Specification Second
+Generation\fR, v2.0 \(em
+June 12, 2009 Markup
+.SH NOTES
+Not all systems include an \fBIPMI\fR.
diff --git a/usr/src/man/man4d/ipnet.4d b/usr/src/man/man4d/ipnet.4d
new file mode 100644
index 0000000000..de81f300d1
--- /dev/null
+++ b/usr/src/man/man4d/ipnet.4d
@@ -0,0 +1,191 @@
+'\" te
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH IPNET 4D "Apr 8, 2009"
+.SH NAME
+ipnet, lo0 \- ipnet device driver
+.SH SYNOPSIS
+.LP
+.nf
+\fB/dev/ipnet/*, /dev/lo0\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBipnet\fR device driver creates, removes and manages nodes in the
+\fB/dev/ipnet/\fR namespace.
+.sp
+.LP
+A node is created in \fB/dev/ipnet\fR for every IP interface on the system,
+including interfaces that exist only in software and for which there is no
+hardware device. The \fBipnet\fR device also provides access to all IP traffic
+to and from the system. To provide access to packets that are internally
+looped-back in IP, the \fBipnet\fR driver creates a \fB/dev/lo0\fR DLPI device.
+.SH APPLICATION PROGRAMMING INTERFACE
+.SS "ipnet and DLPI"
+.sp
+.LP
+Device nodes created in \fB/dev/ipnet\fR are DLPI style-1 devices. All
+\fBM_PROTO\fR and \fBM_PCPROTO\fR-type messages are interpreted as DLPI
+primitives. Because the device is read-only and packets can only be observed by
+opening them, the following subset of DLPI primitives is supported:
+.sp
+.in +2
+.nf
+DL_INFO_REQ
+DL_BIND_REQ
+DL_UNBIND_REQ
+DL_PROMISCON_REQ
+DL_PROMISCOFF_REQ
+DLIOCRAW
+.fi
+.in -2
+
+.sp
+.LP
+The values returned by the driver in the \fBDL_INFO_ACK\fR primitive in
+response to the \fBDL_INFO_REQ\fR are:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Maximum \fBSDU\fR is \fBINT_MAX\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Minimum \fBSDU\fR is \fB0\fR.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBDLSAP\fR address length is \fB2.\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBMAC\fR type is \fBDL_IPNET\fR.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBSAP\fR length value is \fB2\fR.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Service mode is \fBDL_CLDLS\fR.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+No optional quality of service (QOS) support is provided. Accordingly, the QOS
+fields are 0.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Provider style is \fBDL_STYLE1\fR.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Version is \fBDL_VERSION_2\fR.
+.RE
+.sp
+.LP
+The \fB/dev/ipnet/*\fR and \fB/dev/lo0\fR devices only accept \fBDL_BIND_REQ\fR
+requests for SAPs 4 (IPv4 packets), 6 (IPv6 packets), or 0 (all IP packets).
+\fBDL_BIND_REQ\fR requests for other SAP values result in a \fBDL_ERROR_ACK\fR
+of \fBDL_BADSAP\fR.
+.SS "ipnet primitives"
+.sp
+.LP
+For \fB/dev/ipnet/*\fR devices, the \fBDL_PROMISCON_REQ\fR and
+\fBDL_PROMISCOFF_REQ\fR primitives with the \fBDL_PROMISC_PHYS\fR flag set in
+the \fBdl_level\fR field enables/disables the reception of all packets. When
+disabled, only packets with addresses matching any of the configured addresses
+on the IP interface are received. When used with the \fBDL_PROMISC_MULTI\fR
+flag set, reception of all multicast group addresses can be enabled/disabled.
+\fBDL_PROMISC_PHYS\fR and \fBDL_PROMISC_MULTI\fR have no effect for
+\fB/dev/lo0\fR. When the \fBDL_PROMISC_SAP\fR flag is set, reception of all
+IPv4/IPv6 can be enabled/disabled.
+.sp
+.LP
+The \fBDLIOCRAW\fR ioctl is supported but has no effect on the data returned
+from the device.
+.sp
+.LP
+The \fBDL_IOC_IPNET_INFO\fR ioctl enables/disables the inclusion of a
+\fBdl_ipnetinfo_t\fR structure that is prepended to the IP header when
+receiving packet data. When enabled, a non-zero integer is returned reflecting
+the current \fBDL_IOC_IPNET_INFO\fR version. The \fBdl_ipnetinfo_t\fR data
+structure is defined in \fB<sys/dlpi.h>\fR and includes the following fields:
+.sp
+.in +2
+.nf
+uint8_t dli_version; /* DL_IPNETINFO_* version */
+uint8_t dli_ipver; /* packet IP header version */
+uint16_t dli_len; /* length of dl_ipnetinfo_t */
+uint64_t dli_srczone; /* packet source zone ID (if any) */
+uint64_t dli_dstzone; /* packet dest zone ID (if any) */
+.fi
+.in -2
+
+.sp
+.LP
+The current \fBdli_version\fR is 1. To robustly support future
+\fBdl_ipnetinfo_t\fR versions, consumers should check that \fBdli_version\fR is
+a value they recognize, and must use the \fBdli_len\fR field to advance past
+the \fBdl_ipnetinfo_t\fR header.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/dev/ipnet/*, /dev/lo0\fR\fR
+.ad
+.RS 26n
+Special character devices.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/ipnet.conf\fR\fR
+.ad
+.RS 26n
+Configuration file.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+l l
+l l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+Architecture SPARC, x86
+Interface Stability Committed
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR dlpi (4P),
+.BR attributes (7)
diff --git a/usr/src/man/man4d/iprb.4d b/usr/src/man/man4d/iprb.4d
new file mode 100644
index 0000000000..32bce64e91
--- /dev/null
+++ b/usr/src/man/man4d/iprb.4d
@@ -0,0 +1,66 @@
+.\" Copyright 2014 Garrett D'Amore <garrett@damore.org>
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\" notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\" notice, this list of conditions and the following disclaimer in the
+.\" documentation and/or other materials provided with the distribution.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER AND CONTRIBUTORS
+.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+.\" LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+.\" FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+.\" COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
+.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
+.\" USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
+.\" ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE
+.\"
+.Dd "Aug 3, 2014"
+.Dt IPRB 4D
+.Os
+.Sh NAME
+.Nm iprb
+.Nd Intel PRO/100 Fast Ethernet device driver
+.Sh SYNOPSIS
+.Pa /dev/iprb
+.Sh DESCRIPTION
+The
+.Nm
+driver provides support for the Intel PRO/100 family of Fast Ethernet
+PCI controllers.
+This includes support for Intel 82558, 82559, 82550, and 82551 parts, as well as
+certain controllers found on certain Intel southbridge controllers (ICH2 and
+ICH3).
+.Lp
+These devices generally support the standard Fast Ethernet features, including
+10BASE-T and 100BASE-TX, both full and half duplex operation, IEEE 802.3
+autonegotiation, etc.
+They also support full size MTUs (1500 bytes), even when used with VLANs.
+Some of them also support flow control.
+.
+.Lp
+The device driver supports the
+.Xr ieee802.3 7
+properties, which can be configured with
+.Xr dladm 8 .
+.
+.Sh FILES
+.Bl -tag -width /dev/iprb
+.It Pa /dev/iprb
+Special character device.
+.El
+.Sh SEE ALSO
+.Xr dlpi 4P ,
+.Xr pci 5 ,
+.Xr ieee802.3 7 ,
+.Xr dladm 8 ,
+.Xr ifconfig 8
+.Rs
+.%T IEEE 802.3: Ethernet
+.%Q IEEE Standards Association
+.Re
diff --git a/usr/src/man/man4d/ipw.4d b/usr/src/man/man4d/ipw.4d
new file mode 100644
index 0000000000..38fbb2d5ee
--- /dev/null
+++ b/usr/src/man/man4d/ipw.4d
@@ -0,0 +1,88 @@
+'\" te
+.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH IPW 4D "Mar 11, 2007"
+.SH NAME
+ipw \- Intel Pro. Wireless 802.11b IPW2100B driver
+.SH DESCRIPTION
+.sp
+.LP
+The \fBipw\fR \fI802.11b\fR wireless NIC driver is a multi-threaded, loadable,
+clonable, GLDv3-based STREAMS driver supporting the Data Link Provider
+Interface, \fBdlpi\fR(4P), on Intel Pro Wireless 2100B chipset-based wireless
+NIC's. Driver functions include controller initialization, wireless
+\fI802.11b\fR infrastructure network connection, WEP, frame transmit and
+receive and promiscuous support.
+.SH DRIVER CONFIGURATION
+.sp
+.LP
+The \fBipw\fR driver performs auto-negotiation to determine the data rate and
+mode. Supported \fI802.11b\fR data rates are 1, 2, 5.5 and 11 Mbits/sec.
+.sp
+.LP
+The \fBipw\fR driver supports only BSS networks (also known as "ap" or
+"infrastructure" networks) and the "open" ("open-system") or "shared system"
+authentication. Only WEP encryption is currently supported. You perform
+configuration and administration tasks using the \fBdladm\fR(8) and
+\fBwificonfig\fR(8) utilities.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/dev/ipw*\fR\fR
+.ad
+.RS 25n
+Special character device.
+.RE
+
+.sp
+.ne 2
+.na
+\fB/kernel/drv/ipw\fR
+.ad
+.RS 25n
+32-bit ELF kernel module (x86).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/ipw\fR\fR
+.ad
+.RS 25n
+64-bit ELF kernel module (x86).
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for a description of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture x86
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR gld (4D),
+.BR dlpi (4P),
+.BR attributes (7),
+.BR dladm (8),
+.BR wificonfig (8)
+.sp
+.LP
+\fIANSI/IEEE Std 802.11- Standard for Wireless LAN Technology\fR \(em 1999
+.sp
+.LP
+\fIIEEE Std 802.11b - Standard for Wireless LAN Technology-Rev. B \fR -
+2003
diff --git a/usr/src/man/man4d/iscsi.4d b/usr/src/man/man4d/iscsi.4d
new file mode 100644
index 0000000000..d29bacb80d
--- /dev/null
+++ b/usr/src/man/man4d/iscsi.4d
@@ -0,0 +1,104 @@
+'\" te
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH ISCSI 4D "Mar 30, 2009"
+.SH NAME
+iscsi \- iSCSI software initiator driver and service
+.SH DESCRIPTION
+.sp
+.LP
+The \fBiscsi\fR driver is a software initiator that transports SCSI commands
+over TCP/IP as described in \fIRFC 3720\fR.
+.sp
+.LP
+The initiator driver is administered through \fBiscsiadm\fR(8). The
+\fBiscsi\fR initiator service is managed by the service management facility,
+\fBsmf\fR(7), under the following FMRI:
+.sp
+.in +2
+.nf
+svc:/network/iscsi/initiator:default
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The \fBiscsi\fR initiator acts as a host adapter driver that attaches the
+appropriate target driver, for example, \fBsd\fR(4D) for disks, or \fBst\fR(4D)
+for tapes) for devices it discovers. See the \fISystem Administration Guide:
+Devices and File Systems\fR for more information.
+.sp
+.LP
+Once enabled, the \fBiscsi\fR initiator service ensures the right timing to
+start the discovery and enumeration of iSCSI devices during boot, but it
+doesn't guarantee the success of discovery for certain iSCSI devices. If the
+service is disabled, \fBiscsi\fR driver stops the discovery and enumeration of
+iSCSI devices and also tries to offline all existing iSCSI devices.
+\fBiscsiadm\fR(8) works only when the service is enabled.
+.sp
+.LP
+iSCSI \fBboot\fR(8) is not affected by the status of the \fBiscsi\fR initiator
+service.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/iscsi\fR\fR
+.ad
+.RS 29n
+32-bit ELF kernel driver
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/sparcv9/iscsi\fR\fR
+.ad
+.RS 29n
+64-bit SPARC ELF kernel driver
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/iscsi\fR\fR
+.ad
+.RS 29n
+64-bit AMD64 ELF kernel driver
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/iscsi.conf\fR\fR
+.ad
+.RS 29n
+Driver configuration file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/iscsi/*\fR\fR
+.ad
+.RS 29n
+\fBiscsi\fR persistent store
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR sd (4D),
+.BR st (4D),
+.BR attributes (7),
+.BR smf (7),
+.BR iscsiadm (8)
+.sp
+.LP
+\fIRFC 3720 Internet Small Computer Systems Interface (iSCSI)\fR
+.sp
+.LP
+\fISystem Administration Guide: Devices and File Systems\fR
diff --git a/usr/src/man/man4d/iser.4d b/usr/src/man/man4d/iser.4d
new file mode 100644
index 0000000000..ab0f48820e
--- /dev/null
+++ b/usr/src/man/man4d/iser.4d
@@ -0,0 +1,76 @@
+'\" te
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH ISER 4D "Mar 30, 2009"
+.SH NAME
+iser \- iSCSI Extensions for Remote DMA driver
+.SH DESCRIPTION
+.sp
+.LP
+The iSER driver accelerates the iSCSI protocol by mapping the data transfer
+phases to Remote DMA (RDMA) operations. No iSER configuration is required for
+its use, but an RDMA-capable protocol (RCaP) must be configured and enabled on
+both target and initiator endpoints.
+.sp
+.LP
+Currently, InfiniBand RC is the supported RCaP, and for discovery IP over IB
+must be configured on both the initiator and target. If Infiniband (IB)
+hardware is present and an Infiniband reliable-connected (RC) connection can be
+established then an iSER-enabled initiator uses iSER connections to
+iSER-enabled targets. Otherwise the connection is established using IP-based
+connectivity.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/iser\fR\fR
+.ad
+.RS 28n
+32-bit ELF kernel driver
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/sparcv9/iser\fR\fR
+.ad
+.RS 28n
+64-bit SPARC ELF kernel drive
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/iser\fR\fR
+.ad
+.RS 28n
+64-bit AMD64 ELF kernel driver
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/iser.conf\fR\fR
+.ad
+.RS 28n
+Driver configuration file
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR ibd (4D),
+.BR attributes (7),
+.BR iscsiadm (8),
+.BR itadm (8)
+.sp
+.LP
+\fISystem Administration Guide: Devices and File Systems\fR
+.sp
+.LP
+\fIRFC 3720 Internet Small Computer Systems Interface (iSCSI)\fR
+.sp
+.LP
+\fIRFC 5046 iSCSI Extensions for RDM\fR
diff --git a/usr/src/man/man4d/iwh.4d b/usr/src/man/man4d/iwh.4d
new file mode 100644
index 0000000000..feef999e24
--- /dev/null
+++ b/usr/src/man/man4d/iwh.4d
@@ -0,0 +1,81 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH IWH 4D "Aug 26, 2008"
+.SH NAME
+iwh \- Intel(R) WiFi Link 5100/5300 Driver
+.SH DESCRIPTION
+.sp
+.LP
+The \fBiwh\fR \fI802.11a/g/n\fR wireless NIC driver is a multi-threaded,
+loadable, clonable, GLDv3-based STREAMS driver supporting the Intel Shirley
+Peak WiFi chipset-based NIC's. Driver functions include controller
+initialization, wireless \fI802.11\fR infrastructure network connection, WEP
+and frame transmit and receive.
+.SH CONFIGURATION
+.sp
+.LP
+The \fBiwh\fR driver performs auto-negotiation to determine the data rate and
+mode. Supported \fI802.11b\fR data rates are 1, 2, 5.5 and 11 Mbits/sec.
+Supported \fI802.11g\fR data rates are 1, 2, 5.5, 11, 6, 9, 12, 18, 24, 36, 48
+and 54 Mbits/sec.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/dev/iwh\fR \fR
+.ad
+.RS 26n
+Special character device.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/iwh\fR \fR
+.ad
+.RS 26n
+32-bit ELF kernel module (x86).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/iwh\fR \fR
+.ad
+.RS 26n
+64-bit ELF kernel module (x86).
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture x86
+_
+Interface Stability Committed
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR gld (4D),
+.BR dlpi (4P),
+.BR attributes (7),
+.BR dladm (8),
+.BR wificonfig (8)
+.sp
+.LP
+\fI802.11 - Wireless LAN Media Access Control and Physical Layer
+Specification\fR- IEEE, 2001.
diff --git a/usr/src/man/man4d/iwi.4d b/usr/src/man/man4d/iwi.4d
new file mode 100644
index 0000000000..ddd1586def
--- /dev/null
+++ b/usr/src/man/man4d/iwi.4d
@@ -0,0 +1,97 @@
+'\" te
+.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH IWI 4D "Mar 11, 2007"
+.SH NAME
+iwi \- Intel Pro. Wireless 802.11a/b/g IPW2200B/G IPW2915A/B/G Driver
+.SH DESCRIPTION
+.sp
+.LP
+The \fBiwi\fR \fI802.11b/g \fR wireless NIC driver is a multi-threaded,
+loadable, clonable, GLDv3-based STREAMS driver supporting the Data Link
+Provider Interface, \fBdlpi\fR(4P), on Intel Pro Wireless 2200BG 2915ABG
+chipset-based wireless NIC's. Driver functions include controller
+initialization, wireless \fI802.11b \fR infrastructure network connection, WEP
+and frame transmit and receive.
+.SH DRIVER CONFIGURATION
+.sp
+.LP
+The \fBiwi\fR driver performs auto-negotiation to determine the data rate and
+mode. Supported \fI802.11b \fR data rates are 1, 2, 5.5 and 11 Mbits/sec.
+Supported \fI802.11g\fR data rates are 1, 2, 5.5, 11, 6, 9, 12, 18, 24, 36, 48
+and 54 Mbits/sec.
+.sp
+.LP
+The \fBiwi\fR driver supports only BSS networks (also known as "ap" or
+"infrastructure" networks) and "open"(or "open-system") or "shared system"
+authentication. Only WEP encryption is currently supported. You perform
+configuration and administration tasks using the \fBdladm\fR(8) and
+\fBwificonfig\fR(8) utilities.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/dev/iwi*\fR\fR
+.ad
+.RS 25n
+Special character device.
+.RE
+
+.sp
+.ne 2
+.na
+\fB/kernel/drv/iwi\fR
+.ad
+.RS 25n
+32-bit ELF kernel module (x86).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/iwi\fR\fR
+.ad
+.RS 25n
+64-bit ELF kernel module (x86).
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for a description of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture x86
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR gld (4D),
+.BR dlpi (4P),
+.BR attributes (7),
+.BR dladm (8),
+.BR wificonfig (8)
+.sp
+.LP
+\fIANSI/IEEE Std 802.11- Standard for Wireless LAN Technology\fR \(em 1999
+.sp
+.LP
+\fIIEEE Std 802.11a- Standard for Wireless LAN Technology-Rev. A\fR\(em 2003
+.sp
+.LP
+\fIIEEE Std 802.11b - Standard for Wireless LAN Technology-Rev. B \fR\(em
+2003
+.sp
+.LP
+\fIIEEE Std 802.11g- Standard for Wireless LAN Technology -Rev. G\fR\(em
+2003
diff --git a/usr/src/man/man4d/iwn.4d b/usr/src/man/man4d/iwn.4d
new file mode 100644
index 0000000000..dccd54c07e
--- /dev/null
+++ b/usr/src/man/man4d/iwn.4d
@@ -0,0 +1,59 @@
+.\"
+.\" This file and its contents are supplied under the terms of the
+.\" Common Development and Distribution License ("CDDL"), version 1.0.
+.\" You may only use this file in accordance with the terms of version
+.\" 1.0 of the CDDL.
+.\"
+.\" A full copy of the text of the CDDL should have accompanied this
+.\" source. A copy of the CDDL is also available via the Internet at
+.\" http://www.illumos.org/license/CDDL.
+.\"
+.\"
+.\" Copyright 2016 Hans Rosenfeld <rosenfeld@grumpf.hope-2000.org>
+.\"
+.Dd Jun 11, 2016
+.Dt IWN 4D
+.Os
+.Sh NAME
+.Nm iwn
+.Nd Intel(R) WiFi Link 4965 and 100/1000/2000/5000/6000 Series Driver
+.Sh DESCRIPTION
+The
+.Nm
+.Em 802.11a/g/n
+wireless NIC driver is a multi-threaded, loadable, clonable,
+GLDv3-based STREAMS driver supporting the Intel Wifi Link 4965, 100,
+1000, 2000, 5000, and 6000 series of NIC's.
+Driver functions include controller initialization, wireless
+.Em 802.11
+infrastructure network connection, WEP and frame transmit and receive.
+.Sh CONFIGURATION
+The
+.Nm
+driver performs auto-negotiation to determine the data rate and mode
+Supported data rates are 1, 2, 5.5, and 11 Mbit/sec for
+.Em 802.11b
+and
+.Em 802.11g ,
+as well as 6, 9, 12, 18, 24, 36, 48, and 54 Mbit/sec for
+.Em 802.11a
+and
+.Em 802.11g .
+.Sh FILES
+.Bl -tag -compact -width Pa
+.It Pa /dev/iwn
+Special character device.
+.It Pa /kernel/drv/iwn
+32-bit ELF kernel module (x86).
+.It Pa /kernel/drv/amd64/iwn
+64-bit ELF kernel module (x86).
+.It Pa /kernel/firmware/iwn/*.ucode
+.Nm
+firmware files
+.El
+.Sh SEE ALSO
+.Xr dladm 8 ,
+.Xr wificonfig 8
+.Pp
+.Em 802.11 - Wireless LAN Media Access Control and Physical Layer
+Specification- IEEE, 2001
diff --git a/usr/src/man/man4d/ixgbe.4d b/usr/src/man/man4d/ixgbe.4d
new file mode 100644
index 0000000000..2f232cd27e
--- /dev/null
+++ b/usr/src/man/man4d/ixgbe.4d
@@ -0,0 +1,197 @@
+'\" te
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 2012, Nexenta Systems, Inc. All rights reserved.
+.\" Copyright 2016, OmniTI Computer Consulting, Inc. All rights reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
+.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH IXGBE 4D "Jan 10, 2020"
+.SH NAME
+ixgbe \- Intel 10Gb PCI Express NIC Driver
+.SH SYNOPSIS
+.nf
+\fB/dev/ixgbe*\fR
+.fi
+
+.SH DESCRIPTION
+The \fBixgbe\fR 10 Gigabit Ethernet driver is a multi-threaded, loadable,
+clonable, GLD-based STREAMS driver supporting the Data Link Provider Interface,
+\fBdlpi\fR(4P), on Intel 10-Gigabit PCI Express Ethernet controllers.
+.sp
+.LP
+The \fBixgbe\fR driver functions include controller initialization, frame
+transmit and receive, promiscuous and multicast support, and error recovery and
+reporting.
+.sp
+.LP
+The \fBixgbe\fR driver supports the following Intel 10-Gigabit PCI Express Ethernet controllers:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Intel Ethernet Controller 82598EB Family
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Intel Ethernet Controller 82599EB (X520) Family
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Intel Ethernet Controller X540 Family
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Intel Ethernet Controller X550 Family
+.RE
+.LP
+The \fBixgbe\fR driver and hardware support auto-negotiation, a protocol
+specified by the \fIIEEE 802.3ae\fR specification.
+.SH APPLICATION PROGRAMMING INTERFACE
+The cloning character-special device, \fB/dev/ixgbe\fR, is used to access all
+Intel 10-Gigabit PCI Express Ethernet devices installed within the system.
+.sp
+.LP
+The \fBixgbe\fR driver is managed by the \fBdladm\fR(8) command line utility,
+which allows VLANs to be defined on top of \fBixgbe\fR instances and for
+\fBixgbe\fR instances to be aggregated. See \fBdladm\fR(8) for more details.
+.sp
+.LP
+You must send an explicit DL_ATTACH_REQ message to associate the opened stream
+with a particular device (PPA). The PPA ID is interpreted as an unsigned
+integer data type and indicates the corresponding device instance (unit)
+number. The driver returns an error (DL_ERROR_ACK) if the PPA field value does
+not correspond to a valid device instance number for the system. The device is
+initialized on first attach and de-initialized (stopped) at last detach.
+.sp
+.LP
+The values returned by the driver in the DL_INFO_ACK primitive in response to
+your DL_INFO_REQ are:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Maximum SDU for Intel 82598EB is 16366.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Maximum SDU for Intel 82599EB, X540 and X550 is 15500.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Minimum SDU is 0.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+DLSAP address length is 8.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+MAC type is DL_ETHER.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+SAP (Service Access Point) length value is -2, meaning the physical address
+component is followed immediately by a 2-byte SAP component within the DLSAP
+address.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Broadcast address value is the Ethernet/IEEE broadcast address
+(FF:FF:FF:FF:FF:FF).
+.sp
+Once in the DL_ATTACHED state, you must send a DL_BIND_REQ to associate a
+particular SAP with the stream.
+.RE
+.SH CONFIGURATION
+By default, the \fBixgbe\fR driver performs auto-negotiation to select the link
+speed and mode. Link speed and mode can only be 10000 Mbps full-duplex for fiber, and only 10000, 1000, or 100 Mbps full-duplex for copper. See the
+\fIIEEE802.3\fR standard for more information.
+.SH FILES
+.ne 2
+.na
+\fB\fB/dev/ixgbe*\fR\fR
+.ad
+.RS 29n
+Special character device.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/ixgbe\fR\fR
+.ad
+.RS 29n
+Device driver (x86)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/sparcv9/ixgbe\fR\fR
+.ad
+.RS 29n
+Device driver (SPARC)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/ixgbe.conf\fR\fR
+.ad
+.RS 29n
+Driver configuration file
+.RE
+
+.SH ATTRIBUTES
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture SPARC, x86
+_
+Interface Stability Committed
+.TE
+
+.SH SEE ALSO
+.BR streamio (4I),
+.BR dlpi (4P),
+.BR driver.conf (5),
+.BR attributes (7),
+.BR dladm (8),
+.BR netstat (8)
+.sp
+.LP
+\fIWriting Device Drivers\fR
+.sp
+.LP
+\fISTREAMS Programming Guide\fR
+.sp
+.LP
+\fINetwork Interfaces Programmer's Guide\fR
+.sp
+.LP
+\fIIEEE 802.3ae Specification\fR, IEEE - 2002
diff --git a/usr/src/man/man4d/kmdb.4d b/usr/src/man/man4d/kmdb.4d
new file mode 100644
index 0000000000..3eed5709bd
--- /dev/null
+++ b/usr/src/man/man4d/kmdb.4d
@@ -0,0 +1,43 @@
+'\" te
+.\" Copyright (c) 2004 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH KMDB 4D "May 8, 2004"
+.SH NAME
+kmdb \- Kernel debugger
+.SH DESCRIPTION
+.sp
+.LP
+The \fBkmdb\fR driver is the mechanism used by mdb to invoke and control
+\fBkmdb\fR. This is \fBnot\fR a public interface.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB/dev/kmdb\fR
+.ad
+.RS 13n
+Kernel debugger driver.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Private
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7)
diff --git a/usr/src/man/man4d/ksensor.4d b/usr/src/man/man4d/ksensor.4d
new file mode 100644
index 0000000000..61c6270105
--- /dev/null
+++ b/usr/src/man/man4d/ksensor.4d
@@ -0,0 +1,41 @@
+.\"
+.\" This file and its contents are supplied under the terms of the
+.\" Common Development and Distribution License ("CDDL"), version 1.0.
+.\" You may only use this file in accordance with the terms of version
+.\" 1.0 of the CDDL.
+.\"
+.\" A full copy of the text of the CDDL should have accompanied this
+.\" source. A copy of the CDDL is also available via the Internet at
+.\" http://www.illumos.org/license/CDDL.
+.\"
+.\"
+.\" Copyright 2020 Oxide Computer Company
+.\"
+.Dd June 9, 2020
+.Dt KSENSOR 4D
+.Os
+.Sh NAME
+.Nm ksensor
+.Nd kernel sensor driver
+.Sh SYNOPSIS
+.In sys/sensors.h
+.Pp
+.Pa /dev/sensors/
+.Sh DESCRIPTION
+The
+.Nm
+driver provides access to sensors that are built using the kernel sensor
+framework.
+Sensors register with the framework are automatically made available to
+the system and used with the fault management architecture
+.Pq FMA .
+.Pp
+The file system location and programming interface to the
+.Nm
+driver are considered
+.Sy Volatile ,
+subject to change without notice, and should not be used directly.
+Sensor information can be dumped through the FMA developer utility
+.Sy fmtopo .
+.Sh SEE ALSO
+.Xr fmadm 8
diff --git a/usr/src/man/man4d/kstat.4d b/usr/src/man/man4d/kstat.4d
new file mode 100644
index 0000000000..b4168184b6
--- /dev/null
+++ b/usr/src/man/man4d/kstat.4d
@@ -0,0 +1,28 @@
+'\" te
+.\" Copyright (c) 1994, Sun Microsystems, Inc.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH KSTAT 4D "May 26, 1994"
+.SH NAME
+kstat \- kernel statistics driver
+.SH DESCRIPTION
+.sp
+.LP
+The \fBkstat\fR driver is the mechanism used by the \fBkstat\fR(3KSTAT) library
+to extract kernel statistics. This is NOT a public interface.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/dev/kstat\fR\fR
+.ad
+.RS 14n
+kernel statistics driver
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR kstat (3KSTAT),
+.BR kstat (9S)
diff --git a/usr/src/man/man4d/ksyms.4d b/usr/src/man/man4d/ksyms.4d
new file mode 100644
index 0000000000..ea191fb13e
--- /dev/null
+++ b/usr/src/man/man4d/ksyms.4d
@@ -0,0 +1,117 @@
+'\" te
+.\" Copyright (c) 2000 Sun Microsystems, Inc.
+.\" All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH KSYMS 4D "Dec 11, 2000"
+.SH NAME
+ksyms \- kernel symbols
+.SH SYNOPSIS
+.LP
+.nf
+\fB/dev/ksyms\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The file \fB/dev/ksyms\fR is a character special file that allows read-only
+access to an \fBELF\fR format image containing two sections: a symbol table
+and a corresponding string table. The contents of the symbol table reflect the
+symbol state of the currently running kernel. You can determine the size of
+the image with the \fBfstat\fR(\|) system call. The recommended method for
+accessing the \fB/dev/ksyms\fR file is by using the \fBELF\fR access library.
+See \fBelf\fR(3ELF) for details. If you are not familiar with \fBELF\fR
+format, see \fBa.out\fR(5).
+.sp
+.LP
+\fB/dev/ksyms\fR is an executable for the processor on which you are accessing
+it. It contains \fBELF\fR program headers which describe the text and data
+segment(s) in kernel memory. Since \fB/dev/ksyms\fR has no text or data, the
+fields specific to file attributes are initialized to \fINULL\fR. The remaining
+fields describe the text or data segment(s) in kernel memory.
+.sp
+.ne 2
+.na
+\fB\fBSymbol table\fR\fR
+.ad
+.RS 16n
+The \fBSYMTAB\fR section contains the symbol table entries present in the
+currently running kernel. This section is ordered as defined by the \fBELF\fR
+definition with locally-defined symbols first, followed by globally-defined
+symbols. Within symbol type, the symbols are ordered by kernel module load
+time. For example, the kernel file symbols are first, followed by the first
+module's symbols, and so on, ending with the symbols from the last module
+loaded.
+.sp
+The section header index (st_shndx) field of each symbol entry in the symbol
+table is set to \fBSHN_ABS,\fR because any necessary symbol relocations are
+performed by the kernel link editor at module load time.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBString table\fR\fR
+.ad
+.RS 16n
+The \fBSTRTAB\fR section contains the symbol name strings that the symbol
+table entries reference.
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR stat (2),
+.BR elf (3ELF),
+.BR kvm_open (3KVM),
+.BR mem (4D),
+.BR a.out (5),
+.BR kernel (8)
+.SH WARNINGS
+.sp
+.LP
+The kernel is dynamically configured. It loads kernel modules when necessary.
+Because of this aspect of the system, the symbol information present in the
+running system can vary from time to time, as kernel modules are loaded and
+unloaded.
+.sp
+.LP
+When you open the \fB/dev/ksyms\fR file, you have access to an \fBELF\fR
+image which represents a snapshot of the state of the kernel symbol information
+at that instant in time. While the \fB/dev/ksyms\fR file remains open, kernel
+module autounloading is disabled, so that you are protected from the
+possibility of acquiring stale symbol data. Note that new modules can still be
+loaded, however. If kernel modules are loaded while you have the
+\fB/dev/ksyms\fR file open, the snapshot held by you will not be updated. In
+order to have access to the symbol information of the newly loaded modules, you
+must first close and then reopen the \fB/dev/ksyms\fR file. Be aware that the
+size of the \fB/dev/ksyms\fR file will have changed. You will need to use the
+\fBfstat()\fR function (see \fBstat\fR(2)) to determine the new size of the
+file.
+.sp
+.LP
+Avoid keeping the \fB/dev/ksyms\fR file open for extended periods of time,
+either by using \fBkvm_open\fR(3KVM) of the default namelist file or with a
+direct open. There are two reasons why you should not hold \fB/dev/ksyms\fR
+open. First, the system's ability to dynamically configure itself is partially
+disabled by the locking down of loaded modules. Second, the snapshot of symbol
+information held by you will not reflect the symbol information of modules
+loaded after your initial open of \fB/dev/ksyms\fR.
+.sp
+.LP
+Note that the \fBksyms\fR driver is a loadable module, and that the kernel
+driver modules are only loaded during an open system call. Thus it is possible
+to run \fBstat\fR(2) on the \fB/dev/ksyms\fR file without causing the
+\fBksyms\fR driver to be loaded. In this case, the file size returned is
+\fBUNKNOWN_SIZE\fR. A solution for this behavior is to first open the
+\fB/dev/ksyms\fR file, causing the \fBksyms\fR driver to be loaded (if
+necessary). You can then use the file descriptor from this open in a
+\fBfstat\fR(\|) system call to get the file's size.
+.SH NOTES
+.sp
+.LP
+The kernel virtual memory access library (\fBlibkvm\fR) routines use
+\fB/dev/ksyms\fR as the default namelist file. See \fBkvm_open\fR(3KVM) for
+details.
diff --git a/usr/src/man/man4d/llc1.4d b/usr/src/man/man4d/llc1.4d
new file mode 100644
index 0000000000..b0697d58d5
--- /dev/null
+++ b/usr/src/man/man4d/llc1.4d
@@ -0,0 +1,234 @@
+'\" te
+.\" Copyright (c) 1997, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH LLC1 4D "Feb 13, 1997"
+.SH NAME
+llc1 \- Logical Link Control Protocol Class 1 Driver
+.SH SYNOPSIS
+.LP
+.nf
+\fB#include <sys/stropts.h>\fR
+.fi
+
+.LP
+.nf
+\fB#include <sys/ethernet.h>\fR
+.fi
+
+.LP
+.nf
+\fB#include <sys/dlpi.h>\fR
+.fi
+
+.LP
+.nf
+\fB#include <sys/llc1.h>\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBllc1\fR driver is a multi-threaded, loadable, clonable, STREAMS
+multiplexing driver supporting the connectionless Data Link Provider Interface,
+\fBdlpi\fR(4P), implementing IEEE 802.2 Logical Link Control Protocol Class 1
+over a STREAM to a MAC level driver. Multiple MAC level interfaces installed
+within the system can be supported by the driver. The \fBllc1\fR driver
+provides basic support for the LLC1 protocol. Functions provided include frame
+transmit and receive, XID, and TEST, multicast support, and error recovery and
+reporting.
+.sp
+.LP
+The cloning, character-special device, \fB/dev/llc1\fR, is used to access all
+LLC1 controllers configured under \fBllc1\fR.
+.sp
+.LP
+The \fBllc1\fR driver is a "Style 2" Data Link Service provider. All messages
+of types \fBM_PROTO\fR and \fBM_PCPROTO\fR are interpreted as DLPI primitives.
+An explicit \fBDL_ATTACH_REQ\fR message by the user is required to associate
+the opened stream with a particular device (\fBppa\fR). The \fBppa\fR ID is
+interpreted as an unsigned long and indicates the corresponding device instance
+(unit) number. An error (\fBDL_ERROR_ACK\fR) is returned by the driver if the
+\fBppa\fR field value does not correspond to a valid device instance number for
+this system.
+.sp
+.LP
+The values returned by the driver in the \fBDL_INFO_ACK\fR primitive in
+response to the \fBDL_INFO_REQ\fR from the user are as follows:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The maximum Service Data UNIT (SDU) is derived from the MAC layer linked below
+the driver. In the case of an Ethernet driver, the SDU will be 1497.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The minimum SDU is 0.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The MAC type is \fBDL_CSMACD\fR or \fBDL_TPR\fR as determined by the driver
+linked under \fBllc1.\fR If the driver reports that it is \fBDL_ETHER,\fR it
+will be changed to \fBDL_CSMACD;\fR otherwise the type is the same as the MAC
+type.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The \fBsap\fR length value is \(mi1, meaning the physical address component is
+followed immediately by a 1-octet \fBsap\fR component within the DLSAP address.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The service mode is \fBDL_CLDLS.\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The MAC type is \fBDL_CSMACD\fR or \fBDL_TPR\fR as determined by the driver
+linked under \fBllc1.\fR If the driver reports that it is \fBDL_ETHER,\fR it
+will be changed to \fBDL_CSMACD;\fR otherwise the type is the same as the MAC
+type.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The \fBdlsap\fR address length is 7.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+No optional quality of service (QOS) support is included at present, so the QOS
+fields should be initialized to 0.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The DLPI version is \fBDL_VERSION_2.\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The provider style is \fBDL_STYLE2.\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The broadcast address value is the broadcast address returned from the lower
+level driver.
+.RE
+.sp
+.LP
+Once in the \fBDL_ATTACHED\fR state, the user must send a \fBDL_BIND_REQ\fR to
+associate a particular Service Access Point (SAP) with the stream. The
+\fBllc1\fR driver interprets the \fBsap\fR field within the \fBDL_BIND_REQ\fR
+as an IEEE 802.2 "SAP," therefore valid values for the \fBsap\fR field are in
+the [0-0xFF] range with only even values being legal.
+.sp
+.LP
+The \fBllc1\fR driver DLSAP address format consists of the 6-octet physical
+(e.g., Ethernet) address component followed immediately by the 1-octet
+\fBsap\fR (type) component producing a 7-octet DLSAP address. Applications
+should \fInot\fR hard-code to this particular implementation-specific DLSAP
+address format, but use information returned in the \fBDL_INFO_ACK\fR primitive
+to compose and decompose DLSAP addresses. The \fBsap\fR length, full DLSAP
+length, and \fBsap\fR/physical ordering are included within the
+\fBDL_INFO_ACK.\fR The physical address length can be computed by subtracting
+the absolute value of the \fBsap\fR length from the full DLSAP address length
+or by issuing the \fBDL_PHYS_ADDR_REQ\fR to obtain the current physical
+address associated with the stream.
+.sp
+.LP
+Once in the \fBDL_BOUND\fR state, the user may transmit frames on the LAN by
+sending \fBDL_UNITDATA_REQ\fR messages to the \fBllc1\fR driver. The
+\fBllc1\fR driver will route received frames up all open and bound streams
+having a \fBsap\fR which matches the IEEE 802.2 DSAP as \fBDL_UNITDATA_IND\fR
+messages. Received frames are duplicated and routed up multiple open streams if
+necessary. The DLSAP address contained within the \fBDL_UNITDATA_REQ\fR and
+\fBDL_UNITDATA_IND\fR messages consists of both the \fBsap\fR (type) and
+physical (Ethernet) components.
+.sp
+.LP
+In addition to the mandatory, connectionless DLPI message set, the driver
+additionally supports the following primitives:
+.sp
+.LP
+The \fBDL_ENABMULTI_REQ\fR and \fBDL_DISABMULTI_REQ\fR primitives
+enable/disable reception of specific multicast group addresses. A set of
+multicast addresses may be iteratively created and modified on a per-stream
+basis using these primitives. These primitives are accepted by the driver in
+any driver state that is valid while still being attached to the \fBppa\fR.
+.sp
+.LP
+The \fBDL_PHYS_ADDR_REQ\fR primitive returns the 6-octet physical address
+currently associated (attached) to the stream in the \fBDL_PHYS_ADDR_ACK\fR
+primitive. This primitive is valid only in states following a successful
+\fBDL_ATTACH_REQ.\fR
+.sp
+.LP
+The \fBDL_SET_PHYS_ADDR_REQ\fR primitive changes the 6-octet physical address
+currently associated (attached) to this stream. Once changed, all streams
+subsequently opened and attached to this device will obtain this new physical
+address. Once changed, the physical address will remain set until this
+primitive is used to change the physical address again or the system is
+rebooted, whichever occurs first.
+.sp
+.LP
+The \fBDL_XID_REQ/DL_TEST_REQ\fR primitives provide the means for a user to
+issue an \fBLLC XID\fR or \fBTEST\fR request message. A response to one of
+these messages will be in the form of a \fBDL_XID_CON/DL_TEST_CON\fR message.
+.sp
+.LP
+The \fBDL_XID_RES/DL_TEST_RES\fR primitives provide a way for the user to
+respond to the receipt of an \fBXID\fR or \fBTEST\fR message that was
+received as a \fBDL_XID_IND/DL_TEST_IND\fR message.
+.sp
+.LP
+\fBXID\fR and \fBTEST\fR will be automatically processed by \fBllc1\fR if the
+\fBDL_AUTO_XID/DL_AUTO_TEST\fR bits are set in the \fBDL_BIND_REQ.\fR
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/dev/llc1\fR\fR
+.ad
+.RS 13n
+cloning, character-special device
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture x86
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR dlpi (4P),
+.BR attributes (7)
diff --git a/usr/src/man/man4d/lockstat.4d b/usr/src/man/man4d/lockstat.4d
new file mode 100644
index 0000000000..69a8047df9
--- /dev/null
+++ b/usr/src/man/man4d/lockstat.4d
@@ -0,0 +1,53 @@
+'\" te
+.\" Copyright (c) 2003Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH LOCKSTAT 4D "Dec 10, 2017"
+.SH NAME
+lockstat \- DTrace kernel lock instrumentation provider
+.SH DESCRIPTION
+.LP
+The \fBlockstat\fR driver is a DTrace dynamic tracing provider that performs
+dynamic instrumentation for locking primitives in the kernel.
+.sp
+.LP
+The \fBlockstat\fR provider makes probes available that you can use to discern
+lock contention statistics, or to understand virtually any aspect of locking
+behavior inside the operating system kernel. The \fBlockstat\fR(8) command is
+implemented as a DTrace consumer that uses the lockstat provider to gather raw
+data.
+.sp
+.LP
+The \fBlockstat\fR driver is not a public interface and you access the
+instrumentation offered by this provider through DTrace. Refer to the
+\fIDynamic Tracing Guide\fR for a description of the public documented
+interfaces available for the DTrace facility and the probes offered by the
+\fBlockstat\fR provider.
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for a description of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Private
+.TE
+
+.SH SEE ALSO
+.LP
+.BR dtrace (4D),
+.BR attributes (7),
+.BR dtrace (8),
+.BR lockstat (8)
+.sp
+.LP
+\fIDynamic Tracing Guide\fR:
+.sp
+.LP
+https://illumos.org/books/dtrace/
diff --git a/usr/src/man/man4d/lofi.4d b/usr/src/man/man4d/lofi.4d
new file mode 100644
index 0000000000..deea4df1d9
--- /dev/null
+++ b/usr/src/man/man4d/lofi.4d
@@ -0,0 +1,143 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH LOFI 4D "Nov 25, 2008"
+.SH NAME
+lofi \- Loopback file driver
+.SH DESCRIPTION
+.sp
+.LP
+The \fBlofi\fR file driver exports a file as a block device, enabling system
+utilities such as \fBfstyp\fR(8), \fBfsck\fR(8) and \fBmount\fR(8) to
+operate on underlying file system images (including CD-ROM and FAT floppy
+images) contained on the block device. Reads and writes to the block device are
+translated to reads and writes on the exported file. See \fBlofiadm\fR(8) for
+examples.
+.sp
+.LP
+File block device entries are contained in \fB/dev/lofi\fR. The
+\fB/dev/rlofi\fR file contains the character (or raw) device entries. Entries
+are in the form of decimal numbers and are assigned through
+\fBlofiadm\fR(8). When created, these device entries are owned by root, in
+group sys and have permissions of 0600. Ownership, group, and permission
+settings can be altered, however there may be ramifications. See
+\fBlofiadm\fR(8) for more information.
+.sp
+.LP
+\fBlofi\fR devices can be compressed. See \fBlofiadm\fR(8) for more
+information.
+.sp
+.LP
+Files exported through \fBlofi\fR can also be encrypted. See \fBlofiadm\fR(8)
+for details on how to specify encryption keys.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/dev/lofictl\fR\fR
+.ad
+.sp .6
+.RS 4n
+Master control device
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/lofi/\fIn\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Block device for file \fIn\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/rlofi/\fIn\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Character device for file \fIn\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/lofi\fR\fR
+.ad
+.sp .6
+.RS 4n
+32-bit driver
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/sparcv9/lofi\fR\fR
+.ad
+.sp .6
+.RS 4n
+64-bit driver (SPARC)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/lofi\fR\fR
+.ad
+.sp .6
+.RS 4n
+64-bit driver (x86)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/lofi.conf\fR\fR
+.ad
+.sp .6
+.RS 4n
+Driver configuration file. (Do not alter).
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for a description of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture SPARC, x86
+_
+Interface Stability Committed
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR lofs (4FS),
+.BR attributes (7),
+.BR fsck (8),
+.BR fstyp (8),
+.BR lofiadm (8),
+.BR mount (8),
+.BR newfs (8)
+.SH NOTES
+.sp
+.LP
+Just as you would not directly access a disk device that has mounted file
+systems, you should not access a file associated with a block device except
+through the \fBlofi\fR file driver.
+.sp
+.LP
+For compatibility purposes, a raw device is also exported with the block
+device. (For example, \fBnewfs\fR(8)).
diff --git a/usr/src/man/man4d/log.4d b/usr/src/man/man4d/log.4d
new file mode 100644
index 0000000000..53c3feb6c8
--- /dev/null
+++ b/usr/src/man/man4d/log.4d
@@ -0,0 +1,297 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 1997, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH LOG 4D "Mar 11, 1998"
+.SH NAME
+log \- interface to STREAMS error logging and event tracing
+.SH SYNOPSIS
+.LP
+.nf
+\fB#include <sys/strlog.h>\fR
+.fi
+
+.LP
+.nf
+\fB#include <sys/log.h>\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBlog\fR is a STREAMS software device driver that provides an interface for
+console logging and for the STREAMS error logging and event tracing processes
+(see \fBstrerr\fR(8), and \fBstrace\fR(8)). \fBlog\fR presents two separate
+interfaces: a function call interface in the kernel through which STREAMS
+drivers and modules submit \fBlog\fR messages; and a set of \fBioctl\fR(2)
+requests and STREAMS messages for interaction with a user level console logger,
+an error logger, a trace logger, or processes that need to submit their own
+\fBlog\fR messages.
+.SS "Kernel Interface"
+.sp
+.LP
+\fBlog\fR messages are generated within the kernel by calls to the function
+\fBstrlog()\fR:
+.sp
+.in +2
+.nf
+strlog(short \fImid\fR,
+ short \fIsid\fR,
+ char \fIlevel\fR,
+ ushort_t \fIflags\fR,
+ char *\fBfmt\fR,
+ unsigned \fIarg1\fR\fB\|.\|.\|.\|
+);\fR
+.fi
+.in -2
+
+.sp
+.LP
+Required definitions are contained in \fB<sys/strlog.h>\fR, \fB<sys/log.h>\fR,
+and \fB<sys/syslog.h>\fR\&. \fImid\fR is the STREAMS module id number for the
+module or driver submitting the \fBlog\fR message. \fIsid\fR is an internal
+sub-id number usually used to identify a particular minor device of a driver.
+\fIlevel\fR is a tracing level that allows for selective screening out of low
+priority messages from the tracer. \fIflags\fR are any combination of
+\fBSL_ERROR\fR (the message is for the error logger), \fBSL_TRACE\fR (the
+message is for the tracer), \fBSL_CONSOLE\fR (the message is for the console
+logger), \fBSL_FATAL\fR (advisory notification of a fatal error), and
+\fBSL_NOTIFY\fR (request that a copy of the message be mailed to the system
+administrator). \fIfmt\fR is a \fBprintf\fR(3C) style format string, except
+that \fB%s\fR, \fB%e\fR, \fB%E\fR, \fB%g\fR, and \fB%G\fR conversion
+specifications are not handled. Up to \fBNLOGARGS\fR (in this release, three)
+numeric or character arguments can be provided.
+.SS "User Interface"
+.sp
+.LP
+\fBlog\fR is implemented as a cloneable device, it clones itself without
+intervention from the system clone device. Each open of \fB/dev/log\fR obtains
+a separate stream to \fBlog\fR. In order to receive \fBlog\fR messages, a
+process must first notify \fBlog\fR whether it is an error logger, trace
+logger, or console logger using a STREAMS \fBI_STR ioctl\fR call (see below).
+For the console logger, the \fBI_STR ioctl\fR has an \fBic_cmd\fR field of
+\fBI_CONSLOG\fR, with no accompanying data. For the error logger, the \fBI_STR
+ioctl\fR has an \fBic_cmd\fR field of \fBI_ERRLOG\fR, with no accompanying
+data. For the trace logger, the \fBioctl\fR has an \fBic_cmd\fR field of
+\fBI_TRCLOG\fR, and must be accompanied by a data buffer containing an array of
+one or more struct \fBtrace_ids\fR elements.
+.sp
+.in +2
+.nf
+struct trace_ids {
+ short ti_mid;
+ short ti_sid;
+ char ti_level;
+};
+.fi
+.in -2
+
+.sp
+.LP
+Each \fBtrace_ids\fR structure specifies a \fImid\fR, \fIsid\fR, and
+\fIlevel\fR from which messages will be accepted. \fBstrlog\fR(9F) will accept
+messages whose \fImid\fR and \fIsid\fR exactly match those in the
+\fBtrace_ids\fR structure, and whose level is less than or equal to the level
+given in the \fBtrace_ids\fR structure. A value of \(mi1 in any of the fields
+of the \fBtrace_ids\fR structure indicates that any value is accepted for that
+field.
+.sp
+.LP
+Once the logger process has identified itself using the \fBioctl\fR call,
+\fBlog\fR will begin sending up messages subject to the restrictions noted
+above. These messages are obtained using the \fBgetmsg\fR(2) function. The
+control part of this message contains a \fBlog_ctl\fR structure, which
+specifies the \fImid\fR, \fIsid\fR, \fIlevel\fR, \fIflags\fR, time in ticks
+since boot that the message was submitted, the corresponding time in seconds
+since Jan. 1, 1970, a sequence number, and a priority. The time in seconds
+since 1970 is provided so that the date and time of the message can be easily
+computed, and the time in ticks since boot is provided so that the relative
+timing of \fBlog\fR messages can be determined.
+.sp
+.in +2
+.nf
+struct log_ctl {
+ short mid;
+ short sid;
+ char level; /* level of message for tracing */
+ short flags; /* message disposition */
+#if defined(_LP64) || defined(_I32LPx)
+ clock32_t ltime; /* time in machine ticks since boot */
+ time32_t ttime; /* time in seconds since 1970 */
+#else
+ clock_t ltime;
+ time_t ttime;
+#endif
+ int seq_no; /* sequence number */
+ int pri; /* priority = (facility|level) */
+};
+.fi
+.in -2
+
+.sp
+.LP
+The priority consists of a priority code and a facility code, found in
+\fB<sys/syslog.h>\fR\&. If \fBSL_CONSOLE\fR is set in \fIflags\fR, the priority
+code is set as follows: If \fBSL_WARN\fR is set, the priority code is set to
+\fBLOG_WARNING\fR; If \fBSL_FATAL\fR is set, the priority code is set to
+\fBLOG_CRIT\fR; If \fBSL_ERROR\fR is set, the priority code is set to
+\fBLOG_ERR\fR; If \fBSL_NOTE\fR is set, the priority code is set to
+\fBLOG_NOTICE\fR; If \fBSL_TRACE\fR is set, the priority code is set to
+\fBLOG_DEBUG\fR; If only \fBSL_CONSOLE\fR is set, the priority code is set to
+\fBLOG_INFO\fR. Messages originating from the kernel have the facility code set
+to \fBLOG_KERN\fR. Most messages originating from user processes will have the
+facility code set to \fBLOG_USER\fR.
+.sp
+.LP
+Different sequence numbers are maintained for the error and trace logging
+streams, and are provided so that gaps in the sequence of messages can be
+determined (during times of high message traffic some messages may not be
+delivered by the logger to avoid hogging system resources). The data part of
+the message contains the unexpanded text of the format string (null
+terminated), followed by \fBNLOGARGS\fR words for the arguments to the format
+string, aligned on the first word boundary following the format string.
+.sp
+.LP
+A process may also send a message of the same structure to \fBlog\fR, even if
+it is not an error or trace logger. The only fields of the \fBlog_ctl\fR
+structure in the control part of the message that are accepted are the
+\fIlevel\fR, \fIflags\fR, and \fIpri\fR fields; all other fields are filled in
+by \fBlog\fR before being forwarded to the appropriate logger. The data portion
+must contain a null terminated format string, and any arguments (up to
+\fBNLOGARGS\fR) must be packed, 32-bits each, on the next 32-bit boundary
+following the end of the format string.
+.sp
+.LP
+\fBENXIO\fR is returned for \fBI_TRCLOG\fR ioctls without any \fBtrace_ids\fR
+structures, or for any unrecognized \fBioctl\fR calls. The driver silently
+ignores incorrectly formatted \fBlog\fR messages sent to the driver by a user
+process (no error results).
+.sp
+.LP
+Processes that wish to write a message to the console logger may direct their
+output to \fB/dev/conslog\fR, using either \fBwrite\fR(2) or \fBputmsg\fR(2).
+.SS "Driver Configuration"
+.sp
+.LP
+The following driver configuration properties may be defined in the
+\fBlog.conf\fR file.
+.sp
+.ne 2
+.na
+\fBmsgid=1\fR
+.ad
+.RS 11n
+If \fBmsgid=1\fR, each message will be preceded by a message ID as described in
+\fBsyslogd\fR(8).
+.RE
+
+.sp
+.ne 2
+.na
+\fBmsgid=0\fR
+.ad
+.RS 11n
+ If \fBmsgid=0\fR, message IDs will not be generated. This property is unstable
+and may be removed in a future release.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fR\fBI_ERRLOG\fR registration.
+.sp
+.in +2
+.nf
+struct strioctl ioc;
+ioc.ic_cmd = I_ERRLOG;
+ioc.ic_timout = 0; /* default timeout (15 secs.) */
+ioc.ic_len = 0;
+ioc.ic_dp = NULL;
+ioctl(log, I_STR, &ioc);
+.fi
+.in -2
+
+.LP
+\fBExample 2 \fR\fBI_TRCLOG\fR registration.
+.sp
+.in +2
+.nf
+struct trace_ids tid[2];
+tid[0].ti_mid = 2;
+tid[0].ti_sid = 0;
+tid[0].ti_level = 1;
+tid[1].ti_mid = 1002;
+tid[1].ti_sid = \(mi1; /* any sub-id will be allowed */
+tid[1].ti_level = \(mi1; /* any level will be allowed */
+ioc.ic_cmd = I_TRCLOG;
+ioc.ic_timout = 0;
+ioc.ic_len = 2 * sizeof(struct trace_ids);
+ioc.ic_dp = (char *)tid;
+ioctl(log, I_STR, &ioc);
+.fi
+.in -2
+
+.sp
+.LP
+Example of submitting a \fBlog\fR message (no arguments):
+
+.sp
+.in +2
+.nf
+struct strbuf ctl, dat;
+struct log_ctl lc;
+char *message = "Don't forget to pick up some milk
+ on the way home";
+ctl.len = ctl.maxlen = sizeof(lc);
+ctl.buf = (char *)&lc;
+dat.len = dat.maxlen = strlen(message);
+dat.buf = message;
+lc.level = 0;
+lc.flags = SL_ERROR|SL_NOTIFY;
+putmsg(log, &ctl, &dat, 0);
+.fi
+.in -2
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/dev/log\fR\fR
+.ad
+.RS 24n
+Log driver.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/conslog\fR\fR
+.ad
+.RS 24n
+Write only instance of the log driver, for console logging.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/log.conf\fR\fR
+.ad
+.RS 24n
+Log configuration file.
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR getmsg (2),
+.BR ioctl (2),
+.BR putmsg (2),
+.BR write (2),
+.BR Intro (3),
+.BR printf (3C),
+.BR strace (8),
+.BR strerr (8),
+.BR strlog (9F)
+.sp
+.LP
+\fISTREAMS Programming Guide\fR
diff --git a/usr/src/man/man4d/mc-opl.4d b/usr/src/man/man4d/mc-opl.4d
new file mode 100644
index 0000000000..84bfaf7266
--- /dev/null
+++ b/usr/src/man/man4d/mc-opl.4d
@@ -0,0 +1,34 @@
+'\" te
+.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH MC-OPL 4D "Apr 18, 2006"
+.SH NAME
+mc-opl \- memory controller driver for the SPARC Enterprise Server family
+.SH DESCRIPTION
+.sp
+.LP
+The \fBmc-opl\fR driver is the memory controller driver for the SPARC
+Enterprise Server family. This driver manages the hardware memory-scrubbing
+operations.
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Private
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7)
diff --git a/usr/src/man/man4d/mega_sas.4d b/usr/src/man/man4d/mega_sas.4d
new file mode 100644
index 0000000000..01940e94d9
--- /dev/null
+++ b/usr/src/man/man4d/mega_sas.4d
@@ -0,0 +1,107 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH MEGA_SAS 4D "Aug 14, 2008"
+.SH NAME
+mega_sas \- SCSI HBA driver for LSI MegaRAID SAS controller
+.SH DESCRIPTION
+.sp
+.LP
+The \fBmega_sas\fR MegaRAID controller host bus adapter driver is a
+SCSA-compliant nexus driver that supports the Dell PERC 5/E, 5/i, 6/E and 6/i
+RAID controllers, the IBM ServeRAID-MR10k SAS/SATA controller and the LSI
+MegaRAID SAS/SATA 8308ELP, 8344ELP, 84016E, 8408ELP, 8480ELP, 8704ELP, 8704EM2,
+8708ELP, 8708EM2, 8880EM2 and 8888ELP series of controllers.
+.sp
+.LP
+Supported RAID features include RAID levels 0, 1, 5, and 6, RAID spans 10, 50
+and 60, online capacity expansion (OCE), online RAID level migration (RLM),
+auto resume after loss of system power during arrays, array rebuild or
+reconstruction (RLM) and configurable stripe size up to 1MB. Additional
+supported RAID features include check consistency for background data
+integrity, patrol read for media scanning and repairing, 64 logical drive
+support, up to 64TB LUN support, automatic rebuild and global and dedicated hot
+spare support.
+.SH CONFIGURATION
+.sp
+.LP
+The \fBmega_sas.conf\fR file contains no user configurable parameters. Please
+configure your hardware through the related BIOS utility or the MegaCli
+configuration utility. If you want to install to a drive attached to a
+mega_sas HBA, you should create the virtual drive first from the BIOS before
+running the Solaris install. You can obtain the MegaCli utility from the LSI
+website.
+.sp
+.LP
+The \fBmega_sas\fR device can support up to 64 virtual disks. Note that BIOS
+numbers the virtual disks as 1 through 64, however in the Solaris operating
+environment virtual disks are numbered from 0 to 63. Also note that SAS and
+SATA drives cannot be configured into the same virtual disk.
+.SH KNOWN PROBLEMS AND LIMITATIONS
+.sp
+.LP
+The \fBmega_sas\fR driver does not support the LSI MegaRAID SAS 8204ELP,
+8204XLP, 8208ELP, and 8208XLP controllers.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/mega_sas\fR\fR
+.ad
+.RS 30n
+32-bit ELF kernel module. (x86)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/mega_sas\fR\fR
+.ad
+.RS 30n
+64-bit kernel module. (x86)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/mega_sas.conf\fR\fR
+.ad
+.RS 30n
+Driver configuration file (contains no user-configurable options).
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture x86-based systems
+_
+Interface stability Uncommitted
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR sata (4D),
+.BR attributes (7),
+.BR prtconf (8),
+.BR scsi_hba_attach_setup (9F),
+.BR scsi_sync_pkt (9F),
+.BR scsi_transport (9F),
+.BR scsi_device (9S),
+.BR scsi_inquiry (9S),
+.BR scsi_pkt (9S)
+.sp
+.LP
+\fISmall Computer System Interface-2 (SCSI-2)\fR
diff --git a/usr/src/man/man4d/mem.4d b/usr/src/man/man4d/mem.4d
new file mode 100644
index 0000000000..b5e5a999bc
--- /dev/null
+++ b/usr/src/man/man4d/mem.4d
@@ -0,0 +1,132 @@
+'\" te
+.\" Copyright 2002 Sun Microsystems Inc. All Rights Reserved.
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH MEM 4D "Feb 18, 2002"
+.SH NAME
+mem, kmem, allkmem \- physical or virtual memory access
+.SH SYNOPSIS
+.LP
+.nf
+/dev/mem
+.fi
+
+.LP
+.nf
+/dev/kmem
+.fi
+
+.LP
+.nf
+/dev/allkmem
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The file \fB/dev/mem\fR is a special file that provides access to the physical
+memory of the computer.
+.sp
+.LP
+The file \fB/dev/kmem\fR is a special file that provides access to the virtual
+address space of the operating system kernel, excluding memory that is
+associated with an I/O device.
+.sp
+.LP
+The file \fB/dev/allkmem\fR is a special file that provides access to the
+virtual address space of the operating system kernel, including memory that is
+associated with an I/O device. You can use any of these devices to examine and
+modify the system.
+.sp
+.LP
+Byte addresses in \fB/dev/mem\fR are interpreted as physical memory addresses.
+Byte addresses in \fB/dev/kmem\fR and \fB/dev/allkmem\fR are interpreted as
+kernel virtual memory addresses. A reference to a non-existent location returns
+an error. See ERRORS for more information.
+.sp
+.LP
+The file \fB/dev/mem\fR accesses physical memory; the size of the file is equal
+to the amount of physical memory in the computer. This size may be larger than
+4GB on a system running the 32-bit operating environment. In this case, you can
+access memory beyond 4GB using a series of \fBread\fR(2) and \fBwrite\fR(2)
+calls, a \fBpread64()\fR or \fBpwrite64()\fR call, or a combination of
+\fBllseek\fR(2) and \fBread\fR(2) or \fBwrite\fR(2).
+.SH ERRORS
+.sp
+.ne 2
+.na
+\fB\fBEFAULT\fR\fR
+.ad
+.RS 10n
+Occurs when trying to \fBwrite\fR(2) a read-only location (\fBallkmem\fR),
+\fBread\fR(2) a write-only location (\fBallkmem\fR), or \fBread\fR(2) or
+\fBwrite\fR(2) a non-existent or unimplemented location (\fBmem\fR, \fBkmem\fR,
+\fBallkmem\fR).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEIO\fR\fR
+.ad
+.RS 10n
+Occurs when trying to \fBread\fR(2) or \fBwrite\fR(2) a memory location that is
+associated with an I/O device using the \fB/dev/kmem\fR special file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBENXIO\fR\fR
+.ad
+.RS 10n
+Results from attempting to \fBmmap\fR(2) a non-existent physical (\fBmem\fR) or
+virtual (\fBkmem\fR, \fBallkmem\fR) memory address.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/dev/mem\fR\fR
+.ad
+.RS 16n
+Provides access to the computer's physical memory.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/kmem\fR\fR
+.ad
+.RS 16n
+Provides access to the virtual address space of the operating system kernel,
+excluding memory that is associated with an I/O device.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/allkmem\fR\fR
+.ad
+.RS 16n
+Provides access to the virtual address space of the operating system kernel,
+including memory that is associated with an I/O device.
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR llseek (2),
+.BR mmap (2),
+.BR read (2),
+.BR write (2)
+.SH WARNINGS
+.sp
+.LP
+Using these devices to modify (that is, write to) the address space of a live
+running operating system or to modify the state of a hardware device is
+extremely dangerous and may result in a system panic if kernel data structures
+are damaged or if device state is changed.
diff --git a/usr/src/man/man4d/mlxcx.4d b/usr/src/man/man4d/mlxcx.4d
new file mode 100644
index 0000000000..cf295a062b
--- /dev/null
+++ b/usr/src/man/man4d/mlxcx.4d
@@ -0,0 +1,367 @@
+.\"
+.\" This file and its contents are supplied under the terms of the
+.\" Common Development and Distribution License ("CDDL"), version 1.0.
+.\" You may only use this file in accordance with the terms of version
+.\" 1.0 of the CDDL.
+.\"
+.\" A full copy of the text of the CDDL should have accompanied this
+.\" source. A copy of the CDDL is also available via the Internet at
+.\" http://www.illumos.org/license/CDDL.
+.\"
+.\"
+.\" Copyright 2020 the University of Queensland
+.\"
+.Dd August 27, 2020
+.Dt MLXCX 4D
+.Os
+.Sh NAME
+.Nm mlxcx
+.Nd Mellanox ConnectX-4/5/6 Ethernet controller driver
+.Sh SYNOPSIS
+.Pa /dev/net/mlxcx*
+.Sh DESCRIPTION
+The
+.Sy mlxcx
+driver is a GLDv3 NIC driver for the ConnectX-4, ConnectX-4 Lx, ConnectX-5 and
+ConnectX-6 families of ethernet controllers from Mellanox.
+It supports the Data Link Provider Interface,
+.Xr dlpi 4P .
+.Pp
+This driver supports:
+.Bl -dash -offset indent
+.It
+Jumbo frames up to 9000 bytes.
+.It
+Checksum offload for TCP, UDP, IPv4 and IPv6.
+.It
+Group support with VLAN and MAC steering to avoid software classification
+when using VNICs.
+.It
+Promiscuous access via
+.Xr snoop 8 and
+.Xr dlpi 4P
+.It
+LED control
+.It
+Transceiver information
+.It
+Internal temperature sensors
+.El
+.Pp
+At this time, the driver does not support Large Send Offload (LSO), energy
+efficient Ethernet (EEE), or the use of flow control through hardware pause
+frames.
+.Sh CONFIGURATION
+The
+.Sy mlxcx.conf
+file contains user configurable parameters, including the ability to set the
+number of rings and groups advertised to MAC, the sizes of rings and groups,
+and the maximum number of MAC address filters available.
+.Sh PROPERTIES
+The driver supports the following device properties which may be tuned through
+its driver.conf file,
+.Pa /kernel/drv/mlxcx.conf .
+These properties cannot be changed after the driver has been attached.
+.Pp
+These properties are not considered stable at this time, and may change.
+.Bl -hang -width Ds
+.It Sy eq_size_shift
+.Bd -filled -compact
+Minimum:
+.Sy 2 |
+Maximum:
+.Sy device dependent (up to 255)
+.Ed
+.Bd -filled
+The
+.Sy eq_size_shift
+property determines the number of entries on Event Queues for the device.
+The number of entries is calculated as
+.Dv (1 << eq_size_shift) ,
+so a value of 9 would mean 512 entries are created on each Event Queue.
+The default value is
+.Sy 9 .
+.Ed
+.It Sy cq_size_shift
+.Bd -filled -compact
+Minimum:
+.Sy 2 |
+Maximum:
+.Sy device dependent (up to 255)
+.Ed
+.Bd -filled
+The
+.Sy cq_size_shift
+property determines the number of entries on Completion Queues for the device.
+The number of entries is calculated as
+.Li (1 << cq_size_shift) ,
+so a value of 9 would mean 512 entries are created on each Event Queue.
+The default value is device dependent,
+.Sy 10
+for devices with maximum supported speed of 10Gb/s or less and
+.Sy 12
+for devices with higher supported speeds.
+This should be kept very close to the value set for
+.Sy rq_size_shift
+and
+.Sy sq_size_shift .
+.Ed
+.It Sy rq_size_shift
+.Bd -filled -compact
+Minimum:
+.Sy 2 |
+Maximum:
+.Sy device dependent (up to 255)
+.Ed
+.Bd -filled
+The
+.Sy rq_size_shift
+property determines the number of descriptors on Receive Queues for the device.
+The number of descriptors is calculated as
+.Dv (1 << rq_size_shift) ,
+so a value of 9 would mean 512 descriptors are created on each Receive Queue.
+This sets the number of packets on RX rings advertised to MAC.
+The default value is device dependent,
+.Sy 10
+for devices with maximum supported speed of 10Gb/s or less and
+.Sy 12
+for devices with higher supported speeds.
+.Ed
+.It Sy sq_size_shift
+.Bd -filled -compact
+Minimum:
+.Sy 2 |
+Maximum:
+.Sy device dependent (up to 255)
+.Ed
+.Bd -filled
+The
+.Sy sq_size_shift
+property determines the number of descriptors on Send Queues for the device.
+The number of descriptors is calculated as
+.Dv (1 << sq_size_shift) ,
+so a value of 9 would mean 512 descriptors are created on each Send Queue.
+This sets the number of packets on RX rings advertised to MAC.
+The default value is device dependent,
+.Sy 11
+for devices with maximum supported speed of 10Gb/s or less and
+.Sy 13
+for devices with higher supported speeds.
+Note that large packets often occupy more than one descriptor slot on the SQ,
+so it is sometimes a good idea to increase this if using a large MTU.
+.Ed
+.It Sy tx_ngroups
+.Bd -filled -compact
+Minimum:
+.Sy 1 |
+Maximum:
+.Sy device dependent
+.Ed
+.Bd -filled
+The
+.Sy tx_ngroups
+property determines the number of TX groups advertised to MAC.
+The default value is
+.Sy 1 .
+.Ed
+.It Sy tx_nrings_per_group
+.Bd -filled -compact
+Minimum:
+.Sy 1 |
+Maximum:
+.Sy device dependent
+.Ed
+.Bd -filled
+The
+.Sy tx_nrings_per_group
+property determines the number of rings in each TX group advertised to MAC.
+The default value is
+.Sy 64 .
+.Ed
+.It Sy rx_ngroups_large
+.Bd -filled -compact
+Minimum:
+.Sy 1 |
+Maximum:
+.Sy device dependent
+.Ed
+.Bd -filled
+The
+.Sy rx_ngroups_large
+property determines the number of "large" RX groups advertised to MAC.
+The size of "large" RX groups is set by the
+.Sy rx_nrings_per_large_group
+property.
+The default value is
+.Sy 2 .
+.Ed
+.It Sy rx_nrings_per_large_group
+.Bd -filled -compact
+Minimum:
+.Sy 1 |
+Maximum:
+.Sy device dependent
+.Ed
+.Bd -filled
+The
+.Sy rx_nrings_per_large_group
+property determines the number of rings in each "large" RX group advertised to
+MAC.
+The number of such groups is determined by the
+.Sy rx_ngroups_large
+property.
+The default value is
+.Sy 16 .
+.Ed
+.It Sy rx_ngroups_small
+.Bd -filled -compact
+Minimum:
+.Sy 1 |
+Maximum:
+.Sy device dependent
+.Ed
+.Bd -filled
+The
+.Sy rx_ngroups_small
+property determines the number of "small" RX groups advertised to MAC.
+The size of "small" RX groups is set by the
+.Sy rx_nrings_per_small_group
+property.
+It is recommended to use many small groups when using a large number of
+VNICs on top of the NIC (e.g. on a system with many zones).
+The default value is
+.Sy 256 .
+.Ed
+.It Sy rx_nrings_per_small_group
+.Bd -filled -compact
+Minimum:
+.Sy 1 |
+Maximum:
+.Sy device dependent
+.Ed
+.Bd -filled
+The
+.Sy rx_nrings_per_small_group
+property determines the number of rings in each "small" RX group advertised to
+MAC.
+The number of such groups is determined by the
+.Sy rx_ngroups_small
+property.
+The default value is
+.Sy 4 .
+.Ed
+.It Sy ftbl_root_size_shift
+.Bd -filled -compact
+Minimum:
+.Sy 4 |
+Maximum:
+.Sy device dependent
+.Ed
+.Bd -filled
+The
+.Sy ftbl_root_size_shift
+property determines the number of flow table entries on the root flow table,
+and therefore how many MAC addresses can be filtered into groups across the
+entire NIC.
+The number of flow entries is calculated as
+.Dv (1 << ftbl_root_size_shift) ,
+so a value of 9 would mean 512 entries are created in the root flow table.
+The default value is
+.Sy 12 .
+.Ed
+.It Sy cqemod_period_usec
+.Bd -filled -compact
+Minimum:
+.Sy 1 |
+Maximum:
+.Sy 65535
+.Ed
+.Bd -filled
+The
+.Sy cqemod_period_usec
+property determines the maximum delay after a completion event has occurred
+before an event queue entry (and thus an interrupt) is generated.
+The delay is measured in microseconds.
+The default value is
+.Sy 50 .
+.Ed
+.It Sy cqemod_count
+.Bd -filled -compact
+Minimum:
+.Sy 1 |
+Maximum:
+.Sy 65535
+.Ed
+.Bd -filled
+The
+.Sy cqemod_count
+property determines the maximum number of completion events that can have
+occurred before an event queue entry (and thus an interrupt) is generated.
+The default value is
+.Sy 80% of the CQ size .
+.Ed
+.It Sy intrmod_period_usec
+.Bd -filled -compact
+Minimum:
+.Sy 1 |
+Maximum:
+.Sy 65535
+.Ed
+.Bd -filled
+The
+.Sy intrmod_period_usec
+property determines the maximum delay after an event queue entry has been
+generated before an interrupt is raised.
+The delay is measured in microseconds.
+The default value is
+.Sy 10 .
+.Ed
+.It Sy tx_bind_threshold
+.Bd -filled -compact
+Minimum:
+.Sy 1 |
+Maximum:
+.Sy 65535
+.Ed
+.Bd -filled
+The
+.Sy tx_bind_threshold
+property determines the minimum number of bytes in a packet before the driver
+uses
+.Xr ddi_dma_addr_bind_handle 9F
+to bind the packet memory for DMA, rather than copying the memory as it does
+for small packets.
+DMA binds are expensive and involve taking locks in the PCI nexus driver, so it
+is seldom worth using them for small packets.
+The default value is
+.Sy 2048 .
+.Ed
+.It Sy rx_limit_per_completion
+.Bd -filled -compact
+Minimum:
+.Sy 16 |
+Maximum:
+.Sy 4096
+.Ed
+.Bd -filled
+The
+.Sy rx_limit_per_completion
+property determines the maximum number of packets that
+will be processed on a given completion ring during a single interrupt.
+This is done to try and guarantee some amount of liveness in the system.
+The default value is
+.Sy 256 .
+.Ed
+.El
+.Sh FILES
+.Bl -tag -width Pa
+.It Pa /kernel/drv/amd64/mlxcx
+Device driver (x86)
+.It Pa /kernel/drv/mlxcx.conf
+Driver configuration file containing user-configurable options
+.El
+.Sh SEE ALSO
+.Xr dlpi 4P ,
+.Xr driver.conf 5 ,
+.Xr dladm 8 ,
+.Xr snoop 8
diff --git a/usr/src/man/man4d/mpt_sas.4d b/usr/src/man/man4d/mpt_sas.4d
new file mode 100644
index 0000000000..cc984022a6
--- /dev/null
+++ b/usr/src/man/man4d/mpt_sas.4d
@@ -0,0 +1,132 @@
+'\" te
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright (c) 2017, Joyent, Inc.
+.\" Copyright 2014, Nexenta Systems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add
+.\" the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH MPT_SAS 4D "Dec 15, 2017"
+.SH NAME
+mpt_sas \- SAS-2/3 host bus adapter driver
+.SH SYNOPSIS
+.in +2
+.nf
+scsi@unit-address
+.fi
+.in -2
+
+.SH DESCRIPTION
+.LP
+The \fBmpt_sas\fR host bus adapter driver is a nexus driver that supports
+Broadcom (formerly LSI and Avago) SAS chipsets including the SAS200x/2x08/2x16
+and SAS300x/3x08/3x16/3x24 series of chips. These chips support SAS/SATA
+interfaces, including tagged and untagged queuing, SATA 3G/SAS 3G/SAS 6G/SAS
+12G.
+.SS "Configuration"
+.LP
+The \fBmpt_sas\fR driver is configured by defining properties in
+\fBmpt_sas.conf\fR. These properties override the global SCSI settings. The
+\fBmpt_sas\fR driver supports one modifiable property:
+.sp
+.ne 2
+.na
+\fB\fBmpxio-disable\fR\fR
+.ad
+.sp .6
+.RS 4n
+Solaris I/O multipathing is enabled or disabled on SAS devices with the
+\fBmpxio-disable\fR property. Specifying \fBmpxio-disable="no"\fR activates I/O
+multipathing, while \fBmpxio-disable="yes"\fR disables I/O multipathing.
+.sp
+Solaris I/O multipathing can be enabled or disabled on a per port basis. Per
+port settings override the global setting for the specified ports.
+.sp
+The following example shows how to disable multipathing on port 0 whose parent
+is \fB/pci@0,0/pci8086,2940@1c/pci1000,72@0\fR:
+.sp
+.in +2
+.nf
+name="mpt_sas" parent="/pci@0,0/pci8086,2940@1c/pci1000,72@0"
+mpxio-disable="yes";
+.fi
+.in -2
+
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRUsing the \fBmpt_sas\fR Configuration File to Disable MPXIO
+.sp
+.LP
+Create a file called \fB/kernel/drv/mpt_sas.conf\fR and add the following line:
+
+.sp
+.in +2
+.nf
+name="mpt_sas" parent="/pci@0,0/pci8086,2940@1c/pci1000,72@0"
+mpxio-disable="yes";
+.fi
+.in -2
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/kernel/drv/mpt_sas\fR\fR
+.ad
+.sp .6
+.RS 4n
+32-bit ELF kernel module
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/sparcv9/mpt_sas\fR\fR
+.ad
+.sp .6
+.RS 4n
+64-bit SPARC ELF kernel module
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/mpt_sas\fR\fR
+.ad
+.sp .6
+.RS 4n
+64-bit x86 ELF kernel module
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/mpt_sas.conf\fR\fR
+.ad
+.sp .6
+.RS 4n
+Optional configuration file
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for a description of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+l | l
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture SPARC, x86
+.TE
+
+.SH SEE ALSO
+.LP
+\fBprtconf\fR(8), \fBdriver.conf\fR(5), \fBpci\fR(5), \fBattributes\fR(7),
+\fBscsi_abort\fR(9F), \fBscsi_device\fR(9S), \fBscsi_extended_sense\fR(9S),
+\fBscsi_inquiry\fR(9S), \fBscsi_hba_attach_setup\fR(9F),
+\fBscsi_ifgetcap\fR(9F), \fBscsi_ifsetcap\fR(9F), \fBscsi_pkt\fR(9S),
+\fBscsi_reset\fR(9F), \fBscsi_sync_pkt\fR(9F), \fBscsi_transport\fR(9F),
diff --git a/usr/src/man/man4d/mr_sas.4d b/usr/src/man/man4d/mr_sas.4d
new file mode 100644
index 0000000000..cd5c0384e0
--- /dev/null
+++ b/usr/src/man/man4d/mr_sas.4d
@@ -0,0 +1,181 @@
+'\" te
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH MR_SAS 4D "May 28, 2009"
+.SH NAME
+mr_sas \- LSI MegaRAID SAS2.0 Controller HBA driver
+.SH DESCRIPTION
+.sp
+.LP
+The \fBmr_sas\fR MegaRAID SAS2.0 controller host bus adapter driver is a
+SCSA-compliant nexus driver that supports the LSI MegaRAID SAS 92\fIxx\fR
+series of controllers and the Sun StorageTek 6Gb/s SAS RAID HBA series of
+controllers.
+.sp
+.LP
+Some of the RAID Features include the following:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+RAID levels 0, 1, 5, and 6
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+RAID spans 10, 50, and 60
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Online Capacity Expansion (OCE)
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Online RAID Level Migration (RLM)
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Auto resume after loss of system power during arrays array rebuild or
+reconstruction (RLM)
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Configurable stripe size up to 1MB
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Check Consistency for background data integrity
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Patrol read for media scanning and repairing
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+64 logical drive support
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Up to 64TB LUN support
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Automatic rebuild
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Global and dedicated Hot Spare support
+.RE
+.SS "Configuration"
+.sp
+.LP
+The \fBmr_sas.conf\fR file contains one user configurable parameter, for MSI or
+MSI-X support. Configure your hardware through the related BIOS utility or the
+MegaCli Configuration Utility. If you want to install to a drive attached to a
+\fBmr_sas\fR HBA, create the virtual drive first from the BIOS (X86) before
+running Solaris install. The \fBMegaCli\fR utility can be downloaded from the
+LSI website.
+.sp
+.LP
+The LSI MegaRAID SAS device can support up to 64 virtual SAS2.0, SAS1.0,
+SATA3.0, or SATA 6.0 disks. The BIOS numbers the virtual disks as 1 through 64,
+however in Solaris these drives are numbered from 0 to 63. Also keep in mind
+that SAS and SATA drives can not be configured into the same virtual disk.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/mr_sas\fR\fR
+.ad
+.RS 30n
+32-bit x86 ELF kernel module
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/mr_sas\fR\fR
+.ad
+.RS 30n
+64-bit kernel module x86 ELF kernel module
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/sparcv9/mr_sas\fR\fR
+.ad
+.RS 30n
+64-bit SPARC ELF kernel module
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/mr_sas.conf\fR\fR
+.ad
+.RS 30n
+Driver configuration file containing one user-configurable option
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for a description of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+l | l
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture SPARC, x86
+_
+Interface Stability Uncommitted
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR sata (4D),
+.BR attributes (7),
+.BR prtconf (8),
+.BR scsi_hba_attach_setup (9F),
+.BR scsi_sync_pkt (9F),
+.BR scsi_transport (9F),
+.BR scsi_device (9S),
+.BR scsi_inquiry (9S),
+.BR scsi_pkt (9S)
+.sp
+.LP
+\fISmall Computer System Interface-2 (SCSI-2)\fR
+.SH NOTES
+.sp
+.LP
+The \fBmr_sas\fR driver only supports internal and external expanders that are
+not fully SAS1.0 or fully SAS2.0 compliant.
diff --git a/usr/src/man/man4d/msglog.4d b/usr/src/man/man4d/msglog.4d
new file mode 100644
index 0000000000..1d5af59349
--- /dev/null
+++ b/usr/src/man/man4d/msglog.4d
@@ -0,0 +1,55 @@
+'\" te
+.\" Copyright (c) 1998, Sun Microsystems, Inc.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH MSGLOG 4D "Oct 13, 1998"
+.SH NAME
+msglog \- message output collection from system startup or background
+applications
+.SH SYNOPSIS
+.LP
+.nf
+\fB/dev/msglog\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+Output from system startup ("rc") scripts is directed to \fB/dev/msglog\fR,
+which dispatches it appropriately.
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Stable
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR syslog (3C),
+.BR sysmsg (4D),
+.BR attributes (7),
+.BR syslogd (8)
+.SH NOTES
+.sp
+.LP
+In the current version of Solaris, \fB/dev/msglog\fR is an alias for
+\fB/dev/sysmsg\fR. In future versions of Solaris, writes to \fB/dev/msglog\fR
+may be directed into a more general logging mechanism such as
+\fBsyslogd\fR(8).
+.sp
+.LP
+\fBsyslog\fR(3C) provides a more general logging mechanism than
+\fB/dev/msglog\fR and should be used in preference to \fB/dev/msglog\fR
+whenever possible.
diff --git a/usr/src/man/man4d/mt.4d b/usr/src/man/man4d/mt.4d
new file mode 100644
index 0000000000..2f06fea4c5
--- /dev/null
+++ b/usr/src/man/man4d/mt.4d
@@ -0,0 +1,32 @@
+'\" te
+.\" Copyright 1989 AT&T
+.\" Copyright (C) 1999, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH MT 4D "Jul 3, 1990"
+.SH NAME
+mt \- tape interface
+.SH DESCRIPTION
+.sp
+.LP
+The files \fBrmt/*\fR refer to tape controllers and associated tape drives.
+.sp
+.LP
+The \fBlabelit\fR(8) command requires these magnetic tape file names to work
+correctly with the tape controllers. No other tape controller commands require
+these file names.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/dev/rmt/*\fR\fR
+.ad
+.RS 14n
+
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR labelit (8)
diff --git a/usr/src/man/man4d/mxfe.4d b/usr/src/man/man4d/mxfe.4d
new file mode 100644
index 0000000000..ffa54686d7
--- /dev/null
+++ b/usr/src/man/man4d/mxfe.4d
@@ -0,0 +1,62 @@
+.\" Copyright 2014 Garrett D'Amore <garrett@damore.org>
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\" notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\" notice, this list of conditions and the following disclaimer in the
+.\" documentation and/or other materials provided with the distribution.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER AND CONTRIBUTORS
+.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+.\" LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+.\" FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+.\" COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
+.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
+.\" USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
+.\" ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE
+.\"
+.Dd "Aug 7, 2014"
+.Dt MXFE 4D
+.Os
+.Sh NAME
+.Nm mxfe
+.Nd Macronix Fast Ethernet device driver
+.Sh SYNOPSIS
+.Pa /dev/mxfe
+.Sh DESCRIPTION
+The
+.Nm
+driver provides support for the
+Macronix 98715 family (including the Lite-On PNIC-II) of Fast Ethernet
+PCI controllers.
+.Lp
+These devices generally support the standard Fast Ethernet features, including
+10BASE-T and 100BASE-TX, both full and half duplex operation, IEEE 802.3
+autonegotiation, etc.
+They also support full size MTUs (1500 bytes), even when used with VLANs.
+.
+.Lp
+The device driver supports the
+.Xr ieee802.3 7
+properties, which can be configured with
+.Xr dladm 8 .
+.Sh FILES
+.Bl -tag -width /dev/mxfe
+.It Pa /dev/mxfe
+Special character device.
+.El
+.Sh SEE ALSO
+.Xr dlpi 4P ,
+.Xr pci 5 ,
+.Xr ieee802.3 7 ,
+.Xr dladm 8 ,
+.Xr ifconfig 8
+.Rs
+.%T IEEE 802.3: Ethernet
+.%Q IEEE Standards Association
+.Re
diff --git a/usr/src/man/man4d/myri10ge.4d b/usr/src/man/man4d/myri10ge.4d
new file mode 100644
index 0000000000..f63931296f
--- /dev/null
+++ b/usr/src/man/man4d/myri10ge.4d
@@ -0,0 +1,192 @@
+'\" te
+.\" Copyright (c) 2007-2009 Myricom, Inc. All Rights Reserved. Use is subject to license terms.
+.\" Portions Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add
+.\" the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH MYRI10GE 4D "Sep 10, 2009"
+.SH NAME
+myri10ge \- Myricom Myri10GE 10Gb PCI Express NIC Driver
+.SH SYNOPSIS
+.LP
+.nf
+/dev/myri10ge*
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBmyri10ge\fR Gigabit Ethernet driver is a multi-threaded, loadable,
+clonable, GLD-based STREAMS driver that supports the Data Link Provider
+Interface, \fBdlpi\fR(4P), on Myricom Myri10GE 10-Gigabit Ethernet controllers.
+.sp
+.LP
+The \fBmyri10ge\fR driver functions include controller initialization, frame
+transmit and receive, promiscuous and multicast support, multiple transmit and
+receive queues, support for TCP Large Send Offload, support for TCP Large
+Receive Offload, and error recovery and reporting.
+.SS "Application Programming Interface"
+.sp
+.LP
+The cloning character-special device, \fB/dev/myri10ge\fR, is used to access
+all Myricom Myri10GE 10 -Gigabit Ethernet dev ices installed within the system.
+.sp
+.LP
+The \fBmyri10ge\fR driver is managed by the \fBdladm\fR(8) command line
+utility. dladm allows VLANs to be defined on top of \fBmyri10ge\fR instances
+and for \fBmyri10ge\fR instances to be aggregated. See \fBdladm\fR(8) for more
+details.
+.sp
+.LP
+You must send an explicit \fBDL_ATTACH_REQ\fR message to associate the opened
+stream with a particular device (\fBPPA\fR). The \fBPPA\fR ID is interpreted as
+an unsigned integer data type and indicates the corresponding device instance
+(unit) number. The driver returns an error (\fBDL_ERROR_ACK\fR) if the
+\fBPPA\fR field value does not correspond to a valid device instance number for
+the system. The device is initialized on first attach and de-initialized
+(stopped) at last detach.
+.sp
+.LP
+The values returned by the driver in the \fBDL_INFO_ACK\fR primitive in
+response to your \fBDL_INFO_REQ\fR are:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Maximum \fBSDU\fR is \fB9000\fR.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Minimum \fBSDU\fR is \fB0\fR.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBDLSAP\fR address length is \fB8\fR.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBMAC\fR type is \fBDL_ETHER\fR.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBSAP\fR (Service Access Point) length value is \fB-2\fR, meaning the physical
+address component is followed immediately by a 2-byte \fBSAP\fR component
+within the \fBDLSAP\fR address.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Broadcast address value is the Ethernet/IEEE broad- cast address
+(\fBFF:FF:FF:FF:FF:FF\fR).
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Once in the \fBDL_ATTACHED\fR state, you must send a \fBDL_BIND_REQ\fR to
+associate a particular SAP with the stream.
+.RE
+.SS "Configuration"
+.sp
+.LP
+Link speed and mode can only be 10000 Mbps full-duplex. See the \fIIEEE 802.3
+Standard\fR for more information.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/dev/myri10ge*\fR\fR
+.ad
+.sp .6
+.RS 4n
+Special character device.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/myri10ge\fR\fR
+.ad
+.sp .6
+.RS 4n
+32-bit device driver (x86)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/myri10ge\fR\fR
+.ad
+.sp .6
+.RS 4n
+64-bit device driver (x86)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/sparcv9/myri10ge\fR\fR
+.ad
+.sp .6
+.RS 4n
+64-bit device driver (SPARC)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/myri10ge.conf\fR\fR
+.ad
+.sp .6
+.RS 4n
+Configuration file
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for a description of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture SPARC, x86
+_
+Interface Stability Committed
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR streamio (4I),
+.BR dlpi (4P),
+.BR driver.conf (5),
+.BR attributes (7),
+.BR dladm (8),
+.BR netstat (8)
+.sp
+.LP
+\fIWriting Device Drivers\fR
+.sp
+.LP
+\fINetwork Interface Guide\fR
+.sp
+.LP
+\fISTREAMS Programming Guide\fR
+.sp
+.LP
+\fIIEEE 802.3 Standard\fR
diff --git a/usr/src/man/man4d/n2rng.4d b/usr/src/man/man4d/n2rng.4d
new file mode 100644
index 0000000000..b7841c4ab2
--- /dev/null
+++ b/usr/src/man/man4d/n2rng.4d
@@ -0,0 +1,173 @@
+'\" te
+.\" Copyright (c) 2009 Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright (c) 2020 Peter Tribble.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
+.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH N2RNG 4D "Jan 12, 2020"
+.SH NAME
+n2rng \- Ultra-SPARC T2 random number generator device driver
+.SH DESCRIPTION
+The \fBn2rng\fR device driver is a multi-threaded, loadable hardware driver
+supporting hardware assisted random numbers.
+This support is built into the Ultra-SPARC T2 and later processors.
+.sp
+.LP
+The \fBn2rng\fR driver requires the presence of the Solaris Cryptographic
+Framework to enable applications and kernel clients to access the provided
+services.
+.SH CONFIGURATION
+You configure the \fBn2rng\fR driver by defining properties in
+\fB/platform/sun4v/kernel/drv/n2rng.conf\fR which override the default settings.
+The following property is supported:
+.sp
+.ne 2
+.na
+\fBnostats\fR
+.ad
+.RS 28n
+Disables the generation of statistics.
+The nostats property may be used to help prevent traffic analysis, however,
+this may inhibit support personnel.
+.RE
+
+.SH CRYPTO STATISTICS
+Solaris crypto drivers must implement statistics variables.
+Statistics reported by \fBn2rng\fR may be read using the \fBkstat\fR(8)
+utility.
+The \fBn2rng\fR driver maintains the following statistics:
+.sp
+.ne 2
+.na
+\fBstatus\fR
+.ad
+.RS 28n
+Status (online, offline, fail) of RNG device.
+.RE
+
+.sp
+.ne 2
+.na
+\fBrngjobs\fR
+.ad
+.RS 28n
+Number of requests for random data.
+.RE
+
+.sp
+.ne 2
+.na
+\fBrngbytes\fR
+.ad
+.RS 28n
+Number of bytes read from the RNG device.
+.RE
+
+.SH KERNEL STATISTICS
+The \fBn2rng\fR driver tallies a set of kernel driver statistics when in the
+Control domain.
+Statistics reported by \fBn2rng\fR may be read using the \fBkstat\fR(8)
+utility.
+.sp
+.ne 2
+.na
+\fBrng(n)-cell0-bias\fR
+.ad
+.RS 28n
+Bias setting for noise cell 0 of RNG \fIn\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBrng(n)-cell0-entropy\fR
+.ad
+.RS 28n
+Entropy value for noise cell 0 of RNG \fIn\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBrng(n)-cell1-bias\fR
+.ad
+.RS 28n
+Bias setting for noise cell 1 of RNG \fIn\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBrng(n)-cell1-entropy\fR
+.ad
+.RS 28n
+Entropy value for noise cell 1 of RNG \fIn\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBrng(n)-cell2-bias\fR
+.ad
+.RS 28n
+Bias setting for noise cell 2 of RNG \fIn\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBrng(n)-cell2-entropy\fR
+.ad
+.RS 28n
+Entropy value for noise cell 2 of RNG \fIn\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBrng(n)-state\fR
+.ad
+.RS 28n
+State of rng number n (online, offline, error, health check).
+.RE
+
+.SH FILES
+.ne 2
+.na
+\fB/platform/sun4v/kernel/drv/sparcv9/n2rng\fR
+.ad
+.sp .6
+.RS 4n
+Device driver (SPARC)
+.RE
+
+.sp
+.ne 2
+.na
+\fB/platform/sun4v/kernel/drv/n2rng.conf\fR
+.ad
+.sp .6
+.RS 4n
+Driver configuration file
+.RE
+
+.SH ATTRIBUTES
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture SPARC
+_
+Interface stability Committed
+.TE
+
+.SH SEE ALSO
+.BR attributes (7),
+.BR cryptoadm (8),
+.BR kstat (8)
diff --git a/usr/src/man/man4d/npe.4d b/usr/src/man/man4d/npe.4d
new file mode 100644
index 0000000000..ca9ad44da2
--- /dev/null
+++ b/usr/src/man/man4d/npe.4d
@@ -0,0 +1,74 @@
+'\" te
+.\" Copyright (c) 2005, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH NPE 4D "Oct 12, 2005"
+.SH NAME
+npe \- PCI Express bus nexus driver
+.SH DESCRIPTION
+.sp
+.LP
+The \fBnpe\fR nexus driver is used on X64 servers for PCI Express Root Complex
+devices that provide PCI Express interconnect. This driver is compliant to PCI
+Express base specification, Revision 1.0a.
+.sp
+.LP
+This nexus driver provides support for the following features: Access to
+extended configuration space, IEEE 1275 extensions for PCI Express, Base line
+PCI Express error handling and PCI Express MSI interrupts.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB/platform/i86pc/kernel/drv/npe\fR
+.ad
+.sp .6
+.RS 4n
+32-bit ELF kernel module.
+.RE
+
+.sp
+.ne 2
+.na
+\fB/platform/i86pc/kernel/drv/amd64/npe\fR
+.ad
+.sp .6
+.RS 4n
+64-bit ELF kernel module.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture x64 PCI Express-based systems
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR pcie_pci (4D),
+.BR pcie (5),
+.BR attributes (7)
+.sp
+.LP
+\fIPCI Express Base Specification v1.0a\fR \(em 2003
+.sp
+.LP
+\fIWriting Device Drivers\fR
+.sp
+.LP
+\fIIEEE 1275 PCI Bus Binding\fR \(em 1998
+.sp
+.LP
+\fIhttp://playground.sun.com/1275/bindings/pci/pci-express.txt\fR
diff --git a/usr/src/man/man4d/ntwdt.4d b/usr/src/man/man4d/ntwdt.4d
new file mode 100644
index 0000000000..00de2f0f83
--- /dev/null
+++ b/usr/src/man/man4d/ntwdt.4d
@@ -0,0 +1,100 @@
+'\" te
+.\" Copyright (c) 2005, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH NTWDT 4D "Jan 10, 2020"
+.SH NAME
+ntwdt \- Netra\(embased application watchdog timer driver
+.SH SYNOPSIS
+.nf
+/dev/ntwdt
+.fi
+
+.SH DESCRIPTION
+The \fBntwdt\fR driver is a multithreaded, loadable, non-STREAMS pseudo driver
+that provides an application with an interface for controlling a system
+watchdog timer.
+.sp
+.LP
+The \fBntwdt\fR driver implements a \fBvirtual watchdog timer\fR that a
+privileged application (Effective UID == 0) controls via IOCTLs.
+.SH CONFIGURATION
+You configure the \fBntwdt\fR driver by modifying the contents of the
+\fBntwdt.conf\fR file.
+.SH ERRORS
+An \fBopen()\fR fails if:
+.sp
+.ne 2
+.na
+\fBEPERM\fR
+.ad
+.RS 10n
+Effective user ID is not zero.
+.RE
+
+.sp
+.ne 2
+.na
+\fBENOENT\fR
+.ad
+.RS 10n
+\fB/dev/ntwdt\fR is not present or driver is not installed.
+.RE
+
+.sp
+.ne 2
+.na
+\fBEAGAIN\fR
+.ad
+.RS 10n
+\fB/dev/ntwdt\fR has already been successfully open()'d.
+.RE
+
+.SH FILES
+.ne 2
+.na
+\fB/dev/ntwdt\fR
+.ad
+.RS 28n
+Special character device.
+.RE
+
+.sp
+.ne 2
+.na
+\fB/kernel/drv/sparcv9/ntwdt\fR
+.ad
+.RS 28n
+Device driver (SPARC)
+.RE
+
+.sp
+.ne 2
+.na
+\fB/kernel/drv/ntwdt.conf\fR
+.ad
+.RS 28n
+Driver configuration file
+.RE
+
+.SH ATTRIBUTES
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture SPARC
+.TE
+
+.SH SEE ALSO
+.BR driver.conf (5),
+.BR attributes (7)
+.sp
+.LP
+\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man4d/ntxn.4d b/usr/src/man/man4d/ntxn.4d
new file mode 100644
index 0000000000..53ce8d0667
--- /dev/null
+++ b/usr/src/man/man4d/ntxn.4d
@@ -0,0 +1,158 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH NTXN 4D "Oct 13, 2008"
+.SH NAME
+ntxn \- NetXen 10/1 Gigabit Ethernet network driver
+.SH SYNOPSIS
+.LP
+.nf
+\fB/dev/ntxn*\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBntxn\fR 10/1 Gigabit Ethernet driver is a multi-threaded, loadable,
+clonable, GLD-based STREAMS driver supporting the Data Link Provider Interface,
+\fBdlpi\fR(4P), on NetXen 10/1 Gigabit Ethernet controllers.
+.sp
+.LP
+The \fBntxn\fR driver functions include chip initialization, frames transmit
+and receive, promiscuous and multicast support, TCP and UDP checksum off-load
+(IPv4) and 9600 bytes jumbo frame.
+.sp
+.LP
+The \fBntxn\fR driver and hardware support the 10GBASE CX4, 10GBASE-SR/W, LR/W,
+and 10/100/1000BASE-T physical layers.
+.SH APPLICATION PROGRAMMING INTERFACE
+.sp
+.LP
+The cloning character-special device, \fB/dev/ntxn\fR, is used to access all
+NetXen devices installed within the system.
+.sp
+.LP
+The \fBntxn\fR driver is managed by the \fBdladm\fR(8) command line utility,
+which allows VLANs to be defined on top of \fBntxn\fR instances and for
+\fBntxn\fR instances to be aggregated. See \fBdladm\fR(8) for more details.
+.sp
+.LP
+The values returned by the driver in the DL_INFO_ACK primitive in response to
+your DL_INFO_REQ are:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Maximum SDU is 9600.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Minimum SDU is 0.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+DLSAP address length is 8.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+MAC type is DL_ETHER.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+SAP (Service Access Point) length value is -2, meaning the physical address
+component is followed immediately by a 2-byte SAP component within the DLSAP
+address.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Broadcast address value is the Ethernet/IEEE broadcast address
+(FF:FF:FF:FF:FF:FF).
+.RE
+.SH CONFIGURATION
+.sp
+.LP
+By default, the \fBntxn\fR driver works without any configuration file.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/dev/ntxn*\fR\fR
+.ad
+.RS 26n
+Special character device.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/ntxn\fR\fR
+.ad
+.RS 26n
+32-bit device driver (x86).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/ntxn\fR\fR
+.ad
+.RS 26n
+64-bit device driver (x86).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/ntxn.conf\fR\fR
+.ad
+.RS 26n
+Configuration file.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+l l
+l l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+Architecture x86
+Interface Stability Committed
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR streamio (4I),
+.BR dlpi (4P),
+.BR driver.conf (5),
+.BR attributes (7),
+.BR dladm (8),
+.BR ndd (8),
+.BR netstat (8)
+.sp
+.LP
+\fIWriting Device Drivers\fR
+.sp
+.LP
+\fISTREAMS Programming Guide\fR
+.sp
+.LP
+\fINetwork Interfaces Programmer's Guide\fR
diff --git a/usr/src/man/man4d/null.4d b/usr/src/man/man4d/null.4d
new file mode 100644
index 0000000000..7f736f058a
--- /dev/null
+++ b/usr/src/man/man4d/null.4d
@@ -0,0 +1,45 @@
+'\" te
+.\" Copyright 1989 AT&T
+.\" Copyright (C) 2001, Sun Microsystems, Inc.
+.\" All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH NULL 4D "Apr 4, 2001"
+.SH NAME
+null \- the null file, also called the null device
+.SH SYNOPSIS
+.LP
+.nf
+\fB/dev/null\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+Data written on the null special file, \fB/dev/null\fR, is discarded.
+.sp
+.LP
+Reads from a null special file always return 0 bytes.
+.sp
+.LP
+Mapping a null special file creates an address reservation of a length equal to
+the length of the mapping, and rounded up to the nearest page size as returned
+by \fBsysconf\fR(3C). No resources are consumed by the reservation. Mappings
+can be placed in the resulting address range via subsequent calls to \fBmmap\fR
+with the \fB-MAP_FIXED\fR option set.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/dev/null\fR\fR
+.ad
+.RS 13n
+
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR mmap (2),
+.BR sysconf (3C)
diff --git a/usr/src/man/man4d/nulldriver.4d b/usr/src/man/man4d/nulldriver.4d
new file mode 100644
index 0000000000..7b0312150b
--- /dev/null
+++ b/usr/src/man/man4d/nulldriver.4d
@@ -0,0 +1,25 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH NULLDRIVER 4D "Nov 8, 2008"
+.SH NAME
+nulldriver \- Null driver
+.SH DESCRIPTION
+.sp
+.LP
+This driver succeeds \fBprobe\fR(9E), \fBattach\fR(9E) and \fBdetach\fR(9E) but
+provides no namespace or functionality.
+.sp
+.LP
+In some circumstances having device nodes bound to \fBnulldriver\fR is
+expected. For example, \fBprtconf\fR(8) might capture a nexus driver with a
+\fBnulldriver\fR bound child if the nexus is performing child discovery.
+.SH SEE ALSO
+.sp
+.LP
+.BR prtconf (8),
+.BR attach (9E),
+.BR detach (9E),
+.BR probe (9E)
diff --git a/usr/src/man/man4d/nv_sata.4d b/usr/src/man/man4d/nv_sata.4d
new file mode 100644
index 0000000000..9fe073d64b
--- /dev/null
+++ b/usr/src/man/man4d/nv_sata.4d
@@ -0,0 +1,74 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 2011 Nexenta Systems, Inc. All rights reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH NV_SATA 4D "Sep 25, 2011"
+.SH NAME
+nv_sata \- NVIDIA CK804/MCP04/MCP51/MCP55/MCP61 SATA controller driver
+.SH SYNOPSIS
+.LP
+.nf
+\fBsata@unit-address\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBnv_sata\fR driver is a SATA HBA driver that supports NVIDIA CK804/MCP04
+and MCP51/MCP55/MCP61 SATA HBA controllers. Note that while these controllers
+support standard SATA features including SATA-II drives, NCQ, hotplug and ATAPI
+drives, the driver currently does not support NCQ features.
+.SH CONFIGURATION
+.sp
+.LP
+The \fBnv_sata\fR module contains no user configurable parameters.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/nv_sata\fR\fR
+.ad
+.sp .6
+.RS 4n
+32-bit \fBELF\fR kernel module (x86).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/nv_sata\fR\fR
+.ad
+.sp .6
+.RS 4n
+64-bit \fBELF\fR kernel module (x86).
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attribute:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture x86
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR sata (4D),
+.BR sd (4D),
+.BR cfgadm (8),
+.BR cfgadm_sata (8),
+.BR prtconf (8)
+.sp
+.LP
+\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man4d/nvme.4d b/usr/src/man/man4d/nvme.4d
new file mode 100644
index 0000000000..877b7c4081
--- /dev/null
+++ b/usr/src/man/man4d/nvme.4d
@@ -0,0 +1,141 @@
+.\"
+.\" This file and its contents are supplied under the terms of the
+.\" Common Development and Distribution License ("CDDL"), version 1.0.
+.\" You may only use this file in accordance with the terms of version
+.\" 1.0 of the CDDL.
+.\"
+.\" A full copy of the text of the CDDL should have accompanied this
+.\" source. A copy of the CDDL is also available via the Internet at
+.\" http://www.illumos.org/license/CDDL.
+.\"
+.\"
+.\" Copyright 2016 Nexenta Systems, Inc. All rights reserved.
+.\" Copyright (c) 2018, Joyent, Inc.
+.\" Copyright 2019, Western Digital Corporation
+.\"
+.Dd January 22, 2022
+.Dt NVME 4D
+.Os
+.Sh NAME
+.Nm nvme
+.Nd Intel NVMe compliant storage driver
+.Sh DESCRIPTION
+The
+.Nm
+driver uses the
+.Xr blkdev 4D
+framework to provide access to
+NVMe compliant solid-state storage devices.
+All NVMe version 1.x devices are supported.
+.Lp
+NVMe devices supporting multiple namespaces will present each
+namespace as its own
+.Xr blkdev 4D
+instance in the system.
+.
+.Sh CONFIGURATION
+The
+.Nm
+driver can be configured by defining properties in the
+.Pa nvme.conf
+file.
+The parameters are considered an unstable interface, subject to
+change without notice.
+The following properties are currently supported:
+.Bl -tag -width Va
+.It Va strict-version
+This can be set to 0 to allow
+.Nm
+to attach to devices supporting newer version of the NVMe
+specification.
+The default value is 1, limiting
+.Nm
+to work with devices that support major version 1.
+.It Va ignore-unknown-vendor-status
+This can be set to 1 to allow
+.Nm
+to continue operating even if it receives an unknown vendor command
+status.
+.It Va admin-queue-len
+This is the number of entries in the admin command queue.
+Legal values are between 16 and 4096, the default value is 256.
+.It Va io-squeue-len
+This is the number of entries in each I/O submission queue.
+Legal values are between 16 and 65536, the default value is 1024.
+.It Va io-cqueue-len
+This is the number of entries in each I/O completion queue.
+Legal values are between 16 and 65536, the default value is 2048.
+When the number of submission and completion queues are the same,
+the queue lengths will be both set to the lesser of
+.Va io-squeue-len
+and
+.Va io-cqueue-len .
+.It Va async-event-limit
+This is the maximum number of asynchronous event requests issued by
+the driver.
+Asynchronous events are used to report error conditions.
+The driver will never use more asynchronous events than this value, or
+what the hardware supports if it is less, or 1/10th of the admin queue
+length if it is less.
+.It Va volatile-write-cache-enable
+This property can be set to 0 to disable the volatile write cache, if
+the hardware supports it.
+The default setting is 1, which enables the volatile write cache.
+.It Va min-phys-block-size
+This is the minimum physical block size that is reported to
+.Xr blkdev 4D .
+This value must be a power of 2 greater than or equal to 512.
+If the device reports a best block size larger than what is
+specified here the driver will ignore the value specified here.
+.It Va max-submission-queues
+This is the maximum number of submission queues the driver will create per
+device.
+Legal values are between 1 and 65535, the default is to
+match the number for
+.Em max-completion-queues .
+The number of queues created will not be allowed to exceed the
+drive's hardware limitation.
+If the number of submission queues is larger than
+.Em max-completion-queues
+the completion queues will be shared across the submission
+queues.
+.It Va max-completion-queues
+This is the maximum number of completion queues the driver will create per
+device.
+Legal values are between 1 and 65535, the default is to match
+the number of interrupt vectors allocated to the drive.
+The number of queues created will not exceed the number of interrupt vectors,
+.Em max-submission-queues ,
+or the drive's hardware limitation.
+.El
+.
+.Sh FILES
+.Bl -tag -compact -width Pa
+.It Pa /dev/dsk/cntnd0sn
+Block device minor nodes.
+.It Pa /dev/rdsk/cntnd0sn
+Raw block device minor nodes.
+.El
+.Lp
+In the device minor nodes, the following substitutions may occur:
+.Bl -tag -offset indent -width Va
+.It Va cn
+A controller number, typically one for each
+.Nm
+device found.
+Controller numbers are dynamically assigned by the system.
+.It Va tn
+The target number.
+This is the namespace EUI64 if available, or the namespace ID used by
+the hardware.
+Namespace ID 0 is reserved, hence target numbers start with 1.
+.It Va sn
+This is the
+.Em slice
+number, representing a subset of the disk.
+See
+.Xr dkio 4I .
+.El
+.
+.Sh SEE ALSO
+.Xr blkdev 4D
diff --git a/usr/src/man/man4d/nxge.4d b/usr/src/man/man4d/nxge.4d
new file mode 100644
index 0000000000..17b16835ca
--- /dev/null
+++ b/usr/src/man/man4d/nxge.4d
@@ -0,0 +1,243 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH NXGE 4D "Apr 12, 2008"
+.SH NAME
+nxge \- Sun 10/1 Gigabit Ethernet network driver
+.SH SYNOPSIS
+.LP
+.nf
+/dev/nxge*
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBnxge\fR Gigabit Ethernet driver is a multi-threaded, loadable, clonable,
+GLD-based STREAMS driver supporting the Data Link Provider Interface,
+\fBdlpi\fR(4P), on Sun Gigabit Ethernet hardware (NIU, Sun x8, Express Dual 10
+Gigabit Ethernet fiber XFP low profile adapter and the 10/100/1000BASE-T x8
+Express low profile adapter).
+.sp
+.LP
+The \fBnxge\fR driver functions include chip initialization, frame transmit and
+receive, flow classification, multicast and promiscuous support, and error
+recovery and reporting.
+.sp
+.LP
+The \fBnxge\fR device provides fully-compliant \fIIEEE 802.3ae\fR 10Gb/s full
+duplex operation using XFP-based 10GigE optics (NIU, dual 10 Gigabit fiber XFP
+adapter). The Sun Ethernet hardware supports the \fIIEEE 802.3x\fR frame-based
+flow control capabilities.
+.sp
+.LP
+For the 10/100/1000BASE-T adapter, the \fBnxge\fR driver and hardware support
+auto-negotiation, a protocol specified by the \fI1000 Base-T\fR standard.
+Auto-negotiation allows each device to advertise its capabilities and discover
+those of its peer (link partner). The highest common denominator supported by
+both link partners is automatically selected, yielding the greatest available
+throughput while requiring no manual configuration. The \fBnxge\fR driver also
+allows you to configure the advertised capabilities to less than the maximum
+(where the full speed of the interface is not required) or to force a specific
+mode of operation, irrespective of the link partner's advertised capabilities.
+.SH APPLICATION PROGRAMMING INTERFACE
+.sp
+.LP
+The cloning character-special device, \fB/dev/nxge\fR, is used to access all
+Sun Neptune NIU devices installed within the system.
+.sp
+.LP
+The \fBnxge\fR driver is managed by the \fBdladm\fR(8) command line utility,
+which allows VLANs to be defined on top of \fBnxge\fR instances and for
+\fBnxge\fR instances to be aggregated. See \fBdladm\fR(8) for more details.
+.sp
+.LP
+You must send an explicit DL_ATTACH_REQ message to associate the opened stream
+with a particular device (PPA). The PPA ID is interpreted as an unsigned
+integer data type and indicates the corresponding device instance (unit)
+number. The driver returns an error (DL_ERROR_ACK) if the PPA field value does
+not correspond to a valid device instance number for the system. The device is
+initialized on first attach and de-initialized (stopped) at last detach.
+.sp
+.LP
+The values returned by the driver in the DL_INFO_ACK primitive in response to a
+DL_INFO_REQ are:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Maximum SDU (default 1500).
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Minimum SDU (default 0). The driver pads to the mandatory 60-octet minimum
+packet size.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+DLSAP address length is 8.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+MAC type is \fBDL_ETHER\fR.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBSAP\fR length value is \fI-2\fR, meaning the physical address component is
+followed immediately by a 2-byte \fBSAP\fR component within the \fBDLSAP\fR
+address.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Broadcast address value is the Ethernet/IEEE broadcast address
+(FF:FF:FF:FF:FF:FF).
+.sp
+Due to the nature of link address definition for IPoIB, the
+DL_SET_PHYS_ADDR_REQ DLPI primitive is not supported.
+.sp
+In the transmit case for streams that have been put in raw mode via the
+DLIOCRAW ioctl, the dlpi application must prepend the 20 byte IPoIB destination
+address to the data it wants to transmit over-the-wire. In the receive case,
+applications receive the IP/ARP datagram along with the IETF defined 4 byte
+header.
+.RE
+.sp
+.LP
+Once in the DL_ATTACHED state, you must send a DL_BIND_REQ to associate a
+particular Service Access Point (SAP) with the stream.
+.SH CONFIGURATION
+.sp
+.LP
+For the \fI10/100/1000BASE-T\fR adapter, the \fBnxge\fR driver performs
+auto-negotiation to select the link speed and mode. Link speed and mode may be
+10000 Mbps full-duplex (10 Gigabit adapter), 1000 Mbps full-duplex, 100 Mbps
+full-duplex, or 10 Mbps full-duplex, depending on the hardware adapter type.
+See the \fI IEEE802.3\fR standard for more information.
+.sp
+.LP
+The auto-negotiation protocol automatically selects the 1000 Mbps, 100 Mbps, or
+10 Mbps operation modes (full-duplex only) as the highest common denominator
+supported by both link partners. Because the \fBnxge\fR device supports all
+modes, the effect is to select the highest throughput mode supported by the
+other device.
+.sp
+.LP
+You can also set the capabilities advertised by the \fBnxge\fR device using
+\fBdladm\fR(8). The driver supports a number of parameters whose names begin
+with \fBen_\fR (see below). Each of these parameters contains a boolean value
+that determines if the device advertises that mode of operation. The
+\fBadv_autoneg_cap\fR parameter controls whether auto-negotiation is
+performed. If \fBadv_autoneg_cap\fR is set to 0, the driver forces the mode
+of operation selected by the first non-zero parameter in priority order as
+shown below:
+.sp
+.in +2
+.nf
+ (highest priority/greatest throughput)
+ en_1000fdx_cap 1000Mbps full duplex
+ en_100fdx_cap 100Mbps full duplex
+ en_10fdx_cap 10Mbps full duplex
+ (lowest priority/least throughput)
+.fi
+.in -2
+
+.sp
+.LP
+All capabilities default to enabled. Note that changing any capability
+parameter causes the link to go down while the link partners renegotiate the
+link speed/duplex using the newly changed capabilities.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/dev/nxge*\fR\fR
+.ad
+.RS 28n
+Special character device.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/nxge\fR\fR
+.ad
+.RS 28n
+32-bit device driver (x86).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/sparcv9/nxge\fR\fR
+.ad
+.RS 28n
+64-bit device driver (SPARC).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/nxge\fR\fR
+.ad
+.RS 28n
+64-bit device driver (x86).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/nxge.conf\fR\fR
+.ad
+.RS 28n
+Configuration file.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture SPARC, x86
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR streamio (4I),
+.BR dlpi (4P),
+.BR driver.conf (5),
+.BR attributes (7),
+.BR dladm (8),
+.BR netstat (8)
+.sp
+.LP
+\fIWriting Device Drivers\fR
+.sp
+.LP
+\fISTREAMS Programming Guide\fR
+.sp
+.LP
+\fINetwork Interfaces Programmer's Guide\fR
+.sp
+.LP
+\fIIEEE 802.3ae Specification\fR \(em 2002
diff --git a/usr/src/man/man4d/ohci.4d b/usr/src/man/man4d/ohci.4d
new file mode 100644
index 0000000000..431292f519
--- /dev/null
+++ b/usr/src/man/man4d/ohci.4d
@@ -0,0 +1,157 @@
+'\" te
+.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH OHCI 4D "May 13, 2017"
+.SH NAME
+ohci \- OpenHCI host controller driver
+.SH SYNOPSIS
+.LP
+.nf
+\fBusb@unit-address\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBohci\fR driver is a USBA (Solaris USB Architecture) compliant nexus
+driver that supports the \fIOpen Host Controller Interface Specification
+1.1\fR, an industry standard developed by Compaq, Microsoft, and National
+Semiconductor.
+.sp
+.LP
+The \fBohci\fR driver supports bulk, interrupt, control and isochronous
+transfers.
+.SH FILES
+.ne 2
+.na
+\fB\fB/kernel/drv/ohci\fR\fR
+.ad
+.RS 28n
+32-bit x86 ELF kernel module
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/ohci\fR\fR
+.ad
+.RS 28n
+64-bit x86 ELF kernel module
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/sparcv9/ohci\fR\fR
+.ad
+.RS 28n
+64-bit SPARC ELF kernel module
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/ohci.conf\fR\fR
+.ad
+.RS 28n
+driver configuration file
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture SPARC, x86, PCI-based systems
+.TE
+
+.SH SEE ALSO
+.LP
+.BR ehci (4D),
+.BR hubd (4D),
+.BR uhci (4D),
+.BR usba (4D),
+.BR attributes (7)
+.sp
+.LP
+\fIWriting Device Drivers\fR
+.sp
+.LP
+\fIUniversal Serial Bus Specification 2.0\fR
+.sp
+.LP
+\fIOpen Host Controller Interface Specification for USB 1.0a\fR
+.sp
+.LP
+\fISystem Administration Guide: Basic Administration\fR
+.SH DIAGNOSTICS
+.LP
+All host controller errors are passed to the client drivers. Root hub errors
+are documented in \fBhubd\fR(4D).
+.sp
+.LP
+In addition to being logged, the following messages may appear on the system
+console. All messages are formatted in the following manner:
+.sp
+.in +2
+.nf
+WARNING: <device path> <ohci><instance number>>: Error message...
+.fi
+.in -2
+.sp
+
+.sp
+.ne 2
+.na
+\fBUnrecoverable USB Hardware Error.\fR
+.ad
+.sp .6
+.RS 4n
+There was an unrecoverable USB hardware error reported by the OHCI Controller.
+Please reboot the system. If this problem persists, contact your system vendor.
+.RE
+
+.sp
+.ne 2
+.na
+\fBNo SOF interrupts have been received. This OHCI USB controller is
+unusable.\fR
+.ad
+.sp .6
+.RS 4n
+The USB hardware is not generating Start Of Frame interrupts. Please reboot the
+system. If this problem persists, contact your system vendor.
+.RE
+
+.sp
+.LP
+The following messages may be entered into the system log. They are formatted
+in the following manner:
+.sp
+.in +2
+.nf
+<device path> <ohci<instance number>): Message...
+.fi
+.in -2
+.sp
+
+.sp
+.ne 2
+.na
+\fBFailed to program frame interval register.\fR
+.ad
+.sp .6
+.RS 4n
+For an unspecified reason, the frame interval register has been nulled out by
+the Uli M1575 chip. Please reboot the system. If this problem persists, contact
+your system vendor.
+.RE
+
diff --git a/usr/src/man/man4d/openprom.4d b/usr/src/man/man4d/openprom.4d
new file mode 100644
index 0000000000..6a1f51b5c4
--- /dev/null
+++ b/usr/src/man/man4d/openprom.4d
@@ -0,0 +1,412 @@
+'\" te
+.\" Copyright (c) 1997, Sun Microsystems, Inc.
+.\" All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH OPENPROM 4D "Jan 13, 1997"
+.SH NAME
+openprom \- PROM monitor configuration interface
+.SH SYNOPSIS
+.LP
+.nf
+#include <sys/fcntl.h>
+.fi
+
+.LP
+.nf
+#include <sys/types.h>
+.fi
+
+.LP
+.nf
+#include <sys/openpromio.h>
+.fi
+
+.LP
+.nf
+open("/dev/openprom", \fImode\fR);
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The internal encoding of the configuration information stored in \fBEEPROM\fR
+or \fBNVRAM\fR varies from model to model, and on some systems the encoding is
+"hidden" by the firmware. The \fBopenprom\fR driver provides a consistent
+interface that allows a user or program to inspect and modify that
+configuration, using \fBioctl\fR(2) requests. These requests are defined in
+\fB<sys/openpromio.h>\fR:
+.sp
+.in +2
+.nf
+struct openpromio {
+ uint_t oprom_size; /* real size of following data */
+ union {
+ char b[1]; /* NB: Adjacent, Null terminated */
+ int i;
+ } opio_u;
+};
+#define oprom_array opio_u.b /* property name/value array */
+#define oprom_node opio_u.i /* nodeid from navigation config-ops */
+#define oprom_len opio_u.i /* property len from OPROMGETPROPLEN */
+#define OPROMMAXPARAM 32768 /* max size of array (advisory) */
+.fi
+.in -2
+
+.sp
+.LP
+For all \fBioctl\fR(2) requests, the third parameter is a pointer to a
+\fBstruct openpromio\fR. All property names and values are null-terminated
+strings; the value of a numeric option is its \fBASCII\fR representation.
+.sp
+.LP
+For the raw \fBioctl\fR(2) operations shown below that explicitly or implicitly
+specify a nodeid, an error may be returned. This is due to the removal of the
+node from the firmware device tree by a Dynamic Reconfiguration operation.
+Programs should decide if the appropriate response is to restart the scanning
+operation from the beginning or terminate, informing the user that the tree has
+changed.
+.SH IOCTLS
+.sp
+.ne 2
+.na
+\fB\fBOPROMGETOPT\fR\fR
+.ad
+.RS 19n
+This ioctl takes the null-terminated name of a property in the
+\fIoprom_array\fR and returns its null-terminated value (overlaying its name).
+\fIoprom_size\fR should be set to the size of \fIoprom_array\fR; on return it
+will contain the size of the returned value. If the named property does not
+exist, or if there is not enough space to hold its value, then \fIoprom_size\fR
+will be set to zero. See \fBBUGS\fR below.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBOPROMSETOPT\fR\fR
+.ad
+.RS 19n
+This ioctl takes two adjacent strings in \fIoprom_array\fR; the null-terminated
+property name followed by the null-terminated value.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBOPROMSETOPT2\fR\fR
+.ad
+.RS 19n
+This ioctl is similar to \fBOPROMSETOPT,\fR except that it uses the difference
+between the actual user array size and the length of the property name plus its
+null terminator.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBOPROMNXTOPT\fR\fR
+.ad
+.RS 19n
+This ioctl is used to retrieve properties sequentially. The null-terminated
+name of a property is placed into \fIoprom_array\fR and on return it is
+replaced with the null-terminated name of the next property in the sequence,
+with \fIoprom_size\fR set to its length. A null string on input means return
+the name of the first property; an \fIoprom_size\fR of zero on output means
+there are no more properties.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBOPROMNXT\fR\fR
+.ad
+.br
+.na
+\fB\fBOPROMCHILD\fR\fR
+.ad
+.br
+.na
+\fB\fBOPROMGETPROP\fR\fR
+.ad
+.br
+.na
+\fB\fBOPROMNXTPROP\fR\fR
+.ad
+.RS 19n
+These ioctls provide an interface to the raw \fIconfig_ops\fR operations in the
+\fBPROM\fR monitor. One can use them to traverse the system device tree; see
+\fBprtconf\fR(8).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBOPROMGETPROPLEN\fR\fR
+.ad
+.RS 19n
+This ioctl provides an interface to the \fIproperty length\fR raw config op. It
+takes the name of a property in the buffer, and returns an integer in the
+buffer. It returns the integer \fB-1\fR if the property does not exist; \fB0\fR
+if the property exists, but has no value (a boolean property); or a positive
+integer which is the length of the property as reported by the \fBPROM\fR
+monitor. See \fBBUGS\fR below.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBOPROMGETVERSION\fR\fR
+.ad
+.RS 19n
+This ioctl returns an arbitrary and platform-dependent NULL-terminated string
+in \fIoprom_array\fR, representing the underlying version of the firmware.
+.RE
+
+.SH ERRORS
+.sp
+.ne 2
+.na
+\fB\fBEAGAIN\fR\fR
+.ad
+.RS 10n
+There are too many opens of the \fB/dev/openprom\fR device.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEFAULT\fR\fR
+.ad
+.RS 10n
+A bad address has been passed to an \fBioctl\fR(2) routine.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEINVAL\fR\fR
+.ad
+.RS 10n
+The size value was invalid, or (for \fBOPROMSETOPT\fR) the property does
+not exist, or an invalid ioctl is being issued, or the ioctl is not supported
+by the firmware, or the nodeid specified does not exist in the firmware device
+tree.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBENOMEM\fR\fR
+.ad
+.RS 10n
+The kernel could not allocate space to copy the user's structure.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEPERM\fR\fR
+.ad
+.RS 10n
+Attempts have been made to write to a read-only entity, or read from a write
+only entity.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBENXIO\fR\fR
+.ad
+.RS 10n
+Attempting to open a non-existent device.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fR\fIoprom_array\fR Data Allocation and Reuse
+.sp
+.LP
+The following example shows how the \fIoprom_array\fR is allocated and reused
+for data returned by the driver.
+
+.sp
+.in +2
+.nf
+/*
+ * This program opens the openprom device and prints the platform
+ * name (root node name property) and the prom version.
+ *
+ * NOTE: /dev/openprom is readable only by user 'root' or group 'sys'.
+ */
+#include <stdio.h>
+#include <string.h>
+#include <fcntl.h>
+#include <errno.h>
+#include <unistd.h>
+#include <stdlib.h>
+#include <sys/openpromio.h>
+#define min(a, b) (a < b ? a : b)
+#define max(a, b) (a > b ? a : b)
+#define MAXNAMESZ 32 /* Maximum property *name* size */
+#define BUFSZ 1024 /* A Handly default buffer size */
+#define MAXVALSZ (BUFSZ - sizeof (int))
+static char *promdev = "/dev/openprom";
+/*
+ * Allocate an openpromio structure big enough to contain
+ * a bufsize'd oprom_array. Zero out the structure and
+ * set the oprom_size field to bufsize.
+ */
+static struct openpromio *
+opp_zalloc(size_t bufsize)
+{
+ struct openpromio *opp;
+ opp = malloc(sizeof (struct openpromio) + bufsize);
+ (void) memset(opp, 0, sizeof (struct openpromio) + bufsize);
+ opp->oprom_size = bufsize;
+ return (opp);
+}
+/*
+ * Free a 'struct openpromio' allocated by opp_zalloc
+ */
+static void
+opp_free(struct openpromio *opp)
+{
+ free(opp);
+}
+/*
+ * Get the peer node of the given node. The root node is the peer of zero.
+ * After changing nodes, property lookups apply to that node. The driver
+ * 'remembers' what node you are in.
+ */
+static int
+peer(int nodeid, int fd)
+{
+ struct openpromio *opp;
+ int i;
+ opp = opp_zalloc(sizeof (int));
+ opp->oprom_node = nodeid;
+ if (ioctl(fd, OPROMNEXT, opp) < 0) {
+ perror("OPROMNEXT");
+ exit(1);
+ }
+ i = opp->oprom_node;
+ opp_free(opp);
+ return(i);
+}
+int
+main(void)
+{
+ struct openpromio *opp;
+ int fd, proplen;
+ size_t buflen;
+ if ((fd = open(promdev, O_RDONLY)) < 0) {
+ fprintf(stderr, "Cannot open openprom device\en");
+ exit(1);
+ }
+ /*
+ * Get and print the length and value of the
+ * root node 'name' property
+ */
+ (void) peer(0, fd); /* Navigate to the root node */
+ /*
+ * Allocate an openpromio structure sized big enough to
+ * take the string "name" as input and return the int-sized
+ * length of the 'name' property.
+ * Then, get the length of the 'name' property.
+ */
+ buflen = max(sizeof (int), strlen("name") + 1);
+ opp = opp_zalloc(buflen);
+ (void) strcpy(opp->oprom_array, "name");
+ if (ioctl(fd, OPROMGETPROPLEN, opp) < 0) {
+ perror("OPROMGETPROPLEN");
+ /* exit(1); */
+ proplen = 0; /* down-rev driver? */
+ } else
+ proplen = opp->oprom_len;
+ opp_free(opp);
+ if (proplen == -1) {
+ printf("'name' property does not exist!\en");
+ exit (1);
+ }
+ /*
+ * Allocate an openpromio structure sized big enough
+ * to take the string 'name' as input and to return
+ * 'proplen + 1' bytes. Then, get the value of the
+ * 'name' property. Note how we make sure to size the
+ * array at least one byte more than the returned length
+ * to guarantee NULL termination.
+ */
+ buflen = (proplen ? proplen + 1 : MAXVALSZ);
+ buflen = max(buflen, strlen("name") + 1);
+ opp = opp_zalloc(buflen);
+ (void) strcpy(opp->oprom_array, "name");
+ if (ioctl(fd, OPROMGETPROP, opp) < 0) {
+ perror("OPROMGETPROP");
+ exit(1);
+ }
+ if (opp->oprom_size != 0)
+ printf("Platform name <%s> property len <%d>\en",
+ opp->oprom_array, proplen);
+ opp_free(opp);
+ /*
+ * Allocate an openpromio structure assumed to be
+ * big enough to get the 'prom version string'.
+ * Get and print the prom version.
+ */
+ opp_zalloc(MAXVALSZ);
+ opp->oprom_size = MAXVALSZ;
+ if (ioctl(fd, OPROMGETVERSION, opp) < 0) {
+ perror("OPROMGETVERSION");
+ exit(1);
+ }
+ printf("Prom version <%s>\en", opp->oprom_array);
+ opp_free(opp);
+ (void) close(fd);
+ return (0);
+}
+.fi
+.in -2
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/dev/openprom\fR\fR
+.ad
+.RS 17n
+PROM monitor configuration interface
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR ioctl (2),
+.BR mem (4D),
+.BR eeprom (8),
+.BR monitor (8),
+.BR prtconf (8)
+.SH BUGS
+.sp
+.LP
+There should be separate return values for non-existent properties as opposed
+to not enough space for the value.
+.sp
+.LP
+An attempt to set a property to an illegal value results in the \fBPROM\fR
+setting it to some legal value, with no error being returned. An
+\fBOPROMGETOPT\fR should be performed after an \fBOPROMSETOPT\fR to verify that
+the set worked.
+.sp
+.LP
+Some \fBPROMS\fR \fIlie\fR about the property length of some string properties,
+omitting the \fBNULL\fR terminator from the property length. The
+\fBopenprom\fR driver attempts to \fItransparently\fR compensate for these bugs
+when returning property values by \fBNULL\fR terminating an extra character in
+the user buffer if space is available in the user buffer. This extra character
+is excluded from the \fIoprom_size\fR field returned from \fBOPROMGETPROP\fR
+and \fBOPROMGETOPT\fR and excluded in the \fIoprom_len\fR field returned from
+\fBOPROMGETPROPLEN\fR but is returned in the user buffer from the calls that
+return data, if the user buffer is allocated at least one byte larger than the
+property length.
diff --git a/usr/src/man/man4d/oplkmdrv.4d b/usr/src/man/man4d/oplkmdrv.4d
new file mode 100644
index 0000000000..1918ae44c5
--- /dev/null
+++ b/usr/src/man/man4d/oplkmdrv.4d
@@ -0,0 +1,43 @@
+'\" te
+.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH OPLKMDRV 4D "Apr 18, 2006"
+.SH NAME
+oplkmdrv \- key management driver for the SPARC Enterprise Server family
+.SH SYNOPSIS
+.LP
+.nf
+\fBkmdrv\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBoplkmdrv\fR is a character driver that implements a framework for exchanging
+the security keys with the Service Processor on a SPARC Enterprise Server. The
+\fBoplkmdrv\fR driver is specific to the SPARC Enterprise Server family.
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Private
+.TE
+
+.sp
+.LP
+.BR attributes (7)
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7)
diff --git a/usr/src/man/man4d/oplmsu.4d b/usr/src/man/man4d/oplmsu.4d
new file mode 100644
index 0000000000..dfa90a7290
--- /dev/null
+++ b/usr/src/man/man4d/oplmsu.4d
@@ -0,0 +1,42 @@
+'\" te
+.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH OPLMSU 4D "Apr 18, 2006"
+.SH NAME
+oplmsu \- Serial I/O multiplexing STREAMS device driver
+.SH SYNOPSIS
+.LP
+.nf
+\fB/pseudo-console\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBoplmsu\fR driver is a STREAMS multiplexer driver that connects multiple
+serial devices to the system console.
+.sp
+.LP
+Currently, this support is provided only on a SPARC Enterprise Server.
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Private
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7)
diff --git a/usr/src/man/man4d/oplpanel.4d b/usr/src/man/man4d/oplpanel.4d
new file mode 100644
index 0000000000..70c9bcac4e
--- /dev/null
+++ b/usr/src/man/man4d/oplpanel.4d
@@ -0,0 +1,34 @@
+'\" te
+.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH OPLPANEL 4D "Apr 18, 2006"
+.SH NAME
+oplpanel \- device driver for the SPARC Enterprise Server family
+.SH DESCRIPTION
+.sp
+.LP
+The \fBoplpanel\fR device driver monitors the panel reset button. If the button
+is pressed, a high-level interrupt is generated, and the \fBoplpanel\fR driver
+causes a system panic.
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Private
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7)
diff --git a/usr/src/man/man4d/pchtemp.4d b/usr/src/man/man4d/pchtemp.4d
new file mode 100644
index 0000000000..937a9d2fa5
--- /dev/null
+++ b/usr/src/man/man4d/pchtemp.4d
@@ -0,0 +1,76 @@
+.\"
+.\" This file and its contents are supplied under the terms of the
+.\" Common Development and Distribution License ("CDDL"), version 1.0.
+.\" You may only use this file in accordance with the terms of version
+.\" 1.0 of the CDDL.
+.\"
+.\" A full copy of the text of the CDDL should have accompanied this
+.\" source. A copy of the CDDL is also available via the Internet at
+.\" http://www.illumos.org/license/CDDL.
+.\"
+.\"
+.\" Copyright 2019 Joyent, Inc.
+.\" Copyright 2021 Oxide Computer Company
+.\"
+.Dd January 21, 2021
+.Dt PCHTEMP 4D
+.Os
+.Sh NAME
+.Nm pchtemp
+.Nd Intel platform controller hub temperature sensor driver
+.Sh SYNOPSIS
+.Pa /dev/sensors/temperature/pch/*
+.Sh DESCRIPTION
+The
+.Nm
+driver provides the system the ability to read the digital temperature
+sensor found on several Intel platform controller hub (PCH) chipsets.
+The following chipsets are supported which cover most Intel Core family
+(non-Atom) CPUs starting with the Haswell generation:
+.Bl -dash
+.It
+Intel 8 Series / C220 Series Chipset Platform Controller Hub
+.It
+Intel 9 Series Chipset Family Platform Controller Hub
+.It
+Intel Mobile 5th Generation Processor Family (Broadwell-U)
+.It
+Intel C610 Series Chipset and X99 Chipset Platform Controller Hub
+.It
+Intel 100 Series Chipset Family Platform Controller Hub
+.It
+Intel C620 Series Chipset Platform Controller Hub
+.It
+Intel 200 and Z370 Series Chipset Families Platform Controller Hub
+.It
+Intel 7th/8th Generation Processor Family U/Y Platforms
+.It
+Intel 300 Series and Intel C240 Series Chipset Family Platform
+Controller Hub
+.It
+Intel 400 Series Chipset Family On-Package Platform Controller Hub
+.It
+Intel 400 Series Chipset Family Platform Controller Hub
+.El
+.Pp
+Temperature information is available to the system via the fault
+management architecture
+.Pq FMA .
+The file system location and programming interface to the
+.Nm
+driver are considered
+.Sy Volatile ,
+subject to change without notice, and should not be used directly.
+Raw temperature information can be dumped through the FMA developer
+utility
+.Sy fmtopo .
+.Sh SEE ALSO
+.Xr fmadm 8
+.Rs
+.%A Intel Corporation
+.%B Intel 300 Series and Intel C240 Series Chipset Family Platform Controller Hub
+.%D March 2019
+.%O Document Number 337347-005
+.%V 1
+.%U https://www.intel.com/content/dam/www/public/us/en/documents/datasheets/300-series-chipset-pch-datasheet-vol-1.pdf
+.Re
diff --git a/usr/src/man/man4d/pcic.4d b/usr/src/man/man4d/pcic.4d
new file mode 100644
index 0000000000..2dee5652bb
--- /dev/null
+++ b/usr/src/man/man4d/pcic.4d
@@ -0,0 +1,114 @@
+'\" te
+.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PCIC 4D "Jun 27, 2006"
+.SH NAME
+pcic \- Intel i82365SL PC Card Interface Controller
+.SH DESCRIPTION
+.sp
+.LP
+The Intel i82365SL PC Card interface controller provides one or more \fBPCMCIA
+PC\fR card sockets. The \fBpcic\fR driver implements a \fBPCMCIA\fR bus nexus
+driver.
+.sp
+.LP
+The driver provides basic support for the Intel 82365SL and compatible chips.
+Tested chips are:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Intel \(em 82365SL.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Cirrus Logic \(em PD6710/PD6720/PD6722.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Vadem \(em VG365/VG465/VG468/VG469.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Toshiba \(em PCIC and ToPIC
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Ricoh \(em RF5C366/RL5C466/RL5C475/RL5C476/RL5C477/RL5C478.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+02Micro \(em OZ6912/6972.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Texas Instruments \(em PCI1130/PCI1131/PCI1031/PCI1221/PCI1225/PCI1520/PCI
+1410/PCI1420/PCI4520/PCI7510/PCI7621.
+.RE
+.sp
+.LP
+While most systems using one of the above chips will work, some systems are not
+supported due to hardware designs options that may not be software detectable.
+.sp
+.LP
+Direct access to the \fBPCMCIA\fR hardware is not supported. All device access
+must be through the DDI.
+.SH CONFIGURATION
+.sp
+.LP
+Configuration of PC Card interface controllers are automatically done in the
+system by leveraging ACPI on x86 (or OBP on SPARC). Configuration includes
+allocation of device memory, I/O ports, CardBus subordinary bus number and
+interrupts. There is no user-interference required. Note that the
+controller may not work when ACPI is disabled.
+.sp
+.LP
+There is one driver configuration property defined in the \fBpcic.conf\fR file:
+.sp
+.ne 2
+.na
+\fB\fBinterrupt-priorities=6;\fR\fR
+.ad
+.RS 27n
+This property must be defined and must be below 10.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/pcic\fR\fR
+.ad
+.RS 25n
+\fBpcic\fR driver.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/pcic.conf\fR\fR
+.ad
+.RS 25n
+\fBpcic\fR configuration file.
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR pcmcia (4D),
+.BR stp4020 (4D),
+.BR cardbus (5)
diff --git a/usr/src/man/man4d/pcicmu.4d b/usr/src/man/man4d/pcicmu.4d
new file mode 100644
index 0000000000..fee2d38eec
--- /dev/null
+++ b/usr/src/man/man4d/pcicmu.4d
@@ -0,0 +1,33 @@
+'\" te
+.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PCICMU 4D "Apr 18, 2006"
+.SH NAME
+pcicmu \- PCI bus nexus driver for the SPARC Enterprise Server family
+.SH DESCRIPTION
+.sp
+.LP
+The \fBpcicmu\fR nexus driver is used for onboard devices for the SPARC
+Enterprise Server family.
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Private
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7)
diff --git a/usr/src/man/man4d/pcipsy.4d b/usr/src/man/man4d/pcipsy.4d
new file mode 100644
index 0000000000..8ab86c7e85
--- /dev/null
+++ b/usr/src/man/man4d/pcipsy.4d
@@ -0,0 +1,26 @@
+'\" te
+.\" Copyright (c) 2005, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 2019 Peter Tribble.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PCIPSY 4D "Jan 28, 2019"
+.SH NAME
+pcipsy \- PCI bus to Safari bus nexus driver
+.SH DESCRIPTION
+.LP
+The \fBpcipsy\fR nexus driver is used for certain IO assemblies for sun4u
+servers.
+.SH FILES
+.ne 2
+.na
+\fB/platform/sun4u/kernel/drv/sparcv9/pcipsy\fR
+.ad
+.sp .6
+.RS 4n
+64-bit ELF kernel module.
+.RE
+
+.SH SEE ALSO
+.LP
+.BR pcisch (4D)
diff --git a/usr/src/man/man4d/pcisch.4d b/usr/src/man/man4d/pcisch.4d
new file mode 100644
index 0000000000..a02e78ecb6
--- /dev/null
+++ b/usr/src/man/man4d/pcisch.4d
@@ -0,0 +1,29 @@
+'\" te
+.\" Copyright (c) 2005, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PCISCH 4D "May 26, 2005"
+.SH NAME
+pcisch \- PCI Bus to Safari bus nexus driver
+.SH DESCRIPTION
+.sp
+.LP
+The \fBpcisch\fR nexus driver is used for Schizo and XMITS-based I/O assemblies
+for the following high-end and midrange Sun enterprise servers: Sun Fire E15K,
+Sun Fire E25K, Sun Fire E2900, Sun Fire E4900 and Sun Fire E6900.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/platform/sun4u/kernel/drv/sparcv9/pcisch\fR\fR
+.ad
+.sp .6
+.RS 4n
+64-bit ELF kernel module.
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR pcipsy (4D)
diff --git a/usr/src/man/man4d/pcmcia.4d b/usr/src/man/man4d/pcmcia.4d
new file mode 100644
index 0000000000..f1a2501f9a
--- /dev/null
+++ b/usr/src/man/man4d/pcmcia.4d
@@ -0,0 +1,27 @@
+'\" te
+.\" Copyright (c) 1996, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PCMCIA 4D "Feb 28, 2005"
+.SH NAME
+pcmcia \- PCMCIA nexus driver
+.SH DESCRIPTION
+.sp
+.LP
+The \fBPCMCIA\fR nexus driver supports \fBPCMCIA\fR card client device
+drivers. There are no user-configurable options for this driver.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/kernel/misc/pcmcia\fR\fR
+.ad
+.RS 23n
+\fBpcmcia\fR driver
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR pcmciad (8)
diff --git a/usr/src/man/man4d/pcn.4d b/usr/src/man/man4d/pcn.4d
new file mode 100644
index 0000000000..f7a6f6184d
--- /dev/null
+++ b/usr/src/man/man4d/pcn.4d
@@ -0,0 +1,163 @@
+'\" te
+.\" Copyright 2011 Jason King. All rights reserved.
+.\" Copyright (c) 2001-2007 by Garrett D'Amore.
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions are met:
+.\" 1. Redistributions of source code must retain the above copyright notice,
+.\" this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright notice,
+.\" this list of conditions and the following disclaimer in the documentation
+.\" and/or other materials provided with the distribution.
+.\" 3. Neither the name of the author nor the names of any co-contributors may
+.\" be used to endorse or promote products derived from this software
+.\" without specific prior written permission.
+.\" THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER AND CONTRIBUTORS
+.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR
+.\" CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+.\" EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+.\" PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+.\" OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+.\" WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+.\" OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+.\" ADVISED OF THE POSSIBILITY OF SUCH DAMAGE
+.\" Portions Copyright (c) 2007 by Sun Microsystems, Inc. All Rights Reserved.
+
+.TH "PCN" "4D" "Jan 10, 2020"
+.
+.SH "NAME"
+\fBpcn\fR \- PCnet Ethernet device driver
+.SH "SYNOPSIS"
+.nf
+\fB/dev/pcn\fR
+.fi
+
+.SH "DESCRIPTION"
+The \fBpcn\fR driver is a multi\-threaded, loadable, clonable GLDv3\-based
+STREAMS driver supporting the Data Link Provider Interface \fBdlpi\fR(4P) for
+the AMD PCnet family of Ethernet controllers.
+.SH "APPLICATION PROGRAMMING INTERFACE"
+The \fBpcn\fR driver can be used as either a "style 1" or a "style 2" Data Link
+Service Provider. Physical points of attachment (PPAs) are interpreted as the
+instance number of the \fBpcn\fR controller as assigned by the
+operating environment.
+.sp
+.LP
+The values returned by the driver in the \fBDL_INFO_ACK\fR response are:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Maximum SDU is 1500.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Minimum SDU is 0.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The dlsap address length is 8.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+MAC type is \fBDL_ETHER\fR.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+SAP length is \-2. The 6\-byte physical address is immediately followed by a
+2\-byte SAP.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Service mode is \fBDL_CLDLS\fR.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The broadcast address is the 6\-byte Ethernet broadcast address
+(\fBff:ff:ff:ff:ff:ff\fR).
+.SH "CONFIGURATION"
+The \fBpcn\fR driver performs auto-negotiation to select the link speed and
+mode. Link speed may be 100Mbps full\-duplex, 100Mbps half\-duplex,
+10Mbps full\-duplex, or 10Mbps half\-duplex, depending on the hardware
+adapter type. See the \fIIEEE802.3\fR standard for more information.
+.sp
+.LP
+The capabilities advertised by the \fBpcn\fR device can be set using
+\fBdladm\fR(8). The driver supports a number of parameters whose names
+begin with \fBen_\fR (see below). Each of these parameters contains a
+boolean value that determines if the device advertises that mode of
+operations. The \fBadv_autoneg_cap\fR parameter controls whether
+auto-negotiation is performed. If \fBadv_autoneg_cap\fR is set to 0, the
+driver forces the mode of operation selected by the first non-zero
+parameter in priority order as shown below:
+.sp
+.in +2
+.nf
+ (highest priority/greatest throughput)
+ en_100fdx_cap 100Mbps full duplex
+ en_10fdx_cap 10Mbps full duplex
+ (lowest priority/least throughput)
+.fi
+.in -2
+
+.sp
+.LP
+All capabilities default to enabled. Note that changing any capability
+parameter causes the link to go down while the link partners renegotiate
+the link speed/duplex using the newly changed capabilities.
+.SH "ATTRIBUTES"
+See \fBattributes\fR(7) for a description of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture x86
+_
+Interface Stability Committed
+.TE
+
+.SH "FILES"
+.ne 2
+.na
+\fB/dev/pcn\fR
+.ad
+.sp .6
+.RS 4n
+Special character device.
+.RE
+
+.sp
+.ne 2
+.na
+\fB/kernel/drv/amd64/pcn\fR
+.ad
+.sp .6
+.RS 4n
+Device driver (x86)
+.RE
+
+.SH "SEE ALSO"
+.BR streamio (4I),
+.BR dlpi (4P),
+.BR attributes (7)
+.sp
+.LP
+\fIIEEE 802.3\fR \(em Institute of Electrical and Electronics Engineers, 2002
diff --git a/usr/src/man/man4d/physmem.4d b/usr/src/man/man4d/physmem.4d
new file mode 100644
index 0000000000..145c4fc5a1
--- /dev/null
+++ b/usr/src/man/man4d/physmem.4d
@@ -0,0 +1,45 @@
+'\" te
+.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PHYSMEM 4D "Nov 15, 2006"
+.SH NAME
+physmem \- physmem driver
+.SH DESCRIPTION
+.sp
+.LP
+The \fBphysmem\fR driver is a private mechanism used by diagnostic test suites
+to test the physical memory of the system.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/dev/physmem\fR\fR
+.ad
+.sp .6
+.RS 4n
+Kernel module.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for a description of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface stability Private
+.TE
+
+.SH CAUTION
+.sp
+.LP
+This driver is used by Sun internal diagnostic programs only. Any other use may
+have a harmful impact on the system.
diff --git a/usr/src/man/man4d/pm.4d b/usr/src/man/man4d/pm.4d
new file mode 100644
index 0000000000..9b9cfaf652
--- /dev/null
+++ b/usr/src/man/man4d/pm.4d
@@ -0,0 +1,413 @@
+'\" te
+.\" Copyright (c) 2001 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PM 4D "Sep 20, 1999"
+.SH NAME
+pm \- Power Management driver
+.SH SYNOPSIS
+.LP
+.nf
+\fB/dev/pm\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The Power Management ( \fBpm\fR) driver provides an interface for applications
+to configure devices within the system for Power Management. The interface is
+provided through \fBioctl\fR(2) commands. The \fBpm\fR driver may be accessed
+using \fB/dev/pm\fR.
+.SS "Power Management Framework"
+.sp
+.LP
+The Power Management framework model allows the system to be viewed as a
+collection of devices. Each device is a collection of components that comprise
+the smallest power manageable units. The device driver controls the definition
+of a device's power manageable components.
+.sp
+.LP
+A component can either be \fBbusy\fR or \fBidle\fR at the current power level.
+Normally, the Power Management framework takes an \fBidle\fR component to the
+next lower power level. The Power Management framework uses two factors to
+determine this transition: the component must have been idle for at least the
+threshold time, and the device to which the component belongs must satisfy any
+dependency requirements. A dependency occurs when a device requires another
+device to be power managed before it can be power managed. Dependencies occur
+on a per device basis: when a dependency exists, no components of a device may
+be managed unless all the devices it depends upon are first power managed.
+.sp
+.LP
+Using the commands below, an application may take control of the Power
+Management of a device from the Power Management framework driver and manage
+the transition of device power levels directly.
+.sp
+.LP
+For this set of ioctl commands, \fIarg\fR (see \fBioctl\fR(2)) points to a
+structure of type \fBpm_req\fR defined in <\fBsys/pm.h\fR>:
+.sp
+.in +2
+.nf
+typedef struct pm_req {
+ char *physpath; /* physical path of device */
+ /* to configure. See libdevinfo(3LIB) */
+ int component; /* device component */
+ int value; /* power level, threshold value, or count */
+ void *data; /* command-dependent variable-sized data */
+ size_t datasize; /* size of data buffer */
+ } pm_req_t;
+.fi
+.in -2
+
+.sp
+.LP
+The fields should contain the following data:
+.sp
+.ne 2
+.na
+\fB\fIphyspath\fR\fR
+.ad
+.RS 13n
+Pointer to the physical path of a device. See \fBlibdevinfo\fR(3LIB). For
+example, for the device \fB/devices/pseudo/pm@0:pm\fR the \fIphyspath\fR value
+would be \fB/pseudo/pm@0\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIcomponent\fR\fR
+.ad
+.RS 13n
+Non-negative integer specifying which component is being configured. The
+numbering starts at zero.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIvalue\fR\fR
+.ad
+.RS 13n
+Non-negative integer specifying the threshold value in seconds or the desired
+power level, or the number of levels being specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIdata\fR\fR
+.ad
+.RS 13n
+Pointer to a buffer which contains or receives variable-sized data, such as the
+name of a device upon which this device has a dependency.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIsize\fR\fR
+.ad
+.RS 13n
+Size of the data buffer.
+.RE
+
+.sp
+.LP
+Not all fields are used in each command.
+.sp
+.ne 2
+.na
+\fB\fBPM_DIRECT_PM\fR\fR
+.ad
+.sp .6
+.RS 4n
+The device named by \fIphyspath\fR is disabled from being power managed by the
+framework. The caller will power manage the device directly using the
+\fBPM_DIRECT_NOTIFY\fR, \fBPM_GET_TIME_IDLE\fR and \fBPM_GET_CURRENT_POWER\fR,
+\fBPM_GET_FULL_POWER\fR and \fBPM_SET_CURRENT_POWER\fR commands. If the device
+needs to have its power level changed either because its driver calls
+\fBpm_raise_power\fR(9F), \fBpm_lower_power\fR(9F), or
+\fBpm_power_has_changed\fR(9F) or because the device is the parent of another
+device that is changing power level or a device that this device depends on is
+changing power level, then the power level change of the device will be blocked
+and the caller will be notified as described below for the
+\fBPM_DIRECT_NOTIFY\fR command.
+.sp
+Error codes:
+.sp
+.ne 2
+.na
+\fB\fBEBUSY\fR\fR
+.ad
+.RS 9n
+Device already disabled for Power Management by framework.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEPERM\fR\fR
+.ad
+.RS 9n
+Caller is neither superuser nor effective group ID of 0.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPM_RELEASE_DIRECT_PM\fR\fR
+.ad
+.sp .6
+.RS 4n
+The device named by \fIphyspath\fR (which must have been the target of a
+\fBPM_DIRECT_PM\fR command) is re-enabled for Power Management by the
+framework.
+.sp
+Error codes:
+.sp
+.ne 2
+.na
+\fB\fBEINVAL\fR\fR
+.ad
+.RS 10n
+Device component out of range.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPM_DIRECT_NOTIFY \fR\fBPM_DIRECT_NOTIFY_WAIT\fR\fR
+.ad
+.sp .6
+.RS 4n
+These commands allow the process that is directly power managing a device to be
+notified of events that could change the power level of the device. When such
+an event occurs, this command returns information about the event.
+.sp
+ \fIarg\fR (see \fBioctl\fR(2)) points to a structure of type
+\fBpm_state_change\fR defined in \fB<sys/pm.h>\fR:
+.sp
+.in +2
+.nf
+typedef struct pm_state_change {
+ char *physpath; /* device which has changed state */
+ int component; /* which component changed state */
+#if defined(_BIG_ENDIAN)
+ ushort_t flags; /* PSC_EVENT_LOST, PSC_ALL_LOWEST */
+ ushort_t event; /* type of event */
+#else
+ ushort_t event; /* type of event *
+ ushort_t flags; /* PSC_EVENT_LOST, PSC_ALL_LOWEST */
+#endif
+ time_t timestamp; /* time of state change */+
+ int old_level; /* power level changing from */
+ int new_level; /* power level changing to */
+ size_t size; /* size of buffer physpath points to */
+} pm_state_change_t;
+.fi
+.in -2
+
+When an event occurs, the struct pointed to by \fIarg\fR is filled in. If the
+event type is \fBPSC_PENDING_CHANGE\fR, then the information in the rest of the
+struct describes an action that the framework would have taken if the device
+were not directly power managed by the caller. The caller is responsible for
+completing the indicated level changes using \fBPM_SET_CURRENT_POWER\fR below.
+.sp
+An event type of \fBPSC_HAS_CHANGED\fR indicates that the driver for the
+directly power managed device has called \fBpm_power_has_changed\fR(9F) due to
+the device changing power on its own. It is provided to allow the caller to
+track the power state of the device.
+.sp
+The system keeps events in a circular buffer. If the buffer overflow, the
+oldest events are lost and when the event that next follows a lost event is
+retrieved it will have PSC_EVENT_LOST set in flags.
+.sp
+\fBPM_DIRECT_NOTIFY\fR returns \fBEWOULDBLOCK\fR if no event is pending, and
+\fBPM_DIRECT_NOTIFY_WAIT\fR blocks until an event is available.
+.sp
+\fBpm\fR also supports the \fBpoll\fR(2) interface. When an event is pending a
+\fBpoll\fR(2) call that includes a file descriptor for \fB/dev/pm\fR and that
+has \fBPOLLIN \fR or \fBPOLLRDNORM \fR set in its event mask will return.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPM_SET_CURRENT_POWER\fR\fR
+.ad
+.sp .6
+.RS 4n
+Component \fIcomponent\fR of the device named by \fIphyspath\fR (which must
+contain the physical path of a device against which the process has issued a
+\fBPM_DIRECT_PM\fR command) is set to power level \fIvalue. \fRIf all
+components of the device named by \fIphyspath\fR were at level 0, \fIvalue\fR
+is non-zero and some device has a dependency on this device, then all
+components of that device will be brought to full power before this command
+returns. Similarly, if the parent of the target device is powered off, then it
+will be brought up as needed before this command returns. When
+PM_SET_CURRENT_POWER is issued against a device, the resulting power change is
+included in the event list for PM_DIRECT_NOTIFY.
+.sp
+Error codes:
+.sp
+.ne 2
+.na
+\fB\fBEINVAL\fR\fR
+.ad
+.RS 10n
+Device component out of range, or power level < 0.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEIO\fR\fR
+.ad
+.RS 10n
+Failed to power device or its ancestors or the devices on which this device has
+dependency or their ancestors. Note that this may not indicate a failure, the
+device driver may have rejected the command as inappropriate because the
+component has become busy.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEPERM\fR\fR
+.ad
+.RS 10n
+Caller has not previously issued a successful \fBPM_DIRECT_PM\fR command
+against this device.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPM_GET_FULL_POWER\fR\fR
+.ad
+.sp .6
+.RS 4n
+The highest supported power level of component \fIcomponent\fR of the device
+named by \fIphyspath\fR is returned.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPM_GET_CURRENT_POWER\fR\fR
+.ad
+.sp .6
+.RS 4n
+The current power level of component \fIcomponent\fR of the device named by
+\fIphyspath\fR is returned.
+.sp
+Error codes:
+.sp
+.ne 2
+.na
+\fB\fBEAGAIN\fR\fR
+.ad
+.RS 10n
+Device component power level is not currently known.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPM_GET_TIME_IDLE\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBPM_GET_TIME_IDLE\fR returns the number of seconds that component
+\fIcomponent\fR of the device named by \fIphyspath\fR has been idle. If the
+device is not idle, then \fB0\fR is returned.
+.sp
+Note that because the state of the device may change between the time the
+process issues the \fBPM_GET_TIME_IDLE\fR command and the time the process
+issues a \fBPM_SET_CURRENT_POWER\fR command to reduce the power level of an
+idle component, the process must be prepared to deal with a
+\fBPM_SET_CURRENT_POWER\fR command returning failure because the driver has
+rejected the command as inappropriate because the device component has become
+busy. This can be differentiated from other types of failures by issuing the
+\fBPM_GET_TIME_IDLE\fR command again to see if the component has become busy.
+.RE
+
+.SH ERRORS
+.sp
+.LP
+Upon error, the commands will return \fB\(mi1\fR, and set \fIerrno\fR. In
+addition to the error codes listed above by command, the following error codes
+are common to all commands:
+.sp
+.ne 2
+.na
+\fB\fBEFAULT\fR\fR
+.ad
+.RS 10n
+ Bad address passed in as argument.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBENODEV\fR\fR
+.ad
+.RS 10n
+ Device is not power manageable, or device is not configured.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBENXIO\fR\fR
+.ad
+.RS 10n
+ Too many opens attempted.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface stability Unstable
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR Intro (2),
+.BR ioctl (2),
+.BR libdevinfo (3LIB),
+.BR power.conf (5),
+.BR attributes (7),
+.BR pmconfig (8),
+.BR attach (9E),
+.BR detach (9E),
+.BR power (9E),
+.BR pm_busy_component (9F),
+.BR pm_idle_component (9F),
+.BR pm_lower_power (9F),
+.BR pm_power_has_changed (9F),
+.BR pm_raise_power (9F)
+.sp
+.LP
+\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man4d/poll.4d b/usr/src/man/man4d/poll.4d
new file mode 100644
index 0000000000..5982185fd9
--- /dev/null
+++ b/usr/src/man/man4d/poll.4d
@@ -0,0 +1,382 @@
+'\" te
+.\" Copyright (c) 2007 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH POLL 4D "January 10, 2020"
+.SH NAME
+poll \- driver for fast poll on many file descriptors
+.SH SYNOPSIS
+.nf
+\fB#include <sys/devpoll.h>
+int fd = open("/dev/poll", O_RDWR);
+ssize_t n = write(int fd, struct pollfd buf[], int bufsize);
+int n = ioctl(int fd, DP_POLL, struct dvpoll* arg);
+int n = ioctl(int fd, DP_ISPOLLED, struct pollfd* pfd);\fR
+.fi
+
+.SH PARAMETERS
+.ne 2
+.na
+\fB\fIfd\fR \fR
+.ad
+.RS 12n
+Open file descriptor that refers to the \fB/dev/poll\fR driver.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIpath\fR \fR
+.ad
+.RS 12n
+\fB/dev/poll\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIbuf\fR \fR
+.ad
+.RS 12n
+Array of \fBpollfd\fR structures.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIbufsize\fR \fR
+.ad
+.RS 12n
+Size of \fIbuf\fR in bytes.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIarg\fR \fR
+.ad
+.RS 12n
+Pointer to \fBpollcall\fR structure.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIpfd\fR \fR
+.ad
+.RS 12n
+Pointer to \fBpollfd\fR structure.
+.RE
+
+.SH DESCRIPTION
+The \fB/dev/poll\fR driver is a special driver that enables you to monitor
+multiple sets of polled file descriptors. By using the \fB/dev/poll\fR
+driver, you can efficiently poll large numbers of file descriptors. Access to
+the \fB/dev/poll\fR driver is provided through \fBopen\fR(2), \fBwrite\fR(2),
+and \fBioctl(2)\fR system calls.
+.sp
+.LP
+Writing an array of \fBpollfd\fR struct to the \fB/dev/poll\fR driver has the
+effect of adding these file descriptors to the monitored \fBpoll\fR file
+descriptor set represented by the \fIfd\fR. To monitor multiple file
+descriptor sets, open the \fB/dev/poll\fR driver multiple times. Each \fBfd\fR
+corresponds to one set. For each \fBpollfd\fR struct entry (defined in
+\fBsys/poll.h\fR):
+.sp
+.in +2
+.nf
+ struct pollfd {
+ int fd;
+ short events;
+ short revents;
+ }
+.fi
+.in -2
+
+.sp
+.LP
+The \fBfd\fR field specifies the file descriptor being polled. The
+\fBevents\fR field indicates the interested \fBpoll\fR \fBevents\fR on the file
+descriptor. If a \fBpollfd\fR array contains multiple \fBpollfd\fR entries with
+the same \fBfd\fR field, the "events" field in each \fBpollfd\fR entry is
+OR'ed. A special \fBPOLLREMOVE\fR event in the \fBevents\fR field of the
+\fBpollfd\fR structure removes the \fBfd\fR from the monitored set. The
+\fBrevents\fR field is not used. Write returns the number of bytes written
+successfully or \fB-1\fR when write fails.
+.sp
+.LP
+The \fBDP_POLL\fR ioctl is used to retrieve returned \fBpoll\fR \fBevents\fR
+occurred on the polled file descriptors in the monitored set represented by
+\fIfd\fR. \fIarg\fR \fIis\fR \fIa\fR pointer to the devpoll structures which
+are defined as follows:
+.sp
+.in +2
+.nf
+ struct dvpoll {
+ struct pollfd* dp_fds;
+ int dp_nfds;
+ int dp_timeout;
+ }
+.fi
+.in -2
+
+.sp
+.LP
+The \fBdp_fds\fR points to a buffer that holds an array of returned
+\fBpollfd\fR structures. The \fBdp_nfds\fR field specifies the size of the
+buffer in terms of the number of \fBpollfd\fR entries it contains. The
+\fBdp_nfds\fR field also indicates the maximum number of file descriptors from
+which poll information can be obtained. If there is no interested \fBevents\fR
+on any of the polled file descriptors, the \fBDP_POLL\fR ioctl call will wait
+\fBdp_timeout\fR milliseconds before returning. If \fBdp_timeout\fR is
+\fB0\fR, the ioctl call returns immediately. If \fBdp_timeout\fR is \fB-1\fR,
+the call blocks until an interested \fBpoll\fR \fBevents\fR is available or the
+call is interrupted. Upon return, if the ioctl call has failed, \fB-1\fR is
+returned. The memory content pointed by \fBdp_fds\fR is not modified. A return
+value \fB0\fR means the ioctl is timed out. In this case, the memory content
+pointed by \fBdp_fds\fR is not modified. If the call is successful, it returns
+the number of valid \fBpollfd\fR entries in the array pointed by \fBdp_fds\fR;
+the contents of the rest of the buffer is undefined. For each valid
+\fBpollfd\fR entry, the \fBfd\fR field indicates the file descriptor on which
+the polled \fBevents\fR happened. The \fBevents\fR field is the user specified
+\fBpoll\fR \fBevents\fR. The \fBrevents\fR field contains the \fBevents\fR
+occurred. \fB-1\fR is returned if the call fails.
+.sp
+.LP
+\fBDP_ISPOLLED\fR ioctl allows you to query if a file descriptor is already in
+the monitored set represented by \fBfd\fR. The \fBfd\fR field of the
+\fBpollfd\fR structure indicates the file descriptor of interest. The
+\fBDP_ISPOLLED\fR ioctl returns \fB1\fR if the file descriptor is in the set.
+The \fBevents\fR field contains \fB0\fR. The \fBrevents\fR field contains the
+currently polled \fBevents\fR. The ioctl returns \fB0\fR if the file
+descriptor is not in the set. The \fBpollfd\fR structure pointed by \fIpfd\fR
+is not modified. The ioctl returns a \fB-1\fR if the call fails.
+.SH EXAMPLES
+The following example shows how \fB/dev/poll\fR may be used.
+.sp
+.in +2
+.nf
+{
+ ...
+ /*
+ * open the driver
+ */
+ if ((wfd = open("/dev/poll", O_RDWR)) < 0) {
+ exit(-1);
+ }
+ pollfd = (struct pollfd* )malloc(sizeof(struct pollfd) * MAXBUF);
+ if (pollfd == NULL) {
+ close(wfd);
+ exit(-1);
+ }
+ /*
+ * initialize buffer
+ */
+ for (i = 0; i < MAXBUF; i++) {
+ pollfd[i].fd = fds[i];
+ pollfd[i].events = POLLIN;
+ pollfd[i].revents = 0;
+ }
+ if (write(wfd, &pollfd[0], sizeof(struct pollfd) * MAXBUF) !=
+ sizeof(struct pollfd) * MAXBUF) {
+ perror("failed to write all pollfds");
+ close (wfd);
+ free(pollfd);
+ exit(-1);
+ }
+ /*
+ * read from the devpoll driver
+ */
+ dopoll.dp_timeout = -1;
+ dopoll.dp_nfds = MAXBUF;
+ dopoll.dp_fds = pollfd;
+ result = ioctl(wfd, DP_POLL, &dopoll);
+ if (result < 0) {
+ perror("/dev/poll ioctl DP_POLL failed");
+ close (wfd);
+ free(pollfd);
+ exit(-1);
+ }
+ for (i = 0; i < result; i++) {
+ read(dopoll.dp_fds[i].fd, rbuf, STRLEN);
+ }
+ ...
+}
+.fi
+.in -2
+
+.sp
+.LP
+The following example is part of a test program which shows how
+\fBDP_ISPOLLED()\fR ioctl may be used.
+.sp
+.in +2
+.nf
+{
+ ...
+
+ loopcnt = 0;
+ while (loopcnt < ITERATION) {
+ rn = random();
+ rn %= RANGE;
+ if (write(fds[rn], TESTSTRING, strlen(TESTSTRING)) !=
+ strlen(TESTSTRING)) {
+ perror("write to fifo failed.");
+ close (wfd);
+ free(pollfd);
+ error = 1;
+ goto out1;
+ }
+ dpfd.fd = fds[rn];
+ dpfd.events = 0;
+ dpfd.revents = 0;
+ result = ioctl(wfd, DP_ISPOLLED, &dpfd);
+ if (result < 0) {
+ perror("/dev/poll ioctl DP_ISPOLLED failed");
+ printf("errno = %d\en", errno);
+ close (wfd);
+ free(pollfd);
+ error = 1;
+ goto out1;
+ }
+ if (result != 1) {
+ printf("DP_ISPOLLED returned incorrect result: %d.\en",
+ result);
+ close (wfd);
+ free(pollfd);
+ error = 1;
+ goto out1;
+ }
+ if (dpfd.fd != fds[rn]) {
+ printf("DP_ISPOLLED returned wrong fd %d, expect %d\en",
+ dpfd.fd, fds[rn]);
+ close (wfd);
+ free(pollfd);
+ error = 1;
+ goto out1;
+ }
+ if (dpfd.revents != POLLIN) {
+ printf("DP_ISPOLLED returned unexpected revents %d\en",
+ dpfd.revents);
+ close (wfd);
+ free(pollfd);
+ error = 1;
+ goto out1;
+ }
+ if (read(dpfd.fd, rbuf, strlen(TESTSTRING)) !=
+ strlen(TESTSTRING)) {
+ perror("read from fifo failed");
+ close (wfd);
+ free(pollfd);
+ error = 1;
+ goto out1;
+ }
+ loopcnt++;
+ }
+
+.fi
+.in -2
+
+.SH ERRORS
+.ne 2
+.na
+\fB\fBEACCES\fR \fR
+.ad
+.RS 11n
+A process does not have permission to access the content cached in
+\fB/dev/poll\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEINTR\fR \fR
+.ad
+.RS 11n
+A signal was caught during the execution of the \fBioctl\fR(2) function.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEFAULT\fR \fR
+.ad
+.RS 11n
+The request argument requires a data transfer to or from a buffer pointed to by
+\fIarg\fR, but \fIarg\fR points to an illegal address.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEINVAL\fR \fR
+.ad
+.RS 11n
+The request or \fIarg\fR parameter is not valid for this device, or field of
+the dvpoll struct pointed by \fIarg\fR is not valid (for example, when using
+write/pwrite dp_nfds is greater than {OPEN_MAX}, or when using the DPPOLL ioctl
+dp_nfds is greater than or equal to {OPEN_MAX}}.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBENXIO\fR \fR
+.ad
+.RS 11n
+The \fBO_NONBLOCK\fR flag is set, the named file is a FIFO, the \fBO_WRONLY\fR
+flag is set, and no process has the file open for reading; or the named file is
+a character special or block special file and the device associated with this
+special file does not exist.
+.RE
+
+.SH ATTRIBUTES
+See \fBattributes\fR(7) for a description of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+l l
+l l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+Architecture SPARC, x86
+Interface Stability Obsolete
+MT-Level Safe
+.TE
+
+.SH SEE ALSO
+.BR open (2),
+.BR poll (2),
+.BR write (2),
+.BR attributes (7)
+.SH NOTES
+The \fB/dev/poll\fR API is particularly beneficial to applications that poll a
+large number of file descriptors repeatedly. Applications will exhibit the
+best performance gain if the polled file descriptor list rarely change.
+.sp
+.LP
+When using the \fB/dev/poll\fR driver, you should remove a closed file
+descriptor from a monitored poll set. Failure to do so may result in a
+\fBPOLLNVAL\fR \fBrevents\fR being returned for the closed file descriptor.
+When a file descriptor is closed but not removed from the monitored set, and is
+reused in subsequent open of a different device, you will be polling the device
+associated with the reused file descriptor. In a multithreaded application,
+careful coordination among threads doing close and \fBDP_POLL\fR ioctl is
+recommended for consistent results.
+.sp
+.LP
+The \fB/dev/poll\fR driver caches a list of polled file descriptors, which are
+specific to a process. Therefore, the \fB/dev/poll\fR file descriptor of a
+process will be inherited by its child process, just like any other file
+descriptors. But the child process will have very limited access through this
+inherited \fB/dev/poll\fR file descriptor. Any attempt to write or do ioctl by
+the child process will result in an \fBEACCES\fR error. The child process
+should close the inherited \fB/dev/poll\fR file descriptor and open its own if
+desired.
+.sp
+.LP
+The \fB/dev/poll\fR driver does not yet support polling. Polling on a
+\fB/dev/poll\fR file descriptor will result in \fBPOLLERR\fR being returned in
+the \fBrevents\fR field of \fBpollfd\fR structure.
diff --git a/usr/src/man/man4d/profile.4d b/usr/src/man/man4d/profile.4d
new file mode 100644
index 0000000000..723c9dce25
--- /dev/null
+++ b/usr/src/man/man4d/profile.4d
@@ -0,0 +1,56 @@
+'\" te
+.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PROFILE 4D "Dec 10, 2017"
+.SH NAME
+profile \- DTrace profile interrupt provider
+.SH DESCRIPTION
+.LP
+The \fBprofile\fR driver is a DTrace dynamic tracing provider that adds
+time-based interrupt event sources that can be used as DTrace probes.
+.sp
+.LP
+Each profile event source is a time-based interrupt firing every fixed,
+specified time interval. You can use these probes to sample some aspect of
+system state every unit time and the samples can then be used to infer system
+behavior. If the sampling rate is high, or the sampling time is long, an
+accurate inference is possible. By using the DTrace facility to bind arbitrary
+actions to probes, you can use the \fBprofile\fR provider to sample practically
+anything in the system. For example, you could sample the state of the current
+thread, the CPU state, or the current machine instruction each time a probe
+fires.
+.sp
+.LP
+The \fBprofile\fR driver is not a public interface and you access the
+instrumentation offered by this provider through DTrace. Refer to the
+\fIDynamic Tracing Guide\fR for a description of the public documented
+interfaces available for the DTrace facility and the probes offered by the
+profile provider.
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for a description of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Private
+.TE
+
+.SH SEE ALSO
+.LP
+.BR dtrace (4D),
+.BR attributes (7),
+.BR dtrace (8)
+.sp
+.LP
+\fIDynamic Tracing Guide\fR:
+.sp
+.LP
+https://illumos.org/books/dtrace/
diff --git a/usr/src/man/man4d/ptm.4d b/usr/src/man/man4d/ptm.4d
new file mode 100644
index 0000000000..ab30487267
--- /dev/null
+++ b/usr/src/man/man4d/ptm.4d
@@ -0,0 +1,258 @@
+'\" te
+.\" Copyright (c) 1997, Sun Microsystems, Inc.
+.\" All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.\" Copyright 2022 Oxide Computer Company
+.Dd February 5, 2022
+.Dt PTM 4D
+.Os
+.Sh NAME
+.Nm ptm ,
+.Nm pts
+.Nd STREAMS pseudo-terminal manager and subsidiary drivers
+.Sh SYNOPSIS
+.Pa /dev/ptmx
+.Pp
+.Pa /dev/pts/*
+.Sh DESCRIPTION
+The pseudo-terminal subsystem simulates a terminal connection, where the
+manager side represents the terminal and the subsidiary represents the user
+process's special device end point.
+The manager device is set up as a cloned device where its major device number
+is the major for the clone device and its minor device number is the major for
+the
+.Nm ptm
+driver; see
+.Dv CLONE_DEV
+in
+.Xr ddi_create_minor_node 9F .
+.Pp
+There are no nodes in the file system for manager devices.
+The manager pseudo driver is opened using the
+.Xr open 2
+system call with
+.Pa /dev/ptmx
+as the device parameter.
+The clone open finds the next available minor device for the
+.Nm ptm
+major device.
+.Pp
+A manager device is only available if it and its corresponding subsidiary
+device are not already open.
+Only one open is allowed on a manager device.
+Multiple opens are allowed on the subsidiary device.
+.Pp
+When the manager device is opened, the corresponding subsidiary device is
+automatically locked out.
+No user may open the subsidiary device until its permissions are adjusted and
+the device is unlocked by calling the functions
+.Xr grantpt 3C
+and
+.Xr unlockpt 3C .
+The user can then invoke the
+.Xr open 2
+system call with the device name returned by the
+.Xr ptsname 3C
+function.
+.Pp
+After both the manager and subsidiary have been opened, the user has two file
+descriptors which are the end points of a full duplex connection composed of
+two streams which are automatically connected at the manager and subsidiary
+drivers.
+The user may then push modules onto either side of the stream pair.
+Unless compiled in XPG4v2 mode
+.Po
+see
+.Sx "XPG4v2 MODE"
+.Pc ,
+the consumer needs to push the
+.Xr ptem 4M
+and
+.Xr ldterm 4M
+modules onto the subsidiary device to get terminal semantics.
+.Pp
+The manager and subsidiary drivers pass all messages to their adjacent queues.
+Only the
+.Dv M_FLUSH
+needs some processing.
+Because the read queue of one side is connected to the write queue of the
+other, the
+.Dv FLUSHR
+flag is changed to the
+.Dv FLUSHW
+flag and vice versa.
+.Pp
+When the manager device is closed, an
+.Dv M_HANGUP
+message is sent to the subsidiary device which will render the device unusable.
+The process on the subsidiary side gets an
+.Er EIO
+error when attempting to write on that stream, but it will be able to read
+any data remaining on the stream head read queue.
+When all the data has been read,
+.Xr read 2
+returns
+.Sy 0
+indicating that the stream can no longer be used.
+.Pp
+On the last close of the subsidiary device, a 0-length message is sent to the
+manager device.
+When the application on the manager side issues a
+.Xr read 2
+or
+.Xr getmsg 2
+and
+.Sy 0
+is returned, the user of the manager device decides whether to issue a
+.Xr close 2
+that dismantles the entire pseudo-terminal.
+If the manager device is not closed, the pseudo-terminal will be available to
+another user to open the subsidiary device.
+.Pp
+Since 0-length messages are used to indicate that the process on the
+subsidiary side has closed, and should be interpreted that way by the process
+on the manager side, applications on the subsidiary side should not write
+0-length messages.
+Unless the application is compiled in XPG4v2 mode
+.Po
+see
+.Sx "XPG4v2 MODE"
+.Pc ,
+then any 0-length messages written to the subsidiary device will be discarded
+by the
+.Xr ptem 4M
+module.
+.Pp
+If
+.Dv O_NONBLOCK
+or
+.Dv O_NDELAY
+is set on the manager side:
+.Bl -bullet
+.It
+Read on the manager side returns
+.Sy -1
+with
+.Va errno
+set to
+.Er EAGAIN
+if no data is available
+.It
+Write returns
+.Sy -1
+with
+.Va errno
+set to
+.Er EAGAIN
+if there is internal flow control
+.El
+.Pp
+Standard STREAMS system calls can access pseudo-terminal devices.
+The subsidiary devices support the
+.Dv O_NDELAY
+and
+.Dv O_NONBLOCK
+flags.
+.Sh XPG4v2 MODE
+.Em XPG4v2
+requires that subsidiary pseudo-terminal devices provide the process with an
+interface that is identical to the terminal interface, without needing to
+explicitly push any modules to achieve this.
+It also requires that 0-length messages written on the subsidiary device will
+be propagated to the manager device.
+.Pp
+Experience has shown that most software does not expect subsidiary
+pseudo-terminal devices to operate in this manner.
+This XPG4v2-compliant behaviour is only enabled in XPG4v2/SUS
+.Po
+see
+.Xr standards 7
+.Pc
+mode.
+.Sh IOCTLS
+The manager driver provides several ioctls to support the
+.Xr grantpt 3C ,
+.Xr unlockpt 3C ,
+and
+.Xr ptsname 3C
+functions:
+.Bl -tag -width Ds
+.It Dv ISPTM
+Determines whether the file descriptor is that of an open manager device.
+On success, it returns the value
+.Sy 0 .
+.It Dv UNLKPT
+Unlocks the manager and subsidiary devices.
+It returns
+.Sy 0
+on success.
+On failure,
+.Vt errno
+is set to
+.Vt EINVAL
+indicating that the manager device is not open.
+.El
+.Sh FILES
+.Bl -tag -width Pa
+.It Pa /dev/ptmx
+Pseudo-terminal manager clone device.
+.It Pa /dev/pts/N
+Pseudo-terminal subsidiary devices, where
+.Sy N
+is a non-negative integer.
+Located via calls to
+.Xr ptsname 3C .
+.El
+.Sh EXAMPLES
+.Sy Example 1
+Opening the manager and subsidiary device for a pseudo-terminal.
+.Bd -literal -offset Ds
+#include <stdlib.h>
+#include <sys/types.h>
+#include <sys/stat.h>
+#include <unistd.h>
+#include <stropts.h>
+#include <fcntl.h>
+#include <err.h>
+\&...
+int fdm, fds;
+char *subsidiaryname;
+\&...
+/*
+ * NOTE: Portable applications should use posix_openpt(3C) here:
+ */
+if ((fdm = open("/dev/ptmx", O_RDWR | O_NOCTTY)) < 0) {
+ err(1, "open manager");
+}
+if (grantpt(fdm) != 0 || unlockpt(fdm) != 0 ||
+ (subsidiaryname = ptsname(fdm)) == NULL) {
+ close(fdm);
+ err(1, "locate subsidiary");
+}
+if ((fds = open(subsidiaryname, O_RDWR | O_NOCTTY)) < 0) {
+ close(fdm);
+ err(1, "open subsidiary");
+}
+if (ioctl(fds, I_PUSH, "ptem") != 0 ||
+ ioctl(fds, I_PUSH, "ldterm") != 0) {
+ close(fds);
+ close(fdm);
+ err(1, "push modules");
+}
+.Ed
+.Sh SEE ALSO
+.Xr close 2 ,
+.Xr getmsg 2 ,
+.Xr open 2 ,
+.Xr read 2 ,
+.Xr grantpt 3C ,
+.Xr posix_openpt 3C ,
+.Xr ptsname 3C ,
+.Xr unlockpt 3C ,
+.Xr ldterm 4M ,
+.Xr pckt 4M ,
+.Xr ptem 4M ,
+.Xr standards 7 ,
+.Xr ddi_create_minor_node 9F
diff --git a/usr/src/man/man4d/pty.4d b/usr/src/man/man4d/pty.4d
new file mode 100644
index 0000000000..0e7cb9ad2f
--- /dev/null
+++ b/usr/src/man/man4d/pty.4d
@@ -0,0 +1,265 @@
+'\" te
+.\" Copyright (c) 1994, Sun Microsystems, Inc.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.\" Copyright 2022 Oxide Computer Company
+.Dd February 5, 2022
+.Dt PTY 4D
+.Os
+.Sh NAME
+.Nm pty
+.Nd legacy pseudo-terminal driver
+.Sh SYNOPSIS
+.Pa /dev/pty[p-r]*
+.Pp
+.Pa /dev/tty[p-r]*
+.Sh DESCRIPTION
+This driver provides support for legacy static pseudo-terminal devices.
+Modern software does not use this driver, preferring instead the STREAMS-based
+.Xr ptm 4D
+and
+.Xr pts 4D
+pseudo-terminal drivers, consumed through the portable
+.Xr posix_openpt 3C
+interface.
+.Pp
+The
+.Nm pty
+driver provides support for a pair of devices collectively known
+as a
+.Em pseudo-terminal .
+The two devices comprising a pseudo-terminal are known as a
+.Em manager
+and a
+.Em subsidiary .
+The subsidiary device distinguishes between the
+.Dv B0 baud rate and other baud rates specified in
+the
+.Fa c_cflag
+field of the
+.Vt termios
+structure, and the
+.Dv CLOCAL
+flag in that member.
+It does not support any of the other
+.Xr termio 4I
+device control functions specified by flags in the
+.Fa c_cflag
+field of the
+.Vt termios
+structure and by the
+.Dv IGNBRK ,
+.Dv IGNPAR ,
+.Dv PARMRK ,
+or
+.Dv INPCK
+flags in the
+.Fa c_iflag
+field of the
+.Vt termios
+structure, as these functions apply only to asynchronous serial ports.
+All other
+.Xr termio 4I
+functions must be performed by STREAMS modules pushed atop the driver; when a
+subsidiary device is opened, the
+.Xr ldterm 4M
+and
+.Xr ttcompat 4M
+STREAMS modules are automatically pushed on top of the stream, providing the
+standard
+.Xr termio 4I
+interface.
+.Pp
+Instead of having a hardware interface and associated hardware that supports
+the terminal functions, the functions are implemented by another process
+manipulating the manager device of the pseudo-terminal.
+.Pp
+The manager and the subsidiary devices of the pseudo-terminal are tightly
+connected.
+Any data written on the manager device is given to the subsidiary device as
+input, as though it had been received from a hardware interface.
+Any data written on the subsidiary terminal can be read from the manager device
+.Pq "rather than being transmitted from a UAR" .
+.Pp
+The driver is statically configured to provide 48 pseudo-terminal pairs.
+Software that requires dynamic pseudo-terminal devices, or a greater number
+of devices, must be converted to use
+.Xr ptm 4D .
+.Sh IOCTLS
+The standard set of
+.Xr termio 4I
+ioctls are supported by the subsidiary device.
+None of the bits in the
+.Fa c_cflag
+field have any effect on the pseudo-terminal, except that if the baud rate is
+set to
+.Dv B0 ,
+it will appear to the process on the manager device as if the last process on
+the subsidiary device had closed the line; thus, setting the baud rate to
+.Dv B0
+has the effect of
+.Dq hanging up
+the pseudo-terminal, just as it has the effect of
+.Dq hanging up
+a real terminal.
+.Pp
+There is no notion of
+.Dq parity
+on a pseudo-terminal, so none of the flags in the
+.Fa c_iflag
+field that control the processing of parity errors have any
+effect.
+Similarly, there is no notion of a
+.Fa break ,
+so none of the flags that control the processing of breaks, and none of the
+ioctls that generate breaks, have any effect.
+.Pp
+Input flow control is automatically performed; a process that attempts to write
+to the manager device will be blocked if too much unconsumed data is buffered
+on the subsidiary device.
+The input flow control provided by the
+.Dv IXOFF
+flag in the
+.Fa c_iflag
+field is not supported.
+.Pp
+The delays specified in the
+.Fa c_oflag
+field are not supported.
+.Pp
+As there are no modems involved in a pseudo-terminal, the ioctls that return or
+alter the state of modem control lines are silently ignored.
+.Pp
+A few special ioctls are provided on the manager devices of pseudo-terminals to
+provide the functionality needed by applications programs to emulate real
+hardware interfaces:
+.Bl -tag -width Ds
+.It Dv TIOCSTOP
+The argument is ignored.
+Output to the pseudo-terminal is suspended, as if a
+.Sy STOP
+character had been typed.
+.It Dv TIOCSTART
+The argument is ignored.
+Output to the pseudo-terminal is restarted, as if a
+.Sy START
+character had been typed.
+.It Dv TIOCPKT
+The argument is a pointer to an
+.Vt int .
+If the value of the
+.Vt int
+is non-zero,
+.Em packet
+mode is enabled; if the value of the
+.Vt int
+is zero, packet mode is disabled.
+When a pseudo-terminal is in packet mode, each subsequent
+.Xr read 2
+from the manager device will return data written on the subsidiary device
+preceded by a zero byte
+.Po
+symbolically defined as
+.Dv TIOCPKT_DATA
+.Pc ,
+or a single byte reflecting control status information.
+In the latter case, the byte is an inclusive-or of zero or more of the bits:
+.Bl -tag -width Ds
+.It Dv TIOCPKT_FLUSHREAD
+Whenever the read queue for the terminal is flushed.
+.It Dv TIOCPKT_FLUSHWRITE
+Whenever the write queue for the terminal is flushed.
+.It Dv TIOCPKT_STOP
+Whenever output to the terminal is stopped using
+.Sy ^S .
+.It Dv TIOCPKT_START
+Whenever output to the terminal is restarted.
+.It Dv TIOCPKT_DOSTOP
+Whenever
+.Em XON/XOFF
+flow control is enabled after being disabled; it is
+considered
+.Dq enabled
+when the
+.Dv IXON
+flag in the
+.Fa c_iflag
+field is set, the
+.Dv VSTOP
+member of the
+.Fa c_cc
+array is
+.Sy ^S
+and the
+.Dv VSTART
+member of the
+.Fa c_cc
+array is
+.Sy ^Q.
+.It Dv TIOCPKT_NOSTOP
+Whenever
+.Em XON/XOFF
+flow control is disabled after being enabled.
+.El
+.It Dv TIOCREMOTE
+The argument is a pointer to an
+.Vt int .
+If the value of the
+.Vt int
+is non-zero,
+.Em remote
+mode is enabled; if the value of the
+.Vt int
+is zero, remote mode is disabled.
+This mode can be enabled or disabled independently of packet mode.
+When a pseudo-terminal is in remote mode, input to the subsidiary device of the
+pseudo-terminal is flow controlled and not input edited (regardless of the mode
+the subsidiary side of the pseudo-terminal).
+.Pp
+Each write to the manager device produces a record boundary for the process
+reading the subsidiary device.
+In normal usage, a write of data is like the data typed as a line on the
+terminal; a write of 0 bytes is like typing an
+.Sy EOF
+character.
+Note: this means that a process writing to a pseudo-terminal manager in remote
+mode must keep track of line boundaries, and write only one line at a time to
+the manager.
+.Pp
+If, for example, it were to buffer up several newline characters and write them
+to the manager with one
+.Xr write 2 ,
+it would appear to a process reading from the subsidiary as if a single line
+containing several newline characters had been typed
+.Po
+as if, for example, a user had typed the literal next
+.Pq Sy LNEXT
+character before typing all but the last of those newline characters
+.Pc .
+Remote mode can be used when doing remote line editing in a window manager, or
+whenever flow controlled input is required.
+.El
+.Sh FILES
+.Bl -tag -width Pa
+.It Pa /dev/pty[p-r][0-9a-f]
+Pseudo-terminal manager devices.
+.It Pa /dev/tty[p-r][0-9a-f]
+Pseudo-terminal subsidiary devices.
+.El
+.Sh SEE ALSO
+.Xr rlogin 1 ,
+.Xr posix_openpty 3C ,
+.Xr ptm 4D ,
+.Xr termio 4I ,
+.Xr ldterm 4M ,
+.Xr ttcompat 4M ,
+.Xr rlogind 8
+.Sh NOTES
+This is a legacy device and should not be used by new software.
+.Pp
+It is apparently not possible to send an
+.Sy EOT
+by writing zero bytes in
+.Dv TIOCREMOTE
+mode.
diff --git a/usr/src/man/man4d/qede.4d b/usr/src/man/man4d/qede.4d
new file mode 100644
index 0000000000..7bac4b7763
--- /dev/null
+++ b/usr/src/man/man4d/qede.4d
@@ -0,0 +1,100 @@
+.\"
+.\" This file and its contents are supplied under the terms of the
+.\" Common Development and Distribution License ("CDDL"), version 1.0.
+.\" You may only use this file in accordance with the terms of version
+.\" 1.0 of the CDDL.
+.\"
+.\" A full copy of the text of the CDDL should have accompanied this
+.\" source. A copy of the CDDL is also available via the Internet at
+.\" http://www.illumos.org/license/CDDL.
+.\"
+.\"
+.\" Copyright (c) 2014 QLogic Corporation. All Rights Reserved
+.\"
+.Dd January 10, 2020
+.Dt QEDE 4D
+.Os
+.Sh NAME
+.Nm qede
+.Nd QLogic FastLinQ QL45xxx 10/25/40/50/100 Gigabit Ethernet Driver
+.Sh SYNOPSIS
+.Pa /dev/net/qede*
+.Sh DESCRIPTION
+The
+.Nm
+Ethernet driver is a multi-threaded, loadable, clonable, GLDv3-based
+driver supporting the Data Link Provider Interface,
+.Xr dlpi 4P ,
+over QLogic FastLinQ QL45xxx 10/25/40/50/100 Gigabit Ethernet
+controllers.
+Multiple QLogic FastLinQ controllers installed within the system are
+supported by the driver.
+.Pp
+The
+.Nm
+driver provides support for the QLogic QL45xxx line of devices.
+Functions include chip initialization, frame transmit and receive,
+multicast and promiscuous support, error recovery and reporting.
+These devices provide 10000/25000/40000/50000/100000 Mbps networking
+interfaces.
+.Sh DRIVER CONFIGURATION
+The primary methods of configuration are via modification of the
+.Pa /kernel/drv/qede.conf
+file or execution of the
+.Xr dladm 8
+utility.
+There are many configuration items available and all are thoroughly
+documented in the
+.Pa /kernel/drv/qede.conf
+file.
+Note that for changes to this file to take affect the driver must be
+reloaded or the system rebooted.
+In order to reload the driver with new configuration changes all
+.Nm qede
+interfaces must be first unplumbed and then the
+.Xr update_drv 8
+tool must be executed.
+For the configuration items that do not require a driver reload the
+.Xr dladm 8
+tool can be used to dynamically change the option.
+Use of
+.Xr dladm 8
+is the preferred method.
+.Sh DEBUGGING
+.Ss kstat
+There are many statistics exposed via
+.Xr kstat 8
+by the
+.Nm
+driver.
+The main groups are:
+.Bl -tag -width Em
+.It Em intr
+for interrupts stats
+.It Em l2chip
+for layer 2 chip stats
+.It Em l2driver
+for layer 2 driver stats
+.It Em l2stats
+for general layer 2 stats
+.It Em link
+for detailed link status
+.It Em mac
+for GLDv3 MAC layer stats
+.It Em rxq#
+for Rx ring stats
+.It Em txq#
+for Tx ring stats
+.It Em stats
+for general driver stats and version info.
+.El
+.Pp
+To get a list of all the individual statistics in these groups run:
+.Bd -literal -offset indent
+# kstat -m qede -i 0 -l
+.Ed
+.Sh SEE ALSO
+.Xr dlpi 4P ,
+.Xr driver.conf 5 ,
+.Xr dladm 8 ,
+.Xr ifconfig 8
diff --git a/usr/src/man/man4d/qlc.4d b/usr/src/man/man4d/qlc.4d
new file mode 100644
index 0000000000..e6793fd362
--- /dev/null
+++ b/usr/src/man/man4d/qlc.4d
@@ -0,0 +1,127 @@
+'\" te
+.\" Copyright (c) 2005, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH QLC 4D "Feb 21, 2005"
+.SH NAME
+qlc \- ISP2200, ISP2300, and SP212 Family Fibre Channel host bus adapter
+driver.
+.SH SYNOPSIS
+.LP
+.nf
+SUNW,qlc
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBqlc\fR host bus adapter driver is a Sun Fibre Channel transport
+layer-compliant nexus driver for the Qlogic ISP2200, ISP2200A, ISP2310,
+ISP2312, and SP212 adapters. These adapters support Fibre Channel SCSI and IP
+Protocols, FC-AL public loop profile, point-to-point fabric connection and
+Fibre Channel service classes two and three (see NOTES section below).
+.sp
+.LP
+The \fBqlc\fR driver interfaces with the Sun Fibre Channel transport layer to
+support the standard functions provided by the SCSA interface. It supports
+auto request sense and tagged queueing by default. The driver requires that
+all devices have unique hard addresses in private loop configurations. Devices
+with conflicting hard addresses are not accessible.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/qlc\fR\fR
+.ad
+.RS 27n
+32-bit ELF kernel module (x86)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/qlc\fR\fR
+.ad
+.RS 27n
+64-bit ELF kernel module (x86)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/sparcv9/qlc\fR\fR
+.ad
+.RS 27n
+64-bit ELF kernel module (SPARC)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/qlc.conf\fR\fR
+.ad
+.RS 27n
+ Driver configuration file
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture SPARC, x86
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR fcp (4D),
+.BR fp (4D),
+.BR driver.conf (5),
+.BR prtconf (8)
+.sp
+.LP
+\fIWriting Device Drivers\fR
+.sp
+.LP
+\fIANSI X3.230:1994, Fibre Channel Physical Signaling (FC-PH)\fR
+.sp
+.LP
+\fIProject 1134-D, Fibre Channel Generic Services (FC-GS-2)\fR
+.sp
+.LP
+\fIANSI X3.269-1996, Fibre Channel Arbitrated Loop (FC-AL)\fR
+.sp
+.LP
+\fIANSI X3.270-1996, Fibre Channel Protocol for SCSI (FCP-SCSI)\fR
+.sp
+.LP
+\fIANSI X3.270-1996, SCSI-3 Architecture Model (SAM)\fR
+.sp
+.LP
+\fIFibre Channel Private Loop SCSI Direct Attach (FC-PLDA)\fR
+.sp
+.LP
+\fIFabric Loop Attachment (FC-FLA)\fR
+.sp
+.LP
+\fIISP2200 Firmware Interface Specification, QLogic Corporation\fR
+.sp
+.LP
+\fIISP2300 Series Firmware Specification, QLogic Corporation\fR
+.SH NOTES
+.sp
+.LP
+ SP-212-based host bus adapters (including QLA-210) are supported on x86
+platforms only and are limited to a maximum of 8 targets in fabric and sixteen
+targets in local loop topology. FL topology is not supported with the
+SP-212-based host bus adapter.
diff --git a/usr/src/man/man4d/ral.4d b/usr/src/man/man4d/ral.4d
new file mode 100644
index 0000000000..0c22de4fef
--- /dev/null
+++ b/usr/src/man/man4d/ral.4d
@@ -0,0 +1,84 @@
+'\" te
+.\" Copyright (c) 2006 Damien Bergamini
+.\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
+.\" DAMAGES OR ANY DAMAGES * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+.\" Portions Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved
+.TH RAL 4D "Jun 25, 2007"
+.SH NAME
+ral \- Ralink RT2500 802.11b/g Wireless driver
+.SH DESCRIPTION
+.sp
+.LP
+The \fBral\fR \fI802.11b/g\fR wireless NIC driver is a multi-threaded,
+loadable, clonable, GLDv3-based STREAMS driver supporting Ralink RT2500
+chipset-based NIC's.
+.SH CONFIGURATION
+.sp
+.LP
+The \fBral\fR driver performs auto-negotiation to determine the data rate and
+mode. Supported \fI802.11b\fR data rates are 1, 2, 5.5 and 11 Mbits/sec.
+Supported \fI802.11g\fR data rates are 1, 2, 5.5, 6, 9, 11, 12, 18, 24, 36, 48
+and 54 Mbits/sec. The \fBral\fR driver supports only BSS networks (also known
+as "ap" or "infrastructure" networks) and "open"(or "open-system") or "shared
+system" authentication.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/dev/ral*\fR\fR
+.ad
+.sp .6
+.RS 4n
+Special character device.
+.RE
+
+.sp
+.ne 2
+.na
+\fB/kernel/drv/ral\fR
+.ad
+.sp .6
+.RS 4n
+32-bit ELF kernel module (x86).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/ral\fR\fR
+.ad
+.sp .6
+.RS 4n
+64-bit ELF kernel module (x86).
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for a description of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture x86
+_
+Interface stability Committed
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR gld (4D),
+.BR dlpi (4P),
+.BR attributes (7),
+.BR dladm (8),
+.BR wificonfig (8)
+.sp
+.LP
+\fI802.11 - Wireless LAN Media Access Control and Physical Layer
+Specification\fR \(em IEEE, 2001
diff --git a/usr/src/man/man4d/ramdisk.4d b/usr/src/man/man4d/ramdisk.4d
new file mode 100644
index 0000000000..9c987d68f3
--- /dev/null
+++ b/usr/src/man/man4d/ramdisk.4d
@@ -0,0 +1,200 @@
+'\" te
+.\" Copyright (c) 2003, Sun Microsystems, Inc.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH RAMDISK 4D "Mar 04, 2003"
+.SH NAME
+ramdisk \- RAM disk device driver
+.SH SYNOPSIS
+.LP
+.nf
+\fBramdisk@0:\fR\fIdiskname\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBramdisk\fR driver supports numerous ramdisk devices that are created by
+the system during the boot process (see \fBboot\fR(8)) or during normal
+system operation (see \fBramdiskadm\fR(8) for more information).
+.SH DEVICE SPECIAL FILES
+.sp
+.LP
+Each ramdisk can be accessed either as a block device or as a raw device. When
+accessed as a block device, the normal buffering mechanism is used
+when reading from and writing to the device, without regard to physical disk
+records. Accessing the ramdisk as a raw device enables direct transmission
+between the disk and the read or write buffer. A single read or write call
+usually results in a single I/O operation, meaning that raw I/O is more
+efficient when many bytes are transmitted. You can find block files names in
+\fB/dev/ramdisk\fR. Raw file names are found in \fB/dev/rramdisk\fR.
+.sp
+.LP
+There are no alignment or length restrictions on I/O requests to either block
+or character devices.
+.SH ERRORS
+.sp
+.ne 2
+.na
+\fB\fBEFAULT\fR\fR
+.ad
+.RS 10n
+The argument features a bad address.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEINVAL\fR\fR
+.ad
+.RS 10n
+Invalid argument. EIO. An I/O error occurred.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEPERM\fR\fR
+.ad
+.RS 10n
+Cannot create or delete a ramdisk without write permission on
+\fB/dev/ramdiskctl\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBENOTTY\fR\fR
+.ad
+.RS 10n
+The device does not support the requested ioctl function.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBENXIO\fR\fR
+.ad
+.RS 10n
+The device did not exist during opening.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEBUSY\fR\fR
+.ad
+.RS 10n
+Cannot exclusively open \fB/dev/ramdiskctl\fR. One or more ramdisks are still
+open.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEEXIST\fR\fR
+.ad
+.RS 10n
+A ramdisk with the indicated name already exists.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEAGAIN\fR\fR
+.ad
+.RS 10n
+Cannot allocate resource for ramdisk. Try again later.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/dev/ramdisk/diskname\fR\fR
+.ad
+.sp .6
+.RS 4n
+Block device for ramdisk named \fIdiskname\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/rramdisk/diskname\fR\fR
+.ad
+.sp .6
+.RS 4n
+Raw device for ramdisk name \fIdiskname\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/ramdisk\fR\fR
+.ad
+.sp .6
+.RS 4n
+32-bit driver
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/ramdisk.conf\fR\fR
+.ad
+.sp .6
+.RS 4n
+Driver configuration file. (Do not alter).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/sparcv9/ramdisk\fR\fR
+.ad
+.sp .6
+.RS 4n
+64-bit driver
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attribute:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR dkio (4I),
+.BR driver.conf (5),
+.BR filesystem (7),
+.BR fsck (8),
+.BR fstyp (8),
+.BR mount (8),
+.BR newfs (8),
+.BR ramdiskadm (8)
+.SH NOTES
+.sp
+.LP
+The percentage of available physical memory that can be allocated to ramdisks
+is constrained by the variable \fBrd_percent_physmem\fR. You can tune the
+\fBrd_percent_physmem\fR variable in \fB/etc/system\fR. By default, the
+percentage of available physical memory that can be allocated to ramdisks is
+fixed at 25%.
+.sp
+.LP
+A ramdisk may not be the best possible use of system memory. Accordingly, use
+ramdisks only when absolutely necessary.
diff --git a/usr/src/man/man4d/random.4d b/usr/src/man/man4d/random.4d
new file mode 100644
index 0000000000..73e4174c7b
--- /dev/null
+++ b/usr/src/man/man4d/random.4d
@@ -0,0 +1,160 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH RANDOM 4D "Sep 1, 2008"
+.SH NAME
+random, urandom \- Strong random number generator device
+.SH SYNOPSIS
+.LP
+.nf
+/dev/random
+.fi
+
+.LP
+.nf
+/dev/urandom
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fB/dev/random\fR and \fB/dev/urandom\fR files are special files that are a
+source for random bytes generated by the kernel random number generator device.
+The \fB/dev/random\fR and \fB/dev/urandom\fR files are suitable for
+applications requiring high quality random numbers for cryptographic purposes.
+.sp
+.LP
+The generator device produces random numbers from data and devices available to
+the kernel and estimates the amount of randomness (or "entropy") collected
+from these sources. The entropy level determines the amount of high quality
+random numbers that are produced at a given time.
+.sp
+.LP
+Applications retrieve random bytes by reading \fB/dev/random\fR or
+\fB/dev/urandom\fR. The \fB/dev/random\fR interface returns random bytes only
+when sufficient amount of entropy has been collected. If there is no entropy to
+produce the requested number of bytes, \fB/dev/random\fR blocks until more
+entropy can be obtained. Non-blocking I/O mode can be used to disable the
+blocking behavior. The \fB/dev/random\fR interface also supports \fBpoll\fR(2).
+Note that using \fBpoll\fR(2) will not increase the speed at which random
+numbers can be read.
+.sp
+.LP
+Bytes retrieved from \fB/dev/random\fR provide the highest quality random
+numbers produced by the generator, and can be used to generate long term keys
+and other high value keying material.
+.sp
+.LP
+The \fB/dev/urandom\fR interface returns bytes regardless of the amount of
+entropy available. It does not block on a read request due to lack of entropy.
+While bytes produced by the \fB/dev/urandom\fR interface are of lower quality
+than bytes produced by \fB/dev/random\fR, they are nonetheless suitable for
+less demanding and shorter term cryptographic uses such as short term session
+keys, paddings, and challenge strings.
+.sp
+.LP
+Data can be written to \fB/dev/random\fR and \fB/dev/urandom\fR. Data written
+to either special file is added to the generator's internal state. Data that is
+difficult to predict by other users may contribute randomness to the generator
+state and help improve the quality of future generated random numbers.
+.sp
+.LP
+\fB/dev/random\fR collects entropy from providers that are registered with the
+kernel-level cryptographic framework and implement random number generation
+routines. The \fBcryptoadm\fR(8) utility allows an administrator to configure
+which providers will be used with \fB/dev/random\fR.
+.SH ERRORS
+.sp
+.ne 2
+.na
+\fB\fBEAGAIN\fR\fR
+.ad
+.RS 11n
+\fBO_NDELAY\fR or \fBO_NONBLOCK\fR was set and no random bytes are available
+for reading from \fB/dev/random\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEINTR\fR\fR
+.ad
+.RS 11n
+A signal was caught while reading and no data was transferred.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBENOXIO \fR\fR
+.ad
+.RS 11n
+\fBopen\fR(2) request failed on \fB/dev/random\fR because no entropy provider
+is available.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/dev/random\fR\fR
+.ad
+.RS 16n
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/urandom\fR\fR
+.ad
+.RS 16n
+
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR open (2),
+.BR poll (2),
+.BR attributes (7),
+.BR cryptoadm (8)
+.SH NOTES
+.sp
+.LP
+\fB/dev/random\fR can be configured to use only the hardware-based providers
+registered with the kernel-level cryptographic framework by disabling the
+software-based provider using \fBcryptoadm\fR(8). You can also use
+\fBcryptoadm\fR(8) to obtain the name of the software-based provider.
+.sp
+.LP
+Because no entropy is available, disabling all randomness providers causes
+\fBread\fR(2) and \fBpoll\fR(2) on \fB/dev/random\fR to block indefinitely and
+results in a warning message being logged and displayed on the system console.
+However, \fBread\fR(2) and \fBpoll\fR(2) on \fB/dev/urandom\fR continue to work
+in this case.
+.sp
+.LP
+An implementation of the \fB/dev/random\fR and \fB/dev/urandom\fR kernel-based
+random number generator first appeared in Linux 1.3.30.
+.sp
+.LP
+A \fB/dev/random\fR interface for Solaris first appeared as part of the
+CryptoRand implementation.
diff --git a/usr/src/man/man4d/rge.4d b/usr/src/man/man4d/rge.4d
new file mode 100644
index 0000000000..c675df53ff
--- /dev/null
+++ b/usr/src/man/man4d/rge.4d
@@ -0,0 +1,234 @@
+'\" te
+.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH RGE 4D "Dec 21, 2007"
+.SH NAME
+rge \- Realtek Gigabit/Fast Ethernet Network Adapter driver
+.SH SYNOPSIS
+.LP
+.nf
+/dev/rge
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBrge\fR Gigabit/Fast Ethernet driver is a multi-threaded, loadable,
+clonable, GLD-based STREAMS driver supporting the Data Link Provider
+Interface, \fBdlpi\fR(4P), on the Realtek Gigabit/Fast Ethernet Network
+Adapter.
+.sp
+.LP
+The \fBrge\fR driver functions includes controller initialization, frame
+transmit and receive, promiscuous and multicast support, and error recovery and
+reporting.
+.SH APPLICATION PROGRAMMING INTERFACE
+.sp
+.LP
+The cloning, character-special device \fB/dev/rge\fR is used to access all
+Realtek Gigabit/Fast Ethernet devices installed within the system.
+.sp
+.LP
+The \fBrge\fR driver is managed by the \fBdladm\fR(8) command line utility,
+which allows VLANs to be defined on top of \fBrge\fR instances and for
+\fBrge\fR instances to be aggregated. See \fBdladm\fR(8) for more details.
+.sp
+.LP
+The values returned by the driver in the DL_INFO_ACK primitive in response to
+the DL_INFO_REQ are as follows:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Maximum SDU (with jumbo frame) is \fB7000\fR.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Minimum SDU is \fB0\fR.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBDSLAP\fR address length is \fB8\fR bytes.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBMAC\fR type is \fBDL_ETHER.\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBSAP\fR length value is -2, meaning the physical address component is
+followed immediately by a 2-byte sap component within the DLSAP address.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Broadcast address value is Ethernet/IEEE broadcast address
+(FF:FF:FF:FF:FF:FF).
+.RE
+.sp
+.LP
+Once in the DL_ATTACHED state, you must send a DL_BIND_REQ to associate a
+particular Service Access Point (SAP) with the stream.
+.SH CONFIGURATION
+.sp
+.LP
+By default, the \fBrge\fR driver performs auto-negotiation to select the link
+speed and mode. Link speed and mode can be any one of the following:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+1000 Mbps, full-duplex
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+100 Mbps, full-duplex
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+100 Mbps, half-duplex
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+10 Mbps, full-duplex
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+10 Mbps, half-duplex
+.RE
+.sp
+.LP
+Alternatively, you can set the capabilities advertised by the \fBrge\fR device
+using \fBndd\fR(8). The driver supports a number of parameters whose names
+begin with \fBadv_\fR. Each of these parameters contains a boolean value that
+determines if the device advertises that mode of operation. The
+\fIadv_pause_cap\fR indicates if half/full duplex pause is advertised to link
+partner. You can set \fIadv_asym_pause_cap\fR to advertise to the link partner
+that asymmetric pause is desired.
+.sp
+.LP
+For example, to prevent the device 'rge2' from advertising gigabit
+capabilities, enter (as super-user):
+.sp
+.in +2
+.nf
+# ndd -set /dev/rge2 adv_1000fdx_cap 0
+.fi
+.in -2
+
+.sp
+.LP
+All capabilities default to enabled. Note that changing any capability
+parameter causes the link to go down while the link partners renegotiate the
+link speed/duplex using the newly changed capabilities.
+.sp
+.LP
+You can find the current parameter settings by using \fBndd\fR \fB-get\fR. In
+addition, the driver exports the current state, speed, duplex setting, and
+working mode of the link via \fBndd\fR parameters (these are read only and may
+not be changed). For example, to check link state of device \fBrge0\fR:
+.sp
+.in +2
+.nf
+# ndd -get /dev/rge0 link_status
+1
+# ndd -get /dev/rge0 link_speed
+100
+# ndd -get /dev/rge0 link_duplex
+2
+.fi
+.in -2
+
+.sp
+.LP
+The output above indicates that the link is up and running at 100Mbps
+full-duplex. In addition, the driver exports its working mode by
+\fIloop_mode\fR. If it is set to 0, the loopback mode is disabled.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/dev/rge*\fR\fR
+.ad
+.RS 27n
+Character special device.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/rge\fR\fR
+.ad
+.RS 27n
+32-bit x86 \fBrge\fR driver binary.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/rge\fR\fR
+.ad
+.RS 27n
+64-bit x86 \fBrge\fR driver binary.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/sparcv9/rge\fR\fR
+.ad
+.RS 27n
+SPARC \fBrge\fR driver binary.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for a description of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture SPARC, x86
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR streamio (4I),
+.BR dlpi (4P),
+.BR attributes (7),
+.BR dladm (8)
+.sp
+.LP
+\fIWriting Device Drivers\fR
+.sp
+.LP
+\fISTREAMS Programming Guide\fR
+.sp
+.LP
+\fINetwork Interfaces Programmer's Guide\fR
diff --git a/usr/src/man/man4d/rtls.4d b/usr/src/man/man4d/rtls.4d
new file mode 100644
index 0000000000..b3988d0da3
--- /dev/null
+++ b/usr/src/man/man4d/rtls.4d
@@ -0,0 +1,62 @@
+.\" Copyright 2014 Garrett D'Amore <garrett@damore.org>
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\" notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\" notice, this list of conditions and the following disclaimer in the
+.\" documentation and/or other materials provided with the distribution.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER AND CONTRIBUTORS
+.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+.\" LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+.\" FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+.\" COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
+.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
+.\" USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
+.\" ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE
+.\"
+.Dd "Aug 3, 2014"
+.Dt RTLS 4D
+.Os
+.Sh NAME
+.Nm rtls
+.Nd RealTek Fast Ethernet device driver
+.Sh SYNOPSIS
+.Pa /dev/rtls
+.Sh DESCRIPTION
+The
+.Nm
+driver provides support for the RealTek 8139 family of Fast Ethernet
+PCI controllers.
+.Lp
+These devices generally support the standard Fast Ethernet features, including
+10BASE-T and 100BASE-TX, both full and half duplex operation, IEEE 802.3
+autonegotiation, etc.
+They also support full size MTUs (1500 bytes), even when used with VLANs.
+.
+.Lp
+The device driver supports the
+.Xr ieee802.3 7
+properties, which can be configured with
+.Xr dladm 8 .
+.
+.Sh FILES
+.Bl -tag -width /dev/rtls
+.It Pa /dev/rtls
+Special character device.
+.El
+.Sh SEE ALSO
+.Xr dlpi 4P ,
+.Xr pci 5 ,
+.Xr ieee802.3 7 ,
+.Xr dladm 8 ,
+.Xr ifconfig 8
+.Rs
+.%T IEEE 802.3: Ethernet
+.%Q IEEE Standards Association
+.Re
diff --git a/usr/src/man/man4d/rtw.4d b/usr/src/man/man4d/rtw.4d
new file mode 100644
index 0000000000..c0eb108bbf
--- /dev/null
+++ b/usr/src/man/man4d/rtw.4d
@@ -0,0 +1,86 @@
+'\" te
+.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH RTW 4D "Jul 12, 2007"
+.SH NAME
+rtw \- RealTek 8180L 802.11b Wireless NIC driver
+.SH DESCRIPTION
+.sp
+.LP
+The \fBrtw\fR \fI802.11b\fR wireless NIC driver is a multi-threaded, loadable,
+clonable, GLDv3-based STREAMS driver supporting RealTek 8180L chipset-based
+NIC's.
+.SH CONFIGURATION
+.sp
+.LP
+The \fBrtw\fR driver performs auto-negotiation to determine the data rate and
+mode. Supported \fI802.11b\fR data rates are 1, 2, 5.5 and 11 Mbits/sec. The
+default is 11.
+.sp
+.LP
+The \fBrtw\fR driver supports only BSS networks (also known as "ap" or
+"infrastructure" networks) and "open"(or "open-system") or "shared system"
+authentication.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/dev/rtw*\fR\fR
+.ad
+.sp .6
+.RS 4n
+Special character device.
+.RE
+
+.sp
+.ne 2
+.na
+\fB/kernel/drv/rtw\fR
+.ad
+.sp .6
+.RS 4n
+32-bit ELF kernel module (x86).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/rtw\fR\fR
+.ad
+.sp .6
+.RS 4n
+64-bit ELF kernel module (x86).
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for a description of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture x86
+_
+Interface stability Committed
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR gld (4D),
+.BR dlpi (4P),
+.BR attributes (7),
+.BR dladm (8),
+.BR wificonfig (8)
+.sp
+.LP
+\fI802.11 - Wireless LAN Media Access Control and Physical Layer
+Specification\fR \(em IEEE, 2001
diff --git a/usr/src/man/man4d/rum.4d b/usr/src/man/man4d/rum.4d
new file mode 100644
index 0000000000..d95145df3b
--- /dev/null
+++ b/usr/src/man/man4d/rum.4d
@@ -0,0 +1,84 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH RUM 4D "Oct 29, 2008"
+.SH NAME
+rum \- Ralink RT2501/RT2601/RT73USB 802.11b/g Wireless Driver
+.SH DESCRIPTION
+.sp
+.LP
+The \fBrum\fR \fI802.11b/g\fR wireless NIC driver is a multi-threaded,
+loadable, clonable, GLDv3-based STREAMS driver supporting the Ralink
+RT2501/RT2601/RT73USB chipset-based NIC's.
+.SH CONFIGURATION
+.sp
+.LP
+The \fBrum\fR driver performs auto-negotiation to determine the data rate and
+mode. Supported 802.11b data rates are 1, 2, 5.5 and 11 Mbits/sec.
+Supported 802.11g data rates are 1, 2, 5.5, 11, 6, 9, 12, 18, 24, 36, 48 and 54
+Mbits/sec. The \fBrum\fR driver supports only BSS networks (also known as "ap"
+or "infrastructure" networks) and "open" (or "open-system") or "shared system"
+authentication.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/dev/rum*\fR\fR
+.ad
+.sp .6
+.RS 4n
+Special character device.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/rum\fR\fR
+.ad
+.sp .6
+.RS 4n
+32-bit ELF kernel module. (x86)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/rum\fR\fR
+.ad
+.sp .6
+.RS 4n
+64-bit ELF kernel module. (x86)
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for a description of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture x86
+_
+Interface Stability Committed
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR gld (4D),
+.BR dlpi (4P),
+.BR attributes (7),
+.BR dladm (8),
+.BR wificonfig (8)
+.sp
+.LP
+\fI802.11 - Wireless LAN Media Access Control and Physical Layer
+Specification\fR - IEEE, 2001
diff --git a/usr/src/man/man4d/rwd.4d b/usr/src/man/man4d/rwd.4d
new file mode 100644
index 0000000000..5edcbaeb88
--- /dev/null
+++ b/usr/src/man/man4d/rwd.4d
@@ -0,0 +1,80 @@
+'\" te
+.\" Copyright (c) 2009, Sun Microsystems Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
+.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH RWD 4D "Jun 18, 2009"
+.SH NAME
+rwd \- Ralink RT2561/RT2561S/RT2661 IEEE802.11b/g wireless network driver
+.SH DESCRIPTION
+.sp
+.LP
+The rwd IEEE802.11b/g wireless network driver is a multithreaded, loadable,
+clonable, GLDv3-based STREAMS driver supporting Ralink RT2561/RT2561S/RT2661
+IEEE802.11b/g wireless network driver.
+.SH CONFIGURATION
+.sp
+.LP
+The \fBrwd\fR driver performs auto-negotiation to determine the data rate and
+mode. The driver supports only BSS networks (also known as "ap" or
+"infrastructure" networks) and "open"(or "open-system") or "shared system"
+authentication. For wireless security, WEP encryption, WPA-PSk, and WPA2-PSK
+are currently supported. You can perform configuration and administration tasks
+using the \fBdladm\fR(8)and \fBwificonfig\fR(8) utilities.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/dev/rwd\fR\fR
+.ad
+.RS 25n
+Special character device
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/rwd\fR\fR
+.ad
+.RS 25n
+32-bit ELF kernel module (x86)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/rwd\fR\fR
+.ad
+.RS 25n
+64-bit ELF kernel module (x86)
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture x86
+_
+Interface Stability Committed
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR gld (4D),
+.BR dlpi (4P),
+.BR attributes (7),
+.BR dladm (8),
+.BR wificonfig (8)
+.sp
+.LP
+IEEE802.11b/g - Wireless LAN Standard - IEEE, 2003
diff --git a/usr/src/man/man4d/rwn.4d b/usr/src/man/man4d/rwn.4d
new file mode 100644
index 0000000000..9458422eac
--- /dev/null
+++ b/usr/src/man/man4d/rwn.4d
@@ -0,0 +1,79 @@
+'\" te
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH RWN 4D "Mar 30, 2009"
+.SH NAME
+rwn \- Ralink RT2700/2800 IEEE802.11 a/b/g/n wireless network device
+.SH DESCRIPTION
+.sp
+.LP
+The \fBrwn\fR IEEE802.11 a/b/g/n wireless driver is a multi-threaded, loadable,
+clonable, GLDv3-based STREAMS driver supporting Ralink RT2700/RT2800 IEEE802.11
+a/b/g/n wireless network device.
+.SS "Configuration"
+.sp
+.LP
+The \fBrwn\fR driver performs auto-negotiation to determine the data rate and
+mode. The driver supports only BSS networks (also known as \fBap\fR or
+\fBinfrastructure\fR networks) and \fBopen\fR (\fBopen-system\fR) or \fBshared
+system\fR authentication.
+.sp
+.LP
+For wireless security, WEP encryption, WPA-PSK, and WPA2-PSK are currently
+supported. You can perform configuration and administration tasks using the
+\fBdladm\fR(8) and \fBwificonfig\fR(8) utilities.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/dev/rwn\fR\fR
+.ad
+.RS 25n
+Special character device
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/rwn\fR\fR
+.ad
+.RS 25n
+32-bit ELF kernel module, x86
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/rwn\fR\fR
+.ad
+.RS 25n
+64-bit ELF kernel module, x86
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Committed
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7),
+.BR dladm (8),
+.BR wificonfig (8)
+.sp
+.LP
+\fIIEEE802.11b/g - Wireless LAN Standard - IEEE, 2003\fR
diff --git a/usr/src/man/man4d/sad.4d b/usr/src/man/man4d/sad.4d
new file mode 100644
index 0000000000..859a865f2b
--- /dev/null
+++ b/usr/src/man/man4d/sad.4d
@@ -0,0 +1,325 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 1997, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SAD 4D "Apr 16, 1997"
+.SH NAME
+sad \- STREAMS Administrative Driver
+.SH SYNOPSIS
+.LP
+.nf
+#include <sys/types.h>
+.fi
+
+.LP
+.nf
+#include <sys/conf.h>
+.fi
+
+.LP
+.nf
+#include <sys/sad.h>
+.fi
+
+.LP
+.nf
+#include <sys/stropts.h>
+.fi
+
+.LP
+.nf
+\fBint\fR \fBioctl\fR\fB(int\fR \fIfildes\fR, \fBint\fR \fIcommand\fR, \fBint \fR\fIarg\fR);
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBSTREAMS\fR Administrative Driver provides an interface for
+applications to perform administrative operations on \fBSTREAMS\fR modules and
+drivers. The interface is provided through \fBioctl\fR(2) commands. Privileged
+operations may access the \fBsad\fR driver using \fB/dev/sad/admin\fR.
+Unprivileged operations may access the \fBsad\fR driver using
+\fB/dev/sad/user\fR.
+.sp
+.LP
+The \fIfildes\fR argument is an open file descriptor that refers to the
+\fBsad\fR driver. The \fBcommand\fR argument determines the control function
+to be performed as described below. The \fIarg\fR argument represents
+additional information that is needed by this command. The type of \fIarg\fR
+depends upon the command, but it is generally an integer or a pointer to a
+\fBcommand\fR-specific data structure.
+.SH COMMAND FUNCTIONS
+.sp
+.LP
+The autopush facility (see \fBautopush\fR(8)) allows one to configure a list
+of modules to be automatically pushed on a stream when a driver is first
+opened. Autopush is controlled by the following commands:
+.sp
+.ne 2
+.na
+\fB\fBSAD_SAP\fR\fR
+.ad
+.RS 11n
+Allows the administrator to configure the given device's autopush information.
+\fIarg\fR points to a \fBstrapush\fR structure, which contains the following
+members:
+.sp
+.in +2
+.nf
+ unit_t ap_cmd;
+ major_t sap_major;
+ minor_t sap_minor;
+ minor_t sap_lastminor;
+ unit_t sap_npush;
+ unit_t sap_list [MAXAPUSH] [FMNAMESZ + 1];
+.fi
+.in -2
+
+The \fBsap_cmd\fR field indicates the type of configuration being done. It may
+take on one of the following values:
+.sp
+.ne 2
+.na
+\fB\fBSAP_ONE\fR\fR
+.ad
+.RS 13n
+Configure one minor device of a driver.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSAP_RANGE\fR\fR
+.ad
+.RS 13n
+Configure a range of minor devices of a driver.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSAP_ALL\fR\fR
+.ad
+.RS 13n
+Configure all minor devices of a driver.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSAP_CLEAR\fR\fR
+.ad
+.RS 13n
+Undo configuration information for a driver.
+.RE
+
+The \fBsap_major\fR field is the major device number of the device to be
+configured. The \fBsap_minor\fR field is the minor device number of the device
+to be configured. The \fBsap_lastminor\fR field is used only with the
+\fBSAP_RANGE\fR command, which configures a range of minor devices between
+\fBsap_minor\fR and \fBsap_lastminor\fR, inclusive. The minor fields have no
+meaning for the \fBSAP_ALL\fR command. The \fBsap_npush\fR field indicates
+the number of modules to be automatically pushed when the device is opened. It
+must be less than or equal to \fBMAXAPUSH\fR \fB,\fR defined in \fBsad.h\fR.
+It must also be less than or equal to \fBNSTRPUSH,\fR the maximum number of
+modules that can be pushed on a stream, defined in the kernel master file. The
+field \fBsap_list\fR is an array of NULL-terminated module names to be pushed
+in the order in which they appear in the list.
+.sp
+When using the \fBSAP_CLEAR\fR command, the user sets only \fBsap_major\fR
+and \fBsap_minor\fR. This will undo the configuration information for any of
+the other commands. If a previous entry was configured as \fBSAP_ALL,
+sap_minor\fR should be set to zero. If a previous entry was configured as
+\fBSAP_RANGE\fR \fB, sap_minor\fR should be set to the lowest minor device
+number in the range configured.
+.sp
+On failure, \fBerrno\fR is set to the following value:
+.sp
+.ne 2
+.na
+\fB\fBEFAULT\fR\fR
+.ad
+.RS 10n
+\fIarg\fR points outside the allocated address space.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEINVAL\fR\fR
+.ad
+.RS 10n
+The major device number is invalid, the number of modules is invalid, or the
+list of module names is invalid.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBENOSTR\fR\fR
+.ad
+.RS 10n
+The major device number does not represent a \fBSTREAMS\fR driver.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEEXIST\fR\fR
+.ad
+.RS 10n
+The major-minor device pair is already configured.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBERANGE\fR\fR
+.ad
+.RS 10n
+The command is \fBSAP_RANGE\fR and \fBsap_lastminor\fR is not greater than
+\fBsap_minor\fR, or the command is \fBSAP_CLEAR\fR and \fBsap_minor\fR is not
+equal to the first minor in the range.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBENODEV\fR\fR
+.ad
+.RS 10n
+The command is \fBSAP_CLEAR\fR and the device is not configured for autopush.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBENOSR\fR\fR
+.ad
+.RS 10n
+An internal autopush data structure cannot be allocated.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSAD_GAP\fR\fR
+.ad
+.RS 11n
+Allows any user to query the \fBsad\fR driver to get the autopush
+configuration information for a given device. \fIarg\fR points to a
+\fBstrapush\fR structure as described in the previous command.
+.sp
+The user should set the \fBsap_major\fR and \fBsap_minor\fR fields of the
+\fBstrapush\fR structure to the major and minor device numbers, respectively,
+of the device in question. On return, the \fBstrapush\fR structure will be
+filled in with the entire information used to configure the device. Unused
+entries in the module list will be zero-filled.
+.sp
+On failure, \fBerrno\fR is set to one of the following values:
+.sp
+.ne 2
+.na
+\fB\fBEFAULT\fR\fR
+.ad
+.RS 10n
+\fIarg\fR points outside the allocated address space.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEINVAL\fR\fR
+.ad
+.RS 10n
+The major device number is invalid.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBENOSTR\fR\fR
+.ad
+.RS 10n
+The major device number does not represent a \fBSTREAMS\fR driver.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBENODEV\fR\fR
+.ad
+.RS 10n
+The device is not configured for autopush.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSAD_VML\fR\fR
+.ad
+.RS 11n
+Allows any user to validate a list of modules (that is, to see if they are
+installed on the system). \fIarg\fR is a pointer to a \fBstr_list\fR structure
+with the following members:
+.sp
+.in +2
+.nf
+int sl_nmods;
+ struct str_mlist *sl_modlist;
+.fi
+.in -2
+
+The \fBstr_mlist\fR structure has the following member:
+.sp
+.in +2
+.nf
+char l_name[FMNAMESZ+1];
+.fi
+.in -2
+
+\fBsl_nmods\fR indicates the number of entries the user has allocated in the
+array and \fBsl_modlist\fR points to the array of module names. The return
+value is 0 if the list is valid, 1 if the list contains an invalid module name,
+or \(mi1 on failure. On failure, \fBerrno\fR is set to one of the following
+values:
+.sp
+.ne 2
+.na
+\fB\fBEFAULT\fR\fR
+.ad
+.RS 10n
+\fIarg\fR points outside the allocated address space.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEINVAL\fR\fR
+.ad
+.RS 10n
+The \fBsl_nmods\fR field of the \fBstr_list\fR structure is less than or
+equal to zero.
+.RE
+
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR Intro (2),
+.BR ioctl (2),
+.BR open (2)
+.sp
+.LP
+\fISTREAMS Programming Guide\fR
+.SH DIAGNOSTICS
+.sp
+.LP
+Unless otherwise specified, the return value from \fBioctl()\fR is \fB0\fR
+upon success and \fB\(mi1\fR upon failure with \fBerrno\fR set as indicated.
diff --git a/usr/src/man/man4d/sata.4d b/usr/src/man/man4d/sata.4d
new file mode 100644
index 0000000000..af3241c377
--- /dev/null
+++ b/usr/src/man/man4d/sata.4d
@@ -0,0 +1,339 @@
+'\" te
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License").You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SATA 4D "May 13, 2017"
+.SH NAME
+sata \- Solaris SATA framework
+.SH DESCRIPTION
+.LP
+Serial ATA is an interconnect technology designed to replace parallel ATA
+technology. It is used to connect hard drives, optical drives, removable
+magnetic media devices and other peripherals to the host system. For complete
+information on Serial ATA technology, visit the Serial ATA web site at
+http://\fIwww.serialata.org\fR.
+.sp
+.LP
+Up to 32 SATA devices may be plugged directly to each SATA HBA and up to 15
+SATA devices may be plugged directly to each SATA port multiplier supported by
+the Solaris SATA framework. The actual number of pluggable devices may be lower,
+and is limited by the number of device ports on the SATA HBA or the SATA port
+multiplier. The maximum data rate is either 1.5Gb/sec. or 3.0Gb/sec., depending
+on the capability of a SATA device, port multiplier and SATA HBA controller.
+.sp
+.LP
+The Solaris SATA framework adheres to the \fISerial ATA 1.0a\fR specification
+and supports SATA-2 signaling speed 3.0Gb/sec. SATA devices that are connected
+to SATA HBAs controlled by a SATA framework-compliant HBA driver are treated by
+the system as SCSI devices. The Solaris SCSI disk driver (\fBsd\fR(4D)) is
+attached as a target driver for each device node created by the SATA framework.
+You can use the \fBcfgadm\fR(8) utility to manage hot plugged and unplugged
+SATA devices.
+.SH FILES
+.ne 2
+.na
+\fB\fB/kernel/misc/sata\fR\fR
+.ad
+.RS 27n
+32-bit \fBELF\fR kernel module (x86).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/misc/amd64/sata\fR\fR
+.ad
+.RS 27n
+64-bit \fBELF\fR kernel module (x86).
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attribute:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture x86
+.TE
+
+.SH SEE ALSO
+.LP
+.BR ahci (4D),
+.BR nv_sata (4D),
+.BR sd (4D),
+.BR si3124 (4D),
+.BR attributes (7),
+.BR cfgadm (8),
+.BR cfgadm_sata (8),
+.BR prtconf (8)
+.sp
+.LP
+\fISerial ATA 1.0a Specification\fR \(em Serial ATA International Organization.
+.sp
+.LP
+\fISerial ATA II (Extension to Serial ATA 1.0.a.)\fR \(em Serial ATA
+International Organization.
+.SH DIAGNOSTICS
+.LP
+The messages described below may appear on the system console as well as being
+logged. All messages are presented in one of the following formats and are
+followed by the diagnostic message:
+.sp
+.in +2
+.nf
+sata: WARNING: <\fBcontroller/devices/.. path\fR>:
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+or:
+.sp
+.in +2
+.nf
+sata: NOTICE: <\fBcontroller/devices/.. path\fR>:
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+\&...where <\fBcontroller/devices/.. path\fR> identifies a specific SATA HBA
+issuing a diagnostic message shown below.
+.sp
+.ne 2
+.na
+\fBSATA port X: link lost.\fR
+.ad
+.sp .6
+.RS 4n
+Communication (via serial link) between the HBA and the device plugged to the
+specified SATA device port has been lost.
+.RE
+
+.sp
+.ne 2
+.na
+\fBSATA port X: link established.\fR
+.ad
+.sp .6
+.RS 4n
+Communication (via serial link) between the HBA and the device plugged to the
+specified SATA device port has been established.
+.RE
+
+.sp
+.ne 2
+.na
+\fBSATA port X: device reset.\fR
+.ad
+.sp .6
+.RS 4n
+The device plugged to the specified SATA device port has been reset. The reset
+may be due to a communication or command error, command timeout, or an explicit
+request from the host.
+.RE
+
+.sp
+.ne 2
+.na
+\fBSATA port X failed.\fR
+.ad
+.sp .6
+.RS 4n
+The specified SATA device port failed and is in an unusable state. You can
+change the port state by deactivating the port and activating it again using
+cfgadm SATA hardware-specific commands (see \fBcfgadm_sata\fR(8)).
+.RE
+
+.sp
+.ne 2
+.na
+\fBSATA port X error.\fR
+.ad
+.sp .6
+.RS 4n
+An error was detected in specified SATA device port operations.
+.RE
+
+.sp
+.ne 2
+.na
+\fBSATA device detached at port X.\fR
+.ad
+.sp .6
+.RS 4n
+Communication (via serial link) between the HBA and the device plugged to the
+specified SATA device port has been lost and could not be re-established. The
+SATA framework assumes that the device is unplugged from the specified SATA
+device port.
+.RE
+
+.sp
+.ne 2
+.na
+\fBSATA device detected at port X.\fR
+.ad
+.sp .6
+.RS 4n
+Communication( via serial link) between the HBA and the device plugged to the
+specified empty SATA device port has been established. The SATA framework
+assumes that the new device is plugged to the specified SATA device port.
+.RE
+
+.sp
+.ne 2
+.na
+\fBSATA disk device at port X.\fR
+.ad
+.sp .6
+.RS 4n
+This message is followed by a disk description specifying the disk vendor,
+serial number, firmware revision number and the disk capabilities.
+.RE
+
+.sp
+.ne 2
+.na
+\fBSATA CD/DVD (ATAPI) device at port X.\fR
+.ad
+.sp .6
+.RS 4n
+This message is followed by a SATA CD/DVD description specifying the DVD
+vendor, serial number, firmware revision number and the DVD capabilities.
+.RE
+
+.sp
+.ne 2
+.na
+\fBSATA device at port X cannot be configured. Application(s) accessing
+previously attached device have to release it before newly inserted device can
+be made accessible.\fR
+.ad
+.sp .6
+.RS 4n
+The port cannot be configured because there is application using the previous
+attached device, so the application must release it, then the newly inserted
+device can be configured.
+.RE
+
+.sp
+.ne 2
+.na
+\fBApplication(s) accessing previously attached SATA device have to release it
+before newly inserted device can be made accessible.\fR
+.ad
+.sp .6
+.RS 4n
+The target node remained and it belongs to a previously attached device. This
+happens when the file was open or the node was waiting for resources at the
+time the associated device was removed. Instruct event daemon to retry the
+cleanup later.
+.RE
+
+.sp
+.ne 2
+.na
+\fBsata: error recovery request for non-attached device at cport X.\fR
+.ad
+.sp .6
+.RS 4n
+When error recovery is requested, the device is not yet attached.
+.RE
+
+.sp
+.ne 2
+.na
+\fBSATA device at port X is not power-managed.\fR
+.ad
+.sp .6
+.RS 4n
+When property \fBpm-capable\fR on the target device node setting fails, the
+SATA device won't be power-managed.
+.RE
+
+.sp
+.ne 2
+.na
+\fBSATA disk device at port X does not support LBA.\fR
+.ad
+.sp .6
+.RS 4n
+The disk device plugged into specified SATA device port does not support LBA
+addressing and cannot be used.
+.RE
+
+.sp
+.ne 2
+.na
+\fBCannot identify SATA device at port X - device is attached.\fR
+.ad
+.sp .6
+.RS 4n
+IDENTIFY (PACKET) DEVICE data cannot be retrieved successfully after the device
+is attached to the SATA port.
+.RE
+
+.sp
+.ne 2
+.na
+\fBsata: <HBA driver name><instance number>:hba attached failed.\fR
+.ad
+.sp .6
+.RS 4n
+The SATA HBA instance attach operation failed. This HBA instance cannot be
+configured and is not available.
+.RE
+
+.sp
+.ne 2
+.na
+\fBsata: invalid ATAPI cdb length<command cdb length>.\fR
+.ad
+.sp .6
+.RS 4n
+The length of the command cdb is greater than that the device can support.
+.RE
+
+.sp
+.ne 2
+.na
+\fBsata: invalid sata_hba_tran version X for driver <HBA driver name>.\fR
+.ad
+.sp .6
+.RS 4n
+The specified SATA HBA driver and the SATA framework are incompatible. The
+driver cannot attach and SATA HBAs controlled by this driver (and devices
+plugged to this SATA HBA ports) are not available.
+.RE
+
+.sp
+.ne 2
+.na
+\fBsata_hba_attach: cannot create SATA attachment point for port X.\fR
+.ad
+.sp .6
+.RS 4n
+The specified SATA device port cannot be configured in the system and a device
+plugged to this port could not be not be configured and used.
+.RE
+
+.sp
+.ne 2
+.na
+\fBsata_create_target_node: cannot create target node for device at port X.\fR
+.ad
+.sp .6
+.RS 4n
+The device target node for the device plugged to the specified SATA device port
+could not be created. As a result, the device cannot be configured and used.
+.RE
+
diff --git a/usr/src/man/man4d/scsa1394.4d b/usr/src/man/man4d/scsa1394.4d
new file mode 100644
index 0000000000..1f4ec4fdd7
--- /dev/null
+++ b/usr/src/man/man4d/scsa1394.4d
@@ -0,0 +1,208 @@
+'\" te
+.\" Copyright (c) 2005 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SCSA1394 4D "May 13, 2017"
+.SH NAME
+scsa1394 \- SCSI to 1394 bridge driver
+.SH SYNOPSIS
+.LP
+.nf
+\fBunit@GUID\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBscsa1394\fR driver is a 1394 target and an SCSA HBA driver that supports
+1394 mass storage devices compliant with the \fISerial Bus Protocol 2
+(SBP-2\fR) specification. It supports both bus-powered and self-powered 1394
+mass storage devices.
+.sp
+.LP
+The \fBscsa1394\fR nexus driver maps SCSA target driver requests to SBP-2
+Operation Request Blocks (\fBORB\fR's).
+.sp
+.LP
+The \fBscsa1394\fR driver creates a child device info node for each logical
+unit (LUN) on the mass storage device. The standard Solaris SCSI disk driver is
+attached to those nodes. Refer to \fBsd\fR(4D).
+.sp
+.LP
+This driver supports multiple LUN devices and creates a separate child device
+info node for each LUN. All child LUN nodes attach to \fBsd\fR(4D).
+.sp
+.LP
+In previous releases, all 1394 mass storage devices were treated as removable
+media devices and managed by \fBrmformat\fR(1) and volume management software.
+In the current release, however, only mass storage devices with a removable bit
+(RMB) value of \fB1\fR are removable. (The RMB is part of the device's SCSI
+INQUIRY data.) See SCSI specifications T10/995D Revision 11a, T10/1236-D
+Revision 20 or T10/1416-D Revision 23 for more information. However, for
+backward compatibility, all 1394 mass storage devices can still be managed by
+\fBrmformat\fR(1). With or without a volume manager, you can mount, eject,
+hot remove and hot insert a 1394 mass storage device as the following sections
+explain.
+.SH USING VOLUME MANAGEMENT
+.LP
+Mass storage devices are managed by a volume manager. Software that manages
+removable media creates a device nickname that can be listed with
+\fBeject\fR(1) or \fBrmmount\fR(1). A device that is not mounted automatically
+can be mounted using \fBrmmount\fR(1) under \fB/rmdisk/\fIlabel\fR\fR. Note
+that the \fBmount\fR(8) and \fBmount\fR(8) commands do not accept nicknames;
+you must use explicit device names with these commands.
+.sp
+.LP
+See \fBrmmount\fR(1) to unmount the device and \fBeject\fR(1) to eject the
+media. If the device is ejected while it is mounted, volume management software
+unmounts the device before ejecting it. It also might kill any active
+applications that are accessing the device.
+.sp
+.LP
+Volume management software is hotplug-aware and normally mounts file systems on
+USB mass storage devices if the file system is recognized. Before hot removing
+the USB device, use \fBeject\fR(1) to unmount the file system.
+.sp
+.LP
+You can disable the automatic mounting and unmounting of removable devices by
+inserting a entry for a removable device in \fB/etc/vfstab\fR. In this entry,
+you must set the \fBmount at boot\fR field to \fBno\fR. See \fBvfstab\fR(5).
+.SH USING \fBmount\fR AND \fBumount\fR
+.LP
+Use \fBmount\fR(8) to explicitly mount the device and \fBumount\fR(8) to
+unmount the device. Use \fBeject\fR(1) to eject the media. After you have
+explicitly mounted a removable device, you cannot use a nickname as an argument
+to \fBeject\fR.
+.sp
+.LP
+Removing the storage device while it is being accessed or mounted fails with a
+console warning. To hot remove the storage device from the system, unmount the
+file system, then kill all applications accessing the device. Next, hot remove
+the device. A storage device can be hot inserted at any time.
+.SH DEVICE SPECIAL FILES
+.LP
+Block special file names are located in \fB/dev/dsk\fR. Raw file names are
+located in \fB/dev/rdsk\fR. Input/output requests to the devices must follow
+the same restrictions as those for SCSI disks. Refer to \fBsd\fR(4D).
+.SH IOCTLS
+.LP
+Refer to \fBcdio\fR(4I) and \fBdkio\fR(4I).
+.SH ERRORS
+.LP
+Refer to \fBsd\fR(4D).
+.SH FILES
+.LP
+The device special files for the 1394 mass storage device are created like
+those for a SCSI disk. Refer to \fBsd\fR(4D).
+.sp
+.ne 2
+.na
+\fB\fB/dev/dsk/c\fIn\fRt\fIn\fRd\fIn\fRs\fIn\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Block files
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/rdsk/c\fIn\fRt\fIn\fRd\fIn\fRs\fIn\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Raw files
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/vol/dev/aliases/rmdisk0\fR\fR
+.ad
+.sp .6
+.RS 4n
+Symbolic link to the character device for the media in removable drive 0. This
+is a generic removable media device.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/scsa1394\fR\fR
+.ad
+.sp .6
+.RS 4n
+32-bit x86 ELF kernel module
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/scsa1394\fR\fR
+.ad
+.sp .6
+.RS 4n
+64-bit x86 ELF kernel module
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/sparcv9/scsa1394\fR\fR
+.ad
+.sp .6
+.RS 4n
+64-bit SPARC ELF kernel module
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for a description of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture SPARC, x86, PCI-based systems
+.TE
+
+.SH SEE ALSO
+.LP
+.BR cdrw (1),
+.BR eject (1),
+.BR rmformat (1),
+.BR rmmount (1),
+.BR hci1394 (4D),
+.BR sd (4D),
+.BR pcfs (4FS),
+.BR cdio (4I),
+.BR dkio (4I),
+.BR scsi (5),
+.BR vfstab (5),
+.BR attributes (7),
+.BR cfgadm_scsi (8),
+.BR fdisk (8),
+.BR mount (8),
+.BR umount (8)
+.sp
+.LP
+\fIIEEE Std 1394-1995 Standard for a High Performance Serial Bus\fR
+.sp
+.LP
+\fIANSI NCITS 325-1998 - Serial Bus Protocol 2 (SBP-2)\fR
+.sp
+.LP
+\fISystem Administration Guide: Devices and File Systems\fR
+.sp
+.LP
+SCSI Specification \fIT10/995D Revision 11a\fR \(em March 1997
+.sp
+.LP
+SCSI Specification \fIT10/1236-D Revision 20\fR \(em July 2001
+.sp
+.LP
+SCSI Specification \fIT10/1416-D Revision 23\fR \(em May 2005
diff --git a/usr/src/man/man4d/scsa2usb.4d b/usr/src/man/man4d/scsa2usb.4d
new file mode 100644
index 0000000000..843ba87978
--- /dev/null
+++ b/usr/src/man/man4d/scsa2usb.4d
@@ -0,0 +1,482 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SCSA2USB 4D "May 23, 2021"
+.SH NAME
+scsa2usb \- SCSI to USB bridge driver
+.SH SYNOPSIS
+.nf
+\fBstorage@unit-address\fR
+.fi
+
+.SH DESCRIPTION
+The \fBscsa2usb\fR driver is a \fBUSBA\fR (Solaris USB architecture) compliant
+nexus driver that supports the \fIUSB Mass Storage Bulk Only Transport
+Specification 1.0\fR and \fIUSB Control/Bulk/Interrupt (CBI) Transport
+Specification 1.0\fR. The \fBscsa2usb\fR driver also supports USB storage
+devices that implement CBI Transport without the interrupt completion for
+status (that is, Control/Bulk (CB) devices.) It supports bus-powered and
+self-powered USB mass storage devices. This nexus driver is both a USB client
+driver and a \fBSCSA\fR HBA driver. As such, the \fBscsa2usb\fR driver only
+supports storage devices that utilize the above two transports.
+.sp
+.LP
+The \fBscsa2usb\fR driver also supports a \fBugen\fR(4D) interface allowing raw
+access to the device, for example by libusb applications, bypassing
+the child \fBsd\fR(4D) or \fBst\fR(4D) driver. Because a libusb application
+might change the state of the device, you should not access the disk or tape
+concurrently.
+.sp
+.LP
+The \fBscsa2usb\fR nexus driver maps \fBSCSA\fR target driver requests to
+\fBUSBA\fR client driver requests.
+.sp
+.LP
+The \fBscsa2usb\fR driver creates a child device info node for each logical
+unit (LUN) on the mass storage device. The standard Solaris \fBSCSI\fR disk
+driver or tape driver is attached to those nodes. Refer to \fBsd\fR(4D) or
+\fBst\fR(4D).
+.sp
+.LP
+This driver supports multiple LUN devices and creates a separate child device
+info node for each LUN. All child LUN nodes attach to \fBsd\fR(4D) for disks or
+\fBst\fR(4D) for tapes.
+.sp
+.LP
+In previous releases, all USB disk storage devices were treated as removable
+media devices and managed by \fBrmformat\fR(1) and volume management software.
+In the current release, however, only disk storage devices with a removable bit
+(RMB) value of \fB1\fR are removable. (The RMB is part of the device's SCSI
+INQUIRY data.) See SCSI specifications T10/995D Revision 11a, T10/1236-D
+Revision 20 or T10/1416-D Revision 23 for more information. However, for
+backward compatibility, all USB disk storage devices can still be managed by
+\fBrmformat\fR(1). With or without a volume manager, you can mount, eject,
+hot remove and hot insert a 1394 mass storage device as the following sections
+explain.
+.sp
+.LP
+Some devices may be supported by the USB mass storage driver even though they
+do not identify themselves as compliant with the USB mass storage class.
+.sp
+.LP
+The \fBscsa2usb.conf\fR file contains an \fBattribute-override-list\fR that
+lists the vendor ID, product ID, and revision for matching mass storage
+devices, as well as fields for overriding the default device attributes. The
+entries in this list are commented out by default and may be uncommented to
+enable support of particular devices.
+.sp
+.LP
+Follow the information given in the \fBscsa2usb.conf\fR file to see if a
+particular device can be supported using the override information.
+For example, by adding the following to the
+\fBscsa2usb.conf\fR file, many USB memory sticks and card readers might operate
+more reliably:
+.sp
+.in +2
+.nf
+attribute-override-list = "vid=* reduced-cmd-support=true";
+.fi
+.in -2
+
+.sp
+.LP
+Note that this override applies to all USB mass storage devices and might be
+inappropriate for a USB CD writer. If so, you can add an entry for each device
+to the attribute override list.
+.sp
+.LP
+If USB mass storage support is considered a security risk, this driver can be
+disabled in \fB/etc/system\fR as follows:
+.sp
+.in +2
+.nf
+exclude: scsa2usb
+.fi
+.in -2
+
+.sp
+.LP
+Alternatively, you can disable automatic handling of a device as described in
+the following subsection.
+.SS "Using Volume Management"
+Disk storage devices are managed by Volume Manager. Software that manages
+removable media creates a device nickname that can be listed with
+\fBeject\fR(1) or \fBrmmount\fR(1). A device that is not mounted automatically
+can be mounted using \fBrmmount\fR(1) under \fB/rmdisk/\fIlabel\fR\fR. Note
+that the \fBmount\fR(8) and \fBmount\fR(8) commands do not accept nicknames;
+you must use explicit device names with these commands.
+.sp
+.LP
+See \fBrmmount\fR(1) to unmount the device and \fBeject\fR(1) to eject the
+media. If the device is ejected while it is mounted, volume management software
+unmounts the device before ejecting it. It also might kill any active
+applications that are accessing the device.
+.sp
+.LP
+Volume management software is hotplug-aware and normally mounts file systems on
+USB mass storage devices if the file system is recognized. Before hot removing
+the USB device, use \fBeject\fR(1) to unmount the file system. After the device
+is removed, a console warning, such as "The disconnected device was busy,
+please reconnect," might display. The warning is harmless and you can ignore
+it.
+.sp
+.LP
+You can disable the automatic mounting and unmounting of removable devices by
+inserting a entry for a removable device in \fB/etc/vfstab\fR. In this entry,
+you must set the \fBmount at boot\fR field to \fBno\fR. See \fBvfstab\fR(5).
+.SS "Using \fBmount\fR and \fBumount\fR"
+Use \fBmount\fR(8) to explicitly mount the device and \fBumount\fR(8) to
+unmount the device. Use \fBeject\fR(1) to eject the media. After you have
+explicitly mounted a removable device, you cannot use a nickname as an argument
+to \fBeject\fR.
+.sp
+.LP
+Removing the disk device while it is being accessed or mounted fails with a
+console warning. To hot remove the disk device from the system, unmount the
+file system, then kill all applications accessing the device. Next, hot remove
+the device. A storage device can be hot inserted at any time.
+.SH DEVICE SPECIAL FILES
+Disk block special file names are located in \fB/dev/dsk\fR, while raw file
+names are located in \fB/dev/rdsk\fR. Tape raw file names are located in
+\fB/dev/rmt\fR. Input/output requests to the devices must follow the same
+restrictions as those for SCSI disks or tapes. Refer to \fBsd\fR(4D) or
+\fBst\fR(4D).
+.SH IOCTLS
+Refer to \fBdkio\fR(4I) and \fBcdio\fR(4I).
+.SH ERRORS
+Refer to \fBsd\fR(4D) for disks or \fBst\fR(4D) for tapes.
+.SH FILES
+The device special files for the USB mass storage device are created like those
+for a \fBSCSI\fR disk or SCSI tape. Refer to \fBsd\fR(4D) or \fBst\fR(4D).
+.sp
+.ne 2
+.na
+\fB\fB/dev/dsk/c\fIn\fRt\fIn\fRd\fIn\fRs\fIn\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Block files for disks.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/rdsk/c\fIn\fRt\fIn\fRd\fIn\fRs\fIn\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Raw files for disks.
+.RE
+
+.sp
+.ne 2
+.na
+\fB/dev/usb/*/*/*\fR
+.ad
+.sp .6
+.RS 4n
+ugen(4D) nodes
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/rmt/[0-127][l,m,h,u,c][b][n]\fR\fR
+.ad
+.sp .6
+.RS 4n
+Raw files for tapes.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/vol/dev/aliases/zip0\fR\fR
+.ad
+.sp .6
+.RS 4n
+Symbolic link to the character device for the media in Zip drive 0
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/vol/dev/aliases/jaz0\fR\fR
+.ad
+.sp .6
+.RS 4n
+Symbolic link to the character device for the media in Jaz drive 0.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/vol/dev/aliases/rmdisk0\fR\fR
+.ad
+.sp .6
+.RS 4n
+Symbolic link to the character device for the media in removable drive 0. This
+is a generic removable media device.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/scsa2usb\fR\fR
+.ad
+.sp .6
+.RS 4n
+64-bit x86 ELF kernel module
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/sparcv9/scsa2usb\fR\fR
+.ad
+.sp .6
+.RS 4n
+64-bit SPARC ELF kernel module
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/scsa2usb.conf\fR\fR
+.ad
+.sp .6
+.RS 4n
+Can be used to override specific characteristics.
+.RE
+
+.SH ATTRIBUTES
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture SPARC, x86, PCI-based systems
+.TE
+
+.SH SEE ALSO
+.BR cdrw (1),
+.BR eject (1),
+.BR rmformat (1),
+.BR rmmount (1),
+.BR ieee1394 (4D),
+.BR sd (4D),
+.BR st (4D),
+.BR ugen (4D),
+.BR usba (4D),
+.BR pcfs (4FS),
+.BR cdio (4I),
+.BR dkio (4I),
+.BR scsi (5),
+.BR vfstab (5),
+.BR attributes (7),
+.BR cfgadm_scsi (8),
+.BR cfgadm_usb (8),
+.BR fdisk (8),
+.BR mount (8),
+.BR umount (8)
+.sp
+.LP
+\fIWriting Device Drivers\fR
+.sp
+.LP
+\fISystem Administration Guide, Volume I\fR
+.sp
+.LP
+\fIUniversal Serial Bus Specification 2.0\fR
+.sp
+.LP
+\fIUniversal Serial Bus Mass Storage Class Specification Overview 1.0\fR
+.sp
+.LP
+\fIUniversal Serial Bus Mass Storage Class Bulk-Only Transport Specification
+1.0\fR
+.sp
+.LP
+\fIUniversal Serial Bus Mass Storage Class Control/Bulk/Interrupt (CBI)
+Transport Specification 1.0\fR
+.sp
+.LP
+\fISystem Administration Guide: Basic Administration\fR
+.sp
+.LP
+SCSI Specification \fIT10/995D Revision 11a\fR \(em March 1997
+.sp
+.LP
+SCSI Specification \fIT10/1236-D Revision 20\fR \(em July 2001
+.sp
+.LP
+SCSI Specification \fIT10/1416-D Revision 23\fR \(em May 2005
+.SH DIAGNOSTICS
+Refer to \fBsd\fR(4D) and \fBst\fR(4D).
+.sp
+.LP
+In addition to being logged, the following messages may appear on the system
+console. All messages are formatted in the following manner:
+.sp
+.in +2
+.nf
+Warning: <device path> (scsa2usb<instance number>): Error Message...
+.fi
+.in -2
+.sp
+
+.sp
+.ne 2
+.na
+\fBCannot access <device>. Please reconnect.\fR
+.ad
+.sp .6
+.RS 4n
+There was an error in accessing the mass-storage device during reconnect.
+Please reconnect the device.
+.RE
+
+.sp
+.ne 2
+.na
+\fBDevice is not identical to the previous one on this port. Please disconnect
+and reconnect.\fR
+.ad
+.sp .6
+.RS 4n
+Another USB device has been inserted on a port that was connected to a
+mass-storage device. Please disconnect the USB device and reconnect the
+mass-storage device back into that port.
+.RE
+
+.sp
+.ne 2
+.na
+\fBReinserted device is accessible again.\fR
+.ad
+.sp .6
+.RS 4n
+The mass-storage device that was hot-removed from its USB slot has been
+re-inserted to the same slot and is available for access.
+.RE
+
+.sp
+.ne 2
+.na
+\fBPlease disconnect and reconnect this device.\fR
+.ad
+.sp .6
+.RS 4n
+A hotplug of the device is needed before it can be restored.
+.RE
+
+.sp
+.LP
+The following messages may be logged into the system log. They are formatted in
+the following manner:
+.sp
+.in +2
+.nf
+<device path><scsa2usb<instance number>): message...
+.fi
+.in -2
+.sp
+
+.sp
+.ne 2
+.na
+\fBInvalid <record> in scsa2usb.conf file entry.\fR
+.ad
+.sp .6
+.RS 4n
+An unrecognized record was specified in the \fBscsa2usb.conf\fR file.
+.RE
+
+.sp
+.ne 2
+.na
+\fBPkt submitted with 0 timeout which may cause indefinite hangs.\fR
+.ad
+.sp .6
+.RS 4n
+An application submitted a request but did not specify a timeout.
+.RE
+
+.sp
+.ne 2
+.na
+\fBSyncing not supported.\fR
+.ad
+.sp .6
+.RS 4n
+Syncing after a panic is not supported. The filesystem may be corrupted.
+.RE
+
+.sp
+.ne 2
+.na
+\fBscsa2usb.conf override: <record>.\fR
+.ad
+.sp .6
+.RS 4n
+An override record specified in \fBscsa2usb.conf\fR was applied. Examples of an
+override record applied to a device with vendor ID 123 and product ID 456 are:
+.sp
+.in +2
+.nf
+vid=0x123 pid=0x456 reduced-cmd-support=true
+
+ or
+
+vid=* reduced-cmd-support=true
+.fi
+.in -2
+
+\&...meaning that the override record is applied to this device and all other
+USB mass storage devices.
+.RE
+
+.SH NOTES
+The Zip 100 drive does not comply with \fIUniversal Serial Bus Specification
+1.0\fR and cannot be power managed. Power Management support for Zip 100 has
+been disabled.
+.sp
+.LP
+If the system panics while a UFS file system is mounted on the mass storage
+media, no syncing will take place for the disk mass-storage device. (Syncing is
+not supported by the \fBscsa2usb\fR driver.) As a result, the file system on
+the media will not be consistent on reboot.
+.sp
+.LP
+If a PCFS file system is mounted, no syncing is needed and the filesystem will
+be consistent on reboot.
+.sp
+.LP
+If a mass-storage device is busy, system suspend cannot proceed and the system
+will immediately resume again.
+.sp
+.LP
+Attempts to remove a mass-storage device from the system will fail. The failure
+will be logged to the console. An attempt to replace the removed device with
+some other USB device will also fail. To successfully remove a USB mass-storage
+device you must "close" all references to it.
+.sp
+.LP
+Concurrent I/O to devices with multiple LUNs on the same device is not
+supported.
+.sp
+.LP
+Some USB CD-RW devices may perform inadequately at their advertised speeds. To
+compensate, use USB CD-RW devices at lower speeds (2X versus 4X). See
+\fBcdrw\fR(1) for details.
+.sp
+.LP
+This driver also supports CBI devices that do not use USB interrupt pipe for
+status completion.
diff --git a/usr/src/man/man4d/sd.4d b/usr/src/man/man4d/sd.4d
new file mode 100644
index 0000000000..55f2a85c16
--- /dev/null
+++ b/usr/src/man/man4d/sd.4d
@@ -0,0 +1,856 @@
+'\" te
+.\" Copyright (c) 2009 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER,
+.\" with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SD 4D "September 12, 2020"
+.SH NAME
+sd \- SCSI disk and ATAPI/SCSI CD-ROM device driver
+.SH SYNOPSIS
+.nf
+\fBsd@target,lun:partition\fR
+.fi
+
+.SH DESCRIPTION
+To open a device without checking if the vtoc is valid, use the O_NDELAY flag.
+When the device is opened using O_NDELAY, the first read or write to the device
+that happens after the open results in the label being read if the label is not
+currently valid. Once read, the label remains valid until the last close of the
+device. Except for reading the label, O_NDELAY has no impact on the driver.
+.SS "SPARC"
+The \fBsd\fR \fBSCSI\fR and \fBSCSI/ATAPI\fR driver supports embedded
+\fBSCSI\fR-2 and \fBCCS\fR-compatible \fBSCSI\fR disk and CD-ROM drives,
+\fBATAPI \fR 2.6 (SFF-8020i)-compliant CD-ROM drives, SFF-8090-compliant
+\fBSCSI/ATAPI\fR DVD-ROM drives, IOMEGA \fBSCSI/ATAPI\fR ZIP drives, \fBSCSI
+JAZ\fR drives, and USB mass storage devices (refer to \fBscsa2usb\fR(4D)).
+.sp
+.LP
+To determine the disk drive type, use the \fBSCSI/ATAPI\fR inquiry command and
+read the volume label stored on block 0 of the drive. (The volume label
+describes the disk geometry and partitioning and must be present for the disk
+to be mounted by the system.) A volume label is not required for removable,
+re-writable or read-only media.
+.SS "x86 Only"
+The \fBsd\fR driver supports embedded \fBSCSI\fR-2 and \fBCCS\fR-compatible
+\fBSCSI \fRdisk and CD-ROM drives, \fBATAPI \fR2.6 (SFF-8020i)-compliant CD-ROM
+drives, SFF-8090-compliant \fBSCSI/ATAPI\fR DVD-ROM drives, IOMEGA
+\fBSCSI/ATAPI\fR ZIP drives\fB, and SCSI JAZ\fR drives.
+.sp
+.LP
+The x86 BIOS legacy requires a master boot record (MBR) and \fBfdisk\fR table
+in the first physical sector of the bootable media. If the x86 hard disk
+contains a Solaris disk label, it is located in the second 512-byte sector of
+the FDISK partition.
+.SH DEVICE SPECIAL FILES
+Block-files access the disk using normal buffering mechanism and are read-from
+and written-to without regard to physical disk records. A \fBraw\fR interface
+enables direct transmission between the disk and the user's read or write
+buffer. A single \fBread\fR or \fBwrite\fR call usually results in a single I/O
+operation, therefore raw I/O is more efficient when many bytes are transmitted.
+Block files names are found in \fB/dev/dsk\fR; raw file names are found in
+\fB/dev/rdsk\fR.
+.sp
+.LP
+I/O requests to the raw device must be aligned on a 512-byte (\fBDEV_BSIZE\fR)
+boundary and all I/O request lengths must be in multiples of 512 bytes.
+Requests that do not meet these requirements will trigger an \fBEINVAL\fR
+error. There are no alignment or length restrictions on I/O requests to the
+block device.
+.SH CD-ROM DRIVE SUPPORT
+A CD-ROM disk is single-sided and contains approximately 640 megabytes of data
+or 74 minutes of audio. When the CD-ROM is opened, the eject button is disabled
+to prevent manual removal of the disk until the last \fBclose()\fR is called.
+No volume label is required for a CD-ROM. The disk geometry and partitioning
+information are constant and never change. If the CD-ROM contains data recorded
+in a Solaris-aware file system format, it can be mounted using the appropriate
+Solaris file system support.
+.SH DVD-ROM DRIVE SUPPORT
+DVD-ROM media can be single or double-sided and can be recorded upon using a
+single or double layer structure. Double-layer media provides parallel or
+opposite track paths. A DVD-ROM can hold from between 4.5 Gbytes and 17 Gbytes
+of data, depending on the layer structure used for recording and if the DVD-ROM
+is single or double-sided.
+.sp
+.LP
+When the DVD-ROM is opened, the eject button is disabled to prevent the manual
+removal of a disk until the last \fBclose()\fR is called. No volume label is
+required for a DVD-ROM. If the DVD-ROM contains data recorded in a
+Solaris-aware file system format, it can be mounted using the appropriate
+Solaris file system support.
+.SH ZIP/JAZ DRIVE SUPPORT
+\fBZIP/JAZ\fR media provide varied data capacity points; a single \fBJAZ
+\fRdrive can store up to 2 GBytes of data, while a ZIP-250 can store up to
+250MBytes of data. \fBZIP/JAZ\fR drives can be read-from or written-to using
+the appropriate drive.
+.sp
+.LP
+When a \fBZIP/JAZ\fR drive is opened, the eject button is disabled to prevent
+the manual removal of a disk until the last \fBclose()\fR is called. No volume
+label is required for a \fBZIP/JAZ\fR drive. If the \fBZIP/JAZ\fR drive
+contains data recorded in a Solaris-aware file system format, it can be mounted
+using the appropriate Solaris file system support.
+.SH DEVICE STATISTICS SUPPORT
+Each device maintains I/O statistics for the device and for partitions
+allocated for that device. For each device/partition, the driver accumulates
+reads, writes, bytes read, and bytes written. The driver also initiates
+hi-resolution time stamps at queue entry and exit points to enable monitoring
+of residence time and cumulative residence-length product for each queue.
+.sp
+.LP
+Not all device drivers make per-partition IO statistics available for
+reporting. \fBsd\fR and \fBssd\fR(4D) per-partition statistics are enabled by
+default but may be disabled in their configuration files.
+.SH IOCTLS
+Refer to \fBdkio\fR(4I), and \fBcdio\fR(4I)
+.SS "ERRORS"
+.ne 2
+.na
+\fB\fBEACCES\fR\fR
+.ad
+.RS 10n
+Permission denied
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEBUSY\fR\fR
+.ad
+.RS 10n
+The partition was opened exclusively by another thread
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEFAULT\fR\fR
+.ad
+.RS 10n
+The argument features a bad address
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEINVAL\fR\fR
+.ad
+.RS 10n
+Invalid argument
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBENOTTY\fR\fR
+.ad
+.RS 10n
+The device does not support the requested ioctl function
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBENXIO\fR\fR
+.ad
+.RS 10n
+During opening, the device did not exist. During close, the drive unlock failed
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEROFS\fR\fR
+.ad
+.RS 10n
+The device is read-only
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEAGAIN\fR\fR
+.ad
+.RS 10n
+Resource temporarily unavailable
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEINTR\fR\fR
+.ad
+.RS 10n
+A signal was caught during the execution of the \fBioctl()\fR function
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBENOMEM\fR\fR
+.ad
+.RS 10n
+Insufficient memory
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEPERM\fR\fR
+.ad
+.RS 10n
+Insufficient access permission
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEIO\fR\fR
+.ad
+.RS 10n
+An I/O error occurred. Refer to notes for details on copy-protected DVD-ROM
+media.
+.RE
+
+.SH CONFIGURATION
+The \fBsd\fR driver can be configured by defining properties in the
+\fBsd.conf\fR file. The \fBsd\fR driver supports the following properties:
+.sp
+.ne 2
+.na
+\fB\fBenable-partition-kstats\fR\fR
+.ad
+.RS 27n
+The default value is 1, which causes partition IO statistics to be maintained.
+Set this value to zero to prevent the driver from recording partition
+statistics. This slightly reduces the CPU overhead for IO, minimizes the amount
+of \fBsar\fR(1) data collected and makes these statistics unavailable for
+reporting by \fBiostat\fR(8) even though the \fB-p\fR/\fB-P\fR option is
+specified. Regardless of this setting, disk IO statistics are always
+maintained.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBqfull-retries\fR\fR
+.ad
+.RS 27n
+The supplied value is passed as the \fBqfull-retries\fR capability value of the
+HBA driver. See \fBscsi_ifsetcap\fR(9F) for details.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBqfull-retry-interval\fR\fR
+.ad
+.RS 27n
+The supplied value is passed as the \fBqfull-retry interval\fR capability value
+of the HBA driver. See \fBscsi_ifsetcap\fR(9F) for details.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBallow-bus-device-reset\fR\fR
+.ad
+.RS 27n
+The default value is 1, which allows resetting to occur. Set this value to
+\fB0\fR (zero) to prevent the \fBsd\fR driver from calling \fBscsi_reset\fR(9F)
+with a second argument of \fBRESET_TARGET\fR when in error-recovery mode. This
+\fBscsi_reset\fR(9F) call may prompt the HBA driver to send a SCSI Bus Device
+Reset message. The \fBscsi_reset\fR(9F) call with a second argument of
+\fBRESET_TARGET\fR may result from an explicit request via the \fBUSCSICMD\fR
+\fBioctl\fR. Some high-availability multi-initiator systems may wish to
+prohibit the Bus Device Reset message; to do this, set the
+\fBallow-bus-device-reset\fR property to \fB0\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBoptical-device-bind\fR
+.ad
+.RS 27n
+Controls the binding of the driver to non self-identifying SCSI target optical
+devices. (See \fBscsi\fR(5)). The default value is 1, which causes \fBsd\fR to
+bind to DTYPE_OPTICAL devices (as noted in \fBscsi\fR(5)). Setting this value
+to 0 prevents automatic binding. The default behavior for the SPARC-based
+\fBsd\fR driver prior to Solaris 9 was not to bind to optical devices.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpower-condition\fR\fR
+.ad
+.RS 27n
+Boolean type, when set to \fBFalse\fR, it indicates that the disk does not
+support \fBpower condition\fR field in the \fBSTART STOP UNIT\fR command.
+.RE
+
+.sp
+.LP
+In addition to the above properties, some device-specific tunables can be
+configured in \fBsd.conf\fR using the \fBsd-config-list\fR global property. The
+value of this property is a list of duplets. The formal syntax is:
+.sp
+.in +2
+.nf
+sd-config-list = <duplet> [, <duplet> ]* ;
+
+where
+
+<duplet>:= "<vid+pid>" , "<tunable-list>"
+
+and
+
+<tunable-list>:= <tunable> [, <tunable> ]*;
+<tunable> = <name> : <value>
+
+The <vid+pid> is the string that is returned by the target device
+on a SCSI inquiry command.
+
+The <tunable-list> contains one or more tunables to apply to
+all target devices with the specified <vid+pid>.
+
+Each <tunable> is a <name> : <value> pair. Supported
+tunable names are:
+
+ delay-busy: when busy, nsecs of delay before retry.
+
+ retries-timeout: retries to perform on an IO timeout.
+.fi
+.in -2
+
+.sp
+.ne 2
+.na
+\fB\fBmmc-gesn-polling\fR\fR
+.ad
+.RS 20n
+For optical drives compliant with \fBMMC-3\fR and supporting the \fBGET EVENT
+STATUS NOTIFICATION\fR command, this command is used for periodic media state
+polling, usually initiated by the \fBDKIOCSTATE\fR \fBdkio\fR(4I) ioctl. To
+disable the use of this command, set this boolean property to \fBfalse\fR. In
+that case, either the \fBTEST UNIT READY\fR or zero-length \fBWRITE(10)\fR
+command is used instead.
+.RE
+
+.SH EXAMPLES
+.in +2
+.nf
+The following is an example of a global sd-config-list property:
+
+ sd-config-list =
+ "SUN T4", "delay-busy:600, retries-timeout:6",
+ "SUN StorEdge_3510", "retries-timeout:3";
+.fi
+.in -2
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/kernel/drv/sd.conf\fR\fR
+.ad
+.RS 23n
+Driver configuration file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/dsk/cntndnsn\fR\fR
+.ad
+.RS 23n
+Block files
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/rdsk/cntndnsn\fR\fR
+.ad
+.RS 23n
+Raw files
+.RE
+
+.sp
+.LP
+Where:
+.sp
+.ne 2
+.na
+\fBcn\fR
+.ad
+.RS 6n
+controller n
+.RE
+
+.sp
+.ne 2
+.na
+\fBtn\fR
+.ad
+.RS 6n
+SCSI target id n (0-6)
+.RE
+
+.sp
+.ne 2
+.na
+\fBdn\fR
+.ad
+.RS 6n
+SCSI LUN n (0-7 normally; some HBAs support LUNs to 15 or 32. See the specific
+manpage for details)
+.RE
+
+.sp
+.ne 2
+.na
+\fBsn\fR
+.ad
+.RS 6n
+partition n (0-7)
+.RE
+
+.SS "x86 Only"
+.ne 2
+.na
+\fB\fB/dev/rdsk/cntndnpn\fR\fR
+.ad
+.RS 22n
+raw files
+.RE
+
+.sp
+.LP
+Where:
+.sp
+.ne 2
+.na
+\fBpn\fR
+.ad
+.RS 6n
+Where \fIn\fR=0 the node corresponds to the entire disk.
+.RE
+
+.SH SEE ALSO
+.BR sar (1),
+.BR close (2),
+.BR ioctl (2),
+.BR lseek (2),
+.BR read (2),
+.BR write (2),
+.BR scsa2usb (4D),
+.BR ssd (4D),
+.BR hsfs (4FS),
+.BR pcfs (4FS),
+.BR udfs (4FS),
+.BR cdio (4I),
+.BR dkio (4I),
+.BR driver.conf (5),
+.BR scsi (5),
+.BR filesystem (7),
+.BR cfgadm_scsi (8),
+.BR fdisk (8),
+.BR format (8),
+.BR iostat (8),
+.BR scsi_ifsetcap (9F),
+.BR scsi_reset (9F)
+.sp
+.LP
+\fIANSI Small Computer System Interface-2 (SCSI-2)\fR
+.sp
+.LP
+\fIATA Packet Interface for CD-ROMs, SFF-8020i\fR
+.sp
+.LP
+\fIMt.Fuji Commands for CD and DVD, SFF8090v3\fR
+.SH DIAGNOSTICS
+.in +2
+.nf
+Error for Command:\fI<command name>\fR
+Error Level: Fatal
+Requested Block: \fI<n>\fR
+Error Block: \fI<m>\fR
+Vendor:'\fI<vendorname>\fR\&'
+Serial Number:'\fI<serial number>\fR\&'
+Sense Key:\fI<sense key name>\fR
+.fi
+.in -2
+.sp
+
+.sp
+.ne 2
+.na
+\fBASC: 0x<a> (<ASC name>), ASCQ: 0x<b>, FRU: 0x<c>\fR
+.ad
+.sp .6
+.RS 4n
+The command indicated by <command name> failed. The Requested Block is the
+block where the transfer started and the Error Block is the block that caused
+the error. Sense Key, \fBASC\fR, and \fBASCQ\fR information is returned by the
+target in response to a request sense command.
+.RE
+
+.sp
+.ne 2
+.na
+\fBCaddy not inserted in drive\fR
+.ad
+.sp .6
+.RS 4n
+The drive is not ready because no caddy has been inserted.
+.RE
+
+.sp
+.ne 2
+.na
+\fBCheck Condition on REQUEST SENSE\fR
+.ad
+.sp .6
+.RS 4n
+A REQUEST SENSE command completed with a check condition. The original command
+will be retried a number of times.
+.RE
+
+.sp
+.ne 2
+.na
+\fBLabel says <m> blocks Drive says <n> blocks\fR
+.ad
+.sp .6
+.RS 4n
+There is a discrepancy between the label and what the drive returned on the
+\fBREAD CAPACITY\fR command.
+.RE
+
+.sp
+.ne 2
+.na
+\fBNot enough sense information\fR
+.ad
+.sp .6
+.RS 4n
+The request sense data was less than expected.
+.RE
+
+.sp
+.ne 2
+.na
+\fBRequest Sense couldn't get sense data\fR
+.ad
+.sp .6
+.RS 4n
+The \fBREQUEST SENSE\fR command did not transfer any data.
+.RE
+
+.sp
+.ne 2
+.na
+\fBReservation Conflict\fR
+.ad
+.sp .6
+.RS 4n
+The drive was reserved by another initiator.
+.RE
+
+.sp
+.ne 2
+.na
+\fBSCSI transport failed: reason \fB\&'xxxx'\fR: {retrying|giving up}\fR
+.ad
+.sp .6
+.RS 4n
+The host adapter has failed to transport a command to the target for the reason
+stated. The driver will either retry the command or, ultimately, give up.
+.RE
+
+.sp
+.ne 2
+.na
+\fBUnhandled Sense Key<\fIn\fR>\fR
+.ad
+.sp .6
+.RS 4n
+The REQUEST SENSE data included an invalid sense.
+.RE
+
+.sp
+.ne 2
+.na
+\fBUnit not ready. Additional sense code 0x\fR
+.ad
+.sp .6
+.RS 4n
+\fI<n>\fR The drive is not ready.
+.RE
+
+.sp
+.ne 2
+.na
+\fBCan't do switch back to mode 1\fR
+.ad
+.sp .6
+.RS 4n
+A failure to switch back to read mode 1.
+.RE
+
+.sp
+.ne 2
+.na
+\fBCorrupt label - bad geometry\fR
+.ad
+.sp .6
+.RS 4n
+The disk label is corrupted.
+.RE
+
+.sp
+.ne 2
+.na
+\fBCorrupt label - label checksum failed\fR
+.ad
+.sp .6
+.RS 4n
+The disk label is corrupted.
+.RE
+
+.sp
+.ne 2
+.na
+\fBCorrupt label - wrong magic number\fR
+.ad
+.sp .6
+.RS 4n
+The disk label is corrupted.
+.RE
+
+.sp
+.ne 2
+.na
+\fBDevice busy too long\fR
+.ad
+.sp .6
+.RS 4n
+The drive returned busy during a number of retries.
+.RE
+
+.sp
+.ne 2
+.na
+\fBDisk not responding to selection\fR
+.ad
+.sp .6
+.RS 4n
+The drive is powered down or died
+.RE
+
+.sp
+.ne 2
+.na
+\fBFailed to handle UA\fR
+.ad
+.sp .6
+.RS 4n
+A retry on a Unit Attention condition failed.
+.RE
+
+.sp
+.ne 2
+.na
+\fBI/O to invalid geometry\fR
+.ad
+.sp .6
+.RS 4n
+The geometry of the drive could not be established.
+.RE
+
+.sp
+.ne 2
+.na
+\fBIncomplete read/write - retrying/giving up\fR
+.ad
+.sp .6
+.RS 4n
+There was a residue after the command completed normally.
+.RE
+
+.sp
+.ne 2
+.na
+\fBNo bp for direct access device format geometry\fR
+.ad
+.sp .6
+.RS 4n
+A bp with consistent memory could not be allocated.
+.RE
+
+.sp
+.ne 2
+.na
+\fBNo bp for disk label\fR
+.ad
+.sp .6
+.RS 4n
+A bp with consistent memory could not be allocated.
+.RE
+
+.sp
+.ne 2
+.na
+\fBNo bp for fdisk\fR
+.ad
+.sp .6
+.RS 4n
+A bp with consistent memory could not be allocated.
+.RE
+
+.sp
+.ne 2
+.na
+\fBNo bp for rigid disk geometry\fR
+.ad
+.sp .6
+.RS 4n
+A bp with consistent memory could not be allocated.
+.RE
+
+.sp
+.ne 2
+.na
+\fBNo mem for property\fR
+.ad
+.sp .6
+.RS 4n
+Free memory pool exhausted.
+.RE
+
+.sp
+.ne 2
+.na
+\fBNo memory for direct access device format geometry\fR
+.ad
+.sp .6
+.RS 4n
+Free memory pool exhausted.
+.RE
+
+.sp
+.ne 2
+.na
+\fBNo memory for disk label\fR
+.ad
+.sp .6
+.RS 4n
+Free memory pool exhausted.
+.RE
+
+.sp
+.ne 2
+.na
+\fBNo memory for rigid disk geometry\fR
+.ad
+.sp .6
+.RS 4n
+The disk label is corrupted.
+.RE
+
+.sp
+.ne 2
+.na
+\fBNo resources for dumping\fR
+.ad
+.sp .6
+.RS 4n
+A packet could not be allocated during dumping.
+.RE
+
+.sp
+.ne 2
+.na
+\fBOffline\fR
+.ad
+.sp .6
+.RS 4n
+Drive went offline; probably powered down.
+.RE
+
+.sp
+.ne 2
+.na
+\fBRequeue of command fails\fR
+.ad
+.sp .6
+.RS 4n
+Driver attempted to retry a command and experienced a transport error.
+.RE
+
+.sp
+.ne 2
+.na
+\fBsdrestart transport failed()\fR
+.ad
+.sp .6
+.RS 4n
+Driver attempted to retry a command and experienced a transport error.
+.RE
+
+.sp
+.ne 2
+.na
+\fBTransfer length not modulo\fR
+.ad
+.sp .6
+.RS 4n
+Illegal request size.
+.RE
+
+.sp
+.ne 2
+.na
+\fBTransport of request sense fails()\fR
+.ad
+.sp .6
+.RS 4n
+Driver attempted to submit a request sense command and failed.
+.RE
+
+.sp
+.ne 2
+.na
+\fBTransport rejected()\fR
+.ad
+.sp .6
+.RS 4n
+Host adapter driver was unable to accept a command.
+.RE
+
+.sp
+.ne 2
+.na
+\fBUnable to read label\fR
+.ad
+.sp .6
+.RS 4n
+Failure to read disk label.
+.RE
+
+.sp
+.ne 2
+.na
+\fBUnit does not respond to selection\fR
+.ad
+.sp .6
+.RS 4n
+Drive went offline; probably powered down.
+.RE
+
+.SH NOTES
+DVD-ROM media containing DVD-Video data may follow/adhere to the requirements
+of content scrambling system or copy protection scheme. Reading of
+copy-protected sector will cause I/O error. Users are advised to use the
+appropriate playback software to view video contents on DVD-ROM media
+containing DVD-Video data.
diff --git a/usr/src/man/man4d/sda.4d b/usr/src/man/man4d/sda.4d
new file mode 100644
index 0000000000..3eb4a769e1
--- /dev/null
+++ b/usr/src/man/man4d/sda.4d
@@ -0,0 +1,60 @@
+'\" te
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SDA 4D "Jan 8, 2009"
+.SH NAME
+sda \- SD/MMC architecture
+.SH DESCRIPTION
+.sp
+.LP
+The \fBsda\fR module provides support services for Secure Digital (SD) and
+MultiMediaCard (MMC) slot and card device drivers.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/kernel/misc/sda\fR\fR
+.ad
+.RS 28n
+32-bit ELF kernel module (x86).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/misc/amd64/sda\fR\fR
+.ad
+.RS 28n
+64-bit ELF kernel module (x86).
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for a description of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture x86
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR sdhost (4D),
+.BR attributes (7)
+.SH NOTES
+.sp
+.LP
+The \fBsda\fR module provides support only for SD/MMC devices that are
+connected via a supported slot driver. Notably, slots that are on USB busses
+are normally treated as USB mass storage devices and are serviced by the
+\fBscsa2usb\fR(4D) driver.
diff --git a/usr/src/man/man4d/sdhost.4d b/usr/src/man/man4d/sdhost.4d
new file mode 100644
index 0000000000..0588a99749
--- /dev/null
+++ b/usr/src/man/man4d/sdhost.4d
@@ -0,0 +1,60 @@
+'\" te
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SDHOST 4D "Jan 8, 2009"
+.SH NAME
+sdhost \- Standard-compliant Secure Digital slot driver
+.SH SYNOPSIS
+.LP
+.nf
+pciclass,080500@unit-address
+pciclass,080501@unit-address
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBsdhost\fR driver supports Secure Digital (SD) standard media slots
+commonly found on mobile computers.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/sdhost\fR\fR
+.ad
+.RS 30n
+32-bit ELF kernel module (x86).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/sdhost\fR\fR
+.ad
+.RS 30n
+64-bit ELF kernel module (x86).
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for a description of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture x86
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR sda (4D),
+.BR attributes (7)
diff --git a/usr/src/man/man4d/sdp.4d b/usr/src/man/man4d/sdp.4d
new file mode 100644
index 0000000000..d96c4b4e98
--- /dev/null
+++ b/usr/src/man/man4d/sdp.4d
@@ -0,0 +1,231 @@
+'\" te
+.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SDP 4D "June 19, 2021"
+.SH NAME
+sdp \- Sockets Direct Protocol driver
+.SH SYNOPSIS
+.nf
+#include <sys/socket.h>
+.fi
+
+.LP
+.nf
+#include <netinet/in.h>
+.fi
+
+.LP
+.nf
+\fBs = socket(AF_INET, SOCK_STREAM, PROTO_SDP);\fR
+.fi
+
+.LP
+.nf
+\fBs = socket(AF_INET6, SOCK_STREAM, PROTO_SDP);\fR
+.fi
+
+.SH DESCRIPTION
+The Sockets Direct Protocol (\fBSDP\fR) is a transport protocol layered over
+the \fIInfiniband Transport Framework\fR (\fBIBTF\fR). \fBSDP\fR is a standard
+implementation based on Annex 4 of the \fIInfiniband Architecture Specification
+Vol 1\fR and provides reliable byte-stream, flow controlled two-way data
+transmission that closely mimics the Transmission Control Protocol (\fBTCP\fR).
+.sp
+.LP
+\fBSDP\fR supports a sockets-based SOCK_STREAM interface to application
+programs. It also supports graceful close (including half-closed sockets), IP
+addressing (IPv4 or IPv6), the connecting/accepting connect model, out-of-band
+(OOB) data and common socket options. The \fBSDP\fR protocol also supports
+kernel bypass data transfers and data transfers from send-upper-layer-protocol
+(ULP) buffers to receive ULP buffers. A \fBSDP\fR message includes a BSDH
+header followed by data. (A BSDH header advertises the amount of available
+buffers on the local side).
+.sp
+.LP
+\fBSDP\fR networking functionality is broken into the \fBsdp\fR driver and a
+function call-based sockfs implementation. A new protocol family of PROTO_SDP
+is introduced to use the \fBSDP\fR transport provided by the driver.
+.sp
+.LP
+Sockets utilizing \fBSDP\fR are either active or passive. Active sockets
+initiate connections to passive sockets. Both active and passive sockets must
+have their local IP or IPv6 address and \fBSDP\fR port number bound with the
+\fBbind\fR(3SOCKET) system call after the socket is created. By default,
+\fBSDP\fR sockets are active. A passive socket is created by calling the
+\fBlisten\fR(3SOCKET) system call after binding the socket with bind(). This
+process establishes a queueing parameter for the passive socket. Connections to
+the passive socket can be received with the \fBaccept\fR(3SOCKET) system call.
+Active sockets use the \fBconnect\fR(3SOCKET) call after binding to initiate
+connections.
+.sp
+.LP
+In most cases, \fBSDP\fR sends data when it is presented. When outstanding
+data is not yet acknowledged, \fBSDP\fR gathers small amounts of output to be
+sent in a single packet once an acknowledgement is received. For a small
+number of clients this packetization may cause significant delays. To
+circumvent this problem, \fBSDP\fR provided by the driver supplies
+SDP_NODELAY, a socket-level boolean option. Note that this behavior is similar
+to the TCP_NODELAY option.
+.sp
+.LP
+\fBSDP\fR provides an urgent data mechanism that can be invoked using the
+out-of-band provisions of \fBsend\fR(3SOCKET). The out-of-band delivery
+behavior is identical to TCP. The caller may mark one byte as "urgent" with the
+MSG_OOB flag to \fBsend\fR(3SOCKET). This sets an "urgent pointer" pointing to
+the byte in the \fBSDP\fR stream. The receiver of the stream is notified of the
+urgent data by a \fBSIGURG\fR signal. The SIOCATMARK \fBioctl\fR(2) request
+returns a value indicating whether the stream is at the urgent mark. Because
+the system never returns data across the urgent mark in a single \fBread\fR(2)
+call, it is possible to advance to the urgent data in a simple loop which reads
+data, testing the socket with the \fBSIOCATMARK\fR ioctl() request until it
+reaches the mark.
+.SH ADDRESS FORMATS
+\fBSDP\fR uses IP/IPv6 addresses to refer to local and remote devices and
+opens a reliable connected IB connection between two end points. The \fBsdp\fR
+driver supports a point-to-point connection, however broadcasting and
+multicasting are not supported.
+.SH SOCKET OPTIONS
+\fBSDP\fR supports setsockopt and getsockopt to set and read socket options.
+Very few socket options affect \fBSDP\fR protocol operations. Other common
+socket options are processed but do not affect SDP protocol operation. All
+socket options are checked for validity. A getsockopt returns the values set or
+toggled by setsockopt. Socket options that affect protocol operations are
+SO_LINGER, SO_DEBUG, SO_REUSEADDR and SO_OOBINLINE.
+.SH ERRORS
+.ne 2
+.na
+\fB\fBEISCONN\fR\fR
+.ad
+.RS 28n
+A connect() operation was attempted on a socket on which a connect() operation
+had already been performed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBECONNRESET\fR\fR
+.ad
+.RS 28n
+The remote peer forced the connection to be closed. This usually occurs when
+the remote machine loses state information about the connection due to a crash.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBECONNREFUSED\fR\fR
+.ad
+.RS 28n
+The remote peer actively refused connection establishment. This usually occurs
+because no process is listening to the port.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEADDRINUSE\fR\fR
+.ad
+.RS 28n
+A bind() operation was attempted on a socket with a network address/port pair
+that has already been bound to another socket.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEADDRNOTAVAIL\fR\fR
+.ad
+.RS 28n
+A bind() operation was attempted on a socket with a network address for which
+no network interface exists.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEACCES\fR\fR
+.ad
+.RS 28n
+A bind() operation was attempted with a reserved port number and the effective
+user ID of the process was not the privileged user.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBENOBUFS\fR\fR
+.ad
+.RS 28n
+The system ran out of memory for internal data structures.
+.RE
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/sdp\fR\fR
+.ad
+.sp .6
+.RS 4n
+64-bit \fBELF\fR kernel module (x86).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/sparcv9/sdp\fR\fR
+.ad
+.sp .6
+.RS 4n
+64-bit \fBELF\fR kernel module (SPARC).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/sdpib\fR\fR
+.ad
+.sp .6
+.RS 4n
+64-bit \fBELF\fR kernel module (x86).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/sparcv9/sdpib\fR\fR
+.ad
+.sp .6
+.RS 4n
+64-bit \fBELF\fR kernel module (SPARC).
+.RE
+
+.SH ATTRIBUTES
+See \fBattributes\fR(7) for descriptions of the following attribute:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture x86, SPARC
+.TE
+
+.SH SEE ALSO
+.BR read (2),
+.BR socket.h (3HEAD),
+.BR accept (3SOCKET),
+.BR bind (3SOCKET),
+.BR connect (3SOCKET),
+.BR send (3SOCKET),
+.BR getsockopt (3XNET),
+.BR attributes (7),
+.BR standards (7)
+.sp
+.LP
+\fIInfiniband Architecture Specification Vol 1- Annex 4\fR \(em November, 2002
diff --git a/usr/src/man/man4d/sdt.4d b/usr/src/man/man4d/sdt.4d
new file mode 100644
index 0000000000..fd5617db0c
--- /dev/null
+++ b/usr/src/man/man4d/sdt.4d
@@ -0,0 +1,52 @@
+'\" te
+.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SDT 4D "Dec 10, 2017"
+.SH NAME
+sdt \- DTrace statically defined tracing provider
+.SH DESCRIPTION
+.LP
+The \fBsdt\fR driver is a DTrace dynamic tracing provider that performs dynamic
+instrumentation at statically-defined locations in the kernel.
+.sp
+.LP
+The \fBsdt\fR provider allows kernel developers to explicitly create probes at
+formally designated locations in the operating system kernel and loadable
+modules, allowing the implementor to consciously choose the points in their
+code that are desired probe points, and to convey some semantic knowledge about
+that point with the choice of probe name and a relevant set of arguments.
+.sp
+.LP
+The \fBsdt\fR driver is not a public interface and you access instrumentation
+offered by this provider through DTrace. Refer to the \fIDynamic
+Tracing Guide\fR for a description of the public documented interfaces
+available for the DTrace facility and the probes offered by the \fBsdt\fR
+provider.
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for a description of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Private
+.TE
+
+.SH SEE ALSO
+.LP
+.BR dtrace (4D),
+.BR attributes (7),
+.BR dtrace (8)
+.sp
+.LP
+\fIDynamic Tracing Guide\fR:
+.sp
+.LP
+https://illumos.org/books/dtrace/
diff --git a/usr/src/man/man4d/ses.4d b/usr/src/man/man4d/ses.4d
new file mode 100644
index 0000000000..36345c1410
--- /dev/null
+++ b/usr/src/man/man4d/ses.4d
@@ -0,0 +1,166 @@
+'\" te
+.\" Copyright (c) 20081 Sun Microsystems. Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SES 4D "May 27, 2008"
+.SH NAME
+ses \- SCSI enclosure services device driver
+.SH SYNOPSIS
+.LP
+.nf
+\fBses\fR\fI@target\fR\fB,\fR\fIlun\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBses\fR device driver is an interface to \fBSCSI\fR enclosure services
+devices. These devices sense and monitor the physical conditions in an
+enclosure as well as allow access to the status reporting and configuration
+features of the enclosure (such as indicator \fBLEDs\fR on the enclosure.)
+.sp
+.LP
+\fBioctl\fR(9E) calls may be issued to \fBses\fR to determine the state of the
+enclosure and to set parameters on the enclosure services device.
+.sp
+.LP
+No \fBses\fR driver properties are defined. Use the \fBses.conf\fR file to
+configure the \fBses\fR driver.
+.SH EXAMPLES
+.LP
+\fBExample 1 \fR\fBses.conf\fR File Format
+.sp
+.LP
+The following is an example of the \fBses.conf\fR file format:
+
+.sp
+.in +2
+.nf
+#
+# Copyright (c) 1996, by Sun Microsystems, Inc.
+# All rights reserved.
+#
+#
+#ident "@(#)ses.conf 1.1 97/02/10 SMI"
+#
+
+name="ses" parent="sf"
+ target=15;
+
+name="ses" parent="SUNW,pln" port=0 target=15;
+name="ses" parent="SUNW,pln" port=1 target=15;
+name="ses" parent="SUNW,pln" port=2 target=15;
+name="ses" parent="SUNW,pln" port=3 target=15;
+name="ses" parent="SUNW,pln" port=4 target=15;
+name="ses" parent="SUNW,pln" port=5 target=15;
+
+name="ses" class="scsi"
+ target=15 lun=0;
+.fi
+.in -2
+
+.SH IOCTLS
+.sp
+.LP
+The SES driver currently supports the SES, SAFTE and SEN enclosure service
+chipsets. SEN and SAFTE protocols are translated internally in the driver into
+SES compliant data structures. This enables the SES driver to work seamlessly
+with different protocols and eliminates the need to enhance user applications.
+.sp
+.ne 2
+.na
+\fB\fBSESIOC_GETNOBJ\fR\fR
+.ad
+.RS 21n
+Returns an unsigned integer that represents the number of SES data structures
+in the enclosure services chip.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSESIOC_GETOBJMAP\fR\fR
+.ad
+.RS 21n
+Returns a size array containing \fBses_object\fR elements communicated through
+\fBSESIOC_GETNOBJ()\fR. \fBses_object\fR is defined in \fBsesio.h\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSESIOC_INIT\fR\fR
+.ad
+.RS 21n
+Instructs the device to perform a self-diagnostic test. Currently SES & SEN
+devices always return success.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSESIOC_GETENCSTAT\fR\fR
+.ad
+.RS 21n
+Returns an unsigned character that represents status enclosure as defined by
+Table 25 in Section 7.1.2 of the SES specification \fINCITS 305-199\fR\fIx\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSESIOC_GETOBJSTAT\fR\fR
+.ad
+.RS 21n
+This ioctl is passed an \fBses_objarg\fR containing the \fBobj_id\fR you want
+to set, then fills in the remaining fields according to element status page of
+the SES specification.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSESIOC_SETOBJSTAT\fR\fR
+.ad
+.RS 21n
+Sets options in the control field. You set control field options by filling out
+all fields in \fBses_objarg\fR. Field definitions are presented in Section
+7.2.2 of the SES specification.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/ses.conf\fR\fR
+.ad
+.RS 24n
+Driver configuration file
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture SPARC
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR esp (4D),
+.BR isp (4D),
+.BR driver.conf (5),
+.BR scsi (5),
+.BR attributes (7),
+.BR ioctl (9E)
diff --git a/usr/src/man/man4d/sf.4d b/usr/src/man/man4d/sf.4d
new file mode 100644
index 0000000000..ea76cec123
--- /dev/null
+++ b/usr/src/man/man4d/sf.4d
@@ -0,0 +1,265 @@
+'\" te
+.\" Copyright (c) 1997, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SF 4D "Mar 27, 1997"
+.SH NAME
+sf \- SOC+ FC-AL FCP Driver
+.SH SYNOPSIS
+.LP
+.nf
+sf@\fIport\fR,0
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBsf\fR driver is a SCSA compliant nexus driver which supports the Fibre
+Channel Protocol for SCSI on Private Fibre Channel Arbitrated loops. An SBus
+card called the \fBSOC+\fR card (see \fBsocal\fR(4D)) connects the Fibre
+Channel loop to the host system.
+.sp
+.LP
+The \fBsf\fR driver interfaces with the \fBSOC+\fR device driver,
+\fBsocal\fR(4D), the SCSI disk target driver, \fBssd\fR(4D), and the SCSI-3
+Enclosure Services driver, \fBses\fR(4D). It only supports SCSI devices of
+type disk and ses.
+.sp
+.LP
+The \fBsf\fR driver supports the standard functions provided by the SCSA
+interface. The driver supports auto request sense and tagged queueing by
+default.
+.sp
+.LP
+The driver requires that all devices have unique hard addresses defined by
+switch settings in hardware. Devices with conflicting hard addresses will not
+be accessible.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB/platform/\fIarchitecture\fR/kernel/drv/sf\fR
+.ad
+.sp .6
+.RS 4n
+ELF kernel module
+.RE
+
+.sp
+.ne 2
+.na
+\fB/platform/\fIarchitecture\fR/kernel/drv/sf.conf\fR
+.ad
+.sp .6
+.RS 4n
+\fBsf\fR driver configuration file
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture SPARC
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR socal (4D),
+.BR ssd (4D),
+.BR driver.conf (5),
+.BR luxadm (8),
+.BR prtconf (8)
+.sp
+.LP
+\fIWriting Device Drivers\fR
+.sp
+.LP
+\fIANSI X3.272-1996, Fibre Channel Arbitrated Loop (FC-AL)\fR
+.sp
+.LP
+\fIANSI X3.269-1996, Fibre Channel Protocol for SCSI (FCP)\fR
+.sp
+.LP
+\fIANSI X3.270-1996, SCSI-3 Architecture Model (SAM)\fR
+.sp
+.LP
+\fIFibre Channel Private Loop SCSI Direct Attach (FC-PLDA)\fR
+.SH DIAGNOSTICS
+.sp
+.LP
+In addition to being logged, the messages below may display on the system
+console.
+.sp
+.LP
+The first set of messages indicate that the attachment was unsuccessful, and
+will only display while the \fBsf\fR driver is initially attempting to attach.
+Each message is preceded by \fBsf\fR\fI%d\fR , where \fI%d\fR is the instance
+number of the \fBsf\fR device.
+.sp
+.ne 2
+.na
+\fBFailed to alloc soft state\fR
+.ad
+.sp .6
+.RS 4n
+Driver was unable to allocate space for the internal state structure. Driver
+did not attach to device, SCSI devices will be inaccessible.
+.RE
+
+.sp
+.ne 2
+.na
+\fBBad soft state\fR
+.ad
+.sp .6
+.RS 4n
+Driver requested an invalid internal state structure. Driver did not attach to
+device, SCSI devices will be inaccessible.
+.RE
+
+.sp
+.ne 2
+.na
+\fBFailed to obtain transport handle\fR
+.ad
+.sp .6
+.RS 4n
+Driver was unable to obtain a transport handle to communicate with the socal
+driver. Driver did not attach to device, SCSI devices will be inaccessible
+.RE
+
+.sp
+.ne 2
+.na
+\fBFailed to allocate command/response pool\fR
+.ad
+.sp .6
+.RS 4n
+Driver was unable to allocate space for commands and responses. Driver did not
+attach to device, SCSI devices will be inaccessible.
+.RE
+
+.sp
+.ne 2
+.na
+\fBFailed to allocate kmem cache\fR
+.ad
+.sp .6
+.RS 4n
+Driver was unable to allocate space for the packet cache. Driver did not attach
+to device, SCSI devices will be inaccessible.
+.RE
+
+.sp
+.ne 2
+.na
+\fBFailed to allocate dma handle for\fR
+.ad
+.sp .6
+.RS 4n
+Driver was unable to allocate a dma handle for the loop map. Driver did not
+attach to device, SCSI devices will be inaccessible.
+.RE
+
+.sp
+.ne 2
+.na
+\fBFailed to allocate lilp map\fR
+.ad
+.sp .6
+.RS 4n
+Driver was unable to allocate space for the loop map. Driver did not attach to
+device, SCSI devices will be inaccessible.
+.RE
+
+.sp
+.ne 2
+.na
+\fBFailed to bind dma handle for\fR
+.ad
+.sp .6
+.RS 4n
+Driver was unable to bind a dma handle for the loop map. Driver did not attach
+to device, SCSI devices will be inaccessible.
+.RE
+
+.sp
+.ne 2
+.na
+\fBFailed to attach\fR
+.ad
+.sp .6
+.RS 4n
+Driver was unable to attach for some reason that may be printed. Driver did
+not attach to device, SCSI devices will be inaccessible.
+.RE
+
+.sp
+.LP
+The next set of messages may display at any time. The full device pathname,
+followed by the shorter form described above, will precede the message.
+.sp
+.ne 2
+.na
+\fBInvalid lilp map\fR
+.ad
+.sp .6
+.RS 4n
+The driver did not obtain a valid lilp map from the socal driver. SCSI device
+will be inaccessible.
+.RE
+
+.sp
+.ne 2
+.na
+\fBTarget t, AL-PA x and hard\fR
+.ad
+.sp .6
+.RS 4n
+The device with a switch setting t has an AL-PA x which does not match its hard
+address y. The device will not be accessible.
+.RE
+
+.sp
+.ne 2
+.na
+\fBDuplicate switch settings\fR
+.ad
+.sp .6
+.RS 4n
+The driver detected devices with the same switch setting. All such devices will
+be inaccessible.
+.RE
+
+.sp
+.ne 2
+.na
+\fBWWN changed on target t\fR
+.ad
+.sp .6
+.RS 4n
+The World Wide Name (WWN) has changed on the device with switch setting t.
+.RE
+
+.sp
+.ne 2
+.na
+\fBTarget t, unknown device type\fR
+.ad
+.sp .6
+.RS 4n
+The driver does not know the device type reported by the device with switch
+setting t.
+.RE
+
diff --git a/usr/src/man/man4d/sfe.4d b/usr/src/man/man4d/sfe.4d
new file mode 100644
index 0000000000..5621c20b77
--- /dev/null
+++ b/usr/src/man/man4d/sfe.4d
@@ -0,0 +1,204 @@
+'\" te
+.\" Copyright (c) 2007 by Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SFE 4D "Dec 12, 2007"
+.SH NAME
+sfe \- SiS900 series Fast Ethernet device driver
+.SH SYNOPSIS
+.LP
+.nf
+\fB/dev/sfe\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBsfe\fR driver is a loadable, clonable, GLD-based STREAMS driver
+supporting the Data Link Provider Interface \fBdlpi\fR(4P) on Silicon
+Integrated Systems 900 series Fast Ethernet controllers.
+.SH APPLICATION PROGRAMMING INTERFACE
+.sp
+.LP
+The relevant fields returned as part of a \fBDL_INFO_ACK\fR response are:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Maximum SDU is 1500.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Minimum SDU is 0.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The dlsap address length is 8.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+MAC type is \fBDL_ETHER\fR.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+SAP length is -2. The 6-byte physical address is followed immediately by a
+2-byte SAP.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Service mode is \fBDL_CLDLS\fR.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Broadcast address is the 6-byte Ethernet broadcast address
+(\fBff:ff:ff:ff:ff:ff\fR).
+.RE
+.sp
+.LP
+If the SAP provided is zero, then \fIIEEE 802.3\fR mode is assumed and outbound
+frames will have the frame payload length written into the type field.
+Likewise, inbound frames with a SAP between zero and 1500 are interpreted as
+\fIIEEE 802.3\fR frames and delivered to any streams that are bound to SAP zero
+(the \fI802.3\fR SAP).
+.SH PROPERTIES
+.sp
+.LP
+The following properties may be configured using either \fBndd\fR(8) or
+the \fBsfe.conf\fR configuration file as described by \fBdriver.conf\fR(5):
+.sp
+.ne 2
+.na
+\fB\fBadv_100fdx_cap\fR\fR
+.ad
+.sp .6
+.RS 4n
+Enables the 100 Base TX full-duplex link option. (This is generally the fastest
+mode if both link partners support it. Most modern equipment supports this
+mode.)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBadv_100hdx_cap\fR\fR
+.ad
+.sp .6
+.RS 4n
+Enables the 100 Base TX half-duplex link option. (Typically used when the link
+partner is a 100 Mbps hub.)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBadv_10fdx_cap\fR\fR
+.ad
+.sp .6
+.RS 4n
+Enables the 10 Base-T full-duplex link option. (This less-frequently used mode
+is typically used when the link partner is a 10 Mbps switch.)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBadv_10hdx_cap\fR\fR
+.ad
+.sp .6
+.RS 4n
+Enables the 10 Base-T half-duplex link option. (This is the fall-back when no
+other option is available. It is typically used when the link partner is a 10
+Mbps hub or is an older network card.)
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for a description of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Committed
+.TE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/dev/sfe\fR\fR
+.ad
+.sp .6
+.RS 4n
+Special character device.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/sfe\fR\fR
+.ad
+.sp .6
+.RS 4n
+32-bit driver binary (x86).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/sfe\fR\fR
+.ad
+.sp .6
+.RS 4n
+64-bit driver binary (x86).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/sparcv9/sfe\fR\fR
+.ad
+.sp .6
+.RS 4n
+64-bit driver binary (SPARC).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/sfe.conf\fR\fR
+.ad
+.sp .6
+.RS 4n
+Configuration file.
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR streamio (4I),
+.BR dlpi (4P),
+.BR driver.conf (5),
+.BR attributes (7),
+.BR ndd (8)
+.sp
+.LP
+\fIIEEE 802.3\fR \(em Institute of Electrical and Electronics Engineers, 2002
diff --git a/usr/src/man/man4d/sfxge.4d b/usr/src/man/man4d/sfxge.4d
new file mode 100644
index 0000000000..d8c50c99be
--- /dev/null
+++ b/usr/src/man/man4d/sfxge.4d
@@ -0,0 +1,52 @@
+.\"
+.\" This file and its contents are supplied under the terms of the
+.\" Common Development and Distribution License ("CDDL"), version 1.0.
+.\" You may only use this file in accordance with the terms of version
+.\" 1.0 of the CDDL.
+.\"
+.\" A full copy of the text of the CDDL should have accompanied this
+.\" source. A copy of the CDDL is also available via the Internet at
+.\" http://www.illumos.org/license/CDDL.
+.\"
+.\"
+.\" Copyright 2016 Garrett D'Amore <garrett@damore.org>
+.\"
+.Dd Apr 11, 2016
+.Dt SFXGE 4D
+.Os
+.Sh NAME
+.Nm sfxge
+.Nd Solarflare Ethernet device driver
+.Sh SYNOPSIS
+.Pa /dev/sfxge
+.Sh DESCRIPTION
+The
+.Nm
+driver provides support for 10 and 40 Gbps Ethernet adapters
+based on the Solarflare SFC9000 family of controllers.
+.Lp
+These devices generally support the standard Ethernet features, including
+autonegotiation, VLANs, and hardware based flow control.
+The maximum frame size supported by these devices is 9202 bytes, including
+the tag, if present.
+.Lp
+The device driver supports the
+.Xr ieee802.3 7
+properties, which can be configured with
+.Xr dladm 8 .
+.Sh FILES
+.Bl -tag -width /dev/sfxge
+.It Pa /dev/sfxge
+Special character device.
+.El
+.
+.Sh SEE ALSO
+.Xr dlpi 4P ,
+.Xr pci 5 ,
+.Xr ieee802.3 7 ,
+.Xr dladm 8 ,
+.Xr ifconfig 8
+.Rs
+.%T IEEE 802.3: Ethernet
+.%Q IEEE Standards Association
+.Re
diff --git a/usr/src/man/man4d/sgen.4d b/usr/src/man/man4d/sgen.4d
new file mode 100644
index 0000000000..3f6f65b626
--- /dev/null
+++ b/usr/src/man/man4d/sgen.4d
@@ -0,0 +1,420 @@
+'\" te
+.\" Copyright (c) 2008 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SGEN 4D "April 9, 2016"
+.SH NAME
+sgen \- Generic SCSI device driver
+.SH SYNOPSIS
+.LP
+.nf
+\fB#include <sys/scsi/targets/sgendef.h>\fR
+.fi
+
+.LP
+.nf
+\fBsgen@target,lun:<devtype>\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBsgen\fR driver exports the \fBuscsi\fR(4I) interfaces to user processes.
+The \fBsgen\fR driver can be configured to bind to \fBSCSI\fR devices for which
+no system driver is available. Examples of such devices include \fBSCSI\fR
+scanners and \fBSCSI\fR processor devices.
+.SH SECURITY
+.LP
+Typically, drivers which export the \fBuscsi\fR(4I) interface unconditionally
+require that the user present superuser credentials. The \fBsgen\fR driver does
+not, and relies on the filesystem permissions on its device special file to
+govern who may access that device. By default, access is restricted and device
+nodes created by the \fBsgen\fR driver are readable and writable by the
+superuser exclusively.
+.sp
+.LP
+It is important to understand that \fBSCSI\fR devices coexisting on the same
+\fBSCSI\fR bus may potentially interact with each other. This may result from
+firmware bugs in \fBSCSI\fR devices, or may be made to happen programmatically
+by sending appropriate \fBSCSI\fR commands to a device. Potentially, any
+application controlling a device via the \fBsgen\fR driver can introduce data
+integrity or security problems in that device or any other device sharing the
+same \fBSCSI\fR bus.
+.sp
+.LP
+Granting unprivileged users access to an \fBsgen\fR-controlled \fBSCSI\fR
+device may create other problems. It may be possible for a user to instruct a
+target device to gather data from another target device on the same bus. It may
+also be possible for malicious users to install new firmware onto a device to
+which they are granted access. In environments where security is a concern but
+user access to devices controlled by the \fBsgen\fR driver is nonetheless
+desired, it is recommended that the devices be separated onto a dedicated
+\fBSCSI\fR bus to mitigate the risk of data corruption and security violations.
+.SH CONFIGURATION
+.LP
+The \fBsgen\fR driver is configurable via the \fBsgen.conf\fR file. In addition
+to standard \fBSCSI\fR device configuration directives (see \fBscsi\fR(5)),
+administrators can set several additional properties for the \fBsgen\fR driver.
+.sp
+.LP
+By default, the \fBsgen\fR driver will not claim or bind to any devices on the
+system. To do so, it must be configured by the administrator using the
+\fBinquiry-config-list\fR and/or the \fBdevice-type-config-list\fR properties.
+.sp
+.LP
+As with other \fBSCSI\fR drivers, the \fBsgen.conf\fR configuration file
+enumerates the targets \fBsgen\fR should use. See \fBscsi\fR(5) for more
+details. For each target enumerated in the \fBsgen.conf\fR file, the
+\fBsgen\fR driver sends a \fBSCSI INQUIRY\fR command to gather information
+about the device present at that target. The \fBinquiry-config-list\fR property
+specifies that the \fBsgen\fR driver should bind to a particular device
+returning a particular set of inquiry data. The \fBdevice-type-config-list\fR
+specifies that the \fBsgen\fR driver should bind to every device that is of a
+particular \fBSCSI\fR device type. When examining the device, the \fBsgen\fR
+driver tests to see if it matches an entry in the \fBdevice-type-config-list\fR
+or the \fBinquiry-config-list\fR. For more detail on these two properties, see
+the PROPERTIES section.
+.sp
+.LP
+When a match against the \fBINQUIRY\fR data presented by a device is made, the
+\fBsgen\fR driver attaches to that device and creates a device node and link in
+the \fB/devices\fR and \fB/dev\fR hierarchies. See the FILES section for more
+information about how these files are named.
+.sp
+.LP
+It is important for the administrator to ensure that devices claimed by the
+\fBsgen\fR driver do not conflict with existing target drivers on the system.
+For example, if the \fBsgen\fR driver is configured to bind to a direct access
+device, the standard \fBsd.conf\fR file will usually cause \fBsd\fR to claim
+the device as well. This can cause unpredictable results. In general, the
+\fBuscsi\fR(4I) interface exported by \fBsd\fR(4D) or \fBst\fR(4D) should be
+used to gain access to direct access and sequential devices.
+.sp
+.LP
+The \fBsgen\fR driver is disabled by default. The \fBsgen.conf\fR file is
+shipped with all of the '\fBname="sgen" class="scsi" target=...\fR' entries
+commented out to shorten boot time and to prevent the driver from consuming
+kernel resources. To use the \fBsgen\fR driver effectively on desktop systems,
+simply uncomment all of the name="\fBsgen\fR" lines in \fBsgen.conf\fR file. On
+larger systems with many \fBSCSI\fR controllers, carefully edit the
+\fBsgen.conf\fR file so that \fBsgen\fR binds only where needed. Refer to
+\fBdriver.conf\fR(5) for further details.
+.SH PROPERTIES
+.ne 2
+.na
+\fB\fBinquiry-config-list\fR\fR
+.ad
+.RS 23n
+The \fBinquiry-config-list\fR property is a list of pairs of strings that
+enumerates a list of specific devices to which the \fBsgen\fR driver will bind.
+Each pair of strings is referred to as <\fBvendorid\fR, \fBproductid\fR> in the
+discussion below.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBvendorid\fR\fR
+.ad
+.RS 12n
+ is used to match the Vendor ID reported by the device. The \fBSCSI\fR
+specification limits Vendor IDs to eight characters. Correspondingly, the
+length of this string should not exceed eight characters. As a special case,
+"\fB*\fR" may be used as a wildcard which matches any Vendor ID. This is useful
+in situations where more than one vendor produces a particular model of a
+product. \fBvendorid\fR is matched against the Vendor ID reported by the device
+in a case-insensitive manner.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBproductid\fR\fR
+.ad
+.RS 13n
+ is used to match the product ID reported by the device. The \fBSCSI\fR
+specification limits product IDs to sixteen characters (unused characters are
+filled with the whitespace characters). Correspondingly, the length of
+\fBproductid\fR should not exceed sixteen characters. When examining the
+product ID of the device, \fBsgen\fR examines the length l of \fBproductid\fR
+and performs a match against only the first l characters in the device's
+product ID. \fBproductid\fR is matched against the product ID reported by the
+device in a case-insensitive manner.
+.RE
+
+.sp
+.LP
+For example, to match some fictitious devices from ACME corp, the
+\fBinquiry-config-list\fR can be configured as follows:
+.sp
+
+.sp
+.TS
+l l l
+l l l .
+\fBinquiry-config-list = \fR \fB"ACME"\fR, \fB"UltraToast 3000"\fR,
+ \fB"ACME"\fR, \fB"UltraToast 4000"\fR,
+ \fB"ACME"\fR, \fB"UltraToast 5000"\fR;
+.TE
+
+.sp
+.LP
+To match "UltraToast 4000" devices, regardless of vendor,
+\fBinquiry-config-list\fR is modified as follows:
+.sp
+
+.sp
+.TS
+l l l .
+\fBinquiry-config-list = \fR \fB"*",\fR \fB"UltraToast 4000"\fR;
+.TE
+
+.sp
+.LP
+To match every device from ACME in the "UltraToast" series (i.e UltraToast
+3000, 4000, 5000, ...), \fB inquiry-config-list\fR is modified as follows:
+.sp
+
+.sp
+.TS
+l l l .
+\fBinquiry-config-list = \fR \fB"ACME"\fR \fB "UltraToast";\fR
+.TE
+
+.sp
+.LP
+Whitespace characters \fBare\fR significant when specifying \fBproductid\fR.
+For example, a \fBproductid\fR of "UltraToast 1000" is fifteen characters in
+length. If a device reported its ID as "UltraToast 10000", the \fBsgen\fR
+driver would bind to it because only the first fifteen characters are
+considered significant when matching. To remedy this situation, specify
+\fBproductid\fR as "UltraToast 1000 ", (note trailing space). This forces the
+\fBsgen\fR driver to consider all sixteen characters in the product ID to be
+significant.
+.sp
+.ne 2
+.na
+\fB\fBdevice-type-config-list\fR\fR
+.ad
+.RS 27n
+The \fBdevice-type-config-list\fR property is a list of strings that enumerate
+a list of device types to which the \fBsgen\fR driver will bind. The valid
+device types correspond to those defined by the \fISCSI-3 SPC Draft Standard,
+Rev. 11a\fR. These types are:
+.RE
+
+.sp
+
+.sp
+.TS
+c | c
+l | l .
+Type Name Inquiry Type ID
+_
+direct 0x00
+sequential 0x01
+printer 0x02
+processor 0x03
+worm 0x04
+rodirect 0x05
+scanner 0x06
+optical 0x07
+changer 0x08
+comm 0x09
+prepress1 0x0a
+prepress2 0x0b
+array_ctrl 0x0c
+ses 0x0d
+rbc 0x0e
+ocrw 0x0f
+bridge 0x10
+type_unknown 0x1f
+.TE
+
+.sp
+.LP
+Alternately, you can specify device types by \fBINQUIRY\fR type ID. To do
+this, specify \fBtype_0x<typenum>\fR in the \fBsgen-config-list\fR. Case is not
+significant when specifying device type names.
+.sp
+.ne 2
+.na
+\fB\fBsgen-diag\fR\fR
+.ad
+.RS 13n
+The \fBsgen-diag\fR property sets the diagnostic output level. This property
+can be set globally and/or per target/lun pair. \fBsgen-diag\fR is an integer
+property, and can be set to 0, 1, 2 or 3. Illegal values will silently default
+to 0. The meaning of each diagnostic level is as follows:
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 5n
+No error reporting [default]
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB1\fR\fR
+.ad
+.RS 5n
+Report driver configuration information, unusual conditions, and indicate when
+sense data has been returned from the device.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB2\fR\fR
+.ad
+.RS 5n
+Trace the entry into and exit from routines inside the driver, and provide
+extended diagnostic data. No error reporting [default].
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB3\fR\fR
+.ad
+.RS 5n
+Provide detailed output about command characteristics, driver state, and the
+contents of each CDB passed to the driver.
+.RE
+
+.sp
+.LP
+In ascending order, each level includes the diagnostics that the previous level
+reports. See the IOCTLS section for more information on the \fBSGEN_IOC_DIAG\fR
+ioctl.
+.SH FILES
+.ne 2
+.na
+\fB\fBsgen.conf\fR\fR
+.ad
+.RS 30n
+Driver configuration file. See CONFIGURATION for more details.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/scsi/<devtype>/c\fIn\fRt\fIn\fRd\fIn\fR\fR\fR
+.ad
+.RS 30n
+The \fBsgen\fR driver categorizes each device in a separate directory by its
+\fBSCSI\fR device type. The files inside the directory are named according to
+their controller number, target ID and LUN as follows:
+.sp
+c\fIn\fR is the controller number, t\fIn\fR is the \fBSCSI\fR target id and
+d\fIn\fR is the \fBSCSI\fR LUN
+.sp
+This is analogous to the {\fBcontroller;target;device\fR} naming scheme, and
+the controller numbers correspond to the same controller numbers which are used
+for naming disks. For example, \fB/dev/dsk/c0t0d0s0\fR and
+\fB/dev/scsi/scanner/c0t5d0\fR are both connected to controller \fBc0\fR.
+.RE
+
+.SH IOCTLS
+.LP
+The \fBsgen\fR driver exports the \fBuscsi\fR(4I) interface for each device it
+manages. This allows a user process to talk directly to a \fBSCSI\fR device for
+which there is no other driver installed in the system. Additionally, the
+\fBsgen\fR driver supports the following ioctls:
+.sp
+.ne 2
+.na
+\fB\fBSGEN_IOC_READY\fR\fR
+.ad
+.RS 18n
+Send a \fBTEST UNIT READY\fR command to the device and return 0 upon success,
+non-zero upon failure. This ioctl accepts no arguments.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSGEN_IOC_DIAG\fR\fR
+.ad
+.RS 18n
+Change the level of diagnostic reporting provided by the driver. This ioctl
+accepts a single integer argument between 0 and 3. The levels have the same
+meaning as in the \fBsgen-diag\fR property discussed in PROPERTIES above.
+.RE
+
+.SH ERRORS
+.ne 2
+.na
+\fB\fBEBUSY\fR\fR
+.ad
+.RS 10n
+The device was opened by another thread or process using the O_EXCL flag, or
+the device is currently open and O_EXCL is being requested.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBENXIO\fR\fR
+.ad
+.RS 10n
+During opening, the device did not respond to a \fBTEST UNIT READY\fR
+\fBSCSI\fR command.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBENOTTY\fR\fR
+.ad
+.RS 10n
+Indicates that the device does not support the requested ioctl function.
+.RE
+
+.SH EXAMPLES
+.LP
+Here is an example of how \fBsgen\fR can be configured to bind to scanner
+devices on the system:
+.sp
+.LP
+\fBdevice-type-config-list = "scanner";\fR
+.sp
+.LP
+The administrator should subsequently uncomment the appropriate
+\fBname="sgen"...\fR lines for the \fBSCSI\fR target ID to which the scanner
+corresponds. In this example, the scanner is at target 4.
+.sp
+.LP
+\fBname= "sgen" class= "scsi" target=4 lun=0;\fR
+.sp
+.LP
+If it is expected that the scanner will be moved from target to target over
+time, or that more scanners might be added in the future, it is recommended
+that all of the \fBname="sgen"...\fR lines be uncommented, so that \fBsgen\fR
+checks all of the targets on the bus.
+.sp
+.LP
+For large systems where boot times are a concern, it is recommended that the
+\fBparent=""\fR property be used to specify which \fBSCSI\fR bus \fBsgen\fR
+should examine.
+.SH SEE ALSO
+.LP
+.BR sd (4D),
+.BR st (4D),
+.BR uscsi (4I),
+.BR driver.conf (5),
+.BR scsi (5)
+.sp
+.LP
+\fIWriting Device Drivers\fR
+.sp
+.LP
+\fIANSI Small Computer System Interface-2 (SCSI-2) \fR
+.sp
+.LP
+\fISCSI-3 SPC Draft Standard, Rev. 11a\fR
diff --git a/usr/src/man/man4d/si3124.4d b/usr/src/man/man4d/si3124.4d
new file mode 100644
index 0000000000..415ccb1dc4
--- /dev/null
+++ b/usr/src/man/man4d/si3124.4d
@@ -0,0 +1,73 @@
+'\" te
+.\" Copyright (c) 2007 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SI3124 4D "Aug 17, 2007"
+.SH NAME
+si3124 \- SiliconImage 3124/3132/3531 SATA controller driver
+.SH SYNOPSIS
+.LP
+.nf
+\fBsata@unit-address\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBsi3124\fR driver is a \fBSATA\fR framework-compliant HBA driver that
+supports Silicon Image 3124, 3132 and 3531 \fBSATA\fR controllers. Note that while
+the Silicon Image controllers supports standard \fBSATA\fR features including
+SATA-II disks, NCQ, hotplug, port multiplier and ATAPI disks, the \fBsi3124\fR
+driver currently does not support NCQ, port multiplier or ATAPI features.
+.SH CONFIGURATION
+.sp
+.LP
+There are no tunable parameters in the \fBsi3124.conf\fR file.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/si3124\fR\fR
+.ad
+.RS 28n
+32-bit ELF kernel module (x86).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/si3124\fR\fR
+.ad
+.RS 28n
+64-bit ELF kernel module. (x86).
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture x86
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR nv_sata (4D),
+.BR sata (4D),
+.BR attributes (7),
+.BR cfgadm (8),
+.BR cfgadm_sata (8),
+.BR prtconf (8)
+.sp
+.LP
+\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man4d/skd.4d b/usr/src/man/man4d/skd.4d
new file mode 100644
index 0000000000..04ca660f1e
--- /dev/null
+++ b/usr/src/man/man4d/skd.4d
@@ -0,0 +1,25 @@
+.\"
+.\" This file and its contents are supplied under the terms of the
+.\" Common Development and Distribution License ("CDDL"), version 1.0.
+.\" You may only use this file in accordance with the terms of version
+.\" 1.0 of the CDDL.
+.\"
+.\" A full copy of the text of the CDDL should have accompanied this
+.\" source. A copy of the CDDL is also available via the Internet at
+.\" http://www.illumos.org/license/CDDL.
+.\"
+.\"
+.\" Copyright 2014 Nexenta Systems, Inc. All rights reserved.
+.\"
+
+.TH SKD 4D "August 10, 2013"
+.SH NAME
+skd \- sTec S112x PCIe Solid-State Disk driver
+.SH DESCRIPTION
+.LP
+The \fBskd\fR driver uses the \fBblkdev\fR framework to provide a solid-state
+disk in \fB/dev/dsk/cNt0d0*\fR from the sTec S112x series of PCIe cards.
+.LP
+The skd.conf file, in \fB/kernel/drv/skd.conf\fR, contains configuration
+parameters for the driver, and are documented there. They are considered an
+unstable interface, subject to change without notice.
diff --git a/usr/src/man/man4d/smbios.4d b/usr/src/man/man4d/smbios.4d
new file mode 100644
index 0000000000..0ff7e3c110
--- /dev/null
+++ b/usr/src/man/man4d/smbios.4d
@@ -0,0 +1,68 @@
+'\" te
+.\" Copyright (c) 2005, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SMBIOS 4D "Aug 26, 2005"
+.SH NAME
+smbios \- System Management BIOS image
+.SH SYNOPSIS
+.LP
+.nf
+\fB/dev/smbios\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBsmbios\fR device is a character special file that provides access to a
+snapshot of the System Management BIOS (\fBSMBIOS\fR) image exported by the
+current system. \fBSMBIOS\fR is an industry-standard mechanism that enables
+low-level system software to export hardware configuration information to
+higher-level system management software. The \fBSMBIOS\fR data format is
+defined by the Distributed Management Task Force (\fBDMTF\fR). For more
+information on \fBSMBIOS\fR and to obtain a copy of the \fBSMBIOS\fR
+specification and implementation guidelines, refer to
+http://\fIwww.dmtf.org\fR.
+.sp
+.LP
+The \fBSMBIOS\fR image consists of a table of structures, each describing some
+aspect of the system software or hardware configuration. The content of the
+image varies widely by platform and BIOS vendor and may not exist on some
+systems. You can use the \fBsmbios\fR(8) utility to inspect the contents of
+the \fBSMBIOS\fR image and copy it to a file.
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for a description of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Stable
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7),
+.BR prtdiag (8),
+.BR smbios (8)
+.sp
+.LP
+\fISystem Management BIOS Reference Specification\fR, Version 2, Release 4 \(em
+2005
+.SH NOTES
+.sp
+.LP
+The implementation of a System Management BIOS image is entirely at the
+discretion of the system and BIOS vendors. Not all systems export a
+\fBSMBIOS\fR. The \fBSMBIOS\fR structure content varies widely between systems
+and BIOS vendors and frequently does not comply with the guidelines included in
+the specification. For example, some structure fields may not be filled in by
+the BIOS, while others may be filled in with non-conforming values.
diff --git a/usr/src/man/man4d/smbus.4d b/usr/src/man/man4d/smbus.4d
new file mode 100644
index 0000000000..6b48a2a34e
--- /dev/null
+++ b/usr/src/man/man4d/smbus.4d
@@ -0,0 +1,61 @@
+'\" te
+.\" Copyright 2003 Sun Microsystems, Inc. All rights reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SMBUS 4D "Jul 23, 2003"
+.SH NAME
+smbus \- System Management Bus controller driver
+.SH DESCRIPTION
+.sp
+.LP
+The \fBsmbus\fR driver is a I2C (Inter IC) nexus driver that allows the system
+to communicate with various system component chips. SMBus is a two-wire
+control bus based on the I2C protocol through which systems can communicate
+with various I2C devices connected to the bus.
+.sp
+.LP
+The \fBsmbus\fR driver supports byte and block level transfer based on
+interrupt and polled mode.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/platform/sun4u/kernel/drv/sparcv9/smbus\fR \fR
+.ad
+.sp .6
+.RS 4n
+64 bit ELF kernel module
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture SPARC
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7)
+.sp
+.LP
+\fIWriting Device Drivers\fR
+.sp
+.LP
+\fISystem Management Bus (SMBus) Specification 2.0\fR \(em SBS Implementation
+Forum
+.sp
+.LP
+\fIThe I2C Bus and How To Use It\fR \(emPhilips Semiconductor Document #
+98-8080-575-01
diff --git a/usr/src/man/man4d/smntemp.4d b/usr/src/man/man4d/smntemp.4d
new file mode 100644
index 0000000000..c511b36d27
--- /dev/null
+++ b/usr/src/man/man4d/smntemp.4d
@@ -0,0 +1,56 @@
+.\"
+.\" This file and its contents are supplied under the terms of the
+.\" Common Development and Distribution License ("CDDL"), version 1.0.
+.\" You may only use this file in accordance with the terms of version
+.\" 1.0 of the CDDL.
+.\"
+.\" A full copy of the text of the CDDL should have accompanied this
+.\" source. A copy of the CDDL is also available via the Internet at
+.\" http://www.illumos.org/license/CDDL.
+.\"
+.\"
+.\" Copyright 2019, Joyent, Inc.
+.\" Copyright 2020 Oxide Computer Company
+.\"
+.Dd September 1, 2020
+.Dt SMNTEMP 4D
+.Os
+.Sh NAME
+.Nm smntemp
+.Nd AMD SMN Temperature Sensor Driver
+.Sh SYNOPSIS
+.Pa /dev/sensors/temperature/cpu/*
+.Sh DESCRIPTION
+The
+.Nm
+driver provides the system access to the temperature sensor found in the
+AMD System Management Network
+.Pq SMN
+on AMD Family 17h
+.Pq Zen, Zen+, and Zen 2
+processors.
+.Pp
+From this, the driver exposes temperature sensors.
+On Family 17h systems, temperature sensors exist for each Zeppelin die,
+of which there may be multiple in a single package.
+This means that each sensor covers more than one core.
+.Pp
+Temperature information is available to the system via the fault
+management architecture
+.Pq FMA .
+The file system location and programming interface to the
+.Nm
+driver are considered
+.Sy Volatile ,
+subject to change without notice, and should not be used directly.
+Raw temperature information can be dumped through the FMA developer
+utility fmtopo.
+.Sh SEE ALSO
+.Xr amdnbtemp 4D ,
+.Xr amdzen 4D ,
+.Xr fmadm 8
+.Rs
+.%A AMD
+.%B Open-Source Register Reference For AMD Family 17h Processors Models 00h-2Fh
+.%D July, 2018
+.Re
diff --git a/usr/src/man/man4d/socal.4d b/usr/src/man/man4d/socal.4d
new file mode 100644
index 0000000000..8cb669d228
--- /dev/null
+++ b/usr/src/man/man4d/socal.4d
@@ -0,0 +1,227 @@
+'\" te
+.\" Copyright (c) 1997, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SOCAL 4D "May 9, 1997"
+.SH NAME
+socal \- Serial Optical Controller for Fibre Channel Arbitrated Loop (SOC+)
+device driver
+.SH SYNOPSIS
+.LP
+.nf
+\fBsocal@\fIsbus-slot\fR,0\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The Fibre Channel Host Bus Adapter is an SBus card which implements two full
+duplex Fibre Channel interfaces. Each Fibre Channel interface can connect to a
+Fibre Channel Arbitrated Loop (FC-AL).
+.sp
+.LP
+The \fBsocal\fR device driver is a nexus driver and implements portions of the
+FC-2 and FC-4 layers of FC-AL.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/socal\fR\fR
+.ad
+.RS 21n
+ELF Kernel Module
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture SPARC
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR sf (4D),
+.BR ssd (4D),
+.BR sbus (5)
+.sp
+.LP
+\fIWriting Device Drivers\fR
+.sp
+.LP
+\fIANSI X3.230-1994, Fibre Channel Physical and Signalling Interface (FC-PH)\fR
+.sp
+.LP
+\fIANSI X3.272-1996, Fibre Channel Arbitrated Loop (FC-AL)\fR
+.sp
+.LP
+\fIFibre Channel Private Loop SCSI Direct Attach (FC-PLDA)\fR
+.SH DIAGNOSTICS
+.sp
+.LP
+The messages described below may appear on system console in addition to being
+logged.
+.sp
+.LP
+On the console, these messages are preceded by:
+.sp
+.in +2
+.nf
+\fBsocal\fR\fI%d\fR\fB: port \fR\fI%a\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+where \fI%d\fR is the instance number of the \fBsocal\fR controller and
+\fI%a\fR is the port on the host adapter.
+.sp
+.ne 2
+.na
+\fBFibre Channel Loop is ONLINE\fR
+.ad
+.sp .6
+.RS 4n
+The Fibre Channel loop is now online.
+.RE
+
+.sp
+.ne 2
+.na
+\fBFibre Channel Loop is OFFLINE\fR
+.ad
+.sp .6
+.RS 4n
+The Fibre Channel loop is now offline.
+.RE
+
+.sp
+.ne 2
+.na
+\fBattach failed: device in slave-only slot.\fR
+.ad
+.sp .6
+.RS 4n
+Move soc+ card to another slot.
+.RE
+
+.sp
+.ne 2
+.na
+\fBattach failed: bad soft state.\fR
+.ad
+.sp .6
+.RS 4n
+Driver did not attach, devices will be inaccessible.
+.RE
+
+.sp
+.ne 2
+.na
+\fBattach failed: unable to alloc xport struct.\fR
+.ad
+.sp .6
+.RS 4n
+Driver did not attach, devices will be inaccessible.
+.RE
+
+.sp
+.ne 2
+.na
+\fBattach failed: unable to map eeprom\fR
+.ad
+.sp .6
+.RS 4n
+Driver was unable to map device memory; check for bad hardware. Driver did not
+attach to device, devices will be inaccessible.
+.RE
+
+.sp
+.ne 2
+.na
+\fBattach failed: unable to map XRAM\fR
+.ad
+.sp .6
+.RS 4n
+Driver was unable to map device memory; check for bad hardware. Driver did
+not attach to device, devices will be inaccessible.
+.RE
+
+.sp
+.ne 2
+.na
+\fBattach failed: unable to map registers\fR
+.ad
+.sp .6
+.RS 4n
+Driver was unable to map device registers; check for bad hardware. Driver did
+not attach to device, devices will be inaccessible.
+.RE
+
+.sp
+.ne 2
+.na
+\fBattach failed: unable to access status register\fR
+.ad
+.sp .6
+.RS 4n
+Driver was unable to map device registers; check for bad hardware. Driver did
+not attach to device, devices will be inaccessible.
+.RE
+
+.sp
+.ne 2
+.na
+\fBattach failed: unable to install interrupt handler\fR
+.ad
+.sp .6
+.RS 4n
+Driver was not able to add the interrupt routine to the kernel. Driver did
+not attach to device, devices will be inaccessible.
+.RE
+
+.sp
+.ne 2
+.na
+\fBattach failed: unable to access host adapter XRAM\fR
+.ad
+.sp .6
+.RS 4n
+Driver was unable to access device RAM; check for bad hardware. Driver did
+not attach to device, devices will be inaccessible.
+.RE
+
+.sp
+.ne 2
+.na
+\fBattach failed: unable to write host adapter XRAM\fR
+.ad
+.sp .6
+.RS 4n
+Driver was unable to write device RAM; check for bad hardware. Driver did not
+attach to device, devices will be inaccessible.
+.RE
+
+.sp
+.ne 2
+.na
+\fBattach failed: read/write mismatch in XRAM\fR
+.ad
+.sp .6
+.RS 4n
+Driver was unable to verify device RAM; check for bad hardware. Driver did
+not attach to device, devices will be inaccessible.
+.RE
+
diff --git a/usr/src/man/man4d/srpt.4d b/usr/src/man/man4d/srpt.4d
new file mode 100644
index 0000000000..bf401ee04a
--- /dev/null
+++ b/usr/src/man/man4d/srpt.4d
@@ -0,0 +1,91 @@
+'\" te
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SRPT 4D "May 21, 2009"
+.SH NAME
+srpt \- SCSI RDMA Protocol Target Driver for Infiniband (IB)
+.SH DESCRIPTION
+.sp
+.LP
+The \fBsrpt\fR kernel pseudo device driver is an IB Architecture-compliant
+implementation of the target side of the SCSI RDMA Protocol (SRP). SRP
+accelerates the SCSI protocol by mapping SCSI data transfer phases to RDMA
+operations using InfiniBand as the underlying transport.
+.sp
+.LP
+SRP target services are enabled and disabled through \fBsmf\fR(7), using the
+FMRI \fBsvc:/system/ibsrp/target\fR.
+.sp
+.LP
+When enabled, \fBsrpt\fR enumerates each IB Host Channel Adapter (HCA) on the
+system and registers each one as a SCSI target using the SCSI Target Mode
+Framework (STMF).
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/srpt\fR\fR
+.ad
+.RS 28n
+32-bit x86 ELF kernel module
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/srpt\fR\fR
+.ad
+.RS 28n
+64-bit x86 ELF kernel module
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/sparcv9/srpt\fR\fR
+.ad
+.RS 28n
+64-bit SPARC ELF kernel module
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/srpt.conf\fR\fR
+.ad
+.RS 28n
+Driver configuration file
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for a description of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+l | l
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture x86
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR ib (4D),
+.BR ibdma (4D),
+.BR ibtl (4D),
+.BR attributes (7),
+.BR stmfadm (8)
+.sp
+.LP
+\fICOMSTAR Administration Guide\fR
+.sp
+.LP
+\fISCSI RDMA Protocol (SRP) T10 Project 1415-D, Revision\fR
diff --git a/usr/src/man/man4d/ssd.4d b/usr/src/man/man4d/ssd.4d
new file mode 100644
index 0000000000..4090a5ae4f
--- /dev/null
+++ b/usr/src/man/man4d/ssd.4d
@@ -0,0 +1,600 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SSD 4D "September 12, 2020"
+.SH NAME
+ssd \- Fibre Channel Arbitrated Loop disk device driver
+.SH SYNOPSIS
+.nf
+\fBssd@\fR\fIport\fR\fB,\fR\fItarget\fR\fB:\fR\fIpartition\fR
+.fi
+
+.SH DESCRIPTION
+ The \fBssd\fR driver supports Fibre Channel disk devices.
+.sp
+.LP
+The specific type of each disk is determined by the \fBSCSI\fR inquiry command
+and reading the volume label stored on block 0 of the drive. The volume label
+describes the disk geometry and partitioning; it must be present or the disk
+cannot be mounted by the system.
+.sp
+.LP
+The block-files access the disk using the system's normal buffering mechanism
+and are read and written without regard to physical disk records. A "raw"
+interface provides for direct transmission between the disk and the read or
+write buffer. A single read or write call usually results in one I/O operation;
+raw I/O is therefore more efficient when many bytes are transmitted. Block file
+names are found in \fB/dev/dsk\fR; the names of the raw files are found in
+\fB/dev/rdsk\fR.
+.sp
+.LP
+I/O requests (such as \fBlseek\fR(2)) to the \fBSCSI\fR disk must have an
+offset that is a multiple of 512 bytes (\fBDEV_BSIZE\fR), or the driver returns
+an \fBEINVAL\fR error. If the transfer length is not a multiple of 512 bytes,
+the transfer count is rounded up by the driver.
+.sp
+.LP
+Partition 0 is normally used for the root file system on a disk, with partition
+1 as a paging area (for example, \fBswap\fR). Partition 2 is used to back up
+the entire disk. Partition 2 normally maps the entire disk and may also be used
+as the mount point for secondary disks in the system. The rest of the disk is
+normally partition 6. For the primary disk, the user file system is located
+here.
+.sp
+.LP
+The device has associated error statistics. These must include counters for
+hard errors, soft errors and transport errors. Other data may be implemented as
+required.
+.SH DEVICE STATISTICS SUPPORT
+The device maintains I/O statistics for the device and for partitions allocated
+for that device. For each device/partition, the driver accumulates reads,
+writes, bytes read, and bytes written. The driver also initiates hi-resolution
+time stamps at queue entry and exit points to enable monitoring of residence
+time and cumulative residence-length product for each queue.
+.sp
+.LP
+Not all device drivers make per-partition IO statistics available for
+reporting. \fBssd\fR and \fBsd\fR(4D) per-partition statistics are enabled by
+default but may be disabled in their configuration files.
+.SH IOCTLS
+Refer to \fBdkio\fR(4I).
+.SH ERRORS
+.ne 2
+.na
+\fB\fBEACCES\fR\fR
+.ad
+.RS 10n
+Permission denied.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEBUSY\fR\fR
+.ad
+.RS 10n
+The partition was opened exclusively by another thread.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEFAULT\fR\fR
+.ad
+.RS 10n
+The argument was a bad address.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEINVAL\fR\fR
+.ad
+.RS 10n
+Invalid argument.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEIO\fR\fR
+.ad
+.RS 10n
+An I/O error occurred.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBENOTTY\fR\fR
+.ad
+.RS 10n
+The device does not support the requested ioctl function.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBENXIO\fR\fR
+.ad
+.RS 10n
+When returned during \fBopen\fR(2), this error indicates the device does not
+exist.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEROFS\fR\fR
+.ad
+.RS 10n
+The device is a read-only device.
+.RE
+
+.SH CONFIGURATION
+You configure the \fBssd\fR driver by defining properties in the
+\fBssd.conf\fR file. The \fBssd\fR driver supports the following properties:
+.sp
+.ne 2
+.na
+\fB\fBenable-partition-kstats\fR\fR
+.ad
+.RS 27n
+The default value is 1, which causes partition IO statistics to be maintained.
+Set this value to zero to prevent the driver from recording partition
+statistics. This slightly reduces the CPU overhead for IO, minimizes the amount
+of \fBsar\fR(1) data collected and makes these statistics unavailable for
+reporting by \fBiostat\fR(8) even though the \fB-p\fR/\fB-P\fR option is
+specified. Regardless of this setting, disk IO statistics are always
+maintained.
+.RE
+
+.sp
+.LP
+In addition to the above properties, some device-specific tunables can be
+configured in \fBssd.conf\fR using the 'ssd-config-list' global property. The
+value of this property is a list of duplets. The formal syntax is:
+.sp
+.in +2
+.nf
+ssd-config-list = <duplet> [, <duplet> ]* ;
+
+where
+
+<duplet>:= "<vid+pid>" , "<tunable-list>"
+
+and
+
+<tunable-list>:= <tunable> [, <tunable> ]*;
+<tunable> = <name> : <value>
+
+The <vid+pid> is the string that is returned by the target device
+on a SCSI inquiry command.
+
+The <tunable-list> contains one or more tunables to apply to
+all target devices with the specified <vid+pid>.
+
+Each <tunable> is a <name> : <value> pair. Supported
+tunable names are:
+
+ delay-busy: when busy, nsecs of delay before retry.
+
+ retries-timeout: retries to perform on an IO timeout.
+.fi
+.in -2
+
+.SH EXAMPLES
+.in +2
+.nf
+The following is an example of a global ssd-config-list property:
+
+ ssd-config-list =
+ "SUN T4", "delay-busy:600, retries-timeout:6",
+ "SUN StorEdge_3510", "retries-timeout:3";
+.fi
+.in -2
+
+.SH FILES
+.ne 2
+.na
+\fBssd.conf\fR
+.ad
+.RS 22n
+Driver configuration file
+.RE
+
+.sp
+.ne 2
+.na
+\fB/dev/dsk/c\fIn\fR\fBt\fR\fIn\fR\fBd\fR\fIn\fR\fBs\fR\fIn\fR\fR
+.ad
+.RS 22n
+block files
+.RE
+
+.sp
+.ne 2
+.na
+\fB/dev/rdsk/c\fIn\fR\fBt\fR\fIn\fR\fBd\fR\fIn\fR\fBs\fR\fIn\fR\fR
+.ad
+.RS 22n
+raw files
+.RE
+
+.sp
+.ne 2
+.na
+\fBc\fIn\fR\fR
+.ad
+.RS 22n
+is the controller number on the system.
+.RE
+
+.sp
+.ne 2
+.na
+\fBt\fIn\fR\fR
+.ad
+.RS 22n
+7-bit disk loop identifier, such as switch setting
+.RE
+
+.sp
+.ne 2
+.na
+\fBd\fIn\fR\fR
+.ad
+.RS 22n
+SCSI lun \fIn\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBs\fR\fIn\fR\fR
+.ad
+.RS 22n
+partition \fIn\fR (0-7)
+.RE
+
+.SH SEE ALSO
+.BR sar (1),
+.BR ioctl (2),
+.BR lseek (2),
+.BR open (2),
+.BR read (2),
+.BR write (2),
+.BR cdio (4I),
+.BR dkio (4I),
+.BR driver.conf (5),
+.BR scsi (5),
+.BR format (8),
+.BR iostat (8)
+.sp
+.LP
+\fIANSI Small Computer System Interface-2 (SCSI-2)\fR
+.sp
+.LP
+\fIANSI X3.272-1996, Fibre Channel Arbitrated Loop (FC-AL)\fR
+.sp
+.LP
+\fIFibre Channel - Private Loop SCSI Direct Attach (FC-PLDA)\fR
+.SH DIAGNOSTICS
+.in +2
+.nf
+Error for command '<command name>' Error Level: Fatal Requested Block <n>,
+Error Block: <m>, Sense Key: <sense key name>, Vendor '<vendor name>':
+ASC = 0x<a> (<ASC name>), ASCQ = 0x<b>, FRU = 0x<c>
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The command indicated by <command name> failed. The Requested Block is the
+block where the transfer started and the Error Block is the block that caused
+the error. Sense Key, ASC, and ASCQ information is returned by the target in
+response to a request sense command.
+.sp
+.in +2
+.nf
+Check Condition on REQUEST SENSE
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+A REQUEST SENSE command completed with a check condition. The original command
+will be retried a number of times.
+.sp
+.in +2
+.nf
+Label says <m> blocks Drive says <\fIn\fR> blocks
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+There is a discrepancy between the label and what the drive returned on the
+READ CAPACITY command.
+.sp
+.in +2
+.nf
+Not enough sense information
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The request sense data was less than expected.
+.sp
+.in +2
+.nf
+Request Sense couldn't get sense data
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The REQUEST SENSE command did not transfer any data.
+.sp
+.in +2
+.nf
+Reservation Conflict
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The drive was reserved by another initiator.
+.sp
+.in +2
+.nf
+SCSI transport failed: reason 'xxxx' : {retrying|giving up}
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The host adapter has failed to transport a command to the target for the
+reason stated. The driver will either retry the command or, ultimately, give
+up.
+.sp
+.in +2
+.nf
+Unhandled Sense Key <\fIn\fR>
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The REQUEST SENSE data included an invalid sense key.
+.sp
+.in +2
+.nf
+Unit not Ready. Additional sense code 0x<\fIn\fR>
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The drive is not ready.
+.sp
+.in +2
+.nf
+corrupt label - bad geometry
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The disk label is corrupted.
+.sp
+.in +2
+.nf
+corrupt label - label checksum failed
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The disk label is corrupted.
+.sp
+.in +2
+.nf
+corrupt label - wrong magic number
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The disk label is corrupted.
+.sp
+.in +2
+.nf
+device busy too long
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The drive returned busy during a number of retries.
+.sp
+.in +2
+.nf
+disk not responding to selection
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The drive was probably powered down or died.
+.sp
+.in +2
+.nf
+i/o to invalid geometry
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The geometry of the drive could not be established.
+.sp
+.in +2
+.nf
+incomplete read/write - retrying/giving up
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+There was a residue after the command completed normally.
+.sp
+.in +2
+.nf
+logical unit not ready
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The drive is not ready.
+.sp
+.in +2
+.nf
+no bp for disk label
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+A bp with consistent memory could not be allocated.
+.sp
+.in +2
+.nf
+no mem for property
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Free memory pool exhausted.
+.sp
+.in +2
+.nf
+no memory for disk label
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Free memory pool exhausted.
+.sp
+.in +2
+.nf
+no resources for dumping
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+A packet could not be allocated during dumping.
+.sp
+.in +2
+.nf
+offline
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Drive went offline; probably powered down.
+.sp
+.in +2
+.nf
+requeue of command fails<\fIn\fR>
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Driver attempted to retry a command and experienced a transport error.
+.sp
+.in +2
+.nf
+ssdrestart transport failed <\fIn\fR>
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Driver attempted to retry a command and experienced a transport error.
+.sp
+.in +2
+.nf
+transfer length not modulo <\fIn\fR>
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Illegal request size.
+.sp
+.in +2
+.nf
+transport rejected <\fIn\fR>
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Host adapter driver was unable to accept a command.
+.sp
+.in +2
+.nf
+unable to read label
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Failure to read disk label.
+.sp
+.in +2
+.nf
+unit does not respond to selection
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Drive went offline; probably powered down.
diff --git a/usr/src/man/man4d/st.4d b/usr/src/man/man4d/st.4d
new file mode 100644
index 0000000000..359ed10cd4
--- /dev/null
+++ b/usr/src/man/man4d/st.4d
@@ -0,0 +1,1409 @@
+'\" te
+.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH ST 4D "April 9, 2016"
+.SH NAME
+st \- driver for SCSI tape devices
+.SH SYNOPSIS
+.LP
+.nf
+\fBst@\fR\fItarget\fR\fB,\fR\fIlun\fR\fB:\fR\fIl\fR\fB,\fR\fIm\fR\fB,\fR\fIh\fR\fB,\fR\fIc\fR\fB,\fR\fIu\fR\fIb\fR\fIn\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBst\fR device driver provides a standard interface to various \fBSCSI\fR
+tape devices. See \fBmtio\fR(4I) for details.
+.sp
+.LP
+To determine if the \fBst\fR device driver supports your tape device, SPARC
+users should enter the following on a command line:
+.sp
+.in +2
+.nf
+% strings /kernel/drv/sparcv9/st | grep -i <tape device name>
+.fi
+.in -2
+
+.sp
+.LP
+x86 users can do the following to determine if the \fBst\fR device driver
+supports a particular tape device:
+.sp
+.in +2
+.nf
+% strings /kernel/drv/st | grep -i <tape device name>
+.fi
+.in -2
+
+.sp
+.LP
+The driver can be opened with either rewind on close or no rewind on close
+options. It can also be opened with the \fBO_NDELAY\fR (see \fBopen\fR(2))
+option when there is no tape inserted in the drive. A maximum of four tape
+formats per device are supported (see \fBFILES\fR below). The tape format is
+specified using the device name. (Tape format is also referred to as tape
+density).
+.sp
+.LP
+Following are a list of SCSI commands that can be executed while another host
+reserves the tape drive. The commands are:
+.sp
+.in +2
+.nf
+SCMD_TEST_UNIT_READY
+SCMD_REQUEST_SENSE
+SCMD_READ_BLKLIM
+SCMD_INQUIRY
+SCMD_RESERVE
+SCMD_RELEASE
+SCMD_DOORLOCK
+SCMD_REPORT_DENSITIES
+SCMD_LOG_SENSE_G1
+SCMD_PERSISTENT_RESERVE_IN
+SCMD_PERSISTENT_RESERVE_OUT
+SCMD_REPORT_LUNS
+.fi
+.in -2
+
+.sp
+.LP
+In multi-initiator environments, the driver will not reserve the tape drive if
+above commands are issued. For other SCSI commands, the driver reserves the
+tape drive and releases the drive at close if it has been reserved. Refer to
+the MTIOCRESERVE and MTIOCRELEASE ioctls in \fBmtio\fR(4I) for information
+about how to allow a tape drive to remain reserved upon close. See the flag
+options below for information about disabling this feature.
+.sp
+.LP
+If a SCSI-3 persistent reservation is done through the driver, the driver
+disables all existing SCSI-2 reservations.
+.sp
+.LP
+If the tape drive is opened in O_NDELAY mode, no reservation occurs during the
+open, as per the POSIX standard (see \fBstandards\fR(7)). However, if a command
+not found in the above list is used, a reservation will occur to provide
+reserve/release functionality before the command is issued.
+.SS "Persistent Errors and Asynchronous Tape Operation"
+.LP
+The \fBst\fR driver now supports persistent errors (see \fBmtio\fR(4I) and
+asynchronous tape operations (see \fBmtio\fR(4I), \fBaioread\fR(3C), and
+\fBaiowrite\fR(3C)).
+.SS "Read Operation"
+.LP
+If the driver is opened for reading in a different format than the tape is
+written in, the driver overrides the user-selected format. For example, if a
+1/4" cartridge tape is written in QIC-24 format and opened for reading in
+QIC-150, the driver detects a read failure on the first read and automatically
+switches to QIC-24 to read the data.
+.sp
+.LP
+Note that if the low density format is used, no indication is given that the
+driver has overridden the format you selected. Other formats issue a warning
+message to inform you of an overridden format selection. Some devices
+automatically perform this function and do not require driver support (1/2"
+reel tape drive, for example).
+.SS "Write Operation"
+.LP
+Writing from the beginning of tape is performed in the user-specified format.
+The original tape format is used for appending onto previously written tapes.
+.SS "Tape Configuration"
+.LP
+The \fBst\fR driver has a built-in configuration table for most Sun-supported
+tape drives. For those tape drives that are not in the table, the \fBst\fR
+driver tries to read the configuration from the tape drive through optional
+SCSI-3 commands. To support the addition of third party tape devices which are
+not in the built-in configuration table or not able to report their
+configuration, device information can be supplied in \fBst.conf\fR as global
+properties that apply to each node, or as properties that are applicable to one
+node only. By supplying the information in \fBst.conf\fR, the built-in
+configuration is overridden and the \fBst\fR driver will not query the
+configuration from tape drives. The \fBst\fR driver looks for the property
+called \fBtape-config-list\fR. The value of this property is a list of
+triplets, where each triplet consists of three strings.
+.sp
+.LP
+The formal syntax is:
+.sp
+.in +2
+.nf
+tape-config-list = <triplet> [, <triplet> *];
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+where
+.sp
+.in +2
+.nf
+<triplet> := <vid+pid>, <pretty print>, <data-property-name>
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+and
+.sp
+.in +2
+.nf
+<data-property-name> = <version>, <type>, <bsize>,
+ <options>, <number of densities>,
+ <density> [, <density>*], <default-density>;
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+or
+.sp
+.in +2
+.nf
+<data-property-name> = <version 2>, <type>, <bsize>,
+ <options>, <number of densities>,
+ <density> [, <density>*], <default-density>,
+ <non-motion time-out>, <I/O time-out>,
+ <rewind time-out>, <space time-out>,
+ <load time-out>, <unload time-out>,
+ <erase time-out>;
+.fi
+.in -2
+.sp
+
+.sp
+.in +2
+.nf
+
+.fi
+.in -2
+
+.sp
+.LP
+A semicolon (\fB;\fR) is used to terminate a prototype devinfo node
+specification. Individual elements listed within the specification should not
+be separated by a semicolon. (Refer to \fBdriver.conf\fR(5) for more
+information.)
+.sp
+.LP
+\fB<vid+pid>\fR is the string that is returned by the tape device on a
+\fBSCSI\fR inquiry command. This string may contain any character in the range
+\fB0x20-0x7e\fR. Characters such as " " " (double quote) or " ' " (single
+quote), which are not permitted in property value strings, are represented by
+their octal equivalent (for example, \fB\e042\fR and \fB\e047\fR). Trailing
+spaces may be truncated.
+.sp
+.LP
+\fB<pretty print>\fR is used to report the device on the console. This string
+may have zero length, in which case the \fB<vid+pid>\fR will be used to report
+the device.
+.sp
+.LP
+\fB<data-property-name>\fR is the name of the property which contains all the
+tape configuration values (such as \fB<type>\fR, \fB<bsize>\fR, etc.)
+corresponding for the tape drive for the specified \fB<vid+pid>\fR\&.
+.sp
+.LP
+\fB<version>\fR is a version number and should be 1 or 2. In the future, higher
+version numbers may be used to allow for changes in the syntax of the
+\fB<data-property-name>\fR value list.
+.sp
+.LP
+\fB<type>\fR is a type field. Valid types are defined in
+\fB/usr/include/sys/mtio.h\fR. For third party tape configuration, the
+following generic types are recommended:
+.sp
+
+.sp
+.TS
+l l
+l l .
+\fBMT_ISQIC\fR 0x32
+\fBMT_ISREEL\fR 0x33
+\fBMT_ISDAT\fR 0x34
+\fBMT_IS8MM\fR 0x35
+\fBMT_ISOTHER\fR 0x36
+\fBMT_ISTAND25G\fR 0x37
+\fBMT_ISDLT\fR 0x38
+\fBMT_ISSTK9840\fR 0x39
+\fBMT_ISBMDLT1\fR 0x3A
+\fBMT_LTO\fR 0x3B
+.TE
+
+.sp
+.LP
+\fB<bsize>\fR is the preferred block size of the tape device. The value should
+be \fB0\fR for variable block size devices.
+.sp
+.LP
+\fB<options>\fR is a bit pattern representing the devices, as defined in
+\fB/usr/include/sys/scsi/targets/stdef.h\fR. Valid flags for tape configuration
+are shown in the following table. Note that this table does not list flags that
+are non-configurable in \fBst.conf\fR (including \fBST_KNOWS_MEDIA\fR which
+uses the media type reported from the mode select data to select the correct
+density code).
+.sp
+
+.sp
+.TS
+l l
+l l .
+\fBST_VARIABLE\fR 0x0001
+\fBST_QIC\fR 0x0002
+\fBST_REEL\fR 0x0004
+\fBST_BSF\fR 0x0008
+\fBST_BSR\fR 0x0010
+\fBST_LONG_ERASE\fR 0x0020
+\fBST_AUTODEN_OVERRIDE\fR 0x0040
+\fBST_NOBUF\fR 0x0080
+\fBST_KNOWS_EOD\fR 0x0200
+\fBST_UNLOADABLE\fR 0x0400
+\fBST_SOFT_ERROR_REPORTING\fR 0x0800
+\fBST_LONG_TIMEOUTS\fR 0x1000
+\fBST_NO_RECSIZE_LIMIT\fR 0x8000
+\fBST_MODE_SEL_COMP\fR 0x10000
+\fBST_NO_RESERVE_RELEASE\fR 0x20000
+\fBST_READ_IGNORE_ILI\fR 0x40000
+\fBST_READ_IGNORE_EOFS\fR 0x80000
+\fBST_SHORT_FILEMARKS\fR 0x100000
+\fBST_EJECT_TAPE_ON_CHANGER_FAILURE\fR 0x200000
+\fBST_RETRY_ON_RECOVERED_DEFERRED_ERROR\fR 0x400000
+\fBST_WORMABLE\fR 0x1000000
+.TE
+
+.sp
+.ne 2
+.na
+\fB\fBST_VARIABLE\fR\fR
+.ad
+.sp .6
+.RS 4n
+The flag indicates the tape device supports variable length record sizes.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBST_QIC\fR\fR
+.ad
+.sp .6
+.RS 4n
+The flag indicates a Quarter Inch Cartridge (QIC) tape device.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBST_REEL\fR\fR
+.ad
+.sp .6
+.RS 4n
+The flag indicates a 1/2\(miinch reel tape device.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBST_BSF\fR\fR
+.ad
+.sp .6
+.RS 4n
+If flag is set, the device supports backspace over EOF marks (bsf - see
+\fBmt\fR(1)).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBST_BSR\fR\fR
+.ad
+.sp .6
+.RS 4n
+If flag is set, the tape device supports the backspace record operation (bsr -
+see \fBmt\fR(1)). If the device does not support bsr, the \fBst\fR driver
+emulates the action by rewinding the tape and using the forward space record
+(fsf) operation to forward the tape to the correct file. The driver then uses
+forward space record (fsr - see \fBmt\fR(1)) to forward the tape to the correct
+record.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBST_LONG_ERASE\fR\fR
+.ad
+.sp .6
+.RS 4n
+The flag indicates the tape device needs a longer time than normal to erase.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBST_AUTODEN_OVERRIDE\fR\fR
+.ad
+.sp .6
+.RS 4n
+The auto-density override flag. The device is capable of determining the tape
+density automatically without issuing a "mode-select"/"mode-sense command."
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBST_NOBUF\fR\fR
+.ad
+.sp .6
+.RS 4n
+The flag disables the device's ability to perform buffered writes. A buffered
+write occurs when the device acknowledges the completion of a write request
+after the data has been written to the device's buffer, but before all of the
+data has been written to the tape.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBST_KNOWS_EOD\fR\fR
+.ad
+.sp .6
+.RS 4n
+If flag is set, the device can determine when EOD (End of Data) has been
+reached. When this flag is set, the \fBst\fR driver uses fast file skipping.
+Otherwise, file skipping happens one file at a time.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBST_UNLOADABLE\fR\fR
+.ad
+.sp .6
+.RS 4n
+The flag indicates the device will not complain if the \fBst\fR driver is
+unloaded and loaded again (see \fBmodload\fR(8) and \fBmodunload\fR(8)). That
+is, the driver will return the correct inquiry string.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBST_SOFT_ERROR_REPORTING\fR\fR
+.ad
+.sp .6
+.RS 4n
+The flag indicates the tape device will perform a "request sense" or "log
+sense" command when the device is closed. Currently, only Exabyte and \fBDAT\fR
+drives support this feature.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBST_LONG_TIMEOUTS\fR\fR
+.ad
+.sp .6
+.RS 4n
+The flag indicates the tape device requires timeouts that are five times longer
+than usual for normal operation.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBST_NO_RECSIZE_LIMIT\fR \fR
+.ad
+.sp .6
+.RS 4n
+The flag applies to variable-length tape devices. If this flag is set, the
+record size is not limited to a 64 Kbyte record size. The record size is only
+limited by the smaller of either the record size supported by the device or the
+maximum DMA transfer size of the system. (Refer to \fBLarge Record Sizes\fR and
+\fBWARNINGS\fR.) The maximum block size that will not be broken into smaller
+blocks can be determined from the mt_bf returned from the MTIOCGET ioctl().
+This number is the lesser of the upper block limit returned by the drive from
+READ BLOCK LIMITS command and the dma-max property set by the Host Bus Adapter
+(HBA) to which the drive is attached.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBST_MODE_SEL_COMP\fR\fR
+.ad
+.sp .6
+.RS 4n
+If the \fBST_MODE_SEL_COMP\fR flag is set, the driver determines which of the
+two mode pages the device supports for selecting or deselecting compression. It
+first tries the Data Compression mode page (\fB0x0F\fR); if this fails, it
+tries the Device Configuration mode page (\fB0x10\fR). Some devices, however,
+may need a specific density code for selecting or deselecting compression.
+Please refer to the device specific \fBSCSI\fR manual. When the flag is set,
+compression is enabled only if the "c" or "u" device is used. Note that when
+the lower 2 densities of a drive are identically configured and the upper 2
+densities are identically configured, but the lower and upper differ from each
+other and ST_MODE_SEL_COMP is set, the "m" node sets compression \fBon\fR for
+the lower density code (for example, 0x42) and the "c" and "u" nodes set
+compression \fBon\fR for the higher density (for example, 0x43). For any other
+device densities, compression is disabled.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBST_NO_RESERVE_RELEASE\fR\fR
+.ad
+.sp .6
+.RS 4n
+The \fBST_NO_RESERVE_RELEASE\fR flag disables the use of reserve on open and
+release on close. If an attempt to use a ioctl of \fBMTRESERVE\fR or
+\fBMTRELEASE\fR on a drive with this flag set, it will return an error of
+\fBENOTTY\fR (inappropriate ioctl for device).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBST_READ_IGNORE_ILI\fR\fR
+.ad
+.sp .6
+.RS 4n
+The \fBST_READ_IGNORE_ILI\fR flag is applicable only to variable block devices
+which support the SILI bit option. The \fBST_READ_IGNORE_ILI\fR flag indicates
+that SILI (suppress incorrect length indicator) bit will be set during reads.
+When this flag is set, short reads (requested read size is less than the record
+size on the tape) will be successful and the number of bytes transferred will
+be equal to the record size on the tape. The tape will be positioned at the
+start of the next record skipping over the extra data (the remaining data has
+been has been lost). Long reads (requested read size is more than the record
+size on the tape) will see a large performance gain when this flag is set, due
+to overhead reduction. When this flag is not set, short reads will return an
+error of \fBENOMEM\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBST_READ_IGNORE_EOFS\fR\fR
+.ad
+.sp .6
+.RS 4n
+The \fBST_READ_IGNORE_EOFS\fR flag is applicable only to 1/2" Reel Tape drives
+and when performing consecutive reads only. It should not be used for any other
+tape command. Usually End-of-recorded-media (EOM) is indicated by two EOF marks
+on 1/2" tape and application cannot read past EOM. When this flag is set, two
+EOF marks no longer indicate EOM allowing applications to read past two EOF
+marks. In this case it is the responsibility of the application to detect
+end-of-recorded-media (EOM). When this flag is set, tape operations (like
+MTEOM) which positions the tape at end-of-recorded-media will fail since
+detection of end-of-recorded-media (EOM) is to be handled by the application.
+This flag should be used when backup applications have embedded double
+filemarks between files.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBST_SHORT_FILEMARKS\fR\fR
+.ad
+.sp .6
+.RS 4n
+The \fBST_SHORT_FILEMARKS\fR flag is applicable only to EXABYTE 8mm tape drives
+which supports short filemarks. When this flag is set, short filemarks is used
+for writing filemarks. Short filemarks could lead to tape incompatible with
+some otherwise compatible device. By default long filemarks will be used for
+writing filemarks.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBST_EJECT_TAPE_ON_CHANGER_FAILURE\fR\fR
+.ad
+.sp .6
+.RS 4n
+If \fBST_EJECT_TAPE_ON_CHANGER_FAILURE\fR flag is set, the tape is ejected
+automatically if the tape cartridge is trapped in the medium due to positioning
+problems of the medium changer.
+.sp
+The following ASC/ASCQ keys are defined to the reasons for causing tape
+ejection if \fBST_EJECT_TAPE_ON_CHANGER_FAILURE\fR option is set to 0x200000:
+.sp
+Sense ASC/ASCQ Description
+.sp
+Key
+.sp
+4 15/01 Mechanical Failure
+.sp
+4 44/00 Internal Target Failure
+.sp
+2 53/00 Media Load or Eject Failed
+.sp
+4 53/00 Media Load or Eject Failed
+.sp
+4 53/01 Unload Tape Failure
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBST_RETRY_ON_RECOVERED_DEFERRED_ERROR\fR\fR
+.ad
+.sp .6
+.RS 4n
+If \fBST_RETRY_ON_RECOVERED_DEFERRED_ERROR\fR flag is set, the \fBst\fR driver
+will retry the last write if this cmd caused a check condition with error code
+0x71 and sense code 0x01. Some tape drives, notably the IBM 3090, require this
+option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBST_WORMABLE\fR\fR
+.ad
+.sp .6
+.RS 4n
+When \fBST_WORMABLE\fR is set, \fBst\fR attempts to detect the presence of WORM
+media in the device.
+.RE
+
+.sp
+.LP
+\fB<number of densities>\fR is the number of densities specified. Each tape
+drive can support up to four densities. The value entered should therefore be
+between \fB1\fR and \fB4\fR; if less than \fB4\fR, the remaining densities will
+be assigned a value of \fB0x0\fR.
+.sp
+.LP
+\fB<density>\fR is a single-byte hexadecimal number. It can either be found in
+the device specification manual or be obtained from the device vendor.
+.sp
+.LP
+\fB<default-density>\fR has a value between \fB0\fR and (<number of densities>
+- \fB1\fR).
+.sp
+.LP
+\fB<non-motion time-out>\fR Time in seconds that the drive should be able to
+perform any SCSI command that doesn't require tape to be moved. This includes
+mode sense, mode select, reserve, release, read block limits, and test unit
+ready.
+.sp
+.LP
+\fB<I/O time-out>\fR Time in seconds to perform data transfer I/O to or from
+tape including worst case error recovery.
+.sp
+.LP
+\fB<rewind time-out>\fR Time in seconds to rewind from anywhere on tape to BOT
+including worst case recovery forcing buffered write data to tape.
+.sp
+.LP
+\fB<space time-out>\fR Time in seconds to space to any file, block or end of
+data on tape. Including worst case when any form of cataloging is invalid.
+.sp
+.LP
+\fB<load time-out>\fR Time in seconds to load tape and be ready to transfer
+first block. This should include worst case recovery reading tape catalog or
+drive specific operations done at load.
+.sp
+.LP
+\fB<unload time-out>\fR Time in seconds to unload tape. Should include worst
+case time to write to catalog, unthread, and tape cartridge unloading. Also
+should include worst case time for any drive specific operations that are
+preformed at unload. Should not include rewind time as the driver rewinds tape
+before issuing the unload.
+.sp
+.LP
+\fB<erase time-out>\fR Time in seconds to preform a full (BOT to EOT) erase of
+longest medium with worst case error recovery.
+.SS "Device Statistics Support"
+.LP
+Each device maintains I/O statistics both for the device and for each partition
+allocated on that device. For each device/partition, the driver accumulates
+reads, writes, bytes read, and bytes written. The driver also takes
+hi-resolution time stamps at queue entry and exit points, which facilitates
+monitoring the residence time and cumulative residence-length product for each
+queue.
+.sp
+.LP
+Each device also has error statistics associated with it. These must include
+counters for hard errors, soft errors and transport errors. Other data may be
+implemented as required.
+.SH IOCTLS
+.LP
+The behavior of \fBSCSI\fR tape positioning ioctls is the same across all
+devices which support them. (Refer to \fBmtio\fR(4I).) However, not all devices
+support all ioctls. The driver returns an \fBENOTTY\fR error on unsupported
+ioctls.
+.sp
+.LP
+The retension ioctl only applies to 1/4" cartridge tape devices. It is used to
+restore tape tension, thus improving the tape's soft error rate after extensive
+start-stop operations or long-term storage.
+.sp
+.LP
+In order to increase performance of variable-length tape devices (particularly
+when they are used to read/write small record sizes), two operations in the
+\fBMTIOCTOP\fR ioctl, \fBMTSRSZ\fR and \fBMTGRSZ\fR, can be used to set and get
+fixed record lengths. The ioctl also works with fixed-length tape drives which
+allow multiple record sizes. The min/max limits of record size allowed on a
+driver are found by using a SCSI-2 \fBREAD\fR \fBBLOCK\fR \fBLIMITS\fR command
+to the device. If this command fails, the default min/max record sizes allowed
+are 1 byte and 63k bytes. An application that needs to use a different record
+size opens the device, sets the size with the \fBMTSRSZ\fR ioctl, and then
+continues with I/O. The scope of the change in record size remains until the
+device is closed. The next open to the device resets the record size to the
+default record size (retrieved from \fBst.conf\fR).
+.sp
+.LP
+Note that the error status is reset by the \fBMTIOCGET\fR get status ioctl call
+or by the next read, write, or other ioctl operation. If no error has occurred
+(sense key is \fB0\fR), the current file and record position is returned.
+.SH ERRORS
+.ne 2
+.na
+\fB\fBEACCES\fR\fR
+.ad
+.RS 10n
+The driver is opened for write access and the tape is write-protected or the
+tape unit is reserved by another host.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEBUSY\fR\fR
+.ad
+.RS 10n
+The tape drive is in use by another process. Only one process can use the tape
+drive at a time. The driver will allow a grace period for the other process to
+finish before reporting this error.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEINVAL\fR\fR
+.ad
+.RS 10n
+The number of bytes read or written is not a multiple of the physical record
+size (fixed-length tape devices only).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEIO\fR\fR
+.ad
+.RS 10n
+During opening, the tape device is not ready because either no tape is in the
+drive, or the drive is not on-line. Once open, this error is returned if the
+requested I/O transfer could not be completed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBENOTTY\fR\fR
+.ad
+.RS 10n
+This indicates that the tape device does not support the requested ioctl
+function.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBENXIO\fR\fR
+.ad
+.RS 10n
+During opening, the tape device does not exist.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBENOMEM\fR\fR
+.ad
+.RS 10n
+This indicates that the record size on the tape drive is more than the
+requested size during read operation.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRGlobal tape-config list property
+.sp
+.LP
+The following is an example of a global \fBtape-config-list\fR property:
+
+.sp
+.in +2
+.nf
+tape-config-list =
+"Magic DAT", "Magic 4mm Helical Scan", "magic-data",
+"Major Appliance", "Major Appliance Tape", "major-tape";
+
+
+magic-data = 1,0x34,1024,0x1639,4,0,0x8c,0x8c,0x8c,3;
+major-tape = 2,0x3c,0,0x18619,4,0x0,0x0,0x0,0x0,
+ 3,0,0,30,120,0,0,36000;
+
+name="st" class="scsi"
+ target=0 lun=0;
+name="st" class="scsi"
+ target=1 lun=0;
+name="st" class="scsi"
+ target=2 lun=0;
+ .
+ .
+ .
+name="st" class="scsi"
+ target=6 lun=0;
+.fi
+.in -2
+
+.LP
+\fBExample 2 \fRTape-config-list property applicable to target 2 only
+.sp
+.LP
+The following is an example of a tape-config-list property applicable to target
+2 only:
+
+.sp
+.in +2
+.nf
+name="st" class="scsi"
+ target=0 lun=0;
+name="st" class="scsi"
+ target=1 lun=0;
+name="st" class="scsi"
+ target=2 lun=0
+ tape-config-list =
+ "Magic DAT", "Magic 4mm Helical Scan", "magic-data"
+ magic-data = 1,0x34,1024,0x1639,4,0,0x8c,0x8c,0x8c,3;
+name="st" class="scsi"
+ target=3 lun=0;
+ .
+ .
+ .
+name="st" class="scsi"
+ target=6 lun=0;
+.fi
+.in -2
+
+.SS "Large Record Sizes"
+.LP
+To support applications such as seismic programs that require large record
+sizes, the flag \fBST_NO_RECSIZE_LIMIT\fR must be set in drive option in the
+configuration entry. A SCSI tape drive that needs to transfer large records
+should \fBOR\fR this flag with other flags in the 'options' field in
+\fBst.conf\fR. (Refer to \fBTape Configuration\fR.) By default, this flag is
+set for the built-in config entries of Archive \fBDAT\fR and Exabyte drives.
+.sp
+.LP
+If this flag is set, the \fBst\fR driver issues a SCSI-2 \fBREAD\fR \fBBLOCK\fR
+\fBLIMITS\fR command to the device to determine the maximum record size allowed
+by it. If the command fails, \fBst\fR continues to use the maximum record sizes
+mentioned in the \fBmtio\fR(4I) man page.
+.sp
+.LP
+If the command succeeds, \fBst\fR restricts the maximum transfer size of a
+variable-length device to the minimum of that record size and the maximum
+\fBDMA\fR size that the host adapter can handle. Fixed-length devices are bound
+by the maximum \fBDMA\fR size allocated by the machine. Note that tapes created
+with a large record size may not be readable by earlier releases or on other
+platforms.
+.sp
+.LP
+(Refer to the \fBWARNINGS\fR section for more information.)
+.SS "EOT Handling"
+.LP
+The Emulex drives have only a physical end of tape (PEOT); thus it is not
+possible to write past EOT. All other drives have a logical end of tape
+(\fBLEOT\fR) before \fBPEOT\fR to guarantee flushing the data onto the tape.
+The amount of storage between \fBLEOT\fR and \fBPEOT\fR varies from less than 1
+Mbyte to about 20 Mbyte, depending on the tape drive.
+.sp
+.LP
+If \fBEOT\fR is encountered while writing an Emulex, no error is reported but
+the number of bytes transferred is \fB0\fR and no further writing is allowed.
+On all other drives, the first write that encounters \fBEOT\fR will return a
+short count or \fB0\fR. If a short count is returned, then the next write will
+return \fB0\fR. After a zero count is returned, the next write returns a full
+count or short count. A following write returns \fB0\fR again. It is important
+that the number and size of trailer records be kept as small as possible to
+prevent data loss. Therefore, writing after \fBEOT\fR is not recommended.
+.sp
+.LP
+Reading past \fBEOT\fR is transparent to the user. Reading is stopped only by
+reading EOF's. For 1/2" reel devices, it is possible to read off the end of the
+reel if one reads past the two file marks which mark the end of recorded media.
+.SH FILES
+.ne 2
+.na
+\fB\fB/kernel/drv/st.conf\fR\fR
+.ad
+.sp .6
+.RS 4n
+driver configuration file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/include/sys/mtio.h\fR\fR
+.ad
+.sp .6
+.RS 4n
+structures and definitions for mag tape io control commands
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/include/sys/scsi/targets/stdef.h\fR\fR
+.ad
+.sp .6
+.RS 4n
+definitions for \fBSCSI\fR tape drives
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/rmt/[0\(mi 127][l,m,h,u,c][b][n]\fR\fR
+.ad
+.sp .6
+.RS 4n
+where \fBl,m,h,u,c\fR specifies the density (low, medium, high,
+ultra/compressed), \fBb\fR the optional BSD behavior (see \fBmtio\fR(4I)), and
+\fBn\fR the optional no rewind behavior. For example, \fB/dev/rmt/0lbn\fR
+specifies unit 0, low density, BSD behavior, and no rewind.
+.sp
+For 1/2" reel tape devices (HP-88780), the densities are:
+.sp
+
+.sp
+.TS
+l l
+l l .
+\fBl\fR 800 BPI density
+\fBm\fR 1600 BPI density
+\fBh\fR 6250 BPI density
+\fBc\fR data compression
+\fB \fR (not supported on all modules)
+.TE
+
+For 8mm tape devices (Exabyte 8200/8500/8505):
+.sp
+
+.sp
+.TS
+l l
+l l .
+\fBl\fR Standard 2 Gbyte format
+\fBm\fR 5 Gbyte format (8500, 8505 only)
+\fBh,c\fR 5 Gbyte compressed format (8505 only)
+.TE
+
+For 4mm \fBDAT\fR tape devices (Archive Python):
+.sp
+
+.sp
+.TS
+l l
+l l .
+\fBl\fR Standard format
+\fBm,h,c\fR data compression
+.TE
+
+For all QIC (other than QIC-24) tape devices:
+.sp
+
+.sp
+.TS
+l l
+l l .
+\fBl,m,h,c\fR density of the tape cartridge type
+ (not all devices can read and
+ write all formats)
+.TE
+
+For QIC-24 tape devices (Emulex MT\(mi02):
+.sp
+
+.sp
+.TS
+l l
+l l .
+\fBl\fR QIC-11 Format
+\fBm,h,c\fR QIC-24 Format
+.TE
+
+.RE
+
+.SH SEE ALSO
+.LP
+.BR mt (1),
+.BR open (2),
+.BR read (2),
+.BR write (2),
+.BR aioread (3C),
+.BR aiowrite (3C),
+.BR kstat (3KSTAT),
+.BR esp (4D),
+.BR isp (4D),
+.BR mtio (4I),
+.BR driver.conf (5),
+.BR scsi (5),
+.BR standards (7),
+.BR modload (8),
+.BR modunload (8),
+.BR ioctl (9E)
+.SH DIAGNOSTICS
+.LP
+The \fBst\fR driver diagnostics may be printed to the console or messages file.
+.sp
+.LP
+Each diagnostic is dependent on the value of the system variable
+\fBst_error_level\fR. \fBst_error_level\fR may be set in the \fB/etc/system\fR
+file. The default setting for \fBst_error_level\fR is 4 (SCSI_ERR_RETRYABLE)
+which is suitable for most configurations since only actual fault diagnostics
+are printed. Settings range from values 0 (SCSI_ERR_ALL) which is most verbose,
+to 6 (SCSI_ERR_NONE) which is least verbose. See \fBstdef.h\fR for the full
+list of error-levels. SCSI_ERR_ALL level the amount of diagnostic information
+is likely to be excessive and unnecessary.
+.sp
+.LP
+The st driver diagnostics are described below:
+.sp
+.in +2
+.nf
+Error for Command: <scsi_cmd_name()> Error Level:<error_class>
+Requested Block: <blkno> Error Block: <err_blkno>
+Vendor: <name>: Serial Number: <inq_serial>
+Sense Key: <es_key> ASC: 0x<es_add_code> (scsi_asc_ascq_name()>), ASCQ:
+0x<es_qual_code>, FRU: 0x<ex_fru_code>
+.fi
+.in -2
+
+.sp
+.LP
+where <error_class> may be any one of the following: "All," "Unknown,"
+"Informational," "Recovered," "Retryable," "Fatal"
+.sp
+.LP
+The command indicated by <scsi_cmd_name> failed. Requested Block represents the
+block where the transfer started. Error Block represents the block that caused
+the error. Sense Key, ASC, ASCQ and FRU information is returned by the target
+in response to a request sense command. See SCSI protocol documentation for
+description of Sense Key, ASC, ASCQ, FRU.
+.sp
+.LP
+The st driver attempts to validate entries in the \fBst.conf\fR file. Each
+field in the entry is checked for upper and lower limits and invalid bits set.
+The fields are named as follows in config string order:
+.sp
+.in +2
+.nf
+ conf version
+ drive type
+ block size
+ options
+ number of densities
+ density code
+ default density
+ non motion timeout
+ I/O timeout
+ space timeout
+ load timeout
+ unload timeout
+ erase timeout
+.fi
+.in -2
+
+.sp
+.LP
+The \fBst.conf\fR diagnostics are described below:
+.sp
+.in +2
+.nf
+<con-name> <field-in-err> <problem-with-field>
+.fi
+.in -2
+
+.sp
+.LP
+where <con-name> is the name of the config string. Where <field-in-err> is the
+field containing invalid entries and where <problem-with-field> describes the
+nature of the invalid entry.
+.sp
+.in +2
+.nf
+Write/read: not modulo <n> block size
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The request size for fixed record size devices must be a multiple of the
+specified block size.
+.sp
+.in +2
+.nf
+Recovery by resets failed
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+After a transport error, the driver attempted to recover by issuing a device
+reset and then a bus reset if device reset failed. These recoveries failed.
+.sp
+.in +2
+.nf
+Periodic head cleaning required
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The driver reported that periodic head cleaning is now required. This
+diagnostic is generated either due to a threshold number of retries, or due to
+the device communicating to the driver that head cleaning is required.
+.sp
+.in +2
+.nf
+Soft error rate (<n>%) during writing/reading was too high
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The soft error rate has exceeded the threshold specified by the vendor.
+.sp
+.in +2
+.nf
+SCSI transport failed: reason 'xxxx': {retrying|giving up}
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The Host Bus Adapter (HBA) has failed to transport a command to the target for
+the reason stated. The driver will either retry the command or, ultimately,
+give up.
+.sp
+.in +2
+.nf
+Tape not inserted in drive
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+A media access command was attempted while there was no tape inserted into the
+specified drive. In this case, the drive returns sense key of DRIVE NOT READY.
+.sp
+.in +2
+.nf
+Transport rejected
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The Host Bus Adapter (HBA) driver is not accepting commands after failing to
+successfully transport a scsi packet to the target. The actual status received
+by the \fBst\fR driver from the underlying HBA driver was either
+TRAN_FATAL_ERROR or TRAN_BADPKT.
+.sp
+.in +2
+.nf
+Retrying command
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The \fBst\fR driver failed to complete a command. However the command is
+retryable and will be retried.
+.sp
+.in +2
+.nf
+Giving up
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The \fBst\fR driver has exhausted retries or otherwise is unable to retry the
+command and so is giving up.
+.sp
+.in +2
+.nf
+No target struct for st%d
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The \fBst\fR driver failed to obtain state information because the requested
+state structure was not allocated. The specified device was probably not
+attached.
+.sp
+.in +2
+.nf
+File mark detected
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The operation detected an end of file mark. (File marks signify the end of a
+file on the tape media).
+.sp
+.in +2
+.nf
+End-of-media detected
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The operation reached the end of the tape media.
+.sp
+.in +2
+.nf
+Exabyte soft error reporting failed. DAT soft error reporting failed
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The \fBst\fR driver was unable to determine if the soft error threshold had
+been exceeded because it did not successfully read the data it requires or did
+not obtain enough data. This data is retrieved using the log sense command.
+.sp
+.in +2
+.nf
+Log sense parameter code does not make sense
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The log sense command retrieves hardware statistics that are stored on the
+drive (for example, soft error counts and retries.) If the data retrieved from
+the drive is invalid, this message is printed and the data is not used.
+.sp
+.in +2
+.nf
+Restoring tape position at fileno=%x, blkno=%lx....
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The \fBst\fR driver is positioning to the specified file and block. This occurs
+on an open.
+.sp
+.in +2
+.nf
+Failed to restore the last <file/block> position:
+In this state, tape will be loaded at BOT during next open
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The \fBst\fR driver could not position to the specified location and will
+revert to the beginning of the tape when the next open is attempted.
+.sp
+.in +2
+.nf
+Device does not support compression
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The compression facility of the device was requested. However the device does
+not have a hardware compression capability.
+.sp
+.in +2
+.nf
+DAT soft error reset failed
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+After DAT soft error reporting, the counters within the device that accumulate
+this sense data need to be re-set. This operation failed.
+.sp
+.in +2
+.nf
+Errors after pkt alloc (b_flags=0x%x, b_error=0x%x)
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Memory allocation for a \fBscsi\fR packet failed.
+.sp
+.in +2
+.nf
+Incorrect length indicator set
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The drive reported the length of data requested in a READ operation, was
+incorrect. Incorrect Length Indicator (ILI) is a very commonly used facility in
+SCSI tape protocol and should not be seen as an error per-se. Applications
+typically probe a new tape with a read of any length, using the returned length
+to the read system call for future reads. Along with this operation, an
+underlying ILI error is received. ILI errors are therefore informational only
+and are masked at the default \fBst_error_level\fR.
+.sp
+.in +2
+.nf
+Data property (%s) has no value
+Data property (%s) incomplete
+Version # for data property (%s) greater than 1
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+These diagnostics indicate problems in retrieving the values of the various
+property settings. The \fBst\fR driver is in the process of setting the
+property/parameter values for the tape drive using information from either the
+built-in table within the driver or from uncommented entries in the
+\fBst.conf\fR file. The effect on the system may be that the tape drive may be
+set with default or generic driver settings which may not be appropriate for
+the actual type of tape drive being used.
+.sp
+.in +2
+.nf
+st_attach-RESUME: tape failure tape position will be lost
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+On a resume after a power management suspend, the previously known tape
+position is no longer valid. This can occur if the tape was changed while the
+system was in power management suspend. The operation will not be retried.
+.sp
+.in +2
+.nf
+Write Data Buffering has been deprecated. Your applications should
+continue to work normally. However, they should be ported to use
+Asynchronous I/O.
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Indicates that buffering has been removed from Solaris.
+.sp
+.in +2
+.nf
+Cannot detach: fileno=%x, blkno=%lx
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The \fBst\fR driver cannot unload because the tape is not positioned at BOT
+(beginning of tape). May indicate hardware problems with the tape drive.
+.sp
+.in +2
+.nf
+Variable record length I/O
+Fixed record length (%d byte blocks) I/O
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Tape-drives can use either Fixed or Variable record length. If the drive uses
+Fixed length records, then the built in property table or the st.conf file will
+contain a non-zero record-length property. Most DAT, Exabyte and DLT drives
+support Variable record lengths. Many QIC format tape drives have historically
+been of Fixed record length.
+.sp
+.in +2
+.nf
+Command will be retried
+ un_ncmds: %d can't retry cmd
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+These diagnostics are only seen with tape drives with the
+ST_RETRY_ON_RECOVERED_DEFERRED_ERROR bit set. See \fBstdef.h\fR for explanation
+of the specific usage of this setting.
+.SH WARNINGS
+.LP
+Effective with Solaris 2.4, the \fBST_NO_RECSIZE_LIMIT\fR flag is set for the
+built-in config entries of the Archive \fBDAT\fR and Exabyte drivers by
+default. (Refer to \fBLarge Record Sizes\fR.) Tapes written with large block
+sizes prior to Solaris 2.4 may cause some applications to fail if the number of
+bytes returned by a read request is less than the requested block size (for
+example, asking for 128 Kbytes and receiving less than 64 Kbytes).
+.sp
+.LP
+The \fBST_NO_RECSIZE_LIMIT\fR flag can be disabled in the config entry for the
+device as a work-around. (Refer to \fBTape Configuration\fR.) This action
+disables the ability to read and write with large block sizes and allows the
+reading of tapes written prior to Solaris 2.4 with large block sizes.
+.sp
+.LP
+(Refer to \fBmtio\fR(4I) for a description of maximum record sizes.)
+.SH BUGS
+.LP
+Tape devices that do not return a \fBBUSY\fR status during tape loading prevent
+user commands from being held until the device is ready. The user must delay
+issuing any tape operations until the tape device is ready. This is not a
+problem for tape devices supplied by Sun Microsystems.
+.sp
+.LP
+Tape devices that do not report a blank check error at the end of recorded
+media may cause file positioning operations to fail. Some tape drives, for
+example, mistakenly report media error instead of blank check error.
diff --git a/usr/src/man/man4d/su.4d b/usr/src/man/man4d/su.4d
new file mode 100644
index 0000000000..f5280f18a7
--- /dev/null
+++ b/usr/src/man/man4d/su.4d
@@ -0,0 +1,243 @@
+'\" te
+.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SU 4D "April 9, 2016"
+.SH NAME
+su \- asynchronous serial port driver
+.SH SYNOPSIS
+.LP
+.nf
+#include <fcntl.h>
+#include <sys/termios.h>
+open("/dev/tty\fI[a-z]\fR", _\fImode\fR);
+open("/dev/term\fI[a-z]\fR", _\fImode\fR);
+open("/dev/cua\fI[a-z]\fR", _\fImode\fR);
+.fi
+
+.LP
+.nf
+
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBsu\fR module is a loadable STREAMS driver that provides basic support
+for standard \fBUARTS\fR that use Intel-8250, National
+Semiconductor-16450/16550 hardware and Southbridge 1535D (16550 compatible)
+Super I/O hardware. The module also provides keyboard and mouse I/O support for
+Sun machines using those same Intel, National Semiconductor and Southbridge
+chipsets. The \fBsu\fR driver provides basic asynchronous communication support
+for serial ports. Both the serial devices and keyboard/mouse devices will have
+streams built with appropriate modules pushed atop the \fBsu\fR driver by
+means of either the \fBautopush\fR(8) or \fBdacf.conf\fR(5) facilities,
+depending on the OS revision and architecture in use.
+.sp
+.LP
+The \fBsu\fR module supports those \fBtermio\fR(4I) device control functions
+specified by flags in the \fBc_cflag\fR word of the \fBtermios\fR structure,
+and by the \fBIGNBRK,\fR \fBIGNPAR,\fR \fBPARMRK,\fR or \fBINPCK\fR flags in
+the \fBc_iflag\fR word of the \fBtermios\fR structure. All other
+\fBtermio\fR(4I) functions must be performed by \fBSTREAMS\fR modules pushed
+atop the driver. When a device is opened, the \fBldterm\fR(4M) and
+\fBttcompat\fR(4M) \fBSTREAMS\fR modules are automatically pushed on top of the
+stream, providing the standard \fBtermio\fR(4I) interface.
+.sp
+.LP
+The character-special devices \fB/dev/ttya\fR and \fB/dev/ttyb\fR are used to
+access the two standard serial ports. The \fBsu\fR module supports up to ten
+serial ports, including the standard ports. The \fBtty\fR\fI[a-z]\fR devices
+have minor device numbers in the range 00-03, and may be assigned names of the
+form \fB/dev/ttyd_\fR\fIn_,\fR where \fI_n_\fR denotes the line to be accessed.
+These device names are typically used to provide a logical access point for a
+\fI_dial-in_\fR line that is used with a modem.
+.sp
+.LP
+To allow a single tty line to be connected to a modem and used for incoming and
+outgoing calls, a special feature is available that is controlled by the minor
+device number. By accessing character-special devices with names of the form
+\fB/dev/cua\fR\fI_n, \fR it is possible to open a port without the \fBCarrier
+Detect\fR signal being asserted, either through hardware or an equivalent
+software mechanism. These devices are commonly known as \fI_dial-out_\fR lines.
+.SH APPLICATION PROGRAMMING INTERFACE
+.LP
+Once a \fB/dev/cua\fR\fI_n_\fR line is opened, the corresponding tty, or ttyd
+line cannot be opened until the \fB/dev/cua\fR\fI_n_\fR line is closed. A
+blocking open will wait until the \fB/dev/cua\fR\fI_n_\fR line is closed (which
+will drop \fBData Terminal Ready\fR, after which \fBCarrier Detect\fR will
+usually drop as well) and carrier is detected again. A non-blocking open will
+return an error. If the \fB/dev/ttyd\fR\fI_n_\fR line has been opened
+successfully (usually only when carrier is recognized on the modem), the
+corresponding \fB/dev/cua\fR\fI_n_\fR line cannot be opened. This allows a
+modem to be attached to a device, (for example, \fB/dev/ttyd0\fR, which is
+renamed from \fB/dev/tty00\fR) and used for dial-in (by enabling the line for
+login in \fB/etc/inittab\fR) or dial-out (by \fBtip\fR(1) or \fBuucp\fR(1C)) as
+\fB/dev/cua0\fR when no one is logged in on the line.
+.SH IOCTLS
+.LP
+The standard set of \fBtermio\fR \fBioctl()\fR calls are supported by \fBsu\fR.
+.sp
+.LP
+Breaks can be generated by the \fBTCSBRK,\fR \fBTIOCSBRK,\fR and \fBTIOCCBRK\fR
+\fBioctl()\fR calls.
+.sp
+.LP
+The input and output line speeds may be set to any of the following baud rates:
+0, 50, 75, 110, 134, 150, 200, 300, 600, 1200, 1800, 2400, 4800, 9600, 19200,
+38400, 57600 or 115200. The speeds cannot be set independently; for example,
+when the output speed is set, the input speed is automatically set to the same
+speed.
+.sp
+.LP
+When the \fBsu\fR module is used to service the serial console port, it
+supports a BREAK condition that allows the system to enter the debugger or the
+monitor. The BREAK condition is generated by hardware and it is usually enabled
+by default.
+.sp
+.LP
+A BREAK condition originating from erroneous electrical signals cannot be
+distinguished from one deliberately sent by remote DCE. The Alternate Break
+sequence can be used as a remedy against this. Due to a risk of incorrect
+sequence interpretation, SLIP and certain other binary protocols should not be
+run over the serial console port when Alternate Break sequence is in effect.
+Although PPP is a binary protocol, it is able to avoid these sequences using
+the ACCM feature in \fIRFC 1662\fR. For Solaris PPP 4.0, you do this by adding
+the following line to the \fB/etc/ppp/options\fR file (or other configuration
+files used for the connection; see \fBpppd\fR(8) for details):
+.sp
+.in +2
+.nf
+asyncmap 0x00002000
+.fi
+.in -2
+
+.sp
+.LP
+By default, the Alternate Break sequence is a three character sequence:
+carriage return, tilde and control-B (CR ~ CTRL-B), but may be changed by the
+driver. For more information on breaking (entering the debugger or monitor),
+see \fBkbd\fR(1) and \fBkb\fR(4M).
+.SH ERRORS
+.LP
+An \fBopen()\fR will fail under the following conditions:
+.sp
+.ne 2
+.na
+\fB\fBENXIO\fR\fR
+.ad
+.RS 9n
+The unit being opened does not exist.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEBUSY\fR\fR
+.ad
+.RS 9n
+The dial-out device is being opened while the dial-in device is already open,
+or the dial-in device is being opened with a no-delay open and the dial-out
+device is already open.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEBUSY\fR\fR
+.ad
+.RS 9n
+The unit has been marked as exclusive-use by another process with a
+\fBTIOCEXCL\fR \fBioctl()\fR call.
+.RE
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/dev/cua/[a-z]\fR\fR
+.ad
+.RS 19n
+dial-out tty lines
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/term/[a-z]\fR\fR
+.ad
+.RS 19n
+dial-in tty lines
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/tty[a-z]\fR\fR
+.ad
+.RS 19n
+binary compatibility package device names
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture SPARC
+.TE
+
+.SH SEE ALSO
+.LP
+.BR kbd (1),
+.BR strconf (1),
+.BR tip (1),
+.BR uucp (1C),
+.BR ioctl (2),
+.BR open (2),
+.BR termios (3C),
+.BR termio (4I),
+.BR kb (4M),
+.BR ldterm (4M),
+.BR ttcompat (4M),
+.BR dacf.conf (5),
+.BR attributes (7),
+.BR autopush (8),
+.BR kstat (8),
+.BR pppd (8)
+.SH DIAGNOSTICS
+.LP
+The \fBsu\fR driver keeps track of various warning and error conditions using
+\fBkstat\fR counters. The output of the \fBkstat su\fR command provides
+\fBkstat\fR counters. The counters and their meaning follow:
+.sp
+.ne 2
+.na
+\fBsilo overflow\fR
+.ad
+.RS 24n
+The internal chip FIFO received more data than it could handle. This indicates
+that the Solaris operating environment was not servicing data interrupts fast
+enough possibly due to a system with too many interrupts or a data line with a
+data rate that is too high.
+.RE
+
+.sp
+.ne 2
+.na
+\fBring buffer overflow\fR
+.ad
+.RS 24n
+The \fBsu\fR module was unable to store data it removed from the chips
+internal FIFO into a software buffer. The user process is not reading data fast
+enough, possibly due to an overloaded system. If possible, the application
+should enable flow control (either CTSRTS or XONXOFF) to allow the driver to
+backpressure the remote system when the local buffers fill up.
+.RE
+
diff --git a/usr/src/man/man4d/sysmsg.4d b/usr/src/man/man4d/sysmsg.4d
new file mode 100644
index 0000000000..503a748f76
--- /dev/null
+++ b/usr/src/man/man4d/sysmsg.4d
@@ -0,0 +1,45 @@
+'\" te
+.\" Copyright (c) 1998, Sun Microsystems, Inc.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SYSMSG 4D "Oct 13, 1998"
+.SH NAME
+sysmsg \- system message routing to console devices
+.SH SYNOPSIS
+.LP
+.nf
+\fB/dev/sysmsg\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The file \fB/dev/sysmsg\fR routes output to a variable set of console devices.
+Writes to \fB/dev/sysmsg\fR are always directed to the system console
+\fB/dev/console\fR, and are in addition directed to a set of auxiliary console
+devices managed by \fBconsadm\fR(8).
+.sp
+.LP
+Only root has permission to write to this device.
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Stable
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+\fBconsadm\fR(8), \fBsyslogd\fR(8) , \fBconsole\fR(4D),
+.BR attributes (7)
diff --git a/usr/src/man/man4d/systrace.4d b/usr/src/man/man4d/systrace.4d
new file mode 100644
index 0000000000..5c494c0386
--- /dev/null
+++ b/usr/src/man/man4d/systrace.4d
@@ -0,0 +1,47 @@
+'\" te
+.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SYSTRACE 4D "Dec 10, 2017"
+.SH NAME
+systrace \- DTrace system call tracing provider
+.SH DESCRIPTION
+.LP
+The \fBsystrace\fR driver implements the DTrace \fBsyscall\fR dynamic tracing
+provider. The syscall provider performs dynamic instrumentation to offer probes
+that fire whenever a thread enters or returns from a kernel system call entry
+point.
+.sp
+.LP
+The \fBsystrace\fR driver is not a public interface and you access the
+instrumentation offered by this provider through DTrace. Refer to the
+\fIDynamic Tracing Guide\fR for a description of the public documented
+interfaces available for the DTrace facility and the probes offered by the
+\fBsyscall\fR provider.
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for a description of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Private
+.TE
+
+.SH SEE ALSO
+.LP
+.BR dtrace (4D),
+.BR attributes (7),
+.BR dtrace (8)
+.sp
+.LP
+\fIDynamic Tracing Guide\fR:
+.sp
+.LP
+https://illumos.org/books/dtrace/
diff --git a/usr/src/man/man4d/ticlts.4d b/usr/src/man/man4d/ticlts.4d
new file mode 100644
index 0000000000..f48e676f9d
--- /dev/null
+++ b/usr/src/man/man4d/ticlts.4d
@@ -0,0 +1,216 @@
+'\" te
+.\" Copyright 2000, Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH TICLTS 4D "Jul 3, 1990"
+.SH NAME
+ticlts, ticots, ticotsord \- loopback transport providers
+.SH SYNOPSIS
+.LP
+.nf
+#include <sys/ticlts.h>
+.fi
+
+.LP
+.nf
+#include <sys/ticots.h>
+.fi
+
+.LP
+.nf
+#include <sys/ticotsord.h>
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The devices known as \fBticlts\fR, \fBticots\fR, and \fBticotsord\fR are
+``loopback transport providers,'' that is, stand-alone networks at the
+transport level. Loopback transport providers are transport providers in every
+sense except one: only one host (the local machine) is ``connected to'' a
+loopback network. Loopback transports present a \fBTPI\fR (STREAMS-level)
+interface to application processes and are intended to be accessed via the
+\fBTLI\fR (application-level) interface. They are implemented as clone devices
+and support address spaces consisting of ``flex-addresses,'' that is, arbitrary
+sequences of octets of length > 0, represented by a \fBnetbuf\fR structure.
+.sp
+.LP
+\fBticlts\fR is a datagram-mode transport provider. It offers (connectionless)
+service of type \fBT_CLTS\fR. Its default address size is
+\fBTCL_DEFAULTADDRSZ\fR. \fBticlts\fR prints the following error messages (see
+\fBt_rcvuderr\fR(3NSL)):
+.sp
+.ne 2
+.na
+\fBTCL_BADADDR\fR
+.ad
+.RS 20n
+bad address specification
+.RE
+
+.sp
+.ne 2
+.na
+\fBTCL_BADOPT\fR
+.ad
+.RS 20n
+bad option specification
+.RE
+
+.sp
+.ne 2
+.na
+\fBTCL_NOPEER\fR
+.ad
+.RS 20n
+bound
+.RE
+
+.sp
+.ne 2
+.na
+\fBTCL_PEERBADSTATE\fR
+.ad
+.RS 20n
+peer in wrong state
+.RE
+
+.sp
+.LP
+\fBticots\fR is a virtual circuit-mode transport provider. It offers
+(connection-oriented) service of type \fBT_COTS\fR. Its default address size is
+\fBTCO_DEFAULTADDRSZ\fR. \fBticots\fR prints the following disconnect messages
+(see \fBt_rcvdis\fR(3NSL)):
+.sp
+.ne 2
+.na
+\fBTCO_NOPEER\fR
+.ad
+.RS 25n
+no listener on destination address
+.RE
+
+.sp
+.ne 2
+.na
+\fBTCO_PEERNOROOMONQ\fR
+.ad
+.RS 25n
+peer has no room on connect queue
+.RE
+
+.sp
+.ne 2
+.na
+\fBTCO_PEERBADSTATE\fR
+.ad
+.RS 25n
+peer in wrong state
+.RE
+
+.sp
+.ne 2
+.na
+\fBTCO_PEERINITIATED\fR
+.ad
+.RS 25n
+peer-initiated disconnect
+.RE
+
+.sp
+.ne 2
+.na
+\fBTCO_PROVIDERINITIATED\fR
+.ad
+.RS 25n
+provider-initiated disconnect
+.RE
+
+.sp
+.LP
+\fBticotsord\fR is a virtual circuit-mode transport provider, offering service
+of type \fBT_COTS_ORD\fR (connection-oriented service with orderly release).
+Its default address size is \fBTCOO_DEFAULTADDRSZ\fR. \fBticotsord\fR prints
+the following disconnect messages (see \fBt_rcvdis\fR(3NSL)):
+.sp
+.ne 2
+.na
+\fBTCOO_NOPEER\fR
+.ad
+.RS 26n
+no listener on destination address
+.RE
+
+.sp
+.ne 2
+.na
+\fBTCOO_PEERNOROOMONQ\fR
+.ad
+.RS 26n
+peer has no room on connect queue
+.RE
+
+.sp
+.ne 2
+.na
+\fBTCOO_PEERBADSTATE\fR
+.ad
+.RS 26n
+peer in wrong state
+.RE
+
+.sp
+.ne 2
+.na
+\fBTCOO_PEERINITIATED\fR
+.ad
+.RS 26n
+provider-initiated disconnect
+.RE
+
+.sp
+.ne 2
+.na
+\fBTCOO_PROVIDERINITIATED\fR
+.ad
+.RS 26n
+peer-initiated disconnect
+.RE
+
+.SH USAGE
+.sp
+.LP
+Loopback transports support a local \fBIPC\fR mechanism through the \fBTLI\fR
+interface. Applications implemented in a transport provider-independent manner
+on a client-server model using this \fBIPC\fR are transparently transportable
+to networked environments.
+.sp
+.LP
+Transport provider-independent applications must not include the headers listed
+in the synopsis section above. In particular, the options are (like all
+transport provider options) provider dependent.
+.sp
+.LP
+\fBticlts\fR and \fBticots\fR support the same service types (\fBT_CLTS\fR and
+\fBT_COTS\fR) supported by the \fBOSI\fR transport-level model.
+.sp
+.LP
+\fBticotsord\fR supports the same service type (\fBT_COTSORD\fR) supported by
+the \fBTCP/IP\fR model.
+.SH FILES
+.sp
+.LP
+\fB/dev/ticlts\fR
+.sp
+.LP
+\fB/dev/ticots\fR
+.sp
+.LP
+\fB/dev/ticotsord\fR
+.SH SEE ALSO
+.sp
+.LP
+.BR t_rcvdis (3NSL),
+.BR t_rcvuderr (3NSL)
diff --git a/usr/src/man/man4d/todopl.4d b/usr/src/man/man4d/todopl.4d
new file mode 100644
index 0000000000..15213c4a0e
--- /dev/null
+++ b/usr/src/man/man4d/todopl.4d
@@ -0,0 +1,33 @@
+'\" te
+.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH TODOPOL 4D "Apr 18, 2006"
+.SH NAME
+todopl \- Time-Of-Day driver for SPARC Enterprise Server family
+.SH DESCRIPTION
+.sp
+.LP
+The \fBtodopl\fR driver is the Time-Of-Day (TOD) driver for the SPARC
+Enterprise Server family.
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Private
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7)
diff --git a/usr/src/man/man4d/tsalarm.4d b/usr/src/man/man4d/tsalarm.4d
new file mode 100644
index 0000000000..2374cd47cc
--- /dev/null
+++ b/usr/src/man/man4d/tsalarm.4d
@@ -0,0 +1,294 @@
+'\" te
+.\" Copyright (c) 2004, Sun Microsystems, Inc.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH TSALARM 4D "Sep 10, 2013"
+.SH NAME
+tsalarm \- Alarm device driver
+.SH SYNOPSIS
+.LP
+.nf
+tsalarm@0:ctl
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBtsalarm\fR driver is a Multi-threaded, loadable non-STREAMS pseudo
+driver that manages ALOM alarms. The \fBtsalarm\fR driver provides an interface
+through which alarm relays can be controlled on SUNW,Netra-240 and
+SUNW,Netra-440 platforms.
+.SH HARDWARE INTERFACE
+.sp
+.LP
+The alarm hardware differs depending on platform. The Netra 240 and 440
+platforms features four dry contact alarm relays which are controlled by
+ALOM. You can set each alarm to "on" or "off" by using ioctl interfaces
+provided from the host. The four alarms are labeled as "critical," "major,"
+"minor," and "user." The user alarm is set by a user application depending on
+system condition. LED's in front of the box provide a visual indication of the
+four alarms. The number of alarms and their meanings/labels may vary across
+platforms.
+.SH IOCTLS
+.sp
+.LP
+The interface provided by the \fBtsalarm\fR driver comprises ioctls that enable
+applications to manipulate the alarm module. The alarm module is accessed via
+two device nodes: i) \fB/dev/lom\fR and \fB/dev/tsalarm:ctl\fR.
+.sp
+.LP
+The following ioctls are supported by the \fB/dev/lom\fR and
+\fB/dev/tsalarm:ctl\fR devices:
+.sp
+.ne 2
+.na
+\fB\fBTSIOCALCTL - Turn an alarm on or off.\fR\fR
+.ad
+.sp .6
+.RS 4n
+The argument is a pointer to the \fBts_aldata_t/lom_aldata_t\fR structure. This
+structure is described below. \fBalarm_no member\fR is an integer which
+specifies the alarm to which the command is to be applied. The
+\fBalarm_state/state\fR structure member indicates the state to which the alarm
+should be set (where 0 == off). An error (\fBEINVAL\fR) is returned if either
+an invalid alarm_no or invalid alarm_state is provided.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBTSIOCALSTATE - Get the state of the alarms.\fR\fR
+.ad
+.sp .6
+.RS 4n
+The argument is a pointer to the \fBts_aldata_t/lom_aldata_t\fR structure. This
+structure is described below. \fBalarm_no member\fR is an integer which
+indicates the alarm to which the command will be applied. The
+\fBalarm_state\fR member holds the alarm's current state and is filled in by
+the driver. A zero indicates that the alarm is off. An error (\fBEINVAL\fR) is
+returned if an invalid alarm_no is provided. The structures and definitions for
+the values are defined below.
+.RE
+
+.sp
+.LP
+Alarm values:
+.sp
+.in +2
+.nf
+The following old style values are defined in <lom.io.h>
+
+ #define ALARM_NUM_0 0 /* number of zero'th alarm */
+
+ #define ALARM_NUM_1 1 /* number of first alarm */
+
+ #define ALARM_NUM_2 2 /* number of second alarm */
+
+ #define ALARM_NUM_3 3 /* number of third alarm */
+
+ Alarm values defined in <lom.io.h>
+
+ #define ALARM_OFF 0 /* Turn off alarm */
+
+ #define ALARM_ON 1 /* Turn on alarm */
+.fi
+.in -2
+
+.sp
+.LP
+Alarm Data Structure:
+.sp
+.in +2
+.nf
+This structure is defined in <lom.io.h>
+
+ typedef struct {
+
+ int alarm_no; /* alarm to apply command to */
+
+ int alarm_state; /* state of alarm (0 == off) */
+
+ } ts_aldata_t;
+.fi
+.in -2
+
+.sp
+.LP
+Use the following LOM interfaces to get and set the alarms. These definitions
+are included in <lom_io.h>
+.sp
+.in +2
+.nf
+ #define ALARM_CRITICAL 0 /* number of critical alarm */
+
+ #define ALARM_MAJOR 1 /* number of major alarm */
+
+ #define ALARM_MINOR 2 /* number of minor alarm */
+
+ #define ALARM_USER 3 /* number of user alarm */
+.fi
+.in -2
+
+.sp
+.LP
+The following alarm data structure is provided in <lom_io.h>:
+.sp
+.in +2
+.nf
+typedef struct {
+
+ int alarm_no;
+
+ int state;
+
+ } lom_aldata_t;
+.fi
+.in -2
+
+.SH ERRORS
+.sp
+.LP
+An \fBopen()\fR will fail if:
+.sp
+.ne 2
+.na
+\fBENXIO\fR
+.ad
+.RS 9n
+The driver is not installed in the system.
+.RE
+
+.sp
+.LP
+An \fBioctl()\fR will fail if:
+.sp
+.ne 2
+.na
+\fBEFAULT\fR
+.ad
+.RS 10n
+There was a hardware failure during the specified operation.
+.RE
+
+.sp
+.ne 2
+.na
+\fBEINVAL\fR
+.ad
+.RS 10n
+The alarm number specified is not valid or an invalid value was supplied.
+.RE
+
+.sp
+.ne 2
+.na
+\fBENXIO\fR
+.ad
+.RS 10n
+The driver is not installed in the system or the monitor callback routine could
+not be scheduled.
+.RE
+
+.SH EXAMPLES
+.sp
+.in +2
+.nf
+How to set an alarm:
+
+ #include <sys/unistd.h>
+ #include <fcntl.h>
+ #include <stdio.h>
+ #include <lom_io.h>
+
+ #define LOM_DEVICE "/dev/lom"
+
+ int
+ main()
+ {
+ lom_aldata_t lld;
+ int fd = open(LOM_DEVICE, O_RDWR);
+
+ if (fd == -1) {
+ printf("Error opening device: %s\en", LOM_DEVICE);
+ exit (1);
+ }
+
+ lld.alarm_no = ALARM_CRITICAL; /* Set the critical alarm */
+ lld.state = ALARM_ON; /* Set the alarm */
+
+ if (ioctl(fd, LOMIOCALCTL, (char *)&lld) != 0)
+ printf("Setting alarm failed");
+ else
+ printf("Alarm set successfully");
+
+ close(fd);
+
+ }
+.fi
+.in -2
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/dev/lom\fR\fR
+.ad
+.sp .6
+.RS 4n
+LOM device.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/tsalarm:ctl\fR\fR
+.ad
+.sp .6
+.RS 4n
+Alarm control device.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/platform/platform/kernel/drv/sparcv9/tsalarm\fR\fR
+.ad
+.sp .6
+.RS 4n
+Device driver module.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/platform/SUNW,Netra-240/kernel/drv/tsalarm.conf\fR\fR
+.ad
+.sp .6
+.RS 4n
+Driver configuration file.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture SPARC
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7)
+.sp
+.LP
+\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man4d/tty.4d b/usr/src/man/man4d/tty.4d
new file mode 100644
index 0000000000..96ee4e35d7
--- /dev/null
+++ b/usr/src/man/man4d/tty.4d
@@ -0,0 +1,30 @@
+'\" te
+.\" Copyright 1989 AT&T
+.\" Copyright (C) 1999, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH TTY 4D "Jul 3, 1990"
+.SH NAME
+tty \- controlling terminal interface
+.SH DESCRIPTION
+.sp
+.LP
+The file \fB/dev/tty\fR is, in each process, a synonym for the control terminal
+associated with the process group of that process, if any. It is useful for
+programs or shell sequences that wish to be sure of writing messages on the
+terminal no matter how output has been redirected. It can also be used for
+programs that demand the name of a file for output, when typed output is
+desired and it is tiresome to find out what terminal is currently in use.
+.SH FILES
+.sp
+.LP
+\fB/dev/tty\fR
+.sp
+.LP
+\fB/dev/tty*\fR
+.SH SEE ALSO
+.sp
+.LP
+.BR console (4D),
+.BR ports (8)
diff --git a/usr/src/man/man4d/tzmon.4d b/usr/src/man/man4d/tzmon.4d
new file mode 100644
index 0000000000..d388028d9f
--- /dev/null
+++ b/usr/src/man/man4d/tzmon.4d
@@ -0,0 +1,57 @@
+'\" te
+.\" Copyright (c) 2006 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH TZMON 4D "Oct 31, 2006"
+.SH NAME
+tzmon \- ACPI Thermal Zone Monitor
+.SH DESCRIPTION
+.sp
+.LP
+The \fBtzmon\fR is a pseudo driver that serves as an ACPI thermal zone monitor.
+Thermal zones are logical regions within a computer system for which ACPI
+performs temperature monitoring and control functions. The number of thermal
+zones on a system with ACPI support varies. For example, some systems may have
+one or more thermal zones, while others may have none. See the \fIAdvanced
+Configuration and Power Interface Specification, (ACPI) Version 3.0A\fR, for
+more details.
+.sp
+.LP
+The \fBtzmon\fR handles thermal Zone events from ACPI and polls the temperature
+for each zone exposed by the ACPI implementation. If threshold temperatures
+are reached, \fBtzmon\fR takes appropriate action. For example, if the
+temperature is sufficiently high and the ACPI implementation supports it,
+\fBtzmon\fR initiates system shutdown.
+.sp
+.LP
+Note that by default, system temperature control functions are usually
+performed by the BIOS and may supersede \fBtzmon\fR functions, depending on the
+BIOS implementation. Also, many ACPI implementations expose no thermal zones
+and in these cases, \fBtzmon\fR performs no functions.
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture x86/x64 only
+_
+Interface stability Private
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7)
+.sp
+.LP
+\fIAdvanced Configuration and Power Interface Specification, (ACPI), Version
+3.0A.\fR
diff --git a/usr/src/man/man4d/uath.4d b/usr/src/man/man4d/uath.4d
new file mode 100644
index 0000000000..65d50a924d
--- /dev/null
+++ b/usr/src/man/man4d/uath.4d
@@ -0,0 +1,99 @@
+'\" te
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH UATH 4D "Sep 10, 2009"
+.SH NAME
+uath \- Atheros AR5523 USB IEEE802.11a/b/g Wireless Network Driver
+.SH DESCRIPTION
+.sp
+.LP
+The \fBuath\fR IEEE802.11a/b/g wireless network driver is a multi-threaded,
+loadable, clonable, GLDv3-based STREAMS driver supporting Atheros AR5523 USB
+IEEE802.11a/b/g wireless network driver.
+.SS "Configuration"
+.sp
+.LP
+The \fBuath\fR driver performs auto-negotiation to determine the data rate and
+mode. The driver supports only BSS networks (also known as \fBap\fR or
+\fBinfrastructure\fR networks) and \fBopen\fR (or \fBopen-system\fR) or shared
+system authentication. For wireless security, WEP encryption, WPA-PSk, and
+WPA2-PSK are currently supported. You can perform configuration and
+administration tasks using the \fBdladm\fR(8) and \fBwificonfig\fR(8)
+utilities.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/dev/uath\fR\fR
+.ad
+.RS 29n
+Special character device
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/uath\fR\fR
+.ad
+.RS 29n
+32-bit ELF 86 kernel module (x86)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/uat\fR\fR
+.ad
+.RS 29n
+64-bit ELF kernel module (x86)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/misc/uathfw\fR\fR
+.ad
+.RS 29n
+32-bit ELF firmware kernel module (x86)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/misc/amd64/uathfw\fR\fR
+.ad
+.RS 29n
+64-bit ELF firmware kernel module (x86)
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for a description of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+l | l
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture x86
+_
+Interface Stability Committed
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR gld (4D),
+.BR dlpi (4P),
+.BR attributes (7),
+.BR dladm (8),
+.BR wificonfig (8)
+.sp
+.LP
+\fIIEEE802.11b/g - Wireless LAN Standard - IEEE, 2003\fR
diff --git a/usr/src/man/man4d/ufm.4d b/usr/src/man/man4d/ufm.4d
new file mode 100644
index 0000000000..82b91ebbf0
--- /dev/null
+++ b/usr/src/man/man4d/ufm.4d
@@ -0,0 +1,312 @@
+.\"
+.\" This file and its contents are supplied under the terms of the
+.\" Common Development and Distribution License ("CDDL"), version 1.0.
+.\" You may only use this file in accordance with the terms of version
+.\" 1.0 of the CDDL.
+.\"
+.\" A full copy of the text of the CDDL should have accompanied this
+.\" source. A copy of the CDDL is also available via the Internet at
+.\" http://www.illumos.org/license/CDDL.
+.\"
+.\"
+.\" Copyright 2019 Joyent, Inc.
+.\" Copyright 2020 Oxide Computer Company
+.\"
+.Dd May 23, 2021
+.Dt UFM 4D
+.Os
+.Sh NAME
+.Nm ufm
+.Nd Upgradeable Firmware Module driver
+.Sh SYNOPSIS
+.Pa /dev/ufm
+.Lp
+.In sys/ddi_ufm.h
+.Sh DESCRIPTION
+The
+.Nm
+device is a character special file that provides access to
+Upgradeable Firmware Image information, as described in
+.Xr ddi_ufm 9E
+via a private ioctl interface.
+.Pp
+The UFM interfaces described below are used in the implementation of the
+system through tools such as
+.Xr fwflash 8
+or as part of the fault management architecture.
+.Sh FILES
+.Bl -tag -width Pa
+.It Pa /kernel/drv/amd64/ufm
+64-bit AMD64 ELF kernel driver
+.It Pa /kernel/drv/sparcv9/ufm
+64-bit SPARC ELF kernel driver
+.El
+.Sh IOCTLS
+The
+.Nm
+driver implements a versioned ioctl interface for accessing UFM facilities.
+The ioctl interfaces are defined in sys/ddi_ufm.h.
+The following ioctl cmds are supported by DDI_UFM_VERSION_ONE:
+.Bl -tag -width Dv
+.It Dv UFM_IOC_GETCAPS
+The
+.Dv UFM_IOC_GETCAPS
+ioctl is used to retrieve the set of DDI UFM capabilities supported by this
+device instance.
+.Pp
+The ddi_ufm_cap_t type defines a bitfield enumerating the full set of DDI UFM
+capabilities.
+.Bd -literal
+typedef enum {
+ DDI_UFM_CAP_REPORT = 1 << 0,
+ DDI_UFM_CAP_READIMG = 1 << 1
+} ddi_ufm_cap_t;
+.Ed
+.Pp
+The capabilities mean:
+.Bl -tag -width Dv
+.It Dv DDI_UFM_CAP_REPORT
+Indicates that the device is capable of reporting UFM information and
+supports the
+.Dv UFM_IOC_REPORT
+and
+.Dv UFM_IOC_REPORTSZ
+ioctls.
+.It Dv DDI_UFM_CAP_READIMG
+Indicates that the device is capable of retrieving a firmware image from
+a slot and transferring it back to the caller.
+The
+.Dv UFM_IOC_READIMG
+ioctl is supported.
+.El
+.Pp
+The
+.Vt ufm_ioc_getcaps_t
+structure defines the input/output data for the
+.Dv UFM_IOC_GETCAPS
+ioctl.
+Callers should specify the
+.Fa ufmg_version
+and
+.Fa ufmg_devpath
+fields.
+On success the
+.Fa ufmg_caps
+field will be filled in with a value indicating the
+supported UFM capabilities of the device specified in
+.Fa ufmg_devpath .
+.Bd -literal
+typedef struct ufm_ioc_getcaps {
+ uint_t ufmg_version; /* DDI_UFM_VERSION_ONE */
+ uint_t ufmg_caps; /* UFM Caps */
+ char ufmg_devpath[MAXPATHLEN];
+} ufm_ioc_getcaps_t;
+.Ed
+.It Dv UFM_IOC_REPORTSZ
+The
+.Dv UFM_IOC_REPORTSZ
+ioctl is used to retrieve the amount of space
+(in bytes) required to hold the UFM data for this device instance.
+This should be used to allocate a sufficiently sized buffer for the
+.Dv UFM_IOC_REPORT
+ioctl.
+.Pp
+The
+.Vt ufm_ioc_bufsz_t
+structure defines the input/output data for the
+.Dv UFM_IOC_REPORTSZ
+ioctl.
+Callers should specify the
+.Fa ufbz_version
+and
+.Fa ufbz_devpath
+fields.
+On success the
+.Fa ufbz_size
+field will be filled in with the required buffer size.
+.Bd -literal
+typedef struct ufm_ioc_bufsz {
+ uint_t ufbz_version; /* DDI_UFM_VERSION_ONE */
+ size_t ufbz_size; /* sz of buf to be returned by ioctl */
+ char ufbz_devpath[MAXPATHLEN];
+} ufm_ioc_bufsz_t;
+.Ed
+.It Dv UFM_IOC_REPORT
+The
+.Dv UFM_IOC_REPORT
+ioctl returns UFM image and slot data in the form of a packed nvlist.
+The
+.Vt ufm_ioc_report_t
+structure defines the input/output data for the
+.Dv UFM_IOC_REPORT
+ioctl.
+Callers should specify the ufmr_version, ufmr_bufsz and ufmr_devpath fields.
+On success, the ufmr_buf field will point to a packed nvlist containing the UFM
+data for the specified device instance.
+This data can be unpacked and decoded into an nvlist using
+.Xr nvlist_unpack 3NVPAIR .
+.Bd -literal
+typedef struct ufm_ioc_report {
+ uint_t ufmr_version; /* DDI_UFM_VERSIONONE */
+ size_t ufmr_bufsz; /* size of caller-supplied buffer */
+ caddr_t ufmr_buf; /* buf to hold packed output nvl */
+ char ufmr_devpath[MAXPATHLEN];
+} ufm_ioc_report_t;
+.Ed
+.Pp
+Due to the asynchronous nature of the system, it's possible for a device to
+undergo a configuration change in between a
+.Dv UFM_IOC_REPORTSZ
+ioctl and a subsequent
+.Dv UFM_IOC_REPORT
+ioctl that would alter the size of the buffer
+required to hold the UFM data.
+.Pp
+If the size of buffer supplied in the
+.Dv UFM_IOC_REPORT
+ioctl is greater than is required to hold the UFM data, then
+the ioctl will succeed and the ufmr_bufsz field will be updated to reflect the
+actual size of the returned UFM data.
+If the size of buffer supplied in the
+.Dv UFM_IOC_REPORT
+ioctl is less than what is required to hold the UFM data,
+the ioctl will fail with errno set to
+.Er EOVERFLOW .
+.It Dv UFM_IOC_READIMG
+The
+.Dv UFM_IOC_READIMG
+ioctl retrieves a firmware image and slot from a device.
+The
+.Vt ufm_ioc_readimg_t
+structure defines the input and output data for the ioctl.
+Devices may have their own alignment and size constraints which may be
+enforced upon issuing this ioctl.
+The structure has the following form:
+.Bd -literal
+typedef struct ufm_ioc_readimg {
+ uint_t ufri_version;
+ uint_t ufri_imageno;
+ uint_t ufri_slotno;
+ uint64_t ufri_offset;
+ uint64_t ufri_len;
+ uint64_t ufri_nread;
+ void *ufri_buf;
+ char ufri_devpath[MAXPATHLEN];
+} ufm_ioc_readimg_t;
+.Ed
+.Pp
+The
+.Ft ufri_imageno
+and
+.Ft ufri_slotno
+values are used to indicate the image and slot to read.
+These indexes correspond to the same indices that are returned in the
+nvlist from the
+.Dv UFM_IOC_REPORT
+ioctl.
+The
+.Ft ufri_offset
+and
+.Ft ufri_len
+members are used to indicate how many bytes to read from the image and
+where in the image to begin.
+The
+.Fa ufri_buf
+member must be set to a valid pointer.
+Data read from the device will be placed in that pointer.
+The pointer must be at least
+.Fa ufri_len
+bytes long.
+Upon successful completion, the
+.Fa ufri_nread
+member will be filled in with the number of bytes that have been placed
+in
+.Fa ufri_buf .
+Finally, the
+.Fa ufri_version
+and
+.Fa ufri_devpath
+fields must be filled in with the version number,
+.Dv DDI_UFM_VERSION_ONE ,
+and the corresponding /devices path.
+.El
+.Sh EXAMPLES
+This example demonstrates how to use the
+.Dv UFM_IOC_GETCAPS
+ioctl to determine the UFM capabilities of a given device instance.
+.Bd -literal
+#include <stdio.h>
+#include <stdlib.h>
+#include <errno.h>
+#include <fcntl.h>
+#include <string.h>
+#include <unistd.h>
+#include <sys/ddi_ufm.h>
+#include <sys/types.h>
+
+static const char devname[] = "/pci@ce,0/pci8086,2030@0/pci15d9,808@0";
+
+int
+main(int argc, char **argv)
+{
+ int fd;
+ ufm_ioc_getcaps_t ioc = { 0 };
+
+ if ((fd = open(DDI_UFM_DEV, O_RDWR)) < 0) {
+ (void) fprintf(stderr, "failed to open %s (%s)\n", DDI_UFM_DEV,
+ strerror(errno));
+ return (1);
+ }
+
+ ioc.ufmg_version = DDI_UFM_CURRENT_VERSION;
+ (void) strcpy(ioc.ufmg_devpath, devname);
+
+ if (ioctl(fd, UFM_IOC_GETCAPS, &ioc) < 0) {
+ (void) fprintf(stderr, "getcaps ioctl failed (%s)\n",
+ strerror(errno));
+ (void) close(fd);
+ return (1);
+ }
+ if ((ioc.ufmg_caps & DDI_UFM_CAP_REPORT) == 0) {
+ (void) printf("Driver does not support DDI_UFM_CAP_REPORT\n");
+ } else {
+ (void) printf("Driver supports DDI_UFM_CAP_REPORT\n");
+ }
+ (void) close(fd);
+ return (0);
+}
+.Ed
+.Sh ERRORS
+On failure to open or perform ioctls to the
+.Nm
+driver,
+.Va errno
+will be set to indicate the type of error.
+A subset of the more common errors are detailed below.
+For a full list of error numbers, see
+.Xr Intro 2
+.Bl -tag -width Er
+.It Er EAGAIN
+The device driver is not currently ready to accept calls to it's DDI UFM entry
+points.
+This may be because the driver is not fully initialized or because the driver
+is in the process of detaching.
+.It Er EFAULT
+The ufm driver encountered a failure while copying data either from or to the
+address space of the calling process.
+.It Er EINVAL
+The offset or length of an image would have resulted in a read outside
+of the image's valid range or with improper alignment.
+.It Er EIO
+A failure occurred while executing a DDI UFM entry point.
+.It Er ENOTSUP
+Either the requested ioctl is not supported by the target device, the device
+does not exist or the device does not support the UFM interfaces.
+.El
+.Sh INTERFACE STABILITY
+.Sy Evolving
+.Sh SEE ALSO
+.Xr ddi_ufm 9E ,
+.Xr ddi_ufm 9F ,
+.Xr ddi_ufm_image 9F ,
+.Xr ddi_ufm_slot 9F
diff --git a/usr/src/man/man4d/ugen.4d b/usr/src/man/man4d/ugen.4d
new file mode 100644
index 0000000000..38260a72cd
--- /dev/null
+++ b/usr/src/man/man4d/ugen.4d
@@ -0,0 +1,1725 @@
+'\" te
+.\" Copyright 2017 Peter Tribble
+.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH UGEN 4D "May 13, 2017"
+.SH NAME
+ugen \- USB generic driver
+.SH SYNOPSIS
+.LP
+.nf
+\fBNode Name@unit-address\fR
+.fi
+
+.LP
+.nf
+\fB#include <sys/usb/clients/ugen/usb_ugen.h>\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+\fBugen\fR is a generic USBA (Solaris USB Architecture) compliant client
+character driver that presents USB devices to applications through a standard
+\fBopen\fR(2), \fBclose\fR(2), \fBread\fR(2), \fBwrite\fR(2),
+\fBaioread\fR(3C), \fBaiowrite\fR(3C) Unix interface. Uninterpreted raw data
+are transferred to and from the device via file descriptors created for each USB
+endpoint. Status is obtained by reading file descriptors created for endpoint
+and full device status.
+.sp
+.LP
+\fBugen\fR supports control, bulk, isochronous and interrupt (in and out)
+transfers. libusb uses \fBugen\fR to access devices that do not
+contain drivers (such as digital cameras and PDAs).
+.SH BINDING
+.LP
+In general, no explicit binding of the \fBugen\fR driver is necessary because
+\fBusb_mid\fR(4D) is the default driver for devices without a class or vendor
+unique driver. \fBusb_mid\fR(4D) creates the same logical device names as
+\fBugen\fR, but only if no child interfaces are explicitly bound to \fBugen\fR.
+If it is necessary to bind \fBugen\fR explicitly to a device or interface, the
+following section explains the necessary steps.
+.sp
+.LP
+\fBugen\fR can bind to a device with one or more interfaces in its entirety, or
+to a single interface of that device. The binding type depends on information
+that is passed to \fBadd_drv\fR(8) or \fBupdate_drv\fR(8).
+.sp
+.LP
+An \fBadd_drv\fR(8) command binds \fBugen\fR to a list of device types it is
+to control. \fBupdate_drv\fR(8) adds an additional device type to the list of
+device types being managed by the driver.
+.sp
+.LP
+Names used to bind drivers can be found in \fB/var/adm/messages\fR. When a
+device is on-lined after hot insertion, and no driver is found, there will be
+an entry containing:
+.sp
+.in +2
+.nf
+USB 2.0 device (usb<vid>,<pid>)...
+.fi
+.in -2
+
+.sp
+.LP
+where vid is the USB vendor identifier in hex and pid is the product
+identifier in hex supplied by the device descriptor \fBusb_dev_descr\fR(9S).
+Note, the USB device version may vary depending on the device.
+.sp
+.LP
+When using ugen for the first time, you must add the driver utilizing
+\fBadd_drv\fR(8), using a command of the following form:
+.sp
+.in +2
+.nf
+Assuming that the vid is 472 and pid is b0b0:
+
+add_drv -n -m '* <device perms> <owner> <group>'
+ -i '"usb472,b0b0"' ugen
+.fi
+.in -2
+
+.sp
+.LP
+If the command fails with:
+.sp
+.in +2
+.nf
+(ugen) already in use as a driver or alias.
+.fi
+.in -2
+
+.sp
+.LP
+\&...add the device using \fBupdate_drv\fR(8):
+.sp
+.in +2
+.nf
+update_drv -a -m '* <device perms> <owner> <group>'
+ -i '"usb472,b0b0"' ugen
+.fi
+.in -2
+
+.sp
+.LP
+This binds \fBugen\fR to the entire device.
+.sp
+.LP
+If ugen only binds to one interface of the device, use the following
+driver_alias instead of usb<vid>,<pid>:
+.sp
+.in +2
+.nf
+ usbif<vid>,<pid>.config<cfg value>.<interface number>
+.fi
+.in -2
+
+.sp
+.LP
+where cfg value is the value of bConfigurationValue in the configuration
+descriptor (\fBusb_cfg_descr\fR(9S)). For example "usbif1234,4567.config1.0."
+.sp
+.LP
+Note that you can use update_drv to also remove bindings. Please see
+\fBupdate_drv\fR(8) for more information.
+.sp
+.LP
+After a successful add_drv or update_drv, remove the device and reinsert. Check
+with the \fBprtconf\fR(8) -D option to determine if \fBugen\fR is successfully
+bound to the device and the nodes created in /dev/usb/<vid>.<pid> (see below).
+.sp
+.LP
+An example showing how to bind a child device representing interface 0 of
+configuration 1 of a composite device follows:
+.sp
+.in +2
+.nf
+update_drv -a -m '* 0666 root sys'
+ -i '"usbif472,b0b0.config1.0"' ugen
+.fi
+.in -2
+
+.sp
+.LP
+Note that if you uninstall the \fBugen\fR driver, and later reinstall it,
+any pre-existing ugen driver device-bindings will be reactivated. Likewise,
+any pre-existing ugen driver device-bindings are preserved across operating
+system updates or upgrades.
+.SH LOGICAL DEVICE NAME FORMAT
+.LP
+For each device or child device it manages, \fBugen\fR creates one logical
+device name for device-wide status and one logical device name for endpoint 0.
+\fBugen\fR also creates logical device names for all other endpoints within the
+device node's binding scope (interface or device), plus logical device names
+for their status.
+.sp
+.LP
+If separate \fBugen\fR instances control different interfaces of the same
+device, the device-wide status and endpoint logical device names created for
+each instance will share access to the same source or endpoint pipes. For
+example, a device with two interfaces, each operated by their own \fBugen\fR
+instance, will show \fBendpoint0\fR as \fBif0cntrl0\fR to the first interface,
+and will show it as \fBif1cntrl0\fR to the second interface. Both of these
+logical device names share \fBendpoint0\fR. Likewise for the same device,
+\fBugen\fR makes the device-wide status available as \fBif0devstat\fR to the
+first interface and as \fBif1devstat\fR to the second interface.
+\fBif0devstat\fR and \fBif1devstat\fR both return the same data.
+.sp
+.LP
+Any \fBugen\fR logical device name can be held open by only one user at a time,
+regardless of whether the \fBO_EXCL\fR flag passed to \fBopen\fR(2). When a
+single pipe or data source is shared by multiple logical device names, such as
+if[0,1]cntrl0 or if[0,1]devstat above, more than one logical device name
+sharing the pipe or data source can be open at a time. However, only one user
+may access the shared pipe or data source at a time, regardless of the logical
+device name used for access.
+.sp
+.LP
+When \fBugen\fR is bound to an entire device, the following logical device
+names are created (each on a single line). \fIN\fR represents the instance
+number of the device type.
+.sp
+.in +2
+.nf
+Endpoint 0 (default endpoint):
+
+ /dev/usb/<vid>.<pid>/<N>/cntrl0
+ /dev/usb/<vid>.<pid>/<N>/cntrl0stat
+
+ For example:
+
+ /dev/usb/472.b0b0/0/cntrl0
+ /dev/usb/472.b0b0/0/cntrl0stat
+
+Configuration index 1, Endpoints > 0, alternate 0:
+
+ /dev/usb/<vid>.<pid>/<N>/if<interface#>
+ <in|out|cntrl><endpoint#>
+ /dev/usb/<vid>.<pid>/<N>/if<interface#>
+ <in|out|cntrl><endpoint#>stat
+
+ For example:
+
+ /dev/usb/472.b0b0/0/if0in1
+ /dev/usb/472.b0b0/0/if0in1stat
+
+Configuration index 1, Endpoints > 0, alternate > 0:
+
+ /dev/usb/<vid>.<pid>/<N>/if<interface#>.
+ <alternate><in|out|cntrl><endpoint#>
+ /dev/usb/<vid>.<pid>/<N>/if<interface#>.
+ <alternate<in|out|cntrl><endpoint#>stat
+
+ For example:
+
+ /dev/usb/472.b0b0/0/if0.1in3
+ /dev/usb/472.b0b0/0/if0.1in3stat
+
+Configuration index> 1, Endpoints > 0, alternate 0:
+ /dev/usb/<vid>.<pid>/<N>/cfg<value>if<interface#>
+ <in|out|cntrl><endpoint#>
+ /dev/usb/<vid>.<pid>/<N>/cfg<value>if<interface#>
+ <in|out|cntrl><endpoint#>stat
+
+ For example:
+
+ /dev/usb/472.b0b0/0/cfg2if0in1
+ /dev/usb/472.b0b0/0/cfg2if0in1stat
+
+ Note that the configuration value from the configuration
+ descriptor indexed by the configuration index is used in
+ the node name and not the configuration index itself.
+
+Configuration index> 1, Endpoints > 0, alternate > 0:
+ /dev/usb/<vid>.<pid>/<N>/cfg<value>if<interface#>.
+ <alternate<in|out|cntrl><endpoint#>
+ /dev/usb/<vid>.<pid>/<N>/cfg<value>if<interface#>.
+ <alternate<in|out|cntrl><endpoint#>stat
+
+ For example:
+
+ /dev/usb/472.b0b0/0/cfg2if0.1in1
+ /dev/usb/472.b0b0/0/cfg2if0.1in1stat
+
+ Device status:
+
+ /dev/usb/<vid>.<pid>/<N>/devstat
+
+ For example:
+
+ /dev/usb/472.b0b0/0/devstat
+.fi
+.in -2
+
+.sp
+.LP
+When \fBugen\fR is bound to a single device interface, the following logical
+device nodes are created:
+.sp
+.in +2
+.nf
+Endpoint 0 (default endpoint):
+
+ /dev/usb/<vid>.<pid>/<N>/if<interface#>cntrl0
+ /dev/usb/<vid>.<pid>/<N>/if<interface#>cntrl0stat
+
+ For example:
+
+ /dev/usb/472.b0b0/0/if0cntrl0
+ /dev/usb/472.b0b0/0/if0cntrl0stat
+
+Device status:
+ /dev/usb/<vid>.<pid>/<N>/if<interface#>devstat
+
+ For example:
+ /dev/usb/472.b0b0/0/if0devstat
+.fi
+.in -2
+
+.sp
+.LP
+The format for all other logical device names is identical to the format used
+when \fBugen\fR is bound to the entire device.
+.sp
+.LP
+Opening the endpoint of a different configuration or different alternate
+interface will cause an implicit change of configuration or a switch to an
+alternate interface. A configuration change is prohibited when any non-zero
+endpoint device nodes are open. An alternate interface switch is prohibited if
+any endpoint in the same interface is open.
+.SH HOT-PLUGGING
+.LP
+A device may be hot-removed at any time. Following hot-removal, the device
+status changes to USB_DEV_STAT_DISCONNECTED, the status of open endpoints
+change to USB_LC_STAT_DISCONNECTED upon their access, and all subsequent
+transfer requests fail. Endpoints are reactivated by first reinserting the
+device and then closing and reopening all endpoints that were open when the
+device was disconnected.
+.SH CPR (CHECKPOINT/RESUME)
+.LP
+CPR (Checkpoint/Resume) may be initiated at any time and is treated similarly
+to a hot-removal. Upon successful suspend and resume, all subsequent transfer
+requests fail as an indication to the application to reinitialize. Applications
+should close and reopen all endpoints to reinstate them. All endpoint and
+device status on Resume (before close and reopen) is USB_LC_STAT_SUSPENDED. A
+system suspend will fail while \fBugen\fR is performing a transfer.
+.SH DEVICE POWER MANAGEMENT
+.LP
+Devices which support remote wakeup can be power managed when they have no open
+logical device nodes. When an application opens the first logical device node
+of a device, that application should assume that a reinitialization of device
+state is required.
+.SH DEVICE STATUS MANAGEMENT
+.LP
+Applications can monitor device status changes by reading the device status
+from the device status logical name. When opened without O_NONBLOCK and
+O_NDELAY, all reads from that file descriptor (with the exception of the
+initial read that follows the open) block until a device status change occurs.
+Calls to read will always return immediately if opened with \fBO_NONBLOCK\fR or
+\fBO_NDELAY\fR. Nonblocking calls to read which have no data to return, return
+no error and zero bytes read.
+.sp
+.LP
+Device statuses are:
+.sp
+.ne 2
+.na
+\fBUSB_DEV_STAT_ONLINE\fR
+.ad
+.RS 29n
+Device is available.
+.RE
+
+.sp
+.ne 2
+.na
+\fBUSB_DEV_STAT_DISCONNECTED\fR
+.ad
+.RS 29n
+Device has been disconnected.
+.RE
+
+.sp
+.ne 2
+.na
+\fBUSB_DEV_STAT_RESUMED\fR
+.ad
+.RS 29n
+Device has been resumed, however, endpoints which were open on suspend have not
+yet been closed and reopened.
+.RE
+
+.sp
+.ne 2
+.na
+\fBUSB_DEV_STAT_UNAVAILABLE\fR
+.ad
+.RS 29n
+Device has been reconnected, however, endpoints which were open on disconnect
+have not yet been closed and reopened.
+.RE
+
+.sp
+.LP
+The following code reads the device status device logical name:
+.sp
+.in +2
+.nf
+int fd;
+int status;
+
+if ((fd = open("/dev/usb/472.b0b0/0/devstat",
+ O_RDONLY)) < 0) {
+ /* handle error */
+}
+
+if (read(fd, &status, sizeof(status)) != sizeof(status)) {
+ /* handle error */
+}
+
+switch (status) {
+case USB_DEV_STAT_DISCONNECTED:
+ printf ("Terminating as device has been disconnected.\en");
+ exit (0);
+
+case USB_DEV_STAT_RESUMED:
+case USB_DEV_STAT_UNAVAILABLE:
+ /*
+ * Close and reopen endpoints to reestablish device access,
+ * then reset device.
+ */
+ break;
+
+case USB_DEV_STAT_ONLINE:
+default:
+ break;
+}
+.fi
+.in -2
+
+.sp
+.LP
+Use \fBpoll\fR(2) to block on several logical names simultaneously, including
+device status logical names. Poll indicates when reading a logical name would
+return data. See \fBpoll\fR(2) for details. Calls to read may be done whether
+or not they follow calls to poll.
+.SH ENDPOINT STATUS MANAGEMENT
+.LP
+Each data endpoint has a corresponding status logical name. Use the status
+logical name to retrieve the state of the data endpoint, including detail on
+how its most recent transfer failed. Reads of the status file descriptors
+always return immediately. See the ERRORS section for more information on
+endpoint status values. All logical device name files created for returning
+status must be opened with \fBO_RDONLY\fR.
+.sp
+.LP
+The following code illustrates reading the status file descriptor of an
+endpoint which just failed a data transfer in order to get more information on
+the failure.
+.sp
+.in +2
+.nf
+int data_xfered, status;
+int ep1_data_fd, ep1_stat_fd;
+uchar_t request[8];
+
+ep1_data_fd = open ("/dev/usb/472.b0b0/0/if0out1", O_WRONLY);
+
+if (ep1_data_fd < 0) {
+ /* Handle open error. */
+}
+
+ep1_stat_fd = open ("/dev/usb/472.b0b0/0/if0out1stat",
+ O_RDONLY);
+if (ep1_stat_fd < 0) {
+ /* Handle open error. */
+}
+
+data_xfered = write(ep1_data_fd, request, sizeof (request));
+
+/* An error occurred during the data transfer. */
+if (data_xfered != sizeof (request)) {
+
+ /* Read status file descriptor for details on failure. */
+ if (read(ep1_stat_fd, (int *)&status, sizeof (status)) !=
+ sizeof (status)) {
+ status = USB_LC_STAT_UNSPECIFIED_ERR;
+ }
+
+ /* Take appropriate action. */
+ switch (status) {
+ case USB_LC_STAT_STALL:
+ printf ("Endpoint stalled.\en");
+ break;
+ case ...
+ ...
+ }
+
+}
+.fi
+.in -2
+
+.SH CONTROL TRANSFERS
+.LP
+The control endpoint is typically used to set up the device and to query device
+status or configuration.
+.sp
+.LP
+Applications requiring I/O on a control endpoint should open the corresponding
+logical device name and use regular UNIX I/O system calls. For example:
+\fBread\fR(2), \fBwrite\fR(2), \fBaioread\fR(3C) and \fBaiowrite\fR(3C).
+\fBpoll\fR(2) is not supported on control endpoints.
+.sp
+.LP
+A control endpoint must be opened with \fBO_RDWR\fR since it is bidirectional.
+It cannot be opened with \fBO_NONBLOCK\fR or \fBO_NDELAY\fR.
+.sp
+.LP
+For example:
+.sp
+.in +2
+.nf
+fd = open("/dev/usb/472.b0b0/0/cntrl0", O_RDWR);
+
+.fi
+.in -2
+
+.sp
+.in +2
+.nf
+fdstat = open("/dev/usb/472.b0b0/0/cntrl0stat", O_RDONLY);
+.fi
+.in -2
+
+.sp
+.LP
+Control endpoints can be read and written. A \fBread\fR operation receives data
+\fBfrom\fR the device and a \fBwrite\fR operation sends data \fBto\fR the
+device.
+.sp
+.LP
+To perform a control-IN transfer, perform a \fBwrite\fR(2) of USB setup data
+(see section 9.3 of the \fIUSB 1.1\fR or \fI2.0\fR specifications) followed by
+a \fBread\fR(2) on the same control endpoint to fetch the desired data. For
+example:
+.sp
+.in +2
+.nf
+void init_cntrl_req(
+ uchar_t *req, uchar_t bmRequestType, uchar_t bRequest,
+ ushort_t wValue, ushort_t wIndex, ushort_t wLength) {
+ req[0] = bmRequestType;
+ req[1] = bRequest;
+ req[2] = 0xFF & wValue;
+ req[3] = 0xFF & (wValue >> 8);
+ req[4] = 0xFF & wIndex;
+ req[5] = 0xFF & (wIndex >> 8);
+ req[6] = 0xFF & wLength;
+ req[7] = 0xFF & (wLength >> 8);
+}
+
+ ....
+
+
+ uchar_t dev_descr_req[8];
+ usb_dev_descr_t descr;
+
+ init_cntrl_req(dev_descr_req,
+ USB_DEV_REQ_DEV_TO_HOST, USB_REQ_GET_DESCR,
+ USB_DESCR_TYPE_SETUP_DEV, 0, sizeof (descr));
+
+ count = write(fd, dev_descr_req, sizeof (dev_descr_req));
+ if (count != sizeof (dev_descr_req)) {
+ /* do some error recovery */
+ ...
+ }
+
+ count = read(fd, &descr, sizeof (descr));
+ if (count != sizeof (descr)) {
+ /* do some error recovery */
+ }
+.fi
+.in -2
+
+.sp
+.LP
+The application can issue any number of reads to read data received on a
+control endpoint. \fBugen\fR successfully completes all reads, returning the
+number of bytes transferred. Zero is returned when there is no data to
+transfer.
+.sp
+.LP
+If the \fBread\fR/\fBwrite\fR fails and returns \fB-1\fR, you can access the
+endpoint's status device logical name for precise error information:
+.sp
+.in +2
+.nf
+ int status;
+
+ count = read(fdstat, &status, sizeof (status));
+ if (count == sizeof (status)) {
+ switch (status) {
+ case USB_LC_STAT_SUSPENDED:
+ case USB_LC_STAT_DISCONNECTED:
+ /* close all endpoints */
+ ...
+ break;
+ default:
+ ...
+ break;
+ }
+ }
+.fi
+.in -2
+
+.sp
+.LP
+Refer to the ERRORS section for all possible error values.
+.sp
+.LP
+To perform a control-OUT transfer, send in a single transfer, the USB setup
+data followed by any accompanying data bytes.
+.sp
+.in +2
+.nf
+ /* 1st 8 bytes of wbuf are setup. */
+ init_cntrl_req(wbuf, .......);
+
+ /* Data bytes begin at byte 8 of wbuf. */
+ bcopy(data, &wuf[8], sizeof (data));
+
+ /* Send it all in a single transfer. */
+ count = write(fd, wbuf, sizeof (wbuf));
+.fi
+.in -2
+
+.sp
+.LP
+A \fBwrite\fR(2) returns the number of bytes (both setup and data) actually
+transferred, (whether or not the \fBwrite\fR is completely successful),
+provided that some data is actually transferred. When no data is transferred,
+\fBwrite\fR(2) returns \fB-1\fR. Applications can read the corresponding
+endpoint status to retrieve detailed error information. Note that it is an
+error to specify a size different than:
+.sp
+.LP
+(number of data bytes + number of setup bytes).
+.sp
+.LP
+Here is a more extensive example which gets all descriptors of a device
+configuration. For sake of brevity, uninteresting parts are omitted.
+.sp
+.in +2
+.nf
+ #include <sys/usb/usba.h>
+ #include <sys/usb/clients/ugen/usb_ugen.h>
+
+ uchar_t *config_cloud;
+ uchar_t *curr_descr;
+
+ uchar_t *bytes;
+
+ int curr_descr_len;
+ int curr_descr_type;
+
+ usb_cfg_descr_t cfg_descr;
+ usb_if_descr_t if_descr;
+ usb_ep_descr_t ep_descr;
+
+ /* See 9.13 of USB 2.0 spec for ordering. */
+ static char *pipetypes[] = {
+ "Control", "Isochronous", "Bulk", "Interrupt"
+ };
+
+ /*
+ * Setup to send a request to read just the config descriptor. The
+ * size of the whole cloud, containing all cfg, interface, endpoint,
+ * class and vendor-specific descriptors, will be returned as part of
+ * the config descriptor.
+ */
+ init_cntrl_req(&setup_data, USB_DEV_REQ_DEV_TO_HOST, USB_REQ_GET_DESCR,
+ USB_DESCR_TYPE_SETUP_CFG, 0, USB_CFG_DESCR_SIZE);
+
+ /*
+ * Write setup data. USB device will prepare to return the whole
+ * config cloud as a response to this. We will read this separately.
+ */
+ count = write(ctrl_fd, &setup_data, sizeof (setup_data));
+ if (count != sizeof (setup_data)) {
+ /* Error recovery. */
+ } else {
+ count = read(ctrl_fd, &cfg_descr, USB_CFG_DESCR_SIZE);
+ if (count != USB_CFG_DESCR_SIZE) {
+ /* Error recovery. */
+ }
+ }
+
+ /* USB data is little endian. */
+ bytes = (uchar_t *)(&cfg_descr.wTotalLength);
+ totalLength = bytes[0] + (bytes[1] << 8);
+
+ /*
+ * The size of the whole cloud is in the bLength field. Set up
+ * to read this amount of data, to get the whole cloud.
+ */
+ config_cloud = malloc(totalLength);
+
+ init_cntrl_req(&setup_data, USB_DEV_REQ_DEV_TO_HOST, USB_REQ_GET_DESCR,
+ USB_DESCR_TYPE_SETUP_CFG, 0, totalLength);
+
+ count = write(ctrl_fd, &setup_data, sizeof (setup_data));
+ if (count != sizeof (setup_data)) {
+ /* Error recovery. */
+ } else {
+ count = read(ctrl_fd, config_cloud, totalLength);
+ if (count != totalLength) {
+ /* Error recovery. */
+ }
+ }
+
+ /* Got the data. Now loop, dumping out the descriptors found. */
+
+ curr_descr = config_cloud;
+ offset = 0;
+ while (offset < totalLength) {
+
+ /* All descr have length and type at offset 0 and 1 */
+ curr_descr_len = curr_descr[0];
+ curr_descr_type = curr_descr[1];
+
+ switch (curr_descr_type) {
+ case USB_DESCR_TYPE_CFG:
+
+ /*
+ * Copy data into separate structure, needed for
+ * proper alignment of all non char fields. Note:
+ * non-char fields of all descriptors begin on aligned
+ * boundaries. The issue is that some structures may
+ * be adjacent to others which have an odd-numbered
+ * byte size, and may thus start on an odd-numbered
+ * boundary. */
+ bcopy(curr_descr, &cfg_descr, curr_descr_len);
+
+ /* Remember to read any words in endian-neutral way. */
+
+ (void) printf("\enConfig %d found.\en",
+ cfg_descr.bConfigurationValue);
+ break;
+
+ case USB_DESCR_TYPE_IF:
+ bcopy(curr_descr, &if_descr, curr_descr_len);
+ (void) printf("\en\etInterface %d, Alt %d found.\en",
+ if_descr.bInterfaceNumber,
+ if_descr.bAlternateSetting);
+ break;
+
+ case USB_DESCR_TYPE_EP:
+ bcopy(curr_descr, &ep_descr, curr_descr_len);
+ (void) printf("\en\et\etEndpoint %d (%s-%s) found.\en",
+ (ep_descr.bEndpointAddress & USB_EP_NUM_MASK),
+ (pipetypes[
+ ep_descr.bmAttributes & USB_EP_ATTR_MASK]),
+ ((ep_descr.bEndpointAddress &
+ USB_EP_DIR_IN) ? "IN" : "OUT"));
+ break;
+
+ default:
+ (void) printf(
+ "\en\et\et\etOther descriptor found. Type:%d\en",
+ curr_descr_type);
+ break;
+ }
+
+ offset += curr_descr_len;
+ curr_descr = &config_cloud[offset];
+ }
+.fi
+.in -2
+
+.SH INTERRUPT-IN TRANSFERS
+.LP
+Applications requiring data from an interrupt-IN endpoint should open the
+corresponding logical device name and use \fBread\fR(2), \fBaioread\fR(3C) and
+\fBpoll\fR(2) system calls.
+.sp
+.LP
+An interrupt-IN endpoint must be opened with \fBO_RDONLY\fR. It can also be
+opened using \fBO_NONBLOCK\fR or \fBO_NDELAY\fR if desired.
+.sp
+.in +2
+.nf
+fd = open("/dev/usb/472.b0b0/0/if0in1", O_RDONLY);
+.fi
+.in -2
+
+.sp
+.in +2
+.nf
+fdstat = open("/dev/usb/472.b0b0/0/if0in1stat", O_RDONLY);
+
+.fi
+.in -2
+
+.sp
+.LP
+\fBugen\fR starts polling interrupt\(emIN endpoints immediately upon opening
+them and stops polling them upon closure. (Polling refers to interrogation of
+the device by the driver and should not be confused with \fBpoll\fR(2), which
+is an interrogation of the driver by the application.)
+.sp
+.LP
+A \fBread\fR(2) of an endpoint opened with the \fBO_NONBLOCK\fR or
+\fBO_NDELAY\fR flags set will not block when there is insufficient data
+available to satisfy the request. The \fBread\fR simply returns what it can
+without signifying any error.
+.sp
+.LP
+Applications should continuously check for and consume interrupt data.
+\fBugen\fR enables buffering of up to one second of incoming data. In case of
+buffer overflow, \fBugen\fR stops polling the interrupt-IN endpoint until the
+application consumes all the data. In this case, a \fBread\fR(2) of an empty
+buffer returns \fB-1\fR, sets the endpoint status to
+\fBUSB_LC_STAT_INTR_BUF_FULL\fR (to indicate that the buffer had been full and
+polling had been stopped) and causes \fBugen\fR to start polling the endpoint
+again. To retrieve the status, the application can open and read the
+corresponding endpoint's status device logical name.
+.sp
+.in +2
+.nf
+for (;;) {
+ count = read(fd, buf, sizeof(buf));
+ if (count == -1) {
+ int cnt, status;
+
+ cnt = read(fdstat, &status, sizeof (status));
+ if (cnt == -1) {
+ /* more error recovery here */
+ } else {
+ switch (status) {
+ case USB_LC_STAT_INTR_BUF_FULL:
+ ...
+ break;
+ default:
+ ...
+ break;
+ }
+ }
+ }
+ /* process the data */
+ ....
+ }
+.fi
+.in -2
+
+.sp
+.LP
+\fBugen\fR will never drop data. However, the device may drop data if the
+application cannot read it at the rate that it is produced.
+.sp
+.LP
+Applications requiring unbuffered data from an interrupt-IN endpoint should
+open the associated status endpoint with O_RDWR before opening the associated
+interrupt-IN endpoint and write a control byte with USB_EP_INTR_ONE_XFER set.
+All other bits are reserved and should be 0.
+.sp
+.LP
+"One transfer" mode will persist until disabled explicitly after the associated
+interrupt-IN endpoint has been closed by writing a control byte with
+USB_EP_INTR_ONE_XFER cleared.
+.sp
+.LP
+"One transfer" mode is implicitly disabled when the status/control endpoint is
+closed.
+.sp
+.LP
+Attempts to change the "one transfer" mode while the endpoint is open will
+result in \fBEINVAL\fR.
+.sp
+.LP
+An application can open multiple interrupt-IN endpoints and can call
+\fBpoll\fR(2) to monitor the availability of new data. (Note: poll works with
+interrupt-IN data endpoints, not their status endpoints.)
+.sp
+.in +2
+.nf
+ struct pollfd pfd[2];
+
+ bzero(pfd, sizeof (pfd));
+ pfd[0].fd = fd1; /* fd1 is one interrupt-IN endpoint. */
+ pfd[0].events = POLLIN;
+ pfd[1].fd = fd2; /* fd2 is another interrupt-IN endpoint. */
+ pfd[1].events = POLLIN;
+
+ for (;;) {
+ poll(pfd, 2, -1);
+
+ if (pfd[0].revents & POLLIN) {
+ count = read(fd1, buf, sizeof (buf));
+ ....
+ }
+ if (pfd[1].revents & POLLIN) {
+ count = read(fd2, buf, sizeof (buf));
+ ....
+ }
+ }
+.fi
+.in -2
+
+.sp
+.LP
+You can monitor the device status endpoint via \fBpoll\fR(2) concurrently with
+the multiple interrupt-IN endpoints. Simply add another pollfd element to the
+pfd array in the previous code example, and initialize the new element's
+\fBfd\fR field with the file descriptor of the device status endpoint (opened
+without O_NONBLOCK or O_NDELAY). Set the new element's event field to POLLIN
+like the other elements. Note that only interrupt-IN endpoints and the device
+status endpoint can be monitored using \fBpoll\fR(2).
+.SH INTERRUPT-OUT TRANSFERS
+.LP
+Applications requiring output on an interrupt-OUT endpoint can open the
+corresponding logical device name and perform regular UNIX I/O system calls
+such as \fBwrite\fR(2) and \fBaiowrite\fR(3C).
+.sp
+.LP
+An interrupt-OUT endpoint must be opened with O_WRONLY.
+.sp
+.in +2
+.nf
+fd = open("/dev/usb/472.b0b0/0/if0out3", O_WRONLY);
+
+fdstat = open("/dev/usb/472.b0b0/0/if0out3stat", O_RDONLY);
+
+
+.fi
+.in -2
+
+.sp
+.LP
+Data can be written to an interrupt-OUT endpoint as follows:
+.sp
+.in +2
+.nf
+ count = write(fd, buf, sizeof (buf)):
+ if (count == -1) {
+ /* error recovery */
+ }
+.fi
+.in -2
+
+.SH BULK TRANSFERS
+.LP
+Applications requiring I/O on a bulk endpoint can open the corresponding
+logical device name and perform regular UNIX I/O system calls. For example:
+\fBread\fR(2), \fBwrite\fR(2), \fBaioread\fR(3C) and \fBaiowrite\fR(3C).
+\fBpoll\fR(2) is not supported on bulk endpoints.
+.sp
+.LP
+A bulk endpoint must be opened with \fBO_RDONLY\fR or \fBO_WRONLY\fR and cannot
+be opened with \fBO_NONBLOCK\fR or \fBO_NDELAY:\fR
+.sp
+.in +2
+.nf
+fd = open("/dev/usb/472.b0b0/0/if0in2", O_RDONLY);
+.fi
+.in -2
+
+.sp
+.in +2
+.nf
+fdstat = open("/dev/usb/472.b0b0/0/if0in2stat", O_RDONLY);
+.fi
+.in -2
+
+.sp
+.LP
+Data can be read from a bulk-IN endpoint as follows:
+.sp
+.in +2
+.nf
+ count = read(fd, buf, sizeof (buf)):
+ if (count == -1) {
+ /* error recovery */
+ }
+
+ Data can be written to a bulk-OUT endpoint as follows:
+
+ count = write(fd, buf, sizeof (buf)):
+ if (count == -1) {
+ /* error recovery */
+ }
+.fi
+.in -2
+
+.SH ISOCHRONOUS TRANSFERS
+.LP
+Applications requiring I/O on an isochronous endpoint can open the
+corresponding logical device name and perform regular UNIX I/O system calls
+such as \fBread\fR(2), \fBwrite\fR(2), \fBpoll\fR(2), \fBaioread\fR(3C) and
+\fBaiowrite\fR(3C). An isochronous endpoint must be opened with \fBO_RDWR\fR.
+.sp
+.in +2
+.nf
+fd = open("/dev/usb/472.b0b0/0/if0.3in2", O_RDWR);
+
+fdstat = open("/dev/usb/472.b0b0/0/if0.3in2stat", O_RDONLY);
+.fi
+.in -2
+
+.sp
+.LP
+Applications can use the status logical name to retrieve the state of the
+isochronous data endpoint, including details on why the most recent transfer
+failed.
+.sp
+.LP
+Applications have the flexibility to specify the number of isochronous packets
+and the size of individual packets they want to transfer. Applications should
+use the following data structures to exchange isochronous packet information
+with the \fBugen\fR driver:
+.sp
+.in +2
+.nf
+typedef struct ugen_isoc_pkt_descr {
+ /*
+ * Set by the application, for all isochro.
+ * requests, to the num. of bytes to xfer
+ * in a packet.
+ */
+ ushort_t dsc_isoc_pkt_len;
+
+ /*
+ * Set by ugen to actual num. of bytes sent/received
+ * in a packet.
+ */
+ ushort_t dsc_isoc_pkt_actual_len;
+
+ /*
+ * Per pkt. status set by ugen driver both for the
+ * isochronous IN and OUT requests. Application can
+ * use USB_LC_STAT_* to parse the status.
+ */
+ int dsc_isoc_pkt_status;
+ } ugen_isoc_pkt_descr_t;
+
+ typedef struct ugen_isoc_req_head {
+ /* pkt count of the isoc request */
+ int req_isoc_pkts_count;
+
+ /* pkt descriptors */
+ ugen_isoc_pkt_descr_t req_isoc_pkt_descrs[1];
+ } ugen_isoc_req_head_t;
+.fi
+.in -2
+
+.sp
+.LP
+\fBreq_isoc_pkts_count\fR is limited by the capability of the USB host
+controller driver. The current upper bound for the \fBuhci\fR and \fBohci\fR
+drivers is 512. The upper bound for the \fBehci\fR driver is 1024.
+.sp
+.LP
+For an isochronous-IN endpoint, applications must first use the
+\fBugen_isoc_req_head_t\fR structure followed by \fBugen_isoc_pkt_descr_t\fR to
+write packet request information to the \fBugen\fR node. The \fBugen\fR driver
+then checks the validity of the request. If it is valid, the driver immediately
+begins isochronous polling on the IN endpoint and applications can proceed with
+\fBread\fR(2) of the data on the isochronous-IN endpoint. Upon successful
+return of \fBread\fR(2), isochronous packet descriptors (whose
+\fBdsc_isoc_pkt_actual_len\fR and \fBdsc_isoc_pkt_status\fR fields were filled
+by the driver) are returned, followed by the request's device payload data.
+.sp
+.LP
+Applications should continuously check for and consume isochronous data. The
+\fBugen\fR driver enables buffering of up to eight seconds of incoming data for
+full-speed isochronous endpoint, one second of data for high-speed isochronous
+endpoints who request one transaction per microframe and 1/3 of a second of
+incoming data for high-speed high-bandwidth isochronous endpoints who request
+three transactions per microframe. In case of buffer overflow, \fBugen\fR
+discards the oldest data.
+.sp
+.LP
+The isochronous-IN polling can only be stopped by a \fBclose\fR(2) associated
+file descriptor. If applications want to change packet information, they must
+first \fBclose\fR(2) the endpoint to stop the isochronous-IN polling, then
+\fBopen\fR(2) the endpoint and \fBwrite\fR(2) new packets request.
+.sp
+.LP
+The following example shows how to read an isochronous-IN endpoint:
+.sp
+.in +2
+.nf
+ #include <sys/usb/clients/ugen/usb_ugen.h>
+
+ char *buf, *p;
+ ushort_t pktlen;
+ int pktcnt, i;
+ int len;
+ ugen_isoc_req_head_t *req;
+ ugen_isoc_pkt_descr_t *pktdesc;
+ char rdbuf[5000];
+
+ pktcnt = 4; /* 4 packets in this request */
+
+ len = sizeof(int) +
+ sizeof(ugen_isoc_pkt_descr_t) * pktcount;
+
+ buf = malloc(len);
+ if (!buf) {
+ /* Error recovery. */
+ }
+
+ req = (ugen_isoc_req_head_t *)buf;
+ req->req_isoc_pkts_count = pktcnt;
+
+ pktdesc = (ugen_isoc_pkt_descr_t *)
+ (req->req_isoc_pkt_descrs);
+
+ for (i = 0; i < pktcnt; i++) {
+ /*
+ * pktlen should not exceed xfer
+ * capability of an endpoint
+ */
+ pktdesc[i].dsc_isoc_pkt_len = pktlen;
+
+ pktdesc[i].dsc_isoc_pkt_actual_len = 0;
+ pktdesc[i].dsc_isoc_pkt_status = 0;
+ }
+
+ /*
+ * write request info to driver and len must
+ * be exactly the sum of
+ * sizeof(int) + sizeof(ugen_isoc_pkt_descr_t) * pktcnt.
+ * Otherwise, an error is returned.
+ */
+ if (write(fd, buf, len) < 0) {
+ /* Error recovery. */
+ }
+
+ /*
+ * Read length should be sum of all pkt descriptors
+ * length + payload data length of all pkts
+ * (sizeof(ugen_isoc_pkt_descr_t) + pktlen) * pktcnt
+ */
+ if (read(fd, rdbuf, (sizeof(ugen_isoc_pkt_descr_t) +
+ pktlen) * pktcnt) < 0) {
+ /* Error recovery. */
+ }
+
+ pktdesc = (ugen_isoc_pkt_descr_t *) rdbuf;
+
+ /* points to payload beginning */
+ p = rdbuf + pktcnt * sizeof(ugen_isoc_pkt_descr_t);
+
+ for (i = 0; i < pktcnt; i++) {
+ printf("packet %d len = %d,"
+ " actual_len = %d, status = 0x%x\en",
+ i, pktdesc->dsc_isoc_pkt_len,
+ pktdesc->dsc_isoc_pkt_actual_len,
+ pktdesc->dsc_isoc_pkt_status);
+
+ /* Processing data */
+
+ /*
+ * next packet data payload, do NOT use
+ * dsc_isoc_pkt_actual_len
+ */
+ p += pktdesc->dsc_isoc_pkt_len;
+
+ pktdesc++;
+ }
+.fi
+.in -2
+
+.sp
+.LP
+For an isochronous-OUT endpoint, applications use the same packet descriptor
+and request structures to write request information to the \fBugen\fR node.
+Following the packet request head information is the packet payload data. Upon
+successful return of \fBwrite\fR(2), applications can \fBread\fR(2) the same
+\fBugen\fR file immediately to retrieve the individual packet transfer status
+of the last request. If the application isn't concerned about the status, it
+can omit it.
+.sp
+.LP
+In the following example, an application transfers data on an isochronous-OUT
+endpoint:
+.sp
+.in +2
+.nf
+ #include <sys/usb/clients/ugen/usb_ugen.h>
+ char *buf, *p;
+ ushort_t i, pktlen;
+ int len, pktcnt;
+ ugen_isoc_req_head_t *req;
+ ugen_isoc_pkt_descr_t *pktdesc;
+ char rdbuf[4096];
+
+ pktcnt = 4;
+
+ /*
+ * set packet length to a proper value, don't
+ * exceed endpoint's capability
+ */
+ pktlen = 1024;
+
+ len = sizeof(int) +
+ sizeof(ugen_isoc_pkt_descr_t) * pktcount;
+
+ len += pktlen * pktcnt;
+
+ buf = malloc(len);
+ if (!buf) {
+ /* Error recovery. */
+ }
+
+ req = (ugen_isoc_req_head_t *)buf;
+ req->req_isoc_pkts_count = pktcnt;
+
+ pktdesc =
+ (ugen_isoc_pkt_descr_t *)(req->req_isoc_pkt_descrs);
+
+ for (i = 0; i < pktcnt; i++) {
+ pktdesc[i].dsc_isoc_pkt_len = pktlen;
+ pktdesc[i].dsc_isoc_pkt_actual_len = 0;
+ pktdesc[i].dsc_isoc_pkt_status = 0;
+ }
+
+ /* moving to beginning of payload data */
+ p = buf + sizeof(int) + sizeof(*pktdesc) * pktcnt;
+ for (i = 0; i < pktcnt; i++) {
+
+ /* fill in the data buffer */
+
+ p += pktlen;
+ }
+
+ /*
+ * write packet request information and data to ugen driver
+ *
+ * len should be the exact value of sizeof(int) +
+ * sizeof(ugen_isoc_pkt_descr_t) * pktcnt + payload length
+ */
+ if (write(fd, buf, len) < 0) {
+ /* Error recovery. */
+ }
+
+ /* read packet status */
+ if (read(fd, rdbuf, sizeof(*pktdesc) * pktcnt) < 0) {
+
+ /* Error recovery. */
+
+ } else {
+
+ /* Parse every packet's transfer status */
+
+ }
+.fi
+.in -2
+
+.SH ERRORS
+.LP
+The following statuses are returned by endpoint status device logical names:
+.sp
+.ne 2
+.na
+\fBUSB_LC_STAT_NOERROR\fR
+.ad
+.sp .6
+.RS 4n
+No error.
+.RE
+
+.sp
+.ne 2
+.na
+\fBUSB_LC_STAT_CRC\fR
+.ad
+.sp .6
+.RS 4n
+CRC error detected.
+.RE
+
+.sp
+.ne 2
+.na
+\fBUSB_LC_STAT_BITSTUFFING\fR
+.ad
+.sp .6
+.RS 4n
+Bit stuffing error.
+.RE
+
+.sp
+.ne 2
+.na
+\fBUSB_LC_STAT_DATA_TOGGLE_MM\fR
+.ad
+.sp .6
+.RS 4n
+Data toggle did not match.
+.RE
+
+.sp
+.ne 2
+.na
+\fBUSB_LC_STAT_STALL\fR
+.ad
+.sp .6
+.RS 4n
+Endpoint returned stall.
+.RE
+
+.sp
+.ne 2
+.na
+\fBUSB_LC_STAT_DEV_NOT_RESP\fR
+.ad
+.sp .6
+.RS 4n
+Device not responding.
+.RE
+
+.sp
+.ne 2
+.na
+\fBUSB_LC_STAT_UNEXP_PID\fR
+.ad
+.sp .6
+.RS 4n
+Unexpected Packet Identifier (PID).
+.RE
+
+.sp
+.ne 2
+.na
+\fBUSB_LC_STAT_PID_CHECKFAILURE\fR
+.ad
+.sp .6
+.RS 4n
+Check bits on PID failed.
+.RE
+
+.sp
+.ne 2
+.na
+\fBUSB_LC_STAT_DATA_OVERRUN\fR
+.ad
+.sp .6
+.RS 4n
+Data overrun.
+.RE
+
+.sp
+.ne 2
+.na
+\fBUSB_LC_STAT_DATA_UNDERRUN\fR
+.ad
+.sp .6
+.RS 4n
+Data underrun.
+.RE
+
+.sp
+.ne 2
+.na
+\fBUSB_LC_STAT_BUFFER_OVERRUN\fR
+.ad
+.sp .6
+.RS 4n
+Buffer overrun.
+.RE
+
+.sp
+.ne 2
+.na
+\fBUSB_LC_STAT_BUFFER_UNDERRUN\fR
+.ad
+.sp .6
+.RS 4n
+Buffer underrun.
+.RE
+
+.sp
+.ne 2
+.na
+\fBUSB_LC_STAT_TIMEOUT\fR
+.ad
+.sp .6
+.RS 4n
+Command timed out.
+.RE
+
+.sp
+.ne 2
+.na
+\fBUSB_LC_STAT_NOT_ACCESSED\fR
+.ad
+.sp .6
+.RS 4n
+Not accessed by the hardware.
+.RE
+
+.sp
+.ne 2
+.na
+\fBUSB_LC_STAT_UNSPECIFIED_ERR\fR
+.ad
+.sp .6
+.RS 4n
+Unspecified USBA or HCD error.
+.RE
+
+.sp
+.ne 2
+.na
+\fBUSB_LC_STAT_NO_BANDWIDTH\fR
+.ad
+.sp .6
+.RS 4n
+No bandwidth available.
+.RE
+
+.sp
+.ne 2
+.na
+\fBUSB_LC_STAT_HW_ERR\fR
+.ad
+.sp .6
+.RS 4n
+Host Controller h/w error.
+.RE
+
+.sp
+.ne 2
+.na
+\fBUSB_LC_STAT_SUSPENDED\fR
+.ad
+.sp .6
+.RS 4n
+Device was suspended.
+.RE
+
+.sp
+.ne 2
+.na
+\fBUSB_LC_STAT_DISCONNECTED\fR
+.ad
+.sp .6
+.RS 4n
+Device was disconnected.
+.RE
+
+.sp
+.ne 2
+.na
+\fBUSB_LC_STAT_INTR_BUF_FULL\fR
+.ad
+.sp .6
+.RS 4n
+Polling was stopped as the interrupt-IN data buffer was full. Buffer is now
+empty and polling has been resumed.
+.RE
+
+.sp
+.ne 2
+.na
+\fBUSB_LC_STAT_INTERRUPTED\fR
+.ad
+.sp .6
+.RS 4n
+Request was interrupted.
+.RE
+
+.sp
+.ne 2
+.na
+\fBUSB_LC_STAT_NO_RESOURCES\fR
+.ad
+.sp .6
+.RS 4n
+No resources available for request.
+.RE
+
+.sp
+.ne 2
+.na
+\fBUSB_LC_STAT_INTR_POLLING_FAILED\fR
+.ad
+.sp .6
+.RS 4n
+Failed to restart polling.
+.RE
+
+.sp
+.ne 2
+.na
+\fBUSB_LC_STAT_ISOC_POLLING_FAILED\fR
+.ad
+.sp .6
+.RS 4n
+Failed to start isochronous polling.
+.RE
+
+.sp
+.ne 2
+.na
+\fBUSB_LC_STAT_ISOC_UNINITIALIZED\fR
+.ad
+.sp .6
+.RS 4n
+Isochronous packet information not initialized.
+.RE
+
+.sp
+.ne 2
+.na
+\fBUSB_LC_STAT_ISOC_PKT_ERROR\fR
+.ad
+.sp .6
+.RS 4n
+All packets in this isochronous request have errors. The polling on this
+isochronous-IN endpoint is suspended and can be resumed on next \fBread\fR(2).
+.RE
+
+.sp
+.LP
+The following system call \fBerrno\fR values are returned:
+.sp
+.ne 2
+.na
+\fB\fBEINVAL\fR\fR
+.ad
+.RS 11n
+An attempt was made to enable or disable "one transfer" mode while the
+associated endpoint was open.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEBUSY\fR\fR
+.ad
+.RS 11n
+The endpoint has been opened and another open is attempted.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEACCES\fR\fR
+.ad
+.RS 11n
+An endpoint open was attempted with incorrect flags.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBENOTSUP\fR\fR
+.ad
+.RS 11n
+Operation not supported.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBENXIO\fR\fR
+.ad
+.RS 11n
+Device associated with the file descriptor does not exist.
+.RE
+
+.sp
+.ne 2
+.na
+\fBENODEV\fR
+.ad
+.RS 11n
+Device has been hot-removed or a suspend/resume happened before this command.
+.RE
+
+.sp
+.ne 2
+.na
+\fBEIO\fR
+.ad
+.RS 11n
+An I/O error occurred. Send a read on the endpoint status minor node to get the
+exact error information.
+.RE
+
+.sp
+.ne 2
+.na
+\fBEINTR\fR
+.ad
+.RS 11n
+Interrupted system call.
+.RE
+
+.sp
+.ne 2
+.na
+\fBENOMEM\fR
+.ad
+.RS 11n
+No memory for the allocation of internal structures.
+.RE
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/kernel/drv/ugen\fR\fR
+.ad
+.sp .6
+.RS 4n
+32-bit ELF kernel module. (x86).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/ugen\fR\fR
+.ad
+.sp .6
+.RS 4n
+64-bit ELF kernel module. (x86).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/sparcv9/ugen\fR\fR
+.ad
+.sp .6
+.RS 4n
+64-bit ELF kernel module. (SPARC).
+.RE
+
+.sp
+.ne 2
+.na
+/dev/usb/<vid>.<pid>/<N>/cntrl0
+/dev/usb/<vid>.<pid>/<N>/cntrl0stat
+
+/dev/usb/<vid>.<pid>/<N>/if<interface#>
+ <in|out|cntrl><endpoint#>
+/dev/usb/<vid>.<pid>/<N>/if<interface#>
+ <in|out|cntrl><endpoint#>stat
+
+/dev/usb/<vid>.<pid>/<N>/if<interface#>.
+ <alternate><in|out|cntrl<endpoint#>
+/dev/usb/<vid>.<pid>/<N>/if<interface#>.
+ <alternate><in|out|cntrl><endpoint#>stat
+
+/dev/usb/<vid>.<pid>/<N>/cfg<value>if<interface#>
+ <in|out|cntrl><endpoint#>
+/dev/usb/<vid>.<pid>/<N>/cfg<value>if<interface#>
+ <in|out|cntrl<endpoint#stat>
+
+/dev/usb/<vid>.<pid>/<N>/cfg<value>if<interface#>.
+ <alternate><in|out|cntrl><endpoint#>
+/dev/usb/<vid>.<pid>/<N>/cfg<value>if<interface#>.
+ <alternate><in|out|cntrl><endpoint#>stat
+
+/dev/usb/<vid>.<pid>/<N>/devstat
+
+/dev/usb/<vid>.<pid>/<N>/if<interface#>cntrl0
+/dev/usb/<vid>.<pid>/<N>/if<interface#>cntrl0stat
+.ad
+.sp .6
+.RS 4n
+where \fIN\fR is an integer representing the instance number of this type of
+device. (All logical device names for a single device share the same \fIN\fR.)
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture SPARC & x86, PCI-based systems
+.TE
+
+.SH SEE ALSO
+.LP
+.BR close (2),
+.BR poll (2),
+.BR read (2),
+.BR write (2),
+.BR aioread (3C),
+.BR aiowrite (3C),
+.BR usba (4D),
+.BR usb_dev_descr (9S)
+.SH DIAGNOSTICS
+.LP
+In addition to being logged, the following messages may appear on the system
+console. All messages are formatted in the following manner:
+.sp
+.in +2
+.nf
+Warning: <device path> (ugen<instance num>): Error Message...
+.fi
+.in -2
+.sp
+
+.sp
+.ne 2
+.na
+\fBToo many minor nodes. \fR
+.ad
+.sp .6
+.RS 4n
+Device has too many minor nodes. Not all are available.
+.RE
+
+.sp
+.ne 2
+.na
+\fBInstance number too high (<\fInumber\fR>).\fR
+.ad
+.sp .6
+.RS 4n
+Too many devices are using this driver.
+.RE
+
+.sp
+.ne 2
+.na
+\fBCannot access <device>. Please reconnect.\fR
+.ad
+.sp .6
+.RS 4n
+This device has been disconnected because a device other than the original one
+has been inserted. The driver informs you of this fact by displaying the name
+of the original device.
+.RE
+
+.sp
+.ne 2
+.na
+\fBDevice is not identical to the previous one on this port. Please disconnect
+and reconnect.\fR
+.ad
+.sp .6
+.RS 4n
+Same condition as described above; however in this case, the driver is unable
+to identify the original device with a name string.
+.RE
+
+.SH NOTES
+.LP
+\fBugen\fR returns \fB-1\fR for all commands and sets \fBerrno\fR to
+\fBENODEV\fR when device has been hot-removed or resumed from a suspend. The
+application must close and reopen all open minor nodes to reinstate successful
+communication.
diff --git a/usr/src/man/man4d/uhci.4d b/usr/src/man/man4d/uhci.4d
new file mode 100644
index 0000000000..a3d8e37bb7
--- /dev/null
+++ b/usr/src/man/man4d/uhci.4d
@@ -0,0 +1,119 @@
+'\" te
+.\" Copyright (c) 2005, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH UHCI 4D "May 13, 2017"
+.SH NAME
+uhci \- host controller driver
+.SH SYNOPSIS
+.LP
+.nf
+\fBpcivid,pid@unit-address\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBuhci\fR host controller driver is a \fBUSBA \fR (Solaris USB
+Architecture) compliant nexus driver that supports the \fIUniversal Host
+Controller Interface Specification 1.1\fR, an industry standard developed by
+Intel. The \fBuhci\fR driver supports all USB transfers, including interrupt,
+control, isochronous and bulk.
+.SH FILES
+.ne 2
+.na
+\fB\fB/kernel/drv/uhci\fR\fR
+.ad
+.RS 28n
+32-bit ELF kernel module. (SPARC or x86).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/uhci\fR\fR
+.ad
+.RS 28n
+64-bit ELF kernel module. (x86).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/sparcv9/uhci\fR\fR
+.ad
+.RS 28n
+64-bit SPARC ELF kernel module.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/uhci.conf\fR\fR
+.ad
+.RS 28n
+Driver configuration file.
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+l | l
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture SPARC or x86 PCI-based systems
+.TE
+
+.SH SEE ALSO
+.LP
+.BR ehci (4D),
+.BR hubd (4D),
+.BR ohci (4D),
+.BR usba (4D),
+.BR attributes (7)
+.sp
+.LP
+\fIWriting Device Drivers\fR
+.sp
+.LP
+\fIUniversal Host Controller Interface Specification for USB 1.1\fR
+.sp
+.LP
+\fIUniversal Serial Bus Specification 2.0\fR
+.sp
+.LP
+\fISystem Administration Guide: Basic Administration\fR
+.SH DIAGNOSTICS
+.LP
+All host controller errors are passed to the client drivers. Root errors are
+documented in \fBhubd\fR(4D).
+.sp
+.LP
+In addition to being logged, the following messages may appear on the system
+console. All messages are formatted in the following manner:
+.sp
+.in +2
+.nf
+WARNING: <device path> <uhci><instance number>>: Error message...
+.fi
+.in -2
+.sp
+
+.sp
+.ne 2
+.na
+\fBNo SOF interrupts have been received. This USB UHCI host controller is
+unusable.\fR
+.ad
+.sp .6
+.RS 4n
+The USB hardware is not generating Start Of Frame interrupts. Please reboot the
+system. If this problem persists, contact your system vendor.
+.RE
+
diff --git a/usr/src/man/man4d/ural.4d b/usr/src/man/man4d/ural.4d
new file mode 100644
index 0000000000..4579f7edec
--- /dev/null
+++ b/usr/src/man/man4d/ural.4d
@@ -0,0 +1,84 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH URAL 4D "May 6, 2008"
+.SH NAME
+ural \- Ralink RT2500USB 802.11b/g Wireless Driver
+.SH DESCRIPTION
+.sp
+.LP
+The \fBural\fR \fI802.11b/g\fR wireless NIC driver is a multi-threaded,
+loadable, clonable, GLDv3-based STREAMS driver supporting the Ralink
+RT2500USB chipset-based NIC's.
+.SH CONFIGURATION
+.sp
+.LP
+The \fBural\fR driver performs auto-negotiation to determine the data rate
+and mode. Supported 802.11b data rates are 1, 2, 5.5 and 11 Mbits/sec.
+Supported \fI802.11g\fR data rates are 1, 2, 5.5, 11, 6, 9, 12, 18, 24, 36, 48
+and 54 Mbits/sec. The \fBural\fR driver supports only BSS networks (also known
+as "ap" or "infrastructure" networks) and "open" (or "open-system") or "shared
+system" authentication.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/dev/ural*\fR\fR
+.ad
+.sp .6
+.RS 4n
+Special character device.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/ural\fR\fR
+.ad
+.sp .6
+.RS 4n
+32-bit ELF kernel module. (x86)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/ural\fR\fR
+.ad
+.sp .6
+.RS 4n
+64-bit ELF kernel module. (x86)
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for a description of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture x86
+_
+Interface Stability Committed
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR gld (4D),
+.BR dlpi (4P),
+.BR attributes (7),
+.BR dladm (8),
+.BR wificonfig (8)
+.sp
+.LP
+\fI802.11 - Wireless LAN Media Access Control and Physical Layer
+Specification\fR - IEEE, 2001
diff --git a/usr/src/man/man4d/urtw.4d b/usr/src/man/man4d/urtw.4d
new file mode 100644
index 0000000000..9e347587d6
--- /dev/null
+++ b/usr/src/man/man4d/urtw.4d
@@ -0,0 +1,81 @@
+'\" te
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH URTW 4D "Aug 20, 2009"
+.SH NAME
+urtw \- RealTek RTL8187L/RTL8187B USB 802.11b/g Wireless Driver
+.SH DESCRIPTION
+.sp
+.LP
+The \fBurtw\fR 802.11b/g wireless driver is a multi-threaded, loadable,
+clonable, GLDv3-basedSTREAMS driver supporting the RealTek RTL8187L
+chipset-based wireless devices.
+.SS "Configuration"
+.sp
+.LP
+The \fBurtw\fR driver performs auto-negotiation to determine the data rate and
+mode. Supported 802.11b data rates are 1, 2, 5.5 and 11 Mbits/sec. Supported
+802.11g data rates are 1, 2, 5.5, 11, 6, 9, 12, 8, 24, 36, 48 and 54 Mbits/sec.
+The \fBatu\fR driver supports only BSS networks (also known as\fBap\fR or
+\fBinfrastructure\fR networks) and \fBopen\fR (or \fBopen-system\fR) or
+\fBshared system\fR authentication.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/dev/urtw*\fR\fR
+.ad
+.RS 26n
+Special character device.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/urtw\fR\fR
+.ad
+.RS 26n
+32-bit ELF kernel module. (x86)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/urtw\fR\fR
+.ad
+.RS 26n
+64-bit ELF kernel module. (x86)
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for a description of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture x86
+_
+Interface Stability Committed
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR gld (4D),
+.BR dlpi (4P),
+.BR attributes (7),
+.BR dladm (8),
+.BR wificonfig (8)
+.sp
+.LP
+\fI802.11 \(em Wireless LAN Media Access Control and Physical Layer
+Specification, IEEE, 2001\fR
diff --git a/usr/src/man/man4d/usb_ac.4d b/usr/src/man/man4d/usb_ac.4d
new file mode 100644
index 0000000000..9fbc8288c6
--- /dev/null
+++ b/usr/src/man/man4d/usb_ac.4d
@@ -0,0 +1,146 @@
+'\" te
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
+.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH USB_AC 4D "May 13, 2009"
+.SH NAME
+usb_ac \- USB audio control driver
+.SH SYNOPSIS
+.LP
+.nf
+sound-control@unit-address
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBusb_ac\fR driver is a USBA (Solaris USB Architecture) compliant client
+driver that supports the \fIUSB Audio Class 1.0\fR specification.
+.sp
+.LP
+The audio control driver is a USB class driver and offers functionality similar
+to the \fBaudiocs\fR (sun4u) and \fBaudiots\fR (Sun Blade 100) drivers which
+use the Solaris audio mixer framework (\fBmixer\fR(4I)). Unlike the
+\fBaudiocs\fR and \fBaudiots\fR drivers, the USB audio device can have
+play-only or record-only capability.
+.sp
+.LP
+Drivers corresponding to other USB audio interfaces on the device, including
+the \fBusb_as\fR(4D) audio streaming driver or the \fBhid\fR(4D) driver, are
+plumbed under the USB audio control driver and do not directly interface with
+user applications.
+.sp
+.LP
+The \fBusb_ac\fR driver supports USB audio class compliant devices with a
+feature unit.
+.SH ERRORS
+.sp
+.LP
+If a device is hot-removed while it is active, all subsequent opens returns
+EIO. All other errors are defined in the \fBaudio\fR(4I) man page.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/usb_ac\fR\fR
+.ad
+.RS 30n
+32-bit x86 ELF kernel module
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/usb_ac\fR\fR
+.ad
+.RS 30n
+64-bit x86 ELF kernel module
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/sparcv9/usb_ac\fR\fR
+.ad
+.RS 30n
+64-bit SPARC ELF kernel module.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/usb_ac.conf\fR\fR
+.ad
+.RS 30n
+USB audio driver configuration file.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture SPARC, x86, PCI-based systems
+_
+Interface Stability Uncommitted
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR ioctl (2),
+.BR hid (4D),
+.BR usb_as (4D),
+.BR usba (4D),
+.BR audio (4I),
+.BR mixer (4I),
+.BR streamio (4I),
+.BR usb_ah (4M),
+.BR attributes (7),
+.BR cfgadm_usb (8)
+.sp
+.LP
+\fIWriting Device Drivers\fR
+.sp
+.LP
+\fIUniversal Serial Bus Specification 1.0 and 1.1\fR
+.sp
+.LP
+\fIUniversal Serial Bus Device Class Definition for Audio Devices, Release
+1.0\fR
+.sp
+.LP
+\fISystem Administration: Basic Administration\fR
+.SH DIAGNOSTICS
+.sp
+.LP
+In addition to being logged, the following messages can appear on the system
+console. All messages are formatted in the following manner:
+.sp
+.in +2
+.nf
+Warning: <device path> (usb_ac<instance num>): Error Message...
+.fi
+.in -2
+.sp
+
+.sp
+.ne 2
+.na
+\fBFailure to plumb audio streams drivers.\fR
+.ad
+.sp .6
+.RS 4n
+The \fBusb\fR audio streaming driver or the \fBhid\fR driver could not be
+plumbed under the audio control driver and the device is not usable.
+.RE
+
diff --git a/usr/src/man/man4d/usb_as.4d b/usr/src/man/man4d/usb_as.4d
new file mode 100644
index 0000000000..751d8815ad
--- /dev/null
+++ b/usr/src/man/man4d/usb_as.4d
@@ -0,0 +1,160 @@
+'\" te
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
+.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH USB_AS 4D "May 15, 2009"
+.SH NAME
+usb_as \- USB audio streaming driver
+.SH SYNOPSIS
+.LP
+.nf
+sound@unit-address
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBusb_as\fR driver is a USBA (Solaris USB Architecture) compliant client
+driver that supports the \fIUSB Audio Class 1.0\fR specification.
+.sp
+.LP
+The \fBusb_as\fR driver processes audio data messages during play and record
+and sets sample frequency, precision, encoding and other functions on request
+from the USB audio control driver. See \fBusb_ac\fR(4D).
+.sp
+.LP
+This driver is plumbed under the USB audio control driver and does not directly
+interface with the user application.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/usb_as\fR\fR
+.ad
+.RS 30n
+32-bit x86 ELF kernel module
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/usb_as\fR\fR
+.ad
+.RS 30n
+64-bit x86 ELF kernel module
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/sparcv9/usb_as\fR\fR
+.ad
+.RS 30n
+64-bit SPARC ELF kernel module
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture SPARC, x86, PCI-based systems
+_
+Stability level Committed
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR usb_ac (4D),
+.BR usba (4D),
+.BR audio (4I),
+.BR attributes (7)
+.sp
+.LP
+\fIWriting Device Drivers\fR
+.sp
+.LP
+\fIUniversal Serial Bus Specification 1.0 and 1.1\fR
+.sp
+.LP
+\fISystem Administration Guide: Basic Administration\fR
+.SH DIAGNOSTICS
+.sp
+.LP
+In addition to being logged, the following messages can appear on the system
+console. All messages are formatted in the following manner:
+.sp
+.in +2
+.nf
+Warning: <device path> (usb_as<instance num>): Error Message...
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+where \fI<device path>\fR is the physical path to the device in \fB/devices\fR
+directory.
+.sp
+.ne 2
+.na
+\fBNo bandwidth available.\fR
+.ad
+.sp .6
+.RS 4n
+There is no bandwidth available for the isochronous pipe. As a result, no data
+is transferred during play and record.
+.RE
+
+.sp
+.ne 2
+.na
+\fBOperating a full/high speed audio device on a high speed port is not
+supported.\fR
+.ad
+.sp .6
+.RS 4n
+The USB software does not currently support full or high speed audio devices
+connected to an external USB 2.0 hub that is linked to a port of a USB 2.0 host
+controller. Audio devices must be connected directly to a port of a USB 2.0
+controller or to any USB 1.1 port.
+.RE
+
+.sp
+.ne 2
+.na
+\fBCannot access device. Please reconnect <name>.\fR
+.ad
+.sp .6
+.RS 4n
+There was an error in accessing the device during reconnect. Please reconnect
+the device.
+.RE
+
+.sp
+.ne 2
+.na
+\fBDevice is not identical to the previous one on this port. Please disconnect
+and reconnect.\fR
+.ad
+.sp .6
+.RS 4n
+A USB audio streaming interface was hot-removed while open. A new device was
+hot-inserted which is not identical to the original USB audio device. Please
+disconnect the USB device and reconnect the device to the same port.
+.RE
+
+.SH NOTES
+.sp
+.LP
+The USB audio streaming interface is power managed if the device is idle.
diff --git a/usr/src/man/man4d/usb_ia.4d b/usr/src/man/man4d/usb_ia.4d
new file mode 100644
index 0000000000..3d125b9be7
--- /dev/null
+++ b/usr/src/man/man4d/usb_ia.4d
@@ -0,0 +1,117 @@
+'\" te
+.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH USB_IA 4D "May 13, 2017"
+.SH NAME
+usb_ia \- USB interface association driver
+.SH SYNOPSIS
+.LP
+.nf
+interface association@unit-address
+.fi
+
+.LP
+.nf
+
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBusb_ia\fR driver is a USBA (Solaris Universal Serial Bus
+Architecture)-compliant nexus driver that binds to a device's interface
+association nodes when no vendor or class specific driver is available. To do
+this, \fBusb_ia\fR creates nodes for the internal interfaces and then attempts
+to bind drivers to each child interface.
+.sp
+.LP
+Each interface association node has a parent device node that is created by
+\fBusb_mid\fR(4D) and all \fBugen\fR(4D) interfaces are exported by
+\fBusb_mid\fR(4D). (Note: attempting to export \fBugen\fR(4D) interfaces using
+\fBusb_ia\fR is prohibited.)
+.SH FILES
+.ne 2
+.na
+\fB\fB/kernel/drv/usb_ia\fR\fR
+.ad
+.sp .6
+.RS 4n
+32-bit ELF kernel module. (x86).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/usb_ia\fR\fR
+.ad
+.sp .6
+.RS 4n
+64-bit ELF kernel module. (x86).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/sparcv9/usb_ia\fR\fR
+.ad
+.sp .6
+.RS 4n
+64-bit ELF kernel module. (SPARC).
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture SPARC & x86 PCI-based systems
+.TE
+
+.SH SEE ALSO
+.LP
+.BR ugen (4D),
+.BR usb_mid (4D),
+.BR usba (4D),
+.BR attributes (7)
+.sp
+.LP
+\fIWriting Device Drivers\fR
+.sp
+.LP
+\fISystem Administration Guide: Basic Administration\fR
+.sp
+.LP
+\fIUniversal Serial Bus Specification 2.0\fR \(em 2000
+.sp
+.LP
+\fIInterface Association Descriptor Engineering Change Notice (ECN)\fR\(em2003
+.SH DIAGNOSTICS
+.LP
+In addition to being logged, the following messages may appear on the system
+console. All messages are formatted in the following manner:
+.sp
+.in +2
+.nf
+<device path> (usb_ia<instance num>):message...
+.fi
+.in -2
+.sp
+
+.sp
+.ne 2
+.na
+\fBNo driver found for interface <n> (nodename: <string>) of <device>.\fR
+.ad
+.sp .6
+.RS 4n
+No driver is available for this interface.
+.RE
+
diff --git a/usr/src/man/man4d/usb_mid.4d b/usr/src/man/man4d/usb_mid.4d
new file mode 100644
index 0000000000..eef727c85c
--- /dev/null
+++ b/usr/src/man/man4d/usb_mid.4d
@@ -0,0 +1,194 @@
+'\" te
+.\" Copyright 2006 Sun Microsystems, Inc. All rights reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH USB_MID 4D "May 13, 2017"
+.SH NAME
+usb_mid \- USB Multi Interface Driver
+.SH SYNOPSIS
+.LP
+.nf
+\fBdevice@\fR\fIunit-address\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBusb_mid\fR driver is a \fBUSBA\fR (Solaris Universal Serial Bus
+Architecture)-compliant nexus driver that binds to device level nodes of a
+composite (multi interface) device if no vendor or class-specific driver is
+available. The \fBusb_mid\fR driver creates interface nodes or interface
+association nodes and attempts to bind drivers to them. If no driver is found
+for interface association nodes, \fBusb_ia\fR(4D) is bound by default.
+.SS "UGEN (Generic USB)"
+.LP
+The \fBusb_mid\fR driver also supports a \fBugen\fR(4D) interface allowing raw
+access to the device, for example by libusb applications, by
+passing the drivers bound to each interface. Since a libusb application might
+change the state of the device, you should not access the device through the
+child interface drivers. Note that the \fBusb_mid\fR driver creates a ugen
+interface only if none of its children are explicitly bound to the
+\fBugen\fR(4D) driver. Additionally, \fBusb_mid\fR does not create children.
+.SH FILES
+.ne 2
+.na
+\fB\fB/kernel/drv/usb_mid\fR \fR
+.ad
+.sp .6
+.RS 4n
+32-bit x86 ELF kernel module
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/usb_mid\fR \fR
+.ad
+.sp .6
+.RS 4n
+64-bit x86 ELF kernel module
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/sparcv9/usb_mid\fR \fR
+.ad
+.sp .6
+.RS 4n
+64-bit SPARC ELF kernel module
+.RE
+
+.sp
+.ne 2
+.na
+\fB/dev/usb/*/*/* \fR
+.ad
+.sp .6
+.RS 4n
+ugen(4D) nodes.
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture SPARC & x86, PCI-based systems
+.TE
+
+.SH SEE ALSO
+.LP
+.BR usb_ia (4D),
+.BR usba (4D),
+.BR attributes (7),
+.BR cfgadm_usb (8)
+.sp
+.LP
+\fIWriting Device Drivers\fR
+.sp
+.LP
+\fIUniversal Serial Bus Specification 2.0\fR\(em2000
+.sp
+.LP
+\fIInterface Association Descriptor Engineering Change Notice (ECN)\fR\(em2003
+.sp
+.LP
+\fISystem Administration Guide: Basic Administration\fR
+.SH DIAGNOSTICS
+.LP
+In addition to being logged, the following messages may appear on the system
+console. All messages are formatted in the following manner:
+.sp
+.in +2
+.nf
+Warning: <device path> (usb_mid<instance number>): Error Message...
+.fi
+.in -2
+.sp
+
+.sp
+.ne 2
+.na
+\fBCannot access <device>. Please reconnect.\fR
+.ad
+.sp .6
+.RS 4n
+This device has been disconnected because a device other than the original one
+has been inserted. The driver informs you of this fact by displaying the name
+of the original device.
+.RE
+
+.sp
+.ne 2
+.na
+\fBDevice not identical to the previous one on this port. Please disconnect and
+reconnect.\fR
+.ad
+.sp .6
+.RS 4n
+Same condition as described above; however in this case, the driver is unable
+to identify the original device with a name string.
+.RE
+
+.sp
+.ne 2
+.na
+\fBPlease disconnect and reconnect this device.\fR
+.ad
+.sp .6
+.RS 4n
+A hotplug of the device is needed before it can be restored.
+.RE
+
+.sp
+.LP
+The following messages may be logged into the system log. They are formatted in
+the following manner:
+.sp
+.in +2
+.nf
+<device path><usb_mid<instance number>): message...
+.fi
+.in -2
+.sp
+
+.sp
+.ne 2
+.na
+\fBNo driver found for interface <n> (nodename: <string>) of <device>. \fR
+.ad
+.sp .6
+.RS 4n
+No driver is available for this interface.
+.RE
+
+.sp
+.ne 2
+.na
+\fBNo driver found for device <device>. \fR
+.ad
+.sp .6
+.RS 4n
+No driver is available for this interface.
+.RE
+
+.sp
+.ne 2
+.na
+\fBCan't support ugen for multiple configuration devices that have attached
+child interface drivers.\fR
+.ad
+.sp .6
+.RS 4n
+No ugen interface is available and libusb cannot work with this
+device.
+.RE
+
diff --git a/usr/src/man/man4d/usba.4d b/usr/src/man/man4d/usba.4d
new file mode 100644
index 0000000000..1b8dd0675f
--- /dev/null
+++ b/usr/src/man/man4d/usba.4d
@@ -0,0 +1,144 @@
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 2016 Joyent, Inc.
+.\" Copyright 2020 Peter Tribble.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
+.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.Dd Jan 10, 2020
+.Dt USBA 4D
+.Os
+.Sh NAME
+.Nm usba ,
+.Nm usb
+.Nd illumos USB Architecture (USBA)
+.Sh DESCRIPTION
+USB provides a low-cost means for attaching peripheral devices, including
+mass-storage devices, keyboards, mice, and printers, to a system.
+For complete information on the USB architecture, visit the USB website at
+http://www.usb.org.
+.Pp
+USBA supports 126 hot-pluggable USB devices per USB bus.
+The maximum data transfer rate is 5 Gbits (SuperSpeed USB 3.0), 480 Mbits (high
+speed USB 2.0), 12 Mbits (full speed USB 1.x), or 1.5 Mbits (low speed USB 1.x).
+.Pp
+USBA adheres to the
+.Em Universal Serial Bus 3.0
+specification and provides a transport layer abstraction to USB client
+drivers.
+.Pp
+For information on how to write USB client drivers, see
+.Em Writing Device Drivers .
+For the latest information on writing USB drivers, visit
+.Em http://illumos.org/books/wdd .
+For a complete list of USBA interfaces, see
+.Xr Intro 9F
+or
+.Xr Intro 9S .
+.Pp
+Devices without a driver may be able to leverage libusb.
+.Sh FILES
+Listed below are drivers and modules which either utilize or are utilized by
+USBA.
+.Bl -column -offset indent ".Pa /kernel/drv/[sparcv9|amd64]/usbser_edge" "Edgeport USB to serial port"
+.It Em Client Driver Ta Em Function/Device
+.It Ta
+.It Pa /kernel/drv/[sparcv9|amd64]/hid Ta HID class
+.It Pa /kernel/drv/[sparcv9|amd64]/hubd Ta hub class
+.It Pa /kernel/drv/[sparcv9|amd64]/scsa2usb Ta mass storage class
+.It Pa /kernel/drv/[sparcv9|amd64]/usbprn Ta printer class
+.It Pa /kernel/drv/[sparcv9|amd64]/usb_as Ta audio streaming class
+.It Pa /kernel/drv/[sparcv9|amd64]/usb_ac Ta audio control class
+.It Pa /kernel/drv/[sparcv9|amd64]/usbvc Ta video class
+.It Pa /kernel/drv/[sparcv9|amd64]/usb_mid Ta multi-interface device
+.It Pa /kernel/drv/[sparcv9|amd64]/usb_ia Ta interface-association driver
+.It Pa /kernel/drv/[sparcv9|amd64]/usbser_edge Ta Edgeport USB to serial port
+.It Pa /kernel/drv/[sparcv9|amd64]/usbsksp Ta Keyspan USB to serial port
+.It Pa /kernel/drv/[sparcv9|amd64]/usbsprl Ta pl2303 USB to serial port
+.It Pa /kernel/drv/[sparcv9|amd64]/usbsacm Ta CDC ACM class to serial port
+.It Pa /kernel/drv/[sparcv9|amd64]/ugen Ta generic USB driver
+.El
+.Bl -column -offset indent ".Pa /kernel/strmod/[sparcv9|amd64/]usb_ah" "Function/Device"
+.It Ta
+.It Em Client Streams Modules Ta Em Function/Device
+.It Ta
+.It Pa /kernel/strmod/[sparcv9|amd64]/usbkbm Ta Keyboard
+.It Pa /kernel/strmod/[sparcv9|amd64]/usbms Ta Mouse
+.It Pa /kernel/strmod/[sparcv9|amd64]/usb_ah Ta Audio HID
+.El
+.Bl -column -offset indent ".Em Host Controller Interface Drivers" "Extensible HCI"
+.It Em Host Controller Interface Drivers Ta Em Device
+.It Ta
+.It Pa /kernel/drv/amd64/xhci Ta Extensible HCI
+.It Pa /kernel/drv/[sparcv9|amd64]/ehci Ta Enhanced HCI
+.It Pa /kernel/drv/[sparcv9|amd64]/ohci Ta Open HCI
+.It Pa /kernel/drv/[sparcv9|amd64]/uhci Ta Universal HCI
+.El
+.Sh DIAGNOSTICS
+The messages described below may appear on the system console as well as being
+logged.
+All messages are formatted in the following manner:
+.Bl -tag -width Sy -offset 2n
+.It WARNING: Error message...
+.El
+.Bl -tag -width Sy -offset 2n
+.It Sy no driver found for device <device_name> (interface <number> node
+name=<node_name>)
+The installed software does not contain a supported driver for this
+hardware.
+<number> is the interface number.
+<name> is either the device path name or the device name.
+.It Sy Draining callbacks timed out!
+An internal error occurred.
+Please reboot your system.
+If this problem persists, contact your system vendor.
+.El
+.Pp
+The following messages may be logged into the system log.
+They are formatted in the following manner:
+.Bd -literal -offset 2n
+<device path><usba<instance number>): message...
+.Ed
+.Bl -tag -width Sy -offset 2n
+.It Sy Incorrect USB driver version for <n.m> .
+Driver is incompatible with USBA framework.
+.El
+.Sh SEE ALSO
+.Xr ehci 4D ,
+.Xr hid 4D ,
+.Xr hubd 4D ,
+.Xr ohci 4D ,
+.Xr scsa2usb 4D ,
+.Xr ugen 4D ,
+.Xr uhci 4D ,
+.Xr usb_ac 4D ,
+.Xr usb_as 4D ,
+.Xr usb_ia 4D ,
+.Xr usb_mid 4D ,
+.Xr usbprn 4D ,
+.Xr usbsacm 4D ,
+.Xr usbser_edge 4D ,
+.Xr usbsksp 4D ,
+.Xr usbsprl 4D ,
+.Xr usbvc 4D ,
+.Xr virtualkm 4D ,
+.Xr xhci 4D ,
+.Xr attributes 7 ,
+.Xr cfgadm_usb 8 ,
+.Xr Intro 9F ,
+.Xr Intro 9S
+.Pp
+.Rs
+.%T Writing Device Drivers
+.Re
+.Rs
+.%T Universal Serial Bus Specification 3.0
+.Re
+.Rs
+.%T Interface Association Descriptor Engineering Change Notice (ECN)
+.Re
+.Rs
+.%T System Administration Guide: Basic Administration
+.Re
+.Sh NOTES
+Booting from USB mass-storage devices is not supported on SPARC, but is
+supported on X86.
diff --git a/usr/src/man/man4d/usbftdi.4d b/usr/src/man/man4d/usbftdi.4d
new file mode 100644
index 0000000000..4871a98622
--- /dev/null
+++ b/usr/src/man/man4d/usbftdi.4d
@@ -0,0 +1,322 @@
+'\" te
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH USBFTDI 4D "Aug 13, 2021"
+.SH NAME
+usbftdi \- FTDI USB to serial converter driver
+.SH SYNOPSIS
+.LP
+.nf
+\fB#include <fcntl.h>\fR
+\fB#include <sys/termio.h>\fR
+\fBusbftdi@unit\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBusbftdi\fR driver is a loadable STREAMS and USBA (Solaris USB
+Architecture) compliant client driver that provides basic asynchronous
+communication support for FTDI USB-to-serial converters. Serial device streams
+are built with appropriate modules that are pushed atop the \fBusbftdi\fR
+driver by the \fBautopush\fR(8) facility.
+.SS "Application Programming Interface"
+.sp
+.LP
+The \fBusbftdi\fR module supports the \fBtermio\fR(4I) device control functions
+specified by flags in the \fBc_cflag\fR word of the \fBtermios\fR structure,
+and by the \fBIGNBRK, IGNPAR, PARMRK\fR, and \fBINPCK\fR flags in the
+\fBc_iflag\fR word of the \fBtermios\fR structure. All other \fBtermio\fR(4I)
+functions must be performed by STREAMS modules pushed atop the driver. When a
+device is opened, the , \fBldterm\fR(4M) and \fBttcompat\fR(4M) STREAMS modules
+are automatically pushed on top of the stream, providing the standard
+\fBtermio\fR(4I) interface.
+.sp
+.LP
+Use device logical names \fB/dev/term/[0-9]*\fR to access the serial ports for
+a dial-in line that is used with a modem.
+.sp
+.LP
+Use device logical names \fB/dev/cua/[0-9]*\fR to access the serial ports for
+other applications. These names are also used to provide a logical access point
+for a dial-out line.
+.sp
+.LP
+Device hot-removal is functionally equivalent to a modem disconnect event, as
+defined in \fBtermio\fR(4I).
+.sp
+.LP
+Input and output line speeds can be set to the following baud rates: 300, 600,
+1200, 2400, 4800, 9600, 19200, 38400, 57600, 115200, 230400, 460800, 921600,
+2000000, or 3000000. Input and output line speeds can not be set
+independently. For example, when the output speed is set, the input speed is
+automatically set to the same speed.
+.SS "Soft Carrier Capabilities"
+.sp
+.LP
+Many devices that use this USB serial interface component are not, in fact
+dial-in lines connected to carefully configured RS-232 modems. They are often
+intelligent peripherals whose manufacturers want to present a serial port
+interface to application software. Some applications use only three wire
+connections, or are otherwise somewhat casual about the state of the Carrier
+Detect (electrical) signal, and the other modem control lines.
+.sp
+.LP
+The configuration file delivered with this driver, \fBusbftdi.conf\fR,
+acknowledges this by setting the driver property \fBignore-cd\fR to 1. This
+enables \fBsoft carrier\fR mode where the kernel does \fBnot\fR block opens
+waiting for DCD to be asserted.
+.sp
+.LP
+This behavior also matches the default \fBignore carrier detect\fR behavior of
+the onboard serial ports of machines that have them. See \fBeeprom\fR(8) for
+further details.
+.sp
+.LP
+The \fBhardware carrier\fR behavior (the driver's internal default) can be
+selected by either unsetting (commenting out) the \fBignore-cd\fR property, or
+by setting the value of the property to zero.
+.sp
+.LP
+More sophisticated selection of which devicesl ignore or obey the DCD signal
+can be effected using \fBport-%d-ignore-cd\fR properties.
+.SS "Dial-In and Dial-Out Support"
+.sp
+.LP
+A related feature is available for traditional usage that enables a single tty
+line to be connected to a modem and used for incoming and outgoing calls. By
+accessing through device logical name \fB/dev/cua/[0-9]*\fR, you can open a
+port without the carrier detect signal being asserted, either through hardware
+or an equivalent software mechanism. These devices are commonly known as
+dial-out lines.
+.sp
+.LP
+A dial-in line can be opened only if the corresponding dial-out line is closed.
+A blocking \fB/dev/term\fR open waits until the \fB/dev/cua\fR line is closed,
+which drops Data Terminal Ready, after which Carrier Detect usually drops as
+well. When the carrier is detected again with the \fB/dev/cua\fR device
+remaining closed, this indicates an incoming call and the blocking open seizes
+exclusive use of the line.
+.sp
+.LP
+A non-blocking \fB/dev/term\fR open returns an error if the \fB/dev/cua\fR
+device is open.
+.sp
+.LP
+If the \fB/dev/term\fR line is opened successfully (usually only when carrier
+is recognized on the modem, though see \fBSoft Carrier Capabilities\fR section
+of this manual page), the corresponding \fB/dev/cua\fR line can not be opened.
+This allows a modem and port to be used for dial-in (enabling the line for
+login in \fB/etc/inittab\fR) or dial-out (using \fBtip\fR(1) or \fBuucp\fR(1C))
+when no-one is logged in on the line.
+.SH ERRORS
+.sp
+.LP
+An \fBopen()\fR fails under the following conditions:
+.sp
+.ne 2
+.na
+\fB\fBENXIO\fR\fR
+.ad
+.RS 9n
+The unit being opened does not exist.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEBUSY\fR\fR
+.ad
+.RS 9n
+The \fB/dev/cua\fR (dial-out) device is being opened while the \fB/dev/term\fR
+(dial-in device) is open, or the dial-in device is being opened with a no-delay
+open while the dial-out device is open.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEBUSY\fR\fR
+.ad
+.RS 9n
+The unit has been marked as exclusive-use by another process with a
+\fBTIOCEXCL\fR \fBioctl()\fR call.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEIO\fR\fR
+.ad
+.RS 9n
+USB device I/O error.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/usr/kernel/drv/usbftdi\fR\fR
+.ad
+.sp .6
+.RS 4n
+32-bit x86 ELF kernel module
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/kernel/drv/usbftdi.conf\fR\fR
+.ad
+.sp .6
+.RS 4n
+Kernel module configuration file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/kernel/drv/amd64/usbftdi\fR\fR
+.ad
+.sp .6
+.RS 4n
+64-bit x86 ELF kernel module
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/kernel/drv/sparcv9/usbftdi\fR\fR
+.ad
+.sp .6
+.RS 4n
+64-bit SPARC ELF kernel module
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/cua/[0-9]*\fR\fR
+.ad
+.sp .6
+.RS 4n
+Dial-out tty lines
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/term/[0-9]*\fR\fR
+.ad
+.sp .6
+.RS 4n
+Dial-in tty lines
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for a description of the following attribute:
+.sp
+
+.sp
+.TS
+box;
+l | l
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture SPARC, x86, PCI-based systems
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+\fBstrconf\fR(1), \fBtip\fR(1), \fBuucp\fR(1C), \fBautopush\fR(8),
+\fBeeprom\fR(8), \fBioctl\fR(2), \fBopen\fR(2), \fBtermios\fR(3C),
+\fBusba\fR(4D), \fBtermio\fR(4I), \fBldterm\fR(4M), \fBttcompat\fR(4M),
+\fBeeprom\fR(8), \fBattributes\fR(7),
+.SH DIAGNOSTICS
+.sp
+.LP
+In addition to being logged, the following messages might appear on the system
+console. All messages are formatted in the following manner:
+.sp
+.in +2
+.nf
+Warning: \fIdevice_path\fR usbftdi\fIinstance num\fR): Error Message ...
+.fi
+.in -2
+.sp
+
+.sp
+.ne 2
+.na
+\fB\fBDevice was disconnected while open. Data may have been lost.\fR\fR
+.ad
+.sp .6
+.RS 4n
+The device has been hot-removed or powered off while it was open and a possible
+data transfer was in progress. The job might be aborted.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBDevice is not identical to the previous one on this port. Please
+disconnect and reconnect.\fR\fR
+.ad
+.sp .6
+.RS 4n
+The device was hot-removed while open. A new device was hot-inserted which is
+not identical to the original device. Please disconnect the device and
+reconnect the original device to the same port.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBDevice has been reconnected, but data may have been lost.\fR\fR
+.ad
+.sp .6
+.RS 4n
+The device that was hot-removed from its USB port has been re-inserted again to
+the same port. It is available for access but data from a previous transfer
+might be lost.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBCannot access \fIdevice\fR. Please reconnect.\fR\fR
+.ad
+.sp .6
+.RS 4n
+This device has been disconnected because a device other than the original one
+has been inserted. The driver informs you of this fact by displaying the name
+of the original device.
+.RE
+
+.sp
+.LP
+The following messages might be logged into the system log. They are formatted
+in the following manner:
+.sp
+.in +2
+.nf
+\fIdevice_path\fR usbftdi\fIiinstance number\fR): message ...
+.fi
+.in -2
+.sp
+
+.sp
+.ne 2
+.na
+\fB\fBInput overrun.\fR\fR
+.ad
+.RS 18n
+Data was lost.
+.RE
+
diff --git a/usr/src/man/man4d/usbprn.4d b/usr/src/man/man4d/usbprn.4d
new file mode 100644
index 0000000000..64901e72ac
--- /dev/null
+++ b/usr/src/man/man4d/usbprn.4d
@@ -0,0 +1,458 @@
+'\" te
+.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH USBPRN 4D "May 17, 2020"
+.SH NAME
+usbprn \- USB printer class driver
+.SH SYNOPSIS
+.nf
+#include <sys/usb/clients/printer/usb_printer.h>
+.fi
+
+.LP
+.nf
+#include <sys/ecppio.h>
+.fi
+
+.LP
+.nf
+usbprn@unit-address
+.fi
+
+.SH DESCRIPTION
+The \fBusbprn\fR driver is a USBA (Solaris USB Architecture) compliant client
+driver that supports the \fIUSB Printer Class 1.0\fR specification. The
+\fBusbprn\fR driver supports a subset of the \fBecpp\fR(4D) parallel port
+driver functionality. However, unlike the STREAMS-based \fBecpp\fR driver,
+\fBusbprn\fR is a character driver.
+.sp
+.LP
+The \fBusbprn\fR driver supports all USB printer-class compliant printers.
+.sp
+.LP
+The \fBusbrpn\fR driver includes support for communicating with many different
+printers. To use these printers, it may be necessary to install and configure
+additional format conversion packages available in the Solaris distribution.
+Configuration of these conversion packages under the Solaris printing system
+can be simplified through the use of the \fBprintmgr\fR(8). This tool allows
+selection of printer manufacturer/model information while creating a print
+queue. For USB connected printers, it attempts to pre-select the
+manufacturer and model information based on the 1284 device id supplied by the
+printer.
+.SS "UGEN (Generic USB)"
+The \fBusbprn\fR driver also supports a \fBugen\fR(4D) interface allowing raw
+access to the device, for example by libusb applications, by
+passing the drivers bound to each interface. Because a libusb application might
+change the state of the device, you should not access the device through the
+child interface drivers.
+.SH DEFAULT OPERATION
+With certain minor exceptions (outlined in the Notes sections below), the
+\fBusbprn\fR driver supports a subset of the \fBecpp\fR(4D) ioctl interfaces:
+.sp
+.LP
+Configuration variables are set to their default values each time the USB
+printer device is attached. The \fBwrite_timeout\fR period (defined in the
+ECPPIOC_SETPARMS ioctl description below) is set to 90 seconds. The mode is set
+to centronics mode (ECPP_CENTRONICS). Parameters can be changed through the
+ECPPIOC_SETPARMS ioctl and read through the ECPPIOC_GETPARMS ioctl. Each time
+the USB printer device is opened, the device is marked as busy and all further
+opens will return EBUSY. Once the device is open, applications can write to the
+device and the driver can send data and obtain device id and status.
+.LP
+Note -
+.sp
+.RS 2
+Unlike the \fBecpp\fR(4D) driver, \fBusbprn\fR resets configuration variables
+to their default values with each \fBattach\fR(9E). (The \fBecpp\fR(4D) driver
+resets configuration variables with each \fBopen\fR(2).)
+.RE
+.SH WRITE OPERATION
+A \fBwrite\fR(2) operation returns the number of bytes successfully written to
+the device. If a failure occurs while a driver is transferring data to printer,
+the contents of the status bits are captured at the time of the error and can
+be retrieved by the application program using the ECPPIOC_GETERR \fBioctl\fR(2)
+call. The captured status information is overwritten each time an
+ECPPIOC_TESTIO \fBioctl\fR(2) occurs.
+.SH IOCTLS
+The \fBusbprn\fR driver supports \fBprnio\fR(4I) interfaces. Note that the
+\fBPRNIOC_RESET\fR command has no effect on USB printers.
+.sp
+.LP
+The following \fBioctl\fR(2) calls are supported for backward compatibility and
+are not recommended for new applications.
+.sp
+.ne 2
+.na
+\fB\fBECPPIOC_GETPARMS\fR\fR
+.ad
+.RS 20n
+Gets current transfer parameters. The argument is a pointer to \fBstruct
+ecpp_transfer_parms\fR. If parameters are not configured after the device is
+opened, the structure will be set to its default configuration.
+.LP
+Note -
+.sp
+.RS 2
+Unlike the \fBecpp\fR(4D) driver, only the ECPP_CENTRONICS mode is currently
+supported in \fBusbprn\fR.
+.RE
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBECPPIOC_SETPARMS\fR\fR
+.ad
+.RS 20n
+Sets transfer parameters. The argument is a pointer to a \fBstruct
+ecpp_transfer_parms\fR. If a parameter is out of range, \fBEINVAL\fR is
+returned. If the peripheral or host device cannot support the requested mode,
+\fBEPROTONOSUPPORT\fR is returned.
+.sp
+The transfer parameters structure is defined in <\fBsys/ecppio.h\fR>:
+.sp
+.in +2
+.nf
+struct ecpp_transfer_parms {
+ int write_timeout;
+ int mode;
+};
+.fi
+.in -2
+
+The \fBwrite_timeout\fR field, which specifies how long the driver will take to
+transfer 8192 bytes of data to the device, is set to a default value of 90
+seconds. The \fBwrite_timeout\fR field must be greater than one second and less
+than 300 seconds (five minutes.)
+.LP
+Note -
+.sp
+.RS 2
+Unlike the \fBecpp\fR(4D) driver, only the ECPP_CENTRONICS mode is currently
+supported in \fBusbprn\fR. Also, the semantics of \fBwrite_timeout\fR in
+\fBusbprn\fR differ from \fBecpp\fR(4D). Refer to \fBecpp\fR(4D) for
+information.
+.RE
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBBPPIOC_TESTIO\fR\fR
+.ad
+.RS 20n
+Tests the transfer readiness of a print device and checks status bits to
+determine if a \fBwrite\fR(2) will succeed. If status bits are set, a transfer
+will fail. If a transfer will succeed, zero is returned. If a transfer fails,
+the driver returns \fBEIO\fR and the state of the status bits are captured. The
+captured status can be retrieved using the BPPIOC_GETERR \fBioctl\fR(2) call.
+.LP
+Note -
+.sp
+.RS 2
+Unlike the \fBecpp\fR(4D) driver, only the ECPP_CENTRONICS mode is currently
+supported in \fBusbprn\fR. Additionally, \fBbus_error\fR and
+\fBtimeout_occurred\fR fields are not used in the \fBusbprn\fR interface. (In
+\fBecpp\fR(4D), \fBtimeout_occurred\fR is used.)
+.RE
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBBPPIOC_GETERR\fR\fR
+.ad
+.RS 20n
+Get last error status. The argument is a pointer to a \fBstruct
+bpp_error_status\fR. This structure indicates the status of all the appropriate
+status bits at the time of the most recent error condition during a
+\fBwrite\fR(2) call, or the status of the bits at the most recent BPPIOC_TESTIO
+\fBioctl\fR(2) call.
+.sp
+.in +2
+.nf
+struct bpp_error_status {
+ char timeout_occurred; /* not used */
+ char bus_error; /* not used */
+ uchar_t pin_status; /* status of pins which
+ /* could cause error */
+};
+.fi
+.in -2
+
+The pin_status field indicates possible error conditions. The error status
+structure \fBbpp_error_status\fR is defined in the include file
+\fB<sys/bpp_io.h>\fR\&. The valid bits for \fBpin_status\fR can be
+\fBBPP_ERR_ERR\fR, \fBBPP_SLCT_ERR\fR, and \fBBPP_PE_ERR\fR. A set bit
+indicates that the associated pin is asserted.
+.LP
+Note -
+.sp
+.RS 2
+Unlike the \fBecpp\fR(4D) driver, only the ECPP_CENTRONICS mode is currently
+supported in \fBusbprn\fR. Additionally, the \fBbus_error\fR and
+\fBtimeout_occurred\fR fields are not used in the \fBusbprn\fR interface. (In
+\fBecpp\fR(4D), \fBtimeout_occurred\fR is used.) Unlike \fBecpp\fR(4D), the
+BPP_BUSY_ERR status bit is not supported by USB printers.
+.RE
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBECPPIOC_GETDEVID\fR\fR
+.ad
+.RS 20n
+Gets the IEEE 1284 device ID from the peripheral. The argument is a pointer to
+a \fBstruct ecpp_device_id\fR. Applications should set mode to ECPP_CENTRONICS.
+If another mode is used, the driver will return \fBEPROTONOSUPPORT\fR.
+\fBlen\fR is the length of the buffer pointed to by \fBaddr\fR. \fBrlen\fR is
+the actual length of the device ID string returned from the peripheral. If the
+returned \fBrlen\fR is greater than \fBlen\fR, the application should call
+ECPPIOC_GETDEVID a second time with a buffer length equal to \fBrlen\fR.
+.sp
+The 1284 device ID structure:
+.sp
+.in +2
+.nf
+struct ecpp_device_id {
+ int mode; /* mode to use for reading device id */
+ int len; /* length of buffer */
+ int rlen; /* actual length of device id string */
+ char *addr; /* buffer address */
+.fi
+.in -2
+
+.LP
+Note -
+.sp
+.RS 2
+Unlike \fBecpp\fR(4D), only the ECPP_CENTRONICS mode is currently supported in
+\fBusbprn\fR.
+.RE
+.RE
+
+.SH READ OPERATION
+The \fBread\fR operation is not supported and returns \fBEIO\fR.
+.SH ERRORS
+.ne 2
+.na
+\fB\fBEBUSY\fR\fR
+.ad
+.RS 19n
+The device has been opened and another open is attempted. An attempt has been
+made to unload the driver while one of the units is open.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEINVAL\fR\fR
+.ad
+.RS 19n
+An unsupported IOCTL has been received. A ECPPIOC_SETPARMS \fBioctl\fR(2) is
+attempted with an out of range value in the \fBecpp_transfer_parms\fR
+structure.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEIO\fR\fR
+.ad
+.RS 19n
+The driver has received an unrecoverable device error, or the device is not
+responding, or the device has stalled when attempting an access. A
+\fBwrite\fR(2) or \fBioctl\fR(2) did not complete due to a peripheral access. A
+\fBread\fR(2) system call has been issued.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBENXIO\fR\fR
+.ad
+.RS 19n
+The driver has received an \fBopen\fR(2) request for a unit for which the
+attach failed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBENODEV\fR\fR
+.ad
+.RS 19n
+The driver has received an \fBopen\fR(2) request for a device that has been
+disconnected.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEPROTONOSUPPORT\fR\fR
+.ad
+.RS 19n
+The driver has received a ECPPIOC_SETPARMS \fBioctl\fR(2) for a mode argument
+other than ECPP_CENTRONICS in the \fBecpp_transfer_parms\fR structure.
+.RE
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/kernel/drv/usbprn\fR\fR
+.ad
+.RS 30n
+32-bit x86 ELF kernel module
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/usbprn\fR\fR
+.ad
+.RS 30n
+64-bit x86 ELF kernel module
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/sparcv9/usbprn\fR\fR
+.ad
+.RS 30n
+64-bit SPARC ELF kernel module
+.RE
+
+.sp
+.ne 2
+.na
+\fB/dev/usb/*/*/* \fR
+.ad
+.RS 30n
+ugen(4D) nodes.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/printers/\fIn\fR\fR\fR
+.ad
+.RS 30n
+Character special files
+.RE
+
+.SH ATTRIBUTES
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture SPARC, x86, PCI-based systems
+.TE
+
+.SH SEE ALSO
+.BR ioctl (2),
+.BR open (2),
+.BR read (2),
+.BR write (2),
+.BR ecpp (4D),
+.BR ugen (4D),
+.BR usba (4D),
+.BR prnio (4I),
+.BR attributes (7),
+.BR cfgadm_usb (8),
+.BR printmgr (8),
+.BR attach (9E)
+.sp
+.LP
+\fIWriting Device Drivers\fR
+.sp
+.LP
+\fIUniversal Serial Bus Specification 1.0 and 1.1\fR
+.sp
+.LP
+\fIUSB Device Class Definition for Printing Devices 1.0\fR
+.sp
+.LP
+\fISystem Administration Guide: Basic Administration\fR
+.SH DIAGNOSTICS
+In addition to being logged, the following messages may appear on the system
+console. All messages are formatted in the following manner:
+.sp
+.in +2
+.nf
+Warning: <device path> (usbprn<instance num>): Error Message...
+.fi
+.in -2
+.sp
+
+.sp
+.ne 2
+.na
+\fBDevice was disconnected while open. Data may have been lost.\fR
+.ad
+.sp .6
+.RS 4n
+The device has been hot-removed or powered off while it was open and a possible
+data transfer was in progress. The job may be aborted.
+.RE
+
+.sp
+.ne 2
+.na
+\fBCannot access <device>. Please reconnect.\fR
+.ad
+.sp .6
+.RS 4n
+There was an error in accessing the printer during reconnect. Please reconnect
+the device.
+.RE
+
+.sp
+.ne 2
+.na
+\fBDevice is not identical to the previous one on this port. Please disconnect
+and reconnect.\fR
+.ad
+.sp .6
+.RS 4n
+A USB printer was hot-removed while open. A new device was hot-inserted which
+is not identical to the original USB printer. Please disconnect the USB device
+and reconnect the printer to the same port.
+.RE
+
+.sp
+.ne 2
+.na
+\fBPrinter has been reconnected but data may have been lost.\fR
+.ad
+.sp .6
+.RS 4n
+The printer that was hot-removed from its USB port has been re-inserted again
+to the same port. It is available for access but the job that was running prior
+to the hot-removal may be lost.
+.RE
+
+.SH NOTES
+The USB printer will be power managed if the device is closed.
+.sp
+.LP
+If a printer is hot-removed before a job completes, the job is terminated and
+the driver will return EIO. All subsequent opens will return \fBENODEV\fR. If a
+printer is hot-removed, an LP reconfiguration may not be needed if a printer is
+re-inserted on the same port. If re-inserted on a different port, an LP
+reconfiguration may be required.
+.sp
+.LP
+The USB Parallel Printer Adapter is not hotpluggable. The printer should be
+connected to USB Parallel Printer Adapter before plugging the USB cable into
+host or hub port and should be removed only after disconnecting the USB cable
+of USB Parallel Printer Adapter from the host or hub port.
diff --git a/usr/src/man/man4d/usbsacm.4d b/usr/src/man/man4d/usbsacm.4d
new file mode 100644
index 0000000000..f089f8fe44
--- /dev/null
+++ b/usr/src/man/man4d/usbsacm.4d
@@ -0,0 +1,301 @@
+'\" te
+.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH USBSACM 4D "Aug 13, 2021"
+.SH NAME
+usbsacm \- USB communication device class ACM driver
+.SH SYNOPSIS
+.LP
+.nf
+#include <sys/termio.h>
+
+usbsacm@unit
+.fi
+
+.LP
+.nf
+
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBusbsacm\fR driver is a loadable STREAMS and USBA (Solaris USB
+architecture)-compliant client driver that provides basic asynchronous
+communication support for USB modems and ISDN terminal adapters that conform to
+the \fIUniversal Serial Bus Communication Device Class Abstract Control Model
+(USB CDC ACM)\fR specification. You can download the \fIUSB CDC\fR
+specification from the USB website at
+\fIhttp://www.usb.org/developers/devclass_docs/usbcdc11.pdf\fR. Supported
+devices include mobile phones and PCMCIA cards which provide modem function by
+the usb cable. Serial device streams are built with appropriate modules that
+are pushed atop the usbsacm driver by the \fBautopush\fR(8) facility.
+.sp
+.LP
+The \fBusbsacm\fR module supports the \fBtermio\fR(4I) device control functions
+specified by flags in the c_cflag word of termios structure, and by the IGNBRK,
+IGNPAR, PARMRK and INPCK flags in the c_iflag word of the termios structure.
+All other \fBtermio\fR(4I) functions must be performed by STREAMS modules
+pushed atop the driver. When a device is opened, the \fBldterm\fR(4M) and
+\fBttcompat\fR(4M) STREAMS modules are automatically pushed on top of the
+stream, providing the standard \fBtermio\fR(4I) interface.
+.sp
+.LP
+You use device logical names /dev/term/[\fI0-9\fR]* to access the serial ports.
+These names are typically used to provide a logical access point for a dial-in
+line that is used with a modem. You can use \fBpppd\fR(8) to transmit
+datagrams over these serial ports.
+.sp
+.LP
+A special feature (controlled by the minor device number) is available that
+enables a single tty line to be connected to a modem and used for incoming and
+outgoing calls. By accessing through device logical name /dev/cua/[\fI0-9\fR]*,
+you can open a port without the carrier detect signal being asserted, either
+through hardware or an equivalent software mechanism. These devices are
+commonly known as 'dial-out' lines.
+.sp
+.LP
+Unlike onboard serial ports, the \fBusbsacm\fR ports cannot serve as a local
+serial console.
+.SH APPLICATION PROGRAMMING INTERFACE
+.sp
+.LP
+A dial-in line can be opened only if the corresponding dial-out line is
+closed. A blocking /dev/term open waits until the /dev/cua line is closed
+(which drops Data Terminal Ready, after which Carrier Detect usually drops as
+well) and carrier is detected again. A non-blocking /dev/term open returns an
+error if the /dev/cua is open.
+.sp
+.LP
+If the /dev/term line is opened successfully (usually only when carrier is
+recognized on the modem), the corresponding /dev/cua line cannot be
+opened. This allows a modem and port to be used for dial-in (by enabling the
+line for login in \fB/etc/inittab\fR) or dial-out (by \fBtip\fR(1) or
+\fBuucp\fR(1C)) as \fB/dev/cua0\fR when no one is logged in on the line.
+.sp
+.LP
+Device hot-removal is functionally equivalent to a modem disconnect event, as
+defined in \fBtermio\fR(4I).
+.SH IOCTLS
+.sp
+.LP
+The \fBusbsacm\fR driver supports the standard set of \fBtermio\fR(4I) ioctl
+calls.
+.sp
+.LP
+The input and output line speeds may be set to any of the following baud rates:
+75, 150, 300, 600, 1200, 1800, 2400, 4800, 9600, 19200, 38400, 57600, 115200,
+230400, 460800, 921600, 1000000, 1152000, 1500000, 2000000, 2500000, 3000000,
+3500000, or 4000000. The speeds cannot be set independently. For example, when
+the output speed is set, the input speed is automatically set to the same
+speed.
+.SH ERRORS
+.sp
+.LP
+An \fBopen()\fR fails under the following conditions:
+.sp
+.ne 2
+.na
+\fB\fBENXIO\fR\fR
+.ad
+.RS 9n
+The unit being opened does not exist.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEBUSY\fR\fR
+.ad
+.RS 9n
+The /dev/cua (dial-out) device is being opened while the /dev/term (dial-in
+device) is open, or the dial-in device is being opened with a no-delay open
+while the dial-out device is open.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEBUSY\fR\fR
+.ad
+.RS 9n
+The unit has been marked as exclusive-use by another process with a
+\fBTIOCEXCL\fR \fBioctl()\fR call.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEIO\fR\fR
+.ad
+.RS 9n
+USB device I/O error.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/usbsacm\fR\fR
+.ad
+.sp .6
+.RS 4n
+32-bit ELF kernel module. (x86)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/usbsacm\fR\fR
+.ad
+.sp .6
+.RS 4n
+64-bit ELF kernel module. (x86)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/sparcv9/usbsacm\fR\fR
+.ad
+.sp .6
+.RS 4n
+64-bit ELF kernel module. (SPARC)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/cua/[0-9]\fR\fR
+.ad
+.sp .6
+.RS 4n
+dial-out tty lines
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/term/[0-9]\fR\fR
+.ad
+.sp .6
+.RS 4n
+dial-in tty lines
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture SPARC, x86 PCI-based systems
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR strconf (1),
+.BR tip (1),
+.BR uucp (1C),
+.BR ioctl (2),
+.BR open (2),
+.BR termios (3C),
+.BR usba (4D),
+.BR termio (4I),
+.BR ldterm (4M),
+.BR ttcompat (4M),
+.BR attributes (7),
+.BR autopush (8),
+.BR pppd (8)
+.SH DIAGNOSTICS
+.sp
+.LP
+In addition to being logged, the following messages may appear on the system
+console. All messages are formatted in the following manner:
+.sp
+.in +2
+.nf
+Warning: <device path> (usbsacm<instance num>):Error Message...
+.fi
+.in -2
+.sp
+
+.sp
+.ne 2
+.na
+\fBDevice was disconnected while open. Data may have been lost.\fR
+.ad
+.sp .6
+.RS 4n
+The device has been hot-removed or powered off while it was open and a possible
+data transfer was in progress. The job may be aborted.
+.RE
+
+.sp
+.ne 2
+.na
+\fBDevice is not identical to the previous one on this port. Please disconnect
+and reconnect.\fR
+.ad
+.sp .6
+.RS 4n
+The device was hot-removed while open. A new device was hot-inserted which is
+not identical to the original device. Please disconnect the device and
+reconnect the original device to the same port.
+.RE
+
+.sp
+.ne 2
+.na
+\fBDevice has been reconnected, but data may have been lost.\fR
+.ad
+.sp .6
+.RS 4n
+The device that was hot-removed from its USB port has been re-inserted again
+to the same port. It is available for access but data from a previous transfer
+may be lost.
+.RE
+
+.sp
+.ne 2
+.na
+\fBCannot access <device>. Please reconnect.\fR
+.ad
+.sp .6
+.RS 4n
+This device has been disconnected because a device other than the original one
+has been inserted. The driver informs you of this fact by displaying the name
+of the original device.
+.RE
+
+.sp
+.LP
+The following messages may be logged into the system log. They are formatted in
+the following manner:
+.sp
+.in +2
+.nf
+<device path><usbsacm<instance number>): message...
+.fi
+.in -2
+.sp
+
+.sp
+.ne 2
+.na
+\fBInput overrun.\fR
+.ad
+.RS 18n
+Data was lost.
+.RE
+
diff --git a/usr/src/man/man4d/usbsksp.4d b/usr/src/man/man4d/usbsksp.4d
new file mode 100644
index 0000000000..399d86a1ad
--- /dev/null
+++ b/usr/src/man/man4d/usbsksp.4d
@@ -0,0 +1,308 @@
+'\" te
+.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH USBSKSP 4D "May 13, 2017"
+.SH NAME
+usbsksp \- Keyspan USB to serial converter driver
+.SH SYNOPSIS
+.LP
+.nf
+#include <fcntl.h>
+.fi
+
+.LP
+.nf
+#include <sys/termio.h>
+.fi
+
+.LP
+.nf
+usbskpsp@unit
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBusbsksp\fR driver is a loadable \fBSTREAMS\fR and \fBUSBA\fR (Solaris
+USB architecture) compliant client driver that provides basic asynchronous
+communication support for Keyspan USB-to-serial converters. The \fBusbsksp\fR
+driver supports the Keyspan USA19HS, USA49WG and USA49WLC models. By default,
+the USA19HS and USA49WG models are compatible with the \fBusbsksp\fR driver and
+no configuration or installation steps are required. (The USA49WG model is a
+USB 2.0 device conforming to \fIUniversal Serial Bus Specification 2.0\fR and
+the USB 2.0 host controller is required to support the USA49WG model. Note that
+the USA49WG is not compatible with USB 1.1 host controllers). The Keyspan
+USA49WLC model requires a firmware package that is no longer publicly available.
+Serial device streams are built with appropriate modules that are pushed atop
+the \fBusbsksp\fR driver by the \fBautopush\fR(8) facility.
+.sp
+.LP
+The \fBusbsksp\fR module supports the \fBtermio\fR(4I) device control functions
+specified by flags in the \fBc_cflag\fR word of the termios structure, and by
+the IGNBRK, IGNPAR, PARMRK and INPCK flags in the \fBc_iflag\fR word of the
+termios structure. All other \fBtermio\fR(4I) functions must be performed by
+\fBSTREAMS\fR modules pushed atop the driver. When a device is opened, the
+\fBldterm\fR(4M) and \fBttcompat\fR(4M) \fBSTREAMS\fR modules are
+automatically pushed on top of the stream, providing the standard
+\fBtermio\fR(4I) interface.
+.sp
+.LP
+Use device logical names \fB/dev/term/[0-9]\fR* to access the serial ports.
+These names are typically used to provide a logical access point for a dial-in
+line that is used with a modem.
+.sp
+.LP
+A special feature (controlled by the minor device number) is available that
+enables a single tty line to be connected to a modem and used for incoming and
+outgoing calls. By accessing through device logical name \fB/dev/cua/[0-9]\fR*,
+you can open a port without the carrier detect signal being asserted, either
+through hardware or an equivalent software mechanism. These devices are
+commonly known as 'dial-out' lines.
+.sp
+.LP
+Unlike onboard serial ports, the \fBusbsksp\fR ports cannot serve as a local
+serial console.
+.SH APPLICATION PROGRAMMING INTERFACE
+.LP
+A dial-in line can be opened only if the corresponding dial-out line is closed.
+A blocking \fB/dev/term\fR open waits until the \fB/dev/cua\fR line is closed
+(which drops Data Terminal Ready, after which Carrier Detect usually drops as
+well) and carrier is detected again. A non-blocking \fB/dev/term\fR open
+returns an error if the \fB/dev/cua\fR is open.
+.sp
+.LP
+If the \fB/dev/term\fR line is opened successfully (usually only when
+carrier is recognized on the modem), the corresponding \fB/dev/cua\fR line
+cannot be opened. This allows a modem and port to be used for dial-in (by
+enabling the line for login in \fB/etc/inittab\fR) or dial-out (by
+\fBtip\fR(1), or \fBuucp\fR(1C)) when no one is logged in on the line.
+.sp
+.LP
+Device hot-removal is functionally equivalent to a modem disconnect event, as
+defined in \fBtermio\fR(4I).
+.SH IOCTLS
+.LP
+The \fBusbsksp\fR driver supports the standard set of \fBtermio\fR(4I) ioctl
+calls.
+.sp
+.LP
+Input and output line speeds can be set to the following baud rates: 0, 50,
+75, 110, 134, 150, 200, 300, 600, 1200, 1800, 2400, 4800, 9600, 19200, 38400,
+57600, 115200, or 230400. Input and output line speeds cannot be set
+independently. For example, when the output speed is set, the input speed is
+automatically set to the same speed.
+.SH ERRORS
+.LP
+An \fBopen()\fR fails under the following conditions:
+.sp
+.ne 2
+.na
+\fB\fBENXIO\fR\fR
+.ad
+.RS 9n
+The unit being opened does not exist.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEBUSY\fR\fR
+.ad
+.RS 9n
+The \fB/dev/cua\fR (dial-out) device is being opened while the \fB/dev/term\fR
+(dial-in device) is open, or the dial-in device is being opened with a no-delay
+open while the dial-out device is open.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEBUSY\fR\fR
+.ad
+.RS 9n
+The unit has been marked as exclusive-use by another process with a TIOCEXCL
+ioctl() call.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEIO\fR\fR
+.ad
+.RS 9n
+USB device I/O error.
+.RE
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/kernel/drv/usbsksp\fR\fR
+.ad
+.sp .6
+.RS 4n
+32-bit x86 ELF kernel module.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/usbsksp\fR\fR
+.ad
+.sp .6
+.RS 4n
+64-bit x86 ELF kernel module.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/sparcv9/usbsksp\fR\fR
+.ad
+.sp .6
+.RS 4n
+64-bit SPARC ELF kernel module.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/cua/[0-9]*\fR\fR
+.ad
+.sp .6
+.RS 4n
+dial-out tty lines.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/term/[0-9]*\fR\fR
+.ad
+.sp .6
+.RS 4n
+dial-in tty lines.
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture SPARC, x86, PCI-based systems
+.TE
+
+.SH SEE ALSO
+.LP
+.BR strconf (1),
+.BR tip (1),
+.BR uucp (1C),
+.BR ioctl (2),
+.BR open (2),
+.BR termios (3C),
+.BR usba (4D),
+.BR termio (4I),
+.BR ldterm (4M),
+.BR ttcompat (4M),
+.BR attributes (7),
+.BR autopush (8)
+.SH DIAGNOSTICS
+.LP
+In addition to being logged, the following messages may appear on the system
+console. All messages are formatted in the following manner:
+.sp
+.in +2
+.nf
+Warning: <device path> (usbsksp<instance num>): Error Message...
+.fi
+.in -2
+.sp
+
+.sp
+.ne 2
+.na
+\fBDevice was disconnected while open. Data may have been lost.\fR
+.ad
+.sp .6
+.RS 4n
+The device has been hot-removed or powered off while it was open and a possible
+data transfer was in progress. The job may be aborted.
+.RE
+
+.sp
+.ne 2
+.na
+\fBDevice is not identical to the previous one on this port. Please disconnect
+and reconnect.\fR
+.ad
+.sp .6
+.RS 4n
+The device was hot-removed while open. A new device was hot-inserted which is
+not identical to the original device. Please disconnect the device and
+reconnect the original device to the same port.
+.RE
+
+.sp
+.ne 2
+.na
+\fBDevice has been reconnected, but data may have been lost.\fR
+.ad
+.sp .6
+.RS 4n
+The device that was hot-removed from its USB port has been re-inserted again to
+the same port. It is available for access but data from a previous transfer
+may be lost.
+.RE
+
+.sp
+.ne 2
+.na
+\fBCannot access <\fR\fIdevice\fR\fB>. Please reconnect.\fR
+.ad
+.sp .6
+.RS 4n
+This device has been disconnected because a device other than the original one
+has been inserted. The driver informs you of this fact by displaying the name
+of the original device.
+.RE
+
+.sp
+.ne 2
+.na
+\fBNo valid firmware available for Keyspan usa49wlc usb-to-serial adapter.
+Please download it from Keyspan website and install it.\fR
+.ad
+.sp .6
+.RS 4n
+By default, only an empty firmware package is installed for the usa49wlc model.
+You will need to obtain a copy of the SUNWukspfw package and install it.
+.RE
+
+.sp
+.LP
+The following messages may be logged into the system log. They are formatted in
+the following manner:
+.sp
+.in +2
+.nf
+<device path><usbsksp<instance number>): message...
+.fi
+.in -2
+.sp
+
+.sp
+.ne 2
+.na
+\fBInput overrun\fR
+.ad
+.RS 17n
+Data was lost.
+.RE
+
diff --git a/usr/src/man/man4d/usbsprl.4d b/usr/src/man/man4d/usbsprl.4d
new file mode 100644
index 0000000000..47a951aacc
--- /dev/null
+++ b/usr/src/man/man4d/usbsprl.4d
@@ -0,0 +1,295 @@
+'\" te
+.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH USBSPRL 4D "Nov 23, 2006"
+.SH NAME
+usbsprl \- Prolific PL2303 USB to serial converter driver
+.SH SYNOPSIS
+.LP
+.nf
+#include <fcntl.h>
+.fi
+
+.LP
+.nf
+#include <sys/termio.h>
+.fi
+
+.LP
+.nf
+usbsprl@unit
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBusbsprl\fR driver is a loadable \fBSTREAMS\fR and \fBUSBA\fR (Solaris
+USB architecture) compliant client driver that provides basic asynchronous
+communication support for Prolific PL2303 USB-to-serial converters. Supported
+devices include PL2303H, PL2303HX and PL2303X. Serial device streams are built
+with appropriate modules that are pushed atop the \fBusbsprl\fR driver by the
+\fBautopush\fR(8) facility.
+.sp
+.LP
+The \fBusbsprl\fR module supports the \fBtermio\fR(4I) device control functions
+specified by flags in the \fBc_cflag\fR word of the termios structure, and by
+the IGNBRK, IGNPAR, PARMRK and INPCK flags in the \fBc_iflag\fR word of the
+termios structure. All other \fBtermio\fR(4I) functions must be performed by
+\fBSTREAMS\fR modules pushed atop the driver. When a device is opened, the
+\fBldterm\fR(4M) and \fBttcompat\fR(4M) \fBSTREAMS\fR modules are
+automatically pushed on top of the stream, providing the standard
+\fBtermio\fR(4I) interface.
+.sp
+.LP
+Use device logical names \fB/dev/term/[0-9]\fR* to access the serial ports.
+These names are typically used to provide a logical access point for a dial-in
+line that is used with a modem.
+.sp
+.LP
+A special feature (controlled by the minor device number) is available that
+enables a single tty line to be connected to a modem and used for incoming and
+outgoing calls. By accessing through device logical name \fB/dev/cua/[0-9]\fR*,
+you can open a port without the carrier detect signal being asserted, either
+through hardware or an equivalent software mechanism. These devices are
+commonly known as 'dial-out' lines.
+.SH APPLICATION PROGRAMMING INTERFACE
+.sp
+.LP
+A dial-in line can be opened only if the corresponding dial-out line is closed.
+A blocking \fB/dev/term\fR open waits until the \fB/dev/cua\fR line is closed
+(which drops Data Terminal Ready, after which Carrier Detect usually drops as
+well) and carrier is detected again. A non-blocking \fB/dev/term\fR open
+returns an error if the \fB/dev/cua\fR is open.
+.sp
+.LP
+If the \fB/dev/term\fR line is opened successfully (usually only when
+carrier is recognized on the modem), the corresponding \fB/dev/cua\fR line
+cannot be opened. This allows a modem and port to be used for dial-in (by
+enabling the line for login in \fB/etc/inittab\fR) or dial-out (by
+\fBtip\fR(1), or \fBuucp\fR(1C)) when no one is logged in on the line.
+.sp
+.LP
+Device hot-removal is functionally equivalent to a modem disconnect event, as
+defined in \fBtermio\fR(4I).
+.SH IOCTLS
+.sp
+.LP
+The \fBusbsprl\fR driver supports the standard set of \fBtermio\fR(4I) ioctl
+calls.
+.sp
+.LP
+Input and output line speeds can be set to the following baud rates: 75, 150,
+300, 600, 1200, 1800, 2400, 4800, 9600, 19200, 38400, 57600, 115200, 230400 or
+460800. Input and output line speeds cannot be set independently. For example,
+when the output speed is set, the input speed is automatically set to the same
+speed.
+.SH ERRORS
+.sp
+.LP
+An \fBopen()\fR fails under the following conditions:
+.sp
+.ne 2
+.na
+\fB\fBENXIO\fR\fR
+.ad
+.RS 9n
+The unit being opened does not exist.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEBUSY\fR\fR
+.ad
+.RS 9n
+The \fB/dev/cua\fR (dial-out) device is being opened while the \fB/dev/term\fR
+(dial-in device) is open, or the dial-in device is being opened with a no-delay
+open while the dial-out device is open.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEBUSY\fR\fR
+.ad
+.RS 9n
+The unit has been marked as exclusive-use by another process with a TIOCEXCL
+ioctl() call.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEIO\fR\fR
+.ad
+.RS 9n
+USB device I/O error.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/usbsprl\fR\fR
+.ad
+.sp .6
+.RS 4n
+32-bit x86 ELF kernel module.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/usbsprl\fR\fR
+.ad
+.sp .6
+.RS 4n
+64-bit x86 ELF kernel module.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/sparcv9/usbsprl\fR\fR
+.ad
+.sp .6
+.RS 4n
+64-bit SPARC ELF kernel module.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/cua/[0-9]*\fR\fR
+.ad
+.sp .6
+.RS 4n
+dial-out tty lines.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/term/[0-9]*\fR\fR
+.ad
+.sp .6
+.RS 4n
+dial-in tty lines.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture SPARC, x86, PCI-based systems
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR strconf (1),
+.BR tip (1),
+.BR uucp (1C),
+.BR ioctl (2),
+.BR open (2),
+.BR termios (3C),
+.BR usba (4D),
+.BR termio (4I),
+.BR ldterm (4M),
+.BR ttcompat (4M),
+.BR attributes (7),
+.BR autopush (8)
+.SH DIAGNOSTICS
+.sp
+.LP
+In addition to being logged, the following messages may appear on the system
+console. All messages are formatted in the following manner:
+.sp
+.in +2
+.nf
+Warning: <device path> (usbsprl<instance num>): Error Message...
+.fi
+.in -2
+.sp
+
+.sp
+.ne 2
+.na
+\fBDevice was disconnected while open. Data may have been lost.\fR
+.ad
+.sp .6
+.RS 4n
+The device has been hot-removed or powered off while it was open and a possible
+data transfer was in progress. The job may be aborted.
+.RE
+
+.sp
+.ne 2
+.na
+\fBDevice is not identical to the previous one on this port. Please disconnect
+and reconnect.\fR
+.ad
+.sp .6
+.RS 4n
+The device was hot-removed while open. A new device was hot-inserted which is
+not identical to the original device. Please disconnect the device and
+reconnect the original device to the same port.
+.RE
+
+.sp
+.ne 2
+.na
+\fBDevice has been reconnected, but data may have been lost.\fR
+.ad
+.sp .6
+.RS 4n
+The device that was hot-removed from its USB port has been re-inserted again to
+the same port. It is available for access but data from a previou transfer may
+be lost.
+.RE
+
+.sp
+.ne 2
+.na
+\fBCannot access <\fR\fIdevice\fR\fB>. Please reconnect.\fR
+.ad
+.sp .6
+.RS 4n
+This device has been disconnected because a device other than the original one
+has been inserted. The driver informs you of this fact by displaying the name
+of the original device.
+.RE
+
+.sp
+.LP
+The following messages may be logged into the system log. They are formatted in
+the following manner:
+.sp
+.in +2
+.nf
+<device path><usbsprl<instance number>): message...
+.fi
+.in -2
+.sp
+
+.sp
+.ne 2
+.na
+\fBInput overrun.\fR
+.ad
+.sp .6
+.RS 4n
+Data was lost.
+.RE
+
diff --git a/usr/src/man/man4d/usbvc.4d b/usr/src/man/man4d/usbvc.4d
new file mode 100644
index 0000000000..955b7b75e9
--- /dev/null
+++ b/usr/src/man/man4d/usbvc.4d
@@ -0,0 +1,462 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH USBVC 4D "May 13, 2017"
+.SH NAME
+usbvc \- USB video class driver
+.SH SYNOPSIS
+.LP
+.nf
+#include <sys/usb/clients/video/usbvc/usbvc.h>
+
+#include <sys/videodev2.h>
+
+usbvc@unit-address
+.fi
+
+.LP
+.nf
+
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBusbvc\fR driver is a USBA (Solaris USB Architecture)-compliant client
+driver that supports the \fIUSB Device Class Definition for Video Devices\fR
+specification, Versions 1.0 and 1.1. The \fBusbvc\fR driver supports a subset
+of the video controls and formats described in the USB specification.
+.sp
+.LP
+The \fBusbvc\fR driver also implements the Video4Linux2 API (\fIV4L2\fR),
+Version 0.20 for applications. For more information on the \fIV4L2 API\fR,
+visit \fIhttp://www.thedirks.org/v4l2\fR.
+.sp
+.LP
+Note that the \fBusbvc\fR driver supports the video capture function only and
+that video output is not supported.
+.SH READING DATA
+.LP
+The \fBusbvc\fR driver reads video data from the isochronous endpoint of the
+device. Bulk data endpoints are not supported.
+.sp
+.LP
+MJPEG and UNCOMPRESSED video formats are supported. Isochronous data are read
+from the isochronous input device frame-by-frame and are maintained in a
+buffer array within the driver. Video frames are read from the driver using the
+\fBread\fR(2) or \fBmmap\fR(2) I/O method. For \fBread\fR(2), each read returns
+a buffer of a video frame. For \fBmmap\fR(2), each \fBVIDIOC_DQBUF\fR ioctl
+returns the buffer structure v4l2_buffer. (A video frame buffer pointer is
+included in the structure). See the \fIV4L2 API\fR for buffer structure and
+other related data structure information.
+.SH IOCTLS
+.LP
+A brief overview of supported ioctl requests appears below. For more detailed
+information, refer to the \fIV4L2 API\fR document. Note: ioctl information
+presented in the \fIV4L2 API\fR document may differ slightly from the content
+of this manpage. In such cases, you should rely on the information in this
+manpage.
+.sp
+.ne 2
+.na
+\fBVIDIOC_QUERYCAP\fR
+.ad
+.sp .6
+.RS 4n
+Query the device capabilities. Besides device capabilities, the \fBusbvc\fR
+driver returns structure v4l2_capability which includes information on the
+driver, data bus and OS kernel. Please note that the "Version" structure member
+has no meaning in Solaris and is always set to 1.
+.RE
+
+.sp
+.ne 2
+.na
+\fBVIDIOC_ENUM_FMT\fR
+.ad
+.sp .6
+.RS 4n
+Enumerate the video formats supported by the device.
+.RE
+
+.sp
+.ne 2
+.na
+\fBVIDIOC_S_FMT\fR
+.ad
+.sp .6
+.RS 4n
+Set a video format.
+.RE
+
+.sp
+.ne 2
+.na
+\fBVIDIOC_G_FMT\fR
+.ad
+.sp .6
+.RS 4n
+Get a video format.
+.RE
+
+.sp
+.ne 2
+.na
+\fBVIDIOC_REQBUFS\fR
+.ad
+.sp .6
+.RS 4n
+Request the \fBusbvc\fR driver to allocate video data buffers. If a buffer is
+set to zero, the driver stops reading video data from the device and releases
+all allocated buffers. (For \fBmmap\fR(2) only).
+.RE
+
+.sp
+.ne 2
+.na
+\fBVIDIOC_QUERYBUF\fR
+.ad
+.sp .6
+.RS 4n
+Query a given buffer's status. (For \fBmmap\fR(2) only).
+.RE
+
+.sp
+.ne 2
+.na
+\fBVIDIOC_QBUF\fR
+.ad
+.sp .6
+.RS 4n
+Enqueue an empty buffer to the video data buffer array. (For \fBmmap\fR(2)
+only).
+.RE
+
+.sp
+.ne 2
+.na
+\fBVIDIOC_DQBUF\fR
+.ad
+.sp .6
+.RS 4n
+Dequeue a done buffer from the video data buffer array. (For \fBmmap\fR(2)
+only).
+.RE
+
+.sp
+.ne 2
+.na
+\fBVIDIOC_STREAMON\fR
+.ad
+.sp .6
+.RS 4n
+Start reading video data.
+.RE
+
+.sp
+.ne 2
+.na
+\fBVIDIOC_STREAMOFF\fR
+.ad
+.sp .6
+.RS 4n
+Stop reading video data.
+.RE
+
+.sp
+.ne 2
+.na
+\fBVIDIOC_ENUMINPUT\fR
+.ad
+.sp .6
+.RS 4n
+Enumerate all device inputs. Currently, the \fBusbvc\fR driver supports one
+input only.
+.RE
+
+.sp
+.ne 2
+.na
+\fBVIDIOC_G_INPUT\fR
+.ad
+.sp .6
+.RS 4n
+Get the device's current input. At this time, the \fBusbvc\fR driver supports
+one input only.
+.RE
+
+.sp
+.ne 2
+.na
+\fBVIDIOC_S_INPUT\fR
+.ad
+.sp .6
+.RS 4n
+Set the device's current input. At this time, the \fBusbvc\fR driver supports
+one input only.
+.RE
+
+.sp
+.ne 2
+.na
+\fBVIDIOC_QUERYCTRL\fR
+.ad
+.sp .6
+.RS 4n
+Query the device and driver for supported video controls. Currently, the
+\fBusbvc\fR driver supports the brightness, contrast, saturation, hue, and
+gamma video controls.
+.RE
+
+.sp
+.ne 2
+.na
+\fBVIDIOC_G_CTRL\fR
+.ad
+.sp .6
+.RS 4n
+Get the device's current video control.
+.RE
+
+.sp
+.ne 2
+.na
+\fBVIDIOC_S_CTRL\fR
+.ad
+.sp .6
+.RS 4n
+Set the device's current video control.
+.RE
+
+.sp
+.ne 2
+.na
+\fBVIDIOC_G_PARM\fR
+.ad
+.sp .6
+.RS 4n
+Get streaming parameters, the number of frames per second and number of buffers
+used internally by driver in read/write mode.
+.RE
+
+.sp
+.ne 2
+.na
+\fBVIDIOC_S_PARM\fR
+.ad
+.sp .6
+.RS 4n
+Set streaming parameters, the number of frames per second and number of buffers
+used internally by driver in read/write mode.
+.RE
+
+.SH ERRORS
+.ne 2
+.na
+\fB\fBEBUSY\fR\fR
+.ad
+.RS 10n
+An open was attempted after the device has already been opened.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEINVAL\fR\fR
+.ad
+.RS 10n
+An unsupported ioctl is received or an ioctl is attempted with an out-of-range
+value.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEIO\fR\fR
+.ad
+.RS 10n
+The driver received an unrecoverable device error or the device did not
+respond or the device stalled when attempting an access. A \fBread\fR(2) or
+\fBioctl\fR(2) did not complete due to a peripheral access.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBENXIO\fR\fR
+.ad
+.RS 10n
+The driver received an \fBopen\fR(2) request for a device for which the attach
+failed.
+.RE
+
+.sp
+.ne 2
+.na
+\fBENODEV\fR
+.ad
+.RS 10n
+The driver received an \fBopen\fR(2) request for a disconnected device.
+.RE
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/kernel/drv/usbvc\fR\fR
+.ad
+.sp .6
+.RS 4n
+32-bit ELF kernel module. (x86)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/usbvc\fR\fR
+.ad
+.sp .6
+.RS 4n
+64-bit ELF kernel module. (x86)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/sparcv9/usbvc\fR\fR
+.ad
+.sp .6
+.RS 4n
+64-bit ELF kernel module. (SPARC)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/usb/*/*/*\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBugen\fR(4D) nodes.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/videoN\fR\fR
+.ad
+.sp .6
+.RS 4n
+Device node for isochronous input from USB video device and device control.
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture SPARC, x86, PCI-based systems
+.TE
+
+.SH SEE ALSO
+.LP
+.BR ioctl (2),
+.BR mmap (2),
+.BR open (2),
+.BR read (2),
+.BR ugen (4D),
+.BR usba (4D),
+.BR attributes (7),
+.BR cfgadm_usb (8),
+.BR attach (9E)
+.sp
+.LP
+\fIWriting Device Drivers\fR
+.sp
+.LP
+\fISystem Administration Guide: Basic Administration\fR
+.sp
+.LP
+\fIUniversal Serial Bus Specification 1.0, 1.1 and 2.0\fR\(em 1996, 1998, 2000
+.sp
+.LP
+\fIUSB Device Class Definition for Video Devices 1.0 and 1.1\fR\(em 2003, 2005
+.sp
+.LP
+\fIVideo4Linux2 API (V4L2), Version 0.20\fR
+.sp
+.LP
+\fIhttp://www.usb.org\fR
+.sp
+.LP
+\fIhttp://www.thedirks.org/v4l2\fR
+.SH DIAGNOSTICS
+.LP
+In addition to being logged, the following messages may appear on the system
+console. All messages are formatted in the following manner:
+.sp
+.in +2
+.nf
+Warning: <device path> (usbvc<instance num>):Error Message...
+.fi
+.in -2
+.sp
+
+.sp
+.ne 2
+.na
+\fBDevice was disconnected while open. Data may have been lost.\fR
+.ad
+.sp .6
+.RS 4n
+The device has been hot-removed or powered off while it was open and a possible
+data transfer was in progress. The job may be aborted.
+.RE
+
+.sp
+.ne 2
+.na
+\fBCannot access <device>. Please reconnect.\fR
+.ad
+.sp .6
+.RS 4n
+This device has been disconnected because a device other than the original one
+has been inserted. The driver informs you of this fact by displaying the name
+of the original device.
+.RE
+
+.sp
+.ne 2
+.na
+\fBDevice is not identical to the previous one on this port. Please disconnect
+and reconnect.\fR
+.ad
+.sp .6
+.RS 4n
+The device was hot-removed while open. A new device was hot-inserted which is
+not identical to the original device. Please disconnect the device and
+reconnect the original device to the same port.
+.RE
+
+.SH NOTES
+.LP
+The USB video device will be power-managed when the device is idle.
+.sp
+.LP
+If a USB video device is hot-removed while active, a console warning is
+displayed requesting you to put the device back in the same port and telling
+you of potential data loss. Hot-removal of an active video device is strongly
+discouraged.
+.sp
+.LP
+Always close all applications before hot-removing or hot-inserting a device.
+If an application is open when a device is hot-removed, inserting the device
+in a different port will create new \fB/dev/video\fR\fIN\fR links. Moving
+an active device to another port is not recommended.
diff --git a/usr/src/man/man4d/usmn.4d b/usr/src/man/man4d/usmn.4d
new file mode 100644
index 0000000000..165b87cca6
--- /dev/null
+++ b/usr/src/man/man4d/usmn.4d
@@ -0,0 +1,42 @@
+.\"
+.\" This file and its contents are supplied under the terms of the
+.\" Common Development and Distribution License ("CDDL"), version 1.0.
+.\" You may only use this file in accordance with the terms of version
+.\" 1.0 of the CDDL.
+.\"
+.\" A full copy of the text of the CDDL should have accompanied this
+.\" source. A copy of the CDDL is also available via the Internet at
+.\" http://www.illumos.org/license/CDDL.
+.\"
+.\"
+.\" Copyright 2021 Oxide Computer Company
+.\"
+.Dd July 30, 2021
+.Dt USMN 4D
+.Os
+.Sh NAME
+.Nm usmn
+.Nd AMD SMN user access driver
+.Sh SYNOPSIS
+.Pa /devices/pseudo/amdzen@0/usmn@2:usmn.*
+.Sh DESCRIPTION
+The
+.Nm
+driver provides the ability to read and write data from the AMD System
+Management Network
+.Pq SMN
+on AMD Family 17h
+.Pq Zen, Zen+, and Zen 2
+and AMD Family 19h
+.Pq Zen 3
+processors.
+.Pp
+This driver is intended strictly for facilitating platform development
+and is not recommended for systems that aren't doing kernel and platform
+development on AMD Zen platforms.
+Arbitrary writes to the SMN can severely damage and destabilize the system.
+If you do not need access to the SMN, then this driver should not be
+present on the system.
+.Sh SEE ALSO
+.Xr amdzen 4D ,
+.Xr zen_udf 4D
diff --git a/usr/src/man/man4d/vioblk.4d b/usr/src/man/man4d/vioblk.4d
new file mode 100644
index 0000000000..4d7a2b1d9a
--- /dev/null
+++ b/usr/src/man/man4d/vioblk.4d
@@ -0,0 +1,92 @@
+.\"
+.\" This file and its contents are supplied under the terms of the
+.\" Common Development and Distribution License ("CDDL"), version 1.0.
+.\" You may only use this file in accordance with the terms of version
+.\" 1.0 of the CDDL.
+.\"
+.\" A full copy of the text of the CDDL should have accompanied this
+.\" source. A copy of the CDDL is also available via the Internet at
+.\" http://www.illumos.org/license/CDDL.
+.\"
+.\"
+.\" Copyright 2020 Oxide Computer Company
+.\"
+.Dd August 28, 2021
+.Dt VIOBLK 4D
+.Os
+.Sh NAME
+.Nm vioblk
+.Nd virtio block device
+.Sh SYNOPSIS
+.Pa /dev/dsk/cXt0d0
+.Pa /dev/rdsk/cXt0d0
+.Sh DESCRIPTION
+The
+.Nm
+driver is a
+.Xr blkdev 4D
+based device that supports the virtio para-virtualization block device
+specification which is commonly used by many hypervisors and emulators.
+The device supports what the specification calls the more commonly found
+.Sq legacy
+interface for devices.
+.Pp
+The driver supports the following features, if offered by the device:
+.Bl -dash
+.It
+Volatile write-cache
+.It
+Discarding unused sectors
+.Pq ala TRIM, UNMAP
+.It
+Read-only device support
+.It
+Physical block sizes that are distinct from logical 512-byte blocks
+.It
+Synthesized disk geometry
+.El
+.Sh APPLICATION PROGRAMMING INTERFACE
+For each device instance, a
+.Xr blkdev 4D
+instance is created and treated as an independent controller with a
+single device, meaning that the
+.Em cX
+part of
+.Em cXt0d0
+will vary for each device.
+Because the driver leverages the
+.Xr blkdev 4D
+framework, most standard disk manipulation utilities will function such
+as
+.Xr diskinfo 8
+for discovering devices,
+.Xr format 8
+for manipulating partition tables,
+.Xr iostat 8
+for seeing device I/O statistics, and a subset of the
+.Xr dkio 4I
+ioctl requests to retrieve information about the device.
+.Sh ARCHITECTURE
+The
+.Nm
+driver is only supported on
+.Sy x86 .
+.Sh FILES
+.Bl -tag -width Pa
+.It Pa /dev/dsk/cXt0d0
+Block device minor node.
+.It Pa /dev/rdsk/cXt0d0
+Character device minor node.
+.It Pa /kernel/drv/amd64/vioblk
+x86 device driver.
+.El
+.Sh SEE ALSO
+.Xr blkdev 4D ,
+.Xr virtio 4D ,
+.Xr dkio 4I ,
+.Xr diskinfo 8
+.Rs
+.%T Virtual I/O Device (VIRTIO) Version 1.1
+.%D April, 2019
+.%U https://docs.oasis-open.org/virtio/virtio/v1.1/virtio-v1.1.html
+.Re
diff --git a/usr/src/man/man4d/vioif.4d b/usr/src/man/man4d/vioif.4d
new file mode 100644
index 0000000000..70ad0198ab
--- /dev/null
+++ b/usr/src/man/man4d/vioif.4d
@@ -0,0 +1,91 @@
+.\"
+.\" This file and its contents are supplied under the terms of the
+.\" Common Development and Distribution License ("CDDL"), version 1.0.
+.\" You may only use this file in accordance with the terms of version
+.\" 1.0 of the CDDL.
+.\"
+.\" A full copy of the text of the CDDL should have accompanied this
+.\" source. A copy of the CDDL is also available via the Internet at
+.\" http://www.illumos.org/license/CDDL.
+.\"
+.\"
+.\" Copyright 2020 Oxide Computer Company
+.\"
+.Dd October 3, 2020
+.Dt VIOIF 4D
+.Os
+.Sh NAME
+.Nm vioif
+.Nd Virtio Networking Driver
+.Sh SYNOPSIS
+.Pa /dev/net/vioif*
+.Sh DESCRIPTION
+The
+.Nm
+driver is a GLDv3 NIC driver that supports the virtio para-virtualization
+specification which is commonly used by many hypervisors and emulators.
+The device supports what the specification calls the more commonly found
+.Sq legacy
+interface for devices.
+.Pp
+The driver supports the following networking features, if offered by the
+device:
+.Bl -dash
+.It
+Jumbo frames up to 65535 bytes
+.It
+Transmit and receive TCP and UDP checksum offload
+.It
+IPv4 and IPv6 TCP segmentation offload
+.El
+.Sh APPLICATION PROGRAMMING INTERFACE
+For each supported device instance, which corresponds to a port, a
+character-special file is created.
+This device can be used with the Data Link Provider Interface
+.Pq DLPI
+through either
+.Xr libdlpi 3LIB
+or
+.Xr dlpi 4P .
+.Pp
+Each instance is assigned a unique ascending integer identifier starting
+from zero.
+The first instance in the system would be enumerated with the id 0 and
+be named
+.Sy vioif0
+and be found in the file system at
+.Pa /dev/net/vioif0 .
+.Sh CONFIGURATION
+The networking devices created by the
+.Nm
+driver can be controlled through
+.Xr dladm 8 .
+There is no
+.Xr driver.conf 5
+file for
+.Nm
+currently.
+.Sh ARCHITECTURE
+The
+.Nm
+driver is only supported on
+.Sy x86 .
+.Sh FILES
+.Bl -tag -width Pa
+.It Pa /dev/net/vioif*
+.Nm
+special character device.
+.It Pa /kernel/drv/amd64/vioif
+x86 device driver.
+.El
+.Sh SEE ALSO
+.Xr libdlpi 3LIB ,
+.Xr virtio 4D ,
+.Xr dlpi 4P ,
+.Xr dladm 8 ,
+.Xr mac 9E
+.Rs
+.%T Virtual I/O Device (VIRTIO) Version 1.1
+.%D April, 2019
+.%U https://docs.oasis-open.org/virtio/virtio/v1.1/virtio-v1.1.html
+.Re
diff --git a/usr/src/man/man4d/virtio.4d b/usr/src/man/man4d/virtio.4d
new file mode 100644
index 0000000000..4a424ba518
--- /dev/null
+++ b/usr/src/man/man4d/virtio.4d
@@ -0,0 +1,47 @@
+.\"
+.\" This file and its contents are supplied under the terms of the
+.\" Common Development and Distribution License ("CDDL"), version 1.0.
+.\" You may only use this file in accordance with the terms of version
+.\" 1.0 of the CDDL.
+.\"
+.\" A full copy of the text of the CDDL should have accompanied this
+.\" source. A copy of the CDDL is also available via the Internet at
+.\" http://www.illumos.org/license/CDDL.
+.\"
+.\"
+.\" Copyright 2020 Oxide Computer Company
+.\"
+.Dd October 3, 2020
+.Dt VIRTIO 4D
+.Os
+.Sh NAME
+.Nm virtio
+.Nd virtio framework driver
+.Sh DESCRIPTION
+The
+.Nm
+driver provides a framework for other device drivers that implement
+specific types of virtio devices
+.Pq network, block, etc. .
+The driver takes care of feature negotiation, virtqueue management,
+used and available rings, interrupts, and more.
+The driver provides support for both direct and indirect descriptors
+inside of virtqueues.
+.Sh ARCHITECTURE
+The
+.Nm
+driver is only supported on
+.Sy x86 .
+.Sh FILES
+.Bl -tag -width Pa
+.It Pa /kernel/drv/amd64/virtio
+x86 device driver.
+.El
+.Sh SEE ALSO
+.Xr vioblk 4D ,
+.Xr vioif 4D
+.Rs
+.%T Virtual I/O Device (VIRTIO) Version 1.1
+.%D April, 2019
+.%U https://docs.oasis-open.org/virtio/virtio/v1.1/virtio-v1.1.html
+.Re
diff --git a/usr/src/man/man4d/virtualkm.4d b/usr/src/man/man4d/virtualkm.4d
new file mode 100644
index 0000000000..42b65d5afd
--- /dev/null
+++ b/usr/src/man/man4d/virtualkm.4d
@@ -0,0 +1,286 @@
+'\" te
+.\" Copyright (c) 2007, Sun Microsystems All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH VIRTUALKM 4D "May 13, 2017"
+.SH NAME
+virtualkm \- Virtual keyboard and mouse
+.SH SYNOPSIS
+.LP
+.nf
+\fB/dev/kbd\fR
+.fi
+
+.LP
+.nf
+\fB/dev/mouse\fR
+.fi
+
+.LP
+.nf
+\fB#include <sys/types.h>\fR
+.fi
+
+.LP
+.nf
+\fB#include <sys/kbio.h>\fR
+.fi
+
+.LP
+.nf
+\fBint ioctl(int fildes, int command, ... /*arg*/);\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+A virtual keyboard or mouse is an abstraction of one or more physical keyboards
+or mice (USB or PS2) connected to a system. Input streams for these physical
+devices are coalesced into a single input stream and appear as a single device
+to the upper layers.
+.sp
+.LP
+\fB/dev/kbd\fR is the virtual keyboard device file. Inputs from multiple
+keyboards are coalesced into a single input stream, meaning that all keyboards
+appear as a single keyboard to a console or window system and accordingly, are
+treated as a single device. The virtual keyboard layout is consistent with the
+layout of the first keyboard plugged into the system. Note that on x86
+platforms, the virtual keyboard layout can be overloaded by \fBeeprom\fR(8).
+.sp
+.LP
+\fB/dev/mouse\fR is the virtual mouse device file. Inputs from multiple mice
+are coalesced into a single input stream, meaning that all mice appear as
+single mouse to the window system.
+.sp
+.LP
+Commands from applications are dispatched by the virtual keyboard/mouse
+facility to the underlying physical devices and will succeed provided that one
+of the underlying devices responds with success. For example, a single command
+issued to turn on LED's will turn on corresponding LED's for all underlying
+physical keyboards.
+.sp
+.LP
+Although physical keyboards/mice are linked to the virtual keyboard/mouse
+facility, each may be opened separately by accessing its associated device
+file. (For example, \fB/dev/usb/hid0\fR for a usb mouse). Directly accessing a
+device file can be useful for multi-seat or similar purposes.
+.sp
+.LP
+When a single physical device is opened via its associated device file, it is
+automatically removed from the single virtual input stream. When closed, it is
+automatically re- coalesced into the single virtual input stream.
+.sp
+.LP
+Under the \fBvirtualkm\fR facility, the PS/2 mouse is coalesced into a virtual
+mouse single input stream and can be accessed using the \fB/dev/mouse\fR file.
+(Note that in previous releases, the PS/2 mouse was accessed via the
+\fB/dev/kdmouse\fR physical device file). In the current release, you use the
+\fB/dev/kdmouse\fR file to directly access the physical PS/2 mouse.
+.SS "INTERFACES"
+.LP
+The virtual mouse provides the following event ID's for mouse capability
+changes:
+.sp
+.ne 2
+.na
+\fBMOUSE_CAP_CHANGE_NUM_BUT\fR
+.ad
+.RS 30n
+This event is reported when the total number of mouse buttons changes. The
+\fBFirm_event.value\fR is set to the new button total, which is the maximum
+number of all mice buttons. Other fields are ignored.
+.RE
+
+.sp
+.ne 2
+.na
+\fBMOUSE_CAP_CHANGE_NUM_WHEEL\fR
+.ad
+.RS 30n
+This event is reported when the total number of mouse wheels changes. The
+\fBFirm_event.value\fR is set to the new wheel total. Other fields are ignored.
+The event value (\fBFirm_event.value\fR) can be 0 (no wheel), 1 (vertical
+wheel), or 2 (vertical and horizontal wheel).
+.RE
+
+.sp
+.LP
+The \fBFirm_event\fR structure is described in <\fBsys/vuid_event.h\fR>. As
+with other events, firm events are received using \fBread\fR(2).
+.sp
+.LP
+Event ID's are used by applications (including certain mouse demo applications)
+that are programmed to graphically represent the actual number of buttons and
+wheels on a mouse. When an application of this type receives a \fBFirm_event\fR
+with a ID MOUSE_CAP_CHANGE_NUM_BUT or MOUSE_CAP_CHANGE_NUM_WHEEL event, it is
+instructed to update its state information using the new value. Consider, for
+example, a mouse demo application whose sole function is to display a mouse
+with buttons that graphically correspond to the actual number of buttons on the
+mouse. If, for example, the system has a single two-button USB mouse attached,
+the application, by default, will graphically display the mouse with a left and
+a right button. However, if a another three-button USB mouse is hot-plugged
+into the system, a MOUSE_CAP_CHANGE_NUM_BUT Firm event with
+\fBFirm_event.value\fR of three instructs the demo application to update the
+mouse display to indicate three buttons.
+.SH IOCTLS
+.ne 2
+.na
+\fBKIOCSETFREQ\fR
+.ad
+.RS 15n
+Sets the frequency for either keyboard beeper or console beeper. To set the
+corresponding beeper frequency, \fIarg\fR must point to a \fBfreq_request\fR
+structure:
+.sp
+.in +2
+.nf
+struct freq_request {
+ enum fr_beep_type type; /* beep type */
+ int16_t freq; /* frequency */
+};
+.fi
+.in -2
+
+Where \fItype\fR is the corresponding beeper type defined as:
+.sp
+.in +2
+.nf
+enum fr_beep_type { CONSOLE_BEEP =1, KBD_BEEP =2 };
+.fi
+.in -2
+
+and \fIfreq\fR is the frequency value to be set as the beeper frequency
+indicated by \fItype\fR. This value should be between 0 and 32767 with border
+inclusive.
+.RE
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/dev/kbd\fR\fR
+.ad
+.RS 18n
+Virtual Keyboard device file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/mouse\fR\fR
+.ad
+.RS 18n
+Virtual Mouse device file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/kdmouse\fR\fR
+.ad
+.RS 18n
+Physical PS/2 mouse device file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/usb/hid*\fR\fR
+.ad
+.RS 18n
+Physical USB keyboard/mouse device file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/dacf.conf\fR\fR
+.ad
+.RS 18n
+Device auto-configuration file.
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+l l
+l l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+Architecture SPARC, x86
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.LP
+.BR kbd (1),
+.BR read (2),
+.BR hid (4D),
+.BR usba (4D),
+.BR kb (4M),
+.BR usbkbm (4M),
+.BR usbms (4M),
+.BR vuidmice (4M),
+.BR attributes (7),
+.BR eeprom (8)
+.SH DIAGNOSTICS
+.LP
+The messages described below may appear on the system console as well as
+being logged. All messages are formatted in the following manner:
+.sp
+.in +2
+.nf
+WARNING: Error message...
+.fi
+.in -2
+.sp
+
+.sp
+.ne 2
+.na
+\fBconskbd: keyboard is not available for system debugging:
+\fIdevice_path\fR.\fR
+.ad
+.sp .6
+.RS 4n
+Errors were encountered while entering kmdb during initialization for debugger
+mode. As a result, the keyboard is not available.
+.RE
+
+.sp
+.ne 2
+.na
+\fBconskbd: keyboard is not available: <\fIdevice_path\fR>\fR
+.ad
+.sp .6
+.RS 4n
+Errors were encountered while exiting kmdb during un-initialization for
+debugger mode. As a result, the keyboard is not available.
+.RE
+
+.sp
+.ne 2
+.na
+\fBFailed to relink the mouse <\fR\fIdevice_path\fR\fB> underneath virtual mouse\fR
+.ad
+.sp .6
+.RS 4n
+An error was encountered and the mouse is unavailable. (When a mouse is
+physically opened via a physical device file such as \fB/dev/usb/hid0\fR, it is
+removed from the single virtual input stream (\fB/dev/mouse\fR). When closed,
+it is re-coalesced into a single virtual input stream beneath \fB/dev/mouse\fR.
+If an error is encountered, (for example, the mouse has been physically
+removed), it is unavailable beneath \fB/dev/mouse\fR.
+.RE
+
+.SH NOTES
+.LP
+Currently, the \fBvirtualkm\fR device supports only USB and PS2 keyboards and
+mice.
+.sp
+.LP
+The \fBvirtualkm\fR device maintains complete compatibility on select legacy
+systems, (including Ultra 10's), that are equipped with serial keyboard/mouse.
diff --git a/usr/src/man/man4d/vnd.4d b/usr/src/man/man4d/vnd.4d
new file mode 100644
index 0000000000..e80a991d5c
--- /dev/null
+++ b/usr/src/man/man4d/vnd.4d
@@ -0,0 +1,118 @@
+'\" te
+.\"
+.\" This file and its contents are supplied under the terms of the
+.\" Common Development and Distribution License ("CDDL"), version 1.0.
+.\" You may only use this file in accordance with the terms of version
+.\" 1.0 of the CDDL.
+.\"
+.\" A full copy of the text of the CDDL should have accompanied this
+.\" source. A copy of the CDDL is also available via the Internet at
+.\" http://www.illumos.org/license/CDDL.
+.\"
+.\"
+.\" Copyright (c) 2014, Joyent, Inc. All rights reserved.
+.\"
+.TH VND 4D "Feb 11, 2014"
+.SH NAME
+vnd \- virtual layer two network driver
+
+.SH SYNOPSIS
+.nf
+.LP
+/dev/vnd/ctl
+.LP
+/dev/vnd/*
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The vnd driver provides support for a layer two datapath in an
+analogous way that IP(4P) provides a support for an IP-based layer
+three datapath. Both devices operate exclusively on datalinks. A
+datalink that has been plumbed up with IP via ifconfig(1M) or
+ipadm(1M) cannot be used with vnd or vice-versa.
+.sp
+.LP
+The vnd driver supports and takes advantage of the the following
+illumos features:
+.RS
+.sp
+.LP
+Supports dld/dls feature negotation of GLDv3 features, such
+as direct calls, flow control, checksum offloading, and more.
+.sp
+.LP
+All IP and IPv6 based traffic is sent through ipfilter(7),
+allowing packet filtering.
+.sp
+.LP
+Better control over vectored reads and writes in a frame-centric manner
+through framed I/O. See libvnd(3LIB) for more information on these
+interfaces.
+.RE
+.sp
+.LP
+The vnd driver exposes two different kinds of device nodes. The first is
+a self-cloning control node which can be used to create vnd devices on
+top of datalinks. Those devices can optionally be bound into the file
+system namespace under /dev/vnd. Control operations on the control node
+or named devices are private to the implementation. Instead,
+libvnd(3LIB) provides a stable interfaces for using, creating, and
+manipulating vnd devices.
+.sp
+.SH FILES
+.sp
+.ne 2
+.na
+/dev/vnd/ctl
+.ad
+.RS 16n
+vnd self-cloning control node
+.RE
+
+.sp
+.ne 2
+.na
+/dev/vnd/%link
+.ad
+.RS 16n
+Character device that corresponds to the vnd device of the given
+name (%link). A given device will appear for each actively linked device
+in the current zone.
+.RE
+
+.sp
+.ne 2
+.na
+/dev/vnd/zone/%zone/%link
+.ad
+.RS 16n
+These are character devices that correspond to the vnd device of
+the given name (%link). They are organized based on the zone that they
+appear in. Thus if a zone named foo has a vnd device named
+bar, then the global zone will have the file
+/dev/vnd/zone/foo/bar. Note, these only occur in the global zone.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See attributes(5) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+libvnd(3LIB), ipfilter(7), vndstat(8), dladm(8), vndadm(8),
+
diff --git a/usr/src/man/man4d/vni.4d b/usr/src/man/man4d/vni.4d
new file mode 100644
index 0000000000..99737a3158
--- /dev/null
+++ b/usr/src/man/man4d/vni.4d
@@ -0,0 +1,64 @@
+'\" te
+.\" Copyright (c) 2004 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH VNI 4D "Jul 18, 2004"
+.SH NAME
+vni \- STREAMS virtual network interface driver
+.SH DESCRIPTION
+.sp
+.LP
+The \fBvni\fR pseudo device is a multi-threaded, loadable, clonable, STREAMS
+pseudo-device supporting the connectionless Data Link Provider Interface
+\fBdlpi\fR(4P) Style 2. Note that DLPI is intended to interact with IP, meaning
+that DLPI access to applications is not supported. (For example, snoop fails on
+the \fBvni\fR interface.)
+.sp
+.LP
+The \fBvni\fR device is a software-only interface and does not send or receive
+data. The device provides a DLPI upper interface that identifies itself to IP
+with a private media type. It can be configured via \fBifconfig\fR(8) and can
+have IP addresses assigned to it, making aliases possible.
+.sp
+.LP
+The \fBvni\fR pseudo device is particularly useful in hosting an IP address
+when used in conjunction with the 'usesrc' \fBifconfig\fR option (see
+\fBifconfig\fR(8) for examples). The logical instances of the device can also
+be used to host addresses as an alternative to hosting them over the loopback
+interface.
+.sp
+.LP
+Multicast is not supported on this device. More specifically, the following
+options return an error when used with an address specified on \fBvni\fR:
+IP_MULTICAST_IF, IP_ADD_MEMBERSHIP, IP_DROP_MEMBERSHIP, IPV6_MULTICAST_IF,
+IPV6_JOIN_GROUP, IPV6_LEAVE_GROUP. In addition, broadcast is not supported.
+.sp
+.LP
+Because there is no physical hardware configured below it, no traffic can be
+received through nor transmitted on a virtual interface. All packet
+transmission and reception is accomplished with existing physical interfaces
+and tunnels. Because applications that deal with packet transmission and
+reception (such as packet filters) cannot filter traffic on virtual interfaces,
+you cannot set up a packet filter on a virtual interface. Instead, you should
+configure the policy rules to apply to the physical interfaces and tunnels, and
+if necessary, use the virtual IP addresses themselves as part of the rule
+configuration. Also, note that the virtual interface cannot be part of an IP
+multipathing (IPMP) group.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/dev/vni\fR\fR
+.ad
+.RS 12n
+64-bit ELF kernel driver
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR ip (4P),
+.BR ip6 (4P),
+.BR ifconfig (8),
+.BR in.mpathd (8)
diff --git a/usr/src/man/man4d/vr.4d b/usr/src/man/man4d/vr.4d
new file mode 100644
index 0000000000..791f80cc5e
--- /dev/null
+++ b/usr/src/man/man4d/vr.4d
@@ -0,0 +1,142 @@
+'\" te
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH VR 4D "May 5, 2009"
+.SH NAME
+vr \- driver for VIA Rhine fast Ethernet controllers
+.SH DESCRIPTION
+.sp
+.LP
+The \fBvr\fR Fast Ethernet driver is GLD based and supporting the VIA Rhine
+family of Fast Ethernet adapters:
+.sp
+.in +2
+.nf
+pci1106,3043 VIA VT86C100A Fast Ethernet
+pci1106,3065 VT6102 VIA Rhine II
+pci1106,3106 VT6105 VIA Rhine III
+pci1106,3053 VT6105 VIA Rhine III Management Adapter
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The \fBvr\fR driver supports IEEE 802.3 auto-negotiation, flow control and VLAN
+tagging.
+.SS "Configuration"
+.sp
+.LP
+The default configuration is \fBautonegotiation\fR with bidirectional flow
+control. The advertised capabilities for \fBautonegotiation\fR are based on the
+capabilities of the PHY.
+.sp
+.LP
+You can set the capabilities advertised by the \fBvr\fR controlled device using
+\fBdladm\fR(8). The driver supports a number of parameters, the names of which
+begin with \fBen_\fR (enabled). Each of these boolean parameters determines if
+the device advertises that mode of operation when the hardware supports it.
+.sp
+.LP
+The \fBadv_autoneg_cap\fR parameter controls whether auto-negotiation is
+performed. If \fBadv_autoneg_cap\fR is 0, the driver selects the speed/duplex
+combination from the first non-zero parameter from this list:
+.sp
+.in +2
+.nf
+en_100fdx_cap 100Mbps full duplex
+en_100hdx_cap 100Mbps half duplex
+en_10fdx_cap 10Mbps full duplex
+en_10hdx_cap 10Mbps half duplex
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+All capabilities default to enabled. Changing any capability parameter causes
+the link to go down while the link partners renegotiate the link using the
+newly changed capabilities.
+.SS "Limitations"
+.sp
+.LP
+The \fBvr\fR driver does not support asymmetric \fBflowcontrol\fR. VT86C100A
+and Rhine II adapters are not capable of transmitting \fBflowcontrol\fR
+messages
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/dev/vr\fR\fR
+.ad
+.RS 26n
+Special character device
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/vr\fR\fR
+.ad
+.RS 26n
+32-bit device driver (x86)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/sparcv9/vr\fR\fR
+.ad
+.RS 26n
+64-bit device driver (SPARC)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/vr\fR\fR
+.ad
+.RS 26n
+64-bit device driver (x86)
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for a description of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+l | l
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture SPARC, x86
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR streamio (4I),
+.BR dlpi (4P),
+.BR driver.conf (5),
+.BR attributes (7),
+.BR ieee802.3 (7),
+.BR dladm (8),
+.BR netstat (8)
+.sp
+.LP
+\fIWriting Device Drivers\fR
+.sp
+.LP
+\fISTREAMS Programmer's Guide\fR
+.sp
+.LP
+\fINetwork Interfaces Programmer's Guide\fR
+.sp
+.LP
+\fIIEEE 802.3ae Specification - 2002\fR
diff --git a/usr/src/man/man4d/wpi.4d b/usr/src/man/man4d/wpi.4d
new file mode 100644
index 0000000000..e581547f3f
--- /dev/null
+++ b/usr/src/man/man4d/wpi.4d
@@ -0,0 +1,85 @@
+'\" te
+.\" Copyright (c) 2006 Damien Bergamini
+.\" Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 3. Neither the name of the author nor the names of any co-contributors may be used to endorse
+.\" or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER AND CONTRIBUTORS ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+.\" A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+.\" OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE
+.\" Portions Copyright (c) 2007 by Sun Microsystems, Inc. All Rights Reserved.
+.TH WPI 4D "Apr 23, 2007"
+.SH NAME
+wpi \- Intel Pro Wireless 802.11a/b/g 3945 driver
+.SH DESCRIPTION
+.sp
+.LP
+The \fBwpi\fR \fI802.11b/g\fR wireless NIC driver is a multi-threaded,
+loadable, clonable, GLDv3-based STREAMS driver supporting the Intel Pro
+Wireless 3945ABG chipset-based NIC's.
+.SH CONFIGURATION
+.sp
+.LP
+The \fBwpi\fR driver performs auto-negotiation to determine the data rate and
+mode. Supported \fI802.11b\fR data rates are 1, 2, 5.5 and 11 Mbits/sec.
+Supported \fI802.11g\fR data rates are 1, 2, 5.5, 11, 6, 9, 12, 18, 24, 36, 48
+and 54 Mbits/sec.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/dev/wpi\fR\fR
+.ad
+.sp .6
+.RS 4n
+Special character device.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/wpi\fR\fR
+.ad
+.sp .6
+.RS 4n
+32-bit \fBELF\fR kernel module (x86).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/wpi\fR\fR
+.ad
+.sp .6
+.RS 4n
+64-bit \fBELF\fR kernel module (x86).
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture x86
+_
+Interface Stability Committed
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR gld (4D),
+.BR dlpi (4P),
+.BR attributes (7),
+.BR dladm (8),
+.BR wificonfig (8)
+.sp
+.LP
+\fI802.11 \(em Wireless LAN Media Access Control and Physical Layer
+Specification\fR \(em IEEE, 2001
diff --git a/usr/src/man/man4d/wscons.4d b/usr/src/man/man4d/wscons.4d
new file mode 100644
index 0000000000..16a42dc109
--- /dev/null
+++ b/usr/src/man/man4d/wscons.4d
@@ -0,0 +1,1044 @@
+'\" te
+.\" Copyright (c) 2006 Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 2021 Peter Tribble.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH WSCONS 4D "August 29, 2021"
+.SH NAME
+wscons \- workstation console
+.SH SYNOPSIS
+.nf
+\fB#include <sys/strredir.h>\fR
+.fi
+
+.LP
+.nf
+\fBioctl\fR(\fIfd\fR, SRIOCSREDIR, \fItarget\fR);
+.fi
+
+.LP
+.nf
+\fBioctl\fR(\fIfd\fR, SRIOCISREDIR, \fItarget\fR);
+.fi
+
+.SH DESCRIPTION
+The \fBwscons\fR workstation console consists of a workstation keyboard and
+frame buffer that act together to emulate an \fBASCII\fR terminal. It includes
+a redirection facility that allows I/O issued to the workstation console to be
+diverted to a STREAMS device, enabling window systems to redirect output that
+would otherwise appear directly on the frame buffer in corrupted form.
+.SS "Redirection"
+The \fBwscons\fR redirection facility maintains a list of devices that are
+designated as redirection targets through the \fBSRIOCSREDIR\fR ioctl described
+below. Only the current entry is active; when the active entry is closed, the
+most recent remaining entry becomes active. The active entry acts as a proxy
+for the device being redirected and handles all \fBread\fR(2), \fBwrite\fR(2),
+\fBioctl\fR(2), and \fBpoll\fR(2) calls issued against the redirectee.
+.sp
+.LP
+The ioctls described below control the redirection facility. In both cases,
+\fIfd\fR is a descriptor for the device being redirected (or workstation
+console) and \fItarget\fR is a descriptor for a STREAMS device.
+.sp
+.ne 2
+.na
+\fB\fBSRIOCSREDIR\fR\fR
+.ad
+.RS 16n
+Designates \fItarget\fR as the source and destination of I/O ostensibly
+directed to the device denoted by \fIfd\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSRIOCISREDIR\fR\fR
+.ad
+.RS 16n
+Returns 1 if \fItarget\fR names the device currently acting as proxy for the
+device denoted by \fIfd\fR, and 0 if it is not.
+.RE
+
+.SS "ANSI Standard Terminal Emulation"
+The Solaris kernel terminal emulator provides ANSI X3.64 emulation both on
+SPARC and x86 systems.
+.sp
+.LP
+On SPARC systems, the PROM monitor is used to emulate an ANSI X3.64 terminal
+if the kernel terminal emulator is not available for emulation. See
+\fBvisual_io\fR(4I) for more details.
+.sp
+.LP
+Note: The \fBVT100\fR adheres the \fBANSI\fR X3.64 standard. However, because
+the \fBVT100\fR features nonstandard extensions to \fBANSI\fR X3.64, it is
+incompatible with Sun terminal emulators.
+.sp
+.LP
+The SPARC console displays 34 lines of 80 ASCII characters per line. The x86
+console displays 25 lines of 80 ASCII characters per line. Devices with
+smaller text capacities may display less. On SPARC systems, the \fBscreen-#rows
+screen-#columns\fR should be set to 34 or 80 respectively or text capacities
+will vary from those described above. On SPARC systems, the \fBscreen-#rows and
+screen-#columns\fR fields are stored in \fBNVRAM/EEPROM\fR. See
+\fBeeprom\fR(8) for more information. Both SPARC and x86 consoles offer
+scrolling, (x, y) cursor addressing ability and a number of other control
+functions.
+.sp
+.LP
+The console cursor marks the current line and character position on the screen.
+\fBASCII\fR characters between \fB0x20 \fR(space) and \fB0x7E\fR (tilde)
+inclusive are printing characters. When a print character is written to the
+console (and is not part of an escape sequence), it is displayed at the current
+cursor position and the cursor moves one position to the right on the current
+line.
+.sp
+.LP
+On SPARC based systems, later \fBPROM\fR revisions have the full 8-bit ISO
+Latin-1 (\fIISO 8859-1\fR) character set. Earlier \fBPROM\fR revisions display
+characters in the range \fB0xA0 \fRthrough \fB0xFE \fRas spaces.
+.sp
+.LP
+When the cursor is at the right edge of the screen, it moves to the first
+character position on the next line. When the cursor is at the screen's
+right-bottom edge, the line-feed function is performed (see \fBCTRL-J\fR
+below). The line-feed function scrolls the screen up by one or more lines
+before moving the cursor to the first character position on the next line.
+.SS "Control Sequence Syntax"
+The \fBwscons\fR console defines a number of control sequences that may occur
+during input. When a control sequence is written to the console, it affects
+one of the control functions described below. Control sequences are not
+displayed on screen.
+.sp
+.LP
+A number of control sequences (or control character functions) are of the form:
+.sp
+.LP
+\fBCTRL-\fR\fIx\fR
+.sp
+.LP
+where \fIx\fR represents a single character, such as \fBCNTRL-J\fR for a line
+feed.
+.sp
+.LP
+Other \fBANSI\fR control sequences are of the form:
+.sp
+.in +2
+.nf
+ESC [ \fIparams char\fR
+.fi
+.in -2
+
+.LP
+Note -
+.sp
+.RS 2
+Spaces are included only for readability; these characters must occur in the
+given sequence without the intervening spaces.
+.RE
+.sp
+.ne 2
+.na
+\fBESC\fR
+.ad
+.RS 10n
+\fBASCII\fR escape character (\fBESC, CTRL-[, 0x1B\fR).
+.RE
+
+.sp
+.ne 2
+.na
+\fB[\fR
+.ad
+.RS 10n
+Left square bracket `[' (\fB0x5B)\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIparams\fR\fR
+.ad
+.RS 10n
+Sequence of zero or more decimal numbers made up of digits between 0 and 9,
+separated by semicolons. Parameters are represented by \fIn\fR in the syntax
+descriptions for escape sequence functions.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIchar\fR\fR
+.ad
+.RS 10n
+Function character, which is different for each control sequence and it
+represented by \fIx\fR in the syntax descriptions for control character
+functions.
+.RE
+
+.sp
+.LP
+In the following examples of syntactically valid escape sequences, \fBESC
+\fRrepresent the single \fBASCII\fR character, Escape:
+.sp
+.ne 2
+.na
+\fBESC[m\fR
+.ad
+.RS 22n
+Select graphic rendition with default parameter
+.RE
+
+.sp
+.ne 2
+.na
+\fBESC[7m\fR
+.ad
+.RS 22n
+Select graphic rendition with reverse image
+.RE
+
+.sp
+.ne 2
+.na
+\fBESC[33;54H\fR
+.ad
+.RS 22n
+Set cursor position
+.RE
+
+.sp
+.ne 2
+.na
+\fBESC[123;456;0;;3;B\fR
+.ad
+.RS 22n
+Move cursor down
+.RE
+
+.sp
+.LP
+Syntactically valid control characters and \fBANSI\fR escape sequences that are
+not currently interpreted by the console are ignored.
+.sp
+.LP
+Each control function requires a specified number of parameters. If fewer
+parameters are supplied, the remaining parameters (with certain exceptions
+noted below) default to 1. If more parameters are supplied, the first \fIn\fR
+parameters are used by kernel terminal emulator. In contrast, only the last
+\fIn\fR parameters are used by PROM based emulator, where \fIn\fR is the number
+required by that particular command character.
+.sp
+.LP
+Parameters which are omitted or set to 0 are reset to the default value of 1
+(with certain exceptions). For example, the command character \fBM\fR requires
+one parameter. \fBESC[;M\fR, \fBESC[0M\fR, \fBESC[M\fR and
+\fBESC[23;15;32;1M\fR are all equivalent to \fBESC[1M\fR and provide a
+parameter value of 1. Note that \fBESC[;5M\fR (interpreted as \fB`ESC[5M\fR')
+is \fInot\fR equivalent to \fBESC[5;M\fR (interpreted as `\fBESC[5;1M\fR')
+which is ultimately interpreted as `\fBESC[1M\fR').
+.SS "ANSI Control Functions"
+The following paragraphs specify the \fBANSI\fR control functions implemented
+by the console. Each description provides:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Control sequence syntax
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Hexadecimal equivalent of control characters where applicable
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Control function name and \fBANSI\fR or Sun abbreviation (if any).
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Description of parameters required, if any
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Description of the control function
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Initial setting of the mode for functions that set a mode. To restore the
+initial settings, use the \fBSUNRESET\fR escape sequence.
+.RE
+.SS "Control Character Functions"
+The \fBwscons \fRcontrol character functions are:
+.sp
+.ne 2
+.na
+\fBBell (BEL),\fR
+.ad
+.br
+.na
+\fBCTRL-G\fR
+.ad
+.br
+.na
+\fB0x7\fR
+.ad
+.RS 22n
+Used for consoles that are not equipped with an audible bell. Current Sun
+workstation models also flash the screen if the keyboard is not the console
+input device.
+.RE
+
+.sp
+.ne 2
+.na
+\fBBackspace (BS),\fR
+.ad
+.br
+.na
+\fBCTRL-H,\fR
+.ad
+.br
+.na
+\fB0x8\fR
+.ad
+.RS 22n
+The cursor moves one position to the left on the current line. If it is
+already at the left edge of the screen, no change takes place.
+.RE
+
+.sp
+.ne 2
+.na
+\fBTab (TAB),\fR
+.ad
+.br
+.na
+\fBCTRL-I,\fR
+.ad
+.br
+.na
+\fB0x9\fR
+.ad
+.RS 22n
+The cursor moves right on the current line to the next tab stop. The tab stops
+are fixed at every multiple of eight columns. If the cursor is already at the
+right edge of the screen, nothing change takes place. Otherwise, the cursor
+moves right a minimum of one and a maximum of eight character positions.
+.RE
+
+.sp
+.ne 2
+.na
+\fBLine-feed (LF),\fR
+.ad
+.br
+.na
+\fBCTRL-J,\fR
+.ad
+.br
+.na
+\fB0xA\fR
+.ad
+.RS 22n
+The cursor, while remaining at the same character position on the line, moves
+down one line. If the cursor is at the bottom line, the screen either scrolls
+up or wraps around depending on the setting of an internal variable \fIn\fR
+(initially 1) . The internal variable can be changed using the \fBESC[r\fR
+control sequence. If \fIn\fR is greater than zero, the entire screen
+(including the cursor) is scrolled up by \fIn\fR lines before executing the
+line-feed. The top \fIn\fR lines scroll off the screen and are lost. New blank
+lines \fIn\fR scroll onto the bottom of the screen. After scrolling, move the
+cursor down one line to execute the line feed.
+.sp
+If \fIn\fR is zero, wrap-around mode is entered. The \fBESC [ 1 r\fR exits back
+to scroll mode. If a line-feed occurs on the bottom line in wrap mode, the
+cursor goes to the same character position in the top line of the screen.
+During line-feeds, the line that the cursor moves to is cleared and no
+scrolling occurs. Wrap-around mode is not implemented in the window system.
+.sp
+On SPARC based systems, the speed at which the screen scrolls is dependent on
+the amount of data waiting to be printed. Whenever a scroll occurs and the
+console is in normal scroll mode (\fBESC [ 1 r\fR), it scans the rest of the
+data awaiting printing to see how many line-feeds occur in it. This scan stops
+when the console finds a control character from the set {\fBVT\fR, \fBFF\fR,
+\fBSO\fR, \fBSI\fR, \fBDLE\fR, \fBDC1\fR, \fBDC2\fR, \fBDC3\fR, \fBDC4\fR,
+\fBNAK\fR, \fBSYN\fR, \fBETB\fR, \fBCAN\fR, \fBEM\fR, \fBSUB\fR, \fBESC\fR,
+\fBFS\fR, \fBGS\fR, \fBRS\fR, \fBUS\fR} . At that point, the screen is
+scrolled by \fIn\fR lines (\fIn\fR \(>= 1) and processing continues. The
+scanned text is processed normally and fills in the newly created lines. As
+long as escape codes or other control characters are not intermixed with the
+text, this results in faster scrolling
+.RE
+
+.sp
+.ne 2
+.na
+\fBReverse Line-feed,\fR
+.ad
+.br
+.na
+\fBCTRL-K,\fR
+.ad
+.br
+.na
+\fB0xB\fR
+.ad
+.RS 22n
+With kernel terminal emulator (while remaining at the same character position
+on the line), the cursor moves down one line. However, with PROM based
+emulator (while remaining at the same character position on the line), the
+cursor moves up one line. If the cursor is already at the top line, no
+change takes place.
+.RE
+
+.sp
+.ne 2
+.na
+\fBForm-feed (FF)\fR
+.ad
+.br
+.na
+\fBCTRL-L,\fR
+.ad
+.br
+.na
+\fB0xC\fR
+.ad
+.RS 22n
+The cursor is positioned to the home position (upper-left corner) and the
+entire screen is cleared.
+.RE
+
+.sp
+.ne 2
+.na
+\fBReturn (CR),\fR
+.ad
+.br
+.na
+\fBCTRL-M,\fR
+.ad
+.br
+.na
+\fB0xD\fR
+.ad
+.RS 22n
+The cursor moves to the leftmost character position on the current line.
+.RE
+
+.SS "Escape Sequence Functions"
+The \fBwscons \fRescape sequence functions are:
+.sp
+.ne 2
+.na
+\fBEscape (ESC),\fR
+.ad
+.br
+.na
+\fBCTRL-[,\fR
+.ad
+.br
+.na
+\fB0x1B\fR
+.ad
+.sp .6
+.RS 4n
+The escape character. Escape initiates a multi-character control sequence.
+.RE
+
+.sp
+.ne 2
+.na
+\fBInsert Character (ICH)\fR
+.ad
+.br
+.na
+\fBESC[#@\fR
+.ad
+.sp .6
+.RS 4n
+Takes one parameter, \fIn\fR (default 1). Inserts \fIn\fR spaces at the
+current cursor position. The current line, starting at the current cursor
+position inclusive, is shifted to the right by \fIn\fR character positions to
+make room for the spaces. The rightmost \fIn\fR character positions shift off
+the line and are lost. The position of the cursor is unchanged.
+.RE
+
+.sp
+.ne 2
+.na
+\fBCursor Up (CUU),\fR
+.ad
+.br
+.na
+\fBESC[#A\fR
+.ad
+.sp .6
+.RS 4n
+Takes one parameter, \fIn\fR (default 1). Moves the cursor up \fIn\fR lines.
+If the cursor is fewer than \fIn\fR lines from the top of the screen, moves
+the cursor to the topmost line on the screen. The character position of the
+cursor on the line is unchanged.
+.RE
+
+.sp
+.ne 2
+.na
+\fBCursor Down (CUD),\fR
+.ad
+.br
+.na
+\fBESC[#B\fR
+.ad
+.sp .6
+.RS 4n
+Takes one parameter, (default 1). Moves the cursor down \fIn\fR lines. If
+the cursor is fewer than \fIn\fR lines from the bottom of the screen, move the
+cursor to the last line on the screen. The character position of the cursor on
+the line is unchanged.
+.RE
+
+.sp
+.ne 2
+.na
+\fBCursor Forward (CUF),\fR
+.ad
+.br
+.na
+\fBESC[#C\fR
+.ad
+.sp .6
+.RS 4n
+Takes one parameter, \fIn\fR (default 1). Moves the cursor to the right by
+\fIn\fR character positions on the current line. If the cursor is fewer than
+\fIn\fR positions from the right edge of the screen, moves the cursor to the
+rightmost position on the current line.
+.RE
+
+.sp
+.ne 2
+.na
+\fBCursor Backward (CUB),\fR
+.ad
+.br
+.na
+\fBESC[#D\fR
+.ad
+.sp .6
+.RS 4n
+Takes one parameter, \fIn\fR (default 1). Moves the cursor to the left by
+\fIn\fR character positions on the current line. If the cursor is fewer than
+\fIn\fR positions from the left edge of the screen, moves the cursor to the
+leftmost position on the current line.
+.RE
+
+.sp
+.ne 2
+.na
+\fBCursor Next Line (CNL),\fR
+.ad
+.br
+.na
+\fBESC[#E\fR
+.ad
+.sp .6
+.RS 4n
+Takes one parameter, \fIn\fR (default 1). Positions the cursor at the
+leftmost character position on the \fIn\fR-th line below the current line. If
+the current line is less than \fIn\fR lines from the bottom of the screen,
+positions the cursor at the leftmost character position on the bottom line.
+.RE
+
+.sp
+.ne 2
+.na
+\fBHorizontal and Vertical Position (HVP),\fR
+.ad
+.br
+.na
+\fBESC[#1;#2f\fR
+.ad
+.sp .6
+.RS 4n
+or
+.RE
+
+.sp
+.ne 2
+.na
+\fBCursor Position (CUP),\fR
+.ad
+.br
+.na
+\fBESC[#1;#2H\fR
+.ad
+.sp .6
+.RS 4n
+Takes two parameters, \fIn\fR1 and \fIn\fR2 (default 1, 1). Moves the cursor
+to the \fIn\fR2-th character position on the \fIn\fR1-th line. Character
+positions are numbered from 1 at the left edge of the screen; line positions
+are numbered from 1 at the top of the screen. Hence, if both parameters are
+omitted, the default action moves the cursor to the home position (upper left
+corner). If only one parameter is supplied, the cursor moves to column 1 of
+the specified line.
+.RE
+
+.sp
+.ne 2
+.na
+\fBErase in Display (ED),\fR
+.ad
+.br
+.na
+\fBESC[J\fR
+.ad
+.sp .6
+.RS 4n
+Takes no parameters. Erases from the current cursor position inclusive to the
+end of the screen, that is, to the end of the current line and all lines below
+the current line. The cursor position is unchanged.
+.RE
+
+.sp
+.ne 2
+.na
+\fBErase in Line (EL),\fR
+.ad
+.br
+.na
+\fBESC[K\fR
+.ad
+.sp .6
+.RS 4n
+Takes no parameters. Erases from the current cursor position inclusive to the
+end of the current line. The cursor position is unchanged.
+.RE
+
+.sp
+.ne 2
+.na
+\fBInsert Line (IL),\fR
+.ad
+.br
+.na
+\fBESC[#L\fR
+.ad
+.sp .6
+.RS 4n
+Takes one parameter, \fIn\fR (default 1). Makes room for \fIn\fR new lines
+starting at the current line by scrolling down by \fIn\fR lines the portion of
+the screen from the current line inclusive to the bottom. The \fIn\fR new
+lines at the cursor are filled with spaces; the bottom \fIn\fR lines shift off
+the bottom of the screen and are lost. The position of the cursor on the
+screen is unchanged.
+.RE
+
+.sp
+.ne 2
+.na
+\fBDelete Line (DL),\fR
+.ad
+.br
+.na
+\fBESC[#M\fR
+.ad
+.sp .6
+.RS 4n
+Takes one parameter, \fIn\fR (default 1). Deletes \fIn\fR lines beginning
+with the current line. The portion of the screen from the current line
+inclusive to the bottom is scrolled upward by \fIn\fR lines. The \fIn\fR new
+lines scrolling onto the bottom of the screen are filled with spaces; the
+\fIn\fR old lines beginning at the cursor line are deleted. The position of
+the cursor on the screen is unchanged.
+.RE
+
+.sp
+.ne 2
+.na
+\fBDelete Character (DCH),\fR
+.ad
+.br
+.na
+\fBESC[#P\fR
+.ad
+.sp .6
+.RS 4n
+Takes one parameter, \fIn\fR (default 1). Deletes \fIn\fR characters
+starting with the current cursor position. Shifts the tail of the current line
+to the left by \fIn\fR character positions from the current cursor position,
+inclusive, to the end of the line. Blanks are shifted into the rightmost
+\fIn\fR character positions. The position of the cursor on the screen is
+unchanged.
+.RE
+
+.sp
+.ne 2
+.na
+\fBSelect Graphic Rendition (SGR),\fR
+.ad
+.br
+.na
+\fBESC[#m\fR
+.ad
+.sp .6
+.RS 4n
+Takes one parameter, \fIn\fR (default 0). Note that unlike most escape
+sequences, the parameter defaults to zero if omitted. Invokes the graphic
+rendition specified by the parameter. All following printing characters in the
+data stream are rendered according to the parameter until the next occurrence
+of this escape sequence in the data stream. With PROM-based emulator, only two
+graphic renditions are defined:
+.sp
+.ne 2
+.na
+\fB0\fR
+.ad
+.RS 5n
+Normal rendition
+.RE
+
+.sp
+.ne 2
+.na
+\fB7\fR
+.ad
+.RS 5n
+Negative (reverse) image
+.RE
+
+Negative image displays characters as white-on-black if the screen mode is
+currently black-on white, and vice-versa. Any non-zero value of \fIn\fR is
+currently equivalent to 7 and selects the negative image rendition.
+.sp
+In addition to the two renditions mentioned above, the following\fI ISO
+6429-1983\fR graphic rendition values support color text with kernel terminal
+emulator:
+.sp
+.ne 2
+.na
+\fB30\fR
+.ad
+.RS 6n
+black foreground
+.RE
+
+.sp
+.ne 2
+.na
+\fB31\fR
+.ad
+.RS 6n
+red foreground
+.RE
+
+.sp
+.ne 2
+.na
+\fB32\fR
+.ad
+.RS 6n
+green foreground
+.RE
+
+.sp
+.ne 2
+.na
+\fB33\fR
+.ad
+.RS 6n
+brown foreground
+.RE
+
+.sp
+.ne 2
+.na
+\fB34\fR
+.ad
+.RS 6n
+blue foreground
+.RE
+
+.sp
+.ne 2
+.na
+\fB35\fR
+.ad
+.RS 6n
+magenta foreground
+.RE
+
+.sp
+.ne 2
+.na
+\fB36\fR
+.ad
+.RS 6n
+cyan foreground
+.RE
+
+.sp
+.ne 2
+.na
+\fB37\fR
+.ad
+.RS 6n
+white foreground
+.RE
+
+.sp
+.ne 2
+.na
+\fB40\fR
+.ad
+.RS 6n
+black background
+.RE
+
+.sp
+.ne 2
+.na
+\fB41\fR
+.ad
+.RS 6n
+red background
+.RE
+
+.sp
+.ne 2
+.na
+\fB42\fR
+.ad
+.RS 6n
+green background
+.RE
+
+.sp
+.ne 2
+.na
+\fB43\fR
+.ad
+.RS 6n
+brown background
+.RE
+
+.sp
+.ne 2
+.na
+\fB44\fR
+.ad
+.RS 6n
+blue background
+.RE
+
+.sp
+.ne 2
+.na
+\fB45\fR
+.ad
+.RS 6n
+magenta background
+.RE
+
+.sp
+.ne 2
+.na
+\fB46\fR
+.ad
+.RS 6n
+cyan background
+.RE
+
+.sp
+.ne 2
+.na
+\fB47\fR
+.ad
+.RS 6n
+white background
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fBBlack On White (SUNBOW),\fR
+.ad
+.br
+.na
+\fBESC[p\fR
+.ad
+.sp .6
+.RS 4n
+Takes no parameters. On SPARC, sets the screen mode to black-on-white. If the
+screen mode is already black-on-white, has no effect. In this mode, spaces
+display as solid white, other characters as black-on-white. The cursor is a
+solid black block. Characters displayed in negative image rendition (see
+`Select Graphic Rendition' above) are white-on-black. This comprises the
+initial setting of the screen mode on reset. On x86 systems, use \fBESC[q\fR to
+set black-on-white.
+.RE
+
+.sp
+.ne 2
+.na
+\fBWhite On Black (SUNWOB),\fR
+.ad
+.br
+.na
+\fBESC[q\fR
+.ad
+.sp .6
+.RS 4n
+Takes no parameters. On SPARC, sets the screen mode to white-on-black. If the
+screen mode is already white-on-black, has no effect. In this mode spaces
+display as solid black, other characters as white-on-black. The cursor is a
+solid white block. Characters displayed in negative image rendition (see
+`Select Graphic Rendition' above) are black-on-white. Initial setting of the
+screen mode on reset is black on white. On x86 systems, use \fBESC[p\fR to set
+white-on-black.
+.RE
+
+.sp
+.ne 2
+.na
+\fBESC[#r\fR
+.ad
+.br
+.na
+\fBSet Scrolling (SUNSCRL)\fR
+.ad
+.sp .6
+.RS 4n
+Takes one parameter, \fIn\fR (default 0). Sets to \fIn\fR an internal
+register which determines how many lines the screen scrolls up when a line-feed
+function is performed with the cursor on the bottom line. A parameter of 2 or
+3 introduces a small amount of jump when a scroll occurs. A parameter of 34
+clears the screen rather than scrolling. The initial setting is 1 on reset.
+.sp
+A parameter of zero initiates wrap mode instead of scrolling. If a linefeed
+occurs on the bottom line during wrap mode, the cursor goes to the same
+character position in the top line of the screen. When a line feed occurs, the
+line that the cursor moves to is cleared and no scrolling occurs. \fBESC [ 1
+r\fR exits back to scroll mode.
+.sp
+For more information, see the description of the Line-feed (\fBCTRL-J\fR)
+control function above.
+.RE
+
+.sp
+.ne 2
+.na
+\fBESC[s\fR
+.ad
+.br
+.na
+\fBReset terminal emulator (SUNRESET)\fR
+.ad
+.sp .6
+.RS 4n
+Takes no parameters. Resets all modes to default, restores current font from
+\fBPROM.\fR Screen and cursor position are unchanged.
+.RE
+
+.SH RETURN VALUES
+When there are no errors, the redirection ioctls have return values as
+described above. Otherwise, they return \fB\(mi1\fR and set \fBerrno\fR to
+indicate the error. If the target stream is in an error state, \fBerrno \fRis
+set accordingly.
+.sp
+.LP
+If the \fItarget\fR stream is in an error state, \fBerrno\fR is set
+accordingly.
+.SH ERRORS
+.ne 2
+.na
+\fB\fBEBADF\fR\fR
+.ad
+.RS 10n
+\fItarget\fR does not denote an open file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBENOSTR\fR\fR
+.ad
+.RS 10n
+\fItarget\fR does not denote a \fBSTREAMS\fR device.
+.RE
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/dev/wscons\fR\fR
+.ad
+.RS 16n
+Workstation console, accessed via the redirection facility
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/systty\fR\fR
+.ad
+.RS 16n
+Devices that must be opened for the \fBSRIOCSREDIR\fR and \fBSRIOCISREDIR\fR
+ioctls.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/syscon\fR\fR
+.ad
+.RS 16n
+Access system console
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/console\fR\fR
+.ad
+.RS 16n
+Access system console
+.RE
+
+.SH ATTRIBUTES
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Stable
+.TE
+
+.SH SEE ALSO
+.BR ioctl (2),
+.BR poll (2),
+.BR read (2),
+.BR write (2),
+.BR console (4D),
+.BR visual_io (4I),
+.BR eeprom (8)
+.SH WARNINGS
+The redirection ioctls block while there is I/O outstanding on the device
+instance being redirected. If you try to redirect the workstation console while
+there is a outstanding read, the workstation console will hang until the read
+completes.
diff --git a/usr/src/man/man4d/xge.4d b/usr/src/man/man4d/xge.4d
new file mode 100644
index 0000000000..2b656464b7
--- /dev/null
+++ b/usr/src/man/man4d/xge.4d
@@ -0,0 +1,166 @@
+'\" te
+.\" Copyright (c) 2005, Sun Microsystems All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH XGE 4D "Oct 3, 2005"
+.SH NAME
+xge \- Neterion Xframe 10Gigabit Ethernet Network Adapter driver
+.SH SYNOPSIS
+.LP
+.nf
+/dev/xge
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBxge\fR 10 Gigabit Ethernet driver is a multi-threaded, loadable,
+clonable, GLD-based STREAMS driver supporting the Data Link Provider
+Interface, \fBdlpi\fR(4P), on S2IO Xframe 10-Gigabit Ethernet Network Adapter.
+.sp
+.LP
+The \fBxge\fR driver functions includes controller initialization, frame
+transmit and receive, promiscuous and multicast support, TCP and UDP checksum
+offload (IPv4 and IPv6), 9622-byte jumbo frame, and error recovery and
+reporting.
+.sp
+.LP
+The \fBxge\fR driver and hardware support the 10GBase-SR/W, LR/W, and ER/W
+\fI802.3\fR physical layer.
+.SH APPLICATION PROGRAMMING INTERFACE
+.sp
+.LP
+The cloning, character-special device \fB/dev/xge\fR is used to access all
+Xframe devices installed within the system.
+.sp
+.LP
+The \fBxge\fR driver is managed by the \fBdladm\fR(8) command line utility,
+which allows VLANs to be defined on top of xge instances and for \fBxge\fR
+instances to be aggregated. See \fBdladm\fR(8) for more details.
+.sp
+.LP
+The values returned by the driver in the DL_INFO_ACK primitive in response to
+the DL_INFO_REQ are as follows:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Maximum SDU is \fB9600\fR.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Minimum SDU is \fB0\fR.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBDSLAP\fR address length is \fB8\fR bytes.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBMAC\fR type is \fBDL_ETHER.\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBSAP\fR length value is -2 meaning the physical address component is
+followed immediately by a 2-byte sap component within the DLSAP address.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Broadcast address value is Ethernet/IEEE broadcast address
+(FF:FF:FF:FF:FF:FF).
+.RE
+.SH CONFIGURATION
+.sp
+.LP
+By default, the \fBxge\fR driver works without any configuration file.
+.sp
+.LP
+You can check the running-time status of a device instance using
+\fBndd\fR(8). Currently, the driver provides an interface to print all
+hardware statistics.
+.sp
+.LP
+For example, to print statistics of device xge0:
+.sp
+.in +2
+.nf
+ #ndd /dev/xge0 stats
+ tmac_data_octets 772
+ tmac_frms 15
+ tmac_drop_frms 0
+ tmac_bcst_frms 6
+ tmac_mcst_frms 6
+
+ ...
+
+ rmac_vld_frms 13
+ rmac_fcs_err_frms 0
+ rmac_drop_frms 0
+ rmac_vld_bcst_frms 7
+ rmac_vld_mcst_frms 11
+ rmac_out_rng_len_err_frms 0
+ rmac_in_rng_len_err_frms 0
+ rmac_long_frms 0
+
+ ...
+
+ not_traffic_intr_cnt 242673
+ traffic_intr_cnt 28
+
+ ...
+.fi
+.in -2
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/dev/xge\fR \fR
+.ad
+.RS 13n
+\fBxge\fR special character device
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+l l
+l l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+Architecture x86
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR streamio (4I),
+.BR dlpi (4P),
+.BR attributes (7),
+.BR dladm (8),
+.BR ndd (8)
+.sp
+.LP
+\fIWriting Device Drivers\fR
+.sp
+.LP
+\fISTREAMS Programming Guide\fR
+.sp
+.LP
+\fINetwork Interfaces Programmer's Guide\fR
diff --git a/usr/src/man/man4d/xhci.4d b/usr/src/man/man4d/xhci.4d
new file mode 100644
index 0000000000..14598866c8
--- /dev/null
+++ b/usr/src/man/man4d/xhci.4d
@@ -0,0 +1,108 @@
+.\"
+.\" This file and its contents are supplied under the terms of the
+.\" Common Development and Distribution License ("CDDL"), version 1.0.
+.\" You may only use this file in accordance with the terms of version
+.\" 1.0 of the CDDL.
+.\"
+.\" A full copy of the text of the CDDL should have accompanied this
+.\" source. A copy of the CDDL is also available via the Internet at
+.\" http://www.illumos.org/license/CDDL.
+.\"
+.\"
+.\" Copyright 2016 Joyent, Inc.
+.\"
+.Dd January 10, 2020
+.Dt XHCI 4D
+.Os
+.Sh NAME
+.Nm xhci
+.Nd Extensible Host Controller Interface Driver
+.Sh SYNOPSIS
+.Sy usb@unit-address
+.Sh DESCRIPTION
+The
+.Nm
+driver supports PCI devices that implement versions 1.0 and 1.1 of the
+Extensible Host Controller Interface Specification.
+These devices provide support for USB 3.0, USB 2.x, and USB 1.x devices and is
+integrated into the broader illumos USB Architecture (USBA).
+.Pp
+The
+.Nm
+driver supports all four USB transfer types:
+.Sy bulk transfers ,
+.Sy control transfers ,
+.Sy interrupt transfers ,
+and
+.Sy isochronous transfers .
+.Pp
+Administrators do not interact with the
+.Nm
+driver directly.
+USB devices are managed with
+.Xr cfgadm 8 .
+See
+.Xr cfgadm_usb 8
+for more information on how to specifically manage USB devices and how
+they are laid out in the system.
+.Xr cfgadm 8
+is only used to manage devices at a USB level.
+For example, a USB NIC would still be managed with
+.Xr dladm 8
+at a networking level.
+.Pp
+On some x86 systems USB ports may be routed to either an instance of the
+.Nm
+driver or an instance of the
+.Xr ehci 4D
+driver.
+By default, all such ports are routed to the
+.Nm
+driver, allowing those devices to operate at USB 3.x speed by default.
+This is most common on Intel platforms and chipsets.
+While this is controlled with the
+.Sy xhci-reroute
+property discussed below, changing it may not be sufficient to change
+the behavior.
+The BIOS or ACPI data for many x86 systems may toggle this automatically.
+.Sh PROPERTIES
+The
+.Nm
+driver supports the following properties which may be tuned in the
+.Nm
+driver's
+.Xr driver.conf 5
+file.
+.Bl -tag -width Sy
+.It Sy xhci-reroute
+The
+.Sy xhci-reroute
+property determines whether or not USB ports are re-routed to the
+.Nm
+driver.
+The default behavior is to route such ports.
+To disable this, the property should be set to
+.Sy 0 .
+Any other value, or the lack of the property, cause the default behavior
+to take place.
+.El
+.Sh ARCHITECTURE
+The
+.Nm
+driver is only supported on
+.Sy x86
+systems at this time.
+.Sh FILES
+.Bl -tag -width Pa
+.It Pa /kernel/drv/amd64/xhci
+Device driver (x86)
+.It Pa /kernel/drv/xhci.conf
+Driver configuration file
+.El
+.Sh SEE ALSO
+.Xr ehci 4D ,
+.Xr usba 4D ,
+.Xr driver.conf 5 ,
+.Xr cfgadm 8 ,
+.Xr cfgadm_usb 8 ,
+.Xr dladm 8
diff --git a/usr/src/man/man4d/yge.4d b/usr/src/man/man4d/yge.4d
new file mode 100644
index 0000000000..2096b42d19
--- /dev/null
+++ b/usr/src/man/man4d/yge.4d
@@ -0,0 +1,174 @@
+'\" te
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All rights reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH YGE 4D "Sep 15, 2009"
+.SH NAME
+yge \- Marvell Yukon 2 Ethernet device driver
+.SH SYNOPSIS
+.sp
+.in +2
+.nf
+/dev/net/yge
+.fi
+.in -2
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fByge\fR driver supports Marvell Yukon 2 Fast Ethernet and Gigabit
+Ethernet controllers.
+.SS "Properties"
+.sp
+.LP
+The following properties can be configured using \fBdladm\fR(8):
+.sp
+.ne 2
+.na
+\fB\fBadv_autoneg_cap\fR\fR
+.ad
+.RS 19n
+Enables (default) or disables IEEE 802.3 auto-negotiation of link speed and
+duplex settings. If enabled, the device negotiates among the supported (and
+configured, see below) link options with the link partner. If disabled, at
+least one of the link options below must be specified. The driver selects the
+first enabled link option according to the IEEE 802.3 specified preferences.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBadv_1000fdx_cap\fR\fR
+.ad
+.RS 19n
+Enables the 1000 Mbps full-duplex link option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBadv_1000hdx_cap\fR\fR
+.ad
+.RS 19n
+Enables the 1000 Mbps half-duplex link option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBadv_100T4_cap\fR\fR
+.ad
+.RS 19n
+Enables the 100 BaseT4 link option. (Note that most hardware does not support
+this unusual link style. Also, this uses two pairs of wires for data, rather
+than one.)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBadv_100fdx_cap\fR\fR
+.ad
+.RS 19n
+Enables the 1000 Mbps full-duplex link option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBadv_100hdx_cap\fR\fR
+.ad
+.RS 19n
+Enables the 1000 Mbps half-duplex link option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBadv_10fdx_cap\fR\fR
+.ad
+.RS 19n
+Enables the 10 Base-T full-duplex link option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBadv_10hdx_cap\fR\fR
+.ad
+.RS 19n
+Enables the 10 Base-T half-duplex link option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmtu\fR\fR
+.ad
+.RS 19n
+On most devices, can be set between 1500 (default) and 9000. This property can
+only be changed when the device is not in use.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/dev/net/yge\fR\fR
+.ad
+.RS 27n
+Special network device
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/yge\fR\fR
+.ad
+.RS 27n
+32-bit driver binary (x86)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/yge\fR\fR
+.ad
+.RS 27n
+64-bit driver binary (x86)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/sparcv9/yge\fR\fR
+.ad
+.RS 27n
+64-bit driver binary (SPARC)
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for a descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture x86, SPARC
+_
+Interface Stability Committed
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR dlpi (4P),
+.BR attributes (7),
+.BR dladm (8)
diff --git a/usr/src/man/man4d/zcons.4d b/usr/src/man/man4d/zcons.4d
new file mode 100644
index 0000000000..2c55fb08f8
--- /dev/null
+++ b/usr/src/man/man4d/zcons.4d
@@ -0,0 +1,64 @@
+'\" te
+.\" Copyright 2003 Sun Microsystems, Inc. All rights reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.\" Copyright 2022 Oxide Computer Company
+.Dd February 5, 2022
+.Dt ZCONS 4D
+.Os
+.Sh NAME
+.Nm zcons
+.Nd Zone console device driver
+.Sh DESCRIPTION
+The
+.Nm zcons
+character driver exports the console for system zones.
+The driver is fundamentally similar to a pseudo-terminal device, and is thus
+comprised of two sides:
+.Bl -bullet
+.It
+a manager device, which applications in the global zone can open for
+communication
+.It
+a subsidiary device, which processes in the non-global zone can write to, to
+communicate with global zone management applications
+.El
+.Pp
+Applications must not depend on the location of
+.Pa /dev
+or
+.Pa /devices
+entries exposed by
+.Nm zcons
+in the global zone.
+Inside a non-global zone, the
+.Nm zcons
+subsidiary device is fronted by
+.Pa /dev/console
+and other console-related symbolic links, which are used by applications that
+expect to write to the system console.
+.Pp
+The
+.Nm
+driver is not a
+.Sy Committed
+interface, and may change at any time.
+.Sh FILES
+.Bl -tag -width Pa
+.It Pa /dev/zcons/ZONENAME/globalconsole
+Global zone console manager device for zone
+.Sy ZONENAME .
+.It Pa /dev/zcons/ZONENAME/zoneconsole
+Global zone console subsidiary device for zone
+.Sy ZONENAME .
+.It Pa /dev/zconsole
+Non-global zone console (subsidiary device).
+.El
+.Sh INTERFACE STABILITY
+.Sy Uncommitted
+.Sh SEE ALSO
+.Xr attributes 7 ,
+.Xr zones 7 ,
+.Xr zoneadm 8 ,
+.Xr zonecfg 8
diff --git a/usr/src/man/man4d/zen_udf.4d b/usr/src/man/man4d/zen_udf.4d
new file mode 100644
index 0000000000..8da2486c63
--- /dev/null
+++ b/usr/src/man/man4d/zen_udf.4d
@@ -0,0 +1,36 @@
+.\"
+.\" This file and its contents are supplied under the terms of the
+.\" Common Development and Distribution License ("CDDL"), version 1.0.
+.\" You may only use this file in accordance with the terms of version
+.\" 1.0 of the CDDL.
+.\"
+.\" A full copy of the text of the CDDL should have accompanied this
+.\" source. A copy of the CDDL is also available via the Internet at
+.\" http://www.illumos.org/license/CDDL.
+.\"
+.\"
+.\" Copyright 2020 Oxide Computer Company
+.\"
+.Dd October 7, 2020
+.Dt ZEN_UDF 4D
+.Os
+.Sh NAME
+.Nm zen_udf
+.Nd AMD data fabric user access driver
+.Sh SYNOPSIS
+.Pa /devices/pseudo/amdzen@0/zen_udf@3:zen_udf.*
+.Sh DESCRIPTION
+The
+.Nm
+driver provides the ability to read data from the AMD data fabric
+.Pq DF
+on AMD Family 17h
+.Pq Zen, Zen+, and Zen 2
+processors.
+.Pp
+This driver is intended strictly for facilitating platform development
+and is not recommended for systems that aren't doing kernel development
+on AMD Zen platforms.
+.Sh SEE ALSO
+.Xr amdzen 4D ,
+.Xr usmn 4D
diff --git a/usr/src/man/man4d/zero.4d b/usr/src/man/man4d/zero.4d
new file mode 100644
index 0000000000..1637b4cd71
--- /dev/null
+++ b/usr/src/man/man4d/zero.4d
@@ -0,0 +1,43 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 1990, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH ZERO 4D "Jul 3, 1990"
+.SH NAME
+zero \- source of zeroes
+.SH DESCRIPTION
+.sp
+.LP
+A zero special file is a source of zeroed unnamed memory.
+.sp
+.LP
+Reads from a zero special file always return a buffer full of zeroes. The file
+is of infinite length.
+.sp
+.LP
+Writes to a zero special file are always successful, but the data written is
+ignored.
+.sp
+.LP
+Mapping a zero special file creates a zero-initialized unnamed memory object of
+a length equal to the length of the mapping and rounded up to the nearest page
+size as returned by \fBsysconf\fR. Multiple processes can share such a zero
+special file object provided a common ancestor mapped the object
+\fBMAP_SHARED\fR.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/dev/zero\fR\fR
+.ad
+.RS 13n
+
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR fork (2),
+.BR mmap (2),
+.BR sysconf (3C)
diff --git a/usr/src/man/man4d/zfd.4d b/usr/src/man/man4d/zfd.4d
new file mode 100644
index 0000000000..556fd8e371
--- /dev/null
+++ b/usr/src/man/man4d/zfd.4d
@@ -0,0 +1,81 @@
+.\"
+.\" This file and its contents are supplied under the terms of the
+.\" Common Development and Distribution License ("CDDL"), version 1.0.
+.\" You may only use this file in accordance with the terms of version
+.\" 1.0 of the CDDL.
+.\"
+.\" A full copy of the text of the CDDL should have accompanied this
+.\" source. A copy of the CDDL is also available via the Internet at
+.\" http://www.illumos.org/license/CDDL.
+.\"
+.\"
+.\" Copyright 2015, Joyent, Inc. All rights reserved.
+.\"
+.Dd "Oct 16, 2015"
+.Dt ZFD 4D
+.Os
+.Sh NAME
+.Nm zfd
+.Nd Zone file descriptor driver
+.Sh DESCRIPTION
+The
+.Nm zfd
+character driver exports devices into the zone which can be used by a
+a standalone process within the zone as
+.Vt stdin ,
+.Vt stdout ,
+and
+.Vt stderr .
+The
+.Nm zfd
+driver behaves in a similar manner as the
+.Nm zcons(4D)
+device.
+Inside a zone, the slave side devices appear as
+.Nm /dev/zfd/[0-4] .
+.sp
+The zone's zfd device configuration is driven by
+.Nm zoneadmd
+and a zone attribute
+.Nm zlog-mode
+which is somewhat of a misnomer since its purpose has evolved.
+The attribute can have a variety of values, but the lowest two positions
+in the value string are used to control how many zfd devices are created
+inside the zone and if the primary stream is a tty.
+.sp
+.Dl --
+.Dl -n
+.Dl t-
+.Dl tn
+.sp
+With the
+.Nm t
+flag set,
+.Vt stdin ,
+.Vt stdout ,
+and
+.Vt stderr ,
+are multiplexed onto a single full-duplex stream which is configured as a tty.
+That is,
+.Nm ptem ,
+.Nm ldterm
+and
+.Nm ttycompat
+are autopushed onto the stream when the slave side is opened.
+There is only a single zfd device (0) needed for the primary stream.
+.sp
+When the
+.Nm n
+flag is set, it is assumed that output logging will be done within the zone
+itself.
+In this configuration 1 or 2 additional zfd devices, depending on tty mode
+.Nm ( t
+flag), are created within the zone.
+An application can then configure the zfd streams driver into a multiplexer.
+Output from the stdout/stderr zfd(s) will be teed into the correspond
+logging zfd(s) within the zone.
+.Sh SEE ALSO
+.Xr zlogin 1 ,
+.Xr zcons 4D ,
+.Xr zoneadmd 8 ,
+.Xr zonecfg 8
diff --git a/usr/src/man/man4d/zs.4d b/usr/src/man/man4d/zs.4d
new file mode 100644
index 0000000000..d63a7bd31f
--- /dev/null
+++ b/usr/src/man/man4d/zs.4d
@@ -0,0 +1,290 @@
+'\" te
+.\" Copyright (c) 2009, Sun Microsystems, Inc.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
+.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH ZS 4D "April 9, 2016"
+.SH NAME
+zs \- Zilog 8530 SCC serial communications driver
+.SH SYNOPSIS
+.LP
+.nf
+#include <fcntl.h>
+.fi
+
+.LP
+.nf
+#include <sys/termios.h>
+.fi
+
+.LP
+.nf
+open("/dev/term/\fIn\fR", \fImode\fR);
+.fi
+
+.LP
+.nf
+open("/dev/tty\fIn\fR", \fImode\fR);
+.fi
+
+.LP
+.nf
+open("/dev/cua/\fIn\fR", \fImode\fR);
+.fi
+
+.SH DESCRIPTION
+.LP
+The Zilog 8530 provides two serial input/output channels capable of supporting
+a variety of communication protocols. A typical system uses two or more of
+these devices to implement essential functions, including RS-423 ports (which
+also support most RS-232 equipment), and the console keyboard and mouse
+devices.
+.sp
+.LP
+The \fBzs\fR module is a loadable STREAMS driver that provides basic support
+for the Zilog 8530 hardware and basic asynchronous communication support. The
+driver supports the \fBtermio\fR(4I) device control functions specified by
+flags in the \fBc_cflag\fR word of the \fBtermios\fR structure and by the
+\fBIGNBRK,\fR \fBIGNPAR,\fR \fBPARMRK,\fR or \fBINPCK\fR flags in the
+\fBc_iflag\fR word. All other \fBtermio\fR(4I) functions must be performed by
+\fBSTREAMS\fR modules pushed atop the driver. When a device is opened, the
+\fBldterm\fR(4M) and \fBttcompat\fR(4M) \fBSTREAMS\fR modules are automatically
+pushed on top of the stream, providing the standard \fBtermio\fR(4I) interface.
+.sp
+.LP
+The character-special devices \fB/dev/term/a\fR and \fB/dev/term/b\fR are used
+to access the two serial ports on the \fBCPU\fR board.
+.sp
+.LP
+Valid name space entries are \fB/dev/cua/\fR[\fIa-z\fR],
+\fB/dev/term/\fR[\fIa-z\fR] and \fB/dev/tty\fR[\fIa-z\fR]. The number of
+entries used in a name space are machine dependent.
+.sp
+.LP
+To allow a single tty line to be connected to a modem and used for both
+incoming and outgoing calls, a special feature is available that is controlled
+by the minor device number. By accessing character-special devices with names
+of the form \fB/dev/cua/\fR[\fIn\fR], it is possible to open a port without
+the \fBCarrier Detect\fR signal being asserted, either through hardware or an
+equivalent software mechanism. These devices are commonly known as dial-out
+lines.
+.sp
+.LP
+Once a \fB/dev/cua/\fR[\fIn\fR] line is opened, the corresponding tty line
+cannot be opened until the \fB/dev/cua/\fR\fIn\fR line is closed. A blocking
+open will wait until the \fB/dev/cua/\fR[\fIn\fR] line is closed (which will
+drop \fBData Terminal Ready\fR, and \fBCarrier Detect\fR) and carrier is
+detected again. A non-blocking open will return an error. If the tty line has
+been opened successfully (usually only when carrier is recognized on the modem)
+, the corresponding \fB/dev/cua/\fR[\fIn\fR] line cannot be opened. This allows
+a modem to be attached to \fB/dev/term/\fR[\fIn\fR] (renamed from
+\fB/dev/tty\fR[\fIn\fR]) and used for dial-in (by enabling the line for login
+in \fB/etc/inittab\fR) and also used for dial-out (by \fBtip\fR(1) or
+\fBuucp\fR(1C)) as \fB/dev/cua/\fR[\fIn\fR] when no one is logged in on the
+line.
+.LP
+Note -
+.sp
+.RS 2
+This module is affected by the setting of specific eeprom variables. For
+information on parameters that are persistent across reboots, see the
+\fBeeprom\fR(8) man page.
+.RE
+.SH IOCTLS
+.LP
+The \fBzs\fR module supports the standard set of \fBtermio ioctl\fR(\|) calls.
+.sp
+.LP
+If the \fBCRTSCTS\fR flag in the \fBc_cflag\fR field is set, output will be
+generated only if \fBCTS\fR is high; if \fBCTS\fR is low, output will be
+frozen. If the \fBCRTSCTS\fR flag is clear, the state of \fBCTS\fR has no
+effect.
+.sp
+.LP
+If the \fBCRTSXOFF\fR flag in the \fBc_cflag\fR field is set, input will be
+received only if \fBRTS\fR is high; if \fBRTS\fR is low, input will be frozen.
+If the \fBCRTSXOFF\fR flag is clear, the state of \fBRTS\fR has no effect.
+.sp
+.LP
+The \fBtermios\fR \fBCRTSCTS\fR (respectively \fBCRTSXOFF)\fR flag and
+\fBtermiox\fR \fBCTSXON\fR (respectively \fBRTSXOFF)\fR can be used
+interchangeably.
+.sp
+.LP
+Breaks can be generated by the \fBTCSBRK,\fR \fBTIOCSBRK,\fR and \fBTIOCCBRK
+ioctl\fR(\|) calls.
+.sp
+.LP
+The state of the \fBDCD,\fR \fBCTS,\fR \fBRTS,\fR and \fBDTR\fR interface
+signals may be queried through the use of the \fBTIOCM_CAR,\fR \fBTIOCM_CTS,\fR
+\fBTIOCM_RTS,\fR and \fBTIOCM_DTR\fR arguments to the \fBTIOCMGET ioctl\fR
+command, respectively. Due to hardware limitations, only the \fBRTS\fR and
+\fBDTR\fR signals may be set through their respective arguments to the
+\fBTIOCMSET,\fR \fBTIOCMBIS,\fR and \fBTIOCMBIC ioctl\fR commands.
+.sp
+.LP
+The input and output line speeds may be set to any of the speeds supported by
+\fBtermio\fR. The input and output line speeds cannot be set independently; for
+example, when you set the output speed, the input speed is automatically
+set to the same speed.
+.sp
+.LP
+When the driver is used to service the serial console port, it supports a BREAK
+condition that allows the system to enter the debugger or the monitor. The
+BREAK condition is generated by hardware and it is usually enabled by default.
+A BREAK condition originating from erroneous electrical signals cannot be
+distinguished from one deliberately sent by remote DCE. The Alternate Break
+sequence can be used to remedy this.
+.sp
+.LP
+Due to a risk of incorrect sequence interpretation, SLIP and certain other
+binary protocols should not be run over the serial console port when Alternate
+Break sequence is in effect. Although PPP is a binary protocol, it is able to
+avoid these sequences using the ACCM feature in \fIRFC 1662\fR. For Solaris PPP
+4.0, you do this by adding the following line to the \fB/etc/ppp/options\fR
+file (or other configuration files used for the connection; see \fBpppd\fR(8)
+for details):
+.sp
+.in +2
+.nf
+asyncmap 0x00002000
+.fi
+.in -2
+
+.sp
+.LP
+By default, the Alternate Break sequence is three characters: carriage return,
+tilde and control-B (CR ~ CTRL-B), but may be changed by the driver. For more
+information on breaking (entering the debugger or monitor), see \fBkbd\fR(1)
+and \fBkb\fR(4M).
+.SH ERRORS
+.LP
+An \fBopen\fR will fail under the following conditions:
+.sp
+.ne 2
+.na
+\fB\fBENXIO\fR\fR
+.ad
+.RS 9n
+The unit being opened does not exist.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEBUSY\fR\fR
+.ad
+.RS 9n
+The dial-out device is being opened and the dial-in device is already open, or
+the dial-in device is being opened with a no-delay open and the dial-out device
+is already open.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEBUSY\fR\fR
+.ad
+.RS 9n
+The port is in use by another serial protocol.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEBUSY\fR\fR
+.ad
+.RS 9n
+The unit has been marked as exclusive-use by another process with a \fBTIOCEXCL
+ioctl\fR(\|) call.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEINTR\fR\fR
+.ad
+.RS 9n
+The open was interrupted by the delivery of a signal.
+.RE
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/dev/cua/\fR[\fIa-z\fR]\fR
+.ad
+.RS 19n
+dial-out tty lines
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/term/\fR[\fIa-z\fR]\fR
+.ad
+.RS 19n
+dial-in tty lines
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/tty\fR[\fIa-z\fR]\fR
+.ad
+.RS 19n
+binary compatibility package device names
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture SPARC
+.TE
+
+.SH SEE ALSO
+.LP
+.BR tip (1),
+.BR cu (1C),
+.BR uucp (1C),
+.BR ioctl (2),
+.BR open (2),
+.BR zsh (4D),
+.BR termio (4I),
+.BR kb (4M),
+.BR ldterm (4M),
+.BR ttcompat (4M),
+.BR attributes (7),
+.BR eeprom (8),
+.BR kadb (8),
+.BR ports (8),
+.BR pppd (8)
+.SH DIAGNOSTICS
+.ne 2
+.na
+\fB\fBzs\fR\fIn\fR\fB\|: silo overflow.\fR\fR
+.ad
+.sp .6
+.RS 4n
+The Zilog 8530 character input silo overflowed before it could be serviced.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBzs\fR\fIn\fR\fB\|: ring buffer overflow.\fR\fR
+.ad
+.sp .6
+.RS 4n
+The driver's character input ring buffer overflowed before it could be
+serviced.
+.RE
+
diff --git a/usr/src/man/man4d/zsh.4d b/usr/src/man/man4d/zsh.4d
new file mode 100644
index 0000000000..331c2d96fa
--- /dev/null
+++ b/usr/src/man/man4d/zsh.4d
@@ -0,0 +1,367 @@
+'\" te
+.\" Copyright (c) 1997, Sun Microsystems, Inc.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH ZSH 4D "Jan 1, 1997"
+.SH NAME
+zsh \- On-board serial HDLC/SDLC interface
+.SH SYNOPSIS
+.LP
+.nf
+#include <fcntl.h>
+.fi
+
+.LP
+.nf
+open(/dev/zsh\fIn, mode \fR\fB);\fR
+.fi
+
+.LP
+.nf
+open(/dev/zsh\fI, mode \fR\fB);\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBzsh\fR module is a loadable \fBSTREAMS\fR driver that implements the
+sending and receiving of data packets as \fBHDLC\fR frames over synchronous
+serial lines. The module is not a standalone driver, but instead depends upon
+the \fBzs\fR module for the hardware support required by all on-board serial
+devices. When loaded this module acts as an extension to the \fBzs\fR driver,
+providing access to an \fBHDLC\fR interface through character-special devices.
+.sp
+.LP
+The \fBzsh\fR\fIn\fR devices provide what is known as a \fBdata path\fR which
+supports the transfer of data via \fBread\fR(2) and \fBwrite\fR(2) system
+calls, as well as \fBioctl\fR(2) calls. Data path opens are exclusive in order
+to protect against injection or diversion of data by another process.
+.sp
+.LP
+The \fBzsh\fR device provides a separate \fBcontrol path\fR for use by programs
+that need to configure or monitor a connection independent of any exclusive
+access restrictions imposed by data path opens. Up to three control paths may
+be active on a particular serial channel at any one time. Control path
+accesses are restricted to \fBioctl\fR(2) calls only; no data transfer is
+possible.
+.sp
+.LP
+When used in synchronous modes, the \fBZ8530 SCC\fR supports several options
+for \fBclock sourcing\fR and \fBdata encoding\fR. Both the transmit and receive
+clock sources can be set to be the external \fBT\fRransmit \fBC\fRlock
+(\fBTRxC\fR), external \fBR\fReceive \fBC\fRlock (\fBRTxC\fR), the internal
+\fBB\fRaud \fBR\fRate \fBG\fRenerator (\fBBRG\fR), or the output of the
+\fBSCC\fR's \fBD\fRigital \fBP\fRhase-\fBL\fRock \fBL\fRoop (\fBDPLL\fR).
+.sp
+.LP
+The \fBB\fRaud \fBR\fRate \fBG\fRenerator is a programmable divisor that
+derives a clock frequency from the \fBPCLK\fR input signal to the \fBSCC\fR. A
+programmed baud rate is translated into a 16-bit \fBtime\fR \fBconstant\fR that
+is stored in the \fBSCC\fR. When using the \fBBRG\fR as a clock source the
+driver may answer a query of its current speed with a value different from the
+one specified. This is because baud rates translate into time constants in
+discrete steps, and reverse translation shows the change. If an exact baud
+rate is required that cannot be obtained with the \fBBRG\fR, an external clock
+source must be selected.
+.sp
+.LP
+Use of the \fBDPLL\fR option requires the selection of \fBNRZI\fR data encoding
+and the setting of a non-zero value for the baud rate, because the \fBDPLL\fR
+uses the \fBBRG\fR as its reference clock source.
+.sp
+.LP
+A \fBlocal loopback mode\fR is available, primarily for use by the
+\fBsyncloop\fR(8) utility for testing purposes, and should not be confused
+with \fBSDLC\fR loop mode, which is not supported on this interface. Also, an
+\fBauto-echo\fR feature may be selected that causes all incoming data to be
+routed to the transmit data line, allowing the port to act as the remote end of
+a digital loop. Neither of these options should be selected casually, or left
+in use when not needed.
+.sp
+.LP
+The \fBzsh\fR driver keeps running totals of various hardware generated events
+for each channel. These include numbers of packets and characters sent and
+received, abort conditions detected by the receiver, receive \fBCRC\fR errors,
+transmit underruns, receive overruns, input errors and output errors, and
+message block allocation failures. Input errors are logged whenever an incoming
+message must be discarded, such as when an abort or \fBCRC\fR error is
+detected, a receive overrun occurs, or when no message block is available to
+store incoming data. Output errors are logged when the data must be discarded
+due to underruns, \fBCTS\fR drops during transmission, \fBCTS\fR timeouts, or
+excessive watchdog timeouts caused by a cable break.
+.SH IOCTLS
+.sp
+.LP
+The \fBzsh\fR driver supports several \fBioctl()\fR commands, including:
+.sp
+.ne 2
+.na
+\fB\fBS_IOCGETMODE\fR\fR
+.ad
+.RS 17n
+Return a \fBstruct scc_mode\fR containing parameters currently in use. These
+include the transmit and receive clock sources, boolean loopback and
+\fBNRZI\fR mode flags and the integer baud rate.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBS_IOCSETMODE\fR\fR
+.ad
+.RS 17n
+The argument is a \fBstruct scc_mode\fR from which the \fBSCC\fR channel will
+be programmed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBS_IOCGETSTATS\fR\fR
+.ad
+.RS 17n
+Return a \fBstruct sl_stats\fR containing the current totals of
+hardware-generated events. These include numbers of packets and characters sent
+and received by the driver, aborts and \fBCRC\fR errors detected, transmit
+underruns, and receive overruns.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBS_IOCCLRSTATS\fR\fR
+.ad
+.RS 17n
+Clear the hardware statistics for this channel.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBS_IOCGETSPEED\fR\fR
+.ad
+.RS 17n
+Returns the currently set baud rate as an integer. This may not reflect the
+actual data transfer rate if external clocks are used.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBS_IOCGETMCTL\fR\fR
+.ad
+.RS 17n
+Returns the current state of the \fBCTS\fR and \fBDCD\fR incoming modem
+interface signals as an integer.
+.RE
+
+.sp
+.LP
+The following structures are used with \fBzsh\fR \fBioctl()\fR commands:
+.sp
+.in +2
+.nf
+struct scc_mode {
+ char sm_txclock; /* transmit clock sources */
+ char sm_rxclock; /* receive clock sources */
+ char sm_iflags; /* data and clock inversion flags (non-zsh) */
+ uchar_t sm_config; /* boolean configuration options */
+ int sm_baudrate; /* real baud rate */
+ int sm_retval; /* reason codes for ioctl failures */
+};
+struct sl_stats {
+ long ipack; /* input packets */
+ long opack; /* output packets */
+ long ichar; /* input bytes */
+ long ochar; /* output bytes */
+ long abort; /* abort received */
+ long crc; /* CRC error */
+ long cts; /* CTS timeouts */
+ long dcd; /* Carrier drops */
+ long overrun; /* receive overrun */
+ long underrun; /* transmit underrun */
+ long ierror; /* input error */
+ long oerror; /* output error */
+ long nobuffers; /* receive side memory allocation failure */
+};
+.fi
+.in -2
+
+.SH ERRORS
+.sp
+.LP
+An \fBopen()\fR will fail if a \fBSTREAMS\fR message block cannot be allocated,
+or:
+.sp
+.ne 2
+.na
+\fB\fBENXIO\fR\fR
+.ad
+.RS 9n
+The unit being opened does not exist.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEBUSY\fR\fR
+.ad
+.RS 9n
+The device is in use by another serial protocol.
+.RE
+
+.sp
+.LP
+An \fBioctl()\fR will fail if:
+.sp
+.ne 2
+.na
+\fB\fBEINVAL\fR\fR
+.ad
+.RS 10n
+An attempt was made to select an invalid clocking source.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEINVAL\fR\fR
+.ad
+.RS 10n
+The baud rate specified for use with the baud rate generator would translate to
+a null time constant in the \fBSCC\fR's registers.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/dev/zsh[0-1]\fR,\fB/dev/zsh\fR\fR
+.ad
+.sp .6
+.RS 4n
+character-special devices
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/include/sys/ser_sync.h\fR\fR
+.ad
+.sp .6
+.RS 4n
+header file specifying synchronous serial communication definitions
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture x86
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR ioctl (2),
+.BR open (2),
+.BR read (2),
+.BR write (2),
+.BR zs (4D),
+.BR attributes (7),
+.BR syncinit (8),
+.BR syncloop (8),
+.BR syncstat (8)
+.sp
+.LP
+Refer to the \fIZilog Z8530 SCC Serial Communications Controller Technical
+Manual\fR for details of the \fBSCC\fR's operation and capabilities.
+.SH DIAGNOSTICS
+.sp
+.ne 2
+.na
+\fB\fBzsh data open failed, no memory, rq=\fR\fInnn\fR\fR
+.ad
+.sp .6
+.RS 4n
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBzsh clone open failed, no memory, rq=\fR\fInnn\fR\fR
+.ad
+.sp .6
+.RS 4n
+A kernel memory allocation failed for one of the private data structures. The
+value of \fInnn\fR is the address of the read queue passed to \fBopen\fR(2).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBzsh_open: can't alloc message block\fR\fR
+.ad
+.sp .6
+.RS 4n
+The open could not proceed because an initial \fBSTREAMS\fR message block could
+not be made available for incoming data.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBzsh: clone device \fR\fId\fR\fB must be attached before use!\fR\fR
+.ad
+.sp .6
+.RS 4n
+An operation was attempted through a control path before that path had been
+attached to a particular serial channel.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBzsh\fR\fIn\fR\fB: invalid operation for clone dev.\fR\fR
+.ad
+.sp .6
+.RS 4n
+An inappropriate \fBSTREAMS\fR message type was passed through a control path.
+Only \fBM_IOCTL\fR and \fBM_PROTO\fR message types are permitted.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBzsh\fR\fIn\fR\fB: not initialized, can't send message\fR\fR
+.ad
+.sp .6
+.RS 4n
+An \fBM_DATA\fR message was passed to the driver for a channel that had not
+been programmed at least once since the driver was loaded. The \fBSCC\fR's
+registers were in an unknown state. The \fBS_IOCSETMODE\fR ioctl command
+performs the programming operation.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBzsh\fR\fIn\fR\fB: transmit hung\fR\fR
+.ad
+.sp .6
+.RS 4n
+The transmitter was not successfully restarted after the watchdog timer
+expired.
+.RE
+
diff --git a/usr/src/man/man4d/zyd.4d b/usr/src/man/man4d/zyd.4d
new file mode 100644
index 0000000000..10ecd98cd3
--- /dev/null
+++ b/usr/src/man/man4d/zyd.4d
@@ -0,0 +1,82 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH ZYD 4D "Dec 10, 2008"
+.SH NAME
+zyd \- ZyDAS ZD1211/ZD1211B USB 802.11b/g Wireless Driver
+.SH DESCRIPTION
+.sp
+.LP
+The \fBzyd\fR \fI802.11b/g\fR wireless driver is a multi-threaded, loadable,
+clonable, GLDv3-based STREAMS driver supporting the ZyDAS ZD1211/ZD1211B USB
+chipset-based wireless devices.
+.SH CONFIGURATION
+.sp
+.LP
+The \fBzyd\fR driver performs auto-negotiation to determine the data rate and
+mode. Supported \fI802.11b\fR data rates are 1, 2, 5.5 and 11 Mbits/sec.
+Supported \fI802.11g\fR data rates are 1, 2, 5.5, 11, 6, 9, 12, 18, 24, 36, 48
+and 54 Mbits/sec. The \fBzyd\fR driver supports only BSS networks (also known
+as "ap" or "infrastructure" networks) and open (or "open-system"), shared key
+and WPA/WPA2 authentication. Supported encryption types are WEP40, WEP104, TKIP
+and AES-CCMP.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/dev/zyd*\fR\fR
+.ad
+.RS 25n
+Special character device.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/zyd\fR\fR
+.ad
+.RS 25n
+32-bit kernel module (x86).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64/zyd\fR\fR
+.ad
+.RS 25n
+64-bit kernel module (x86).
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for a description of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture x86
+_
+Interface Stability Committed
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR gld (4D),
+.BR dlpi (4P),
+.BR attributes (7),
+.BR dladm (8),
+.BR wificonfig (8)
+.sp
+.LP
+\fI802.11 - Wireless LAN Media Access Control and Physical Layer
+Specification\fR - IEEE, 2001
diff --git a/usr/src/man/man4fs/Makefile b/usr/src/man/man4fs/Makefile
new file mode 100644
index 0000000000..7f6b480297
--- /dev/null
+++ b/usr/src/man/man4fs/Makefile
@@ -0,0 +1,52 @@
+#
+# This file and its contents are supplied under the terms of the
+# Common Development and Distribution License ("CDDL"), version 1.0.
+# You may only use this file in accordance with the terms of version
+# 1.0 of the CDDL.
+#
+# A full copy of the text of the CDDL should have accompanied this
+# source. A copy of the CDDL is also available via the Internet
+# at http://www.illumos.org/license/CDDL.
+#
+
+#
+# Copyright 2011, Richard Lowe
+# Copyright 2013 Nexenta Systems, Inc. All rights reserved.
+# Copyright 2014 Joyent, Inc.
+#
+
+include $(SRC)/Makefile.master
+
+MANSECT= 4fs
+
+MANFILES= bootfs.4fs \
+ ctfs.4fs \
+ dcfs.4fs \
+ dev.4fs \
+ devfs.4fs \
+ fd.4fs \
+ hsfs.4fs \
+ hyprlofs.4fs \
+ lofs.4fs \
+ lxproc.4fs \
+ objfs.4fs \
+ pcfs.4fs \
+ sharefs.4fs \
+ smbfs.4fs \
+ tmpfs.4fs \
+ udfs.4fs \
+ ufs.4fs
+
+MANLINKS= stderr.4fs \
+ stdin.4fs \
+ stdout.4fs
+
+stderr.4fs := LINKSRC = fd.4fs
+stdin.4fs := LINKSRC = fd.4fs
+stdout.4fs := LINKSRC = fd.4fs
+
+.KEEP_STATE:
+
+include $(SRC)/man/Makefile.man
+
+install: $(ROOTMANFILES) $(ROOTMANLINKS)
diff --git a/usr/src/man/man4fs/bootfs.4fs b/usr/src/man/man4fs/bootfs.4fs
new file mode 100644
index 0000000000..9b336fea51
--- /dev/null
+++ b/usr/src/man/man4fs/bootfs.4fs
@@ -0,0 +1,84 @@
+.\"
+.\" This file and its contents are supplied under the terms of the
+.\" Common Development and Distribution License ("CDDL"), version 1.0.
+.\" You may only use this file in accordance with the terms of version
+.\" 1.0 of the CDDL.
+.\"
+.\" A full copy of the text of the CDDL should have accompanied this
+.\" source. A copy of the CDDL is also available via the Internet at
+.\" http://www.illumos.org/license/CDDL.
+.\"
+.\"
+.\" Copyright (c) 2014 Joyent, Inc. All rights reserved.
+.\" Copyright 2021 Oxide Computer Company
+.\"
+.Dd May 8, 2014
+.Dt BOOTFS 4FS
+.Os
+.Sh NAME
+.Nm bootfs
+.Nd boot-time module file system
+.Sh DESCRIPTION
+The
+.Nm
+file system is a read-only file system that provides access to any
+boot-time modules that were passed in to the system loader which were
+tagged with the type
+.Em file .
+.Nm
+does not display any boot-time modules that were tagged as type
+.Em hash
+or type
+.Em rootfs .
+If modules with duplicate names and paths are specified, only the first
+such entry will be present in the file system and a counter will be
+incremented to indicate that a duplicate entry was found, but is not
+present into the file system.
+If a module's name only consists of invalid characters, such as
+.Sq . ,
+.Sq .. ,
+or
+.Sq / ,
+then the module will not be present in the file system and a counter
+will be incremented to indicate that this has occurred.
+In both cases, diagnostic information is available through the kstats
+facility.
+.Sh FILES
+.Bl -tag -width Pa
+.It Pa /system/boot
+The mount point for the
+.Nm
+file system in the global zone.
+.El
+.Sh EXAMPLES
+.Sy Example 1
+Determining if collisions or invalid names are present
+.Pp
+To determine if any boot-time modules were not created due to collisions
+or invalid names, enter the following command:
+.Bd -literal -offset indent
+# kstat -m bootfs
+module: bootfs instance: 1
+name: bootfs class: fs
+ crtime 236063.651324041
+ nbytes 8749355
+ ndirs 3
+ ndiscard 0
+ ndup 0
+ nfiles 2
+ snaptime 236063.651324041
+.Ed
+The field
+.Fa ndiscard
+lists the number of boot-time modules that were discarded due to naming
+conflicts.
+The field
+.Fa ndup
+lists the number of duplicate entries that were found and therefore not
+displayed in the file system.
+.Pp
+This information is provided for informational purposes only, it is not
+to be construed as a stable interface.
+.Sh SEE ALSO
+.Xr loader 7 ,
+.Xr kstat 8
diff --git a/usr/src/man/man4fs/ctfs.4fs b/usr/src/man/man4fs/ctfs.4fs
new file mode 100644
index 0000000000..111d1b342a
--- /dev/null
+++ b/usr/src/man/man4fs/ctfs.4fs
@@ -0,0 +1,46 @@
+.\"
+.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 2021 Oxide Computer Company
+.\"
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.\"
+.Dd November 18, 2004
+.Dt CTFS 4FS
+.Os
+.Sh NAME
+.Nm ctfs
+.Nd contract file system
+.Sh DESCRIPTION
+The
+.Nm
+filesystem is the interface to the contract sub-system.
+.Nm
+is mounted during boot at
+.Pa /system/contract .
+For information on contracts and the contents of this filesystem, see
+.Xr contract 5 .
+.Sh FILES
+.Bl -tag -width Pa
+.It Pa /system/contract
+Mount point for the
+.Nm
+file system
+.El
+.Sh SEE ALSO
+.Xr contract 5 ,
+.Xr vfstab 5 ,
+.Xr attributes 7 ,
+.Xr smf 7
diff --git a/usr/src/man/man4fs/dcfs.4fs b/usr/src/man/man4fs/dcfs.4fs
new file mode 100644
index 0000000000..20bd84d39b
--- /dev/null
+++ b/usr/src/man/man4fs/dcfs.4fs
@@ -0,0 +1,49 @@
+.\"
+.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 2021 Oxide Computer Company
+.\"
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.\"
+.Dd November 28, 2007
+.Dt DCFS 4FS
+.Os
+.Sh NAME
+.Nm dcfs
+.Nd Compression file system
+.Sh SYNOPSIS
+.In sys/filio.h
+.In sys/fs/decomp.h
+.Sh DESCRIPTION
+The
+.Nm
+filesystem is a layered filesystem that you use to compress data when writing to
+a file and decompress upon read.
+The primary function of the
+.Nm
+filesystem is to compress individual files when constructing a boot archive and
+when reading or booting from the archive.
+.Sh INTERFACE STABILITY
+.Sy Uncommitted
+.Sh SEE ALSO
+.Xr ufs 4FS ,
+.Xr attributes 7 ,
+.Xr boot 8 ,
+.Xr bootadm 8 ,
+.Xr fiocompress 8
+.Sh NOTES
+The
+.Nm
+compression/decompression file system works only with UFS.
diff --git a/usr/src/man/man4fs/dev.4fs b/usr/src/man/man4fs/dev.4fs
new file mode 100644
index 0000000000..08f9ecc902
--- /dev/null
+++ b/usr/src/man/man4fs/dev.4fs
@@ -0,0 +1,83 @@
+.\"
+.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 2021 Oxide Computer Company
+.\"
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.\"
+.Dd November 29, 2021
+.Dt DEV 4FS
+.Os
+.Sh NAME
+.Nm dev
+.Nd Device name file system
+.Sh DESCRIPTION
+The
+.Nm
+filesystem manages the name spaces of devices in the operating system.
+The global zone's instance of the
+.Nm
+filesystem is mounted during boot on
+.Pa /dev .
+This filesystem is colloqiually called
+.Sq sdev
+as a way to distinguish it from the
+.Xr devfs 4FS
+filesystem mounted at
+.Pa /devices .
+.Pp
+A subdirectory under
+.Pa /dev
+may have unique operational semantics.
+Most of the common device names under
+.Pa /dev
+are created automatically by
+.Xr devfsadm 8
+Others, such as
+.Pa /dev/pts ,
+.Pa /dev/net ,
+and
+.Pa /dev/zvol
+are dynamic and reflect the operational state of the system.
+You can manually generate device names for newly attached hardware by invoking
+.Xr devfsadm 8
+or implicitly, by indirectly causing a lookup or readdir operation in the
+filesystem to occur.
+For example, you can discover a disk that was attached when the system was
+powered down (and generate a name for that device) by invoking
+.Xr format 8 .
+.Pp
+In a non-global zone, the
+.Nm
+filesystem is also mounted at
+.Pa /dev ;
+however, it is generally speaking read-only.
+Unlike in the global zone, a privileged user in a non-global zone cannot create
+directories or files, directories, or other objects within the filesystem.
+.Sh FILES
+.Bl -tag -width Pa
+.It Pa /dev
+Mount point for the
+.Nm
+filesystem in the global zone and non-global zones.
+.El
+.Sh SEE ALSO
+.Xr devfs 4FS ,
+.Xr devfsadm 8 ,
+.Xr format 8
+.Sh NOTES
+The global
+.Pa /dev
+instance cannot be unmounted.
diff --git a/usr/src/man/man4fs/devfs.4fs b/usr/src/man/man4fs/devfs.4fs
new file mode 100644
index 0000000000..022eb6c755
--- /dev/null
+++ b/usr/src/man/man4fs/devfs.4fs
@@ -0,0 +1,110 @@
+.\"
+.\" Copyright (c) 2004 Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 2021 Oxide compuer Company
+.\"
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.\"
+.Dd November 29, 2021
+.Dt DEVFS 4FS
+.Os
+.Sh NAME
+.Nm devfs
+.Nd Devices file system
+.Sh DESCRIPTION
+The
+.Nm
+filesystem manages a name space of all devices in the operating environment and
+is mounted during boot on the
+.Pa /devices
+name space.
+.Pp
+The
+.Pa /devices
+name space is dynamic and reflects the current state of accessible devices.
+The names of all attached device instances are present under
+.Pa /devices .
+.Pp
+The content under
+.Pa /devices
+is under the exclusive control of the
+.Nm
+filesystem and cannot be changed.
+.Pp
+The system may be configured to include a device in one of two ways:
+.Bl -enum
+.It
+By means of dynamic reconfiguration
+.Pq DR ,
+using, for example,
+.Xr cfgadm 8 .
+Several different hardware buses such as PCIe and USB automatically discover and
+enumerate devices that they encounter.
+.It
+For devices driven by
+.Xr driver.conf 5
+enumeration, edit the
+.Pa driver.conf
+file to add a new entry, then use
+.Xr update_drv 8
+to cause the system to re-read the
+.Pa driver.conf
+file and thereby enumerate the instance.
+.El
+.Pp
+The device may be attached through a number of system calls and programs,
+including
+.Xr open 2 ,
+.Xr stat 2 ,
+and
+.Xr ls 1 .
+During device attach, the device driver typically creates minor nodes
+corresponding to the device via
+.Xr ddi_create_minor_node 9F .
+If the attach is successful, one or more minor nodes referring to the device are
+created under
+.Pa /devices .
+.Pp
+Operations like
+.Xr mknod 2 ,
+.Xr mkdir 2 ,
+and
+.Xr creat 2
+are not supported in
+.Pa /devices .
+.Pp
+This file system is not present in a non-global zone.
+.Sh FILES
+.Bl -tag -width Pa
+.It Pa /devices
+Mount point for
+.Nm
+file system in the global zone.
+.El
+.Sh SEE ALSO
+.Xr vfstab 5 ,
+.Xr devfsadm 8 ,
+.Xr attach 9E
+.Sh NOTES
+The
+.Pa /devices
+name space cannot be unmounted.
+.Pp
+All content at or below the
+.Pa /devices
+name space is an implementation
+artifact and subject to incompatible change or removal without notification.
+Generally, user programs should leverage the device name space under
+.Pa /dev .
diff --git a/usr/src/man/man4fs/fd.4fs b/usr/src/man/man4fs/fd.4fs
new file mode 100644
index 0000000000..4b51bff7ac
--- /dev/null
+++ b/usr/src/man/man4fs/fd.4fs
@@ -0,0 +1,84 @@
+.\"
+.\" Copyright (c) 1993, Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 1989 AT&T
+.\" Copyright 2021 Oxide Computer Company
+.\"
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.\"
+.Dd July 3, 1990
+.Dt FD 4FS
+.Os
+.Sh NAME
+.Nm fd ,
+.Nm stdin ,
+.Nm stdout ,
+.Nm stderr
+.Nd file descriptor files
+.Sh DESCRIPTION
+These files, conventionally called
+.Pa /dev/fd/0 ,
+.Pa /dev/fd/1 ,
+.Pa /dev/fd/2 ,
+and so on, refer to files accessible through file descriptors.
+If file descriptor
+.Em n
+is open, these two system calls have the same
+effect:
+.Bd -literal -offset indent
+fd = open("/dev/fd/<n>", mode);
+fd = dup(n);
+.Ed
+.Pp
+On these files
+.Xr creat 2
+is equivalent to
+.Xr open 2 ,
+and
+.Fa mode
+is
+ignored.
+As with
+.Xr dup 2 ,
+subsequent reads or writes on
+.Em fd
+fail unless the original file descriptor allows the operations.
+.Pp
+For convenience in referring to standard input, standard output, and standard
+error, an additional set of names is provided:
+.Pa /dev/stdin
+is a synonym
+for
+.Pa /dev/fd/0 ,
+.Pa /dev/stdout
+for
+.Pa /dev/fd/1 ,
+and
+.Pa /dev/stderr
+for
+.Pa /dev/fd/2 .
+.Sh DIAGNOSTICS
+.Xr open 2
+returns
+.Sy -1
+and
+.Va errno
+is set to
+.Er EBADF
+if the associated file descriptor is not open.
+.Sh SEE ALSO
+.Xr creat 2 ,
+.Xr dup 2 ,
+.Xr open 2
diff --git a/usr/src/man/man4fs/hsfs.4fs b/usr/src/man/man4fs/hsfs.4fs
new file mode 100644
index 0000000000..9d0eb57c1e
--- /dev/null
+++ b/usr/src/man/man4fs/hsfs.4fs
@@ -0,0 +1,253 @@
+.\"
+.\" Copyright (c) 2006, Sun Microsystems, Inc.
+.\" Copyright 2021 Oxide Computer Company
+.\"
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.\"
+.Dd November 1, 2006
+.Dt HSFS 4FS
+.Os
+.Sh NAME
+.Nm hsfs
+.Nd High Sierra & ISO 9660 CD-ROM file system
+.Sh DESCRIPTION
+.Nm
+is a file system type that allows users to access files on High Sierra or ISO
+9660 format CD-ROM disks from within the SunOS operating system.
+Once mounted, a
+.Nm
+file system provides standard read-only file system operations and semantics,
+meaning that you can read and list files in a directory on a High Sierra or ISO
+9660 CD-ROM and applications can use standard UNIX system calls on these files
+and directories.
+.Pp
+This file system contains support for Rock Ridge, ISO 9660 Version 2 and Joliet
+extensions.
+These extensions provide support for file names with a length of at least 207
+bytes, but only Rock Ridge extensions
+.Pq with the exception of writability and hard links
+can provide file system semantics and file types as they are found in UFS.
+The presence of Rock Ridge, ISO 9660 Version 2, and Joliet is autodetected and
+the best-suitable available extension is used by the HSFS driver for file name
+and attribute lookup.
+.Pp
+If your
+.Pa /etc/vfstab
+file contains a line similar to the following:
+.Bd -literal
+/dev/dsk/c0t6d0s0 - /hsfs hsfs - no ro
+.Ed
+.Pp
+and
+.Pa /hsfs
+exists, you can mount an
+.Nm
+file system with either of the following commands:
+.Bd -literal -offset indent
+mount -F hsfs -o ro device-special directory-name
+.Ed
+or
+.Bd -literal -offset indent
+mount /hsfs
+.Ed
+.Pp
+By default, Rock Ridge extensions are used if available, otherwise ISO 9660
+Version 2, then Joliet are used.
+If neither extension is present HSFS defaults to the standard capabilities of
+ISO 9660.
+Since so-called hybrid CD-ROMs that contain multiple extensions are possible,
+you can use the following mount options to deliberately disable the search for a
+specific extension or to force the use of a specific extension even if a
+preferable type is present:
+.Bd -literal
+mount -F hsfs -o ro,nrr device-special directory-name
+.Ed
+.Pp
+Mount options are:
+.Bl -tag -width Ds
+.It rr
+Request HSFS to use Rock Ridge extensions, if present.
+This is the default behavior and does not need to be explicitly specified.
+.It nrr
+Disable detection and use of Rock Ridge extensions, even if present.
+.It vers2
+Request HSFS to use ISO 9660 Version 2 extensions, even if Rock Ridge is
+available.
+.It novers2
+Disable detection and use of ISO 9660 Version 2 extensions.
+.It joliet
+Request HSFS to use Joliet extensions, even if Rock Ridge or ISO 9660 Version 2
+extensions are available.
+.It nojoliet
+Disable detection and use of Joliet extensions.
+.El
+.Pp
+Files on a High Sierra or ISO 9660 CD-ROM disk have names of the form
+.Pa filename.ext;versio ,
+where
+.Fa filename
+and the optional
+.Fa ext
+consist of a sequence of uppercase alphanumeric characters
+.Po
+including
+.Sq _
+.Pc ,
+while the
+.Fa version
+consists of a sequence of digits, representing the version number of the file.
+.Nm
+converts all the uppercase characters in a file name to lowercase, and truncates
+the
+.Sq ;
+and version information.
+If more than one version of a file is present on the CD-ROM, only the file with
+the highest version number is accessible.
+.Pp
+Conversion of uppercase to lowercase characters may be disabled by using the
+.Fl o
+.Ar nomaplcase
+option to
+.Xr mount 8 .
+See
+.Xr mount_hsfs 8 .
+.Pp
+If the CD-ROM contains Rock Ridge, ISO 9660 version 2 or Joliet extensions, the
+file names and directory names may contain any character supported under
+.Xr UFS 4FS .
+The names may also be upper and/or lower case and are case sensitive.
+File name lengths can be as long as those of
+.Xr UFS 4FS .
+.Pp
+Files accessed through
+.Nm
+have mode 555
+.Pq owner, group and world readable and executable ,
+uid 0 and gid 3. If a directory on the CD-ROM has read permission,
+.Nm
+grants execute permission to the directory, allowing it to be searched.
+.Pp
+With Rock Ridge extensions, files and directories can have any permissions that
+are supported on a
+.Xr UFS 4FS
+file system.
+However, under all write permissions, the file system is read-only, with
+.Er EROFS
+returned to any write operations.
+.Pp
+Like High Sierra and ISO 9660 CD-ROMs, HSFS supports only regular files and
+directories.
+A Rock Ridge CD-ROM can support regular files, directories, and symbolic links,
+as well as device nodes, such as block, character, and FIFO.
+.Sh EXAMPLES
+.Sy Example 1
+Sample Display of File System Files
+.Pp
+If there is a file
+.Pa BIG.BAR
+on a High Sierra or ISO 9660 format CD-ROM it will show up as
+.Pa big.bar
+when listed on a
+.Nm
+file system.
+.Pp
+If there are three files
+Pa BAR.BAZ;1 ,
+Pa BBAR.BAZ;2 ,
+and
+.Pa BAR.BAZ;3
+on a High Sierra or ISO 9660 format CD-ROM, only the file
+.Pa BAR.BAZ;3
+will be accessible.
+It will be listed as
+.Pa bar.baz .
+.Sh DIAGNOSTICS
+.Bl -tag -width Ds
+.It "hsfs: Warning: the file system... does not conform to the ISO-9660 spec"
+The specific reason appears on the following line.
+You might be attempting to mount a CD-ROM containing a different file system,
+such as
+.Xr UFS 4FS
+.It "hsfs: Warning: the file system... contains a file [with an] unsupported"
+type"
+The
+.Nm
+file system does not support the format of some file or directory on the CD-ROM,
+for example a record structured file.
+.It "hsfs: hsnode table full, %d nodes allocated"
+There are not enough
+.Nm
+internal data structure elements to handle all the files currently open.
+This problem may be overcome by adding a line of the form
+.Ql set hsfs:nhsnode=number
+to the
+.Pa /etc/system
+system configuration file and rebooting.
+See
+.Xr system 5 .
+.El
+.Sh SEE ALSO
+.Xr vfstab 5 ,
+.Xr mount 8 ,
+.Xr mount_hsfs 8
+.Pp
+.Rs
+.%A N. V. Phillips
+.%A Sony Corporation
+.%T System Description Compact Disc Digital Audio, ("Red Book")
+.Re
+.Rs
+.%A N. V. Phillips
+.%A Sony Corporation
+.%T System Description of Compact Disc Read Only Memory, ("Yellow Book")
+.Re
+.Rs
+.%T Volume and File Structure of CD-ROM for Information Interchange
+.%N ISO 9660:1988(E)
+.Re
+.Sh WARNINGS
+Do not physically eject a CD-ROM while the device is still mounted as a
+.Nm
+file system.
+.Pp
+Under MS-DOS
+.Pq for which CD-ROMs are frequently targeted ,
+files with no extension may be represented either as:
+.Pa filename\&.
+or
+.Pa filename
+that is, with or without a trailing period.
+These names are not equivalent under UNIX systems.
+For example, the names:
+.Pa BAR\&.
+and
+.Pa BAR
+are not names for the same file under the UNIX system.
+This may cause confusion if you are consulting documentation for CD-ROMs
+originally intended for MS-DOS systems.
+.Pp
+Use of the
+.Fl o
+.Ar notraildot
+option to
+.Xr mount 8
+makes it optional to specify the trailing dot.
+See
+.Xr mount_hsfs 8 .
+.Sh NOTES
+No translation of any sort is done on the contents of High Sierra or ISO 9660
+format CD-ROMs; only directory and file names are subject to interpretation by
+.Nm .
diff --git a/usr/src/man/man4fs/hyprlofs.4fs b/usr/src/man/man4fs/hyprlofs.4fs
new file mode 100644
index 0000000000..6d0849cfe5
--- /dev/null
+++ b/usr/src/man/man4fs/hyprlofs.4fs
@@ -0,0 +1,62 @@
+'\" te
+.\" Copyright (c) 2012, Joyent, Inc.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH HYPRLOFS 4FS "March 7, 2012"
+.SH NAME
+hyprlofs \- fast name space virtual file system
+.SH SYNOPSIS
+.LP
+.nf
+#include <sys/fs/hyprlofs.h>
+
+\fB\fR\fBmount\fR (\fB\fR\fIspecial\fR, \fB\fR\fIdirectory\fR, \fB\fR\fIMS_DATA\fR, \fB\fR\fI"hyprlofs"\fR, \fB\fR\fINULL\fR, \fB\fR\fI0\fR);
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBhyprlofs\fR is a hybrid file system combining features from
+\fBtmpfs(4FS)\fR and \fBlofs(4FS)\fR.
+As with \fBlofs\fR, the \fBhyprlofs\fR file system allows new, virtual file
+systems to be created which provide access to existing files using alternate
+pathnames. In addition, the files themselves may have alternate names and
+paths within the mount.
+Unlike \fBlofs\fR, files cannot be created and backing files cannot be removed.
+The name space is completely managed through ioctls on the mount.
+Entries in the name space are not mounts and thus, they will not appear in the
+mnttab. The file system is designed to provide a very fast name space to the
+backing files. The name space can be modified very quickly through the ioctl
+interface.
+.sp
+.LP
+\fBhyprlofs\fR file systems can be mounted with the command:
+.sp
+.in +2
+.nf
+\fBmount \fR\fB-F\fR\fB hyprlofs swap \fR\fIdirectory\fR
+.fi
+.in -2
+
+.sp
+.LP
+The name space used by \fBhyprlofs\fR exists only in-memory so it will consume
+a small amount of the system's virtual memory. The files themselves are backed
+by the original file as with \fBlofs\fR.
+
+.SH SEE ALSO
+.sp
+.LP
+\fBmount\fR(2), \fBumount\fR(2),
+\fBdf\fR(8), \fBmount\fR(8), \fBswap\fR(8)
+.sp
+.LP
+\fISystem Administration Guide: Basic Administration\fR
+.SH DIAGNOSTICS
+.sp
+.LP
+\fBdf\fR(8) output is of limited accuracy since
+the space available to \fBhyprlofs\fR is dependent on the swap
+space demands of the entire system and the files in the name space are not
+included.
diff --git a/usr/src/man/man4fs/lofs.4fs b/usr/src/man/man4fs/lofs.4fs
new file mode 100644
index 0000000000..6a216afbc3
--- /dev/null
+++ b/usr/src/man/man4fs/lofs.4fs
@@ -0,0 +1,137 @@
+.\"
+.\" Copyright 2014 Nexenta Systems, Inc. All Rights Reserved.
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 2021 Oxide Computer Company
+.\"
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.\"
+.Dd November 24, 2014
+.Dt LOFS 4FS
+.Os
+.Sh NAME
+.Nm lofs
+.Nd loopback virtual file system
+.Sh SYNOPSIS
+.In sys/param.h
+.In sys/mount.h
+.Ft int
+.Fo mount
+.Fa "const char *dir"
+.Fa "const char *virtual"
+.Fa "int mflag"
+.Fa \(dqlofs\(dq ,
+.Fa NULL ,
+.Fa 0
+.Fc
+.Sh DESCRIPTION
+The loopback file system device allows new, virtual file systems to be created,
+which provide access to existing files using alternate pathnames.
+Once the virtual file system is created, other file systems can be mounted
+within it, without affecting the original file system.
+However, file systems which are subsequently mounted onto the original file
+system
+.Em are
+visible to the virtual file system, unless or until the corresponding mount
+point in the virtual file system is covered by a file system mounted there.
+.Pp
+.Fa virtual
+is the mount point for the virtual file system.
+.Fa dir
+is the pathname of the existing file system.
+.Fa mflag
+specifies the mount options; the
+.Dv MS_DATA
+bit in
+.Fa mflag
+must be set.
+If the
+.Dv MS_RDONLY
+bit in
+.Fa mflag
+is not set, accesses to the loop back file system are the same as for the
+underlying file system.
+Otherwise, all accesses in the loopback file system will be read-only.
+All other
+.Xr mount 2
+options are inherited from the underlying file systems.
+.Pp
+A loopback mount of
+.Pa /
+onto
+.Pa /tmp/newroot
+allows the entire file system hierarchy to appear as if it were duplicated under
+.Pa /tmp/newroot ,
+including any file systems mounted from remote NFS servers.
+All files would then be accessible either from a pathname relative to
+.Pa /
+or from a pathname relative to
+.Pa /tmp/newroot
+until such time as a file system is mounted in
+.Pa /tmp/newroot
+or any of its subdirectories.
+.Pp
+Loopback mounts of
+.Pa /
+can be performed in conjunction with the
+.Xr chroot 2
+system call, to provide a complete virtual file system to a process or family of
+processes.
+.Pp
+Recursive traversal of loopback mount points is not allowed.
+After the loopback mount of
+.Pa /tmp/newroot ,
+the file
+.Pa /tmp/newroot/tmp/newroot
+does not contain yet another file system hierarchy; rather, it appears just as
+.Pa /tmp/newroot
+did before the loopback mount was performed
+.Pq for example, as an empty directory .
+.Sh EXAMPLES
+.Nm
+file systems are mounted using:
+.Bd -literal -offset indent
+mount -F lofs /tmp /mnt
+.Ed
+.Sh SEE ALSO
+.Xr chroot 2 ,
+.Xr mount 2 ,
+.Xr sysfs 2 ,
+.Xr lofi 4D ,
+.Xr vfstab 5 ,
+.Xr lofiadm 8 ,
+.Xr mount 8
+.Sh NOTES
+All access to entries in
+.Nm
+mounted file systems map to their underlying file system.
+If a mount point is made available in multiple locations via
+.Nm
+and is busy in any of those locations, an attempt to mount a file system at that
+mount point fails unless the overlay flag is specified.
+See
+.Xr mount 8 .
+Examples of a mount point being busy within a
+.Nm
+mount include having a file system mounted on it or it being a processes'
+current working directory.
+.Sh WARNINGS
+Because of the potential for confusing users and applications, you should use
+loopback mounts with care.
+A loopback mount entry in
+.Pa /etc/vfstab
+must be placed after the mount points of both directories it depends on.
+This is most easily accomplished by making the loopback mount entry the last in
+.Pa /etc/vfstab .
diff --git a/usr/src/man/man4fs/lxproc.4fs b/usr/src/man/man4fs/lxproc.4fs
new file mode 100644
index 0000000000..25e5a3d9fc
--- /dev/null
+++ b/usr/src/man/man4fs/lxproc.4fs
@@ -0,0 +1,115 @@
+'\" te
+.\" Copyright (c) 2012, Joyent, Inc.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH LXPROC 4FS "April 25, 2012"
+.SH NAME
+lxproc \- a loosely Linux-compatible /proc
+.SH SYNOPSIS
+.LP
+.nf
+\fB\fR\fBmount\fR (\fB\fR\fI"lxproc"\fR, \fB\fR\fIdirectory\fR, \fB\fR\fIMS_DATA\fR, \fB\fR\fI"lxproc"\fR, \fB\fR\fINULL\fR, \fB\fR\fI0\fR);
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBlxproc\fR is an implementation of the \fB/proc\fR filesystem that
+loosely matches the Linux semantics of providing human-readable text files
+that correspond to elements of the system.
+As with both \fBproc\fR(5) and Linux \fB/proc\fR, \fBlxproc\fR makes available
+a directory for every process, with each directory containing a number
+of files; like Linux \fB/proc\fR but unlike \fBproc\fR(5), \fBlxproc\fR also
+makes available a number of files related to system-wide information.
+To ascertain the meaning and structure of the files provided via
+\fBlxproc\fR, users should consult the Linux documentation.
+.sp
+.LP
+The \fBlxproc\fR compatibility layer is
+provided only as a best-effort for simple Linux \fB/proc\fR readers; it
+is not intended to exactly mimic Linux semantics and nor does it attempt to
+somehow fool a consumer into believing that it is operating within a Linux
+environment. As such, \fBlxproc\fR should only be used by Linux-specific
+programs that are willing to trade precision in understanding the
+system in return for Linux compatibility. To programmatically understand
+the system precisely and in terms of its native constructs,
+one should not use \fBlxproc\fR, but rather \fBproc\fR(5) or
+\fBkstat\fR(3KSTAT).
+To understand
+a process or group of processes from either a shell script or the command line,
+one should not use \fBlxproc\fR, but rather \fBproc\fR(5)-based tools like
+\fBprstat\fR(8),
+\fBpfiles\fR(1),
+\fBpargs\fR(1),
+\fBpmap\fR(1),
+\fBptree\fR(1),
+\fBplimit\fR(1),
+\fBpflags\fR(1),
+\fBpcred\fR(1),
+\fBpstack\fR(1),
+\fBpldd\fR(1),
+\fBpsig\fR(1),
+or
+\fBpwdx\fR(1).
+To understand system-wide constructs from either a shell script or the
+command line, one should not use \fBlxproc\fR, but rather
+\fBkstat\fR(3KSTAT)-based tools like
+\fBkstat\fR(8),
+\fBmpstat\fR(8),
+\fBiostat\fR(8),
+\fBnetstat\fR(8) or
+\fBpsrinfo\fR(8).
+.sp
+.LP
+Like \fB/proc\fR, \fBlxproc\fR can be mounted on any mount point, but the
+preferred mount point is \fB/system/lxproc\fR; if a zone brand elects to
+mount it by default, this will (or should) generally be the mount point.
+.sp
+.LP
+\fBlxproc\fR can be mounted with the command:
+.sp
+.in +2
+.nf
+\fBmount \fR\fB-F\fR\fB lxproc lxproc \fR\fIdirectory\fR
+.fi
+.in -2
+
+.SH SEE ALSO
+.sp
+.LP
+\fBdf\fR(8),
+\fBiostat\fR(8),
+\fBkstat\fR(8),
+\fBmpstat\fR(8),
+\fBmount\fR(8),
+\fBnetstat\fR(8),
+\fBpargs\fR(1),
+\fBpcred\fR(1),
+\fBpfiles\fR(1),
+\fBpflags\fR(1),
+\fBpldd\fR(1),
+\fBplimit\fR(1),
+\fBpmap\fR(1),
+\fBprstat\fR(8),
+\fBpsig\fR(1),
+\fBpsrinfo\fR(8),
+\fBpstack\fR(1),
+\fBptree\fR(1),
+\fBpwdx\fR(1),
+\fBmount\fR(2), \fBumount\fR(2), \fBkstat\fR(3KSTAT), \fBproc\fR(5),
+\fBkstat\fR(9S)
+
+.SH NOTES
+.sp
+.LP
+When choosing between offering
+Linux compatibility and telling the truth, \fBlxproc\fR emphatically picks
+the truth. A particular glaring example of this is the Linux notion of
+"tasks" (that is, threads), which -- due to historical misadventures on
+Linux -- allocate their identifiers from the process identifier space.
+(That is, each thread has in effect a pid.) Some Linux \fB/proc\fR readers
+have come to depend on this attribute, and become confused when threads
+appear with proper identifiers, so \fBlxproc\fR simply opts for the pre-2.6
+behavior, and does not present the tasks directory at all.
+
diff --git a/usr/src/man/man4fs/objfs.4fs b/usr/src/man/man4fs/objfs.4fs
new file mode 100644
index 0000000000..c20f2a86c3
--- /dev/null
+++ b/usr/src/man/man4fs/objfs.4fs
@@ -0,0 +1,62 @@
+.\"
+.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 2021 Oxide Computer Company
+.\"
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.\"
+.Dd November 29, 2021
+.Dt OBJFS 4FS
+.Os
+.Sh NAME
+.Nm objfs
+.Nd Kernel object filesystem
+.Sh DESCRIPTION
+The
+.Nm
+filesystem describes the state of all modules currently loaded
+by the kernel.
+It is mounted during boot at
+.Pa /system/object .
+.Pp
+The contents of the filesystem are dynamic and reflect the current state of the
+system.
+Each module is represented by a directory containing a single file,
+.Sq object' .
+The object file is a read only ELF file which contains information about the
+object loaded in the kernel.
+.Pp
+The kernel may load and unload modules dynamically as the system runs.
+As a result, applications may observe different directory contents in
+.Pa /system/object
+if they repeatedly rescan the directory.
+If a module is unloaded, its associated
+.Pa /system/object
+files disappear from the hierarchy and subsequent attempts to open them, or to
+read files opened before the module unloaded, elicits an error.
+.Pp
+This file system is generally not present in a non-global zone.
+.Sh FILES
+.Bl -tag -width Pa
+.It Pa /system/object
+Mount point for objfs file system in the global zone.
+.El
+.Sh Interface Stability
+.Sy Private
+.Sh SEE ALSO
+.Xr vfstab 5
+.Sh NOTES
+The content of the ELF files is private to the implementation and subject to
+change without notice.
diff --git a/usr/src/man/man4fs/pcfs.4fs b/usr/src/man/man4fs/pcfs.4fs
new file mode 100644
index 0000000000..2b51e2032b
--- /dev/null
+++ b/usr/src/man/man4fs/pcfs.4fs
@@ -0,0 +1,540 @@
+.\"
+.\" Copyright (c) 2007 Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 2021 Oxide Computer Company
+.\"
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.\"
+.Dd November 29, 2021
+.Dt PCFS 4FS
+.Os
+.Sh NAME
+.Nm pcfs
+.Nd FAT formatted file system
+.Sh SYNOPSIS
+.In sys/param.h
+.In sys/mount.h
+.In sys/fs/pc_fs.h
+.Ft int
+.Fo mount
+.Fa "const char *spec"
+.Fa "const char *dir"
+.Fa "int mflag"
+.Fa \(dqpcfs\(dq
+.Fa NULL
+.Fa 0
+.Fa "const char *optptr"
+.Fa "int optlen"
+.Fc
+.Sh DESCRIPTION
+.Nm
+is a file system type that enables direct access to files on FAT formatted disks
+from within the SunOS operating system.
+.Pp
+Once mounted,
+.Nm
+provides standard file operations and semantics.
+Using
+.Nm
+you can create, delete, read, and write files on a FAT formatted disk.
+You can also create and delete directories and list files in a directory.
+.Pp
+.Nm
+supports FAT12 (floppies) and FAT16 and FAT32 file systems.
+.Pp
+.Nm
+file systems can be force umounted using the
+.Fl -f
+argument to
+.Xr umount 8 .
+.Pp
+The
+.Nm
+file system contained on the block special file identified by
+.Fa spec
+is mounted on the directory identified by
+.Fa dir .
+.Fa spec
+and
+.Fa dir
+are pointers to pathnames.
+.Fa mflag
+specifies the
+.Fa mount
+options.
+The
+.Dv MS_DATA
+bit in
+.Fa mflag
+must be set.
+Mount options can be passed to
+.Nm
+using the optptr and optlen arguments.
+See
+.Xr mount_pcfs 8
+for a list of mount options supported by
+.Nm
+.Pp
+Because FAT formatted media can record file timestamps between January 1st 1980
+and December 31st 2127, it's not possible to fully represent UNIX
+.Vt time_t
+in
+.Nm
+for 32 bit or 64 bit programs.
+In particular, if post-2038 timestamps are present on a FAT formatted medium and
+.Nm
+returns these, 32bit applications may unexpectedly fail with
+.Er EOVERFLOW
+errors.
+To prevent this, the default behaviour of
+.Nm
+has been modified to clamp
+post-2038 timestamps to the latest possible value for a 32bit
+.Vt time_t ,
+which is January 19th 2038, 03:14:06 UTC when setting and retrieving file
+timestamps.
+You can override this behavior using the
+.Ar noclamptime
+mount option, as described in
+.Xr mount_pcfs 8 .
+.Pp
+Timestamps on FAT formatted media are recorded in local time.
+If the recording and receiving systems use different timezones, the
+representation of timestamps shown on the two systems for the same medium might
+vary.
+To correct this,
+.Nm
+provides a timezone mount option to force interpretation
+of timestamps as read from a FAT formatted medium in a given timezone
+.Pq that of the recorder .
+By default, the local timezone of the receiver is used.
+See
+.Xr mount_pcfs 8
+for details.
+.Pp
+The root directory of a FAT formatted medium has no timestamps and
+.Nm
+returns the time when the mount was done as timestamp for the root of the
+filesystem.
+.Pp
+The FAT filesystem doesn't support multiple links.
+As a result, the link count
+for all files and directories in
+.Nm
+is hard-coded as
+.Dq 1 .
+.Ss Mounting File Systems
+Use the following command to mount
+.Nm
+from diskette:
+.Bd -literal -offset indent
+mount -F pcfs device-special directory-name
+.Ed
+.Pp
+You can use:
+.Bd -literal -offset indent
+mount directory-name
+.Ed
+if the following line is in your
+.Pa /etc/vfstab
+file:
+.Bd -literal -offset indent
+device-special - directory-name pcfs - no rw
+.Ed
+.Pp
+Use the following command to mount
+.Nm
+from non-diskette media:
+.Bd -literal -offset indent
+mount -F pcfs device-special:logical-drive directory-name
+.Ed
+.Pp
+You can use:
+.Bd -literal -offset indent
+mount directory-name
+.Ed
+if the following line is in your
+.Pa /etc/vfstab
+file:
+.Bd -literal -offset indent
+device-special:logical_drive - directory-name pcfs - no rw
+.Ed
+.Pp
+.Ar device-special
+specifies the special block device file for the diskette
+.Pq Pa /dev/disketteN
+or the entire hard disk
+.Po
+Pa /dev/dsk/cNtNdNp0
+for a SCSI, SATA, NVME disk, and
+.Pa /dev/dsk/cNdNp0
+for IDE disks
+.Pc
+or the PCMCIA pseudo-floppy memory card
+.Pq Pa /dev/dsk/cNtNdNsN .
+.Pp
+.Ar logical-drive
+specifies either the DOS logical drive letter
+.Po
+.Sy c
+through
+.Sy z
+.Pc
+or a drive number
+.Pq 1 through 24 .
+Drive letter
+.Sy c
+is equivalent to drive number
+.Sy 1
+and represents the Primary DOS partition on the disk; drive letters
+.Sy d
+through
+.Sy z
+are equivalent to drive numbers
+.Sy 2
+through
+.Sy 24 ,
+and represent DOS drives within the Extended FAT partition.
+Note that
+.Ar device-special
+and
+.Ar logical-drive
+must be separated by a colon.
+.Pp
+.Ar directory-name
+specifies the location where the file system is mounted.
+.Pp
+For example, to mount the Primary DOS partition from a SCSI hard disk,
+use:
+.Bd -literal -offset indent
+mount -F pcfs /dev/dsk/cNtNdNp0:c /pcfs/c
+.Ed
+.Pp
+To mount the first logical drive in the Extended DOS partition from an IDE hard
+disk, use:
+.Bd -literal -offset indent
+mount -F pcfs /dev/dsk/cNdNp0:d /pcfs/d
+.Ed
+.Pp
+To mount a DOS diskette in the first floppy drive when volume management is not
+running use:
+.Bd -literal -offset indent
+mount -F pcfs /dev/diskette /pcfs/a
+.Ed
+.Pp
+If Volume Management is running, run
+.Xr volcheck 1
+to automatically mount the floppy and some removable disks.
+.Pp
+To mount a PCMCIA pseudo-floppy memory card, with Volume Management not running
+.Pq or not managing the PCMCIA media ,
+use:
+.Bd -literal -offset indent
+mount -F pcfs /dev/dsk/cNtNdNsN /pcfs
+.Ed
+.Ss "Conventions"
+Files and directories created through
+.Nm
+must comply with either the FAT short file name convention or the long file name
+convention introduced with Windows 95.
+The FAT short file name convention is of the form
+.Pa filename[.ext] ,
+where
+.Em filename
+generally consists of from one to eight upper-case characters, while the
+optional
+.Em ext
+consists of from one to three upper-case characters.
+.Pp
+The long file name convention is much closer to illumos file names.
+A long file name can consist of any characters valid in a short file name,
+lowercase letters, non-leading spaces, the characters
+.Sy +,;=[] ,
+any number of periods, and can be up to 255 characters long.
+Long file names have an associated short file name for systems that do not
+support long file names.
+The short file name is not visible if the system recognizes long file names.
+.Nm
+generates a unique short name automatically when creating a long file name.
+.Pp
+Given a long file name such as
+.Pa This is a really long filename.TXT ,
+the short file name will generally be of the form
+.Pa THISIS~N\&.TXT ,
+where
+.Em N
+is a number.
+The long file name will probably get the short name
+.Pa THISIS~1.TXT ,
+or
+.Pa THISIS~2.TXT
+if
+.Pa THISIS~1.TXT
+already exits
+.Po or
+.Pa THISIS~3.TXT
+if both exist, and so forth
+.Pc .
+If you use
+.Nm
+file systems on systems that do not support long file names, you may want to
+continue following the short file name conventions.
+See
+.Sx EXAMPLES .
+.Pp
+When creating a file name,
+.Nm
+creates a short file name if it fits the FAT short file name format, otherwise
+it creates a long file name.
+This is because long file names take more directory space.
+Because the root directory of a
+.Nm
+file system is fixed size, long file names in the root directory should be
+avoided if possible.
+.Pp
+When displaying file names,
+.Nm
+shows them exactly as they are on the media.
+This means that short names are displayed as uppercase and long file names
+retain their case.
+Earlier versions of
+.Nm
+folded all names to lowercase, which can be forced with the
+.Dv PCFS_MNT_FOLDCASE
+mount option.
+All file name searches within
+.Nm ,
+however, are treated as if they were uppercase, so
+.Pa readme.txt
+and
+.Pa ReAdMe.TxT
+refer to the same file.
+.Pp
+To format a diskette or a PCMCIA pseudo-floppy memory card in FAT format in the
+SunOS system, use either the
+.Xr fdformat 1
+.Fl -d
+or the DOS
+.Sy FORMAT
+command.
+.Ss Boot Partitions
+On x86 systems, hard drives may contain an fdisk partition reserved for the boot
+utilities.
+The most common case is the EFI system partition.
+These partitions are special instances of
+.Nm .
+You can mount an x86 boot partition with the command:
+.Bd -literal -offset indent
+mount -F pcfs device-special:boot directory-name
+.Ed
+or you can use:
+.Bd -literal -offset indent
+mount directory-name
+.Ed
+if the following line is in your
+.Pa /etc/vfstab
+file:
+.Bd -literal -offset indent
+device-special:boot - directory-name pcfs - no rw
+.Ed
+.Pp
+.Ar device-special
+specifies the special block device file for the entire hard disk
+.Pq Pa /dev/dsk/cNtNdNp0
+.Pp
+.Ar directory-name
+specifies the location where the file system is mounted.
+.Pp
+All files on a boot partition are owned by super-user.
+Only the super-user may create, delete, or modify files on a boot partition.
+.Sh ENVIRONMENT
+See
+.Xr environ 7
+for descriptions of the following environment variables
+for the current locale setting:
+.Ev LANG ,
+.Ev LC_ALL ,
+.Ev LC_CTYPE ,
+and
+.Ev LC_COLLATE .
+.Sh FILES
+.Bl -tag -width Pa
+.It Pa /usr/lib/fs/pcfs/mount
+.Nm
+mount command.
+.It Pa /usr/kernel/fs/amd64/pcfs
+64-bit kernel module (x86).
+.El
+.Sh EXAMPLES
+.Sy Example 1
+Sample Displays of File Names
+.Pp
+If you copy a file
+.Pa financial.data
+from a UNIX file system to
+.Nm ,
+it displays as
+.Pa financial.data
+in
+.Nm
+but may show up as
+.Pa FINANC~1.DAT
+in systems that do not support long file names.
+.Pp
+The following are legal long file names.
+They are also illegal short file names:
+.Bl -item -offset indent
+.It
+.Pa test.sh.orig
+.It
+.Pa data+
+.El
+.Pp
+Other systems that do not support long file names may see:
+.Bl -item -offset indent
+.It
+.Pa TESTSH~1.ORI
+.It
+.Pa DATA~1
+.It
+.Pa LOGIN~1
+.El
+The short file name is generated from the initial characters of the long file
+name, so differentiate names in the first few characters.
+For example, these names:
+.Bl -item -offset indent
+.It
+.Pa WorkReport.January.Data
+.It
+.Pa WorkReport.February.Data
+.It
+.Pa WorkReport.March.Data
+.El
+result in these short names, which are not distinguishable:
+.Bl -item -offset indent
+.It
+.Pa WORKRE~1.DAT
+.It
+.Pa WORKRE~2.DAT
+.It
+.Pa WORKRE~2.DAT
+.It
+.Pa WORKRE~2.DAT
+.It
+.Pa WORKRE~13.DAT
+.El
+.Pp
+These names, however:
+.Bl -item -offset indent
+.It
+.Pa January.WorkReport.Data
+.It
+.Pa February.WorkReport.Data
+.It
+.Pa March.WorkReport.Data
+.El
+result in the more descriptive short names:
+.Bl -item -offset indent
+.It
+.Pa JANUAR~1.DAT
+.It
+.Pa FEBRUA~1.DAT
+.It
+.Pa MARCHW~1.DAT
+.El
+.Sh SEE ALSO
+.Xr chgrp 1 ,
+.Xr chown 1 ,
+.Xr dos2unix 1 ,
+.Xr eject 1 ,
+.Xr fdformat 1 ,
+.Xr unix2dos 1 ,
+.Xr volcheck 1 ,
+.Xr ctime 3C ,
+.Xr vfstab 5 ,
+.Xr environ 7 ,
+.Xr mount 8 ,
+.Xr mount_pcfs 8 ,
+.Xr umount 8
+.Sh WARNINGS
+Do not physically eject a FAT floppy while the device is mounted as
+.Nm
+If Volume Management is managing a device, use the
+.Xr eject 1
+command before physically removing media.
+.Pp
+When mounting
+.Nm
+on a hard disk, make sure the first block on that device contains a valid fdisk
+partition table.
+.Pp
+Because
+.Nm
+has no provision for handling owner-IDs or group-IDs on files,
+.Xr chown 1
+or
+.Xr chgrp 1
+may generate various errors.
+This is a limitation of
+.Nm
+but it should not cause problems other than error messages.
+.Sh NOTES
+Only the following characters are allowed in
+.Nm
+short file names and extensions:
+.Bl -item -offset indent
+.It
+0-9
+.It
+A-Z
+.It
+$#&@!%()-{}<>`_^~|'
+.It
+.El
+illumos and FAT use different character sets and have different
+requirements for the text file format.
+Use the
+.Xr dos2unix 1
+and
+.Xr unix2dos 1
+commands to convert files between them.
+.Pp
+.Nm
+offers a convenient transportation vehicle for files between multiple systems.
+Because the FAT disk format was designed for use under DOS, it does not operate
+efficiently under illumos and should not be used as the format for a regular
+local storage.
+Instead, use ZFS for local storage within an illumos system.
+.Pp
+Although long file names can contain spaces
+(just as in UNIX file names) ,
+some utilities may be confused by them.
+.Pp
+When
+.Nm
+encounters long file names with non-ASCII characters, it converts such long file
+names in Unicode scalar values into UTF-8 encoded filenames so that they are
+legible and usable with any of illumos UTF-8 locales.
+In the same context, when new file names with non-ASCII characters are created,
+.Nm
+expects that such file names are in UTF-8.
+This feature increases the interoperability of
+.Nm
+on illumos with other operating
+systems.
+.Sh BUGS
+.Nm
+should handle the disk change condition in the same way that DOS does, so you do
+not need to unmount the file system to change floppies.
diff --git a/usr/src/man/man4fs/sharefs.4fs b/usr/src/man/man4fs/sharefs.4fs
new file mode 100644
index 0000000000..384fbf8ef1
--- /dev/null
+++ b/usr/src/man/man4fs/sharefs.4fs
@@ -0,0 +1,61 @@
+.\"
+.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 2021 Oxide Computer Company
+.\"
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.\"
+.\" Copyright 2020 Joyent, Inc.
+.\" Copyright 2021 Oxide Computer Company
+.Dd February 4, 2020
+.Dt SHAREFS 4FS
+.Os
+.Sh NAME
+.Nm sharefs
+.Nd Kernel sharetab filesystem
+.Sh DESCRIPTION
+The
+.Nm
+filesystem describes the state of all shares currently loaded by the kernel, and
+shared by the invoking zone.
+It is mounted during boot time as a read-only file at
+.Pa /etc/dfs/sharetab .
+.Pp
+Filesystem contents are dynamic and reflect the current set of shares in the
+zone.
+File contents are described in
+.Xr sharetab 5 .
+.Pp
+File contents can be modified as a result of
+.Xr share 8 ,
+.Xr sharectl 8 ,
+.Xr sharemgr 8 ,
+and changing properties of a
+.Xr zfs 8
+data set.
+.Pp
+The module may not be unloaded dynamically by the kernel.
+.Sh FILES
+.Bl -tag -width Pa
+.It Pa /etc/dfs/sharetab
+System record of shared file systems.
+.El
+.Sh SEE ALSO
+.Xr sharetab 5 ,
+.Xr zones 7 ,
+.Xr share 8 ,
+.Xr sharectl 8 ,
+.Xr sharemgr 8 ,
+.Xr zfs 8
diff --git a/usr/src/man/man4fs/smbfs.4fs b/usr/src/man/man4fs/smbfs.4fs
new file mode 100644
index 0000000000..ddb368da6e
--- /dev/null
+++ b/usr/src/man/man4fs/smbfs.4fs
@@ -0,0 +1,151 @@
+.\"
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 2021 Oxide Computer Company
+.\"
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.\"
+.Dd September 9, 2009
+.Dt SMBFS 4FS
+.Os
+.Sh NAME
+.Nm smbfs
+.Nd CIFS/SMB file system
+.Sh DESCRIPTION
+The
+.Nm
+file system allows you to mount CIFS shares that are exported from Windows or
+compatible systems.
+SMB is the historical name for the CIFS protocol, which stands for Server
+Message Block and is more commonly used in technical contexts.
+.Pp
+The
+.Nm
+file system permits ordinary UNIX applications to change directory into an
+.Nm
+mount and perform simple file and directory operations.
+Supported operations include
+.Xr open 2 ,
+.Xr close 2 ,
+.Xr read 2 ,
+.Xr write 2 ,
+.Xr rename 2 ,
+.Xr rm 1 ,
+.Xr mkdir 1 ,
+.Xr rmdir 1 ,
+and
+.Xr ls 1 .
+.Ss Limitations
+Some local UNIX file systems
+.Pq for example UFS
+have features that are not supported by
+.Nm .
+These include:
+.Bl -bullet -offset indent
+.It
+No mapped-file access because
+.Xr mmap 2
+returns
+.Er ENOSYS .
+.It
+Locking is
+.Sy local only
+and is not sent to the server.
+.El
+.Pp
+The following are limitations in the CIFS protocol:
+.Bl -bullet -offset indent
+.It
+.Xr unlink 2
+or
+.Xr rename 2
+of open files returns
+Er EBUSY .
+.It
+.Xr rename 2
+of extended attribute files returns
+.Er EINVAL .
+.It
+Creation of files with any of the following illegal characters returns
+.Er EINVAL :
+colon
+.Pq \&: ,
+backslash
+.Pq \e ,
+slash
+.Pq / ,
+asterisk
+.Pq * ,
+question mark
+.Pq \&? ,
+double quote
+.Pq \(dq ,
+less than
+.Pq \(la ,
+greater than
+.Pq \(ra ,
+and vertical bar
+.Pq | .
+.It
+.Xr chmod 2
+and
+.Xr chown 2
+settings are silently discarded.
+.It
+Links are not supported.
+.It
+Symbolic links are not supported.
+.It
+.Xr mknod 2
+is not supported.
+.Pq Only file and directory objects are supported.
+.El
+.Pp
+The current
+.Nm
+implementation does not support multi-user mounts.
+Instead, each Unix user needs to make their own private mount points.
+.Pp
+Currently, all access through an
+.Nm
+mount point uses the Windows credentials established by the user that ran the
+.Xr mount 8
+command.
+Normally, permissions on
+.Nm
+mount points should be
+.Sy 0700
+to prevent Unix users from using each others' Windows credentials.
+See the
+.Ar dirperms
+option to
+.Xr mount_smbfs 8
+for details regarding how to control
+.Nm
+mount point permissions.
+.Pp
+An important implication of this limitation is that system-wide mounts, such as
+those made using
+.Pa /etc/vfstab
+or automount maps are only useful in cases where access control is not a
+concern, such as for public read-only resources.
+.Sh INTERFACE STABILITY
+.Sy Uncommitted
+.Sh SEE ALSO
+.Xr smbutil 1 ,
+.Xr nsmbrc 5 ,
+.Xr attributes 7 ,
+.Xr mount 8 ,
+.Xr mount_smbfs 8
diff --git a/usr/src/man/man4fs/tmpfs.4fs b/usr/src/man/man4fs/tmpfs.4fs
new file mode 100644
index 0000000000..ee3bdfd777
--- /dev/null
+++ b/usr/src/man/man4fs/tmpfs.4fs
@@ -0,0 +1,190 @@
+.\"
+.\" Copyright (c) 1990, Sun Microsystems, Inc.
+.\" Copyright 2021 Oxide Computer Company
+.\"
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.\"
+.Dd October 9, 1990
+.Dt TMPFS 4FS
+.Os
+.Sh NAME
+.Nm tmpfs
+.Nd memory based file system
+.Sh SYNOPSIS
+.In sys/mount.h
+.Fo mount
+.Fa "const char *special"
+.Fa "const char *directory"
+.Fa IMS_DATA
+.Fa \(dqtmpfs\(dq
+.Fa NULL
+.Fa 0
+.Fc
+.Sh DESCRIPTION
+.Nm
+is a memory based file system which uses kernel resources relating to the VM
+system and page cache as a file system.
+Once mounted, a
+.Nm
+file system provides standard file operations and semantics.
+.Nm
+is so named because files and directories are not preserved across
+reboot or unmounts, all files residing on a
+.Nm
+file system that is unmounted will be lost.
+.Pp
+.Nm
+file systems can be mounted with the command:
+.Bd -literal -offset indent
+mount -F tmpfs swap directory
+.Ed
+.Pp
+Alternatively, to mount a
+.Nm
+file system on
+.Pa /tmp
+at multi-user startup time
+.Pq maximizing possible performance improvements ,
+add the following line to
+.Pa /etc/vfstab :
+.Bd -literal -offset indent
+swap \(mi/tmp tmpfs \(mi yes \(mi
+.Ed
+.Pp
+.Nm
+is designed as a performance enhancement which is achieved by caching the writes
+to files residing on a
+.Nm
+file system.
+Performance improvements are most noticeable when a large number of short lived
+files are written and accessed on a
+.Nm
+file system.
+Large compilations with
+.Nm
+mounted on
+.Pa /tmp
+are a good example of this.
+.Pp
+Users of
+.Nm
+should be aware of some constraints involved in mounting a
+.Nm
+file system.
+The resources used by
+.Nm
+are the same as those used when commands are executed
+.Pq for example, swap space allocation .
+This means that large sized
+.Nm
+files can affect the amount of space left over for programs to execute.
+Likewise, programs requiring large amounts of memory use up the space available
+to
+.Nm
+Users running into this constraint
+.Po
+for example, running out of space on
+.Nm
+.Pc
+can allocate more swap space by using the
+.Xr swap 8
+command.
+.Pp
+Another constraint is that the number of files available in a
+.Nm
+file system is calculated based on the physical memory of the machine and not
+the size of the swap device/partition.
+If you have too many files,
+.Nm
+will print a warning message and you will be unable to create new files.
+You cannot increase this limit by adding swap space.
+.Pp
+Normal file system writes are scheduled to be written to a permanent storage
+medium along with all control information associated with the file
+.Pq for example, modification time, file permissions .
+.Nm
+control information resides only in memory and never needs to be written to
+permanent storage.
+File data remains in core until memory demands are sufficient to cause pages
+associated with
+.Nm
+to be reused at which time they are copied out to swap.
+.Pp
+An additional mount option can be specified to control the size of an individual
+.Nm
+file system.
+See
+.Xr mount_tmpfs 8
+for more details.
+.Sh DIAGNOSTICS
+If
+.Nm
+runs out of space, one of the following messages will display in the console.
+.Bl -tag -width Ds
+.It "directory: File system full, swap space limit exceeded"
+This message appears because a page could not be allocated while writing to a
+file.
+This can occur if
+.Nm
+is attempting to write more than it is allowed, or if currently executing
+programs are using a lot of memory.
+To make more space available, remove unnecessary files, exit from some programs,
+or allocate more swap space using
+.Xr swap 8 .
+.It "directory: File system full, memory allocation failed"
+.Nm
+ran out of physical memory while attempting to create a new file or
+directory.
+Remove unnecessary files or directories or install more physical memory.
+.El
+.Sh SEE ALSO
+.Xr mmap 2 ,
+.Xr mount 2 ,
+.Xr umount 2 ,
+.Xr vfstab 5 ,
+.Xr df 8 ,
+.Xr mount 8 ,
+.Xr mount_tmpfs 8 ,
+.Xr swap 8
+.Sh WARNINGS
+Files and directories on a
+.Nm
+file system are not preserved across reboots or unmounts.
+Command scripts or programs which count on this will not work as expected.
+.Sh NOTES
+Compilers do not necessarily use
+/tmp
+to write intermediate files therefore missing some significant performance
+benefits.
+This can be remedied by setting the environment variable
+.Ev TMPDIR to
+.Pa /tmp .
+Compilers use
+the value in this environment variable as the name of the directory to store
+intermediate files.
+.Pp
+.Sy swap
+to a
+.Nm
+file is not supported.
+.Pp
+.Xr df 8
+output is of limited accuracy since a
+.Nm
+file system size
+is not static and the space available to
+.Nm
+is dependent on the swap space demands of the entire system.
diff --git a/usr/src/man/man4fs/udfs.4fs b/usr/src/man/man4fs/udfs.4fs
new file mode 100644
index 0000000000..df5a3da979
--- /dev/null
+++ b/usr/src/man/man4fs/udfs.4fs
@@ -0,0 +1,102 @@
+.\"
+.\" Copyright (c) 1999 Sun Microsystems, Inc.
+.\" All Rights Reserved.
+.\" Copyright 2021 Oxide Computer Company
+.\"
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.\"
+.Dd June 20, 2021
+.Dt UDFS 4FS
+.Os
+.Sh NAME
+.Nm udfs
+.Nd universal disk format file system
+.Sh DESCRIPTION
+The
+.Nm
+file system is a file system type that allows user access to files on Universal
+Disk Format (UDF) disks from within illumos.
+Once mounted, a
+.Nm
+file system provides standard file system operations and semantics.
+That is, users can read files, write files, and list files in a directory on a
+UDF device and applications can use standard UNIX system calls on these files
+and directories.
+.Pp
+Because
+.Nm
+is a platform-independent file system, the same media can be written to and read
+from by any operating system or vendor.
+.Ss "Mounting File Systems"
+.Nm
+file systems are mounted using:
+.Bd -literal -offset indent
+mount -F udfs -o rw/ro device-special
+.Ed
+.Pp
+Use:
+.Bd -literal -offset indent
+mount /udfs
+.Ed
+if the
+.Nm
+and device special file
+.Pa /dev/dsk/c0t6d0s0
+are valid and the following line
+.Pq or similar line
+appears in your
+Pa /etc/vfstab
+file:
+.Bd -literal -offset indent
+/dev/dsk/c0t6d0s0 - /udfs udfs - no ro
+.Ed
+.Pp
+The
+.Nm
+file system provides read-only support for ROM, RAM, and sequentially-recordable
+media and read-write support on RAM media.
+.Pp
+The
+.Nm
+file system also supports regular files, directories, and symbolic links, as
+well as device nodes such as block, character, FIFO, and Socket.
+.Sh SEE ALSO
+.Xr vfstab 5 ,
+.Xr mount 8 ,
+.Xr mount_udfs 8
+.Sh NOTES
+Invalid characters such as
+.Dq \e0
+and
+.Dq /
+and invalid file names
+such as
+.Dq \ .
+.Dq \&.
+and
+.Dq \&.\&.
+will be translated according to the following rule:
+.Pp
+Replace the invalid character with an
+.Dq _ ,
+then append the file name with
+.Dq #
+followed by a 4 digit hex representation of the 16-bit CRC of the original
+.Sy FileIdentifier .
+For example, the file name
+.Dq \&.\&.
+will become
+.Dq __#4C05 .
diff --git a/usr/src/man/man4fs/ufs.4fs b/usr/src/man/man4fs/ufs.4fs
new file mode 100644
index 0000000000..41e9091b04
--- /dev/null
+++ b/usr/src/man/man4fs/ufs.4fs
@@ -0,0 +1,269 @@
+.\"
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 1989 AT&T
+.\" Copyright 2021 Oxide Computer Company
+.\"
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.\"
+.Dd November 29, 2021
+.Dt UFS 4FS
+.Os
+.Sh NAME
+.Nm ufs
+.Nd UFS file system
+.Sh SYNOPSIS
+.In sys/param.h
+.In sys/types.h
+.In sys/fs/ufs_fs.h
+.In sys/fs/ufs_inode.h
+.Sh DESCRIPTION
+.Nm
+is one of the primary default disk-based file systems for illumos.
+The UFS file system is hierarchical, starting with its root directory
+.Pq Pa /
+and continuing downward through a number of directories.
+The root of a UFS file system is
+.Sy inode 2 .
+A UFS file system's root contents replace the contents of the directory upon
+which it is mounted.
+.Pp
+Subsequent sections of this manpage provide details of the UFS file systems.
+.Ss State Flags Pq Fa fs_state , Fa fs_clean
+UFS uses state flags to identify the state of the file system.
+.Fa fs_state
+is
+.Dv FSOKAY -
+.Fa fs_time .
+.Fa fs_time
+is the timestamp that indicates when the last system write occurred.
+.Fa fs_state
+is updated whenever
+.Fa fs_clean
+changes.
+Some
+.Fa fs_clean
+values are:
+.Bl -tag -width Ds
+.It Dv FSCLEAN
+Indicates an undamaged, cleanly unmounted file system.
+.It Dv FSACTIVE
+Indicates a mounted file system that has modified data in memory.
+A mounted file system with this state flag indicates that user data or metadata
+would be lost if power to the system is interrupted.
+.It Dv FSSTABLE
+Indicates an idle mounted file system.
+A mounted file system with this state flag indicates that neither user data nor
+metadata would be lost if power to the system is interrupted.
+.It Dv FSBAD
+Indicates that this file system contains inconsistent file system data.
+.It Dv FSLOG
+Indicates that the file system has logging enabled.
+A file system with this flag set is either mounted or unmounted.
+If a file system has logging enabled, the only flags that it can have are
+.Dv FSLOG
+or
+.Dv FSBAD .
+A non-logging file system can have
+.Dv FSACTIVE ,
+.Dv FSSTABLE ,
+or
+.Dv FSCLEAN .
+.Pp
+It is not necessary to run the
+.Sy fsck
+command on unmounted file systems with a state of
+.Dv FSCLEAN ,
+.Dv FSSTABLE ,
+or
+.Dv FSLOG .
+.Xr mount 2
+returns
+.Dv ENOSPC
+if an attempt is made to mount a UFS file system with a state of
+.Dv FSACTIVE
+for read/write access.
+.Pp
+As an additional safeguard,
+.Fa fs_clean
+should be trusted only if
+.Fa fs_state
+contains a value equal to
+.Dv FSOKAY -
+.Fa fs_time ,
+where
+.Dv FSOKAY
+is a constant integer defined in the
+.Pa /usr/include/sys/fs/ufs_fs.h
+file.
+Otherwise,
+.Fa fs_clean
+is treated as though it contains the value of
+.Dv FSACTIVE .
+.El
+.Ss Extended Fundamental Types (EFT)
+Extended Fundamental Types
+.Pq EFT
+provide 32-bit user ID
+.Pq UID ,
+group ID
+.Pq GID ,
+and device numbers.
+.Pp
+If a UID or GID contains an extended value, the short variable
+.Po
+.Fa ic_suid ,
+.Fa ic_sgid
+.Pc
+contains the value 65535 and the corresponding UID or GID is in
+.Fa ic_uid
+or
+.Fa ic_gid .
+Because numbers for block and character devices are stored in the first direct
+block pointer of the inode
+.Pq Fa ic_db[0]
+and the disk block addresses are already 32 bit values, no special encoding
+exists for device numbers
+.Pq unlike UID or GID fields .
+.Ss Multiterabyte File System
+A multiterabyte file system enables creation of a UFS file system up to
+approximately 16 terabytes of usable space, minus approximately one percent
+overhead.
+A sparse file can have a logical size of one terabyte.
+However, the actual amount of data that can be stored in a file is approximately
+one percent less than one terabyte because of file system overhead.
+.Pp
+On-disk format changes for a multiterabyte UFS file system include:
+.Bl -bullet -offset indent
+.It
+The magic number in the superblock changes from
+.Dv FS_MAGIC
+to
+.Dv MTB_UFS_MAGIC .
+For more information, see the
+.Pa /usr/include/sys/fs/ufs_fs.h
+file.
+.It
+The
+.Fa fs_logbno
+unit is a sector for UFS that is less than 1 terabyte in
+size and fragments for a multiterabyte UFS file system.
+.El
+.Ss UFS Logging
+UFS logging bundles the multiple metadata changes that comprise a complete UFS
+operation into a transaction.
+Sets of transactions are recorded in an on-disk log and are applied to the
+actual UFS file system's metadata.
+.Pp
+UFS logging provides two advantages:
+.Bl -enum
+.It
+A file system that is consistent with the transaction log eliminates the
+need to run
+.Sy fsck
+after a system crash or an unclean shutdown.
+.It
+UFS logging often provides a significant performance improvement.
+This is because a file system with logging enabled converts multiple updates to
+the same data into single updates, thereby reducing the number of overhead disk
+operations.
+.El
+.Pp
+The UFS log is allocated from free blocks on the file system and is sized at
+approximately 1 Mbyte per 1 Gbyte of file system, up to 256 Mbytes.
+The log size may be larger (up to a maximum of 512 Mbytes), depending upon the
+number of cylinder groups present in the file system.
+The log is continually flushed as it fills up.
+The log is also flushed when the file system is unmounted or as a result of a
+.Xr lockfs 8
+command.
+.Ss Mounting UFS File Systems
+You can mount a UFS file system in various ways using syntax similar to the
+following:
+.Bl -enum
+.It
+Use
+.Xr mount 8
+from the command line:
+.Bd -literal -offset indent
+# mount -F ufs /dev/dsk/c0t0d0s7 /export/home
+.Ed
+.It
+Include an entry in the
+.Pa /etc/vfstab
+file to mount the file system at boot time:
+.Bd -literal -offset indent
+/dev/dsk/c0t0d0s7 /dev/rdsk/c0t0d0s7 /export/home ufs 2 yes -
+.Ed
+.El
+.Pp
+For more information on mounting UFS file systems, see
+.Xr mount_ufs 8 .
+.Sh INTERFACE STABILITY
+.Sy Uncomitted
+.Sh SEE ALSO
+.Xr mount 2 ,
+.Xr attributes 7 ,
+.Xr df 8 ,
+.Xr fsck 8 ,
+.Xr fsck_ufs 8 ,
+.Xr fstyp 8 ,
+.Xr lockfs 8 ,
+.Xr mkfs_ufs 8 ,
+.Xr newfs 8 ,
+.Xr tunefs 8 ,
+.Xr ufsdump 8 ,
+.Xr ufsrestore 8
+.Sh NOTES
+For information about internal UFS structures, see
+.Xr newfs 8
+and
+.Xr mkfs_ufs 8 .
+For information about dumping and restoring file systems, see
+.Xr ufsdump 8 ,
+.Xr ufsrestore 8 ,
+and
+.Pa /usr/include/protocols/dumprestore.h .
+If you experience difficulty in allocating space on the ufs filesystem, it may
+be due to fragmentation.
+Fragmentation can occur when you do not have sufficient free blocks to satisfy
+an allocation request even though
+.Xr df 8
+indicates that enough free space is available.
+(This may occur because df only uses the available fragment count to calculate
+available space, but the file system requires contiguous sets of fragments for
+most allocations).
+If you suspect that you have exhausted contiguous fragments on your file system,
+you can use the
+.Xr fstyp 8
+utility with the
+.Fl v
+option.
+In the fstyp output, look at the
+.Em nbfree
+.Pq number of blocks free
+and
+.Fa nffree
+.Pq (number of fragments free)
+fields.
+On unmounted filesystems, you can use
+.Xr fsck 8
+and observe the last line of output, which reports, among other items, the
+number of fragments and the degree of fragmentation.
+To correct a fragmentation problem, run
+.Xr ufsdump 8
+and
+.Xr ufsrestore 8
+on the ufs filesystem.
diff --git a/usr/src/man/man4i/Makefile b/usr/src/man/man4i/Makefile
new file mode 100644
index 0000000000..4c8d7406af
--- /dev/null
+++ b/usr/src/man/man4i/Makefile
@@ -0,0 +1,52 @@
+#
+# This file and its contents are supplied under the terms of the
+# Common Development and Distribution License ("CDDL"), version 1.0.
+# You may only use this file in accordance with the terms of version
+# 1.0 of the CDDL.
+#
+# A full copy of the text of the CDDL should have accompanied this
+# source. A copy of the CDDL is also available via the Internet
+# at http://www.illumos.org/license/CDDL.
+#
+
+#
+# Copyright 2011, Richard Lowe
+# Copyright 2013 Nexenta Systems, Inc. All rights reserved.
+#
+
+include $(SRC)/Makefile.master
+
+MANSECT= 4i
+
+MANFILES= audio.4i \
+ cdio.4i \
+ dkio.4i \
+ dsp.4i \
+ fbio.4i \
+ fdio.4i \
+ hdio.4i \
+ iec61883.4i \
+ ipnat.4i \
+ mhd.4i \
+ mixer.4i \
+ mtio.4i \
+ prnio.4i \
+ quotactl.4i \
+ sesio.4i \
+ sockio.4i \
+ streamio.4i \
+ termio.4i \
+ termiox.4i \
+ uscsi.4i \
+ visual_io.4i \
+ vt.4i
+
+MANLINKS= uccid.4i
+
+uccid.7i := LINKSRC = ../man4d/ccid.4d
+
+.KEEP_STATE:
+
+include $(SRC)/man/Makefile.man
+
+install: $(ROOTMANFILES) $(ROOTMANLINKS)
diff --git a/usr/src/man/man4i/audio.4i b/usr/src/man/man4i/audio.4i
new file mode 100644
index 0000000000..5059b4746a
--- /dev/null
+++ b/usr/src/man/man4i/audio.4i
@@ -0,0 +1,999 @@
+.\" Copyright (c) 2009 Sun Microsystems, Inc. All rights reserved.
+.\" Copyright 2018, Joyent, Inc.
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.Dd July 8, 2018
+.Dt AUDIO 4I
+.Os
+.Sh NAME
+.Nm audio
+.Nd generic audio device interface
+.Sh SYNOPSIS
+.In sys/audio.h
+.Sh OVERVIEW
+An audio device is used to play and/or record a stream of audio data.
+Since a
+specific audio device may not support all functionality described below, refer
+to the device-specific manual pages for a complete description of each hardware
+device.
+An application can use the
+.Dv AUDIO_GETDEV
+.Xr ioctl 2
+to determine the current audio hardware associated with
+.Pa /dev/audio .
+.Pp
+The audio framework provides a software mixing engine (audio mixer) for all
+audio devices, allowing more than one process to play or record audio at the
+same time.
+.Ss "Backward Compatibility"
+It is no longer possible to disable the mixing function.
+Applications must not
+assume that they have exclusive access to the audio device.
+.Ss "Multi-Stream Codecs"
+The audio mixer supports multi-stream Codecs.
+These devices have DSP engines
+that provide sample rate conversion, hardware mixing, and other features.
+The use of such hardware features is opaque to applications.
+.Sh AUDIO FORMATS
+Digital audio data represents a quantized approximation of an analog audio
+signal waveform.
+In the simplest case, these quantized numbers represent the
+amplitude of the input waveform at particular sampling intervals.
+To achieve the best approximation of an input signal, the highest possible sampling
+frequency and precision should be used.
+However, increased accuracy comes at a cost of increased data storage requirements.
+For instance, one minute of
+monaural audio recorded in \(*m-Law format (pronounced
+.Em mew-law )
+at 8 KHz requires nearly 0.5 megabytes of storage, while the standard Compact Disc
+audio format (stereo 16-bit linear
+.Sy PCM
+data sampled at 44.1 KHz) requires approximately 10 megabytes per minute.
+.Pp
+Audio data may be represented in several different formats.
+An audio device's
+current audio data format can be determined by using the
+.Dv AUDIO_GETINFO
+.Xr ioctl 2
+described below.
+.Pp
+An audio data format is characterized in the audio driver by four parameters:
+Sample Rate, Encoding, Precision, and Channels.
+Refer to the device-specific
+manual pages for a list of the audio formats that each device supports.
+In addition to the formats that the audio device supports directly, other formats
+provide higher data compression.
+Applications may convert audio data to and
+from these formats when playing or recording.
+.Ss "Sample Rate"
+Sample rate is a number that represents the sampling frequency (in samples per
+second) of the audio data.
+.Pp
+The audio mixer always configures the hardware for the highest possible sample
+rate for both play and record.
+This ensures that none of the audio streams
+require compute-intensive low pass filtering.
+The result is that high sample rate audio streams are not degraded by filtering.
+.Pp
+Sample rate conversion can be a compute-intensive operation, depending on the
+number of channels and a device's sample rate.
+For example, an 8KHz signal can
+be easily converted to 48KHz, requiring a low cost up sampling by 6.
+However,
+converting from 44.1KHz to 48KHz is compute intensive because it must be up
+sampled by 160 and then down sampled by 147.
+This is only done using integer multipliers.
+.Pp
+Applications can greatly reduce the impact of sample rate conversion by
+carefully picking the sample rate.
+Applications should always use the highest
+sample rate the device supports.
+An application can also do its own sample rate
+conversion (to take advantage of floating point and accelerated instruction or
+use small integers for up and down sampling.
+.Pp
+All modern audio devices run at 48 kHz or a multiple thereof, hence just using
+48 kHz may be a reasonable compromise if the application is not prepared to
+select higher sample rates.
+.Ss "Encodings"
+An encoding parameter specifies the audio data representation.
+\(*m-Law
+encoding corresponds to
+.Em CCITT G.711 ,
+and is the standard for voice data
+used by telephone companies in the United States, Canada, and Japan.
+A-Law encoding is also part of
+.Em CCITT G.711
+and is the standard encoding for telephony elsewhere in the world.
+A-Law and \(*m-Law audio data are sampled at
+a rate of 8000 samples per second with 12-bit precision, with the data
+compressed to 8-bit samples.
+The resulting audio data quality is equivalent to
+that of standard analog telephone service.
+.Pp
+Linear Pulse Code Modulation (PCM) is an uncompressed, signed audio format in
+which sample values are directly proportional to audio signal voltages.
+Each sample is a 2's complement number that represents a positive or negative
+amplitude.
+.Ss "Precision"
+Precision indicates the number of bits used to store each audio sample.
+For instance, \(*m-Law and A-Law data are stored with 8-bit precision.
+.Sy PCM
+data may be stored at various precisions, though 16-bit is the most common.
+.Ss "Channels"
+Multiple channels of audio may be interleaved at sample boundaries.
+A sample frame consists of a single sample from each active channel.
+For example, a sample frame of stereo 16-bit
+.Sy PCM
+data consists of two 16-bit samples,
+corresponding to the left and right channel data.
+.Pp
+The audio mixer sets the hardware to the maximum number of channels supported.
+If a mono signal is played or recorded, it is mixed on the first two (usually
+the left and right) channels only.
+Silence is mixed on the remaining channels
+.Ss "Supported Formats"
+The audio mixer supports the following audio formats:
+.Bl -column "Signed Linear PCM" "Precision" "Mono or Stereo" -offset 2n
+.It Encoding Ta Precision Ta Channels
+.It "Signed Linear PCM" Ta "32-bit" Ta "Mono or Stereo"
+.It "Signed Linear PCM" Ta "16-bit" Ta "Mono or Stereo"
+.It "Signed Linear PCM" Ta "8-bit" Ta "Mono or Stereo"
+.It "\(*m-Law" Ta "8-bit" Ta "Mono or Stereo"
+.It "A-Law" Ta "8-bit" Ta "Mono or Stereo"
+.El
+.Pp
+The audio mixer converts all audio streams to 24-bit Linear PCM before mixing.
+After mixing, conversion is made to the best possible Codec format.
+The
+conversion process is not compute intensive and audio applications can choose
+the encoding format that best meets their needs.
+.Pp
+Note that the mixer discards the low order 8 bits of 32-bit Signed Linear PCM
+in order to perform mixing.
+(This is done to allow for possible overflows to
+fit into 32-bits when mixing multiple streams together.)
+Hence, the maximum effective precision is 24-bits.
+.Sh DESCRIPTION
+The device
+.Pa /dev/audio
+is a device driver that dispatches audio requests
+to the appropriate underlying audio hardware.
+The audio driver is implemented as a
+.Sy STREAMS
+driver.
+In order to record audio input, applications
+.Xr open 2
+the
+.Pa /dev/audio
+device and read data from it using the
+.Xr read 2
+system call.
+Similarly, sound data is queued to the audio output port by using the
+.Xr write 2
+system call.
+Device configuration is performed using the
+.Xr ioctl 2
+interface.
+.Pp
+Because some systems may contain more than one audio device, application
+writers are encouraged to query the
+.Ev AUDIODEV
+environment variable.
+If this variable is present in the environment, its value should identify the
+path name of the default audio device.
+.Ss "Opening the Audio Device"
+The audio device is not treated as an exclusive resource.
+Each process may open the audio device once.
+.Pp
+Each
+.Xr open 2
+completes as long as there are channels available to be allocated.
+If no channels are available to be allocated:
+.Bl -bullet -offset indent
+.It
+if either the
+.Dv O_NDELAY
+or
+.Dv O_NONBLOCK
+flags are set in the
+.Xr open 2
+.Fa oflag
+argument, then -1 is immediately returned, with
+.Va errno
+set to
+.Er EBUSY .
+.It
+if neither the
+.Dv O_NDELAY
+nor the
+.Dv O_NONBLOCK
+flag are set, then
+.Xr open 2
+hangs until the device is available or a signal is delivered to
+the process, in which case a -1 is returned with
+.Va errno
+set to
+.Er EINTR .
+.El
+.Pp
+Upon the initial
+.Xr open 2
+of the audio channel, the audio mixer sets the data
+format of the audio channel to the default state of 8-bit, 8Khz, mono \(*m-Law
+data.
+.Pp
+If the audio device does not support this configuration, it informs the
+audio mixer of the initial configuration.
+Audio applications should explicitly set the encoding characteristics to match the
+audio data requirements, and not depend on the default configuration.
+.Ss "Recording Audio Data"
+The
+.Xr read 2
+system call copies data from the system's buffers to the application.
+Ordinarily,
+.Xr read 2
+blocks until the user buffer is filled.
+The
+.Dv I_NREAD
+.Sy ioctl
+(see
+.Xr streamio 4I )
+may be used to determine the amount of data that may be read without blocking.
+The device may alternatively be set to a non-blocking mode, in which case
+.Xr read 2
+completes immediately, but may return fewer bytes than requested.
+Refer to the
+.Xr read 2
+manual page for a complete description of this behavior.
+.Pp
+When the audio device is opened with read access, the device driver immediately
+starts buffering audio input data.
+Since this consumes system resources,
+processes that do not record audio data should open the device write-only
+.Pq Dv O_WRONLY .
+.Pp
+The transfer of input data to
+.Sy STREAMS
+buffers may be paused (or resumed) by using the
+.Dv AUDIO_SETINFO
+.Sy ioctl
+to set (or clear) the
+.Fa record.pause
+flag in the audio information structure (see below).
+All unread input data in the
+.Sy STREAMS
+queue may be discarded by using the
+.Dv I_FLUSH
+.Sy STREAMS
+ioctl.
+See
+.Xr streamio 4I .
+When changing record parameters, the input stream should be paused and flushed
+before the change, and resumed afterward.
+Otherwise, subsequent reads may return samples
+in the old format followed by samples in the new format.
+This is particularly important when new parameters result in a changed sample size.
+.Pp
+Input data can accumulate in
+.Sy STREAMS
+buffers very quickly.
+At a minimum,
+it will accumulate at 8000 bytes per second for 8-bit, 8 KHz, mono, \(*m-Law data.
+If the device is configured for 16-bit linear or higher sample rates, it will
+accumulate even faster.
+If the application that consumes the data cannot keep
+up with this data rate, the
+.Sy STREAMS
+queue may become full.
+When this occurs, the
+.Fa record.error
+flag is set in the audio information structure and input sampling ceases until
+there is room in the input queue for additional data.
+In such cases, the input data stream contains a discontinuity.
+For this reason, audio recording applications should open the audio device when
+they are prepared to begin reading data, rather than at the start of extensive
+initialization.
+.Ss "Playing Audio Data"
+The
+.Xr write 2
+system call copies data from an application's buffer to the
+.Sy STREAMS
+output queue.
+Ordinarily,
+.Xr write 2
+blocks until the entire user buffer is transferred.
+The device may alternatively be set to a non-blocking mode, in which case
+.Xr write 2
+completes immediately, but may have transferred fewer bytes than requested.
+See
+.Xr write 2 .
+.Pp
+Although
+.Xr write 2
+returns when the data is successfully queued, the actual
+completion of audio output may take considerably longer.
+The
+.Dv AUDIO_DRAIN
+ioctl may be issued to allow an application to block until all of the
+queued output data has been played.
+Alternatively, a process may request
+asynchronous notification of output completion by writing a zero-length buffer
+(end-of-file record) to the output stream.
+When such a buffer has been
+processed, the
+.Fa play.eof
+flag in the audio information structure is incremented.
+.Pp
+The final
+.Xr close 2
+of the file descriptor hangs until all of the audio
+output has drained.
+If a signal interrupts the
+.Xr close 2 ,
+or if the process exits without closing the device, any remaining data queued
+for audio output is flushed and the device is closed immediately.
+.Pp
+The consumption of output data may be paused (or resumed) by using the
+.Dv AUDIO_SETINFO
+ioctl to set (or clear) the
+.Fa play.pause
+flag in the audio information structure.
+Queued output data may be discarded by using
+the
+.Dv I_FLUSH
+.Sy STREAMS
+ioctl.
+(See
+.Xr streamio 4I ) .
+.Pp
+Output data is played from the
+.Sy STREAMS
+buffers at a default rate of at
+least 8000 bytes per second for \(*m-Law, A-Law or 8-bit PCM data (faster for
+16-bit linear data or higher sampling rates).
+If the output queue becomes
+empty, the
+.Fa play.error
+flag is set in the audio information structure and
+output is stopped until additional data is written.
+If an application attempts
+to write a number of bytes that is not a multiple of the current sample frame
+size, an error is generated and the bad data is thrown away.
+Additional writes are allowed.
+.Ss "Asynchronous I/O"
+The
+.Dv I_SETSIG
+.Sy STREAMS
+ioctl
+enables asynchronous notification, through the
+.Dv SIGPOLL
+signal, of input and output ready condition changes.
+The
+.Dv O_NONBLOCK
+flag may be set using the
+.Dv F_SETFL
+.Xr fcntl 2
+to
+enable non-blocking
+.Xr read 2
+and
+.Xr write 2
+requests.
+This is normally
+sufficient for applications to maintain an audio stream in the background.
+.Ss "Audio Control Pseudo-Device"
+It is sometimes convenient to have an application, such as a volume control
+panel, modify certain characteristics of the audio device while it is being
+used by an unrelated process.
+.Pp
+The
+.Pa /dev/audioctl
+pseudo-device is provided for this purpose.
+Any number of processes may open
+.Pa /dev/audioctl
+simultaneously.
+However,
+.Xr read 2
+and
+.Xr write 2
+system calls are ignored by
+.Pa /dev/audioctl .
+The
+.Dv AUDIO_GETINFO
+and
+.Dv AUDIO_SETINFO
+ioctl commands may be issued to
+.Pa /dev/audioctl
+to determine the status or alter the behavior of
+.Pa /dev/audio .
+Note: In general, the audio control device name is
+constructed by appending the letters
+.Qq Sy ctl
+to the path name of the audio device.
+.Ss "Audio Status Change Notification"
+Applications that open the audio control pseudo-device may request asynchronous
+notification of changes in the state of the audio device by setting the
+.Dv S_MSG
+flag in an
+.Dv I_SETSIG
+.Sy STREAMS
+ioctl.
+Such processes receive a
+.Dv SIGPOLL
+signal when any of the following events occur:
+.Bl -bullet -offset indent
+.It
+An
+.Dv AUDIO_SETINFO
+ioctl has altered the device state.
+.It
+An input overflow or output underflow has occurred.
+.It
+An end-of-file record (zero-length buffer) has been processed on output.
+.It
+An
+.Xr open 2
+or
+.Xr close 2
+of
+.Pa /dev/audio
+has altered the device state.
+.It
+An external event (such as speakerbox's volume control) has altered the device
+state.
+.El
+.Sh IOCTLS
+.Ss "Audio Information Structure"
+The state of the audio device may be polled or modified using the
+.Dv AUDIO_GETINFO
+and
+.Dv AUDIO_SETINFO
+ioctl commands.
+These commands operate on the
+.Vt audio_info
+structure as defined, in
+.In sys/audio.h ,
+as follows:
+.Bd -literal -offset 2n
+/*
+ * This structure contains state information for audio device
+ * IO streams
+ */
+
+struct audio_prinfo {
+ /*
+ * The following values describe the
+ * audio data encoding
+ */
+ uint_t sample_rate; /* samples per second */
+ uint_t channels; /* number of interleaved channels */
+ uint_t precision; /* number of bits per sample */
+ uint_t encoding; /* data encoding method */
+
+ /*
+ * The following values control audio device
+ * configuration
+ */
+ uint_t gain; /* volume level */
+ uint_t port; /* selected I/O port */
+ uint_t buffer_size; /* I/O buffer size */
+
+ /*
+ * The following values describe the current device
+ * state
+ */
+ uint_t samples; /* number of samples converted */
+ uint_t eof; /* End Of File counter (play only) */
+ uchar_t pause; /* non-zero if paused, zero to resume */
+ uchar_t error; /* non-zero if overflow/underflow */
+ uchar_t waiting; /* non-zero if a process wants access */
+ uchar_t balance; /* stereo channel balance */
+
+ /*
+ * The following values are read-only device state
+ * information
+ */
+ uchar_t open; /* non-zero if open access granted */
+ uchar_t active; /* non-zero if I/O active */
+ uint_t avail_ports; /* available I/O ports */
+ uint_t mod_ports; /* modifiable I/O ports */
+};
+typedef struct audio_prinfo audio_prinfo_t;
+
+/*
+ * This structure is used in AUDIO_GETINFO and AUDIO_SETINFO ioctl
+ * commands
+ */
+struct audio_info {
+ audio_prinfo_t record;/* input status info */
+ audio_prinfo_t play; /* output status info */
+ uint_t monitor_gain; /* input to output mix */
+ uchar_toutput_muted; /* non-zero if output muted */
+ uint_t hw_features; /* supported H/W features */
+ uint_t sw_features; /* supported S/W features */
+ uint_t sw_features_enabled;
+ /* supported S/W features enabled */
+};
+typedef struct audio_info audio_info_t;
+
+/* Audio encoding types */
+#define AUDIO_ENCODING_ULAW (1) /* u-Law encoding */
+#define AUDIO_ENCODING_ALAW (2) /* A-Law encoding */
+#define AUDIO_ENCODING_LINEAR (3) /* Signed Linear PCM encoding */
+
+/*
+ * These ranges apply to record, play, and
+ * monitor gain values
+ */
+#define AUDIO_MIN_GAIN (0)/* minimum gain value */
+#define AUDIO_MAX_GAIN (255) /* maximum gain value */
+
+/*
+ * These values apply to the balance field to adjust channel
+ * gain values
+ */
+#define AUDIO_LEFT_BALANCE (0) /* left channel only */
+#define AUDIO_MID_BALANCE (32) /* equal left/right balance */
+#define AUDIO_RIGHT_BALANCE (64) /* right channel only */
+
+/*
+ * Define some convenient audio port names
+ * (for port, avail_ports and mod_ports)
+ */
+
+/* output ports (several might be enabled at once) */
+#define AUDIO_SPEAKER (0x01) /* built-in speaker */
+#define AUDIO_HEADPHONE (0x02) /* headphone jack */
+#define AUDIO_LINE_OUT (0x04) /* line out */
+#define AUDIO_SPDIF_OUT (0x08) /* SPDIF port */
+#define AUDIO_AUX1_OUT (0x10) /* aux1 out */
+#define AUDIO_AUX2_OUT (0x20) /* aux2 out */
+
+/*
+ * input ports (usually only one may be enabled at a time)
+ */
+#define AUDIO_MICROPHONE (0x01) /* microphone */
+#define AUDIO_LINE_IN (0x02) /* line in */
+#define AUDIO_CD (0x04) /* on-board CD inputs */
+#define AUDIO_SPDIF_IN (0x08) /* SPDIF port */
+#define AUDIO_AUX1_IN (0x10) /* aux1 in */
+#define AUDIO_AUX2_IN (0x20) /* aux2 in */
+#define AUDIO_CODEC_LOOPB_IN (0x40) /* Codec inter. loopback */
+
+/* These defines are for hardware features */
+#define AUDIO_HWFEATURE_DUPLEX (0x00000001u)
+/* simult. play & cap. supported */
+
+#define AUDIO_HWFEATURE_MSCODEC (0x00000002u)
+/* multi-stream Codec */
+
+/* These defines are for software features *
+#define AUDIO_SWFEATURE_MIXER (0x00000001u)
+/* audio mixer audio pers. mod. */
+
+/*
+ * Parameter for the AUDIO_GETDEV ioctl
+ * to determine current audio devices
+ */
+#define MAX_AUDIO_DEV_LEN (16)
+struct audio_device {
+ char name[MAX_AUDIO_DEV_LEN];
+ char version[MAX_AUDIO_DEV_LEN];
+ char config[MAX_AUDIO_DEV_LEN];
+};
+typedef struct audio_device audio_device_t;
+.Ed
+.Pp
+The
+.Fa play.gain
+and
+.Fa record.gain
+fields specify the output and input volume levels.
+A value of
+.Dv AUDIO_MAX_GAIN
+indicates maximum volume.
+Audio output may also be temporarily muted by setting a non-zero value in the
+.Fa output_muted
+field.
+Clearing this field restores audio output to the normal state.
+.Pp
+The
+.Va monitor_gain
+field is present for compatibility, and is no longer supported.
+See
+.Xr dsp 4I
+for more detail.
+.Pp
+Likewise, the
+.Fa play.port ,
+.Fa play.ports ,
+.Fa play.mod_ports ,
+.Fa record.port ,
+.Fa record.ports ,
+and
+.Fa record.mod_ports
+are no longer supported.
+See
+.Xr dsp 4I
+for more detail.
+.Pp
+The
+.Fa play.balance
+and
+.Fa record.balance
+fields are fixed to
+.Dv AUDIO_MID_BALANCE .
+Changes to volume levels for different channels can be
+made using the interfaces in
+.Xr dsp 4I .
+.Pp
+The
+.Fa play.pause
+and
+.Fa record.pause
+flags may be used to pause and
+resume the transfer of data between the audio device and the
+.Sy STREAMS
+buffers.
+The
+.Fa play.error
+and
+.Fa record.error
+flags indicate that data underflow or overflow has occurred.
+The
+.Fa play.active
+and
+.Fa record.active
+flags indicate that data transfer is currently active in the corresponding
+direction.
+.Pp
+The
+.Fa play.open
+and
+.Fa record.open
+flags indicate that the device is
+currently open with the corresponding access permission.
+The
+.Fa play.waiting
+and
+.Fa record.waiting
+flags provide an indication that a process may be waiting to access the device.
+These flags are set automatically when a process blocks on
+.Xr open 2 ,
+though they may also be set using the
+.Dv AUDIO_SETINFO
+ioctl command.
+They are cleared only when a process relinquishes access by closing the device.
+.Pp
+The
+.Fa play.samples
+and
+.Fa record.samples
+fields are zeroed at
+.Xr open 2
+and are incremented each time a data sample is copied to or from
+the associated
+.Sy STREAMS
+queue.
+Some audio drivers may be limited to counting
+buffers of samples, instead of single samples for their samples accounting.
+For this reason, applications should not assume that the samples fields contain a
+perfectly accurate count.
+The
+.Fa play.eof
+field increments whenever a zero-length output buffer is synchronously processed.
+Applications may use this
+field to detect the completion of particular segments of audio output.
+.Pp
+The
+.Fa record.buffer_size
+field controls the amount of input data that is
+buffered in the device driver during record operations.
+Applications that have
+particular requirements for low latency should set the value appropriately.
+Note however that smaller input buffer sizes may result in higher system
+overhead.
+The value of this field is specified in bytes and drivers will
+constrain it to be a multiple of the current sample frame size.
+Some drivers may place other requirements on the value of this field.
+Refer to the audio device-specific manual page for more details.
+If an application changes the
+format of the audio device and does not modify the
+.Fa record.buffer_size
+field, the device driver may use a default value to compensate for the new data
+rate.
+Therefore, if an application is going to modify this field, it should
+modify it during or after the format change itself, not before.
+When changing
+the
+.Fa record.buffer_size
+parameters, the input stream should be paused and
+flushed before the change, and resumed afterward.
+Otherwise, subsequent reads
+may return samples in the old format followed by samples in the new format.
+This is particularly important when new parameters result in a changed sample
+size.
+If you change the
+.Fa record.buffer_size
+for the first packet, this protocol must be followed or the first buffer will
+be the default buffer size for the device, followed by packets of the requested
+change size.
+.Pp
+The
+.Fa record.buffer_size
+field may be modified only on the
+.Pa /dev/audio
+device by processes that have it opened for reading.
+.Pp
+The
+.Fa play.buffer_size
+field is currently not supported.
+.Pp
+The audio data format is indicated by the
+.Fa sample_rate ,
+.Fa channels ,
+.Fa precision ,
+and
+.Fa encoding
+fields.
+The values of these fields correspond to the
+descriptions in the
+.Sx "AUDIO FORMATS"
+section of this man page.
+Refer to the
+audio device-specific manual pages for a list of supported data format
+combinations.
+.Pp
+The data format fields can be modified only on the
+.Pa /dev/audio
+device.
+.Pp
+If the parameter changes requested by an
+.Dv AUDIO_SETINFO
+ioctl cannot all be accommodated,
+.Xr ioctl 2
+returns with
+.Va errno
+set to
+.Er EINVAL
+and no changes are made to the device state.
+.Ss "Streamio IOCTLS"
+All of the
+.Xr streamio 4I
+.Xr ioctl 2
+commands may be issued for the
+.Pa /dev/audio
+device.
+Because the
+.Pa /dev/audioctl
+device has its own
+.Sy STREAMS
+queues, most of these commands neither modify nor report the
+state of
+.Pa /dev/audio
+if issued for the
+.Pa /dev/audioctl
+device.
+The
+.Dv I_SETSIG
+ioctl may be issued for
+.Pa /dev/audioctl
+to enable the notification of audio status changes, as described above.
+.Ss "Audio IOCTLS"
+The audio device additionally supports the following
+.Xr ioctl 2
+commands:
+.Bl -tag -width "AUDIO_GETINFO"
+.It Dv AUDIO_DRAIN
+The argument is ignored.
+This command suspends the calling process until the
+output STREAMS queue is empty and all queued samples have been played, or until
+a signal is delivered to the calling process.
+It may not be issued for the
+.Pa /dev/audioctl
+device.
+An implicit
+.Dv AUDIO_DRAIN
+is performed on the final
+.Xr close 2
+of
+.Pa /dev/audio .
+.It Dv AUDIO_GETDEV
+The argument is a pointer to an
+.Vt audio_device_t
+structure.
+This command may be issued for either
+.Pa /dev/audio
+or
+.Pa /dev/audioctl .
+The returned
+value in the name field will be a string that will identify the current
+.Pa /dev/audio
+hardware device, the value in version will be a string
+indicating the current version of the hardware, and
+.Fa config
+will be a device-specific string identifying the properties of the audio stream
+associated with that file descriptor.
+Refer to the audio device-specific manual
+pages to determine the actual strings returned by the device driver.
+.It Dv AUDIO_GETINFO
+The argument is a pointer to an
+.Vt audio_info_t
+structure.
+This command may be issued for either
+.Pa /dev/audio
+or
+.Pa /dev/audioctl .
+The current state of the
+.Pa /dev/audio
+device is returned in the structure.
+Values return pertain to a logical view of the device as seen by and private to
+the process, and do not necessarily reflect the actual hardware device itself.
+.It Dv AUDIO_SETINFO
+The argument is a pointer to an
+.Vt audio_info_t
+structure.
+This command may be issued for either the
+.Pa /dev/audio
+or the
+.Pa /dev/audioctl
+device with some restrictions.
+This command configures the audio device according to
+the supplied structure and overwrites the existing structure with the new state
+of the device.
+Note: The
+.Fa play.samples ,
+.Fa record.samples ,
+.Fa play.error ,
+.Fa record.error ,
+and
+.Fa play.eof
+fields are modified to reflect the state of the device when the
+.Dv AUDIO_SETINFO
+is issued.
+This allows programs to automatically modify these fields while retrieving the
+previous value.
+.Pp
+As with
+.Dv AUDIO_SETINFO ,
+the settings managed by this ioctl deal with a
+logical view of the device which is private to the process, and don't
+necessarily have any impact on the hardware device itself.
+.El
+.Pp
+Certain fields in the audio information structure, such as the pause flags, are
+treated as read-only when
+.Pa /dev/audio
+is not open with the corresponding access permission.
+Other fields, such as the gain levels and encoding
+information, may have a restricted set of acceptable values.
+Applications that
+attempt to modify such fields should check the returned values to be sure that
+the corresponding change took effect.
+The
+.Fa sample_rate ,
+.Fa channels ,
+.Fa precision ,
+and
+.Fa encoding
+fields treated as read-only for
+.Pa /dev/audioctl ,
+so that applications can be guaranteed that the existing
+audio format will stay in place until they relinquish the audio device.
+.Dv AUDIO_SETINFO
+will return
+.Er EINVAL
+when the desired configuration is not possible, or
+.Er EBUSY
+when another process has control of the audio device.
+.Pp
+All of the logical device state is reset when the corresponding I/O stream of
+.Pa /dev/audio
+is closed.
+.Pp
+The
+.Vt audio_info_t
+structure may be initialized through the use of the
+.Dv AUDIO_INITINFO
+macro.
+This macro sets all fields in the structure to
+values that are ignored by the
+.Dv AUDIO_SETINFO
+command.
+For instance, the following code switches the output port from the built-in
+speaker to the headphone jack without modifying any other audio parameters:
+.Bd -literal -offset 2n
+audio_info_t info;
+AUDIO_INITINFO();
+info.play.port = AUDIO_HEADPHONE;
+err = ioctl(audio_fd, AUDIO_SETINFO, );
+.Ed
+.Pp
+This technique eliminates problems associated with using a sequence of
+.Dv AUDIO_GETINFO
+followed by
+.Dv AUDIO_SETINFO .
+.Sh FILES
+The physical audio device names are system dependent and are rarely used by
+programmers.
+Programmers should use the following generic device names:
+.Bl -tag -width "/usr/share/audio/samples"
+.It Pa /dev/audio
+Symbolic link to the system's primary audio device
+.It Pa /dev/audioctl
+Symbolic link to the control device for
+.Pa /dev/audio
+.It Pa /dev/sound/0
+First audio device in the system
+.It Pa /dev/sound/0ctl
+Audio control device for
+.Pa /dev/sound/0
+.It Pa /usr/share/audio/samples
+Audio files
+.El
+.Sh ERRORS
+An
+.Xr open 2
+call will fail if:
+.Bl -tag -width "EINTR"
+.It Er EBUSY
+The requested play or record access is busy and either the
+.Dv O_NDELAY
+or
+.Dv O_NONBLOCK
+flag was set in the
+.Xr open 2
+request.
+.It Er EINTR
+The requested play or record access is busy and a signal interrupted the
+.Xr open 2
+request.
+.El
+.Pp
+An
+.Xr ioctl 2
+call will fail if:
+.Bl -tag -width "EINVAL"
+.It Er EINVAL
+The parameter changes requested in the
+.Dv AUDIO_SETINFO
+ioctl are invalid or are not supported by the device.
+.El
+.Sh ARCHITECTURE
+SPARC
+X86
+.Sh INTERFACE STABILITY
+Obsolete Uncommitted
+.Sh SEE ALSO
+.Xr close 2 ,
+.Xr fcntl 2 ,
+.Xr ioctl 2 ,
+.Xr open 2 ,
+.Xr poll 2 ,
+.Xr read 2 ,
+.Xr write 2 ,
+.Xr dsp 4I ,
+.Xr streamio 4I ,
+.Xr attributes 7
+.Sh BUGS
+Due to a feature of the
+.Sy STREAMS
+implementation, programs that are terminated or
+exit without closing the audio device may hang for a short period while audio
+output drains.
+In general, programs that produce audio output should catch the
+.Dv SIGINT
+signal and flush the output stream before exiting.
diff --git a/usr/src/man/man4i/cdio.4i b/usr/src/man/man4i/cdio.4i
new file mode 100644
index 0000000000..cf86e92801
--- /dev/null
+++ b/usr/src/man/man4i/cdio.4i
@@ -0,0 +1,692 @@
+.\" Copyright (c) 2001, Sun Microsystems, Inc. All Rights Reserved
+.\" Copryright 2017, Joyent, Inc.
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.Dd October 22, 2017
+.Dt CDIO 4I
+.Os
+.Sh NAME
+.Nm cdio
+.Nd CD-ROM control operations
+.Sh SYNOPSIS
+.In sys/cdio.h
+.Sh DESCRIPTION
+The set of
+.Xr ioctl 2
+commands described below are used to perform audio and
+.Sy CD-ROM
+specific operations.
+Basic to these
+.Sy cdio
+ioctl requests are the definitions in
+.In sys/cdio.h .
+.Pp
+Several
+.Sy CD-ROM
+specific commands can report addresses either in
+.Sy LBA
+(Logical Block Address) format or in
+.Sy MSF
+(Minute, Second, Frame) format.
+The
+.Sy READ HEADER ,
+.Sy BREAD SUBCHANNEL ,
+and
+.Sy BREAD TABLE OF CONTENTS
+commands have this feature.
+.Pp
+.Sy LBA
+format represents the logical block address for the
+.Sy CD-ROM
+absolute address field or for the offset from the beginning of the current
+track expressed as a number of logical blocks in a
+.Sy CD-ROM
+track relative address field.
+.Sy MSF
+format represents the physical address written on
+.Sy CD-ROM
+discs, expressed as a sector count relative to either the
+beginning of the medium or the beginning of the current track.
+.Sh IOCTLS
+The following
+.Sy I/O
+controls do not have any additional data passed into or received from them.
+.Bl -tag -width CDROMCLOSETRAY
+.It Dv CDROMSTART
+This
+.Xr ioctl 2
+spins up the disc and seeks to the last address requested.
+.It Dv CDROMSTOP
+This
+.Xr ioctl 2
+spins down the disc.
+.It Dv CDROMPAUSE
+This
+.Xr ioctl 2
+pauses the current audio play operation.
+.It Dv CDROMRESUME
+This
+.Xr ioctl 2
+resumes the paused audio play operation.
+.It Dv CDROMEJECT
+This
+.Xr ioctl 2
+ejects the caddy with the disc.
+.It Dv CDROMCLOSETRAY
+This
+.Xr ioctl 2
+closes the caddy with the disc.
+.El
+.Pp
+The following
+.Sy I/O
+controls require a pointer to the structure for that
+.Xr ioctl 2 ,
+with data being passed into the
+.Xr ioctl 2 .
+.Bl -tag -width CDROMPLAYTRKIND
+.It Dv CDROMPLAYMSF
+This
+.Xr ioctl 2
+command requests the drive to output the audio signals at
+the specified starting address and continue the audio play until the specified
+ending address is detected.
+The address is in
+.Sy MSF
+format.
+The third argument of this
+.Xr ioctl 2
+call is a pointer to the type
+.Vt "struct cdrom_msf" .
+.Bd -literal -offset 2n
+/*
+ * definition of play audio msf structure
+ */
+struct cdrom_msf {
+ /* starting minute */
+ unsigned char cdmsf_min0;
+ /* starting second */
+ unsigned char cdmsf_sec0;
+ /* starting frame */
+ unsigned char cdmsf_frame0;
+ /* ending minute */
+ unsigned char cdmsf_min1;
+ /* ending second */
+ unsigned char cdmsf_sec1;
+ /* ending frame */
+ unsigned char cdmsf_frame1;
+};
+.Ed
+.Pp
+The
+.Dv CDROMREADTOCENTRY
+ioctl request may be used to obtain the start time for a track.
+An approximation of the finish time can be obtained by using the
+.Dv CDROMREADTOCENTRY
+ioctl request to retrieve the start time of the track
+following the current track.
+.Pp
+The leadout track is the next consecutive track after the last audio track.
+Hence, the start time of the leadout track may be used as the effective finish
+time of the last audio track.
+.It Dv CDROMPLAYTRKIND
+This
+.Xr ioctl 2
+command is similar to
+.Dv CDROMPLAYMSF .
+The starting and ending address is in track/index format.
+The third argument of the
+.Xr ioctl 2
+call is a pointer to the type
+.Vt "struct cdrom_ti" .
+.Bd -literal -offset 2n
+/*
+ * definition of play audio track/index structure
+ */
+struct cdrom_ti {
+ /* starting track */
+ unsigned char cdti_trk0;
+ /* starting index */
+ unsigned char cdti_ind0;
+ /* ending track */
+ unsigned char cdti_trk1;
+ /* ending index */
+ unsigned char cdti_ind1;
+};
+.Ed
+.It Dv CDROMVOLCTRL
+This
+.Xr ioctl 2
+command controls the audio output level.
+The
+.Sy SCSI
+command allows the control of up to four channels.
+The current implementation of the supported
+.Sy CD-ROM
+drive only uses channel 0 and channel 1.
+The valid values of volume control are between 0x00 and 0xFF, with a value of
+0xFF indicating maximum volume.
+The third argument of the
+.Xr ioctl 2
+call is a pointer to
+.Vt "struct cdrom_volctrl"
+which contains the output volume values.
+.Bd -literal -offset 2n
+/*
+ * definition of audio volume control structure
+ */
+struct cdrom_volctrl {
+ unsigned char channel0;
+ unsigned char channel1;
+ unsigned char channel2;
+ unsigned char channel3;
+};
+.Ed
+.El
+.Pp
+The following
+.Sy I/O
+controls take a pointer that will have data returned to
+the user program from the
+.Sy CD-ROM
+driver.
+.Bl -tag -width CDROMREADOFFSET
+.It Dv CDROMREADTOCHDR
+This
+.Xr ioctl 2
+command returns the header of the table of contents (TOC).
+The header consists of the starting track number and the ending track number
+of the disc.
+These two numbers are returned through a pointer of
+.Vt "struct cdrom_tochdr" .
+While the disc can start at any number, all tracks between the
+first and last tracks are in contiguous ascending order.
+.Bd -literal -offset 2n
+/*
+ * definition of read toc header structure
+ */
+struct cdrom_tochdr {
+ unsigned char cdth_trk0; /* starting track */
+ unsigned char cdth_trk1; /* ending track */
+};
+.Ed
+.It Dv CDROMREADTOCENTRY
+This
+.Xr ioctl 2
+command returns the information of a specified track.
+The third argument of the function call is a pointer to the type
+.Vt "struct cdrom_tocentry" .
+The caller needs to supply the track number and the address format.
+This command will return a 4-bit
+.Sy adr
+field, a 4-bit
+.Sy ctrl
+field, the starting address in
+.Sy MSF
+format or
+.Sy LBA
+format, and the data mode if the track is a data track.
+The
+.Sy ctrl
+field specifies whether the track is data or audio.
+.Bd -literal -offset 2n
+/*
+ * definition of read toc entry structure
+ */
+struct cdrom_tocentry {
+ unsigned char cdte_track;
+ unsigned char cdte_adr :4;
+ unsigned char cdte_ctrl :4;
+ unsigned char cdte_format;
+ union {
+ struct {
+ unsigned char minute;
+ unsigned char second;
+ unsigned char frame;
+ } msf;
+ int lba;
+ } cdte_addr;
+ unsigned char cdte_datamode;
+};
+.Ed
+.Pp
+To get the information from the leadout track, the following value is
+appropriate for the
+.Fa cdte_track
+field:
+.\" These next few lists all use the same width so they align better
+.Bl -tag -offset indent -width CDROM_DATA_TRACK
+.It Dv CDROM_LEADOUT
+Leadout track
+.El
+.Pp
+To get the information from the data track, the following value is appropriate
+for the
+.Fa cdte_ctrl
+field:
+.Bl -tag -offset indent -width CDROM_DATA_TRACK
+.It Dv CDROM_DATA_TRACK
+Data track
+.El
+.Pp
+The following values are appropriate for the
+.Fa cdte_format
+field:
+.Bl -tag -offset indent -width CDROM_DATA_TRACK
+.It Dv CDROM_LBA
+.Sy LBA
+format
+.It Dv CDROM_MSF
+.Sy MSF
+format
+.El
+.It Dv CDROMSUBCHNL
+This
+.Xr ioctl 2
+command reads the Q sub-channel data of the current block.
+The subchannel data includes track number, index number, absolute
+.Sy CD-ROM
+address, track relative
+.Sy CD-ROM
+address, control data and audio status.
+All information is returned through a pointer to
+.Vt "struct cdrom_subchnl" .
+The caller needs to supply the address format for the returned address.
+.Bd -literal -offset 2n
+struct cdrom_subchnl {
+ unsigned char cdsc_format;
+ unsigned char cdsc_audiostatus;
+ unsigned char cdsc_adr :4;
+ unsigned char cdsc_ctrl :4;
+ unsigned char cdsc_trk;
+ unsigned char cdsc_ind;
+ union {
+ struct {
+ unsigned char minute;
+ unsigned char second;
+ unsigned char frame;
+ } msf;
+ int lba;
+ } cdsc_absaddr;
+ union {
+ struct {
+ unsigned char minute;
+ unsigned char second;
+ unsigned char frame;
+ } msf;
+ int lba;
+ } cdsc_reladdr;
+};
+.Ed
+.Pp
+The following values are valid for the audio status field returned from
+.Sy "READ SUBCHANNEL"
+command:
+.Bl -tag -width CDROM_AUDIO_NO_STATUS
+.It Dv CDROM_AUDIO_INVALID
+Audio status not supported.
+.It Dv CDROM_AUDIO_PLAY
+Audio play operation in progress.
+.It Dv CDROM_AUDIO_PAUSED
+Audio play operation paused.
+.It Dv CDROM_AUDIO_COMPLETED
+Audio play successfully completed.
+.It Dv CDROM_AUDIO_ERROR
+Audio play stopped due to error.
+.It Dv CDROM_AUDIO_NO_STATUS
+No current audio status to return.
+.El
+.It Dv CDROMREADOFFSET
+This
+.Xr ioctl 2
+command returns the absolute
+.Sy CD-ROM
+address of the first track in the last session of a Multi-Session
+.Sy CD-ROM .
+The third argument of the
+.Xr ioctl 2
+call is a pointer to an
+.Vt int .
+.It Dv CDROMCDDA
+This
+.Xr ioctl 2
+command returns the
+.Sy CD-DA
+data or the subcode data.
+The third argument of the
+.Xr ioctl 2
+call is a pointer to the type
+.Vt "struct cdrom_cdda" .
+In addition to allocating memory and supplying its address, the
+caller needs to supply the starting address of the data, the transfer length in
+terms of the number of blocks to be transferred, and the subcode options.
+The caller also needs to issue the
+.Dv CDROMREADTOCENTRY
+.Xr ioctl 2
+to find out which tracks contain
+.Sy CD-DA
+data before issuing this
+.Xr ioctl 2 .
+.Bd -literal -offset 2n
+/*
+ * Definition of CD-DA structure
+ */
+struct cdrom_cdda {
+ unsigned int cdda_addr;
+ unsigned int cdda_length;
+ caddr_t cdda_data;
+ unsigned char cdda_subcode;
+};
+.Ed
+.Pp
+.Sy cdda_addr
+signifies the starting logical block address.
+.Sy cdda_length
+signifies the transfer length in blocks.
+The length of the block depends on the
+.Sy cdda_subcode
+selection, which is explained below.
+To get the subcode information related to
+.Sy CD-DA
+data, the following values are appropriate for the
+.Sy cdda_subcode
+field:
+.Bl -tag -width CDROM_DA_SUBCODE_ONLY
+.It Sy CDROM_DA_NO_SUBCODE
+.Sy CD-DA
+data with no subcode.
+.It Sy CDROM_DA_SUBQ
+.Sy CD-DA
+data with sub Q code.
+.It Sy CDROM_DA_ALL_SUBCODE
+.Sy CD-DA
+data with all subcode.
+.It Sy CDROM_DA_SUBCODE_ONLY
+All subcode only.
+.El
+.Pp
+To allocate the memory related to
+.Sy CD-DA
+and/or subcode data, the
+following values are appropriate for each data block transferred:
+.Bl -tag -width "CD-DA data with all subcode"
+.It Sy CD-DA data with no subcode
+2352 bytes
+.It Sy CD-DA data with sub Q code
+2368 bytes
+.It Sy CD-DA data with all subcode
+2448 bytes
+.It Sy "All subcode only"
+96 bytes
+.El
+.It Dv CDROMCDXA
+This
+.Xr ioctl 2
+command returns the
+.Sy "CD-ROM XA"
+(CD-ROM Extended Architecture) data according to
+.Sy "CD-ROM XA"
+format.
+The third argument of the
+.Xr ioctl 2
+call is a pointer to the type
+.Vt "struct cdrom_cdxa" .
+In addition to allocating memory and supplying its address, the
+caller needs to supply the starting address of the data, the transfer length
+in terms of number of blocks, and the format.
+The caller also needs to issue
+the
+.Sy CDROMREADTOCENTRY
+.Xr ioctl 2
+to find out which tracks contain
+.Sy "CD-ROM XA"
+data before issuing this
+.Xr ioctl 2 .
+.Bd -literal -offset 2n
+/*
+ * Definition of CD-ROM XA structure
+ */
+struct cdrom_cdxa {
+ unsigned int cdxa_addr;
+ unsigned int cdxa_length;
+ caddr_t cdxa_data;
+ unsigned char cdxa_format;
+};
+.Ed
+.Pp
+To get the proper
+.Sy "CD-ROM XA"
+data, the following values are appropriate for the
+.Fa cdxa_format
+field:
+.Bl -tag -width CDROM_XA_DATA_W_ERROR
+.It Dv CDROM_XA_DATA
+.Sy "CD-ROM XA"
+data only
+.It Dv CDROM_XA_SECTOR_DATA
+.Sy "CD-ROM XA"
+all sector data
+.It Dv CDROM_XA_DATA_W_ERROR
+.Sy CD-ROM \fBXA\fR
+data with error flags data
+.El
+.Pp
+To allocate the memory related to
+.Sy "CD-ROM XA"
+format, the following values are appropriate for each data block transferred:
+.Bl -tag -width "CD-ROM XA data with error flags data"
+.It Sy "CD-ROM XA" data only
+2048 bytes
+.It Sy "CD-ROM XA" all sector data
+2352 bytes
+.It Sy "CD-ROM XA" data with error flags data
+2646 bytes
+.El
+.It Dv CDROMSUBCODE
+This
+.Xr ioctl 2
+command returns raw subcode data (subcodes P ~ W are
+described in the "Red Book," see
+.Sx SEE ALSO )
+to the initiator while the target is playing audio.
+The third argument of the
+.Xr ioctl 2
+call is a pointer to the type
+.Vt "struct cdrom_subcode" .
+The caller needs to supply the transfer length in terms of number of blocks and
+allocate memory for subcode data.
+The memory allocated should be a multiple of 96 bytes depending on the
+transfer length.
+.Bd -literal -offset 2n
+/*
+ * Definition of subcode structure
+ */
+struct cdrom_subcode {
+ unsigned int cdsc_length;
+ caddr_t cdsc_addr;
+};
+.Ed
+.El
+.Pp
+The next group of
+.Sy I/O
+controls get and set various
+.Sy CD-ROM
+drive parameters.
+.Bl -tag -width CDROMGDRVSPEED
+.It Dv CDROMGBLKMODE
+This
+.Xr ioctl 2
+command returns the current block size used by the
+.Sy CD-ROM
+drive.
+The third argument of the
+.Xr ioctl 2
+call is a pointer to an integer.
+.It Dv CDROMSBLKMODE
+This
+.Xr ioctl 2
+command requests the
+.Sy CD-ROM
+drive to change from the current block size to the requested block size.
+The third argument of the
+.Xr ioctl 2
+call is an integer which contains the requested block size.
+This
+.Xr ioctl 2
+command operates in exclusive-use mode only.
+The caller must ensure that no other processes can operate on the same
+.Sy CD-ROM
+device before issuing this
+.Xr ioctl 2 .
+.Xr read 2
+behavior subsequent to this
+.Xr ioctl 2
+remains the same: the caller is still constrained to read the raw
+device on block boundaries and in block multiples.
+To set the proper block size, the following values are appropriate:
+.Bl -tag -width CDROM_BLK_1024
+.It Dv CDROM_BLK_512
+512 bytes
+.It Dv CDROM_BLK_1024
+1024 bytes
+.It Dv CDROM_BLK_2048
+2048 bytes
+.It Dv CDROM_BLK_2056
+2056 bytes
+.It Dv CDROM_BLK_2336
+2336 bytes
+.It Dv CDROM_BLK_2340
+2340 bytes
+.It Dv CDROM_BLK_2352
+2352 bytes
+.It Dv CDROM_BLK_2368
+2368 bytes
+.It Dv CDROM_BLK_2448
+2448 bytes
+.It Dv CDROM_BLK_2646
+2646 bytes
+.It Dv CDROM_BLK_2647
+2647 bytes
+.El
+.It Dv CDROMGDRVSPEED
+This
+.Xr ioctl 2
+command returns the current
+.Sy CD-ROM
+drive speed.
+The third argument of the
+.Xr ioctl 2
+call is a pointer to an integer.
+.It Dv CDROMSDRVSPEED
+This
+.Xr ioctl 2
+command requests the
+.Sy CD-ROM
+drive to change the current drive speed to the requested drive speed.
+This speed setting is only applicable when reading data areas.
+The third argument of the
+.Xr ioctl 2
+is an integer which contains the requested drive speed.
+To set the
+.Sy CD-ROM
+drive to the proper speed, the following values are appropriate:
+.Bl -tag -width CDROM_MAXIMUM_SPEED
+.It Dv CDROM_NORMAL_SPEED
+150k/second
+.It Dv CDROM_DOUBLE_SPEED
+300k/second
+.It Dv CDROM_QUAD_SPEED
+600k/second
+.It Dv CDROM_MAXIMUM_SPEED
+300k/second (2x drive)
+.Pp
+600k/second (4x drive)
+.El
+.Pp
+Note that these numbers are only accurate when reading 2048 byte blocks.
+The
+.Sy CD-ROM
+drive will automatically switch to normal speed when playing audio
+tracks and will switch back to the speed setting when accessing data.
+.El
+.Sh ARCHITECTURE
+All
+.Sh INTERFACE STABILITY
+Uncommitted
+.Sh SEE ALSO
+.Xr ioctl 2 ,
+.Xr read 2 ,
+.Xr attributes 7
+.Rs
+.%Q N. V. Phillips
+.%Q Sony Corporation
+.%B System Description Compact Disc Digital Audio
+.%O ("Red Book")
+.Re
+.Rs
+.%Q N. V. Phillips
+.%Q Sony Corporation
+.%B System Description of Compact Disc Read Only Memory
+.%O ("Yellow Book")
+.Re
+.Rs
+.%Q N. V. Phillips
+.%Q Microsoft
+.%Q Sony Corporation
+.%B System Description CD-ROM XA
+.%D 1991
+.Re
+.Rs
+.%T Volume and File Structure of CD-ROM for Information Interchange
+.%N ISO 9660:1988(E)
+.Re
+.Rs
+.%T SCSI-2 Standard
+.%N document X3T9.2/86-109
+.Re
+.Rs
+.%T SCSI Multimedia Commands, Version 2 (MMC-2)
+.Re
+.Sh NOTES
+The
+.Dv CDROMCDDA ,
+.Dv CDROMCDXA ,
+.Dv CDROMSUBCODE ,
+.Dv CDROMGDRVSPEED ,
+.Dv CDROMSDRVSPEED ,
+and some of the block sizes in
+.Dv CDROMSBLKMODE
+are designed for new Sun-supported
+.Sy CD-ROM
+drives and might not work on some of the older
+.Sy CD-ROM
+drives.
+.Pp
+.Dv CDROMCDDA ,
+.Dv CDROMCDXA ,
+and
+.Dv CDROMSUBCODE
+will return error if the transfer length exceeds valid limits as determined appropriate.
+Example: for MMC-2 drives, length can not exceed 3 bytes (i\&.e\&. 0xffffff).
+The same restriction is enforced for older, pre-MMC-2 drives, as no limit was
+published for these older drives (and 3 bytes is reasonable for all media).
+Note that enforcing this limit does not imply that values passed in below this
+limit will actually be applicable for each and every piece of media.
+.Pp
+The interface to this device is preliminary and subject to change in future
+releases.
+Programs should be written in a modular fashion so that future
+changes can be easily incorporated.
diff --git a/usr/src/man/man4i/dkio.4i b/usr/src/man/man4i/dkio.4i
new file mode 100644
index 0000000000..05f1e48bee
--- /dev/null
+++ b/usr/src/man/man4i/dkio.4i
@@ -0,0 +1,867 @@
+.\"
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.\"
+.\"
+.\" Copyright (c) 2009 Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 2016 Nexenta Systems, Inc.
+.\" Copyright (c) 2017, Joyent, Inc.
+.\"
+.Dd October 23, 2017
+.Dt DKIO 4I
+.Os
+.Sh NAME
+.Nm dkio
+.Nd disk control operations
+.Sh SYNOPSIS
+.In sys/dkio.h
+.In sys/vtoc.h
+.Sh DESCRIPTION
+Disk drivers support a set of
+.Xr ioctl 2
+requests for disk controller, geometry, and partition information.
+Basic to these
+.Xr ioctl 2
+requests are the definitions in
+.In sys/dkio.h .
+.Sh IOCTLS
+The following
+.Xr ioctl 2
+requests set and/or retrieve the current disk
+controller, partitions, or geometry information on all architectures:
+.Bl -tag -width 1n
+.It Dv DKIOCINFO
+.Pp
+The argument is a pointer to a
+.Vt dk_cinfo
+structure (described below).
+This structure tells the controller-type and attributes regarding bad-block
+processing done on the controller.
+.Bd -literal -offset 2n
+/*
+ * Structures and definitions for disk I/O control commands
+ */
+#define DK_DEVLEN 16 /* device name max length, */
+ /* including unit # and NULL */
+
+/* Used for controller info */
+struct dk_cinfo {
+ char dki_cname[DK_DEVLEN]; /* controller name */
+ /* (no unit #) */
+ ushort_t dki_ctype; /* controller type */
+ ushort_t dki_flags; /* flags */
+ ushort_t dki_cnum; /* controller number */
+ uint_t dki_addr; /* controller address */
+ uint_t dki_space; /* controller bus type */
+ uint_t dki_prio; /* interrupt priority */
+ uint_t dki_vec; /* interrupt vector */
+ char dki_dname[DK_DEVLEN]; /* drive name (no unit #) */
+ uint_t dki_unit; /* unit number */
+ uint_t dki_slave; /* slave number */
+ ushort_t dki_partition; /* partition number */
+ ushort_t dki_maxtransfer; /* maximum transfer size */
+ /* in DEV_BSIZE */
+ };
+
+ /*
+ * Controller types
+ */
+ #define DKC_UNKNOWN 0
+ #define DKC_CDROM 1 /* CD-ROM, SCSI or other */
+ #define DKC_WDC2880 2
+ #define DKC_XXX_0 3 /* unassigned */
+ #define DKC_XXX_1 4 /* unassigned */
+ #define DKC_DSD5215 5
+ #define DKC_ACB4000 7
+ #define DKC_XXX_2 9 /* unassigned */
+ #define DKC_NCRFLOPPY 10
+ #define DKC_SMSFLOPPY 12
+ #define DKC_SCSI_CCS 13 /* SCSI CCS compatible */
+ #define DKC_INTEL82072 14 /* native floppy chip */
+ #define DKC_INTEL82077 19 /* 82077 floppy disk */
+ /* controller */
+ #define DKC_DIRECT 20 /* Intel direct attached */
+ /* device (IDE) */
+ #define DKC_PCMCIA_MEM 21 /* PCMCIA memory disk-like */
+ /* type */
+ #define DKC_PCMCIA_ATA 22 /* PCMCIA AT Attached type */
+
+ /*
+ * Sun reserves up through 1023
+ */
+
+ #define DKC_CUSTOMER_BASE 1024
+
+ /*
+ * Flags
+ */
+ #define DKI_BAD144 0x01 /* use DEC std 144 */
+ /* bad sector fwding */
+ #define DKI_MAPTRK 0x02 /* controller does */
+ /* track mapping */
+ #define DKI_FMTTRK 0x04 /* formats only full
+ /* track at a time */
+ #define DKI_FMTVOL 0x08 /* formats only full */
+ /* volume at a time */
+ #define DKI_FMTCYL 0x10 /* formats only full */
+ /* cylinders at a time */
+ #define DKI_HEXUNIT 0x20 /* unit number printed */
+ /* as 3 hexdigits */
+ #define DKI_PCMCIA_PFD 0x40 /* PCMCIA pseudo-floppy */
+ /* memory card */
+.Ed
+.It Dv DKIOCGAPART
+.Pp
+The argument is a pointer to a
+.Vt dk_allmap
+structure (described below).
+This
+.Xr ioctl 2
+gets the controller's notion of the current partition table
+for disk drive.
+.It Dv DKIOCSAPART
+.Pp
+The argument is a pointer to a
+.Vt dk_allmap
+structure (described below).
+This
+.Xr ioctl 2
+sets the controller's notion of the partition table without
+changing the disk itself.
+.Bd -literal -offset 2n
+/*
+ * Partition map (part of dk_label)
+ */
+struct dk_map {
+ daddr_t dkl_cylno; /* starting cylinder */
+ daddr_t dkl_nblk; /* number of blocks */
+};
+
+/*
+ * Used for all partitions
+ */
+struct dk_allmap {
+ struct dk_map dka_map[NDKMAP];
+};
+.Ed
+.It Dv DKIOCGGEOM
+.Pp
+The argument is a pointer to a
+.Vt dk_geom
+structure (described below).
+This
+.Xr ioctl 2
+gets the controller's notion of the current geometry of the disk drive.
+.It Dv DKIOCSGEOM
+.Pp
+The argument is a pointer to a
+.Vt dk_geom
+structure (described below).
+This
+.Xr ioctl 2
+sets the controller's notion of the geometry without changing the disk itself.
+.It Dv DKIOCGVTOC
+.Pp
+The argument is a pointer to a
+.Vt vtoc
+structure (described below).
+This
+.Xr ioctl 2
+returns the device's current volume table of contents (VTOC).
+For disks larger than 1TB,
+.Dv DKIOCGEXTVTOC
+must be used instead.
+.It Dv DKIOCSVTOC
+.Pp
+The argument is a pointer to a
+.Vt vtoc
+structure (described below).
+This
+.Xr ioctl 2
+changes the VTOC associated with the device.
+For disks larger than 1TB,
+.Dv DKIOCSEXTVTOC
+must be used instead.
+.Bd -literal -offset 2n
+struct partition {
+ ushort_t p_tag; /* ID tag of partition */
+ ushort_t p_flag; /* permission flags */
+ daddr_t p_start; /* start sector of partition */
+ long p_size; /* # of blocks in partition */
+};
+.Ed
+.Pp
+If
+.Dv DKIOCSVTOC
+is used with a floppy diskette, the
+.Fa p_start
+field must be the first sector of a cylinder.
+To compute the number of sectors per
+cylinder, multiply the number of heads by the number of sectors per track.
+.Bd -literal -offset 2n
+struct vtoc {
+ unsigned long v_bootinfo[3]; /* info needed by mboot */
+ /* (unsupported) */
+ unsigned long v_sanity; /* to verify vtoc */
+ /* sanity */
+ unsigned long v_version; /* layout version */
+ char v_volume[LEN_DKL_VVOL]; /* volume name */
+ ushort_t v_sectorsz; /* sector size in bytes */
+ ushort_t v_nparts; /* number of partitions */
+ unsigned long v_reserved[10]; /* free space */
+ struct partition v_part[V_NUMPAR]; /* partition headers */
+ time_t timestamp[V_NUMPAR]; /* partition timestamp */
+ /* (unsupported) */
+ char v_asciilabel[LEN_DKL_ASCII]; /* compatibility */
+};
+
+/*
+ * Partition permission flags
+ */
+#define V_UNMNT 0x01 /* Unmountable partition */
+#define V_RONLY 0x10 /* Read only */
+
+/*
+ * Partition identification tags
+ */
+#define V_UNASSIGNED 0x00 /* unassigned partition */
+#define V_BOOT 0x01 /* Boot partition */
+#define V_ROOT 0x02 /* Root filesystem */
+#define V_SWAP 0x03 /* Swap filesystem */
+#define V_USR 0x04 /* Usr filesystem */
+#define V_BACKUP 0x05 /* full disk */
+#define V_VAR 0x07 /* Var partition */
+#define V_HOME 0x08 /* Home partition */
+#define V_ALTSCTR 0x09 /* Alternate sector partition */
+.Ed
+.It Dv DKIOCGEXTVTOC
+.Pp
+The argument is a pointer to an
+.Vt extvtoc
+structure (described below).
+This ioctl returns the device's current volume table of contents (VTOC).
+VTOC is extended to support a disk up to 2TB in size.
+For disks larger than 1TB this ioctl must be used instead of
+.Dv DKIOCGVTOC .
+.It Dv DKIOCSEXTVTOC
+.Pp
+The argument is a pointer to an
+.Vt extvtoc
+structure (described below).
+This ioctl changes the VTOC associated with the device.
+VTOC is extended to support a disk up to 2TB in size.
+For disks larger than 1TB this ioctl must be used instead of
+.Vt DKIOCSVTOC .
+.Bd -literal -offset 2n
+struct extpartition {
+ ushort_t p_tag; /* ID tag of partition */
+ ushort_t p_flag; /* permission flags */
+ ushort_t p_pad[2]; /* reserved */
+ diskaddr_t p_start; /* start sector no of partition */
+ diskaddr_t p_size; /* # of blocks in partition */
+};
+
+struct extvtoc {
+ uint64_t v_bootinfo[3]; /* info needed by mboot (unsupported) */
+ uint64_t v_sanity; /* to verify vtoc sanity */
+ uint64_t v_version; /* layout version */
+ char v_volume[LEN_DKL_VVOL]; /* volume name */
+ ushort_t v_sectorsz; /* sector size in bytes */
+ ushort_t v_nparts; /* number of partitions */
+ ushort_t pad[2];
+ uint64_t v_reserved[10];
+ struct extpartition v_part[V_NUMPAR]; /* partition headers */
+ uint64_t timestamp[V_NUMPAR]; /* partition timestamp */
+ /* (unsupported) */
+ char v_asciilabel[LEN_DKL_ASCII]; /* for compatibility */
+};
+.Ed
+.Pp
+Partition permissions flags and identification tags
+are defined the same as vtoc structure.
+.It Dv DKIOCEJECT
+.Pp
+If the drive supports removable media, this
+.Xr ioctl 2
+requests the disk drive to eject its disk.
+.It Dv DKIOCREMOVABLE
+.Pp
+The argument to this
+.Xr ioctl 2
+is an integer.
+After successful completion, this
+.Xr ioctl 2
+sets that integer to a non-zero value if the drive in
+question has removable media.
+If the media is not removable, the integer is set to
+.Sy 0 .
+.It Dv DKIOCHOTPLUGGABLE
+.Pp
+The argument to this
+.Xr ioctl 2
+is an integer.
+After successful completion, this
+.Xr ioctl 2
+sets that integer to a non-zero value if the drive in question is hotpluggable.
+If the media is not hotpluggable, the integer is set to 0.
+.It Dv DKIOCSTATE
+.Pp
+This
+.Xr ioctl 2
+blocks until the state of the drive, inserted or ejected, is changed.
+The argument is a pointer to a
+.Vt dkio_state ,
+enum, whose possible enumerations are listed below.
+The initial value should be either the last
+reported state of the drive, or
+.Dv DKIO_NONE .
+Upon return, the enum pointed
+to by the argument is updated with the current state of the drive.
+.Bd -literal -offset 2n
+enum dkio_state {
+ DKIO_NONE, /* Return disk's current state */
+ DKIO_EJECTED, /* Disk state is 'ejected' */
+ DKIO_INSERTED /* Disk state is 'inserted' */
+};
+.Ed
+.It Dv DKIOCLOCK
+.Pp
+For devices with removable media, this
+.Xr ioctl 2
+requests the disk drive to lock the door.
+.It Dv DKIOCUNLOCK
+.Pp
+For devices with removable media, this
+.Xr ioctl 2
+requests the disk drive to unlock the door.
+.It Dv DKIOCGMEDIAINFO
+.Pp
+The argument to this
+.Xr ioctl 2
+is a pointer to a
+.Vt dk_minfo
+structure.
+The structure indicates the type of media or the command set profile used by
+the drive to operate on the media.
+The
+.Vt dk_minfo
+structure also indicates the logical media block size the drive uses as the
+basic unit block size of operation and the raw formatted capacity of the media
+in number of logical blocks.
+.It Dv DKIOCGMEDIAINFOEXT
+.Pp
+The argument to this
+.Xr ioctl 2
+is a pointer to a
+.Vt dk_minfo_ext
+structure.
+The structure indicates the type of media or the command set profile
+used by the drive to operate on the media.
+The
+.Vt dk_minfo_ext
+structure
+also indicates the logical media block size the drive uses as the basic unit
+block size of operation, the raw formatted capacity of the media in number of
+logical blocks and the physical block size of the media.
+.Bd -literal -offset 2n
+/*
+ * Used for media info or profile info
+ */
+struct dk_minfo {
+ uint_t dki_media_type; /* Media type or profile info */
+ uint_t dki_lbsize; /* Logical blocksize of media */
+ diskaddr_t dki_capacity; /* Capacity as # of dki_lbsize blks */
+};
+
+/*
+ * Used for media info or profile info and physical blocksize
+ */
+struct dk_minfo_ext {
+ uint_t dki_media_type; /* Media type or profile info */
+ uint_t dki_lbsize; /* Logical blocksize of media */
+ diskaddr_t dki_capacity; /* Capacity as # of dki_lbsize blks */
+ uint_t dki_pbsize; /* Physical blocksize of media */
+};
+
+
+/*
+ * Media types or profiles known
+ */
+#define DK_UNKNOWN 0x00 /* Media inserted - type unknown */
+
+/*
+ * SFF 8090 Specification Version 3, media types 0x01 - 0xfffe are
+ * retained to maintain compatibility with SFF8090. The following
+ * define the optical media type.
+ */
+#define DK_MO_ERASABLE 0x03 /* MO Erasable */
+#define DK_MO_WRITEONCE 0x04 /* MO Write once */
+#define DK_AS_MO 0x05 /* AS MO */
+#define DK_CDROM 0x08 /* CDROM */
+#define DK_CDR 0x09 /* CD-R */
+#define DK_CDRW 0x0A /* CD-RW */
+#define DK_DVDROM 0x10 /* DVD-ROM */
+#define DK_DVDR 0x11 /* DVD-R */
+#define DK_DVDRAM 0x12 /* DVD_RAM or DVD-RW */
+
+/*
+ * Media types for other rewritable magnetic media
+ */
+#define DK_FIXED_DISK 0x10001 /* Fixed disk SCSI or otherwise */
+#define DK_FLOPPY 0x10002 /* Floppy media */
+#define DK_ZIP 0x10003 /* IOMEGA ZIP media */
+#define DK_JAZ 0x10004 /* IOMEGA JAZ media */
+.Ed
+.Pp
+If the media exists and the host can obtain a current profile list, the command
+succeeds and returns the
+.Vt dk_minfo
+structure with data representing that media.
+.Pp
+If there is no media in the drive, the command fails and the host returns an
+.Er ENXIO
+error, indicating that it cannot gather the information requested.
+.Pp
+If the profile list is not available, the host attempts to identify the
+media-type based on the available information.
+.Pp
+If identification is not possible, the host returns media type
+.Dv DK_UNKNOWN .
+See
+.Sx NOTES
+for blocksize usage and capacity information.
+.It Dv DKIOCSMBOOT
+.Pp
+The argument is a pointer to struct
+.Vt mboot .
+.Pp
+Copies the
+.Vt mboot
+information supplied in the argument to the absolute sector 0 of the device.
+Prior to copying the information, this
+.Xr ioctl 2
+performs the following checks on the
+.Vt mboot
+data:
+.Bl -bullet -offset indent
+.It
+Ensures that the signature field is set to 0xAA55.
+.It
+Ensures that partitions do not overlap.
+.It
+On SPARC platforms, determines if the device is a removable media.
+.El
+.Pp
+If the above verification fails,
+.Va errno
+is set to
+.Er EINVAL
+and the
+.Xr ioctl 2
+command fails.
+.Pp
+x86 Platforms \(em Upon successful write of
+.Vt mboot ,
+the partition map structure maintained in the driver is updated.
+If the new Solaris partition is
+different from the previous one, the internal VTOC table maintained in the
+driver is set as follows:
+.Pp
+If
+.Dv _SUNOS_VTOC_8
+is defined:
+.Bd -unfilled -offset 4n
+Partition: 0 Start: 0 Capacity = Capacity of device.
+Partition: 2 Start: 0 Capacity = Capacity of device.
+.Ed
+.Pp
+If
+.Dv _SUNOS_VTOC_16
+is defined:
+.Bd -unfilled -offset 4n
+Partition: 2 Start: 0 Size = Size specified in mboot - 2 cylinders.
+Partition: 8 Start: 0 Size = Sectors/cylinder.
+Partition: 9 Start: Sectors/cylinder Size = 2 * sectors/cylinder
+.Ed
+.Pp
+To determine if the Solaris partition has changed:
+.Bd -offset 4n -ragged
+If either offset or the size of the Solaris partition is different from the
+previous one then it shall be deemed to have changed.
+In all other cases, the
+internal VTOC info remains as before.
+.Ed
+.Pp
+SPARC Platforms \(em The VTOC label and
+.Vt mboot
+both occupy the same location, namely sector 0.
+As a result, following the successful write of
+.Vt mboot
+info, the internal VTOC table maintained in the driver is set as follows:
+.Bd -unfilled -offset 4n
+Partition: 0 Start: 0 Size = Capacity of device.
+Partition: 2 Start: 0 Size = Capacity of device.
+.Ed
+.Pp
+See the
+.Sx NOTES
+section for usage of
+.Dv DKIOCSMBOOT
+when modifying Solaris partitions.
+.It Dv DKIOCGETVOLCAP
+.Pp
+This ioctl provides information and status of available capabilities.
+.Fa vc_info
+is a bitmap and the valid flag values are:
+.Pp
+.Bl -tag -width DKV_ABR_CAP -compact -offset 2n
+.It Dv DKV_ABR_CAP
+Capable of application-based recovery
+.It Dv DKV_DMR_CAP
+Ability to read specific copy of data when multiple copies exist.
+For example, in a two way mirror, this ioctl is used to read each
+side of the mirror.
+.El
+.Pp
+.Fa vc_set
+is a bitmap and the valid flag values are:
+.Pp
+.Bl -tag -width DKV_ABR_CAP -compact -offset 2n
+.It Dv DKV_ABR_CAP
+This flag is set if ABR has been set on a device that supports ABR functionality.
+.It Dv DKV_DMR_CAP
+Directed read has been enabled.
+.El
+.Pp
+These capabilities are not required to be persistent across a system reboot and
+their persistence depends upon the implementation.
+For example, if the ABR
+capability for a DRL mirror simply clears the dirty-region list and
+subsequently stops updating this list, there is no reason for persistence
+because the VM recovery is a no-op.
+Conversely, if the ABR capability is
+applied to a non-DRL mirror to indicate that the VM should not perform a full
+recovery of the mirror following a system crash, the capability must be
+persistent so that the VM know whether or not to perform recovery.
+.Pp
+Return Errors:
+.Pp
+.Bl -tag -width ENOTSUP -compact -offset 2n
+.It Er EINVAL
+Invalid device for this operation.
+.It Er ENOTSUP
+Functionality that is attempted to be set is not supported.
+.El
+.It Dv DKIOCSETVOLCAP
+.Pp
+This ioctl sets the available capabilities for the device.
+If a capability flag
+is not set in
+.Fa vc_set ,
+that capability is cleared.
+.Pp
+.Fa vc_info
+flags are ignored.
+.Pp
+.Fa vc_set
+valid flags are:
+.Pp
+.Bl -tag -width DKV_ABR_CAP -compact -offset 2n
+.It Dv DKV_ABR_CAP
+Flag to set application-based recovery.
+A device can successfully support ABR only if it is capable.
+.It Dv DKV_DMR_CAP
+Flag to set directed read.
+.El
+.It Dv DKIODMR
+.Pp
+.Ft int
+.Fo ioctl
+.Fa int ,
+.\" This could be .Fa as well -- but mandoc doesn't seem to allow both
+.Dv DKIODMR ,
+.Fa "vol_directed_rd *"
+.Fc
+.Pp
+This ioctl allows highly available applications to perform round-robin reads
+from the underlying devices of a replicated device.
+.Pp
+.Bl -tag -width vdr_bytesread -offset 2n -compact
+.It Fa vdr_offset
+Offset at which the read should occur.
+.It Fa vdr_nbytes
+Number of bytes to be read
+.It Fa vdr_bytesread
+Number of bytes successfully read by the kernel.
+.It Fa vdr_data
+Pointer to a user allocated buffer to return the data read
+.It Fa vdr_side
+Side to be read.
+Initialized to
+.Dv DKV_SIDE_INIT
+.It Fa vdr_side_name
+The volume name that has been read.
+.El
+.Pp
+Valid
+.Fa vdr_flags
+are:
+.Pp
+.Bl -tag -width DKV_DMR_NEXT_SIDE -offset 2n -compact
+.It Dv DKV_DMR_NEXT_SIDE
+Set by user
+.It Dv DKV_DMR_DONE
+Return value
+.It Dv DKV_DMR_ERROR
+Return value
+.It Dv DKV_DMR_SUCCESS
+Return value
+.It Dv DKV_DMR_SHORT
+Return value
+.El
+.Pp
+The calling sequence is as follows: The caller sets the
+.Fa vdr_flags
+to
+.Dv DK_DMR_NEXT_SIDE
+and
+.Fa vdr_side
+to
+.Dv DKV_SIDE_INIT
+at the start.
+Subsequent calls should be made without any changes to these values.
+If they are changed the results of the ioctl are indeterminate.
+.Pp
+When
+.Dv DKV_SIDE_INIT
+is set, the call results in the kernel reading from the first side.
+The kernel updates
+.Fa vdr_side
+to indicate the side that was read, and
+.Fa vdr_side_name
+to contain the name of that side.
+.Fa vdr_data
+contains the data that was read.
+Therefore to perform a round-robin read all of
+the valid sides, there is no need for the caller to change the contents of
+.Fa vdr_side .
+.Pp
+Subsequent
+.Xr ioctl 2
+calls result in reads from the next valid side until all valid
+sides have been read.
+On success, the kernel sets
+.Dv DKV_DMR_SUCCESS .
+The following table shows the values of
+.Fa vdr_flags
+that are returned when an error occurs:
+.Bl -column DKV_DMR_SHORT DKV_SIDE_INIT "Bytes requested cannot" -offset 2n
+.It Fa vda_flags Ta Fa vdr_side Ta Notes
+.It Dv DKV_DMR_ERROR Ta Dv DKV_SIDE_INIT Ta \&No valid side to read
+.It Dv DKV_DMR_DONE Ta Not Init side Ta All valid sides read
+.It Dv DKV_DMR_SHORT Ta Any value Ta Bytes requested cannot be read Fa vdr_bytesread No set to bytes actually read
+.El
+Typical code fragment:
+.Bd -literal -offset 2n
+enable->vc_set |= DKV_ABR_SET;
+retval = ioctl(filedes, DKIOSETVOLCAP, enable);
+if (retval != EINVAL || retval != ENOTSUP) {
+ if (info->vc_set & DKV_DMR_SET) {
+ dr->vdr_flags |= DKV_DMR_NEXT_SIDE;
+ dr->vdr_side = DKV_SIDE_INIT;
+ dr->vdr_nbytes = 1024;
+ dr->vdr_offset = 0xff00;
+ do {
+ rval = ioctl(fildes, DKIODMR, dr);
+ if (rval != EINVAL) {
+ /* Process data */
+ }
+ } while (rval != EINVAL || dr->vdr_flags &
+ (DKV_DMR_DONE | DKV_DMR_ERROR | DKV_DMR_SHORT)
+ }
+}
+.Ed
+.El
+.Ss "RETURN VALUES"
+Upon successful completion, the value returned is
+.Sy 0 .
+Otherwise,
+.Sy -1
+is returned and
+.Va errno
+is set to indicate the error.
+.Ss "x86 Only"
+The following
+.Xr ioctl 2
+requests set and/or retrieve the current disk
+controller, partitions, or geometry information on the x86 architecture.
+.Bl -tag -width 1n
+.It Dv DKIOCG_PHYGEOM
+.Pp
+The argument is a pointer to a
+.Vt dk_geom
+structure (described below).
+This
+.Xr ioctl 2
+gets the driver's notion of the physical geometry of the disk drive.
+It is functionally identical to the
+.Dv DKIOCGGEOM
+.Xr ioctl 2 .
+.It Dv DKIOCG_VIRTGEOM
+.Pp
+The argument is a pointer to a
+.Vt dk_geom
+structure (described below).
+This
+.Xr ioctl 2
+gets the controller's (and hence the driver's) notion of the
+virtual geometry of the disk drive.
+Virtual geometry is a view of the disk
+geometry maintained by the firmware in a host bus adapter or disk controller.
+If the disk is larger than 8 Gbytes, this ioctl fails because a CHS-based
+geometry is not relevant or useful for this drive.
+.Bd -literal -offset 2n
+/*
+ * Definition of a disk's geometry
+ */
+struct dk_geom {
+ unsigned shor dkg_ncyl; /* # of data cylinders */
+ unsigned shor dkg_acyl; /* # of alternate cylinders */
+ unsigned short dkg_bcyl; /* cyl offset (for fixed head */
+ /* area) */
+ unsigned short dkg_nhead; /* # of heads */
+ unsigned short dkg_obs1; /* obsolete */
+ unsigned short dkg_nsect; /* # of sectors per track */
+ unsigned short dkg_intrlv; /* interleave factor */
+ unsigned short dkg_obs2; /* obsolete */
+ unsigned short dkg_obs3; /* obsolete */
+ unsigned short dkg_apc; /* alternates per cylinder */
+ /* (SCSI only) */
+ unsigned short dkg_rpm; /* revolutions per min */
+ unsigned short dkg_pcyl; /* # of physical cylinders */
+ unsigned short dkg_write_reinstruct; /* # sectors to skip, */
+ /* writes */
+ unsigned short dkg_read_reinstruct; /* # sectors to skip ,*/
+ /* reads */
+ unsigned short dkg_extra[7]; /* for compatible expansion */
+};
+.Ed
+.It Dv DKIOCADDBAD
+.Pp
+This
+.Xr ioctl 2
+forces the driver to re-examine the alternates slice and
+rebuild the internal bad block map accordingly.
+It should be used whenever the
+alternates slice is changed by any method other than the
+.Xr addbadsec 8
+or
+.Xr format 8
+utilities.
+.Dv DKIOCADDBAD
+can only be used for software
+remapping on
+.Sy IDE
+drives;
+.Sy SCSI
+drives use hardware remapping of alternate sectors.
+.It Dv DKIOCPARTINFO
+.Pp
+The argument is a pointer to a
+.Vt part_info
+structure (described below).
+This
+.Xr ioctl 2
+gets the driver's notion of the size and extent of the
+partition or slice indicated by the file descriptor argument.
+.Bd -literal -offset 2n
+/*
+ * Used by applications to get partition or slice information
+ */
+struct part_info {
+ daddr_t p_start;
+ int p_length;
+};
+.Ed
+.It Dv DKIOCEXTPARTINFO
+.Pp
+The argument is a pointer to an
+.Vt extpart_info
+structure (described below).
+This ioctl gets the driver's notion of the size and extent of the partition or
+slice indicated by the file descriptor argument.
+On disks larger than 1TB, this ioctl must be used instead of
+.Dv DKIOCPARTINFO .
+.Bd -literal -offset 2n
+/*
+ * Used by applications to get partition or slice information
+ */
+struct extpart_info {
+ diskkaddr_t p_start;
+ diskaddr_t p_length;
+};
+.Ed
+.It Dv DKIOCSETEXTPART
+.Pp
+This ioctl is used to update the in-memory copy of the logical drive
+information maintained by the driver.
+The ioctl takes no arguments.
+It causes a re-read of the partition information and recreation of minor nodes
+if required.
+Prior to updating the data structures, the ioctl ensures that the partitions do
+not overlap.
+Device nodes are created only for valid partition entries.
+If there is any change in the partition offset, size or ID from the previous
+read, the partition is deemed to have been changed and hence the device nodes
+are recreated.
+Any modification to any of the logical partitions results in the
+recreation of all logical device nodes.
+.El
+.Sh SEE ALSO
+.Xr ioctl 2 ,
+.Xr cmdk 4D ,
+.Xr sd 4D ,
+.Xr cdio 4I ,
+.Xr fdio 4I ,
+.Xr hdio 4I ,
+.Xr addbadsec 8 ,
+.Xr fdisk 8 ,
+.Xr format 8
+.Sh NOTES
+Blocksize information provided in
+.Dv DKIOCGMEDIAINFO
+is the size (in bytes) of the device's basic unit of operation and can differ
+from the blocksize that the Solaris operating environment exports to the user.
+Capacity information provided in the
+.Dv DKIOCGMEDIAINFO
+are for reference only and you are advised to use the values returned by
+.Dv DKIOCGGEOM
+or other appropriate
+.Xr ioctl 2
+for accessing data using the standard interfaces.
+.Pp
+For x86 only: If the
+.Dv DKIOCSMBOOT
+command is used to modify the Solaris partitions, the VTOC information should
+also be set appropriately to reflect the changes to partition.
+Failure to do so leads to unexpected results when the
+device is closed and reopened fresh at a later time.
+This is because a default VTOC is assumed by driver when a Solaris partition
+is changed.
+The default VTOC persists until the ioctl
+.Dv DKIOCSVTOC
+is called to modify VTOC or the device is closed and reopened.
+At that point, the old valid VTOC is read from
+the disk if it is still available.
diff --git a/usr/src/man/man4i/dsp.4i b/usr/src/man/man4i/dsp.4i
new file mode 100644
index 0000000000..0690b359d8
--- /dev/null
+++ b/usr/src/man/man4i/dsp.4i
@@ -0,0 +1,602 @@
+.\" Copyright (c) 2009 Sun Microsystems, Inc. All rights reserved.
+.\" Copyright 2018, Joyent, Inc.
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.Dd July 9, 2018
+.Dt DSP 4I
+.Os
+.Sh NAME
+.Nm dsp
+.Nd generic audio device interface
+.Sh SYNOPSIS
+.In sys/soundcard.h
+.Sh DESCRIPTION
+To record audio input, applications
+.Xr open 2
+the appropriate device and
+read data from it using the
+.Xr read 2
+system call.
+Similarly, sound data is queued to the audio output port by using the
+.Xr write 2
+system call.
+Device configuration is performed using the
+.Xr ioctl 2
+interface.
+.Pp
+Because some systems can contain more than one audio device, application
+writers are encouraged to open the
+.Pa /dev/mixer
+device and determine the
+physical devices present on the system using the
+.Dv SNDCTL_SYSINFO
+and
+.Dv SNDCTL_AUDIOINFO
+ioctls.
+See
+.Xr mixer 4I .
+The user should be provided
+wth the ability to select a different audio device, or alternatively, an
+environment variable such as
+.Ev AUDIODSP
+can be used.
+In the absence of any
+specific configuration from the user, the generic device file,
+.Pa /dev/dsp ,
+can be used.
+This normally points to a reasonably appropriate default audio
+device for the system.
+.Ss "Opening the Audio Device"
+The audio device is not treated as an exclusive resource.
+.Pp
+Each
+.Xr open 2
+completes as long as there are channels available to be allocated.
+If no channels are available to be allocated, the call returns
+.Sy -1
+with the
+.Va errno
+set to
+.Er EBUSY .
+.Pp
+Audio applications should explicitly set the encoding characteristics to match
+the audio data requirements after opening the device, and not depend on any
+default configuration.
+.Ss "Recording Audio Data"
+The
+.Xr read 2
+system call copies data from the system's buffers to the application.
+Ordinarily,
+.Xr read 2
+blocks until the user buffer is filled.
+The
+.Xr poll 2
+system call can be used to determine the presence of data
+that can be read without blocking.
+The device can alternatively be set to a
+non-blocking mode, in which case
+.Xr read 2
+completes immediately, but can return fewer bytes than requested.
+Refer to the
+.Xr read 2
+manual page for a complete description of this behavior.
+.Pp
+When the audio device is opened with read access, the device driver allocates
+resources for recording.
+Since this consumes system resources, processes that
+do not record audio data should open the device write-only
+.Pq Dv O_WRONLY .
+.Pp
+The recording process can be stopped by using the
+.Dv SNDCTL_DSP_HALT_INPUT
+ioctl, which also discards all pending record data in underlying device FIFOs.
+.Pp
+Before changing record parameters, the input should be stopped using the
+.Dv SNDCTL_DSP_HALT_INPUT
+ioctl, which also flushes the any underlying device input FIFOs.
+(This is not necessary if the process never started recording by calling
+.Xr read 2 .
+Otherwise, subsequent reads can return samples in the
+old format followed by samples in the new format.
+This is particularly
+important when new parameters result in a changed sample size.
+.Pp
+Input data can accumulate in device buffers very quickly.
+At a minimum, it accumulates at 8000 bytes per second for 8-bit, 8 KHz, mono,
+.Sy \(*m-Law
+data.
+If the device is configured for more channels, higher sample resolution, or
+higher sample rates, it accumulates even faster.
+If the application that consumes the data cannot keep up with this data rate,
+the underlying FIFOs can become full.
+When this occurs, any new incoming data is lost until the
+application makes room available by consuming data.
+Additionally, a record overrun is noted, which can be retrieved using the
+.Dv SNDCTL_DSP_GETERROR
+ioctl.
+.Pp
+Record volume for a stream can be adjusted by issuing the
+.Dv SNDCTL_DSP_SETRECVOL
+ioctl.
+The volume can also be retrieved using the
+.Dv SNDCTL_DSP_GETRECVOL .
+.Ss "Playing Audio Data"
+The
+.Xr write 1
+system call copies data from an application's buffer to the device output FIFO.
+Ordinarily,
+.Xr write 2
+blocks until the entire user
+buffer is transferred.
+The device can alternatively be set to a non-blocking
+mode, in which case
+.Xr write 2
+completes immediately, but might have
+transferred fewer bytes than requested.
+See
+.Xr write 2 .
+.Pp
+Although
+.Xr write 2
+returns when the data is successfully queued, the actual
+completion of audio output might take considerably longer.
+The
+.Dv SNDCTL_DSP_SYNC
+ioctl can be issued to allow an application to block
+until all of the queued output data has been played.
+.Pp
+The final
+.Xr close 2
+of the file descriptor waits until all of the audio output has drained.
+If a signal interrupts the
+.Xr close 2 ,
+or if the process
+exits without closing the device, any remaining data queued for audio output is
+flushed and the device is closed immediately.
+.Pp
+The output of playback data can be halted entirely, by calling the
+.Dv SNDCTL_DSP_HALT_OUTPUT
+ioctl.
+This also discards any data that is queued for playback in device FIFOs.
+.Pp
+Before changing playback parameters, the output should be drained using the
+.Dv SNDCTL_DSP_SYNC
+ioctl, and then stopped using the
+.Dv SNDCTL_DSP_HALT_OUTPUT
+ioctl, which also flushes the any underlying device output FIFOs.
+This is not necessary if the process never started playback, such as by calling
+.Xr write 2 .
+This is particularly important
+when new parameters result in a changed sample size.
+.Pp
+Output data is played from the playback buffers at a default rate of at least
+8000 bytes per second for \(*m-Law, A-Law or 8-bit PCM data (faster for 16-bit
+linear data or higher sampling rates).
+If the output FIFO becomes empty, the
+framework plays silence, resulting in audible stall or click in the output,
+until more data is supplied by the application.
+The condition is also noted as
+a play underrun, which can be determined using the
+.Dv SNDCTL_DSP_GETERROR
+ioctl.
+.Pp
+Playback volume for a stream can be adjusted by issuing the
+.Dv SNDCTL_DSP_SETPLAYVOL
+ioctl.
+The volume can also be retrieved using the
+.Dv SNDCTL_DSP_GETPLAYVOL .
+.Ss "Asynchronous I/O"
+The
+.Dv O_NONBLOCK
+flag can be set using the
+.Dv F_SETFL
+.Xr fcntl 2
+to enable non-blocking
+.Xr read 2
+and
+.Xr write 2
+requests.
+This is normally
+sufficient for applications to maintain an audio stream in the background.
+.Pp
+It is also possible to determine the amount of data that can be transferred for
+playback or recording without blocking using the
+.Dv SNDCTL_DSP_GETOSPACE
+or
+.Dv SNDCTL_DSP_GETISPACE
+ioctls, respectively.
+.Ss "Mixer Pseudo-Device"
+The
+.Pa /dev/mixer
+provides access to global hardware settings such as master volume settings, etc.
+It is also the interface used for determining the
+hardware configuration on the system.
+.Pp
+Applications should
+.Xr open 2
+.Pa /dev/mixer ,
+and use the
+.Dv SNDCTL_SYSINFO
+and
+.Dv SNDCTL_AUDIOINFO
+ioctls to determine the device node names of audio devices on the system.
+See
+.Xr mixer 4I
+for additional details.
+.Sh IOCTLS
+.Ss "Information IOCTLs"
+The following ioctls are supported on the audio device, as well as the mixer
+device.
+See
+.Xr mixer 4I
+for details.
+.Bd -literal -offset 2n
+.Dv OSS_GETVERSION
+.Dv SNDCTL_SYSINFO
+.Dv SNDCTL_AUDIOINFO
+.Dv SNDCTL_MIXERINFO
+.Dv SNDCTL_CARDINFO
+.Ed
+.Ss "Audio IOCTLs"
+The
+.Nm
+device supports the following ioctl commands:
+.Pp
+.\" A compact list is used so that items with multiple tags don't have
+.\" vertical whitespace. However that means explicit .Pp statements must
+.\" be added.
+.Bl -tag -width "SNDCTL_DSP_CURRENT_IPTR" -compact
+.It Dv SNDCTL_DSP_SYNC
+The argument is ignored.
+This command suspends the calling process until the
+output FIFOs are empty and all queued samples have been played, or until a
+signal is delivered to the calling process.
+An implicit
+.Dv SNDCTL_DSP_SYNC
+is performed on the final
+.Xr close 2
+of the
+.Nm
+device.
+.Pp
+This ioctl should not be used unnecessarily, as if it is used in the middle of
+playback it causes a small click or pause, as the FIFOs are drained.
+The correct use of this ioctl is just before changing sample formats.
+.Pp
+.It Dv SNDCTL_DSP_HALT
+.It Dv SNDCTL_DSP_HALT_INPUT
+.It Dv SNDCTL_DSP_HALT_OUTPUT
+The argument is ignored.
+All input or output (or both) associated with the file
+is halted, and any pending data is discarded.
+.Pp
+.It Dv SNDCTL_DSP_SPEED
+The argument is a pointer to an integer, indicating the sample rate (in Hz) to
+be used.
+The rate applies to both input and output for the file descriptor.
+On return the actual rate, which can differ from that requested, is stored in
+the integer pointed to by the argument.
+To query the configured speed without
+changing it the value 0 can be used by the application.
+.Pp
+.It Dv SNDCTL_DSP_GETFMTS
+The argument is a pointer to an integer, which receives a bit mask of encodings
+supported by the device.
+Possible values are:
+.Pp
+.Bl -tag -width "AFMT_S24_PACKED" -compact -offset 2n
+.It Dv AFMT_MU_LAW
+8-bit unsigned \(*m-Law
+.It Dv AFMT_A_LAW
+8-bit unsigned a-Law
+.It Dv AFMT_U8
+8-bit unsigned linear PCM
+.It Dv AFMT_S16_LE
+16-bit signed little-endian linear PCM
+.It Dv AFMT_S16_BE
+16-bit signed big-endian linear PCM
+.It Dv AFMT_S16_NE
+16-bit signed native-endian linear PCM
+.It Dv AFMT_U16_LE
+16-bit unsigned little-endian linear PCM
+.It Dv AFMT_U16_BE
+16-bit unsigned big-endian linear PCM
+.It Dv AFMT_U16_NE
+16-bit unsigned native-endian linear PCM
+.It Dv AFMT_S24_LE
+24-bit signed little-endian linear PCM, 32-bit aligned
+.It Dv AFMT_S24_BE
+24-bit signed big-endian linear PCM, 32-bit aligned
+.It Dv AFMT_S24_NE
+24-bit signed native-endian linear PCM, 32-bit aligned
+.It Dv AFMT_S32_LE
+32-bit signed little-endian linear PCM
+.It Dv AFMT_S32_BE
+32-bit signed big-endian linear PCM
+.It Dv AFMT_S32_NE
+32-bit signed native-endian linear PCM
+.It Dv AFMT_S24_PACKED
+24-bit signed little-endian packed linear PCM
+.El
+.Pp
+Not all devices support all of these encodings.
+This implementation uses
+.Dv AFMT_S24_LE
+or
+.Dv AFMT_S24_BE ,
+whichever is native, internally.
+.Pp
+.It Dv SNDCTL_DSP_SETFMT
+The argument is a pointer to an integer, which indicates the encoding to be
+used.
+The same values as for
+.Dv SNDCTL_DSP_GETFMT
+can be used, but the caller can only specify a single option.
+The encoding is used for both input
+and output performed on the file descriptor.
+.Pp
+.It Dv SNDCTL_DSP_CHANNELS
+The argument is a pointer to an integer, indicating the number of channels to
+be used (1 for mono, 2 for stereo, etc.)
+The value applies to both input and output for the file descriptor.
+On return the actual channel configuration (which can differ from that
+requested) is stored in the integer pointed to by the argument.
+To query the configured channels without changing it the value 0
+can be used by the application.
+.Pp
+.It Dv SNDDCTL_DSP_GETCAPS
+The argument is a pointer to an integer bit mask, which indicates the
+capabilities of the device.
+The bits returned can include:
+.Pp
+.Bl -tag -width "PCM_CAP_DUPLEX" -compact -offset 2n
+.It Dv PCM_CAP_OUTPUT
+Device supports playback
+.It Dv PCM_CAP_INPUT
+Device supports recording
+.It Dv PCM_CAP_DUPLEX
+Device supports simultaneous playback and recording
+.El
+.Pp
+.It Dv SNDCTL_DSP_GETPLAYVOL
+.It Dv SNDCTL_DSP_GETRECVOL
+The argument is a pointer to an integer to receive the volume level for either
+playback or record.
+The value is encoded as a stereo value with the values for
+two channels in the least significant two bytes.
+The value for each channel thus has a range of 0-100.
+In this implementation, only the low order byte is
+used, as the value is treated as a monophonic value, but a stereo value (with
+both channel levels being identical) is returned for compatibility.
+.Pp
+.It Dv SNDCTL_DSP_SETPLAYVOL
+.It Dv SNDCTL_DSP_SETRECVOL
+The argument is a pointer to an integer indicating volume level for either
+playback or record.
+The value is encoded as a stereo value with the values for
+two channels in the least significant two bytes.
+The value for each channel has a range of 0-100.
+Note that in this implementation, only the low order byte is
+used, as the value is treated as a monophonic value.
+Portable applications should assign the same value to both bytes.
+.Pp
+.It Dv SNDCTL_DSP_GETISPACE
+.It Dv SNDCTL_DSP_GETOSPACE
+The argument is a pointer to a
+.Vt struct audio_buf_info ,
+which has the following structure:
+.Bd -literal -offset 2n
+typedef struct audio_buf_info {
+ int fragments; /* # of available fragments */
+ int fragstotal;
+ /* Total # of fragments allocated */
+ int fragsize;
+ /* Size of a fragment in bytes */
+ int bytes;
+ /* Available space in bytes */
+ /*
+ * Note! 'bytes' could be more than
+ * fragments*fragsize
+ */
+} audio_buf_info;
+.Ed
+.Pp
+The fields
+.Fa fragments ,
+.Fa fragstotal ,
+and
+.Fa fragsize
+are intended for use with compatible applications (and in the future with
+.Xr mmap 2 )
+only, and need not be used by typical applications.
+On successful return the bytes member
+contains the number of bytes that can be transferred without blocking.
+.Pp
+.It Dv SNDCTL_DSP_CURRENT_IPTR
+.It Dv SNDCTL_DSP_CURRENT_OPTR
+The argument is a pointer to an
+.Vt oss_count_t ,
+which has the following definition:
+.Bd -literal -offset 2n
+typedef struct {
+ long long samples;
+ /* Total # of samples */
+ int fifo_samples;
+ /* Samples in device FIFO */
+ int filler[32]; /* For future use */
+} oss_count_t;
+.Ed
+.Pp
+The
+.Fa samples
+field contains the total number of samples transferred by the
+device so far.
+The
+.Fa fifo_samples
+is the depth of any hardware FIFO.
+This structure can be useful for accurate stream positioning and latency
+calculations.
+.Pp
+.It Dv SNDCTL_DSP_GETIPTR
+.It Dv SNDCTL_DSP_GETOPTR
+The argument is a pointer to a
+.Vt struct count_info ,
+which has the following definition:
+.Bd -literal -offset 2n
+typedef struct count_info {
+ unsigned int bytes;
+ /* Total # of bytes processed */
+ int blocks;
+ /*
+ * # of fragment transitions since
+ * last time
+ */
+ int ptr; /* Current DMA pointer value */
+} count_info;
+.Ed
+.Pp
+These ioctls are primarily supplied for compatibility, and should not be used
+by most applications.
+.Pp
+.It Dv SNDCTL_DSP_GETODELAY
+The argument is a pointer to an integer.
+On return, the integer contains the
+number of bytes still to be played before the next byte written are played.
+This can be used for accurate determination of device latency.
+The result can differ from actual value by up the depth of the internal device
+FIFO, which is typically 64 bytes.
+.Pp
+.It Dv SNDCTL_DSP_GETERROR
+The argument is a pointer to a
+.Vt struct audio_errinfo ,
+defined as follows:
+.Bd -literal -offset 2n
+typedef struct audio_errinfo {
+ int play_underruns;
+ int rec_overruns;
+ unsigned int play_ptradjust;
+ unsigned int rec_ptradjust;
+ int play_errorcount;
+ int rec_errorcount;
+ int play_lasterror;
+ int rec_lasterror;
+ int play_errorparm;
+ int rec_errorparm;
+ int filler[16];
+} audio_errinfo;
+.Ed
+.Pp
+For this implementation, only the
+.Fa play_underruns
+and
+.Fa rec_overruns
+values are significant.
+No other fields are used in this implementation.
+.Pp
+These fields are reset to zero each time their value is retrieved using this
+ioctl.
+.El
+.Ss "Compatibility IOCTLS"
+These ioctls are supplied exclusively for compatibility with existing
+applications.
+Their use is not recommended, and they are not documented here.
+Many of these are implemented as simple no-ops.
+.Pp
+.Bl -tag -width "Dv" -offset 2n -compact
+.It Dv SNDCTL_DSP_POST
+.It Dv SNDCTL_DSP_STEREO
+.It Dv SNDCTL_DSP_SETDUPLEX
+.It Dv SNDCTL_DSP_LOW_WATER
+.It Dv SNDCTL_DSP_PROFILE
+.It Dv SNDCTL_DSP_GETBLKSIZE
+.It Dv SNDCTL_DSP_SUBDIVIDE
+.It Dv SNDCTL_DSP_SETFRAGMENT
+.It Dv SNDCTL_DSP_COOKEDMODE
+.It Dv SNDCTL_DSP_READCTL
+.It Dv SNDCTL_DSP_WRITECTL
+.It Dv SNDCTL_DSP_SILENCE
+.It Dv SNDCTL_DSP_SKIP
+.It Dv SNDCTL_DSP_POST
+.It Dv SNDCTL_DSP_GET_RECSRC
+.It Dv SNDCTL_DSP_SET_RECSRC
+.It Dv SNDCTL_DSP_SET_RECSRC_NAMES
+.It Dv SNDCTL_DSP_GET_PLAYTGT
+.It Dv SNDCTL_DSP_SET_PLAYTGT
+.It Dv SNDCTL_DSP_SET_PLAYTGT_NAMES
+.It Dv SNDCTL_DSP_GETTRIGGER
+.It Dv SNDCTL_DSP_SETTRIGGER
+.It Dv SNDCTL_AUDIOINFO_EX
+.It Dv SNDCTL_ENGINEINFO
+.El
+.Sh FILES
+The physical audio device names are system dependent and are rarely used by
+programmers.
+Programmers should use the generic device names listed below.
+.Bl -tag -width "/usr/share/audio/samples"
+.It Pa /dev/dsp
+Symbolic link to the system's primary audio device
+.It Pa /dev/mixer
+Symbolic link to the pseudo mixer device for the system
+.It Pa /dev/sndstat
+Symbolic link to the pseudo mixer device for the system
+.It Pa /usr/share/audio/samples
+Audio files
+.El
+.Sh ERRORS
+An
+.Xr open 2
+call fails if:
+.Bl -tag -width "EINVAL"
+.It Er EBUSY
+The requested play or record access is busy and either the
+.Dv O_NDELAY
+or
+.Dv O_NONBLOCK
+flag was set in the
+.Xr open 2
+request.
+.It Er EINTR
+The requested play or record access is busy and a signal interrupted the
+.Xr open 2
+request.
+.It Er EINVAL
+The device cannot support the requested play or record access.
+.El
+.Pp
+An
+.Xr ioctl 2
+call fails if:
+.Bl -tag -width "EINVAL"
+.It Er EINVAL
+The parameter changes requested in the ioctl are invalid or are not supported
+by the device.
+.El
+.Sh ARCHITECTURE
+SPARC
+X86
+.Sh INTERFACE STABILITY
+Uncommitted
+.Sh SEE ALSO
+.Xr close 2 ,
+.Xr fcntl 2 ,
+.Xr ioctl 2 ,
+.Xr mmap 2 ,
+.Xr open 2 ,
+.Xr poll 2 ,
+.Xr read 2 ,
+.Xr write 2 ,
+.Xr audio 4D ,
+.Xr mixer 4I ,
+.Xr attributes 7
diff --git a/usr/src/man/man4i/fbio.4i b/usr/src/man/man4i/fbio.4i
new file mode 100644
index 0000000000..e05c3ee787
--- /dev/null
+++ b/usr/src/man/man4i/fbio.4i
@@ -0,0 +1,160 @@
+.\" Copyright (c) 2003, Sun Microsystems, Inc.
+.\" Copyright (c) 2017, Joyent, Inc.
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the fields
+.\" enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.Dd October 22, 2017
+.Dt FBIO 4I
+.Os
+.Sh NAME
+.Nm fbio
+.Nd frame buffer control operations
+.Sh DESCRIPTION
+The frame buffers provided with this release support the same general interface
+that is defined by
+.In sys/fbio.h .
+Each responds to an
+.Dv FBIOGTYPE
+.Xr ioctl 2
+request which returns information in a
+.Vt fbtype
+structure.
+.Pp
+Each device has an
+.\" FBTYPE isn't macro, enum, or type, just used to describe a number of
+.\" CPP-macros of the form #define FBTYPE_xxxx
+.Sy FBTYPE
+which is used by higher-level software to
+determine how to perform graphics functions.
+Each device is used by opening it, doing an
+.Dv FBIOGTYPE
+.Xr ioctl 2
+to see which frame buffer type is
+present, and thereby selecting the appropriate device-management routines.
+.Pp
+.Dv FBIOGINFO
+returns information specific to the GS accelerator.
+.Pp
+.Dv FBIOSVIDEO
+and
+.Dv FBIOGVIDEO
+are general-purpose
+.Xr ioctl 2
+requests for controlling possible video features of frame buffers.
+These
+.Xr ioctl 2
+requests either set or return the value of a flags integer.
+At this point, only the
+.Dv FBVIDEO_ON
+option is available, controlled by
+.Dv FBIOSVIDEO .
+.Dv FBIOGVIDEO
+returns the current video state.
+.Pp
+The
+.Dv FBIOSATTR
+and
+.Dv FBIOGATTR
+.Xr ioctl 2
+requests allow access to special features of newer frame buffers.
+They use the
+.Vt fbsattr
+and
+.Vt fbgattr
+structures.
+.Pp
+Some color frame buffers support the
+.Dv FBIOPUTCMAP
+and
+.Dv FBIOGETCMAP
+.Xr ioctl 2
+requests, which provide access to the colormap.
+They use the
+.Vt fbcmap
+structure.
+.Pp
+Also, some framebuffers with multiple colormaps will either encode the colormap
+identifier in the high-order bits of the
+.Dq index
+field in the
+.Vt fbcmap
+structure, or use the
+.Dv FBIOPUTCMAPI
+and
+.Dv FBIOGETCMAPI
+.Xr ioctl 2
+requests.
+.Pp
+.Dv FBIOVERTICAL
+is used to wait for the start of the next vertical retrace
+period.
+.Pp
+.Dv FBIOVRTOFFSET
+Returns the offset to a read-only
+.Dq Em vertical retrace page
+for those framebuffers that support it.
+This vertical retrace page may be mapped into user space with
+.Xr mmap 2 .
+The first word of the vertical
+retrace page (type
+.Vt "unsigned int" )
+is a counter that is incremented every time there is a vertical retrace.
+The user process can use this counter in a variety of ways.
+.Pp
+.Dv FBIOMONINFO
+returns a
+.Vt mon_info
+structure which contains information about
+the monitor attached to the framebuffer, if available.
+.Pp
+.Dv FBIOSCURSOR ,
+.Dv FBIOGCURSOR ,
+.Dv FBIOSCURPOS
+and
+.Dv FBIOGCURPOS
+are used to control the hardware cursor for those framebuffers that have this
+feature.
+.Dv FBIOGCURMAX
+returns the maximum sized cursor supported by the framebuffer.
+Attempts to create a cursor larger than this will fail.
+.Pp
+Finally
+.Dv FBIOSDEVINFO
+and
+.Dv FBIOGDEVINFO
+are used to transfer
+variable-length, device-specific information into and out of framebuffers.
+.Sh SEE ALSO
+.Xr ioctl 2 ,
+.Xr mmap 2 ,
+.Xr cgsix 4D
+.Sh BUGS
+The
+.Dv FBIOSATTR
+and
+.Dv FBIOGATTR
+.Xr ioctl 2
+requests are only
+supported by frame buffers which emulate older frame buffer types.
+If a frame buffer emulates another frame buffer,
+.Dv FBIOGTYPE
+returns the emulated type.
+To get the real type, use
+.Dv FBIOGATTR .
+.Pp
+The
+.Dv FBIOGCURPOS
+ioctl was incorrectly defined in previous operating
+systems, and older code running in binary compatibility mode may get incorrect
+results.
diff --git a/usr/src/man/man4i/fdio.4i b/usr/src/man/man4i/fdio.4i
new file mode 100644
index 0000000000..a3f01b1021
--- /dev/null
+++ b/usr/src/man/man4i/fdio.4i
@@ -0,0 +1,277 @@
+.\" Copyright (c) 2001, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright (c) 2017, Joyent, Inc.
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.Dd October 22, 2017
+.Dt FDIO 4I
+.Os
+.Sh NAME
+.Nm fdio
+.Nd floppy disk control operations
+.Sh SYNOPSIS
+.In sys/fdio.h
+.Sh DESCRIPTION
+The Solaris floppy driver supports a set of
+.Xr ioctl 2
+requests for getting and setting the floppy drive characteristics.
+Basic to these
+.Xr ioctl 2
+requests are the definitions in
+.In sys/fdio.h .
+.Sh IOCTLS
+The following
+.Xr ioctl 2
+requests are available on the Solaris floppy driver.
+.Bl -tag -width FDDEFGEOCHAR
+.It Dv FDDEFGEOCHAR
+x86 based systems: This
+.Xr ioctl 2
+forces the floppy driver to restore
+the diskette and drive characteristics and geometry, and partition information
+to default values based on the device configuration.
+.It Dv FDGETCHANGE
+The argument is a pointer to an
+.Vt int .
+This
+.Xr ioctl 2
+returns the status of the diskette-changed signal from the floppy interface.
+The following defines are provided for cohesion.
+.El
+.Pp
+Note: For x86 based systems, use
+.Dv FDGC_DETECTED
+(which is available only on x86 based systems) instead of
+.Dv FDGC_HISTORY .
+.Bd -literal -offset 2n
+/*
+ * Used by FDGETCHANGE, returned state of the sense disk change bit.
+ */
+#define FDGC_HISTORY 0x01 /*
+ * disk has changed since insertion or
+ * last FDGETCHANGE call
+ */
+#define FDGC_CURRENT 0x02 /*
+ * if set, indicates drive has floppy,
+ * otherwise, drive is empty
+ */
+#define FDGC_CURWPROT 0x10 /* current state of write protect */
+#define FDGC_DETECTED 0x20 /* previous state of DISK CHANGE */
+.Ed
+.Bl -tag -width FDIOGCHAR
+.It Dv FDIOGCHAR
+The argument is a pointer to an
+.Vt fd_char
+structure (described below).
+This
+.Xr ioctl 2
+gets the characteristics of the floppy diskette from the floppy controller.
+.It Dv FDIOSCHAR
+The argument is a pointer to an
+.Vt fd_char
+structure (described below).
+This
+.Xr ioctl 2
+sets the characteristics of the floppy diskette for the floppy controller.
+Typical values in the
+.Vt fd_char
+structure for a high density diskette:
+.Bl -column fdc_stransfer_rate value "{ This field doesn't apply. }"
+.It Field Ta Value Ta
+.It fdc_medium Ta 0 Ta
+.It fdc_transfer_rate Ta 500 Ta
+.It fdc_ncyl Ta 80 Ta
+.It fdc_nhead Ta 2 Ta
+.It fdc_sec_size Ta 512 Ta
+.It fdc_secptrack Ta 18 Ta
+.It fdc_steps Ta -1 Ta { This field doesn't apply. }
+.El
+.El
+.Bd -literal -offset 2n
+/*
+ * Floppy characteristics
+ */
+struct fd_char {
+ uchar_t fdc_medium; /* equals 1 if floppy is medium density format */
+ int fdc_transfer_rate; /* transfer rate */
+ int fdc_ncyl; /* number of cylinders */
+ int fdc_nhead; /* number of heads */
+ int fdc_sec_size; /* sector size */
+ int fdc_secptrack; /* sectors per track */
+ int fdc_steps; /* no. of steps per data track */
+};
+.Ed
+.Bl -tag -width FDGETDRIVECHAR
+.It Dv FDGETDRIVECHAR
+The argument to this
+.Xr ioctl 2
+is a pointer to an
+.Vt fd_drive
+structure (described below).
+This
+.Xr ioctl 2
+gets the characteristics of the floppy drive from the floppy controller.
+.It Dv FDSETDRIVECHAR
+x86 based systems: The argument to this
+.Xr ioctl 2
+is a pointer to an
+.Vt fd_drive
+structure (described below).
+This
+.Xr ioctl 2
+sets the characteristics of the floppy drive for the floppy controller.
+Only
+.Fa fdd_steprate ,
+.Fa fdd_headsettle ,
+.Fa fdd_motoron ,
+and
+.Fa fdd_motoroff
+are actually used by the floppy disk driver.
+.El
+.Bd -literal -offset 2n
+/*
+ * Floppy Drive characteristics
+ */
+struct fd_drive {
+ int fdd_ejectable; /* does the drive support eject? */
+ int fdd_maxsearch; /* size of per-unit search table */
+ int fdd_writeprecomp; /* cyl to start write precompensation */
+ int fdd_writereduce; /* cyl to start recucing write current */
+ int fdd_stepwidth; /* width of step pulse in 1 us units */
+ int fdd_steprate; /* step rate in 100 us units */
+ int fdd_headsettle; /* delay, in 100 us units */
+ int fdd_headload; /* delay, in 100 us units */
+ int fdd_headunload; /* delay, in 100 us units */
+ int fdd_motoron; /* delay, in 100 ms units */
+ int fdd_motoroff; /* delay, in 100 ms units */
+ int fdd_precomplevel; /* bit shift, in nano-secs */
+ int fdd_pins; /* defines meaning of pin 1, 2, 4 and 34 */
+ int fdd_flags; /* TRUE READY, Starting Sector #, & Motor On */
+};
+.Ed
+.Bl -tag -width FDGETSEARCH
+.It Dv FDGETSEARCH
+Not available.
+.It Dv FDSETSEARCH
+Not available.
+.It Dv FDEJECT
+SPARC: This
+.Xr ioctl 2
+requests the floppy drive to eject the diskette.
+.It Dv FDIOCMD
+The argument is a pointer to an
+.Vt fd_cmd
+structure (described below).
+This
+.Xr ioctl 2
+allows access to the floppy diskette using the floppy device driver.
+Only the
+.Dv FDCMD_WRITE ,
+.Dv FDCMD_READ ,
+and
+.Dv FDCMD_FORMAT_TRACK
+commands are currently available.
+.El
+.Bd -literal -offset 2n
+struct fd_cmd {
+ ushort_t fdc_cmd; /* command to be executed */
+ int fdc_flags; /* execution flags (x86 only) */
+ daddr_t fdc_blkno; /* disk address for command */
+ int fdc_secnt; /* sector count for command */
+ caddr_t fdc_bufaddr; /* user's buffer address */
+ uint_t fdc_buflen; /* size of user's buffer */
+};
+.Ed
+.Pp
+Please note that the
+.Fa fdc_buflen
+field is currently unused.
+The
+.Fa fdc_secnt
+field is used to calculate the transfer size, and the buffer is
+assumed to be large enough to accommodate the transfer.
+.Bd -literal -offset 2n
+/*
+ * Floppy commands
+ */
+#define FDCMD_WRITE 1
+#define FDCMD_READ 2
+#define FDCMD_SEEK 3
+#define FDCMD_REZERO 4
+#define FDCMD_FORMAT_UNIT 5
+#define FDCMD_FORMAT_TRACK 6
+.Ed
+.Bl -tag -width FDRAW
+.It Dv FDRAW
+The argument is a pointer to an
+.Vt fd_raw
+structure (described below).
+This
+.Xr ioctl 2
+allows direct control of the floppy drive using the floppy controller.
+Refer to the appropriate floppy-controller data sheet for full
+details on required command bytes and returned result bytes.
+The following commands are supported.
+.El
+.Bd -literal -offset 2n
+/*
+ * Floppy raw commands
+ */
+#define FDRAW_SPECIFY 0x03
+#define FDRAW_READID 0x0a (x86 only)
+#define FDRAW_SENSE_DRV 0x04
+#define FDRAW_REZERO 0x07
+#define FDRAW_SEEK 0x0f
+#define FDRAW_SENSE_INT 0x08 (x86 only)
+#define FDRAW_FORMAT 0x0d
+#define FDRAW_READTRACK 0x02
+#define FDRAW_WRCMD 0x05
+#define FDRAW_RDCMD 0x06
+#define FDRAW_WRITEDEL 0x09
+#define FDRAW_READDEL 0x0c
+.Ed
+.Pp
+Please note that when using
+.Dv FDRAW_SEEK
+or
+.Dv FDRAW_REZERO ,
+the driver automatically issues a
+.Dv FDRAW_SENSE_INT
+command to clear the interrupt from the
+.Dv FDRAW_SEEK
+or the
+.Dv FDRAW_REZERO .
+The result bytes returned by these commands are the results from the
+.Dv DRAW_SENSE_INT
+command.
+Please see the floppy-controller data sheet for
+more details on
+.Dv FDRAW_SENSE_INT .
+.Bd -literal -offset 2n
+/*
+ * Used by FDRAW
+ */
+struct fd_raw {
+ char fdr_cmd[10]; /* user-supplied command bytes */
+ short fdr_cnum; /* number of command bytes */
+ char fdr_result[10]; /* controller-supplied result bytes */
+ ushort_t fdr_nbytes; /* number to transfer if read/write command */
+ char *fdr_addr; /* where to transfer if read/write command */
+};
+.Ed
+.Sh SEE ALSO
+.Xr ioctl 2 ,
+.Xr fd 4D ,
+.Xr dkio 4I ,
+.Xr hdio 4I
diff --git a/usr/src/man/man4i/hdio.4i b/usr/src/man/man4i/hdio.4i
new file mode 100644
index 0000000000..1f80a9a055
--- /dev/null
+++ b/usr/src/man/man4i/hdio.4i
@@ -0,0 +1,112 @@
+.\" Copyright (c) 2002, Sun Microsystems, Inc.
+.\" Copyright (c) 2017, Joyent, Inc.
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.Dd October 23, 2017
+.Dt HDIO 4I
+.Os
+.Sh NAME
+.Nm hdio
+.Nd SMD and IPI disk control operations
+.Sh SYNOPSIS
+.In sys/hdio.h
+.Sh DESCRIPTION
+Note \(em the SMC and IPI drivers have been discontinued.
+.Xr dkio 4I
+is now the preferred method for retrieving disk information.
+.Pp
+The SMD and IPI disk drivers supplied with this release support a set of
+.Xr ioctl 2
+requests for diagnostics and bad sector information.
+Basic to these
+.Xr ioctl 2
+requests are the definitions in
+.In sys/hdio.h .
+.Sh IOCTLS
+.Bl -tag -width HDKIOCGTYPE
+.It Dv HDKIOCGTYPE
+The argument is a pointer to a
+.Vt hdk_type
+structure (described below).
+This
+.Xr ioctl 2
+gets specific information from the hard disk.
+.It Dv HDKIOCSTYPE
+The argument is a pointer to a
+.Vt hdk_type
+structure (described below).
+This
+.Xr ioctl 2
+sets specific information about the hard disk.
+.El
+.Bd -literal -offset 2n
+/*
+ * Used for drive info
+ */
+struct hdk_type {
+ ushort_t hdkt_hsect; /* hard sector count (read only) */
+ ushort_t hdkt_promrev; /* prom revision (read only) */
+ uchar_t hdkt_drtype; /* drive type (ctlr specific) */
+ uchar_t hdkt_drstat; /* drive status (ctlr specific, ro) */
+};
+.Ed
+.Bl -tag -width HDKIOCGBAD
+.It Dv HDKIOCGBAD
+The argument is a pointer to a
+.Vt hdk_badmap
+structure (described below).
+This
+.Xr ioctl 2
+is used to get the bad sector map from the disk.
+.It Dv HDKIOCSBAD
+The argument is a pointer to a
+.Vt hdk_badmap
+structure (described below).
+This
+.Xr ioctl 2
+is used to set the bad sector map on the disk.
+.El
+.Bd -literal -offset 2n
+/*
+ * Used for bad sector map
+ */
+struct hdk_badmap {
+ caddr_t hdkb_bufaddr; /* address of user's map buffer */
+};
+.Ed
+.Bl -tag -width HDKIOCGDIAG
+.It Dv HDKIOCGDIAG
+The argument is a pointer to a
+.Vt hdk_diag
+structure (described below).
+This
+.Xr ioctl 2
+gets the most recent command that failed along with the
+sector and error number from the hard disk.
+.El
+.Bd -literal -offset 2n
+/*
+ * Used for disk diagnostics
+ */
+struct hdk_diag {
+ ushort_t hdkd_errcmd; /* most recent command in error */
+ daddr_t hdkd_errsect; /* most recent sector in error */
+ uchar_t hdkd_errno; /* most recent error number */
+ uchar_t hdkd_severe; /* severity of most recent error */
+};
+.Ed
+.Sh SEE ALSO
+.Xr ioctl 2 ,
+.Xr dkio 4I
diff --git a/usr/src/man/man4i/iec61883.4i b/usr/src/man/man4i/iec61883.4i
new file mode 100644
index 0000000000..fb0857852e
--- /dev/null
+++ b/usr/src/man/man4i/iec61883.4i
@@ -0,0 +1,674 @@
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.Dd July 9, 2018
+.Dt IEC61883 4I
+.Os
+.Sh NAME
+.Nm iec61883
+.Nd IEC 61883 interfaces
+.Sh SYNOPSIS
+.In sys/av/iec61883.h
+.Sh DESCRIPTION
+The set of interfaces described in this man page can be used to control and
+exchange data with consumer audio/video devices using protocols specified
+in
+.%T "IIEC 61883 Consumer Electronic Audio/Video Equipment - Digital Interface"
+including Common Isochronous Packet (CIP), Connection Management
+Procedures (CMP) and Function Control Protocol (FCP).
+.Pp
+An
+.Nm
+compliant driver exports two device nodes for isochronous and
+for asynchronous transactions.
+See the
+.Sx FILES
+section of this man page for the namespace definition.
+.Ss "Isochronous Transfers"
+Two methods are provided to receive/transmit isochronous data: using
+.Xr mmap 2
+in combination with
+.Xr ioctl 2 ,
+and
+.Xr read 2
+or
+.Xr write 2 .
+.Ss "Mmap/Ioctl"
+This method provides better performance and finer-grained control than
+read/write, and is a method of choice for most applications.
+The data buffer is
+mapped into a user process address space, which means no data copying between
+the kernel and an application is necessary.
+Synchronization between user
+processes and the driver is performed using
+.Xr ioctl 2
+commands.
+.Pp
+An application allocates resources for isochronous transfer using
+.Dv IEC61883_ISOCH_INIT .
+Then the data buffer can be mapped into the process
+space using
+.Xr mmap 2 .
+.Pp
+A circular data buffer consists of one or more equal size frame buffers
+(further referred to as frames, unless to avoid ambiguity with AV frames).
+Frames are numbered starting with zero and are always transferred sequentially.
+Frames consist equal sized packets.
+Each packet contains a CIP header and one or more data blocks.
+.Pp
+A driver and an application act as a producer and a consumer: producer supplies
+.Em full
+frames (filled with data) to the consumer, and the producer is not
+allowed to access those frames until the consumer claims them
+.Em empty .
+.Pp
+A transfer can be initiated and suspended with
+.Dv IEC61883_START
+and
+.Dv IEC61883_STOP
+commands respectively.
+.Dv IEC61883_RECV
+or
+.Dv IEC61883_XMIT
+is used for producer-consumer synchronization.
+.Ss "Read/Write"
+Using this method, an application calls
+.Xr read 2
+or
+.Xr write 2
+to receive or transmit a specified amount of data.
+Bus-specific overhead, such as isochronous packet headers, is handled by the driver
+and is not exposed to applications.
+Data returned by
+.Xr read 2
+contains CIP headers and data blocks.
+Empty packets are not returned by
+.Xr read 2 .
+.Xr write 2
+data should meet the same requirements.
+.Pp
+If one or more channels have been allocated since
+.Xr open 2
+(see
+.Dv IEC61883_ISOCH_INIT ) ,
+the data is received/transmitted using channel that was created the last.
+.Pp
+If no channels were allocated, the driver uses the broadcast channel by default
+and allocates the default-size data buffer.
+During transmit, the first packet's CIP header is used to auto-detect the data format.
+If it is one of the formats supported by the driver, it is properly transmitted (with
+inserted empty packets and timestamps).
+.Pp
+For both methods, if during transmit the driver runs out of data, it transmits
+empty packets containing only a CIP header of the next to be transmitted
+packet, as defined in
+.Em IEC 61883-1 .
+.Ss "Connection Management Procedures"
+Applications wishing to follow Connection Management Procedures (CMP) in
+combination with isochronous transfers should use the
+.Xr ioctl 2
+.Dv IEC61883_PLUG_INIT ,
+.Dv IEC61883_PLUG_FINI ,
+.Dv IEC61883_PLUG_REG_READ
+and
+.Dv IEC61883_PLUG_REG_CAS
+commands.
+.Ss "Asynchronous Transactions"
+.Xr read 2 ,
+.Xr write 2 ,
+.Xr ioctl 2 ,
+and
+.Xr poll 2
+can be used
+with asynchronous nodes.
+Asynchronous data exchange between a driver and an
+application utilizes a common data structure called asynchronous request (ARQ):
+.Bd -literal -offset 2n
+typedef struct iec61883_arq {
+ int arq_type;
+ int arq_len;
+ union {
+ uint32_t quadlet;
+ uint64_t octlet;
+ uint8_t buf[8];
+ } arq_data;
+} iec61883_arq_t;
+.Ed
+.Pp
+.Fa arq_type
+contains
+.Sy ARQ
+type:
+.Pp
+.Bl -tag -width " " -compact
+.It Dv IEC61883_ARQ_FCP_CMD
+.It Dv IEC61883_ARQ_FCP_RESP
+.Pp
+.Sy FCP
+command and response frame respectively.
+Outgoing frames are sent using
+.Xr write 2 ,
+incoming frames are received with
+.Xr read 2 .
+.Pp
+See
+.Em IIEC 61883-1
+for the FCP frame structure definition.
+.Pp
+.It Dv IEC61883_ARQ_BUS_RESET
+.Pp
+Returned by the driver when a bus reset occurs.
+There is no data associated with this request type, and \fBarq_len\fR is set to 0.
+.El
+.Pp
+If
+.Fa arq_len
+is 4 or 8, then data should be supplied in
+.Fa arq_data.quadlet
+or
+.Fa arq_data.octlet
+respectively, otherwise up to 8 bytes can be put in
+.Fa arq_data.buf ,
+with the rest of the data following immediately after.
+.Ss "write(2)"
+For a request to be sent to a target, an
+.Vt iec61883_arq_t
+structure along with associated data is passed to the driver using
+.Xr write 2 .
+.Xr write 2
+blocks until the request is completed.
+.Ss "read(2)"
+A driver collects incoming ARQs in the internal buffer.
+Buffer size can be changed using the
+.Xr ioctl 2
+command
+.Vt IEC61883_FCP_SET_IBUF_SIZE .
+.Pp
+Reading an ARQ takes one or two steps depending on data length.
+An application
+first reads
+.Ql sizeof (iec61883_arq_t)
+bytes: if
+.Fa arq_len
+is less than or equal 4, which is usually the case, no additional step is needed.
+Otherwise,
+the remaining
+.Ql arq_len - 4
+bytes should be read and concatenated.
+.Pp
+.Xr read 2
+blocks until the specified amount of data is available, unless
+.Dv O_NONBLOCK
+or
+.Dv O_NDELAY
+flag was set during
+.Xr open 2 ,
+in which case
+.Xr read 2
+returns immediately.
+.Ss "poll(2)"
+Applications can
+.Xr poll 2
+asynchronous nodes on the
+.Dv POLLIN
+event.
+.Ss "Bus Reset"
+In case of a bus reset, the driver notifies an application by generating an
+.Sy ARQ
+of type
+.Dv IEC61883_ARQ_BUS_RESET .
+.Pp
+If there were established isochronous connections before bus reset, the driver
+attempts to restore all connections as described in
+.Em IEC 61883
+and resume any active transfers that were in progress.
+.Sh IOCTLS
+The following commands only apply to isochronous nodes:
+.Bl -tag -width " "
+.It Dv IEC61883_ISOCH_INIT
+.Pp
+This command allocates a data buffer and isochronous resources (if necessary)
+for the isochronous transfer.
+The argument is a pointer to the structure:
+.Bd -literal -offset 2n
+typedef struct iec61883_isoch_init {
+ int ii_version; /* interface version */
+ int ii_pkt_size; /* packet size */
+ int ii_frame_size; /* packets/frame */
+ int ii_frame_cnt; /* # of frames */
+ int ii_direction; /* xfer direction */
+ int ii_bus_speed; /* bus speed */
+ uint64_t ii_channel; /* channel mask */
+ int ii_dbs; /* DBS */
+ int ii_fn; /* FN */
+ int ii_rate_n; /* rate numerator */
+ int ii_rate_d; /* rate denominator */
+ int ii_ts_mode; /* timestamp mode */
+ int ii_flags; /* flags */
+ int ii_handle; /* isoch handle */
+ int ii_frame_rcnt; /* # of frames */
+ off_t *ii_mmap_off /* mmap offset */
+ int ii_rchannel; /* channel */
+ int ii_error; /* error code */
+} iec61883_isoch_init_t;
+.Ed
+.Pp
+.Fa ii_version
+should be set to
+.Dv IEC61883_V1_0 .
+.Pp
+The driver attempts to allocate a data buffer consisting of
+.Fa ii_frame_cnt
+frames, with
+.Fa ii_frame_size
+packets in each frame.
+Packet size in bytes is specified by
+.Fa ii_pkt_size
+specifies and should be a multiple of 512 and compatible with
+.Fa ii_bus_speed .
+.Pp
+.Fa ii_direction
+can take one of the following values:
+.Bl -tag -width "IEC61883_DIR_RECV"
+.It Dv IEC61883_DIR_RECV
+Receiving isochronous data.
+.It Dv IEC61883_DIR_XMIT
+Transmitting isochronous data.
+.El
+.Pp
+.Fa ii_bus_speed
+chooses bus speed to be used and can be either
+.Dv IEC61883_S100 ,
+.Dv IEC61883_S200
+or
+.Dv IEC61883_S400 .
+.Pp
+.Fa ii_channel
+is a mask that specifies an isochronous channel number to be
+used, with the
+.Em N Ns th
+bit representing channel
+.Em N .
+When transmitting data, several bits can be set at a time, in which case the
+driver chooses one, for example,
+.Sy 0x3FF
+means a range from 0 to 9.
+In case of receive, only one bit can be set.
+.Pp
+.Fa ii_dbs
+specifies data block size in quadlets, for example, DBS value for
+.Dv SD-DVCR
+is
+.Sy 0x78 .
+Refer to
+.Em IEC 61883
+for more details on DBS.
+.Pp
+.Fa ii_fn
+specifies fraction number, which defines the number of blocks in which a
+source packet is divided.
+Allowed values are from 0 to 3.
+Refer to
+.Em IEC 61883
+for more details on FN.
+.Pp
+Data rate expected by the AV device can be lower than the bus speed, in which
+case the driver has to periodically insert empty packets into the data stream
+to avoid device buffer overflows.
+This rate is specified with a fraction N/D,
+set by
+.Fa ii_rate_n
+and
+.Fa ii_rate_d
+respectively.
+Any integer numbers can be used, or the following predefined constants:
+.Pp
+.Bl -tag -width "IEC61883_RATE_N_DV_NTSC" -compact
+.It Dv IEC61883_RATE_N_DV_NTSC
+.It Dv IEC61883_RATE_D_DV_NTSC
+Data rate expected by
+.Sy DV-NTSC
+devices.
+.Pp
+.It Dv IEC61883_RATE_N_DV_PAL
+.It Dv IEC61883_RATE_D_DV_PAL
+Data rate expected by
+.Sy DV-PAL
+devices.
+.El
+.Pp
+During data transmission, a timestamp based on the current value of the cycle
+timer is usually required.
+.Fa ii_ts_mode
+defines timestamp mode to be used:
+.Bl -tag -width IEC61883_TS_NONE
+.It Dv IEC61883_TS_SYT
+Driver puts a timestamp in the SYT field of the first CIP header of each frame.
+.It Dv IEC61883_TS_NONE
+No timestamps.
+.El
+.Pp
+.Fa ii_dbs ,
+.Fa ii_fn ,
+.Fa ii_rate_n ,
+.Fa ii_rate_d
+and
+.Fa ii_ts_mode
+are only required for transmission.
+In other case these should be set to 0.
+.Pp
+.Fa ii_flags
+should be set to 0.
+.Pp
+If command succeeds,
+.Fa ii_handle
+contains a handle that should be used with other isochronous commands.
+.Fa ii_frame_rcnt
+contains the number of allocated frames (can be less than
+.Fa ii_frame_cnt ) .
+.Fa ii_mmap_off
+contains an offset to be used in
+.Xr mmap 2 ,
+for example, to map an entire data receive buffer:
+.Bd -literal -offset 2n
+pa = mmap(NULL, init.ii_pkt_size *
+ init.ii_frame_size * init.ii_frame_rcnt,
+ PROT_READ, MAP_PRIVATE, fd, init.ii_mmap_off);
+.Ed
+.Pp
+.Fa ii_rchannel
+contains channel number.
+.Pp
+In case of command success,
+.Fa ii_error
+is set to 0; otherwise one of the following values can be returned:
+.Bl -tag -width IEC61883_ERR_NOCHANNEL
+.It Dv IEC61883_ERR_NOMEM
+Not enough memory for the data buffer.
+.It Dv IEC61883_ERR_NOCHANNEL
+Cannot allocate isochronous channel.
+.It Dv IEC61883_ERR_PKT_SIZE
+Packet size is not allowed at this bus speed.
+.It Dv IEC61883_ERR_VERSION
+Interface version is not supported.
+.It Dv IEC61883_ERR_INVAL
+One or more the parameters are invalid
+.It Dv IEC61883_ERR_OTHER
+Unspecified error type.
+.El
+.It Dv IEC61883_ISOCH_FINI
+.Pp
+Argument is a handle returned by
+.Dv IEC61883_ISOCH_INIT .
+This command frees any resources associated with this handle.
+There must be no active transfers
+and the data buffer must be unmapped; otherwise the command fails.
+.It Dv IEC61883_START
+.Pp
+This command starts an isochronous transfer.
+The argument is a handle returned
+by
+.Dv IEC61883_ISOCH_INIT .
+.It Dv IEC61883_STOP
+.Pp
+This command stops an isochronous transfer.
+The argument is a handle returned by
+.Dv IEC61883_ISOCH_INIT .
+.It Dv IEC61883_RECV
+.Pp
+This command is used to receive full frames and return empty frames to the driver.
+The argument is a pointer to the structure:
+.Bd -literal -offset 2n
+typedef struct iec61883_recv {
+ int rx_handle; /* isoch handle */
+ int rx_flags; /* flags */
+ iec61883_xfer_t rx_xfer; /* xfer params */
+} iec61883_recv_t;
+
+typedef struct iec61883_xfer {
+ int xf_empty_idx; /* first empty frame */
+ int xf_empty_cnt; /* empty frame count */
+ int xf_full_idx; /* first full frame */
+ int xf_full_cnt; /* full frame count */
+ int xf_error; /* error */
+} iec61883_xfer_t;
+.Ed
+.Pp
+.Fa rx_flags
+should be set to 0.
+.Pp
+An application sets
+.Fa xf_empty_idx
+and
+.Fa xf_empty_cnt
+to indicate frames it no longer needs.
+E. g. if a buffer consists of 6 frames,
+.Fa xf_empty_idx
+is 4,
+.Fa xf_empty_cnt
+is 3 - means that frames 4, 5 and 0 can now be reused by the driver.
+If there are no empty frames, for example, the
+first time this command is called,
+.Fa xf_empty_cnt
+should be set to 0.
+.Pp
+When the command returns,
+.Fa xf_full_idx
+and
+.Fa xf_full_cnt
+specifies the frames that are full.
+.Fa xf_error
+is always 0.
+.Pp
+In general, AV frame boundaries are not aligned with the frame buffer
+boundaries, because the first received packet might not be the first packet of
+an AV frame, and, in contrast with the read/write method, the driver does not
+remove empty CIP packets.
+.Pp
+Applications should detect empty packets by comparing adjacent packets'
+continuity counters (DBC field of the CIP header).
+.It Dv IEC61883_XMIT
+.Pp
+This command is used to transmit full frames and get more empty frames from the
+driver.
+The argument is a pointer to the structure:
+.Bd -literal -offset 2n
+typedef struct iec61883_xmit {
+ int tx_handle; /* isoch handle */
+ int tx_flags; /* flags */
+ iec61883_xfer_t tx_xfer; /* xfer params */
+ int tx_miss_cnt; /* missed cycles */
+ } iec61883_xmit_t;
+.Ed
+.Pp
+.Fa tx_flags
+should be set to zero.
+.Pp
+The application sets
+.Fa xf_full_idx
+and
+.Fa xf_full_cnt
+to specify frames it wishes to transmit.
+If there are no frames to transmit (e. g. the first time this command is called),
+.Fa xf_full_cnt
+should be set to 0.
+.Pp
+When the command returns,
+.Fa xf_empty_idx
+and
+.Fa xf_empty_cnt
+specifies empty frames which can be to transmit more data.
+.Fa xf_error
+is always 0.
+.Pp
+.Fa tx_miss_cnt
+contains the number of isochronous cycles missed since last
+transfer due to data buffer under run.
+This can happen when an application does not supply data fast enough.
+For the purposes of time stamping, the driver considers the first packet in a
+frame buffer to be the first packet of an AV frame.
+.It Dv IEC61883_PLUG_INIT
+.Pp
+This command returns a handle for the specified plug.
+The argument is a pointer
+to the structure:
+.Bd -literal -offset 2n
+typedef struct iec61883_plug_init {
+ int pi_ver; /* interface version */
+ int pi_loc; /* plug location */
+ int pi_type; /* plug type */
+ int pi_num; /* plug number */
+ int pi_flags; /* flags */
+ int pi_handle; /* plug handle */
+ int pi_rnum; /* plug number */
+ } iec61883_plug_init_t;
+.Ed
+.Pp
+.Fa pi_ver
+should be set to
+.Dv IEC61883_V1_0 .
+.Pp
+.Fa pi_loc
+specifies plug location:
+.Bl -tag -width IEC61883_LOC_REMOTE
+.It Dv IEC61883_LOC_LOCAL
+On the local unit (local plug).
+A plug control register (PCR) is allocated.
+Command fails if the plug already exists
+.It Dv IEC61883_LOC_REMOTE
+On the remote unit (remote plug).
+The plug should exist on the remote unit,
+otherwise the command fails.
+.El
+.Pp
+.Fa pi_type
+specifies isochronous plug type:
+.Pp
+.Bl -tag -width " " -compact
+.It Dv IEC61883_PLUG_IN
+.It Dv IEC61883_PLUG_OUT
+.Pp
+Input or output plugs.
+.Pp
+.It Dv IEC61883_PLUG_MASTER_IN
+.It Dv IEC61883_PLUG_MASTER_OUT
+.Pp
+Master input or master output plug.
+These plugs always exist on the local unit.
+.El
+.Pp
+.Fa pi_num
+specifies plug number.
+This should be 0 for master plugs, and from 0 to 31 for input/output plugs.
+Alternatively, a special value
+.Dv IEC61883_PLUG_ANY
+can be used to let the driver choose a free plug
+number, create the plug and return the number in
+.Fa pi_rnum .
+.Pp
+.Fa pi_flags
+should be set to 0.
+.Pp
+If the command succeeds,
+.Fa pi_handle
+contains a handle that should be used with other plug commands.
+.It Dv IEC61883_PLUG_FINI
+.Pp
+Argument is a handle returned by
+.Dv IEC61883_PLUG_INIT .
+This command frees any resources associated with this handle, including the PCR.
+.It Dv IEC61883_PLUG_REG_READ
+.Pp
+Read plug register value.
+The argument is a pointer to the structure:
+.Bd -literal -offset 2n
+typedef struct iec61883_plug_reg_val {
+ int pr_handle; /* plug handle */
+ uint32_t pr_val; /* register value */
+} iec61883_plug_reg_val_t;
+.Ed
+.Pp
+.Fa pr_handle
+is a handle returned by
+.Dv IEC61883_PLUG_INIT .
+Register
+value is returned in
+.Fa pr_val .
+.It Dv IEC61883_PLUG_REG_CAS
+.Pp
+Atomically compare and swap plug register value.
+The argument is a pointer to the structure:
+.Bd -literal -offset 2n
+typedef struct iec61883_plug_reg_lock {
+ int pl_handle; /* plug handle */
+ uint32_t pl_arg; /* compare arg */
+ uint32_t pl_data; /* write value */
+ UINT32_t pl_old; /* original value */
+} iec61883_plug_reg_lock_t;
+.Ed
+.Pp
+.Fa pr_handle
+is a handle returned by IEC61883_PLUG_INIT.
+.Pp
+Original register value is compared with
+.Fa pl_arg
+and if they are equal, register value is replaced with
+.Fa pl_data .
+In any case, the original value is stored in
+.Fa pl_old .
+.El
+.Pp
+The following commands only apply to asynchronous nodes:
+.Bl -tag -width " "
+.It Dv IEC61883_ARQ_GET_IBUF_SIZE
+.Pp
+This command returns current incoming ARQ buffer size.
+The argument is a
+pointer to
+.Vt int .
+.It Dv IEC61883_ARQ_SET_IBUF_SIZE
+.Pp
+This command changes incoming ARQ buffer size.
+The argument is the new buffer
+size in bytes.
+.El
+.Sh FILES
+.Bl -tag -width /dev/av/N/async
+.It Pa /dev/av/N/async
+Device node for asynchronous data
+.It Pa /dev/av/N/isoch
+Device has been disconnected
+.El
+.Sh ERRORS
+.Bl -tag -width EFAULT
+.It Er EIO
+Bus operation failed.
+DMA failure.
+.It Er EFAULT
+.Xr ioctl 2
+argument points to an illegal address.
+.It Er EINVAL
+Invalid argument or argument combination.
+.It Er ENODEV
+Device has been disconnected.
+.El
+.Sh ARCHITECTURE
+All
+.Sh INTERFACE STABILITY
+Committed
+.Sh SEE ALSO
+.Xr ioctl 2 ,
+.Xr mmap 2 ,
+.Xr open 2 ,
+.Xr poll 2 ,
+.Xr read 2 ,
+.Xr write 2 ,
+.Xr av1394 4D ,
+.Xr attributes 7
+.Rs
+.%B IIEC 61883 Consumer audio/video equipment - Digital interface
+.Re
+.Rs
+.%B IEEE Std 1394-1995 Standard for a High Performance Serial Bus
+.Re
diff --git a/usr/src/man/man4i/ipnat.4i b/usr/src/man/man4i/ipnat.4i
new file mode 100644
index 0000000000..1df2b96e2d
--- /dev/null
+++ b/usr/src/man/man4i/ipnat.4i
@@ -0,0 +1,436 @@
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright (c) 2017, Joyent, Inc.
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.Dd October 23, 2017
+.Dt IPNAT 4I
+.Os
+.Sh NAME
+.Nm ipnat
+.Nd IP Filter/NAT module interface
+.Sh DESCRIPTION
+The
+.Sy ipnat
+device provides interfaction with the NAT features of the Solaris IPFilter.
+.Sh APPLICATION PROGRAMMING INTERFACE
+The NAT features programming model is a component of the Solaris IP Filter and
+is accessed via the NAT device file
+.Pa /dev/ipnat .
+Opening the device for
+reading or writing determines which ioctl calls can be successfully made.
+.Sh IOCTLS
+The caller must construct a
+.Vt ipfobj
+structure when issuing a
+.Sy SIOCGNATL
+or
+SIOCSTPUT
+ioctl.
+The
+.Vt ipfobj
+structure is then passed
+to the ioctl call and is filled out with
+.Fa ipfo_type
+set to
+.Dv IPFOBJ_ Ns value .
+.Dv IPFOBJ_ Ns value
+provides a matching name for the structure, while
+.Fa ipfo_size
+is set to the total size of the structure being passed and
+.Fa ipfo_ptr
+is set to the structure address.
+The
+.Fa ipfo_rev
+structure should be set to the current value of
+.Dv IPFILTER_VERSION ,
+while
+.Fa ipfo_offset
+and
+.Fa ipfo_xxxpad
+should be set to 0.
+.Bd -literal -offset 2n
+/*
+ * Structure used with SIOCGNATL/SIOCSTPUT.
+ */
+
+/*
+ * Object structure description. For passing through in ioctls.
+ */
+typedef struct ipfobj {
+ u_32_t ipfo_rev; /* IPFilter version (IPFILTER_VERSION) */
+ u_32_t ipfo_size; /* size of object at ipfo_ptr */
+ void *ipfo_ptr; /* pointer to object */
+ int ipfo_type; /* type of object being pointed to */
+ int ipfo_offset; /* bytes from ipfo_ptr where to start */
+ u_char ipfo_xxxpad[32]; /* reserved for future use */
+} ipfobj_t;
+
+#define IPFILTER_VERSION 4010901 /* IPFilter version */
+#define IPFOBJ_NATSAVE 8 /* struct nat_save */
+#define IPFOBJ_NATLOOKUP 9 /* struct natlookup */
+.Ed
+.Pp
+The following
+.Xr ioctl 2
+calls may be used to manipulate the ipnat sub-system inside of ipf.
+Note that the ipnat driver only accept calls from applications
+using the same data model as the kernel.
+In other words, 64-bit kernels can only accept calls from 64-bit applications.
+Calls from 32-bit applications fail
+with
+.Er EINVAL .
+.Bl -tag -width SIOCSTLCK
+.It Dv SIOCSTLCK
+Set or clear the NAT lock to prevent table updates attributable to packet
+flow-through.
+.It Dv SIOCGNATL
+Search the NAT table for the rdr entry that matches the fields in the natlookup
+structure.
+The caller must populate the structure with the address/port
+information of the accepted TCP connection
+.Pq Fa nl_inip , Fa nl_inport
+and the
+address/port information of the peer
+.Pq Fa nl_outip , Fa nl_outport .
+The
+.Fa nl_flags
+field must have the
+.Dv IPN_TCP
+option set.
+All other fields must be set to 0.
+If the call succeeds,
+.Fa nl_realip
+and
+.Fa nl_realport
+are set to the real destination address and port, respectively.
+The
+.Fa nl_inport
+and
+.Fa nl_outport
+fields must be in host byte order.
+If
+.Dv IPN_FINDFORWARD
+is set in
+.Fa nl_flags ,
+a check is made to see if it is
+possible to create an outgoing NAT session by checking if a packet coming from
+.Pq Fa nl_realip , Fa nl_realport
+and destined for
+.Pq Fa nl_outip , Fa nl_outport
+can be translated.
+If translation is possible, the flag remains set, otherwise it is
+cleared in the structure returned to the caller.
+.Bd -literal -offset indent
+/*
+ * Structure used with SIOCGNATL.
+ */
+typedef struct natlookup {
+ i6addr_t nl_inipaddr;
+ i6addr_t nl_outipaddr;
+ i6addr_t nl_realipaddr;
+ int nl_v;
+ int nl_flags;
+ u_short nl_inport;
+ u_short nl_outport;
+ u_short nl_realport;
+} natlookup_t
+
+#define nl_inip nl_inipaddr.in4
+#define nl_outip nl_outipaddr.in4
+#define nl_realip nl_realipaddr.in4
+#define nl_inip6 nl_inipaddr.in6
+#define nl_outip6 nl_outipaddr.in6
+#define nl_realip6 nl_realipaddr.in6
+
+/*
+ * Accepted values for nl_flags
+ */
+#define IPN_TCP 0x00001
+#define IPN_FINDFORWARD 0x400000
+.Ed
+.It Dv SIOCSTPUT
+Move a NAT mapping structure from user space into the kernel.
+This ioctl is used by
+.Xr ipfs 8
+to restore NAT sessions saved in
+.Pa /var/db/ipf/ipnat.ipf .
+The
+.Vt nat_save
+structure must have its
+.Fa ipn_nat
+and
+.Fa ipn_ipnat
+structures filled out correctly.
+Fields not assigned a value must be initialised to 0.
+All pointer fields are adjusted, as appropriate, once the
+structure is passed into the kernel and none are preserved.
+.Pp
+To create a translation, the following fields must be set:
+.\" Force item bodies to next line using 2n width
+.Bl -tag -width 2n
+.It "Interface name"
+The interface name on which the host is to be exited must be
+set in
+.Fa nat_ifnames[0] .
+.It "Local IP address and port number"
+The connection's local IP address and port
+number are stored in network byte order using
+.Fa nat_inip Ns / Ns Fa nat_inport .
+.It "Destination address/port"
+The destination address/port are stored in
+.Fa nat_oip Ns / Ns Fa nat_oport .
+.It "Target address/port"
+The translation's target address/port is stored in
+.Fa nat_outip Ns / Ns Fa nat_outport .
+.El
+.Pp
+The caller must also precalculate the checksum adjustments necessary to
+complete the translation and store those values in
+.Fa nat_sumd
+(delta required for TCP header) and
+.Fa nat_ipsumd
+(delta required for IP header).
+.Bd -literal -offset indent
+/*
+ * Structures used with SIOCSTPUT.
+ */
+typedef struct nat_save {
+ void *ipn_next;
+ struct nat ipn_nat;
+ struct ipnat ipn_ipnat;
+ struct frentry ipn_fr;
+ int ipn_dsize;
+ char ipn_data[4];
+} nat_save_t;
+
+typedef struct nat {
+ ipfmutex_t nat_lock;
+ struct nat *nat_next;
+ struct nat **nat_pnext;
+ struct nat *nat_hnext[2];
+ struct nat **nat_phnext[2];
+ struct hostmap *nat_hm;
+ void *nat_data;
+ struct nat **nat_me;
+ struct ipstate *nat_state;
+ struct ap_session *nat_aps;
+ frentry_t *nat_fr;
+ struct ipnat *nat_ptr;
+ void *nat_ifps[2];
+ void *nat_sync;
+ ipftqent_t nat_tqe;
+ u_32_t nat_flags;
+ u_32_t nat_sumd[2];
+ u_32_t nat_ipsumd;
+ u_32_t nat_mssclamp;
+ i6addr_t nat_inip6;
+ i6addr_t nat_outip6;
+ i6addr_t nat_oip6;
+ U_QUAD_T nat_pkts[2];
+ U_QUAD_T nat_bytes[2];
+ union {
+ udpinfo_t nat_unu;
+ tcpinfo_t nat_unt;
+ icmpinfo_t nat_uni;
+ greinfo_t nat_ugre;
+ } nat_un;
+ u_short nat_oport;
+ u_short nat_use;
+ u_char nat_p;
+ int nat_dir;
+ int nat_ref;
+ int nat_hv[2];
+ char nat_ifnames[2][LIFNAMSIZ];
+ int nat_rev;
+ int nat_v;
+} nat_t;
+
+#define nat_inip nat_inip6.in4
+#define nat_outip nat_outip6.in4
+#define nat_oip nat_oip6.in4
+#define nat_inport nat_un.nat_unt.ts_sport
+#define nat_outport nat_un.nat_unt.ts_dport
+/*
+ * Values for nat_dir
+ */
+#define NAT_INBOUND 0
+#define NAT_OUTBOUND 1
+/*
+ * Definitions for nat_flags
+ */
+#define NAT_TCP 0x0001 /* IPN_TCP */
+.Ed
+.El
+.Sh EXAMPLES
+The following example shows how to prepare and use
+.Fa SIOCSTPUT
+to insert a NAT session directly into the table.
+Note that the usual TCP/IP code is omitted is this example.
+.Pp
+In the code segment below,
+.Fa incoming_fd
+is the TCP connection file descriptor
+that is accepted as part of the redirect process, while
+.Fa remote_fd
+is the outgoing TCP connection to the remote server being translated back to the
+original IP address/port pair.
+.Pp
+Note \(em
+The following ipnat headers must be included before you can use the code shown
+in this example:
+.Bd -literal -offset 2n
+#include <netinet/in.h>
+#include <arpa/inet.h>
+#include <net/if.h>
+#include <netinet/ipl.h>
+#include <netinet/ip_compat.h>
+#include <netinet/ip_fil.h>
+#include <netinet/ip_nat.h>
+#include <string.h>
+#include <fcntl.h>
+.Ed
+.Pp
+Note \(em
+In the example below, various code fragments have been excluded to enhance
+clarity.
+.Bd -literal -offset 2n
+int
+translate_connection(int incoming_fd)
+{
+ struct sockaddr_in usin;
+ struct natlookup nlp;
+ struct nat_save ns;
+ struct ipfobj obj;
+ struct nat *nat;
+ int remote_fd;
+ int nat_fd;
+ int onoff;
+
+ memset(&ns, 0, sizeof(ns));
+ nat = &ns.ipn_nat
+
+ namelen = sizeof(usin);
+ getsockname(remote_fd, (struct sockaddr *)&usin, &namelen);
+
+ namelen = sizeof(sin);
+ getpeername(incoming_fd, (struct sockaddr *) &sin, &namelen);
+
+ namelen = sizeof(sloc);
+ getsockname(incoming_fd, (struct sockaddr *) &sloc, &namelen);
+
+ bzero((char *) &obi, sizeof(obj));
+ obj.ipfo_rev = IPFILTER_VERSION;
+ obj.ipfo_size = sizeof(nlp);
+ obj.ipfo_ptr = &nip;
+ obj.ipfo_type = IPFOBJ_NATLOOKUP;
+
+ /*
+ * Build up the NAT natlookup structure.
+ */
+ bzero((char *) &nlp, sizeof(nlp));
+ nlp.nl_outip = sin.sin_addr;
+ nlp.nl_inip = sloc.sin_addr;
+ nlp.nl_flags = IPN_TCP;
+ nlp.nl_outport = ntohs(sin.sin_port);
+ nlp.nl_inport = ntohs(sloc.sin_port);
+
+ /*
+ * Open the NAT device and lookup the mapping pair.
+ */
+ nat_fd = open(IPNAT_NAME, O_RDWR);
+ if (ioctl(nat_fd, SIOCGNATL, &obj) != 0)
+ return -1;
+
+ nat->nat_inip = usin.sin_addr;
+ nat->nat_outip = nlp.nl_outip;
+ nat->nat_oip = nlp.nl_realip;
+
+ sum1 = LONG_SUM(ntohl(usin.sin_addr.s_addr)) +
+ ntohs(usin.sin_port);
+ sum2 = LONG_SUM(ntohl(nat->nat_outip.s_addr)) +
+ ntohs(nlp.nl_outport);
+ CALC_SUMD(sum1, sum2, sumd);
+ nat->nat_sumd[0] = (sumd & 0xffff) + (sumd >> 16);
+ nat->nat_sumd[1] = nat->nat_sumd[0];
+
+ sum1 = LONG_SUM(ntohl(usin.sin_addr.s_addr));
+ sum2 = LONG_SUM(ntohl(nat->nat_outip.s_addr));
+ CALC_SUMD(sum1, sum2, sumd);
+ nat->nat_ipsumd = (sumd & 0xffff) + (sumd >> 16);
+
+ nat->nat_inport = usin.sin_port;
+ nat->nat_outport = nlp.nl_outport;
+ nat->nat_oport = nlp.nl_realport;
+
+ nat->nat_flags = IPN_TCPUDP;
+
+ /*
+ * Prepare the ipfobj structure, accordingly.
+ */
+ bzero((char *)&obi, sizeof(obj));
+ obj.ipfo_rev = IPFILTER_VERSION;
+ obj.ipfo_size = sizeof(*nsp);
+ obj.ipfo_ptr = nsp;
+ obj.ipfo_type = IPFOBJ_NATSAVE;
+
+ onoff = 1;
+ if (ioctl(nat_fd, SIOCSTPUT, &obj) != 0)
+ fprintf(stderr, "Error occurred\en");
+
+ return connect(rem_fd, (struct sockaddr)&usin, sizeof(usin));
+}
+.Ed
+.Sh ERRORS
+.Bl -tag -width Er
+.It Er EPERM
+The device has been opened for reading only.
+To succeed, the ioctl call must be opened for both reading and writing.
+The call may be returned if it is
+privileged and the calling process did not assert
+.Brq Sy PRIV_SYS_NET_CONFIG
+in the effective set.
+.It Er ENOMEM
+More memory was allocated than the kernel can provide.
+The call may also be returned if the application inserts a NAT entry that
+exceeds the hash bucket chain's maximum length.
+.It Er EFAULT
+The calling process specified an invalid pointer in the ipfobj structure.
+.It Er EINVAL
+The calling process detected a parameter or field set to an unacceptable value.
+.It Er EEXIST
+The calling process, via
+.Dv SIOCSTPUT ,
+attempted to add a NAT entry that already exists in the NAT table.
+.It Er ESRCH
+The calling process called
+.Dv SIOCSTPUT
+before setting the
+.Dv SI_NEWFR
+flag and providing a pointer in the
+.Fa nat_fr
+field that cannot be found in the current rule set.
+.It Er EACESS
+The calling process issued a
+.Dv SIOCSTPUT
+before issuing a
+.Dv SIOCSTLCK .
+.El
+.Sh INTERFACE STABILITY
+Committed
+.Sh SEE ALSO
+.Xr ioctl 2 ,
+.Xr attributes 7 ,
+.Xr ipfs 8 ,
+.Xr ipnat 8
diff --git a/usr/src/man/man4i/mhd.4i b/usr/src/man/man4i/mhd.4i
new file mode 100644
index 0000000000..735e69982e
--- /dev/null
+++ b/usr/src/man/man4i/mhd.4i
@@ -0,0 +1,386 @@
+.\" Copyright (c) 2005 Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright (c) 2017, Joyent, Inc.
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.Dd October 23, 2017
+.Dt MHD 4I
+.Os
+.Sh NAME
+.Nm mhd
+.Nd multihost disk control operations
+.Sh SYNOPSIS
+.In sys/mhd.h
+.Sh DESCRIPTION
+The
+.Nm
+.Xr ioctl 2
+control access rights of a multihost disk, using
+disk reservations on the disk device.
+.Pp
+The stability level of this interface (see
+.Xr attributes 7 )
+is evolving.
+As a result, the interface is subject to change and you should limit your use of
+it.
+.Pp
+The mhd ioctls fall into two major categories: (1) ioctls for non-shared
+multihost disks and (2) ioctls for shared multihost disks.
+.Pp
+One ioctl,
+.Dv MHIOCENFAILFAST ,
+is applicable to both non-shared and shared multihost disks.
+It is described after the first two categories.
+.Pp
+All the ioctls require root privilege.
+.Pp
+For all of the ioctls, the caller should obtain the file descriptor for the
+device by calling
+.Xr open 2
+with the
+.Dv O_NDELAY
+flag; without the
+.Dv O_NDELAY
+flag, the open may fail due to another host already having a
+conflicting reservation on the device.
+Some of the ioctls below permit the caller to forcibly clear a conflicting
+reservation held by another host, however, in order to call the ioctl, the
+caller must first obtain the open file descriptor.
+.Ss "Non-shared multihost disks"
+Non-shared multihost disks ioctls consist of
+.Dv MHIOCTKOWN ,
+.Dv MHIOCRELEASE ,
+.Dv HIOCSTATUS ,
+and
+.Dv MHIOCQRESERVE .
+These ioctl requests control the access rights of non-shared multihost disks.
+A non-shared multihost disk is one that supports serialized, mutually exclusive
+I/O mastery by the connected hosts.
+This is in contrast to the shared-disk model, in which
+concurrent access is allowed from more than one host (see below).
+.Pp
+A non-shared multihost disk can be in one of two states:
+.Bl -bullet -width indent
+.It
+Exclusive access state, where only one connected host has I/O access
+.It
+Non-exclusive access state, where all connected hosts have I/O access.
+An external hardware reset can cause the disk to enter the non-exclusive access
+state.
+.El
+.Pp
+Each multihost disk driver views the machine on which it's running as the
+.Dq local host ;
+each views all other machines as
+.Dq remote hosts .
+For each I/O or ioctl request, the requesting host is the local host.
+.Pp
+Note that the non-shared ioctls are designed to work with SCSI-2 disks.
+The
+SCSI-2 RESERVE/RELEASE command set is the underlying hardware facility in the
+device that supports the non-shared ioctls.
+.Pp
+The function prototypes for the non-shared ioctls are:
+.Bd -literal -offset 2n
+.Fn ioctl fd MHIOCTKOWN ;
+.Fn ioctl fd MHIOCRELEASE ;
+.Fn ioctl fd MHIOCSTATUS ;
+.Fn ioctl fd MHIOCQRESERVE ;
+.Ed
+.Bl -tag -width MHIOCQRESERVE
+.It Dv MHIOCTKOWN
+Forcefully acquires exclusive access rights to the multihost disk for the local
+host.
+Revokes all access rights to the multihost disk from remote hosts.
+Causes the disk to enter the exclusive access state.
+.Pp
+Implementation Note: Reservations (exclusive access rights) broken via random
+resets should be reinstated by the driver upon their detection, for example, in
+the automatic probe function described below.
+.It Dv MHIOCRELEASE
+Relinquishes exclusive access rights to the multihost disk for the local host.
+On success, causes the disk to enter the non- exclusive access state.
+.It Dv MHIOCSTATUS
+Probes a multihost disk to determine whether the local host has access rights
+to the disk.
+Returns
+.Sy 0
+if the local host has access to the disk,
+.Sy 1
+if it doesn't, and
+.Sy -1
+with
+.Va errno
+set to
+.Er EIO
+if the probe failed for some other reason.
+.It Dv MHIOCQRESERVE
+Issues, simply and only, a SCSI-2 Reserve command.
+If the attempt to reserve
+fails due to the SCSI error Reservation Conflict (which implies that some other
+host has the device reserved), then the ioctl will return
+.Sy -1
+with
+.Va errno
+set to
+.Er EACCES .
+The
+.Dv MHIOCQRESERVE
+ioctl does NOT issue a bus device
+reset or bus reset prior to attempting the SCSI-2 reserve command.
+It also
+does not take care of re-instating reservations that disappear due to bus
+resets or bus device resets; if that behavior is desired, then the caller can
+call
+.Dv MHIOCTKOWN
+after the
+.Dv MHIOCQRESERVE
+has returned success.
+If
+the device does not support the SCSI-2 Reserve command, then the ioctl returns
+.Er -1
+with
+.Va errno
+set to
+.Er ENOTSUP .
+The
+.Dv MHIOCQRESERVE
+ioctl is intended to be used by high-availability or clustering software for a
+.Dq quorum
+disk, hence, the
+.Dq Q
+in the name of the ioctl.
+.El
+.Ss "Shared Multihost Disks"
+Shared multihost disks ioctls control access to shared multihost disks.
+The ioctls are merely a veneer on the SCSI-3 Persistent Reservation facility.
+Therefore, the underlying semantic model is not described in detail here, see
+instead the SCSI-3 standard.
+The SCSI-3 Persistent Reservations support the
+concept of a group of hosts all sharing access to a disk.
+.Pp
+The function prototypes and descriptions for the shared multihost ioctls are as
+follows:
+.Bl -tag -width 1n
+.It Fn ioctl fd MHIOCGRP_INKEYS "(mhioc_inkeys_t *)k"
+.Pp
+Issues the SCSI-3 command Persistent Reserve In Read Keys to the device.
+On input, the field
+.Fa k->li
+should be initialized by the caller with
+.Fa k->li.listsize
+reflecting how big of an array the caller has allocated for the
+.Fa k->lilist
+field and with
+.Ql k->li.listlen\& ==\& 0 .
+On return, the field
+.Fa k->li.listlen
+is updated to indicate the number of
+reservation keys the device currently has: if this value is larger than
+.Fa k->li.listsize
+then that indicates that the caller should have passed a bigger
+.Fa k->li.list
+array with a bigger
+.Fa k->li.listsize .
+The number of array elements actually written by the callee into
+.Fa k->li.list
+is the minimum of
+.Fa k->li.listlen
+and
+.Fa k->li.listsize .
+The field
+.Fa k->generation
+is updated with the generation information returned by the SCSI-3
+Read Keys query.
+If the device does not support SCSI-3 Persistent Reservations,
+then this ioctl returns
+.Sy -1
+with
+.Va errno
+set to
+.Er ENOTSUP .
+.It Fn ioctl fd MHIOCGRP_INRESV "(mhioc_inresvs_t *)r"
+.Pp
+Issues the SCSI-3 command Persistent Reserve In Read Reservations to the
+device.
+Remarks similar to
+.Dv MHIOCGRP_INKEYS
+apply to the array manipulation.
+If the device does not support SCSI-3 Persistent Reservations,
+then this ioctl returns
+.Sy -1
+with
+.Va errno
+set to
+.Er ENOTSUP .
+.It Fn ioctl fd MHIOCGRP_REGISTER "(mhioc_register_t *)r"
+.Pp
+Issues the SCSI-3 command Persistent Reserve Out Register.
+The fields of structure
+.Va r
+are all inputs; none of the fields are modified by the ioctl.
+The field
+.Fa r->aptpl
+should be set to true to specify that registrations
+and reservations should persist across device power failures, or to false to
+specify that registrations and reservations should be cleared upon device power
+failure; true is the recommended setting.
+The field
+.Fa r->oldkey
+is the key that the caller believes the device may already have for this host
+initiator; if the caller believes that that this host initiator is not already
+registered with this device, it should pass the special key of all zeros.
+To achieve the effect of unregistering with the device, the caller should pass
+its current key for the
+.Fa r->oldkey
+field and an
+.Fa r->newkey
+field containing the special key of all zeros.
+If the device returns the SCSI error code
+Reservation Conflict, this ioctl returns
+.Sy -1
+with
+.Va errno
+set to
+.Er EACCES .
+.It Fn ioctl fd MHIOCGRP_RESERVE "(mhioc_resv_desc_t *)r"
+.Pp
+Issues the SCSI-3 command Persistent Reserve Out Reserve.
+The fields of
+structure
+.Va r
+are all inputs; none of the fields are modified by the ioctl.
+If the device returns the SCSI error code Reservation Conflict, this ioctl
+returns
+.Sy -1
+with
+.Va errno
+set to
+.Er EACCES .
+.It Fn ioctl fd MHIOCGRP_PREEMPTANDABORT "(mhioc_preemptandabort_t *)r"
+.Pp
+Issues the SCSI-3 command Persistent Reserve Out Preempt-And-Abort.
+The fields
+of structure
+.Va r
+are all inputs; none of the fields are modified by the ioctl.
+The key of the victim host is specified by the field
+.Fa r->victim_key .
+The field
+.Fa r->resvdesc
+supplies the preempter's key and the reservation that it is requesting as part
+of the SCSI-3 Preempt-And-Abort command.
+If the device returns the SCSI error code
+Reservation Conflict, this ioctl returns
+.Sy -1
+with
+.Va errno
+set to
+.Er EACCES .
+.It Fn ioctl fd MHIOCGRP_PREEMPT "(mhioc_preemptandabort_t *)r"
+.Pp
+Similar to
+.Dv MHIOCGRP_PREEMPTANDABORT ,
+but instead issues the SCSI-3 command Persistent Reserve Out Preempt.
+(Note: This command is not implemented).
+.It Fn ioctl fd MHIOCGRP_CLEAR "(mhioc_resv_key_t *)r"
+Issues the SCSI-3 command Persistent Reserve Out Clear.
+The input parameter
+.Va r
+is the reservation key of the caller, which should have been already
+registered with the device, by an earlier call to
+.Dv MHIOCGRP_REGISTER .
+.El
+.Pp
+For each device, the non-shared ioctls should not be mixed with the Persistent
+Reserve Out shared ioctls, and vice-versa, otherwise, the underlying device is
+likely to return errors, because SCSI does not permit SCSI-2 reservations to be
+mixed with SCSI-3 reservations on a single device.
+It is, however, legitimate
+to call the Persistent Reserve In ioctls, because these are query only.
+Issuing the
+.Dv MHIOCGRP_INKEYS
+ioctl is the recommended way for a caller to
+determine if the device supports SCSI-3 Persistent Reservations (the ioctl
+will return
+.Sy -1
+with
+.Va errno
+set to
+.Er ENOTSUP
+if the device does not).
+.Ss "MHIOCENFAILFAST Ioctl"
+The
+.Dv MHIOCENFAILFAST
+ioctl is applicable for both non-shared and shared
+disks, and may be used with either the non-shared or shared ioctls.
+.Bl -tag -width 1n
+.It Fn ioctl fd MHIOENFAILFAST "(unsigned int *)millisecs"
+.Pp
+Enables or disables the failfast option in the multihost disk driver and
+enables or disables automatic probing of a multihost disk, described below.
+The argument is an unsigned integer specifying the number of milliseconds to
+wait between executions of the automatic probe function.
+An argument of zero disables the failfast option and disables automatic probing.
+If the
+.Dv MHIOCENFAILFAST
+ioctl is never called, the effect is defined to be that
+both the failfast option and automatic probing are disabled.
+.El
+.Ss "Automatic Probing"
+The
+.Dv MHIOCENFAILFAST
+ioctl sets up a timeout in the driver to periodically
+schedule automatic probes of the disk.
+The automatic probe function works in this manner: The driver is scheduled to
+probe the multihost disk every n milliseconds, rounded up to the next integral
+multiple of the system clock's resolution.
+If
+.Bl -enum -offset indent
+.It
+the local host no longer has access rights to the multihost disk, and
+.It
+access rights were expected to be held by the local host,
+.El
+.Pp
+the driver immediately panics the machine to comply with the failfast model.
+.Pp
+If the driver makes this discovery outside the timeout function, especially
+during a read or write operation, it is imperative that it panic the system
+then as well.
+.Sh RETURN VALUES
+Each request returns
+.Sy -1
+on failure and sets
+.Va errno
+to indicate the error.
+.Bl -tag -width Er
+.It Er EPERM
+Caller is not root.
+.It Er EACCES
+Access rights were denied.
+.It Er EIO
+The multihost disk or controller was unable to successfully complete the
+requested operation.
+.It Er EOPNOTSUP
+The multihost disk does not support the operation.
+For example, it does not support the SCSI-2 Reserve/Release command set, or the
+SCSI-3 Persistent Reservation command set.
+.El
+.Sh STABILITY
+Uncommitted
+.Sh SEE ALSO
+.Xr ioctl 2 ,
+.Xr open 2 ,
+.Xr attributes 7
diff --git a/usr/src/man/man4i/mixer.4i b/usr/src/man/man4i/mixer.4i
new file mode 100644
index 0000000000..6d4487796b
--- /dev/null
+++ b/usr/src/man/man4i/mixer.4i
@@ -0,0 +1,767 @@
+.\" Copyright (c) 2009 Sun Microsystems, Inc. All rights reserved.
+.\" Copyright 2019, Joyent, Inc.
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.Dd February 1, 2019
+.Dt MIXER 4I
+.Os
+.Sh NAME
+.Nm mixer
+.Nd generic mixer device interface
+.Sh SYNOPSIS
+.In sys/soundcard.h
+.Sh DESCRIPTION
+.Ss "Mixer Pseudo-Device"
+The
+.Pa /dev/mixer
+pseudo-device is provided for two purposes:
+.Bl -bullet -offset indent
+.It
+The first purpose is for applications that wish to learn about the list of
+audio devices on the system, so that they can select (or provide for users to
+select) an appropriate audio device.
+The
+.Pa /dev/mixer
+pseudo-device
+provides interfaces to enumerate all of the audio devices on the system.
+.It
+The second purpose is for mixer panel type applications which need to control
+master settings for the audio hardware in the system, such as gain levels,
+balance, port functionality, and other device features.
+.El
+.Pp
+Ordinary audio applications should
+.Em not
+attempt to adjust their playback
+or record volumes or other device settings using this device.
+Instead, they
+should use the
+.Dv SNDCTL_DSP_SETPLAYVOL
+and
+.Dv SNDCTL_DSP_SETRECVOL
+ioctls that are documented in
+.Xr dsp 4I .
+.Ss "Sndstat Device"
+The
+.Pa /dev/sndstat
+device supports
+.Xr read 2 ,
+and can be read to
+retrieve human-readable information about the audio devices on the system.
+Software should not attempt to interpret the contents of this device.
+.Sh IOCTLS
+.Ss "Information IOCTLs"
+The following ioctls are intended to aid applications in identifying the audio
+devices available on the system.
+These ioctls can be issued against either the
+pseudo-device
+.Pa /dev/mixer ,
+or a against a file descriptor open to any
+other audio device in the system.
+.Pp
+Applications should issue
+.Dv SNDCTL_SYSINFO
+first to learn what audio
+devices and mixers are available on the system, and then use
+.Dv SNDCTL_AUDIOINFO
+or
+.Dv SNDCTL_MIXERINFO
+to obtain more information
+about the audio devices or mixers, respectively.
+.Bl -tag -width SNDCTL_AUDIOINFO
+.It Dv OSS_GETVERSION
+The argument is a pointer to an integer, which retrieves the version of the
+.Sy OSS API
+used.
+The value is encoded with the major version (currently 4)
+encoded in the most significant 16 bits, and a minor version encoded in the
+lower 16 bits.
+.It Dv SNDCTL_SYSINFO
+The argument is a pointer to an
+.Vt oss_sysinfo
+structure, which has the following definition:
+.Bd -literal -offset 2n
+typedef struct oss_sysinfo {
+ char product[32]; /* E.g. SunOS Audio */
+ char version[32]; /* E.g. 4.0a */
+ int versionnum; /* See OSS_GETVERSION */
+ char options[128]; /* NOT SUPPORTED */
+
+ int numaudios; /* # of audio/dsp devices */
+ int openedaudio[8]; /* Reserved, always 0 */
+
+ int numsynths; /* NOT SUPPORTED, always 0 */
+ int nummidis; /* NOT SUPPORTED, always 0 */
+ int numtimers; /* NOT SUPPORTED, always 0 */
+ int nummixers; /* # of mixer devices */
+
+ /* Mask of midi devices are busy */
+ int openedmidi[8];
+
+ /* Number of sound cards in the system */
+ int numcards;
+
+ /* Number of audio engines in the system */
+ int numaudioengines;
+ char license[16]; /* E.g. "GPL" or "CDDL" */
+ char revision_info[256]; /* Reserved */
+ int filler[172]; /* Reserved */
+} oss_sysinfo;
+.Ed
+.Pp
+The important fields here are
+.Fa numaudios ,
+which is used to determine the
+number of audio devices that can be queried with
+.Dv SNDCTL_AUDIOINFO ,
+.Fa nummixers
+which provides a count of mixers on the system, and
+.Fa numcards
+which counts to total number of aggregate devices.
+A
+.Sy card
+can consist of one or more audio devices and one or more mixers, although more
+typically there is exactly one audio device and one mixer for each card.
+.It Dv SNDCTL_AUDIOINFO
+The argument is a pointer to an
+.Vt oss_audioinfo
+structure, which has the following structure:
+.Bd -literal -offset 2n
+typedef struct oss_audioinfo {
+ int dev; /* Device to query */
+ char name[64]; /* Human readable name */
+ int busy; /* reserved */
+ int pid; /* reserved */
+
+ /* PCM_CAP_INPUT, PCM_CAP_OUTPUT */
+ int caps;
+ int iformats; /* Supported input formats */
+ int oformats; /* Supported output formats */
+ int magic; /* reserved */
+ char cmd[64]; /* reserved */
+ int card_number;
+ int port_number; /* reserved */
+ int mixer_dev;
+
+ /* Obsolete field. Replaced by devnode */
+ int legacy_device;
+ int enabled; /* reserved */
+ int flags; /* reserved */
+ int min_rate; /* Minimum sample rate */
+ int max_rate; /* Maximum sample rate */
+ int min_channels; /* Minimum number of channels */
+ int max_channels; /* Maximum number of channels */
+ int binding; /* reserved */
+ int rate_source; /* reserved */
+ char handle[32]; /* reserved */
+ unsigned int nrates; /* reserved */
+ unsigned int rates[20]; /* reserved */
+ char song_name[64]; /* reserved */
+ char label[16]; /* reserved */
+ int latency; /* reserved */
+
+ /* Device special file name (absolute path) */
+ char devnode[32];
+ int next_play_engine; /* reserved */
+ int next_rec_engine; /* reserved */
+ int filler[184]; /* reserved */
+} oss_audioinfo;
+.Ed
+.Pp
+In the above structure, all of the fields are reserved except the following:
+.Fa dev ,
+.Fa name ,
+.Fa card_number ,
+.Fa mixer_dev ,
+.Fa caps ,
+.Fa min_rate ,
+.Fa max_rate ,
+.Fa min_channels ,
+.Fa max_channels ,
+and
+.Fa devnode .
+The reserved fields are provided for compatibility with other OSS
+implementations, and available for legacy applications.
+New applications should not attempt to use these fields.
+.Pp
+The
+.Fa dev
+field should be initialized by the application to the number of
+the device to query.
+This is a number between zero (inclusive) and value of
+.Fa numaudios
+(exclusive) returned by
+.Dv SNDCTL_SYSINFO .
+Alternatively,
+when issuing the ioctl against a real mixer or
+.Sy dsp
+device, the special
+value
+.Sy -1
+can be used to indicate that the query is being made against the device opened.
+If
+.Sy -1
+is used, the field is overwritten with the device
+number for the current device on successful return.
+.Pp
+No other fields are significant upon entry, but a successful return contains
+details of the device.
+.Pp
+The
+.Fa name
+field is a human readable name representing the device.
+Applications should not try to interpret it.
+.Pp
+The
+.Fa card_number
+field indicates the number assigned to the aggregate device.
+This can be used with the
+.Dv SNDCTL_CARDINFO
+ioctl.
+.Pp
+The
+.Fa mixer_dev
+is the mixer device number for the mixing device associated
+with the audio device.
+This can be used with the
+.Dv SNDCTL_MIXERINFO
+ioctl.
+.Pp
+The
+.Fa caps
+field contains any of the bits
+.Dv PCM_CAP_INPUT ,
+.Dv PCM_CAP_OUTPUT ,
+and
+.Dv PCM_CAP_DUPLEX .
+Indicating whether the device
+support input, output, and whether input and output can be used simultaneously.
+All other bits are reserved.
+.Pp
+The
+.Fa min_rate
+and
+.Fa max_rate
+fields indicate the minimum and maximum sample rates supported by the device.
+Most applications should try to use the maximum supported rate for the best
+audio quality and lowest system resource consumption.
+.Pp
+The
+.Fa min_channels
+and
+.Fa max_channels
+provide an indication of the number of channels (1 for mono, 2 for stereo,
+6 for 5\&.1, etc\&.) supported by the device.
+.Pp
+The
+.Fa devnode
+field contains the actual full path to the device node for this device, such as
+.Pa /dev/sound/audio810:0dsp .
+Applications should open this file to access the device.
+.It Dv SNDCTL_CARDINFO
+The argument is a pointer to a
+.Vt struct oss_card_info ,
+which has the following definition:
+.Bd -literal -offset 2n
+typedef struct oss_card_info {
+ int card;
+ char shortname[16];
+ char longname[128];
+ int flags; /* reserved */
+ char hw_info[400];
+ int intr_count; /* reserved */
+ int ack_count; /* reserved */
+ int filler[154];
+} oss_card_info;
+.Ed
+.Pp
+This ioctl is used to query for information about the aggregate audio device.
+.Pp
+The
+.Fa card
+field should be initialized by the application to the number of
+the card to query.
+This is a number between zero
+.Pq inclusive
+and value of
+.Fa numcards
+.Pq exclusive
+returned by
+.Dv SNDCTL_SYSINFO .
+Alternatively,
+when issuing the ioctl against a real mixer or
+.Sy dsp
+device, the special value
+.Sy -1
+can be used to indicate that the query is being made against the device opened.
+If
+.Sy -1
+is used, the field is overwritten with the number
+for the current hardware device on successful return.
+.Pp
+The
+.Fa shortname ,
+.Fa longname ,
+and
+.Fa hw_info
+contain
+.Sy ASCIIZ
+strings describing the device in more detail.
+The
+.Fa hw_info
+member can contain multiple lines of detail, each line ending in a NEWLINE.
+.Pp
+The
+.Fa flag ,
+.Fa intr_count ,
+and
+.Fa ack_count
+fields are not used by this implementation.
+.It Dv SNDCTL_MIXERINFO
+The argument is a pointer to a
+.Vt struct oss_mixer_info ,
+which has the following definition:
+.Bd -literal -offset 2n
+typedef struct oss_mixerinfo {
+ int dev;
+ char id[16]; /* Reserved */
+ char name[32];
+ int modify_counter;
+ int card_number;
+ int port_number; /* Reserved */
+ char handle[32]; /* Reserved */
+ int magic; /* Reserved */
+ int enabled; /* Reserved */
+ int caps; /* Reserved */
+ int flags; /* Reserved */
+ int nrext;
+ int priority;
+
+ /* Deice special file name (absolute path) */
+ char devnode[32];
+ int legacy_device; /* Reserved */
+ int filler[245]; /* Reserved */
+} oss_mixerinfo;
+.Ed
+.Pp
+In the above structure, all of the fields are reserved except the following:
+.Fa dev ,
+.Fa name ,
+.Fa modify_counter ,
+.Fa card_number ,
+.Fa nrext ,
+.Fa priority ,
+and
+.Fa devnode .
+The reserved fields are provided for compatibility with other
+OSS implementations, and available for legacy applications.
+New applications should not attempt to use these fields.
+.Pp
+The
+.Fa dev
+field should be initialized by the application to the number of
+the device to query.
+This is a number between zero inclusive and value of
+.Fa nummixers
+(exclusive) returned by
+.Dv SNDCTL_SYSINFO ,
+or by
+.Dv SNDCTL_MIX_NRMIX .
+Alternatively, when issuing the ioctl against a real mixer or
+.Sy dsp
+device, the special value
+.Sy -1
+can be used to indicate
+that the query is being made against the device opened.
+If
+.Sy -1
+is used,
+the field is overwritten with the mixer number for the current open file on
+successful return.
+.Pp
+No other fields are significant upon entry, but on successful return contains
+details of the device.
+.Pp
+The
+.Fa name
+field is a human readable name representing the device.
+Applications should not try to interpret it.
+.Pp
+The
+.Fa modify_counter
+is changed by the mixer framework each time the
+settings for the various controls or extensions of the device are changed.
+Applications can poll this value to learn if any other changes need to be
+searched for.
+.Pp
+The
+.Fa card_number
+field is the number of the aggregate audio device this
+mixer is located on.
+It can be used with the
+.Dv SNDCTL_CARDINFO
+ioctl.
+.Pp
+The
+.Fa nrext
+field is the number of mixer extensions available on this mixer.
+See the
+.Dv SNDCTL_MIX_NREXT
+description.
+.Pp
+The priority is used by the framework to assign a preference that applications
+can use in choosing a device.
+Higher values are preferable.
+Mixers with priorities less than -1 should never be selected by default.
+.Pp
+The
+.Fa devnode
+field contains the actual full path to the device node for
+the physical mixer, such as
+.Pa /dev/sound/audio810:0mixer .
+Applications
+should open this file to access the mixer settings.
+.El
+.Ss "Mixer Extension IOCTLs"
+The pseudo
+.Pa /dev/mixer
+device supports ioctls that can change the
+oarious settings for the audio hardware in the system.
+.Pp
+Those ioctls should only be used by dedicated mixer applications or desktop
+olumme controls, and not by typical ordinary audio applications such as media
+players.
+Ordinary applications that wish to adjust their own volume settings
+should use the
+.Dv SNDCTL_DSP_SETPLAYVOL
+or
+.Dv SNDCTL_DSP_SETRECVOL
+ioctls for that purpose.
+See
+.Xr dsp 4I
+for more information.
+Ordinary
+applications should never attempt to change master port selection or hardware
+settings such as monitor gain settings.
+.Pp
+The ioctls in this section can only be used to access the mixer device that is
+associated with the current file descriptor.
+.Pp
+Applications should not assume that a single
+.Pa /dev/mixer
+node is able to access any physical settings.
+Instead, they should use the ioctl
+.Dv SNDCTL_MIXERINFO
+to determine the device path for the real mixer device,
+and issue ioctls on a file descriptor opened against the corresponding
+.Fa devnode
+field.
+.Pp
+When a
+.Fa dev
+member is specified in each of the following ioctls, the
+application should specify
+.Sy -1 ,
+although for compatibility the mixer
+allows the application to specify the mixer device number.
+.Pp
+.Bl -tag -width SNDCTL_MIX_ENUMINFO -compact
+.It Dv SNDCTL_MIX_NRMIX
+The argument is a pointer to an integer, which receives the number of mixer
+devices in the system.
+Each can be queried by using its number with the
+.Dv SNDCTL_MIXERINFO
+ioctl.
+The same information is available using the
+.Fa SNDCTL_SYSINFO
+ioctl.
+.Pp
+.It Dv SNDCTL_MIX_NREXT
+The argument is a pointer to an integer.
+On entry, the integer should contain
+the special value
+.Sy -1 .
+On return the argument receives the number of mixer
+extensions (or mixer controls) supported by the mixer device.
+More details
+about each extension can be obtained by
+.Fa SNDCTL_MIX_EXTINFO
+ioctl.
+.Pp
+.It Dv SNDCTL_MIX_EXTINFO
+The argument is a pointer to an
+.Vt oss_mixext
+structure which is defined as follows:
+.Bd -literal -offset 2n
+typedef struct oss_mixext {
+ int dev; /* Mixer device number */
+ int ctrl; /* Extension number */
+ int type; /* Entry type */
+ int maxvalue;
+ int minvalue;
+ int flags;
+ char id[16]; /* Mnemonic ID (internal use) */
+ int parent; /* Entry# of parent (-1 if root) */
+ int dummy; /* NOT SUPPORTED */
+ int timestamp;
+ char data[64]; /* Reserved */
+
+ /* Mask of allowed enum values */
+ unsigned char enum_present[32];
+ int control_no; /* Reserved */
+ unsigned int desc; /* NOT SUPPORTED */
+ char extname[32];
+ int update_counter;
+ int filler[7]; /* Reserved */
+} oss_mixext;
+.Ed
+.Pp
+On entry, the
+.Fa dev
+field should be initialized to the value
+.Sy -1 ,
+and
+the
+.Fa ctrl
+field should be initialized with the number of the extension
+being accessed.
+Between 0, inclusive, and the value returned by
+.Dv SNDCTL_MIX_NREXT ,
+exclusive.
+.Pp
+Mixer extensions are organized as a logical tree, starting with a root node.
+The root node always has a
+.Fa ctrl
+value of zero.
+The structure of the tree can be determined by looking at the parent field,
+which contains the extension number of the parent extension, or
+.Sy -1
+if the extension is the root extension.
+.Pp
+The type indicates the type of extension used.
+This implementation supports the following values:
+.Bl -column -offset 2n "MIXT_STEREOSLIDER" "Enumerated value, 0 to maxvalue"
+.It Dv MIXT_DEVROOT Ta Root node for extension tree
+.It Dv MIXT_GROUP Ta Logical grouping of controls
+.It Dv MXIT_ONOFF Ta Boolean value, 0 = off, 1 = on.
+.It Dv MIXT_ENUM Ta Enumerated value, 0 to maxvalue.
+.It Dv MIXT_MONOSLIDER Ta Monophonic slider, 0 to 255.
+.It Dv MIXT_STEREOSLIDER Ta Stereophonic slider, 0 to 255 (encoded as lower two bytes in value.)
+.It Dv MIXT_MARKER Ta Place holder, can ignore.
+.El
+.Pp
+The flags field is a bit array.
+This implementation makes use of the following
+possible bits:
+.Bl -column -offset 2n "MIXF_WRITEABLE" "Extensions value is modifiable"
+.It Dv MIXF_READABLE Ta Extension's value is readable.
+.It Dv MIXF_WRITEABLE Ta Extension's value is modifiable.
+.It Dv MIXF_POLL Ta Extension can self-update.
+.It Dv MIXF_PCMVOL Ta Extension is for master PCM playback volume.
+.It Dv MIXF_MAINVOL Ta Extension is for a typical analog volume
+.It Dv MIXF_RECVOL Ta Extension is for master record gain.
+.It Dv MIXF_MONVOL Ta Extension is for a monitor source's gain.
+.El
+.Pp
+The
+.Fa id
+field contains an
+.Sy ASCIIZ
+identifier for the extension.
+.Pp
+The timestamp field is set when the extension tree is first initialized.
+Applications must use the same timestamp value when attempting to change the
+values.
+A change in the timestamp indicates a change a in the structure of the
+extension tree.
+.Pp
+The
+.Fa enum_present
+field is a bit mask of possible enumeration values.
+If a
+bit is present in the
+.Fa enum_present
+mask, then the corresponding enumeration value is legal.
+The mask is in little endian order.
+.Pp
+The
+.Fa desc
+field provides information about scoping, which can be useful as
+layout hints to applications.
+The following hints are available:
+.Bl -column -offset 2n "MIXEXT_SCOPE_MONITOR" "No scoping hint provided."
+.It Dv MIXEXT_SCOPE_MASK Ta Mask of possible scope values.
+.It Dv MIXEXT_SCOPE_INPUT Ta Extension is an input control.
+.It Dv MIXEXT_SCOPE_OUTPUT Ta Extension is an output control.
+.It Dv MIXEXT_SCOPE_MONITOR Ta Extension relates to input monitoring.
+.It Dv MIXEXT_SCOPE_OTHER Ta No scoping hint provided.
+.El
+.Pp
+The
+.Fa extname
+is the full name of the extension.
+.Pp
+The
+.Fa update_counter
+is incremented each time the control's value is changed.
+.Pp
+.It Dv SNDCTL_MIX_ENUMINFO
+The argument is a pointer to an
+.Vt oss_mixer_enuminfo
+structure, which is defined as follows:
+.Bd -literal -offset 2n
+typedef struct oss_mixer_enuminfo {
+ int dev;
+ int ctrl;
+ int nvalues;
+ int version;
+ short strindex[255];
+ char strings[3000];
+} oss_mixer_enuminfo;
+.Ed
+.Pp
+On entry, the
+.Fa dev
+field should be initialized to the value
+.Sy -1 ,
+and
+the
+.Fa ctrl
+field should be initialized with the number of the extension being accessed.
+Between 0, inclusive, and the value returned by
+.Dv SNDCTL_MIX_NREXT ,
+exclusive.
+.Pp
+On return the
+.Fa nvalues
+field contains the number of values, and
+.Fa strindex
+contains an array of indices into the strings member, each index
+pointing to an
+.Sy ASCIIZ
+describing the enumeration value.
+.Pp
+.It Dv SNDCTL_MIX_READ
+.It Dv SNDCTL_MIX_WRITE
+The argument is a pointer to an
+.Vt oss_mixer_value
+structure, defined as follows:
+.Bd -literal -offset 2n
+typedef struct oss_mixer_value {
+ int dev;
+ int ctrl;
+ int value;
+
+ /* Reserved for future use. Initialize to 0 */
+ int flags;
+
+ /* Must be set to oss_mixext.timestamp */
+ int timestamp;
+
+ /* Reserved for future use. Initialize to 0 */
+ int filler[8];
+} oss_mixer_value;
+.Pp
+.Ed
+On entry, the
+.Fa dev
+field should be initialized to the value
+.Sy -1 ,
+and the
+.Fa ctrl
+field should be initialized with the number of the extension
+being accessed.
+Between 0, inclusive, and the value returned by
+.Dv SNDCTL_MIX_NREXT ,
+exclusive.
+Additionally, the timestamp member must be
+initialized to the same value as was supplied in the
+.Vt oss_mixext
+structure
+used with
+.Dv SNDCTL_MIX_EXTINFO .
+.Pp
+For
+.Dv SNDCTL_MIX_WRITE ,
+the application should supply the new value for the extension.
+For
+.Dv SNDCTL_MIX_READ ,
+the mixer returns the extensions current value in value.
+.El
+.Ss "Compatibility IOCTLs"
+The following ioctls are for compatibility use only:
+.Pp
+.Bl -tag -offset 2n -width SNDCTL_MIX_ENUMINFO -compact
+.It Dv SOUND_MIXER_READ_VOLUME
+.It Dv SOUND_MIXER_READ_PCM
+.It Dv SOUND_MIXER_READ_OGAIN
+.It Dv SOUND_MIXER_READ_RECGAIN
+.It Dv SOUND_MIXER_READ_RECLEV
+.It Dv SOUND_MIXER_READ_IGAIN
+.It Dv SOUND_MIXER_READ_RECSRC
+.It Dv SOUND_MIXER_READ_RECMASK
+.It Dv SOUND_MIXER_READ_DEVMASK
+.It Dv SOUND_MIXER_READ_STEREODEVS
+.It Dv SOUND_MIXER_WRITE_VOLUME
+.It Dv SOUND_MIXER_WRITE_PCM
+.It Dv SOUND_MIXER_WRITE_OGAIN
+.It Dv SOUND_MIXER_WRITE_RECGAIN
+.It Dv SOUND_MIXER_WRITE_RECLEV
+.It Dv SOUND_MIXER_WRITE_IGAIN
+.It Dv SOUND_MIXER_WRITE_RECSRC
+.It Dv SOUND_MIXER_WRITE_RECMASK
+.It Dv SOUND_MIXER_INFO
+.It Dv SNDCTL_AUDIOINFO_EX
+.It Dv SNDCTL_ENGINEINFO
+.El
+.Pp
+These ioctls can affect the software volume levels associated with the calling
+process.
+They have no effect on the physical hardware levels or settings.
+They should not be used in new applications.
+.Sh FILES
+.Bl -tag -width /dev/sndstat
+.It Pa /dev/mixer
+Symbolic link to the pseudo mixer device for the system
+.It Pa /dev/sndstat
+Sound status device
+.El
+.Sh ERRORS
+An
+.Xr ioctl 2
+fails if:
+.Bl -tag -width EINVAL
+.It Er EINVAL
+The parameter changes requested in the ioctl are invalid or are not supported
+by the device.
+.It Er ENXIO
+The device or extension referenced does not exist.
+.El
+.Sh ARCHITECTURE
+SPARC
+x86
+.Sh INTERFACE STABILITY
+The information and mixer extension IOCTLs are Uncommitted.
+The Compatibility IOCTLs are Obsolete Uncommitted.
+The extension names are Uncommitted.
+.Sh SEE ALSO
+.Xr close 2 ,
+.Xr ioctl 2 ,
+.Xr open 2 ,
+.Xr read 2 ,
+.Xr dsp 4I ,
+.Xr attributes 7
+.Sh BUGS
+The names of mixer extensions are not guaranteed to be predictable.
diff --git a/usr/src/man/man4i/mtio.4i b/usr/src/man/man4i/mtio.4i
new file mode 100644
index 0000000000..93db7028c7
--- /dev/null
+++ b/usr/src/man/man4i/mtio.4i
@@ -0,0 +1,1190 @@
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 2018, Joyent, Inc.
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.Dd August 28, 2021
+.Dt MTIO 4I
+.Os
+.Sh NAME
+.Nm mtio
+.Nd general magnetic tape interface
+.Sh SYNOPSIS
+.In sys/types.h
+.In sys/ioctl.h
+.In sys/mtio.h
+.Sh DESCRIPTION
+1/2", 1/4", 4mm, and 8mm magnetic tape drives all share the same general
+character device interface.
+.Pp
+There are two types of tape records: data records and end-of-file (EOF)
+records.
+.Sy EOF
+records are also known as tape marks and file marks.
+A record is separated by interrecord (or tape) gaps on a tape.
+.Pp
+End-of-recorded-media (EOM) is indicated by two
+.Sy EOF
+marks on 1/2\(dq tape; by one
+.Sy EOF
+mark on 1/4\(dq, 4mm, and 8mm cartridge tapes.
+.Ss "1/2\(dq Reel Tape"
+Data bytes are recorded in parallel onto the 9-track tape.
+Since it is a
+variable-length tape device, the number of bytes in a physical record may vary.
+.Pp
+The recording formats available (check specific tape drive) are 800
+.Sy BPI ,
+1600
+.Sy BPI ,
+6250
+.Sy BPI ,
+and data compression.
+Actual storage capacity is a function of the recording format and the length of the tape reel.
+For example, using a 2400 foot tape, 20 Mbyte can be stored using 800
+.Sy BPI ,
+40 Mbyte using 1600
+.Sy BPI ,
+140 Mbyte using 6250
+.Sy BPI ,
+or up to 700 Mbyte using data compression.
+.Ss "1/4\(dq Cartridge Tape"
+Data is recorded serially onto 1/4\(dq cartridge tape.
+The number of bytes per
+record is determined by the physical record size of the device.
+The I/O request
+size must be a multiple of the physical record size of the device.
+For
+.Sy QIC-11 ,
+.Sy QIC-24 ,
+and
+.Sy QIC-150
+tape drives, the block size is 512 bytes.
+.Pp
+The records are recorded on tracks in a serpentine motion.
+As one track is
+completed, the drive switches to the next and begins writing in the opposite
+direction, eliminating the wasted motion of rewinding.
+Each file, including the last, ends with one file mark.
+.Pp
+Storage capacity is based on the number of tracks the drive is capable of
+recording.
+For example, 4-track drives can only record 20 Mbyte of data on a
+450 foot tape; 9-track drives can record up to 45 Mbyte of data on a tape of
+the same length.
+.Sy QIC-11
+is the only tape format available for 4-track
+tape drives.
+In contrast, 9-track tape drives can use either
+.Sy QIC-24
+or
+.Sy QIC-11 .
+Storage capacity is not appreciably affected by using either format.
+.Sy QIC-24
+is preferable to
+.Sy QIC-11
+because it records a
+reference signal to mark the position of the first track on the tape, and each
+block has a unique block number.
+.Pp
+The
+.Sy QIC-150
+tape drives require
+.Sy DC-6150
+(or equivalent) tape cartridges for writing.
+However, they can read other tape cartridges in
+.Sy QIC-11 ,
+.Sy QIC-24 ,
+or
+.Sy QIC-120
+tape formats.
+.Ss "8mm Cartridge Tape"
+Data is recorded serially onto 8mm helical scan cartridge tape.
+Since it is a
+variable-length tape device, the number of bytes in a physical record may
+vary.
+The recording formats available (check specific tape drive) are standard
+2Gbyte, 5Gbyte, and compressed format.
+.Ss "4mm DAT Tape"
+Data is recorded either in Digital Data Storage (DDS) tape format or in Digital
+Data Storage, Data Compressed (DDS-DC) tape format.
+Since it is a
+variable-length tape device, the number of bytes in a physical record may vary.
+The recording formats available are standard 2Gbyte and compressed format.
+.Ss "Persistent Error Handling"
+Persistent error handling is a modification of the current error handling
+behaviors, BSD and SVR4.
+With persistent error handling enabled, all tape
+operations after an error or exception will return immediately with an error.
+Persistent error handling can be most useful with asynchronous tape operations
+that use the
+.Xr aioread 3C
+and
+.Xr aiowrite 3C
+functions.
+.Pp
+To enable persistent error handling, the ioctl
+.Dv MTIOCPERSISTENT
+must be issued.
+If this ioctl succeeds, then persistent error handling is enabled and
+changes the current error behavior.
+This ioctl will fail if the device driver
+does not support persistent error handling.
+.Pp
+With persistent error handling enabled, all tape operations after an exception
+or error will return with the same error as the first command that failed; the
+operations will not be executed.
+An exception is some event that might stop
+normal tape operations, such as an End Of File (EOF) mark or an End Of Tape
+(EOT) mark.
+An example of an error is a media error.
+The
+.Dv MTIOCLRERR
+ioctl must be issued to allow normal tape operations to continue and to clear
+the error.
+.Pp
+Disabling persistent error handling returns the error behavior to normal SVR4
+error handling, and will not occur until all outstanding operations are
+completed.
+Applications should wait for all outstanding operations to complete
+before disabling persistent error handling.
+Closing the device will also
+disable persistent error handling and clear any errors or exceptions.
+.Pp
+The
+.Sx Read Operation
+and
+.Sx Write Operation
+subsections contain more pertinent information regarding persistent error handling.
+.Ss "Read Operation"
+The
+.Xr read 2
+function reads the next record on the tape.
+The record size is passed back as the number of bytes read, provided it is not
+greater than the number requested.
+When a tape mark or end of data is read, a zero byte count is
+returned; all successive reads after the zero read will return an error and
+.Va errno
+will be set to
+.Er EIO .
+To move to the next file, an
+.Dv MTFSF
+ioctl can be issued before or after the read causing the error.
+This error
+handling behavior is different from the older
+.Sy BSD
+behavior, where another read will fetch the first record of the next tape file.
+If the
+.Sy BSD
+behavior is required, device names containing the letter
+.Ql b
+(for
+.Sy BSD
+behavior) in the final component should be used.
+If persistent error handling
+was enabled with either the BSD or SVR4 tape device behavior, all operations
+after this read error will return
+.Er EIO
+errors until the
+.Dv MTIOCLRERR
+ioctl is issued.
+An
+.Dv MTFSF
+ioctl can then he issued.
+.Pp
+Two successful successive reads that both return zero byte counts indicate
+.Sy EOM
+on the tape.
+No further reading should be performed past the
+.Sy EOM .
+.Pp
+Fixed-length I/O tape devices require the number of bytes read to be a multiple
+of the physical record size.
+For example, 1/4\(dq cartridge tape devices only read
+multiples of 512 bytes.
+If the blocking factor is greater than 64,512 bytes
+(minphys limit), fixed-length I/O tape devices read multiple records.
+.Pp
+Most tape devices which support variable-length I/O operations may read a range
+of 1 to 65,535 bytes.
+If the record size exceeds 65,535 bytes, the driver reads
+multiple records to satisfy the request.
+These multiple records are limited to
+65,534 bytes.
+Newer variable-length tape drivers may relax the above limitation
+and allow applications to read record sizes larger than 65,534.
+Refer to the
+specific tape driver man page for details.
+.Pp
+Reading past logical
+.Sy EOT
+is transparent to the user.
+A read operation
+should never hit physical EOT.
+.Pp
+Read requests that are lesser than a physical tape record are not allowed.
+Appropriate error is returned.
+.Ss "Write Operation"
+The
+.Xr write 2
+function writes the next record on the tape.
+The record has
+the same length as the given buffer.
+.Pp
+Writing is allowed on 1/4" tape at either the beginning of tape or after the
+last written file on the tape.
+With the Exabyte 8200, data may be appended only
+at the beginning of tape, before a filemark, or after the last written file on
+the tape.
+.Pp
+Writing is not so restricted on 1/2\(dq, 4mm, and the other 8mm cartridge tape
+drives.
+Care should be used when appending files onto 1/2\(dq reel tape devices,
+since an extra file mark is appended after the last file to mark the
+.Sy EOM .
+This extra file mark must be overwritten to prevent the creation of a null file.
+To facilitate write append operations, a space to the
+.Sy EOM
+ioctl is provided.
+Care should be taken when overwriting records; the erase head is just
+forward of the write head and any following records will also be erased.
+.Pp
+Fixed-length I/O tape devices require the number of bytes written to be a
+multiple of the physical record size.
+For example, 1/4\(dq cartridge tape devices
+only write multiples of 512 bytes.
+.Pp
+Fixed-length I/O tape devices write multiple records if the blocking factor is
+greater than 64,512 bytes (minphys limit).
+These multiple writes are limited to
+64,512 bytes.
+For example, if a write request is issued for 65,536 bytes using
+a 1/4\(dq cartridge tape, two writes are issued; the first for 64,512 bytes and
+the second for 1024 bytes.
+.Pp
+Most tape devices which support variable-length I/O operations may write a
+range of 1 to 65,535 bytes.
+If the record size exceeds 65,535 bytes, the driver
+writes multiple records to satisfy the request.
+These multiple records are
+limited to 65,534 bytes.
+As an example, if a write request for 65,540 bytes is
+issued, two records are written; one for 65,534 bytes followed by another
+record for 6 bytes.
+Newer variable-length tape drivers may relax the above
+limitation and allow applications to write record sizes larger than 65,534.
+effer to the specific tape driver man page for details.
+.Pp
+When logical
+.Sy EOT
+is encountered during a write, that write operation
+completes and the number of bytes successfully transferred is returned (note
+that a 'short write' may have occurred and not all the requested bytes would
+have been transferred.
+The actual amount of data written will depend on the
+type of device being used).
+The next write will return a zero byte count.
+A third write will successfully transfer some bytes (as indicated by the
+returned byte count, which again could be a short write); the fourth will
+transfer zero bytes, and so on, until the physical
+.Sy EOT
+is reached and all writes will
+fail with
+.Er EIO .
+.Pp
+When logical
+.Sy EOT
+is encountered with persistent error handling enabled,
+the current write may complete or be a short write.
+The next write will return a zero byte count.
+At this point an application should act appropriately for
+end of tape cleanup or issue yet another write, which will return the error
+.Er ENOSPC .
+After clearing the exception with
+.Dv MTIOCLRERR ,
+the next write will succeed (possibly short), followed by another zero byte
+write count, and then another
+.Er ENOSPC
+error.
+.Pp
+Allowing writes after
+.Sy EOT
+has been encountered enables the flushing of buffers.
+However, it is strongly recommended to terminate the writing and close
+the file as soon as possible.
+.Pp
+Seeks are ignored in tape I/O.
+.Ss "Close Operation"
+Magnetic tapes are rewound when closed, except when the "no-rewind" devices
+have been specified.
+The names of no-rewind device files use the letter
+.Ql n
+as the end of the final component.
+The no-rewind version of
+.Pa /dev/rmt/0l
+is
+.Pa /dev/rmt/0ln .
+In case of error for a no-rewind device, the next open rewinds the device.
+.Pp
+If the driver was opened for reading and a no-rewind device has been specified,
+the close advances the tape past the next filemark (unless the current file
+position is at
+.Sy EOM ) ,
+leaving the tape correctly positioned to read the first record of the next file.
+However, if the tape is at the first record of a
+file it doesn't advance again to the first record of the next file.
+These semantics are different from the older
+.Sy BSD
+behavior.
+If
+.Sy BSD
+behavior is required where no implicit space operation is executed on close,
+the non-rewind device name containing the letter
+.Ql b
+(for
+.Sy BSD
+behavior) in the final component should be specified.
+.Pp
+If data was written, a file mark is automatically written by the driver upon
+close.
+If the rewinding device was specified, the tape will be rewound after
+the file mark is written.
+If the user wrote a file mark prior to closing, then
+no file mark is written upon close.
+If a file positioning ioctl, like rewind,
+is issued after writing, a file mark is written before repositioning the tape.
+.Pp
+All buffers are flushed on closing a tape device.
+Hence, it is strongly recommended that the application wait for all buffers to
+be flushed before closing the device.
+This can be done by writing a filemark via
+.Dv MTWEOF ,
+even with a zero count.
+.Pp
+Note that for 1/2\(dq reel tape devices, two file marks are written to mark the
+.Sy EOM
+before rewinding or performing a file positioning ioctl.
+If the user
+wrote a file mark before closing a 1/2\(dq reel tape device, the driver will
+always write a file mark before closing to insure that the end of recorded
+media is marked properly.
+If the non-rewinding device was specified, two file
+marks are written and the tape is left positioned between the two so that the
+second one is overwritten on a subsequent
+.Xr open 2
+and
+.Xr write 2 .
+.Pp
+If no data was written and the driver was opened for
+.Sy WRITE-ONLY
+access, one or two file marks are written, thus creating a null file.
+.Pp
+After closing the device, persistent error handling will be disabled and any
+error or exception will be cleared.
+.Sh IOCTLS
+Not all devices support all
+.Sy ioctls .
+The driver returns an
+.Er ENOTTY
+error on unsupported ioctls.
+.Pp
+The following structure definitions for magnetic tape
+.Xr ioctl 2
+commands are from
+.In sys/mtio.h .
+.Pp
+The minor device byte structure is:
+.Bd -literal
+15 7 6 5 4 3 2 1 0
+________________________________________________________________________
+Unit # BSD Reserved Density Density No rewind Unit #
+Bits 7-15 behavior Select Select on Close Bits 0-1
+.Ed
+.Bd -literal
+/*
+ * Layout of minor device byte:
+ */
+#define MTUNIT(dev) (((minor(dev) & 0xff80) >> 5) + (minor(dev) & 0x3))
+#define MT_NOREWIND (1 <<2)
+#define MT_DENSITY_MASK (3 <<3)
+#define MT_DENSITY1 (0 <<3) /* Lowest density/format */
+#define MT_DENSITY2 (1 <<3)
+#define MT_DENSITY3 (2 <<3)
+#define MT_DENSITY4 (3 <<3) /* Highest density/format */
+#define MTMINOR(unit) (((unit & 0x7fc) << 5) + (unit & 0x3))
+#define MT_BSD (1 <<6) /* BSD behavior on close */
+
+/* Structure for MTIOCTOP - magnetic tape operation command */
+
+struct mtop {
+ short mt_op; /* operation */
+ daddr_t mt_count; /* number of operations */
+};
+
+/* Structure for MTIOCLTOP - magnetic tape operation command */
+Works exactly like MTIOCTOP except passes 64 bit mt_count values.
+struct mtlop {
+ short mt_op;
+ short pad[3];
+ int64_t mt_count;
+};
+.Ed
+.Pp
+The following operations of
+.Dv MTIOCTOP
+and
+.Dv MTIOCLTOP
+ioctls are supported:
+.Pp
+.Bl -tag -width MTIOCGETERROR -compact -offset 2n
+.It Dv MTWEOF
+Write an end-of-file record
+.It Dv MTFSF
+Forward space over file mark
+.It Dv MTBSF
+Backward space over file mark (1/2", 8mm only)
+.It Dv MTFSR
+Forward space to inter-record gap
+.It Dv MTBSR
+Backward space to inter-record gap
+.It Dv MTREW
+Rewind
+.It Dv MTOFFL
+Rewind and take the drive off-line
+.It Dv MTNOP
+No operation, sets status only
+.It Dv MTRETEN
+Retension the tape (cartridge tape only)
+.It Dv MTERASE
+Erase the entire tape and rewind
+.It Dv MTEOM
+Position to EOM
+.It Dv MTNBSF
+Backward space file to beginning of file
+.It Dv MTSRSZ
+Set record size
+.It Dv MTGRSZ
+Get record size
+.It Dv MTTELL
+Get current position
+.It Dv MTSEEK
+Go to requested position
+.It Dv MTFSSF
+Forward to requested number of sequential file marks
+.It Dv MTBSSF
+Backward to requested number of sequential file marks
+.It Dv MTLOCK
+Prevent media removal
+.It Dv MTUNLOCK
+Allow media removal
+.It Dv MTLOAD
+Load the next tape cartridge into the tape drive
+.It Dv MTIOCGETERROR
+Retrieve error records from the st driver
+.El
+.Bd -literal -offset 2n
+/* structure for MTIOCGET - magnetic tape get status command */
+
+struct mtget {
+ short mt_type; /* type of magtape device */
+
+ /* the following two registers are device dependent */
+ short mt_dsreg; /* "drive status" register */
+ short mt_erreg; /* "error" register */
+
+ /* optional error info. */
+ daddr_t mt_resid; /* residual count */
+ daddr_t mt_fileno; /* file number of current position */
+ daddr_t mt_blkno; /* block number of current position */
+ ushort_t mt_flags;
+ short mt_bf; /* optimum blocking factor */
+};
+
+/* structure for MTIOCGETDRIVETYPE - get tape config data command */
+struct mtdrivetype_request {
+ int size;
+ struct mtdrivetype *mtdtp;
+};
+struct mtdrivetype {
+ char name[64]; /* Name, for debug */
+ char vid[25]; /* Vendor id and product id */
+ char type; /* Drive type for driver */
+ int bsize; /* Block size */
+ int options; /* Drive options */
+ int max_rretries; /* Max read retries */
+ int max_wretries; /* Max write retries */
+ uchar_t densities[MT_NDENSITIES]; /* density codes,low->hi */
+ uchar_t default_density; /* Default density chosen */
+ uchar_t speeds[MT_NSPEEDS]; /* speed codes, low->hi */
+ ushort_t non_motion_timeout; /* Seconds for non-motion */
+ ushort_t io_timeout; /* Seconds for data to from tape */
+ ushort_t rewind_timeout; /* Seconds to rewind */
+ ushort_t space_timeout; /* Seconds to space anywhere */
+ ushort_t load_timeout; /* Seconds to load tape and ready */
+ ushort_t unload_timeout; /* Seconds to unload */
+ ushort_t erase_timeout; /* Seconds to do long erase */
+};
+.Ed
+.Bd -literal -offset 2n
+/* structure for MTIOCGETPOS and MTIOCRESTPOS - get/set tape position */
+/*
+ * eof/eot/eom codes.
+ */
+ typedef enum {
+ ST_NO_EOF,
+ ST_EOF_PENDING, /* filemark pending */
+ ST_EOF, /* at filemark */
+ ST_EOT_PENDING, /* logical eot pend. */
+ ST_EOT, /* at logical eot */
+ ST_EOM, /* at physical eot */
+ ST_WRITE_AFTER_EOM /* flag allowing writes after EOM */
+} pstatus;
+
+typedef enum { invalid, legacy, logical } posmode;
+
+typedef struct tapepos {
+ uint64_t lgclblkno; /* Blks from start of partition */
+ int32_t fileno; /* Num. of current file */
+ int32_t blkno; /* Blk number in current file */
+ int32_t partition; /* Current partition */
+ pstatus eof; /* eof states */
+ posmode pmode; /* which pos. data is valid */
+ char pad[4];
+} tapepos_t;
+.Ed
+.Pp
+.Bd -ragged -compact
+If the
+.Fa pmode
+is legacy,
+.Fa fileno
+and
+.Fa blkno
+fields are valid.
+.Pp
+If the
+.Fa pmode
+is logical,
+.Fa lgclblkno
+field is valid.
+.Ed
+.Pp
+The
+.Dv MTWEOF
+ioctl is used for writing file marks to tape.
+Not only does
+this signify the end of a file, but also usually has the side effect of
+flushing all buffers in the tape drive to the tape medium.
+A zero count
+.Dv MTWEOF
+will just flush all the buffers and will not write any file marks.
+Because a successful completion of this tape operation will guarantee that all
+tape data has been written to the tape medium, it is recommended that this tape
+operation be issued before closing a tape device.
+.Pp
+When spacing forward over a record (either data or
+.Sy EOF ) ,
+the tape head is
+positioned in the tape gap between the record just skipped and the next record.
+When spacing forward over file marks (EOF records), the tape head is positioned
+in the tape gap between the next
+.Sy EOF
+record and the record that follows it.
+.Pp
+When spacing backward over a record (either data or
+.Sy EOF ) ,
+the tape head is positioned in the tape gap immediately preceding the tape
+record where the tape head is currently positioned.
+When spacing backward over file marks (EOF records), the tape head is
+positioned in the tape gap preceding the
+.Sy EOF .
+Thus the next read would fetch the
+.Sy EOF .
+.Pp
+Record skipping does not go past a file mark; file skipping does not go past
+the
+.Sy EOM .
+After an
+.Dv MTFSR
+<huge number> command, the driver leaves
+the tape logically positioned
+.Em before
+the
+.Sy EOF .
+A related feature is that
+.Sy EOF Ns s
+remain pending until the tape is closed.
+For example, a program
+which first reads all the records of a file up to and including the \fBEOF\fR
+and then performs an
+.Dv MTFSF
+command will leave the tape positioned just
+after that same
+.Sy EOF ,
+rather than skipping the next file.
+.Pp
+The
+.Dv MTNBSF
+and
+.Dv MTFSF
+operations are inverses.
+Thus, an
+.Dq Dv MTFSF \(mi1
+is equivalent to an
+.Dq Dv MTNBSF 1 .
+An
+.Dq Dv MTNBSF 0
+is the same as
+.Dq Dv MTFSF 0 ;
+both position the tape device at the beginning of the current file.
+.Pp
+.Dv MTBSF
+moves the tape backwards by file marks.
+The tape position will end
+on the beginning of the tape side of the desired file mark.
+An
+.Dq Dv MTBSF 0
+will position the tape at the end of the current file, before the filemark.
+.Pp
+.Dv MTBSR
+and
+.Dv MTFSR
+operations perform much like space file operations,
+except that they move by records instead of files.
+Variable-length I/O devices
+(1/2\(dq reel, for example) space actual records; fixed-length I/O devices space
+physical records (blocks).
+1/4\(dq cartridge tape, for example, spaces 512 byte
+physical records.
+The status ioctl residual count contains the number of files
+or records not skipped.
+.Pp
+.Dv MTFSSF
+and
+.Dv MTBSSF
+space forward or backward, respectively, to the next
+occurrence of the requested number of file marks, one following another.
+If there are more sequential file marks on tape than were requested, it spaces
+over the requested number and positions after the requested file mark.
+Note that not all drives support this command and if a request is sent to a
+drive that does not,
+.Er ENOTTY
+is returned.
+.Pp
+.Dv MTOFFL
+rewinds and, if appropriate, takes the device off-line by unloading the tape.
+It is recommended that the device be closed after offlining
+and then re-opened after a tape has been inserted to facilitate portability to
+other platforms and other operating systems.
+Attempting to re-open the device
+with no tape will result in an error unless the
+.Dv O_NDELAY
+flag is used.
+.Po
+See
+.Xr open 2 .
+.Pc
+.Pp
+The
+.Dv MTRETEN
+retension ioctl applies only to 1/4\(dq cartridge tape devices.
+It is used to restore tape tension, improving the tape's soft error rate after
+extensive start-stop operations or long-term storage.
+.Pp
+.Dv MTERASE
+rewinds the tape, erases it completely, and returns to the
+beginning of tape.
+Erasing may take a long time depending on the device and/or
+tapes.
+For time details, refer to the drive specific manual.
+.Pp
+.Dv MTEOM
+positions the tape at a location just after the last file written
+on the tape.
+For 1/4\(dq cartridge and 8mm tape, this is after the last file mark
+on the tape.
+For 1/2\(dq reel tape, this is just after the first file mark but
+before the second (and last) file mark on the tape.
+Additional files can then
+be appended onto the tape from that point.
+.Pp
+Note the difference between
+.Dv MTBSF
+(backspace over file mark) and
+.Dv MTNBSF
+(backspace file to beginning of file).
+The former moves the tape
+backward until it crosses an
+.Sy EOF
+mark, leaving the tape positioned
+.Em before
+the file mark.
+The latter leaves the tape positioned
+.Em after
+the file mark.
+Hence,
+.Dq Dv MTNBSF n
+is equivalent to
+.Dq Dv MTBSF (n+1)
+followed by
+.Dq Dv MTFSF 1 .
+The 1/4\(dq cartridge tape devices do not support
+.Dv MTBSF .
+.Pp
+.Dv MTSRSZ
+and
+.Dv MTGRSZ
+are used to set and get fixed record lengths.
+The
+.Dv MTSRSZ
+ioctl allows variable length and fixed length tape drives that
+support multiple record sizes to set the record length.
+The
+.Fa mt_count
+field of the
+.Vt mtop
+struct is used to pass the record size to/from the
+.Xr st 4D
+driver.
+A value of
+.Ql 0
+indicates variable record size.
+The
+.Dv MTSRSZ
+ioctl makes a variable-length tape device behave like a
+fixed-length tape device.
+Refer to the specific tape driver man page for
+details.
+.Pp
+.Dv MTLOAD
+loads the next tape cartridge into the tape drive.
+This is generally only used with stacker and tower type tape drives which handle
+multiple tapes per tape drive.
+A tape device without a tape inserted can be
+opened with the
+.Dv O_NDELAY
+flag, in order to execute this operation.
+.Pp
+.Dv MTIOCGETERROR
+allows user-level applications to retrieve error records
+from the
+.Xr st 4D
+driver.
+An error record consists of the SCSI command cdb
+which causes the error and a
+.Xr scsi_arq_status 9S
+structure if available.
+The user-level application is responsible for allocating and releasing the
+memory for
+.Fa mtee_cdb_buf
+and
+.Fa scsi_arq_status of each
+.Vt mterror_entry .
+Before issuing the ioctl, the
+.Fa mtee_arq_status_len
+value should be at least equal to
+.Ql sizeof (struct scsi_arq_status) .
+If more sense data than the size of
+.Xr scsi_arq_status 9S
+is desired, the
+.Fa mtee_arq_status_len
+may be larger than
+.Ql sizeof (struct scsi_arq_status)
+by the amount of additional extended sense data desired.
+The
+.Fa es_add_len
+field of
+.Xr scsi_extended_sense 9S
+can be used to determine the amount of valid sense data returned by the device.
+.Pp
+The
+.Dv MTIOCGET
+get status
+.Xr ioctl 2
+call returns the drive ID
+.Pq Fa mt_type ,
+sense key error
+.Pq Fa mt_erreg ,
+file number
+.Pq Fa mt_fileno ,
+optimum blocking factor
+.Pq Fa mt_bf
+and record number
+.Pq Fa mt_blkno
+of the last error.
+The residual count
+.Pq Fa mt_resid
+is set to the number of bytes not transferred or files/records not spaced.
+The flags word
+.Pq Fa mt_flags
+contains information indicating if the device is SCSI, if the device is a reel
+device and whether the device supports absolute file positioning.
+The
+.Fa mt_flags
+also indicates if the device is requesting cleaning media be used, whether the
+device is capable of reporting the requirement of cleaning media and if the
+currently loaded media is WORM (Write Once Read Many) media.
+.Pp
+Note \(em When tape alert cleaning is managed by the st driver, the tape
+target driver may continue to return a
+.Dq drive needs cleaning
+status unless an
+.Dv MTIOCGE
+.Xr ioctl 2
+call is made while the cleaning media is in the drive.
+.Pp
+The
+.Dv MTIOCGETDRIVETYPE
+get drivetype ioctl call returns the name of the
+tape drive as defined in
+.Pa st.conf
+.Pq Fa name ,
+Vendor
+.Sy ID
+and model
+.Pq Fa product ,
+.Sy ID
+.Pq Fa vid ,
+type of tape device
+.Pq Fa type ,
+block size
+.Pq Fa size ,
+drive options
+.Pq Fa options ,
+maximum read retry count
+.Pq Fa max_rretries ,
+maximum write retry count
+.Pq Fa max_wretries ,
+densities supported by the drive
+.Pq Fa densities ,
+and default density of the tape drive
+.Pq Fa default_density .
+.Pp
+The
+.Dv MTIOCGETPOS
+ioctl returns the current tape position of the drive.
+It is returned in struct tapepos as defined in
+.Pa /usr/include/sys/scsi/targets/stdef.h .
+.Pp
+The
+.Dv MTIOCRESTPOS
+ioctl restores a saved position from the
+.Dv MTIOCGETPOS .
+.Ss "Persistent Error Handling IOCTLs and Asynchronous Tape Operations"
+.Bl -tag -width MTIOCPERSISTENTSTATUS -compact
+.It Dv MTIOCPERSISTENT
+enables/disables persistent error handling
+.It Dv MTIOCPERSISTENTSTATUS
+queries for persistent error handling
+.It Dv MTIOCLRERR
+clears persistent error handling
+.It Dv MTIOCGUARANTEEDORDER
+checks whether driver guarantees order of I/O's
+.El
+.Pp
+The
+.Dv MTIOCPERSISTENT
+ioctl enables or disables persistent error handling.
+It takes as an argument a pointer to an integer that turns it either on or off.
+If the ioctl succeeds, the desired operation was successful.
+It will wait for
+all outstanding I/O's to complete before changing the persistent error handling
+status.
+For example,
+.Bd -literal -offset 2n
+int on = 1;
+ioctl(fd, MTIOCPERSISTENT, &on);
+int off = 0;
+ioctl(fd, MTIOCPERSISTENT, &off);
+.Ed
+.Pp
+The
+.Dv MTIOCPERSISTENTSTATUS
+ioctl enables or disables persistent error
+handling.
+It takes as an argument a pointer to an integer inserted by the
+driver.
+The integer can be either 1 if persistent error handling is
+.Sq on ,
+or 0 if persistent error handling is
+.Sq off .
+It will not wait for outstanding I/O's.
+For example,
+.Bd -literal -offset 2n
+int query;
+ioctl(fd, MTIOCPERSISTENTSTATUS, &query);
+.Ed
+.Pp
+The
+.Dv MTIOCLRERR
+ioctl clears persistent error handling and allows tape
+operations to continual normally.
+This ioctl requires no argument and will
+always succeed, even if persistent error handling has not been enabled.
+It will wait for any outstanding I/O's before it clears the error.
+.Pp
+The
+.Dv MTIOCGUARANTEEDORDER
+ioctl is used to determine whether the driver
+guarantees the order of I/O's.
+It takes no argument.
+If the ioctl succeeds, the driver will support guaranteed order.
+If the driver does not support guaranteed order, then it should not be used
+for asynchronous I/O with
+.Xr libaio 3lib .
+It will wait for any outstanding I/O's before it returns.
+For example,
+.Bd -literal -offset 2n
+ioctl(fd, MTIOCGUARANTEEDORDER)
+.Ed
+.Pp
+See the
+.Sx Persistent Error Handling
+subsection above for more information on persistent error handling.
+.Ss "Asynchronous and State Change IOCTLS"
+.Bl -tag -width 1n
+.It Dv MTIOCSTATE
+This ioctl blocks until the state of the drive, inserted or ejected, is
+changed.
+The argument is a pointer to a
+.Vt enum mtio_state ,
+whose possible enumerations are listed below.
+The initial value should be either the last reported state of the drive, or
+.Dv MTIO_NONE .
+Upon return, the
+enum pointed to by the argument is updated with the current state of the drive.
+.Bd -literal -offset 2n
+enum mtio_state {
+ MTIO_NONE /* Return tape's current state */
+ MTIO_EJECTED /* Tape state is "ejected" */
+ MTIO_INSERTED /* Tape state is "inserted" */
+};
+.Ed
+.El
+.Pp
+When using asynchronous operations, most ioctls will wait for all outstanding
+commands to complete before they are executed.
+.Ss "IOCTLS for Multi-initiator Configurations"
+.Bl -tag -width MTIOCFORCERESERVE -compact
+.It Dv MTIOCRESERVE
+reserve the tape drive
+.It Dv MTIOCRELEASE
+revert back to the default behavior of reserve on open/release on close
+.It Dv MTIOCFORCERESERVE
+reserve the tape unit by breaking reservation held by another host
+.El
+.Pp
+The
+.Dv MTIOCRESERVE
+ioctl reserves the tape drive such that it does not
+release the tape drive at close.
+This changes the default behavior of releasing the device upon close.
+Reserving the tape drive that is already reserved has no effect.
+For example,
+.Bd -literal -offset 2n
+ioctl(fd, MTIOCRESERVE);
+.Ed
+.Pp
+The
+.Dv MTIOCRELEASE
+ioctl reverts back to the default behavior of reserve on
+open/release on close operation, and a release will occur during the next
+close.
+Releasing the tape drive that is already released has no effect.
+For example,
+.Bd -literal -offset 2n
+ioctl(fd, MTIOCRELEASE);
+.Ed
+.Pp
+The
+.Dv MTIOCFORCERESERVE
+ioctl breaks a reservation held by another host, interrupting any I/O in
+progress by that other host, and then reserves the tape unit.
+This ioctl can be executed only with super-user privileges.
+It is recommended to open the tape device in
+.Dv O_NDELAY
+mode when this ioctl needs to be executed, otherwise the open will fail if
+another host indeed has it reserved.
+For example,
+.Bd -literal -offset 2n
+ioctl(fd, MTIOCFORCERESERVE);
+.Ed
+.Ss "IOCTLS for Handling Tape Configuration Options"
+.Bl -tag -width MTIOCREADIGNOREEOFS
+.It Dv MTIOCSHORTFMK
+enables/disables support for writing short filemarks.
+This is specific to Exabyte drives.
+.It Dv MTIOCREADIGNOREILI
+enables/disables suppress incorrect length indicator (SILI) support during reads
+.It Dv MTIOCREADIGNOREEOFS
+enables/disables support for reading past two EOF marks which otherwise indicate
+End-Of-recording-Media (EOM) in the case of 1/2\(dq reel tape drives
+.El
+.Pp
+The
+.Dv MTIOCSHORTFMK
+ioctl enables or disables support for short filemarks.
+This ioctl is only applicable to Exabyte drives which support short filemarks.
+As an argument, it takes a pointer to an integer.
+If 0 (zero) is the specified integer, then long filemarks will be written.
+If 1 is the specified integer, then short filemarks will be written.
+The specified tape behavior will be in effect until the device is closed.
+.Pp
+For example:
+.Bd -literal -offset 2n
+int on = 1;
+int off = 0;
+/* enable short filemarks */
+ioctl(fd, MTIOSHORTFMK, &on);
+/* disable short filemarks */
+ioctl(fd, MTIOCSHORTFMK, &off);
+.Ed
+.Pp
+Tape drives which do not support short filemarks will return an
+.Va errno
+of
+.Er ENOTTY .
+.Pp
+The
+.Dv MTIOCREADIGNOREILI
+ioctl enables or disables the suppress incorrect
+length indicator (SILI) support during reads.
+As an argument, it takes a pointer to an integer.
+If 0 (zero) is the specified integer, SILI will not be
+used during reads and incorrect length indicator will not be suppressed.
+If 1 is the specified integer, SILI will be used during reads and incorrect
+length indicator will be suppressed.
+The specified tape behavior will be in effect until the device is closed.
+.Pp
+For example:
+.Bd -literal -offset 2n
+int on = 1;
+int off = 0;
+ioctl(fd, MTIOREADIGNOREILI, &on);
+ioctl(fd, MTIOREADIGNOREILI, &off);
+.Ed
+.Pp
+The
+.Dv MTIOCREADIGNOREEOFS
+ioctl enables or disables support for reading
+past double EOF marks which otherwise indicate End-Of-recorded-media (EOM) in
+the case of 1/2\(dq reel tape drives.
+As an argument, it takes a pointer to an integer.
+If 0 (zero) is the specified integer, then double EOF marks indicate
+End-Of-recorded-media (EOM).
+If 1 is the specified integer, the double EOF marks no longer indicate EOM,
+thus allowing applications to read past two EOF marks.
+In this case it is the responsibility of the application to detect
+End-Of-recorded-media (EOM).
+The specified tape behavior will be in effect until the device is closed.
+.Pp
+For example:
+.Bd -literal -offset 2n
+int on = 1;
+int off = 0;
+ioctl(fd, MTIOREADIGNOREEOFS, &on);
+ioctl(fd, MTIOREADIGNOREEOFS, &off);
+.Ed
+.Pp
+Tape drives other than 1/2\(dq reel tapes will return an
+.Va errno
+of
+.Er ENOTTY .
+.Sh FILES
+.Pa /dev/rmt/ Ns Ao unit number Ac \
+ Ns Ao density Ac \
+ Ns Bo Ao BSD behavior Ac Bc \
+ Ns Bo Ao no rewind Ac Bc
+.Pp
+Where
+.Aq density
+can be
+.Ql l ,
+.Ql m ,
+.Ql h ,
+.Ql u/c
+(low, medium, high, ultra/compressed, respectively), the
+.Aq BSD behavior
+option is
+.Ql b , and the
+.Aq no rewind
+option is
+.Ql n .
+.Pp
+For example,
+.Pa /dev/rmt/0hbn
+specifies unit 0, high density,
+.Sy BSD
+behavior and no rewind.
+.Sh EXAMPLES
+.Bl -inset
+.It Sy Example 1
+Tape Positioning and Tape Drives
+.Pp
+Suppose you have written three files to the non-rewinding 1/2\(dq tape device,
+.Pa /dev/rmt/0ln ,
+and that you want to go back and
+.Xr dd 8
+the second file off the tape.
+The commands to do this are:
+.Bd -literal -offset 2n
+mt -F /dev/rmt/0lbn bsf 3
+mt -F /dev/rmt/0lbn fsf 1
+dd if=/dev/rmt/0ln
+.Ed
+.Pp
+To accomplish the same tape positioning in a C program, followed by a get
+status ioctl:
+.Bd -literal -offset 2n
+struct mtop mt_command;
+struct mtget mt_status;
+mt_command.mt_op = MTBSF;
+mt_command.mt_count = 3;
+ioctl(fd, MTIOCTOP, &mt_command);
+mt_command.mt_op = MTFSF;
+mt_command.mt_count = 1;
+ioctl(fd, MTIOCTOP, &mt_command);
+ioctl(fd, MTIOCGET, (char *)&mt_status);
+.Ed
+.Pp
+or
+.Bd -literal -offset 2n
+mt_command.mt_op = MTNBSF;
+mt_command.mt_count = 2;
+ioctl(fd, MTIOCTOP, &mt_command);
+ioctl(fd, MTIOCGET, (char *)&mt_status);
+.Ed
+.Pp
+To get information about the tape drive:
+.Bd -literal -offset 2n
+struct mtdrivetype mtdt;
+struct mtdrivetype_request mtreq;
+mtreq.size = sizeof(struct mtdrivetype);
+mtreq.mtdtp = &mtdt;
+ioctl(fd, MTIOCGETDRIVETYPE, &mtreq);
+.Ed
+.El
+.Sh SEE ALSO
+.Xr mt 1 ,
+.Xr tar 1 ,
+.Xr open 2 ,
+.Xr read 2 ,
+.Xr write 2 ,
+.Xr aioread 3C ,
+.Xr aiowrite 3C ,
+.Xr ar.h 3HEAD ,
+.Xr st 4D ,
+.Xr dd 8
+.Pp
+.%T 1/4 Inch Tape Drive Tutorial
diff --git a/usr/src/man/man4i/prnio.4i b/usr/src/man/man4i/prnio.4i
new file mode 100644
index 0000000000..be44b17a66
--- /dev/null
+++ b/usr/src/man/man4i/prnio.4i
@@ -0,0 +1,370 @@
+.\" Copyright (c) 20002 Sun Microsystems, Inc.
+.\" All Rights Reserved.
+.\" Copyright 2018, Joyent, Inc.
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.Dd August 31, 2018
+.Dt PRNIO 4I
+.Os
+.Sh NAME
+.Nm prnio
+.Nd generic printer interface
+.Sh SYNOPSIS
+.In sys/prnio.h
+.Sh DESCRIPTION
+The
+.Nm
+generic printer interface defines ioctl commands and data
+structures for printer device drivers.
+.Pp
+.Nm
+defines and provides facilities for five basic phases of the printing process:
+.Bl -bullet -offset indent
+.It
+Identification \(em Retrieve device information/attributes
+.It
+Setup \(em Set device attributes
+.It
+Transfer \(em Transfer data to or from the device
+.It
+Cleanup \(em Transfer phase conclusion
+.It
+Abort \(em Transfer phase interruption
+.El
+.Pp
+During the Identification phase, the application retrieves a set of device
+capabilities and additional information using the
+.Dv PRNIOC_GET_IFCAP ,
+.Dv PRNIOC_GET_STATUS ,
+.Dv PRNIOC_GET_TIMEOUTS ,
+.Dv PRNIOC_GET_IFINFO ,
+and
+.Dv PRNIOC_GET_1284_DEVID
+commands.
+.Pp
+During the Setup phase the application sets some interface attributes and
+probably resets the printer as described in the
+.Dv PRNIOC_SET_IFCAP ,
+.Dv PRNIOC_SET_TIMEOUTS ,
+and
+.Dv PRNIOC_RESET
+sections.
+.Pp
+During the Transfer phase, data is transferred in a forward (host to
+peripheral) or reverse direction (peripheral to host).
+Transfer is accomplished
+using
+.Xr write 2
+and
+.Xr read 2
+system calls.
+For
+.Nm
+compliant
+printer drivers, forward transfer support is mandatory, while reverse transfer
+support is optional.
+Applications can also use
+.Dv PRNIOC_GET_STATUS
+and
+.Dv PRNIOC_GET_1284_STATUS
+commands during the transfer to monitor the device state.
+.Pp
+The Cleanup phase is accomplished by closing the device using
+.Xr close 2 .
+Device drivers supporting
+.Nm
+may set non-zero error code as appropriate.
+Applications should explicitly
+.Xr close 2
+a device before
+exiting and check
+.Va errno
+value.
+.Pp
+The Abort phase is accomplished by interrupting the
+.Xr write 2
+and
+.Xr read 2
+system calls.
+The application can perform some additional cleanup
+during the Abort phase as described in
+.Dv PRNIOC_GET_IFCAP
+section.
+.Sh IOCTLS
+.Bl -tag -width PRNIOC_GET_IFINFO
+.It Dv PRNIOC_GET_IFCAP
+Application can retrieve printer interface capabilities using this command.
+The
+.Xr ioctl 2
+argument is a pointer to
+.Vt uint_t ,
+a bit field representing
+a set of properties and services provided by a printer driver.
+Set bit means supported capability.
+The following values are defined:
+.Bl -tag -width PRN_1284_STATUS
+.It Dv PRN_BIDI
+When this bit is set, the interface operates in a
+bidirectional mode, instead of forward-only mode.
+.It Dv PRN_HOTPLUG
+If this bit is set, the interface allows device hot-plugging.
+.It Dv PRN_1284_DEVID
+If this bit is set, the device is capable of returning
+.Em 1284
+device ID (see
+.Dv PRNIOC_GET_1284_DEVID ) .
+.It Dv PRN_1284_STATUS
+If this bit is set, the device driver can return device
+status lines (see
+.Dv PRNIOC_GET_1284_STATUS ) .
+Some devices support this
+ioctl in unidirectional mode only.
+.It Dv PRN_TIMEOUTS
+If this bit is set the peripheral may stall during the
+transfer phase and the driver can timeout and return from the
+.Xr write 2
+and
+.Xr read 2
+returning the number of bytes that have been transferred.
+If
+.Dv PRN_TIMEOUTS
+is set, the driver supports this functionality and the
+timeout values can be retrieved and modified via the
+.Dv PRNIOC_GET_TIMEOUTS
+and
+.Dv PRNIOC_SET_TIMEOUTS
+ioctls.
+Otherwise, applications can implement
+their own timeouts and abort phase.
+.It Dv PRN_STREAMS
+This bit impacts the application abort phase behaviour.
+If the device claimed
+.Dv PRN_STREAMS
+capability, the application must issue an
+.Dv I_FLUSH
+.Xr ioctl 2
+before
+.Xr close 2
+to dismiss the untransferred
+data.
+Only STREAMS drivers can support this capability.
+.El
+.It Dv PRNIOC_SET_IFCAP
+This ioctl can be used to change interface capabilities.
+The argument is a pointer to
+.Vt uint_t
+bit field that is described in detail in the
+.Dv PRNIOC_GET_IFCAP
+section.
+Capabilities should be set one at a time;
+otherwise the command will return
+.Er EINVAL .
+The following capabilities can be changed by this ioctl:
+.Bl -tag -width PRN_BIDI
+.It Dv PRN_BIDI
+When this capability is set, the interface operates in a
+bidirectional mode, instead of forward-only mode.
+Devices that support only one
+mode will not return error; applications should use
+.Dv PRNIOC_GET_IFCAP
+to check if the mode was successfully changed.
+Because some capabilities may be
+altered as a side effect of changing other capabilities, this command should be
+followed by
+.Dv PRNIOC_GET_IFCAP .
+.El
+.It Dv PRNIOC_GET_IFINFO
+This command can be used to retrieve printer interface info string, which is an
+arbitrary format string usually describing the bus type.
+The argument is a
+pointer to
+.Vt struct prn_interface_info
+as described below.
+.Bd -literal -offset 2n
+struct prn_interface_info {
+ uint_t if_len; /* length of buffer */
+ uint_t if_rlen; /* actual info length */
+ char *if_data; /* buffer address */
+};
+.Ed
+.Pp
+The application allocates a buffer and sets
+.Fa if_data
+and
+.Fa if_len
+values to its address and length, respectively.
+The driver returns the string
+to this buffer and sets
+.Fa if_len
+to its length.
+If
+.Fa if_len
+is less
+than
+.Fa if_rlen ,
+the driver must return the first
+.Fa if_len
+bytes of the string.
+The application may then repeat the command with a bigger buffer.
+.Pp
+Although
+.Nm
+does not limit the contents of the interface info string,
+some values are recommended and defined in
+.In sys/prnio.h
+by the following macros:
+.Pp
+.Bl -tag -width PRN_PARALLEL -compact
+.It Dv PRN_PARALLEL
+Centronics or
+.Em IEEE 1284
+compatible devices
+.It Dv PRN_SERIAL
+EIA-232/EIA-485 serial ports
+.It Dv PRN_USB
+Universal Serial Bus printers
+.It Dv PRN_1394
+.Em IEEE 1394
+peripherals
+.El
+.Pp
+Printer interface info string is for information only: no implications should
+be made from its value.
+.It Dv PRNIOC_RESET
+Some applications may want to reset the printer state during Setup and/or
+Cleanup phase using
+.Dv PRNIOC_RESET
+command.
+Reset semantics are
+device-specific, and in general, applications using this command should be
+aware of the printer type.
+.Pp
+Each
+.Nm
+compliant driver is required to accept this request, although
+performed actions are completely driver-dependent.
+More information on the
+.Dv PRNIOC_RESET
+implementation for the particular driver is available in the
+corresponding man page and printer manual.
+.It Dv PRNIOC_GET_1284_DEVID
+This command can be used to retrieve printer device ID as defined by
+.Em IEEE 1284-1994 .
+The
+.Xr ioctl 2
+argument is a pointer to
+.Vt struct prn_1284_device_id
+as described below.
+.Bd -literal -offset 2n
+struct prn_1284_device_id {
+ uint_t id_len; /* length of buffer */
+ uint_t id_rlen; /* actual ID length */
+ char *id_data; /* buffer address */
+};
+.Ed
+.Pp
+For convenience, the two-byte length field is not considered part of device ID
+string and is not returned in the user buffer.
+Instead,
+.Fa id_rlen
+value shall be set to (length - 2) by the driver, where length is the ID
+length field value.
+If buffer length is less than
+.Fa id_rlen ,
+the driver returns the first
+.Fa id_len
+bytes of the ID.
+.Pp
+The printer driver must return the most up-to-date value of the device ID.
+.It Dv PRNIOC_GET_STATUS
+This command can be used by applications to retrieve current device status.
+The argument is a pointer to
+.Vt uint_t ,
+where the status word is returned.
+Status is a combination of the following bits:
+.Bl -tag -width PRN_ONLINE
+.It Dv PRN_ONLINE
+For devices that support
+.Dv PRN_HOTPLUG
+capability, this bit is set when the device is online, otherwise the device is
+offline.
+Devices without
+.Dv PRN_HOTPLUG
+support should always have this bit set.
+.It Dv PRN_READY
+This bit indicates if the device is ready to receive/send data.
+Applications may use this bit for an outbound flow control.
+.El
+.It Dv PRNIOC_GET_1284_STATUS
+Devices that support
+.Dv PRN_1284_STATUS
+capability accept this ioctl to
+retrieve the device status lines defined in
+.Em IEEE 1284
+for use in Compatibility mode.
+The following bits may be set by the driver:
+.Pp
+.Bl -tag -width PRN_1284_NOFAULT -compact
+.It Dv PRN_1284_NOFAULT
+Device is not in error state
+.It Dv PRN_1284_SELECT
+Device is selected
+.It Dv PRN_1284_PE
+Paper error
+.It Dv PRN_1284_BUSY
+Device is busy
+.El
+.It Dv PRNIOC_GET_TIMEOUTS
+This command retrieves current transfer timeout values for the driver.
+The argument is a pointer to
+.Vt struct prn_timeouts
+as described below.
+.Bd -literal -offset 2n
+struct prn_timeouts {
+ uint_t tmo_forward; /* forward transfer timeout */
+ uint_t tmo_reverse; /* reverse transfer timeout */
+};
+.Ed
+.Pp
+.Fa tmo_forward
+and
+.Fa tmo_reverse
+define forward and reverse transfer timeouts in seconds.
+This command is only valid for drivers that support
+.Dv PRN_TIMEOUTS
+capability.
+.It Dv PRNIOC_SET_TIMEOUTS
+This command sets current transfer timeout values for the driver.
+The argument is a pointer to
+.Vt struct prn_timeouts .
+See
+.Sx PRNIOC_GET_TIMEOUTS
+for description of this structure.
+This command is only valid for drivers that support
+.Dv PRN_TIMEOUTS
+capability.
+.El
+.Sh SEE ALSO
+.Xr close 2 ,
+.Xr ioctl 2 ,
+.Xr read 2 ,
+.Xr write 2 ,
+.Xr ecpp 4D ,
+.Xr lp 4D ,
+.Xr usbprn 4D ,
+.Xr attributes 7
+.Rs
+.%T IEEE Std 1284-1994
+.Re
diff --git a/usr/src/man/man4i/quotactl.4i b/usr/src/man/man4i/quotactl.4i
new file mode 100644
index 0000000000..47ede04ec9
--- /dev/null
+++ b/usr/src/man/man4i/quotactl.4i
@@ -0,0 +1,227 @@
+.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright (c) 2017, Joyent, Inc.
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.Dd October 28, 2017
+.Dt QUOTACTL 4I
+.Os
+.Sh NAME
+.Nm quotactl
+.Nd manipulate disk quotas
+.Sh SYNOPSIS
+.In sys/fs/ufs_quota.h
+.Fn "int ioctl" "int fd" "Q_QUOTACTL" "struct quotctl *qp"
+.Sh DESCRIPTION
+This
+.Fn ioctl
+call manipulates disk quotas.
+.Fa fd
+is the file descriptor returned by the
+.Xr open 2
+system call after opening the
+.Pa quotas
+file (located in the root directory of the filesystem running quotas).
+.Dv Q_QUOTACTL
+is defined in
+.Pa /usr/include/sys/fs/ufs_quota.h .
+.Fa qp
+is the address of the
+.Vt quotctl
+structure which is defined as
+.Bd -literal -offset 2n
+struct quotctl {
+ int op;
+ uid_t uid;
+ caddr_t addr;
+};
+.Ed
+.Pp
+.Fa op
+indicates an operation to be applied to the user
+.Sy ID
+.Fa uid .
+.Po
+See below.
+.Pc
+.Fa addr
+is the address of an optional, command specific, data
+structure which is copied in or out of the system.
+The interpretation of
+.Fa addr
+is given with each value of
+.Fa op
+below.
+.Bl -tag -width Q_GETQUOTA
+.It Sy Q_QUOTAON
+Turn on quotas for a file system.
+.Fa addr
+points to the full pathname of the
+.Pa quotas
+file.
+.Fa uid
+is ignored.
+It is recommended that
+.Fa uid
+have the value of
+.Sy 0 .
+This call is restricted to the super-user.
+.It Dv Q_QUOTAOFF
+Turn off quotas for a file system.
+.Fa addr
+and
+.Fa uid
+are ignored.
+It is
+recommended that
+.Fa addr
+have the value of
+.Sy NULL
+and
+.Fa uid
+have the value of
+.Sy 0 .
+This call is restricted to the super-user.
+.It Dv Q_GETQUOTA
+Get disk quota limits and current usage for user
+.Fa uid .
+.Fa addr
+is a pointer to a
+.Vt dqblk
+structure
+.Po
+defined in
+.In sys/fs/ufs_quota.h
+.Pc .
+Only the super-user may get the quotas of a user other than himself.
+.It Dv Q_SETQUOTA
+Set disk quota limits and current usage for user
+.Fa uid .
+.Fa addr
+is a pointer to a
+.Vt dqblk
+structure
+.Po
+defined in
+.In sys/fs/ufs_quota.h
+.Pc .
+This call is restricted to the super-user.
+.It Dv Q_SETQLIM
+Set disk quota limits for user
+.Fa uid .
+.Fa addr
+is a pointer to a
+.Vt dqblk
+structure
+.Po
+defined in
+.In sys/fs/ufs_quota.h
+.Pc .
+This call is restricted to the super-user.
+.It Dv Q_SYNC
+Update the on-disk copy of quota usages for this file system.
+.Fa addr
+and
+.Fa uid
+are ignored.
+.It Dv Q_ALLSYNC
+Update the on-disk copy of quota usages for all file systems with active
+quotas.
+.Fa addr
+and
+.Fa uid
+are ignored.
+.El
+.Sh RETURN VALUES
+This
+Fn ioctl
+returns:
+.Bl -tag -width xx
+.It Sy 0
+on success.
+.It Sy \(mi1
+on failure and sets
+.Va errno
+to indicate the error.
+.El
+.Sh FILES
+.Bl -tag -width x
+.It Pa /usr/include/sys/fs/ufs_quota.h
+quota-related structure/function definitions and defines
+.El
+.Sh ERRORS
+.Bl -tag -width EFAULT
+.It Er EFAULT
+.Fa addr
+is invalid.
+.It Er EINVAL
+The kernel has not been compiled with the
+.Sy QUOTA
+option.
+.Fa op
+is invalid.
+.It Er ENOENT
+The
+.Pa quotas
+file specified by
+.Fa addr
+does not exist.
+.It Er EPERM
+The call is privileged and the calling process did not assert
+.Brq Sy PRIV_SYS_MOUNT
+in the effective set.
+.It Er ESRCH
+No disk quota is found for the indicated user.
+Quotas have not been turned on for this file system.
+.It Er EUSERS
+The quota table is full.
+.El
+.Pp
+If
+.Fa op
+is
+.Dv Q_QUOTAON ,
+.Fn ioctl
+may set
+.Va errno
+to:
+.Bl -tag -width EACCES
+.It Er EACCES
+The quota file pointed to by
+.Fa addr
+exists but is not a regular file.
+The quota file pointed to by
+.Fa addr
+exists but is not on the file system pointed to by
+.Fa special .
+.It Er EIO
+Internal I/O error while attempting to read the
+.Pa quotas
+file pointed to by
+.Fa addr .
+.El
+.Sh SEE ALSO
+.Xr getrlimit 2 ,
+.Xr mount 2 ,
+.Xr quota 8 ,
+.Xr quotacheck 8 ,
+.Xr quotaon 8
+.Sh BUGS
+There should be some way to integrate this call with the resource limit
+interface provided by
+.Xr setrlimit 2
+and
+.Xr getrlimit 2 .
+.Pp
+This call is incompatible with Melbourne quotas.
diff --git a/usr/src/man/man4i/sesio.4i b/usr/src/man/man4i/sesio.4i
new file mode 100644
index 0000000000..94d12dd64d
--- /dev/null
+++ b/usr/src/man/man4i/sesio.4i
@@ -0,0 +1,95 @@
+.\" Copyright (c) 1997, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright (c) 2017, Joyent, Inc.
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.Dd October 23, 2017
+.Dt SESIO 4I
+.Os
+.Sh NAME
+.Nm sesio
+.Nd enclosure services device driver interface
+.Sh SYNOPSIS
+.In sys/scsi/targets/sesio.h
+.Sh DESCRIPTION
+The
+.Nm ses
+device driver provides the following ioctls as a means to access
+SCSI enclosure services devices.
+.Sh IOCTLS
+The
+.Nm ses
+driver supports the following ioctls:
+.Bl -tag -width SES_IOCTL_GETSTATE
+.It Dv SES_IOCTL_GETSTATE
+This ioctl obtains enclosure state in the
+.Vt ses_ioctl
+structure.
+.It Dv SES_IOCTL_SETSTATE
+This ioctl is used to set parameters on the enclosure services device.
+The
+.Vt ses_ioctl
+structure is used to pass information into the driver.
+.El
+.Sh EXAMPLES
+.Bl -tag -width "Example 1"
+.It Sy "Example 1"
+Using the
+.Dv SES_IOCTL_GETSTATE
+ioctl
+.El
+.Pp
+The following example uses the
+.Dv SES_IOCTL_GETSTATE
+ioctl to recover 20 bytes of page 4 from a previously opened device.
+.Bd -literal -offset 2n
+char abuf[30];
+struct ses_ioctl *sesp;
+int status;
+
+sesp = (ses_ioctl *)abuf;
+sesp->size = 20;
+sesp->page_code = 4;
+status = ioctl(fd, SES_IOCTL_GETSTATE, abuf);
+.Ed
+.Sh ERRORS
+.Bl -tag -width ENOTTY
+.It Er EIO
+The
+.Nm ses
+driver was unable to obtain data from the enclosure services
+device or the data transfer could not be completed.
+.It Er ENOTTY
+The
+.Nm ses
+driver does not support the requested ioctl function.
+.It Er ENXIO
+The enclosure services device does not exist.
+.It Er EFAULT
+The user specified a bad data length.
+.El
+.Sh STRUCTURES
+The
+.Vt ses_ioctl
+structure has the following fields:
+.Bd -literal -offset 2n
+uint32_t page_size; /* Size of buffer that follows */
+uint8_t page_code: /* Page to be read/written */
+uint8_t reserved[3]; /* Reserved; Set to 0 */
+.Ed
+.Sh ARCHITECTURE
+SPARC
+.Sh SEE ALSO
+.Xr ses 4D ,
+.Xr ioctl 9E
diff --git a/usr/src/man/man4i/sockio.4i b/usr/src/man/man4i/sockio.4i
new file mode 100644
index 0000000000..e2ba308312
--- /dev/null
+++ b/usr/src/man/man4i/sockio.4i
@@ -0,0 +1,97 @@
+.\" Copyright (c) 2017, Joyent, Inc.
+.\" Copyright 1989 AT&T Copyright (c) 1996, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.Dd October 29, 2017
+.Dt SOCKIO 4I
+.Os
+.Sh NAME
+.Nm sockio
+.Nd ioctls that operate directly on sockets
+.Sh SYNOPSIS
+.In sys/sockio.h
+.Sh DESCRIPTION
+The
+.Sy ioctl Ns s
+listed in this manual page apply directly to sockets,
+independent of any underlying protocol.
+The
+.Xr setsockopt 3SOCKET
+call
+.Po
+see
+.Xr getsockopt 3SOCKET
+.Pc
+is the primary method for operating on sockets,
+rather than on the underlying protocol or network interface.
+.Sy ioctl Ns s
+for a specific network interface or protocol are documented in the manual page
+for that interface or protocol.
+.Bl -tag -width SIOCCATMARK
+.It Dv SIOCSPGRP
+The argument is a pointer to an
+.Vt int .
+Set the process-group
+.Sy ID
+that will subsequently receive
+.Dv SIGIO
+or
+.Dv SIGURG
+signals for the socket
+referred to by the descriptor passed to
+.Sy ioctl
+to the value of that
+.Vt int .
+The argument must be either positive (in which case it must be a
+process
+.Sy ID )
+or negative (in which case it must be a process group).
+.It Dv SIOCGPGRP
+The argument is a pointer to an
+.Vt int .
+Get the value of that
+.Vt int
+to the process-group
+.Sy ID
+that is receiving
+.Dv SIGIO
+or
+.Dv SIGURG
+signals for the socket referred to by the descriptor passed to
+.Sy ioctl .
+.It Dv SIOCCATMARK
+The argument is a pointer to an
+.Vt int .
+Set the value of that
+.Vt int
+to
+.Sy 1
+if the read pointer for the socket referred to by the descriptor passed
+to
+.Xr ioctl 2
+points to a mark in the data stream for an out-of-band message.
+Set the value of that
+.Vt int
+to
+.Sy 0
+if the read pointer for the socket
+referred to by the descriptor passed to
+.Sy ioctl
+does not point to a mark
+in the data stream for an out-of-band message.
+.El
+.Sh SEE ALSO
+.Xr ioctl 2 ,
+.Xr getsockopt 3SOCKET
diff --git a/usr/src/man/man4i/streamio.4i b/usr/src/man/man4i/streamio.4i
new file mode 100644
index 0000000000..4e99ba3dfe
--- /dev/null
+++ b/usr/src/man/man4i/streamio.4i
@@ -0,0 +1,1550 @@
+.\" Copyright (c) 2017, Joyent, Inc.
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.Dd October 29, 2017
+.Dt STREAMIO 4I
+.Os
+.Sh NAME
+.Nm streamio
+.Nd STREAMS ioctl commands
+.Sh SYNOPSIS
+.In sys/types.h
+.In stropts.h
+.In sys/conf.h
+.Ft int
+.Fo ioctl
+.Fa "int fildes"
+.Fa "int command"
+.Fa "\&... /*arg*/"
+.Fc
+.Sh DESCRIPTION
+STREAMS (see
+.Xr Intro 3 )
+.Fn ioctl
+commands are a subset of the
+.Xr ioctl 2
+commands and perform a variety of control functions on streams.
+.Pp
+The
+.Fa fildes
+argument is an open file descriptor that refers to a stream.
+The
+.Fa command
+argument determines the control function to be performed as
+described below.
+The
+.Fa arg
+argument represents additional information that
+is needed by this command.
+The type of
+.Fa arg
+depends upon the command, but
+it is generally an integer or a pointer to a command-specific data structure.
+The
+.Fa command
+and
+.Fa arg
+arguments are interpreted by the STREAM head.
+Certain combinations of these arguments may be passed to a module or driver in
+the stream.
+.Pp
+Since these STREAMS commands are
+.Sy ioctls ,
+they are subject to the errors described in
+.Xr ioctl 2 .
+In addition to those errors, the call will fail
+with
+.Va errno
+set to
+.Er EINVAL ,
+without processing a control function, if the STREAM referenced by
+.Fa fildes
+is linked below a multiplexor, or if
+.Fa command
+is not a valid value for a stream.
+.Pp
+Also, as described in
+.Xr ioctl 2 ,
+STREAMS modules and drivers can detect
+errors.
+In this case, the module or driver sends an error message to the STREAM
+head containing an error value.
+This causes subsequent calls to fail with
+.Va errno
+set to this value.
+.Sh IOCTLS
+The following
+.Fn ioctl
+commands, with error values indicated, are applicable to all STREAMS files:
+.Bl -tag -width I_SETCLTIME
+.It Dv I_PUSH
+Pushes the module whose name is pointed to by
+.Va arg
+onto the top of the current stream, just below the STREAM head.
+If the STREAM is a pipe, the module
+will be inserted between the stream heads of both ends of the pipe.
+It then calls the open routine of the newly-pushed module.
+On failure,
+.Va errno
+is set to one of the following values:
+.Bl -tag -width ENOTSUP
+.It Er EINVAL
+Invalid module name.
+.It Er EFAULT
+.Va arg
+points outside the allocated address space.
+.It Er ENXIO
+Open routine of new module failed.
+.It Er ENXIO
+Hangup received on
+.Va fildes .
+.It Er ENOTSUP
+Pushing a module is not supported on this stream.
+.El
+.It Dv I_POP
+Removes the module just below the STREAM head of the STREAM pointed to by
+.Fa fildes .
+To remove a module from a pipe requires that the module was
+pushed on the side it is being removed from.
+.Fa arg
+should be
+.Sy 0
+in an
+.Dv I_POP
+request.
+On failure,
+.Va errno
+is set to one of the following values:
+.Bl -tag -width ENOTSUP
+.It Er EINVAL
+No module present in the stream.
+.It Er ENXIO
+Hangup received on
+.Fa fildes .
+.It Er EPERM
+Attempt to pop through an anchor by an unprivileged process.
+.It Er ENOTSUP
+Removal is not supported.
+.El
+.It Dv I_ANCHOR
+Positions the stream anchor to be at the stream's module directly below the
+stream head.
+Once this has been done, only a privileged process may pop modules
+below the anchor on the stream.
+.Va arg
+must be
+.Sy 0
+in an
+.Dv I_ANCHOR
+request.
+On failure,
+.Va errno
+is set to the following value:
+.Bl -tag -width EINVAL
+.It Er EINVAL
+Request to put an anchor on a pipe.
+.El
+.It Dv I_LOOK
+Retrieves the name of the module just below the stream head of the stream
+pointed to by
+.Fa fildes ,
+and places it in a null terminated character string
+pointed at by
+.Fa arg .
+The buffer pointed to by
+.Fa arg
+should be at least
+.Dv FMNAMESZ Ns +1
+bytes long.
+This requires the declaration
+.Ql "#include <sys/conf.h>" .
+On failure,
+.Dv errno
+is set to one of the following values:
+.Bl -tag -width EFAULT
+.It Er EFAULT
+.Fa arg
+points outside the allocated address space.
+.It Er EINVAL
+No module present in stream.
+.El
+.It Dv I_FLUSH
+This request flushes all input and/or output queues, depending on the value of
+.Fa arg .
+Legal
+.Fa arg
+values are:
+.Bl -tag -width FLUSHRW
+.It Dv FLUSHR
+Flush read queues.
+.It Dv FLUSHW
+Flush write queues.
+.It Dv FLUSHRW
+Flush read and write queues.
+.El
+.Pp
+If a pipe or FIFO does not have any modules pushed, the read queue of the
+stream head on either end is flushed depending on the value of
+.Fa arg .
+.Pp
+If
+.Dv FLUSHR
+is set and
+.Fa fildes
+is a pipe, the read queue for that end
+of the pipe is flushed and the write queue for the other end is flushed.
+If
+.Fa fildes
+is a FIFO, both queues are flushed.
+.Pp
+If
+.Dv FLUSHW
+is set and
+.Fa fildes
+is a pipe and the other end of the pipe
+exists, the read queue for the other end of the pipe is flushed and the write
+queue for this end is flushed.
+If
+.Fa fildes
+is a FIFO, both queues of the
+FIFO are flushed.
+.Pp
+If
+.Dv FLUSHRW
+is set, all read queues are flushed, that is, the read queue
+for the FIFO and the read queue on both ends of the pipe are flushed.
+.Pp
+Correct flush handling of a pipe or FIFO with modules pushed is achieved via
+the
+.Sy pipemod
+module.
+This module should be the first module pushed onto a
+pipe so that it is at the midpoint of the pipe itself.
+.Pp
+On failure,
+.Va errno
+is set to one of the following values:
+.Bl -tag -width EINVAL
+.It Er ENOSR
+Unable to allocate buffers for flush message due to insufficient stream memory
+resources.
+.It Er EINVAL
+Invalid
+.Va arg
+value.
+.It Er ENXIO
+Hangup received on
+.Fa fildes .
+.El
+.It Dv I_FLUSHBAND
+Flushes a particular band of messages.
+.Fa arg
+points to a
+.Vt bandinfo
+structure that has the following members:
+.Bd -literal -offset 2n
+unsigned char bi_pri;
+int bi_flag;
+.Ed
+.Pp
+The
+.Fa bi_flag
+field may be one of
+.Dv FLUSHR ,
+.Dv FLUSHW ,
+or
+.Dv FLUSHRW
+as described earlier.
+.It Dv I_SETSIG
+Informs the stream head that the user wishes the kernel to issue the
+.Dv SIGPOLL
+signal (see
+.Xr signal 3C )
+when a particular event has occurred on the stream associated with
+.Fa fildes .
+.Dv I_SETSIG
+supports an asynchronous processing capability in streams.
+The value of
+.Fa arg
+is a bitmask that specifies the events for which the user should be signaled.
+It is the bitwise OR of any combination of the following constants:
+.Bl -tag -width S_BANDURG
+.It Dv S_INPUT
+Any message other than an
+.Dv M_PCPROTO
+has arrived on a stream head read queue.
+This event is maintained for compatibility with previous releases.
+This event is triggered even if the message is of zero length.
+.It Dv S_RDNORM
+An ordinary (non-priority) message has arrived on a stream head read queue.
+This event is triggered even if the message is of zero length.
+.It Dv S_RDBAND
+A priority band message (band > 0) has arrived on a stream head read queue.
+This event is triggered even if the message is of zero length.
+.It Dv S_HIPRI
+A high priority message is present on the stream head read queue.
+This event is triggered even if the message is of zero length.
+.It Dv S_OUTPUT
+The write queue just below the stream head is no longer full.
+This notifies the
+user that there is room on the queue for sending (or writing) data downstream.
+.It Dv S_WRNORM
+This event is the same as
+.Dv S_OUTPUT .
+.It Dv S_WRBAND
+A priority band greater than 0 of a queue downstream exists and is writable.
+This notifies the user that there is room on the queue for sending (or writing)
+priority data downstream.
+.It Dv S_MSG
+A STREAMS signal message that contains the
+.Dv SIGPOLL
+signal has reached the
+front of the stream head read queue.
+.It Dv S_ERROR
+An
+.Dv M_ERROR
+message has reached the stream head.
+.It Dv S_HANGUP
+An
+.Dv M_HANGUP
+message has reached the stream head.
+.It Dv S_BANDURG
+When used in conjunction with
+.Dv S_RDBAND ,
+.Dv SIGURG
+is generated instead of
+.Dv SIGPOLL
+when a priority message reaches the front of the stream head
+read queue.
+.El
+.Pp
+A user process may choose to be signaled only of high priority messages by
+setting the
+.Fa arg
+bitmask to the value
+.Dv S_HIPRI .
+.Pp
+Processes that wish to receive
+.Dv SIGPOLL
+signals must explicitly register
+to receive them using
+.Dv I_SETSIG .
+If several processes register to receive
+this signal for the same event on the same stream, each process will be
+signaled when the event occurs.
+.Pp
+If the value of
+.Fa arg
+is zero, the calling process will be unregistered and
+will not receive further
+.Dv SIGPOLL
+signals.
+On failure,
+.Va errno
+is set to one of the following values:
+.Bl -tag -width EINVAL
+.It Sy EINVAL
+.Fa arg
+value is invalid or
+.Fa arg
+is zero and process is not registered to receive the
+.Dv SIGPOLL
+signal.
+.It Sy EAGAIN
+Allocation of a data structure to store the signal request failed.
+.El
+.It Dv I_GETSIG
+Returns the events for which the calling process is currently registered to be
+sent a
+.Dv SIGPOLL
+signal.
+The events are returned as a bitmask pointed to by
+.Va arg ,
+where the events are those specified in the description of
+.Dv I_SETSIG
+above.
+On failure,
+.Va errno
+is set to one of the following values:
+.Bl -tag -width EINVAL
+.It Sy EINVAL
+Process not registered to receive the
+.Dv SIGPOLL
+signal.
+.It Sy EFAULT
+.Fa arg
+points outside the allocated address space.
+.El
+.It Dv I_FIND
+Compares the names of all modules currently present in the stream to the name
+pointed to by
+.Fa arg ,
+and returns 1 if the named module is present in the stream.
+It returns 0 if the named module is not present.
+On failure,
+.Va errno
+is set to one of the following values:
+.Bl -tag -width EINVAL
+.It Sy EFAULT
+.Fa arg
+points outside the allocated address space.
+.It Sy EINVAL
+.Fa arg
+does not contain a valid module name.
+.El
+.It Dv I_PEEK
+Allows a user to retrieve the information in the first message on the stream
+head read queue without taking the message off the queue.
+.Dv I_PEEK
+is analogous to
+.Xr getmsg 2
+except that it does not remove the message from the queue.
+.Fa arg
+points to a
+.Vt strpeek
+structure, which contains the following members:
+.Bd -literal -offset 2n
+struct strbuf ctlbuf;
+struct strbuf databuf;
+long flags;
+.Ed
+.Pp
+The
+.Ft maxlen
+field in the
+.Vt ctlbuf
+and
+.Vt databuf
+.Vt strbuf
+structures (see
+.Xr getmsg 2 )
+must be set to the number of bytes of control
+information and/or data information, respectively, to retrieve.
+.Fa flags
+may be set to
+.Dv RS_HIPRI
+or
+.Sy 0 .
+If
+.Dv RS_HIPRI
+is set,
+.Dv I_PEEK
+will look for a high priority message on the stream head read queue.
+Otherwise,
+.Dv I_PEEK
+will look for the first message on the stream head read queue.
+.Pp
+.Dv I_PEEK
+returns
+.Sy 1
+if a message was retrieved, and returns
+.Sy 0
+if no message was found on the stream head read queue.
+It does not wait for a message to arrive.
+On return,
+.Vt ctlbuf
+specifies information in the control buffer,
+.Vt databuf
+specifies information in the data buffer, and
+.Fa flags
+contains the value
+.Dv RS_HIPRI
+or
+.Sy 0 .
+On failure,
+.Va errno
+is set to the following value:
+.Bl -tag -width EBADMSG
+.It Er EFAULT
+.Fa arg
+points, or the buffer area specified in
+.Vt ctlbuf
+or
+.Vt databuf
+is, outside the allocated address space.
+.It Er EBADMSG
+Queued message to be read is not valid for
+.Dv I_PEEK .
+.It Er EINVAL
+Illegal value for
+.Vt flags .
+.It Er ENOSR
+Unable to allocate buffers to perform the
+.Dv I_PEEK
+due to insufficient STREAMS memory resources.
+.El
+.It Dv I_SRDOPT
+Sets the read mode (see
+.Xr read 2 )
+using the value of the argument
+.Va arg .
+Legal
+.Va arg
+values are:
+.Bl -tag -width RNORM
+.It Dv RNORM
+Byte-stream mode, the default.
+.It Dv RMSGD
+Message-discard mode.
+.It Dv RMSGN
+Message-nondiscard mode.
+.El
+.Pp
+In addition, the stream head's treatment of control messages may be changed by
+setting the following flags in
+.Va arg :
+.Bl -tag -width RPROTNORM
+.It Dv RPROTNORM
+Reject
+.Xr read 2
+with
+.Er EBADMSG
+if a control message is at the front of the stream head read queue.
+.It Dv RPROTDAT
+Deliver the control portion of a message as data when a user issues
+.Xr read 2 .
+This is the default behavior.
+.It Dv RPROTDIS
+Discard the control portion of a message, delivering any data portion, when a
+user issues a
+.Xr read 2 .
+.El
+.Pp
+On failure,
+.Va errno
+is set to the following value:
+.Bl -tag -width EINVAL
+.It Er EINVAL
+.Va arg
+is not one of the above legal values, or
+.Va arg
+is the bitwise
+inclusive
+.Sy OR
+of
+.Dv RMSGD
+and
+.Dv RMSGN .
+.El
+.It Dv I_GRDOPT
+Returns the current read mode setting in an
+.Vt int
+pointed to by the argument
+.Fa arg .
+Read modes are described in
+.Xr read 2 .
+On failure,
+.Va errno
+is set to the following value:
+.Bl -tag -width EFAULT
+.It Er EFAULT
+.Fa arg
+points outside the allocated address space.
+.El
+.It Dv I_NREAD
+Counts the number of data bytes in data blocks in the first message on the
+stream head read queue, and places this value in the location pointed to by
+.Fa arg .
+The return value for the command is the number of messages on the
+stream head read queue.
+For example, if zero is returned in
+.Fa arg ,
+but the
+.Fn ioctl
+return value is greater than zero, this indicates that a
+zero-length message is next on the queue.
+On failure,
+.Va errno
+is set to the following value:
+.Bl -tag -width EFAULT
+.It Er EFAULT
+.Fa arg
+points outside the allocated address space.
+.El
+.It Dv I_FDINSERT
+Creates a message from specified buffer(s), adds information about another
+stream and sends the message downstream.
+The message contains a control part and an optional data part.
+The data and control parts to be sent are
+distinguished by placement in separate buffers, as described below.
+.Pp
+The
+.Fa arg
+argument points to a
+.Vt strfdinsert
+structure, which contains
+the following members:
+.Bd -literal -offset 2n
+struct strbuf ctlbuf;
+struct strbuf databuf;
+t_uscalar_t flags;
+int fildes;
+int offset;
+.Ed
+.Pp
+The
+.Fa len
+member in the
+.Vt ctlbuf
+.Vt strbuf
+structure (see
+.Xr putmsg 2 )
+must be set to the size of a
+.Vt t_uscalar_t
+plus the number of bytes of
+control information to be sent with the message.
+The
+.Fa fildes
+member specifies the file descriptor of the other stream, and the
+.Fa offset
+member, which must be suitably aligned for use as a
+.Vt t_uscalar_t ,
+specifies the offset from the start of the control buffer where
+.Dv I_FDINSERT
+will store a
+.Vt t_uscalar_t
+whose interpretation is specific to the stream end.
+The
+.Fa len
+member in the
+.Vt databuf
+.Vt strbuf
+structure must be set to the number of bytes of data information to be sent with
+the message, or to 0 if no data part is to be sent.
+.Pp
+The
+.Fa flags
+member specifies the type of message to be created.
+A normal message is created if
+.Fa flags
+is set to 0, and a high-priority message is created if
+.Fa flags
+is set to
+.Dv RS_HIPRI .
+For non-priority messages,
+.Dv I_FDINSERT
+will block if the stream write queue is full due to internal
+flow control conditions.
+For priority messages,
+.Dv I_FDINSERT
+does not block on this condition.
+or non-priority messages,
+.Dv I_FDINSERT
+does not
+block when the write queue is full and
+.Dv O_NDELAY
+or
+.Dv O_NONBLOCK
+is set.
+Instead, it fails and sets
+.Va errno
+to
+.Er EAGAIN .
+.Pp
+.Dv I_FDINSERT
+also blocks, unless prevented by lack of internal resources, waiting for the
+availability of message blocks in the stream, regardless of priority or whether
+.Dv O_NDELAY
+or
+.Dv O_NONBLOCK
+has been specified.
+No partial message is sent.
+.Pp
+The
+.Fn ioctl
+function with the
+.Dv I_FDINSERT
+command will fail if:
+.Bl -tag -width EAGAIN
+.It Er EAGAIN
+A non-priority message is specified, the
+.Dv O_NDELAY
+or
+.Dv O_NONBLOCK
+flag is set, and the stream write queue is full due to internal flow control
+conditions.
+.It Er ENOSR
+Buffers can not be allocated for the message that is to be created.
+.It Er EFAULT
+The
+.Fa arg
+argument points, or the buffer area specified in
+.Vt ctlbuf
+or
+.Vt databuf
+is, outside the allocated address space.
+.It Er EINVAL
+One of the following: The
+.Fa fildes
+member of the
+.Vt strfdinsert
+structure is not a valid, open stream file descriptor; the size of a
+.Vt t_uscalar_t
+plus
+.Fa offset
+is greater than the
+.Fa len
+member for the buffer specified through
+.Fa ctlptr ;
+the
+.Fa offset
+member does not specify a properly-aligned location in the data buffer; or an
+undefined value is stored in
+.Fa flags .
+.It Er ENXIO
+Hangup received on the
+.Fa fildes
+argument of the
+.Fn ioctl
+call or the
+.Fa fildes
+member of the
+.Vt strfdinsert
+structure.
+.It Er ERANGE
+The
+.Fa len
+field for the buffer specified through
+.Vt databuf
+does not fall within the range specified by the maximum and minimum packet
+sizes of the topmost stream module; or the
+.Fa len
+member for the buffer specified through
+.Vt databuf
+is larger than the maximum configured size of the data part of a message; or the
+.Fa len
+member for the buffer specified through
+.Vt ctlbuf
+is larger than the maximum configured size of the control part of a message.
+.El
+.Pp
+.Dv I_FDINSERT
+can also fail if an error message was received by the stream
+head of the stream corresponding to the
+.Fa fildes
+member of the
+.Vt strfdinsert
+structure.
+In this case,
+.Va errno
+will be set to the value in the message.
+.It Dv I_STR
+Constructs an internal
+.Sy STREAMS
+ioctl message from the data pointed to by
+.Fa arg ,
+and sends that message downstream.
+.Pp
+This mechanism is provided to send user
+.Fn ioctl
+requests to downstream modules and drivers.
+It allows information to be sent with the
+.Fn ioctl ,
+and will return to the user any information sent upstream by the downstream
+recipient.
+.Dv I_STR
+blocks until the system responds with either a positive or negative
+acknowledgement message, or until the request times out after some period of
+time.
+If the request times out, it fails with
+.Va errno
+set to
+.Er ETIME .
+.Pp
+To send requests downstream,
+.Fa arg
+must point to a
+.Vt strioctl
+structure which contains the following members:
+.Bd -literal -offset 2n
+int ic_cmd;
+int ic_timout;
+int ic_len;
+char *ic_dp;
+.Ed
+.Pp
+.Fa ic_cmd
+is the internal
+.Fn ioctl
+command intended for a downstream module or driver and
+.Fa ic_timout
+is the number of seconds (-1 = infinite, 0 = use default, >0 = as specified) an
+.Dv I_STR
+request will wait for acknowledgement before timing out.
+.Fa ic_len
+is the number of bytes in the data argument and
+.Fa ic_dp
+is a pointer to the data argument.
+The
+.Fa ic_len
+field has two uses: on input, it contains the length of the data
+argument passed in, and on return from the command, it contains the number of
+bytes being returned to the user (the buffer pointed to by
+.Fa ic_dp
+should be large enough to contain the maximum amount of data that any module or
+the driver in the stream can return).
+.Pp
+At most one
+.Dv I_STR
+can be active on a stream.
+Further
+.Dv I_STR
+calls
+will block until the active
+.Dv I_STR
+completes via a positive or negative
+acknowlegment, a timeout, or an error condition at the stream head.
+By setting the
+.Fa ic_timout
+field to 0, the user is requesting STREAMS to provide
+the
+.Sy DEFAULT
+timeout.
+The default timeout is specific to the STREAMS
+implementation and may vary depending on which release of Solaris you are
+using.
+For Solaris 8 (and earlier versions), the default timeout is fifteen
+seconds.
+The
+.Dv O_NDELAY
+and
+.Dv O_NONBLOCK
+(see
+.Xr open 2 )
+flags have no effect on this call.
+.Pp
+The stream head will convert the information pointed to by the
+.Vt strioctl
+structure to an internal
+.Fn ioctl
+command message and send it downstream.
+On failure,
+.Va errno
+is set to one of the following values:
+.Bl -tag -width EFAULT
+.It Er ENOSR
+Unable to allocate buffers for the
+.Fn ioctl
+message due to insufficient STREAMS memory resources.
+.It Er EFAULT
+Either
+.Fa arg
+points outside the allocated address space, or the buffer area
+specified by
+.Fa ic_dp
+and
+.Fa ic_len
+(separately for data sent and data returned) is outside the allocated address
+space.
+.It Er EINVAL
+.Fa ic_len
+is less than 0 or
+.Fa ic_len
+is larger than the maximum configured size of the data part of a message or
+.Fa ic_timout
+is less than \(mi1.
+.It Er ENXIO
+Hangup received on
+.Fa fildes .
+.It Er ETIME
+A downstream
+.Fn ioctl
+timed out before acknowledgement was received.
+.El
+.Pp
+An
+.Dv I_STR
+can also fail while waiting for an acknowledgement if a message
+indicating an error or a hangup is received at the stream head.
+In addition, an
+error code can be returned in the positive or negative acknowledgement message,
+in the event the ioctl command sent downstream fails.
+For these cases,
+.Dv I_STR
+will fail with
+.Va errno
+set to the value in the message.
+.It Dv I_SWROPT
+Sets the write mode using the value of the argument
+.Fa arg .
+Legal bit settings for
+.Fa arg
+are:
+.Bl -tag -width SNDZERO
+.It Dv SNDZERO
+Send a zero-length message downstream when a write of 0 bytes occurs.
+.El
+.Pp
+To not send a zero-length message when a write of 0 bytes occurs, this bit must
+not be set in
+.Fa arg .
+.Pp
+On failure,
+.Va errno
+may be set to the following value:
+.Bl -tag -width EINVAL
+.It Sy EINVAL
+.Fa arg
+is not the above legal value.
+.El
+.It Dv I_GWROPT
+Returns the current write mode setting, as described above, in the
+.Vt int
+that is pointed to by the argument
+.Fa arg .
+.It Dv I_SENDFD
+Requests the stream associated with
+.Fa fildes
+to send a message, containing
+a file pointer, to the stream head at the other end of a stream pipe.
+The file
+pointer corresponds to
+.Fa arg ,
+which must be an open file descriptor.
+.Pp
+.Dv I_SENDFD
+converts
+.Fa arg
+into the corresponding system file pointer.
+It allocates a message block and inserts the file pointer in the block.
+The user id and group id associated with the sending process are also inserted.
+This message is placed directly on the read queue (see
+.Xr Intro 3 )
+of the stream head at the other end of the stream pipe to which it is connected.
+On failure,
+.Va errno
+is set to one of the following values:
+.Bl -tag -width EAGAIN
+.It Er EAGAIN
+The sending stream is unable to allocate a message block to contain the file
+pointer.
+.It Er EAGAIN
+The read queue of the receiving stream head is full and cannot accept the
+message sent by
+.Dv I_SENDFD .
+.It Er EBADF
+.Fa arg
+is not a valid, open file descriptor.
+.It Er EINVAL
+.Va fildes
+is not connected to a stream pipe.
+.It Er ENXIO
+Hangup received on
+.Fa fildes .
+.El
+.It Dv I_RECVFD
+Retrieves the file descriptor associated with the message sent by an
+.Dv I_SENDFD
+.Fn ioctl
+over a stream pipe.
+.Fa arg
+is a pointer to a data buffer large enough to hold an
+.Vt strrecvfd
+data structure containing the following members:
+.Bd -literal -offset 2n
+int fd;
+uid_t uid;
+gid_t gid;
+.Ed
+.Pp
+.Fa fd
+is an integer file descriptor.
+.Fa uid
+and
+.Fa gid
+are the user id and group id, respectively, of the sending stream.
+.Pp
+If
+.Dv O_NDELAY
+and
+.Dv O_NONBLOCK
+are clear (see
+.Xr open 2 ) ,
+.Dv I_RECVFD
+will block until a message is present at the stream head.
+If
+.Dv O_NDELAY
+or
+.Dv O_NONBLOCK
+is set,
+.Dv I_RECVFD
+will fail with
+.Va errno
+set to
+.Er EAGAIN
+if no message is present at the stream head.
+.Pp
+If the message at the stream head is a message sent by an
+.Dv I_SENDFD ,
+a new
+user file descriptor is allocated for the file pointer contained in the
+message.
+The new file descriptor is placed in the
+.Fa fd
+field of the
+.Vt strrecvfd
+structure.
+The structure is copied into the user data buffer pointed to by
+.Fa arg .
+On failure,
+.Va errno
+is set to one of the following values:
+.Bl -tag -width EOVERFLOW
+.It Er EAGAIN
+A message is not present at the stream head read queue, and the
+.Dv O_NDELAY
+or
+.Dv O_NONBLOCK
+flag is set.
+.It Er EBADMSG
+The message at the stream head read queue is not a message containing a passed
+file descriptor.
+.It Er EFAULT
+.Fa arg
+points outside the allocated address space.
+.It Er EMFILE
+.Dv NOFILES
+file descriptors are currently open.
+.It Er ENXIO
+Hangup received on
+.Fa fildes .
+.It Er EOVERFLOW
+.Fa uid
+or
+.Fa gid
+is too large to be stored in the structure pointed to by
+.Fa arg .
+.El
+.It Dv I_LIST
+Allows the user to list all the module names on the stream, up to and including
+the topmost driver name.
+If
+.Fa arg
+is
+.Dv NULL ,
+the return value is the number of modules, including the driver, that are on
+the stream pointed to by
+.Fa fildes .
+This allows the user to allocate enough space for the module
+names.
+If
+.Fa arg
+is non-null, it should point to an
+.Vt str_list
+structure that has the following members:
+.Bd -literal -offset 2n
+int sl_nmods;
+struct str_mlist *sl_modlist;
+.Ed
+.Pp
+The
+.Vt str_mlist
+structure has the following member:
+.Bd -literal -offset 2n
+char l_name[FMNAMESZ+1];
+.Ed
+.Pp
+The
+.Fa sl_nmods
+member indicates the number of entries the process has allocated in the array.
+Upon return, the
+.Fa sl_modlist
+member of the
+.Vt str_list
+structure contains the list of module names, and the number of
+entries that have been filled into the
+.Fa sl_modlist
+array is found in the
+.Fa sl_nmods
+member (the number includes the number of modules including the driver).
+The return value from
+.Fn ioctl
+is 0.
+The entries are filled in
+starting at the top of the stream and continuing downstream until either the
+end of the stream is reached, or the number of requested modules
+.Pq Fa sl_nmods
+is satisfied.
+On failure,
+.Va errno
+may be set to one of the following values:
+.Bl -tag -width EINVAL
+.It Er EINVAL
+The
+.Fa sl_nmods
+member is less than 1.
+.It Er EAGAIN
+Unable to allocate buffers
+.El
+.It Dv I_ATMARK
+Allows the user to see if the current message on the stream head read queue is
+.Dq marked
+by some module downstream.
+.Fa arg
+determines how the checking is
+done when there may be multiple marked messages on the stream head read queue.
+It may take the following values:
+.Bl -tag -width LASTMARK
+.It Dv ANYMARK
+Check if the message is marked.
+.It Dv LASTMARK
+Check if the message is the last one marked on the queue.
+.El
+.Pp
+The return value is
+.Sy 1
+if the mark condition is satisfied and
+.Sy 0
+otherwise.
+On failure,
+.Va errno
+is set to the following value:
+.Bl -tag -width EINVAL
+.It Er EINVAL
+Invalid
+.Fa arg
+value.
+.El
+.It Dv I_CKBAND
+Check if the message of a given priority band exists on the stream head read
+queue.
+This returns
+.Sy 1
+if a message of a given priority exists,
+.Sy 0
+if not, or
+.Sy \(mi1
+on error.
+.Fa arg
+should be an integer containing the value of the priority band in question.
+On failure,
+.Va errno
+is set to the following value:
+.Bl -tag -width EINVAL
+.It Er EINVAL
+Invalid
+.Fa arg
+value.
+.El
+.It Dv I_GETBAND
+Returns the priority band of the first message on the stream head read queue in
+the integer referenced by
+.Fa arg .
+On failure,
+.Va errno
+is set to the following value:
+.Bl -tag -width ENODATA
+.It Er ENODATA
+No message on the stream head read queue.
+.El
+.It Dv I_CANPUT
+Check if a certain band is writable.
+.Fa arg
+is set to the priority band in question.
+The return value is
+.Sy 0
+if the priority band
+.Fa arg
+is flow controlled,
+.Sy 1
+if the band is writable, or
+.Sy \(mi1
+on error.
+On failure,
+.Va errno
+is set to the following value:
+.Bl -tag -width EINVAL
+.It Sy EINVAL
+Invalid
+.Va arg
+value.
+.El
+.It Dv I_SETCLTIME
+Allows the user to set the time the stream head will delay when a stream is
+closing and there are data on the write queues.
+Before closing each module and driver, the stream head will delay for the
+specified amount of time to allow the data to drain.
+Note, however, that the module or driver may itself delay in its close routine;
+this delay is independent of the stream head's delay and is not settable.
+If, after the delay, data are still present, data will be flushed.
+.Fa arg
+is a pointer to an integer containing the number of
+milliseconds to delay, rounded up to the nearest legal value on the system.
+The default is fifteen seconds.
+On failure,
+.Va errno
+is set to the following value:
+.Bl -tag -width EINVAL
+.It Er EINVAL
+Invalid
+.Fa arg
+value.
+.El
+.It Dv I_GETCLTIME
+Returns the close time delay in the integer pointed by
+.Va arg .
+.It Dv I_SERROPT
+Sets the error mode using the value of the argument
+.Fa arg .
+.Pp
+Normally stream head errors are persistent; once they are set due to an
+.Dv M_ERROR
+or
+.Dv M_HANGUP ,
+the error condition will remain until the stream is closed.
+This option can be used to set the stream head into
+non-persistent error mode i\.e\. once the error has been returned in response
+to a
+.Xr read 2 ,
+.Xr getmsg 2 ,
+.Xr ioctl 2 ,
+.Xr write 2 ,
+or
+.Xr putmsg 2
+call the error condition will be cleared.
+The error mode can be controlled independently for read and write side errors.
+Legal
+.Fa arg
+values
+are either none or one of:
+.Bl -tag -width RERRNONPERSIST
+.It Dv RERRNORM
+Persistent read errors, the default.
+.It Dv RERRNONPERSIST
+Non-persistent read errors.
+.El
+.Pp
+.Sy OR Ns 'ed
+with either none or one of:
+.Bl -tag -width WERRNONPERSIST
+.It Dv WERRNORM
+Persistent write errors, the default.
+.It Dv WERRNONPERSIST
+Non-persistent write errors.
+.El
+.Pp
+When no value is specified e\.g\. for the read side error behavior then the
+behavior for that side will be left unchanged.
+.Pp
+On failure,
+.Va errno
+is set to the following value:
+.Bl -tag -width EINVAL
+.It Er EINVAL
+.Va arg
+is not one of the above legal values.
+.El
+.It Dv I_GERROPT
+Returns the current error mode setting in an
+.Vt int
+pointed to by the argument
+.Fa arg .
+Error modes are described above for
+.Dv I_SERROPT .
+On failure,
+.Va errno
+is set to the following value:
+.Bl -tag -width EFAULT
+.It Sy EFAULT
+.Fa arg
+points outside the allocated address space.
+.El
+.El
+.Pp
+The following four commands are used for connecting and disconnecting
+multiplexed STREAMS configurations.
+.Bl -tag -width I_PUNLINK
+.It Dv I_LINK
+Connects two streams, where
+.Fa fildes
+is the file descriptor of the stream
+connected to the multiplexing driver, and
+.Fa arg
+is the file descriptor of the stream connected to another driver.
+The stream designated by
+.Va arg
+gets
+connected below the multiplexing driver.
+.Dv I_LINK
+requires the multiplexing
+driver to send an acknowledgement message to the stream head regarding the
+linking operation.
+This call returns a multiplexor ID number (an identifier
+used to disconnect the multiplexor, see
+.Dv I_UNLINK )
+on success, and \(mi1 on failure.
+On failure,
+.Va errno
+is set to one of the following values:
+.Bl -tag -width EAGAIN
+.It Er ENXIO
+Hangup received on
+.Va fildes .
+.It Er ETIME
+Time out before acknowledgement message was received at stream head.
+.It Er EAGAIN
+Temporarily unable to allocate storage to perform the
+.Dv I_LINK .
+.It Er ENOSR
+Unable to allocate storage to perform the
+.Dv I_LINK
+due to insufficient
+.Sy STREAMS
+memory resources.
+.It Er EBADF
+.Va arg
+is not a valid, open file descriptor.
+.It Er EINVAL
+.Va fildes
+stream does not support multiplexing.
+.It Er EINVAL
+is not a stream, or is already linked under a multiplexor.
+.It Er EINVAL
+The specified link operation would cause a
+.Dq cycle
+in the resulting configuration; that is, a driver would be linked into the
+multiplexing configuration in more than one place.
+.It Er EINVAL
+.Va fildes
+is the file descriptor of a pipe or FIFO.
+.It Er EINVAL
+Either the upper or lower stream has a major number \(>= the maximum major
+number on the system.
+.El
+.Pp
+An
+.Dv I_LINK
+can also fail while waiting for the multiplexing driver to
+acknowledge the link request, if a message indicating an error or a hangup is
+received at the stream head of
+.Fa fildes .
+In addition, an error code can be
+returned in the positive or negative acknowledgement message.
+For these cases,
+.Dv I_LINK
+will fail with
+.Va errno
+set to the value in the message.
+.It Dv I_UNLINK
+Disconnects the two streams specified by
+.Fa fildes
+and
+.Fa arg .
+.Fa fildes
+is the file descriptor of the stream connected to the multiplexing
+driver.
+.Fa arg
+is the multiplexor ID number that was returned by the
+.Dv I_LINK .
+If
+.Fa arg
+is \(mi1, then all streams that were linked to
+.Fa fildes
+are disconnected.
+As in
+.Dv I_LINK ,
+this command requires the multiplexing driver to acknowledge the unlink.
+On failure,
+.Va errno
+is set to one of the following values:
+.Bl -tag -width EINVAL
+.It Er ENXIO
+Hangup received on
+.Va fildes .
+.It Er ETIME
+Time out before acknowledgement message was received at stream head.
+.It Er ENOSR
+Unable to allocate storage to perform the
+.Dv I_UNLINK
+due to insufficient
+STREAMS memory resources.
+.It Er EINVAL
+.Fa arg
+is an invalid multiplexor ID number or
+.Fa fildes
+is not the stream on which the
+.Dv I_LINK
+that returned
+.Fa arg
+was performed.
+.It Er EINVAL
+.Fa fildes
+is the file descriptor of a pipe or FIFO.
+.El
+.Pp
+An
+.Dv I_UNLINK
+can also fail while waiting for the multiplexing driver to
+acknowledge the link request, if a message indicating an error or a hangup is
+received at the stream head of
+.Fa fildes .
+In addition, an error code can be
+returned in the positive or negative acknowledgement message.
+For these cases,
+.Dv I_UNLINK
+will fail with
+.Va errno
+set to the value in the message.
+.It Dv I_PLINK
+Connects two streams, where
+.Fa fildes
+is the file descriptor of the stream
+connected to the multiplexing driver, and
+.Fa arg
+is the file descriptor of
+the stream connected to another driver.
+The stream designated by
+.Fa arg
+gets
+connected via a persistent link below the multiplexing driver.
+.Dv I_PLINK
+requires the multiplexing driver to send an acknowledgement message to the
+stream head regarding the linking operation.
+This call creates a persistent
+link that continues to exist even if the file descriptor
+.Fa fildes
+associated with the upper stream to the multiplexing driver is closed.
+This
+call returns a multiplexor ID number (an identifier that may be used to
+disconnect the multiplexor, see
+.Dv I_PUNLINK )
+on success, and \(mi1 on failure.
+On failure,
+.Va errno
+is set to one of the following values:
+.Bl -tag -width EAGAIN
+.It Er ENXIO
+Hangup received on
+.Fa fildes .
+.It Er ETIME
+Time out before acknowledgement message was received at the stream head.
+.It Er EAGAIN
+Unable to allocate STREAMS storage to perform the
+.Dv I_PLINK .
+.It Er EBADF
+.Va arg
+is not a valid, open file descriptor.
+.It Er EINVAL
+.Va fildes
+does not support multiplexing.
+.It Er EINVAL
+.Va arg
+is not a stream or is already linked under a multiplexor.
+.It Er EINVAL
+The specified link operation would cause a
+.Dq cycle
+in the resulting configuration; that is, if a driver would be linked into the
+multiplexing configuration in more than one place.
+.It Er EINVAL
+.Fa fildes
+is the file descriptor of a pipe or FIFO.
+.El
+.Pp
+An
+.Dv I_PLINK
+can also fail while waiting for the multiplexing driver to
+acknowledge the link request, if a message indicating an error on a hangup is
+received at the stream head of
+.Fa fildes .
+In addition, an error code can be
+returned in the positive or negative acknowledgement message.
+For these cases,
+.Dv I_PLINK
+will fail with
+.Va errno
+set to the value in the message.
+.It Dv I_PUNLINK
+Disconnects the two streams specified by
+.Fa fildes
+and
+.Fa arg
+that are
+connected with a persistent link.
+.Fa fildes
+is the file descriptor of the
+stream connected to the multiplexing driver.
+.Fa arg
+is the multiplexor ID number that was returned by
+.Dv I_PLINK
+when a stream was linked below the multiplexing driver.
+If
+.Fa arg
+is
+.Dv MUXID_ALL
+then all streams that are persistent links to
+.Fa fildes
+are disconnected.
+As in
+.Dv I_PLINK ,
+this command requires the multiplexing driver to acknowledge the unlink.
+On failure,
+.Va errno
+is set to one of the following values:
+.Bl -tag -width EAGAIN
+.It Sy ENXIO
+Hangup received on
+.Fa fildes .
+.It Er ETIME
+Time out before acknowledgement message was received at the stream head.
+.It Er EAGAIN
+Unable to allocate buffers for the acknowledgement message.
+.It Er EINVAL
+Invalid multiplexor ID number.
+.It Er EINVAL
+.Fa fildes
+is the file descriptor of a pipe or FIFO.
+.El
+.Pp
+An
+.Dv I_PUNLINK
+can also fail while waiting for the multiplexing driver to
+acknowledge the link request if a message indicating an error or a hangup is
+received at the stream head of
+.Fa fildes .
+In addition, an error code can be
+returned in the positive or negative acknowledgement message.
+For these cases,
+.Dv I_PUNLINK
+will fail with
+.Va errno
+set to the value in the message.
+.El
+.Sh RETURN VALUES
+Unless specified otherwise above, the return value from
+.Xr ioctl 2
+is
+.Sy 0
+upon success and
+.Sy \(mi1
+upon failure, with
+.Va errno
+set as indicated.
+.Sh SEE ALSO
+.Xr close 2 ,
+.Xr fcntl 2 ,
+.Xr getmsg 2 ,
+.Xr ioctl 2 ,
+.Xr open 2 ,
+.Xr poll 2 ,
+.Xr putmsg 2 ,
+.Xr read 2 ,
+.Xr write 2 ,
+.Xr Intro 3 ,
+.Xr signal 3C ,
+.Xr signal.h 3HEAD
+.Pp
+.%B STREAMS Programming Guide
diff --git a/usr/src/man/man4i/termio.4i b/usr/src/man/man4i/termio.4i
new file mode 100644
index 0000000000..c30fdd5262
--- /dev/null
+++ b/usr/src/man/man4i/termio.4i
@@ -0,0 +1,2193 @@
+.\" Copyright (c) 2005, Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 2019, Joyent, Inc. All Rights Reserved.
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.Dd August 13, 2021
+.Dt TERMIO 4I
+.Os
+.Sh NAME
+.Nm termio
+.Nd general terminal interface
+.Sh SYNOPSIS
+.In termio.h
+.Fn ioctl "int fildes" "int request" "struct termio *arg"
+.Fn ioctl "int fildes" "int request" "int arg"
+.Pp
+.In termios.h
+.Fn ioctl "int fildes" "int request" "struct termios *arg"
+.Sh DESCRIPTION
+This release supports a general interface for asynchronous communications ports
+that is hardware-independent.
+The user interface to this functionality is using
+function calls (the preferred interface) described in
+.Xr termios 3C
+or
+.Fn ioctl
+commands described in this section.
+This section also discusses the
+common features of the terminal subsystem which are relevant with both user
+interfaces.
+.Pp
+When a terminal file is opened, it normally causes the process to wait until a
+connection is established.
+In practice, user programs seldom open terminal
+files; they are opened by the system and become a user's standard input,
+output, and error files.
+The first terminal file opened by the session leader
+that is not already associated with a session becomes the controlling terminal
+for that session.
+The controlling terminal plays a special role in handling
+quit and interrupt signals, as discussed below.
+The controlling terminal is
+inherited by a child process during a
+.Xr fork 2 .
+A process can break this
+association by changing its session using
+.Xr setsid 2 .
+.Pp
+A terminal associated with one of these files ordinarily operates in
+full-duplex mode.
+Characters may be typed at any time, even while output is
+occurring, and are only lost when the character input buffers of the system
+become completely full, which is rare.
+For example, the number of characters in
+the line discipline buffer may exceed
+.Brq Dv MAX_CANON
+and
+.Dv IMAXBEL
+(see below) is not set, or the user may accumulate
+.Brq Dv MAX_INPUT
+number of input characters that have not yet been read by some program.
+When the input
+limit is reached, all the characters saved in the buffer up to that point are
+thrown away without notice.
+.Ss "Session Management (Job Control)"
+A control terminal will distinguish one of the process groups in the session
+associated with it to be the foreground process group.
+All other process
+groups in the session are designated as background process groups.
+This foreground process group plays a special role in handling signal-generating
+input characters, as discussed below.
+By default, when a controlling terminal
+is allocated, the controlling process's process group is assigned as
+foreground process group.
+.Pp
+Background process groups in the controlling process's session are subject to a
+job control line discipline when they attempt to access their controlling
+terminal.
+Process groups can be sent signals that will cause them to stop,
+unless they have made other arrangements.
+An exception is made for members of
+orphaned process groups.
+.Pp
+An orphaned process group is one where the process group (see
+.Xr getpgid 2 )
+has no members with a parent in a different process group but sharing the same
+controlling terminal.
+When a member of an orphaned process group attempts to
+access its controlling terminal, EIO is returned because there would be no way
+to restart the process if it were stopped on one of these signals.
+.Pp
+If a member of a background process group attempts to read its controlling
+terminal, its process group will be sent a
+.Dv SIGTTIN
+signal, which will
+normally cause the members of that process group to stop.
+If, however, the
+process is ignoring or holding
+.Dv SIGTTIN ,
+or is a member of an orphaned
+process group, the read will fail with
+.Va errno
+set to
+.Er EIO ,
+and no signal is sent.
+.Pp
+If a member of a background process group attempts to write its controlling
+terminal and the
+.Dv TOSTOP
+bit is set in the
+.Fa c_lflag
+field, its process group is sent a
+.Dv SIGTTOU
+signal, which will normally cause the
+members of that process group to stop.
+If, however, the process is ignoring or
+holding
+.Dv SIGTTOU ,
+the write will succeed.
+If the process is not ignoring
+or holding
+.Dv SIGTTOU
+and is a member of an orphaned process group, the
+write will fail with
+.Va errno
+set to
+.Er EIO ,
+and no signal will be sent.
+.Pp
+If
+.Dv TOSTOP
+is set and a member of a background process group attempts to
+.Fn ioctl
+its controlling terminal, and that
+.Fn ioctl
+will modify terminal parameters (for example,
+.Dv TCSETA ,
+.Dv TCSETAW ,
+.Dv TCSETAF ,
+or
+.Dv TIOCSPGRP ) ,
+its process group will be sent a
+.Dv SIGTTOU
+signal, which will normally cause the members of that process group to stop.
+If, however, the process is ignoring or holding
+.Dv SIGTTOU ,
+the ioctl will succeed.
+If the process is not ignoring or holding
+.Dv SIGTTOU
+and is a member of an orphaned
+process group, the write will fail with
+.Va errno
+set to
+.Er EIO ,
+and no signal will be sent.
+.Ss "Canonical Mode Input Processing"
+Normally, terminal input is processed in units of lines.
+A line is delimited by
+a newline
+.Po
+.Sy ASCII LF
+.Pc
+character, an end-of-file
+.Po
+.Sy ASCII EOT
+.Pc
+character, or an end-of-line character.
+This means that a program attempting to
+read will block until an entire line has been typed.
+Also, no matter how many
+characters are requested in the read call, at most one line will be returned.
+It is not necessary, however, to read a whole line at once; any number of
+characters may be requested in a read, even one, without losing information.
+.Pp
+During input, erase, erase2, and kill processing is normally done.
+The
+.Sy ERASE
+and
+.Sy ERASE2
+character (by default, the character
+.Sy DEL
+for
+.Sy ERASE
+and
+.Sy Control-h
+for
+.Sy ERASE2 )
+erases the last character typed.
+The
+.Sy WERASE
+character (the character
+.Sy Control-w )
+erases the
+last "word" typed in the current input line (but not any preceding spaces or
+tabs).
+A
+.Dq word
+is defined as a sequence of non-blank characters, with tabs counted as blanks.
+None of
+.Sy ERASE
+or
+.Sy ERASE2
+or
+.Sy WERASE
+will erase beyond the beginning of the line.
+The
+.Sy KILL
+character (by default,
+the character
+.Sy NAK )
+kills (deletes) the entire input line, and optionally
+outputs a newline character.
+All these characters operate on a key stroke basis,
+independent of any backspacing or tabbing that may have been done.
+The
+.Sy REPRINT
+character (the character
+.Sy Control-r )
+prints a newline followed by all characters that have not been read.
+Reprinting also occurs automatically if
+characters that would normally be erased from the screen are fouled by program
+output.
+The characters are reprinted as if they were being echoed;
+consequencely, if
+.Dv ECHO
+is not set, they are not printed.
+.Pp
+The
+.Sy ERASE ,
+.Sy ERASE2 ,
+and
+.Sy KILL
+characters may be entered literally by preceding them with the escape character.
+In this case, the escape character is not read.
+The erase, erase2, and kill characters may be changed.
+.Ss "Non-canonical Mode Input Processing"
+In non-canonical mode input processing, input characters are not assembled into
+lines, and erase and kill processing does not occur.
+The
+.Sy MIN
+and
+.Sy TIME
+values are used to determine how to process the characters received.
+.Pp
+.Sy MIN
+represents the minimum number of characters that should be received
+when the read is satisfied (that is, when the characters are returned to the
+user).
+.Sy TIME
+is a timer of 0\&.10-second granularity that is used to timeout
+bursty and short-term data transmissions.
+The four possible values for
+.Sy MIN
+and
+.Sy TIME
+and their interactions are described below.
+.Bl -tag -width "Case A: Min > 0, Time > 0"
+.It Sy Case A: MIN > 0, TIME > 0
+In this case,
+.Sy TIME
+serves as an intercharacter timer and is activated
+after the first character is received.
+Since it is an intercharacter timer, it
+is reset after a character is received.
+The interaction between
+.Sy MIN
+and
+.Sy TIME
+is as follows: as soon as one character is received, the
+intercharacter timer is started.
+If
+.Sy MIN
+characters are received before
+the intercharacter timer expires (note that the timer is reset upon receipt of
+each character), the read is satisfied.
+If the timer expires before
+.Sy MIN
+characters are received, the characters received to that point are returned to
+the user.
+Note that if
+.Sy TIME
+expires, at least one character will be
+returned because the timer would not have been enabled unless a character was
+received.
+In this case (MIN > 0, TIME > 0), the read sleeps until the
+.Sy MIN
+and
+.Sy TIME
+mechanisms are activated by the receipt of the first character.
+If the number of characters read is less than the number of characters
+available, the timer is not reactivated and the subsequent read is satisfied
+immediately.
+.It Sy Case B: MIN > 0, TIME = 0
+In this case, since the value of
+.Sy TIME
+is zero, the timer plays no role
+and only
+.Sy MIN
+is significant.
+A pending read is not satisfied until
+.Sy MIN
+characters are received (the pending read sleeps until
+.Sy MIN
+characters are received).
+A program that uses this case to read record based
+terminal
+.Sy I/O
+may block indefinitely in the read operation.
+.It Sy Case C: MIN = 0, TIME > 0
+In this case, since
+.Sy MIN
+0,
+.Sy TIME
+no longer represents an
+intercharacter timer: it now serves as a read timer that is activated as soon
+as a
+.Xr read 2
+is done.
+A read is satisfied as soon as a single character is
+received or the read timer expires.
+Note that, in this case, if the timer
+expires, no character is returned.
+If the timer does not expire, the only way
+the read can be satisfied is if a character is received.
+In this case, the
+read will not block indefinitely waiting for a character; if no character is
+received within
+.Sy TIME
+*\&.10 seconds after the read is initiated, the read
+returns with zero characters.
+.It Sy Case D: MIN = 0, TIME = 0
+In this case, return is immediate.
+The minimum of either the number of
+characters requested or the number of characters currently available is
+returned without waiting for more characters to be input.
+.El
+.Ss "Comparing Different Cases of MIN, TIME Interaction"
+Some points to note about
+.Sy MIN
+and
+.Sy TIME :
+.Bl -bullet -offset 2n
+.It
+In the following explanations, note that the interactions of
+.Sy MIN
+and
+.Sy TIME
+are not symmetric.
+For example, when
+.Sy MIN
+> 0 and
+.Sy TIME
+= 0,
+.Sy TIME
+has no effect.
+However, in the opposite case, where
+.Sy MIN
+= 0 and
+.Sy TIME
+> 0, both
+.Sy MIN
+and
+.Sy TIME
+play a role in that
+.Sy MIN
+is satisfied with the receipt of a single character.
+.It
+Also note that in case A
+.Po
+.Sy MIN
+> 0,
+.Sy TIME
+> 0
+.Pc ,
+.Sy TIME
+represents
+an intercharacter timer, whereas in case C
+.Po
+.Sy MIN
+= 0,
+.Sy TIME
+> 0
+.Pc ,
+.Sy TIME
+represents a read timer.
+.El
+.Pp
+These two points highlight the dual purpose of the
+.Sy MIN/TIME
+feature.
+Cases A and B, where
+.Sy MIN
+> 0, exist to handle burst mode activity (for
+example, file transfer programs), where a program would like to process at
+least
+.Sy MIN
+characters at a time.
+In case A, the inteercharacter timer is
+activated by a user as a safety measure; in case B, the timer is turned off.
+.Pp
+Cases C and D exist to handle single character, timed transfers.
+These cases
+are readily adaptable to screen-based applications that need to know if a
+character is present in the input queue before refreshing the screen.
+In case
+C, the read is timed, whereas in case D, it is not.
+.Pp
+Another important note is that
+.Sy MIN
+is always just a minimum.
+It does not
+denote a record length.
+For example, if a program does a read of 20 bytes,
+.Sy MIN
+is 10, and 25 characters are present, then 20 characters will be
+returned to the user.
+.Ss "Writing Characters"
+When one or more characters are written, they are transmitted to the terminal
+as soon as previously written characters have finished typing.
+nputt characters
+are echoed as they are typed if echoing has been enabled.
+If a process produces
+characters more rapidly than they can be typed, it will be suspended when its
+output queue exceeds some limit.
+When the queue is drained down to some
+threshold, the program is resumed.
+.Ss "Special Characters"
+Certain characters have special functions on input.
+These functions and their default character values are summarized as follows:
+.Bl -tag -width REPRINT
+.It Sy INTR
+(Control-c or
+.Sy ASCII ETX )
+generates a
+.Dv SIGINT
+signal.
+.Dv SIGINT
+is sent to all foreground processes associated with the controlling terminal.
+Normally, each such process is forced to terminate, but arrangements may be
+made either to ignore the signal or to receive a trap to an agreed upon
+location.
+(See
+.Xr signal.h 3HEAD ) .
+.It Sy QUIT
+(Control-| or
+.Sy ASCII FS )
+generates a
+.Dv SIGQUIT
+signal.
+Its treatment
+is identical to the interrupt signal except that, unless a receiving process
+has made other arrangements, it will not only be terminated but a core image
+file (called
+.Pa core )
+will be created in the current working directory.
+.It Sy ERASE
+(DEL) erases the preceding character.
+It does not erase beyond
+the start of a line, as delimited by a
+.Sy NL ,
+.Sy EOF ,
+.Sy EOL ,
+or
+.Sy EOL2
+character.
+.It Sy ERASE2
+(Control-h or
+.Sy ASCII BS )
+erases the preceding character, with behaviour identical to that of ERASE.
+.It Sy WERASE
+(Control-w or
+.Sy ASCII ETX )
+erases the preceding
+.Dq word .
+It does not erase beyond the start of a line, as delimited by a
+.Sy NL ,
+.Sy EOF ,
+.Sy EOL ,
+or
+.Sy EOL2
+character.
+.It Sy KILL
+(Control-u or
+.Sy ASCII NAK )
+deletes the entire line, as delimited by a
+.Sy NL ,
+.Sy EOF ,
+.Sy EOL ,
+or
+.Sy EOL2
+character.
+.It Sy REPRINT
+(Control-r or
+.Sy ASCII DC2 )
+reprints all characters, preceded by a newline, that have not been read.
+.It Sy EOF
+(Control-d or
+.Sy ASCII EOT )
+may be used to generate an end-of-file from a terminal.
+When received, all the characters waiting to be read are immediately
+passed to the program, without waiting for a newline, and the
+.Sy EOF
+is discarded.
+Thus, if no characters are waiting (that is, the
+.Sy EOF
+occurred
+at the beginning of a line) zero characters are passed back, which is the
+standard end-of-file indication.
+Unless escaped, the
+.Sy EOF
+character is not
+echoed.
+Because
+.Sy EOT
+is the default
+.Sy EOF
+character, this prevents
+terminals that respond to
+.Sy EOT
+from hanging up.
+.It Sy NL
+.Pq Sy ASCII LF
+is the normal line delimiter.
+It cannot be changed or escaped.
+.It Sy EOL
+.Pq Sy ASCII NULL
+is an additional line delimiter, like
+.Sy NL .
+It is not normally used.
+.It Sy EOL2
+is another additional line delimiter.
+.It Sy SWTCH
+(Control-z or
+.Sy ASCII EM )
+Header file symbols related to this special
+character are present for compatibility purposes only and the kernel takes no
+special action on matching SWTCH (except to discard the character).
+.It Sy SUSP
+(Control-z or
+.Sy ASCII SUB )
+generates a
+.Dv SIGTSTP
+signal.
+.Dv SIGTSTP
+stops all processes in the foreground process group for that terminal.
+.It Sy DSUSP
+(Control-y or
+.Sy ASCII EM ) .
+It generates a
+.Dv SIGTSTP
+signal as
+.Sy SUSP
+does, but the signal is sent when a process in the foreground
+process group attempts to read the
+.Sy DSUSP
+character, rather than when it is typed.
+.It Sy STOP
+(Control-s or
+.Sy ASCII DC3 )
+can be used to suspend output temporarily.
+It is useful with
+.Sy CRT
+terminals to prevent output from disappearing before it can be read.
+While output is suspended,
+.Sy STOP
+characters are ignored and
+not read.
+.It Sy START
+(Control-q or
+.Sy ASCII DC1 )
+is used to resume output.
+Output has been suspended by a
+.Sy STOP
+character.
+While output is not suspended,
+.Sy START
+characters are ignored and not read.
+.It Sy DISCARD
+(Control-o or
+.Sy ASCII SI )
+causes subsequent output to be discarded.
+Output is discarded until another
+.Sy DISCARD
+character is typed, more input
+arrives, or the condition is cleared by a program.
+.It Sy STATUS
+(Control-t or
+.Sy ASCII DC4 )
+generates a
+.Dv SIGINFO
+signal.
+Processes with a handler will output status information when they receive
+.Dv SIGINFO ,
+for
+example,
+.Xr dd 8 .
+If a process does not have a
+.Dv SIGINFO
+handler, the
+signal will be ignored.
+.It Sy LNEXT
+(Control-v or
+.Sy ASCII SYN )
+causes the special meaning of the next character to be ignored.
+This works for all the special characters mentioned above.
+It
+allows characters to be input that would otherwise be interpreted by the system
+(for example
+.Sy KILL ,
+.Sy QUIT ) .
+The character values for
+.Sy INTR ,
+.Sy QUIT ,
+.Sy ERASE ,
+.Sy ERASE2 ,
+.Sy WERASE ,
+.Sy KILL ,
+.Sy REPRINT ,
+.Sy EOF ,
+.Sy EOL ,
+.Sy EOL2 ,
+.Sy SWTCH ,
+.Sy SUSP ,
+.Sy DSUSP ,
+.Sy STOP ,
+.Sy START ,
+.Sy DISCARD ,
+.Sy STATUS ,
+and
+.Sy LNEXT
+may be changed to suit individual tastes.
+If the value of a special control character
+is
+.Dv _POSIX_VDISABLE
+(0), the function of that special control character is disabled.
+The
+.Sy ERASE ,
+.Sy ERASE2 ,
+.Sy KILL ,
+and
+.Sy EOF
+characters may be
+escaped by a preceding backslash (\e) character, in which case no special
+function is done.
+Any of the special characters may be preceded by the
+.Sy LNEXT
+character, in
+which case no special function is done.
+.El
+.Ss "Modem Disconnect"
+When a modem disconnect is detected, a
+.Dv SIGHUP
+signal is sent to the
+terminal's controlling process.
+Unless other arrangements have been made, these
+signals cause the process to terminate.
+If
+.Dv SIGHUP
+is ignored or caught,
+any subsequent read returns with an end-of-file indication until the terminal
+is closed.
+.Pp
+If the controlling process is not in the foreground process group of the
+terminal, a
+.Dv SIGTSTP
+is sent to the terminal's foreground process group.
+Unless other arrangements have been made, these signals cause the processes to
+stop.
+.Pp
+Processes in background process groups that attempt to access the controlling
+terminal after modem disconnect while the terminal is still allocated to the
+session will receive appropriate
+.Dv SIGTTOU
+and
+.Dv SIGTTIN
+signals.
+Unless other arrangements have been made, this signal causes the processes to
+stop.
+.Pp
+The controlling terminal will remain in this state until it is reinitialized
+ithh a successful open by the controlling process, or deallocated by the
+controlling process.
+.Ss "Terminal Parameters"
+The parameters that control the behavior of devices and modules providing the
+.Vt termios
+interface are specified by the
+.Vt termios
+structure defined by
+.In termios.h .
+Several
+.Xr ioctl 2
+system calls that fetch or change
+these parameters use this structure that contains the following members:
+.Bd -literal -offset 2n
+tcflag_t c_iflag; /* input modes */
+tcflag_t c_oflag; /* output modes */
+tcflag_t c_cflag; /* control modes */
+tcflag_t c_lflag; /* local modes */
+cc_t c_cc[NCCS]; /* control chars */
+.Ed
+.Pp
+The special control characters are defined by the array
+.Fa c_cc .
+The symbolic name
+.Dv NCCS
+is the size of the Control-character array and is also
+defined by
+.In termios.h .
+The relative positions, subscript names, and
+typical default values for each function are as follows:
+.Bl -column "Relative Position" "Subscript Name" "Typical Default Value"
+.It Relative Position Ta Subscript Name Ta Typical Default Value
+.It 0 Ta Dv VINTR Ta Sy ETX
+.It 1 Ta Dv VQUIT Ta Sy FS
+.It 2 Ta Dv VERASE Ta Sy DEL
+.It 3 Ta Dv VKILL Ta Sy NAK
+.It 4 Ta Dv VEOF Ta Sy EOT
+.It 5 Ta Dv VEOL Ta Sy NUL
+.It 6 Ta Dv VEOL2 Ta Sy NUL
+.It 7 Ta Dv VWSTCH Ta Sy NUL
+.It 8 Ta Dv VSTART Ta Sy NUL
+.It 9 Ta Dv VSTOP Ta Sy DC3
+.It 10 Ta Dv VSUSP Ta Sy SUB
+.It 11 Ta Dv VDSUSP Ta Sy EM
+.It 12 Ta Dv VREPRINT Ta Sy DC2
+.It 13 Ta Dv VDISCARD Ta Sy SI
+.It 14 Ta Dv VWERASE Ta Sy ETB
+.It 15 Ta Dv VLNEXT Ta Sy SYN
+.It 16 Ta Dv VSTATUS Ta Sy DC4
+.It 17 Ta Dv VERASE2 Ta Sy BS
+.It 18-19 Ta Reserved Ta
+.El
+.Ss "Input Modes"
+The
+.Fa c_iflag
+field describes the basic terminal input control:
+.Pp
+.Bl -tag -width "IMAXBEL" -offset 2n -compact
+.It Dv IGNBRK
+Ignore break condition.
+.It Dv BRKINT
+Signal interrupt on break.
+.It Dv IGNPAR
+Ignore characters with parity errors.
+.It Dv PARMRK
+Mark parity errors.
+.It Dv INPCK
+Enable input parity check.
+.It Dv ISTRIP
+Strip character.
+.It Dv INLCR
+Map NL to CR on input.
+.It Dv IGNCR
+Ignore CR.
+.It Dv ICRNL
+Map CR to NL on input.
+.It Dv IUCLC
+Map upper-case to lower-case on input.
+.It Dv IXON
+Enable start/stop output control.
+.It Dv IXANY
+Enable any character to restart output.
+.It Dv IXOFF
+Enable start/stop input control.
+.It Dv IMAXBEL
+Echo
+.Sy BEL
+on input line too long.
+.El
+.Pp
+If
+.Dv IGNBRK
+is set, a break condition (a character framing error with data
+all zeros) detected on input is ignored, that is, not put on the input queue
+and therefore not read by any process.
+If
+.Dv IGNBRK
+is not set and
+.Dv BRKINT
+is set, the break condition shall flush the input and output
+queues and if the terminal is the controlling terminal of a foreground process
+group, the break condition generates a single
+.Dv SIGINT
+signal to that
+foreground process group.
+If neither
+.Dv IGNBRK
+nor
+.Dv BRKINT
+is set, a
+break condition is read as a single
+.Ql \e0
+.Pq Sy ASCII NULL
+character, or if
+.Dv PARMRK
+is set, as
+.Ql \e377 ,
+.Ql \e0 ,
+.Em c ,
+where
+.Ql \e377
+is a single character
+with value 377 octal (0xff hex, 255 decimal),
+.Ql \e0
+is a single character with value
+.Sy 0 ,
+and
+.Em c
+is the errored character received.
+.Pp
+If
+.Dv IGNPAR
+is set, a byte with framing or parity errors (other than
+break) is ignored.
+.Pp
+If
+.Dv PARMRK
+is set, and
+.Dv IGNPAR
+is not set, a byte with a framing or
+parity error (other than break) is given to the application as the
+three-character sequence:
+.Ql \e377 ,
+.Ql \e0 ,
+c, where
+.Ql \e377
+is a single character with value 377 octal (0xff hex, 255 decimal),
+.Ql \e0
+is a single character with value 0, and c is the errored character received.
+To avoid ambiguity in this case, if
+.Dv ISTRIP
+is not set, a valid character
+of
+.Ql \e377
+is given to the application as
+.Ql \e377 .
+If neither
+.Dv IGNPAR
+nor
+.Dv PARMRK
+is set, a framing or parity error (other than break) is given to
+the application as a single
+.Ql \e0
+.Po
+.Sy ASCII NULL
+.Pc
+character.
+.Pp
+If
+.Dv INPCK
+is set, input parity checking is enabled.
+If
+.Dv INPCK
+is not
+set, input parity checking is disabled.
+This allows output parity generation
+without input parity errors.
+Note that whether input parity checking is
+enabled or disabled is independent of whether parity detection is enabled or
+disabled.
+If parity detection is enabled but input parity checking is
+disabled, the hardware to which the terminal is connected will recognize the
+parity bit, but the terminal special file will not check whether this is set
+correctly or not.
+.Pp
+If
+.Dv ISTRIP
+is set, valid input characters are first stripped to seven
+bits, otherwise all eight bits are processed.
+.Pp
+If
+.Dv INLCR
+is set, a received
+.Sy NL
+character is translated into a
+.Sy CR
+character.
+If
+.Dv IGNCR
+is set, a received
+.Sy CR
+character is ignored (not read).
+Otherwise, if
+.Dv ICRNL
+is set, a received
+.Sy CR
+character is translated into a
+.Sy NL
+character.
+.Pp
+If
+.Dv IUCLC
+is set, a received upper case, alphabetic character is
+translated into the corresponding lower case character.
+.Pp
+If
+.Dv IXON
+is set, start/stop output control is enabled.
+A received
+.Sy STOP
+character suspends output and a received
+.Sy START
+character
+restarts output.
+The
+.Sy STOP
+and
+.Sy START
+characters will not be read,
+but will merely perform flow control functions.
+If
+.Dv IXANY
+is set, any
+input character restarts output that has been suspended.
+.Pp
+If
+.Dv IXOFF
+is set, the system transmits a
+.Sy STOP
+character when the
+input queue is nearly full, and a
+.Sy START
+character when enough input has
+been read so that the input queue is nearly empty again.
+.Pp
+If
+.Dv IMAXBEL
+is set, the
+.Sy ASCII BEL
+character is echoed if the input stream overflows.
+Further input is not stored, but any input already present in
+the input stream is not disturbed.
+If
+.Dv IMAXBEL
+is not set, no
+.Sy BEL
+character is echoed, and all input present in the input queue is discarded if
+the input stream overflows.
+.Ss "Output Modes"
+The
+.Fa c_oflag
+field specifies the system treatment of output:
+.Pp
+.Bl -tag -width ONLRET -offset 2n -compact
+.It Dv OPOST
+Post-process output.
+.It Dv OLCUC
+Map lower case to upper on output.
+.It Dv ONLCR
+Map NL to CR-NL on output.
+.It Dv OCRNL
+Map CR to NL on output.
+.It Dv ONOCR
+No
+.Sy CR
+output at column 0.
+.It Dv ONLRET
+.Sy NL
+performs
+.Sy CR
+function.
+.It Dv OFILL
+Use fill characters for delay.
+.It Dv OFDEL
+Fill is
+.Sy DEL ,
+else
+.Sy INULL .
+.It Dv NLDLY
+Select newline delays:
+.Bl -tag -width NL0 -compact -offset 2n
+.It Sy NL0
+.It Sy NL1
+.El
+.It Dv CRDLY
+Select carriage-return delays:
+.Bl -tag -width CR0 -compact -offset 2n
+.It Dv CR0
+.It Dv CR1
+.It Dv CR2
+.It Dv CR3
+.El
+.It Dv TABDLY
+Select horizontal tab delays or tab expansion:
+.Bl -tag -width XTABS -compact -offset 2n
+.It Dv TAB0
+.It Dv TAB1
+.It Dv TAB2
+.It Dv TAB3
+Expand tabs to spaces
+.It Dv XTABS
+Expand tabs to spaces
+.El
+.It Dv BSDLY
+Select backspace delays:
+.Bl -tag -width BS0 -offset 2n -compact
+.It Dv BS0
+.It Dv BS1
+.El
+.It Dv VTDLY
+Select vertical tab delays:
+.Bl -tag -width VT0 -offset 2n -compact
+.It Dv VT0
+.It Dv VT1
+.El
+.It Dv FFDLY
+Select form feed delays:
+.Bl -tag -width FF0 -offset 2n -compact
+.It Dv FF0
+.It Dv FF1
+.El
+.El
+.Pp
+If
+.Dv OPOST
+is set, output characters are post-processed as indicated by the
+remaining flags; otherwise, characters are transmitted without change.
+.Pp
+If
+.Dv OLCUC
+is set, a lower case alphabetic character is transmitted as the
+corresponding upper case character.
+This function is often used in conjunction
+with
+.Dv IUCLC .
+.Pp
+If
+.Dv ONLCR
+is set, the
+.Sy NL
+character is transmitted as the
+.Sy CR-NL
+character pair.
+If
+.Dv OCRNL
+is set, the
+.Sy CR
+character is transmitted as the
+.Sy NL
+character.
+If
+.Dv ONOCR
+is set, no
+.Sy CR
+character is transmitted when at column 0 (first position).
+If
+.Dv ONRET
+is set, the
+.Sy NL
+character is assumed to do the carriage-return function; the column
+pointer is set to 0 and the delays specified for
+.Sy CR
+are used.
+Otherwise, the
+.Sy NL
+character is assumed to do just the line-feed function; the column
+pointer remains unchanged.
+The column pointer is also set to 0 if the
+.Sy CR
+character is actually transmitted.
+.Pp
+The delay bits specify how long transmission stops to allow for mechanical or
+other movement when certain characters are sent to the terminal.
+In all cases, a value of 0 indicates no delay.
+If
+.Dv OFILL
+is set, fill characters are transmitted for delay instead of a timed delay.
+This is useful for high baud rate terminals that need only a minimal delay.
+If
+.Dv OFDEL
+is set, the
+fill character is
+.Sy DEL ;
+otherwise it is
+.Sy NULL .
+.Pp
+If a form-feed or vertical-tab delay is specified, it lasts for about 2
+seconds.
+.Pp
+Newline delay lasts about 0\&.10 seconds.
+If
+.Dv ONLRET
+is set, the carriage-return delays are used instead of the newline delays.
+If
+.Dv OFILL
+is set, two fill characters are transmitted.
+.Pp
+Carriage-return delay type 1 is dependent on the current column position, type
+2 is about 0\&.10 seconds, and type 3 is about 0\&.15 seconds.
+If
+.Dv OFILL
+is set, delay type 1 transmits two fill characters, and type 2 transmits four
+fill characters.
+.Pp
+Horizontal-tab delay type 1 is dependent on the current column position.
+Type 2 is about 0\&.10 seconds.
+Type 3 specifies that tabs are to be expanded into spaces.
+If
+.Dv OFILL
+is set, two fill characters are transmitted for any delay.
+.Pp
+Backspace delay lasts about 0\&.05 seconds.
+If
+.Dv OFILL
+is set, one fill character is transmitted.
+.Pp
+The actual delays depend on line speed and system load.
+.Ss "Control Modes"
+The
+.Fa c_cflag
+field describes the hardware control of the terminal:
+.Bl -tag -width CIBAUDEXT -offset 2n
+.It Dv CBAUD
+Baud rate:
+.Bl -tag -width B4000000 -compact
+.It Dv B0
+Hang up
+.It Dv B50
+50 baud
+.It Dv B75
+75 baud
+.It Dv B110
+110 baud
+.It Dv B134
+134 baud
+.It Dv B150
+150 baud
+.It Dv B200
+200 baud
+.It Dv B300
+300 baud
+.It Dv B600
+600 baud
+.It Dv B1200
+1200 baud
+.It Dv B1800
+1800 baud
+.It Dv B2400
+2400 baud
+.It Dv B4800
+4800 baud
+.It Dv B9600
+9600 baud
+.It Dv B19200
+19200 baud
+.It Dv B38400
+38400 baud
+.It Dv B57600
+57600 baud
+.It Dv B76800
+76800 baud
+.It Dv B115200
+115200 baud
+.It Dv B153600
+153600 baud
+.It Dv B230400
+230400 baud
+.It Dv B307200
+307200 baud
+.It Dv B460800
+460800 baud
+.It Dv B921600
+921600 baud
+.It Dv B1000000
+1000000 baud
+.It Dv B1152000
+1152000 baud
+.It Dv B1500000
+1500000 baud
+.It Dv B2000000
+2000000 baud
+.It Dv B2500000
+2500000 baud
+.It Dv B3000000
+3000000 baud
+.It Dv B3500000
+3500000 baud
+.It Dv B4000000
+4000000 baud
+.El
+.It Dv CSIZE
+Character size:
+.Bl -tag -width CIBAUDEXT -compact
+.It Dv CS5
+5 bits
+.It Dv CS6
+6 bits
+.It Dv CS7
+7 bits
+.It Dv CS8
+8 bits
+.It Dv CSTOPB
+Send two stop bits, else one
+.It Dv CREAD
+Enable receiver
+.It Dv PARENB
+Parity enable
+.It Dv PARODD
+Odd parity, else even
+.It Dv HUPCL
+Hang up on last close
+.It Dv CLOCAL
+Local line, else dial-up
+.It Dv CIBAUD
+Input baud rate, if different from output rate
+.It Dv PAREXT
+Extended parity for mark and space parity
+.It Dv CRTSXOFF
+Enable inbound hardware flow control
+.It Dv CRTSCTS
+Enable outbound hardware flow control
+.It Dv CBAUDEXT
+Bit to indicate output speed > B38400
+.It Dv CIBAUDEXT
+Bit to indicate input speed > B38400
+.El
+.El
+.Pp
+The
+.Dv CBAUD
+bits together with the
+.Dv CBAUDEXT
+bit specify the output baud rate.
+To retrieve the output speed from the
+.Vt termios
+structure pointed to by
+.Fa termios_p
+see the following code segment.
+.Bd -literal -offset 2n
+speed_t ospeed;
+if (termios_p->c_cflag & CBAUDEXT)
+ ospeed = (termios_p->c_cflag & CBAUD) + CBAUD + 1;
+else
+ ospeed = termios_p->c_cflag & CBAUD;
+.Ed
+.Pp
+To store the output speed in the termios structure pointed to by
+.Fa termios_p
+see the following code segment.
+.Bd -literal -offset 2n
+speed_t ospeed;
+if (ospeed > CBAUD) {
+ termios_p->c_cflag |= CBAUDEXT;
+ ospeed -= (CBAUD + 1);
+} else {
+ termios_p->c_cflag &= ~CBAUDEXT;
+}
+termios_p->c_cflag =
+ (termios_p->c_cflag & ~CBAUD) | (ospeed & CBAUD);
+.Ed
+.Pp
+The zero baud rate,
+.Dv B0 ,
+is used to hang up the connection.
+If
+.Dv B0
+is specified, the data-terminal-ready signal is not asserted.
+Normally, this disconnects the line.
+.Pp
+If the
+.Dv CIBAUDEXT
+or
+.Dv CIBAUD
+bits are not zero, they specify the input baud rate, with the
+.Dv CBAUDEXT
+and
+.Dv CBAUD
+bits specifying the output baud rate; otherwise, the output and input baud
+rates are both specified by the
+.Dv CBAUDEXT
+and
+.Dv CBAUD
+bits.
+The values for the
+.Dv CIBAUD
+bits are the same as the values for the
+.Dv CBAUD
+bits, shifted left
+.Dv IBSHIFT
+bits.
+For any particular hardware, impossible speed changes are
+ignored.
+To retrieve the input speed in the
+.Vt termios
+structure pointed to
+by
+.Fa termios_p
+see the following code segment.
+.Bd -literal -offset 2n
+speed_t ispeed;
+if (termios_p->c_cflag & CIBAUDEXT) {
+ ispeed = ((termios_p->c_cflag & CIBAUD) >> IBSHIFT)
+ + (CIBAUD >> IBSHIFT) + 1;
+} else {
+ ispeed = (termios_p->c_cflag & CIBAUD) >> IBSHIFT;
+}
+.Ed
+.Pp
+To store the input speed in the
+.Vt termios
+structure pointed to by
+.Fa termios_p
+see the following code segment.
+.Bd -literal -offset 2n
+speed_t ispeed;
+if (ispeed == 0) {
+ ispeed = termios_p->c_cflag & CBAUD;
+ if (termios_p->c_cflag & CBAUDEXT)
+ ispeed += (CBAUD + 1);
+}
+if ((ispeed << IBSHIFT) > CIBAUD) {
+ termios_p->c_cflag |= CIBAUDEXT;
+ ispeed -= ((CIBAUD >> IBSHIFT) + 1);
+} else {
+ termios_p->c_cflag &= ~CIBAUDEXT;
+}
+termios_p->c_cflag =
+ (termios_p->c_cflag & ~CIBAUD) | ((ispeed << IBSHIFT) & CIBAUD);
+.Ed
+.Pp
+The
+.Dv CSIZE
+bits specify the character size in bits for both transmission and reception.
+This size does not include the parity bit, if any.
+If
+.Dv CSTOPB
+is set, two stop bits are used; otherwise, one stop bit is used.
+For example, at 110 baud, two stops bits are required.
+.Pp
+If
+.Dv PARENB
+is set, parity generation and detection is enabled, and a
+parity bit is added to each character.
+If parity is enabled, the
+.Dv PARODD
+flag specifies odd parity if set; otherwise, even parity is used.
+.Pp
+If
+.Dv CREAD
+is set, the receiver is enabled.
+Otherwise, no characters are received.
+.Pp
+If
+.Dv HUPCL
+is set, the line is disconnected when the last process with the
+line open closes it or terminates.
+That is, the data-terminal-ready signal is not asserted.
+.Pp
+If
+.Dv CLOCAL
+is set, the line is assumed to be a local, direct connection
+with no modem control; otherwise, modem control is assumed.
+.Pp
+If
+.Dv CRTSXOFF
+is set, inbound hardware flow control is enabled.
+.Pp
+If
+.Dv CRTSCTS
+is set, outbound hardware flow control is enabled.
+.Pp
+The four possible combinations for the state of
+.Dv CRTSCTS
+and
+.Dv CRTSXOFF
+bits and their interactions are described below.
+.Bl -tag -width "Case C:"
+.It Sy Case A :
+.Dv CRTSCTS
+off,
+.Dv CRTSXOFF
+off.
+In this case the hardware flow control is disabled.
+.It Sy Case B :
+.Dv CRTSCTS
+on,
+.Dv CRTSXOFF
+off.
+In this case only outbound hardware flow control is enabled.
+The state of CTS signal is used to do outbound flow control.
+It is expected that output will be suspended if CTS is low and resumed
+when CTS is high.
+.It Sy Case C :
+.Dv CRTSCTS
+off,
+.Dv CRTSXOFF
+on.
+In this case only inbound hardware flow control is enabled.
+The state of RTS signal is used to do inbound flow control.
+It is expected that input will be suspended if RTS is low and resumed when RTS
+is high.
+.It Sy Case D :
+.Dv CRTSCTS
+on,
+.Dv CRTSXOFF
+on.
+In this case both inbound and outbound hardware flow control are enabled.
+Uses the state of CTS signal to do outbound
+flow control and RTS signal to do inbound flow control.
+.El
+.Ss "Local Modes"
+The
+.Fa c_lflag
+field of the argument structure is used by the line
+discipline to control terminal functions.
+The basic line discipline provides the following:
+.Pp
+.Bl -tag -offset 2n -width SIGTTOU -compact
+.It Dv ISIG
+Enable signals.
+.It Dv ICANON
+Canonical input (erase and kill processing).
+.It Dv XCASE
+Canonical upper/lower presentation.
+.It Dv ECHO
+Enable echo.
+.It Dv ECHOE
+Echo erase character as
+.Sy BS Ns - Ns Sy SP Ns - Ns Sy BS
+&.
+.It Dv ECHOK
+Echo
+.Sy NL
+after kill character.
+.It Dv ECHONL
+Echo
+.Sy NL .
+.It Dv NOFLSH
+Disable flush after interrupt or quit.
+.It Dv TOSTOP
+Send
+.It Dv SIGTTOU
+for background output.
+.It Dv ECHOCTL
+Echo control characters as
+.Em char ,
+delete as ^?.
+.It Dv ECHOPRT
+Echo erase character as character erased.
+.It Dv ECHOKE
+.Sy BS Ns - Ns Sy SP Ns - Ns Sy BS
+erase entire line on line kill.
+.It Dv FLUSHO
+Output is being flushed.
+.It Dv PENDIN
+Retype pending input at next read or input character.
+.It Dv IEXTEN
+Enable extended (implementation-defined) functions.
+.El
+.Pp
+If
+.Dv ISIG
+is set, each input character is checked against the special
+control characters
+.Sy INTR ,
+.Sy QUIT ,
+.Sy SWTCH ,
+.Sy SUSP ,
+.Sy STATUS ,
+and
+.Sy DSUSP .
+If an input character matches one of these control characters, the function
+associated with that character is performed.
+.Po
+Note: If
+.Sy SWTCH
+is set and the character matches, the character is simply discarded.
+No other action is taken.
+.Pc
+If
+.Dv ISIG
+is not set, no checking is done.
+Thus, these special
+input functions are possible only if
+.Dv ISIG
+is set.
+.Pp
+If
+.Dv ICANON
+is set, canonical processing is enabled.
+This enables the erase
+and kill edit functions, and the assembly of input characters into lines
+delimited by
+.Sy NL-c ,
+.Sy EOF ,
+.Sy EOL ,
+and
+.Sy EOL .
+If
+.Dv ICANON
+is not set, read requests are satisfied directly from the input queue.
+A read is not satisfied until at least
+.Sy MIN
+characters have been received or the timeout value
+.Sy TIME
+has expired between characters.
+This allows fast bursts of input to be read efficiently while still allowing
+single character input.
+The time value represents tenths of seconds.
+.Pp
+If
+.Dv XCASE
+is set and
+.Dv ICANON
+is set, an upper case letter is
+accepted on input if preceded by a backslash
+.Ql \e
+character, and is output preceded by a backslash
+.Ql \e
+character.
+In this mode, the
+following escape sequences are generated on output and accepted on input:
+.Bl -column "FOR:" "USE:" -offset 2n
+.It FOR: Ta USE:
+.It ` Ta \e'
+.It | Ta \e!
+.It \(ap Ta \e^
+.It { Ta \e(
+.It } Ta \e)
+.It \e Ta \e\e
+.El
+.Pp
+For example, input A as \ea, \en as \e\en, and \eN as \e\e\en.
+.Pp
+If
+.Dv ECHO
+is set, characters are echoed as received.
+.Pp
+When
+.Dv ICANON
+is set, the following echo functions are possible.
+.Bl -bullet -offset indent
+.It
+If
+.Dv ECHO
+and
+.Dv ECHOE
+are set, and
+.Dv ECHOPRT
+is not set, the
+.Sy ERASE ,
+.Sy ERASE2 ,
+and
+.Sy WERASE
+characters are echoed as one or
+more ASCII BS SP BS, which clears the last character(s) from a
+.Sy CRT
+screen.
+.It
+If
+.Dv ECHO ,
+.Dv ECHOPRT ,
+and
+.Dv IEXTEN
+are set, the first
+.Sy ERASE ,
+.Sy ERASE2 ,
+and
+.Sy WERASE
+character in a sequence echoes as a backslash
+.Ql \e ,
+followed by the characters being erased.
+Subsequent
+.Sy ERASE
+and
+.Sy WERASE
+characters echo the characters being erased, in reverse order.
+The
+next non-erase character causes a
+.Ql /
+(slash) to be typed before it is echoed.
+.Dv ECHOPRT
+should be used for hard copy terminals.
+.It
+If
+.Dv ECHOKE
+and
+.Dv IEXTEN
+are set, the kill character is echoed by
+erasing each character on the line from the screen (using the mechanism
+selected by
+.Dv ECHOE
+and
+.Dv ECHOPR ) .
+.It
+If
+.Dv ECHOK
+is set, and
+.Dv ECHOKE
+is not set, the
+.Sy NL
+character is
+echoed after the kill character to emphasize that the line is deleted.
+Note
+that a
+.Ql \e
+(escape) character or an
+.Sy LNEXT
+character preceding the erase
+or kill character removes any special function.
+.It
+If
+.Dv ECHONL
+is set, the
+.Sy NL
+character is echoed even if
+.Dv ECHO
+is not set.
+This is useful for terminals set to local echo (so called
+half-duplex).
+.El
+.Pp
+If
+.Dv ECHOCTL
+and
+.Dv IEXTEN
+are set, all control characters (characters
+with codes between 0 and 37 octal) other than
+.Sy ASCII TAB ,
+.Sy ASCII NL ,
+the
+.Sy START
+character, and the
+.Sy STOP
+character,
+.Sy ASCII CR ,
+and
+.Sy ASCII BS
+are echoed as
+.No ^ Ns Em X ,
+where
+.Em X
+is the character given by adding
+.Ql 100
+octal to the code of the control character (so
+that the character with octal code
+.Ql 1
+is echoed as
+.No ^ Ns Sy A ) ,
+and the
+.Sy ASCII DEL
+character,
+with code
+.Ql 177
+octal, is echoed as
+.No ^ Ns Sy \&? .
+.Pp
+If
+.Dv NOFLSH
+is set, the normal flush of the input and output queues
+associated with the
+.Sy INTR ,
+.Sy QUIT ,
+.Sy STATUS ,
+and
+.Sy SUSP
+characters is not done.
+This bit should be set when restarting system calls
+that read from or write to a terminal
+.Po
+see
+.Xr sigaction 2
+.Pc .
+.Pp
+If
+.Dv TOSTOP
+and
+.Dv IEXTEN
+are set, the signal
+.Dv SIGTTOU
+is sent to
+a process that tries to write to its controlling terminal if it is not in the
+foreground process group for that terminal.
+This signal normally stops the process.
+Otherwise, the output generated by that process is output to the
+current output stream.
+Processes that are blocking or ignoring
+.Dv SIGTTOU
+signals are excepted and allowed to produce output, if any.
+.Pp
+If
+.Dv FLUSHO
+and
+.Dv IEXTEN
+are set, data written to the terminal is
+discarded.
+This bit is set when the
+.Sy FLUSH
+character is typed.
+A program can cancel the effect of typing the
+.Sy FLUSH
+character by clearing
+.Dv FLUSHO .
+.Pp
+If
+.Dv PENDIN
+and
+.Dv IEXTEN
+are set, any input that has not yet been read
+is reprinted when the next character arrives as input.
+.Dv PENDIN
+is then
+automatically cleared.
+.Pp
+If
+.Dv IEXTEN
+is set, the following implementation-defined functions are
+enabled: special characters (
+.Sy WERASE ,
+.Sy REPRINT ,
+.Sy DISCARD ,
+and
+.Sy LNEXT )
+and local flags (
+.Dv TOSTOP ,
+.Dv ECHOCTL ,
+.Dv ECHOPRT ,
+.Dv ECHOKE ,
+.Dv FLUSHO ,
+and
+.Dv PENDIN ) .
+.Ss "Minimum and Timeout"
+The
+.Sy MIN
+and
+.Sy TIME
+values were described previously, in the
+subsection,
+.Sy Non-canonical Mode Input Processing .
+The initial value of
+.Sy MIN
+is 1, and the initial value of
+.Sy TIME
+is 0.
+.Ss "Terminal Size"
+The number of lines and columns on the terminal's display is specified in the
+.Vt winsize
+structure defined by
+.In sys/termios.h
+and includes the following members:
+.Bd -literal -offset 2n
+unsigned short ws_row; /* rows, in characters */
+unsigned short ws_col; /* columns, in characters */
+unsigned short ws_xpixel; /* horizontal size, in pixels */
+unsigned short ws_ypixel; /* vertical size, in pixels */
+.Ed
+.Ss "Termio Structure"
+The SunOS/SVR4
+.Vt termio
+structure is used by some
+.Fn ioctl Ns s ;
+it is defined by
+.In sys/termio.h
+and includes the following members:
+.Bd -literal -offset 2n
+unsigned short c_iflag; /* input modes */
+unsigned short c_oflag; /* output modes */
+unsigned short c_cflag; /* control modes */
+unsigned short c_lflag; /* local modes */
+char c_line; /* line discipline */
+unsigned char c_cc[NCC]; /* control chars */
+.Ed
+.Pp
+The special control characters are defined by the array
+.Fa c_cc .
+The symbolic name
+.Dv NCC
+is the size of the Control-character array and is also
+defined by
+.In termio.h .
+The relative positions, subscript names, and typical
+default values for each function are as follows:
+.Bl -column "Relative Positions" "Subscript Names" "Typical Default Values"
+.It Relative Positions Ta Subscript Names Ta Typical Default Values
+.It 0 Ta VINTR Ta EXT
+.It 1 Ta VQUIT Ta FS
+.It 2 Ta VERASE Ta DEL
+.It 3 Ta VKILL Ta NAK
+.It 4 Ta VEOF Ta EOT
+.It 5 Ta VEOL Ta NUL
+.It 6 Ta VEOL2 Ta NUL
+.It 7 Ta Reserved Ta
+.El
+.Pp
+The
+.Sy MIN
+values is stored in the
+.Dv VMIN
+element of the
+.Fa c_cc
+array; the
+.Sy TIME
+value is stored in the
+.Dv VTIME
+element of the
+.Fa c_cc
+array.
+The
+.Dv VMIN
+element is the same element as the
+.Dv VEOF
+element; the
+.Dv VTIME
+element is the same element as the
+.Dv VEOL
+element.
+.Pp
+The calls that use the
+.Va termio
+structure only affect the flags and control
+characters that can be stored in the
+.Vt termio
+structure; all other flags and control characters are unaffected.
+.Ss "Modem Lines"
+On special files representing serial ports, modem control lines can be read.
+Control lines (if the underlying hardware supports it) may also be changed.
+Status lines are read-only.
+The following modem control and status lines may be
+supported by a device; they are defined by
+.In sys/termios.h :
+.Pp
+.Bl -tag -width "TIOCM_DTR" -compact -offset 2n
+.It Dv TIOCM_LE
+line enable
+.It Dv TIOCM_DTR
+data terminal ready
+.It Dv TIOCM_RTS
+request to send
+.It Dv TIOCM_ST
+secondary transmit
+.It Dv TIOCM_SR
+secondary receive
+.It Dv TIOCM_CTS
+clear to send
+.It Dv TIOCM_CAR
+carrier detect
+.It Dv TIOCM_RNG
+ring
+.It Dv TIOCM_DSR
+data set ready
+.El
+.Pp
+.Dv TIOCM_CD
+is a synonym for
+.Dv TIOCM_CAR ,
+and
+.Dv TIOCM_RI
+is a synonym for
+.Dv TIOCM_RNG .
+Not all of these are necessarily supported by any
+particular device; check the manual page for the device in question.
+.Pp
+The software carrier mode can be enabled or disabled using the
+.Dv TIOCSSOFTCAR
+.Fn ioctl .
+If the software carrier flag for a line is off,
+the line pays attention to the hardware carrier detect (DCD) signal.
+The
+.Sy tty
+device associated with the line cannot be opened until
+.Sy DCD
+is asserted.
+If the software carrier flag is on, the line behaves as if
+.Sy DCD
+is always asserted.
+.Pp
+The software carrier flag is usually turned on for locally connected terminals
+or other devices, and is off for lines with modems.
+.Pp
+To be able to issue the
+.Dv TIOCGSOFTCAR
+and
+.Dv TIOCSSOFTCAR
+.Fn ioctl
+calls, the
+.Sy tty
+line should be opened with
+.Dv O_NDELAY
+so that the
+.Xr open 2
+will not wait for the carrier.
+.Ss "Default Values"
+The initial
+.Vt termios
+values upon driver open is configurable.
+This is accomplished by setting the "ttymodes" property in the file
+.Pa /kernel/drv/options.conf .
+Since this property is assigned during system
+initialization, any change to the "ttymodes" property will not take effect
+until the next reboot.
+The string value assigned to this property should be in
+the same format as the output of the
+.Xr stty 1
+command with the -g option.
+.Pp
+If this property is undefined, the following
+.Vt termios
+modes are in effect.
+The initial input control value is
+.Dv BRKINT ,
+.Dv ICRNL ,
+.Dv IXON ,
+.Dv IMAXBEL .
+The initial output control value is
+.Dv OPOST ,
+.Dv ONLCR ,
+.Dv TAB3 .
+The initial hardware control value is
+.Dv B9600 ,
+.Dv CS8 ,
+.Dv CREAD .
+The initial line-discipline control value is
+.Dv ISIG ,
+.Dv ICANON ,
+.Dv IEXTEN ,
+.Dv ECHO ,
+.Dv ECHOK ,
+.Dv ECHOE ,
+.Dv ECHOKE ,
+.Dv ECHOCTL .
+.Sh IOCTLS
+The
+.Fn ioctl Ns s
+supported by devices and
+.Sy STREAMS
+modules providing the
+.Xr termios 3C
+interface are listed below.
+Some calls may not be supported by all devices or modules.
+The functionality provided by these calls is also
+available through the preferred function call interface specified on
+.Nm termios .
+.Bl -tag -width TIOCSSOFTCAR
+.It Dv TCGETS
+The argument is a pointer to a
+.Vt termios
+structure.
+The current terminal parameters are fetched and stored into that structure.
+.It Dv TCSETS
+The argument is a pointer to a
+.Vt termios
+structure.
+The current terminal parameters are set from the values stored in that structure.
+The change is immediate.
+.It Dv TCSETSW
+The argument is a pointer to a
+.Vt termios
+structure.
+The current terminal parameters are set from the values stored in that structure.
+The change occurs after all characters queued for output have been transmitted.
+This form should be used when changing parameters that affect output.
+.It Dv TCSETSF
+The argument is a pointer to a
+.Vt termios
+structure.
+The current terminal parameters are set from the values stored in that structure.
+The change occurs after all characters queued for output have been transmitted;
+all characters queued for input are discarded and then the change occurs.
+.It Dv TCGETA
+The argument is a pointer to a
+.Vt termio
+structure.
+The current terminal parameters are fetched, and those parameters that can be
+stored in a
+.Vt termio
+structure are stored into that structure.
+.It Dv TCSETA
+The argument is a pointer to a
+.Vt termio
+structure.
+Those terminal parameters that can be stored in a
+.Vt termio
+structure are set from the values stored in that structure.
+The change is immediate.
+.It Dv TCSETAW
+The argument is a pointer to a
+.Vt termio
+structure.
+Those terminal parameters that can be stored in a
+.Vt termio
+structure are set from
+the values stored in that structure.
+The change occurs after all characters queued for output have been transmitted.
+This form should be used when changing parameters that affect output.
+.It Dv TCSETAF
+The argument is a pointer to a
+.Vt termio
+structure.
+Those terminal parameters that can be stored in a
+.Vt termio
+structure are set from the values stored in that structure.
+The change occurs after all characters queued
+for output have been transmitted; all characters queued for input are discarded
+and then the change occurs.
+.It Dv TCSBRK
+The argument is an
+.Vt int
+value.
+Wait for the output to drain.
+If the argument is
+.Sy 0 ,
+then send a break (zero valued bits for 0\&.25 seconds).
+.It Dv TCXONC
+Start/stop control.
+The argument is an
+.Vt int
+value.
+If the argument is
+.Sy 0 ,
+suspend output; if
+.Sy 1 ,
+restart suspended output; if
+.Sy 2 ,
+suspend input; if
+.Sy 3 ,
+restart suspended input.
+.It Dv TCFLSH
+The argument is an
+.Vt int
+value.
+If the argument is
+.Sy 0 ,
+flush the input queue; if
+.Sy 1 ,
+flush the output queue; if
+.Sy 2 ,
+flush both the input and output queues.
+.It Dv TIOCGPGRP
+The argument is a pointer to a
+.Vt pid_t .
+Set the value of that
+.Vt pid_t
+to the process group
+.Sy ID
+of the foreground process group associated with the terminal.
+See
+.Xr termios 3C
+for a description of
+.Dv TCGETPGRP .
+.It Dv TIOCSPGRP
+The argument is a pointer to a
+.Vt pid_t .
+Associate the process group whose
+process group
+.Sy ID
+is specified by the value of that
+.Vt pid_t
+with the terminal.
+The new process group value must be in the range of valid process
+group
+.Sy ID
+values.
+Otherwise, the error
+.Er EPERM
+is returned.
+.It Dv TIOCGSID
+The argument is a pointer to a
+.Vt pid_t .
+The session ID of the terminal is fetched and stored in the
+.Vt pid_t .
+.It Dv TIOCGWINSZ
+The argument is a pointer to a
+.Vt winsize
+structure.
+The terminal driver's
+notion of the terminal size is stored into that structure.
+.It Dv TIOCSWINSZ
+The argument is a pointer to a
+.Vt winsize
+structure.
+The terminal driver's
+notion of the terminal size is set from the values specified in that structure.
+If the new sizes are different from the old sizes, a
+.Dv SIGWINCH
+signal is set to the process group of the terminal.
+.It Dv TIOCMBIS
+The argument is a pointer to an
+.Vt int
+whose value is a mask containing modem control lines to be turned on.
+The control lines whose bits are set in
+the argument are turned on; no other control lines are affected.
+.It Dv TIOCMBIC
+The argument is a pointer to an
+.Vt int
+whose value is a mask containing modem control lines to be turned off.
+The control lines whose bits are set in
+the argument are turned off; no other control lines are affected.
+.It Dv TIOCMGET
+The argument is a pointer to an
+.Vt int .
+The current state of the modem
+status lines is fetched and stored in the
+.Vt int
+pointed to by the argument.
+.It Dv TIOCMSET
+The argument is a pointer to an
+.Vt int
+containing a new set of modem control lines.
+The modem control lines are turned on or off, depending on
+whether the bit for that mode is set or clear.
+.It Dv TIOCSPPS
+The argument is a pointer to an
+.Vt int
+that determines whether pulse-per-second event handling is to be enabled
+(non-zero) or disabled (zero).
+If a one-pulse-per-second reference clock is attached to the serial line's data
+carrier detect input, the local system clock will be calibrated to it.
+A clock with a high error, that is, a deviation of more than 25 microseconds
+per tick, is ignored.
+.It Dv TIOCGPPS
+The argument is a pointer to an
+.Vt int ,
+in which the state of the even handling is returned.
+The
+.Vt int
+is set to a non-zero value if pulse-per-second (PPS) handling has been enabled.
+Otherwise, it is set to zero.
+.It Dv TIOCGSOFTCAR
+The argument is a pointer to an
+.Vt int
+whose value is
+.Sy 1
+or
+.Sy 0 ,
+depending on whether the software carrier detect is turned on or off.
+.It Dv TIOCSSOFTCAR
+The argument is a pointer to an
+.Vt int
+whose value is
+.Sy 1
+or
+.Sy 0 .
+The value of the integer should be
+.Sy 0
+to turn off software carrier, or
+.Sy 1
+to turn it on.
+.It Dv TIOCGPPSEV
+The argument is a pointer to a
+.Vt "struct ppsclockev" .
+This structure contains the following members:
+.Bd -literal -offset 2n
+struct timeval tv;
+uint32_t serial;
+.Ed
+.Pp
+.Fa tv
+is the system clock timestamp when the event (pulse on the
+.Sy DCD
+pin) occurred.
+.Fa serial
+is the ordinal of the event, which each consecutive event
+being assigned the next ordinal.
+The first event registered gets a
+.Fa serial
+value of
+.Sy 1 .
+The
+.Dv TIOCGPPSEV
+returns the last event registered; multiple calls will persistently return the
+same event until a new one is registered.
+In addition to time stamping and saving the event, if it is of
+one-second period and of consistently high accuracy, the local system clock
+will automatically calibrate to it.
+.El
+.Sh FILES
+Files in or under
+.Pa /dev
+.Sh SEE ALSO
+.Xr stty 1 ,
+.Xr fork 2 ,
+.Xr getpgid 2 ,
+.Xr getsid 2 ,
+.Xr ioctl 2 ,
+.Xr setsid 2 ,
+.Xr sigaction 2 ,
+.Xr signal 3C ,
+.Xr tcsetpgrp 3C ,
+.Xr termios 3C ,
+.Xr signal.h 3HEAD ,
+.Xr streamio 4I
diff --git a/usr/src/man/man4i/termiox.4i b/usr/src/man/man4i/termiox.4i
new file mode 100644
index 0000000000..b25ba1940b
--- /dev/null
+++ b/usr/src/man/man4i/termiox.4i
@@ -0,0 +1,413 @@
+.\" Copyright 1989 AT&T
+.\" Copyright (C) 1999, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright (c) 2017, Joyent, Inc.
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.Dd October 29, 2017
+.Dt TERMIOX 4I
+.Os
+.Sh NAME
+.Nm termiox
+.Nd extended general terminal interface
+.Sh DESCRIPTION
+The extended general terminal interface supplements the
+.Xr termio 4I
+general terminal interface by adding support for asynchronous hardware flow
+control, isochronous flow control and clock modes, and local implementations of
+additional asynchronous features.
+Some systems may not support all of these
+capabilities because of either hardware or software limitations.
+Other systems may not permit certain functions to be disabled.
+In these cases the appropriate bits will be ignored.
+See
+.In sys/termiox.h
+for your system to find out which capabilities are supported.
+.Ss "Hardware Flow Control Modes"
+Hardware flow control supplements the
+.Xr termio 4I
+.Dv IXON ,
+.Dv IXOFF ,
+and
+.Dv IXANY
+character flow control.
+Character flow control occurs when one
+device controls the data transfer of another device by the insertion of control
+characters in the data stream between devices.
+Hardware flow control occurs
+when one device controls the data transfer of another device using electrical
+control signals on wires (circuits) of the asynchronous interface.
+Isochronous
+hardware flow control occurs when one device controls the data transfer of
+another device by asserting or removing the transmit clock signals of that
+device.
+Character flow control and hardware flow control may be simultaneously
+set.
+.Pp
+In asynchronous, full duplex applications, the use of the Electronic Industries
+Association's EIA-232-D Request To Send (RTS) and Clear To Send (CTS) circuits
+is the preferred method of hardware flow control.
+An interface to other
+hardware flow control methods is included to provide a standard interface to
+these existing methods.
+.Pp
+The EIA-232-D standard specified only unidirectional hardware flow control \(em
+the Data Circuit-terminating Equipment or Data Communications Equipment (DCE)
+indicates to the Data Terminal Equipment (DTE) to stop transmitting data.
+The
+.Nm
+interface allows both unidirectional and bidirectional hardware
+flow control; when bidirectional flow control is enabled, either the DCE or DTE
+can indicate to each other to stop transmitting data across the interface.
+Note: It is assumed that the asynchronous port is configured as a DTE.
+If the
+connected device is also a DTE and not a DCE, then DTE to DTE (for example,
+terminal or printer connected to computer) hardware flow control is possible by
+using a null modem to interconnect the appropriate data and control circuits.
+.Ss "Clock Modes"
+Isochronous communication is a variation of asynchronous communication whereby
+two communicating devices may provide transmit and/or receive clock signals to
+one another.
+Incoming clock signals can be taken from the baud rate generator
+on the local isochronous port controller, from CCITT V\.24 circuit 114,
+Transmitter Signal Element Timing - DCE source (EIA-232-D pin 15), or from
+CITT V\.24 circuit 115, Receiver Signal Element Timing - DCE source (EIA-232-D
+pin 17).
+Outgoing clock signals can be sent on CCITT V\.24 circuit 113,
+Transmitter Signal Element Timing - DTE source (EIA-232-D pin 24), on CCITT
+V\.24 circuit 128, Receiver Signal Element Timing - DTE source (no EIA-232-D
+pin), or not sent at all.
+.Pp
+In terms of clock modes, traditional asynchronous communication is implemented
+simply by using the local baud rate generator as the incoming transmit and
+receive clock source and not outputting any clock signals.
+.Ss "Terminal Parameters"
+The parameters that control the behavior of devices providing the
+.Nm
+interface are specified by the
+.Vt termiox
+structure defined in the
+.In sys/termiox.h
+header.
+Several
+.Xr ioctl 2
+system calls that fetch
+or change these parameters use this structure:
+.Bd -literal -offset 2n
+#define NFF 5
+struct termiox {
+ unsigned short x_hflag; /* hardware flow control modes */
+ unsigned short x_cflag; /* clock modes */
+ unsigned short x_rflag[NFF]; /* reserved modes */
+ unsigned short x_sflag; /* spare local modes */
+};
+.Ed
+.Pp
+The
+.Fa x_hflag
+field describes hardware flow control modes:
+.Bl -column xxxxxxx xxxxxxx x
+.It Dv RTSXOFF Ta 0000001 Ta "Enable RTS hardware flow control on input."
+.It Dv CTSXON Ta 0000002 Ta "Enable CTS hardware flow control on output."
+.It Dv DTRXOFF Ta 0000004 Ta "Enable DTR hardware flow control on input."
+.It Dv CDXON Ta 0000010 Ta "Enable CD hardware flow control on output."
+.It Dv ISXOFF Ta 0000020 Ta "Enable isochronous hardware flow control on input."
+.El
+.Pp
+The EIA-232-D DTR and CD circuits are used to establish a connection between
+two systems.
+The RTS circuit is also used to establish a connection with a modem.
+Thus, both DTR and RTS are activated when an asynchronous port is opened.
+If DTR is used for hardware flow control, then RTS must be used for
+connectivity.
+If CD is used for hardware flow control, then CTS must be used
+for connectivity.
+Thus, RTS and DTR (or CTS and CD) cannot both be used for
+hardware flow control at the same time.
+Other mutual exclusions may apply, such as the simultaneous setting of the
+.Xr termio 4I
+.Dv HUPCL
+and the
+.Vt termiox
+.Dv DTRXOFF
+bits, which use the DTE ready line for different functions.
+.Pp
+Variations of different hardware flow control methods may be selected by
+setting the appropriate bits.
+For example, bidirectional RTS/CTS flow control is selected by setting both the
+.Dv RTSXOFF
+and
+.Dv CTSXON
+bits and bidirectional DTR/CTS flow control is selected by setting both the
+.Dv DTRXOFF
+and
+.Dv CTSXON .
+Modem control or unidirectional CTS hardware
+flow control is selected by setting only the
+.Dv CTSXON
+bit.
+.Pp
+As previously mentioned, it is assumed that the local asynchronous port (for
+example, computer) is configured as a DTE.
+If the connected device (for example, printer) is also a DTE, it is assumed
+that the device is connected to the computer's asynchronous port using a null
+modem that swaps control circuits (typically RTS and CTS).
+The connected DTE drives RTS and the null modem swaps
+RTS and CTS so that the remote RTS is received as CTS by the local DTE.
+In the case that
+.Dv CTSXON
+is set for hardware flow control, printer's lowering
+of its RTS would cause CTS seen by the computer to be lowered.
+Output to the printer is suspended until the printer's raising of its RTS,
+which would cause CTS seen by the computer to be raised.
+.Pp
+If
+.Dv RTSXOFF
+is set, the Request To Send (RTS) circuit (line) will be
+raised, and if the asynchronous port needs to have its input stopped, it will
+lower the Request To Send (RTS) line.
+If the RTS line is lowered, it is assumed
+that the connected device will stop its output until RTS is raised.
+.Pp
+If
+.Dv CTSXON
+is set, output will occur only if the Clear To Send (CTS)
+circuit (line) is raised by the connected device.
+If the CTS line is lowered by
+the connected device, output is suspended until CTS is raised.
+.Pp
+If
+.Dv DTRXOFF
+is set, the DTE Ready (DTR) circuit (line) will be raised, and
+if the asynchronous port needs to have its input stopped, it will lower the DTE
+Ready (DTR) line.
+If the DTR line is lowered, it is assumed that the connected
+device will stop its output until DTR is raised.
+.Pp
+If
+.Dv CDXON
+is set, output will occur only if the Received Line Signal
+Detector (CD) circuit (line) is raised by the connected device.
+If the CD line
+is lowered by the connected device, output is suspended until CD is raised.
+.Pp
+If
+.Dv ISXOFF
+is set, and if the isochronous port needs to have its input
+stopped, it will stop the outgoing clock signal.
+It is assumed that the
+connected device is using this clock signal to create its output.
+Transit and receive clock sources are programmed using the
+.Fa x_cflag
+fields.
+If the port is not programmed for external clock generation,
+.Dv ISXOFF
+is ignored.
+Output isochronous flow control is supported by appropriate clock source
+programming using the
+.Fa x_cflag
+field and enabled at the remote connected device.
+.Pp
+The
+.Fa x_cflag
+field specifies the system treatment of clock modes.
+.Bl -column xxxxxxxxx xxxxxxxx l
+.It Dv XMTCLK Ta 0000007 Ta "Transmit clock source:"
+.It Dv XCIBRG Ta 0000000 Ta "Get transmit clock from internal baud rate generator."
+.It Dv XCTSET Ta 0000001 Ta "Get transmit clock from transmitter signal element timing (DCE source) lead, CCITT V\.24 circuit 114, EIA-232-D pin 15."
+.It Dv XCRSET Ta 0000002 Ta Get transmit clock from receiver signal element timing (DCE source) lead, CCITT V\.4 circuit 115, EIA-232-D pin 17."
+.It Dv RCVCLK Ta 0000070 Ta "Receive clock source:"
+.It Dv RCIBRG Ta 0000000 Ta "Get receive clock from internal baud rate generator."
+.It Dv RCTSET Ta 0000010 Ta "Get receive clock from transmitter signal element timing (DCE source) lead, CCITT V\.24 circuit 114, EIA-232-D pin 15."
+.It Dv RCRSET Ta 0000020 Ta "Get receive clock from receiver signal element timing (DCE source) lead, CCITT V\.24 circuit 115, EIA-232-D pin 17."
+.It Dv TSETCLK Ta 0000700 Ta "Transmitter signal element timing (DTE source) lead, CCITT V\.24 circuit 113, EIA-232-D pin 24, clock source:"
+.It Dv TSETCOFF Ta 0000000 Ta "TSET clock not provided."
+.It Dv TSETCRBRG Ta 0000100 Ta "Output receive baud rate generator on circuit 113."
+.It Dv TSETCTBRG Ta 0000200 Ta "Output transmit baud rate generator on circuit 113"
+.It Dv TSETCTSET Ta 0000300 Ta "Output transmitter signal element timing (DCE source) on circuit 113."
+.It Dv TSETCRSET Ta 0000400 Ta "Output receiver signal element timing (DCE source) on circuit 113."
+.It Dv RSETCLK Ta 0007000 Ta "Receiver signal element timing (DTE source) lead, CCITT V\.24 circuit 128, no EIA-232-D pin, clock source:"
+.It Dv RSETCOFF Ta 0000000 Ta "RSET clock not provided."
+.It Dv RSETCRBRG Ta 0001000 Ta "Output receive baud rate generator on circuit 128."
+.It Dv RSETCTBRG Ta 0002000 Ta "Output transmit baud rate generator on circuit 128."
+.It Dv RSETCTSET Ta 0003000 Ta "Output transmitter signal element timing (DCE source) on circuit 128."
+.It Dv RSETCRSET Ta 0004000 Ta "Output receiver signal element timing (DCE) on circuit 128."
+.El
+.Pp
+If the
+.Fa XMTCLK
+field has a value of
+.Dv XCIBRG
+the transmit clock is taken from the hardware internal baud rate generator, as
+in normal asynchronous transmission.
+If
+.Fa XMTCLK
+=
+.Dv XCTSET
+the transmit clock is taken from
+the Transmitter Signal Element Timing (DCE source) circuit.
+If
+.Fa XMTCLK
+=
+.Dv XCRSET
+the transmit clock is taken from the Receiver Signal Element
+Timing (DCE source) circuit.
+.Pp
+If the
+.Fa RCVCLK
+field has a value of
+.Dv RCIBRG ,
+the receive clock is
+taken from the hardware Internal Baud Rate Generator, as in normal asynchronous
+transmission.
+If
+.Fa RCVCLK
+=
+.Dv RCTSET
+the receive clock is taken from
+the Transmitter Signal Element Timing (DCE source) circuit.
+If
+.Fa RCVCLK
+=
+.Dv RCRSET
+the receive clock is taken from the Receiver Signal Element Timing
+(DCE source) circuit.
+.Pp
+If the
+.Fa TSETCLK
+field has a value of
+.Dv TSETCOFF
+the Transmitter Signal Element Timing (DTE source) circuit is not driven.
+If
+.Fa TSETCLK
+=
+.Dv TSETCRBRG
+the Transmitter Signal Element Timing (DTE source) circuit is
+driven by the Receive Baud Rate Generator.
+If
+.Fa TSETCLK
+=
+.Dv TSETCTBRG
+the Transmitter Signal Element Timing (DTE source) circuit is driven by the
+Transmit Baud Rate Generator.
+If
+.Fa TSETCLK
+=
+.Dv TSETCTSET
+the Transmitter Signal Element Timing (DTE source) circuit is driven by the
+Transmitter Signal Element Timing (DCE source).
+If
+.Fa TSETCLK
+=
+.Dv TSETCRBRG
+the Transmitter Signal Element Timing (DTE source) circuit is
+driven by the Receiver Signal Element Timing (DCE source).
+.Pp
+If the
+.Fa RSETCLK
+field has a value of
+.Dv RSETCOFF
+the Receiver Signal Element Timing (DTE source) circuit is not driven.
+If
+.Fa RSETCLK
+=
+.Dv RSETCRBRG
+the Receiver Signal Element Timing (DTE source) circuit is
+driven by the Receive Baud Rate Generator.
+If
+.Fa RSETCLK
+=
+.Dv RSETCTBRG
+the Receiver Signal Element Timing (DTE source) circuit is driven by the
+Transmit Baud Rate Generator.
+If
+.Fa RSETCLK
+=
+.Dv RSETCTSET
+the Receiver
+Signal Element Timing (DTE source) circuit is driven by the Transmitter Signal
+Element Timing (DCE source).
+If
+.Fa RSETCLK
+=
+.Dv RSETCRBRG
+the Receiver
+Signal Element Timing (DTE source) circuit is driven by the Receiver Signal
+Element Timing (DCE source).
+.Pp
+The
+.Fa x_rflag
+is reserved for future interface definitions and should not
+be used by any implementations.
+The
+.Fa x_sflag
+may be used by local
+implementations wishing to customize their terminal interface using the
+.Nm
+ioctl system calls.
+.Sh IOCTLS
+The
+.Xr ioctl 2
+system calls have the form:
+.Bd -literal -offset 2n
+struct termiox *arg;
+ioctl(fildes, command, arg);
+.Ed
+.Pp
+The commands using this form are:
+.Bl -tag -width TCSETXW
+.It Dv TCGETX
+The argument is a pointer to a
+.Vt termiox
+structure.
+The current terminal parameters are fetched and stored into that structure.
+.It Dv TCSETX
+The argument is a pointer to a
+.Vt termiox
+structure.
+The current terminal parameters are set from the values stored in that structure.
+The change is immediate.
+.It Dv TCSETXW
+The argument is a pointer to a
+.Vt termiox
+structure.
+The current terminal parameters are set from the values stored in that structure.
+The change occurs after all characters queued for output have been transmitted.
+This form should be used when changing parameters that will affect output.
+.It Dv TCSETXF
+The argument is a pointer to a
+.Vt termiox
+structure.
+The current terminal parameters are set from the values stored in that structure.
+The change occurs
+after all characters queued for output have been transmitted; all characters
+queued for input are discarded and then the change occurs.
+.El
+.Sh FILES
+.Pa /dev/*
+.Sh SEE ALSO
+.Xr stty 1 ,
+.Xr ioctl 2 ,
+.Xr termio 4I
+.Sh NOTES
+The
+.Nm termiox Ns Pq 4I
+system call is provided for compatibility with previous
+releases and its use is discouraged.
+Instead, the
+.Xr termio 4I
+system call is recommended.
+See
+.Xr termio 4I
+for usage information.
diff --git a/usr/src/man/man4i/uscsi.4i b/usr/src/man/man4i/uscsi.4i
new file mode 100644
index 0000000000..bd8b384c9b
--- /dev/null
+++ b/usr/src/man/man4i/uscsi.4i
@@ -0,0 +1,395 @@
+.\" Copyright (c) 2007 by Sun Microsystems, Inc. All rights reserved.
+.\" Copyright 2017 Joyent, Inc.
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.Dd October 23, 2017
+.Dt USCSI 4I
+.Os
+.Sh NAME
+.Nm uscsi
+.Nd user SCSI command interface
+.Sh SYNOPSIS
+.In sys/scsi/impl/uscsi.h
+.Fo ioctl
+.Fa "int filedes"
+.Fa "int request"
+.Fa "struct uscsi_cmd *cmd"
+.Fc
+.Sh DESCRIPTION
+The
+.Nm
+command is very powerful and somewhat dangerous; therefore it
+has some permission restrictions.
+See
+.Sx WARNINGS
+for more details.
+.Pp
+Drivers supporting this
+.Xr ioctl 2
+provide a general interface allowing user-level applications to cause individual
+.Sy SCSI
+commands to be directed to a particular
+.Sy SCSI
+or
+.Sy ATAPI
+device under control of that driver.
+The
+.Nm
+command is supported by the
+.Xr sd 4D
+driver for
+.Sy SCSI
+disks and
+.Sy ATAPI
+CD-ROM drives, and by the
+.Xr st 4D
+driver for
+.Sy SCSI
+tape drives.
+.Nm
+may also be supported by other device drivers; see the
+specific device driver manual page for complete information.
+.Pp
+Applications must not assume that all Solaris disk device drivers support the
+.Nm
+ioctl command.
+The
+.Sy SCSI
+command may include a data transfer
+to or from that device, if appropriate for that command.
+Upon completion of the command, the user application can determine how many
+bytes were transferred and the status returned by the device.
+Also, optionally, if the command returns a
+Check Condition status, the driver will automatically issue a Request Sense
+command and return the sense data along with the original status.
+See the
+.Sy USCSI_RQENABLE
+flag below for this Request Sense processing.
+The
+.Vt uscsi_cmd
+structure is defined in
+.In sys/scsi/impl/uscsi.h
+and includes the following members:
+.Bd -literal -offset 2n
+int uscsi_flags; /* read, write, etc. see below */
+short uscsi_status; /* resulting status */
+short uscsi_timeout; /* Command Timeout */
+caddr_t uscsi_cdb /* CDB to send to target */
+caddr_t uscsi_bufaddr; /* i/o source/destination */
+size_t uscsi_buflen; /* size of i/o to take place*/
+size_t uscsi_resid; /* resid from i/o operation */
+uchar_t uscsi_cdblen; /* # of valid CDB bytes */
+uchar_t uscsi_rqlen; /* size of uscsi_rqbuf */
+uchar_t uscsi_rqstatus; /* status of request sense cmd */
+uchar_t uscsi_rqresid; /* resid of request sense cmd */
+caddr_t uscsi_rqbuf; /* request sense buffer */
+void *uscsi_reserved_5; /* Reserved for future use */
+.Ed
+.Pp
+The fields of the
+.Vt uscsi_cmd
+structure have the following meanings:
+.Bl -tag -width uscsi_reserved_5
+.It Sy uscsi_flags
+The
+.Sy I/O
+direction and other details of how to carry out the
+.Sy SCSI
+command.
+Possible values are described below.
+.It Fa uscsi_status
+The
+.Sy SCSI
+status byte returned by the device is returned in this field.
+.It Fa uscsi_timeout
+Time in seconds to allow for completion of the command.
+.It Fa uscsi_cdb
+A pointer to the
+.Sy SCSI
+CDB (command descriptor block) to be transferred to the device in command phase.
+.It Fa uscsi_bufaddr
+The user buffer containing the data to be read from or written to the device.
+.It Sy uscsi_buflen
+The length of
+.Fa uscsi_bufaddr .
+.It Fa uscsi_resid
+If a data transfer terminates without transferring the entire requested amount,
+the remainder, or residue, is returned in this field.
+.It Fa uscsi_cdblen
+The length of the
+.Sy SCSI
+CDB to be transferred to the device in command phase.
+.It Fa uscsi_rqlen
+The length of
+.Fa uscsi_rqbuf ,
+the application's Request Sense buffer.
+.It Fa uscsi_rqstatus
+The
+.Sy SCSI
+status byte returned for the Request Sense command executed
+automatically by the driver in response to a Check Condition status return.
+.It Fa uscsi_rqresid
+The residue, or untransferred data length, of the Request Sense data transfer
+(the number of bytes, less than or equal to
+.Fa uscsi_rqlen ,
+which were not filled with sense data).
+.It Fa uscsi_rqbuf
+Points to a buffer in application address space to which the results of an
+automatic Request Sense command are written.
+.It Fa uscsi_reserved_5
+Reserved for future use.
+.El
+.Pp
+The
+.Fa uscsi_flags
+field defines the following:
+.Bd -literal -offset 2n
+USCSI_WRITE /* send data to device */
+USCSI_SILENT /* no error messages */
+USCSI_DIAGNOSE /* fail if any error occurs */
+USCSI_ISOLATE /* isolate from normal commands */
+USCSI_READ /* get data from device */
+USCSI_ASYNC /* set bus to asynchronous mode */
+USCSI_SYNC /* return bus to sync mode if possible */
+USCSI_RESET /* reset target */
+USCSI_RESET_TARGET /* reset target */
+USCSI_RESET_LUN /* reset logical unit */
+USCSI_RESET_ALL /* reset all targets */
+USCSI_RQENABLE /* enable request sense extensions */
+USCSI_RENEGOT /* renegotiate wide/sync on next I/O */
+.Ed
+.Pp
+The
+.Fa uscsi_flags
+bits have the following interpretation:
+.Bl -tag -width USCSI_RESET_TARGET
+.It Dv USCSI_WRITE
+Data will be written from the initiator to the target.
+.It Dv USCSI_SILENT
+The driver should not print any console error messages or warnings regarding
+failures associated with this
+.Sy SCSI
+command.
+.It Dv USCSI_DIAGNOSE
+The driver should not attempt any retries or other recovery mechanisms if this
+.Sy SCSI
+command terminates abnormally in any way.
+.It Dv USCSI_ISOLATE
+This
+.Sy SCSI
+command should not be executed with other commands.
+.It Dv USCSI_READ
+Data will be read from the target to the initiator.
+.It Dv USCSI_ASYNC
+Set the
+.Sy SCSI
+bus to asynchronous mode before running this command.
+.It Dv USCSI_SYNC
+Set the
+.Sy SCSI
+bus to synchronous mode before running this command.
+.It Dv USCSI_RESET
+Send a
+.Sy SCSI
+bus device reset message to this target.
+.It Dv USCSI_RESET_TARGET
+Same as USCSI_RESET.
+Use this flag to request TARGET RESET.
+.Po
+.Dv USCSI_RESET
+is maintained only for compatibility with old applications
+.Pc .
+.It Dv USCSI_RESET_LUN
+Send a
+.Sy SCSI
+logical unit reset message to this target.
+.It Dv USCSI_RESET_ALL
+.Dv USCSI_RESET_ALL ,
+.Dv USCSI_RESET/USCSI_RESET_TARGET ,
+and
+.Dv USCSI_RESET_LUN
+are
+mutually exclusive options and issuing them in any simultaneous combination
+will result in implementation-dependent behavior
+When a USCSI reset request is combined with other
+.Sy SCSI
+commands, the following semantics take effect:
+If the
+.Dv USCSI RESET
+flag is specified, the other fields (other than
+.Fa uscsi_flags )
+in the
+.Vt uscsi_cmd
+are ignored.
+The
+.Fa uscsi_cdblen
+field
+.Em must
+be set to zero.
+.It Dv USCSI_RQENABLE
+Enable Request Sense extensions.
+If the user application is prepared to receive
+sense data, this bit must be set, the fields
+.Fa uscsi_rqbuf
+and
+.Fa uscsi_rqbuflen
+must be non-zero, and the
+.Fa uscsi_rqbuf
+must point to memory writable by the application.
+.It Dv USCSI_RENEGOT
+Tells USCSI to renegotiate wide mode and synchronous transfer speed before the
+transmitted SCSI command is executed.
+This flag in effects tells the target driver to pass the
+.Dv FLAG_RENEGOTIATE_WIDE_SYNC
+flag in the SCSI packet
+before passing the command to an adapter driver for transport.
+See the
+.Xr scsi_pkt 9S
+flag
+.Dv FLAG_RENEGOTIATE_WIDE_SYNC
+for more information.
+.El
+.Pp
+The
+.Vt uscsi_xfer_t
+is a type definition that corresponds to a 64-bit unsigned integer.
+It should be used for the
+.Dv USCSIMAXXFER
+ioctls.
+This is
+used for determining the maximum transfer size that can be performed in a single
+.Dv USCSICMD
+ioctl.
+If the SCSI request is larger than the specified size,
+then it may not work, depending on the hardware platform.
+.Sh IOCTLS
+The
+.Fn ioctl
+supported by drivers providing the
+.Nm
+interface is:
+.Bl -tag -width USCSIMAXXFER
+.It Dv USCSICMD
+The argument is a pointer to a
+.Vt uscsi_cmd
+structure.
+The
+.Sy SCSI
+device addressed by that driver is selected, and given the
+.Sy SCSI
+command addressed by
+.Fa uscsi_cdb .
+If this command requires a data phase, the
+.Fa uscsi_buflen
+and
+.Fa uscsi_bufaddr
+fields must be set appropriately; if data phase occurs, the
+.Fa uscsi_resid
+is returned as the number of bytes not transferred.
+The status of the command, as returned by the device, is returned in the
+.Fa uscsi_status
+field.
+If the command terminates with Check Condition
+status, and Request Sense is enabled, the sense data itself is returned in
+.Fa uscsi_rqbuf .
+The
+.Fa uscsi_rqresid
+provides the residue of the Request Sense data transfer.
+.It Dv USCSIMAXXFER
+The argument is a pointer to a
+.Vt uscsi_xfer_t
+value.
+The maximum transfer size that can be used with the
+.Dv USCSICMD
+ioctl for the current device will be returned in the
+.Vt uscsi_xfer_t .
+.Pp
+Not all devices which support the
+.Dv USCSICMD
+ioctl also support the
+.Dv USCSIMAXXFER
+ioctl.
+.El
+.Sh ERRORS
+.Bl -tag -width EINVAL
+.It Er EINVAL
+A parameter has an incorrect, or unsupported, value.
+.It Er EIO
+An error occurred during the execution of the command.
+.It Er EPERM
+A process without root credentials tried to execute the
+.Dv USCSICMD
+or
+.Dv USCSIMAXXFER
+ioctl.
+.It Er EFAULT
+The
+.Vt uscsi_cmd
+itself, the
+.Fa uscsi_cdb ,
+the
+.Fa uscsi_buf ,
+the
+.Fa uscsi_rqbuf ,
+or the
+.Vt uscsi_xfer_t
+point to an invalid address.
+.El
+.Sh STABILITY
+Committed
+.Sh SEE ALSO
+.Xr ioctl 2 ,
+.Xr sd 4D ,
+.Xr st 4D ,
+.Xr attributes 7
+.Rs
+.%T ANSI Small Computer System Interface-2 (SCSI-2)
+.Re
+.Sh WARNINGS
+The
+.Nm
+command is very powerful, but somewhat dangerous, and so its
+use is restricted to processes running as root, regardless of the file
+permissions on the device node.
+The device driver code expects to own the device state, and
+.Nm
+commands can change the state of the device and confuse the device driver.
+It is best to use
+.Nm
+commands only with no side effects, and avoid commands such as Mode Select, as
+they may cause damage to data stored on the drive or system panics.
+Also, as the commands are not checked in any way by the device driver, any block
+may be overwritten, and the block numbers are absolute block numbers on the
+drive regardless of which slice number is used to send the command.
+.Pp
+The
+.Nm
+interface is not recommended for very large data transfers
+(typically more than 16MB).
+If the requested transfer size exceeds the maximum transfer size of the DMA
+engine, it will not be broken up into multiple transfers and DMA errors may
+result.
+The
+.Dv USCSIMAXXFER
+ioctl can be used to determine the maximum transfer size.
+.Pp
+The
+.Dv USCSICMD
+ioctl associates a
+.Vt struct uscsi_cmd
+with a device by using an open file descriptor to the device.
+Other APIs might provide the same
+.Vt struct uscsi_cmd
+programming interface, but perform device association in some other manner.
diff --git a/usr/src/man/man4i/visual_io.4i b/usr/src/man/man4i/visual_io.4i
new file mode 100644
index 0000000000..91975c625c
--- /dev/null
+++ b/usr/src/man/man4i/visual_io.4i
@@ -0,0 +1,738 @@
+.\" Copyright (c) 2005, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 2018, Joyent, Inc.
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.Dd August 31, 2018
+.Dt VISUAL_IO 4I
+.Os
+.Sh NAME
+.Nm visual_io
+.Nd illumos VISUAL I/O control operations
+.Sh SYNOPSIS
+.In sys/visual_io.h
+.Sh DESCRIPTION
+The illumos VISUAL environment defines a small set of ioctls for controlling
+graphics and imaging devices.
+.Pp
+The
+.Dv VIS_GETIDENTIFIER
+ioctl is mandatory and must be implemented in
+device drivers for graphics devices using the illumos VISUAL environment.
+The
+.Dv VIS_GETIDENTIFIER
+ioctl is defined to return a device identifier from the device driver.
+This identifier must be a uniquely-defined string.
+.Pp
+There are two additional sets of ioctls.
+One supports mouse tracking via hardware cursor operations.
+Use of this set is optional, however, if a graphics
+device has hardware cursor support and implements these ioctls, the mouse
+tracking performance is improved.
+The remaining set supports the device acting
+as the system console device.
+Use of this set is optional, but if a graphics device is to be used as the
+system console device, it must implement these ioctls.
+.Pp
+The VISUAL environment also defines interfaces for non-ioctl entry points into
+the driver that the illumos operating environment calls when it is running in
+standalone mode (for example, when using a stand-alone debugger, entering
+the PROM monitor, or when the system panicking).
+These are also known as
+.Dq Polled I/O
+entry points, which operate under an an explicit set of restrictions, described below.
+.Sh IOCTLS
+.Bl -tag -width VIS_GETIDENTIFIER -compact
+.It Dv VIS_GETIDENTIFIER
+This
+.Xr ioctl 2
+returns an identifier string to uniquely identify a device
+used in the illumos VISUAL environment.
+This is a mandatory ioctl and must return a unique string.
+We suggest that the name be formed as
+.Ao companysymbol Ac Ns Ao devicetype Ac .
+For example, the
+.Xr cgsix 4D
+driver
+returns
+.Sy SUNWcg6 .
+.Pp
+.Dv VIS_GETIDENTIFIER
+takes a
+.Vt vis_identifier
+structure as its parameter.
+This structure has the form:
+.Bd -literal -offset 2n
+#define VIS_MAXNAMELEN 128
+struct vis_identifier {
+ char name[VIS_MAXNAMELEN];
+};
+.Ed
+.Pp
+.It Dv VIS_GETCURSOR
+.It Dv VIS_SETCURSOR
+These ioctls fetch and set various cursor attributes, using the
+.Vt vis_cursor
+structure.
+.Bd -literal -offset 2n
+struct vis_cursorpos {
+ short x; /* cursor x coordinate */
+ short y; /* cursor y coordinate */
+};
+
+struct vis_cursorcmap {
+ int version; /* version */
+ int reserved;
+ /* red color map elements */
+ unsigned char *red;
+ /* green color map elements */
+ unsigned char *green;
+ /* blue color map elements */
+ unsigned char *blue;
+};
+
+#define VIS_CURSOR_SETCURSOR 0x01 /* set cursor */
+ /* set cursor position */
+#define VIS_CURSOR_SETPOSITION 0x02
+ /* set cursur hot spot */
+#define VIS_CURSOR_SETHOTSPOT 0x04
+ /* set cursor colormap */
+#define VIS_CURSOR_SETCOLORMAP 0x08
+ /* set cursor shape */
+#define VIS_CURSOR_SETSHAPE 0x10
+#define VIS_CURSOR_SETALL \e
+ (VIS_CURSOR_SETCURSOR | VIS_CURSOR_SETPOSITION | \e
+ VIS_CURSOR_SETHOTSPOT | VIS_CURSOR_SETCOLORMAP | \e
+ VIS_CURSOR_SETSHAPE)
+
+struct vis_cursor {
+ short set; /* what to set */
+ short enable; /* cursor on/off */
+ struct vis_cursorpos pos; /* cursor position */
+ struct vis_cursorpos hot; /* cursor hot spot */
+ struct vis_cursorcmap cmap; /* color map info */
+ /* cursor bitmap size */
+ struct vis_cursorpos size;
+ char *image; /* cursor image bits */
+ char *mask; /* cursor mask bits */
+};
+.Ed
+.Pp
+The
+.Vt vis_cursorcmap
+structure should contain pointers to two elements,
+specifying the red, green, and blue values for foreground and background.
+.Pp
+.It Dv VIS_SETCURSORPOS
+.It Dv VIS_MOVECURSOR
+These ioctls fetch and move the current cursor position, using the
+.Vt vis_cursorpos
+structure.
+.El
+.Ss "Console Optional Ioctls"
+The following ioctl sets are used by graphics drivers that are part of the
+system console device.
+All of the ioctls must be implemented to be a console device.
+In addition, if the system does not have a prom or the prom goes away
+during boot, the special standalone ioctls (listed below) must also be
+implemented.
+.Pp
+The coordinate system for the console device places 0,0 at the upper left
+corner of the device, with rows increasing toward the bottom of the device and
+columns increasing from left to right.
+.Pp
+.Bl -tag -width VIS_CONSDISPLAY -compact -offset 2n
+.It Dv VIS_PUTCMAP
+.It Dv VIS_GETCMAP
+Set or get color map entries.
+.Pp
+The argument is a pointer to a
+.Vt vis_cmap
+structure, which contains the
+following fields:
+.Bd -literal -offset 2n
+struct vis_cmap {
+ int index;
+ int count;
+ uchar_t *red;
+ uchar_t *green;
+ uchar_t *blue;
+}
+.Ed
+.Pp
+.Fa index
+is the starting index in the color map where you want to start
+setting or getting color map entries.
+.Pp
+.Fa count
+is the number of color map entries to set or get.
+It also is the
+size of the
+.Fa red ,
+.Fa green ,
+and
+.Fa blue
+color arrays.
+.Pp
+.Fa *red ,
+.Fa *green ,
+and
+.Fa *blue
+are pointers to unsigned character arrays which contain the color map info to
+set or where the color map info is placed on a get.
+.Pp
+.It Dv VIS_DEVINIT
+Initializes the graphics driver as a console device.
+.Pp
+The argument is a pointer to a
+.Vt vis_devinit
+structure.
+The graphics driver
+is expected to allocate any local state information needed to be a console
+device and fill in this structure.
+.Bd -literal -offset 2n
+struct vis_devinit {
+ int version;
+ screen_size_t width;
+ screen_size_t height;
+ screen_size_t linebytes;
+ unit_t size;
+ int depth;
+ short mode;
+ struct vis_polledio *polledio;
+ vis_modechg_cb_t modechg_cb;
+ struct vis_modechg_arg *modechg_arg;
+};
+.Ed
+.Pp
+.Fa version
+is the version of this structure and should be set to
+.Dv VIS_CONS_REV .
+.Pp
+.Fa width
+and
+.Fa height
+are the width and height of the device.
+If
+.Fa mode
+(see below) is
+.Dv VIS_TEXT
+then
+.Fa width
+and
+.Fa height
+are the number of characters wide and high of the device.
+If
+.Fa mode
+is
+.Dv VIS_PIXEL
+then
+.Fa width
+and
+.Fa height
+are the number of pixels wide and high of the device.
+.Pp
+.Fa linebytes
+is the number of bytes per line of the device.
+.Pp
+.Fa size
+is the total size of the device in pixels.
+.Pp
+.Fa depth
+is the pixel depth in device bits.
+Currently supported depths are:
+.Sy 1 ,
+.Sy 4 ,
+.Sy 8
+and
+.Sy 24 .
+.Pp
+.Fa mode
+is the mode of the device.
+Either
+.Dv VIS_PIXEL
+(data to be displayed is in bitmap format) or
+.Dv VIS_TEXT
+(data to be displayed is in ascii format).
+.Pp
+.Fa polledio
+is used to pass the address of the structure containing the
+standalone mode polled I/O entry points to the device driver back to the
+terminal emulator.
+The
+.Vt vis_polledio
+interfaces are described in the
+Console Standalone Entry Points section of this manpage.
+These entry points are where the operating system enters the driver when the
+system is running in standalone mode.
+These functions perform identically to the
+.Dv VIS_CONSDISPLAY ,
+.Dv VIS_CONSCURSOR ,
+and
+.Dv VIS_CONSCOPY
+ioctls, but are called directly by the illumos
+operating environment and must operate under a very strict set of assumptions.
+.Pp
+.Fa modechg_cb
+is a callback function passed from the terminal emulator to
+the framebuffer driver which the frame-buffer driver must call whenever a video
+mode change event occurs that changes the screen height, width or depth.
+The callback takes two arguments, an opaque handle,
+.Fa modechg_arg ,
+and the address of a
+.Vt vis_devinit
+struct containing the new video mode information.
+.Pp
+.Fa modechg_arg
+is an opaque handle passed from the terminal emulator to the
+driver, which the driver must pass back to the terminal emulator as an argument
+to the
+.Fa modechg_cb
+function when the driver notifies the terminal emulator of a video mode change.
+.Pp
+.It Dv VIS_DEVFINI
+Tells the graphics driver that it is no longer the system console device.
+There is no argument to this ioctl.
+The driver is expected to free any locally kept
+state information related to the console.
+.Pp
+.It Dv VIS_CONSCURSOR
+Describes the size and placement of the cursor on the screen.
+The graphics
+driver is expected to display or hide the cursor at the indicated position.
+.Pp
+The argument is a pointer to a
+.Vt vis_conscursor
+structure which contains
+the following fields:
+.Bd -literal -offset 2n
+struct vis_conscursor {
+ screen_pos_t row;
+ screen_pos_t col;
+ screen_size_t width;
+ screen_size_t height
+ color_t fg_color;
+ color_t bg_color;
+ short action;
+};
+.Ed
+.Pp
+.Fa row
+and
+.Fa col
+are the first row and column (upper left corner of the cursor).
+.Pp
+.Fa width
+and
+.Fa height
+are the width and height of the cursor.
+.Pp
+If
+.Fa mode
+in the
+.Dv VIS_DEVINIT
+ioctl is set to
+.Dv VIS_PIXEL ,
+then
+.Fa col ,
+.Fa row ,
+.Fa width
+and
+.Fa height
+are in pixels.
+If
+.Fa mode
+in the
+.Dv VIS_DEVINIT
+ioctl was set to
+.Dv VIS_TEXT ,
+then
+.Fa col ,
+.Fa row ,
+.Fa width
+and
+.Fa height
+are in characters.
+.Pp
+.Fa fg_color
+and
+.Fa bg_color
+are the foreground and background color map
+indexes to use when the
+.Fa action
+(see below) is set to
+.Dv VIS_DISPLAY_CURSOR .
+.Pp
+.Fa action
+indicates whether to display or hide the cursor.
+It is set to either
+.Dv VIS_HIDE_CURSOR
+or
+.Dv VIS_DISPLAY_CURSOR .
+.Pp
+.It Dv VIS_CONSDISPLAY
+Display data on the graphics device.
+The graphics driver is expected to display the data contained in the
+.Vt vis_display
+structure at the specified position on the console.
+.Pp
+The
+.Vt vis_display
+structure contains the following fields:
+.Bd -literal -offset 2n
+struct vis_display {
+ screen_pos_t row;
+ screen_pos_t col;
+ screen_size_t width;
+ screen_size_t height;
+ uchar_t *data;
+ color_t fg_color;
+ color_t bg_color;
+};
+.Ed
+.Pp
+.Fa row
+and
+.Fa col
+specify at which starting row and column the date is to be displayed.
+If
+.Fa mode
+in the
+.Dv VIS_DEVINIT
+ioctl was set to
+.Dv VIS_TEXT ,
+.Fa row
+and
+.Fa col
+are defined to be a character offset
+from the starting position of the console device.
+If
+.Fa mode
+in the
+.Dv VIS_DEVINIT
+ioctl was set to
+.Dv VIS_PIXEL ,
+.Fa row
+and
+.Fa col
+are defined to be a pixel offset from the starting position of the console
+device.
+.Pp
+.Fa width
+and
+.Fa height
+specify the size of the
+.Fa data
+to be displayed.
+If
+.Fa mode
+in the
+.Dv VIS_DEVINIT
+ioctl was set to
+.Dv VIS_TEXT ,
+.Fa width
+and
+.Fa height
+define the size of
+.Fa data
+as rectangle that is
+.Fa width
+characters wide and
+.Fa height
+characters high.
+If
+.Fa mode
+in the
+.Dv VIS_DEVINIT
+ioctl was set to
+.Dv VIS_PIXEL ,
+.Fa width
+and
+.Fa height
+define the size of
+.Fa data
+as a rectangle that is
+.Fa width
+pixels wide and
+.Fa height
+pixels high.
+.Pp
+.Fa *data
+is a pointer to the data to be displayed on the console device.
+If
+.Fa mode
+in the
+.Dv VIS_DEVINIT
+ioctl was set to
+.Dv VIS_TEXT ,
+.Fa data
+is an array of
+.Sy ASCII
+characters to be displayed on the console device.
+The driver must break these characters up appropriately and display it in the
+rectangle defined by
+.Fa row ,
+.Fa col ,
+.Fa width ,
+and
+.Fa height .
+If
+.Fa mode
+in the
+.Dv VIS_DEVINIT
+ioctl was set to
+.Dv VIS_PIXEL ,
+.Fa data
+is an array of bitmap data to be displayed on the console device.
+The driver must break this data up appropriately and display it in the retangle
+defined by
+.Fa row ,
+.Fa col ,
+.Fa width ,
+and
+.Fa height .
+.Pp
+The
+.Fa fg_color
+and
+.Fa bg_color
+fields define the foreground and
+background color map indexes to use when displaying the data.
+.Fa fb_color
+is used for
+.Dq on
+pixels and
+.Fa bg_color
+is used for
+.Dq off
+pixels.
+.Pp
+.It Dv VIS_CONSCOPY
+Copy data from one location on the device to another.
+The driver is expected to copy the specified data.
+The source data should not be modified.
+Any modifications to the source data should be as a side effect of the copy
+destination overlapping the copy source.
+.Pp
+The argument is a pointer to a
+.Vt vis_copy
+structure which contains the following fields:
+.Bd -literal -offset 2n
+struct vis_copy {
+ screen_pos_t s_row;
+ screen_pos_t s_col;
+ screen_pos_t e_row;
+ screen_pos_t e_col;
+ screen_pos_t t_row;
+ screen_pos_t t_col;
+ short direction;
+};
+.Ed
+.Pp
+.Fa s_row ,
+.Fa s_col ,
+.Fa e_row ,
+and
+.Fa e_col
+define the source rectangle of the copy.
+.Fa s_row
+and
+.Fa s_col
+are the upper left corner of the source rectangle.
+.Fa e_row
+and
+.Fa e_col
+are the lower right corner of the source rectangle.
+If
+.Fa mode
+in the
+.Dv VIS_DEVINIT
+.Fn ioctl
+was set to
+.Dv VIS_TEXT ,
+.Fa s_row ,
+.Fa s_col ,
+.Fa e_row ,
+and
+.Fa e_col
+are defined to be character offsets from the starting position of the console
+device.
+If
+.Fa mode
+in the
+.Dv VIS_DEVINIT
+.Fn ioctl
+was set to
+.Dv VIS_PIXEL ,
+.Fa s_row ,
+.Fa s_col ,
+.Fa e_row ,
+and
+.Fa e_col
+are
+defined to be pixel offsets from the starting position of the console device.
+.Pp
+.Fa t_row
+and
+.Fa t_col
+define the upper left corner of the destination rectangle of the copy.
+The entire rectangle is copied to this location.
+If
+.Fa mode
+in the
+.Dv VIS_DEVINIT
+ioctl was set to
+.Dv VIS_TEXT ,
+.Fa t_row ,
+and
+.Fa t_col
+are defined to be character offsets from the
+starting position of the console device.
+If
+.Fa mode
+in the
+.Dv VIS_DEVINIT
+ioctl was set to
+.Dv VIS_PIXEL ,
+.Fa t_row ,
+and
+.Fa t_col
+are defined to be pixel offsets from the starting position of the
+onssole device.
+.Pp
+.Fa direction
+specifies which way to do the copy.
+If direction is
+.Dv VIS_COPY_FORWARD
+the graphics driver should copy data from position
+.Po
+.Fa s_row ,
+.Fa s_col
+.Pc
+in the source rectangle to position
+.Po
+.Fa t_row ,
+.Fa t_col
+.Pc
+in the destination rectangle.
+If direction is
+.Dv VIS_COPY_BACKWARDS
+the graphics driver should copy data from position
+.Po
+.Fa e_row ,
+.Fa e_col
+.Pc
+in the source rectangle to position
+.Po
+.Fa t_row Ns + Ns
+.Po
+.Fa e_row Ns \- Ns
+.Fa s_row
+.Pc ,
+.Fa t_col Ns + Ns
+.Po
+.Fa e_col Ns \- Ns
+.Fa s_col
+.Pc
+.Pc
+in the destination rectangle.
+.El
+.Ss "Console Standalone Entry Points (Polled I/O Interfaces)"
+Console standalone entry points are necessary only if the driver is
+implementing console-compatible extensions.
+All console vectored standalone
+entry points must be implemented along with all console-related ioctls if the
+console extension is implemented.
+.Bd -literal -offset 2n
+struct vis_polledio {
+ struct vis_polledio_arg *arg;
+ void (*display)(vis_polledio_arg *, struct vis_consdisplay *);
+ void (*copy)(vis_polledio_arg *, struct vis_conscopy *);
+ void (*cursor)(vis_polledio_arg *, struct vis_conscursor *);
+};
+.Ed
+.Pp
+The
+.Vt vis_polledio
+structure is passed from the driver to the illumos
+operating environment, conveying the entry point addresses of three functions
+which perform the same operations of their similarly named ioctl counterparts.
+The rendering parameters for each entry point are derived from the same
+structure passed as the respective ioctl.
+See the
+.Sx "Console Optional Ioctls"
+section of this manpage for an explanation of the specific function each of the
+entry points,
+.Fn display ,
+.Fn copy ,
+and
+.Fn cursor
+are required to implement.
+In
+addition to performing the prescribed function of their ioctl counterparts, the
+standalone vectors operate in a special context and must adhere to a strict set
+of rules.
+The polled I/O vectors are called directly whenever the system is
+quisced (running in a limited context) and must send output to the display.
+Standalone mode describes the state in which the system is running in
+single-threaded mode and only one processor is active.
+illumos operating
+environment services are stopped, along with all other threads on the system,
+prior to entering any of the polled I/O interfaces.
+The polled I/O vectors are
+called when the system is running in a standalone debugger, when executing the
+PROM monitor (OBP) or when panicking.
+.Pp
+The following restrictions must be observed in the polled I/O functions:
+.Bl -enum -offset indent
+.It
+The driver must not allocate memory.
+.It
+The driver must not wait on mutexes.
+.It
+The driver must not wait for interrupts.
+.It
+The driver must not call any DDI or LDI services.
+.It
+The driver must not call any system services.
+.El
+.Pp
+The system is single-threaded when calling these functions, meaning that all
+other threads are effectively halted.
+Single-threading makes mutexes (which
+cannot be held) easier to deal with, so long as the driver does not disturb any
+shared state.
+See
+.%T Writing Device Drivers
+for more information about implementing polled I/O entry points.
+.Sh SEE ALSO
+.Xr ioctl 2
+.Rs
+.%T Writing Device Drivers
+.Re
+.Sh NOTES
+On SPARC systems, compatible drivers supporting the kernel terminal emulator
+should export the
+.Sy tem-support
+DDI property.
+.Sy tem-support
+indicates that the driver supports the kernel terminal emulator.
+By exporting
+.Sy tem-support
+it's possible to avoid premature handling of an incompatible driver.
+.Bl -tag -width tem-support
+.It Sy tem-support
+This DDI property, set to 1, means driver is compatible with the console
+kernel framebuffer interface.
+.El
diff --git a/usr/src/man/man4i/vt.4i b/usr/src/man/man4i/vt.4i
new file mode 100644
index 0000000000..0684aa44ff
--- /dev/null
+++ b/usr/src/man/man4i/vt.4i
@@ -0,0 +1,329 @@
+.\" Copyright (c) 2017, Joyent, Inc.
+.\" Copyright (c) 2008 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.Dd December 28, 2020
+.Dt VT 4I
+.Os
+.Sh NAME
+.Nm vt
+.Nd Solaris virtual console interface
+.Sh SYNOPSIS
+.In sys/kd.h
+.In sys/vt.h
+.Sh DESCRIPTION
+The virtual console device driver \(em also known as virtual terminal
+.Pq Sy VT
+\(em is a layer of management functions that provides facilities to
+support and switch between multiple screen faces on a single physical device.
+.Pp
+VT's are accessed in the same way as other devices.
+The
+.Xr open 2
+system
+call is used to open the virtual console and
+.Xr read 2 ,
+.Xr write 2
+and
+.Xr ioctl 2
+are used in the normal way and support the functionality of the
+underlying device.
+In addition, some virtual console-specific ioctls are
+provided and described below.
+.Pp
+The VT provides a link between different screen faces and the device.
+The
+.Sy "active virtual console"
+corresponds to the currently visible screen face.
+Device input is directed to the active console and any device-specific modes
+that change on a per virtual terminal basis are set to the characteristics
+associated with the active console.
+.Pp
+You manage VT's by intercepting keyboard sequences
+.Pq Dq "hot key" .
+To maintain consistency with Xserver, the virtual console device driver
+supports the Ctrl, Alt, F# and arrow keys.
+.Pp
+The sequence
+.Sy "AltL + F#"
+(where AltL represents the left Alt key and F# represents function keys 1
+through 12) is used to select virtual console 1-12.
+The sequence
+.Sy "AltGraph + F#"
+(where AltGraph represents the right Alt key and F# represent function keys 1
+through 12) is for virtual console 13-24.
+.Sy "Alt + F1"
+chooses the system console (also known as virtual console 1).
+The sequence
+.Sy "Alt + \(->"
+(where "\(->" represents the right directional arrow)
+selects the next VT in a circular ring fashion and
+.Sy "Alt + \(<-"
+(where "\(<-" represents the left directional arrow) changes to the previous
+console in a circular fashion.
+The sequence
+.Sy "Alt + \(ua"
+(where "\(ua" represents the up directional arrow) is for the last used console.
+.Pp
+Virtual console switching can be done automatically
+.Pq Dv VT_AUTO
+on receipt of a
+.Dq hot-key
+or by the process owning the VT
+.Pq Dv VT_PROCESS .
+When performed automatically, the process associated with the virtual console is
+unaware of the switch.
+Saving and restoring the device are handled by the
+underlying device driver and the virtual console manager.
+Note that automatic switching is the default mode.
+.Pp
+When a
+.Dq hot-key
+is sent when in process-controlled switch mode, the process
+owning the VT is sent a signal (relsig) it has specified to the virtual console
+manager (see
+.Xr signal 3C )
+requesting the process to release the physical device.
+At this point, the virtual console manager awaits the
+.Dv VT_RELDISP
+ioctl from the process.
+If the process refuses to release the device (meaning
+the switch does not occur), it performs a
+.Dv VT_RELDISP
+ioctl with an argument of 0 (zero).
+If the process desires to release the device, it saves
+the device state (keyboard, display, and I/O registers) and then performs a
+.Dv VT_RELDISP
+with an argument of 1 to complete the switch.
+.Pp
+A ring of VT's can contain intermixed auto mode and process control mode
+consoles.
+When an auto mode process becomes active, the underlying device
+driver and the virtual console manager handle the restoring of the device.
+Process control mode processes are sent a specified signal (acqsig) when they
+become the active console.
+The process then restores the device state
+(keyboard, display, and I/O registers) and performs
+.Dv VT_RELDISP
+ioctl with an argument of
+.Dv VT_ACKACQ
+to complete the switching protocol.
+.Pp
+The modify-operations ioctls
+.Po
+.Dv VT_SETMODE ,
+.Dv VT_RELDISP ,
+.Dv VT_WAITACTIVE ,
+.Dv KDSETMODE
+.Pc
+check if the VT is the controlling tty of
+the calling process.
+If not, the sys_devices privilege is enforced.
+.Dv VT_ACTIVATE
+requires the sys_devices privilege.
+Note that there is no
+controlling tty and privilege check for query/view operations.
+.Sh IOCTLS
+The following ioctls apply to devices that support virtual consoles:
+.Bl -tag -width VT_ENABLED
+.It Dv VT_ENABLED
+Queries to determine if VT functionality is available on the system.
+The argument is a pointer to an integer.
+If VT functionality is available, the
+integer is 1, otherwise it is 0.
+.It Dv VT_OPENQRY
+Finds an available VT.
+The argument is a pointer to an integer.
+The integer is
+filled in with the number of the first available console that no other process
+has open (and hence, is available to be opened).
+If there are no available
+VT's, -1 is filled in.
+.It Dv VT_GETMODE
+Determines the VT's current mode, either
+.Dv VT_AUTO
+or
+.Dv VT_PROCESS .
+The
+argument is the address of the following structure, as defined in
+.In sys/vt.h
+.Bd -literal -offset 2n
+struct vt_mode {
+ char mode; /* VT mode */
+ char waitv; /* not used */
+ short relsig; /* signal to use for release request */
+ short acqsig; /* signal to use for display acquired */
+ short frsig; /* not used */
+}
+
+/* Virtual console Modes */
+#define VT_AUTO 0 /* automatic VT switching */
+#define VT_PROCESS 1 /* process controls switching */
+.Ed
+.Pp
+The structure will be filled in with the current value for each field.
+.It Dv VT_SETMODE
+Sets the VT mode.
+The argument is a pointer to a vt_mode structure as defined above.
+The structure should be filled in with the desired mode.
+If process-control mode is specified, the signals used to communicate with the
+process should be specified.
+If any signals are not specified (value is zero), the signal default is
+.Dv SIGUSR1
+(for relsig and acqsig).
+.It Dv VT_RELDISP
+Tells the VT manager if the process releases (or refuses to release) the
+display.
+An argument of 1 indicates the VT is released.
+An argument of 0 indicates refusal to release.
+The
+.Dv VT_ACKACQ
+argument indicates if acquisition of the VT has been completed.
+.It Dv VT_ACTIVATE
+Makes the VT specified in the argument the active VT (in the same manner as if
+a hotkey initiated the switch).
+If the specified VT is not open or does not exist, the call fails and errno is
+set to
+.Er ENXIO .
+.It Dv VT_WAITACTIVE
+If the specified VT is currently active, this call returns immediately.
+Otherwise, it sleeps until the specified VT becomes active, at which point it
+returns.
+.It Dv VT_GETSTATE
+Obtains the active VT number and a list of open VTs.
+The argument is an address to the following structure:
+.Bd -literal -offset 2n
+struct vt_stat {
+ unsigned short v_active, /* number of the active VT */
+ v_signal, /* not used */
+ /*
+ * count of open VTs. For every 1 in this
+ * field, there is an open VT
+ */
+ v_state;
+}
+.Ed
+.Pp
+With
+.Dv VT_GETSTATE ,
+the VT manager first gets the number of the active VT,
+then determines the number of open VTs in the system and sets a 1 for each open
+VT in v_state.
+Next, the VT manager transfers the information in structure
+.Vt vt_stat
+passed by the user process.
+.It Dv KDGETMODE
+Obtains the text/graphics mode associated with the VT.
+.Bd -literal -offset 2n
+#define KD_TEXT 0
+#define KD_GRAPHICS 1
+.Ed
+.It Dv KDSETMODE
+Sets the text/graphics mode to the VT.
+.It Dv KD_TEXT
+indicates that console text is displayed on the screen.
+Normally
+.Dv KD_TEXT
+is combined with
+.Dv VT_AUTO
+mode for text console terminals,
+so that the console text display automatically is saved and restored on the hot
+key screen switches.
+.Pp
+.Dv KD_GRAPHICS
+indicates that the user/application (usually Xserver) has
+direct control of the display for this VT in graphics mode.
+Normally
+.Dv KD_GRAPHICS
+is combined with
+.Dv VT_PROCESS
+mode for this VT indicating
+direct control of the display in graphics mode.
+In this mode, all writes to the
+VT using the write system call are ignored, and you must save and restore the
+display on the hot key screen switches.
+.Pp
+When the mode of the active VT is changed from
+.Dv KD_TEXT
+to
+.Dv KD_GRAPHICS
+or a VT of
+.Dv KD_GRAPHICS
+mode is made active from a
+previous active VT of
+.Dv KD_TEXT
+mode, the virtual console manager initiates a
+.Dv KDSETMODE
+ioctl with
+.Dv KD_GRAPHICS
+as the argument to the underlying console frame buffer device indicating that
+current display is running into graphics mode.
+.Pp
+When the mode of the active VT is changed from
+.Dv KD_GRAPHICS
+to
+.Dv KD_TEXT
+or a VT of
+.Dv KD_TEXT
+mode is activated from a previous active VT of
+.Dv KD_GRAPHICS
+mode, the virtual console manager initiates a
+.Dv KDSETMODE
+ioctl with
+.Dv KD_TEXT
+as the argument to the underlying console frame buffer device indicating that
+current display is running into console text mode.
+.El
+.Sh FILES
+.Bl -tag -width xxxxxxxxx
+.It Pa /dev/vt/#
+VT devices.
+.El
+.Sh SEE ALSO
+.Xr ioctl 2 ,
+.Xr signal 3C ,
+.Xr wscons 4D
+.Sh NOTES
+By default, there are only five virtual console instance login prompts running
+on
+.Pa /dev/vt/#
+(where "#" represents 2 to 6) in addition to the system
+console running on
+.Pa /dev/console .
+Normally Xorg uses the seventh virtual console
+.Pq Pa /dev/vt/7 .
+To switch from consoles to Xserver (which normally
+picks up the first available virtual console), use [ Ctrl + ] Alt + F7 .
+.Bd -literal -offset indent
+# svcs | grep login
+online 17:49:11 svc:/system/console-login:default
+online 17:49:11 svc:/system/console-login:vt2
+online 17:49:11 svc:/system/console-login:vt3
+online 17:49:11 svc:/system/console-login:vt4
+online 17:49:11 svc:/system/console-login:vt5
+online 17:49:11 svc:/system/console-login:vt6
+.Ed
+.Pp
+.Sy console-login:default
+is for the system console, others for virtual consoles.
+.Pp
+You can modify properties/disable/enable and remove/add virtual consoles using
+.Xr smf 7 :
+.Bd -literal -offset indent
+# svccfg -s console-login add vt8
+# svccfg -s console-login:vt8 setprop \e
+ ttymon/device=astring: "/dev/vt/8"
+# svcadm enable console-login:vt8
+.Ed
diff --git a/usr/src/man/man4ipp/Makefile b/usr/src/man/man4ipp/Makefile
new file mode 100644
index 0000000000..13bc78818d
--- /dev/null
+++ b/usr/src/man/man4ipp/Makefile
@@ -0,0 +1,33 @@
+#
+# This file and its contents are supplied under the terms of the
+# Common Development and Distribution License ("CDDL"), version 1.0.
+# You may only use this file in accordance with the terms of version
+# 1.0 of the CDDL.
+#
+# A full copy of the text of the CDDL should have accompanied this
+# source. A copy of the CDDL is also available via the Internet
+# at http://www.illumos.org/license/CDDL.
+#
+
+#
+# Copyright 2011, Richard Lowe
+# Copyright 2013 Nexenta Systems, Inc. All rights reserved.
+#
+
+include $(SRC)/Makefile.master
+
+MANSECT= 4ipp
+
+MANFILES= dlcosmk.4ipp \
+ dscpmk.4ipp \
+ flowacct.4ipp \
+ ipgpc.4ipp \
+ ipqos.4ipp \
+ tokenmt.4ipp \
+ tswtclmt.4ipp
+
+.KEEP_STATE:
+
+include $(SRC)/man/Makefile.man
+
+install: $(ROOTMANFILES)
diff --git a/usr/src/man/man4ipp/dlcosmk.4ipp b/usr/src/man/man4ipp/dlcosmk.4ipp
new file mode 100644
index 0000000000..53de399601
--- /dev/null
+++ b/usr/src/man/man4ipp/dlcosmk.4ipp
@@ -0,0 +1,63 @@
+'\" te
+.\" Copyright (c) 2004, Sun Microsystems Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH DLCOSMK 4IPP "Sep 29, 2004"
+.SH NAME
+dlcosmk \- Data Layer Class of Service Marker
+.SH DESCRIPTION
+.sp
+.LP
+The \fBdlcosmk\fR marker is an action module that is executed as a result of
+classifying or metering packets. It marks the packet with a user priority
+defined by the\fI IEEE 801.D\fR standard. This feature is only possible on a
+\fBVLAN\fR device.
+.sp
+.LP
+The 3-bit user priority is part of the \fI802.1Q\fR \fBVLAN\fR header tag that
+is part of the ethernet header (carrying the IP packet).
+.SH STATISTICS
+.sp
+.LP
+The \fBdlcosmk\fR module exports the following statistics through \fBkstat\fR:
+.sp
+.LP
+Global statistics:
+.sp
+.in +2
+.nf
+module: dlcosmk instance: <action id>
+ name: dlcosmk statistics class <action name>
+ crtime
+ snaptime
+ b_band <b_band value>
+ dl_max <dl_max value>
+ usr_pri <configured CoS>
+ npackets <number of packets>
+ epackets <number of packets in error>
+ ipackets <number of packets not processed>
+.fi
+.in -2
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/kernel/ipp/sparcv9/dlcosmk\fR\fR
+.ad
+.sp .6
+.RS 4n
+64-bit module (SPARC only.)
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR dscpmk (4IPP),
+.BR flowacct (4IPP),
+.BR ipgpc (4IPP),
+.BR ipqos (4IPP),
+.BR tokenmt (4IPP),
+.BR tswtclmt (4IPP),
+.BR ipqosconf (8)
diff --git a/usr/src/man/man4ipp/dscpmk.4ipp b/usr/src/man/man4ipp/dscpmk.4ipp
new file mode 100644
index 0000000000..e5494b7e3a
--- /dev/null
+++ b/usr/src/man/man4ipp/dscpmk.4ipp
@@ -0,0 +1,69 @@
+'\" te
+.\" Copyright (c) 2003, Sun Microsystems Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH DSCPMK 4IPP "Sep 29, 2004"
+.SH NAME
+dscpmk \- Differentiated Services Code Point Marker
+.SH DESCRIPTION
+.sp
+.LP
+The \fBdscpmk\fR marker is an action module that is executed as a result of
+classifying or metering packets. It sets a codepoint in the IP header as
+defined in \fIRFC-2474: Definition of the Differentiated Services Field (DS
+Field) in the IPv4 and IPv6 Headers\fR.
+.SH STATISTICS
+.sp
+.LP
+The \fBdscpmk\fR module exports the following statistics available through
+\fBkstat\fR:
+.sp
+.LP
+Global statistics:
+.sp
+.in +2
+.nf
+module: dscpmk instance: <action id>
+ name: dscpmk stats class <action name>
+ crtime
+ snaptime
+ npackets <number of packets>
+ epackets <number of packets in error>
+ ipackets <number of packets not processed>
+ dscp_unchanged <number of packets with DSCP unchanged>
+ dscp_changed <number of packets with DSCP changed>
+
+Also, for each DSCP the following is exported:
+ module: dscpmk instance: <action id>
+ name: dscpmk_dscp0x<DSCP> value class: <action name>
+ dscp <DSCP value>
+ npackets <number of packets for this DSCP>
+.fi
+.in -2
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/kernel/ipp/sparcv9/dscpmk\fR\fR
+.ad
+.RS 30n
+64-bit module (SPARC only.)
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR dlcosmk (4IPP),
+.BR flowacct (4IPP),
+.BR ipgpc (4IPP),
+.BR ipqos (4IPP),
+.BR tokenmt (4IPP),
+.BR tswtclmt (4IPP),
+.BR ipqosconf (8)
+.sp
+.LP
+\fIRFC 2474, Definition of the Differentiated Services Field (DS Field) in the
+IPv4 and IPv6 Headers\fR K. Nichols, S. Blake, F. Baker, D. Black \(em The
+Internet Society, 1998
diff --git a/usr/src/man/man4ipp/flowacct.4ipp b/usr/src/man/man4ipp/flowacct.4ipp
new file mode 100644
index 0000000000..9539e251f7
--- /dev/null
+++ b/usr/src/man/man4ipp/flowacct.4ipp
@@ -0,0 +1,71 @@
+'\" te
+.\" Copyright (c) 2004, Sun Microsystems Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH FLOWACCT 4IPP "Sep 29, 2004"
+.SH NAME
+flowacct \- Flow Accouting module
+.SH DESCRIPTION
+.sp
+.LP
+The flow accounting module \fBflowacct\fR enables you to record flow details.
+You use flow details to gather statistics and/or for billing purposes.
+Accounting consists of recording flow details in a location you designate and
+in a format that you can retrieve at a later stage. IPQoS accounting relies on
+the exacct mechanism to store and retrieve flow information.
+.sp
+.LP
+A flow is defined by the 5-tuple - saddr, sport, daddr, dport and protocol.
+.sp
+.LP
+Typically, the accounting module is the last datapath element in a sequence of
+actions. Flow attributes include ToS/DS, user id, project id, creation time
+(time the flow was created), last seen (when pkts for the flow were last seen),
+action name (instance that recorded the flow information), nbytes and npackets.
+Attributes are split into groups entitled \fBbasic\fR and \fBextended\fR. The
+basic group records only the nbytes, npackets and action name, while the
+extended group is a superset of the basic group and records all attributes. The
+attributes to be recorded, in addition to the accounting file that contains
+flow details, are selected using \fBacctadm\fR(8). The \fBflowacct\fR module
+does not provide a mechanism to retrieve flow information from the accounting
+file nor to interpret the retrieved information.
+.SH STATISTICS
+.sp
+.LP
+The flowacct module exports the following statistics available through kstat:
+.sp
+.in +2
+.nf
+module: flowacct instance: <action id>
+ name: Flowacct statistics class <action name>
+ bytes_in_tbl <bytes in the flow table>
+ epackets <packets in error>
+ flows_in_tbl <flow records in the flow table>
+ nbytes <number of bytes through this instance>
+ npackets <number of packets>
+ usedmem <memory, in bytes, used by the flow table>
+.fi
+.in -2
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/kernel/ipp/sparcv9/flowacct\fR\fR
+.ad
+.sp .6
+.RS 4n
+64-bit module (SPARC only.)
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+\fBipqosconf\fR(8), \fBacctadm\fR(8), \fBlibexacct3LIB\fR,
+.BR dlcosmk (4IPP),
+.BR dscpmk (4IPP),
+.BR ipgpc (4IPP),
+.BR ipqos (4IPP),
+.BR tokenmt (4IPP),
+.BR tswtclmt (4IPP)
diff --git a/usr/src/man/man4ipp/ipgpc.4ipp b/usr/src/man/man4ipp/ipgpc.4ipp
new file mode 100644
index 0000000000..76662b8a28
--- /dev/null
+++ b/usr/src/man/man4ipp/ipgpc.4ipp
@@ -0,0 +1,96 @@
+'\" te
+.\" Copyright (c) 2004, Sun Microsystems Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH IPGPC 4IPP "Sep 29, 2004"
+.SH NAME
+ipgpc \- IP Generic Packet Classifier
+.SH DESCRIPTION
+.sp
+.LP
+The IP Generic Packet Classifier (\fBipgpc\fR) module provides packet
+classification at the Solaris IP layer. \fBipgpc\fR is an implementation of the
+Multi-Field (MF) classifier as described in \fIRFC2475: An Architecture for
+Differentiated Services\fR.
+.sp
+.LP
+The classifier is configured, at startup or dynamically, using a set of
+"filters." Filters describe selectors that are matched against input packets
+that are processed by the classifier. Some selectors feature exact matching
+data points, while others utilize non-exact or wildcard data points.
+.sp
+.LP
+Each filter is associated with a class describing the next actions to process a
+packet. There is a many-to-one (M-to-1) mapping relationship between filters
+and a class. Additionally, each class is aware of which filters are associated
+with it. A class is configured with a class name and a next action.
+.sp
+.LP
+Unlike traditional classifiers used in edge routers, \fBipgpc\fR is designed
+for a host or server device. A host-based classifier provides access to more
+resources and data than edge routers. User, project, and interface information
+are available at the host.
+.SH STATISTICS
+.sp
+.LP
+The \fBipgpc\fR module exports global and per-class statistics (available
+through kstat:)
+.sp
+.LP
+Global statistics:
+.sp
+.in +2
+.nf
+module: ipgpc instance:<action id>
+name: ipgpc global stats class: <action name>
+ crtime
+ snaptime
+ nbytes <number of classified bytes>
+ nclasses <number of classes>
+ nfilters <number of filters>
+ npackets <number of classified packets>
+ epackets <number of packets in error>
+.fi
+.in -2
+
+.sp
+.LP
+Per-class statistics:
+.sp
+.in +2
+.nf
+module: ipgpc instance:<action id>
+name: <class name> class: <action name>
+ crtime
+ snaptime
+ last match <time of last match>
+ nbytes <number of classified bytes>
+ npackets <number of classified packets>
+.fi
+.in -2
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/kernel/ipp/sparcv9/ipgpc\fR\fR
+.ad
+.RS 29n
+64-bit module (SPARC only.)
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR dlcosmk (4IPP),
+.BR dscpmk (4IPP),
+.BR flowacct (4IPP),
+.BR ipqos (4IPP),
+.BR tokenmt (4IPP),
+.BR tswtclmt (4IPP),
+.BR ipqosconf (8)
+.sp
+.LP
+\fIRFC 2475, An Architecture for Differentiated Services\fR S. Blake, D. Black,
+M. Carlson, E. Davies, Z. Wang, W. Weiss \(em The Internet Society, 1998
diff --git a/usr/src/man/man4ipp/ipqos.4ipp b/usr/src/man/man4ipp/ipqos.4ipp
new file mode 100644
index 0000000000..b533697e0a
--- /dev/null
+++ b/usr/src/man/man4ipp/ipqos.4ipp
@@ -0,0 +1,175 @@
+'\" te
+.\" Copyright (c) 2002, Sun Microsystems Inc.
+.\" All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH IPQOS 4IPP "Feb 25, 2002"
+.SH NAME
+ipqos \- IP Quality of Service
+.SH DESCRIPTION
+.sp
+.LP
+\fBipqos\fR is an implementation of the Differentiated Services model defined
+in \fIRFC2475: An Architecture for Differentiated Services\fR, which defines
+the following entities: multi-field classifier, meter, marker, and dropper. The
+Solaris implementation of \fBipqos\fR adds a flow accounting entity.
+.sp
+.LP
+These entities can be combined into processing paths that constitute a series
+of actions that are performed on groups of flows. The classifier groups
+together flows and directs them in a given processing path. Classifier
+configuration and path construction are achieved using the \fBipqosconf\fR(8)
+command.
+.sp
+.LP
+A summary of the \fBipqos\fR entities follows. For more information, refer to
+the corresponding man page for each entity.
+.sp
+.ne 2
+.na
+\fBipgpc\fR
+.ad
+.RS 21n
+An implementation of the classifier defined in the model. \fBipgpc\fR has been
+extended and is able to select traffic based on IP header parameters, user id,
+project id, interface name, interface group and direction.
+.RE
+
+.sp
+.ne 2
+.na
+\fBtokenmt, tswtclmt\fR
+.ad
+.RS 21n
+These modules implement different metering algorithms. \fBtokenmt\fR implements
+both \fIRFC2697: A Single Rate Three Color Marker \fR and \fIRFC 2698: A Two
+Rate Three Color Marker\fR. \fItswtclmt\fR implements \fIRFC2859: A Time
+Sliding Window Three Color Marker\fR. These modules only implement the metering
+functions defined in the RFCs.
+.RE
+
+.sp
+.ne 2
+.na
+\fBdlcosmk\fR
+.ad
+.RS 21n
+A marker entity that allows the setting of the user priority field of Ethernet
+frames as defined in the \fIIEEE 802.1D\fR specification. \fBdlcosmk\fR is only
+available with VLAN capable network interfaces.
+.RE
+
+.sp
+.ne 2
+.na
+\fBdscpmk\fR
+.ad
+.RS 21n
+A marker entity that enables the setting of the Differentiated Services Code
+Point Value in the IP header as defined in \fIRFC 2474: Definition of the
+Differentiated Services Field (DS Field)\fR in the IPv4 and IPv6 headers.
+.RE
+
+.sp
+.ne 2
+.na
+\fBflowacct\fR
+.ad
+.RS 21n
+An accounting module that utilizes the Solaris extended accounting facility.
+\fBflowacct\fR logs all flows with parameters used to build a charge back
+mechanism.
+.RE
+
+.SH STATISTICS
+.sp
+.LP
+\fBipqos\fR modules export statistics through the \fBkstat\fR facility.
+Exported statistics contain the following common parameters:
+.sp
+.ne 2
+.na
+\fBmodule\fR
+.ad
+.RS 12n
+module name
+.RE
+
+.sp
+.ne 2
+.na
+\fBinstance\fR
+.ad
+.RS 12n
+dynamic parameter identifying a specific instance
+.RE
+
+.sp
+.ne 2
+.na
+\fBname\fR
+.ad
+.RS 12n
+a string for global statistics (for example, ipgpc global stat) or a class
+name for per-class statistics for a classifier action
+.RE
+
+.sp
+.LP
+To verify classifier configuration, generate traffic for each of the configured
+classes and check that the statistic counters for the expected class are
+increased. If you're unsure about the parameters for your traffic, you can use
+\fBsnoop\fR(8) to determine them.
+.sp
+.LP
+Some actions have the instance id of the next configured action in their
+statistics. This instance id can be used to follow the action processing path.
+Instance id's -1 and -2 are the built-in actions continue and drop,
+respectively.
+.sp
+.LP
+Examples:
+.sp
+.LP
+To retrieve all statistics for ipgpc:
+.sp
+.LP
+ \fBkstat -m ipgpc\fR
+.sp
+.LP
+To retrieve statistics for the class http:
+.sp
+.LP
+ \fBkstat -m ipgpc -c http\fR
+.SH SEE ALSO
+.sp
+.LP
+.BR dlcosmk (4IPP),
+.BR dscpmk (4IPP),
+.BR flowacct (4IPP),
+.BR ipgpc (4IPP),
+.BR tokenmt (4IPP),
+.BR tswtclmt (4IPP),
+.BR ipqosconf (8)
+.sp
+.LP
+\fIRFC 2475, An Architecture for Differentiated Services\fR S. Blake, D. Black,
+M. Carlson, E. Davies, Z. Wang, W. Weiss \(em The Internet Society, 1998
+.sp
+.LP
+\fIRFC 2474, Definition of the Differentiated Services Field (DS Field) in the
+IPv4 and IPv6 Headers\fR K. Nichols, S. Blake, F. Baker, D. Black \(em The
+Internet Society, 1998
+.sp
+.LP
+\fIRFC 2697, A Single Rate Three Color Marker\fR J. Heinanen, R. Guerin \(em
+The Internet Society, 1999
+.sp
+.LP
+\fIRFC 2698, A Two Rate Three Color Marker\fR J. Heinanen, R. Guerin \(em The
+Internet Society, 1999
+.sp
+.LP
+\fIRFC 2859, A Time Sliding Window Three Colour Marker (TSWTCM)\fR W. Fang, N.
+Seddigh, B. Nandy \(em The Internet Society, 2000
diff --git a/usr/src/man/man4ipp/tokenmt.4ipp b/usr/src/man/man4ipp/tokenmt.4ipp
new file mode 100644
index 0000000000..1c361bdef6
--- /dev/null
+++ b/usr/src/man/man4ipp/tokenmt.4ipp
@@ -0,0 +1,171 @@
+'\" te
+.\" Copyright (c) 2004, Sun Microsystems Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH TOKENMT 4IPP "April 9, 2016"
+.SH NAME
+tokenmt \- Single and Two Rate Three Conformance Level Meter
+.SH DESCRIPTION
+.LP
+The \fBtokenmt\fR module can be configured as a Single or a Two Rate meter.
+Packets are deemed to belong to one of the three levels - Red, Yellow or Green
+- depending on the configured rate(s) and the burst sizes. When configured as a
+Single Rate meter, \fBtokenmt\fR can operate with just the Green and Red
+levels.
+.sp
+.LP
+Configuration parameters for \fBtokenmt\fR correspond to definitions in \fIRFC-
+2697\fR and \fIRFC- 2698\fR as follows:
+.sp
+.LP
+Configuring \fBtokenmt\fR as a Single Rate meter (from \fIRFC- 2697\fR):
+.br
+.in +2
+committed_rate - CIR
+.in -2
+.br
+.in +2
+committed_burst - CBS
+.in -2
+.br
+.in +2
+peak_burst - EBS
+.in -2
+.sp
+.LP
+(thus 'peak_burst' for a single rate meter is actually the 'excess burst' in
+the RFC. However, throughout the text the parameter name "peak burst" is used.)
+.sp
+.LP
+Configuring tokenmt as a Two Rate meter (from \fIRFC- 2698\fR):
+.br
+.in +2
+committed_rate - CIR
+.in -2
+.br
+.in +2
+peak_rate - PIR
+.in -2
+.br
+.in +2
+committed_burst - CBS
+.in -2
+.br
+.in +2
+peak_burst - PBS
+.in -2
+.sp
+.LP
+The meter is implemented using token buckets C and P, which initially hold
+tokens equivalent to committed and peak burst sizes (bits) respectively. When a
+packet of size \fI B\fR bits arrive at time \fI t\fR, the following occurs:
+.sp
+.in +2
+.nf
+When operating as a Single Rate meter, the outcome (level)
+is decided as follows:
+ - Update tokens in C and P
+ o Compute no. of tokens accumulated since the
+ last time packet was seen at the committed rate as
+ T(t) = committed rate * (t - t')
+ (where t' is the time the last packet was seen)
+ o Add T tokens to C up to a maximum of committed burst
+ size. Add remaining tokens ((C+T) - Committed Burst),
+ if any, to P, to a maximum of peak burst size.
+ - Decide outcome
+ o If not color aware
+ o If B <= C, outcome is GREEN and C -= B.
+ o Else, if B <= P, outcome is YELLOW and P -= B.
+ o Else, outcome is Red.
+ o Else,
+ o obtain DSCP from packet
+ o obtain color from color_map, color_map[DSCP]
+ o if (color is GREEN) and (B <= C), outcome is
+ GREEN and C -= B.
+ o Else, if (color is GREEN or YELLOW) and
+ (B <= P), outcome is YELLOW and P -= B.
+ o Else, outcome is RED.
+ Note that if peak_burst and yellow_next_actions are
+ not specified (that is, a single rate meter with two
+ outcomes), the outcome is never YELLOW.
+.fi
+.in -2
+
+.sp
+.LP
+When operating as a Two Rate meter, the outcome (level) is decided as follows:
+.sp
+.in +2
+.nf
+- Update tokens in C and P
+ o Compute no. of tokens accumulated since the last time a
+ packet was seen at the committed and peak rates as
+ Tc(t) = committed rate * (t - t')
+ Tp(t) = peak rate * (t - t')
+ (where t' is the time the last packet was seen)
+ o Add Tc to C up to a maximum of committed burst size
+ o Add Tp to P up to a maximum of peak burst size
+ - Decide outcome
+ o If not color aware
+ o If B > P, outcome is RED.
+ o Else, if B > C, outcome is YELLOW and P -= B
+ o Else, outcome is GREEN and C -= B & P -= B
+ o Else,
+ o obtain DSCP from packet
+ o obtain color from color_map, color_map[DSCP]
+ o if (color is RED) or (B > P), outcome is RED
+ o Else, if (color is YELLOW) or (B > C),
+ outcome is YELLOW and P -= B
+ o Else, outcome is GREEN and C -= B & P -= B
+.fi
+.in -2
+
+.SH STATISTICS
+.LP
+The \fBtokenmt\fR module exports the following statistics through \fBkstat\fR:
+.sp
+.LP
+Global statistics:
+.sp
+.in +2
+.nf
+module: tokenmt instance: <action id>
+ name: tokenmt statistics class <action name>
+ epackets <number of packets in error>
+ green_bits <number of bits in green>
+ green_packets <number of packets in green>
+ red_bits <number of bits in red>
+ red_packets <number of packets in red>
+ yellow_bits <number of bits in yellow>
+ yellow packets <number of packets in yellow>
+.fi
+.in -2
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/kernel/ipp/sparcv9/tokenmt\fR\fR
+.ad
+.sp .6
+.RS 4n
+64-bit module (SPARC only.)
+.RE
+
+.SH SEE ALSO
+.LP
+.BR dlcosmk (4IPP),
+.BR dscpmk (4IPP),
+.BR flowacct (4IPP),
+.BR ipgpc (4IPP),
+.BR ipqos (4IPP),
+.BR tswtclmt (4IPP),
+.BR ipqosconf (8)
+.sp
+.LP
+\fIRFC 2697, A Single Rate Three Color Marker\fR J. Heinanen, R. Guerin \(em
+The Internet Society, 1999
+.sp
+.LP
+\fIRFC 2698, A Two Rate Three Color Marker\fR J. Heinanen, R. Guerin \(em The
+Internet Society, 1999
diff --git a/usr/src/man/man4ipp/tswtclmt.4ipp b/usr/src/man/man4ipp/tswtclmt.4ipp
new file mode 100644
index 0000000000..278b98e96f
--- /dev/null
+++ b/usr/src/man/man4ipp/tswtclmt.4ipp
@@ -0,0 +1,80 @@
+'\" te
+.\" Copyright (c) 2004, Sun Microsystems Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH TSWTCLMT 4IPP "Sep 29, 2004"
+.SH NAME
+tswtclmt \- Time Sliding Window Three Conformance Level Meter
+.SH DESCRIPTION
+.sp
+.LP
+The Time Sliding Window Three Conformance level meter (\fBtswtcl\fR) meters a
+traffic stream and determines the conformance level of its packets.
+.sp
+.LP
+Packets are deemed to belong to one of the three levels, Red, Yellow or Green,
+depending on the committed and peak rate.
+.sp
+.LP
+The meter provides an estimate of the running average bandwidth. It takes into
+account burstiness and smoothes out its estimate to approximate the
+longer-term measured sending rate of the traffic stream.
+.sp
+.LP
+The estimated bandwidth approximates the running average bandwidth of the
+traffic stream over a specific window (time interval). \fBtswtcl\fR estimates
+the average bandwidth using a time-based estimator. When a packet arrives for a
+class, \fBtswtcl\fR re-computes the average rate by using the rate in the last
+window (time interval) and the size of the arriving packet. The window is then
+slid to start at the current time (the packet arrival time). If the computed
+rate is less than the committed configuration parameter, the packet is deemed
+Green; else if the rate is less than the peak rate, it is Yellow; else Red. To
+avoid dropping multiple packets within a TCP window, \fBtswtcl\fR
+probabilistically assigns one of the three conformance level to the packet.
+.SH STATISTICS
+.sp
+.LP
+The \fBtswtcl\fR module exports global and per-class statistics through kstat:
+.sp
+.LP
+Global statistics:
+.sp
+.in +2
+.nf
+module: tswtclmt instance: <action id>
+ name: tswtclmt statistics class <action name>
+ green_bits <number of bit in green>
+ green_packets <number of packets in green>
+ red_bits <number of bits in red>
+ red_packets <number of packets in red>
+ yellow_bits <number of bits in yellow>
+ yellow_packets <number of packets in yellow>
+.fi
+.in -2
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/kernel/ipp/sparcv9/tswtclmt\fR\fR
+.ad
+.sp .6
+.RS 4n
+64-bit module (SPARC only.)
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR dlcosmk (4IPP),
+.BR dscpmk (4IPP),
+.BR flowacct (4IPP),
+.BR ipgpc (4IPP),
+.BR ipqos (4IPP),
+.BR tokenmt (4IPP),
+.BR ipqosconf (8)
+.sp
+.LP
+\fIRFC 2859, A Time Sliding Window Three Colour Marker (TSWTCM)\fR W. Fang, N.
+Seddigh, B. Nandy \(em The Internet Society, 2000
diff --git a/usr/src/man/man4m/Makefile b/usr/src/man/man4m/Makefile
new file mode 100644
index 0000000000..a32665e699
--- /dev/null
+++ b/usr/src/man/man4m/Makefile
@@ -0,0 +1,59 @@
+#
+# This file and its contents are supplied under the terms of the
+# Common Development and Distribution License ("CDDL"), version 1.0.
+# You may only use this file in accordance with the terms of version
+# 1.0 of the CDDL.
+#
+# A full copy of the text of the CDDL should have accompanied this
+# source. A copy of the CDDL is also available via the Internet
+# at http://www.illumos.org/license/CDDL.
+#
+
+#
+# Copyright 2011, Richard Lowe
+# Copyright 2013 Nexenta Systems, Inc. All rights reserved.
+# Copyright 2015 Joyent, Inc.
+#
+
+include $(SRC)/Makefile.master
+
+MANSECT= 4m
+
+_MANFILES = bufmod.4m \
+ connld.4m \
+ datafilt.4m \
+ ldterm.4m \
+ pckt.4m \
+ pfmod.4m \
+ pipemod.4m \
+ ptem.4m \
+ sppptun.4m \
+ timod.4m \
+ tirdwr.4m \
+ ttcompat.4m \
+ usb_ah.4m \
+ usbkbm.4m \
+ usbms.4m \
+ vuidmice.4m
+
+sparc_MANFILES=
+
+MANLINKS= vuid2ps2.4m \
+ vuid3ps2.4m \
+ vuidm3p.4m \
+ vuidm4p.4m \
+ vuidm5p.4m
+
+MANFILES= $(_MANFILES) $($(MACH)_MANFILES)
+
+vuid2ps2.4m := LINKSRC = vuidmice.4m
+vuid3ps2.4m := LINKSRC = vuidmice.4m
+vuidm3p.4m := LINKSRC = vuidmice.4m
+vuidm4p.4m := LINKSRC = vuidmice.4m
+vuidm5p.4m := LINKSRC = vuidmice.4m
+
+.KEEP_STATE:
+
+include $(SRC)/man/Makefile.man
+
+install: $(ROOTMANFILES) $(ROOTMANLINKS)
diff --git a/usr/src/man/man4m/bufmod.4m b/usr/src/man/man4m/bufmod.4m
new file mode 100644
index 0000000000..abeb22ad78
--- /dev/null
+++ b/usr/src/man/man4m/bufmod.4m
@@ -0,0 +1,322 @@
+'\" te
+.\" Copyright (c) 1999, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH BUFMOD 4M "Nov 11, 1997"
+.SH NAME
+bufmod \- STREAMS Buffer Module
+.SH SYNOPSIS
+.LP
+.nf
+\fB#include <sys/bufmod.h>\fR
+.fi
+
+.LP
+.nf
+\fBioctl(fd, I_PUSH, "bufmod");\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBbufmod\fR is a \fBSTREAMS\fR module that buffers incoming messages, reducing
+the number of system calls and the associated overhead required to read and
+process them. Although \fBbufmod\fR was originally designed to be used in
+conjunction with \fBSTREAMS-based\fR networking device drivers, the version
+described here is general purpose so that it can be used anywhere \fBSTREAMS\fR
+input buffering is required.
+.SS "Read-side Behavior"
+.sp
+.LP
+The behavior of \fBbufmod\fR depends on various parameters and flags that can
+be set and queried as described below under \fBIOCTLS\fR. \fBbufmod\fR collects
+incoming \fBM_DATA\fR messages into chunks, passing each chunk upstream when
+the chunk becomes full or the current read timeout expires. It optionally
+converts \fBM_PROTO\fR messages to \fBM_DATA\fR and adds them to chunks as
+well. It also optionally adds to each message a header containing a timestamp,
+and a cumulative count of messages dropped on the stream read side due to
+resource exhaustion or flow control. Thedefault settings of \fBbufmod\fR allow
+it to drop messages when flow control sets in or resources are exhausted;
+disabling headers and explicitly requesting no drops makes \fBbufmod\fR pass
+all messages through. Finally, \fBbufmod\fR is capable of truncating upstream
+messages to a fixed, programmable length.
+.sp
+.LP
+When a message arrives, \fBbufmod\fR processes it in several steps. The
+following paragraphs discuss each step in turn.
+.sp
+.LP
+Upon receiving a message from below, if the \fBSB_NO_HEADER\fR flag is not set,
+\fBbufmod\fR immediately timestamps it and saves the current time value for
+later insertion in the header described below.
+.sp
+.LP
+Next, if \fBSB_NO_PROTO_CVT\fR is not set, \fBbufmod\fR converts all leading
+\fBM_PROTO\fR blocks in the message to \fBM_DATA\fR blocks, altering only the
+message type field and leaving the contents alone.
+.sp
+.LP
+It then truncates the message to the current \fIsnapshot length\fR, which is
+set with the \fBSBIOCSSNAP\fR \fBioctl\fR described below.
+.sp
+.LP
+Afterwards, if \fBSB_NO_HEADER\fR is not set, \fBbufmod\fR prepends a header to
+the converted message. This header is defined as follows.
+.sp
+.in +2
+.nf
+struct sb_hdr {
+ uint_t sbh_origlen;
+ uint_t sbh_msglen;
+ uint_t sbh_totlen;
+ uint_t sbh_drops;
+#if defined(_LP64) || defined(_I32LPx)
+ struct timeval32 sbh_timestamp;
+#else
+ struct timeval sbh_timestamp;
+#endif /* !_LP64 */
+};
+.fi
+.in -2
+
+.sp
+.LP
+The \fBsbh_origlen\fR field gives the message's original length before
+truncation in bytes. The \fBsbh_msglen\fR field gives the length in bytes of
+the message after the truncation has been done. \fBsbh_totlen\fR gives the
+distance in bytes from the start of the truncated message in the current chunk
+(described below) to the start of the next message in the chunk; the value
+reflects any padding necessary to insure correct data alignment for the host
+machine and includes the length of the header itself. \fBsbh_drops\fR reports
+the cumulative number of input messages that this instance of \fBbufmod\fR has
+dropped due to flow control or resource exhaustion. In the current
+implementation message dropping due to flow control can occur only if the
+\fBSB_NO_DROPS\fR flag is not set. (Note: this accounts only for events
+occurring within \fBbufmod\fR, and does not count messages dropped by
+downstream or by upstream modules.) The \fBsbh_timestamp\fR field contains the
+message arrival time expressed as a \fBstruct timeval\fR.
+.sp
+.LP
+After preparing a message, \fBbufmod\fR attempts to add it to the end of the
+current chunk, using the chunk size and timeout values to govern the addition.
+The chunk size and timeout values are set and inspected using the \fBioctl()\fR
+calls described below. If adding the new message would make the current chunk
+grow larger than the chunk size, \fBbufmod\fR closes off the current chunk,
+passing it up to the next module in line, and starts a new chunk. If adding the
+message would still make the new chunk overflow, the module passes it upward in
+an over-size chunk of its own. Otherwise, the module concatenates the message
+to the end of the current chunk.
+.sp
+.LP
+To ensure that messages do not languish forever in an accumulating chunk,
+\fBbufmod\fR maintains a read timeout. Whenever this timeout expires, the
+module closes off the current chunk and passes it upward. The module restarts
+the timeout period when it receives a read side data message and a timeout is
+not currently active. These two rules insure that \fBbufmod\fR minimizes the
+number of chunks it produces during periods of intense message activity and
+that it periodically disposes of all messages during slack intervals, but
+avoids any timeout overhead when there is no activity.
+.sp
+.LP
+\fBbufmod\fR handles other message types as follows. Upon receiving an
+\fBM_FLUSH\fR message specifying that the read queue be flushed, the module
+clears the currently accumulating chunk and passes the message on to the module
+or driver above. (Note: \fBbufmod\fR uses zero length \fBM_CTL\fR messages for
+internal synchronization and does not pass them through.) \fBbufmod\fR passes
+all other messages through unaltered to its upper neighbor, maintaining message
+order for non high priority messages by passing up any accumulated chunk first.
+.sp
+.LP
+If the \fBSB_DEFER_CHUNK\fR flag is set, buffering does not begin until the
+second message is received within the timeout window.
+.sp
+.LP
+If the \fBSB_SEND_ON_WRITE\fR flag is set, \fBbufmod\fR passes up the read side
+any buffered data when a message is received on the write side.
+\fBSB_SEND_ON_WRITE\fR and \fBSB_DEFER_CHUNK\fR are often used together.
+.SS "Write-side Behavior"
+.sp
+.LP
+\fBbufmod\fR intercepts \fBM_IOCTL\fR messages for the \fBioctl\fRs described
+below. The module passes all other messages through unaltered to its lower
+neighbor. If \fBSB_SEND_ON_WRITE\fR is set, message arrival on the writer side
+suffices to close and transmit the current read side chunk.
+.SH IOCTLS
+.sp
+.LP
+\fBbufmod\fR responds to the following \fBioctl\fRs.
+.sp
+.ne 2
+.na
+\fB\fBSBIOCSTIME\fR \fR
+.ad
+.RS 16n
+Set the read timeout value to the value referred to by the \fBstruct timeval\fR
+pointer given as argument. Setting the timeout value to zero has the
+side-effect of forcing the chunk size to zero as well, so that the module will
+pass all incoming messages upward immediately upon arrival. Negative values are
+rejected with an \fBEINVAL\fR error.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSBIOCGTIME\fR \fR
+.ad
+.RS 16n
+Return the read timeout in the \fBstruct timeval\fR pointed to by the argument.
+If the timeout has been cleared with the \fBSBIOCCTIME\fR \fBioctl\fR, return
+with an \fBERANGE\fR error.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSBIOCCTIME\fR \fR
+.ad
+.RS 16n
+Clear the read timeout, effectively setting its value to infinity. This results
+in no timeouts being active and the chunk being delivered when it is full.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSBIOCSCHUNK\fR \fR
+.ad
+.RS 16n
+Set the chunk size to the value referred to by the \fIuint_t\fR pointer given
+as argument. See Notes for a description of effect on stream head high water
+mark.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSBIOCGCHUNK\fR \fR
+.ad
+.RS 16n
+Return the chunk size in the \fIuint_t\fR pointed to by the argument.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSBIOCSSNAP\fR \fR
+.ad
+.RS 16n
+Set the current snapshot length to the value given in the \fBuint_t\fR pointed
+to by the \fBioctl\fR's final argument. \fBbufmod\fR interprets a snapshot
+length value of zero as meaning infinity, so it will not alter the message. See
+Notes for a description of effect on stream head high water mark.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSBIOCGSNAP\fR \fR
+.ad
+.RS 16n
+Returns the current snapshot length in the \fBuint_t\fR pointed to by the
+\fBioctl\fR's final argument.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSBIOCSFLAGS\fR \fR
+.ad
+.RS 16n
+Set the current flags to the value given in the \fBuint_t\fR pointed to by the
+\fBioctl\fR's final argument. Possible values are a combination of the
+following.
+.sp
+.ne 2
+.na
+\fB\fBSB_SEND_ON_WRITE\fR \fR
+.ad
+.RS 21n
+Transmit the read side chunk on arrival of a message on the write side.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSB_NO_HEADER\fR \fR
+.ad
+.RS 21n
+Do not add headers to read side messages.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSB_NO_DROPS\fR \fR
+.ad
+.RS 21n
+Do not drop messages due to flow control upstream.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSB_NO_PROTO_CVT\fR \fR
+.ad
+.RS 21n
+Do not convert \fBM_PROTO\fR messages into \fBM_DATA\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSB_DEFER_CHUNK\fR \fR
+.ad
+.RS 21n
+Begin buffering on arrival of the second read side message in a timeout
+interval.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSBIOCGFLAGS\fR \fR
+.ad
+.RS 16n
+Returns the current flags in the \fBuint_t\fR pointed to by the \fBioctl\fR's
+final argument.
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR pfmod (4M),
+.BR dlpi (4P)
+.SH NOTES
+.sp
+.LP
+Older versions of \fBbufmod\fR did not support the behavioral flexibility
+controlled by the \fBSBIOCSFLAGS\fR \fBioctl\fR. Applications that wish to take
+advantage of this flexibility can guard themselves against old versions of the
+module by invoking the \fBSBIOCGFLAGS\fR ioctl and checking for an \fBEINVAL\fR
+error return.
+.sp
+.LP
+When buffering is enabled by issuing an \fBSBIOCSCHUNK\fR ioctl to set the
+chunk size to a non zero value, \fBbufmod\fR sends a \fBSETOPTS\fR message to
+adjust the stream head high and low water marks to accommodate the chunked
+messages.
+.sp
+.LP
+When buffering is disabled by setting the chunk size to zero, message
+truncation can have a significant influence on data traffic at the stream head
+and therefore the stream head high and low water marks are adjusted to new
+values appropriate for the smaller truncated message sizes.
+.SH BUGS
+.sp
+.LP
+\fBbufmod\fR does not defend itself against allocation failures, so that it is
+possible, although very unlikely, for the stream head to use inappropriate high
+and low water marks after the chunk size or snapshot length have changed.
diff --git a/usr/src/man/man4m/connld.4m b/usr/src/man/man4m/connld.4m
new file mode 100644
index 0000000000..06c02082e9
--- /dev/null
+++ b/usr/src/man/man4m/connld.4m
@@ -0,0 +1,122 @@
+'\" te
+.\" Copyright 2004 AT&T
+.\" Copyright (C) 2004, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH CONNLD 4M "June 19, 2021"
+.SH NAME
+connld \- line discipline for unique stream connections
+.SH SYNOPSIS
+.nf
+\fBint ioctl(\fIfd\fR, I_PUSH, "connld");\fR
+.fi
+
+.SH DESCRIPTION
+\fBconnld\fR is a STREAMS-based module that provides unique connections between
+server and client processes. It can only be pushed (see \fBstreamio\fR(4I))
+onto one end of a STREAMS-based pipe that may subsequently be attached to a
+name in the file system name space with \fBfattach\fR(3C). After the pipe end
+is attached, a new pipe is created internally when an originating process
+attempts to \fBopen\fR(2) or \fBcreat\fR(2) the file system name. A file
+descriptor for one end of the new pipe is packaged into a message identical to
+that for the ioctl \fBI_SENDFD\fR (see \fBstreamio\fR(4I)) and is transmitted
+along the stream to the server process on the other end. The originating
+process is blocked until the server responds.
+.sp
+.LP
+The server responds to the \fBI_SENDFD\fR request by accepting the file
+descriptor through the \fBI_RECVFD\fR ioctl message. When this happens, the
+file descriptor associated with the other end of the new pipe is transmitted to
+the originating process as the file descriptor returned from \fBopen\fR(2) or
+\fBcreat\fR(2).
+.sp
+.LP
+If the server does not respond to the \fBI_SENDFD\fR request, the stream that
+the \fBconnld\fR module is pushed on becomes uni-directional because the server
+will not be able to retrieve any data off the stream until the \fBI_RECVFD\fR
+request is issued. If the server process exits before issuing the
+\fBI_RECVFD\fR request, the \fBopen\fR(2) or the \fBcreat\fR(2) invocation will
+fail and return -1 to the originating process.
+.sp
+.LP
+When the \fBconnld\fR module is pushed onto a pipe, it ignores messages going
+back and forth through the pipe.
+.SH ERRORS
+On success, an open of \fBconnld\fR returns 0. On failure, \fBerrno\fR is set
+to the following values:
+.sp
+.ne 2
+.na
+\fB\fBEINVAL\fR \fR
+.ad
+.RS 11n
+A stream onto which \fBconnld\fR is being pushed is not a pipe or the pipe does
+not have a write queue pointer pointing to a stream head read queue.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEINVAL\fR \fR
+.ad
+.RS 11n
+The other end of the pipe onto which \fBconnld\fR is being pushed is linked
+under a multiplexor.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEPIPE\fR \fR
+.ad
+.RS 11n
+\fBconnld\fR is being pushed onto a pipe end whose other end is no longer
+there.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBENOMEM\fR \fR
+.ad
+.RS 11n
+An internal pipe could not be created.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBENXIO\fR \fR
+.ad
+.RS 11n
+An \fBM_HANGUP\fR message is at the stream head of the pipe onto which
+\fBconnld\fR is being pushed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEAGAIN\fR \fR
+.ad
+.RS 11n
+Internal data structures could not be allocated.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBENFILE\fR \fR
+.ad
+.RS 11n
+A file table entry could not be allocated.
+.RE
+
+.SH SEE ALSO
+.BR creat (2),
+.BR open (2),
+.BR fattach (3C),
+.BR streamio (4I)
+.sp
+.LP
+\fISTREAMS Programming Guide\fR
diff --git a/usr/src/man/man4m/datafilt.4m b/usr/src/man/man4m/datafilt.4m
new file mode 100644
index 0000000000..ab35965eeb
--- /dev/null
+++ b/usr/src/man/man4m/datafilt.4m
@@ -0,0 +1,48 @@
+.\"
+.\" This file and its contents are supplied under the terms of the
+.\" Common Development and Distribution License ("CDDL"), version 1.0.
+.\" You may only use this file in accordance with the terms of version
+.\" 1.0 of the CDDL.
+.\"
+.\" A full copy of the text of the CDDL should have accompanied this
+.\" source. A copy of the CDDL is also available via the Internet at
+.\" http://www.illumos.org/license/CDDL.
+.\"
+.\"
+.\" Copyright 2014 Ryan Zezeski
+.\" Copyright 2015 Joyent, Inc.
+.\"
+.Dd Apr 21, 2015
+.Dt DATAFILT 4M
+.Os
+.Sh NAME
+.Nm datafilt
+.Nd socket filter module for deferred TCP connections
+.Sh DESCRIPTION
+The
+.Nm datafilt
+socket filter provides deferment of
+.Xr accept 3SOCKET
+for TCP connections.
+The accept call will not return until at least one byte has been
+buffered by the kernel.
+Deferment assures the application that the first call to
+.Xr read 2
+or
+.Xr recv 3SOCKET
+will not block.
+It reduces unnecessary switching between user and kernel.
+.Sh EXAMPLES
+.Ss Example 1
+Enable deferment on the listening socket.
+.Bd -literal
+ setsockopt(lsock, SOL_FILTER, FIL_ATTACH, "datafilt", 8);
+.Ed
+.Ss Example 2
+Disable deferment on the listening socket.
+.Bd -literal
+ char filt[] = "datafilt";
+ setsockopt(lsock, SOL_FILTER, FIL_DETACH, filt, strlen(filt) + 1);
+.Ed
+.Sh SEE ALSO
+.Xr setsockopt 3SOCKET
diff --git a/usr/src/man/man4m/ldterm.4m b/usr/src/man/man4m/ldterm.4m
new file mode 100644
index 0000000000..c284c884b1
--- /dev/null
+++ b/usr/src/man/man4m/ldterm.4m
@@ -0,0 +1,282 @@
+'\" te
+.\" Copyright 1989 AT&T
+.\" Copyright (C) 1999, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH LDTERM 4M "June 20, 2021"
+.SH NAME
+ldterm \- standard STREAMS terminal line discipline module
+.SH SYNOPSIS
+.nf
+#include <sys/stream.h>
+.fi
+
+.LP
+.nf
+#include <sys/termios.h>
+.fi
+
+.LP
+.nf
+int ioctl(\fIfd\fR,I_PUSH,"ldterm");
+.fi
+
+.SH DESCRIPTION
+The \fBldterm\fR STREAMS module provides most of the \fBtermio\fR(4I) terminal
+interface. The \fBvis \fRmodule does not perform the low-level device control
+functions specified by flags in the \fBc_cflag\fR word of the
+\fBtermio/termios\fR structure, or by the \fBIGNBRK\fR, \fBIGNPAR\fR,
+\fBPARMRK\fR, or \fBINPCK\fR flags in the \fBc_iflag\fR word of the
+\fBtermio/termios\fR structure. Those functions must be performed by the
+driver or by modules pushed below the \fBldterm\fR module. \fBThe \fR\fBldterm
+module\fR performs all other \fBtermio/termios\fR functions, though some may
+require the cooperation of the driver or modules pushed below \fBldterm\fR and
+may not be performed in some cases. These include the \fBIXOFF\fR flag in the
+\fBc_iflag\fR word and the delays specified in the \fBc_oflag\fR word.
+.sp
+.LP
+\fBThe \fR\fBldterm module\fR also handles single and multi-byte characters
+from various codesets including both Extended Unix Code (\fBEUC\fR) and non-EUC
+codesets.
+.sp
+.LP
+The remainder of this section describes the processing of various \fBSTREAMS\fR
+messages on the read- and write-side.
+.SS "Read-side Behavior"
+Various types of STREAMS messages are processed as follows:
+.sp
+.ne 2
+.na
+\fB\fBM_BREAK\fR \fR
+.ad
+.RS 12n
+Depending on the state of the \fBBRKINT\fR flag, either an interrupt signal is
+generated or the message is treated as if it were an \fBM_DATA\fR message
+containing a single \fBASCII NUL\fR character when this message is received.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM_DATA\fR \fR
+.ad
+.RS 12n
+This message is normally processed using the standard \fBtermio\fR input
+processing. If the \fBICANON\fR flag is set, a single input record (``line'')
+is accumulated in an internal buffer and sent upstream when a line-terminating
+character is received. If the \fBICANON\fR flag is not set, other input
+processing is performed and the processed data are passed upstream.
+.sp
+If output is to be stopped or started as a result of the arrival of characters
+(usually \fBCNTRL-Q\fR and \fBCNTRL-S),\fR \fBM_STOP\fR and \fBM_START\fR
+messages are sent downstream. If the \fBIXOFF\fR flag is set and input is to be
+stopped or started as a result of flow-control considerations, \fBM_STOPI\fR
+and \fBM_STARTI\fR messages are sent downstream.
+.sp
+\fBM_DATA\fR messages are sent downstream, as necessary, to perform echoing.
+.sp
+If a signal is to be generated, an \fBM_FLUSH\fR message with a flag byte of
+\fBFLUSHR\fR is placed on the read queue. If the signal is also to flush
+output, an \fBM_FLUSH\fR message with a flag byte of \fBFLUSHW\fR is sent
+downstream.
+.RE
+
+.sp
+.LP
+All other messages are passed upstream unchanged.
+.SS "Write-side Behavior"
+Various types of \fBSTREAMS\fR messages are processed as follows:
+.sp
+.ne 2
+.na
+\fB\fBM_FLUSH\fR \fR
+.ad
+.RS 13n
+The write queue of the module is flushed of all its data messages and the
+message is passed downstream.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM_IOCTL\fR \fR
+.ad
+.RS 13n
+The function of this \fBioctl\fR is performed and the message is passed
+downstream in most cases. The \fBTCFLSH\fR and \fBTCXONC\fR \fBioctls\fR can
+be performed entirely in the \fBldterm\fR module, so the reply is sent
+upstream and the message is not passed downstream.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM_DATA\fR \fR
+.ad
+.RS 13n
+If the \fBOPOST\fR flag is set, or both the \fBXCASE\fR and \fBICANON\fR flags
+are set, output processing is performed and the processed message is passed
+downstream along with any \fBM_DELAY\fR messages generated. Otherwise, the
+message is passed downstream without change.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM_CTL\fR \fR
+.ad
+.RS 13n
+If the size of the data buffer associated with the message is the size of
+\fBstruct iocblk\fR, \fBldterm\fR will perform functional negotiation to
+determine where the \fBtermio\fR(4I) processing is to be done. If the command
+field of the \fBiocblk\fR structure (\fBioc_cmd\fR) is set to
+\fBMC_NO_CANON\fR, the input canonical processing normally performed on
+\fBM_DATA\fR messages is disabled and those messages are passed upstream
+unmodified. (This is for the use of modules or drivers that perform their own
+input processing, such as a pseudo-terminal in \fBTIOCREMOTE\fR mode connected
+to a program that performs this processing). If the command is
+\fBMC_DO_CANON\fR, all input processing is enabled. If the command is
+\fBMC_PART_CANON\fR, then an \fBM_DATA\fR message containing a \fBtermios\fR
+structure is expected to be attached to the original \fBM_CTL\fR message. The
+\fBldterm\fR module will examine the \fBiflag\fR, \fBoflag\fR, and
+\fB\fR\fBlflag\fR fields of the \fBtermios\fR structure and from that point on,
+will process only those flags that have not been turned \fBON.\fR If none of
+the above commands are found, the message is ignored. In any case, the message
+is passed upstream.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM_FLUSH\fR \fR
+.ad
+.RS 13n
+The read queue of the module is flushed of all its data messages and all data
+in the record being accumulated are also flushed. The message is passed
+upstream.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM_IOCACK\fR \fR
+.ad
+.RS 13n
+The data contained within the message, which is to be returned to the process,
+are augmented if necessary, and the message is passed upstream.
+.RE
+
+.sp
+.LP
+All other messages are passed downstream unchanged.
+.SH IOCTLS
+\fBThe \fR\fBldterm module\fR processes the following \fBTRANSPARENT\fR
+ioctls. All others are passed downstream.
+.sp
+.ne 2
+.na
+\fB\fBTCGETS/TCGETA\fR \fR
+.ad
+.sp .6
+.RS 4n
+The message is passed downstream. If an acknowledgment is seen, the data
+provided by the driver and modules downstream are augmented and the
+acknowledgement is passed upstream.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBTCSETS/TCSETSW/TCSETSF/TCSETA/TCSETAW/TCSETAF\fR \fR
+.ad
+.sp .6
+.RS 4n
+The parameters that control the behavior of the \fBldterm\fR module are
+changed. If a mode change requires options at the stream head to be changed, an
+\fBM_SETOPTS\fR message is sent upstream. If the \fBICANON\fR flag is turned
+on or off, the read mode at the stream head is changed to message-nondiscard or
+byte-stream mode, respectively. If the \fBTOSTOP\fR flag is turned on or off,
+the tostop mode at the stream head is turned on or off, respectively. In any
+case, \fBldterm\fR passes the \fBioctl\fR on downstream for possible
+additional processing.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBTCFLSH\fR \fR
+.ad
+.sp .6
+.RS 4n
+If the argument is 0, an \fBM_FLUSH\fR message with a flag byte of \fBFLUSHR\fR
+is sent downstream and placed on the read queue. If the argument is 1, the
+write queue is flushed of all its data messages and an \fBM_FLUSH\fR message
+with a flag byte of \fBFLUSHW\fR is sent upstream and downstream. If the
+argument is 2, the write queue is flushed of all its data messages and an
+\fBM_FLUSH\fR message with a flag byte of \fBFLUSHRW\fR is sent downstream and
+placed on the read queue.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBTCXONC\fR \fR
+.ad
+.sp .6
+.RS 4n
+If the argument is 0 and output is not already stopped, an \fBM_STOP\fR message
+is sent downstream. If the argument is 1 and output is stopped, an
+\fBM_START\fR message is sent downstream. If the argument is 2 and input is
+not already stopped, an \fBM_STOPI\fR message is sent downstream. If the
+argument is 3 and input is stopped, an \fBM_STARTI\fR message is sent
+downstream.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBTCSBRK\fR \fR
+.ad
+.sp .6
+.RS 4n
+The message is passed downstream, so the driver has a chance to drain the data
+and then send an \fBM_IOCACK\fR message upstream.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEUC_WSET\fR \fR
+.ad
+.sp .6
+.RS 4n
+This call takes a pointer to an \fBeucioc\fR structure, and uses it to set the
+\fBEUC\fR line discipline's local definition for the code set widths to be used
+for subsequent operations. Within the stream, the line discipline may
+optionally notify other modules of this setting using \fBM_CTL\fR messages.
+When this call is received and the \fBeucioc\fR structure contains valid data,
+the line discipline changes into \fBEUC \fRhandling mode once the
+\fBeucioc\fR data is completely transferred to an internal data structure.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEUC_WGET\fR \fR
+.ad
+.sp .6
+.RS 4n
+This call takes a pointer to an \fBeucioc\fR structure, and returns in it the
+\fBEUC\fR code set widths currently in use by the \fBEUC\fR line discipline. If
+the current codeset of the line discipline is not an \fBEUC\fR one, the result
+is meaningless.
+.RE
+
+.SH SEE ALSO
+.BR termios (3C),
+.BR console (4D),
+.BR termio (4I)
+.sp
+.LP
+\fISTREAMS Programming Guide\fR
diff --git a/usr/src/man/man4m/pckt.4m b/usr/src/man/man4m/pckt.4m
new file mode 100644
index 0000000000..2805b857af
--- /dev/null
+++ b/usr/src/man/man4m/pckt.4m
@@ -0,0 +1,52 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 1990, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PCKT 4M "Feb 5, 2022"
+.SH NAME
+pckt \- STREAMS Packet Mode module
+.SH SYNOPSIS
+.nf
+int ioctl(\fI fd, \fRI_PUSH, "pckt");
+.fi
+
+.SH DESCRIPTION
+\fBpckt\fR is a STREAMS module that may be used with a pseudo terminal to
+packetize certain messages. The \fBpckt\fR module should be pushed (see
+\fBI_PUSH\fR on \fBstreamio\fR(4I)) onto the manager side of a pseudo terminal.
+.sp
+.LP
+Packetizing is performed by prefixing a message with an \fBM_PROTO\fR message.
+The original message type is stored in the 1 byte data portion of the
+\fBM_PROTO\fR message.
+.sp
+.LP
+On the read-side, only the \fBM_PROTO\fR, \fBM_PCPROTO\fR, \fBM_STOP\fR,
+\fBM_START\fR, \fBM_STOPI\fR, \fBM_STARTI\fR, \fBM_IOCTL\fR, \fBM_DATA\fR,
+\fBM_FLUSH\fR, and \fBM_READ\fR messages are packetized. All other message
+types are passed upstream unmodified.
+.sp
+.LP
+Since all unread state information is held in the manager's stream head read
+queue, flushing of this queue is disabled.
+.sp
+.LP
+On the write-side, all messages are sent down unmodified.
+.sp
+.LP
+With this module in place, all reads from the manager side of the pseudo
+terminal should be performed with the \fBgetmsg\fR(2) or \fBgetpmsg\fR()
+function. The control part of the message contains the message type. The data
+part contains the actual data associated with that message type. The onus is on
+the application to separate the data into its component parts.
+.SH SEE ALSO
+.BR getmsg (2),
+.BR ioctl (2),
+.BR streamio (4I),
+.BR termio (4I),
+.BR ldterm (4M),
+.BR ptem (4M)
+.sp
+.LP
+\fISTREAMS Programming Guide\fR
diff --git a/usr/src/man/man4m/pfmod.4m b/usr/src/man/man4m/pfmod.4m
new file mode 100644
index 0000000000..2d3622d25d
--- /dev/null
+++ b/usr/src/man/man4m/pfmod.4m
@@ -0,0 +1,255 @@
+'\" te
+.\" Copyright (C) 2006, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PFMOD 4M "Jun 18, 2006"
+.SH NAME
+pfmod \- STREAMS Packet Filter Module
+.SH SYNOPSIS
+.LP
+.nf
+#include <sys/pfmod.h>
+.fi
+
+.LP
+.nf
+ioctl(\fIfd\fR, IPUSH, "pfmod");
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBpfmod\fR is a \fBSTREAMS\fR module that subjects messages arriving on its
+read queue to a packet filter and passes only those messages that the filter
+accepts on to its upstream neighbor. Such filtering can be very useful for
+user-level protocol implementations and for networking monitoring programs that
+wish to view only specific types of events.
+.SS "Read-side Behavior"
+.sp
+.LP
+\fBpfmod\fR applies the current packet filter to all \fBM_DATA\fR and
+\fBM_PROTO\fR messages arriving on its read queue. The module prepares these
+messages for examination by first skipping over all leading \fBM_PROTO\fR
+message blocks to arrive at the beginning of the message's data portion. If
+there is no data portion, \fBpfmod\fR accepts the message and passes it along
+to its upstream neighbor. Otherwise, the module ensures that the part of the
+message's data that the packet filter might examine lies in contiguous memory,
+calling the \fBpullupmsg\fR(9F) utility routine if necessary to force
+contiguity. (Note: this action destroys any sharing relationships that the
+subject message might have had with other messages.) Finally, it applies the
+packet filter to the message's data, passing the entire message upstream to the
+next module if the filter accepts, and discarding the message otherwise. See
+PACKET FILTERS below for details on how the filter works.
+.sp
+.LP
+If there is no packet filter yet in effect, the module acts as if the filter
+exists but does nothing, implying that all incoming messages are accepted. The
+ioctls section below describes how to associate a packet filter with an
+instance of \fBpfmod\fR.
+.sp
+.LP
+\fBpfmod\fR passes all other messages through unaltered to its upper neighbor.
+.SS "Write-side Behavior"
+.sp
+.LP
+\fBpfmod\fR intercepts \fBM_IOCTL\fR messages for the \fIioctl\fR described
+below. The module passes all other messages through unaltered to its lower
+neighbor.
+.SH IOCTLS
+.sp
+.LP
+\fBpfmod\fR responds to the following \fIioctl\fR.
+.sp
+.ne 2
+.na
+\fB\fBPFIOCSETF\fR \fR
+.ad
+.RS 14n
+This \fIioctl\fR directs the module to replace its current packet filter, if
+any, with the filter specified by the \fBstruct packetfilt\fR pointer named by
+its final argument. This structure is defined in \fB<sys/pfmod.h>\fR as:
+.RE
+
+.sp
+.in +2
+.nf
+struct packetfilt {
+ uchar_t Pf_Priority; /* priority of filter */
+ uchar_t Pf_FilterLen; /* length of filter cmd list */
+ ushort_t Pf_Filter[ENMAXFILTERS]; /* filter command list */
+};
+.fi
+.in -2
+
+.sp
+.LP
+The \fBPf_Priority\fR field is included only for compatibility with other
+packet filter implementations and is otherwise ignored. The packet filter
+itself is specified in the \fBPf_Filter\fR array as a sequence of two-byte
+commands, with the \fBPf_FilterLen\fR field giving the number of commands in
+the sequence. This implementation restricts the maximum number of commands in a
+filter (\fBENMAXFILTERS\fR) to 255. The next section describes the available
+commands and their semantics.
+.SH PACKET FILTERS
+.sp
+.LP
+A packet filter consists of the filter command list length (in units of
+\fBushort_t\fRs), and the filter command list itself. (The priority field
+mentioned above is ignored in this implementation.) Each filter command list
+specifies a sequence of actions that operate on an internal stack of ushort_ts
+("shortwords") or an offset register. The offset register is initially zero.
+Each shortword of the command list specifies an action and a binary operator.
+Using _n_ as shorthand for the next shortword of the instruction stream and
+_%oreg_ for the offset register, the list of actions is:
+.sp
+.in +2
+.nf
+ COMMAND SHORTWORDS ACTION
+ ENF_PUSHLIT 2 Push _n_ on the stack.
+ ENF_PUSHZERO 1 Push zero on the stack.
+ ENF_PUSHONE 1 Push one on the stack.
+ ENF_PUSHFFFF 1 Push 0xFFFF on the stack.
+ ENF_PUSHFF00 1 Push 0xFF00 on the stack.
+ ENF_PUSH00FF 1 Push 0x00FF on the stack.
+ ENF_LOAD_OFFSET 2 Load _n_ into _%oreg_.
+ ENF_BRTR 2 Branch forward _n_ shortwords if
+ the top element of the stack is
+ non-zero.
+ ENF_BRFL 2 Branch forward _n_ shortwords if
+ the top element of the stack is zero.
+ ENF_POP 1 Pop the top element from the stack.
+ ENF_PUSHWORD+m 1 Push the value of shortword (_m_ +
+ _%oreg_) of the packet onto the stack.
+.fi
+.in -2
+
+.sp
+.LP
+The binary operators can be from the set {\fBENF_EQ\fR, \fBENF_NEQ\fR,
+\fBENF_LT\fR, \fBENF_LE\fR, \fBENF_GT\fR,\fBENF_GE\fR, \fBENF_AND\fR,
+\fBENF_OR\fR, \fBENF_XOR\fR} which operate on the top two elements of the stack
+and replace them with its result.
+.sp
+.LP
+When both an action and operator are specified in the same shortword, the
+action is performed followed by the operation.
+.sp
+.LP
+The binary operator can also be from the set {\fBENF_COR\fR, \fBENF_CAND\fR,
+\fBENF_CNOR\fR, \fBENF_CNAND\fR}. These are "short-circuit" operators, in that
+they terminate the execution of the filter immediately if the condition they
+are checking for is found, and continue otherwise. All pop two elements from
+the stack and compare them for equality; \fBENF_CAND\fR returns false if the
+result is false; \fBENF_COR\fR returns true if the result is true;
+\fBENF_CNAND\fR returns true if the result is false; \fBENF_CNOR\fR returns
+false if the result is true. Unlike the other binary operators, these four do
+not leave a result on the stack, even if they continue.
+.sp
+.LP
+The short-circuit operators should be used when possible, to reduce the amount
+of time spent evaluating filters. When they are used, you should also arrange
+the order of the tests so that the filter will succeed or fail as soon as
+possible; for example, checking the \fBIP\fR destination field of a \fBUDP\fR
+packet is more likely to indicate failure than the packet type field.
+.sp
+.LP
+The special action \fBENF_NOPUSH\fR and the special operator \fBENF_NOP\fR can
+be used to only perform the binary operation or to only push a value on the
+stack. Since both are (conveniently) defined to be zero, indicating only an
+action actually specifies the action followed by \fBENF_NOP\fR, and indicating
+only an operation actually specifies \fBENF_NOPUSH\fR followed by the
+operation.
+.sp
+.LP
+After executing the filter command list, a non-zero value (true) left on top of
+the stack (or an empty stack) causes the incoming packet to be accepted and a
+zero value (false) causes the packet to be rejected. (If the filter exits as
+the result of a short-circuit operator, the top-of-stack value is ignored.)
+Specifying an undefined operation or action in the command list or performing
+an illegal operation or action (such as pushing a shortword offset past the end
+of the packet or executing a binary operator with fewer than two shortwords on
+the stack) causes a filter to reject the packet.
+.SH EXAMPLES
+.sp
+.LP
+The packet filter module is not dependent on any particular device driver or
+module but is commonly used with datalink drivers such as the Ethernet driver.
+If the underlying datalink driver supports the Data Link Provider Interface
+(DLPI) message set, the appropriate \fBSTREAMS DLPI\fR messages must be issued
+to attach the stream to a particular hardware device and bind a datalink
+address to the stream before the underlying driver will route received packets
+upstream. Refer to the \fBDLPI\fR Version 2 specification for details on this
+interface.
+.sp
+.LP
+The reverse \fBARP\fR daemon program may use code similar to the following
+fragment to construct a filter that rejects all but \fBRARP\fR packets. That
+is, it accepts only packets whose Ethernet type field has the value
+\fBETHERTYPE_REVARP\fR. The filter works whether a VLAN is configured or not.
+.sp
+.in +2
+.nf
+struct ether_header eh; /* used only for offset values */
+struct packetfilt pf;
+register ushort_t *fwp = pf.Pf_Filter;
+ushort_t offset;
+int fd;
+/*
+ * Push packet filter streams module.
+ */
+if (ioctl(fd, I_PUSH, "pfmod") < 0)
+ syserr("pfmod");
+
+/*
+ * Set up filter. Offset is the displacement of the Ethernet
+ * type field from the beginning of the packet in units of
+ * ushort_ts.
+ */
+offset = ((uint_t) &eh.ether_type - (uint_t) &eh.ether_dhost) /
+ sizeof (us_short);
+ *fwp++ = ENF_PUSHWORD + offset;
+ *fwp++ = ENF_PUSHLIT;
+ *fwp++ = htons(ETHERTYPE_VLAN);
+ *fwp++ = ENF_EQ;
+ *fwp++ = ENF_BRFL;
+ *fwp++ = 3; /* If this isn't ethertype VLAN, don't change oreg */
+ *fwp++ = ENF_LOAD_OFFSET;
+ *fwp++ = 2; /* size of the VLAN tag in words */
+ *fwp++ = ENF_POP;
+ *fwp++ = ENF_PUSHWORD + offset;
+ *fwp++ = ENF_PUSHLIT;
+ *fwp++ = htons(ETHERTYPE_REVARP);
+ *fwp++ = ENF_EQ;
+ pf.Pf_FilterLen = fwp - &pf.PF_Filter[0];
+.fi
+.in -2
+
+.sp
+.LP
+This filter can be abbreviated by taking advantage of the ability to combine
+actions and operations:
+.sp
+.in +2
+.nf
+ *fwp++ = ENF_PUSHWORD + offset;
+ *fwp++ = ENF_PUSHLIT | ENF_EQ;
+ *fwp++ = htons(ETHERTYPE_REVARP);
+ *fwp++ = htons(ETHERTYPE_VLAN);
+ *fwp++ = ENF_BRFL | ENF_NOP;
+ *fwp++ = 3;
+ *fwp++ = ENF_LOAD_OFFSET | ENF_NOP;
+ *fwp++ = 2;
+ *fwp++ = ENF_POP | ENF_NOP;
+ *fwp++ = ENF_PUSHWORD + offset;
+ *fwp++ = ENF_PUSHLIT | ENF_EQ;
+ *fwp++ = htons(ETHERTYPE_REVARP);
+.fi
+.in -2
+
+.SH SEE ALSO
+.sp
+.LP
+.BR bufmod (4M),
+.BR dlpi (4P),
+.BR pullupmsg (9F)
diff --git a/usr/src/man/man4m/pipemod.4m b/usr/src/man/man4m/pipemod.4m
new file mode 100644
index 0000000000..c6e7dd483f
--- /dev/null
+++ b/usr/src/man/man4m/pipemod.4m
@@ -0,0 +1,56 @@
+'\" te
+.\" Copyright (C) 1992 Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PIPEMOD 4M "Aug 21, 1992"
+.SH NAME
+pipemod \- STREAMS pipe flushing module
+.SH DESCRIPTION
+.sp
+.LP
+The typical stream is composed of a stream head connected to modules and
+terminated by a driver. Some stream configurations such as pipes and
+\fBFIFOs\fR do not have a driver and hence certain features commonly supported
+by the driver need to be provided by other means. Flushing is one such feature,
+and it is provided by the \fBpipemod\fR module.
+.sp
+.LP
+Pipes and \fBFIFOs\fR in their simplest configurations only have stream heads.
+A write side is connected to a read side. This remains true when modules are
+pushed. The twist occurs at a point known as the mid-point. When an
+\fBM_FLUSH\fR message is passed from a write queue to a read queue the
+\fBFLUSHR\fR and/or \fBFLUSHW\fR bits have to be switched. The mid-point of a
+pipe is not always easily detectable, especially if there are numerous modules
+pushed on either end of the pipe. In that case there needs to be a mechanism to
+intercept all message passing through the stream. If the message is an
+\fBM_FLUSH\fR message and it is at the mid-point, the flush bits need to be
+switched. This bit switching is handled by the \fBpipemod\fR module.
+.sp
+.LP
+\fBpipemod\fR should be pushed onto a pipe or \fBFIFO\fR where flushing of any
+kind will take place. The \fBpipemod\fR module can be pushed on either end of
+the pipe. The only requirement is that it is pushed onto an end that previously
+did not have modules on it. That is, pipemod must be the first module pushed
+onto a pipe so that it is at the mid-point of the pipe itself.
+.sp
+.LP
+The \fBpipemod\fR module handles only \fBM_FLUSH\fR messages. All other
+messages are passed on to the next module using the \fBputnext()\fR utility
+routine. If an \fBM_FLUSH\fR message is passed to \fBpipemod\fR and the
+\fBFLUSHR\fR and \fBFLUSHW\fR bits are set, the message is not processed but is
+passed to the next module using the \fBputnext()\fR routine. If only the
+\fBFLUSHR\fR bit is set, the \fBFLUSHR\fR bit is turned off and the
+\fBFLUSHW\fR bit is set. The message is then passed on to the next module using
+\fBputnext()\fR. Similarly, if the \fBFLUSHW\fR bit is the only bit set in the
+\fBM_FLUSH\fR message, the \fBFLUSHW\fR bit is turned off and the \fBFLUSHR\fR
+bit is turned on. The message is then passed to the next module on the stream.
+.sp
+.LP
+The \fBpipemod\fR module can be pushed on any stream that desires the bit
+switching. It must be pushed onto a pipe or \fBFIFO\fR if any form of flushing
+must take place.
+.SH SEE ALSO
+.sp
+.LP
+\fISTREAMS Programming Guide\fR
diff --git a/usr/src/man/man4m/ptem.4m b/usr/src/man/man4m/ptem.4m
new file mode 100644
index 0000000000..da1b07971c
--- /dev/null
+++ b/usr/src/man/man4m/ptem.4m
@@ -0,0 +1,130 @@
+'\" te
+.\" Copyright 1989 AT&T
+.\" Copyright (C) 1999, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.\" Copyright 2022 Oxide Computer Company
+.Dd February 5, 2022
+.Dt PTEM 4M
+.Os
+.Sh NAME
+.Nm ptem
+.Nd STREAMS Pseudo-Terminal Emulation module
+.Sh SYNOPSIS
+.In unistd.h
+.In stropts.h
+.Ft int
+.Fo ioctl
+.Fa "int fildes" ,
+.Dv I_PUSH ,
+.Qq ptem
+.Fc
+.Sh DESCRIPTION
+.Nm ptem
+is a STREAMS module that emulates a terminal device when used in conjunction
+with the line discipline,
+.Xr ldterm 4M ,
+and the pseudo terminal driver,
+.Xr ptm 4D .
+.Pp
+The
+.Nm ptem
+module must be pushed
+.Po
+see
+.Dv I_PUSH
+in
+.Xr streamio 4I
+.Pc
+onto the subsidiary device of a pseudo-terminal STREAM, before the
+.Xr ldterm 4M
+module is pushed.
+.Ss Write-side Behaviour
+The
+.Dv TCSETA ,
+.Dv TCSETAF ,
+.Dv TCSETAW ,
+.Dv TCGETA ,
+.Dv TCSETS ,
+.Dv TCSETSW ,
+.Dv TCSETSF ,
+.Dv TCGETS ,
+.Dv TCSBRK ,
+.Dv JWINSIZE ,
+.Dv TIOCGWINSZ ,
+and
+.Dv TIOCSWINSZ
+.Xr termio 4I
+.Xr ioctl 2
+messages are processed and acknowledged.
+.Pp
+If
+.Em remote mode
+is not in effect,
+.Nm ptem
+handles the
+.Dv TIOCSTI
+ioctl by copying the argument bytes into an
+.Dv M_DATA
+message and passing it back up the read side.
+Regardless of the
+.Em remote mode
+setting,
+.Nm ptem
+acknowledges the ioctl and passes a copy of it downstream for possible further
+processing.
+.Pp
+A hang up
+.Po
+e.g.,
+.Ic stty 0
+.Pc
+is converted to a zero length
+.Dv M_DATA
+message and passed downstream.
+.Xr termio 4I
+.Sy cflags
+and window row and column information are stored locally, one per stream.
+.Dv M_DELAY
+messages are discarded.
+.Pp
+All other messages are passed downstream unmodified.
+.Ss Read-side Behaviour
+All messages are passed upstream unmodified with the following exceptions:
+.Bl -bullet
+.It
+All
+.Dv M_READ
+and
+.Dv M_DELAY
+messages are freed in both directions.
+.It
+A
+.Dv TCSBRK
+ioctl is converted to an
+.Dv M_BREAK
+message and passed upstream and an acknowledgement is returned downstream.
+.It
+A
+.Dv TIOCSIGNAL
+ioctl is converted into an
+.Dv M_PCSIG
+message, passed upstream, and an acknowledgement is returned downstream.
+.It
+A
+.Dv TIOCREMOTE
+ioctl is converted into an
+.Dv M_CTL
+message, acknowledged, and passed upstream; the resulting mode is retained for
+use in subsequent
+.Dv TIOCSTI
+parsing.
+.El
+.Sh SEE ALSO
+.Xr stty 1 ,
+.Xr ioctl 2 ,
+.Xr streamio 4I ,
+.Xr termio 4I ,
+.Xr ldterm 4M ,
+.Xr pckt 4M
diff --git a/usr/src/man/man4m/sppptun.4m b/usr/src/man/man4m/sppptun.4m
new file mode 100644
index 0000000000..3ad7032254
--- /dev/null
+++ b/usr/src/man/man4m/sppptun.4m
@@ -0,0 +1,41 @@
+'\" te
+.\" Copyright (c) 2001 by Sun Microsystems, Inc.
+.\" All rights reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SPPPTUN 4M "Jan 1, 2001"
+.SH NAME
+sppptun \- PPP tunneling pseudo-driver
+.SH SYNOPSIS
+.LP
+.nf
+\fB/dev/sppptun\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fB/dev/sppptun\fR pseudo-driver provides an interface for tunneling PPP
+sessions. This interface provides PPP over Ethernet (PPPoE) service with
+Solaris PPP.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/dev/sppptun\fR \fR
+.ad
+.RS 17n
+Solaris PPP tunneling device driver.
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR pppoec (8),
+.BR pppoed (8),
+.BR sppptun (8)
+.sp
+.LP
+\fIRFC 2516 \(em A Method for Transmitting PPP Over Ethernet (PPPoE).\fR
+Mamakos, et. al. February 1999.
diff --git a/usr/src/man/man4m/timod.4m b/usr/src/man/man4m/timod.4m
new file mode 100644
index 0000000000..f6a1052bba
--- /dev/null
+++ b/usr/src/man/man4m/timod.4m
@@ -0,0 +1,171 @@
+'\" te
+.\" Copyright 1989 AT&T
+.\" Copyright (C) 1999, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH TIMOD 4M "Mar 26, 1993"
+.SH NAME
+timod \- Transport Interface cooperating STREAMS module
+.SH SYNOPSIS
+.LP
+.nf
+#include <sys/stropts.h>
+.fi
+
+.LP
+.nf
+ioctl(\fIfildes\fR, I_STR, &\fImy_strioctl\fR);
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBtimod\fR is a STREAMS module for use with the Transport Interface
+("\fBTI\fR") functions of the Network Services library. The \fBtimod\fR module
+converts a set of \fBioctl\fR(2) calls into STREAMS messages that may be
+consumed by a transport protocol provider that supports the Transport
+Interface. This allows a user to initiate certain TI functions as atomic
+operations.
+.sp
+.LP
+The \fBtimod\fR module must be pushed onto only a stream terminated by a
+transport protocol provider that supports the \fBTI\fR.
+.sp
+.LP
+All STREAMS messages, with the exception of the message types generated from
+the \fBioctl\fR commands described below, will be transparently passed to the
+neighboring module or driver. The messages generated from the following
+\fBioctl\fR commands are recognized and processed by the \fBtimod\fR module.
+The format of the \fBioctl\fR call is:
+.sp
+.in +2
+.nf
+\fB#include <sys/stropts.h>
+ -
+ -
+struct strioctl my_strioctl;
+ -
+ -
+strioctl.ic_cmd = \fR\fIcmd\fR;
+strioctl.ic_timout = INFTIM;
+strioctl.ic_len = \fBsize\fR;
+strioctl.ic_dp = (char *)\fIbuf\fR
+ioctl(\fIfildes\fR, I_STR, &\fImy_strioctl\fR);
+.fi
+.in -2
+
+.sp
+.LP
+On issuance, \fBsize\fR is the size of the appropriate \fBTI\fR message to be
+sent to the transport provider and on return \fBsize\fR is the size of the
+appropriate \fBTI\fR message from the transport provider in response to the
+issued \fBTI \fRmessage. \fIbuf\fR is a pointer to a buffer large enough to
+hold the contents of the appropriate \fBTI\fR messages. The \fBTI\fR message
+types are defined in <\fBsys/tihdr.h\fR>. The possible values for the \fIcmd\fR
+field are:
+.sp
+.ne 2
+.na
+\fB\fBTI_BIND\fR \fR
+.ad
+.RS 15n
+Bind an address to the underlying transport protocol provider. The message
+issued to the \fBTI_BIND\fR ioctl is equivalent to the \fBTI\fR message type
+\fBT_BIND_REQ\fR and the message returned by the successful completion of the
+\fBioctl\fR is equivalent to the \fBTI\fR message type \fBT_BIND_ACK.\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBTI_UNBIND\fR \fR
+.ad
+.RS 15n
+Unbind an address from the underlying transport protocol provider. The message
+issued to the \fBTI_UNBIND\fR ioctl is equivalent to the \fBTI\fR message type
+\fBT_UNBIND_REQ\fR and the message returned by the successful completion of the
+\fBioctl\fR is equivalent to the \fBTI\fR message type \fBT_OK_ACK.\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBTI_GETINFO\fR \fR
+.ad
+.RS 15n
+Get the \fBTI\fR protocol specific information from the transport protocol
+provider. The message issued to the \fBTI_GETINFO\fR ioctl is equivalent to
+the \fBTI\fR message type \fBT_INFO_REQ\fR and the message returned by the
+successful completion of the \fBioctl\fR is equivalent to the \fBTI\fR message
+type \fBT_INFO_ACK.\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBTI_OPTMGMT\fR \fR
+.ad
+.RS 15n
+Get, set, or negotiate protocol specific options with the transport protocol
+provider. The message issued to the \fBTI_OPTMGMT\fR ioctl is equivalent to
+the TI message type \fBT_OPTMGMT_REQ\fR and the message returned by the
+successful completion of the \fBioctl\fR is equivalent to the \fBTI\fR message
+type \fBT_OPTMGMT_ACK.\fR
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB<\fBsys/timod.h\fR> \fR
+.ad
+.RS 19n
+ioctl definitions
+.RE
+
+.sp
+.ne 2
+.na
+\fB<\fBsys/tiuser.h\fR> \fR
+.ad
+.RS 19n
+\fBTLI\fR interface declaration and structure file
+.RE
+
+.sp
+.ne 2
+.na
+\fB<\fBsys/tihdr.h\fR> \fR
+.ad
+.RS 19n
+\fBTPI\fR declarations and user-level code
+.RE
+
+.sp
+.ne 2
+.na
+\fB<\fBsys/errno.h\fR> \fR
+.ad
+.RS 19n
+system error messages file. Please see \fBerrno\fR(3C).
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR ioctl (2),
+.BR Intro (3),
+.BR errno (3C),
+.BR tirdwr (4M)
+.sp
+.LP
+\fISTREAMS Programming Guide\fR
+.SH DIAGNOSTICS
+.sp
+.LP
+If the \fBioctl\fR returns with a value greater than 0, the lower 8 bits of the
+return value will be one of the \fBTI \fRerror codes as defined in
+<\fBsys/tiuser.h\fR>. If the \fBTI\fR error is of type \fBTSYSERR\fR, then the
+next 8 bits of the return value will contain an error as defined in
+<\fBsys/errno.h\fR> (see \fBIntro\fR(3)).
diff --git a/usr/src/man/man4m/tirdwr.4m b/usr/src/man/man4m/tirdwr.4m
new file mode 100644
index 0000000000..4adfc7e27c
--- /dev/null
+++ b/usr/src/man/man4m/tirdwr.4m
@@ -0,0 +1,168 @@
+'\" te
+.\" Copyright 1989 AT&T
+.\" Copyright (C) 1999, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH TIRDWR 4M "Jul 3, 1990"
+.SH NAME
+tirdwr \- Transport Interface read/write interface STREAMS module
+.SH SYNOPSIS
+.LP
+.nf
+\fBint ioctl( \fR\fIfd, \fR\fBI_PUSH\fR\fI, \fR\fB"tirdwr");\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBtirdwr\fR is a STREAMS module that provides an alternate interface to a
+transport provider which supports the Transport Interface ("\fBTI\fR")
+functions of the Network Services library (see Section 3N). This alternate
+interface allows a user to communicate with the transport protocol provider
+using the \fBread\fR(2) and \fBwrite\fR(2) system calls. The \fBputmsg\fR(2)
+and \fBgetmsg\fR(2) system calls may also be used. However, \fBputmsg\fR and
+\fBgetmsg\fR can only transfer data messages between user and stream; control
+portions are disallowed.
+.sp
+.LP
+The \fBtirdwr\fR module must only be pushed (see \fBI_PUSH\fR in
+\fBstreamio\fR(4I)) onto a stream terminated by a transport protocol provider
+which supports the \fBTI\fR. After the \fBtirdwr\fR module has been pushed onto
+a stream, none of the \fBTI\fR functions can be used. Subsequent calls to
+\fBTI\fR functions cause an error on the stream. Once the error is detected,
+subsequent system calls on the stream return an error with \fBerrno\fR set to
+\fBEPROTO\fR.
+.sp
+.LP
+The following are the actions taken by the \fBtirdwr\fR module when pushed on
+the stream, popped (see \fBI_POP\fR in \fBstreamio\fR(4I)) off the stream, or
+when data passes through it.
+.sp
+.ne 2
+.na
+\fB\fBpush\fR\fR
+.ad
+.RS 9n
+When the module is pushed onto a stream, it checks any existing data destined
+for the user to ensure that only regular data messages are present. It ignores
+any messages on the stream that relate to process management, such as messages
+that generate signals to the user processes associated with the stream. If any
+other messages are present, the \fBI_PUSH\fR will return an error with
+\fBerrno\fR set to \fBEPROTO\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBwrite\fR\fR
+.ad
+.RS 9n
+The module takes the following actions on data that originated from a
+\fBwrite\fR system call:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+All messages with the exception of messages that contain control portions (see
+the \fBputmsg\fR and \fBgetmsg\fR system calls) are transparently passed onto
+the module's downstream neighbor.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Any zero length data messages are freed by the module and they will not be
+passed onto the module's downstream neighbor.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Any messages with control portions generate an error, and any further system
+calls associated with the stream fails with \fBerrno\fR set to \fBEPROTO\fR.
+.RE
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBread\fR\fR
+.ad
+.RS 9n
+The module takes the following actions on data that originated from the
+transport protocol provider.
+.sp
+All messages with the exception of those that contain control portions (see the
+\fBputmsg\fR and \fBgetmsg\fR system calls) are transparently passed onto the
+module's upstream neighbor. The action taken on messages with control portions
+will be as follows:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Any data messages with control portions have the control portions removed from
+the message before to passing the message on to the upstream neighbor.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Messages that represent an orderly release indication from the transport
+provider generate a zero length data message, indicating the end of file, which
+will be sent to the reader of the stream. The orderly release message itself is
+freed by the module.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Messages that represent an abortive disconnect indication from the transport
+provider cause all further \fBwrite\fR and \fBputmsg\fR system calls to fail
+with \fBerrno\fR set to \fBENXIO\fR. All further \fBread\fR and \fBgetmsg\fR
+system calls return zero length data (indicating end of file) once all previous
+data has been read.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+With the exception of the above rules, all other messages with control portions
+generate an error and all further system calls associated with the stream will
+fail with \fBerrno\fR set to \fBEPROTO\fR.
+.RE
+Any zero length data messages are freed by the module and they are not passed
+onto the module's upstream neighbor.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpop\fR\fR
+.ad
+.RS 9n
+When the module is popped off the stream or the stream is closed, the module
+takes the following action:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+If an orderly release indication has been previously received, then an orderly
+release request will be sent to the remote side of the transport connection.
+.RE
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR getmsg (2),
+.BR putmsg (2),
+.BR read (2),
+.BR write (2),
+.BR Intro (3),
+.BR Intro (3),
+.BR streamio (4I),
+.BR timod (4M)
+.sp
+.LP
+\fISTREAMS Programming Guide\fR
diff --git a/usr/src/man/man4m/ttcompat.4m b/usr/src/man/man4m/ttcompat.4m
new file mode 100644
index 0000000000..339d184452
--- /dev/null
+++ b/usr/src/man/man4m/ttcompat.4m
@@ -0,0 +1,680 @@
+'\" te
+.\" Copyright (c) 2001, Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 2001 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH TTCOMPAT 4M "Oct 2, 2001"
+.SH NAME
+ttcompat \- V7, 4BSD and XENIX STREAMS compatibility module
+.SH SYNOPSIS
+.LP
+.nf
+#define BSD_COMP
+#include <sys/stropts.h>
+#include <sys/ioctl.h>
+ioctl(\fIfd\fR, I_PUSH, "ttcompat");
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBttcompat\fR is a STREAMS module that translates the \fBioctl\fR calls
+supported by the older \fBVersion\fR \fB7,\fR \fB4BSD,\fR and \fBXENIX\fR
+terminal drivers into the \fBioctl\fR calls supported by the \fBtermio\fR
+interface (see \fBtermio\fR(4I)). All other messages pass through this module
+unchanged; the behavior of \fBread\fR and \fBwrite\fR calls is unchanged, as is
+the behavior of \fBioctl\fR calls other than the ones supported by
+\fBttcompat\fR.
+.sp
+.LP
+This module can be automatically pushed onto a stream using the \fBautopush\fR
+mechanism when a terminal device is opened; it does not have to be explicitly
+pushed onto a stream. This module requires that the \fBtermios\fR interface be
+supported by the modules and the application can push the driver downstream.
+The \fBTCGETS,\fR \fBTCSETS,\fR and \fBTCSETSF\fR \fBioctl\fR calls must be
+supported. If any information set or fetched by those \fBioctl\fR calls is not
+supported by the modules and driver downstream, some of the \fBV7/4BSD/XENIX\fR
+functions may not be supported. For example, if the \fBCBAUD\fR bits in the
+\fBc_cflag\fR field are not supported, the functions provided by the
+\fBsg_ispeed\fR and \fBsg_ospeed\fR fields of the \fBsgttyb\fR structure (see
+below) will not be supported. If the \fBTCFLSH\fR \fBioctl\fR is not supported,
+the function provided by the \fBTIOCFLUSH\fR \fBioctl\fR will not be supported.
+If the \fBTCXONC\fR \fBioctl\fR is not supported, the functions provided by the
+\fBTIOCSTOP\fR and \fBTIOCSTART\fR \fBioctl\fR calls will not be supported. If
+the \fBTIOCMBIS\fR and \fBTIOCMBIC\fR \fBioctl\fR calls are not supported, the
+functions provided by the \fBTIOCSDTR\fR and \fBTIOCCDTR\fR \fBioctl\fR calls
+will not be supported.
+.sp
+.LP
+The basic \fBioctl\fR calls use the \fBsgttyb\fR structure defined by
+<\fBsys/ttold.h\fR> (included by <\fBsys/ioctl.h\fR>):
+.sp
+.in +2
+.nf
+struct sgttyb {
+ char sg_ispeed;
+ char sg_ospeed;
+ char sg_erase;
+ char sg_kill;
+ int sg_flags;
+};
+.fi
+.in -2
+
+.sp
+.LP
+The \fBsg_ispeed\fR and \fBsg_ospeed\fR fields describe the input and output
+speeds of the device. If the speed set on the device is over B38400, then it
+is reported as B38400 for compatibility reasons. If it is set to B38400 and
+the current speed is over B38400, the change is ignored. See TIOCGETP and
+TIOCSETP below. The \fBsg_erase\fR and \fBsg_kill fields\fR of the argument
+structure specify the erase and kill characters respectively, and reflect the
+values in the VERASE and VKILL members of the \fBc_cc field\fR of the
+\fBtermios\fR structure.
+.sp
+.LP
+The \fBsg_flags\fR field of the argument structure contains several flags that
+determine the system's treatment of the terminal. They are mapped into flags in
+fields of the terminal state, represented by the \fBtermios\fR structure.
+.sp
+.LP
+Delay type \fB0\fR (NL0, TAB0, CR0, FF0, BS0) is always mapped into the
+equivalent delay type \fB0\fR in the \fBc_oflag\fR field of the \fBtermios\fR
+structure. Other delay mappings are performed as follows:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+sg_flags c_oflag
+_
+BS1 BS1
+_
+FF1 VT1
+_
+CR1 CR2
+_
+CR2 CR3
+_
+CR3 CR0 (not supported)
+_
+TAB1 TAB1
+_
+TAB2 TAB2
+_
+XTABS TAB3
+_
+NL1 ONLRET|CR1
+_
+NL2 NL1
+_
+NL3 NL0 (not supported)
+.TE
+
+.sp
+.LP
+If previous \fBTIOCLSET\fR or \fBTIOCLBIS\fR \fBioctl\fR calls have not
+selected \fBLITOUT\fR or \fBPASS8\fR mode, and if \fBRAW\fR mode is not
+selected, the \fBISTRIP\fR flag is set in the \fBc_iflag\fR field of the
+\fBtermios\fR structure, and the \fBEVENP\fR and \fBODDP\fR flags control the
+parity of characters sent to the terminal and accepted from the terminal, as
+follows:
+.sp
+.ne 2
+.na
+\fB0 (neither EVENP nor ODDP)\fR
+.ad
+.RS 30n
+Parity is not to be generated on output or checked on input. The character
+size is set to \fBCS8\fR and the \fBPARENB\fR flag is cleared in the
+\fBc_cflag\fR field of the \fBtermios\fR structure.
+.RE
+
+.sp
+.ne 2
+.na
+\fBEVENP\fR
+.ad
+.RS 30n
+Even parity characters are to be generated on output and accepted on input. The
+INPCK flag is set in the \fBc_iflag\fR field of the \fBtermios\fR structure,
+the character size is set to \fBCS7\fR and the \fBPARENB\fR flag is set in the
+\fBc_iflag\fR field of the \fBtermios\fR structure.
+.RE
+
+.sp
+.ne 2
+.na
+\fBODDP\fR
+.ad
+.RS 30n
+Odd parity characters are to be generated on output and accepted on input. The
+\fBINPCK\fR flag is set in the \fBc_iflag\fR, the character size is set to
+\fBCS7\fR and the \fBPARENB\fR and \fBPARODD\fR flags are set in the
+\fBc_iflag\fR field of the \fBtermios\fR structure.
+.RE
+
+.sp
+.ne 2
+.na
+\fBEVENP|ODDP or ANYP\fR
+.ad
+.RS 30n
+Even parity characters are to be generated on output and characters of
+either parity are to be accepted on input. The \fBINPCK\fR flag is cleared in
+the \fBc_iflag\fR field, the character size is set to \fBCS7\fR and the
+\fBPARENB\fR flag is set in the \fBc_iflag\fR field of the \fBtermios\fR
+structure.
+.RE
+
+.sp
+.LP
+The \fBRAW\fR flag disables all output processing (the \fBOPOST\fR flag in the
+\fBc_oflag\fR field, and the \fBXCASE\fR and \fBIEXTEN\fR flags in the
+\fBc_iflag\fR field are cleared in the termios structure) and input processing
+(all flags in the \fBc_iflag\fR field other than the \fBIXOFF\fR and
+\fBIXANY\fR flags are cleared in the \fBtermios\fR structure). Eight bits of
+data, with no parity bit are accepted on input and generated on output; the
+character size is set to \fBCS8\fR and the \fBPARENB\fR and \fBPARODD\fR flags
+are cleared in the \fBc_cflag\fR field of the \fBtermios\fR structure. The
+signal-generating and line-editing control characters are disabled by clearing
+the \fBISIG\fR and \fBICANON\fR flags in the \fBc_iflag\fR field of the termios
+structure.
+.sp
+.LP
+The \fBCRMOD\fR flag turns input carriage return characters into linefeed
+characters, and output linefeed characters to be sent as a carriage return
+followed by a linefeed. The \fBICRNL\fR flag in the \fBc_iflag\fR field, and
+the \fBOPOST\fR and \fBONLCR\fR flags in the \fBc_oflag field\fR, are set in
+the termios structure.
+.sp
+.LP
+The \fBLCASE\fR flag maps upper-case letters in the \fBASCII\fR character set
+to their lower-case equivalents on input (the \fBIUCLC\fR flag is set in the
+\fBc_iflag\fR field), and maps lower-case letters in the \fBASCII\fR character
+set to their upper-case equivalents on output (the \fBOLCUC\fR flag is set in
+the \fBc_oflag\fR field). Escape sequences are accepted on input, and generated
+on output, to handle certain \fBASCII\fR characters not supported by older
+terminals (the \fBXCASE\fR flag is set in the \fBc_lflag\fR field).
+.sp
+.LP
+Other flags are directly mapped to flags in the \fBtermios\fR structure:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+sg_flags Flags in termios structure
+_
+CBREAK Complement of ICANON in c_lflag field
+_
+ECHO ECHO in c_lflag field
+_
+TANDEM IXOFF in c_iflag field
+.TE
+
+.sp
+.LP
+Another structure associated with each terminal specifies characters that are
+special in both the old Version 7 and the newer \fB4BSD\fR terminal interfaces.
+The following structure is defined by \fB<sys/ttold.h>\fR:
+.sp
+.in +2
+.nf
+struct tchars {
+ char t_intrc; /* interrupt */
+ char t_quitc; /* quit */
+ char t_startc; /* start output */
+ char t_stopc; /* stop output */
+ char t_eofc; /* end-of-file */
+ char t_brkc; /* input delimiter (like nl) */
+ };
+.fi
+.in -2
+
+.sp
+.LP
+\fBXENIX\fR defines the \fBtchar\fR structure as \fBtc\fR. The characters are
+mapped to members of the \fBc_cc\fR field of the \fBtermios\fR structure as
+follows:
+.sp
+.in +2
+.nf
+ tchars c_cc index
+ t_intrc VINTR
+ t_quitc VQUIT
+ t_startc VSTART
+ t_stopc VSTOP
+ t_eofc VEOF
+ t_brkc VEOL
+.fi
+.in -2
+
+.sp
+.LP
+Also associated with each terminal is a local flag word (\fBTIOCLSET\fR and
+\fBTIOCLGET\fR), specifying flags supported by the new 4BSD terminal
+interface. Most of these flags are directly mapped to flags in the
+\fBtermios\fR structure:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+Local flags Flags in termios structure
+_
+LCRTBS Not supported
+_
+LPRTERA ECHOPRT in the c_lflag field
+_
+LCRTERA ECHOE in the c_lflag field
+_
+LTILDE Not supported
+_
+LMDMBUF Not supported
+_
+LTOSTOP TOSTOP in the c_lflag field
+_
+LFLUSHO FLUSHO in the c_lflag field
+_
+LNOHANG CLOCAL in the c_cflag field
+_
+LCRTKIL ECHOKE in the c_lflag field
+_
+LPASS8 CS8 in the c_cflag field
+_
+LCTLECH CTLECH in the c_lflag field
+_
+LPENDIN PENDIN in the c_lflag field
+_
+LDECCTQ Complement of IXANY in the c_iflag field
+_
+LNOFLSH NOFLSH in the c_lflag field
+.TE
+
+.sp
+.LP
+Each flag has a corresponding equivalent \fBsg_flags\fR value. The
+\fBsg_flags\fR definitions omit the leading "L"; for example, TIOCSETP with
+\fBsg_flags\fR set to TOSTOP is equivalent to TIOCLSET with LTOSTOP.
+.sp
+.LP
+Another structure associated with each terminal is the \fBltchars\fR structure
+which defines control characters for the new \fB4BSD\fR terminal interface. Its
+structure is:
+.sp
+.in +2
+.nf
+struct ltchars {
+ char t_suspc; /* stop process signal */
+ char t_dsuspc; /* delayed stop process signal */
+ char t_rprntc; /* reprint line */
+ char t_flushc; /*flush output (toggles) */
+ char t_werasc; /* word erase */
+ char t_lnextc; /* literal next character */
+};
+.fi
+.in -2
+
+.sp
+.LP
+The characters are mapped to members of the \fBc_cc\fR field of the
+\fBtermios\fR structure as follows:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ltchars c_cc index
+_
+t_suspc VSUS
+_
+t_dsuspc VDSUSP
+_
+t_rprntc VREPRINT
+_
+t_flushc VDISCARD
+_
+t_werasc VWERASE
+_
+t_lnextc VLNEXT
+.TE
+
+.SH IOCTLS
+.sp
+.LP
+\fBttcompat\fR responds to the following \fBioctl\fR calls. All others are
+passed to the module below.
+.sp
+.ne 2
+.na
+\fB\fBTIOCGETP\fR \fR
+.ad
+.RS 14n
+The argument is a pointer to an \fBsgttyb\fR structure. The current terminal
+state is fetched; the appropriate characters in the terminal state are
+stored in that structure, as are the input and output speeds. If the speed is
+over B38400, then B38400 is returned. The values of the flags in the
+\fBsg_flags\fR field are derived from the flags in the terminal state and
+stored in the structure.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBTIOCEXCL\fR \fR
+.ad
+.RS 14n
+Set ``exclusive-use'' mode; no further opens are permitted until the file has
+been closed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBTIOCNXCL\fR \fR
+.ad
+.RS 14n
+Turn off ``exclusive-use'' mode.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBTIOCSETP\fR \fR
+.ad
+.RS 14n
+The argument is a pointer to an \fBsgttyb\fR structure. The appropriate
+characters and input and output speeds in the terminal state are set from the
+values in that structure, and the flags in the terminal state are set to match
+the values of the flags in the \fBsg_flags\fR field of that structure. The
+state is changed with a \fBTCSETSF\fR \fBioctl\fR so that the interface delays
+until output is quiescent, then throws away any unread characters, before
+changing the modes. If the current device speed is over B38400 for either input
+or output speed, and B38400 is specified through this interface for that speed,
+the actual device speed is not changed. If the device speed is B38400 or lower
+or if some speed other than B38400 is specified, then the actual speed
+specified is set.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBTIOCSETN\fR \fR
+.ad
+.RS 14n
+The argument is a pointer to an \fBsgttyb\fR structure. The terminal state is
+changed as \fBTIOCSETP\fR would change it, but a \fBTCSETS\fR \fBioctl\fR is
+used, so that the interface neither delays nor discards input.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBTIOCHPCL\fR \fR
+.ad
+.RS 14n
+The argument is ignored. The \fBHUPCL\fR flag is set in the \fBc_cflag\fR word
+of the terminal state.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBTIOCFLUSH\fR \fR
+.ad
+.RS 14n
+The argument is a pointer to an \fBint\fR variable. If its value is zero, all
+characters waiting in input or output queues are flushed. Otherwise, the value
+of the \fBint\fR is treated as the logical \fBOR\fR of the \fBFREAD\fR and
+\fBFWRITE\fR flags defined by \fB<sys/file.h>\fR\&. If the \fBFREAD\fR bit is
+set, all characters waiting in input queues are flushed, and if the
+\fBFWRITE\fR bit is set, all characters waiting in output queues are flushed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBTIOCSBRK\fR \fR
+.ad
+.RS 14n
+The argument is ignored. The break bit is set for the device. (This is not
+supported by \fBttcompat\fR. The underlying driver must support TIOCSBRK.)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBTIOCCBRK\fR \fR
+.ad
+.RS 14n
+The argument is ignored. The break bit is cleared for the device. (This is not
+supported by \fBttcompat\fR. The underlying driver must support TIOCCBRK.)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBTIOCSDTR\fR \fR
+.ad
+.RS 14n
+The argument is ignored. The Data Terminal Ready bit is set for the device.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBTIOCCDTR\fR \fR
+.ad
+.RS 14n
+The argument is ignored. The Data Terminal Ready bit is cleared for the device.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBTIOCSTOP\fR \fR
+.ad
+.RS 14n
+The argument is ignored. Output is stopped as if the \fBSTOP\fR character had
+been typed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBTIOCSTART\fR \fR
+.ad
+.RS 14n
+The argument is ignored. Output is restarted as if the \fBSTART\fR character
+had been typed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBTIOCGETC\fR \fR
+.ad
+.RS 14n
+The argument is a pointer to a \fBtchars\fR structure. The current terminal
+state is fetched, and the appropriate characters in the terminal state are
+stored in that structure.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBTIOCSETC\fR \fR
+.ad
+.RS 14n
+The argument is a pointer to a \fBtchars\fR structure. The values of the
+appropriate characters in the terminal state are set from the characters in
+that structure.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBTIOCLGET\fR \fR
+.ad
+.RS 14n
+The argument is a pointer to an \fBint\fR. The current terminal state is
+fetched, and the values of the local flags are derived from the flags in the
+terminal state and stored in the \fBint\fR pointed to by the argument.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBTIOCLBIS\fR \fR
+.ad
+.RS 14n
+The argument is a pointer to an \fBint\fR whose value is a mask containing
+flags to be set in the local flags word. The current terminal state is fetched,
+and the values of the local flags are derived from the flags in the terminal
+state; the specified flags are set, and the flags in the terminal state are set
+to match the new value of the local flags word.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBTIOCLBIC\fR \fR
+.ad
+.RS 14n
+The argument is a pointer to an \fBint\fR whose value is a mask containing
+flags to be cleared in the local flags word. The current terminal state is
+fetched, and the values of the local flags are derived from the flags in the
+terminal state; the specified flags are cleared, and the flags in the terminal
+state are set to match the new value of the local flags word.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBTIOCLSET\fR \fR
+.ad
+.RS 14n
+The argument is a pointer to an int containing a new set of local flags. The
+flags in the terminal state are set to match the new value of the local flags
+word. (This \fBioctl\fR was added because \fBsg_flags\fR was once a 16 bit
+value. The local modes controlled by TIOCLSET are equivalent to the modes
+controlled by TIOCSETP and \fBsg_flags\fR.)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBTIOCGLTC\fR \fR
+.ad
+.RS 14n
+The argument is a pointer to an \fBltchars\fR structure. The values of the
+appropriate characters in the terminal state are stored in that structure.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBTIOCSLTC\fR \fR
+.ad
+.RS 14n
+The argument is a pointer to an \fBltchars\fR structure. The values of the
+appropriate characters in the terminal state are set from the characters in
+that structure.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBFIORDCHK\fR \fR
+.ad
+.RS 14n
+Returns the number of immediately readable characters. The argument is ignored.
+(This ioctl is handled in the stream head, not in the \fBttcompat\fR module.)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBFIONREAD\fR \fR
+.ad
+.RS 14n
+Returns the number of immediately readable characters in the int pointed to by
+the argument. (This ioctl is handled in the stream head, not in the
+\fBttcompat\fR module.)
+.RE
+
+.sp
+.LP
+The following ioctls are returned as successful for the sake of compatibility.
+However, nothing significant is done (that is, the state of the terminal is not
+changed in any way, and no message is passed through to the underlying
+\fBtty\fR driver).
+.sp
+.in +2
+.nf
+
+DIOCSETP
+DIOCSETP
+DIOCGETP
+LDCLOSE
+LDCHG
+LDOPEN
+LDGETT
+LDSETT
+TIOCGETD
+TIOCSETD
+.fi
+.in -2
+
+.sp
+.LP
+The following old \fBioctl\fRs are not supported by \fBttcompat\fR, but are
+supported by Solaris \fBtty\fR drivers. As with all ioctl not otherwise listed
+in this documentation, these are passed through to the underlying driver and
+are handled there.
+.sp
+.in +2
+.nf
+TIOCREMOTE
+TIOCGWINSZ
+TIOCSWINSZ
+.fi
+.in -2
+
+.sp
+.LP
+The following \fBioctls\fR are not supported by \fBttcompat\fR, and are
+generally not supported by Solaris \fBtty\fR drivers. They are passed through,
+and the \fBtty\fR drivers return EINVAL.
+.sp
+.in +2
+.nf
+LDSMAP
+LDGMAP
+LDNMAP
+TIOCNOTTY
+TIOCOUTQ
+.fi
+.in -2
+
+.sp
+.LP
+(Note: LDSMAP, LDGMAP, and LDNMAP are defined in
+<\fBsys/termios.h\fR>.)
+.SH SEE ALSO
+.sp
+.LP
+.BR ioctl (2),
+.BR termios (3C),
+.BR termio (4I),
+.BR ldterm (4M)
diff --git a/usr/src/man/man4m/usb_ah.4m b/usr/src/man/man4m/usb_ah.4m
new file mode 100644
index 0000000000..63da7c90a5
--- /dev/null
+++ b/usr/src/man/man4m/usb_ah.4m
@@ -0,0 +1,91 @@
+'\" te
+.\" Copyright (c) 2009 by Sun Microsystems, Inc. All rights reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH USB_AH 4M "May 15, 2009"
+.SH NAME
+usb_ah \- USB audio HID STREAMS module
+.SH DESCRIPTION
+.sp
+.LP
+The \fBusb_ah\fR STREAMS module enables the USB input control device which is a
+member of the Human Interface Device (HID) class and provides support for
+volume change and mute button. The \fBusb_ah\fR module is pushed on top of a
+HID class driver instance (see \fBhid\fR(4D)) and below an Audio Control class
+driver instance (see \fBusb_ac\fR(4D)). It translates the HID specific events
+to the events that are supported by the Solaris audio mixer framework.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/kernel/strmod/usb_ah\fR\fR
+.ad
+.sp .6
+.RS 4n
+32-bit ELF kernel STREAMS module. (x86 platform only.)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/strmod/sparcv9/usb_ah\fR\fR
+.ad
+.sp .6
+.RS 4n
+SPARC 64-bit ELF kernel STREAMS module
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/strmod/amd64/usb_ah\fR\fR
+.ad
+.sp .6
+.RS 4n
+x8664-bit ELF kernel STREAMS module
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture PCI-based systems
+_
+Interface Stability Committed
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+\fBhid\fR(4D), \fBusba\fR(4D), \fBusb_ac\fR(4D), \fBusb_as\fR(4D),
+\fBusb_mid\fR(4D), \fBaudio\fR(4I),
+.sp
+.LP
+\fISTREAMS Programming Guide\fR
+.sp
+.LP
+\fISystem Administration Guide: Basic Administration\fR
+.sp
+.LP
+\fIUniversal Serial Bus Specification 1.0 and 1.1\fR
+.sp
+.LP
+\fIDevice Class Definition for Human Interface Devices (HID) 1.1\fR
+.SH DIAGNOSTICS
+.sp
+.LP
+None
+.SH NOTES
+.sp
+.LP
+If USB audio drivers are not loaded, buttons are not active.
diff --git a/usr/src/man/man4m/usbkbm.4m b/usr/src/man/man4m/usbkbm.4m
new file mode 100644
index 0000000000..c6b0507faf
--- /dev/null
+++ b/usr/src/man/man4m/usbkbm.4m
@@ -0,0 +1,193 @@
+'\" te
+.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH USBKBM 4M "May 13, 2017"
+.SH NAME
+usbkbm \- keyboard STREAMS module for Sun USB Keyboard
+.SH SYNOPSIS
+.LP
+.nf
+\fB\fR
+.fi
+
+.LP
+.nf
+open("/dev/kbd", O_RDWR)
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBusbkbm\fR \fBSTREAMS\fR module processes byte streams generated by a
+keyboard attached to a \fBUSB\fR port. \fBUSB\fR keyboard is a member of
+Human Interface Device (HID) Class, and \fBusbkbm\fR only supports the keyboard
+protocol defined in the specification. Definitions for altering keyboard
+translation and reading events from the keyboard are in \fB<sys/kbio.h>\fR and
+\fB<sys/kbd.h>\fR\&.
+.sp
+.LP
+The \fBusbkbm\fR \fBSTREAMS\fR module adheres to the interfaces exported by
+\fBkb\fR(4M). Refer to the \fBDESCRIPTION\fR section of \fBkb\fR(4M) for a
+discussion of the keyboard translation modes and the \fBIOCTL\fR section for
+the supported \fBioctl\fR(2) requests.
+.SS "IOCTLS"
+.LP
+\fBUSB\fR Keyboard \fBusbkbm\fR returns different values for the following
+ioctls than \fBkb\fR(4M):
+.sp
+.ne 2
+.na
+\fB\fBKIOCTYPE\fR \fR
+.ad
+.RS 13n
+This \fBioctl()\fR returns a new keyboard type defined for the \fBUSB\fR
+keyboard. All types are listed below:
+.RE
+
+.sp
+.in +2
+.nf
+KB_SUN3 Sun Type 3 keyboard
+KB_SUN4 Sun Type 4 keyboard
+KB_ASCII ASCII terminal masquerading as keyboard
+KB_PC Type 101 PC keyboard
+KB_USB USB keyboard
+.fi
+.in -2
+
+.sp
+.LP
+The \fBUSB\fR keyboard type is \fBKB_USB\fR; \fBusbkbm\fR will return
+\fBKB_USB\fR in response to the \fBKIOCTYPE\fR ioctl.
+.sp
+.ne 2
+.na
+\fB\fBKIOCLAYOUT\fR \fR
+.ad
+.RS 15n
+The argument is a pointer to an \fBint\fR. The layout code specified by the
+\fBbCountryCode\fR value returned in the \fBHID\fR descriptor is returned in
+the int pointed to by the argument. The \fBcountrycodes\fR are defined in 6.2.1
+of the \fBHID\fR 1.0 specifications.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBKIOCCMD\fR \fR
+.ad
+.RS 15n
+.sp
+.ne 2
+.na
+\fB\fBKBD_CMD_CLICK/KBD_CMD_NOCLICK\fR \fR
+.ad
+.sp .6
+.RS 4n
+The \fBkb\fR(4M) indicates that inappropriate commands for particular keyboards
+are ignored. Because clicking is not supported on the \fBUSB\fR keyboard,
+\fBusbkbm\fR ignores this command
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBKBD_CMD_SETLED\fR \fR
+.ad
+.sp .6
+.RS 4n
+Set keyboard LEDs. Same as \fBkb\fR(4M).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBKBD_CMD_GETLAYOUT\fR \fR
+.ad
+.sp .6
+.RS 4n
+The country codes defined in 6.2.1 of the \fBHID\fR 1.0 specification are
+returned.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBKBD_CMD_BELL/KBD_CMD_NOBELL\fR \fR
+.ad
+.sp .6
+.RS 4n
+This command is supported although the \fBUSB\fR keyboard does not have a
+buzzer. The request for the bell is rerouted.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBKBD_CMD_RESET\fR \fR
+.ad
+.sp .6
+.RS 4n
+There is no notion of resetting the keyboard as there is for the type4
+keyboard. \fBusbkbm\fR ignores this command and does not return an error.
+.RE
+
+.RE
+
+.SH FILES
+.ne 2
+.na
+\fB/kernel/strmod/usbkbm\fR
+.ad
+.sp .6
+.RS 4n
+32-bit ELF kernel STREAMS module (x86 platform only)
+.RE
+
+.sp
+.ne 2
+.na
+\fB/kernel/strmod/sparcv9/usbkbm\fR
+.ad
+.sp .6
+.RS 4n
+SPARC 64-bit ELF kernel STREAMS module
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for a description of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture PCI-based systems
+.TE
+
+.SH SEE ALSO
+.LP
+.BR dumpkeys (1),
+.BR kbd (1),
+.BR loadkeys (1),
+.BR ioctl (2),
+.BR hid (4D),
+.BR usba (4D),
+.BR virtualkm (4D),
+.BR kb (4M),
+.BR keytables (5),
+.BR attributes (7)
+.sp
+.LP
+\fISTREAMS Programming Guide\fR
+.sp
+.LP
+\fISystem Administration Guide: Basic Administration\fR
+.SH DIAGN0STICS
+.LP
+None
diff --git a/usr/src/man/man4m/usbms.4m b/usr/src/man/man4m/usbms.4m
new file mode 100644
index 0000000000..8e503414a8
--- /dev/null
+++ b/usr/src/man/man4m/usbms.4m
@@ -0,0 +1,332 @@
+'\" te
+.\" Copyright (c) 2005, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH USBMS 4M "May 13, 2017"
+.SH NAME
+usbms \- USB mouse STREAMS module
+.SH SYNOPSIS
+.LP
+.nf
+#include <sys/vuid_event.h>
+.fi
+
+.LP
+.nf
+#include <sys/vuid_wheel.h>
+.fi
+
+.LP
+.nf
+#include <sys/msio.h>
+.fi
+
+.LP
+.nf
+#include <sys/msreg.h>
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBusbms\fR \fBSTREAMS\fR module processes byte streams generated by a
+\fBUSB\fR mouse. A \fBUSB\fR mouse is a member of the Human Interface Device
+(HID) class and the \fBusbms\fR module supports only the mouse boot protocol
+defined in the \fBHID\fR specification.
+.sp
+.LP
+The \fBusbms\fR module must be pushed on top of the \fBHID\fR class driver (see
+\fBhid\fR(4D)). In the \fBVUID_FIRM_EVENT\fR mode, the \fBusbms\fR module
+translates packets from the \fBUSB\fR mouse into Firm events. The Firm event
+structure is defined in \fB<sys/vuid_event.h>\fR\&. The \fBSTREAMS\fR module
+state is initially set to raw or \fBVUID_NATIVE\fR mode which performs no
+message processing. See the \fIHID 1.0\fR specification for the raw format of
+the mouse packets. To initiate mouse protocol conversion to Firm events, change
+the state to \fBVUID_FIRM_EVENT\fR.
+.sp
+.LP
+When the usb mouse is opened or hot plugged in, the MOUSE_TYPE_ABSOLUTE event
+(Firm event) is sent to the upper level to notify the VUID application that it
+is the absolute mouse.
+.SH IOCTLS
+.ne 2
+.na
+\fB\fBVUIDGFORMAT\fR \fR
+.ad
+.RS 16n
+This option returns the current state of the \fBSTREAMS\fR module. The state
+of the \fBusbms\fR \fBSTREAMS\fR module may be either \fBVUID_NATIVE\fR (no
+message processing) or \fBVUID_FIRM_EVENT\fR (convert to Firm events).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBVUIDSFORMAT\fR \fR
+.ad
+.RS 16n
+The argument is a pointer to an \fBint\fR. Set the state of the \fBSTREAMS\fR
+module to the \fBint\fR pointed to by the argument.
+.RE
+
+.sp
+.in +2
+.nf
+typedef struct vuid_addr_probe {
+ short base; /* default vuid device addr directed too */
+ union {
+ short next; /* next addr for default when VUIDSADDR */
+ short current; /* current addr of default when VUIDGADDR */
+ } data;
+} Vuid_addr_probe;
+.fi
+.in -2
+
+.sp
+.ne 2
+.na
+\fB\fBVUIDSADDR\fR \fR
+.ad
+.RS 14n
+The argument is a pointer to a \fBVuid_addr_probe\fR structure.
+\fBVUIDSADDR\fR sets the virtual input device segment address indicated by base
+to next.
+.RE
+
+.sp
+.LP
+If base does not equal \fBVKEY_FIRST\fR, \fBENODEV\fR is returned.
+.sp
+.ne 2
+.na
+\fB\fBVUIDGADDR\fR \fR
+.ad
+.RS 14n
+The argument is a pointer to a \fBVuid_addr_probe\fR structure. Return the
+address of the virtual input device segment indicated by base to current.
+.RE
+
+.sp
+.LP
+If base does not equal \fBVKEY_FIRST\fR, \fBENODEV\fR is returned.
+.sp
+.ne 2
+.na
+\fBVUIDGWHEELCOUNT\fR
+.ad
+.sp .6
+.RS 4n
+This ioctl takes a pointer to an integer as argument and sets the value of the
+integer to the number of wheels available on this device. This ioctl returns 1
+if wheel(s) are present and zero if no wheels are present.
+.RE
+
+.sp
+.ne 2
+.na
+\fBVUIDGWHEELINFO\fR
+.ad
+.sp .6
+.RS 4n
+This command returns static information about the wheel that does not change
+while a device is in use. Currently the only information defined is the
+wheel orientation which is either VUID_WHEEL_FORMAT_VERTICAL or
+VUID_WHEEL_FORMAT_HORIZONTAL. If the module cannot distinguish the orientation
+of the wheel or the wheel is of some other format, the format is set to
+VUID_WHEEL_FORMAT_UNKNOWN.
+.sp
+.in +2
+.nf
+ typedef struct {
+ int vers;
+ int id;
+ int format;
+ } wheel_info;
+.fi
+.in -2
+
+The ioctl takes a pointer to "wheel_info" structure with the "vers" set to
+the current version of the "wheel_info" structure and "id" set to the id of the
+wheel for which the information is desired.
+.RE
+
+.sp
+.ne 2
+.na
+\fBVUIDSWHEELSTATE/VUIDGWHEELSTATE\fR
+.ad
+.sp .6
+.RS 4n
+VUIDSWHEELSTATE sets the state of the wheel to that specified in the
+stateflags. VUIDGWHEELSTATE returns the current state settings in the
+stateflags field.
+.sp
+stateflags is an OR'ed set of flag bits. The only flag currently defined is
+VUID_WHEEL_STATE_ENABLED.
+.sp
+When stateflags is set to VUID_WHEEL_STATE_ENABLED the module converts motion
+of the specified wheel into VUID events and sends those up stream.
+.sp
+Wheel events are enabled by default.
+.sp
+Applications that want to change the stateflags should first get the current
+stateflags and then change only the bit they want.
+.sp
+.in +2
+.nf
+ typedef struct {
+ int vers;
+ int id;
+ uint32_t stateflags;
+ } wheel_state;
+.fi
+.in -2
+
+These ioctls take a pointer to "wheel_state" as an argument with the "vers"
+and "id" members filled in. These members have the same meaning as that
+for 'VUIDGWHEEL INFO' ioctl.
+.RE
+
+.sp
+.LP
+\fBioctl()\fR requests for changing and retrieving mouse parameters use the
+\fBMs_parms\fR structure:
+.sp
+.in +2
+.nf
+ typedef struct {
+ int jitter_thresh;
+ int speed_law;
+ int speed_limit;
+ } Ms_parms;
+.fi
+.in -2
+
+.sp
+.LP
+\fBjitter_thresh\fR is the "jitter threshold" of the mouse. Motions fewer than
+\fBjitter_thresh\fR units along both axes are accumulated and then sent up the
+stream after 1/12 second.
+.sp
+.LP
+\fBspeed_law\fR indicates whether extremely large motions are to be ignored. If
+it is \fB1,\fR a "speed limit" is applied to mouse motions. Motions along
+either axis of more than \fBspeed_limit\fR units are discarded.
+.sp
+.ne 2
+.na
+\fB\fBMSIOGETPARMS\fR \fR
+.ad
+.RS 19n
+The argument is a pointer to a \fBMs_params\fR structure. The \fBusbms\fR
+module parameters are returned in the structure.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBMSIOSETPARMS\fR\fR
+.ad
+.RS 19n
+The argument is a pointer to a \fBMs_params\fR structure. The \fBusbms\fR
+module parameters are set according to the values in the structure.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBMSIOSRESOLUTION\fR\fR
+.ad
+.RS 19n
+Used by the absolute mouse to get the current screen resolution. The parameter
+is a pointer to the \fBMs_screen_resolution\fR structure:
+.sp
+.in +2
+.nf
+int height; /* height of the screen */
+int width; /* width of the screen */
+}Ms_screen_resolution;
+.fi
+.in -2
+
+The \fBusbms\fR module parameters are set according to the values in the
+structure and used to calculate the correct coordinates.
+.RE
+
+.SH FILES
+.ne 2
+.na
+\fB/kernel/strmod/usbms\fR
+.ad
+.sp .6
+.RS 4n
+32-bit ELF kernel STREAMS module (x86 platform only.)
+.RE
+
+.sp
+.ne 2
+.na
+\fB/kernel/strmod/sparcv9/usbms\fR
+.ad
+.sp .6
+.RS 4n
+SPARC 64-bit ELF kernel STREAMS module
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for a description of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture PCI-based systems
+.TE
+
+.SH SEE ALSO
+.LP
+.BR ioctl (2),
+.BR hid (4D),
+.BR usba (4D),
+.BR virtualkm (4D),
+.BR attributes (7)
+.sp
+.LP
+\fISystem Administration Guide: Basic Administration\fR
+.SH DIAGNOSTICS
+.LP
+The following messages may be logged into the system log. They are formatted in
+the following manner:
+.sp
+.in +2
+.nf
+<device path><usbms<instance number>): message...
+.fi
+.in -2
+.sp
+
+.sp
+.ne 2
+.na
+\fBInvalid Hid descriptor tree. Set to default value (3 buttons).\fR
+.ad
+.sp .6
+.RS 4n
+The mouse supplied incorrect information in its HID report.
+.RE
+
+.sp
+.ne 2
+.na
+\fBMouse buffer flushed when overrun.\fR
+.ad
+.sp .6
+.RS 4n
+Mouse data was lost.
+.RE
+
diff --git a/usr/src/man/man4m/vuidmice.4m b/usr/src/man/man4m/vuidmice.4m
new file mode 100644
index 0000000000..14228d4d67
--- /dev/null
+++ b/usr/src/man/man4m/vuidmice.4m
@@ -0,0 +1,297 @@
+'\" te
+.\" Copyright (c) 2004, Sun Microsystems, Inc.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH VUIDMICE 4M "Jun 21, 2005"
+.SH NAME
+vuidmice, vuidm3p, vuidm4p, vuidm5p, vuid2ps2, vuid3ps2 \- converts mouse
+protocol to Firm Events
+.SH SYNOPSIS
+.LP
+.nf
+#include <sys/stream.h>
+.fi
+
+.LP
+.nf
+#include <sys/vuid_event.h>
+.fi
+
+.LP
+.nf
+#include <sys/vuid_wheel.h>
+.fi
+
+.LP
+.nf
+int ioctl(\fIfd\fR, I_PUSH, vuidm3p);
+.fi
+
+.LP
+.nf
+int ioctl(\fIfd\fR, I_PUSH, vuidm4p);
+.fi
+
+.LP
+.nf
+int ioctl(\fIfd\fR, I_PUSH, vuidm5p);
+.fi
+
+.LP
+.nf
+int ioctl(\fIfd\fR, I_PUSH, vuid2ps2);
+.fi
+
+.LP
+.nf
+int ioctl(\fIfd\fR, I_PUSH, vuid3ps2);
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The STREAMS modules \fBvuidm3p\fR, \fBvuidm4p\fR, \fBvuidm5p\fR,
+\fBvuid2ps2\fR, and \fBvuid3ps2\fR convert mouse protocols to Firm events. The
+Firm event structure is described in <\fBsys/vuid_event.h\fR>. Pushing a
+STREAMS module does not automatically enable mouse protocol conversion to Firm
+events. The STREAMS module state is initially set to raw or \fBVUID_NATIVE\fR
+mode which performs no message processing. You must change the state to
+\fBVUID_FIRM_EVENT\fR mode to initiate mouse protocol conversion to Firm
+events. This can be accomplished by the following code:
+.sp
+.in +2
+.nf
+int format;
+format = VUID_FIRM_EVENT;
+ioctl(fd, VUIDSFORMAT, &format);
+.fi
+.in -2
+
+.sp
+.LP
+You can also query the state of the STREAMS module by using the
+\fBVUIDGFORMAT\fR option.
+.sp
+.in +2
+.nf
+int format;
+int fd; /* file descriptor */
+ioctl(fd, VUIDGFORMAT, &format);
+if ( format == VUID_NATIVE );
+ /* The state of the module is in raw mode.
+ * Message processing is not enabled.
+ */
+if ( format == VUID_FIRM_EVENT );
+ /* Message processing is enabled.
+ * Mouse protocol conversion to Firm events
+ * are performed.
+.fi
+.in -2
+
+.sp
+.LP
+The remainder of this section describes the processing of STREAMS messages on
+the read- and write-side.
+.SS "Read Side Behavior"
+.sp
+.ne 2
+.na
+\fB\fBM_DATA\fR \fR
+.ad
+.RS 12n
+Incoming messages are queued and converted to Firm events.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM_FLUSH\fR \fR
+.ad
+.RS 12n
+The read queue of the module is flushed of all its data messages and all data
+in the record being accumulated are also flushed. The message is passed
+upstream.
+.RE
+
+.SS "Write Side Behavior"
+.sp
+.ne 2
+.na
+\fB\fBM_IOCTL\fR \fR
+.ad
+.RS 16n
+Messages sent downstream as a result of an \fBioctl\fR(2) system call. The two
+valid \fBioctl\fR options processed by the \fBvuidmice\fR modules are
+\fBVUIDGFORMAT\fR and \fBVUIDSFORMAT\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM_FLUSH\fR \fR
+.ad
+.RS 16n
+The write queue of the module is flushed of all its data messages and the
+message is passed downstream.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBVUIDGFORMAT\fR \fR
+.ad
+.RS 16n
+This option returns the current state of the STREAMS module. The state of the
+\fBvuidmice\fR STREAMS module may either be \fBVUID_NATIVE\fR (no message
+processing) or \fBVUID_FIRM_EVENT\fR (convert to Firm events).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBVUIDSFORMAT\fR \fR
+.ad
+.RS 16n
+This option sets the state of the STREAMS module to \fBVUID_FIRM_EVENT.\fR If
+the state of the STREAMS module is already in \fBVUID_FIRM_EVENT\fR, this
+option is non-operational. It is not possible to set the state back to
+\fBVUID_NATIVE\fR once the state becomes \fBVUID_FIRM_EVENT.\fR To disable
+message processing, pop the STREAMS module out by calling \fBioctl(fd, 1I_POP,
+vuid*)\fR.
+.RE
+
+.sp
+.LP
+The following wheel support ioctls are defined for PS/2 mouse only:
+.sp
+.ne 2
+.na
+\fBVUIDGWHEELCOUNT\fR
+.ad
+.RS 19n
+This ioctl takes a pointer to an integer as argument and sets the value of the
+integer to the number of wheels available on this device.
+.RE
+
+.sp
+.ne 2
+.na
+\fBVUIDGWHEELINFO\fR
+.ad
+.RS 19n
+This command returns static information about the wheel that does not
+change while a device is in use. Currently the only information defined is
+the wheel orientation which is either
+VUID_WHEEL_FORMAT_VERTICAL or VUID_WHEEL_FORMAT_HORIZONTAL.
+.sp
+.in +2
+.nf
+ typedef struct {
+ int vers;
+ int id;
+ int format;
+ } wheel_info;
+.fi
+.in -2
+
+The ioctl takes a pointer to "wheel_info" structure with the "vers" set to
+the current version of the "wheel_info" structure and "id" set to the id of the
+wheel for which the information is desired.
+.RE
+
+.sp
+.ne 2
+.na
+\fBVUIDSWHEELSTATE\fR
+.ad
+.br
+.na
+\fBVUIDGWHEELSTATE\fR
+.ad
+.RS 19n
+VUIDSWHEELSTATE sets the state of the wheel to that specified in the
+stateflags. VUIDGWHEELSTATE returns the current state settings in the
+stateflags field.
+.sp
+stateflags is an OR'ed set of flag bits. The only flag currently defined is
+VUID_WHEEL_STATE_ENABLED.
+.sp
+When stateflags is set to VUID_WHEEL_STATE_ENABLED the module converts motion
+of the specified wheel into VUID events and sends those up stream.
+.sp
+Wheel events are disabled by default.
+.sp
+Applications that want to change a flag should first get the current flags
+and then change only the bit they want.
+.sp
+.in +2
+.nf
+ typedef struct {
+ int vers;
+ int id;
+ uint32_t stateflags;
+ } wheel_state;
+.fi
+.in -2
+
+These ioctls take pointer to 'wheel_state' as an argument with the 'vers'
+and 'id' members filled up. These members have the same meaning as that
+for 'VUIDGWHEELINFO' ioctl.
+.RE
+
+.SS "Mouse Configurations"
+.sp
+
+.sp
+.TS
+box;
+c | c | c
+l | l | l .
+Module Protocol Type Device
+_
+vuidm3p T{
+3-Byte Protocol Microsoft 2 Button Serial Mouse
+T} /dev/tty*
+_
+vuidm4p T{
+4-Byte Protocol Logitech 3 Button Mouseman
+T} /dev/tty*
+_
+vuidm5p T{
+Logitech 3 Button Bus Mouse Microsoft Bus Mouse
+T} /dev/logi/ dev/msm
+_
+vuid2ps2 T{
+PS/2 Protocol 2 Button PS/2 Compatible Mouse
+T} /dev/kdmouse
+_
+vuid3ps2 T{
+PS/2 Protocol 3 Button PS/2 Compatible Mouse
+T} /dev/kdmouse
+.TE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture x86
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR virtualkm (4D),
+.BR attributes (7)
+.sp
+.LP
+\fISTREAMS Programming Guide\fR
diff --git a/usr/src/man/man4p/Makefile b/usr/src/man/man4p/Makefile
new file mode 100644
index 0000000000..1395a9834b
--- /dev/null
+++ b/usr/src/man/man4p/Makefile
@@ -0,0 +1,86 @@
+#
+# This file and its contents are supplied under the terms of the
+# Common Development and Distribution License ("CDDL"), version 1.0.
+# You may only use this file in accordance with the terms of version
+# 1.0 of the CDDL.
+#
+# A full copy of the text of the CDDL should have accompanied this
+# source. A copy of the CDDL is also available via the Internet
+# at http://www.illumos.org/license/CDDL.
+#
+
+#
+# Copyright 2011, Richard Lowe
+# Copyright 2013 Nexenta Systems, Inc. All rights reserved.
+#
+
+include $(SRC)/Makefile.master
+
+MANSECT= 4p
+
+MANFILES= arp.4p \
+ dlpi.4p \
+ icmp.4p \
+ icmp6.4p \
+ if_tcp.4p \
+ inet.4p \
+ inet6.4p \
+ ip.4p \
+ ip6.4p \
+ ipsec.4p \
+ ipsecah.4p \
+ ipsecesp.4p \
+ ndp.4p \
+ pf_key.4p \
+ rarp.4p \
+ route.4p \
+ routing.4p \
+ sctp.4p \
+ sip.4p \
+ slp.4p \
+ tcp.4p \
+ udp.4p \
+ vxlan.4p
+
+MANLINKS= AH.4p \
+ ARP.4p \
+ ESP.4p \
+ ICMP.4p \
+ IP.4p \
+ NDP.4p \
+ RARP.4p \
+ SCTP.4p \
+ TCP.4p \
+ UDP.4p \
+ VXLAN.4p \
+ if.4p
+
+ARP.4p := LINKSRC = arp.4p
+
+ICMP.4p := LINKSRC = icmp.4p
+
+if.4p := LINKSRC = if_tcp.4p
+
+IP.4p := LINKSRC = ip.4p
+
+AH.4p := LINKSRC = ipsecah.4p
+
+ESP.4p := LINKSRC = ipsecesp.4p
+
+NDP.4p := LINKSRC = ndp.4p
+
+RARP.4p := LINKSRC = rarp.4p
+
+SCTP.4p := LINKSRC = sctp.4p
+
+TCP.4p := LINKSRC = tcp.4p
+
+UDP.4p := LINKSRC = udp.4p
+
+VXLAN.4p := LINKSRC = vxlan.4p
+
+.KEEP_STATE:
+
+include $(SRC)/man/Makefile.man
+
+install: $(ROOTMANFILES) $(ROOTMANLINKS)
diff --git a/usr/src/man/man4p/arp.4p b/usr/src/man/man4p/arp.4p
new file mode 100644
index 0000000000..99e13f651a
--- /dev/null
+++ b/usr/src/man/man4p/arp.4p
@@ -0,0 +1,426 @@
+'\" te
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 2008 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH ARP 4P "Sep 02, 2015"
+.SH NAME
+arp, ARP \- Address Resolution Protocol
+.SH SYNOPSIS
+.LP
+.nf
+\fB#include <sys/fcntl.h>\fR
+\fB#include <sys/socket.h>\fR
+\fB#include <net/if_arp.h>\fR
+\fB#include <netinet/in.h>\fR
+.fi
+.LP
+.nf
+\fBs = socket(PF_INET, SOCK_DGRAM, 0);\fR
+.fi
+.LP
+.nf
+\fBd = open ("/dev/arp", \fIoflag\fR);\fR
+.fi
+.SH DESCRIPTION
+.LP
+ARP is a protocol used to map dynamically between Internet Protocol (IP) and
+Ethernet addresses. It is used by all Ethernet datalink providers (network
+drivers) and can be used by other datalink providers that support broadcast,
+including FDDI and Token Ring. The only network layer supported in this
+implementation is the Internet Protocol, although ARP is not specific to that
+protocol.
+.sp
+.LP
+\fBARP\fR caches \fBIP-to-link-layer\fR address mappings. When an interface
+requests a mapping for an address not in the cache, \fBARP\fR queues the
+message that requires the mapping and broadcasts a message on the associated
+network requesting the address mapping. If a response is provided, \fBARP\fR
+caches the new mapping and transmits any pending message. \fBARP\fR will queue
+a maximum of four packets while awaiting a response to a mapping request. ARP
+keeps only the first four transmitted packets.
+.SH APPLICATION PROGRAMMING INTERFACE
+.LP
+The STREAMS device \fB/dev/arp\fR is not a Transport Level Interface
+(\fBTLI\fR) transport provider and may not be used with the \fBTLI\fR
+interface.
+.sp
+.LP
+To facilitate communications with systems that do not use ARP, ioctl()
+requests are provided to enter and delete entries in the IP-to-link
+address tables. Ioctls that change the table contents require the
+\fBPRIV_SYS_NET_CONFIG\fR privilege. See \fBprivileges\fR(7).
+.sp
+.in +2
+.nf
+#include <sys/sockio.h>
+#include <sys/socket.h>
+#include <net/if.h>
+#include <net/if_arp.h>
+struct arpreq arpreq;
+ioctl(s, SIOCSARP, (caddr_t)&arpreq);
+ioctl(s, SIOCGARP, (caddr_t)&arpreq);
+ioctl(s, SIOCDARP, (caddr_t)&arpreq);
+.fi
+.in -2
+
+.sp
+.LP
+\fBSIOCSARP\fR, \fBSIOCGARP\fR and \fBSIOCDARP\fR are BSD compatible ioctls.
+These ioctls do not communicate the mac address length between the user and the
+kernel (and thus only work for 6 byte wide Ethernet addresses). To manage the
+ARP cache for media that has different sized mac addresses, use
+\fBSIOCSXARP\fR, \fBSIOCGXARP\fR and \fBSIOCDXARP\fR ioctls.
+.sp
+.in +2
+.nf
+#include <sys/sockio.h>
+#include <sys/socket.h>
+#include <net/if.h>
+#include <net/if_dl.h>
+#include <net/if_arp.h>
+struct xarpreq xarpreq;
+ioctl(s, SIOCSXARP, (caddr_t)&xarpreq);
+ioctl(s, SIOCGXARP, (caddr_t)&xarpreq);
+ioctl(s, SIOCDXARP, (caddr_t)&xarpreq);
+.fi
+.in -2
+
+.sp
+.LP
+Each \fBioctl()\fR request takes the same structure as an argument.
+\fBSIOCS[X]ARP\fR sets an \fBARP\fR entry, \fBSIOCG[X]ARP\fR gets an \fBARP\fR
+entry, and \fBSIOCD[X]ARP\fR deletes an \fBARP\fR entry. These \fBioctl()\fR
+requests may be applied to any Internet family socket descriptor\fIs\fR, or to
+a descriptor for the \fBARP\fR device. Note that \fBSIOCS[X]ARP\fR and
+\fBSIOCD[X]ARP\fR require the user to have the \fBPRIV_SYS_NET_CONFIG\fR
+privilege, while \fBSIOCG[X]ARP\fR does not.
+.sp
+.LP
+The \fBarpreq\fR structure contains
+.sp
+.in +2
+.nf
+/*
+* ARP ioctl request
+*/
+struct arpreq {
+ struct sockaddr arp_pa; /* protocol address */
+ struct sockaddr arp_ha; /* hardware address */
+ int arp_flags; /* flags */
+};
+.fi
+.in -2
+
+.sp
+.LP
+The \fBxarpreq\fR structure contains:
+.sp
+.in +2
+.nf
+/*
+* Extended ARP ioctl request
+*/
+struct xarpreq {
+ struct sockaddr_storage xarp_pa; /* protocol address */
+ struct sockaddr_dl xarp_ha; /* hardware address */
+ int xarp_flags; /* arp_flags field values */
+};
+#define ATF_COM 0x2 /* completed entry (arp_ha valid) */
+#define ATF_PERM 0x4 /* permanent (non-aging) entry */
+#define ATF_PUBL 0x8 /* publish (respond for other host) */
+#define ATF_USETRAILERS 0x10 /* send trailer pckts to host */
+#define ATF_AUTHORITY 0x20 /* hardware address is authoritative */
+.fi
+.in -2
+
+.sp
+.LP
+The address family for the [x]arp_pa sockaddr must be \fBAF_INET\fR. The
+\fBATF_COM\fR flag bits ([x]arp_flags) cannot be altered. \fBATF_USETRAILERS\fR
+is not implemented by the operating system and is retained for
+compatibility only. \fBATF_PERM\fR makes the entry permanent (disables aging)
+if the \fBioctl()\fR request succeeds. \fBATF_PUBL\fR specifies that the system
+should respond to ARP requests for the indicated protocol address coming from
+other machines. This allows a host to act as an ARP server, which may be useful
+in convincing an ARP-only machine to talk to a non-ARP machine.
+\fBATF_AUTHORITY\fR indicates that this machine owns the address. ARP does not
+update the entry based on received packets.
+.sp
+.LP
+The address family for the arp_ha sockaddr must be \fBAF_UNSPEC\fR.
+.sp
+.LP
+Before invoking any of the \fBSIOC*XARP\fR ioctls, user code must fill in the
+\fBxarp_pa\fR field with the protocol (IP) address information, similar to the
+BSD variant. The \fBSIOC*XARP\fR ioctls come in two (legal) varieties,
+depending on \fBxarp_ha.sdl_nlen\fR:
+.RS +4
+.TP
+1.
+if \fBsdl_nlen\fR = 0, it behaves as an extended BSD ioctl. The kernel uses
+the IP address to determine the network interface.
+.RE
+.RS +4
+.TP
+2.
+if (\fBsdl_nlen\fR > 0) and (\fBsdl_nlen\fR < \fBLIFNAMSIZ\fR), the kernel
+uses the interface name in sdl_data[0] to determine the network interface;
+\fBsdl_nlen\fR represents the length of the string (excluding terminating null
+character).
+.RE
+.RS +4
+.TP
+3.
+if (\fBsdl_nlen\fR >= \fBLIFNAMSIZ\fR), an error (\fBEINVAL\fR) is flagged
+from the ioctl.
+.RE
+.sp
+.LP
+Other than the above, the \fBxarp_ha\fR structure should be 0-filled except for
+\fBSIOCSXARP\fR, where the \fBsdl_alen\fR field must be set to the size of
+hardware address length and the hardware address itself must be placed in the
+\fB\fR\fBLLADDR/sdl_data[]\fR area. (\fBEINVAL\fR will be returned if user
+specified \fBsdl_alen\fR does not match the address length of the identified
+interface).
+.sp
+.LP
+On return from the kernel on a \fBSIOCGXARP\fR ioctl, the kernel fills in the
+name of the interface (excluding terminating NULL) and its hardware address,
+one after another, in the \fBsdl_data/LLADDR\fR area; if the two are larger
+than can be held in the 244 byte \fBsdl_data[\fR] area, an \fBEINVAL\fR error
+is returned. Assuming it fits, the kernel will also set \fBsdl_alen\fR with the
+length of the hardware address, \fBsdl_nlen\fR with the length of the name of the
+interface (excluding terminating NULL), \fBsdl_type\fR with an IFT_* value to
+indicate the type of the media, \fBsdl_slen\fR with 0, \fBsdl_family\fR with
+\fBAF_LINK\fR and \fBsdl_index\fR (which if not 0) with system given index for
+the interface. The information returned is very similar to that returned via
+routing sockets on an \fBRTM_IFINFO\fR message.
+.sp
+.LP
+The ARP ioctls have several additional restrictions and enhancements when
+used in conjunction with IPMP:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+ARP mappings for IPMP data and test addresses are managed by the kernel and
+cannot be changed through ARP ioctls, though they may be retrieved using
+\fBSIOCGARP\fR or \fBSIOCGXARP\fR.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+ARP mappings for a given IPMP group must be consistent across the group. As a
+result, ARP mappings cannot be associated with individual underlying IP
+interfaces in an IPMP group and must instead be associated with the
+corresponding IPMP IP interface.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Proxy ARP mappings for an IPMP group are automatically managed by the kernel.
+Specifically, if the hardware address in a \fBSIOCSARP\fR or \fBSIOCSXARP\fR
+request matches the hardware address of an IP interface in an IPMP group and
+the IP address is not local to the system, the kernel regards this as a IPMP
+Proxy ARP entry. This IPMP Proxy ARP entry will have its hardware address
+automatically adjusted in order to keep the IP address reachable (provided
+the IPMP group has not entirely failed).
+.RE
+.sp
+.LP
+\fBARP\fR performs duplicate address detection for local addresses. When a
+logical interface is brought up (\fBIFF_UP\fR) or any time the hardware link
+goes up (\fBIFF_RUNNING\fR), ARP sends probes (ar$spa == 0) for the assigned
+address. If a conflict is found, the interface is torn down. See
+\fBifconfig\fR(8) for more details.
+.sp
+.LP
+\fBARP\fR watches for hosts impersonating the local host, that is, any host
+that responds to an ARP request for the local host's address, and any address
+for which the local host is an authority. ARP defends local addresses and logs
+those with \fBATF_AUTHORITY\fR set, and can tear down local addresses on an
+excess of conflicts.
+.sp
+.LP
+ARP also handles UNARP messages received from other nodes. It does not
+generate these messages.
+.SH PACKET EVENTS
+.LP
+The \fBarp\fR driver registers itself with the netinfo interface. To gain
+access to these events, a handle from net_protocol_lookup must be acquired by
+passing it the value \fBNHF_ARP\fR. Through this interface, two packet events
+are supported:
+.sp
+.LP
+Physical in - ARP packets received via a network interface
+.sp
+.LP
+Physical out - ARP packets to be sent out via a network interface
+.sp
+.LP
+For ARP packets, the hook_pkt_event structure is filled out as follows:
+.sp
+.ne 2
+.na
+\fBhpe_ifp\fR
+.ad
+.sp .6
+.RS 4n
+Identifier indicating the inbound interface for packets received with the
+\fBphysical in\fR event.
+.RE
+
+.sp
+.ne 2
+.na
+\fBhpe_ofp\fR
+.ad
+.sp .6
+.RS 4n
+Identifier indicating the outbound interface for packets received with the
+\fBphysical out\fR event.
+.RE
+
+.sp
+.ne 2
+.na
+\fBhpe_hdr\fR
+.ad
+.sp .6
+.RS 4n
+Pointer to the start of the ARP header (not the Ethernet header).
+.RE
+
+.sp
+.ne 2
+.na
+\fBhpe_mp\fR
+.ad
+.sp .6
+.RS 4n
+Pointer to the start of the mblk_t chain containing the ARP packet.
+.RE
+
+.sp
+.ne 2
+.na
+\fBhpe_mb\fR
+.ad
+.sp .6
+.RS 4n
+Pointer to the mblk_t with the ARP header in it.
+.RE
+
+.SH NETWORK INTERFACE EVENTS
+.LP
+In addition to events describing packets as they move through the system, it
+is also possible to receive notification of events relating to network
+interfaces. These events are all reported back through the same callback. The
+list of events is as follows:
+.sp
+.ne 2
+.na
+\fBplumb\fR
+.ad
+.sp .6
+.RS 4n
+A new network interface has been instantiated.
+.RE
+
+.sp
+.ne 2
+.na
+\fBunplumb\fR
+.ad
+.sp .6
+.RS 4n
+A network interface is no longer associated with ARP.
+.RE
+
+.SH SEE ALSO
+.LP
+.BR sockaddr (3SOCKET),
+.BR if_tcp (4P),
+.BR inet (4P),
+.BR privileges (7),
+.BR arp (8),
+.BR ifconfig (8),
+.BR netinfo (9F)
+.sp
+.LP
+Plummer, Dave, \fIAn Ethernet Address Resolution Protocol\fR or \fIConverting
+Network Protocol Addresses to 48 .bit Ethernet Addresses for Transmission on
+Ethernet Hardware\fR, RFC 826, STD 0037, November 1982.
+.sp
+.LP
+Malkin, Gary, \fIARP Extension - UNARP, RFC 1868\fR, November, 1995
+.SH DIAGNOSTICS
+.LP
+Several messages can be written to the system logs (by the IP module) when
+errors occur. In the following examples, the hardware address strings include
+colon (:) separated ASCII representations of the link layer addresses, whose
+lengths depend on the underlying media (for example, 6 bytes for Ethernet).
+.sp
+.ne 2
+.na
+\fBNode %x:%x ... %x:%x is using our IP address %d.%d.%d.%d on %s.\fR
+.ad
+.sp .6
+.RS 4n
+Duplicate IP address warning. ARP has discovered another host on a local
+network that responds to mapping requests for the Internet address of this
+system, and has defended the system against this node by re-announcing the ARP
+entry.
+.RE
+
+.sp
+.ne 2
+.na
+\fB%s has duplicate address %d.%d.%d.%d (in use by %x:%x ... %x:%x);
+disabled.\fR
+.ad
+.sp .6
+.RS 4n
+Duplicate IP address detected while performing initial probing. The
+newly-configured interface has been shut down.
+.RE
+
+.sp
+.ne 2
+.na
+\fB%s has duplicate address %d.%d.%d.%d (claimed by %x:%x ... %x:%x);
+disabled.\fR
+.ad
+.sp .6
+.RS 4n
+Duplicate IP address detected on a running IP interface. The conflict cannot be
+resolved, and the interface has been disabled to protect the network.
+.RE
+
+.sp
+.ne 2
+.na
+\fBRecovered address %d.%d.%d.%d on %s.\fR
+.ad
+.sp .6
+.RS 4n
+An interface with a previously-conflicting IP address has been recovered
+automatically and reenabled. The conflict has been resolved.
+.RE
+
+.sp
+.ne 2
+.na
+\fBProxy ARP problem? Node '%x:%x ... %x:%x' is using %d.%d.%d.%d on %s\fR
+.ad
+.sp .6
+.RS 4n
+This message appears if \fBarp\fR(8) has been used to create a published
+permanent (\fBATF_AUTHORITY\fR) entry, and some other host on the local network
+responds to mapping requests for the published ARP entry.
+.RE
+
diff --git a/usr/src/man/man4p/dlpi.4p b/usr/src/man/man4p/dlpi.4p
new file mode 100644
index 0000000000..567d4bb4cd
--- /dev/null
+++ b/usr/src/man/man4p/dlpi.4p
@@ -0,0 +1,410 @@
+'\" te
+.\" Copyright (c) 2009, Sun Microsystems, Inc.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH DLPI 4P "April 9, 2016"
+.SH NAME
+dlpi \- Data Link Provider Interface
+.SH SYNOPSIS
+.LP
+.nf
+\fB#include <sys/dlpi.h>\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+SunOS STREAMS-based device drivers wishing to support the STREAMS \fB TCP/IP\fR
+and other STREAMS-based networking protocol suite implementations support
+Version 2 of the Data Link Provider Interface (\fBDLPI\fR). \fBDLPI V2\fR
+enables a data link service user to access and use any of a variety of
+conforming data link service providers without special knowledge of the
+provider's protocol. Specifically, the interface is intended to support
+Ethernet, \fBX.25 LAPB,\fR \fBSDLC,\fR \fBISDN LAPD,\fR \fBCSMA/CD,\fR
+\fBFDDI,\fR token ring, token bus, Bisync, and other datalink-level protocols.
+.sp
+.LP
+The interface specifies access to the data link service provider in the form of
+\fBM_PROTO\fR and \fBM_PCPROTO\fR type STREAMS messages and does not define a
+specific protocol implementation. The interface defines the syntax and
+semantics of primitives exchanged between the data link user and the data link
+provider to attach a physical device with physical-level address to a stream,
+bind a datalink-level address to the stream, get implementation-specific
+information from the data link provider, exchange data with a peer data link
+user in one of three communication modes (connection, connectionless,
+acknowledged connectionless), enable/disable multicast group and promiscuous
+mode reception of datalink frames, get and set the physical address associated
+with a stream, and several other operations.
+.sp
+.LP
+Solaris conforms to The Open Group Technical Standard for \fIDLPI, Version
+2\fR. For free access to this specification, point your browser to
+\fIwww.opengroup.org/pubs/catalog/c811.htm\fR. Solaris also provides extensions
+to the DLPI standard, as detailed in this man page.
+.SH SOLARIS-SPECIFIC DLPI EXTENSIONS
+.ne 2
+.na
+\fBNotification Support\fR
+.ad
+.sp .6
+.RS 4n
+Enables \fBDLPI\fR consumers to register for notification when events of
+interest occur at the \fBDLPI\fR provider. The negotiation can be performed on
+any attached DLPI stream, and begins with the \fBDLPI\fR consumer, sending a
+DL_NOTIFY_REQ to the provider, which is an M_PROTO message with the following
+payload:
+.sp
+.in +2
+.nf
+ typedef struct {
+ t_uscalar_t dl_primitive;
+ uint32_t dl_notifications;
+ uint32_t dl_timelimit;
+ } dl_notify_req_t;
+.fi
+.in -2
+
+The dl_primitive field must be set to DL_NOTIFY_REQ; the dl_timelimit field is
+reserved for future use and must be set to zero. The dl_notifications field is
+a bitmask containing the event types the consumer is interested in receiving,
+and must be zero or more of:
+.sp
+.in +2
+.nf
+DL_NOTE_LINK_DOWN Notify when link has gone down
+DL_NOTE_LINK_UP Notify when link has come up
+DL_NOTE_PHYS_ADDR Notify when address changes
+DL_NOTE_SDU_SIZE Notify when MTU changes
+DL_NOTE_SPEED Notify when speed changes
+DL_NOTE_PROMISC_ON_PHYS Notify when DL_PROMISC_PHYS is set
+DL_NOTE_PROMISC_OFF_PHYS Notify when DL_PROMISC_PHYS is cleared
+.fi
+.in -2
+
+Consumers might find it useful to send a DL_NOTIFY_REQ message with no
+requested types to check if the \fBDLPI\fR provider supports the extension.
+.sp
+Upon receiving the DL_NOTIFY_REQ, the \fBDLPI\fR provider must generate a
+DL_NOTIFY_ACK, which is an M_PROTO message with the following payload:
+.sp
+.in +2
+.nf
+ typedef struct {
+ t_uscalar_t dl_primitive;
+ uint32_t dl_notifications;
+ } dl_notify_ack_t;
+.fi
+.in -2
+
+The \fBdl_primitive\fR field must be set to DL_NOTIFY_ACK. The
+\fBdl_notifications\fR field must include any notifications that the provider
+supports, along with any other unrequested notifications that the provider
+supports. However, regardless of the notifications the provider supports, it is
+restricted to sending only DL_NOTIFY_IND messages (see below) that were
+requested in the DL_NOTIFY_REQ.
+.sp
+Since there are additional notification types which are not yet available for
+public use, \fBDLPI\fR consumers and providers must take care when inspecting
+and setting the \fBdl_notifications\fR field. Specifically, consumers must be
+careful to only request the above notification types, and providers must be
+careful to not include any unrecognized notification types in the
+\fBdl_notifications\fR field when constructing the DL_NOTIFY_ACK. In addition,
+DL_NOTIFY_IND's that are received with undocumented dl_notification or dl_data
+values must be ignored.
+.sp
+DLPI consumers might receive a DL_ERROR_ACK message (with dl_error_primitive
+set to DL_NOTIFY_REQ) in response to the initial DL_NOTIFY_REQ message. This
+message indicates that the DLPI provider does not support the DLPI notification
+extension. Otherwise, the DLPI consumer receives a DL_NOTIFY_ACK and should
+expect to receive DL_NOTIFY_IND messages for any types that it requested that
+were still set in it. The DL_NOTIFY_IND is an M_PROTO message with the
+following payload:
+.sp
+.in +2
+.nf
+ typedef struct {
+ t_uscalar_t dl_primitive;
+ uint32_t dl_notification;
+ uint32_t dl_data;
+ t_uscalar_t dl_addr_length;
+ t_uscalar_t dl_addr_offset;
+ } dl_notify_ind_t;
+.fi
+.in -2
+
+The \fBdl_primitive\fR field must be set to DL_NOTIFY_IND, and the
+\fBdl_notification\fR field must be set to the event type that has occurred
+(for example, DL_NOTE_LINK_DOWN). Only a single event type can be set in each
+DL_NOTIFY_IND.
+.sp
+For the DL_NOTE_SPEED event type, \fBdl_data\fR must be set to the current
+interface speed in kilobits per second. For the DL_NOTE_PHYS_ADDR event type,
+dl_data must be set to DL_CURR_PHYS_ADDR. For the DL_NOTE_SDU_SIZE event type,
+\fBdl_data\fR must be set to the current MTU in bytes. Otherwise, \fBdl_data\fR
+must be set to zero.
+.sp
+For the DL_NOTE_PHYS_ADDR event type, the \fBdl_addr_length\fR field must be
+set to the length of the address, and the \fBdl_addr_offset\fR field must be
+set to offset of the first byte of the address, relative to b_rptr (for
+example, if the address immediately follows the \fBdl_notify_ind\fR structure,
+\fBdl_addr_offset\fR is set to 'sizeof (\fBdl_notify_ind\fR)'). For all other
+event types, the \fBdl_addr_length\fR and \fBdl_addr_offset\fR fields must be
+set to zero by DLPI providers and ignored by DLPI consumers.
+.sp
+In addition to generating DL_NOTIFY_IND messages when a requested event has
+occurred, the \fBDLPI\fR provider must initially generate one or more
+DL_NOTIFY_IND messages to notify the \fBDLPI\fR consumer of the current
+state of the interface. For instance, if the consumer has requested
+DL_NOTE_LINK_UP | DL_NOTE_LINK_DOWN, the provider must send a DL_NOTIFY_IND
+containing the current state of the link (either DL_NOTE_LINK_UP or
+DL_NOTE_LINK_DOWN) after sending the DL_NOTIFY_ACK.
+.sp
+For the initial DL_NOTIFY_IND message, the DLPI provider is strongly
+recommended against sending DL_NOTE_LINK_DOWN, even if the interface is still
+initializing and is not yet ready to send or receive packets. Instead, either
+delaying the DL_NOTIFY_IND message until the interface is ready or
+optimistically reporting DL_NOTIFY_LINK_UP and subsequently reporting
+DL_NOTE_LINK_DOWN if the negotiation fails is strongly preferred. This
+prevents DL_NOTIFY_IND consumers from needlessly triggering network failover
+operations and logging error messages during network interface initialization.
+.sp
+The DLPI provider must continue to generate DL_NOTIFY_IND messages until it
+receives a new DL_NOTIFY_REQ message or the \fBDLPI\fR stream is detached (or
+closed). Further, a DLPI style 2 provider must keep track of the requested
+events after a DL_DETACH_REQ operation, and if a subsequent DL_ATTACH_REQ is
+received, it must send gratuitous DL_NOTIFY_IND messages to notify the
+consumer of the current state of the device, since the state might have
+changed while detached (or the consumer might have simply discarded its
+previous state).
+.RE
+
+.sp
+.ne 2
+.na
+\fBPassive Consumers of Aggregated Links\fR
+.ad
+.sp .6
+.RS 4n
+Solaris link aggregations as configured by \fBdladm\fR(8) export DLPI nodes
+for both the link aggregation, and individual links that comprises the
+aggregation, to allow observability of the aggregated links. To allow
+applications such as \fBsnoop\fR(8) to open those individual aggregated links
+while disallowing other consumers such as \fBip\fR(4P), DL_PASSIVE_REQ (a DLPI
+primitive), must be issued by \fBsnoop\fR(8) and similar applications.
+.sp
+The DL_PASSIVE_REQ primitive is an M_PROTO message containing the following
+payload:
+.sp
+.in +2
+.nf
+typedef struct {
+ t_uscalar_t dl_primitive;
+} dl_passive_req_t;
+.fi
+.in -2
+
+Issuing this primitive allows the consumer of a DLPI link to coexist with a
+link aggregation that also uses the link. Such a consumer is considered
+\fBpassive\fR.
+.sp
+Consumers that don't use this primitive while an aggregation is using the link
+receive DL_SYSERR/EBUSY when issuing the following DLPI primitives:
+.sp
+.in +2
+.nf
+DL_BIND_REQ
+DL_ENABMULTI_REQ
+DL_PROMISCON_REQ
+DL_AGGR_REQ
+DL_UNAGGR_REQ
+DL_CONTROL_REQ
+DL_SET_PHYS_ADDR_REQ
+.fi
+.in -2
+
+A consumer that has not issued a DL_PASSIVE_REQ and has successfully issued one
+of the above primitives is considered \fBactive\fR.
+.sp
+The creation of a link aggregation using \fBdladm\fR(8) fails if one of the
+links included in the aggregation has an \fBactive\fR consumer, but succeeds if
+the links do not have any DLPI consumers or only \fBpassive\fR consumers.
+.RE
+
+.sp
+.ne 2
+.na
+\fBRaw Mode\fR
+.ad
+.sp .6
+.RS 4n
+The \fBDLIOCRAW\fR ioctl function is used by some DLPI applications, most
+notably the \fBsnoop\fR(8) command. The \fBDLIOCRAW\fR command puts the stream
+into a raw mode, which, upon receive, causes the full MAC-level packet to
+be sent upstream in an \fBM_DATA\fR message instead of it being transformed
+into the \fBDL_UNITDATA_IND\fR form normally used for reporting incoming
+packets. Packet \fBSAP\fR filtering is still performed on streams that are in
+raw mode. If a stream user wants to receive all incoming packets it must also
+select the appropriate promiscuous modes. After successfully selecting raw
+mode, the application is also allowed to send fully formatted packets to the
+provider as \fBM_DATA\fR messages for transmission. \fBDLIOCRAW\fR takes no
+arguments. Once enabled, the stream remains in this mode until closed.
+.RE
+
+.sp
+.ne 2
+.na
+\fBNative Mode\fR
+.ad
+.sp .6
+.RS 4n
+Some DLPI providers are able to represent their link layer using more than one
+link-layer format. In this case, the default link-layer format can minimize
+impact to applications, but might not allow truly \fBnative\fR link-layer
+headers to be sent or received. DLPI consumers who wish to use the native
+link-layer format can use DLIOCNATIVE to transition the stream. DLIOCNATIVE
+takes no arguments and returns the DLPI mac type associated with the new
+link-layer format upon success. Once enabled, the stream remains in
+this mode until closed. Note that DLIOCNATIVE does not enable transition
+between dissimilar DLPI mac types and (aside from the link-layer format), the
+new DLPI mac type is guaranteed to be semantically identical. In particular,
+the SAP space and addressing format are not affected and the effect of
+DLIOCNATIVE is only visible when in raw mode, though any subsequent DL_INFO_REQ
+requests generate responses with dl_mac_type set to the native DLPI type.
+.RE
+
+.sp
+.ne 2
+.na
+\fBMargin\fR
+.ad
+.sp .6
+.RS 4n
+While a DLPI provider provides its maximum SDU via dl_max_sdu in DL_INFO_ACK
+messages, this value typically represents a standard maximum SDU for the
+provider's media (1500 for Ethernet for example), and not necessarily the
+absolute maximum amount of data that the provider is able to transmit in a
+given data unit. The \fBmargin\fR "is the extra amount of data in bytes that
+the provider can transmit beyond its advertised maximum SDU. For example, if a
+DL_ETHER provider can handle packets whose payload section is no greater than
+1522 bytes and its dl_max_sdu is set to 1500 (as is typical for Ethernet), then
+the margin would be 22. If a provider supports a non-zero margin, it implements
+the DLIOCMARGININFO ioctl, whose data is a t_uscalar_t representing the margin
+size.
+.RE
+
+.SH DL_ETHER-SPECIFIC DLPI SEMANTICS
+.SS "VLAN Support"
+.SS "Traditional VLAN Access"
+.LP
+Some \fBDL_ETHER DLPI\fR providers support \fIIEEE 802.1Q\fR Virtual LANs
+(VLAN). For these providers, traffic for a particular VLAN can be accessed by
+opening a VLAN data-link.
+.sp
+.LP
+Unless raw mode is enabled, a DLPI stream bound to a VLAN data-link behaves
+no differently than a traditional DLPI stream. As with non-VLAN data-link
+access, data must be sent to a DLPI provider without link-layer headers (which
+are added by the provider) and received data is passed to interested DLPI
+consumers without link-layer headers. As a result, DLPI consumers not require
+special-case logic to implement VLAN access.
+.SS "SAP-Based VLAN Access"
+.LP
+As per \fIIEEE 802.1Q\fR, all VLAN traffic is sent using Ether- Type 0x8100,
+meaning that in addition to directly opening a VLAN data-link, all VLAN
+traffic for a given underline data-link can also be accessed by opening the
+underlying data-link and binding to SAP 0x8100. Accordingly, all VLAN traffic
+(regardless of VLAN ID) can be sent and received by the DLPI consumer.
+However, even when raw mode is disabled, packets are received starting with
+their VLAN headers and must be sent to the DLPI provider with their VLAN
+headers already pre-pended (but without Ethernet headers). Because adhering to
+these semantics requires each DLPI consumer to have specialized knowledge of
+VLANs, VLANs should only be accessed in this way when the traditional VLAN
+access method is insufficient (for example, because access to all VLAN
+traffic, regardless of VLAN ID, is needed).
+.sp
+.LP
+Because all VLAN traffic is sent with SAP 0x8100, VLAN traffic not filtered at
+the physical (\fBDL_PROMISC_PHYS\fR) level is also visible if a DLPI consumer
+enables promiscuous mode of a stream at the \fBDL_PROMISC_SAP\fR level. As
+mentioned earlier, these packets are received starting with their VLAN headers
+if raw mode is not enabled.
+.SS "QoS Support"
+.LP
+The \fIIEEE 802.1Q\fR standard defines eight classes of priority values used by
+QoS traffic control of Ethernet packets. Although the priority values are
+encoded in the\fI 802.1Q\fR tags, they can be used independently from VLANs.
+In particular, a special priority tagged packet (with VLAN ID zero but
+priority bits non-zero) does not belong to any VLAN.
+.sp
+.LP
+The priority value can be set on either a per-stream or per-packet basis. DLPI
+consumers can specify the per-stream priority using the \fBDL_UDQOS_REQ\fR
+request (the priority value remains unchanged until the next DL_UDQOS_REQ) and
+also specify the per-packet priority value using the b_band field of a M_DATA
+message or the \fBdl_priority\fR field of a \fBDL_UNITDATA_REQ\fR.
+.SS "Raw Mode"
+.SS "SAP-Based VLAN Access"
+.LP
+When raw mode is enabled, the complete, unmodified MAC- level packet (including
+Ethernet and VLAN headers) is passed to interested DLPI consumers. Similarly,
+the entire MAC-level packet (including Ethernet and VLAN headers) must be sent
+to the DLPI provider for transmission. Note that the priority value specified
+in the b_band field can be overridden by encoding the priority value (if any)
+into the VLAN header.
+.SS "Traditional VLAN Access"
+.LP
+When raw mode is enabled, only packets with the correct VLAN ID are passed up
+to interested DLPI consumers. With the exception of priority-tagged packets,
+DLPI providers must strip off the VLAN headers (while retaining the preceding
+Ethernet headers) before sending up the packets. For priority-tagged packets,
+DLPI providers must use the reserved tag 0 to encode the VLAN TCI and send up
+the packets.
+.sp
+.LP
+On the transmit-side, DLPI consumers must send the packets down to the DLPI
+providers without the VLAN headers (but with the Ethernet headers) unless
+certain QoS support is required. If QoS support is needed, the packet can have
+the VLAN header to indicate the priority value, however its VLAN ID must be
+zero. The DLPI providers then insert the VLAN tags or encode the VLAN tags
+using the priority value specified in the VLAN headers and send the packets.
+.SH FILES
+.LP
+Files in or under \fB/dev\fR.
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+T{
+Interface Stability (Notification support/Passive mode behavior)
+T} Committed
+.TE
+
+.SH SEE ALSO
+.LP
+.BR libdlpi (3LIB),
+.BR gld (4D),
+.BR ip (4P),
+.BR dladm (8),
+.BR snoop (8)
+.SH NOTES
+.LP
+A Solaris DLPI link name consists of a \fBDLPI provider name\fR followed by a
+numeric \fBPPA\fR (physical point of attachment).
+.sp
+.LP
+The DLPI provider name must be between 1 and 16 characters in length, though
+names between 3 and 8 characters are preferred. The DLPI provider name can
+consist of any alphanumeric character (a-z, A-Z, 0-9), and the underscore (_).
+The first and last character of the DLPI provider name cannot be a digit.
+.sp
+.LP
+The PPA must be a number between \fB0\fR and \fB4294967294\fR inclusive.
+Leading zeroes are not permitted.
diff --git a/usr/src/man/man4p/icmp.4p b/usr/src/man/man4p/icmp.4p
new file mode 100644
index 0000000000..1f9891a9d0
--- /dev/null
+++ b/usr/src/man/man4p/icmp.4p
@@ -0,0 +1,114 @@
+'\" te
+.\" Copyright 1989 AT&T
+.\" Copyright (C) 1999, Sun Microsystems, Inc.
+.\" All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH ICMP 4P "Dec 03, 2015"
+.SH NAME
+icmp, ICMP \- Internet Control Message Protocol
+.SH SYNOPSIS
+.LP
+.nf
+#include <sys/socket.h>
+#include <netinet/in.h>
+#include <netinet/ip_icmp.h>
+s = socket(AF_INET, SOCK_RAW, proto);
+t = t_open("/dev/icmp", O_RDWR);
+.fi
+
+.SH DESCRIPTION
+.LP
+\fBICMP\fR is the error and control message protocol used by the Internet
+protocol family. It is used by the kernel to handle and report errors in
+protocol processing. It may also be accessed by programs using the socket
+interface or the Transport Level Interface (\fBTLI\fR) for network monitoring
+and diagnostic functions. When used with the socket interface, a "raw socket"
+type is used. The protocol number for \fBICMP,\fR used in the \fIproto\fR
+parameter to the socket call, can be obtained from
+\fBgetprotobyname\fR(3SOCKET). \fBICMP\fR file descriptors and sockets are
+connectionless, and are normally used with the \fBt_sndudata\fR /
+\fBt_rcvudata\fR and the \fBsendto()\fR / \fBrecvfrom()\fR calls. In order to
+send \fBICMP\fR packets, a process needs the \fBPRIV_NET_ICMPACCESS\fR
+privilege. (See \fBprivileges\fR(7) for more information on privileges.)
+.sp
+.LP
+Outgoing packets automatically have an Internet Protocol (\fBIP\fR) header
+prepended to them. Incoming packets are provided to the user with the \fBIP\fR
+header and options intact.
+.sp
+.LP
+\fBICMP\fR is an datagram protocol layered above \fBIP.\fR It is used
+internally by the protocol code for various purposes including routing, fault
+isolation, and congestion control. Receipt of an \fBICMP\fR "redirect" message
+will add a new entry in the routing table, or modify an existing one.
+\fBICMP\fR messages are routinely sent by the protocol code. Received
+\fBICMP\fR messages may be reflected back to users of higher-level protocols
+such as \fBTCP\fR or \fBUDP\fR as error returns from system calls. A copy of
+all \fBICMP\fR message received by the system is provided to every holder of an
+open \fBICMP\fR socket or \fBTLI\fR descriptor.
+.SH SEE ALSO
+.LP
+.BR t_rcvudata (3NSL),
+.BR t_sndudata (3NSL),
+.BR getprotobyname (3SOCKET),
+.BR recv (3SOCKET),
+.BR send (3SOCKET),
+.BR inet (4P),
+.BR ip (4P),
+.BR routing (4P),
+.BR privileges (7)
+.sp
+.LP
+Postel, Jon, \fIInternet Control Message Protocol \(em DARPA Internet Program
+Protocol Specification\fR, \fBRFC\fR 792, Network Information Center, \fBSRI\fR
+International, Menlo Park, Calif., September 1981.
+.SH DIAGNOSTICS
+.LP
+A socket operation may fail with one of the following errors returned:
+.sp
+.ne 2
+.na
+\fB\fBEISCONN\fR\fR
+.ad
+.RS 17n
+An attempt was made to establish a connection on a socket which already has
+one, or when trying to send a datagram with the destination address specified
+and the socket is already connected.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBENOTCONN\fR\fR
+.ad
+.RS 17n
+An attempt was made to send a datagram, but no destination address is
+specified, and the socket has not been connected.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBENOBUFS\fR\fR
+.ad
+.RS 17n
+The system ran out of memory for an internal data structure.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEADDRNOTAVAIL\fR\fR
+.ad
+.RS 17n
+An attempt was made to create a socket with a network address for which no
+network interface exists.
+.RE
+
+.SH NOTES
+.LP
+Replies to \fBICMP\fR "echo" messages which are source routed are not sent back
+using inverted source routes, but rather go back through the normal routing
+mechanisms.
diff --git a/usr/src/man/man4p/icmp6.4p b/usr/src/man/man4p/icmp6.4p
new file mode 100644
index 0000000000..50ed86581d
--- /dev/null
+++ b/usr/src/man/man4p/icmp6.4p
@@ -0,0 +1,167 @@
+'\" te
+.\" Copyright (C) 1999, Sun Microsystems,
+.\" Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH ICMP6 4P "Dec 03, 2015"
+.SH NAME
+icmp6 \- Internet Control Message Protocol for Internet Protocol Version 6
+.SH SYNOPSIS
+.LP
+.nf
+#include <sys/socket.h>
+#include <netinet/in.h>
+#include <netinet/ip_icmp.h>
+#include <netinet/icmp6.h>
+.fi
+
+.LP
+.nf
+s = socket(AF_INET6, SOCK_RAW, proto);
+.fi
+
+.LP
+.nf
+t = t_open("/dev/icmp6", O_RDWR);
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBICMP6\fR protocol is the error and control message protocol used with
+Version 6 of the Internet Protocol. It is used by the kernel to handle and
+report errors in protocol processing. It is also used for \fBIPv6\fR neighbor
+and router discovery, and for multicast group membership queries and reports.
+It may also be accessed by programs using the socket interface or the Transport
+Level Interface (\fBTLI\fR) for network monitoring and diagnostic functions.
+When used with the socket interface, a "raw socket" type is used. The protocol
+number for \fBICMP6\fR, used in the \fIproto\fR parameter to the socket call,
+can be obtained from \fBgetprotobyname\fR(3SOCKET). \fBICMP6\fR file
+descriptors and sockets are connectionless and are normally used with the
+\fBt_sndudata\fR / \fBt_rcvudata\fR and the \fBsendto()\fR / \fBrecvfrom()\fR
+calls. They may also be used with the \fBsendmsg()\fR/\fBrecvgmsg()\fR calls
+when sending or receiving ancillary data. In order to send \fBICMP6\fR packets,
+a process needs the \fBPRIV_NET_ICMPACCESS\fR privilege. (See
+\fBprivileges\fR(7) for more information on privileges.)
+.sp
+.LP
+Outgoing packets automatically have an Internet Protocol Version 6 (\fBIPv6\fR)
+header and zero or more \fBIPv6\fR extension headers prepended. These headers
+are prepended by the kernel. Unlike \fBICMP\fR for \fBIPv4\fR, the
+\fBIP_HDRINCL\fR option is not supported for \fBICMP6\fR, so \fBICMP6\fR
+applications neither build their own outbound \fBIPv6\fR headers, nor do they
+receive the inbound \fBIPv6\fR headers with received data. \fBIPv6\fR extension
+headers and relevant fields of the \fBIPv6\fR header may be set or received as
+ancillary data to a \fBsendmsg\fR(3SOCKET) or \fBrecvmsg\fR(3SOCKET) system
+call. Each of these fields and extension headers may also be set on a per
+socket basis with the \fBsetsockopt\fR(3SOCKET) system call. Such "sticky"
+options are used on all outgoing packets unless overridden by ancillary data.
+When any ancillary data is present with a \fBsendmsg\fR(3SOCKET) system call,
+all sticky options are ignored for that system call, but subsequently remain
+configured.
+.sp
+.LP
+\fBICMP6\fR is a datagram protocol layered above \fBIPv6\fR. Received
+\fBICMP6\fR messages may be reflected back to users of higher-level protocols
+such as \fBTCP\fR or \fBUDP\fR as error returns from system calls. A copy of
+each \fBICMP6\fR error message received by the system is provided to every
+holder of an open \fBICMP6\fR socket or \fBTLI\fR descriptor.
+.SH SEE ALSO
+.LP
+.BR t_rcvudata (3NSL),
+.BR t_sndudata (3NSL),
+.BR getprotobyname (3SOCKET),
+.BR recv (3SOCKET),
+.BR recvmsg (3SOCKET),
+.BR send (3SOCKET),
+.BR sendmsg (3SOCKET),
+.BR setsockopt (3SOCKET),
+.BR inet6 (4P),
+.BR ip6 (4P),
+.BR routing (4P),
+.BR privileges (7)
+.sp
+.LP
+Conta, A. and Deering, S., \fIRFC 2463, Internet Control Message Protocol
+(ICMPv6) for the Internet Protocol Version 6 (IPv6) Specification\fR, The
+Internet Society, December 1998.
+.SH DIAGNOSTICS
+.LP
+A socket operation may fail with one of the following errors returned:
+.sp
+.ne 2
+.na
+\fB\fBEISCONN\fR\fR
+.ad
+.RS 17n
+An attempt was made to establish a connection on a socket which already has
+one, or when trying to send a datagram with the destination address specified
+and the socket is already connected.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBENOTCONN\fR\fR
+.ad
+.RS 17n
+An attempt was made to send a datagram, but no destination address is
+specified, and the socket has not been connected.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBENOBUFS\fR\fR
+.ad
+.RS 17n
+The system ran out of memory for an internal data structure.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEADDRNOTAVAIL\fR\fR
+.ad
+.RS 17n
+An attempt was made to create a socket with a network address for which no
+network interface exists.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBENOMEM\fR\fR
+.ad
+.RS 17n
+The system was unable to allocate memory for an internal data structure.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBENOPROTOOPT\fR\fR
+.ad
+.RS 17n
+An attempt was made to set an \fBIPv4\fR socket option on an \fBIPv6\fR socket.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEINVAL\fR\fR
+.ad
+.RS 17n
+An attempt was made to set an invalid or malformed socket option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEAFNOSUPPORT\fR\fR
+.ad
+.RS 17n
+An attempt was made to bind or connect to an \fBIPv4\fR or mapped address, or
+to specify an \fBIPv4\fR or mapped address as the next hop.
+.RE
+
diff --git a/usr/src/man/man4p/if_tcp.4p b/usr/src/man/man4p/if_tcp.4p
new file mode 100644
index 0000000000..31011dff69
--- /dev/null
+++ b/usr/src/man/man4p/if_tcp.4p
@@ -0,0 +1,879 @@
+'\" te
+.\" Copyright (C) 2009, Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
+.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH IF_TCP 4P "Sep 02, 2015"
+.SH NAME
+if_tcp, if \- general properties of Internet Protocol network interfaces
+.SH DESCRIPTION
+.LP
+A network interface is a device for sending and receiving packets on a network.
+It is usually a hardware device, although it can be implemented in software.
+Network interfaces used by the Internet Protocol (IPv4 or IPv6) must be STREAMS
+devices conforming to the Data Link Provider Interface (\fBDLPI\fR). See
+\fBdlpi\fR(4P).
+.SH APPLICATION PROGRAMMING INTERFACE
+.LP
+An interface becomes available to \fBIP\fR when it is opened and the \fBIP\fR
+module is pushed onto the stream with the \fBI_PUSH\fR \fBioctl\fR(2) command.
+(See \fBstreamio\fR(4I)). The \fBSIOCSLIFNAME\fR \fBioctl\fR(2) is issued to
+specify the name of the interface and to indicate whether it is IPv4 or IPv6.
+This may be initiated by the kernel at boot time or by a user program after the
+system is running. Each interface must be assigned an \fBIP\fR address with the
+\fBSIOCSLIFADDR\fR \fBioctl()\fR before it can be used. On interfaces where the
+network-to-link layer address mapping is static, only the network number is
+taken from the \fBioctl()\fR request; the remainder is found in a hardware
+specific manner. On interfaces which provide dynamic network-to-link layer
+address mapping facilities (for example, Ethernets using \fBarp\fR(4P)), the
+entire address specified in the \fBioctl()\fR is used. A routing table entry
+for destinations on the network of the interface is installed automatically
+when an interface's address is set.
+.sp
+.LP
+You cannot create IPMP IP interfaces using the procedure described above.
+Instead, use \fBifconfig\fR(8).
+.SH IOCTLS
+.LP
+The following \fBioctl()\fR calls may be used to manipulate \fBIP\fR network
+interfaces. Unless specified otherwise, the request takes an \fBlifreq\fR
+structure as its parameter. This structure has the form:
+.sp
+.in +2
+.nf
+struct lifreq {
+#define LIFNAMSIZ 32
+ char lifr_name[LIFNAMSIZ]; /* if name, e.g. "le1" */
+ union {
+ int lifru_addrlen; /* for subnet/token etc */
+ uint_t lifru_ppa; /* SIOCSLIFNAME */
+ } lifr_lifru1;
+ union {
+ struct sockaddr_storage lifru_addr;
+ struct sockaddr_storage lifru_dstaddr;
+ struct sockaddr_storage lifru_broadaddr;
+ struct sockaddr_storage lifru_token; /* With lifr_addrlen */
+ struct sockaddr_storage lifru_subnet; /* With lifr_addrlen */
+ int lifru_index; /* interface index */
+ uint64_t lifru_flags; /* SIOC?LIFFLAGS */
+ int lifru_metric;
+ uint_t lifru_mtu;
+ int lif_muxid[2]; /* mux id's for arp & ip */
+ struct lif_nd_req lifru_nd_req; /* SIOCLIF*ND */
+ struct lif_ifinfo_req lifru_ifinfo_req;
+ zoneid_t lifru_zone; /* SIOC[GS]LIFZONE */
+ } lifr_lifru;
+
+#define lifr_addrlen lifr_lifru1.lifru_addrlen
+#define lifr_ppa lifr_lifru1.lifru_ppa /* Driver's ppa */
+#define lifr_addr lifr_lifru.lifru_addr /* address */
+#define lifr_dstaddr lifr_lifru.lifru_dstaddr
+#define lifr_broadaddr lifr_lifru.lifru_broadaddr /* broadcast addr. */
+#define lifr_token lifr_lifru.lifru_token /* address token */
+#define lifr_subnet lifr_lifru.lifru_subnet /* subnet prefix */
+#define lifr_index lifr_lifru.lifru_index /* interface index */
+#define lifr_flags lifr_lifru.lifru_flags /* flags */
+#define lifr_metric lifr_lifru.lifru_metric /* metric */
+#define lifr_mtu lifr_lifru.lifru_mtu /* mtu */
+#define lifr_ip_muxid lifr_lifru.lif_muxid[0]
+#define lifr_arp_muxid lifr_lifru.lif_muxid[1]
+#define lifr_nd lifr_lifru.lifru_nd_req /* SIOCLIF*ND */
+#define lifr_ifinfo lifr_lifru.lifru_ifinfo_req /* SIOC[GS]LIFLNKINFO */
+#define lifr_zone lifr_lifru.lifru_zone /* SIOC[GS]LIFZONE */
+};
+.fi
+.in -2
+
+.sp
+.ne 2
+.na
+\fB\fBSIOCSLIFADDR\fR\fR
+.ad
+.RS 19n
+Set interface address.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSIOCGLIFADDR\fR\fR
+.ad
+.RS 19n
+Get interface address.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSIOCSLIFDSTADDR\fR\fR
+.ad
+.RS 19n
+Set point to point address for interface.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSIOCGLIFDSTADDR\fR\fR
+.ad
+.RS 19n
+Get point to point address for interface.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSIOCSLIFFLAGS\fR\fR
+.ad
+.RS 19n
+Set interface flags field. If the interface is marked down, any processes
+currently routing packets through the interface are notified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSIOCGLIFFLAGS\fR\fR
+.ad
+.RS 19n
+Get interface flags.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSIOCGLIFCONF\fR\fR
+.ad
+.RS 19n
+Get interface configuration list. This request takes a \fBlifconf\fR structure
+(see below) as a value-result parameter. The \fBlifc_family\fR field can be
+set to \fBAF_UNSPEC\fR to retrieve both \fBAF_INET\fR and \fBAF_INET6\fR
+interfaces. The \fBlifc_len\fR field should be set to the size of the buffer
+pointed to by \fBlifc_buf\fR.
+.sp
+The \fBlifc_flags\fR field should usually be set to zero, but callers that need
+low-level knowledge of the underlying IP interfaces that comprise an IPMP
+group can set it to \fBLIFC_UNDER_IPMP\fR to request that those interfaces be
+included in the result. Upon success, \fBlifc_len\fR contains the length, in
+bytes, of the array of \fBlifreq\fR structures pointed to by \fBlifc_req\fR.
+For each \fBlifreq\fR structure, the \fBlifr_name\fR and \fBlifr_addr\fR fields
+are valid.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSIOCGLIFNUM\fR\fR
+.ad
+.RS 19n
+Get number of interfaces. This request returns an integer which is the number
+of interface descriptions (\fBstruct lifreq\fR) returned by the
+\fBSIOCGLIFCONF\fR ioctl (in other words, indicates how large \fBlifc_len\fR
+must be).
+.sp
+This request takes a \fBstruct lifnum\fR (see below) as a value-result
+parameter. The \fBlifn_family\fR field can be set to \fBAF_UNSPEC\fR to count
+both \fBAF_INET\fR and \fBAF_INET6\fR interfaces. The \fBlifn_flags\fR field
+should usually be set to zero, but callers that need low-level knowledge of the
+underlying IP interfaces that comprise an IPMP group can set it to
+\fBLIFC_UNDER_IPMP\fR to request that those interfaces be included in the
+count.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSIOCSLIFMTU\fR\fR
+.ad
+.RS 19n
+Set the maximum transmission unit (MTU) size for interface. Place the request
+in the \fBlifru_mtu\fR field. The \fBMTU\fR can not exceed the physical
+\fBMTU\fR limitation (which is reported in the \fBDLPI\fR \fBDL_INFO_ACK\fR
+message).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSIOCGLIFMTU\fR\fR
+.ad
+.RS 19n
+Get the maximum transmission unit size for interface.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSIOCSLIFMETRIC\fR\fR
+.ad
+.RS 19n
+Set the metric associated with the interface. The metric is used by routing
+daemons such as \fBin.routed\fR(8).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSIOCGLIFMETRIC\fR\fR
+.ad
+.RS 19n
+Get the metric associated with the interface.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSIOCGLIFMUXID\fR\fR
+.ad
+.RS 19n
+Get the \fBip\fR and \fBarp\fR \fBmuxid\fR associated with the interface.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSIOCSLIFMUXID\fR\fR
+.ad
+.RS 19n
+Set the \fBip\fR and \fBarp\fR \fBmuxid\fR associated with the interface.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSIOCGLIFINDEX\fR\fR
+.ad
+.RS 19n
+Get the interface index associated with the interface.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSIOCSLIFINDEX\fR\fR
+.ad
+.RS 19n
+Set the interface index associated with the interface.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSIOCGLIFZONE\fR\fR
+.ad
+.RS 19n
+Get the zone associated with the interface.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSIOCSLIFZONE\fR\fR
+.ad
+.RS 19n
+Set the zone associated with the interface. Only applies for zones that use the
+shared-IP instance.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSIOCLIFADDIF\fR\fR
+.ad
+.RS 19n
+Add a new logical interface on a physical interface using an unused logical
+interface number.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSIOCLIFREMOVEIF\fR\fR
+.ad
+.RS 19n
+Remove a logical interface by specifying its \fBIP\fR address or logical
+interface name.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSIOCSLIFTOKEN\fR\fR
+.ad
+.RS 19n
+Set the address token used to form IPv6 link-local addresses and for stateless
+address autoconfiguration.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSIOCGLIFTOKEN\fR\fR
+.ad
+.RS 19n
+Get the address token used to form IPv6 link-local addresses and for stateless
+address autoconfiguration.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSIOCSLIFSUBNET\fR\fR
+.ad
+.RS 19n
+Set the subnet prefix associated with the interface.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSIOCGLIFSUBNET\fR\fR
+.ad
+.RS 19n
+Get the subnet prefix associated with the interface.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSIOCSLIFLNKINFO\fR\fR
+.ad
+.RS 19n
+Set link specific parameters for the interface.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSIOCGLIFLNKINFO\fR\fR
+.ad
+.RS 19n
+Get link specific parameters for the interface.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSIOCLIFDELND\fR\fR
+.ad
+.RS 19n
+Delete a neighbor cache entry for IPv6.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSIOCLIFGETND\fR\fR
+.ad
+.RS 19n
+Get a neighbor cache entry for IPv6.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSIOCLIFSETND\fR\fR
+.ad
+.RS 19n
+Set a neighbor cache entry for IPv6.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSIOCSLIFUSESRC\fR\fR
+.ad
+.RS 19n
+Set the interface from which to choose a source address. The \fBlifr_index\fR
+field has the interface index corresponding to the interface whose address is
+to be used as the source address for packets going out on the interface whose
+name is provided by \fBlifr_name\fR. If the \fBlifr_index\fR field is set to
+zero, the previous setting is cleared. See \fBifconfig\fR(8) for examples of
+the \fBusesrc\fR option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSIOCGLIFUSESRC\fR\fR
+.ad
+.RS 19n
+Get the interface index of the interface whose address is used as the source
+address for packets going out on the interface provided by \fBlifr_name\fR
+field. The value is retrieved in the \fBlifr_index\fR field. See
+\fBifconfig\fR(8) for examples of the \fBusesrc\fR option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSIOCGLIFSRCOF\fR\fR
+.ad
+.RS 19n
+Get the interface configuration list for interfaces that use an address hosted
+on the interface provided by the \fBlifs_ifindex\fR field in the \fBlifsrcof\fR
+struct (see below), as a source address. The application sets \fBlifs_maxlen\fR
+to the size (in bytes) of the buffer it has allocated for the data. On return,
+the kernel sets \fBlifs_len\fR to the actual size required. Note, the
+application could set \fBlifs_maxlen\fR to zero to query the kernel of the
+required buffer size instead of estimating a buffer size. The application tests
+\fBlifs_len\fR <= \fBlifs_maxlen\fR -- if that's true, the buffer was big
+enough and the application has an accurate list. If it is false, it needs to
+allocate a bigger buffer and try again, and \fBlifs_len\fR provides a hint of
+how big to make the next trial. See \fBifconfig\fR(8) for examples of the
+\fBusesrc\fR option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSIOCTONLINK\fR\fR
+.ad
+.RS 19n
+Test if the address is directly reachable, for example, that it can be reached
+without going through a router. This request takes an \fBsioc_addrreq\fR
+structure (see below) as a value-result parameter. The \fBsa_addr\fR field
+should be set to the address to test. The \fBsa_res\fR field will contain a
+non-zero value if the address is onlink.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSIOCTMYADDR\fR\fR
+.ad
+.RS 19n
+Test if the address is assigned to this node. This request takes an
+\fBsioc_addrreq\fR structure (see below) as a value-result parameter. The
+\fBsa_addr\fR field should be set to the address to test. The \fBsa_res\fR
+field will contain a non-zero value if the address is assigned to this node.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSIOCTMYSITE\fR\fR
+.ad
+.RS 19n
+Test if the address is part of the same site as this node. This request takes
+an \fBsioc_addrreq\fR structure (see below) as a value-result parameter. The
+\fBsa_addr\fR field should be set to the address to test. The \fBsa_res\fR
+field will contain a non-zero value if the address is in the same site.
+.RE
+
+.sp
+.LP
+The structure used by \fBSIOCGLIFCONF\fR has the form:
+.sp
+.in +2
+.nf
+struct lifconf {
+ sa_family_t lifc_family;
+ int lifc_flags; /* request specific
+ /* interfaces */
+ int lifc_len; /* size of assoc. buffer */
+ union {
+ caddr_t lifcu_buf;
+ struct lifreq *lifcu_req;
+ } lifc_lifcu;
+
+#define lifc_buf lifc_lifcu.lifcu_buf /* buffer address */
+#define lifc_req lifc_lifcu.lifcu_req /* array of structs returned */
+};
+.fi
+.in -2
+
+.sp
+.LP
+The structure used by \fBSIOCGLIFNUM\fR has the form:
+.sp
+.in +2
+.nf
+struct lifnum {
+ sa_family_t lifn_family;
+ int lifn_flags; /* req. specf. interfaces */
+ int lifn_count; /* Result */
+};
+.fi
+.in -2
+
+.sp
+.LP
+The structure used by \fBSIOCTONLINK\fR, \fBSIOCTMYADDR\fR and
+\fBSIOCTMYSITE\fR has the form:
+.sp
+.in +2
+.nf
+struct sioc_addrreq {
+ struct sockaddr_storage sa_addr; /* Address to test */
+ int sa_res; /* Result - 0/1 */
+};
+.fi
+.in -2
+
+.sp
+.LP
+The structure used by \fBSIOCGLIFSRCOF\fR has the form:
+.sp
+.in +2
+.nf
+ struct lifsrcof {
+ uint_t lifs_ifindex; /* addr on this interface */
+ /* used as the src addr */
+ size_t lifs_maxlen; /* size of buffer: input */
+ size_t lifs_len; /* size of buffer: output */
+ union {
+ caddr_t lifsu_buf;
+ struct lifreq *lifsu_req;
+ } lifs_lifsu;
+#define lifs_buf lifs_lifsu.lifsu_buf /* buffer addr. */
+#define lifs_req lifs_lifsu.lifsu_req /* array returned */
+};
+.fi
+.in -2
+
+.sp
+.LP
+The following \fBioctl()\fR calls are maintained for compatibility but only
+apply to IPv4 network interfaces, since the data structures are too small to
+hold an IPv6 address. Unless specified otherwise, the request takes an
+\fBifreq\fR structure as its parameter. This structure has the form:
+.sp
+.in +2
+.nf
+struct ifreq {
+#define IFNAMSIZ 16
+ char ifr_name[IFNAMSIZ]; /* interface name - e.g. "hme0" */
+ union {
+ struct sockaddr ifru_addr;
+ struct sockaddr ifru_dstaddr;
+ struct sockaddr ifru_broadaddr;
+ short ifru_flags;
+ int ifru_metric;
+ int if_muxid[2]; /* mux id's for arp and ip */
+ int ifru_index; /* interface index */
+ } ifr_ifru;
+
+#define ifr_addr ifr_ifru.ifru_addr /* address */
+#define ifr_dstaddr ifr_ifru.ifru_dstaddr /* other end of p-to-p link */
+#define ifr_broadaddr ifr_ifru.ifru_broadaddr /* broadcast address */
+#define ifr_flags ifr_ifru.ifru_flags /* flags */
+#define ifr_index ifr_ifru.ifru_index /* interface index */
+#define ifr_metric ifr_ifru.ifru_metric /* metric */
+};
+.fi
+.in -2
+
+.sp
+.ne 2
+.na
+\fB\fBSIOCSIFADDR\fR\fR
+.ad
+.RS 18n
+Set interface address.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSIOCGIFADDR\fR\fR
+.ad
+.RS 18n
+Get interface address.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSIOCSIFDSTADDR\fR\fR
+.ad
+.RS 18n
+Set point to point address for interface.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSIOCGIFDSTADDR\fR\fR
+.ad
+.RS 18n
+Get point to point address for interface.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSIOCSIFFLAGS\fR\fR
+.ad
+.RS 18n
+Set interface flags field. If the interface is marked down, any processes
+currently routing packets through the interface are notified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSIOCGIFFLAGS\fR\fR
+.ad
+.RS 18n
+Get interface flags.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSIOCGIFCONF\fR\fR
+.ad
+.RS 18n
+Get interface configuration list. This request takes an \fBifconf\fR structure
+(see below) as a value-result parameter. The \fBifc_len\fR field should be set
+to the size of the buffer pointed to by \fBifc_buf\fR. Upon success,
+\fBifc_len\fR will contain the length, in bytes, of the array of \fBifreq\fR
+structures pointed to by \fBifc_req\fR. For each \fBifreq\fR structure, the
+\fBifr_name\fR and \fBifr_addr\fR fields are valid. Though IPMP IP interfaces
+are included in the array, underlying IP interfaces that comprise those IPMP
+groups are not.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSIOCGIFNUM\fR\fR
+.ad
+.RS 18n
+Get number of interfaces. This request returns an integer which is the number
+of interface descriptions (\fBstruct ifreq\fR) returned by the
+\fBSIOCGIFCONF\fR ioctl (in other words, indicates how large \fBifc_len\fR must
+be). Though IPMP IP interfaces are included in the array, underlying IP
+interfaces that comprise those IPMP groups are not.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSIOCSIFMTU\fR\fR
+.ad
+.RS 18n
+Set the maximum transmission unit (\fBMTU\fR) size for interface. Place the
+request in the \fBifr_metric\fR field. The \fBMTU\fR has to be smaller than
+physical \fBMTU\fR limitation (which is reported in the \fBDLPI\fR
+\fBDL_INFO_ACK\fR message).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSIOCGIFMTU\fR\fR
+.ad
+.RS 18n
+Get the maximum transmission unit size for interface. Upon success, the request
+is placed in the \fBifr_metric\fR field.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSIOCSIFMETRIC\fR\fR
+.ad
+.RS 18n
+Set the metric associated with the interface. The metric is used by routine
+daemons such as \fBin.routed\fR(8).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSIOCGIFMETRIC\fR\fR
+.ad
+.RS 18n
+Get the metric associated with the interface.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSIOCGIFMUXID\fR\fR
+.ad
+.RS 18n
+Get the \fBip\fR and \fBarp\fR \fBmuxid\fR associated with the interface.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSIOCSIFMUXID\fR\fR
+.ad
+.RS 18n
+Set the \fBip\fR and \fBarp\fR \fBmuxid\fR associated with the interface.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSIOCGIFINDEX\fR\fR
+.ad
+.RS 18n
+Get the interface index associated with the interface.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSIOCSIFINDEX\fR\fR
+.ad
+.RS 18n
+Set the interface index associated with the interface.
+.RE
+
+.sp
+.LP
+The \fBifconf\fR structure has the form:
+.sp
+.in +2
+.nf
+struct ifconf {
+ int ifc_len; /* size of assoc. buffer */
+ union {
+ caddr_t ifcu_buf;
+ struct ifreq *ifcu_req;
+ } ifc_ifcu;
+
+#define ifc_buf ifc_ifcu.ifcu_buf /* buffer address */
+#define ifc_req ifc_ifcu.ifcu_req /* array of structs returned */
+};
+.fi
+.in -2
+
+.SS "IFF_ Flags"
+.LP
+You can use the \fBifconfig\fR(8) command to display the \fBIFF\fR_ flags
+listed below (with the leading \fBIFF\fR_ prefix removed). See the
+\fBifconfig\fR(8) manpage for a definition of each flag.
+.sp
+.in +2
+.nf
+#define IFF_UP 0x0000000001 /* Address is up */
+#define IFF_BROADCAST 0x0000000002 /* Broadcast address valid */
+#define IFF_DEBUG 0x0000000004 /* Turn on debugging */
+#define IFF_LOOPBACK 0x0000000008 /* Loopback net */
+
+#define IFF_POINTOPOINT 0x0000000010 /* Interface is p-to-p */
+#define IFF_NOTRAILERS 0x0000000020 /* Avoid use of trailers */
+#define IFF_RUNNING 0x0000000040 /* Resources allocated */
+#define IFF_NOARP 0x0000000080 /* No address res. protocol */
+
+#define IFF_PROMISC 0x0000000100 /* Receive all packets */
+#define IFF_ALLMULTI 0x0000000200 /* Receive all multicast pkts */
+#define IFF_INTELLIGENT 0x0000000400 /* Protocol code on board */
+#define IFF_MULTICAST 0x0000000800 /* Supports multicast */
+
+#define IFF_MULTI_BCAST 0x0000001000 /* Multicast using broadcst. add. */
+#define IFF_UNNUMBERED 0x0000002000 /* Non-unique address */
+#define IFF_DHCPRUNNING 0x0000004000 /* DHCP controls interface */
+#define IFF_PRIVATE 0x0000008000 /* Do not advertise */
+
+#define IFF_NOXMIT 0x0000010000 /* Do not transmit pkts */
+#define IFF_NOLOCAL 0x0000020000 /* No address - just on-link subnet */
+#define IFF_DEPRECATED 0x0000040000 /* Address is deprecated */
+#define IFF_ADDRCONF 0x0000080000 /* Addr. from stateless addrconf */
+
+#define IFF_ROUTER 0x0000100000 /* Router on interface */
+#define IFF_NONUD 0x0000200000 /* No NUD on interface */
+#define IFF_ANYCAST 0x0000400000 /* Anycast address */
+#define IFF_NORTEXCH 0x0000800000 /* Don't xchange rout. info */
+
+#define IFF_IPV4 0x0001000000 /* IPv4 interface */
+#define IFF_IPV6 0x0002000000 /* IPv6 interface */
+#define IFF_NOFAILOVER 0x0008000000 /* in.mpathd test address */
+#define IFF_FAILED 0x0010000000 /* Interface has failed */
+
+#define IFF_STANDBY 0x0020000000 /* Interface is a hot-spare */
+#define IFF_INACTIVE 0x0040000000 /* Functioning but not used */
+#define IFF_OFFLINE 0x0080000000 /* Interface is offline */
+#define IFF_XRESOLV 0x0100000000 /* IPv6 external resolver */
+
+#define IFF_COS_ENABLED 0x0200000000 /* If CoS marking is supported */
+#define IFF_PREFERRED 0x0400000000 /* Prefer as source address */
+#define IFF_TEMPORARY 0x0800000000 /* RFC3041 */
+#define IFF_FIXEDMTU 0x1000000000 /* MTU set with SIOCSLIFMTU */
+
+#define IFF_VIRTUAL 0x2000000000 /* Cannot send/receive pkts */
+#define IFF_DUPLICATE 0x4000000000 /* Local address in use */
+#define IFF_IPMP 0x8000000000 /* IPMP IP interface */
+.fi
+.in -2
+
+.SH ERRORS
+.ne 2
+.na
+\fB\fBEPERM\fR\fR
+.ad
+.RS 12n
+Calling process has insufficient privileges.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBENXIO\fR\fR
+.ad
+.RS 12n
+The \fBlifr_name\fR member of the \fBlifreq\fR structure contains an invalid
+value.
+.sp
+For \fBSIOCGLIFSRCOF\fR, the \fBlifs_ifindex\fR member of the \fBlifsrcof\fR
+structure contains an invalid value.
+.sp
+For \fBSIOCSLIFUSESRC\fR, this error is returned if the \fBlifr_index\fR is set
+to an invalid value.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEBADADDR\fR\fR
+.ad
+.RS 12n
+Wrong address family or malformed address.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEINVAL\fR\fR
+.ad
+.RS 12n
+For \fBSIOCSLIFMTU\fR, this error is returned when the requested \fBMTU\fR size
+is invalid. This error indicates the \fBMTU\fR size is greater than the
+\fBMTU\fR size supported by the \fBDLPI\fR provider or less than \fB68\fR (for
+IPv4) or less than \fB1280\fR (for IPv6).
+.sp
+For \fBSIOCSLIFUSESRC\fR, this error is returned if either the \fBlifr_index\fR
+or \fBlifr_name\fR identify interfaces that are already part of an existing
+IPMP group.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEEXIST\fR\fR
+.ad
+.RS 12n
+For \fBSIOCLIFADDIF\fR, this error is returned if the \fBlifr_name\fR member in
+the \fBlifreq\fR structure corresponds to an interface that already has the PPA
+specified by \fBlifr_ppa\fR plumbed.
+.RE
+
+.SH SEE ALSO
+.LP
+.BR ioctl (2),
+.BR sockaddr (3SOCKET),
+.BR streamio (4I),
+.BR arp (4P),
+.BR dlpi (4P),
+.BR ip (4P),
+.BR ip6 (4P),
+.BR ndp (4P),
+.BR ifconfig (8),
+.BR in.routed (8)
diff --git a/usr/src/man/man4p/inet.4p b/usr/src/man/man4p/inet.4p
new file mode 100644
index 0000000000..8c21cf65d8
--- /dev/null
+++ b/usr/src/man/man4p/inet.4p
@@ -0,0 +1,181 @@
+'\" te
+.\" Copyright 1989 AT&T
+.\" Copyright (C) 2000, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH INET 4P "Aug 3, 2000"
+.SH NAME
+inet \- Internet protocol family
+.SH SYNOPSIS
+.LP
+.nf
+\fB#include <sys/types.h>\fR
+.fi
+
+.LP
+.nf
+\fB#include <netinet/in.h>\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+The Internet protocol family implements a collection of protocols which are
+centered around the Internet Protocol ("\fBIP\fR") and which share a common
+address format. The Internet family protocols can be accessed using the socket
+interface, where they support the \fBSOCK_STREAM\fR, \fBSOCK_DGRAM\fR, and
+\fBSOCK_RAW\fR socket types, or the Transport Level Interface (TLI), where they
+support the connectionless (\fBT_CLTS\fR) and connection oriented
+(\fBT_COTS_ORD\fR) service types.
+.SH PROTOCOLS
+.LP
+The Internet protocol family is comprised of the Internet Protocol
+("\fBIP\fR"), the Address Resolution Protocol ("\fBARP\fR"), the Internet
+Control Message Protocol ("\fBICMP\fR"), the Transmission Control Protocol
+("\fBTCP\fR"), and the User Datagram Protocol ("\fBUDP\fR").
+.sp
+.LP
+\fBTCP\fR supports the socket interface's \fBSOCK_STREAM\fR abstraction and
+\fBTLI\fR's \fBT_COTS_ORD\fR service type. \fBUDP\fR supports the
+\fBSOCK_DGRAM\fR socket abstraction and the \fBTLI\fR \fBT_CLTS\fR service
+type. See \fBtcp\fR(4P) and \fBudp\fR(4P). A direct interface to \fBIP\fR is
+available using both \fBTLI\fR and the socket interface (see \fBip\fR(4P)).
+\fBICMP\fR is used by the kernel to handle and report errors in protocol
+processing. It is also accessible to user programs (see \fBicmp\fR(4P)).
+\fBARP\fR is used to translate 32-bit \fBIP\fR addresses into 48-bit Ethernet
+addresses. See \fBarp\fR(4P).
+.sp
+.LP
+The 32-bit \fBIP\fR address is divided into network number and host number
+parts. It is frequency-encoded. The most-significant bit is zero in Class A
+addresses, in which the high-order 8 bits represent the network number. Class B
+addresses have their high order two bits set to 10 and use the high-order 16
+bits as the network number field. Class C addresses have a 24-bit network
+number part of which the high order three bits are 110. Sites with a cluster of
+\fBIP\fR networks may chose to use a single network number for the cluster;
+this is done by using subnet addressing. The host number portion of the address
+is further subdivided into subnet number and host number parts. Within a
+subnet, each subnet appears to be an individual network. Externally, the entire
+cluster appears to be a single, uniform network requiring only a single routing
+entry. Subnet addressing is enabled and examined by the following
+\fBioctl\fR(2) commands. They have the same form as the \fBSIOCSIFADDR\fR
+command.
+.sp
+.ne 2
+.na
+\fB\fBSIOCSIFNETMASK\fR\fR
+.ad
+.RS 18n
+Set interface network mask. The network mask defines the network part of the
+address; if it contains more of the address than the address type would
+indicate, then subnets are in use.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSIOCGIFNETMASK\fR\fR
+.ad
+.RS 18n
+Get interface network mask.
+.RE
+
+.SH ADDRESSING
+.LP
+\fBIP\fR addresses are four byte quantities, stored in network byte order.
+\fBIP\fR addresses should be manipulated using the byte order conversion
+routines. See \fBbyteorder\fR(3C).
+.sp
+.LP
+Addresses in the Internet protocol family use the \fBsockaddr_in\fR structure,
+which has that following members:
+.sp
+.in +2
+.nf
+short sin_family;
+ushort_t sin_port;
+struct in_addr sin_addr;
+char sin_zero[8];
+.fi
+.in -2
+
+.sp
+.LP
+Library routines are provided to manipulate structures of this form; See
+\fBinet\fR(3SOCKET).
+.sp
+.LP
+The \fBsin_addr\fR field of the \fBsockaddr_in\fR structure specifies a local
+or remote \fBIP\fR address. Each network interface has its own unique \fBIP\fR
+address. The special value \fBINADDR_ANY\fR may be used in this field to
+effect "wildcard" matching. Given in a \fBbind\fR(3SOCKET) call, this value
+leaves the local \fBIP\fR address of the socket unspecified, so that the socket
+will receive connections or messages directed at any of the valid \fBIP\fR
+addresses of the system. This can prove useful when a process neither knows nor
+cares what the local \fBIP\fR address is or when a process wishes to receive
+requests using all of its network interfaces. The \fBsockaddr_in\fR structure
+given in the \fBbind\fR(3SOCKET) call must specify an \fBin_addr\fR value of
+either \fBINADDR_ANY\fR or one of the system's valid \fBIP\fR addresses.
+Requests to bind any other address will elicit the error \fBEADDRNOTAVAIL\fR.
+When a \fBconnect\fR(3SOCKET) call is made for a socket that has a wildcard
+local address, the system sets the \fBsin_addr\fR field of the socket to the
+\fBIP\fR address of the network interface that the packets for that connection
+are routed through.
+.sp
+.LP
+The \fBsin_port\fR field of the \fBsockaddr_in\fR structure specifies a port
+number used by \fBTCP\fR or \fBUDP.\fR The local port address specified in a
+\fBbind\fR(3SOCKET) call is restricted to be greater than \fBIPPORT_RESERVED\fR
+(defined in <\fB<netinet/in.h>\fR>) unless the creating process is running as
+the superuser, providing a space of protected port numbers. In addition, the
+local port address must not be in use by any socket of same address family and
+type. Requests to bind sockets to port numbers being used by other sockets
+return the error \fBEADDRINUSE\fR. If the local port address is specified as 0,
+then the system picks a unique port address greater than \fBIPPORT_RESERVED\fR.
+A unique local port address is also picked when a socket which is not bound is
+used in a \fBconnect\fR(3SOCKET) or \fBsendto\fR (see \fBsend\fR(3SOCKET))
+call. This allows programs which do not care which local port number is used to
+set up \fBTCP\fR connections by simply calling \fBsocket\fR(3SOCKET) and then
+\fBconnect\fR(3SOCKET), and to send \fBUDP\fR datagrams with a
+\fBsocket\fR(3SOCKET) call followed by a \fBsendto()\fR call.
+.sp
+.LP
+Although this implementation restricts sockets to unique local port numbers,
+\fBTCP\fR allows multiple simultaneous connections involving the same local
+port number so long as the remote \fBIP\fR addresses or port numbers are
+different for each connection. Programs may explicitly override the socket
+restriction by setting the \fBSO_REUSEADDR\fR socket option with
+\fBsetsockopt\fR (see \fBgetsockopt\fR(3SOCKET)).
+.sp
+.LP
+\fBTLI\fR applies somewhat different semantics to the binding of local port
+numbers. These semantics apply when Internet family protocols are used using
+the \fBTLI\fR.
+.SH SEE ALSO
+.LP
+.BR ioctl (2),
+.BR byteorder (3C),
+.BR gethostbyname (3NSL),
+.BR bind (3SOCKET),
+.BR connect (3SOCKET),
+.BR getnetbyname (3SOCKET),
+.BR getprotobyname (3SOCKET),
+.BR getservbyname (3SOCKET),
+.BR getsockopt (3SOCKET),
+.BR send (3SOCKET),
+.BR sockaddr (3SOCKET),
+.BR socket (3SOCKET),
+.BR arp (4P),
+.BR icmp (4P),
+.BR ip (4P),
+.BR tcp (4P),
+.BR udp (4P)
+.sp
+.LP
+Network Information Center, \fIDDN Protocol Handbook\fR (3 vols.), Network
+Information Center, \fBSRI\fR International, Menlo Park, Calif., 1985.
+.SH NOTES
+.LP
+The Internet protocol support is subject to change as the Internet protocols
+develop. Users should not depend on details of the current implementation, but
+rather the services exported.
diff --git a/usr/src/man/man4p/inet6.4p b/usr/src/man/man4p/inet6.4p
new file mode 100644
index 0000000000..7c3bf0e24d
--- /dev/null
+++ b/usr/src/man/man4p/inet6.4p
@@ -0,0 +1,413 @@
+'\" te
+.\" Copyright (C) 2002, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH INET6 4P "Oct 3, 2002"
+.SH NAME
+inet6 \- Internet protocol family for Internet Protocol version 6
+.SH SYNOPSIS
+.LP
+.nf
+\fB#include <sys/types.h>
+#include <netinet/in.h>\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBinet6\fR protocol family implements a collection of protocols that are
+centered around the Internet Protocol version 6 (\fBIPv6\fR) and share a common
+address format. The \fBinet6\fR protocol family can be accessed using the
+socket interface, where it supports the \fBSOCK_STREAM\fR, \fBSOCK_DGRAM\fR,
+and \fBSOCK_RAW\fR socket types, or the Transport Level Interface (\fBTLI\fR),
+where it supports the connectionless (\fBT_CLTS\fR) and connection oriented
+(\fBT_COTS_ORD\fR) service types.
+.SH PROTOCOLS
+.LP
+The Internet protocol family for \fBIPv6\fR included the Internet Protocol
+Version 6 (\fBIPv6\fR), the Neighbor Discovery Protocol (\fBNDP\fR), the
+Internet Control Message Protocol (\fBICMPv6\fR), the Transmission Control
+Protocol (\fBTCP\fR), and the User Datagram Protocol (\fBUDP\fR).
+.sp
+.LP
+\fBTCP\fR supports the socket interface's \fBSOCK_STREAM\fR abstraction and
+\fBTLI\fR's \fBT_COTS_ORD\fR service type. \fBUDP\fR supports the
+\fBSOCK_DGRAM\fR socket abstraction and the \fBTLI\fR \fBT_CLTS\fR service
+type. See \fBtcp\fR(4P) and \fBudp\fR(4P). A direct interface to \fBIPv6\fR is
+available using the socket interface. See \fBip6\fR(4P). \fBICMPv6\fR is used
+by the kernel to handle and report errors in protocol processing. It is also
+accessible to user programs. See \fBicmp6\fR(4P). \fBNDP\fR is used to
+translate 128-bit \fBIPv6\fR addresses into 48-bit Ethernet addresses.
+.sp
+.LP
+\fBIPv6\fR addresses come in three types: unicast, anycast, and multicast. A
+unicast address is an identifier for a single network interface. An anycast
+address is an identifier for a set of interfaces; a packet sent to an anycast
+address is delivered to the "nearest" interface identified by that address,
+pursuant to the routing protocol's measure of distance. A multicast address is
+an identifier for a set of interfaces; a packet sent to a multicast address is
+delivered to all interfaces identified by that address. There are no broadcast
+addresses as such in \fBIPv6\fR; their functionality is superseded by multicast
+addresses.
+.sp
+.LP
+For \fBIPv6\fR addresses, there are three scopes within which unicast addresses
+are guaranteed to be unique. The scope is indicated by the address prefix. The
+three varieties are link-local (the address is unique on that physical link),
+site-local (the address is unique within that site), and global (the address is
+globally unique).
+.sp
+.LP
+The three highest order bits for global unicast addresses are set to
+\fB001\fR. The ten highest order bits for site-local addresses are set to
+\fB1111 1110 11\fR. The ten highest order bits for link-local addresses are set
+to \fB1111 1110 11\fR. For multicast addresses, the eight highest order bits
+are set to \fB1111 1111\fR. Anycast addresses have the same format as unicast
+addresses.
+.sp
+.LP
+\fBIPv6\fR addresses do not follow the concept of "address class" seen in
+\fBIP\fR.
+.sp
+.LP
+A global unicast address is divided into the following segments:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The first three bits are the Format Prefix identifying a unicast address.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The next 13 bits are the Top-Level Aggregation (\fBTLA\fR) identifier. For
+example, the identifier could specify the \fBISP\fR.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The next eight bits are reserved for future use.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The next 24 bits are the Next-Level Aggregation (\fBNLA\fR) identifier.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The next 16 bits are the Site-Level Aggregation (\fBSLA\fR) identifier.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The last 64 bits are the interface \fBID\fR. This will most often be the
+hardware address of the link in \fBIEEE EUI-64\fR format.
+.RE
+.sp
+.LP
+Link-local unicast addresses are divided in this manner:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The first ten bits are the Format Prefix identifying a link-local address.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The next 54 bits are zero.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The last 64 bits are the interface \fBID\fR. This will most often be the
+hardware address of the link in \fBIEEE EUI-64\fR format.
+.RE
+.sp
+.LP
+Site-local unicast addresses are divided in this manner:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The first ten bits are the Format Prefix identifying a site-local address.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The next 38 bits are zero.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The next 16 bits are the subnet \fBID\fR.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The last 64 bits are the interface \fBID\fR. This will most often be the
+hardware address of the link in \fBIEEE EUI-64\fR format.
+.RE
+.SH ADDRESSING
+.LP
+\fBIPv6\fR addresses are sixteen byte quantities, stored in network byte order.
+The socket \fBAPI\fR uses the \fBsockaddr_in6\fR structure when passing
+\fBIPv6\fR addresses between an application and the kernel. The
+\fBsockaddr_in6\fR structure has the following members:
+.sp
+.in +2
+.nf
+sa_familty_t sin6_family;
+in_port_t sin6_port;
+uint32_t sin6_flowinfo;
+struct in6_addr sin6_addr;
+uint32_t sin6_scope_id;
+uint32_t __sin6_src_id;
+.fi
+.in -2
+
+.sp
+.LP
+Library routines are provided to manipulate structures of this form. See
+\fBinet\fR(3SOCKET).
+.sp
+.LP
+The \fBsin6_addr\fR field of the \fBsockaddr_in6\fR structure specifies a local
+or remote \fBIPv6\fR address. Each network interface has one or more \fBIPv6\fR
+addresses configured, that is, a link-local address, a site-local address, and
+one or more global unicast \fBIPv6\fR addresses. The special value of all zeros
+may be used on this field to test for "wildcard" matching. Given in a
+\fBbind\fR(3SOCKET) call, this value leaves the local \fBIPv6\fR address of the
+socket unspecified, so that the socket will receive connections or messages
+directed at any of the valid \fBIPv6\fR addresses of the system. This can prove
+useful when a process neither knows nor cares what the local \fBIPv6\fR address
+is, or when a process wishes to receive requests using all of its network
+interfaces.
+.sp
+.LP
+The \fBsockaddr_in6\fR structure given in the \fBbind()\fR call must specify
+an \fIin6_addr\fR value of either all zeros or one of the system's valid
+\fBIPv6\fR addresses. Requests to bind any other address will elicit the error
+\fBEADDRNOTAVAI\fR. When a \fBconnect\fR(3SOCKET) call is made for a socket
+that has a wildcard local address, the system sets the \fBsin6_addr\fR field of
+the socket to the \fBIPv6\fR address of the network interface through which the
+packets for that connection are routed.
+.sp
+.LP
+The \fBsin6_port\fR field of the \fBsockaddr_in6\fR structure specifies a port
+number used by \fBTCP\fR or \fBUDP\fR. The local port address specified in a
+\fBbind()\fR call is restricted to be greater than \fBIPPORT_RESERVED\fR
+(defined in <\fBnetinet/in.h\fR>) unless the creating process is running as the
+super-user, providing a space of protected port numbers. In addition, the
+local port address cannot be in use by any socket of the same address family
+and type. Requests to bind sockets to port numbers being used by other sockets
+return the error \fBEADDRINUSE\fR. If the local port address is specified as
+\fB0\fR, the system picks a unique port address greater than
+\fBIPPORT_RESERVED\fR. A unique local port address is also selected when a
+socket which is not bound is used in a \fBconnect\fR(3SOCKET) or \fBsendto()\fR
+call. See \fBsend\fR(3SOCKET). This allows programs that do not care which
+local port number is used to set up \fBTCP\fR connections by simply calling
+\fBsocket\fR(3SOCKET) and then \fBconnect\fR(3SOCKET), and then sending
+\fBUDP\fR datagrams with a \fBsocket()\fR call followed by a \fBsendto()\fR
+call.
+.sp
+.LP
+Although this implementation restricts sockets to unique local port numbers,
+\fBTCP\fR allows multiple simultaneous connections involving the same local
+port number so long as the remote \fBIPv6\fR addresses or port numbers are
+different for each connection. Programs may explicitly override the socket
+restriction by setting the \fBSO_REUSEADDR\fR socket option with
+\fBsetsockopt()\fR. See \fBgetsockopt\fR(3SOCKET).
+.sp
+.LP
+In addition, the same port may be bound by two separate sockets if one is an
+\fBIP\fR socket and the other an \fBIPv6\fR socket.
+.sp
+.LP
+\fBTLI\fR applies somewhat different semantics to the binding of local port
+numbers. These semantics apply when Internet family protocols are used using
+the \fBTLI\fR.
+.SH SOURCE ADDRESS SELECTION
+.LP
+IPv6 source address selection is done on a per destination basis, and utilizes
+a list of rules from which the best source address is selected from candidate
+addresses. The candidate set comprises a set of local addresses assigned on the
+system which are up and not anycast. If just one candidate exists in the
+candidate set, it is selected.
+.sp
+.LP
+Conceptually, each selection rule prefers one address over another, or
+determines their equivalence. If a rule produces a tie, a subsequent rule is
+used to break the tie.
+.sp
+.LP
+The sense of some rules may be reversed on a per-socket basis using the
+IPV6_SRC_PREFERENCES socket option (see \fBip6\fR(4P)). The flag values for
+this option are defined in <\fBnetinet/in.h\fR> and are referenced in the
+description of the appropriate rules below.
+.sp
+.LP
+As the selection rules indicate, the candidate addresses are SA and SB and the
+destination is D.
+.sp
+.ne 2
+.na
+\fBPrefer the same address\fR
+.ad
+.RS 30n
+If SA == D, prefer SA. If SB == D, prefer SB.
+.RE
+
+.sp
+.ne 2
+.na
+\fBPrefer appropriate scope\fR
+.ad
+.RS 30n
+Here, Scope(X) is the scope of X according to the IPv6 Addressing Architecture.
+.sp
+If Scope(SA) < Scope(SB): If Scope(SA) < Scope(D), then prefer SB and otherwise
+prefer SA.
+.sp
+If Scope(SB) < Scope(SA): If Scope(SB) < Scope(D), then prefer SA and otherwise
+prefer SB.
+.RE
+
+.sp
+.ne 2
+.na
+\fBAvoid deprecated addresses\fR
+.ad
+.RS 30n
+If one of the addresses is deprecated (IFF_DEPRECATED) and the other is not,
+prefer the one that isn't deprecated.
+.RE
+
+.sp
+.ne 2
+.na
+\fBPrefer preferred addresses\fR
+.ad
+.RS 30n
+If one of the addresses is preferred (IFF_PREFERRED) and the other is not,
+prefer the one that is preferred.
+.RE
+
+.sp
+.ne 2
+.na
+\fBPrefer outgoing interface\fR
+.ad
+.RS 30n
+If one of the addresses is assigned to the interface that will be used to send
+packets to D and the other is not, then prefer the former.
+.RE
+
+.sp
+.ne 2
+.na
+\fBPrefer matching label\fR
+.ad
+.RS 30n
+This rule uses labels which are obtained through the IPv6 default address
+selection policy table. See \fBipaddrsel\fR(8) for a description of the
+default contents of the table and how the table is configured.
+.sp
+If Label(SA) == Label(D) and Label(SB) != Label(D), then prefer SA.
+.sp
+If Label(SB) == Label(D) and Label(SA) != Label(D), then prefer SB.
+.RE
+
+.sp
+.ne 2
+.na
+\fBPrefer public addresses\fR
+.ad
+.RS 30n
+This rule prefers public addresses over temporary addresses, as defined in
+\fIRFC 3041\fR. Temporary addresses are disabled by default and may be enabled
+by appropriate settings in \fBndpd.conf\fR(5).
+.sp
+The sense of this rule may be set on a per-socket basis using the
+IPV6_SRC_PREFERENCES socket option. Passing the flag IPV6_PREFER_SRC_TMP or
+IPV6_PREFER_SRC_PUBLIC will cause temporary or public addresses to be
+preferred, respectively, for that particular socket. See \fBip6\fR(4P) for
+more information about IPv6 socket options.
+.RE
+
+.sp
+.ne 2
+.na
+\fBUse longest matching prefix.\fR
+.ad
+.sp .6
+.RS 4n
+This rule prefers the source address that has the longer matching prefix with
+the destination. Because this is the last rule and because both source
+addresses could have equal matching prefixes, this rule does an \fBxor\fR of
+each source address with the destination, then selects the source address with
+the smaller \fBxor\fR value in order to break any potential tie.
+.sp
+If SA ^ D < SB ^ D, then prefer SA.
+.sp
+If SB ^ D < SA ^ D, then prefer SB.
+.RE
+
+.sp
+.LP
+Applications can override this algorithm by calling \fBbind\fR(3SOCKET) and
+specifying an address.
+.SH SEE ALSO
+.LP
+.BR ioctl (2),
+.BR bind (3SOCKET),
+.BR connect (3SOCKET),
+.BR getipnodebyaddr (3SOCKET),
+.BR getipnodebyname (3SOCKET),
+.BR getprotobyname (3SOCKET),
+.BR getservbyname (3SOCKET),
+.BR getsockopt (3SOCKET),
+.BR inet (3SOCKET),
+.BR send (3SOCKET),
+.BR sockaddr (3SOCKET),
+.BR icmp6 (4P),
+.BR ip6 (4P),
+.BR tcp (4P),
+.BR udp (4P)
+.sp
+.LP
+Conta, A. and Deering, S., \fIInternet Control Message Protocol (ICMPv6) for
+the Internet Protocol Version 6 (IPv6) Specification\fR, RFC 1885, December
+1995.
+.sp
+.LP
+Deering, S. and Hinden, B., \fIInternet Protocol, Version 6 (IPv6)
+Specification\fR, RFC 1883, December 1995.
+.sp
+.LP
+Hinden, B. and Deering, S., \fIIP Version 6 Addressing Architecture\fR, RFC
+1884, December 1995.
+.sp
+.LP
+Draves, R., \fIRFC 3484, Default Address Selection for IPv6.\fR The Internet
+Society. February 2003.
+.sp
+.LP
+Narten, T., and Draves, R. \fIRFC 3041, Privacy Extensions for Stateless
+Address Autoconfiguration in IPv6.\fR The Internet Society. January 2001.
+.SH NOTES
+.LP
+The \fBIPv6\fR support is subject to change as the Internet protocols develop.
+Users should not depend on details of the current implementation, but rather
+the services exported.
diff --git a/usr/src/man/man4p/ip.4p b/usr/src/man/man4p/ip.4p
new file mode 100644
index 0000000000..90d2af5f17
--- /dev/null
+++ b/usr/src/man/man4p/ip.4p
@@ -0,0 +1,951 @@
+'\" te
+.\" Copyright 2020 OmniOS Community Edition (OmniOSce) Association.
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 2008 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH IP 4P "Sep 18, 2020"
+.SH NAME
+ip, IP \- Internet Protocol
+.SH SYNOPSIS
+.nf
+\fB#include <sys/socket.h>\fR
+.fi
+
+.LP
+.nf
+\fB#include <netinet/in.h>\fR
+.fi
+
+.LP
+.nf
+\fBs = socket(AF_INET, SOCK_RAW, proto);\fR
+.fi
+
+.LP
+.nf
+\fBt = t_open ("/dev/rawip", O_RDWR);\fR
+.fi
+
+.SH DESCRIPTION
+IP is the internetwork datagram delivery protocol that is central to the
+Internet protocol family. Programs may use \fBIP\fR through higher-level
+protocols such as the Transmission Control Protocol (TCP) or the User Datagram
+Protocol (UDP), or may interface directly to IP. See \fBtcp\fR(4P) and
+\fBudp\fR(4P). Direct access may be by means of the socket interface, using a
+"raw socket," or by means of the Transport Level Interface (TLI). The protocol
+options defined in the IP specification may be set in outgoing datagrams.
+.sp
+.LP
+Packets sent to or from this system may be subject to IPsec policy. See
+\fBipsec\fR(4P) for more information.
+.SH APPLICATION PROGRAMMING INTERFACE
+The STREAMS driver \fB/dev/rawip\fR is the TLI transport provider that provides
+raw access to IP.
+.sp
+.LP
+Raw IP sockets are connectionless and are normally used with the \fBsendto()\fR
+and \fBrecvfrom()\fR calls (see \fBsend\fR(3SOCKET) and \fBrecv\fR(3SOCKET)),
+although the \fBconnect\fR(3SOCKET) call may also be used to fix the
+destination for future datagram. In this case, the \fBread\fR(2) or
+\fBrecv\fR(3SOCKET) and \fBwrite\fR(2) or \fBsend\fR(3SOCKET) calls may be
+used. If \fIproto\fR is \fBIPPROTO_RAW\fR or \fBIPPROTO_IGMP\fR, the
+application is expected to include a complete IP header when sending.
+Otherwise, that protocol number will be set in outgoing datagrams and used to
+filter incoming datagrams and an IP header will be generated and prepended to
+each outgoing datagram. In either case, received datagrams are returned with
+the IP header and options intact.
+.sp
+.LP
+If an application uses \fBIP_HDRINCL\fR and provides the IP header contents,
+the IP stack does not modify the following supplied fields under any
+conditions: Type of Service, DF Flag, Protocol, and Destination Address. The IP
+Options and IHL fields are set by use of \fBIP_OPTIONS\fR, and \fBTotal
+Length\fR is updated to include any options. Version is set to the default.
+Identification is chosen by the normal IP ID selection logic. The source
+address is updated if none was specified and the TTL is changed if the packet
+has a broadcast destination address. Since an applicaton cannot send down
+fragments (as IP assigns the IP ID), Fragment Offset is always 0. The IP
+Checksum field is computed by IP. None of the data beyond the IP header are
+changed, including the application-provided transport header.
+.sp
+.LP
+The socket options supported at the IP level are:
+.sp
+.ne 2
+.na
+\fBIP_OPTIONS\fR
+.ad
+.RS 22n
+IP options for outgoing datagrams. This socket option may be used to set IP
+options to be included in each outgoing datagram. IP options to be sent are set
+with \fBsetsockopt()\fR (see \fBgetsockopt\fR(3SOCKET)). The
+\fBgetsockopt\fR(3SOCKET) call returns the IP options set in the last
+\fBsetsockopt()\fR call. IP options on received datagrams are visible to user
+programs only using raw IP sockets. The format of IP options given in
+\fBsetsockopt()\fR matches those defined in the IP specification with one
+exception: the list of addresses for the source routing options must include
+the first-hop gateway at the beginning of the list of gateways. The first-hop
+gateway address will be extracted from the option list and the size adjusted
+accordingly before use. IP options may be used with any socket type in the
+Internet family.
+.RE
+
+.sp
+.ne 2
+.na
+\fBIP_SEC_OPT\fR
+.ad
+.RS 22n
+Enable or obtain IPsec security settings for this socket. For more details on
+the protection services of IPsec, see \fBipsec\fR(4P).
+.RE
+
+.sp
+.ne 2
+.na
+\fBIP_ADD_MEMBERSHIP\fR
+.ad
+.RS 22n
+Join a multicast group.
+.RE
+
+.sp
+.ne 2
+.na
+\fBIP_DROP_MEMBERSHIP\fR
+.ad
+.RS 22n
+Leave a multicast group.
+.RE
+
+.sp
+.ne 2
+.na
+\fBIP_BOUND_IF\fR
+.ad
+.RS 22n
+Limit reception and transmission of packets to this interface. Takes an
+integer as an argument. The integer is the selected interface index.
+.RE
+
+.sp
+.LP
+The following option takes \fBin_pktinfo_t\fR as the parameter:
+.sp
+.ne 2
+.na
+\fBIP_PKTINFO\fR
+.ad
+.sp .6
+.RS 4n
+Set the source address and/or transmit interface of the packet(s). Note that
+the IP_BOUND_IF socket option takes precedence over the interface index passed
+in IP_PKTINFO.
+.sp
+.in +2
+.nf
+struct in_pktinfo {
+ unsigned int ipi_ifindex;/* send/recv interface index */
+ struct in_addr ipi_spec_dst;/* matched source addr. */
+ struct in_addr ipi_addr;/* src/dst addr. in IP hdr */
+} in_pktinfo_t;
+.fi
+.in -2
+
+When passed in (on transmit) via ancillary data with IP_PKTINFO, ipi_spec_dst
+is used as the source address and ipi_ifindex is used as the interface index to
+send the packet out.
+.RE
+
+.sp
+.LP
+The following options are boolean switches controlling the reception of
+ancillary data. The option value is type \fBint\fR; a non-zero value
+enables the option whilst a zero value disables it.
+
+.sp
+.ne 2
+.na
+\fBIP_RECVDSTADDR\fR
+.ad
+.RS 22n
+When enabled on a SOCK_DGRAM socket, enables receipt of the destination
+IP address of the incoming packet. Returns \fBinaddr_t\fR as ancillary
+data.
+.RE
+
+.sp
+.ne 2
+.na
+\fBIP_RECVIF\fR
+.ad
+.RS 22n
+Enable/disable receipt of the inbound interface index. Returns \fBuint_t\fR as
+ancillary data.
+.RE
+
+.sp
+.ne 2
+.na
+\fBIP_RECVOPTS\fR
+.ad
+.RS 22n
+When enabled on a SOCK_DGRAM socket, enables receipt of the IP options
+from the incoming packet. Returns variable-length IP options, up to 40
+bytes, as ancillary data.
+.RE
+
+.sp
+.ne 2
+.na
+\fBIP_RECVPKTINFO\fR
+.ad
+.RS 22n
+Enable/disable receipt of the index of the interface the packet arrived on, the
+local address that was matched for reception, and the inbound packet's actual
+destination address. Takes boolean as the parameter. Returns
+\fBin_pktinfo_t\fR as ancillary data.
+.RE
+
+.sp
+.ne 2
+.na
+\fBIP_RECVSLLA\fR
+.ad
+.RS 22n
+When enabled on a SOCK_DGRAM socket, enables receipt of the source link-layer
+address for the incoming packet. Returns \fBstruct sockaddr_dl\fR as
+ancillary data.
+.RE
+
+.sp
+.ne 2
+.na
+\fBIP_RECVTTL\fR
+.ad
+.RS 22n
+When enabled on a SOCK_DGRAM socket, the IP TTL (time to live) field for an
+incoming datagram is returned as \fBuint8_t\fR in ancillary data.
+.RE
+
+.sp
+.ne 2
+.na
+\fBIP_RECVTOS\fR
+.ad
+.RS 22n
+When enabled, the IP TOS (type of service) field is returned as \fBuint8_t\fR
+in ancillary data. For \fBSOCK_DGRAM\fR sockets, the ancillary data item is
+included for every call to \fBrecvmsg()\fR. For \fBSOCK_STREAM\fR sockets,
+where there is no direct mapping between received TCP segments and receive
+operations, the ancillary data item will only be present when this option
+is first enabled, and subsequently only if the value changes.
+.RE
+
+.sp
+.LP
+The following options take a \fBstruct ip_mreq\fR as the parameter. The
+structure contains a multicast address which must be set to the \fBCLASS-D\fR
+\fBIP\fR multicast address and an interface address. Normally the interface
+address is set to \fBINADDR_ANY\fR which causes the kernel to choose the
+interface on which to join.
+.sp
+.ne 2
+.na
+\fBIP_BLOCK_SOURCE\fR
+.ad
+.RS 29n
+Block multicast packets whose source address matches the given source address.
+The specified group must be joined previously using IP_ADD_MEMBERSHIP or
+MCAST_JOIN_GROUP.
+.RE
+
+.sp
+.ne 2
+.na
+\fBIP_UNBLOCK_SOURCE\fR
+.ad
+.RS 29n
+Unblock (begin receiving) multicast packets which were previously blocked using
+IP_BLOCK_SOURCE.
+.RE
+
+.sp
+.ne 2
+.na
+\fBIP_ADD_SOURCE_MEMBERSHIP\fR
+.ad
+.RS 29n
+Begin receiving packets for the given multicast group whose source address
+matches the specified address.
+.RE
+
+.sp
+.ne 2
+.na
+\fBIP_DROP_SOURCE_MEMBERSHIP\fR
+.ad
+.RS 29n
+Stop receiving packets for the given multicast group whose source address
+matches the specified address.
+.RE
+
+.sp
+.LP
+The following options take a \fBstruct ip_mreq_source\fR as the parameter. The
+structure contains a multicast address (which must be set to the CLASS-D IP
+multicast address), an interface address, and a source address.
+.sp
+.ne 2
+.na
+\fBMCAST_JOIN_GROUP\fR
+.ad
+.RS 28n
+Join a multicast group. Functionally equivalent to IP_ADD_MEMBERSHIP.
+.RE
+
+.sp
+.ne 2
+.na
+\fBMCAST_BLOCK_SOURCE\fR
+.ad
+.RS 28n
+Block multicast packets whose source address matches the given source address.
+The specified group must be joined previously using IP_ADD_MEMBERSHIP or
+MCAST_JOIN_GROUP.
+.RE
+
+.sp
+.ne 2
+.na
+\fBMCAST_UNBLOCK_SOURCE\fR
+.ad
+.RS 28n
+Unblock (begin receiving) multicast packets which were previously blocked using
+MCAST_BLOCK_SOURCE.
+.RE
+
+.sp
+.ne 2
+.na
+\fBMCAST_LEAVE_GROUP\fR
+.ad
+.RS 28n
+Leave a multicast group. Functionally equivalent to IP_DROP_MEMBERSHIP.
+.RE
+
+.sp
+.ne 2
+.na
+\fBMCAST_JOIN_SOURCE_GROUP\fR
+.ad
+.RS 28n
+Begin receiving packets for the given multicast group whose source address
+matches the specified address.
+.RE
+
+.sp
+.ne 2
+.na
+\fBMCAST_LEAVE_SOURCE_GROUP\fR
+.ad
+.RS 28n
+Stop receiving packets for the given multicast group whose source address
+matches the specified address.
+.RE
+
+.sp
+.LP
+The following options take a struct \fBgroup_req\fR or struct
+\fBgroup_source_req\fR as the parameter. The `\fBgroup_req\fR structure
+contains an interface index and a multicast address which must be set to the
+CLASS-D multicast address. The \fBgroup_source_req\fR structure is used for
+those options which include a source address. It contains an interface index,
+multicast address, and source address.
+.sp
+.ne 2
+.na
+\fBIP_MULTICAST_IF\fR
+.ad
+.RS 21n
+The outgoing interface for multicast packets. This option takes a \fBstruct\fR
+\fBin_addr\fR as an argument, and it selects that interface for outgoing IP
+multicast packets. If the address specified is \fBINADDR_ANY\fR, it uses the
+unicast routing table to select the outgoing interface (which is the default
+behavior).
+.RE
+
+.sp
+.ne 2
+.na
+\fBIP_MULTICAST_TTL\fR
+.ad
+.RS 21n
+Time to live for multicast datagrams. This option takes an unsigned character
+as an argument. Its value is the TTL that IP uses on outgoing multicast
+datagrams. The default is \fB1\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBIP_MULTICAST_LOOP\fR
+.ad
+.RS 21n
+Loopback for multicast datagrams. Normally multicast datagrams are delivered
+to members on the sending host (or sending zone). Setting the unsigned
+character argument to 0 causes the opposite behavior, meaning that when
+multiple zones are present, the datagrams are delivered to all zones except the
+sending zone.
+.RE
+
+.sp
+.ne 2
+.na
+\fBIP_TOS\fR
+.ad
+.RS 21n
+This option takes an integer argument as its input value. The least significant
+8 bits of the value are used to set the Type Of Service field in the IP header
+of the outgoing packets.
+.RE
+
+.sp
+.ne 2
+.na
+\fBIP_NEXTHOP\fR
+.ad
+.RS 21n
+This option specifies the address of the onlink nexthop for traffic originating
+from that socket. It causes the routing table to be bypassed and outgoing
+traffic is sent directly to the specified nexthop. This option takes an
+ipaddr_t argument representing the IPv4 address of the nexthop as the input
+value. The IP_NEXTHOP option takes precedence over IPOPT_LSRR. IP_BOUND_IF and
+SO_DONTROUTE take precedence over IP_NEXTHOP. This option has no meaning for
+broadcast and multicast packets. The application must ensure that the specified
+nexthop is alive. An application may want to specify the IP_NEXTHOP option on a
+TCP listener socket only for incoming requests to a particular IP address. In
+this case, it must avoid binding the socket to INADDR_ANY and instead must bind
+the listener socket to the specific IP address. In addition, typically the
+application may want the incoming and outgoing interface to be the same. In
+this case, the application must select a suitable nexthop that is onlink and
+reachable via the desired interface and do a setsockopt (IP_NEXTHOP) on it.
+Then it must bind to the IP address of the desired interface. Setting the
+IP_NEXTHOP option requires the PRIV_SYS_NET_CONFIG privilege.
+.RE
+
+.sp
+.LP
+The multicast socket options (IP_MULTICAST_IF, IP_MULTICAST_TTL,
+IP_MULTICAST_LOOP and IP_RECVIF) can be used with any datagram socket type in
+the Internet family.
+.sp
+.LP
+At the socket level, the socket option \fBSO_DONTROUTE\fR may be applied. This
+option forces datagrams being sent to bypass routing and forwarding by forcing
+the IP Time To Live field to \fB1\fR, meaning that the packet will not be
+forwarded by routers.
+.sp
+.LP
+Raw IP datagrams can also be sent and received using the TLI connectionless
+primitives.
+.sp
+.LP
+Datagrams flow through the IP layer in two directions: from the network
+\fIup\fR to user processes and from user processes \fIdown\fR to the network.
+Using this orientation, IP is layered \fIabove\fR the network interface drivers
+and \fIbelow\fR the transport protocols such as UDP and TCP. The Internet
+Control Message Protocol (ICMP) is logically a part of IP. See \fBicmp\fR(4P).
+.sp
+.LP
+IP provides for a checksum of the header part, but not the data part, of the
+datagram. The checksum value is computed and set in the process of sending
+datagrams and checked when receiving datagrams.
+.sp
+.LP
+IP options in received datagrams are processed in the IP layer according to the
+protocol specification. Currently recognized IP options include: security,
+loose source and record route (LSRR), strict source and record route (SSRR),
+record route, and internet timestamp.
+.sp
+.LP
+By default, the IP layer will not forward IPv4 packets that are not addressed
+to it. This behavior can be overridden by using \fBrouteadm\fR(8) to enable
+the ipv4-forwarding option. IPv4 forwarding is configured at boot time based on
+the setting of \fBrouteadm\fR(8)'s ipv4-forwarding option.
+.sp
+.LP
+For backwards compatibility, IPv4 forwarding can be enabled or disabled using
+\fBndd\fR(8)'s ip_forwarding variable. It is set to 1 if IPv4 forwarding is
+enabled, or 0 if it is disabled.
+.sp
+.LP
+Additionally, finer-grained forwarding can be configured in IP. Each interface
+can be configured to forward IP packets by setting the IFF_ROUTER interface
+flag. This flag can be set and cleared using \fBifconfig\fR(8)'s router and
+router options. If an interface's IFF_ROUTER flag is set, packets can be
+forwarded to or from the interface. If it is clear, packets will neither be
+forwarded from this interface to others, nor forwarded to this interface.
+Setting the ip_forwarding variable sets all of the IPv4 interfaces' IFF_ROUTER
+flags.
+.sp
+.LP
+For backwards compatibility, each interface creates an
+\fB<ifname>:ip_forwarding /dev/ip\fR variable that can be modified using
+\fBndd\fR(8). An interface's \fB:ip_forwarding ndd\fR variable is a boolean
+variable that mirrors the status of its IFF_ROUTER interface flag. It is set to
+1 if the flag is set, or 0 if it is clear. This interface specific \fB<ifname>
+:ip_forwarding ndd\fR variable is obsolete and may be removed in a future
+release of Solaris. The \fBifconfig\fR(8) router and -router interfaces are
+preferred.
+.sp
+.LP
+The IP layer sends an ICMP message back to the source host in many cases when
+it receives a datagram that can not be handled. A "time exceeded" ICMP message
+is sent if the "time to live" field in the IP header drops to zero in the
+process of forwarding a datagram. A "destination unreachable" message is sent
+if a datagram can not be forwarded because there is no route to the final
+destination, or if it can not be fragmented. If the datagram is addressed to
+the local host but is destined for a protocol that is not supported or a port
+that is not in use, a destination unreachable message is also sent. The IP
+layer may send an ICMP "source quench" message if it is receiving datagrams too
+quickly. ICMP messages are only sent for the first fragment of a fragmented
+datagram and are never returned in response to errors in other ICMP messages.
+.sp
+.LP
+The IP layer supports fragmentation and reassembly. Datagrams are fragmented on
+output if the datagram is larger than the maximum transmission unit (MTU) of
+the network interface. Fragments of received datagrams are dropped from the
+reassembly queues if the complete datagram is not reconstructed within a short
+time period.
+.sp
+.LP
+Errors in sending discovered at the network interface driver layer are passed
+by IP back up to the user process.
+.sp
+.LP
+Multi-Data Transmit allows more than one packet to be sent from the IP module
+to another in a given call, thereby reducing the per-packet processing costs.
+The behavior of Multi-Data Transmit can be overrideen by using \fBndd\fR(8) to
+set the \fB/dev/ip\fR variable, ip_multidata_outbound to 0. Note, the IP module
+will only initiate Multi-Data Transmit if the network interface driver supports
+it.
+.SH PACKET EVENTS
+Through the netinfo framework, this driver provides the following packet
+events:
+.sp
+.ne 2
+.na
+\fBPhysical in\fR
+.ad
+.RS 16n
+Packets received on a network interface from an external source.
+.RE
+
+.sp
+.ne 2
+.na
+\fBPhysical out\fR
+.ad
+.RS 16n
+Packets to be sent out a network interface.
+.RE
+
+.sp
+.ne 2
+.na
+\fBForwarding\fR
+.ad
+.RS 16n
+Packets being forwarded through this host to another network.
+.RE
+
+.sp
+.ne 2
+.na
+\fBloopback in\fR
+.ad
+.RS 16n
+Packets that have been sent by a local application to another.
+.RE
+
+.sp
+.ne 2
+.na
+\fBloopback out\fR
+.ad
+.RS 16n
+Packets about to be received by a local application from another.
+.RE
+
+.sp
+.LP
+Currently, only a single function may be registered for each event. As a
+result, if the slot for an event is already occupied by someone else, a second
+attempt to register a callback fails.
+.sp
+.LP
+To receive packet events in a kernel module, it is first necessary to obtain a
+handle for either IPv4 or IPv6 traffic. This is achieved by passing NHF_INET
+or NHF_INET6 through to a net_protocol_lookup() call. The value returned from
+this call must then be passed into a call to net_register_hook(), along with
+a description of the hook to add. For a description of the structure passed
+through to the callback, please see \fBhook_pkt_event\fR(9S). For IP
+packets, this structure is filled out as follows:
+.sp
+.ne 2
+.na
+\fBhpe_ifp\fR
+.ad
+.RS 11n
+Identifier indicating the inbound interface for packets received with the
+"physical in" event.
+.RE
+
+.sp
+.ne 2
+.na
+\fBhpe_ofp\fR
+.ad
+.RS 11n
+Identifier indicating the outbound interface for packets received with the
+"physical out" event.
+.RE
+
+.sp
+.ne 2
+.na
+\fBhpe_hdr\fR
+.ad
+.RS 11n
+Pointer to the start of the IP header (not the ethernet header).
+.RE
+
+.sp
+.ne 2
+.na
+\fBhpe_mp\fR
+.ad
+.RS 11n
+Pointer to the start of the mblk_t chain containing the IP packet.
+.RE
+
+.sp
+.ne 2
+.na
+\fBhpe_mb\fR
+.ad
+.RS 11n
+Pointer to the mblk_t with the IP header in it.
+.RE
+
+.SH NETWORK INTERFACE EVENTS
+In addition to events describing packets as they move through the system, it is
+also possible to receive notification of events relating to network interfaces.
+These events are all reported back through the same callback. The list of
+events is as follows:
+.sp
+.ne 2
+.na
+\fBplumb\fR
+.ad
+.RS 18n
+A new network interface has been instantiated.
+.RE
+
+.sp
+.ne 2
+.na
+\fBunplumb\fR
+.ad
+.RS 18n
+A network interface is no longer associated with this protocol.
+.RE
+
+.sp
+.ne 2
+.na
+\fBup\fR
+.ad
+.RS 18n
+At least one logical interface is now ready to receive packets.
+.RE
+
+.sp
+.ne 2
+.na
+\fBdown\fR
+.ad
+.RS 18n
+There are no logical interfaces expecting to receive packets.
+.RE
+
+.sp
+.ne 2
+.na
+\fBaddress change\fR
+.ad
+.RS 18n
+An address has changed on a logical interface.
+.RE
+
+.SH SEE ALSO
+.BR read (2),
+.BR write (2),
+.BR socket.h (3HEAD),
+.BR bind (3SOCKET),
+.BR connect (3SOCKET),
+.BR getsockopt (3SOCKET),
+.BR recv (3SOCKET),
+.BR send (3SOCKET),
+.BR setsockopt (3SOCKET),
+.BR icmp (4P),
+.BR if_tcp (4P),
+.BR inet (4P),
+.BR ip (4P),
+.BR ip6 (4P),
+.BR ipsec (4P),
+.BR routing (4P),
+.BR tcp (4P),
+.BR udp (4P),
+.BR defaultrouter (5),
+.BR ifconfig (8),
+.BR ndd (8),
+.BR routeadm (8),
+.BR net_hook_register (9F),
+.BR hook_pkt_event (9S)
+.sp
+.LP
+Braden, R., \fIRFC 1122, Requirements for Internet Hosts \(mi Communication
+Layers\fR, Information Sciences Institute, University of Southern California,
+October 1989.
+.sp
+.LP
+Postel, J., \fIRFC 791, Internet Protocol \(mi DARPA Internet Program Protocol
+Specification\fR, Information Sciences Institute, University of Southern
+California, September 1981.
+.SH DIAGNOSTICS
+A socket operation may fail with one of the following errors returned:
+.sp
+.ne 2
+.na
+\fBEACCES\fR
+.ad
+.RS 17n
+A \fBbind()\fR operation was attempted with a "reserved" port number and the
+effective user ID of the process was not the privileged user.
+.sp
+Setting the IP_NEXTHOP was attempted by a process lacking the
+PRIV_SYS_NET_CONFIG privilege.
+.RE
+
+.sp
+.ne 2
+.na
+\fBEADDRINUSE\fR
+.ad
+.RS 17n
+A \fBbind()\fR operation was attempted on a socket with a network address/port
+pair that has already been bound to another socket.
+.RE
+
+.sp
+.ne 2
+.na
+\fBEADDRNOTAVAIL\fR
+.ad
+.RS 17n
+A \fBbind()\fR operation was attempted for an address that is not configured on
+this machine.
+.RE
+
+.sp
+.ne 2
+.na
+\fBEINVAL\fR
+.ad
+.RS 17n
+A \fBsendmsg()\fR operation with a non-NULL \fBmsg_accrights\fR was attempted.
+.RE
+
+.sp
+.ne 2
+.na
+\fBEINVAL\fR
+.ad
+.RS 17n
+A \fBgetsockopt()\fR or \fBsetsockopt()\fR operation with an unknown socket
+option name was given.
+.RE
+
+.sp
+.ne 2
+.na
+\fBEINVAL\fR
+.ad
+.RS 17n
+A \fBgetsockopt()\fR or \fBsetsockopt()\fR operation was attempted with the
+\fBIP\fR option field improperly formed; an option field was shorter than the
+minimum value or longer than the option buffer provided.
+.RE
+
+.sp
+.ne 2
+.na
+\fBEISCONN\fR
+.ad
+.RS 17n
+A \fBconnect()\fR operation was attempted on a socket on which a
+\fBconnect()\fR operation had already been performed, and the socket could not
+be successfully disconnected before making the new connection.
+.RE
+
+.sp
+.ne 2
+.na
+\fBEISCONN\fR
+.ad
+.RS 17n
+A \fBsendto()\fR or \fBsendmsg()\fR operation specifying an address to which
+the message should be sent was attempted on a socket on which a \fBconnect()\fR
+operation had already been performed.
+.RE
+
+.sp
+.ne 2
+.na
+\fBEMSGSIZE\fR
+.ad
+.RS 17n
+A \fBsend()\fR, \fBsendto()\fR, or \fBsendmsg()\fR operation was attempted to
+send a datagram that was too large for an interface, but was not allowed to be
+fragmented (such as broadcasts).
+.RE
+
+.sp
+.ne 2
+.na
+\fBENETUNREACH\fR
+.ad
+.RS 17n
+An attempt was made to establish a connection by means of \fBconnect()\fR, or
+to send a datagram by means of \fBsendto()\fR or \fBsendmsg()\fR, where there
+was no matching entry in the routing table; or if an ICMP "destination
+unreachable" message was received.
+.RE
+
+.sp
+.ne 2
+.na
+\fBENOTCONN\fR
+.ad
+.RS 17n
+A \fBsend()\fR or \fBwrite()\fR operation, or a \fBsendto()\fR or
+\fBsendmsg()\fR operation not specifying an address to which the message should
+be sent, was attempted on a socket on which a \fBconnect()\fR operation had not
+already been performed.
+.RE
+
+.sp
+.ne 2
+.na
+\fBENOBUFS\fR
+.ad
+.RS 17n
+The system ran out of memory for fragmentation buffers or other internal data
+structures.
+.RE
+
+.sp
+.ne 2
+.na
+\fBENOBUFS\fR
+.ad
+.RS 17n
+\fBSO_SNDBUF\fR or \fBSO_RCVBUF\fR exceeds a system limit.
+.RE
+
+.sp
+.ne 2
+.na
+\fBEINVAL\fR
+.ad
+.RS 17n
+Invalid length for \fBIP_OPTIONS\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBEHOSTUNREACH\fR
+.ad
+.RS 17n
+Invalid address for \fBIP_MULTICAST_IF\fR.
+.sp
+Invalid (offlink) nexthop address for IP_NEXTHOP.
+.RE
+
+.sp
+.ne 2
+.na
+\fBEINVAL\fR
+.ad
+.RS 17n
+Not a multicast address for \fBIP_ADD_MEMBERSHIP\fR and
+\fBIP_DROP_MEMBERSHIP\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBEADDRNOTAVAIL\fR
+.ad
+.RS 17n
+Bad interface address for \fBIP_ADD_MEMBERSHIP\fR and \fBIP_DROP_MEMBERSHIP\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBEADDRINUSE\fR
+.ad
+.RS 17n
+Address already joined for \fBIP_ADD_MEMBERSHIP\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBENOENT\fR
+.ad
+.RS 17n
+Address not joined for \fBIP_DROP_MEMBERSHIP\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBENOPROTOOPT\fR
+.ad
+.RS 17n
+Invalid socket type.
+.RE
+
+.sp
+.ne 2
+.na
+\fBEPERM\fR
+.ad
+.RS 17n
+No permissions.
+.RE
+
+.SH NOTES
+Raw sockets should receive \fBICMP\fR error packets relating to the protocol;
+currently such packets are simply discarded.
+.sp
+.LP
+Users of higher-level protocols such as \fBTCP\fR and \fBUDP\fR should be able
+to see received IP options.
diff --git a/usr/src/man/man4p/ip6.4p b/usr/src/man/man4p/ip6.4p
new file mode 100644
index 0000000000..7e3899f529
--- /dev/null
+++ b/usr/src/man/man4p/ip6.4p
@@ -0,0 +1,795 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH IP6 4P "December 28, 2020"
+.SH NAME
+ip6 \- Internet Protocol Version 6
+.SH SYNOPSIS
+.nf
+#include <sys/socket.h>
+#include <netinet/in.h>
+#include <netinet/ip6.h>
+.fi
+
+.LP
+.nf
+s = socket(AF_INET6, SOCK_RAW, proto);
+.fi
+
+.LP
+.nf
+t = t_open ("/dev/rawip6", O_RDWR);
+.fi
+
+.SH DESCRIPTION
+The \fBIPv6\fR protocol is the next generation of the internetwork datagram
+delivery protocol of the Internet protocol family. Programs may use \fBIPv6\fR
+through higher-level protocols such as the Transmission Control Protocol
+(\fBTCP\fR) or the User Datagram Protocol (\fBUDP\fR), or may interface
+directly to \fBIPv6\fR. See \fBtcp\fR(4P) and \fBudp\fR(4P). Direct access may
+be by means of the socket interface, using a "raw socket," or by means of the
+Transport Level Interface (\fBTLI\fR). The protocol options and \fBIPv6\fR
+extension headers defined in the \fBIPv6\fR specification may be set in
+outgoing datagrams.
+.SH APPLICATION PROGRAMMING INTERFACE
+The \fBSTREAMS\fR driver \fB/dev/rawip6\fR is the \fBTLI\fR transport provider
+that provides raw access to \fBIPv6\fR.
+.sp
+.LP
+Raw \fBIPv6\fR sockets are connectionless and are normally used with the
+\fBsendto()\fR and \fBrecvfrom()\fR calls (see \fBsend\fR(3SOCKET) and
+\fBrecv\fR(3SOCKET)), although the \fBconnect\fR(3SOCKET) call may also be used
+to fix the destination for future datagrams. In this case, the \fBread\fR(2) or
+\fBrecv\fR(3SOCKET) and \fBwrite\fR(2) or \fBsend\fR(3SOCKET) calls may be
+used. Ancillary data may also be sent or received over raw \fBIPv6\fR sockets
+using the \fBsendmsg\fR(3SOCKET) and \fBrecvmsg\fR(3SOCKET) system calls.
+.sp
+.LP
+Unlike raw \fBIP\fR, \fBIPv6\fR applications do not include a complete
+\fBIPv6\fR header when sending; there is no \fBIPv6\fR analog to the \fBIP\fR
+\fBIP_HDRINCL\fR socket option. \fBIPv6\fR header values may be specified or
+received as ancillary data to a \fBsendmsg\fR(3SOCKET) or
+\fBrecvmsg\fR(3SOCKET) system call, or may be specified as "sticky" options on
+a per-socket basis by using the \fBsetsockopt\fR(3SOCKET) system call. Such
+sticky options are applied to all outbound packets unless overridden by
+ancillary data. If any ancillary data is specified in a \fBsendmsg\fR(3SOCKET)
+call, all sticky options not explicitly overridden revert to default values for
+that datagram only; the sticky options persist as set for subsequent datagrams.
+.sp
+.LP
+Since \fBsendmsg\fR(3SOCKET) is not supported for \fBSOCK_STREAM\fR upper level
+protocols such as \fBTCP\fR, ancillary data is unsupported for \fBTCP\fR.
+Sticky options, however, are supported.
+.sp
+.LP
+Since \fBsendmsg\fR(3SOCKET) is supported for \fBSOCK_DGRAM\fR upper level
+protocols, both ancillary data and sticky options are supported for \fBUDP\fR,
+\fBICMP6\fR, and raw \fBIPv6\fR sockets.
+.sp
+.LP
+The socket options supported at the \fBIPv6\fR level are:
+.sp
+.ne 2
+.na
+\fB\fBIPV6_BOUND_IF\fR\fR
+.ad
+.RS 24n
+Limit reception and transmission of packets to this interface. Takes an integer
+as an argument; the integer is the selected interface index.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBIPV6_UNSPEC_SRC\fR\fR
+.ad
+.RS 24n
+Boolean. Allow/disallow sending with a zero source address.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBIPV6_UNICAST_HOPS\fR\fR
+.ad
+.RS 24n
+Default hop limit for unicast datagrams. This option takes an integer as an
+argument. Its value becomes the new default value for \fBip6_hops\fR that
+\fBIPv6\fR will use on outgoing unicast datagrams sent from that socket. The
+initial default is \fB60\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBIPV6_CHECKSUM\fR\fR
+.ad
+.RS 24n
+Specify the integer offset in bytes into the user data of the checksum
+location. Does not apply to the \fBICMP6\fR protocol. Note: checksums are
+required for all \fBIPv6\fR datagrams; this is different from \fBIP\fR, in
+which datagram checksums were optional. \fBIPv6\fR will compute the \fBULP\fR
+checksum if the value in the checksum field is zero.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBIPV6_SEC_OPT\fR\fR
+.ad
+.RS 24n
+Enable or obtain IPsec security settings for this socket. For more details on
+the protection services of IPsec, see \fBipsec\fR(4P).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBIPV6_DONTFRAG\fR\fR
+.ad
+.RS 24n
+Boolean. Control fragmentation.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBIPV6_USE_MIN_MTU\fR\fR
+.ad
+.RS 24n
+Controls whether path MTU discovery is used. If set to 1, path MTU discovery is
+never used and IPv6 packets are sent with the IPv6 minimum MTU. If set to -1,
+path MTU discovery is not used for multicast and multicast packets are sent
+with the IPv6 minimum MTU. If set to 0, path MTU is always performed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBIPV6_V6ONLY\fR\fR
+.ad
+.RS 24n
+Boolean. If set, only V6 packets can be sent or received
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBIPV6_SRC_PREFERENCES\fR\fR
+.ad
+.RS 24n
+Enable or obtain Source Address Selection rule settings for this socket. For
+more details on the Source Address Selection rules, see \fBinet6\fR(4P).
+.RE
+
+.sp
+.LP
+The following options are boolean switches controlling the reception of
+ancillary data:
+.sp
+.ne 2
+.na
+\fB\fBIPV6_RECVPKTINFO\fR\fR
+.ad
+.RS 25n
+Enable/disable receipt of the index of the interface the packet arrived on, and
+of the inbound packet's destination address.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBIPV6_RECVHOPLIMIT\fR\fR
+.ad
+.RS 25n
+Enable/disable receipt of the inbound packet's current hoplimit.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBIPV6_RECVHOPOPTS\fR\fR
+.ad
+.RS 25n
+Enable/disable receipt of the inbound packet's \fBIPv6\fR hop-by-hop extension
+header.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBIPV6_RECVDSTOPTS\fR\fR
+.ad
+.RS 25n
+Enable/disable receipt of the inbound packet's \fBIPv6\fR destination options
+extension header.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBIPV6_RECVRTHDR\fR\fR
+.ad
+.RS 25n
+Enable/disable receipt of the inbound packet's \fBIPv6\fR routing header.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBIPV6_RECVRTHDRDSTOPTS\fR\fR
+.ad
+.RS 25n
+Enable/disable receipt of the inbound packet's intermediate-hops options
+extension header. This option is obsolete. IPV6_RECVDSTOPTS turns on receipt of
+both destination option headers.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBIPV6_RECVTCLASS\fR\fR
+.ad
+.RS 25n
+Enable/disable receipt of the traffic class of the inbound packet.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBIPV6_RECVPATHMTU\fR\fR
+.ad
+.RS 25n
+Enable/disable receipt of the path mtu of the inbound packet.
+.RE
+
+.sp
+.LP
+The following options may be set as sticky options with
+\fBsetsockopt\fR(3SOCKET) or as ancillary data to a \fBsendmsg\fR(3SOCKET)
+system call:
+.sp
+.ne 2
+.na
+\fB\fBIPV6_PKTINFO\fR\fR
+.ad
+.RS 21n
+Set the source address and/or interface out which the packet(s) will be sent.
+Takes a \fBstruct\fR \fBin6_pktinfo\fR as the parameter.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBIPV6_HOPLIMIT\fR\fR
+.ad
+.RS 21n
+Set the initial hoplimit for outbound datagrams. Takes an integer as the
+parameter. Note: This option sets the hoplimit only for ancillary data or
+sticky options and does not change the default hoplimit for the socket; see
+\fBIPV6_UNICAST_HOPS\fR and \fBIPV6_MULTICAST_HOPS\fR to change the socket's
+default hoplimit.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBIPV6_NEXTHOP\fR\fR
+.ad
+.RS 21n
+Specify the \fBIPv6\fR address of the first hop, which must be a neighbor of
+the sending host. Takes a \fBstruct\fR \fBsockaddr_in6\fR as the parameter.
+When this option specifies the same address as the destination \fBIPv6\fR
+address of the datagram, this is equivalent to the existing \fBSO_DONTROUTE\fR
+option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBIPV6_HOPOPTS\fR\fR
+.ad
+.RS 21n
+Specify one or more hop-by-hop options. Variable length. Takes a complete
+\fBIPv6\fR hop-by-hop options extension header as the parameter.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBIPV6_DSTOPTS\fR\fR
+.ad
+.RS 21n
+Specify one or more destination options. Variable length. Takes a complete
+\fBIPv6\fR destination options extension header as the parameter.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBIPV6_RTHDR\fR\fR
+.ad
+.RS 21n
+Specify the \fBIPv6\fR routing header. Variable length. Takes a complete
+\fBIPv6\fR routing header as the parameter. Currently, only type 0 routing
+headers are supported.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBIPV6_RTHDRDSTOPTS\fR\fR
+.ad
+.RS 21n
+Specify one or more destination options for all intermediate hops. May be
+configured, but will not be applied unless an \fBIPv6\fR routing header is also
+configured. Variable length. Takes a complete \fBIPv6\fR destination options
+extension header as the parameter.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBIPV6_PATHMTU\fR\fR
+.ad
+.RS 21n
+Get the path MTU associated with a connected socket. Takes a ip6_mtuinfo as the
+parameter.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBIPV6_TCLASS\fR\fR
+.ad
+.RS 21n
+Set the traffic class associated with outgoing packets. The parameter is an
+integer. If the parameter is less then -1 or greater then 256, EINVAL is
+returned. If the parameter is equal to -1, use the default. If the parameter is
+between 0 and 255 inclusive, use that value.
+.RE
+
+.sp
+.LP
+The following options affect the socket's multicast behavior:
+.sp
+.ne 2
+.na
+\fB\fBIPV6_JOIN_GROUP\fR\fR
+.ad
+.RS 28n
+Join a multicast group. Takes a \fBstruct\fR \fBipv6_mreq\fR as the parameter;
+the structure contains a multicast address and an interface index.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBIPV6_LEAVE_GROUP\fR\fR
+.ad
+.RS 28n
+Leave a multicast group. Takes a \fBstruct\fR \fBipv6_mreq\fR as the parameter;
+the structure contains a multicast address and an interface index.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBMCAST_JOIN_GROUP\fR\fR
+.ad
+.RS 28n
+Functionally equivalent to IPV6_JOIN_GROUP. Takes a \fBstruct\fR
+\fBgroup_req\fR as the parameter. The structure contains a multicast address
+and an interface index.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBMCAST_BLOCK_SOURCE\fR\fR
+.ad
+.RS 28n
+Block multicast packets on a particular multicast group whose source address
+matches the given source address. The specified group must be joined previously
+using IPV6_JOIN_GROUP or MCAST_JOIN_GROUP. Takes a \fBstruct\fR
+\fBgroup_source_req\fR as the parameter. The structure contains an interface
+index, a multicast address, and a source address.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBMCAST_UNBLOCK_SOURCE\fR\fR
+.ad
+.RS 28n
+Unblock multicast packets which were previously blocked using
+MCAST_BLOCK_SOURCE. Takes a \fBstruct\fR \fBgroup_source_req\fR as the
+parameter. The structure contains an interface index, a multicast address, and
+a source address.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBMCAST_LEAVE_GROUP\fR\fR
+.ad
+.RS 28n
+Functionally equivalent to IPV6_LEAVE_GROUP. Takes a \fBstruct\fR
+\fBgroup_req\fR as the parameter. The structure contains a multicast address
+and an interface index.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBMCAST_JOIN_SOURCE_GROUP\fR\fR
+.ad
+.RS 28n
+Begin receiving packets for the given multicast group whose source address
+matches the specified address. Takes a \fBstruct\fR \fBgroup_source_req\fR as
+the parameter. The structure contains an interface index, a multicast address,
+and a source address.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBMCAST_LEAVE_SOURCE_GROUP\fR\fR
+.ad
+.RS 28n
+Stop receiving packets for the given multicast group whose source address
+matches the specified address. Takes a \fBstruct\fR \fBgroup_source_req\fR as
+the parameter. The structure contains an interface index, a multicast address,
+and a source address.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBIPV6_MULTICAST_IF\fR\fR
+.ad
+.RS 28n
+The outgoing interface for multicast packets. This option takes an integer as
+an argument; the integer is the interface index of the selected interface.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBIPV6_MULTICAST_HOPS\fR\fR
+.ad
+.RS 28n
+Default hop limit for multicast datagrams. This option takes an integer as an
+argument. Its value becomes the new default value for \fBip6_hops\fR that
+\fBIPv6\fR will use on outgoing multicast datagrams sent from that socket. The
+initial default is \fB1\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBIPV6_MULTICAST_LOOP\fR\fR
+.ad
+.RS 28n
+Loopback for multicast datagrams. Normally multicast datagrams are delivered to
+members on the sending host. Setting the unsigned character argument to 0 will
+cause the opposite behavior.
+.RE
+
+.sp
+.LP
+The multicast socket options can be used with any datagram socket type in the
+\fBIPv6\fR family.
+.sp
+.LP
+At the socket level, the socket option \fBSO_DONTROUTE\fR may be applied. This
+option forces datagrams being sent to bypass routing and forwarding by forcing
+the \fBIPv6\fR hoplimit field to \fB1\fR, meaning that the packet will not be
+forwarded by routers.
+.sp
+.LP
+Raw \fBIPv6\fR datagrams can also be sent and received using the \fBTLI\fR
+connectionless primitives.
+.sp
+.LP
+Datagrams flow through the \fBIPv6\fR layer in two directions: from the network
+\fIup\fR to user processes and from user processes \fIdown\fR to the network.
+Using this orientation, \fBIPv6\fR is layered \fIabove\fR the network interface
+drivers and \fIbelow\fR the transport protocols such as \fBUDP\fR and
+\fBTCP\fR. The Internet Control Message Protocol (\fBICMPv6\fR) for the
+Internet Protocol Version 6 (\fBIPv6\fR) is logically a part of \fBIPv6\fR. See
+\fBicmp6\fR(4P).
+.sp
+.LP
+Unlike \fBIP\fR, \fBIPv6\fR provides no checksum of the \fBIPv6\fR header. Also
+unlike \fBIP\fR, upper level protocol checksums are required. \fBIPv6\fR will
+compute the \fBULP\fR/data portion checksum if the checksum field contains a
+zero (see \fBIPV6_CHECKSUM\fR option above).
+.sp
+.LP
+\fBIPv6\fR extension headers in received datagrams are processed in the
+\fBIPv6\fR layer according to the protocol specification. Currently recognized
+\fBIPv6\fR extension headers include hop-by-hop options header, destination
+options header, routing header (currently, only type 0 routing headers are
+supported), and fragment header.
+.sp
+.LP
+By default, the IPv6 layer will not forward IPv6 packets that are not addressed
+to it. This behavior can be overridden by using \fBrouteadm\fR(8) to enable
+the ipv6-forwarding option. IPv6 forwarding is configured at boot time based on
+the setting of \fBrouteadm\fR(8)'s ipv6-forwarding option.
+.sp
+.LP
+For backwards compatibility, IPv6 forwarding can be enabled or disabled using
+\fBndd\fR(8)'s ip_forwarding variable. It is set to 1 if IPv6 forwarding is
+enabled, or 0 if it is disabled.
+.sp
+.LP
+Additionally, finer-grained forwarding can be configured in IPv6. Each
+interface can be configured to forward IPv6 packets by setting the IFF_ROUTER
+interface flag. This flag can be set and cleared using \fBifconfig\fR(8)'s
+router and -router options. If an interface's IFF_ROUTER flag is set, packets
+can be forwarded to or from the interface. If it is clear, packets will neither
+be forwarded from this interface to others, nor forwarded to this interface.
+Setting the ip6_forwarding variable sets all of the IPv6 interfaces' IFF_ROUTER
+flags.
+.sp
+.LP
+For backwards compatibility, each interface creates an
+\fB<ifname>ip6_forwarding /dev/ip6\fR variable that can be modified using
+\fBndd\fR(8). An interface's \fB:ip6_forwarding ndd\fR variable is a boolean
+variable that mirrors the status of its IFF_ROUTER interface flag. It is set to
+1 if the flag is set, or 0 if it is clear. This interface specific
+\fB<ifname>:ip6_forwarding ndd\fR variable is obsolete and may be removed in a
+future release of Solaris. The \fBifconfig\fR(8) router and -router interfaces
+are preferred.
+.sp
+.LP
+The \fBIPv6\fR layer will send an \fBICMP6\fR message back to the source host
+in many cases when it receives a datagram that can not be handled. A
+"\fBtime\fR \fBexceeded\fR" \fBICMP6\fR message will be sent if the
+\fBip6_hops\fR field in the \fBIPv6\fR header drops to zero in the process of
+forwarding a datagram. A "\fBdestination\fR \fBunreachable\fR" message will be
+sent by a router or by the originating host if a datagram can not be sent on
+because there is no route to the final destination; it will be sent by a router
+when it encounters a firewall prohibition; it will be sent by a destination
+node when the transport protocol (that is, \fBTCP\fR) has no listener. A
+"\fBpacket\fR \fBtoo\fR \fBbig\fR" message will be sent by a router if the
+packet is larger than the \fBMTU\fR of the outgoing link (this is used for Path
+\fBMTU\fR Discovery). A "\fBparameter\fR \fBproblem\fR" message will be sent if
+there is a problem with a field in the \fBIPv6\fR header or any of the
+\fBIPv6\fR extension headers such that the packet cannot be fully processed.
+.sp
+.LP
+The \fBIPv6\fR layer supports fragmentation and reassembly. Datagrams are
+fragmented on output if the datagram is larger than the maximum transmission
+unit (\fBMTU\fR) of the network interface. Fragments of received datagrams are
+dropped from the reassembly queues if the complete datagram is not
+reconstructed within a short time period.
+.sp
+.LP
+Errors in sending discovered at the network interface driver layer are passed
+by IPv6 back up to the user process.
+.SH SEE ALSO
+.BR svcs (1),
+.BR read (2),
+.BR write (2),
+.BR bind (3SOCKET),
+.BR connect (3SOCKET),
+.BR getsockopt (3SOCKET),
+.BR recv (3SOCKET),
+.BR recvmsg (3SOCKET),
+.BR send (3SOCKET),
+.BR sendmsg (3SOCKET),
+.BR setsockopt (3SOCKET),
+.BR icmp6 (4P),
+.BR if_tcp (4P),
+.BR inet6 (4P),
+.BR ipsec (4P),
+.BR routing (4P),
+.BR tcp (4P),
+.BR udp (4P),
+.BR defaultrouter (5),
+.BR smf (7),
+.BR ndd (8),
+.BR routeadm (8),
+.BR svcadm (8)
+.sp
+.LP
+Deering, S. and Hinden, B. \fI RFC 2460, Internet Protocol, Version 6 (IPv6)
+Specification\fR. The Internet Society. December, 1998.
+.sp
+.LP
+Stevens, W., and Thomas, M. \fIRFC 2292, Advanced Sockets API for IPv6\fR.
+Network Working Group. February 1998.
+.SH DIAGNOSTICS
+A socket operation may fail with one of the following errors returned:
+.sp
+.ne 2
+.na
+\fB\fBEPROTONOSUPPORT\fR\fR
+.ad
+.RS 19n
+Unsupported protocol (for example, IPPROTO_RAW.)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEACCES\fR\fR
+.ad
+.RS 19n
+A \fBbind()\fR operation was attempted with a "reserved" port number and the
+effective user ID of the process was not the privileged user.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEADDRINUSE\fR\fR
+.ad
+.RS 19n
+A \fBbind()\fR operation was attempted on a socket with a network address/port
+pair that has already been bound to another socket.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEADDRNOTAVAIL\fR\fR
+.ad
+.RS 19n
+A \fBbind()\fR operation was attempted for an address that is not configured on
+this machine.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEINVAL\fR\fR
+.ad
+.RS 19n
+A \fBsendmsg()\fR operation with a non-NULL \fBmsg_accrights\fR was attempted.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEINVAL\fR\fR
+.ad
+.RS 19n
+A \fBgetsockopt()\fR or \fBsetsockopt()\fR operation with an unknown socket
+option name was given.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEINVAL\fR\fR
+.ad
+.RS 19n
+A \fBgetsockopt()\fR or \fBsetsockopt()\fR operation was attempted with the
+\fBIPv6\fR option field improperly formed; an option field was shorter than the
+minimum value or longer than the option buffer provided; the value in the
+option field was invalid.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEISCONN\fR\fR
+.ad
+.RS 19n
+A \fBconnect()\fR operation was attempted on a socket on which a
+\fBconnect()\fR operation had already been performed, and the socket could not
+be successfully disconnected before making the new connection.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEISCONN\fR\fR
+.ad
+.RS 19n
+A \fBsendto()\fR or \fBsendmsg()\fR operation specifying an address to which
+the message should be sent was attempted on a socket on which a \fBconnect()\fR
+operation had already been performed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEMSGSIZE\fR\fR
+.ad
+.RS 19n
+A \fBsend()\fR, \fBsendto()\fR, or \fBsendmsg()\fR operation was attempted to
+send a datagram that was too large for an interface, but was not allowed to be
+fragmented (such as broadcasts).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBENETUNREACH\fR\fR
+.ad
+.RS 19n
+An attempt was made to establish a connection via \fBconnect()\fR, or to send a
+datagram by means of \fBsendto()\fR or \fBsendmsg()\fR, where there was no
+matching entry in the routing table; or if an \fBICMP\fR "\fBdestination
+unreachable\fR" message was received.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBENOTCONN\fR\fR
+.ad
+.RS 19n
+A \fBsend()\fR or \fBwrite()\fR operation, or a \fBsendto()\fR or
+\fBsendmsg()\fR operation not specifying an address to which the message should
+be sent, was attempted on a socket on which a \fBconnect()\fR operation had not
+already been performed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBENOBUFS\fR\fR
+.ad
+.RS 19n
+The system ran out of memory for fragmentation buffers or other internal data
+structures.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBENOMEM\fR\fR
+.ad
+.RS 19n
+The system was unable to allocate memory for an \fBIPv6\fR socket option or
+other internal data structures.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBENOPROTOOPT\fR\fR
+.ad
+.RS 19n
+An \fBIP\fR socket option was attempted on an \fBIPv6\fR socket, or an
+\fBIPv6\fR socket option was attempted on an \fBIP\fR socket.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBENOPROTOOPT\fR\fR
+.ad
+.RS 19n
+Invalid socket type for the option.
+.RE
+
+.SH NOTES
+Applications using the sockets \fBAPI\fR must use the Advanced Sockets
+\fBAPI\fR for \fBIPv6\fR (\fIRFC 2292\fR) to see elements of the inbound
+packet's \fBIPv6\fR header or extension headers.
+.sp
+.LP
+The \fBip6\fR service is managed by the service management facility,
+\fBsmf\fR(7), under the service identifier:
+.sp
+.in +2
+.nf
+svc:/network/initial:default
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Administrative actions on this service, such as enabling, disabling, or
+requesting restart, can be performed using \fBsvcadm\fR(8). The service's
+status can be queried using the \fBsvcs\fR(1) command.
diff --git a/usr/src/man/man4p/ipsec.4p b/usr/src/man/man4p/ipsec.4p
new file mode 100644
index 0000000000..9b0cb83681
--- /dev/null
+++ b/usr/src/man/man4p/ipsec.4p
@@ -0,0 +1,371 @@
+'\" te
+.\" Copyright (C) 2009, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
+.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH IPSEC 4P "Sep 25, 2009"
+.SH NAME
+ipsec \- Internet Protocol Security Architecture
+.SH DESCRIPTION
+.sp
+.LP
+The \fBIP\fR Security Architecture (IPsec) provides protection for \fBIP\fR
+datagrams. The protection can include confidentiality, strong integrity of the
+data, partial sequence integrity (replay protection), and data authentication.
+\fBIPsec\fR is performed inside the \fBIP\fR processing, and it can be applied
+with or without the knowledge of an Internet application.
+.sp
+.LP
+IPsec applies to both IPv4 and IPv6. See \fBip\fR(4P) and \fBip6\fR(4P).
+.SS "Protection Mechanisms"
+.sp
+.LP
+IPsec provides two mechanisms for protecting data. The Authentication Header
+(\fBAH\fR) provides strong integrity, replay protection, and data
+authentication. \fBAH\fR protects as much of the \fBIP\fR datagram as it can.
+\fBAH\fR cannot protect fields that change nondeterministically between sender
+and receiver.
+.sp
+.LP
+The Encapsulating Security Payload (\fBESP\fR) provides confidentiality over
+what it encapsulates, as well as the services that \fBAH\fR provides, but only
+over that which it encapsulates. \fBESP\fR's authentication services are
+optional, which allow \fBESP\fR and \fBAH\fR to be used together on the same
+datagram without redundancy.
+.sp
+.LP
+Authentication and encryption algorithms are used for IPsec. Authentication
+algorithms produce an integrity checksum value or "digest"based on the data and
+a key. Encryption algorithms operate on data in units of a "block size".
+.SS "NAT Traversal"
+.sp
+.LP
+IPsec's ESP can also encapsulate itself in UDP if IKE (see \fBin.iked\fR(8))
+discovers a Network Address Translator (NAT) between two communicating
+endpoints.
+.sp
+.LP
+A UDP socket can be specified as a NAT-Traversal endpoint. See \fBudp\fR(4P)
+for details.
+.SS "Security Associations"
+.sp
+.LP
+\fBAH\fR and \fBESP\fR use Security Associations (\fBSA\fR). SA's are entities
+that specify security properties from one host to another. Two communicating
+machines require two \fBSA\fRs (at a minimum) to communicate securely. However,
+communicating machines that use multicast can share the same multicast
+\fBSA\fR. \fBSA\fRs are managed through the \fBpf_key\fR(4P) interface. For
+IPv4, automatic \fBSA\fR management is available through the Internet Key
+Exchange (IKE), as implemented by \fBin.iked\fR(8). A command-line front-end
+is available by means of \fBipseckey\fR(8). An IPsec \fBSA\fR is identified by
+a tuple of <\fBAH\fR or \fBESP\fR, destination \fBIP\fR address, and
+\fBSPI\fR>. The Security Parameters Index (\fBSPI\fR) is an arbitrary 32-bit
+value that is transmitted on the wire with an \fBAH\fR or \fBESP\fR packet. See
+\fBipsecah\fR(4P) or \fBipsecesp\fR(4P) for an explanation about where the
+\fBSPI\fR falls in a protected packet.
+.SS "Protection Policy and Enforcement Mechanisms"
+.sp
+.LP
+Mechanism and policy are separate. The policy for applying IPsec is enforced on
+a system-wide or per-socket level. Configuring system-wide policy and
+per-tunnel policy (see Transport Mode and Tunnel Mode sections) is done via the
+\fBipsecconf\fR(8) command. Configuring per-socket policy is discussed later
+in this section.
+.sp
+.LP
+System-wide IPsec policy is applied to incoming and outgoing datagrams. Some
+additional rules can be applied to outgoing datagrams because of the additional
+data known by the system. Inbound datagrams can be accepted or dropped. The
+decision to drop or accept an inbound datagram is based on several criteria
+which sometimes overlap or conflict. Conflict resolution is resolved by which
+rule is parsed first, with one exception: if a policy entry states that traffic
+should bypass all other policy, it is automatically be accepted. Outbound
+datagrams are sent with or without protection. Protection may (or may not)
+indicate specific algorithms. If policy normally would protect a datagram, it
+can be bypassed either by an exception in system-wide policy or by requesting a
+bypass in per-socket policy.
+.sp
+.LP
+Intra-machine traffic policies are enforced, but actual security mechanisms are
+not applied. Instead, the outbound policy on an intra-machine packet translates
+into an inbound packet with those mechanisms applied.
+.sp
+.LP
+IPsec policy is enforced in the \fBip\fR(4P) driver. Several \fBndd\fR tunables
+for \fB/dev/ip\fR affect policy enforcement, including:
+.sp
+.ne 2
+.na
+\fBicmp_accept_clear_messages\fR
+.ad
+.RS 30n
+If equal to 1 (the default), allow certain cleartext icmp messages to bypass
+policy. For ICMP echo requests ("ping"messages), protect the response like the
+request. If zero, treat icmp messages like other IP traffic.
+.RE
+
+.sp
+.ne 2
+.na
+\fBigmp_accept_clear_messages\fR
+.ad
+.RS 30n
+If 1, allow inbound cleartext IGMP messages to bypass IPsec policy.
+.RE
+
+.sp
+.ne 2
+.na
+\fBpim_accept_clear_messages\fR
+.ad
+.RS 30n
+If 1, allow inbound cleartext PIM messages to bypass IPsec policy.
+.RE
+
+.sp
+.ne 2
+.na
+\fBipsec_policy_log_interval\fR
+.ad
+.RS 30n
+IPsec logs policy failures and errors to \fB/var/adm/messages\fR. To prevent
+syslog from being overloaded, the IPsec kernel modules limit the rate at which
+errors can be logged. You can query/set ipsec_policy_log_interval using
+\fBndd\fR(8). The value is in milliseconds. Only one message can be logged per
+interval.
+.RE
+
+.SS "Transport Mode and Tunnel Mode"
+.sp
+.LP
+If IPsec is used on a tunnel, Tunnel Mode IPsec can be used to protect distinct
+flows within a tunnel or to cause packets that do not match per-tunnel policy
+to drop. System-wide policy is always Transport Mode. A tunnel can use
+Transport Mode IPsec or Tunnel Mode IPsec.
+.SS "Per-Socket Policy"
+.sp
+.LP
+The \fBIP_SEC_OPT\fR or \fBIPV6_SEC_OPT\fR socket option is used to set
+per-socket IPsec policy. The structure used for an \fBIP_SEC_OPT\fR request
+is:
+.sp
+.in +2
+.nf
+typedef struct ipsec_req {
+ uint_t ipsr_ah_req; /* AH request */
+ uint_t ipsr_esp_req; /* ESP request */
+ uint_t ipsr_self_encap_req; /* Self-Encap request */
+ uint8_t ipsr_auth_alg; /* Auth algs for AH */
+ uint8_t ipsr_esp_alg; /* Encr algs for ESP */
+ uint8_t ipsr_esp_auth_alg; /* Auth algs for ESP */
+} ipsec_req_t;
+.fi
+.in -2
+
+.sp
+.LP
+The IPsec request has fields for both \fBAH\fR and \fBESP\fR. Algorithms may or
+may not be specified. The actual request for \fBAH\fR or \fBESP\fR services can
+take one of the following values:
+.sp
+.ne 2
+.na
+\fB\fBIPSEC_PREF_NEVER\fR\fR
+.ad
+.RS 23n
+Bypass all policy. Only the superuser may request this service.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBIPSEC_PREF_REQUIRED\fR\fR
+.ad
+.RS 23n
+Regardless of other policy, require the use of the IPsec service.
+.RE
+
+.sp
+.LP
+The following value can be logically ORed to an \fBIPSEC_PREF_REQUIRED\fR
+value:
+.sp
+.ne 2
+.na
+\fB\fBIPSEC_PREF_UNIQUE\fR\fR
+.ad
+.RS 21n
+Regardless of other policy, enforce a unique \fBSA\fR for traffic originating
+from this socket.
+.RE
+
+.sp
+.LP
+In the event \fBIP\fR options not normally encapsulated by \fBESP\fR need to
+be, the \fBipsec_self_encap_req\fR is used to add an additional \fBIP\fR header
+outside the original one. Algorithm values from <\fBnet/pfkeyv2.h\fR> are as
+follows:
+.sp
+.ne 2
+.na
+\fB\fBSADB_AALG_MD5HMAC\fR\fR
+.ad
+.RS 24n
+Uses the MD5-HMAC (\fIRFC 2403\fR) algorithm for authentication.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSADB_AALG_SHA1HMAC\fR\fR
+.ad
+.RS 24n
+Uses the SHA1-HMAC (\fIRFC 2404)\fR algorithm for authentication.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSADB_EALG_DESCBC\fR\fR
+.ad
+.RS 24n
+Uses the \fBDES\fR (\fIRFC 2405\fR) algorithm for encryption.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSADB_EALG_3DESCBC\fR\fR
+.ad
+.RS 24n
+Uses the Triple \fBDES \fR (\fIRFC 2451\fR) algorithm for encryption.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSADB_EALG_BLOWFISH\fR\fR
+.ad
+.RS 24n
+Uses the Blowfish (\fIRFC 2451\fR) algorithm for encryption.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSADB_EALG_AES\fR\fR
+.ad
+.RS 24n
+Uses the Advanced Encryption Standard algorithm for encryption.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSADB_AALG_SHA256HMAC\fR\fR
+.ad
+.br
+.na
+\fB\fBSADB_AALG_SHA384HMAC\fR\fR
+.ad
+.br
+.na
+\fB\fBSADB_AALG_SHA512HMAC\fR\fR
+.ad
+.RS 24n
+Uses the SHA2 hash algorithms with HMAC (\fIRFC 4868\fR)for authentication.
+.RE
+
+.sp
+.LP
+An application should use either the \fBgetsockopt\fR(3SOCKET) or the
+\fBsetsockopt\fR(3SOCKET) call to manipulate IPsec requests. For example:
+.sp
+.in +2
+.nf
+#include <sys/socket.h>
+#include <netinet/in.h>
+#include <net/pfkeyv2.h> /* For SADB_*ALG_* */
+/* .... socket setup skipped */
+rc = setsockopt(s, IPPROTO_IP, IP_SEC_OPT,
+ (const char *)&ipsec_req, sizeof (ipsec_req_t));
+.fi
+.in -2
+
+.SH SECURITY
+.sp
+.LP
+While IPsec is an effective tool in securing network traffic, it will not make
+security problems disappear. Security issues beyond the mechanisms that IPsec
+offers may be discussed in similar "Security" or "Security Consideration"
+sections within individual reference manual pages.
+.sp
+.LP
+While a non-root user cannot bypass IPsec, a non-root user can set policy to be
+different from the system-wide policy. For ways to prevent this, consult the
+\fBndd\fR(8) variables in \fB/dev/ip\fR.
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Committed
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR getsockopt (3SOCKET),
+.BR setsockopt (3SOCKET),
+.BR inet (4P),
+.BR ip (4P),
+.BR ip6 (4P),
+.BR ipsecah (4P),
+.BR ipsecesp (4P),
+.BR pf_key (4P),
+.BR udp (4P),
+.BR attributes (7),
+.BR in.iked (8),
+.BR ipsecconf (8),
+.BR ipseckey (8),
+.BR ndd (8)
+.sp
+.LP
+Kent, S., and Atkinson, R., \fIRFC 2401, Security Architecture for the Internet
+Protocol\fR, The Internet Society, 1998.
+.sp
+.LP
+Kent, S. and Atkinson, R., \fIRFC 2406, IP Encapsulating Security Payload
+(ESP)\fR, The Internet Society, 1998.
+.sp
+.LP
+Madson, C., and Doraswamy, N., \fIRFC 2405, The ESP DES-CBC Cipher Algorithm
+with Explicit IV\fR, The Internet Society, 1998.
+.sp
+.LP
+Madsen, C. and Glenn, R., \fIRFC 2403, The Use of HMAC-MD5-96 within ESP and
+AH\fR, The Internet Society, 1998.
+.sp
+.LP
+Madsen, C. and Glenn, R., \fIRFC 2404, The Use of HMAC-SHA-1-96 within ESP and
+AH\fR, The Internet Society, 1998.
+.sp
+.LP
+Pereira, R. and Adams, R., \fIRFC 2451, The ESP CBC-Mode Cipher Algorithms\fR,
+The Internet Society, 1998.
+.sp
+.LP
+Kelly, S. and Frankel, S., \fIRFC 4868, Using HMAC-SHA-256, HMAC-SHA-384, and
+HMAC-SHA-512 with IPsec\fR, 2007.
+.sp
+.LP
+Huttunen, A., Swander, B., Volpe, V., DiBurro, L., Stenberg, \fIM., RFC 3948,
+UDP Encapsulation of IPsec ESP Packets\fR, The Internet Society, 2005.
diff --git a/usr/src/man/man4p/ipsecah.4p b/usr/src/man/man4p/ipsecah.4p
new file mode 100644
index 0000000000..7cf498bb3f
--- /dev/null
+++ b/usr/src/man/man4p/ipsecah.4p
@@ -0,0 +1,77 @@
+'\" te
+.\" Copyright (C) 2009, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
+.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH IPSECAH 4P "Sep 25, 2009"
+.SH NAME
+ipsecah, AH \- IPsec Authentication Header
+.SH SYNOPSIS
+.LP
+.nf
+\fBdrv/ipsecah\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBipsecah\fR module (\fBAH\fR) provides strong integrity, authentication,
+and partial sequence integrity (replay protection) to \fBIP\fR datagrams.
+\fBAH\fR protects the parts of the \fBIP\fR datagram that can be predicted by
+the sender as it will be received by the receiver. For example, the \fBIP\fR
+\fBTTL\fR field is not a predictable field, and is not protected by \fBAH\fR.
+.sp
+.LP
+\fBAH\fR is inserted between the \fBIP\fR header and the transport header. The
+transport header can be \fBTCP\fR, \fBUDP\fR, \fBICMP\fR, or another \fBIP\fR
+header, if tunnels are being used.
+.SS "AH Device"
+.sp
+.LP
+AH is implemented as a module that is auto-pushed on top of IP. The entry
+\fB/dev/ipsecah\fR is used for tuning AH with \fBndd\fR(8).
+.SS "Authentication Algorithms"
+.sp
+.LP
+Current authentication algorithms supported include HMAC-MD5 and HMAC-SHA-1.
+Each authentication algorithm has its own key size and key format properties.
+You can obtain a list of authentication algorithms and their properties by
+using the \fBipsecalgs\fR(8) command. You can also use the functions described
+in the \fBgetipsecalgbyname\fR(3NSL) man page to retrieve the properties of
+algorithms.
+.SS "Security Considerations"
+.sp
+.LP
+Without replay protection enabled, \fBAH\fR is vulnerable to replay attacks.
+\fBAH\fR does not protect against eavesdropping. Data protected with \fBAH\fR
+can still be seen by an adversary.
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+Interface Stability Committed
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR getipsecalgbyname (3NSL),
+.BR ip (4P),
+.BR ipsec (4P),
+.BR ipsecesp (4P),
+.BR attributes (7),
+.BR ipsecalgs (8),
+.BR ipsecconf (8),
+.BR ndd (8)
+.sp
+.LP
+Kent, S. and Atkinson, R. \fIRFC 2402, IP Authentication Header\fR, The
+Internet Society, 1998.
diff --git a/usr/src/man/man4p/ipsecesp.4p b/usr/src/man/man4p/ipsecesp.4p
new file mode 100644
index 0000000000..69f23b56ad
--- /dev/null
+++ b/usr/src/man/man4p/ipsecesp.4p
@@ -0,0 +1,87 @@
+'\" te
+.\" Copyright (C) 2003, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH IPSECESP 4P "May 18, 2003"
+.SH NAME
+ipsecesp, ESP \- IPsec Encapsulating Security Payload
+.SH SYNOPSIS
+.LP
+.nf
+\fBdrv/ipsecesp\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBipsecesp\fR module provides confidentiality, integrity, authentication,
+and partial sequence integrity (replay protection) to \fBIP\fR datagrams. The
+encapsulating security payload (\fBESP\fR) encapsulates its data, enabling it
+to protect data that follows in the datagram. For \fBTCP\fR packets, \fBESP\fR
+encapsulates the \fBTCP\fR header and its data only. If the packet is an
+\fBIP\fR in \fBIP\fR datagram, \fBESP\fR protects the inner \fBIP\fR datagram.
+Per-socket policy allows "self-encapsulation" so \fBESP\fR can encapsulate
+\fBIP\fR options when necessary. See \fBipsec\fR(4P).
+.sp
+.LP
+Unlike the authentication header (\fBAH\fR), \fBESP\fR allows multiple
+varieties of datagram protection. (Using a single datagram protection form can
+expose vulnerabilities.) For example, only \fBESP\fR can be used to provide
+confidentiality. But protecting confidentiality alone exposes vulnerabilities
+in both replay attacks and cut-and-paste attacks. Similarly, if \fBESP\fR
+protects only integrity and does not fully protect against eavesdropping, it
+may provide weaker protection than \fBAH\fR. See \fBipsecah\fR(4P).
+.SS "ESP Device"
+.sp
+.LP
+\fBESP\fR is implemented as a module that is auto-pushed on top of \fBIP\fR.
+Use the \fB/dev/ipsecesp\fR entry to tune \fBESP\fR with \fBndd\fR(8).
+.SS "Algorithms"
+.sp
+.LP
+\fBESP\fRuses encryption and authentication algorithms. Authentication
+algorithms include HMAC-MD5 and HMAC-SHA-1. Encryption algorithms include DES,
+Triple-DES, Blowfish and AES. Each authentication and encryption algorithm
+contain key size and key format properties. You can obtain a list of
+authentication and encryption algorithms and their properties by using the
+\fBipsecalgs\fR(8) command. You can also use the functions described in the
+\fBgetipsecalgbyname\fR(3NSL) man page to retrieve the properties of
+algorithms. Because of export laws in the United States, not all encryption
+algorithms are available outside of the United States.
+.SS "Security Considerations"
+.sp
+.LP
+\fBESP\fR without authentication exposes vulnerabilities to cut-and-paste
+cryptographic attacks as well as eavesdropping attacks. Like AH, \fBESP\fR is
+vulnerable to eavesdropping when used without confidentiality.
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR getipsecalgbyname (3NSL),
+.BR ip (4P),
+.BR ipsec (4P),
+.BR ipsecah (4P),
+.BR attributes (7),
+.BR ipsecalgs (8),
+.BR ipsecconf (8),
+.BR ndd (8)
+.sp
+.LP
+Kent, S. and Atkinson, R. \fIRFC 2406, IP Encapsulating Security Payload
+(ESP)\fR, The Internet Society, 1998.
diff --git a/usr/src/man/man4p/ndp.4p b/usr/src/man/man4p/ndp.4p
new file mode 100644
index 0000000000..06e1444512
--- /dev/null
+++ b/usr/src/man/man4p/ndp.4p
@@ -0,0 +1,355 @@
+.\"
+.\" This file and its contents are supplied under the terms of the
+.\" Common Development and Distribution License ("CDDL"), version 1.0.
+.\" You may only use this file in accordance with the terms of version
+.\" 1.0 of the CDDL.
+.\"
+.\" A full copy of the text of the CDDL should have accompanied this
+.\" source. A copy of the CDDL is also available via the Internet at
+.\" http://www.illumos.org/license/CDDL.
+.\"
+.\"
+.\" Copyright (c) 2015, Joyent, Inc. All rights reserved.
+.\"
+.Dd Sep 02, 2015
+.Dt NDP 4P
+.Os
+.Sh NAME
+.Nm ndp ,
+.Nm NDP
+.Nd Neighbor Discovery Protocol
+.Sh SYNOPSIS
+.In sys/socket.h
+.In sys/sockio.h
+.In netinet/in.h
+.In net/if.h
+.Bd -literal
+s = socket(PF_INET6, SOCK_DGRAM, 0);
+
+struct lifreq lifr;
+ioctl(s, SIOCLIFGETND, &lifr);
+ioctl(s, SIOCLIFSETND, &lifr);
+ioctl(s, SIOCLIFDELND, &lifr);
+.Ed
+.Sh DESCRIPTION
+The Neighbor Discovery Protocol (NDP) is a protocol used to distribute and
+request information about neighboring IPv6 systems on the local network, much
+like
+.Xr ARP 4P
+for IPv4.
+NDP is also responsible for spreading information about the network gateway and
+how hosts should configure themselves
+.Pq see Xr in.ndpd 8 for more on how this happens .
+.Sh APPLICATION PROGRAMMING INTERFACE
+The operating system provides several ioctls to help manipulate the mappings
+obtained through NDP.
+They are
+.Sy SIOCLIFGETND ,
+.Sy SIOCLIFSETND ,
+and
+.Sy SIOCLIFDELND ,
+for getting, setting, and deleting respectively.
+Each of these ioctls takes a
+.Vt struct lifreq
+.Pq see Xr if 4P for details ,
+where the
+.Fa lifr_lifru
+field is of type
+.Vt struct lif_nd_req :
+.Bd -literal -offset 2m
+typedef struct lif_nd_req {
+ struct sockaddr_storage lnr_addr;
+ uint8_t lnr_state_create;
+ uint8_t lnr_state_same_lla;
+ uint8_t lnr_state_diff_lla;
+ int lnr_hdw_len;
+ int lnr_flags;
+ int lnr_pad0;
+ char lnr_hdw_addr[ND_MAX_HDW_LEN];
+} lif_nd_req_t;
+.Ed
+.Pp
+The
+.Fa lnr_addr
+field should be filled in with an IPv6 address
+.Pq see Xr sockaddr_in6 3SOCKET ,
+and the
+.Fa lnr_hdw_addr
+is the link-layer address of length
+.Fa lnr_hdw_len .
+.Pp
+State flags for
+.Fa lnr_state_create ,
+.Fa lnr_state_same_lla ,
+and
+.Fa lnr_state_diff_lla
+can be set to one of the following values:
+.Bl -tag -offset indent -width 16m
+.It Sy ND_UNCHANGED
+For ioctls that don't modify state
+.It Sy ND_INCOMPLETE
+Address resolution is currently in progress
+.It Sy ND_REACHABLE
+The link-layer address has recently been reachable
+.It Sy ND_STALE
+The link-layer address may be unreachable, and the system shouldn't do anything
+.It Sy ND_DELAY
+This entry hasn't yet started sending Neighbor Solicitations
+.It Sy ND_PROBE
+The operating system is currently sending out Neighbor Solicitations for the address
+.It Sy ND_UNREACHABLE
+The link-layer address is unreachable, and this entry is going to be deleted.
+.El
+.sp
+When creating a new entry, the only valid values for
+.Fa lnr_state_create
+are
+.Sy ND_REACHABLE
+and
+.Sy ND_STALE .
+Any other value will return
+.Sy EINVAL .
+The
+.Fa lnr_state_same_lla
+and
+.Fa lnr_state_diff_lla
+fields are reserved for future use and can be safely set to
+.Sy ND_UNCHANGED
+and
+.Sy ND_STALE
+respectively.
+.Pp
+Flags that can be placed in
+.Fa lnr_flags
+are:
+.Bl -tag -offset indent -width 16m
+.It Sy NDF_ISROUTER_ON
+Mark this entry as being a router.
+This will cause Neighbor Advertisements for this address to be sent with the
+R-bit (Router).
+.It Sy NDF_ISROUTER_OFF
+If this entry was flagged as being a router, remove the flag.
+.It Sy NDF_ANYCAST_ON
+Mark this entry as being for an anycast address.
+This prevents sending Neighbor Advertisements with the O-bit (Override).
+.It Sy NDF_ANYCAST_OFF
+If this entry was flagged as an anycast address, remove the flag.
+.It Sy NDF_STATIC
+Prevent this entry from being deleted by the system.
+.El
+.sp
+When using
+.Sy SIOCLIFGETND ,
+these flags represent the current state of the corresponding Neighbor Cache
+Entry.
+When using
+.Sy SIOCLIFSETND ,
+these flags represent what changes should be applied to the underlying entry.
+.Pp
+The only fields that need to be set for the
+.Sy SIOCLIFGETND
+or
+.Sy SIOCLIFDELND
+ioctls are
+.Fa lifr_name
+and
+.Fa lnr_addr .
+All other fields should be zeroed out.
+After successfully getting an entry, the other fields will be filled in.
+When using
+.Sy SIOCLIFSETND ,
+all fields should be set to an appropriate value, as described above, with the
+exception of
+.Fa lnr_pad0 ,
+which is unused and only exists for padding purposes.
+.Pp
+After performing the ioctl, the following errors may be returned through the
+global
+.Sy errno
+variable:
+.Bl -tag -offset indent -width 16m
+.It Sy EAFNOSUPPORT
+A non-IPv6 socket was used to perform the ioctl.
+.It Sy EINVAL
+The request contents were bad.
+This could be because conflicting flags were used, the specified interface
+wasn't logical unit zero, or another reason.
+.It Sy ENOMEM
+The system ran out of memory for internal data structures.
+.It Sy ENXIO
+The specified interface does not exist.
+.It Sy EPERM
+The caller does not have permission to modify the Neighbor Cache Entries
+associated with this interface.
+They may be lacking the
+.Sy PRIV_SYS_NET_CONFIG
+privilege
+.Po see Xr privileges 7 Pc ,
+or the interface is managed by IPMP (IP Network Multipathing).
+.It Sy ESRCH
+There is no entry matching the specified address.
+.El
+.Sh EXAMPLES
+The following examples demonstrate how to get and set NDP mappings using the
+provided ioctls.
+They can be compiled by using a C compiler and linking against the sockets
+library.
+.Ss Example 1: Getting a mapping
+.Bd -literal -offset indent
+$ gcc -Wall -lsocket -o get get.c
+$ cat get.c
+/*
+ * Example of getting a mapping for a node name.
+ */
+#include <strings.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <sys/socket.h>
+#include <sys/sockio.h>
+#include <unistd.h>
+#include <netdb.h>
+#include <net/if.h>
+
+int get(char *host) {
+ struct lifreq lifr;
+ struct addrinfo hints, *serverinfo, *p;
+ int err, s;
+
+ bzero(&hints, sizeof (struct addrinfo));
+ hints.ai_family = PF_INET6;
+ hints.ai_protocol = IPPROTO_IPV6;
+
+ if ((err = getaddrinfo(host, NULL, &hints, &serverinfo)) != 0) {
+ (void) fprintf(stderr, "Unable to lookup %s: %s\\n", host,
+ gai_strerror(err));
+ return (1);
+ }
+
+ s = socket(AF_INET6, SOCK_DGRAM, 0);
+ if (s < 0) {
+ perror("Failed to open IPv6 socket");
+ return (1);
+ }
+
+ for (p = serverinfo; p != NULL; p = p->ai_next) {
+ /* Zero out structure */
+ bzero(&lifr, sizeof (struct lifreq));
+ (void) strlcpy(lifr.lifr_name, "net0",
+ sizeof (lifr.lifr_name));
+ (void) memcpy(&lifr.lifr_nd.lnr_addr, p->ai_addr,
+ sizeof (struct sockaddr_storage));
+
+ /* Get mapping */
+ if (ioctl(s, SIOCLIFGETND, &lifr) < 0) {
+ perror("Unable to get NDP mapping");
+ continue;
+ }
+
+ /*
+ * lifr.lifr_nd.lnr_hdw_addr now contains the MAC address,
+ * and can be used as desired.
+ */
+ }
+
+ /*
+ * Clean up linked list.
+ */
+ freeaddrinfo(serverinfo);
+ return (0);
+}
+
+int main(int argc, char *argv[]) {
+ if (argc < 2)
+ exit(1);
+ return (get(argv[1]));
+}
+.Ed
+.sp
+Deleting a mapping would work similarly, except that instead of using
+.Sy SIOCLIFGETND ,
+you would instead use the
+.Sy SIOCLIFDELND
+ioctl.
+.Ss Example 2: Adding a mapping
+.Bd -literal -offset indent
+$ gcc -Wall -lsocket -o set set.c
+$ cat set.c
+/*
+ * Example of setting a mapping to an all-zero Ethernet address.
+ */
+#include <strings.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <sys/socket.h>
+#include <sys/sockio.h>
+#include <unistd.h>
+#include <netdb.h>
+#include <net/if.h>
+
+int set(char *host) {
+ struct lifreq lifr;
+ struct addrinfo hints, *serverinfo, *p;
+ int err, s;
+
+ bzero(&hints, sizeof (struct addrinfo));
+ hints.ai_family = PF_INET6;
+ hints.ai_protocol = IPPROTO_IPV6;
+
+ if ((err = getaddrinfo(host, NULL, &hints, &serverinfo)) != 0) {
+ (void) fprintf(stderr, "Unable to lookup %s: %s\\n", host,
+ gai_strerror(err));
+ return (1);
+ }
+
+ s = socket(AF_INET6, SOCK_DGRAM, 0);
+ if (s < 0) {
+ perror("Failed to open IPv6 socket");
+ return (1);
+ }
+
+ for (p = serverinfo; p != NULL; p = p->ai_next) {
+ /* Zero out structure */
+ bzero(&lifr, sizeof (struct lifreq));
+ (void) strlcpy(lifr.lifr_name, "net0",
+ sizeof (lifr.lifr_name));
+ (void) memcpy(&lifr.lifr_nd.lnr_addr, p->ai_addr,
+ sizeof (struct sockaddr_storage));
+
+ lifr.lifr_nd.lnr_state_create = ND_REACHABLE;
+ lifr.lifr_nd.lnr_flags = NDF_STATIC;
+
+ /* Get mapping */
+ if (ioctl(s, SIOCLIFSETND, &lifr) < 0) {
+ perror("Unable to set NDP mapping");
+ continue;
+ }
+ }
+
+ /*
+ * Clean up linked list.
+ */
+ freeaddrinfo(serverinfo);
+ return (0);
+}
+
+int main(int argc, char *argv[]) {
+ if (argc < 2)
+ exit(1);
+ return (set(argv[1]));
+}
+.Ed
+.Sh SEE ALSO
+.Xr sockaddr_in6 3SOCKET ,
+.Xr privileges 7 ,
+.Xr ifconfig 8 ,
+.Xr in.ndpd 8 ,
+.Xr ndp 8
+.Rs
+.%A Narten, T.
+.%A Nordmark, E.
+.%A Simpson, W.
+.%A Soliman, H.
+.%R Neighbor Discovery for IP version 6
+.%T RFC 4861
+.%D September 2007
+.Re
diff --git a/usr/src/man/man4p/pf_key.4p b/usr/src/man/man4p/pf_key.4p
new file mode 100644
index 0000000000..6243c91f88
--- /dev/null
+++ b/usr/src/man/man4p/pf_key.4p
@@ -0,0 +1,951 @@
+'\" te
+.\" Copyright (C) 2008, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 2018, Joyent, Inc.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PF_KEY 4P "December 28, 2020"
+.SH NAME
+pf_key \- Security association database interface
+.SH SYNOPSIS
+.nf
+#include <sys/types.h>
+#include <sys/socket.h>
+#include <net/pfkeyv2.h>
+
+
+
+\fBint\fR \fBsocket\fR(\fB\fR\fIPF_KEY\fR,SOCK_RAW,\fIPF_KEY_V2\fR);
+.fi
+
+.SH DESCRIPTION
+Keying information for IPsec security services is maintained in security
+association databases (\fBSADB\fRs). The security associations (\fBSA\fRs) are
+used to protect both inbound and outbound packets.
+.sp
+.LP
+A user process (or possibly multiple co-operating processes) maintains
+\fBSADB\fRs by sending messages over a special kind of socket. This is
+analogous to the method described in \fBroute\fR(4P). Only a superuser may
+access an \fBSADB\fR.
+.sp
+.LP
+SunOS applications that use PF_KEY include \fBipseckey\fR(8) and
+\fBin.iked\fR(8).
+.sp
+.LP
+The operating system may spontaneously send pf_key messages to listening
+processes, such as a request for a new \fBSA\fR for an outbound datagram or to
+report the expiration of an existing \fBSA\fR.
+.sp
+.LP
+One opens the channel for passing \fBSADB\fR control messages by using the
+socket call shown in the section above. More than one key socket can be open
+per system.
+.sp
+.LP
+Messages are formed by a small base header, followed by zero or more extension
+messages, some of which require additional data following them. The base
+message and all extensions must be eight-byte aligned. An example message is
+the \fBGET\fR message, which requires the base header, the \fBSA \fRextension,
+and the \fBADDRESS_DST\fR extension.
+.SS "Messages"
+Messages include:
+.sp
+.in +2
+.nf
+#define SADB_GETSPI /* Get a new SPI value from the system. */
+#define SADB_UPDATE /* Update an SA. */
+#define SADB_ADD /* Add a fully-formed SA. */
+#define SADB_DELETE /* Delete an SA. */
+#define SADB_GET /* Get an SA */
+#define SADB_ACQUIRE /* Kernel needs a new SA. */
+#define SADB_REGISTER /* Regis. to receive ACQUIRE msgs. */
+#define SADB_EXPIRE /* SA has expired. */
+#define SADB_FLUSH /* Flush all SAs. */
+#define SADB_DUMP /* Get all SAs. (Unreliable) */
+#define SADB_X_PROMISC /* Listen promiscuously */
+#define SADB_X_INVERSE_ACQUIRE /* Query kernel policy,
+ get an ACQUIRE in return. */
+#define SADB_X_UPDATEPAIR /* Update an SA and its pair SA */
+#define SADB_X_DELPAIR /* Delete an SA pair. */
+.fi
+.in -2
+
+.sp
+.LP
+The base message header consists of:
+.sp
+.in +2
+.nf
+struct sadb_msg {
+ uint8_t sadb_msg_version; /* Set to PF_KEY_V2, for compat. */
+ uint8_t sadb_msg_type; /* Msg. type */
+ uint8_t sadb_msg_errno; /* Why message failed */
+ uint8_t sadb_msg_satype; /* Which security service */
+ uint16_t sadb_msg_len; /* Length in 8-byte units */
+ uint16_t sadb_msg_reserved; /* Zero out */
+ #define sadb_x_msg_diagnostic sadb_msg_reserved
+ /* Extended diagnostics for errors */
+ uint32_t sadb_msg_seq; /* For msg. originator */
+ uint32_t sadb_msg_pid; /* ID originator */
+};
+.fi
+.in -2
+
+.sp
+.LP
+Extension types include:
+.sp
+.in +2
+.nf
+#define SADB_EXT_SA /* SA info */
+#define SADB_EXT_LIFETIME_HARD /* Hard lifetime */
+#define SADB_EXT_LIFETIME_SOFT /* Soft lifetime */
+#define SADB_EXT_ADDRESS_SRC /* Source address */
+#define SADB_EXT_ADDRESS_DST /* Destination address */
+#define SADB_EXT_ADDRESS_PROXY /* Proxy address - DEPRECATED */
+#define SADB_EXT_KEY_AUTH /* Authen. key */
+#define SADB_EXT_KEY_ENCRYPT /* Encryption key */
+#define SADB_EXT_IDENTITY_SRC /* Source certif. ID */
+#define SADB_EXT_IDENTITY_DST /* Destination certif. ID */
+#define SADB_EXT_SENSITIVITY /* Sensitivity info */
+#define SADB_EXT_PROPOSAL /* Security proposal */
+#define SADB_EXT_SUPPORTED_AUTH /* Supported authen. algo's */
+#define SADB_EXT_SUPPORTED_ENCRYPT /* Supported encryption algo's */
+#define SADB_EXT_SPIRANGE /* Range of possible SPIs *
+#define SADB_X_EXT_EREG /* Reg. for extended ACQUIRE */
+#define SADB_X_EXT_EPROP /* Extended ACQUIRE proposals */
+#define SADB_X_EXT_KM_COOKIE /* Indicates which KM derived SA. */
+#define SADB_X_EXT_ADDRESS_NATT_LOC /* NAT-Traversal local (my public) */
+#define SADB_X_EXT_ADDRESS_NATT_REM /* NAT-T remote (peer's private) */
+#define SADB_X_EXT_ADDRESS_INNER_SRC /* Tunnel-mode inner source */
+#define SADB_X_EXT_ADDRESS_INNER_DST /* Tunnel-mode inner dest */
+#define SADB_X_EXT_PAIR /* SA pair extension.
+.fi
+.in -2
+
+.sp
+.LP
+Security Association Information Extension flags:
+.sp
+.in +2
+.nf
+#define SADB_SAFLAGS_PFS 0x1 /* Perfect forward secrecy? */
+#define SADB_SAFLAGS_NOREPLAY 0x2 /* Replay field NOT PRESENT. */
+#define SADB_X_SAFLAGS_USED 0x80000000 /* SA used/not used */
+#define SADB_X_SAFLAGS_UNIQUE 0x40000000 /* SA unique/reusable */
+#define SADB_X_SAFLAGS_AALG1 0x20000000 /* Auth-alg specif. flag 1 */
+#define SADB_X_SAFLAGS_AALG2 0x10000000 /* Auth-alg specif. flag 2 */
+#define SADB_X_SAFLAGS_EALG1 0x8000000 /* Encr-alg specif. flag 1 */
+#define SADB_X_SAFLAGS_EALG2 0x4000000 /* Encr-alg specif. flag 2 */
+#define SADB_X_SAFLAGS_KM1 0x2000000 /* Key mgmt. specif. flag 1 */
+#define SADB_X_SAFLAGS_KM2 0x1000000 /* Key mgmt. specif. flag 2 */
+#define SADB_X_SAFLAGS_KM3 0x800000 /* Key mgmt. specif. flag 3 */
+#define SADB_X_SAFLAGS_KM4 0x400000 /* Key mgmt. specif. flag 4 */
+#define SADB_X_SAFLAGS_KRES1 0x200000 /* Reserved by the kernel */
+#define SADB_X_SAFLAGS_NATT_LOC 0x100000 /* this has a natted srcSA */
+#define SADB_X_SAFLAGS_NATT_REM 0x80000 /* this has a natted dstSA */
+#define SADB_X_SAFLAGS_KRES2 0x40000 /* Reserved by the kernel */
+#define SADB_X_SAFLAGS_TUNNEL 0x20000 /* tunnel mode */
+#define SADB_X_SAFLAGS_PAIRED 0x10000 /* inbound/outbound pair*/
+#define SADB_X_SAFLAGS_OUTBOUND 0x8000 /* SA direction bit */
+#define SADB_X_SAFLAGS_INBOUND 0x4000 /* SA direction bit */
+.fi
+.in -2
+
+.sp
+.LP
+Extension headers include:
+.SS "Generic Extension Header"
+.in +2
+.nf
+struct sadb_ext {
+ uint16_t sadb_ext_len; /* In 64-bit words, inclusive */
+ uint16_t sadb_ext_type; /* 0 is reserved */
+};
+.fi
+.in -2
+
+.SS "Security Association Information Extension"
+.in +2
+.nf
+struct sadb_sa {
+ uint16_t sadb_sa_len;
+ uint16_t sadb_sa_exttype; /* ASSOCIATION */
+ uint32_t sadb_sa_spi;
+ uint8_t sadb_sa_replay;
+ uint8_t sadb_sa_state;
+ uint8_t sadb_sa_auth;
+ uint8_t sadb_sa_encrypt;
+ uint32_t sadb_sa_flags;
+};
+.fi
+.in -2
+
+.SS "Lifetime Extension"
+.in +2
+.nf
+struct sadb_lifetime {
+ uint16_t sadb_lifetime_len;
+ uint16_t sadb_lifetime_exttype; /* SOFT, HARD, CURRENT */
+ uint32_t sadb_lifetime_allocations;
+ uint64_t sadb_lifetime_bytes;
+ uint64_t sadb_lifetime_addtime;
+ uint64_t sadb_lifetime_usetime;
+};
+.fi
+.in -2
+
+.SS "Address Extension"
+.in +2
+.nf
+struct sadb_address {
+ uint16_t sadb_address_len;
+ uint16_t sadb_address_exttype; /* SRC, DST, NATT_*, INNER_* */
+ uint8_t sadb_address_proto; /* Proto for ports... */
+ uint8_t sadb_address_prefixlen; /* Prefix length for INNER_*. */
+ uint16_t sadb_address_reserved; /* Padding */
+ /* Followed by a sockaddr
+ structure.*/
+};
+.fi
+.in -2
+
+.SS "Keying Material Extension"
+.in +2
+.nf
+struct sadb_key {
+ uint16_t sadb_key_len;
+ uint16_t sadb_key_exttype; /* AUTH, ENCRYPT */
+ uint16_t sadb_key_bits;
+ uint16_t sadb_key_reserved;
+ /* Followed by actual key(s) in
+ canonical (outbound proc.) order. */
+};
+.fi
+.in -2
+
+.SS "Identity Extension"
+.in +2
+.nf
+struct sadb_ident {
+ uint16_t sadb_ident_len;
+ uint16_t sadb_ident_exttype; /* SRC, DST, PROXY */
+ uint16_t sadb_ident_type; /* FQDN, USER_FQDN, etc. */
+ uint16_t sadb_ident_reserved; /* Padding */
+ uint64_t sadb_ident_id; /* For userid, etc. */
+ /* Followed by an identity null-terminate C string if present. */
+};
+.fi
+.in -2
+
+.SS "Sensitivity/Integrity Extension"
+.in +2
+.nf
+struct sadb_sens {
+ uint16_t sadb_sens_len;
+ uint16_t sadb_sens_exttype; /* SENSITIVITY */
+ uint32_t sadb_sens_dpd;
+ uint8_t sadb_sens_sens_level;
+ uint8_t sadb_sens_sens_len; /* 64-bit words */
+ uint8_t sadb_sens_integ_level;
+ uint8_t sadb_sens_integ_len; /* 64-bit words */
+ uint32_t sadb_sens_reserved;
+ /*
+ * followed by two uint64_t arrays
+ * uint64_t sadb_sens_bitmap[sens_bitmap_len];
+ * uint64_t integ_bitmap[integ_bitmap_len];
+ */
+};
+.fi
+.in -2
+
+.SS "Proposal Extension"
+.in +2
+.nf
+struct sadb_prop {
+ uint16_t sadb_prop_len;
+ uint16_t sadb_prop_exttype; /* PROPOSAL, X_EPROP */
+ uint8_t sadb_prop_replay;
+ uint8_t sadb_X_prop_ereserved;
+ uint16_t sadb_x_prop_numecombs;
+/* Followed by sadb_comb[] array or sadb_ecomb[] array. */
+};
+.fi
+.in -2
+
+.SS "Combination Instance for a Proposal"
+.in +2
+.nf
+struct sadb_comb {
+ uint8_t sadb_comb_auth;
+ uint8_t sadb_comb_encrypt;
+ uint16_t sadb_comb_flags;
+ uint16_t sadb_comb_auth_minbits;
+ uint16_t sadb_comb_auth_maxbits;
+ uint16_t sadb_comb_encrypt_minbits;
+ uint16_t sadb_comb_encrypt_maxbits;
+ uint8_t sadb_x_comb_encrypt_saltbits;
+ uint8_t sadb_x_comb_reserved;
+ uint16_t sadb_comb_reserved;
+ uint32_t sadb_comb_soft_allocations;
+ uint32_t sadb_comb_hard_allocations;
+ uint64_t sadb_comb_soft_bytes;
+ uint64_t sadb_comb_hard_bytes;
+ uint64_t sadb_comb_soft_addtime;
+ uint64_t sadb_comb_hard_addtime;
+ uint64_t sadb_comb_soft_usetime;
+ uint64_t sadb_comb_hard_usetime;
+};
+.fi
+.in -2
+
+.SS "Extended Combination"
+.in +2
+.nf
+struct sadb_x_ecomb {
+ uint8_t sadb_x_ecomb_numalgs;
+ uint8_t sadb_x_ecomb_reserved;
+ uint16_t sadb_x_ecomb_flags; /* E.g. PFS? */
+ uint32_t sadb_x_ecomb_reserved2;
+ uint32_t sadb_x_ecomb_soft_allocations;
+ uint32_t sadb_x_ecomb_hard_allocations;
+ uint64_t sadb_x_ecomb_soft_bytes;
+ uint64_t sadb_x_ecomb_hard_bytes;
+ uint64_t sadb_x_ecomb_soft_addtime;
+ uint64_t sadb_x_ecomb_hard_addtime;
+ uint64_t sadb_x_ecomb_soft_usetime;
+ uint64_t sadb_x_ecomb_hard_usetime;
+};
+.fi
+.in -2
+
+.SS "Extended Combination Algorithm Descriptors"
+.in +2
+.nf
+struct sadb_x_algdesc {
+ uint8_t sadb_x_algdesc_satype; /* ESP, AH, etc. */
+ uint8_t sadb_x_algdesc_algtype; /* AUTH, CRYPT, COMPRESS */
+ uint8_t sadb_x_algdesc_alg; /* DES, 3DES, MD5, etc. */
+ uint8_t sadb_x_algdesc_saltbits;
+ uint16_t sadb_x_algdesc_minbits; /* Bit strengths. */
+ uint16_t sadb_x_algdesc_maxbits;
+ };
+.fi
+.in -2
+
+.SS "Extended Register"
+.in +2
+.nf
+struct sadb_x_ereg {
+ uint16_t sadb_x_ereg_len;
+ uint16_t sadb_x_ereg_exttype; /* X_EREG */
+ uint8_t sadb_x_ereg_satypes[4]; /* Array of SA types, 0-terminated.
+|};
+.fi
+.in -2
+
+.SS "Key Management Cookie"
+.in +2
+.nf
+struct sadb_x_kmc {
+ uint16_t sadb_x_kmc_len;
+ uint16_t sadb_x_kmc_exttype; /* X_KM_COOKIE */
+ uint32_t sadb_x_kmc_proto; /* KM protocol */
+ uint32_t sadb_x_kmc_cookie; /* KMP-specific */
+ uint32_t sadb_x_kmc_reserved; /* Reserved; must be zero */
+ };
+.fi
+.in -2
+
+.SS "Supported Algorithms Extension"
+.in +2
+.nf
+struct sadb_supported {
+ uint16_t sadb_supported_len;
+ uint16_t sadb_supported_exttype;
+ uint32_t sadb_supported_reserved;
+};
+.fi
+.in -2
+
+.SS "Algorithm Instance"
+.in +2
+.nf
+struct sadb_alg {
+ uint8_t sadb_alg_id; /* Algorithm type. */
+ uint8_t sadb_alg_ivlen; /* IV len, in bits */
+ uint16_t sadb_alg_minbits; /* Min. key len (in bits) */
+ uint16_t sadb_alg_maxbits; /* Max. key length */
+ uint16_t sadb_alg_reserved;
+};
+.fi
+.in -2
+
+.SS "SPI Extension Range"
+.in +2
+.nf
+struct sadb_spirange {
+ uint16_t sadb_spirange_len;
+ uint16_t sadb_spirange_exttype; /* SPI_RANGE */
+ uint32_t sadb_spirange_min
+ uint32_t sadb_spirange_max;
+ uint32_t sadb_spirange_reserved;
+};
+.fi
+.in -2
+
+.SS "Security Association Pair Extension"
+.in +2
+.nf
+struct sadb_x_pair {
+ uint16_t sadb_x_pair_len;
+ uint16_t sadb_x_pair_exttype; /* SADB_X_EXT_PAIR */
+ uint32_t sadb_x_pair_spi; /* SPI of paired SA */
+};
+.fi
+.in -2
+
+.SS "Message Use and Behavior"
+Each message has a behavior. A behavior is defined as where the initial message
+travels, for example, user to kernel, and what subsequent actions are expected
+to take place. Contents of messages are illustrated as:
+.sp
+.in +2
+.nf
+<base, REQUIRED EXTENSION, REQ., (OPTIONAL EXTENSION,) (OPT)>
+.fi
+.in -2
+
+.sp
+.LP
+The \fBSA\fR extension is sometimes used only for its \fBSPI\fR field. If all
+other fields must be ignored, this is represented by \fBSA\fR(*).
+.sp
+.LP
+The lifetime extensions are represented with one to three letters after the
+word lifetime, representing (H)ARD, (S)OFT, and (C)URRENT.
+.sp
+.LP
+The address extensions are represented with one to three letters after the word
+"address," representing (S)RC, (D)ST, (Nl)NAT-T local, (Nr)NAT-T remote,
+(Is)Inner source, and (Id)Inner destination.
+.sp
+.LP
+Source and destination address extensions reflect outer-header selectors for an
+IPsec SA. An SA is inbound or outbound depending on which of the source or
+destination address is local to the node. Inner-source and inner-destination
+selectors represent inner-header selectors for Tunnel Mode SAs. A Tunnel Mode
+SA \fBmust\fR have either IPPROTO_ENCAP or IPPROTO_IPV6 in its outer-headers as
+protocol selector, in addition to filled-in Inner-address extensions.
+.sp
+.LP
+NAT-T local and NAT-T remote addresses store local and remote ports used for
+ESP-in-UDP encapsulation. A non-zero local NAT-T address extension represents
+the local node's external IP address if it is not equivalent to the SA's local
+address. A non-zero remote NAT-T address represents a peer's behind-a-NAT
+address if it is not equivalent to the SA's remote address. An SA with NAT-T
+extensions will protect-and-transmit outbound traffic. Processing of inbound
+NAT-T traffic requires a UDP socket bound to the appropriate local port and it
+\fBmust\fR have the UDP_NAT_T_ENDPOINT (see \fBudp\fR(4P)) socket option
+enabled.
+.sp
+.LP
+Note that when an error occurs, only the base header is sent. In the event of
+an error, an extended diagnostic may be set (see DIAGNOSTICS). Typical errors
+include:
+.sp
+.ne 2
+.na
+\fB\fBEINVAL\fR\fR
+.ad
+.RS 11n
+Various message improprieties, including \fBSPI\fR ranges that are malformed,
+weak keys, and others. If EINVAL is returned, an application should look at the
+\fBsadb_x_msg_diagnostic\fR field of the sadb_msg structure. It contains one of
+many possible causes for EINVAL. See \fBnet/pfkeyv2.h\fR for values, all of the
+form SADB_X_DIAGNOSTIC_.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBENOMEM\fR\fR
+.ad
+.RS 11n
+Needed memory was not available.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBENSGSIZ\fR\fR
+.ad
+.RS 11n
+Message exceeds the maximum length allowed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEEXIST\fR\fR
+.ad
+.RS 11n
+\fBSA\fR (that is being added or created with \fBGETSPI\fR) already exists.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBESRCH\fR\fR
+.ad
+.RS 11n
+\fBSA\fR could not be found.
+.RE
+
+.sp
+.LP
+The following are examples of message use and behavior:
+.SS "\fBSADB_GETSPI\fR"
+Send a \fBSADB_GETSPI\fR message from a user process to the kernel.
+.sp
+.in +2
+.nf
+<base, address, SPI range>
+.fi
+.in -2
+
+.sp
+.LP
+The kernel returns the \fBSADB_GETSPI\fR message to all listening processes.
+.sp
+.in +2
+.nf
+<base, SA(*), address (SD)>
+.fi
+.in -2
+
+.SS "\fBSADB_UPDATE\fR"
+Send a \fBSADB_UPDATE\fR message from a user process to the kernel.
+.sp
+.in +2
+.nf
+<base, SA, (lifetime(HS),) address(SD), (address(Is,Id),
+ address(Nl,Nr), key (AE), (identity(SD),) (sensitivity)>
+.fi
+.in -2
+
+.sp
+.LP
+The kernel returns the \fBSADB_UPDATE\fR message to all listening processes.
+.sp
+.in +2
+.nf
+<base, SA(*), address (SD), (pair)>
+.fi
+.in -2
+
+.sp
+.LP
+Adding a sadb_x_pair extension to an \fBSADB_UPDATE\fR or \fBSADB_ADD\fR
+message will update the security association pair linkage with the SPI of the
+security association contained in that extension. The resulting security
+association "pair" can be updated or as a single entity using the
+\fBSADB_X_UPDATEPAIR\fR or \fBSADB_X_DELPAIR\fR message types.
+.SS "\fBSADB_ADD\fR"
+Send a \fBSADB_ADD\fR message from a user process to the kernel.
+.sp
+.in +2
+.nf
+<base, SA, (lifetime(HS),) address(SD), (address(Is,Id),)
+ (address(Nl,Nr),) key (AE), (identity(SD),) (sensitivity) (pair)>
+.fi
+.in -2
+
+.sp
+.LP
+The kernel returns the \fBSADB_ADD\fR message to all listening processes.
+.sp
+.in +2
+.nf
+<base, SA, (lifetime(HS),) address (SD), (address(Is,Id),)
+ (address(Nl,Nr),) (identity (SD),) (sensitivity)>
+.fi
+.in -2
+
+.SS "\fBSADB_X_UPDATEPAIR\fR"
+Send a \fBSADB_X_UPDATEPAIR\fR message from a user process to the kernel.
+This message type is used to update the lifetime values of a security
+association and the lifetime values of the security association it is paired
+with.
+.sp
+.in +2
+.nf
+<base, SA, lifetime(HS), address(SD)>
+.fi
+.in -2
+
+.SS "\fBSADB_DELETE | SADB_X_DELPAIR\fR"
+Send a \fBSADB_DELETE\fR message from a user process to the kernel. The
+\fBSADB_X_DELPAIR\fR message type will request deletion of the security
+association and the security association it is paired with.
+.sp
+.in +2
+.nf
+<base, SA (*), address (SD)>
+.fi
+.in -2
+
+.sp
+.LP
+The kernel returns the \fBSADB_DELETE\fR message to all listening processes.
+.sp
+.in +2
+.nf
+<base, SA (*), address (SD)>
+.fi
+.in -2
+
+.SS "\fBSADB_GET\fR"
+Send a \fBSADB_GET\fR message from a user process to the kernel.
+.sp
+.in +2
+.nf
+<base, SA (*), address (SD)>
+.fi
+.in -2
+
+.sp
+.LP
+The kernel returns the \fBSADB_GET\fR message to the socket that sent the
+\fBSADB_GET\fR message.
+.sp
+.in +2
+.nf
+<base, SA , (lifetime (HSC),) address SD), (address (P),) key (AE),
+ (identity (SD),) (sensitivity)>
+.fi
+.in -2
+
+.SS "\fBSADB_ACQUIRE\fR"
+The kernel sends a \fBSADB_ACQUIRE\fR message to registered sockets. Note that
+any \fBGETSPI\fR, \fBADD\fR, or \fBUPDATE\fR calls in reaction to an
+\fBACQUIRE\fR must fill in the \fBsadb_msg_seq\fR of those messages with the
+one in the \fBACQUIRE\fR message. The address (\fBSD\fR) extensions must have
+the port fields filled in with the port numbers of the session requiring keys
+if appropriate.
+.sp
+.in +2
+.nf
+<base, address (SD), (address(Is,Id)), (identity(SD),)
+ (sensitivity,) proposal>
+.fi
+.in -2
+
+.sp
+.LP
+Extended ACQUIRE will have a slightly different format. The
+\fBsadb_msg_satype\fR field is 0, and the extension contains the desired
+combination(s) of security protocols.
+.sp
+.in +2
+.nf
+<base, address (SD), (address(Is,Id)), (identity(SD),)
+ (sensitivity,) eprop>
+.fi
+.in -2
+
+.sp
+.LP
+If key management fails, send an \fBSADB_ACQUIRE\fR to indicate failure.
+.sp
+.in +2
+.nf
+<base>
+.fi
+.in -2
+
+.SS "\fBSADB_X_INVERSE_ACQUIRE\fR"
+For inbound Key Management processing, a Key Management application may wish to
+consult the kernel for its policy. The application should send to the kernel:
+.sp
+.in +2
+.nf
+<base, address (SD), (address(Is,Id))>
+.fi
+.in -2
+
+.sp
+.LP
+The kernel returns a message similar to a kernel-generated extended ACQUIRE:
+.sp
+.in +2
+.nf
+<base, address (SD), (address(Is,Id)), (identity(SD),)
+ (sensitivity,) eprop>
+.fi
+.in -2
+
+.SS "\fBSADB_REGISTER\fR"
+Send a \fBSADB_REGISTER\fR message from a user process to the kernel.
+.sp
+.in +2
+.nf
+<base>
+.fi
+.in -2
+
+.sp
+.LP
+The kernel returns the \fBSADB_REGISTER\fR message to registered sockets, with
+algorithm types supported by the kernel being indicated in the supported
+algorithms field. Note that this message may arrive asynchronously due to an
+algorithm being loaded or unloaded into a dynamically linked kernel.
+.sp
+.in +2
+.nf
+<base, supported>
+.fi
+.in -2
+
+.sp
+.LP
+There is also the extended REGISTER, which will allow this process to receive
+extended ACQUIREs.
+.sp
+.in +2
+.nf
+<base, ereg>
+.fi
+.in -2
+
+.sp
+.LP
+Which returns a series of SADB_REGISTER replies (one for each security protocol
+registered) from the kernel.
+.SS "\fBSADB_EXPIRE\fR"
+The kernel sends a \fBSADB_EXPIRE\fR message to all listeners when the soft
+limit of a security association has been expired.
+.sp
+.in +2
+.nf
+<base, SA, lifetime (C and one of HS), address (SD)>
+.fi
+.in -2
+
+.SS "\fBSADB_FLUSH\fR"
+Send a \fBSADB_FLUSH\fR message from a user process to the kernel.
+.sp
+.in +2
+.nf
+<base>
+.fi
+.in -2
+
+.sp
+.LP
+The kernel returns the \fBSADB_FLUSH\fR message to all listening sockets.
+.sp
+.in +2
+.nf
+<base>
+.fi
+.in -2
+
+.SS "\fBSADB_DUMP\fR"
+Send a \fBSADB_DUMP\fR message from a user process to the kernel.
+.sp
+.in +2
+.nf
+<base>
+.fi
+.in -2
+
+.sp
+.LP
+Several \fBSADB_DUMP\fR messages will return from the kernel to the sending
+socket.
+.sp
+.in +2
+.nf
+<base, SA, (lifetime (HSC),) address (SD), (address (Is,Id),)
+ (address (Nl,Nr),) key (AE), (identity (SD),) sensitivity)>
+.fi
+.in -2
+
+.sp
+.LP
+To mark the end of a dump a single base header arrives with its
+\fBsadb_mdg_seq\fR set to 0.
+.sp
+.in +2
+.nf
+<base>
+.fi
+.in -2
+
+.SS "\fBSADB_X_PROMISC\fR"
+Send a \fBSADB_X_PROMISC\fR message from a user process to the kernel.
+.sp
+.in +2
+.nf
+<base>
+.fi
+.in -2
+
+.sp
+.LP
+The kernel returns the \fBSADB_X_PROMISC\fR message to all listening processes.
+.sp
+.in +2
+.nf
+<base>
+.fi
+.in -2
+
+.SH DIAGNOSTICS
+The message returning from the kernel will contain a diagnostic value in the
+base message header, the diagnostic value will indicate if action requested by
+the original message was a success.
+.sp
+.LP
+Diagnostic Values:
+.sp
+.in +2
+.nf
+#define SADB_X_DIAGNOSTIC_NONE 0
+#define SADB_X_DIAGNOSTIC_UNKNOWN_MSG 1
+#define SADB_X_DIAGNOSTIC_UNKNOWN_EXT 2
+#define SADB_X_DIAGNOSTIC_BAD_EXTLEN 3
+#define SADB_X_DIAGNOSTIC_UNKNOWN_SATYPE 4
+#define SADB_X_DIAGNOSTIC_SATYPE_NEEDED 5
+#define SADB_X_DIAGNOSTIC_NO_SADBS 6
+#define SADB_X_DIAGNOSTIC_NO_EXT 7
+ /* Bad address family value */
+#define SADB_X_DIAGNOSTIC_BAD_SRC_AF 8
+ /* in sockaddr->sa_family. */
+#define SADB_X_DIAGNOSTIC_BAD_DST_AF 9
+ /* These two are synonyms. */
+#define SADB_X_DIAGNOSTIC_BAD_PROXY_AF 10
+#define SADB_X_DIAGNOSTIC_BAD_INNER_SRC_AF 10
+
+#define SADB_X_DIAGNOSTIC_AF_MISMATCH 11
+
+#define SADB_X_DIAGNOSTIC_BAD_SRC 12
+#define SADB_X_DIAGNOSTIC_BAD_DST 13
+
+#define SADB_X_DIAGNOSTIC_ALLOC_HSERR 14
+#define SADB_X_DIAGNOSTIC_BYTES_HSERR 15
+#define SADB_X_DIAGNOSTIC_ADDTIME_HSERR 16
+#define SADB_X_DIAGNOSTIC_USETIME_HSERR 17
+
+#define SADB_X_DIAGNOSTIC_MISSING_SRC 18
+#define SADB_X_DIAGNOSTIC_MISSING_DST 19
+#define SADB_X_DIAGNOSTIC_MISSING_SA 20
+#define SADB_X_DIAGNOSTIC_MISSING_EKEY 21
+#define SADB_X_DIAGNOSTIC_MISSING_AKEY 22
+#define SADB_X_DIAGNOSTIC_MISSING_RANGE 23
+
+#define SADB_X_DIAGNOSTIC_DUPLICATE_SRC 24
+#define SADB_X_DIAGNOSTIC_DUPLICATE_DST 25
+#define SADB_X_DIAGNOSTIC_DUPLICATE_SA 26
+#define SADB_X_DIAGNOSTIC_DUPLICATE_EKEY 27
+#define SADB_X_DIAGNOSTIC_DUPLICATE_AKEY 28
+#define SADB_X_DIAGNOSTIC_DUPLICATE_RANGE 29
+
+#define SADB_X_DIAGNOSTIC_MALFORMED_SRC 30
+#define SADB_X_DIAGNOSTIC_MALFORMED_DST 31
+#define SADB_X_DIAGNOSTIC_MALFORMED_SA 32
+#define SADB_X_DIAGNOSTIC_MALFORMED_EKEY 33
+#define SADB_X_DIAGNOSTIC_MALFORMED_AKEY 34
+#define SADB_X_DIAGNOSTIC_MALFORMED_RANGE 35
+
+#define SADB_X_DIAGNOSTIC_AKEY_PRESENT 36
+#define SADB_X_DIAGNOSTIC_EKEY_PRESENT 37
+#define SADB_X_DIAGNOSTIC_PROP_PRESENT 38
+#define SADB_X_DIAGNOSTIC_SUPP_PRESENT 39
+#define SADB_X_DIAGNOSTIC_BAD_AALG 40
+#define SADB_X_DIAGNOSTIC_BAD_EALG 41
+#define SADB_X_DIAGNOSTIC_BAD_SAFLAGS 42
+#define SADB_X_DIAGNOSTIC_BAD_SASTATE 43
+
+#define SADB_X_DIAGNOSTIC_BAD_AKEYBITS 44
+#define SADB_X_DIAGNOSTIC_BAD_EKEYBITS 45
+
+#define SADB_X_DIAGNOSTIC_ENCR_NOTSUPP 46
+
+#define SADB_X_DIAGNOSTIC_WEAK_EKEY 47
+#define SADB_X_DIAGNOSTIC_WEAK_AKEY 48
+
+#define SADB_X_DIAGNOSTIC_DUPLICATE_KMP 49
+#define SADB_X_DIAGNOSTIC_DUPLICATE_KMC 50
+
+#define SADB_X_DIAGNOSTIC_MISSING_NATT_LOC 51
+#define SADB_X_DIAGNOSTIC_MISSING_NATT_REM 52
+#define SADB_X_DIAGNOSTIC_DUPLICATE_NATT_LOC 53
+#define SADB_X_DIAGNOSTIC_DUPLICATE_NATT_REM 54
+#define SADB_X_DIAGNOSTIC_MALFORMED_NATT_LOC 55
+#define SADB_X_DIAGNOSTIC_MALFORMED_NATT_REM 56
+#define SADB_X_DIAGNOSTIC_DUPLICATE_NATT_PORTS 57
+
+#define SADB_X_DIAGNOSTIC_MISSING_INNER_SRC 58
+#define SADB_X_DIAGNOSTIC_MISSING_INNER_DST 59
+#define SADB_X_DIAGNOSTIC_DUPLICATE_INNER_SRC 60
+#define SADB_X_DIAGNOSTIC_DUPLICATE_INNER_DST 61
+#define SADB_X_DIAGNOSTIC_MALFORMED_INNER_SRC 62
+#define SADB_X_DIAGNOSTIC_MALFORMED_INNER_DST 63
+
+#define SADB_X_DIAGNOSTIC_PREFIX_INNER_SRC 64
+#define SADB_X_DIAGNOSTIC_PREFIX_INNER_DST 65
+#define SADB_X_DIAGNOSTIC_BAD_INNER_DST_AF 66
+#define SADB_X_DIAGNOSTIC_INNER_AF_MISMATCH 67
+
+#define SADB_X_DIAGNOSTIC_BAD_NATT_REM_AF 68
+#define SADB_X_DIAGNOSTIC_BAD_NATT_LOC_AF 69
+
+#define SADB_X_DIAGNOSTIC_PROTO_MISMATCH 70
+#define SADB_X_DIAGNOSTIC_INNER_PROTO_MISMATCH 71
+
+#define SADB_X_DIAGNOSTIC_DUAL_PORT_SETS 72
+
+#define SADB_X_DIAGNOSTIC_PAIR_INAPPROPRIATE 73
+#define SADB_X_DIAGNOSTIC_PAIR_ADD_MISMATCH 74
+#define SADB_X_DIAGNOSTIC_PAIR_ALREADY 75
+#define SADB_X_DIAGNOSTIC_PAIR_SA_NOTFOUND 76
+#define SADB_X_DIAGNOSTIC_BAD_SA_DIRECTION 77
+
+#define SADB_X_DIAGNOSTIC_SA_NOTFOUND 78
+#define SADB_X_DIAGNOSTIC_SA_EXPIRED 79
+.fi
+.in -2
+
+.SH ATTRIBUTES
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.BR sockaddr (3SOCKET),
+.BR ipsec (4P),
+.BR ipsecah (4P),
+.BR ipsecesp (4P),
+.BR route (4P),
+.BR udp (4P),
+.BR in.iked (8),
+.BR ipseckey (8)
+.sp
+.LP
+McDonald, D.L., Metz, C.W., and Phan, B.G., \fIRFC 2367, PF_KEY Key Management
+API, Version 2\fR, The Internet Society, July 1998.
+.SH NOTES
+Time-based lifetimes may not expire with exact precision in seconds because
+kernel load may affect the aging of \fBSA\fR's.
diff --git a/usr/src/man/man4p/rarp.4p b/usr/src/man/man4p/rarp.4p
new file mode 100644
index 0000000000..dd7ccdbb92
--- /dev/null
+++ b/usr/src/man/man4p/rarp.4p
@@ -0,0 +1,58 @@
+'\" te
+.\" Copyright (c) 2001, Sun Microsystems, Inc.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH RARP 4P "May 28, 2005"
+.SH NAME
+rarp, RARP \- Reverse address resolution protocol
+.SH DESCRIPTION
+.sp
+.LP
+You use the RARP protocol to map dynamically between the Internet Protocol (IP)
+and network interface MAC addresses. RARP is often used to boot a Solaris
+client. RARP clients include the SPARC boot PROM, x86 boot floppy, SunOS
+kernel, and \fBifconfig\fR(8). \fBin.rarpd\fR(8) provides the server-side
+implementation.
+.sp
+.LP
+RARP request timeout behavior in application-layer clients is governed by the
+\fB/etc/inet/rarp\fR default file. To tune the number of retries an application
+attempts before giving up, set the \fBRARP_RETRIES\fR variable in
+\fB/etc/inet/rarp\fR. If the file is not present or \fBRARP_RETRIES\fR is not
+initialized within it, applications retry a maximum of five times with a eight
+second wait between retries.
+.SH FILES
+.sp
+.LP
+\fB/etc/inet/rarp\fR
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability (protocol) Standard
+_
+Interface Stability (defaults file) Unstable
+_
+Interface Stability (RARP_RETRIES) Unstable
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR arp (4P),
+.BR ifconfig (8),
+.BR in.rarpd (8)
+.sp
+.LP
+\fIReverse Address Resolution Protocol RFC 903. June, 1984\fR R. Finlayson, T.
+Mann, J.C. Mogul, M. Theimer
diff --git a/usr/src/man/man4p/route.4p b/usr/src/man/man4p/route.4p
new file mode 100644
index 0000000000..f06f03ead3
--- /dev/null
+++ b/usr/src/man/man4p/route.4p
@@ -0,0 +1,333 @@
+'\" te
+.\" Copyright (c) 1990, 1991, 1993 The Regents of the University of California. All rights reserved.
+.\" Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 3. All advertising materials mentioning features or use of this software must display
+.\" the following acknowledgement: This product includes software developed by the University of California, Berkeley and its contributors. 4. Neither the name of the University nor the names of its contributors may be used to endorse or promote products derived from this software without
+.\" specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS
+.\" OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
+.\" IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+.\" Portions Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved.
+.TH ROUTE 4P "April 9, 2016"
+.SH NAME
+route \- kernel packet forwarding database
+.SH SYNOPSIS
+.LP
+.nf
+#include <sys/types.h>
+#include <sys/socket.h>
+#include <net/if.h>
+#include <net/route.h>
+
+\fBint\fR \fBsocket\fR(\fB\fR\fIPF_ROUTE\fR, \fB\fR\fISOCK_RAW\fR, \fBint\fR \fIprotocol\fR);
+.fi
+
+.SH DESCRIPTION
+.LP
+UNIX provides some packet routing facilities. The kernel maintains a routing
+information database, which is used in selecting the appropriate network
+interface when transmitting packets.
+.sp
+.LP
+A user process (or possibly multiple co-operating processes) maintains this
+database by sending messages over a special kind of socket. This supplants
+fixed size \fBioctl\fR(2)'s specified in \fBrouting\fR(4P). Routing table
+changes can only be carried out by the superuser.
+.sp
+.LP
+The operating system might spontaneously emit routing messages in response to
+external events, such as receipt of a re-direct, or failure to locate a
+suitable route for a request. The message types are described in greater detail
+below.
+.sp
+.LP
+Routing database entries come in two flavors: entries for a specific host, or
+entries for all hosts on a generic subnetwork (as specified by a bit mask and
+value under the mask). The effect of wildcard or default route can be achieved
+by using a mask of all zeros, and there can be hierarchical routes.
+.sp
+.LP
+When the system is booted and addresses are assigned to the network interfaces,
+the internet protocol family installs a routing table entry for each interface
+when it is ready for traffic. Normally the protocol specifies the route through
+each interface as a \fIdirect\fR connection to the destination host or network.
+If the route is direct, the transport layer of a protocol family usually
+requests the packet be sent to the same host specified in the packet.
+Otherwise, the interface is requested to address the packet to the gateway
+listed in the routing entry, that is, the packet is forwarded.
+.sp
+.LP
+When routing a packet, the kernel attempts to find the most specific route
+matching the destination. If no entry is found, the destination is declared to
+be unreachable, and a routing-miss message is generated if there are any
+listeners on the routing control socket (described below). If there are two
+different mask and value-under-the-mask pairs that match, the more specific is
+the one with more bits in the mask. A route to a host is regarded as being
+supplied with a mask of as many ones as there are bits in the destination.
+.sp
+.LP
+A wildcard routing entry is specified with a zero destination address value,
+and a mask of all zeroes. Wildcard routes are used when the system fails to
+find other routes matching the destination. The combination of wildcard routes
+and routing redirects can provide an economical mechanism for routing traffic.
+.sp
+.LP
+One opens the channel for passing routing control messages by using the socket
+call. There can be more than one routing socket open per system.
+.sp
+.LP
+Messages are formed by a header followed by a small number of \fBsockaddrs\fR,
+whose length depend on the address family. \fBsockaddrs\fR are interpreted by
+position. An example of a type of message with three addresses might be a
+\fBCIDR\fR prefix route: Destination, Netmask, and Gateway. The interpretation
+of which addresses are present is given by a bit mask within the header, and
+the sequence is least significant to most significant bit within the vector.
+.sp
+.LP
+Any messages sent to the kernel are returned, and copies are sent to all
+interested listeners. The kernel provides the process \fBID\fR of the sender,
+and the sender can use an additional sequence field to distinguish between
+outstanding messages. However, message replies can be lost when kernel buffers
+are exhausted.
+.sp
+.LP
+The \fIprotocol\fR parameter specifies which messages an application listening
+on the routing socket is interested in seeing, based on the address family
+of the \fBsockaddrs\fR present. Currently, you can specify \fBAF_INET\fR and
+\fBAF_INET6\fR to filter the messages seen by the listener, or alternatively,
+you can specify \fBAF_UNSPEC\fR to indicate that the listener is interested in
+all routing messages.
+.sp
+.LP
+The kernel might reject certain messages, and indicates this by filling in the
+\fBrtm_errno\fR field of the \fBrt_msghdr\fR struct (see below). The following
+codes are returned:
+.sp
+.ne 2
+.na
+\fB\fBEEXIST\fR\fR
+.ad
+.RS 11n
+If requested to duplicate an existing entry
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBESRCH\fR\fR
+.ad
+.RS 11n
+If requested to delete a non-existent entry
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBENOBUFS\fR\fR
+.ad
+.RS 11n
+If insufficient resources were available to install a new route.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEPERM\fR\fR
+.ad
+.RS 11n
+If the calling process does not have appropriate privileges to alter the
+routing table.
+.RE
+
+.sp
+.LP
+In the current implementation, all routing processes run locally, and the
+values for \fBrtm_errno\fR are available through the normal \fBerrno\fR
+mechanism, even if the routing reply message is lost.
+.sp
+.LP
+A process can avoid the expense of reading replies to its own messages by
+issuing a \fBsetsockopt\fR(3SOCKET) call indicating that the
+\fBSO_USELOOPBACK\fR option at the \fBSOL_SOCKET\fR level is to be turned off.
+A process can ignore all messages from the routing socket by doing a
+\fBshutdown\fR(3SOCKET) system call for further input.
+.sp
+.LP
+By default, underlying IP interfaces in an IPMP group are not visible to
+routing sockets. As such, routing sockets do not receive events related to
+underlying IP interface in an IPMP group. For consistency, when an IP interface
+is placed into an IPMP group, \fBRTM_DELADDR\fR messages are generated for each
+\fBIFF_UP\fR address that is not migrated to the corresponding IPMP IP
+interface and an \fBRTM_IFINFO\fR message is sent indicating the interface is
+down. Similarly, when an underlying interface is removed from an IPMP group, an
+\fBRTM_IFINFO\fR message is sent indicating the interface is again up and
+\fBRTM_NEWADDR\fR messages are generated for each \fBIFF_UP\fR address found on
+the interface.
+.sp
+.LP
+The \fBRT_AWARE\fR socket option at the \fBSOL_ROUTE\fR level allows an
+application to indicate its awareness of certain features, which control
+routing socket behavior. The supported values are:
+.sp
+.ne 2
+.na
+\fB\fBRTAW_DEFAULT\fR\fR
+.ad
+.RS 20n
+Default awareness.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBRTAW_UNDER_IPMP\fR\fR
+.ad
+.RS 20n
+IPMP underlying interface awareness. When enabled, underlying IP interfaces in
+an IPMP group remain visible to the routing socket and events related to them
+continue to be generated.
+.RE
+
+.sp
+.LP
+An \fBRTM_ADD\fR request tied to an underlying IP interface in an IPMP group is
+translated to an \fBRTM_ADD\fR request for its corresponding IPMP IP interface.
+All routing socket requests other than \fBRTM_ADD\fR and \fBRTM_GET\fR fail
+when issued on an underlying IP interface in an IPMP group.
+.sp
+.LP
+If a route is in use when it is deleted, the routing entry is marked down and
+removed from the routing table, but the resources associated with it are not
+reclaimed until all references to it are released.
+.sp
+.LP
+The \fBRTM_IFINFO\fR, \fBRTM_NEWADDR\fR, and \fBRTM_ADD\fR messages associated
+with interface configuration (setting the \fBIFF_UP\fR bit) are normally
+delayed until after Duplicate Address Detection completes. Thus, applications
+that configure interfaces and wish to wait until the interface is ready can
+wait until \fBRTM_IFINFO\fR is returned and \fBSIOCGLIFFLAGS\fR shows that
+\fBIFF_DUPLICATE\fR is not set.
+.SS "Messages"
+.LP
+User processes can obtain information about the routing entry to a specific
+destination by using a \fBRTM_GET\fR message.
+.sp
+.LP
+Messages include:
+.sp
+.in +2
+.nf
+#define RTM_ADD 0x1 /* Add Route */
+#define RTM_DELETE 0x2 /* Delete Route */
+#define RTM_CHANGE 0x3 /* Change Metrics, Flags, or Gateway */
+#define RTM_GET 0x4 /* Report Information */
+#define RTM_LOSING 0x5 /* Kernel Suspects Partitioning */
+#define RTM_REDIRECT 0x6 /* Told to use different route */
+#define RTM_MISS 0x7 /* Lookup failed on this address */
+#define RTM_LOCK 0x8 /* fix specified metrics */
+#define RTM_OLDADD 0x9 /* caused by SIOCADDRT */
+#define RTM_OLDDEL 0xa /* caused by SIOCDELRT */
+#define RTM_RESOLVE 0xb /* request to resolve dst to LL addr */
+#define RTM_NEWADDR 0xc /* address being added to iface */
+#define RTM_DELADDR 0xd /* address being removed from iface */
+#define RTM_IFINFO 0xe /* iface going up/down etc. */
+.fi
+.in -2
+
+.sp
+.LP
+A message header consists of:
+.sp
+.in +2
+.nf
+struct rt_msghdr {
+ ushort_t rtm_msglen; /* to skip over non-understood messages */
+ uchar_t rtm_version; /* future binary compatibility */
+ uchar_t rtm_type; /* message type */
+ ushort_t rtm_index; /* index for associated ifp */
+ pid_t rtm_pid; /* identify sender */
+ int rtm_addrs; /* bitmask identifying sockaddrs in msg */
+ int rtm_seq; /* for sender to identify action */
+ int rtm_errno; /* why failed */
+ int rtm_flags; /* flags, incl kern & message, e.g., DONE */
+ int rtm_use; /* from rtentry */
+ uint_t rtm_inits; /* which values we are initializing */
+
+ struct rt_metrics rtm_rmx; /* metrics themselves */
+};
+.fi
+.in -2
+
+.sp
+.LP
+where
+.sp
+.in +2
+.nf
+struct rt_metrics {
+ uint32_t rmx_locks; /* Kernel must leave these values alone */
+ uint32_t rmx_mtu; /* MTU for this path */
+ uint32_t rmx_hopcount; /* max hops expected */
+ uint32_t rmx_expire; /* lifetime for route, e.g., redirect */
+ uint32_t rmx_recvpipe; /* inbound delay-bandwidth product */
+ uint32_t rmx_sendpipe; /* outbound delay-bandwidth product */
+ uint32_t rmx_ssthresh; /* outbound gateway buffer limit */
+ uint32_t rmx_rtt; /* estimated round trip time */
+ uint32_t rmx_rttvar; /* estimated rtt variance */
+ uint32_t rmx_pksent; /* packets sent using this route */
+};
+
+/* Flags include the values */
+
+
+#define RTF_UP 0x1 /* route usable */
+#define RTF_GATEWAY 0x2 /* destination is a gateway */
+#define RTF_HOST 0x4 /* host entry (net otherwise) */
+#define RTF_REJECT 0x8 /* host or net unreachable */
+#define RTF_DYNAMIC 0x10 /* created dynamically(by redirect) */
+#define RTF_MODIFIED 0x20 /* modified dynamically(by redirect) */
+#define RTF_DONE 0x40 /* message confirmed */
+#define RTF_MASK 0x80 /* subnet mask present */
+#define RTF_CLONING 0x100 /* generate new routes on use */
+#define RTF_XRESOLVE 0x200 /* external daemon resolves name */
+#define RTF_LLINFO 0x400 /* generated by ARP */
+#define RTF_STATIC 0x800 /* manually added */
+#define RTF_BLACKHOLE 0x1000 /* just discard pkts (during updates) */
+#define RTF_PRIVATE 0x2000 /* do not advertise this route */
+#define RTF_PROTO2 0x4000 /* protocol specific routing flag #2 */
+#define RTF_PROTO1 0x8000 /* protocol specific routing flag #1 */
+
+/* Specifiers for metric values in rmx_locks and rtm_inits are */
+
+#define RTV_MTU 0x1 /* init or lock _mtu */
+#define RTV_HOPCOUNT 0x2 /* init or lock _hopcount */
+#define RTV_EXPIRE 0x4 /* init or lock _expire */
+#define RTV_RPIPE 0x8 /* init or lock _recvpipe */
+#define RTV_SPIPE 0x10 /* init or lock _sendpipe */
+#define RTV_SSTHRESH 0x20 /* init or lock _ssthresh */
+#define RTV_RTT 0x40 /* init or lock _rtt */
+#define RTV_RTTVAR 0x80 /* init or lock _rttvar */
+
+/* Specifiers for which addresses are present in the messages are */
+
+#define RTA_DST 0x1 /* destination sockaddr present */
+#define RTA_GATEWAY 0x2 /* gateway sockaddr present */
+#define RTA_NETMASK 0x4 /* netmask sockaddr present */
+#define RTA_GENMASK 0x8 /* cloning mask sockaddr present */
+#define RTA_IFP 0x10 /* interface name sockaddr present */
+#define RTA_IFA 0x20 /* interface addr sockaddr present */
+#define RTA_AUTHOR 0x40 /* sockaddr for author of redirect */
+#define RTA_BRD 0x80 /* for NEWADDR, broadcast or p-p dest addr */
+.fi
+.in -2
+
+.SH SEE ALSO
+.LP
+.BR ioctl (2),
+.BR setsockopt (3SOCKET),
+.BR shutdown (3SOCKET),
+.BR sockaddr (3SOCKET),
+.BR routing (4P)
+.SH NOTES
+.LP
+Some of the metrics might not be implemented and return zero. The implemented
+metrics are set in \fBrtm_inits\fR.
diff --git a/usr/src/man/man4p/routing.4p b/usr/src/man/man4p/routing.4p
new file mode 100644
index 0000000000..22b9358654
--- /dev/null
+++ b/usr/src/man/man4p/routing.4p
@@ -0,0 +1,165 @@
+'\" te
+.\" Copyright 1989 AT&T
+.\" Copyright (C) 1999, Sun Microsystems,
+.\" Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH ROUTING 4P "Nov 9, 1999"
+.SH NAME
+routing \- system support for packet network routing
+.SH DESCRIPTION
+.sp
+.LP
+The network facilities provide general packet routing. The \fBrouting\fR
+interface described here can be used to maintain the system's IPv4 routing
+table. It has been maintained for compatibility with older applications. The
+recommended interface for maintaining the system's routing tables is the
+routing socket, described at \fBroute\fR(4P). The routing socket can be used to
+manipulate both the IPv4 and IPv6 routing tables of the system. Routing table
+maintenance may be implemented in applications processes.
+.sp
+.LP
+A simple set of data structures compose a "routing table" used in selecting the
+appropriate network interface when transmitting packets. This table contains a
+single entry for each route to a specific network or host. The routing table
+was designed to support routing for the Internet Protocol (IP), but its
+implementation is protocol independent and thus it may serve other protocols as
+well. User programs may manipulate this data base with the aid of two
+\fBioctl\fR(2) commands, \fBSIOCADDRT\fR and \fBSIOCDELRT\fR. These commands
+allow the addition and deletion of a single routing table entry, respectively.
+Routing table manipulations may only be carried out by privileged user.
+.sp
+.LP
+A routing table entry has the following form, as defined in
+\fB/usr/include/net/route.h\fR:
+.sp
+.in +2
+.nf
+struct rtentry {
+ unit_t rt_hash; /* to speed lookups */
+ struct sockaddr rt_dst; /* key */
+ struct sockaddr rt_gateway; /* value */
+ short rt_flags; /* up/down?, host/net */
+ short rt_refcnt; /* # held references */
+ unit_t rt_use; /* raw # packets forwarded */
+/*
+ * The kernel does not use this field, and without it the structure is
+ * datamodel independent.
+ */
+#if !defined(_KERNEL)
+ struct ifnet *rt_ifp; /* the answer: interface to use */
+#endif /* !defined(_KERNEL) */
+};
+.fi
+.in -2
+
+.sp
+.LP
+with \fIrt_flags\fR defined from:
+.sp
+.in +2
+.nf
+#define RTF_UP 0x1 /* route usable */
+#define RTF_GATEWAY 0x2 /* destination is a gateway */
+#define RTF_HOST 0x4 /* host entry (net otherwise) */
+.fi
+.in -2
+
+.sp
+.LP
+There are three types of routing table entries: those for a specific host,
+those for all hosts on a specific network, and those for any destination not
+matched by entries of the first two types, called a wildcard route. Each
+network interface installs a routing table entry when it is initialized.
+Normally the interface specifies if the route through it is a "direct"
+connection to the destination host or network. If the route is direct, the
+transport layer of a protocol family usually requests the packet be sent to the
+same host specified in the packet. Otherwise, the interface may be requested to
+address the packet to an entity different from the eventual recipient;
+essentially, the packet is forwarded.
+.sp
+.LP
+Routing table entries installed by a user process may not specify the hash,
+reference count, use, or interface fields; these are filled in by the routing
+routines. If a route is in use when it is deleted, meaning its \fBrt_refcnt\fR
+is non-zero, the resources associated with it will not be reclaimed until all
+references to it are removed.
+.sp
+.LP
+User processes read the routing tables through the \fB/dev/ip\fR device.
+.sp
+.LP
+The \fIrt_use\fR field contains the number of packets sent along the route.
+This value is used to select among multiple routes to the same destination.
+When multiple routes to the same destination exist, the least used route is
+selected.
+.sp
+.LP
+A wildcard routing entry is specified with a \fBzero\fR destination address
+value. Wildcard routes are used only when the system fails to find a route to
+the destination host and network. The combination of wildcard routes and
+routing redirects can provide an economical mechanism for routing traffic.
+.SH ERRORS
+.sp
+.ne 2
+.na
+\fB\fBEEXIST\fR\fR
+.ad
+.RS 15n
+A request was made to duplicate an existing entry.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBESRCH\fR\fR
+.ad
+.RS 15n
+A request was made to delete a non-existent entry.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBENOBUFS\fR\fR
+.ad
+.RS 15n
+Insufficient resources were available to install a new route.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBENOMEM\fR\fR
+.ad
+.RS 15n
+Insufficient resources were available to install a new route.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBENETUNREACH\fR\fR
+.ad
+.RS 15n
+The gateway is not directly reachable. For example, it does not match the
+destination/subnet on any of the network interfaces.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/dev/ip\fR\fR
+.ad
+.RS 11n
+\fBIP\fR device driver
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR ioctl (2),
+.BR route (4P),
+.BR route (8)
diff --git a/usr/src/man/man4p/sctp.4p b/usr/src/man/man4p/sctp.4p
new file mode 100644
index 0000000000..06aa842e99
--- /dev/null
+++ b/usr/src/man/man4p/sctp.4p
@@ -0,0 +1,433 @@
+'\" te
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
+.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SCTP 4P "Jul 30, 2009"
+.SH NAME
+sctp, SCTP \- Stream Control Transmission Protocol
+.SH SYNOPSIS
+.LP
+.nf
+#include <sys/socket.h>
+#include <netinet/in.h>
+
+s = socket(AF_INET, SOCK_STREAM, IPPROTO_SCTP);
+.fi
+
+.LP
+.nf
+\fBs = socket(AF_INET, SOCK_SEQPACKET, IPPROTO_SCTP);\fR
+.fi
+
+.LP
+.nf
+\fBs = socket(AF_INET6, SOCK_STREAM, IPPROTO_SCTP);\fR
+.fi
+
+.LP
+.nf
+\fBs = socket(AF_INET6, SOCK_SEQPACKET, IPPROTO_SCTP);\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+SCTP is a transport protocol layered above the Internet Protocol (IP), or the
+Internet Protocol Version 6 (IPv6). SCTP provides a reliable, session oriented,
+flow-controlled, two-way transmission of data. It is a message- oriented
+protocol and supports framing of individual messages boundaries. An SCTP
+association is created between two endpoints for data transfer which is
+maintained during the lifetime of the transfer. An SCTP association is setup
+between two endpoints using a four-way handshake mechanism with the use of a
+cookie to guard against some types of denial of service (DoS) attacks. These
+endpoints may be represented by multiple IP addresses.
+.sp
+.LP
+An SCTP message includes a common SCTP header followed by one or more chunks.
+Included in the common header is a 32-bit field which contains the checksum
+(computed using CRC-32c polynomial) of the entire SCTP packet.
+.sp
+.LP
+SCTP transfers data payloads in the form of DATA chunks. Each DATA chunk
+contains a Transmission Sequence Number (TSN), which governs the transmission
+of messages and detection of loss. DATA chunk exchanges follow the Transmission
+Control Protocol's (TCP) Selective ACK (SACK) mechanism. The receiver
+acknowledges data by sending SACK chunks, which not only indicate the
+cumulative TSN range received, but also non-cumulative TSNs received, implying
+gaps in the received TSN sequence. SACKs are sent using the delayed
+acknowledgment method similar to TCP, that is, one SCTP per every other
+received packet with an upper bound on the delay (when there are gaps detected
+the frequency is increased to one every received packet). Flow and congestion
+control follow TCP algorithms: Slow Start, Congestion Avoidance, Fast Recovery
+and Fast retransmit. But unlike TCP, SCTP does not support half-close
+connection and "urgent" data.
+.sp
+.LP
+SCTP is designed to support a number of functions that are critical for
+telephony signalling transport, including multi-streaming. SCTP allows data to
+be partitioned into multiple streams that have the property of independent
+sequenced delivery so that message loss in any one stream only affects delivery
+within that stream. In many applications (particularly telephony signalling),
+it is only necessary to maintain sequencing of messages that affect some
+resource. Other messages may be delivered without having to maintain overall
+sequence integrity. A DATA chunk on an SCTP association contains the Stream
+Id/Stream Sequence Number pair, in addition to the TSN, which is used for
+sequenced delivery within a stream.
+.sp
+.LP
+SCTP uses IP's host level addressing and adds its own per-host collection of
+port addresses. The endpoints of an SCTP association are identified by the
+combination of IP address(es) and an SCTP port number. By providing the ability
+for an endpoint to have multiple IP addresses, SCTP supports multi-homing,
+which makes an SCTP association more resilient in the presence of network
+failures (assuming the network is constructed to provided redundancy). For a
+multi-homed SCTP association, a single address is used as the primary address,
+which is used as the destination address for normal DATA chunk transfers.
+Retransmitted DATA chunks are sent over alternate address(es) to increase the
+probability of reaching the remote endpoint. Continued failure to send DATA
+chunks over the primary address results in selecting an alternate address as
+the primary address. Additionally, SCTP monitors the accessibility of all
+alternate addresses by sending periodic "heartbeats" chunks. An SCTP
+association supports multi-homing by exchanging the available list of addresses
+during association setup (as part of its four-way handshake mechanism). An SCTP
+endpoint is associated with a local address using the \fBbind\fR(3SOCKET) call.
+Subsequently, the endpoint can be associated with additional addresses using
+\fBsctp_bindx\fR(3SOCKET). By using a special value of \fBINADDR_ANY\fR with IP
+or the unspecified address (all zeros) with IPv6 in the \fBbind()\fR or
+\fBsctp_bindx()\fR calls, an endpoint can be bound to all available IP or IPv6
+addresses on the system.
+.sp
+.LP
+SCTP uses a three-way mechanism to allow graceful shutdown, where each endpoint
+has confirmation of the DATA chunks received by the remote endpoint prior to
+completion of the shutdown. An Abort is provided for error cases when an
+immediate shutdown is needed.
+.sp
+.LP
+Applications can access SCTP using the socket interface as a \fBSOCK_STREAM\fR
+(one-to-one style) or \fBSOCK_SEQPACKET\fR (one-to-many style) socket type.
+.sp
+.LP
+One-to-one style socket interface supports similar semantics as sockets for
+connection oriented protocols, such as TCP. Thus, a passive socket is created
+by calling the \fBlisten\fR(3SOCKET) function after binding the socket using
+\fBbind()\fR. Associations to this passive socket can be received using
+\fBaccept\fR(3SOCKET) function. Active sockets use the \fBconnect\fR(3SOCKET)
+function after binding to initiate an association. If an active socket is not
+explicitly bound, an implicit binding is performed. If an application wants to
+exchange data during the association setup phase, it should not call
+\fBconnect()\fR, but use \fBsendto\fR(3SOCKET)/\fBsendmsg\fR(3SOCKET) to
+implicitly initiate an association. Once an association has been established,
+\fBread\fR(2) and \fBwrite\fR(2) can used to exchange data. Additionally,
+\fBsend\fR(3SOCKET), \fBrecv\fR(3SOCKET), \fBsendto()\fR,
+\fBrecvfrom\fR(3SOCKET), \fBsendmsg()\fR, and \fBrecvmsg\fR(3SOCKET) can be
+used.
+.sp
+.LP
+One-to-many socket interface supports similar semantics as sockets for
+connection less protocols, such as UDP (however, unlike UDP, it does not
+support broadcast or multicast communications). A passive socket is created
+using the \fBlisten()\fR function after binding the socket using \fBbind()\fR.
+An \fBaccept()\fR call is not needed to receive associations to this passive
+socket (in fact, an \fBaccept()\fR on a one-to-many socket will fail).
+Associations are accepted automatically and notifications of new associations
+are delivered in \fBrecvmsg()\fR provided notifications are enabled. Active
+sockets after binding (implicitly or explicitly) need not call \fBconnect()\fR
+to establish an association, implicit associations can be created using
+\fBsendmsg()\fR/\fBrecvmsg()\fR or \fBsendto()\fR/\fBrecvfrom()\fR calls. Such
+implicit associations cannot be created using \fBsend()\fR and \fBrecv()\fR
+calls. On an SCTP socket (one-to-one or one-to-many), an association may be
+established using \fBsendmsg()\fR. However, if an association already exists
+for the destination address specified in the \fImsg_name\fR member of the
+\fImsg\fR parameter, \fBsendmsg()\fR must include the association id in
+\fImsg_iov\fR member of the \fImsg\fR parameter (using \fBsctp_sndrcvinfo\fR
+structure) for a one-to-many SCTP socket. If the association id is not
+provided, \fBsendmsg()\fR fails with \fBEADDRINUSE\fR. On a one-to-one socket
+the destination information in the \fImsg\fR parameter is ignored for an
+established association.
+.sp
+.LP
+A one-to-one style association can be created from a one-to-many association by
+branching it off using the \fBsctp_peeloff\fR(3SOCKET) call; \fBsend()\fR and
+\fBrecv()\fR can be used on such peeled off associations. Calling
+\fBclose\fR(2) on a one-to-many socket will gracefully shutdown all the
+associations represented by that one-to-many socket.
+.sp
+.LP
+The \fBsctp_sendmsg\fR(3SOCKET) and \fBsctp_recvmsg\fR(3SOCKET) functions can
+be used to access advanced features provided by SCTP.
+.sp
+.LP
+SCTP provides the following socket options which are set using
+\fBsetsockopt\fR(3SOCKET) and read using \fBgetsockopt\fR(3SOCKET). The option
+level is the protocol number for SCTP, available from
+\fBgetprotobyname\fR(3SOCKET).
+.sp
+.ne 2
+.na
+\fB\fBSCTP_NODELAY\fR\fR
+.ad
+.sp .6
+.RS 4n
+Turn on/off any Nagle-like algorithm (similar to \fBTCP_NODELAY\fR).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSO_RCVBUF\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set the receive buffer.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSO_SNDBUF\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set the send buffer.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSCTP_AUTOCLOSE\fR\fR
+.ad
+.sp .6
+.RS 4n
+For one-to-many style socket, automatically close any association that has been
+idle for more than the specified number of seconds. A value of '0' indicates
+that no associations should be closed automatically.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSCTP_EVENTS\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify various notifications and ancillary data the user wants to receive.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSCTP_STATUS\fR\fR
+.ad
+.sp .6
+.RS 4n
+Retrieve current status information about an SCTP association.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSCTP_GET_ASSOC_STATS\fR\fR
+.ad
+.sp .6
+.RS 4n
+Gather and reset per endpoint association statistics.
+.RE
+
+.sp
+.LP
+Example Usage:
+.sp
+.in +2
+.nf
+#include <netinet/sctp.h>
+
+struct sctp_assoc_stats stat;
+int rc;
+
+int32_t len = sizeof (stat);
+
+/*
+ * Per endpoint stats use the socket descriptor for sctp association.
+ */
+
+/* Gather per endpoint association statistics */
+rc = getsockopt(sd, IPPROTO_SCTP, SCTP_GET_ASSOC_STATS, &stat, &len);
+.fi
+.in -2
+
+.sp
+.LP
+Extract from the modified header file:
+.sp
+.in +2
+.nf
+sctp.h
+
+ /*
+ * SCTP socket option used to read per endpoint association statistics.
+ */
+ #define SCTP_GET_ASSOC_STATS 24
+
+ /*
+ * A socket user request reads local per endpoint association stats.
+ * All stats are counts except sas_maxrto, which is the max value
+ * since the last user request for stats on this endpoint.
+ */
+ typedef struct sctp_assoc_stats {
+ uint64_t sas_rtxchunks; /* Retransmitted Chunks */
+ uint64_t sas_gapcnt; /* Gap Acknowledgements Received */
+ uint64_t sas_maxrto; /* Maximum Observed RTO this period */
+ uint64_t sas_outseqtsns; /* TSN received > next expected */
+ uint64_t sas_osacks; /* SACKs sent */
+ uint64_t sas_isacks; /* SACKs received */
+ uint64_t sas_octrlchunks; /* Control chunks sent - no dups */
+ uint64_t sas_ictrlchunks; /* Control chunks received - no dups */
+ uint64_t sas_oodchunks; /* Ordered data chunks sent */
+ uint64_t sas_iodchunks; /* Ordered data chunks received */
+ uint64_t sas_ouodchunks; /* Unordered data chunks sent */
+ uint64_t sas_iuodchunks; /* Unordered data chunks received */
+ uint64_t sas_idupchunks; /* Dups received (ordered+unordered) */
+} sctp_assoc_stats_t;
+.fi
+.in -2
+
+.SH MULTIHOMING
+.sp
+.LP
+The ability of SCTP to use multiple addresses in an association can create
+issues with some network utilities. This requires a system administrator to be
+careful in setting up the system.
+.sp
+.LP
+For example, the \fBtcpd\fR allows an administrator to use a simple form of
+address/hostname access control. While \fBtcpd\fR can work with SCTP, the
+access control part can have some problems. The \fBtcpd\fR access control is
+only based on one of the addresses at association setup time. Once as
+association is allowed, no more checking is performed. This means that during
+the life time of the association, SCTP packets from different addresses of the
+peer host can be received in the system. This may not be what the system
+administrator wants as some of the peer's addresses are supposed to be blocked.
+.sp
+.LP
+Another example is the use of IP Filter, which provides several functions such
+as IP packet filtering (\fBipf\fR(8)) and NAT \fBipnat\fR(8)). For packet
+filtering, one issue is that a filter policy can block packets from some of the
+addresses of an association while allowing packets from other addresses to go
+through. This can degrade SCTP's performance when failure occurs. There is a
+more serious issue with IP address rewrite by NAT. At association setup time,
+SCTP endpoints exchange IP addresses. But IP Filter is not aware of this. So
+when NAT is done on a packet, it may change the address to an unacceptable one.
+Thus the SCTP association setup may succeed but packets cannot go through
+afterwards when a different IP address is used for the association.
+.SH SEE ALSO
+.sp
+.LP
+\fBipf\fR(8), \fBipnat\fR(8), \fBndd\fR(8), \fBclose\fR(2),
+.BR ioctl (2),
+.BR read (2),
+.BR write (2),
+.BR libsctp (3LIB),
+.BR accept (3SOCKET),
+.BR bind (3SOCKET),
+.BR connect (3SOCKET),
+.BR getprotobyname (3SOCKET),
+.BR getsockopt (3SOCKET),
+.BR listen (3SOCKET),
+.BR recv (3SOCKET),
+.BR recvfrom (3SOCKET),
+.BR recvmsg (3SOCKET),
+.BR sctp_bindx (3SOCKET),
+.BR sctp_freepaddrs (3SOCKET),
+.BR sctp_getladdrs (3SOCKET),
+.BR sctp_getpaddrs (3SOCKET),
+.BR sctp_opt_info (3SOCKET),
+.BR sctp_peeloff (3SOCKET),
+.BR sctp_recvmsg (3SOCKET),
+.BR sctp_sendmsg (3SOCKET),
+.BR send (3SOCKET),
+.BR sendmsg (3SOCKET),
+.BR sendto (3SOCKET),
+.BR socket (3SOCKET),
+.BR inet (4P),
+.BR inet6 (4P),
+.BR ip (4P),
+.BR ip6 (4P),
+.BR tcp (4P),
+.BR udp (4P),
+.BR ipfilter (7)
+.sp
+.LP
+R. Stewart, Q. Xie, K. Morneault, C. Sharp, H. Schwarzbauer, T. Taylor, I.
+Rytina, M. Kalla, L. Zang, V. Paxson, \fIRFC 2960, Stream Control Transmission
+Protocol\fR, October 2000
+.sp
+.LP
+L. Ong, J. Yoakum, \fIRFC 3286, An Introduction to Stream Control Transmission
+Protocol (SCTP)\fR, May 2002
+.sp
+.LP
+J. Stone, R. Stewart, D. Otis, \fIRFC 3309, Stream Control Transmission
+Protocol (SCTP) Checksum Change\fR, September 2002.
+.SH DIAGNOSTICS
+.sp
+.LP
+A socket operation may fail if:
+.sp
+.ne 2
+.na
+\fB\fBEPROTONOSUPPORT\fR\fR
+.ad
+.RS 19n
+The socket type is other than \fBSOCK_STREAM\fR and \fBSOCK_SEQPACKET\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBETIMEDOUT\fR\fR
+.ad
+.RS 19n
+An association was dropped due to excessive retransmissions.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBECONNREFUSED\fR\fR
+.ad
+.RS 19n
+The remote peer refused establishing an association.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEADDRINUSE\fR\fR
+.ad
+.RS 19n
+A \fBbind()\fR operation was attempted on a socket with a network address/port
+pair that has already been bound to another socket.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEINVAL\fR\fR
+.ad
+.RS 19n
+A \fBbind()\fR operation was attempted on a socket with an invalid network
+address.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEPERM\fR\fR
+.ad
+.RS 19n
+A \fBbind()\fR operation was attempted on a socket with a "reserved" port
+number and the effective user ID of the process was not the privileged user.
+.RE
+
diff --git a/usr/src/man/man4p/sip.4p b/usr/src/man/man4p/sip.4p
new file mode 100644
index 0000000000..4c719ef512
--- /dev/null
+++ b/usr/src/man/man4p/sip.4p
@@ -0,0 +1,27 @@
+'\" te
+.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SIP 4P "Jul 29, 2004"
+.SH NAME
+sip \- SIP Proxy/registrar/redirect server
+.SH DESCRIPTION
+.sp
+.LP
+Solaris supports deployment of VoIP/SIP services by providing an \fIRFC
+3261\fR-compliant SIP proxy/registrar/redirect server called SER from
+\fIiptel.org\fR.
+.sp
+.LP
+See the \fBser(8)\fR man page under \fB/usr/sfw/man\fR.
+.SH FILES
+.sp
+.LP
+\fB/etc/sfw/ser/ser.cfg\fR
+.sp
+.LP
+\fB/etc/sfw/ser/README.solaris.ser\fR
+.sp
+.LP
+\fB/usr/sfw/share/doc/ser/README\fR
diff --git a/usr/src/man/man4p/slp.4p b/usr/src/man/man4p/slp.4p
new file mode 100644
index 0000000000..bbb4005702
--- /dev/null
+++ b/usr/src/man/man4p/slp.4p
@@ -0,0 +1,130 @@
+'\" te
+.\" Copyright (C) 1999, Sun Microsystems, Inc.
+.\" All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SLP 4P "Nov 17, 1999"
+.SH NAME
+slp \- Service Location Protocol
+.SH DESCRIPTION
+.sp
+.LP
+The Service Location Protocol (\fBSLP\fR) is a dynamic service discovery
+protocol that runs on top of the Internet Protocol (\fBIP\fR). The protocol is
+specified by the \fBIETF\fR standard-track documents \fIRFC 2165\fR, \fIRFC
+2608\fR, \fIRFC 2609\fR; the \fBAPI\fR is documented in \fIRFC 2614\fR. .
+.sp
+.LP
+There are two components to the \fBSLP\fR technology. The first is a daemon,
+\fBslpd\fR(8), which coordinates \fBSLP\fR operations. The second is a
+software library, \fBslp_api\fR(3SLP), through which processes access a public
+\fBAPI\fR. Both components are configured by means of the \fBSLP\fR
+configuration file, \fBslp.conf\fR(5).
+.sp
+.LP
+The \fBSLP\fR \fBAPI\fR is useful for two types of processes:
+.sp
+.ne 2
+.na
+\fBClient Applications\fR
+.ad
+.RS 23n
+Services and service information can be requested from the \fBAPI\fR. Clients
+do not need to know the location of a required service, only the type of
+service, and optionally, the service characteristics. \fBSLP\fR will supply
+the location and other information to the client through the \fBAPI\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBServer Processes\fR
+.ad
+.RS 23n
+Programs that offer network services use the \fBSLP\fR \fBAPI\fR to advertise
+their location as well as other service information. The advertisement can
+optionally include attributes describing the service. Advertisements are
+accompanied by a lifetime; when the lifetime expires, the advertisement is
+flushed, unless it is refreshed prior to expiration.
+.RE
+
+.sp
+.LP
+\fBAPI\fR libraries are available for both the C and Java languages.
+.sp
+.LP
+\fBSLP\fR provides the following additional features:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBslpd\fR(8) can be configured to function as a transparent directory agent.
+This feature makes \fBSLP\fR scalable to the enterprise. System administrators
+can configure directory agents to achieve a number of different strategies for
+scalability.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBSLP\fR service advertising and discovery is performed in scopes. Unless
+otherwise configured, all discovery and all advertisements are in the scope
+\fIdefault\fR. In the case of a larger network, scopes can be used to group
+services and client systems so that users will only find those services which
+are physically near them, belong to their department, or satisfy the specified
+criteria. Administrators can configure these scopes to achieve different
+service provider strategies.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Services may be registered by proxy through a serialized registration file.
+This is an alternative to registering services through the \fBAPI\fR. See
+\fBslpd.reg\fR(5) for more information.
+.RE
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+CSI CSI-enabled
+_
+Interface Stability Standard
+_
+MT-Level MT-Safe
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR slp_api (3SLP),
+.BR slp.conf (5),
+.BR slpd.reg (5),
+.BR attributes (7),
+.BR slpd (8)
+.sp
+.LP
+Guttman, E., Perkins, C., Veizades, J., and Day, M., \fIRFC 2608, Service
+Location Protocol, Version 2\fR, The Internet Society, June 1999.
+.sp
+.LP
+Guttman, E., Perkins, C., and Kempf, J., \fIRFC 2609, Service Templates and
+Service: Schemes\fR, The Internet Society, June 1999.
+.sp
+.LP
+Kempf, J. and Guttman, E., \fIRFC 2614, An API for Service Location\fR, The
+Internet Society, June 1999.
+.sp
+.LP
+Veizades, J., Guttman, E., Perkins, C., and Kaplan, S., \fIRFC 2165, Service
+Location Protocol\fR, Network Working Group, 1997.
diff --git a/usr/src/man/man4p/tcp.4p b/usr/src/man/man4p/tcp.4p
new file mode 100644
index 0000000000..b5abdac9cf
--- /dev/null
+++ b/usr/src/man/man4p/tcp.4p
@@ -0,0 +1,898 @@
+'\"
+.\" This file and its contents are supplied under the terms of the
+.\" Common Development and Distribution License ("CDDL"), version 1.0.
+.\" You may only use this file in accordance with the terms of version
+.\" 1.0 of the CDDL.
+.\"
+.\" A full copy of the text of the CDDL should have accompanied this
+.\" source. A copy of the CDDL is also available via the Internet at
+.\" http://www.illumos.org/license/CDDL.
+.\"
+.\"
+.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright (c) 2011 Nexenta Systems, Inc. All rights reserved.
+.\" Copyright 2019 Joyent, Inc.
+.\" Copyright 2022 Oxide Computer Company
+.\" Copyright 1989 AT&T
+.\"
+.Dd "Jan 07, 2019"
+.Dt TCP 4P
+.Os
+.Sh NAME
+.Nm tcp ,
+.Nm TCP
+.Nd Internet Transmission Control Protocol
+.Sh SYNOPSIS
+.In sys/socket.h
+.In netinet/in.h
+.In netinet/tcp.h
+.Bd -literal
+s = socket(AF_INET, SOCK_STREAM, 0);
+s = socket(AF_INET6, SOCK_STREAM, 0);
+t = t_open("/dev/tcp", O_RDWR);
+t = t_open("/dev/tcp6", O_RDWR);
+.Ed
+.Sh DESCRIPTION
+TCP is the virtual circuit protocol of the Internet protocol family.
+It provides reliable, flow-controlled, in-order, two-way transmission of data.
+It is a byte-stream protocol layered above the Internet Protocol
+.Po Sy IP Pc ,
+or the Internet Protocol Version 6
+.Po Sy IPv6 Pc ,
+the Internet protocol family's
+internetwork datagram delivery protocol.
+.Pp
+Programs can access TCP using the socket interface as a
+.Dv SOCK_STREAM
+socket type, or using the Transport Level Interface
+.Po Sy TLI Pc
+where it supports the connection-oriented
+.Po Dv BT_COTS_ORD Pc
+service type.
+.Pp
+A checksum over all data helps TCP provide reliable communication.
+Using a window-based flow control mechanism that makes use of positive
+acknowledgements, sequence numbers, and a retransmission strategy, TCP can
+usually recover when datagrams are damaged, delayed, duplicated or delivered
+out of order by the underlying medium.
+.Pp
+TCP provides several socket options, defined in
+.In netinet/tcp.h
+and described throughout this document,
+which may be set using
+.Xr setsockopt 3SOCKET
+and read using
+.Xr getsockopt 3SOCKET .
+The
+.Fa level
+argument for these calls is the protocol number for TCP, available from
+.Xr getprotobyname 3SOCKET .
+IP level options may also be used with TCP.
+See
+.Xr ip 4P
+and
+.Xr ip6 4P .
+.Ss "Listening And Connecting"
+TCP uses IP's host-level addressing and adds its own per-host
+collection of
+.Dq port addresses .
+The endpoints of a TCP connection are
+identified by the combination of an IPv4 or IPv6 address and a TCP
+port number.
+Although other protocols, such as the User Datagram Protocol
+.Po Sy UDP Pc ,
+may use the same host and port address format, the port space of these
+protocols is distinct.
+See
+.Xr inet 4P
+and
+.Xr inet6 4P
+for details on
+the common aspects of addressing in the Internet protocol family.
+.Pp
+Sockets utilizing TCP are either
+.Dq active
+or
+.Dq passive .
+Active sockets
+initiate connections to passive sockets.
+Passive sockets must have their local IPv4 or IPv6 address and TCP port number
+bound with the
+.Xr bind 3SOCKET
+system call after the socket is created.
+If an active socket has not been bound by the time
+.Xr connect 3SOCKET
+is called, then the operating system will choose a local address and port for
+the application.
+By default, TCP sockets are active.
+A passive socket is created by calling the
+.Xr listen 3SOCKET
+system call after binding, which establishes a queueing parameter for the
+passive socket.
+Connections to the passive socket can then be received using the
+.Xr accept 3SOCKET
+system call.
+Active sockets use the
+.Xr connect 3SOCKET
+call after binding to initiate connections.
+.Pp
+If incoming connection requests include an IP source route option, then the
+reverse source route will be used when responding.
+.Pp
+By using the special value
+.Dv INADDR_ANY
+with IPv4, or the unspecified
+address (all zeroes) with IPv6, the local IP address can be left
+unspecified in the
+.Fn bind
+call by either active or passive TCP
+sockets.
+This feature is usually used if the local address is either unknown or
+irrelevant.
+If left unspecified, the local IP address will be bound at connection time to
+the address of the network interface used to service the connection.
+For passive sockets, this is the destination address used by the connecting
+peer.
+For active sockets, this is usually an address on the same subnet as the
+destination or default gateway address, although the rules can be more complex.
+See
+.Sy "Source Address Selection"
+in
+.Xr inet6 4P
+for a detailed discussion of how this works in IPv6.
+.Pp
+Note that no two TCP sockets can be bound to the same port unless the bound IP
+addresses are different.
+IPv4
+.Dv INADDR_ANY
+and IPv6 unspecified addresses compare as equal to any IPv4 or IPv6 address.
+For example, if a socket is bound to
+.Dv INADDR_ANY
+or the unspecified address and port
+.Em N ,
+no other socket can bind to port
+.Em N ,
+regardless of the binding address.
+This special consideration of
+.Dv INADDR_ANY
+and the unspecified address can be changed using the socket option
+.Dv SO_REUSEADDR .
+If
+.Dv SO_REUSEADDR
+is set on a socket doing a bind, IPv4
+.Dv INADDR_ANY
+and the IPv6 unspecified address do not compare as equal to any IP address.
+This means that as long as the two sockets are not both bound to
+.Dv INADDR_ANY ,
+the unspecified address, or the same IP address, then the two sockets can be
+bound to the same port.
+.Pp
+If an application does not want to allow another socket using the
+.Dv SO_REUSEADDR
+option to bind to a port its socket is bound to, the
+application can set the socket-level
+.Po Dv SOL_SOCKET Pc
+option
+.Dv SO_EXCLBIND
+on a socket.
+The
+option values of 0 and 1 mean enabling and disabling the option respectively.
+Once this option is enabled on a socket, no other socket can be bound to the
+same port.
+.Ss "Sending And Receiving Data"
+Once a connection has been established, data can be exchanged using the
+.Xr read 2
+and
+.Xr write 2
+system calls.
+If, after sending data, the local TCP receives no acknowledgements from its
+peer for a period of time (for example, if the remote machine crashes), the
+connection is closed and an error is returned.
+.Pp
+When a peer is sending data, it will only send up to the advertised
+.Dq receive window ,
+which is determined by how much more data the recipient can fit in its buffer.
+Applications can use the socket-level option
+.Dv SO_RCVBUF
+to increase or decrease the receive buffer size.
+Similarly, the socket-level option
+.Dv SO_SNDBUF
+can be used to allow TCP to buffer more unacknowledged and unsent data locally.
+.Pp
+Under most circumstances, TCP will send data when it is written by the
+application.
+When outstanding data has not yet been acknowledged, though, TCP will gather
+small amounts of output to be sent as a single packet once an acknowledgement
+has been received.
+Usually referred to as Nagle's Algorithm (RFC 896), this behavior helps prevent
+flooding the network with many small packets.
+.Pp
+However, for some highly interactive clients (such as remote shells or
+windowing systems that send a stream of keypresses or mouse events), this
+batching may cause significant delays.
+To disable this behavior, TCP provides a boolean socket option,
+.Dv TCP_NODELAY .
+.Pp
+Conversely, for other applications, it may be desirable for TCP not to send out
+any data until a full TCP segment can be sent.
+To enable this behavior, an application can use the TCP-level socket option
+.Dv TCP_CORK .
+When set to a non-zero value, TCP will only send out a full TCP segment.
+When
+.Dv TCP_CORK
+is set to zero after it has been enabled, all currently buffered data is sent
+out (as permitted by the peer's receive window and the current congestion
+window).
+.Pp
+Still other latency-sensitive applications rely on receiving a quick
+notification that their packets have been successfully received.
+To satisfy the requirements of those applications, setting the
+.Dv TCP_QUICKACK
+option to a non-zero value will instruct the TCP stack to send an acknowlegment
+immediately upon receipt of a packet, rather than waiting to acknowledge
+multiple packets at once.
+.Pp
+TCP provides an urgent data mechanism, which may be invoked using the
+out-of-band provisions of
+.Xr send 3SOCKET .
+The caller may mark one byte as
+.Dq urgent
+with the
+.Dv MSG_OOB
+flag to
+.Xr send 3SOCKET .
+This sets an
+.Dq urgent pointer
+pointing to this byte in the TCP stream.
+The receiver on the other side of the stream is notified of the urgent data by a
+.Dv SIGURG
+signal.
+The
+.Dv SIOCATMARK
+.Xr ioctl 2
+request returns a value indicating whether the stream is at the urgent mark.
+Because the system never returns data across the urgent mark in a single
+.Xr read 2
+call, it is possible to
+advance to the urgent data in a simple loop which reads data, testing the
+socket with the
+.Dv SIOCATMARK
+.Fn ioctl
+request, until it reaches the mark.
+.Ss "Congestion Control"
+TCP follows the congestion control algorithm described in RFC 2581, and
+also supports the initial congestion window (cwnd) changes in RFC 3390.
+The initial cwnd calculation can be overridden by the socket option
+.Dv TCP_INIT_CWND .
+An application can use this option to set the initial cwnd to a
+specified number of TCP segments.
+This applies to the cases when the connection
+first starts and restarts after an idle period.
+The process must have the
+.Dv PRIV_SYS_NET_CONFIG
+privilege if it wants to specify a number greater than that
+calculated by RFC 3390.
+.Pp
+The operating system also provides alternative algorithms that may be more
+appropriate for your application, including the CUBIC congestion control
+algorithm described in RFC 8312.
+These can be configured system-wide using
+.Xr ipadm 8 ,
+or on a per-connection basis with the TCP-level socket option
+.Dv TCP_CONGESTION ,
+whose argument is the name of the algorithm to use
+.Pq for example Dq cubic .
+If the requested algorithm does not exist, then
+.Fn setsockopt
+will fail, and
+.Va errno
+will be set to
+.Er ENOENT .
+.Ss "TCP Keep-Alive"
+Since TCP determines whether a remote peer is no longer reachable by timing out
+waiting for acknowledgements, a host that never sends any new data may never
+notice a peer that has gone away.
+While consumers can avoid this problem by sending their own periodic heartbeat
+messages (Transport Layer Security does this, for example),
+TCP describes an optional keep-alive mechanism in RFC 1122.
+Applications can enable it using the socket-level option
+.Dv SO_KEEPALIVE .
+When enabled, the first keep-alive probe is sent out after a TCP connection is
+idle for two hours.
+If the peer does not respond to the probe within eight minutes, the TCP
+connection is aborted.
+An application can alter the probe behavior using the following TCP-level
+socket options:
+.Bl -tag -offset indent -width 16m
+.It Dv TCP_KEEPALIVE_THRESHOLD
+Determines the interval for sending the first probe.
+The option value is specified as an unsigned integer in milliseconds.
+The system default is controlled by the TCP
+.Nm ndd
+parameter
+.Cm tcp_keepalive_interval .
+The minimum value is ten seconds.
+The maximum is ten days, while the default is two hours.
+.It Dv TCP_KEEPALIVE_ABORT_THRESHOLD
+If TCP does not receive a response to the probe, then this option determines
+how long to wait before aborting a TCP connection.
+The option value is an unsigned integer in milliseconds.
+The value zero indicates that TCP should never time
+out and abort the connection when probing.
+The system default is controlled by the TCP
+.Nm ndd
+parameter
+.Sy tcp_keepalive_abort_interval .
+The default is eight minutes.
+.It Dv TCP_KEEPIDLE
+This option, like
+.Dv TCP_KEEPALIVE_THRESHOLD ,
+determines the interval for sending the first probe, except that
+the option value is an unsigned integer in
+.Sy seconds .
+It is provided primarily for compatibility with other Unix flavors.
+.It Dv TCP_KEEPCNT
+This option specifies the number of keep-alive probes that should be sent
+without any response from the peer before aborting the connection.
+.It Dv TCP_KEEPINTVL
+This option specifies the interval in seconds between successive,
+unacknowledged keep-alive probes.
+.El
+.Ss "Additional Configuration"
+illumos supports TCP Extensions for High Performance (RFC 7323)
+which includes the window scale and timestamp options, and Protection Against
+Wrap Around Sequence Numbers
+.Po Sy PAWS Pc .
+Note that if timestamps are negotiated on
+a connection, received segments without timestamps on that connection are
+silently dropped per the suggestion in the RFC. illumos also supports Selective
+Acknowledgment
+.Po Sy SACK Pc
+capabilities (RFC 2018) and Explicit Congestion
+Notification
+.Po Sy ECN Pc
+mechanism (RFC 3168).
+.Pp
+Turn on the window scale option in one of the following ways:
+.Bl -bullet -offset indent -width 4m
+.It
+An application can set
+.Dv SO_SNDBUF
+or
+.Dv SO_RCVBUF
+size in the
+.Fn setsockopt
+option to be larger than 64K.
+This must be done
+.Em before
+the program calls
+.Fn listen
+or
+.Fn connect ,
+because the window scale
+option is negotiated when the connection is established.
+Once the connection
+has been made, it is too late to increase the send or receive window beyond the
+default TCP limit of 64K.
+.It
+For all applications, use
+.Xr ndd 8
+to modify the configuration parameter
+.Cm tcp_wscale_always .
+If
+.Cm tcp_wscale_always
+is set to
+.Sy 1 ,
+the
+window scale option will always be set when connecting to a remote system.
+If
+.Cm tcp_wscale_always
+is
+.Sy 0 ,
+the window scale option will be set only if
+the user has requested a send or receive window larger than 64K.
+The default value of
+.Cm tcp_wscale_always
+is
+.Sy 1 .
+.It
+Regardless of the value of
+.Cm tcp_wscale_always ,
+the window scale option
+will always be included in a connect acknowledgement if the connecting system
+has used the option.
+.El
+.Pp
+Turn on SACK capabilities in the following way:
+.Bl -bullet -offset indent -width 4m
+.It
+Use
+.Nm ndd
+to modify the configuration parameter
+.Cm tcp_sack_permitted .
+If
+.Cm tcp_sack_permitted
+is set to
+.Sy 0 ,
+TCP will not accept SACK or send out SACK information.
+If
+.Cm tcp_sack_permitted
+is
+set to
+.Sy 1 ,
+TCP will not initiate a connection with SACK permitted option in the
+.Sy SYN
+segment, but will respond with SACK permitted option in the
+.Sy SYN|ACK
+segment if an incoming connection request has the SACK permitted option.
+This means that TCP will only accept SACK information if the other side of the
+connection also accepts SACK information.
+If
+.Cm tcp_sack_permitted
+is set to
+.Sy 2 ,
+it will both initiate and accept connections with SACK information.
+The default for
+.Cm tcp_sack_permitted
+is
+.Sy 2
+.Pq active enabled .
+.El
+.Pp
+Turn on the TCP ECN mechanism in the following way:
+.Bl -bullet -offset indent -width 4m
+.It
+Use
+.Nm ndd
+to modify the configuration parameter
+.Cm tcp_ecn_permitted .
+If
+.Cm tcp_ecn_permitted
+is set to
+.Sy 0 ,
+then TCP will not negotiate with a peer that supports ECN mechanism.
+If
+.Cm tcp_ecn_permitted
+is set to
+.Sy 1
+when initiating a connection, TCP will not tell a peer that it supports
+.Sy ECN
+mechanism.
+However, it will tell a peer that it supports
+.Sy ECN
+mechanism when accepting a new incoming connection request if the peer
+indicates that it supports
+.Sy ECN
+mechanism in the
+.Sy SYN
+segment.
+If
+.Cm tcp_ecn_permitted
+is set to 2, in addition to negotiating with a peer on
+.Sy ECN
+mechanism when accepting connections, TCP will indicate in the outgoing
+.Sy SYN
+segment that it supports
+.Sy ECN
+mechanism when TCP makes active outgoing connections.
+The default for
+.Cm tcp_ecn_permitted
+is 1.
+.El
+.Pp
+Turn on the timestamp option in the following way:
+.Bl -bullet -offset indent -width 4m
+.It
+Use
+.Nm ndd
+to modify the configuration parameter
+.Cm tcp_tstamp_always .
+If
+.Cm tcp_tstamp_always
+is
+.Sy 1 ,
+the timestamp option will always be set
+when connecting to a remote machine.
+If
+.Cm tcp_tstamp_always
+is
+.Sy 0 ,
+the timestamp option will not be set when connecting to a remote system.
+The
+default for
+.Cm tcp_tstamp_always
+is
+.Sy 0 .
+.It
+Regardless of the value of
+.Cm tcp_tstamp_always ,
+the timestamp option will
+always be included in a connect acknowledgement (and all succeeding packets) if
+the connecting system has used the timestamp option.
+.El
+.Pp
+Use the following procedure to turn on the timestamp option only when the
+window scale option is in effect:
+.Bl -bullet -offset indent -width 4m
+.It
+Use
+.Nm ndd
+to modify the configuration parameter
+.Cm tcp_tstamp_if_wscale .
+Setting
+.Cm tcp_tstamp_if_wscale
+to
+.Sy 1
+will cause the timestamp option
+to be set when connecting to a remote system, if the window scale option has
+been set.
+If
+.Cm tcp_tstamp_if_wscale
+is
+.Sy 0 ,
+the timestamp option will
+not be set when connecting to a remote system.
+The default for
+.Cm tcp_tstamp_if_wscale
+is
+.Sy 1 .
+.El
+.Pp
+Protection Against Wrap Around Sequence Numbers
+.Po Sy PAWS Pc
+is always used when the
+timestamp option is set.
+.Pp
+The operating system also supports multiple methods of generating initial sequence numbers.
+One of these methods is the improved technique suggested in RFC 1948.
+We
+.Em HIGHLY
+recommend that you set sequence number generation parameters as
+close to boot time as possible.
+This prevents sequence number problems on
+connections that use the same connection-ID as ones that used a different
+sequence number generation.
+The
+.Sy svc:/network/initial:default
+service configures the initial sequence number generation.
+The service reads the value contained in the configuration file
+.Pa /etc/default/inetinit
+to determine which method to use.
+.Pp
+The
+.Pa /etc/default/inetinit
+file is an unstable interface, and may change in future releases.
+.Sh EXAMPLES
+.Ss Example 1: Connecting to a server
+.Bd -literal
+$ gcc -std=c99 -Wall -lsocket -o client client.c
+$ cat client.c
+#include <sys/socket.h>
+#include <netinet/in.h>
+#include <netinet/tcp.h>
+#include <netdb.h>
+#include <stdio.h>
+#include <string.h>
+#include <unistd.h>
+
+int
+main(int argc, char *argv[])
+{
+ struct addrinfo hints, *gair, *p;
+ int fd, rv, rlen;
+ char buf[1024];
+ int y = 1;
+
+ if (argc != 3) {
+ fprintf(stderr, "%s <host> <port>\\n", argv[0]);
+ return (1);
+ }
+
+ memset(&hints, 0, sizeof (hints));
+ hints.ai_family = PF_UNSPEC;
+ hints.ai_socktype = SOCK_STREAM;
+
+ if ((rv = getaddrinfo(argv[1], argv[2], &hints, &gair)) != 0) {
+ fprintf(stderr, "getaddrinfo() failed: %s\\n",
+ gai_strerror(rv));
+ return (1);
+ }
+
+ for (p = gair; p != NULL; p = p->ai_next) {
+ if ((fd = socket(
+ p->ai_family,
+ p->ai_socktype,
+ p->ai_protocol)) == -1) {
+ perror("socket() failed");
+ continue;
+ }
+
+ if (connect(fd, p->ai_addr, p->ai_addrlen) == -1) {
+ close(fd);
+ perror("connect() failed");
+ continue;
+ }
+
+ break;
+ }
+
+ if (p == NULL) {
+ fprintf(stderr, "failed to connect to server\\n");
+ return (1);
+ }
+
+ freeaddrinfo(gair);
+
+ if (setsockopt(fd, SOL_SOCKET, SO_KEEPALIVE, &y,
+ sizeof (y)) == -1) {
+ perror("setsockopt(SO_KEEPALIVE) failed");
+ return (1);
+ }
+
+ while ((rlen = read(fd, buf, sizeof (buf))) > 0) {
+ fwrite(buf, rlen, 1, stdout);
+ }
+
+ if (rlen == -1) {
+ perror("read() failed");
+ }
+
+ fflush(stdout);
+
+ if (close(fd) == -1) {
+ perror("close() failed");
+ }
+
+ return (0);
+}
+$ ./client 127.0.0.1 8080
+hello
+$ ./client ::1 8080
+hello
+.Ed
+.Ss Example 2: Accepting client connections
+.Bd -literal
+$ gcc -std=c99 -Wall -lsocket -o server server.c
+$ cat server.c
+#include <sys/socket.h>
+#include <netinet/in.h>
+#include <netinet/tcp.h>
+#include <netdb.h>
+#include <stdio.h>
+#include <string.h>
+#include <unistd.h>
+#include <arpa/inet.h>
+
+void
+logmsg(struct sockaddr *s, int bytes)
+{
+ char dq[INET6_ADDRSTRLEN];
+
+ switch (s->sa_family) {
+ case AF_INET: {
+ struct sockaddr_in *s4 = (struct sockaddr_in *)s;
+ inet_ntop(AF_INET, &s4->sin_addr, dq, sizeof (dq));
+ fprintf(stdout, "sent %d bytes to %s:%d\\n",
+ bytes, dq, ntohs(s4->sin_port));
+ break;
+ }
+ case AF_INET6: {
+ struct sockaddr_in6 *s6 = (struct sockaddr_in6 *)s;
+ inet_ntop(AF_INET6, &s6->sin6_addr, dq, sizeof (dq));
+ fprintf(stdout, "sent %d bytes to [%s]:%d\\n",
+ bytes, dq, ntohs(s6->sin6_port));
+ break;
+ }
+ default:
+ fprintf(stdout, "sent %d bytes to unknown client\\n",
+ bytes);
+ break;
+ }
+}
+
+int
+main(int argc, char *argv[])
+{
+ struct addrinfo hints, *gair, *p;
+ int sfd, cfd;
+ int slen, wlen, rv;
+
+ if (argc != 3) {
+ fprintf(stderr, "%s <port> <message>\\n", argv[0]);
+ return (1);
+ }
+
+ slen = strlen(argv[2]);
+
+ memset(&hints, 0, sizeof (hints));
+ hints.ai_family = PF_UNSPEC;
+ hints.ai_socktype = SOCK_STREAM;
+ hints.ai_flags = AI_PASSIVE;
+
+ if ((rv = getaddrinfo(NULL, argv[1], &hints, &gair)) != 0) {
+ fprintf(stderr, "getaddrinfo() failed: %s\\n",
+ gai_strerror(rv));
+ return (1);
+ }
+
+ for (p = gair; p != NULL; p = p->ai_next) {
+ if ((sfd = socket(
+ p->ai_family,
+ p->ai_socktype,
+ p->ai_protocol)) == -1) {
+ perror("socket() failed");
+ continue;
+ }
+
+ if (bind(sfd, p->ai_addr, p->ai_addrlen) == -1) {
+ close(sfd);
+ perror("bind() failed");
+ continue;
+ }
+
+ break;
+ }
+
+ if (p == NULL) {
+ fprintf(stderr, "server failed to bind()\\n");
+ return (1);
+ }
+
+ freeaddrinfo(gair);
+
+ if (listen(sfd, 1024) != 0) {
+ perror("listen() failed");
+ return (1);
+ }
+
+ fprintf(stdout, "waiting for clients...\\n");
+
+ for (int times = 0; times < 5; times++) {
+ struct sockaddr_storage stor;
+ socklen_t alen = sizeof (stor);
+ struct sockaddr *addr = (struct sockaddr *)&stor;
+
+ if ((cfd = accept(sfd, addr, &alen)) == -1) {
+ perror("accept() failed");
+ continue;
+ }
+
+ wlen = 0;
+
+ do {
+ wlen += write(cfd, argv[2] + wlen, slen - wlen);
+ } while (wlen < slen);
+
+ logmsg(addr, wlen);
+
+ if (close(cfd) == -1) {
+ perror("close(cfd) failed");
+ }
+ }
+
+ if (close(sfd) == -1) {
+ perror("close(sfd) failed");
+ }
+
+ fprintf(stdout, "finished.\\n");
+
+ return (0);
+}
+$ ./server 8080 $'hello\\n'
+waiting for clients...
+sent 6 bytes to [::ffff:127.0.0.1]:59059
+sent 6 bytes to [::ffff:127.0.0.1]:47448
+sent 6 bytes to [::ffff:127.0.0.1]:54949
+sent 6 bytes to [::ffff:127.0.0.1]:55186
+sent 6 bytes to [::1]:62256
+finished.
+.Ed
+.Sh DIAGNOSTICS
+A socket operation may fail if:
+.Bl -tag -offset indent -width 16m
+.It Er EISCONN
+A
+.Fn connect
+operation was attempted on a socket on which a
+.Fn connect
+operation had already been performed.
+.It Er ETIMEDOUT
+A connection was dropped due to excessive retransmissions.
+.It Er ECONNRESET
+The remote peer forced the connection to be closed (usually because the remote
+machine has lost state information about the connection due to a crash).
+.It Er ECONNREFUSED
+The remote peer actively refused connection establishment (usually because no
+process is listening to the port).
+.It Er EADDRINUSE
+A
+.Fn bind
+operation was attempted on a socket with a network address/port pair that has
+already been bound to another socket.
+.It Er EADDRNOTAVAIL
+A
+.Fn bind
+operation was attempted on a socket with a network address for which no network
+interface exists.
+.It Er EACCES
+A
+.Fn bind
+operation was attempted with a
+.Dq reserved
+port number and the effective user ID of the process was not the privileged user.
+.It Er ENOBUFS
+The system ran out of memory for internal data structures.
+.El
+.Sh SEE ALSO
+.Xr svcs 1 ,
+.Xr ioctl 2 ,
+.Xr read 2 ,
+.Xr write 2 ,
+.Xr accept 3SOCKET ,
+.Xr bind 3SOCKET ,
+.Xr connect 3SOCKET ,
+.Xr getprotobyname 3SOCKET ,
+.Xr getsockopt 3SOCKET ,
+.Xr listen 3SOCKET ,
+.Xr send 3SOCKET ,
+.Xr inet 4P ,
+.Xr inet6 4P ,
+.Xr ip 4P ,
+.Xr ip6 4P ,
+.Xr smf 7 ,
+.Xr ndd 8 ,
+.Xr svcadm 8
+.Rs
+.%A "K. Ramakrishnan"
+.%A "S. Floyd"
+.%A "D. Black"
+.%T "The Addition of Explicit Congestion Notification (ECN) to IP"
+.%R "RFC 3168"
+.%D "September 2001"
+.Re
+.Rs
+.%A "M. Mathias"
+.%A "J. Mahdavi"
+.%A "S. Ford"
+.%A "A. Romanow"
+.%T "TCP Selective Acknowledgement Options"
+.%R "RFC 2018"
+.%D "October 1996"
+.Re
+.Rs
+.%A "S. Bellovin"
+.%T "Defending Against Sequence Number Attacks"
+.%R "RFC 1948"
+.%D "May 1996"
+.Re
+.Rs
+.%A "D. Borman"
+.%A "B. Braden"
+.%A "V. Jacobson"
+.%A "R. Scheffenegger, Ed."
+.%T "TCP Extensions for High Performance"
+.%R "RFC 7323"
+.%D "September 2014"
+.Re
+.Rs
+.%A "Jon Postel"
+.%T "Transmission Control Protocol - DARPA Internet Program Protocol Specification"
+.%R "RFC 793"
+.%C "Network Information Center, SRI International, Menlo Park, CA."
+.%D "September 1981"
+.Re
+.Sh NOTES
+The
+.Sy tcp
+service is managed by the service management facility,
+.Xr smf 7 ,
+under the service identifier
+.Sy svc:/network/initial:default .
+.Pp
+Administrative actions on this service, such as enabling, disabling, or
+requesting restart, can be performed using
+.Xr svcadm 8 .
+The service's
+status can be queried using the
+.Xr svcs 1
+command.
diff --git a/usr/src/man/man4p/udp.4p b/usr/src/man/man4p/udp.4p
new file mode 100644
index 0000000000..7dfb16c380
--- /dev/null
+++ b/usr/src/man/man4p/udp.4p
@@ -0,0 +1,259 @@
+'\" te
+.\" Copyright 2006 AT&T
+.\" Copyright (C) 2006, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH UDP 4P "Jul 4, 2006"
+.SH NAME
+udp, UDP \- Internet User Datagram Protocol
+.SH SYNOPSIS
+.LP
+.nf
+\fB#include <sys/socket.h>\fR
+.fi
+
+.LP
+.nf
+\fB#include <netinet/in.h>\fR
+.fi
+
+.LP
+.nf
+\fBs = socket(AF_INET, SOCK_DGRAM, 0);\fR
+.fi
+
+.LP
+.nf
+\fBs = socket(AF_INET6, SOCK_DGRAM, 0);\fR
+.fi
+
+.LP
+.nf
+\fBt = t_open("/dev/udp", O_RDWR);\fR
+.fi
+
+.LP
+.nf
+\fBt = t_open("/dev/udp6", O_RDWR);\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBUDP\fR is a simple datagram protocol which is layered directly above the
+Internet Protocol ("\fBIP\fR") or the Internet Protocol Version 6 ("IPv6").
+Programs may access \fBUDP\fR using the socket interface, where it supports
+the \fB\fR\fBSOCK_DGRAM\fR\fB\fR socket type, or using the Transport Level
+Interface ("\fBTLI\fR"), where it supports the connectionless (\fBT_CLTS\fR)
+service type.
+.sp
+.LP
+Within the socket interface, \fBUDP\fR is normally used with the
+\fBsendto()\fR, \fBsendmsg()\fR, \fBrecvfrom()\fR, and \fBrecvmsg()\fR calls
+(see \fBsend\fR(3SOCKET) and \fBrecv\fR(3SOCKET)). If the
+\fBconnect\fR(3SOCKET) call is used to fix the destination for future packets,
+then the \fBrecv\fR(3SOCKET) or \fBread\fR(2) and \fBsend\fR(3SOCKET) or
+\fBwrite\fR(2) calls may be used.
+.sp
+.LP
+\fBUDP\fR address formats are identical to those used by the Transmission
+Control Protocol ("\fBTCP\fR"). Like \fBTCP,\fR \fBUDP\fR uses a port number
+along with an \fBIP\fRor IPv6 address to identify the endpoint of
+communication. The \fBUDP\fR port number space is separate from the \fBTCP\fR
+port number space, that is, a \fBUDP\fR port may not be "connected" to a
+\fBTCP\fR port. The \fBbind\fR(3SOCKET) call can be used to set the local
+address and port number of a \fBUDP\fR socket. The local \fBIP\fR or IPv6
+address may be left unspecified in the \fBbind()\fR call by using the special
+value \fBINADDR_ANY\fR for \fBIP\fR, or the unspecified address (all zeroes)
+for IPv6. If the \fBbind()\fR call is not done, a local \fBIP\fR or IPv6
+address and port number will be assigned to the endpoint when the first packet
+is sent. Broadcast packets may be sent, assuming the underlying network
+supports this, by using a reserved "broadcast address" This address is network
+interface dependent. Broadcasts may only be sent by the privileged user.
+.sp
+.LP
+Note that no two UDP sockets can be bound to the same port unless the bound IP
+addresses are different. IPv4 \fBINADDR_ANY\fR and IPv6 unspecified addresses
+compare as equal to any IPv4 or IPv6 address. For example, if a socket is bound
+to \fBINADDR_ANY\fR or unspecified address and port X, no other socket can bind
+to port X, regardless of the binding address. This special consideration of
+\fBINADDR_ANY\fR and unspecified address can be changed using the
+\fBSO_REUSEADDR\fR socket option. If \fBSO_REUSEADDR\fR is set on a socket
+doing a bind, IPv4 \fBINADDR_ANY\fR and IPv6 unspecified address do not compare
+as equal to any IP address. This means that as long as the two sockets are not
+both bound to \fBINADDR_ANY\fR/unspecified address or the same IP address, the
+two sockets can be bound to the same port.
+.sp
+.LP
+If an application does not want to allow another socket using the
+\fBSO_REUSEADDR\fR option to bind to a port its socket is bound to, the
+application can set the socket level option \fBSO_EXCLBIND\fR on a socket. The
+option values of 0 and 1 represent enabling and disabling the option,
+respectively. Once this option is enabled on a socket, no other socket can be
+bound to the same port.
+.sp
+.LP
+IPv6 does not support broadcast addresses; their function is supported by IPv6
+multicast addresses.
+.sp
+.LP
+Options at the \fBIP\fR level may be used with \fBUDP\fR. See \fBip\fR(4P) or
+\fBip6\fR(4P). Additionally, there is one UDP-level option of interest to IPsec
+Key Management applications (see \fBipsec\fR(4P)and \fBpf_key\fR(4P)):
+.sp
+.ne 2
+.na
+\fBUDP_NAT_T_ENDPOINT\fR
+.ad
+.sp .6
+.RS 4n
+If this boolean option is set, datagrams sent via this socket will have a
+non-ESP marker inserted between the UDP header and the data. Likewise, inbound
+packets that match the endpoint's local-port will be demultiplexed between ESP
+or the endpoint itself if a non-ESP marker is present. This option is only
+available on IPv4 sockets (AF_INET), and the application must have sufficient
+privilege to use PF_KEY sockets to also enable this option.
+.RE
+
+.sp
+.LP
+There are a variety of ways that a \fBUDP\fR packet can be lost or corrupted,
+including a failure of the underlying communication mechanism. \fBUDP\fR
+implements a checksum over the data portion of the packet. If the checksum of a
+received packet is in error, the packet will be dropped with no indication
+given to the user. A queue of received packets is provided for each \fBUDP\fR
+socket. This queue has a limited capacity. Arriving datagrams which will not
+fit within its \fIhigh-water\fR capacity are silently discarded.
+.sp
+.LP
+\fBUDP\fR processes Internet Control Message Protocol ("\fBICMP\fR") and
+Internet Control Message Protocol Version 6 ("\fBICMP6\fR") error messages
+received in response to \fBUDP\fR packets it has sent. See \fBicmp\fR(4P) and
+\fBicmp6\fR(4P).
+.sp
+.LP
+\fBICMP\fR "source quench" messages are ignored. \fBICMP\fR "destination
+unreachable," "time exceeded" and "parameter problem" messages disconnect the
+socket from its peer so that subsequent attempts to send packets using that
+socket will return an error. \fBUDP\fR will not guarantee that packets are
+delivered in the order they were sent. As well, duplicate packets may be
+generated in the communication process.
+.sp
+.LP
+\fBICMP6\fR "destination unreachable" packets are ignored unless the enclosed
+code indicates that the port is not in use on the target host, in which case,
+the application is notified. \fBICMP6\fR "parameter problem" notifications are
+similarly passed upstream. All other \fBICMP6\fR messages are ignored.
+.SH SEE ALSO
+.sp
+.LP
+.BR read (2),
+.BR write (2),
+.BR bind (3SOCKET),
+.BR connect (3SOCKET),
+.BR recv (3SOCKET),
+.BR send (3SOCKET),
+.BR icmp (4P),
+.BR icmp6 (4P),
+.BR inet (4P),
+.BR inet6 (4P),
+.BR ip (4P),
+.BR ip6 (4P),
+.BR ipsec (4P),
+.BR pf_key (4P),
+.BR tcp (4P)
+.sp
+.LP
+Postel, Jon, \fIRFC 768, User Datagram Protocol\fR, Network Information Center,
+SRI International, Menlo Park, Calif., August 1980
+.sp
+.LP
+Huttunen, A., Swander, B., Volpe, V., DiBurro, L., Stenberg, \fIM., RFC 3948,
+UDP Encapsulation of IPsec ESP Packets\fR, The Internet Society, 2005.
+.SH DIAGNOSTICS
+.sp
+.LP
+A socket operation may fail if:
+.sp
+.ne 2
+.na
+\fB\fBEISCONN\fR\fR
+.ad
+.RS 17n
+A \fBconnect()\fR operation was attempted on a socket on which a
+\fBconnect()\fR operation had already been performed, and the socket could not
+be successfully disconnected before making the new connection.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEISCONN\fR\fR
+.ad
+.RS 17n
+A \fBsendto()\fR or \fBsendmsg()\fR operation specifying an address to which
+the message should be sent was attempted on a socket on which a \fBconnect()\fR
+operation had already been performed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBENOTCONN\fR\fR
+.ad
+.RS 17n
+A \fBsend()\fR or \fBwrite()\fR operation, or a \fBsendto()\fR or
+\fBsendmsg()\fR operation not specifying an address to which the message should
+be sent, was attempted on a socket on which a \fBconnect()\fR operation had not
+already been performed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEADDRINUSE\fR\fR
+.ad
+.RS 17n
+A \fBbind()\fR operation was attempted on a socket with a network address/port
+pair that has already been bound to another socket.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEADDRNOTAVAIL\fR\fR
+.ad
+.RS 17n
+A \fBbind()\fR operation was attempted on a socket with a network address for
+which no network interface exists.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEINVAL\fR\fR
+.ad
+.RS 17n
+A \fBsendmsg()\fR operation with a non-NULL \fBmsg_accrights\fR was attempted.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEACCES\fR\fR
+.ad
+.RS 17n
+A \fBbind()\fR operation was attempted with a "reserved" port number and the
+effective user \fBID\fR of the process was not the privileged user.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBENOBUFS\fR\fR
+.ad
+.RS 17n
+The system ran out of memory for internal data structures.
+.RE
+
diff --git a/usr/src/man/man4p/vxlan.4p b/usr/src/man/man4p/vxlan.4p
new file mode 100644
index 0000000000..d3b70b80da
--- /dev/null
+++ b/usr/src/man/man4p/vxlan.4p
@@ -0,0 +1,137 @@
+.\"
+.\" This file and its contents are supplied under the terms of the
+.\" Common Development and Distribution License ("CDDL"), version 1.0.
+.\" You may only use this file in accordance with the terms of version
+.\" 1.0 of the CDDL.
+.\"
+.\" A full copy of the text of the CDDL should have accompanied this
+.\" source. A copy of the CDDL is also available via the Internet at
+.\" http://www.illumos.org/license/CDDL.
+.\"
+.\"
+.\" Copyright 2018 Joyent, Inc.
+.\"
+.Dd December 20, 2018
+.Dt VXLAN 4P
+.Os
+.Sh NAME
+.Nm VXLAN ,
+.Nm vxlan
+.Nd Virtual eXtensible Local Area Network
+.Sh SYNOPSIS
+.In sys/vxlan.h
+.Sh DESCRIPTION
+.Nm
+(RFC 7348) is a network encapsulation protocol that is used by
+.Xr overlay 7
+devices.
+A payload, commonly an Ethernet frame, is placed inside of a
+UDP packet and prepended with an 8-byte
+.Nm
+header.
+.Pp
+The
+.Nm
+header contains two 32-bit words.
+The first word is an 8-bit flags field followed by 24 reserved bits.
+The second word is a 24-bit virtual network identifier followed by 8
+reserved bits.
+The virtual network identifier identifies a unique
+.Nm
+and
+is similar in concept to an IEEE 802.1Q VLAN identifier.
+.Pp
+The system provides access to
+.Nm
+through dladm overlays.
+See
+.Xr dladm 8
+and
+.Xr overlay 7
+for more information.
+.Pp
+The
+.In sys/vxlan.h
+header provides information for working with the
+.Nm
+protocol.
+The contents of this header are
+.Sy uncommitted .
+The header defines a structure that may be used to encode and decode a VXLAN
+header.
+It defines a packed structure type
+.Sy vxlan_hdr_t
+which represents the
+.Nm
+frame header and has the following members:
+.Bd -literal
+ uint32_t vxlan_flags; /* flags in upper 8 bits */
+ uint32_t vxlan_id; /* VXLAN ID in upper 24 bits */
+.Ed
+.Sh EXAMPLES
+.Sy Example 1
+Decoding a
+.Nm
+header
+.Pp
+The following example shows how to validate a
+.Nm header.
+For more information on this process, see RFC 7348.
+.Bd -literal -offset indent
+#include <sys/types.h>
+#include <netinet/in.h>
+#include <inttypes.h>
+#include <sys/vxlan.h>
+
+\&...
+
+/*
+ * Validate the following bytes as a VXLAN header. If valid, return
+ * 0 and store the VXLAN identifier in *vidp. Otherwise, return an
+ * error.
+ */
+int
+validate_vxlan(void *buf, int len, uint32_t *vidp)
+{
+ vxlan_hdr_t *hdr;
+
+ if (len < sizeof (vxlan_hdr_t))
+ return (EINVAL);
+
+ hdr = buf;
+
+ /*
+ * This verifies that the required flag is set; however, it does
+ * not look at any of the other bist that are reserved in the
+ * header. Software needs to evaluate how it should handle other
+ * bits being set in the vxlan_flags member.
+ */
+ if ((ntohl(hdr->vxlan_flags) & VXLAN_F_VDI) == 0)
+ return (EINVAL);
+
+ *vidp = ntohl(vxlan->vxlan_id) >> VXLAN_ID_SHIFT;
+
+ return (0);
+}
+.Ed
+.Sh STABILITY
+The contents of
+.In sys/vxlan.h
+are
+.Sy Uncommitted .
+.Sh SEE ALSO
+.Xr overlay 7 ,
+.Xr dladm 8
+.Rs
+.%A Mahalingam, M.
+.%A Dutt, D.
+.%A Duda, K.
+.%A Agarwal, P.
+.%A Kreeger L.
+.%A Sridhar, T.
+.%A Bursell, M.
+.%A C. Wright
+.%T RFC 7348, Virtual eXtensible Local Area Network (VXLAN): A Framework
+.%T for Overlaying Virtualized Layer 2 Networks over Layer 3 Networks
+.%D August 2014
+.Re
diff --git a/usr/src/man/man5/Intro.5 b/usr/src/man/man5/Intro.5
index 10bd8fa0b2..a23a5272c5 100644
--- a/usr/src/man/man5/Intro.5
+++ b/usr/src/man/man5/Intro.5
@@ -1,87 +1,50 @@
-'\" te
+.\"
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.\"
+.\"
+.\" Copyright 2015 Nexenta Systems, Inc. All rights reserved.
.\" Copyright 1989 AT&T
-.\" Copyright (C) 2008, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH INTRO 5 "Nov 17, 2008"
-.SH NAME
-Intro, intro \- introduction to miscellany
-.SH DESCRIPTION
-.sp
-.LP
-Among the topics presented in this section are:
-.sp
-.ne 2
-.na
-\fBStandards\fR
-.ad
-.RS 16n
-The POSIX (IEEE) Standards and the X/Open Specifications are described on the
-\fBstandards\fR page.
-.RE
-
-.sp
-.ne 2
-.na
-\fBEnvironments\fR
-.ad
-.RS 16n
-The user environment (\fBenviron\fR), the subset of the user environment that
-depends on language and cultural conventions (\fBlocale\fR), the large file
-compilation environment (\fBlfcompile\fR), and the transitional compilation
-environment (\fBlfcompile64\fR) are described.
-.RE
-
-.sp
-.ne 2
-.na
-\fBMacros\fR
-.ad
-.RS 16n
-The macros to format Reference Manual pages (\fBman\fR and \fBmansun\fR) as
-well as other text format macros (\fBme\fR, \fBmm\fR, and \fBms\fR) are
-described.
-.RE
-
-.sp
-.ne 2
-.na
-\fBCharacters\fR
-.ad
-.RS 16n
-Tables of character sets (\fBascii\fR, \fBcharmap\fR, \fBeqnchar\fR, and
-\fBiconv\fR), file format notation (\fBformats\fR), file name pattern matching
-(\fBfnmatch\fR), and regular expressions (\fBregex\fR and \fBregexp\fR) are
-presented.
-.RE
-
-.SH ACKNOWLEDGMENTS
-.sp
-.LP
-Sun Microsystems, Inc. gratefully acknowledges The Open Group for permission to
-reproduce portions of its copyrighted documentation. Original documentation
-from The Open Group can be obtained online at
-http://www.opengroup.org/bookstore/\&.
-.sp
-.LP
-The Institute of Electrical and Electronics Engineers and The Open Group, have
-given us permission to reprint portions of their documentation.
-.sp
-.LP
-In the following statement, the phrase ``this text'' refers to portions of the
-system documentation.
-.sp
-.LP
-Portions of this text are reprinted and reproduced in electronic form in the
-SunOS Reference Manual, from IEEE Std 1003.1, 2004 Edition, Standard for
-Information Technology -- Portable Operating System Interface (POSIX), The Open
-Group Base Specifications Issue 6, Copyright (C) 2001-2004 by the Institute of
-Electrical and Electronics Engineers, Inc and The Open Group. In the event of
-any discrepancy between these versions and the original IEEE and The Open Group
-Standard, the original IEEE and The Open Group Standard is the referee
-document. The original Standard can be obtained online at
-http://www.opengroup.org/unix/online.html\&.
-.sp
-.LP
-This notice shall appear on any product containing this material.
+.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved.
+.\"
+.Dd Mar 18, 2015
+.Dt INTRO 5
+.Os
+.Sh NAME
+.Nm Intro ,
+.Nm intro
+.Nd introduction to file formats and configurations
+.Sh DESCRIPTION
+This section outlines the formats of various files and configurations of
+various subsystems.
+The C structure declarations for the file formats are given where applicable.
+Usually, the headers containing these structure declarations can be found in the
+directories
+.Pa /usr/include
+or
+.Pa /usr/include/sys .
+For inclusion in C language programs, however, the syntax
+.Sy #include
+.Sm off
+<
+.Em filename.h No >
+.Sm on
+or
+.Sy #include
+.Sm off
+<
+.Sy sys/ Em filename.h No >
+.Sm on
+should be used.
diff --git a/usr/src/man/man5/Makefile b/usr/src/man/man5/Makefile
index 471bd3641e..d7718eedec 100644
--- a/usr/src/man/man5/Makefile
+++ b/usr/src/man/man5/Makefile
@@ -11,224 +11,285 @@
#
# Copyright 2011, Richard Lowe
-# Copyright (c) 2012 by Delphix. All rights reserved.
-# Copyright 2014 Nexenta Systems, Inc.
-# Copyright 2014 Garrett D'Amore <garrett@damore.org>
-# Copyright 2016, Joyent, Inc.
+# Copyright 2015, Joyent, Inc.
+# Copyright 2018 Nexenta Systems, Inc.
# Copyright 2018 Gary Mills
-# Copyright 2019 OmniOS Community Edition (OmniOSce) Association.
-# Copyright 2019 Peter Tribble
+# Copyright 2021 OmniOS Community Edition (OmniOSce) Association.
#
include $(SRC)/Makefile.master
MANSECT= 5
-_MANFILES= Intro.5 \
- acl.5 \
- ad.5 \
- ascii.5 \
- attributes.5 \
- audit_binfile.5 \
- audit_remote.5 \
- audit_syslog.5 \
- brands.5 \
- byteorder.5 \
- cancellation.5 \
- charmap.5 \
- condition.5 \
- crypt_bsdbf.5 \
- crypt_bsdmd5.5 \
- crypt_sha256.5 \
- crypt_sha512.5 \
- crypt_sunmd5.5 \
- crypt_unix.5 \
- device_clean.5 \
- dhcp.5 \
- environ.5 \
- epoll.5 \
- eqn.5 \
- eqnchar.5 \
- eventfd.5 \
- extendedFILE.5 \
- filesystem.5 \
- fnmatch.5 \
- formats.5 \
- fsattr.5 \
- grub.5 \
- gss_auth_rules.5 \
- hal.5 \
- iconv.5 \
- iconv_unicode.5 \
- ieee802.3.5 \
- ieee802.11.5 \
- inotify.5 \
- ipfilter.5 \
- isalist.5 \
- kerberos.5 \
- krb5_auth_rules.5 \
- krb5envvar.5 \
- largefile.5 \
- lf64.5 \
- lfcompile.5 \
- lfcompile64.5 \
- locale.5 \
- lx.5 \
- man.5 \
- mandoc_char.5 \
- mandoc_roff.5 \
- mansun.5 \
- mdoc.5 \
- me.5 \
- mech_spnego.5 \
- mm.5 \
- ms.5 \
- mutex.5 \
- nfssec.5 \
- overlay.5 \
- pam_allow.5 \
- pam_authtok_check.5 \
- pam_authtok_get.5 \
- pam_authtok_store.5 \
- pam_deny.5 \
- pam_dhkeys.5 \
- pam_dial_auth.5 \
- pam_krb5.5 \
- pam_krb5_migrate.5 \
- pam_ldap.5 \
- pam_list.5 \
- pam_passwd_auth.5 \
- pam_rhosts_auth.5 \
- pam_roles.5 \
- pam_sample.5 \
- pam_smb_passwd.5 \
- pam_smbfs_login.5 \
- pam_timestamp.5 \
- pam_tsol_account.5 \
- pam_unix_account.5 \
- pam_unix_auth.5 \
- pam_unix_cred.5 \
- pam_unix_session.5 \
- pkcs11_kernel.5 \
- pkcs11_softtoken.5 \
- pkcs11_tpm.5 \
- privileges.5 \
- prof.5 \
- rbac.5 \
- regex.5 \
- regexp.5 \
- resource_controls.5 \
- security-flags.5 \
- smf.5 \
- smf_bootstrap.5 \
- smf_method.5 \
- smf_restarter.5 \
- smf_security.5 \
- smf_template.5 \
- standards.5 \
- sticky.5 \
- tbl.5 \
- tecla.5 \
- term.5 \
- threads.5 \
- timerfd.5 \
- trusted_extensions.5 \
- vgrindefs.5 \
- zones.5 \
- zpool-features.5
-
-sparc_MANFILES=
-
-i386_MANFILES= beastie.4th.5 \
- brand.4th.5 \
- check-password.4th.5 \
- color.4th.5 \
- delay.4th.5 \
- gptzfsboot.5 \
- isoboot.5 \
- loader.5 \
- loader.4th.5 \
- menu.4th.5 \
- menusets.4th.5 \
- pxeboot.5 \
- version.4th.5
-
-MANLINKS= ANSI.5 \
- C++.5 \
- C.5 \
- CSI.5 \
- ISO.5 \
- MT-Level.5 \
- POSIX.1.5 \
- POSIX.2.5 \
- POSIX.5 \
- RBAC.5 \
- SUS.5 \
- SUSv2.5 \
- SUSv3.5 \
- SVID.5 \
- SVID3.5 \
- XNS.5 \
- XNS4.5 \
- XNS5.5 \
- XPG.5 \
- XPG3.5 \
- XPG4.5 \
- XPG4v2.5 \
- advance.5 \
- architecture.5 \
- availability.5 \
- compile.5 \
- endian.5 \
- intro.5 \
- pthreads.5 \
- stability.5 \
- standard.5 \
- step.5 \
- teclarc.5
+_MANFILES= Intro.5 \
+ NISLDAPmapping.5 \
+ a.out.5 \
+ admin.5 \
+ alias.5 \
+ aliases.5 \
+ au.5 \
+ audit.log.5 \
+ audit_class.5 \
+ audit_event.5 \
+ auth_attr.5 \
+ autofs.5 \
+ bart_manifest.5 \
+ bart_rules.5 \
+ bootparams.5 \
+ cardbus.5 \
+ compver.5 \
+ contents.5 \
+ contract.5 \
+ copyright.5 \
+ core.5 \
+ crypt.conf.5 \
+ crypto_certs.5 \
+ ctf.5 \
+ d_passwd.5 \
+ dacf.conf.5 \
+ dat.conf.5 \
+ default_fs.5 \
+ defaultdomain.5 \
+ defaultrouter.5 \
+ depend.5 \
+ device_allocate.5 \
+ device_contract.5 \
+ device_maps.5 \
+ devices.5 \
+ dfstab.5 \
+ dhcp_inittab.5 \
+ dialups.5 \
+ dir_ufs.5 \
+ driver.conf.5 \
+ ethers.5 \
+ exec_attr.5 \
+ fdi.5 \
+ format.dat.5 \
+ fspec.5 \
+ fstypes.5 \
+ ftp.5 \
+ ftpusers.5 \
+ fx_dptbl.5 \
+ gateways.5 \
+ group.5 \
+ gsscred.conf.5 \
+ hba.conf.5 \
+ holidays.5 \
+ hosts.5 \
+ hosts.equiv.5 \
+ hosts_access.5 \
+ hosts_options.5 \
+ ib.5 \
+ ike.config.5 \
+ ike.preshared.5 \
+ ipf.5 \
+ ipmon.5 \
+ ipnat.5 \
+ ippool.5 \
+ inet_type.5 \
+ inetd.conf.5 \
+ init.5 \
+ init.d.5 \
+ inittab.5 \
+ ipaddrsel.conf.5 \
+ ipnodes.5 \
+ issue.5 \
+ kadm5.acl.5 \
+ kdc.conf.5 \
+ keytables.5 \
+ krb5.conf.5 \
+ ldapfilter.conf.5 \
+ ldapsearchprefs.conf.5 \
+ ldaptemplates.conf.5 \
+ logadm.conf.5 \
+ logindevperm.5 \
+ loginlog.5 \
+ magic.5 \
+ mailer.conf.5 \
+ mech.5 \
+ mnttab.5 \
+ mpapi.conf.5 \
+ nca.if.5 \
+ ncad_addr.5 \
+ ncakmod.conf.5 \
+ ncalogd.conf.5 \
+ ncaport.conf.5 \
+ ndmp.5 \
+ ndpd.conf.5 \
+ netconfig.5 \
+ netgroup.5 \
+ netid.5 \
+ netmasks.5 \
+ netrc.5 \
+ networks.5 \
+ nfs.5 \
+ nfslog.conf.5 \
+ nfssec.conf.5 \
+ nodename.5 \
+ nologin.5 \
+ note.5 \
+ notrouter.5 \
+ nscd.conf.5 \
+ nsmbrc.5 \
+ nss.5 \
+ nsswitch.conf.5 \
+ overlay_files.5 \
+ packingrules.5 \
+ pam.conf.5 \
+ passwd.5 \
+ path_to_inst.5 \
+ pci.5 \
+ phones.5 \
+ pkginfo.5 \
+ pkgmap.5 \
+ policy.conf.5 \
+ power.conf.5 \
+ printers.5 \
+ printers.conf.5 \
+ priv_names.5 \
+ proc.5 \
+ process.5 \
+ prof_attr.5 \
+ profile.5 \
+ project.5 \
+ protocols.5 \
+ prototype.5 \
+ pseudo.5 \
+ publickey.5 \
+ queuedefs.5 \
+ rcmscript.5 \
+ remote.5 \
+ resolv.conf.5 \
+ rmtab.5 \
+ rpc.5 \
+ rt_dptbl.5 \
+ sasl_appname.conf.5 \
+ scsi.5 \
+ securenets.5 \
+ sendmail.5 \
+ service_bundle.5 \
+ service_provider.conf.5 \
+ services.5 \
+ shadow.5 \
+ sharetab.5 \
+ shells.5 \
+ slp.conf.5 \
+ slpd.reg.5 \
+ smb.5 \
+ smbautohome.5 \
+ smhba.conf.5 \
+ sock2path.d.5 \
+ space.5 \
+ sulog.5 \
+ syslog.conf.5 \
+ system.5 \
+ term.5 \
+ terminfo.5 \
+ timezone.5 \
+ tnf_kernel_probes.5 \
+ ts_dptbl.5 \
+ ttydefs.5 \
+ ttysrch.5 \
+ ufsdump.5 \
+ updaters.5 \
+ user_attr.5 \
+ utmp.5 \
+ utmpx.5 \
+ vfstab.5 \
+ warn.conf.5 \
+ ypfiles.5 \
+ yppasswdd.5 \
+ ypserv.5 \
+ zoneinfo.5
+
+sparc_MANFILES= sbus.5
+
+i386_MANFILES= bhyve_config.5 \
+ loader.conf.5 \
+ sysbus.5
+
+_MANLINKS= addresses.5 \
+ devid_cache.5 \
+ devname_cache.5 \
+ dir.5 \
+ dumpdates.5 \
+ fbtab.5 \
+ forward.5 \
+ fs.5 \
+ hosts.allow.5 \
+ hosts.deny.5 \
+ intro.5 \
+ ipf.conf.5 \
+ ipf6.conf.5 \
+ ipmon.conf.5 \
+ ipnat.conf.5 \
+ ippool.conf.5 \
+ mdi_ib_cache.5 \
+ mdi_scsi_vhci_cache.5 \
+ pci_unitaddr_persistent.5 \
+ pcie.5 \
+ qop.5 \
+ rhosts.5 \
+ TIMEZONE.5 \
+ sendmail.cf.5 \
+ snapshot_cache.5 \
+ submit.cf.5 \
+ wtmp.5 \
+ wtmpx.5
+
+i386_MANLINKS= isa.5
MANFILES= $(_MANFILES) $($(MACH)_MANFILES)
+MANLINKS= $(_MANLINKS) $($(MACH)_MANLINKS)
+
+intro.5 := LINKSRC = Intro.5
+
+addresses.5 := LINKSRC = aliases.5
+forward.5 := LINKSRC = aliases.5
+
+fs.5 := LINKSRC = default_fs.5
+
+devid_cache.5 := LINKSRC = devices.5
+devname_cache.5 := LINKSRC = devices.5
+mdi_ib_cache.5 := LINKSRC = devices.5
+mdi_scsi_vhci_cache.5 := LINKSRC = devices.5
+pci_unitaddr_persistent.5 := LINKSRC = devices.5
+snapshot_cache.5 := LINKSRC = devices.5
+
+dir.5 := LINKSRC = dir_ufs.5
+
+rhosts.5 := LINKSRC = hosts.equiv.5
+
+TIMEZONE.5 := LINKSRC = init.5
+
+hosts.allow.5 := LINKSRC = hosts_access.5
+hosts.deny.5 := LINKSRC = hosts_access.5
+
+ipf.conf.5 := LINKSRC = ipf.5
+ipf6.conf.5 := LINKSRC = ipf.5
+
+ipmon.conf.5 := LINKSRC = ipmon.5
+
+ipnat.conf.5 := LINKSRC = ipnat.5
+
+ippool.conf.5 := LINKSRC = ippool.5
+
+fbtab.5 := LINKSRC = logindevperm.5
+
+qop.5 := LINKSRC = mech.5
+
+pcie.5 := LINKSRC = pci.5
+
+sendmail.cf.5 := LINKSRC = sendmail.5
+submit.cf.5 := LINKSRC = sendmail.5
+
+isa.5 := LINKSRC = sysbus.5
+
+dumpdates.5 := LINKSRC = ufsdump.5
+
+wtmp.5 := LINKSRC = utmp.5
-intro.5 := LINKSRC = Intro.5
-
-CSI.5 := LINKSRC = attributes.5
-MT-Level.5 := LINKSRC = attributes.5
-architecture.5 := LINKSRC = attributes.5
-availability.5 := LINKSRC = attributes.5
-stability.5 := LINKSRC = attributes.5
-standard.5 := LINKSRC = attributes.5
-
-endian.5 := LINKSRC = byteorder.5
-
-RBAC.5 := LINKSRC = rbac.5
-
-advance.5 := LINKSRC = regexp.5
-compile.5 := LINKSRC = regexp.5
-step.5 := LINKSRC = regexp.5
-
-ANSI.5 := LINKSRC = standards.5
-C++.5 := LINKSRC = standards.5
-C.5 := LINKSRC = standards.5
-ISO.5 := LINKSRC = standards.5
-POSIX.1.5 := LINKSRC = standards.5
-POSIX.2.5 := LINKSRC = standards.5
-POSIX.5 := LINKSRC = standards.5
-SUS.5 := LINKSRC = standards.5
-SUSv2.5 := LINKSRC = standards.5
-SUSv3.5 := LINKSRC = standards.5
-SVID.5 := LINKSRC = standards.5
-SVID3.5 := LINKSRC = standards.5
-XNS.5 := LINKSRC = standards.5
-XNS4.5 := LINKSRC = standards.5
-XNS5.5 := LINKSRC = standards.5
-XPG.5 := LINKSRC = standards.5
-XPG3.5 := LINKSRC = standards.5
-XPG4.5 := LINKSRC = standards.5
-XPG4v2.5 := LINKSRC = standards.5
-
-teclarc.5 := LINKSRC = tecla.5
-
-pthreads.5 := LINKSRC = threads.5
+wtmpx.5 := LINKSRC = utmpx.5
.KEEP_STATE:
diff --git a/usr/src/man/man5/NISLDAPmapping.5 b/usr/src/man/man5/NISLDAPmapping.5
new file mode 100644
index 0000000000..15801e6216
--- /dev/null
+++ b/usr/src/man/man5/NISLDAPmapping.5
@@ -0,0 +1,1497 @@
+'\" te
+.\" Copyright (C) 2006, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH NISLDAPMAPPING 5 "November 22, 2021"
+.SH NAME
+NISLDAPmapping \- mapping file used by the NIS server components
+.SH SYNOPSIS
+.nf
+\fB/var/yp/NISLDAPmapping\fR
+.fi
+
+.SH DESCRIPTION
+The \fBNISLDAPmapping\fR file specifies the mapping between NIS map entries and
+equivalent Directory Information Tree (DIT) entries.
+.sp
+.LP
+The presence of \fB/var/yp/NISLDAPmapping\fR on a NIS master server causes that
+server to obtain NIS data from LDAP. See \fBypserv\fR(5). If
+\fB/var/yp/NISLDAPmapping\fR is present but the connection configuration file
+that is defined in \fB/etc/default/ypserv\fR cannot be found, a warning is
+logged. See \fBypserv\fR(8).
+.sp
+.LP
+NIS slave servers always obtain their data from a NIS master server, whether or
+not that server is getting data from LDAP, and ignore the
+\fB/var/yp/NISLDAPmapping\fR file.
+.sp
+.LP
+A simple \fBNISLDAPmapping\fR file is created using \fBinityp2l\fR(8). You can
+customize your \fBNISLDAPmapping\fR file as you require.
+.sp
+.LP
+Each attribute defined below can be specified
+in \fB/var/yp/NISLDAPmapping\fR or as an LDAP attribute. If both are
+specified, then the attribute in \fB/var/yp/NISLDAPmapping\fR (including empty
+values) takes precedence.
+.sp
+.LP
+A continuation is indicated by a '\e' (backslash) in the last position,
+immediately before the newline of a line. Characters are escaped, that is,
+exempted from special interpretation, when preceded by a backslash character.
+.sp
+.LP
+The '#' (hash) character starts a comment. White space is either ASCII space or
+a horizontal tab. In general, lines consist of optional white space, an
+attribute name, at least one white space character, and an attribute value.
+.SH EXTENDED DESCRIPTION
+.SS "File Syntax"
+Repeated fields, with separator characters, are described by the following
+syntax:
+.sp
+.ne 2
+.na
+\fBOne or more entries\fR
+.ad
+.RS 24n
+entry:entry:entry
+.sp
+.in +2
+.nf
+entry[":"...]
+.fi
+.in -2
+
+.RE
+
+.sp
+.ne 2
+.na
+\fBZero or more entries\fR
+.ad
+.RS 24n
+.sp
+.in +2
+.nf
+[entry":"...]
+.fi
+.in -2
+
+.RE
+
+.SS "Attributes"
+Attributes generally apply to one more more NIS maps. Map names can be
+specified either on their own, that is in \fBpasswd.byname\fR, in which case
+they apply to all domains, or for individual NIS domains, for example, in
+\fBpasswd.byname,example.sun.uk\fR. Where a map is mentioned in more than one
+attribute, both versions are applied. If any parts of the attributes are in
+conflict, the domain specific version takes precedence over the non-domain
+specific version.
+.sp
+.LP
+Each domain specific attributes must appear in \fBNISLDAPmapping\fR before any
+related non-domain specific attribute. If non-domain specific attributes appear
+first, behavior may be unpredictable. Errors are logged when non-domain
+specific attributes are found first.
+.sp
+.LP
+You can associate a group of map names with a \fBdatabaseId\fR. In effect, a
+macro is expanded to the group of names. Use this mechanism where the same
+group of names is used in many attributes or where domain specific map names
+are used. Then, you can make any changes to the domain name in one place.
+.sp
+.LP
+Unless otherwise noted, all elements of the syntaxes below may be surrounded by
+white space. Separator characters and white space must be escaped if they are
+part of syntactic elements.
+.sp
+.LP
+The following attributes are recognized.
+.sp
+.ne 2
+.na
+\fB\fBnisLDAPdomainContext\fR\fR
+.ad
+.sp .6
+.RS 4n
+The context to use for a NIS domain.
+.sp
+The syntax for \fBnisLDAPdomainContext\fR is:
+.sp
+.in +2
+.nf
+NISDomainName ":" context
+.fi
+.in -2
+
+The following is an example of the \fBnisLDAPdomainContext\fR attribute:
+.sp
+.in +2
+.nf
+domain.one : dc=site, dc=example, dc=com
+.fi
+.in -2
+
+The mapping file should define the context for each domain before any other
+attribute makes use of the \fBNISDomainName\fR specified for that domain.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnisLDAPyppasswddDomains\fR\fR
+.ad
+.sp .6
+.RS 4n
+Lists the domains for which password changes should be made. NIS password
+change requests do not specify the domains in which any given password should
+be changed. In traditional NIS this information is effectively hard coded in
+the NIS makefile.
+.sp
+The syntax for the \fBnisLDAPyppasswddDomains\fR attribute is:
+.sp
+.in +2
+.nf
+domainname
+.fi
+.in -2
+
+If there are multiple domains, use multiple \fBnisLDAPyppasswddDomain\fR
+entries with one domainname per entry.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnisLDAPdatabaseIdMapping\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets up an alias for a group of NIS map names. There is no default value.
+.sp
+The syntax for the \fBnisLDAPdatabaseIdMapping\fR attribute is:
+.sp
+.in +2
+.nf
+databaseId ":" ["["indexlist"]"] mapname[" "...]
+.fi
+.in -2
+
+where
+.sp
+.in +2
+.nf
+databaseId = Label identifying a (subset of a) NIS
+ object for mapping purposes.
+indexlist = fieldspec[","...]
+fieldspec = fieldname "=" fieldvalue
+fieldname = The name of a entry field as defined in
+ nisLDAPnameFields.
+fieldvalue = fieldvaluestring | \e" fieldvaluestring \e"
+.fi
+.in -2
+
+\fBindexlist\fR is used for those cases where it is necessary to select a
+subset of entries from a NIS map. The subset are those NIS entries that match
+the \fBindexlist\fR. If there are multiple specifications indexed for a
+particular NIS map, they are tried in the order retrieved until one matches.
+Note that retrieval order usually is unspecified for multi-valued LDAP
+attributes. Hence, if using indexed specifications when
+\fBnisLDAPdatabaseIdMapping\fR is retrieved from LDAP, make sure that the
+subset match is unambiguous.
+.sp
+If the \fBfieldvaluestring\fR contains white space or commas, it must either be
+surrounded by double quotes, or the special characters must be escaped.
+Wildcards are allowed in the \fBfieldvaluestring\fR. See Wildcards.
+.sp
+To associate the \fBpasswd.byname\fR and \fBpasswd.byuid\fR maps with the
+\fBpasswd databaseId\fR:
+.sp
+.in +2
+.nf
+passwd:passwd.byname passwd.byuid
+.fi
+.in -2
+
+The \fBpasswd\fR and \fBpasswd.adjunct\fR \fBdatabaseIds\fR receive special
+handling. In addition to its normal usage, \fBpasswd\fR defines which maps
+\fByppasswdd\fR is to update when a \fBpasswd\fR is changed. In addition to its
+normal usage \fBpasswd.adjunct\fR defines which maps \fByppasswdd\fR is to
+update when an adjunct \fBpasswd\fR is changed.
+.sp
+You may not alias a single map name to a different name, as the results are
+unpredictable.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnisLDAPentryTtl\fR\fR
+.ad
+.sp .6
+.RS 4n
+Establish TTLs for NIS entries derived from LDAP.
+.sp
+The syntax for the \fBnisLDAPentryTtl\fR attribute is:
+.sp
+.in +2
+.nf
+mapName[" "...]":"
+ initialTTLlo ":" initialTTLhi ":" runningTTL
+.fi
+.in -2
+
+where
+.sp
+.ne 2
+.na
+\fB\fBinitialTTLlo\fR\fR
+.ad
+.RS 16n
+The lower limit for the initial \fBTTL\fR (in seconds) for data read from LDAP
+when the \fBypserv\fR starts. If the \fBinitialTTLhi\fR also is specified, the
+actual \fBinitialTTL\fR will be randomly selected from the interval
+\fBinitialTTLlo\fR to \fBinitialTTLhi\fR, inclusive. Leaving the field empty
+yields the default value of 1800 seconds.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBinitialTTLhi\fR\fR
+.ad
+.RS 16n
+The upper limit for the initial TTL. If left empty, defaults to 5400 seconds.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrunningTTL\fR\fR
+.ad
+.RS 16n
+The TTL (in seconds) for data retrieved from LDAP while the ypserv is running.
+Leave the field empty to obtain the default value of 3600 seconds.
+.RE
+
+If there is no specification of \fBTTL\fRs for a particular map, the default
+values are used.
+.sp
+If the \fBinitialTTLlo\fR and \fBinitialTTLhi\fR have the same value, the
+effect will be that all data known to the \fBypserv\fR at startup times out at
+the same time. Depending on NIS data lookup patterns, this could cause spikes
+in ypserv-to-LDAP traffic. In order to avoid that, you can specify different
+\fBinitialTTLlo\fR and \fBinitialTTLhi\fR values, and obtain a spread in
+initial TTLs.
+.sp
+The following is an example of the \fBnisLDAPentryTtl\fR attribute used to
+specify that entries in the NIS host maps read from LDAP should be valid for
+four hours. When \fBypserv\fR restarts, the disk database entries are valid for
+between two and three hours.
+.sp
+.in +2
+.nf
+hosts.byname hosts.byaddr:7200:10800:14400
+.fi
+.in -2
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnisLDAPobjectDN\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the connection between a group of NIS maps and the LDAP directory.
+This attribute also defines the 'order' of the NIS maps. When NIS maps are bulk
+copied to or from the DIT, they are processed in the same order as related
+\fBnisLDAPobjectDN\fR attributes appear in \fB/var/yp/NISLDAPmapping.\fR
+.sp
+The syntax for the \fBnisLDAPobjectDN\fR\ attribute is:
+.sp
+.in +2
+.nf
+mapName[" "...] ":" objectDN *( ";" objectDN )
+.fi
+.in -2
+
+where
+.sp
+.in +2
+.nf
+objectDN = readObjectSpec [":"[writeObjectSpec]]
+readObjectSpec = [baseAndScope [filterAttrValList]]
+writeObjectSpec = [baseAndScope [attrValList]]
+baseAndScope = [baseDN] ["?" [scope]]
+filterAttrValList = ["?" [filter | attrValList]]]
+scope = "base" | "one" | "sub"
+attrValList = attribute "=" value
+ *("," attribute "=" value)
+.fi
+.in -2
+
+The \fBbaseDN\fR defaults to the value of the \fBnisLDAPdomainContext\fR
+attribute for the accessed domain. If the \fBbaseDN\fR ends in a comma, the
+\fBnisLDAPdomainContext\fR value is appended.
+.sp
+\fBscope\fR defaults to one. \fBscope\fR has no meaning and is ignored in a
+\fBwriteObjectSpec\fR.
+.sp
+The \fBfilter\fR is an LDAP search filter and has no default value.
+.sp
+The \fBattrValList\fR is a list of attribute and value pairs. There is no
+default value.
+.sp
+As a convenience, if an \fBattrValList\fR is specified in a
+\fBreadObjectSpec\fR, it is converted to a search filter by ANDing together the
+attributes and the values. For example, the attribute and value list:
+.sp
+.in +2
+.nf
+objectClass=posixAccount,objectClass=shadowAccount
+.fi
+.in -2
+
+is converted to the filter:
+.sp
+.in +2
+.nf
+(&(objectClass=posixAccount)\e
+ (objectClass=shadowAccount))
+.fi
+.in -2
+
+Map entries are mapped by means of the relevant mapping rules in the
+\fBnisLDAPnameFields\fR and \fBnisLDAPattributeFromField\fR .
+.sp
+If a \fBwriteObjectSpec\fR is omitted, the effect is one of the following:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+If there is no trailing colon after the \fBreadObjectSpec\fR, then there is no
+write at all.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+If there is a colon after the \fBreadObjectSpec\fR, then \fBwriteObjectSpec\fR
+equals \fBreadObjectSpec\fR.
+.RE
+The following is an example of a \fBnisLDAPobjectDN\fR attribute declaration
+that gets the \fBhosts.byaddr\fR map entries from the \fBou=Hosts\fR container
+under the default search base and writes to the same place.
+.sp
+.in +2
+.nf
+hosts.byaddr:ou=Hosts,?one?objectClass=ipHost:
+.fi
+.in -2
+
+The following is an example of a \fBnisLDAPobjectDN\fR attribute declaration
+that obtains \fBpasswd\fR map entries from the \fBou=People\fR containers under
+the default search base, and also from \fBdc=another,dc=domain\fR.
+.sp
+.in +2
+.nf
+passwd:ou=People,?one?\e
+ objectClass=shadowAccount,\e
+ objectClass=posixAccount:;\e
+ ou=People,dc=another,dc=domain,?one?\e
+ objectClass=shadowAccount,\e
+ objectClass=posixAccount
+.fi
+.in -2
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnisLDAPnameFields\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the content of entries in a NIS map and how they should be broken
+into named fields. \fBnisLDAPnameFields\fR is required because NIS
+maps do not store information in named fields.
+.sp
+The syntax for the \fBnisLDAPnameFields\fR attribute is as follows:
+.sp
+.in +2
+.nf
+"nisLDAPnameFields" mapName ":" "(" matchspec "," fieldNames ")"
+fieldName = nameOrArrayName[","...]
+nameOrArrayName = Name of field or 'array' of repeated fields.
+matchspec = \e" formatString \e"
+.fi
+.in -2
+
+\fBformatString\fR may contain a list of \fB%s\fR and \fB%a\fR elements each
+of which represents a single named field or a list of repeated fields. A
+\fB%a\fR field is interpreted as an IPv4 address or an IPv6 address in
+preferred format. If an IPv6 address in non preferred format is found, then it
+is converted and a warning is logged.
+.sp
+Where there are a list of repeated fields, the entire list is stored as one
+entry. The fields are broken up into individual entries, based on the internal
+separator, at a latter stage. Other characters represent separators which must
+be present. Any separator, including whitespace, specified by the
+\fBformatString\fR, may be surrounded by a number of whitespace and tab
+characters. The whitespace and tab characters are ignored.
+.sp
+Regardless of the content of this entry some \fBfieldNames\fR are reserved:
+.sp
+.ne 2
+.na
+\fB\fBrf_key\fR\fR
+.ad
+.RS 18n
+The DBM key value.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrf_ipkey\fR\fR
+.ad
+.RS 18n
+The DBM key value handled as an IP address. See the discussion of \fB%a\fR
+fields.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrf_comment\fR\fR
+.ad
+.RS 18n
+Everything following the first occurrence of a symbol. \fBrf_comment\fR is
+defined by \fBnisLDAPcommentChar\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrf_domain\fR\fR
+.ad
+.RS 18n
+The name of the domain in which the current NIS operation is being carried out.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrf_searchipkey\fR\fR
+.ad
+.RS 18n
+The \fBrf_searchkey\fR value handled as an IP address. See the discussion of
+\fB%a\fR fields above.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrf_searchkey\fR\fR
+.ad
+.RS 18n
+See the description under \fBnisLDAPattributeFromField\fR below.
+.RE
+
+For example, the \fBrpc.bynumber\fR map has the format:
+.sp
+.in +2
+.nf
+name number alias[" "...]
+.fi
+.in -2
+
+The NIS to LDAP system is instructed to break it into a name, a number, and an
+array of alias field by the following entry in the mapping file:
+.sp
+.in +2
+.nf
+nisLDAPnameFields rpc.bynumber : \e
+ "%s %s %s", name,number,aliases)
+.fi
+.in -2
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnisLDAPsplitFields\fR\fR
+.ad
+.sp .6
+.RS 4n
+Defines how a field, or list of fields, named by \fBnisLDAPnameFields\fR is
+split into subfields. The original field is compared with each line of this
+attribute until one matches. When a match is found named subfields are
+generated. In latter operations subfield names can be used in the same way as
+other field names.
+.sp
+The syntax for the \fBnisLDAPsplitFields\fR attribute is as follows:
+.sp
+.in +2
+.nf
+"nisLDAPsplitFields" fieldName ":" splitSpec[","...]
+splitSpec = "(" matchspec "," subFieldNames ")"
+fieldName = Name of a field from nisLDAPnameFields
+subFieldNames = subFieldname[","...]
+matchspec = \e" formatString \e"
+.fi
+.in -2
+
+The netgroup \fBmemberTriples\fR can have format \fB(host, user, domain)\fR or
+\fBgroupname\fR. The format is specified by the attribute:
+.sp
+.in +2
+.nf
+nisLDAPsplitField memberTriple: \e
+ ("(%s,%s,%s)", host, user, domain) , \e
+ ("%s", group)
+.fi
+.in -2
+
+Later operations can then use field names \fBhost\fR, \fBuser\fR, \fBdomain\fR,
+\fBgroup\fR or \fBmemberTriple\fR. Because lines are processed in order, if
+\fBhost\fR, \fBuser\fR and \fBdomain\fR are found, \fBgroup\fR will not be
+generated.
+.sp
+Several maps and databaseIds may contain fields that are to be split in the
+same way. As a consequence, the names of fields to be split must be unique
+across all maps and databaseIds.
+.sp
+Only one level of splitting is supported. That is, a subfield cannot be split
+into further subfields.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnisLDAPrepeatedFieldSeparators\fR\fR
+.ad
+.sp .6
+.RS 4n
+Where there is a list of repeated, splittable fields,
+\fBnisLDAPrepeatedFieldSeparators\fR specifies which characters separate
+instances of the splittable field.
+.sp
+The syntax for the \fBnisLDAPrepeatedFieldSeparators\fR attribute is as
+follows:
+.sp
+.in +2
+.nf
+"nisLDAPrepeatedFieldSeparators" fieldName \e"sepChar[...]\e"
+sepChar = A separator character.
+.fi
+.in -2
+
+The default value is space or tab. If repeated splittable fields are adjacent,
+that is, there is no separating character, then the following should be
+specified:
+.sp
+.in +2
+.nf
+nisLDAPrepeatedFieldSeparators netIdEntry: ""
+.fi
+.in -2
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnisLDAPcommentChar\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies which character represents the start of the special comment field in
+a given NIS map. If this attribute is not present then the default comment
+character \fB#\fR is used.
+.sp
+To specify that a map uses an asterisk to mark the start of comments.
+.sp
+.in +2
+.nf
+nisLDAPcommentChar mapname : '*'
+.fi
+.in -2
+
+If a map cannot contain comments, then the following attribute should be
+specified.
+.sp
+.in +2
+.nf
+nisLDAPcommentChar mapname : ''
+.fi
+.in -2
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnisLDAPmapFlags\fR\fR
+.ad
+.sp .6
+.RS 4n
+ Indicates if \fBYP_INTERDOMAIN\fR or \fBYP_SECURE\fR entries should be created
+in a map. Using \fBnisLDAPmapFlags\fR is equivalent to running
+\fBmakedbm\fR(8) with the \fB-b\fR or the \fB-s\fR option. When a map is
+created from the contents of the DIT, the mapping file attribute is the only
+source for the \fBYP_INTERDOMAIN\fR or \fBYP_SECURE\fR entries.
+.sp
+The syntax for the \fBnisLDAPmapFlags\fR attribute is as follows:
+.sp
+.in +2
+.nf
+"nisLDAPmapFlags" mapname ":" ["b"]["s"]
+.fi
+.in -2
+
+By default neither entry is created.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnisLDAPfieldFromAttribute\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies how a NIS entries field values are derived from LDAP attribute
+values.
+.sp
+The syntax for the \fBnisLDAPfieldFromAttribute\fR attribute is as follows:
+.sp
+.in +2
+.nf
+mapName ":" fieldattrspec *("," fieldattrspec)
+.fi
+.in -2
+
+The format of \fBfieldattrspec\fR is shown below at Field and Attribute
+Conversion Syntax.
+.sp
+To map by direct copy and assignment the value of the \fBipHostNumber\fR
+attribute to the \fBaddr\fR named field, for example:
+.sp
+.in +2
+.nf
+addr=ipHostNumber
+.fi
+.in -2
+
+Formats for the named field and attribute conversion syntax are discussed
+below, including examples of complex attribute to field conversions.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnisLDAPattributeFromField\fR\fR
+.ad
+.sp .6
+.RS 4n
+ Specifies how an LDAP attribute value is derived from a NIS entry field
+value.
+.sp
+The syntax for the \fBnisLDAPattributeFromField\fR attribute is as follows:
+.sp
+.in +2
+.nf
+mapName ":" fieldattrspec *("," fieldattrspec )
+.fi
+.in -2
+
+The format of \fBfieldattrspec\fR is shown below at Field and Attribute
+Conversion Syntax.
+.sp
+As a special case, if the \fBdn\fR attribute value derived from a
+\fBfieldattrspec\fR ends in a comma ("\fB,\fR"), the domains context from
+\fBnisLDAPdomainContext\fR is appended.
+.sp
+Use the following example to map the value of the \fBaddr\fR field to the
+\fBipHostNumber\fR attribute by direct copy and assignment:
+.sp
+.in +2
+.nf
+ipHostNumber=addr
+.fi
+.in -2
+
+All relevant attributes, including the \fBdn\fR, must be specified.
+.sp
+For every map it must be possible to rapidly find a DIT entry based on its key.
+There are some maps for which a NIS to LDAP mapping for the key is not
+desirable, so a key mapping cannot be specified. In these cases a mapping that
+uses the reserved \fBrf_searchkey\fR must be specified. Mappings that use this
+field name are ignored when information is mapped into the DIT.
+.RE
+
+.SS "Field and Attribute Conversion Syntax"
+The general format of a \fBfieldattrspec\fR is:
+.sp
+.in +2
+.nf
+fieldattrspec = lhs "=" rhs
+lhs = lval | namespeclist
+rhs = rval | [namespec]
+namespeclist = namespec | "(" namespec *("," namespec) ")"
+.fi
+.in -2
+
+.sp
+.LP
+The \fBlval\fR and \fBrval\fR syntax are defined below at Values. The format of
+a \fBnamespec\fR is:
+.sp
+.ne 2
+.na
+\fB\fBnamespec\fR\fR
+.ad
+.RS 16n
+.sp
+.in +2
+.nf
+["ldap:"] attrspec [searchTriple] | ["yp:"] fieldname
+[mapspec]
+.fi
+.in -2
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfieldname\fR\fR
+.ad
+.RS 16n
+.sp
+.in +2
+.nf
+field | "(" field ")"
+.fi
+.in -2
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBattrspec\fR\fR
+.ad
+.RS 16n
+.sp
+.in +2
+.nf
+attribute | "(" attribute ")"
+.fi
+.in -2
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsearchTriple\fR\fR
+.ad
+.RS 16n
+.sp
+.in +2
+.nf
+":" [baseDN] ["?" [scope] ["?" [filter]]]
+.fi
+.in -2
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBbaseDN\fR\fR
+.ad
+.RS 16n
+Base DN for search
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfilter\fR\fR
+.ad
+.RS 16n
+LDAP search filter
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmapspec\fR\fR
+.ad
+.RS 16n
+Map name
+.RE
+
+.sp
+.LP
+The repository specification in a \fBnamespec\fR defaults is as follows:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+For assignments to a field:
+.RS
+
+.sp
+.ne 2
+.na
+\fBon the \fBLHS\fR\fR
+.ad
+.RS 14n
+yp
+.RE
+
+.sp
+.ne 2
+.na
+\fBon the \fBRHS\fR\fR
+.ad
+.RS 14n
+ldap
+.RE
+
+.RE
+
+NIS field values on the \fBRHS\fR are those that exist before the NIS entry is
+modified.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+For assignments to an attribute:
+.RS
+
+.sp
+.ne 2
+.na
+\fBon the \fBLHS\fR\fR
+.ad
+.RS 14n
+ldap
+.RE
+
+.sp
+.ne 2
+.na
+\fBon the \fBRHS\fR\fR
+.ad
+.RS 14n
+yp
+.RE
+
+.RE
+
+Attribute values on the \fBRHS\fR are those that exist before the LDAP entry is
+modified.
+.RE
+.sp
+.LP
+When the field or attribute name is enclosed in parenthesis, it denotes a list
+of field or attribute values. For attributes, the meaning is the list of all
+attributes of that name, and the interpretation depends on the context. See the
+discussion at Values. The list specification is ignored when a
+\fBsearchTriple\fR or \fBmapspec\fR is supplied.
+.sp
+.LP
+For fields, the \fBfieldname\fR syntax is used to map multiple attribute
+instances to multiple NIS entries.
+.sp
+.LP
+The \fBsearchTriple\fR can be used to specify an attribute from a location
+other than the read or write target. The defaultvalues are as follows:
+.sp
+.ne 2
+.na
+\fB\fBbaseDN\fR\fR
+.ad
+.RS 10n
+If \fBbaseDN\fR is omitted, the default is the current \fBobjectDN\fR. If the
+\fBbaseDN\fR ends in a comma, the context of the domain is appended from
+\fBnisLDAPdomainContext\fR .
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBscope\fR\fR
+.ad
+.RS 10n
+one
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfilter\fR\fR
+.ad
+.RS 10n
+Empty
+.RE
+
+.sp
+.LP
+Similarly, the \fBmapspec\fR can be used to specify a field value from a NIS
+map other than the one implicitly indicated by the \fBmapName\fR. If
+\fBsearchTriple\fR or \fBmapspec\fR is explicitly specified in a
+\fBnamespec\fR, the retrieval or assignment, whether from or to LDAP or NIS, is
+performed without checking if read and write are enabled for the LDAP container
+or NIS map.
+.sp
+.LP
+The omission of the \fBnamespec\fR in an \fBrhs\fR is only allowed if the
+\fBlhs\fR is one or more attributes. The effect is to delete the specified
+attribute(s). In all other situations, an omitted \fBnamespec\fR means that the
+rule is ignored.
+.sp
+.LP
+The \fBfilter\fR can be a value. See Values. For example, to find the
+\fBipHostNumber\fRthat uses the \fBcn\fR, you specify the following in the
+\fBfilter\fR field:
+.sp
+.in +2
+.nf
+ldap:ipHostNumber:?one?("cn=%s", (cname, "%s.*"))
+.fi
+.in -2
+
+.sp
+.LP
+In order to remove ambiguity, the unmodified value of a single field or
+attribute must be specified as the following when used in the \fBfilter\fR
+field.
+.sp
+.in +2
+.nf
+("%s", namespec)
+.fi
+.in -2
+
+.sp
+.LP
+If the \fBfilter\fR is not specified, the scope will be base, and the
+\fBbaseDN\fR is assumed to be the \fBDN\fR of the entry that contains the
+attribute to be retrieved or modified. To use previously existing field or
+attribute values in the mapping rules requires a lookup to find those values.
+Obviously, this adds to the time required to perform the modification. Also,
+there is a window between the time when a value is retrieved and then slightly
+later stored back. If the values have changed in the meantime, the change may
+be overwritten.
+.sp
+.LP
+When \fBfieldattrspecs\fR are grouped into rule sets, in the value of a
+\fBnisLDAPfieldFromAttribute\fR or \fBnisLDAPattributeFromField\fR attribute,
+the evaluation of the \fBfieldattrspecs\fR proceed in the listed order.
+However, evaluation may be done in parallel for multiple \fBfieldattrspecs\fR.
+If there is an error when evaluating a certain \fBfieldattrspec\fR, including
+retrieval or assignment of entry or field values, the extent to which the other
+\fBfieldattrspec\fR rules are evaluated is unspecified.
+.SS "Wildcards"
+Where wildcard support is available, it is of the following limited form:
+.sp
+.ne 2
+.na
+\fB\fB*\fR\fR
+.ad
+.RS 9n
+Matches any number of characters
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB[x]\fR\fR
+.ad
+.RS 9n
+Matches the character x
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB[x-y]\fR\fR
+.ad
+.RS 9n
+Matches any character in the range x to y, inclusive
+.RE
+
+.sp
+.LP
+Combinations such as \fB[a-cA-C0123]\fR are also allowed, which would match any
+one of a, b, c, A, B, C, 0, 1, 2, or 3.
+.SS "Substring Extraction"
+.in +2
+.nf
+substringextract = "(" namespec "," matchspec ")"
+name = field or attribute name
+matchspec =
+.fi
+.in -2
+
+.sp
+.LP
+The \fBmatchspec\fR is a string like the \fBsscanf\fR(3C) format string, except
+that there may be at most one format specifier, a single \fB%s\fR. The output
+value of the \fBsubstringextract\fR is the substring that matches the location
+of the \fB%s\fR.
+.sp
+.LP
+If there is no \fB%s\fR in the formatstring, it must instead be a single
+character, which is assumed to be a field separator for the \fBnamespec\fR. The
+output values are the field values. Wild cards are supported. If there is no
+match, the output value is the empty string, " ".
+.sp
+.LP
+For example, if the \fBfieldcname\fR has the value
+\fBuser.some.domain.name.\fR, the value of the expression:
+.sp
+.in +2
+.nf
+(cname, "%s.*")
+.fi
+.in -2
+
+.sp
+.LP
+is \fBuser\fR, which can be used to extract the user name from a NIS principal
+name.
+.sp
+.LP
+Similarly, use this expression to extract the third of the colon-separated
+fields of the shadow field:
+.sp
+.in +2
+.nf
+(shadow, "*:*:%s:*")
+.fi
+.in -2
+
+.sp
+.LP
+This form can be used to extract all of the shadow fields. However, a simpler
+way to specify that special case is:
+.sp
+.in +2
+.nf
+(shadow, ":")
+.fi
+.in -2
+
+.SS "Values"
+.in +2
+.nf
+lval = "(" formatspec "," namespec *("," namespec) ")"
+rval = "(" formatspec ["," namelist ["," elide] ] ")"
+
+namelist = name_or_sse *( "," name_or_sse)
+name_or_sse = namespec | removespec | substringextract
+removespec = list_or_name "-" namespec
+list_or_name = "(" namespec ")" | namespec
+formatspec =
+formatstring = A string combining text and % field specifications
+elide =
+singlechar = Any character
+.fi
+.in -2
+
+.sp
+.LP
+The syntax above is used to produce \fBrval\fR values that incorporate field or
+attribute values, in a manner like \fBsprintf\fR(3C), or to perform assignments
+to \fBlval\fR like \fBsscanf\fR(3C). One important restriction is that the
+format specifications,\fB%\fR plus a single character, use the designations
+from \fBber_printf\fR(3LDAP). Thus, while \fB%s\fR is used to extract a string
+value, \fB%i\fR causes BER conversion from an integer. Formats other than
+\fB%s\fR, for instance, \fB%i\fR, are only meaningfully defined in simple
+format strings without any other text.
+.sp
+.LP
+The following \fBber_printf()\fR format characters are recognized:
+.sp
+.in +2
+.nf
+b i n o s
+.fi
+.in -2
+
+.sp
+.LP
+If there are too few format specifiers, the format string may be repeated as
+needed.
+.sp
+.LP
+When used as an \fBlval\fR, there is a combination of pattern matching and
+assignment, possibly to multiple fields or attributes.
+.sp
+.LP
+In an assignment to an attribute, if the value of the \fBaddr\fR field is
+\fB1.2.3.4\fR, the \fBrval\fR:
+.sp
+.in +2
+.nf
+("ipNetworkNumber=%s,", addr)
+.fi
+.in -2
+
+.sp
+.LP
+produces the value \fBipNetworkNumber=1.2.3.4,\fR, while:
+.sp
+.in +2
+.nf
+("(%s,%s,%s)", host, user, domain)
+.fi
+.in -2
+
+.sp
+.LP
+results in:
+.sp
+.in +2
+.nf
+(assuming host="xyzzy", user="-", domain="x.y.z")
+"(xyzzy,-,x.y.z)"
+.fi
+.in -2
+
+.sp
+.LP
+The elide character feature is used with attribute lists. So:
+.sp
+.in +2
+.nf
+("%s,", (mgrprfc822mailmember), ",")
+.fi
+.in -2
+
+.sp
+.LP
+concatenates all \fBmgrprfc822mailmember\fR values into one comma-separated
+string, and then elides the final trailing comma. Thus, for
+.sp
+.in +2
+.nf
+mgrprfc822mailmember=usera
+mgrprfc822mailmember=userb
+mgrprfc822mailmember=userc
+.fi
+.in -2
+
+.sp
+.LP
+the value would be:
+.sp
+.in +2
+.nf
+usera,userb,userc
+.fi
+.in -2
+
+.sp
+.LP
+As a special case, to combine an \fBLHS\fR extraction with an \fBRHS\fR
+implicit list creates multiple entries and values. So
+.sp
+.in +2
+.nf
+("(%s,%s,%s)", host, user, domain)=(nisNetgroupTriple)
+.fi
+.in -2
+
+.sp
+.LP
+creates one NIS entry for each \fBnisNetgroupTriple\fR value.
+.sp
+.LP
+The \fB\&'removespec'\fR form is used to exclude previously assigned fields
+values from a list. So, if an LDAP entry contains:
+.sp
+.in +2
+.nf
+name: foo
+cn: foo
+cn: foo1
+cn: foo2
+.fi
+.in -2
+
+.sp
+.LP
+and the mapping file specifies :
+.sp
+.in +2
+.nf
+myName = name, \e
+myAliases = ("%s ", (cn) - yp:myName, " ")
+.fi
+.in -2
+
+.sp
+.LP
+then the following assignments are carried out:
+.RS +4
+.TP
+1.
+Assign value \fBfoo\fR to \fBmyName\fR
+.RE
+.RS +4
+.TP
+2.
+Assign value \fBfoo foo1 foo2\fR to \fBmyAliases\fR
+.RE
+.RS +4
+.TP
+3.
+Remove value of \fBmyName\fR from value \fBmyAliases\fR
+.RE
+.sp
+.LP
+This results in the field values \fBmyName\fR is set to \fBfoo\fR, and
+\fBmyAliases\fR is set to \fBfoo1 foo2\fR.
+.SS "Assignments"
+The assignment syntax, also found at Field and Attribute Conversion Syntax, is
+as follows:
+.sp
+.in +2
+.nf
+fieldattrspec = lhs "=" rhs
+lhs = lval | namespeclist
+rhs = rval | namespec
+namespeclist = namespec | "(" namespec *("," namespec) ")"
+.fi
+.in -2
+
+.sp
+.LP
+The general form of a simple assignment, which is a one-to-one mapping of field
+to attribute, is:
+.sp
+.in +2
+.nf
+("%s", fieldname)=("%s", attrname)
+.fi
+.in -2
+
+.sp
+.LP
+As a convenient shorthand, this can also be written as:
+.sp
+.in +2
+.nf
+fieldname=attrname
+.fi
+.in -2
+
+.sp
+.LP
+A list specification, which is a name enclosed in parenthesis, can be used to
+make many-to-many assignments. The expression:
+.sp
+.in +2
+.nf
+(fieldname)=(attrname)
+.fi
+.in -2
+
+.sp
+.LP
+where there are multiple instances of \fBattrname\fR, creates one NIS entry for
+each such instance, differentiated by their \fBfieldname\fR values. The
+following combinations of lists are allowed, but they are not particularly
+useful:
+.sp
+.ne 2
+.na
+\fB\fB(attrname)=(fieldname)\fR\fR
+.ad
+.RS 26n
+Equivalent to \fBattrname=fieldname\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBattrname=(fieldname)\fR\fR
+.ad
+.RS 26n
+Equivalent to \fBattrname=fieldname\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB(fieldname)=attrname\fR\fR
+.ad
+.RS 26n
+Equivalent to \fBfieldname=attrname\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfieldname=(attrname)\fR\fR
+.ad
+.RS 26n
+Equivalent to \fBfieldname=attrname\fR
+.RE
+
+.sp
+.LP
+If a multi-valued \fBRHS\fR is assigned to a single-valued \fBLHS\fR, the
+\fBLHS\fR value will be the first of the \fBRHS\fR values. If the \fBRHS\fR is
+an attribute list, the first attribute is the first one returned by the LDAP
+server when queried. Otherwise, the definition of "first" is implementation
+dependent.
+.sp
+.LP
+Finally, the \fBLHS\fR can be an explicit list of fields or attributes, such
+as:
+.sp
+.in +2
+.nf
+(name1,name2,name3)
+.fi
+.in -2
+
+.sp
+.LP
+If the \fBRHS\fR is single-valued, this assigns the \fBRHS\fR value to all
+entities in the list. If the \fBRHS\fR is multi-valued, the first value is
+assigned to the first entity of the list, the second value to the second
+entity, and so on. Excess values or entities are silently ignored.
+.SH EXAMPLES
+\fBExample 1 \fRAssigning an Attribute Value to a Field
+.sp
+.LP
+The following example illustrates how to assign the value of the
+\fBipHostNumber\fR attribute to the \fBaddr\fR field
+
+.sp
+.in +2
+.nf
+addr=ipHostNumber
+.fi
+.in -2
+
+.LP
+\fBExample 2 \fRCreating Multiple NIS Entries from Multi-Valued LDAP Attributes
+.sp
+.LP
+An LDAP entry with:
+
+.sp
+.in +2
+.nf
+cn=name1
+cn=name2
+cn=name3
+.fi
+.in -2
+
+.sp
+.LP
+and the following assignments:
+
+.sp
+.in +2
+.nf
+cname=cn
+(name)=(cn)
+.fi
+.in -2
+
+.sp
+.LP
+creates three NIS entries. Other attributes and fields are omitted for clarity.
+
+.sp
+.in +2
+.nf
+cname=name1, name=name1
+cname=name1, name=name2
+cname=name1, name=name3
+.fi
+.in -2
+
+.LP
+\fBExample 3 \fRAssigning String Constants
+.sp
+.LP
+The following expression sets the \fBpasswd\fR field to x:
+
+.sp
+.in +2
+.nf
+passwd=("x")
+.fi
+.in -2
+
+.LP
+\fBExample 4 \fRSplitting Field Values to Multi-Valued Attributes
+.sp
+.LP
+The \fBexpansion\fR field contains a comma-separated list of alias member
+names. In the following example, the expression assigns each member name to an
+instance of \fBmgrprfc822mailmember\fR:
+
+.sp
+.in +2
+.nf
+(mgrprfc822mailmember)=(expansion, ",")
+.fi
+.in -2
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/var/yp/NISLDAPmapping\fR\fR
+.ad
+.RS 26n
+Mapping file used by the NIS server components
+.RE
+
+.SH ATTRIBUTES
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Obsolete
+.TE
+
+.SH SEE ALSO
+.BR sprintf (3C),
+.BR sscanf (3C),
+.BR ber_printf (3LDAP),
+.BR ypserv (5),
+.BR attributes (7),
+.BR inityp2l (8),
+.BR makedbm (8),
+.BR ypserv (8)
+.sp
+.LP
+\fISystem Administration Guide: Naming and Directory Services (DNS, NIS, and
+LDAP)\fR
diff --git a/usr/src/man/man5/a.out.5 b/usr/src/man/man5/a.out.5
new file mode 100644
index 0000000000..85c993c3e2
--- /dev/null
+++ b/usr/src/man/man5/a.out.5
@@ -0,0 +1,111 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
+.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH A.OUT 5 "Aug 24, 2009"
+.SH NAME
+a.out \- Executable and Linking Format (ELF) files
+.SH SYNOPSIS
+.LP
+.nf
+\fB#include <elf.h>\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The file name \fBa.out\fR is the default output file name from the link editor,
+\fBld\fR(1). The link editor will make an \fBa.out\fR executable if there were
+no errors in linking. The output file of the assembler, \fBas\fR(1), also
+follows the format of the \fBa.out\fR file although its default file name is
+different.
+.sp
+.LP
+Programs that manipulate ELF files may use the library that \fBelf\fR(3ELF)
+describes. An overview of the file format follows. For more complete
+information, see the references given below.
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+Linking View Execution View
+_
+ELF header ELF header
+_
+Program header table Program header table
+\fIoptional\fR
+_
+Section 1 Segment 1
+_
+\&...
+_
+Section \fIn\fR Segment 2
+_
+\&...
+_
+\&... \&...
+_
+Section header table Section header table
+ \fIoptional\fR
+.TE
+
+.sp
+.LP
+An ELF header resides at the beginning and holds a ``road map'' describing the
+file's organization. Sections hold the bulk of object file information for the
+linking view: instructions, data, symbol table, relocation information, and so
+on. Segments hold the object file information for the program execution view.
+As shown, a segment may contain one or more sections.
+.sp
+.LP
+A program header table, if present, tells the system how to create a process
+image. Files used to build a process image (execute a program) must have a
+program header table; relocatable files do not need one. A section header table
+contains information describing the file's sections. Every section has an entry
+in the table; each entry gives information such as the section name, the
+section size, etc. Files used during linking must have a section header table;
+other object files may or may not have one.
+.sp
+.LP
+Although the figure shows the program header table immediately after the ELF
+header, and the section header table following the sections, actual files may
+differ. Moreover, sections and segments have no specified order. Only the ELF
+header has a fixed position in the file.
+.sp
+.LP
+When an \fBa.out\fR file is loaded into memory for execution, three logical
+segments are set up: the text segment, the data segment (initialized data
+followed by uninitialized, the latter actually being initialized to all 0's),
+and a stack. The text segment is not writable by the program; if other
+processes are executing the same \fBa.out\fR file, the processes will share a
+single text segment.
+.sp
+.LP
+The data segment starts at the next maximal page boundary past the last text
+address. If the system supports more than one page size, the ``maximal page''
+is the largest supported size. When the process image is created, the part of
+the file holding the end of text and the beginning of data may appear twice.
+The duplicated chunk of text that appears at the beginning of data is never
+executed; it is duplicated so that the operating system may bring in pieces of
+the file in multiples of the actual page size without having to realign the
+beginning of the data section to a page boundary. Therefore, the first data
+address is the sum of the next maximal page boundary past the end of text plus
+the remainder of the last text address divided by the maximal page size. If the
+last text address is a multiple of the maximal page size, no duplication is
+necessary. The stack is automatically extended as required. The data segment is
+extended as requested by the \fBbrk\fR(2) system call.
+.SH SEE ALSO
+.sp
+.LP
+.BR as (1),
+.BR ld (1),
+.BR brk (2),
+.BR elf (3ELF)
+.sp
+.LP
+\fIANSI C Programmer's Guide\fR
diff --git a/usr/src/man/man5/acl.5 b/usr/src/man/man5/acl.5
deleted file mode 100644
index cc42c5d4df..0000000000
--- a/usr/src/man/man5/acl.5
+++ /dev/null
@@ -1,833 +0,0 @@
-'\" te
-.\" Copyright (c) 2020 Peter Tribble.
-.\" Copyright 2014 Nexenta Systems, Inc. All rights reserved.
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH ACL 5 "Feb 8, 2020"
-.SH NAME
-acl \- Access Control Lists
-.SH DESCRIPTION
-Access control lists (ACLs) are discretionary access control mechanisms that
-grant and deny access to files and directories. Two different ACL models are
-supported in this release: POSIX-draft ACLs and NFSv4 ACLs.
-.sp
-.LP
-The older, POSIX-draft model is supported by the UFS file system. This model is
-based on a withdrawn ACL POSIX specification that was never standardized. It
-was subsequently withdrawn by the POSIX committee.
-.sp
-.LP
-The other model is based on the standards of the NFSv4 working group and is an
-approved standard from the Internet Engineering Task Force (IETF). The ZFS file
-system uses the NFSv4 model, and provides richer semantics and finer grained
-permission capabilities than the POSIX-draft model.
-.SS "POSIX-draft ACLs"
-POSIX-draft ACLs provide an alternative security mechanism to basic UNIX file
-permissions. Their purpose is to further restrict access
-to files and directories or to extend permissions to a particular user. ACLs
-can be used to change the permissions for the standard owner, group and other
-class bits of a file's mode. ACLs can give additional users and groups access
-to the file. A directory can also have a special kind of ACL called a
-\fBdefault\fR ACL, which defines ACL entries to be inherited by descendents of
-the directory. POSIX-draft ACLs have an ACL entry called \fBmask\fR. The mask
-defines the maximum permissions that can be granted to additional user and
-group entries. Whenever a file is created or its mode is changed by
-\fBchmod\fR(1) or \fBchmod\fR(2), the mask is recomputed. It is recomputed to
-be the group permission defined in the mode passed to \fBchmod\fR(2).
-.sp
-.LP
-The POSIX-draft ACL model uses the standard \fBrwx\fR model of traditional UNIX
-permissions.
-.sp
-.LP
-An ACL is represented as follows:
-.sp
-.in +2
-.nf
-\fIacl_entry\fR[,\fIacl_entry\fR]...
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Each \fIacl_entry\fR contains one ACL entry. An ACL entry is represented by two
-or three colon-separated(\fB:\fR) fields.
-.sp
-.ne 2
-.na
-\fB\fIuser\fR:[\fIuid\fR]:\fIperms\fR\fR
-.ad
-.RS 21n
-If \fIuid\fR blank, it represents the file owner.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIgroup\fR:[\fIgid\fR]:\fIperms\fR\fR
-.ad
-.RS 21n
-If \fIgid\fR is blank, it represents the owning group.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIother\fR:\fIperms\fR\fR
-.ad
-.RS 21n
-Represents the file other class.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fImask\fR:\fIperms\fR\fR
-.ad
-.RS 21n
-Defines the \fBMAX\fR permission to hand out.
-.RE
-
-.sp
-.LP
-For example to give user \fBjoe\fR read and write permissions, the ACL entry is
-specified as:
-.sp
-.in +2
-.nf
-user:joe:rw-
-.fi
-.in -2
-.sp
-
-.SS "NFSv4 ACLs"
-The NFSv4 ACL model is based loosely on the Windows NT ACL model. NFSv4 ACLs
-provide a much richer ACL model than POSIX-draft ACLs.
-.sp
-.LP
-The major differences between NFSv4 and POSIX-draft ACLs are as follows:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-NFSv4 ACLs provide finer grained permissions than the \fBrwx\fR model.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-NFSv4 ACLs allow for both \fBALLOW\fR and \fBDENY\fR entries.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-NFSv4 ACLs provide a rich set of inheritance semantics. POSIX ACLs also have
-inheritance, but with the NFSv4 model you can control the following inheritance
-features:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Whether inheritance cascades to both files and directories or only to files or
-directories.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-In the case of directories, you can indicate whether inheritance is applied to
-the directory itself, to just one level of subdirectories, or cascades to all
-subdirectories of the directory.
-.RE
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-NFSv4 ACLs provide a mechanism for hooking into a system's audit trail.
-Currently, illumos does not support this mechanism.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-NFSv4 ACLs enable administrators to specify the order in which ACL entries are
-checked. With POSIX-draft ACLs the file system reorders ACL entries into a well
-defined, strict access, checking order.
-.RE
-.sp
-.LP
-POSIX-draft ACL semantics can be achieved with NFSv4 ACLs. However, only some
-NFSv4 ACLs can be translated to equivalent POSIX-draft ACLs.
-.sp
-.LP
-Permissions can be specified in three different \fBchmod\fR ACL formats:
-verbose, compact, or positional. The verbose format uses words to indicate that
-the permissions are separated with a forward slash (\fB/\fR) character. Compact
-format uses the permission letters and positional format uses the permission
-letters or the hyphen (\fB-\fR) to identify no permissions.
-.sp
-.LP
-The permissions for verbose mode and their abbreviated form in parentheses for
-compact and positional mode are described as follows:
-.sp
-.ne 2
-.na
-\fBread_data (\fBr\fR)\fR
-.ad
-.RS 24n
-Permission to read the data of the file
-.RE
-
-.sp
-.ne 2
-.na
-\fBlist_directory (\fBr\fR)\fR
-.ad
-.RS 24n
-Permission to list the contents of a directory.
-.RE
-
-.sp
-.ne 2
-.na
-\fBwrite_data (\fBw\fR)\fR
-.ad
-.RS 24n
-Permission to modify a file's data anywhere in the file's offset range. This
-includes the ability to grow the file or write to any arbitrary offset.
-.RE
-
-.sp
-.ne 2
-.na
-\fBadd_file (\fBw\fR)\fR
-.ad
-.RS 24n
-Permission to add a new file to a directory.
-.RE
-
-.sp
-.ne 2
-.na
-\fBappend_data (\fBp\fR)\fR
-.ad
-.RS 24n
-The ability to modify the file's data, but only starting at EOF. Currently,
-this permission is not supported.
-.RE
-
-.sp
-.ne 2
-.na
-\fBadd_subdirectory (\fBp\fR)\fR
-.ad
-.RS 24n
-Permission to create a subdirectory to a directory.
-.RE
-
-.sp
-.ne 2
-.na
-\fBread_xattr (\fBR\fR)\fR
-.ad
-.RS 24n
-The ability to read the extended attributes of a file or do a lookup in the
-extended attributes directory.
-.RE
-
-.sp
-.ne 2
-.na
-\fBwrite_xattr (\fBW\fR)\fR
-.ad
-.RS 24n
-The ability to create extended attributes or write to the extended attributes
-directory.
-.RE
-
-.sp
-.ne 2
-.na
-\fBexecute (\fBx\fR)\fR
-.ad
-.RS 24n
-Permission to execute a file.
-.RE
-
-.sp
-.ne 2
-.na
-\fBread_attributes (\fBa\fR)\fR
-.ad
-.RS 24n
-The ability to read basic attributes (non-ACLs) of a file. Basic attributes are
-considered to be the stat level attributes. Allowing this access mask bit means
-that the entity can execute \fBls\fR(1) and \fBstat\fR(2).
-.RE
-
-.sp
-.ne 2
-.na
-\fBwrite_attributes (\fBA\fR)\fR
-.ad
-.RS 24n
-Permission to change the times associated with a file or directory to an
-arbitrary value.
-.RE
-
-.sp
-.ne 2
-.na
-\fBdelete (\fBd\fR)\fR
-.ad
-.RS 24n
-Permission to delete the file.
-.RE
-
-.sp
-.ne 2
-.na
-\fBdelete_child (\fBD\fR)\fR
-.ad
-.RS 24n
-Permission to delete a file within a directory.
-.RE
-
-.sp
-.ne 2
-.na
-\fBread_acl (\fBc\fR)\fR
-.ad
-.RS 24n
-Permission to read the ACL.
-.RE
-
-.sp
-.ne 2
-.na
-\fBwrite_acl (\fBC\fR)\fR
-.ad
-.RS 24n
-Permission to write the ACL or the ability to execute \fBchmod\fR(1) or
-\fBsetfacl\fR(1).
-.RE
-
-.sp
-.ne 2
-.na
-\fBwrite_owner (\fBo\fR)\fR
-.ad
-.RS 24n
-Permission to change the owner or the ability to execute \fBchown\fR(1) or
-\fBchgrp\fR(1).
-.RE
-
-.sp
-.ne 2
-.na
-\fBsynchronize (\fBs\fR)\fR
-.ad
-.RS 24n
-Permission to access a file locally at the server with synchronous reads and
-writes. Currently, this permission is not supported.
-.RE
-
-.sp
-.LP
-The following inheritance flags are supported by NFSv4 ACLs:
-.sp
-.ne 2
-.na
-\fBfile_inherit (\fBf\fR)\fR
-.ad
-.RS 26n
-Inherit to all newly created files in a directory.
-.RE
-
-.sp
-.ne 2
-.na
-\fBdir_inherit (\fBd\fR)\fR
-.ad
-.RS 26n
-Inherit to all newly created directories in a directory.
-.RE
-
-.sp
-.ne 2
-.na
-\fBinherit_only (\fBi\fR)\fR
-.ad
-.RS 26n
-Placed on a directory, but does not apply to the directory itself, only to
-newly created files and directories. This flag requires file_inherit
-and/or dir_inherit to indicate what to inherit.
-.RE
-
-.sp
-.ne 2
-.na
-\fBno_propagate (\fBn\fR)\fR
-.ad
-.RS 26n
-Placed on directories and indicates that ACL entries should only be inherited
-one level of the tree. This flag requires file_inherit and/or dir_inherit to
-indicate what to inherit.
-.RE
-
-.sp
-.ne 2
-.na
-\fBsuccessful_access (\fBS\fR)\fR
-.ad
-.RS 26n
-Indicates whether an alarm or audit record should be initiated upon successful
-accesses. Used with audit/alarm ACE types.
-.RE
-
-.sp
-.ne 2
-.na
-\fBfailed_access (\fBF\fR)\fR
-.ad
-.RS 26n
-Indicates whether an alarm or audit record should be initiated when access
-fails. Used with audit/alarm ACE types.
-.RE
-
-.sp
-.ne 2
-.na
-\fBinherited (\fBI\fR)\fR
-.ad
-.RS 26n
-ACE was inherited.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-\fR\fR
-.ad
-.RS 26n
-No permission granted.
-.RE
-
-.sp
-.LP
-An NFSv4 ACL is expressed using the following syntax:
-.sp
-.in +2
-.nf
-\fIacl_entry\fR[,\fIacl_entry\fR]...
-
- owner@:<perms>[:inheritance flags]:<allow|deny>
- group@:<perms>[:inheritance flags]:<allow|deny>
- everyone@:<perms>[:inheritance flags]:<allow|deny>
- user:<username>:<perms>[:inheritance flags]:<allow|deny>
- usersid:<sid string>:<perms>[:inheritance flags]:<allow|deny>
- group:<groupname>:<perms>[:inheritance flags]:<allow|deny>
- groupsid:<sid string>:<perms>[:inheritance flags]:<allow|deny>
- sid:<sid string>:<perms>[:inheritance flags]:<allow|deny>
-.fi
-.in -2
-
-.sp
-.ne 2
-.na
-\fBowner@\fR
-.ad
-.RS 10n
-File owner
-.RE
-
-.sp
-.ne 2
-.na
-\fBgroup@\fR
-.ad
-.RS 10n
-Group owner
-.RE
-
-.sp
-.ne 2
-.na
-\fBuser\fR
-.ad
-.RS 10n
-Permissions for a specific user
-.RE
-
-.sp
-.ne 2
-.na
-\fBgroup\fR
-.ad
-.RS 10n
-Permissions for a specific group
-.RE
-
-.sp
-.LP
-Permission and inheritance flags are separated by a \fB/\fR character.
-.sp
-.LP
-ACL specification examples:
-.sp
-.in +2
-.nf
-user:fred:read_data/write_data/read_attributes:file_inherit:allow
-owner@:read_data:allow,group@:read_data:allow,user:tom:read_data:deny
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Using the compact ACL format, permissions are specified by using 14 unique
-letters to indicate permissions.
-.sp
-.LP
-Using the positional ACL format, permissions are specified as positional
-arguments similar to the \fBls -V\fR format. The hyphen (\fB-\fR), which
-indicates that no permission is granted at that position, can be omitted and
-only the required letters have to be specified.
-.sp
-.LP
-The letters above are listed in the order they would be specified in positional
-notation.
-.sp
-.LP
-With these letters you can specify permissions in the following equivalent
-ways.
-.sp
-.in +2
-.nf
-user:fred:rw------R------:file_inherit:allow
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Or you can remove the \fB-\fR and scrunch it together.
-.sp
-.in +2
-.nf
-user:fred:rwR:file_inherit:allow
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The inheritance flags can also be specified in a more compact manner, as
-follows:
-.sp
-.in +2
-.nf
-user:fred:rwR:f:allow
-user:fred:rwR:f------:allow
-.fi
-.in -2
-.sp
-
-.SS "Shell-level API"
-Several utilities support the manipulation of ACLs. The following
-utilities accommodate both ACL models:
-.sp
-.ne 2
-.na
-\fB\fBchmod\fR\fR
-.ad
-.RS 12n
-The \fBchmod\fR utility has been enhanced to allow for the setting and deleting
-of ACLs. This is achieved by extending the symbolic-mode argument to support
-ACL manipulation. See \fBchmod\fR(1) for details.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcompress\fR\fR
-.ad
-.RS 12n
-When a file is compressed any ACL associated with the original file is
-preserved with the compressed file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcp\fR\fR
-.ad
-.RS 12n
-By default, \fBcp\fR ignores ACLs, unless the \fB-p\fR option is specified.
-When \fB-p\fR is specified the owner and group id, permission modes,
-modification and access times, ACLs, and extended attributes if applicable are
-preserved.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcpio\fR\fR
-.ad
-.RS 12n
-ACLs are preserved when the \fB-P\fR option is specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfind\fR\fR
-.ad
-.RS 12n
-Find locates files with ACLs when the \fB-acl\fR flag is specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBls\fR\fR
-.ad
-.RS 12n
-By default \fBls\fR does not display ACL information. When the \fB-v\fR option
-is specified, a file's ACL is displayed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmv\fR\fR
-.ad
-.RS 12n
-When a file is moved, all attributes are carried along with the renamed file.
-When a file is moved across a file system boundary, the ACLs are replicated. If
-the ACL information cannot be replicated, the move fails and the source file is
-not removed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpack\fR\fR
-.ad
-.RS 12n
-When a file is packed, any ACL associated with the original file is preserved
-with the packed file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrcp\fR\fR
-.ad
-.RS 12n
-\fBrcp\fR has been enhanced to support copying. A file's ACL is only preserved
-when the remote host supports ACLs.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBtar\fR\fR
-.ad
-.RS 12n
-ACLs are preserved when the \fB-p\fR option is specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBunpack\fR\fR
-.ad
-.RS 12n
-When a file with an ACL is unpacked, the unpacked file retains the ACL
-information.
-.RE
-
-.SS "Application-level API"
-The primary interfaces required to access file system ACLs at the programmatic
-level are the \fBacl_get()\fR and \fBacl_set()\fR functions. These functions
-support both POSIX-draft ACLs and NFSv4 ACLs.
-.SS "Retrieving a file's ACL"
-.in +2
-.nf
-int acl_get(const char *path, int flag, acl_t **aclp);
-int facl_get(int fd, int flag, acl_t **aclp);
-.fi
-.in -2
-
-.sp
-.LP
-The \fBacl_get\fR(3SEC) and \fBfacl_get\fR(3SEC) functions retrieve an ACL on
-a file whose name is given by path or referenced by the open file descriptor
-fd. The flag argument specifies whether a trivial ACL should be retrieved. When
-the flag argument equals \fBACL_NO_TRIVIAL\fR only ACLs that are not
-trivial are retrieved. The ACL is returned in the \fBaclp\fR argument.
-.SS "Freeing ACL structure"
-.in +2
-.nf
-void acl_free(acl_t *aclp);
-.fi
-.in -2
-
-.sp
-.LP
-The \fBacl_free()\fR function frees up memory allocated for the argument
-\fBaclp\fR.
-.SS "Setting an ACL on a file"
-.in +2
-.nf
-int acl_set(const char *path, acl_t *aclp);
-int facl_set(int fd, acl_t *aclp);
-.fi
-.in -2
-
-.sp
-.LP
-The \fBacl_set\fR(3SEC) and \fBfacl_get\fR(3SEC) functions are used for setting
-an ACL on a file whose name is given by path or referenced by the open file
-descriptor \fBfd\fR. The \fBaclp\fR argument specifies the ACL to set. The
-\fBacl_set\fR(3SEC) function translates a POSIX-draft ACL into a NFSv4 ACL when
-the target file system supports NFSv4 ACLs. No translation is performed when
-trying to set an NFSv4 ACL on a POSIX-draft ACL supported file system.
-.SS "Determining an ACL's trivialness"
-.in +2
-.nf
-int acl_trivial(const char *path);
-.fi
-.in -2
-
-.sp
-.LP
-The \fBacl_trivial()\fR function is used to determine whether a file has a
-trivial ACL.
-.SS "Removing all ACLs from a file"
-.in +2
-.nf
-int acl_strip(const char *path, uid_t uid, gid_t gid, mode_t mode);
-.fi
-.in -2
-
-.sp
-.LP
-The \fBacl_strip()\fR function removes all ACLs from a file and replaces them
-with a trivial ACL based off of the passed in argument mode. After replacing
-the ACL the owner and group of the file are set to the values specified in the
-uid and gid parameters.
-.SS "Converting ACLs to/from external representation"
-.in +2
-.nf
-int acl_fromtext(const char *path, acl_t **aclp);
-char *acl_totext(acl_t *aclp, int flags);
-.fi
-.in -2
-
-.sp
-.LP
-The \fBacl_totext()\fR function converts an internal ACL representation pointed
-to by aclp into an external representation. See \fBDESCRIPTION\fR for details
-about external representation.
-.sp
-.LP
-The \fBacl_fromtext()\fR function converts an external representation into an
-internal representation. See \fBDESCRIPTION\fR for details about external
-representation.
-.SH EXAMPLES
-The following examples demonstrate how the API can be used to perform basic
-operations on ACLs.
-.LP
-\fBExample 1 \fRRetrieving and Setting an ACL
-.sp
-.LP
-Use the following to retrieve an ACL and set it on another file:
-
-.sp
-.in +2
-.nf
-error = acl_get("file", ACL_NO_TRIVIAL, &aclp);
-
-if (error == 0 && aclp != NULL) {
-.in +8
-error = acl_set("file2", aclp);
-acl_free(aclp);
-.in -8
-}
-\&...
-.fi
-.in -2
-
-.LP
-\fBExample 2 \fRRetrieving and Setting Any ACLs
-.sp
-.LP
-Use the following to retrieve any ACL, including trivial ACLs, and set it on
-another file:
-
-.sp
-.in +2
-.nf
-error = acl_get("file3", 0, &aclp);
-if (error == 0) {
-.in +8
-error = acl_set("file4", aclp);
-acl_free(aclp);
-.in -8
-}
-\&...
-.fi
-.in -2
-
-.LP
-\fBExample 3 \fRDetermining if a File has a Trivial ACL
-.sp
-.LP
-Use the following to determine if a file has a trivial ACL:
-
-.sp
-.in +2
-.nf
-char *file = "file5";
-istrivial = acl_trivial(file);
-
-if (istrivial == 0)
-.in +8
-printf("file %s has a trivial ACL\en", file);
-.in -8
-else
-.in +8
-printf("file %s has a NON-trivial ACL\en", file);
-.in -8
-\&...
-.fi
-.in -2
-
-.LP
-\fBExample 4 \fRRemoving all ACLs from a File
-.sp
-.LP
-Use the following to remove all ACLs from a file, and set a new mode, owner,
-and group:
-
-.sp
-.in +2
-.nf
-error = acl_strip("file", 10, 100, 0644);
-\&...
-.fi
-.in -2
-
-.SH SEE ALSO
-\fBchgrp\fR(1), \fBchmod\fR(1), \fBchown\fR(1), \fBcp\fR(1), \fBcpio\fR(1),
-\fBfind\fR(1), \fBls\fR(1), \fBmv\fR(1), \fBtar\fR(1), \fBsetfacl\fR(1),
-\fBchmod\fR(2), \fBacl\fR(2), \fBstat\fR(2), \fBacl_get\fR(3SEC),
-\fBaclsort\fR(3SEC), \fBacl_fromtext\fR(3SEC), \fBacl_free\fR(3SEC),
-\fBacl_strip\fR(3SEC), \fBacl_trivial\fR(3SEC)
diff --git a/usr/src/man/man5/ad.5 b/usr/src/man/man5/ad.5
deleted file mode 100644
index a614a553be..0000000000
--- a/usr/src/man/man5/ad.5
+++ /dev/null
@@ -1,72 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH AD 5 "May 23, 2021"
-.SH NAME
-ad \- Active Directory as a naming repository
-.SH DESCRIPTION
-Solaris clients can obtain naming information from Active Directory (AD)
-servers.
-.sp
-.LP
-The Solaris system must first join an AD domain and then add the \fBad\fR
-keyword to the appropriate entries in the \fBnsswitch.conf\fR(4) file. The
-Solaris system joins the AD domain by using the \fBkclient\fR(1M) utility. The
-AD name service only supports the naming databases for \fBpasswd\fR and
-\fBgroup\fR.
-.sp
-.LP
-Windows users are not able to log in. The \fBuser_attr\fR(4) database has no
-entries for Windows users, and the \fBpasswd\fR(1) command does not support the
-synchronization of user passwords with AD.
-.sp
-.LP
-The Solaris AD client uses auto-discovery techniques to find AD directory
-servers, such as domain controllers and global catalog servers. The client also
-uses the LDAP v3 protocol to access naming information from AD servers. The AD
-server schema requires no modification because the AD client works with native
-AD schema. The Solaris AD client uses the \fBidmap\fR(1M) service to map
-between Windows security identifiers (SIDs) and Solaris user identifiers (UIDs)
-and group identifiers (GIDs). User names and group names are taken from the
-\fBsAMAccountName\fR attribute of the AD user and group objects and then tagged
-with the domain where the objects reside. The domain name is separated from the
-user name or group name by the \fB@\fR character.
-.sp
-.LP
-The client uses the SASL/GSSAPI/KRB5 security model. The \fBkclient\fR utility
-is used to join the client to AD. During the join operation, \fBkclient\fR
-configures Kerberos v5 on the client. See \fBkclient\fR(1M).
-.SH FILES
-.ne 2
-.na
-\fB\fB/etc/nsswitch.conf\fR\fR
-.ad
-.RS 24n
-Configuration file for the name-service switch.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/nsswitch.ad\fR\fR
-.ad
-.RS 24n
-Sample configuration file for the name-service switch configured with ad, dns
-and files.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/nss_ad.so.1\fR\fR
-.ad
-.RS 24n
-Name service switch module for AD.
-.RE
-
-.SH SEE ALSO
-\fBpasswd\fR(1), \fBsvcs\fR(1), \fBidmap\fR(1M), \fBidmapd\fR(1M),
-\fBkclient\fR(1M), \fBsvcadm\fR(1M), \fBsvccfg\fR(1M),
-\fBnsswitch.conf\fR(4), \fBuser_attr\fR(4), \fBsmf\fR(5)
diff --git a/usr/src/man/man5/admin.5 b/usr/src/man/man5/admin.5
new file mode 100644
index 0000000000..f577c5bec3
--- /dev/null
+++ b/usr/src/man/man5/admin.5
@@ -0,0 +1,484 @@
+'\" te
+.\" Copyright (c) 2017 Peter Tribble.
+.\" Copyright 1989 AT&T Copyright (c) 1997, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH ADMIN 5 "May 13, 2017"
+.SH NAME
+admin \- installation defaults file
+.SH DESCRIPTION
+.LP
+\fBadmin\fR is a generic name for an \fBASCII\fR file that defines default
+installation actions by assigning values to installation parameters. For
+example, it allows administrators to define how to proceed when the package
+being installed already exists on the system.
+.sp
+.LP
+\fB/var/sadm/install/admin/default\fR is the default \fBadmin\fR file delivered
+with this release. The default file is not writable, so to assign values
+different from this file, create a new \fBadmin\fR file. There are no naming
+restrictions for \fBadmin\fR files. Name the file when installing a package
+with the \fB-a\fR option of \fBpkgadd\fR(8). If the \fB-a\fR option is not
+used, the default \fBadmin\fR file is used.
+.sp
+.LP
+Each entry in the \fBadmin\fR file is a line that establishes the value of a
+parameter in the following form:
+.sp
+.LP
+\fIparam\fR\fB=\fR\fIvalue\fR
+.sp
+.LP
+All of the parameters listed below can be defined in an \fBadmin\fR file, but
+it is not required to assign values to all of these. If a value is not
+assigned, \fBpkgadd\fR(8) asks the installer how to proceed.
+.sp
+.LP
+The valid parameters and their possible values are shown below except as noted.
+They can be specified in any order. Any of these parameters (except the
+\fBmail\fR parameter) can be assigned the value \fBask\fR,
+which means that, when the parameter is reached during the installation
+sequence, the installer is notified and asked to supply instructions (see
+\fBNOTES\fR).
+.sp
+.ne 2
+.na
+\fB\fBbasedir\fR\fR
+.ad
+.RS 30n
+Indicates the base directory where relocatable packages are to be installed. If
+there is no \fBbasedir\fR entry in the file, the installer will be prompted for
+a path name, as if the file contained the entry \fBbasedir=ask\fR. This
+parameter can also be set to \fBdefault\fR (entry is \fBbasedir=default\fR). In
+this instance, the package is installed into the base directory specified by
+the \fBBASEDIR\fR parameter in the \fBpkginfo\fR(5) file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmail\fR\fR
+.ad
+.RS 30n
+Defines a list of users to whom mail should be sent following installation of a
+package. If the list is empty, no mail is sent. If the parameter is not present
+in the \fBadmin\fR file, the default value of \fBroot\fR is used. The \fBask\fR
+value cannot be used with this parameter.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrunlevel\fR\fR
+.ad
+.RS 30n
+Indicates resolution if the run level is not correct for the installation or
+removal of a package. Options are:
+.sp
+.ne 2
+.na
+\fB\fBnocheck\fR\fR
+.ad
+.RS 11n
+Do not check for run level.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBquit\fR\fR
+.ad
+.RS 11n
+Abort installation if run level is not met.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBconflict\fR\fR
+.ad
+.RS 30n
+Specifies what to do if an installation expects to overwrite a previously
+installed file, thus creating a conflict between packages. Options are:
+.sp
+.ne 2
+.na
+\fB\fBnocheck\fR\fR
+.ad
+.RS 12n
+Do not check for conflict; files in conflict will be overwritten.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBquit\fR\fR
+.ad
+.RS 12n
+Abort installation if conflict is detected.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnochange\fR\fR
+.ad
+.RS 12n
+Override installation of conflicting files; they will not be installed.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsetuid\fR\fR
+.ad
+.RS 30n
+Checks for executables which will have setuid or setgid bits enabled after
+installation. Options are:
+.sp
+.ne 2
+.na
+\fB\fBnocheck\fR\fR
+.ad
+.RS 12n
+Do not check for setuid executables.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBquit\fR\fR
+.ad
+.RS 12n
+Abort installation if setuid processes are detected.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnochange\fR\fR
+.ad
+.RS 12n
+Override installation of setuid processes; processes will be installed without
+setuid bits enabled.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBaction\fR\fR
+.ad
+.RS 30n
+Determines if action scripts provided by package developers contain possible
+security impact. Options are:
+.sp
+.ne 2
+.na
+\fB\fBnocheck\fR\fR
+.ad
+.RS 11n
+Ignore security impact of action scripts.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBquit\fR\fR
+.ad
+.RS 11n
+Abort installation if action scripts may have a negative security impact.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpartial\fR\fR
+.ad
+.RS 30n
+Checks to see if a version of the package is already partially installed on the
+system. Options are:
+.sp
+.ne 2
+.na
+\fB\fBnocheck\fR\fR
+.ad
+.RS 11n
+Do not check for a partially installed package.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBquit\fR\fR
+.ad
+.RS 11n
+Abort installation if a partially installed package exists.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBinstance\fR\fR
+.ad
+.RS 30n
+Determines how to handle installation if a previous version of the package
+(including a partially installed instance) already exists. Options are:
+.sp
+.ne 2
+.na
+\fB\fBquit\fR\fR
+.ad
+.RS 13n
+Exit without installing if an instance of the package already exists (does not
+overwrite existing packages).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBoverwrite\fR\fR
+.ad
+.RS 13n
+Overwrite an existing package if only one instance exists. If there is more
+than one instance, but only one has the same architecture, it overwrites that
+instance. Otherwise, the installer is prompted with existing instances and
+asked which to overwrite.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBunique\fR\fR
+.ad
+.RS 13n
+Do not overwrite an existing instance of a package. Instead, a new instance of
+the package is created. The new instance will be assigned the next available
+instance identifier.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBidepend\fR\fR
+.ad
+.RS 30n
+Controls resolution if the package to be installed depends on other packages
+and if other packages depend on the one to be installed. Options are:
+.sp
+.ne 2
+.na
+\fB\fBnocheck\fR\fR
+.ad
+.RS 11n
+Do not check package dependencies.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBquit\fR\fR
+.ad
+.RS 11n
+Abort installation if package dependencies are not met.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrdepend\fR\fR
+.ad
+.RS 30n
+Controls resolution if other packages depend on the package to be removed.
+Options are:
+.sp
+.ne 2
+.na
+\fB\fBnocheck\fR\fR
+.ad
+.RS 11n
+Do not check package or product dependencies.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBquit\fR\fR
+.ad
+.RS 11n
+Abort removal if package or product dependencies are not met.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBspace\fR\fR
+.ad
+.RS 30n
+Controls resolution if disk space requirements for package are not met. Options
+are:
+.sp
+.ne 2
+.na
+\fB\fBnocheck\fR\fR
+.ad
+.RS 11n
+Do not check space requirements (installation fails if it runs out of space).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBquit\fR\fR
+.ad
+.RS 11n
+Abort installation if space requirements are not met.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrscriptalt=root | noaccess\fR\fR
+.ad
+.RS 30n
+Determines the user that will run request scripts. This parameter can have
+either of the values described below. See \fBpkgadd\fR(8) for details on the
+conditions under which this parameter is useful.
+.sp
+.ne 2
+.na
+\fB\fBroot\fR\fR
+.ad
+.RS 12n
+Run request script as user \fBinstall\fR, if such a user exists, with the
+privileges of that user. Otherwise, run script as user \fBroot\fR, with UID
+equal to 0 and with all/zone privileges. (See \fBzones\fR(7).)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnoaccess\fR\fR
+.ad
+.RS 12n
+Run request script as user \fBinstall\fR, if such a user exists, with the
+privileges of that user. Otherwise, run script as user \fBnoaccess\fR, with the
+basic privileges of the unprivileged user \fBnoaccess\fR.
+.RE
+
+If this parameter is not present or has a null value, the user \fBnoaccess\fR
+is assumed. Likewise, if this parameter is set to anything other than the
+values described here, a warning is issued, and \fBnoaccess\fR is assumed.
+\fBrscriptalt\fR is not present in the default \fBadmin\fR file,
+\fB/var/sadm/install/admin/default\fR. In this case, request scripts are run as
+the user \fBnoaccess\fR.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRDefault \fBadmin\fR File
+.sp
+.LP
+The default \fBadmin\fR file, named \fBdefault\fR, is shipped with user-,
+group-, and world-read privileges (444). Its contents are as follows:
+
+.sp
+.in +2
+.nf
+mail=
+instance=unique
+partial=ask
+runlevel=ask
+idepend=ask
+rdepend=ask
+space=ask
+setuid=ask
+conflict=ask
+action=ask
+basedir=default
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRSample \fBadmin\fR file.
+.sp
+.LP
+Below is a sample \fBadmin\fR file.
+
+.sp
+.in +2
+.nf
+basedir=default
+runlevel=quit
+conflict=quit
+setuid=quit
+action=quit
+partial=quit
+instance=unique
+idepend=quit
+rdepend=quit
+space=quit
+.fi
+.in -2
+.sp
+
+.SH FILES
+.LP
+The default \fBadmin\fR file is consulted during package installation when no
+other \fBadmin\fR file is specified.
+.sp
+.ne 2
+.na
+\fB\fB/var/sadm/install/admin/default\fR\fR
+.ad
+.sp .6
+.RS 4n
+default \fBadmin\fR file
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.LP
+.BR pkginfo (5),
+.BR attributes (7),
+.BR zones (7),
+.BR pkgadd (8)
+.SH NOTES
+.LP
+The value \fBask\fR should not be defined in an \fBadmin\fR file that will be
+used for non-interactive installation (because, by definition, there is no
+installer interaction). Doing so causes installation to fail at the point when
+input is needed.
diff --git a/usr/src/man/man5/alias.5 b/usr/src/man/man5/alias.5
new file mode 100644
index 0000000000..5142656c7f
--- /dev/null
+++ b/usr/src/man/man5/alias.5
@@ -0,0 +1,55 @@
+'\" te
+.\" Copyright (c) 2001, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH ALIAS 5 "Oct 2, 2001"
+.SH NAME
+alias \- alias table file of encoding names
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/iconv/alias\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+This file contains the alias table of encoding names for \fBiconv_open\fR(3C).
+.sp
+.LP
+The format of the alias table is as follows:
+.sp
+.in +2
+.nf
+"%s %s\en", <variant encoding name>, <canonical encoding name>
+.fi
+.in -2
+
+.sp
+.LP
+The string specified for the variant encoding name is case-insensitive. A line
+beginning with '#' is treated as a comment.
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR iconv (3C),
+.BR iconv_close (3C),
+.BR iconv_open (3C),
+.BR attributes (7)
diff --git a/usr/src/man/man5/aliases.5 b/usr/src/man/man5/aliases.5
new file mode 100644
index 0000000000..2ac48e3073
--- /dev/null
+++ b/usr/src/man/man5/aliases.5
@@ -0,0 +1,457 @@
+'\" te
+.\" Copyright (c) 2003 Sun Microsystems, Inc. - All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH ALIASES 5 "Feb 25, 2017"
+.SH NAME
+aliases, addresses, forward \- addresses and aliases for sendmail
+.SH SYNOPSIS
+.LP
+.nf
+/etc/mail/aliases
+.fi
+
+.LP
+.nf
+/etc/mail/aliases.db
+.fi
+
+.LP
+.nf
+/etc/mail/aliases.dir
+.fi
+
+.LP
+.nf
+/etc/mail/aliases.pag
+.fi
+
+.LP
+.nf
+~/.forward
+.fi
+
+.SH DESCRIPTION
+.LP
+These files contain mail addresses or aliases, recognized by \fBsendmail\fR(8)
+for the local host:
+.sp
+.ne 2
+.na
+\fB/etc/passwd\fR
+.ad
+.sp .6
+.RS 4n
+Mail addresses (usernames) of local users.
+.RE
+
+.sp
+.ne 2
+.na
+\fB/etc/mail/aliases\fR
+.ad
+.sp .6
+.RS 4n
+Aliases for the local host, in \fBASCII\fR format. Root can edit this file to
+add, update, or delete local mail aliases.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/mail/aliases.\fR{\fIdir\fR , \fIpag\fR}\fR
+.ad
+.sp .6
+.RS 4n
+The aliasing information from \fB/etc/mail/aliases\fR, in binary \fBndbm\fR(3C)
+format for use by \fBsendmail\fR(8). The program \fBnewaliases\fR(8)
+maintains these files.
+.RE
+
+.sp
+.ne 2
+.na
+\fB/etc/mail/aliases.db\fR
+.ad
+.sp .6
+.RS 4n
+ The aliasing information from \fB/etc/mail/aliases\fR, in binary, Berkeley
+DataBase format for use by \fBsendmail\fR(8). The program maintains these
+files.
+.sp
+Depending on the configuration of the AliasFile option in
+\fB/etc/mail/sendmail.cf\fR, either the single file \fBaliases.db\fR or the
+pair of files \fBaliases.\fR{dir, pag} is generated by \fBnewaliases\fR(8). As
+shipped with Solaris, \fBsendmail\fR(8) supports both formats. If neither is
+specified, the Berkeley DataBase format which generates the single \fB\&.db\fR
+file is used.
+.RE
+
+.sp
+.ne 2
+.na
+\fB~/.forward\fR
+.ad
+.sp .6
+.RS 4n
+Addresses to which a user's mail is forwarded (see \fBAutomatic Forwarding\fR).
+.RE
+
+.sp
+.LP
+In addition, the \fBNIS\fR name services aliases map \fImail.aliases\fR
+contains addresses and aliases
+available for use across the network.
+.SS "Addresses"
+.LP
+As distributed, \fBsendmail\fR(8) supports the following types of addresses:
+.SS "Local Usernames"
+.in +2
+.nf
+\fIusername\fR
+.fi
+.in -2
+
+.sp
+.LP
+Each local \fIusername\fR is listed in the local host's \fB/etc/passwd\fR file.
+.SS "Local Filenames"
+.in +2
+.nf
+\fIpathname\fR
+.fi
+.in -2
+
+.sp
+.LP
+Messages addressed to the absolute \fIpathname\fR of a file are appended to
+that file.
+.SS "Commands"
+.in +2
+.nf
+\fB|\fR\fBcommand\fR
+.fi
+.in -2
+
+.sp
+.LP
+If the first character of the address is a vertical bar (\fB\||\|\fR),
+\fBsendmail\fR(8) pipes the message to the standard input of the \fBcommand\fR
+the bar precedes.
+.SS "Internet-standard Addresses"
+.in +2
+.nf
+\fIusername\fR\fB@\fR\fIdomain\fR
+.fi
+.in -2
+
+.sp
+.LP
+If \fIdomain\fR does not contain any `\fB\&.\fR' (dots), then it is interpreted
+as the name of a host in the current domain. Otherwise, the message is passed
+to a \fImailhost\fR that determines how to get to the specified domain. Domains
+are divided into subdomains separated by dots, with the top-level domain on the
+right.
+.sp
+.LP
+For example, the full address of John Smith could be:
+.sp
+.in +2
+.nf
+\fBjs@jsmachine.Podunk-U.EDU\fR
+.fi
+.in -2
+
+.sp
+.LP
+if he uses the machine named \fBjsmachine\fR at Podunk University.
+.SS "\fBuucp\fR Addresses"
+.in +2
+.nf
+\&.\|.\|. [\fIhost\fR\fB!\fR] \fIhost\fR\fB!\fR\fIusername\fR
+.fi
+.in -2
+
+.sp
+.LP
+These are sometimes mistakenly referred to as ``Usenet'' addresses.
+\fBuucp\fR(1C) provides links to numerous sites throughout the world for the
+remote copying of files.
+.sp
+.LP
+Other site-specific forms of addressing can be added by customizing the
+\fBsendmail.cf\fR configuration file. See \fBsendmail\fR(8) for details.
+Standard addresses are recommended.
+.SS "Aliases"
+.SS "Local Aliases"
+.LP
+\fB/etc/mail/aliases\fR is formatted as a series of lines of the form
+.sp
+.in +2
+.nf
+\fIaliasname\fR\fB:\fR\fIaddress\fR[, \fIaddress\fR]
+.fi
+.in -2
+
+.sp
+.LP
+\fIaliasname\fR is the name of the alias or alias group, and \fIaddress\fR is
+the address of a recipient in the group. Aliases can be nested. That is, an
+\fIaddress\fR can be the name of another alias group. Because of the way
+\fBsendmail\fR(8) performs mapping from upper-case to lower-case, an
+\fIaddress\fR that is the name of another alias group must not contain any
+upper-case letters.
+.sp
+.LP
+Lines beginning with white space are treated as continuation lines for the
+preceding alias. Lines beginning with \fB#\fR are comments.
+.SS "Special Aliases"
+.LP
+An alias of the form:
+.sp
+.in +2
+.nf
+\fBowner-aliasname :\fR \fIaddress\fR
+.fi
+.in -2
+
+.sp
+.LP
+\fBsendmail\fR directs error-messages resulting from mail to \fIaliasname\fR to
+\fIaddress\fR, instead of back to the person who sent the message.
+\fBsendmail\fR rewrites the \fBSMTP\fR envelope sender to match this, so
+\fBowner-aliasname\fR should always point to \fBalias-request\fR, and
+\fBalias-request\fR should point to the owner's actual address:
+.sp
+.in +2
+.nf
+owner-aliasname: aliasname-request
+aliasname-request \fIaddress\fR
+.fi
+.in -2
+
+.sp
+.LP
+An alias of the form:
+.sp
+.in +2
+.nf
+\fIaliasname\fR\fB: :include:\fR\fIpathname\fR
+.fi
+.in -2
+
+.sp
+.LP
+with colons as shown, adds the recipients listed in the file \fIpathname\fR to
+the \fIaliasname\fR alias. This allows a private list to be maintained
+separately from the aliases file.
+.SS "NIS Domain Aliases"
+.LP
+The aliases file on the master \fBNIS\fR server is used for the
+\fImail.aliases\fR \fBNIS\fR map, which can be made available to every
+\fBNIS\fR client. Thus, the \fB/etc/mail/aliases*\fR files on the various
+hosts in a network will one day be obsolete. Domain-wide aliases should
+ultimately be resolved into usernames on specific hosts. For example, if the
+following were in the domain-wide alias file:
+.sp
+.in +2
+.nf
+jsmith:js@jsmachine
+.fi
+.in -2
+
+.sp
+.LP
+then any \fBNIS\fR client could just mail to \fBjsmith\fR and not
+have to remember the machine and username for John Smith.
+.sp
+.LP
+If a \fBNIS\fR alias does not resolve to an address with a
+specific host, then the name of the \fBNIS\fR domain is used.
+There should be an alias of the domain name for a host in this case.
+.sp
+.LP
+For example, the alias:
+.sp
+.in +2
+.nf
+jsmith:root
+.fi
+.in -2
+
+.sp
+.LP
+sends mail on a \fBNIS\fR client to \fBroot@podunk-u\fR if the
+name of the \fBNIS\fR domain is \fBpodunk-u\fR.
+.SS "Automatic Forwarding"
+.LP
+When an alias (or address) is resolved to the name of a user on the local host,
+\fBsendmail\fR(8) checks for a ~/.forward file, owned by the intended
+recipient, in that user's home directory, and with universal read access. This
+file can contain one or more addresses or aliases as described above, each of
+which is sent a copy of the user's mail.
+.sp
+.LP
+Care must be taken to avoid creating addressing loops in the \fB~/.forward\fR
+file. When forwarding mail between machines, be sure that the destination
+machine does not return the mail to the sender through the operation of any
+\fBNIS\fR aliases. Otherwise, copies of the message may "bounce." Usually, the
+solution is to change the \fBNIS\fR alias to direct mail to the proper
+destination.
+.sp
+.LP
+A backslash before a username inhibits further aliasing. For instance, to
+invoke the \fBvacation\fR program, user \fBjs\fR creates a \fB~/.forward\fR
+file that contains the line:
+.sp
+.in +2
+.nf
+\ejs, "|/usr/ucb/vacation js"
+.fi
+.in -2
+
+.sp
+.LP
+so that one copy of the message is sent to the user, and another is piped into
+the \fBvacation\fR program.
+.sp
+.LP
+The \fB~/.forward\fR file can be used to specify special "per user" extensions
+by creating a \fB\&.forward+extension\fR file in the home directory. For
+example, with an address like \fBjsmith+jerry@jsmachine\fR, the
+\fBsendmail\fR(8) utility recognizes everything before the "\fB+\fR" as the
+actual username (\fBjsmith\fR) and everything after it, up to the "\fB@\fR"
+symbol, as the extension (\fBjerry\fR) which is passed to the mail delivery
+agent for local use.
+.sp
+.LP
+The default value of the \fBForwardPath\fR processing option in
+\fBsendmail\fR(8) is:
+.sp
+.in +2
+.nf
+O ForwardPath=$z/.forward.$w+$h:$z/.forward+$h:$z/.forward.$w:$z \e
+/.forward
+.fi
+.in -2
+
+.sp
+.LP
+where \fB$z\fR is the macro for the user's home directory, \fB$w\fR is the
+macro for the local machine name and \fB$h\fR is the extension. For example,
+for mail using the address, \fBjsmith+jerry@jsmachine\fR, the
+\fBsendmail\fR(8) utility checks each of the four following file names, in the
+order given, to see if it exists and if it has "safe" permissions, that is,
+that neither the file nor any of its parent directories are group- or
+world-writable:
+.sp
+.in +2
+.nf
+~jsmith/.forward.jsmachine+jerry
+~jsmith/.forward+jerry
+~jsmith/.forward.jsmachine
+~jsmith/.forward
+.fi
+.in -2
+
+.sp
+.LP
+The first file that meets the conditions is used to forward the mail, that is,
+all the entries in that file receive a copy of the mail. The search is then
+stopped.
+.SH FILES
+.ne 2
+.na
+\fB\fB/etc/passwd\fR\fR
+.ad
+.RS 25n
+Password file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/nsswitch.conf\fR\fR
+.ad
+.RS 25n
+Name service switch configuration file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/mail/aliases\fR\fR
+.ad
+.RS 25n
+Mail aliases file (ascii)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/mail/aliases.db\fR\fR
+.ad
+.RS 25n
+Database of mail aliases (binary)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/mail/aliases.dir\fR\fR
+.ad
+.RS 25n
+Database of mail aliases (binary)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/mail/aliases.pag\fR\fR
+.ad
+.RS 25n
+Database of mail aliases (binary)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/mail/sendmail.cf\fR\fR
+.ad
+.RS 25n
+sendmail configuration file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB~/.forward\fR\fR
+.ad
+.RS 25n
+Forwarding information file
+.RE
+
+.SH SEE ALSO
+.LP
+.BR passwd (1),
+.BR vacation (1),
+.BR uucp (1C),
+.BR getusershell (3C),
+.BR ndbm (3C),
+.BR passwd (5),
+.BR shells (5),
+.BR attributes (7),
+.BR newaliases (8),
+.BR sendmail (8)
+.SH NOTES
+.LP
+Because of restrictions in \fBndbm\fR(3C), a single alias cannot contain more
+than about \fB1000\fR characters (if this format is used). The Berkeley
+DataBase format does not have any such restriction. Nested aliases can be used
+to circumvent this limit.
+.sp
+.LP
+For aliases which result in piping to a program or concatenating a file, the
+shell of the controlling user must be allowed. Which shells are and are not
+allowed are determined by \fBgetusershell\fR(3C).
diff --git a/usr/src/man/man5/ascii.5 b/usr/src/man/man5/ascii.5
deleted file mode 100644
index 77f0339507..0000000000
--- a/usr/src/man/man5/ascii.5
+++ /dev/null
@@ -1,107 +0,0 @@
-'\" te
-.\" Copyright (c) 2002, Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH ASCII 5 "Apr 19, 2002"
-.SH NAME
-ascii \- map of ASCII character set
-.SH SYNOPSIS
-.LP
-.nf
-\fBcat\fR \fB/usr/pub/ascii\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fB/usr/pub/ascii\fR is a map of the \fBASCII\fR character set, to be printed
-as needed. It contains octal and hexadecimal values for each character. While
-not included in that file, a chart of decimal values is also shown here.
-.sp
-.in +2
-.nf
- Octal \(mi Character
-
-000 NUL 001 SOH 002 STX 003 ETX 004 EOT 005 ENQ 006 ACK 007 BEL
-010 BS 011 HT 012 NL 013 VT 014 NP 015 CR 016 SO 017 SI
-020 DLE 021 DC1 022 DC2 023 DC3 024 DC4 025 NAK 026 SYN 027 ETB
-030 CAN 031 EM 032 SUB 033 ESC 034 FS 035 GS 036 RS 037 US
-040 SP 041 ! 042 " 043 # 044 $ 045 % 046 & 047 \&'
-050 ( 051 ) 052 * 053 + 054 , 055 \(mi 056 . 057 /
-060 0 061 1 062 2 063 3 064 4 065 5 066 6 067 7
-070 8 071 9 072 : 073 ; 074 < 075 = 076 > 077 ?
-100 @ 101 A 102 B 103 C 104 D 105 E 106 F 107 G
-110 H 111 I 112 J 113 K 114 L 115 M 116 N 117 O
-120 P 121 Q 122 R 123 S 124 T 125 U 126 V 127 W
-130 X 131 Y 132 Z 133 [ 134 \e 135 ] 136 ^ 137 _
-140 ` 141 a 142 b 143 c 144 d 145 e 146 f 147 g
-150 h 151 i 152 j 153 k 154 l 155 m 156 n 157 o
-160 p 161 q 162 r 163 s 164 t 165 u 166 v 167 w
-170 x 171 y 172 z 173 { 174 | 175 } 176 ~ 177 DEL
-.fi
-.in -2
-.sp
-
-.sp
-.in +2
-.nf
- Hexadecimal \(mi Character
-
-00 NUL 01 SOH 02 STX 03 ETX 04 EOT 05 ENQ 06 ACK 07 BEL
-08 BS 09 HT 0A NL 0B VT 0C NP 0D CR 0E SO 0F SI
-10 DLE 11 DC1 12 DC2 13 DC3 14 DC4 15 NAK 16 SYN 17 ETB
-18 CAN 19 EM 1A SUB 1B ESC 1C FS 1D GS 1E RS 1F US
-20 SP 21 ! 22 " 23 # 24 $ 25 % 26 & 27 \&'
-28 ( 29 ) 2A * 2B + 2C , 2D \(mi 2E . 2F /
-30 0 31 1 32 2 33 3 34 4 35 5 36 6 37 7
-38 8 39 9 3A : 3B ; 3C < 3D = 3E > 3F ?
-40 @ 41 A 42 B 43 C 44 D 45 E 46 F 47 G
-48 H 49 I 4A J 4B K 4C L 4D M 4E N 4F O
-50 P 51 Q 52 R 53 S 54 T 55 U 56 V 57 W
-58 X 59 Y 5A Z 5B [ 5C \e 5D ] 5E ^ 5F _
-60 ` 61 a 62 b 63 c 64 d 65 e 66 f 67 g
-68 h 69 i 6A j 6B k 6C l 6D m 6E n 6F o
-70 p 71 q 72 r 73 s 74 t 75 u 76 v 77 w
-78 x 79 y 7A z 7B { 7C | 7D } 7E ~ 7F DEL
-.fi
-.in -2
-.sp
-
-.sp
-.in +2
-.nf
- Decimal \(mi Character
-
- 0 NUL 1 SOH 2 STX 3 ETX 4 EOT 5 ENQ 6 ACK 7 BEL
- 8 BS 9 HT 10 NL 11 VT 12 NP 13 CR 14 SO 15 SI
- 16 DLE 17 DC1 18 DC2 19 DC3 20 DC4 21 NAK 22 SYN 23 ETB
- 24 CAN 25 EM 26 SUB 27 ESC 28 FS 29 GS 30 RS 31 US
- 32 SP 33 ! 34 " 35 # 36 $ 37 % 38 & 39 \&'
- 40 ( 41 ) 42 * 43 + 44 , 45 \(mi 46 . 47 /
- 48 0 49 1 50 2 51 3 52 4 53 5 54 6 55 7
- 56 8 57 9 58 : 59 ; 60 < 61 = 62 > 63 ?
- 64 @ 65 A 66 B 67 C 68 D 69 E 70 F 71 G
- 72 H 73 I 74 J 75 K 76 L 77 M 78 N 79 O
- 80 P 81 Q 82 R 83 S 84 T 85 U 86 V 87 W
- 88 X 89 Y 90 Z 91 [ 92 \e 93 ] 94 ^ 95 _
- 96 ` 97 a 98 b 99 c 100 d 101 e 102 f 103 g
-104 h 105 i 106 j 107 k 108 l 109 m 110 n 111 o
-112 p 113 q 114 r 115 s 116 t 117 u 118 v 119 w
-120 x 121 y 122 z 123 { 124 | 125 } 126 ~ 127 DEL
-.fi
-.in -2
-.sp
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/usr/pub/ascii\fR \fR
-.ad
-.RS 19n
-On-line chart of octal and hexadecimal values for the \fBASCII\fR character
-set.
-.RE
-
diff --git a/usr/src/man/man5/attributes.5 b/usr/src/man/man5/attributes.5
deleted file mode 100644
index cae1a869d2..0000000000
--- a/usr/src/man/man5/attributes.5
+++ /dev/null
@@ -1,720 +0,0 @@
-'\" te
-.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH ATTRIBUTES 5 "May 13, 2017"
-.SH NAME
-attributes, architecture, availability, CSI, stability, MT-Level, standard \-
-attributes of interfaces
-.SH DESCRIPTION
-.LP
-The \fBATTRIBUTES\fR section of a manual page contains a table defining
-attribute types and their corresponding values. The following is an example of
-an attributes table. Not all attribute types are appropriate for all types of
-interfaces.
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture SPARC
-_
-CSI Enabled
-_
-Interface Stability Committed
-_
-MT-Level Safe
-_
-Standard See \fBstandards\fR(5).
-.TE
-
-.SS "Architecture"
-.LP
-Architecture defines processor or specific hardware. See \fB-p\fR option of
-\fBuname\fR(1). In some cases, it may indicate required adapters or
-peripherals.
-.SS "Code Set Independence (CSI)"
-.LP
-\fBOS\fR utilities and libraries free of dependencies on the properties of any
-code sets are said to have Code Set Independence (CSI). They have the attribute
-of being \fBCSI\fR enabled. This is in contrast to many commands and utilities,
-for example, that work only with Extended Unix Codesets (EUC), an encoding
-method that allows concurrent support for up to four code sets and is commonly
-used to represent Asian character sets.
-.sp
-.LP
-For practical reasons, however, this independence is not absolute. Certain
-assumptions are still applied to the current \fBCSI\fR implementation:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-File code is a superset of \fBASCII\fR.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-To support multi-byte characters and null-terminated \fBUNIX\fR file names,
-the \fINULL\fR and \fB/\fR (slash) characters cannot be part of any multi-byte
-characters.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Only "stateless" file code encodings are supported. Stateless encoding avoids
-shift, locking shift, designation, invocation, and so forth, although single
-shift is not excluded.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Process code (\fBwchar_t\fR values) is implementation dependent and can change
-over time or between implementations or between locales.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Not every object can have names composed of arbitrary characters. The names of
-the following objects must be composed of \fBASCII\fR characters:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-User names, group name, and passwords
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-System name
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Names of printers and special devices
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Names of terminals (/\fBdev/tty*\fR)
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Process \fBID\fR numbers
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Message queues, semaphores, and shared memory labels.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The following may be composed of \fBISO\fR Latin-1 or \fBEUC\fR characters:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-File names
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Directory names
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Command names
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Shell variables and environmental variable names
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Mount points for file systems
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBNIS\fR key names and domain names
-.RE
-.RE
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The names of \fBNFS\fR shared files should be composed of \fBASCII\fR
-characters. Although files and directories may have names and contents composed
-of characters from non-\fBASCII\fR code sets, using only the \fBASCII\fR
-codeset allows \fBNFS\fR mounting across any machine, regardless of
-localization. For the commands and utilities that are \fBCSI\fR enabled, all
-can handle single-byte and multi-byte locales released in 2.6. For applications
-to get full support of internationalization services, dynamic binding has to be
-applied. Statically bound programs will only get support for C and POSIX
-locales.
-.RE
-.SS "Interface Stability"
-.LP
-Sun often provides developers with early access to new technologies, which
-allows developers to evaluate with them as soon as possible. Unfortunately, new
-technologies are prone to changes and standardization often results in
-interface incompatibility from previous versions.
-.sp
-.LP
-To make reasonable risk assessments, developers need to know how likely an
-interface is to change in future releases. To aid developers in making these
-assessments, interface stability information is included on some manual pages
-for commands, entry-points, and file formats.
-.sp
-.LP
-The more stable interfaces can safely be used by nearly all applications,
-because Sun will endeavor to ensure that these continue to work in future minor
-releases. Applications that depend only on Committed interfaces should reliably
-continue to function correctly on future minor releases (but not necessarily on
-earlier major releases).
-.sp
-.LP
-The less stable interfaces allow experimentation and prototyping, but should be
-used only with the understanding that they might change incompatibly or even be
-dropped or replaced with alternatives in future minor releases.
-.sp
-.LP
-"Interfaces" that Sun does not document (for example, most kernel data
-structures and some symbols in system header files) may be implementation
-artifacts. Such internal interfaces are not only subject to incompatible change
-or removal, but we are unlikely to mention such a change in release notes.
-.SS "Release Levels"
-.LP
-Products are given release levels, as well as names, to aid compatibility
-discussions. Each release level may also include changes suitable for lower
-levels.
-.sp
-
-.sp
-.TS
-c c c
-l l l .
-Release Version Significance
-_
-Major x.0 T{
-Likely to contain major feature additions; adhere to different, possibly incompatible standard revisions; and though unlikely, could change, drop, or replace Committed interfaces. Initial product releases are usually 1.0.
-T}
-_
-Minor x.y T{
-Compared to an x.0 or earlier release (y!=0), it is likely to contain: feature additions, compatible changes to Committed interfaces, or likely incompatible changes to Uncommitted or Volatile interfaces.
-T}
-_
-Micro x.y.z T{
-Intended to be interface compatible with the previous release (z!=0), but likely to add bug fixes, performance enhancements, and support for additional hardware. Incompatible changes to Volatile interfaces are possible.
-T}
-.TE
-
-.sp
-.LP
-In the context of interface stability, update releases (occasionally referred
-to as patch releases) should be considered equivalent to Micro Releases.
-.SS "Classifications"
-.LP
-The following table summarizes how stability level classifications relate to
-release level. The first column lists the Stability Level. The second column
-lists the Release Level for Incompatible Changes, and the third column lists
-other comments. For a complete discussion of individual classifications, see
-the appropriate subsection below.
-.sp
-
-.sp
-.TS
-c c c
-l l l .
-Stability Release Comments
-_
-Committed Major (x.0) Incompatibilities are exceptional.
-_
-Uncommitted Minor (x.y) Incompatibilities are common.
-_
-Volatile Micro (x.y.z) Incompatibilities are common.
-.TE
-
-.sp
-.LP
-The interface stability level classifications described on this manual page
-apply to both source and binary interfaces unless otherwise stated. All
-stability level classifications are public, with the exception of the
-\fBPrivate\fR classification. The precise stability level of a public interface
-(one that is documented in the manual pages) is unspecified unless explicitly
-stated. The stability level of an undocumented interface is implicitly
-\fBPrivate\fR.
-.sp
-.LP
-The existence of documentation other than the documentation that is a component
-of the Solaris product should not be construed to imply any level of stability
-for interfaces provided by the Solaris product. The only source of stability
-level information is Solaris manual pages.
-.sp
-.ne 2
-.na
-\fB\fBCommitted\fR\fR
-.ad
-.sp .6
-.RS 4n
-The intention of a Committed interface is to enable third parties to develop
-applications to these interfaces, release them, and have confidence that they
-will run on all releases of the product after the one in which the interface
-was introduced, and within the same Major release. Even at a Major release,
-incompatible changes are expected to be rare, and to have strong
-justifications.
-.sp
-Interfaces defined and controlled as industry standards are most often treated
-as Committed interfaces. In this case, the controlling body and/or public,
-versioned document is typically noted in a "Standard" entry in the Attributes
-table or elsewhere in the documentation.
-.sp
-Although a truly exceptional event, incompatible changes are possible in any
-release if the associated defect is serious enough as outlined in the
-Exceptions section of this document or in a Minor release by following the End
-of Feature process. If support of a Committed interface must be discontinued,
-Sun will attempt to provide notification and the stability level will be marked
-Obsolete.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBUncommitted\fR\fR
-.ad
-.sp .6
-.RS 4n
-No commitment is made about either source or binary compatibility of these
-interfaces from one Minor release to the next. Even the drastic incompatible
-change of removal of the interface in a Minor release is possible. Uncommitted
-interfaces are generally not appropriate for use by release-independent
-products.
-.sp
-Incompatible changes to the interface are intended to be motivated by true
-improvement to the interface which may include ease of use considerations. The
-general expectation should be that Uncommitted interfaces are not likely to
-change incompatibly and if such changes occur they will be small in impact and
-may often have a mitigation plan.
-.sp
-Uncommitted interfaces generally fall into one of the following subcategories:
-.RS +4
-.TP
-1.
-Interfaces that are experimental or transitional. They are typically used to
-give outside developers early access to new or rapidly changing technology, or
-to provide an interim solution to a problem where a more general solution is
-anticipated.
-.RE
-.RS +4
-.TP
-2.
-Interfaces whose specification is controlled by an outside body yet Sun
-expects to make a reasonable effort to maintain compatibility with previous
-releases until the next Minor release at which time Sun expects to synchronize
-with the external specification.
-.RE
-.RS +4
-.TP
-3.
-Interfaces whose target audience values innovation (and possibly ease of
-use) over stability. This attribute is often associated with administrative
-interfaces for higher tier components.
-.RE
-For Uncommitted interfaces, Sun makes no claims about either source or binary
-compatibility from one minor release to another. Applications developed based
-on these interfaces may not work in future minor releases.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBVolatile\fR\fR
-.ad
-.sp .6
-.RS 4n
-Volatile interfaces can change at any time and for any reason.
-.sp
-The Volatile interface stability level allows Sun products to quickly track a
-fluid, rapidly evolving specification. In many cases, this is preferred to
-providing additional stability to the interface, as it may better meet the
-expectations of the consumer.
-.sp
-The most common application of this taxonomy level is to interfaces that are
-controlled by a body other than Sun, but unlike specifications controlled by
-standards bodies or Free or Open Source Software (FOSS) communities which value
-interface compatibility, it can not be asserted that an incompatible change to
-the interface specification would be exceedingly rare. It may also be applied
-to FOSS controlled software where it is deemed more important to track the
-community with minimal latency than to provide stability to our customers.
-.sp
-It also common to apply the Volatile classification level to interfaces in the
-process of being defined by trusted or widely accepted organization. These are
-generically referred to as draft standards. An "IETF Internet draft" is a well
-understood example of a specification under development.
-.sp
-Volatile can also be applied to experimental interfaces.
-.sp
-No assertion is made regarding either source or binary compatibility of
-Volatile interfaces between any two releases, including patches. Applications
-containing these interfaces might fail to function properly in any future
-release.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBNot-an-Interface\fR\fR
-.ad
-.sp .6
-.RS 4n
-The situation occasionally occurs where there exists an entity that could be
-inferred to be an interface, but actually is not. Common examples are output
-from CLIs intended only for human consumption and the exact layout of a GUI.
-.sp
-This classification is a convenience term to be used to clarify such situations
-where such confusion is identified as likely. Failure to apply this term to an
-entity is not an indication that the entity is some form of interface. It only
-indicates that the potential for confusion was not identified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPrivate\fR\fR
-.ad
-.sp .6
-.RS 4n
-A Private interface is an interface provided by a component (or product)
-intended only for the use of that component. A Private interface might still be
-visible to or accessible by other components. Because the use of interfaces
-private to another component carries great stability risks, such use is
-explicitly not supported. Components not supplied by Sun Microsystems should
-not use Private interfaces.
-.sp
-Most Private interfaces are not documented. It is an exceptional case when a
-Private interface is documented. Reasons for documenting a Private interface
-include, but are not limited to, the intention that the interface might be
-reclassified to one of the public stability level classifications in the future
-or the fact that the interface is inordinately visible.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBObsolete\fR\fR
-.ad
-.sp .6
-.RS 4n
-Obsolete is a modifier that can appear in conjunction with the above
-classification levels. The Obsolete modifier indicates an interface that is
-"deprecated" and/or no longer advised for general use. An existing interface
-may be downgraded from some other status (such as Committed or Uncommitted) by
-the application of the Obsolete modifier to encourage customers to migrate from
-that interface before it may be removed (or incompatibly changed).
-.sp
-An Obsolete interface is supported in the current release, but is scheduled to
-be removed in a future (minor) release. When support of an interface is to be
-discontinued, Sun will attempt to provide notification before discontinuing
-support. Use of an Obsolete interface may produce warning messages.
-.RE
-
-.SS "Exceptions"
-.LP
-There are rare instances when it is in the best interest of both Sun and the
-customer to break the interface stability commitment. The following list
-contains the common, known reasons for the interface provider to violate an
-interface stability commitment, but does not preclude others.
-.RS +4
-.TP
-1.
-Security holes where the vulnerability is inherent in the interface.
-.RE
-.RS +4
-.TP
-2.
-Data corruption where the vulnerability is inherent in the interface.
-.RE
-.RS +4
-.TP
-3.
-Standards violations uncovered by a change in interpretation or enhancement
-of conformance tests.
-.RE
-.RS +4
-.TP
-4.
-An interface specification which isn't controlled by Sun has been changed
-incompatibly and the vast majority of interface consumers expect the newer
-interface.
-.RE
-.RS +4
-.TP
-5.
-Not making the incompatible change would be incomprehensible to our
-customers. One example of this would to have not incompatibly changed pcfs
-when the DOS 8.3 naming restrictions were abandoned.
-.RE
-.sp
-.LP
-Incompatible changes allowed by exception will always be delivered in the "most
-major" release vehicle possible. However, often the consequences of the
-vulnerabilities or contractual branding requirements will force delivery in a
-patch.
-.SS "Compatibility with Earlier Interface Classification Schemes"
-.LP
-In releases up to and including Solaris 10, a different interface
-classification scheme was used. The following table summarizes the mapping
-between the old and new classification schemes.
-.sp
-
-.sp
-.TS
-c c c
-l l l .
-Old New Comments
-_
-Standard Committed T{
-An entry in the attributes table for the Standard attribute type should appear.
-T}
-Stable Committed Name change.
-Evolving Uncommitted Actual commitments match.
-Unstable Uncommitted Name change.
-External Volatile T{
-Name change with expansion of allowed usage.
-T}
-Obsolete (Obsolete) Was a classification, now a modifier.
-.TE
-
-.sp
-.LP
-The increased importance of Free or Open Source Software motivated the name
-change from Stable/Unstable to Committed/Uncommitted. Stable conflicted with
-the common use of the term in FOSS communities.
-.sp
-.LP
-Ambiguity in the definition of Evolving was causing difficulty in
-interpretation. As part of the migration to the new classification scheme, many
-formerly Evolving interfaces were upgraded to Committed. However, upon
-encountering the term Evolving, Uncommitted should be inferred.
-.SS "MT-Level"
-.LP
-Libraries are classified into categories that define their ability to support
-multiple threads. Manual pages containing functions that are of multiple or
-differing levels describe this in their \fBNOTES\fR or \fBUSAGE\fR section.
-.sp
-.ne 2
-.na
-\fB\fBSafe\fR\fR
-.ad
-.sp .6
-.RS 4n
-Safe is an attribute of code that can be called from a multithreaded
-application. The effect of calling into a Safe interface or a safe code segment
-is that the results are valid even when called by multiple threads. Often
-overlooked is the fact that the result of this Safe interface or safe code
-segment can have global consequences that affect all threads. For example, the
-action of opening or closing a file from one thread is visible by all the
-threads within a process. A multithreaded application has the responsibility
-for using these interfaces in a safe manner, which is different from whether or
-not the interface is Safe. For example, a multithreaded application that closes
-a file that is still in use by other threads within the application is not
-using the \fBclose\fR(2) interface safely.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBUnsafe\fR\fR
-.ad
-.sp .6
-.RS 4n
-An Unsafe library contains global and static data that is not protected. It is
-not safe to use unless the application arranges for only one thread at time to
-execute within the library. Unsafe libraries might contain functions that are
-Safe; however, most of the library's functions are unsafe to call. Some
-functions that are Unsafe have reentrant counterparts that are MT-Safe.
-Reentrant functions are designated by the \fB_r\fR suffix appended to the
-function name.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBMT-Safe\fR\fR
-.ad
-.sp .6
-.RS 4n
-An MT-Safe library is fully prepared for multithreaded access. It protects its
-global and static data with locks, and can provide a reasonable amount of
-concurrency. A library can be safe to use, but not MT-Safe. For example,
-surrounding an entire library with a monitor makes the library Safe, but it
-supports no concurrency so it is not considered MT-Safe. An MT-Safe library
-must permit a reasonable amount of concurrency. (This definition's purpose is
-to give precision to what is meant when a library is described as Safe. The
-definition of a Safe library does not specify if the library supports
-concurrency. The MT-Safe definition makes it clear that the library is Safe,
-and supports some concurrency. This clarifies the Safe definition, which can
-mean anything from being single threaded to being any degree of multithreaded.)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBAsync-Signal-Safe\fR\fR
-.ad
-.sp .6
-.RS 4n
-Async-Signal-Safe refers to particular library functions that can be safely
-called from a signal handler. A thread that is executing an Async-Signal-Safe
-function will not deadlock with itself if interrupted by a signal. Signals are
-only a problem for MT-Safe functions that acquire locks.
-.sp
-Async-Signal-Safe functions are also MT-Safe. Signals are disabled when locks
-are acquired in Async-Signal-Safe functions. These signals prevent a signal
-handler that might acquire the same lock from being called.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBMT-Safe with Exceptions\fR\fR
-.ad
-.sp .6
-.RS 4n
-See the \fBNOTES\fR or \fBUSAGE\fR sections of these pages for a description of
-the exceptions.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSafe with Exceptions\fR\fR
-.ad
-.sp .6
-.RS 4n
-See the \fBNOTES\fR or \fBUSAGE\fR sections of these pages for a description of
-the exceptions.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBFork-Safe\fR\fR
-.ad
-.sp .6
-.RS 4n
-The \fBfork\fR(2) function replicates only the calling thread in the child
-process. The \fBfork1\fR(2) function exists for compatibility with the past and
-is synonymous with \fBfork()\fR. If a thread other than the one performing the
-fork holds a lock when \fBfork()\fR is called, the lock will still be held in
-the child process but there will be no lock owner since the owning thread was
-not replicated. A child calling a function that attempts to acquire the lock
-will deadlock itself.
-.sp
-When \fBfork()\fR is called, a Fork-Safe library arranges to have all of its
-internal locks held only by the thread performing the fork. This is usually
-accomplished with \fBpthread_atfork\fR(3C), which is called when the library is
-initialized.
-.sp
-The \fBforkall\fR(2) function provides the capability for the rare case when a
-process needs to replicate all of its threads when performing a fork. No
-\fBpthread_atfork()\fR actions are performed when \fBforkall()\fR is called.
-There are dangers associated with calling \fBforkall()\fR. If some threads in a
-process are performing I/O operations when another thread calls
-\fBforkall()\fR, they will continue performing the same I/O operations in both
-the parent and child processes, possibly causing data corruption. For this and
-other race-condition reasons, the use of \fBforkall()\fR is discouraged.
-.sp
-In all Solaris releases prior to Solaris 10, the behavior of \fBfork()\fR
-depended on whether or not the application was linked with \fB-lpthread\fR
-(POSIX threads, see \fBstandards\fR(5)). If linked with \fB-lpthread\fR,
-\fBfork()\fR behaved like \fBfork1()\fR; otherwise it behaved like
-\fBforkall()\fR. To avoid any confusion concerning the behavior of
-\fBfork()\fR, applications can specifically call \fBfork1()\fR or
-\fBforkall()\fR as appropriate.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBCancel-Safety\fR\fR
-.ad
-.sp .6
-.RS 4n
-If a multithreaded application uses \fBpthread_cancel\fR(3C) to cancel (that
-is, kill) a thread, it is possible that the target thread is killed while
-holding a resource, such as a lock or allocated memory. If the thread has not
-installed the appropriate cancellation cleanup handlers to release the
-resources appropriately (see \fBpthread_cancel\fR(3C)), the application is
-"cancel-unsafe", that is, it is not safe with respect to cancellation. This
-unsafety could result in deadlocks due to locks not released by a thread that
-gets cancelled, or resource leaks; for example, memory not being freed on
-thread cancellation. All applications that use \fBpthread_cancel\fR(3C) should
-ensure that they operate in a Cancel-Safe environment. Libraries that have
-cancellation points and which acquire resources such as locks or allocate
-memory dynamically, also contribute to the cancel-unsafety of applications that
-are linked with these libraries. This introduces another level of safety for
-libraries in a multithreaded program: Cancel-Safety. There are two
-sub-categories of Cancel-Safety: Deferred-Cancel-Safety, and
-Asynchronous-Cancel-Safety. An application is considered to be
-Deferred-Cancel-Safe when it is Cancel-Safe for threads whose cancellation type
-is \fBPTHREAD_CANCEL_DEFERRED\fR. An application is considered to be
-Asynchronous-Cancel-Safe when it is Cancel-Safe for threads whose cancellation
-type is \fBPTHREAD_CANCEL_ASYNCHRONOUS\fR. Deferred-Cancel-Safety is easier to
-achieve than Asynchronous-Cancel-Safety, since a thread with the deferred
-cancellation type can be cancelled only at well-defined cancellation points,
-whereas a thread with the asynchronous cancellation type can be cancelled
-anywhere. Since all threads are created by default to have the deferred
-cancellation type, it might never be necessary to worry about asynchronous
-cancel safety. Most applications and libraries are expected to always be
-Asynchronous-Cancel-Unsafe. An application which is Asynchronous-Cancel-Safe is
-also, by definition, Deferred-Cancel-Safe.
-.RE
-
-.SS "Standard"
-.LP
-Many interfaces are defined and controlled as industry standards. When this is
-the case, the controlling body and/or public, versioned document is noted in
-this section.
-.sp
-.LP
-Programmers producing portable applications should rely on the interface
-descriptions present in the standard or specification to which the application
-is intended to conform, rather than the manual page descriptions of interfaces
-based upon a public standard. When the standard or specification allows
-alternative implementation choices, the manual page usually only describes the
-alternative implemented by Sun. The manual page also describes any compatible
-extensions to the base definition of Standard interfaces provided by Sun.
-.sp
-.LP
-No endorsement of the referenced controlling body or document should be
-inferred by its presence as a "Standard" entry. The controlling body may be a
-very formal organization, as in ISO or ANSII, a less formal, but generally
-accepted organization such as IETF, or as informal as the sole contributor in
-the case of FOSS (Free or Open Source Software).
-.SH SEE ALSO
-.LP
-\fBuname\fR(1), \fBIntro\fR(3), \fBstandards\fR(5)
diff --git a/usr/src/man/man5/au.5 b/usr/src/man/man5/au.5
new file mode 100644
index 0000000000..e34fdedf95
--- /dev/null
+++ b/usr/src/man/man5/au.5
@@ -0,0 +1,213 @@
+'\" te
+.\" Copyright (c) 2001, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH AU 5 "Jan 15, 2001"
+.SH NAME
+au \- AU audio file format
+.SH SYNOPSIS
+.LP
+.nf
+\fB#include <audio/au.h>\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+An AU audio file is composed of three parts: a header, an optional description
+field, and a contiguous segment of audio data. The header is 24 bytes, and the
+description field is at least 4 bytes. Therefore, the offset for most AU files
+is 28 bytes. However, some people store additional data in the AU header.
+.sp
+.LP
+The AU audio structure members and audio data are stored big endian. That is,
+it starts with the most significant byte, regardless of the native byte order
+of the machine architecture on which an application may be running. Therefore,
+multi-byte audio data may require byte reversal for proper playback on
+different processor architectures. See the macro section for properly reading
+and writing the AU audio structure members.
+.sp
+.LP
+The AU header is defined by the following structure:
+.sp
+.in +2
+.nf
+struct au_filehdr {
+ uint32_t au_magic; /* magic number (.snd) */
+ uint32_t au_offset; /* byte offset to start of audio data */
+ uint32_t au_data_size; /* data length in bytes */
+ uint32_t au_encoding; /* data encoding */
+ uint32_t au_sample_rate; /* samples per second */
+ uint32_t au_channels; /* number of interleaved channels */
+};
+typedef struct au_filehdr au_filehdr_t;
+.fi
+.in -2
+
+.sp
+.LP
+The \fBau_magic\fR field always contains the following constant for an AU audio
+file:
+.sp
+.in +2
+.nf
+AUDIO_AU_FILE_MAGIC ( 0x2e736e64 ) /* ".snd" */
+.fi
+.in -2
+
+.sp
+.LP
+The \fBau_offset\fR field contains the length of the audio file header plus the
+variable length info field. Consequently, it can be interpreted as the offset
+from the start of the file to the start of the audio data.
+.sp
+.LP
+The \fBau_data_size\fR field contains the length, in bytes, of the audio data
+segment. If this length is not known when the header is written, it should be
+set to \fBAUDIO_AU_UNKNOWN_SIZE\fR, defined as follows:
+.sp
+.in +2
+.nf
+AUDIO_AU_UNKNOWN_SIZE ( ~0 ) /* (unsigned) -1 */
+.fi
+.in -2
+
+.sp
+.LP
+When the \fBau_data_size\fR field contains \fBAUDIO_AU_UNKNOWN_SIZE\fR, the
+length of the audio data can be determined by subtracting \fBau_offset\fR from
+the total length of the file.
+.sp
+.LP
+The encoding field contains one of the following enumerated keys:
+.sp
+.in +2
+.nf
+AUDIO_AU_ENCODING_ULAW /* 8-bit u-law */
+AUDIO_AU_ENCODING_LINEAR_8 /* 8-bit linear PCM */
+AUDIO_AU_ENCODING_LINEAR_16 /* 16-bit linear PCM */
+AUDIO_AU_ENCODING_LINEAR_24 /* 24-bit linear PCM */
+AUDIO_AU_ENCODING_LINEAR_32 /* 32-bit linear PCM */
+AUDIO_AU_ENCODING_FLOAT /* Floating point */
+AUDIO_AU_ENCODING_DOUBLE /* Double precision float */
+AUDIO_AU_ENCODING_FRAGMENTED /* Fragmented sample data */
+AUDIO_AU_ENCODING_DSP /* DSP program */
+AUDIO_AU_ENCODING_FIXED_8 /* 8-bit fixed point */
+AUDIO_AU_ENCODING_FIXED_16 /* 16-bit fixed point */
+AUDIO_AU_ENCODING_FIXED_24 /* 24-bit fixed point */
+AUDIO_AU_ENCODING_FIXED_32 /* 32-bit fixed point */
+AUDIO_AU_ENCODING_EMPHASIS /* 16-bit linear with emphasis */
+AUDIO_AU_ENCODING_COMPRESSED /* 16-bit linear compressed */
+AUDIO_AU_ENCODING_EMP_COMP /* 16-bit linear with emphasis
+ and compression */
+AUDIO_AU_ENCODING_MUSIC_KIT /* Music kit DSP commands */
+AUDIO_AU_ENCODING_ADPCM_G721 /* CCITT G.721 ADPCM */
+AUDIO_AU_ENCODING_ADPCM_G722 /* CCITT G.722 ADPCM */
+AUDIO_AU_ENCODING_ADPCM_G723_3 /* CCITT G.723.3 ADPCM */
+AUDIO_AU_ENCODING_ADPCM_G723_5 /* CCITT G.723.5 ADPCM */
+AUDIO_AU_ENCODING_ALAW /* 8-bit A-law G.711 */
+.fi
+.in -2
+
+.sp
+.LP
+All of the linear encoding formats are signed integers centered at zero.
+.sp
+.LP
+The \fBau_sample_rate\fR field contains the audio file's sampling rate in
+samples per second. Some common sample rates include 8000, 11025, 22050, 44100,
+and 48000 samples per second.
+.sp
+.LP
+The \fBau_channels\fR field contains the number of interleaved data channels.
+For monaural data, this value is set to one. For stereo data, this value is set
+to two. More than two data channels can be interleaved, but such formats are
+currently unsupported by the Solaris audio driver architecture. For a stereo
+sound file, the first sample is the left track and the second sample is the
+right track.
+.sp
+.LP
+The optional info field is a variable length annotation field that can be
+either text or data. If it is a text description of the sound, then it should
+be NULL terminated. However, some older files might not be terminated properly.
+The size of the info field is set when the structure is created and cannot be
+enlarged later.
+.SS "Macros"
+.sp
+.LP
+Accessing all of the AU audio structure members should be done through the
+supplied \fBAUDIO_AU_FILE2HOST\fR and \fBAUDIO_AU_HOST2FILE\fR macros. By
+always using these macros, code will be byte-order independent. See the example
+below.
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRDisplaying Header Information for a Sound File
+.sp
+.LP
+The following program reads and displays the header information for an AU sound
+file. The \fBAUDIO_AU_FILE2HOST\fR macro ensures that this information will
+always be in the proper byte order.
+
+.sp
+.in +2
+.nf
+void main(void)
+{
+ au_filehdr_t hdr;
+ au_filehdr_t local;
+ int fd;
+ char *name = "bark.au";
+
+ if ((fd = open(name, O_RDONLY)) < 0) {
+ printf("can't open file %s\en", name);
+ exit(1);
+ }
+
+ (void) read(fd, &hdr, sizeof (hdr));
+
+ AUDIO_AU_FILE2HOST(&hdr.au_magic, &local.au_magic);
+ AUDIO_AU_FILE2HOST(&hdr.au_offset, &local.au_offset);
+ AUDIO_AU_FILE2HOST(&hdr.au_data_size, &local.au_data_size);
+ AUDIO_AU_FILE2HOST(&hdr.au_encoding, &local.au_encoding);
+ AUDIO_AU_FILE2HOST(&hdr.au_sample_rate, &local.au_sample_rate);
+ AUDIO_AU_FILE2HOST(&hdr.au_channels, &local.au_channels);
+
+ printf("Magic = %x\en", local.au_magic);
+ printf("Offset = %d\en", local.au_offset);
+ printf("Number of data bytes = %d\en", local.au_data_size);
+ printf("Sound format = %d\en", local.au_encoding);
+ printf("Sample rate = %d\en", local.au_sample_rate);
+ printf("Number of channels = %d\en", local.au_channels);
+
+ (void) close(fd);
+}
+.fi
+.in -2
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Stability Level Evolving
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7)
+.SH NOTES
+.sp
+.LP
+Some older AU audio files are incorrectly coded with info strings that are not
+properly NULL-terminated. Thus, applications should always use the \fBau_offset
+value\fR to find the end of the info data and the beginning of the audio data.
diff --git a/usr/src/man/man5/audit.log.5 b/usr/src/man/man5/audit.log.5
new file mode 100644
index 0000000000..53ec1241f7
--- /dev/null
+++ b/usr/src/man/man5/audit.log.5
@@ -0,0 +1,800 @@
+'\" te
+.\" Copyright (c) 2017 Peter Tribble
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
+.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH AUDIT.LOG 5 "Mar 6, 2017"
+.SH NAME
+audit.log \- audit trail file
+.SH SYNOPSIS
+.LP
+.nf
+\fB#include <bsm/audit.h>\fR
+.fi
+
+.LP
+.nf
+\fB#include <bsm/audit_record.h>\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+\fBaudit.log\fR files are the depository for audit records stored locally or on
+an NFS-mounted audit server. These files are kept in directories as specified
+by the \fBp_dir\fR attribute of the \fBaudit_binfile\fR(7) plugin. They are
+named to reflect the time they are created and are, when possible, renamed to
+reflect the time they are closed as well. The name takes the form
+.sp
+.LP
+\fIyyyymmddhhmmss\fR\fB\&.not_terminated.\fR\fIhostname\fR
+.sp
+.LP
+when open or if \fBauditd\fR(8) terminated ungracefully, and the form
+.sp
+.LP
+\fIyyyymmddhhmmss\fR\fB\&.\fR\fIyyyymmddhhmmss\fR\fB\&.\fR\fIhostname\fR
+.sp
+.LP
+when properly closed. \fByyyy\fR is the year, \fBmm\fR the month, \fBdd\fR day
+in the month, \fBhh\fR hour in the day, \fBmm\fR minute in the hour, and
+\fBss\fR second in the minute. All fields are of fixed width.
+.sp
+.LP
+Audit data is generated in the binary format described below; the default for
+audit is binary format. See \fBaudit_syslog\fR(7) for an alternate data
+format.
+.sp
+.LP
+The \fBaudit.log\fR file begins with a standalone \fBfile token\fR and
+typically ends with one also. The beginning \fBfile token\fR records the
+pathname of the previous audit file, while the ending \fBfile token\fR records
+the pathname of the next audit file. If the file name is \fBNULL\fR the
+appropriate path was unavailable.
+.sp
+.LP
+The \fBaudit.log\fR files contains audit records. Each audit record is made up
+of \fIaudit tokens\fR. Each record contains a header token followed by various
+data tokens. Depending on the audit policy in place by \fBauditon\fR(2),
+optional other tokens such as trailers or sequences may be included.
+.sp
+.LP
+The tokens are defined as follows:
+.sp
+.LP
+The \fBfile\fR token consists of:
+.sp
+.in +2
+.nf
+token ID 1 byte
+seconds of time 4 bytes
+microseconds of time 4 bytes
+file name length 2 bytes
+file pathname N bytes + 1 terminating NULL byte
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The \fBheader\fR token consists of:
+.sp
+.in +2
+.nf
+token ID 1 byte
+record byte count 4 bytes
+version # 1 byte [2]
+event type 2 bytes
+event modifier 2 bytes
+seconds of time 4 bytes/8 bytes (32-bit/64-bit value)
+nanoseconds of time 4 bytes/8 bytes (32-bit/64-bit value)
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The expanded \fBheader\fR token consists of:
+.sp
+.in +2
+.nf
+token ID 1 byte
+record byte count 4 bytes
+version # 1 byte [2]
+event type 2 bytes
+event modifier 2 bytes
+address type/length 1 byte
+machine address 4 bytes/16 bytes (IPv4/IPv6 address)
+seconds of time 4 bytes/8 bytes (32/64-bits)
+nanoseconds of time 4 bytes/8 bytes (32/64-bits)
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The \fBtrailer\fR token consists of:
+.sp
+.in +2
+.nf
+token ID 1 byte
+trailer magic number 2 bytes
+record byte count 4 bytes
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The \fBarbitrary\fR \fBdata\fR token is defined:
+.sp
+.in +2
+.nf
+token ID 1 byte
+how to print 1 byte
+basic unit 1 byte
+unit count 1 byte
+data items (depends on basic unit)
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The \fBin_addr\fR token consists of:
+.sp
+.in +2
+.nf
+token ID 1 byte
+IP address type/length 1 byte
+IP address 4 bytes/16 bytes (IPv4/IPv6 address)
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The expanded \fBin_addr\fR token consists of:
+.sp
+.in +2
+.nf
+token ID 1 byte
+IP address type/length 4 bytes/16 bytes (IPv4/IPv6 address)
+IP address 16 bytes
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The \fBip\fR token consists of:
+.sp
+.in +2
+.nf
+token ID 1 byte
+version and ihl 1 byte
+type of service 1 byte
+length 2 bytes
+id 2 bytes
+offset 2 bytes
+ttl 1 byte
+protocol 1 byte
+checksum 2 bytes
+source address 4 bytes
+destination address 4 bytes
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The expanded \fBip\fR token consists of:
+.sp
+.in +2
+.nf
+token ID 1 byte
+version and ihl 1 byte
+type of service 1 byte
+length 2 bytes
+id 2 bytes
+offset 2 bytes
+ttl 1 byte
+protocol 1 byte
+checksum 2 bytes
+address type/type 1 byte
+source address 4 bytes/16 bytes (IPv4/IPv6 address)
+address type/length 1 byte
+destination address 4 bytes/16 bytes (IPv4/IPv6 address)
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The \fBiport\fR token consists of:
+.sp
+.in +2
+.nf
+token ID 1 byte
+port IP address 2 bytes
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The \fBpath\fR token consists of:
+.sp
+.in +2
+.nf
+token ID 1 byte
+path length 2 bytes
+path N bytes + 1 terminating NULL byte
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The \fBpath_attr\fR token consists of:
+.sp
+.in +2
+.nf
+token ID 1 byte
+count 4 bytes
+path \fIcount\fR null-terminated string(s)
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The \fBprocess\fR token consists of:
+.sp
+.in +2
+.nf
+token ID 1 byte
+audit ID 4 bytes
+effective user ID 4 bytes
+effective group ID 4 bytes
+real user ID 4 bytes
+real group ID 4 bytes
+process ID 4 bytes
+session ID 4 bytes
+terminal ID
+ port ID 4 bytes/8 bytes (32-bit/64-bit value)
+ machine address 4 bytes
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The expanded \fBprocess\fR token consists of:
+.sp
+.in +2
+.nf
+token ID 1 byte
+audit ID 4 bytes
+effective user ID 4 bytes
+effective group ID 4 bytes
+real user ID 4 bytes
+real group ID 4 bytes
+process ID 4 bytes
+session ID 4 bytes
+terminal ID
+ port ID 4 bytes/8 bytes (32-bit/64-bit value)
+ address type/length 1 byte
+ machine address 4 bytes/16 bytes (IPv4/IPv6 address)
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The \fBreturn\fR token consists of:
+.sp
+.in +2
+.nf
+token ID 1 byte
+error number 1 byte
+return value 4 bytes/8 bytes (32-bit/64-bit value)
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The \fBsubject\fR token consists of:
+.sp
+.in +2
+.nf
+token ID 1 byte
+audit ID 4 bytes
+effective user ID 4 bytes
+effective group ID 4 bytes
+real user ID 4 bytes
+real group ID 4 bytes
+process ID 4 bytes
+session ID 4 bytes
+terminal ID
+ port ID 4 bytes/8 bytes (32-bit/64-bit value)
+ machine address 4 bytes
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The expanded \fBsubject\fR token consists of:
+.sp
+.in +2
+.nf
+token ID 1 byte
+audit ID 4 bytes
+effective user ID 4 bytes
+effective group ID 4 bytes
+real user ID 4 bytes
+real group ID 4 bytes
+process ID 4 bytes
+session ID 4 bytes
+terminal ID
+ port ID 4 bytes/8 bytes (32-bit/64-bit value)
+ address type/length 1 byte
+ machine address 4 bytes/16 bytes (IPv4/IPv6 address)
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The \fBSystem V IPC\fR token consists of:
+.sp
+.in +2
+.nf
+token ID 1 byte
+object ID type 1 byte
+object ID 4 bytes
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The \fBtext\fR token consists of:
+.sp
+.in +2
+.nf
+token ID 1 byte
+text length 2 bytes
+text N bytes + 1 terminating NULL byte
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The \fBattribute\fR token consists of:
+.sp
+.in +2
+.nf
+token ID 1 byte
+file access mode 4 bytes
+owner user ID 4 bytes
+owner group ID 4 bytes
+file system ID 4 bytes
+node ID 8 bytes
+device 4 bytes/8 bytes (32-bit/64-bit)
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The \fBgroups\fR token consists of:
+.sp
+.in +2
+.nf
+token ID 1 byte
+number groups 2 bytes
+group list N * 4 bytes
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The \fBSystem V IPC permission\fR token consists of:
+.sp
+.in +2
+.nf
+token ID 1 byte
+owner user ID 4 bytes
+owner group ID 4 bytes
+creator user ID 4 bytes
+creator group ID 4 bytes
+access mode 4 bytes
+slot sequence # 4 bytes
+key 4 bytes
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The \fBarg\fR token consists of:
+.sp
+.in +2
+.nf
+token ID 1 byte
+argument # 1 byte
+argument value 4 bytes/8 bytes (32-bit/64-bit value)
+text length 2 bytes
+text N bytes + 1 terminating NULL byte
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The \fBexec_args\fR token consists of:
+.sp
+.in +2
+.nf
+token ID 1 byte
+count 4 bytes
+text \fIcount\fR null-terminated string(s)
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The \fBexec_env\fR token consists of:
+.sp
+.in +2
+.nf
+token ID 1 byte
+count 4 bytes
+text \fIcount\fR null-terminated string(s)
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The \fBexit\fR token consists of:
+.sp
+.in +2
+.nf
+token ID 1 byte
+status 4 bytes
+return value 4 bytes
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The \fBsocket\fR token consists of:
+.sp
+.in +2
+.nf
+token ID 1 byte
+socket type 2 bytes
+remote port 2 bytes
+remote Internet address 4 bytes
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The expanded \fBsocket\fR token consists of:
+.sp
+.in +2
+.nf
+token ID 1 byte
+socket domain 2 bytes
+socket type 2 bytes
+local port 2 bytes
+address type/length 2 bytes
+local port 2 bytes
+local Internet address 4 bytes/16 bytes (IPv4/IPv6 address)
+remote port 2 bytes
+remote Internet address 4 bytes/16 bytes (IPv4/IPv6 address)
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The \fBseq\fR token consists of:
+.sp
+.in +2
+.nf
+token ID 1 byte
+sequence number 4 bytes
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The \fBprivilege\fR token consists of:
+.sp
+.in +2
+.nf
+token ID 1 byte
+text length 2 bytes
+privilege set name N bytes + 1 terminating NULL byte
+text length 2 bytes
+list of privileges N bytes + 1 terminating NULL byte
+.fi
+.in -2
+
+.sp
+.LP
+The \fBuse-of-auth\fR token consists of:
+.sp
+.in +2
+.nf
+token ID 1 byte
+text length 2 bytes
+authorization(s) N bytes + 1 terminating NULL byte
+.fi
+.in -2
+
+.sp
+.LP
+The \fBuse-of-privilege\fR token consists of:
+.sp
+.in +2
+.nf
+token ID 1 byte
+succ/fail 1 byte
+text length 2 bytes
+privilege used N bytes + 1 terminating NULL byte
+.fi
+.in -2
+
+.sp
+.LP
+The \fBcommand\fR token consists of:
+.sp
+.in +2
+.nf
+token ID 1 byte
+count of args 2 bytes
+argument list (count times)
+text length 2 bytes
+argument text N bytes + 1 terminating NULL byte
+count of env strings 2 bytes
+environment list (count times)
+text length 2 bytes
+env. text N bytes + 1 terminating NULL byte
+.fi
+.in -2
+
+.sp
+.LP
+The \fBACL\fR token consists of:
+.sp
+.in +2
+.nf
+token ID 1 byte
+type 4 bytes
+value 4 bytes
+file mode 4 bytes
+.fi
+.in -2
+
+.sp
+.LP
+The ACE token consists of:
+.sp
+.in +2
+.nf
+token ID 1 byte
+who 4 bytes
+access_mask 4 bytes
+flags 2 bytes
+type 2 bytes
+.fi
+.in -2
+
+.sp
+.LP
+The \fBzonename\fR token consists of:
+.sp
+.in +2
+.nf
+token ID 1 byte
+name length 2 bytes
+name \fI<name length>\fR including terminating NULL byte
+.fi
+.in -2
+
+.sp
+.LP
+The \fBfmri\fR token consists of:
+.sp
+.in +2
+.nf
+token ID 1 byte
+fmri length 2 bytes
+fmri \fI<fmri length>\fR including terminating NULL byte
+.fi
+.in -2
+
+.sp
+.LP
+The \fBlabel\fR token consists of:
+.sp
+.in +2
+.nf
+token ID 1 byte
+label ID 1 byte
+compartment length 1 byte
+classification 2 bytes
+compartment words \fI<compartment length>\fR * 4 bytes
+.fi
+.in -2
+
+.sp
+.LP
+The \fBxatom\fR token consists of:
+.sp
+.in +2
+.nf
+token ID 1 byte
+string length 2 bytes
+atom string \fIstring length\fR bytes
+.fi
+.in -2
+
+.sp
+.LP
+The \fBxclient\fR token consists of:
+.sp
+.in +2
+.nf
+token ID 1 byte
+client ID 4 bytes
+.fi
+.in -2
+
+.sp
+.LP
+The \fBxcolormap\fR token consists of:
+.sp
+.in +2
+.nf
+token ID 1 byte
+XID 4 bytes
+creator UID 4 bytes
+.fi
+.in -2
+
+.sp
+.LP
+The \fBxcursor\fR token consists of:
+.sp
+.in +2
+.nf
+token ID 1 byte
+XID 4 bytes
+creator UID 4 bytes
+.fi
+.in -2
+
+.sp
+.LP
+The \fBxfont\fR token consists of:
+.sp
+.in +2
+.nf
+token ID 1 byte
+XID 4 bytes
+creator UID 4 bytes
+.fi
+.in -2
+
+.sp
+.LP
+The \fBxgc\fR token consists of:
+.sp
+.in +2
+.nf
+token ID 1 byte
+XID 4 bytes
+creator UID 4 bytes
+.fi
+.in -2
+
+.sp
+.LP
+The \fBxpixmap\fR token consists of:
+.sp
+.in +2
+.nf
+token ID 1 byte
+XID 4 bytes
+creator UID 4 bytes
+.fi
+.in -2
+
+.sp
+.LP
+The \fBxproperty\fR token consists of:
+.sp
+.in +2
+.nf
+token ID 1 byte
+XID 4 bytes
+creator UID 4 bytes
+string length 2 bytes
+string \fIstring length\fR bytes
+.fi
+.in -2
+
+.sp
+.LP
+The \fBxselect\fR token consists of:
+.sp
+.in +2
+.nf
+token ID 1 byte
+property length 2 bytes
+property string \fIproperty length\fR bytes
+prop. type len. 2 bytes
+prop type \fIprop. type len.\fR bytes
+data length 2 bytes
+window data \fIdata length\fR bytes
+.fi
+.in -2
+
+.sp
+.LP
+The \fBxwindow\fR token consists of:
+.sp
+.in +2
+.nf
+token ID 1 byte
+XID 4 bytes
+creator UID 4 bytes
+.fi
+.in -2
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability See below.
+.TE
+
+.sp
+.LP
+The binary file format is Committed. The binary file contents is Uncommitted.
+.SH SEE ALSO
+.LP
+.BR audit (2),
+.BR auditon (2),
+.BR au_to (3BSM),
+.BR audit_binfile (7),
+.BR audit_remote (7),
+.BR audit_syslog (7),
+.BR audit (8),
+.BR auditd (8)
+.SH NOTES
+.LP
+Each token is generally written using the \fBau_to\fR(3BSM) family of function
+calls.
diff --git a/usr/src/man/man5/audit_binfile.5 b/usr/src/man/man5/audit_binfile.5
deleted file mode 100644
index ce15b4f06a..0000000000
--- a/usr/src/man/man5/audit_binfile.5
+++ /dev/null
@@ -1,77 +0,0 @@
-'\" te
-.\" Copyright (c) 2017 Peter Tribble
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
-.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH AUDIT_BINFILE 5 "Mar 6, 2017"
-.SH NAME
-audit_binfile \- generation of audit logs
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/security/audit_binfile.so\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBaudit_binfile\fR plugin module for audit,
-\fB/usr/lib/security/audit_binfile.so\fR, writes binary audit data to files as
-specified in the plugin's attributes configured by \fBauditconfig\fR(1M); it
-is the default plugin for the audit daemon \fBauditd\fR(1M). Its output is
-described by \fBaudit.log\fR(4).
-.SH OBJECT ATTRIBUTES
-.LP
-The \fBp_dir\fR attribute specifies a comma-separated list of
-directories to be used for storing audit files.
-.sp
-.LP
-The \fBp_minfree\fR attribute specifies the percentage of free space required.
-If free space falls below this threshold, the audit daemon \fBauditd\fR(1M)
-invokes the shell script \fBaudit_warn\fR(1M). The default threshold is 0%.
-.sp
-.LP
-The \fBp_fsize\fR attribute defines the maximum size in bytes that an audit
-file can become before it is automatically closed and a new audit file opened.
-This is equivalent to an administrator issuing an \fBaudit\fR \fB-n\fR command
-when the audit file contains the specified number of bytes. The default size is
-zero (0), which allows the file to grow without bound. The value specified must
-be within the range of [512,000, 2,147,483,647].
-.SH EXAMPLES
-.LP
-The following commands cause \fBaudit_binfile.so\fR to be activated, specify the
-directories for writing audit logs, and specify the percentage of required free
-space per directory. Note that using \fBauditconfig\fR(1M) only allows one
-attribute to be set at a time.
-.sp
-.in +2
-.nf
-# auditconfig -setplugin audit_binfile active p_minfree=20
-# auditconfig -setplugin audit_binfile active \e
-p_dir=/var/audit/jedgar/eggplant,\e
-/var/audit/jedgar.aux/eggplant,\e
-/var/audit/global/eggplant
-.fi
-.in -2
-.sp
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for a description of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-MT Level MT-Safe
-_
-Interface Stability Committed
-.TE
-
-.SH SEE ALSO
-.LP
-\fBauditd\fR(1M), \fBauditconfig\fR(1M), \fBaudit.log\fR(4), \fBattributes\fR(5)
diff --git a/usr/src/man/man5/audit_class.5 b/usr/src/man/man5/audit_class.5
new file mode 100644
index 0000000000..9ccfa05d7d
--- /dev/null
+++ b/usr/src/man/man5/audit_class.5
@@ -0,0 +1,175 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH AUDIT_CLASS 5 "Mar 6, 2017"
+.SH NAME
+audit_class \- audit class definitions
+.SH SYNOPSIS
+.LP
+.nf
+\fB/etc/security/audit_class\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+\fB/etc/security/audit_class\fR is a user-configurable ASCII system file that
+stores class definitions used in the audit system. Audit events in
+\fBaudit_event\fR(5) are mapped to one or more of the defined audit classes.
+\fBaudit_event\fR can be updated in conjunction with changes to
+\fBaudit_class\fR.
+Programs can use the \fBgetauclassent\fR(3BSM) routines to access audit
+class information.
+.sp
+.LP
+The fields for each class entry are separated by colons. Each class entry is a
+bitmap and is separated from each other by a newline.
+.sp
+.LP
+Each entry in the \fBaudit_class\fR file has the form:
+.sp
+.in +2
+.nf
+\fImask\fR:\fIname\fR:\fIdescription\fR
+.fi
+.in -2
+
+.sp
+.LP
+The fields are defined as follows:
+.sp
+.ne 2
+.na
+\fB\fImask\fR\fR
+.ad
+.RS 15n
+class mask
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIname\fR\fR
+.ad
+.RS 15n
+class name
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIdescription\fR\fR
+.ad
+.RS 15n
+class description
+.RE
+
+.sp
+.LP
+Each class is represented as a bit in the class mask which is an unsigned
+integer. Thus, there are 32 different classes available. Meta-classes can also
+be defined. These are supersets composed of multiple base classes, and thus
+will have more than 1 bit in its mask. See Examples. Two special meta-classes
+are also pre-defined: \fBall\fR, and \fBno\fR.
+.sp
+.ne 2
+.na
+\fB\fBall\fR\fR
+.ad
+.RS 7n
+Represents a conjunction of all allowed classes, and is provided as a shorthand
+method of specifying all classes.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBno\fR\fR
+.ad
+.RS 7n
+Is the invalid class, and any event mapped solely to this class will not be
+audited. Turning auditing on to the \fBall\fR meta class will not cause events
+mapped solely to the \fBno\fR class to be written to the audit trail. This
+class is also used to map obsolete events which are no longer generated.
+Obsolete events are retained to process old audit trails files.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRUsing an \fBaudit_class\fR File
+.sp
+.LP
+The following is an example of an \fBaudit_class\fR file:
+
+.sp
+.in +2
+.nf
+0x00000000:no:invalid class
+0x00000001:fr:file read
+0x00000002:fw:file write
+0x00000004:fa:file attribute access
+0x00000008:fm:file attribute modify
+0x00000010:fc:file create
+0x00000020:fd:file delete
+0x00000040:cl:file close
+0x00000100:nt:network
+0x00000200:ip:ipc
+0x00000400:na:non-attribute
+0x00001000:lo:login or logout
+0x00004000:ap:application
+0x000f0000:ad:old administrative (meta-class)
+0x00070000:am:administrative (meta-class)
+0x00010000:ss:change system state
+0x00020000:as:system-wide administration
+0x00040000:ua:user administration
+0x00080000:aa:audit utilization
+0x00300000:pc:process (meta-class)
+0x00100000:ps:process start/stop
+0x00200000:pm:process modify
+0x20000000:io:ioctl
+0x40000000:ex:exec
+0x80000000:ot:other
+0xffffffff:all:all classes (meta-class)
+.fi
+.in -2
+.sp
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/etc/security/audit_class\fR\fR
+.ad
+.RS 29n
+
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability See below.
+.TE
+
+.sp
+.LP
+The file format stability is Committed. The file content is Uncommitted.
+.SH SEE ALSO
+.LP
+.BR au_preselect (3BSM),
+.BR getauclassent (3BSM),
+.BR audit_event (5),
+.BR attributes (7)
+.SH NOTES
+.LP
+It is possible to deliberately turn on the \fBno\fR class in the kernel, in
+which case the audit trail will be flooded with records for the audit event
+\fBAUE_NULL\fR.
diff --git a/usr/src/man/man5/audit_event.5 b/usr/src/man/man5/audit_event.5
new file mode 100644
index 0000000000..1c328c725c
--- /dev/null
+++ b/usr/src/man/man5/audit_event.5
@@ -0,0 +1,172 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH AUDIT_EVENT 5 "Mar 6, 2017"
+.SH NAME
+audit_event \- audit event definition and class mapping
+.SH SYNOPSIS
+.LP
+.nf
+\fB/etc/security/audit_event\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+\fB/etc/security/audit_event\fR is a user-configurable ASCII system file that
+stores event definitions used in the audit system. As part of this definition,
+each event is mapped to one or more of the audit classes defined in
+\fBaudit_class\fR(5).
+Programs can use the \fBgetauevent\fR(3BSM) routines to access audit
+event information.
+.sp
+.LP
+The fields for each event entry are separated by colons. Each event is
+separated from the next by a NEWLINE.Each entry in the audit_event file has the
+form:
+.sp
+.in +2
+.nf
+\fInumber\fR:\fIname\fR:\fIdescription\fR:\fIflags\fR
+.fi
+.in -2
+
+.sp
+.LP
+The fields are defined as follows:
+.sp
+.ne 2
+.na
+\fB\fInumber\fR\fR
+.ad
+.RS 15n
+Event number.
+.sp
+Event number ranges are assigned as follows:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 15n
+Reserved as an invalid event number.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB1-2047\fR\fR
+.ad
+.RS 15n
+Reserved for the Solaris Kernel events.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB2048-32767\fR\fR
+.ad
+.RS 15n
+Reserved for the Solaris TCB programs.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB32768-65535\fR\fR
+.ad
+.RS 15n
+Available for third party TCB applications.
+.sp
+System administrators must \fBnot\fR add, delete, or modify (except to change
+the class mapping), events with an event number less than \fB32768\fR. These
+events are reserved by the system.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIname\fR\fR
+.ad
+.RS 15n
+Event name.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIdescription\fR\fR
+.ad
+.RS 15n
+Event description.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIflags\fR\fR
+.ad
+.RS 15n
+Flags specifying classes to which the event is mapped. Classes are comma
+separated, without spaces.
+.sp
+Obsolete events are commonly assigned to the special class \fBno\fR (invalid)
+to indicate they are no longer generated. Obsolete events are retained to
+process old audit trail files. Other events which are not obsolete may also be
+assigned to the \fBno\fR class.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRUsing the \fBaudit_event\fR File
+.sp
+.LP
+The following is an example of some \fBaudit_event\fR file entries:
+
+.sp
+.in +2
+.nf
+7:AUE_EXEC:exec(2):ps,ex
+79:AUE_OPEN_WTC:open(2) - write,creat,trunc:fc,fd,fw
+6152:AUE_login:login - local:lo
+6153:AUE_logout:logout:lo
+6154:AUE_telnet:login - telnet:lo
+6155:AUE_rlogin:login - rlogin:lo
+.fi
+.in -2
+.sp
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability See below.
+.TE
+
+.sp
+.LP
+The file format stability is Committed. The file content is Uncommitted.
+.SH FILES
+.ne 2
+.na
+\fB\fB/etc/security/audit_event\fR\fR
+.ad
+.RS 29n
+
+.RE
+
+.SH SEE ALSO
+.LP
+.BR getauevent (3BSM),
+.BR audit_class (5)
diff --git a/usr/src/man/man5/audit_remote.5 b/usr/src/man/man5/audit_remote.5
deleted file mode 100644
index f1d2a39455..0000000000
--- a/usr/src/man/man5/audit_remote.5
+++ /dev/null
@@ -1,342 +0,0 @@
-'\" te
-.\" Copyright (c) 2021 Peter Tribble
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH AUDIT_REMOTE 5 "November 22, 2021"
-.SH NAME
-audit_remote \- send audit logs to a remote server
-.SH SYNOPSIS
-.nf
-\fB/usr/lib/security/audit_remote.so\fR
-.fi
-
-.SH DESCRIPTION
-The \fBaudit_remote\fR plugin module for audit,
-\fB/usr/lib/security/audit_remote.so\fR, sends binary audit records
-(\fBaudit.log\fR(4)) to audit servers specified in the plugin's attributes
-configured by \fBauditconfig\fR(1M).
-.SS "Object Attributes"
-The following attributes specify the configuration of the \fBaudit_remote\fR
-plugin:
-.sp
-.ne 2
-.na
-\fB\fBp_hosts\fR\fR
-.ad
-.sp .6
-.RS 4n
-.sp
-.in +2
-.nf
-\fIhost1\fR[:[\fIport1\fR][:\fImech1\fR]][,\fIhost2\fR[:[\fIport2\fR][:\fImech2\fR]],... \e
- \fIhostn\fR[:[\fIportn\fR][:\fImechn\fR]]]
-.fi
-.in -2
-.sp
-
-A list of audit hosts/servers. Audit records are sent to the first available
-host. If a host is unreachable or a timeout occurs while sending data, the next
-host in the list is tried. If connection to all hosts fails, the list is tried
-again from the beginning.
-.sp
-The \fIhost\fR part of a \fBp_hosts\fR entry can be in any form acceptable to
-\fBgetipnodebyname\fR(3SOCKET).
-.sp
-The \fIport\fR part of a \fBp_hosts\fR entry is the port on host that is
-contacted to initiate an audit server connection. If not specified, the port
-number is that assigned to the \fBsolaris-audit\fR service. See
-\fBgetservbyname\fR(3XNET).
-.sp
-The \fBmech\fR part of a \fBp_host\fR entry is the GSS-API mechanism name
-(\fBmech\fR(4)). If not specified, the local host's default mechanism is used.
-The recommended mechanism is \fBkerberos_v5\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBp_retries\fR\fR
-.ad
-.sp .6
-.RS 4n
-The number of retries for connecting to and sending data to a server.
-.sp
-The default value is \fB3\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBp_timeout\fR\fR
-.ad
-.sp .6
-.RS 4n
-The number of seconds in which a connection/sending data timeouts.
-.sp
-The default value is \fB5\fR seconds.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBqsize\fR\fR
-.ad
-.sp .6
-.RS 4n
-The maximum number of outstanding audit records to keep.
-.sp
-The default is the value of the kernel queue control high water mark. See
-\fBauditconfig\fR(1M).
-.RE
-
-.SS "GSS SESSION"
-The \fBaudit_remote plugin\fR is a TCP client that authenticates configured
-audit servers using the GSS-API (\fBlibgss\fR(3LIB)). Binary Audit
-records are sent with integrity and confidentiality protection as per-message
-tokens generated by \fBgss_wrap\fR(3GSS).
-.sp
-.LP
-The plugin initiates a TCP connection to an audit server (\fIhost:port:mech\fR)
-and establishes a GSS security context (with \fBgss_init_sec_context\fR(3GSS)),
-with appropriate security mechanism (\fBmech\fR(4)).
-.sp
-.LP
-If no port is specified, the service name \fBsolaris-audit\fR is looked up to
-obtain a TCP port number. If no mechanism is specified, the \fBGSS_C_NO_OID\fR
-is used as a \fBmech_type\fR parameter of \fBgss_init_sec_context\fR(3GSS), and
-causes the underlying \fBGSS-API\fR to use the local default mechanism.
-.sp
-.LP
-\fBgss_init_sec_context\fR(3GSS) uses \fBGSS_C_NO_CREDENTIAL\fR as the
-initiator credential handle and a target name of the form
-\fBaudit@<ost_fqdn>\fR. The server is expected to use
-\fBgss_accept_sec_context\fR(3GSS) to complete the context establishment.
-.sp
-.LP
-Once the security context is established, the client (\fBaudit_remote\fR
-plugin) calls \fBgss_wrap\fR(3GSS) to achieve the confidentiality of the
-transferred payload - the audit records. The server is expected to use
-\fBgss_unwrap\fR(3GSS) to unwrap the received data and \fBgss_get_mic\fR(3GSS)
-to obtain the MIC (Message Integrity Code) to be later sent back to the plugin
-as a message retrieval acknowledgment.
-.sp
-.LP
-For example, if the \fBkerberos_v5\fR mechanism is configured as \fBGSS_API\fR
-mechanism on the client and both sides agree on using this mechanism, the
-client side has to be eligible to non-interactively gain session keys for the
-\fBaudit/<host_fqdn>@<REALM>\fR principal from the Kerberos KDC/TGS. At the
-same time the identity running the audit server application has to have the
-long term keys associated with the \fBaudit/<host_fqdn>@<REALM>\fR principal
-stored in the \fBkeytab\fR file (\fBkrb5.conf\fR(4)) to be able to decrypt the
-session keys.
-.sp
-.LP
-The \fBaudit_remote\fR plugin initiates a connection to first server in the
-\fBp_hosts\fR list. If the connection fails or audit record sends are not
-responded to in \fBp_timeout\fR seconds, after \fBp_retries\fR attempts the
-plugin tries to connect to the next server. If the connection to the last
-server fails, the plugin retries to connect to the first host in the list.
-\fBaudit_warn\fR(1M) is executed at every unsuccessful attempt to connect to
-the server or send timeout with the plugin option plugin \fBaudit_remote.so
-retry <count> <error>.<error>\fR is connection \fB<host:port> <the network
-error>\fR\&. An \fBEPROTO\fR network error indicates that the client plugin did
-not get a successful protocol version handshake.
-.SS "PROTOCOL DESCRIPTION"
-All protocol messages are preceded by the 4 octets of the size of the data to
-follow. This size is in network byte order.
-.sp
-.LP
-The protocol begins with version negotiation followed by a \fBGSS-API\fR
-security context token exchange. On error the connection is closed (and any
-output token optionally sent).
-.sp
-.LP
-The version negotiation takes place in the clear with the plugin sending an
-octet array of the comma (\fB,\fR) separated list of versions supported. The
-current version number is the characters \fB01\fR. The receiver is expected to
-respond with the version that they accept (in the current case that is the
-characters \fB01\fR). A mismatch is considered an error and the connection is
-closed.
-.sp
-.LP
-The version octet array sent by the plugin and the version characters accepted
-by the receiver are concatenated together to make up the application data field
-of the channel bindings of the GSS security context establishment.
-.sp
-.in +2
-.nf
-<plugin version characters> || <server accepted version characters>"
-||" represents concatenation
-.fi
-.in -2
-
-.sp
-.LP
-Subsequent tokens contain a 64 bit sequence number in network byte order and a
-single audit record (\fBaudit.log\fR(4)); the client uses confidentiality
-protection. wrap (64 bit sequence number || audit record)
-.sp
-.LP
-The server acknowledges the receipt (and is then responsible for any data loss)
-with the received 64 bit sequence number and a MIC token of the unwrapped 64
-bit sequence number and audit record. MIC verification on the client side
-acknowledges the audit record can be freed and not saved for possible
-retransmission.
-.sp
-.in +2
-.nf
-64 bit sequence number || mic (64 bit sequence number || audit record)
-.fi
-.in -2
-
-.sp
-.LP
-Secure remote audit client/server communication flow:
-.sp
-.in +2
-.nf
-1) Client <--> Server - TCP handshake
-
-2) Client <--> Server - protocol version negotiation:
- a) Client --> Server - send data size - uint32_t value (2)
- b) Client --> Server - send clear text message of the versions
- supported comma separated, e.g.,
- "01,02,03" for versions 1 and 2 and 3.
- The only version supported at present is
- "01"
- c) Client <-- Server - send data size - uint32_t value (2)
- d) Client <-- Server - send clear text version selected
- ("01")
- :no version match; close connection; try next host
-
-3) Security context initiation:
- a) Client - Construct channel bindings application data value
- (4 octets "0101")
- b) Client --> Server - send token (data) size - uint32_t value
- c) Client --> Server - GSS-API per-context token
- d) Client <-- Server - send token (data) size
- e) Client <-- Server - GSS-API per-context token
- :repeat a-e until security context is initialized; if unsuccessful,
- close connection; try next host
-
-4) Client - transmit thread, when audit record to be sent:
- a) Client --> Server - send data size
- b) Client --> Server - GSS-API per-message token
- wrap (sequence number || audit record)
- :repeat a-b while less than max (qsize) outstanding records
-
- 5) Client - receive thread:
- a) Client <-- Server - receive data size - uint32_t value
- b) Client <-- Server - receive sequence number - uint64_t value
- c) Client <-- Server - receive MIC
- d) Client - MIC verification - OK
- e) Client - remove particular audit record
- pointed by the sequence number from the
- retransmit buffer
- :repeat a-e, on error close connection; try next host;
- retransmit unacknowledged audit records
-
-6) Server - receive thread:
- a) Client --> Server - receive data size
- b) Client --> Server - GSS-API receive, uwrap, store
- per-message token
-
-7) Server - transmit thread:
- a) Server - MIC generation - message integrity code
- mic (sequence number || audit record)
- b) Client <-- Server - send data size
- c) Client < -- Server - send sequence number
- d) Client <-- Server - send MIC
-.fi
-.in -2
-
-.SH EXAMPLES
-\fBExample 1 \fRActivating \fBaudit_remote.so\fR and Specifying attributes
-.sp
-.LP
-The following commands cause \fBaudit_remote.so\fR to be activated and set
-the \fBp_retries\fR and \fBp_timeout\fR attributes. Note that using
-\fBauditconfig\fR(1M) only allows one attribute to be set at a time.
-
-.sp
-.in +2
-.nf
-# auditconfig -setplugin audit_remote active p_retries=2
-# auditconfig -setplugin audit_remote active p_timeout=90
-.fi
-.in -2
-
-.LP
-\fBExample 2 \fRActivating \fBaudit_remote.so\fR and Specifying the Remote Audit
-Servers
-.sp
-.LP
-The following command causes \fBaudit_remote.so\fR to be activated and specifies
-the remote audit servers to where the audit records are sent. The
-\fBkerberos_v5\fR security mechanism is defined to be used when communicating
-with the servers.
-
-.sp
-.in +2
-.nf
-# auditconfig -setplugin audit_remote active \e
-p_hosts=eggplant.eng.example.com::kerberos_v5,\e
-purple.ebay.example.com:4592:kerberos_v5
-.fi
-.in -2
-
-.LP
-\fBExample 3 \fRUsing the Configuration of Usage Default Security Mechanism
-.sp
-.LP
-The following example shows the configuration of usage of default security
-mechanism. It also shows use of default port on one of the configured servers:
-
-.sp
-.in +2
-.nf
-# auditconfig -setplugin audit_remote active \e
-p_hosts=jedger.eng.example.com,\e
-jbadams.ebay.example.com:4592
-.fi
-.in -2
-.sp
-
-.SH ATTRIBUTES
-See \fBattributes\fR(5) for a description of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-MT Level MT-Safe
-_
-Interface Stability See below.
-.TE
-
-.sp
-.LP
-The plugin configuration parameters are Committed. The client/server protocol
-(version \fB"01"\fR) is Contracted Project Private. See \fBaudit.log\fR(4) for
-the audit record format and content stability.
-.SH SEE ALSO
-\fBauditd\fR(1M), \fBauditconfig\fR(1M), \fBaudit_warn\fR(1M),
-\fBgetipnodebyname\fR(3SOCKET), \fBgetservbyname\fR(3XNET),
-\fBgss_accept_sec_context\fR(3GSS), \fBgss_get_mic\fR(3GSS),
-\fBgss_init_sec_context\fR(3GSS), \fBgss_wrap\fR(3GSS), \fBgss_unwrap\fR(3GSS),
-\fBlibgss\fR(3LIB), \fBlibsocket\fR(3LIB),
-\fBaudit.log\fR(4), \fBkrb5.conf\fR(4), \fBmech\fR(4), \fBattributes\fR(5),
-\fBkerberos\fR(5), \fBtcp\fR(7P)
-.SH NOTES
-\fBaudit_remote\fR authenticates itself to the remote audit service by way of
-GSS-API (\fBlibgss\fR(3LIB)). Default gss credentials are used as provided by
-the \fBgss\fR implementation mechanism, such as Kerberos.
-.sp
-.LP
-The \fBsolaris-audit\fR service port assigned by IANA is \fB16162\fR.
diff --git a/usr/src/man/man5/audit_syslog.5 b/usr/src/man/man5/audit_syslog.5
deleted file mode 100644
index fe8ddab719..0000000000
--- a/usr/src/man/man5/audit_syslog.5
+++ /dev/null
@@ -1,265 +0,0 @@
-'\" te
-.\" Copyright (c) 2017 Peter Tribble
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH AUDIT_SYSLOG 5 "Mar 6, 2017"
-.SH NAME
-audit_syslog \- realtime conversion of audit data to syslog messages
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/security/audit_syslog.so\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBaudit_syslog\fR plugin module for audit,
-\fB/usr/lib/security/audit_syslog.so\fR, provides realtime conversion of
-audit data to syslog-formatted (text) data and sends it to a syslog
-daemon as configured in \fBsyslog.conf\fR(4).
-.sp
-.LP
-Messages to \fBsyslog\fR are written if the \fBaudit_syslog\fR plugin is
-activated and configured using \fBauditconfig\fR(1M).
-.sp
-.LP
-Syslog messages are generated with the facility code of
-\fBLOG_AUDIT\fR (\fBaudit\fR in \fBsyslog.conf\fR(4)) and severity of
-\fBLOG_NOTICE\fR. Audit \fBsyslog\fR messages contain data selected from the
-tokens described for the binary audit log. (See \fBaudit.log\fR(4)). As with
-all \fBsyslog\fR messages, each line in a \fBsyslog\fR file consists of two
-parts, a \fBsyslog\fR header and a message.
-.sp
-.LP
-The syslog header contains the date and time the message was generated, the
-host name from which it was sent, \fBauditd\fR to indicate that it was
-generated by the audit daemon, an ID field used internally by \fBsyslogd\fR,
-and \fBaudit.notice\fR indicating the \fBsyslog\fR facility and severity
-values. The \fBsyslog\fR header ends with the characters \fB]\fR, that is, a
-closing square bracket and a space.
-.sp
-.LP
-The message part starts with the event type from the header token. All
-subsequent data appears only if contained in the original audit record and
-there is room in the 1024-byte maximum length \fBsyslog\fR line. In the
-following example, the backslash (\fB\e\fR) indicates a continuation; actual
-\fBsyslog\fR messages are contained on one line:
-.sp
-.in +2
-.nf
-Oct 31 11:38:08 smothers auditd: [ID 917521 audit.notice] chdir(2) ok\e
-session 401 by joeuser as root:other from myultra obj /export/home
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-In the preceding example, \fBchdir(2)\fR is the event type. Following this
-field is additional data, described below. This data is omitted if it is not
-contained in the source audit record.
-.sp
-.ne 2
-.na
-\fB\fBok\fR or \fBfailed\fR\fR
-.ad
-.RS 21n
-Comes from the return or exit token.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsession \fI<#>\fR\fR\fR
-.ad
-.RS 21n
-\fI<#>\fR is the session ID from the subject token.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBby \fI<name>\fR\fR\fR
-.ad
-.RS 21n
-\fI<name>\fR is the audit ID from the subject token.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBas \fI<name>\fR:\fI<group>\fR\fR\fR
-.ad
-.RS 21n
-\fI<name>\fR is the effective user ID and \fI<group>\fR is the effective group
-ID from the subject token.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBin\fR \fI<zone name>\fR\fR
-.ad
-.RS 21n
-The zone name. This field is generated only if the \fBzonename\fR audit policy
-is set.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfrom \fI<terminal>\fR\fR\fR
-.ad
-.RS 21n
-\fI<terminal>\fR is the text machine address from the subject token.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBobj \fI<path>\fR\fR\fR
-.ad
-.RS 21n
-\fI<path>\fR is the path from the path token The path can be truncated from the
-left if necessary to fit it on the line. Truncation is indicated by leading
-ellipsis (\fB\&...\fR).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBproc_uid \fI<owner>\fR\fR\fR
-.ad
-.RS 21n
-\fI<owner>\fR is the effective user ID of the process owner.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBproc_auid \fI<owner>\fR\fR\fR
-.ad
-.RS 21n
-\fI<owner>\fR is the audit ID of the process owner.
-.RE
-
-.sp
-.LP
-The following are example \fBsyslog\fR messages:
-.sp
-.in +2
-.nf
-Nov 4 8:27:07 smothers auditd: [ID 175219 audit.notice] \e
-system booted
-
-Nov 4 9:28:17 smothers auditd: [ID 752191 audit.notice] \e
-login - rlogin ok session 401 by joeuser as joeuser:staff from myultra
-
-Nov 4 10:29:27 smothers auditd: [ID 521917 audit.notice] \e
-access(2) ok session 255 by janeuser as janeuser:staff from \e
-129.146.89.30 obj /etc/passwd
-.fi
-.in -2
-.sp
-
-.SH OBJECT ATTRIBUTES
-.LP
-The \fBp_flags\fR attribute is used to further filter audit data being sent
-to the \fBsyslog\fR daemon beyond the default and non-attributable
-audit flags. The parameter is a comma-separated list; each
-item represents an audit class (see \fBaudit_class\fR(4)) and is specified
-using the same syntax used by \fBauditconfig\fR for the \fB-setflags\fR and
-\fB-setnaflags\fR options. The default (no \fBp_flags\fR set) is that no
-audit records are generated.
-.SH EXAMPLES
-.LP
-\fBExample 1 \fREnabling the plugin and selecting events
-.sp
-.LP
-The command below enables the \fBaudit_syslog\fR plugin and sets the
-\fBp_flags\fR filter to allow class records for \fBlo\fR but
-allows class records for \fBam\fR for failures only. Because no other
-classes are listed, not other audit records will be sent to
-syslog. You cannot add classes to those defined by means of
-\fBflags\fR and \fBnaflags\fR. You can only remove them.
-
-.sp
-.in +2
-.nf
-# autditconf -setplugin audit_syslog active p_flags=lo,-am
-.fi
-.in -2
-.sp
-
-\fBExample 2 \fRViewing the plugin configuration
-.sp
-.LP
-The command below enables shows the \fBaudit_syslog\fR plugin configuration.
-
-.sp
-.in +2
-.nf
-# auditconfig -getplugin audit_syslog
-Plugin: audit_syslog (active)
- Attributes: p_flags=lo,-am;
-.fi
-.in -2
-.sp
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for a description of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-MT Level MT-Safe
-_
-Interface Stability See below.
-.TE
-
-.sp
-.LP
-The message format and message content are Uncommitted. The configuration
-parameters are Committed.
-.SH SEE ALSO
-.LP
-\fBauditd\fR(1M), \fBauditconfig\fR(1M), \fBaudit_class\fR(4),
-\fBsyslog.conf\fR(4), \fBattributes\fR(5)
-.SH NOTES
-.LP
-Use of the \fBplugin\fR configuration line to include \fBaudit_syslog.so\fR
-requires that \fB/etc/syslog.conf\fR is configured to store \fBsyslog\fR
-messages of facility \fBaudit\fR and severity \fBnotice\fR or above in a file
-intended for audit records. An example of such a line in
-\fBsyslog.conf\fR is:
-.sp
-.in +2
-.nf
-audit.notice /var/audit/audit.log
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Messages from \fBsyslog\fR are sent to remote \fBsyslog\fR servers by means of
-UDP, which does not guarantee delivery or ensure the correct order of arrival
-of messages.
-.sp
-.LP
-If the \fBp_flags\fR attribute results in no classes
-being preselected, an error is reported by means of a \fBsyslog\fR alert with
-the \fBLOG_DAEMON\fR facility code.
-.sp
-.LP
-The time field in the \fBsyslog\fR header is generated by \fBsyslog\fR(3C) and
-only approximates the time given in the binary audit log. Normally the time
-field shows the same whole second or at most a few seconds difference.
diff --git a/usr/src/man/man5/auth_attr.5 b/usr/src/man/man5/auth_attr.5
new file mode 100644
index 0000000000..d95a7a9628
--- /dev/null
+++ b/usr/src/man/man5/auth_attr.5
@@ -0,0 +1,279 @@
+'\" te
+.\" Copyright (C) 2002, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH AUTH_ATTR 5 "Feb 25, 2017"
+.SH NAME
+auth_attr \- authorization description database
+.SH SYNOPSIS
+.LP
+.nf
+\fB/etc/security/auth_attr\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+\fB/etc/security/auth_attr\fR is a local source for authorization names and
+descriptions. The \fBauth_attr\fR file can be used with other authorization
+sources, including the \fBauth_attr\fR \fBNIS\fR map.
+Programs use the \fBgetauthattr\fR(3SECDB) routines to access this information.
+.sp
+.LP
+The search order for multiple authorization sources is specified in the
+\fB/etc/nsswitch.conf\fR file, as described in the \fBnsswitch.conf\fR(5) man
+page.
+.sp
+.LP
+An authorization is a right assigned to users that is checked by certain
+privileged programs to determine whether users can execute restricted
+functionality. Each entry in the \fBauth_attr\fR database consists of one line
+of text containing six fields separated by colons (\fB:\fR). Line continuations
+using the backslash (\fB\e\fR) character are permitted. The format of each
+entry is:
+.sp
+.in +2
+.nf
+\fIname\fR:\fIres1\fR:\fIres2\fR:\fIshort_desc\fR:\fIlong_desc\fR:\fIattr\fR
+.fi
+.in -2
+
+.sp
+.ne 2
+.na
+\fB\fIname\fR\fR
+.ad
+.RS 14n
+The name of the authorization. Authorization names are unique strings.
+Construct authorization names using the following convention:
+.sp
+\fIprefix.\fR or \fIprefix.suffix\fR
+.sp
+.ne 2
+.na
+\fB\fIprefix\fR\fR
+.ad
+.RS 10n
+Everything in the name field up to the final dot (\fB\&.\fR). Authorizations
+from Sun Microsystems, Inc. use \fBsolaris\fR as a prefix. To avoid name
+conflicts, all other authorizations should use a prefix that begins with the
+reverse-order Internet domain name of the organization that creates the
+authorization (for example, \fBcom.xyzcompany\fR). Prefixes can have additional
+arbitrary components chosen by the authorization's developer, with components
+separated by dots.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIsuffix\fR\fR
+.ad
+.RS 10n
+The final component in the name field. Specifies what is being authorized.
+.sp
+When there is no suffix, the name is defined as a heading. Headings are not
+assigned to users but are constructed for use by applications in their
+\fBGUI\fRs.
+.RE
+
+When a name ends with the word \fBgrant\fR, the entry defines a grant
+authorization. Grant authorizations are used to support fine-grained
+delegation. Users with appropriate grant authorizations can delegate some of
+their authorizations to others. To assign an authorization, the user needs to
+have both the authorization itself and the appropriate grant authorization.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIres1\fR\fR
+.ad
+.RS 14n
+Reserved for future use.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIres2\fR\fR
+.ad
+.RS 14n
+Reserved for future use.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIshort_desc\fR\fR
+.ad
+.RS 14n
+A short description or terse name for the authorization. This name should be
+suitable for displaying in user interfaces, such as in a scrolling list in a
+\fBGUI\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIlong_desc\fR\fR
+.ad
+.RS 14n
+A long description. This field can explain the precise purpose of the
+authorization, the applications in which it is used, and the type of user that
+would be interested in using it. The long description can be displayed in the
+help text of an application.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIattr\fR\fR
+.ad
+.RS 14n
+An optional list of semicolon-separated (\fB;\fR) key-value pairs that describe
+the attributes of an authorization. Zero or more keys may be specified. The
+keyword \fBhelp\fR identifies a help file in HTML.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRConstructing a Name
+.sp
+.LP
+In the following example, the name has a prefix (\fBsolaris.admin.usermgr\fR)
+followed by a suffix (\fBread\fR):
+
+.sp
+.in +2
+.nf
+solaris.admin.usermgr.read
+.fi
+.in -2
+
+.LP
+\fBExample 2 \fRDefining a Heading
+.sp
+.LP
+Because the name field ends with a dot, the following entry defines a heading:
+
+.sp
+.in +2
+.nf
+solaris.admin.usermgr.:::User Accounts::help=AuthUsermgrHeader.html
+.fi
+.in -2
+
+.LP
+\fBExample 3 \fRAssigning Separate Authorizations to Set User Attributes
+.sp
+.LP
+In this example, a heading entry is followed by other associated authorization
+entries. The entries below the heading provide separate authorizations for
+setting user attributes. The \fIattr\fR field for each entry, including the
+heading entry, assigns a help file. The application that uses the \fBhelp\fR
+key requires the value to equal the name of a file ending in \fB\&.htm\fR or
+\fB\&.html\fR:
+
+.sp
+.in +2
+.nf
+solaris.admin.usermgr.:::User Accounts::help=AuthUsermgrHeader.html
+solaris.admin.usermgr.pswd:::Change Password::help=AuthUserMgrPswd.html
+solaris.admin.usermgr.write:::Manage Users::help=AuthUsermgrWrite.html
+.fi
+.in -2
+
+.LP
+\fBExample 4 \fRAssigning a Grant Authorization
+.sp
+.LP
+This example assigns to an administrator the following authorizations:
+
+.sp
+.in +2
+.nf
+solaris.admin.printer.grant
+solaris.admin.printer.delete
+solaris.admin.printer.modify
+solaris.admin.printer.read
+solaris.login.enable
+.fi
+.in -2
+
+.sp
+.LP
+With the above authorizations, the administrator can assign to others the
+\fBsolaris.admin.printer.delete\fR, \fBsolaris.admin.printer.modify\fR, and
+\fBsolaris.admin.printer.read\fR authorizations, but not the
+\fBsolaris.login.enable\fR authorization. If the administrator has both the
+grant authorization, \fBsolaris.admin.printmgr.grant\fR, and the wildcard
+authorization, \fBsolaris.admin.printmgr.*\fR, the administrator can grant to
+others any of the printer authorizations. See \fBuser_attr\fR(5) for more
+information about how wildcards can be used to assign multiple authorizations
+whose names begin with the same components.
+
+.LP
+\fBExample 5 \fRAuthorizing the Ability to Assign Other Authorizations
+.sp
+.LP
+The following entry defines an authorization that grants the ability to assign
+any authorization created with a \fBsolaris\fR prefix, when the administrator
+also has either the specific authorization being granted or a matching wildcard
+entry:
+
+.sp
+.in +2
+.nf
+solaris.grant:::Grant All Solaris Authorizations::help=PriAdmin.html
+.fi
+.in -2
+
+.LP
+\fBExample 6 \fRConsulting the Local Authorization File Ahead of the NIS Table
+.sp
+.LP
+With the following entry from \fB/etc/nsswitch.conf\fR, the local
+\fBauth_attr\fR file is consulted before the \fBNIS\fR table:
+
+.sp
+.in +2
+.nf
+auth_attr:files nis
+.fi
+.in -2
+
+.SH FILES
+.LP
+\fB/etc/nsswitch.conf\fR
+.sp
+.LP
+\fB/etc/user_attr\fR
+.sp
+.LP
+\fB/etc/security/auth_attr\fR
+.SH SEE ALSO
+.LP
+.BR getauthattr (3SECDB),
+.BR getexecattr (3SECDB),
+.BR getprofattr (3SECDB),
+.BR getuserattr (3SECDB),
+.BR exec_attr (5),
+.BR nsswitch.conf (5),
+.BR user_attr (5)
+.SH NOTES
+.LP
+Because the list of legal keys is likely to expand, any code that parses this
+database must be written to ignore unknown key-value pairs without error. When
+any new keywords are created, the names should be prefixed with a unique
+string, such as the company's stock symbol, to avoid potential naming
+conflicts.
+.sp
+.LP
+Each application has its own requirements for whether the help value must be a
+relative pathname ending with a filename or the name of a file. The only known
+requirement is for the name of a file.
+.sp
+.LP
+The following characters are used in describing the database format and must be
+escaped with a backslash if used as data: colon (\fB:\fR), semicolon (\fB;\fR),
+equals (\fB=\fR), and backslash (\fB\e\fR).
diff --git a/usr/src/man/man5/autofs.5 b/usr/src/man/man5/autofs.5
new file mode 100644
index 0000000000..983d54f1a8
--- /dev/null
+++ b/usr/src/man/man5/autofs.5
@@ -0,0 +1,113 @@
+.\"
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.\"
+.\"
+.\" Copyright (c) 2002 Sun Microsystems, Inc. All rights reserved.
+.\" Copyright 2016 Nexenta Systems, Inc.
+.\"
+.Dd March 1, 2016
+.Dt AUTOFS 5
+.Os
+.Sh NAME
+.Nm autofs
+.Nd automount configuration properties
+.Sh DESCRIPTION
+The behavior of the
+.Xr automount 8
+command and the
+.Xr automountd 8
+daemon is controlled by property values that are stored in the Service
+Management Facility,
+.Xr smf 7 .
+The
+.Xr sharectl 8
+command should be used to query or change values for these properties.
+.Pp
+Changes made to
+.Nm
+property values on an
+.Nm automount
+or
+.Nm automountd
+command line override the values set using
+.Xr sharectl 8 .
+.Pp
+The following list describes the properties:
+.Bl -tag -width Ds
+.It Sy timeout Ns = Ns Ar num
+Specifies a duration, in seconds, that a file system is to remain mounted when
+not in use.
+The default value is 600
+.Pq 10 minutes .
+Equivalent to the
+.Fl t
+option in
+.Nm automount .
+.It Sy automount_verbose Ns = Ns Sy true Ns | Ns Sy false
+Verbose mode.
+Causes you to be notified of non-critical events, such as
+.Nm
+mounts and unmounts.
+The default value is
+.Sy false .
+Equivalent to the
+.Fl v
+option in
+.Nm automount .
+.It Sy automountd_verbose Ns = Ns Sy true Ns | Ns Sy false
+Verbose mode.
+Causes status messages to be logged to the svc:/system/filesystem/autofs:default
+log file.
+The default value is
+.Sy false .
+Equivalent to the
+.Fl v
+option in
+.Nm automountd .
+.It Sy nobrowse Ns = Ns Sy true Ns | Ns Sy false
+Turn on or off browsing for all
+.Nm
+mount points.
+The default value is
+.Sy false .
+Equivalent to the
+.Fl n
+option in
+.Nm automountd .
+.It Sy trace Ns = Ns Ar num
+Expands each RPC call and logs it to svc:/system/filesystem/autofs:default
+log file.
+The default value, 0, turns off such tracing.
+Starting with 1, with each higher value, the verbosity of trace output
+increases.
+.It Xo
+.Sy environment Ns = Ns Ar name Ns = Ns Ar value Ns
+.Oo , Ns Ar name Ns = Ns Ar value Oc Ns ...
+.Xc
+Specifies a comma separated list of environment variables.
+If an environment variable has more than one value, those values should be
+separated with a comma, preceded by a backslash as an escape character
+.Pq Qq Sy \e, .
+For example:
+.Bd -literal -offset indent
+VAR1=val1,VAR2=val2\e,val3
+.Ed
+.El
+.Sh SEE ALSO
+.Xr smf 7 ,
+.Xr automount 8 ,
+.Xr automountd 8 ,
+.Xr sharectl 8
diff --git a/usr/src/man/man5/bart_manifest.5 b/usr/src/man/man5/bart_manifest.5
new file mode 100644
index 0000000000..f08b756642
--- /dev/null
+++ b/usr/src/man/man5/bart_manifest.5
@@ -0,0 +1,309 @@
+'\" te
+.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH BART_MANIFEST 5 "December 28, 2020"
+.SH NAME
+bart_manifest \- system audit manifest file
+.SH DESCRIPTION
+The \fBbart\fR(8) command generates a manifest that describes the contents of
+a managed host. A manifest consists of a header and entries. Each entry
+represents a single file. Entries are sorted in ascending order by file name.
+Any nonstandard file names, such as those that contain embedded newline or tab
+characters, have the special characters quoted prior to being sorted. See
+\fBQuoting Syntax\fR.
+.sp
+.LP
+Lines that begin with \fB!\fR supply metadata about the manifest. The manifest
+version line indicates the manifest specification version. The date line shows
+the date on which the manifest was created, in \fBdate\fR(1) form.
+.sp
+.LP
+Some lines are ignored by the manifest comparison tool. Ignored lines include
+blank lines, lines that consist only of white space, and comments that begin
+with \fB#\fR.
+.sp
+.LP
+In addition to metadata lines, the header contains the format comment block.
+This comment block lists the attributes reported for each file type.
+.sp
+.LP
+To see the format of a manifest file, see \fBEXAMPLES\fR.
+.SS "Manifest File Entries"
+Each manifest file entry is a single line of one of the following forms,
+depending on the file type:
+.sp
+.in +2
+.nf
+\fIfname\fR D \fIsize mode acl dirmtime uid gid\fR
+\fIfname\fR P \fIsize mode acl mtime uid gid\fR
+\fIfname\fR S \fIsize mode acl mtime uid gid\fR
+\fIfname\fR F \fIsize mode acl mtime uid gid contents\fR
+\fIfname\fR L \fIsize mode acl lnmtime uid gid dest\fR
+\fIfname\fR B \fIsize mode acl mtime uid gid devnode\fR
+\fIfname\fR C \fIsize mode acl mtime uid gid devnode\fR
+.fi
+.in -2
+
+.sp
+.LP
+The fields of the manifest file entries are described as follows:
+.sp
+.ne 2
+.na
+\fB\fIfname\fR\fR
+.ad
+.RS 12n
+Name of the file. To prevent parsing problems that are caused by special
+characters embedded in file names, file names are encoded as described in
+Quoting Syntax.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fItype\fR\fR
+.ad
+.RS 12n
+Type of file.
+.sp
+Possible values for \fItype\fR are as follows:
+.sp
+.ne 2
+.na
+\fBB\fR
+.ad
+.RS 5n
+Block device node
+.RE
+
+.sp
+.ne 2
+.na
+\fBC\fR
+.ad
+.RS 5n
+Character device node
+.RE
+
+.sp
+.ne 2
+.na
+\fBD\fR
+.ad
+.RS 5n
+Directory
+.RE
+
+.sp
+.ne 2
+.na
+\fBF\fR
+.ad
+.RS 5n
+File
+.RE
+
+.sp
+.ne 2
+.na
+\fBL\fR
+.ad
+.RS 5n
+Symbolic link
+.RE
+
+.sp
+.ne 2
+.na
+\fBP\fR
+.ad
+.RS 5n
+Pipe
+.RE
+
+.sp
+.ne 2
+.na
+\fBS\fR
+.ad
+.RS 5n
+Socket
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIsize\fR\fR
+.ad
+.RS 12n
+File size in bytes.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fImode\fR\fR
+.ad
+.RS 12n
+Octal number that represents the permissions of the file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIacl\fR\fR
+.ad
+.RS 12n
+ACL attributes for the file. For a file with ACL attributes, this field
+contains the output from \fBacltotext()\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIuid\fR\fR
+.ad
+.RS 12n
+Numerical user ID of the owner of this entry.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIgid\fR\fR
+.ad
+.RS 12n
+Numerical group ID of the owner of this entry.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIdirmtime\fR\fR
+.ad
+.RS 12n
+Modification time in seconds since 00:00:00 UTC, January 1, 1970 for
+directories.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIlnmtime\fR\fR
+.ad
+.RS 12n
+Creation time for links.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fImtime\fR\fR
+.ad
+.RS 12n
+Modification time in seconds since 00:00:00 UTC, January 1, 1970 for files.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIcontents\fR\fR
+.ad
+.RS 12n
+Checksum value of the file. This attribute is only specified for regular files.
+If you turn off context checking or if checksums cannot be computed, the value
+of this field is \fB-\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIdest\fR\fR
+.ad
+.RS 12n
+Destination of a symbolic link.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIdevnode\fR\fR
+.ad
+.RS 12n
+Value of the device node. This attribute is for character device files and
+block device files only.
+.RE
+
+.SS "Quoting Syntax"
+The rules file supports a quoting syntax for representing nonstandard file
+names.
+.sp
+.LP
+When generating a manifest for file names that contain embedded TAB, SPACE, or
+NEWLINE characters, the special characters are encoded in their octal forms.
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+Input Character Quoted Character
+_
+SPACE \eSPACE
+_
+TAB \eTAB
+_
+NEWLINE \eNEWLINE
+_
+? \e?
+_
+[ \e[
+_
+* \e*
+.TE
+
+.SH EXAMPLES
+\fBExample 1 \fRSample Manifest File
+.sp
+.LP
+The following is a sample system manifest file. The file entries are sorted by
+the encoded versions of the file names to correctly handle special characters.
+
+.sp
+.in +2
+.nf
+! Version 1.0
+! Mon Feb 11 10:55:30 2002
+# Format:
+# fname D size mode acl dirmtime uid gid
+# fname P size mode acl mtime uid gid
+# fname S size mode acl mtime uid gid
+# fname F size mode acl mtime uid gid contents
+# fname L size mode acl lnmtime uid gid dest
+# fname B size mode acl mtime uid gid devnode
+# fname C size mode acl mtime uid gid devnode
+/etc D 3584 40755 user::rwx,group::r-x,mask::r-x,other::r-x,
+ 3c6803d7 0 3
+/etc/.login F 524 100644 user::rw-,group::r--,mask::r--,other::r--,
+ 3c165878 0 3 27b53d5c3e844af3306f1f12b330b318
+/etc/.pwd.lock F 0 100600 user::rw-,group::---,mask::---,other::---,
+ 3c166121 0 0 d41d8cd98f00b204e9800998ecf8427e
+/etc/.syslog_door L 20 120777 user::rw-,group::r--,mask::
+ rwx,other::r--,3c6803d5 0 0 /var/run/syslog_door
+/etc/autopush L 16 120777 user::r-x,group::r-x,mask::r-x,other::r-x,
+ 3c165863 0 0 ../sbin/autopush
+/etc/cron.d/FIFO P 0 10600 user::rw-,group::---,mask::---,other::---,
+ 3c6803d5 0 0
+.fi
+.in -2
+
+.SH SEE ALSO
+.BR date (1),
+.BR bart_rules (5),
+.BR attributes (7),
+.BR bart (8)
diff --git a/usr/src/man/man5/bart_rules.5 b/usr/src/man/man5/bart_rules.5
new file mode 100644
index 0000000000..4fa57d2366
--- /dev/null
+++ b/usr/src/man/man5/bart_rules.5
@@ -0,0 +1,428 @@
+'\" te
+.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH BART_RULES 5 "Sep 9, 2003"
+.SH NAME
+bart_rules \- bart rules file
+.SH DESCRIPTION
+.sp
+.LP
+The \fBbart_rules\fR file is a text file that is used by the \fBbart\fR(8)
+command. The rules file determines which files to validate and which file
+attributes of those files to ignore.
+.sp
+.LP
+Some lines are ignored by the manifest comparison tool. Ignored lines include
+blank lines, lines that consist only of white space, and comments that begin
+with \fB#\fR.
+.sp
+.LP
+The rules file supports three directives: \fBCHECK\fR, \fBIGNORE\fR, and a
+\fIsubtree\fR directive, which is an absolute path name and optional pattern
+matching modifiers. Each \fBCHECK\fR, \fBIGNORE\fR, and \fIsubtree\fR directive
+must be on a separate line. Bart supports continuation of long lines using a
+backslash (\fB\e\fR). The rules file uses the directives to create logical
+blocks.
+.SS "Syntax"
+.sp
+.LP
+The syntax for the rules file is as follows:
+.sp
+.in +2
+.nf
+[IGNORE \fIattribute\fR...]*
+[CHECK] [\fIattribute\fR...]*
+
+\fIsubtree1\fR [\fIpattern\fR...]*
+[IGNORE \fIattribute\fR...]*
+[CHECK] [\fIattribute\fR...]*
+
+\fIsubtree2\fR [\fIpattern\fR...]*
+\fIsubtree3\fR [\fIpattern\fR...]*
+\fIsubtree4\fR [\fIpattern\fR...]*
+[IGNORE \fIattribute\fR...]*
+[CHECK] [\fIattribute\fR...]*
+\&...
+.fi
+.in -2
+
+.SS "Rule Blocks"
+.sp
+.LP
+Rule blocks are composed of statements that are created by using directives and
+arguments.
+.sp
+.LP
+There are three types of blocks:
+.sp
+.ne 2
+.na
+\fBGlobal Block\fR
+.ad
+.RS 16n
+The first block in the file. The block is considered ``global'' if it specifies
+\fBCHECK\fR and \fBIGNORE\fR statements, but no previous subtree statement. A
+global block pertains to all subsequent blocks.
+.RE
+
+.sp
+.ne 2
+.na
+\fBLocal block\fR
+.ad
+.RS 16n
+A block that specifies \fBCHECK\fR and \fBIGNORE\fR statements as well as a
+subtree directive. The rules in this block pertain to files and directories
+found in the specified subtree.
+.RE
+
+.sp
+.ne 2
+.na
+\fBHeir block\fR
+.ad
+.RS 16n
+A block that contains a null \fBCHECK\fR statement, no arguments. This block
+inherits the global \fBCHECK\fR statements and \fBIGNORE\fR statements.
+.RE
+
+.sp
+.LP
+The order in which \fBCHECK\fR and \fBIGNORE\fR statements appear in blocks is
+important. The \fBbart\fR command processes \fBCHECK\fR and \fBIGNORE\fR
+statements in the order in which they are read, with later statements
+overriding earlier statements.
+.sp
+.LP
+Subtree specifications must appear one per line. Each specification must begin
+with an absolute path name. Optionally, each specification can be followed by
+pattern-matching arguments.
+.sp
+.LP
+When a file system being tracked belongs to more than one subtree directive,
+\fBbart\fR performs the following resolution steps:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Applies the \fBCHECK\fR and \fBIGNORE\fR statements set in the global block.
+Note that all \fBCHECK\fR and \fBIGNORE\fR statements are processed in order.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Finds the last subtree directive that matches the file.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Processes the \fBCHECK\fR and \fBIGNORE\fR statements that belong to the last
+matching subtree directive. These statements are processed in the order in
+which they are read, overriding global settings.
+.RE
+.SS "Pattern Matching Statements"
+.sp
+.LP
+There are two types of pattern matching statements
+.sp
+.ne 2
+.na
+\fBAND\fR
+.ad
+.RS 7n
+For a given subtree directive, all pattern matching statements are logically
+ANDed with the subtree. Patterns have the following syntax:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Wildcards are permitted for both the subtree and pattern matching statements.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The exclamation point (\fB!\fR) character represents logical NOT.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+A pattern that terminates with a slash is a subtree. The absence of a slash
+indicates that the pattern is not a directory. The subtree itself does not
+require an end slash.
+.RE
+For example, the following subtree example includes the contents of
+\fB/home/nickiso/src\fR except for object files, core files, and all of the
+SCCS subtrees. Note that directory names that terminate with \fB\&.o\fR and
+directories named \fBcore\fR are \fBnot\fR excluded because the patterns
+specified do not terminate with \fB/\fR.
+.sp
+.in +2
+.nf
+/home/nickiso/src !*.o !core !SCCS/
+CHECK all
+.fi
+.in -2
+
+.RE
+
+.sp
+.ne 2
+.na
+\fBOR\fR
+.ad
+.RS 7n
+Group multiple subtree directives together. Such subtree directives are
+logically ORed together.
+.sp
+.in +2
+.nf
+/home/nickiso/src !*.o !core
+/home/nickiso/Mail
+/home/nickiso/docs *.sdw
+CHECK all
+IGNORE mtime lnmtime dirmtime
+.fi
+.in -2
+
+The files included in the previous example are as follows:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Everything under \fB/home/nickiso/src\fR except for \fB*.o\fR and \fBcore\fR
+files
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Everything under \fB/home/nickiso/Mail\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+All files under \fB/home/nickiso/docs\fR that end in \fB*.sdw\fR
+.RE
+For these files, all attributes are checked except for modification times.
+.RE
+
+.SS "File Attributes"
+.sp
+.LP
+The \fBbart\fR command uses \fBCHECK\fR and \fBIGNORE\fR statements to define
+which attributes to track or ignore. Each attribute has an associated keyword.
+.sp
+.LP
+The attribute keywords are as follows:
+.sp
+.ne 2
+.na
+\fBacl\fR
+.ad
+.RS 12n
+ACL attributes for the file. For a file with ACL attributes, this field
+contains the output from \fBacltotext()\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBall\fR
+.ad
+.RS 12n
+All attributes.
+.RE
+
+.sp
+.ne 2
+.na
+\fBcontents\fR
+.ad
+.RS 12n
+Checksum value of the file. This attribute is only specified for regular files.
+If you turn off context checking or if checksums cannot be computed, the value
+of this field is \fB-\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBdest\fR
+.ad
+.RS 12n
+Destination of a symbolic link.
+.RE
+
+.sp
+.ne 2
+.na
+\fBdevnode\fR
+.ad
+.RS 12n
+Value of the device node. This attribute is for character device files and
+block device files only.
+.RE
+
+.sp
+.ne 2
+.na
+\fBdirmtime\fR
+.ad
+.RS 12n
+Modification time in seconds since 00:00:00 UTC, January 1, 1970 for
+directories.
+.RE
+
+.sp
+.ne 2
+.na
+\fBgid\fR
+.ad
+.RS 12n
+Numerical group ID of the owner of this entry.
+.RE
+
+.sp
+.ne 2
+.na
+\fBlnmtime\fR
+.ad
+.RS 12n
+Creation time for links.
+.RE
+
+.sp
+.ne 2
+.na
+\fBmode\fR
+.ad
+.RS 12n
+Octal number that represents the permissions of the file.
+.RE
+
+.sp
+.ne 2
+.na
+\fBmtime\fR
+.ad
+.RS 12n
+Modification time in seconds since 00:00:00 UTC, January 1, 1970 for files.
+.RE
+
+.sp
+.ne 2
+.na
+\fBsize\fR
+.ad
+.RS 12n
+File size in bytes.
+.RE
+
+.sp
+.ne 2
+.na
+\fBtype\fR
+.ad
+.RS 12n
+Type of file.
+.RE
+
+.sp
+.ne 2
+.na
+\fBuid\fR
+.ad
+.RS 12n
+Numerical user ID of the owner of this entry.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRSample Rules File
+.sp
+.LP
+The following is a sample rules file:
+
+.sp
+.in +2
+.nf
+# Global rules, track everything except dirmtime.
+CHECK all
+IGNORE dirmtime
+
+# The files in /data* are expected to change, so don't bother
+# tracking the attributes expected to change.
+# Furthermore, by specifying ``IGNORE contents,'' you save
+# time and resources.
+/data*
+IGNORE contents mtime size
+
+/home/nickiso f* bar/
+IGNORE acl
+
+# For /usr, apply the global rules.
+/usr
+CHECK
+
+# Note: Since /usr/tmp follows the /usr block, the /usr/tmp
+# subtree is subjected to the ``IGNORE all.''
+/usr/tmp
+/home/nickiso *.o
+/home/nickiso core
+/home/nickiso/proto
+IGNORE all
+.fi
+.in -2
+
+.sp
+.LP
+The following files are cataloged based on the sample rules file:
+
+.RS +4
+.TP
+.ie t \(bu
+.el o
+All attributes, except for \fBdirmtime\fR, \fBmtime\fR, \fBsize\fR, and
+\fBcontents\fR, are tracked for files under the \fB/data*\fR subtrees.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Files under the \fB/usr\fR subtree, except for \fB/usr/tmp\fR, are cataloged by
+using the global rules.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+If the \fB/home/nickiso/foo.c\fR file exists, its attributes, except for
+\fBacl\fR and \fBdirmtime\fR, are cataloged.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+All \fB\&.o\fR and \fBcore\fR files under \fB/home/nickiso\fR, as well as the
+\fB/home/nickiso/proto\fR and \fB/usr/tmp\fR subtrees, are ignored.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+If the \fB/home/nickiso/bar/foo.o\fR file exists, it is ignored because it is
+subject to the last block.
+.RE
+.SH SEE ALSO
+.sp
+.LP
+.BR bart_manifest (5),
+.BR attributes (7),
+.BR bart (8)
diff --git a/usr/src/man/man5/beastie.4th.5 b/usr/src/man/man5/beastie.4th.5
deleted file mode 100644
index 0da1419eb3..0000000000
--- a/usr/src/man/man5/beastie.4th.5
+++ /dev/null
@@ -1,146 +0,0 @@
-.\" Copyright (c) 2011-2012 Devin Teske
-.\" All rights reserved.
-.\"
-.\" Redistribution and use in source and binary forms, with or without
-.\" modification, are permitted provided that the following conditions
-.\" are met:
-.\" 1. Redistributions of source code must retain the above copyright
-.\" notice, this list of conditions and the following disclaimer.
-.\" 2. Redistributions in binary form must reproduce the above copyright
-.\" notice, this list of conditions and the following disclaimer in the
-.\" documentation and/or other materials provided with the distribution.
-.\"
-.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
-.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
-.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
-.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
-.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-.\" SUCH DAMAGE.
-.\"
-.Dd July 20, 2018
-.Dt BEASTIE.4TH 5
-.Os
-.Sh NAME
-.Nm beastie.4th
-.Nd loader ASCII art boot module
-.Sh DESCRIPTION
-The file that goes by the name of
-.Nm
-is a set of commands designed to draw the ASCII art FreeBSD mascot
-\(en known simply as
-.Em beastie
-\(en to the right of the boot loader menu.
-In illumos based systems, the distribution specific logo is used.
-The commands of
-.Nm
-by themselves are not enough for most uses.
-Please refer to the
-examples below for the most common situations, and to
-.Xr loader 5
-for additional commands.
-.Pp
-Before using any of the commands provided in
-.Nm ,
-it must be included
-through the command:
-.Pp
-.Dl include beastie.4th
-.Pp
-This line is present in the default
-.Pa /boot/loader.rc
-file, so it is not needed (and should not be re-issued) in a normal setup.
-.Pp
-The commands provided by it are:
-.Pp
-.Bl -tag -width disable-module_module -compact -offset indent
-.It Ic draw-beastie
-Draws the logo.
-.Pp
-The logo that is drawn is configured by setting the
-.Ic loader_logo
-variable in
-.Xr loader.conf 4 .
-.Pp
-The position of the logo can be configured by setting the
-.Ic loader_logo_x
-and
-.Ic loader_logo_y
-variables in
-.Xr loader.conf 4 .
-The default values are 46 (x) and 4 (y).
-.Pp
-.It Ic clear-beastie
-Clears the screen of beastie.
-.Pp
-.It Ic beastie-start
-Initializes the interactive boot loader menu.
-.Pp
-The
-.Ic loader_delay
-variable can be configured in
-.Xr loader.conf 4
-to the number of seconds you would like to delay loading the boot menu.
-During the delay the user can press Ctrl-C to fall back to
-.Ic autoboot
-or ENTER to proceed.
-The default behavior is to not delay.
-.El
-.Pp
-The environment variables that effect its behavior are:
-.Bl -tag -width bootfile -offset indent
-.It Va loader_logo
-Selects the desired logo in the beastie boot menu.
-.It Va loader_logo_x
-Sets the desired column position of the logo.
-Default is 46.
-.It Va loader_logo_y
-Sets the desired row position of the logo.
-Default is 4.
-.It Va beastie_disable
-If set to
-.Dq YES ,
-the beastie boot menu will be skipped.
-The beastie boot menu is always skipped if running non-x86 hardware.
-.It Va loader_delay
-If set to a number higher than zero, introduces a delay before starting the
-beastie boot menu.
-During the delay the user can press either Ctrl-C to skip the menu or ENTER to
-proceed to the menu.
-The default is to not delay when loading the menu.
-.El
-.Sh FILES
-.Bl -tag -width /boot/forth/loader.4th -compact
-.It Pa /boot/loader
-The
-.Xr loader 5 .
-.It Pa /boot/forth/beastie.4th
-.Nm
-itself.
-.It Pa /boot/loader.rc
-.Xr loader 5
-bootstrapping script.
-.El
-.Sh EXAMPLES
-Standard i386
-.Pa /boot/loader.rc :
-.Pp
-.Bd -literal -offset indent -compact
-include /boot/forth/beastie.4th
-beastie-start
-.Ed
-.Pp
-Set a different logo in
-.Xr loader.conf 4 :
-.Pp
-.Bd -literal -offset indent -compact
-loader_logo="beastie"
-.Ed
-.Sh SEE ALSO
-.Xr loader.conf 4 ,
-.Xr loader 5 ,
-.Xr loader.4th 5
diff --git a/usr/src/man/man5/bhyve_config.5 b/usr/src/man/man5/bhyve_config.5
new file mode 100644
index 0000000000..5e9caa9857
--- /dev/null
+++ b/usr/src/man/man5/bhyve_config.5
@@ -0,0 +1,524 @@
+.\" SPDX-License-Identifier: BSD-2-Clause
+.\"
+.\" Copyright (c) 2021 John H. Baldwin <jhb@FreeBSD.org>
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\" notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\" notice, this list of conditions and the following disclaimer in the
+.\" documentation and/or other materials provided with the distribution.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+.\" SUCH DAMAGE.
+.\"
+.\" Portions Copyright 2022 OmniOS Community Edition (OmniOSce) Association.
+.\"
+.Dd February 26, 2022
+.Dt BHYVE_CONFIG 5
+.Os
+.Sh NAME
+.Nm bhyve_config
+.Nd "bhyve configuration variables"
+.Sh DESCRIPTION
+.Xr bhyve 8
+uses a hierarchical tree of configuration variables to describe global and
+per-device settings.
+Internal nodes in this tree do not have a value,
+only leaf nodes have values.
+This manual describes the configuration variables understood by
+.Xr bhyve 8 .
+If additional variables are defined,
+.Xr bhyve 8
+will ignore them and will not emit errors for unknown variables.
+However, these additional variables can be referenced by other
+variables as described below.
+.Sh VARIABLE VALUES
+Configuration variable values are stored as strings.
+A configuration variable value may refer to one or more other
+configuration values by name.
+Instances of the pattern
+.Sq % Ns Pq Ar var
+are replaced by the value of the configuration variable
+.Va var .
+To avoid unwanted expansion,
+.Sq %
+characters can be escaped by a leading
+.Sq % .
+For example,
+if a configuration variable
+.Va disk
+uses the value
+.Pa /dev/zvol/bhyve/%(name) ,
+then the final value of the
+.Va disk
+variable will be set to the path of a ZFS volume whose name matches
+the name of the virtual machine on the pool
+.Pa bhyve .
+.Pp
+Some configuration variables may be interpreted as a boolean value.
+For those variables the following case-insensitive values may be used to
+indicate true:
+.Pp
+.Bl -bullet -offset indent -compact
+.It
+true
+.It
+on
+.It
+yes
+.It
+1
+.El
+.Pp
+The following values may be used to indicate false:
+.Pp
+.Bl -bullet -offset indent -compact
+.It
+false
+.It
+off
+.It
+no
+.It
+0
+.El
+.Pp
+Some configuration variables may be interpreted as an integer.
+For those variables,
+any syntax supported by
+.Xr strtoul 3C
+may be used.
+.Sh GLOBAL SETTINGS
+.Ss Architecture Neutral Settings
+.Bl -column "memory.guest_in_core" "integer" "Default"
+.It Sy Name Ta Sy Format Ta Sy Default Ta Sy Description
+.It Va name Ta string Ta Ta
+The name of the VM.
+.It Va cpus Ta integer Ta 1 Ta
+The total number of virtual CPUs.
+.It Va cores Ta integer Ta 1 Ta
+The number of virtual cores in each virtual socket.
+.It Va threads Ta integer Ta 1 Ta
+The number of virtual CPUs in each virtual core.
+.It Va sockets Ta integer Ta 1 Ta
+The number of virtual sockets.
+.It Va memory.size Ta string Ta 256M Ta
+Guest physical memory size.
+The size argument may be suffixed with one of K, M, G or T (either upper
+or lower case) to indicate a multiple of kibibytes, mebibytes, gibibytes,
+or tebibytes.
+If no suffix is given, the value is assumed to be in mebibytes.
+.It Va memory.wired Ta bool Ta false Ta
+Wire guest memory.
+.It Va acpi_tables Ta bool Ta false Ta
+Generate ACPI tables; these tables are
+.Em not
+used on illumos.
+.It Va destroy_on_poweroff Ta bool Ta false Ta
+Destroy the VM on guest-initiated power-off.
+.It Va gdb.address Ta string Ta localhost Ta
+Hostname, IP address, or IPv6 address for the debug server.
+.It Va gdb.port Ta integer Ta 0 Ta
+TCP port number for the debug server.
+If this is set to a non-zero value, a debug server
+will listen for connections on this port.
+.It Va gdb.wait Ta bool Ta false Ta
+If the debug server is enabled, wait for a debugger to connect
+before starting the guest.
+.It Va rtc.use_localtime Ta bool Ta true Ta
+The real time clock uses the local time of the host.
+If this is set to false, the real time clock uses UTC.
+.It Va uuid Ta string Ta Ta
+The universally unique identifier (UUID) to use in the guest's
+System Management BIOS System Information structure.
+If an explicit value is not set, a valid UUID is generated from
+the host's hostname and the VM name.
+.It Va virtio_msix Ta bool Ta true Ta
+Use MSI-X interrupts for PCI VirtIO devices.
+If set to false, MSI interrupts are used instead.
+.It Va config.dump Ta bool Ta false Ta
+If this value is set to true then, after parsing command line options,
+.Xr bhyve 8
+will write all of its configuration variables to
+.Dv stdout
+and exit.
+No VM will be started.
+.It Va privileges.debug Ta bool Ta false Ta
+Enable debug messages relating to privilege management.
+These messages are sent to
+.Dv stdout .
+.El
+.Ss x86-Specific Settings
+.Bl -column "x86.vmexit_on_pause" "integer" "Default"
+.It Sy Name Ta Sy Format Ta Sy Default Ta Sy Description
+.It Va x86.mptable Ta bool Ta true Ta
+Generate an MPTable.
+.It Va x86.x2apic Ta bool Ta false Ta
+Configure guest's local APICs in x2APIC mode.
+.It Va x86.strictio Ta bool Ta false Ta
+Exit if a guest accesses an I/O port that is not emulated.
+By default, writes are ignored and reads return all bits set.
+.It Va x86.strictmsr Ta bool Ta true Ta
+Inject a general protection fault if a guest accesses a Model Specific
+Register (MSR) that is not emulated.
+If this is false, writes are ignored and reads return zero.
+.It Va x86.vmexit_on_hlt Ta bool Ta false Ta
+Force a VM exit when a guest CPU executes the
+.Dv HLT
+instruction.
+This allows idle guest CPUs to yield the host CPU.
+.It Va x86.vmexit_on_pause Ta bool Ta false Ta
+Force a VM exit when a guest CPU executes the
+.Dv PAUSE
+instruction.
+.El
+.Sh DEVICE SETTINGS
+Device settings are stored under a device node.
+The device node's name is set by the parent bus of the device.
+.Ss PCI Device Settings
+PCI devices are described by a device node named
+.Dq pci . Ns Ar bus . Ns Ar slot . Ns Ar function
+where each of
+.Ar bus ,
+.Ar slot ,
+and
+.Ar function
+are formatted as decimal values with no padding.
+All PCI device nodes must contain a configuration variable named
+.Dq device
+which specifies the device model to use.
+The following PCI device models are supported:
+.Bl -tag -width indent
+.It Li hostbridge
+Provide a simple PCI-Host bridge device.
+This is usually configured at pci0:0:0 and is required by most guest
+operating systems.
+.It Li ahci
+AHCI storage controller.
+.It Li e1000
+Intel e82545 network interface.
+.It Li fbuf
+VGA framebuffer device attached to VNC server.
+.It Li lpc
+LPC PCI-ISA bridge with COM1-COM4 16550 serial ports,
+a boot ROM,
+and an optional debug/test device.
+This device must be configured on bus 0.
+.It Li nvme
+NVM Express (NVMe) controller.
+.It Li passthru
+PCI pass-through device.
+.It Li uart
+PCI 16550 serial device.
+.It Li virtio-9p
+VirtIO 9p (VirtFS) interface.
+.It Li virtio-blk
+VirtIO block storage interface.
+.It Li virtio-console
+VirtIO console interface.
+.It Li virtio-net-viona
+Accelerated VirtIO network interface.
+.It Li net-viona
+Legacy VirtIO network interface.
+.It Li virtio-rnd
+VirtIO random number generator interface.
+.It Li xhci
+Extensible Host Controller Interface (XHCI) USB controller.
+.El
+.Ss USB Device Settings
+USB controller devices contain zero or more child USB devices
+attached to slots.
+Each USB device stores its settings in a node named
+.Dq slot. Ns Va N
+under the controller's device node.
+.Va N
+is the number of the slot to which the USB device is attached.
+Note that USB slot numbers begin at 1.
+All USB device nodes must contain a configuration variable named
+.Dq device
+which specifies the device model to use.
+The following USB device models are supported:
+.Bl -tag -width indent
+.It Li tablet
+A USB tablet device which provides precise cursor synchronization
+when using VNC.
+.El
+.Ss Block Device Settings
+Block devices use the following settings to configure their backing store.
+These settings are stored in the configuration node of the respective device.
+.Bl -column "sectorsize" "logical[/physical]" "Default"
+.It Sy Name Ta Sy Format Ta Sy Default Ta Sy Description
+.It path Ta string Ta Ta
+The path of the file or disk device to use as the backing store.
+.It nocache Ta bool Ta false Ta
+Disable caching on the backing file by opening the backing file with
+.Dv O_DIRECT .
+.It nodelete Ta bool Ta false Ta
+Disable emulation of guest trim requests via
+.Dv DIOCGDELETE
+requests.
+.It sync Ta bool Ta false Ta
+Write changes to the backing file with synchronous writes.
+.It direct Ta bool Ta false Ta
+An alias for
+.Va sync .
+.It ro Ta bool Ta false Ta
+Disable writes to the backing file.
+.It sectorsize Ta Va logical Ns Op / Ns Va physical Ta Ta
+Specify the logical and physical sector size of the emulated disk.
+If the physical size is not specified, it is set to be equal to the logical
+size.
+.El
+.Ss virtio-net-viona Network Backend Settings
+Viona network devices use the following settings to configure their backend.
+.Bl -column "feature_flags" "string" "Default"
+.It Sy Name Ta Sy Format Ta Sy Default Ta Sy Description
+.It vnic Ta string Ta Ta
+The VNIC to use for the network connection.
+.It feature_mask Ta integer Ta 0 Ta
+Specify a mask to apply to the virtio features advertised to the guest.
+.El
+.Ss Other Network Backend Settings
+Other network devices use the following settings to configure their backend.
+.Bl -column "feature_flags" "string" "Default"
+.It Sy Name Ta Sy Format Ta Sy Default Ta Sy Description
+.It vnic Ta string Ta Ta
+The VNIC to use for the network connection.
+.It promiscphys Ta bool Ta false Ta
+Enable promiscuous mode at the physical level.
+.It promiscsap Ta bool Ta true Ta
+Enable promiscuous mode at the SAP level.
+.It promiscmulti Ta bool Ta true Ta
+Enable promiscuous mode for all multicast addresses.
+.It promiscrxonly Ta bool Ta true Ta
+The selected promiscuous modes are only enabled for received traffic.
+.El
+.Ss UART Device Settings
+.Bl -column "Name" "Format" "Default"
+.It Sy Name Ta Sy Format Ta Sy Default Ta Sy Description
+.It Va path Ta path Ta Ta
+Backend device for the serial port.
+Either the pathname of a character device or
+.Dq stdio
+to use standard input and output of the
+.Xr bhyve 8
+process.
+.El
+.Ss Host Bridge Settings
+Host Bridge devices use the following settings.
+When configuring parameters, either the
+.Va model
+by itself, or both of
+.Va vendor
+and
+.Va devid
+must be specified.
+.Bl -column "vendor" "integer" "Default"
+.It Sy Name Ta Sy Format Ta Sy Default Ta Sy Description
+.It Va model Ta string Ta netapp Ta
+Specify a hostbridge model to emulate.
+Valid model strings, and their associated vendor and device IDs are:
+.Sy amd Pq 0x1022/0x7432 ,
+.Sy netapp Pq 0x1275/0x1275 ,
+.Sy i440fx Pq 0x8086/0x1237
+and
+.Sy q35 Pq 0x8086/0x29b0 .
+.It Va vendor Ta integer Ta 0x1275 Ta
+PCI vendor ID.
+.It Va devid Ta integer Ta 0x1275 Ta
+PCI device ID.
+.El
+.Ss AHCI Controller Settings
+AHCI controller devices contain zero or more ports each of which
+provides a storage device.
+Each port stores its settings in a node named
+.Dq port. Ns Va N
+under the controller's device node.
+The
+.Va N
+values are formatted as successive decimal values starting with 0.
+In addition to the block device settings described above, each
+port supports the following settings:
+.Bl -column "model" "integer" "generated"
+.It Sy Name Ta Sy Format Ta Sy Default Ta Sy Description
+.It Va type Ta string Ta Ta
+The type of storage device to emulate.
+Must be set to either
+.Dq cd
+or
+.Dq hd .
+.It Va nmrr Ta integer Ta 0 Ta
+Nominal Media Rotation Rate, also known as RPM.
+A value 1 of indicates a device with no rate such as a Solid State Disk.
+.It Va ser Ta string Ta generated Ta
+Serial number of up to twenty characters.
+A default serial number is generated using a hash of the backing
+store's pathname.
+.It Va rev Ta string Ta 001 Ta
+Revision number of up to eight characters.
+.It Va model Ta string Ta Ta
+Model number of up to forty characters.
+Separate default model strings are used for
+.Dq cd
+and
+.Dq hd
+device types.
+.El
+.Ss Frame Buffer Settings
+.Bl -column "password" "[IP:]port" "127.0.0.1:5900"
+.It Sy Name Ta Sy Format Ta Sy Default Ta Sy Description
+.It Va wait Ta bool Ta false Ta
+Wait for a remote connection before starting the VM.
+.It Va rfb Ta Oo Ar IP Ns \&: Oc Ns Ar port Ta 127.0.0.1:5900 Ta
+TCP address to listen on for remote connections.
+The IP address must be given as a numeric address.
+IPv6 addresses must be enclosed in square brackets and
+support scoped identifiers as described in
+.Xr getaddrinfo 3SOCKET .
+A bare port number may be given in which case the IPv4
+localhost address is used.
+.It Va unix Ta string Ta Ta
+UNIX socket to listen on for VNC connections.
+.It Va vga Ta string Ta io Ta
+VGA configuration.
+More details are provided in
+.Xr bhyve 8 .
+.It Va w Ta integer Ta 1024 Ta
+Frame buffer width in pixels.
+.It Va h Ta integer Ta 768 Ta
+Frame buffer height in pixels.
+.It Va password Ta string Ta Ta
+Password to use for VNC authentication.
+This type of authentication is known to be cryptographically weak and is not
+intended for use on untrusted networks.
+.El
+.Ss LPC Device Settings
+The LPC bridge stores its configuration under a top-level
+.Va lpc
+node rather than under the PCI LPC device's node.
+The following nodes are available under
+.Va lpc :
+.Bl -column "pc-testdev" "Format" "Default"
+.It Sy Name Ta Sy Format Ta Sy Default Ta Sy Description
+.It Va bootrom Ta path Ta Ta
+Path to a boot ROM.
+The contents of this file are copied into the guest's
+memory ending just before the 4GB physical address.
+If a boot ROM is present, a firmware interface device is
+also enabled for use by the boot ROM.
+.It Va com1 Ta node Ta Ta
+Settings for the COM1 serial port device.
+.It Va com2 Ta node Ta Ta
+Settings for the COM2 serial port device.
+.It Va com3 Ta node Ta Ta
+Settings for the COM3 serial port device.
+.It Va com4 Ta node Ta Ta
+Settings for the COM4 serial port device.
+.It Va pc-testdev Ta bool Ta false Ta
+Enable the PC debug/test device.
+.El
+.Ss NVMe Controller Settings
+Each NVMe controller supports a single storage device.
+The device can be backed either by a memory disk described by the
+.Va ram
+variable, or a block device using the block device settings described above.
+In addition, each controller supports the following settings:
+.Bl -column "ioslots" "Format" "Default"
+.It Sy Name Ta Sy Format Ta Sy Default Ta Sy Description
+.It Va maxq Ta integer Ta 16 Ta
+Maximum number of I/O submission and completion queue pairs.
+.It Va qsz Ta integer Ta 2058 Ta
+Number of elements in each I/O queue.
+.It Va ioslots Ta integer Ta 8 Ta
+Maximum number of concurrent I/O requests.
+.It Va sectsz Ta integer Ta Ta
+Sector size.
+Can be one of 512, 4096, or 8192.
+Devices backed by a memory disk use 4096 as the default.
+Devices backed by a block device use the block device's sector size
+as the default.
+.It Va ser Ta string Ta Ta
+Serial number of up to twenty characters.
+A default serial number is generated using a hash of the device's PCI address.
+.It Va eui64 Ta integer Ta Ta
+IEEE Extended Unique Identifier.
+If an EUI is not provided, a default is generated using a checksum of the
+device's PCI address.
+.It Va dsm Ta string Ta auto Ta
+Whether or not to advertise Dataset Management (DSM) support.
+One of
+.Dq auto ,
+.Dq enable ,
+or
+.Dq disable .
+The
+.Dq auto
+setting only advertises support if the backing store supports
+resource freeing, for example via TRIM.
+.It Va ram Ta integer Ta Ta
+If set, allocate a memory disk as the backing store.
+The value of this variable is the size of the memory disk in megabytes.
+.El
+.Ss PCI Passthrough Settings
+.Bl -column "Name" "integer" "Default"
+.It Sy Name Ta Sy Format Ta Sy Default Ta Sy Description
+.It Va path Ta string Ta Ta
+Path to a PCI passthrough device in the form
+.Pa /dev/ppt Ns Ar N
+where
+.Ar N
+is the device number.
+.El
+.Ss VirtIO 9p Settings
+Each VirtIO 9p device exposes a single filesystem from a host path.
+.Bl -column "sharename" "Format" "Default"
+.It Sy Name Ta Sy Format Ta Sy Default Ta Sy Description
+.It Va sharename Ta string Ta Ta
+The share name exposed to the guest.
+.It Va path Ta path Ta Ta
+The path of a directory on the host to export to the guest.
+.It Va ro Ta bool Ta false Ta
+If true, the guest filesystem is read-only.
+.El
+.Ss VirtIO Block Device Settings
+In addition to the block device settings described above, each
+VirtIO block device supports the following settings:
+.Bl -column "model" "integer" "generated"
+.It Sy Name Ta Sy Format Ta Sy Default Ta Sy Description
+.It Va ser Ta string Ta generated Ta
+Serial number of up to twenty characters.
+A default serial number is generated using a hash of the backing
+store's pathname.
+.El
+.Ss VirtIO Console Device Settings
+Each VirtIO Console device contains one or more console ports.
+Each port stores its settings in a node named
+.Dq port. Ns Va N
+under the controller's device node.
+The
+.Va N
+values are formatted as successive decimal values starting with 0.
+Each port supports the following settings:
+.Bl -column "Name" "Format" "Default"
+.It Sy Name Ta Sy Format Ta Sy Default Ta Sy Description
+.It Va name Ta string Ta Ta
+The name of the port exposed to the guest.
+.It Va path Ta path Ta Ta
+The path of a UNIX domain socket providing the host connection for the port.
+.El
+.Sh SEE ALSO
+.Xr strtoul 3C ,
+.Xr getaddrinfo 3SOCKET ,
+.Xr bhyve 8
diff --git a/usr/src/man/man5/bootparams.5 b/usr/src/man/man5/bootparams.5
new file mode 100644
index 0000000000..7c614f99fb
--- /dev/null
+++ b/usr/src/man/man5/bootparams.5
@@ -0,0 +1,228 @@
+'\" te
+.\" Copyright 2021 Peter Tribble
+.\" Copyright (C) 2002, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH BOOTPARAMS 5 "November 22, 2021"
+.SH NAME
+bootparams \- boot parameter data base
+.SH SYNOPSIS
+.nf
+\fB/etc/bootparams\fR
+.fi
+
+.SH DESCRIPTION
+The \fBbootparams\fR file contains a list of client entries that diskless
+clients use for booting. Diskless booting clients retrieve this information by
+issuing requests to a server running the \fBrpc.bootparamd\fR(8) program. The
+\fBbootparams\fR file may be used in conjunction with or in place of other
+sources for the \fBbootparams\fR information. See \fBnsswitch.conf\fR(5).
+.sp
+.LP
+For each client the file contains an entry with the client's name and a list of
+boot parameter values for that client. Each entry has the form:
+.sp
+.in +2
+.nf
+\fIclientname keyword=value\fR...
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The first item of each entry is the host name of the diskless client. You can
+use the asterisk ('*') character as a "wildcard" in place of the client name in
+a single entry. A wildcard entry applies to all clients for which there is not
+an entry that specifically names them.
+.sp
+.LP
+In a given entry, the host name or asterisk is followed by one or more
+whitespace characters and a series of keyword\(emvalue pairs separated by
+whitespace characters. There must not be any whitespace within a
+keyword\(emvalue pair.
+.sp
+.LP
+Each keyword\(emvalue pair has the syntax:
+.sp
+.in +2
+.nf
+\fIkeyword\fR\fB=\fR\fIvalue\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The preceding form breaks out further as:
+.sp
+.in +2
+.nf
+\fIkeyword\fR\fB=\fR\fIserver\fR\fB:\fR\fIvalue\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Where \fIserver\fR can be null and \fIvalue\fR can be a pathname.
+.sp
+.LP
+An example that includes a server is:
+.sp
+.in +2
+.nf
+client1 root=server1:/export/client1/root
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+An example where \fIserver\fR is null is:
+.sp
+.in +2
+.nf
+client1 rootopts=:vers2
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+A minor variation of the \fIkeyword=value\fR syntax is used for the
+\fBdomain\fR keyword. Unlike the forms shown above, this syntax does not use a
+colon. For example:
+.sp
+.in +2
+.nf
+client1 domain=bldg1.example.com
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Entries can span multiple lines. Use the backslash ('\e') character as the last
+character of a line to continue the entry to the following line. For
+multiple-line entries, you can split a line only in places where whitespace is
+allowed. For example, you can use a backslash to split the following entry
+between the end of the path (\fBroot\fR) and the keyword \fBdomain\fR:
+.sp
+.in +2
+.nf
+client1 root=server1:/export/client1/root domain=bldg1.example.com
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+In entries that specify a server, \fIserver\fR is the name of the server that
+will provide the file or filesystem to the diskless client and \fIvalue\fR is
+the pathname of the exported file or filesystem on that server.
+.sp
+.LP
+In entries that use the \fBdomain\fR keyword, the domain name specified must be
+the client's domain name. The algorithm for determining a client's domain name
+is to first check for a \fBdomain\fR keyword in the client-specific entry and
+then in "wildcard" entry. If none is found, the server's domain name is used.
+.sp
+.LP
+For the JumpStart installation of machines that do not have video displays, use
+the \fBterm\fR keyword to identify the terminal type of the boot server.
+Terminal types are listed in \fB/usr/share/lib/terminfo\fR (see
+\fBterminfo\fR(5)).
+.sp
+.LP
+An entry with the \fBns\fR keyword associates a server (a name server) with,
+instead of a pathname, a specific name service (\fBNIS+\fR, \fBNIS\fR,
+\fBLDAP\fR, or \fBnone\fR) and, if that server is not on a local subnet, the
+netmask needed to reach it. For example:
+.sp
+.in +2
+.nf
+ns=hoot:nisplus(255.255.255.0)
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+An \fBns\fR entry forces \fBsysidtool\fR to use the specified name service.
+By default, \fBsysidtool\fR uses \fBNIS+\fR in preference to \fBNIS\fR or
+\fBLDAP\fR if it can find an \fBNIS+\fR server for the system's domain on the
+subnet. An \fBns\fR entry might be necessary if you are trying to set up a
+hands-off installation, or if the name server is on a different subnet, which
+is common with \fBNIS+\fR.
+.sp
+.LP
+If an \fBns\fR keyword is not used, \fBsysidtool\fR uses broadcast to attempt
+to bind to either a \fBNIS+\fR, \fBNIS\fR, or \fBLDAP\fR server. If a name
+server is not on the local subnet, which is possible for \fBNIS+\fR or
+\fBLDAP\fR, the bind will fail, automatic configuration of the name service
+will fail, and an interactive screen is displayed, prompting the user to
+specify the name service.
+.sp
+.LP
+The \fBns\fR keyword can be set in \fBadd_install_client\fR or by Host Manager.
+.SH EXAMPLES
+\fBExample 1 \fRSample \fBbootparams\fR Entry
+.sp
+.LP
+Here is an example of an entry in the \fBbootparams\fR file:
+
+.sp
+.in +2
+.nf
+ client1 root=server1:/export/client1/root rootopts=:vers=2 \e
+ domain=bldg1.example.com
+ client2 root=server2:/export/client2/root ns=:nis
+ client3 root=server2:/export/client3/root ns=watson:
+ client4 root=server2:/export/client4/root \e
+ ns=mach:nisplus(255.255.255.0)
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRSample Entry for JumpStart
+.sp
+.LP
+The following is an example of an entry that might be used for the JumpStart
+installation of diskless clients that do not have displays.
+
+.sp
+.in +2
+.nf
+mozart root=haydn:/export/install/sparc/os/latest/Solaris_9/boot \e
+install=haydn:/export/install/sparc/os/8.1/latest boottype=:in \e
+install_config=haydn:/usr/local/share/lib/jump-net \e
+ns=otis:nisplus(255.255.255.0) term=:xterms domain=eu.cte.example.com
+.fi
+.in -2
+.sp
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/etc/bootparams\fR\fR
+.ad
+.RS 19n
+
+.RE
+
+.SH SEE ALSO
+.BR nsswitch.conf (5),
+.BR rpc.bootparamd (8)
+.SH NOTES
+The \fBNIS+\fR, \fBsysidtool\fR, and jumpstart facilities are not present in
+illumos. They are documented here solely for users who wish to use illumos as
+a jumpstart server for older Solaris releases.
+.sp
+.LP
+Solaris diskless clients use the keywords \fBroot\fR and \fBrootopts\fR to look
+up the pathname for the root filesystem and the mount options for the root
+filesystem, respectively. These are the only keywords meaningful for diskless
+booting clients. See \fBmount_ufs\fR(8).
diff --git a/usr/src/man/man5/brand.4th.5 b/usr/src/man/man5/brand.4th.5
deleted file mode 100644
index 77d6b64492..0000000000
--- a/usr/src/man/man5/brand.4th.5
+++ /dev/null
@@ -1,115 +0,0 @@
-.\" Copyright (c) 2011 Devin Teske
-.\" All rights reserved.
-.\"
-.\" Redistribution and use in source and binary forms, with or without
-.\" modification, are permitted provided that the following conditions
-.\" are met:
-.\" 1. Redistributions of source code must retain the above copyright
-.\" notice, this list of conditions and the following disclaimer.
-.\" 2. Redistributions in binary form must reproduce the above copyright
-.\" notice, this list of conditions and the following disclaimer in the
-.\" documentation and/or other materials provided with the distribution.
-.\"
-.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
-.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
-.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
-.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
-.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-.\" SUCH DAMAGE.
-.\"
-.Dd July 20, 2018
-.Dt BRAND.4TH 5
-.Os
-.Sh NAME
-.Nm brand.4th
-.Nd loader ASCII art boot module
-.Sh DESCRIPTION
-The file that goes by the name of
-.Nm
-is a set of commands designed to draw the ASCII art illumos brand above the
-boot loader menu.
-The commands of
-.Nm
-by themselves are not enough for most uses.
-Please refer to the
-examples below for the most common situations, and to
-.Xr loader 5
-for additional commands.
-.Pp
-Before using any of the commands provided in
-.Nm ,
-it must be included
-through the command:
-.Pp
-.Dl include brand.4th
-.Pp
-This line is present in the default
-.Pa /boot/forth/menu.rc
-file, so it is not needed (and should not be re-issued) in a normal setup.
-.Pp
-The commands provided by it are:
-.Pp
-.Bl -tag -width disable-module_module -compact -offset indent
-.It Ic draw-brand
-Draws the illumos brand.
-.Pp
-The brand that is drawn is configured by setting the
-.Ic loader_brand
-variable in
-.Xr loader.conf 4
-to one of
-.Dq Li illumos
-(the default) or
-.Dq Li none .
-.Pp
-The position of the logo can be configured by setting the
-.Ic loader_brand_x
-and
-.Ic loader_brand_y
-variables in
-.Xr loader.conf 4 .
-The default values are 2 (x) and 1 (y).
-.El
-.Pp
-The environment variables that effect its behavior are:
-.Bl -tag -width bootfile -offset indent
-.It Va loader_brand
-Selects the desired brand in the beastie boot menu.
-Possible values are:
-.Dq Li illumos
-(default) or
-.Dq Li none .
-.It Va loader_brand_x
-Sets the desired column position of the brand.
-Default is 2.
-.It Va loader_brand_y
-Sets the desired row position of the brand.
-Default is 1.
-.El
-.Sh FILES
-.Bl -tag -width /boot/forth/loader.4th -compact
-.It Pa /boot/loader
-The
-.Xr loader 5 .
-.It Pa /boot/forth/brand.4th
-.Nm
-itself.
-.It Pa /boot/loader.rc
-.Xr loader 5
-bootstrapping script.
-.El
-.Sh EXAMPLES
-Set illumos brand in
-.Xr loader.conf 4 :
-.Pp
-.Bd -literal -offset indent -compact
-loader_brand="illumos"
-.Ed
-.Sh SEE ALSO
-.Xr loader.conf 4 ,
-.Xr loader 5
diff --git a/usr/src/man/man5/brands.5 b/usr/src/man/man5/brands.5
deleted file mode 100644
index 0f9780aafd..0000000000
--- a/usr/src/man/man5/brands.5
+++ /dev/null
@@ -1,74 +0,0 @@
-'\" te
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH BRANDS 5 "May 23, 2021"
-.SH NAME
-brands \- alternate operating environments for non-global zones
-.SH DESCRIPTION
-The branded zone (BrandZ) framework extends the Solaris Zones infrastructure
-described in \fBzones\fR(5) to include the creation of brands, which provide
-non-global zones that contain non-native operating environments.
-.sp
-.LP
-The term "brand" can refer to a wide range of operating environments. All brand
-management is performed as extensions to the current zones structure.
-.sp
-.LP
-Every zone is configured with an associated brand. The brand type is used to
-determine which scripts are executed when a zone is installed and booted. In
-addition, a zone's brand is used to properly identify the correct application
-type at application launch time. The default brand is determined by the
-installed distribution in the global zone.
-.sp
-.LP
-A branded zone will support exactly one brand of non-native binary, which means
-that a branded zone provides a single operating environment. Once a zone has
-been assigned a brand, that brand cannot be changed or removed.
-.sp
-.LP
-BrandZ extends the zones tools in the following ways:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-A brand is an attribute of a zone, set at zone create time.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The zonecfg tool (see \fBzonecfg\fR(1M)) is used to set a zone's brand type and
-configure the zone.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The zoneadm tool (see \fBzoneadm\fR(1M)) is used to report a zone's brand type
-and administer the zone.
-.RE
-.SS "Device Support"
-The devices supported by each zone are documented in the man pages and other
-documentation for that brand. The zones infrastructure detects any attempt to
-add an unsupported device and issues a warning to the administrator. If the
-administrator chooses to add an unsupported device despite that warning, that
-device might or might not work as expected. The configuration will be untested
-and unsupported.
-.SH ATTRIBUTES
-See \fBattributes\fR(5) for a description of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-\fBzoneadm\fR(1M), \fBzonecfg\fR(1M), \fBattributes\fR(5), \fBzones\fR(5)
diff --git a/usr/src/man/man5/byteorder.5 b/usr/src/man/man5/byteorder.5
deleted file mode 100644
index a5f5c02f47..0000000000
--- a/usr/src/man/man5/byteorder.5
+++ /dev/null
@@ -1,270 +0,0 @@
-.\"
-.\" This file and its contents are supplied under the terms of the
-.\" Common Development and Distribution License ("CDDL"), version 1.0.
-.\" You may only use this file in accordance with the terms of version
-.\" 1.0 of the CDDL.
-.\"
-.\" A full copy of the text of the CDDL should have accompanied this
-.\" source. A copy of the CDDL is also available via the Internet at
-.\" http://www.illumos.org/license/CDDL.
-.\"
-.\"
-.\" Copyright 2016 Joyent, Inc.
-.\"
-.Dd August 2, 2018
-.Dt BYTEORDER 5
-.Os
-.Sh NAME
-.Nm byteorder ,
-.Nm endian
-.Nd byte order and endianness
-.Sh DESCRIPTION
-Integer values which occupy more than 1 byte in memory can be laid out
-in different ways on different platforms.
-In particular, there is a major split between those which place the least
-significant byte of an integer at the lowest address, and those which place the
-most significant byte there instead.
-As this difference relates to which end of the integer is found in memory first,
-the term
-.Em endian
-is used to refer to a particular byte order.
-.Pp
-A platform is referred to as using a
-.Em big-endian
-byte order when it places the most significant byte at the lowest
-address, and
-.Em little-endian
-when it places the least significant byte first.
-Some platforms may also switch between big- and little-endian mode and run code
-compiled for either.
-.Pp
-Historically, there have also been some systems that utilized
-.Em middle-endian
-byte orders for integers larger than 2 bytes.
-Such orderings are not in common use today.
-.Pp
-Endianness is also of particular importance when dealing with values
-that are being read into memory from an external source.
-For example, network protocols such as IP conventionally define the fields in a
-packet as being always stored in big-endian byte order.
-This means that a little-endian machine will have to perform transformations on
-these fields in order to process them.
-.Ss Examples
-To illustrate endianness in memory, let us consider the decimal integer
-2864434397.
-This number fits in 32 bits of storage (4 bytes).
-.Pp
-On a big-endian system, this integer would be written into memory as
-the bytes 0xAA, 0xBB, 0xCC, 0xDD, in order from lowest memory address to
-highest.
-.Pp
-On a little-endian system, it would be written instead as the bytes
-0xDD, 0xCC, 0xBB, 0xAA, in that order.
-.Pp
-If both the big- and little-endian systems were asked to store this
-integer at address 0x100, we would see the following in each of their
-memory:
-.Bd -literal
-
- Big-Endian
-
- ++------++------++------++------++
- || 0xAA || 0xBB || 0xCC || 0xDD ||
- ++------++------++------++------++
- ^^ ^^ ^^ ^^
- 0x100 0x101 0x102 0x103
- vv vv vv vv
- ++------++------++------++------++
- || 0xDD || 0xCC || 0xBB || 0xAA ||
- ++------++------++------++------++
-
- Little-Endian
-.Ed
-.Pp
-It is particularly important to note that even though the byte order is
-different between these two machines, the bit ordering within each byte,
-by convention, is still the same.
-.Pp
-For example, take the decimal integer 4660, which occupies in 16 bits (2
-bytes).
-.Pp
-On a big-endian system, this would be written into memory as 0x12, then
-0x34.
-.Pp
-On a little-endian system, it would be written as 0x34, then 0x12.
-Note that this is not at all the same as seeing 0x43 then 0x21 in memory --
-only the bytes are re-ordered, not any bits (or nybbles) within them.
-.Pp
-As before, storing this at address 0x100:
-.Bd -literal
- Big-Endian
-
- ++------++------++
- || 0x12 || 0x34 ||
- ++------++------++
- ^^ ^^
- 0x100 0x101
- vv vv
- ++------++------++
- || 0x34 || 0x12 ||
- ++------++------++
-
- Little-Endian
-.Ed
-.Pp
-This example shows how an eight byte number, 0xBADCAFEDEADBEEF is stored
-in both big and little-endian:
-.Bd -literal
- Big-Endian
-
- +------+------+------+------+------+------+------+------+
- | 0xBA | 0xDC | 0xAF | 0xFE | 0xDE | 0xAD | 0xBE | 0xEF |
- +------+------+------+------+------+------+------+------+
- ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^
- 0x100 0x101 0x102 0x103 0x104 0x105 0x106 0x107
- vv vv vv vv vv vv vv vv
- +------+------+------+------+------+------+------+------+
- | 0xEF | 0xBE | 0xAD | 0xDE | 0xFE | 0xAF | 0xDC | 0xBA |
- +------+------+------+------+------+------+------+------+
-
- Little-Endian
-
-.Ed
-.Pp
-The treatment of different endian values would not be complete without
-discussing
-.Em PDP-endian ,
-which is also known as
-.Em middle-endian .
-While the PDP-11 was a 16-bit little-endian system, it laid out 32-bit
-values in a different way from current little-endian systems.
-First, it would divide a 32-bit number into two 16-bit numbers.
-Each 16-bit number would be stored in little-endian; however, the two 16-bit
-words would be stored with the larger 16-bit word appearing first in memory,
-followed by the latter.
-.Pp
-The following image illustrates PDP-endian and compares it against
-little-endian values.
-Here, we'll start with the value 0xAABBCCDD and show how the four bytes for it
-will be laid out, starting at 0x100.
-.Bd -literal
- PDP-Endian
-
- ++------++------++------++------++
- || 0xBB || 0xAA || 0xDD || 0xCC ||
- ++------++------++------++------++
- ^^ ^^ ^^ ^^
- 0x100 0x101 0x102 0x103
- vv vv vv vv
- ++------++------++------++------++
- || 0xDD || 0xCC || 0xBB || 0xAA ||
- ++------++------++------++------++
-
- Little-Endian
-
-.Ed
-.Ss Network Byte Order
-The term 'network byte order' refers to big-endian ordering, and
-originates from the IEEE.
-Early disagreements over which byte ordering to use for network traffic prompted
-RFC1700 to define that all IETF-specified network protocols use big-endian
-ordering unless noted explicitly otherwise.
-The Internet protocol family (IP, and thus TCP and UDP etc) particularly adhere
-to this convention.
-.Ss Determining the System's Byte Order
-The operating system supports both big-endian and little-endian CPUs.
-To make it easier for programs to determine the endianness of the platform they
-are being compiled for, functions and macro constants are provided in the system
-header files.
-.Pp
-The endianness of the system can be obtained by including the header
-.In sys/types.h
-and using the pre-processor macros
-.Sy _LITTLE_ENDIAN
-and
-.Sy _BIG_ENDIAN .
-See
-.Xr types.h 3HEAD
-for more information.
-.Pp
-Additionally, the header
-.In endian.h
-defines an alternative means for determining the endianness of the
-current system.
-See
-.Xr endian.h 3HEAD
-for more information.
-.Pp
-illumos runs on both big- and little-endian systems.
-When writing software for which the endianness is important, one must always
-check the byte order and convert it appropriately.
-.Ss Converting Between Byte Orders
-The system provides two different sets of functions to convert values
-between big-endian and little-endian.
-They are defined in
-.Xr byteorder 3C
-and
-.Xr endian 3C .
-.Pp
-The
-.Xr byteorder 3C
-family of functions convert data between the host's native byte order
-and big- or little-endian.
-The functions operate on either 16-bit, 32-bit, or 64-bit values.
-Functions that convert from network byte order to the host's byte order
-start with the string
-.Sy ntoh ,
-while functions which convert from the host's byte order to network byte
-order, begin with
-.Sy hton .
-For example, to convert a 32-bit value, a long, from network byte order
-to the host's, one would use the function
-.Xr ntohl 3C .
-.Pp
-These functions have been standardized by POSIX.
-However, the 64-bit variants,
-.Xr ntohll 3C
-and
-.Xr htonll 3C
-are not standardized and may not be found on other systems.
-For more information on these functions, see
-.Xr byteorder 3C .
-.Pp
-The second family of functions,
-.Xr endian 3C ,
-provide a means to convert between the host's byte order
-and big-endian and little-endian specifically.
-While these functions are similar to those in
-.Xr byteorder 3C ,
-they more explicitly cover different data conversions.
-Like them, these functions operate on either 16-bit, 32-bit, or 64-bit values.
-When converting from big-endian, to the host's endianness, the functions
-begin with
-.Sy betoh .
-If instead, one is converting data from the host's native endianness to
-another, then it starts with
-.Sy htobe .
-When working with little-endian data, the prefixes
-.Sy letoh
-and
-.Sy htole
-convert little-endian data to the host's endianness and from the host's
-to little-endian respectively.
-.Pp
-These functions are not standardized and the header they appear in varies
-between the BSDs and GNU/Linux.
-Applications that wish to be portable, should instead use the
-.Xr byteorder 3C
-functions.
-.Pp
-All of these functions in both families simply return their input when
-the host's native byte order is the same as the desired order.
-For example, when calling
-.Xr htonl 3C
-on a big-endian system the original data is returned with no conversion
-or modification.
-.Sh SEE ALSO
-.Xr byteorder 3C ,
-.Xr endian 3C ,
-.Xr endian.h 3HEAD ,
-.Xr inet 3HEAD
diff --git a/usr/src/man/man5/cancellation.5 b/usr/src/man/man5/cancellation.5
deleted file mode 100644
index 8cd2eb8f62..0000000000
--- a/usr/src/man/man5/cancellation.5
+++ /dev/null
@@ -1,429 +0,0 @@
-.\"
-.\" Sun Microsystems, Inc. gratefully acknowledges The Open Group for
-.\" permission to reproduce portions of its copyrighted documentation.
-.\" Original documentation from The Open Group can be obtained online at
-.\" http://www.opengroup.org/bookstore/.
-.\"
-.\" The Institute of Electrical and Electronics Engineers and The Open
-.\" Group, have given us permission to reprint portions of their
-.\" documentation.
-.\"
-.\" In the following statement, the phrase ``this text'' refers to portions
-.\" of the system documentation.
-.\"
-.\" Portions of this text are reprinted and reproduced in electronic form
-.\" in the SunOS Reference Manual, from IEEE Std 1003.1, 2004 Edition,
-.\" Standard for Information Technology -- Portable Operating System
-.\" Interface (POSIX), The Open Group Base Specifications Issue 6,
-.\" Copyright (C) 2001-2004 by the Institute of Electrical and Electronics
-.\" Engineers, Inc and The Open Group. In the event of any discrepancy
-.\" between these versions and the original IEEE and The Open Group
-.\" Standard, the original IEEE and The Open Group Standard is the referee
-.\" document. The original Standard can be obtained online at
-.\" http://www.opengroup.org/unix/online.html.
-.\"
-.\" This notice shall appear on any product containing this material.
-.\"
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.\"
-.\"
-.\" Portions Copyright (c) 1995 IEEE. All Rights Reserved.
-.\" Copyright (c) 2001, The IEEE and The Open Group. All Rights Reserved.
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved.
-.\"
-.TH CANCELLATION 5 "Oct 4, 2005"
-.SH NAME
-cancellation \- overview of concepts related to POSIX thread cancellation
-.SH DESCRIPTION
-.TS
-box;
-c | c
-l | l .
-FUNCTION ACTION
-_
-\fBpthread_cancel()\fR Cancels thread execution.
-\fBpthread_setcancelstate()\fR Sets the cancellation \fIstate\fR of a thread.
-\fBpthread_setcanceltype()\fR Sets the cancellation \fItype\fR of a thread.
-\fBpthread_testcancel()\fR T{
-Creates a cancellation point in the calling thread.
-T}
-\fBpthread_cleanup_push()\fR Pushes a cleanup handler routine.
-\fBpthread_cleanup_pop()\fR Pops a cleanup handler routine.
-.TE
-
-.SS "Cancellation"
-.LP
-Thread cancellation allows a thread to terminate the execution of any
-application thread in the process. Cancellation is useful when further
-operations of one or more threads are undesirable or unnecessary.
-.sp
-.LP
-An example of a situation that could benefit from using cancellation is an
-asynchronously-generated cancel condition such as a user requesting to close or
-exit some running operation. Another example is the completion of a task
-undertaken by a number of threads, such as solving a maze. While many threads
-search for the solution, one of the threads might solve the puzzle while the
-others continue to operate. Since they are serving no purpose at that point,
-they should all be canceled.
-.SS "Planning Steps"
-.LP
-Planning and programming for most cancellations follow this pattern:
-.RS +4
-.TP
-1.
-Identify which threads you want to cancel, and insert
-\fBpthread_cancel\fR(3C) statements.
-.RE
-.RS +4
-.TP
-2.
-Identify system-defined cancellation points where a thread that might be
-canceled could have changed system or program state that should be restored.
-See the \fBCancellation Points\fR for a list.
-.RE
-.RS +4
-.TP
-3.
-When a thread changes the system or program state just before a cancellation
-point, and should restore that state before the thread is canceled, place a
-cleanup handler before the cancellation point with
-\fBpthread_cleanup_push\fR(3C). Wherever a thread restores the changed state,
-pop the cleanup handler from the cleanup stack with
-\fBpthread_cleanup_pop\fR(3C).
-.RE
-.RS +4
-.TP
-4.
-Know whether the threads you are canceling call into cancel-unsafe
-libraries, and disable cancellation with \fBpthread_setcancelstate\fR(3C)
-before the call into the library. See \fBCancellation State\fR and
-\fBCancel-Safe\fR.
-.RE
-.RS +4
-.TP
-5.
-To cancel a thread in a procedure that contains no cancellation points,
-insert your own cancellation points with \fBpthread_testcancel\fR(3C). This
-function creates cancellation points by testing for pending cancellations and
-performing those cancellations if they are found. Push and pop cleanup handlers
-around the cancellation point, if necessary (see Step 3, above).
-.RE
-.SS "Cancellation Points"
-.LP
-The system defines certain points at which cancellation can occur (cancellation
-points), and you can create additional cancellation points in your application
-with \fBpthread_testcancel()\fR.
-.sp
-.LP
-The following cancellation points are defined by the system (system-defined
-cancellation points): \fBcreat\fR(2), \fBaio_suspend\fR(3C), \fBclose\fR(2),
-\fBcreat\fR(2), \fBgetmsg\fR(2), \fBgetpmsg\fR(2), \fBlockf\fR(3C),
-\fBmq_receive\fR(3C), \fBmq_send\fR(3C), \fBmsgrcv\fR(2), \fBmsgsnd\fR(2),
-\fBmsync\fR(3C), \fBnanosleep\fR(3C), \fBopen\fR(2), \fBpause\fR(2),
-\fBpoll\fR(2), \fBpread\fR(2), \fBpthread_cond_timedwait\fR(3C),
-\fBpthread_cond_wait\fR(3C), \fBpthread_join\fR(3C),
-\fBpthread_testcancel\fR(3C), \fBputmsg\fR(2), \fBputpmsg\fR(2),
-\fBpwrite\fR(2), \fBread\fR(2), \fBreadv\fR(2), \fBselect\fR(3C),
-\fBsem_wait\fR(3C), \fBsigpause\fR(3C), \fBsigwaitinfo\fR(3C),
-\fBsigsuspend\fR(2), \fBsigtimedwait\fR(3C), \fBsigwait\fR(2), \fBsleep\fR(3C),
-\fBsync\fR(2), \fBsystem\fR(3C), \fBtcdrain\fR(3C), \fBusleep\fR(3C),
-\fBwait\fR(3C), \fBwaitid\fR(2), \fBwait3\fR(3C), \fBwaitpid\fR(3C),
-\fBwrite\fR(2), \fBwritev\fR(2), and \fBfcntl\fR(2), when specifying
-\fBF_SETLKW\fR as the command.
-.sp
-.LP
-When cancellation is asynchronous, cancellation can occur at any time (before,
-during, or after the execution of the function defined as the cancellation
-point). When cancellation is deferred (the default case), cancellation occurs
-only within the scope of a function defined as a cancellation point (after the
-function is called and before the function returns). See \fBCancellation
-Type\fR for more information about deferred and asynchronous cancellation.
-.sp
-.LP
-Choosing where to place cancellation points and understanding how cancellation
-affects your program depend upon your understanding of both your application
-and of cancellation mechanics.
-.sp
-.LP
-Typically, any call that might require a long wait should be a cancellation
-point. Operations need to check for pending cancellation requests when the
-operation is about to block indefinitely. This includes threads waiting in
-\fBpthread_cond_wait()\fR and \fBpthread_cond_timedwait()\fR, threads waiting
-for the termination of another thread in \fBpthread_join()\fR, and threads
-blocked on \fBsigwait()\fR.
-.sp
-.LP
-A mutex is explicitly not a cancellation point and should be held for only the
-minimal essential time.
-.sp
-.LP
-Most of the dangers in performing cancellations deal with properly restoring
-invariants and freeing shared resources. For example, a carelessly canceled
-thread might leave a mutex in a locked state, leading to a deadlock. Or it
-might leave a region of memory allocated with no way to identify it and
-therefore no way to free it.
-.SS "Cleanup Handlers"
-.LP
-When a thread is canceled, it should release resources and clean up the state
-that is shared with other threads. So, whenever a thread that might be canceled
-changes the state of the system or of the program, be sure to push a cleanup
-handler with \fBpthread_cleanup_push\fR(3C) before the cancellation point.
-.sp
-.LP
-When a thread is canceled, all the currently-stacked cleanup handlers are
-executed in last-in-first-out (LIFO) order. Each handler is run in the scope in
-which it was pushed. When the last cleanup handler returns, the thread-specific
-data destructor functions are called. Thread execution terminates when the last
-destructor function returns.
-.sp
-.LP
-When, in the normal course of the program, an uncanceled thread restores state
-that it had previously changed, be sure to pop the cleanup handler (that you
-had set up where the change took place) using \fBpthread_cleanup_pop\fR(3C).
-That way, if the thread is canceled later, only currently-changed state will be
-restored by the handlers that are left in the stack.
-.sp
-.LP
-The \fBpthread_cleanup_push()\fR and \fBpthread_cleanup_pop()\fR functions can
-be implemented as macros. The application must ensure that they appear as
-statements, and in pairs within the same lexical scope (that is, the
-\fBpthread_cleanup_push()\fR macro can be thought to expand to a token list
-whose first token is '{' with \fBpthread_cleanup_pop()\fR expanding to a token
-list whose last token is the corresponding '}').
-.sp
-.LP
-The effect of the use of \fBreturn\fR, \fBbreak\fR, \fBcontinue\fR, and
-\fBgoto\fR to prematurely leave a code block described by a pair of
-\fBpthread_cleanup_push()\fR and \fBpthread_cleanup_pop()\fR function calls is
-undefined.
-.SS "Cancellation State"
-.LP
-Most programmers will use only the default cancellation state of
-\fBPTHREAD_CANCEL_ENABLE\fR, but can choose to change the state by using
-\fBpthread_setcancelstate\fR(3C), which determines whether a thread is
-cancelable at all. With the default \fIstate\fR of
-\fBPTHREAD_CANCEL_ENABLE\fR, cancellation is enabled and the thread is
-cancelable at points determined by its cancellation \fItype\fR. See
-\fBCancellation Type\fR.
-.sp
-.LP
-If the \fIstate\fR is \fBPTHREAD_CANCEL_DISABLE\fR, cancellation is disabled,
-the thread is not cancelable at any point, and all cancellation requests to it
-are held pending.
-.sp
-.LP
-You might want to disable cancellation before a call to a cancel-unsafe
-library, restoring the old cancel state when the call returns from the library.
-See \fBCancel-Safe\fR for explanations of cancel safety.
-.SS "Cancellation Type"
-.LP
-A thread's cancellation \fBtype\fR is set with \fBpthread_setcanceltype\fR(3C),
-and determines whether the thread can be canceled anywhere in its execution or
-only at cancellation points.
-.sp
-.LP
-With the default \fItype\fR of \fBPTHREAD_CANCEL_DEFERRED\fR, the thread is
-cancelable only at cancellation points, and then only when cancellation is
-enabled.
-.sp
-.LP
-If the \fItype\fR is \fBPTHREAD_CANCEL_ASYNCHRONOUS\fR, the thread is
-cancelable at any point in its execution (assuming, of course, that
-cancellation is enabled). Try to limit regions of asynchronous cancellation to
-sequences with no external dependencies that could result in dangling resources
-or unresolved state conditions. Using asynchronous cancellation is discouraged
-because of the danger involved in trying to guarantee correct cleanup handling
-at absolutely every point in the program.
-.sp
-
-.sp
-.TS
-box;
-c | c | c
-l | l | l .
-Cancellation Type/State Table
-Type State
- Enabled (Default) Disabled
-_
-Deferred (Default) T{
-Cancellation occurs when the target thread reaches a cancellation point and a cancel is pending. (Default)
-T} T{
-All cancellation requests to the target thread are held pending.
-T}
-Asynchronous T{
-Receipt of a \fBpthread_cancel()\fR call causes immediate cancellation.
-T} T{
-All cancellation requests to the target thread are held pending; as
-soon as cancellation is re-enabled, pending cancellations are executed
-immediately.
-T}
-.TE
-
-.SS "Cancel-Safe"
-.LP
-With the arrival of POSIX cancellation, the Cancel-Safe level has been added to
-the list of MT-Safety levels. See \fBattributes\fR(5). An application or
-library is Cancel-Safe whenever it has arranged for cleanup handlers to restore
-system or program state wherever cancellation can occur. The application or
-library is specifically Deferred-Cancel-Safe when it is Cancel-Safe for threads
-whose cancellation type is \fBPTHREAD_CANCEL_DEFERRED\fR. See \fBCancellation
-State\fR. It is specifically Asynchronous-Cancel-Safe when it is Cancel-Safe
-for threads whose cancellation type is \fBPTHREAD_CANCEL_ASYNCHRONOUS\fR.
-.sp
-.LP
-It is easier to arrange for deferred cancel safety, as this requires system and
-program state protection only around cancellation points. In general, expect
-that most applications and libraries are not Asynchronous-Cancel-Safe.
-.SS "POSIX Threads Only"
-.LP
-The cancellation functions described in this manual page are available for
-POSIX threads, only (the Solaris threads interfaces do not provide cancellation
-functions).
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRCancellation example
-.sp
-.LP
-The following short C++ example shows the pushing/popping of cancellation
-handlers, the disabling/enabling of cancellation, the use of
-\fBpthread_testcancel()\fR, and so on. The \fBfree_res()\fR cancellation
-handler in this example is a dummy function that simply prints a message, but
-that would free resources in a real application. The function \fBf2()\fR is
-called from the main thread, and goes deep into its call stack by calling
-itself recursively.
-
-.sp
-.LP
-Before \fBf2()\fR starts running, the newly created thread has probably posted
-a cancellation on the main thread since the main thread calls \fBthr_yield()\fR
-right after creating thread2. Because cancellation was initially disabled in
-the main thread, through a call to \fBpthread_setcancelstate()\fR, the call to
-\fBf2()\fR from \fBmain()\fR continues and constructs X at each recursive
-call, even though the main thread has a pending cancellation.
-
-.sp
-.LP
-When \fBf2()\fR is called for the fifty-first time (when \fB"i == 50"\fR),
-\fBf2()\fR enables cancellation by calling \fBpthread_setcancelstate()\fR. It
-then establishes a cancellation point for itself by calling
-\fBpthread_testcancel()\fR. (Because a cancellation is pending, a call to a
-cancellation point such as \fBread\fR(2) or \fBwrite\fR(2) would also cancel
-the caller here.)
-
-.sp
-.LP
-After the \fBmain()\fR thread is canceled at the fifty-first iteration, all the
-cleanup handlers that were pushed are called in sequence; this is indicated by
-the calls to \fBfree_res()\fR and the calls to the destructor for \fIX\fR. At
-each level, the C++ runtime calls the destructor for \fIX\fR and then the
-cancellation handler, \fBfree_res()\fR. The print messages from
-\fBfree_res()\fR and \fIX\fR's destructor show the sequence of calls.
-
-.sp
-.LP
-At the end, the main thread is joined by thread2. Because the main thread was
-canceled, its return status from \fBpthread_join()\fR is
-\fBPTHREAD_CANCELED\fR. After the status is printed, thread2 returns, killing
-the process (since it is the last thread in the process).
-
-.sp
-.in +2
-.nf
-#include <pthread.h>
-#include <sched.h>
-extern "C" void thr_yield(void);
-
-extern "C" void printf(...);
-
-struct X {
- int x;
- X(int i){x = i; printf("X(%d) constructed.\en", i);}
- ~X(){ printf("X(%d) destroyed.\en", x);}
-};
-
-void
-free_res(void *i)
-{
- printf("Freeing `%d`\en",i);
-}
-
-char* f2(int i)
-{
- try {
- X dummy(i);
- pthread_cleanup_push(free_res, (void *)i);
- if (i == 50) {
- pthread_setcancelstate(PTHREAD_CANCEL_ENABLE, NULL);
- pthread_testcancel();
- }
- f2(i+1);
- pthread_cleanup_pop(0);
- }
- catch (int) {
- printf("Error: In handler.\en");
- }
- return "f2";
-}
-
-void *
-thread2(void *tid)
-{
- void *sts;
-
- printf("I am new thread :%d\en", pthread_self());
-
- pthread_cancel((pthread_t)tid);
-
- pthread_join((pthread_t)tid, &sts);
-
- printf("main thread cancelled due to %d\en", sts);
-
- return (sts);
-}
-
-main()
-{
- pthread_setcancelstate(PTHREAD_CANCEL_DISABLE, NULL);
- pthread_create(NULL, NULL, thread2, (void *)pthread_self());
- thr_yield();
- printf("Returned from %s\en",f2(0));
-}
-.fi
-.in -2
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-MT-Level MT-Safe
-.TE
-
-.SH SEE ALSO
-.LP
-\fBread\fR(2), \fBsigwait\fR(2), \fBwrite\fR(2), \fBIntro\fR(3),
-\fBcondition\fR(5), \fBpthread_cleanup_pop\fR(3C),
-\fBpthread_cleanup_push\fR(3C), \fBpthread_exit\fR(3C), \fBpthread_join\fR(3C),
-\fBpthread_setcancelstate\fR(3C), \fBpthread_setcanceltype\fR(3C),
-\fBpthread_testcancel\fR(3C), \fBsetjmp\fR(3C), \fBattributes\fR(5),
-\fBstandards\fR(5)
diff --git a/usr/src/man/man5/cardbus.5 b/usr/src/man/man5/cardbus.5
new file mode 100644
index 0000000000..ec76f9838b
--- /dev/null
+++ b/usr/src/man/man5/cardbus.5
@@ -0,0 +1,240 @@
+'\" te
+.\" Copyright (c) 2005 Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH CARDBUS 5 "Jul 11, 2006"
+.SH NAME
+cardbus \- configuration files for cardbus device drivers
+.SH DESCRIPTION
+.sp
+.LP
+The CardBus bus share the same configuration parameters with the PCI bus.
+CardBus devices are self-identifying, which means that these devices provide
+configuration parameters to the system that allow the system to identify the
+device and its driver. The configuration parameters are represented in the form
+of name-value pairs that can be retrieved using the \fBDDI\fR property
+interfaces. See \fBddi_prop_lookup\fR(9F) for details.
+.sp
+.LP
+The CardBus bus properties of CardBus devices are derived from PCI
+configuration space. Therefore, driver configuration files are not necessary
+for these devices.
+.sp
+.LP
+On some occasions, drivers for CardBus devices can use driver configuration
+files to provide driver private properties through the global property
+mechanism. See \fBdriver.conf\fR(5) for further details. Driver configuration
+files can also be used to augment or override properties for a specific
+instance of a driver.
+.sp
+.LP
+The CardBus nexus driver recognizes the following properties:
+.sp
+.ne 2
+.na
+\fB\fBreg\fR\fR
+.ad
+.RS 14n
+An arbitrary length array where each element of the array consists of a 5-tuple
+of 32-bit values. Each array element describes a logically contiguous mappable
+resource on the \fBPCI\fR bus.
+.sp
+The first three values in the 5-tuple describe the \fBPCI\fR address of the
+mappable resource. The first tuple contains the following information:
+.sp
+
+.sp
+.TS
+l l l
+l l l .
+Bits 0 - 7 8-bit register number
+Bits 8 - 10 3-bit function number
+Bits 11 - 15 5-bit device number
+Bits 16 - 23 8-bit bus number
+Bits 24 - 25 2-bit address space type identifier
+Bits 31 - 28 T{
+Register number extended bits 8:11 for extended config space. Zero for conventional configuration space.
+T}
+.TE
+
+The address space type identifier can be interpreted as follows:
+.sp
+
+.sp
+.TS
+l l l
+l l l .
+0x0 configuration space
+0x1 I/O space
+0x2 32-bit memory space address
+.TE
+
+The bus number is a unique identifying number assigned to each bus within the
+\fBPCI\fR or PCIe domain.
+.sp
+The device number is a unique identifying number assigned to each device on a
+\fBPCI\fR bus, PCIe logical bus, or CardBus bus. A device number is unique only
+within the set of device numbers for a particular bus or logical bus.
+.sp
+Each CardBus device can have one to eight logically independent functions, each
+with its own independent set of configuration registers. Each function on a
+device is assigned a function number. For a device with only one function, the
+function number must be \fB0\fR.
+.sp
+The register number fields select a particular register within the set of
+configuration registers corresponding to the selected function. When the
+address space type identifier indicates configuration space, non-zero register
+number extended bits select registers in extended configuration space.
+.sp
+The second and third values in the \fBreg\fR property 5-tuple specify the
+64-bit address of the mappable resource within the \fBPCI\fR or PCIe address
+domain. Since the CardBus is a 32-bit bus, the second 32-bit tuple is not used.
+The third 32-bit tuple corresponds to the 32-bit address.
+.sp
+The fourth and fifth 32-bit values in the 5-tuple \fBreg\fR property specify
+the size of the mappable resource. The size is a 64-bit value. Since it's a
+32-bit bus, only the fifth tuple is used.
+.sp
+The driver can refer to the elements of this array by index, and construct
+kernel mappings to these addresses using \fBddi_regs_map_setup\fR(9F). The
+index into the array is passed as the \fIrnumber\fR argument of
+\fBddi_regs_map_setup\fR(9F).
+.sp
+At a high-level interrupt context, you can use the \fBddi_get*\fR and
+\fBddi_put*\fR family of functions to access I/O and memory space. However,
+access to configuration space is not allowed when running at a high-interrupt
+level.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBinterrupts\fR\fR
+.ad
+.RS 14n
+This property consists of a single-integer element array. Valid interrupt
+property values are \fB1\fR, \fB2\fR, \fB3\fR, and \fB4\fR. This value is
+derived directly from the contents of the device's configuration-interrupt-pin
+register.
+.sp
+A driver should use an index value of \fB0\fR when registering its interrupt
+handler with the DDI interrupt interfaces.
+.RE
+
+.sp
+.LP
+All CardBus devices support the \fBreg\fR property. The device number and
+function number as derived from the \fBreg\fR property are used to construct
+the address part of the device name under \fB/devices\fR.
+.sp
+.LP
+Only devices that generate interrupts support an \fBinterrupts\fR property.
+.sp
+.LP
+Occasionally it might be necessary to override or augment the configuration
+information supplied by a CardBus device. This change can be achieved by
+writing a driver configuration file that describes a prototype device node
+specification containing the additional properties required.
+.sp
+.LP
+For the system to merge the prototype node specification into an actual device
+node, certain conditions must be met.
+.RS +4
+.TP
+.ie t \(bu
+.el o
+First, the \fBname\fR property must be identical. The value of the \fBname\fR
+property needs to match the binding name of the device. The binding name is the
+name chosen by the system to bind a driver to a device and is either an alias
+associated with the driver or the hardware node name of the device.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Second, the parent property must identify the PCI bus or PCIe logical bus.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Third, the unit-address property must identify the card. The format of the
+unit-address property is:
+.RE
+.sp
+.LP
+\fBDD[,F]\fR
+.sp
+.LP
+where \fBDD\fR is the device number and \fBF\fR is the function number. If the
+function number is 0, only \fBDD\fR is specified.
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRSample Configuration File
+.sp
+.LP
+An example configuration file called \fBACME,scsi-hba.conf\fR for a CardBus
+device driver called \fBACME,scsi-hba\fR follows:
+
+.sp
+.in +2
+.nf
+#
+# Copyright (c) 1995, ACME SCSI Host Bus Adaptor
+# ident "@(#)ACME,scsi-hba.conf 1.1 96/02/04"
+name="ACME,scsi-hba" parent="/pci@1,0/pci@1f,4000"
+ unit-address="3" scsi-initiator-id=6;
+hba-advanced-mode="on";
+hba-dma-speed=10;
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+In this example, a property \fBscsi-initiator-id\fR specifies the \fBSCSI\fR
+bus initiator id that the adapter should use, for just one particular instance
+of adapter installed in the machine. The \fBname\fR property identifies the
+driver and the parent property to identify the particular bus the card is
+plugged into. This example uses the parent's full path name to identify the
+bus. The unit-address property identifies the card itself, with device number
+of 3 and function number of 0.
+
+.sp
+.LP
+Two global driver properties are also created: \fBhba-advanced-mode\fR (which
+has the string value \fBon\fR) and \fBhba-dma-speed\fR (which has the value
+\fB10\fR M bit/s). These properties apply to all device nodes of the
+\fBACME,scsi-hba\fR.
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture SPARC, x86
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR driver.conf (5),
+.BR attributes (7),
+.BR ddi_intr_add_handler (9F),
+.BR ddi_prop_lookup (9F),
+.BR ddi_regs_map_setup (9F)
+.sp
+.LP
+\fIWriting Device Drivers\fR
+.sp
+.LP
+\fIIEEE 1275 PCI Bus Binding\fR
diff --git a/usr/src/man/man5/charmap.5 b/usr/src/man/man5/charmap.5
deleted file mode 100644
index a9c90abb97..0000000000
--- a/usr/src/man/man5/charmap.5
+++ /dev/null
@@ -1,359 +0,0 @@
-.\"
-.\" Sun Microsystems, Inc. gratefully acknowledges The Open Group for
-.\" permission to reproduce portions of its copyrighted documentation.
-.\" Original documentation from The Open Group can be obtained online at
-.\" http://www.opengroup.org/bookstore/.
-.\"
-.\" The Institute of Electrical and Electronics Engineers and The Open
-.\" Group, have given us permission to reprint portions of their
-.\" documentation.
-.\"
-.\" In the following statement, the phrase ``this text'' refers to portions
-.\" of the system documentation.
-.\"
-.\" Portions of this text are reprinted and reproduced in electronic form
-.\" in the SunOS Reference Manual, from IEEE Std 1003.1, 2004 Edition,
-.\" Standard for Information Technology -- Portable Operating System
-.\" Interface (POSIX), The Open Group Base Specifications Issue 6,
-.\" Copyright (C) 2001-2004 by the Institute of Electrical and Electronics
-.\" Engineers, Inc and The Open Group. In the event of any discrepancy
-.\" between these versions and the original IEEE and The Open Group
-.\" Standard, the original IEEE and The Open Group Standard is the referee
-.\" document. The original Standard can be obtained online at
-.\" http://www.opengroup.org/unix/online.html.
-.\"
-.\" This notice shall appear on any product containing this material.
-.\"
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.\"
-.\"
-.\" Copyright (c) 1992, X/Open Company Limited. All Rights Reserved.
-.\" Portions Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved
-.\"
-.TH CHARMAP 5 "Dec 1, 2003"
-.SH NAME
-charmap \- character set description file
-.SH DESCRIPTION
-.sp
-.LP
-A character set description file or \fIcharmap\fR defines characteristics for a
-coded character set. Other information about the coded character set may also
-be in the file. Coded character set character values are defined using symbolic
-character names followed by character encoding values.
-.sp
-.LP
-The character set description file provides:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The capability to describe character set attributes (such as collation order or
-character classes) independent of character set encoding, and using only the
-characters in the portable character set. This makes it possible to create
-generic \fBlocaledef\fR(1) source files for all codesets that share the
-portable character set.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Standardized symbolic names for all characters in the portable character set,
-making it possible to refer to any such character regardless of encoding.
-.RE
-.SS "Symbolic Names"
-.sp
-.LP
-Each symbolic name is included in the file and is mapped to a unique encoding
-value (except for those symbolic names that are shown with identical glyphs).
-If the control characters commonly associated with the symbolic names in the
-following table are supported by the implementation, the symbolic names and
-their corresponding encoding values are included in the file. Some of the
-encodings associated with the symbolic names in this table may be the same as
-characters in the portable character set table.
-.sp
-
-.sp
-.TS
-box;
-l l l l l l
-l l l l l l .
-<ACK> <DC2> <ENQ> <FS> <IS4> <SOH>
-<BEL> <DC3> <EOT> <GS> <LF> <STX>
-<BS> <DC4> <ESC> <HT> <NAK> <SUB>
-<CAN> <DEL> <ETB> <IS1> <RS> <SYN>
-<CR> <DLE> <ETX> <IS2> <SI> <US>
-<DC1> <EM> <FF> <IS3> <SO> <VT>
-.TE
-
-.SS "Declarations"
-.sp
-.LP
-The following declarations can precede the character definitions. Each must
-consist of the symbol shown in the following list, starting in column 1,
-including the surrounding brackets, followed by one or more blank characters,
-followed by the value to be assigned to the symbol.
-.sp
-.ne 2
-.na
-\fB<\fIcode_set_name\fR>\fR
-.ad
-.RS 19n
-The name of the coded character set for which the character set description
-file is defined.
-.RE
-
-.sp
-.ne 2
-.na
-\fB<\fImb_cur_max\fR>\fR
-.ad
-.RS 19n
-The maximum number of bytes in a multi-byte character. This defaults to
-\fB1\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB<\fImb_cur_min\fR>\fR
-.ad
-.RS 19n
-An unsigned positive integer value that defines the minimum number of bytes in
-a character for the encoded character set.
-.RE
-
-.sp
-.ne 2
-.na
-\fB<\fIescape_char\fR>\fR
-.ad
-.RS 19n
-The escape character used to indicate that the characters following will be
-interpreted in a special way, as defined later in this section. This defaults
-to backslash ('\fB\e\fR\&'), which is the character glyph used in all the
-following text and examples, unless otherwise noted.
-.RE
-
-.sp
-.ne 2
-.na
-\fB<\fIcomment_char\fR>\fR
-.ad
-.RS 19n
-The character that when placed in column 1 of a charmap line, is used to
-indicate that the line is to be ignored. The default character is the number
-sign (#).
-.RE
-
-.SS "Format"
-.sp
-.LP
-The character set mapping definitions will be all the lines immediately
-following an identifier line containing the string \fBCHARMAP\fR starting in
-column 1, and preceding a trailer line containing the string \fBEND\fR
-\fBCHARMAP\fR starting in column 1. Empty lines and lines containing a
-\fI<comment_char>\fR in the first column will be ignored. Each non-comment line
-of the character set mapping definition, that is, between the \fBCHARMAP\fR and
-\fBEND CHARMAP\fR lines of the file), must be in either of two forms:
-.sp
-.in +2
-.nf
-\fB"%s %s %s\en",\fR<\fIsymbolic-name\fR>,<\fIencoding\fR>,<\fIcomments\fR>
-.fi
-.in -2
-
-.sp
-.LP
-or
-.sp
-.in +2
-.nf
-\fB"%s...%s %s %s\en",\fR<\fIsymbolic-name\fR>,<\fIsymbolic-name\fR>, <\fIencoding\fR>,\e
- <\fIcomments\fR>
-.fi
-.in -2
-
-.sp
-.LP
-In the first format, the line in the character set mapping definition defines a
-single symbolic name and a corresponding encoding. A character following an
-escape character is interpreted as itself; for example, the sequence
-"<\fB\e\e\e\fR>>" represents the symbolic name "\fI\e>\fR" enclosed between
-angle brackets.
-.sp
-.LP
-In the second format, the line in the character set mapping definition defines
-a range of one or more symbolic names. In this form, the symbolic names must
-consist of zero or more non-numeric characters, followed by an integer formed
-by one or more decimal digits. The characters preceding the integer must be
-identical in the two symbolic names, and the integer formed by the digits in
-the second symbolic name must be equal to or greater than the integer formed by
-the digits in the first name. This is interpreted as a series of symbolic names
-formed from the common part and each of the integers between the first and the
-second integer, inclusive. As an example, \fB<j0101>...<j0104>\fR is
-interpreted as the symbolic names \fB<j0101>\fR, \fB<j0102>\fR, \fB<j0103>\fR,
-and \fB<j0104>\fR, in that order.
-.sp
-.LP
-A character set mapping definition line must exist for all symbolic names and
-must define the coded character value that corresponds to the character glyph
-indicated in the table, or the coded character value that corresponds with the
-control character symbolic name. If the control characters commonly associated
-with the symbolic names are supported by the implementation, the symbolic name
-and the corresponding encoding value must be included in the file. Additional
-unique symbolic names may be included. A coded character value can be
-represented by more than one symbolic name.
-.sp
-.LP
-The encoding part is expressed as one (for single-byte character values) or
-more concatenated decimal, octal or hexadecimal constants in the following
-formats:
-.sp
-.in +2
-.nf
-\fB"%cd%d",\fR<\fIescape_char\fR>,<\fIdecimal byte value\fR>
-
-\fB"%cx%x",\fR<\fIescape_char\fR>,<\fIhexadecimal byte value\fR>
-
-\fB"%c%o",\fR<\fIescape_char\fR>,<\fIoctal byte value\fR>
-.fi
-.in -2
-
-.SS "Decimal Constants"
-.sp
-.LP
-Decimal constants must be represented by two or three decimal digits, preceded
-by the escape character and the lower-case letter \fBd\fR; for example,
-\fB\ed05\fR, \fB\ed97\fR, or \fB\ed143\fR\&. Hexadecimal constants must be
-represented by two hexadecimal digits, preceded by the escape character and the
-lower-case letter \fBx\fR; for example, \fB\ex05\fR, \fB\ex61\fR, or
-\fB\ex8f\fR\&. Octal constants must be represented by two or three octal
-digits, preceded by the escape character; for example, \fB\e05\fR, \fB\e141\fR,
-or \fB\e217\fR\&. In a portable charmap file, each constant must represent an
-8-bit byte. Implementations supporting other byte sizes may allow constants to
-represent values larger than those that can be represented in 8-bit bytes, and
-to allow additional digits in constants. When constants are concatenated for
-multi-byte character values, they must be of the same type, and interpreted in
-byte order from first to last with the least significant byte of the multi-byte
-character specified by the last constant.
-.SS "Ranges of Symbolic Names"
-.sp
-.LP
-In lines defining ranges of symbolic names, the encoded value is the value for
-the first symbolic name in the range (the symbolic name preceding the
-ellipsis). Subsequent symbolic names defined by the range will have encoding
-values in increasing order. Bytes are treated as unsigned octets and carry is
-propagated between the bytes as necessary to represent the range. However,
-because this causes a null byte in the second or subsequent bytes of a
-character, such a declaration should not be specified. For example, the line
-.sp
-.in +2
-.nf
-<j0101>...<j0104> \ed129\ed254
-.fi
-.in -2
-
-.sp
-.LP
-is interpreted as:
-.sp
-.in +2
-.nf
-<j0101> \ed129\ed254
-<j0102> \ed129\ed255
-<j0103> \ed130\ed00
-<j0104> \ed130\ed01
-.fi
-.in -2
-
-.sp
-.LP
-The expanded declaration of the symbol \fB<j0103>\fR in the above example is an
-invalid specification, because it contains a null byte in the second byte of a
-character.
-.sp
-.LP
-The comment is optional.
-.SS "Width Specification"
-.sp
-.LP
-The following declarations can follow the character set mapping definitions
-(after the "\fBEND CHARMAP\fR" statement). Each consists of the keyword shown
-in the following list, starting in column 1, followed by the value(s) to be
-associated to the keyword, as defined below.
-.sp
-.ne 2
-.na
-\fB\fBWIDTH\fR\fR
-.ad
-.RS 17n
-A non-negative integer value defining the column width for the printable
-character in the coded character set mapping definitions. Coded character set
-character values are defined using symbolic character names followed by column
-width values. Defining a character with more than one \fBWIDTH\fR produces
-undefined results. The \fBEND WIDTH\fR keyword is used to terminate the
-\fBWIDTH\fR definitions. Specifying the width of a non-printable character in a
-\fBWIDTH\fR declaration produces undefined results.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBWIDTH_DEFAULT\fR\fR
-.ad
-.RS 17n
-A non-negative integer value defining the default column width for any
-printable character not listed by one of the \fBWIDTH\fR keywords. If no
-\fBWIDTH_DEFAULT\fR keyword is included in the charmap, the default character
-width is \fB1\fR.
-.RE
-
-.sp
-.LP
-Example:
-.sp
-.LP
-After the "\fBEND CHARMAP\fR" statement, a syntax for a width definition would
-be:
-.sp
-.in +2
-.nf
-WIDTH
-<A> 1
-<B> 1
-<C>...<Z> 1
-\&...
-<fool>...<foon> 2
-\&...
-END WIDTH
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-In this example, the numerical code point values represented by the symbols
-\fB<A>\fR and \fB<B>\fR are assigned a width of \fB1\fR. The code point values
-\fB< C>\fR to \fB<Z>\fR inclusive, that is, \fB<C>\fR, \fB<D>\fR, \fB<E>\fR,
-and so on, are also assigned a width of \fB1\fR. Using \fB<A>...<Z>\fR would
-have required fewer lines, but the alternative was shown to demonstrate
-flexibility. The keyword \fBWIDTH_DEFAULT\fR could have been added as
-appropriate.
-.SH SEE ALSO
-.sp
-.LP
-\fBlocale\fR(1), \fBlocaledef\fR(1), \fBnl_langinfo\fR(3C),
-\fBextensions\fR(5), \fBlocale\fR(5)
diff --git a/usr/src/man/man5/check-password.4th.5 b/usr/src/man/man5/check-password.4th.5
deleted file mode 100644
index 56e995c3be..0000000000
--- a/usr/src/man/man5/check-password.4th.5
+++ /dev/null
@@ -1,130 +0,0 @@
-.\" Copyright (c) 2011-2015 Devin Teske
-.\" All rights reserved.
-.\"
-.\" Redistribution and use in source and binary forms, with or without
-.\" modification, are permitted provided that the following conditions
-.\" are met:
-.\" 1. Redistributions of source code must retain the above copyright
-.\" notice, this list of conditions and the following disclaimer.
-.\" 2. Redistributions in binary form must reproduce the above copyright
-.\" notice, this list of conditions and the following disclaimer in the
-.\" documentation and/or other materials provided with the distribution.
-.\"
-.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
-.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
-.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
-.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
-.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-.\" SUCH DAMAGE.
-.\"
-.Dd July 20, 2018
-.Dt CHECK-PASSWORD.4TH 5
-.Os
-.Sh NAME
-.Nm check-password.4th
-.Nd loader password-checking boot module
-.Sh DESCRIPTION
-The file that goes by the name of
-.Nm
-is a set of commands designed to do one or more of the following:
-.Pp
-.Dl o Prevent booting without password
-.Dl o Prevent modification of boot options without password
-.Pp
-The commands of
-.Nm
-by themselves are not enough for most uses.
-Please refer to the
-examples below for the most common situations, and to
-.Xr loader 5
-for additional commands.
-.Pp
-Before using any of the commands provided in
-.Nm ,
-it must be included
-through the command:
-.Pp
-.Dl include check-password.4th
-.Pp
-This line is present in
-.Pa /boot/forth/loader.4th
-file, so it is not needed (and should not be re-issued) in a normal setup.
-.Pp
-The commands provided by it are:
-.Pp
-.Bl -tag -width disable-module_module -compact -offset indent
-.It Ic check-password
-Multi-purpose function that can protect the interactive boot menu,
-prevent boot without password
-.Pq depending on Xr loader.conf 4 settings .
-.Pp
-First checks
-.Va bootlock_password
-and if-set, the user cannot continue until the correct password is entered.
-.Pp
-Last, checks
-.Va password
-and if-set, tries to
-.Ic autoboot
-and only prompts for password on failure or user-interrupt.
-See
-.Xr loader.conf 4
-for additional information.
-.El
-.Pp
-The environment variables that effect its behavior are:
-.Bl -tag -width bootlock_password -offset indent
-.It Va bootlock_password
-Sets the bootlock password (up to 16 characters long) that is required by
-.Ic check-password
-to be entered before the system is allowed to boot.
-.It Va password
-Sets the password (up to 16 characters long) that is required by
-.Ic check-password
-before the user is allowed to visit the boot menu.
-.El
-.Sh FILES
-.Bl -tag -width /boot/forth/check-password.4th -compact
-.It Pa /boot/loader
-The
-.Xr loader 5 .
-.It Pa /boot/forth/check-password.4th
-.Nm
-itself.
-.It Pa /boot/loader.rc
-.Xr loader 5
-bootstrapping script.
-.El
-.Sh EXAMPLES
-Standard i386
-.Pa /boot/loader.rc :
-.Pp
-.Bd -literal -offset indent -compact
-include /boot/forth/loader.4th
-check-password
-.Ed
-.Pp
-Set a password in
-.Xr loader.conf 4
-to prevent modification of boot options:
-.Pp
-.Bd -literal -offset indent -compact
-password="abc123"
-.Ed
-.Pp
-Set a password in
-.Xr loader.conf 4
-to prevent booting without password:
-.Pp
-.Bd -literal -offset indent -compact
-bootlock_password="boot"
-.Ed
-.Sh SEE ALSO
-.Xr loader.conf 4 ,
-.Xr loader 5 ,
-.Xr loader.4th 5
diff --git a/usr/src/man/man5/color.4th.5 b/usr/src/man/man5/color.4th.5
deleted file mode 100644
index c156fedd23..0000000000
--- a/usr/src/man/man5/color.4th.5
+++ /dev/null
@@ -1,103 +0,0 @@
-.\" Copyright (c) 2011-2013 Devin Teske
-.\" All rights reserved.
-.\"
-.\" Redistribution and use in source and binary forms, with or without
-.\" modification, are permitted provided that the following conditions
-.\" are met:
-.\" 1. Redistributions of source code must retain the above copyright
-.\" notice, this list of conditions and the following disclaimer.
-.\" 2. Redistributions in binary form must reproduce the above copyright
-.\" notice, this list of conditions and the following disclaimer in the
-.\" documentation and/or other materials provided with the distribution.
-.\"
-.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
-.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
-.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
-.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
-.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-.\" SUCH DAMAGE.
-.\"
-.Dd July 20, 2018
-.Dt COLOR.4TH 5
-.Os
-.Sh NAME
-.Nm color.4th
-.Nd loader color-detection boot module
-.Sh DESCRIPTION
-The file that goes by the name of
-.Nm
-is a set of commands designed to simplify color logic.
-The commands of
-.Nm
-by themselves are not enough for most uses.
-Please refer to the
-examples below for the most common situations, and to
-.Xr loader 5
-for additional commands.
-.Pp
-Before using any of the commands provided in
-.Nm ,
-it must be included
-through the command:
-.Pp
-.Dl include color.4th
-.Pp
-This line is present in
-.Pa /boot/forth/loader.4th
-file, so it is not needed (and should not be re-issued) in a normal setup.
-.Pp
-The commands provided by it are:
-.Pp
-.Bl -tag -width disable-module_module -compact -offset indent
-.It Ic loader_color?
-Returns FALSE if the
-.Ic loader_color
-environment variable is set to
-.Dq NO
-(case-insensitive) or
-.Dq 0 .
-Otherwise returns TRUE
-.Pq unless booting serial .
-.El
-.Pp
-The environment variables that effect its behavior are:
-.Bl -tag -width bootfile -offset indent
-.It Va loader_color
-If set to
-.Dq NO
-(case-insensitive) or
-.Dq 0 ,
-causes
-.Ic loader_color?
-to return FALSE, indicating to many modules that color should not be used.
-.El
-.Sh FILES
-.Bl -tag -width /boot/forth/loader.4th -compact
-.It Pa /boot/loader
-The
-.Xr loader 5 .
-.It Pa /boot/forth/color.4th
-.Nm
-itself.
-.It Pa /boot/loader.rc
-.Xr loader 5
-bootstrapping script.
-.El
-.Sh EXAMPLES
-Standard i386
-.Pa /boot/loader.conf :
-.Pp
-Use color where applicable:
-.Pp
-.Bd -literal -offset indent -compact
-loader_color="YES"
-.Ed
-.Sh SEE ALSO
-.Xr loader.conf 4 ,
-.Xr loader 5 ,
-.Xr loader.4th 5
diff --git a/usr/src/man/man5/compver.5 b/usr/src/man/man5/compver.5
new file mode 100644
index 0000000000..2c8b9cf39b
--- /dev/null
+++ b/usr/src/man/man5/compver.5
@@ -0,0 +1,60 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 1996, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH COMPVER 5 "Oct 4, 1996"
+.SH NAME
+compver \- compatible versions file
+.SH DESCRIPTION
+.sp
+.LP
+\fBcompver\fR is an \fBASCII\fR file used to specify previous versions of the
+associated package which are upward compatible. It is created by a package
+developer.
+.sp
+.LP
+Each line of the file specifies a previous version of the associated package
+with which the current version is backward compatible.
+.sp
+.LP
+Since some packages may require installation of a specific version of another
+software package, compatibility information is extremely crucial. Consider, for
+example, a package called "A" which requires version "1.0" of application "B"
+as a prerequisite for installation. If the customer installing "A" has a newer
+version of "B" (version 1.3), the \fBcompver\fR file for "B" must indicate that
+"1.3" is compatible with version "1.0" in order for the customer to install
+package "A".
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRSample \fBcompver\fR file.
+.sp
+.LP
+A sample \fBcompver\fR file is shown below:
+
+.sp
+.in +2
+.nf
+\fBVersion 1.3
+Version 1.0\fR
+.fi
+.in -2
+.sp
+
+.SH SEE ALSO
+.sp
+.LP
+.BR pkginfo (5)
+.sp
+.LP
+\fIApplication Packaging Developer\&'s Guide\fR
+.SH NOTES
+.sp
+.LP
+The comparison of the version string disregards white space and tabs. It is
+performed on a word-by-word basis. Thus, "Version 1.3" and "Version 1.3" would
+be considered the same.
+.sp
+.LP
+The entries in the \fBcompver\fR file must match the values assigned to the
+\fBVERSION\fR parameter in the \fBpkginfo\fR(5) files.
diff --git a/usr/src/man/man5/condition.5 b/usr/src/man/man5/condition.5
deleted file mode 100644
index 1282ea26e8..0000000000
--- a/usr/src/man/man5/condition.5
+++ /dev/null
@@ -1,141 +0,0 @@
-.\"
-.\" Sun Microsystems, Inc. gratefully acknowledges The Open Group for
-.\" permission to reproduce portions of its copyrighted documentation.
-.\" Original documentation from The Open Group can be obtained online at
-.\" http://www.opengroup.org/bookstore/.
-.\"
-.\" The Institute of Electrical and Electronics Engineers and The Open
-.\" Group, have given us permission to reprint portions of their
-.\" documentation.
-.\"
-.\" In the following statement, the phrase ``this text'' refers to portions
-.\" of the system documentation.
-.\"
-.\" Portions of this text are reprinted and reproduced in electronic form
-.\" in the SunOS Reference Manual, from IEEE Std 1003.1, 2004 Edition,
-.\" Standard for Information Technology -- Portable Operating System
-.\" Interface (POSIX), The Open Group Base Specifications Issue 6,
-.\" Copyright (C) 2001-2004 by the Institute of Electrical and Electronics
-.\" Engineers, Inc and The Open Group. In the event of any discrepancy
-.\" between these versions and the original IEEE and The Open Group
-.\" Standard, the original IEEE and The Open Group Standard is the referee
-.\" document. The original Standard can be obtained online at
-.\" http://www.opengroup.org/unix/online.html.
-.\"
-.\" This notice shall appear on any product containing this material.
-.\"
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.\"
-.\"
-.\" Portions Copyright (c) 1995 IEEE All Rights Reserved
-.\" Copyright (c) 1998 Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright (c) 2001, The IEEE and The Open Group. All Rights Reserved.
-.\"
-.TH CONDITION 5 "May 16, 2020"
-.SH NAME
-condition \- concepts related to condition variables
-.SH DESCRIPTION
-Occasionally, a thread running within a mutex needs to wait for an event, in
-which case it blocks or sleeps. When a thread is waiting for another thread to
-communicate its disposition, it uses a condition variable in conjunction with a
-mutex. Although a mutex is exclusive and the code it protects is sharable (at
-certain moments), condition variables enable the synchronization of differing
-events that share a mutex, but not necessarily data. Several condition
-variables may be used by threads to signal each other when a task is complete,
-which then allows the next waiting thread to take ownership of the mutex.
-.sp
-.LP
-A condition variable enables threads to atomically block and test the condition
-under the protection of a mutual exclusion lock (mutex) until the condition is
-satisfied. If the condition is false, a thread blocks on a condition variable
-and atomically releases the mutex that is waiting for the condition to change.
-If another thread changes the condition, it may wake up waiting threads by
-signaling the associated condition variable. The waiting threads, upon
-awakening, reacquire the mutex and re-evaluate the condition.
-.SS "Initialize"
-Condition variables and mutexes should be global. Condition variables that are
-allocated in writable memory can synchronize threads among processes if they
-are shared by the cooperating processes (see \fBmmap\fR(2)) and are initialized
-for this purpose.
-.sp
-.LP
-The scope of a condition variable is either intra-process or inter-process.
-This is dependent upon whether the argument is passed implicitly or explicitly
-to the initialization of that condition variable. A condition variable does
-not need to be explicitly initialized. A condition variable is initialized with
-all zeros, by default, and its scope is set to within the calling process. For
-inter-process synchronization, a condition variable must be initialized once,
-and only once, before use.
-.sp
-.LP
-A condition variable must not be simultaneously initialized by multiple threads
-or re-initialized while in use by other threads.
-.sp
-.LP
-Condition variables attributes may be set to the default or customized at
-initialization. POSIX threads even allow the default values to be customized.
-Establishing these attributes varies depending upon whether POSIX or Solaris
-threads are used. Similar to the distinctions between POSIX and Solaris thread
-creation, POSIX condition variables implement the default, intra-process,
-unless an attribute object is modified for inter-process prior to the
-initialization of the condition variable. Solaris condition variables also
-implement as the default, intra-process; however, they set this attribute
-according to the argument, \fItype\fR, passed to their initialization function.
-.SS "Condition Wait"
-The condition wait interface allows a thread to wait for a condition and
-atomically release the associated mutex that it needs to hold to check the
-condition. The thread waits for another thread to make the condition true and
-that thread's resulting call to signal and wakeup the waiting thread.
-.SS "Condition Signaling"
-A condition signal allows a thread to unblock the next thread waiting on the
-condition variable, whereas, a condition broadcast allows a thread to unblock
-all threads waiting on the condition variable.
-.SS "Destroy"
-The condition destroy functions destroy any state, but not the space,
-associated with the condition variable.
-.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-MT-Level MT-Safe
-.TE
-
-.SH SEE ALSO
-\fBfork\fR(2), \fBmmap\fR(2), \fBsetitimer\fR(2), \fBshmop\fR(2),
-\fBcond_broadcast\fR(3C), \fBcond_destroy\fR(3C), \fBcond_init\fR(3C),
-\fBcond_signal\fR(3C), \fBcond_timedwait\fR(3C), \fBcond_wait\fR(3C),
-\fBpthread_cond_broadcast\fR(3C), \fBpthread_cond_destroy\fR(3C),
-\fBpthread_cond_init\fR(3C), \fBpthread_cond_signal\fR(3C),
-\fBpthread_cond_timedwait\fR(3C), \fBpthread_cond_wait\fR(3C),
-\fBpthread_condattr_init\fR(3C), \fBsignal\fR(3C), \fBattributes\fR(5),
-\fBmutex\fR(5), \fBstandards\fR(5)
-.SH NOTES
-If more than one thread is blocked on a condition variable, the order in which
-threads are unblocked is determined by the scheduling policy.
-.sp
-.LP
-\fBUSYNC_THREAD\fR does not support multiple mappings to the same logical
-synch object. If you need to \fBmmap()\fR a synch object to different locations
-within the same address space, then the synch object should be initialized as a
-shared object \fBUSYNC_PROCESS\fR for Solaris, and
-\fBPTHREAD_PROCESS_PRIVATE\fR for POSIX.
diff --git a/usr/src/man/man5/contents.5 b/usr/src/man/man5/contents.5
new file mode 100644
index 0000000000..ce3fc1c5b7
--- /dev/null
+++ b/usr/src/man/man5/contents.5
@@ -0,0 +1,248 @@
+'\" te
+.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH CONTENTS 5 "Dec 20, 2007"
+.SH NAME
+contents \- list of files and associated packages
+.SH SYNOPSIS
+.LP
+.nf
+\fB/var/sadm/install/contents\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The file \fB/var/sadm/install/contents\fR is a source of information about the
+packages installed on the system. This file must never be edited directly.
+Always use the package commands (see SEE ALSO) to make changes to the
+\fBcontents\fR file.
+.sp
+.LP
+Each entry in the \fBcontents\fR file is a single line. Fields in each entry
+are separated by a single space character.
+.sp
+.LP
+Two major styles of entries exist, old style and new style. The following is
+the format of an old-style entry:
+.sp
+.in +2
+.nf
+\fIftype\fR \fIclass\fR \fIpath\fR \fIpackage(s)\fR
+.fi
+.in -2
+
+.sp
+.LP
+The following is the general format of a new-style entry:
+.sp
+.in +2
+.nf
+\fIpath\fR[=\fIrpath\fR] \fIftype\fR \fIclass\fR [\fIftype-optional-fields\fR] \fIpackage(s)\fR
+.fi
+.in -2
+
+.sp
+.LP
+New-style entries differ for each \fBftype\fR. The \fBftype\fR designates the
+entry type, as specified in \fBpkgmap\fR(5). The format for new-style entries,
+for each \fBftype\fR, is as follows:
+.sp
+.in +2
+.nf
+ftype s: \fIpath\fR=\fIrpath\fR s \fIclass\fR \fIpackage\fR
+ftype l: \fIpath\fR l \fIclass\fR \fIpackage\fR
+ftype d: \fIpath\fR d \fIclass\fR \fImode\fR \fIowner\fR \fIgroup\fR \fIpackage(s)\fR
+ftype b: \fIpath\fR b \fIclass\fR \fImajor\fR \fIminor\fR \fImode\fR \fIowner\fR \fIgroup\fR \fIpackage\fR
+ftype c: \fIpath\fR c \fIclass\fR \fImajor\fR \fIminor\fR \fImode\fR \fIowner\fR \fIgroup\fR \fIpackage\fR
+ftype f: \fIpath\fR f \fIclass\fR \fImode\fR \fIowner\fR \fIgroup\fR \fIsize\fR \fIcksum\fR \fImodtime\fR \fIpackage\fR
+ftype x: \fIpath\fR x \fIclass\fR \fImode\fR \fIowner\fR \fIgroup\fR \fIpackage\fR
+ftype v: \fIpath\fR v \fIclass\fR \fImode\fR \fIowner\fR \fIgroup\fR \fIsize\fR \fIcksum\fR \fImodtime\fR \fIpackage\fR
+ftype e: \fIpath\fR e \fIclass\fR \fImode\fR \fIowner\fR \fIgroup\fR \fIsize\fR \fIcksum\fR \fImodtime\fR \fIpackage\fR
+.fi
+.in -2
+
+.sp
+.LP
+A significant distinction between old- and new-style entries is that the former
+do not begin with a slash (/) character, while the latter (new-style) always
+do. For example, the following are old-style entries:
+.sp
+.in +2
+.nf
+d none /dev SUNWcsd
+e passwd /etc/passwd SUNWcsr
+.fi
+.in -2
+
+.sp
+.LP
+The following are new-style entries:
+.sp
+.in +2
+.nf
+/dev d none 0755 root sys SUNWcsr SUNWcsd
+/etc/passwd e passwd 0644 root sys 580 48299 1077177419 SUNWcsr
+.fi
+.in -2
+
+.sp
+.LP
+The following are the descriptions of the fields in both old- and new-style
+entries.
+.sp
+.ne 2
+.na
+\fB\fIpath\fR\fR
+.ad
+.RS 11n
+The absolute path of the node being described. For \fBftype\fR \fBs\fR
+(indicating a symbolic link) this is the indirect pointer (link) name.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIrpath\fR\fR
+.ad
+.RS 11n
+The relative path to the real file or linked-to directory name.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIftype\fR\fR
+.ad
+.RS 11n
+A one-character field that indicates the entry type (see \fBpkgmap\fR(5)).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIclass\fR\fR
+.ad
+.RS 11n
+The installation class to which the file belongs (see \fBpkgmap\fR(5)).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIpackage\fR\fR
+.ad
+.RS 11n
+The package associated with this entry. For \fBftype\fR \fBd\fR (directory)
+more than one package can be present.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fImode\fR\fR
+.ad
+.RS 11n
+The octal mode of the file (see \fBpkgmap\fR(5)).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIowner\fR\fR
+.ad
+.RS 11n
+The owner of the file (see \fBpkgmap\fR(5)).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIgroup\fR\fR
+.ad
+.RS 11n
+The group to which the file belongs (see \fBpkgmap\fR(5)).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fImajor\fR\fR
+.ad
+.RS 11n
+The major device number (see \fBpkgmap\fR(5)).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIminor\fR\fR
+.ad
+.RS 11n
+The minor device number (see \fBpkgmap\fR(5)).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIsize\fR\fR
+.ad
+.RS 11n
+The actual size of the file in bytes as reported by sum (see \fBpkgmap\fR(5)).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIcksum\fR\fR
+.ad
+.RS 11n
+The checksum of the file contents (see \fBpkgmap\fR(5)).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fImodtime\fR\fR
+.ad
+.RS 11n
+The time of last modification (see \fBpkgmap\fR(5)).
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Unstable
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR pkgmap (5),
+.BR attributes (7),
+.BR pkgadd (8),
+.BR pkgadm (8),
+.BR pkgchk (8)
+.SH NOTES
+.sp
+.LP
+As shown above, the interface stability of \fB/var/sadm/install/contents\fR is
+Unstable (see \fBattributes\fR(7)). It is common practice to use this file in a
+read-only manner to determine which files belong to which packages installed on
+a system. While this file has been present for many releases of the Solaris
+operating system, it might not be present in future releases. The fully
+supported way to obtain information from the installed package database is
+through \fBpkgchk\fR(8). It is highly recommended that you use \fBpkgchk\fR
+rather than relying on the \fBcontents\fR file.
diff --git a/usr/src/man/man5/contract.5 b/usr/src/man/man5/contract.5
new file mode 100644
index 0000000000..ad3c3fbff7
--- /dev/null
+++ b/usr/src/man/man5/contract.5
@@ -0,0 +1,636 @@
+'\" te
+.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH CONTRACT 5 "Nov 26, 2017"
+.SH NAME
+contract \- the contract file system
+.SH SYNOPSIS
+.LP
+.nf
+\fB/system/contract\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fB/system/contract\fR file system acts as the primary interface to the
+contract subsystem. There is a subdirectory of \fB/system/contract\fR for each
+available contract type.
+.sp
+.LP
+\fB/system/contract\fR can be mounted on any mount point, in addition to the
+standard \fB/system/contract\fR mount point, and can be mounted several places
+at once. Such additional mounts are allowed in order to facilitate the
+confinement of processes to subtrees of the file system using \fBchroot\fR(8)
+and yet allow such processes to continue to use contract commands and
+interfaces.
+.sp
+.LP
+A combination of standard system calls (for example, \fBopen\fR(2),
+\fBclose\fR(2), and \fBpoll\fR(2)) and calls to \fBlibcontract\fR(3LIB) access
+\fB/system/contract\fR files.
+.sp
+.LP
+Consumers of the contract file system must be large file aware. See
+\fBlargefile\fR(7) and \fBlfcompile64\fR(7).
+.SS "DIRECTORY STRUCTURE"
+.LP
+At the top level, the \fB/system/contract\fR directory contains subdirectories
+named with each available contract type, and one special directory, \fBall\fR.
+Each of these directories is world-readable and world-searchable.
+.SS "STRUCTURE OF \fB/system/contract/\fItype\fR\fR"
+.LP
+Each \fB/system/contract/\fItype\fR\fR directory contains a fixed number of
+files. It also contains a variable number of subdirectories corresponding to
+existing contracts of type \fItype\fR and named with the decimal representation
+of the contracts' IDs.
+.sp
+.LP
+The following files are in a \fB/system/contract/\fItype\fR\fR directory:
+.sp
+.ne 2
+.na
+\fB\fBtemplate\fR\fR
+.ad
+.RS 12n
+Opening this file returns a file descriptor for a new \fItype\fR contract
+template.
+.sp
+You can use the following \fBlibcontract\fR(3LIB) calls on a template file
+descriptor:
+.sp
+.in +2
+.nf
+>
+
+ ct_tmpl_activate(3contract)
+ ct_tmpl_clear(3contract)
+ ct_tmpl_create(3contract)
+.fi
+.in -2
+.sp
+
+See TERMS for additional template functions.
+.RE
+
+.sp
+.ne 2
+.na
+\fBlatest\fR
+.ad
+.RS 12n
+Opening this file returns a file descriptor for the status file of the last
+\fItype\fR contract written by the opening LWP. See \fBSTRUCTURE OF
+/system/contract/\fItype\fR/\fIid\fR\fR. If the opening LWP has not created a
+\fItype\fR contract, opening latest fails with \fBESRCH\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBbundle\fR
+.ad
+.RS 12n
+Opening this file returns a file descriptor for an event endpoint which
+receives events from all \fItype\fR contracts on the system. No privileges are
+required to open a type bundle event endpoint. Events sent by contracts owned
+and written by users other than the reader's effective user id are invisible,
+that is, they are silently skipped, unless the reader has
+\fB{PRIV_CONTRACT_OBSERVER}\fR in its effective set. See \fBEVENTS\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBpbundle\fR
+.ad
+.RS 12n
+Opening this file returns a file descriptor for an event endpoint which
+receives events from all \fItype\fR contracts held by the opening process. See
+\fBEVENTS\fR.
+.RE
+
+.SS "STRUCTURE OF /system/contract/all"
+.LP
+The \fB/system/contract/all\fR directory contains a numerically named file for
+each contract in the system. Each file is a symbolic link to the type-specific
+directory for that contract, that is \fB/system/contract/all/\fIid\fR\fR points
+to \fB/system/contract/\fItype\fR/\fIid\fR\fR.
+.SS "STRUCTURE OF /system/contract/\fItype\fR/\fIid\fR"
+.LP
+Each \fB/system/contract/\fItype\fR/\fIid\fR\fR directory contains the
+following files:
+.sp
+.ne 2
+.na
+\fBctl\fR
+.ad
+.RS 10n
+Opening this file returns a file descriptor for contract \fIid\fR's control
+file. The open fails if the opening process does not hold contract \fIid\fR and
+the contract has not been inherited by the process contract of which the
+opening process is a member. See \fBprocess\fR(5).
+.sp
+The following \fBlibcontract\fR(3LIB) calls can be made on a \fBctl\fR file
+descriptor if the contract is owned by the caller:
+.sp
+.in +2
+.nf
+ct_ctl_abandon(3contract)
+ct_ctl_newct(3contract)
+ct_ctl_ack(3contract)
+ct_ctl_qack(3contract)
+.fi
+.in -2
+.sp
+
+The following \fBlibcontract\fR(3LIB) call can be made on a ctl file descriptor
+if the contract doesn't have an owner:
+.sp
+.in +2
+.nf
+ct_ctl_adopt(3contract)
+.fi
+.in -2
+.sp
+
+.RE
+
+.sp
+.ne 2
+.na
+\fBstatus\fR
+.ad
+.RS 10n
+Opening this file returns a file descriptor for contract \fIid\fR's status
+file. The following \fBlibcontract\fR(3LIB) calls can be made on a status file
+descriptor:
+.LP
+.nf
+ct_status_read(3contract)
+.fi
+
+ See STATUS.
+.RE
+
+.sp
+.ne 2
+.na
+\fBevents\fR
+.ad
+.RS 10n
+Opening this file returns a file descriptor for an event endpoint which
+receives events from contract \fIid\fR. See \fBEVENTS\fR.
+.sp
+Only a process which has the same effective user ID as the process owning the
+contract, the same effective user ID as the contract's author, or has
+\fB{PRIV_CONTRACT_OBSERVER}\fR in its effective set can open the event endpoint
+for a contract.
+.RE
+
+.SS "TERMS"
+.LP
+The following terms are defined for all contracts:
+.sp
+.ne 2
+.na
+\fBcookie\fR
+.ad
+.RS 25n
+Specifies a 64-bit quantity that the contract author can use to identify the
+contract. Use \fBct_tmpl_set_cookie\fR(3CONTRACT) to set this term.
+.RE
+
+.sp
+.ne 2
+.na
+\fBinformative event set\fR
+.ad
+.RS 25n
+Selects which events are delivered as informative events. Use
+\fBct_tmpl_set_informative\fR(3CONTRACT) to set this term.
+.RE
+
+.sp
+.ne 2
+.na
+\fBcritical event set\fR
+.ad
+.RS 25n
+Selects which events are delivered as critical events. Use
+\fBct_tmpl_set_critical\fR(3CONTRACT) to set this term.
+.RE
+
+.SS "STATUS"
+.LP
+A status object returned by \fBct_status_read\fR(3CONTRACT) contains the
+following pieces of information:
+.sp
+.ne 2
+.na
+\fBcontract ID\fR
+.ad
+.sp .6
+.RS 4n
+The numeric ID of the contract. Use \fBct_status_get_id\fR(3CONTRACT) to obtain
+this information.
+.RE
+
+.sp
+.ne 2
+.na
+\fBcontract type\fR
+.ad
+.sp .6
+.RS 4n
+The type of the contract, specified as a string. Obtained using
+\fBct_status_get_type\fR(3CONTRACT). The contract type is the same as its
+subdirectory name under \fB/system/contract\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBcreator's zone ID\fR
+.ad
+.sp .6
+.RS 4n
+The zone ID of the process which created the contract. Obtained using
+\fBct_status_get_zoneid\fR(3CONTRACT).
+.RE
+
+.sp
+.ne 2
+.na
+\fBownership state\fR
+.ad
+.sp .6
+.RS 4n
+The state of the contract, specified as \fBCTS_OWNED\fR, \fBCTS_INHERITED\fR,
+\fBCTS_ORPHAN\fR, or \fBCTS_DEAD\fR. Use \fBct_status_get_state\fR(3CONTRACT)
+to obtain this information.
+.RE
+
+.sp
+.ne 2
+.na
+\fBcontract holder\fR
+.ad
+.sp .6
+.RS 4n
+If the contract's state is \fBCTS_OWNED\fR, the ID of the process which owns
+the contract. If the contract's state is \fBCTS_INHERITED\fR, the ID of the
+contract which is acting as regent. If the contract's state is \fBCTS_ORPHAN\fR
+or \fBCTS_DEAD\fR, this is undefined. Use \fBct_status_get_holder\fR(3CONTRACT)
+to obtain this information.
+.RE
+
+.sp
+.ne 2
+.na
+\fBnumber of critical events\fR
+.ad
+.sp .6
+.RS 4n
+The number of unacknowledged critical events pending on the contract's event
+queue. Use \fBct_status_get_nevents\fR(3CONTRACT) to obtain this information.
+.RE
+
+.sp
+.ne 2
+.na
+\fBnegotiation time\fR
+.ad
+.sp .6
+.RS 4n
+The time remaining before the current synchronous negotiation times out. Use
+\fBct_status_get_ntime\fR(3CONTRACT) to obtain this information.
+.RE
+
+.sp
+.ne 2
+.na
+\fBnegotiation quantum time\fR
+.ad
+.sp .6
+.RS 4n
+The time remaining before the current negotiation quantum runs out. Use
+\fBct_status_get_qtime\fR(3CONTRACT) to obtain this information.
+.RE
+
+.sp
+.ne 2
+.na
+\fBnegotiation event ID\fR
+.ad
+.sp .6
+.RS 4n
+The ID of the event which initiated the negotiation timeout. Use
+\fBct_status_get_nevid\fR(3CONTRACT) to obtain this information.
+.RE
+
+.sp
+.ne 2
+.na
+\fBcookie (term)\fR
+.ad
+.sp .6
+.RS 4n
+The contract's cookie term. Use \fBct_status_get_cookie\fR(3CONTRACT) to obtain
+this information.
+.RE
+
+.sp
+.ne 2
+.na
+\fBInformative event set (term)\fR
+.ad
+.sp .6
+.RS 4n
+The contract's informative event set. Use
+\fBct_status_get_informative\fR(3CONTRACT) to obtain this information.
+.RE
+
+.sp
+.ne 2
+.na
+\fBCritical event set (term)\fR
+.ad
+.sp .6
+.RS 4n
+The contract's critical event set. Use \fBct_status_get_critical\fR(3CONTRACT)
+to obtain this information.
+.RE
+
+.SS "EVENTS"
+.LP
+All three event endpoints, \fB/system/contract/\fItype\fR/bundle\fR,
+\fB/system/contract/\fItype\fR/pbundle\fR, and
+\fB/system/contract/\fItype\fR/\fIid\fR/events\fR, are accessed in the same
+manner.
+.sp
+.LP
+The following \fBlibcontract\fR(3LIB) interfaces are used with an event
+endpoint file descriptor:
+.sp
+.in +2
+.nf
+ct_event_read(3contract)
+ct_event_read_critical(3contract)
+ct_event_reset(3contract)
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+To facilitate processes watching multiple event endpoints, it is possible to
+poll(2) on event endpoints. When it is possible to receive on an endpoint file
+descriptor, POLLIN is set for that descriptor.
+.sp
+.LP
+An event object returned by \fBct_event_read\fR(3CONTRACT) contains the
+following information:
+.sp
+.ne 2
+.na
+\fBcontract ID\fR
+.ad
+.RS 28n
+The ID of the contract that generated the event. Use
+\fBct_event_read\fR(3CONTRACT) to obtain this information.
+.RE
+
+.sp
+.ne 2
+.na
+\fBevent ID\fR
+.ad
+.RS 28n
+The ID of the contract event.Use \fBct_event_get_evid\fR(3CONTRACT).
+.RE
+
+.sp
+.ne 2
+.na
+\fBflags\fR
+.ad
+.RS 28n
+A bit vector possibly including \fBCT_ACK\fR and \fBCTE_INFO\fR. Use
+\fBct_event_get_flags\fR(3CONTRACT) to obtain this information.
+.RE
+
+.sp
+.ne 2
+.na
+\fBevent type\fR
+.ad
+.RS 28n
+The type of event, equal to one of the constants specified in the contract
+type's manual page or \fBCT_EV_NEGEND\fR. Use
+\fBct_event_get_type\fR(3CONTRACT) to obtain this information.
+.RE
+
+.SS "EVENT TYPES"
+.LP
+The following event types are defined:
+.sp
+.ne 2
+.na
+\fB\fBCT_EV_NEGEND\fR\fR
+.ad
+.RS 16n
+Some time after an exit negotiation is initiated, the \fBCT_EV_NEGEND\fR event
+is sent. This indicates that the negotiation ended. This might be because the
+operation was cancelled, or because the operation was successful. If
+successful, and the owner requested that a new contract be written, this
+contains the ID of that contract.
+.sp
+\fBCT_EV_NEGEND\fR cannot be included in a contract's informative or critical
+event set. It is always delivered and always critical. If \fBCT_EV_NEGEND\fR
+indicates that the operation was successful, no further events are sent. The
+contract's owner should use \fBct_ctl_abandon\fR(3CONTRACT) to abandon the
+contract.
+.sp
+A \fBCT_EV_NEGEND\fR event contains:
+.sp
+.ne 2
+.na
+\fBnegotiation ID\fR
+.ad
+.RS 19n
+The ID of the negotiation which ended. Use \fBct_event_get_nevid\fR(3CONTRACT)
+to obain this information.
+.RE
+
+.sp
+.ne 2
+.na
+\fBnew contract ID\fR
+.ad
+.RS 19n
+The ID of the newly created contract. This value is 0 if no contract was
+created, or the ID of the existing contract if the operation was not completed.
+Use \fBct_event_get_newct\fR(3CONTRACT) to obtain this information.
+.RE
+
+.RE
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/system/contract\fR\fR
+.ad
+.sp .6
+.RS 4n
+List of all contract types
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/system/contract/all\fR\fR
+.ad
+.sp .6
+.RS 4n
+Directory of all contract IDs
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/system/contract/all/\fIid\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Symbolic link to the type-specific directory of contract \fIid\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/system/contract/\fItype\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specific type directory
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/system/contract/\fItype\fR/template\fR\fR
+.ad
+.sp .6
+.RS 4n
+Template for the contract type
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/system/contract/\fItype\fR/bundle\fR\fR
+.ad
+.sp .6
+.RS 4n
+Listening point for all contracts of that type
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/system/contract/\fItype\fR/pbundle\fR\fR
+.ad
+.sp .6
+.RS 4n
+Listening point for all contracts of that type for the opening process
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/system/contract/\fItype\fR /latest\fR\fR
+.ad
+.sp .6
+.RS 4n
+Status of most recent \fItype\fR contract created by the opening LWP
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/system/contract/\fItype\fR/\fIID\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Directory for contract id
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/system/contract/\fItype\fR/\fIID\fR/events\fR\fR
+.ad
+.sp .6
+.RS 4n
+Listening point for contract id's events
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/system/contract/\fItype\fR/\fIID\fR/ctl\fR\fR
+.ad
+.sp .6
+.RS 4n
+Control file for contract ID
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/system/contract/\fItype\fR/\fIID\fR/status\fR\fR
+.ad
+.sp .6
+.RS 4n
+Status info for contract ID
+.RE
+
+.SH SEE ALSO
+.LP
+.BR ctrun (1),
+.BR ctstat (1),
+.BR ctwatch (1),
+.BR close (2),
+.BR ioctl (2),
+.BR open (2),
+.BR poll (2),
+.BR ct_ctl_abandon (3CONTRACT),
+.BR ct_event_get_evid (3CONTRACT),
+.BR ct_event_get_flags (3CONTRACT),
+.BR ct_event_get_nevid (3CONTRACT),
+.BR ct_event_get_newct (3CONTRACT),
+.BR ct_event_get_type (3CONTRACT),
+.BR ct_event_read (3CONTRACT),
+.BR ct_status_get_cookie (3CONTRACT),
+.BR ct_status_get_critical (3CONTRACT),
+.BR ct_status_get_holder (3CONTRACT),
+.BR ct_status_get_id (3CONTRACT),
+.BR ct_status_get_informative (3CONTRACT),
+.BR ct_status_get_nevents (3CONTRACT),
+.BR ct_status_get_nevid (3CONTRACT),
+.BR ct_status_get_ntime (3CONTRACT),
+.BR ct_status_get_qtime (3CONTRACT),
+.BR ct_status_get_state (3CONTRACT),
+.BR ct_status_get_type (3CONTRACT),
+.BR ct_status_read (3CONTRACT),
+.BR ct_tmpl_set_cookie (3CONTRACT),
+.BR ct_tmpl_set_critical (3CONTRACT),
+.BR ct_tmpl_set_informative (3CONTRACT),
+.BR libcontract (3LIB),
+.BR process (5),
+.BR largefile (7),
+.BR lfcompile (7),
+.BR privileges (7),
+.BR chroot (8)
diff --git a/usr/src/man/man5/copyright.5 b/usr/src/man/man5/copyright.5
new file mode 100644
index 0000000000..4beb319742
--- /dev/null
+++ b/usr/src/man/man5/copyright.5
@@ -0,0 +1,19 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 1997, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH COPYRIGHT 5 "Feb 7, 1997"
+.SH NAME
+copyright \- copyright information file
+.SH DESCRIPTION
+.sp
+.LP
+\fBcopyright\fR is an \fBASCII\fR file used to provide a copyright notice for a
+package. The text may be in any format. The full file contents (including
+comment lines) are displayed on the terminal at the time of package
+installation.
+.SH SEE ALSO
+.sp
+.LP
+\fIApplication Packaging Developer\&'s Guide\fR
diff --git a/usr/src/man/man5/core.5 b/usr/src/man/man5/core.5
new file mode 100644
index 0000000000..a578a07ca7
--- /dev/null
+++ b/usr/src/man/man5/core.5
@@ -0,0 +1,584 @@
+'\"
+.\" Copyright (C) 2008, Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 2012 DEY Storage Systems, Inc. All rights reserved.
+.\" Copyright (c) 2013, Joyent, Inc. All rights reserved.
+.\" Copyright 2020 OmniOS Community Edition (OmniOSce) Association.
+.\" Copyright 2021 Oxide Computer Company
+.\" Copyright 1989 AT&T
+.\"
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.\"
+.Dd August 3, 2021
+.Dt CORE 5
+.Os
+.Sh NAME
+.Nm core
+.Nd process core file
+.Sh DESCRIPTION
+The operating system writes out a core file for a process when the process is
+terminated due to receiving certain signals.
+A core file is a disk copy of the contents of the process address space at the
+time the process received the signal, along with additional information about
+the state of the process.
+This information can be consumed by a debugger.
+Core files can also be generated by applying the
+.Xr gcore 1
+utility to a running process.
+.Pp
+Typically, core files are produced following abnormal termination of a process
+resulting from a bug in the corresponding application.
+Whatever the cause, the core file itself provides invaluable information to the
+programmer or support engineer to aid in diagnosing the problem.
+The core file can be inspected using a debugger such as
+.Xr mdb 1 ,
+gdb, dbx, or or by applying one of the
+.Xr proc 1
+tools.
+.Pp
+The operating system attempts to create up to two core files for each
+abnormally terminating process, using a global core file name pattern and a
+per-process core file name pattern.
+These patterns are expanded to determine the pathname of the resulting core
+files, and can be configured by
+.Xr coreadm 8 .
+By default, the global core file pattern is disabled and not used, and the
+per-process core file pattern is set to
+.Sy core .
+Therefore, by default, the operating system attempts to create a core file named
+.Pa core
+in the process's current working directory.
+.Pp
+A process terminates and produces a core file whenever it receives one of the
+signals whose default disposition is to cause a core dump or the
+.Xr upanic 2
+system call is used.
+The list of signals that result in generating a core file is shown in
+.Xr signal.h 3HEAD .
+Therefore, a process might not produce a core file if it has blocked or
+modified the behavior of the corresponding signal.
+Additionally, no core dump can be created under the following conditions:
+.Bl -bullet
+.It
+If normal file and directory access permissions prevent the creation or
+modification of the per-process core file pathname by the current process user
+and group ID.
+This test does not apply to the global core file pathname because, regardless of
+the UID of the process dumping core, the attempt to write the global core file
+is made as the superuser.
+.It
+Core files owned by the user
+.Sy nobody
+will not be produced.
+For example, core files generated for the superuser on an NFS directory are
+owned by
+.Sy nobody
+and are, therefore, not written.
+.It
+If the core file pattern expands to a pathname that contains intermediate
+directory components that do not exist.
+For example, if the global pattern is set to
+.Pa /var/core/%n/core.%p ,
+and no directory
+.Pa /var/core/`uname -n`
+has been created, no global core files are produced.
+.It
+If the destination directory is part of a filesystem that is mounted read-only.
+.It
+If the resource limit
+.Dv RLIMIT_CORE
+has been set to
+.Sy 0
+for the
+process, no per-process core file is produced.
+Refer to
+.Xr setrlimit 2
+and
+.Xr ulimit 1
+for more information on resource limits.
+.It
+If the core file name already exists in the destination directory and is not a
+regular file
+.Pq that is, is a symlink, block or character special-file, and so forth .
+.It
+If the kernel cannot open the destination file
+.Dv O_EXCL ,
+which can occur if same file is being created by another process simultaneously.
+.It
+If the process's effective user ID is different from its real user ID or if its
+effective group ID is different from its real group ID.
+Similarly, set-user-ID and set-group-ID programs do not produce core files as
+this could potentially compromise system security.
+These processes can be explicitly granted permission to produce core files using
+.Xr coreadm 8 ,
+at the risk of exposing secure information.
+.El
+.Pp
+The core file contains all the process information pertinent to debugging:
+contents of hardware registers, process status, and process data.
+The format of a core file is object file specific.
+.Pp
+For ELF executable programs
+.Po
+see
+.Xr a.out 5
+.Pc ,
+the core file generated is also an ELF file, containing ELF program and file
+headers.
+The
+.Fa e_type
+field in the file header has type
+.Dv ET_CORE .
+The program header contains an entry for every segment that was part of the
+process address space, including shared library segments.
+The contents of the mappings specified by
+.Xr coreadm 8
+are also part of the core image.
+Each program header has its
+.Fa p_memsz
+field set to the size of the mapping.
+The program headers that represent mappings whose data is included in the core
+file have their
+.Fa p_filesz
+field set the same as
+.Fa p_memsz ,
+otherwise
+.Fa p_filesz
+is
+.Sy zero .
+.Pp
+A mapping's data can be excluded due to the core file content settings
+.Po
+see
+.Xr coreadm 8
+.Pc ,
+due to a failure, or due to a signal received after core dump initiation but
+before its completion.
+If the data is excluded because of a failure, the program header entry will
+have the
+.Dv PF_SUNW_FAILURE
+flag set in its
+.Fa p_flags
+field; if the data is excluded because of a signal, the segment's
+.Fa p_flags
+field will have the
+.Dv PF_SUNW_KILLED
+flag set.
+.Pp
+The program headers of an
+.Sy ELF
+core file also contain entries for two
+.Sy NOTE
+segments, each containing several note entries as described below.
+The note entry header and core file note type
+.Pq Fa n_type
+definitions are contained in
+.In sys/elf.h .
+The first
+.Sy NOTE
+segment exists for binary compatibility with old programs that deal with core
+files.
+It contains structures defined in
+.In sys/old_procfs.h .
+New programs should recognize and skip this
+.Sy BNOTE
+segment, advancing instead to the new
+.Sy NOTE
+segment.
+The old
+.Sy NOTE
+segment is deleted from core files in a future release.
+.Pp
+The old
+.Sy NOTE
+segment contains the following entries.
+Each has entry name
+.Sy "CORE"
+and presents the contents of a system structure:
+.Bl -tag -width prpsinfo_t
+.It Vt prpsinfo_t
+.Fa n_type :
+.Dv NT_PRPSINFO .
+This entry contains information of interest to the
+.Xr ps 1
+command, such as process status, CPU usage, nice value, controlling terminal,
+user-ID, process-ID, the name of the executable, and so forth.
+The
+.Vt prpsinfo_t
+structure is defined in
+.In sys/old_procfs.h .
+.It Vt char[]
+.Fa n_type :
+.Dv NT_PLATFORM .
+This entry contains a string describing the specific model of the hardware
+platform on which this core file was created.
+This information is the same as provided by
+.Xr sysinfo 2
+when invoked with the command
+.Dv SI_PLATFORM .
+.It Vt auxv_t[]
+.Fa n_type :
+.Dv NT_AUXV .
+This entry contains the array of
+.Vt Bauxv_t
+structures that was passed by the operating system as startup information to
+the dynamic linker.
+Auxiliary vector information is defined in
+.In sys/auxv.h .
+.El
+.Pp
+Following these entries, for each active (non-zombie) light-weight process
+.Pq LWP
+in the process, the old
+.Sy NOTE
+segment contains an entry with a
+.Vt prstatus_t
+structure, plus other optionally-present entries describing the LWP, as follows:
+.Bl -tag -width "prfpregset_t"
+.It Vt prstatus_t
+.Fa n_type :
+.Dv NT_PRSTATUS .
+This structure contains things of interest to a debugger from the operating
+system, such as the general registers, signal dispositions, state, reason for
+stopping, process-ID, and so forth.
+The
+.Vt prstatus_t
+structure is defined in
+.In sys/old_procfs.h .
+.It Vt prfpregset_t
+.Fa n_type :
+.Dv NT_PRFPREG .
+This entry is present only if the
+.Sy BLWP
+used the floating-point hardware.
+It contains the floating-point registers.
+The
+.Vt prfpregset_t
+structure is defined in
+.In sys/procfs_isa.h .
+.It Vt gwindows_t
+.Fa n_type :
+.Dv NT_GWINDOWS .
+This entry is present only on a SPARC machine and only if the system was unable
+to flush all of the register windows to the stack.
+It contains all of the unspilled register windows.
+The
+.Vt gwindows_t
+structure is defined in
+.In sys/regset.h .
+.It Vt prxregset_t
+.Fa n_type :
+.Dv NT_PRXREG .
+This entry is present only if the machine has extra register state associated
+with it.
+It contains the extra register state.
+The
+.Vt prxregset_t
+structure is defined in
+.Vt sys/procfs_isa.h .
+.El
+.Pp
+The new
+.Sy NOTE
+segment contains the following entries.
+Each has entry name
+.Sy "CORE"
+and presents the contents of a system structure:
+.Bl -tag -width prxregset_t
+.It Vt psinfo_t
+.Fa n_type :
+.Dv NT_PSINFO .
+This structure contains information of interest to the
+.Xr ps 1
+command, such as process status, CPU usage, nice value, controlling terminal,
+user-ID, process-ID, the name of the executable, and so forth.
+The
+.Vt psinfo_t
+structure is defined in
+.In sys/procfs.h
+.It Vt pstatus_t
+.Fa n_type :
+.Dv NT_PSTATUS .
+This structure contains things of interest to a debugger from the operating
+system, such as pending signals, state, process-ID, and so forth.
+The
+.Vt pstatus_t
+structure is defined in
+.In sys/procfs.h .
+.It Vt char[]
+.Fa n_type :
+.Dv NT_PLATFORM .
+This entry contains a string describing the specific model of the hardware
+platform on which this core file was created.
+This information is the same as provided by
+.Xr sysinfo 2
+when invoked with the command
+.Dv SI_PLATFORM .
+.It auxv_t[]
+.Fa n_type :
+.Dv NT_AUXV .
+This entry contains the array of
+.Vt auxv_t
+structures that was passed by the operating system as startup information to
+the dynamic linker.
+Auxiliary vector information is defined in
+.In sys/auxv.h .
+.It Vt struct utsname
+.Fa n_type :
+.Dv NT_UTSNAME .
+This structure contains the system information that would have been returned
+to the process if it had performed a
+.Xr uname 2
+system call prior to dumping core.
+The
+.Vt utsname
+structure is defined in
+.In sys/utsname.h .
+.It pcred_t
+.Fa n_type :
+.Dv NT_PRCRED .
+This structure contains the process credentials, including the real, saved,
+and effective user and group IDs.
+The
+.Vt pcred_t
+structure is defined in
+.In sys/procfs.h .
+Following the structure is an optional array of supplementary group IDs.
+The total number of supplementary group IDs is given by the
+.Fa pr_ngroups
+member of the
+.Vt pcred_t
+structure, and the structure includes space for one supplementary group.
+If
+.Fa pr_ngroups
+is greater than 1, there is
+.So
+.Fa pr_ngroups
+- 1
+.Sc
+.Fa gid_t
+items following the structure; otherwise, there is no additional data.
+.It Vt char[]
+.Fa n_type :
+.Dv NT_ZONENAME .
+This entry contains a string which describes the name of the zone in
+which the process was running.
+See
+.Xr zones 7 .
+The information is the same as provided by
+.Xr getzonenamebyid 3C
+when invoked with the numerical ID returned by
+.Xr getzoneid 3C .
+.It Vt prfdinfo_core_t
+.Fa n_type :
+.Dv NT_FDINFO .
+This structure contains information about any open file descriptors, including
+the path, flags, and
+.Xr stat 2
+information.
+The
+.Vt prfdinfo_core_t
+structure is defined in
+.In sys/procfs.h .
+.It Vt struct ssd[]
+.Fa n_type :
+.Dv NT_LDT .
+This entry is present only on an 32-bit x86 machine and only if the process has
+set up a Local Descriptor Table
+.Pq LDT .
+It contains an array of structures of type
+.Vt struct ssd ,
+each of which was typically used to set up the
+.Sy %gs
+segment register to be used to fetch the address of the current thread
+information structure in a multithreaded process.
+The
+.Vt ssd
+structure is defined in
+.In sys/sysi86.h .
+.It Vt core_content_t
+.Fa n_type :
+.Dv NT_CONTENT .
+This optional entry indicates which parts of the process image are specified
+to be included in the core file.
+See
+.Xr coreadm 8 .
+.It Vt prsecflags_t
+.Fa n_type :
+.Dv NT_SECFLAGS .
+This entry contains the process security-flags, see
+.Xr security-flags 7 ,
+.Xr proc 5 ,
+and
+.Xr psecflags 1
+for more information.
+.It Vt prupanic_t
+.Fa n_type :
+.Dv NT_UPANIC .
+This entry is included if a process terminated through the
+.Xr upanic 2
+system call.
+It is defined in
+.In sys/procfs.h .
+.Pp
+The
+.Fa pru_version
+member indicates the current revision of the structure, which is expected to be
+.Dv PRUPANIC_VERSION_1
+.Pq 1 .
+The
+.Fa pru_flags
+member will be set to the bitwise-inclusive-OR of the following fields:
+.Bl -tag -offset indent -width PRUPANIC_FLAG_MSG_TRUNC
+.It Dv PRUPANIC_FLAG_MSG_VALID
+Indicates that
+.Fa pru_data
+member has valid contents and that the process provided a message in the
+.Xr upanic 2
+call .
+.It Dv PRUPANIC_FLAG_MSG_ERROR
+Indicates that the calling process attempted to include a message; however, the
+provided address of the message did not point to valid memory.
+.It Dv PRUPANIC_FLAG_MSG_TRUNC
+Indicates that the calling process included a message; however, the message it
+wanted to provide was larger than the current message length.
+.El
+The
+.Fa pru_data
+array contains binary data that the terminating process used to indicate that
+the reason why it panicked.
+This member should be ignored if the
+.Dv PRUPANIC_FLAG_MSG_VALID
+flag is not set in
+.Fa pru_flags .
+While it is recommended that processes terminate with an ASCII string, consumers
+of this should not assume that the binary data is made of of printable
+characters.
+.El
+.Pp
+For each active and zombie
+.Sy LWP
+in the process,
+the new
+.Sy NOTE
+segment contains an entry with an
+.Vt lwpsinfo_t
+structure plus, for a non-zombie LWP, an entry with an
+.Vt lwpstatus_t
+structure, plus other optionally-present entries describing the LWP, as follows.
+A zombie LWP is a non-detached LWP that has terminated but has not yet been
+reaped by another LWP in the same process.
+.Bl -tag -width "prxregset_t"
+.It Vt lwpsinfo_t
+.Fa n_type :
+.Dv NT_LWPSINFO .
+This structure contains information of interest to the
+.Xr ps 1
+command, such as LWP status, CPU usage, nice value, LWP-ID, and so forth.
+The
+.Vt lwpsinfo_t
+structure is defined in
+.In sys/procfs.h .
+This is the only entry present for a zombie LWP.
+.It lwpstatus_t
+.Fa n_type :
+.Dv NT_LWPSTATUS .
+This structure contains things of interest to a debugger from the operating
+system, such as the general registers, the floating point registers, state,
+reason for stopping, LWP-ID, and so forth.
+The
+.Vt lwpstatus_t
+structure is defined in
+.In sys/procfs.h .
+.Vt gwindows_t
+.Fa n_type :
+.Dv NT_GWINDOWS .
+This entry is present only on a SPARC machine and only if the system was unable
+to flush all of the register windows to the stack.
+It contains all of the unspilled register windows.
+The
+.Vt gwindows_t
+structure is defined in
+.In sys/regset.h .
+.It Vt prxregset_t
+.Fa n_type :
+.Dv NT_PRXREG .
+This entry is present only if the machine has extra register state associated
+with it.
+It contains the extra register state.
+The
+.Vt prxregset_t
+structure is defined in
+.In sys/procfs_isa.h .
+.It Vt asrset_t
+\fB\fBasrset_t\fR\fR
+.Fa n_type :
+.Dv NT_ASRS .
+This entry is present only on a SPARC V9 machine and only if the process is a
+64-bit process.
+It contains the ancillary state registers for the LWP.
+The
+.Vt asrset_t asrset_t
+structure is defined in
+.In sys/regset.h .
+.It Vt psinfo_t
+.Fa n_type :
+.Dv NT_SPYMASTER .
+This entry is present only for an agent LWP and contains the
+.Vt psinfo_t
+of the process that created the agent LWP.
+See the
+.Xr proc 5
+description of the
+.Sy spymaster
+entry for more details.
+.El
+.Pp
+Depending on the
+.Xr coreadm 8
+settings, the section header of an ELF core file can contain entries for CTF,
+DWARF debug information, symbol table, and string table sections.
+The
+.Fa sh_addr
+fields are set to the base address of the first mapping of the load object that
+they came from to.
+This can be used to match those sections with the corresponding load object.
+.Pp
+The size of the core file created by a process can be controlled by the user
+.Po
+see
+.Xr getrlimit 2
+.Pc
+.Sh SEE ALSO
+.Xr elfdump 1 ,
+.Xr gcore 1 ,
+.Xr mdb 1 ,
+.Xr proc 1 ,
+.Xr ps 1 ,
+.Xr getrlimit 2 ,
+.Xr setrlimit 2 ,
+.Xr setuid 2 ,
+.Xr sysinfo 2 ,
+.Xr uname 2 ,
+.Xr upanic 2 ,
+.Xr getzoneid 3C ,
+.Xr getzonenamebyid 3C ,
+.Xr elf 3ELF ,
+.Xr signal.h 3HEAD ,
+.Xr a.out 5 ,
+.Xr proc 5 ,
+.Xr security-flags 7 ,
+.Xr zones 7 ,
+.Xr coreadm 8
diff --git a/usr/src/man/man5/crypt.conf.5 b/usr/src/man/man5/crypt.conf.5
new file mode 100644
index 0000000000..c543392d95
--- /dev/null
+++ b/usr/src/man/man5/crypt.conf.5
@@ -0,0 +1,107 @@
+'\" te
+.\" Copyright (c) 2001, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH CRYPT.CONF 5 "December 28, 2020"
+.SH NAME
+crypt.conf \- configuration file for pluggable crypt modules
+.SH SYNOPSIS
+.nf
+/etc/security/crypt.conf
+.fi
+
+.SH DESCRIPTION
+\fBcrypt.conf\fR is the configuration file for the pluggable crypt
+architecture. Each crypt module must provide a function to generate a password
+hash, \fBcrypt_genhash_impl\fR(3C), and a function to generate the salt,
+\fBcrypt_gensalt_impl\fR(3C).
+.sp
+.LP
+There must be at least one entry in \fBcrypt.conf\fR with the same name as is
+stored in the \fBcrypt_algorithm_magic\fR symbol of the module. The
+documentation provided with the module should list this name.
+.sp
+.LP
+The \fBmodule_path\fR field specifies the path name to a shared library object
+that implements \fBcrypt_genhash_impl()\fR, \fBcrypt_gensalt_impl()\fR, and
+\fBcrypt_algorithm_magic\fR. If the path name is not absolute, it is assumed
+to be relative to \fB/usr/lib/security/$ISA\fR. If the path name contains the
+\fB$ISA\fR token, the token is replaced by an implementation-defined directory
+name that defines the path relative to the calling program's instruction set
+architecture.
+.sp
+.LP
+The \fBparams\fR field is used to pass module-specific options to the shared
+objects. See \fBcrypt_genhash_impl\fR(3C) and \fBcrypt_gensalt_impl\fR(3C). It
+is the responsibility of the module to parse and interpret the options. The
+\fBparams\fR field can be used by the modules to turn on debugging or to pass
+any module-specific parameters that control the output of the hashing
+algorithm.
+.SH EXAMPLES
+\fBExample 1 \fRProvide compatibility for md5crypt-generated passwords.
+.sp
+.LP
+The default configuration preserves previous Solaris behavior while adding
+compatibility for md5crypt-generated passwords as provided on some BSD and
+Linux systems.
+
+.sp
+.in +2
+.nf
+#
+# crypt.conf
+#
+1 /usr/lib/security/$ISA/crypt_bsdmd5.so
+.fi
+.in -2
+
+.LP
+\fBExample 2 \fRUse md5crypt to demonstrate compatibility with BSD- and
+Linux-based systems.
+.sp
+.LP
+The following example lists 4 algorithms and demonstrates how compatibility
+with BSD- and Linux-based systems using md5crypt is made available, using the
+algorithm names 1 and 2.
+
+.sp
+.in +2
+.nf
+#
+# crypt.conf
+#
+md5 /usr/lib/security/$ISA/crypt_md5.so
+rot13 /usr/lib/security/$ISA/crypt_rot13.so
+
+# For *BSD/Linux compatibility
+# 1 is md5, 2 is Blowfish
+1 /usr/lib/security/$ISA/crypt_bsdmd5.so
+2 /usr/lib/security/$ISA/crypt_bsdbf.so
+.fi
+.in -2
+
+.SH ATTRIBUTES
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.BR passwd (1),
+.BR crypt (3C),
+.BR crypt_genhash_impl (3C),
+.BR crypt_gensalt (3C),
+.BR crypt_gensalt_impl (3C),
+.BR getpassphrase (3C),
+.BR passwd (5),
+.BR attributes (7),
+.BR crypt_unix (7)
diff --git a/usr/src/man/man5/crypt_bsdbf.5 b/usr/src/man/man5/crypt_bsdbf.5
deleted file mode 100644
index 83fd423a3e..0000000000
--- a/usr/src/man/man5/crypt_bsdbf.5
+++ /dev/null
@@ -1,45 +0,0 @@
-'\" te
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
-.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH CRYPT_BSDBF 5 "Sep 13, 2009"
-.SH NAME
-crypt_bsdbf \- password hashing module using Blowfish cryptographic algorithm
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/security/$ISA/crypt_bsdbf.so\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBcrypt_bsdbf\fR module is a one-way password hashing module for use with
-\fBcrypt\fR(3C) that uses the Blowfish cryptographic algorithm. The algorithm
-identifier for \fBcrypt.conf\fR(4) and \fBpolicy.conf\fR(4) is \fB2a\fR.
-.sp
-.LP
-The maximum password length for \fBcrypt_bsdbf\fR is 72 characters.
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-MT-Level Safe
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBpasswd\fR(1), \fBcrypt\fR(3C), \fBcrypt_genhash_impl\fR(3C),
-\fBcrypt_gensalt\fR(3C), \fBcrypt_gensalt_impl\fR(3C), \fBgetpassphrase\fR(3C),
-\fBcrypt.conf\fR(4), \fBpasswd\fR(4), \fBpolicy.conf\fR(4), \fBattributes\fR(5)
diff --git a/usr/src/man/man5/crypt_bsdmd5.5 b/usr/src/man/man5/crypt_bsdmd5.5
deleted file mode 100644
index 210597e275..0000000000
--- a/usr/src/man/man5/crypt_bsdmd5.5
+++ /dev/null
@@ -1,46 +0,0 @@
-'\" te
-.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH CRYPT_BSDMD5 5 "Aug 6, 2003"
-.SH NAME
-crypt_bsdmd5 \- password hashing module using MD5 message hash algorithm
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/security/$ISA/crypt_bsdmd5.so\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBcrypt_bsdmd5\fR module is a one-way password hashing module for use with
-\fBcrypt\fR(3C) that uses the MD5 message hash algorithm. The algorithm
-identifier for \fBcrypt.conf\fR(4) and \fBpolicy.conf\fR(4) is \fB1\fR. The
-output is compatible with \fBmd5crypt\fR on BSD and Linux systems.
-.sp
-.LP
-The maximum password length for \fBcrypt_bsdmd5\fR is 255 characters.
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-MT-Level Safe
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBpasswd\fR(1), \fBcrypt\fR(3C), \fBcrypt_genhash_impl\fR(3C),
-\fBcrypt_gensalt\fR(3C), \fBcrypt_gensalt_impl\fR(3C), \fBgetpassphrase\fR(3C),
-\fBcrypt.conf\fR(4), \fBpasswd\fR(4), \fBpolicy.conf\fR(4), \fBattributes\fR(5)
diff --git a/usr/src/man/man5/crypt_sha256.5 b/usr/src/man/man5/crypt_sha256.5
deleted file mode 100644
index 3d264107f7..0000000000
--- a/usr/src/man/man5/crypt_sha256.5
+++ /dev/null
@@ -1,83 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH CRYPT_SHA256 5 "May 8, 2008"
-.SH NAME
-crypt_sha256 \- password hashing module using SHA-256 message hash algorithm
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/security/$ISA/crypt_sha256.so\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBcrypt_sha256\fR module is a one-way password hashing module for use with
-\fBcrypt\fR(3C) that uses the SHA-256 message hash algorithm. The algorithm
-identifier for \fBcrypt.conf\fR(4) and \fBpolicy.conf\fR(4) is \fB5\fR.
-.sp
-.LP
-This module is designed to make it difficult to crack passwords that use brute
-force attacks based on high speed SHA-256 implementations that use code
-inlining, unrolled loops, and table lookup.
-.sp
-.LP
-The maximum password length for \fBcrypt_sha256\fR is 255 characters.
-.sp
-.LP
-The following options can be passed to the module by means of
-\fBcrypt.conf\fR(4):
-.sp
-.ne 2
-.na
-\fB\fBrounds=\fR\fI<positive_number>\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the number of rounds of SHA-256 to use in generation of the salt; the
-default number of rounds is 5000. Negative values have no effect and are
-ignored. The minimum number of rounds cannot be below 1000.
-.sp
-The number of additional rounds is stored in the salt string returned by
-\fBcrypt_gensalt\fR(3C). For example:
-.sp
-.in +2
-.nf
-$5,rounds=6000$nlxmTTpz$
-.fi
-.in -2
-
-When \fBcrypt_gensalt\fR(3C) is being used to generate a new salt, if the
-number of additional rounds configured in \fBcrypt.conf\fR(4) is greater than
-that in the old salt, the value from \fBcrypt.conf\fR(4) is used instead. This
-allows for migration to stronger (but more time-consuming) salts on password
-change.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Committed
-_
-MT-Level Safe
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBpasswd\fR(1), \fBcrypt\fR(3C), \fBcrypt_genhash_impl\fR(3C),
-\fBcrypt_gensalt\fR(3C), \fBcrypt_gensalt_impl\fR(3C), \fBgetpassphrase\fR(3C),
-\fBcrypt.conf\fR(4), \fBpasswd\fR(4), \fBpolicy.conf\fR(4), \fBattributes\fR(5)
diff --git a/usr/src/man/man5/crypt_sha512.5 b/usr/src/man/man5/crypt_sha512.5
deleted file mode 100644
index e642ff2c0e..0000000000
--- a/usr/src/man/man5/crypt_sha512.5
+++ /dev/null
@@ -1,83 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH CRYPT_SHA512 5 "May 8, 2008"
-.SH NAME
-crypt_sha512 \- password hashing module using SHA-512 message hash algorithm
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/security/$ISA/crypt_sha512.so\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBcrypt_sha512\fR module is a one-way password hashing module for use with
-\fBcrypt\fR(3C) that uses the SHA-512 message hash algorithm. The algorithm
-identifier for \fBcrypt.conf\fR(4) and \fBpolicy.conf\fR(4) is \fB6\fR.
-.sp
-.LP
-This module is designed to make it difficult to crack passwords that use brute
-force attacks based on high speed SHA-512 implementations that use code
-inlining, unrolled loops, and table lookup.
-.sp
-.LP
-The maximum password length for \fBcrypt_sha512\fR is 255 characters.
-.sp
-.LP
-The following options can be passed to the module by means of
-\fBcrypt.conf\fR(4):
-.sp
-.ne 2
-.na
-\fB\fBrounds=\fR\fI<positive_number>\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specifies the number of rounds of SHA-512 to use in generation of the salt; the
-default number of rounds is 5000. Negative values have no effect and are
-ignored. The minimum number of rounds cannot be below 1000.
-.sp
-The number of additional rounds is stored in the salt string returned by
-\fBcrypt_gensalt\fR(3C). For example:
-.sp
-.in +2
-.nf
-$6,rounds=6000$nlxmTTpz$
-.fi
-.in -2
-
-When \fBcrypt_gensalt\fR(3C) is being used to generate a new salt, if the
-number of additional rounds configured in \fBcrypt.conf\fR(4) is greater than
-that in the old salt, the value from \fBcrypt.conf\fR(4) is used instead. This
-allows for migration to stronger (but more time-consuming) salts on password
-change.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Committed
-_
-MT-Level Safe
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBpasswd\fR(1), \fBcrypt\fR(3C), \fBcrypt_genhash_impl\fR(3C),
-\fBcrypt_gensalt\fR(3C), \fBcrypt_gensalt_impl\fR(3C), \fBgetpassphrase\fR(3C),
-\fBcrypt.conf\fR(4), \fBpasswd\fR(4), \fBpolicy.conf\fR(4), \fBattributes\fR(5)
diff --git a/usr/src/man/man5/crypt_sunmd5.5 b/usr/src/man/man5/crypt_sunmd5.5
deleted file mode 100644
index a5cec6069d..0000000000
--- a/usr/src/man/man5/crypt_sunmd5.5
+++ /dev/null
@@ -1,80 +0,0 @@
-'\" te
-.\" Copyright (c) 2002, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH CRYPT_SUNMD5 5 "Dec 23, 2003"
-.SH NAME
-crypt_sunmd5 \- password hashing module using MD5 message hash algorithm
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/security/$ISA/crypt_sunmd5.so\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBcrypt_sunmd5\fR module is a one-way password hashing module for use with
-\fBcrypt\fR(3C) that uses the MD5 message hash algorithm. The algorithm
-identifier for \fBcrypt.conf\fR(4) and \fBpolicy.conf\fR(4) is \fBmd5\fR.
-.sp
-.LP
-This module is designed to make it difficult to crack passwords that use brute
-force attacks based on high speed MD5 implementations that use code inlining,
-unrolled loops, and table lookup.
-.sp
-.LP
-The maximum password length for \fBcrypt_sunmd5\fR is 255 characters.
-.sp
-.LP
-The following options can be passed to the module by means of
-\fBcrypt.conf\fR(4):
-.sp
-.ne 2
-.na
-\fB\fBrounds=\fR\fI<positive_number>\fR\fR
-.ad
-.RS 28n
-Specifies the number of additional rounds of MD5 to use in generation of the
-salt; the default number of rounds is 4096. Negative values have no effect and
-are ignored, that is, the number of rounds cannot be lowered below 4096.
-.sp
-The number of additional rounds is stored in the salt string returned by
-\fBcrypt_gensalt\fR(3C). For example:
-.sp
-.in +2
-.nf
-$md5,rounds=1000$nlxmTTpz$
-.fi
-.in -2
-
-When \fBcrypt_gensalt\fR(3C) is being used to generate a new salt, if the
-number of additional rounds configured in \fBcrypt.conf\fR(4) is greater than
-that in the old salt, the value from \fBcrypt.conf\fR(4) is used instead. This
-allows for migration to stronger (but more time-consuming) salts on password
-change.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-MT-Level Safe
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBpasswd\fR(1), \fBcrypt\fR(3C), \fBcrypt_genhash_impl\fR(3C),
-\fBcrypt_gensalt\fR(3C), \fBcrypt_gensalt_impl\fR(3C), \fBgetpassphrase\fR(3C),
-\fBcrypt.conf\fR(4), \fBpasswd\fR(4), \fBpolicy.conf\fR(4), \fBattributes\fR(5)
diff --git a/usr/src/man/man5/crypt_unix.5 b/usr/src/man/man5/crypt_unix.5
deleted file mode 100644
index b7372ad373..0000000000
--- a/usr/src/man/man5/crypt_unix.5
+++ /dev/null
@@ -1,64 +0,0 @@
-'\" te
-.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH CRYPT_UNIX 5 "Aug 6, 2003"
-.SH NAME
-crypt_unix \- traditional UNIX crypt algorithm
-.SH DESCRIPTION
-.sp
-.LP
-The \fBcrypt_unix\fR algorithm is the traditional UNIX crypt algorithm. It is
-not considered sufficiently secure for current systems and is provided for
-backwards compatibility. The \fBcrypt_sunmd5\fR(5), \fBcrypt_bsdmd5\fR(5), or
-\fBcrypt_bsdbf\fR(5) algorithm should be used instead.
-.sp
-.LP
-The algorithm identifier for \fBpolicy.conf\fR(4) is \fB__unix__\fR. There is
-no entry in \fBcrypt.conf\fR(4) for this algorithm.
-.sp
-.LP
-The \fBcrypt_unix\fR algorithm is internal to \fBlibc\fR and provides the
-string encoding function used by \fBcrypt\fR(3C) when the first character of
-the salt is not a "$".
-.sp
-.LP
-This algorithm is based on a one-way encryption algorithm with variations
-intended (among other things) to frustrate use of hardware implementations of a
-key search. Only the first eight characters of the key passed to \fBcrypt()\fR
-are used with this algorithm; the rest are silently ignored. The salt is a
-two-character string chosen from the set [a-zA-Z0-9./]. This string is used to
-perturb the hashing algorithm in one of 4096 different ways.
-.sp
-.LP
-The maximum password length for \fBcrypt_unix\fR is 8 characters.
-.SH USAGE
-.sp
-.LP
-The return value of the \fBcrypt_unix\fR algorithm might not be portable among
-standard-conforming systems. See \fBstandards\fR(5).
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-MT-Level Safe
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBpasswd\fR(1), \fBcrypt\fR(3C), \fBcrypt_genhash_impl\fR(3C),
-\fBcrypt_gensalt\fR(3C), \fBcrypt_gensalt_impl\fR(3C), \fBgetpassphrase\fR(3C),
-\fBcrypt.conf\fR(4), \fBpasswd\fR(4), \fBpolicy.conf\fR(4),
-\fBattributes\fR(5), \fBcrypt_bsdbf\fR(5), \fBcrypt_bsdmd5\fR(5),
-\fBcrypt_sunmd5\fR(5), \fBstandards\fR(5)
diff --git a/usr/src/man/man5/crypto_certs.5 b/usr/src/man/man5/crypto_certs.5
new file mode 100644
index 0000000000..0c7ddd8db5
--- /dev/null
+++ b/usr/src/man/man5/crypto_certs.5
@@ -0,0 +1,71 @@
+'\" te
+.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH CRYPTO_CERTS 5 "Feb 23, 2007"
+.SH NAME
+crypto_certs \- directory for certificate files for Solaris Cryptographic
+Framework
+.SH SYNOPSIS
+.LP
+.nf
+\fB/etc/crypto/certs/CA\fR
+.fi
+
+.LP
+.nf
+\fB/etc/crypto/certs/SUNWobjectCA\fR
+.fi
+
+.LP
+.nf
+\fB/etc/crypto/certs/*\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fB/etc/crypto/certs\fR directory contains ASN.1 BER or PEM encoded
+certificate files for use by the Solaris Cryptographic Framework.
+.sp
+.LP
+A default installation contains root anchors and signing certificates. The
+\fBCA\fR and \fBSUNWobjectCA\fR certificates are the trust anchors for all
+other certificates. Other certificates contain the certificates used to sign
+and verify the Solaris user and kernel cryptographic plug-ins
+.sp
+.LP
+Additional signing certificates may be installed by third-party cryptographic
+providers. They should either be copied to \fB/etc/crypto/certs\fR or included
+in the package that delivers the provider.
+.sp
+.LP
+Only certificates that are issued by the \fBCA\fR or \fBSUNWobjectCA\fR
+certificates and include the organization unit "Solaris Cryptographic
+Framework" in their subject distinguished names are accepted by the Solaris
+Cryptographic Framework. This restriction is in place due to US Export Law on
+the export of open cryptographic interfaces at the time of shipping this
+revision of the product.
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR elfsign (1),
+.BR libpkcs11 (3LIB),
+.BR attributes (7)
diff --git a/usr/src/man/man5/ctf.5 b/usr/src/man/man5/ctf.5
new file mode 100644
index 0000000000..b0c7f715a7
--- /dev/null
+++ b/usr/src/man/man5/ctf.5
@@ -0,0 +1,1215 @@
+.\"
+.\" This file and its contents are supplied under the terms of the
+.\" Common Development and Distribution License ("CDDL"), version 1.0.
+.\" You may only use this file in accordance with the terms of version
+.\" 1.0 of the CDDL.
+.\"
+.\" A full copy of the text of the CDDL should have accompanied this
+.\" source. A copy of the CDDL is also available via the Internet at
+.\" http://www.illumos.org/license/CDDL.
+.\"
+.\"
+.\" Copyright (c) 2014 Joyent, Inc.
+.\"
+.Dd Sep 26, 2014
+.Dt CTF 5
+.Os
+.Sh NAME
+.Nm ctf
+.Nd Compact C Type Format
+.Sh SYNOPSIS
+.In sys/ctf.h
+.Sh DESCRIPTION
+.Nm
+is designed to be a compact representation of the C programming
+language's type information focused on serving the needs of dynamic
+tracing, debuggers, and other in-situ and post-mortem introspection
+tools.
+.Nm
+data is generally included in
+.Sy ELF
+objects and is tagged as
+.Sy SHT_PROGBITS
+to ensure that the data is accessible in a running process and in subsequent
+core dumps, if generated.
+.Lp
+The
+.Nm
+data contained in each file has information about the layout and
+sizes of C types, including intrinsic types, enumerations, structures,
+typedefs, and unions, that are used by the corresponding
+.Sy ELF
+object.
+The
+.Nm
+data may also include information about the types of global objects and
+the return type and arguments of functions in the symbol table.
+.Lp
+Because a
+.Nm
+file is often embedded inside a file, rather than being a standalone
+file itself, it may also be referred to as a
+.Nm
+.Sy container .
+.Lp
+On illumos systems,
+.Nm
+data is consumed by multiple programs.
+It can be used by the modular debugger,
+.Xr mdb 1 ,
+as well as by
+.Xr dtrace 8 .
+Programmatic access to
+.Nm
+data can be obtained through
+.Xr libctf 3LIB .
+.Lp
+The
+.Nm
+file format is broken down into seven different sections.
+The first section is the
+.Sy preamble
+and
+.Sy header ,
+which describes the version of the
+.Nm
+file, links it has to other
+.Nm
+files, and the sizes of the other sections.
+The next section is the
+.Sy label
+section,
+which provides a way of identifying similar groups of
+.Nm
+data across multiple files.
+This is followed by the
+.Sy object
+information section, which describes the type of global
+symbols.
+The subsequent section is the
+.Sy function
+information section, which describes the return
+types and arguments of functions.
+The next section is the
+.Sy type
+information section, which describes
+the format and layout of the C types themselves, and finally the last
+section is the
+.Sy string
+section, which contains the names of types, enumerations, members, and
+labels.
+.Lp
+While strictly speaking, only the
+.Sy preamble
+and
+.Sy header
+are required, to be actually useful, both the type and string
+sections are necessary.
+.Lp
+A
+.Nm
+file may contain all of the type information that it requires, or it
+may optionally refer to another
+.Nm
+file which holds the remaining types.
+When a
+.Nm
+file refers to another file, it is called the
+.Sy child
+and the file it refers to is called the
+.Sy parent .
+A given file may only refer to one parent.
+This process is called
+.Em uniquification
+because it ensures each child only has type information that is
+unique to it.
+A common example of this is that most kernel modules in illumos are uniquified
+against the kernel module
+.Sy genunix
+and the type information that comes from the
+.Sy IP
+module.
+This means that a module only has types that are unique to itself and the most
+common types in the kernel are not duplicated.
+.Sh FILE FORMAT
+This documents version
+.Em two
+of the
+.Nm
+file format.
+All applications and tools currently produce and operate on this version.
+.Lp
+The file format can be summarized with the following image, the
+following sections will cover this in more detail.
+.Bd -literal
+
+ +-------------+ 0t0
++--------| Preamble |
+| +-------------+ 0t4
+|+-------| Header |
+|| +-------------+ 0t36 + cth_lbloff
+||+------| Labels |
+||| +-------------+ 0t36 + cth_objtoff
+|||+-----| Objects |
+|||| +-------------+ 0t36 + cth_funcoff
+||||+----| Functions |
+||||| +-------------+ 0t36 + cth_typeoff
+|||||+---| Types |
+|||||| +-------------+ 0t36 + cth_stroff
+||||||+--| Strings |
+||||||| +-------------+ 0t36 + cth_stroff + cth_strlen
+|||||||
+|||||||
+|||||||
+||||||| +-- magic - vers flags
+||||||| | | | |
+||||||| +------+------+------+------+
++---------| 0xcf | 0xf1 | 0x02 | 0x00 |
+ |||||| +------+------+------+------+
+ |||||| 0 1 2 3 4
+ ||||||
+ |||||| + parent label + objects
+ |||||| | + parent name | + functions + strings
+ |||||| | | + label | | + types | + strlen
+ |||||| | | | | | | | |
+ |||||| +------+------+------+------+------+-------+-------+-------+
+ +--------| 0x00 | 0x00 | 0x00 | 0x08 | 0x36 | 0x110 | 0x5f4 | 0x611 |
+ ||||| +------+------+------+------+------+-------+-------+-------+
+ ||||| 0x04 0x08 0x0c 0x10 0x14 0x18 0x1c 0x20 0x24
+ |||||
+ ||||| + Label name
+ ||||| | + Label type
+ ||||| | | + Next label
+ ||||| | | |
+ ||||| +-------+------+-----+
+ +-----------| 0x01 | 0x42 | ... |
+ |||| +-------+------+-----+
+ |||| cth_lbloff +0x4 +0x8 cth_objtoff
+ ||||
+ ||||
+ |||| Symidx 0t15 0t43 0t44
+ |||| +------+------+------+-----+
+ +----------| 0x00 | 0x42 | 0x36 | ... |
+ ||| +------+------+------+-----+
+ ||| cth_objtoff +0x2 +0x4 +0x6 cth_funcoff
+ |||
+ ||| + CTF_TYPE_INFO + CTF_TYPE_INFO
+ ||| | + Return type |
+ ||| | | + arg0 |
+ ||| +--------+------+------+-----+
+ +---------| 0x2c10 | 0x08 | 0x0c | ... |
+ || +--------+------+------+-----+
+ || cth_funcff +0x2 +0x4 +0x6 cth_typeoff
+ ||
+ || + ctf_stype_t for type 1
+ || | integer + integer encoding
+ || | | + ctf_stype_t for type 2
+ || | | |
+ || +--------------------+-----------+-----+
+ +--------| 0x19 * 0xc01 * 0x0 | 0x1000000 | ... |
+ | +--------------------+-----------+-----+
+ | cth_typeoff +0x08 +0x0c cth_stroff
+ |
+ | +--- str 0
+ | | +--- str 1 + str 2
+ | | | |
+ | v v v
+ | +----+---+---+---+----+---+---+---+---+---+----+
+ +---| \\0 | i | n | t | \\0 | f | o | o | _ | t | \\0 |
+ +----+---+---+---+----+---+---+---+---+---+----+
+ 0 1 2 3 4 5 6 7 8 9 10 11
+.Ed
+.Lp
+Every
+.Nm
+file begins with a
+.Sy preamble ,
+followed by a
+.Sy header .
+The
+.Sy preamble
+is defined as follows:
+.Bd -literal
+typedef struct ctf_preamble {
+ ushort_t ctp_magic; /* magic number (CTF_MAGIC) */
+ uchar_t ctp_version; /* data format version number (CTF_VERSION) */
+ uchar_t ctp_flags; /* flags (see below) */
+} ctf_preamble_t;
+.Ed
+.Pp
+The
+.Sy preamble
+is four bytes long and must be four byte aligned.
+This
+.Sy preamble
+defines the version of the
+.Nm
+file which defines the format of the rest of the header.
+While the header may change in subsequent versions, the preamble will not change
+across versions, though the interpretation of its flags may change from
+version to version.
+The
+.Em ctp_magic
+member defines the magic number for the
+.Nm
+file format.
+This must always be
+.Li 0xcff1 .
+If another value is encountered, then the file should not be treated as
+a
+.Nm
+file.
+The
+.Em ctp_version
+member defines the version of the
+.Nm
+file.
+The current version is
+.Li 2 .
+It is possible to encounter an unsupported version.
+In that case, software should not try to parse the format, as it may have
+changed.
+Finally, the
+.Em ctp_flags
+member describes aspects of the file which modify its interpretation.
+The following flags are currently defined:
+.Bd -literal
+#define CTF_F_COMPRESS 0x01
+.Ed
+.Pp
+The flag
+.Sy CTF_F_COMPRESS
+indicates that the body of the
+.Nm
+file, all the data following the
+.Sy header ,
+has been compressed through the
+.Sy zlib
+library and its
+.Sy deflate
+algorithm.
+If this flag is not present, then the body has not been compressed and no
+special action is needed to interpret it.
+All offsets into the data as described by
+.Sy header ,
+always refer to the
+.Sy uncompressed
+data.
+.Lp
+In version two of the
+.Nm
+file format, the
+.Sy header
+denotes whether whether or not this
+.Nm
+file is the child of another
+.Nm
+file and also indicates the size of the remaining sections.
+The structure for the
+.Sy header ,
+logically contains a copy of the
+.Sy preamble
+and the two have a combined size of 36 bytes.
+.Bd -literal
+typedef struct ctf_header {
+ ctf_preamble_t cth_preamble;
+ uint_t cth_parlabel; /* ref to name of parent lbl uniq'd against */
+ uint_t cth_parname; /* ref to basename of parent */
+ uint_t cth_lbloff; /* offset of label section */
+ uint_t cth_objtoff; /* offset of object section */
+ uint_t cth_funcoff; /* offset of function section */
+ uint_t cth_typeoff; /* offset of type section */
+ uint_t cth_stroff; /* offset of string section */
+ uint_t cth_strlen; /* length of string section in bytes */
+} ctf_header_t;
+.Ed
+.Pp
+After the
+.Sy preamble ,
+the next two members
+.Em cth_parlablel
+and
+.Em cth_parname ,
+are used to identify the parent.
+The value of both members are offsets into the
+.Sy string
+section which point to the start of a null-terminated string.
+For more information on the encoding of strings, see the subsection on
+.Sx String Identifiers .
+If the value of either is zero, then there is no entry for that
+member.
+If the member
+.Em cth_parlabel
+is set, then the
+.Em ctf_parname
+member must be set, otherwise it will not be possible to find the
+parent.
+If
+.Em ctf_parname
+is set, it is not necessary to define
+.Em cth_parlabel ,
+as the parent may not have a label.
+For more information on labels and their interpretation, see
+.Sx The Label Section .
+.Lp
+The remaining members (excepting
+.Em cth_strlen )
+describe the beginning of the corresponding sections.
+These offsets are relative to the end of the
+.Sy header .
+Therefore, something with an offset of 0 is at an offset of thirty-six
+bytes relative to the start of the
+.Nm
+file.
+The difference between members indicates the size of the section itself.
+Different offsets have different alignment requirements.
+The start of the
+.Em cth_objotoff
+and
+.Em cth_funcoff
+must be two byte aligned, while the sections
+.Em cth_lbloff
+and
+.Em cth_typeoff
+must be four-byte aligned.
+The section
+.Em cth_stroff
+has no alignment requirements.
+To calculate the size of a given section, excepting the
+.Sy string
+section, one should subtract the offset of the section from the following one.
+For example, the size of the
+.Sy types
+section can be calculated by subtracting
+.Em cth_stroff
+from
+.Em cth_typeoff .
+.Lp
+Finally, the member
+.Em cth_strlen
+describes the length of the string section itself.
+From it, you can also calculate the size of the entire
+.Nm
+file by adding together the size of the
+.Sy ctf_header_t ,
+the offset of the string section in
+.Em cth_stroff ,
+and the size of the string section in
+.Em cth_srlen .
+.Ss Type Identifiers
+Through the
+.Nm ctf
+data, types are referred to by identifiers.
+A given
+.Nm
+file supports up to 32767 (0x7fff) types.
+The first valid type identifier is 0x1.
+When a given
+.Nm
+file is a child, indicated by a non-zero entry for the
+.Sy header Ns 's
+.Em cth_parname ,
+then the first valid type identifier is 0x8000 and the last is 0xffff.
+In this case, type identifiers 0x1 through 0x7fff are references to the
+parent.
+.Lp
+The type identifier zero is a sentinel value used to indicate that there
+is no type information available or it is an unknown type.
+.Lp
+Throughout the file format, the identifier is stored in different sized
+values; however, the minimum size to represent a given identifier is a
+.Sy uint16_t .
+Other consumers of
+.Nm
+information may use larger or opaque identifiers.
+.Ss String Identifiers
+String identifiers are always encoded as four byte unsigned integers
+which are an offset into a string table.
+The
+.Nm
+format supports two different string tables which have an identifier of
+zero or one.
+This identifier is stored in the high-order bit of the unsigned four byte
+offset.
+Therefore, the maximum supported offset into one of these tables is 0x7ffffffff.
+.Lp
+Table identifier zero, always refers to the
+.Sy string
+section in the CTF file itself.
+String table identifier one refers to an external string table which is the ELF
+string table for the ELF symbol table associated with the
+.Nm
+container.
+.Ss Type Encoding
+Every
+.Nm
+type begins with metadata encoded into a
+.Sy uint16_t .
+This encoded information tells us three different pieces of information:
+.Bl -bullet -offset indent -compact
+.It
+The kind of the type
+.It
+Whether this type is a root type or not
+.It
+The length of the variable data
+.El
+.Lp
+The 16 bits that make up the encoding are broken down such that you have
+five bits for the kind, one bit for indicating whether or not it is a
+root type, and 10 bits for the variable length.
+This is laid out as follows:
+.Bd -literal -offset indent
++--------------------+
+| kind | root | vlen |
++--------------------+
+15 11 10 9 0
+.Ed
+.Lp
+The current version of the file format defines 14 different kinds.
+The interpretation of these different kinds will be discussed in the section
+.Sx The Type Section .
+If a kind is encountered that is not listed below, then it is not a valid
+.Nm
+file.
+The kinds are defined as follows:
+.Bd -literal -offset indent
+#define CTF_K_UNKNOWN 0
+#define CTF_K_INTEGER 1
+#define CTF_K_FLOAT 2
+#define CTF_K_POINTER 3
+#define CTF_K_ARRAY 4
+#define CTF_K_FUNCTION 5
+#define CTF_K_STRUCT 6
+#define CTF_K_UNION 7
+#define CTF_K_ENUM 8
+#define CTF_K_FORWARD 9
+#define CTF_K_TYPEDEF 10
+#define CTF_K_VOLATILE 11
+#define CTF_K_CONST 12
+#define CTF_K_RESTRICT 13
+.Ed
+.Lp
+Programs directly reference many types; however, other types are referenced
+indirectly because they are part of some other structure.
+These types that are referenced directly and used are called
+.Sy root
+types.
+Other types may be used indirectly, for example, a program may reference
+a structure directly, but not one of its members which has a type.
+That type is not considered a
+.Sy root
+type.
+If a type is a
+.Sy root
+type, then it will have bit 10 set.
+.Lp
+The variable length section is specific to each kind and is discussed in the
+section
+.Sx The Type Section .
+.Lp
+The following macros are useful for constructing and deconstructing the encoded
+type information:
+.Bd -literal -offset indent
+
+#define CTF_MAX_VLEN 0x3ff
+#define CTF_INFO_KIND(info) (((info) & 0xf800) >> 11)
+#define CTF_INFO_ISROOT(info) (((info) & 0x0400) >> 10)
+#define CTF_INFO_VLEN(info) (((info) & CTF_MAX_VLEN))
+
+#define CTF_TYPE_INFO(kind, isroot, vlen) \\
+ (((kind) << 11) | (((isroot) ? 1 : 0) << 10) | ((vlen) & CTF_MAX_VLEN))
+.Ed
+.Ss The Label Section
+When consuming
+.Nm
+data, it is often useful to know whether two different
+.Nm
+containers come from the same source base and version.
+For example, when building illumos, there are many kernel modules that are built
+against a single collection of source code.
+A label is encoded into the
+.Nm
+files that corresponds with the particular build.
+This ensures that if files on the system were to become mixed up from multiple
+releases, that they are not used together by tools, particularly when a child
+needs to refer to a type in the parent.
+Because they are linked used the type identifiers, if the wrong parent is used
+then the wrong type will be encountered.
+.Lp
+Each label is encoded in the file format using the following eight byte
+structure:
+.Bd -literal
+typedef struct ctf_lblent {
+ uint_t ctl_label; /* ref to name of label */
+ uint_t ctl_typeidx; /* last type associated with this label */
+} ctf_lblent_t;
+.Ed
+.Lp
+Each label has two different components, a name and a type identifier.
+The name is encoded in the
+.Em ctl_label
+member which is in the format defined in the section
+.Sx String Identifiers .
+Generally, the names of all labels are found in the internal string
+section.
+.Lp
+The type identifier encoded in the member
+.Em ctl_typeidx
+refers to the last type identifier that a label refers to in the current
+file.
+Labels only refer to types in the current file, if the
+.Nm
+file is a child, then it will have the same label as its parent;
+however, its label will only refer to its types, not its parents.
+.Lp
+It is also possible, though rather uncommon, for a
+.Nm
+file to have multiple labels.
+Labels are placed one after another, every eight bytes.
+When multiple labels are present, types may only belong to a single label.
+.Ss The Object Section
+The object section provides a mapping from ELF symbols of type
+.Sy STT_OBJECT
+in the symbol table to a type identifier.
+Every entry in this section is a
+.Sy uint16_t
+which contains a type identifier as described in the section
+.Sx Type Identifiers .
+If there is no information for an object, then the type identifier 0x0
+is stored for that entry.
+.Lp
+To walk the object section, you need to have a corresponding
+.Sy symbol table
+in the ELF object that contains the
+.Nm
+data.
+Not every object is included in this section.
+Specifically, when walking the symbol table.
+An entry is skipped if it matches any of the following conditions:
+.Lp
+.Bl -bullet -offset indent -compact
+.It
+The symbol type is not
+.Sy STT_OBJECT
+.It
+The symbol's section index is
+.Sy SHN_UNDEF
+.It
+The symbol's name offset is zero
+.It
+The symbol's section index is
+.Sy SHN_ABS
+and the value of the symbol is zero.
+.It
+The symbol's name is
+.Li _START_
+or
+.Li _END_ .
+These are skipped because they are used for scoping local symbols in
+ELF.
+.El
+.Lp
+The following sample code shows an example of iterating the object
+section and skipping the correct symbols:
+.Bd -literal
+#include <gelf.h>
+#include <stdio.h>
+
+/*
+ * Given the start of the object section in the CTF file, the number of symbols,
+ * and the ELF Data sections for the symbol table and the string table, this
+ * prints the type identifiers that correspond to objects. Note, a more robust
+ * implementation should ensure that they don't walk beyond the end of the CTF
+ * object section.
+ */
+static int
+walk_symbols(uint16_t *objtoff, Elf_Data *symdata, Elf_Data *strdata,
+ long nsyms)
+{
+ long i;
+ uintptr_t strbase = strdata->d_buf;
+
+ for (i = 1; i < nsyms; i++, objftoff++) {
+ const char *name;
+ GElf_Sym sym;
+
+ if (gelf_getsym(symdata, i, &sym) == NULL)
+ return (1);
+
+ if (GELF_ST_TYPE(sym.st_info) != STT_OBJECT)
+ continue;
+ if (sym.st_shndx == SHN_UNDEF || sym.st_name == 0)
+ continue;
+ if (sym.st_shndx == SHN_ABS && sym.st_value == 0)
+ continue;
+ name = (const char *)(strbase + sym.st_name);
+ if (strcmp(name, "_START_") == 0 || strcmp(name, "_END_") == 0)
+ continue;
+
+ (void) printf("Symbol %d has type %d\n", i, *objtoff);
+ }
+
+ return (0);
+}
+.Ed
+.Ss The Function Section
+The function section of the
+.Nm
+file encodes the types of both the function's arguments and the function's
+return type.
+Similar to
+.Sx The Object Section ,
+the function section encodes information for all symbols of type
+.Sy STT_FUNCTION ,
+excepting those that fit specific criteria.
+Unlike with objects, because functions have a variable number of arguments, they
+start with a type encoding as defined in
+.Sx Type Encoding ,
+which is the size of a
+.Sy uint16_t .
+For functions which have no type information available, they are encoded as
+.Li CTF_TYPE_INFO(CTF_K_UNKNOWN, 0, 0) .
+Functions with arguments are encoded differently.
+Here, the variable length is turned into the number of arguments in the
+function.
+If a function is a
+.Sy varargs
+type function, then the number of arguments is increased by one.
+Functions with type information are encoded as:
+.Li CTF_TYPE_INFO(CTF_K_FUNCTION, 0, nargs) .
+.Lp
+For functions that have no type information, nothing else is encoded, and the
+next function is encoded.
+For functions with type information, the next
+.Sy uint16_t
+is encoded with the type identifier of the return type of the function.
+It is followed by each of the type identifiers of the arguments, if any exist,
+in the order that they appear in the function.
+Therefore, argument 0 is the first type identifier and so on.
+When a function has a final varargs argument, that is encoded with the type
+identifier of zero.
+.Lp
+Like
+.Sx The Object Section ,
+the function section is encoded in the order of the symbol table.
+It has similar, but slightly different considerations from objects.
+While iterating the symbol table, if any of the following conditions are true,
+then the entry is skipped and no corresponding entry is written:
+.Lp
+.Bl -bullet -offset indent -compact
+.It
+The symbol type is not
+.Sy STT_FUNCTION
+.It
+The symbol's section index is
+.Sy SHN_UNDEF
+.It
+The symbol's name offset is zero
+.It
+The symbol's name is
+.Li _START_
+or
+.Li _END_ .
+These are skipped because they are used for scoping local symbols in
+ELF.
+.El
+.Ss The Type Section
+The type section is the heart of the
+.Nm
+data.
+It encodes all of the information about the types themselves.
+The base of the type information comes in two forms, a short form and a long
+form, each of which may be followed by a variable number of arguments.
+The following definitions describe the short and long forms:
+.Bd -literal
+#define CTF_MAX_SIZE 0xfffe /* max size of a type in bytes */
+#define CTF_LSIZE_SENT 0xffff /* sentinel for ctt_size */
+#define CTF_MAX_LSIZE UINT64_MAX
+
+typedef struct ctf_stype {
+ uint_t ctt_name; /* reference to name in string table */
+ ushort_t ctt_info; /* encoded kind, variant length */
+ union {
+ ushort_t _size; /* size of entire type in bytes */
+ ushort_t _type; /* reference to another type */
+ } _u;
+} ctf_stype_t;
+
+typedef struct ctf_type {
+ uint_t ctt_name; /* reference to name in string table */
+ ushort_t ctt_info; /* encoded kind, variant length */
+ union {
+ ushort_t _size; /* always CTF_LSIZE_SENT */
+ ushort_t _type; /* do not use */
+ } _u;
+ uint_t ctt_lsizehi; /* high 32 bits of type size in bytes */
+ uint_t ctt_lsizelo; /* low 32 bits of type size in bytes */
+} ctf_type_t;
+
+#define ctt_size _u._size /* for fundamental types that have a size */
+#define ctt_type _u._type /* for types that reference another type */
+.Ed
+.Pp
+Type sizes are stored in
+.Sy bytes .
+The basic small form uses a
+.Sy ushort_t
+to store the number of bytes.
+If the number of bytes in a structure would exceed 0xfffe, then the alternate
+form, the
+.Sy ctf_type_t ,
+is used instead.
+To indicate that the larger form is being used, the member
+.Em ctt_size
+is set to value of
+.Sy CTF_LSIZE_SENT
+(0xffff).
+In general, when going through the type section, consumers use the
+.Sy ctf_type_t
+structure, but pay attention to the value of the member
+.Em ctt_size
+to determine whether they should increment their scan by the size of the
+.Sy ctf_stype_t
+or
+.Sy ctf_type_t .
+Not all kinds of types use
+.Sy ctt_size .
+Those which do not, will always use the
+.Sy ctf_stype_t
+structure.
+The individual sections for each kind have more information.
+.Lp
+Types are written out in order.
+Therefore the first entry encountered has a type id of 0x1, or 0x8000 if a
+child.
+The member
+.Em ctt_name
+is encoded as described in the section
+.Sx String Identifiers .
+The string that it points to is the name of the type.
+If the identifier points to an empty string (one that consists solely of a null
+terminator) then the type does not have a name, this is common with anonymous
+structures and unions that only have a typedef to name them, as well as,
+pointers and qualifiers.
+.Lp
+The next member, the
+.Em ctt_info ,
+is encoded as described in the section
+.Sx Type Encoding .
+The types kind tells us how to interpret the remaining data in the
+.Sy ctf_type_t
+and any variable length data that may exist.
+The rest of this section will be broken down into the interpretation of the
+various kinds.
+.Ss Encoding of Integers
+Integers, which are of type
+.Sy CTF_K_INTEGER ,
+have no variable length arguments.
+Instead, they are followed by a four byte
+.Sy uint_t
+which describes their encoding.
+All integers must be encoded with a variable length of zero.
+The
+.Em ctt_size
+member describes the length of the integer in bytes.
+In general, integer sizes will be rounded up to the closest power of two.
+.Lp
+The integer encoding contains three different pieces of information:
+.Bl -bullet -offset indent -compact
+.It
+The encoding of the integer
+.It
+The offset in
+.Sy bits
+of the type
+.It
+The size in
+.Sy bits
+of the type
+.El
+.Pp
+This encoding can be expressed through the following macros:
+.Bd -literal -offset indent
+#define CTF_INT_ENCODING(data) (((data) & 0xff000000) >> 24)
+#define CTF_INT_OFFSET(data) (((data) & 0x00ff0000) >> 16)
+#define CTF_INT_BITS(data) (((data) & 0x0000ffff))
+
+#define CTF_INT_DATA(encoding, offset, bits) \\
+ (((encoding) << 24) | ((offset) << 16) | (bits))
+.Ed
+.Pp
+The following flags are defined for the encoding at this time:
+.Bd -literal -offset indent
+#define CTF_INT_SIGNED 0x01
+#define CTF_INT_CHAR 0x02
+#define CTF_INT_BOOL 0x04
+#define CTF_INT_VARARGS 0x08
+.Ed
+.Lp
+By default, an integer is considered to be unsigned, unless it has the
+.Sy CTF_INT_SIGNED
+flag set.
+If the flag
+.Sy CTF_INT_CHAR
+is set, that indicates that the integer is of a type that stores character
+data, for example the intrinsic C type
+.Sy char
+would have the
+.Sy CTF_INT_CHAR
+flag set.
+If the flag
+.Sy CTF_INT_BOOL
+is set, that indicates that the integer represents a boolean type.
+For example, the intrinsic C type
+.Sy _Bool
+would have the
+.Sy CTF_INT_BOOL
+flag set.
+Finally, the flag
+.Sy CTF_INT_VARARGS
+indicates that the integer is used as part of a variable number of arguments.
+This encoding is rather uncommon.
+.Ss Encoding of Floats
+Floats, which are of type
+.Sy CTF_K_FLOAT ,
+are similar to their integer counterparts.
+They have no variable length arguments and are followed by a four byte encoding
+which describes the kind of float that exists.
+The
+.Em ctt_size
+member is the size, in bytes, of the float.
+The float encoding has three different pieces of information inside of it:
+.Lp
+.Bl -bullet -offset indent -compact
+.It
+The specific kind of float that exists
+.It
+The offset in
+.Sy bits
+of the float
+.It
+The size in
+.Sy bits
+of the float
+.El
+.Lp
+This encoding can be expressed through the following macros:
+.Bd -literal -offset indent
+#define CTF_FP_ENCODING(data) (((data) & 0xff000000) >> 24)
+#define CTF_FP_OFFSET(data) (((data) & 0x00ff0000) >> 16)
+#define CTF_FP_BITS(data) (((data) & 0x0000ffff))
+
+#define CTF_FP_DATA(encoding, offset, bits) \\
+ (((encoding) << 24) | ((offset) << 16) | (bits))
+.Ed
+.Lp
+Where as the encoding for integers was a series of flags, the encoding for
+floats maps to a specific kind of float.
+It is not a flag-based value.
+The kinds of floats correspond to both their size, and the encoding.
+This covers all of the basic C intrinsic floating point types.
+The following are the different kinds of floats represented in the encoding:
+.Bd -literal -offset indent
+#define CTF_FP_SINGLE 1 /* IEEE 32-bit float encoding */
+#define CTF_FP_DOUBLE 2 /* IEEE 64-bit float encoding */
+#define CTF_FP_CPLX 3 /* Complex encoding */
+#define CTF_FP_DCPLX 4 /* Double complex encoding */
+#define CTF_FP_LDCPLX 5 /* Long double complex encoding */
+#define CTF_FP_LDOUBLE 6 /* Long double encoding */
+#define CTF_FP_INTRVL 7 /* Interval (2x32-bit) encoding */
+#define CTF_FP_DINTRVL 8 /* Double interval (2x64-bit) encoding */
+#define CTF_FP_LDINTRVL 9 /* Long double interval (2x128-bit) encoding */
+#define CTF_FP_IMAGRY 10 /* Imaginary (32-bit) encoding */
+#define CTF_FP_DIMAGRY 11 /* Long imaginary (64-bit) encoding */
+#define CTF_FP_LDIMAGRY 12 /* Long double imaginary (128-bit) encoding */
+.Ed
+.Ss Encoding of Arrays
+Arrays, which are of type
+.Sy CTF_K_ARRAY ,
+have no variable length arguments.
+They are followed by a structure which describes the number of elements in the
+array, the type identifier of the elements in the array, and the type identifier
+of the index of the array.
+With arrays, the
+.Em ctt_size
+member is set to zero.
+The structure that follows an array is defined as:
+.Bd -literal
+typedef struct ctf_array {
+ ushort_t cta_contents; /* reference to type of array contents */
+ ushort_t cta_index; /* reference to type of array index */
+ uint_t cta_nelems; /* number of elements */
+} ctf_array_t;
+.Ed
+.Lp
+The
+.Em cta_contents
+and
+.Em cta_index
+members of the
+.Sy ctf_array_t
+are type identifiers which are encoded as per the section
+.Sx Type Identifiers .
+The member
+.Em cta_nelems
+is a simple four byte unsigned count of the number of elements.
+This count may be zero when encountering C99's flexible array members.
+.Ss Encoding of Functions
+Function types, which are of type
+.Sy CTF_K_FUNCTION ,
+use the variable length list to be the number of arguments in the function.
+When the function has a final member which is a varargs, then the argument count
+is incremented by one to account for the variable argument.
+Here, the
+.Em ctt_type
+member is encoded with the type identifier of the return type of the function.
+Note that the
+.Em ctt_size
+member is not used here.
+.Lp
+The variable argument list contains the type identifiers for the arguments of
+the function, if any.
+Each one is represented by a
+.Sy uint16_t
+and encoded according to the
+.Sx Type Identifiers
+section.
+If the function's last argument is of type varargs, then it is also written out,
+but the type identifier is zero.
+This is included in the count of the function's arguments.
+.Ss Encoding of Structures and Unions
+Structures and Unions, which are encoded with
+.Sy CTF_K_STRUCT
+and
+.Sy CTF_K_UNION
+respectively, are very similar constructs in C.
+The main difference between them is the fact that every member of a structure
+follows one another, where as in a union, all members share the same memory.
+They are also very similar in terms of their encoding in
+.Nm .
+The variable length argument for structures and unions represents the number of
+members that they have.
+The value of the member
+.Em ctt_size
+is the size of the structure and union.
+There are two different structures which are used to encode members in the
+variable list.
+When the size of a structure or union is greater than or equal to the large
+member threshold, 8192, then a different structure is used to encode the member,
+all members are encoded using the same structure.
+The structure for members is as follows:
+.Bd -literal
+typedef struct ctf_member {
+ uint_t ctm_name; /* reference to name in string table */
+ ushort_t ctm_type; /* reference to type of member */
+ ushort_t ctm_offset; /* offset of this member in bits */
+} ctf_member_t;
+
+typedef struct ctf_lmember {
+ uint_t ctlm_name; /* reference to name in string table */
+ ushort_t ctlm_type; /* reference to type of member */
+ ushort_t ctlm_pad; /* padding */
+ uint_t ctlm_offsethi; /* high 32 bits of member offset in bits */
+ uint_t ctlm_offsetlo; /* low 32 bits of member offset in bits */
+} ctf_lmember_t;
+.Ed
+.Lp
+Both the
+.Em ctm_name
+and
+.Em ctlm_name
+refer to the name of the member.
+The name is encoded as an offset into the string table as described by the
+section
+.Sx String Identifiers .
+The members
+.Sy ctm_type
+and
+.Sy ctlm_type
+both refer to the type of the member.
+They are encoded as per the section
+.Sx Type Identifiers .
+.Lp
+The last piece of information that is present is the offset which describes the
+offset in memory that the member begins at.
+For unions, this value will always be zero because the start of unions in memory
+is always zero.
+For structures, this is the offset in
+.Sy bits
+that the member begins at.
+Note that a compiler may lay out a type with padding.
+This means that the difference in offset between two consecutive members may be
+larger than the size of the member.
+When the size of the overall structure is strictly less than 8192 bytes, the
+normal structure,
+.Sy ctf_member_t ,
+is used and the offset in bits is stored in the member
+.Em ctm_offset .
+However, when the size of the structure is greater than or equal to 8192 bytes,
+then the number of bits is split into two 32-bit quantities.
+One member,
+.Em ctlm_offsethi ,
+represents the upper 32 bits of the offset, while the other member,
+.Em ctlm_offsetlo ,
+represents the lower 32 bits of the offset.
+These can be joined together to get a 64-bit sized offset in bits by shifting
+the member
+.Em ctlm_offsethi
+to the left by thirty two and then doing a binary or of
+.Em ctlm_offsetlo .
+.Ss Encoding of Enumerations
+Enumerations, noted by the type
+.Sy CTF_K_ENUM ,
+are similar to structures.
+Enumerations use the variable list to note the number of values that the
+enumeration contains, which we'll term enumerators.
+In C, an enumeration is always equivalent to the intrinsic type
+.Sy int ,
+thus the value of the member
+.Em ctt_size
+is always the size of an integer which is determined based on the current model.
+For illumos systems, this will always be 4, as an integer is always defined to
+be 4 bytes large in both
+.Sy ILP32
+and
+.Sy LP64 ,
+regardless of the architecture.
+.Lp
+The enumerators encoded in an enumeration have the following structure in the
+variable list:
+.Bd -literal
+typedef struct ctf_enum {
+ uint_t cte_name; /* reference to name in string table */
+ int cte_value; /* value associated with this name */
+} ctf_enum_t;
+.Ed
+.Pp
+The member
+.Em cte_name
+refers to the name of the enumerator's value, it is encoded according to the
+rules in the section
+.Sx String Identifiers .
+The member
+.Em cte_value
+contains the integer value of this enumerator.
+.Ss Encoding of Forward References
+Forward references, types of kind
+.Sy CTF_K_FORWARD ,
+in a
+.Nm
+file refer to types which may not have a definition at all, only a name.
+If the
+.Nm
+file is a child, then it may be that the forward is resolved to an
+actual type in the parent, otherwise the definition may be in another
+.Nm
+container or may not be known at all.
+The only member of the
+.Sy ctf_type_t
+that matters for a forward declaration is the
+.Em ctt_name
+which points to the name of the forward reference in the string table as
+described earlier.
+There is no other information recorded for forward references.
+.Ss Encoding of Pointers, Typedefs, Volatile, Const, and Restrict
+Pointers, typedefs, volatile, const, and restrict are all similar in
+.Nm .
+They all refer to another type.
+In the case of typedefs, they provide an alternate name, while volatile, const,
+and restrict change how the type is interpreted in the C programming language.
+This covers the
+.Nm
+kinds
+.Sy CTF_K_POINTER ,
+.Sy CTF_K_TYPEDEF ,
+.Sy CTF_K_VOLATILE ,
+.Sy CTF_K_RESTRICT ,
+and
+.Sy CTF_K_CONST .
+.Lp
+These types have no variable list entries and use the member
+.Em ctt_type
+to refer to the base type that they modify.
+.Ss Encoding of Unknown Types
+Types with the kind
+.Sy CTF_K_UNKNOWN
+are used to indicate gaps in the type identifier space.
+These entries consume an identifier, but do not define anything.
+Nothing should refer to these gap identifiers.
+.Ss Dependencies Between Types
+C types can be imagined as a directed, cyclic, graph.
+Structures and unions may refer to each other in a way that creates a cyclic
+dependency.
+In cases such as these, the entire type section must be read in and processed.
+Consumers must not assume that every type can be laid out in dependency order;
+they cannot.
+.Ss The String Section
+The last section of the
+.Nm
+file is the
+.Sy string
+section.
+This section encodes all of the strings that appear throughout the other
+sections.
+It is laid out as a series of characters followed by a null terminator.
+Generally, all names are written out in ASCII, as most C compilers do not allow
+and characters to appear in identifiers outside of a subset of ASCII.
+However, any extended characters sets should be written out as a series of UTF-8
+bytes.
+.Lp
+The first entry in the section, at offset zero, is a single null
+terminator to reference the empty string.
+Following that, each C string should be written out, including the null
+terminator.
+Offsets that refer to something in this section should refer to the first byte
+which begins a string.
+Beyond the first byte in the section being the null terminator, the order of
+strings is unimportant.
+.Sh Data Encoding and ELF Considerations
+.Nm
+data is generally included in ELF objects which specify information to
+identify the architecture and endianness of the file.
+A
+.Nm
+container inside such an object must match the endianness of the ELF object.
+Aside from the question of the endian encoding of data, there should be no other
+differences between architectures.
+While many of the types in this document refer to non-fixed size C integral
+types, they are equivalent in the models
+.Sy ILP32
+and
+.Sy LP64 .
+If any other model is being used with
+.Nm
+data that has different sizes, then it must not use the model's sizes for
+those integral types and instead use the fixed size equivalents based on an
+.Sy ILP32
+environment.
+.Lp
+When placing a
+.Nm
+container inside of an ELF object, there are certain conventions that are
+expected for the purposes of tooling being able to find the
+.Nm
+data.
+In particular, a given ELF object should only contain a single
+.Nm
+section.
+Multiple containers should be merged together into a single one.
+.Lp
+The
+.Nm
+file should be included in its own ELF section.
+The section's name must be
+.Ql .SUNW_ctf .
+The type of the section must be
+.Sy SHT_PROGBITS .
+The section should have a link set to the symbol table and its address
+alignment must be 4.
+.Sh SEE ALSO
+.Xr mdb 1 ,
+.Xr gelf 3ELF ,
+.Xr libelf 3LIB ,
+.Xr a.out 5 ,
+.Xr dtrace 8
diff --git a/usr/src/man/man5/d_passwd.5 b/usr/src/man/man5/d_passwd.5
new file mode 100644
index 0000000000..06684c43ae
--- /dev/null
+++ b/usr/src/man/man5/d_passwd.5
@@ -0,0 +1,199 @@
+'\" te
+.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH D_PASSWD 5 "Sep 2, 2004"
+.SH NAME
+d_passwd \- dial-up password file
+.SH SYNOPSIS
+.LP
+.nf
+\fB/etc/d_passwd\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+A dial-up password is an additional password required of users who access the
+computer through a modem or dial-up port. The correct password must be entered
+before the user is granted access to the computer.
+.sp
+.LP
+\fBd_passwd\fR is an \fBASCII\fR file which contains a list of executable
+programs (typically shells) that require a dial-up password and the associated
+encrypted passwords. When a user attempts to log in on any of the ports listed
+in the \fBdialups\fR file (see \fBdialups\fR(5)), the login program looks at
+the user's login entry stored in the \fBpasswd\fR file (see \fBpasswd\fR(5)),
+and compares the login shell field to the entries in \fBd_passwd\fR. These
+entries determine whether the user will be required to supply a dial-up
+password.
+.sp
+.LP
+Each entry in \fBd_passwd\fR is a single line of the form:
+.sp
+.in +2
+.nf
+\fIlogin-shell\fR\fB:\fR\fIpassword\fR\fB:\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+where
+.sp
+.ne 2
+.na
+\fB\fIlogin-shell\fR\fR
+.ad
+.RS 15n
+The name of the login program that will require an additional dial-up password.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIpassword\fR\fR
+.ad
+.RS 15n
+An encrypted password. Users accessing the computer through a dial-up port or
+modem using \fIlogin-shell\fR will be required to enter this password before
+gaining access to the computer.
+.RE
+
+.sp
+.LP
+\fBd_passwd\fR should be owned by the \fBroot\fR user and the \fBroot\fR group.
+The file should have read and write permissions for the owner (\fBroot\fR)
+only.
+.sp
+.LP
+If the user's login program in the \fBpasswd\fR file is not found in
+\fBd_passwd\fR or if the login shell field in \fBpasswd\fR is empty, the user
+must supply the default password. The default password is the entry for
+\fB/usr/bin/sh\fR. If \fBd_passwd\fR has no entry for \fB/usr/bin/sh\fR, then
+those users whose login shell field in \fBpasswd\fR is empty or does not match
+any entry in \fBd_passwd\fR will not be prompted for a dial-up password.
+.sp
+.LP
+Dial-up logins are disabled if \fBd_passwd\fR has only the following entry:
+.sp
+.in +2
+.nf
+/usr/bin/sh:*:
+.fi
+.in -2
+.sp
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRSample \fBd_passwd\fR file.
+.sp
+.LP
+Here is a sample \fBd_passwd\fR file:
+
+.sp
+.in +2
+.nf
+/usr/lib/uucp/uucico:q.mJzTnu8icF0:
+/usr/bin/csh:6k/7KCFRPNVXg:
+/usr/bin/ksh:9df/FDf.4jkRt:
+/usr/bin/sh:41FuGVzGcDJlw:
+.fi
+.in -2
+.sp
+
+.SS "Generating An Encrypted Password"
+.sp
+.LP
+The \fBpasswd\fR (see \fBpasswd\fR(1)) utility can be used to generate the
+encrypted password for each login program. \fBpasswd\fR generates encrypted
+passwords for users and places the password in the \fBshadow\fR (see
+\fBshadow\fR(5)) file. Passwords for the \fBd_passwd\fR file will need to be
+generated by first adding a temporary user id using \fBuseradd\fR (see
+\fBuseradd\fR(8)), and then using \fBpasswd\fR(1) to generate the desired
+password in the \fBshadow\fR file. Once the encrypted version of the password
+has been created, it can be copied to the \fBd_passwd\fR file.
+.sp
+.LP
+For example:
+.RS +4
+.TP
+1.
+Type \fBuseradd\fR \fBtempuser\fR and press Return. This creates a user
+named \fBtempuser\fR.
+.RE
+.RS +4
+.TP
+2.
+Type \fBpasswd\fR \fBtempuser\fR and press Return. This creates an encrypted
+password for \fBtempuser\fR and places it in the \fBshadow\fR file.
+.RE
+.RS +4
+.TP
+3.
+Find the entry for \fBtempuser\fR in the \fBshadow\fR file and copy the
+encrypted password to the desired entry in the \fBd_passwd\fR file.
+.RE
+.RS +4
+.TP
+4.
+Type \fBuserdel\fR \fBtempuser\fR and press Return to delete \fBtempuser\fR.
+.RE
+.sp
+.LP
+These steps must be executed as the \fBroot\fR user.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/d_passwd\fR\fR
+.ad
+.RS 17n
+dial-up password file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/dialups\fR\fR
+.ad
+.RS 17n
+list of dial-up ports requiring dial-up passwords
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/passwd\fR\fR
+.ad
+.RS 17n
+password file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/shadow\fR\fR
+.ad
+.RS 17n
+shadow password file
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR passwd (1),
+.BR dialups (5),
+.BR passwd (5),
+.BR shadow (5),
+.BR useradd (8)
+.SH WARNINGS
+.sp
+.LP
+When creating a new dial-up password, be sure to remain logged in on at least
+one terminal while testing the new password. This ensures that there is an
+available terminal from which you can correct any mistakes that were made when
+the new password was added.
diff --git a/usr/src/man/man5/dacf.conf.5 b/usr/src/man/man5/dacf.conf.5
new file mode 100644
index 0000000000..e435ef4f39
--- /dev/null
+++ b/usr/src/man/man5/dacf.conf.5
@@ -0,0 +1,37 @@
+'\" te
+.\" Copyright (c) 2001 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH DACF.CONF 5 "May 15, 2001"
+.SH NAME
+dacf.conf \- device auto-configuration configuration file
+.SH SYNOPSIS
+.LP
+.nf
+\fB/etc/dacf.conf\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The kernel uses the \fBdacf.conf\fR file to automatically configure hot plugged
+devices. Because the \fBdacf.conf\fR file contains important kernel state
+information, it should not be modified.
+.sp
+.LP
+The format of the \fB/etc/dacf.conf\fR file is not public and might change in
+versions of the Solaris operating environment that are not compatible with
+Solaris 8.
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7)
+.SH NOTES
+.sp
+.LP
+ This document does not constitute an \fBAPI\fR. The \fB/etc/dacf.conf\fR file
+might not exist or might contain different contents or interpretations in
+versions of the Solaris operating environment that are not compatible with
+Solaris 8. The existence of this notice does not imply that any other
+documentation lacking this notice constitutes an \fBAPI\fR.
diff --git a/usr/src/man/man5/dat.conf.5 b/usr/src/man/man5/dat.conf.5
new file mode 100644
index 0000000000..6fff1a5487
--- /dev/null
+++ b/usr/src/man/man5/dat.conf.5
@@ -0,0 +1,195 @@
+'\" te
+.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH DAT.CONF 5 "Jun 18, 2004"
+.SH NAME
+dat.conf \- DAT static registry
+.SH SYNOPSIS
+.LP
+.nf
+\fB/etc/dat/dat.conf\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The DAT static registry, \fB/etc/dat/dat.conf\fR is a system-wide data resource
+maintained by the system administrative command \fBdatadm\fR(8).
+.sp
+.LP
+\fB/etc/dat/dat.conf\fR contains a list of interface adapters supported by
+uDAPL service providers. An interface adapter on Infiniband (IB) corresponds to
+an IPoIB device instance, for example, \fBibd0\fR. An IPoIB device name
+represents an IP interface plumbed by \fBifconfig\fR(8) on an IB
+partition/Host Channel Adapter port combination.
+.sp
+.LP
+Each entry in the DAT static registry is a single line that contains eight
+fields. Fields are separated by a SPACE. Lines that begin with a pound sign
+(\fB#\fR) are considered comments. All characters that follow the \fB#\fR are
+ignored. Enclose Solaris specific strings (\fISolaris_specific_string\fR) and
+service provider's instance data (\fIservice _provider_instance_data\fR) in
+quotes.
+.sp
+.LP
+The following shows the order of the fields in a \fBdat.conf\fR entry:
+.sp
+.in +2
+.nf
+"\fIinterface_adapter_name\fR" "\fIAPI_version\fR" "\fIthreadsafe\fR | \fInonthreadsafe\fR" \e
+"\fIdefault\fR | \fInondefault\fR" "\fIservice_provider_library_pathname\fR" \e
+"\fIservice_provider_version\fR" "\fIservice _provider_instance_data\fR"\e
+"\fISolaris_specific_string\fR"
+.fi
+.in -2
+
+.sp
+.LP
+The fields are defined as follows:
+.sp
+.ne 2
+.na
+\fB\fIinterface_adapter_name\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the Interface Adapter (IA) name. In IB, this is the IPoIB device
+instance name, for example, \fBibd0\fR. This represents an IP interface plumbed
+on an IB partition/port combination of the HCA.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIAPI_version\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the API version of the service provide library: For example,
+\fB"u"major.minor\fR is \fBu1.2\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIthreadsafe\fR | \fInonthreadsafe\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies a threadsafe or non-threadsafe library.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIdefault\fR | \fInondefault\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies a default or non-default version of library. A service provider can
+offer several versions of the library. If so, one version is designated as
+\fBdefault\fR with the rest as \fBnondefault\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIservice_provider_library_pathname\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the pathname of the library image.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIservice_provider_version\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the version of the service provider. By convention, specify the
+company stock symbol as the service provider, followed by major and minor
+version numbers, for example, \fBSUNW1.0\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIservice _provider_instance_data\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the service provider instance data.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fISolaris_specific_string\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies a platform specific string, for example, the device name in the
+\fBservice_provider.conf\fR file.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRSample \fBdat.conf\fR File
+.sp
+.LP
+The following \fBdat.conf\fR file shows a \fBuDAPL 1.2\fR service provider for
+\fBtavor, udapl_tavor.so.1\fR supporting two interfaces, \fBibd0\fR and
+\fBibd1\fR:
+
+.sp
+.in +2
+.nf
+#
+# dat.conf for uDAPL 1.2
+#
+ibd0 u1.2 nonthreadsafe default udapl_tavor.so.1 SUNW.1.0 ""
+"driver_name=tavor"
+ibd1 u1.2 nonthreadsafe default udapl_tavor.so.1 SUNW.1.0 ""
+"driver_name=tavor"
+.fi
+.in -2
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Standard
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR libdat (3LIB),
+.BR service_provider.conf (5),
+.BR attributes (7),
+.BR datadm (8),
+.BR ifconfig (8)
+.SH NOTES
+.sp
+.LP
+An empty \fBdat.conf\fR is created during the package \fBSUNWudaplr\fR
+installation if no file is present beforehand. Entries in the file are added or
+removed by running \fBdatadm\fR(8).
+.sp
+.LP
+The content of the platform specific string does not constitute an API. It is
+generated by \fBdatadm\fR(8) and might have a different content or
+interpretation in a future release.
diff --git a/usr/src/man/man5/default_fs.5 b/usr/src/man/man5/default_fs.5
new file mode 100644
index 0000000000..d75a65448a
--- /dev/null
+++ b/usr/src/man/man5/default_fs.5
@@ -0,0 +1,71 @@
+'\" te
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH DEFAULT_FS 5 "Mar 20, 1992"
+.SH NAME
+default_fs, fs \- specify the default file system type for local or remote file
+systems
+.SH DESCRIPTION
+.sp
+.LP
+When file system administration commands have both specific and generic
+components (for example, \fBfsck\fR(8)), the file system type must be
+specified. If it is not explicitly specified using the \fB-F\fR \fIFSType\fR
+command line option, the generic command looks in \fB/etc/vfstab\fR in order to
+determine the file system type, using the supplied raw or block device or mount
+point. If the file system type can not be determined by searching
+\fB/etc/vfstab\fR, the command will use the default file system type specified
+in either \fB/etc/default/fs\fR or \fB/etc/dfs/dfstypes\fR, depending on
+whether the file system is local or remote.
+.sp
+.LP
+The default local file system type is specified in \fB/etc/default/fs\fR by a
+line of the form \fBLOCAL=\fR\fIfstype\fR (for example, \fBLOCAL=ufs\fR). The
+default remote file system type is determined by the first entry in the
+\fB/etc/dfs/fstypes\fR file.
+.sp
+.LP
+File system administration commands will determine whether the file system is
+local or remote by examining the specified device name. If the device name
+starts with ``/'' (slash), it is considered to be local; otherwise it is
+remote.
+.sp
+.LP
+The default file system types can be changed by editing the default files with
+a text editor.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/vfstab\fR\fR
+.ad
+.RS 20n
+list of default parameters for each file system
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/default/fs\fR\fR
+.ad
+.RS 20n
+the default local file system type
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/dfs/fstypes\fR\fR
+.ad
+.RS 20n
+the default remote file system type
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR fstypes (5),
+.BR vfstab (5),
+.BR fsck (8)
diff --git a/usr/src/man/man5/defaultdomain.5 b/usr/src/man/man5/defaultdomain.5
new file mode 100644
index 0000000000..571f52404c
--- /dev/null
+++ b/usr/src/man/man5/defaultdomain.5
@@ -0,0 +1,39 @@
+'\" te
+.\" Copyright (c) 2000, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH DEFAULTDOMAIN 5 "Feb 25, 2017"
+.SH NAME
+defaultdomain \- specify host's domain name
+.SH SYNOPSIS
+.LP
+.nf
+\fB/etc/defaultdomain\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+The file \fB/etc/defaultdomain\fR determines a host's domain name for direct
+use by the \fBNIS\fR name service. The \fBdefaultdomain\fR file
+is read at boot time and its contents used by the \fBdomainname\fR(8) command.
+Because of its use by \fBdomainname\fR, \fBdefaultdomain\fR is also used by the
+\fBLDAP\fR service (see \fBldap\fR(1)). Under certain, narrow circumstances
+(see \fBresolv.conf\fR(5)), because \fBdomainname\fR uses \fBdefaultdomain\fR,
+a \fBDNS\fR client can use the contents of \fBdefaultdomain\fR.
+.sp
+.LP
+The contents of \fBdefaultdomain\fR consists of a single line containing a
+host's domain name.
+.SH SEE ALSO
+.LP
+.BR uname (1),
+.BR resolv.conf (5),
+.BR ldapclient (8),
+.BR ypbind (8),
+.BR ypinit (8)
+.SH NOTES
+.LP
+The \fBdefaultdomain\fR file is created and modified by Solaris installation
+and configuration scripts. Only users knowledgeable of name service
+configuration should edit the file.
diff --git a/usr/src/man/man5/defaultrouter.5 b/usr/src/man/man5/defaultrouter.5
new file mode 100644
index 0000000000..0847e504ea
--- /dev/null
+++ b/usr/src/man/man5/defaultrouter.5
@@ -0,0 +1,68 @@
+'\" te
+.\" Copyright (c) 2000, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH DEFAULTROUTER 5 "Aug 17, 2004"
+.SH NAME
+defaultrouter \- configuration file for default router(s)
+.SH SYNOPSIS
+.LP
+.nf
+\fB/etc/defaultrouter\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fB/etc/defaultrouter\fR file specifies a IPv4 host's default router(s).
+.sp
+.LP
+The format of the file is as follows:
+.sp
+.in +2
+.nf
+IP_address
+\&...
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The \fB/etc/defaultrouter\fR file can contain the IP addresses or hostnames of
+one or more default routers, with each entry on its own line. If you use
+hostnames, each hostname must also be listed in the local \fB/etc/hosts\fR
+file, because no name services are running at the time that \fBdefaultrouter\fR
+is read.
+.sp
+.LP
+Lines beginning with the ``#'' character are treated as comments.
+.sp
+.LP
+The default routes listed in this file replace those added by the kernel during
+diskless booting. An empty \fB/etc/defaultrouter\fR file will cause the default
+route added by the kernel to be deleted.
+.sp
+.LP
+Use of a default route, whether received from a \fBDHCP\fR server or from
+\fB/etc/defaultrouter\fR, prevents a machine from acting as an IPv4 router. You
+can use \fBrouteadm\fR(8) to override this behavior.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/defaultrouter\fR\fR
+.ad
+.RS 22n
+Configuration file containing the hostnames or IP addresses of one or more
+default routers.
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR hosts (5),
+.BR in.rdisc (8),
+.BR in.routed (8),
+.BR routeadm (8)
diff --git a/usr/src/man/man5/delay.4th.5 b/usr/src/man/man5/delay.4th.5
deleted file mode 100644
index 1c1b897bcd..0000000000
--- a/usr/src/man/man5/delay.4th.5
+++ /dev/null
@@ -1,113 +0,0 @@
-.\" Copyright (c) 2011 Devin Teske
-.\" All rights reserved.
-.\"
-.\" Redistribution and use in source and binary forms, with or without
-.\" modification, are permitted provided that the following conditions
-.\" are met:
-.\" 1. Redistributions of source code must retain the above copyright
-.\" notice, this list of conditions and the following disclaimer.
-.\" 2. Redistributions in binary form must reproduce the above copyright
-.\" notice, this list of conditions and the following disclaimer in the
-.\" documentation and/or other materials provided with the distribution.
-.\"
-.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
-.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
-.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
-.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
-.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-.\" SUCH DAMAGE.
-.\"
-.Dd July 20, 2018
-.Dt DELAY.4TH 5
-.Os
-.Sh NAME
-.Nm delay.4th
-.Nd loader debugging boot module
-.Sh DESCRIPTION
-The file that goes by the name of
-.Nm
-is a set of commands designed to add debugging capabilities to
-.Xr loader 5 .
-The commands of
-.Nm
-by themselves are not enough for most uses.
-Please refer to the
-examples below for the most common situations, and to
-.Xr loader 5
-for additional commands.
-.Pp
-Before using any of the commands provided in
-.Nm ,
-it must be included
-through the command:
-.Pp
-.Dl include delay.4th
-.Pp
-This line is present in
-.Pa /boot/forth/beastie.4th
-file, so it is not needed (and should not be re-issued) in a normal setup.
-.Pp
-The commands provided by it are:
-.Pp
-.Bl -tag -width disable-module_module -compact -offset indent
-.It Ic delay_execute
-Executes the [string] procedure stored in the
-.Ic delay_command
-environment variable after
-.Ic loader_delay
-seconds.
-.Pp
-If the optional
-.Ic delay_showdots
-environment variable is set, a continuous series of dots is printed.
-.Pp
-During the duration, the user can either press Ctrl-C (or Esc) to abort or
-ENTER to proceed immediately.
-.El
-.Pp
-The environment variables that effect its behavior are:
-.Bl -tag -width bootfile -offset indent
-.It Va delay_command
-The command to be executed by
-.Ic delay_execute .
-.It Va loader_delay
-The duration (in seconds) to delay before executing
-.Ic delay_command .
-.It Va delay_showdots
-If set, will cause
-.Ic delay_execute
-to print a continuous series of dots during the delay duration.
-.El
-.Sh FILES
-.Bl -tag -width /boot/forth/loader.4th -compact
-.It Pa /boot/loader
-The
-.Xr loader 5 .
-.It Pa /boot/forth/delay.4th
-.Nm
-itself.
-.It Pa /boot/loader.rc
-.Xr loader 5
-bootstrapping script.
-.El
-.Sh EXAMPLES
-Introducing a 5-second delay before including another file from
-.Pa /boot/loader.rc :
-.Pp
-.Bd -literal -offset indent -compact
-include /boot/forth/delay.4th
-set delay_command="include /boot/forth/other.4th"
-set delay_showdots
-set loader_delay=5
-delay_execute
-.Ed
-.Sh SEE ALSO
-.Xr loader.conf 4 ,
-.Xr beastie.4th 5 ,
-.Xr loader 5 ,
-.Xr loader.4th 5
diff --git a/usr/src/man/man5/depend.5 b/usr/src/man/man5/depend.5
new file mode 100644
index 0000000000..85df5e5e4a
--- /dev/null
+++ b/usr/src/man/man5/depend.5
@@ -0,0 +1,136 @@
+'\" te
+.\" Copyright (c) 2000, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH DEPEND 5 "Oct 4, 1996"
+.SH NAME
+depend \- software dependencies file
+.SH DESCRIPTION
+.sp
+.LP
+\fBdepend\fR is an \fBASCII\fR file used to specify information concerning
+software dependencies for a particular package. The file is created by a
+software developer.
+.sp
+.LP
+Each entry in the \fBdepend\fR file describes a single software package. The
+instance of the package is described after the entry line by giving the package
+architecture and/or version. The format of each entry and subsequent instance
+definition is:
+.sp
+.in +2
+.nf
+\fItype pkg name
+ (arch)version
+ (arch)version
+ .\|.\|.\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The fields are:
+.sp
+.ne 2
+.na
+\fB\fBtype\fR\fR
+.ad
+.RS 17n
+Defines the dependency type. Must be one of the following characters:
+.sp
+.ne 2
+.na
+\fB\fBP\fR\fR
+.ad
+.RS 5n
+Indicates a prerequisite for installation; for example, the referenced package
+or versions must be installed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBI\fR\fR
+.ad
+.RS 5n
+Implies that the existence of the indicated package or version is incompatible.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBR\fR\fR
+.ad
+.RS 5n
+Indicates a reverse dependency. Instead of defining the package's own
+dependencies, this designates that another package depends on this one. This
+type should be used only when an old package does not have a \fBdepend\fR file,
+but relies on the newer package nonetheless. Therefore, the present package
+should not be removed if the designated old package is still on the system
+since, if it is removed, the old package will no longer work.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIpkg\fR\fR
+.ad
+.RS 17n
+Indicates the package abbreviation.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIname\fR\fR
+.ad
+.RS 17n
+Specifies the full package name.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fI(arch)version\fR\fR
+.ad
+.RS 17n
+Specifies a particular instance of the software. A version name cannot begin
+with a left parenthesis. The instance specifications, both \fI(arch)\fR and
+\fIversion\fR, are completely optional, but each \fI(arch)version\fR pair must
+begin on a new line that begins with white space. A null version set equates to
+any version of the indicated package.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRSample of \fBdepend\fR file
+.sp
+.LP
+Here are the contents of a sample \fBdepend\fR file, for the \fBSUNWftpr\fR
+(FTP Server) package, stored in \fB/var/sadm/pkg/SUNWftpr/install\fR:
+
+.sp
+.in +2
+.nf
+P SUNWcar Core Architecture, (Root)
+P SUNWkvm Core Architecture, (Kvm)
+P SUNWcsr Core Solaris, (Root)
+P SUNWcsu Core Solaris, (Usr)
+P SUNWcsd Core Solaris Devices
+P SUNWcsl Core Solaris Libraries
+R SUNWftpu FTP Server, (Usr)
+.fi
+.in -2
+
+.SH SEE ALSO
+.sp
+.LP
+.BR pkginfo (5)
+.sp
+.LP
+\fIApplication Packaging Developer\&'s Guide\fR
diff --git a/usr/src/man/man5/device_allocate.5 b/usr/src/man/man5/device_allocate.5
new file mode 100644
index 0000000000..6138e89803
--- /dev/null
+++ b/usr/src/man/man5/device_allocate.5
@@ -0,0 +1,272 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH DEVICE_ALLOCATE 5 "Mar 6, 2017"
+.SH NAME
+device_allocate \- device_allocate file
+.SH SYNOPSIS
+.LP
+.nf
+\fB/etc/security/device_allocate\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBdevice_allocate\fR file is an \fBASCII\fR file that resides in the
+\fB/etc/security\fR directory. It contains mandatory access control information
+about each physical device. Each device is represented by a one- line entry of
+the form:
+.sp
+.LP
+\fIdevice-name\fR;\fIdevice-type\fR;reserved1;reserved2;\fIauths\fR;\fIdevice-e
+xec\fR
+.sp
+.LP
+where:
+.sp
+.ne 2
+.na
+\fB\fIdevice-name\fR\fR
+.ad
+.sp .6
+.RS 4n
+Represents an arbitrary \fBASCII\fR string naming the physical device. This
+field contains no embedded white space or non-printable characters.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIdevice-type\fR\fR
+.ad
+.sp .6
+.RS 4n
+Represents an arbitrary \fBASCII\fR string naming the generic device type. This
+field identifies and groups together devices of like type. This field contains
+no embedded white space or non-printable characters. The following types of
+devices are currently managed by the system: audio, \fBsr\fR (represents CDROM
+drives), \fBfd\fR (represents floppy drives), \fBst\fR (represents tape
+drives), \fBrmdisk\fR (removable media devices).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBreserved1\fR\fR
+.ad
+.sp .6
+.RS 4n
+On systems configured with Trusted Extensions, this field stores a
+colon-separated (\fB:\fR) list of key-value pairs that describe device
+allocation attributes used in Trusted Extensions. Zero or more keys can be
+specified. The following keys are currently interpreted by Trusted Extensions
+systems:
+.sp
+.ne 2
+.na
+\fB\fBminlabel\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the minimum label at which device can be allocated. Default value is
+\fBadmin_low\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmaxlabel\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the maximum label at which device can be allocated. Default value is
+\fBadmin_high\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBzone\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the name of the zone in which device is currently allocated.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBclass\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies a logical grouping of devices. For example, all Sun Ray devices of
+all device types. There is no default class.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBxdpy\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the X display name. This is used to identify devices associated with
+that X session. There is no default \fBxdpy\fR value.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBreserved2\fR\fR
+.ad
+.sp .6
+.RS 4n
+Represents a field reserved for future use.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIauths\fR\fR
+.ad
+.sp .6
+.RS 4n
+Represents a field that contains a comma-separated list of authorizations
+required to allocate the device, an asterisk (\fB*\fR) to indicate that the
+device is \fInot\fR allocatable, or an '\fB@\fR' symbol to indicate that no
+explicit authorization is needed to allocate the device. The default
+authorization is \fBsolaris.device.allocate\fR. See \fBauths\fR(1).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIdevice-exec\fR\fR
+.ad
+.sp .6
+.RS 4n
+The physical device's data clean program to be run any time the device is acted
+on by \fBallocate\fR(1). This ensures that unmanaged data does not remain in
+the physical device between uses. This field contains the filename of a program
+in \fB/etc/security/lib\fR or the full pathname of a cleanup script provided by
+the system administrator.
+.RE
+
+.SS "Notes on \fBdevice_allocate\fR"
+.LP
+The \fBdevice_allocate\fR file is an ASCII file that resides in the
+\fB/etc/security\fR directory.
+.sp
+.LP
+Lines in \fBdevice_allocate\fR can end with a `\fB\e\fR\&' to continue an entry
+on the next line.
+.sp
+.LP
+Comments can also be included. A `\fB#\fR' makes a comment of all further text
+until the next NEWLINE not immediately preceded by a `\fB\e\fR\&'.
+.sp
+.LP
+White space is allowed in any field.
+.sp
+.LP
+The \fBdevice_allocate\fR file must be created by the system administrator
+before device allocation is enabled.
+.sp
+.LP
+The \fBdevice_allocate\fR file is owned by root, with a group of \fBsys\fR, and
+a mode of 0644.
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRDeclaring an Allocatable Device
+.sp
+.LP
+Declare that physical device \fBst0\fR is a type \fBst\fR. \fBst\fR is
+allocatable, and the script used to clean the device after running
+\fBdeallocate\fR(1) is named \fB/etc/security/lib/st_clean\fR.
+
+.sp
+.in +2
+.nf
+# scsi tape
+st0;\e
+ st;\e
+ reserved;\e
+ reserved;\e
+ solaris.device.allocate;\e
+ /etc/security/lib/st_clean
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRDeclaring an Allocatable Device with Authorizations
+.sp
+.LP
+Declare that physical device \fBfd0\fR is of type \fBfd\fR. \fBfd\fR is
+allocatable by users with the \fBsolaris.device.allocate\fR authorization, and
+the script used to clean the device after running \fBdeallocate\fR(1) is named
+\fB/etc/security/lib/fd_clean\fR.
+
+.sp
+.in +2
+.nf
+# floppy drive
+fd0;\e
+ fd;\e
+ reserved;\e
+ reserved;\e
+ solaris.device.allocate;\e
+ /etc/security/lib/fd_clean
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Making a device allocatable means that you need to allocate and deallocate it
+to use it (with \fBallocate\fR(1) and \fBdeallocate\fR(1)). If a device is not
+allocatable, there is an asterisk (\fB*\fR) in the \fIauths\fR field, and no
+one can use the device.
+.SH FILES
+.ne 2
+.na
+\fB\fB/etc/security/device_allocate\fR\fR
+.ad
+.sp .6
+.RS 4n
+Contains list of allocatable devices
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Uncommitted
+.TE
+
+.SH SEE ALSO
+.LP
+.BR allocate (1),
+.BR auths (1),
+.BR deallocate (1),
+.BR list_devices (1),
+.BR auth_attr (5),
+.BR attributes (7)
+.SH NOTES
+.LP
+On systems configured with Trusted Extensions, the functionality is enabled by
+default. On such systems, the \fBdevice_allocate\fR file is updated
+automatically by the system.
diff --git a/usr/src/man/man5/device_clean.5 b/usr/src/man/man5/device_clean.5
deleted file mode 100644
index 529c516966..0000000000
--- a/usr/src/man/man5/device_clean.5
+++ /dev/null
@@ -1,306 +0,0 @@
-'\" te
-.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH DEVICE_CLEAN 5 "Jun 14, 2007"
-.SH NAME
-device_clean \- device clean programs
-.SH DESCRIPTION
-.sp
-.LP
-Each allocatable device has a device clean program associated with it. Device
-clean programs are invoked by \fBdeallocate\fR(1) to clean device states,
-registers, and any residual information in the device before the device is
-allocated to a user. Such cleaning is required by the object reuse policy.
-.sp
-.LP
-Use \fBlist_devices\fR(1) to obtain the names and types of allocatable devices
-as well as the cleaning program and the authorizations that are associated with
-each device.
-.sp
-.LP
-On a system configured with Trusted Extensions, device clean programs are also
-invoked by \fBallocate\fR(1), in which case the program can optionally mount
-appropriate media for the caller.
-.sp
-.LP
-The following device clean programs reside in \fB/etc/security/lib\fR.
-.sp
-.ne 2
-.na
-\fB\fBaudio_clean\fR\fR
-.ad
-.RS 15n
-audio devices
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfd_clean\fR\fR
-.ad
-.RS 15n
-floppy devices
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBst_clean\fR\fR
-.ad
-.RS 15n
-tape devices
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsr_clean\fR\fR
-.ad
-.RS 15n
-CD-ROM devices
-.RE
-
-.sp
-.LP
-On a system configured with Trusted Extensions, the following additional
-cleaning programs and wrappers are available.
-.sp
-.ne 2
-.na
-\fB\fBdisk_clean\fR\fR
-.ad
-.RS 23n
-floppy, CD-ROM, and other removable media devices. This program mounts the
-device during the execution of \fBallocate\fR, if required.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBaudio_clean_wrapper\fR\fR
-.ad
-.RS 23n
-wrapper to make audio_clean work with CDE
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBwdwwrapper\fR\fR
-.ad
-.RS 23n
-wrapper to make other cleaning programs work with CDE
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBwdwmsg\fR\fR
-.ad
-.RS 23n
-CDE dialog boxes for cleaning programs
-.RE
-
-.sp
-.LP
-Administrators can create device clean programs for their sites. These programs
-must adhere to the syntax described below.
-.sp
-.in +2
-.nf
-/etc/security/lib/\fIdevice-clean-program\fR [\(mii | \(mif | \(mis | \(miI] \e
-\(mim \fImode\fR \(miu \fIuser-name\fR \(miz \fIzone-name\fR \(mip \fIzone-path\fR \fIdevice-name\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-where:
-.sp
-.ne 2
-.na
-\fB\fIdevice-name\fR\fR
-.ad
-.RS 15n
-The name of the device that is to be cleaned. Use \fBlist_devices\fR to obtain
-the list of allocatable devices.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-i\fR\fR
-.ad
-.RS 15n
-Invoke boot-time initialization.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-f\fR\fR
-.ad
-.RS 15n
-Force cleanup by the administrator.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-s\fR\fR
-.ad
-.RS 15n
-Invoke standard cleanup by the user.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-I\fR\fR
-.ad
-.RS 15n
-Same as \fB-i\fR, with no error or warning.
-.RE
-
-.sp
-.LP
-The following options are supported only when the system is configured with
-Trusted Extensions.
-.sp
-.ne 2
-.na
-\fB\fB-m\fR \fImode\fR\fR
-.ad
-.RS 16n
-Specify the mode in which the clean program is invoked. Valid values are allo-
-cate and deallocate. The default mode is allocate.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-u\fR \fIuser-name\fR\fR
-.ad
-.RS 16n
-Specify the name of user who executes the device clean program. The default
-user is the caller.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-z\fR \fIzone-name\fR\fR
-.ad
-.RS 16n
-Specify the name of the zone in which the device is to be allocated or
-deallocated. The default zone is the global zone.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB-p\fR \fIzone-path\fR\fR
-.ad
-.RS 16n
-Establish the root path of the zone that is specified by \fIzone-name\fR.
-Default is "/".
-.RE
-
-.SH EXIT STATUS
-.sp
-.LP
-The following exit values are returned:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.sp .6
-.RS 4n
-Successful completion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB1\fR\fR
-.ad
-.sp .6
-.RS 4n
-An error. Caller can place device in error state.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB2\fR\fR
-.ad
-.sp .6
-.RS 4n
-A system error. Caller can place device in error state.
-.RE
-
-.sp
-.LP
-On a system configured with Trusted Extensions, the following additional exit
-values are returned:
-.sp
-.ne 2
-.na
-\fB\fB3\fR\fR
-.ad
-.sp .6
-.RS 4n
-Mounting of device failed. Caller shall not place device in error state.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB4\fR\fR
-.ad
-.sp .6
-.RS 4n
-Mounting of device succeeded.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/security/lib/*\fR\fR
-.ad
-.RS 23n
-device clean programs
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability See below.
-.TE
-
-.sp
-.LP
-The Invocation is Uncommitted. The Output is Not-an-interface.
-.SH SEE ALSO
-.sp
-.LP
-\fBallocate\fR(1), \fBdeallocate\fR(1), \fBlist_devices\fR(1),
-\fBattributes\fR(5)
-.sp
-.LP
-\fISystem Administration Guide: Security Services\fR
diff --git a/usr/src/man/man5/device_contract.5 b/usr/src/man/man5/device_contract.5
new file mode 100644
index 0000000000..5b3e56a5d5
--- /dev/null
+++ b/usr/src/man/man5/device_contract.5
@@ -0,0 +1,382 @@
+'\" te
+.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH DEVICE_CONTRACT 5 "Aug 21, 2007"
+.SH NAME
+device_contract \- device contract type
+.SH SYNOPSIS
+.LP
+.nf
+\fB/system/contract/device\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+Device contracts allow processes to monitor events involving a device of
+interest and to react and/or block state changes involving such devices.
+.sp
+.LP
+Device contracts are managed using the \fBcontract\fR(5) file system and the
+\fBlibcontract\fR(3LIB) library. The process contract type directory is
+\fB/system/contract/device\fR.
+.SS "Creation"
+.sp
+.LP
+A device contract may be created in one of two ways:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+A process may create and activate a template and then invoke open on a minor
+node of the device. The act of opening creates a contract based on the terms in
+the activated template.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+A process may create a contract after it has opened a device by creating a
+template, setting appropriate terms (including the path to a minor node) on the
+template and then invoking \fBct_tmpl_create\fR() on the template.
+.RE
+.SS "States, Breaks and Events"
+.sp
+.LP
+A state refers to the state of the device which is the subject of the contract.
+Currently, three states are defined for device contracts:
+.sp
+.ne 2
+.na
+\fB\fBCT_DEV_EV_ONLINE\fR\fR
+.ad
+.RS 22n
+The device is online and functioning normally.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBCT_DEV_EV_DEGRADED\fR\fR
+.ad
+.RS 22n
+The device is online, but functioning in a degraded capacity.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBCT_DEV_EV_OFFLINE\fR\fR
+.ad
+.RS 22n
+The device is offline and is not configured for use.
+.RE
+
+.sp
+.LP
+A process creates a device contract with the kernel to get a guarantee that the
+device is in an acceptable set of states as long as the contract is valid. This
+acceptable set (or "A-set", for short) is specified as one of the terms of the
+contract when the contract is created.
+.sp
+.LP
+When a device moves to a state outside the "A-set", the contract is broken. The
+breaking of the contract may be either asynchronous or synchronous, depending
+on whether the transition that led to the breaking of the contract is
+synchronous or asynchronous.
+.sp
+.LP
+If the breaking of a contract is asynchronous, then a critical event is
+generated and sent to the contract holder. The event is generated even if the
+contract holder has not subscribed to the event via the critical or informative
+event sets.
+.sp
+.LP
+If the breaking of the contract is synchronous, a critical contract event is
+generated with the \fBCTE_NEG\fR flag set to indicate that this is a
+negotiation event. The contract holder is expected to either acknowledge
+(\fBACK\fR) this change and allow the state change to occur or it may
+negatively acknowledge (\fBNACK\fR) the change to block it (if it has
+sufficient privileges).
+.sp
+.LP
+The term "event" refers to the transition of a device from one state to
+another. The event is named by the state to which the device is transitioning.
+For instance, if a device is transitioning to the \fBOFFLINE\fR state, the name
+of the event is \fBCT_DEV_EV_OFFLINE\fR. An event may have no consequence for a
+contract, or it may result in the asynchronous breaking of a contract or it may
+result in a synchronous (that is, negotiated) breaking of a contract. Events
+are delivered to a contract holder in three cases:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The contract holder has subscribed to the event via the critical or informative
+event sets. The event may be either critical or informative in this case
+depending on the subscription.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The device transitions to a state outside the contract's "A-set" and the
+transition is asynchronous. This results in the asynchronous breaking of the
+contract and a critical event is delivered to the holder.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The device transitions to a state outside the contract's "A-set" and the
+transition is synchronous. This results in the synchronous breaking of the
+contract and a critical event with the \fBCTE_NEG\fR flag set is delivered to
+the holder.
+.RE
+.sp
+.LP
+In the last two cases, a critical event is delivered even if the holder has not
+subscribed to the event via the critical or informative event sets.
+.SS "NEGOTIATION"
+.sp
+.LP
+If the breaking of a contract is synchronous, the kernel begins negotiations
+with the contract holder by generating a critical event before the device
+changes state. The event has the \fBCTE_NEG\fR flag set indicating that this is
+a negotiation event. The contract owner is allowed a limited period of time in
+which to either \fBACK\fR the contract event (thus, allowing the state change)
+or if it has appropriate privileges, \fBNACK\fR the state change (thus,
+blocking the state change). \fBACK\fRs may be sent by the holder via
+\fBct_ctl_ack\fR(3CONTRACT) and \fBNACK\fRs may be sent via
+\fBct_ctl_nack\fR(3CONTRACT). If a contract holder does not send either a
+\fBNACK\fR or \fBACK\fR within a specified period of time, an \fBACK\fR is
+assumed and the kernel proceeds with the state change.
+.sp
+.LP
+Once the device state change is finalized, the contract subsystem sends
+negotiation end (\fBNEGEND\fR) critical messages to the contract owner
+indicating the final disposition of the state transition. That is, either
+success or failure.
+.sp
+.LP
+Once a contract is broken, a contract owner may choose to create a replacement
+contract. It may do this after the contract is broken or it may choose to do
+this synchronously with the breaking of the old contract via
+\fBct_ctl_newct\fR(3CONTRACT).
+.SS "TERMS"
+.sp
+.LP
+The following common contract terms, defined in \fBcontract\fR(5), have
+device-contract specific attributes:
+.sp
+.ne 2
+.na
+\fBinformative set\fR
+.ad
+.RS 19n
+The default value for the informative set is \fBCT_DEV_EV_DEGRADE\fR that is,
+transitions to the \fBDEGRADED\fR state will by default result in informative
+events. Use \fBct_tmpl_set_informative\fR(3CONTRACT) to set this term.
+.RE
+
+.sp
+.ne 2
+.na
+\fBcritical set\fR
+.ad
+.RS 19n
+The default value for the informative set is \fBCT_DEV_EV_OFFLINE\fR. That is,
+transitions to the \fBOFFLINE\fR state will by default result in critical
+events. Use \fBct_tmpl_set_critical\fR(3CONTRACT) to set this term.
+.RE
+
+.sp
+.LP
+The following contract terms can be read from or written to a device contract
+template using the named \fBlibcontract\fR(3LIB) interfaces. These contract
+terms are in addition to those described in \fBcontract\fR(5).
+.sp
+.ne 2
+.na
+\fB\fBCTDP_ACCEPT\fR\fR
+.ad
+.RS 15n
+Acceptable set or "A-set".
+.sp
+This term is required for every device contract. It defines the set of device
+states which the contract owner expects to exist as long as the contract is
+valid. If a device transitions to a state outside this "A-set", then the
+contract breaks and is no longer valid. A critical contract event is sent to
+the contract owner to signal this break.
+.sp
+Use \fBct_dev_tmpl_set_aset\fR() to set this term. The default "A-set" is
+\fBCT_DEV_EV_ONLINE\fR | \fBCT_DEV_EV_DEGRADE\fR. This term is mandatory. Use
+\fBct_dev_tmpl_get_aset\fR() to query a template for this term.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBCTDP_MINOR\fR\fR
+.ad
+.RS 15n
+Specifies the \fBdevfs\fR path to a minor node that is the subject of the
+contract. Used to specify the minor node to be used for creating a contract
+when contract creation takes place other than at open time.
+.sp
+If the contract is created synchronously at \fBopen\fR(2) time, then this term
+is implied to be the minor node being opened. In this case, this term need not
+be explicitly be set.
+.sp
+Use \fBct_dev_tmpl_set_minor\fR() to set this term. The default setting for
+this term is \fBNULL\fR. That is, no minor node is specified.
+.sp
+Use \fBct_dev_tmpl_get_noneg\fR() to query a template for the setting of this
+term.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBCTDP_NONEG\fR\fR
+.ad
+.RS 15n
+If set, this term indicates that any negotiable departure from the contract
+terms should be \fBNACK\fRed. That is, the contract subsystem should assume a
+\fBNACK\fR for any negotiated breaking of the contract. This term is ignored
+for asynchronous contract breaks.
+.sp
+Use \fBct_dev_tmpl_set_noneg\fR() to set this term. The default setting is off.
+.sp
+Use \fBct_dev_tmpl_get_noneg\fR() to query a template for the setting of this
+term.
+.RE
+
+.SS "STATUS"
+.sp
+.LP
+In addition to the standard items, the status object read from a status file
+descriptor contains the following items if \fBCTD_FIXED\fR is specified:
+.sp
+.ne 2
+.na
+\fB\fBCTDS_STATE\fR\fR
+.ad
+.RS 14n
+Returns the current state of the device. One of the following states is
+returned:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBCT_DEV_EV_ONLINE\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBCT_DEV_EV_DEGRADED\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBCT_DEV_EV_OFFLINE\fR
+.sp
+Use \fBct_dev_status_get_dev_state\fR() to obtain this information.
+.RE
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBCTDS_ASET\fR\fR
+.ad
+.RS 14n
+Returns the acceptable states ("A-set") of the device contract. The return
+value is a bitset of device states and may include one or more of the
+following:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBCT_DEV_EV_ONLINE\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBCT_DEV_EV_DEGRADED\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBCT_DEV_EV_OFFLINE\fR
+.sp
+Use \fBct_dev_status_get_aset\fR() to obtain this information.
+.RE
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBCTDS_NONEG\fR\fR
+.ad
+.RS 14n
+Returns the current setting of the \fBnoneg\fR flag. Returns 1 if the
+\fBnoneg\fR flag is set, or 0 if the flag is not set. Use
+\fBct_dev_status_get_noneg\fR() to obtain this information.
+.RE
+
+.sp
+.LP
+If \fBCTD_ALL\fR is specified, the following items are also available:
+.sp
+.ne 2
+.na
+\fB\fBCTDS_MINOR\fR\fR
+.ad
+.RS 14n
+The \fBdevfs\fR path of the device which is the subject of the device contract.
+Use \fBct_dev_status_get_minor\fR() to obtain this information.
+.RE
+
+.SS "EVENTS"
+.sp
+.LP
+No new event related interfaces (beyond the standard contract event interfaces)
+are defined for device contract events.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/usr/include/sys/contract/device.h\fR\fR
+.ad
+.sp .6
+.RS 4n
+Contains definitions of events, status fields and event fields
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR ctrun (1),
+.BR ctstat (1),
+.BR ctwatch (1),
+.BR open (2),
+.BR ct_dev_status_get_aset (3CONTRACT),
+.BR ct_dev_status_get_dev_state (3CONTRACT),
+.BR ct_dev_status_get_minor (3CONTRACT),
+.BR ct_dev_tmpl_get_aset (3CONTRACT),
+.BR ct_dev_tmpl_get_minor (3CONTRACT),
+.BR ct_dev_tmpl_get_noneg (3CONTRACT),
+.BR ct_dev_tmpl_set_aset (3CONTRACT),
+.BR ct_dev_tmpl_set_minor (3CONTRACT),
+.BR ct_dev_tmpl_set_noneg (3CONTRACT),
+.BR ct_tmpl_set_critical (3CONTRACT),
+.BR ct_tmpl_set_informative (3CONTRACT),
+.BR libcontract (3LIB),
+.BR contract (5),
+.BR privileges (7)
diff --git a/usr/src/man/man5/device_maps.5 b/usr/src/man/man5/device_maps.5
new file mode 100644
index 0000000000..8cae67080c
--- /dev/null
+++ b/usr/src/man/man5/device_maps.5
@@ -0,0 +1,143 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH DEVICE_MAPS 5 "Mar 6, 2017"
+.SH NAME
+device_maps \- device_maps file
+.SH SYNOPSIS
+.LP
+.nf
+\fB/etc/security/device_maps\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBdevice_maps\fR file contains access control information about each
+physical device. Each device is represented by a one line entry of the form:
+.sp
+.in +2
+.nf
+\fIdevice-name\fR \fB:\fR \fIdevice-type\fR \fB:\fR \fIdevice-list\fR \fB:\fR
+.fi
+.in -2
+
+.sp
+.LP
+where
+.sp
+.ne 2
+.na
+\fB\fIdevice-name\fR\fR
+.ad
+.sp .6
+.RS 4n
+This is an arbitrary \fBASCII\fR string naming the physical device. This field
+contains no embedded white space or non-printable characters.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIdevice-type\fR\fR
+.ad
+.sp .6
+.RS 4n
+This is an arbitrary \fBASCII\fR string naming the generic device type. This
+field identifies and groups together devices of like type. This field contains
+no embedded white space or non-printable characters.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIdevice-list\fR\fR
+.ad
+.sp .6
+.RS 4n
+This is a list of the device special files associated with the physical device.
+This field contains valid device special file path names separated by white
+space.
+.RE
+
+.sp
+.LP
+The \fBdevice_maps\fR file is an \fBASCII\fR file that resides in the
+\fB/etc/security\fR directory.
+.sp
+.LP
+Lines in \fBdevice_maps\fR can end with a `\fB\e\fR\&' to continue an entry on
+the next line.
+.sp
+.LP
+Comments may also be included. A `\fB#\fR' makes a comment of all further text
+until the next \fBNEWLINE\fR not immediately preceded by a `\fB\e\fR\&'.
+.sp
+.LP
+Leading and trailing blanks are allowed in any of the fields.
+.sp
+.LP
+The \fBdevice_maps\fR file must be created by the system administrator bef\eore
+device allocation is enabled.
+.sp
+.LP
+This file is owned by root, with a group of \fBsys\fR, and a mode of 0644.
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRA Sample \fBdevice_maps\fR File
+.sp
+.LP
+The following is a sample \fBdevice_maps\fR file:
+
+.sp
+.in +2
+.nf
+# scsi tape
+st1:\e
+rmt:\e
+/dev/rst21 /dev/nrst21 /dev/rst5 /dev/nrst5 /dev/rst13 \e
+/dev/nrst13 /dev/rst29 /dev/nrst29 /dev/rmt/1l /dev/rmt/1m \e
+/dev/rmt/1 /dev/rmt/1h /dev/rmt/1u /dev/rmt/1ln /dev/rmt/1mn \e
+/dev/rmt/1n /dev/rmt/1hn /dev/rmt/1un /dev/rmt/1b /dev/rmt/1bn:\e
+.fi
+.in -2
+.sp
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/etc/security/device_maps\fR\fR
+.ad
+.RS 29n
+Contains access control information for devices.
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Uncommitted
+.TE
+
+.SH SEE ALSO
+.LP
+.BR allocate (1),
+.BR deallocate (1),
+.BR list_devices (1),
+.BR device_allocate (5),
+.BR attributes (7),
+.BR dminfo (8)
+.SH NOTES
+.LP
+On systems configured with Trusted Extensions, the functionality is enabled by
+default. On such systems, the \fBdevice_allocate\fR(5) file is updated
+automatically by the system.
diff --git a/usr/src/man/man5/devices.5 b/usr/src/man/man5/devices.5
new file mode 100644
index 0000000000..b6adee7916
--- /dev/null
+++ b/usr/src/man/man5/devices.5
@@ -0,0 +1,66 @@
+'\" te
+.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH DEVICES 5 "Jun 8, 2006"
+.SH NAME
+devices, devid_cache, snapshot_cache, mdi_scsi_vhci_cache, mdi_ib_cache,
+devname_cache \- device configuration information
+.SH SYNOPSIS
+.LP
+.nf
+\fB/etc/devices\fR
+.fi
+
+.LP
+.nf
+\fB/etc/devices/devid_cache\fR
+.fi
+
+.LP
+.nf
+\fB/etc/devices/snapshot_cache\fR
+.fi
+
+.LP
+.nf
+\fB/etc/devices/mdi_scsi_vhci_cache\fR
+.fi
+
+.LP
+.nf
+\fB/etc/devices/mdi_ib_cache\fR
+.fi
+
+.LP
+.nf
+\fB/etc/devices/devname_cache\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The directory \fB/etc/devices\fR is a repository of device-related data. Files
+in this directory are used to preserve this information across reboots and are
+created and updated as necessary by the system.
+.sp
+.LP
+There are no administrative actions necessary with respect to files in
+\fB/etc/devices\fR. Should the contents of a file become corrupted or an update
+fail, the file can simply be removed. The system re-creates the file as
+necessary.
+.SH SEE ALSO
+.sp
+.LP
+.BR dev (4FS),
+.BR devfsadm (8),
+.BR ddi_devid_compare (9F),
+.BR ddi_devid_compare (9F)
+.SH NOTES
+.sp
+.LP
+Files in this directory do not constitute an API. Files might not exist or
+might have a different content or interpretation in a future release. The
+existence of this notice does not imply that any other documentation that lacks
+this notice constitutes an API.
diff --git a/usr/src/man/man5/dfstab.5 b/usr/src/man/man5/dfstab.5
new file mode 100644
index 0000000000..dd6ba624d6
--- /dev/null
+++ b/usr/src/man/man5/dfstab.5
@@ -0,0 +1,47 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH DFSTAB 5 "Aug 15, 2008"
+.SH NAME
+dfstab \- file containing commands for sharing resources across a network
+.SH DESCRIPTION
+.sp
+.LP
+\fBdfstab\fR resides in directory \fB/etc/dfs\fR and contains commands for
+sharing resources across a network. \fBdfstab\fR gives a system administrator a
+uniform method of controlling the automatic sharing of local resources.
+.sp
+.LP
+Each line of the \fBdfstab\fR file consists of a \fBshare\fR(8) command. The
+\fBdfstab\fR file can be read by the shell to share all resources. System
+administrators can also prepare their own shell scripts to execute particular
+lines from \fBdfstab\fR.
+.sp
+.LP
+The contents of \fBdfstab\fR put into effect when the command shown below is
+run. See \fBsvcadm\fR(8).
+.sp
+.in +2
+.nf
+/usr/sbin/svcadm enable network/nfs/server
+.fi
+.in -2
+
+.SH SEE ALSO
+.sp
+.LP
+.BR share (8),
+.BR shareall (8),
+.BR sharemgr (8),
+.BR svcadm (8)
+.SH NOTES
+.sp
+.LP
+Do not modify this file directly. This file is reconstructed and only
+maintained for backwards compatibility. Configuration lines could be lost.
+.sp
+.LP
+Use the \fBsharemgr\fR(8) command for all share management.
diff --git a/usr/src/man/man5/dhcp.5 b/usr/src/man/man5/dhcp.5
deleted file mode 100644
index 33b8707449..0000000000
--- a/usr/src/man/man5/dhcp.5
+++ /dev/null
@@ -1,64 +0,0 @@
-'\" te
-.\" Copyright 2014 Garrett D'Amore <garrett@damore.org>
-.\" Copyright (c) 2001, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH DHCP 5 "Feb 13, 2020"
-.SH NAME
-dhcp \- Dynamic Host Configuration Protocol
-.SH DESCRIPTION
-Dynamic Host Configuration Protocol (\fBDHCP\fR) enables host systems in a
-\fBTCP/IP\fR network to be configured automatically for the network as they
-boot. \fBDHCP\fR uses a client/server mechanism: servers store configuration
-information for clients, and provide that information upon a client's request.
-The information can include the client's \fBIP\fR address and information about
-network services available to the client.
-.LP
-This manual page provides a brief summary of the \fBDHCP\fR
-implementation.
-.SS "DHCP Client"
-The DHCP client is implemented as background daemon,
-\fBdhcpagent\fR(1M).
-.LP
-For IPv4, this daemon is started automatically during bootup if there exists at
-least one \fBdhcp.\fR\fIinterface\fR file in \fB/etc\fR. Only interfaces with a
-corresponding \fB\fR\fB/etc/dhcp.\fR\fB\fIinterface\fR\fR file are
-automatically configured during boot.
-.LP
-For IPv6, this daemon is started automatically when commanded by \fBin.ndpd\fR
-(based on IPv6 Routing Advertisement messages). No
-\fB/etc/dhcp\fR.\fIinterface\fR file is necessary, but such a file can be used
-to specify an interface as "primary," provided that IPv4 DHCP is also in use.
-.LP
-Network parameters needed for system configuration during bootup are extracted
-from the information received by the daemon through the use of the
-\fBdhcpinfo\fR(1) command. The daemon's default behavior can be altered by
-changing the tunables in the \fB/etc/default/dhcpagent\fR file. The daemon is
-controlled by the \fBifconfig\fR(1M) utility. Check the status of the daemon
-using the \fBnetstat\fR(1M) and \fBifconfig\fR(1M) commands.
-.SH SEE ALSO
-\fBdhcpinfo\fR(1), \fBdhcpagent\fR(1M),
-\fBifconfig\fR(1M),
-\fBin.ndpd\fR(1M), \fBnetstat\fR(1M),
-\fBsyslog\fR(3C),
-\fBdhcp_inittab\fR(4), \fBndpd.conf\fR(4)
-.LP
-Alexander, S., and R. Droms. \fIRFC 2132, DHCP Options and BOOTP Vendor
-Extensions\fR. Silicon Graphics, Inc. Bucknell University. March 1997.
-.LP
-Droms, R. \fIRFC 1534, Interoperation Between DHCP and BOOTP\fR. Bucknell
-University. October 1993.
-.LP
-Droms, R. \fIRFC 2131, Dynamic Host Configuration Protocol\fR. Bucknell
-University. March 1997.
-.LP
-Wimer, W. \fIRFC 1542, Clarifications and Extensions for the Bootstrap
-Protocol\fR. Carnegie Mellon University. October 1993.
-.LP
-Lemon, T. and B. Sommerfeld. \fIRFC 4361, Node-specific Client Identifiers for
-Dynamic Host Configuration Protocol Version Four (DHCPv4)\fR. Nominum and Sun
-Microsystems. February 2006.
-.LP
-Droms, R. \fIRFC 3315, Dynamic Host Configuration Protocol for IPv6
-(DHCPv6)\fR. Cisco Systems. July 2003.
diff --git a/usr/src/man/man5/dhcp_inittab.5 b/usr/src/man/man5/dhcp_inittab.5
new file mode 100644
index 0000000000..42004d5786
--- /dev/null
+++ b/usr/src/man/man5/dhcp_inittab.5
@@ -0,0 +1,628 @@
+'\" te
+.\" Copyright (C) 2009, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright (c) 2016, Chris Fraire <cfraire@me.com>.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
+.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH DHCP_INITTAB 5 "Oct 31, 2016"
+.SH NAME
+dhcp_inittab \- information repository for DHCP options
+.SH DESCRIPTION
+.LP
+The \fB/etc/dhcp/inittab\fR and the \fB/etc/dhcp/inittab6\fR files contain
+information about the Dynamic Host Configuration Protocol (\fBDHCP\fR) options,
+which are network configuration parameters passed from \fBDHCP\fR servers to
+\fBDHCP\fR clients when a client machine uses \fBDHCP\fR. Since many
+\fBDHCP\fR-related commands must parse and understand these \fBDHCP\fR options,
+this file serves as a central location where information about these options
+may be obtained.
+.sp
+.LP
+The \fBDHCP\fR \fBinittab\fR and \fBinittab6\fR files provide three general
+pieces of information:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+A mnemonic alias, or symbol name, for each option number. For instance, option
+12 is aliased to the name \fBHostname\fR. This is useful for \fBDHCP\fR-related
+programs that require human interaction, such as \fBdhcpinfo\fR(1).
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Information about the syntax for each option. This includes information such as
+the type of the value, for example, whether it is a 16-bit integer or an
+\fBIP\fR address.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The policy for what options are visible to which \fBDHCP\fR-related programs.
+.RE
+.sp
+.LP
+If you make any changes to the \fB/etc/dhcp/inittab\fR file, note that only
+additions of or changes to \fBSITE\fR options are preserved during upgrade. For
+\fB/etc/dhcp/inittab6\fR, no options are preserved during upgrade.
+.sp
+.LP
+The \fBVENDOR\fR options defined here are intended for use by the Solaris
+\fBDHCP\fR client and \fBDHCP\fR management tools. The \fBSUNW\fR vendor space
+is owned by Sun, and changes are likely during upgrade. If you need to
+configure the Solaris \fBDHCP\fR server to support the vendor options of a
+different client, see \fBdhcptab\fR(5) for details.
+.sp
+.LP
+Each \fBDHCP\fR option belongs to a certain category, which roughly defines the
+scope of the option; for instance, an option may only be understood by certain
+hosts within a given site, or it may be globally understood by all \fBDHCP\fR
+clients and servers. The following categories are defined; the category names
+are not case-sensitive:
+.sp
+.ne 2
+.na
+\fB\fBSTANDARD\fR\fR
+.ad
+.RS 12n
+All client and server \fBDHCP\fR implementations agree on the semantics. These
+are administered by the Internet Assigned Numbers Authority (\fBIANA\fR). These
+options are numbered from \fB1\fR to \fB127\fR for IPv4 DHCP, and \fB1\fR to
+\fB65535\fR for DHCPv6.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSITE\fR\fR
+.ad
+.RS 12n
+Within a specific site, all client and server implementations agree on the
+semantics. However, at another site the type and meaning of the option may be
+quite different. These options are numbered from \fB128\fR to \fB254\fR for
+IPv4 DHCP. DHCPv6 does not support site options.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBVENDOR\fR\fR
+.ad
+.RS 12n
+Each vendor may define \fB254\fR options (65536 for DHCPv6) unique to that
+vendor. The vendor is identified within a \fBDHCP\fR packet by the "Vendor
+Class" option, number \fB60\fR (number \fB17\fR for DHCPv6). An option with a
+specific numeric identifier belonging to one vendor will, in general, have a
+type and semantics different from that of a different vendor. Vendor options
+are "super-encapsulated" into the vendor field number \fB43\fR, as defined in
+\fIRFC 2132\fR for IPv4 DHCP, and number \fB17\fR as defined in RFC 3315 for
+DHCPv6. The \fB/etc/dhcp/inittab\fR file contains only Sun vendor options.
+Define non-Sun vendor options in the \fBdhcptab\fR file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBFIELD\fR\fR
+.ad
+.RS 12n
+This category allows the fixed fields within a \fBDHCP\fR packet to be aliased
+to a mnemonic name for use with \fBdhcpinfo\fR(1).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBINTERNAL\fR\fR
+.ad
+.RS 12n
+This category is internal to the Solaris \fBDHCP\fR implementation and will not
+be further defined.
+.RE
+
+.SS "DHCP \fBinittab\fR and \fBinittab6\fR Format"
+.LP
+Data entries are written one per line and have seven fields; each entry
+provides information for one option. Each field is separated by a comma, except
+for the first and second, which are separated by whitespace (as defined in
+\fBisspace\fR(3C)). An entry cannot be continued onto another line. Blank lines
+and those whose first non-whitespace character is '#' are ignored.
+.sp
+.LP
+The fields, in order, are:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Mnemonic Identifier
+.sp
+The Mnemonic Identifier is a user-friendly alias for the option number; it is
+not case sensitive. This field must be per-category unique and should be unique
+across all categories. The option names in the \fBSTANDARD\fR, \fBSITE\fR, and
+\fBVENDOR\fR spaces should not overlap, or the behavior will be undefined. See
+\fBMnemonic Identifiers for Options\fR section of this man page for
+descriptions of the option names.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Category (scope)
+.sp
+The Category field is one of \fBSTANDARD\fR, \fBSITE\fR, \fBVENDOR\fR,
+\fBFIELD\fR, or \fBINTERNAL\fR and identifies the scope in which the option
+falls. \fBSITE\fR is not used in \fBinittab6\fR.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Option Number
+.sp
+The Option Number is the number of this option when it is in a \fBDHCP\fR
+packet. This field should be per-category unique and the \fBSTANDARD\fR and
+\fBSITE\fR fields should not have overlapping code fields or the behavior is
+undefined.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Data Type
+.sp
+Data Type is one of the following values, which are not case sensitive:
+.RS
+
+.sp
+.ne 2
+.na
+\fB\fBAscii\fR\fR
+.ad
+.RS 13n
+A printable character string
+.RE
+
+.sp
+.ne 2
+.na
+\fBBool\fR
+.ad
+.RS 13n
+Has no value. Scope limited to category limited to \fBINTERNAL\fR. Presence of
+an option of this type within a Solaris configuration file represents
+\fBTRUE\fR, absence represents \fBFALSE\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBOctet\fR\fR
+.ad
+.RS 13n
+An array of bytes
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBUnumber8\fR\fR
+.ad
+.RS 13n
+An 8-bit unsigned integer
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSnumber8\fR\fR
+.ad
+.RS 13n
+An 8-bit signed integer
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBUnumber16\fR\fR
+.ad
+.RS 13n
+A 16-bit unsigned integer
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSnumber16\fR\fR
+.ad
+.RS 13n
+A 16-bit signed integer
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBUnumber24\fR\fR
+.ad
+.RS 13n
+A 24-bit unsigned integer
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBUnumber32\fR\fR
+.ad
+.RS 13n
+A 32-bit unsigned integer
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSnumber32\fR\fR
+.ad
+.RS 13n
+A 32-bit signed integer
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBUnumber64\fR\fR
+.ad
+.RS 13n
+A 64-bit unsigned integer
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSnumber64\fR\fR
+.ad
+.RS 13n
+A 64-bit signed integer
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBIp\fR\fR
+.ad
+.RS 13n
+An \fBIPv4\fR address
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBIpv6\fR\fR
+.ad
+.RS 13n
+An \fBIPv6\fR address
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBDuid\fR\fR
+.ad
+.RS 13n
+An RFC 3315 Unique Identifier
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBDomain\fR\fR
+.ad
+.RS 13n
+An RFC 1035-encoded domain name
+.RE
+
+.RE
+
+The data type field describes an indivisible unit of the option payload, using
+one of the values listed above.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Granularity
+.sp
+The Granularity field describes how many indivisible units in the option
+payload make up a whole value or item for this option. The value must be
+greater than zero (\fB0\fR) for any data type other than Bool, in which case it
+must be zero (\fB0\fR).
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Maximum Number Of Items
+.sp
+This value specifies the maximum items of Granularity which are permissible
+in a definition using this symbol. For example, there can only be one IP
+address specified for a subnet mask, so the Maximum number of items
+in this case is one (\fB1\fR). A Maximum value of zero (\fB0\fR) means
+that a variable number of items is permitted.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Visibility
+.sp
+The Visibility field specifies which \fBDHCP\fR-related programs make use of
+this information, and should always be defined as \fBsdmi\fR for newly added
+options.
+.RE
+.SS "Mnemonic Identifiers for IPv4 Options"
+.LP
+The following table maps the mnemonic identifiers used in Solaris DHCP to
+\fIRFC 2132\fR options:
+.sp
+
+.sp
+.TS
+c c c
+l l l .
+\fISymbol\fR \fICode\fR \fIDescription\fR
+_
+\fBSubnet\fR \fB1\fR T{
+Subnet Mask, dotted Internet address (IP).
+T}
+\fBUTCoffst\fR \fB2\fR T{
+Coordinated Universal time offset (seconds) [deprecated].
+T}
+\fBRouter\fR \fB3\fR List of Routers, IP.
+\fBTimeserv\fR \fB4\fR List of RFC-868 servers, IP.
+\fBIEN116ns\fR \fB5\fR List of IEN 116 name servers, IP.
+\fBDNSserv\fR \fB6\fR List of DNS name servers, IP.
+\fBLogserv\fR \fB7\fR List of MIT-LCS UDP log servers, IP.
+\fBCookie\fR \fB8\fR List of RFC-865 cookie servers, IP.
+\fBLprserv\fR \fB9\fR T{
+List of RFC-1179 line printer servers, IP.
+T}
+\fBImpress\fR \fB10\fR List of Imagen Impress servers, IP.
+\fBResource\fR \fB11\fR T{
+List of RFC-887 resource location servers, IP.
+T}
+\fBHostname\fR \fB12\fR T{
+Client's hostname, value from hosts database.
+T}
+\fBBootsize\fR \fB13\fR T{
+Number of 512 octet blocks in boot image, NUMBER.
+T}
+\fBDumpfile\fR \fB14\fR T{
+Path where core image should be dumped, ASCII.
+T}
+\fBDNSdmain\fR \fB15\fR DNS domain name, ASCII.
+\fBSwapserv\fR \fB16\fR Client's swap server, IP.
+\fBRootpath\fR \fB17\fR Client's Root path, ASCII.
+\fBExtendP\fR \fB18\fR Extensions path, ASCII.
+\fBIpFwdF\fR \fB19\fR IP Forwarding Enable/Disable, NUMBER.
+\fBNLrouteF\fR \fB20\fR Non-local Source Routing, NUMBER.
+\fBPFilter\fR \fB21\fR Policy Filter, IP.
+\fBMaxIpSiz\fR \fB22\fR T{
+Maximum datagram Reassembly Size, NUMBER.
+T}
+\fBIpTTL\fR \fB23\fR T{
+Default IP Time to Live, (1=<x<=255), NUMBER.
+T}
+\fBPathTO\fR \fB24\fR RFC-1191 Path MTU Aging Timeout, NUMBER.
+\fBPathTbl\fR \fB25\fR RFC-1191 Path MTU Plateau Table, NUMBER.
+\fBMTU\fR \fB26\fR Interface MTU, x>=68, NUMBER.
+\fBSameMtuF\fR \fB27\fR All Subnets are Local, NUMBER.
+\fBBroadcst\fR \fB28\fR Broadcast Address, IP.
+\fBMaskDscF\fR \fB29\fR Perform Mask Discovery, NUMBER.
+\fBMaskSupF\fR \fB30\fR Mask Supplier, NUMBER.
+\fBRDiscvyF\fR \fB31\fR Perform Router Discovery, NUMBER.
+\fBRSolictS\fR \fB32\fR Router Solicitation Address, IP.
+\fBStaticRt\fR \fB33\fR T{
+Static Route, Double IP (network router).
+T}
+\fBTrailerF\fR \fB34\fR Trailer Encapsulation, NUMBER.
+\fBArpTimeO\fR \fB35\fR ARP Cache Time out, NUMBER.
+\fBEthEncap\fR \fB36\fR Ethernet Encapsulation, NUMBER.
+\fBTcpTTL\fR \fB37\fR TCP Default Time to Live, NUMBER.
+\fBTcpKaInt\fR \fB38\fR TCP Keepalive Interval, NUMBER.
+\fBTcpKaGbF\fR \fB39\fR TCP Keepalive Garbage, NUMBER.
+\fBNISdmain\fR \fB40\fR NIS Domain name, ASCII.
+\fBNISservs\fR \fB41\fR List of NIS servers, IP.
+\fBNTPservs\fR \fB42\fR List of NTP servers, IP.
+\fBNetBNms\fR \fB44\fR List of NetBIOS Name servers, IP.
+\fBNetBDsts\fR \fB45\fR T{
+List of NetBIOS Distribution servers, IP.
+T}
+\fBNetBNdT\fR \fB46\fR T{
+NetBIOS Node type (1=B-node, 2=P, 4=M, 8=H).
+T}
+\fBNetBScop\fR \fB47\fR NetBIOS scope, ASCII.
+\fBXFontSrv\fR \fB48\fR List of X Window Font servers, IP.
+\fBXDispMgr\fR \fB49\fR List of X Window Display managers, IP.
+\fBLeaseTim\fR \fB51\fR Lease Time Policy, (-1 = PERM), NUMBER.
+\fBMessage\fR \fB56\fR T{
+Message to be displayed on client, ASCII.
+T}
+\fBT1Time\fR \fB58\fR Renewal (T1) time, NUMBER.
+\fBT2Time\fR \fB59\fR Rebinding (T2) time, NUMBER.
+\fBNW_dmain\fR \fB62\fR NetWare/IP Domain Name, ASCII.
+\fBNWIPOpts\fR \fB63\fR T{
+NetWare/IP Options, OCTET (unknown type).
+T}
+\fBNIS+dom\fR \fB64\fR NIS+ Domain name, ASCII.
+\fBNIS+serv\fR \fB65\fR NIS+ servers, IP.
+\fBTFTPsrvN\fR \fB66\fR TFTP server hostname, ASCII.
+\fBOptBootF\fR \fB67\fR Optional Bootfile path, ASCII.
+\fBMblIPAgt\fR \fB68\fR Mobile IP Home Agent, IP.
+\fBSMTPserv\fR \fB69\fR T{
+Simple Mail Transport Protocol Server, IP.
+T}
+\fBPOP3serv\fR \fB70\fR Post Office Protocol (POP3) Server, IP.
+\fBNNTPserv\fR \fB71\fR T{
+Network News Transport Proto. (NNTP) Server, IP.
+T}
+\fBWWWservs\fR \fB72\fR Default WorldWideWeb Server, IP.
+\fBFingersv\fR \fB73\fR Default Finger Server, IP.
+\fBIRCservs\fR \fB74\fR Internet Relay Chat Server, IP.
+\fBSTservs\fR \fB75\fR StreetTalk Server, IP.
+\fBSTDAservs\fR \fB76\fR StreetTalk Directory Assist. Server, IP.
+\fBUserClas\fR \fB77\fR User class information, ASCII.
+\fBSLP_DA\fR \fB78\fR Directory agent, OCTET.
+\fBSLP_SS\fR \fB79\fR Service scope, OCTET.
+\fBClientFQDN\fR \fB81\fR Fully Qualified Domain Name, OCTET.
+\fBAgentOpt\fR \fB82\fR Agent circuit ID, OCTET.
+\fBFQDN\fR \fB89\fR Fully Qualified Domain Name, OCTET.
+\fBPXEarch\fR \fB93\fR Client system architecture, NUMBER.
+\fBBootFile\fR \fBN/A\fR File to Boot, ASCII.
+\fBBootPath\fR \fBN/A\fR T{
+Boot path prefix to apply to client's requested boot file, ASCII.
+T}
+\fBBootSrvA\fR \fBN/A\fR Boot Server, IP.
+\fBBootSrvN\fR \fBN/A\fR Boot Server Hostname, ASCII.
+\fBEchoVC\fR \fBN/A\fR T{
+Echo Vendor Class Identifier Flag, (Present=\fBTRUE\fR)
+T}
+\fBLeaseNeg\fR \fBN/A\fR Lease is Negotiable Flag, (Present=\fBTRUE\fR)
+.TE
+
+.SS "Mnemonic Identifiers for IPv6 Options"
+.LP
+The following table maps the mnemonic identifiers used in Solaris DHCP to RFC
+3315, 3319, 3646, 3898, 4075, and 4280 options:
+.sp
+
+.sp
+.TS
+c c c
+l l l .
+\fISymbol\fR \fICode\fR \fIDescription\fR
+_
+\fBClientID\fR \fB1\fR Unique identifier for client, DUID
+\fBServerID\fR \fB2\fR Unique identifier for server, DUID
+\fBPreference\fR \fB7\fR Server preference, NUMBER
+\fBUnicast\fR \fB12\fR Unicast server address, IPV6
+\fBUserClass\fR \fB15\fR User classes for client, OCTET
+\fBVendorClass\fR \fB16\fR Vendor client hardware items, OCTET
+\fBSIPNames\fR \fB21\fR SIP proxy server name list, DOMAIN
+\fBSIPAddresses\fR \fB22\fR T{
+SIP proxy server addresses in preference order, IPV6
+T}
+\fBDNSAddresses\fR \fB23\fR T{
+DNS server addresses in preference order, IPV6
+T}
+\fBDNSSearch\fR \fB24\fR DNS search list, DOMAIN
+\fBNISServers\fR \fB27\fR T{
+NIS server addresses in preference order, IPV6
+T}
+\fBNIS+Servers\fR \fB28\fR T{
+NIS+ server addresses in preference order, IPV6
+T}
+\fBNISDomain\fR \fB29\fR NIS domain name, DOMAIN
+\fBNIS+Domain\fR \fB30\fR NIS+ domain name, DOMAIN
+\fBSNTPServers\fR \fB31\fR IPV6
+\fBInfoRefresh\fR \fB32\fR UNUMBER32
+\fBBCMCDomain\fR \fB33\fR T{
+Broadcast/multicast control server name list, DOMAIN
+T}
+\fBBCMCAddresses\fR \fB34\fR T{
+Broadcast/multicast control server addresses, IPV6
+T}
+.TE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRAltering the DHCP \fBinittab\fR File
+.sp
+.LP
+In general, the \fBDHCP\fR \fBinittab\fR file should only be altered to add
+\fBSITE\fR options. If other options are added, they will not be automatically
+carried forward when the system is upgraded. For instance:
+
+.sp
+.in +2
+.nf
+ipPairs SITE, 132, IP, 2, 0, sdmi
+.fi
+.in -2
+
+.sp
+.LP
+describes an option named \fBipPairs\fR, that is in the \fBSITE\fR category.
+That is, it is defined by each individual site, and is option code 132, which
+is of type \fBIP\fR Address, consisting of a potentially infinite number of
+pairs of \fBIP\fR addresses.
+
+.SH FILES
+.in +2
+\fB/etc/dhcp/inittab\fR
+.in -2
+.br
+.in +2
+\fB/etc/dhcp/inittabv6\fR
+.in -2
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Committed
+.TE
+
+.SH SEE ALSO
+.LP
+.BR dhcpinfo (1),
+.BR isspace (3C),
+.BR dhcptab (5),
+.BR attributes (7),
+.BR dhcp (7),
+.BR dhcp_modules (7),
+.BR dhcpagent (8)
+.sp
+.LP
+\fISystem Administration Guide: IP Services\fR
+.sp
+.LP
+Alexander, S., and R. Droms. \fIRFC 2132, DHCP Options and BOOTP Vendor
+Extensions\fR. Network Working Group. March 1997.
+.sp
+.LP
+Droms, R. \fI RFC 2131, Dynamic Host Configuration Protocol\fR. Network Working
+Group. March 1997.
+.sp
+.LP
+Droms, R. \fIRFC 3315, Dynamic Host Configuration Protocol for IPv6
+(DHCPv6)\fR. Cisco Systems. July 2003.
+.sp
+.LP
+Schulzrinne, H., and B. Volz. \fIRFC 3319, Dynamic Host Configuration Protocol
+(DHCPv6) Options for Session Initiation Protocol (SIP) Servers\fR. Columbia
+University and Ericsson. July 2003.
+.sp
+.LP
+Droms, R. \fIRFC 3646, DNS Configuration options for Dynamic Host Configuration
+Protocol for IPv6 (DHCPv6)\fR. Cisco Systems. December 2003.
+.sp
+.LP
+Kalusivalingam, V. \fIRFC 3898, Network Information Service (NIS) Configuration
+Options for Dynamic Host Configuration Protocol for IPv6 (DHCPv6)\fR. Cisco
+Systems. October 2004.
+.sp
+.LP
+Chowdhury, K., P. Yegani, and L. Madour. \fIRFC 4280, Dynamic Host
+Configuration Protocol (DHCP) Options for Broadcast and Multicast Control
+Servers\fR. Starent Networks, Cisco Systems, and Ericsson. November 2005.
+.sp
+.LP
+Mockapetris, P.V. \fIRFC 1035, Domain names - implementation and
+specification\fR. ISI. November 1987.
diff --git a/usr/src/man/man5/dialups.5 b/usr/src/man/man5/dialups.5
new file mode 100644
index 0000000000..759e720c39
--- /dev/null
+++ b/usr/src/man/man5/dialups.5
@@ -0,0 +1,92 @@
+'\" te
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH DIALUPS 5 "May 4, 1994"
+.SH NAME
+dialups \- list of terminal devices requiring a dial-up password
+.SH SYNOPSIS
+.LP
+.nf
+\fB/etc/dialups\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBdialups\fR is an \fBASCII\fR file which contains a list of terminal devices
+that require a dial-up password. A dial-up password is an additional password
+required of users who access the computer through a modem or dial-up port. The
+correct password must be entered before the user is granted access to the
+computer. The set of ports that require a dial-up password are listed in the
+\fBdialups\fR file.
+.sp
+.LP
+Each entry in the \fBdialups\fR file is a single line of the form:
+.sp
+.in +2
+.nf
+\fIterminal-device\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+where
+.sp
+.ne 2
+.na
+\fB\fIterminal-device\fR\fR
+.ad
+.RS 19n
+The full path name of the terminal device that will require a dial-up password
+for users accessing the computer through a modem or dial-up port.
+.RE
+
+.sp
+.LP
+The \fBdialups\fR file should be owned by the \fBroot\fR user and the
+\fBroot\fR group. The file should have read and write permissions for the
+owner (\fBroot\fR) only.
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRA sample \fBdialups\fR file.
+.sp
+.LP
+Here is a sample \fBdialups\fR file:
+
+.sp
+.in +2
+.nf
+/dev/term/a
+/dev/term/b
+/dev/term/c
+.fi
+.in -2
+.sp
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/d_passwd\fR\fR
+.ad
+.RS 17n
+dial-up password file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/dialups\fR\fR
+.ad
+.RS 17n
+list of dial-up ports requiring dial-up passwords
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR d_passwd (5)
diff --git a/usr/src/man/man5/dir_ufs.5 b/usr/src/man/man5/dir_ufs.5
new file mode 100644
index 0000000000..082584342c
--- /dev/null
+++ b/usr/src/man/man5/dir_ufs.5
@@ -0,0 +1,75 @@
+'\" te
+.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH DIR_UFS 5 "Apr 16, 2003"
+.SH NAME
+dir_ufs, dir \- format of ufs directories
+.SH SYNOPSIS
+.LP
+.nf
+\fB#include <sys/param.h>\fR
+.fi
+
+.LP
+.nf
+\fB#include <sys/types.h>\fR
+.fi
+
+.LP
+.nf
+\fB#include <sys/fs/ufs_fsdir.h>\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+A directory consists of some number of blocks of \fBDIRBLKSIZ\fR bytes, where
+\fBDIRBLKSIZ\fR is chosen such that it can be transferred to disk in a single
+atomic operation, for example, 512 bytes on most machines.
+.sp
+.LP
+Each \fBDIRBLKSIZ\fR-byte block contains some number of directory entry
+structures, which are of variable length. Each directory entry has a
+\fBstruct direct\fR at the front of it, containing its inode number, the length
+of the entry, and the length of the name contained in the entry. These entries
+are followed by the name padded to a 4 byte boundary with null bytes. All
+names are guaranteed null-terminated. The maximum length of a name in a
+directory is \fBMAXNAMLEN\fR.
+.sp
+.in +2
+.nf
+#define DIRBLKSIZ DEV_BSIZE
+#define MAXNAMLEN 256
+struct direct {
+ ulong_t d_ino; /* inode number of entry */
+ ushort_t d_reclen; /* length of this record */
+ ushort_t d_namlen; /* length of string in d_name */
+ char d_name[MAXNAMLEN + 1]; /* maximum name length */
+};
+.fi
+.in -2
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for a description of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Unstable
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR ufs (4FS),
+.BR attributes (7)
diff --git a/usr/src/man/man5/driver.conf.5 b/usr/src/man/man5/driver.conf.5
new file mode 100644
index 0000000000..21f15ec54a
--- /dev/null
+++ b/usr/src/man/man5/driver.conf.5
@@ -0,0 +1,229 @@
+'\" te
+.\" Copyright (c) 2005, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH DRIVER.CONF 5 "Sep 16, 2018"
+.SH NAME
+driver.conf \- driver configuration files
+.SH SYNOPSIS
+.LP
+.nf
+\fBdriver.conf\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+Driver configuration files provide values for device properties. The values
+override values provided by the devices themselves. Most modern devices provide
+enough property values to make a driver configuration file unnecessary.
+.sp
+.LP
+The system associates a driver with its configuration file by name. For
+example, a driver in \fB/usr/kernel/drv\fR called \fBwombat\fR has the driver
+configuration file \fBwombat.conf\fR, also stored in \fB/usr/kernel/drv\fR,
+associated with it. On systems that support 64-bit drivers, the driver
+configuration file should be placed in the directory in which the 32-bit driver
+is (or would be) located, even if only a 64-bit version is provided. For
+example, a 64-bit driver stored in \fB/usr/kernel/drv/sparcv9\fR stores its
+driver configuration file in \fB/usr/kernel/drv\fR.
+.sp
+.LP
+The value of the \fBname\fR property is the node name. In a \fBdriver.conf\fR
+file, where the generic node name and \fBcompatible\fR property associated with
+a self-identifying devices are typically not used, the node name must be a
+binding name. The binding name is the name chosen by the system to bind a
+driver to the device. The binding name is either an alias associated with the
+driver established by \fBadd_drv\fR(8) or the driver name itself.
+.sp
+.LP
+The syntax of a single entry in a driver configuration file takes one of three
+forms:
+.sp
+.in +2
+.nf
+\fBname\fR="\fInode name\fR" \fBparent\fR="\fIparent name\fR" [\fIproperty-name=value\fR ...]\fB;\fR
+.fi
+.in -2
+
+.sp
+.LP
+In this form, the parent name can be either the binding name of the parent
+nexus driver or a specific full pathname, beginning with a slash (\fB/\fR)
+character, identifying a specific instance of a parent bus. If a binding name
+is used then all parent nodes bound to that driver match. A generic name (for
+example, \fBpci\fR) is not a valid binding name even though it can appear in
+the full pathname of all intended parents.
+.sp
+.LP
+Alternatively, the parent can be specified by the type of interface it presents
+to its children.
+.sp
+.in +2
+.nf
+\fBname\fR="\fInode name\fR" \fBclass\fR="\fIclass name\fR" [\fIproperty-name=value\fR ...]\fB;\fR
+.fi
+.in -2
+
+.sp
+.LP
+For example, the driver for the \fBSCSI\fR host adapter can have different
+names on different platforms, but the target drivers can use class \fBscsi\fR
+to insulate themselves from these differences.
+.sp
+.LP
+Entries of either form above correspond to a device information (\fBdevinfo\fR)
+node in the kernel device tree. Each node has a \fIname\fR which is usually the
+name of the driver, and a \fIparent\fR name which is the name of the parent
+\fBdevinfo\fR node to which it will be connected. Any number of name-value
+pairs can be specified to create properties on the prototype \fBdevinfo\fR
+node. These properties can be retrieved using the DDI property interfaces (for
+example, \fBddi_prop_get_int\fR(9F) and \fBddi_prop_lookup\fR(9F)). The
+prototype \fBdevinfo\fR node specification must be terminated with a semicolon
+(\fB;\fR).
+.sp
+.LP
+The third form of an entry is simply a list of properties.
+.sp
+.in +2
+.nf
+[\fIproperty-name=value\fR ...]\fB;\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+A property created in this way is treated as global to the driver. It can be
+overridden by a property with the same name on a particular \fBdevinfo\fR node,
+either by creating one explicitly on the prototype node in the driver.conf file
+or by the driver.
+.sp
+.LP
+Items are separated by any number of newlines, \fBSPACE\fR or \fBTAB\fR
+characters.
+.sp
+.LP
+The configuration file can contain several entries to specify different device
+configurations and parent nodes. The system can call the driver for each
+possible prototype \fBdevinfo\fR node, and it is generally the responsibility
+of the drivers \fBprobe\fR(9E) routine to determine if the hardware described
+by the prototype \fBdevinfo\fR node is really present.
+.sp
+.LP
+Property names must not violate the naming conventions for Open Boot PROM
+properties or for IEEE 1275 names. In particular, property names should contain
+only printable characters, and should not contain at-sign (\fB@\fR), slash
+(\fB/\fR), backslash (\fB\e\fR), colon (\fB:\fR), or square brackets
+(\fB[]\fR). Property values can be decimal integers or strings delimited by
+double quotes (\fB"\fR). Hexadecimal integers can be constructed by prefixing
+the digits with \fB0x\fR.
+.sp
+.LP
+A comma separated list of integers can be used to construct properties whose
+value is an integer array. The value of such properties can be retrieved inside
+the driver using \fBddi_prop_lookup_int_array\fR(9F).
+.sp
+.LP
+Comments are specified by placing a \fB#\fR character at the beginning of the
+comment string, the comment string extends for the rest of the line.
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRConfiguration File for a PCI Bus Frame Buffer
+.sp
+.LP
+The following is an example of a configuration file called
+\fBACME,simple.conf\fR for a \fBPCI\fR bus frame buffer called
+\fBACME,simple\fR.
+
+.sp
+.in +2
+.nf
+#
+# Copyright (c) 1993, by ACME Fictitious Devices, Inc.
+#
+#ident "@(#)ACME,simple.conf 1.3 1999/09/09"
+
+name="ACME,simple" class="pci" unit-address="3,1"
+ debug-mode=12;
+.fi
+.in -2
+
+.sp
+.LP
+This example creates a prototype \fBdevinfo\fR node called \fBACME,simple\fR
+under all parent nodes of class \fBpci\fR. The node has device and function
+numbers of 3 and 1, respectively; the property \fBdebug-mode\fR is provided for
+all instances of the driver.
+
+.LP
+\fBExample 2 \fRConfiguration File for a Pseudo Device Driver
+.sp
+.LP
+The following is an example of a configuration file called
+\fBACME,example.conf\fR for a pseudo device driver called \fBACME,example\fR.
+
+.sp
+.in +2
+.nf
+#
+# Copyright (c) 1993, ACME Fictitious Devices, Inc.
+#
+#ident "@(#)ACME,example.conf 1.2 93/09/09"
+name="ACME,example" parent="pseudo" instance=0
+ debug-level=1;
+
+name="ACME,example" parent="pseudo" instance=1;
+
+whizzy-mode="on";
+debug-level=3;
+.fi
+.in -2
+
+.sp
+.LP
+This creates two \fBdevinfo\fR nodes called \fBACME,example\fR which attaches
+below the \fBpseudo\fR node in the kernel device tree. The \fBinstance\fR
+property is only interpreted by the \fBpseudo\fR node, see \fBpseudo\fR(5) for
+further details. A property called \fBdebug-level\fR is created on the first
+\fBdevinfo\fR node which has the value 1. The \fBexample\fR driver is able to
+fetch the value of this property using \fBddi_prop_get_int\fR(9F).
+
+.sp
+.LP
+Two global driver properties are created, \fBwhizzy-mode\fR (which has the
+string value "on") and \fBdebug-level\fR (which has the value 3). If the driver
+looks up the property \fBwhizzy-mode\fR on either node, it retrieves the value
+of the global \fBwhizzy-mode\fR property ("on"). If the driver looks up the
+\fBdebug-level\fR property on the first node, it retrieves the value of the
+\fBdebug-level\fR property on that node (1). Looking up the same property on
+the second node retrieves the value of the global \fBdebug-level\fR property
+(3).
+
+.SH SEE ALSO
+.LP
+.BR pci (5),
+.BR pseudo (5),
+.BR sbus (5),
+.BR scsi (5),
+.BR add_drv (8),
+.BR probe (9E),
+.BR ddi_getlongprop (9F),
+.BR ddi_getprop (9F),
+.BR ddi_getproplen (9F),
+.BR ddi_prop_get_int (9F),
+.BR ddi_prop_lookup (9F),
+.BR ddi_prop_op (9F)
+.sp
+.LP
+\fIWriting Device Drivers\fR
+.SH WARNINGS
+.LP
+To avoid namespace collisions between multiple driver vendors, it is strongly
+recommended that the \fIname\fR property of the driver should begin with a
+vendor-unique string. A reasonably compact and unique choice is the vendor
+over-the-counter stock symbol.
+.SH NOTES
+.LP
+The \fBupdate_drv\fR(8) command should be used to prompt the kernel to reread
+\fBdriver.conf\fR files.
diff --git a/usr/src/man/man5/environ.5 b/usr/src/man/man5/environ.5
deleted file mode 100644
index 2e82787f81..0000000000
--- a/usr/src/man/man5/environ.5
+++ /dev/null
@@ -1,533 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T
-.\" Copyright (c) 2002, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright (c) 2014, Joyent, Inc. All Rights Reserved
-.\" Copyright 2014 Garrett D'Amore <garrett@damore.org>
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH ENVIRON 5 "Jun 26, 2014"
-.SH NAME
-environ \- user environment
-.SH DESCRIPTION
-.LP
-When a process begins execution, one of the \fBexec\fR family of functions
-makes available an array of strings called the environment; see \fBexec\fR(2).
-By convention, these strings have the form \fIvariable=value\fR, for example,
-\fBPATH=/sbin:/usr/sbin\fR. These environmental variables provide a way to make
-information about a program's environment available to programs.
-.LP
-A name may be placed in the environment by the \fBexport\fR command and
-\fIname\fR=\fIvalue\fR arguments in \fBsh\fR(1), or by one of the \fBexec\fR
-functions. It is unwise to conflict with certain shell variables such as
-\fBMAIL\fR, \fBPS1\fR, \fBPS2\fR, and \fBIFS\fR that are frequently exported by
-\fB\&.profile\fR files; see \fBprofile\fR(4).
-.LP
-The following environmental variables can be used by applications and are
-expected to be set in the target run-time environment.
-.sp
-.ne 2
-.na
-\fB\fBHOME\fR\fR
-.ad
-.sp .6
-.RS 4n
-The name of the user's login directory, set by \fBlogin\fR(1) from the password
-file; see \fBpasswd\fR(4).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBLANG\fR\fR
-.ad
-.sp .6
-.RS 4n
-The string used to specify internationalization information that allows users
-to work with different national conventions. The \fBsetlocale\fR(3C) and
-\fBnewlocale\fR(3C) functions
-check the \fBLANG\fR environment variable when they are called with \fB""\fR as
-the \fBlocale\fR argument. \fBLANG\fR is used as the default locale if the
-corresponding environment variable for a particular category is unset or null.
-If, however, \fBLC_ALL\fR is set to a valid, non-empty value, its contents are
-used to override both the \fBLANG\fR and the other \fBLC_*\fR variables. For
-example, when invoked as \fBsetlocale(LC_CTYPE, "")\fR, \fBsetlocale()\fR will
-query the \fBLC_CTYPE\fR environment variable first to see if it is set and
-non-null. If \fBLC_CTYPE\fR is not set or null, then \fBsetlocale()\fR will
-check the \fBLANG\fR environment variable to see if it is set and non-null. If
-both \fBLANG\fR and \fBLC_CTYPE\fR are unset or \fINULL\fR, the default "C"
-locale will be used to set the \fBLC_CTYPE\fR category.
-.sp
-Most commands will invoke \fBsetlocale(LC_ALL, "")\fR prior to any other
-processing. This allows the command to be used with different national
-conventions by setting the appropriate environment variables. In addition, some
-commands will use
-.BR uselocale (3C)
-to set a thread-specific locale.
-.sp
-The following environment variables correspond to each category of
-\fBsetlocale\fR(3C):
-.sp
-.ne 2
-.na
-\fB\fBLC_ALL\fR\fR
-.ad
-.sp .6
-.RS 4n
-If set to a valid, non-empty string value, override the values of \fBLANG\fR
-and all the other \fBLC_*\fRvariables.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBLC_COLLATE\fR\fR
-.ad
-.sp .6
-.RS 4n
-This category specifies the character collation sequence being used. The
-information corresponding to this category is stored in a database created by
-the \fBlocaledef\fR(1) command. This environment variable affects
-\fBstrcoll\fR(3C) and \fBstrxfrm\fR(3C).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBLC_CTYPE\fR\fR
-.ad
-.sp .6
-.RS 4n
-This category specifies character classification, character conversion, and
-widths of multibyte characters. When \fBLC_CTYPE\fR is set to a valid value,
-the calling utility can display and handle text and file names containing valid
-characters for that locale; Extended Unix Code (EUC) characters where any
-individual character can be 1, 2, or 3 bytes wide; and EUC characters of 1, 2,
-or 3 column widths. The default "C" locale corresponds to the 7-bit \fBASCII\fR
-character set; only characters from ISO 8859-1 are valid. The information
-corresponding to this category is stored in a database created by the
-\fBlocaledef()\fR command. This environment variable is used by
-\fBctype\fR(3C), \fBmblen\fR(3C), and many commands, such as \fBcat\fR(1),
-\fBed\fR(1), \fBls\fR(1), and \fBvi\fR(1).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBLC_MESSAGES\fR\fR
-.ad
-.sp .6
-.RS 4n
-This category specifies the language of the message database being used. For
-example, an application may have one message database with French messages, and
-another database with German messages. Message databases are created by the
-\fBmkmsgs\fR(1) command. This environment variable is used by \fBexstr\fR(1),
-\fBgettxt\fR(1), \fBsrchtxt\fR(1), \fBgettxt\fR(3C), and \fBgettext\fR(3C).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBLC_MONETARY\fR\fR
-.ad
-.sp .6
-.RS 4n
-This category specifies the monetary symbols and delimiters used for a
-particular locale. The information corresponding to this category is stored in
-a database created by the \fBlocaledef\fR(1) command. This environment variable
-is used by \fBlocaleconv\fR(3C).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBLC_NUMERIC\fR\fR
-.ad
-.sp .6
-.RS 4n
-This category specifies the decimal and thousands delimiters. The information
-corresponding to this category is stored in a database created by the
-\fBlocaledef()\fR command. The default \fBC\fR locale corresponds to \fB"."\fR
-as the decimal delimiter and no thousands delimiter. This environment variable
-is used by \fBlocaleconv\fR(3C), \fBprintf\fR(3C), and \fBstrtod\fR(3C).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBLC_TIME\fR\fR
-.ad
-.sp .6
-.RS 4n
-This category specifies date and time formats. The information corresponding to
-this category is stored in a database specified in \fBlocaledef()\fR. The
-default \fBC\fR locale corresponds to U.S. date and time formats. This
-environment variable is used by many commands and functions; for example:
-\fBat\fR(1), \fBcalendar\fR(1), \fBdate\fR(1), \fBstrftime\fR(3C), and
-\fBgetdate\fR(3C).
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBMSGVERB\fR\fR
-.ad
-.sp .6
-.RS 4n
-Controls which standard format message components \fBfmtmsg\fR selects when
-messages are displayed to \fBstderr\fR; see \fBfmtmsg\fR(1) and
-\fBfmtmsg\fR(3C).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBNETPATH\fR\fR
-.ad
-.sp .6
-.RS 4n
-A colon-separated list of network identifiers. A network identifier is a
-character string used by the Network Selection component of the system to
-provide application-specific default network search paths. A network identifier
-must consist of non-null characters and must have a length of at least 1. No
-maximum length is specified. Network identifiers are normally chosen by the
-system administrator. A network identifier is also the first field in any
-\fB/etc/netconfig\fR file entry. \fBNETPATH\fR thus provides a link into the
-\fB/etc/netconfig\fR file and the information about a network contained in that
-network's entry. \fB/etc/netconfig\fR is maintained by the system
-administrator. The library routines described in \fBgetnetpath\fR(3NSL) access
-the \fBNETPATH\fR environment variable.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBNLSPATH\fR\fR
-.ad
-.sp .6
-.RS 4n
-Contains a sequence of templates which \fBcatopen\fR(3C) and \fBgettext\fR(3C)
-use when attempting to locate message catalogs. Each template consists of an
-optional prefix, one or more substitution fields, a filename and an optional
-suffix. For example:
-.sp
-.in +2
-.nf
-NLSPATH="/system/nlslib/%N.cat"
-.fi
-.in -2
-.sp
-
-defines that \fBcatopen()\fR should look for all message catalogs in the
-directory \fB/system/nlslib\fR, where the catalog name should be constructed
-from the \fIname\fR parameter passed to \fBcatopen\fR(\|), \fB%N\fR, with the
-suffix \fB\&.cat\fR.
-.sp
-Substitution fields consist of a \fB%\fR symbol, followed by a single-letter
-keyword. The following keywords are currently defined:
-.sp
-.ne 2
-.na
-\fB%N\fR
-.ad
-.sp .6
-.RS 4n
-The value of the \fIname\fR parameter passed to \fBcatopen()\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB%L\fR
-.ad
-.sp .6
-.RS 4n
-The value of \fBLANG\fR or \fBLC_MESSAGES\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB%l\fR
-.ad
-.sp .6
-.RS 4n
-The language element from \fBLANG\fR or \fBLC_MESSAGES\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB%t\fR
-.ad
-.sp .6
-.RS 4n
-The territory element from \fBLANG\fR or \fBLC_MESSAGES\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB%c\fR
-.ad
-.sp .6
-.RS 4n
-The codeset element from \fBLANG\fR or \fBLC_MESSAGES\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB%%\fR
-.ad
-.sp .6
-.RS 4n
-A single \fB%\fR character.
-.RE
-
-An empty string is substituted if the specified value is not currently defined.
-The separators "\fB_\fR" and "\fB\&.\fR" are not included in \fB%t\fR and
-\fB%c\fR substitutions.
-.sp
-Templates defined in \fBNLSPATH\fR are separated by colons (\fB:\fR). A leading
-colon or two adjacent colons (\fB::\fR) is equivalent to specifying \fB%N\fR.
-For example:
-.sp
-.in +2
-.nf
-NLSPATH=":%N.cat:/nlslib/%L/%N.cat"
-.fi
-.in -2
-.sp
-
-indicates to \fBcatopen()\fR that it should look for the requested message
-catalog in \fIname\fR, \fIname\fR\fB\&.cat\fR and
-\fB/nlslib/$LANG/\fR\fIname\fR.cat. For \fBgettext()\fR, \fB%N\fR automatically
-maps to "messages".
-.sp
-If \fBNLSPATH\fR is unset or \fINULL\fR, \fBcatopen()\fR and \fBgettext()\fR
-call \fBsetlocale\fR(3C), which checks \fBLANG\fR and the \fBLC_*\fR
-variables to locate the message catalogs.
-.sp
-\fBNLSPATH\fR will normally be set up on a system wide basis (in
-\fB/etc/profile\fR) and thus makes the location and naming conventions
-associated with message catalogs transparent to both programs and users.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPATH\fR\fR
-.ad
-.sp .6
-.RS 4n
-The sequence of directory prefixes that \fBsh\fR(1), \fBtime\fR(1),
-\fBnice\fR(1), \fBnohup\fR(1), and other utilities apply in searching for a
-file known by an incomplete path name. The prefixes are separated by colons
-(\fB:\fR). \fBlogin\fR(1) sets \fBPATH=/usr/bin\fR. For more detail, see
-\fBsh\fR(1).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSEV_LEVEL\fR\fR
-.ad
-.sp .6
-.RS 4n
-Define severity levels and associate and print strings with them in standard
-format error messages; see \fBaddseverity\fR(3C), \fBfmtmsg\fR(1), and
-\fBfmtmsg\fR(3C).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBTERM\fR\fR
-.ad
-.sp .6
-.RS 4n
-The kind of terminal for which output is to be prepared. This information is
-used by commands, such as \fBvi\fR(1), which may exploit special capabilities
-of that terminal.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBTZ\fR\fR
-.ad
-.sp .6
-.RS 4n
-Timezone information. The contents of this environment variable are used by the
-functions \fBctime\fR(3C), \fBlocaltime\fR(3C), \fBstrftime\fR(3C), and
-\fBmktime\fR(3C) to override the default timezone. The value of \fBTZ\fR has
-one of the two formats (spaces inserted for clarity):
-.sp
-.in +2
-.nf
-:characters
-.fi
-.in -2
-
-or
-.sp
-.in +2
-.nf
-std offset dst offset, rule
-.fi
-.in -2
-
-If \fBTZ\fR is of the first format (that is, if the first character is a colon
-(:)), or if \fBTZ\fR is not of the second format, then \fBTZ\fR designates a
-path to a timezone database file relative to \fB/usr/share/lib/zoneinfo/\fR,
-ignoring a leading colon if one exists.
-.sp
-Otherwise, \fBTZ\fR is of the second form, which when expanded is as follows:
-.sp
-.in +2
-.nf
-\fIstdoffset\fR[\fIdst\fR[\fIoffset\fR][,\fIstart\fR[/\fItime\fR],\fIend\fR[/\fItime\fR]]]
-.fi
-.in -2
-
-.sp
-.ne 2
-.na
-\fB\fIstd\fR and \fIdst\fR\fR
-.ad
-.sp .6
-.RS 4n
-Indicate no less than three, nor more than {\fBTZNAME_MAX\fR}, bytes that are
-the designation for the standard (\fIstd\fR) or the alternative (\fIdst\fR,
-such as Daylight Savings Time) timezone. Only \fIstd\fR is required; if
-\fIdst\fR is missing, then the alternative time does not apply in this
-timezone. Each of these fields can occur in either of two formats, quoted or
-unquoted:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-In the quoted form, the first character is the less-than ('<') character and
-the last character is the greater-than ('>') character. All characters between
-these quoting characters are alphanumeric characters from the portable
-character set in the current locale, the plus-sign ('+') character, or the
-minus-sign ('-') character. The \fIstd\fR and \fIdst\fR fields in this case do
-not include the quoting characters.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-In the unquoted form, all characters in these fields are alphabetic characters
-from the portable character set in the current locale.
-.RE
-The interpretation of these fields is unspecified if either field is less than
-three bytes (except for the case when \fIdst\fR is missing), more than
-{\fBTZNAME_MAX\fR} bytes, or if they contain characters other than those
-specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIoffset\fR\fR
-.ad
-.sp .6
-.RS 4n
-Indicate the value one must add to the local time to arrive at Coordinated
-Universal Time. The offset has the form:
-.sp
-.in +2
-.nf
-\fIhh\fR[:\fImm\fR[:\fIss\fR]]
-.fi
-.in -2
-.sp
-
-The minutes (\fImm\fR) and seconds (\fIss\fR) are optional. The hour (\fIhh\fR)
-is required and can be a single digit. The \fIoffset\fR following \fIstd\fR is
-required. If no \fIoffset\fR follows \fIdst\fR, daylight savings time is
-assumed to be one hour ahead of standard time. One or more digits can be used.
-The value is always interpreted as a decimal number. The hour must be between 0
-and 24, and the minutes (and seconds), if present, must be between 0 and 59.
-Out of range values can cause unpredictable behavior. If preceded by a "-", the
-timezone is east of the Prime Meridian. Otherwise, it is west of the Prime
-Meridian (which can be indicated by an optional preceding "\fI+\fR" sign).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIstart\fR/\fItime\fR,\|\fIend\fR/\fItime\fR\fR
-.ad
-.sp .6
-.RS 4n
-Indicate when to change to and back from daylight savings time, where
-\fIstart/time\fR describes when the change from standard time to daylight
-savings time occurs, and \fIend/time\fR describes when the change back occurs.
-Each \fItime\fR field describes when, in current local time, the change is
-made.
-.sp
-The formats of \fIstart\fR and \fIend\fR are one of the following:
-.sp
-.ne 2
-.na
-\fB\fBJ\fR\fIn\fR\fR
-.ad
-.sp .6
-.RS 4n
-The Julian day \fIn\fR (1 \(<= \fIn\fR \(<= 365). Leap days are not counted.
-That is, in all years, February 28 is day 59 and March 1 is day 60. It is
-impossible to refer to the occasional February 29.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIn\fR\fR
-.ad
-.sp .6
-.RS 4n
-The zero-based Julian day (0 \(<= \fIn\fR \(<= 365). Leap days are counted, and
-it is possible to refer to February 29.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM\fR\fIm.n.d\fR\fR
-.ad
-.sp .6
-.RS 4n
-The \fId\fR^th day, (0 \(<= \fId\fR \(<= 6) of week \fIn\fR of month \fIm\fR of
-the year (1 \(<= \fIn\fR \(<= 5, 1 \(<= \fIm\fR \(<= 12), where week 5 means
-"the last \fId\fR-day in month \fIm\fR" which may occur in either the fourth or
-the fifth week). Week 1 is the first week in which the \fId\fR^th day occurs.
-Day zero is Sunday.
-.RE
-
-Implementation specific defaults are used for \fIstart\fR and \fIend\fR if
-these optional fields are not specified.
-.sp
-The \fItime\fR has the same format as \fIoffset\fR except that no leading sign
-("-" or "+" ) is allowed. If \fItime\fR is not specified, the default value is
-02:00:00.
-.RE
-
-.RE
-
-.SH SEE ALSO
-.LP
-\fBcat\fR(1), \fBdate\fR(1), \fBed\fR(1), \fBfmtmsg\fR(1), \fBlocaledef\fR(1),
-\fBlogin\fR(1), \fBls\fR(1), \fBmkmsgs\fR(1), \fBnice\fR(1), \fBnohup\fR(1),
-\fBsh\fR(1), \fBsort\fR(1), \fBtime\fR(1), \fBvi\fR(1), \fBexec\fR(2),
-\fBaddseverity\fR(3C), \fBcatopen\fR(3C), \fBctime\fR(3C), \fBctype\fR(3C),
-\fBfmtmsg\fR(3C), \fBgetdate\fR(3C), \fBgetnetpath\fR(3NSL), \fBgettext\fR(3C),
-\fBgettxt\fR(3C), \fBlocaleconv\fR(3C), \fBmblen\fR(3C), \fBmktime\fR(3C),
-\fBnewlocale\fR(3C),
-\fBprintf\fR(3C), \fBsetlocale\fR(3C), \fBstrcoll\fR(3C), \fBstrftime\fR(3C),
-\fBstrtod\fR(3C), \fBstrxfrm\fR(3C), \fBuselocale\fR(3C), \fBTIMEZONE\fR(4),
-\fBnetconfig\fR(4), \fBpasswd\fR(4), \fBprofile\fR(4)
diff --git a/usr/src/man/man5/epoll.5 b/usr/src/man/man5/epoll.5
deleted file mode 100644
index 2e64991cbf..0000000000
--- a/usr/src/man/man5/epoll.5
+++ /dev/null
@@ -1,103 +0,0 @@
-'\" te
-.\" Copyright (c) 2014, Joyent, Inc. All Rights Reserved.
-.\" This file and its contents are supplied under the terms of the
-.\" Common Development and Distribution License ("CDDL"), version 1.0.
-.\" You may only use this file in accordance with the terms of version
-.\" 1.0 of the CDDL.
-.\"
-.\" A full copy of the text of the CDDL should have accompanied this
-.\" source. A copy of the CDDL is also available via the Internet at
-.\" http://www.illumos.org/license/CDDL.
-.TH EPOLL 5 "May 16, 2020"
-.SH NAME
-epoll \- Linux-compatible I/O event notification facility
-.SH SYNOPSIS
-.nf
-#include <sys/epoll.h>
-.fi
-
-.SH DESCRIPTION
-\fBepoll\fR is a facility for efficient event-oriented I/O that has a
-similar model to \fBpoll\fR(2), but does not necessitate rescanning a
-set of file descriptors to wait for an event. \fBepoll\fR is of Linux
-origins, and this facility is designed to be binary-compatible with
-the Linux facility, including the following interfaces:
-
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBepoll_create\fR(3C) creates an \fBepoll\fR instance, returning a file
-descriptor. It contains a size argument which is meaningful only in as
-much as it cannot be 0.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBepoll_create1\fR(3C) also creates an \fBepoll\fR instance, but eliminates
-the meaningless size argument -- replacing it instead with a flags
-argument.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBepoll_ctl\fR(3C) allows file descriptors to be added
-(via \fBEPOLL_CTL_ADD\fR), deleted (via \fBEPOLL_CTL_DEL\fR) or
-modified (via \fBEPOLL_CTL_MOD\fR) with respect to the \fBepoll\fR'd set
-of file descriptors.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBepoll_wait\fR(3C) fetches pending events for file descriptors added
-via \fBepoll_ctl\fR(3C), blocking the caller if no such events are pending.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBepoll_pwait\fR(3C) operates in a similar manner to \fBepoll_wait\fR(3C), but
-allows the caller to specify a signal mask to be set atomically with respect
-to waiting for events.
-.RE
-
-.sp
-.SH NOTES
-The \fBepoll\fR facility is implemented
-for purposes of offering compatibility to and portability of Linux-borne
-applications; native applications should continue to prefer using event ports
-via the \fBport_create\fR(3C),
-\fBport_associate\fR(3C) and \fBport_getn\fR(3C) interfaces.
-In particular, use of \fBepoll\fR in a multithreaded environment is fraught
-with peril; even when using \fBEPOLLONESHOT\fR for one-shot events,
-there are race conditions with respect to \fBclose\fR(2) that are unresolvable.
-(For more details, see the aborted effort in Linux to resolve this via the
-proposed
-\fBEPOLL_CTL_DISABLE\fR operation.)
-The event port facility -- like the BSD kqueue facility that inspired it --
-is designed to deal with such issues via explicit event source dissociation.
-
-While a best effort has been made to mimic the Linux semantics, there
-are some semantics that are too peculiar or ill-conceived to merit
-accommodation. In particular, the Linux \fBepoll\fR facility will -- by
-design -- continue to generate events for closed file descriptors where/when
-the underlying file description remains open. For example, if one were
-to \fBfork\fR(2) and subsequently close an actively \fBepoll\fR'd file
-descriptor in the parent,
-any events generated in the child on the implicitly duplicated file descriptor
-will continue to be delivered to the parent -- despite the fact that the
-parent itself no longer has any notion of the file description!
-This \fBepoll\fR facility refuses to honor
-these semantics; closing the \fBEPOLL_CTL_ADD\fR'd file descriptor
-will always result in no further
-events being generated for that event description.
-
-.SH SEE ALSO
-\fBepoll_create\fR(3C), \fBepoll_create1\fR(3C), \fBepoll_ctl\fR(3C),
-\fBepoll_wait\fR(3C), \fBepoll_pwait\fR(3C),
-\fBport_create\fR(3C), \fBport_associate\fR(3C), \fBport_dissociate\fR(3C),
-\fBport_get\fR(3C),
-\fBpselect\fR(3C)
diff --git a/usr/src/man/man5/eqn.5 b/usr/src/man/man5/eqn.5
deleted file mode 100644
index c8c33e7214..0000000000
--- a/usr/src/man/man5/eqn.5
+++ /dev/null
@@ -1,507 +0,0 @@
-.\" $Id: eqn.7,v 1.39 2020/01/10 11:55:04 schwarze Exp $
-.\"
-.\" Copyright (c) 2011 Kristaps Dzonsons <kristaps@bsd.lv>
-.\" Copyright (c) 2014 Ingo Schwarze <schwarze@openbsd.org>
-.\"
-.\" Permission to use, copy, modify, and distribute this software for any
-.\" purpose with or without fee is hereby granted, provided that the above
-.\" copyright notice and this permission notice appear in all copies.
-.\"
-.\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
-.\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
-.\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
-.\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
-.\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
-.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
-.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
-.\"
-.Dd $Mdocdate: January 10 2020 $
-.Dt EQN 5
-.Os
-.Sh NAME
-.Nm eqn
-.Nd eqn language reference for mandoc
-.Sh DESCRIPTION
-The
-.Nm eqn
-language is an equation-formatting language.
-It is used within
-.Xr mdoc 5
-and
-.Xr man 5
-.Ux
-manual pages.
-It describes the
-.Em structure
-of an equation, not its mathematical meaning.
-This manual describes the
-.Nm
-language accepted by the
-.Xr mandoc 1
-utility, which corresponds to the Second Edition
-.Nm
-specification (see
-.Sx SEE ALSO
-for references).
-.Pp
-An equation starts with an input line containing exactly the characters
-.Sq \&.EQ ,
-may contain multiple input lines, and ends with an input line
-containing exactly the characters
-.Sq \&.EN .
-Equivalently, an equation can be given in the middle of a single
-text input line by surrounding it with the equation delimiters
-defined with the
-.Cm delim
-statement.
-.Pp
-The equation grammar is as follows, where quoted strings are
-case-sensitive literals in the input:
-.Bd -literal -offset indent
-eqn : box | eqn box
-box : text
- | \(dq{\(dq eqn \(dq}\(dq
- | \(dqdefine\(dq text text
- | \(dqndefine\(dq text text
- | \(dqtdefine\(dq text text
- | \(dqgfont\(dq text
- | \(dqgsize\(dq text
- | \(dqset\(dq text text
- | \(dqundef\(dq text
- | \(dqsqrt\(dq box
- | box pos box
- | box mark
- | \(dqmatrix\(dq \(dq{\(dq [col \(dq{\(dq list \(dq}\(dq]* \(dq}\(dq
- | pile \(dq{\(dq list \(dq}\(dq
- | font box
- | \(dqsize\(dq text box
- | \(dqleft\(dq text eqn [\(dqright\(dq text]
-col : \(dqlcol\(dq | \(dqrcol\(dq | \(dqccol\(dq | \(dqcol\(dq
-text : [^space\e\(dq]+ | \e\(dq.*\e\(dq
-pile : \(dqlpile\(dq | \(dqcpile\(dq | \(dqrpile\(dq | \(dqpile\(dq
-pos : \(dqover\(dq | \(dqsup\(dq | \(dqsub\(dq | \(dqto\(dq | \(dqfrom\(dq
-mark : \(dqdot\(dq | \(dqdotdot\(dq | \(dqhat\(dq | \(dqtilde\(dq | \(dqvec\(dq
- | \(dqdyad\(dq | \(dqbar\(dq | \(dqunder\(dq
-font : \(dqroman\(dq | \(dqitalic\(dq | \(dqbold\(dq | \(dqfat\(dq
-list : eqn
- | list \(dqabove\(dq eqn
-space : [\e^~ \et]
-.Ed
-.Pp
-White-space consists of the space, tab, circumflex, and tilde
-characters.
-It is required to delimit tokens consisting of alphabetic characters
-and it is ignored at other places.
-Braces and quotes also delimit tokens.
-If within a quoted string, these space characters are retained.
-Quoted strings are also not scanned for keywords, glyph names,
-and expansion of definitions.
-To print a literal quote character, it can be prepended with a
-backslash or expressed with the \e(dq escape sequence.
-.Pp
-Subequations can be enclosed in braces to pass them as arguments
-to operation keywords, overriding standard operation precedence.
-Braces can be nested.
-To set a brace verbatim, it needs to be enclosed in quotes.
-.Pp
-The following text terms are translated into a rendered glyph, if
-available: alpha, beta, chi, delta, epsilon, eta, gamma, iota, kappa,
-lambda, mu, nu, omega, omicron, phi, pi, psi, rho, sigma, tau, theta,
-upsilon, xi, zeta, DELTA, GAMMA, LAMBDA, OMEGA, PHI, PI, PSI, SIGMA,
-THETA, UPSILON, XI, inter (intersection), union (union), prod (product),
-int (integral), sum (summation), grad (gradient), del (vector
-differential), times (multiply), cdot (center-dot), nothing (zero-width
-space), approx (approximately equals), prime (prime), half (one-half),
-partial (partial differential), inf (infinity), >> (much greater), <<
-(much less), <\- (left arrow), \-> (right arrow), +\- (plus-minus), !=
-(not equal), == (equivalence), <= (less-than-equal), and >=
-(more-than-equal).
-The character escape sequences documented in
-.Xr mandoc_char 5
-can be used, too.
-.Pp
-The following control statements are available:
-.Bl -tag -width Ds
-.It Cm define
-Replace all occurrences of a key with a value.
-Its syntax is as follows:
-.Pp
-.D1 Cm define Ar key cvalc
-.Pp
-The first character of the value string,
-.Ar c ,
-is used as the delimiter for the value
-.Ar val .
-This allows for arbitrary enclosure of terms (not just quotes), such as
-.Pp
-.D1 Cm define Ar foo \(aqbar baz\(aq
-.D1 Cm define Ar foo cbar bazc
-.Pp
-It is an error to have an empty
-.Ar key
-or
-.Ar val .
-Note that a quoted
-.Ar key
-causes errors in some
-.Nm
-implementations and should not be considered portable.
-It is not expanded for replacements.
-Definitions may refer to other definitions; these are evaluated
-recursively when text replacement occurs and not when the definition is
-created.
-.Pp
-Definitions can create arbitrary strings, for example, the following is
-a legal construction.
-.Bd -literal -offset indent
-define foo \(aqdefine\(aq
-foo bar \(aqbaz\(aq
-.Ed
-.Pp
-Self-referencing definitions will raise an error.
-The
-.Cm ndefine
-statement is a synonym for
-.Cm define ,
-while
-.Cm tdefine
-is discarded.
-.It Cm delim
-This statement takes a string argument consisting of two bytes,
-to be used as the opening and closing delimiters for equations
-in the middle of text input lines.
-Conventionally, the dollar sign is used for both delimiters,
-as follows:
-.Bd -literal -offset indent
-\&.EQ
-delim $$
-\&.EN
-An equation like $sin pi = 0$ can now be entered
-in the middle of a text input line.
-.Ed
-.Pp
-The special statement
-.Cm delim off
-temporarily disables previously declared delimiters and
-.Cm delim on
-reenables them.
-.It Cm gfont
-Set the default font of subsequent output.
-Its syntax is as follows:
-.Pp
-.D1 Cm gfont Ar font
-.Pp
-In mandoc, this value is discarded.
-.It Cm gsize
-Set the default size of subsequent output.
-Its syntax is as follows:
-.Pp
-.D1 Cm gsize Oo +|\- Oc Ns Ar size
-.Pp
-The
-.Ar size
-value should be an integer.
-If prepended by a sign,
-the font size is changed relative to the current size.
-.It Cm set
-Set an equation mode.
-In mandoc, both arguments are thrown away.
-Its syntax is as follows:
-.Pp
-.D1 Cm set Ar key val
-.Pp
-The
-.Ar key
-and
-.Ar val
-are not expanded for replacements.
-This statement is a GNU extension.
-.It Cm undef
-Unset a previously-defined key.
-Its syntax is as follows:
-.Pp
-.D1 Cm define Ar key
-.Pp
-Once invoked, the definition for
-.Ar key
-is discarded.
-The
-.Ar key
-is not expanded for replacements.
-This statement is a GNU extension.
-.El
-.Pp
-Operation keywords have the following semantics:
-.Bl -tag -width Ds
-.It Cm above
-See
-.Cm pile .
-.It Cm bar
-Draw a line over the preceding box.
-.It Cm bold
-Set the following box using bold font.
-.It Cm ccol
-Like
-.Cm cpile ,
-but for use in
-.Cm matrix .
-.It Cm cpile
-Like
-.Cm pile ,
-but with slightly increased vertical spacing.
-.It Cm dot
-Set a single dot over the preceding box.
-.It Cm dotdot
-Set two dots (dieresis) over the preceding box.
-.It Cm dyad
-Set a dyad symbol (left-right arrow) over the preceding box.
-.It Cm fat
-A synonym for
-.Cm bold .
-.It Cm font
-Set the second argument using the font specified by the first argument;
-currently not recognized by the
-.Xr mandoc 1
-.Nm
-parser.
-.It Cm from
-Set the following box below the preceding box,
-using a slightly smaller font.
-Used for sums, integrals, limits, and the like.
-.It Cm hat
-Set a hat (circumflex) over the preceding box.
-.It Cm italic
-Set the following box using italic font.
-.It Cm lcol
-Like
-.Cm lpile ,
-but for use in
-.Cm matrix .
-.It Cm left
-Set the first argument as a big left delimiter before the second argument.
-As an optional third argument,
-.Cm right
-can follow.
-In that case, the fourth argument is set as a big right delimiter after
-the second argument.
-.It Cm lpile
-Like
-.Cm cpile ,
-but subequations are left-justified.
-.It Cm matrix
-Followed by a list of columns enclosed in braces.
-All columns need to have the same number of subequations.
-The columns are set as a matrix.
-The difference compared to multiple subsequent
-.Cm pile
-operators is that in a
-.Cm matrix ,
-corresponding subequations in all columns line up horizontally,
-while each
-.Cm pile
-does vertical spacing independently.
-.It Cm over
-Set a fraction.
-The preceding box is the numerator, the following box is the denominator.
-.It Cm pile
-Followed by a list of subequations enclosed in braces,
-the subequations being separated by
-.Cm above
-keywords.
-Sets the subequations one above the other, each of them centered.
-Typically used to represent vectors in coordinate representation.
-.It Cm rcol
-Like
-.Cm rpile ,
-but for use in
-.Cm matrix .
-.It Cm right
-See
-.Cm left ;
-.Cm right
-cannot be used without
-.Cm left .
-To set a big right delimiter without a big left delimiter, the following
-construction can be used:
-.Pp
-.D1 Cm left No \(dq\(dq Ar box Cm right Ar delimiter
-.It Cm roman
-Set the following box using the default font.
-.It Cm rpile
-Like
-.Cm cpile ,
-but subequations are right-justified.
-.It Cm size
-Set the second argument with the font size specified by the first
-argument; currently ignored by
-.Xr mandoc 1 .
-By prepending a plus or minus sign to the first argument,
-the font size can be selected relative to the current size.
-.It Cm sqrt
-Set the square root of the following box.
-.It Cm sub
-Set the following box as a subscript to the preceding box.
-.It Cm sup
-Set the following box as a superscript to the preceding box.
-As a special case, if a
-.Cm sup
-clause immediately follows a
-.Cm sub
-clause as in
-.Pp
-.D1 Ar mainbox Cm sub Ar subbox Cm sup Ar supbox
-.Pp
-both are set with respect to the same
-.Ar mainbox ,
-that is,
-.Ar supbox
-is set above
-.Ar subbox .
-.It Cm tilde
-Set a tilde over the preceding box.
-.It Cm to
-Set the following box above the preceding box,
-using a slightly smaller font.
-Used for sums and integrals and the like.
-As a special case, if a
-.Cm to
-clause immediately follows a
-.Cm from
-clause as in
-.Pp
-.D1 Ar mainbox Cm from Ar frombox Cm to Ar tobox
-.Pp
-both are set below and above the same
-.Ar mainbox .
-.It Cm under
-Underline the preceding box.
-.It Cm vec
-Set a vector symbol (right arrow) over the preceding box.
-.El
-.Pp
-The binary operations
-.Cm from ,
-.Cm to ,
-.Cm sub ,
-and
-.Cm sup
-group to the right, that is,
-.Pp
-.D1 Ar mainbox Cm sup Ar supbox Cm sub Ar subbox
-.Pp
-is the same as
-.Pp
-.D1 Ar mainbox Cm sup Brq Ar supbox Cm sub Ar subbox
-.Pp
-and different from
-.Pp
-.D1 Bro Ar mainbox Cm sup Ar supbox Brc Cm sub Ar subbox .
-.Pp
-By contrast,
-.Cm over
-groups to the left.
-.Pp
-In the following list, earlier operations bind more tightly than
-later operations:
-.Pp
-.Bl -enum -compact
-.It
-.Cm dyad ,
-.Cm vec ,
-.Cm under ,
-.Cm bar ,
-.Cm tilde ,
-.Cm hat ,
-.Cm dot ,
-.Cm dotdot
-.It
-.Cm fat ,
-.Cm roman ,
-.Cm italic ,
-.Cm bold ,
-.Cm size
-.It
-.Cm sub ,
-.Cm sup
-.It
-.Cm sqrt
-.It
-.Cm over
-.It
-.Cm from ,
-.Cm to
-.El
-.Sh COMPATIBILITY
-This section documents the compatibility of mandoc
-.Nm
-and the troff
-.Nm
-implementation (including GNU troff).
-.Pp
-.Bl -dash -compact
-.It
-The text string
-.Sq \e\(dq
-is interpreted as a literal quote in troff.
-In mandoc, this is interpreted as a comment.
-.It
-In troff, The circumflex and tilde white-space symbols map to
-fixed-width spaces.
-In mandoc, these characters are synonyms for the space character.
-.It
-The troff implementation of
-.Nm
-allows for equation alignment with the
-.Cm mark
-and
-.Cm lineup
-tokens.
-mandoc discards these tokens.
-The
-.Cm back Ar n ,
-.Cm fwd Ar n ,
-.Cm up Ar n ,
-and
-.Cm down Ar n
-commands are also ignored.
-.El
-.Sh SEE ALSO
-.Xr mandoc 1 ,
-.Xr man 5 ,
-.Xr mandoc_char 5 ,
-.Xr mandoc_roff 5 ,
-.Xr mdoc 5
-.Rs
-.%A Brian W. Kernighan
-.%A Lorinda L. Cherry
-.%T System for Typesetting Mathematics
-.%J Communications of the ACM
-.%V 18
-.%P pp. 151\(en157
-.%D March, 1975
-.Re
-.Rs
-.%A Brian W. Kernighan
-.%A Lorinda L. Cherry
-.%T Typesetting Mathematics, User's Guide
-.%D 1976
-.Re
-.Rs
-.%A Brian W. Kernighan
-.%A Lorinda L. Cherry
-.%T Typesetting Mathematics, User's Guide (Second Edition)
-.%D 1978
-.Re
-.Sh HISTORY
-The eqn utility, a preprocessor for troff, was originally written by
-Brian W. Kernighan and Lorinda L. Cherry in 1975.
-The GNU reimplementation of eqn, part of the GNU troff package, was
-released in 1989 by James Clark.
-The eqn component of
-.Xr mandoc 1
-was added in 2011.
-.Sh AUTHORS
-This
-.Nm
-reference was written by
-.An Kristaps Dzonsons Aq Mt kristaps@bsd.lv .
diff --git a/usr/src/man/man5/eqnchar.5 b/usr/src/man/man5/eqnchar.5
deleted file mode 100644
index b8c039fcce..0000000000
--- a/usr/src/man/man5/eqnchar.5
+++ /dev/null
@@ -1,39 +0,0 @@
-'\" te
-.\" Copyright (C) 2002, Sun Microsystems, Inc.
-.\" All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH EQNCHAR 5 "Jul 12, 2002"
-.SH NAME
-eqnchar \- special character definitions for eqn
-.SH SYNOPSIS
-.LP
-.nf
-eqn /usr/share/lib/pub/eqnchar \fIfilename\fR | troff \fIoptions\fR
-.fi
-
-.LP
-.nf
-neqn /usr/share/lib/pub/eqnchar \fIfilename\fR | troff \fIoptions\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBeqnchar\fR command contains \fBnroff\fR(1) and \fBtroff\fR(1) character
-definitions for constructing characters that are not available on the Graphic
-Systems typesetter. These definitions are primarily intended for use with
-\fBeqn\fR(1) and \fBneqn\fR(1). It contains definitions for the characters
-listed in the following table.
-.sp
-To view the special characters, see the online man page on docs.sun.com or a
-print copy.
-.SH FILES
-.sp
-.LP
-\fB/usr/share/lib/pub/eqnchar\fR
-.SH SEE ALSO
-.sp
-.LP
-\fBeqn\fR(1), \fBnroff\fR(1), \fBtroff\fR(1), \fBattributes\fR(5)
diff --git a/usr/src/man/man5/ethers.5 b/usr/src/man/man5/ethers.5
new file mode 100644
index 0000000000..4dc6c68e29
--- /dev/null
+++ b/usr/src/man/man5/ethers.5
@@ -0,0 +1,49 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 1988 Sun Microsystems, Inc. - All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH ETHERS 5 "Feb 25, 2017"
+.SH NAME
+ethers \- Ethernet address to hostname database or domain
+.SH DESCRIPTION
+.LP
+The \fBethers\fR file is a local source of information about the (48-bit)
+Ethernet addresses of hosts on the Internet. The \fBethers\fR file can be used
+in conjunction with or instead of other \fBethers\fR sources, including the
+\fBNIS\fR maps \fBethers.byname\fR and \fBethers.byaddr\fR,
+or Ethernet address data stored on an LDAP server. Programs
+use the \fBethers\fR(3SOCKET) routines to access this information.
+.sp
+.LP
+The \fBethers\fR file has one line for each host on an Ethernet. The line has
+the following format:
+.sp
+.LP
+\fIEthernet-address\fR \fIofficial-host-name\fR
+.sp
+.LP
+Items are separated by any number of \fBSPACE\fR and/or \fBTAB\fR characters. A
+`\fB#\fR' indicates the beginning of a comment extending to the end of line.
+.sp
+.LP
+The standard form for Ethernet addresses is
+"\fIx\fR\fB:\fR\fIx\fR\fB:\fR\fIx\fR\fB:\fR\fIx\fR\fB:\fR\fIx\fR\fB:\fR\fIx\fR"
+where \fIx\fR is a hexadecimal number between 0 and ff, representing one byte.
+The address bytes are always in network order. Host names may contain any
+printable character other than \fBSPACE\fR, \fBTAB\fR, \fBNEWLINE\fR, or
+comment character.
+.SH FILES
+.ne 2
+.na
+\fB\fB/etc/ethers\fR\fR
+.ad
+.RS 15n
+
+.RE
+
+.SH SEE ALSO
+.LP
+.BR ethers (3SOCKET),
+.BR hosts (5),
+.BR nsswitch.conf (5)
diff --git a/usr/src/man/man5/eventfd.5 b/usr/src/man/man5/eventfd.5
deleted file mode 100644
index 1466201967..0000000000
--- a/usr/src/man/man5/eventfd.5
+++ /dev/null
@@ -1,32 +0,0 @@
-.\"
-.\" This file and its contents are supplied under the terms of the
-.\" Common Development and Distribution License ("CDDL"), version 1.0.
-.\" You may only use this file in accordance with the terms of version
-.\" 1.0 of the CDDL.
-.\"
-.\" A full copy of the text of the CDDL should have accompanied this
-.\" source. A copy of the CDDL is also available via the Internet at
-.\" http://www.illumos.org/license/CDDL.
-.\"
-.\"
-.\" Copyright (c) 2014, Joyent, Inc. All Rights Reserved.
-.\"
-.Dd Dec 3, 2014
-.Dt EVENTFD 5
-.Os
-.Sh NAME
-.Nm eventfd
-.Nd Linux-compatible user event notification facility
-.Sh SYNOPSIS
-.In sys/eventfd.h
-.Sh DESCRIPTION
-.Nm
-is a Linux-borne facility for sending and receiving user
-events via a file descriptor.
-While the facility itself is somewhat dubious (it can be mimicked in an entirely
-portable way with a pipe), it is small and straightforward and this
-implementation is entirely compatible with its Linux antecedent; see
-.Xr eventfd 3C
-for details.
-.Sh SEE ALSO
-.Xr eventfd 3C
diff --git a/usr/src/man/man5/exec_attr.5 b/usr/src/man/man5/exec_attr.5
new file mode 100644
index 0000000000..21c16a5f3d
--- /dev/null
+++ b/usr/src/man/man5/exec_attr.5
@@ -0,0 +1,238 @@
+'\" te
+.\" Copyright 2017 Peter Tribble
+.\" Copyright (c) 2006 by Sun Microsystems, Inc. All rights reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH EXEC_ATTR 5 "Aug 3, 2017"
+.SH NAME
+exec_attr \- execution profiles database
+.SH SYNOPSIS
+.LP
+.nf
+\fB/etc/security/exec_attr\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+\fB/etc/security/exec_attr\fR is a local database that specifies the execution
+attributes associated with profiles. The \fBexec_attr\fR file can be used with
+other sources for execution profiles, including the \fBexec_attr\fR \fBNIS\fR
+map. Programs use the \fBgetexecattr\fR(3SECDB) routines
+to access this information.
+.sp
+.LP
+The search order for multiple execution profile sources is specified in the
+\fB/etc/nsswitch.conf\fR file, as described in the \fBnsswitch.conf\fR(5) man
+page. The search order follows the entry for \fBprof_attr\fR(5).
+.sp
+.LP
+A profile is a logical grouping of authorizations and commands that is
+interpreted by a profile shell to form a secure execution environment. The
+shells that interpret profiles are \fBpfcsh\fR, \fBpfksh\fR, and \fBpfsh\fR.
+See the \fBpfsh\fR(1) man page. Each user's account is assigned zero or more
+profiles in the \fBuser_attr\fR(5) database file.
+.sp
+.LP
+Each entry in the \fBexec_attr\fR database consists of one line of text
+containing seven fields separated by colons (\fB:\fR). Line continuations using
+the backslash (\fB\e\fR) character are permitted. The basic format of each
+entry is:
+.sp
+.LP
+\fIname\fR:\fIpolicy\fR:\fItype\fR:\fIres1\fR:\fIres2\fR:\fIid\fR:\fIattr\fR
+.sp
+.ne 2
+.na
+\fB\fIname\fR\fR
+.ad
+.RS 10n
+The name of the profile. Profile names are case-sensitive.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIpolicy\fR\fR
+.ad
+.RS 10n
+The security policy that is associated with the profile entry. The valid
+policies are \fBsuser\fR (standard Solaris superuser) and \fBsolaris\fR. The
+\fBsolaris\fR policy recognizes privileges (see \fBprivileges\fR(7)); the
+\fBsuser\fR policy does not.
+.sp
+The \fBsolaris\fR and \fBsuser\fR policies can coexist in the same
+\fBexec_attr\fR database, so that Solaris releases prior to the current release
+can use the \fBsuser\fR policy and the current Solaris release can use a
+\fBsolaris\fR policy. \fBsolaris\fR is a superset of \fBsuser\fR; it allows you
+to specify privileges in addition to UIDs. Policies that are specific to the
+current release of Solaris or that contain privileges should use \fBsolaris\fR.
+Policies that use UIDs only or that are not specific to the current Solaris
+release should use \fBsuser\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fItype\fR\fR
+.ad
+.RS 10n
+The type of object defined in the profile. The only valid type is
+\fBcmd\fR, which specifies that the \fBID\fR field is a
+command that would be executed by a shell.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIres1\fR\fR
+.ad
+.RS 10n
+Reserved for future use.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIres2\fR\fR
+.ad
+.RS 10n
+Reserved for future use.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIid\fR\fR
+.ad
+.RS 10n
+A string that uniquely identifies the object described by the profile.
+The id is either the full path to the command or the asterisk (\fB*\fR) symbol,
+which is used to allow all commands. An asterisk that replaces the filename
+component in a pathname indicates all files in a particular directory.
+.sp
+To specify arguments, the pathname should point to a shell script that is
+written to execute the command with the desired argument. In a Bourne shell,
+the effective UID is reset to the real UID of the process when the effective
+UID is less than 100 and not equal to the real UID. Depending on the \fBeuid\fR
+and \fBegid\fR values, Bourne shell limitations might make other shells
+preferable. To prevent the effective UIDs from being reset to real UIDs, you
+can start the script with the \fB-p\fR option.
+.sp
+.in +2
+.nf
+#!/bin/sh -p
+.fi
+.in -2
+.sp
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIattr\fR\fR
+.ad
+.RS 10n
+An optional list of semicolon-separated (\fB;\fR) key-value pairs that describe
+the security attributes to apply to the object upon execution. Zero or more
+keys may be specified. The list of valid key words depends on the policy
+enforced. The following key words are valid: \fBeuid\fR, \fBuid,\fR \fBegid\fR,
+\fBgid\fR, \fBprivs\fR, and \fBlimitprivs\fR.
+.sp
+\fBeuid\fR and \fBuid\fR contain a single user name or a numeric user \fBID\fR.
+Commands designated with \fBeuid\fR run with the effective \fBUID\fR indicated,
+which is similar to setting the setuid bit on an executable file. Commands
+designated with \fBuid\fR run with both the real and effective \fBUID\fRs.
+Setting \fBuid\fR may be more appropriate than setting the \fBeuid\fR on
+privileged shell scripts.
+.sp
+\fBegid\fR and \fBgid\fR contain a single group name or a numeric group
+\fBID\fR. Commands designated with \fBegid\fR run with the effective \fBGID\fR
+indicated, which is similar to setting the setgid bit on a file. Commands
+designated with \fBgid\fR run with both the real and effective \fBGID\fRs.
+Setting \fBgid\fR may be more appropriate than setting \fBguid\fR on privileged
+shell scripts.
+.sp
+\fBprivs\fR contains a privilege set which will be added to the inheritable set
+prior to running the command.
+.sp
+\fBlimitprivs\fR contains a privilege set which will be assigned to the limit
+set prior to running the command.
+.sp
+\fBprivs\fR and \fBlimitprivs\fR are only valid for the \fBsolaris\fR policy.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRUsing Effective User ID
+.sp
+.LP
+The following example shows the \fBaudit\fR command specified in the Audit
+Control profile to execute with an effective user \fBID\fR of root (\fB0\fR):
+
+.sp
+.in +2
+.nf
+\fBAudit Control:suser:cmd:::/usr/sbin/audit:euid=0\fR
+.fi
+.in -2
+.sp
+
+.SH FILES
+.LP
+\fB/etc/nsswitch.conf\fR
+.sp
+.LP
+\fB/etc/user_attr\fR
+.sp
+.LP
+\fB/etc/security/exec_attr\fR
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Availibility SUNWcsr
+_
+Interface Stability See below.
+.TE
+
+.sp
+.LP
+The command-line syntax is Committed. The output is Uncommitted.
+.SH CAVEATS
+.LP
+Because the list of legal keys is likely to expand, any code that parses this
+database must be written to ignore unknown key-value pairs without error. When
+any new keywords are created, the names should be prefixed with a unique
+string, such as the company's stock symbol, to avoid potential naming
+conflicts.
+.sp
+.LP
+The following characters are used in describing the database format and must be
+escaped with a backslash if used as data: colon (\fB:\fR), semicolon (\fB;\fR),
+equals (\fB=\fR), and backslash (\fB\e\fR).
+.SH SEE ALSO
+.LP
+.BR auths (1),
+.BR profiles (1),
+.BR roles (1),
+.BR sh (1),
+.BR getauthattr (3SECDB),
+.BR getexecattr (3SECDB),
+.BR getprofattr (3SECDB),
+.BR getuserattr (3SECDB),
+.BR kva_match (3SECDB),
+.BR auth_attr (5),
+.BR prof_attr (5),
+.BR user_attr (5),
+.BR attributes (7),
+.BR privileges (7),
+.BR makedbm (8)
diff --git a/usr/src/man/man5/extendedFILE.5 b/usr/src/man/man5/extendedFILE.5
deleted file mode 100644
index 9e07a05789..0000000000
--- a/usr/src/man/man5/extendedFILE.5
+++ /dev/null
@@ -1,188 +0,0 @@
-'\" te
-.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH EXTENDEDFILE 5 "Apr 18, 2006"
-.SH NAME
-extendedFILE \- enable extended FILE facility usage
-.SH SYNOPSIS
-.LP
-.nf
-$ ulimit \fB-n\fR \fIN_file_descriptors\fR
-$ LD_PRELOAD_32=/usr/lib/extendedFILE.so.1 \fIapplication\fR [\fIarg\fR...]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBextendedFILE.so.1\fR is not a library but an enabler of the extended
-FILE facility.
-.sp
-.LP
-The extended FILE facility allows 32-bit processes to use any valid file
-descriptor with the standard I/O (see \fBstdio\fR(3C)) C library functions.
-Historically, 32-bit applications have been limited to using the first 256
-numerical file descriptors for use with standard I/O streams. By using the
-extended FILE facility this limitation is lifted. Any valid file descriptor can
-be used with standard I/O. See the NOTES section of
-\fBenable_extended_FILE_stdio\fR(3C).
-.sp
-.LP
-The extended FILE facility is enabled from the shell level before an
-application is launched. The file descriptor limit must also be raised. The
-syntax for raising the file descriptor limit is
-.sp
-.in +2
-.nf
-$ ulimit -n \fImax_file_descriptors\fR
-$ LD_PRELOAD_32=/usr/lib/extendedFILE.so.1 \fIapplication\fR [\fIarg\fR...]
-.fi
-.in -2
-
-.sp
-.LP
-where \fImax_file_descriptors\fR is the maximum number of file descriptors
-desired. See \fBlimit\fR(1). The maximum value is the same as the maximum value
-for \fBopen\fR(2).
-.SH ENVIRONMENT VARIABLES
-.sp
-.LP
-The following environment variables control the behavior of the extended FILE
-facility.
-.sp
-.ne 2
-.na
-\fB\fB_STDIO_BADFD\fR\fR
-.ad
-.RS 23n
-This variable takes an integer representing the lowest file descriptor, which
-will be made unallocatable. This action provides a protection mechanism so that
-applications that abuse interfaces do not experience silent data corruption.
-The value must be between 3 and 255 inclusive.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB_STDIO_BADFD_SIGNAL\fR\fR
-.ad
-.RS 23n
-This variable takes an integer or string representing any valid signal. See
-\fBsignal.h\fR(3HEAD) for valid values or strings. This environment variable
-causes the specified signal to be sent to the application if certain
-exceptional cases are detected during the use of this facility. The default
-signal is \fBSIGABRT\fR.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRLimit the number of file descriptors and FILE standard I/O
-structures.
-.sp
-.LP
-The following example limits the number of file descriptors and FILE standard
-I/O structures to 1000.
-
-.sp
-.in +2
-.nf
-$ ulimit -n 1000
-$ LD_PRELOAD_32=/usr/lib/extendedFILE.so.1 application [arg...]
-.fi
-.in -2
-
-.LP
-\fBExample 2 \fREnable the extended FILE facility.
-.sp
-.LP
-The following example enables the extended FILE facility. See
-\fBenable_extended_FILE_stdio\fR(3C) for more examples.
-
-.sp
-.in +2
-.nf
-$ ulimit -n 1000
-$ _STDIO_BADFD=100 _STDIO_BADFD_SIGNAL=SIGABRT \e
- LD_PRELOAD_32=/usr/lib/extendedFILE.so.1 \e
- application [arg ...]
-.fi
-.in -2
-
-.LP
-\fBExample 3 \fRSet up the extended FILE environment and start the application.
-.sp
-.LP
-The following shell script first sets up the proper extended FILE environment
-and then starts the application:
-
-.sp
-.in +2
-.nf
-#!/bin/sh
-if [ $# = 0 ]; then
- echo "usage: $0 application [arguments...]"
- exit 1
-fi
-ulimit -n 1000
-# _STDIO_BADFD=196; export _STDIO_BADFD
-# _STDIO_BADFD_SIGNAL=SIGABRT; export _STDIO_BADFD_SIGNAL
-LD_PRELOAD_32=/usr/lib/extendedFILE.so.1; export LD_PRELOAD_32
-"$@"
-.fi
-.in -2
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/extendedFILE.so.1\fR\fR
-.ad
-.RS 30n
-enabling library
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Stable
-_
-MT-Level Safe
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBlimit\fR(1), \fBopen\fR(2), \fBenable_extended_FILE_stdio\fR(3C),
-\fBfdopen\fR(3C), \fBfopen\fR(3C), \fBpopen\fR(3C), \fBsignal.h\fR(3HEAD),
-\fBstdio\fR(3C), \fBattributes\fR(5)
-.SH WARNINGS
-.sp
-.LP
-The following displayed message
-.sp
-.in +2
-.nf
-Application violated extended FILE safety mechanism.
-Please read the man page for extendedFILE.
-Aborting
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-is an indication that your application is modifying the internal file
-descriptor field of the \fBFILE\fR structure from standard I/O. Continued use
-of this extended FILE facility could harm your data. Do not use the extended
-FILE facility with your application.
diff --git a/usr/src/man/man5/fdi.5 b/usr/src/man/man5/fdi.5
new file mode 100644
index 0000000000..c95d9a3f4a
--- /dev/null
+++ b/usr/src/man/man5/fdi.5
@@ -0,0 +1,451 @@
+'\" te
+.\" This manual page is dervied from documentation obtained from David Zeuthen.
+.\" Portions Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH FDI 5 "April 9, 2016"
+.SH NAME
+fdi \- HAL device information file format
+.SH SYNOPSIS
+.LP
+.nf
+/usr/share/lib/xml/dtd/fdi.dtd.1
+.fi
+
+.SH DESCRIPTION
+.LP
+The hardware abstraction layer facility, described in \fBhal\fR(7), uses an
+\fBXML\fR-based file format to merge arbitrary properties onto device objects.
+The way device information files works is that once all physical properties are
+merged onto a device object, it is tried against the set of installed device
+information files. Device information files are used for both merging facts and
+policy settings for devices.
+.sp
+.LP
+Each device information file has a number of match directives that are tested
+against the properties of the device object. The directives have the form:
+.sp
+.in +2
+.nf
+<match key="property" [string|int|bool|..]="value">
+.fi
+.in -2
+
+.sp
+.LP
+If all the match directives pass, then the device information can include the
+following property directives in the form:
+.sp
+.in +2
+.nf
+<[merge|append|prepend] key="property" type="[string|int|bool|..]">
+.fi
+.in -2
+
+.sp
+.LP
+These directives are used to merge new properties or append to existing
+properties on the device object. Any previously property stemming from device
+detection can be overridden by a device information file.
+.sp
+.LP
+The \fBmatch\fR, \fBmerge\fR, \fBappend\fR, and \fBprepend\fR directives
+require that the key attribute be either a property name on the device object
+in question or a path to a property on another device object. The path to a
+property is expressed either through direct specification of the \fBUDI\fR,
+such as \fB/org/freedesktop/Hal/devices/computer:foo.bar\fR or through indirect
+references such as "\fB@info.parent:baz\fR", meaning that the device object
+specified by the \fBUDI\fR in the string property "\fBinfo.parent\fR" should be
+used to query the property "\fBbaz\fR". It is also possible to use multiple
+indirections. For example, for a volume on a \fBUSB\fR memory stick, the
+indirection
+"\fB@block.storage_device:@storage.physical_device:usb.vendor_id\fR" references
+the "\fBusb.vendor_id\fR" property on the device object representing the
+\fBUSB\fR interface.
+.sp
+.LP
+When the property to match has been determined, the following attributes can be
+used within the "\fBmatch\fR" tag:
+.sp
+.ne 2
+.na
+\fB\fBstring\fR\fR
+.ad
+.RS 20n
+Match a string property. For example, <match key= "foo.bar" string="baz">
+matches only if "\fBfoo.bar\fR" is a string property assuming the value
+"\fBbaz\fR".
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBint\fR\fR
+.ad
+.RS 20n
+Match an integer property
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBuint64\fR\fR
+.ad
+.RS 20n
+Match property with the 64-bit unsigned type
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBbool\fR\fR
+.ad
+.RS 20n
+Match a boolean property
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdouble\fR\fR
+.ad
+.RS 20n
+Match a property of type double
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBexists\fR\fR
+.ad
+.RS 20n
+Used as <match key="foo.bar" exists="true">. This attribute can be used with
+"true" and "false", respectively to match when a property exists or does not
+exist.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBempty\fR\fR
+.ad
+.RS 20n
+This attribute can only be used on string properties with "true" and "false".
+The semantics for "true" is to match only when the string is non-empty.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBis_absolute_path\fR\fR
+.ad
+.RS 20n
+Matches only when a string property represents an absolute path (the path does
+not have to exist). This attribute can be can be used with "true" or "false".
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBis_ascii\fR\fR
+.ad
+.RS 20n
+Matches only when a string property contains \fBASCII\fR characters. This
+attribute can be used with "true" or "false".
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcompare_lt\fR\fR
+.ad
+.RS 20n
+This attribute can be used with \fBint\fR, \fBuint64\fR, \fBdouble\fR and
+\fBstring\fR properties to compare with a constant. It matches when the given
+property is less than the given constant using the default ordering.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcompare_le\fR\fR
+.ad
+.RS 20n
+Similar to \fBcompare_lt\fR, but matches when the given property is less than
+or equal than the given constant using the default ordering.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcompare_gt\fR\fR
+.ad
+.RS 20n
+Similar to \fBcompare_lt\fR, but matches when the given property is greater
+than the given constant using the default ordering.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fR
+.ad
+.RS 20n
+Similar to \fBcompare_lt\fR, but matches when the given property is greater
+than or equal than the given constant using the default ordering.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fR
+.ad
+.RS 20n
+This attribute can only be used with \fBstring\fR and \fBstrlist\fR (string
+list). For a string key, this matches when the property contains the given
+(sub)string. For a string list, this matches if the given string matches a item
+in the list.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcontains_ncase\fR\fR
+.ad
+.RS 20n
+Similar to \fBcontains\fR, but the property and the given key are converted to
+lowercase before it is checked.
+.RE
+
+.sp
+.LP
+The \fBmerge\fR, \fBappend\fR, and \fBprepend\fR directives all require the
+attribute type which specifies what is to be merged. The following values are
+supported:
+.sp
+.ne 2
+.na
+\fB\fBstring\fR\fR
+.ad
+.RS 17n
+The value is copied to the property. For example, <merge key="foo bar"
+type="string"> baz</merege> merges the value "baz" into the property "foo.bar".
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBstrlist\fR\fR
+.ad
+.RS 17n
+For \fBmerge\fR, the value is copied to the property and the current property
+is overwritten. For \fBappend\fR and \fBprepend\fR, the value is appended or
+prepended to the list as a new item.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBbool\fR\fR
+.ad
+.RS 17n
+This attribute can merge the values "true" or "false"
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBint\fR\fR
+.ad
+.RS 17n
+Merges an integer
+.RE
+
+.sp
+.ne 2
+.na
+\fBuint64\fR
+.ad
+.RS 17n
+Merges an unsigned 64-bit integer
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdouble\fR\fR
+.ad
+.RS 17n
+Merges a double precision floating point number
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcopy_property\fR\fR
+.ad
+.RS 17n
+Copies the value of a given property; supports paths with direct and indirect
+UDI's. For example, <merge key="foo.bar"
+type="copy_property">@info.parent:baz.bat</merge> merges the value of the
+property "baz.bat" on the device object with the \fBUDI\fR from the property
+"info.parent" into the property "foo.bar" on the device object being processed.
+.RE
+
+.sp
+.LP
+The \fBremove\fR directive requires only a key and can be used with all keys.
+For \fBstrlist\fR, there is also a special syntax to remove a item from the
+string list. For example, to remove item "bla" from property "foo.bar", use the
+following syntax:
+.sp
+.in +2
+.nf
+<remove key="foo.bar" type="strlist">bla</merge>
+.fi
+.in -2
+
+.sp
+.LP
+Device Information files are stored in the following standard hierarchy with the
+following default top level directories \fBinformation\fR, \fBpolicy\fR and
+\fBpreprobe\fR:
+.sp
+.ne 2
+.na
+\fB\fBinformation\fR\fR
+.ad
+.RS 15n
+Device information files to merge device information.
+.sp
+.ne 2
+.na
+\fB\fB10freedesktop\fR\fR
+.ad
+.RS 17n
+Device information files included with the \fBhal\fR tarball.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB20thirdparty\fR\fR
+.ad
+.RS 17n
+Device information files from the device manufacturer and installed from media
+accompanying the hardware.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB30user\fR\fR
+.ad
+.RS 17n
+Device information for specific devices.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpolicy\fR\fR
+.ad
+.RS 15n
+Device information files to merge policy properties.
+.sp
+.ne 2
+.na
+\fB10osvendor\fR
+.ad
+.RS 16n
+Device information files included with the hal tarball and supplied by the
+operating system vendor for policy rules.
+.RE
+
+.sp
+.ne 2
+.na
+\fB20thirdparty\fR
+.ad
+.RS 16n
+Policy rules from the device manufacturer and installed from media accompanying
+the hardware.
+.RE
+
+.sp
+.ne 2
+.na
+\fB30user\fR
+.ad
+.RS 16n
+Policy rules for specific devices.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fBpreprobe\fR
+.ad
+.RS 15n
+Device information files to merge information before probe devices.
+.sp
+.ne 2
+.na
+\fB10osvendor\fR
+.ad
+.RS 16n
+Device information files included with the \fBhal\fR tarball and supplied by
+the operating system vendor.
+.RE
+
+.sp
+.ne 2
+.na
+\fB20thirdparty\fR
+.ad
+.RS 16n
+Device information files from the device manufacturer and installed from media
+accompanying the hardware.
+.RE
+
+.sp
+.ne 2
+.na
+\fB30user\fR
+.ad
+.RS 16n
+Device information for specific devices.
+.RE
+
+.RE
+
+.sp
+.LP
+All device information files are matched for every \fBhal\fR device object.
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Volatile
+.TE
+
+.SH SEE ALSO
+.LP
+.BR attributes (7),
+.BR hal (7),
+.BR locale (7),
+.BR smf (7),
+.BR hald (8)
diff --git a/usr/src/man/man5/filesystem.5 b/usr/src/man/man5/filesystem.5
deleted file mode 100644
index 8b4cd14157..0000000000
--- a/usr/src/man/man5/filesystem.5
+++ /dev/null
@@ -1,2950 +0,0 @@
-.\"
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.\"
-.\"
-.\" Copyright 1989 AT&T
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 2016 Nexenta Systems, Inc.
-.\" Copyright 2017 Peter Tribble
-.\"
-.TH FILESYSTEM 5 "Apr 15, 2020"
-.SH NAME
-filesystem \- File system organization
-.SH SYNOPSIS
-.nf
-/
-.fi
-
-.LP
-.nf
-/usr
-.fi
-
-.SH DESCRIPTION
-The file system tree is organized for administrative convenience. Distinct
-areas within the file system tree are provided for files that are private to
-one machine, files that can be shared by multiple machines of a common
-platform, files that can be shared by all machines, and home directories. This
-organization allows sharable files to be stored on one machine but accessed by
-many machines using a remote file access mechanism such as \fBNFS\fR. Grouping
-together similar files makes the file system tree easier to upgrade and manage.
-.sp
-.LP
-The file system tree consists of a root file system and a collection of
-mountable file systems. The \fBmount\fR(2) program attaches mountable file
-systems to the file system tree at mount points (directory entries) in the root
-file system or other previously mounted file systems. Two file systems, \fB/\fR
-(the root) and \fB/usr\fR, must be mounted and \fB/var\fR must be accessible to
-have a functional system. The root file system is mounted automatically by the
-kernel at boot time; the \fB/usr\fR file system is mounted by the system
-start-up script, which is run as part of the booting process. \fB/var\fR can be
-mounted as its own file system or be part of \fB/usr\fR, as it is by default.
-.sp
-.LP
-Certain locations, noted below, are approved installation locations for bundled
-Foundation Solaris software. In some cases, the approved locations for bundled
-software are also approved locations for add-on system software or for
-applications. The following descriptions make clear where the two locations
-differ. For example, \fB/etc\fR is the installation location for
-platform-dependent configuration files that are bundled with Solaris software.
-The analogous location for applications is \fB/etc/opt/\fR\fIpackagename\fR.
-.sp
-.LP
-In the following descriptions, \fIsubsystem\fR is a category of application or
-system software, such as a window system (\fBdt\fR) or a language
-(\fBjava1.2\fR)
-.sp
-.LP
-The following descriptions make use of the terms \fBplatform\fR,
-\fBplatform-dependent\fR, \fBplatform-independent\fR, and
-\fBplatform-specific\fR. Platform refers to a machines Instruction Set
-Architecture or processor type, such as is returned by \fBuname\fR \fB-i\fR.
-\fBPlatform-dependent\fR refers to a file that is installed on all platforms
-and whose contents vary depending on the platform. Like a platform-dependent
-file, a \fBplatform-independent\fR file is installed on all platforms. However,
-the contents of the latter type remains the same on all platforms. An example
-of a platform-dependent file is compiled, executable program. An example of a
-platform-independent file is a standard configuration file, such as
-\fB/etc/hosts\fR. Unlike a platform-dependent or a platform-independent file,
-the \fBplatform-specific\fR file is installed only on a subset of supported
-platforms. Most platform-specific files are gathered under \fB/platform\fR and
-\fB/usr/platform\fR.
-.SS "Root File System"
-The root file system contains files that are unique to each machine. It
-contains the following directories:
-.sp
-.ne 2
-.na
-\fB\fB/\fR\fR
-.ad
-.sp .6
-.RS 4n
-Root of the overall file system name space.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev\fR\fR
-.ad
-.sp .6
-.RS 4n
-The device name file system. See \fBdev\fR(7FS).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/cfg\fR\fR
-.ad
-.sp .6
-.RS 4n
-Symbolic links to physical \fBap_ids.\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/cpu\fR\fR
-.ad
-.sp .6
-.RS 4n
-Provides configuration and capability information about the processor type
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/cua\fR\fR
-.ad
-.sp .6
-.RS 4n
-Device files for \fBuucp\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/dsk\fR\fR
-.ad
-.sp .6
-.RS 4n
-Block disk devices.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/dtrace\fR\fR
-.ad
-.sp .6
-.RS 4n
-Pseudo-devices used by the DTrace framework.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/dtrace/provider\fR\fR
-.ad
-.sp .6
-.RS 4n
-Pseudo-device drivers representing instrumentation providers for the DTrace
-framework.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/fbs\fR\fR
-.ad
-.sp .6
-.RS 4n
-Frame buffer device files.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/fd\fR\fR
-.ad
-.sp .6
-.RS 4n
-File descriptors.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/net\fR\fR
-.ad
-.sp .6
-.RS 4n
-Network data-link interface devices.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/printers\fR\fR
-.ad
-.sp .6
-.RS 4n
-USB printer device files.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/pts\fR\fR
-.ad
-.sp .6
-.RS 4n
-Pseudo-terminal devices.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/rdsk\fR\fR
-.ad
-.sp .6
-.RS 4n
-Raw disk devices.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/rmt\fR\fR
-.ad
-.sp .6
-.RS 4n
-Raw tape devices.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/sad\fR\fR
-.ad
-.sp .6
-.RS 4n
-Entry points for the \fBSTREAMS\fR Administrative driver.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/sound\fR\fR
-.ad
-.sp .6
-.RS 4n
-Audio device and audio device control files.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/swap\fR\fR
-.ad
-.sp .6
-.RS 4n
-Default swap device.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/term\fR\fR
-.ad
-.sp .6
-.RS 4n
-Terminal devices.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/devices\fR\fR
-.ad
-.sp .6
-.RS 4n
-The devices file system. See \fBdevfs\fR(7FS).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc\fR\fR
-.ad
-.sp .6
-.RS 4n
-Platform-dependent administrative and configuration files and databases that
-are not shared among systems. \fB/etc\fR may be viewed as the directory that
-defines the machine's identity. An approved installation location for bundled
-Solaris software. The analogous location for add-on system software or for
-applications is \fB/etc/opt/\fR\fIpackagename\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/X11\fR\fR
-.ad
-.sp .6
-.RS 4n
-Xorg Xserver (X11) configuration files.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/acct\fR\fR
-.ad
-.sp .6
-.RS 4n
-Process accounting system configuration information.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/cron.d\fR\fR
-.ad
-.sp .6
-.RS 4n
-Configuration information for \fBcron\fR(1M).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/dat\fR\fR
-.ad
-.sp .6
-.RS 4n
-Contains a list of interface adapters supported by uDAPL service providers.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/default\fR\fR
-.ad
-.sp .6
-.RS 4n
-Defaults information for various programs.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/devices\fR\fR
-.ad
-.sp .6
-.RS 4n
-Contains device-related data.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/dfs\fR\fR
-.ad
-.sp .6
-.RS 4n
-Configuration information for shared file systems.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/dhcp\fR\fR
-.ad
-.sp .6
-.RS 4n
-Dynamic Host Configuration Protocol (\fBDHCP\fR) configuration files.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/fm\fR\fR
-.ad
-.sp .6
-.RS 4n
-Fault manager configuration files. For more information, see \fBfmd\fR(1M).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/fonts\fR\fR
-.ad
-.sp .6
-.RS 4n
-Font configuration information.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/fs\fR\fR
-.ad
-.sp .6
-.RS 4n
-Binaries organized by file system types for operations required before
-\fB/usr\fR is mounted.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/ftpd\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBftpd\fR configuration files.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/gss\fR\fR
-.ad
-.sp .6
-.RS 4n
-Generic Security Service (\fBGSS\fR) Application Program Interface
-configuration files.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/inet\fR\fR
-.ad
-.sp .6
-.RS 4n
-Configuration files for Internet services.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/init.d\fR\fR
-.ad
-.sp .6
-.RS 4n
-Shell scripts for transitioning between init states. The service management
-facility, \fBsmf\fR(5) is the preferred mechanism for managing services.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/krb5\fR\fR
-.ad
-.sp .6
-.RS 4n
-Kerberos configuration files.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/lib\fR\fR
-.ad
-.sp .6
-.RS 4n
-Shared libraries needed during booting.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/llc2\fR\fR
-.ad
-.sp .6
-.RS 4n
-Logical link control (\fBllc2\fR) driver configuration files.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/lp\fR\fR
-.ad
-.sp .6
-.RS 4n
-Configuration information for the printer subsystem.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/mail\fR\fR
-.ad
-.sp .6
-.RS 4n
-Mail subsystem configuration.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/nca\fR\fR
-.ad
-.sp .6
-.RS 4n
-Solaris Network Cache and Accelerator (\fBNCA\fR) configuration files.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/net\fR\fR
-.ad
-.sp .6
-.RS 4n
-Configuration information for transport independent network services.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/nfs\fR\fR
-.ad
-.sp .6
-.RS 4n
-NFS server logging configuration file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/opt\fR\fR
-.ad
-.sp .6
-.RS 4n
-Configuration information for optional packages.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/ppp\fR\fR
-.ad
-.sp .6
-.RS 4n
-Solaris \fBPPP\fR configuration files.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/rc0.d\fR\fR
-.ad
-.sp .6
-.RS 4n
-Scripts for entering or leaving run level 0. See \fBinit\fR(1M).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/rc1.d\fR\fR
-.ad
-.sp .6
-.RS 4n
-Scripts for entering or leaving run level 1. See \fBinit\fR(1M).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/rc2.d\fR\fR
-.ad
-.sp .6
-.RS 4n
-Scripts for entering or leaving run level 2. See \fBinit\fR(1M).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/rc3.d\fR\fR
-.ad
-.sp .6
-.RS 4n
-Scripts for entering or leaving run level 3. See \fBinit\fR(1M).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/rcS.d\fR\fR
-.ad
-.sp .6
-.RS 4n
-Scripts for bringing the system up in single user mode.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/rcm\fR\fR
-.ad
-.sp .6
-.RS 4n
-Directory for reconfiguration manager (RCM) custom scripts.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/saf\fR\fR
-.ad
-.sp .6
-.RS 4n
-Service Access Facility files.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/sasl\fR\fR
-.ad
-.sp .6
-.RS 4n
-Simple Authentication and Security Layer (SASL) server configuration files.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/security\fR\fR
-.ad
-.sp .6
-.RS 4n
-Solaris-delivered security configuration files (Audit, RBAC, crypto, Trusted
-Extensions).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/skel\fR\fR
-.ad
-.sp .6
-.RS 4n
-Default profile scripts for new user accounts. See \fBuseradd\fR(1M).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/sound\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sound Events configuration files.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/ssh\fR\fR
-.ad
-.sp .6
-.RS 4n
-Secure Shell configuration files. See \fBssh\fR(1)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/svc\fR\fR
-.ad
-.sp .6
-.RS 4n
-SMF service repository.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/sysevent\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBsyseventd\fR configuration files.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/\fIsubsystem\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Platform-dependent \fIsubsystem\fR configuration files that are not shared
-among systems. An approved installation location for bundled Solaris software.
-The analogous location for add-on system software or for applications is
-\fB/etc/opt/\fR\fIpackagename\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/tm\fR\fR
-.ad
-.sp .6
-.RS 4n
-Trademark files; contents displayed at boot time.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/usb\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBUSB\fR configuration information.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/uucp\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBUUCP\fR configuration information. See \fBuucp\fR(1C).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/xml\fR\fR
-.ad
-.sp .6
-.RS 4n
-Extensible Markup Language (XML) catalog.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/zfs\fR\fR
-.ad
-.sp .6
-.RS 4n
-Contains the zfs state file, \fBzpool.cache\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/zones\fR\fR
-.ad
-.sp .6
-.RS 4n
-Solaris Zones configuration files.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/export\fR\fR
-.ad
-.sp .6
-.RS 4n
-Default root of the shared file system tree.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/home\fR\fR
-.ad
-.sp .6
-.RS 4n
-Default root of a subtree for user directories. Often managed by the
-automounter, see \fBautomount\fR(1M) for more details.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel\fR\fR
-.ad
-.sp .6
-.RS 4n
-Subtree of platform-dependent loadable kernel modules required as part of the
-boot process. It includes the generic part of the core kernel that is
-platform-independent, \fB/kernel/genunix\fR. See \fBkernel\fR(1M) An approved
-installation location for bundled Solaris software and for add-on system
-software.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv\fR\fR
-.ad
-.sp .6
-.RS 4n
-32-bit x86 device drivers.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/sparcv9\fR\fR
-.ad
-.sp .6
-.RS 4n
-64-bit \fBSPARC\fR device drivers.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64\fR\fR
-.ad
-.sp .6
-.RS 4n
-64-bit device drivers for 64-bit x86 platforms.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/dtrace\fR\fR
-.ad
-.sp .6
-.RS 4n
-Kernel modules representing components in the DTrace framework.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/genunix\fR\fR
-.ad
-.sp .6
-.RS 4n
-Platform-independent kernel.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/amd64/genunix\fR\fR
-.ad
-.sp .6
-.RS 4n
-64-bit, platform-independent kernel.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/\fIsubsystem\fR/amd64\fR\fR
-.ad
-.sp .6
-.RS 4n
-64-bit x86 platform-dependent modules required for boot. An approved
-installation location for bundled Solaris software and for add-on system
-software.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/\fIsubsystem\fR/sparcv9\fR\fR
-.ad
-.sp .6
-.RS 4n
-64-bit \fBSPARC\fR platform-dependent modules required for boot. An approved
-installation location for bundled Solaris software and for add-on system
-software.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/lib/svc/manifest\fR\fR
-.ad
-.sp .6
-.RS 4n
-SMF method scripts. An approved installation location for bundled Solaris
-software. The analogous location for add-on system software or for applications
-is \fB/opt/packagename/lib/svc/manifest\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/mnt\fR\fR
-.ad
-.sp .6
-.RS 4n
-Default temporary mount point for file systems. This is an empty directory on
-which file systems can be temporarily mounted.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/net\fR\fR
-.ad
-.sp .6
-.RS 4n
-Temporary mount point for file systems that are mounted by the automounter.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/opt\fR\fR
-.ad
-.sp .6
-.RS 4n
-Root of a subtree for add-on application packages.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/platform\fR\fR
-.ad
-.sp .6
-.RS 4n
-Subtree of platform-specific objects which need to reside on the root
-filesystem. It contains a series of directories, one per supported platform.
-The semantics of the series of directories is equivalent to \fB/\fR (root).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/platform/\fR\fB`\fR\fBuname\fR \fB-i\fR\fB\fR\fB`\fR\fB/kernel\fR\fR
-.ad
-.sp .6
-.RS 4n
-Platform-specific modules required for boot. These modules have semantics
-equivalent to \fB/kernel\fR. It includes the file \fBunix\fR, the core kernel.
-See \fBkernel\fR(1M). An approved installation location for bundled Solaris
-software and for add-on system software.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/platform/\fR\fB`\fR\fBuname\fR \fB-m\fR\fB\fR\fB`\fR\fB/kernel\fR\fR
-.ad
-.sp .6
-.RS 4n
-Hardware class-specific modules required for boot. An approved installation
-location for bundled Solaris software and for add-on system software.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/platform/\fR\fB`\fR\fBuname\fR
-\fB-i\fR\fB\fR\fB`\fR\fB/kernel/\fIsubsystem\fR/amd64\fR\fR
-.ad
-.sp .6
-.RS 4n
-x86 64-bit, platform-dependent modules required for boot. This is an approved
-installation location for bundled Solaris software.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/platform/\fR\fB`\fR\fBuname\fR
-\fB-i\fR\fB\fR\fB`\fR\fB/kernel/\fIsubsystem\fR/sparcv9\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBSPARC\fR 64-bit platform-specific modules required for boot. An approved
-installation location for bundled Solaris software.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/platform/\fR\fB`\fR\fBuname\fR
-\fB-i\fR\fB\fR\fB`\fR\fB/kernel/sparcv9/unix\fR\fR
-.ad
-.sp .6
-.RS 4n
-64-bit platform-dependent kernel.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/platform/\fR\fB`\fR\fBuname\fR
-\fB-i\fR\fB\fR\fB`\fR\fB/kernel/unix\fR\fR
-.ad
-.sp .6
-.RS 4n
-32-bit platform-dependent kernel on i86 and a symlink to \fBsparcv9/unix\fR on
-SPARC.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/platform/\fR\fB`\fR\fBuname\fR \fB-i\fR\fB\fR\fB`\fR\fB/lib\fR\fR
-.ad
-.sp .6
-.RS 4n
-Platform-specific shared objects required for boot. Semantics are equivalent to
-\fB/lib\fR. An approved installation location for bundled Solaris software and
-for add-on system software.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/platform/\fR\fB`\fR\fBuname\fR \fB-i\fR\fB\fR\fB`\fR\fB/sbin\fR\fR
-.ad
-.sp .6
-.RS 4n
-Platform-specific administrative utilities required for boot. Semantics are
-equivalent to \fB/sbin\fR. An approved installation location for bundled
-Solaris software and for add-on system software.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/proc\fR\fR
-.ad
-.sp .6
-.RS 4n
-Root of a subtree for the process file system. See \fBproc\fR(4).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/sbin\fR\fR
-.ad
-.sp .6
-.RS 4n
-Essential executables used in the booting process and in manual system
-recovery. The full complement of utilities is available only after \fB/usr\fR
-is mounted. \fB/sbin\fR is an approved installation location for bundled
-Solaris software.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/system\fR\fR
-.ad
-.sp .6
-.RS 4n
-Mount point for the contract (CTFS) and object (OBJFS) file systems. See
-\fBctfs\fR(7FS) and \fBobjfs\fR(7FS).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/tmp\fR\fR
-.ad
-.sp .6
-.RS 4n
-Temporary files. Usually mounted as a memory based file system. See
-\fBtmpfs\fR(7FS).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr\fR\fR
-.ad
-.sp .6
-.RS 4n
-Mount point for the \fB/usr\fR file system. See description of \fB/usr\fR file
-system, below.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var\fR\fR
-.ad
-.sp .6
-.RS 4n
-Root of a subtree for varying files. Varying files are files that are unique to
-a machine but that can grow to an arbitrary (that is, variable) size. An
-example is a log file. An approved installation location for bundled Solaris
-software. The analogous location for add-on system software or for applications
-is \fB/var/opt/\fR\fIpackagename\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/adm\fR\fR
-.ad
-.sp .6
-.RS 4n
-System logging and accounting files.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/audit\fR\fR
-.ad
-.sp .6
-.RS 4n
-Default location for Audit log files.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/cores\fR\fR
-.ad
-.sp .6
-.RS 4n
-Directory provided for global core files storage. See \fBcoreadm\fR(1M).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/crash\fR\fR
-.ad
-.sp .6
-.RS 4n
-Default depository for kernel crash dumps. See \fBdumpadm\fR(1M).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/cron\fR\fR
-.ad
-.sp .6
-.RS 4n
-Log files for \fBcron\fR(1M).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/fm\fR\fR
-.ad
-.sp .6
-.RS 4n
-Fault manager state files. For more information, see \fBfmd\fR(1M).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/ftp\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBFTP\fR server directory.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/inet\fR\fR
-.ad
-.sp .6
-.RS 4n
-IPv6 router state files.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/krb5\fR\fR
-.ad
-.sp .6
-.RS 4n
-Database and log files for Kerberos.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/ld\fR\fR
-.ad
-.sp .6
-.RS 4n
-Configuration files for runtime linker. See \fBcrle\fR(1).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/ldap\fR\fR
-.ad
-.sp .6
-.RS 4n
-LDAP client configuration files.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/lib\fR\fR
-.ad
-.sp .6
-.RS 4n
-Directory for variable state information.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/log\fR\fR
-.ad
-.sp .6
-.RS 4n
-System log files.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/lp\fR\fR
-.ad
-.sp .6
-.RS 4n
-Line printer subsystem logging information.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/mail\fR\fR
-.ad
-.sp .6
-.RS 4n
-Directory where users' mail is kept.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/news\fR\fR
-.ad
-.sp .6
-.RS 4n
-Community service messages. This is not the same as USENET-style news.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/nfs\fR\fR
-.ad
-.sp .6
-.RS 4n
-NFS server log files.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/ntp\fR\fR
-.ad
-.sp .6
-.RS 4n
-Network Time Protocol (\fBNTP\fR) server state directory.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/opt\fR\fR
-.ad
-.sp .6
-.RS 4n
-Root of a subtree for varying files associated with optional software packages.
-An approved installation location for add-on system software and applications.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/pkg\fR\fR
-.ad
-.sp .6
-.RS 4n
-Data associated with the Image Packaging System.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/preserve\fR\fR
-.ad
-.sp .6
-.RS 4n
-Backup files for \fBvi\fR(1) and \fBex\fR(1).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/run\fR\fR
-.ad
-.sp .6
-.RS 4n
-Temporary files which are not needed across reboots. Only root may modify the
-contents of this directory.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/sadm\fR\fR
-.ad
-.sp .6
-.RS 4n
-Data associated with legacy SVR4 package management utilities.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/saf\fR\fR
-.ad
-.sp .6
-.RS 4n
-Service access facility logging and accounting files.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/spool\fR\fR
-.ad
-.sp .6
-.RS 4n
-Contains directories for files used in printer spooling, mail delivery,
-\fBcron\fR(1M), \fBat\fR(1), and so forth.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/spool/clientmqueue\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBsendmail\fR(1M) client files.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/spool/cron\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBcron\fR(1M) and \fBat\fR(1) spooling files.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/spool/locks\fR\fR
-.ad
-.sp .6
-.RS 4n
-Spooling lock files.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/spool/lp\fR\fR
-.ad
-.sp .6
-.RS 4n
-Line printer spool files. See \fBlp\fR(1).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/spool/mqueue\fR\fR
-.ad
-.sp .6
-.RS 4n
-Mail queued for delivery.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/spool/pkg\fR\fR
-.ad
-.sp .6
-.RS 4n
-Spooled packages.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/spool/print\fR\fR
-.ad
-.sp .6
-.RS 4n
-LP print service client-side request staging area.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/spool/uucp\fR\fR
-.ad
-.sp .6
-.RS 4n
-Queued \fBuucp\fR(1C) jobs.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/spool/uucppublic\fR\fR
-.ad
-.sp .6
-.RS 4n
-Files deposited by \fBuucp\fR(1C).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/statmon\fR\fR
-.ad
-.sp .6
-.RS 4n
-Network status monitor files.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/svc/log\fR\fR
-.ad
-.sp .6
-.RS 4n
-SMF log files.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/svc/manifest\fR\fR
-.ad
-.sp .6
-.RS 4n
-SMF service manifests. An approved installation location for bundled, add-on
-system software and applications.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/svc/manifest/site\fR\fR
-.ad
-.sp .6
-.RS 4n
-Site-local SMF service manifests.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/tmp\fR\fR
-.ad
-.sp .6
-.RS 4n
-Files that vary in size or presence during normal system operations. This
-directory is \fBnot\fR cleared during the boot operation. An approved
-installation location for bundled Solaris software and for add-on system
-software and applications.
-.sp
-It is possible to change the default behavior for \fB/var/tmp\fR to clear all
-of the files except editor temporary files by setting the \fBclean_vartmp\fR
-property value of the \fBrmtmpfiles\fR service. This is done with the following
-commands:
-.sp
-.in +2
-.nf
-# \fBsvccfg -s svc:/system/rmtmpfiles setprop \e\fR
- \fBoptions/clean_vartmp = "true"\fR
-# \fBsvcadm refresh svc:/system/rmtmpfiles:default\fR
-.fi
-.in -2
-.sp
-
-The \fBsolaris.smf.value.rmtmpfiles\fR authorization is required to modify this
-property.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/uucp\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBuucp\fR(1C) log and status files.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/var/yp\fR\fR
-.ad
-.sp .6
-.RS 4n
-Databases used by \fBNIS\fR and \fBypbind\fR(1M).
-.RE
-
-.SS "\fB/usr\fR File System"
-Because it is desirable to keep the root file system small and not volatile, on
-disk-based systems larger file systems are often mounted on \fB/home\fR,
-\fB/opt\fR, \fB/usr\fR, and \fB/var\fR.
-.sp
-.LP
-The file system mounted on \fB/usr\fR contains platform-dependent and
-platform-independent sharable files. The subtree rooted at \fB/usr/share\fR
-contains platform-independent sharable files; the rest of the \fB/usr\fR tree
-contains platform-dependent files. By mounting a common remote file system, a
-group of machines with a common platform may share a single \fB/usr\fR file
-system. A single \fB/usr/share\fR file system can be shared by machines of any
-platform. A machine acting as a file server can share many different \fB/usr\fR
-file systems to support several different architectures and operating system
-releases. Clients usually mount \fB/usr\fR read-only so that they do not
-accidentally change any shared files.
-.sp
-.LP
-The \fB/usr\fR file system contains the following subdirectories:
-.sp
-.ne 2
-.na
-\fB\fB/usr/5bin\fR\fR
-.ad
-.sp .6
-.RS 4n
-Symbolic link to the \fB/usr/bin\fR directory.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/X11\fR\fR
-.ad
-.sp .6
-.RS 4n
-Xorg Xserver (X11) executables and documentation.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/adm\fR\fR
-.ad
-.sp .6
-.RS 4n
-Symbolic link to the \fB/var/adm\fR directory.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/bin\fR\fR
-.ad
-.sp .6
-.RS 4n
-Platform-dependent, user-invoked executables. These are commands users expect
-to be run as part of their normal \fB$PATH\fR. For executables that are
-different on a 64-bit system than on a 32-bit system, a wrapper that selects
-the appropriate executable is placed here. See \fBisaexec\fR(3C). An approved
-installation location for bundled Solaris software. The analogous location for
-add-on system software or for applications is \fB/opt/\fIpackagename\fR/bin\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/bin/amd64\fR\fR
-.ad
-.sp .6
-.RS 4n
-x86 64-bit, platform-dependent, user-invoked executables. This directory should
-not be part of a user's \fB$PATH\fR. A wrapper in \fB/usr/bin\fR should invoke
-the executable in this directory. See \fBisaexec\fR(3C). An approved
-installation location for bundled Solaris software. The analogous location for
-add-on system software or for applications is
-\fB/opt/\fIpackagename\fR/bin/amd64\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/bin/sparcv9\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBSPARC\fR platform-dependent, user-invoked executables. This directory should
-not be part of a user's \fB$PATH\fR. A wrapper in \fB/usr/bin\fR should invoke
-the executable in this directory. See \fBisaexec\fR(3C). An approved
-installation location for bundled Solaris software. The analogous location for
-add-on system software or for applications is
-\fB/opt/\fIpackagename\fR/bin/sparcv9\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/bin/\fIsubsystem\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Platform-dependent user-invoked executables that are associated with
-\fIsubsystem\fR. These are commands users expect to be run as part of their
-normal \fB$PATH\fR. An approved installation location for bundled Solaris
-software. The analogous location for add-on system software or for applications
-is \fB/opt/\fIpackagename\fR/bin\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/\fIsubsystem\fR/bin\fR\fR
-.ad
-.sp .6
-.RS 4n
-Platform-dependent user-invoked executables that are associated with
-\fIsubsystem\fR. These are commands users expect to be run as part of their
-normal \fB$PATH\fR. An approved installation location for bundled Solaris
-software. The analogous location for add-on system software or for applications
-is \fB/opt/\fIpackagename\fR/bin\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/\fIsubsystem\fR/bin/amd64\fR\fR
-.ad
-.sp .6
-.RS 4n
-x86 64-bit, platform-dependent, user-invoked executables. This directory should
-not be part of a user's \fB$PATH\fR. A wrapper in \fB/usr/bin\fR should invoke
-the executable in this directory. See \fBisaexec\fR(3C). An approved
-installation location for bundled Solaris software. The analogous location for
-add-on system software or for applications is
-\fB/opt/\fIpackagename\fR/bin/amd64\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/\fIsubsystem\fR/bin/sparcv9\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBSPARC\fR 64-bit, platform-dependent, user-invoked executables. This
-directory should not be part of a user's \fB$PATH\fR. A wrapper in
-\fB/usr/bin\fR should invoke the executable in this directory. See
-\fBisaexec\fR(3C). An approved installation location for bundled Solaris
-software. The analogous location for add-on system software or for applications
-is \fB/opt/\fIpackagename\fR/bin/sparcv9\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/ccs\fR\fR
-.ad
-.sp .6
-.RS 4n
-Former location of files for the C compilation system, now containing
-compatibility symbolic links to their new locations in \fB/usr/bin\fR
-and \fB/usr/lib\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/demo\fR\fR
-.ad
-.sp .6
-.RS 4n
-Demo programs and data.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/dict\fR\fR
-.ad
-.sp .6
-.RS 4n
-Symbolic link to the \fB/usr/share/lib/dict\fR directory, which contains the
-dictionary file used by the \fBUNIX\fR spell program.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/include\fR\fR
-.ad
-.sp .6
-.RS 4n
-Include headers (for C programs).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/java\fI*\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Directories containing Java programs and libraries.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/jdk\fI*\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Java Platform virtual machine and core class libraries.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/kernel\fR\fR
-.ad
-.sp .6
-.RS 4n
-Subtree of platform-dependent loadable kernel modules, not needed in the root
-filesystem. An approved installation location for bundled Solaris software.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/kvm\fR\fR
-.ad
-.sp .6
-.RS 4n
-A mount point, retained for backward compatibility, that formerly contained
-platform-specific binaries and libraries.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib\fR\fR
-.ad
-.sp .6
-.RS 4n
-Platform-dependent libraries, various databases, commands and daemons not
-invoked directly by a human user. An approved installation location for bundled
-Solaris software. The analogous location for add-on system software or for
-applications is \fB/opt/\fIpackagename\fR/lib\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/32\fR\fR
-.ad
-.sp .6
-.RS 4n
-Symbolic link to \fB/usr/lib\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/64\fR\fR
-.ad
-.sp .6
-.RS 4n
-Symbolic link to the most portable 64-bit Solaris interfaces, on both SPARC and
-x86 platforms.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/acct\fR\fR
-.ad
-.sp .6
-.RS 4n
-Accounting scripts and binaries. See \fBacct\fR(1M).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/adb\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBadb\fR accounting scripts.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/amd64\fR\fR
-.ad
-.sp .6
-.RS 4n
-Platform-dependent libraries, various databases, commands and daemons not
-invoked directly by a human user on 64-bit x86. An approved installation
-location for bundled Solaris software. The analogous location for add-on system
-software or for applications is \fB/opt/\fIpackagename\fR/lib/amd64\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/autofs\fR\fR
-.ad
-.sp .6
-.RS 4n
-Contains the \fBautomountd\fR executable.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/cfgadm\fR\fR
-.ad
-.sp .6
-.RS 4n
-Contains \fBcfgadm\fR hardware-specific driver plugins.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/class\fR\fR
-.ad
-.sp .6
-.RS 4n
-Scheduling-class-specific directories containing executables for
-\fBpriocntl\fR(1) and \fBdispadmin\fR(1M).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/crypto\fR\fR
-.ad
-.sp .6
-.RS 4n
-Contains the kernel-level cryptographic framework daemon (\fBkcfd\fR).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/devfsadm\fR\fR
-.ad
-.sp .6
-.RS 4n
-Contains \fBdevfsadm\fR, the daemon version of \fBdevfsadm\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/dict\fR\fR
-.ad
-.sp .6
-.RS 4n
-Database files for \fBspell\fR(1).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/dtrace\fR\fR
-.ad
-.sp .6
-.RS 4n
-Contains \fBdtrace\fR D source files.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/fm\fR\fR
-.ad
-.sp .6
-.RS 4n
-Contains \fBfmd\fR, the fault manager daemon and the fault manager library.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/font\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBtroff\fR(1) font description files.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/fs\fR\fR
-.ad
-.sp .6
-.RS 4n
-File system type dependent modules; generally not intended to be invoked
-directly by the user.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/gss\fR\fR
-.ad
-.sp .6
-.RS 4n
-Secure services-related libraries.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/iconv\fR\fR
-.ad
-.sp .6
-.RS 4n
-Conversion tables for \fBiconv\fR(1).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/inet\fR\fR
-.ad
-.sp .6
-.RS 4n
-Contains many network-related daemons and libraries.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/ipf\fR\fR
-.ad
-.sp .6
-.RS 4n
-Contains \fBIPFILTER.LICENCE\fR and \fBipftest\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/ipqosconf\fR\fR
-.ad
-.sp .6
-.RS 4n
-IPQoS configuration utility.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/krb5\fR\fR
-.ad
-.sp .6
-.RS 4n
-Contains the Kerberos database propagation program and libraries.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/ld\fR\fR
-.ad
-.sp .6
-.RS 4n
-Contains the map files for the \fBld\fR link editor.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/ldap\fR\fR
-.ad
-.sp .6
-.RS 4n
-Contains LDAP client configuration utilities.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/libp\fR\fR
-.ad
-.sp .6
-.RS 4n
-Profiled libraries.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/llc2\fR\fR
-.ad
-.sp .6
-.RS 4n
-Contains logical link control (\fBllc2\fR) driver configuration files.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/locale\fR\fR
-.ad
-.sp .6
-.RS 4n
-Localization databases.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/lp\fR\fR
-.ad
-.sp .6
-.RS 4n
-Line printer subsystem databases and back-end executables.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/netsvc\fR\fR
-.ad
-.sp .6
-.RS 4n
-Internet network services.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/nfs\fR\fR
-.ad
-.sp .6
-.RS 4n
-Auxiliary NFS-related programs and daemons.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/picl\fR\fR
-.ad
-.sp .6
-.RS 4n
-Platform Information and Control Library.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/pool\fR\fR
-.ad
-.sp .6
-.RS 4n
-Contains the automated resource pools partitioning daemon (\fBpoold\fR) and
-associated libraries.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/power\fR\fR
-.ad
-.sp .6
-.RS 4n
-Power management daemon, \fBpowerd\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/print\fR\fR
-.ad
-.sp .6
-.RS 4n
-Contains \fBlp\fR conversion scripts and the \fBin.lpd\fR daemon.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/rcap\fR\fR
-.ad
-.sp .6
-.RS 4n
-Resource cap enforcement daemon, \fBrcapd\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/rcm\fR\fR
-.ad
-.sp .6
-.RS 4n
-Contains the Reconfiguration and Coordination Manager daemon (\fBrcm_daemon\fR)
-and RCM scripts.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/refer\fR\fR
-.ad
-.sp .6
-.RS 4n
-Auxiliary programs for \fBrefer\fR(1).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/rmmount\fR\fR
-.ad
-.sp .6
-.RS 4n
-Removable media mounter shared objects.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/sa\fR\fR
-.ad
-.sp .6
-.RS 4n
-Scripts and commands for the system activity report package. See \fBsar\fR(1).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/saf\fR\fR
-.ad
-.sp .6
-.RS 4n
-Auxiliary programs and daemons related to the service access facility.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/sasl\fR\fR
-.ad
-.sp .6
-.RS 4n
-Simple Authentication and Security Layer (SASL) plug-in modules.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/secure\fR\fR
-.ad
-.sp .6
-.RS 4n
-Default trusted libraries.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/security\fR\fR
-.ad
-.sp .6
-.RS 4n
-Solaris security plug-in modules.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/smedia\fR\fR
-.ad
-.sp .6
-.RS 4n
-Removable media device server daemon, \fBrpc.smserverd\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/sparcv9\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBSPARC\fR 64-bit, platform-dependent libraries, various databases, commands
-and daemons not invoked directly by a human user. An approved installation
-location for bundled Solaris software. The analogous location for add-on system
-software or for applications is \fB/opt/\fIpackagename\fR/lib/sparcv9\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/spell\fR\fR
-.ad
-.sp .6
-.RS 4n
-Auxiliary programs and databases for \fBspell\fR(1). This directory is only
-present when the Binary Compatibility Package is installed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/\fIsubsystem\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Platform-dependent libraries, various databases, commands and daemons that are
-associated with \fIsubsystem\fR and that are not invoked directly by a human
-user. An approved installation location for bundled Solaris software. The
-analogous location for add-on system software or for applications is
-\fB/opt/\fIpackagename\fR/lib\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/\fIsubsystem\fR/amd64\fR\fR
-.ad
-.sp .6
-.RS 4n
-x86 64-bit, platform-dependent libraries, various databases, commands and
-daemons that are associated with \fIsubsystem\fR and that are not invoked
-directly by a human user. An approved installation location for bundled Solaris
-software. The analogous location for add-on system software or for applications
-is \fB/opt/\fIpackagename\fR/lib/amd64\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/\fIsubsystem\fR/sparcv9\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBSPARC\fR 64-bit, platform-dependent libraries, various databases, commands
-and daemons that are associated with \fIsubsystem\fR and that are not invoked
-directly by a human user. An approved installation location for bundled Solaris
-software. The analogous location for add-on system software or for applications
-is \fB/opt/\fIpackagename\fR/lib/sparcv9\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/\fIsubsystem\fR/lib\fR\fR
-.ad
-.sp .6
-.RS 4n
-Platform-dependent libraries, various databases, commands and daemons not
-invoked directly by a human user. An approved installation location for bundled
-Solaris software. The analogous location for add-on system software or for
-applications is \fB/opt/\fIpackagename\fR/lib\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/\fIsubsystem\fR/lib/amd64\fR\fR
-.ad
-.sp .6
-.RS 4n
-x86 64-bit, platform-dependent libraries, various databases, commands and
-daemons that are associated with \fIsubsystem\fR and that are not invoked
-directly by a human user. An approved installation location for bundled Solaris
-software. The analogous location for add-on system software or for applications
-is \fB/opt/\fIpackagename\fR/lib/amd64\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/\fIsubsystem\fR/lib/sparcv9\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBSPARC\fR 64-bit, platform-dependent libraries, various databases, commands
-and daemons that are associated with \fIsubsystem\fR and that are not invoked
-directly by a human user. An approved installation location for bundled Solaris
-software. The analogous location for add-on system software or for applications
-is \fB/opt/\fIpackagename\fR/lib/sparcv9\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/sysevent\fR\fR
-.ad
-.sp .6
-.RS 4n
-Contains the system event notification daemon (\fBsyseventd\fR) and the
-\fBsyseventd\fR loadable module (SLM) repository.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/uucp\fR\fR
-.ad
-.sp .6
-.RS 4n
-Auxiliary programs and daemons for \fBuucp\fR(1C).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/zones\fR\fR
-.ad
-.sp .6
-.RS 4n
-Zone administration daemon (\fBzoneadmd\fR).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/local\fR\fR
-.ad
-.sp .6
-.RS 4n
-Not part of the SVR4-based Solaris distribution. The \fB/usr\fR directory is
-exclusively for software bundled with the Solaris operating system. If needed
-for storing machine-local add-on software, create the directory
-\fB/opt/local\fR and make \fB/usr/local\fR a symbolic link to \fB/opt/local\fR.
-The \fB/opt\fR directory or filesystem is for storing add-on software to the
-system.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/mail\fR\fR
-.ad
-.sp .6
-.RS 4n
-Symbolic link to the \fB/var/mail\fR directory.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/man\fR\fR
-.ad
-.sp .6
-.RS 4n
-Symbolic link to the \fB/usr/share/man\fR directory.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/net/servers\fR\fR
-.ad
-.sp .6
-.RS 4n
-Entry points for foreign name service requests relayed using the network
-listener. See \fBlisten\fR(1M).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/news\fR\fR
-.ad
-.sp .6
-.RS 4n
-Symbolic link to the \fB/var/news\fR directory.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/old\fR\fR
-.ad
-.sp .6
-.RS 4n
-Programs that are being phased out.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/perl5\fR\fR
-.ad
-.sp .6
-.RS 4n
-Perl 5 programs and documentation
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/platform\fR\fR
-.ad
-.sp .6
-.RS 4n
-Subtree of platform-specific objects which does not need to reside on the root
-filesystem. It contains a series of directories, one per supported platform.
-The semantics of the series of directories is equivalent to \fB/platform\fR,
-except for subdirectories which do not provide utility under one or the other
-(for example, \fB/platform/include\fR is not needed).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/platform/\fR\fB`\fR\fBuname\fR
-\fB-i\fR\fB\fR\fB`\fR\fB/include\fR\fR
-.ad
-.sp .6
-.RS 4n
-Symbolic link to \fB/../\fR\fB`\fR\fBuname\fR
-\fB-i\fR\fB\fR\fB`\fR\fB/include\fR. Platform-specific system (\fBsys\fR,
-\fBvm\fR) header files with semantics equivalent to \fB/usr/include\fR. An
-approved installation location for bundled Solaris software and for add-on
-system software.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/platform/\fR\fB`\fR\fBuname\fR \fB-i\fR\fB\fR\fB`\fR\fB/lib\fR\fR
-.ad
-.sp .6
-.RS 4n
-Platform-specific shared objects with semantics equivalent to \fB/usr/lib\fR.
-An approved installation location for bundled Solaris software and for add-on
-system software.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/platform/\fR\fB`\fR\fBuname\fR
-\fB-i\fR\fB\fR\fB`\fR\fB/lib/\fIsubsystem\fR/amd64\fR\fR
-.ad
-.sp .6
-.RS 4n
-x86 64-bit, platform-specific daemon and shared objects. An approved
-installation location for bundled Solaris software and for add-on system
-software.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/platform/\fR\fB`\fR\fBuname\fR \fB-i\fR\fB\fR\fB`\fR\fB/sbin\fR\fR
-.ad
-.sp .6
-.RS 4n
-Platform-specific system administration utilities with semantics equivalent to
-\fB/usr/sbin\fR. An approved installation location for bundled Solaris software
-and for add-on system software.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/preserve\fR\fR
-.ad
-.sp .6
-.RS 4n
-Symbolic link to the \fB/var/preserve\fR directory.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/proc\fR\fR
-.ad
-.sp .6
-.RS 4n
-Former location of the \fBproc\fR(1) tools, now containing compatibility
-symbolic links to their new locations in \fB/usr/bin\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/pub\fR\fR
-.ad
-.sp .6
-.RS 4n
-Symbolic link to \fB/share/lib/pub\fR, which contains files for online man page
-and character processing.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/sadm\fR\fR
-.ad
-.sp .6
-.RS 4n
-System administration files and directories.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/sadm/install\fR\fR
-.ad
-.sp .6
-.RS 4n
-Executables and scripts for package management.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/sbin\fR\fR
-.ad
-.sp .6
-.RS 4n
-Platform-dependent executables for system administration, expected to be run
-only by system administrators. An approved installation location for bundled
-Solaris software. The analogous location for add-on system software or for
-applications is \fB/opt/\fIpackagename\fR/sbin\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/sbin/sparcv7\fR and \fBsparcv9\fR\fR
-.ad
-.sp .6
-.RS 4n
-32-bit and 64-bit SPARC versions of commands.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/sbin/amd64\fR\fR
-.ad
-.sp .6
-.RS 4n
-64-bit x86 versions of commands.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/sbin/\fIsubsystem\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Platform-dependent executables for system administration, expected to be run
-only by system administrators, and associated with \fIsubsystem\fR. An approved
-installation location for bundled Solaris software. The analogous location for
-add-on system software or for applications is
-\fB/opt/\fIpackagename\fR/sbin\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/\fIsubsystem\fR/sbin\fR\fR
-.ad
-.sp .6
-.RS 4n
-Platform-dependent executables for system administration, expected to be run
-only by system administrators, and associated with \fIsubsystem\fR. An approved
-installation location for bundled Solaris software. The analogous location for
-add-on system software or for applications is
-\fB/opt/\fIpackagename\fR/sbin\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/share\fR\fR
-.ad
-.sp .6
-.RS 4n
-Platform-independent sharable files. An approved installation location for
-bundled Solaris software.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/share/aclocal\fR\fR
-.ad
-.sp .6
-.RS 4n
-Open source \fBm4\fR files.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/share/applications\fR\fR
-.ad
-.sp .6
-.RS 4n
-Desktop application files.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/share/audio\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sample audio files.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/share/icons\fR\fR
-.ad
-.sp .6
-.RS 4n
-Desktop icon files.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/share/intltool\fR\fR
-.ad
-.sp .6
-.RS 4n
-XML translation tools.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/share/ipfilter\fR\fR
-.ad
-.sp .6
-.RS 4n
-Open source IP Filter sample files.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/share/lib\fR\fR
-.ad
-.sp .6
-.RS 4n
-Platform-independent sharable databases. An approved installation location for
-bundled Solaris software.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/share/lib/dict\fR\fR
-.ad
-.sp .6
-.RS 4n
-Contains word list for \fBspell\fR(1).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/share/lib/keytables\fR\fR
-.ad
-.sp .6
-.RS 4n
-Keyboard layout description tables.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/share/lib/mailx\fR\fR
-.ad
-.sp .6
-.RS 4n
-Help files for \fBmailx\fR(1).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/share/lib/nterm\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBnroff\fR(1) terminal tables.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/share/lib/pub\fR\fR
-.ad
-.sp .6
-.RS 4n
-Character set data files.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/share/lib/tabset\fR\fR
-.ad
-.sp .6
-.RS 4n
-Tab setting escape sequences.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/share/lib/terminfo\fR\fR
-.ad
-.sp .6
-.RS 4n
-Terminal description files for \fBterminfo\fR(4).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/share/lib/tmac\fR\fR
-.ad
-.sp .6
-.RS 4n
-Macro packages and related files for text processing tools, for example,
-\fBnroff\fR(1) and \fBtroff\fR(1).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/share/lib/zoneinfo\fR\fR
-.ad
-.sp .6
-.RS 4n
-Time zone information.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/share/man\fR\fR
-.ad
-.sp .6
-.RS 4n
-Platform-independent sharable manual pages. An approved installation location
-for bundled Solaris software. The analogous location for add-on system software
-or for applications is \fB/opt/\fIpackagename\fR/man\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/share/pixmaps\fR\fR
-.ad
-.sp .6
-.RS 4n
-Desktop icon files.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/share/sounds\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sound files.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/share/src\fR\fR
-.ad
-.sp .6
-.RS 4n
-Source code for kernel, utilities, and libraries.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/share/themes\fR\fR
-.ad
-.sp .6
-.RS 4n
-Desktop themes.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/snadm\fR\fR
-.ad
-.sp .6
-.RS 4n
-Files related to system and network administration.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/spool\fR\fR
-.ad
-.sp .6
-.RS 4n
-Symbolic link to the \fB/var/spool\fR directory.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/src\fR\fR
-.ad
-.sp .6
-.RS 4n
-Symbolic link to the \fB/usr/share/src\fR directory.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/tmp\fR\fR
-.ad
-.sp .6
-.RS 4n
-Symbolic link to the \fB/var/tmp\fR directory.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/ucb\fR\fR
-.ad
-.sp .6
-.RS 4n
-Berkeley compatibility package binaries.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/ucbinclude\fR\fR
-.ad
-.sp .6
-.RS 4n
-Berkeley compatibility package headers.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/ucblib\fR\fR
-.ad
-.sp .6
-.RS 4n
-Berkeley compatibility package libraries.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/xpg4\fR\fR
-.ad
-.sp .6
-.RS 4n
-Directory for POSIX-compliant utilities.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/xpg6\fR\fR
-.ad
-.sp .6
-.RS 4n
-Directory for newer versions of POSIX-compliant utilities.
-.RE
-
-.SH SEE ALSO
-\fBat\fR(1), \fBex\fR(1), \fBiconv\fR(1), \fBlp\fR(1),
-\fBisainfo\fR(1), \fBmail\fR(1), \fBmailx\fR(1), \fBnroff\fR(1),
-\fBpriocntl\fR(1), \fBrefer\fR(1), \fBsar\fR(1), \fBsh\fR(1), \fBspell\fR(1),
-\fBsvcs\fR(1), \fBtroff\fR(1), \fBuname\fR(1), \fBuucp\fR(1C), \fBvi\fR(1),
-\fBacct\fR(1M), \fBcron\fR(1M), \fBdispadmin\fR(1M), \fBdladm\fR(1M),
-\fBfmd\fR(1M), \fBfsck\fR(1M), \fBinit\fR(1M), \fBkernel\fR(1M),
-\fBmknod\fR(1M), \fBmount\fR(1M), \fBsvcadm\fR(1M), \fBsvccfg\fR(1M),
-\fBuseradd\fR(1M), \fBypbind\fR(1M), \fBmount\fR(2), \fBIntro\fR(4),
-\fBproc\fR(4), \fBterminfo\fR(4), \fBsmf\fR(5), \fBctfs\fR(7FS),
-\fBdev\fR(7FS), \fBdevfs\fR(7FS), \fBctfs\fR(7FS), \fBobjfs\fR(7FS),
-\fBtmpfs\fR(7FS)
diff --git a/usr/src/man/man5/fnmatch.5 b/usr/src/man/man5/fnmatch.5
deleted file mode 100644
index 79649713b4..0000000000
--- a/usr/src/man/man5/fnmatch.5
+++ /dev/null
@@ -1,338 +0,0 @@
-.\"
-.\" Sun Microsystems, Inc. gratefully acknowledges The Open Group for
-.\" permission to reproduce portions of its copyrighted documentation.
-.\" Original documentation from The Open Group can be obtained online at
-.\" http://www.opengroup.org/bookstore/.
-.\"
-.\" The Institute of Electrical and Electronics Engineers and The Open
-.\" Group, have given us permission to reprint portions of their
-.\" documentation.
-.\"
-.\" In the following statement, the phrase ``this text'' refers to portions
-.\" of the system documentation.
-.\"
-.\" Portions of this text are reprinted and reproduced in electronic form
-.\" in the SunOS Reference Manual, from IEEE Std 1003.1, 2004 Edition,
-.\" Standard for Information Technology -- Portable Operating System
-.\" Interface (POSIX), The Open Group Base Specifications Issue 6,
-.\" Copyright (C) 2001-2004 by the Institute of Electrical and Electronics
-.\" Engineers, Inc and The Open Group. In the event of any discrepancy
-.\" between these versions and the original IEEE and The Open Group
-.\" Standard, the original IEEE and The Open Group Standard is the referee
-.\" document. The original Standard can be obtained online at
-.\" http://www.opengroup.org/unix/online.html.
-.\"
-.\" This notice shall appear on any product containing this material.
-.\"
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.\"
-.\"
-.\" Copyright (c) 1992, X/Open Company Limited. All Rights Reserved.
-.\" Portions Copyright (c) 1995, Sun Microsystems, Inc. All Rights Reserved.
-.\"
-.TH FNMATCH 5 "Jun 14, 2015"
-.SH NAME
-fnmatch \- file name pattern matching
-.SH DESCRIPTION
-.LP
-The pattern matching notation described below is used to specify patterns for
-matching strings in the shell. Historically, pattern matching notation is
-related to, but slightly different from, the regular expression notation. For
-this reason, the description of the rules for this pattern matching notation is
-based on the description of regular expression notation described on the
-\fBregex\fR(5) manual page.
-.SS "Patterns Matching a Single Character"
-.LP
-The following patterns match a single character: \fIordinary characters\fR,
-\fIspecial pattern characters\fR and \fIpattern bracket expressions\fR. The pattern
-bracket expression will also match a single collating element.
-.sp
-.LP
-An ordinary character is a pattern that matches itself. It can be any character
-in the supported character set except for \fINUL\fR, those special shell
-characters that require quoting, and the following three special pattern
-characters. Matching is based on the bit pattern used for encoding the
-character, not on the graphic representation of the character. If any character
-(ordinary, shell special, or pattern special) is quoted, that pattern will
-match the character itself. The shell special characters always require
-quoting.
-.sp
-.LP
-When unquoted and outside a bracket expression, the following three characters
-will have special meaning in the specification of patterns:
-.sp
-.ne 2
-.na
-\fB\fB?\fR \fR
-.ad
-.RS 6n
-A question-mark is a pattern that will match any character.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB*\fR \fR
-.ad
-.RS 6n
-An asterisk is a pattern that will match multiple characters, as described in
-\fBPatterns Matching Multiple Characters\fR, below.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB[\fR \fR
-.ad
-.RS 6n
-The open bracket will introduce a pattern bracket expression.
-.RE
-
-.sp
-.LP
-The description of basic regular expression bracket expressions on the
-\fBregex\fR(5) manual page also applies to the pattern bracket expression,
-except that the exclamation-mark character \fB(\fR \fB!\fR \fB)\fR replaces the
-circumflex character (\fB^\fR) in its role in a \fInon-matching list\fR in the
-regular expression notation. A bracket expression starting with an unquoted
-circumflex character produces unspecified results.
-.sp
-.LP
-The restriction on a circumflex in a bracket expression is to allow
-implementations that support pattern matching using the circumflex as the
-negation character in addition to the exclamation-mark. A portable application
-must use something like \fB[\e^!\fR] to match either character.
-.sp
-.LP
-When pattern matching is used where shell quote removal is not performed (such
-as in the argument to the \fBfind\fR \fB-name\fR primary when \fBfind\fR is
-being called using one of the \fBexec\fR functions, or in the \fIpattern\fR
-argument to the \fBfnmatch\fR(3C) function, special characters can be escaped
-to remove their special meaning by preceding them with a backslash character.
-This escaping backslash will be discarded. The sequence \fB\e\e\fR represents
-one literal backslash. All of the requirements and effects of quoting on
-ordinary, shell special and special pattern characters will apply to escaping
-in this context.
-.sp
-.LP
-Both quoting and escaping are described here because pattern matching must work
-in three separate circumstances:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Calling directly upon the shell, such as in pathname expansion or in a
-\fBcase\fR statement. All of the following will match the string or file
-\fBabc\fR:
-.sp
-
-.sp
-.TS
-l l l l l
-l l l l l .
-\fBabc\fR \fB"abc"\fR \fBa"b"c\fR \fBa\ebc\fR \fBa[b]c\fR
-\fBa["b"]c\fR \fBa[\eb]c\fR \fBa["\eb"]c\fR \fBa?c\fR \fBa*c\fR
-.TE
-
-The following will not:
-.sp
-
-.sp
-.TS
-l l l .
-\fB"a?c"\fR \fBa\e*c\fR \fBa\e[b]c\fR
-.TE
-
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Calling a utility or function without going through a shell, as described for
-\fBfind\fR(1) and the function \fBfnmatch\fR(3C)
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Calling utilities such as \fBfind\fR, \fBcpio\fR, \fBtar\fR or \fBpax\fR
-through the shell command line. In this case, shell quote removal is performed
-before the utility sees the argument. For example, in:
-.sp
-find /bin -name e\ec[\eh]o -print
-.sp
-after quote removal, the backslashes are presented to \fBfind\fR and it treats
-them as escape characters. Both precede ordinary characters, so the \fBc\fR and
-\fBh\fR represent themselves and \fBecho\fR would be found on many historical
-systems (that have it in \fB/bin\fR). To find a file name that contained shell
-special characters or pattern characters, both quoting and escaping are
-required, such as:
-.sp
-\fBpax -r .\|.\|. "*a\e\|(\|\e?"\fR
-.sp
-to extract a filename ending with \fBa(?\fR.
-.RE
-.sp
-.LP
-Conforming applications are required to quote or escape the shell special
-characters (sometimes called metacharacters). If used without this protection,
-syntax errors can result or implementation extensions can be triggered. For
-example, the KornShell supports a series of extensions based on parentheses in
-patterns; see \fBksh\fR(1)
-.SS "Patterns Matching Multiple Characters"
-.LP
-The following rules are used to construct \fIpatterns matching multiple
-characters\fR from \fIpatterns matching a single character\fR:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The asterisk (*) is a pattern that will match any string, including the null
-string.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The concatenation of \fIpatterns matching a single character\fR is a valid
-pattern that will match the concatenation of the single characters or collating
-elements matched by each of the concatenated patterns.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The concatenation of one or more \fIpatterns matching a single character\fR
-with one or more asterisks is a valid pattern. In such patterns, each asterisk
-will match a string of zero or more characters, matching the greatest possible
-number of characters that still allows the remainder of the pattern to match
-the string.
-.RE
-.sp
-.LP
-Since each asterisk matches zero or more occurrences, the patterns \fBa*b\fR
-and \fBa**b\fR have identical functionality.
-.sp
-.LP
-Examples:
-.sp
-.ne 2
-.na
-\fB\fBa[bc]\fR \fR
-.ad
-.RS 10n
-matches the strings \fBab\fR and \fBac\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBa*d\fR \fR
-.ad
-.RS 10n
-matches the strings \fBad\fR, \fBabd\fR and \fBabcd\fR, but not the string
-\fBabc\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBa*d*\fR \fR
-.ad
-.RS 10n
-matches the strings \fBad\fR, \fBabcd\fR, \fBabcdef\fR, \fBaaaad\fR and
-\fBadddd\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB*a*d\fR \fR
-.ad
-.RS 10n
-matches the strings \fBad\fR, \fBabcd\fR, \fBefabcd\fR, \fBaaaad\fR and
-\fBadddd\fR.
-.RE
-
-.SS "Patterns Used for Filename Expansion"
-.LP
-The rules described so far in \fBPatterns\fR \fBMatching\fR \fBMultiple\fR
-\fBCharacters\fR and \fBPatterns\fR \fBMatching\fR \fBa\fR \fBSingle\fR
-\fBCharacter\fR are qualified by the following rules that apply when pattern
-matching notation is used for filename expansion.
-.RS +4
-.TP
-1.
-The slash character in a pathname must be explicitly matched by using one
-or more slashes in the pattern; it cannot be matched by the asterisk or
-question-mark special characters or by a bracket expression. Slashes in the
-pattern are identified before bracket expressions; thus, a slash cannot be
-included in a pattern bracket expression used for filename expansion. For
-example, the pattern \fBa[b/c]d\fR will not match such pathnames as \fBabd\fR
-or \fBa/d\fR. It will only match a pathname of literally \fBa[b/c]d\fR.
-.RE
-.RS +4
-.TP
-2.
-If a filename begins with a period (.), the period must be explicitly
-matched by using a period as the first character of the pattern or immediately
-following a slash character. The leading period will not be matched by:
-.sp
-\(bu the asterisk or question-mark special characters
-.sp
-\(bu a bracket expression containing a non-matching list, such as:
-.sp
-\fB[!a]\fR
-.sp
-a range expression, such as:
-.sp
-\fB[%\(mi0]\fR
-.sp
-or a character class expression, such as:
-.sp
-\fB[[:punct:]]\fR
-.sp
-It is unspecified whether an explicit period in a bracket expression matching
-list, such as:
-.sp
-\fB[.abc]\fR
-.sp
-can match a leading period in a filename.
-.RE
-.RS +4
-.TP
-3.
-Specified patterns are matched against existing filenames and pathnames, as
-appropriate. Each component that contains a pattern character requires read
-permission in the directory containing that component. Any component, except
-the last, that does not contain a pattern character requires search permission.
-For example, given the pattern:
-.sp
-\fB/foo/bar/x*/bam\fR
-.sp
-search permission is needed for directories \fB/\fR and \fBfoo\fR, search and
-read permissions are needed for directory \fBbar\fR, and search permission is
-needed for each \fBx*\fR directory.
-.sp
-If the pattern matches any existing filenames or pathnames, the pattern will be
-replaced with those filenames and pathnames, sorted according to the collating
-sequence in effect in the current locale. If the pattern contains an invalid
-bracket expression or does not match any existing filenames or pathnames, the
-pattern string is left unchanged.
-.RE
-.SH SEE ALSO
-.LP
-\fBfind\fR(1), \fBksh\fR(1), \fBfnmatch\fR(3C), \fBregex\fR(5)
diff --git a/usr/src/man/man5/format.dat.5 b/usr/src/man/man5/format.dat.5
new file mode 100644
index 0000000000..fc930906a9
--- /dev/null
+++ b/usr/src/man/man5/format.dat.5
@@ -0,0 +1,480 @@
+'\" te
+.\" Copyright (c) 1999, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH FORMAT.DAT 5 "Apr 19, 2001"
+.SH NAME
+format.dat \- disk drive configuration for the format command
+.SH DESCRIPTION
+.sp
+.LP
+\fBformat.dat\fR enables you to use your specific disk drives with
+\fBformat\fR(8). On Solaris 2.3 and compatible systems, \fBformat\fR will
+automatically configure and label SCSI drives, so that they need not be defined
+in \fBformat.dat\fR. Three things can be defined in the data file:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+search paths
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+disk types
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+partition tables.
+.RE
+.SS "Syntax"
+.sp
+.LP
+The following syntax rules apply to the data file:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The pound \fB#\fR sign is the comment character. Any text on a line after a
+pound sign is not interpreted by \fBformat\fR.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Each definition in the \fBformat.dat\fR file appears on a single logical line.
+If the definition is more than one line long, all but the last line of the
+definition must end with a backslash (\e).
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+A definition consists of a series of assignments that have an identifier on the
+left side and one or more values on the right side. The assignment operator is
+the equal sign (=). Assignments within a definition must be separated by a
+colon (:).
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+White space is ignored by \fBformat\fR(8). If you want an assigned value to
+contain white space, enclose the entire value in double quotes ("). This will
+cause the white space within quotes to be preserved as part of the assignment
+value.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Some assignments can have multiple values on the right hand side. Separate
+values by a comma (,).
+.RE
+.SS "Keywords"
+.sp
+.LP
+The data file contains disk definitions that are read in by \fBformat\fR(8)
+when it starts up. Each definition starts with one of the following keywords:
+\fBsearch_path\fR, \fBdisk_type\fR, and \fBpartition\fR.
+.sp
+.ne 2
+.na
+\fB\fBsearch_path\fR\fR
+.ad
+.RS 15n
+4.x: Tells \fBformat\fR which disks it should search for when it starts up. The
+list in the default data file contains all the disks in the GENERIC
+configuration file. If your system has disks that are not in the GENERIC
+configuration file, add them to the \fBsearch_path\fR definition in your data
+file. The data file can contain only one \fBsearch_path\fR definition. However,
+this single definition lets you specify all the disks you have in your system.
+.sp
+5.x: By default, \fBformat\fR(8) understands all the logical devices that are
+of the form \fB/dev/rdsk/cntndnsn\fR; hence \fBsearch_path\fR is not normally
+defined on a 5.x system.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdisk_type\fR\fR
+.ad
+.RS 15n
+Defines the controller and disk model. Each \fBdisk_type\fR definition contains
+information concerning the physical geometry of the disk. The default data file
+contains definitions for the controllers and disks that the Solaris operating
+environment supports. You need to add a new \fBdisk_type\fR only if you have an
+unsupported disk. You can add as many \fBdisk_type\fR definitions to the data
+file as you want.
+.sp
+The following controller types are supported by \fBformat\fR(8):
+.sp
+.ne 2
+.na
+\fBXY450\fR
+.ad
+.RS 10n
+Xylogics 450 controller (SMD)
+.RE
+
+.sp
+.ne 2
+.na
+\fBXD7053\fR
+.ad
+.RS 10n
+Xylogics 7053 controller (SMD)
+.RE
+
+.sp
+.ne 2
+.na
+\fBSCSI\fR
+.ad
+.RS 10n
+True SCSI (CCS or SCSI-2)
+.RE
+
+.sp
+.ne 2
+.na
+\fBISP-80\fR
+.ad
+.RS 10n
+IPI panther controller
+.RE
+
+The keyword itself is assigned the name of the disk type. This name appears in
+the disk's label and is used to identify the disk type whenever
+\fBformat\fR(8) is run. Enclose the name in double quotes to preserve any
+white space in the name.
+.sp
+Below are lists of identifiers for supported controllers. Note that an asterisk
+('*') indicates the identifier is mandatory for that controller -- it is not
+part of the keyword name.
+.sp
+The following identifiers are assigned values in all \fBdisk_type\fR
+definitions:
+.sp
+.ne 2
+.na
+\fB\fBacyl*\fR\fR
+.ad
+.RS 12n
+alternate cylinders
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBasect\fR\fR
+.ad
+.RS 12n
+alternate sectors per track
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBatrks\fR\fR
+.ad
+.RS 12n
+alternate tracks
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfmt_time\fR\fR
+.ad
+.RS 12n
+formatting time per cylinder
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBncyl*\fR\fR
+.ad
+.RS 12n
+number of logical cylinders
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnhead*\fR\fR
+.ad
+.RS 12n
+number of logical heads
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnsect*\fR\fR
+.ad
+.RS 12n
+number of logical sectors per track
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpcyl*\fR\fR
+.ad
+.RS 12n
+number of physical cylinders
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBphead\fR\fR
+.ad
+.RS 12n
+number of physical heads
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpsect\fR\fR
+.ad
+.RS 12n
+number of physical sectors per track
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrpm*\fR\fR
+.ad
+.RS 12n
+drive RPM
+.RE
+
+These identifiers are for SCSI and MD-21 Controllers
+.sp
+.ne 2
+.na
+\fB\fBread_retries\fR\fR
+.ad
+.RS 17n
+page 1 byte 3 (read retries)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBwrite_retries\fR\fR
+.ad
+.RS 17n
+page 1 byte 8 (write retries)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcyl_skew\fR\fR
+.ad
+.RS 17n
+page 3 bytes 18-19 (cylinder skew)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBtrk_skew\fR\fR
+.ad
+.RS 17n
+page 3 bytes 16-17 (track skew)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBtrks_zone\fR\fR
+.ad
+.RS 17n
+page 3 bytes 2-3 (tracks per zone)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcache\fR\fR
+.ad
+.RS 17n
+page 38 byte 2 (cache parameter)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBprefetch\fR\fR
+.ad
+.RS 17n
+page 38 byte 3 (prefetch parameter)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmax_prefetch\fR\fR
+.ad
+.RS 17n
+page 38 byte 4 (minimum prefetch)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmin_prefetch\fR\fR
+.ad
+.RS 17n
+page 38 byte 6 (maximum prefetch)
+.RE
+
+Note: The Page 38 values are device-specific. Refer the user to the particular
+disk's manual for these values.
+.sp
+For SCSI disks, the following geometry specifiers may cause a mode select on
+the byte(s) indicated:
+.sp
+.ne 2
+.na
+\fB\fBasect\fR\fR
+.ad
+.RS 9n
+page 3 bytes 4-5 (alternate sectors per zone)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBatrks\fR\fR
+.ad
+.RS 9n
+page 3 bytes 8-9 (alt. tracks per logical unit)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBphead\fR\fR
+.ad
+.RS 9n
+page 4 byte 5 (number of heads)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpsect\fR\fR
+.ad
+.RS 9n
+page 3 bytes 10-11 (sectors per track)
+.RE
+
+And these identifiers are for SMD Controllers Only
+.sp
+.ne 2
+.na
+\fB\fBbps*\fR\fR
+.ad
+.RS 8n
+bytes per sector (SMD)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBbpt*\fR\fR
+.ad
+.RS 8n
+bytes per track (SMD)
+.RE
+
+Note: under SunOS 5.x, bpt is only required for SMD disks. Under SunOS 4.x, bpt
+was required for all disk types, even though it was only used for SMD disks.
+.sp
+And this identifier is for XY450 SMD Controllers Only
+.sp
+.ne 2
+.na
+\fB\fBdrive_type*\fR\fR
+.ad
+.RS 15n
+drive type (SMD) (just call this "xy450 drive type")
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpartition\fR\fR
+.ad
+.RS 15n
+Defines a partition table for a specific disk type. The partition table
+contains the partitioning information, plus a name that lets you refer to it in
+\fBformat\fR(8). The default data file contains default partition definitions
+for several kinds of disk drives. Add a partition definition if you
+repartitioned any of the disks on your system. Add as many partition
+definitions to the data file as you need.
+.sp
+Partition naming conventions differ in SunOS 4.x and in SunOS 5.x.
+.sp
+4.x: the partitions are named as \fBa\fR, \fBb\fR, \fBc\fR, \fBd\fR, \fBe\fR,
+\fBf\fR, \fBg\fR, \fBh\fR.
+.sp
+5.x: the partitions are referred to by numbers \fB0\fR, \fB1\fR, \fB2\fR,
+\fB3\fR, \fB4\fR, \fB5\fR, \fB6\fR, \fB7\fR.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRA sample \fBdisk_type\fR and \fBpartition\fR.
+.sp
+.LP
+Following is a sample \fBdisk_type\fR and \fBpartition\fR definition in
+\fBformat.dat\fR file for SUN0535 disk device.
+
+.sp
+.in +2
+.nf
+disk_type = "SUN0535" \e
+ : ctlr = SCSI : fmt_time = 4 \e
+ : ncyl = 1866 : acyl = 2 : pcyl = 2500 : nhead = 7 : nsect = 80 \e
+ : rpm = 5400
+partition = "SUN0535" \e
+ : disk = "SUN0535" : ctlr = SCSI \e
+ : 0 = 0, 64400 : 1 = 115, 103600 : 2 = 0, 1044960 : 6 = 300, 876960
+.fi
+.in -2
+.sp
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/format.dat\fR\fR
+.ad
+.RS 19n
+default data file if \fBformat\fR \fB-x\fR is not specified, nor is there a
+\fBformat.dat\fR file in the current directory.
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR format (8)
+.sp
+.LP
+\fISystem Administration Guide: Basic Administration\fR
diff --git a/usr/src/man/man5/formats.5 b/usr/src/man/man5/formats.5
deleted file mode 100644
index e3636c3a6c..0000000000
--- a/usr/src/man/man5/formats.5
+++ /dev/null
@@ -1,478 +0,0 @@
-.\"
-.\" Sun Microsystems, Inc. gratefully acknowledges The Open Group for
-.\" permission to reproduce portions of its copyrighted documentation.
-.\" Original documentation from The Open Group can be obtained online at
-.\" http://www.opengroup.org/bookstore/.
-.\"
-.\" The Institute of Electrical and Electronics Engineers and The Open
-.\" Group, have given us permission to reprint portions of their
-.\" documentation.
-.\"
-.\" In the following statement, the phrase ``this text'' refers to portions
-.\" of the system documentation.
-.\"
-.\" Portions of this text are reprinted and reproduced in electronic form
-.\" in the SunOS Reference Manual, from IEEE Std 1003.1, 2004 Edition,
-.\" Standard for Information Technology -- Portable Operating System
-.\" Interface (POSIX), The Open Group Base Specifications Issue 6,
-.\" Copyright (C) 2001-2004 by the Institute of Electrical and Electronics
-.\" Engineers, Inc and The Open Group. In the event of any discrepancy
-.\" between these versions and the original IEEE and The Open Group
-.\" Standard, the original IEEE and The Open Group Standard is the referee
-.\" document. The original Standard can be obtained online at
-.\" http://www.opengroup.org/unix/online.html.
-.\"
-.\" This notice shall appear on any product containing this material.
-.\"
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.\"
-.\"
-.\" Copyright 1992, X/Open Company Limited. All Rights Reserved.
-.\" Portions Copyright (c) 1995, Sun Microsystems, Inc. All Rights Reserved.
-.\"
-.TH FORMATS 5 "Mar 28, 1995"
-.SH NAME
-formats \- file format notation
-.SH DESCRIPTION
-.sp
-.LP
-Utility descriptions use a syntax to describe the data organization within
-files\(emstdin, stdout, stderr, input files, and output files\(emwhen that
-organization is not otherwise obvious. The syntax is similar to that used by
-the \fBprintf\fR(3C) function. When used for stdin or input file
-descriptions, this syntax describes the format that could have been used to
-write the text to be read, not a format that could be used by the
-\fBscanf\fR(3C) function to read the input file.
-.SS "Format"
-.sp
-.LP
-The description of an individual record is as follows:
-.sp
-.in +2
-.nf
-"<\fBformat\fR>", [<\fIarg1\fR>, <\fIarg2\fR>, .\|.\|., <\fIargn\fR>]
-.fi
-.in -2
-
-.sp
-.LP
-The \fBformat\fR is a character string that contains three types of objects
-defined below:
-.sp
-.ne 2
-.na
-\fB\fI\fR\fIcharacters\fR\fI\fR \fR
-.ad
-.RS 30n
-Characters that are not \fIescape sequences\fR or \fIconversion
-specifications\fR, as described below, are copied to the output.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fI\fR\fIescape sequences\fR\fI\fR \fR
-.ad
-.RS 30n
-Represent non-graphic characters.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fI\fR\fIconversion specifications\fR\fI\fR \fR
-.ad
-.RS 30n
-Specifies the output format of each argument. (See below.)
-.RE
-
-.sp
-.LP
-The following characters have the following special meaning in the format
-string:
-.sp
-.ne 2
-.na
-\fB`` \&''\fR
-.ad
-.RS 11n
-(An empty character position.) One or more blank characters.
-.RE
-
-.sp
-.ne 2
-.na
-\fB/\e \fR
-.ad
-.RS 11n
-Exactly one space character.
-.RE
-
-.sp
-.LP
-The notation for spaces allows some flexibility for application output. Note
-that an empty character position in \fBformat\fR represents one or more blank
-characters on the output (not \fIwhite space\fR, which can include newline
-characters). Therefore, another utility that reads that output as its input
-must be prepared to parse the data using \fBscanf\fR(3C), \fBawk\fR(1), and so
-forth. The character is used when exactly one space character is output.
-.SS "Escape Sequences"
-.sp
-.LP
-The following table lists escape sequences and associated actions on display
-devices capable of the action.
-.sp
-
-.sp
-.TS
-c c c
-l l l .
-\fBSequence\fR \fBCharacter\fR \fBTerminal Action\fR
-_
-\fB\e\e\fR backslash None.
-\fB\ea\fR alert T{
-Attempts to alert the user through audible or visible notification.
-T}
-\fB\eb\fR backspace T{
-Moves the printing position to one column before the current position, unless the current position is the start of a line.
-T}
-\fB\ef\fR form-feed T{
-Moves the printing position to the initial printing position of the next logical page.
-T}
-\fB\en\fR newline T{
-Moves the printing position to the start of the next line.
-T}
-\fB\er\fR carriage-return T{
-Moves the printing position to the start of the current line.
-T}
-\fB\et\fR tab T{
-Moves the printing position to the next tab position on the current line. If there are no more tab positions left on the line, the behavior is undefined.
-T}
-\fB\ev\fR vertical-tab T{
-Moves the printing position to the start of the next vertical tab position. If there are no more vertical tab positions left on the page, the behavior is undefined.
-T}
-.TE
-
-.SS "Conversion Specifications"
-.sp
-.LP
-Each conversion specification is introduced by the percent-sign character (%).
-After the character %, the following appear in sequence:
-.sp
-.ne 2
-.na
-\fB\fI\fR\fIflags\fR\fI\fR \fR
-.ad
-.RS 26n
-Zero or more \fIflags\fR, in any order, that modify the meaning of the
-conversion specification.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fI\fR\fIfield width\fR\fI\fR \fR
-.ad
-.RS 26n
-An optional string of decimal digits to specify a minimum \fIfield width\fR.
-For an output field, if the converted value has fewer bytes than the field
-width, it is padded on the left (or right, if the left-adjustment flag (\(mi),
-described below, has been given to the field width).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fI\fR\fIprecision\fR\fI\fR \fR
-.ad
-.RS 26n
-Gives the minimum number of digits to appear for the d, o, i, u, x or X
-conversions (the field is padded with leading zeros), the number of digits to
-appear after the radix character for the e and f conversions, the maximum
-number of significant digits for the g conversion; or the maximum number of
-bytes to be written from a string in s conversion. The precision takes the form
-of a period (.) followed by a decimal digit string; a null digit string is
-treated as zero.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fI\fR\fIconversion characters\fR\fI\fR \fR
-.ad
-.RS 26n
-A conversion character (see below) that indicates the type of conversion to be
-applied.
-.RE
-
-.SS "\fIflags\fR"
-.sp
-.LP
-The \fIflags\fR and their meanings are:
-.sp
-.ne 2
-.na
-\fB\fI\(mi\fR \fR
-.ad
-.RS 12n
-The result of the conversion is left-justified within the field.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fI+\fR \fR
-.ad
-.RS 12n
-The result of a signed conversion always begins with a sign (+ or \(mi).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fI<space>\fR \fR
-.ad
-.RS 12n
-If the first character of a signed conversion is not a sign, a space character
-is prefixed to the result. This means that if the space character and + flags
-both appear, the space character flag is ignored.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fI#\fR \fR
-.ad
-.RS 12n
-The value is to be converted to an alternative form. For c, d, i, u, and s
-conversions, the behaviour is undefined. For o conversion, it increases the
-precision to force the first digit of the result to be a zero. For x or X
-conversion, a non-zero result has 0x or 0X prefixed to it, respectively. For e,
-E, f, g, and G conversions, the result always contains a radix character, even
-if no digits follow the radix character. For g and G conversions, trailing
-zeros are not removed from the result as they usually are.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fI0\fR \fR
-.ad
-.RS 12n
-For d, i, o, u, x, X, e, E, f, g, and G conversions, leading zeros (following
-any indication of sign or base) are used to pad to the field width; no space
-padding is performed. If the 0 and \(mi flags both appear, the 0 flag is
-ignored. For d, i, o, u, x and X conversions, if a precision is specified, the
-0 flag is ignored. For other conversions, the behaviour is undefined.
-.RE
-
-.SS "Conversion Characters"
-.sp
-.LP
-Each conversion character results in fetching zero or more arguments. The
-results are undefined if there are insufficient arguments for the format. If
-the format is exhausted while arguments remain, the excess arguments are
-ignored.
-.sp
-.LP
-The \fIconversion characters\fR and their meanings are:
-.sp
-.ne 2
-.na
-\fB\fId,i,o,u,x,X\fR \fR
-.ad
-.RS 16n
-The integer argument is written as signed decimal (d or i), unsigned octal (o),
-unsigned decimal (u), or unsigned hexadecimal notation (x and X). The d and i
-specifiers convert to signed decimal in the style \fB[\fR\(mi\fB]\fR\fIdddd\fR.
-The x conversion uses the numbers and letters 0123456789abcdef and the X
-conversion uses the numbers and letters 0123456789ABCDEF. The \fIprecision\fR
-component of the argument specifies the minimum number of digits to appear. If
-the value being converted can be represented in fewer digits than the specified
-minimum, it is expanded with leading zeros. The default precision is 1. The
-result of converting a zero value with a precision of 0 is no characters. If
-both the field width and precision are omitted, the implementation may precede,
-follow or precede and follow numeric arguments of types d, i and u with blank
-characters; arguments of type o (octal) may be preceded with leading zeros.
-.sp
-The treatment of integers and spaces is different from the \fBprintf\fR(3C)
-function in that they can be surrounded with blank characters. This was done so
-that, given a format such as:
-.sp
-.in +2
-.nf
-"%d\en",<\fIfoo\fR>
-.fi
-.in -2
-
-the implementation could use a \fBprintf()\fR call such as:
-.sp
-.in +2
-.nf
-printf("%6d\en", \fIfoo\fR);
-.fi
-.in -2
-
-and still conform. This notation is thus somewhat like \fBscanf()\fR in
-addition to \fBprintf(\|).\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIf\fR \fR
-.ad
-.RS 16n
-The floating point number argument is written in decimal notation in the style
-\fB[\fR\(mi\fB]\fR\fIddd\fR.\fIddd\fR, where the number of digits after the
-radix character (shown here as a decimal point) is equal to the \fIprecision\fR
-specification. The \fBLC_NUMERIC\fR locale category determines the radix
-character to use in this format. If the \fIprecision\fR is omitted from the
-argument, six digits are written after the radix character; if the
-\fIprecision\fR is explicitly 0, no radix character appears.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIe,E\fR \fR
-.ad
-.RS 16n
-The floating point number argument is written in the style
-\fB[\fR\(mi\fB]\fR\fId\fR.\fIddd\fRe\(+-\fBdd\fR (the symbol \(+- indicates
-either a plus or minus sign), where there is one digit before the radix
-character (shown here as a decimal point) and the number of digits after it is
-equal to the precision. The \fBLC_NUMERIC\fR locale category determines the
-radix character to use in this format. When the precision is missing, six
-digits are written after the radix character; if the precision is 0, no radix
-character appears. The E conversion character produces a number with E instead
-of e introducing the exponent. The exponent always contains at least two
-digits. However, if the value to be written requires an exponent greater than
-two digits, additional exponent digits are written as necessary.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIg,G\fR \fR
-.ad
-.RS 16n
-The floating point number argument is written in style f or e (or in style E in
-the case of a G conversion character), with the precision specifying the number
-of significant digits. The style used depends on the value converted: style g
-is used only if the exponent resulting from the conversion is less than \(mi4
-or greater than or equal to the precision. Trailing zeros are removed from the
-result. A radix character appears only if it is followed by a digit.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIc\fR \fR
-.ad
-.RS 16n
-The integer argument is converted to an \fBunsigned char\fR and the resulting
-byte is written.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIs\fR \fR
-.ad
-.RS 16n
-The argument is taken to be a string and bytes from the string are written
-until the end of the string or the number of bytes indicated by the
-\fIprecision\fR specification of the argument is reached. If the precision is
-omitted from the argument, it is taken to be infinite, so all bytes up to the
-end of the string are written.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fI%\fR \fR
-.ad
-.RS 16n
-Write a % character; no argument is converted.
-.RE
-
-.sp
-.LP
-In no case does a non-existent or insufficient \fIfield width\fR cause
-truncation of a field; if the result of a conversion is wider than the field
-width, the field is simply expanded to contain the conversion result. The term
-\fIfield width\fR should not be confused with the term \fIprecision\fR used in
-the description of %s.
-.sp
-.LP
-One difference from the C function \fBprintf()\fR is that the l and h
-conversion characters are not used. There is no differentiation between decimal
-values for type \fBint\fR, type \fBlong\fR, or type \fBshort\fR. The
-specifications %d or %i should be interpreted as an arbitrary length sequence
-of digits. Also, no distinction is made between single precision and double
-precision numbers (\fBfloat\fR or \fBdouble\fR in C). These are simply
-referred to as floating point numbers.
-.sp
-.LP
-Many of the output descriptions use the term \fBline\fR, such as:
-.sp
-.in +2
-.nf
-"%s", <\fIinput line\fR>
-.fi
-.in -2
-
-.sp
-.LP
-Since the definition of \fBline\fR includes the trailing newline character
-already, there is no need to include a \fB\en\fR in the format; a double
-newline character would otherwise result.
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRTo represent the output of a program that prints a date and
-time in the form Sunday, July 3, 10:02, where \fI<weekday>\fR and \fI<month>\fR
-are strings:
-.sp
-.in +2
-.nf
-"%s,/\e%s/\e%d,/\e%d:%.2d\en",<\fIweekday\fR>,<\fImonth\fR>,<\fIday\fR>,<\fIhour\fR>,<\fImin\fR>
-.fi
-.in -2
-
-.LP
-\fBExample 2 \fRTo show pi written to 5 decimal places:
-.sp
-.in +2
-.nf
-"pi/\e=/\e%.5f\en",<\fIvalue of pi\fR>
-.fi
-.in -2
-
-.LP
-\fBExample 3 \fRTo show an input file format consisting of five colon-separated
-fields:
-.sp
-.in +2
-.nf
-"%s:%s:%s:%s:%s\en",<\fIarg1\fR>,<\fIarg2\fR>,<\fIarg3\fR>,<\fIarg4\fR>,<\fIarg5\fR>
-.fi
-.in -2
-
-.SH SEE ALSO
-.sp
-.LP
-\fBawk\fR(1), \fBprintf\fR(1), \fBprintf\fR(3C), \fBscanf\fR(3C)
diff --git a/usr/src/man/man5/fsattr.5 b/usr/src/man/man5/fsattr.5
deleted file mode 100644
index ccd5df88b8..0000000000
--- a/usr/src/man/man5/fsattr.5
+++ /dev/null
@@ -1,797 +0,0 @@
-'\" te
-.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH FSATTR 5 "Oct 10, 2007"
-.SH NAME
-fsattr \- extended file attributes
-.SH DESCRIPTION
-.sp
-.LP
-Attributes are logically supported as files within the file system. The file
-system is therefore augmented with an orthogonal name space of file attributes.
-Any file (including attribute files) can have an arbitrarily deep attribute
-tree associated with it. Attribute values are accessed by file descriptors
-obtained through a special attribute interface. This logical view of
-"attributes as files" allows the leveraging of existing file system interface
-functionality to support the construction, deletion, and manipulation of
-attributes.
-.sp
-.LP
-The special files "." and ".\|." retain their accustomed semantics within the
-attribute hierarchy. The "." attribute file refers to the current directory
-and the ".\|." attribute file refers to the parent directory. The unnamed
-directory at the head of each attribute tree is considered the "child" of the
-file it is associated with and the ".\|." file refers to the associated file.
-For any non-directory file with attributes, the ".\|." entry in the unnamed
-directory refers to a file that is not a directory.
-.sp
-.LP
-Conceptually, the attribute model is fully general. Extended attributes can be
-any type of file (doors, links, directories, and so forth) and can even have
-their own attributes (fully recursive). As a result, the attributes associated
-with a file could be an arbitrarily deep directory hierarchy where each
-attribute could have an equally complex attribute tree associated with it. Not
-all implementations are able to, or want to, support the full model.
-Implementation are therefore permitted to reject operations that are not
-supported. For example, the implementation for the UFS file system allows only
-regular files as attributes (for example, no sub-directories) and rejects
-attempts to place attributes on attributes.
-.sp
-.LP
-The following list details the operations that are rejected in the current
-implementation:
-.sp
-.ne 2
-.na
-\fB\fBlink\fR\fR
-.ad
-.RS 25n
-Any attempt to create links between attribute and non-attribute space is
-rejected to prevent security-related or otherwise sensitive attributes from
-being exposed, and therefore manipulable, as regular files.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrename\fR\fR
-.ad
-.RS 25n
-Any attempt to rename between attribute and non-attribute space is rejected to
-prevent an already linked file from being renamed and thereby circumventing the
-\fBlink\fR restriction above.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmkdir\fR, \fBsymlink\fR, \fBmknod\fR\fR
-.ad
-.RS 25n
-Any attempt to create a "non-regular" file in attribute space is rejected to
-reduce the functionality, and therefore exposure and risk, of the initial
-implementation.
-.RE
-
-.sp
-.LP
-The entire available name space has been allocated to "general use" to bring
-the implementation in line with the NFSv4 draft standard [NFSv4]. That standard
-defines "named attributes" (equivalent to Solaris Extended Attributes) with no
-naming restrictions. All Sun applications making use of opaque extended
-attributes will use the prefix "SUNW".
-.SS "Shell-level API"
-.sp
-.LP
-The command interface for extended attributes is the set of applications
-provided by Solaris for the manipulation of attributes from the command line.
-This interface consists of a set of existing utilities that have been extended
-to be "attribute-aware", plus the \fBrunat\fR utility designed to "expose" the
-extended attribute space so that extended attributes can be manipulated as
-regular files.
-.sp
-.LP
-The \fB-@\fR option enable utilities to manipulate extended attributes. As a
-rule, this option enables the utility to enter into attribute space when the
-utility is performing a recursive traversal of file system space. This is a
-fully recursive concept. If the underlying file system supports recursive
-attributes and directory structures, the \fB-@\fR option opens these spaces to
-the file tree-walking algorithms.
-.sp
-.LP
-The following utilities accommodate extended attributes (see the individual
-manual pages for details):
-.sp
-.ne 2
-.na
-\fB\fBcp\fR\fR
-.ad
-.RS 8n
-By default, \fBcp\fR ignores attributes and copies only file data. This is
-intended to maintain the semantics implied by \fBcp\fR currently, where
-attributes (such as owner and mode) are not copied unless the \fB-p\fR option
-is specified. With the \fB-@\fR (or \fB-p\fR) option, \fBcp\fR attempts to copy
-all attributes along with the file data.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcpio\fR\fR
-.ad
-.RS 8n
-The \fB-@\fR option informs \fBcpio\fR to archive attributes, but by default
-\fBcpio\fR ignores extended attributes. See \fBExtended Archive Formats\fR
-below for a description of the new archive records.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdu\fR\fR
-.ad
-.RS 8n
-File sizes computed include the space allocated for any extended attributes
-present.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfind\fR\fR
-.ad
-.RS 8n
-By default, \fBfind\fR ignores attributes. The \fB-xattr\fR expression
-provides support for searches involving attribute space. It returns true if
-extended attributes are present on the current file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfsck\fR\fR
-.ad
-.RS 8n
-The \fBfsck\fR utility manages extended attribute data on the disk. A file
-system with extended attributes can be mounted on versions of Solaris that are
-not attribute-aware (versions prior to Solaris 9), but the attributes will not
-be accessible and \fBfsck\fR will strip them from the files and place them in
-\fBlost+found\fR. Once the attributes have been stripped the file system is
-completely stable on Solaris versions that are not attribute-aware, but would
-now be considered corrupted on attribute-aware versions of Solaris. The
-attribute-aware \fBfsck\fR utility should be run to stabilize the file system
-before using it in an attribute-aware environment.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfsdb\fR\fR
-.ad
-.RS 8n
-This \fBfsdb\fR utility is able to find the inode for the "hidden" extended
-attribute directory.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBls\fR\fR
-.ad
-.RS 8n
-The \fBls\fR \fB-@\fR command displays an "@" following the mode information
-when extended attributes are present. More precisely, the output line for a
-given file contains an "@" character following the mode characters if the
-\fBpathconf\fR(2) variable \fBXATTR_EXISTS\fR is set to true. See the
-\fBpathconf()\fR section below. The \fB-@\fR option uses the same general
-output format as the \fB-l\fR option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmv\fR\fR
-.ad
-.RS 8n
-When a file is moved, all attributes are carried along with the file rename.
-When a file is moved across a file system boundary, the copy command invoked is
-similar to the \fBcp\fR \fB-p\fR variant described above and extended
-attributes are "moved". If the extended file attributes cannot be replicated,
-the move operation fails and the source file is not removed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpax\fR\fR
-.ad
-.RS 8n
-The \fB-@\fR option informs \fBpax\fR to archive attributes, but by default
-\fBpax\fR ignores extended attributes. The \fBpax\fR(1) utility is a generic
-replacement for both \fBtar\fR(1) and \fBcpio\fR(1) and is able to produce
-either output format in its archive. See \fBExtended Archive Formats\fR below
-for a description of the new archive records.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBtar\fR\fR
-.ad
-.RS 8n
-In the default case, \fBtar\fR does not attempt to place attributes in the
-archive. If the \fB-@\fR option is specified, however, \fBtar\fR traverses
-into the attribute space of all files being placed in the archive and attempts
-to add the attributes to the archive. A new record type has been introduced for
-extended attribute entries in \fBtar\fR archive files (the same is true for
-\fBpax\fR and \fBcpio\fR archives) similar to the way ACLs records were
-defined. See \fBExtended Archive Formats\fR below for a description of the new
-archive records.
-.RE
-
-.sp
-.LP
-There is a class of utilities (\fBchmod\fR, \fBchown\fR, \fBchgrp\fR) that one
-might expect to be modified in a manner similar to those listed above. For
-example, one might expect that performing \fBchmod\fR on a file would not only
-affect the file itself but would also affect at least the extended attribute
-directory if not any existing extended attribute files. This is not the case.
-The model chosen for extended attributes implies that the attribute directory
-and the attributes themselves are all file objects in their own right, and can
-therefore have independent file status attributes associated with them (a
-given implementation cannot support this, for example, for intrinsic
-attributes). The relationship is left undefined and a fine-grained control
-mechanism (\fBrunat\fR(1)) is provided to allow manipulation of extended
-attribute status attributes as necessary.
-.sp
-.LP
-The \fBrunat\fR utility has the following syntax:
-.sp
-.in +2
-.nf
-runat \fIfilename\fR [\fIcommand\fR]
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The \fBrunat\fR utility executes the supplied command in the context of the
-"attribute space" associated with the indicated file. If no command argument
-is supplied, a shell is invoked. See \fBrunat\fR(1) for details.
-.SS "Application-level API"
-.sp
-.LP
-The primary interface required to access extended attributes at the
-programmatic level is the \fBopenat\fR(2) function. Once a file descriptor has
-been obtained for an attribute file by an \fBopenat()\fR call, all normal file
-system semantics apply. There is no attempt to place special semantics on
-\fBread\fR(2), \fBwrite\fR(2), \fBftruncate\fR(3C), or other functions when
-applied to attribute file descriptors relative to "normal" file descriptors.
-.sp
-.LP
-The set of existing attributes can be browsed by calling \fBopenat()\fR with
-"." as the file name and the \fBO_XATTR\fR flag set, resulting in a file
-descriptor for the attribute directory. The list of attributes is obtained by
-calls to \fBgetdents\fR(2) on the returned file descriptor. If the target file
-did not previously have any attributes associated with it, an empty top-level
-attribute directory is created for the file and subsequent \fBgetdents()\fR
-calls will return only "." and ".\|.". While the owner of the parent file owns
-the extended attribute directory, it is not charged against its quota if the
-directory is empty. Attribute files themselves, however, are charged against
-the user quota as any other regular file.
-.sp
-.LP
-Additional system calls have been provided as convenience functions. These
-include the \fBfchownat\fR(2), \fBfstatat\fR(2), \fBfutimesat\fR(2),
-\fBrenameat\fR(2), \fBunlinkat\fR(2). These new functions, along with
-\fBopenat()\fR, provide a mechanism to access files relative to an arbitrary
-point in the file system, rather than only the current working directory. This
-mechanism is particularly useful in situations when a file descriptor is
-available with no path. The \fBopenat()\fR function, in particular, can be used
-in many contexts where \fBchdir()\fR or \fBfchdir()\fR is currently required.
-See \fBchdir\fR(2).
-.SS "Open a file relative to a file descriptor"
-.sp
-.in +2
-.nf
-int openat (int \fIfd\fR, const char *\fIpath\fR, int \fIoflag\fR [, mode_t \fImode\fR])
-.fi
-.in -2
-
-.sp
-.LP
-The \fBopenat\fR(2) function behaves exactly as \fBopen\fR(2) except when given
-a relative path. Where \fBopen()\fR resolves a relative path from the current
-working directory, \fBopenat()\fR resolves the path based on the vnode
-indicated by the supplied file descriptor. When \fIoflag\fR is \fBO_XATTR\fR,
-\fBopenat()\fR interprets the \fIpath\fR argument as an extended attribute
-reference. The following code fragment uses \fBopenat()\fR to examine the
-attributes of some already opened file:
-.sp
-.in +2
-.nf
-dfd = openat(fd, ".", O_RDONLY|O_XATTR);
-(void)getdents(dfd, buf, nbytes);
-.fi
-.in -2
-
-.sp
-.LP
-If \fBopenat()\fR is passed the special value \fBAT_FDCWD\fR as its first
-(\fIfd\fR) argument, its behavior is identical to \fBopen()\fR and the relative
-path arguments are interpreted relative to the current working directory. If
-the \fBO_XATTR\fR flag is provided to \fBopenat()\fR or to \fBopen()\fR, the
-supplied path is interpreted as a reference to an extended attribute on the
-current working directory.
-.SS "Unlink a file relative to a directory file descriptor"
-.sp
-.in +2
-.nf
-int unlinkat (int \fIdirfd\fR, const char *path\fIflag\fR, int flag\fIflag\fR)
-.fi
-.in -2
-
-.sp
-.LP
-The \fBunlinkat\fR(2) function deletes an entry from a directory. The
-\fIpath\fR argument indicates the name of the entry to remove. If \fIpath\fR an
-absolute path, the \fIdirfd\fR argument is ignored. If it is a relative path,
-it is interpreted relative to the directory indicated by the \fIdirfd\fR
-argument. If \fIdirfd\fR does not refer to a valid directory, the function
-returns \fBENOTDIR\fR. If the special value \fBAT_FDCWD\fR is specified for
-\fIdirfd\fR, a relative path argument is resolved relative to the current
-working directory. If the \fIflag\fR argument is 0, all other semantics of
-this function are equivalent to \fBunlink\fR(2). If \fIflag\fR is set to
-\fBAT_REMOVEDIR\fR, all other semantics of this function are equivalent to
-\fBrmdir\fR(2).
-.SS "Rename a file relative to directories"
-.sp
-.in +2
-.nf
-int renameat (int \fIfromfd\fR, const char *\fIold\fR, int \fItofd\fR, const char *\fInew\fR)
-.fi
-.in -2
-
-.sp
-.LP
-The \fBrenameat\fR(2) function renames an entry in a directory, possibly moving
-the entry into a different directory. The \fIold\fR argument indicates the
-name of the entry to rename. If this argument is a relative path, it is
-interpreted relative to the directory indicated by the \fIfd\fR argument. If it
-is an absolute path, the \fIfromfd\fR argument is ignored. The \fInew\fR
-argument indicates the new name for the entry. If this argument is a relative
-path, it is interpreted relative to the directory indicated by the \fItofd\fR
-argument. If it is an absolute path, the \fItofd\fR argument is ignored.
-.sp
-.LP
-In the relative path cases, if the directory file descriptor arguments do not
-refer to a valid directory, the function returns \fBENOTDIR\fR. All other
-semantics of this function are equivalent to \fBrename\fR(2).
-.sp
-.LP
-If a special value \fBAT_FDCWD\fR is specified for either the \fIfromfd\fR or
-\fItofd\fR arguments, their associated path arguments (\fIold\fR and \fInew\fR)
-are interpreted relative to the current working directory if they are not
-specified as absolute paths. Any attempt to use \fBrenameat()\fR to move a file
-that is not an extended attribute into an extended attribute directory (so that
-it becomes an extended attribute) will fail. The same is true for an attempt to
-move a file that is an extended attribute into a directory that is not an
-extended attribute directory.
-.SS "Obtain information about a file"
-.sp
-.in +2
-.nf
-int fstatat (int \fIfd\fR, const char *\fIpath\fR, struct stat* \fIbuf\fR, int \fIflag\fR)
-.fi
-.in -2
-
-.sp
-.LP
-The \fBfstatat\fR(2) function obtains information about a file. If the
-\fIpath\fR argument is relative, it is resolved relative to the \fIfd\fR
-argument file descriptor, otherwise the \fIfd\fR argument is ignored. If the
-\fIfd\fR argument is a special value \fBAT_FDCWD\fR the path is resolved
-relative to the current working directory. If the \fIpath\fR argument is a
-null pointer, the function returns information about the file referenced by the
-\fIfd\fR argument. In all other relative path cases, if the \fIfd\fR argument
-does not refer to a valid directory, the function returns \fBENOTDIR\fR. If
-\fBAT_SYMLINK_NOFOLLOW\fR is set in the \fIflag\fR argument, the function will
-not automatically traverse a symbolic link at the position of the path. If
-\fB_AT_TRIGGER\fR is set in the \fIflag\fR argument and the vnode is a trigger
-mount point, the mount is performed and the function returns the attributes of
-the root of the mounted filesystem. The \fBfstatat()\fR function is a
-multipurpose function that can be used in place of \fBstat()\fR, \fBlstat()\fR,
-or \fBfstat()\fR. See \fBstat\fR(2)
-.sp
-.LP
-The function call \fBstat(\fR\fIpath\fR\fB,\fR \fIbuf\fR\fB)\fR is identical to
-\fBfstatat(AT_FDCWD\fR, \fIpath\fR\fB,\fR \fIbuf\fR\fB, 0)\fR.
-.sp
-.LP
-The function call \fBlstat(\fR\fIpath\fR\fB,\fR \fIbuf\fR\fB)\fR is identical
-to \fBfstatat(AT_FDCWD\fR, \fIpath\fR\fB,\fR \fIbuf\fR,
-\fBAT_SYMLINK_NOFOLLOW)\fR
-.sp
-.LP
-The function call \fBfstat(\fR\fIfildes\fR\fB,\fR \fIbuf\fR\fB)\fR is identical
-to \fBfstatat(\fR\fIfildes\fR, \fBNULL\fR, \fIbuf\fR, \fB0)\fR.
-.SS "Set owner and group ID"
-.sp
-.in +2
-.nf
-int fchownat (int \fIfd\fR, const char *\fIpath\fR, uid_t \fIowner\fR, gid_t \fIgroup\fR, \e
- int \fIflag\fR)
-.fi
-.in -2
-
-.sp
-.LP
-The \fBfchownat\fR(2) function sets the owner ID and group ID for a file. If
-the \fIpath\fR argument is relative, it is resolved relative to the \fIfd\fR
-argument file descriptor, otherwise the \fIfd\fR argument is ignored. If the
-\fIfd\fR argument is a special value \fBAT_FDCWD\fR the path is resolved
-relative to the current working directory. If the path argument is a null
-pointer, the function sets the owner and group ID of the file referenced by the
-\fIfd\fR argument. In all other relative path cases, if the \fIfd\fR argument
-does not refer to a valid directory, the function returns \fBENOTDIR\fR. If the
-\fIflag\fR argument is set to \fBAT_SYMLINK_NOFOLLOW\fR, the function will not
-automatically traverse a symbolic link at the position of the path. The
-\fBfchownat()\fR function is a multi-purpose function that can be used in place
-of \fBchown()\fR, \fBlchown()\fR, or \fBfchown()\fR. See \fBchown\fR(2).
-.sp
-.LP
-The function call \fBchown(\fR\fIpath\fR\fB,\fR \fIowner\fR\fB,\fR
-\fIgroup\fR\fB)\fR is equivalent to \fBfchownat(AT_FDCWD\fR, \fIpath\fR\fB,\fR
-\fIowner\fR\fB,\fR \fIgroup\fR\fB, 0)\fR.
-.sp
-.LP
-The function call \fBlchown(\fR\fIpath\fR\fB,\fR \fIowner\fR\fB,\fR
-\fIgroup\fR\fB)\fR is equivalent to \fBfchownat(AT_FDCWD\fR, \fIpath\fR\fB,\fR
-\fIowner\fR\fB,\fR \fIgroup\fR\fB, AT_SYMLINK_NOFOLLOW)\fR.
-.SS "Set file access and modification times"
-.sp
-.in +2
-.nf
-int futimesat (int \fIfd\fR, const char *\fIpath\fR, const struct timeval \e
- \fItimes\fR[2])
-.fi
-.in -2
-
-.sp
-.LP
-The \fBfutimesat\fR(2) function sets the access and modification times for a
-file. If the \fIpath\fR argument is relative, it is resolved relative to the
-\fIfd\fR argument file descriptor; otherwise the \fIfd\fR argument is ignored.
-If the \fIfd\fR argument is the special value \fBAT_FDCWD\fR, the path is
-resolved relative to the current working directory. If the \fIpath\fR argument
-is a null pointer, the function sets the access and modification times of the
-file referenced by the \fIfd\fR argument. In all other relative path cases, if
-the \fIfd\fR argument does not refer to a valid directory, the function returns
-\fBENOTDIR\fR. The \fBfutimesat()\fR function can be used in place of
-\fButimes\fR(2).
-.sp
-.LP
-The function call \fButimes(\fR\fIpath\fR\fB,\fR \fItimes\fR\fB)\fR is
-equivalent to \fBfutimesat(AT_FDCWD\fR, \fIpath\fR\fB,\fR \fItimes\fR\fB)\fR.
-.SS "New pathconf() functionality"
-.sp
-.in +2
-.nf
-long int pathconf(const char *\fIpath\fR, int \fIname\fR)
-.fi
-.in -2
-
-.sp
-.LP
-Two variables have been added to \fBpathconf\fR(2) to provide enhanced support
-for extended attribute manipulation. The \fBXATTR_ENABLED\fR variable allows an
-application to determine if attribute support is currently enabled for the file
-in question. The \fBXATTR_EXISTS\fR variable allows an application to determine
-whether there are any extended attributes associated with the supplied path.
-.SS "Open/Create an attribute file"
-.sp
-.in +2
-.nf
-int attropen (const char *\fIpath\fR, const char *\fIattrpath\fR, int \fIoflag\fR \e
- [, mode_t \fImode\fR])
-.fi
-.in -2
-
-.sp
-.LP
-The \fBattropen\fR(3C) function returns a file descriptor for the named
-attribute, \fIattrpath\fR, of the file indicated by \fIpath\fR. The \fIoflag\fR
-and \fImode\fR arguments are identical to the \fBopen\fR(2) arguments and are
-applied to the open operation on the attribute file (for example, using the
-\fBO_CREAT\fR flag creates a new attribute). Once opened, all normal file
-system operations can be used on the attribute file descriptor. The
-\fBattropen()\fR function is a convenience function and is equivalent to the
-following sequence of operations:
-.sp
-.in +2
-.nf
-fd = open (path, O_RDONLY);
-attrfd = openat(fd, attrpath, oflag|O_XATTR, mode);
-close(fd);
-.fi
-.in -2
-
-.sp
-.LP
-The set of existing attributes can be browsed by calling \fBattropen()\fR with
-"." as the attribute name. The list of attributes is obtained by calling
-\fBgetdents\fR(2) (or \fBfdopendir\fR(3C) followed by \fBreaddir\fR(3C), see
-below) on the returned file descriptor.
-.SS "Convert an open file descriptor for a directory into a directory descriptor"
-.sp
-.in +2
-.nf
-DIR * fdopendir (const int \fIfd\fR)
-.fi
-.in -2
-
-.sp
-.LP
-The \fBfdopendir\fR(3C) function promotes a file descriptor for a directory to
-a directory pointer suitable for use with the \fBreaddir\fR(3C) function. The
-originating file descriptor should not be used again following the call to
-\fBfdopendir()\fR. The directory pointer should be closed with a call to
-\fBclosedir\fR(3C). If the provided file descriptor does not reference a
-directory, the function returns \fBENOTDIR\fR. This function is useful in
-circumstances where the only available handle on a directory is a file
-descriptor. See \fBattropen\fR(3C) and \fBopenat\fR(2).
-.SS "Using the API"
-.sp
-.LP
-The following examples demonstrate how the API might be used to perform basic
-operations on extended attributes:
-.LP
-\fBExample 1 \fRList extended attributes on a file.
-.sp
-.in +2
-.nf
-attrdirfd = attropen("test", ".", O_RDONLY);
-dirp = fdopendir(attrdirfd);
-while (dp = readdir(dirp)) {
-\&...
-.fi
-.in -2
-
-.LP
-\fBExample 2 \fROpen an extended attribute.
-.sp
-.in +2
-.nf
-attrfd = attropen("test", dp->d_name, O_RDONLY);
-.fi
-.in -2
-
-.sp
-.LP
-or
-
-.sp
-.in +2
-.nf
-attrfd = openat(attrdirfd, dp->d_name, O_RDONLY);
-.fi
-.in -2
-
-.LP
-\fBExample 3 \fRRead from an extended attribute.
-.sp
-.in +2
-.nf
-while (read(attrfd, buf, 512) > 0) {
-\&...
-.fi
-.in -2
-
-.LP
-\fBExample 4 \fRCreate an extended attribute.
-.sp
-.in +2
-.nf
-newfd = attropen("test", "attr", O_CREAT|O_RDWR);
-.fi
-.in -2
-
-.sp
-.LP
-or
-
-.sp
-.in +2
-.nf
-newfd = openat(attrdirfd, "attr", O_CREAT|O_RDWR);
-.fi
-.in -2
-
-.LP
-\fBExample 5 \fRWrite to an extended attribute.
-.sp
-.in +2
-.nf
-count = write(newfd, buf, length);
-.fi
-.in -2
-
-.LP
-\fBExample 6 \fRDelete an extended attribute.
-.sp
-.in +2
-.nf
-error = unlinkat(attrdirfd, "attr");
-.fi
-.in -2
-
-.sp
-.LP
-Applications intending to access the interfaces defined here as well as the
-POSIX and X/Open specification-conforming interfaces should define the macro
-\fB_ATFILE_SOURCE\fR to be 1 and set whichever feature test macros are
-appropriate to obtain the desired environment. See \fBstandards\fR(5).
-.SS "Extended Archive Formats"
-.sp
-.LP
-As noted above in the description of command utilities modified to provide
-support for extended attributes, the archive formats for \fBtar\fR(1) and
-\fBcpio\fR(1) have been extended to provide support for archiving extended
-attributes. This section describes the specifics of the archive format
-extensions.
-.SS "Extended tar format"
-.sp
-.LP
-The \fBtar\fR archive is made up of a series of 512 byte blocks. Each archived
-file is represented by a header block and zero or more data blocks containing
-the file contents. The header block is structured as shown in the following
-table.
-.sp
-
-.sp
-.TS
-c c c
-l l l .
-Field Name Length (in Octets) Description
-Name 100 File name string
-Mode 8 12 file mode bits
-Uid 8 User ID of file owner
-Gid 8 Group ID of file owner
-Size 12 Size of file
-Mtime 12 File modification time
-Chksum 8 File contents checksum
-Typeflag 1 File type flag
-Linkname 100 Link target name if file linked
-Magic 6 "ustar"
-Version 2 "00"
-Uname 32 User name of file owner
-Gname 32 Group name of file owner
-Devmajor 8 Major device ID if special file
-Devminor 8 Minor device ID if special file
-Prefix 155 Path prefix string for file
-.TE
-
-.sp
-.LP
-The extended attribute project extends the above header format by defining a
-new header type (for the \fBTypeflag\fR field). The type 'E' is defined to be
-used for all extended attribute files. Attribute files are stored in the
-\fBtar\fR archive as a sequence of two \fB<header ,data>\fR pairs. The first
-file contains the data necessary to locate and name the extended attribute in
-the file system. The second file contains the actual attribute file data. Both
-files use an 'E' type header. The prefix and name fields in extended attribute
-headers are ignored, though they should be set to meaningful values for the
-benefit of archivers that do not process these headers. Solaris archivers set
-the prefix field to "\fB/dev/null\fR" to prevent archivers that do not
-understand the type 'E' header from trying to restore extended attribute files
-in inappropriate places.
-.SS "Extended cpio format"
-.sp
-.LP
-The \fBcpio\fR archive format is octet-oriented rather than block-oriented.
-Each file entry in the archive includes a header that describes the file,
-followed by the file name, followed by the contents of the file. These data
-are arranged as described in the following table.
-.sp
-
-.sp
-.TS
-c c c
-l l l .
-\fBField Name\fR Length (in Octets) Description
-\fBc_magic\fR 6 70707
-\fBc_dev\fR 6 First half of unique file ID
-\fBc_ino\fR 6 Second half of unique file ID
-\fBc_mode\fR 6 File mode bits
-\fBc_uid\fR 6 User ID of file owner
-\fBc_gid\fR 6 Group ID of file owner
-\fBc_nlink\fR 6 Number of links referencing file
-\fBc_rdev\fR 6 Information for special files
-\fBc_mtime\fR 11 Modification time of file
-\fBc_namesize\fR 6 Length of file pathname
-\fBc_filesize\fR 11 Length of file content
-\fBc_name\fR \fBc_namesize\fR File pathname
-\fBc_filedata\fR \fBc_filesize\fR File content
-.TE
-
-.sp
-.LP
-The basic archive file structure is not changed for extended attributes. The
-file type bits stored in the \fBc_mode\fR field for an attribute file are set
-to \fB0xB000\fR. As with the \fBtar\fR archive format, extended attributes are
-stored in \fBcpio\fR archives as two consecutive file entries. The first file
-describes the location/name for the extended attribute. The second file
-contains the actual attribute file content. The \fBc_name\fR field in extended
-attribute headers is ignored, though it should be set to a meaningful value for
-the benefit of archivers that do not process these headers. Solaris archivers
-start the pathname with "\fB/dev/null/\fR"to prevent archivers that do not
-understand the type 'E' header from trying to restore extended attribute files
-in inappropriate places.
-.SS "Attribute identification data format"
-.sp
-.LP
-Both the \fBtar\fR and \fBcpio\fR archive formats can contain the special files
-described above, always paired with the extended attribute data record, for
-identifying the precise location of the extended attribute. These special data
-files are necessary because there is no simple naming mechanism for extended
-attribute files. Extended attributes are not visible in the file system name
-space. The extended attribute name space must be "tunneled into" using the
-\fBopenat()\fR function. The attribute identification data must support not
-only the flat naming structure for extended attributes, but also the
-possibility of future extensions allowing for attribute directory hierarchies
-and recursive attributes. The data file is therefore composed of a sequence of
-records. It begins with a fixed length header describing the content. The
-following table describes the format of this data file.
-.sp
-
-.sp
-.TS
-c c c
-l l l .
-Field Name Length (in Octets) Description
-\fBh_version\fR 7 Name file version
-\fBh_size\fR 10 Length of data file
-\fBh_component_len\fR 10 Total length of all path segments
-\fBh_link_comp_len\fR 10 Total length of all link segments
-\fBpath\fR \fBh_component_len\fR Complex path
-\fBlink_path\fR \fBh_link_comp_len\fR Complex link path
-.TE
-
-.sp
-.LP
-As demonstrated above, the header is followed by a record describing the "path"
-to the attribute file. This path is composed of two or more path segments
-separated by a null character. Each segment describes a path rooted at the
-hidden extended attribute directory of the leaf file of the previous segment,
-making it possible to name attributes on attributes. The first segment is
-always the path to the parent file that roots the entire sequence in the normal
-name space. The following table describes the format of each segment.
-.sp
-
-.sp
-.TS
-c c c
-l l l .
-Field Name Length (in Octets) Description
-_
-\fBh_namesz\fR 7 Length of segment path
-\fBh_typeflag\fR 1 Actual file type of attribute file
-\fBh_names\fR \fBh_namesz\fR Parent path + segment path
-.TE
-
-.sp
-.LP
-If the attribute file is linked to another file, the path record is followed by
-a second record describing the location of the referencing file. The structure
-of this record is identical to the record described above.
-.SH SEE ALSO
-.sp
-.LP
-\fBcp\fR(1), \fBcpio\fR(1), \fBfind\fR(1), \fBls\fR(1), \fBmv\fR(1),
-\fBpax\fR(1), \fBrunat\fR(1), \fBtar\fR(1), \fBdu\fR(1), \fBfsck\fR(1M),
-\fBchown\fR(2), \fBlink\fR(2), \fBopen\fR(2), \fBpathconf\fR(2),
-\fBrename\fR(2), \fBstat\fR(2), \fBunlink\fR(2), \fButimes\fR(2),
-\fBattropen\fR(3C), \fBstandards\fR(5)
diff --git a/usr/src/man/man5/fspec.5 b/usr/src/man/man5/fspec.5
new file mode 100644
index 0000000000..33aa375c83
--- /dev/null
+++ b/usr/src/man/man5/fspec.5
@@ -0,0 +1,118 @@
+'\" te
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH FSPEC 5 "Jul 3, 1990"
+.SH NAME
+fspec \- format specification in text files
+.SH DESCRIPTION
+.sp
+.LP
+It is sometimes convenient to maintain text files on the system with
+non-standard tabs, (tabs that are not set at every eighth column). Such files
+must generally be converted to a standard format, frequently by replacing all
+tabs with the appropriate number of spaces, before they can be processed by
+system commands. A format specification occurring in the first line of a text
+file specifies how tabs are to be expanded in the remainder of the file.
+.sp
+.LP
+A format specification consists of a sequence of parameters separated by blanks
+and surrounded by the brackets \fB<:\fR and \fB:>\fR. Each parameter consists
+of a keyletter, possibly followed immediately by a value. The following
+parameters are recognized:
+.sp
+.ne 2
+.na
+\fB\fBt\fR\fItabs\fR\fR
+.ad
+.RS 11n
+The \fBt\fR parameter specifies the tab settings for the file. The value of
+\fBtabs\fR must be one of the following:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+A list of column numbers separated by commas, indicating tabs set at the
+specified columns.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+A '\fB\(mi\fR\&' followed immediately by an integer \fIn\fR, indicating tabs at
+intervals of \fIn\fR columns.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+A '\fB\(mi\fR\&' followed by the name of a ``canned'' tab specification.
+.RE
+Standard tabs are specified by \fBt\(mi8\fR, or equivalently, \fBt1,9,17,25,\fR
+etc. The canned tabs that are recognized are defined by the \fBtabs\fR(1)
+command.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBs\fR\fIsize\fR\fR
+.ad
+.RS 11n
+The \fBs\fR parameter specifies a maximum line size. The value of \fBsize\fR
+must be an integer. Size checking is performed after tabs have been expanded,
+but before the margin is prepended.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBm\fR\fImargin\fR\fR
+.ad
+.RS 11n
+The \fBm\fR parameter specifies a number of spaces to be prepended to each
+line. The value of \fImargin\fR must be an integer.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBd\fR\fR
+.ad
+.RS 11n
+The \fBd\fR parameter takes no value. Its presence indicates that the line
+containing the format specification is to be deleted from the converted file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBe\fR\fR
+.ad
+.RS 11n
+The \fBe\fR parameter takes no value. Its presence indicates that the current
+format is to prevail only until another format specification is encountered in
+the file.
+.RE
+
+.sp
+.LP
+Default values, which are assumed for parameters not supplied, are \fBt\(mi8\fR
+and \fBm0\fR. If the \fBs\fR parameter is not specified, no size checking is
+performed. If the first line of a file does not contain a format specification,
+the above defaults are assumed for the entire file. The following is an example
+of a line containing a format specification:
+.sp
+.LP
+\fB* <:t5,10,15 s72:> *\fR
+.sp
+.LP
+If a format specification can be disguised as a comment, it is not necessary to
+code the \fBd\fR parameter.
+.SH SEE ALSO
+.sp
+.LP
+.BR ed (1),
+.BR newform (1),
+.BR tabs (1)
diff --git a/usr/src/man/man5/fstypes.5 b/usr/src/man/man5/fstypes.5
new file mode 100644
index 0000000000..a60c39195c
--- /dev/null
+++ b/usr/src/man/man5/fstypes.5
@@ -0,0 +1,34 @@
+'\" te
+.\" Copyright (c) 1993, Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH FSTYPES 5 "Dec 18, 1991"
+.SH NAME
+fstypes \- file that registers distributed file system packages
+.SH DESCRIPTION
+.sp
+.LP
+\fBfstypes\fR resides in directory \fB/etc/dfs\fR and lists distributed file
+system utilities packages installed on the system. For each installed
+distributed file system type, there is a line that begins with the file system
+type name (for example, ``nfs''), followed by white space and descriptive text.
+.sp
+.LP
+The file system indicated in the first line of the file is the default file
+system; when Distributed File System (DFS) Administration commands are entered
+without the option \fB\(miF\fR \fIfstypes\fR, the system takes the file
+system type from the first line of the \fBfstypes\fR file.
+.sp
+.LP
+The default file system can be changed by editing the \fBfstypes\fR file with
+any supported text editor.
+.SH SEE ALSO
+.sp
+.LP
+.BR dfmounts (8),
+.BR dfshares (8),
+.BR share (8),
+.BR shareall (8),
+.BR unshare (8)
diff --git a/usr/src/man/man5/ftp.5 b/usr/src/man/man5/ftp.5
new file mode 100644
index 0000000000..5a55b53aec
--- /dev/null
+++ b/usr/src/man/man5/ftp.5
@@ -0,0 +1,46 @@
+'\" te
+.\" Copyright (C) 2002, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH FTP 5 "Oct 22, 2002"
+.SH NAME
+ftp \- FTP client configuration file
+.SH SYNOPSIS
+.LP
+.nf
+\fB/etc/default/ftp\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+Use the \fBftp\fR file to configure the behavior of the FTP client. Lines that
+begin with a hash symbol ("# ") are treated as comment lines and are ignored.
+.SS "Behavior Directives"
+.sp
+.LP
+The \fBftp\fR file supports the following behavior directives:
+.sp
+.ne 2
+.na
+\fB\fBFTP_LS_SENDS_NLST=yes | no\fR\fR
+.ad
+.RS 30n
+The \fBls\fR command of the ftp client sends an \fBNLST\fR to the FTP Server by
+default. Several non-Solaris clients send \fBLIST\fR instead. In order to make
+the Solaris \fBftp\fR client send \fBLIST\fR when the \fBls\fR command is
+issued, set \fBFTP_LS_SENDS_NLST\fR to \fBno\fR. The value of
+\fBFTP_LS_SENDS_NLST\fR is \fByes\fR by default.
+.RE
+
+.sp
+.LP
+If the user sets a value for \fBFTP_LS_SENDS_NLST\fR in the user's environment,
+this value will override any \fBFTP_LS_SENDS_NLST\fR directive that is
+specified in \fB/etc/default/ftp\fR.
+.SH SEE ALSO
+.sp
+.LP
+.BR ftp (1),
+.BR attributes (7)
diff --git a/usr/src/man/man5/ftpusers.5 b/usr/src/man/man5/ftpusers.5
new file mode 100644
index 0000000000..3b1ad05c00
--- /dev/null
+++ b/usr/src/man/man5/ftpusers.5
@@ -0,0 +1,157 @@
+'\" te
+.\" Copyright (C) 2003, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH FTPUSERS 5 "May 1, 2003"
+.SH NAME
+ftpusers \- file listing users to be disallowed ftp login privileges
+.SH SYNOPSIS
+.LP
+.nf
+\fB/etc/ftpd/ftpusers\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBftpusers\fR file lists users for whom \fBftp\fR login privileges are
+disallowed. Each \fBftpuser\fR entry is a single line of the form:
+.sp
+.in +2
+.nf
+name
+.fi
+.in -2
+
+.sp
+.LP
+where \fBname\fR is the user's login name.
+.sp
+.LP
+The FTP Server, \fBin.ftpd\fR(8), reads the \fBftpusers\fR file. If the login
+name of the user matches one of the entries listed, it rejects the login
+attempt.
+.sp
+.LP
+The \fBftpusers\fR file has the following default configuration entries:
+.sp
+.in +2
+.nf
+root
+daemon
+bin
+sys
+adm
+lp
+uccp
+nuucp
+smmsp
+listen
+nobody
+noaccess
+nobody4
+.fi
+.in -2
+
+.sp
+.LP
+These entries match the default instantiated entries from \fBpasswd\fR(5). The
+list of default entries typically contains the superuser \fBroot\fR and other
+administrative and system application identities.
+.sp
+.LP
+The root entry is included in the \fBftpusers\fR file as a security measure
+since the default policy is to disallow remote logins for this identity. This
+policy is also set in the default value of the \fBCONSOLE\fR entry in the
+\fB/etc/default/login\fR file. See \fBlogin\fR(1). If you allow \fBroot\fR
+login privileges by deleting the root entry in \fBftpusers\fR, you should also
+modify the security policy in \fB/etc/default/login\fR to reflect the site
+security policy for remote login access by \fBroot\fR.
+.sp
+.LP
+Other default entries are administrative identities that are typically assumed
+by system applications but never used for local or remote login, for example
+\fBsys\fR and \fBnobody\fR. Since these entries do not have a valid password
+field instantiated in \fBshadow\fR(5), no login can be performed.
+.sp
+.LP
+If a site adds similar administrative or system application identities in
+\fBpasswd\fR(5) and \fBshadow\fR(5), for example, \fBmajordomo\fR, the site
+should consider including them in the \fBftpusers\fR file for a consistent
+security policy.
+.sp
+.LP
+Lines that begin with \fB#\fR are treated as comment lines and are ignored.
+.SH FILES
+.ne 2
+.na
+\fB\fB/etc/ftpd/ftpusers\fR\fR
+.ad
+.RS 22n
+A file that lists users for whom \fBftp\fR login privileges are disallowed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/ftpusers\fR\fR
+.ad
+.RS 22n
+See \fB/etc/ftpd/ftpusers\fR. This file is deprecated, although its use is
+still supported.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/default/login\fR\fR
+.ad
+.RS 22n
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/passwd\fR\fR
+.ad
+.RS 22n
+password file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/shadow\fR\fR
+.ad
+.RS 22n
+shadow password file
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability See below.
+.TE
+
+.sp
+.LP
+The interface stability for \fB/etc/ftpd/ftpusers\fR is Volatile. The interface
+stability for \fB/etc/ftpusers\fR is (Obsolete).
+.SH SEE ALSO
+.LP
+.BR login (1),
+.BR ftphosts (5),
+.BR passwd (5),
+.BR shadow (5),
+.BR attributes (7),
+.BR environ (7)
diff --git a/usr/src/man/man5/fx_dptbl.5 b/usr/src/man/man5/fx_dptbl.5
new file mode 100644
index 0000000000..4d1c2cc559
--- /dev/null
+++ b/usr/src/man/man5/fx_dptbl.5
@@ -0,0 +1,401 @@
+'\" te
+.\" Copyright (C) 2002, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH FX_DPTBL 5 "Oct 15, 2002"
+.SH NAME
+fx_dptbl \- fixed priority dispatcher parameter table
+.SH SYNOPSIS
+.nf
+\fBfx_dptbl\fR
+.fi
+
+.SH DESCRIPTION
+The process scheduler or dispatcher is the portion of the kernel that controls
+allocation of the CPU to processes. The scheduler supports the notion of
+scheduling classes, where each class defines a scheduling policy used to
+schedule processes within that class. Associated with each scheduling class is
+a set of priority queues on which ready-to-run processes are linked. These
+priority queues are mapped by the system configuration into a set of global
+scheduling priorities, which are available to processes within the class. The
+dispatcher always selects for execution the process with the highest global
+scheduling priority in the system. The priority queues associated with a given
+class are viewed by that class as a contiguous set of priority levels numbered
+from 0 (lowest priority) to \fIn\fR (highest priority\(ema
+configuration-dependent value). The set of global scheduling priorities that
+the queues for a given class are mapped into might not start at zero and might
+not be contiguous, depending on the configuration.
+.sp
+.LP
+Processes in the fixed priority class are scheduled according to the parameters
+in a fixed-priority dispatcher parameter table (\fBfx_dptbl\fR). The
+\fBfx_dptbl\fR table consists of an array (\fBconfig_fx_dptbl[]\fR) of
+parameter structures (\fBstruct fxdpent_t\fR), one for each of the \fIn\fR
+priority levels used by fixed priority processes in user mode. The structures
+are accessed by way of a pointer, (\fBfx_dptbl\fR), to the array. The
+properties of a given priority level \fIi\fR are specified by the \fIi\fRth
+parameter structure in this array (\fBfx_dptbl[\fIi\fR]\fR).
+.sp
+.LP
+A parameter structure consists of the following members. These are also
+described in the \fB/usr/include/sys/fx.h\fR header.
+.sp
+.ne 2
+.na
+\fB\fBfx_globpri\fR\fR
+.ad
+.RS 14n
+The global scheduling priority associated with this priority level. The mapping
+between fixed-priority priority levels and global scheduling priorities is
+determined at boot time by the system configuration. \fBfx_globpri\fR can not
+be changed with \fBdispadmin\fR(8).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfx_quantum\fR\fR
+.ad
+.RS 14n
+The length of the time quantum allocated to processes at this level in ticks
+(\fBhz\fR). The time quantum value is only a default or starting value for
+processes at a particular level, as the time quantum of a fixed priority
+process can be changed by the user with the \fBpriocntl\fR(1) command or the
+\fBpriocntl\fR(2) system call.
+.sp
+In the default high resolution clock mode (\fBhires_tick\fR set to \fB1\fR),
+the value of \fBhz\fR is set to \fB1000\fR. If this value is overridden to
+\fB0\fR then \fBhz\fR will instead be \fB100\fR; the number of ticks per
+quantum must then be decreased to maintain the same length of quantum in
+absolute time.
+.sp
+An administrator can affect the behavior of the fixed priority portion of the
+scheduler by reconfiguring the \fBfx_dptbl\fR. There are two methods available
+for doing this: reconfigure with a loadable module at boot-time or by using
+\fBdispadmin\fR(8) at run-time.
+.RE
+
+.SS "fx_dptbl Loadable Module"
+The \fBfx_dptbl\fR can be reconfigured with a loadable module that contains a
+new fixed priority dispatch table. The module containing the dispatch table is
+separate from the \fBFX\fR loadable module, which contains the rest of the
+fixed priority software. This is the only method that can be used to change the
+number of fixed priority priority levels or the set of global scheduling
+priorities used by the fixed priority class. The relevant procedure and source
+code is described in Replacing the fx_dptbl Loadable Module below.
+.SS "dispadmin Configuration File"
+The \fBfx_quantum\fR values in the \fBfx_dptbl\fR can be examined and modified
+on a running system using the \fBdispadmin\fR(8) command. Invoking
+\fBdispadmin\fR for the fixed-priority class allows the administrator to
+retrieve the current \fBfx_dptbl\fR configuration from the kernel's in-core
+table or overwrite the in-core table with values from a configuration file. The
+configuration file used for input to \fBdispadmin\fR must conform to the
+specific format described as follows:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Blank lines are ignored and any part of a line to the right of a # symbol is
+treated as a comment.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The first non-blank, non-comment line must indicate the resolution to be used
+for interpreting the time quantum values. The resolution is specified as:
+.sp
+.in +2
+.nf
+RES=\fIres\fR
+.fi
+.in -2
+.sp
+
+where \fIres\fR is a positive integer between 1 and 1,000,000,000 inclusive and
+the resolution used is the reciprocal of \fIres\fR in seconds (for example,
+\fBRES=1000\fR specifies millisecond resolution). Although you can specify very
+fine (nanosecond) resolution, the time quantum lengths are rounded up to the
+next integral multiple of the system clock's resolution.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The remaining lines in the file are used to specify the \fBfx_quantum\fR values
+for each of the fixed-priority priority levels. The first line specifies the
+quantum for fixed-priority level 0, the second line specifies the quantum for
+fixed-priority level 1, and so forth. There must be exactly one line for each
+configured fixed priority priority level. Each \fBfx_quantum\fR entry must be a
+positive integer specifying the desired time quantum in the resolution given by
+\fIres\fR.
+.RE
+.sp
+.LP
+See Examples for an example of an excerpt of a \fBdispadmin\fR configuration
+file.
+.SS "Replacing the fx_dptbl Loadable Module"
+To change the size of the fixed priority dispatch table, you must build the
+loadable module that contains the dispatch table information. Save the existing
+module before using the following procedure.
+.RS +4
+.TP
+1.
+Place the dispatch table code shown below in a file called \fBfx_dptbl.c\fR.
+See EXAMPLES, below, for an example of this file.
+.RE
+.RS +4
+.TP
+2.
+Compile the code using the given compilation and link lines supplied:
+.sp
+.in +2
+.nf
+cc -c -0 -D_KERNEL fx_dptbl.c
+ld -r -o FX_DPTBL fx_dptbl.o
+.fi
+.in -2
+.sp
+
+.RE
+.RS +4
+.TP
+3.
+Copy the current dispatch table in \fB/usr/kernel/sched\fR to
+\fBFX_DPTBL.bak\fR.
+.RE
+.RS +4
+.TP
+4.
+Replace the current \fBFX_DPTBL\fR in \fB/usr/kernel/sched\fR.
+.RE
+.RS +4
+.TP
+5.
+Make changes in the \fB/etc/system\fR file to reflect the changes to the
+sizes of the tables. See \fBsystem\fR(5). The variables affected is
+\fBfx_maxupri\fR. The syntax for setting this is as follows:
+.sp
+.in +2
+.nf
+set FX:fx_maxupri=(\fIvalue for max fixed-priority user priority\fR)
+.fi
+.in -2
+.sp
+
+.RE
+.RS +4
+.TP
+6.
+Reboot the system to use the new dispatch table.
+.RE
+.sp
+.LP
+Exercise great care in using the preceding method to replace the dispatch
+table. A mistake can result in panics, thus making the system unusable.
+.SH EXAMPLES
+\fBExample 1 \fRConfiguration File Excerpt
+.sp
+.LP
+The following excerpt from a \fBdispadmin\fR configuration file illustrates the
+correct format. Note that, for each line specifying a set of parameters, there
+is a comment indicating the corresponding priority level. These level numbers
+indicate priority within the fixed priority class; the mapping between these
+fixed-priority priorities and the corresponding global scheduling priorities is
+determined by the configuration specified in the \fBFX_DPTBL\fR loadable
+module. The level numbers are strictly for the convenience of the administrator
+reading the file and, as with any comment, they are ignored by \fBdispadmin\fR.
+The \fBdispadmin\fR command assumes that the lines in the file are ordered by
+consecutive, increasing priority level (from 0 to the maximum configured
+fixed-priority priority). For the sake of someone reading the file, the level
+numbers in the comments should agree with this ordering. If for some reason
+they do not, \fBdispadmin\fR is unaffected.
+
+.sp
+.in +2
+.nf
+# Fixed Priority Dispatcher Configuration File RES=1000
+
+RES=1000
+# TIME QUANTUM PRIORITY
+# (fx_quantum) LEVEL
+200 # 0
+200 # 1
+200 # 2
+200 # 3
+200 # 4
+200 # 5
+200 # 6
+200 # 7
+ . . .
+ . . .
+ . . .
+20 # 58
+20 # 59
+20 # 60
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fR\fBfx_dptbl.c\fR File Used for Building the New \fBfx_dptbl\fR
+.sp
+.LP
+The following is an example of a \fBfx_dptbl.c\fR file used for building the
+new \fBfx_dptbl\fR.
+
+.sp
+.in +2
+.nf
+/* BEGIN fx_dptbl.c */
+
+#include <sys/proc.h>
+#include <sys/priocntl.h>
+#include <sys/class.h>
+#include <sys/disp.h>
+#include <sys/fx.h>
+#include <sys/fxpriocntl.h>
+
+
+/*
+ * This is the loadable module wrapper.
+ */
+
+#include <sys/modctl.h>
+
+extern struct mod_ops mod_miscops;
+
+/*
+ * Module linkage information for the kernel.
+ */
+
+static struct modlmisc modlmisc = {
+ &mod_miscops, "Fixed priority dispatch table"
+};
+
+static struct modlinkage modlinkage = {
+ MODREV_1, &modlmisc, 0
+};
+
+_init()
+{
+ return (mod_install(&modlinkage));
+}
+
+_info(modinfop)
+ struct modinfo *modinfop;
+{
+ return (mod_info(&modlinkage, modinfop));
+}
+
+#define FXGPUP0 0 /* Global priority for FX user priority 0 */
+fxdpent_t config_fx_dptbl[] = {
+
+/* glbpri qntm */
+
+ FXGPUP0+0, 20,
+ FXGPUP0+1, 20,
+ FXGPUP0+2, 20,
+ FXGPUP0+3, 20,
+ FXGPUP0+4, 20,
+ FXGPUP0+5, 20,
+ FXGPUP0+6, 20,
+ FXGPUP0+7, 20,
+ FXGPUP0+8, 20,
+ FXGPUP0+9, 20,
+ FXGPUP0+10, 16,
+ FXGPUP0+11, 16,
+ FXGPUP0+12, 16,
+ FXGPUP0+13, 16,
+ FXGPUP0+14, 16,
+ FXGPUP0+15, 16,
+ FXGPUP0+16, 16,
+ FXGPUP0+17, 16,
+ FXGPUP0+18, 16,
+ FXGPUP0+19, 16,
+ FXGPUP0+20, 12,
+ FXGPUP0+21, 12,
+ FXGPUP0+22, 12,
+ FXGPUP0+23, 12,
+ FXGPUP0+24, 12,
+ FXGPUP0+25, 12,
+ FXGPUP0+26, 12,
+ FXGPUP0+27, 12,
+ FXGPUP0+28, 12,
+ FXGPUP0+29, 12,
+ FXGPUP0+30, 8,
+ FXGPUP0+31, 8,
+ FXGPUP0+32, 8,
+ FXGPUP0+33, 8,
+ FXGPUP0+34, 8,
+ FXGPUP0+35, 8,
+ FXGPUP0+36, 8,
+ FXGPUP0+37, 8,
+ FXGPUP0+38, 8,
+ FXGPUP0+39, 8,
+ FXGPUP0+40, 4,
+ FXGPUP0+41, 4,
+ FXGPUP0+42, 4,
+ FXGPUP0+43, 4,
+ FXGPUP0+44, 4,
+ FXGPUP0+45, 4,
+ FXGPUP0+46, 4,
+ FXGPUP0+47, 4,
+ FXGPUP0+48, 4,
+ FXGPUP0+49, 4,
+ FXGPUP0+50, 4,
+ FXGPUP0+51, 4,
+ FXGPUP0+52, 4,
+ FXGPUP0+53, 4,
+ FXGPUP0+54, 4,
+ FXGPUP0+55, 4,
+ FXGPUP0+56, 4,
+ FXGPUP0+57, 4,
+ FXGPUP0+58, 4,
+ FXGPUP0+59, 2,
+ FXGPUP0+60 2,
+};
+
+
+
+pri_t config_fx_maxumdpri =
+ sizeof (config_fx_dptbl) / sizeof (fxdpent_t) - 1;
+
+/*
+ * Return the address of config_fx_dptbl
+ */
+fxdpent_t *
+fx_getdptbl()
+{
+ return (config_fx_dptbl);
+}
+
+/*
+ * Return the address of fx_maxumdpri
+ */
+pri_t
+fx_getmaxumdpri()
+{
+/*
+ * the config_fx_dptbl table.
+ */
+ return (config_fx_maxumdpri);
+}
+.fi
+.in -2
+.sp
+
+.SH SEE ALSO
+.BR priocntl (1),
+.BR priocntl (2),
+.BR system (5),
+.BR dispadmin (8)
+.sp
+.LP
+\fISystem Administration Guide, Volume 1, System Interface Guide\fR
+.SH NOTES
+In order to improve performance under heavy system load, both the \fBnfsd\fR
+daemon and the \fBlockd\fR daemon utilize the maximum priority in the \fBFX\fR
+class. Unusual \fBfx_dptbl\fR configurations may have significant negative
+impact on the performance of the \fBnfsd\fR and \fBlockd\fR daemons.
diff --git a/usr/src/man/man5/gateways.5 b/usr/src/man/man5/gateways.5
new file mode 100644
index 0000000000..c5564eadeb
--- /dev/null
+++ b/usr/src/man/man5/gateways.5
@@ -0,0 +1,501 @@
+'\" te
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
+.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH GATEWAYS 5 "May 20, 2009"
+.SH NAME
+gateways \- configuration file for /usr/sbin/in.routed IPv4 network routing
+daemon
+.SH SYNOPSIS
+.LP
+.nf
+\fB/etc/gateways\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fB/etc/gateways\fR file is used by the routing daemon,
+\fBin.routed\fR(8). When the daemon starts, it reads \fB/etc/gateways\fR to
+find such distant gateways that cannot be located using only information from a
+routing socket, to discover if some of the local gateways are passive, and to
+obtain other parameters.
+.sp
+.LP
+The \fB/etc/gateways\fR file consists of a series of lines, each in one of the
+two formats shown below or consisting of parameters described later. Blank
+lines and lines starting with "\fB#\fR" are treated as comments.
+.sp
+.LP
+One format specifies networks:
+.sp
+.in +2
+.nf
+net Nname[/mask] gateway Gname metric value <passive | active | external>
+.fi
+.in -2
+
+.sp
+.LP
+The other format specifies hosts:
+.sp
+.in +2
+.nf
+host \fIHname\fR gateway \fIGname\fR metric \fIvalue\fR <passive | active | external>
+.fi
+.in -2
+
+.sp
+.LP
+Host \fIhname\fR is equivalent to \fBnet \fInname\fR/32\fR.
+.sp
+.LP
+The parameters in the lines shown above are described as follows:
+.sp
+.ne 2
+.na
+\fB\fINname\fR or \fIHname\fR\fR
+.ad
+.sp .6
+.RS 4n
+Name of the destination network or host. It can be a symbolic network name or
+an Internet address specified in \fBdot\fR notation (see \fBinet\fR(3SOCKET)).
+If it is a name, then it must either be defined in \fB/etc/networks\fR or
+\fB/etc/hosts\fR, or a naming service must have been started before
+\fBin.routed\fR(8).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIMask\fR\fR
+.ad
+.sp .6
+.RS 4n
+An optional number between 1 and 32 indicating the netmask associated with
+Nname.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIGname\fR\fR
+.ad
+.sp .6
+.RS 4n
+Name or address of the gateway to which RIP responses should be forwarded.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIValue\fR\fR
+.ad
+.sp .6
+.RS 4n
+The hop count to the destination host or network.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpassive\fR | \fBactive\fR | \fBexternal\fR\fR
+.ad
+.sp .6
+.RS 4n
+One of these keywords must be present to indicate whether the gateway should be
+treated as passive or active, or whether the gateway is external to the scope
+of the RIP protocol. A passive gateway is not expected to exchange routing
+information, while gateways marked active should be willing to exchange RIP
+packets. See \fBin.routed\fR(8) for further details.
+.RE
+
+.sp
+.LP
+After turning on debugging in \fBin.routed\fR with the \fB-t\fR option, you can
+see that lines that follow the format described above create pseudo-interfaces.
+To set parameters for remote or external interfaces, use a line starting with
+\fBif=alias(\fIHname\fR)\fR, \fBif=remote(\fIHname\fR)\fR, and so forth.
+.sp
+.LP
+For backward compatibility with the previous Solaris \fBin.routed\fR
+implementation, three special keyword formats are accepted. If present, these
+forms must each be on a separate line, and must not be combined on the same
+line with any of the keywords listed elsewhere in this document. These three
+forms are:
+.sp
+.ne 2
+.na
+\fB\fBnorip \fIifname\fR\fR\fR
+.ad
+.RS 19n
+Disable all RIP processing on the specified interface.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnoripin \fIifname\fR\fR\fR
+.ad
+.RS 19n
+Disable the processing of received RIP responses on the specified interface.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnoripout \fIifname\fR\fR\fR
+.ad
+.RS 19n
+Disable RIP output on the specified interface.
+.RE
+
+.sp
+.LP
+Lines that start with neither \fBnet\fR nor \fBhost\fR must consist of one or
+more of the following parameter settings, separated by commas or blanks:
+.sp
+.ne 2
+.na
+\fB\fB\fR\fBif=\fIifname\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Indicates that the other parameters on the line apply only to the interface
+name \fIifname\fR. If this parameter is not specified, then other parameters on
+the line apply to all interfaces.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsubnet=\fInname\fR[/\fImask\fR][,\fImetric\fR]\fR\fR
+.ad
+.sp .6
+.RS 4n
+Advertises a route to network nname with mask mask and the supplied metric
+(default 1). This is useful for filling \fBholes\fR in CIDR allocations. This
+parameter must appear by itself on a line. The network number must specify a
+full, 32-bit value, as in \fB192.0.2.0\fR instead of \fB192.0.2\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBripv1_mask=\fInname\fR/\fImask1\fR,\fImask2\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies that the netmask of the network of which \fInname\fR/\fImask1\fR is a
+subnet should be \fImask2\fR. For example, \fBripv1_mask=192.0.2.16/28,27\fR
+marks \fB192.0.2.16/28\fR as a subnet of \fB192.0.2.0/27\fR instead of
+\fB192.0.2.0/24\fR. It is better to turn on RIPv2 instead of using this
+facility. See the description of \fBripv2_out\fR, below.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpasswd=\fIXXX\fR[|\fIKeyID\fR[\fIstart\fR|\fIstop\fR]]\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies a RIPv2 cleartext password that will be included on all RIPv2
+responses sent, and checked on all RIPv2 responses received. Any blanks, tab
+characters, commas, or "\fB#\fR", "\fB|\fR", or NULL characters in the password
+must be escaped with a backslash (\fB\e\fR). The common escape sequences
+\fB\en\fR, \fB\er\fR, \fB\et\fR, \fB\eb\fR, and \fB\e\fIxxx\fR\fR have their
+usual meanings. The \fIKeyID\fR must be unique but is ignored for cleartext
+passwords. If present, \fIstart\fR and \fIstop\fR are timestamps in the form
+year/month/day@hour:minute. They specify when the password is valid. The valid
+password with the longest future is used on output packets, unless all
+passwords have expired, in which case the password that expired most recently
+is used. If no passwords are valid yet, no password is output. Incoming packets
+can carry any password that is valid, will be valid within 24 hours, or that
+was valid within 24 hours. To protect password secrecy, the passwd settings are
+valid only in the \fB/etc/gateways\fR file and only when that file is readable
+only by UID 0.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmd5_passwd=\fR\fIXXX\fR|\fIKeyID\fR[\fIstart\fR|\fIstop\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Specifies a RIPv2 MD5 password. Except that a KeyID is required, this keyword
+is similar to \fBpasswd\fR (described above).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBno_ag\fR\fR
+.ad
+.sp .6
+.RS 4n
+Turns off aggregation of subnets in RIPv1 and RIPv2 responses.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBno_host\fR\fR
+.ad
+.sp .6
+.RS 4n
+Turns off acceptance of host routes.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBno_super_ag\fR\fR
+.ad
+.sp .6
+.RS 4n
+Turns off aggregation of networks into supernets in RIPv2 responses.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpassive\fR\fR
+.ad
+.sp .6
+.RS 4n
+Marks the interface not to be advertised in updates sent over other interfaces,
+and turns off all RIP and router discovery through the interface.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBno_rip\fR\fR
+.ad
+.sp .6
+.RS 4n
+Disables all RIP processing on the specified interface. If no interfaces are
+allowed to process RIP packets, \fBin.routed\fR acts purely as a router
+discovery daemon.
+.sp
+Note that turning off RIP without explicitly turning on router discovery
+advertisements with \fBrdisc_adv\fR or \fB-s\fR causes \fBin.routed\fR to act
+as a client router discovery daemon, which does not advertise.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBno_rip_mcast\fR\fR
+.ad
+.sp .6
+.RS 4n
+Causes RIPv2 packets to be broadcast instead of multicast.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBno_ripv1_in\fR\fR
+.ad
+.sp .6
+.RS 4n
+Causes RIPv1 received responses to be ignored.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBno_ripv2_in\fR\fR
+.ad
+.sp .6
+.RS 4n
+Causes RIPv2 received responses to be ignored.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBripv2_out\fR\fR
+.ad
+.sp .6
+.RS 4n
+Turns on RIPv2 output and causes RIPv2 advertisements to be multicast when
+possible.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBripv2\fR\fR
+.ad
+.sp .6
+.RS 4n
+Equivalent to \fBno_ripv1_in\fR and \fBripv2_out\fR. This enables RIPv2 and
+disables RIPv1.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBno_rdisc\fR\fR
+.ad
+.sp .6
+.RS 4n
+Disables the Internet Router Discovery Protocol.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBno_solicit\fR\fR
+.ad
+.sp .6
+.RS 4n
+Disables the transmission of Router Discovery Solicitations.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsend_solicit\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies that Router Discovery solicitations should be sent, even on
+point-to-point links, which, by default, only listen to Router Discovery
+messages.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBno_rdisc_adv\fR\fR
+.ad
+.sp .6
+.RS 4n
+Disables the transmission of Router Discovery Advertisements.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrdisc_adv\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies that Router Discovery Advertisements should be sent, even on
+point-to-point links, which by default only listen to Router Discovery
+messages.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBbcast_rdisc\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies that Router Discovery packets should be broadcast instead of
+multicast.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrdisc_pref=\fIN\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets the preference in Router Discovery Advertisements to the optionally signed
+integer \fIN\fR. The default preference is 0. Default routes with higher or
+less negative preferences are preferred by clients.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrdisc_interval=\fIN\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets the nominal interval with which Router Discovery Advertisements are
+transmitted to \fIN\fR seconds and their lifetime to 3*\fIN\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfake_default=\fImetric\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Has an identical effect to \fB-F\fR \fBnet\fR[/\fImask\fR][=\fImetric\fR] with
+the network number and netmask coming from the specified interface.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpm_rdisc\fR\fR
+.ad
+.sp .6
+.RS 4n
+Similar to \fBfake_default\fR. To prevent RIPv1 listeners from receiving RIPv2
+routes when those routes are multicast, this feature causes a RIPv1 default
+route to be broadcast to RIPv1 listeners. Unless modified with
+\fBfake_default\fR, the default route is broadcast with a metric of 14. That
+serves as a \fBpoor man's router discovery\fR protocol.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBtrust_gateway=\fIrtr_name\fR[|\fInet1\fR/\fImask1\fR|\fInet2\fR/\fImask2\fR|...]\fR\fR
+.ad
+.sp .6
+.RS 4n
+Causes RIP packets from that router and other routers named in other
+\fBtrust_gateway\fR keywords to be accepted, and packets from other routers to
+be ignored. If networks are specified, then routes to other networks will be
+ignored from that router.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBredirect_ok\fR\fR
+.ad
+.sp .6
+.RS 4n
+Causes RIP to allow ICMP Redirect messages when the system is acting as a
+router and forwarding packets. Otherwise, ICMP Redirect messages are
+overridden.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrip_neighbor=\fIx.x.x.x\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+By default, RIPv1 advertisements over point-to-point links are sent to the
+peer's address (255.255.255.255, if none is available), and RIPv2
+advertisements are sent to either the RIP multicast address or the peer's
+address if \fBno_rip_mcast\fR is set. This option overrides those defaults and
+configures a specific address to use on the indicated interface. This can be
+used to set a broadcast type advertisement on a point-to-point link.
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+\fBin.routed\fR(8), \fBroute\fR(8), \fBrtquery\fR(8), \fBinet\fR(3SOCKET),
+.sp
+.LP
+\fIInternet Transport Protocols, XSIS 028112, Xerox System Integration
+Standard\fR
diff --git a/usr/src/man/man5/gptzfsboot.5 b/usr/src/man/man5/gptzfsboot.5
deleted file mode 100644
index 7127b3d961..0000000000
--- a/usr/src/man/man5/gptzfsboot.5
+++ /dev/null
@@ -1,191 +0,0 @@
-.\" Copyright (c) 2014 Andriy Gapon <avg@FreeBSD.org>
-.\" All rights reserved.
-.\"
-.\" Redistribution and use in source and binary forms, with or without
-.\" modification, are permitted provided that the following conditions
-.\" are met:
-.\" 1. Redistributions of source code must retain the above copyright
-.\" notice, this list of conditions and the following disclaimer.
-.\" 2. Redistributions in binary form must reproduce the above copyright
-.\" notice, this list of conditions and the following disclaimer in the
-.\" documentation and/or other materials provided with the distribution.
-.\"
-.\" THIS SOFTWARE IS PROVIDED BY THE AUTHORS AND CONTRIBUTORS ``AS IS'' AND
-.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHORS OR CONTRIBUTORS BE LIABLE
-.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
-.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
-.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-.\" SUCH DAMAGE.
-.\"
-.Dd July 17, 2019
-.Dt GPTZFSBOOT 5
-.Os
-.Sh NAME
-.Nm gptzfsboot
-.Nd disk bootcode for BIOS-based computers
-.Sh DESCRIPTION
-.Nm
-is used on BIOS-based computers to boot from a filesystem on disk device.
-Depending on disk partitioning and boot file system, the
-.Nm
-is installed in a
-.Cm zfs pool boot area
-or
-.Cm boot
-partition of a disk with
-.Xr installboot 1M .
-.Ss IMPLEMENTATION NOTES
-The GPT standard allows a variable number of partitions, but
-.Nm
-only boots from tables with 128 partitions or less.
-.Ss BOOTING
-.Nm
-tries to find all ZFS pools that are composed of BIOS-visible
-hard disks or partitions on them.
-.Nm
-looks for ZFS device labels on all visible disks and in discovered
-supported partitions for all supported partition scheme types.
-Disks are probed in BIOS defined order.
-After a disk is probed and
-.Nm
-determines that the whole disk is not a ZFS pool member, the
-individual partitions are probed in their partition table order.
-Currently GPT and MBR partition schemes are supported.
-.Pp
-The default boot partition is recorded into
-.Nm
-binary by
-.Xr installboot 1M
-and the default boot file system is determined at run time.
-.Nm
-does support booting from the
-.Cm ZFS ,
-.Cm UFS
-and
-.Cm PCFS
-file systems.
-.Pp
-The filesystem specified by the
-.Cm bootfs
-property of the ZFS pool is used as a default boot filesystem.
-If the
-.Cm bootfs
-property is not set, then the root filesystem of the pool is used as
-the default.
-.Xr loader 5
-is loaded from the boot filesystem.
-If
-.Pa /boot/config
-is present in the boot filesystem, boot options are read from it.
-.Pp
-The ZFS GUIDs of the boot pool and boot file system are made available to
-.Xr loader 5 .
-.Ss USAGE
-Normally
-.Nm
-will boot in fully automatic mode.
-However, it is possible to interrupt the automatic boot process and
-interact with
-.Nm
-through a prompt.
-.Pp
-The filesystem specification and the path to
-.Xr loader 5
-is specified as
-.Pp
-.Sm off
-.Oo zfs:pool/filesystem: Oc Oo /path/to/loader Oc
-.Sm on
-.Pp
-Both the filesystem and the path can be specified.
-If only a path is specified, then the default filesystem is used.
-If only a pool and filesystem are specified, then
-.Pa /boot/loader
-is used as a path.
-.Pp
-Additionally, the
-.Nm
-does support two commands to get information about the system.
-.Ic ?directoryname
-can be used to list the content of named directory and
-.Ic status
-command can be used to query information about discovered devices.
-The output format for ZFS pools is similar to that of
-.Cm zpool status
-.Pq see Xr zpool 1M .
-.Pp
-The configured or automatically determined ZFS boot filesystem is
-stored in the
-.Xr loader 5
-.Cm loaddev
-variable, and also set as the initial value of the
-.Cm currdev
-variable.
-.Sh OPTIONS
-The following options are supported by
-.Nm
-and
-.Xr loader 5 :
-.Bl -tag -width indent
-.It Fl D
-Dual console.
-Use both text and serial console with
-.Nm
-and
-.Xr loader 5 .
-.It Fl P
-Probe for keyboard.
-If there is no keyboard, switch on the dual console and serial console.
-.It Fl S Ns Ar speed
-Set serial port speed.
-.It Fl h
-Set serial console.
-.It Fl q
-Keep the
-.Nm
-console quiet.
-.It Fl t
-Keep the VGA text mode for
-.Xr loader 5 .
-.El
-.Pp
-The following options will be passed to the kernel:
-.Bl -tag -width indent
-.It Fl s
-Single user
-.It Fl v
-Verbose boot
-.El
-.Sh FILES
-.Bl -tag -width /boot/gptzfsboot -compact
-.It Pa /boot/config
-parameters for the boot block
-.Pq optional
-.It Pa /boot/gptzfsboot
-boot code binary
-.El
-.Sh EXAMPLES
-.Nm
-is installed in combination with a
-.Dq protective MBR
-.Po
-see
-.Xr installboot 1M
-.Pc .
-To install
-.Nm
-on the
-.Pa c0t0d0s0
-drive:
-.Bd -literal -offset indent
-installboot /boot/pmbr /boot/gptzfsboot /dev/rdsk/c0t0d0s0
-.Ed
-.Sh SEE ALSO
-.Xr installboot 1M ,
-.Xr zpool 1M ,
-.Xr loader 5
diff --git a/usr/src/man/man5/group.5 b/usr/src/man/man5/group.5
new file mode 100644
index 0000000000..b23c6648d4
--- /dev/null
+++ b/usr/src/man/man5/group.5
@@ -0,0 +1,168 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH GROUP 5 "Feb 25, 2017"
+.SH NAME
+group \- group file
+.SH DESCRIPTION
+.LP
+The \fBgroup\fR file is a local source of group information. The \fBgroup\fR
+file can be used in conjunction with other group sources, including the
+\fBNIS\fR maps \fBgroup.byname\fR and \fBgroup.bygid\fR, or group information
+stored on an LDAP server. Programs use the
+\fBgetgrnam\fR(3C) routines to access this information.
+.sp
+.LP
+The \fBgroup\fR file contains a one-line entry for each group recognized by the
+system, of the form:
+.sp
+.LP
+\fIgroupname\fR:\fIpassword\fR: \fIgid\fR:\fIuser-list\fR
+.sp
+.LP
+where
+.sp
+.ne 2
+.na
+\fB\fIgroupname\fR\fR
+.ad
+.RS 13n
+The name of the group. A string consisting of lower case alphabetic characters
+and numeric characters. Neither a colon (\fB:\fR) nor a NEWLINE can be part of
+a \fIgroupname\fR. The string must be less than \fBMAXGLEN-1\fR, usually
+\fB8\fR, characters long.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIgid\fR\fR
+.ad
+.RS 13n
+The group's unique numerical ID (GID) within the system.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIuser-list\fR\fR
+.ad
+.RS 13n
+A comma-separated list of users allowed in the group.
+.RE
+
+.sp
+.LP
+The maximum value of the \fIgid\fR field is 2147483647. To maximize
+interoperability and compatibility, administrators are recommended to assign
+groups using the range of GIDs below 60000 where possible.
+.sp
+.LP
+If the password field is empty, no password is demanded. During user
+identification and authentication, the supplementary group access list is
+initialized sequentially from information in this file. If a user is in more
+groups than the system is configured for, \fB{NGROUPS_MAX}\fR, a warning will
+be given and subsequent group specifications will be ignored.
+.sp
+.LP
+Malformed entries cause routines that read this file to halt, in which case
+group assignments specified further along are never made. To prevent this from
+happening, use \fBgrpck\fR(1B) to check the \fB/etc/group\fR database from time
+to time.
+.sp
+.LP
+If the number of characters in an entry exceeds 2047, group maintenance
+commands, such as \fBgroupdel\fR(8) and \fBgroupmod\fR(8), fail.
+.sp
+.LP
+Previous releases used a group entry beginning with a `\fB+\fR' (plus sign) or
+`\fB\(mi\fR\&' (minus sign) to selectively incorporate entries from a naming
+service source (for example, an NIS map or data from an LDAP server) for group.
+If still required, this is supported by specifying \fBgroup:compat\fR in
+\fBnsswitch.conf\fR(5). The \fBcompat\fR source may not be supported in future
+releases. Possible sources are \fBfiles\fR followed by \fBldap\fR.
+This has the effect of incorporating information from an LDAP
+server after the \fBgroup\fR file.
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRExample \fBgroup\fR File.
+.sp
+.LP
+The following is an example of a \fBgroup\fR file:
+
+.sp
+.in +2
+.nf
+\fBroot::0:root
+stooges:q.mJzTnu8icF.:10:larry,moe,curly\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+and the sample group entry from \fBnsswitch.conf\fR:
+
+.sp
+.in +2
+.nf
+\fBgroup: files ldap\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+With these entries, the group \fBstooges\fR will have members \fBlarry\fR,
+\fBmoe\fR, and \fBcurly\fR, and all groups listed on the LDAP server are
+effectively incorporated after the entry for \fBstooges\fR.
+
+.sp
+.LP
+If the \fBgroup\fR file was:
+
+.sp
+.in +2
+.nf
+root::0:root
+stooges:q.mJzTnu8icF.:10:larry,moe,curly
++:
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+and the group entry from \fBnsswitch.conf\fR:
+
+.sp
+.in +2
+.nf
+\fBgroup: compat\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+all the groups listed in the \fBNIS\fR \fBgroup.bygid\fR and \fBgroup.byname\fR
+maps would be effectively incorporated after the entry for stooges.
+
+.SH SEE ALSO
+.LP
+.BR groups (1),
+.BR newgrp (1),
+.BR grpck (1B),
+.BR getgrnam (3C),
+.BR initgroups (3C),
+.BR unistd.h (3HEAD),
+.BR nsswitch.conf (5),
+.BR groupadd (8),
+.BR groupdel (8),
+.BR groupmod (8)
+.sp
+.LP
+\fISystem Administration Guide: Basic Administration\fR
diff --git a/usr/src/man/man5/grub.5 b/usr/src/man/man5/grub.5
deleted file mode 100644
index 7caa7e4566..0000000000
--- a/usr/src/man/man5/grub.5
+++ /dev/null
@@ -1,85 +0,0 @@
-'\" te
-.\" Copyright (c) 2005 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH GRUB 5 "Apr 21, 2005"
-.SH NAME
-grub \- GRand Unified Bootloader software on Solaris
-.SH DESCRIPTION
-.sp
-.LP
-The current release of the Solaris operating system is shipped with the GRUB
-(GRand Unified Bootloader) software. GRUB is developed and supported by the
-Free Software Foundation.
-.sp
-.LP
-The overview for the GRUB Manual, accessible at \fBwww.gnu.org\fR, describes
-GRUB:
-.sp
-.LP
-Briefly, a boot loader is the first software program that runs when a computer
-starts. It is responsible for loading and transferring control to an operating
-system kernel software (such as Linux or GNU Mach). The kernel, in turn,
-initializes the rest of the operating system (for example, a GNU [Ed. note: or
-Solaris] system).
-.sp
-.LP
-GNU GRUB is a very powerful boot loader that can load a wide variety of free,
-as well as proprietary, operating systems, by means of chain-loading. GRUB is
-designed to address the complexity of booting a personal computer; both the
-program and this manual are tightly bound to that computer platform, although
-porting to other platforms may be addressed in the future. [Ed. note: Sun has
-ported GRUB to the Solaris operating system.]
-.sp
-.LP
-One of the important features in GRUB is flexibility; GRUB understands
-filesystems and kernel executable formats, so you can load an arbitrary
-operating system the way you like, without recording the physical position of
-your kernel on the disk. Thus you can load the kernel just by specifying its
-file name and the drive and partition where the kernel resides.
-.sp
-.LP
-Among Solaris machines, GRUB is supported on x86 platforms. The GRUB software
-that is shipped with Solaris adds two utilities not present in the open-source
-distribution:
-.sp
-.ne 2
-.na
-\fB\fBbootadm\fR(1M)\fR
-.ad
-.RS 19n
-Enables you to manage the boot archive and make changes to the GRUB menu.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBinstallgrub\fR(1M)\fR
-.ad
-.RS 19n
-Loads the boot program from disk.
-.RE
-
-.sp
-.LP
-Both of these utilities are described in Solaris man pages.
-.sp
-.LP
-Beyond these two Solaris-specific utilities, the GRUB software is described in
-the GRUB manual, a PDF version of which is available from the Sun web site.
-Available in the same location is the \fBgrub(8)\fR open-source man page. This
-man page describes the GRUB shell.
-.SH SEE ALSO
-.sp
-.LP
-\fBboot\fR(1M), \fBbootadm\fR(1M), \fBinstallgrub\fR(1M)
-.sp
-.LP
-\fISolaris Express Installation Guide: Basic Installations\fR
-.sp
-.LP
-\fISystem Administration Guide: Basic Administration\fR
-.sp
-.LP
-http://www.gnu.org/software/grub
diff --git a/usr/src/man/man5/gss_auth_rules.5 b/usr/src/man/man5/gss_auth_rules.5
deleted file mode 100644
index d427762889..0000000000
--- a/usr/src/man/man5/gss_auth_rules.5
+++ /dev/null
@@ -1,76 +0,0 @@
-'\" te
-.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH GSS_AUTH_RULES 5 "Apr 13, 2004"
-.SH NAME
-gss_auth_rules \- overview of GSS authorization
-.SH DESCRIPTION
-.sp
-.LP
-The establishment of the veracity of a user's credentials requires both
-authentication (Is this an authentic user?) and authorization (Is this
-authentic user, in fact, authorized?).
-.sp
-.LP
-When a user makes use of Generic Security Services (GSS) versions of the
-\fBftp\fR or \fBssh\fR clients to connect to a server, the user is not
-necessarily authorized, even if his claimed GSS identity is authenticated,
-Authentication merely establishes that the user is who he says he is to the GSS
-mechanism's authentication system. Authorization is then required: it
-determines whether the GSS identity is permitted to access the specified
-Solaris user account.
-.sp
-.LP
-The GSS authorization rules are as follows:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-If the mechanism of the connection has a set of authorization rules, then use
-those rules. For example, if the mechanism is Kerberos, then use the
-\fBkrb5_auth_rules\fR(5), so that authorization is consistent between raw
-Kerberos applications and GSS/Kerberos applications.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-If the mechanism of the connection does not have a set of authorization rules,
-then authorization is successful if the remote user's \fBgssname\fR matches the
-local user's \fBgssname\fR exactly, as compared by
-\fBgss_compare_name\fR(3GSS).
-.RE
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/etc/passwd\fR\fR
-.ad
-.RS 15n
-System account file. This information may also be in a directory service. See
-\fBpasswd\fR(4).
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for a description of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBftp\fR(1), \fBssh\fR(1), \fBgsscred\fR(1M), \fBgss_compare_name\fR(3GSS),
-\fBpasswd\fR(4), \fBattributes\fR(5), \fBkrb5_auth_rules\fR(5)
diff --git a/usr/src/man/man5/gsscred.conf.5 b/usr/src/man/man5/gsscred.conf.5
new file mode 100644
index 0000000000..26220848fd
--- /dev/null
+++ b/usr/src/man/man5/gsscred.conf.5
@@ -0,0 +1,68 @@
+'\" te
+.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH GSSCRED.CONF 5 "Mar 17, 2004"
+.SH NAME
+gsscred.conf \- Generic Security Services credential configuration file
+.SH SYNOPSIS
+.LP
+.nf
+\fB/etc/gss/gsscred.conf\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBgsscred.conf\fR file contains GSS credential information including
+options that can be set by the system administrator.
+.sp
+.LP
+The options that are in this file include:
+.sp
+.in +2
+.nf
+SYSLOG_UID_MAPPING=yes
+.fi
+.in -2
+
+.sp
+.LP
+If this option is set to \fByes\fR, GSS cred to Unix cred mapping results will
+be logged to \fBsyslog\fR(3C) at level \fBauth.debug\fR.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/gss/gsscred.conf\fR\fR
+.ad
+.RS 25n
+Contains GSS credential information.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR syslog (3C),
+.BR krb5.conf (5),
+.BR attributes (7),
+.BR kerberos (7),
+.BR gsscred (8),
+.BR gssd (8)
diff --git a/usr/src/man/man5/hal.5 b/usr/src/man/man5/hal.5
deleted file mode 100644
index b7345fbf38..0000000000
--- a/usr/src/man/man5/hal.5
+++ /dev/null
@@ -1,38 +0,0 @@
-'\" te
-.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH HAL 5 "Nov 26, 2017"
-.SH NAME
-hal \- overview of hardware abstraction layer
-.SH DESCRIPTION
-.LP
-The Hardware Abstraction Layer (HAL) provides a view of the various hardware
-attached to a system. This view is updated dynamically as hardware
-configuration changes by means of hotplug or other mechanisms. HAL represents a
-piece of hardware as a device object. A device object is identified by a unique
-identifier and carries a set of key/value pairs, referred to as device
-properties. Some properties are derived from the actual hardware, some are
-merged from device information files (\fB\&.fdi\fR files), and some are related
-to the actual device configuration.
-.sp
-.LP
-HAL provides an easy-to-use API through D-Bus. D-Bus is an IPC framework that,
-among other features, provides a system-wide message-bus that allows
-applications to talk to one another. Specifically, D-Bus provides asynchronous
-notification such that HAL can notify other peers on the message-bus when
-devices are added and removed, as well as when properties on a device are
-changing.
-.sp
-.LP
-In the Solaris operating system, HAL is supported by a daemon, \fBhald\fR(1M),
-and a set of utilities that enable the adding and removing of devices and the
-modification of their properties.
-.SH SEE ALSO
-.LP
-\fBhald\fR(1M), \fBfdi\fR(4)
-.sp
-.LP
-See the HAL pages, including the HAL specification, under
-http://freedesktop.org.
diff --git a/usr/src/man/man5/hba.conf.5 b/usr/src/man/man5/hba.conf.5
new file mode 100644
index 0000000000..54b0afd262
--- /dev/null
+++ b/usr/src/man/man5/hba.conf.5
@@ -0,0 +1,106 @@
+'\" te
+.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH HBA.CONF 5 "Sep 4, 2003"
+.SH NAME
+hba.conf \- configuration file for the HBAAPI library
+.SH DESCRIPTION
+.sp
+.LP
+The \fB/etc/hba.conf\fR file is used to specify the Vendor-Specific Libraries
+that are installed on the system. This file is used by the Common Library to
+load the individual VSLs when \fBHBA_LoadLibrary\fR(3HBAAPI) is called. If
+changes are made to the file while the library is in use, the library should be
+freed and reloaded. A version 1 VSL is compatible only with a version 1 Common
+Library. A version 2 VSL is compatible with both a version 1 and a version 2
+Common Library.
+.sp
+.LP
+Each VSL entry is a single line of the form:
+.sp
+.in +2
+.nf
+"name" "library path"
+.fi
+.in -2
+
+.sp
+.LP
+where:
+.sp
+.ne 2
+.na
+\fB\fIname\fR\fR
+.ad
+.RS 16n
+is the description of library. The library name should be prepended with the
+domain of the manufacturer of the library.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIlibrary path\fR\fR
+.ad
+.RS 16n
+is the absolute path to the shared object library file.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRContents of \fB/etc/hba.conf\fR
+.sp
+.in +2
+.nf
+#
+# This file contains names and references to HBA libraries
+#
+# Format:
+#
+# <library name> <library pathname>
+#
+# The library name should be prepended with the domain of
+# the manufacturer or driver author.
+com.sun.fchba32 /usr/lib/libsun_fc.so.1
+com.sun.fchba64 /usr/lib/sparcv9/libsun_fc.so.1
+.fi
+.in -2
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Standard: FC-MI 1.92 (API version 1)
+_
+ T{
+Standard: FC-HBA Version 4 (API version 2)
+T}
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR HBA_LoadLibrary (3HBAAPI),
+.BR libhbaapi (3LIB),
+.BR attributes (7)
+.SH BUGS
+.sp
+.LP
+The HBAAPI is provided in both 32- and 64-bit versions, but only one
+configuration file is specified. As a result, both 32- and 64-bit VSL libraries
+must be specified within the same file. When using the 32-bit Common Library,
+the 64-bit VSLs will fail to load. When using the 64-bit Common Library, the
+32-bit VSLs will fail to load. These failures are silently ignored by the
+Common Library during normal usage, but can result in warning messages when
+running client applications in a debugger.
diff --git a/usr/src/man/man5/holidays.5 b/usr/src/man/man5/holidays.5
new file mode 100644
index 0000000000..fe6322c8e1
--- /dev/null
+++ b/usr/src/man/man5/holidays.5
@@ -0,0 +1,94 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH HOLIDAYS 5 "Aug 18, 2008"
+.SH NAME
+holidays \- prime/nonprime table for the accounting system
+.SH SYNOPSIS
+.LP
+.nf
+\fB/etc/acct/holidays\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fB/etc/acct/holidays\fR file specifies prime time hours and holidays.
+Holidays and weekends are considered non-prime time hours.
+.sp
+.LP
+\fB/etc/acct/holidays\fR is used by the accounting system.
+.sp
+.LP
+All lines beginning with an \fB*\fR are comments.
+.sp
+.LP
+The \fB/etc/acct/holidays\fR file consists of two sections. The first
+non-comment line defines the current year and the start time of prime and
+non-prime time hours, in the form of:
+.sp
+.in +2
+.nf
+\fIcurrent_year\fR \fIprime_start\fR \fInon_prime_start\fR
+.fi
+.in -2
+
+.sp
+.LP
+Specify \fIprime_start\fR and \fInon_prime_start\fR times in the range of
+\fB0000\fR to \fB2400\fR.
+.sp
+.LP
+The remaining non-comment lines define the holidays in the form of:
+.sp
+.in +2
+.nf
+\fImonth/day\fR \fIcompany_holiday\fR
+.fi
+.in -2
+
+.sp
+.LP
+Of these two fields, only the \fImonth/day\fR is actually used by the
+accounting system programs.
+.sp
+.LP
+The \fB/etc/acct/holidays\fR file must be updated every year.
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRAn Example of the \fB/etc/acct/holidays\fR File
+.sp
+.LP
+The following is an example of the \fB/etc/acct/holidays\fR file:
+
+.sp
+.in +2
+.nf
+* Prime/Nonprime Table for the accounting system
+*
+* Curr Prime Non-Prime
+* Year Start Start
+*
+ 1991 0830 1800
+*
+* only the first column (month/day) is significant.
+*
+* month/day Company Holiday
+*
+ 1/1 New Years Day
+ 5/30 Memorial Day
+ 7/4 Indep. Day
+ 9/5 Labor Day
+ 11/24 Thanksgiving Day
+ 11/25 day after Thanksgiving
+ 12/25 Christmas
+ 12/26 day after Christmas
+.fi
+.in -2
+
+.SH SEE ALSO
+.sp
+.LP
+.BR acct (8)
diff --git a/usr/src/man/man5/hosts.5 b/usr/src/man/man5/hosts.5
new file mode 100644
index 0000000000..65b3b85518
--- /dev/null
+++ b/usr/src/man/man5/hosts.5
@@ -0,0 +1,180 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 1988, 1995 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH HOSTS 5 "Feb 25, 2017"
+.SH NAME
+hosts \- host name database
+.SH SYNOPSIS
+.LP
+.nf
+\fB/etc/inet/hosts\fR
+.fi
+
+.LP
+.nf
+\fB/etc/hosts\fR
+.fi
+
+.LP
+.nf
+\fB/etc/inet/ipnodes\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBhosts\fR file is a local database that associates the names of hosts
+with their Internet Protocol (IP) addresses. An IP address can be in either
+IPv4 or IPv6 format. The \fBhosts\fR file can be used in conjunction with, or
+instead of, other hosts databases, including the Domain Name System (DNS), the
+NIS \fBhosts\fR map, or information from an LDAP
+server. Programs use library interfaces to access information in the
+\fBhosts\fR file.
+.sp
+.LP
+Note that \fB/etc/hosts\fR and \fB/etc/inet/ipnodes\fR are symbolic links to
+\fB/etc/inet/hosts\fR.
+.sp
+.LP
+The \fBhosts\fR file has one entry for each IP address of each host. If a host
+has more than one IP address, it will have one entry for each, on consecutive
+lines. The format of each line is:
+.sp
+.LP
+\fIIP-address\fR \fIofficial-host-name\fR \fInicknames\|.\|.\|\fR.
+.sp
+.LP
+Items are separated by any number of \fBSPACE\fR and/or \fBTAB\fR characters.
+The first item on a line is the host's IP address. The second entry is the
+host's official name. Subsequent entries on the same line are alternative names
+for the same machine, or "nicknames." Nicknames are optional.
+.sp
+.LP
+For a host with more than one IP address, consecutive entries for these
+addresses may contain the same or differing nicknames. Different nicknames are
+useful for assigning distinct names to different addresses.
+.sp
+.LP
+A call to \fBgethostbyname\fR(3NSL) returns a \fBhostent\fR structure
+containing the union of all IPv4 addresses and nicknames from each line
+containing a matching official name or nickname. A call to
+\fBgetipnodebyname\fR(3SOCKET) is similar, but is capable of returning
+\fBhostent\fR structures containing IPv4 and IPv6 addresses. Applications might
+prefer to use the address-family independent \fBgetaddrinfo\fR(3SOCKET) API for
+name-to-address lookups.
+.sp
+.LP
+A `\fB#\fR' indicates the beginning of a comment; characters up to the end of
+the line are not interpreted by routines that search the file.
+.sp
+.LP
+Network addresses are written in one of two ways:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The conventional "decimal dot" notation and interpreted using the
+\fBinet_addr\fR routine from the Internet address manipulation library,
+\fBinet\fR(3SOCKET).
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The IP Version 6 protocol [IPV6], defined in RFC 1884 and interpreted using the
+\fBinet_pton()\fR routine from the Internet address manipulation library. See
+\fBinet\fR(3SOCKET).
+.RE
+.sp
+.LP
+This interface supports node names as defined in Internet RFC 952, which
+states:
+.sp
+.LP
+A "name" (Net, Host, Gateway, or Domain name) is a text string up to 24
+characters drawn from the alphabet (A-Z), digits (0-9), minus sign (\(mi), and
+period (.). Note that periods are only allowed when they serve to delimit
+components of "domain style names". (See RFC 921, "Domain Name System
+Implementation Schedule," for background). No blank or space characters are
+permitted as part of a name. No distinction is made between uppercase and
+lowercase. The first character must be an alpha character [or a digit. (RFC
+1123 relaxed RFC 952's limitation of the first character to only alpha
+characters.)] The last character must not be a minus sign or period.
+.sp
+.LP
+Host names must not consist of numbers only. A host name must contain at least
+one alphabetical or special character.
+.sp
+.LP
+Although the interface accepts host names longer than 24 characters for the
+host portion (exclusive of the domain component), choosing names for hosts that
+adhere to the 24 character restriction will insure maximum interoperability on
+the Internet.
+.sp
+.LP
+A host which serves as a GATEWAY should have "\(miGATEWAY" or "\(miGW" as part
+of its name. Hosts which do not serve as Internet gateways should not use
+"\(miGATEWAY" and "\(miGW" as part of their names. A host which is a TAC should
+have "\(miTAC" as the last part of its host name, if it is a DoD host. Single
+character names or nicknames are not allowed.
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRExample \fBhosts\fR File Entry
+.sp
+.LP
+The following is a typical line from the \fBhosts\fR file:
+
+.sp
+.in +2
+.nf
+192.9.1.20 gaia # John Smith
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRExample IPv6 Address Entry
+.sp
+.LP
+The following is an example of an IPv6 \fBhosts\fR entry:
+
+.sp
+.in +2
+.nf
+2001:0db8:3c4d:55:a00:20ff:fe8e:f3ad myhost # John Smith
+.fi
+.in -2
+.sp
+
+.SH SEE ALSO
+.LP
+.BR gethostbyname (3NSL),
+.BR getipnodebyname (3SOCKET),
+.BR inet (3SOCKET),
+.BR nsswitch.conf (5),
+.BR resolv.conf (5)
+.sp
+.LP
+Braden, B., editor, RFC 1123, \fIRequirements for Internet Hosts - Application
+and Support\fR, Network Working Group, October, 1989.
+.sp
+.LP
+Harrenstien, K., Stahl, M., and Feinler, E., RFC 952, \fIDOD Internet Host
+Table Specification\fR, Network Working Group, October 1985.
+.sp
+.LP
+Hinden, R., and Deering, S., editors, RFC 1884, \fIIP Version 6 Addressing
+Architecture\fR, Network Working Group, December, 1995.
+.sp
+.LP
+Postel, Jon, RFC 921, \fIDomain Name System Implementation Schedule
+(Revised)\fR, Network Working Group, October 1984.
+.SH NOTES
+.LP
+\fB/etc/inet/hosts\fR is the official SVR4 name of the \fBhosts\fR file. The
+symbolic link \fB/etc/hosts\fR exists for \fBBSD\fR compatibility.
+.sp
+.LP
+The symbolic link \fB/etc/net/ipnodes\fR exists for backwards compatibility
+with previous Solaris releases.
diff --git a/usr/src/man/man5/hosts.equiv.5 b/usr/src/man/man5/hosts.equiv.5
new file mode 100644
index 0000000000..268e3c30b3
--- /dev/null
+++ b/usr/src/man/man5/hosts.equiv.5
@@ -0,0 +1,336 @@
+'\" te
+.\" Copyright (c) 1997, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH HOSTS.EQUIV 5 "Nov 26, 2017"
+.SH NAME
+hosts.equiv, rhosts \- trusted remote hosts and users
+.SH DESCRIPTION
+.LP
+The \fB/etc/hosts.equiv\fR and \fB\&.rhosts\fR files provide the "remote
+authentication" database for \fBrlogin\fR(1), \fBrsh\fR(1), \fBrcp\fR(1), and
+\fBrcmd\fR(3SOCKET). The files specify remote hosts and users that are
+considered "trusted". Trusted users are allowed to access the local system
+without supplying a password. The library routine \fBruserok()\fR (see
+\fBrcmd\fR(3SOCKET)) performs the authentication procedure for programs by
+using the \fB/etc/hosts.equiv\fR and \fB\&.rhosts\fR files. The
+\fB/etc/hosts.equiv\fR file applies to the entire system, while individual
+users can maintain their own \fB\&.rhosts\fR files in their home directories.
+.sp
+.LP
+These files bypass the standard password-based user authentication mechanism.
+To maintain system security, care must be taken in creating and maintaining
+these files.
+.sp
+.LP
+The remote authentication procedure determines whether a user from a remote
+host should be allowed to access the local system with the identity of a local
+user. This procedure first checks the \fB/etc/hosts.equiv\fR file and then
+checks the \fB\&.rhosts\fR file in the home directory of the local user who is
+requesting access. Entries in these files can be of two forms. Positive entries
+allow access, while negative entries deny access. The authentication succeeds
+when a matching positive entry is found. The procedure fails when the first
+matching negative entry is found, or if no matching entries are found in either
+file. The order of entries is important. If the files contain both positive and
+negative entries, the entry that appears first will prevail. The \fBrsh\fR(1)
+and \fBrcp\fR(1) programs fail if the remote authentication procedure fails.
+The \fBrlogin\fR program falls back to the standard password-based login
+procedure if the remote authentication fails.
+.sp
+.LP
+Both files are formatted as a list of one-line entries. Each entry has the
+form:
+.sp
+.in +2
+.nf
+\fIhostname\fR [\fIusername\fR]
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Hostnames must be the official name of the host, not one of its nicknames.
+.sp
+.LP
+Negative entries are differentiated from positive entries by a `\(mi' character
+preceding either the \fIhostname\fR or \fIusername\fR field.
+.SS "Positive Entries"
+.LP
+If the form:
+.sp
+.in +2
+.nf
+\fIhostname\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+is used, then users from the named host are trusted. That is, they may access
+the system with the same user name as they have on the remote system. This form
+may be used in both the \fB/etc/hosts.equiv\fR and \fB\&.rhosts\fR files.
+.sp
+.LP
+If the line is in the form:
+.sp
+.in +2
+.nf
+\fIhostname\fR \fIusername\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+then the named user from the named host can access the system. This form may be
+used in individual \fB\&.rhosts\fR files to allow remote users to access the
+system \fIas a different local user\fR. If this form is used in the
+\fB/etc/hosts.equiv\fR file, the named remote user will be allowed to access
+the system as \fBany\fR local user.
+.sp
+.LP
+\fBnetgroup\fR(5) can be used in either the \fIhostname\fR or \fIusername\fR
+fields to match a number of hosts or users in one entry. The form:
+.sp
+.in +2
+.nf
+\fB+@\fR\fInetgroup\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+allows access from all hosts in the named netgroup. When used in the
+\fIusername\fR field, netgroups allow a group of remote users to access the
+system as a particular local user. The form:
+.sp
+.in +2
+.nf
+\fIhostname\fR \fB+@\fR\fInetgroup\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+allows all of the users in the named netgroup from the named host to access the
+system as the local user. The form:
+.sp
+.in +2
+.nf
+\fB+@\fR\fInetgroup1\fR \fB+@\fR\fInetgroup2\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+allows the users in \fInetgroup2\fR from the hosts in \fInetgroup1\fR to access
+the system as the local user.
+.sp
+.LP
+The special character `+' can be used in place of either \fIhostname\fR or
+\fIusername\fR to match any host or user. For example, the entry
+.sp
+.in +2
+.nf
+\fB+\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+will allow a user from any remote host to access the system with the same
+username. The entry
+.sp
+.in +2
+.nf
+\fB+\fR \fIusername\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+will allow the named user from any remote host to access the system. The entry
+.sp
+.in +2
+.nf
+\fIhostname\fR \fB+\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+will allow any user from the named host to access the system as the local user.
+.SS "Negative Entries"
+.LP
+Negative entries are preceded by a `\(mi' sign. The form:
+.sp
+.in +2
+.nf
+\fB\(mi\fR\fIhostname\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+will disallow all access from the named host. The form:
+.sp
+.in +2
+.nf
+\fB\(mi@\fR\fInetgroup\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+means that access is explicitly disallowed from all hosts in the named
+netgroup. The form:
+.sp
+.in +2
+.nf
+\fIhostname\fR \fB\(mi\fR\fIusername\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+disallows access by the named user only from the named host, while the form:
+.sp
+.in +2
+.nf
+\fB+ \(mi@\fR\fInetgroup\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+will disallow access by all of the users in the named netgroup from all hosts.
+.SS "Search Sequence"
+.LP
+To help maintain system security, the \fB/etc/hosts.equiv\fR file is not
+checked when access is being attempted for super-user. If the user attempting
+access is not the super-user, \fB/etc/hosts.equiv\fR is searched for lines of
+the form described above. Checks are made for lines in this file in the
+following order:
+.RS +4
+.TP
+1.
+\fB+\fR
+.RE
+.RS +4
+.TP
+2.
+\fB+@\fR\fInetgroup\fR
+.RE
+.RS +4
+.TP
+3.
+\fB\(mi@\fR\fInetgroup\fR
+.RE
+.RS +4
+.TP
+4.
+\fB\(mi\fR\fIhostname\fR
+.RE
+.RS +4
+.TP
+5.
+\fIhostname\fR
+.RE
+.sp
+.LP
+The user is granted access if a positive match occurs. Negative entries apply
+only to \fB/etc/hosts.equiv\fR and may be overridden by subsequent
+\fB\&.rhosts\fR entries.
+.sp
+.LP
+If no positive match occurred, the \fB\&.rhosts\fR file is then searched if the
+user attempting access maintains such a file. This file is searched whether or
+not the user attempting access is the super-user. As a security feature, the
+\fB\&.rhosts\fR file must be owned by the user who is attempting access. Checks
+are made for lines in \fB\&.rhosts\fR in the following order:
+.RS +4
+.TP
+1.
+\fB+\fR
+.RE
+.RS +4
+.TP
+2.
+\fB+@\fR\fInetgroup\fR
+.RE
+.RS +4
+.TP
+3.
+\fB\(mi@\fR\fInetgroup\fR
+.RE
+.RS +4
+.TP
+4.
+\fB\(mi\fR\fIhostname\fR
+.RE
+.RS +4
+.TP
+5.
+\fIhostname\fR
+.RE
+.SH FILES
+.ne 2
+.na
+\fB\fB/etc/hosts.equiv\fR\fR
+.ad
+.RS 20n
+system trusted hosts and users
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB~/.rhosts\fR\fR
+.ad
+.RS 20n
+user's trusted hosts and users
+.RE
+
+.SH SEE ALSO
+.LP
+.BR rcp (1),
+.BR rlogin (1),
+.BR rsh (1),
+.BR rcmd (3SOCKET),
+.BR hosts (5),
+.BR netgroup (5),
+.BR passwd (5)
+.SH WARNINGS
+.LP
+Positive entries in \fB/etc/hosts.equiv\fR that include a \fIusername\fR field
+(either an individual named user, a netgroup, or `\fB+\fR' sign) should be
+used with extreme caution. Because \fB/etc/hosts.equiv\fR applies system-wide,
+these entries allow one, or a group of, remote users to access the system
+\fBas any local user\fR. This can be a security hole. For example, because of
+the search sequence, an \fB/etc/hosts.equiv\fR file consisting of the entries
+.sp
+.in +2
+.nf
+\fB+
+\(mihostxxx\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+will not deny access to "hostxxx".
diff --git a/usr/src/man/man5/hosts_access.5 b/usr/src/man/man5/hosts_access.5
new file mode 100644
index 0000000000..d0349b5ce6
--- /dev/null
+++ b/usr/src/man/man5/hosts_access.5
@@ -0,0 +1,399 @@
+'\" t
+.\"
+.\" Modified for Solaris to to add the Solaris stability classification,
+.\" and to add a note about source availability.
+.\"
+.TH HOSTS_ACCESS 5 "May 13, 2017"
+.SH NAME
+hosts_access \- format of host access control files
+.SH DESCRIPTION
+This manual page describes a simple access control language that is
+based on client (host name/address, user name), and server (process
+name, host name/address) patterns. Examples are given at the end. The
+impatient reader is encouraged to skip to the EXAMPLES section for a
+quick introduction.
+.PP
+An extended version of the access control language is described in the
+\fIhosts_options\fR(5) document. The extensions are turned on at
+program build time by building with -DPROCESS_OPTIONS.
+.PP
+In the following text, \fIdaemon\fR is the process name of a
+network daemon process, and \fIclient\fR is the name and/or address of
+a host requesting service. Network daemon process names are specified
+in the inetd configuration file.
+.SH ACCESS CONTROL FILES
+The access control software consults two files. The search stops
+at the first match:
+.IP \(bu
+Access will be granted when a (daemon,client) pair matches an entry in
+the \fI/etc/hosts.allow\fR file.
+.IP \(bu
+Otherwise, access will be denied when a (daemon,client) pair matches an
+entry in the \fI/etc/hosts.deny\fR file.
+.IP \(bu
+Otherwise, access will be granted.
+.PP
+A non-existing access control file is treated as if it were an empty
+file. Thus, access control can be turned off by providing no access
+control files.
+.SH ACCESS CONTROL RULES
+Each access control file consists of zero or more lines of text. These
+lines are processed in order of appearance. The search terminates when a
+match is found.
+.IP \(bu
+A newline character is ignored when it is preceded by a backslash
+character. This permits you to break up long lines so that they are
+easier to edit.
+.IP \(bu
+Blank lines or lines that begin with a `#\' character are ignored.
+This permits you to insert comments and whitespace so that the tables
+are easier to read.
+.IP \(bu
+All other lines should satisfy the following format, things between []
+being optional:
+.sp
+daemon_list : client_list [ : shell_command ]
+.PP
+\fIdaemon_list\fR is a list of one or more daemon process names
+(argv[0] values) or wildcards (see below).
+.PP
+\fIclient_list\fR is a list
+of one or more host names, host addresses, patterns or wildcards (see
+below) that will be matched against the client host name or address.
+.PP
+The more complex forms \fIdaemon@host\fR and \fIuser@host\fR are
+explained in the sections on server endpoint patterns and on client
+username lookups, respectively.
+.PP
+List elements should be separated by blanks and/or commas.
+.PP
+With the exception of NIS (YP) netgroup lookups, all access control
+checks are case insensitive.
+.ne 4
+.SH HOST ADDRESSES
+IPv4 client addresses can be denoted in their usual dotted notation, i.e.
+x.x.x.x, but IPv6 addresses require a square brace around them - e.g.
+[::1].
+.SH PATTERNS
+The access control language implements the following patterns:
+.IP \(bu
+A string that begins with a `.\' character. A host name is matched if
+the last components of its name match the specified pattern. For
+example, the pattern `.tue.nl\' matches the host name
+`wzv.win.tue.nl\'.
+.IP \(bu
+A string that ends with a `.\' character. A host address is matched if
+its first numeric fields match the given string. For example, the
+pattern `131.155.\' matches the address of (almost) every host on the
+Eind\%hoven University network (131.155.x.x).
+.IP \(bu
+A string that begins with an `@\' character is treated as an NIS
+(formerly YP) netgroup name. A host name is matched if it is a host
+member of the specified netgroup. Netgroup matches are not supported
+for daemon process names or for client user names.
+.IP \(bu
+An expression of the form `n.n.n.n/m.m.m.m\' is interpreted as a
+`net/mask\' pair. A host address is matched if `net\' is equal to the
+bitwise AND of the address and the `mask\'. For example, the net/mask
+pattern `131.155.72.0/255.255.254.0\' matches every address in the
+range `131.155.72.0\' through `131.155.73.255\'.
+.IP \(bu
+Prefixes can be specified for IPv6 address, e.g. [2001:DB8::/32]
+.SH WILDCARDS
+The access control language supports explicit wildcards:
+.IP ALL
+The universal wildcard, always matches.
+.IP LOCAL
+Matches any host whose name does not contain a dot character.
+.IP UNKNOWN
+Matches any user whose name is unknown, and matches any host whose name
+\fIor\fR address are unknown. This pattern should be used with care:
+host names may be unavailable due to temporary name server problems. A
+network address will be unavailable when the software cannot figure out
+what type of network it is talking to.
+.IP KNOWN
+Matches any user whose name is known, and matches any host whose name
+\fIand\fR address are known. This pattern should be used with care:
+host names may be unavailable due to temporary name server problems. A
+network address will be unavailable when the software cannot figure out
+what type of network it is talking to.
+.IP PARANOID
+Matches any host whose name does not match its address. When tcpd is
+built with -DPARANOID (default mode), it drops requests from such
+clients even before looking at the access control tables. Build
+without -DPARANOID when you want more control over such requests.
+.ne 6
+.SH OPERATORS
+.IP EXCEPT
+Intended use is of the form: `list_1 EXCEPT list_2\'; this construct
+matches anything that matches \fIlist_1\fR unless it matches
+\fIlist_2\fR. The EXCEPT operator can be used in daemon_lists and in
+client_lists. The EXCEPT operator can be nested: if the control
+language would permit the use of parentheses, `a EXCEPT b EXCEPT c\'
+would parse as `(a EXCEPT (b EXCEPT c))\'.
+.br
+.ne 6
+.SH SHELL COMMANDS
+If the first-matched access control rule contains a shell command, that
+command is subjected to %<letter> substitutions (see next section).
+The result is executed by a \fI/bin/sh\fR child process with standard
+input, output and error connected to \fI/dev/null\fR. Specify an `&\'
+at the end of the command if you do not want to wait until it has
+completed.
+.PP
+Shell commands should not rely on the PATH setting of the inetd.
+Instead, they should use absolute path names, or they should begin with
+an explicit PATH=whatever statement.
+.PP
+The \fIhosts_options\fR(5) document describes an alternative language
+that uses the shell command field in a different and incompatible way.
+.SH % EXPANSIONS
+The following expansions are available within shell commands:
+.IP "%a (%A)"
+The client (server) host address.
+.IP %c
+Client information: user@host, user@address, a host name, or just an
+address, depending on how much information is available.
+.IP %d
+The daemon process name (argv[0] value).
+.IP "%h (%H)"
+The client (server) host name or address, if the host name is
+unavailable.
+.IP "%n (%N)"
+The client (server) host name (or "unknown" or "paranoid").
+.IP %p
+The daemon process id.
+.IP %s
+Server information: daemon@host, daemon@address, or just a daemon name,
+depending on how much information is available.
+.IP %u
+The client user name (or "unknown").
+.IP %%
+Expands to a single `%\' character.
+.PP
+Characters in % expansions that may confuse the shell are replaced by
+underscores.
+.SH SERVER ENDPOINT PATTERNS
+In order to distinguish clients by the network address that they
+connect to, use patterns of the form:
+.sp
+process_name@host_pattern : client_list ...
+.sp
+Patterns like these can be used when the machine has different internet
+addresses with different internet hostnames. Service providers can use
+this facility to offer FTP, GOPHER or WWW archives with internet names
+that may even belong to different organizations. See also the `twist'
+option in the hosts_options(5) document. Some systems (Solaris,
+FreeBSD) can have more than one internet address on one physical
+interface; with other systems you may have to resort to SLIP or PPP
+pseudo interfaces that live in a dedicated network address space.
+.sp
+The host_pattern obeys the same syntax rules as host names and
+addresses in client_list context. Usually, server endpoint information
+is available only with connection-oriented services.
+.SH CLIENT USERNAME LOOKUP
+When the client host supports the RFC 931 protocol or one of its
+descendants (TAP, IDENT, RFC 1413) the wrapper programs can retrieve
+additional information about the owner of a connection. Client username
+information, when available, is logged together with the client host
+name, and can be used to match patterns like:
+.PP
+daemon_list : ... user_pattern@host_pattern ...
+.PP
+The daemon wrappers can be configured at compile time to perform
+rule-driven username lookups (default) or to always interrogate the
+client host. In the case of rule-driven username lookups, the above
+rule would cause username lookup only when both the \fIdaemon_list\fR
+and the \fIhost_pattern\fR match.
+.PP
+A user pattern has the same syntax as a daemon process pattern, so the
+same wildcards apply (netgroup membership is not supported). One
+should not get carried away with username lookups, though.
+.IP \(bu
+The client username information cannot be trusted when it is needed
+most, i.e. when the client system has been compromised. In general,
+ALL and (UN)KNOWN are the only user name patterns that make sense.
+.IP \(bu
+Username lookups are possible only with TCP-based services, and only
+when the client host runs a suitable daemon; in all other cases the
+result is "unknown".
+.IP \(bu
+A well-known UNIX kernel bug may cause loss of service when username
+lookups are blocked by a firewall. The wrapper README document
+describes a procedure to find out if your kernel has this bug.
+.IP \(bu
+Username lookups may cause noticeable delays for non-UNIX users. The
+default timeout for username lookups is 10 seconds: too short to cope
+with slow networks, but long enough to irritate PC users.
+.PP
+Selective username lookups can alleviate the last problem. For example,
+a rule like:
+.PP
+daemon_list : @pcnetgroup ALL@ALL
+.PP
+would match members of the pc netgroup without doing username lookups,
+but would perform username lookups with all other systems.
+.SH DETECTING ADDRESS SPOOFING ATTACKS
+A flaw in the sequence number generator of many TCP/IP implementations
+allows intruders to easily impersonate trusted hosts and to break in
+via, for example, the remote shell service. The IDENT (RFC931 etc.)
+service can be used to detect such and other host address spoofing
+attacks.
+.PP
+Before accepting a client request, the wrappers can use the IDENT
+service to find out that the client did not send the request at all.
+When the client host provides IDENT service, a negative IDENT lookup
+result (the client matches `UNKNOWN@host') is strong evidence of a host
+spoofing attack.
+.PP
+A positive IDENT lookup result (the client matches `KNOWN@host') is
+less trustworthy. It is possible for an intruder to spoof both the
+client connection and the IDENT lookup, although doing so is much
+harder than spoofing just a client connection. It may also be that
+the client\'s IDENT server is lying.
+.PP
+Note: IDENT lookups don\'t work with UDP services.
+.SH EXAMPLES
+The language is flexible enough that different types of access control
+policy can be expressed with a minimum of fuss. Although the language
+uses two access control tables, the most common policies can be
+implemented with one of the tables being trivial or even empty.
+.PP
+When reading the examples below it is important to realize that the
+allow table is scanned before the deny table, that the search
+terminates when a match is found, and that access is granted when no
+match is found at all.
+.PP
+The examples use host and domain names. They can be improved by
+including address and/or network/netmask information, to reduce the
+impact of temporary name server lookup failures.
+.SH MOSTLY CLOSED
+In this case, access is denied by default. Only explicitly authorized
+hosts are permitted access.
+.PP
+The default policy (no access) is implemented with a trivial deny
+file:
+.PP
+.ne 2
+/etc/hosts.deny:
+.in +3
+ALL: ALL
+.PP
+This denies all service to all hosts, unless they are permitted access
+by entries in the allow file.
+.PP
+The explicitly authorized hosts are listed in the allow file.
+For example:
+.PP
+.ne 2
+/etc/hosts.allow:
+.in +3
+ALL: LOCAL @some_netgroup
+.br
+ALL: .foobar.edu EXCEPT terminalserver.foobar.edu
+.PP
+The first rule permits access from hosts in the local domain (no `.\'
+in the host name) and from members of the \fIsome_netgroup\fP
+netgroup. The second rule permits access from all hosts in the
+\fIfoobar.edu\fP domain (notice the leading dot), with the exception of
+\fIterminalserver.foobar.edu\fP.
+.SH MOSTLY OPEN
+Here, access is granted by default; only explicitly specified hosts are
+refused service.
+.PP
+The default policy (access granted) makes the allow file redundant so
+that it can be omitted. The explicitly non-authorized hosts are listed
+in the deny file. For example:
+.PP
+/etc/hosts.deny:
+.in +3
+ALL: some.host.name, .some.domain
+.br
+ALL EXCEPT in.fingerd: other.host.name, .other.domain
+.PP
+The first rule denies some hosts and domains all services; the second
+rule still permits finger requests from other hosts and domains.
+.SH BOOBY TRAPS
+The next example permits tftp requests from hosts in the local domain
+(notice the leading dot). Requests from any other hosts are denied.
+Instead of the requested file, a finger probe is sent to the offending
+host. The result is mailed to the superuser.
+.PP
+.ne 2
+/etc/hosts.allow:
+.in +3
+.nf
+in.tftpd: LOCAL, .my.domain
+.PP
+.ne 2
+/etc/hosts.deny:
+.in +3
+in.tftpd: ALL: (/some/where/safe_finger -l @%h | \\
+ /usr/ucb/mail -s %d-%h root) &
+.fi
+.PP
+The safe_finger command comes with the tcpd wrapper and should be
+installed in a suitable place. It limits possible damage from data sent
+by the remote finger server. It gives better protection than the
+standard finger command.
+.PP
+The expansion of the %h (client host) and %d (service name) sequences
+is described in the section on shell commands.
+.PP
+Warning: do not booby-trap your finger daemon, unless you are prepared
+for infinite finger loops.
+.PP
+On network firewall systems this trick can be carried even further.
+The typical network firewall only provides a limited set of services to
+the outer world. All other services can be "bugged" just like the above
+tftp example. The result is an excellent early-warning system.
+.br
+.ne 4
+.SH DIAGNOSTICS
+An error is reported when a syntax error is found in a host access
+control rule; when the length of an access control rule exceeds the
+capacity of an internal buffer; when an access control rule is not
+terminated by a newline character; when the result of %<letter>
+expansion would overflow an internal buffer; when a system call fails
+that shouldn\'t. All problems are reported via the syslog daemon.
+.SH FILES
+.na
+.nf
+/etc/hosts.allow, (daemon,client) pairs that are granted access.
+/etc/hosts.deny, (daemon,client) pairs that are denied access.
+.ad
+.fi
+.SH SEE ALSO
+.nf
+tcpd(8) tcp/ip daemon wrapper program.
+tcpdchk(8), tcpdmatch(8), test programs.
+.SH BUGS
+If a name server lookup times out, the host name will not be available
+to the access control software, even though the host is registered.
+.PP
+Domain name server lookups are case insensitive; NIS (formerly YP)
+netgroup lookups are case sensitive.
+.SH AUTHOR
+.nf
+Wietse Venema (wietse@wzv.win.tue.nl)
+Department of Mathematics and Computing Science
+Eindhoven University of Technology
+Den Dolech 2, P.O. Box 513
+5600 MB Eindhoven, The Netherlands
+.fi
+.\" @(#) hosts_access.5 1.20 95/01/30 19:51:46
+.\" Begin Sun update
+.SH ATTRIBUTES
+See
+.BR attributes (7)
+for descriptions of the following attributes:
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+=
+Interface Stability Committed
+.TE
+.\" End Sun update
diff --git a/usr/src/man/man5/hosts_options.5 b/usr/src/man/man5/hosts_options.5
new file mode 100644
index 0000000000..ce570aa055
--- /dev/null
+++ b/usr/src/man/man5/hosts_options.5
@@ -0,0 +1,183 @@
+'\" t
+.\"
+.\" Modified for Solaris to to add the Solaris stability classification,
+.\" and to add a note about source availability.
+.\"
+.TH HOSTS_OPTIONS 5 "Sep 15, 2011"
+.SH NAME
+hosts_options \- host access control language extensions
+.SH DESCRIPTION
+This document describes optional extensions to the language described
+in the hosts_access(5) document. The extensions are enabled at program
+build time. For example, by editing the Makefile and turning on the
+PROCESS_OPTIONS compile-time option.
+.PP
+The extensible language uses the following format:
+.sp
+daemon_list : client_list : option : option ...
+.PP
+The first two fields are described in the hosts_access(5) manual page.
+The remainder of the rules is a list of zero or more options. Any ":"
+characters within options should be protected with a backslash.
+.PP
+An option is of the form "keyword" or "keyword value". Options are
+processed in the specified order. Some options are subjected to
+%<letter> substitutions. For the sake of backwards compatibility with
+earlier versions, an "=" is permitted between keyword and value.
+.SH LOGGING
+.IP "severity mail.info"
+.IP "severity notice"
+Change the severity level at which the event will be logged. Facility
+names (such as mail) are optional, and are not supported on systems
+with older syslog implementations. The severity option can be used
+to emphasize or to ignore specific events.
+.SH ACCESS CONTROL
+.IP "allow"
+.IP "deny"
+Grant (deny) service. These options must appear at the end of a rule.
+.PP
+The \fIallow\fR and \fIdeny\fR keywords make it possible to keep all
+access control rules within a single file, for example in the
+\fIhosts.allow\fR file.
+.sp
+To permit access from specific hosts only:
+.sp
+.ne 2
+ALL: .friendly.domain: ALLOW
+ALL: ALL: DENY
+.sp
+To permit access from all hosts except a few trouble makers:
+.sp
+.ne 2
+ALL: .bad.domain: DENY
+ALL: ALL: ALLOW
+.sp
+Notice the leading dot on the domain name patterns.
+.SH RUNNING OTHER COMMANDS
+.IP "spawn shell_command"
+Execute, in a child process, the specified shell command, after
+performing the %<letter> expansions described in the hosts_access(5)
+manual page. The command is executed with stdin, stdout and stderr
+connected to the null device, so that it won\'t mess up the
+conversation with the client host. Example:
+.sp
+.nf
+spawn (/some/where/safe_finger -l @%h | /usr/ucb/mail root) &
+.fi
+.sp
+executes, in a background child process, the shell command "safe_finger
+-l @%h | mail root" after replacing %h by the name or address of the
+remote host.
+.sp
+The example uses the "safe_finger" command instead of the regular
+"finger" command, to limit possible damage from data sent by the finger
+server. The "safe_finger" command is part of the daemon wrapper
+package; it is a wrapper around the regular finger command that filters
+the data sent by the remote host.
+.IP "twist shell_command"
+Replace the current process by an instance of the specified shell
+command, after performing the %<letter> expansions described in the
+hosts_access(5) manual page. Stdin, stdout and stderr are connected to
+the client process. This option must appear at the end of a rule.
+.sp
+To send a customized bounce message to the client instead of
+running the real ftp daemon:
+.sp
+.nf
+in.ftpd : ... : twist /bin/echo 421 Some bounce message
+.fi
+.sp
+For an alternative way to talk to client processes, see the
+\fIbanners\fR option below.
+.sp
+To run /some/other/in.telnetd without polluting its command-line
+array or its process environment:
+.sp
+.nf
+in.telnetd : ... : twist PATH=/some/other; exec in.telnetd
+.fi
+.sp
+Warning: in case of UDP services, do not twist to commands that use
+the standard I/O or the read(2)/write(2) routines to communicate with
+the client process; UDP requires other I/O primitives.
+.SH NETWORK OPTIONS
+.IP "keepalive"
+Causes the server to periodically send a message to the client. The
+connection is considered broken when the client does not respond. The
+keepalive option can be useful when users turn off their machine while
+it is still connected to a server. The keepalive option is not useful
+for datagram (UDP) services.
+.IP "linger number_of_seconds"
+Specifies how long the kernel will try to deliver not-yet delivered
+data after the server process closes a connection.
+.SH USERNAME LOOKUP
+.IP "rfc931 [ timeout_in_seconds ]"
+Look up the client user name with the RFC 931 (TAP, IDENT, RFC 1413)
+protocol. This option is silently ignored in case of services based on
+transports other than TCP. It requires that the client system runs an
+RFC 931 (IDENT, etc.) -compliant daemon, and may cause noticeable
+delays with connections from non-UNIX clients. The timeout period is
+optional. If no timeout is specified a compile-time defined default
+value is taken.
+.SH MISCELLANEOUS
+.IP "banners /some/directory"
+Look for a file in `/some/directory' with the same name as the daemon
+process (for example in.telnetd for the telnet service), and copy its
+contents to the client. Newline characters are replaced by
+carriage-return newline, and %<letter> sequences are expanded (see
+the hosts_access(5) manual page).
+.sp
+The tcp wrappers source code distribution provides a sample makefile
+(Banners.Makefile) for convenient banner maintenance.
+.sp
+Warning: banners are supported for connection-oriented (TCP) network
+services only.
+.IP "nice [ number ]"
+Change the nice value of the process (default 10). Specify a positive
+value to spend more CPU resources on other processes.
+.IP "setenv name value"
+Place a (name, value) pair into the process environment. The value is
+subjected to %<letter> expansions and may contain whitespace (but
+leading and trailing blanks are stripped off).
+.sp
+Warning: many network daemons reset their environment before spawning a
+login or shell process.
+.IP "umask 022"
+Like the umask command that is built into the shell. An umask of 022
+prevents the creation of files with group and world write permission.
+The umask argument should be an octal number.
+.IP "user nobody"
+.IP "user nobody.kmem"
+Assume the privileges of the "nobody" userid (or user "nobody", group
+"kmem"). The first form is useful with inetd implementations that run
+all services with root privilege. The second form is useful for
+services that need special group privileges only.
+.SH DIAGNOSTICS
+When a syntax error is found in an access control rule, the error
+is reported to the syslog daemon; further options will be ignored,
+and service is denied.
+.SH SEE ALSO
+hosts_access(5), the default access control language
+.SH AUTHOR
+.nf
+Wietse Venema (wietse@wzv.win.tue.nl)
+Department of Mathematics and Computing Science
+Eindhoven University of Technology
+Den Dolech 2, P.O. Box 513,
+5600 MB Eindhoven, The Netherlands
+\" @(#) hosts_options.5 1.10 94/12/28 17:42:28
+.\" Begin Sun update
+.SH ATTRIBUTES
+See
+.BR attributes (7)
+for descriptions of the following attributes:
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+=
+Interface Stability Committed
+.TE
+.\" End Sun update
diff --git a/usr/src/man/man5/ib.5 b/usr/src/man/man5/ib.5
new file mode 100644
index 0000000000..941f28eb87
--- /dev/null
+++ b/usr/src/man/man5/ib.5
@@ -0,0 +1,89 @@
+'\" te
+.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH IB 5 "Feb 19, 2004"
+.SH NAME
+ib \- InfiniBand device driver configuration files
+.SH DESCRIPTION
+.sp
+.LP
+The InfiniBand (IB) bus is an I/O transport based on switched fabrics. IB
+devices are managed by the \fBib\fR(4D) nexus driver. There are three
+categories of InfiniBand devices:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+IB port/IB VPPA/IB HCA_SVC devices
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+IB IOC devices
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+IB Pseudo devices
+.RE
+.sp
+.LP
+The IB port/IB VPPA/IB HCA_SVC devices are enumerated by way of the
+\fBib.conf\fR file. See \fBib\fR(4D).
+.sp
+.LP
+The IB IOC devices are enumerated using the InfiniBand Device management class.
+See \fBibdm\fR(4D).
+.sp
+.LP
+For devices not in these two categories, most notably IB Pseudo devices, the
+driver must provide configuration files to inform the system of the IB devices
+to be created. Configuration parameters are represented in the form of name
+value pairs you can retrieve using the DDI property interfaces. See
+\fBddi_prop_op\fR(9F) for details.
+.sp
+.LP
+Configuration files for IB device drivers must identify the parent driver
+explicitly as \fBib\fR, and must create a string array property called
+\fBunit-address\fR which is unique to this entry in the configuration file.
+Drivers name \fBibport\fR and \fBioc\fR are reserved by \fBib\fR(4D) and should
+not be used.
+.sp
+.LP
+Each entry in the configuration file creates a prototype \fBdevinfo\fR node.
+Each node is assigned a unit address which is determined by the value of the
+\fBunit-address\fR property. This property is only applicable to children of
+the IB parent and is required. See \fBdriver.conf\fR(5) for further details on
+configuration file syntax.
+.SH EXAMPLES
+.sp
+.LP
+Example 1: Sample configuration file
+.sp
+.LP
+Here is a configuration file called \fBibgen.conf\fR for an IB device driver
+that implements a generic IB driver. This file creates a node called
+\fBibgen\fR.
+.sp
+.in +2
+.nf
+ #
+ # Copyright 2002-2003 Sun Microsystems, Inc. All rights reserved.
+ # Use is subject to license terms.
+ #
+ #ident "@(#)ibgen.conf 1.3 03/05/01 SMI"
+ name="ibgen" parent="ib" unit-address="0";
+.fi
+.in -2
+
+.SH SEE ALSO
+.sp
+.LP
+.BR ib (4D),
+.BR ibtl (4D),
+.BR driver.conf (5),
+.BR ddi_prop_op (9F)
diff --git a/usr/src/man/man5/iconv.5 b/usr/src/man/man5/iconv.5
deleted file mode 100644
index ed4f9907f3..0000000000
--- a/usr/src/man/man5/iconv.5
+++ /dev/null
@@ -1,312 +0,0 @@
-.\"
-.\" Sun Microsystems, Inc. gratefully acknowledges The Open Group for
-.\" permission to reproduce portions of its copyrighted documentation.
-.\" Original documentation from The Open Group can be obtained online at
-.\" http://www.opengroup.org/bookstore/.
-.\"
-.\" The Institute of Electrical and Electronics Engineers and The Open
-.\" Group, have given us permission to reprint portions of their
-.\" documentation.
-.\"
-.\" In the following statement, the phrase ``this text'' refers to portions
-.\" of the system documentation.
-.\"
-.\" Portions of this text are reprinted and reproduced in electronic form
-.\" in the SunOS Reference Manual, from IEEE Std 1003.1, 2004 Edition,
-.\" Standard for Information Technology -- Portable Operating System
-.\" Interface (POSIX), The Open Group Base Specifications Issue 6,
-.\" Copyright (C) 2001-2004 by the Institute of Electrical and Electronics
-.\" Engineers, Inc and The Open Group. In the event of any discrepancy
-.\" between these versions and the original IEEE and The Open Group
-.\" Standard, the original IEEE and The Open Group Standard is the referee
-.\" document. The original Standard can be obtained online at
-.\" http://www.opengroup.org/unix/online.html.
-.\"
-.\" This notice shall appear on any product containing this material.
-.\"
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.\"
-.\"
-.\" Copyright 1989 AT&T
-.\" Portions Copyright (c) 1992, X/Open Company Limited. All Rights Reserved.
-.\" Copyright (c) 2001, Sun Microsystems, Inc. All Rights Reserved.
-.\"
-.TH ICONV 5 "Dec 5, 2001"
-.SH NAME
-iconv \- code set conversion tables
-.SH DESCRIPTION
-.sp
-.LP
-The following code set conversions are supported:
-.sp
-.in +2
-.nf
- Code Set Conversions Supported
-
-Code Symbol Target Code Symbol Target Output
-
-ISO 646 646 ISO 8859-1 8859 US ASCII
-ISO 646de 646de ISO 8859-1 8859 German
-ISO 646da 646da ISO 8859-1 8859 Danish
-ISO 646en 646en ISO 8859-1 8859 English ASCII
-ISO 646es 646es ISO 8859-1 8859 Spanish
-ISO 646fr 646fr ISO 8859-1 8859 French
-ISO 646it 646it ISO 8859-1 8859 Italian
-ISO 646sv 646sv ISO 8859-1 8859 Swedish
-ISO 8859-1 8859 ISO 646 646 7 bit ASCII
-ISO 8859-1 8859 ISO 646de 646de German
-ISO 8859-1 8859 ISO 646da 646da Danish
-ISO 8859-1 8859 ISO 646en 646en English ASCII
-ISO 8859-1 8859 ISO 646es 646es Spanish
-ISO 8859-1 8859 ISO 646fr 646fr French
-ISO 8859-1 8859 ISO 646it 646it Italian
-ISO 8859-1 8859 ISO 646sv 646sv Swedish
-ISO 8859-16 iso16 ISO 8859-2 iso2 ISO Latin 2
-ISO 8859-2 iso2 ISO 8859-16 iso16 ISO Latin 10
-ISO 8859-16 iso16 IBM 850 ibm850 IBM 850 code page
-ISO 8859-16 iso16 IBM 870 ibm870 IBM 870 code page
-ISO 8859-2 iso2 MS 1250 win2 Windows Latin 2
-ISO 8859-2 iso2 MS 852 dos2 MS-DOS Latin 2
-ISO 8859-2 iso2 Mazovia maz Mazovia
-IBM 850 ibm850 ISO 8859-16 iso16 ISO Latin 10
-IBM 870 ibm870 ISO 8859-16 iso16 ISO Latin 10
-MS 1250 win2 DHN dhn Dom Handlowy Nauki
-MS 852 dos2 ISO 8859-2 iso2 ISO Latin 2
-MS 852 dos2 MS 1250 win2 Windows Latin 2
-MS 852 dos2 Mazovia maz Mazovia
-MS 852 dos2 DHN dhn Dom Handlowy Nauki
-Mazovia maz ISO 8859-2 iso2 ISO Latin 2
-Mazovia maz MS 1250 win2 Windows Latin 2
-Mazovia maz MS 852 dos2 MS-DOS Latin 2
-Mazovia maz DHN dhn Dom Handlowy Nauki
-DHN dhn ISO 8859-2 iso2 ISO Latin 2
-DHN dhn MS 1250 win2 Windows Latin 2
-DHN dhn MS 852 dos2 MS-DOS Latin 2
-DHN dhn Mazovia maz Mazovia
-ISO 8859-5 iso5 KOI8-R koi8 KOI8-R
-ISO 8859-5 iso5 PC Cyrillic alt Alternative PC Cyrillic
-ISO 8859-5 iso5 MS 1251 win5 Windows Cyrillic
-ISO 8859-5 iso5 Mac Cyrillic mac Macintosh Cyrillic
-KOI8-R koi8 ISO 8859-5 iso5 ISO 8859-5 Cyrillic
-KOI8-R koi8 PC Cyrillic alt Alternative PC Cyrillic
-KOI8-R koi8 MS 1251 win5 Windows Cyrillic
-KOI8-R koi8 Mac Cyrillic mac Macintosh Cyrillic
-PC Cyrillic alt ISO 8859-5 iso5 ISO 8859-5 Cyrillic
-PC Cyrillic alt KOI8-R koi8 KOI8-R
-PC Cyrillic alt MS 1251 win5 Windows Cyrillic
-PC Cyrillic alt Mac Cyrillic mac Macintosh Cyrillic
-MS 1251 win5 ISO 8859-5 iso5 ISO 8859-5 Cyrillic
-MS 1251 win5 KOI8-R koi8 KOI8-R
-MS 1251 win5 PC Cyrillic alt Alternative PC Cyrillic
-MS 1251 win5 Mac Cyrillic mac Macintosh Cyrillic
-Mac Cyrillic mac ISO 8859-5 iso5 ISO 8859-5 Cyrillic
-Mac Cyrillic mac KOI8-R koi8 KOI8-R
-Mac Cyrillic mac PC Cyrillic alt Alternative PC Cyrillic
-Mac Cyrillic mac MS 1251 win5 Windows Cyrillic
-.fi
-.in -2
-.sp
-
-.SH CONVERSIONS
-.sp
-.LP
-The conversions are performed according to the tables contained in the manual
-pages cross-referenced in the \fBIndex of Conversion Code Tables\fR below.
-.sp
-
-.sp
-.TS
-box;
-c | c | c
-l | l | l .
-\fBIndex of Conversion Code Tables\fR
-_
-\fBCode\fR \fBTarget Code\fR \fBSee Manual Page\fR
-_
-ISO 646 ISO 8859-1 iconv_646 (5)
-_
-ISO 646de ISO 8859-1
-_
-ISO 646da ISO 8859-1
-_
-ISO 646en ISO 8859-1
-_
-ISO 646es ISO 8859-1
-_
-ISO 646fr ISO 8859-1
-_
-ISO 646it ISO 8859-1
-_
-ISO 646sv ISO 8859-1
-_
-ISO 8859-1 ISO 646 iconv_8859-1 (5)
-_
-ISO 8859-1 ISO 646de
-_
-ISO 8859-1 ISO 646da
-_
-ISO 8859-1 ISO 646en
-_
-ISO 8859-1 ISO 646es
-_
-ISO 8859-1 ISO 646fr
-_
-ISO 8859-1 ISO 646it
-_
-ISO 8859-1 ISO 646sv
-_
-ISO 8859-2 MS 1250 iconv_8859-2 (5)
-_
-ISO 8859-2 MS 852
-_
-ISO 8859-2 Mazovia
-_
-ISO 8859-2 DHN
-_
-MS 1250 ISO 8859-2 iconv_1250 (5)
-_
-MS 1250 MS 852
-_
-MS 1250 Mazovia
-_
-MS 1250 DHN
-_
-MS 852 ISO 8859-2 iconv_852 (5)
-_
-MS 852 MS 1250
-_
-MS 852 Mazovia
-_
-MS 852 DHN
-_
-Mazovia ISO 8859-2 iconv_maz (5)
-_
-Mazovia MS 1250
-_
-Mazovia MS 852
-_
-Mazovia DHN
-.TE
-
-.sp
-
-.sp
-.TS
-box;
-c | c | c
-l | l | l .
-\fBIndex of Conversion Code Tables\fR
-_
-\fBCode\fR \fBTarget Code\fR \fBSee Manual Page\fR
-_
-DHN ISO 8859-2 iconv_dhn (5)
-_
-DHN MS 1250
-_
-DHN MS 852
-_
-DHN Mazovia
-_
-ISO 8859-5 KOI8-R iconv_8859-5 (5)
-_
-ISO 8859-5 PC Cyrillic
-_
-ISO 8859-5 MS 1251
-_
-ISO 8859-5 Mac Cyrillic
-_
-KOI8-R ISO 8859-5 iconv_koi8-r (5)
-_
-KOI8-R PC Cyrillic
-_
-KOI8-R MS 1251
-_
-KOI8-R Mac Cyrillic
-_
-PC Cyrillic ISO 8859-5 iconv_pc_cyr (5)
-_
-PC Cyrillic KOI8-R
-_
-PC Cyrillic MS 1251
-_
-PC Cyrillic Mac Cyrillic
-_
-MS 1251 ISO 8859-5 iconv_1251 (5)
-_
-MS 1251 KOI8-R
-_
-MS 1251 PC Cyrillic
-_
-MS 1251 Mac Cyrillic
-_
-Mac Cyrillic ISO 8859-5 iconv_mac_cyr (5)
-_
-Mac Cyrillic KOI8-R
-_
-Mac Cyrillic PC Cyrillic
-_
-Mac Cyrillic MS 1251
-.TE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/iconv/*.so\fR\fR
-.ad
-.sp .6
-.RS 4n
-conversion modules
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/iconv/*.t\fR\fR
-.ad
-.sp .6
-.RS 4n
-Conversion tables.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/iconv/geniconvtbl/binarytables/*.bt\fR\fR
-.ad
-.sp .6
-.RS 4n
-Conversion binary tables.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/iconv/iconv_data\fR\fR
-.ad
-.sp .6
-.RS 4n
-List of conversions supported by conversion tables.
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBiconv\fR(1), \fBiconv\fR(3C), \fBiconv_1250\fR(5), \fBiconv_1251\fR(5),
-\fBiconv_646\fR(5), \fBiconv_852\fR(5), \fBiconv_8859-1\fR(5),
-\fBiconv_8859-2\fR(5), \fBiconv_8859-5\fR(5), \fBiconv_dhn\fR(5),
-\fBiconv_koi8-r\fR(5), \fBiconv_mac_cyr\fR(5), \fBiconv_maz\fR(5),
-\fBiconv_pc_cyr\fR(5), \fBiconv_unicode\fR(5)
diff --git a/usr/src/man/man5/iconv_unicode.5 b/usr/src/man/man5/iconv_unicode.5
deleted file mode 100644
index 3f59d2dbb6..0000000000
--- a/usr/src/man/man5/iconv_unicode.5
+++ /dev/null
@@ -1,323 +0,0 @@
-'\" te
-.\" Copyright (c) 1997, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH ICONV_UNICODE 5 "Apr 18, 1997"
-.SH NAME
-iconv_unicode \- code set conversion tables for Unicode
-.SH DESCRIPTION
-.sp
-.LP
-The following code set conversions are supported:
-.sp
-.in +2
-.nf
- CODE SET CONVERSIONS SUPPORTED
- ------------------------------
- FROM Code Set TO Code Set
- Code FROM Target Code TO
- Filename Filename
- Element Element
-
-ISO 8859-1 (Latin 1) 8859-1 UTF-8 UTF-8
-ISO 8859-2 (Latin 2) 8859-2 UTF-8 UTF-8
-ISO 8859-3 (Latin 3) 8859-3 UTF-8 UTF-8
-ISO 8859-4 (Latin 4) 8859-4 UTF-8 UTF-8
-ISO 8859-5 (Cyrillic) 8859-5 UTF-8 UTF-8
-ISO 8859-6 (Arabic) 8859-6 UTF-8 UTF-8
-ISO 8859-7 (Greek) 8859-7 UTF-8 UTF-8
-ISO 8859-8 (Hebrew) 8859-8 UTF-8 UTF-8
-ISO 8859-9 (Latin 5) 8859-9 UTF-8 UTF-8
-ISO 8859-10 (Latin 6) 8859-10 UTF-8 UTF-8
-Japanese EUC eucJP UTF-8 UTF-8
-Chinese/PRC EUC
-(GB 2312-1980) gb2312 UTF-8 UTF-8
-ISO-2022 iso2022 UTF-8 UTF-8
-Korean EUC ko_KR-euc Korean UTF-8 ko_KR-UTF-8
-ISO-2022-KR ko_KR-iso2022-7 Korean UTF-8 ko_KR_UTF-8
-Korean Johap
-(KS C 5601-1987) ko_KR-johap Korean UTF-8 ko_KR-UTF-8
-Korean Johap
-(KS C 5601-1992) ko_KR-johap92 Korean UTF-8 ko_KR-UTF-8
-Korean UTF-8 ko_KR-UTF-8 Korean EUC ko_KR-euc
-Korean UTF-8 ko_KR-UTF-8 Korean Johap ko_KR-johap
- (KS C 5601-1987)
-Korean UTF-8 ko_KR-UTF-8 Korean Johap ko_KR-johap92
- (KS C 5601-1992)
-KOI8-R (Cyrillic) KOI8-R UCS-2 UCS-2
-KOI8-R (Cyrillic) KOI8-R UTF-8 UTF-8
-PC Kanji (SJIS) PCK UTF-8 UTF-8
-PC Kanji (SJIS) SJIS UTF-8 UTF-8
-UCS-2 UCS-2 KOI8-R (Cyrillic) KOI8-R
-UCS-2 UCS-2 UCS-4 UCS-4
-.fi
-.in -2
-.sp
-
-.sp
-.in +2
-.nf
- CODE SET CONVERSIONS SUPPORTED
- ------------------------------
- FROM Code Set TO Code Set
- Code FROM Target Code TO
- Filename Filename
- Element Element
-
-UCS-2 UCS-2 UTF-7 UTF-7
-UCS-2 UCS-2 UTF-8 UTF-8
-UCS-4 UCS-4 UCS-2 UCS-2
-UCS-4 UCS-4 UTF-16 UTF-16
-UCS-4 UCS-4 UTF-7 UTF-7
-UCS-4 UCS-4 UTF-8 UTF-8
-UTF-16 UTF-16 UCS-4 UCS-4
-UTF-16 UTF-16 UTF-8 UTF-8
-UTF-7 UTF-7 UCS-2 UCS-2
-UTF-7 UTF-7 UCS-4 UCS-4
-UTF-7 UTF-7 UTF-8 UTF-8
-UTF-8 UTF-8 ISO 8859-1 (Latin 1) 8859-1
-UTF-8 UTF-8 ISO 8859-2 (Latin 2) 8859-2
-UTF-8 UTF-8 ISO 8859-3 (Latin 3) 8859-3
-UTF-8 UTF-8 ISO 8859-4 (Latin 4) 8859-4
-UTF-8 UTF-8 ISO 8859-5 (Cyrillic) 8859-5
-UTF-8 UTF-8 ISO 8859-6 (Arabic) 8859-6
-UTF-8 UTF-8 ISO 8859-7 (Greek) 8859-7
-UTF-8 UTF-8 ISO 8859-8 (Hebrew) 8859-8
-UTF-8 UTF-8 ISO 8859-9 (Latin 5) 8859-9
-UTF-8 UTF-8 ISO 8859-10 (Latin 6) 8859-10
-UTF-8 UTF-8 Japanese EUC eucJP
-UTF-8 UTF-8 Chinese/PRC EUC gb2312
- (GB 2312-1980)
-UTF-8 UTF-8 ISO-2022 iso2022
-UTF-8 UTF-8 KOI8-R (Cyrillic) KOI8-R
-UTF-8 UTF-8 PC Kanji (SJIS) PCK
-UTF-8 UTF-8 PC Kanji (SJIS) SJIS
-UTF-8 UTF-8 UCS-2 UCS-2
-UTF-8 UTF-8 UCS-4 UCS-4
-UTF-8 UTF-8 UTF-16 UTF-16
-UTF-8 UTF-8 UTF-7 UTF-7
-UTF-8 UTF-8 Chinese/PRC EUC zh_CN.euc
- (GB 2312-1980)
-.fi
-.in -2
-.sp
-
-.sp
-.in +2
-.nf
- CODE SET CONVERSIONS SUPPORTED
- ------------------------------
- FROM Code Set TO Code Set
- Code FROM Target Code TO
- Filename Filename
- Element Element
-
-UTF-8 UTF-8 ISO 2022-CN zh_CN.iso2022-7
-UTF-8 UTF-8 Chinese/Taiwan Big5 zh_TW-big5
-UTF-8 UTF-8 Chinese/Taiwan EUC zh_TW-euc
- (CNS 11643-1992)
-UTF-8 UTF-8 ISO 2022-TW zh_TW-iso2022-7
-Chinese/PRC EUC zh_CN.euc UTF-8 UTF-8
-(GB 2312-1980)
-ISO 2022-CN zh_CN.iso2022-7 UTF-8 UTF-8
-Chinese/Taiwan Big5 zh_TW-big5 UTF-8 UTF-8
-Chinese/Taiwan EUC zh_TW-euc UTF-8 UTF-8
-(CNS 11643-1992)
-ISO 2022-TW zh_TW-iso2022-7 UTF-8 UTF-8
-.fi
-.in -2
-.sp
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRThe library module filename
-.sp
-.LP
-In the conversion library, \fB/usr/lib/iconv\fR (see \fBiconv\fR(3C)), the
-library module filename is composed of two symbolic elements separated by the
-percent sign (\fB%\fR). The first symbol specifies the code set that is being
-converted; the second symbol specifies the \fItarget code\fR, that is, the code
-set to which the first one is being converted.
-
-.sp
-.LP
-In the conversion table above, the first symbol is termed the "FROM Filename
-Element". The second symbol, representing the target code set, is the "TO
-Filename Element".
-
-.sp
-.LP
-For example, the library module filename to convert from the \fIKorean\fR
-\fIEUC\fR code set to the \fIKorean\fR \fIUTF-8\fR code set is
-
-.sp
-.LP
-\fBko_KR-euc%ko_KR-UTF-8\fR
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/iconv/*.so\fR\fR
-.ad
-.RS 23n
-conversion modules
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBiconv\fR(1), \fBiconv\fR(3C), \fBiconv\fR(5)
-.sp
-.LP
-Chernov, A., \fIRegistration of a Cyrillic Character Set\fR, RFC 1489, RELCOM
-Development Team, July 1993.
-.sp
-.LP
-Chon, K., H. Je Park, and U. Choi, \fIKorean Character Encoding for Internet
-Messages\fR, RFC 1557, Solvit Chosun Media, December 1993.
-.sp
-.LP
-Goldsmith, D., and M. Davis, \fIUTF-7 - A Mail-Safe Transformation Format of
-Unicode\fR, RFC 1642, Taligent, Inc., July 1994.
-.sp
-.LP
-Lee, F., \fIHZ - A Data Format for Exchanging Files of\fR \fIArbitrarily Mixed
-Chinese and ASCII characters\fR, RFC 1843, Stanford University, August 1995.
-.sp
-.LP
-Murai, J., M. Crispin, and E. van der Poel, \fIJapanese Character Encoding for
-Internet Messages\fR, RFC 1468, Keio University, Panda Programming, June 1993.
-.sp
-.LP
-Nussbacher, H., and Y. Bourvine, \fIHebrew Character Encoding for Internet
-Messages\fR, RFC 1555, Israeli Inter-University, Hebrew University, December
-1993.
-.sp
-.LP
-Ohta, M., \fICharacter Sets ISO-10646 and ISO-10646-J-1\fR, RFC 1815, Tokyo
-Institute of Technology, July 1995.
-.sp
-.LP
-Ohta, M., and K. Handa, \fIISO-2022-JP-2: Multilingual Extension of
-ISO-2022-JP\fR, RFC 1554, Tokyo Institute of Technology, December 1993.
-.sp
-.LP
-Reynolds, J., and J. Postel, \fIASSIGNED NUMBERS\fR, RFC 1700, University of
-Southern California/Information Sciences Institute, October 1994.
-.sp
-.LP
-Simonson, K., \fICharacter Mnemonics & Character Sets\fR, RFC 1345, Rationel
-Almen Planlaegning, June 1992.
-.sp
-.LP
-Spinellis, D., \fIGreek Character Encoding for Electronic Mail Messages\fR, RFC
-1947, SENA S.A., May 1996.
-.sp
-.LP
-The Unicode Consortium, \fIThe Unicode Standard\fR, Version 2.0, Addison Wesley
-Developers Press, July 1996.
-.sp
-.LP
-Wei, Y., Y. Zhang, J. Li, J. Ding, and Y. Jiang, \fIASCII Printable
-Characters-Based Chinese Character Encoding\fR \fIfor Internet Messages\fR, RFC
-1842, AsiaInfo Services Inc., Harvard University, Rice University, University
-of Maryland, August 1995.
-.sp
-.LP
-Yergeau, F., \fIUTF-8, a transformation format of Unicode and ISO 10646\fR, RFC
-2044, Alis Technologies, October 1996.
-.sp
-.LP
-Zhu, H., D. Hu, Z. Wang, T. Kao, W. Chang, and M. Crispin, \fIChinese Character
-Encoding for Internet Messages\fR, RFC 1922, Tsinghua University, China
-Information Technology Standardization Technical Committee (CITS), Institute
-for Information Industry (III), University of Washington, March 1996.
-.SH NOTES
-.sp
-.LP
-ISO 8859 character sets using Latin alphabetic characters are distinguished as
-follows:
-.sp
-.ne 2
-.na
-\fB\fBISO\fR \fB8859-1\fR \fB(Latin\fR \fB1)\fR\fR
-.ad
-.RS 25n
-For most West European languages, including:
-.sp
-
-.sp
-.TS
-l l l
-l l l .
-Albanian Finnish Italian
-Catalan French Norwegian
-Danish German Portuguese
-Dutch Galician Spanish
-English Irish Swedish
-Faeroese Icelandic
-.TE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBISO\fR \fB8859-2\fR \fB(Latin\fR \fB2)\fR\fR
-.ad
-.RS 25n
-For most Latin-written Slavic and Central European languages:
-.sp
-
-.sp
-.TS
-l l l
-l l l .
-Czech Polish Slovak
-German Rumanian Slovene
-Hungarian Croatian
-.TE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBISO\fR \fB8859-3\fR \fB(Latin\fR \fB3)\fR\fR
-.ad
-.RS 25n
-Popularly used for Esperanto, Galician, Maltese, and Turkish.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBISO\fR \fB8859-4\fR \fB(Latin\fR \fB4)\fR\fR
-.ad
-.RS 25n
-Introduces letters for Estonian, Latvian, and Lithuanian. It is an incomplete
-predecessor of ISO 8859-10 (Latin 6).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBISO\fR \fB8859-9\fR \fB(Latin\fR \fB5)\fR\fR
-.ad
-.RS 25n
-Replaces the rarely needed Icelandic letters in ISO 8859-1 (Latin 1) with the
-Turkish ones.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBISO\fR \fB8859-10\fR \fB(Latin\fR \fB6)\fR\fR
-.ad
-.RS 25n
-Adds the last Inuit (Greenlandic) and Sami (Lappish) letters that were not
-included in ISO 8859-4 (Latin 4) to complete coverage of the Nordic area.
-.RE
-
diff --git a/usr/src/man/man5/ieee802.11.5 b/usr/src/man/man5/ieee802.11.5
deleted file mode 100644
index d0b28ca077..0000000000
--- a/usr/src/man/man5/ieee802.11.5
+++ /dev/null
@@ -1,140 +0,0 @@
-'\" te
-.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH IEEE802.11 5 "Nov 28, 2006"
-.SH NAME
-ieee802.11 \- 802.11 kernel statistics
-.SH DESCRIPTION
-.sp
-.LP
-This page describes the kernel statistics that can be used to monitor
-attributes specific to the 802.11 physical layer. These statistics can be
-retrieved using \fBkstat\fR(1M). Not all 802.11 devices will support all
-statistics.
-.sp
-.ne 2
-.na
-\fB\fBtx_frags\fR\fR
-.ad
-.RS 16n
-Count of data and management fragments transmitted.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrx_frags\fR\fR
-.ad
-.RS 16n
-Count of data and management fragments received.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrx_dups\fR\fR
-.ad
-.RS 16n
-Count of duplicate frames received. Duplicates are determined by the sequence
-control field.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmcast_tx\fR\fR
-.ad
-.RS 16n
-Count of broadcast and multicast frames transmitted.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmcast_rx\fR\fR
-.ad
-.RS 16n
-Count of broadcast and multicast frames received.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBtx_failed\fR\fR
-.ad
-.RS 16n
-Count of frames that could not be transmitted due to the retransmission limit
-being reached.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBtx_retrans\fR\fR
-.ad
-.RS 16n
-Count of frames successfully retransmitted after one or more retransmissions.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBtx_reretrans\fR\fR
-.ad
-.RS 16n
-Count of frames successfully retransmitted after more than one retransmission.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrts_success\fR\fR
-.ad
-.RS 16n
-Count of times a \fBCTS\fR was received in response to an \fBRTS\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrts_failure\fR\fR
-.ad
-.RS 16n
- Count of times a \fBCTS\fR was not received in response to an \fBRTS\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBack_failure\fR\fR
-.ad
-.RS 16n
-Count of times an \fBACK\fR was expected but was not received.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfcs_errors\fR\fR
-.ad
-.RS 16n
-Count of frames received with \fBFCS\fR errors.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBwep_errors\fR\fR
-.ad
-.RS 16n
-Count of frames received with the \fBWEP\fR bit set but that either should not
-have been encrypted or that were discarded due to \fBWEP\fR not being
-supported.
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBkstat\fR(1M)
diff --git a/usr/src/man/man5/ieee802.3.5 b/usr/src/man/man5/ieee802.3.5
deleted file mode 100644
index a32230c1f0..0000000000
--- a/usr/src/man/man5/ieee802.3.5
+++ /dev/null
@@ -1,555 +0,0 @@
-.\" Copyright 2014 Garrett D'Amore <garrett@damore.org>
-.\" Copyright 2016 Joyent, Inc.
-.\" Redistribution and use in source and binary forms, with or without
-.\" modification, are permitted provided that the following conditions
-.\" are met:
-.\" 1. Redistributions of source code must retain the above copyright
-.\" notice, this list of conditions and the following disclaimer.
-.\" 2. Redistributions in binary form must reproduce the above copyright
-.\" notice, this list of conditions and the following disclaimer in the
-.\" documentation and/or other materials provided with the distribution.
-.\"
-.\" THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER AND CONTRIBUTORS
-.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-.\" LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
-.\" FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
-.\" COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
-.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
-.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
-.\" USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
-.\" ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
-.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE
-.\"
-.Dd "Nov 23, 2016"
-.Dt IEEE802.3 5
-.Os
-.Sh NAME
-.Nm ieee802.3
-.Nd IEEE 802.3 Ethernet parameters and statistics
-.Sh DESCRIPTION
-The IEEE 802.3 standard specifies the details for Ethernet
-networking.
-This page describes the various statistics and tunables that device drivers
-supporting Ethernet commonly offer.
-.
-Note that not every device or driver supports every one of these
-values, and many devices offer additional statistics and tunables that
-are specific to that hardware.
-See the device driver's documentation for those specific details.
-.
-.Lp
-Values that are statistics are visible
-.Xr kstat 1M ,
-whereas properties are visible using the
-.Xr dladm 1M
-.Sy show-linkprop
-subcommand.
-Tunables are properties that can be changed using the
-.Xr dladm 1M
-.Sy set-linkprop
-subcommand.
-A more useful summary of current operational state can be seen with the
-.Xr dladm 1M
-.Sy show-ether
-subcommand.
-.
-.Ss Statistics
-The following statistics are accessible with
-.Xr kstat 1M .
-Note that some statistics are available in both 32- and 64-bit counters,
-in which case the name of the 64 bit statistic will be the same as the
-32-bit, but with
-.Dq Sy 64
-appended.
-For example,
-.Sy ipackets64
-is the 64-bit version of the
-.Sy ipackets
-statistic.
-These are indicated with the special suffix
-.Op Sy 64
-in the table below.
-.
-.Bl -tag -width tx_late_collisions
-.It Sy adv_cap_1000fdx
-Advertises 1000 Mbps full-duplex support.
-.It Sy adv_cap_1000hdx
-Advertises 1000 Mbps half-duplex support.
-.It Sy adv_cap_100fdx
-Advertises 100 Mbps full-duplex support.
-.It Sy adv_cap_100gfdx
-Advertises 100 Gbps support.
-.It Sy adv_cap_100hdx
-Advertises 100 Mbps half-duplex support.
-.It Sy adv_cap_100T4
-Advertises 100BASE-T4 support.
-.It Sy adv_cap_10fdx
-Advertises 10 Mbps full-duplex support.
-.It Sy adv_cap_10gfdx
-Advertises 10 Gbps support.
-.It Sy adv_cap_10hdx
-Advertises 10 Mbps half-duplex support.
-.It Sy adv_cap_2500fdx
-Advertises 2.5 Gbps support.
-.It Sy adv_cap_50gfdx
-Advertises 50 Gbps support.
-.It Sy adv_cap_40gfdx
-Advertises 40 Gbps support.
-.It Sy adv_cap_25gfdx
-Advertises 25 Gbps support.
-.It Sy adv_cap_5000fdx
-Advertises 5 Gbps support.
-.It Sy adv_cap_autoneg
-Advertises auto-negotiation support.
-.It Sy adv_cap_asmpause
-Advertises asymmetric flow control support.
-.It Sy adv_cap_pause
-Advertises flow control support.
-.It Sy adv_rem_fault
-Remote fault status sent to peer.
-.It Sy align_errors
-Mis-aligned frames received.
-.It Sy brdcstrcv
-Broadcast frames received.
-.It Sy brdcstxmt
-Broadcast frames transmitted.
-.It Sy cap_1000fdx
-Device supports 1000 Mbps full-duplex.
-.It Sy cap_1000hdx
-Device supports 1000 Mbps half-duplex.
-.It Sy cap_100fdx
-Device supports 100 Mbps full-duplex.
-.It Sy cap_100gfdx
-Device supports 100 Gbps.
-.It Sy cap_100hdx
-Device supports 100 Mbps half-duplex.
-.It Sy cap_100T4
-Device supports 100BASE-T4.
-.It Sy cap_10fdx
-Device supports 10 Mbps full-duplex.
-.It Sy cap_10gfdx
-Device supports 10 Gpbs.
-.It Sy cap_10hdx
-Device supports 10 Mbps half-duplex.
-.It Sy cap_2500fdx
-Device supports 2.5 Gbps.
-.It Sy cap_50gfdx
-Device supports 50 Gpbs.
-.It Sy cap_40gfdx
-Device supports 40 Gpbs.
-.It Sy cap_25gfdx
-Device supports 25 Gpbs.
-.It Sy cap_5000fdx
-Device supports 5 Gbps.
-.It Sy cap_asmpause
-Device supports asymmetric flow control.
-.It Sy cap_autoneg
-Device supports auto-negotiation.
-.It Sy cap_pause
-Device supports symmetric flow control.
-.It Sy cap_rem_fault
-Device supports remote fault notification.
-.It Sy carrier_errors
-Frames dropped due to loss of link.
-.It Sy collisions
-Collisions.
-.It Sy defer_xmts
-Transmits deferred due to link activity.
-.It Sy ex_collisions
-Frames dropped due to too many collisions.
-.It Sy fcs_errors
-Frames received with bad frame checksum.
-.It Sy first_collisions
-Frames with at least one collision.
-.It Sy ierrors
-Receive errors.
-.It Sy ifspeed
-Link speed in bits per second.
-.It Sy ipackets Ns Op Sy 64
-Frames received successfully.
-.It Sy jabber_errors
-Jabber errors.
-.It Sy link_asmpause
-Asymmetric flow control; works together with
-.Sy link_pause .
-See the description for it below.
-.It Sy link_autoneg
-Link was auto-negotiated.
-.It Sy link_duplex
-Link duplex status, values as follows:
-.Bl -column "0" infinity
-.It 0 Ta Unknown.
-.It 1 Ta Half-duplex.
-.It 2 Ta Full-duplex.
-.El
-.It Sy link_pause
-Link flow control available; works together with
-.Sy link_asmpause .
-The meanings of these bits are:
-.Bl -column "pause" "asmpause"
-.It Sy pause Ta Sy asmpause Ta Sy meaning
-.It 0 Ta 0 Ta "No flow control."
-.It 1 Ta 0 Ta Symmetric flow control.
-.It 0 Ta 1 Ta Honor received pause frames.
-.It 1 Ta 1 Ta Send pause frames when congested.
-.El
-.It Sy link_state
-Link state; 0 for down, 1 for up.
-.It Sy link_up
-Link is up if 1.
-.It Sy lp_cap_1000fdx
-Peer supports 1000 Mbps full-duplex.
-.It Sy lp_cap_1000hdx
-Peer supports 1000 Mbps half-duplex.
-.It Sy lp_cap_100fdx
-Peer supports 100 Mbps full-duplex.
-.It Sy lp_cap_100gfdx
-Peer supports 100 Gbps full-duplex.
-.It Sy lp_cap_100hdx
-Peer supports 100 Mbps half-duplex.
-.It Sy lp_cap_100T4
-Peer supports 100BASE-T4.
-.It Sy lp_cap_10fdx
-Peer supports 10 Mbps full-duplex.
-.It Sy lp_cap_10gfdx
-Peer supports 10 Gbps.
-.It Sy lp_cap_10hdx
-Peer supports 10 Mbps half-duplex.
-.It Sy lp_cap_2500fdx
-Peer supports 2.5 Gbps.
-.It Sy lp_cap_5000fdx
-Peer supports 5 Gbps.
-.It Sy lp_cap_50gfdx
-Peer supports 50 Gbps.
-.It Sy lp_cap_40gfdx
-Peer supports 40 Gbps.
-.It Sy lp_cap_25gfdx
-Peer supports 25 Gbps.
-.It Sy lp_cap_asmpause
-Peer supports asymmetric flow control.
-.It Sy lp_cap_autoneg
-Peer supports auto-negotiation.
-.It Sy lp_cap_pause
-Peer advertises flow control support.
-.It Sy lp_rem_fault
-Peer announces a remote fault.
-.It Sy macrv_errors
-Generic receive errors.
-.It Sy macxmt_errors
-Generic transmit errors.
-.It Sy multi_collisions
-Frames with more than one collision.
-.It Sy multircv
-Multicast frames received.
-.It Sy multixmt
-Multicast frames transmitted.
-.It Sy norcvbuf
-Receive frames dropped due to lack of resources.
-.It Sy noxmtbuf
-Transmit frames dropped due to lack of resources.
-.It Sy obytes Ns Op Sy 64
-Bytes (octets) transmitted successfully.
-.It Sy oerrors
-Transmit errors.
-.It Sy oflo
-Overflow errors.
-.It Sy opackets Ns Op Sy 64
-Frames successfully transmitted.
-.It Sy promisc
-Interface is in promiscuous mode.
-.It Sy rbytes Ns Op Sy 64
-Bytes (octets) received successfully.
-.It Sy runt_errors
-Frames received that were too short.
-.It Sy sqe_errors
-Squelch errors.
-.It Sy toolong_errors
-Frames received that were too long.
-.It Sy tx_late_collisions
-Late collisions on transmit.
-.It Sy uflo
-Underflow errors.
-.It Sy unknowns
-Frames received with no local recipient.
-.It Sy xcvr_addr
-Transceiver address.
-.It Sy xcvr_id
-Transceiver vendor and device ID.
-.It Sy xcvr_inuse
-Identifies the type of transceiver in use.
-Values are as follows:
-.Bl -column "0"
-.It 0 Ta Unknown or undefined.
-.It 1 Ta None.
-.It 2 Ta 10 Mbps
-.It 3 Ta 100BASE-T4
-.It 4 Ta 100BASE-X
-.It 5 Ta 100BASE-T2
-.It 6 Ta 1000BASE-X
-.It 7 Ta 1000BASE-T
-.El
-.El
-.Ss Properties
-The following parameters are accessible with
-.Xr dladm 1M .
-Some of these are normally read-only.
-Other properties that are not specific to IEEE 802.3 / Ethernet links are also
-available via
-.Xr dladm 1M ,
-and are documented in its man page rather than here.
-.
-.Bl -tag -width adv_1000hdx_cap
-.It Sy speed
-Link speed, in Mbps per second (dladm only).
-.It Sy duplex
-Link duplex, either "full" or "half".
-.It Sy state
-Link state, either "up" or "down".
-.It Sy mtu
-Maximum link frame size in bytes.
-See
-.Sx Jumbo Frames .
-.It Sy flowctrl
-Flow control setting, one of \(dqno\(dq, \(dqtx\(dq, \(dqrx\(dq, or \(dqbi\(dq.
-See
-.Sx Flow Control .
-.It Sy adv_10gfdx_cap
-Advertising 10 Gbps support.
-.It Sy en_10gfdx_cap
-Enable 10 Gbps support.
-.
-.It Sy adv_1000fdx_cap
-Advertising 1000 Mbps full-duplex support.
-.It Sy en_1000fdx_cap
-Enable 1000 Mbps full-duplex.
-.
-.It Sy adv_1000hdx_cap
-Advertising 1000 Mbps half-duplex support.
-.It Sy en_1000hdx_cap
-Enable 1000 Mbps half-duplex.
-.
-.It Sy adv_100fdx_cap
-Advertising 100 Mbps full-duplex support.
-.It Sy en_100fdx_cap
-Enable 100 Mbps full-duplex.
-.
-.It Sy adv_100hdx_cap
-Advertising 100 Mbps half-duplex support.
-.It Sy en_100hdx_cap
-Enable 100 Mbps half-duplex.
-.
-.It Sy adv_10fdx_cap
-Advertising 10 Mbps full-duplex support.
-.It Sy en_10fhdx_cap
-Enable 100 Mbps full-duplex.
-.
-.It Sy adv_10hdx_cap
-Advertising 10 Mbps half-duplex support.
-.It Sy en_10fhdx_cap
-Enable 10 Mbps half-duplex.
-.El
-.Ss Auto-negotiation
-With modern devices, auto-negotiation is normally handled automatically.
-With 10 Gbps and 1000 Gbps, it is mandatory (10GBASE-T also requires full-duplex
-operation).
-It is also
-.Em strongly
-recommended for use whenever possible; without auto-negotiation the link
-will usually not operate unless both partners are configured to use the
-same link mode.
-.Lp
-Auto-negotiation, when enabled, takes place by comparing the local capabilities
-that have been advertised (which must also be supported by the local device),
-with the capabilities that have been advertised by the link partner (peer).
-.
-The first of the following modes that is supported by both partners is
-selected as the link negotiation result:
-.Lp
-.Bl -bullet -offset indent -compact
-.It
-10 Gbps (10gfdx)
-.It
-1000 Mbps full-duplex (1000fdx)
-.It
-1000 Mbps half-duplex (1000hdx)
-.It
-100 Mbps full-duplex (100fdx)
-.It
-100BASE-T4 (100T4)
-.It
-100 Mbps half-duplex (100hdx)
-.It
-10 Mbps full-duplex (10fdx)
-.It
-10 Mbps half-duplex (10hdx)
-.El
-.Lp
-Advertisement of these modes can be enabled or disabled by setting the
-appropriate
-.Sy en_
-property in
-.Xr dladm 1M .
-.Lp
-Auto-negotiation may also be disabled, by setting the
-.Sy adv_autoneg_cap
-property to 0.
-In this case, the highest enabled link mode (using the above list) is
-.Dq forced
-for the link.
-.Ss Flow Control
-Link layer flow control is available on many modern devices, and is mandatory
-for operation at 10 Gbps.
-It requires that the link be auto-negotiated, and that the link be full-duplex,
-in order to function.
-.Lp
-Flow control is applied when a receiver becomes congested.
-In this case the receiver can send a special frame, called a pause frame, to
-request its partner cease transmitting for a short period of time.
-.Lp
-Flow control can be said to be either symmetric, in which case both partners
-can send and honor pause frames, or asymmetric, in which case one partner
-may not transmit pause frames.
-.Lp
-The flow control mode used is driven by the
-.Sy flowctrl
-property.
-It has the following meanings:
-.Lp
-.Bl -column -compact -offset indent Dv
-.It \(dqno\(dq Ta Neither send, nor honor pause frames.
-.It \(dqtx\(dq Ta Send pause frames, provided that the peer can support them,
-but do not honor them.
-.It \(dqrx\(dq Ta Receive and honor pause frames.
-.It \(dqbi\(dq Ta Both send and receive (and honor) pause frames.
-.El
-.Lp
-The statistics for flow control
-.Po Sy adv_cap_pause , adv_cap_asmpause , lp_cap_pause , lp_cap_asmpause ,
-.Sy link_pause ,
-and
-.Sy link_asmpause
-.Pc
-are based on the properties exchanged in the auto-negotiation and are
-confusing as a result.
-Administrators are advised to use the
-.Sy flowctrl
-property instead.
-.
-.Ss Jumbo Frames
-The IEEE 802.3 standard specifies a standard frame size of 1518 bytes,
-which includes a 4-byte frame checksum, a 14-byte header, and 1500 bytes
-of payload.
-Most devices support larger frame sizes than this, and when all possible parties
-on the same local network can do so, it may be advantageous to choose a larger
-frame size; 9000 bytes is the most common option, as it allows a transport layer
-to convey 8 KB (8192) of data, while leaving room for various link, network, and
-transport layer headers.
-.Lp
-Note that the use of frames carrying more than 1500 bytes of payload is
-not standardized, even though it is common practice.
-.Lp
-The
-.Sy mtu
-property is used to configure the frame size.
-Note that this is the size of the payload, and excludes the preamble, checksum,
-and header.
-It also excludes the tag for devices that support tagging (see
-.Sx Virtual LANs
-below).
-.Lp
-Care must be taken to ensure that all communication parties agree on the same
-size, or communication may cease to function properly.
-.Lp
-Note that the
-.Sy mtu
-property refers to the link layer property.
-It may be necessary to configure upper layer protocols such as IP to use a
-different size when this changes.
-See
-.Xr ifconfig 1M .
-.
-.Ss Virtual LANs
-Most devices support virtual LANs (and also priority control tagging) though
-the use of a 4-byte tag inserted between the frame header and payload.
-The details of configuration of this are covered in the
-.Xr dladm 1M
-manual.
-.
-.Ss Data Link Provider Interface (DLPI) Details
-.
-The correct method for applications to access Ethernet devices directly
-is to use the DLPI.
-See
-.Xr dlpi 7P
-and
-.Xr libdlpi 3LIB
-for further information.
-.Lp
-The following DLPI parameters are presented to applications.
-.Bl -column -offset indent "Broadcast address"
-.It Maximum SDU Ta 1500 (or larger, as determined by the Sy mtu No property.)
-.It Minimum SDU Ta 0
-.It Address length Ta 6
-.It MAC type Ta Dv DL_ETHER
-.It SAP length Ta \(mi2
-.It Service mode Ta Dv DL_CLDLS
-.It Broadcast address Ta Li ff:ff:ff:ff:ff:ff No (6 bytes with all bits set)
-.El
-.Lp
-Note that if the application binds to SAP of 0, then standard IEEE 802.3
-mode is assumed and the frame length is stored in place of the Ethernet type.
-Frames that arrive with the type field set to 1500 or less, are delivered
-to applications that bind to SAP 0.
-.Lp
-Ethernet drivers on the support both DLPI style 1 and style 2 operation.
-Additionally, it is possible to configure provide
-.Dq vanity
-names to interfaces using the
-.Xr dladm 1M
-.Sy rename-link
-subcommand.
-Such vanity names are only accessible using DLPI style 1.
-.Sh NOTES
-There may be other mechanisms available to configure link layer properties.
-Historically the
-.Xr ndd 1M
-command, and
-.Xr driver.conf 4
-files could be used to do this.
-These methods are deprecated in favor of
-.Xr dladm 1M
-properties.
-.
-.Sh INTERFACE STABILITY
-When present, the statistics and properties presented here
-are
-.Sy Committed .
-However, note that not every Ethernet device supports all of these,
-and some devices may support additional statistics and properties.
-.Lp
-The DLPI and IEEE 802.3 itself are
-.Sy Standard .
-.Sh SEE ALSO
-.Xr dladm 1M ,
-.Xr ifconfig 1M ,
-.Xr kstat 1M ,
-.Xr ndd 1M ,
-.Xr netstat 1M ,
-.Xr libdlpi 3LIB ,
-.Xr driver.conf 4 ,
-.Xr dlpi 7P
-.Rs
-.%T IEEE 802.3: Ethernet
-.%Q IEEE Standards Association
-.Re
-.Rs
-.%B Data Link Provider Interface (DLPI)
-.%Q The Open Group
-.%D 1997
-.Re
-.Rs
-.%B STREAMs Programming Guide
-.%Q Sun Microsystems, Inc.
-.%D January 2005
-.Re
diff --git a/usr/src/man/man5/ike.config.5 b/usr/src/man/man5/ike.config.5
new file mode 100644
index 0000000000..e4fd46e85b
--- /dev/null
+++ b/usr/src/man/man5/ike.config.5
@@ -0,0 +1,1202 @@
+'\" te
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright (c) 2015, Circonus, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH IKE.CONFIG 5 "November 22, 2021"
+.SH NAME
+ike.config \- configuration file for IKE policy
+.SH SYNOPSIS
+.nf
+\fB/etc/inet/ike/config\fR
+.fi
+
+.SH DESCRIPTION
+The \fB/etc/inet/ike/config\fR file contains rules for matching inbound IKE
+requests. It also contains rules for preparing outbound \fBIKE\fR requests.
+.sp
+.LP
+You can test the syntactic correctness of an \fB/etc/inet/ike/config\fR file by
+using the \fB-c\fR or \fB-f\fR options of \fBin.iked\fR(8). You must use the
+\fB-c\fR option to test a \fBconfig\fR file. You might need to use the \fB-f\fR
+option if it is not in \fB/etc/inet/ike/config\fR.
+.SS "Lexical Components"
+On any line, an unquoted \fB#\fR character introduces a comment. The remainder
+of that line is ignored. Additionally, on any line, an unquoted \fB//\fR
+sequence introduces a comment. The remainder of that line is ignored.
+.sp
+.LP
+There are several types of lexical tokens in the \fBike.config\fR file:
+.sp
+.ne 2
+.na
+\fB\fInum\fR\fR
+.ad
+.sp .6
+.RS 4n
+A decimal, hex, or octal number representation is as in 'C'.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIIPaddr\fR/\fIprefix\fR/\fIrange\fR\fR
+.ad
+.sp .6
+.RS 4n
+An IPv4 or IPv6 address with an optional /\fINNN\fR suffix, (where \fINNN\fR is
+a \fInum\fR) that indicates an address (\fBCIDR\fR) prefix (for example,
+\fB10.1.2.0/24\fR). An optional /\fIADDR\fR suffix (where \fIADDR\fR is a
+second IP address) indicates an address/mask pair (for example,
+\fB10.1.2.0/255.255.255.0\fR). An optional -\fIADDR\fR suffix (where \fIADDR\fR
+is a second IPv4 address) indicates an inclusive range of addresses (for
+example, \fB10.1.2.0-10.1.2.255\fR). The \fB/\fR or \fB-\fR can be surrounded
+by an arbitrary amount of white space.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBXXX\fR | \fBYYY\fR | \fBZZZ\fR\fR
+.ad
+.sp .6
+.RS 4n
+Either the words \fBXX\fRX, \fBYYY\fR, or \fBZZZ\fR, for example, {yes,no}.
+.RE
+
+.sp
+.ne 2
+.na
+\fBp1-id-type\fR
+.ad
+.sp .6
+.RS 4n
+An IKE phase 1 identity type. IKE phase 1 identity types include:
+.br
+.in +2
+\fBdn, DN\fR
+.in -2
+.br
+.in +2
+\fBdns, DNS\fR
+.in -2
+.br
+.in +2
+\fBfqdn, FQDN\fR
+.in -2
+.br
+.in +2
+\fBgn, GN\fR
+.in -2
+.br
+.in +2
+\fBip, IP\fR
+.in -2
+.br
+.in +2
+\fBipv4\fR
+.in -2
+.br
+.in +2
+\fBipv4_prefix\fR
+.in -2
+.br
+.in +2
+\fBipv4_range\fR
+.in -2
+.br
+.in +2
+\fBipv6\fR
+.in -2
+.br
+.in +2
+\fBipv6_prefix\fR
+.in -2
+.br
+.in +2
+\fBipv6_range\fR
+.in -2
+.br
+.in +2
+\fBmbox, MBOX\fR
+.in -2
+.br
+.in +2
+\fBuser_fqdn\fR
+.in -2
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB"\fR\fIstring\fR\fB"\fR\fR
+.ad
+.sp .6
+.RS 4n
+A quoted string.
+.sp
+Examples include:\fB"Label foo"\fR, or \fB"C=US, OU=Sun Microsystems\e, Inc.,
+N=olemcd@eng.example.com"\fR
+.sp
+A backslash (\fB\e\fR) is an escape character. If the string needs an actual
+backslash, two must be specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIcert-sel\fR\fR
+.ad
+.sp .6
+.RS 4n
+A certificate selector, a \fIstring\fR which specifies the identities of zero
+or more certificates. The specifiers can conform to \fBX.509\fR naming
+conventions.
+.sp
+A \fIcert-sel\fR can also use various shortcuts to match either subject
+alternative names, the filename or \fBslot\fR of a certificate in
+\fB/etc/inet/ike/publickeys\fR, or even the \fBISSUER\fR. For example:
+.sp
+.in +2
+.nf
+"SLOT=0"
+"EMAIL=postmaster@example.org"
+"webmaster@example.org" # Some just work w/o TYPE=
+"IP=10.0.0.1"
+"10.21.11.11" # Some just work w/o TYPE=
+"DNS=www.example.org"
+"mailhost.example.org" # Some just work w/o TYPE=
+"ISSUER=C=US, O=Sun Microsystems\\, Inc., CN=Sun CA"
+.fi
+.in -2
+.sp
+
+Any \fIcert-sel\fR preceded by the character \fB!\fR indicates a negative
+match, that is, not matching this specifier. These are the same kind of strings
+used in \fBikecert\fR(8).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIldap-list\fR\fR
+.ad
+.sp .6
+.RS 4n
+A quoted, comma-separated list of LDAP servers and ports.
+.sp
+For example, \fB"ldap1.example.com"\fR, \fB"ldap1.example.com:389"\fR,
+\fB"ldap1.example.com:389,ldap2.example.com"\fR.
+.sp
+The default port for LDAP is \fB389\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIparameter-list\fR\fR
+.ad
+.sp .6
+.RS 4n
+A list of parameters.
+.RE
+
+.SS "File Body Entries"
+There are four main types of entries:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+global parameters
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+IKE phase 1 transform defaults
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+IKE rule defaults
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+IKE rules
+.RE
+.sp
+.LP
+The global parameter entries are as follows:
+.sp
+.ne 2
+.na
+\fBcert_root \fIcert-sel\fR\fR
+.ad
+.sp .6
+.RS 4n
+The X.509 distinguished name of a certificate that is a trusted root CA
+certificate. It must be encoded in a file in the \fB/etc/inet/ike/publickeys\fR
+directory. It must have a CRL in \fB/etc/inet/ike/crl\fRs. Multiple
+\fBcert_root\fR parameters aggregate.
+.RE
+
+.sp
+.ne 2
+.na
+\fBcert_trust \fIcert-sel\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies an X.509 distinguished name of a certificate that is self-signed, or
+has otherwise been verified as trustworthy for signing IKE exchanges. It must
+be encoded in a file in \fB/etc/inet/ike/publickeys\fR. Multiple
+\fBcert_trust\fR parameters aggregate.
+.RE
+
+.sp
+.ne 2
+.na
+\fBexpire_timer \fIinteger\fR\fR
+.ad
+.sp .6
+.RS 4n
+The number of seconds to let a not-yet-complete IKE Phase I (Main Mode)
+negotiation linger before deleting it. Default value: 300 seconds.
+.RE
+
+.sp
+.ne 2
+.na
+\fBignore_crls\fR
+.ad
+.sp .6
+.RS 4n
+If this keyword is present in the file, \fBin.iked\fR(8) ignores Certificate
+Revocation Lists (\fBCRL\fRs) for root \fBCA\fRs (as given in \fBcert_root\fR)
+.RE
+
+.sp
+.ne 2
+.na
+\fBldap_server \fIldap-list\fR\fR
+.ad
+.sp .6
+.RS 4n
+A list of LDAP servers to query for certificates. The list can be additive.
+.RE
+
+.sp
+.ne 2
+.na
+\fBpkcs11_path \fIstring\fR\fR
+.ad
+.sp .6
+.RS 4n
+The string that follows is a name of a shared object (\fB\&.so\fR) that
+implements the PKCS#11 standard. The name is passed directly into
+\fBdlopen\fR(3C) for linking, with all of the semantics of that library call.
+By default, \fBin.iked\fR(8) runs the same ISA as the running kernel, so a
+library specified using \fBpkcs11_path\fR and an absolute pathname \fBmust\fR
+match the same ISA as the kernel. One can use the start/exec SMF property (see
+\fBsvccfg\fR(8)) to change \fBin.iked\fR's ISA, but it is not recommended.
+.sp
+If this setting is not present, the default value is set to \fBlibpkcs11.so\fR.
+Most cryptographic providers go through the default library, and this parameter
+should only be used if a specialized provider of IKE-useful cryptographic
+services cannot interface with the Solaris Cryptographic Framework. See
+\fBcryptoadm\fR(8).
+.sp
+This option is now deprecated, and may be removed in a future release.
+.RE
+
+.sp
+.ne 2
+.na
+\fBretry_limit \fIinteger\fR\fR
+.ad
+.sp .6
+.RS 4n
+The number of retransmits before any IKE negotiation is aborted. Default value:
+5 times.
+.RE
+
+.sp
+.ne 2
+.na
+\fBretry_timer_init \fIinteger\fR or \fIfloat\fR\fR
+.ad
+.sp .6
+.RS 4n
+The initial interval (in seconds) between retransmits. This interval is doubled
+until the \fBretry_timer_max\fR value (see below) is reached. Default value:
+0.5 seconds.
+.RE
+
+.sp
+.ne 2
+.na
+\fBretry_timer_max \fIinteger\fR or \fIfloat\fR\fR
+.ad
+.sp .6
+.RS 4n
+The maximum interval (in seconds) between retransmits. The doubling retransmit
+interval stops growing at this limit. Default value: 30 seconds.
+.LP
+Note -
+.sp
+.RS 2
+This value is never reached with the default configuration. The longest
+interval is 8 (0.5 * 2 ^ (5 - 1)) seconds.
+.RE
+.RE
+
+.sp
+.ne 2
+.na
+\fBproxy \fIstring\fR\fR
+.ad
+.sp .6
+.RS 4n
+The string following this keyword must be a URL for an HTTP proxy, for example,
+\fBhttp://proxy:8080\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBsocks \fIstring\fR\fR
+.ad
+.sp .6
+.RS 4n
+The string following this keyword must be a URL for a SOCKS proxy, for example,
+\fBsocks://socks-proxy\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBuse_http\fR
+.ad
+.sp .6
+.RS 4n
+If this keyword is present in the file, \fBin.iked\fR(8) uses HTTP to retrieve
+Certificate Revocation Lists (\fBCRL\fRs).
+.RE
+
+.sp
+.LP
+The following IKE phase 1 transform parameters can be prefigured using
+file-level defaults. Values specified within any given transform override these
+defaults.
+.sp
+.LP
+The IKE phase 1 transform defaults are as follows:
+.sp
+.ne 2
+.na
+\fBp1_lifetime_secs \fInum\fR\fR
+.ad
+.sp .6
+.RS 4n
+The proposed default lifetime, in seconds, of an IKE phase 1 security
+association (\fBSA\fR).
+.RE
+
+.sp
+.ne 2
+.na
+\fBp1_nonce_len \fInum\fR\fR
+.ad
+.sp .6
+.RS 4n
+The length in bytes of the phase 1 (quick mode) nonce data. This cannot be
+specified on a per-rule basis.
+.RE
+
+.sp
+.LP
+The following IKE rule parameters can be prefigured using file-level defaults.
+Values specified within any given rule override these defaults, unless a rule
+cannot.
+.sp
+.ne 2
+.na
+\fBp2_lifetime_secs \fInum\fR\fR
+.ad
+.sp .6
+.RS 4n
+The proposed default lifetime, in seconds, of an IKE phase 2 security
+association (SA). This value is optional. If omitted, a default value is used.
+.RE
+
+.sp
+.ne 2
+.na
+\fBp2_softlife_secs \fInum\fR\fR
+.ad
+.sp .6
+.RS 4n
+The soft lifetime of a phase 2 SA, in seconds. If this value is specified, the
+SA soft expires after the number of seconds specified by
+\fBp2_softlife_secs\fR. This causes \fBin.iked\fR to renegotiate a new phase 2
+SA before the original SA expires.
+.sp
+This value is optional, if omitted soft expiry occurs after 90% of the lifetime
+specified by \fBp2_lifetime_secs\fR. The value specified by
+\fBp2_softlife_secs\fR is ignored if \fBp2_lifetime_secs\fR is not specified.
+.sp
+Setting \fBp2_softlife_secs\fR to the same value as \fBp2_lifetime_secs\fR
+disables soft expires.
+.RE
+
+.sp
+.ne 2
+.na
+\fBp2_idletime_secs \fInum\fR\fR
+.ad
+.sp .6
+.RS 4n
+The idle lifetime of a phase 2 SA, in seconds. If the value is specified, the
+value specifies the lifetime of the SA, if the security association is not used
+before the SA is revalidated.
+.RE
+
+.sp
+.ne 2
+.na
+\fBp2_lifetime_kb \fInum\fR\fR
+.ad
+.sp .6
+.RS 4n
+The lifetime of an SA can optionally be specified in kilobytes. This parameter
+specifies the default value. If lifetimes are specified in both seconds and
+kilobytes, the SA expires when either the seconds or kilobyte thresholds are
+passed.
+.RE
+
+.sp
+.ne 2
+.na
+\fBp2_softlife_kb \fInum\fR\fR
+.ad
+.sp .6
+.RS 4n
+This value is the number of kilobytes that can be protected by an SA before a
+soft expire occurs (see \fBp2_softlife_secs\fR, above).
+.sp
+This value is optional. If omitted, soft expiry occurs after 90% of the
+lifetime specified by \fBp2_lifetime_kb\fR. The value specified by
+\fBp2_softlife_kb\fR is ignored if \fBp2_lifetime_kb\fR is not specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fBp2_nonce_len \fInum\fR\fR
+.ad
+.sp .6
+.RS 4n
+The length in bytes of the phase 2 (quick mode) nonce data. This cannot be
+specified on a per-rule basis.
+.RE
+
+.sp
+.ne 2
+.na
+\fBlocal_id_type \fIp1-id-type\fR\fR
+.ad
+.sp .6
+.RS 4n
+The local identity for IKE requires a type. This identity type is reflected in
+the IKE exchange. The type can be one of the following:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+an IP address (for example, \fB10.1.1.2\fR)
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+DNS name (for example, \fBtest.example.com\fR)
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+MBOX RFC 822 name (for example, \fBroot@example.com\fR)
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+DNX.509 distinguished name (for example, \fBC=US, O=Sun Microsystems\, Inc.,
+CN=Sun Test cert\fR)
+.RE
+.RE
+
+.sp
+.ne 2
+.na
+\fBp1_xform '{' parameter-list '}\fR
+.ad
+.sp .6
+.RS 4n
+A phase 1 transform specifies a method for protecting an IKE phase 1 exchange.
+An initiator offers up lists of phase 1 transforms, and a receiver is expected
+to only accept such an entry if it matches one in a phase 1 rule. There can be
+several of these, and they are additive. There must be either at least one
+phase 1 transform in a rule or a global default phase 1 transform list. In a
+configuration file without a global default phase 1 transform list \fBand\fR a
+rule without a phase, transform list is an invalid file. Unless specified as
+optional, elements in the parameter-list must occur exactly once within a given
+transform's parameter-list:
+.sp
+.ne 2
+.na
+\fBoakley_group \fInumber\fR\fR
+.ad
+.sp .6
+.RS 4n
+The Oakley Diffie-Hellman group used for IKE SA key derivation. The group
+numbers are defined in RFC 2409, Appendix A, RFC 3526, and RFC 5114, section
+3.2. Acceptable values are currently:
+.br
+.in +2
+1 (MODP 768-bit)
+.in -2
+.br
+.in +2
+2 (MODP 1024-bit)
+.in -2
+.br
+.in +2
+3 (EC2N 155-bit)
+.in -2
+.br
+.in +2
+4 (EC2N 185-bit)
+.in -2
+.br
+.in +2
+5 (MODP 1536-bit)
+.in -2
+.br
+.in +2
+14 (MODP 2048-bit)
+.in -2
+.br
+.in +2
+15 (MODP 3072-bit)
+.in -2
+.br
+.in +2
+16 (MODP 4096-bit)
+.in -2
+.br
+.in +2
+17 (MODP 6144-bit)
+.in -2
+.br
+.in +2
+18 (MODP 8192-bit)
+.in -2
+.br
+.in +2
+19 (ECP 256-bit)
+.in -2
+.br
+.in +2
+20 (ECP 384-bit)
+.in -2
+.br
+.in +2
+21 (ECP 521-bit)
+.in -2
+.br
+.in +2
+22 (MODP 1024-bit, with 160-bit Prime Order Subgroup)
+.in -2
+.br
+.in +2
+23 (MODP 2048-bit, with 224-bit Prime Order Subgroup)
+.in -2
+.br
+.in +2
+24 (MODP 2048-bit, with 256-bit Prime Order Subgroup)
+.in -2
+.br
+.in +2
+25 (ECP 192-bit)
+.in -2
+.br
+.in +2
+26 (ECP 224-bit)
+.in -2
+.RE
+
+.sp
+.ne 2
+.na
+\fBencr_alg {3des, 3des-cbc, blowfish, blowfish-cdc, des, des-cbc, aes,
+aes-cbc}\fR
+.ad
+.sp .6
+.RS 4n
+An encryption algorithm, as in \fBipsecconf\fR(8). However, of the ciphers
+listed above, only \fBaes\fR and \fBaes-cbc\fR allow optional key-size setting,
+using the "low value-to-high value" syntax. To specify a single AES key size,
+the low value must equal the high value. If no range is specified, all three
+AES key sizes are allowed.
+.RE
+
+.sp
+.ne 2
+.na
+\fBauth_alg {md5, sha, sha1, sha256, sha384, sha512}\fR
+.ad
+.sp .6
+.RS 4n
+An authentication algorithm.
+.sp
+Use \fBipsecalgs\fR(8) with the \fB-l\fR option to list the IPsec protocols
+and algorithms currently defined on a system. The \fBcryptoadm list\fR command
+displays a list of installed providers and their mechanisms. See
+\fBcryptoadm\fR(8).
+.RE
+
+.sp
+.ne 2
+.na
+\fBauth_method {preshared, rsa_sig, rsa_encrypt, dss_sig}\fR
+.ad
+.sp .6
+.RS 4n
+The authentication method used for IKE phase 1.
+.RE
+
+.sp
+.ne 2
+.na
+\fBp1_lifetime_secs \fInum\fR\fR
+.ad
+.sp .6
+.RS 4n
+Optional. The lifetime for a phase 1 SA.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fBp2_lifetime_secs \fInum\fR\fR
+.ad
+.sp .6
+.RS 4n
+If configuring the kernel defaults is not sufficient for different tasks, this
+parameter can be used on a per-rule basis to set the IPsec \fBSA\fR lifetimes
+in seconds.
+.RE
+
+.sp
+.ne 2
+.na
+\fBp2_pfs \fInum\fR\fR
+.ad
+.sp .6
+.RS 4n
+Use perfect forward secrecy for phase 2 (quick mode). If selected, the oakley
+group specified is used for phase 2 PFS. Acceptable values are:
+.br
+.in +2
+0 (do not use Perfect Forward Secrecy for IPsec SAs)
+.in -2
+.br
+.in +2
+1 (768-bit)
+.in -2
+.br
+.in +2
+2 (1024-bit)
+.in -2
+.br
+.in +2
+5 (1536-bit)
+.in -2
+.br
+.in +2
+14 (2048-bit)
+.in -2
+.br
+.in +2
+15 (3072-bit)
+.in -2
+.br
+.in +2
+16 (4096-bit)
+.in -2
+.RE
+
+.sp
+.LP
+An IKE rule starts with a right-curly-brace (\fB{\fR), ends with a
+left-curly-brace (\fB}\fR), and has the following parameters in between:
+.sp
+.ne 2
+.na
+\fBlabel \fIstring\fR\fR
+.ad
+.sp .6
+.RS 4n
+Required parameter. The administrative interface to \fBin.iked\fR looks up
+phase 1 policy rules with the label as the search string. The administrative
+interface also converts the label into an index, suitable for an extended
+ACQUIRE message from PF_KEY - effectively tying IPsec policy to IKE policy in
+the case of a node initiating traffic. Only one \fBlabel\fR parameter is
+allowed per rule.
+.RE
+
+.sp
+.ne 2
+.na
+\fBlocal_addr <\fIIPaddr\fR/\fIprefix\fR/\fIrange\fR>\fR
+.ad
+.sp .6
+.RS 4n
+Required parameter. The local address, address prefix, or address range for
+this phase 1 rule. Multiple \fBlocal_addr\fR parameters accumulate within a
+given rule.
+.RE
+
+.sp
+.ne 2
+.na
+\fBremote_addr <\fIIPaddr\fR/\fIprefix\fR/\fIrang\fRe>\fR
+.ad
+.sp .6
+.RS 4n
+Required parameter. The remote address, address prefix, or address range for
+this phase 1 rule. Multiple \fBremote_addr\fR parameters accumulate within a
+given rule.
+.RE
+
+.sp
+.ne 2
+.na
+\fBlocal_id_type \fIp1-id-type\fR\fR
+.ad
+.sp .6
+.RS 4n
+Which phase 1 identity type I uses. This is needed because a single certificate
+can contain multiple values for use in IKE phase 1. Within a given rule, all
+phase 1 transforms must either use preshared or non-preshared authentication
+(they cannot be mixed). For rules with preshared authentication, the
+\fBlocal_id_type\fR parameter is optional, and defaults to \fBIP\fR. For rules
+which use non-preshared authentication, the 'local_id_type' parameter is
+required. Multiple 'local_id_type' parameters within a rule are not allowed.
+.RE
+
+.sp
+.ne 2
+.na
+\fBlocal_id \fIcert-sel\fR\fR
+.ad
+.sp .6
+.RS 4n
+Disallowed for preshared authentication method; required parameter for
+non-preshared authentication method. The local identity string or certificate
+selector. Only one local identity per rule is used, the first one stated.
+.RE
+
+.sp
+.ne 2
+.na
+\fBremote_id \fIcert-sel\fR\fR
+.ad
+.sp .6
+.RS 4n
+Disallowed for preshared authentication method; required parameter for
+non-preshared authentication method. Selector for which remote phase 1
+identities are allowed by this rule. Multiple \fBremote_id\fR parameters
+accumulate within a given rule. If a single empty string (\fB""\fR) is given,
+then this accepts any remote \fBID\fR for phase 1. It is recommended that
+certificate trust chains or address enforcement be configured strictly to
+prevent a breakdown in security if this value for \fBremote_id\fR is used.
+.RE
+
+.sp
+.ne 2
+.na
+\fBp2_lifetime_secs \fInum\fR\fR
+.ad
+.sp .6
+.RS 4n
+If configuring the kernel defaults is not sufficient for different tasks, this
+parameter can be used on a per-rule basis to set the IPsec \fBSA\fR lifetimes
+in seconds.
+.RE
+
+.sp
+.ne 2
+.na
+\fBp2_pfs \fInum\fR\fR
+.ad
+.sp .6
+.RS 4n
+Use perfect forward secrecy for phase 2 (quick mode). If selected, the oakley
+group specified is used for phase 2 PFS. Acceptable values are:
+.br
+.in +2
+0 (do not use Perfect Forward Secrecy for IPsec SAs)
+.in -2
+.br
+.in +2
+1 (768-bit)
+.in -2
+.br
+.in +2
+2 (1024-bit)
+.in -2
+.br
+.in +2
+5 (1536-bit)
+.in -2
+.br
+.in +2
+14 (2048-bit)
+.in -2
+.br
+.in +2
+15 (3072-bit)
+.in -2
+.br
+.in +2
+16 (4096-bit)
+.in -2
+.RE
+
+.sp
+.ne 2
+.na
+\fBp1_xform \fB{\fR \fIparameter-list\fR \fB}\fR\fR
+.ad
+.sp .6
+.RS 4n
+A phase 1 transform specifies a method for protecting an IKE phase 1 exchange.
+An initiator offers up lists of phase 1 transforms, and a receiver is expected
+to only accept such an entry if it matches one in a phase 1 rule. There can be
+several of these, and they are additive. There must be either at least one
+phase 1 transform in a rule or a global default phase 1 transform list. A
+\fBike.config\fR file without a global default phase 1 transform list \fBand\fR
+a rule without a phase 1 transform list is an invalid file. Elements within the
+parameter-list; unless specified as optional, must occur exactly once within a
+given transform's parameter-list:
+.sp
+.ne 2
+.na
+\fBoakley_group \fInumber\fR\fR
+.ad
+.sp .6
+.RS 4n
+The Oakley Diffie-Hellman group used for \fBIKE SA\fR key derivation.
+Acceptable values are currently:
+.br
+.in +2
+1 (768-bit)
+.in -2
+.br
+.in +2
+2 (1024-bit)
+.in -2
+.br
+.in +2
+5 (1536-bit)
+.in -2
+.br
+.in +2
+14 (2048-bit)
+.in -2
+.br
+.in +2
+15 (3072-bit)
+.in -2
+.br
+.in +2
+16 (4096-bit)
+.in -2
+.RE
+
+.sp
+.ne 2
+.na
+\fBencr_alg {3des, 3des-cbc, blowfish, blowfish-cdc, des, des-cbc, aes,
+aes-cbc}\fR
+.ad
+.sp .6
+.RS 4n
+An encryption algorithm, as in \fBipsecconf\fR(8). However, of the ciphers
+listed above, only \fBaes\fR and \fBaes-cbc\fR allow optional key-size setting,
+using the "low value-to-high value" syntax. To specify a single AES key size,
+the low value must equal the high value. If no range is specified, all three
+AES key sizes are allowed.
+.RE
+
+.sp
+.ne 2
+.na
+\fBauth_alg {md5, sha, sha1}\fR
+.ad
+.sp .6
+.RS 4n
+An authentication algorithm, as specified in \fBipseckey\fR(8).
+.RE
+
+.sp
+.ne 2
+.na
+\fBauth_method {preshared, rsa_sig, rsa_encrypt, dss_sig}\fR
+.ad
+.sp .6
+.RS 4n
+The authentication method used for IKE phase 1.
+.RE
+
+.sp
+.ne 2
+.na
+\fBp1_lifetime_secs \fInum\fR\fR
+.ad
+.sp .6
+.RS 4n
+Optional. The lifetime for a phase 1 SA.
+.RE
+
+.RE
+
+.SH EXAMPLES
+\fBExample 1 \fRA Sample \fBike.config\fR File
+.sp
+.LP
+The following is an example of an \fBike.config\fR file:
+
+.sp
+.in +2
+.nf
+
+### BEGINNING OF FILE
+
+### First some global parameters...
+
+### certificate parameters...
+
+# Root certificates. I SHOULD use a full Distinguished Name.
+# I must have this certificate in my local filesystem, see ikecert(8).
+cert_root "C=US, O=Sun Microsystems\\, Inc., CN=Sun CA"
+
+# Explicitly trusted certs that need no signatures, or perhaps
+# self-signed ones. Like root certificates, use full DNs for them
+# for now.
+cert_trust "EMAIL=root@example.org"
+
+# Where do I send LDAP requests?
+ldap_server "ldap1.example.org,ldap2.example.org:389"
+
+## phase 1 transform defaults...
+
+p1_lifetime_secs 14400
+p1_nonce_len 20
+
+## Parameters that might also show up in rules.
+
+p1_xform { auth_method preshared oakley_group 5 auth_alg sha
+ encr_alg 3des }
+p2_pfs 2
+
+
+
+### Now some rules...
+
+{
+ label "simple inheritor"
+ local_id_type ip
+ local_addr 10.1.1.1
+ remote_addr 10.1.1.2
+}
+{
+ label "simple inheritor IPv6"
+ local_id_type ipv6
+ local_addr fe80::a00:20ff:fe7d:6
+ remote_addr fe80::a00:20ff:fefb:3780
+}
+
+{
+ # an index-only rule. If I'm a receiver, and all I
+ # have are index-only rules, what do I do about inbound IKE requests?
+ # Answer: Take them all!
+
+ label "default rule"
+ # Use whatever "host" (e.g. IP address) identity is appropriate
+ local_id_type ipv4
+
+ local_addr 0.0.0.0/0
+ remote_addr 0.0.0.0/0
+
+ p2_pfs 5
+
+ # Now I'm going to have the p1_xforms
+ p1_xform
+ {auth_method preshared oakley_group 5 auth_alg md5 encr_alg \e
+ blowfish } p1_xform
+ {auth_method preshared oakley_group 5 auth_alg md5 encr_alg 3des }
+
+ # After said list, another keyword (or a '}') stops xform
+ # parsing.
+}
+
+{
+ # Let's try something a little more conventional.
+
+ label "host to .80 subnet"
+ local_id_type ip
+ local_id "10.1.86.51"
+
+ remote_id "" # Take any, use remote_addr for access control.
+
+ local_addr 10.1.86.51
+ remote_addr 10.1.80.0/24
+
+ p1_xform
+ { auth_method rsa_sig oakley_group 5 auth_alg md5 encr_alg 3des }
+ p1_xform
+ { auth_method rsa_sig oakley_group 5 auth_alg md5 encr_alg \e
+ blowfish }
+ p1_xform
+ { auth_method rsa_sig oakley_group 5 auth_alg sha1 encr_alg 3des }
+ p1_xform
+ { auth_method rsa_sig oakley_group 5 auth_alg sha1 encr_alg \e
+ blowfish }
+}
+
+{
+ # Let's try something a little more conventional, but with ipv6.
+
+ label "host to fe80::/10 subnet"
+ local_id_type ip
+ local_id "fe80::a00:20ff:fe7d:6"
+
+ remote_id "" # Take any, use remote_addr for access control.
+
+ local_addr fe80::a00:20ff:fe7d:6
+ remote_addr fe80::/10
+
+ p1_xform
+ { auth_method rsa_sig oakley_group 5 auth_alg md5 encr_alg 3des }
+ p1_xform
+ { auth_method rsa_sig oakley_group 5 auth_alg md5 encr_alg \e
+ blowfish }
+ p1_xform
+ { auth_method rsa_sig oakley_group 5 auth_alg sha1 encr_alg \e
+ 3des }
+ p1_xform
+ { auth_method rsa_sig oakley_group 5 auth_alg sha1 encr_alg \e
+ blowfish }
+}
+
+{
+ # How 'bout something with a different cert type and name?
+
+ label "punchin-point"
+ local_id_type mbox
+ local_id "ipsec-wizard@example.org"
+
+ remote_id "10.5.5.128"
+
+ local_addr 0.0.0.0/0
+ remote_addr 10.5.5.128
+
+ p1_xform
+ { auth_method rsa_sig oakley_group 5 auth_alg md5 encr_alg \e
+ blowfish }
+}
+
+{
+ label "receiver side"
+
+ remote_id "ipsec-wizard@example.org"
+
+ local_id_type ip
+ local_id "10.5.5.128"
+
+ local_addr 10.5.5.128
+ remote_addr 0.0.0.0/0
+
+ p1_xform
+ { auth_method rsa_sig oakley_group 5 auth_alg md5 encr_alg blowfish }
+ # NOTE: Specifying preshared null-and-voids the remote_id/local_id
+ # fields.
+ p1_xform
+ { auth_method preshared oakley_group 5 auth_alg md5 encr_alg \e
+ blowfish}
+
+}
+.fi
+.in -2
+
+.SH ATTRIBUTES
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Committed
+.TE
+
+.SH SEE ALSO
+.BR dlopen (3C),
+.BR random (4D),
+.BR attributes (7),
+.BR cryptoadm (8),
+.BR ikeadm (8),
+.BR ikecert (8),
+.BR in.iked (8),
+.BR ipsecalgs (8),
+.BR ipsecconf (8),
+.BR ipseckey (8),
+.BR svccfg (8)
+.sp
+.LP
+Harkins, Dan and Carrel, Dave. \fIRFC 2409, Internet Key Exchange (IKE)\fR.
+Cisco Systems, November 1998.
+.sp
+.LP
+Maughan, Douglas et. al. \fIRFC 2408, Internet Security Association and Key
+Management Protocol (ISAKMP)\fR. National Security Agency, Ft. Meade, MD.
+November 1998.
+.sp
+.LP
+Piper, Derrell. \fIRFC 2407, The Internet IP Security Domain of Interpretation
+for ISAKMP\fR. Network Alchemy. Santa Cruz, California. November 1998.
+.sp
+.LP
+Kivinen, T. \fIRFC 3526, More Modular Exponential (MODP) Diffie-Hellman Groups
+for Internet Key Exchange (IKE)\fR. The Internet Society, Network Working
+Group. May 2003.
+.sp
+.LP
+Lepinksi, M. and Kent, S. \fIRFC 5114, Additional Diffie-Hellman Groups for Use
+with IETF Standards\fR. BBN Technologies, January 2008.
+.sp
+.LP
+Fu, D. and Solinas, J. \fIRFC 5903, Elliptic Curve Groups modulo a Prime (ECP
+Groups) for IKE and IKEv2\fR. NSA, June 2010.
diff --git a/usr/src/man/man5/ike.preshared.5 b/usr/src/man/man5/ike.preshared.5
new file mode 100644
index 0000000000..402c1e56c1
--- /dev/null
+++ b/usr/src/man/man5/ike.preshared.5
@@ -0,0 +1,99 @@
+'\" te
+.\" Copyright (c) 2001, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH IKE.PRESHARED 5 "Oct 15, 2001"
+.SH NAME
+ike.preshared \- pre-shared keys file for IKE
+.SH SYNOPSIS
+.LP
+.nf
+\fB/etc/inet/secret/ike.preshared\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+ The \fB/etc/inet/secret/ike.preshared\fR file contains secret keying material
+that two \fBIKE\fR instances can use to authenticate each other. Because of the
+sensitive nature of this data, it is kept in the \fB/etc/inet/secret\fR
+directory, which is only accessible by root.
+.sp
+.LP
+Pre-shared keys are delimited by open-curly-brace (\fB{\fR) and
+close-curly-brace (\fB}\fR) characters. There are five name-value pairs
+required inside a pre-shared key:
+.sp
+
+.sp
+.TS
+c c c
+l l l .
+Name Value Example
+localidtype IP localidtype IP
+remoteidtype IP remoteidtype IP
+localid IP-address localid 10.1.1.2
+remoteid IP-address remoteid 10.1.1.3
+key hex-string 1234567890abcdef
+.TE
+
+.sp
+.LP
+Comment lines with \fB#\fR appearing in the first column are also legal.
+.sp
+.LP
+Files in this format can also be used by the \fBikeadm\fR(8) command to load
+additional pre-shared keys into a running an \fBin.iked\fR(8) process.
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRA Sample ike.preshared File
+.sp
+.LP
+The following is an example of an \fBike.preshared\fR file:
+
+.sp
+.in +2
+.nf
+
+#
+# Two pre-shared keys between myself, 10.1.1.2, and two remote
+# hosts. Note that names are not allowed for IP addresses.
+#
+# A decent hex string can be obtained by performing:
+# od -x </dev/random | head
+#
+
+{
+ localidtype IP
+ localid 10.1.1.2
+ remoteidtype IP
+ remoteid 10.21.12.4
+ key 4b656265207761732068657265210c0a
+}
+
+{
+ localidtype IP
+ localid 10.1.1.2
+ remoteidtype IP
+ remoteid 10.9.1.25
+ key 536f20776572652042696c6c2c2052656e65652c20616e642043687269732e0a
+}
+.fi
+.in -2
+
+.SH SECURITY
+.sp
+.LP
+If this file is compromised, all \fBIPsec\fR security associations derived from
+secrets in this file will be compromised as well. The default permissions on
+\fBike.preshared\fR are \fB0600\fR. They should stay this way.
+.SH SEE ALSO
+.sp
+.LP
+.BR od (1),
+.BR random (4D),
+.BR attributes (7),
+.BR ikeadm (8),
+.BR in.iked (8),
+.BR ipseckey (8)
diff --git a/usr/src/man/man5/inet_type.5 b/usr/src/man/man5/inet_type.5
new file mode 100644
index 0000000000..a45b756fe2
--- /dev/null
+++ b/usr/src/man/man5/inet_type.5
@@ -0,0 +1,102 @@
+'\" te
+.\" Copyright (C) 1999, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH INET_TYPE 5 "Jun 16, 1999"
+.SH NAME
+inet_type \- default Internet protocol type
+.SH SYNOPSIS
+.LP
+.nf
+\fB/etc/default/inet_type\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBinet_type\fR file defines the default \fBIP\fR protocol to use.
+Currently this file is only used by the \fBifconfig\fR(8) and
+\fBnetstat\fR(8) commands.
+.sp
+.LP
+The \fBinet_type\fR file can contain a number of \fB<variable>=<value>\fR
+lines. Currently, the only variable defined is \fBDEFAULT_IP\fR, which can be
+assigned a value of \fBIP_VERSION4\fR, \fBIP_VERSION6\fR, or \fBBOTH\fR.
+.sp
+.LP
+The output displayed by the \fBifconfig\fR and \fBnetstat\fR commands can be
+controlled by the value of \fBDEFAULT_IP\fR set in \fBinet_type\fR file. By
+default, both commands display the IPv4 and IPv6 information available on the
+system. The user can choose to suppress display of IPv6 information by setting
+the value of \fBDEFAULT_IP\fR. The following shows the possible values for
+\fBDEFAULT_IP\fR and the resulting \fBifconfig\fR and \fBnetstat\fR output that
+will be displayed:
+.sp
+.ne 2
+.na
+\fB\fBIP_VERSION4\fR\fR
+.ad
+.RS 15n
+Displays only IPv4 related information. The output displayed is backward
+compatible with older versions of the \fBifconfig\fR(8) and \fBnetstat\fR(8)
+commands.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBIP_VERSION6\fR\fR
+.ad
+.RS 15n
+Displays both IPv4 and IPv6 related information for \fBifconfig\fR and
+\fBnetstat\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBBOTH\fR\fR
+.ad
+.RS 15n
+Displays both IPv4 and IPv6 related information for \fBifconfig\fR and
+\fBnetstat\fR.
+.RE
+
+.sp
+.LP
+The command-line options to the \fBifconfig\fR and \fBnetstat\fR commands
+override the effect of \fBDEFAULT_IP\fR as set in the \fBinet_type\fR file. For
+example, even if the value of \fBDEFAULT_IP\fR is \fBIP_VERSION4\fR, the
+command
+.sp
+.in +2
+.nf
+example% \fBifconfig -a6\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+will display all IPv6 interfaces.
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRSuppressing IPv6 Related Output
+.sp
+.LP
+This is what the \fBinet_type\fR file must contain if you want to suppress IPv6
+related output:
+
+.sp
+.in +2
+.nf
+DEFAULT_IP=IP_VERSION4
+.fi
+.in -2
+
+.SH SEE ALSO
+.sp
+.LP
+.BR ifconfig (8),
+.BR netstat (8)
diff --git a/usr/src/man/man5/inetd.conf.5 b/usr/src/man/man5/inetd.conf.5
new file mode 100644
index 0000000000..03d3e1e430
--- /dev/null
+++ b/usr/src/man/man5/inetd.conf.5
@@ -0,0 +1,256 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 1985 Regents of the University of California. All rights reserved. The Berkeley software License Agreement specifies the terms and conditions for redistribution.
+.\" Copyright (C) 2004, Sun Microsystems, Inc. All Rights Reserved
+.TH INETD.CONF 5 "April 9, 2016"
+.SH NAME
+inetd.conf \- Internet servers database
+.SH SYNOPSIS
+.LP
+.nf
+\fB/etc/inet/inetd.conf\fR
+.fi
+
+.LP
+.nf
+\fB/etc/inetd.conf\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+In the current release of the Solaris operating system, the \fBinetd.conf\fR
+file is no longer directly used to configure \fBinetd\fR. The Solaris services
+which were formerly configured using this file are now configured in the
+Service Management Facility (see \fBsmf\fR(7)) using \fBinetadm\fR(8). Any
+records remaining in this file after installation or upgrade, or later created
+by installing additional software, must be converted to \fBsmf\fR(7) services
+and imported into the SMF repository using \fBinetconv\fR(8), otherwise the
+service will not be available.
+.sp
+.LP
+For Solaris operating system releases prior to the current release (such as
+Solaris 9), the \fBinetd.conf\fR file contains the list of servers that
+\fBinetd\fR(8) invokes when it receives an Internet request over a socket.
+Each server entry is composed of a single line of the form:
+.sp
+.in +2
+.nf
+\fIservice-name\fR \fIendpoint-type\fR \fIprotocol \fR\fIwait-status\fR \fIuid\fR \fIserver-program\fR \e
+\fIserver-arguments\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Fields are separated by either SPACE or TAB characters. A `\fB#\fR' (number
+sign) indicates the beginning of a comment; characters up to the end of the
+line are not interpreted by routines that search this file.
+.sp
+.ne 2
+.na
+\fB\fIservice-name\fR\fR
+.ad
+.RS 20n
+The name of a valid service listed in the \fBservices\fR file. For \fBRPC\fR
+services, the value of the \fIservice-name\fR field consists of the \fBRPC\fR
+service name or program number, followed by a '\fB/\fR' (slash) and either a
+version number or a range of version numbers, for example, \fBrstatd/2-4\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIendpoint-type\fR\fR
+.ad
+.RS 20n
+Can be one of:
+.sp
+.ne 2
+.na
+\fB\fBstream\fR\fR
+.ad
+.RS 13n
+for a stream socket
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdgram\fR\fR
+.ad
+.RS 13n
+for a datagram socket
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBraw\fR\fR
+.ad
+.RS 13n
+for a raw socket
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBseqpacket\fR\fR
+.ad
+.RS 13n
+for a sequenced packet socket
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBtli\fR\fR
+.ad
+.RS 13n
+for all \fBTLI\fR endpoints
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIprotocol\fR\fR
+.ad
+.RS 20n
+A recognized protocol listed in the file \fB/etc/inet/protocols\fR. For servers
+capable of supporting \fBTCP\fR and \fBUDP\fR over IPv6, the following protocol
+types are also recognized:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBtcp6\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBudp6\fR
+.RE
+\fB\fR\fBtcp6\fR and \fBudp6\fR are not official protocols; accordingly, they
+are not listed in the \fB/etc/inet/protocols\fR file.
+.sp
+Here the \fBinetd\fR program uses an \fBAF_INET6\fR type socket endpoint. These
+servers can also handle incoming IPv4 client requests in addition to IPv6
+client requests.
+.sp
+For \fBRPC\fR services, the field consists of the string \fBrpc\fR followed by
+a '/' (slash) and either a '*' (asterisk), one or more nettypes, one or more
+netids, or a combination of nettypes and netids. Whatever the value, it is
+first treated as a nettype. If it is not a valid nettype, then it is treated as
+a netid. For example, \fBrpc/*\fR for an \fBRPC\fR service using all the
+transports supported by the system (the list can be found in the
+\fB/etc/netconfig\fR file), equivalent to saying \fBrpc/visible rpc/ticots\fR
+for an \fBRPC\fR service using the Connection-Oriented Transport Service.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIwait-status\fR\fR
+.ad
+.RS 20n
+This field has values \fBwait\fR or \fBnowait\fR. This entry specifies whether
+the server that is invoked by \fBinetd\fR will take over the listening socket
+associated with the service, and whether once launched, \fBinetd\fR will
+\fBwait\fR for that server to exit, if ever, before it resumes listening for
+new service requests. The \fIwait-status\fR for datagram servers must be set to
+\fBwait\fR, as they are always invoked with the original datagram socket that
+will participate in delivering the service bound to the specified service. They
+do not have separate "listening" and "accepting" sockets. Accordingly, do not
+configure \fBUDP\fR services as \fBnowait\fR. This causes a race condition by
+which the \fBinetd\fR program selects on the socket and the server program
+reads from the socket. Many server programs will be forked, and performance
+will be severely compromised. Connection-oriented services such as \fBTCP\fR
+stream services can be designed to be either \fBwait\fR or \fBnowait\fR status.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIuid\fR\fR
+.ad
+.RS 20n
+The user \fBID\fR under which the server should run. This allows servers to run
+with access privileges other than those for root.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIserver-program\fR\fR
+.ad
+.RS 20n
+Either the pathname of a server program to be invoked by \fBinetd\fR to perform
+the requested service, or the value \fBinternal\fR if \fBinetd\fR itself
+provides the service.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIserver-arguments\fR\fR
+.ad
+.RS 20n
+If a server must be invoked with command line arguments, the entire command
+line (including argument 0) must appear in this field (which consists of all
+remaining words in the entry). If the server expects \fBinetd\fR to pass it the
+address of its peer, for compatibility with 4.2BSD executable daemons, then the
+first argument to the command should be specified as \fB%A\fR. No more than 20
+arguments are allowed in this field. The \fB%A\fR argument is implemented only
+for services whose \fIwait-status\fR value is \fBnowait\fR.
+.RE
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/etc/netconfig\fR\fR
+.ad
+.RS 23n
+network configuration file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/inet/protocols\fR\fR
+.ad
+.RS 23n
+Internet protocols
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/inet/services\fR\fR
+.ad
+.RS 23n
+Internet network services
+.RE
+
+.SH SEE ALSO
+.LP
+.BR rlogin (1),
+.BR rsh (1),
+.BR services (5),
+.BR smf (7),
+.BR in.tftpd (8),
+.BR inetadm (8),
+.BR inetconv (8),
+.BR inetd (8)
+.SH NOTES
+.LP
+\fB/etc/inet/inetd.conf\fR is the official SVR4 name of the \fBinetd.conf\fR
+file. The symbolic link \fB/etc/inetd.conf\fR exists for \fBBSD\fR
+compatibility.
+.sp
+.LP
+This man page describes \fBinetd.conf\fR as it was supported in Solaris
+operating system releases prior to the current release. The services that were
+configured by means of \fBinetd.conf\fR are now configured in the Service
+Management Facility (see \fBsmf\fR(7)) using \fBinetadm\fR(8).
diff --git a/usr/src/man/man5/init.5 b/usr/src/man/man5/init.5
new file mode 100644
index 0000000000..76c36ee7f3
--- /dev/null
+++ b/usr/src/man/man5/init.5
@@ -0,0 +1,141 @@
+'\"
+.\" Copyright 2021 OmniOS Community Edition (OmniOSce) Association.
+.\" Copyright 2014 Garrett D'Amore
+.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 1989 AT&T
+.\"
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.\"
+.Dd November 7, 2021
+.Dt INIT 5
+.Os
+.Sh NAME
+.Nm init ,
+.Nm TIMEZONE
+.Nd set default system time zone and locale
+.Sh SYNOPSIS
+.Pa /etc/default/init
+.Pp
+.Pa /etc/TIMEZONE
+.Sh DESCRIPTION
+This file sets the time zone environment variable
+.Ev TZ ,
+and the locale-related environment variables
+.Ev LANG ,
+.Ev LC_COLLATE ,
+.Ev LC_CTYPE ,
+.Ev LC_MESSAGES ,
+.Ev LC_MONETARY ,
+.Ev LC_NUMERIC
+and
+.Ev LC_TIME .
+.Pp
+It can also be used to set any additional environment variables which should be
+present in all processes started by
+.Xr init 8
+or
+.Xr svc.startd 8 ,
+and in any
+.Xr zoneadmd 8
+daemons started automatically to support zone operations.
+.Pp
+The format of the file is a set of tokens of the form:
+.Pp
+.Dl Ar VAR Ns No \&= Ns Ar value
+.Pp
+where
+.Ar VAR
+is an environment variable and
+.Ar value
+is the value assigned to the variable.
+.Ar value
+can be enclosed in double quotes
+.Pq \&"
+or single quotes
+.Pq \&' ,
+however, these quotes cannot be part of the value.
+Neither
+.Ar VAR
+nor
+.Ar value
+may contain whitespace.
+Multiple
+.Ar VAR Ns No \&= Ns Ar value
+pairs can occur on the same line, separated by whitespace or a semicolon
+.Pq \&; ,
+but, for compatibility with existing software, the
+.Ev TZ
+variable
+.Em must
+appear on its own line with no leading whitespace.
+Comments are supported; each comment must be on its own line and begin with a
+hash
+.Pq #
+character.
+.Pp
+If the
+.Ev CMASK
+variable is specified, it is not passed to the environment but the value is
+used to set the initial umask that
+.Xr init 8
+uses and that every other process inherits.
+The
+.Ev CMASK
+value is specified in octal and must be between 000 and 077 to be accepted; the
+value is silently ignored otherwise.
+If the value is missing or cannot be parsed as an octal number, then a value
+of 0 is assumed.
+A sequence of valid octal digits followed by other trailing characters will be
+treated as if the trailing characters were not present.
+.Pp
+For
+.Xr init 8 ,
+the number of environment variables that can be set is limited to 20.
+.Pp
+.Pa /etc/TIMEZONE
+is a symbolic link to
+.Pa /etc/default/init .
+This link exists for compatibility with legacy software, is obsolete, and may
+be removed in a future release.
+.Sh SEE ALSO
+.Xr ctime 3C ,
+.Xr environ 7 ,
+.Xr init 8 ,
+.Xr rtc 8 ,
+.Xr svc.startd 8 ,
+.Xr zoneadmd 8
+.Sh NOTES
+When changing the
+.Ev TZ
+setting on x86 systems, you must make a corresponding change to the
+.Pa /etc/rtc_config
+file to account for the new timezone setting.
+This can be accomplished by executing the following commands, followed by a
+reboot, to make the changes take effect:
+.Bd -literal -offset indent
+# rtc -z zone-name
+# rtc -c
+.Ed
+.Pp
+where
+.Ar zone-name
+is the same name as the
+.Ev TZ
+variable setting.
+.Pp
+See
+.Xr rtc 8
+for more information.
diff --git a/usr/src/man/man5/init.d.5 b/usr/src/man/man5/init.d.5
new file mode 100644
index 0000000000..d888704fd1
--- /dev/null
+++ b/usr/src/man/man5/init.d.5
@@ -0,0 +1,110 @@
+'\" te
+.\" Copyright (c) 2000, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH INIT.D 5 "May 13, 2017"
+.SH NAME
+init.d \- initialization and termination scripts for changing init states
+.SH SYNOPSIS
+.LP
+.nf
+\fB/etc/init.d\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+\fB/etc/init.d\fR is a directory containing initialization and termination
+scripts for changing init states. These scripts are linked when appropriate to
+files in the \fBrc?.d\fR directories, where `\fB?\fR' is a single character
+corresponding to the init state. See \fBinit\fR(8) for definitions of the
+states.
+.sp
+.LP
+The service management facility (see \fBsmf\fR(7)) is the preferred mechanism
+for service initiation and termination. The \fBinit.d\fR and \fBrc?.d\fR
+directories are obsolete, and are provided for compatibility purposes only.
+Applications launched from these directories by \fBsvc.startd\fR(8) are
+incomplete services, and will not be restarted on failure.
+.sp
+.LP
+File names in \fBrc?.d\fR directories are of the form \fB[SK]nn\fI<init.d
+filename>\fR\fR, where \fBS\fR means start this job, \fBK\fR means kill this
+job, and \fBnn\fR is the relative sequence number for killing or starting the
+job.
+.sp
+.LP
+When entering a state (init S,0,2,3,etc.) the \fBrc[S0-6]\fR script executes
+those scripts in \fB/etc/rc[S0-6].d\fR that are prefixed with \fBK\fR followed
+by those scripts prefixed with \fBS\fR. When executing each script in one of
+the \fB/etc/rc[S0-6] directories, the /sbin/rc[S0-6]\fR script passes a single
+argument. It passes the argument 'stop' for scripts prefixed with \fBK\fR and
+the argument 'start' for scripts prefixed with \fBS\fR. There is no harm in
+applying the same sequence number to multiple scripts. In this case the order
+of execution is deterministic but unspecified.
+.sp
+.LP
+Guidelines for selecting sequence numbers are provided in \fBREADME\fR files
+located in the directory associated with that target state. For example,
+\fB/etc/rc[S0-6].d/README\fR. Absence of a \fBREADME\fR file indicates that
+there are currently no established guidelines.
+.sp
+.LP
+Do not put \fB/etc/init.d\fR in your \fB$PATH\fR. Having this directory in your
+\fB$PATH\fR can cause unexpected behavior. The programs in \fB/etc/init.d\fR
+are associated with \fBinit\fR state changes and, under normal circumstances,
+are not intended to be invoked from a command line.
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRExample of \fB/sbin/rc2\fR.
+.sp
+.LP
+When changing to init state 2 (multi-user mode, network resources not
+exported), \fB/sbin/rc2\fR is initiated by the \fBsvc.startd\fR(8) process.
+The following steps are performed by \fB/sbin/rc2\fR.
+
+.RS +4
+.TP
+1.
+In the directory \fB/etc/rc2.d\fR are files used to stop processes that
+should not be running in state 2. The filenames are prefixed with \fBK\fR. Each
+\fBK\fR file in the directory is executed (by \fB/sbin/rc2\fR) in alphanumeric
+order when the system enters init state 2. See example below.
+.RE
+.RS +4
+.TP
+2.
+Also in the \fBrc2.d\fR directory are files used to start processes that
+should be running in state 2. As in Step 1, each \fBS\fR file is executed.
+.RE
+.sp
+.LP
+Assume the file \fB/etc/init.d/netdaemon\fR is a script that will initiate
+networking daemons when given the argument 'start', and will terminate the
+daemons if given the argument 'stop'. It is linked to
+\fB/etc/rc2.d/S68netdaemon\fR, and to \fB/etc/rc0.d/K67netdaemon\fR. The file
+is executed by \fB/etc/rc2.d/S68netdaemon start\fR when init state 2 is entered
+and by \fB/etc/rc0.d/K67netdaemon stop\fR when shutting the system down.
+
+.SH SEE ALSO
+.LP
+.BR svcs (1),
+.BR smf (7),
+.BR init (8),
+.BR svc.startd (8),
+.BR svccfg (8)
+.SH NOTES
+.LP
+Solaris now provides an expanded mechanism, which includes automated restart,
+for applications historically started via the init script mechanism. The
+Service Management Facility (introduced in \fBsmf\fR(7)) is the preferred
+delivery mechanism for persistently running applications. Existing \fBinit.d\fR
+scripts will, however, continue to be executed according to the rules in this
+manual page. The details of execution in relation to managed services are
+available in \fBsvc.startd\fR(8).
+.sp
+.LP
+On earlier Solaris releases, a script named with a suffix of '.sh' would be
+sourced, allowing scripts to modify the environment of other scripts executed
+later. This behavior is no longer supported; for altering the environment in
+which services are run, see the \fBsetenv\fR subcommand in \fBsvccfg\fR(8).
diff --git a/usr/src/man/man5/inittab.5 b/usr/src/man/man5/inittab.5
new file mode 100644
index 0000000000..cf11863256
--- /dev/null
+++ b/usr/src/man/man5/inittab.5
@@ -0,0 +1,257 @@
+'\" te
+.\" Copyright (c) 2001 Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH INITTAB 5 "Dec 9, 2004"
+.SH NAME
+inittab \- script for init
+.SH DESCRIPTION
+.sp
+.LP
+The \fB/etc/inittab\fR file controls process dispatching by \fBinit\fR. The
+processes most typically dispatched by \fBinit\fR are daemons.
+.sp
+.LP
+It is no longer necessary to edit the \fB/etc/inittab\fR file directly.
+Administrators should use the Solaris Service Management Facility (SMF) to
+define services instead. Refer to \fBsmf\fR(7) and the \fISystem Administration
+Guide: Basic Administration\fR for more information on SMF.
+.sp
+.LP
+To modify parameters passed to \fBttymon\fR(8), use \fBsvccfg\fR(8) to modify
+the SMF repository. See \fBttymon\fR(8) for details on the available SMF
+properties.
+.sp
+.LP
+The \fBinittab\fR file is composed of entries that are position dependent and
+have the following format:
+.sp
+.LP
+\fIid\fR\fB:\fR\fIrstate\fR\fB:\fR\fIaction\fR\fB:\fR\fIprocess\fR
+.sp
+.LP
+Each entry is delimited by a newline; however, a backslash (\e) preceding a
+newline indicates a continuation of the entry. Up to 512 characters for each
+entry are permitted. Comments may be inserted in the \fIprocess\fR field using
+the convention for comments described in \fBsh\fR(1). There are no limits
+(other than maximum entry size) imposed on the number of entries in the
+\fBinittab\fR file. The entry fields are:
+.sp
+.ne 2
+.na
+\fB\fIid\fR\fR
+.ad
+.RS 11n
+One to four characters used to uniquely identify an entry. Do not use the
+characters "r" or "t" as the first or only character in this field. These
+characters are reserved for the use of \fBrlogin\fR(1) and \fBtelnet\fR(1).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIrstate\fR\fR
+.ad
+.RS 11n
+Define the run level in which this entry is to be processed. Run-levels
+effectively correspond to a configuration of processes in the system. That is,
+each process spawned by \fBinit\fR is assigned a run level(s) in which it is
+allowed to exist. The run levels are represented by a number ranging from
+\fB0\fR through \fB6\fR. For example, if the system is in run level \fB1\fR,
+only those entries having a \fB1\fR in the \fIrstate\fR field are processed.
+.sp
+When \fBinit\fR is requested to change run levels, all processes that do not
+have an entry in the \fIrstate\fR field for the target run level are sent the
+warning signal \fBSIGTERM\fR and allowed a 5-second grace period before being
+forcibly terminated by the kill signal \fBSIGKILL\fR. The \fIrstate\fR field
+can define multiple run levels for a process by selecting more than one run
+level in any combination from \fB0\fR through \fB6\fR. If no run level is
+specified, then the process is assumed to be valid at all run levels \fB0\fR
+through \fB6\fR.
+.sp
+There are three other values, \fBa\fR, \fBb\fR and \fBc\fR, which can appear in
+the \fIrstate\fR field, even though they are not true run levels. Entries which
+have these characters in the \fIrstate\fR field are processed only when an
+\fBinit\fR or \fBtelinit\fR process requests them to be run (regardless of the
+current run level of the system). See \fBinit\fR(8). These differ from run
+levels in that \fBinit\fR can never enter run level \fBa\fR, \fBb\fR or
+\fBc\fR. Also, a request for the execution of any of these processes does not
+change the current run level. Furthermore, a process started by an \fBa\fR,
+\fBb\fR or \fBc\fR command is not killed when \fBinit\fR changes levels. They
+are killed only if their line in \fBinittab\fR is marked \fBoff\fR in the
+\fIaction\fR field, their line is deleted entirely from \fBinittab\fR, or
+\fBinit\fR goes into single-user state.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIaction\fR\fR
+.ad
+.RS 11n
+Key words in this field tell \fBinit\fR how to treat the process specified in
+the \fIprocess\fR field. The actions recognized by \fBinit\fR are as follows:
+.sp
+.ne 2
+.na
+\fB\fBrespawn\fR\fR
+.ad
+.RS 13n
+If the process does not exist, then start the process; do not wait for its
+termination (continue scanning the \fBinittab\fR file), and when the process
+dies, restart the process. If the process currently exists, do nothing and
+continue scanning the \fBinittab\fR file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBwait\fR\fR
+.ad
+.RS 13n
+When \fBinit\fR enters the run level that matches the entry's \fIrstate\fR,
+start the process and wait for its termination. All subsequent reads of the
+\fBinittab\fR file while \fBinit\fR is in the same run level cause \fBinit\fR
+to ignore this entry.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBonce\fR\fR
+.ad
+.RS 13n
+When \fBinit\fR enters a run level that matches the entry's \fIrstate\fR, start
+the process, do not wait for its termination. When it dies, do not restart the
+process. If \fBinit\fR enters a new run level and the process is still running
+from a previous run level change, the program is not restarted.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBboot\fR\fR
+.ad
+.RS 13n
+The entry is to be processed only at \fBinit\fR's boot-time read of the
+\fBinittab\fR file. \fBinit\fR is to start the process and not wait for its
+termination; when it dies, it does not restart the process. In order for this
+instruction to be meaningful, the \fIrstate\fR should be the default or it must
+match \fBinit\fR's run level at boot time. This action is useful for an
+initialization function following a hardware reboot of the system.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBbootwait\fR\fR
+.ad
+.RS 13n
+The entry is to be processed the first time \fBinit\fR goes from single-user to
+multi-user state after the system is booted. \fBinit\fR starts the process,
+waits for its termination and, when it dies, does not restart the process.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpowerfail\fR\fR
+.ad
+.RS 13n
+Execute the process associated with this entry only when \fBinit\fR receives a
+power fail signal, \fBSIGPWR\fR (see \fBsignal\fR(3C)).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpowerwait\fR\fR
+.ad
+.RS 13n
+Execute the process associated with this entry only when \fBinit\fR receives a
+power fail signal, \fBSIGPWR\fR, and wait until it terminates before continuing
+any processing of \fBinittab\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBoff\fR\fR
+.ad
+.RS 13n
+If the process associated with this entry is currently running, send the
+warning signal \fBSIGTERM\fR and wait 5 seconds before forcibly terminating the
+process with the kill signal \fBSIGKILL\fR. If the process is nonexistent,
+ignore the entry.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBondemand\fR\fR
+.ad
+.RS 13n
+This instruction is really a synonym for the \fBrespawn\fR action. It is
+functionally identical to \fBrespawn\fR but is given a different keyword in
+order to divorce its association with run levels. This instruction is used only
+with the \fBa\fR, \fBb\fR or \fBc\fR values described in the \fIrstate\fR
+field.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsysinit\fR\fR
+.ad
+.RS 13n
+Entries of this type are executed before \fBinit\fR tries to access the console
+(that is, before the \fBConsole Login:\fR prompt). It is expected that this
+entry will be used only to initialize devices that \fBinit\fR might try to ask
+the run level question. These entries are executed and \fBinit\fR waits for
+their completion before continuing.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIprocess\fR\fR
+.ad
+.RS 11n
+Specify a command to be executed. The entire \fBprocess\fR field is prefixed
+with \fBexec\fR and passed to a forked \fBsh\fR as \fBsh \(mic 'exec\fR
+\fBcommand\fR'. For this reason, any legal \fBsh\fR syntax can appear in the
+\fIprocess\fR field.
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR sh (1),
+.BR who (1),
+.BR exec (2),
+.BR open (2),
+.BR signal (3C),
+.BR smf (7),
+.BR init (8),
+.BR svc.startd (8),
+.BR svcadm (8),
+.BR ttymon (8)
+.sp
+.LP
+\fISystem Administration Guide: Basic Administration\fR
+.SH NOTES
+.sp
+.LP
+With the introduction of the service management facility, the system-provided
+\fB/etc/inittab\fR file is greatly reduced from previous releases.
+.sp
+.LP
+The \fBinitdefault\fR entry is not recognized in Solaris 10. See \fBsmf\fR(7)
+for information on \fBSMF\fR milestones, and \fBsvcadm\fR(8), which describes
+the "\fBsvcadm\fR \fBmilestone\fR \fB-d\fR" command; this provides similar
+functionality to modifying the \fBinitdefault\fR entry in previous versions of
+the Solaris OS.
diff --git a/usr/src/man/man5/inotify.5 b/usr/src/man/man5/inotify.5
deleted file mode 100644
index 9b0016101d..0000000000
--- a/usr/src/man/man5/inotify.5
+++ /dev/null
@@ -1,305 +0,0 @@
-'\" te
-.\" Copyright (c) 2014, Joyent, Inc. All Rights Reserved.
-.\" This file and its contents are supplied under the terms of the
-.\" Common Development and Distribution License ("CDDL"), version 1.0.
-.\" You may only use this file in accordance with the terms of version
-.\" 1.0 of the CDDL.
-.\"
-.\" A full copy of the text of the CDDL should have accompanied this
-.\" source. A copy of the CDDL is also available via the Internet at
-.\" http://www.illumos.org/license/CDDL.
-.TH INOTIFY 5 "Sep 17, 2014"
-.SH NAME
-inotify \- Linux-compatible file event notification facility
-.SH SYNOPSIS
-
-.LP
-.nf
-#include <sys/inotify.h>
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-
-\fBinotify\fR is a facility for receiving file system events on specified
-files or directories. When monitoring a directory, \fBinotify\fR can be
-used to retrieve events not only on the directory, but also on any files
-that the directory contains. \fBinotify\fR originated with Linux, and
-this facility is designed to be binary-compatible with the Linux facility,
-including the following interfaces:
-
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBinotify_init\fR(3C) creates an \fBinotify\fR instance, returning a file
-descriptor associated with the in-kernel event queue.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBinotify_init1\fR(3C) also creates an \fBinotify\fR instance, but allows
-for a flags argument that controls some attributes of the returned file
-descriptor.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBinotify_add_watch\fR(3C) allows a watch of a particular file or directory
-to be added to a watch list associated with the specified \fBinotify\fR
-instance. \fBinotify_add_watch\fR(3C) returns a watch descriptor that will
-be reflected in the \fIwd\fR member of the \fIinotify_event\fR structure
-returned via a \fBread\fR(2) of the instance.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBinotify_rm_watch\fR(3C) removes the watch that corresponds to the specified
-watch descriptor.
-.RE
-
-When all file descriptors referring to a particular \fBinotify\fR instance
-are closed, the instance and all watches associated with that instance are
-freed.
-
-To consume events on an \fBinotify\fR instance, an application should
-issue a \fBread\fR(2) to the instance. If no events are available
-(and the \fBinotify\fR instance has not been explicitly made non-blocking
-via \fBinotify_init1\fR(3C)) the \fBread\fR(2) will block until a
-watched event occurs. If and when events are available, \fBread\fR(2) will
-return an array of the following structures:
-
-.sp
-.in +2
-.nf
-struct inotify_event {
- int wd; /* watch descriptor */
- uint32_t mask; /* mask of event */
- uint32_t cookie; /* cookie for associating renames */
- uint32_t len; /* size of name field */
- char name[]; /* optional name */
-};
-.fi
-.in -2
-
-\fIwd\fR contains the watch descriptor that corresponds to the event,
-as returned by \fBinotify_add_watch\fR(3C).
-
-\fImask\fR is a bitwise \fBOR\fR of event masks (see below) that
-describes the event.
-
-\fIcookie\fR is an opaque value that can be used to associate different
-events into a single logical event. In particular, it allows consumers to
-associate \fBIN_MOVED_FROM\fR events with subsequent \fBIN_MOVED_TO\fR
-events.
-
-\fIlen\fR denotes the length of the \fIname\fR field, including any padding
-required for trailing null bytes and alignment. The size of the entire
-event is therefore the size of the \fIinotify_event\fR structure plus the
-value of \fIlen\fR.
-
-\fIname\fR contains the name of the file associated with the event, if any.
-This field is only present when the watched entity is a directory and
-the event corresponds to a file that was contained by the watched directory
-(though see \fBNOTES\fR and \fBWARNINGS\fR for details and limitations).
-When present, \fIname\fR is null terminated, and may contain additional
-zero bytes
-to pad for alignment. (The length of this field -- including any bytes
-for alignment -- is denoted by the \fIlen\fR field.)
-
-.SS "Events"
-
-The events that can be generated on a watched entity are as follows:
-
-.sp
-.in +2
-.TS
-c c
-l l .
-\fIEvent\fR \fIDescription\fR
-\fBIN_ACCESS\fR File/directory was accessed
-\fBIN_ATTRIB\fR File/directory attributes were changed
-\fBIN_CLOSE_WRITE\fR File/directory opened for writing was closed
-\fBIN_CLOSE_NOWRITE\fR File/directory not opened for writing was closed
-\fBIN_CREATE\fR File/directory created in watched directory
-\fBIN_DELETE\fR File/directory deleted from watched directory
-\fBIN_DELETE_SELF\fR Watched file/directory was deleted
-\fBIN_MODIFY\fR File/directory was modified
-\fBIN_MODIFY_SELF\fR Watched file/directory was modified
-\fBIN_MOVED_FROM\fR File was renamed from entity in watched directory
-\fBIN_MOVED_TO\fR File was renamed to entity in watched directory
-\fBIN_OPEN\fR File/directory was opened
-.TE
-.in -2
-
-Of these, all events except \fBIN_MOVE_SELF\fR and \fBIN_DELETE_SELF\fR
-can refer to either the watched entity or (if the watched entity
-is a directory) a file or directory contained by the watched directory.
-(See \fBNOTES\fR and \fBWARNINGS\fR, below for details on this
-mechanism and its limitations.)
-If the event corresponds to a contained entity,
-\fIname\fR will be set to the name of the affected
-entity.
-
-In addition to speciyfing events of interest, watched events may
-be modified by potentially setting any of the following when adding a
-watch via \fBinotify_add_watch\fR(3C):
-
-.sp
-.ne 2
-.na
-\fBIN_DONT_FOLLOW\fR
-.ad
-.RS 12n
-Don't follow the specified pathname if it is a symbolic link.
-.RE
-
-.sp
-.ne 2
-.na
-\fBIN_EXCL_UNLINK\fR
-.ad
-.RS 12n
-If watching a directory and a contained entity becomes unlinked, cease
-generating events for that entity. (By default, contained entities will
-continue to generate events on their former parent directory.)
-.RE
-
-.sp
-.ne 2
-.na
-\fBIN_MASK_ADD\fR
-.ad
-.RS 12n
-If the specified pathname is already being watched, the specified events
-will be added to the watched events instead of the default behavior of
-replacing them. (If one
-may forgive the editorializing, this particular interface gewgaw
-seems entirely superfluous, and a canonical example of
-feasibility trumping wisdom.)
-.RE
-
-.sp
-.ne 2
-.na
-\fBIN_ONESHOT\fR
-.ad
-.RS 12n
-Once an event has been generated for the watched entity, remove the
-watch from the watch list as if \fBinotify_rm_watch\fR(3C) had been called
-on it (thereby inducing an \fBIN_IGNORED\fR event).
-.RE
-
-.sp
-.ne 2
-.na
-\fBIN_ONLYDIR\fR
-.ad
-.RS 12n
-Only watch the specified pathname if it is a directory.
-.RE
-
-In addition to the specified events, the following bits may be specified
-in the \fImask\fR field as returned from \fBread\fR(2):
-
-.sp
-.ne 2
-.na
-\fBIN_IGNORED\fR
-.ad
-.RS 12n
-A watch was removed explicitly (i.e, via \fBinotify_rm_watch\fR(3C)) or
-implicitly (e.g., because \fBIN_ONESHOT\fR was set or because the watched
-entity was deleted).
-.RE
-
-.sp
-.ne 2
-.na
-\fBIN_ISDIR\fR
-.ad
-.RS 12n
-The entity inducing the event is a directory.
-.RE
-
-.sp
-.ne 2
-.na
-\fBIN_Q_OVERFLOW\fR
-.ad
-.RS 12n
-The event queue exceeded the maximum event queue length per instance.
-(By default, this is 16384, but it can be tuned by setting
-\fBinotify_maxevents\fR via \fB/etc/system\fR.)
-.RE
-
-.sp
-.ne 2
-.na
-\fBIN_UNMOUNT\fR
-.ad
-.RS 12n
-The filesystem containing the watched entity was unmounted.
-.RE
-
-.sp
-.SH NOTES
-.sp
-.LP
-
-\fBinotify\fR instances can be monitored via \fBpoll\fR(2),
-\fBport_get\fR(3C), \fBepoll\fR(5), etc.
-
-The event queue associated with an \fBinotify\fR instance is serialized
-and ordered: events will be placed on the tail of the queue in the order
-that they occur.
-
-If at the time an event occurs the tail of the event queue is identical
-to the newly received event, the newly received event will be dropped,
-effectively coalescing the two events.
-
-When watching a directory and receieving events on contained elements
-(i.e., a contained file or subdirectory), note that the information
-received in the \fIname\fR field may be stale: the file may have been
-renamed between the event and its processing. If a file has been unlinked
-(and if \fBIN_EXCL_UNLINK\fR has not been set),
-the \fIname\fR will reflect the last name that resolved to the file.
-If a new file is created in the same directory with the old name, events
-on the new file and the old (unlinked) file will become undistinguishable.
-
-The number of bytes that are available to be read on an \fBinotify\fR
-instance can be determined via a \fBFIONREAD\fR \fBioctl\fR(2).
-
-.sp
-.SH WARNINGS
-.sp
-.LP
-
-While a best effort has been made to mimic the Linux semantics, there
-remains a fundamental difference with respect to hard links: on Linux,
-if a file has multiple hard links to it, a notification on a watched
-directory or file will be received if and only if that event was received
-via the watched path. For events that are induced by open files
-(such as \fBIN_MODIFY\fR), these semantics seem peculiar: the watched
-file is in fact changing, but because it is not changing via the watched
-path, no notification is received. By contrast, the implementation here
-will always yield an event in this case -- even if the event was induced
-by an \fBopen\fR(2) via an unwatched path. If an event occurs within a
-watched directory on a file for which there exist multiple hard links within
-the same (watched) directory, the event's \fIname\fR will correspond to one
-of the links to the file. If multiple hard links exist to the
-same file in the same watched directory and one of the links is removed,
-notifications may not necessarily continue to be received for the file,
-despite the (remaining) link in the watched directory; users of
-\fBinotify\fR should exercise extreme caution when watching directories
-that contain files with multiple hard links in the same directory.
-
-.SH SEE ALSO
-.sp
-.LP
-\fBinotify_init\fR(3C), \fBinotify_init1\fR(3C), \fBinotify_add_watch\fR(3C),
-\fBinotify_rm_watch\fR(3C), \fBport_get\fR(3C), \fBepoll\fR(5)
diff --git a/usr/src/man/man5/ipaddrsel.conf.5 b/usr/src/man/man5/ipaddrsel.conf.5
new file mode 100644
index 0000000000..2cc5ef04f7
--- /dev/null
+++ b/usr/src/man/man5/ipaddrsel.conf.5
@@ -0,0 +1,68 @@
+'\" te
+.\" Copyright (C) 2003, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH IPADDRSEL.CONF 5 "Mar 6, 2003"
+.SH NAME
+ipaddrsel.conf \- IPv6 default address selection policy
+.SH SYNOPSIS
+.LP
+.nf
+\fB/etc/inet/ipaddrsel.conf\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBipaddrsel.conf\fR file contains the IPv6 default address selection
+policy table used for IPv6 source address selection and the sorting of
+\fBAF_INET6\fR addresses returned from name to address resolution. The
+mechanism for loading the file, the file format, and the meaning of the
+contents are described in \fBipaddrsel\fR(8).
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRDefault \fB/etc/inet/ipaddrsel.conf\fR File
+.sp
+.LP
+The following is the default \fB/etc/inet/ipaddrsel.conf\fR file:
+
+.sp
+.in +2
+.nf
+#
+#ident "@(#)ipv6das.conf 1.1 02/07/28 SMI"
+#
+# Copyright 2002 Sun Microsystems, Inc. All rights reserved.
+# Use is subject to license terms.
+#
+# Prefix Precedence Label
+::1/128 50 0
+::/0 40 1
+2002::/16 30 2
+::/96 20 3
+::ffff:0.0.0.0/96 10 4
+.fi
+.in -2
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7),
+.BR ipaddrsel (8)
diff --git a/usr/src/man/man5/ipf.5 b/usr/src/man/man5/ipf.5
new file mode 100644
index 0000000000..90ea7d192e
--- /dev/null
+++ b/usr/src/man/man5/ipf.5
@@ -0,0 +1,553 @@
+'\" te
+.\" To view license terms, attribution, and copyright for IP Filter, the
+.\" default path is /usr/lib/ipf/IPFILTER.LICENCE. If the illumos operating
+.\" environment has been installed anywhere other than the default, modify the
+.\" given path to access the file at the installed location.
+.\" Portions Copyright (c) 2015, Joyent, Inc.
+.TH IPF 5 "Mar 18, 2015"
+.SH NAME
+ipf, ipf.conf, ipf6.conf \- IP packet filter rule syntax
+.SH DESCRIPTION
+A rule file for \fBipf\fP may have any name or even be stdin. As
+\fBipfstat\fP produces parsable rules as output when displaying the internal
+kernel filter lists, it is quite plausible to use its output to feed back
+into \fBipf\fP. Thus, to remove all filters on input packets, the following
+could be done:
+.nf
+
+# ipfstat \-i | ipf \-rf \-\fP
+.fi
+.SH GRAMMAR
+The format used by \fBipf\fP for construction of filtering rules can be
+described using the following grammar in BNF:
+.nf
+filter-rule = [ insert ] action in-out [ options ] [ tos ] [ ttl ]
+ [ proto ] ip [ group ].
+
+insert = "@" decnumber .
+action = block | "pass" | log | "count" | skip | auth | call .
+in-out = "in" | "out" .
+options = [ log ] [ tag ] [ "quick" ] [ "on" interface-name [ dup ]
+ [ froute ] [ replyto ] ] .
+tos = "tos" decnumber | "tos" hexnumber .
+ttl = "ttl" decnumber .
+proto = "proto" protocol .
+ip = srcdst [ flags ] [ with withopt ] [ icmp ] [ keep ] .
+group = [ "head" decnumber ] [ "group" decnumber ] .
+
+block = "block" [ return-icmp[return-code] | "return-rst" ] .
+log = "log" [ "body" ] [ "first" ] [ "or-block" ] [ "level" loglevel ] .
+tag = "tag" tagid .
+skip = "skip" decnumber .
+auth = "auth" | "preauth" .
+call = "call" [ "now" ] function-name .
+dup = "dup-to" interface-name [ ":" ipaddr ] .
+froute = "fastroute" | "to" interface-name [ ":" ipaddr ] .
+replyto = "reply-to" interface-name [ ":" ipaddr ] .
+protocol = "tcp/udp" | "udp" | "tcp" | "icmp" | decnumber .
+srcdst = "all" | fromto .
+fromto = "from" [ "!" ] object "to" [ "!" ] object .
+
+return-icmp = "return-icmp" | "return-icmp-as-dest" .
+return-code = "(" icmp-code ")" .
+object = addr [ port-comp | port-range ] .
+addr = "any" | nummask | host-name [ "mask" ipaddr | "mask" hexnumber ] .
+addr = "any" | "<thishost>" | nummask |
+ host-name [ "mask" ipaddr | "mask" hexnumber ] .
+port-comp = "port" compare port-num .
+port-range = "port" port-num range port-num .
+flags = "flags" flag { flag } [ "/" flag { flag } ] .
+with = "with" | "and" .
+icmp = "icmp-type" icmp-type [ "code" decnumber ] .
+return-code = "(" icmp-code ")" .
+keep = "keep" "state" [ "(" state-options ")" ] | "keep" "frags" .
+loglevel = facility"."priority | priority .
+
+nummask = host-name [ "/" decnumber ] .
+host-name = ipaddr | hostname | "any" .
+ipaddr = host-num "." host-num "." host-num "." host-num .
+host-num = digit [ digit [ digit ] ] .
+port-num = service-name | decnumber .
+state-options = state-opts [ "," state-options ] .
+
+state-opts = "age" decnumber [ "/" decnumber ] | "strict" |
+ "no-icmp-err" | "limit" decnumber | "newisn" | "sync" .
+withopt = [ "not" | "no" ] opttype [ withopt ] .
+opttype = "ipopts" | "short" | "frag" | "opt" optname .
+optname = ipopts [ "," optname ] .
+ipopts = optlist | "sec-class" [ secname ] .
+secname = seclvl [ "," secname ] .
+seclvl = "unclass" | "confid" | "reserv-1" | "reserv-2" | "reserv-3" |
+ "reserv-4" | "secret" | "topsecret" .
+icmp-type = "unreach" | "echo" | "echorep" | "squench" | "redir" |
+ "timex" | "paramprob" | "timest" | "timestrep" | "inforeq" |
+ "inforep" | "maskreq" | "maskrep" | decnumber .
+icmp-code = decumber | "net-unr" | "host-unr" | "proto-unr" | "port-unr" |
+ "needfrag" | "srcfail" | "net-unk" | "host-unk" | "isolate" |
+ "net-prohib" | "host-prohib" | "net-tos" | "host-tos" |
+ "filter-prohib" | "host-preced" | "cutoff-preced" .
+optlist = "nop" | "rr" | "zsu" | "mtup" | "mtur" | "encode" | "ts" |
+ "tr" | "sec" | "lsrr" | "e-sec" | "cipso" | "satid" | "ssrr" |
+ "addext" | "visa" | "imitd" | "eip" | "finn" .
+facility = "kern" | "user" | "mail" | "daemon" | "auth" | "syslog" |
+ "lpr" | "news" | "uucp" | "cron" | "ftp" | "authpriv" |
+ "audit" | "logalert" | "local0" | "local1" | "local2" |
+ "local3" | "local4" | "local5" | "local6" | "local7" .
+priority = "emerg" | "alert" | "crit" | "err" | "warn" | "notice" |
+ "info" | "debug" .
+
+hexnumber = "0" "x" hexstring .
+hexstring = hexdigit [ hexstring ] .
+decnumber = digit [ decnumber ] .
+
+compare = "=" | "!=" | "<" | ">" | "<=" | ">=" | "eq" | "ne" | "lt" |
+ "gt" | "le" | "ge" .
+range = "<>" | "><" .
+hexdigit = digit | "a" | "b" | "c" | "d" | "e" | "f" .
+digit = "0" | "1" | "2" | "3" | "4" | "5" | "6" | "7" | "8" | "9" .
+flag = "F" | "S" | "R" | "P" | "A" | "U" .
+.fi
+.PP
+This syntax is somewhat simplified for readability, some combinations
+that match this grammar are disallowed by the software because they do
+not make sense (such as tcp \fBflags\fP for non-TCP packets).
+.SH FILTER RULES
+The "briefest" valid rules are (currently) no-ops and are of the form:
+.nf
+ block in all
+ pass in all
+ log out all
+ count in all
+.fi
+.PP
+Filter rules are checked in order, with the last matching rule
+determining the fate of the packet (but see the \fBquick\fP option,
+below).
+.PP
+Filters are installed by default at the end of the kernel's filter
+lists, prepending the rule with \fB@n\fP will cause it to be inserted
+as the n'th entry in the current list. This is especially useful when
+modifying and testing active filter rulesets. See \fBipf\fP(8) for more
+information.
+.SH ACTIONS
+The action indicates what to do with the packet if it matches the rest
+of the filter rule. Each rule MUST have an action. The following
+actions are recognised:
+.TP
+.B block
+indicates that the packet should be flagged to be dropped. In response
+to blocking a packet, the filter may be instructed to send a reply
+packet, either an ICMP packet (\fBreturn-icmp\fP), an ICMP packet
+masquerading as being from the original packet's destination
+(\fBreturn-icmp-as-dest\fP), or a TCP "reset" (\fBreturn-rst\fP). An
+ICMP packet may be generated in response to any IP packet, and its
+type may optionally be specified, but a TCP reset may only be used
+with a rule which is being applied to TCP packets. When using
+\fBreturn-icmp\fP or \fBreturn-icmp-as-dest\fP, it is possible to specify
+the actual unreachable `type'. That is, whether it is a network
+unreachable, port unreachable or even administratively
+prohibited. This is done by enclosing the ICMP code associated with
+it in parenthesis directly following \fBreturn-icmp\fP or
+\fBreturn-icmp-as-dest\fP as follows:
+.nf
+ block return-icmp(11) ...
+.fi
+.PP
+Would return a Type-Of-Service (TOS) ICMP unreachable error.
+.TP
+.B pass
+will flag the packet to be let through the filter.
+.TP
+.B log
+causes the packet to be logged (as described in the LOGGING section
+below) and has no effect on whether the packet will be allowed through
+the filter.
+.TP
+.B count
+causes the packet to be included in the accounting statistics kept by
+the filter, and has no effect on whether the packet will be allowed through
+the filter. These statistics are viewable with ipfstat(8).
+.TP
+.B call
+this action is used to invoke the named function in the kernel, which
+must conform to a specific calling interface. Customised actions and
+semantics can thus be implemented to supplement those available. This
+feature is for use by knowledgeable hackers, and is not currently
+documented.
+.TP
+.B "skip <n>"
+causes the filter to skip over the next \fIn\fP filter rules. If a rule is
+inserted or deleted inside the region being skipped over, then the value of
+\fIn\fP is adjusted appropriately.
+.TP
+.B auth
+this allows authentication to be performed by a user-space program running
+and waiting for packet information to validate. The packet is held for a
+period of time in an internal buffer whilst it waits for the program to return
+to the kernel the \fIreal\fP flags for whether it should be allowed through
+or not. Such a program might look at the source address and request some sort
+of authentication from the user (such as a password) before allowing the
+packet through or telling the kernel to drop it if from an unrecognised source.
+.TP
+.B preauth
+tells the filter that for packets of this class, it should look in the
+pre-authenticated list for further clarification. If no further matching
+rule is found, the packet will be dropped (the FR_PREAUTH is not the same
+as FR_PASS). If a further matching rule is found, the result from that is
+used in its instead. This might be used in a situation where a person
+\fIlogs in\fP to the firewall and it sets up some temporary rules defining
+the access for that person.
+.PP
+The next word must be either \fBin\fP or \fBout\fP. Each packet
+moving through the kernel is either inbound (just been received on an
+interface, and moving towards the kernel's protocol processing) or
+outbound (transmitted or forwarded by the stack, and on its way to an
+interface). There is a requirement that each filter rule explicitly
+state which side of the I/O it is to be used on.
+.SH OPTIONS
+The list of options is brief, and all are indeed optional. Where
+options are used, they must be present in the order shown here. These
+are the currently supported options:
+.TP
+.B log
+indicates that, should this be the last matching rule, the packet
+header will be written to the \fBipl\fP log (as described in the
+LOGGING section below).
+.TP
+.B tag tagid
+indicates that, if this rule causes the packet to be logged or entered
+in the state table, the tagid will be logged as part of the log entry.
+This can be used to quickly match "similar" rules in scripts that post
+process the log files for e.g. generation of security reports or accounting
+purposes. The tagid is a 32 bit unsigned integer.
+.TP
+.B quick
+allows "short-cut" rules in order to speed up the filter or override
+later rules. If a packet matches a filter rule which is marked as
+\fBquick\fP, this rule will be the last rule checked, allowing a
+"short-circuit" path to avoid processing later rules for this
+packet. The current status of the packet (after any effects of the
+current rule) will determine whether it is passed or blocked.
+.IP
+If this option is missing, the rule is taken to be a "fall-through"
+rule, meaning that the result of the match (block/pass) is saved and
+that processing will continue to see if there are any more matches.
+.TP
+.B on
+allows an interface name to be incorporated into the matching
+procedure. Interface names are as printed by "netstat \-i". If this
+option is used, the rule will only match if the packet is going
+through that interface in the specified direction (in/out). If this
+option is absent, the rule is taken to be applied to a packet
+regardless of the interface it is present on (i.e. on all interfaces).
+Filter rulesets are common to all interfaces, rather than having a
+filter list for each interface.
+.IP
+This option is especially useful for simple IP-spoofing protection:
+packets should only be allowed to pass inbound on the interface from
+which the specified source address would be expected, others may be
+logged and/or dropped.
+.TP
+.B dup-to
+causes the packet to be copied, and the duplicate packet to be sent
+outbound on the specified interface, optionally with the destination
+IP address changed to that specified. This is useful for off-host
+logging, using a network sniffer.
+.TP
+.B to
+causes the packet to be moved to the outbound queue on the
+specified interface. This can be used to circumvent kernel routing
+decisions, and even to bypass the rest of the kernel processing of the
+packet (if applied to an inbound rule). It is thus possible to
+construct a firewall that behaves transparently, like a filtering hub
+or switch, rather than a router. The \fBfastroute\fP keyword is a
+synonym for this option.
+.SH MATCHING PARAMETERS
+The keywords described in this section are used to describe attributes
+of the packet to be used when determining whether rules match or don't
+match. The following general-purpose attributes are provided for
+matching, and must be used in this order:
+.TP
+.B tos
+packets with different Type-Of-Service values can be filtered.
+Individual service levels or combinations can be filtered upon. The
+value for the TOS mask can either be represented as a hex number or a
+decimal integer value.
+.TP
+.B ttl
+packets may also be selected by their Time-To-Live value. The value given in
+the filter rule must exactly match that in the packet for a match to occur.
+This value can only be given as a decimal integer value.
+.TP
+.B proto
+allows a specific protocol to be matched against. All protocol names
+found in \fB/etc/protocols\fP are recognised and may be used.
+However, the protocol may also be given as a DECIMAL number, allowing
+for rules to match your own protocols, or new ones which would
+out-date any attempted listing.
+.IP
+The special protocol keyword \fBtcp/udp\fP may be used to match either
+a TCP or a UDP packet, and has been added as a convenience to save
+duplication of otherwise-identical rules.
+.\" XXX grammar should reflect this (/etc/protocols)
+.PP
+The \fBfrom\fP and \fBto\fP keywords are used to match against IP
+addresses (and optionally port numbers). Rules must specify BOTH
+source and destination parameters.
+.PP
+IP addresses may be specified in one of two ways: as a numerical
+address\fB/\fPmask, or as a hostname \fBmask\fP netmask. The hostname
+may either be a valid hostname, from either the hosts file or DNS
+(depending on your configuration and library) or of the dotted numeric
+form. There is no special designation for networks but network names
+are recognised. Note that having your filter rules depend on DNS
+results can introduce an avenue of attack, and is discouraged.
+.PP
+There is a special case for the hostname \fBany\fP which is taken to
+be 0.0.0.0/0 (see below for mask syntax) and matches all IP addresses.
+Only the presence of "any" has an implied mask, in all other
+situations, a hostname MUST be accompanied by a mask. It is possible
+to give "any" a hostmask, but in the context of this language, it is
+non-sensical.
+.PP
+The numerical format "x\fB/\fPy" indicates that a mask of y
+consecutive 1 bits set is generated, starting with the MSB, so a y value
+of 16 would give 0xffff0000. The symbolic "x \fBmask\fP y" indicates
+that the mask y is in dotted IP notation or a hexadecimal number of
+the form 0x12345678. Note that all the bits of the IP address
+indicated by the bitmask must match the address on the packet exactly;
+there isn't currently a way to invert the sense of the match, or to
+match ranges of IP addresses which do not express themselves easily as
+bitmasks (anthropomorphization; it's not just for breakfast anymore).
+.PP
+If a \fBport\fP match is included, for either or both of source and
+destination, then it is only applied to
+.\" XXX - "may only be" ? how does this apply to other protocols? will it not match, or will it be ignored?
+TCP and UDP packets. If there is no \fBproto\fP match parameter,
+packets from both protocols are compared. This is equivalent to "proto
+tcp/udp". When composing \fBport\fP comparisons, either the service
+name or an integer port number may be used. Port comparisons may be
+done in a number of forms, with a number of comparison operators, or
+port ranges may be specified. When the port appears as part of the
+\fBfrom\fP object, it matches the source port number, when it appears
+as part of the \fBto\fP object, it matches the destination port number.
+See the examples for more information.
+.PP
+The \fBall\fP keyword is essentially a synonym for "from any to any"
+with no other match parameters.
+.PP
+Following the source and destination matching parameters, the
+following additional parameters may be used:
+.TP
+.B with
+is used to match irregular attributes that some packets may have
+associated with them. To match the presence of IP options in general,
+use \fBwith ipopts\fP. To match packets that are too short to contain
+a complete header, use \fBwith short\fP. To match fragmented packets,
+use \fBwith frag\fP. For more specific filtering on IP options,
+individual options can be listed.
+.IP
+Before any parameter used after the \fBwith\fP keyword, the word
+\fBnot\fP or \fBno\fP may be inserted to cause the filter rule to only
+match if the option(s) is not present.
+.IP
+Multiple consecutive \fBwith\fP clauses are allowed. Alternatively,
+the keyword \fBand\fP may be used in place of \fBwith\fP, this is
+provided purely to make the rules more readable ("with ... and ...").
+When multiple clauses are listed, all those must match to cause a
+match of the rule.
+.\" XXX describe the options more specifically in a separate section
+.TP
+.B flags
+is only effective for TCP filtering. Each of the letters possible
+represents one of the possible flags that can be set in the TCP
+header. The association is as follows:
+.LP
+.nf
+ F - FIN
+ S - SYN
+ R - RST
+ P - PUSH
+ A - ACK
+ U - URG
+.fi
+.IP
+The various flag symbols may be used in combination, so that "SA"
+would represent a SYN-ACK combination present in a packet. There is
+nothing preventing the specification of combinations, such as "SFR",
+that would not normally be generated by law-abiding TCP
+implementations. However, to guard against weird aberrations, it is
+necessary to state which flags you are filtering against. To allow
+this, it is possible to set a mask indicating which TCP flags you wish
+to compare (i.e., those you deem significant). This is done by
+appending "/<flags>" to the set of TCP flags you wish to match
+against, e.g.:
+.LP
+.nf
+ ... flags S
+ # becomes "flags S/AUPRFS" and will match
+ # packets with ONLY the SYN flag set.
+
+ ... flags SA
+ # becomes "flags SA/AUPRFS" and will match any
+ # packet with only the SYN and ACK flags set.
+
+ ... flags S/SA
+ # will match any packet with just the SYN flag set
+ # out of the SYN-ACK pair; the common "establish"
+ # keyword action. "S/SA" will NOT match a packet
+ # with BOTH SYN and ACK set, but WILL match "SFP".
+.fi
+.TP
+.B icmp-type
+is only effective when used with \fBproto icmp\fP and must NOT be used
+in conjunction with \fBflags\fP. There are a number of types, which can be
+referred to by an abbreviation recognised by this language, or the numbers
+with which they are associated can be used. The most important from
+a security point of view is the ICMP redirect.
+.SH KEEP HISTORY
+The second last parameter which can be set for a filter rule is whether or not
+to record historical information for that packet, and what sort to keep. The
+following information can be kept:
+.TP
+.B state
+keeps information about the flow of a communication session. State can
+be kept for TCP, UDP, and ICMP packets.
+.TP
+.B frags
+keeps information on fragmented packets, to be applied to later
+fragments.
+.PP
+allowing packets which match these to flow straight through, rather
+than going through the access control list.
+.SH GROUPS
+The last pair of parameters control filter rule "grouping". By default, all
+filter rules are placed in group 0 if no other group is specified. To add a
+rule to a non-default group, the group must first be started by creating a
+group \fIhead\fP. If a packet matches a rule which is the \fIhead\fP of a
+group, the filter processing then switches to the group, using that rule as
+the default for the group. If \fBquick\fP is used with a \fBhead\fP rule, rule
+processing isn't stopped until it has returned from processing the group.
+.PP
+A rule may be both the head for a new group and a member of a non-default
+group (\fBhead\fP and \fBgroup\fP may be used together in a rule).
+.TP
+.B "head <n>"
+indicates that a new group (number n) should be created.
+.TP
+.B "group <n>"
+indicates that the rule should be put in group (number n) rather than group 0.
+.SH LOGGING
+When a packet is logged, with either the \fBlog\fP action or option,
+the headers of the packet are written to the \fBipl\fP packet logging
+pseudo-device. Immediately following the \fBlog\fP keyword, the
+following qualifiers may be used (in order):
+.TP
+.B body
+indicates that the first 128 bytes of the packet contents will be
+logged after the headers.
+.TP
+.B first
+If log is being used in conjunction with a "keep" option, it is recommended
+that this option is also applied so that only the triggering packet is logged
+and not every packet which thereafter matches state information.
+.TP
+.B or-block
+indicates that, if for some reason the filter is unable to log the
+packet (such as the log reader being too slow) then the rule should be
+interpreted as if the action was \fBblock\fP for this packet.
+.TP
+.B "level <loglevel>"
+indicates what logging facility and priority, or just priority with
+the default facility being used, will be used to log information about
+this packet using ipmon's -s option.
+.PP
+See ipl(5) for the format of records written
+to this device. The ipmon(8) program can be used to read and format
+this log.
+.SH EXAMPLES
+The \fBquick\fP option is good for rules such as:
+.nf
+block in quick from any to any with ipopts
+.fi
+.PP
+which will match any packet with a non-standard header length (IP
+options present) and abort further processing of later rules,
+recording a match and also that the packet should be blocked.
+.PP
+The "fall-through" rule parsing allows for effects such as this:
+.LP
+.nf
+ block in from any to any port < 6000
+ pass in from any to any port >= 6000
+ block in from any to any port > 6003
+.fi
+.PP
+which sets up the range 6000-6003 as being permitted and all others being
+denied. Note that the effect of the first rule is overridden by subsequent
+rules. Another (easier) way to do the same is:
+.LP
+.nf
+ block in from any to any port 6000 <> 6003
+ pass in from any to any port 5999 >< 6004
+.fi
+.PP
+Note that both the "block" and "pass" are needed here to effect a
+result as a failed match on the "block" action does not imply a pass,
+only that the rule hasn't taken effect. To then allow ports < 1024, a
+rule such as:
+.LP
+.nf
+ pass in quick from any to any port < 1024
+.fi
+.PP
+would be needed before the first block. To create a new group for
+processing all inbound packets on le0/le1/lo0, with the default being to block
+all inbound packets, we would do something like:
+.LP
+.nf
+ block in all
+ block in quick on le0 all head 100
+ block in quick on le1 all head 200
+ block in quick on lo0 all head 300
+.fi
+.PP
+and to then allow ICMP packets in on le0, only, we would do:
+.LP
+.nf
+ pass in proto icmp all group 100
+.fi
+.PP
+Note that because only inbound packets on le0 are used processed by group 100,
+there is no need to respecify the interface name. Likewise, we could further
+breakup processing of TCP, etc, as follows:
+.LP
+.nf
+ block in proto tcp all head 110 group 100
+ pass in from any to any port = 23 group 110
+.fi
+.PP
+and so on. The last line, if written without the groups would be:
+.LP
+.nf
+ pass in on le0 proto tcp from any to any port = telnet
+.fi
+.PP
+Note, that if we wanted to say "port = telnet", "proto tcp" would
+need to be specified as the parser interprets each rule on its own and
+qualifies all service/port names with the protocol specified.
+.SH FILES
+/dev/ipauth
+.br
+/dev/ipl
+.br
+/dev/ipstate
+.br
+/etc/hosts
+.br
+/etc/services
+.SH SEE ALSO
+.BR ipnat (5),
+.BR ipfilter (7),
+.BR ipf (8),
+.BR ipfstat (8)
diff --git a/usr/src/man/man5/ipfilter.5 b/usr/src/man/man5/ipfilter.5
deleted file mode 100644
index 9b995d3c3b..0000000000
--- a/usr/src/man/man5/ipfilter.5
+++ /dev/null
@@ -1,335 +0,0 @@
-'\" te
-.\" To view license terms, attribution, and copyright for IP Filter, the default path is /usr/lib/ipf/IPFILTER.LICENCE. If the Solaris operating environment has been installed anywhere other than the default, modify the given path to access the file at the installed
-.\" location.
-.\" Portions Copyright (c) 2009, Sun Microsystems Inc. All Rights Reserved.
-.\" Portions Copyright (c) 2014, Joyent, Inc. All Rights Reserved.
-.TH IPFILTER 5 "Oct 7, 2014"
-.SH NAME
-ipfilter \- IP packet filtering software
-.SH DESCRIPTION
-.LP
-IP Filter is software that provides packet filtering capabilities on a Solaris
-system. On a properly setup system, it can be used to build a firewall.
-.sp
-.LP
-Solaris IP Filter is installed with the Solaris operating system. However,
-packet filtering is not enabled by default. See \fBipf\fR(1M) for a procedure
-to enable and activate the IP Filter feature.
-.SH HOST-BASED FIREWALL
-.LP
-To simplify IP Filter configuration management, a firewall framework is created
-to allow users to configure IP Filter by expressing firewall policy at system
-and service level. Given the user-defined firewall policy, the framework
-generates a set of IP Filter rules to enforce the desired system behavior.
-Users specify system and service firewall policies that allow or deny network
-traffic from certain hosts, subnets, and interface(s). The policies are
-translated into a set of active IPF rules to enforce the specified firewall
-policies.
-.LP
-Note -
-.sp
-.RS 2
-Users can still specify their own ipf rule file if they choose not to take
-advantage of the framework. See \fBipf\fR(1M) and \fBipf\fR(4).
-.RE
-.SS "Model"
-.LP
-This section describes the host-based firewall framework. See svc.ipfd(1M) for
-details on how to configure firewall policies.
-.sp
-.LP
-In a given zone, a three-layer approach with different precedence levels helps
-the user achieve the desired behaviors.
-.sp
-.ne 2
-.na
-\fBGlobal Default\fR
-.ad
-.sp .6
-.RS 4n
-Global Default - Default system-wide firewall policy. This policy is
-automatically inherited by all services unless services modify their firewall
-policy.
-.RE
-
-.sp
-.ne 2
-.na
-\fBNetwork Services\fR
-.ad
-.sp .6
-.RS 4n
-Higher precedence than Global Default. A service's policy allows/disallows
-traffic to its specific ports, regardless of Global Default policy.
-.RE
-
-.sp
-.ne 2
-.na
-\fBGlobal Override\fR
-.ad
-.sp .6
-.RS 4n
-Another system-wide policy that takes precedence over the needs of specific
-services in Network Services layer.
-.RE
-
-.sp
-.in +2
-.nf
-Global Override
- |
- |
-Network Services
- |
- |
-Global Default
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-A firewall policy includes a firewall mode and an optional set of network
-sources. Network sources are IP addresses, subnets, and local network
-interfaces, from all of which a system can receive incoming traffic. The basic
-set of firewall modes are:
-.sp
-.ne 2
-.na
-\fBNone\fR
-.ad
-.sp .6
-.RS 4n
-No firewall, allow all incoming traffic.
-.RE
-
-.sp
-.ne 2
-.na
-\fBDeny\fR
-.ad
-.sp .6
-.RS 4n
-Allow all incoming traffic but deny from specified source(s).
-.RE
-
-.sp
-.ne 2
-.na
-\fBAllow\fR
-.ad
-.sp .6
-.RS 4n
-Deny all incoming traffic but allow from specified source(s).
-.RE
-
-.SS "Layers in Detail"
-.LP
-The first system-wide layer, Global Default, defines a firewall policy that
-applies to \fBany\fR incoming traffic, for example, allowing or blocking all
-traffic from an IP address. This makes it simple to have a policy that blocks
-all incoming traffic or all incoming traffic from unwanted source(s).
-.sp
-.LP
-The Network Services layer contains firewall policies for local programs that
-provide service to remote clients, for example, \fBtelnetd\fR, \fBsshd\fR, and
-\fBhttpd\fR. Each of these programs, a network service, has its own firewall
-policy that controls access to its service. Initially, a service's policy is
-set to inherit Global Default policy, a "Use Global Default" mode. This makes
-it simple to set a single policy, at the Global Default layer, that can be
-inherited by all services.
-.sp
-.LP
-When a service's policy is different from Global Default policy, the service's
-policy has higher precedence. If Global Default policy is set to block all
-traffic from a subnet, the SSH service could be configured to allow access from
-certain hosts in that subnet. The set of all policies for all network services
-comprises the Network Service layer.
-.sp
-.LP
-The second system-wide layer, Global Override, has a firewall policy that also
-applies to any incoming network traffic. This policy has highest precedence and
-overrides policies in the other layers, specifically overriding the needs of
-network services. The example is when it is desirable to block known malicious
-source(s) regardless of services' policies.
-.SS "User Interaction"
-.LP
-This framework leverages IP Filter functionality and is active only when
-\fBsvc:/network/ipfilter\fR is enabled and inactive when \fBnetwork/ipfilter\fR
-is disabled. Similarly, a network service's firewall policy is only active when
-that service is enabled and inactive when the service is disabled. A system
-with an active firewall has IP Filter rules for each running/enabled network
-service and system-wide policy(s) whose firewall mode is not \fBNone\fR.
-.sp
-.LP
-A user configures a firewall by setting the system-wide policies and policy for
-each network service. See svc.ipfd(1M) on how to configure a firewall policy.
-.sp
-.LP
-The firewall framework composes of policy configuration and a mechanism to
-generate IP Filter rules from the policy and applying those rules to get the
-desired IP Filter configuration. A quick summary of the design and user
-interaction:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-system-wide policy(s) are stored in \fBnetwork/ipfilter\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-network services' policies are stored in each SMF service
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-a user activates a firewall by enabling \fBnetwork/ipfilter\fR (see
-\fBipf\fR(1M))
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-a user activates/deactivate a service's firewall by enabling/disabling that
-network service
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-changes to system-wide or per-service firewall policy results in an update to
-the system's firewall rules
-
-.SS "In-Zone and Global Zone Controlled firewalls"
-.LP
-Each non-global zone in the system can potentially have two firewalls
-configured: the in-zone firewall and the Global Zone controlled (GZ-controlled)
-firewall. The in-zone firewall can be controlled and observed inside the zone
-using the framework detailed above, or from the Global Zone. The GZ-controlled
-firewall can only be controlled and observed from the Global Zone. The
-GZ-controlled firewall is always "outermost" with respect to the zone.
-.sp
-.LP
-For inbound traffic (from an external source to the zone), the traffic flow looks
-like the following diagram. Traffic blocked by the GZ-controlled firewall will
-not be processed by the in-zone firewall.
-.sp
-.in +2
-.nf
- External Source
- |
- |
-GZ-controlled Firewall
- |
- |
- In-Zone Firewall
- |
- |
- Zone
-.fi
-.in -2
-.sp
-.LP
-For outbound traffic (from the zone to an external destination), the traffic
-flow looks like the following diagram. Traffic blocked by the in-zone firewall
-will not be processed by the GZ-controlled firewall.
-.sp
-.in +2
-.nf
- Zone
- |
- |
- In-Zone Firewall
- |
- |
-GZ-controlled Firewall
- |
- |
- External Destination
-.fi
-.in -2
-.sp
-.LP
-Either of the in-Zone or GZ-controlled firewalls can be enabled, or both at the
-same time.
-.sp
-.LP
-The Global Zone does not have a GZ-controlled firewall, only an
-in-zone firewall. For inbound traffic (from an external source to the global
-zone), the traffic flow therefore looks like the following diagram.
-.sp
-.in +2
-.nf
- External Source
- |
- |
- In-Zone Firewall
- |
- |
- Zone
-.fi
-.in -2
-.sp
-.LP
-For outbound traffic (from the global zone to an external destination), the
-traffic flow looks like the following diagram.
-.sp
-.in +2
-.nf
- Zone
- |
- |
- In-Zone Firewall
- |
- |
- External Destination
-.fi
-.in -2
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for a description of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Committed
-.TE
-
-.SH SEE ALSO
-.LP
-\fBsvcs\fR(1), \fBipf\fR(1M), \fBipnat\fR(1M), \fBsvcadm\fR(1M),
-\fBsvc.ipfd\fR(1M), \fBipf\fR(4), \fBipnat\fR(4), \fBattributes\fR(5),
-\fBsmf\fR(5)
-.sp
-.LP
-\fISystem Administration Guide: IP Services\fR
-.SH NOTES
-.LP
-The \fBipfilter\fR service is managed by the service management facility,
-\fBsmf\fR(5), under the service identifier:
-.sp
-.in +2
-.nf
-svc:/network/ipfilter:default
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Administrative actions on this service, such as enabling, disabling, or
-requesting restart, can be performed using \fBsvcadm\fR(1M). The service's
-status can be queried using the \fBsvcs\fR(1) command.
-.sp
-.LP
-IP Filter startup configuration files are stored in \fB/etc/ipf\fR.
diff --git a/usr/src/man/man5/ipmon.5 b/usr/src/man/man5/ipmon.5
new file mode 100644
index 0000000000..8c1cf4a6aa
--- /dev/null
+++ b/usr/src/man/man5/ipmon.5
@@ -0,0 +1,73 @@
+'\" te
+.\" To view license terms, attribution, and copyright for IP Filter, the
+.\" default path is /usr/lib/ipf/IPFILTER.LICENCE. If the Illumos operating
+.\" environment has been installed anywhere other than the default, modify the
+.\" given path to access the file at the installed location.
+.\" Portions Copyright (c) 2015, Joyent, Inc.
+.TH IPMON 5 "Mar 18, 2015"
+.SH NAME
+ipmon, ipmon.conf \- ipmon configuration file format
+.SH DESCRIPTION
+The format for files accepted by ipmon is described by the following grammar:
+.LP
+.nf
+"match" "{" matchlist "}" "do" "{" doing "}" ";"
+
+matchlist ::= matching [ "," matching ] .
+matching ::= direction | dstip | dstport | every | group | interface |
+ logtag | nattag | protocol | result | rule | srcip | srcport .
+
+dolist ::= doing [ "," doing ] .
+doing ::= execute | save | syslog .
+
+direction ::= "in" | "out" .
+dstip ::= "dstip" "=" ipv4 "/" number .
+dstport ::= "dstport" "=" number .
+every ::= "every" every-options .
+execute ::= "execute" "=" string .
+group ::= "group" "=" string | "group" "=" number .
+interface ::= "interface" "=" string .
+logtag ::= "logtag" "=" string | "logtag" "=" number .
+nattag ::= "nattag" "=" string .
+protocol ::= "protocol" "=" string | "protocol" "=" number .
+result ::= "result" "=" result-option .
+rule ::= "rule" "=" number .
+srcip ::= "srcip" "=" ipv4 "/" number .
+srcport ::= "srcport" "=" number .
+type ::= "type" "=" ipftype .
+ipv4 ::= number "." number "." number "." number .
+
+every-options ::= "second" | number "seconds" | "packet" | number "packets" .
+result-option ::= "pass" | "block" | "short" | "nomatch" | "log" .
+ipftype ::= "ipf" | "nat" | "state" .
+
+.fi
+.PP
+In addition, lines that start with a # are considered to be comments.
+.SH OVERVIEW
+.PP
+The ipmon configuration file is used for defining rules to be executed when
+logging records are read from
+.B /dev/ipl.
+.PP
+At present, only IPv4 matching is available for source/destination address
+matching.
+.SH MATCHING
+.PP
+Each rule for ipmon consists of two primary segments: the first describes how
+the log record is to be matched, the second defines what action to take if
+there is a positive match. All entries of the rules present in the file are
+compared for matches - there is no first or last rule match.
+.SH FILES
+/dev/ipl
+.br
+/dev/ipf
+.br
+/dev/ipnat
+.br
+/dev/ipstate
+.br
+/etc/ipmon.conf
+.SH SEE ALSO
+.BR ipfilter (7),
+.BR ipmon (8)
diff --git a/usr/src/man/man5/ipnat.5 b/usr/src/man/man5/ipnat.5
new file mode 100644
index 0000000000..0d3a1ce225
--- /dev/null
+++ b/usr/src/man/man5/ipnat.5
@@ -0,0 +1,299 @@
+'\" te
+.\" To view license terms, attribution, and copyright for IP Filter, the
+.\" default path is /usr/lib/ipf/IPFILTER.LICENCE. If the Illumos operating
+.\" environment has been installed anywhere other than the default, modify the
+.\" given path to access the file at the installed location.
+.\" Portions Copyright (c) 2015, Joyent, Inc.
+.TH IPNAT 5 "Mar 18, 2015"
+.SH NAME
+ipnat, ipnat.conf \- IP NAT file format
+.SH DESCRIPTION
+The format for files accepted by ipnat is described by the following grammar:
+.LP
+.nf
+ipmap :: = mapblock | redir | map .
+
+map ::= mapit ifname lhs "->" dstipmask [ mapicmp | mapport | mapproxy ]
+ mapoptions .
+mapblock ::= "map-block" ifname lhs "->" ipmask [ ports ] mapoptions .
+redir ::= "rdr" ifname rlhs "->" ip [ "," ip ] rdrport rdroptions .
+
+lhs ::= ipmask | fromto .
+rlhs ::= ipmask dport | fromto .
+dport ::= "port" portnum [ "-" portnum ] .
+ports ::= "ports" numports | "auto" .
+rdrport ::= "port" portnum .
+mapit ::= "map" | "bimap" .
+fromto ::= "from" object "to" object .
+ipmask ::= ip "/" bits | ip "/" mask | ip "netmask" mask .
+dstipmask ::= ipmask | "range" ip "-" ip .
+mapicmp ::= "icmpidmap" "icmp" number ":" number .
+mapport ::= "portmap" tcpudp portspec .
+mapoptions ::= [ tcpudp ] [ "frag" ] [ age ] [ clamp ] .
+rdroptions ::= rdrproto [ rr ] [ "frag" ] [ age ] [ clamp ] [ rdrproxy ] .
+
+object :: = addr [ port-comp | port-range ] .
+addr :: = "any" | nummask | host-name [ "mask" ipaddr | "mask" hexnumber ] .
+port-comp :: = "port" compare port-num .
+port-range :: = "port" port-num range port-num .
+rdrproto ::= tcpudp | protocol .
+
+rr ::= "round-robin" .
+age ::= "age" decnumber [ "/" decnumber ] .
+clamp ::= "mssclamp" decnumber .
+tcpudp ::= "tcp/udp" | protocol .
+mapproxy ::= "proxy" "port" port proxy-name '/' protocol
+rdrproxy ::= "proxy" proxy-name .
+
+protocol ::= protocol-name | decnumber .
+nummask ::= host-name [ "/" decnumber ] .
+portspec ::= "auto" | portnumber ":" portnumber .
+port ::= portnumber | port-name .
+portnumber ::= number { numbers } .
+ifname ::= 'A' - 'Z' { 'A' - 'Z' } numbers .
+
+numbers ::= '0' | '1' | '2' | '3' | '4' | '5' | '6' | '7' | '8' | '9' .
+.fi
+.PP
+For standard NAT functionality, a rule should start with \fBmap\fP and then
+proceeds to specify the interface for which outgoing packets will have their
+source address rewritten.
+.PP
+Packets which will be rewritten can only be selected by matching the original
+source address. A netmask must be specified with the IP address.
+.PP
+The address selected for replacing the original is chosen from an IP#/netmask
+pair. A netmask of all 1's indicating a hostname is valid. A netmask of
+31 1's (255.255.255.254) is considered invalid as there is no space for
+allocating host IP#'s after consideration for broadcast and network
+addresses.
+.PP
+When remapping TCP and UDP packets, it is also possible to change the source
+port number. Either TCP or UDP or both can be selected by each rule, with a
+range of port numbers to remap into given as \fBport-number:port-number\fP.
+.SH COMMANDS
+There are four commands recognised by IP Filter's NAT code:
+.TP
+.B map
+that is used for mapping one address or network to another in an unregulated
+round robin fashion;
+.TP
+.B rdr
+that is used for redirecting packets to one IP address and port pair to
+another;
+.TP
+.B bimap
+for setting up bidirectional NAT between an external IP address and an internal
+IP address and
+.TP
+.B map-block
+which sets up static IP address based translation, based on a algorithm to
+squeeze the addresses to be translated into the destination range.
+.SH MATCHING
+.PP
+For basic NAT and redirection of packets, the address subject to change is used
+along with its protocol to check if a packet should be altered. The packet
+\fImatching\fP part of the rule is to the left of the "->" in each rule.
+.PP
+Matching of packets has now been extended to allow more complex compares.
+In place of the address which is to be translated, an IP address and port
+number comparison can be made using the same expressions available with
+\fBipf\fP. A simple NAT rule could be written as:
+.LP
+.nf
+map de0 10.1.0.0/16 -> 201.2.3.4/32
+.fi
+.LP
+or as
+.LP
+.nf
+map de0 from 10.1.0.0/16 to any -> 201.2.3.4/32
+.fi
+.LP
+Only IP address and port numbers can be compared against. This is available
+with all NAT rules.
+.SH TRANSLATION
+.PP
+To the right of the "->" is the address and port specification which will be
+written into the packet providing it has already successfully matched the
+prior constraints. The case of redirections (\fBrdr\fP) is the simplest:
+the new destination address is that specified in the rule. For \fBmap\fP
+rules, the destination address will be one for which the tuple combining
+the new source and destination is known to be unique. If the packet is
+either a TCP or UDP packet, the destination and source ports come into the
+equation too. If the tuple already exists, IP Filter will increment the
+port number first, within the available range specified with \fBportmap\fP
+and if there exists no unique tuple, the source address will be incremented
+within the specified netmask. If a unique tuple cannot be determined, then
+the packet will not be translated. The \fBmap-block\fP is more limited in
+how it searches for a new, free and unique tuple, in that it will used an
+algorithm to determine what the new source address should be, along with the
+range of available ports - the IP address is never changed and nor does the
+port number ever exceed its allotted range.
+.SH ICMPIDMAP
+.PP
+ICMP messages can be divided into two groups: "errors" and "queries". ICMP
+errors are generated as a response of another IP packet. IP Filter will take
+care that ICMP errors that are the response of a NAT-ed IP packet are
+handled properly.
+.PP
+For 4 types of ICMP queries (echo request, timestamp request, information
+request and address mask request) IP Filter supports an additional mapping
+called "ICMP id mapping". All these 4 types of ICMP queries use a unique
+identifier called the ICMP id. This id is set by the process sending the
+ICMP query and it is usually equal to the process id. The receiver of the
+ICMP query will use the same id in its response, thus enabling the
+sender to recognize that the incoming ICMP reply is intended for him and is
+an answer to a query that he made. The "ICMP id mapping" feature modifies
+these ICMP id in a way identical to \fBportmap\fP for TCP or UDP.
+.PP
+The reason that you might want this, is that using this feature you don't
+need an IP address per host behind the NAT box, that wants to do ICMP queries.
+The two numbers behind the \fBicmpidmap\fP keyword are the first and the
+last icmp id number that can be used. There is one important caveat: if you
+map to an IP address that belongs to the NAT box itself (notably if you have
+only a single public IP address), then you must ensure that the NAT box does
+not use the \fBicmpidmap\fP range that you specified in the \fBmap\fP rule.
+.SH KERNEL PROXIES
+.PP
+IP Filter comes with a few, simple, proxies built into the code that is loaded
+into the kernel to allow secondary channels to be opened without forcing the
+packets through a user program. The current state of the proxies is listed
+below, as one of three states:
+.HP
+Aging - protocol is roughly understood from
+the time at which the proxy was written but it is not well tested or
+maintained;
+.HP
+Developmental - basic functionality exists, works most of the time but
+may be problematic in extended real use;
+.HP
+Experimental - rough support for the protocol at best, may or may not
+work as testing has been at best sporadic, possible large scale changes
+to the code in order to properly support the protocol.
+.HP
+Mature - well tested, protocol is properly
+understood by the proxy;
+.PP
+The currently compiled in proxy list is as follows:
+.HP
+FTP - Mature
+.HP
+IRC - Experimental
+.HP
+rpcbind - Experimental
+.HP
+H.323 - Experimental
+.HP
+Real Audio (PNA) - Aging
+.HP
+IPsec - Developmental
+.HP
+netbios - Experimental
+.HP
+R-command - Mature
+
+.SH TRANSPARENT PROXIES
+.PP
+True transparent proxying should be performed using the redirect (\fBrdr\fP)
+rules directing ports to localhost (127.0.0.1) with the proxy program doing
+a lookup through \fB/dev/ipnat\fP to determine the real source and address
+of the connection.
+.SH LOAD-BALANCING
+.PP
+Two options for use with \fBrdr\fP are available to support primitive,
+\fIround-robin\fP based load balancing. The first option allows for a
+\fBrdr\fP to specify a second destination, as follows:
+.LP
+.nf
+rdr le0 203.1.2.3/32 port 80 -> 203.1.2.3,203.1.2.4 port 80 tcp
+.fi
+.LP
+This would send alternate connections to either 203.1.2.3 or 203.1.2.4.
+In scenarios where the load is being spread amongst a larger set of
+servers, you can use:
+.LP
+.nf
+rdr le0 203.1.2.3/32 port 80 -> 203.1.2.3,203.1.2.4 port 80 tcp round-robin
+rdr le0 203.1.2.3/32 port 80 -> 203.1.2.5 port 80 tcp round-robin
+.fi
+.LP
+In this case, a connection will be redirected to 203.1.2.3, then 203.1.2.4
+and then 203.1.2.5 before going back to 203.1.2.3. In accomplishing this,
+the rule is removed from the top of the list and added to the end,
+automatically, as required. This will not effect the display of rules
+using "ipnat -l", only the internal application order.
+.SH EXAMPLES
+.PP
+This section deals with the \fBmap\fP command and its variations.
+.PP
+To change IP#'s used internally from network 10 into an ISP provided 8 bit
+subnet at 209.1.2.0 through the ppp0 interface, the following would be used:
+.LP
+.nf
+map ppp0 10.0.0.0/8 -> 209.1.2.0/24
+.fi
+.PP
+The obvious problem here is we're trying to squeeze over 16,000,000 IP
+addresses into a 254 address space. To increase the scope, remapping for TCP
+and/or UDP, port remapping can be used;
+.LP
+.nf
+map ppp0 10.0.0.0/8 -> 209.1.2.0/24 portmap tcp/udp 1025:65000
+.fi
+.PP
+which falls only 527,566 `addresses' short of the space available in network
+10. If we were to combine these rules, they would need to be specified as
+follows:
+.LP
+.nf
+map ppp0 10.0.0.0/8 -> 209.1.2.0/24 portmap tcp/udp 1025:65000
+map ppp0 10.0.0.0/8 -> 209.1.2.0/24
+.fi
+.PP
+so that all TCP/UDP packets were port mapped and only other protocols, such as
+ICMP, only have their IP# changed. In some instances, it is more appropriate
+to use the keyword \fBauto\fP in place of an actual range of port numbers if
+you want to guarantee simultaneous access to all within the given range.
+However, in the above case, it would default to 1 port per IP address, since
+we need to squeeze 24 bits of address space into 8. A good example of how
+this is used might be:
+.LP
+.nf
+map ppp0 172.192.0.0/16 -> 209.1.2.0/24 portmap tcp/udp auto
+.fi
+.PP
+which would result in each IP address being given a small range of ports to
+use (252). In all cases, the new port number that is used is deterministic.
+That is, port X will always map to port Y.
+WARNING: It is not advisable to use the \fBauto\fP feature if you are map'ing
+to a /32 (i.e. 0/32) because the NAT code will try to map multiple hosts to
+the same port number, outgoing and ultimately this will only succeed for one
+of them.
+The problem here is that the \fBmap\fP directive tells the NAT
+code to use the next address/port pair available for an outgoing connection,
+resulting in no easily discernible relation between external addresses/ports
+and internal ones. This is overcome by using \fBmap-block\fP as follows:
+.LP
+.nf
+map-block ppp0 172.192.0.0/16 -> 209.1.2.0/24 ports auto
+.fi
+.PP
+For example, this would result in 172.192.0.0/24 being mapped to 209.1.2.0/32
+with each address, from 172.192.0.0 to 172.192.0.255 having 252 ports of its
+own. As opposed to the above use of \fBmap\fP, if for some reason the user
+of (say) 172.192.0.2 wanted 260 simultaneous connections going out, they would
+be limited to 252 with \fBmap-block\fP but would just \fImove on\fP to the next
+IP address with the \fBmap\fP command.
+/dev/ipnat
+.br
+/etc/services
+.br
+/etc/hosts
+.SH SEE ALSO
+.BR hosts (5),
+.BR ipf (5),
+.BR services (5),
+.BR ipfilter (7),
+.BR ipf (8),
+.BR ipnat (8)
diff --git a/usr/src/man/man5/ipnodes.5 b/usr/src/man/man5/ipnodes.5
new file mode 100644
index 0000000000..1c7f99a6e5
--- /dev/null
+++ b/usr/src/man/man5/ipnodes.5
@@ -0,0 +1,25 @@
+'\" te
+.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH IPNODES 5 "Aug 15, 2006"
+.SH NAME
+ipnodes \- symbolic link to hosts database
+.SH SYNOPSIS
+.LP
+.nf
+\fB/etc/inet/ipnodes\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBipnodes\fR file is now a symbolic link to the \fB/etc/hosts\fR file. See
+\fBhosts\fR(5). In prior releases of the Solaris operating system,
+\fBipnodes\fR was a local database distinct from \fBhosts\fR. The man page for
+a given Solaris release describes the \fBipnodes\fR file for that release.
+.SH SEE ALSO
+.sp
+.LP
+.BR hosts (5)
diff --git a/usr/src/man/man5/ippool.5 b/usr/src/man/man5/ippool.5
new file mode 100644
index 0000000000..26f7bf4a3d
--- /dev/null
+++ b/usr/src/man/man5/ippool.5
@@ -0,0 +1,160 @@
+'\" te
+.\" To view license terms, attribution, and copyright for IP Filter, the
+.\" default path is /usr/lib/ipf/IPFILTER.LICENCE. If the illumos operating
+.\" environment has been installed anywhere other than the default, modify the
+.\" given path to access the file at the installed location.
+.\" Portions Copyright (c) 2015, Joyent, Inc.
+.TH IPPOOL 5 "May 16, 2020"
+.SH NAME
+ippool, ippool.conf \- IP Pool file format
+.SH DESCRIPTION
+The format for files accepted by ippool is described by the following grammar:
+.LP
+.nf
+line ::= table | groupmap .
+table ::= "table" role tabletype .
+groupmap ::= "group-map" inout role number ipfgroup
+tabletype ::= ipftree | ipfhash .
+
+role ::= "role" "=" "ipf" .
+inout ::= "in" | "out" .
+
+ipftree ::= "type" "=" "tree" number "{" addrlist "}" .
+ipfhash ::= "type" "=" "hash" number hashopts "{" hashlist "}" .
+
+ipfgroup ::= setgroup hashopts "{" grouplist "}" |
+ hashopts "{" setgrouplist "}" .
+setgroup ::= "group" "=" groupname .
+
+hashopts ::= size [ seed ] | seed .
+
+size ::= "size" number .
+seed ::= "seed" number .
+
+addrlist ::= [ "!" ] addrmask ";" [ addrlist ] .
+grouplist ::= groupentry ";" [ grouplist ] | addrmask ";" [ grouplist ] .
+
+setgrouplist ::= groupentry ";" [ setgrouplist ] .
+
+groupentry ::= addrmask "," setgroup .
+
+hashlist ::= hashentry ";" [ hashlist ] .
+hashentry ::= addrmask .
+
+addrmask ::= ipaddr | ipaddr "/" mask .
+
+mask ::= number | ipaddr .
+
+groupname ::= number | name .
+
+number ::= digit { digit } .
+
+ipaddr = host-num "." host-num "." host-num "." host-num .
+host-num = digit [ digit [ digit ] ] .
+
+digit ::= "0" | "1" | "2" | "3" | "4" | "5" | "6" | "7" | "8" | "9" .
+name ::= letter { letter | digit } .
+.fi
+.PP
+The IP pool configuration file is used for defining a single object that
+contains a reference to multiple IP address/netmask pairs. A pool may consist
+of a mixture of netmask sizes, from 0 to 32.
+.PP
+At this point in time, only IPv4 addressing is supported.
+.SH OVERVIEW
+The IP pool configuration file provides for defining two different mechanisms
+for improving speed in matching IP addresses with rules.
+The first,
+.B table
+, defines a lookup
+.I table
+to provide a single reference in a
+filter rule to multiple targets and the second,
+.B group-map
+, provides a mechanism to target multiple groups from a single filter line.
+.PP
+The
+.B group-map
+command can only be used with filter rules that use the
+.B call
+command to invoke either
+.B fr_srcgrpmap
+or
+.B fr_dstgrpmap
+, to use the source or destination address,
+respectively, for determining which filter group to jump to next for
+continuation of filter packet processing.
+.SH POOL TYPES
+Two storage formats are provided: hash tables and tree structure. The hash
+table is intended for use with objects all containing the same netmask or a
+few different sized netmasks of non-overlapping address space and the tree
+is designed for being able to support exceptions to a covering mask, in
+addition to normal searching as you would do with a table. It is not possible
+to use the tree data storage type with
+.B group-map
+configuration entries.
+.SH POOL ROLES
+When a pool is defined in the configuration file, it must have an associated
+role. At present the only supported role is
+.B ipf.
+Future development will see further expansion of their use by other sections
+of IPFilter code.
+.SH EXAMPLES
+The following examples show how the pool configuration file is used with
+the ipf configuration file to enhance the ability for the ipf configuration
+file to be succinct in meaning.
+.TP
+1
+The first example shows how a filter rule makes reference to a specific
+pool for matching of the source address.
+.nf
+pass in from pool/100 to any
+.fi
+.PP
+The pool configuration, which matches IP addresses 1.1.1.1 and any
+in 2.2.0.0/16, except for those in 2.2.2.0/24.
+.PP
+.nf
+table role = ipf type = tree number = 100
+ { 1.1.1.1/32; 2.2.0.0/16; !2.2.2.0/24 };
+.fi
+.TP
+2
+The following ipf.conf extract uses the
+fr_srcgrpmap/fr_dstgrpmap lookups to use the
+.B group-map
+facility to lookup the next group to use for filter processing, providing
+the
+.B call
+filter rule is matched.
+.nf
+call now fr_srcgrpmap/1010 in all
+call now fr_dstgrpmap/2010 out all
+pass in all group 1020
+block in all group 1030
+pass out all group 2020
+block out all group 2040
+.fi
+.PP
+A ippool configuration to work with the above ipf.conf file might
+look like this:
+.PP
+.nf
+group-map in role = ipf number = 1010
+ { 1.1.1.1/32, group = 1020; 3.3.0.0/16, group = 1030; };
+group-map out role = ipf number = 2010 group = 2020
+ { 2.2.2.2/32; 4.4.0.0/16; 5.0.0.0/8, group = 2040; };
+.fi
+.SH FILES
+/dev/iplookup
+.br
+/etc/ippool.conf
+.br
+/etc/hosts
+.SH SEE ALSO
+.BR hosts (5),
+.BR ipf (5),
+.BR ipfilter (7),
+.BR ipf (8),
+.BR ipnat (8),
+.BR ippool (8)
diff --git a/usr/src/man/man5/isalist.5 b/usr/src/man/man5/isalist.5
deleted file mode 100644
index 977f83dd86..0000000000
--- a/usr/src/man/man5/isalist.5
+++ /dev/null
@@ -1,225 +0,0 @@
-'\" te
-.\" Copyright (c) 2008 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH ISALIST 5 "Mar 20, 2008"
-.SH NAME
-isalist \- the native instruction sets known to Solaris software
-.SH DESCRIPTION
-.sp
-.LP
-The possible instruction set names returned by \fBisalist\fR(1) and the
-\fBSI_ISALIST\fR command of \fBsysinfo\fR(2) are listed here.
-.sp
-.LP
-The list is ordered within an instruction set family in the sense that later
-names are generally faster then earlier names; note that this is in the reverse
-order than listed by \fBisalist\fR(1) and \fBsysinfo\fR(2). In the following
-list of values, numbered entries generally represent increasing performance;
-lettered entries are either mutually exclusive or cannot be ordered.
-.sp
-.LP
-This feature is obsolete and may be removed in a future version of Solaris. The
-lists below do not reflect all the extensions that have been made by modern
-processors. See \fBgetisax\fR(2) for a better way to handle instruction set
-extensions.
-.SS "SPARC Platforms"
-.sp
-.LP
-Where appropriate, correspondence with a given value of the \fB-xarch\fR option
-of Sun's C 4.0 compiler is indicated. Other compilers might have similar
-options.
-.sp
-.ne 2
-.na
-\fB1a. \fBsparc\fR\fR
-.ad
-.RS 27n
-Indicates the SPARC V8 instruction set, as defined in \fI\fR The SPARC
-Architecture Manual, Version 8, Prentice-Hall, Inc., 1992. Some instructions
-(such as integer multiply and divide, FSMULD, and all floating point operations
-on quad operands) can be emulated by the kernel on certain systems.
-.RE
-
-.sp
-.ne 2
-.na
-\fB1b. \fBsparcv7\fR\fR
-.ad
-.RS 27n
-Same as sparc. This corresponds to code produced with the -xarch=v7 option of
-Sun's C 4.0 compiler.
-.RE
-
-.sp
-.ne 2
-.na
-\fB2. \fBsparcv8-fsmuld\fR\fR
-.ad
-.RS 27n
-Like sparc, except that integer multiply and divide must be executed in
-hardware. This corresponds to code produced with the -xarch=v8a option of Sun's
-C 4.0 compiler.
-.RE
-
-.sp
-.ne 2
-.na
-\fB3. \fBsparcv8\fR\fR
-.ad
-.RS 27n
-Like sparcv8-fsmuld, except that FSMULD must also be executed in hardware. This
-corresponds to code produced with the -xarch=v8 option of Sun's C 4.0 compiler.
-.RE
-
-.sp
-.ne 2
-.na
-\fB4. \fBsparcv8plus\fR\fR
-.ad
-.RS 27n
-Indicates the SPARC V8 instruction set plus those instructions in the SPARC V9
-instruction set, as defined in \fI\fR The SPARC Architecture Manual, Version 9,
-Prentice-Hall, 1994, that can be used according to \fI\fR The V8+ Technical
-Specification. This corresponds to code produced with the -xarch=v8plus option
-of Sun's C 4.0 compiler.
-.RE
-
-.sp
-.ne 2
-.na
-\fB5a. \fBsparcv8plus+vis\fR\fR
-.ad
-.RS 27n
-Like sparcv8plus, with the addition of those UltraSPARC I Visualization
-Instructions that can be used according to \fI\fR The V8+ Technical
-Specification. This corresponds to code produced with the -xarch=v8plusa option
-of Sun's C 4.0 compiler.
-.RE
-
-.sp
-.ne 2
-.na
-\fB5b. \fBsparcv8plus+fmuladd\fR\fR
-.ad
-.RS 27n
-Like sparcv8plus, with the addition of the Fujitsu SPARC64 floating
-multiply-add and multiply-subtract instructions.
-.RE
-
-.sp
-.ne 2
-.na
-\fB6. \fBsparcv9\fR\fR
-.ad
-.RS 27n
-Indicates the SPARC V9 instruction set, as defined in \fI\fR The SPARC
-Architecture Manual, Version 9, Prentice-Hall, 1994.
-.RE
-
-.sp
-.ne 2
-.na
-\fB7a. \fBsparcv9+vis\fR\fR
-.ad
-.RS 27n
-Like sparcv9, with the addition of the UltraSPARC I Visualization Instructions.
-.RE
-
-.sp
-.ne 2
-.na
-\fB7b. \fBsparcv9+vis2\fR\fR
-.ad
-.RS 27n
-Like sparcv9, with the addition of the UltraSPARC III Visualization
-Instructions.
-.RE
-
-.sp
-.ne 2
-.na
-\fB7c. \fBsparcv9+fmuladd\fR\fR
-.ad
-.RS 27n
-Like sparcv9, with the addition of the Fujitsu SPARC64 floating multiply-add
-and multiply-subtract instructions.
-.RE
-
-.SS "x86 Platforms"
-.sp
-.ne 2
-.na
-\fB1. \fBi386\fR\fR
-.ad
-.RS 22n
-The Intel 80386 instruction set, as described in \fI\fR The i386 Microprocessor
-Programmer's Reference Manual.
-.RE
-
-.sp
-.ne 2
-.na
-\fB2. \fBi486\fR\fR
-.ad
-.RS 22n
-The Intel 80486 instruction set, as described in \fI\fR The i486 Microprocessor
-Programmer's Reference Manual. (This is effectively i386, plus the CMPXCHG,
-BSWAP, and XADD instructions.)
-.RE
-
-.sp
-.ne 2
-.na
-\fB3. \fBpentium\fR\fR
-.ad
-.RS 22n
-The Intel Pentium instruction set, as described in \fI\fR The Pentium Processor
-User's Manual. (This is effectively i486, plus the CPU_ID instruction, and any
-features that the CPU_ID instruction indicates are present.)
-.RE
-
-.sp
-.ne 2
-.na
-\fB4. \fBpentium+mmx\fR\fR
-.ad
-.RS 22n
-Like pentium, with the MMX instructions guaranteed present.
-.RE
-
-.sp
-.ne 2
-.na
-\fB5. \fBpentium_pro\fR\fR
-.ad
-.RS 22n
-The Intel PentiumPro instruction set, as described in \fI\fR The PentiumPro
-Family Developer's Manual. (This is effectively pentium, with the CMOVcc,
-FCMOVcc, FCOMI, and RDPMC instructions guaranteed present.)
-.RE
-
-.sp
-.ne 2
-.na
-\fB6. \fBpentium_pro+mmx\fR\fR
-.ad
-.RS 22n
-Like pentium_pro, with the MMX instructions guaranteed present.
-.RE
-
-.sp
-.ne 2
-.na
-\fB7. \fBamd64\fR\fR
-.ad
-.RS 22n
-The AMD Opteron instruction set, as described in the \fIAMD64 Architecture
-Programmer's Manual\fR.
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBisalist\fR(1), \fBgetisax\fR(2), \fBsysinfo\fR(2)
diff --git a/usr/src/man/man5/isoboot.5 b/usr/src/man/man5/isoboot.5
deleted file mode 100644
index 541f06d2ed..0000000000
--- a/usr/src/man/man5/isoboot.5
+++ /dev/null
@@ -1,66 +0,0 @@
-.\" Copyright (c) 2018 iXsystems, Inc.
-.\" All rights reserved.
-.\"
-.\" Redistribution and use in source and binary forms, with or without
-.\" modification, are permitted provided that the following conditions
-.\" are met:
-.\" 1. Redistributions of source code must retain the above copyright
-.\" notice, this list of conditions and the following disclaimer.
-.\" 2. Redistributions in binary form must reproduce the above copyright
-.\" notice, this list of conditions and the following disclaimer in the
-.\" documentation and/or other materials provided with the distribution.
-.\"
-.\" THIS SOFTWARE IS PROVIDED BY THE AUTHORS AND CONTRIBUTORS ``AS IS'' AND
-.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHORS OR CONTRIBUTORS BE LIABLE
-.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
-.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
-.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-.\" SUCH DAMAGE.
-.\"
-.Dd March 30, 2018
-.Dt ISOBOOT 5
-.Os
-.Sh NAME
-.Nm isoboot
-.Nd Boot code for hybrid ISO/USB images on BIOS-based computers
-.Sh DESCRIPTION
-.Nm
-is used on BIOS-based computers to boot from an ISO image that has
-been written to a USB flash drive or other HDD-like device.
-.Nm
-is installed in a
-.Cm x86 Boot
-partition with
-.Xr installboot 1M .
-.Sh IMPLEMENTATION NOTES
-The El Torito standard for bootable CDs provides a 32KB "System Area"
-at the beginning of an image.
-To create an image that is able to be booted by the BIOS as either a
-CD-ROM ("ISO") and as a more HDD-like image (e.g. on a USB flash drive)
-it is necessary to have both a standard El Torito boot catalog
-containing a HDD-style partition table and boot code.
-.Nm
-is intended to be placed in a MBR x86 boot partition to allow the system to find
-the standard
-.Fx
-.Xr loader 5
-in the ISO filesystem later in the image.
-.Sh BOOTING
-.Nm
-looks for an ISO filesystem image on the device it was booted from and
-seeks to read the primary illumos
-.Xr loader 5
-from there.
-.Sh SEE ALSO
-.Xr installboot 1M
-.Sh HISTORY
-.Nm
-appeared in FreeBSD 12.0.
-.Sh AUTHORS
-This manual page written by
-.An Benno Rice Aq benno@FreeBSD.org .
diff --git a/usr/src/man/man5/issue.5 b/usr/src/man/man5/issue.5
new file mode 100644
index 0000000000..84b4cc6b07
--- /dev/null
+++ b/usr/src/man/man5/issue.5
@@ -0,0 +1,30 @@
+'\" te
+.\" Copyright 1989 AT&T, Copyright (c) 2002, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH ISSUE 5 "Jan 2, 2002"
+.SH NAME
+issue \- issue identification file
+.SH DESCRIPTION
+.sp
+.LP
+The file \fB/etc/issue\fR contains the issue or project identification to be
+printed as a login prompt. \fBissue\fR is an ASCII file that is read by program
+\fBttymon\fR and then written to any terminal spawned or respawned, prior to
+the normal prompt.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/issue\fR\fR
+.ad
+.RS 14n
+
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR login (1),
+.BR ttymon (8)
diff --git a/usr/src/man/man5/kadm5.acl.5 b/usr/src/man/man5/kadm5.acl.5
new file mode 100644
index 0000000000..7d3904e2cc
--- /dev/null
+++ b/usr/src/man/man5/kadm5.acl.5
@@ -0,0 +1,400 @@
+'\" te
+.\" Copyright (c) 2006 Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH KADM5.ACL 5 "Oct 29, 2015"
+.SH NAME
+kadm5.acl \- Kerberos access control list (ACL) file
+.SH SYNOPSIS
+.LP
+.nf
+\fB/etc/krb5/kadm5.acl\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBACL\fR file is used by the \fBkadmind\fR(8) command to determine which
+principals are allowed to perform Kerberos administration actions. For
+operations that affect principals, the \fBACL\fR file also controls which
+principals can operate on which other principals. The location of the \fBACL\fR
+file is determined by the \fBacl_file\fR configuration variable in the
+\fBkdc.conf\fR(5) file. The default location is \fB/etc/krb5/kadm5.acl\fR.
+.sp
+.LP
+For incremental propagation, see \fBkadmind\fR(8). The ACL file must contain
+the \fBkiprop\fR service principal with propagation privileges in order for the
+slave KDC to pull updates from the master's principal database. Refer to the
+EXAMPLES section for this case.
+.sp
+.LP
+The \fBACL\fR file can contain comment lines, null lines, or lines that contain
+\fBACL\fR entries. Comment lines start with the pound sign (\fB#\fR) and
+continue until the end of the line.
+.sp
+.LP
+The order of entries is significant. The first matching entry specifies the
+principal on which the control access applies, whether it is on just the
+principal or on the principal when it operates on a target principal.
+.sp
+.LP
+Lines containing \fBACL\fR entries must have the following format:
+.sp
+.in +2
+.nf
+\fIprincipal\fR \fIoperation-mask\fR [\fIoperation-target\fR]
+.fi
+.in -2
+.sp
+
+.sp
+.ne 2
+.na
+\fB\fIprincipal\fR\fR
+.ad
+.RS 20n
+Specifies the principal on which the \fIoperation-mask\fR applies. Can specify
+either a partially or fully qualified Kerberos principal name. Each component
+of the name can be substituted with a wildcard, using the asterisk ( \fB*\fR )
+character.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIoperation-mask\fR\fR
+.ad
+.RS 20n
+Specifies what operations can or cannot be performed by a principal matching a
+particular entry. Specify \fIoperation-mask\fR as one or more \fIprivilege\fRs.
+.sp
+A \fIprivilege\fR is a string of one or more of the following characters:
+\fBa\fR, \fBA\fR, \fBc\fR, \fBC\fR, \fBd\fR, \fBD\fR, \fBi\fR, \fBI\fR,
+\fBl\fR, \fBL\fR, \fBm\fR, \fBM\fR, \fBp\fR, \fBP\fR, \fBu\fR, \fBU\fR,
+\fBx\fR, or \fB*\fR. Generally, if the character is lowercase, the privilege is
+allowed and if the character is uppercase, the operation is disallowed. The
+\fBx\fR and \fB*\fR characters are exceptions to the uppercase convention.
+.sp
+The following \fIprivilege\fRs are supported:
+.sp
+.ne 2
+.na
+\fB\fBa\fR\fR
+.ad
+.RS 5n
+Allows the addition of principals or policies in the database.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBA\fR\fR
+.ad
+.RS 5n
+Disallows the addition of principals or policies in the database.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBc\fR\fR
+.ad
+.RS 5n
+Allows the changing of passwords for principals in the database.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBC\fR\fR
+.ad
+.RS 5n
+Disallows the changing of passwords for principals in the database.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBd\fR\fR
+.ad
+.RS 5n
+Allows the deletion of principals or policies in the database.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBD\fR\fR
+.ad
+.RS 5n
+Disallows the deletion of principals or policies in the database.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBi\fR\fR
+.ad
+.RS 5n
+Allows inquiries to the database.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBI\fR\fR
+.ad
+.RS 5n
+Disallows inquiries to the database.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBl\fR\fR
+.ad
+.RS 5n
+Allows the listing of principals or policies in the database.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBL\fR\fR
+.ad
+.RS 5n
+Disallows the listing of principals or policies in the database.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBm\fR\fR
+.ad
+.RS 5n
+Allows the modification of principals or policies in the database.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM\fR\fR
+.ad
+.RS 5n
+Disallows the modification of principals or policies in the database.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBp\fR\fR
+.ad
+.RS 5n
+Allow the propagation of the principal database.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBP\fR\fR
+.ad
+.RS 5n
+Disallow the propagation of the principal database.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBu\fR\fR
+.ad
+.RS 5n
+Allows the creation of one-component user principals whose password can be
+validated with PAM.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBU\fR\fR
+.ad
+.RS 5n
+Negates the \fBu\fR privilege.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBx\fR\fR
+.ad
+.RS 5n
+Short for specifying privileges \fBa\fR, \fBd\fR,\fBm\fR,\fBc\fR,\fBi\fR, and
+\fBl\fR. The same as \fB*\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB*\fR\fR
+.ad
+.RS 5n
+Short for specifying privileges \fBa\fR, \fBd\fR,\fBm\fR,\fBc\fR,\fBi\fR, and
+\fBl\fR. The same as \fBx\fR.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIoperation-target\fR\fR
+.ad
+.RS 20n
+Optional. When specified, the \fIprivileges\fR apply to the \fIprincipal\fR
+when it operates on the \fIoperation-target\fR. For the \fIoperation-target\fR,
+you can specify a partially or fully qualified Kerberos principal name. Each
+component of the name can be substituted by a wildcard, using the asterisk (
+\fB*\fR ) character.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRSpecifying a Standard, Fully Qualified Name
+.sp
+.LP
+The following ACL entry specifies a standard, fully qualified name:
+
+.sp
+.in +2
+.nf
+user/instance@realm adm
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The \fIoperation-mask\fR applies only to the \fBuser/instance@realm\fR
+principal and specifies that the principal can add, delete, or modify
+principals and policies, but it cannot change passwords.
+
+.LP
+\fBExample 2 \fRSpecifying a Standard Fully Qualified Name and Target
+.sp
+.LP
+The following ACL entry specifies a standard, fully qualified name:
+
+.sp
+.in +2
+.nf
+user/instance@realm cim service/instance@realm
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The \fIoperation-mask\fR applies only to the \fBuser/instance@realm\fR
+principal operating on the \fBservice/instance@realm\fR target, and specifies
+that the principal can change the target's password, request information about
+the target, and modify it.
+
+.LP
+\fBExample 3 \fRSpecifying a Name Using a Wildcard
+.sp
+.LP
+The following ACL entry specifies a name using a wildcard:
+
+.sp
+.in +2
+.nf
+user/*@realm ac
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The \fIoperation-mask\fR applies to all principals in realm \fBrealm\fR whose
+first component is \fBuser\fR and specifies that the principals can add
+principals and change passwords.
+
+.LP
+\fBExample 4 \fRSpecifying a Name Using a Wildcard and a Target
+.sp
+.LP
+The following ACL entry specifies a name using a wildcard and a target:
+
+.sp
+.in +2
+.nf
+user/*@realm i */instance@realm
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The \fIoperation-mask\fR applies to all principals in realm \fBrealm\fR whose
+first component is \fBuser\fR and specifies that the principals can perform
+inquiries on principals whose second component is \fBinstance\fR and realm is
+\fBrealm\fR.
+
+.LP
+\fBExample 5 \fRSpecifying Incremental Propagation Privileges
+.sp
+.LP
+The following ACL entry specifies propagation privileges for the \fBkiprop\fR
+service principal:
+
+.sp
+.in +2
+.nf
+kiprop/slavehost@realm p
+.fi
+.in -2
+
+.sp
+.LP
+The operation-mask applies to the \fBkiprop\fR service principal for the
+specified slave host \fBslavehost\fR in realm \fBrealm\fR. This specifies that
+the associated \fBkiprop\fR service principal can receive incremental principal
+updates.
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/krb5/kdc.conf\fR\fR
+.ad
+.RS 22n
+KDC configuration information.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR kpasswd (1),
+.BR kdc.conf (5),
+.BR attributes (7),
+.BR kerberos (7),
+.BR pam_krb5_migrate (7),
+.BR kadmin.local (8),
+.BR kadmind (8),
+.BR kdb5_util (8)
diff --git a/usr/src/man/man5/kdc.conf.5 b/usr/src/man/man5/kdc.conf.5
new file mode 100644
index 0000000000..7517696483
--- /dev/null
+++ b/usr/src/man/man5/kdc.conf.5
@@ -0,0 +1,1087 @@
+'\" te
+.\" Copyright (c) 2007 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH KDC.CONF 5 "Oct 29, 2015"
+.SH NAME
+kdc.conf \- Key Distribution Center (KDC) configuration file
+.SH SYNOPSIS
+.LP
+.nf
+\fB/etc/krb5/kdc.conf\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBkdc.conf\fR file contains \fBKDC\fR configuration information, including
+defaults used when issuing Kerberos tickets. This file must reside on all
+\fBKDC\fR servers. After you make any changes to the \fBkdc.conf\fR file, stop
+and restart the \fBkrb5kdc\fR daemon on the \fBKDC\fR for the changes to take
+effect.
+.sp
+.LP
+The format of the \fBkdc.conf\fR consists of section headings in square
+brackets (\fB[]\fR). Each section contains zero or more configuration variables
+(called relations), of the form of:
+.sp
+.in +2
+.nf
+\fIrelation\fR = \fIrelation-value\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+or
+.sp
+.in +2
+.nf
+\fIrelation-subsection\fR = {
+ \fIrelation\fR = \fIrelation-value\fR
+ \fIrelation\fR = \fIrelation-value\fR
+ }
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The \fBkdc.conf\fR file contains one of more of the following three sections:
+.sp
+.ne 2
+.na
+\fB\fBkdcdefaults\fR\fR
+.ad
+.sp .6
+.RS 4n
+Contains default values for overall behavior of the \fBKDC\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrealms\fR\fR
+.ad
+.sp .6
+.RS 4n
+Contains subsections for Kerberos realms, where \fIrelation-subsection\fR is
+the name of a realm. Each subsection contains relations that define \fBKDC\fR
+properties for that particular realm, including where to find the Kerberos
+servers for that realm.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBlogging\fR\fR
+.ad
+.sp .6
+.RS 4n
+Contains relations that determine how Kerberos programs perform logging.
+.RE
+
+.SS "The \fBkdcdefaults\fR Section"
+.sp
+.LP
+The following relation can be defined in the \fB[kdcdefaults]\fR section:
+.sp
+.ne 2
+.na
+\fB\fBkdc_ports\fR\fR
+.ad
+.sp .6
+.RS 4n
+This relation lists the UDP ports on which the Kerberos server should listen by
+default. This list is a comma-separated list of integers. If the assigned value
+is 0, the Kerberos server does not listen on any UDP port. If this relation is
+not specified, the Kerberos server listens on port \fB750\fR and port \fB88\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBkdc_tcp_ports\fR\fR
+.ad
+.sp .6
+.RS 4n
+This relation lists the TCP ports on which the Kerberos server should listen by
+default. This list is a comma-separated list of integers. If the assigned value
+is 0, the Kerberos server does not listen on any TCP port. If this relation is
+not specified, the Kerberos server listens on the \fBkdc\fR TCP port specified
+in \fB/etc/services\fR. If this port is not found in \fB/etc/services\fR the
+Kerberos server defaults to listen on TCP port 88.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBkdc_max_tcp_connections\fR\fR
+.ad
+.sp .6
+.RS 4n
+This relation controls the maximum number of TCP connections the KDC allows.
+The minimum value is 10. If this relation is not specified, the Kerberos server
+allows a maximum of 30 TCP connections.
+.RE
+
+.SS "The \fBrealms\fR Section"
+.sp
+.LP
+This section contains subsections for Kerberos realms, where
+\fIrelation-subsection\fR is the name of a realm. Each subsection contains
+relations that define \fBKDC\fR properties for that particular realm.
+.sp
+.LP
+The following relations can be specified in each subsection:
+.sp
+.ne 2
+.na
+\fB\fBacl_file\fR\fR
+.ad
+.sp .6
+.RS 4n
+(string) Location of the Kerberos V5 access control list (\fBACL\fR) file that
+\fBkadmin\fR uses to determine the privileges allowed to each principal on the
+database. The default location is \fB\fR\fB/etc/krb5/kadm5.acl\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBadmin_keytab\fR\fR
+.ad
+.sp .6
+.RS 4n
+(string) Location of the \fBkeytab\fR file that \fBkadmin\fR uses to
+authenticate to the database. The default location is
+\fB/etc/krb5/kadm5.keytab\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdatabase_name\fR\fR
+.ad
+.sp .6
+.RS 4n
+(string) Location of the Kerberos database for this realm. The default location
+is \fB/var/krb5/principal\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdefault_principal_expiration\fR\fR
+.ad
+.sp .6
+.RS 4n
+(absolute time string) The default expiration date of principals created in
+this realm. See the \fBTime Format\fR section in \fBkinit\fR(1) for the valid
+absolute time formats you can use for \fBdefault_principal_expiration\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdefault_principal_flags\fR\fR
+.ad
+.sp .6
+.RS 4n
+(flag string) The default attributes of principals created in this realm. Some
+of these flags are better to set on an individual principal basis through the
+use of the attribute modifiers when using the \fBkadmin\fR command to create
+and modify principals. However, some of these options can be applied to all
+principals in the realm by adding them to the list of flags associated with
+this relation.
+.sp
+A "flag string" is a list of one or more of the flags listed below preceded by
+a minus (\fB-\fR) or a plus (\fB+\fR) character, indicating that the option
+that follows should be enabled or disabled.
+.sp
+Flags below marked with an asterisk (\fB*\fR) are flags that are best applied
+on an individual principal basis through the \fBkadmin\fR interface rather
+than as a blanket attribute to be applied to all principals.
+.sp
+.ne 2
+.na
+\fB\fBpostdateable\fR\fR
+.ad
+.sp .6
+.RS 4n
+Create postdatable tickets.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBforwardable\fR\fR
+.ad
+.sp .6
+.RS 4n
+Create forwardable tickets.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBtgt-based\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow TGT-based requests.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrenewable\fR\fR
+.ad
+.sp .6
+.RS 4n
+Create Renewable tickets.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBproxiable\fR\fR
+.ad
+.sp .6
+.RS 4n
+Create Proxiable tickets.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdup-skey\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow DUP_SKEY requests, this enables user-to-user authentication.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpreauth\fR\fR
+.ad
+.sp .6
+.RS 4n
+Require the use of pre-authentication data whenever principals request TGTs.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBhwauth\fR\fR
+.ad
+.sp .6
+.RS 4n
+Require the use of hardware-based pre-authentication data whenever principals
+request TGTs.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB* allow-tickets\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow tickets to be issued for all principals.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB* pwdchange\fR\fR
+.ad
+.sp .6
+.RS 4n
+Require principal's to change their password.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB* service\fR\fR
+.ad
+.sp .6
+.RS 4n
+Enable or disable a service.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB* pwservice\fR\fR
+.ad
+.sp .6
+.RS 4n
+Mark principals as password changing principals.
+.RE
+
+An example of \fBdefault_principal_flags\fR is shown in EXAMPLES, below.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdict_file\fR\fR
+.ad
+.sp .6
+.RS 4n
+(string) Location of the dictionary file containing strings that are not
+allowed as passwords. A principal with any password policy is not allowed to
+select a password in the dictionary. The default location is
+\fB/var/krb5/kadm5.dict\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBkadmind_port\fR\fR
+.ad
+.sp .6
+.RS 4n
+(port number) The port that the \fBkadmind\fR daemon is to listen on for this
+realm. The assigned port for \fBkadmind\fR is 749.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBkey_stash_file\fR\fR
+.ad
+.sp .6
+.RS 4n
+(string) Location where the master key has been stored (by \fBkdb5_util
+stash\fR). The default location is \fB/var/krb5/.k5.\fR\fIrealm\fR, where
+\fIrealm\fR is the Kerberos realm.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBkdc_ports\fR\fR
+.ad
+.sp .6
+.RS 4n
+(string) The list of UDP ports that the \fBKDC\fR listens on for this realm. By
+default, the value of \fBkdc_ports\fR as specified in the \fB[kdcdefaults]\fR
+section is used.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBkdc_tcp_ports\fR\fR
+.ad
+.sp .6
+.RS 4n
+(string) The list of TCP ports that the KDC listens on (in addition to the UDP
+ports specified by \fBkdc_ports\fR) for this realm. By default, the value of
+\fBkdc_tcp_ports\fR as specified in the \fB[kdcdefaults]\fR section is used.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmaster_key_name\fR\fR
+.ad
+.sp .6
+.RS 4n
+(string) The name of the master key.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmaster_key_type\fR\fR
+.ad
+.sp .6
+.RS 4n
+(key type string) The master key's key type. This is used to determine the type
+of encryption that encrypts the entries in the principal db. \fBdes-cbc-crc\fR,
+\fBdes3-cbc-md5\fR, \fBdes3-cbc-sha1-kd\fR, \fBarcfour-hmac-md5\fR,
+\fBarcfour-hmac-md5-exp\fR, \fBaes128-cts-hmac-sha1-96\fR, and
+\fBaes256-cts-hmac-sha1-96\fR are supported at this time (\fBdes-cbc-crc\fR is
+the default). If you set this to \fBdes3-cbc-sha1-kd\fR all systems that
+receive copies of the principal db, such as those running slave KDC's, must
+support \fBdes3-cbc-sha1-kd\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmax_life\fR\fR
+.ad
+.sp .6
+.RS 4n
+(delta time string) The maximum time period for which a ticket is valid in this
+realm. See the \fBTime\fR \fBFormat\fR section in \fBkinit\fR(1) for the valid
+time duration formats you can use for \fBmax_life\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmax_renewable_life\fR\fR
+.ad
+.sp .6
+.RS 4n
+(delta time string) The maximum time period during which a valid ticket can be
+renewed in this realm. See the \fBTime\fR \fBFormat\fR section in
+\fBkinit\fR(1) for the valid time duration formats you can use for
+\fBmax_renewable_life\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsunw_dbprop_enable = [true | false]\fR\fR
+.ad
+.sp .6
+.RS 4n
+Enable or disable incremental database propagation. Default is \fBfalse\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsunw_dbprop_master_ulogsize = N\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the maximum number of log entries available for incremental
+propagation to the slave KDC servers. The maximum value that this can be is
+2500 entries. Default value is 1000 entries.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsunw_dbprop_slave_poll = N[s, m, h]\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies how often the slave KDC polls for new updates that the master might
+have. Default is \fB2m\fR (two minutes).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsupported_enctypes\fR\fR
+.ad
+.sp .6
+.RS 4n
+List of \fBkey\fR/\fBsalt\fR strings. The default \fBkey\fR/\fBsalt\fR
+combinations of principals for this realm. The \fBkey\fR is separated from the
+\fBsalt\fR by a colon (\fB:\fR) or period (\fB\&.\fR). Multiple
+\fBkey\fR/\fBsalt\fR strings can be used by separating each string with a
+space. The \fBsalt\fR is additional information encoded within the key that
+tells what kind of key it is. Only the \fBnormal\fR \fBsalt\fR is supported at
+this time, for example, \fBdes-cbc-crc:normal\fR. If this relation is not
+specified, the default setting is:
+.sp
+.in +2
+.nf
+aes256-cts-hmac-sha1-96:normal \e \fI(see note below)\fR
+aes128-cts-hmac-sha1-96:normal \e
+des3-cbc-sha1-kd:normal \e
+arcfour-hmac-md5:normal \e
+des-cbc-md5:normal
+.fi
+.in -2
+
+.LP
+Note -
+.sp
+.RS 2
+The unbundled Strong Cryptographic packages must be installed for the
+\fBaes256-cts-hmac-sha1-96:normal\fR \fBenctype\fR to be available for
+Kerberos.
+.RE
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBreject_bad_transit\fR\fR
+.ad
+.sp .6
+.RS 4n
+This boolean specifies whether the list of transited realms for cross-realm
+tickets should be checked against the transit path computed from the realm
+names and the \fB[capaths]\fR section of its \fBkrb5.conf\fR(5) file.
+.sp
+The default for \fBreject_bad_transit\fR is \fBtrue\fR.
+.RE
+
+.SS "The \fBlogging\fR Section"
+.sp
+.LP
+This section indicates how Kerberos programs perform logging. The same relation
+can be repeated if you want to assign it multiple logging methods. The
+following relations can be defined in the \fB[logging]\fR section:
+.sp
+.ne 2
+.na
+\fB\fBkdc\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies how the \fBKDC\fR is to perform its logging. The default is
+\fBFILE:/var/krb5/kdc.log\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBadmin_server\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies how the administration server is to perform its logging. The default
+is \fBFILE:/var/krb5/kadmin.log\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdefault\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies how to perform logging in the absence of explicit specifications.
+.RE
+
+.sp
+.LP
+The \fB[logging]\fR relations can have the following values:
+.sp
+.LP
+\fBFILE:\fR\fIfilename\fR
+.sp
+.LP
+or
+.sp
+.ne 2
+.na
+\fB\fBFILE=\fR\fIfilename\fR\fR
+.ad
+.sp .6
+.RS 4n
+This value causes the entity's logging messages to go to the specified file. If
+the `=' form is used, the file is overwritten. If the `:' form is used, the
+file is appended to.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSTDERR\fR\fR
+.ad
+.sp .6
+.RS 4n
+This value sends the entity's logging messages to its standard error stream.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBCONSOLE\fR\fR
+.ad
+.sp .6
+.RS 4n
+This value sends the entity's logging messages to the console, if the system
+supports it.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBDEVICE=\fR\fIdevicename\fR\fR
+.ad
+.sp .6
+.RS 4n
+This sends the entity's logging messages to the specified device.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSYSLOG[:\fR\fIseverity\fR\fB[:\fR\fIfacility\fR\fB]]\fR\fR
+.ad
+.sp .6
+.RS 4n
+This sends the entity's logging messages to the system log.
+.sp
+The \fIseverity\fR argument specifies the default severity of system log
+messages. This default can be any of the following severities supported by the
+\fBsyslog\fR(3C) call, minus the \fBLOG_\fR prefix: \fBLOG_EMERG\fR,
+\fBLOG_ALERT\fR, \fBLOG_CRIT\fR, \fBLOG_ERR\fR, \fBLOG_WARNING\fR,
+\fBLOG_NOTICE\fR, \fBLOG_INFO\fR, and \fBLOG_DEBUG\fR. For example, a value of
+\fBCRIT\fR would specify \fBLOG_CRIT\fR severity.
+.sp
+The \fIfacility\fR argument specifies the facility under which the messages are
+logged. This can be any of the following facilities supported by the
+\fBsyslog\fR(3C) call minus the \fBLOG_\fR prefix: \fBLOG_KERN\fR,
+\fBLOG_USER\fR, \fBLOG_MAIL\fR, \fBLOG_DAEMON\fR, \fBLOG_AUTH\fR,
+\fBLOG_LPR\fR, \fBLOG_NEWS\fR, \fBLOG_UUCP\fR, \fBLOG_CRON\fR, and
+\fBLOG_LOCAL0\fR through \fBLOG_LOCAL7\fR.
+.sp
+If no severity is specified, the default is \fBERR\fR. If no facility is
+specified, the default is \fBAUTH\fR.
+.sp
+In the following example, the logging messages from the \fBKDC\fR go to the
+console and to the system log under the facility \fBLOG_DAEMON\fR with default
+severity of \fBLOG_INFO\fR; the logging messages from the administration server
+are appended to the \fB/var/krb5/kadmin.log\fR file and sent to the
+\fB/dev/tty04\fR device.
+.sp
+.in +2
+.nf
+[logging]
+kdc = CONSOLE
+kdc = SYSLOG:INFO:DAEMON
+admin_server = FILE:/export/logging/kadmin.log
+admin_server = DEVICE=/dev/tty04
+.fi
+.in -2
+.sp
+
+.RE
+
+.SS "PKINIT-specific Options"
+.sp
+.LP
+The following are \fBpkinit-specific\fR options. These values can be specified
+in \fB[kdcdefaults]\fR as global defaults, or within a realm-specific
+subsection of \fB[realms]\fR. A realm-specific value overrides, does not add
+to, a generic \fB[kdcdefaults]\fR specification. The search order is
+.RS +4
+.TP
+1.
+realm-specific subsection of \fB[realms]\fR
+.sp
+.ne 2
+.na
+\fB[realms]\fR
+.ad
+.RS 12n
+.sp
+.in +2
+.nf
+[realms]
+ EXAMPLE.COM = {
+ pkinit_anchors = FILE:/usr/local/example.com.crt
+ }
+.fi
+.in -2
+
+.RE
+
+.RE
+.RS +4
+.TP
+2.
+generic value in the \fB[kdcdefaults]\fR section
+.sp
+.in +2
+.nf
+[kdcdefaults]
+ pkinit_anchors = DIR:/usr/local/generic_trusted_cas/
+.fi
+.in -2
+
+.RE
+.sp
+.ne 2
+.na
+\fB\fBpkinit_identity\fR \fB=\fR \fIURI\fR\fR
+.ad
+.RS 25n
+Specifies the location of the KDC's X.509 identity information. This option is
+required if \fBpkinit\fR is supported by the KDC. Valid \fIURI\fR types are
+\fBFILE\fR, \fBDIR\fR, \fBPKCS11\fR, \fBPKCS12\fR, and \fBENV\fR. See the
+\fBPKINIT URI Types\fR section for more details.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpkinit_anchors\fR \fB=\fR \fIURI\fR\fR
+.ad
+.RS 25n
+Specifies the location of trusted anchor (root) certificates which the KDC
+trusts to sign client certificates. This option is required if \fBpkinit\fR is
+supported by the KDC. This option can be specified multiple times. Valid
+\fIURI\fR types are \fBFILE\fR and \fBDIR\fR. See the \fBPKINIT URI Types\fR
+section for details.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpkinit_pool\fR\fR
+.ad
+.RS 25n
+Specifies the location of intermediate certificates which can be used by the
+KDC to complete the trust chain between a client's certificate and a trusted
+anchor. This option can be specified multiple times. Valid \fIURI\fR types are
+\fBFILE\fR and \fBDIR\fR. See the \fBPKINIT URI Types\fR section for more
+details.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpkinit_revoke\fR\fR
+.ad
+.RS 25n
+Specifies the location of Certificate Revocation List (CRL) information to be
+used by the KDC when verifying the validity of client certificates. This option
+can be specified multiple times. The default certificate verification process
+always checks the available revocation information to see if a certificate has
+been revoked. If a match is found for the certificate in a CRL, verification
+fails. If the certificate being verified is not listed in a CRL, or there is no
+CRL present for its issuing CA, and \fBpkinit_require_crl_checking\fR is
+\fBfalse\fR, then verification succeeds. The only valid \fIURI\fR types is
+\fBDIR\fR. See the \fBPKINIT URI Types\fR section for more details. If
+\fBpkinit_require_crl_checking\fR is \fBtrue\fR and there is no CRL information
+available for the issuing CA, verification fails.
+\fBpkinit_require_crl_checking\fR should be set to \fBtrue\fR if the policy is
+such that up-to-date CRLs must be present for every CA.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpkinit_dh_min_bits\fR\fR
+.ad
+.RS 25n
+Specifies the minimum number of bits the KDC is willing to accept for a
+client's Diffie-Hellman key.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpkinit_allow_upn\fR\fR
+.ad
+.RS 25n
+Specifies that the KDC is willing to accept client certificates with the
+Microsoft UserPrincipalName (UPN) Subject Alternative Name (SAN). This means
+the KDC accepts the binding of the UPN in the certificate to the Kerberos
+principal name.
+.sp
+The default is \fBfalse\fR.
+.sp
+Without this option, the KDC only accepts certificates with the
+\fBid-pkinit-san\fR as defined in RFC4556. There is currently no option to
+disable SAN checking in the KDC.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpkinit_eku_checking\fR\fR
+.ad
+.RS 25n
+This option specifies what Extended Key Usage (EKU) values the KDC is willing
+to accept in client certificates. The values recognized in the \fBkdc.conf\fR
+file are:
+.sp
+.ne 2
+.na
+\fBkpClientAuth\fR
+.ad
+.RS 16n
+This is the default value and specifies that client certificates must have the
+\fBid-pkinit-KPClientAuth EKU\fR as defined in RFC4556.
+.RE
+
+.sp
+.ne 2
+.na
+\fBscLogin\fR
+.ad
+.RS 16n
+If \fBscLogin\fR is specified, client certificates with the Microsoft Smart
+Card Login EKU (\fBid-ms-kp-sc-logon\fR) is accepted.
+.RE
+
+.RE
+
+.SS "PKINIT URI Types"
+.sp
+.ne 2
+.na
+\fBFILE:\fIfile-name\fR[\fI,key-file-name\fR]\fR
+.ad
+.sp .6
+.RS 4n
+This option has context-specific behavior.
+.sp
+.ne 2
+.na
+\fBpkinit_identity\fR
+.ad
+.RS 19n
+\fIfile-name\fR specifies the name of a PEM-format file containing the user's
+certificate. If \fIkey-file-name\fR is not specified, the user's private key is
+expected to be in \fIfile-name\fR as well. Otherwise, \fIkey-file-name\fR is
+the name of the file containing the private key.
+.RE
+
+.sp
+.ne 2
+.na
+\fBpkinit_anchors\fR
+.ad
+.br
+.na
+\fBpkinit_pool\fR
+.ad
+.RS 19n
+\fIfile-name\fR is assumed to be the name of an OpenSSL-style ca-bundle file.
+The \fIca-bundle\fR file should be base-64 encoded.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fBDIR:\fIdirectory-name\fR\fR
+.ad
+.sp .6
+.RS 4n
+This option has context-specific behavior.
+.sp
+.ne 2
+.na
+\fBpkinit_identity\fR
+.ad
+.RS 19n
+\fIdirectory-name\fR specifies a directory with files named \fB*.crt\fR and
+\fB*.key\fR, where the first part of the file name is the same for matching
+pairs of certificate and private key files. When a file with a name ending with
+\fB\&.crt\fR is found, a matching file ending with .\fBkey\fR is assumed to
+contain the private key. If no such file is found, then the certificate in the
+\fB\&.crt\fR is not used.
+.RE
+
+.sp
+.ne 2
+.na
+\fBpkinit_anchors\fR
+.ad
+.br
+.na
+\fBpkinit_pool\fR
+.ad
+.RS 19n
+\fIdirectory-name\fR is assumed to be an OpenSSL-style hashed CA directory
+where each CA cert is stored in a file named \fBhash-of-ca-cert.\fR\fI#\fR.
+This infrastructure is encouraged, but all files in the directory is examined
+and if they contain certificates (in PEM format), they are used.
+.RE
+
+.sp
+.ne 2
+.na
+\fBpkinit_revoke\fR
+.ad
+.RS 19n
+\fIdirectory-name\fR is assumed to be an OpenSSL-style hashed CA directory
+where each revocation list is stored in a file named
+\fBhash-of-ca-cert.r\fR\fI#\fR. This infrastructure is encouraged, but all
+files in the directory is examined and if they contain a revocation list (in
+PEM format), they are used.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fBPKCS12:pkcs12-file-name\fR
+.ad
+.sp .6
+.RS 4n
+\fBpkcs12-file-name\fR is the name of a PKCS #12 format file, containing the
+user's certificate and private key.
+.RE
+
+.sp
+.ne 2
+.na
+\fBPKCS11:[slotid=\fIslot-id\fR][:token=\fItoken-label\fR][:certid=\fIcert-id\fR][:certlabel=\fIcert-label\fR]\fR
+.ad
+.sp .6
+.RS 4n
+All keyword/values are optional. PKCS11 modules (for example,
+\fBopensc-pkcs11.so\fR) must be installed as a crypto provider under
+\fBlibpkcs11\fR(3LIB). \fBslotid=\fR and/or \fBtoken=\fR can be specified to
+force the use of a particular smard card reader or token if there is more than
+one available. \fBcertid=\fR and/or \fBcertlabel=\fR can be specified to force
+the selection of a particular certificate on the device. See the
+\fBpkinit_cert_match\fR configuration option for more ways to select a
+particular certificate to use for \fBpkinit\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBENV:\fIenvironment-variable-name\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fIenvironment-variable-name\fR specifies the name of an environment variable
+which has been set to a value conforming to one of the previous values. For
+example, \fBENV:X509_PROXY\fR, where environment variable \fBX509_PROXY\fR has
+been set to \fBFILE:/tmp/my_proxy.pem\fR.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRSample \fBkdc.conf\fR File
+.sp
+.LP
+The following is an example of a \fBkdc.conf\fR file:
+
+.sp
+.in +2
+.nf
+[kdcdefaults]
+ kdc_ports = 88
+
+[realms]
+ ATHENA.MIT.EDU = {
+ kadmind_port = 749
+ max_life = 10h 0m 0s
+ max_renewable_life = 7d 0h 0m 0s
+ default_principal_flags = +preauth,+forwardable,-postdateable
+ master_key_type = des-cbc-crc
+ supported_enctypes = des-cbc-crc:normal
+ }
+
+[logging]
+ kdc = FILE:/export/logging/kdc.log
+ admin_server = FILE:/export/logging/kadmin.log
+.fi
+.in -2
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/krb5/kadm5.acl\fR\fR
+.ad
+.sp .6
+.RS 4n
+List of principals and their \fBkadmin\fR administrative privileges.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/krb5/kadm5.keytab\fR\fR
+.ad
+.sp .6
+.RS 4n
+Keytab for \fBkadmind\fR principals: \fBkadmin\fR/\fIfqdn\fR,
+\fBchangepw\fR/\fIfqdn\fR, and \fBkadmin\fR/\fBchangepw\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/krb5/principal\fR\fR
+.ad
+.sp .6
+.RS 4n
+Kerberos principal database.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/krb5/principal.ulog\fR\fR
+.ad
+.sp .6
+.RS 4n
+The update log file for incremental propagation.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/krb5/kadm5.dict\fR\fR
+.ad
+.sp .6
+.RS 4n
+Dictionary of strings explicitly disallowed as passwords.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/krb5/kdc.log\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBKDC\fR logging file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/krb5/kadmin.log\fR\fR
+.ad
+.sp .6
+.RS 4n
+Kerberos administration server logging file.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability See below.
+.TE
+
+.sp
+.LP
+All of the keywords, except for the \fBPKINIT\fR keywords are Committed. The
+\fBPKINIT\fR keywords are Volatile.
+.SH SEE ALSO
+.sp
+.LP
+.BR kpasswd (1),
+.BR syslog (3C),
+.BR libpkcs11 (3LIB),
+.BR kadm5.acl (5),
+.BR krb5.conf (5),
+.BR attributes (7),
+.BR kerberos (7),
+.BR kadmin.local (8),
+.BR kadmind (8),
+.BR kdb5_util (8),
+.BR kpropd (8)
diff --git a/usr/src/man/man5/kerberos.5 b/usr/src/man/man5/kerberos.5
deleted file mode 100644
index bd6d69d79e..0000000000
--- a/usr/src/man/man5/kerberos.5
+++ /dev/null
@@ -1,158 +0,0 @@
-'\" te
-.\" Copyright 2014 Nexenta Systems, Inc. All rights reserved.
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH KERBEROS 5 "November 22, 2021"
-.SH NAME
-kerberos \- overview of Solaris Kerberos implementation
-.SH DESCRIPTION
-The Solaris Kerberos implementation, hereafter sometimes shortened to
-"Kerberos," authenticates clients in a network environment, allowing for secure
-transactions. (A client may be a user or a network service.) Kerberos validates
-the identity of a client and the authenticity of transferred data. Kerberos is
-a \fIsingle-sign-on\fR system, meaning that a user needs to provide a password
-only at the beginning of a session. The Solaris Kerberos implementation is
-based on the Kerberos(TM) system developed at \fBMIT\fR, and is compatible with
-Kerberos V5 systems over heterogeneous networks.
-.sp
-.LP
-Kerberos works by granting clients \fItickets\fR, which uniquely identify a
-client, and which have a finite lifetime. A client possessing a ticket is
-automatically validated for network services for which it is entitled; for
-example, a user with a valid Kerberos ticket may rlogin into another machine
-running Kerberos without having to identify itself. Because each client has a
-unique ticket, its identity is guaranteed.
-.sp
-.LP
-To obtain tickets, a client must first initialize the Kerberos session, either
-by using the \fBkinit\fR(1) command or a \fBPAM\fR module. (See
-\fBpam_krb5\fR(5)). \fBkinit\fR prompts for a password, and then communicates
-with a \fIKey Distribution Center\fR (\fBKDC\fR). The \fBKDC\fR returns a
-\fITicket-Granting Ticket\fR (\fBTGT\fR) and prompts for a confirmation
-password. If the client confirms the password, it can use the Ticket-Granting
-Ticket to obtain tickets for specific network services. Because tickets are
-granted transparently, the user need not worry about their management. Current
-tickets may be viewed by using the \fBklist\fR(1) command.
-.sp
-.LP
-Tickets are valid according to the system \fIpolicy\fR set up at installation
-time. For example, tickets have a default lifetime for which they are valid. A
-policy may further dictate that privileged tickets, such as those belonging to
-root, have very short lifetimes. Policies may allow some defaults to be
-overruled; for example, a client may request a ticket with a lifetime greater
-or less than the default.
-.sp
-.LP
-Tickets can be renewed using \fBkinit\fR. Tickets are also \fIforwardable\fR,
-allowing you to use a ticket granted on one machine on a different host.
-Tickets can be destroyed by using \fBkdestroy\fR(1). It is a good idea to
-include a call to \fBkdestroy\fR in your \fB\&.logout\fR file.
-.sp
-.LP
-Under Kerberos, a client is referred to as a \fIprincipal\fR. A principal takes
-the following form:
-.sp
-.in +2
-.nf
-primary/instance@REALM
-.fi
-.in -2
-.sp
-
-.sp
-.ne 2
-.na
-\fBprimary\fR
-.ad
-.RS 12n
-A user, a host, or a service.
-.RE
-
-.sp
-.ne 2
-.na
-\fBinstance\fR
-.ad
-.RS 12n
-A qualification of the primary. If the primary is a host \(em indicated by the
-keyword \fBhost\fR\(em then the instance is the fully-qualified domain name of
-that host. If the primary is a user or service, then the instance is optional.
-Some instances, such as \fBadmin\fR or \fBroot\fR, are privileged.
-.RE
-
-.sp
-.ne 2
-.na
-\fBrealm\fR
-.ad
-.RS 12n
-The Kerberos equivalent of a domain; in fact, in most cases the realm is
-directly mapped to a \fBDNS\fR domain name. Kerberos realms are given in
-upper-case only. For examples of principal names, see the EXAMPLES.
-.RE
-
-.sp
-.LP
-By taking advantage of the General Security Services \fBAPI\fR (\fBGSS-API\fR),
-Kerberos offers, besides user authentication, two other types of security
-service: \fIintegrity\fR, which authenticates the validity of transmitted data,
-and \fIprivacy\fR, which encrypts transmitted data. Developers can take
-advantage of the \fBGSS-API\fR through the use of the RPCSEC_GSS \fBAPI\fR
-interface (see \fBrpcsec_gss\fR(3NSL)).
-.SH EXAMPLES
-\fBExample 1 \fRExamples of valid principal names
-.sp
-.LP
-The following are examples of valid principal names:
-
-.sp
-.in +2
-.nf
- joe
- joe/admin
- joe@ENG.EXAMPLE.COM
- joe/admin@ENG.EXAMPLE.COM
- rlogin/bigmachine.eng.example.com@ENG.EXAMPLE.COM
- host/bigmachine.eng.example.com@ENG.EXAMPLE.COM
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The first four cases are \fIuser principals\fR. In the first two cases, it is
-assumed that the user \fBjoe\fR is in the same realm as the client, so no realm
-is specified. Note that \fBjoe\fR and \fBjoe/admin\fR are different principals,
-even if the same user uses them; \fBjoe/admin\fR has different privileges from
-\fBjoe\fR. The fifth case is a \fIservice principal\fR, while the final case is
-a \fIhost principal\fR. The word \fBhost\fR is required for host principals.
-With host principals, the instance is the fully qualified hostname. Note that
-the words \fBadmin\fR and \fBhost\fR are reserved keywords.
-
-.SH SEE ALSO
-\fBkdestroy\fR(1), \fBkinit\fR(1), \fBklist\fR(1), \fBkpasswd\fR(1),
-\fBkrb5.conf\fR(4), \fBkrb5envvar\fR(5)
-.sp
-.LP
-\fISystem Administration Guide: Security Services\fR
-.SH NOTES
-In previous releases of the Solaris operating system, the Solaris Kerberos
-implementation was referred to as the "Sun Enterprise Authentication Mechanism"
-(SEAM).
-.sp
-.LP
-If you enter your username and \fBkinit\fR responds with this message:
-.sp
-.in +2
-.nf
-Principal unknown (kerberos)
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-you have not been registered as a Kerberos user. See your system administrator
-or the \fISystem Administration Guide: Security Services\fR.
diff --git a/usr/src/man/man5/keytables.5 b/usr/src/man/man5/keytables.5
new file mode 100644
index 0000000000..a1a61ca32d
--- /dev/null
+++ b/usr/src/man/man5/keytables.5
@@ -0,0 +1,964 @@
+'\" te
+.\" Copyright (c) 2003 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH KEYTABLES 5 "Feb 18, 2003"
+.SH NAME
+keytables \- keyboard table descriptions for loadkeys and dumpkeys
+.SH DESCRIPTION
+.sp
+.LP
+These files are used by \fBloadkeys\fR(1) to modify the translation tables used
+by the keyboard streams module and generated from those translation tables. See
+\fBloadkeys\fR(1).
+.sp
+.LP
+Any line in the file beginning with \fB#\fR is a comment, and is ignored.
+\fB#\fR is treated specially only at the beginning of a line.
+.sp
+.LP
+Other lines specify the values to load into the tables for a particular
+keystation. The format is either:
+.sp
+.in +2
+.nf
+\fBkey\fR \fInumber list_of_entries\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+or
+.sp
+.in +2
+.nf
+\fBswap\fR \fInumber1\fR \fBwith\fR \fInumber2\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+or
+.sp
+.in +2
+.nf
+\fBkey\fR \fInumber1\fR \fBsame as\fR \fInumber2\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+or a blank line, which is ignored.
+.sp
+.in +2
+.nf
+\fBkey\fR \fInumber list_of_entries\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+sets the entries for keystation \fInumber\fR from the list given. An entry in
+that list is of the form
+.sp
+.in +2
+.nf
+\fItablename\fR \fIcode\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+where \fItablename\fR is the name of a particular translation table, or
+\fBall\fR. The translation tables are:
+.sp
+.ne 2
+.na
+\fB\fBbase\fR\fR
+.ad
+.RS 9n
+entry when no shifts are active
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBshift\fR\fR
+.ad
+.RS 9n
+entry when "Shift" key is down
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcaps\fR\fR
+.ad
+.RS 9n
+entry when "Caps Lock" is in effect
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBctrl\fR\fR
+.ad
+.RS 9n
+entry when "Control" is down
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBaltg\fR\fR
+.ad
+.RS 9n
+entry when "Alt Graph" is down
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnuml\fR\fR
+.ad
+.RS 9n
+entry when "Num Lock" is in effect
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBup\fR\fR
+.ad
+.RS 9n
+entry when a key goes up
+.RE
+
+.sp
+.LP
+All tables other than \fBup\fR refer to the action generated when a key goes
+down. Entries in the \fBup\fR table are used only for shift keys, since the
+shift in question goes away when the key goes up, except for keys such as "Caps
+Lock" or "Num Lock"; the keyboard streams module makes the key look as if it
+were a latching key.
+.sp
+.LP
+A table name of \fBall\fR indicates that the entry for all tables should be set
+to the specified value, with the following exception: for entries with a value
+other than \fBhole\fR, the entry for the \fBnuml\fR table should be set to
+\fBnonl\fR, and the entry for the \fBup\fR table should be set to \fBnop\fR.
+.sp
+.LP
+The \fIcode\fR specifies the effect of the key in question when the specified
+shift key is down. A \fIcode\fR consists of either:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+A character, which indicates that the key should generate the given character.
+The character can either be a single character, a single character preceded by
+\fB^\fR which refers to a "control character" (for instance, \fB^c\fR is
+control-C), or a C-style character constant enclosed in single quote characters
+(\fB\&'\fR), which can be expressed with C-style escape sequences such as \er
+for \fBRETURN\fR or \e000 for the null character. Note that the single
+character may be any character in an 8-bit character set, such as ISO 8859/1.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+A string, consisting of a list of characters enclosed in double quote
+characters (\fB"\fR). Note that the use of the double quote character means
+that a \fIcode\fR of double quote must be enclosed in single quotes.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+One of the following expressions:
+.RS
+
+.sp
+.ne 2
+.na
+\fB\fBshiftkeys+leftshift\fR\fR
+.ad
+.sp .6
+.RS 4n
+the key is to be the left-hand "Shift" key
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBshiftkeys+rightshift\fR\fR
+.ad
+.sp .6
+.RS 4n
+the key is to be the right-hand "Shift" key
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBshiftkeys+leftctrl\fR\fR
+.ad
+.sp .6
+.RS 4n
+the key is to be the left-hand "Control" key
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBshiftkeys+rightctrl\fR\fR
+.ad
+.sp .6
+.RS 4n
+the key is to be the right-hand "Control" key
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBshiftkeys+alt\fR\fR
+.ad
+.sp .6
+.RS 4n
+the key is to be the "Alt" shift key
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBshiftkeys+altgraph\fR\fR
+.ad
+.sp .6
+.RS 4n
+the key is to be the "Alt Graph" shift key
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBshiftkeys+capslock\fR\fR
+.ad
+.sp .6
+.RS 4n
+the key is to be the "Caps Lock" key
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBshiftkeys+shiftlock\fR\fR
+.ad
+.sp .6
+.RS 4n
+the key is to be the "Shift Lock" key
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBshiftkeys+numlock\fR\fR
+.ad
+.sp .6
+.RS 4n
+the key is to be the "Num Lock" key
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBbuckybits+systembit\fR\fR
+.ad
+.sp .6
+.RS 4n
+the key is to be the "Stop" key in SunView; this is normally the L1 key, or the
+SETUP key on the VT100 keyboard
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBbuckybits+metabit\fR\fR
+.ad
+.sp .6
+.RS 4n
+the key is to be the "meta" key. That is, the "Left" or "Right" key on a Sun-2
+or Sun-3 keyboard or the "diamond" key on a Sun-4 keyboard
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcompose\fR\fR
+.ad
+.sp .6
+.RS 4n
+the key is to be the "Compose" key
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBctrlq\fR\fR
+.ad
+.sp .6
+.RS 4n
+on the "VT100" keyboard, the key is to transmit the control-Q character (this
+would be the entry for the "Q" key in the \fBctrl\fR table)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBctrls\fR\fR
+.ad
+.sp .6
+.RS 4n
+on the "VT100" keyboard, the key is to transmit the control-S character (this
+would be the entry for the "S" key in the \fBctrl\fR table)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnoscroll\fR\fR
+.ad
+.sp .6
+.RS 4n
+on the "VT100" keyboard, the key is to be the "No Scroll" key
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBstring+uparrow\fR\fR
+.ad
+.sp .6
+.RS 4n
+the key is to be the "up arrow" key
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBstring+downarrow\fR\fR
+.ad
+.sp .6
+.RS 4n
+the key is to be the "down arrow" key
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBstring+leftarrow\fR\fR
+.ad
+.sp .6
+.RS 4n
+the key is to be the "left arrow" key
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBstring+rightarrow\fR\fR
+.ad
+.sp .6
+.RS 4n
+the key is to be the "right arrow" key
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBstring+homearrow\fR\fR
+.ad
+.sp .6
+.RS 4n
+the key is to be the "home" key
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfa_acute\fR\fR
+.ad
+.sp .6
+.RS 4n
+the key is to be the acute accent "floating accent" key
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfa_cedilla\fR\fR
+.ad
+.sp .6
+.RS 4n
+the key is to be the cedilla "floating accent" key
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfa_cflex\fR\fR
+.ad
+.sp .6
+.RS 4n
+the key is to be the circumflex "floating accent" key
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfa_grave\fR\fR
+.ad
+.sp .6
+.RS 4n
+the key is to be the grave accent "floating accent" key
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfa_tilde\fR\fR
+.ad
+.sp .6
+.RS 4n
+the key is to be the tilde "floating accent" key
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfa_umlaut\fR\fR
+.ad
+.sp .6
+.RS 4n
+the key is to be the umlaut "floating accent" key
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnonl\fR\fR
+.ad
+.sp .6
+.RS 4n
+this is used only in the Num Lock table; the key is not to be affected by the
+state of Num Lock
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpad0\fR\fR
+.ad
+.sp .6
+.RS 4n
+the key is to be the "0" key on the numeric keypad
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpad1\fR\fR
+.ad
+.sp .6
+.RS 4n
+the key is to be the "1" key on the numeric keypad
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpad2\fR\fR
+.ad
+.sp .6
+.RS 4n
+the key is to be the "2" key on the numeric keypad
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpad3\fR\fR
+.ad
+.sp .6
+.RS 4n
+the key is to be the "3" key on the numeric keypad
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpad4\fR\fR
+.ad
+.sp .6
+.RS 4n
+the key is to be the "4" key on the numeric keypad
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpad5\fR\fR
+.ad
+.sp .6
+.RS 4n
+the key is to be the "5" key on the numeric keypad
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpad6\fR\fR
+.ad
+.sp .6
+.RS 4n
+the key is to be the "6" key on the numeric keypad
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpad7\fR\fR
+.ad
+.sp .6
+.RS 4n
+the key is to be the "7" key on the numeric keypad
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpad8\fR\fR
+.ad
+.sp .6
+.RS 4n
+the key is to be the "8" key on the numeric keypad
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpad9\fR\fR
+.ad
+.sp .6
+.RS 4n
+the key is to be the "9" key on the numeric keypad
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpaddot\fR\fR
+.ad
+.sp .6
+.RS 4n
+the key is to be the "." key on the numeric keypad
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpadenter\fR\fR
+.ad
+.sp .6
+.RS 4n
+the key is to be the "Enter" key on the numeric keypad
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpadplus\fR\fR
+.ad
+.sp .6
+.RS 4n
+the key is to be the "+" key on the numeric keypad
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpadminus\fR\fR
+.ad
+.sp .6
+.RS 4n
+the key is to be the "\(mi" key on the numeric keypad
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpadstar\fR\fR
+.ad
+.sp .6
+.RS 4n
+the key is to be the "*" key on the numeric keypad
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpadslash\fR\fR
+.ad
+.sp .6
+.RS 4n
+the key is to be the "/" key on the numeric keypad
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpadequal\fR\fR
+.ad
+.sp .6
+.RS 4n
+the key is to be the "=" key on the numeric keypad
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpadsep\fR\fR
+.ad
+.sp .6
+.RS 4n
+the key is to be the "," (separator) key on the numeric keypad
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBlf(\fIn\fR)\fR\fR
+.ad
+.sp .6
+.RS 4n
+the key is to be the left-hand function key \fIn\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrf(\fIn\fR)\fR\fR
+.ad
+.sp .6
+.RS 4n
+the key is to be the right-hand function key \fIn\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBtf(\fIn\fR)\fR\fR
+.ad
+.sp .6
+.RS 4n
+the key is to be the top function key \fIn\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBbf(\fIn\fR)\fR\fR
+.ad
+.sp .6
+.RS 4n
+the key is to be the "bottom" function key \fIn\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnop\fR\fR
+.ad
+.sp .6
+.RS 4n
+the key is to do nothing
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBerror\fR\fR
+.ad
+.sp .6
+.RS 4n
+this code indicates an internal error; to be used only for keystation 126, and
+must be used there
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBidle\fR\fR
+.ad
+.sp .6
+.RS 4n
+this code indicates that the keyboard is idle (that is, has no keys down); to
+be used only for all entries other than the \fBnuml\fR and \fBup\fR table
+entries for keystation 127, and must be used there
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBoops\fR\fR
+.ad
+.sp .6
+.RS 4n
+this key exists, but its action is not defined; it has the same effect as
+\fBnop\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBreset\fR\fR
+.ad
+.sp .6
+.RS 4n
+this code indicates that the keyboard has just been reset; to be used only for
+the \fBup\fR table entry for keystation 127, and must be used there.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBswap\fR \fInumber1\fR with \fInumber2\fR\fR
+.ad
+.sp .6
+.RS 4n
+exchanges the entries for keystations \fInumber1\fR and \fInumber2\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBkey \fInumber1\fR\fR same as \fInumber2\fR\fR
+.ad
+.sp .6
+.RS 4n
+sets the entries for keystation \fInumber1\fR to be the same as those for
+keystation \fInumber2\fR. If the file does not specify entries for keystation
+\fInumber2\fR, the entries currently in the translation table are used; if the
+file does specify entries for keystation \fInumber2\fR, those entries are used.
+.RE
+
+.RE
+
+.RE
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRExample of setting multiple keystations.
+.sp
+.LP
+The following entry sets keystation 15 to be a "hole" (that is, an entry
+indicating that there is no keystation 15); sets keystation 30 to do nothing
+when Alt Graph is down, generate "!" when Shift is down, and generate "1" under
+all other circumstances; and sets keystation 76 to be the left-hand Control
+key.
+
+.sp
+.in +2
+.nf
+key 15 all hole
+key 30 base 1 shift ! caps 1 ctrl 1 altg nop
+key 76 all shiftkeys+leftctrl up shiftkeys+leftctrl
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRExchange DELETE and BACKSPACE keys
+.sp
+.LP
+The following entry exchanges the Delete and Back Space keys on the Type 4
+keyboard:
+
+.sp
+.in +2
+.nf
+swap 43 with 66
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Keystation 43 is normally the Back Space key, and keystation 66 is normally the
+Delete key.
+
+.LP
+\fBExample 3 \fRDisable CAPS LOCK key
+.sp
+.LP
+The following entry disables the Caps Lock key on the Type 3 and U.S. Type 4
+keyboards:
+
+.sp
+.in +2
+.nf
+key 119 all nop
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 4 \fRStandard translation tables for the U.S. Type 4 keyboard
+.sp
+.LP
+The following specifies the standard translation tables for the U.S. Type 4
+keyboard:
+
+.sp
+.in +2
+.nf
+key 0 all hole
+key 1 all buckybits+systembit up buckybits+systembit
+key 2 all hole
+key 3 all lf(2)
+key 4 all hole
+key 5 all tf(1)
+key 6 all tf(2)
+key 7 all tf(10)
+key 8 all tf(3)
+key 9 all tf(11)
+key 10 all tf(4)
+key 11 all tf(12)
+key 12 all tf(5)
+key 13 all shiftkeys+altgraph up shiftkeys+altgraph
+key 14 all tf(6)
+key 15 all hole
+key 16 all tf(7)
+key 17 all tf(8)
+key 18 all tf(9)
+key 19 all shiftkeys+alt up shiftkeys+alt
+key 20 all hole
+key 21 all rf(1)
+key 22 all rf(2)
+key 23 all rf(3)
+key 24 all hole
+key 25 all lf(3)
+key 26 all lf(4)
+key 27 all hole
+key 28 all hole
+key 29 all ^[
+key 30 base 1 shift ! caps 1 ctrl 1 altg nop
+key 31 base 2 shift @ caps 2 ctrl ^@ altg nop
+key 32 base 3 shift # caps 3 ctrl 3 altg nop
+key 33 base 4 shift $ caps 4 ctrl 4 altg nop
+key 34 base 5 shift % caps 5 ctrl 5 altg nop
+key 35 base 6 shift ^ caps 6 ctrl ^^ altg nop
+key 36 base 7 shift & caps 7 ctrl 7 altg nop
+key 37 base 8 shift * caps 8 ctrl 8 altg nop
+key 38 base 9 shift ( caps 9 ctrl 9 altg nop
+key 39 base 0 shift ) caps 0 ctrl 0 altg nop
+key 40 base - shift _ caps - ctrl ^_ altg nop
+key 41 base = shift + caps = ctrl = altg nop
+key 42 base ` shift ~ caps ` ctrl ^^ altg nop
+key 43 all '\eb'
+key 44 all hole
+key 45 all rf(4) numl padequal
+key 46 all rf(5) numl padslash
+key 47 all rf(6) numl padstar
+key 48 all bf(13)
+key 49 all lf(5)
+key 50 all bf(10) numl padequal
+key 51 all lf(6)
+key 52 all hole
+key 53 all '\et'
+key 54 base q shift Q caps Q ctrl ^Q altg nop
+key 55 base w shift W caps W ctrl ^W altg nop
+key 56 base e shift E caps E ctrl ^E altg nop
+key 57 base r shift R caps R ctrl ^R altg nop
+key 58 base t shift T caps T ctrl ^T altg nop
+key 59 base y shift Y caps Y ctrl ^Y altg nop
+key 60 base u shift U caps U ctrl ^U altg nop
+key 61 base i shift I caps I ctrl '\et' altg nop
+key 62 base o shift O caps O ctrl ^O altg nop
+key 63 base p shift P caps P ctrl ^P altg nop
+key 64 base [ shift { caps [ ctrl ^[ altg nop
+key 65 base ] shift } caps ] ctrl ^] altg nop
+key 66 all '\e177'
+key 67 all compose
+key 68 all rf(7) numl pad7
+key 69 all rf(8) numl pad8
+key 70 all rf(9) numl pad9
+key 71 all bf(15) numl padminus
+key 72 all lf(7)
+key 73 all lf(8)
+key 74 all hole
+key 75 all hole
+key 76 all shiftkeys+leftctrl up shiftkeys+leftctrl
+key 77 base a shift A caps A ctrl ^A altg nop
+key 78 base s shift S caps S ctrl ^S altg nop
+key 79 base d shift D caps D ctrl ^D altg nop
+key 80 base f shift F caps F ctrl ^F altg nop
+key 81 base g shift G caps G ctrl ^G altg nop
+key 82 base h shift H caps H ctrl '\eb' altg nop
+key 83 base j shift J caps J ctrl '\en' altg nop
+key 84 base k shift K caps K ctrl '\ev' altg nop
+key 85 base l shift L caps L ctrl ^L altg nop
+key 86 base ; shift : caps ; ctrl ; altg nop
+key 87 base '\e'' shift '"' caps '\e'' ctrl '\e'' altg nop
+key 88 base '\e\e' shift | caps '\e\e' ctrl ^\e altg nop
+key 89 all '\er'
+key 90 all bf(11) numl padenter
+key 91 all rf(10) numl pad4
+key 92 all rf(11) numl pad5
+key 93 all rf(12) numl pad6
+key 94 all bf(8) numl pad0
+key 95 all lf(9)
+key 96 all hole
+key 97 all lf(10)
+key 98 all shiftkeys+numlock
+key 99 all shiftkeys+leftshift up shiftkeys+leftshift
+key 100 base z shift Z caps Z ctrl ^Z altg nop
+key 101 base x shift X caps X ctrl ^X altg nop
+key 102 base c shift C caps C ctrl ^C altg nop
+key 103 base v shift V caps V ctrl ^V altg nop
+key 104 base b shift B caps B ctrl ^B altg nop
+key 105 base n shift N caps N ctrl ^N altg nop
+key 106 base m shift M caps M ctrl '\er' altg nop
+key 107 base , shift < caps , ctrl , altg nop
+key 108 base . shift > caps . ctrl . altg nop
+key 109 base / shift ? caps / ctrl ^_ altg nop
+key 110 all shiftkeys+rightshift up shiftkeys+rightshift
+key 111 all '\en'
+key 112 all rf(13) numl pad1
+key 113 all rf(14) numl pad2
+key 114 all rf(15) numl pad3
+key 115 all hole
+key 116 all hole
+key 117 all hole
+key 118 all lf(16)
+key 119 all shiftkeys+capslock
+key 120 all buckybits+metabit up buckybits+metabit
+key 121 base ' ' shift ' ' caps ' ' ctrl ^@ altg ' '
+key 122 all buckybits+metabit up buckybits+metabit
+key 123 all hole
+key 124 all hole
+key 125 all bf(14) numl padplus
+key 126 all error numl error up hole
+key 127 all idle numl idle up reset
+.fi
+.in -2
+.sp
+
+.SH SEE ALSO
+.sp
+.LP
+.BR loadkeys (1)
diff --git a/usr/src/man/man5/krb5.conf.5 b/usr/src/man/man5/krb5.conf.5
new file mode 100644
index 0000000000..ff3e998ff7
--- /dev/null
+++ b/usr/src/man/man5/krb5.conf.5
@@ -0,0 +1,1880 @@
+'\" te
+.\" Copyright (c) 2009 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH KRB5.CONF 5 "November 22, 2021"
+.SH NAME
+krb5.conf \- Kerberos configuration file
+.SH SYNOPSIS
+.nf
+/etc/krb5/krb5.conf
+.fi
+
+.SH DESCRIPTION
+The \fBkrb5.conf\fR file contains Kerberos configuration information, including
+the locations of \fBKDC\fRs and administration daemons for the Kerberos realms
+of interest, defaults for the current realm and for Kerberos applications, and
+mappings of host names onto Kerberos realms. This file must reside on all
+Kerberos clients.
+.sp
+.LP
+The format of the \fBkrb5.conf\fR consists of sections headings in square
+brackets. Each section can contain zero or more configuration variables (called
+\fIrelations\fR), of the form:
+.sp
+.LP
+\fIrelation\fR= \fIrelation-value\fR
+.sp
+.LP
+or
+.sp
+.LP
+\fIrelation-subsection\fR = {
+.br
+.in +2
+\fIrelation\fR= \fIrelation-value\fR
+.in -2
+.br
+.in +2
+\fIrelation\fR= \fIrelation-value\fR
+.in -2
+.sp
+.LP
+}
+.sp
+.LP
+The \fBkrb5.conf\fR file can contain any or all of the following sections:
+.sp
+.ne 2
+.na
+\fB\fBlibdefaults\fR\fR
+.ad
+.sp .6
+.RS 4n
+Contains default values used by the Kerberos V5 library.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBappdefaults\fR\fR
+.ad
+.sp .6
+.RS 4n
+Contains subsections for Kerberos V5 applications, where
+\fIrelation-subsection\fR is the name of an application. Each subsection
+describes application-specific defaults.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrealms\fR\fR
+.ad
+.sp .6
+.RS 4n
+Contains subsections for Kerberos realms, where \fIrelation-subsection\fR is
+the name of a realm. Each subsection contains relations that define the
+properties for that particular realm.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdomain_realm\fR\fR
+.ad
+.sp .6
+.RS 4n
+Contains relations which map domain names and subdomains onto Kerberos realm
+names. This is used by programs to determine what realm a host should be in,
+given its fully qualified domain name.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBlogging\fR\fR
+.ad
+.sp .6
+.RS 4n
+Contains relations which determine how Kerberos programs are to perform
+logging.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcapaths\fR\fR
+.ad
+.sp .6
+.RS 4n
+Contains the authentication paths used with direct (nonhierarchical)
+cross-realm authentication. Entries in this section are used by the client to
+determine the intermediate realms which can be used in cross-realm
+authentication. It is also used by the end-service when checking the transited
+field for trusted intermediate realms.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdbmodules\fR\fR
+.ad
+.sp .6
+.RS 4n
+Contains relations for Kerberos database plug-in-specific configuration
+information.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBkdc\fR\fR
+.ad
+.sp .6
+.RS 4n
+For a Key Distribution Center (\fBKDC\fR), can contain the location of the
+\fBkdc.conf\fR file.
+.RE
+
+.SS "The \fB[libdefaults]\fR Section"
+The \fB[libdefaults]\fR section can contain any of the following relations:
+.sp
+.ne 2
+.na
+\fB\fBdatabase_module\fR\fR
+.ad
+.sp .6
+.RS 4n
+Selects the \fBdbmodule\fR section entry to use to access the Kerberos
+database. If this parameter is not present the code uses the standard
+\fBdb2\fR-based Kerberos database.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdefault_keytab_name\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the default keytab name to be used by application servers such as
+\fBtelnetd\fR and \fBrlogind\fR. The default is \fB/etc/krb5/krb5.keytab\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdefault_realm\fR\fR
+.ad
+.sp .6
+.RS 4n
+Identifies the default Kerberos realm for the client. Set its value to your
+Kerberos realm.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdefault_tgs_enctypes\fR\fR
+.ad
+.sp .6
+.RS 4n
+Identifies the supported list of session key encryption types that should be
+returned by the \fBKDC\fR. The list can be delimited with commas or whitespace.
+The supported encryption types are \fBdes3-cbc-sha1-kd\fR, \fBdes-cbc-crc\fR,
+\fBdes-cbc-md5\fR, \fBarcfour-hmac-md5\fR, \fBarcfour-hmac-md5-exp\fR,
+\fBaes128-cts-hmac-sha1-96\fR, and \fBaes256-cts-hmac-sha1-96\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdefault_tkt_enctypes\fR\fR
+.ad
+.sp .6
+.RS 4n
+Identifies the supported list of session key encryption types that should be
+requested by the client. The format is the same as for
+\fBdefault_tgs_enctypes\fR. The supported encryption types are
+\fBdes3-cbc-sha1-kd\fR, \fBdes-cbc-crc\fR, \fBdes-cbc-md5\fR,
+\fBarcfour-hmac-md5\fR, \fBarcfour-hmac-md5-exp\fR,
+\fBaes128-cts-hmac-sha1-96\fR, and \fBaes256-cts-hmac-sha1-96\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBclockskew\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets the maximum allowable amount of clock skew in seconds that the library
+tolerates before assuming that a Kerberos message is invalid. The default value
+is 300 seconds, or five minutes.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBforwardable =\fR [\fBtrue\fR | \fBfalse\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Sets the "\fBforwardable\fR" flag in all tickets. This allows users to transfer
+their credentials from one host to another without reauthenticating. This
+option can also be set in the \fB[appdefaults]\fR or \fB[realms]\fR section
+(see below) to limit its use in particular applications or just to a specific
+realm.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpermitted_enctypes\fR\fR
+.ad
+.sp .6
+.RS 4n
+This relation controls the encryption types for session keys permitted by
+server applications that use Kerberos for authentication. In addition, it
+controls the encryption types of keys added to a \fBkeytab\fR by means of the
+\fBkadmin\fR(8) \fBktadd\fR command. The default is:
+\fBaes256-cts-hmac-sha1-96\fR, \fBaes128-cts-hmac-sha1-96\fR,
+\fBdes3-hmac-sha1-kd\fR, \fBarcfour-hmac-md5\fR, \fBarcfour-hmac-md5-exp\fR,
+\fBdes-cbc-md5\fR, \fBdes-cbc-crc\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBproxiable =\fR [\fBtrue\fR | \fBfalse\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Sets the \fBproxiable\fR flag in all tickets. This allows users to create a
+proxy ticket that can be transferred to a kerberized service to allow that
+service to perform some function on behalf of the original user. This option
+can also be set in the \fB[appdefaults]\fR or \fB[realms]\fR section (see
+below) to limit its use in particular applications or just to a specific realm.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrenew_lifetime =\fR\fIlifetime\fR\fR
+.ad
+.sp .6
+.RS 4n
+Requests renewable tickets, with a total lifetime of \fIlifetime\fR. The value
+for \fIlifetime\fR must be followed immediately by one of the following
+delimiters:
+.sp
+.ne 2
+.na
+\fB\fBs\fR\fR
+.ad
+.sp .6
+.RS 4n
+seconds
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBm\fR\fR
+.ad
+.sp .6
+.RS 4n
+minutes
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBh\fR\fR
+.ad
+.sp .6
+.RS 4n
+hours
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBd\fR\fR
+.ad
+.sp .6
+.RS 4n
+days
+.RE
+
+Example:
+.sp
+.in +2
+.nf
+\fBrenew_lifetime = 90m\fR
+.fi
+.in -2
+.sp
+
+Do not mix units. A value of "\fB3h30m\fR" results in an error.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmax_lifetime =\fR\fIlifetime\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets the requested maximum lifetime of the ticket. The values for
+\fIlifetime\fR follow the format described for the \fBrenew_lifetime\fR option,
+above.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdns_lookup_kdc\fR\fR
+.ad
+.sp .6
+.RS 4n
+Indicates whether DNS SRV records need to be used to locate the KDCs and the
+other servers for a realm, if they have not already been listed in the
+\fB[realms]\fR section. This option makes the machine vulnerable to a certain
+type of DoS attack if someone spoofs the DNS records and does a redirect to
+another server. This is, however, no worse than a DoS, since the bogus KDC is
+unable to decode anything sent (excepting the initial ticket request, which has
+no encrypted data). Also, anything the fake KDC sends out isl not trusted
+without verification (the local machine is unaware of the secret key to be
+used). If \fBdns_lookup_kdc\fR is not specified but \fBdns_fallback\fR is, then
+that value is used instead. In either case, values (if present) in the
+\fB[realms]\fR section override DNS. \fBdns_lookup_kdc\fR is enabled by
+default.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdns_lookup_realm\fR\fR
+.ad
+.sp .6
+.RS 4n
+Indicates whether DNS TXT records need to be used to determine the Kerberos
+realm information and/or the host/domain name-to-realm mapping of a host, if
+this information is not already present in the \fBkrb5.conf\fR file. Enabling
+this option might make the host vulnerable to a redirection attack, wherein
+spoofed DNS replies persuade a client to authenticate to the wrong realm. In a
+realm with no cross-realm trusts, this a DoS attack. If \fBdns_lookup_realm\fR
+is not specified but \fBdns_fallback\fR is, then that value is used instead. In
+either case, values (if present) in the \fB[libdefaults]\fR and
+\fB[domain_realm]\fR sections override DNS.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdns_fallback\fR\fR
+.ad
+.sp .6
+.RS 4n
+Generic flag controlling the use of DNS for retrieval of information about
+Kerberos servers and host/domain name-to-realm mapping. If both
+\fBdns_lookup_kdc\fR and \fBdns_lookup_realm\fR have been specified, this
+option has no effect.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBverify_ap_req_nofail [true | false]\fR\fR
+.ad
+.sp .6
+.RS 4n
+If \fBtrue\fR, the local keytab file (\fB/etc/krb5/krb5.keytab\fR) must contain
+an entry for the local \fBhost\fR principal, for example,
+\fBhost/foo.example.net@EXAMPLE.COM\fR. This entry is needed to verify that the
+\fBTGT\fR requested was issued by the same \fBKDC\fR that issued the key for
+the host principal. If undefined, the behavior is as if this option were set to
+\fBtrue\fR. Setting this value to \fBfalse\fR leaves the system vulnerable to
+\fBDNS\fR spoofing attacks. This parameter can be in the \fB[realms]\fR section
+to set it on a per-realm basis, or it can be in the \fB[libdefaults]\fR section
+to make it a network-wide setting for all realms.
+.RE
+
+.SS "The \fB[appdefaults]\fR Section"
+This section contains subsections for Kerberos V5 applications, where
+\fIrelation-subsection\fR is the name of an application. Each subsection
+contains relations that define the default behaviors for that application.
+.sp
+.LP
+The following relations can be found in the \fB[appdefaults]\fR section, though
+not all relations are recognized by all kerberized applications. Some are
+specific to particular applications.
+.sp
+.ne 2
+.na
+\fB\fBautologin =\fR [\fBtrue\fR | \fBfalse\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Forces the application to attempt automatic login by presenting Kerberos
+credentials. This is valid for the following applications: \fBrlogin\fR,
+\fBrsh\fR, \fBrcp\fR, \fBrdist\fR, and \fBtelnet\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBencrypt =\fR [\fBtrue\fR | \fBfalse\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Forces applications to use encryption by default (after authentication) to
+protect the privacy of the sessions. This is valid for the following
+applications: \fBrlogin\fR, \fBrsh\fR, \fBrcp\fR, \fBrdist\fR, and
+\fBtelnet\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBforward =\fR [\fBtrue\fR | \fBfalse\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Forces applications to forward the user'ss credentials (after authentication)
+to the remote server. This is valid for the following applications:
+\fBrlogin\fR, \fBrsh\fR, \fBrcp\fR, \fBrdist\fR, and \fBtelnet\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBforwardable =\fR [\fBtrue\fR | \fBfalse\fR]\fR
+.ad
+.sp .6
+.RS 4n
+See the description in the \fB[libdefaults]\fR section above. This is used by
+any application that creates a ticket granting ticket and also by applications
+that can forward tickets to a remote server.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBproxiable =\fR [\fBtrue\fR | \fBfalse\fR]\fR
+.ad
+.sp .6
+.RS 4n
+See the description in the \fB[libdefaults]\fR section above. This is used by
+any application that creates a ticket granting ticket.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrenewable =\fR [\fBtrue\fR | \fBfalse\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Creates a TGT that can be renewed (prior to the ticket expiration time). This
+is used by any application that creates a ticket granting ticket.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBno_addresses =\fR [\fBtrue\fR | \fBfalse\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Creates tickets with no address bindings. This is to allow tickets to be used
+across a \fBNAT\fR boundary or when using multi-homed systems. This option is
+valid in the \fBkinit\fR \fB[appdefault]\fR section only.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmax_life =\fR\fIlifetime\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets the maximum lifetime of the ticket, with a total lifetime of
+\fIlifetime\fR. The values for \fIlifetime\fR follow the format described in
+the \fB[libdefaults]\fR section above. This option is obsolete and is removed
+in a future release of the Solaris operating system.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmax_renewable_life =\fR\fIlifetime\fR\fR
+.ad
+.sp .6
+.RS 4n
+Requests renewable tickets, with a total lifetime of \fIlifetime\fR. The values
+for \fIlifetime\fR follow the format described in the \fB[libdefaults]\fR
+section above. This option is obsolete and is removed in a future release of
+the Solaris operating system.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrcmd_protocol =\fR [ \fBrcmdv1\fR | \fBrcmdv2\fR ]\fR
+.ad
+.sp .6
+.RS 4n
+Specifies which Kerberized "\fBrcmd\fR" protocol to use when using the
+Kerberized \fBrlogin\fR(1), \fBrsh\fR(1), \fBrcp\fR(1), or \fBrdist\fR(1)
+programs. The default is to use \fBrcmdv2\fR by default, as this is the more
+secure and more recent update of the protocol. However, when talking to older
+\fBMIT\fR or \fBSEAM\fR-based "\fBrcmd\fR" servers, it can be necessary to
+force the new clients to use the older \fBrcmdv1\fR protocol. This option is
+valid only for the following applications: \fBrlogin\fR, \fBrcp\fR, \fBrsh\fR,
+and \fBrdist\fR.
+.RE
+
+.sp
+.LP
+The following application defaults can be set to \fBtrue\fR or \fBfalse\fR:
+.sp
+.in +2
+.nf
+kinit
+ forwardable = true
+ proxiable = true
+ renewable = true
+ no_addresses = true
+ max_life = \fIdelta_time\fR
+ max_renewable_life = \fIdelta_time\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+See \fBkinit\fR(1) for the valid time duration formats you can specify for
+\fIdelta_time\fR.
+.sp
+.LP
+In the following example, \fBkinit\fR gets forwardable tickets by default and
+\fBtelnet\fR has three default behaviors specified:
+.sp
+.in +2
+.nf
+[appdefaults]
+ kinit = {
+ forwardable = true
+ }
+
+ telnet = {
+ forward = true
+ encrypt = true
+ autologin = true
+ }
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The application defaults specified here are overridden by those specified in
+the \fB[realms]\fR section.
+.SS "The \fB[realms]\fR Section"
+This section contains subsections for Kerberos realms, where
+\fIrelation-subsection\fR is the name of a realm. Each subsection contains
+relations that define the properties for that particular realm. The following
+relations can be specified in each \fB[realms]\fR subsection:
+.sp
+.ne 2
+.na
+\fB\fBadmin_server\fR\fR
+.ad
+.sp .6
+.RS 4n
+Identifies the host where the Kerberos administration daemon (\fBkadmind\fR) is
+running. Typically, this is the master \fBKDC\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIapplication defaults\fR\fR
+.ad
+.sp .6
+.RS 4n
+Application defaults that are specific to a particular realm can be specified
+within a \fB[realms]\fR subsection. Realm-specific application defaults
+override the global defaults specified in the \fB[appdefaults]\fR section.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBauth_to_local_realm\fR\fR
+.ad
+.sp .6
+.RS 4n
+For use in the default realm, non-default realms can be equated with the
+default realm for authenticated name-to-local name mapping.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBauth_to_local_names\fR\fR
+.ad
+.sp .6
+.RS 4n
+This subsection allows you to set explicit mappings from principal names to
+local user names. The tag is the mapping name and the value is the
+corresponding local user name.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBauth_to_local\fR\fR
+.ad
+.sp .6
+.RS 4n
+This tag allows you to set a general rule for mapping principal names to local
+user names. It is used if there is not an explicit mapping for the principal
+name that is being translated. The possible values are:
+.sp
+.in +2
+.nf
+RULE:[<ncomps>:<format>](<regex>)s/<regex>/<text>/
+.fi
+.in -2
+
+Each rule has three parts:
+.sp
+.ne 2
+.na
+\fBFirst part\(emFormulate the string on which to perform operations:\fR
+.ad
+.sp .6
+.RS 4n
+If not present then the string defaults to the fully flattened principal minus
+the realm name. Otherwise the syntax is as follows:
+.sp
+.in +2
+.nf
+"[" \fI<ncomps>\fR ":" \fI<format>\fR "]"
+.fi
+.in -2
+
+Where:
+.sp
+\fI<ncomps>\fR is the number of expected components for this rule. If the
+particular principal does not have this number of components, then this rule
+does not apply.
+.sp
+\fI<format>\fR is a string of \fI<component>\fR or verbatim characters to be
+inserted.
+.sp
+\fI<component>\fR is of the form "\fB$\fR"\fI<number>\fR to select the
+\fI<number>\fRth component. \fI<number>\fR begins from 1.
+.RE
+
+.sp
+.ne 2
+.na
+\fBSecond part\(emselect rule validity:\fR
+.ad
+.sp .6
+.RS 4n
+If not present, this rule can apply to all selections. Otherwise the syntax is
+as follows:
+.sp
+.in +2
+.nf
+"(" \fI<regex>\fR ")"
+.fi
+.in -2
+
+Where:
+.sp
+\fI<regex>\fR is a selector regular expression. If this regular expression
+matches the whole pattern generated from the first part, then this rule still
+applies.
+.RE
+
+.sp
+.ne 2
+.na
+\fBThird part\(emTransform rule:\fR
+.ad
+.sp .6
+.RS 4n
+If not present, then the selection string is passed verbatim and is matched.
+Otherwise, the syntax is as follows:
+.sp
+.in +2
+.nf
+\fI<rule>\fR ...
+.fi
+.in -2
+
+Where:
+.sp
+\fI<rule>\fR is of the form:
+.sp
+.in +2
+.nf
+"s/" <regex> "/" <text> "/" ["g"]
+.fi
+.in -2
+
+Regular expressions are defined in \fBregex\fR(7).
+.sp
+For example:
+.sp
+auth_to_local = RULE:[1:$1@$0](.*@.*EXAMPLE\.COM)s/@.*//
+.sp
+The preceding maps \fB\fIusername\fR@EXAMPLE.COM\fR and all sub-realms of
+\fBEXAMPLE.COM\fR to \fIusername\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBDEFAULT\fR
+.ad
+.sp .6
+.RS 4n
+The principal name is used as the local name. If the principal has more than
+one component or is not in the default realm, this rule is not applicable and
+the conversion fails.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdatabase_module\fR\fR
+.ad
+.sp .6
+.RS 4n
+Selects the \fBdbmodule\fR section entry to use to access the Kerberos
+database.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBextra_addresses\fR...\fR
+.ad
+.sp .6
+.RS 4n
+This allows a computer to use multiple local addresses, to allow Kerberos to
+work in a network that uses NATs. The addresses should be in a comma-separated
+list.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBkdc\fR\fR
+.ad
+.sp .6
+.RS 4n
+The name of a host running a \fBKDC\fR for that realm. An optional port number
+(separated from the hostname by a colon) can be included.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBkpasswd_server\fR\fR
+.ad
+.sp .6
+.RS 4n
+Identifies the host where the Kerberos password-changing server is running.
+Typically, this is the same as host indicated in the \fBadmin_server\fR. If
+this parameter is omitted, the host in \fBadmin_server\fR is used. You can also
+specify a port number if the server indicated by \fBkpasswd_server\fR runs on a
+port other than 464 (the default). The format of this parameter is:
+\fIhostname\fR[:\fIport\fR].
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBkpasswd_protocol\fR\fR
+.ad
+.sp .6
+.RS 4n
+Identifies the protocol to be used when communicating with the server indicated
+by \fBkpasswd_server\fR. By default, this parameter is defined to be
+\fBRPCSEC_GSS\fR, which is the protocol used by Solaris-based administration
+servers. To be able to change a principal's password stored on non-Solaris
+Kerberos server, such as Microsoft Active Directory or \fBMIT\fR Kerberos, this
+value should be \fBSET_CHANGE\fR. This indicates that a non-RPC- based protocol
+is used to communicate the password change request to the server in the
+\fBkpasswd_server\fR entry.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBudp_preference_limit\fR\fR
+.ad
+.sp .6
+.RS 4n
+When sending a message to the KDC, the library tries using TCP before UDP if
+the size of the message is above \fBudp_preference_limit\fR. If the message is
+smaller than \fBudp_preference_limit\fR, then UDP is tried before TCP.
+Regardless of the size, both protocols are tried if the first attempt fails.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBverify_ap_req_nofail\fR [\fBtrue\fR | \fBfalse\fR]\fR
+.ad
+.sp .6
+.RS 4n
+If \fBtrue\fR, the local keytab file (\fB/etc/krb5/krb5.keytab\fR) must contain
+an entry for the local \fBhost\fR principal, for example,
+\fBhost/foo.example.net@EXAMPLE.COM\fR. This entry is needed to verify that the
+\fBTGT\fR requested was issued by the same \fBKDC\fR that issued the key for
+the host principal. If undefined, the behavior is as if this option were set to
+\fBtrue\fR. Setting this value to \fBfalse\fR leaves the system vulnerable to
+\fBDNS\fR spoofing attacks. This parameter might be in the \fB[realms]\fR
+section to set it on a per-realm basis, or it might be in the
+\fB[libdefaults]\fR section to make it a network-wide setting for all realms.
+.RE
+
+.sp
+.LP
+The parameters "\fBforwardable\fR", "\fBproxiable\fR", and
+"\fBrenew_lifetime\fR" as described in the \fB[libdefaults]\fR section (see
+above) are also valid in the \fB[realms]\fR section.
+.sp
+.LP
+Notice that \fBkpasswd_server\fR and \fBkpasswd_protocol\fR are realm-specific
+parameters. Most often, you need to specify them only when using a
+non-Solaris-based Kerberos server. Otherwise, the change request is sent over
+\fBRPCSEC_GSS\fR to the Solaris Kerberos administration server.
+.SS "The \fB[domain_realm]\fR Section"
+This section provides a translation from a domain name or hostname to a
+Kerberos realm name. The \fIrelation\fR can be a host name, or a domain name,
+where domain names are indicated by a period (`\fB\&.\fR') prefix.
+\fIrelation-value\fR is the Kerberos realm name for that particular host or
+domain. Host names and domain names should be in lower case.
+.sp
+.LP
+If no translation entry applies, the host's realm is considered to be the
+hostname's domain portion converted to upper case. For example, the following
+\fB[domain_realm]\fR section maps \fBcrash.mit.edu\fR into the
+\fBTEST.ATHENA.MIT.EDU\fR realm:
+.sp
+.in +2
+.nf
+[domain_realm]
+ .mit.edu = ATHENA.MIT.EDU
+ mit.edu = ATHENA.MIT.EDU
+ crash.mit.edu = TEST.ATHENA.MIT.EDU
+ .example.org = EXAMPLE.ORG
+ example.org = EXAMPLE.ORG
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+All other hosts in the \fBmit.edu\fR domain maps by default to the
+\fBATHENA.MIT.EDU\fR realm, and all hosts in the \fBexample.org\fR domain maps by
+default into the \fBEXAMPLE.ORG\fR realm. The entries for the hosts \fBmit.edu\fR
+and \fBexample.org\fR. Without these entries, these hosts would be mapped into
+the Kerberos realms \fBEDU\fR and \fBORG\fR, respectively.
+.SS "The \fB[logging]\fR Section"
+This section indicates how Kerberos programs are to perform logging. There are
+two types of relations for this section: relations to specify how to log and a
+relation to specify how to rotate \fBkdc\fR log files.
+.sp
+.LP
+The following relations can be defined to specify how to log. The same relation
+can be repeated if you want to assign it multiple logging methods.
+.sp
+.ne 2
+.na
+\fB\fBadmin_server\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies how to log the Kerberos administration daemon (\fBkadmind\fR). The
+default is \fBFILE:/var/krb5/kadmin.log.\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdefault\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies how to perform logging in the absence of explicit specifications
+otherwise.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBkdc\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies how the \fBKDC\fR is to perform its logging. The default is
+\fBFILE:/var/krb5/kdc.log\fR.
+.RE
+
+.sp
+.LP
+The \fBadmin_server\fR, \fBdefault\fR, and \fBkdc\fR relations can have the
+following values:
+.sp
+.ne 2
+.na
+\fB\fBFILE:\fR\fIfilename\fR\fR
+.ad
+.br
+.na
+\fB\fBFILE=\fR\fIfilename\fR\fR
+.ad
+.sp .6
+.RS 4n
+This value causes the entity's logging messages to go to the specified file. If
+the `=' form is used, the file is overwritten. If the `:' form is used, the
+file is appended to.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSTDERR\fR\fR
+.ad
+.sp .6
+.RS 4n
+This value causes the entity's logging messages to go to its standard error
+stream.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBCONSOLE\fR\fR
+.ad
+.sp .6
+.RS 4n
+This value causes the entity's logging messages to go to the console, if the
+system supports it.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBDEVICE=\fR\fIdevicename\fR\fR
+.ad
+.sp .6
+.RS 4n
+This causes the entity's logging messages to go to the specified device.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSYSLOG[:\fR\fIseverity\fR\fB[:\fR\fIfacility\fR\fB]]\fR\fR
+.ad
+.sp .6
+.RS 4n
+This causes the entity's logging messages to go to the system log.
+.RE
+
+.sp
+.LP
+The \fIseverity\fR argument specifies the default severity of system log
+messages. This can be any of the following severities supported by the
+\fBsyslog\fR(3C) call, minus the \fBLOG_\fR prefix: \fBLOG_EMERG\fR,
+\fBLOG_ALERT\fR, \fBLOG_CRIT\fR, \fBLOG_ERR\fR, \fBLOG_WARNING\fR,
+\fBLOG_NOTICE\fR, \fBLOG_INFO\fR, and \fBLOG_DEBUG\fR. For example, a value of
+\fBCRIT\fR would specify \fBLOG_CRIT\fR severity.
+.sp
+.LP
+The \fIfacility\fR argument specifies the facility under which the messages are
+logged. This can be any of the following facilities supported by the
+\fBsyslog\fR(3C) call minus the \fBLOG_\fR prefix: \fBLOG_KERN\fR,
+\fBLOG_USER\fR, \fBLOG_MAIL\fR, \fBLOG_DAEMON\fR, \fBLOG_AUTH\fR,
+\fBLOG_LPR\fR, \fBLOG_NEWS\fR, \fBLOG_UUCP\fR, \fBLOG_CRON\fR, and
+\fBLOG_LOCAL0\fR through \fBLOG_LOCAL7\fR.
+.sp
+.LP
+If no severity is specified, the default is \fBERR\fR. If no facility is
+specified, the default is \fBAUTH\fR.
+.sp
+.LP
+The following relation can be defined to specify how to rotate \fBkdc\fR log
+files if the \fBFILE:\fR value is being used to log:
+.sp
+.ne 2
+.na
+\fB\fBkdc_rotate\fR\fR
+.ad
+.sp .6
+.RS 4n
+A relation subsection that enables \fBkdc\fR logging to be rotated to multiple
+files based on a time interval. This can be used to avoid logging to one file,
+which might grow too large and bring the \fBKDC\fR to a halt.
+.RE
+
+.sp
+.LP
+The time interval for the rotation is specified by the \fBperiod\fR relation.
+The number of log files to be rotated is specified by the \fBversions\fR
+relation. Both the \fBperiod\fR and \fBversions\fR (described below) should be
+included in this subsection. And, this subsection applies only if the \fBkdc\fR
+relation has a \fBFILE:\fR value.
+.sp
+.LP
+The following relations can be specified for the \fBkdc_rotate\fR relation
+subsection:
+.sp
+.ne 2
+.na
+\fB\fB\fR\fBperiod=\fIdelta_time\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the time interval before a new log file is created. See the
+\fBTime\fR\fBFormats\fR section in \fBkinit\fR(1) for the valid time duration
+formats you can specify for \fIdelta_time\fR. If \fBperiod\fR is not specified
+or set to \fBnever\fR, no rotation occurs.
+.RE
+
+.sp
+.LP
+Specifying a time interval does not mean that the log files are rotated at the
+time interval based on real time. This is because the time interval is checked
+at each attempt to write a record to the log, or when logging is actually
+occurring. Therefore, rotation occurs only when logging has actually occurred
+for the specified time interval.
+.sp
+.ne 2
+.na
+\fB\fBversions=\fR\fInumber\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies how many previous versions are saved before the rotation begins. A
+number is appended to the log file, starting with 0 and ending with
+(\fInumber\fR - 1). For example, if \fBversions\fR is set to \fB2\fR, up to
+three logging files are created (\fIfilename\fR, \fIfilename\fR.0, and
+\fIfilename\fR.1) before the first one is overwritten to begin the rotation.
+.RE
+
+.sp
+.LP
+Notice that if \fBversions\fR is not specified or set to \fB0\fR, only one log
+file is created, but it is overwritten whenever the time interval is met.
+.sp
+.LP
+In the following example, the logging messages from the Kerberos administration
+daemon goes to the console. The logging messages from the \fBKDC\fR is appended
+to the \fB/var/krb5/kdc.log\fR, which is rotated between twenty-one log files
+with a specified time interval of a day.
+.sp
+.in +2
+.nf
+[logging]
+ admin_server = CONSOLE
+ kdc = FILE:/export/logging/kadmin.log
+ kdc_rotate = {
+ period = 1d
+ versions = 20
+ }
+.fi
+.in -2
+.sp
+
+.SS "The \fB[capaths]\fR Section"
+In order to perform direct (non-hierarchical) cross-realm authentication, a
+database is needed to construct the authentication paths between the realms.
+This section defines that database.
+.sp
+.LP
+A client uses this section to find the authentication path between its realm
+and the realm of the server. The server uses this section to verify the
+authentication path used by the client, by checking the transited field of the
+received ticket.
+.sp
+.LP
+There is a subsection for each participating realm, and each subsection has
+relations named for each of the realms. The \fIrelation-value\fR is an
+intermediate realm which can participate in the cross-realm authentication. The
+relations can be repeated if there is more than one intermediate realm. A value
+of '.' means that the two realms share keys directly, and no intermediate
+realms should be allowed to participate.
+.sp
+.LP
+There are n**2 possible entries in this table, but only those entries which is
+needed on the client or the server need to be present. The client needs a
+subsection named for its local realm, with relations named for all the realms
+of servers it needs to authenticate with. A server needs a subsection named for
+each realm of the clients it serves.
+.sp
+.LP
+For example, \fBANL.GOV\fR, \fBPNL.GOV\fR, and \fBNERSC.GOV\fR all wish to use
+the \fBES.NET\fR realm as an intermediate realm. \fBANL\fR has a sub realm of
+\fBTEST.ANL.GOV\fR, which authenticates with \fBNERSC.GOV\fR but not
+\fBPNL.GOV\fR. The \fB[capath]\fR section for \fBANL.GOV\fR systems would look
+like this:
+.sp
+.in +2
+.nf
+[capaths]
+ ANL.GOV = {
+ TEST.ANL.GOV = .
+ PNL.GOV = ES.NET
+ NERSC.GOV = ES.NET
+ ES.NET = .
+ }
+
+ TEST.ANL.GOV = {
+ ANL.GOV = .
+ }
+
+ PNL.GOV = {
+ ANL.GOV = ES.NET
+ }
+
+ NERSC.GOV = {
+ ANL.GOV = ES.NET
+ }
+
+ ES.NET = {
+ ANL.GOV = .
+ }
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The \fB[capath]\fR section of the configuration file used on \fBNERSC.GOV\fR
+systems would look like this:
+.sp
+.in +2
+.nf
+[capaths]
+ NERSC.GOV = {
+ ANL.GOV = ES.NET
+ TEST.ANL.GOV = ES.NET
+ TEST.ANL.GOV = ANL.GOV
+ PNL.GOV = ES.NET
+ ES.NET = .
+ }
+
+ ANL.GOV = {
+ NERSC.GOV = ES.NET
+ }
+
+ PNL.GOV = {
+ NERSC.GOV = ES.NET
+ }
+
+ ES.NET = {
+ NERSC.GOV = .
+ }
+
+ TEST.ANL.GOV = {
+ NERSC.GOV = ANL.GOV
+ NERSC.GOV = ES.NET
+ }
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+In the above examples, the ordering is not important, except when the same
+relation is used more than once. The client uses this to determine the path.
+(It is not important to the server, since the transited field is not sorted.)
+.SS "PKINIT-specific Options"
+The following are \fBpkinit-specific\fR options. These values can be specified
+in \fB[libdefaults]\fR as global defaults, or within a realm-specific
+subsection of \fB[libdefaults]\fR, or can be specified as realm-specific values
+in the \fB[realms]\fR section. A realm-specific value overrides, does not add
+to, a generic \fB[libdefaults]\fR specification.
+.sp
+.LP
+The search order is:
+.RS +4
+.TP
+1.
+realm-specific subsection of \fB[libdefaults]\fR
+.sp
+.in +2
+.nf
+ [libdefaults]
+ EXAMPLE.COM = {
+ pkinit_anchors = FILE:/usr/local/example.com.crt
+.fi
+.in -2
+
+.RE
+.RS +4
+.TP
+2.
+realm-specific value in the \fB[realms]\fR section
+.sp
+.in +2
+.nf
+ [realms]
+ OTHERREALM.ORG = {
+ pkinit_anchors = FILE:/usr/local/otherrealm.org.crt
+.fi
+.in -2
+
+.RE
+.RS +4
+.TP
+3.
+generic value in the \fB[libdefaults]\fR section
+.sp
+.in +2
+.nf
+ [libdefaults]
+ pkinit_anchors = DIR:/usr/local/generic_trusted_cas/
+.fi
+.in -2
+
+.RE
+.sp
+.LP
+The syntax for specifying Public Key identity, trust, and revocation
+information for \fBpkinit\fR is as follows:
+.sp
+.ne 2
+.na
+\fB\fBpkinit_identities\fR \fB=\fR \fIURI\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the location(s) to be used to find the user's X.509 identity
+information. This option can be specified multiple times. Each value is
+attempted in order until identity information is found and authentication is
+attempted. These values are not used if the user specifies
+\fBX509_user_identity\fR on the command line.
+.sp
+Valid \fIURI\fR types are \fBFILE\fR, \fBDIR\fR, \fBPKCS11\fR, \fBPKCS12\fR,
+and \fBENV\fR. See the \fBPKINIT URI Types\fR section for more details.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpkinit_anchors\fR \fB=\fR \fIURI\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the location of trusted anchor (root) certificates which the client
+trusts to sign KDC certificates. This option can be specified multiple times.
+These values from the \fBconfig\fR file are not used if the user specifies
+\fBX509_anchors\fR on the command line.
+.sp
+Valid \fIURI\fR types are \fBFILE\fR and \fBDIR\fR. See the \fBPKINIT URI
+Types\fR section for more details.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpkinit_pool\fR \fB=\fR \fIURI\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the location of intermediate certificates which can be used by the
+client to complete the trust chain between a KDC certificate and a trusted
+anchor. This option can be specified multiple times.
+.sp
+Valid \fIURI\fR types are \fBFILE\fR and \fBDIR\fR. See the \fBPKINIT URI
+Types\fR section for more details.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpkinit_revoke\fR \fB=\fR \fIURI\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the location of Certificate Revocation List (CRL) information to be
+used by the client when verifying the validity of the KDC certificate
+presented. This option can be specified multiple times.
+.sp
+The only valid \fIURI\fR type is \fBDIR\fR. See the \fBPKINIT URI Types\fR
+section for more details.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpkinit_require_crl_checking\fR \fB=\fR \fIvalue\fR\fR
+.ad
+.sp .6
+.RS 4n
+The default certificate verification process always checks the available
+revocation information to see if a certificate has been revoked. If a match is
+found for the certificate in a CRL, verification fails. If the certificate
+being verified is not listed in a CRL, or there is no CRL present for its
+issuing CA, and \fBpkinit_require_crl_checking\fR is \fBfalse\fR, then
+verification succeeds. However, if \fBpkinit_require_crl_checking\fR is
+\fBtrue\fR and there is no CRL information available for the issuing CA, then
+verification fails. \fBpkinit_require_crl_checking\fR should be set to
+\fBtrue\fR if the policy is such that up-to-date CRLs must be present for every
+CA.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpkinit_dh_min_bits\fR \fB=\fR \fIvalue\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the size of the Diffie-Hellman key the client attempts to use. The
+acceptable values are currently 1024, 2048, and 4096. The default is 2048.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpkinit_win2k\fR \fB=\fR \fIvalue\fR\fR
+.ad
+.sp .6
+.RS 4n
+This flag specifies whether the target realm is assumed to support only the
+old, pre-RFC version of the protocol. The default is \fBfalse\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpkinit_win2k_require_binding\fR \fB=\fR \fIvalue\fR\fR
+.ad
+.sp .6
+.RS 4n
+If this flag is set to \fBtrue\fR, it expects that the target KDC is patched to
+return a reply with a checksum rather than a nonce. The default is \fBfalse\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpkinit_eku_checking\fR \fB=\fR \fIvalue\fR\fR
+.ad
+.sp .6
+.RS 4n
+This option specifies what Extended Key Usage value the KDC certificate
+presented to the client must contain. If the KDC certificate has the \fBpkinit
+SubjectAlternativeName\fR encoded as the Kerberos TGS name, EKU checking is not
+necessary since the issuing CA has certified this as a KDC certificate. The
+values recognized in the \fBkrb5.conf\fR file are:
+.sp
+.ne 2
+.na
+\fB\fBkpKDC\fR\fR
+.ad
+.RS 16n
+This is the default value and specifies that the KDC must have the
+\fBid-pkinit-KPKdc EKU\fR as defined in RFC4556.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBkpServerAuth\fR\fR
+.ad
+.RS 16n
+If \fBkpServerAuth\fR is specified, a KDC certificate with the
+\fBid-kp-serverAuth EKU\fR as used by Microsoft is accepted.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnone\fR\fR
+.ad
+.RS 16n
+If \fBnone\fR is specified, then the KDC certificate is not checked to verify
+it has an acceptable EKU. The use of this option is not recommended.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpkinit_kdc_hostname\fR \fB=\fR \fIvalue\fR\fR
+.ad
+.sp .6
+.RS 4n
+The presence of this option indicates that the client is willing to accept a
+KDC certificate with a \fBdNSName\fR SAN (Subject Alternative Name) rather than
+requiring the \fBid-pkinit-san\fR as defined in RFC4556. This option can be
+specified multiple times. Its value should contain the acceptable hostname for
+the KDC (as contained in its certificate).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpkinit_cert_match\fR \fB=\fR \fIrule\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies matching rules that the client certificate must match before it is
+used to attempt \fBpkinit\fR authentication. If a user has multiple
+certificates available (on a smart card, or by way of another media), there
+must be exactly one certificate chosen before attempting \fBpkinit\fR
+authentication. This option can be specified multiple times. All the
+available certificates are checked against each rule in order until there is a
+match of exactly one certificate.
+.sp
+The Subject and Issuer comparison strings are the RFC2253 string
+representations from the certificate Subject DN and Issuer DN values.
+.sp
+The syntax of the matching rules is:
+.sp
+.in +2
+.nf
+[relation-operator]component-rule `...'
+.fi
+.in -2
+
+where
+.sp
+.ne 2
+.na
+\fB\fIrelation-operator\fR\fR
+.ad
+.RS 21n
+Specify \fIrelation-operator\fR as \fB&&\fR, meaning all component rules must
+match, or \fB||\fR, meaning only one component rule must match. If
+\fIrelation-operator\fR is not specified, the default is \fB&&\fR\&.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIcomponent-rule\fR\fR
+.ad
+.RS 21n
+There is no punctuation or white space between component rules.Specify
+\fIcomponent-rule\fR as one of the following:
+.sp
+.in +2
+.nf
+`<SUBJECT>'regular-expression
+
+`<ISSUER>'regular-expression
+
+`<SAN>'regular-expression
+
+`<EKU>'extended-key-usage-list
+ where extended-key-usage-list is a comma-separated list
+ of required Extended Key Usage values. All values in
+ the list must be present in the certificate.
+ `pkinit'
+ `msScLogin'
+ `clientAuth'
+ `emailProtection'
+`<KU>'key-usage-list
+ where key-usage-list is a comma-separated list of
+ required Key Usage values. All values in the list must
+ be present in the certificate.
+ `digitalSignature'
+.fi
+.in -2
+
+.RE
+
+Examples:
+.sp
+.in +2
+.nf
+pkinit_cert_match = ||<SUBJECT>.*DoE.*<SAN>.*@EXAMPLE.COM
+pkinit_cert_match = &&<EKU>msScLogin,clientAuth<ISSUER>.*DoE.*
+pkinit_cert_match = <EKU>msScLogin,clientAuth<KU>digitalSignature
+.fi
+.in -2
+
+.RE
+
+.SS "PKINIT URI Types"
+.ne 2
+.na
+\fB\fBFILE:\fR\fIfile-name[,key-file-name]\fR\fR
+.ad
+.sp .6
+.RS 4n
+This option has context-specific behavior.
+.sp
+.ne 2
+.na
+\fB\fBpkinit_identities\fR\fR
+.ad
+.RS 21n
+\fIfile-name\fR specifies the name of a PEM-format file containing the user's
+certificate. If \fIkey-file-name\fR is not specified, the user's private key
+is expected to be in \fIfile-name\fR as well. Otherwise, \fIkey-file-name\fR
+is the name of the file containing the private key.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpkinit_anchors\fR\fR
+.ad
+.br
+.na
+\fB\fBpkinit_pool\fR\fR
+.ad
+.RS 21n
+\fIfile-name\fR is assumed to be the name of an \fBOpenSSL-style ca-bundle\fR
+file. The \fBca-bundle\fR file should be base-64 encoded.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBDIR:\fR\fIdirectory-name\fR\fR
+.ad
+.sp .6
+.RS 4n
+This option has context-specific behavior.
+.sp
+.ne 2
+.na
+\fB\fBpkinit_identities\fR\fR
+.ad
+.RS 21n
+\fIdirectory-name\fR specifies a directory with files named \fB*.crt\fR and
+\fB*.key\fR, where the first part of the file name is the same for matching
+pairs of certificate and private key files. When a file with a name ending with
+\&.\fBcrt\fR is found, a matching file ending with \fB\&.key\fR is assumed to
+contain the private key. If no such file is found, then the certificate in the
+\fB\&.crt\fR is not used.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpkinit_anchors\fR\fR
+.ad
+.br
+.na
+\fB\fBpkinit_pool\fR\fR
+.ad
+.RS 21n
+\fIdirectory-name\fR is assumed to be an OpenSSL-style hashed CA directory
+where each CA cert is stored in a file named \fBhash-of-ca-cert\fR.\fI#\fR.
+This infrastructure is encouraged, but all files in the directory are examined
+and if they contain certificates (in PEM format), they are used.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPKCS12:\fR\fIpkcs12-file-name\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fIpkcs12-file-name\fR is the name of a \fBPKCS #12\fR format file, containing
+the user's certificate and private key.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPKCS11:[slotid=\fR\fIslot-id\fR\fB][:token=\fR\fItoken-label\fR\fB][:cert
+id=\fR\fIcert-id\fR\fB][:certlabel=\fR\fIcert-label\fR\fB]\fR\fR
+.ad
+.sp .6
+.RS 4n
+All keyword/values are optional. PKCS11 modules (for example,
+\fBopensc-pkcs11.so\fR) must be installed as a \fBcrypto\fR provider under
+\fBlibpkcs11\fR(3LIB). \fBslotid=\fR and/or \fBtoken=\fR can be specified to
+force the use of a particular smart card reader or token if there is more than
+one available. \fBcertid=\fR and/or \fBcertlabel=\fR can be specified to force
+the selection of a particular certificate on the device. See the
+\fBpkinit_cert_match\fR configuration option for more ways to select a
+particular certificate to use for \fBpkinit\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBENV:\fR\fIenvironment-variable-name\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fIenvironment-variable-name\fR specifies the name of an environment variable
+which has been set to a value conforming to one of the previous values. For
+example, \fBENV:X509_PROXY\fR, where environment variable \fBX509_PROXY\fR has
+been set to \fBFILE:/tmp/my_proxy.pem\fR.
+.RE
+
+.SS "The \fB[dbmodules]\fR Section"
+This section consists of relations that provide configuration information for
+plug-in modules. In particular, the relations describe the configuration for
+LDAP KDB plug-in. Use of the \fBdb2\fR KDB plug-in is the default behavior and
+that this section does not need to be filled out in that case.
+.sp
+.ne 2
+.na
+\fB\fBdb_library\fR\fR
+.ad
+.sp .6
+.RS 4n
+Name of the plug-in library. To use the LDAP KDB plug-in the name must be
+\fBkdb_ldap\fR. The default value is \fBdb2\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdb_module_dir\fR\fR
+.ad
+.sp .6
+.RS 4n
+Path to the plug-in libraries. The default is \fB/usr/lib/krb5\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBldap_cert_path\fR\fR
+.ad
+.sp .6
+.RS 4n
+Path to the Network Security Services (NSS) trusted database for an SSL
+connection. This is a required parameter when using the LDAP KDB plug-in.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBldap_conns_per_server\fR\fR
+.ad
+.sp .6
+.RS 4n
+Number of connections per LDAP instance. The default is \fB5\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBldap_kadmind_dn\fR\fR
+.ad
+.sp .6
+.RS 4n
+Bind DN for \fBkadmind\fR. This specifies the DN that the \fBkadmind\fR service
+uses when binding to the LDAP Directory Server. The password for this bind DN
+should be in the \fBldap_service_password_file\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBldap_kdc_dn\fR\fR
+.ad
+.sp .6
+.RS 4n
+Bind DN for a Key Distribution Center (KDC). This specifies the DN that the
+\fBkrb5kdc\fR service use when binding to the LDAP Directory Server. The
+password for this bind DN should be in the \fBldap_service_password_file\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBldap_servers\fR\fR
+.ad
+.sp .6
+.RS 4n
+List of LDAP directory servers in URI format. Use of either of the following is
+acceptable.
+.sp
+.in +2
+.nf
+ldap://\fI<ds hostname>\fR:\fI<SSL port>\fR
+ldap://\fI<ds hostname>\fR
+.fi
+.in -2
+.sp
+
+Each server URI should be separated by whitespace.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBldap_service_password_file\fR\fR
+.ad
+.sp .6
+.RS 4n
+File containing stashed passwords used by the KDC when binding to the LDAP
+Directory Server. The default is \fB/var/krb5/service_passwd\fR. This file is
+created using \fBkdb5_ldap_util\fR(8).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBldap_ssl_port\fR\fR
+.ad
+.sp .6
+.RS 4n
+Port number for SSL connection with directory server. The default is \fB389\fR.
+.RE
+
+.SH EXAMPLES
+\fBExample 1 \fRSample File
+.sp
+.LP
+The following is an example of a generic \fBkrb5.conf\fR file:
+
+.sp
+.in +2
+.nf
+[libdefaults]
+ default_realm = ATHENA.MIT.EDU
+ default_tkt_enctypes = des-cbc-crc
+ default_tgs_enctypes = des-cbc-crc
+
+[realms]
+ ATHENA.MIT.EDU = {
+ kdc = kerberos.mit.edu
+ kdc = kerberos-1.mit.edu
+ kdc = kerberos-2.mit.edu
+ admin_server = kerberos.mit.edu
+ auth_to_local_realm = KRBDEV.ATHENA.MIT.EDU
+ }
+
+ EXAMPLE.ORG = {
+ kdc = kerberos.example.org
+ kdc = kerberos-1.example.org
+ admin_server = kerberos.example.org
+ }
+
+[domain_realm]
+ .mit.edu = ATHENA.MIT.EDU
+ mit.edu = ATHENA.MIT.EDU
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRKDC Using the LDAP KDB plug-in, \fBrealms\fR and
+\fBdbmodules\fR Sections
+.sp
+.LP
+The following is an example of the \fBrealms\fR and \fBdbmodules\fR sections of
+a Kerberos configuration file when the KDC is using the LDAP KDB plug-in.
+
+.sp
+.in +2
+.nf
+[realms]
+ EXAMPLE.COM = {
+ kdc = kc-umpk-01.athena.mit.edu
+ kdc = kc-umpk-02.athena.mit.edu
+ admin_server = kc-umpk-01.athena.mit.edu
+ database_module = LDAP
+ }
+
+[dbmodules]
+ LDAP = {
+ db_library = kdb_ldap
+ ldap_kerberos_container_dn = "cn=krbcontainer,dc=mit,dc=edu"
+ ldap_kdc_dn = "cn=kdc service,ou=profile,dc=mit,dc=edu"
+ ldap_kadmind_dn = "cn=kadmin service,ou=profile,dc=mit,dc=edu"
+ ldap_cert_path = /var/ldap
+ ldap_servers = ldaps://ds.mit.edu
+ }
+.fi
+.in -2
+.sp
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/var/krb5/kdc.log\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBKDC\fR logging file
+.RE
+
+.SH ATTRIBUTES
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability See below.
+.TE
+
+.sp
+.LP
+All of the keywords are Committed, except for the \fBPKINIT\fR keywords, which
+are Volatile.
+.SH SEE ALSO
+.BR kinit (1),
+.BR rcp (1),
+.BR rdist (1),
+.BR rlogin (1),
+.BR rsh (1),
+.BR telnet (1),
+.BR syslog (3C),
+.BR attributes (7),
+.BR kerberos (7),
+.BR regex (7)
+.SH NOTES
+If the \fBkrb5.conf\fR file is not formatted properly, the \fBtelnet\fR command
+fails. However, the \fBdtlogin\fR and \fBlogin\fR commands still succeed, even
+if the \fBkrb5.conf\fR file is specified as required for the commands. If this
+occurs, the following error message is displayed:
+.sp
+.in +2
+.nf
+Error initializing krb5: Improper format of \fIitem\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+To bypass any other problems that might occur, you should fix the file as soon
+as possible.
+.sp
+.LP
+The \fBmax_life\fR and \fBmax_renewable_life\fR options are obsolete and is
+removed in a future release of the Solaris operating system.
diff --git a/usr/src/man/man5/krb5_auth_rules.5 b/usr/src/man/man5/krb5_auth_rules.5
deleted file mode 100644
index fcb964a64d..0000000000
--- a/usr/src/man/man5/krb5_auth_rules.5
+++ /dev/null
@@ -1,121 +0,0 @@
-'\" te
-.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH KRB5_AUTH_RULES 5 "November 22, 2021"
-.SH NAME
-krb5_auth_rules \- overview of Kerberos V5 authorization
-.SH DESCRIPTION
-When kerberized versions of the \fBftp\fR, \fBrdist\fR, \fBrcp\fR,
-\fBrlogin\fR, \fBrsh\fR, \fBtelnet\fR, or \fBssh\fR clients are used to connect
-to a server, the identity of the originating user must be authenticated to the
-Kerberos V5 authentication system. Account access can then be authorized if
-appropriate entries exist in the \fB~/.k5login\fR file, the \fBgsscred\fR
-table, or if the default GSS/Kerberos authentication rules successfully map the
-Kerberos principal name to Unix login name.
-.sp
-.LP
-To avoid security problems, the \fB~/.k5login\fR file must be owned by the
-remote user on the server the client is attempting to access. The file should
-contain a private authorization list comprised of Kerberos principal names of
-the form \fIprincipal/instance\fR@\fIrealm\fR. The \fI/instance\fR variable is
-optional in Kerberos principal names. For example, different principal names
-such as \fBjdb@ENG.EXAMPLE.COM\fR and \fBjdb/happy.eng.example.com@ENG.EXAMPLE.COM\fR
-would each be legal, though not equivalent, Kerberos principals. The client is
-granted access if the \fB~/.k5login\fR file is located in the login directory
-of the remote user account and if the originating user can be authenticated to
-one of the principals named in the file. See \fBkadm5.acl\fR(4) for more
-information on Kerberos principal names.
-.sp
-.LP
-When no \fB~/.k5login\fR file is found in the remote user's login account, the
-Kerberos V5 principal name associated with the originating user is checked
-against the \fBgsscred\fR table. If a \fBgsscred\fR table exists and the
-principal name is matched in the table, access is granted if the Unix user ID
-listed in the table corresponds to the user account the client is attempting to
-access. If the Unix user ID does not match, access is denied. See
-\fBgsscred\fR(1M).
-.sp
-.LP
-For example, an originating user listed in the \fBgsscred\fR table with the
-principal name \fBjdb@ENG.EXAMPLE.COM\fR and the \fBuid\fR \fB23154\fR is granted
-access to the \fBjdb-user\fR account if \fB23154\fR is also the \fBuid\fR of
-\fBjdb-user\fR listed in the user account database. See \fBpasswd\fR(4).
-.sp
-.LP
-Finally, if there is no \fB~/.k5login\fR file and the Kerberos V5 identity of
-the originating user is not in the \fBgsscred\fR table, or if the \fBgsscred\fR
-table does not exist, the client is granted access to the account under the
-following conditions (default GSS/Kerberos auth rules):
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The user part of the authenticated principal name is the same as the Unix
-account name specified by the client.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The realm part of the client and server are the same, unless the
-\fBkrb5.conf\fR(4) \fIauth_to_local_realm\fR parameter is used to create
-equivalence.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The Unix account name exists on the server.
-.RE
-.sp
-.LP
-For example, if the originating user has the principal name
-\fBjdb@ENG.EXAMPLE.COM\fR and if the server is in realm \fBSALES.EXAMPLE.COM\fR, the
-client would be denied access even if \fBjdb\fR is a valid account name on the
-server. This is because the realms \fBSALES.EXAMPLE.COM\fR and \fBENG.EXAMPLE.COM\fR
-differ.
-.sp
-.LP
-The \fBkrb5.conf\fR(4) \fIauth_to_local_realm\fR parameter also affects
-authorization. Non-default realms can be equated with the default realm for
-authenticated \fBname-to-local name\fR mapping.
-.SH FILES
-.ne 2
-.na
-\fB\fB~/.k5login\fR\fR
-.ad
-.RS 15n
-Per user-account authorization file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/passwd\fR\fR
-.ad
-.RS 15n
-System account file. This information may also be in a directory service. See
-\fBpasswd\fR(4).
-.RE
-
-.SH ATTRIBUTES
-See \fBattributes\fR(5) for a description of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-\fBftp\fR(1), \fBrcp\fR(1), \fBrdist\fR(1), \fBrlogin\fR(1), \fBrsh\fR(1),
-\fBtelnet\fR(1), \fBgsscred\fR(1M), \fBkadm5.acl\fR(4),
-\fBkrb5.conf\fR(4), \fBpasswd\fR(4), \fBattributes\fR(5),
-\fBgss_auth_rules\fR(5)
diff --git a/usr/src/man/man5/krb5envvar.5 b/usr/src/man/man5/krb5envvar.5
deleted file mode 100644
index ac1a76a00e..0000000000
--- a/usr/src/man/man5/krb5envvar.5
+++ /dev/null
@@ -1,228 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH KRB5ENVVAR 5 "Feb 13, 2008"
-.SH NAME
-krb5envvar \- Kerberos environment variables
-.SH DESCRIPTION
-.sp
-.LP
-The Kerberos mechanism provides a number of environment variables to configure
-different behavior in order to meet applications' needs. Environment variables
-used within the Kerberos mechanism are:
-.sp
-.ne 2
-.na
-\fB\fBKRB5_KTNAME\fR\fR
-.ad
-.sp .6
-.RS 4n
-Used by the mechanism to specify the location of the key table file. The
-variable can be set to the following value:
-.sp
-.in +2
-.nf
-[[\fI<kt type>\fR:]\fI<file name>\fR]
-.fi
-.in -2
-
-where \fI<kt type>\fR can be \fBFILE\fR or \fBWRFILE\fR. \fBFILE\fR is for read
-operations; \fBWRFILE\fR is for write operations. \fI<file name>\fR is the
-location of the \fBkeytab\fR file.
-.sp
-r
-.sp
-If \fBKRB5_KTNAME\fR is not defined, the default value is:
-.sp
-.in +2
-.nf
-FILE:/etc/krb5/krb5.keytab
-.fi
-.in -2
-
-The \fBkeytab\fR file is used to store credentials persistently and is used
-commonly for service daemons.
-.sp
-Specifying the \fBFILE\fR type assumes that the subsequent operations on the
-associated file are readable by the invoking process. Care must be taken to
-ensure that the file is readable only by the set of principals that need to
-retrieve their unencrypted keys.
-.sp
-The \fBWRFILE\fR type is used by the \fBkadmin\fR(1M) command. Specifying this
-type allows the administrator to designate an alternate \fBkeytab\fR file to
-write to without using extra command line arguments for file location.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBKRB5CCNAME\fR\fR
-.ad
-.sp .6
-.RS 4n
-Used by the mechanism to specify the location of the credential cache. The
-variable can be set to the following value:
-.sp
-.in +2
-.nf
-[[\fI<cc type>\fR:]\fI<file name>\fR]
-.fi
-.in -2
-
-where \fI<cc type>\fR can be \fBFILE\fR or \fBMEMORY\fR. \fI<file name>\fR is
-the location of the principal's credential cache.
-.sp
-If \fBKRB5CCNAME\fR is not defined, the default value is:
-.sp
-.in +2
-.nf
-FILE:/tmp/krb5cc_\fI<uid>\fR
-.fi
-.in -2
-
-where \fI<uid>\fR is the user id of the process that created the cache file.
-.sp
-The credential cache file is used to store tickets that have been granted to
-the principal.
-.sp
-Specifying the \fBFILE\fR types assumes that subsequent operations on the
-associated file are readable and writable by the invoking process. Care must be
-taken to ensure that the file is accessible only by the set of principals that
-need to access their credentials. If the credential file is in a directory to
-which other users have write access, you need to set that directory's sticky
-bit (see \fBchmod\fR(1)).
-.sp
-The \fBMEMORY\fR credential cache type is used only in special cases, such as
-when making a temporary cache for the life of the invoking process.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBKRB5RCNAME\fR\fR
-.ad
-.sp .6
-.RS 4n
-Used by the mechanism to specify the type and location of the replay cache. The
-variable can be set to the following value:
-.sp
-.in +2
-.nf
-[[\fI<rc type>\fR:]\fI<file name>\fR]
-.fi
-.in -2
-
-where \fI<rc type>\fR can be either \fBFILE\fR, \fBMEMORY\fR, or \fBNONE\fR.
-\fI<file name>\fR is relevant only when specifying the replay cache file type.
-.sp
-If not defined, the default value is:
-.sp
-.in +2
-.nf
-FILE:/var/krb5/rcache/root/rc_\fI<service>\fR
-.fi
-.in -2
-
-\&...if the process is owned by root, or:
-.sp
-.in +2
-.nf
-FILE:/var/krb5/rcache/rc_\fI<service>\fR
-.fi
-.in -2
-
-\&...if the process is owned by a user other than root. \fI<service>\fR is the
-service process name associated with the replay cache file.
-.sp
-The replay cache is used by Kerberos to detect the replay of authentication
-data. This prevents people who capture authentication messages on the network
-from authenticating to the server by resending these messages.
-.sp
-When specifying the \fBFILE\fR replay cache type, care must be taken to prevent
-the replay cache file from being deleted by another user. Make sure that every
-directory in the replay cache path is either writable only by the owner of the
-replay cache or that the sticky bit ("\fBt\fR") is set on every directory in
-the replay cache path to which others have write permission.
-.sp
-When specifying the \fBMEMORY\fR replay cache type you need to weigh the
-trade-off of performance against the slight security risk created by using a
-non-persistent cache. The risk occurs during system reboots when the following
-condition obtains:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The duration from the last write to the replay cache before reboot to the point
-when the Kerberized server applications are running is less than the Kerberos
-clockskew (see \fBkrb5.conf\fR(4)).
-.RE
-When specifying the \fBNONE\fR replay cache time you need to understand that
-this disables the replay cache, and all security risks that this presents. This
-includes all the risks outlined in this section of the man page.
-.sp
-Under this condition, the server applications can accept a replay of Kerberos
-authentication data (up to the difference between the time of the last write
-and the clockskew). Typically, this is a small window of time. If the server
-applications take longer than the clockskew to start accepting connections
-there is no replay risk.
-.sp
-The risk described above is the same when using \fBFILE\fR replay cache types
-when the replay cache resides on swap file systems, such as \fB/tmp\fR and
-\fB/var/run\fR.
-.sp
-The performance improvement in \fBMEMORY\fR replay cache types over \fBFILE\fR
-types is derived from the absence of disk I/O. This is true even if the
-\fBFILE\fR replay cache is on a memory-backed file system, such as swap
-(\fB/tmp\fR and \fB/var/run\fR).
-.sp
-Note that \fBMEMORY\fR-type caches are per-process caches, therefore use of
-these types of caches must be carefully considered. One example of where
-\fBMEMORY\fR-type caches can be problematic is when an application uses more
-than one process for establishing security contexts. In such a case, memory
-replay caches are not shared across the processes, thus allowing potential for
-replay attacks.
-.RE
-
-.sp
-.ne 2
-.na
-\fBKRB5_CONFIG\fR
-.ad
-.sp .6
-.RS 4n
-Allows you to change the default location of the \fB/etc/krb5/krb5.conf\fR file
-to enable the Kerberos library code to read configuration parameters from
-another file specified by KRB5_CONFIG. For example (using kinit from
-\fBksh\fR(1)):
-.sp
-.in +2
-.nf
- KRB5_CONFIG=/var/tmp/krb5.conf kinit
-.fi
-.in -2
-
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for a description of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Uncommitted
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBchmod\fR(1), \fBkinit\fR(1), \fBklist\fR(1), \fBksh\fR(1), \fBkadmin\fR(1M),
-\fBkadmind\fR(1M), \fBkrb5.conf\fR(4), \fBattributes\fR(5), \fBkerberos\fR(5)
diff --git a/usr/src/man/man5/largefile.5 b/usr/src/man/man5/largefile.5
deleted file mode 100644
index 619dac08ec..0000000000
--- a/usr/src/man/man5/largefile.5
+++ /dev/null
@@ -1,229 +0,0 @@
-'\" te
-.\" Copyright (c) 2007 Sun Microsystems, Inc. All Rights Reserved
-.\" Portions Copyright (c) 1982-2007 AT&T Knowledge Ventures
-.\" Copyright 2015 Nexenta Systems, Inc. All rights reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add
-.\" the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH LARGEFILE 5 "Sep 8, 2015"
-.SH NAME
-largefile \- large file status of utilities
-.SH DESCRIPTION
-.LP
-A \fIlarge file\fR is a regular file whose size is greater than or equal to 2
-Gbyte ( 2^31 bytes). A \fIsmall file\fR is a regular file whose size is less
-than 2 Gbyte.
-.SS "Large file aware utilities"
-.LP
-A utility is called \fIlarge file aware\fR if it can process large files in the
-same manner as it does small files. A utility that is large file aware is able
-to handle large files as input and generate as output large files that are
-being processed. The exception is where additional files are used as system
-configuration files or support files that can augment the processing. For
-example, the \fBfile\fR utility supports the \fB-m\fR option for an alternative
-"magic" file and the \fB-f\fR option for a support file that can contain a list
-of file names. It is unspecified whether a utility that is large file aware
-will accept configuration or support files that are large files. If a large
-file aware utility does not accept configuration or support files that are
-large files, it will cause no data loss or corruption upon encountering such
-files and will return an appropriate error.
-.LP
-The following \fB/usr/bin\fR utilities are large file aware:
-.sp
-
-.sp
-.TS
-l l l l l
-l l l l l .
-\fBadb\fR \fBaliasadm\fR \fBawk\fR \fBbdiff\fR \fBcat\fR
-\fBchgrp\fR \fBchmod\fR \fBchown\fR \fBcksum\fR \fBcmp\fR
-\fBcompress\fR \fBcp\fR \fBcsh\fR \fBcsplit\fR \fBcut\fR
-\fBdd\fR \fBdircmp\fR \fBdu\fR \fBegrep\fR \fBfgrep\fR
-\fBfile\fR \fBfind\fR \fBftp\fR \fBgetconf\fR \fBgrep\fR
-\fBgzip\fR \fBhead\fR \fBjoin\fR \fBjsh\fR \fBksh\fR
-\fBksh93\fR \fBln\fR \fBls\fR \fBmailcompat\fR \fBmailstats\fR
-\fBmdb\fR \fBmkdir\fR \fBmkfifo\fR \fBmore\fR \fBmv\fR
-\fBnawk\fR \fBpage\fR \fBpaste\fR \fBpathchck\fR \fBpg\fR
-\fBpraliases\fR \fBrcp\fR \fBremsh\fR \fBrksh\fR \fBrksh93\fR
-\fBrm\fR \fBrmdir\fR \fBrsh\fR \fBsed\fR \fBsh\fR
-\fBsort\fR \fBsplit\fR \fBsum\fR \fBtail\fR \fBtar\fR
-\fBtee\fR \fBtest\fR \fBtouch\fR \fBtr\fR \fBuncompress\fR
-\fBuudecode\fR \fBuuencode\fR \fBvacation\fR \fBwc\fR \fBzcat\fR
-.TE
-
-.LP
-The following \fB/usr/xpg4/bin\fR utilities are large file aware:
-.sp
-
-.sp
-.TS
-l l l l l
-l l l l l .
-\fBawk\fR \fBcp\fR \fBchgrp\fR \fBchown\fR \fBdu\fR
-\fBegrep\fR \fBfgrep\fR \fBfile\fR \fBgrep\fR \fBln\fR
-\fBls\fR \fBmore\fR \fBmv\fR \fBrm\fR \fBsed\fR
-\fBsh\fR sort tail tr
-.TE
-
-.LP
-The following \fB/usr/xpg6/bin\fR utilities are large file aware:
-.sp
-
-.sp
-.TS
-l l l l l .
-\fBgetconf\fR \fBls\fR \fBtr\fR
-.TE
-
-.LP
-The following \fB/usr/sbin\fR utilities are large file aware:
-.sp
-
-.sp
-.TS
-l l l l l
-l l l l l .
-\fBeditmap\fR \fBinstall\fR \fBmakemap\fR \fBmkfile\fR \fBmknod\fR
-\fBmvdir\fR \fBswap\fR
-.TE
-
-.LP
-The following \fB/usr/lib\fR utilities are large file aware:
-.sp
-
-.sp
-.TS
-l l l l l .
-\fBmail.local\fR \fBsendmail\fR \fBsmrsh\fR
-.TE
-
-.LP
-See the USAGE section of the \fBswap\fR(1M) manual page for limitations of
-\fBswap\fR on block devices greater than 2 Gbyte on a 32-bit operating system.
-.sp
-.LP
-The following \fB/usr/ucb\fR utilities are large file aware:
-.sp
-
-.sp
-.TS
-l l l l l
-l l l l l .
-\fBchown\fR \fBfrom\fR \fBln\fR \fBls\fR \fBsed\fR
-\fBsum\fR \fBtouch\fR
-.TE
-
-.LP
-The \fB/usr/bin/cpio\fR and \fB/usr/bin/pax\fR utilities are large file aware,
-but cannot archive a file whose size exceeds 8 Gbyte - 1 byte.
-.LP
-The \fB/usr/bin/truss\fR utilities has been modified to read a dump file and
-display information relevant to large files, such as offsets.
-.SS "nfs file systems"
-.LP
-The following utilities are large file aware for \fBnfs\fR file systems:
-.sp
-
-.sp
-.TS
-l l
-l l .
-\fB/usr/lib/autofs/automountd\fR \fB/usr/sbin/mount\fR
-\fB/usr/lib/nfs/rquotad\fR
-.TE
-
-.SS "ufs file systems"
-.LP
-The following \fB/usr/bin\fR utility is large file aware for \fBufs\fR file
-systems:
-.LP
-\fBdf\fR
-.LP
-The following \fB/usr/lib/nfs\fR utility is large file aware for \fBufs\fR file
-systems:
-.LP
-\fBrquotad\fR
-.LP
-The following \fB/usr/xpg4/bin\fR utility is large file aware for \fBufs\fR
-file systems:
-.LP
-\fBdf\fR
-.LP
-The following \fB/usr/sbin\fR utilities are large file aware for \fBufs\fR file
-systems:
-.sp
-
-.sp
-.TS
-l l l l l
-l l l l l .
-\fBclri\fR \fBdcopy\fR \fBedquota\fR \fBff\fR \fBfsck\fR
-\fBfsdb\fR \fBfsirand\fR \fBfstyp\fR \fBlabelit\fR \fBlockfs\fR
-\fBmkfs\fR \fBmount\fR \fBncheck\fR \fBnewfs\fR \fBquot\fR
-\fBquota\fR \fBquotacheck\fR \fBquotaoff\fR \fBquotaon\fR \fBrepquota\fR
-\fBtunefs\fR \fBufsdump\fR \fBufsrestore\fR \fBumount\fR
-.TE
-
-.SS "Large file safe utilities"
-.LP
-A utility is called \fBlarge file safe\fR if it causes no data loss or
-corruption when it encounters a large file. A utility that is large file safe
-is unable to process properly a large file, but returns an appropriate error.
-.LP
-The following \fB/usr/bin\fR utilities are large file safe:
-.sp
-
-.sp
-.TS
-l l l l l
-l l l l l .
-\fBaudioconvert\fR \fBaudioplay\fR \fBaudiorecord\fR \fBcomm\fR \fBdiff\fR
-\fBdiff3\fR \fBdiffmk\fR \fBed\fR \fBlp\fR \fBmail\fR
-\fBmailcompat\fR \fBmailstats\fR \fBmailx\fR \fBpack\fR \fBpcat\fR
-\fBred\fR \fBrmail\fR \fBsdiff\fR \fBunpack\fR \fBvi\fR
-\fBview\fR
-.TE
-
-.LP
-The following \fB/usr/xpg4/bin\fR utilities are large file safe:
-.sp
-
-.sp
-.TS
-l l l l l .
-\fBed\fR \fBvi\fR \fBview\fR
-.TE
-
-.LP
-The following \fB/usr/xpg6/bin\fR utility is large file safe:
-.sp
-
-.sp
-.TS
-l l l l l .
-\fBed\fR
-.TE
-
-.LP
-The following \fB/usr/sbin\fR utilities are large file safe:
-.sp
-
-.sp
-.TS
-l l l l l .
-lpfilter lpforms
-.TE
-
-.LP
-The following \fB/usr/ucb\fR utilities are large file safe:
-.sp
-
-.sp
-.TS
-l l l l l .
-\fBMail\fR \fBlpr\fR
-.TE
-
-.SH SEE ALSO
-.LP
-\fBlf64\fR(5), \fBlfcompile\fR(5), \fBlfcompile64\fR(5)
diff --git a/usr/src/man/man5/ldapfilter.conf.5 b/usr/src/man/man5/ldapfilter.conf.5
new file mode 100644
index 0000000000..cd554c33bd
--- /dev/null
+++ b/usr/src/man/man5/ldapfilter.conf.5
@@ -0,0 +1,184 @@
+'\" te
+.\" Copyright (C) 1990, Regents of the University of Michigan. All Rights Reserved.
+.\" Portions Copyright (C) 1997, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH LDAPFILTER.CONF 5 "Jul 9, 2003"
+.SH NAME
+ldapfilter.conf \- configuration file for LDAP filtering routines
+.SH SYNOPSIS
+.LP
+.nf
+\fB/etc/opt/SUNWconn/ldap/current/ldapfilter.conf\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBldapfilter.conf\fR file contains information used by the LDAP filtering
+routines.
+.sp
+.LP
+Blank lines and lines that begin with a hash character (\fB#\fR) are treated as
+comments and ignored. The configuration information consists of lines that
+contain one to five tokens. Tokens are separated by white space, and double
+quotes can be used to include white space inside a token.
+.sp
+.LP
+The file consists of a sequence of one or more filter sets. A filter set begins
+with a line containing a single token called a \fItag\fR.
+.sp
+.LP
+The filter set consists of a sequence of one or more filter lists. The first
+line in a filter list must contain four or five tokens: the \fIvalue
+pattern\fR, the \fIdelimiter list\fR, a \fIfiltertemplate\fR, a \fImatch
+description\fR, and an optional \fIsearch scope\fR. The \fIvalue pattern\fR is
+a regular expression that is matched against the value passed to the LDAP
+library call to select the filter list.
+.sp
+.LP
+The \fIdelimiter list\fR is a list of the characters (in the form of a single
+string) that can be used to break the \fBvalue\fR into distinct words.
+.sp
+.LP
+The \fIfilter template\fR is used to construct an LDAP filter (see description
+below)
+.sp
+.LP
+The \fImatch description\fR is returned to the caller along with a filter as a
+piece of text that can be used to describe the sort of LDAP search that took
+place. It should correctly compete both of the following phrases: "One \fImatch
+description\fR match was found for ..." and "Three \fImatch description\fR
+matches were found for...."
+.sp
+.LP
+The \fIsearch scope\fR is optional, and should be one of \fBbase\fR,
+\fBonelevel\fR, or \fBsubtree\fR. If \fIsearch scope\fR is not provided, the
+default is \fBsubtree\fR.
+.sp
+.LP
+The remaining lines of the filter list should contain two or three tokens, a
+\fIfilter template,\fR a \fImatch description\fR and an optional \fIsearch
+scope\fR.
+.sp
+.LP
+The \fIfilter template\fR is similar in concept to a \fBprintf\fR(3C) style
+format string. Everything is taken literally except for the character
+sequences:
+.sp
+.ne 2
+.na
+\fB\fB%v\fR \fR
+.ad
+.RS 9n
+Substitute the entire \fBvalue\fR string in place of the \fB%v\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB%v$\fR \fR
+.ad
+.RS 9n
+Substitute the last word in this field.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB%v\fR\fIN\fR\fR
+.ad
+.RS 9n
+Substitute word \fIN\fR in this field (where \fIN\fR is a single digit
+\fB1\fR-\fB9\fR). Words are numbered from left to right within the value
+starting at \fB1\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB%v\fR\fIM-N\fR\fR
+.ad
+.RS 9n
+Substitute the indicated sequence of words where \fIM\fR and \fIN\fR are both
+single digits \fB1\fR-\fB9\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB%v\fR\fIN-\fR\fR
+.ad
+.RS 9n
+Substitute word \fIN\fR through the last word in \fBvalue\fR where \fIN\fR is
+again a single digit \fB1\fR-\fB9\fR.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRAn LDAP Filter Configuration File
+.sp
+.LP
+The following LDAP filter configuration file contains two filter sets,
+\fBexample1\fR and \fBexample2 onelevel\fR, each of which contains four filter
+lists.
+
+.sp
+.in +2
+.nf
+# ldap filter file
+#
+example1
+"=" " " "%v" "arbitrary filter"
+"[0-9][0-9-]*" " " "(telephoneNumber=*%v)" "phone number"
+
+"@" " " "(mail=%v)" "email address"
+
+"^.[. _].*" ". _" "(cn=%v1* %v2-)" "first initial"
+
+".*[. _].$" ". _" "(cn=%v1-*)" "last initial"
+
+"[. _]" ". _" "(|(sn=%v1-)(cn=%v1-))" "exact"
+ "(|(sn~=%v1-)(cn~=%v1-))" "approximate"
+
+".*" ". " "(|(cn=%v1)(sn=%v1)(uid=%v1))" "exact"
+ "(|(cn~=%v1)(sn~=%v1))" "approximate"
+
+"example2 onelevel"
+"^..$" " " "(|(o=%v)(c=%v)(l=%v)(co=%v))" "exact" "onelevel"
+ "(|(o~=%v)(c~=%v)(l~=%v)(co~=%v))" "approximate"
+"onelevel"
+
+" " " " "(|(o=%v)(l=%v)(co=%v)" "exact" "onelevel"
+ "(|(o~=%v)(l~=%v)(co~=%v)" "approximate" "onelevel"
+
+"." " " "(associatedDomain=%v)" "exact" "onelevel"
+
+".*" " " "(|(o=%v)(l=%v)(co=%v)" "exact" "onelevel"
+ "(|(o~=%v)(l~=%v)(co~=%v)" "approximate" "onelevel"
+.fi
+.in -2
+.sp
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for a description of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+l | l
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+Stability Level Evolving
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR ldap_getfilter (3LDAP),
+.BR ldap_ufn (3LDAP),
+.BR attributes (7)
diff --git a/usr/src/man/man5/ldapsearchprefs.conf.5 b/usr/src/man/man5/ldapsearchprefs.conf.5
new file mode 100644
index 0000000000..9d3d1d1d80
--- /dev/null
+++ b/usr/src/man/man5/ldapsearchprefs.conf.5
@@ -0,0 +1,280 @@
+'\" te
+.\" Copyright (C) 1990, Regents of the University of Michigan. All Rights Reserved.
+.\" Portions Copyright (C) 1997, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH LDAPSEARCHPREFS.CONF 5 "Nov 26, 2017"
+.SH NAME
+ldapsearchprefs.conf \- configuration file for LDAP search preference routines
+.SH SYNOPSIS
+.LP
+.nf
+\fB/etc/opt/SUNWconn/ldap/current/ldapsearchprefs.conf\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBldapsearchprefs.conf\fR file contains information used by LDAP when
+searching the directory. Blank lines and lines that start with a hash ('#')
+character are treated as comments and ignored. Non-comment lines contain one or
+more tokens. Tokens are separated by white space, and double quotes can be used
+to include white space inside a token.
+.sp
+.LP
+Search preferences are typically used by LDAP-based client programs to specify
+what a user may search for, which attributes are searched, and which options
+are available to the user.
+.sp
+.LP
+The first non-comment line specifies the version of the template information
+and must contain the token \fBVersion\fR followed by an integer version number.
+For example:
+.sp
+.in +2
+.nf
+Version 1
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The current version is \fI1,\fR so the above example is always the correct
+opening line.
+.sp
+.LP
+The remainder of the file consists of one or more search preference
+configurations. The first line of a search preference is a human-readable name
+for the type of object being searched for, for example \fBPeople\fR or
+\fBOrganizations\fR. This name is stored in the \fIso_objtypeprompt\fR member
+of the \fBldap_searchobj\fR structure (see \fBldap_searchprefs\fR(3LDAP)). For
+example:
+.sp
+.in +2
+.nf
+People
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+specifies a label for a search preference designed to find X.500 entries for
+people.
+.sp
+.LP
+The next line specifies a list of options for this search object. The only
+option currently allowed is "internal" which means that this search object
+should not be presented directly to a user. Options are placed in the
+\fIso_options\fR member of the \fIldap_searchobj\fR structure and can be tested
+using the \fBLDAP_IS_SEARCHOBJ_OPTION_SET()\fR macro. Use "" if no special
+options are required.
+.sp
+.LP
+The next line specifies a label to use for "Fewer Choices" searches. "Fewer
+Choices" searches are those where the user's input is fed to the ldap_filter
+routines to determine an appropriate filter to use. This contrasts with
+explicitly-constructed LDAP filters, or "More Choices" searches, where the user
+can explicitly construct an LDAP filter.
+.sp
+.LP
+For example:
+.sp
+.in +2
+.nf
+"Search For:"
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+can be used by LDAP client programs to label the field into which the user can
+type a "Fewer Choices" search.
+.sp
+.LP
+The next line specifies an LDAP filter prefix to append to all "More Choices"
+searched. This is typically used to limit the types of entries returned to
+those containing a specific object class. For example:
+.sp
+.in +2
+.nf
+"(&(objectClass=person)"
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+would cause only entries containing the object class \fIperson\fR to be
+returned by a search. Note that parentheses may be unbalanced here, since this
+is a filter prefix, not an entire filter.
+.sp
+.LP
+The next line is an LDAP filter tag which specifies the set of LDAP filters to
+be applied for "Fewer Choices" searching. The line
+.sp
+.in +2
+.nf
+\fB"x500-People"\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+would tell the client program to use the set of LDAP filters from the ldap
+filter configuration file tagged "x500-People".
+.sp
+.LP
+The next line specifies an LDAP attribute to retrieve to help the user choose
+when several entries match the search terms specified. For example:
+.sp
+.in +2
+.nf
+"title"
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+specifies that if more than one entry matches the search criteria, the client
+program should retrieve the \fBtitle\fR attribute that and present that to the
+user to allow them to select the appropriate entry. The next line specifies a
+label for the above attribute, for example,
+.sp
+.in +2
+.nf
+"Title:"
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Note that the values defined so far in the file are defaults, and are intended
+to be overridden by the specific search options that follow.
+.sp
+.LP
+The next line specifies the scope of the LDAP search to be performed.
+Acceptable values are subtree, onelevel, and base.
+.sp
+.LP
+The next section is a list of "More Choices" search options, terminated by a
+line containing only the string \fBEND\fR. For example:
+.sp
+.in +2
+.nf
+"Common Name" cn 11111 "" ""
+"Surname" sn 11111 "" ""
+"Business Phone" "telephoneNumber" 11101 "" ""
+END
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+ Each line represents one method of searching. In this example, there are three
+ways of searching - by Common Name, by Surname, and by Business Phone number.
+The first field is the text which should be displayed to user. The second field
+is the attribute which will be searched. The third field is a bitmap which
+specifies which of the match types are permitted for this search type. A "1"
+value in a given bit position indicates that a particular match type is valid,
+and a "0" indicates that is it not valid. The fourth and fifth fields are,
+respectively, the select attribute name and on-screen name for the selected
+attribute. These values are intended to override the defaults defined above. If
+no specific values are specified, the client software uses the default values
+above.
+.sp
+.LP
+The next section is a list of search match options, terminated by a a line
+containing only the string \fBEND\fR. Example:
+.sp
+.in +2
+.nf
+"exactly matches" "(%a=%v))"
+"approximately matches" "(%a~=%v))"
+"starts with" "(%a=%v*))"
+"ends with" "(%a=*%v))"
+"contains" "(%a=*%v*))"
+END
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+In this example, there are five ways of refining the search. For each method,
+there is an LDAP filter suffix which is appended to the ldap filter.
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRA Sample Configuration Using Search Preference for "people"
+.sp
+.LP
+The following example illustrates one possible configuration of search
+preferences for "people".
+
+.sp
+.in +2
+.nf
+# Version number
+Version 1
+# Name for this search object
+People
+# Label to place before text box user types in
+"Search For:"
+# Filter prefix to append to all "More Choices" searches
+"(&(objectClass=person)"
+# Tag to use for "Fewer Choices" searches - from ldapfilter.conf file
+"x500-People"
+# If a search results in > 1 match, retrieve this attribute to help
+# user distinguish between the entries...
+multilineDescription
+# ...and label it with this string:
+"Description"
+# Search scope to use when searching
+subtree
+# Follows a list of "More Choices" search options. Format is:
+# Label, attribute, select-bitmap, extra attr display name, extra attr ldap name
+# If last two are null, "Fewer Choices" name/attributes used
+"Common Name" cn 11111 "" ""
+"Surname" sn 11111 "" ""
+"Business Phone" "telephoneNumber" 11101 "" ""
+"E-Mail Address" "mail" 11111 "" ""
+"Uniqname" "uid" 11111 "" ""
+END
+# Match types
+"exactly matches" "(%a=%v))"
+"approximately matches" "(%a~=%v))"
+"starts with" "(%a=%v*))"
+"ends with" "(%a=*%v))"
+"contains" "(%a=*%v*))"
+END
+.fi
+.in -2
+
+.sp
+.LP
+In this example, the user may search for People. For "fewer choices" searching,
+the tag for the \fBldapfilter.conf\fR(5) file is "x500-People".
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for a description of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+Stability Level Evolving
+.TE
+
+.SH SEE ALSO
+.LP
+.BR ldap_searchprefs (3LDAP),
+.BR attributes (7)
diff --git a/usr/src/man/man5/ldaptemplates.conf.5 b/usr/src/man/man5/ldaptemplates.conf.5
new file mode 100644
index 0000000000..3e984863b8
--- /dev/null
+++ b/usr/src/man/man5/ldaptemplates.conf.5
@@ -0,0 +1,433 @@
+'\" te
+.\" Copyright (C) 1990, Regents of the University of Michigan. All Rights Reserved.
+.\" Portions Copyright (C) 1997, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH LDAPTEMPLATES.CONF 5 "Jul 9, 2003"
+.SH NAME
+ldaptemplates.conf \- configuration file for LDAP display template routines
+.SH SYNOPSIS
+.LP
+.nf
+\fB/etc/opt/SUNWconn/ldap/current/ldaptemplates.conf\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBldaptemplates.conf\fR file contains information used by the LDAP display
+routines.
+.sp
+.LP
+Blank lines and lines that start with a hash character ('#') are treated as
+comments and ignored. Non-comment lines contain one or more tokens. Tokens are
+separated by white space, and double quotes can be used to include white space
+inside a token.
+.sp
+.LP
+The first non-comment line specifies the version of the template information
+and must contain the token \fBVersion\fR followed by an integer version number.
+For example,
+.sp
+.in +2
+.nf
+Version 1
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The current version is \fI1\fR, so the above example is always the correct
+first line.
+.sp
+.LP
+The remainder of the file consists of one or more display templates. The first
+two lines of the display template each contain a single token that specifies
+singular and plural names for the template in a user-friendly format. For
+example,
+.sp
+.in +2
+.nf
+"Person"
+"People"
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+specifies appropriate names for a template designed to display person
+information.
+.sp
+.LP
+The next line specifies the name of the icon or similar element that is
+associated with this template. For example,
+.sp
+.in +2
+.nf
+"person icon"
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The next line is a blank-separated list of template options. "" can be used if
+no options are desired. Available options are: \fBaddable\fR (it is appropriate
+to allow entries of this type to be added), \fBmodrdn\fR (it is appropriate to
+offer the \fBmodify rdn\fR operation), \fBaltview\fR (this template is an
+alternate view of another template). For example,
+.sp
+.in +2
+.nf
+"addable" "modrdn"
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The next portion of the template is a list of X.500 object classes that is used
+to determine whether the template should be used to display a given entry. The
+object class information consists of one or more lines, followed by a
+terminating line that contains the single token \fBEND\fR. Each line contains
+one or more object class names, all of which must be present in a directory
+entry. Multiple lines can be used to associate more than one set of object
+classes with a given template. For example,
+.sp
+.in +2
+.nf
+emailPerson
+orgPerson
+END
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+means that the template is appropriate for display of \fBemailPerson\fR entries
+or \fBorgPerson\fR entries.
+.sp
+.LP
+The next line after the object class list is the name of the attribute to
+authenticate as to make changes (use "" if it is appropriate to authenticate as
+the entry itself). For example,
+.sp
+.in +2
+.nf
+"owner"
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The next line is the default attribute to use when naming a new entry, for
+example,
+.sp
+.in +2
+.nf
+"cn"
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The next line is the distinguished name of the default location under which new
+entries are created. For example,
+.sp
+.in +2
+.nf
+"o=XYZ, c=US"
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The next section is a list of rules used to assign default values to new
+entries. The list should be terminated with a line that contains the single
+token \fBEND\fR. Each line in this section should either begin with the token
+\fBconstant\fR and be followed by the name of the attribute and a constant
+value to assign, or the line should begin with \fBaddersdn\fR followed by the
+name of an attribute whose value will be the DN of the person who has
+authenticated to add the entry. For example,
+.sp
+.in +2
+.nf
+constant associatedDomain XYZ.us
+addersdn seeAlso
+END
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The last portion of the template is a list of items to display. It consists of
+one or more lines, followed by a terminating line that contains the single
+token \fBEND\fR. Each line is must begin with the token \fBsamerow\fR or the
+token \fBitem\fR
+.sp
+.LP
+It is assumed that each item appears on a row by itself unless it was preceded
+by a \fBsamerow\fR line (in which case it should be displayed on the same line
+as the previous item, if possible). Lines that begin with \fBsamerow\fR should
+not have any other tokens on them.
+.sp
+.LP
+Lines that begin with \fBitem\fR must have at least three more tokens on them:
+an item type, a label, and an attribute name. Any extra tokens are taken as
+extra arguments.
+.sp
+.LP
+The item type token must be one of the following strings:
+.sp
+.ne 2
+.na
+\fB\fBcis\fR \fR
+.ad
+.RS 14n
+case-ignore string attributes
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmls\fR \fR
+.ad
+.RS 14n
+multiline string attributes
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmail\fR \fR
+.ad
+.RS 14n
+RFC-822 conformant mail address attributes
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdn\fR \fR
+.ad
+.RS 14n
+distinguished name pointer attributes
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBbool\fR \fR
+.ad
+.RS 14n
+Boolean attributes
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBjpeg\fR \fR
+.ad
+.RS 14n
+JPEG photo attributes
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBjpegbtn\fR \fR
+.ad
+.RS 14n
+a button that will retrieve and show a JPEG photo attribute
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfax\fR \fR
+.ad
+.RS 14n
+FAX T.4 format image attributes
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfaxbtn\fR \fR
+.ad
+.RS 14n
+a button that will retrieve and show a FAX photo attribute
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBaudiobtn\fR \fR
+.ad
+.RS 14n
+audio attributes
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBtime\fR \fR
+.ad
+.RS 14n
+UTC time attributes
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdate\fR \fR
+.ad
+.RS 14n
+UTC time attributes where only the date portion should be shown
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBurl\fR \fR
+.ad
+.RS 14n
+labeled Uniform Resource Locator attributes
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsearchact\fR \fR
+.ad
+.RS 14n
+define an action that will do a directory search for other entries
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBlinkact\fR \fR
+.ad
+.RS 14n
+define an action which is a link to another display template
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBprotected\fR \fR
+.ad
+.RS 14n
+for an encrypted attribute, with values displayed as asterisks
+.RE
+
+.sp
+.LP
+An example of an item line for the drink attribute (displayed with label "Work
+Phone"):
+.sp
+.in +2
+.nf
+item cis "Work Phone" telephoneNumber
+.fi
+.in -2
+.sp
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRA Sample Configuration File Containing a Template that Displays
+People Entries
+.sp
+.LP
+The following template configuration file contains a templates for display of
+people entries.
+
+.sp
+.in +2
+.nf
+ #
+ # LDAP display templates
+ #
+ # Version must be 1 for now
+ #
+ Version 1
+ #
+ # Person template
+ "Person"
+ "People"
+
+ # name of the icon that is associated with this template
+ "person icon"
+
+ # blank-separated list of template options ("" for none)
+ "addable"
+
+ #
+ # objectclass list
+ person
+ END
+
+ #
+ # name of attribute to authenticate as ("" means auth as this entry)
+ ""
+
+ #
+ # default attribute name to use when forming RDN of a new entry
+ #
+ "cn"
+
+ #
+ # default location when adding new entries (DN; "" means no default)
+ "o=XYZ, c=US"
+
+ #
+ # rules used to define default values for new entries
+ END
+
+ #
+ # list of items for display
+ item jpegbtn "View Photo" jpegPhoto "Next Photo"
+ item audiobtn "Play Sound" audio
+ item cis "Also Known As" cn
+ item cis "Title" title
+ item mls "Work Address" postalAddress
+ item cis "Work Phone" telephoneNumber
+ item cis "Fax Number" facsimileTelephoneNumber
+ item mls "Home Address" homePostalAddress
+ item cis "Home Phone" homePhone
+ item cis "User ID" uid
+ item mail "E-Mail Address" mail
+ item cis "Description" description
+ item dn "See Also" seeAlso
+ END
+.fi
+.in -2
+.sp
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for a description of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+Stability Level Evolving
+.TE
+
+.SH SEE ALSO
+.LP
+.BR ldap_disptmpl (3LDAP),
+.BR ldap_entry2text (3LDAP),
+.BR attributes (7)
diff --git a/usr/src/man/man5/lf64.5 b/usr/src/man/man5/lf64.5
deleted file mode 100644
index f2c59d78a6..0000000000
--- a/usr/src/man/man5/lf64.5
+++ /dev/null
@@ -1,347 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.\" Copyright (c) 2015, Joyent, Inc. All rights reserved.
-.TH LF64 5 "May 17, 2020"
-.SH NAME
-lf64 \- transitional interfaces for 64-bit file offsets
-.SH DESCRIPTION
-The data types, interfaces, and macros described on this page provide explicit
-access to 64-bit file offsets. They are accessible through the transitional
-compilation environment described on the \fBlfcompile64\fR(5) manual page. The
-function prototype and semantics of a transitional interface are equivalent to
-those of the standard version of the call, except that relevant data types are
-64-bit entities.
-.SS "Data Types"
-The following tables list the standard data or struct types in the left-hand
-column and their corresponding explicit 64-bit file offset types in the
-right-hand column, grouped by header. The absence of an entry in the left-hand
-column indicates that there is no existing explicit 32-bit type that
-corresponds to the 64-bit type listed in the right\(emhand column. Note that
-in a 64-bit application, the standard definition is equivalent to the 64-bit
-file offset definition.
-.SS "<\fBaio.h\fR>"
-
-.TS
-l l
-l l .
-struct \fBaiocb\fR struct \fBaiocb64\fR
- \fBoff_t\fR aio_offset; \fBoff64_t\fR aio_offset;
-.TE
-
-.SS "<\fBsys/dirent.h\fR>"
-
-.TS
-l l
-l l .
-struct \fBdirent\fR struct \fBdirent64\fR
- \fBino_t\fR d_ino; \fBino64_t\fR d_ino;
- \fBoff_t\fR d_off; \fBoff64_t\fR d_off;
-.TE
-
-.SS "<\fBsys/fcntl.h\fR>"
-
-.TS
-l l
-l l .
-struct \fBflock\fR struct \fBflock64\fR
- \fBoff_t\fR l_start; \fBoff64_t\fR l_start;
- \fBoff_t\fR l_len; \fBoff64_t\fR l_len;
-\fBF_SETLK\fR \fBF_SETLK64\fR
-\fBF_SETLKW\fR \fBF_SETLKW64\fR
-\fBF_GETLK\fR \fBF_GETLK64\fR
-\fBF_FREESP\fR \fBF_FREESP64\fR
-\fBF_ALLOCSP\fR \fBF_ALLOCSP64\fR
- \fBO_LARGEFILE\fR
-.TE
-
-.SS "<\fBsys/stdio.h\fR>"
-
-.TS
-l l .
-\fBfpos_t\fR \fBfpos64_t\fR
-.TE
-
-.SS "<\fBsys/resource.h\fR>"
-
-.TS
-l l
-l l .
-\fBrlim_t\fR \fBrlim64_t\fR
-struct \fBrlimit\fR struct \fBrlimit64\fR
- \fBrlim_t\fR rlim_cur; \fBrlim64_t\fR rlim_cur;
- \fBrlim_t\fR rlim_max; \fBrlim64_t\fR rlim_max;
-\fBRLIM_INFINITY\fR \fBRLIM64_INFINITY\fR
-\fBRLIM_SAVED_MAX\fR \fBRLIM64_SAVED_MAX\fR
-\fBRLIM_SAVED_CUR\fR \fBRLIM64_SAVED_CUR\fR
-.TE
-
-.SS "<\fBsys/stat.h\fR>"
-
-.TS
-l l
-l l .
-struct \fBstat\fR struct \fBstat64\fR
- \fBino_t\fR st_ino; \fBino64_t\fR st_ino;
- \fBoff_t\fR st_size; \fBoff64_t\fR st_size;
- \fBblkcnt_t\fR st_blocks; \fBblkcnt64_t\fR st_blocks;
-.TE
-
-.SS "<\fBsys/statvfs.h\fR>"
-
-.TS
-l l
-l l .
-struct \fBstatvfs\fR struct \fBstatvfs64\fR
- \fBfsblkcnt_t\fR f_blocks; \fBfsblkcnt64_t\fR f_blocks;
- \fBfsblkcnt_t\fR f_bfree; \fBfsblkcnt64_t\fR f_bfree;
- \fBfsblkcnt_t\fR f_bavail; \fBfsblkcnt64_t\fR f_bavail;
- \fBfsfilcnt_t\fR f_files; \fBfsfilcnt64_t\fR f_files;
- \fBfsfilcnt_t\fR f_ffree; \fBfsfilcnt64_t\fR f_ffree;
- \fBfsfilcnt_t\fR f_favail; \fBfsfilcnt64_t\fR f_favail;
-.TE
-
-.SS "<\fBsys/types.h\fR>"
-
-.TS
-l l
-l l .
-\fBoff_t\fR; \fBoff64_t\fR;
-\fBino_t\fR; \fBino64_t\fR;
-\fBblkcnt_t\fR; \fBblkcnt64_t\fR;
-\fBfsblkcnt_t\fR; \fBfsblkcnt64_t\fR;
-\fBfsfilcnt_t\fR; \fBfsfilcnt64_t\fR;
-.TE
-
-.SS "<\fBunistd.h\fR>"
-
-.TS
-l l
-l l .
- \fB_LFS64_LARGEFILE\fR
- \fB_LFS64_STDIO\fR
-.TE
-
-.SS "<\fBsys/unistd.h\fR>"
-
-.TS
-l l
-l l .
- \fB_CS_LFS64_CFLAGS\fR
- \fB_CS_LFS64_LDFLAGS\fR
- \fB_CS_LFS64_LIBS\fR
- \fB_CS_LFS64_LINTFLAGS\fR
-.TE
-
-.SS "System Interfaces"
-The following tables display the standard API and the corresponding
-transitional interfaces for 64-bit file offsets. The interfaces are grouped by
-header. The interface name and the affected data types are displayed in courier
-font.
-.SS "<\fBaio.h\fR>"
-
-.TS
-l l
-l l .
-int \fBaio_cancel\fR(..., int \fBaio_cancel64\fR(...,
- struct \fBaiocb\fR *); struct \fBaiocb64\fR *);
-int \fBaio_error\fR( int \fBaio_error64\fR(
- const struct \fBaiocb\fR *); const struct \fBaiocb64\fR *);
-int \fBaio_fsync\fR(..., int \fBaio_fsync64\fR(...,
- struct \fBaiocb\fR *); struct \fBaiocb64\fR *);
-int \fBaio_read\fR(struct \fBaiocb\fR *); int \fBaio_read64\fR(struct \fBaiocb64\fR *);
-int \fBaio_return\fR(struct \fBaiocb\fR *); int \fBaio_return64\fR(struct \fBaiocb64\fR *);
-int \fBaio_suspend\fR( int \fBaio_suspend64\fR(
- const struct \fBaiocb\fR *, ...); const struct \fBaiocb64\fR *, ...);
-int \fBaio_waitn\fR(aiocb_t *[], int \fBaio_waitn64\fR(aiocb64_t *[],
- ...); ...);
-int \fBaio_write\fR(struct \fBaiocb\fR *); int \fBaio_write64\fR(struct \fBaiocb64\fR *);
-int \fBlio_listio\fR(..., int \fBlio_listio64\fR(...,
- const struct \fBaiocb\fR *, ...); const struct \fBaiocb64\fR *, ...);
-.TE
-
-.SS "<\fBdirent.h\fR>"
-
-.TS
-l l
-l l .
-int \fBalphasort\fR( int \fBalphasort64\fR(
- const struct dirent **, const struct dirent64 **,
- const struct dirent **) const struct dirent64 **)
-struct \fBdirent *\fR\fBreaddir()\fR; struct \fBdirent64 *\fR\fBreaddir64()\fR;
-struct \fBdirent *\fR\fBreaddir_r()\fR; struct \fBdirent64 *\fR\fBreaddir64_r()\fR;
-int \fBscandir\fR(..., int \fBscandir64\fR(...,
- struct dirent *(*[]), struct dirent64 *(*[]),
- int (*)(const struct dirent *), int (*)(const struct dirent64 *),
- int (*)(const struct dirent **, int (*)(const struct dirent64 **,
- const struct dirent **)) const struct dirent64 **))
-.TE
-
-.SS "<\fBfcntl.h\fR>"
-
-.TS
-l l
-l l .
-int \fBattropen()\fR; int \fBattropen64()\fR;
-int \fBcreat()\fR; int \fBcreat64()\fR;
-int \fBopen()\fR; int \fBopen64()\fR;
-int \fBopenat()\fR; int \fBopenat64()\fR;
-int \fBposix_fadvise()\fR int \fBposix_fadvise64()\fR
-int \fBposix_fallocate()\fR int \fBposix_fallocate64()\fR
-.TE
-
-.SS "<\fBftw.h\fR>"
-
-.TS
-l l
-l l .
-int \fBftw\fR(..., int \fBftw64\fR(...,
- const struct \fBstat\fR *, ...); const struct \fBstat64\fR *, ...);
-
-int \fBnftw\fR(.. int \fBnftw64\fR(...,
- const struct \fBstat\fR *, ...); const struct \fBstat64\fR *, ...);
-
-.TE
-
-.SS "<\fBlibgen.h\fR>"
-
-.TS
-l l .
-char *\fBcopylist\fR(..., \fBoff_t\fR); char *\fBcopylist64\fR(..., \fBoff64_t\fR);
-.TE
-
-.SS "<\fBstdio.h\fR>"
-
-.TS
-l l
-l l .
-int \fBfgetpos()\fR; int \fBfgetpos64()\fR;
-FILE *\fBfopen()\fR; FILE *\fBfopen64()\fR;
-FILE *\fBfreopen()\fR; FILE *\fBfreopen64()\fR;
-int \fBfseeko\fR(..., \fBoff_t\fR, ...); int \fBfseeko64\fR(..., \fBoff64_t\fR, ...);
-int \fBfsetpos\fR(..., int \fBfsetpos64\fR(...,
- const \fBfpos_t\fR *); const \fBfpos64_t\fR *);
-off_t \fBftello()\fR; off64_t \fBftello64()\fR();
-FILE *\fBtmpfile()\fR; FILE *\fBtmpfile64()\fR;
-.TE
-
-.SS "<\fBstdlib.h\fR>"
-
-.TS
-l l .
-int \fBmkstemp()\fR; int \fBmkstemp64()\fR;
-.TE
-
-.SS "<\fBsys/async.h\fR>"
-
-.TS
-l l
-l l .
-int \fBaioread\fR(..., \fBoff_t\fR, ...); int \fBaioread64\fR(..., \fBoff64_t\fR, ...);
-int \fBaiowrite\fR(..., \fBoff_t\fR, ...); int \fBaiowrite64\fR(..., \fBoff64_t\fR, ...);
-.TE
-
-.SS "<\fBsys/dirent.h\fR>"
-
-.TS
-l l
-l l .
-int \fBgetdents\fR(..., \fBdirent\fR); int \fBgetdents64\fR(..., \fBdirent64\fR);
-
-.TE
-
-.SS "<\fBsys/mman.h\fR>"
-
-.TS
-l l .
-void \fBmmap\fR(..., \fBoff_t\fR); void \fBmmap64\fR(..., \fBoff64_t\fR);
-.TE
-
-.SS "<\fBsys/resource.h\fR>"
-
-.TS
-l l
-l l .
-int \fBgetrlimit\fR(..., int \fBgetrlimit64\fR(...,
- struct \fBrlimit\fR *); struct \fBrlimit64\fR *);
-int \fBsetrlimit\fR(..., int \fBsetrlimit64\fR(...,
- const struct \fBrlimit\fR *); const struct \fBrlimit64\fR *);
-.TE
-
-.SS "<\fBsys/sendfile.h\fR>"
-
-.TS
-l l
-l l .
-ssize_t \fBsendfile\fR(..., ssize_t \fBsendfile64\fR(...,
- \fBoff_t\fR *, ...); \fBoff64_t\fR *, ...);
-ssize_t \fBsendfilev\fR(..., const ssize_t \fBsendfilev64\fR(..., const
- struct \fBsendfilevec\fR *, ...); struct \fBsendfilevec64\fR *, ...);
-
-.TE
-
-.SS "<\fBsys/stat.h\fR>"
-
-.TS
-l l
-l l .
-int \fBfstat\fR(..., struct \fBstat\fR *); int \fBfstat64\fR(..., struct \fBstat64\fR *);
-int \fBfstatat\fR(..., int \fBfstatat64\fR(...,
- struct \fBstat\fR *, int); struct \fBstat64\fR *, int);
-int \fBlstat\fR(..., struct \fBstat\fR *); int \fBlstat64\fR(..., struct \fBstat64\fR *);
-int \fBstat\fR(..., struct \fBstat\fR *); int \fBstat64\fR(..., struct \fBstat64\fR *);
-.TE
-
-.SS "<\fBsys/statvfs.h\fR>"
-
-.TS
-l l
-l l .
-int \fBstatvfs\fR(..., int \fBstatvfs64\fR(...,
- struct \fBstatvfs\fR *); struct \fBstatvfs64\fR *);
-int \fBfstatvfs\fR(..., int \fBfstatvfs64\fR(...,
- struct \fBstatvfs\fR *); struct \fBstatvfs64\fR *);
-.TE
-
-.SS "<\fBucbinclude/stdio.h\fR>"
-
-.TS
-l l
-l l .
-FILE *\fBfopen()\fR FILE *\fBfopen64()\fR
-FILE *\fBfreopen()\fR FILE *\fBfreopen64()\fR
-.TE
-
-.SS "<\fBucbinclude/sys/dir.h\fR>"
-
-.TS
-l l
-l l .
-int \fBalphasort\fR( int \fBalphasort64\fR(
- struct \fBdirect\fR **, struct \fBdirect64\fR **,
- struct \fBdirect\fR **); struct \fBdirect64\fR **);
-struct \fBdirect *\fR\fBreaddir()\fR; struct \fBdirect64 *\fR\fBreaddir64()\fR;
-int \fBscandir\fR(..., int \fBscandir64\fR(...,
- struct \fBdirect\fR *(*[]);, ...); struct \fBdirect64\fR *(*[]);, ...);
-
-.TE
-
-.SS "<\fBunistd.h\fR>"
-
-.TS
-l l
-l l .
-int \fBlockf\fR(..., \fBoff_t\fR); int \fBlockf64\fR(..., \fBoff64_t\fR);
-\fBoff_t lseek\fR(..., \fBoff_t\fR, ...); \fBoff64_t lseek64\fR(..., \fBoff64_t\fR, ...);
-int \fBftruncate\fR(..., \fBoff_t\fR); int \fBftruncate64\fR..., \fBoff64_t\fR);
-ssize_t \fBpread\fR(..., \fBoff_t\fR); ssize_t \fBpread64\fR..., \fBoff64_t\fR);
-ssize_t \fBpwrite\fR(..., \fBoff_t\fR); ssize_t \fBpwrite64\fR(..., \fBoff64_t\fR);
-ssize_t \fBpreadv\fR(..., \fBoff_t\fR); ssize_t \fBpreadv64\fR..., \fBoff64_t\fR);
-ssize_t \fBpwritev\fR(..., \fBoff_t\fR); ssize_t \fBpwritev64\fR(..., \fBoff64_t\fR);
-int \fBtruncate\fR(..., \fBoff_t\fR); int \fBtruncate64\fR(..., \fBoff64_t\fR);
-.TE
-
-.SH SEE ALSO
-\fBlfcompile\fR(5), \fBlfcompile64\fR(5)
diff --git a/usr/src/man/man5/lfcompile.5 b/usr/src/man/man5/lfcompile.5
deleted file mode 100644
index fa1dbcce3c..0000000000
--- a/usr/src/man/man5/lfcompile.5
+++ /dev/null
@@ -1,216 +0,0 @@
-'\" te
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
-.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH LFCOMPILE 5 "Aug 24, 2009"
-.SH NAME
-lfcompile \- large file compilation environment for 32-bit applications
-.SH DESCRIPTION
-.sp
-.LP
-All 64-bit applications can manipulate large files by default. The methods
-described on this page allow 32-bit applications to manipulate large files.
-.sp
-.LP
-In the large file compilation environment, source interfaces are bound to
-appropriate 64-bit functions, structures, and types. Compiling in this
-environment allows 32-bit applications to access files whose size is greater
-than or equal to 2 Gbyte ( 2^31 bytes).
-.sp
-.LP
-Each interface named \fIxxx\fR\fB()\fR that needs to access 64-bit entities to
-access large files maps to a \fIxxx\fR\fB64()\fR call in the resulting binary.
-All relevant data types are defined to be of correct size (for example,
-\fBoff_t\fR has a typedef definition for a 64-bit entity).
-.sp
-.LP
-An application compiled in this environment is able to use the
-\fIxxx\fR\fB()\fR source interfaces to access both large and small files,
-rather than having to explicitly utilize the transitional \fIxxx\fR\fB64()\fR
-interface calls to access large files. See the \fBlfcompile64\fR(5) manual page
-for information regarding the transitional compilation environment.
-.sp
-.LP
-Applications can be compiled in the large file compilation environment by using
-the following methods:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Use the \fBgetconf\fR(1) utility with one or more of the arguments listed in
-the table below. This method is recommended for portable applications.
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-\fBargument\fR \fBpurpose\fR
-_
-\fBLFS_CFLAGS\fR T{
-obtain compilation flags necessary to enable the large file compilation environment
-T}
-\fBLFS_LDFLAGS\fR obtain link editor options
-\fBLFS_LIBS\fR obtain link library names
-\fBLFS_LINTFLAGS\fR obtain lint options
-.TE
-
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Set the compile-time flag \fB_FILE_OFFSET_BITS\fR to 64 before including any
-headers. Applications may combine objects produced in the large file
-compilation environment with objects produced in the transitional compilation
-environment, but must be careful with respect to interoperability between those
-objects. Applications should not declare global variables of types whose sizes
-change between compilation environments.
-.RE
-.SS "Access to Additional Large File Interfaces"
-.sp
-.LP
-The \fBfseek()\fR and \fBftell()\fR functions \fIdo not\fR map to functions
-named \fBfseek64()\fR and \fBftell64()\fR; rather, the large file additions
-\fBfseeko()\fR and \fBftello()\fR, have functionality identical to
-\fBfseek()\fR and \fBftell()\fR and \fIdo\fR map to the 64-bit functions
-\fBfseeko64()\fR and \fBftello64()\fR. Applications wishing to access large
-files should use \fBfseeko()\fR and \fBftello()\fR in place of \fBfseek()\fR
-and \fBftell()\fR. See the \fBfseek\fR(3C) and \fBftell\fR(3C) manual pages for
-information about \fBfseeko()\fR and \fBftello()\fR.
-.sp
-.LP
-Applications wishing to access \fBfseeko()\fR and \fBftello()\fR as well as
-the POSIX and X/Open specification-conforming interfaces should define the
-macro \fB_LARGEFILE_SOURCE\fR to be 1 and set whichever feature test macros are
-appropriate to obtain the desired environment (see \fBstandards\fR(5)).
-.SH EXAMPLES
-.sp
-.LP
-In the following examples, the large file compilation environment is accessed
-by invoking the \fBgetconf\fR utility with one of the arguments listed in the
-table above. The additional large file interfaces are accessed by specifying
-\fB-D_LARGEFILE_SOURCE\fR\&.
-.sp
-.LP
-The examples that use the form of command substitution specifying the command
-within parentheses preceded by a dollar sign can be executed only in a
-POSIX-conforming shell such as the Korn Shell (see \fBksh\fR(1)). In a shell
-that is not POSIX-conforming, such as the Bourne Shell (see \fBsh\fR(1)) and
-the C Shell (see \fBcsh\fR(1)), the \fBgetconf\fR calls must be enclosed within
-grave accent marks, as shown in the second example.
-.LP
-\fBExample 1 \fRCompile a program with a "large" \fBoff_t\fR that uses
-\fBfseeko()\fR, \fBftello()\fR, and \fByacc\fR.
-.sp
-.LP
-The following example compiles a program with a "large" \fBoff_t\fR and uses
-\fBfseeko()\fR, \fBftello()\fR, and \fByacc\fR(1).
-
-.sp
-.in +2
-.nf
-$ c89 -D_LARGEFILE_SOURCE \e
- -D_FILE_OFFSET_BITS=64 -o foo \e
- $(getconf LFS_CFLAGS) y.tab.c b.o \e
- $(getconf LFS_LDFLAGS) \e
- -ly $(getconf LFS_LIBS)
-.fi
-.in -2
-
-.LP
-\fBExample 2 \fRCompile a program with a "large" \fBoff_t\fR that does not use
-\fBfseeko()\fR and \fBftello()\fR and has no application specific libraries.
-.sp
-.in +2
-.nf
-% c89 -D_FILE_OFFSET_BITS=64 \e
- \(gagetconf LFS_CFLAGS\(ga a.c \e
- \(gagetconf LFS_LDFLAGS\(ga \e
- \(gagetconf LFS_LIBS\(ga \e
-.fi
-.in -2
-
-.LP
-\fBExample 3 \fRCompile a program with a "default" \fBoff_t\fR that uses
-\fBfseeko()\fR and \fBftello()\fR.
-.sp
-.in +2
-.nf
-$ c89 -D_LARGEFILE_SOURCE a.c
-.fi
-.in -2
-
-.SH SEE ALSO
-.sp
-.LP
-\fBcsh\fR(1), \fBgetconf\fR(1), \fBksh\fR(1), \fByacc\fR(1), \fBsh\fR(1),
-\fBfseek\fR(3C), \fBftell\fR(3C), \fBlf64\fR(5), \fBlfcompile64\fR(5),
-\fBstandards\fR(5)
-.SH NOTES
-.sp
-.LP
-Certain system-specific or non-portable interfaces are not usable in the large
-file compilation environment. Known cases are:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Kernel data structures read from \fB/dev/kmem\fR.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Interfaces in the kernel virtual memory library, \fB-lkvm\fR\&.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Interfaces in the \fBELF\fR access library, \fB-lelf\fR\&.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Interfaces to \fB/proc\fR defined in <\fBprocfs.h\fR>.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The \fBustat\fR(2) system call.
-.RE
-.sp
-.LP
-Programs that use these interfaces should not be compiled in the large file
-compilation environment. As a partial safeguard against making this mistake,
-including either of the <\fBlibelf.h\fR> or <\fBsys/procfs.h\fR> header files
-will induce a compilation error when the large file compilation environment is
-enabled.
-.sp
-.LP
-In general, caution should be exercised when using any separately-compiled
-library whose interfaces include data items of type \fBoff_t\fR or the other
-redefined types either directly or indirectly, such as with '\fBstruct
-stat\fR'. (The redefined types are \fBoff_t\fR, \fBrlim_t\fR, \fBino_t\fR,
-\fBblkcnt_t\fR, \fBfsblkcnt_t\fR, and \fBfsfilcnt_t\fR.) For the large file
-compilation environment to work correctly with such a library, the library
-interfaces must include the appropriate \fIxxx\fR\fB64()\fR binary entry points
-and must have them mapped to the corresponding primary functions when
-\fB_FILE_OFFSET_BITS\fR is set to 64.
-.sp
-.LP
-Care should be exercised using any of the \fBprintf()\fR or \fBscanf()\fR
-routines on variables of the types mentioned above. In the large file
-compilation environment, these variables should be printed or scanned using
-\fBlong long\fR formats.
-.SH BUGS
-.sp
-.LP
-Symbolic formats analogous to those found in \fB<sys/int_fmtio.h>\fR do not
-exist for printing or scanning variables of the types that are redefined in the
-large file compilation environment.
diff --git a/usr/src/man/man5/lfcompile64.5 b/usr/src/man/man5/lfcompile64.5
deleted file mode 100644
index 5a9b0635ca..0000000000
--- a/usr/src/man/man5/lfcompile64.5
+++ /dev/null
@@ -1,134 +0,0 @@
-'\" te
-.\" Copyright (c) 1996, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH LFCOMPILE64 5 "Jan 26, 1998"
-.SH NAME
-lfcompile64 \- transitional compilation environment
-.SH DESCRIPTION
-.sp
-.LP
-All 64-bit applications can manipulate large files by default. The transitional
-interfaces described on this page can be used by 32-bit and 64-bit applications
-to manipulate large files.
-.sp
-.LP
-In the transitional compilation environment, explicit 64-bit functions,
-structures, and types are added to the \fBAPI.\fR Compiling in this
-environment allows both 32-bit and 64-bit applications to access files whose
-size is greater than or equal to 2 Gbyte ( 2^31 bytes).
-.sp
-.LP
-The transitional compilation environment exports all the explicit 64-bit
-functions (\fIxxx\fR\fB64()\fR) and types in addition to all the regular
-functions (\fIxxx\fR\fB()\fR) and types. Both \fIxxx\fR\fB()\fR and
-\fIxxx\fR\fB64()\fR functions are available to the program source. A 32-bit
-application must use the \fIxxx\fR\fB64()\fR functions in order to access large
-files. See the \fBlf64\fR(5) manual page for a complete listing of the 64-bit
-transitional interfaces.
-.sp
-.LP
-The transitional compilation environment differs from the large file
-compilation environment, wherein the underlying interfaces are bound to 64-bit
-functions, structures, and types. An application compiled in the large file
-compilation environment is able to use the \fIxxx\fR\fB()\fR source interfaces
-to access both large and small files, rather than having to explicitly utilize
-the transitional \fIxxx\fR\fB64()\fR interface calls to access large files. See
-the \fBlfcompile\fR(5) manual page for more information regarding the large
-file compilation environment.
-.sp
-.LP
-Applications may combine objects produced in the large file compilation
-environment with objects produced in the transitional compilation environment,
-but must be careful with respect to interoperability between those objects.
-Applications should not declare global variables of types whose sizes change
-between compilation environments.
-.sp
-.LP
-For applications that do not wish to conform to the POSIX or X/Open
-specifications, the 64-bit transitional interfaces are available by default.
-No compile-time flags need to be set.
-.SS "Access to Additional Large File Interfaces"
-.sp
-.LP
-Applications that wish to access the transitional interfaces as well as the
-POSIX or X/Open specification-conforming interfaces should use the following
-compilation methods and set whichever feature test macros are appropriate to
-obtain the desired environment (see \fBstandards\fR(5)).
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Set the compile-time flag \fB_LARGEFILE64_SOURCE\fR to 1 before including any
-headers.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Use the \fBgetconf\fR(1) command with one or more of the following arguments:
-.RE
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-\fBargument\fR \fBpurpose\fR
-_
-\fBLFS64_CFLAGS\fR T{
-obtain compilation flags necessary to enable the transitional compilation environment
-T}
-\fBLFS64_LDFLAGS\fR obtain link editor options
-\fBLFS64_LIBS\fR obtain link library names
-\fBLFS64_LINTFLAGS\fR obtain lint options
-.TE
-
-.SH EXAMPLES
-.sp
-.LP
-In the following examples, the transitional compilation environment is accessed
-by invoking the \fBgetconf\fR utility with one of the arguments listed in the
-table above. The additional large file interfaces are accessed either by
-specifying \fB-D_LARGEFILE64_SOURCE\fR or by invoking the \fBgetconf\fR utility
-with the arguments listed above.
-.sp
-.LP
-The example that uses the form of command substitution specifying the command
-within parentheses preceded by a dollar sign can be executed only in a
-POSIX-conforming shell such as the Korn Shell (see \fBksh\fR(1)). In a shell
-that is not POSIX-conforming, such as the Bourne Shell (see \fBsh\fR(1)) and
-the C Shell (see \fBcsh\fR(1)), the command must be enclosed within grave
-accent marks.
-.LP
-\fBExample 1 \fRAn example of compiling a program using transitional
-interfaces such as \fBlseek64()\fR and \fBfopen64()\fR:
-.sp
-.in +2
-.nf
-$ c89 -D_LARGEFILE64_SOURCE \e
- $(getconf LFS64_CFLAGS) a.c \e
- $(getconf LFS64_LDFLAGS) \e
- $(getconf LFS64_LIBS)
-.fi
-.in -2
-
-.LP
-\fBExample 2 \fRAn example of running lint on a program using transitional
-interfaces:
-.sp
-.in +2
-.nf
-% lint -D_LARGEFILE64_SOURCE \e
- \(gagetconf LFS64_LINTFLAGS\(ga \&.\|.\|. \e
- \(gagetconf LFS64_LIBS\(ga
-.fi
-.in -2
-
-.SH SEE ALSO
-.sp
-.LP
-\fBgetconf\fR(1), \fBlseek\fR(2), \fBfopen\fR(3C), \fBlf64\fR(5),
-\fBstandards\fR(5)
diff --git a/usr/src/man/man5/loader.4th.5 b/usr/src/man/man5/loader.4th.5
deleted file mode 100644
index 6c9d20ed44..0000000000
--- a/usr/src/man/man5/loader.4th.5
+++ /dev/null
@@ -1,206 +0,0 @@
-.\" Copyright (c) 1999 Daniel C. Sobral
-.\" All rights reserved.
-.\"
-.\" Redistribution and use in source and binary forms, with or without
-.\" modification, are permitted provided that the following conditions
-.\" are met:
-.\" 1. Redistributions of source code must retain the above copyright
-.\" notice, this list of conditions and the following disclaimer.
-.\" 2. Redistributions in binary form must reproduce the above copyright
-.\" notice, this list of conditions and the following disclaimer in the
-.\" documentation and/or other materials provided with the distribution.
-.\"
-.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
-.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
-.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
-.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
-.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-.\" SUCH DAMAGE.
-.\"
-.Dd Apr 22, 2017
-.Dt LOADER.4TH 5
-.Os
-.Sh NAME
-.Nm loader.4th
-.Nd loader.conf processing tools
-.Sh DESCRIPTION
-The file that goes by the name of
-.Nm
-is a set of commands designed to manipulate
-.Xr loader.conf 4
-files.
-The default
-.Pa /boot/loader.rc
-includes
-.Nm
-and uses one of its commands to automatically read and process
-the standard
-.Xr loader.conf 4
-files.
-Other commands exists to help the user specify alternate
-configurations.
-.Pp
-The commands of
-.Nm
-by themselves are not enough for most uses.
-Please refer to the
-examples below for the most common situations, and to
-.Xr loader 5
-for additional commands.
-.Pp
-Before using any of the commands provided in
-.Nm ,
-it must be included
-through the command:
-.Pp
-.Dl include loader.4th
-.Pp
-This line is present in the default
-.Pa /boot/loader.rc
-file, so it is not needed (and should not be re-issued) in a normal setup.
-.Pp
-The commands provided by it are:
-.Bl -tag -width disable-module_module -compact -offset indent
-.It Ic boot
-.It Ic boot Ar kernelname Op Cm ...
-.It Ic boot Ar directory Op Cm ...
-.It Ic boot Fl flag Cm ...
-Boot as specified by the
-.Xr loader.conf 4
-files read.
-.Pp
-Depending on the arguments passed, it can override boot flags and
-either the kernel name or the search path for kernel and modules.
-.Pp
-.It Ic boot-conf
-.It Ic boot-conf Ar kernelname Op Cm ...
-.It Ic boot-conf Ar directory Op Cm ...
-.It Ic boot-conf Fl flag Cm ...
-Works like
-.Ic boot
-described above, but instead of booting immediately, uses
-.Ic autoboot ,
-so it can be stopped.
-.Pp
-.It Ic start
-Reads
-.Pa /boot/defaults/loader.conf ,
-all other
-.Xr loader.conf 4
-files specified in it, then loads the desired kernel and modules
-.Pq if not already loaded .
-After which you can use the
-.Ic boot
-or
-.Ic autoboot
-commands or simply exit (provided
-.Va autoboot_delay
-is not set to NO) to boot the system.
-.Ic start
-is the command used in the default
-.Pa /boot/loader.rc
-file
-.Pq see Xr loader 5 .
-.Pp
-.It Ic initialize
-Initialize the support library so commands can be used without executing
-.Ic start
-first.
-Like
-.Ic start ,
-it reads
-.Pa /boot/defaults/loader.conf
-and all other
-.Xr loader.conf 4
-files specified in it
-.Pq but does not load kernel or modules .
-Returns a flag on the stack to indicate
-if any configuration files were successfully loaded.
-.Pp
-.It Ic read-conf Ar filename
-Reads and processes a
-.Xr loader.conf 4
-file.
-Does not proceed to boot.
-.Pp
-.It Ic enable-module Ar module
-Enables the loading of
-.Ar module .
-.Pp
-.It Ic disable-module Ar module
-Disables the loading of
-.Ar module .
-.Pp
-.It Ic toggle-module Ar module
-Toggles the loading of
-.Ar module
-on and off.
-.Pp
-.It Ic show-module Ar module
-Shows the information gathered in the
-.Xr loader.conf 4
-files about the module
-.Ar module .
-.Pp
-.It Ic show-module-options
-Shows all modules defined in current
-.Xr loader.conf 4
-configuration.
-.Pp
-.It Ic retry
-Used inside
-.Xr loader.conf 4
-files to specify the action after a module loading fails.
-.Pp
-.It Ic ignore
-Used inside
-.Xr loader.conf 4
-files to specify the action after a module loading fails.
-.It Ic try-include Ar file Op Ar
-Process script files if they exist.
-Each file, in turn, is completely read into memory,
-and then each of its lines is passed to the command line interpreter.
-If any error is returned by the interpreter, the try-include
-command aborts immediately, without reading any other files, and
-silently returns without error.
-.El
-.Sh FILES
-.Bl -tag -width /boot/forth/loader.4th -compact
-.It Pa /boot/loader
-The
-.Xr loader 5 .
-.It Pa /boot/forth/loader.4th
-.Nm
-itself.
-.It Pa /boot/loader.rc
-.Xr loader 5
-bootstrapping script.
-.It Pa /boot/defaults/loader.conf
-File loaded by the
-.Ic start
-command.
-.El
-.Sh EXAMPLES
-Standard
-.Pa /boot/loader.rc :
-.Pp
-.Bd -literal -offset indent -compact
-include /boot/forth/loader.4th
-start
-.Ed
-.Pp
-Read an additional configuration file and then proceed to boot:
-.Pp
-.Bd -literal -offset indent -compact
-unload
-read-conf /boot/special.conf
-boot-conf
-.Ed
-.Sh SEE ALSO
-.Xr loader.conf 4 ,
-.Xr loader 5
diff --git a/usr/src/man/man5/loader.5 b/usr/src/man/man5/loader.5
deleted file mode 100644
index 4c8edf3d3f..0000000000
--- a/usr/src/man/man5/loader.5
+++ /dev/null
@@ -1,909 +0,0 @@
-.\" Copyright (c) 1999 Daniel C. Sobral
-.\" Copyright 2019 OmniOS Community Edition (OmniOSce) Association.
-.\" All rights reserved.
-.\"
-.\" Redistribution and use in source and binary forms, with or without
-.\" modification, are permitted provided that the following conditions
-.\" are met:
-.\" 1. Redistributions of source code must retain the above copyright
-.\" notice, this list of conditions and the following disclaimer.
-.\" 2. Redistributions in binary form must reproduce the above copyright
-.\" notice, this list of conditions and the following disclaimer in the
-.\" documentation and/or other materials provided with the distribution.
-.\"
-.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
-.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
-.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
-.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
-.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-.\" SUCH DAMAGE.
-.\"
-.Dd January 25, 2022
-.Dt LOADER 5
-.Os
-.Sh NAME
-.Nm loader
-.Nd kernel bootstrapping final stage
-.Sh DESCRIPTION
-The
-.Nm
-is the final stage of
-.Nm illumos Ns 's
-kernel bootstrapping process.
-The actual name for the stage depends on the platform.
-On IA32 (i386) architectures with BIOS firmware, it is a
-.Pa BTX
-client and named
-.Nm loader .
-It is linked statically to libstand and usually located in the directory
-.Pa /boot .
-.Pp
-.Nm
-supports booting from
-.Cm ZFS ,
-.Cm UFS ,
-.Cm PCFS ,
-.Cm HSFS
-and
-.Cm NFS
-file systems.
-Additionally,
-.Nm
-can load files from the
-.Cm TFTP
-file service.
-The NFS and TFTP based boot is enabled via
-.Xr pxeboot 5 .
-The
-.Nm
-also does support uncompressing gzip files while reading.
-The uncompression will happen automatically if the compressed file is stored
-without .gz suffix or if the file is accessed by leaving out the .gz suffix from
-the name.
-If the file is referred by full name, including .gz suffix, then the file
-content is read as is and the uncompression is not performed.
-.Pp
-.Nm
-provides a scripting language that can be used to
-automate tasks, do pre-configuration or assist in recovery
-procedures.
-This scripting language is roughly divided in
-two main components.
-The smaller one is a set of commands
-designed for direct use by the casual user, called "builtin
-commands" for historical reasons.
-The main drive behind these commands is user-friendliness.
-The bigger component is an
-.Tn ANS
-Forth compatible Forth interpreter based on FICL, by
-.An John Sadler .
-.Pp
-During initialization,
-.Nm
-will probe for a console and set the
-.Va console
-variable, or set it to serial console
-.Pq Do Li ttya Dc - Dq Li ttyd
-if the previous boot stage used that.
-If multiple consoles are selected, they will be listed separated by commas.
-Then, devices are probed,
-.Va currdev
-and
-.Va loaddev
-are set, and
-.Va screen-#cols ,
-.Va screen-#rows ,
-and
-.Va ISADIR
-are set.
-Next,
-.Tn FICL
-is initialized, the builtin words are added to its vocabulary.
-The inner interpreter
-.Nm
-will use with
-.Tn FICL
-is then set to
-.Ic interpret ,
-which is
-.Tn FICL Ns 's
-default.
-After that,
-.Pa /boot/loader.rc
-is processed if available.
-These files are processed through the
-.Ic include
-command, which reads all of them into memory before processing them,
-making disk changes possible.
-.Pp
-At this point, if an
-.Ic autoboot
-has not been tried, and if
-.Va autoboot_delay
-is not set to
-.Dq Li NO
-(not case sensitive), then an
-.Ic autoboot
-will be tried.
-If the system gets past this point,
-.Va prompt
-will be set and
-.Nm
-will engage interactive mode.
-Please note that historically even when
-.Va autoboot_delay
-is set to
-.Dq Li 0
-user will be able to interrupt autoboot process by pressing some key
-on the console while kernel and modules are being loaded.
-In some
-cases such behaviour may be undesirable, to prevent it set
-.Va autoboot_delay
-to
-.Dq Li -1 ,
-in this case
-.Nm
-will engage interactive mode only if
-.Ic autoboot
-has failed.
-.Ss Builtin Commands
-In
-.Nm ,
-builtin commands take parameters from the command line.
-If an error condition occurs, an exception will be generated,
-which can be intercepted using
-.Tn ANS
-Forth exception handling
-words.
-If not intercepted, an error message will be displayed and
-the interpreter's state will be reset, emptying the stack and restoring
-interpreting mode.
-.Pp
-The builtin commands available are:
-.Pp
-.Bl -tag -width Ds -compact
-.It Ic autoboot Op Ar seconds Op Ar prompt
-Proceeds to bootstrap the system after a number of seconds, if not
-interrupted by the user.
-Displays a countdown prompt
-warning the user the system is about to be booted,
-unless interrupted by a key press.
-The kernel will be loaded first if necessary.
-Defaults to 10 seconds.
-.Pp
-.It Ic bcachestat
-Displays statistics about disk cache usage.
-For debugging only.
-.Pp
-.It Ic boot
-.It Ic boot Ar kernelname Op Cm ...
-.It Ic boot Fl flag Cm ...
-Immediately proceeds to bootstrap the system, loading the kernel
-if necessary.
-Any flags or arguments are passed to the kernel, but they
-must precede the kernel name, if a kernel name is provided.
-.Pp
-.Em WARNING :
-The behavior of this builtin is changed if
-.Xr loader.4th 5
-is loaded.
-.Pp
-.It Ic chain Ar device
-Chain load another boot loader from the specified device.
-Device can be either disk name or partition.
-.Pp
-.It Ic echo Xo
-.Op Fl n
-.Op Aq message
-.Xc
-Displays text on the screen.
-A new line will be printed unless
-.Fl n
-is specified.
-.Pp
-.It Ic heap
-Displays memory usage statistics.
-For debugging purposes only.
-.Pp
-.It Ic help Op topic Op subtopic
-Shows help messages read from
-.Pa /boot/loader.help .
-The special topic
-.Em index
-will list the topics available.
-.Pp
-.It Ic include Ar file Op Ar
-Process script files.
-Each file, in turn, is completely read into memory,
-and then each of its lines is passed to the command line interpreter.
-If any error is returned by the interpreter, the include
-command aborts immediately, without reading any other files, and
-returns an error itself (see
-.Sx ERRORS ) .
-.Pp
-.It Ic load Xo
-.Op Fl t Ar type
-.Ar file Cm ...
-.Xc
-Loads a kernel or file of opaque contents tagged as being of the type
-.Ar type .
-Kernel and modules can be either in a.out or ELF format.
-Any arguments passed after the name of the file to be loaded
-will be passed as arguments to that file.
-.Pp
-.It Ic ls Xo
-.Op Fl l
-.Op Ar path
-.Xc
-Displays a listing of files in the directory
-.Ar path ,
-or the root directory if
-.Ar path
-is not specified.
-If
-.Fl l
-is specified, file sizes will be shown too.
-.Pp
-.It Ic lsdev Op Fl v
-Lists all of the devices from which it may be possible to load modules.
-In addition to disks and partitions, ZFS pools are also listed.
-If
-.Fl v
-is specified, more details are printed.
-For ZFS pools the output resembles
-.Nm zpool Cm status
-output.
-.Pp
-.It Ic lsmod Op Fl v
-Displays loaded modules.
-If
-.Fl v
-is specified, more details are shown.
-.Pp
-.It Ic lszfs Ar filesystem
-A ZFS extended command that can be used to explore the ZFS filesystem
-hierarchy in a pool.
-Lists the immediate children of the
-.Ar filesystem .
-The filesystem hierarchy is rooted at a filesystem with the same name
-as the pool.
-.Pp
-.It Ic more Ar file Op Ar
-Display the files specified, with a pause at each
-.Va screen-#rows
-displayed.
-.Pp
-.It Ic read Xo
-.Op Fl t Ar seconds
-.Op Fl p Ar prompt
-.Op Va variable
-.Xc
-Reads a line of input from the terminal, storing it in
-.Va variable
-if specified.
-A timeout can be specified with
-.Fl t ,
-though it will be canceled at the first key pressed.
-A prompt may also be displayed through the
-.Fl p
-flag.
-.Pp
-.It Ic reboot
-Immediately reboots the system.
-.Pp
-.It Ic set Ar variable
-.It Ic set Ar variable Ns = Ns Ar value
-Set loader's environment variables.
-.Pp
-.It Ic show Op Va variable
-Displays the specified variable's value, or all variables and their
-values if
-.Va variable
-is not specified.
-.Pp
-.It Ic unload
-Remove all modules from memory.
-.Pp
-.It Ic unset Va variable
-Removes
-.Va variable
-from the environment.
-.Pp
-.It Ic \&?
-Lists available commands.
-.El
-.Ss ZFS Features
-.Nm
-supports the following format for specifying ZFS filesystems which
-can be used wherever
-.Nm
-refers to a device specification:
-.Pp
-.Ar zfs:pool/filesystem:
-.Pp
-where
-.Pa pool/filesystem
-is a ZFS filesystem name as described in
-.Xr zfs 1M .
-.Ss Builtin Environment Variables
-The
-.Nm
-has actually two different kinds of
-.Sq environment
-variables.
-There are ANS Forth's
-.Em environmental queries ,
-and a separate space of environment variables used by builtins, which
-are not directly available to Forth words.
-It is the latter type that this section covers.
-.Pp
-Environment variables can be set and unset through the
-.Ic set
-and
-.Ic unset
-builtins, and can have their values interactively examined through the
-use of the
-.Ic show
-builtin.
-Their values can also be accessed as described in
-.Sx BUILTIN PARSER .
-.Pp
-Notice that these environment variables are not inherited by any shell
-after the system has been booted.
-.Pp
-A few variables are set automatically by
-.Nm .
-Others can affect the behavior of either
-.Nm
-or the kernel at boot.
-Some options may require a value,
-while others define behavior just by being set.
-Both types of builtin variables are described below.
-.Bl -tag -width bootfile
-.It Va autoboot_delay
-Number of seconds
-.Ic autoboot
-will wait before booting.
-If this variable is not defined,
-.Ic autoboot
-will default to 10 seconds.
-.Pp
-If set to
-.Dq Li NO ,
-no
-.Ic autoboot
-will be automatically attempted after processing
-.Pa /boot/loader.rc ,
-though explicit
-.Ic autoboot Ns 's
-will be processed normally, defaulting to 10 seconds delay.
-.Pp
-If set to
-.Dq Li 0 ,
-no delay will be inserted, but user still will be able to interrupt
-.Ic autoboot
-process and escape into the interactive mode by pressing some key
-on the console while kernel and
-modules are being loaded.
-.Pp
-If set to
-.Dq Li -1 ,
-no delay will be inserted and
-.Nm
-will engage interactive mode only if
-.Ic autoboot
-has failed for some reason.
-.It Va boot_ask
-Will set
-.Xr kernel 1M
-.Fl a
-option.
-.It Va boot_debug
-Will set
-.Xr kernel 1M
-.Fl d
-option.
-.It Va boot_kmdb
-Will set
-.Xr kernel 1M
-.Fl k
-option.
-.It Va boot_reconfigure
-Will set
-.Xr kernel 1M
-.Fl r
-option.
-.It Va boot_single
-Will set
-.Xr kernel 1M
-.Fl s
-option.
-.It Va boot_verbose
-Will set
-.Xr kernel 1M
-.Fl v
-option.
-.It Va boot-args
-Will set custom arguments for the kernel.
-If set in
-.Nm
-configuration, the
-.Nm
-startup will parse the
-.Va boot-args
-value to set boot prefixed variables listed above, any unrecognized options
-are added to kernel command line verbatim.
-.It Va bootfile
-The name of the kernel.
-.It Va console
-Defines the current console or consoles.
-Multiple consoles may be specified.
-In that case, the first listed console will become the default console for
-the
-.Xr kernel 1M .
-.It Va currdev
-Selects the default device.
-Syntax for devices is odd.
-.It Va interpret
-Has the value
-.Dq Li ok
-if the Forth's current state is interpreting.
-.It Va screen-#rows
-Define the number of lines on the screen, to be used by the pager.
-.It Va module_path
-Sets the list of directories which will be searched for modules
-named in a load command or implicitly required by a dependency.
-The default value for this variable is
-.Dq Li /platform/i86pc/${ISADIR}
-.It Va prompt
-Value of
-.Nm Ns 's
-prompt.
-Defaults to
-.Dq Li "${interpret}" .
-If variable
-.Va prompt
-is unset, the default prompt is
-.Ql > .
-.It Va os_console
-If set, the value is used to set
-.Xr kernel 1M
-.Va console
-property.
-.El
-.Pp
-Other variables are used for loader or to set kernel properties or for
-informational purposes.
-.Ss Builtin Parser
-When a builtin command is executed, the rest of the line is taken
-by it as arguments, and it is processed by a special parser which
-is not used for regular Forth commands.
-.Pp
-This special parser applies the following rules to the parsed text:
-.Bl -enum
-.It
-All backslash characters are preprocessed.
-.Bl -bullet
-.It
-\eb , \ef , \er , \en and \et are processed as in C.
-.It
-\es is converted to a space.
-.It
-\ev is converted to
-.Tn ASCII
-11.
-.It
-\ez is just skipped.
-Useful for things like
-.Dq \e0xf\ez\e0xf .
-.It
-\e0xN and \e0xNN are replaced by the hex N or NN.
-.It
-\eNNN is replaced by the octal NNN
-.Tn ASCII
-character.
-.It
-\e" , \e' and \e$ will escape these characters, preventing them from
-receiving special treatment in Step 2, described below.
-.It
-\e\e will be replaced with a single \e .
-.It
-In any other occurrence, backslash will just be removed.
-.El
-.It
-Every string between non-escaped quotes or double-quotes will be treated
-as a single word for the purposes of the remaining steps.
-.It
-Replace any
-.Li $VARIABLE
-or
-.Li ${VARIABLE}
-with the value of the environment variable
-.Va VARIABLE .
-.It
-Space-delimited arguments are passed to the called builtin command.
-Spaces can also be escaped through the use of \e\e .
-.El
-.Pp
-An exception to this parsing rule exists, and is described in
-.Sx Builtins And FORTH .
-.Ss Builtins And FORTH
-All builtin words are state-smart, immediate words.
-If interpreted, they behave exactly as described previously.
-If they are compiled, though,
-they extract their arguments from the stack instead of the command line.
-.Pp
-If compiled, the builtin words expect to find, at execution time, the
-following parameters on the stack:
-.D1 Ar addrN lenN ... addr2 len2 addr1 len1 N
-where
-.Ar addrX lenX
-are strings which will compose the command line that will be parsed
-into the builtin's arguments.
-Internally, these strings are concatenated in from 1 to N,
-with a space put between each one.
-.Pp
-If no arguments are passed, a 0
-.Em must
-be passed, even if the builtin accepts no arguments.
-.Pp
-While this behavior has benefits, it has its trade-offs.
-If the execution token of a builtin is acquired (through
-.Ic '
-or
-.Ic ['] ) ,
-and then passed to
-.Ic catch
-or
-.Ic execute ,
-the builtin behavior will depend on the system state
-.Bf Em
-at the time
-.Ic catch
-or
-.Ic execute
-is processed!
-.Ef
-This is particularly annoying for programs that want or need to
-handle exceptions.
-In this case, the use of a proxy is recommended.
-For example:
-.Dl : (boot) boot ;
-.Ss FICL
-.Tn FICL
-is a Forth interpreter written in C, in the form of a forth
-virtual machine library that can be called by C functions and vice
-versa.
-.Pp
-In
-.Nm ,
-each line read interactively is then fed to
-.Tn FICL ,
-which may call
-.Nm
-back to execute the builtin words.
-The builtin
-.Ic include
-will also feed
-.Tn FICL ,
-one line at a time.
-.Pp
-The words available to
-.Tn FICL
-can be classified into four groups.
-The
-.Tn ANS
-Forth standard words, extra
-.Tn FICL
-words, extra
-.Fx
-words, and the builtin commands;
-the latter were already described.
-The
-.Tn ANS
-Forth standard words are listed in the
-.Sx STANDARDS
-section.
-The words falling in the two other groups are described in the
-following subsections.
-.Ss FICL Extra Words
-.Bl -tag -width wid-set-super
-.It Ic .env
-.It Ic .ver
-.It Ic -roll
-.It Ic 2constant
-.It Ic >name
-.It Ic body>
-.It Ic compare
-This is the STRING word set's
-.Ic compare .
-.It Ic compile-only
-.It Ic endif
-.It Ic forget-wid
-.It Ic parse-word
-.It Ic sliteral
-This is the STRING word set's
-.Ic sliteral .
-.It Ic wid-set-super
-.It Ic w@
-.It Ic w!
-.It Ic x.
-.It Ic empty
-.It Ic cell-
-.It Ic -rot
-.El
-.Ss Loader Extra Words
-.Bl -tag -width XXXXXXXX
-.It Ic \&$ Pq --
-Evaluates the remainder of the input buffer, after having printed it first.
-.It Ic \&% Pq --
-Evaluates the remainder of the input buffer under a
-.Ic catch
-exception guard.
-.It Ic .#
-Works like
-.Ic \&.
-but without outputting a trailing space.
-.It Ic fclose Pq Ar fd --
-Closes a file.
-.It Ic fkey Pq Ar fd -- char
-Reads a single character from a file.
-.It Ic fload Pq Ar fd --
-Processes a file
-.Em fd .
-.It Ic fopen Pq Ar addr len mode Li -- Ar fd
-Opens a file.
-Returns a file descriptor, or \-1 in case of failure.
-The
-.Ar mode
-parameter selects whether the file is to be opened for read access, write
-access, or both.
-The constants
-.Dv O_RDONLY , O_WRONLY ,
-and
-.Dv O_RDWR
-are defined in
-.Pa /boot/forth/support.4th ,
-indicating read only, write only, and read-write access, respectively.
-.It Xo
-.Ic fread
-.Pq Ar fd addr len -- len'
-.Xc
-Tries to read
-.Em len
-bytes from file
-.Em fd
-into buffer
-.Em addr .
-Returns the actual number of bytes read, or -1 in case of error or end of
-file.
-.It Ic heap? Pq -- Ar cells
-Return the space remaining in the dictionary heap, in cells.
-This is not related to the heap used by dynamic memory allocation words.
-.It Ic inb Pq Ar port -- char
-Reads a byte from a port.
-.It Ic isvirtualized? Pq -- Ar addr len flag | Ar flag
-Returns
-.Ic true
-and string with virtualization engine name or
-.Ic false .
-.It Ic key Pq -- Ar char
-Reads a single character from the console.
-.It Ic key? Pq -- Ar flag
-Returns
-.Ic true
-if there is a character available to be read from the console.
-.It Ic ms Pq Ar u --
-Waits
-.Em u
-microseconds.
-.It Ic outb Pq Ar port char --
-Writes a byte to a port.
-.It Ic seconds Pq -- Ar u
-Returns the number of seconds since midnight.
-.It Ic tib> Pq -- Ar addr len
-Returns the remainder of the input buffer as a string on the stack.
-.El
-.Ss Loader Extra Framebuffer Words
-.Bl -tag -width XXXXXXXX
-.It Ic fb-bezier Pq Ar x1 y1 x2 y2 x3 y3 width --
-Draws a quadratic Bezier curve in the current foreground color using the
-three provided points and specified line with.
-.It Ic fb-drawrect Pq Ar x1 y1 x2 y2 fill --
-Draws a rectangle to the screen with the top left at
-.Em (x1,y1)
-and the bottom right at
-.Em (x2,y2)
-, using the current foreground color.
-If
-.Em fill
-is
-.Ic true
-then the rectangle will be filled in.
-.It Ic fb-line Pq Ar x1 y1 x2 y2 width --
-Draws a line from
-.Em (x1,y1)
-to
-.Em (x2,y2)
-in the current foreground color and with the specified width.
-.It Ic fb-putimage Pq Ar flags x1 y1 x2 y2 addr len -- flag
-Outputs an image to the screen.
-Returns
-.Ic true
-if the image was able to be written and
-.Ic false
-otherwise.
-Only truecolor PNG images are supported and the path to the file
-must be provided through the
-.Em addr
-and
-.Em len
-arguments on the stack.
-The image will be displayed in the rectangular screen region with the top left
-at
-.Em (x1,y1)
-and the bottom right at
-.Em (x2,y2)
-.
-.Pp
-Either
-.Em x2
-or
-.Em y2
-can be set to "0" which causes it to be calculated to maintain the aspect
-ratio of the image.
-If both are "0" then the native resolution of the image will be used.
-.Pp
-If
-.Em x1
-is "0", then the image will be placed as far over to the right of the
-screen as possible.
-Similarly, if
-.Em y1
-is "0", then the image will be placed as far down the screen as possible.
-.Pp
-Flags is a bitfield; the following bits are defined:
-.Bl -tag -width XXXXX -offset indent
-.It 1
-Draw a single pixel border around the image in the current foreground color.
-.It 2
-Do not scroll the image with the rest of the screen.
-.It 128
-Output diagnostic information (for debugging).
-.El
-.It Ic fb-setpixel Pq Ar x y --
-Colors the pixel at
-.Em (x,y)
-with the current foreground color.
-.It Ic term-drawrect Pq Ar x1 y1 x2 y2 --
-Draws a rectangle with rounded corners using terminal coordinates and the
-current foreground color.
-.El
-.Ss Loader Defined Environmental Queries
-.Bl -tag -width Ds
-.It arch-i386
-.Ic TRUE
-if the architecture is IA32.
-.It loader_version
-.Nm
-version.
-.El
-.Ss Errors
-The following values are thrown by
-.Nm :
-.Bl -tag -width XXXXX -offset indent
-.It 100
-Any type of error in the processing of a builtin.
-.It -1
-.Ic Abort
-executed.
-.It -2
-.Ic Abort"
-executed.
-.It -56
-.Ic Quit
-executed.
-.It -256
-Out of interpreting text.
-.It -257
-Need more text to succeed -- will finish on next run.
-.It -258
-.Ic Bye
-executed.
-.It -259
-Unspecified error.
-.El
-.Sh FILES
-.Bl -tag -width /boot/defaults/loader.conf -compact
-.It Pa /boot/defaults/loader.conf
-.It Pa /boot/conf.d/*
-.It Pa /boot/loader.conf
-.It Pa /boot/loader.conf.local
-.Nm
-configuration files, as described in
-.Xr loader.conf 4 .
-.It Pa /boot/loader.help
-Loaded by
-.Ic help .
-Contains the help messages.
-.It Pa /boot/loader.rc
-.Nm
-bootstrapping script.
-.It Pa /boot/forth/loader.4th
-Extra builtin-like words.
-.It Pa /boot/forth/support.4th
-.Pa loader.conf
-processing words.
-.It Pa /boot/loader
-.Nm
-itself.
-.El
-.Sh EXAMPLES
-Boot in single user mode:
-.Pp
-.Dl boot -s
-.Pp
-Load the kernel, a boot_archive, and then autoboot in five seconds.
-Notice that a kernel must be loaded before any other
-.Ic load
-command is attempted.
-.Bd -literal -offset indent
-load /platform/i86pc/kernel/amd64/unix
-load -t rootfs /platform/i86pc/amd64/boot_archive
-autoboot 5
-.Ed
-.Pp
-Set the default device used for loading a kernel from a ZFS filesystem:
-.Bd -literal -offset indent
-set currdev=zfs:rpool/ROOT/knowngood:
-.Ed
-.Sh NOTES
-Although setting the
-.Va currdev
-as shown in the example above is supported, it is advisable to use loader
-beadm command or boot environment menu instead.
-The reason is, the beadm or menu selection will also instruct loader to clean up
-the currently set configuration and load configuration from the new boot
-environment.
-.Sh SEE ALSO
-.Xr boot 1M ,
-.Xr btxld 1onbld ,
-.Xr loader.conf 4
-.Sh STANDARDS
-For the purposes of ANS Forth compliance, loader is an
-.Bf Em
-ANS Forth System with Environmental Restrictions, Providing
-.Ef
-.Bf Li
-.No .( ,
-.No :noname ,
-.No ?do ,
-parse, pick, roll, refill, to, value, \e, false, true,
-.No <> ,
-.No 0<> ,
-compile\&, , erase, nip, tuck
-.Ef
-.Em and
-.Li marker
-.Bf Em
-from the Core Extensions word set, Providing the Exception Extensions
-word set, Providing the Locals Extensions word set, Providing the
-Memory-Allocation Extensions word set, Providing
-.Ef
-.Bf Li
-\&.s,
-bye, forget, see, words,
-\&[if],
-\&[else]
-.Ef
-.Em and
-.Li [then]
-.Bf Em
-from the Programming-Tools extension word set, Providing the
-Search-Order extensions word set.
-.Ef
diff --git a/usr/src/man/man5/loader.conf.5 b/usr/src/man/man5/loader.conf.5
new file mode 100644
index 0000000000..379327df88
--- /dev/null
+++ b/usr/src/man/man5/loader.conf.5
@@ -0,0 +1,249 @@
+.\" Copyright (c) 1999 Daniel C. Sobral
+.\" All rights reserved.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\" notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\" notice, this list of conditions and the following disclaimer in the
+.\" documentation and/or other materials provided with the distribution.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+.\" SUCH DAMAGE.
+.\"
+.Dd Nov 26, 2017
+.Dt LOADER.CONF 5
+.Os
+.Sh NAME
+.Nm loader.conf
+.Nd "system bootstrap configuration information"
+.Sh SYNOPSIS
+.Nm /boot/loader.conf
+.Sh DESCRIPTION
+The file
+.Nm
+contains descriptive information on bootstrapping the system.
+Through
+it you can specify the kernel to be booted, parameters to be passed to
+it, and additional modules to be loaded; and generally set all variables
+described in
+.Xr loader 7 .
+.Pp
+Loader implements set of builtin commands and functions and script
+interpreter as standalone binary program.
+When starting, the loader will read the file
+.Pa /boot/loader.rc
+as initialization and startup script, to include other support files
+and to read the configuration, describing current boot environment.
+All loader scripts and configuration files are located in the
+.Pa /boot
+directory tree.
+.Pp
+The file
+.Pa /boot/loader.rc
+must contain the following two lines for
+.Nm
+to be automatically processed:
+.Pp
+.Dl include /boot/forth/loader.4th
+.Dl start
+.Pp
+The default
+.Pa /boot/loader.rc
+is provided by the operating system and may be replaced on operating
+system update.
+The local updates are advised to be added into the
+.Pa /boot/loader.rc.local
+.Pp
+The configuration variables are read from the following files:
+.Bl -tag -width Ar
+.It Ar /boot/solaris/bootenv.rc
+Managed by the
+.Xr eeprom 8
+command.
+.It Ar /boot/defaults/loader.conf
+Loader defaults provided by the operating system.
+.It Ar /boot/loader.conf
+System specific loader configuration.
+May be provided by the operating system.
+.It Ar /boot/loader.conf.local
+User editable loader configuration.
+.It Ar /boot/conf.d/*
+User editable loader configuration snippets.
+The files are processed in lexicographical order.
+The configuration snippets mechanism is not available in case of TFTP boot as
+TFTP does not provide the directory list.
+.It Ar /boot/transient.conf
+Configuration file for transient boot.
+This file is created by the
+.Xr reboot 8
+command and is automatically removed when system is reaching the multi-user
+run level.
+.El
+.Pp
+The configuration is processed in the order listed above.
+.Ss SYNTAX
+The general parsing rules are:
+.Bl -bullet
+.It
+Spaces and empty lines are ignored.
+.It
+A # sign will mark the remainder of the line as a comment.
+.It
+Only one setting can be present on each line.
+.El
+.Pp
+All settings have the following format:
+.Pp
+.Dl variable="value"
+.Pp
+Unless it belongs to one of the classes of settings that receive special
+treatment, a setting will set the value of a
+.Xr loader 7
+environment variable.
+The settings that receive special
+treatment are listed below.
+Settings beginning with
+.Qq *
+below define the modules to be loaded and
+may have any prefix; the prefix identifies a module.
+All such settings sharing a common
+prefix refer to the same module.
+.Bl -tag -width Ar
+.It Ar exec
+Immediately executes a
+.Xr loader 7
+command.
+This type of setting cannot be processed by programs other
+than
+.Xr loader 7 ,
+so its use should be avoided.
+Multiple instances of it will be processed
+independently.
+.It Ar loader_conf_files
+Defines additional configuration files to be processed right after the
+present file.
+.It Ar kernel
+Name of the kernel to be loaded.
+If no kernel name is set, no additional
+modules will be loaded.
+.It Ar boot-args
+Flags to be passed to the kernel.
+.It Ar password
+Protect boot menu with a password without interrupting
+.Ic autoboot
+process.
+The password should be in clear text format.
+If a password is set, boot menu will not appear until any key is pressed during
+countdown period specified by
+.Va autoboot_delay
+variable or
+.Ic autoboot
+process fails.
+In both cases user should provide specified password to be able to access boot
+menu.
+.It Ar bootlock_password
+Provides a password to be required by check-password before execution is
+allowed to continue.
+The password should be in clear text format.
+If a password is set, the user must provide specified password to boot.
+.It Ar verbose_loading
+If set to
+.Dq YES ,
+module names will be displayed as they are loaded.
+.It Ar *_load
+If set to
+.Dq YES ,
+that module will be loaded.
+If no name is defined (see below), the
+module's name is taken to be the same as the prefix.
+.It Ar *_name
+Defines the name of the module.
+.It Ar *_type
+Defines the module's type.
+If none is given, it defaults to a kld module.
+.It Ar *_flags
+Flags and parameters to be passed to the module.
+.It Ar *_before
+Commands to be executed before the module is loaded.
+Use of this setting
+should be avoided.
+.It Ar *_after
+Commands to be executed after the module is loaded.
+Use of this setting
+should be avoided.
+.It Ar *_error
+Commands to be executed if the loading of a module fails.
+Except for the
+special value
+.Dq abort ,
+which aborts the bootstrap process, use of this setting should be avoided.
+.El
+.Ss DEFAULT SETTINGS
+Most of
+.Nm Ns 's
+default settings can be ignored.
+The few of them which are important
+or useful are:
+.Bl -tag -width bootfile -offset indent
+.It Va console
+.Pq Dq text
+.Dq ttya
+-
+.Dq ttyd
+selects serial console,
+.Dq text
+selects the video console,
+.Dq nullconsole
+selects a mute console
+(useful for systems with neither a video console nor a serial port), and
+.Dq spinconsole
+selects the video console which prevents any input and hides all output
+replacing it with
+.Dq spinning
+character (useful for embedded products and such).
+.It Va kernel
+.Pq Dq i86pc/kernel/${ISADIR}
+.Ar /platform
+sub-directory containing kernel
+.It Va loader_conf_files
+.Pq Dq Pa /boot/loader.conf /boot/loader.conf.local
+.It Va beastie_disable
+If set to
+.Dq YES ,
+the beastie boot menu will be skipped.
+The beastie boot menu is always skipped if running non-x86 hardware.
+.It Va loader_logo Pq Dq Li illumos
+Selects a desired logo in the beastie boot menu.
+Possible values depend on distribution;
+.Dq Li none
+will disable the logo.
+.It Va loader_color
+If set to
+.Dq NO ,
+the beastie boot menu will be displayed without ANSI coloring.
+.El
+.Sh SEE ALSO
+.Xr loader 7 ,
+.Xr loader.4th 7 ,
+.Xr boot 8 ,
+.Xr eeprom 8
+.Sh NOTES
+The
+.Xr loader 7
+stops reading
+.Nm
+when it encounters a syntax error, so any options which are vital for
+booting a particular system should precede any experimental additions to
+.Nm .
diff --git a/usr/src/man/man5/locale.5 b/usr/src/man/man5/locale.5
deleted file mode 100644
index e6d63073aa..0000000000
--- a/usr/src/man/man5/locale.5
+++ /dev/null
@@ -1,2448 +0,0 @@
-.\"
-.\" Sun Microsystems, Inc. gratefully acknowledges The Open Group for
-.\" permission to reproduce portions of its copyrighted documentation.
-.\" Original documentation from The Open Group can be obtained online at
-.\" http://www.opengroup.org/bookstore/.
-.\"
-.\" The Institute of Electrical and Electronics Engineers and The Open
-.\" Group, have given us permission to reprint portions of their
-.\" documentation.
-.\"
-.\" In the following statement, the phrase ``this text'' refers to portions
-.\" of the system documentation.
-.\"
-.\" Portions of this text are reprinted and reproduced in electronic form
-.\" in the SunOS Reference Manual, from IEEE Std 1003.1, 2004 Edition,
-.\" Standard for Information Technology -- Portable Operating System
-.\" Interface (POSIX), The Open Group Base Specifications Issue 6,
-.\" Copyright (C) 2001-2004 by the Institute of Electrical and Electronics
-.\" Engineers, Inc and The Open Group. In the event of any discrepancy
-.\" between these versions and the original IEEE and The Open Group
-.\" Standard, the original IEEE and The Open Group Standard is the referee
-.\" document. The original Standard can be obtained online at
-.\" http://www.opengroup.org/unix/online.html.
-.\"
-.\" This notice shall appear on any product containing this material.
-.\"
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.\"
-.\"
-.\" Copyright (c) 1992, X/Open Company Limited. All Rights Reserved.
-.\" Portions Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved.
-.\"
-.TH LOCALE 5 "May 16, 2020"
-.SH NAME
-locale \- subset of a user's environment that depends on language and cultural
-conventions
-.SH DESCRIPTION
-A \fBlocale\fR is the definition of the subset of a user's environment that
-depends on language and cultural conventions. It is made up from one or more
-categories. Each category is identified by its name and controls specific
-aspects of the behavior of components of the system. Category names correspond
-to the following environment variable names:
-.sp
-.ne 2
-.na
-\fB\fBLC_CTYPE\fR\fR
-.ad
-.RS 15n
-Character classification and case conversion.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBLC_COLLATE\fR\fR
-.ad
-.RS 15n
-Collation order.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBLC_TIME\fR\fR
-.ad
-.RS 15n
-Date and time formats.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBLC_NUMERIC\fR\fR
-.ad
-.RS 15n
-Numeric formatting.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBLC_MONETARY\fR\fR
-.ad
-.RS 15n
-Monetary formatting.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBLC_MESSAGES\fR\fR
-.ad
-.RS 15n
-Formats of informative and diagnostic messages and interactive responses.
-.RE
-
-.sp
-.LP
-The standard utilities base their behavior on the current locale, as defined
-in the ENVIRONMENT VARIABLES section for each utility. The behavior of some of
-the C-language functions will also be modified based on the current locale, as
-defined by the last call to \fBsetlocale\fR(3C).
-.sp
-.LP
-Locales other than those supplied by the implementation can be created by the
-application via the \fBlocaledef\fR(1) utility. The value that is used to
-specify a locale when using environment variables will be the string specified
-as the \fIname\fR operand to \fBlocaledef\fR when the locale was created. The
-strings "C" and "POSIX" are reserved as identifiers for the POSIX locale.
-.sp
-.LP
-Applications can select the desired locale by invoking the \fBsetlocale()\fR
-function with the appropriate value. If the function is invoked with an empty
-string, such as:
-.sp
-.in +2
-.nf
-setlocale(LC_ALL, "");
-.fi
-.in -2
-
-.sp
-.LP
-the value of the corresponding environment variable is used. If the environment
-variable is unset or is set to the empty string, the \fBsetlocale()\fR
-function sets the appropriate environment.
-.SS "Locale Definition"
-Locales can be described with the file format accepted by the \fBlocaledef\fR
-utility.
-.sp
-.LP
-The locale definition file must contain one or more locale category source
-definitions, and must not contain more than one definition for the same locale
-category.
-.sp
-.LP
-A category source definition consists of a category header, a category body and
-a category trailer. A category header consists of the character string naming
-of the category, beginning with the characters \fBLC_\fR. The category trailer
-consists of the string \fBEND\fR, followed by one or more blank characters and
-the string used in the corresponding category header.
-.sp
-.LP
-The category body consists of one or more lines of text. Each line contains an
-identifier, optionally followed by one or more operands. Identifiers are either
-keywords, identifying a particular locale element, or collating elements. Each
-keyword within a locale must have a unique name (that is, two categories cannot
-have a commonly-named keyword). No keyword can start with the characters
-\fBLC_\fR. Identifiers must be separated from the operands by one or more blank
-characters.
-.sp
-.LP
-Operands must be characters, collating elements, or strings of characters.
-Strings must be enclosed in double-quotes (\fB"\fR). Literal double-quotes
-within strings must be preceded by the <\fIescape character\fR>, as described
-below. When a keyword is followed by more than one operand, the operands must
-be separated by semicolons (\fB;\fR). Blank characters are allowed both before
-and after a semicolon.
-.sp
-.LP
-The first category header in the file can be preceded by a line modifying the
-comment character. It has the following format, starting in column 1:
-.sp
-.in +2
-.nf
-"comment_char %c\en",<\fIcomment character\fR>
-.fi
-.in -2
-
-.sp
-.LP
-The comment character defaults to the number sign (\fB#\fR). Blank lines and
-lines containing the <\fIcomment character\fR> in the first position are
-ignored.
-.sp
-.LP
-The first category header in the file can be preceded by a line modifying the
-escape character to be used in the file. It has the following format, starting
-in column 1:
-.sp
-.in +2
-.nf
-"escape_char %c\en",<\fIescape character\fR>
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The escape character defaults to backslash.
-.sp
-.LP
-A line can be continued by placing an escape character as the last character on
-the line; this continuation character will be discarded from the input.
-Although the implementation need not accept any one portion of a continued line
-with a length exceeding \fB{LINE_MAX}\fR bytes, it places no limits on the
-accumulated length of the continued line. Comment lines cannot be continued on
-a subsequent line using an escaped newline character.
-.sp
-.LP
-Individual characters, characters in strings, and collating elements must be
-represented using symbolic names, as defined below. In addition, characters can
-be represented using the characters themselves or as octal, hexadecimal or
-decimal constants. When non-symbolic notation is used, the resultant locale
-definitions will in many cases not be portable between systems. The left angle
-bracket (\fB<\fR) is a reserved symbol, denoting the start of a symbolic name;
-when used to represent itself it must be preceded by the escape character. The
-following rules apply to character representation:
-.RS +4
-.TP
-1.
-A character can be represented via a symbolic name, enclosed within angle
-brackets \fB<\fR and \fB>\fR. The symbolic name, including the angle brackets,
-must exactly match a symbolic name defined in the charmap file specified via
-the \fBlocaledef\fR \fB-f\fR option, and will be replaced by a character value
-determined from the value associated with the symbolic name in the charmap
-file. The use of a symbolic name not found in the charmap file constitutes an
-error, unless the category is \fBLC_CTYPE\fR or \fBLC_COLLATE\fR, in which
-case it constitutes a warning condition (see \fBlocaledef\fR(1) for a
-description of action resulting from errors and warnings). The specification of
-a symbolic name in a \fBcollating-element\fR or \fBcollating-symbol\fR section
-that duplicates a symbolic name in the charmap file (if present) is an error.
-Use of the escape character or a right angle bracket within a symbolic name is
-invalid unless the character is preceded by the escape character.
-.sp
-Example:
-.sp
-.in +2
-.nf
-<C>;<c-cedilla> "<M><a><y>"
-.fi
-.in -2
-.sp
-
-.RE
-.RS +4
-.TP
-2.
-A character can be represented by the character itself, in which case the
-value of the character is implementation-dependent. Within a string, the
-double-quote character, the escape character and the right angle bracket
-character must be escaped (preceded by the escape character) to be interpreted
-as the character itself. Outside strings, the characters
-.sp
-.in +2
-.nf
-\fB, ; < >\fR \fIescape_char\fR
-.fi
-.in -2
-.sp
-
-must be escaped to be interpreted as the character itself.
-.sp
-Example:
-.sp
-.in +2
-.nf
-c "May"
-.fi
-.in -2
-.sp
-
-.RE
-.RS +4
-.TP
-3.
-A character can be represented as an octal constant. An octal constant is
-specified as the escape character followed by two or more octal digits. Each
-constant represents a byte value. Multi-byte values can be represented by
-concatenated constants specified in byte order with the last constant
-specifying the least significant byte of the character.
-.sp
-Example:
-.sp
-.in +2
-.nf
-\e143;\e347;\e143\e150 "\e115\e141\e171"
-.fi
-.in -2
-.sp
-
-.RE
-.RS +4
-.TP
-4.
-A character can be represented as a hexadecimal constant. A hexadecimal
-constant is specified as the escape character followed by an \fBx\fR followed
-by two or more hexadecimal digits. Each constant represents a byte value.
-Multi-byte values can be represented by concatenated constants specified in
-byte order with the last constant specifying the least significant byte of the
-character.
-.sp
-Example:
-.sp
-.in +2
-.nf
-\ex63;\exe7;\ex63\ex68 "\ex4d\ex61\ex79"
-.fi
-.in -2
-.sp
-
-.RE
-.RS +4
-.TP
-5.
-A character can be represented as a decimal constant. A decimal constant is
-specified as the escape character followed by a \fBd\fR followed by two or more
-decimal digits. Each constant represents a byte value. Multi-byte values can be
-represented by concatenated constants specified in byte order with the last
-constant specifying the least significant byte of the character.
-.sp
-Example:
-.sp
-.in +2
-.nf
-\ed99;\ed231;\ed99\ed104 "\ed77\ed97\ed121"
-.fi
-.in -2
-.sp
-
-Only characters existing in the character set for which the locale definition
-is created can be specified, whether using symbolic names, the characters
-themselves, or octal, decimal or hexadecimal constants. If a charmap file is
-present, only characters defined in the charmap can be specified using octal,
-decimal or hexadecimal constants. Symbolic names not present in the charmap
-file can be specified and will be ignored, as specified under item 1 above.
-.RE
-.SS "LC_CTYPE"
-The \fBLC_CTYPE\fR category defines character classification, case conversion
-and other character attributes. In addition, a series of characters can be
-represented by three adjacent periods representing an ellipsis symbol
-(\fB\&...\fR). The ellipsis specification is interpreted as meaning that all
-values between the values preceding and following it represent valid
-characters. The ellipsis specification is valid only within a single encoded
-character set, that is, within a group of characters of the same size. An
-ellipsis is interpreted as including in the list all characters with an encoded
-value higher than the encoded value of the character preceding the ellipsis and
-lower than the encoded value of the character following the ellipsis.
-.sp
-.LP
-Example:
-.sp
-.in +2
-.nf
-\ex30;...;\ex39;
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-includes in the character class all characters with encoded values between the
-endpoints.
-.sp
-.LP
-The following keywords are recognized. In the descriptions, the term
-``automatically included'' means that it is not an error either to include or
-omit any of the referenced characters.
-.sp
-.LP
-The character classes \fBdigit\fR, \fBxdigit\fR, \fBlower\fR, \fBupper\fR, and
-\fBspace\fR have a set of automatically included characters. These only need to
-be specified if the character values (that is, encoding) differ from the
-implementation default values.
-.sp
-.ne 2
-.na
-\fB\fBupper\fR\fR
-.ad
-.RS 18n
-Define characters to be classified as upper-case letters.
-.sp
-In the POSIX locale, the 26 upper-case letters are included:
-.sp
-.in +2
-.nf
-A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
-.fi
-.in -2
-.sp
-
-In a locale definition file, no character specified for the keywords
-\fBcntrl\fR, \fBdigit\fR, \fBpunct\fR, or \fBspace\fR can be specified. The
-upper-case letters \fBA\fR to \fBZ\fR are automatically included in this class.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBlower\fR\fR
-.ad
-.RS 18n
-Define characters to be classified as lower-case letters. In the POSIX locale,
-the 26 lower-case letters are included:
-.sp
-.in +2
-.nf
-a b c d e f g h i j k l m n o p q r s t u v w x y z
-.fi
-.in -2
-.sp
-
-In a locale definition file, no character specified for the keywords
-\fBcntrl\fR, \fBdigit\fR, \fBpunct\fR, or \fBspace\fR can be specified. The
-lower-case letters \fBa\fR to \fBz\fR of the portable character set are
-automatically included in this class.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBalpha\fR\fR
-.ad
-.RS 18n
-Define characters to be classified as letters.
-.sp
-In the POSIX locale, all characters in the classes \fBupper\fR and \fBlower\fR
-are included.
-.sp
-In a locale definition file, no character specified for the keywords
-\fBcntrl\fR, \fBdigit\fR, \fBpunct\fR, or \fBspace\fR can be specified.
-Characters classified as either \fBupper\fR or \fBlower\fR are automatically
-included in this class.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdigit\fR\fR
-.ad
-.RS 18n
-Define the characters to be classified as numeric digits.
-.sp
-In the POSIX locale, only
-.sp
-.in +2
-.nf
-0 1 2 3 4 5 6 7 8 9
-.fi
-.in -2
-.sp
-
-are included.
-.sp
-In a locale definition file, only the digits \fB0\fR, \fB1\fR, \fB2\fR,
-\fB3\fR, \fB4\fR, \fB5\fR, \fB6\fR, \fB7\fR, \fB8\fR, and \fB9\fR can be
-specified, and in contiguous ascending sequence by numerical value. The digits
-\fB0\fR to \fB9\fR of the portable character set are automatically included in
-this class.
-.sp
-The definition of character class \fBdigit\fR requires that only ten
-characters; the ones defining digits can be specified; alternative digits (for
-example, Hindi or Kanji) cannot be specified here.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBalnum\fR\fR
-.ad
-.RS 18n
-Define characters to be classified as letters and numeric digits. Only the
-characters specified for the \fBalpha\fR and \fBdigit\fR keywords are
-specified. Characters specified for the keywords \fBalpha\fR and \fBdigit\fR
-are automatically included in this class.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBspace\fR\fR
-.ad
-.RS 18n
-Define characters to be classified as white-space characters.
-.sp
-In the POSIX locale, at a minimum, the characters \fBSPACE\fR, \fBFORMFEED\fR,
-\fBNEWLINE\fR, \fBCARRIAGE RETURN\fR, \fBTAB\fR, and \fBVERTICAL TAB\fR are
-included.
-.sp
-In a locale definition file, no character specified for the keywords
-\fBupper\fR, \fBlower\fR, \fBalpha\fR, \fBdigit\fR, \fBgraph\fR, or
-\fBxdigit\fR can be specified. The characters \fBSPACE\fR, \fBFORMFEED\fR,
-\fBNEWLINE\fR, \fBCARRIAGE RETURN\fR, \fBTAB\fR, and \fBVERTICAL TAB\fR of the
-portable character set, and any characters included in the class \fBblank\fR
-are automatically included in this class.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcntrl\fR\fR
-.ad
-.RS 18n
-Define characters to be classified as control characters.
-.sp
-In the POSIX locale, no characters in classes \fBalpha\fR or \fBprint\fR are
-included.
-.sp
-In a locale definition file, no character specified for the keywords
-\fBupper\fR, \fBlower\fR, \fBalpha\fR, \fBdigit\fR, \fBpunct\fR, \fBgraph\fR,
-\fBprint\fR, or \fBxdigit\fR can be specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpunct\fR\fR
-.ad
-.RS 18n
-Define characters to be classified as punctuation characters.
-.sp
-In the POSIX locale, neither the space character nor any characters in classes
-\fBalpha\fR, \fBdigit\fR, or \fBcntrl\fR are included.
-.sp
-In a locale definition file, no character specified for the keywords
-\fBupper\fR, \fBlower\fR, \fBalpha\fR, \fBdigit\fR, \fBcntrl\fR, \fBxdigit\fR
-or as the space character can be specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBgraph\fR\fR
-.ad
-.RS 18n
-Define characters to be classified as printable characters, not including the
-space character.
-.sp
-In the POSIX locale, all characters in classes \fBalpha\fR, \fBdigit\fR, and
-\fBpunct\fR are included; no characters in class \fBcntrl\fR are included.
-.sp
-In a locale definition file, characters specified for the keywords \fBupper\fR,
-\fBlower\fR, \fBalpha\fR, \fBdigit\fR, \fBxdigit\fR, and \fBpunct\fR are
-automatically included in this class. No character specified for the keyword
-\fBcntrl\fR can be specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBprint\fR\fR
-.ad
-.RS 18n
-Define characters to be classified as printable characters, including the space
-character.
-.sp
-In the POSIX locale, all characters in class \fBgraph\fR are included; no
-characters in class \fBcntrl\fR are included.
-.sp
-In a locale definition file, characters specified for the keywords \fBupper\fR,
-\fBlower\fR, \fBalpha\fR, \fBdigit\fR, \fBxdigit\fR, \fBpunct\fR, and the space
-character are automatically included in this class. No character specified for
-the keyword \fBcntrl\fR can be specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBxdigit\fR\fR
-.ad
-.RS 18n
-Define the characters to be classified as hexadecimal digits.
-.sp
-In the POSIX locale, only:
-.sp
-.in +2
-.nf
-0 1 2 3 4 5 6 7 8 9 A B C D E F a b c d e f
-.fi
-.in -2
-.sp
-
-are included.
-.sp
-In a locale definition file, only the characters defined for the class
-\fBdigit\fR can be specified, in contiguous ascending sequence by numerical
-value, followed by one or more sets of six characters representing the
-hexadecimal digits 10 to 15 inclusive, with each set in ascending order (for
-example \fBA\fR, \fBB\fR, \fBC\fR, \fBD\fR, \fBE\fR, \fBF\fR, \fBa\fR, \fBb\fR,
-\fBc\fR, \fBd\fR, \fBe\fR, \fBf\fR). The digits \fB0\fR to \fB9\fR, the
-upper-case letters \fBA\fR to \fBF\fR and the lower-case letters \fBa\fR to
-\fBf\fR of the portable character set are automatically included in this class.
-.sp
-The definition of character class \fBxdigit\fR requires that the characters
-included in character class \fBdigit\fR be included here also.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBblank\fR\fR
-.ad
-.RS 18n
-Define characters to be classified as blank characters.
-.sp
-In the POSIX locale, only the space and tab characters are included.
-.sp
-In a locale definition file, the characters space and tab are automatically
-included in this class.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcharclass\fR\fR
-.ad
-.RS 18n
-Define one or more locale-specific character class names as strings separated
-by semi-colons. Each named character class can then be defined subsequently in
-the \fBLC_CTYPE\fR definition. A character class name consists of at least one
-and at most \fB{CHARCLASS_NAME_MAX}\fR bytes of alphanumeric characters from
-the portable filename character set. The first character of a character class
-name cannot be a digit. The name cannot match any of the \fBLC_CTYPE\fR
-keywords defined in this document.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcharclass-name\fR\fR
-.ad
-.RS 18n
-Define characters to be classified as belonging to the named locale-specific
-character class. In the POSIX locale, the locale-specific named character
-classes need not exist. If a class name is defined by a \fBcharclass\fR
-keyword, but no characters are subsequently assigned to it, this is not an
-error; it represents a class without any characters belonging to it. The
-\fBcharclass-name\fR can be used as the \fIproperty\fR argument to the
-\fBwctype\fR(3C) function, in regular expression and shell pattern-matching
-bracket expressions, and by the \fBtr\fR(1) command.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBtoupper\fR\fR
-.ad
-.RS 18n
-Define the mapping of lower-case letters to upper-case letters.
-.sp
-In the POSIX locale, at a minimum, the 26 lower-case characters:
-.sp
-.in +2
-.nf
-a b c d e f g h i j k l m n o p q r s t u v w x y z
-.fi
-.in -2
-.sp
-
-are mapped to the corresponding 26 upper-case characters:
-.sp
-.in +2
-.nf
-A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
-.fi
-.in -2
-.sp
-
-In a locale definition file, the operand consists of character pairs, separated
-by semicolons. The characters in each character pair are separated by a comma
-and the pair enclosed by parentheses. The first character in each pair is the
-lower-case letter, the second the corresponding upper-case letter. Only
-characters specified for the keywords \fBlower\fR and \fBupper\fR can be
-specified. The lower-case letters \fBa\fR to \fBz\fR, and their corresponding
-upper-case letters \fBA\fR to \fBZ\fR, of the portable character set are
-automatically included in this mapping, but only when the \fBtoupper\fR keyword
-is omitted from the locale definition.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBtolower\fR\fR
-.ad
-.RS 18n
-Define the mapping of upper-case letters to lower-case letters.
-.sp
-In the POSIX locale, at a minimum, the 26 upper-case characters:
-.sp
-.in +2
-.nf
-A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
-.fi
-.in -2
-.sp
-
-are mapped to the corresponding 26 lower-case characters:
-.sp
-.in +2
-.nf
-a b c d e f g h i j k l m n o p q r s t u v w x y z
-.fi
-.in -2
-.sp
-
-In a locale definition file, the operand consists of character pairs, separated
-by semicolons. The characters in each character pair are separated by a comma
-and the pair enclosed by parentheses. The first character in each pair is the
-upper-case letter, the second the corresponding lower-case letter. Only
-characters specified for the keywords \fBlower\fR and \fBupper\fR can be
-specified. If the \fBtolower\fR keyword is omitted from the locale definition,
-the mapping will be the reverse mapping of the one specified for \fBtoupper\fR.
-.RE
-
-.SS "LC_COLLATE"
-The \fBLC_COLLATE\fR category provides a collation sequence definition for
-numerous utilities (such as \fBsort\fR(1), \fBuniq\fR(1), and so forth),
-regular expression matching (see \fBregex\fR(5)), and the \fBstrcoll\fR(3C),
-\fBstrxfrm\fR(3C), \fBwcscoll\fR(3C), and \fBwcsxfrm\fR(3C) functions.
-.sp
-.LP
-A collation sequence definition defines the relative order between collating
-elements (characters and multi-character collating elements) in the locale.
-This order is expressed in terms of collation values, that is, by assigning
-each element one or more collation values (also known as collation weights).
-The following capabilities are provided:
-.RS +4
-.TP
-1.
-\fBMulti-character collating elements\fR. Specification of multi-character
-collating elements (that is, sequences of two or more characters to be collated
-as an entity).
-.RE
-.RS +4
-.TP
-2.
-\fBUser-defined ordering of collating elements\fR. Each collating element is
-assigned a collation value defining its order in the character (or basic)
-collation sequence. This ordering is used by regular expressions and pattern
-matching and, unless collation weights are explicitly specified, also as the
-collation weight to be used in sorting.
-.RE
-.RS +4
-.TP
-3.
-\fBMultiple weights and equivalence classes\fR. Collating elements can be
-assigned one or more (up to the limit \fB{COLL_WEIGHTS_MAX}\fR \fB)\fR
-collating weights for use in sorting. The first weight is hereafter referred to
-as the primary weight.
-.RE
-.RS +4
-.TP
-4.
-\fBOne-to-Many mapping\fR. A single character is mapped into a string of
-collating elements.
-.RE
-.RS +4
-.TP
-5.
-\fBEquivalence class definition\fR. Two or more collating elements have the
-same collation value (primary weight).
-.RE
-.RS +4
-.TP
-6.
-\fBOrdering by weights\fR. When two strings are compared to determine their
-relative order, the two strings are first broken up into a series of collating
-elements. The elements in each successive pair of elements are then compared
-according to the relative primary weights for the elements. If equal, and more
-than one weight has been assigned, the pairs of collating elements are
-recompared according to the relative subsequent weights, until either a pair of
-collating elements compare unequal or the weights are exhausted.
-.RE
-.sp
-.LP
-The following keywords are recognized in a collation sequence definition. They
-are described in detail in the following sections.
-.sp
-.ne 2
-.na
-\fB\fBcopy\fR\fR
-.ad
-.RS 21n
-Specify the name of an existing locale which is used as the definition of this
-category. If this keyword is specified, no other keyword is specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcollating-element\fR\fR
-.ad
-.RS 21n
-Define a collating-element symbol representing a multi-character collating
-element. This keyword is optional.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcollating-symbol\fR\fR
-.ad
-.RS 21n
-Define a collating symbol for use in collation order statements. This keyword
-is optional.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBorder_start\fR\fR
-.ad
-.RS 21n
-Define collation rules. This statement is followed by one or more collation
-order statements, assigning character collation values and collation weights to
-collating elements.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBorder_end\fR\fR
-.ad
-.RS 21n
-Specify the end of the collation-order statements.
-.RE
-
-.SS "collating-element \fIkeyword\fR"
-In addition to the collating elements in the character set, the
-\fBcollating-element\fR keyword is used to define multi-character collating
-elements. The syntax is:
-.sp
-.in +2
-.nf
-\fB"collating-element %s from \e"%s\e"\en",\fR<\fIcollating-symbol\fR>,<\fIstring\fR>
-.fi
-.in -2
-
-.sp
-.LP
-The <\fIcollating-symbol\fR> operand is a symbolic name, enclosed between angle
-brackets (\fB<\fR and \fB>\fR), and must not duplicate any symbolic name in the
-current charmap file (if any), or any other symbolic name defined in this
-collation definition. The string operand is a string of two or more characters
-that collates as an entity. A <\fIcollating-element\fR> defined via this
-keyword is only recognized with the \fBLC_COLLATE\fR category.
-.sp
-.LP
-Example:
-.br
-.in +2
-\fBcollating-element\fR <\fBch\fR> from "<\fBc\fR><\fBh\fR>"
-.in -2
-.br
-.in +2
-\fBcollating-element\fR <\fBe-acute\fR> from "<\fBacute\fR><\fBe\fR>"
-.in -2
-.br
-.in +2
-\fBcollating-element\fR <\fBll\fR> from "\fBll\fR"
-.in -2
-.SS "collating-symbol \fIkeyword\fR"
-This keyword will be used to define symbols for use in collation sequence
-statements; that is, between the \fBorder_start\fR and the \fBorder_end\fR
-keywords. The syntax is:
-.sp
-.in +2
-.nf
-\fB"collating-symbol %s\en",\fR<\fIcollating-symbol\fR>
-.fi
-.in -2
-
-.sp
-.LP
-The \fB<\fR\fIcollating-symbol\fR\fB>\fR is a symbolic name, enclosed between
-angle brackets (\fB<\fR and \fB>\fR), and must not duplicate any symbolic name
-in the current charmap file (if any), or any other symbolic name defined in
-this collation definition.
-.sp
-.LP
-A \fBcollating-symbol\fR defined via this keyword is only recognized with the
-\fBLC_COLLATE\fR category.
-.sp
-.LP
-Example:
-.br
-.in +2
-\fBcollating-symbol\fR <\fBUPPER_CASE\fR>
-.in -2
-.br
-.in +2
-\fBcollating-symbol\fR <\fBHIGH\fR>
-.in -2
-.sp
-.LP
-The \fBcollating-symbol\fR keyword defines a symbolic name that can be
-associated with a relative position in the character order sequence. While such
-a symbolic name does not represent any collating element, it can be used as a
-weight.
-.SS "order_start \fIkeyword\fR"
-The \fBorder_start\fR keyword must precede collation order entries and also
-defines the number of weights for this collation sequence definition and other
-collation rules.
-.sp
-.LP
-The syntax of the \fBorder_start\fR keyword is:
-.sp
-.in +2
-.nf
-\fB"order_start %s;%s;...;%s\en",\fR<\fIsort-rules\fR>,<\fIsort-rules\fR>
-.fi
-.in -2
-
-.sp
-.LP
-The operands to the \fBorder_start\fR keyword are optional. If present, the
-operands define rules to be applied when strings are compared. The number of
-operands define how many weights each element is assigned. If no operands are
-present, one \fBforward\fR operand is assumed. If present, the first operand
-defines rules to be applied when comparing strings using the first (primary)
-weight; the second when comparing strings using the second weight, and so on.
-Operands are separated by semicolons (\fB;\fR). Each operand consists of one or
-more collation directives, separated by commas (\fB,\fR). If the number of
-operands exceeds the \fB{COLL_WEIGHTS_MAX}\fR limit, the utility will issue a
-warning message. The following directives will be supported:
-.sp
-.ne 2
-.na
-\fB\fBforward\fR\fR
-.ad
-.RS 12n
-Specifies that comparison operations for the weight level proceed from start of
-string towards the end of string.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBbackward\fR\fR
-.ad
-.RS 12n
-Specifies that comparison operations for the weight level proceed from end of
-string towards the beginning of string.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBposition\fR\fR
-.ad
-.RS 12n
-Specifies that comparison operations for the weight level will consider the
-relative position of elements in the strings not subject to \fBIGNORE.\fR The
-string containing an element not subject to \fBIGNORE\fR after the fewest
-collating elements subject to \fBIGNORE\fR from the start of the compare will
-collate first. If both strings contain a character not subject to \fBIGNORE\fR
-in the same relative position, the collating values assigned to the elements
-will determine the ordering. In case of equality, subsequent characters not
-subject to \fBIGNORE\fR are considered in the same manner.
-.RE
-
-.sp
-.LP
-The directives \fBforward\fR and \fBbackward\fR are mutually exclusive.
-.sp
-.LP
-Example:
-.sp
-.in +2
-.nf
-order_start forward;backward
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-If no operands are specified, a single \fBforward\fR operand is assumed.
-.SS "Collation Order"
-The \fBorder_start\fR keyword is followed by collating identifier entries. The
-syntax for the collating element entries is:
-.sp
-.in +2
-.nf
-\fB"%s %s;%s;...;%s\en"\fR<\fIcollating-identifier\fR>,<\fIweight\fR>,<\fIweight\fR>\fB,...\fR
-.fi
-.in -2
-
-.sp
-.LP
-Each \fIcollating-identifier\fR consists of either a character described in
-\fBLocale Definition\fR above, a <\fIcollating-element\fR>, a
-<\fIcollating-symbol\fR>, an ellipsis, or the special symbol \fBUNDEFINED\fR.
-The order in which collating elements are specified determines the character
-order sequence, such that each collating element compares less than the
-elements following it. The \fBNUL\fR character compares lower than any other
-character.
-.sp
-.LP
-A <\fIcollating-element\fR> is used to specify multi-character collating
-elements, and indicates that the character sequence specified via the
-<\fIcollating-element\fR> is to be collated as a unit and in the relative order
-specified by its place.
-.sp
-.LP
-A <\fIcollating-symbol\fR> is used to define a position in the relative order
-for use in weights. No weights are specified with a <\fIcollating-symbol\fR>.
-.sp
-.LP
-The ellipsis symbol specifies that a sequence of characters will collate
-according to their encoded character values. It is interpreted as indicating
-that all characters with a coded character set value higher than the value of
-the character in the preceding line, and lower than the coded character set
-value for the character in the following line, in the current coded character
-set, will be placed in the character collation order between the previous and
-the following character in ascending order according to their coded character
-set values. An initial ellipsis is interpreted as if the preceding line
-specified the NUL character, and a trailing ellipsis as if the following line
-specified the highest coded character set value in the current coded character
-set. An ellipsis is treated as invalid if the preceding or following lines do
-not specify characters in the current coded character set. The use of the
-ellipsis symbol ties the definition to a specific coded character set and may
-preclude the definition from being portable between implementations.
-.sp
-.LP
-The symbol \fBUNDEFINED\fR is interpreted as including all coded character set
-values not specified explicitly or via the ellipsis symbol. Such characters are
-inserted in the character collation order at the point indicated by the symbol,
-and in ascending order according to their coded character set values. If no
-\fBUNDEFINED\fR symbol is specified, and the current coded character set
-contains characters not specified in this section, the utility will issue a
-warning message and place such characters at the end of the character collation
-order.
-.sp
-.LP
-The optional operands for each collation-element are used to define the
-primary, secondary, or subsequent weights for the collating element. The first
-operand specifies the relative primary weight, the second the relative
-secondary weight, and so on. Two or more collation-elements can be assigned the
-same weight; they belong to the same \fIequivalence class\fR if they have the
-same primary weight. Collation behaves as if, for each weight level, elements
-subject to \fBIGNORE\fR are removed, unless the \fBposition\fR collation
-directive is specified for the corresponding level with the \fBorder_start\fR
-keyword. Then each successive pair of elements is compared according to the
-relative weights for the elements. If the two strings compare equal, the
-process is repeated for the next weight level, up to the limit
-{\fBCOLL_WEIGHTS_MAX\fR}.
-.sp
-.LP
-Weights are expressed as characters described in \fBLocale Definition\fR
-above, <\fIcollating-symbol\fR>s, <\fIcollating-element\fR>s, an ellipsis, or
-the special symbol \fBIGNORE.\fR A single character, a <\fIcollating-symbol\fR>
-or a <\fIcollating-element\fR> represent the relative position in the character
-collating sequence of the character or symbol, rather than the character or
-characters themselves. Thus, rather than assigning absolute values to weights,
-a particular weight is expressed using the relative order value assigned to a
-collating element based on its order in the character collation sequence.
-.sp
-.LP
-One-to-many mapping is indicated by specifying two or more concatenated
-characters or symbolic names. For example, if the character <\fBeszet\fR> is
-given the string "<\fBs\fR><\fBs\fR>" as a weight, comparisons are performed as
-if all occurrences of the character <\fBeszet\fR> are replaced by
-<\fBs\fR><\fBs\fR> (assuming that <\fBs\fR> has the collating weight
-<\fBs\fR>). If it is necessary to define <\fBeszet\fR> and <\fBs\fR><\fBs\fR>
-as an equivalence class, then a collating element must be defined for the
-string \fBss\fR.
-.sp
-.LP
-All characters specified via an ellipsis will by default be assigned unique
-weights, equal to the relative order of characters. Characters specified via an
-explicit or implicit \fBUNDEFINED\fR special symbol will by default be assigned
-the same primary weight (that is, belong to the same equivalence class). An
-ellipsis symbol as a weight is interpreted to mean that each character in the
-sequence has unique weights, equal to the relative order of their character in
-the character collation sequence. The use of the ellipsis as a weight is
-treated as an error if the collating element is neither an ellipsis nor the
-special symbol \fBUNDEFINED\fR.
-.sp
-.LP
-The special keyword \fBIGNORE\fR as a weight indicates that when strings are
-compared using the weights at the level where \fBIGNORE\fR is specified, the
-collating element is ignored; that is, as if the string did not contain the
-collating element. In regular expressions and pattern matching, all characters
-that are subject to \fBIGNORE\fR in their primary weight form an equivalence
-class.
-.sp
-.LP
-An empty operand is interpreted as the collating element itself.
-.sp
-.LP
-For example, the order statement:
-.sp
-.in +2
-.nf
-<a> <a>;<a>
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-is equal to:
-.sp
-.in +2
-.nf
-<a>
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-An ellipsis can be used as an operand if the collating element was an ellipsis,
-and is interpreted as the value of each character defined by the ellipsis.
-.sp
-.LP
-The collation order as defined in this section defines the interpretation of
-bracket expressions in regular expressions.
-.sp
-.LP
-Example:
-.sp
-
-.sp
-.TS
-l l
-l l .
-\fBorder_start\fR \fBforward;backward\fR
-\fBUNDEFINED\fR \fBIGNORE;IGNORE\fR
-\fB<LOW>\fR
-\fB<space>\fR \fB<LOW>;<space>\fR
-\fB\&.\|.\|.\fR \fB<LOW>;.\|.\|.\fR
-\fB<a>\fR \fB<a>;<a>\fR
-\fB<a-acute>\fR \fB<a>;<a-acute>\fR
-\fB<a-grave>\fR \fB<a>;<a-grave>\fR
-\fB<A>\fR \fB<a>;<A>\fR
-\fB<A-acute>\fR \fB<a>;<A-acute>\fR
-\fB<A-grave>\fR \fB<a>;<A-grave>\fR
-\fB<ch>\fR \fB<ch>;<ch>\fR
-\fB<Ch>\fR \fB<ch>;<Ch>\fR
-\fB<s>\fR \fB<s>;<s>\fR
-\fB<eszet>\fR \fB"<s><s>";"<eszet><eszet>"\fR
-\fBorder_end\fR
-.TE
-
-.sp
-.LP
-This example is interpreted as follows:
-.RS +4
-.TP
-1.
-The \fBUNDEFINED\fR means that all characters not specified in this
-definition (explicitly or via the ellipsis) are ignored for collation purposes;
-for regular expression purposes they are ordered first.
-.RE
-.RS +4
-.TP
-2.
-All characters between <\fBspace\fR> and <\fBa\fR> have the same primary
-equivalence class and individual secondary weights based on their ordinal
-encoded values.
-.RE
-.RS +4
-.TP
-3.
-All characters based on the upper- or lower-case character \fBa\fR belong to
-the same primary equivalence class.
-.RE
-.RS +4
-.TP
-4.
-The multi-character collating element <\fBch\fR> is represented by the
-collating symbol <\fBch\fR> and belongs to the same primary equivalence class
-as the multi-character collating element <\fBCh\fR>.
-.RE
-.SS "order_end \fIkeyword\fR"
-The collating order entries must be terminated with an \fBorder_end\fR keyword.
-.SS "LC_MONETARY"
-The \fBLC_MONETARY\fR category defines the rules and symbols that are used to
-format monetary numeric information. This information is available through the
-\fBlocaleconv\fR(3C) function
-.sp
-.LP
-The following items are defined in this category of the locale. The item names
-are the keywords recognized by the \fBlocaledef\fR(1) utility when defining a
-locale. They are also similar to the member names of the \fBlconv\fR structure
-defined in <\fBlocale.h\fR>. The \fBlocaleconv\fR function returns
-\fB{CHAR_MAX}\fR for unspecified integer items and the empty string (\fB""\fR)
-for unspecified or size zero string items.
-.sp
-.LP
-In a locale definition file the operands are strings. For some keywords, the
-strings can contain only integers. Keywords that are not provided, string
-values set to the empty string (\fB""\fR), or integer keywords set to \fB-1\fR,
-are used to indicate that the value is not available in the locale.
-.sp
-.ne 2
-.na
-\fB\fBint_curr_symbol\fR\fR
-.ad
-.RS 22n
-The international currency symbol. The operand is a four-character string, with
-the first three characters containing the alphabetic international currency
-symbol in accordance with those specified in the ISO 4217 standard. The fourth
-character is the character used to separate the international currency symbol
-from the monetary quantity.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcurrency_symbol\fR\fR
-.ad
-.RS 22n
-The string used as the local currency symbol.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmon_decimal_point\fR\fR
-.ad
-.RS 22n
-The operand is a string containing the symbol that is used as the decimal
-delimiter (radix character) in monetary formatted quantities.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmon_thousands_sep\fR\fR
-.ad
-.RS 22n
-The operand is a string containing the symbol that is used as a separator for
-groups of digits to the left of the decimal delimiter in formatted monetary
-quantities.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmon_grouping\fR\fR
-.ad
-.RS 22n
-Define the size of each group of digits in formatted monetary quantities. The
-operand is a sequence of integers separated by semicolons. Each integer
-specifies the number of digits in each group, with the initial integer defining
-the size of the group immediately preceding the decimal delimiter, and the
-following integers defining the preceding groups. If the last integer is not
-\fB-1\fR, then the size of the previous group (if any) will be repeatedly used
-for the remainder of the digits. If the last integer is \fB-1\fR, then no
-further grouping will be performed.
-.sp
-The following is an example of the interpretation of the \fBmon_grouping\fR
-keyword. Assuming that the value to be formatted is \fB123456789\fR and the
-\fBmon_thousands_sep\fR is \fB\&'\fR, then the following table shows the
-result. The third column shows the equivalent string in the ISO C standard that
-would be used by the \fBlocaleconv\fR function to accommodate this grouping.
-.sp
-.in +2
-.nf
-mon_grouping Formatted Value ISO C String
-
-3;-1 123456'789 "\e3\e177"
-3 123'456'789 "\e3"
-3;2;-1 1234'56'789 "\e3\e2\e177"
-3;2 12'34'56'789 "\e3\e2"
--1 1234567898 "\e177"
-.fi
-.in -2
-.sp
-
-In these examples, the octal value of \fB{CHAR_MAX}\fR is 177.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpositive_sign\fR\fR
-.ad
-.RS 22n
-A string used to indicate a non-negative-valued formatted monetary quantity.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnegative_sign\fR\fR
-.ad
-.RS 22n
-A string used to indicate a negative-valued formatted monetary quantity.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBint_frac_digits\fR\fR
-.ad
-.RS 22n
-An integer representing the number of fractional digits (those to the right of
-the decimal delimiter) to be written in a formatted monetary quantity using
-\fBint_curr_symbol\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfrac_digits\fR\fR
-.ad
-.RS 22n
-An integer representing the number of fractional digits (those to the right of
-the decimal delimiter) to be written in a formatted monetary quantity using
-\fBcurrency_symbol\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBp_cs_precedes\fR\fR
-.ad
-.RS 22n
-In an application conforming to the SUSv3 standard, an integer set to \fB1\fR
-if the \fBcurrency_symbol\fR precedes the value for a monetary quantity with a
-non-negative value, and set to \fB0\fR if the symbol succeeds the value.
-.sp
-In an application \fBnot\fR conforming to the SUSv3 standard, an integer set to
-\fB1\fR if the \fBcurrency_symbol\fR or \fBint_currency_symbol\fR precedes the
-value for a monetary quantity with a non-negative value, and set to \fB0\fR if
-the symbol succeeds the value.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBp_sep_by_space\fR\fR
-.ad
-.RS 22n
-In an application conforming to the SUSv3 standard, an integer set to \fB0\fR
-if no space separates the \fBcurrency_symbol\fR from the value for a monetary
-quantity with a non-negative value, set to \fB1\fR if a space separates the
-symbol from the value, and set to \fB2\fR if a space separates the symbol and
-the sign string, if adjacent.
-.sp
-In an application \fBnot\fR conforming to the SUSv3 standard, an integer set to
-\fB0\fR if no space separates the \fBcurrency_symbol\fR or
-\fBint_curr_symbol\fR from the value for a monetary quantity with a
-non-negative value, set to \fB1\fR if a space separates the symbol from the
-value, and set to \fB2\fR if a space separates the symbol and the sign string,
-if adjacent.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBn_cs_precedes\fR\fR
-.ad
-.RS 22n
-In an application conforming to the SUSv3 standard, an integer set to \fB1\fR
-if the \fBcurrency_symbol\fR precedes the value for a monetary quantity with a
-negative value, and set to \fB0\fR if the symbol succeeds the value.
-.sp
-In an application \fBnot\fR conforming to the SUSv3 standard, an integer set to
-\fB1\fR if the \fBcurrency_symbol\fR or \fBint_currency_symbol\fR precedes the
-value for a monetary quantity with a negative value, and set to \fB0\fR if the
-symbol succeeds the value.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBn_sep_by_space\fR\fR
-.ad
-.RS 22n
-In an application conforming to the SUSv3 standard, an integer set to \fB0\fR
-if no space separates the \fBcurrency_symbol\fR from the value for a monetary
-quantity with a negative value, set to \fB1\fR if a space separates the symbol
-from the value, and set to \fB2\fR if a space separates the symbol and the sign
-string, if adjacent.
-.sp
-In an application \fBnot\fR conforming to the SUSv3 standard, an integer set to
-\fB0\fR if no space separates the \fBcurrency_symbol\fR or
-\fBint_curr_symbol\fR from the value for a monetary quantity with a negative
-value, set to \fB1\fR if a space separates the symbol from the value, and set
-to \fB2\fR if a space separates the symbol and the sign string, if adjacent.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBp_sign_posn\fR\fR
-.ad
-.RS 22n
-An integer set to a value indicating the positioning of the \fBpositive_sign\fR
-for a monetary quantity with a non-negative value. The following integer values
-are recognized for both \fBp_sign_posn\fR and \fBn_sign_posn\fR:
-.sp
-In an application conforming to the SUSv3 standard:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 5n
-Parentheses enclose the quantity and the \fBcurrency_symbol\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB1\fR\fR
-.ad
-.RS 5n
-The sign string precedes the quantity and the \fBcurrency_symbol\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB2\fR\fR
-.ad
-.RS 5n
-The sign string succeeds the quantity and the \fBcurrency_symbol\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB3\fR\fR
-.ad
-.RS 5n
-The sign string precedes the \fBcurrency_symbol\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB4\fR\fR
-.ad
-.RS 5n
-The sign string succeeds the \fBcurrency_symbol\fR.
-.RE
-
-In an application \fBnot\fR conforming to the SUSv3 standard:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 5n
-Parentheses enclose the quantity and the \fBcurrency_symbol\fR or
-\fBint_curr_symbol\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB1\fR\fR
-.ad
-.RS 5n
-The sign string precedes the quantity and the \fBcurrency_symbol\fR or
-\fBint_curr_symbol\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB2\fR\fR
-.ad
-.RS 5n
-The sign string succeeds the quantity and the \fBcurrency_symbol\fR or
-\fBint_curr_symbol\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB3\fR\fR
-.ad
-.RS 5n
-The sign string precedes the \fBcurrency_symbol\fR or \fBint_curr_symbol\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB4\fR\fR
-.ad
-.RS 5n
-The sign string succeeds the \fBcurrency_symbol\fR or \fBint_curr_symbol\fR.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBn_sign_posn\fR\fR
-.ad
-.RS 22n
-An integer set to a value indicating the positioning of the \fBnegative_sign\fR
-for a negative formatted monetary quantity.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBint_p_cs_precedes\fR\fR
-.ad
-.RS 22n
-An integer set to \fB1\fR if the \fBint_curr_symbol\fR precedes the value for a
-monetary quantity with a non-negative value, and set to \fB0\fR if the symbol
-succeeds the value.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBint_n_cs_precedes\fR\fR
-.ad
-.RS 22n
-An integer set to \fB1\fR if the \fBint_curr_symbol\fR precedes the value for a
-monetary quantity with a negative value, and set to \fB0\fR if the symbol
-succeeds the value.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBint_p_sep_by_space\fR\fR
-.ad
-.RS 22n
-An integer set to \fB0\fR if no space separates the \fBint_curr_symbol\fR from
-the value for a monetary quantity with a non-negative value, set to \fB1\fR if
-a space separates the symbol from the value, and set to \fB2\fR if a space
-separates the symbol and the sign string, if adjacent.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBint_n_sep_by_space\fR\fR
-.ad
-.RS 22n
-An integer set to \fB0\fR if no space separates the \fBint_curr_symbol\fR from
-the value for a monetary quantity with a negative value, set to \fB1\fR if a
-space separates the symbol from the value, and set to \fB2\fR if a space
-separates the symbol and the sign string, if adjacent.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBint_p_sign_posn\fR\fR
-.ad
-.RS 22n
-An integer set to a value indicating the positioning of the \fBpositive_sign\fR
-for a positive monetary quantity formatted with the international format. The
-following integer values are recognized for \fBint_p_sign_posn\fR and
-\fBint_n_sign_posn\fR:
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 5n
-Parentheses enclose the quantity and the \fB\fR\fBint_curr_symbol\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB1\fR\fR
-.ad
-.RS 5n
-The sign string precedes the quantity and the \fBint_curr_symbol\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB2\fR\fR
-.ad
-.RS 5n
-The sign string precedes the quantity and the \fBint_curr_symbol\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB3\fR\fR
-.ad
-.RS 5n
-The sign string precedes the \fBint_curr_symbol\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB4\fR\fR
-.ad
-.RS 5n
-The sign string succeeds the \fBint_curr_symbol\fR.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBint_n_sign_posn\fR\fR
-.ad
-.RS 22n
-An integer set to a value indicating the positioning of the \fBnegative_sign\fR
-for a negative monetary quantity formatted with the international format.
-.RE
-
-.sp
-.LP
-The following table shows the result of various combinations:
-.sp
-
-.sp
-.TS
-l l l l l l
-l l l l l l .
- \fBp_sep_by_space\fR
- 2 1 0
-\fBp_cs_precedes\fR= 1 \fBp_sign_posn\fR= 0 \fB($1.25)\fR \fB($1.25)\fR \fB($1.25)\fR
- \fBp_sign_posn\fR= 1 \fB+$1.25\fR \fB+$1.25\fR \fB+$1.25\fR
- \fBp_sign_posn\fR= 2 \fB$1.25+\fR \fB$1.25+\fR \fB$1.25+\fR
- \fBp_sign_posn\fR= 3 \fB+$1.25\fR \fB+$1.25\fR \fB+$1.25\fR
- \fBp_sign_posn\fR= 4 \fB$+1.25\fR \fB$+1.25\fR \fB$+1.25\fR
-\fBp_cs_precedes\fR= 0 \fBp_sign_posn\fR= 0 \fB(1.25 $)\fR \fB(1.25 $)\fR \fB(1.25$)\fR
- \fBp_sign_posn\fR= 1 \fB+1.25 $\fR \fB+1.25 $\fR \fB+1.25$\fR
- \fBp_sign_posn\fR= 2 \fB1.25$ +\fR \fB1.25 $+\fR \fB1.25$+\fR
- \fBp_sign_posn\fR= 3 \fB1.25+ $\fR \fB1.25 +$\fR \fB1.25+$\fR
- \fBp_sign_posn\fR= 4 \fB1.25$ +\fR \fB1.25 $+\fR \fB1.25$+\fR
-.TE
-
-.sp
-.LP
-The monetary formatting definitions for the POSIX locale follow. The code
-listing depicts the \fBlocaledef\fR(1) input, the table representing the same
-information with the addition of \fBlocaleconv\fR(3C) and \fBnl_langinfo\fR(3C)
-formats. All values are unspecified in the POSIX locale.
-.sp
-.in +2
-.nf
-LC_MONETARY
-# This is the POSIX locale definition for
-# the LC_MONETARY category.
-#
-int_curr_symbol ""
-currency_symbol ""
-mon_decimal_point ""
-mon_thousands_sep ""
-mon_grouping -1
-positive_sign ""
-negative_sign ""
-int_frac_digits -1
-frac_digits -1
-p_cs_precedes -1
-p_sep_by_space -1
-n_cs_precedes -1
-n_sep_by_space -1
-p_sign_posn -1
-n_sign_posn -1
-int_p_cs_precedes -1
-int_p_sep_by_space -1
-int_n_cs_precedes -1
-int_n_sep_by_space -1
-int_p_sign_posn -1
-int_n_sign_posn -1
-#
-END LC_MONETARY
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The entry \fBn/a\fR indicates that the value is not available in the POSIX
-locale.
-.SS "LC_NUMERIC"
-The \fBLC_NUMERIC\fR category defines the rules and symbols that will be used
-to format non-monetary numeric information. This information is available
-through the \fBlocaleconv\fR(3C) function.
-.sp
-.LP
-The following items are defined in this category of the locale. The item names
-are the keywords recognized by the \fBlocaledef\fR utility when defining a
-locale. They are also similar to the member names of the \fIlconv\fR structure
-defined in <\fBlocale.h\fR>. The \fBlocaleconv()\fR function returns
-\fB{CHAR_MAX}\fR for unspecified integer items and the empty string (\fB""\fR)
-for unspecified or size zero string items.
-.sp
-.LP
-In a locale definition file the operands are strings. For some keywords, the
-strings only can contain integers. Keywords that are not provided, string
-values set to the empty string (\fB""\fR), or integer keywords set to \fB-1\fR,
-will be used to indicate that the value is not available in the locale. The
-following keywords are recognized:
-.sp
-.ne 2
-.na
-\fB\fBdecimal_point\fR\fR
-.ad
-.RS 17n
-The operand is a string containing the symbol that is used as the decimal
-delimiter (radix character) in numeric, non-monetary formatted quantities. This
-keyword cannot be omitted and cannot be set to the empty string. In contexts
-where standards limit the \fBdecimal_point\fR to a single byte, the result of
-specifying a multi-byte operand is unspecified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBthousands_sep\fR\fR
-.ad
-.RS 17n
-The operand is a string containing the symbol that is used as a separator for
-groups of digits to the left of the decimal delimiter in numeric, non-monetary
-formatted monetary quantities. In contexts where standards limit the
-\fBthousands_sep\fR to a single byte, the result of specifying a multi-byte
-operand is unspecified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBgrouping\fR\fR
-.ad
-.RS 17n
-Define the size of each group of digits in formatted non-monetary quantities.
-The operand is a sequence of integers separated by semicolons. Each integer
-specifies the number of digits in each group, with the initial integer defining
-the size of the group immediately preceding the decimal delimiter, and the
-following integers defining the preceding groups. If the last integer is not
-\fB\(mi1\fR, then the size of the previous group (if any) will be repeatedly
-used for the remainder of the digits. If the last integer is \fB-1\fR, then no
-further grouping will be performed. The non-monetary numeric formatting
-definitions for the POSIX locale follow. The code listing depicts the
-\fBlocaledef\fR input, the table representing the same information with the
-addition of \fBlocaleconv\fR values, and \fBnl_langinfo\fR constants.
-.sp
-.in +2
-.nf
-LC_NUMERIC
-# This is the POSIX locale definition for
-# the LC_NUMERIC category.
-#
-decimal_point "<period>"
-thousands_sep ""
-grouping -1
-#
-END LC_NUMERIC
-.fi
-.in -2
-.sp
-
-.RE
-
-.sp
-
-.sp
-.TS
-l l l l l
-l l l l l .
- \fBPOSIX locale\fR \fBlanginfo\fR \fBlocaleconv()\fR \fBlocaledef\fR
-\fBItem\fR \fBValue\fR \fBConstant\fR \fBValue\fR \fBValue\fR
-_
-\fBdecimal_point\fR \fB"."\fR \fBRADIXCHAR\fR \fB"."\fR \fB\&.\fR
-\fBthousands_sep\fR \fBn/a\fR \fBTHOUSEP\fR \fB""\fR \fB""\fR
-\fBgrouping\fR \fBn/a\fR \fB-\fR \fB""\fR \fB\(mi1\fR
-.TE
-
-.sp
-.LP
-The entry \fBn/a\fR indicates that the value is not available in the POSIX
-locale.
-.SS "LC_TIME"
-The \fBLC_TIME\fR category defines the interpretation of the field descriptors
-supported by \fBdate\fR(1) and affects the behavior of the \fBstrftime\fR(3C),
-\fBwcsftime\fR(3C), \fBstrptime\fR(3C), and \fBnl_langinfo\fR(3C) functions.
-Because the interfaces for C-language access and locale definition differ
-significantly, they are described separately. For locale definition, the
-following mandatory keywords are recognized:
-.sp
-.ne 2
-.na
-\fB\fBabday\fR\fR
-.ad
-.RS 15n
-Define the abbreviated weekday names, corresponding to the \fB%a\fR field
-descriptor (conversion specification in the \fBstrftime()\fR, \fBwcsftime()\fR,
-and \fBstrptime()\fR functions). The operand consists of seven
-semicolon-separated strings, each surrounded by double-quotes. The first string
-is the abbreviated name of the day corresponding to Sunday, the second the
-abbreviated name of the day corresponding to Monday, and so on.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBday\fR\fR
-.ad
-.RS 15n
-Define the full weekday names, corresponding to the \fB%A\fR field descriptor.
-The operand consists of seven semicolon-separated strings, each surrounded by
-double-quotes. The first string is the full name of the day corresponding to
-Sunday, the second the full name of the day corresponding to Monday, and so on.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBabmon\fR\fR
-.ad
-.RS 15n
-Define the abbreviated month names, corresponding to the \fB%b\fR field
-descriptor. The operand consists of twelve semicolon-separated strings, each
-surrounded by double-quotes. The first string is the abbreviated name of the
-first month of the year (January), the second the abbreviated name of the
-second month, and so on.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmon\fR\fR
-.ad
-.RS 15n
-Define the full month names, corresponding to the \fB%B\fR field descriptor.
-The operand consists of twelve semicolon-separated strings, each surrounded by
-double-quotes. The first string is the full name of the first month of the year
-(January), the second the full name of the second month, and so on.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBd_t_fmt\fR\fR
-.ad
-.RS 15n
-Define the appropriate date and time representation, corresponding to the
-\fB%c\fR field descriptor. The operand consists of a string, and can contain
-any combination of characters and field descriptors. In addition, the string
-can contain the escape sequences \e\e, \fB\ea\fR, \fB\eb\fR, \fB\ef\fR,
-\fB\en\fR, \fB\er\fR, \fB\et\fR, \fB\ev\fR\&.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdate_fmt\fR\fR
-.ad
-.RS 15n
-Define the appropriate date and time representation, corresponding to the
-\fB%C\fR field descriptor. The operand consists of a string, and can contain
-any combination of characters and field descriptors. In addition, the string
-can contain the escape sequences \fB\e\e\fR, \fB\ea\fR, \fB\eb\fR, \fB\ef\fR,
-\fB\en\fR, \fB\er\fR, \fB\et\fR, \fB\ev\fR\&.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBd_fmt\fR\fR
-.ad
-.RS 15n
-Define the appropriate date representation, corresponding to the \fB%x\fR field
-descriptor. The operand consists of a string, and can contain any combination
-of characters and field descriptors. In addition, the string can contain the
-escape sequences \fB\e\e\fR, \fB\ea\fR, \fB\eb\fR, \fB\ef\fR, \fB\en\fR,
-\fB\er\fR, \fB\et\fR, \fB\ev\fR\&.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBt_fmt\fR\fR
-.ad
-.RS 15n
-Define the appropriate time representation, corresponding to the \fB%X\fR field
-descriptor. The operand consists of a string, and can contain any combination
-of characters and field descriptors. In addition, the string can contain the
-escape sequences \fB\e\e\fR, \fB\ea\fR, \fB\eb\fR, \fB\ef\fR, \fB\en\fR,
-\fB\er\fR, \fB\et\fR, \fB\ev\fR\&.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBam_pm\fR\fR
-.ad
-.RS 15n
-Define the appropriate representation of the \fIante meridiem\fR and \fIpost
-meridiem\fR strings, corresponding to the \fB%p\fR field descriptor. The
-operand consists of two strings, separated by a semicolon, each surrounded by
-double-quotes. The first string represents the \fIante meridiem\fR designation,
-the last string the \fIpost meridiem\fR designation.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBt_fmt_ampm\fR\fR
-.ad
-.RS 15n
-Define the appropriate time representation in the 12-hour clock format with
-\fBam_pm\fR, corresponding to the \fB%r\fR field descriptor. The operand
-consists of a string and can contain any combination of characters and field
-descriptors. If the string is empty, the 12-hour format is not supported in the
-locale.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBera\fR\fR
-.ad
-.RS 15n
-Define how years are counted and displayed for each era in a locale. The
-operand consists of semicolon-separated strings. Each string is an era
-description segment with the format:
-.sp
-\fIdirection\fR:\fIoffset\fR:\fIstart_date\fR:\fIend_date\fR:\fIera_name\fR:\fIera_format\fR
-.sp
-according to the definitions below. There can be as many era description
-segments as are necessary to describe the different eras.
-.sp
-The start of an era might not be the earliest point For example, the Christian
-era B.C. starts on the day before January 1, A.D. 1, and increases with earlier
-time.
-.sp
-.ne 2
-.na
-\fB\fIdirection\fR\fR
-.ad
-.RS 14n
-Either a \fB+\fR or a \fB-\fR character. The \fB+\fR character indicates that
-years closer to the \fIstart_date\fR have lower numbers than those closer to
-the \fIend_date\fR. The \fB-\fR character indicates that years closer to the
-\fIstart_date\fR have higher numbers than those closer to the \fIend_date\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIoffset\fR\fR
-.ad
-.RS 14n
-The number of the year closest to the \fIstart_date\fR in the era,
-corresponding to the \fB%Eg\fR and \fB%Ey\fR field descriptors.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIstart_date\fR\fR
-.ad
-.RS 14n
-A date in the form \fIyyyy\fR/\fImm\fR/\fBdd\fR, where \fIyyyy\fR, \fImm\fR,
-and \fBdd\fR are the year, month and day numbers respectively of the start of
-the era. Years prior to A.D. 1 are represented as negative numbers.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIend_date\fR\fR
-.ad
-.RS 14n
-The ending date of the era, in the same format as the \fIstart_date\fR, or one
-of the two special values -* or +*. The value -* indicates that the ending date
-is the beginning of time. The value +* indicates that the ending date is the
-end of time.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIera_name\fR\fR
-.ad
-.RS 14n
-A string representing the name of the era, corresponding to the \fB%EC\fR field
-descriptor.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIera_format\fR\fR
-.ad
-.RS 14n
-A string for formatting the year in the era, corresponding to the \fB%EG\fR and
-\fB%EY\fR field descriptors.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBera_d_fmt\fR\fR
-.ad
-.RS 15n
-Define the format of the date in alternative era notation, corresponding to the
-\fB%Ex\fR field descriptor.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBera_t_fmt\fR\fR
-.ad
-.RS 15n
-Define the locale's appropriate alternative time format, corresponding to the
-\fB%EX\fR field descriptor.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBera_d_t_fmt\fR\fR
-.ad
-.RS 15n
-Define the locale's appropriate alternative date and time format, corresponding
-to the \fB%Ec\fR field descriptor.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBalt_digits\fR\fR
-.ad
-.RS 15n
-Define alternative symbols for digits, corresponding to the \fB%O\fR field
-descriptor modifier. The operand consists of semicolon-separated strings, each
-surrounded by double-quotes. The first string is the alternative symbol
-corresponding with zero, the second string the symbol corresponding with one,
-and so on. Up to 100 alternative symbol strings can be specified. The \fB%O\fR
-modifier indicates that the string corresponding to the value specified via the
-field descriptor will be used instead of the value.
-.RE
-
-.SS "LC_TIME \fIC-language\fR Access"
-The following information can be accessed. These correspond to constants
-defined in <\fBlanginfo.h\fR> and used as arguments to the
-\fBnl_langinfo\fR(3C) function.
-.sp
-.ne 2
-.na
-\fB\fBABDAY_\fIx\fR\fR\fR
-.ad
-.RS 15n
-The abbreviated weekday names (for example Sun), where \fIx\fR is a number from
-1 to 7.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBDAY_\fIx\fR\fR\fR
-.ad
-.RS 15n
-The full weekday names (for example Sunday), where \fIx\fR is a number from 1
-to 7.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBABMON_\fIx\fR\fR\fR
-.ad
-.RS 15n
-The abbreviated month names (for example Jan), where \fIx\fR is a number from 1
-to 12.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBMON_\fIx\fR\fR\fR
-.ad
-.RS 15n
-The full month names (for example January), where \fIx\fR is a number from 1 to
-12.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBD_T_FMT\fR\fR
-.ad
-.RS 15n
-The appropriate date and time representation.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBD_FMT\fR\fR
-.ad
-.RS 15n
-The appropriate date representation.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBT_FMT\fR\fR
-.ad
-.RS 15n
-The appropriate time representation.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBAM_STR\fR\fR
-.ad
-.RS 15n
-The appropriate ante-meridiem affix.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPM_STR\fR\fR
-.ad
-.RS 15n
-The appropriate post-meridiem affix.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBT_FMT_AMPM\fR\fR
-.ad
-.RS 15n
-The appropriate time representation in the 12-hour clock format with
-\fBAM_STR\fR and \fBPM_STR.\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBERA\fR\fR
-.ad
-.RS 15n
-The era description segments, which describe how years are counted and
-displayed for each era in a locale. Each era description segment has the
-format:
-.sp
-.in +2
-.nf
-\fIdirection\fR:\fIoffset\fR:\fIstart_date\fR:\fIend_date\fR:\fIera_name\fR:\fIera_format\fR
-.fi
-.in -2
-.sp
-
-according to the definitions below. There will be as many era description
-segments as are necessary to describe the different eras. Era description
-segments are separated by semicolons.
-.sp
-The start of an era might not be the earliest point For example, the Christian
-era B.C. starts on the day before January 1, A.D. 1, and increases with earlier
-time.
-.sp
-.ne 2
-.na
-\fB\fIdirection\fR\fR
-.ad
-.RS 14n
-Either a + or a - character. The + character indicates that years closer to the
-\fIstart_date\fR have lower numbers than those closer to the \fIend_date\fR.
-The - character indicates that years closer to the \fIstart_date\fR have higher
-numbers than those closer to the \fIend_date\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIoffset\fR\fR
-.ad
-.RS 14n
-The number of the year closest to the start_date in the era.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIstart_date\fR\fR
-.ad
-.RS 14n
-A date in the form \fIyyyy\fR/\fImm\fR/\fIdd\fR, where \fIyyyy\fR, \fImm\fR,
-and \fBdd\fR are the year, month and day numbers respectively of the start of
-the era. Years prior to AD 1 are represented as negative numbers.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIend_date\fR\fR
-.ad
-.RS 14n
-The ending date of the era, in the same format as the \fIstart_date\fR, or one
-of the two special values, \fB-*\fR or \fB+*\fR. The value \fB-*\fR indicates
-that the ending date is the beginning of time. The value \fB+*\fR indicates
-that the ending date is the end of time.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIera_name\fR\fR
-.ad
-.RS 14n
-The era, corresponding to the \fB%EC\fR conversion specification.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIera_format\fR\fR
-.ad
-.RS 14n
-The format of the year in the era, corresponding to the \fB%EY\fR and \fB%EY\fR
-conversion specifications.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBERA_D_FMT\fR\fR
-.ad
-.RS 15n
-The era date format.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBERA_T_FMT\fR\fR
-.ad
-.RS 15n
-The locale's appropriate alternative time format, corresponding to the
-\fB%EX\fR field descriptor.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBERA_D_T_FMT\fR\fR
-.ad
-.RS 15n
-The locale's appropriate alternative date and time format, corresponding to the
-\fB%Ec\fR field descriptor.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBALT_DIGITS\fR\fR
-.ad
-.RS 15n
-The alternative symbols for digits, corresponding to the \fB%O\fR conversion
-specification modifier. The value consists of semicolon-separated symbols. The
-first is the alternative symbol corresponding to zero, the second is the symbol
-corresponding to one, and so on. Up to 100 alternative symbols may be
-specified. The following table displays the correspondence between the items
-described above and the conversion specifiers used by \fBdate\fR(1) and the
-\fBstrftime\fR(3C), \fBwcsftime\fR(3C), and \fBstrptime\fR(3C) functions.
-.RE
-
-.sp
-
-.sp
-.TS
-box;
-c | c | c
-c | c | c .
-\fBlocaledef\fR \fBlanginfo\fR \fBConversion\fR
-\fBKeyword\fR \fBConstant\fR \fBSpecifier\fR
-_
-\fBabday\fR \fBABDAY_\fR\fIx\fR \fB%a\fR
-\fBday\fR \fBDAY_\fR\fIx\fR \fB%A\fR
-\fBabmon\fR \fBABMON_\fR\fIx\fR \fB%b\fR
-\fBmon\fR \fBMON\fR \fB%B\fR
-\fBd_t_fmt\fR \fBD_T_FMT\fR \fB%c\fR
-\fBdate_fmt\fR \fBDATE_FMT\fR \fB%C\fR
-\fBd_fmt\fR \fBD_FMT\fR \fB%x\fR
-\fBt_fmt\fR \fBT_FMT\fR \fB%X\fR
-\fBam_pm\fR \fBAM_STR\fR \fB%p\fR
-\fBam_pm\fR \fBPM_STR\fR \fB%p\fR
-\fBt_fmt_ampm\fR \fBT_FMT_AMPM\fR \fB%r\fR
-\fBera\fR \fBERA\fR \fB%EC, %Eg,\fR
- \fB%EG, %Ey, %EY\fR
-\fBera_d_fmt\fR \fBERA_D_FMT\fR \fB%Ex\fR
-\fBera_t_fmt\fR \fBERA_T_FMT\fR \fB%EX\fR
-\fBera_d_t_fmt\fR \fBERA_D_T_FMT\fR \fB%Ec\fR
-\fBalt_digits\fR \fBALT_DIGITS\fR \fB%O\fR
-.TE
-
-.SS "LC_TIME \fIGeneral\fR Information"
-Although certain of the field descriptors in the POSIX locale (such as the name
-of the month) are shown with initial capital letters, this need not be the case
-in other locales. Programs using these fields may need to adjust the
-capitalization if the output is going to be used at the beginning of a
-sentence.
-.sp
-.LP
-The \fBLC_TIME\fR descriptions of \fBabday\fR, \fBday\fR, \fBmon\fR, and
-\fBabmon\fR imply a Gregorian style calendar (7-day weeks, 12-month years, leap
-years, and so forth). Formatting time strings for other types of calendars is
-outside the scope of this document set.
-.sp
-.LP
-As specified under \fBdate\fR in \fBLocale Definition\fR and
-\fBstrftime\fR(3C), the field descriptors corresponding to the optional
-keywords consist of a modifier followed by a traditional field descriptor (for
-instance \fB%Ex\fR). If the optional keywords are not supported by the
-implementation or are unspecified for the current locale, these field
-descriptors are treated as the traditional field descriptor. For instance,
-assume the following keywords:
-.sp
-.in +2
-.nf
-alt_digits "0th" ; "1st" ; "2nd" ; "3rd" ; "4th" ; "5th" ; \e
-"6th" ; "7th" ; "8th" ; "9th" ; "10th">
-d_fmt "The %Od day of %B in %Y"
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-On 7/4/1776, the \fB%x\fR field descriptor would result in "The 4th day of July
-in 1776" while 7/14/1789 would come out as "The 14 day of July in 1789" The
-above example is for illustrative purposes only. The \fB%O\fR modifier is
-primarily intended to provide for Kanji or Hindi digits in \fBdate\fR formats.
-.SS "LC_MESSAGES"
-The \fBLC_MESSAGES\fR category defines the format and values for affirmative
-and negative responses.
-.sp
-.LP
-The following keywords are recognized as part of the locale definition file.
-The \fBnl_langinfo\fR(3C) function accepts upper-case versions of the first
-four keywords.
-.sp
-.ne 2
-.na
-\fB\fByesexpr\fR\fR
-.ad
-.RS 11n
-The operand consists of an extended regular expression (see \fBregex\fR(5))
-that describes the acceptable affirmative response to a question expecting an
-affirmative or negative response.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnoexpr\fR\fR
-.ad
-.RS 11n
-The operand consists of an extended regular expression that describes the
-acceptable negative response to a question expecting an affirmative or negative
-response.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fByesstr\fR\fR
-.ad
-.RS 11n
-The operand consists of a fixed string (not a regular expression) that can be
-used by an application for composition of a message that lists an acceptable
-affirmative response, such as in a prompt.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnostr\fR\fR
-.ad
-.RS 11n
-The operand consists of a fixed string that can be used by an application for
-composition of a message that lists an acceptable negative response. The format
-and values for affirmative and negative responses of the POSIX locale follow;
-the code listing depicting the \fBlocaledef\fR input, the table representing
-the same information with the addition of \fBnl_langinfo()\fR constants.
-.sp
-.in +2
-.nf
-LC_MESSAGES
-# This is the POSIX locale definition for
-# the LC_MESSAGES category.
-#
-yesexpr "<circumflex><left-square-bracket><y><Y>\e
- <right-square-bracket>"
-#
-noexpr "<circumflex><left-square-bracket><n><N>\e
- <right-square-bracket>"
-#
-yesstr "yes"
-nostr "no"
-END LC_MESSAGES
-.fi
-.in -2
-.sp
-
-.RE
-
-.sp
-
-.sp
-.TS
-box;
-l | l | l
-l | l | l .
-\fBlocaledef Keyword\fR \fBlanginfo Constant\fR \fBPOSIX Locale Value\fR
-\fByesexpr\fR \fBYESEXPR\fR \fB"^[yY]"\fR
-\fBnoexpr\fR \fBNOEXPR\fR \fB"^[nN]"\fR
-\fByesstr\fR \fBYESSTR\fR \fB"yes"\fR
-\fBnostr\fR \fBNOSTR\fR \fB"no"\fR
-.TE
-
-.sp
-.LP
-In an application conforming to the SUSv3 standard, the information on
-\fByesstr\fR and \fBnostr\fR is not available.
-.SH SEE ALSO
-\fBdate\fR(1), \fBlocale\fR(1), \fBlocaledef\fR(1), \fBsort\fR(1), \fBtr\fR(1),
-\fBuniq\fR(1), \fBlocaleconv\fR(3C), \fBnl_langinfo\fR(3C),
-\fBsetlocale\fR(3C), \fBstrcoll\fR(3C), \fBstrftime\fR(3C), \fBstrptime\fR(3C),
-\fBstrxfrm\fR(3C), \fBwcscoll\fR(3C), \fBwcsftime\fR(3C), \fBwcsxfrm\fR(3C),
-\fBwctype\fR(3C), \fBattributes\fR(5), \fBcharmap\fR(5), \fBextensions\fR(5),
-\fBregex\fR(5)
diff --git a/usr/src/man/man5/logadm.conf.5 b/usr/src/man/man5/logadm.conf.5
new file mode 100644
index 0000000000..06ef0cb6c4
--- /dev/null
+++ b/usr/src/man/man5/logadm.conf.5
@@ -0,0 +1,71 @@
+'\" te
+.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH LOGADM.CONF 5 "May 23, 2007"
+.SH NAME
+logadm.conf \- configuration file for logadm command
+.SH SYNOPSIS
+.LP
+.nf
+\fB/etc/logadm.conf\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fB/etc/logadm.conf\fR is the default configuration file for the log management
+tool \fBlogadm\fR(8). Comments are allowed using the pound character (\fB#\fR)
+and extend to the end of line. Each non-comment line has the form:
+.sp
+.in +2
+.nf
+\fIlogname\fR \fIoptions\fR
+.fi
+.in -2
+
+.sp
+.LP
+where \fIlogname\fR is the name of the entry and \fIoptions\fR are the default
+command line options for the \fBlogadm\fR command. The name of the entry may be
+the same as the name of the log file, or a log file name may be given in the
+options section of the entry. Long lines may be folded using a backslash
+followed by a newline to continue an entry on the next line. Single or double
+quotes may be used to protect spaces or alternate-style quotes in strings.
+.sp
+.LP
+The preferred method for changing \fB/etc/logadm.conf\fR is to use the
+\fB-V\fR, \fB-w\fR, and \fB-r\fR options to the \fBlogadm\fR(8) command, which
+allow you to lookup an entry, write an entry, or remove an entry from
+\fB/etc/logadm.conf\fR.
+.sp
+.LP
+A full description of how and when \fB/etc/logadm.conf\fR is used and sample
+entries are found in \fBlogadm\fR(8).
+.sp
+.LP
+By default, \fBlogadm\fR(8) works in \fBGMT\fR. Therefore, all entries in
+\fB/etc/logadm.conf\fR will have a \fBGMT\fR timestamp. Users can use the
+\fB-l\fR option to set \fBlogadm\fR to local time.
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7),
+.BR logadm (8)
diff --git a/usr/src/man/man5/logindevperm.5 b/usr/src/man/man5/logindevperm.5
new file mode 100644
index 0000000000..8b71787060
--- /dev/null
+++ b/usr/src/man/man5/logindevperm.5
@@ -0,0 +1,142 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH LOGINDEVPERM 5 "Sep 25, 2008"
+.SH NAME
+logindevperm, fbtab \- login-based device permissions
+.SH SYNOPSIS
+.LP
+.nf
+\fB/etc/logindevperm\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fB/etc/logindevperm\fR file contains information that is used by
+\fBlogin\fR(1) and \fBttymon\fR(8) to change the owner, group, and permissions
+of devices upon logging into or out of a console device. By default, this file
+contains lines for the keyboard, mouse, audio, and frame buffer devices.
+.sp
+.LP
+The owner of the devices listed in \fB/etc/logindevperm\fR is set to the owner
+of the console by \fBlogin\fR(1). The group of the devices is set to the
+owner's group specified in \fB/etc/passwd\fR. The permissions are set as
+specified in \fB/etc/logindevperm\fR.
+.sp
+.LP
+If the console is \fB/dev/vt/active\fR, the owner of the devices is the first
+user logged in on the consoles (\fB/dev/console\fR or \fB/dev/vt/#\fR). Upon
+this first user's logout the owner and group of these devices is reset by
+\fBttymon\fR(8) to owner root and root's group as specified in
+\fB/etc/passwd\fR.
+.sp
+.LP
+Fields are separated by a TAB or SPACE characters. Blank lines and comments can
+appear anywhere in the file; comments start with a hashmark, (\fB#\fR), and
+continue to the end of the line.
+.sp
+.LP
+The first field specifies the name of a console device (for example,
+\fB/dev/console\fR). By default, it is \fB/dev/vt/active\fR, which points to
+the current active console, including \fB/dev/console\fR and all virtual
+consoles (\fB/dev/vt/#\fR). The second field specifies the permissions to which
+the devices in the \fIdevice_list\fR field (third field) are set. These
+permissions must be expressed in octal format, for example, \fB0774\fR. A
+\fIdevice_list\fR is a colon-separated list of device names. A device name must
+be a \fB/dev\fR link.
+.sp
+.LP
+A directory or logical name in the device name can be either one of the
+following:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+A fully qualified name, for example, \fBfbs\fR.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+A regular expression, for example, \fB[a-z0-9.]+\fR. See \fBregexp\fR(7) for
+more information on regular expressions.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The wildcard character \fB*\fR specifying all directory or node names (except
+\fB\&.\fR and \fB\&..\fR, for example, \fB/dev/fbs/*\fR specifies all frame
+buffer devices.
+.RE
+.sp
+.LP
+Some examples of \fB/etc/logindevperm\fR file entries include:
+.sp
+.in +2
+.nf
+/dev/usb/[0-9a-f]+[.][0-9a-f]+/[0-9]+/[a-z0-9.]+
+/dev/usb/[0-9a-f]+[.][0-9a-f]+/[0-9]+/*
+/dev/usb/[0-9a-f]+[.][0-9a-f]+/*/*
+.fi
+.in -2
+
+.sp
+.LP
+Specify all \fBugen\fR(4D) endpoints and status nodes.
+.sp
+.LP
+Drivers can also be specified to limit the permission changes to minor nodes
+owned by the specified drivers. For example,
+.sp
+.in +2
+.nf
+/dev/console 0600 /dev/usb/[0-9a-f]+[.][0-9a-f]+/[0-9]+/* \e
+driver=usb_mid,scsa2usb,usbprn # libusb devices
+.fi
+.in -2
+
+.sp
+.LP
+Due to the persistence of \fBdevfs\fR(4FS) minor node management, the user
+should be logged in as root if the list of minor nodes will be reduced and the
+devices should all be plugged in.
+.sp
+.LP
+Once the devices are owned by the user, their permissions and ownership can be
+changed using \fBchmod\fR(1) and \fBchown\fR(1), as with any other user-owned
+file.
+.sp
+.LP
+Upon logout the owner and group of these devices are reset by \fBttymon\fR(8)
+to owner \fBroot\fR and root's group as specified in \fB/etc/passwd\fR
+(typically \fBother\fR). The permissions are set as specified in the
+\fB/etc/logindevperm\fR file.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/passwd\fR\fR
+.ad
+.RS 15n
+File that contains user group information.
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR chmod (1),
+.BR chown (1),
+.BR login (1),
+.BR ugen (4D),
+.BR passwd (5),
+.BR regexp (7),
+.BR ttymon (8)
+.SH NOTES
+.sp
+.LP
+\fB/etc/logindevperm\fR provides a superset of the functionality provided by
+\fB/etc/fbtab\fR in SunOS 4.\fIx\fR releases.
diff --git a/usr/src/man/man5/loginlog.5 b/usr/src/man/man5/loginlog.5
new file mode 100644
index 0000000000..884f45abd9
--- /dev/null
+++ b/usr/src/man/man5/loginlog.5
@@ -0,0 +1,38 @@
+'\" te
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH LOGINLOG 5 "Jul 3, 1990"
+.SH NAME
+loginlog \- log of failed login attempts
+.SH DESCRIPTION
+.sp
+.LP
+After five unsuccessful login attempts, all the attempts are logged in the file
+\fB/var/adm/loginlog\fR. This file contains one record for each failed attempt.
+Each record contains the login name, tty specification, and time.
+.sp
+.LP
+This is an \fBASCII\fR file. Each field within each entry is separated from the
+next by a colon. Each entry is separated from the next by a new-line.
+.sp
+.LP
+By default, \fBloginlog\fR does not exist, so no logging is done. To enable
+logging, the log file must be created with read and write permission for owner
+only. Owner must be \fBroot\fR and group must be \fBsys\fR.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/var/adm/loginlog\fR\fR
+.ad
+.RS 21n
+
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR login (1),
+.BR passwd (1)
diff --git a/usr/src/man/man5/lx.5 b/usr/src/man/man5/lx.5
deleted file mode 100644
index 9ad903a396..0000000000
--- a/usr/src/man/man5/lx.5
+++ /dev/null
@@ -1,113 +0,0 @@
-.\"
-.\" This file and its contents are supplied under the terms of the
-.\" Common Development and Distribution License ("CDDL"), version 1.0.
-.\" You may only use this file in accordance with the terms of version
-.\" 1.0 of the CDDL.
-.\"
-.\" A full copy of the text of the CDDL should have accompanied this
-.\" source. A copy of the CDDL is also available via the Internet at
-.\" http://www.illumos.org/license/CDDL.
-.\"
-.\"
-.\" Copyright 2016, Joyent, Inc.
-.\"
-.Dd February 5, 2106
-.Dt LX 5
-.Os
-.Sh NAME
-.Nm lx
-.Nd zone brand for running a GNU/Linux user-level environment
-.Sh DESCRIPTION
-The
-.Em lx
-brand
-uses the
-.Xr brands 5
-framework to provide an environment for running binary applications built
-for GNU/Linux.
-User-level code, including an entire Linux distribution, can run inside the
-zone.
-Both 32-bit and 64-bit applications are supported.
-The majority of Linux system calls are provided, along with emulation for a
-variety of Linux file systems, such as
-.Em proc ,
-.Em cgroup
-and
-.Em sysfs .
-.Pp
-The
-.Em /proc
-file system within the zone is a subset of a full Linux
-.Em /proc .
-Most kernel-level tuning applied to
-.Em /proc
-is unavailable or ignored.
-Some tuning can be performed, but only to reduce the overall limits that have
-been specified on the zone's configuration.
-That is, within the zone there is no way to increase the resource limits set on
-the zone itself.
-.Pp
-The zone must be installed using a clone of a
-.Xr zfs 1m
-dataset which contains an image of the software to be run in the zone.
-.Pp
-Example:
-.Dl zoneadm -z myzone install -x nodataset -t debian7
-.Pp
-Applications provided by the base SunOS operating system are also available
-within the zone under the
-.Em /native
-mount point.
-This allows the use of various native tools such as
-.Xr dtrace 1m ,
-.Xr mdb 1 ,
-or the
-.Xr proc 1
-tools on GNU/Linux applications.
-However, not every native tool will work properly within an
-.Em lx
-zone.
-.Sh CONFIGURATION
-The
-.Em kernel-version
-attribute can be included in the zone's
-.Xr zonecfg 1m
-settings as a way to specify the Linux version that the zone is emulating.
-For example, the value could be
-.Em 3.13.0 .
-.Sh LIMITATIONS
-The brand only supports the exclusive IP stack zone configuration.
-.Pp
-Most modern GNU/Linux application software runs on
-.Em lx ,
-but because there are some system calls or file systems which are not currently
-implemented, it's possible that an application won't run.
-This does not preclude the application running in the future as the
-.Em lx
-brand adds new capabilities.
-.Pp
-Because there is only the single SunOS kernel running on the system, there
-is no support for any Linux kernel-level modules.
-That is, there is no support for add-on drivers or any other modules that are
-part of the Linux kernel itself.
-If that is required, a full virtual machine should be used instead of an
-.Em lx
-branded zone.
-.Pp
-Any core files produced within the zone are in the native SunOS format.
-.Pp
-As with any zone, the normal security mechanisms and privileges apply.
-Thus, certain operations (for example, changing the system time), will not be
-allowed unless the zone has been configured with the appropriate additional
-privileges.
-.Sh SEE ALSO
-.Xr mdb 1 ,
-.Xr proc 1 ,
-.Xr dtrace 1m ,
-.Xr zfs 1m ,
-.Xr zoneadm 1m ,
-.Xr zonecfg 1m ,
-.Xr brands 5 ,
-.Xr privileges 5 ,
-.Xr resource_controls 5 ,
-.Xr zones 5
diff --git a/usr/src/man/man5/magic.5 b/usr/src/man/man5/magic.5
new file mode 100644
index 0000000000..fba6ae21c5
--- /dev/null
+++ b/usr/src/man/man5/magic.5
@@ -0,0 +1,359 @@
+'\" te
+.\" Copyright (c) 2004, Sun Microsystems, Inc.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH MAGIC 5 "Feb 6, 2004"
+.SH NAME
+magic \- file command's magic number file
+.SH SYNOPSIS
+.LP
+.nf
+\fB/etc/magic\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBfile\fR(1) command identifies the type of a file using, among other
+tests, a test for whether the file begins with a certain \fImagic number\fR.
+The \fB/etc/magic\fR file, or a file specified as an option-argument to the
+\fB-m\fR or \fB-M\fR options of \fBfile\fR(1), specifies what magic numbers are
+to be tested for, what message to print if a particular magic number is found,
+and additional information to extract from the file.
+.sp
+.LP
+Each line of the file specifies a position-sensitive test to perform. A test
+compares the data starting at a particular offset in the file with a 1-byte,
+2-byte, 4-byte, or 8-byte numeric value or string. If the test succeeds, a
+message is printed. The line consists of the following fields (separated by
+tabs): \fIoffset\fR \fItype\fR \fIvalue\fR \fImessage\fR
+.sp
+.ne 2
+.na
+\fB\fIoffset\fR\fR
+.ad
+.RS 11n
+A number specifying the offset, in bytes, into the file of the data which is to
+be tested.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fItype\fR\fR
+.ad
+.RS 11n
+The type of the data to be tested. The possible values are:
+.sp
+.ne 2
+.na
+\fB\fBbyte, d1, dC\fR\fR
+.ad
+.RS 24n
+A one-byte signed value.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBshort, d2, dS\fR\fR
+.ad
+.RS 24n
+A 2-byte signed value.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBlong, d4, dI, dL, d\fR\fR
+.ad
+.RS 24n
+A 4-byte signed value.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBllong, d8\fR\fR
+.ad
+.RS 24n
+An 8-byte signed value
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBubyte, u1, uC\fR\fR
+.ad
+.RS 24n
+A one-byte unsigned value.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBushort, u2, uS\fR\fR
+.ad
+.RS 24n
+A 2-byte unsigned value.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBulong, u4, uI, uL, u\fR\fR
+.ad
+.RS 24n
+A 4-byte unsigned value.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBullong, u8\fR\fR
+.ad
+.RS 24n
+An 8-byte unsigned value.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBstring, s\fR\fR
+.ad
+.RS 24n
+A string of bytes.
+.RE
+
+All type specifiers, except for \fBstring\fR and \fBs\fR, may be followed by a
+mask specifier of the form \fB&\fR\fInumber\fR. If a mask specifier is given,
+the value is AND'ed with the \fInumber\fR before any comparisons are done. The
+\fInumber\fR is specified in C form. For instance, \fB13\fR is decimal,
+\fB013\fR is octal, and \fB0x13\fR is hexadecimal.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIvalue\fR\fR
+.ad
+.RS 11n
+The value to be compared with the value from the file. If the type is numeric,
+this value is specified in \fBC\fR form. If it is a string, it is specified as
+a \fBC\fR string with the usual escapes permitted (for instance, \en for
+NEWLINE).
+.sp
+\fINumeric values\fR may be preceded by a character indicating the operation to
+be performed, as follows:
+.sp
+.ne 2
+.na
+\fB\fB=\fR\fR
+.ad
+.RS 5n
+The value from the file must equal the specified value.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB<\fR\fR
+.ad
+.RS 5n
+The value from the file must be less than the specified value.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB>\fR\fR
+.ad
+.RS 5n
+The value from the file must be greater than the specified value.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB&\fR\fR
+.ad
+.RS 5n
+All the bits in the specified value must be set in the value from the file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB^\fR\fR
+.ad
+.RS 5n
+At least one of the bits in the specified value must not be set in the value
+from the file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBx\fR\fR
+.ad
+.RS 5n
+Any value will match.
+.RE
+
+If the character is omitted, it is assumed to be "\fB=\fR".
+.sp
+For comparison of numeric values, the sign and size of both the value in the
+file and the value from the \fIvalue\fR field of the magic entry will match
+that of the corresponding \fItype\fR field. If there is a non-zero mask
+(\fB&\fR) in the \fItype\fR field, the comparison will be unsigned.
+.sp
+For string values, the byte string from the file must match the specified byte
+string. The byte string from the file which is matched is the same length as
+the specified byte string. If the value is a string, it can contain the
+following sequences:
+.sp
+.ne 2
+.na
+\fB\e\fIcharacter\fR\fR
+.ad
+.RS 15n
+The backslash-escape sequences \fB\e\e\fR, \fB\ea\fR, \fB\eb\fR, \fB\ef\fR,
+\fB\en\fR, \fB\er\fR, \fB\et\fR, \fB\ev\fR\&.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\e\fIoctal\fR\fR
+.ad
+.RS 15n
+Octal sequences that can be used to represent characters with specific coded
+values. An octal sequence consists of a backslash followed by the longest
+sequence of one, two, or three octal-digit characters (01234567).
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fImessage\fR\fR
+.ad
+.RS 11n
+The message to be printed if the comparison succeeds. If the string contains a
+\fBprintf\fR(3C) format specification, the value from the file (with any
+specified masking performed) is printed using the message as the format string.
+.RE
+
+.sp
+.LP
+Some file formats contain additional information which is to be printed along
+with the file type. A line which begins with the character "\fB>\fR" indicates
+additional tests and messages to be printed. If the test on the line preceding
+the first line with a "\fB>\fR" succeeds, the tests specified in all the
+subsequent lines beginning with "\fB>\fR" are performed, and the messages are
+printed if the tests succeed. The next line which does not begin with a
+"\fB>\fR" terminates this.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/magic\fR\fR
+.ad
+.RS 14n
+
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR file (1),
+.BR file (1B),
+.BR printf (3C)
+.SH NOTES
+.sp
+.LP
+In Solaris 9 and prior releases, the file utility may have performed unsigned
+comparisons for types \fBbyte\fR, \fBshort\fR, and \fBlong\fR. Old user-defined
+magic files, which were specified with the \fB-m\fR option, will need
+modification of \fBbyte\fR, \fBshort\fR, and \fBlong\fR entries to their
+corresponding unsigned types (\fBubyte\fR, \fBushort\fR, or \fBulong\fR) for
+those entries for which all of the following are true:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The entry uses the "\fB<\fR" or the "\fB>\fR" operator.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The \fBtype\fR field does not contain a non-zero mask.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The intention of the entry is to test unsigned values.
+.RE
+.sp
+.LP
+For example, if the following entry is expected to match any non-zero, one-byte
+value from the file, including values for which the sign bit is on:
+.sp
+.in +2
+.nf
+#offset type value message
+0 byte >0 this matches any non-zero value
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+then that entry should be changed to:
+.sp
+.in +2
+.nf
+0 ubyte >0 this matches any non-zero value
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+In Solaris 7 through Solaris 9, when applying tests for magic file entries
+whose \fBtype\fR field is the numeric type "short" or "long", the file utility
+in the x86 environment would switch the byte order of the numeric values read.
+Starting in Solaris 10, the byte order will not be switched on x86. A test for
+a numeric value whose byte order is identical in both little- and big-endian
+architectures may require two magic file entries, to ensure that the test
+correctly identifies files in both environments. For example, a magic file
+entry that will match on a big-endian system may look like this:
+.sp
+.in +2
+.nf
+0 long 0xf00000ff extended accounting file
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Its corresponding magic file entry that will match the same value on a
+little-endian system would look like this:
+.sp
+.in +2
+.nf
+0 long 0xff0000f0 extended accounting file
+.fi
+.in -2
+.sp
+
+.SH BUGS
+.sp
+.LP
+There should be more than one level of subtests, with the level indicated by
+the number of `\fB>\fR' at the beginning of the line.
diff --git a/usr/src/man/man5/mailer.conf.5 b/usr/src/man/man5/mailer.conf.5
new file mode 100644
index 0000000000..a02833ae5d
--- /dev/null
+++ b/usr/src/man/man5/mailer.conf.5
@@ -0,0 +1,107 @@
+.\" $NetBSD: mailer.conf.5,v 1.2 1999/05/29 18:18:30 christos Exp $
+.\"
+.\" Copyright (c) 1998
+.\" Perry E. Metzger. All rights reserved.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\" notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\" notice, this list of conditions and the following disclaimer in the
+.\" documentation and/or other materials provided with the distribution.
+.\" 3. All advertising materials mentioning features or use of this software
+.\" must display the following acknowledgment:
+.\" This product includes software developed for the NetBSD Project
+.\" by Perry E. Metzger.
+.\" 4. The name of the author may not be used to endorse or promote products
+.\" derived from this software without specific prior written permission.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
+.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
+.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
+.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+.\"
+.\" $FreeBSD: releng/9.1/share/man/man5/mailer.conf.5 213609 2010-10-08 20:13:12Z markm $
+.\"
+.Dd November 11, 2017
+.Dt MAILER.CONF 5
+.Os
+.Sh NAME
+.Nm mailer.conf
+.Nd configuration file for
+.Xr mailwrapper 8
+.Sh DESCRIPTION
+The file
+.Pa /etc/mailer.conf
+contains a series of lines of the form
+.Pp
+.Ar name
+.Ar program
+.Op Ar arguments ...
+.Pp
+The first word of each line is the
+.Ar name
+of a program invoking
+.Xr mailwrapper 8 .
+(For example, on a typical system
+.Pa /usr/lib/sendmail
+would be a symbolic link to
+.Xr mailwrapper 8 ,
+as would
+.Xr newaliases 8
+and
+.Xr mailq 1 .
+Thus,
+.Ar name
+might be
+.Dq Li sendmail
+or
+.Dq Li newaliases
+etc.)
+.Pp
+The second word of each line is the name of the
+.Ar program
+to actually execute when the first name is invoked.
+.Pp
+The further
+.Ar arguments ,
+if any, are passed to the
+.Ar program ,
+followed by the arguments
+.Xr mailwrapper 8
+was called with.
+.Pp
+The file may also contain comment lines, denoted by a
+.Ql #
+mark in the first column of any line.
+.Sh FILES
+/etc/mailer.conf
+.Sh EXAMPLES
+This example shows how to set up
+.Nm
+to invoke the traditional
+.Xr sendmail 8
+program:
+.Bd -literal -offset indent
+# Execute the "real" sendmail program located in
+# /usr/lib/smtp/sendmail/sendmail
+sendmail /usr/lib/smtp/sendmail/sendmail
+mailq /usr/lib/smtp/sendmail/sendmail
+newaliases /usr/lib/smtp/sendmail/sendmail
+.Ed
+.Sh SEE ALSO
+.Xr mail 1 ,
+.Xr mailq 1 ,
+.Xr mailwrapper 8 ,
+.Xr newaliases 8 ,
+.Xr sendmail 8
+.Sh AUTHORS
+.An Perry E. Metzger Aq perry@piermont.com
diff --git a/usr/src/man/man5/man.5 b/usr/src/man/man5/man.5
deleted file mode 100644
index 6598394cd7..0000000000
--- a/usr/src/man/man5/man.5
+++ /dev/null
@@ -1,265 +0,0 @@
-.\" Copyright 2015 Nexenta Systems, Inc. All rights reserved.
-.\" Copyright 2014 Garrett D'Amore <garrett@damore.org>
-.\" Copyright (c) 1995, Sun Microsystems, Inc.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.Dd "Feb 18, 2015"
-.Dt MAN 5
-.Os
-.Sh NAME
-.Nm man
-.Nd macros to format Reference Manual pages
-.Sh SYNOPSIS
-.Nm mandoc
-.Fl T Ar man
-.Ar
-.Nm nroff
-.Fl man
-.Ar
-.Nm troff
-.Fl man
-.Ar
-.Sh DESCRIPTION
-These macros are used to lay out the reference pages in this manual.
-Note: if
-.Ar file
-contains format input for a preprocessor, the commands shown
-above must be piped through the appropriate preprocessor.
-This is handled automatically by the
-.Xr man 1
-command.
-See the
-.Sx Conventions
-section.
-.Lp
-Any text argument
-.Ar t
-may be zero to six words.
-Quotes may be used to include SPACE characters in a
-.Qq word .
-If
-.Ar text
-is empty, the special
-treatment is applied to the next input line with text to be printed.
-In this way
-.Nm \&.I
-may be used to italicize a whole line, or
-.Nm \&.SB
-may be used to make small bold letters.
-.Lp
-A prevailing indent distance is remembered between successive indented
-paragraphs, and is reset to default value upon reaching a non-indented
-paragraph.
-Default units for indents
-.Nm i
-are ens.
-.Lp
-Type font and size are reset to default values before each paragraph, and after
-processing font and size setting macros.
-.Pp
-These strings are predefined by
-.Nm -man :
-.Bl -tag -width Ds
-.It Nm \e*R
-.Sq \(rg ,
-.Sq (Reg)
-in
-.Nm nroff .
-.It Nm \e*S
-Change to default type size.
-.El
-.Sh "Requests"
-* n.t.l. = next text line; p.i. = prevailing indent
-.Bl -column ".TH n s d f m" "Cause " "t=n.t.l.*" "Explanation " -offset Ds
-.It Sy Request Sy Cause Sy "If No" Sy Explanation
-.It "" Sy Break Sy "Argument" ""
-.It Nm \&.B Ar "t" no Ar t Ns =n.t.l.* Text is in bold font.
-.It Nm \&.BI Ar t no Ar t Ns =n.t.l. Join words, alternating bold and italic.
-.It Nm \&.BR Ar t no Ar t Ns =n.t.l. Join words, alternating bold and roman.
-.It Nm \&.DT no Li \&.5i 1i... Restore default tabs.
-.It Nm \&.HP Ar i yes Ar i Ns =p.i.* "Begin paragraph with hanging indent. Set prevailing indent to" Ar i .
-.It Nm \&.I Ar t no Ar t Ns =n.t.l. Text is italic.
-.It Nm \&.IB Ar t no Ar t Ns =n.t.l. Join words, altenrating italic and bold.
-.It Nm \&.IP Ar x Ar i yes Ar x Ns ="" Same as
-.Nm \&.TP
-with tag
-.Ar x .
-.It Nm \&.IR Ar t no Ar t Ns =n.t.l. Join words, alternating italic and roman.
-.It Nm \&.IX Ar t no - Index macro, not used (obsolete).
-.It Nm \&.LP yes - Begin left-aligned paragraph. Set prevailing indent to .5i.
-.It Nm \&.P yes - Same as
-.Nm \&.LP .
-.It Nm \&.PD Ar d no Ar d Ns =.4v Set vertical distance between paragraphs.
-.It Nm \&.PP yes - Same as
-.Nm \&.LP .
-.It Nm \&.RE yes - End of relative indent. Restores prevailing indent.
-.It Nm \&.RB Ar t no Ar t Ns =n.t.l. Join words, alternating roman and bold.
-.It Nm \&.RI Ar t no Ar t Ns =n.t.l. Join words, alternating roman and italic.
-.It Nm \&.RS Ar i yes Ar i Ns =p.i. Start relative indent, increase indent by Ar i .
-Sets prevailing indent to .5i for nested indents.
-.It Nm \&.SB Ar t no - Reduce size of text by 1 point, make text bold.
-.It Nm \&.SH Ar t yes - Section Heading.
-.It Nm \&.SM Ar t no Ar t Ns =n.t.l. Reduce size of text by 1 point.
-.It Nm \&.SS Ar t yes Ar t Ns =n.t.l. Section Subheading.
-.It Nm \&.TH Ar n s d f m yes - Begin reference page Ar n , No of section Ar s ; Ar d No is the date of the most recent change. If present, Ar f No is the left page footer; Ar m No is the main page (center) header. Sets prevailing indent and tabs to .5i.
-.It Nm \&.TP Ar i yes Ar i Ns =p.i. Begin indented paragraph, with the tag given on the next text line. Set prevailing indent to
-.Ar i .
-.It Nm \&.TX Ar t p no - Resolve the title abbreviation Ar t ; No join to punctuation mark (or text) Ar p .
-.El
-.Ss "Conventions"
-When formatting a manual page,
-.Nm
-examines the first line to determine
-whether it requires special processing.
-For example a first line consisting of:
-.Lp
-.Dl \&'\e" t
-.Lp
-indicates that the manual page must be run through the
-.Xr tbl 1
-preprocessor.
-.Lp
-A typical manual page for a command or function is laid out as follows:
-.Bl -tag -width ".SH RETURN VALUES"
-.
-.It Nm \&.TH Ar title Op "1-9"
-.
-The name of the command or function, which serves as the title of the manual
-page.
-This is followed by the number of the section in which it appears.
-.
-.It Nm \&.SH NAME
-.
-The name, or list of names, by which the command is called, followed by a dash
-and then a one-line summary of the action performed.
-All in roman font, this section contains no
-.Xr troff 1
-commands or escapes, and no macro requests.
-It is used to generate the database used by the
-.Xr whatis 1
-command.
-.
-.It Nm \&.SH SYNOPSIS
-.Bl -tag -width "Functions:"
-.It Sy Commands:
-The syntax of the command and its arguments, as typed on the command line.
-When in boldface, a word must be typed exactly as printed.
-When in italics, a word can be replaced with an argument that you supply.
-References to bold or italicized items are not capitalized in other sections,
-even when they begin a sentence.
-.Lp
-Syntactic symbols appear in roman face:
-.Bl -tag -width " "
-.It Op " "
-An argument, when surrounded by brackets is optional.
-.It |
-Arguments separated by a vertical bar are exclusive.
-You can supply only one item from such a list.
-.It \&.\|.\|.
-Arguments followed by an ellipsis can be repeated.
-When an ellipsis follows a bracketed set, the expression within the brackets can
-be repeated.
-.El
-.It Sy Functions:
-If required, the data declaration, or
-.Li #include
-directive, is shown first,
-followed by the function declaration.
-Otherwise, the function declaration is shown.
-.El
-.
-.It Nm \&.SH DESCRIPTION
-.
-A narrative overview of the command or function's external behavior.
-This includes how it interacts with files or data, and how it handles the
-standard input, standard output and standard error.
-Internals and implementation details are normally omitted.
-This section attempts to provide a succinct overview in answer to the question,
-"what does it do?"
-.Lp
-Literal text from the synopsis appears in constant width, as do literal
-filenames and references to items that appear elsewhere in the reference
-manuals.
-Arguments are italicized.
-.Lp
-If a command interprets either subcommands or an input grammar, its command
-interface or input grammar is normally described in a
-.Nm USAGE
-section, which follows the
-.Nm OPTIONS
-section.
-The
-.Nm DESCRIPTION
-section only
-describes the behavior of the command itself, not that of subcommands.
-.
-.It Nm \&.SH OPTIONS
-.
-The list of options along with a description of how each affects the command's
-operation.
-.
-.It Nm \&.SH RETURN VALUES
-.
-A list of the values the library routine will return to the calling program
-and the conditions that cause these values to be returned.
-.
-.It Nm \&.SH EXIT STATUS
-.
-A list of the values the utility will return to the calling program or shell,
-and the conditions that cause these values to be returned.
-.
-.It Nm \&.SH FILES
-.
-A list of files associated with the command or function.
-.
-.It Nm \&.SH SEE ALSO
-.
-A comma-separated list of related manual pages, followed by references to other
-published materials.
-.
-.It Nm \&.SH DIAGNOSTICS
-.
-A list of diagnostic messages and an explanation of each.
-.
-.It Nm \&.SH BUGS
-.
-A description of limitations, known defects, and possible problems associated
-with the command or function.
-.El
-.Sh FILES
-.Pa /usr/share/man/whatis
-.Sh NOTES
-The
-.Nm
-package should not be used for new documentation.
-The
-.Xr mdoc 5 ,
-package is preferred, as it uses semantic markup rather than physical markup.
-.Sh CODE SET INDEPENDENCE
-When processed with
-.Xr mandoc 1 ,
-this package is Code Set Independent.
-However, when processed with legacy tools such as
-.Xr nroff 1
-and
-.Xr troff 1 ,
-the use of multi-byte characters may not be supported.
-.Sh INTERFACE STABILITY
-.Sy Obsolete Committed .
-The
-.Xr mdoc 5
-package should be used instead.
-.Sh SEE ALSO
-.Xr eqn 1 ,
-.Xr man 1 ,
-.Xr mandoc 1 ,
-.Xr nroff 1 ,
-.Xr tbl 1 ,
-.Xr troff 1 ,
-.Xr whatis 1 ,
-.Xr mdoc 5
-.Rs
-.%A Dale Dougherty and Tim O'Reilly
-.%B Unix Text Processing
-.Re
diff --git a/usr/src/man/man5/mandoc_char.5 b/usr/src/man/man5/mandoc_char.5
deleted file mode 100644
index fd2b91800f..0000000000
--- a/usr/src/man/man5/mandoc_char.5
+++ /dev/null
@@ -1,829 +0,0 @@
-.\" $Id: mandoc_char.7,v 1.78 2020/10/31 11:45:16 schwarze Exp $
-.\"
-.\" Copyright (c) 2003 Jason McIntyre <jmc@openbsd.org>
-.\" Copyright (c) 2009, 2010, 2011 Kristaps Dzonsons <kristaps@bsd.lv>
-.\" Copyright (c) 2011,2013,2015,2017-2020 Ingo Schwarze <schwarze@openbsd.org>
-.\"
-.\" Permission to use, copy, modify, and distribute this software for any
-.\" purpose with or without fee is hereby granted, provided that the above
-.\" copyright notice and this permission notice appear in all copies.
-.\"
-.\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
-.\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
-.\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
-.\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
-.\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
-.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
-.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
-.\"
-.Dd $Mdocdate: October 31 2020 $
-.Dt MANDOC_CHAR 5
-.Os
-.Sh NAME
-.Nm mandoc_char
-.Nd mandoc special characters
-.Sh DESCRIPTION
-This page documents the
-.Xr mandoc_roff 5
-escape sequences accepted by
-.Xr mandoc 1
-to represent special characters in
-.Xr mdoc 5
-and
-.Xr man 5
-documents.
-.Pp
-The rendering depends on the
-.Xr mandoc 1
-output mode; it can be inspected by calling
-.Xr man 1
-on the
-.Nm
-manual page with different
-.Fl T
-arguments.
-In ASCII output, the rendering of some characters may be hard
-to interpret for the reader.
-Many are rendered as descriptive strings like
-.Qq <integral> ,
-.Qq <degree> ,
-or
-.Qq <Gamma> ,
-which may look ugly, and many are replaced by similar ASCII characters.
-In particular, accented characters are usually shown without the accent.
-For that reason, try to avoid using any of the special characters
-documented here except those discussed in the
-.Sx DESCRIPTION ,
-unless they are essential for explaining the subject matter at hand,
-for example when documenting complicated mathematical functions.
-.Pp
-In particular, in English manual pages, do not use special-character
-escape sequences to represent national language characters in author
-names; instead, provide ASCII transcriptions of the names.
-.Ss Dashes and Hyphens
-In typography there are different types of dashes of various width:
-the hyphen (\(hy),
-the en-dash (\(en),
-the em-dash (\(em),
-and the mathematical minus sign (\(mi).
-.Pp
-Hyphens are used for adjectives;
-to separate the two parts of a compound word;
-or to separate a word across two successive lines of text.
-The hyphen does not need to be escaped:
-.Bd -unfilled -offset indent
-blue-eyed
-lorry-driver
-.Ed
-.Pp
-The en-dash is used to separate the two elements of a range,
-or can be used the same way as an em-dash.
-It should be written as
-.Sq \e(en :
-.Bd -unfilled -offset indent
-pp. 95\e(en97.
-Go away \e(en or else!
-.Ed
-.Pp
-The em-dash can be used to show an interruption
-or can be used the same way as colons, semi-colons, or parentheses.
-It should be written as
-.Sq \e(em :
-.Bd -unfilled -offset indent
-Three things \e(em apples, oranges, and bananas.
-This is not that \e(em rather, this is that.
-.Ed
-.Pp
-In
-.Xr mandoc_roff 5
-documents, the minus sign is normally written as
-.Sq \e- .
-In manual pages, some style guides recommend to also use
-.Sq \e-
-if an ASCII 0x2d
-.Dq hyphen-minus
-output glyph that can be copied and pasted is desired in output modes
-supporting it, for example in
-.Fl T Cm utf8
-and
-.Fl T Cm html .
-But currently, no practically relevant manual page formatter requires
-that subtlety, so in manual pages, it is sufficient to write plain
-.Sq -
-to represent hyphen, minus, and hyphen-minus.
-.Pp
-If a word on a text input line contains a hyphen, a formatter may decide
-to insert an output line break after the hyphen if that helps filling
-the current output line, but the whole word would overflow the line.
-If it is important that the word is not broken across lines in this
-way, a zero-width space
-.Pq Sq \e&
-can be inserted before or after the hyphen.
-While
-.Xr mandoc 1
-never breaks the output line after hyphens adjacent to a zero-width
-space, after any of the other dash- or hyphen-like characters
-represented by escape sequences, or after hyphens inside words in
-macro arguments, other software may not respect these rules and may
-break the line even in such cases.
-.Pp
-Some
-.Xr mandoc_roff 5
-implementations contains dictionaries allowing to break the line
-at syllable boundaries even inside words that contain no hyphens.
-Such automatic hyphenation is not supported by
-.Xr mandoc 1 ,
-which only breaks the line at whitespace, and inside words only
-after existing hyphens.
-.Ss Spaces
-To separate words in normal text, for indenting and alignment
-in literal context, and when none of the following special cases apply,
-just use the normal space character
-.Pq Sq \ .
-.Pp
-When filling text, output lines may be broken between words, i.e. at space
-characters.
-To prevent a line break between two particular words,
-use the unpaddable non-breaking space escape sequence
-.Pq Sq \e\ \&
-instead of the normal space character.
-For example, the input string
-.Dq number\e\ 1
-will be kept together as
-.Dq number\ 1
-on the same output line.
-.Pp
-On request and macro lines, the normal space character serves as an
-argument delimiter.
-To include whitespace into arguments, quoting is usually the best choice;
-see the MACRO SYNTAX section in
-.Xr mandoc_roff 5 .
-In some cases, using the non-breaking space escape sequence
-.Pq Sq \e\ \&
-may be preferable.
-.Pp
-To escape macro names and to protect whitespace at the end
-of input lines, the zero-width space
-.Pq Sq \e&
-is often useful.
-For example, in
-.Xr mdoc 5 ,
-a normal space character can be displayed in single quotes in either
-of the following ways:
-.Pp
-.Dl .Sq \(dq \(dq
-.Dl .Sq \e \e&
-.Ss Quotes
-On request and macro lines, the double-quote character
-.Pq Sq \(dq
-is handled specially to allow quoting.
-One way to prevent this special handling is by using the
-.Sq \e(dq
-escape sequence.
-.Pp
-Note that on text lines, literal double-quote characters can be used
-verbatim.
-All other quote-like characters can be used verbatim as well,
-even on request and macro lines.
-.Ss Accents
-In output modes supporting such special output characters, for example
-.Fl T Cm pdf ,
-and sometimes less consistently in
-.Fl T Cm utf8 ,
-some
-.Xr mandoc_roff 5
-formatters convert the following ASCII input characters to the
-following Unicode special output characters:
-.Bl -column x(ga U+2018 -offset indent
-.It \(ga Ta U+2018 Ta left single quotation mark
-.It \(aq Ta U+2019 Ta right single quotation mark
-.It \(ti Ta U+02DC Ta small tilde
-.It \(ha Ta U+02C6 Ta modifier letter circumflex
-.El
-.Pp
-In prose, this automatic substitution is often desirable;
-but when these characters have to be displayed as plain ASCII
-characters, for example in source code samples, they require
-escaping to render as follows:
-.Bl -column x(ga U+2018 -offset indent
-.It \e(ga Ta U+0060 Ta grave accent
-.It \e(aq Ta U+0027 Ta apostrophe
-.It \e(ti Ta U+007E Ta tilde
-.It \e(ha Ta U+005E Ta circumflex accent
-.El
-.Ss Periods
-The period
-.Pq Sq \&.
-is handled specially at the beginning of an input line,
-where it introduces a
-.Xr mandoc_roff 5
-request or a macro, and when appearing alone as a macro argument in
-.Xr mdoc 5 .
-In such situations, prepend a zero-width space
-.Pq Sq \e&.
-to make it behave like normal text.
-.Pp
-Do not use the
-.Sq \e.
-escape sequence.
-It does not prevent special handling of the period.
-.Ss Backslashes
-To include a literal backslash
-.Pq Sq \e
-into the output, use the
-.Pq Sq \ee
-escape sequence.
-.Pp
-Note that doubling it
-.Pq Sq \e\e
-is not the right way to output a backslash.
-Because
-.Xr mandoc 1
-does not implement full
-.Xr mandoc_roff 5
-functionality, it may work with
-.Xr mandoc 1 ,
-but it may have weird effects on complete
-.Xr mandoc_roff 5
-implementations.
-.Sh SPECIAL CHARACTERS
-Special characters are encoded as
-.Sq \eX
-.Pq for a one-character escape ,
-.Sq \e(XX
-.Pq two-character ,
-and
-.Sq \e[N]
-.Pq N-character .
-For details, see the
-.Em Special Characters
-subsection of the
-.Xr mandoc_roff 5
-manual.
-.Pp
-Spaces, non-breaking unless stated otherwise:
-.Bl -column "Input" "Description" -offset indent -compact
-.It Em Input Ta Em Description
-.It Sq \e\ \& Ta unpaddable space
-.It \e\(ti Ta paddable space
-.It \e0 Ta digit-width space
-.It \e| Ta one-sixth \e(em narrow space, zero width in nroff mode
-.It \e^ Ta one-twelfth \e(em half-narrow space, zero width in nroff
-.It \e& Ta zero-width space
-.It \e) Ta zero-width space transparent to end-of-sentence detection
-.It \e% Ta zero-width space allowing hyphenation
-.It \e: Ta zero-width space allowing line break
-.El
-.Pp
-Lines:
-.Bl -column "Input" "Rendered" "Description" -offset indent -compact
-.It Em Input Ta Em Rendered Ta Em Description
-.It \e(ba Ta \(ba Ta bar
-.It \e(br Ta \(br Ta box rule
-.It \e(ul Ta \(ul Ta underscore
-.It \e(ru Ta \(ru Ta underscore (width 0.5m)
-.It \e(rn Ta \(rn Ta overline
-.It \e(bb Ta \(bb Ta broken bar
-.It \e(sl Ta \(sl Ta forward slash
-.It \e(rs Ta \(rs Ta backward slash
-.El
-.Pp
-Text markers:
-.Bl -column "Input" "Rendered" "Description" -offset indent -compact
-.It Em Input Ta Em Rendered Ta Em Description
-.It \e(ci Ta \(ci Ta circle
-.It \e(bu Ta \(bu Ta bullet
-.It \e(dd Ta \(dd Ta double dagger
-.It \e(dg Ta \(dg Ta dagger
-.It \e(lz Ta \(lz Ta lozenge
-.It \e(sq Ta \(sq Ta white square
-.It \e(ps Ta \(ps Ta paragraph
-.It \e(sc Ta \(sc Ta section
-.It \e(lh Ta \(lh Ta left hand
-.It \e(rh Ta \(rh Ta right hand
-.It \e(at Ta \(at Ta at
-.It \e(sh Ta \(sh Ta hash (pound)
-.It \e(CR Ta \(CR Ta carriage return
-.It \e(OK Ta \(OK Ta check mark
-.It \e(CL Ta \(CL Ta club suit
-.It \e(SP Ta \(SP Ta spade suit
-.It \e(HE Ta \(HE Ta heart suit
-.It \e(DI Ta \(DI Ta diamond suit
-.El
-.Pp
-Legal symbols:
-.Bl -column "Input" "Rendered" "Description" -offset indent -compact
-.It Em Input Ta Em Rendered Ta Em Description
-.It \e(co Ta \(co Ta copyright
-.It \e(rg Ta \(rg Ta registered
-.It \e(tm Ta \(tm Ta trademarked
-.El
-.Pp
-Punctuation:
-.Bl -column "Input" "Rendered" "Description" -offset indent -compact
-.It Em Input Ta Em Rendered Ta Em Description
-.It \e(em Ta \(em Ta em-dash
-.It \e(en Ta \(en Ta en-dash
-.It \e(hy Ta \(hy Ta hyphen
-.It \ee Ta \e Ta back-slash
-.It \e. Ta \. Ta period
-.It \e(r! Ta \(r! Ta upside-down exclamation
-.It \e(r? Ta \(r? Ta upside-down question
-.El
-.Pp
-Quotes:
-.Bl -column "Input" "Rendered" "Description" -offset indent -compact
-.It Em Input Ta Em Rendered Ta Em Description
-.It \e(Bq Ta \(Bq Ta right low double-quote
-.It \e(bq Ta \(bq Ta right low single-quote
-.It \e(lq Ta \(lq Ta left double-quote
-.It \e(rq Ta \(rq Ta right double-quote
-.It \e(oq Ta \(oq Ta left single-quote
-.It \e(cq Ta \(cq Ta right single-quote
-.It \e(aq Ta \(aq Ta apostrophe quote (ASCII character)
-.It \e(dq Ta \(dq Ta double quote (ASCII character)
-.It \e(Fo Ta \(Fo Ta left guillemet
-.It \e(Fc Ta \(Fc Ta right guillemet
-.It \e(fo Ta \(fo Ta left single guillemet
-.It \e(fc Ta \(fc Ta right single guillemet
-.El
-.Pp
-Brackets:
-.Bl -column "xxbracketrightbtx" Rendered Description -offset indent -compact
-.It Em Input Ta Em Rendered Ta Em Description
-.It \e(lB Ta \(lB Ta left bracket
-.It \e(rB Ta \(rB Ta right bracket
-.It \e(lC Ta \(lC Ta left brace
-.It \e(rC Ta \(rC Ta right brace
-.It \e(la Ta \(la Ta left angle
-.It \e(ra Ta \(ra Ta right angle
-.It \e(bv Ta \(bv Ta brace extension (special font)
-.It \e[braceex] Ta \[braceex] Ta brace extension
-.It \e[bracketlefttp] Ta \[bracketlefttp] Ta top-left hooked bracket
-.It \e[bracketleftbt] Ta \[bracketleftbt] Ta bottom-left hooked bracket
-.It \e[bracketleftex] Ta \[bracketleftex] Ta left hooked bracket extension
-.It \e[bracketrighttp] Ta \[bracketrighttp] Ta top-right hooked bracket
-.It \e[bracketrightbt] Ta \[bracketrightbt] Ta bottom-right hooked bracket
-.It \e[bracketrightex] Ta \[bracketrightex] Ta right hooked bracket extension
-.It \e(lt Ta \(lt Ta top-left hooked brace
-.It \e[bracelefttp] Ta \[bracelefttp] Ta top-left hooked brace
-.It \e(lk Ta \(lk Ta mid-left hooked brace
-.It \e[braceleftmid] Ta \[braceleftmid] Ta mid-left hooked brace
-.It \e(lb Ta \(lb Ta bottom-left hooked brace
-.It \e[braceleftbt] Ta \[braceleftbt] Ta bottom-left hooked brace
-.It \e[braceleftex] Ta \[braceleftex] Ta left hooked brace extension
-.It \e(rt Ta \(rt Ta top-left hooked brace
-.It \e[bracerighttp] Ta \[bracerighttp] Ta top-right hooked brace
-.It \e(rk Ta \(rk Ta mid-right hooked brace
-.It \e[bracerightmid] Ta \[bracerightmid] Ta mid-right hooked brace
-.It \e(rb Ta \(rb Ta bottom-right hooked brace
-.It \e[bracerightbt] Ta \[bracerightbt] Ta bottom-right hooked brace
-.It \e[bracerightex] Ta \[bracerightex] Ta right hooked brace extension
-.It \e[parenlefttp] Ta \[parenlefttp] Ta top-left hooked parenthesis
-.It \e[parenleftbt] Ta \[parenleftbt] Ta bottom-left hooked parenthesis
-.It \e[parenleftex] Ta \[parenleftex] Ta left hooked parenthesis extension
-.It \e[parenrighttp] Ta \[parenrighttp] Ta top-right hooked parenthesis
-.It \e[parenrightbt] Ta \[parenrightbt] Ta bottom-right hooked parenthesis
-.It \e[parenrightex] Ta \[parenrightex] Ta right hooked parenthesis extension
-.El
-.Pp
-Arrows:
-.Bl -column "Input" "Rendered" "Description" -offset indent -compact
-.It Em Input Ta Em Rendered Ta Em Description
-.It \e(<- Ta \(<- Ta left arrow
-.It \e(-> Ta \(-> Ta right arrow
-.It \e(<> Ta \(<> Ta left-right arrow
-.It \e(da Ta \(da Ta down arrow
-.It \e(ua Ta \(ua Ta up arrow
-.It \e(va Ta \(va Ta up-down arrow
-.It \e(lA Ta \(lA Ta left double-arrow
-.It \e(rA Ta \(rA Ta right double-arrow
-.It \e(hA Ta \(hA Ta left-right double-arrow
-.It \e(uA Ta \(uA Ta up double-arrow
-.It \e(dA Ta \(dA Ta down double-arrow
-.It \e(vA Ta \(vA Ta up-down double-arrow
-.It \e(an Ta \(an Ta horizontal arrow extension
-.El
-.Pp
-Logical:
-.Bl -column "Input" "Rendered" "Description" -offset indent -compact
-.It Em Input Ta Em Rendered Ta Em Description
-.It \e(AN Ta \(AN Ta logical and
-.It \e(OR Ta \(OR Ta logical or
-.It \e[tno] Ta \[tno] Ta logical not (text font)
-.It \e(no Ta \(no Ta logical not (special font)
-.It \e(te Ta \(te Ta existential quantifier
-.It \e(fa Ta \(fa Ta universal quantifier
-.It \e(st Ta \(st Ta such that
-.It \e(tf Ta \(tf Ta therefore
-.It \e(3d Ta \(3d Ta therefore
-.It \e(or Ta \(or Ta bitwise or
-.El
-.Pp
-Mathematical:
-.Bl -column "xxcoproductxx" "Rendered" "Description" -offset indent -compact
-.It Em Input Ta Em Rendered Ta Em Description
-.It \e- Ta \- Ta minus (text font)
-.It \e(mi Ta \(mi Ta minus (special font)
-.It + Ta + Ta plus (text font)
-.It \e(pl Ta \(pl Ta plus (special font)
-.It \e(-+ Ta \(-+ Ta minus-plus
-.It \e[t+-] Ta \[t+-] Ta plus-minus (text font)
-.It \e(+- Ta \(+- Ta plus-minus (special font)
-.It \e(pc Ta \(pc Ta center-dot
-.It \e[tmu] Ta \[tmu] Ta multiply (text font)
-.It \e(mu Ta \(mu Ta multiply (special font)
-.It \e(c* Ta \(c* Ta circle-multiply
-.It \e(c+ Ta \(c+ Ta circle-plus
-.It \e[tdi] Ta \[tdi] Ta divide (text font)
-.It \e(di Ta \(di Ta divide (special font)
-.It \e(f/ Ta \(f/ Ta fraction
-.It \e(** Ta \(** Ta asterisk
-.It \e(<= Ta \(<= Ta less-than-equal
-.It \e(>= Ta \(>= Ta greater-than-equal
-.It \e(<< Ta \(<< Ta much less
-.It \e(>> Ta \(>> Ta much greater
-.It \e(eq Ta \(eq Ta equal
-.It \e(!= Ta \(!= Ta not equal
-.It \e(== Ta \(== Ta equivalent
-.It \e(ne Ta \(ne Ta not equivalent
-.It \e(ap Ta \(ap Ta tilde operator
-.It \e(|= Ta \(|= Ta asymptotically equal
-.It \e(=\(ti Ta \(=~ Ta approximately equal
-.It \e(\(ti\(ti Ta \(~~ Ta almost equal
-.It \e(\(ti= Ta \(~= Ta almost equal
-.It \e(pt Ta \(pt Ta proportionate
-.It \e(es Ta \(es Ta empty set
-.It \e(mo Ta \(mo Ta element
-.It \e(nm Ta \(nm Ta not element
-.It \e(sb Ta \(sb Ta proper subset
-.It \e(nb Ta \(nb Ta not subset
-.It \e(sp Ta \(sp Ta proper superset
-.It \e(nc Ta \(nc Ta not superset
-.It \e(ib Ta \(ib Ta reflexive subset
-.It \e(ip Ta \(ip Ta reflexive superset
-.It \e(ca Ta \(ca Ta intersection
-.It \e(cu Ta \(cu Ta union
-.It \e(/_ Ta \(/_ Ta angle
-.It \e(pp Ta \(pp Ta perpendicular
-.It \e(is Ta \(is Ta integral
-.It \e[integral] Ta \[integral] Ta integral
-.It \e[sum] Ta \[sum] Ta summation
-.It \e[product] Ta \[product] Ta product
-.It \e[coproduct] Ta \[coproduct] Ta coproduct
-.It \e(gr Ta \(gr Ta gradient
-.It \e(sr Ta \(sr Ta square root
-.It \e[sqrt] Ta \[sqrt] Ta square root
-.It \e(lc Ta \(lc Ta left-ceiling
-.It \e(rc Ta \(rc Ta right-ceiling
-.It \e(lf Ta \(lf Ta left-floor
-.It \e(rf Ta \(rf Ta right-floor
-.It \e(if Ta \(if Ta infinity
-.It \e(Ah Ta \(Ah Ta aleph
-.It \e(Im Ta \(Im Ta imaginary
-.It \e(Re Ta \(Re Ta real
-.It \e(wp Ta \(wp Ta Weierstrass p
-.It \e(pd Ta \(pd Ta partial differential
-.It \e(-h Ta \(-h Ta Planck constant over 2\(*p
-.It \e[hbar] Ta \[hbar] Ta Planck constant over 2\(*p
-.It \e(12 Ta \(12 Ta one-half
-.It \e(14 Ta \(14 Ta one-fourth
-.It \e(34 Ta \(34 Ta three-fourths
-.It \e(18 Ta \(18 Ta one-eighth
-.It \e(38 Ta \(38 Ta three-eighths
-.It \e(58 Ta \(58 Ta five-eighths
-.It \e(78 Ta \(78 Ta seven-eighths
-.It \e(S1 Ta \(S1 Ta superscript 1
-.It \e(S2 Ta \(S2 Ta superscript 2
-.It \e(S3 Ta \(S3 Ta superscript 3
-.El
-.Pp
-Ligatures:
-.Bl -column "Input" "Rendered" "Description" -offset indent -compact
-.It Em Input Ta Em Rendered Ta Em Description
-.It \e(ff Ta \(ff Ta ff ligature
-.It \e(fi Ta \(fi Ta fi ligature
-.It \e(fl Ta \(fl Ta fl ligature
-.It \e(Fi Ta \(Fi Ta ffi ligature
-.It \e(Fl Ta \(Fl Ta ffl ligature
-.It \e(AE Ta \(AE Ta AE
-.It \e(ae Ta \(ae Ta ae
-.It \e(OE Ta \(OE Ta OE
-.It \e(oe Ta \(oe Ta oe
-.It \e(ss Ta \(ss Ta German eszett
-.It \e(IJ Ta \(IJ Ta IJ ligature
-.It \e(ij Ta \(ij Ta ij ligature
-.El
-.Pp
-Accents:
-.Bl -column "Input" "Rendered" "Description" -offset indent -compact
-.It Em Input Ta Em Rendered Ta Em Description
-.It \e(a" Ta \(a" Ta Hungarian umlaut
-.It \e(a- Ta \(a- Ta macron
-.It \e(a. Ta \(a. Ta dotted
-.It \e(a^ Ta \(a^ Ta circumflex
-.It \e(aa Ta \(aa Ta acute
-.It \e\(aq Ta \' Ta acute
-.It \e(ga Ta \(ga Ta grave
-.It \e\(ga Ta \` Ta grave
-.It \e(ab Ta \(ab Ta breve
-.It \e(ac Ta \(ac Ta cedilla
-.It \e(ad Ta \(ad Ta dieresis
-.It \e(ah Ta \(ah Ta caron
-.It \e(ao Ta \(ao Ta ring
-.It \e(a\(ti Ta \(a~ Ta tilde
-.It \e(ho Ta \(ho Ta ogonek
-.It \e(ha Ta \(ha Ta hat (ASCII character)
-.It \e(ti Ta \(ti Ta tilde (ASCII character)
-.El
-.Pp
-Accented letters:
-.Bl -column "Input" "Rendered" "Description" -offset indent -compact
-.It Em Input Ta Em Rendered Ta Em Description
-.It \e(\(aqA Ta \('A Ta acute A
-.It \e(\(aqE Ta \('E Ta acute E
-.It \e(\(aqI Ta \('I Ta acute I
-.It \e(\(aqO Ta \('O Ta acute O
-.It \e(\(aqU Ta \('U Ta acute U
-.It \e(\(aqY Ta \('Y Ta acute Y
-.It \e(\(aqa Ta \('a Ta acute a
-.It \e(\(aqe Ta \('e Ta acute e
-.It \e(\(aqi Ta \('i Ta acute i
-.It \e(\(aqo Ta \('o Ta acute o
-.It \e(\(aqu Ta \('u Ta acute u
-.It \e(\(aqy Ta \('y Ta acute y
-.It \e(\(gaA Ta \(`A Ta grave A
-.It \e(\(gaE Ta \(`E Ta grave E
-.It \e(\(gaI Ta \(`I Ta grave I
-.It \e(\(gaO Ta \(`O Ta grave O
-.It \e(\(gaU Ta \(`U Ta grave U
-.It \e(\(gaa Ta \(`a Ta grave a
-.It \e(\(gae Ta \(`e Ta grave e
-.It \e(\(gai Ta \(`i Ta grave i
-.It \e(\(gao Ta \(`i Ta grave o
-.It \e(\(gau Ta \(`u Ta grave u
-.It \e(\(tiA Ta \(~A Ta tilde A
-.It \e(\(tiN Ta \(~N Ta tilde N
-.It \e(\(tiO Ta \(~O Ta tilde O
-.It \e(\(tia Ta \(~a Ta tilde a
-.It \e(\(tin Ta \(~n Ta tilde n
-.It \e(\(tio Ta \(~o Ta tilde o
-.It \e(:A Ta \(:A Ta dieresis A
-.It \e(:E Ta \(:E Ta dieresis E
-.It \e(:I Ta \(:I Ta dieresis I
-.It \e(:O Ta \(:O Ta dieresis O
-.It \e(:U Ta \(:U Ta dieresis U
-.It \e(:a Ta \(:a Ta dieresis a
-.It \e(:e Ta \(:e Ta dieresis e
-.It \e(:i Ta \(:i Ta dieresis i
-.It \e(:o Ta \(:o Ta dieresis o
-.It \e(:u Ta \(:u Ta dieresis u
-.It \e(:y Ta \(:y Ta dieresis y
-.It \e(^A Ta \(^A Ta circumflex A
-.It \e(^E Ta \(^E Ta circumflex E
-.It \e(^I Ta \(^I Ta circumflex I
-.It \e(^O Ta \(^O Ta circumflex O
-.It \e(^U Ta \(^U Ta circumflex U
-.It \e(^a Ta \(^a Ta circumflex a
-.It \e(^e Ta \(^e Ta circumflex e
-.It \e(^i Ta \(^i Ta circumflex i
-.It \e(^o Ta \(^o Ta circumflex o
-.It \e(^u Ta \(^u Ta circumflex u
-.It \e(,C Ta \(,C Ta cedilla C
-.It \e(,c Ta \(,c Ta cedilla c
-.It \e(/L Ta \(/L Ta stroke L
-.It \e(/l Ta \(/l Ta stroke l
-.It \e(/O Ta \(/O Ta stroke O
-.It \e(/o Ta \(/o Ta stroke o
-.It \e(oA Ta \(oA Ta ring A
-.It \e(oa Ta \(oa Ta ring a
-.El
-.Pp
-Special letters:
-.Bl -column "Input" "Rendered" "Description" -offset indent -compact
-.It Em Input Ta Em Rendered Ta Em Description
-.It \e(-D Ta \(-D Ta Eth
-.It \e(Sd Ta \(Sd Ta eth
-.It \e(TP Ta \(TP Ta Thorn
-.It \e(Tp Ta \(Tp Ta thorn
-.It \e(.i Ta \(.i Ta dotless i
-.It \e(.j Ta \(.j Ta dotless j
-.El
-.Pp
-Currency:
-.Bl -column "Input" "Rendered" "Description" -offset indent -compact
-.It Em Input Ta Em Rendered Ta Em Description
-.It \e(Do Ta \(Do Ta dollar
-.It \e(ct Ta \(ct Ta cent
-.It \e(Eu Ta \(Eu Ta Euro symbol
-.It \e(eu Ta \(eu Ta Euro symbol
-.It \e(Ye Ta \(Ye Ta yen
-.It \e(Po Ta \(Po Ta pound
-.It \e(Cs Ta \(Cs Ta Scandinavian
-.It \e(Fn Ta \(Fn Ta florin
-.El
-.Pp
-Units:
-.Bl -column "Input" "Rendered" "Description" -offset indent -compact
-.It Em Input Ta Em Rendered Ta Em Description
-.It \e(de Ta \(de Ta degree
-.It \e(%0 Ta \(%0 Ta per-thousand
-.It \e(fm Ta \(fm Ta minute
-.It \e(sd Ta \(sd Ta second
-.It \e(mc Ta \(mc Ta micro
-.It \e(Of Ta \(Of Ta Spanish female ordinal
-.It \e(Om Ta \(Om Ta Spanish masculine ordinal
-.El
-.Pp
-Greek letters:
-.Bl -column "Input" "Rendered" "Description" -offset indent -compact
-.It Em Input Ta Em Rendered Ta Em Description
-.It \e(*A Ta \(*A Ta Alpha
-.It \e(*B Ta \(*B Ta Beta
-.It \e(*G Ta \(*G Ta Gamma
-.It \e(*D Ta \(*D Ta Delta
-.It \e(*E Ta \(*E Ta Epsilon
-.It \e(*Z Ta \(*Z Ta Zeta
-.It \e(*Y Ta \(*Y Ta Eta
-.It \e(*H Ta \(*H Ta Theta
-.It \e(*I Ta \(*I Ta Iota
-.It \e(*K Ta \(*K Ta Kappa
-.It \e(*L Ta \(*L Ta Lambda
-.It \e(*M Ta \(*M Ta Mu
-.It \e(*N Ta \(*N Ta Nu
-.It \e(*C Ta \(*C Ta Xi
-.It \e(*O Ta \(*O Ta Omicron
-.It \e(*P Ta \(*P Ta Pi
-.It \e(*R Ta \(*R Ta Rho
-.It \e(*S Ta \(*S Ta Sigma
-.It \e(*T Ta \(*T Ta Tau
-.It \e(*U Ta \(*U Ta Upsilon
-.It \e(*F Ta \(*F Ta Phi
-.It \e(*X Ta \(*X Ta Chi
-.It \e(*Q Ta \(*Q Ta Psi
-.It \e(*W Ta \(*W Ta Omega
-.It \e(*a Ta \(*a Ta alpha
-.It \e(*b Ta \(*b Ta beta
-.It \e(*g Ta \(*g Ta gamma
-.It \e(*d Ta \(*d Ta delta
-.It \e(*e Ta \(*e Ta epsilon
-.It \e(*z Ta \(*z Ta zeta
-.It \e(*y Ta \(*y Ta eta
-.It \e(*h Ta \(*h Ta theta
-.It \e(*i Ta \(*i Ta iota
-.It \e(*k Ta \(*k Ta kappa
-.It \e(*l Ta \(*l Ta lambda
-.It \e(*m Ta \(*m Ta mu
-.It \e(*n Ta \(*n Ta nu
-.It \e(*c Ta \(*c Ta xi
-.It \e(*o Ta \(*o Ta omicron
-.It \e(*p Ta \(*p Ta pi
-.It \e(*r Ta \(*r Ta rho
-.It \e(*s Ta \(*s Ta sigma
-.It \e(*t Ta \(*t Ta tau
-.It \e(*u Ta \(*u Ta upsilon
-.It \e(*f Ta \(*f Ta phi
-.It \e(*x Ta \(*x Ta chi
-.It \e(*q Ta \(*q Ta psi
-.It \e(*w Ta \(*w Ta omega
-.It \e(+h Ta \(+h Ta theta variant
-.It \e(+f Ta \(+f Ta phi variant
-.It \e(+p Ta \(+p Ta pi variant
-.It \e(+e Ta \(+e Ta epsilon variant
-.It \e(ts Ta \(ts Ta sigma terminal
-.El
-.Sh PREDEFINED STRINGS
-Predefined strings are inherited from the macro packages of historical
-troff implementations.
-They are
-.Em not recommended
-for use, as they differ across implementations.
-Manuals using these predefined strings are almost certainly not
-portable.
-.Pp
-Their syntax is similar to special characters, using
-.Sq \e*X
-.Pq for a one-character escape ,
-.Sq \e*(XX
-.Pq two-character ,
-and
-.Sq \e*[N]
-.Pq N-character .
-.Bl -column "Input" "Rendered" "Description" -offset indent
-.It Em Input Ta Em Rendered Ta Em Description
-.It \e*(Ba Ta \*(Ba Ta vertical bar
-.It \e*(Ne Ta \*(Ne Ta not equal
-.It \e*(Ge Ta \*(Ge Ta greater-than-equal
-.It \e*(Le Ta \*(Le Ta less-than-equal
-.It \e*(Gt Ta \*(Gt Ta greater-than
-.It \e*(Lt Ta \*(Lt Ta less-than
-.It \e*(Pm Ta \*(Pm Ta plus-minus
-.It \e*(If Ta \*(If Ta infinity
-.It \e*(Pi Ta \*(Pi Ta pi
-.It \e*(Na Ta \*(Na Ta NaN
-.It \e*(Am Ta \*(Am Ta ampersand
-.It \e*R Ta \*R Ta restricted mark
-.It \e*(Tm Ta \*(Tm Ta trade mark
-.It \e*q Ta \*q Ta double-quote
-.It \e*(Rq Ta \*(Rq Ta right-double-quote
-.It \e*(Lq Ta \*(Lq Ta left-double-quote
-.It \e*(lp Ta \*(lp Ta right-parenthesis
-.It \e*(rp Ta \*(rp Ta left-parenthesis
-.It \e*(lq Ta \*(lq Ta left double-quote
-.It \e*(rq Ta \*(rq Ta right double-quote
-.It \e*(ua Ta \*(ua Ta up arrow
-.It \e*(va Ta \*(va Ta up-down arrow
-.It \e*(<= Ta \*(<= Ta less-than-equal
-.It \e*(>= Ta \*(>= Ta greater-than-equal
-.It \e*(aa Ta \*(aa Ta acute
-.It \e*(ga Ta \*(ga Ta grave
-.It \e*(Px Ta \*(Px Ta POSIX standard name
-.It \e*(Ai Ta \*(Ai Ta ANSI standard name
-.El
-.Sh UNICODE CHARACTERS
-The escape sequences
-.Pp
-.Dl \e[uXXXX] and \eC\(aquXXXX\(aq
-.Pp
-are interpreted as Unicode codepoints.
-The codepoint must be in the range above U+0080 and less than U+10FFFF.
-For compatibility, the hexadecimal digits
-.Sq A
-to
-.Sq F
-must be given as uppercase characters,
-and points must be zero-padded to four characters; if
-greater than four characters, no zero padding is allowed.
-Unicode surrogates are not allowed.
-.Sh NUMBERED CHARACTERS
-For backward compatibility with existing manuals,
-.Xr mandoc 1
-also supports the
-.Pp
-.Dl \eN\(aq Ns Ar number Ns \(aq and \e[ Ns Cm char Ns Ar number ]
-.Pp
-escape sequences, inserting the character
-.Ar number
-from the current character set into the output.
-Of course, this is inherently non-portable and is already marked
-as deprecated in the Heirloom roff manual;
-on top of that, the second form is a GNU extension.
-For example, do not use \eN\(aq34\(aq or \e[char34], use \e(dq,
-or even the plain
-.Sq \(dq
-character where possible.
-.Sh COMPATIBILITY
-This section documents compatibility between mandoc and other
-troff implementations, at this time limited to GNU troff
-.Pq Qq groff .
-.Pp
-.Bl -dash -compact
-.It
-The \eN\(aq\(aq escape sequence is limited to printable characters; in
-groff, it accepts arbitrary character numbers.
-.It
-In
-.Fl T Ns Cm ascii ,
-the
-\e(ss, \e(nm, \e(nb, \e(nc, \e(ib, \e(ip, \e(pp, \e[sum], \e[product],
-\e[coproduct], \e(gr, \e(-h, and \e(a. special characters render
-differently between mandoc and groff.
-.It
-In
-.Fl T Ns Cm html ,
-the \e(\(ti=, \e(nb, and \e(nc special characters render differently
-between mandoc and groff.
-.It
-The
-.Fl T Ns Cm ps
-and
-.Fl T Ns Cm pdf
-modes format like
-.Fl T Ns Cm ascii
-instead of rendering glyphs as in groff.
-.It
-The \e[radicalex], \e[sqrtex], and \e(ru special characters have been omitted
-from mandoc either because they are poorly documented or they have no
-known representation.
-.El
-.Sh SEE ALSO
-.Xr mandoc 1 ,
-.Xr man 5 ,
-.Xr mandoc_roff 5 ,
-.Xr mdoc 5
-.Sh AUTHORS
-The
-.Nm
-manual page was written by
-.An Kristaps Dzonsons Aq Mt kristaps@bsd.lv .
-.Sh CAVEATS
-The predefined string
-.Sq \e*(Ba
-mimics the behaviour of the
-.Sq \&|
-character in
-.Xr mdoc 5 ;
-thus, if you wish to render a vertical bar with no side effects, use
-the
-.Sq \e(ba
-escape.
diff --git a/usr/src/man/man5/mandoc_roff.5 b/usr/src/man/man5/mandoc_roff.5
deleted file mode 100644
index 17e9d2e09c..0000000000
--- a/usr/src/man/man5/mandoc_roff.5
+++ /dev/null
@@ -1,2342 +0,0 @@
-.\" $Id: roff.7,v 1.116 2021/09/18 12:23:06 schwarze Exp $
-.\"
-.\" Copyright (c) 2010, 2011, 2012 Kristaps Dzonsons <kristaps@bsd.lv>
-.\" Copyright (c) 2010-2019 Ingo Schwarze <schwarze@openbsd.org>
-.\"
-.\" Permission to use, copy, modify, and distribute this software for any
-.\" purpose with or without fee is hereby granted, provided that the above
-.\" copyright notice and this permission notice appear in all copies.
-.\"
-.\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
-.\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
-.\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
-.\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
-.\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
-.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
-.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
-.\"
-.Dd $Mdocdate: September 18 2021 $
-.Dt ROFF 5
-.Os
-.Sh NAME
-.Nm roff
-.Nd roff language reference for mandoc
-.Sh DESCRIPTION
-The
-.Nm roff
-language is a general purpose text formatting language.
-Since traditional implementations of the
-.Xr mdoc 5
-and
-.Xr man 5
-manual formatting languages are based on it,
-many real-world manuals use small numbers of
-.Nm
-requests and escape sequences intermixed with their
-.Xr mdoc 5
-or
-.Xr man 5
-code.
-To properly format such manuals, the
-.Xr mandoc 1
-utility supports a subset of
-.Nm
-requests and escapes.
-Even though this manual page lists all
-.Nm
-requests and escape sequences, it only contains partial information
-about requests not supported by
-.Xr mandoc 1
-and about language features that do not matter for manual pages.
-For complete
-.Nm
-manuals, consult the
-.Sx SEE ALSO
-section.
-.Pp
-Input lines beginning with the control character
-.Sq \&.
-are parsed for requests and macros.
-Such lines are called
-.Dq request lines
-or
-.Dq macro lines ,
-respectively.
-Requests change the processing state and manipulate the formatting;
-some macros also define the document structure and produce formatted
-output.
-The single quote
-.Pq Qq \(aq
-is accepted as an alternative control character,
-treated by
-.Xr mandoc 1
-just like
-.Ql \&.
-.Pp
-Lines not beginning with control characters are called
-.Dq text lines .
-They provide free-form text to be printed; the formatting of the text
-depends on the respective processing context.
-.Sh LANGUAGE SYNTAX
-.Nm
-documents may contain only graphable 7-bit ASCII characters, the space
-character, and, in certain circumstances, the tab character.
-The backslash character
-.Sq \e
-indicates the start of an escape sequence, used for example for
-.Sx Comments
-and
-.Sx Special Characters .
-For a complete listing of escape sequences, consult the
-.Sx ESCAPE SEQUENCE REFERENCE
-below.
-.Ss Comments
-Text following an escaped double-quote
-.Sq \e\(dq ,
-whether in a request, macro, or text line, is ignored to the end of the line.
-A request line beginning with a control character and comment escape
-.Sq \&.\e\(dq
-is also ignored.
-Furthermore, request lines with only a control character and optional
-trailing whitespace are stripped from input.
-.Pp
-Examples:
-.Bd -literal -offset indent -compact
-\&.\e\(dq This is a comment line.
-\&.\e\(dq The next line is ignored:
-\&.
-\&.Sh EXAMPLES \e\(dq This is a comment, too.
-\&example text \e\(dq And so is this.
-.Ed
-.Ss Special Characters
-Special characters are used to encode special glyphs and are rendered
-differently across output media.
-They may occur in request, macro, and text lines.
-Sequences begin with the escape character
-.Sq \e
-followed by either an open-parenthesis
-.Sq \&(
-for two-character sequences; an open-bracket
-.Sq \&[
-for n-character sequences (terminated at a close-bracket
-.Sq \&] ) ;
-or a single one character sequence.
-.Pp
-Examples:
-.Bl -tag -width Ds -offset indent -compact
-.It Li \e(em
-Two-letter em dash escape.
-.It Li \ee
-One-letter backslash escape.
-.El
-.Pp
-See
-.Xr mandoc_char 5
-for a complete list.
-.Ss Font Selection
-In
-.Xr mdoc 5
-and
-.Xr man 5
-documents, fonts are usually selected with macros.
-The
-.Ic \ef
-escape sequence and the
-.Ic \&ft
-request can be used to manually change the font,
-but this is not recommended in
-.Xr mdoc 5
-documents.
-Such manual font changes are overridden by many subsequent macros.
-.Pp
-The following fonts are supported:
-.Pp
-.Bl -tag -width CW -offset indent -compact
-.It Cm B
-Bold font.
-.It Cm BI
-A font that is both bold and italic.
-.It Cm CB
-Bold constant width font.
-Same as
-.Cm B
-in terminal output.
-.It Cm CI
-Italic constant width font.
-Same as
-.Cm I
-in terminal output.
-.It Cm CR
-Regular constant width font.
-Same as
-.Cm R
-in terminal output.
-.It Cm CW
-An alias for
-.Cm CR .
-.It Cm I
-Italic font.
-.It Cm P
-Return to the previous font.
-If a macro caused a font change since the last
-.Ic \ef
-eascape sequence or
-.Ic \&ft
-request, this returns to the font before the last font change in
-the macro rather than to the font before the last manual font change.
-.It Cm R
-Roman font.
-This is the default font.
-.It Cm 1
-An alias for
-.Cm R .
-.It Cm 2
-An alias for
-.Cm I .
-.It Cm 3
-An alias for
-.Cm B .
-.It Cm 4
-An alias for
-.Cm BI .
-.El
-.Pp
-Examples:
-.Bl -tag -width Ds -offset indent -compact
-.It Li \efBbold\efR
-Write in \fBbold\fP, then switch to regular font mode.
-.It Li \efIitalic\efP
-Write in \fIitalic\fP, then return to previous font mode.
-.It Li \ef(BIbold italic\efP
-Write in \f(BIbold italic\fP, then return to previous font mode.
-.El
-.Ss Whitespace
-Whitespace consists of the space character.
-In text lines, whitespace is preserved within a line.
-In request and macro lines, whitespace delimits arguments and is discarded.
-.Pp
-Unescaped trailing spaces are stripped from text line input unless in a
-literal context.
-In general, trailing whitespace on any input line is discouraged for
-reasons of portability.
-In the rare case that a space character is needed at the end of an
-input line, it may be forced by
-.Sq \e\ \e& .
-.Pp
-Literal space characters can be produced in the output
-using escape sequences.
-In macro lines, they can also be included in arguments using quotation; see
-.Sx MACRO SYNTAX
-for details.
-.Pp
-Blank text lines, which may include whitespace, are only permitted
-within literal contexts.
-If the first character of a text line is a space, that line is printed
-with a leading newline.
-.Ss Scaling Widths
-Many requests and macros support scaled widths for their arguments.
-The syntax for a scaled width is
-.Sq Li [+-]?[0-9]*.[0-9]*[:unit:] ,
-where a decimal must be preceded or followed by at least one digit.
-.Pp
-The following scaling units are accepted:
-.Pp
-.Bl -tag -width Ds -offset indent -compact
-.It c
-centimetre
-.It i
-inch
-.It P
-pica (1/6 inch)
-.It p
-point (1/72 inch)
-.It f
-scale
-.Sq u
-by 65536
-.It v
-default vertical span
-.It m
-width of rendered
-.Sq m
-.Pq em
-character
-.It n
-width of rendered
-.Sq n
-.Pq en
-character
-.It u
-default horizontal span for the terminal
-.It M
-mini-em (1/100 em)
-.El
-.Pp
-Using anything other than
-.Sq m ,
-.Sq n ,
-or
-.Sq v
-is necessarily non-portable across output media.
-See
-.Sx COMPATIBILITY .
-.Pp
-If a scaling unit is not provided, the numerical value is interpreted
-under the default rules of
-.Sq v
-for vertical spaces and
-.Sq u
-for horizontal ones.
-.Pp
-Examples:
-.Bl -tag -width ".Bl -tag -width 2i" -offset indent -compact
-.It Li \&.Bl -tag -width 2i
-two-inch tagged list indentation in
-.Xr mdoc 5
-.It Li \&.HP 2i
-two-inch tagged list indentation in
-.Xr man 5
-.It Li \&.sp 2v
-two vertical spaces
-.El
-.Ss Sentence Spacing
-Each sentence should terminate at the end of an input line.
-By doing this, a formatter will be able to apply the proper amount of
-spacing after the end of sentence (unescaped) period, exclamation mark,
-or question mark followed by zero or more non-sentence closing
-delimiters
-.Po
-.Sq \&) ,
-.Sq \&] ,
-.Sq \&' ,
-.Sq \&"
-.Pc .
-.Pp
-The proper spacing is also intelligently preserved if a sentence ends at
-the boundary of a macro line.
-.Pp
-If an input line happens to end with a period, exclamation or question
-mark that isn't the end of a sentence, append a zero-width space
-.Pq Sq \e& .
-.Pp
-Examples:
-.Bd -literal -offset indent -compact
-Do not end sentences mid-line like this. Instead,
-end a sentence like this.
-A macro would end like this:
-\&.Xr mandoc 1 \&.
-An abbreviation at the end of an input line needs escaping, e.g.\e&
-like this.
-.Ed
-.Sh REQUEST SYNTAX
-A request or macro line consists of:
-.Pp
-.Bl -enum -compact
-.It
-the control character
-.Sq \&.
-or
-.Sq \(aq
-at the beginning of the line,
-.It
-optionally an arbitrary amount of whitespace,
-.It
-the name of the request or the macro, which is one word of arbitrary
-length, terminated by whitespace,
-.It
-and zero or more arguments delimited by whitespace.
-.El
-.Pp
-Thus, the following request lines are all equivalent:
-.Bd -literal -offset indent
-\&.ig end
-\&.ig end
-\&. ig end
-.Ed
-.Sh MACRO SYNTAX
-Macros are provided by the
-.Xr mdoc 5
-and
-.Xr man 5
-languages and can be defined by the
-.Ic \&de
-request.
-When called, they follow the same syntax as requests, except that
-macro arguments may optionally be quoted by enclosing them
-in double quote characters
-.Pq Sq \(dq .
-Quoted text, even if it contains whitespace or would cause
-a macro invocation when unquoted, is always considered literal text.
-Inside quoted text, pairs of double quote characters
-.Pq Sq Qq
-resolve to single double quote characters.
-.Pp
-To be recognised as the beginning of a quoted argument, the opening
-quote character must be preceded by a space character.
-A quoted argument extends to the next double quote character that is not
-part of a pair, or to the end of the input line, whichever comes earlier.
-Leaving out the terminating double quote character at the end of the line
-is discouraged.
-For clarity, if more arguments follow on the same input line,
-it is recommended to follow the terminating double quote character
-by a space character; in case the next character after the terminating
-double quote character is anything else, it is regarded as the beginning
-of the next, unquoted argument.
-.Pp
-Both in quoted and unquoted arguments, pairs of backslashes
-.Pq Sq \e\e
-resolve to single backslashes.
-In unquoted arguments, space characters can alternatively be included
-by preceding them with a backslash
-.Pq Sq \e\~ ,
-but quoting is usually better for clarity.
-.Pp
-Examples:
-.Bl -tag -width Ds -offset indent -compact
-.It Li .Fn strlen \(dqconst char *s\(dq
-Group arguments
-.Qq const char *s
-into one function argument.
-If unspecified,
-.Qq const ,
-.Qq char ,
-and
-.Qq *s
-would be considered separate arguments.
-.It Li .Op \(dqFl a\(dq
-Consider
-.Qq \&Fl a
-as literal text instead of a flag macro.
-.El
-.Sh REQUEST REFERENCE
-The
-.Xr mandoc 1
-.Nm
-parser recognises the following requests.
-For requests marked as "ignored" or "unsupported", any arguments are
-ignored, and the number of arguments is not checked.
-.Bl -tag -width Ds
-.It Ic \&ab Op Ar message
-Abort processing.
-Currently unsupported.
-.It Ic \&ad Op Cm b | c | l | n | r
-Set line adjustment mode for subsequent text.
-Currently ignored.
-.It Ic \&af Ar registername format
-Assign an output format to a number register.
-Currently ignored.
-.It Ic \&aln Ar newname oldname
-Create an alias for a number register.
-Currently unsupported.
-.It Ic \&als Ar newname oldname
-Create an alias for a request, string, macro, or diversion.
-.It Ic \&am Ar macroname Op Ar endmacro
-Append to a macro definition.
-The syntax of this request is the same as that of
-.Ic \&de .
-.It Ic \&am1 Ar macroname Op Ar endmacro
-Append to a macro definition, switching roff compatibility mode off
-during macro execution (groff extension).
-The syntax of this request is the same as that of
-.Ic \&de1 .
-Since
-.Xr mandoc 1
-does not implement
-.Nm
-compatibility mode at all, it handles this request as an alias for
-.Ic \&am .
-.It Ic \&ami Ar macrostring Op Ar endstring
-Append to a macro definition, specifying the macro name indirectly
-(groff extension).
-The syntax of this request is the same as that of
-.Ic \&dei .
-.It Ic \&ami1 Ar macrostring Op Ar endstring
-Append to a macro definition, specifying the macro name indirectly
-and switching roff compatibility mode off during macro execution
-(groff extension).
-The syntax of this request is the same as that of
-.Ic \&dei1 .
-Since
-.Xr mandoc 1
-does not implement
-.Nm
-compatibility mode at all, it handles this request as an alias for
-.Ic \&ami .
-.It Ic \&as Ar stringname Op Ar string
-Append to a user-defined string.
-The syntax of this request is the same as that of
-.Ic \&ds .
-If a user-defined string with the specified name does not yet exist,
-it is set to the empty string before appending.
-.It Ic \&as1 Ar stringname Op Ar string
-Append to a user-defined string, switching roff compatibility mode off
-during macro execution (groff extension).
-The syntax of this request is the same as that of
-.Ic \&ds1 .
-Since
-.Xr mandoc 1
-does not implement
-.Nm
-compatibility mode at all, it handles this request as an alias for
-.Ic \&as .
-.It Ic \&asciify Ar divname
-Fully unformat a diversion.
-Currently unsupported.
-.It Ic \&backtrace
-Print a backtrace of the input stack.
-This is a groff extension and currently ignored.
-.It Ic \&bd Ar font Oo Ar curfont Oc Op Ar offset
-Artificially embolden by repeated printing with small shifts.
-Currently ignored.
-.It Ic \&bleedat Ar left top width height
-Set the BleedBox page parameter for PDF generation.
-This is a Heirloom extension and currently ignored.
-.It Ic \&blm Ar macroname
-Set a blank line trap.
-Currently unsupported.
-.It Ic \&box Ar divname
-Begin a diversion without including a partially filled line.
-Currently unsupported.
-.It Ic \&boxa Ar divname
-Add to a diversion without including a partially filled line.
-Currently unsupported.
-.It Ic \&bp Oo Cm + Ns | Ns Cm - Oc Ns Ar pagenumber
-Begin a new page.
-Currently ignored.
-.It Ic \&BP Ar source height width position offset flags label
-Define a frame and place a picture in it.
-This is a Heirloom extension and currently unsupported.
-.It Ic \&br
-Break the output line.
-.It Ic \&break
-Break out of the innermost
-.Ic \&while
-loop.
-.It Ic \&breakchar Ar char ...
-Optional line break characters.
-This is a Heirloom extension and currently ignored.
-.It Ic \&brnl Ar N
-Break output line after the next
-.Ar N
-input lines.
-This is a Heirloom extension and currently ignored.
-.It Ic \&brp
-Break and spread output line.
-Currently, this is implemented as an alias for
-.Ic \&br .
-.It Ic \&brpnl Ar N
-Break and spread output line after the next
-.Ar N
-input lines.
-This is a Heirloom extension and currently ignored.
-.It Ic \&c2 Op Ar char
-Change the no-break control character.
-Currently unsupported.
-.It Ic \&cc Op Ar char
-Change the control character.
-If
-.Ar char
-is not specified, the control character is reset to
-.Sq \&. .
-Trailing characters are ignored.
-.It Ic \&ce Op Ar N
-Center the next
-.Ar N
-input lines without filling.
-.Ar N
-defaults to 1.
-An argument of 0 or less ends centering.
-Currently, high level macros abort centering.
-.It Ic \&cf Ar filename
-Output the contents of a file.
-Ignored because insecure.
-.It Ic \&cflags Ar flags char ...
-Set character flags.
-This is a groff extension and currently ignored.
-.It Ic \&ch Ar macroname Op Ar dist
-Change a trap location.
-Currently ignored.
-.It Ic \&char Ar glyph Op Ar string
-Define or redefine the ASCII character or character escape sequence
-.Ar glyph
-to be rendered as
-.Ar string ,
-which can be empty.
-Only partially supported in
-.Xr mandoc 1 ;
-may interact incorrectly with
-.Ic \&tr .
-.It Ic \&chop Ar stringname
-Remove the last character from a macro, string, or diversion.
-Currently unsupported.
-.It Ic \&class Ar classname char ...
-Define a character class.
-This is a groff extension and currently ignored.
-.It Ic \&close Ar streamname
-Close an open file.
-Ignored because insecure.
-.It Ic \&CL Ar color text
-Print text in color.
-This is a Heirloom extension and currently unsupported.
-.It Ic \&color Op Cm 1 | 0
-Activate or deactivate colors.
-This is a groff extension and currently ignored.
-.It Ic \&composite Ar from to
-Define a name component for composite glyph names.
-This is a groff extension and currently unsupported.
-.It Ic \&continue
-Immediately start the next iteration of a
-.Ic \&while
-loop.
-Currently unsupported.
-.It Ic \&cp Op Cm 1 | 0
-Switch
-.Nm
-compatibility mode on or off.
-Currently ignored.
-.It Ic \&cropat Ar left top width height
-Set the CropBox page parameter for PDF generation.
-This is a Heirloom extension and currently ignored.
-.It Ic \&cs Ar font Op Ar width Op Ar emsize
-Constant character spacing mode.
-Currently ignored.
-.It Ic \&cu Op Ar N
-Underline next
-.Ar N
-input lines including whitespace.
-Currently ignored.
-.It Ic \&da Ar divname
-Append to a diversion.
-Currently unsupported.
-.It Ic \&dch Ar macroname Op Ar dist
-Change a trap location in the current diversion.
-This is a Heirloom extension and currently unsupported.
-.It Ic \&de Ar macroname Op Ar endmacro
-Define a
-.Nm
-macro.
-Its syntax can be either
-.Bd -literal -offset indent
-.Pf . Ic \&de Ar macroname
-.Ar definition
-\&..
-.Ed
-.Pp
-or
-.Bd -literal -offset indent
-.Pf . Ic \&de Ar macroname endmacro
-.Ar definition
-.Pf . Ar endmacro
-.Ed
-.Pp
-Both forms define or redefine the macro
-.Ar macroname
-to represent the
-.Ar definition ,
-which may consist of one or more input lines, including the newline
-characters terminating each line, optionally containing calls to
-.Nm
-requests,
-.Nm
-macros or high-level macros like
-.Xr man 5
-or
-.Xr mdoc 5
-macros, whichever applies to the document in question.
-.Pp
-Specifying a custom
-.Ar endmacro
-works in the same way as for
-.Ic \&ig ;
-namely, the call to
-.Sq Pf . Ar endmacro
-first ends the
-.Ar definition ,
-and after that, it is also evaluated as a
-.Nm
-request or
-.Nm
-macro, but not as a high-level macro.
-.Pp
-The macro can be invoked later using the syntax
-.Pp
-.D1 Pf . Ar macroname Op Ar argument Op Ar argument ...
-.Pp
-Regarding argument parsing, see
-.Sx MACRO SYNTAX
-above.
-.Pp
-The line invoking the macro will be replaced
-in the input stream by the
-.Ar definition ,
-replacing all occurrences of
-.No \e\e$ Ns Ar N ,
-where
-.Ar N
-is a digit, by the
-.Ar N Ns th Ar argument .
-For example,
-.Bd -literal -offset indent
-\&.de ZN
-\efI\e^\e\e$1\e^\efP\e\e$2
-\&..
-\&.ZN XtFree .
-.Ed
-.Pp
-produces
-.Pp
-.D1 \efI\e^XtFree\e^\efP.
-.Pp
-in the input stream, and thus in the output: \fI\^XtFree\^\fP.
-Each occurrence of \e\e$* is replaced with all the arguments,
-joined together with single space characters.
-The variant \e\e$@ is similar, except that each argument is
-individually quoted.
-.Pp
-Since macros and user-defined strings share a common string table,
-defining a macro
-.Ar macroname
-clobbers the user-defined string
-.Ar macroname ,
-and the
-.Ar definition
-can also be printed using the
-.Sq \e*
-string interpolation syntax described below
-.Ic ds ,
-but this is rarely useful because every macro definition contains at least
-one explicit newline character.
-.Pp
-In order to prevent endless recursion, both groff and
-.Xr mandoc 1
-limit the stack depth for expanding macros and strings
-to a large, but finite number, and
-.Xr mandoc 1
-also limits the length of the expanded input line.
-Do not rely on the exact values of these limits.
-.It Ic \&de1 Ar macroname Op Ar endmacro
-Define a
-.Nm
-macro that will be executed with
-.Nm
-compatibility mode switched off during macro execution.
-This is a groff extension.
-Since
-.Xr mandoc 1
-does not implement
-.Nm
-compatibility mode at all, it handles this request as an alias for
-.Ic \&de .
-.It Ic \&defcolor Ar newname scheme component ...
-Define a color name.
-This is a groff extension and currently ignored.
-.It Ic \&dei Ar macrostring Op Ar endstring
-Define a
-.Nm
-macro, specifying the macro name indirectly (groff extension).
-The syntax of this request is the same as that of
-.Ic \&de .
-The effect is the same as:
-.Pp
-.D1 Pf . Cm \&de No \e* Ns Bo Ar macrostring Bc Op \e* Ns Bq Ar endstring
-.It Ic \&dei1 Ar macrostring Op Ar endstring
-Define a
-.Nm
-macro that will be executed with
-.Nm
-compatibility mode switched off during macro execution,
-specifying the macro name indirectly (groff extension).
-Since
-.Xr mandoc 1
-does not implement
-.Nm
-compatibility mode at all, it handles this request as an alias for
-.Ic \&dei .
-.It Ic \&device Ar string ...
-.It Ic \&devicem Ar stringname
-These two requests only make sense with the groff-specific intermediate
-output format and are unsupported.
-.It Ic \&di Ar divname
-Begin a diversion.
-Currently unsupported.
-.It Ic \&do Ar command Op Ar argument ...
-Execute
-.Nm
-request or macro line with compatibility mode disabled.
-Currently unsupported.
-.It Ic \&ds Ar stringname Op Oo \(dq Oc Ns Ar string
-Define a user-defined string.
-The
-.Ar stringname
-and
-.Ar string
-arguments are space-separated.
-If the
-.Ar string
-begins with a double-quote character, that character will not be part
-of the string.
-All remaining characters on the input line form the
-.Ar string ,
-including whitespace and double-quote characters, even trailing ones.
-.Pp
-The
-.Ar string
-can be interpolated into subsequent text by using
-.No \e* Ns Bq Ar stringname
-for a
-.Ar stringname
-of arbitrary length, or \e*(NN or \e*N if the length of
-.Ar stringname
-is two or one characters, respectively.
-Interpolation can be prevented by escaping the leading backslash;
-that is, an asterisk preceded by an even number of backslashes
-does not trigger string interpolation.
-.Pp
-Since user-defined strings and macros share a common string table,
-defining a string
-.Ar stringname
-clobbers the macro
-.Ar stringname ,
-and the
-.Ar stringname
-used for defining a string can also be invoked as a macro,
-in which case the following input line will be appended to the
-.Ar string ,
-forming a new input line passed to the
-.Nm
-parser.
-For example,
-.Bd -literal -offset indent
-\&.ds badidea .S
-\&.badidea
-H SYNOPSIS
-.Ed
-.Pp
-invokes the
-.Ic SH
-macro when used in a
-.Xr man 5
-document.
-Such abuse is of course strongly discouraged.
-.It Ic \&ds1 Ar stringname Op Oo \(dq Oc Ns Ar string
-Define a user-defined string that will be expanded with
-.Nm
-compatibility mode switched off during string expansion.
-This is a groff extension.
-Since
-.Xr mandoc 1
-does not implement
-.Nm
-compatibility mode at all, it handles this request as an alias for
-.Ic \&ds .
-.It Ic \&dwh Ar dist macroname
-Set a location trap in the current diversion.
-This is a Heirloom extension and currently unsupported.
-.It Ic \&dt Op Ar dist macroname
-Set a trap within a diversion.
-Currently unsupported.
-.It Ic \&ec Op Ar char
-Enable the escape mechanism and change the escape character.
-The
-.Ar char
-argument defaults to the backslash
-.Pq Sq \e .
-.It Ic \&ecr
-Restore the escape character.
-Currently unsupported.
-.It Ic \&ecs
-Save the escape character.
-Currently unsupported.
-.It Ic \&el Ar body
-The
-.Dq else
-half of an if/else conditional.
-Pops a result off the stack of conditional evaluations pushed by
-.Ic \&ie
-and uses it as its conditional.
-If no stack entries are present (e.g., due to no prior
-.Ic \&ie
-calls)
-then false is assumed.
-The syntax of this request is similar to
-.Ic \&if
-except that the conditional is missing.
-.It Ic \&em Ar macroname
-Set a trap at the end of input.
-Currently unsupported.
-.It Ic \&EN
-End an equation block.
-See
-.Ic \&EQ .
-.It Ic \&eo
-Disable the escape mechanism completely.
-.It Ic \&EP
-End a picture started by
-.Ic \&BP .
-This is a Heirloom extension and currently unsupported.
-.It Ic \&EQ
-Begin an equation block.
-See
-.Xr eqn 5
-for a description of the equation language.
-.It Ic \&errprint Ar message
-Print a string like an error message.
-This is a Heirloom extension and currently ignored.
-.It Ic \&ev Op Ar envname
-Switch to another environment.
-Currently unsupported.
-.It Ic \&evc Op Ar envname
-Copy an environment into the current environment.
-Currently unsupported.
-.It Ic \&ex
-Abort processing and exit.
-Currently unsupported.
-.It Ic \&fallback Ar curfont font ...
-Select the fallback sequence for a font.
-This is a Heirloom extension and currently ignored.
-.It Ic \&fam Op Ar familyname
-Change the font family.
-This is a groff extension and currently ignored.
-.It Ic \&fc Op Ar delimchar Op Ar padchar
-Define a delimiting and a padding character for fields.
-Currently unsupported.
-.It Ic \&fchar Ar glyphname Op Ar string
-Define a fallback glyph.
-Currently unsupported.
-.It Ic \&fcolor Ar colorname
-Set the fill color for \eD objects.
-This is a groff extension and currently ignored.
-.It Ic \&fdeferlig Ar font string ...
-Defer ligature building.
-This is a Heirloom extension and currently ignored.
-.It Ic \&feature Cm + Ns | Ns Cm - Ns Ar name
-Enable or disable an OpenType feature.
-This is a Heirloom extension and currently ignored.
-.It Ic \&fi
-Break the output line and switch to fill mode,
-which is active by default but can be ended with the
-.Ic \&nf
-request.
-In fill mode, input from subsequent input lines is added to
-the same output line until the next word no longer fits,
-at which point the output line is broken.
-This request is implied by the
-.Xr mdoc 5
-.Ic \&Sh
-macro and by the
-.Xr man 5
-.Ic \&SH ,
-.Ic \&SS ,
-and
-.Ic \&EE
-macros.
-.It Ic \&fkern Ar font minkern
-Control the use of kerning tables for a font.
-This is a Heirloom extension and currently ignored.
-.It Ic \&fl
-Flush output.
-Currently ignored.
-.It Ic \&flig Ar font string char ...
-Define ligatures.
-This is a Heirloom extension and currently ignored.
-.It Ic \&fp Ar position font Op Ar filename
-Assign font position.
-Currently ignored.
-.It Ic \&fps Ar mapname ...
-Mount a font with a special character map.
-This is a Heirloom extension and currently ignored.
-.It Ic \&fschar Ar font glyphname Op Ar string
-Define a font-specific fallback glyph.
-This is a groff extension and currently unsupported.
-.It Ic \&fspacewidth Ar font Op Ar afmunits
-Set a font-specific width for the space character.
-This is a Heirloom extension and currently ignored.
-.It Ic \&fspecial Ar curfont Op Ar font ...
-Conditionally define a special font.
-This is a groff extension and currently ignored.
-.It Ic \&ft Op Ar font
-Change the font; see
-.Sx Font Selection .
-The
-.Ar font
-argument defaults to
-.Cm P .
-.It Ic \&ftr Ar newname Op Ar oldname
-Translate font name.
-This is a groff extension and currently ignored.
-.It Ic \&fzoom Ar font Op Ar permille
-Zoom font size.
-Currently ignored.
-.It Ic \&gcolor Op Ar colorname
-Set glyph color.
-This is a groff extension and currently ignored.
-.It Ic \&hc Op Ar char
-Set the hyphenation character.
-Currently ignored.
-.It Ic \&hcode Ar char code ...
-Set hyphenation codes of characters.
-Currently ignored.
-.It Ic \&hidechar Ar font char ...
-Hide characters in a font.
-This is a Heirloom extension and currently ignored.
-.It Ic \&hla Ar language
-Set hyphenation language.
-This is a groff extension and currently ignored.
-.It Ic \&hlm Op Ar number
-Set maximum number of consecutive hyphenated lines.
-Currently ignored.
-.It Ic \&hpf Ar filename
-Load hyphenation pattern file.
-This is a groff extension and currently ignored.
-.It Ic \&hpfa Ar filename
-Load hyphenation pattern file, appending to the current patterns.
-This is a groff extension and currently ignored.
-.It Ic \&hpfcode Ar code code ...
-Define mapping values for character codes in hyphenation patterns.
-This is a groff extension and currently ignored.
-.It Ic \&hw Ar word ...
-Specify hyphenation points in words.
-Currently ignored.
-.It Ic \&hy Op Ar mode
-Set automatic hyphenation mode.
-Currently ignored.
-.It Ic \&hylang Ar language
-Set hyphenation language.
-This is a Heirloom extension and currently ignored.
-.It Ic \&hylen Ar nchar
-Minimum word length for hyphenation.
-This is a Heirloom extension and currently ignored.
-.It Ic \&hym Op Ar length
-Set hyphenation margin.
-This is a groff extension and currently ignored.
-.It Ic \&hypp Ar penalty ...
-Define hyphenation penalties.
-This is a Heirloom extension and currently ignored.
-.It Ic \&hys Op Ar length
-Set hyphenation space.
-This is a groff extension and currently ignored.
-.It Ic \&ie Ar condition body
-The
-.Dq if
-half of an if/else conditional.
-The result of the conditional is pushed into a stack used by subsequent
-invocations of
-.Ic \&el ,
-which may be separated by any intervening input (or not exist at all).
-Its syntax is equivalent to
-.Ic \&if .
-.It Ic \&if Ar condition body
-Begin a conditional.
-This request can also be written as follows:
-.Bd -unfilled -offset indent
-.Pf . Ic \&if Ar condition No \e{ Ns Ar body
-.Ar body ... Ns \e}
-.Ed
-.Bd -unfilled -offset indent
-.Pf . Ic \&if Ar condition No \e{\e
-.Ar body ...
-.Pf . No \e}
-.Ed
-.Pp
-The
-.Ar condition
-is a boolean expression.
-Currently,
-.Xr mandoc 1
-supports the following subset of roff conditionals:
-.Bl -bullet
-.It
-If
-.Sq \&!
-is prefixed to
-.Ar condition ,
-it is logically inverted.
-.It
-If the first character of
-.Ar condition
-is
-.Sq n
-.Pq nroff mode
-or
-.Sq o
-.Pq odd page ,
-it evaluates to true, and the
-.Ar body
-starts with the next character.
-.It
-If the first character of
-.Ar condition
-is
-.Sq e
-.Pq even page ,
-.Sq t
-.Pq troff mode ,
-or
-.Sq v
-.Pq vroff mode ,
-it evaluates to false, and the
-.Ar body
-starts with the next character.
-.It
-If the first character of
-.Ar condition
-is
-.Sq c
-.Pq character available ,
-it evaluates to true if the following character is an ASCII character
-or a valid character escape sequence, or to false otherwise.
-The
-.Ar body
-starts with the character following that next character.
-.It
-If the first character of
-.Ar condition
-is
-.Sq d ,
-it evaluates to true if the rest of
-.Ar condition
-is the name of an existing user defined macro or string;
-otherwise, it evaluates to false.
-.It
-If the first character of
-.Ar condition
-is
-.Sq r ,
-it evaluates to true if the rest of
-.Ar condition
-is the name of an existing number register;
-otherwise, it evaluates to false.
-.It
-If the
-.Ar condition
-starts with a parenthesis or with an optionally signed
-integer number, it is evaluated according to the rules of
-.Sx Numerical expressions
-explained below.
-It evaluates to true if the result is positive,
-or to false if the result is zero or negative.
-.It
-Otherwise, the first character of
-.Ar condition
-is regarded as a delimiter and it evaluates to true if the string
-extending from its first to its second occurrence is equal to the
-string extending from its second to its third occurrence.
-.It
-If
-.Ar condition
-cannot be parsed, it evaluates to false.
-.El
-.Pp
-If a conditional is false, its children are not processed, but are
-syntactically interpreted to preserve the integrity of the input
-document.
-Thus,
-.Pp
-.D1 \&.if t .ig
-.Pp
-will discard the
-.Sq \&.ig ,
-which may lead to interesting results, but
-.Pp
-.D1 \&.if t .if t \e{\e
-.Pp
-will continue to syntactically interpret to the block close of the final
-conditional.
-Sub-conditionals, in this case, obviously inherit the truth value of
-the parent.
-.Pp
-If the
-.Ar body
-section is begun by an escaped brace
-.Sq \e{ ,
-scope continues until the end of the input line containing the
-matching closing-brace escape sequence
-.Sq \e} .
-If the
-.Ar body
-is not enclosed in braces, scope continues until the end of the line.
-If the
-.Ar condition
-is followed by a
-.Ar body
-on the same line, whether after a brace or not, then requests and macros
-.Em must
-begin with a control character.
-It is generally more intuitive, in this case, to write
-.Bd -unfilled -offset indent
-.Pf . Ic \&if Ar condition No \e{\e
-.Pf . Ar request
-.Pf . No \e}
-.Ed
-.Pp
-than having the request or macro follow as
-.Pp
-.D1 Pf . Ic \&if Ar condition Pf \e{. Ar request
-.Pp
-The scope of a conditional is always parsed, but only executed if the
-conditional evaluates to true.
-.Pp
-Note that the
-.Sq \e}
-is converted into a zero-width escape sequence if not passed as a
-standalone macro
-.Sq \&.\e} .
-For example,
-.Pp
-.D1 \&.Fl a \e} b
-.Pp
-will result in
-.Sq \e}
-being considered an argument of the
-.Sq \&Fl
-macro.
-.It Ic \&ig Op Ar endmacro
-Ignore input.
-Its syntax can be either
-.Bd -literal -offset indent
-.Pf . Cm \&ig
-.Ar ignored text
-\&..
-.Ed
-.Pp
-or
-.Bd -literal -offset indent
-.Pf . Cm \&ig Ar endmacro
-.Ar ignored text
-.Pf . Ar endmacro
-.Ed
-.Pp
-In the first case, input is ignored until a
-.Sq \&..
-request is encountered on its own line.
-In the second case, input is ignored until the specified
-.Sq Pf . Ar endmacro
-is encountered.
-Do not use the escape character
-.Sq \e
-anywhere in the definition of
-.Ar endmacro ;
-it would cause very strange behaviour.
-.Pp
-When the
-.Ar endmacro
-is a roff request or a roff macro, like in
-.Pp
-.D1 \&.ig if
-.Pp
-the subsequent invocation of
-.Ic \&if
-will first terminate the
-.Ar ignored text ,
-then be invoked as usual.
-Otherwise, it only terminates the
-.Ar ignored text ,
-and arguments following it or the
-.Sq \&..
-request are discarded.
-.It Ic \&in Op Oo Cm + Ns | Ns Cm - Oc Ns Ar width
-Change indentation.
-See
-.Xr man 5 .
-Ignored in
-.Xr mdoc 5 .
-.It Ic \&index Ar register stringname substring
-Find a substring in a string.
-This is a Heirloom extension and currently unsupported.
-.It Ic \&it Ar expression macro
-Set an input line trap.
-The named
-.Ar macro
-will be invoked after processing the number of input text lines
-specified by the numerical
-.Ar expression .
-While evaluating the
-.Ar expression ,
-the unit suffixes described below
-.Sx Scaling Widths
-are ignored.
-.It Ic \&itc Ar expression macro
-Set an input line trap, not counting lines ending with \ec.
-Currently unsupported.
-.It Ic \&IX Ar class keystring
-To support the generation of a table of contents,
-.Xr pod2man 1
-emits this user-defined macro, usually without defining it.
-To avoid reporting large numbers of spurious errors,
-.Xr mandoc 1
-ignores it.
-.It Ic \&kern Op Cm 1 | 0
-Switch kerning on or off.
-Currently ignored.
-.It Ic \&kernafter Ar font char ... afmunits ...
-Increase kerning after some characters.
-This is a Heirloom extension and currently ignored.
-.It Ic \&kernbefore Ar font char ... afmunits ...
-Increase kerning before some characters.
-This is a Heirloom extension and currently ignored.
-.It Ic \&kernpair Ar font char ... font char ... afmunits
-Add a kerning pair to the kerning table.
-This is a Heirloom extension and currently ignored.
-.It Ic \&lc Op Ar glyph
-Define a leader repetition character.
-Currently unsupported.
-.It Ic \&lc_ctype Ar localename
-Set the
-.Dv LC_CTYPE
-locale.
-This is a Heirloom extension and currently unsupported.
-.It Ic \&lds Ar macroname string
-Define a local string.
-This is a Heirloom extension and currently unsupported.
-.It Ic \&length Ar register string
-Count the number of input characters in a string.
-Currently unsupported.
-.It Ic \&letadj Ar lspmin lshmin letss lspmax lshmax
-Dynamic letter spacing and reshaping.
-This is a Heirloom extension and currently ignored.
-.It Ic \&lf Ar lineno Op Ar filename
-Change the line number for error messages.
-Ignored because insecure.
-.It Ic \&lg Op Cm 1 | 0
-Switch the ligature mechanism on or off.
-Currently ignored.
-.It Ic \&lhang Ar font char ... afmunits
-Hang characters at left margin.
-This is a Heirloom extension and currently ignored.
-.It Ic \&linetabs Op Cm 1 | 0
-Enable or disable line-tabs mode.
-This is a groff extension and currently unsupported.
-.It Ic \&ll Op Oo Cm + Ns | Ns Cm - Oc Ns Ar width
-Change the output line length.
-If the
-.Ar width
-argument is omitted, the line length is reset to its previous value.
-The default setting for terminal output is 78n.
-If a sign is given, the line length is added to or subtracted from;
-otherwise, it is set to the provided value.
-Using this request in new manuals is discouraged for several reasons,
-among others because it overrides the
-.Xr mandoc 1
-.Fl O Cm width
-command line option.
-.It Ic \&lnr Ar register Oo Cm + Ns | Ns Cm - Oc Ns Ar value Op Ar increment
-Set local number register.
-This is a Heirloom extension and currently unsupported.
-.It Ic \&lnrf Ar register Oo Cm + Ns | Ns Cm - Oc Ns Ar value Op Ar increment
-Set local floating-point register.
-This is a Heirloom extension and currently unsupported.
-.It Ic \&lpfx Ar string
-Set a line prefix.
-This is a Heirloom extension and currently unsupported.
-.It Ic \&ls Op Ar factor
-Set line spacing.
-It takes one integer argument specifying the vertical distance of
-subsequent output text lines measured in v units.
-Currently ignored.
-.It Ic \&lsm Ar macroname
-Set a leading spaces trap.
-This is a groff extension and currently unsupported.
-.It Ic \&lt Op Oo Cm + Ns | Ns Cm - Oc Ns Ar width
-Set title line length.
-Currently ignored.
-.It Ic \&mc Ar glyph Op Ar dist
-Print margin character in the right margin.
-The
-.Ar dist
-is currently ignored; instead, 1n is used.
-.It Ic \&mediasize Ar media
-Set the device media size.
-This is a Heirloom extension and currently ignored.
-.It Ic \&minss Ar width
-Set minimum word space.
-This is a Heirloom extension and currently ignored.
-.It Ic \&mk Op Ar register
-Mark vertical position.
-Currently ignored.
-.It Ic \&mso Ar filename
-Load a macro file using the search path.
-Ignored because insecure.
-.It Ic \&na
-Disable adjusting without changing the adjustment mode.
-Currently ignored.
-.It Ic \&ne Op Ar height
-Declare the need for the specified minimum vertical space
-before the next trap or the bottom of the page.
-Currently ignored.
-.It Ic \&nf
-Break the output line and switch to no-fill mode.
-Subsequent input lines are kept together on the same output line
-even when exceeding the right margin,
-and line breaks in subsequent input cause output line breaks.
-This request is implied by the
-.Xr mdoc 5
-.Ic \&Bd Fl unfilled
-and
-.Ic \&Bd Fl literal
-macros and by the
-.Xr man 5
-.Ic \&EX
-macro.
-The
-.Ic \&fi
-request switches back to the default fill mode.
-.It Ic \&nh
-Turn off automatic hyphenation mode.
-Currently ignored.
-.It Ic \&nhychar Ar char ...
-Define hyphenation-inhibiting characters.
-This is a Heirloom extension and currently ignored.
-.It Ic \&nm Op Ar start Op Ar inc Op Ar space Op Ar indent
-Print line numbers.
-Currently unsupported.
-.It Ic \&nn Op Ar number
-Temporarily turn off line numbering.
-Currently unsupported.
-.It Ic \&nop Ar body
-Execute the rest of the input line as a request, macro, or text line,
-skipping the
-.Ic \&nop
-request and any space characters immediately following it.
-This is mostly used to indent text lines inside macro definitions.
-.It Ic \&nr Ar register Oo Cm + Ns | Ns Cm - Oc Ns Ar expression Op Ar stepsize
-Define or change a register.
-A register is an arbitrary string value that defines some sort of state,
-which influences parsing and/or formatting.
-For the syntax of
-.Ar expression ,
-see
-.Sx Numerical expressions
-below.
-If it is prefixed by a sign, the register will be
-incremented or decremented instead of assigned to.
-.Pp
-The
-.Ar stepsize
-is used by the
-.Ic \en+
-auto-increment feature.
-It remains unchanged when omitted while changing an existing register,
-and it defaults to 0 when defining a new register.
-.Pp
-The following
-.Ar register
-is handled specially:
-.Bl -tag -width Ds
-.It Cm nS
-If set to a positive integer value, certain
-.Xr mdoc 5
-macros will behave in the same way as in the
-.Em SYNOPSIS
-section.
-If set to 0, these macros will behave in the same way as outside the
-.Em SYNOPSIS
-section, even when called within the
-.Em SYNOPSIS
-section itself.
-Note that starting a new
-.Xr mdoc 5
-section with the
-.Ic \&Sh
-macro will reset this register.
-.El
-.It Xo
-.Ic \&nrf Ar register Oo Cm + Ns | Ns Cm - Oc Ns Ar expression
-.Op Ar increment
-.Xc
-Define or change a floating-point register.
-This is a Heirloom extension and currently unsupported.
-.It Ic \&nroff
-Force nroff mode.
-This is a groff extension and currently ignored.
-.It Ic \&ns
-Turn on no-space mode.
-Currently ignored.
-.It Ic \&nx Op Ar filename
-Abort processing of the current input file and process another one.
-Ignored because insecure.
-.It Ic \&open Ar stream file
-Open a file for writing.
-Ignored because insecure.
-.It Ic \&opena Ar stream file
-Open a file for appending.
-Ignored because insecure.
-.It Ic \&os
-Output saved vertical space.
-Currently ignored.
-.It Ic \&output Ar string
-Output directly to intermediate output.
-Not supported.
-.It Ic \&padj Op Cm 1 | 0
-Globally control paragraph-at-once adjustment.
-This is a Heirloom extension and currently ignored.
-.It Ic \&papersize Ar media
-Set the paper size.
-This is a Heirloom extension and currently ignored.
-.It Ic \&pc Op Ar char
-Change the page number character.
-Currently ignored.
-.It Ic \&pev
-Print environments.
-This is a groff extension and currently ignored.
-.It Ic \&pi Ar command
-Pipe output to a shell command.
-Ignored because insecure.
-.It Ic \&PI
-Low-level request used by
-.Ic \&BP .
-This is a Heirloom extension and currently unsupported.
-.It Ic \&pl Op Oo Cm + Ns | Ns Cm - Oc Ns Ar height
-Change page length.
-Currently ignored.
-.It Ic \&pm
-Print names and sizes of macros, strings, and diversions
-to standard error output.
-Currently ignored.
-.It Ic \&pn Oo Cm + Ns | Ns Cm - Oc Ns Ar number
-Change the page number of the next page.
-Currently ignored.
-.It Ic \&pnr
-Print all number registers on standard error output.
-Currently ignored.
-.It Ic \&po Op Oo Cm + Ns | Ns Cm - Oc Ns Ar offset
-Set a horizontal page offset.
-If no argument is specified, the page offset is reverted to its
-previous value.
-If a sign is specified, the new page offset is calculated relative
-to the current one; otherwise, it is absolute.
-The argument follows the syntax of
-.Sx Scaling Widths
-and the default scaling unit is
-.Cm m .
-.It Ic \&ps Op Oo Cm + Ns | Ns Cm - Oc Ns size
-Change point size.
-Currently ignored.
-.It Ic \&psbb Ar filename
-Retrieve the bounding box of a PostScript file.
-Currently unsupported.
-.It Ic \&pshape Ar indent length ...
-Set a special shape for the current paragraph.
-This is a Heirloom extension and currently unsupported.
-.It Ic \&pso Ar command
-Include output of a shell command.
-Ignored because insecure.
-.It Ic \&ptr
-Print the names and positions of all traps on standard error output.
-This is a groff extension and currently ignored.
-.It Ic \&pvs Op Oo Cm + Ns | Ns Cm - Oc Ns Ar height
-Change post-vertical spacing.
-This is a groff extension and currently ignored.
-.It Ic \&rchar Ar glyph ...
-Remove glyph definitions.
-Currently unsupported.
-.It Ic \&rd Op Ar prompt Op Ar argument ...
-Read from standard input.
-Currently ignored.
-.It Ic \&recursionlimit Ar maxrec maxtail
-Set the maximum stack depth for recursive macros.
-This is a Heirloom extension and currently ignored.
-.It Ic \&return Op Ar twice
-Exit the presently executed macro and return to the caller.
-The argument is currently ignored.
-.It Ic \&rfschar Ar font glyph ...
-Remove font-specific fallback glyph definitions.
-Currently unsupported.
-.It Ic \&rhang Ar font char ... afmunits
-Hang characters at right margin.
-This is a Heirloom extension and currently ignored.
-.It Ic \&rj Op Ar N
-Justify the next
-.Ar N
-input lines to the right margin without filling.
-.Ar N
-defaults to 1.
-An argument of 0 or less ends right adjustment.
-.It Ic \&rm Ar macroname
-Remove a request, macro or string.
-.It Ic \&rn Ar oldname newname
-Rename a request, macro, diversion, or string.
-In
-.Xr mandoc 1 ,
-user-defined macros,
-.Xr mdoc 5
-and
-.Xr man 5
-macros, and user-defined strings can be renamed, but renaming of
-predefined strings and of
-.Nm
-requests is not supported, and diversions are not implemented at all.
-.It Ic \&rnn Ar oldname newname
-Rename a number register.
-Currently unsupported.
-.It Ic \&rr Ar register
-Remove a register.
-.It Ic \&rs
-End no-space mode.
-Currently ignored.
-.It Ic \&rt Op Ar dist
-Return to marked vertical position.
-Currently ignored.
-.It Ic \&schar Ar glyph Op Ar string
-Define global fallback glyph.
-This is a groff extension and currently unsupported.
-.It Ic \&sentchar Ar char ...
-Define sentence-ending characters.
-This is a Heirloom extension and currently ignored.
-.It Ic \&shc Op Ar glyph
-Change the soft hyphen character.
-Currently ignored.
-.It Ic \&shift Op Ar number
-Shift macro arguments
-.Ar number
-times, by default once: \e\e$i becomes what \e\e$i+number was.
-Also decrement \en(.$ by
-.Ar number .
-.It Ic \&sizes Ar size ...
-Define permissible point sizes.
-This is a groff extension and currently ignored.
-.It Ic \&so Ar filename
-Include a source file.
-The file is read and its contents processed as input in place of the
-.Ic \&so
-request line.
-To avoid inadvertent inclusion of unrelated files,
-.Xr mandoc 1
-only accepts relative paths not containing the strings
-.Qq ../
-and
-.Qq /.. .
-.Pp
-This request requires
-.Xr man 1
-to change to the right directory before calling
-.Xr mandoc 1 ,
-per convention to the root of the manual tree.
-Typical usage looks like:
-.Pp
-.Dl \&.so man3/Xcursor.3
-.Pp
-As the whole concept is rather fragile, the use of
-.Ic \&so
-is discouraged.
-Use
-.Xr ln 1
-instead.
-.It Ic \&sp Op Ar height
-Break the output line and emit vertical space.
-The argument follows the syntax of
-.Sx Scaling Widths
-and defaults to one blank line
-.Pq Li 1v .
-.It Ic \&spacewidth Op Cm 1 | 0
-Set the space width from the font metrics file.
-This is a Heirloom extension and currently ignored.
-.It Ic \&special Op Ar font ...
-Define a special font.
-This is a groff extension and currently ignored.
-.It Ic \&spreadwarn Op Ar width
-Warn about wide spacing between words.
-Currently ignored.
-.It Ic \&ss Ar wordspace Op Ar sentencespace
-Set space character size.
-Currently ignored.
-.It Ic \&sty Ar position style
-Associate style with a font position.
-This is a groff extension and currently ignored.
-.It Ic \&substring Ar stringname startpos Op Ar endpos
-Replace a user-defined string with a substring.
-Currently unsupported.
-.It Ic \&sv Op Ar height
-Save vertical space.
-Currently ignored.
-.It Ic \&sy Ar command
-Execute shell command.
-Ignored because insecure.
-.It Ic \&T&
-Re-start a table layout, retaining the options of the prior table
-invocation.
-See
-.Ic \&TS .
-.It Ic \&ta Op Ar width ... Op Cm T Ar width ...
-Set tab stops.
-Each
-.Ar width
-argument follows the syntax of
-.Sx Scaling Widths .
-If prefixed by a plus sign, it is relative to the previous tab stop.
-The arguments after the
-.Cm T
-marker are used repeatedly as often as needed; for each reuse,
-they are taken relative to the last previously established tab stop.
-When
-.Ic \&ta
-is called without arguments, all tab stops are cleared.
-.It Ic \&tc Op Ar glyph
-Change tab repetition character.
-Currently unsupported.
-.It Ic \&TE
-End a table context.
-See
-.Ic \&TS .
-.It Ic \&ti Oo Cm + Ns | Ns Cm - Oc Ns Ar width
-Break the output line and indent the next output line by
-.Ar width .
-If a sign is specified, the temporary indentation is calculated
-relative to the current indentation; otherwise, it is absolute.
-The argument follows the syntax of
-.Sx Scaling Widths
-and the default scaling unit is
-.Cm m .
-.It Ic \&tkf Ar font minps width1 maxps width2
-Enable track kerning for a font.
-Currently ignored.
-.It Ic \&tl No \& Ap Ar left Ap Ar center Ap Ar right Ap
-Print a title line.
-Currently unsupported.
-.It Ic \&tm Ar string
-Print to standard error output.
-Currently ignored.
-.It Ic \&tm1 Ar string
-Print to standard error output, allowing leading blanks.
-This is a groff extension and currently ignored.
-.It Ic \&tmc Ar string
-Print to standard error output without a trailing newline.
-This is a groff extension and currently ignored.
-.It Ic \&tr Ar glyph glyph ...
-Output character translation.
-The first glyph in each pair is replaced by the second one.
-Character escapes can be used; for example,
-.Pp
-.Dl tr \e(xx\e(yy
-.Pp
-replaces all invocations of \e(xx with \e(yy.
-.It Ic \&track Ar font minps width1 maxps width2
-Static letter space tracking.
-This is a Heirloom extension and currently ignored.
-.It Ic \&transchar Ar char ...
-Define transparent characters for sentence-ending.
-This is a Heirloom extension and currently ignored.
-.It Ic \&trf Ar filename
-Output the contents of a file, disallowing invalid characters.
-This is a groff extension and ignored because insecure.
-.It Ic \&trimat Ar left top width height
-Set the TrimBox page parameter for PDF generation.
-This is a Heirloom extension and currently ignored.
-.It Ic \&trin Ar glyph glyph ...
-Output character translation, ignored by
-.Ic \&asciify .
-Currently unsupported.
-.It Ic \&trnt Ar glyph glyph ...
-Output character translation, ignored by \e!.
-Currently unsupported.
-.It Ic \&troff
-Force troff mode.
-This is a groff extension and currently ignored.
-.It Ic \&TS
-Begin a table, which formats input in aligned rows and columns.
-See
-.Xr tbl 5
-for a description of the tbl language.
-.It Ic \&uf Ar font
-Globally set the underline font.
-Currently ignored.
-.It Ic \&ul Op Ar N
-Underline next
-.Ar N
-input lines.
-Currently ignored.
-.It Ic \&unformat Ar divname
-Unformat spaces and tabs in a diversion.
-Currently unsupported.
-.It Ic \&unwatch Ar macroname
-Disable notification for string or macro.
-This is a Heirloom extension and currently ignored.
-.It Ic \&unwatchn Ar register
-Disable notification for register.
-This is a Heirloom extension and currently ignored.
-.It Ic \&vpt Op Cm 1 | 0
-Enable or disable vertical position traps.
-This is a groff extension and currently ignored.
-.It Ic \&vs Op Oo Cm + Ns | Ns Cm - Oc Ns Ar height
-Change vertical spacing.
-Currently ignored.
-.It Ic \&warn Ar flags
-Set warning level.
-Currently ignored.
-.It Ic \&warnscale Ar si
-Set the scaling indicator used in warnings.
-This is a groff extension and currently ignored.
-.It Ic \&watch Ar macroname
-Notify on change of string or macro.
-This is a Heirloom extension and currently ignored.
-.It Ic \&watchlength Ar maxlength
-On change, report the contents of macros and strings
-up to the specified length.
-This is a Heirloom extension and currently ignored.
-.It Ic \&watchn Ar register
-Notify on change of register.
-This is a Heirloom extension and currently ignored.
-.It Ic \&wh Ar dist Op Ar macroname
-Set a page location trap.
-Currently unsupported.
-.It Ic \&while Ar condition body
-Repeated execution while a
-.Ar condition
-is true, with syntax similar to
-.Ic \&if .
-Currently implemented with two restrictions: cannot nest,
-and each loop must start and end in the same scope.
-.It Ic \&write Oo \(dq Oc Ns Ar string
-Write to an open file.
-Ignored because insecure.
-.It Ic \&writec Oo \(dq Oc Ns Ar string
-Write to an open file without appending a newline.
-Ignored because insecure.
-.It Ic \&writem Ar macroname
-Write macro or string to an open file.
-Ignored because insecure.
-.It Ic \&xflag Ar level
-Set the extension level.
-This is a Heirloom extension and currently ignored.
-.El
-.Ss Numerical expressions
-The
-.Ic \&nr ,
-.Ic \&if ,
-and
-.Ic \&ie
-requests accept integer numerical expressions as arguments.
-These are always evaluated using the C
-.Vt int
-type; integer overflow works the same way as in the C language.
-Numbers consist of an arbitrary number of digits
-.Sq 0
-to
-.Sq 9
-prefixed by an optional sign
-.Sq +
-or
-.Sq - .
-Each number may be followed by one optional scaling unit described below
-.Sx Scaling Widths .
-The following equations hold:
-.Bd -literal -offset indent
-1i = 6v = 6P = 10m = 10n = 72p = 1000M = 240u = 240
-254c = 100i = 24000u = 24000
-1f = 65536u = 65536
-.Ed
-.Pp
-The following binary operators are implemented.
-Unless otherwise stated, they behave as in the C language:
-.Pp
-.Bl -tag -width 2n -compact
-.It Ic +
-addition
-.It Ic -
-subtraction
-.It Ic *
-multiplication
-.It Ic /
-division
-.It Ic %
-remainder of division
-.It Ic <
-less than
-.It Ic >
-greater than
-.It Ic ==
-equal to
-.It Ic =
-equal to, same effect as
-.Ic ==
-(this differs from C)
-.It Ic <=
-less than or equal to
-.It Ic >=
-greater than or equal to
-.It Ic <>
-not equal to (corresponds to C
-.Ic != ;
-this one is of limited portability, it is supported by Heirloom roff,
-but not by groff)
-.It Ic &
-logical and (corresponds to C
-.Ic && )
-.It Ic \&:
-logical or (corresponds to C
-.Ic || )
-.It Ic <?
-minimum (not available in C)
-.It Ic >?
-maximum (not available in C)
-.El
-.Pp
-There is no concept of precedence; evaluation proceeds from left to right,
-except when subexpressions are enclosed in parentheses.
-Inside parentheses, whitespace is ignored.
-.Sh ESCAPE SEQUENCE REFERENCE
-The
-.Xr mandoc 1
-.Nm
-parser recognises the following escape sequences.
-In
-.Xr mdoc 5
-and
-.Xr man 5
-documents, using escape sequences is discouraged except for those
-described in the
-.Sx LANGUAGE SYNTAX
-section above.
-.Pp
-A backslash followed by any character not listed here
-simply prints that character itself.
-.Bl -tag -width Ds
-.It Ic \e<newline>
-A backslash at the end of an input line can be used to continue the
-logical input line on the next physical input line, joining the text
-on both lines together as if it were on a single input line.
-.It Ic \e<space>
-The escape sequence backslash-space
-.Pq Sq \e\ \&
-is an unpaddable space-sized non-breaking space character; see
-.Sx Whitespace
-and
-.Xr mandoc_char 5 .
-.It Ic \e!
-Embed text up to and including the end of the input line into the
-current diversion or into intermediate output without interpreting
-requests, macros, and escapes.
-Currently unsupported.
-.It Ic \e\(dq
-The rest of the input line is treated as
-.Sx Comments .
-.It Ic \e#
-Line continuation with comment.
-Discard the rest of the physical input line and continue the logical
-input line on the next physical input line, joining the text on
-both lines together as if it were on a single input line.
-This is a groff extension.
-.It Ic \e$ Ns Ar arg
-Macro argument expansion, see
-.Ic \&de .
-.It Ic \e%
-Hyphenation allowed at this point of the word; ignored by
-.Xr mandoc 1 .
-.It Ic \e&
-Non-printing zero-width character,
-often used for various kinds of escaping; see
-.Sx Whitespace ,
-.Xr mandoc_char 5 ,
-and the
-.Dq MACRO SYNTAX
-and
-.Dq Delimiters
-sections in
-.Xr mdoc 5 .
-.It Ic \e\(aq
-Acute accent special character; use
-.Ic \e(aa
-instead.
-.It Ic \e( Ns Ar cc
-.Sx Special Characters
-with two-letter names, see
-.Xr mandoc_char 5 .
-.It Ic \e)
-Zero-width space transparent to end-of-sentence detection;
-ignored by
-.Xr mandoc 1 .
-.It Ic \e*[ Ns Ar name Ns Ic \&]
-Interpolate the string with the
-.Ar name .
-For short names, there are variants
-.Ic \e* Ns Ar c
-and
-.Ic \e*( Ns Ar cc .
-.Pp
-One string is predefined on the
-.Nm
-language level:
-.Ic \e*(.T
-expands to the name of the output device,
-for example ascii, utf8, ps, pdf, html, or markdown.
-.Pp
-Macro sets traditionally predefine additional strings which are not
-portable and differ across implementations.
-Those supported by
-.Xr mandoc 1
-are listed in
-.Xr mandoc_char 5 .
-.Pp
-Strings can be defined, changed, and deleted with the
-.Ic \&ds ,
-.Ic \&as ,
-and
-.Ic \&rm
-requests.
-.It Ic \e,
-Left italic correction (groff extension); ignored by
-.Xr mandoc 1 .
-.It Ic \e-
-Special character
-.Dq mathematical minus sign ;
-see
-.Xr mandoc_char 5
-for details.
-.It Ic \e/
-Right italic correction (groff extension); ignored by
-.Xr mandoc 1 .
-.It Ic \e:
-Breaking the line is allowed at this point of the word
-without inserting a hyphen.
-.It Ic \e?
-Embed the text up to the next
-.Ic \e?
-into the current diversion without interpreting requests, macros,
-and escapes.
-This is a groff extension and currently unsupported.
-.It Ic \e[ Ns Ar name Ns Ic \&]
-.Sx Special Characters
-with names of arbitrary length, see
-.Xr mandoc_char 5 .
-.It Ic \e^
-One-twelfth em half-narrow space character, effectively zero-width in
-.Xr mandoc 1 .
-.It Ic \e_
-Underline special character; use
-.Ic \e(ul
-instead.
-.It Ic \e`
-Grave accent special character; use
-.Ic \e(ga
-instead.
-.It Ic \e{
-Begin conditional input; see
-.Ic \&if .
-.It Ic \e\(ba
-One-sixth em narrow space character, effectively zero-width in
-.Xr mandoc 1 .
-.It Ic \e}
-End conditional input; see
-.Ic \&if .
-.It Ic \e~
-Paddable non-breaking space character.
-.It Ic \e0
-Digit width space character.
-.It Ic \eA\(aq Ns Ar string Ns Ic \(aq
-Anchor definition; ignored by
-.Xr mandoc 1 .
-.It Ic \ea
-Leader character; ignored by
-.Xr mandoc 1 .
-.It Ic \eB\(aq Ns Ar string Ns Ic \(aq
-Interpolate
-.Sq 1
-if
-.Ar string
-conforms to the syntax of
-.Sx Numerical expressions
-explained above or
-.Sq 0
-otherwise.
-.It Ic \eb\(aq Ns Ar string Ns Ic \(aq
-Bracket building function; ignored by
-.Xr mandoc 1 .
-.It Ic \eC\(aq Ns Ar name Ns Ic \(aq
-.Sx Special Characters
-with names of arbitrary length.
-.It Ic \ec
-When encountered at the end of an input text line,
-the next input text line is considered to continue that line,
-even if there are request or macro lines in between.
-No whitespace is inserted.
-.It Ic \eD\(aq Ns Ar string Ns Ic \(aq
-Draw graphics function; ignored by
-.Xr mandoc 1 .
-.It Ic \ed
-Move down by half a line; ignored by
-.Xr mandoc 1 .
-.It Ic \eE
-Escape character intended to not be interpreted in copy mode.
-In
-.Xr mandoc 1 ,
-it currently does the same as
-.Ic \e
-itself.
-.It Ic \ee
-Backslash special character.
-.It Ic \eF[ Ns Ar name Ns Ic \&]
-Switch font family (groff extension); ignored by
-.Xr mandoc 1 .
-For short names, there are variants
-.Ic \eF Ns Ar c
-and
-.Ic \eF( Ns Ar cc .
-.It Ic \ef[ Ns Ar name Ns Ic \&]
-Switch to the font
-.Ar name ,
-see
-.Sx Font Selection .
-For short names, there are variants
-.Ic \ef Ns Ar c
-and
-.Ic \ef( Ns Ar cc .
-An empty name
-.Ic \ef[]
-defaults to
-.Ic \efP .
-.It Ic \eg[ Ns Ar name Ns Ic \&]
-Interpolate the format of a number register; ignored by
-.Xr mandoc 1 .
-For short names, there are variants
-.Ic \eg Ns Ar c
-and
-.Ic \eg( Ns Ar cc .
-.It Ic \eH\(aq Ns Oo +|- Oc Ns Ar number Ns Ic \(aq
-Set the height of the current font; ignored by
-.Xr mandoc 1 .
-.It Ic \eh\(aq Ns Oo Cm \&| Oc Ns Ar width Ns Ic \(aq
-Horizontal motion.
-If the vertical bar is given, the motion is relative to the current
-indentation.
-Otherwise, it is relative to the current position.
-The default scaling unit is
-.Cm m .
-.It Ic \ek[ Ns Ar name Ns Ic \&]
-Mark horizontal input place in register; ignored by
-.Xr mandoc 1 .
-For short names, there are variants
-.Ic \ek Ns Ar c
-and
-.Ic \ek( Ns Ar cc .
-.It Ic \eL\(aq Ns Ar number Ns Oo Ar c Oc Ns Ic \(aq
-Vertical line drawing function; ignored by
-.Xr mandoc 1 .
-.It Ic \el\(aq Ns Ar width Ns Oo Ar c Oc Ns Ic \(aq
-Draw a horizontal line of
-.Ar width
-using the glyph
-.Ar c .
-.It Ic \eM[ Ns Ar name Ns Ic \&]
-Set fill (background) color (groff extension); ignored by
-.Xr mandoc 1 .
-For short names, there are variants
-.Ic \eM Ns Ar c
-and
-.Ic \eM( Ns Ar cc .
-.It Ic \em[ Ns Ar name Ns Ic \&]
-Set glyph drawing color (groff extension); ignored by
-.Xr mandoc 1 .
-For short names, there are variants
-.Ic \em Ns Ar c
-and
-.Ic \em( Ns Ar cc .
-.It Ic \eN\(aq Ns Ar number Ns Ic \(aq
-Character
-.Ar number
-on the current font.
-.It Ic \en Ns Oo +|- Oc Ns Ic \&[ Ns Ar name Ns Ic \&]
-Interpolate the number register
-.Ar name .
-For short names, there are variants
-.Ic \en Ns Ar c
-and
-.Ic \en( Ns Ar cc .
-If the optional sign is specified,
-the register is first incremented or decremented by the
-.Ar stepsize
-that was specified in the relevant
-.Ic \&nr
-request, and the changed value is interpolated.
-.It Ic \eO Ns Ar digit , Ic \eO[5 Ns arguments Ns Ic \&]
-Suppress output.
-This is a groff extension and currently unsupported.
-With an argument of
-.Ic 1 , 2 , 3 ,
-or
-.Ic 4 ,
-it is ignored.
-.It Ic \eo\(aq Ns Ar string Ns Ic \(aq
-Overstrike, writing all the characters contained in the
-.Ar string
-to the same output position.
-In terminal and HTML output modes,
-only the last one of the characters is visible.
-.It Ic \ep
-Break the output line at the end of the current word.
-.It Ic \eR\(aq Ns Ar name Oo +|- Oc Ns Ar number Ns Ic \(aq
-Set number register; ignored by
-.Xr mandoc 1 .
-.It Ic \er
-Move up by one line; ignored by
-.Xr mandoc 1 .
-.It Ic \eS\(aq Ns Ar number Ns Ic \(aq
-Slant output; ignored by
-.Xr mandoc 1 .
-.It Ic \es\(aq Ns Oo +|- Oc Ns Ar number Ns Ic \(aq
-Change point size; ignored by
-.Xr mandoc 1 .
-Alternative forms
-.Ic \es Ns Oo +|- Oc Ns Ar n ,
-.Ic \es Ns Oo +|- Oc Ns Ic \(aq Ns Ar number Ns Ic \(aq ,
-.Ic \es[ Ns Oo +|- Oc Ns Ar number Ns Ic \&] ,
-and
-.Ic \es Ns Oo +|- Oc Ns Ic \&[ Ns Ar number Ns Ic \&]
-are also parsed and ignored.
-.It Ic \et
-Horizontal tab; ignored by
-.Xr mandoc 1 .
-.It Ic \eu
-Move up by half a line; ignored by
-.Xr mandoc 1 .
-.It Ic \eV[ Ns Ar name Ns Ic \&]
-Interpolate an environment variable; ignored by
-.Xr mandoc 1 .
-For short names, there are variants
-.Ic \eV Ns Ar c
-and
-.Ic \eV( Ns Ar cc .
-.It Ic \ev\(aq Ns Ar number Ns Ic \(aq
-Vertical motion; ignored by
-.Xr mandoc 1 .
-.It Ic \ew\(aq Ns Ar string Ns Ic \(aq
-Interpolate the width of the
-.Ar string .
-The
-.Xr mandoc 1
-implementation assumes that after expansion of user-defined strings, the
-.Ar string
-only contains normal characters, no escape sequences, and that each
-character has a width of 24 basic units.
-.It Ic \eX\(aq Ns Ar string Ns Ic \(aq
-Output
-.Ar string
-as device control function; ignored in nroff mode and by
-.Xr mandoc 1 .
-.It Ic \ex\(aq Ns Ar number Ns Ic \(aq
-Extra line space function; ignored by
-.Xr mandoc 1 .
-.It Ic \eY[ Ns Ar name Ns Ic \&]
-Output a string as a device control function; ignored in nroff mode and by
-.Xr mandoc 1 .
-For short names, there are variants
-.Ic \eY Ns Ar c
-and
-.Ic \eY( Ns Ar cc .
-.It Ic \eZ\(aq Ns Ar string Ns Ic \(aq
-Print
-.Ar string
-with zero width and height; ignored by
-.Xr mandoc 1 .
-.It Ic \ez
-Output the next character without advancing the cursor position.
-.El
-.Sh COMPATIBILITY
-The
-.Xr mandoc 1
-implementation of the
-.Nm
-language is incomplete.
-Major unimplemented features include:
-.Pp
-.Bl -dash -compact
-.It
-For security reasons,
-.Xr mandoc 1
-never reads or writes external files except via
-.Ic \&so
-requests with safe relative paths.
-.It
-There is no automatic hyphenation, no adjustment to the right margin,
-and very limited support for centering; the output is always set flush-left.
-.It
-Support for setting tabulator and leader characters is missing,
-and support for manually changing indentation is limited.
-.It
-The
-.Sq u
-scaling unit is the default terminal unit.
-In traditional troff systems, this unit changes depending on the
-output media.
-.It
-Width measurements are implemented in a crude way
-and often yield wrong results.
-Support for explicit movement requests and escapes is limited.
-.It
-There is no concept of output pages, no support for floats,
-graphics drawing, and picture inclusion;
-terminal output is always continuous.
-.It
-Requests regarding color, font families, font sizes,
-and glyph manipulation are ignored.
-Font support is very limited.
-Kerning is not implemented, and no ligatures are produced.
-.It
-The
-.Qq \(aq
-macro control character does not suppress output line breaks.
-.It
-Diversions and environments are not implemented,
-and support for traps is very incomplete.
-.It
-Use of macros is not supported inside
-.Xr tbl 5
-code.
-.El
-.Pp
-The special semantics of the
-.Cm nS
-number register is an idiosyncrasy of
-.Ox
-manuals and not supported by other
-.Xr mdoc 5
-implementations.
-.Sh SEE ALSO
-.Xr mandoc 1 ,
-.Xr eqn 5 ,
-.Xr man 5 ,
-.Xr mandoc_char 5 ,
-.Xr mdoc 5 ,
-.Xr tbl 5
-.Rs
-.%A Joseph F. Ossanna
-.%A Brian W. Kernighan
-.%I AT&T Bell Laboratories
-.%T Troff User's Manual
-.%R Computing Science Technical Report
-.%N 54
-.%C Murray Hill, New Jersey
-.%D 1976 and 1992
-.%U http://www.kohala.com/start/troff/cstr54.ps
-.Re
-.Rs
-.%A Joseph F. Ossanna
-.%A Brian W. Kernighan
-.%A Gunnar Ritter
-.%T Heirloom Documentation Tools Nroff/Troff User's Manual
-.%D September 17, 2007
-.%U http://heirloom.sourceforge.net/doctools/troff.pdf
-.Re
-.Sh HISTORY
-The RUNOFF typesetting system, whose input forms the basis for
-.Nm ,
-was written in MAD and FAP for the CTSS operating system by Jerome E.
-Saltzer in 1964.
-Doug McIlroy rewrote it in BCPL in 1969, renaming it
-.Nm .
-Dennis M. Ritchie rewrote McIlroy's
-.Nm
-in PDP-11 assembly for
-.At v1 ,
-Joseph F. Ossanna improved roff and renamed it nroff
-for
-.At v2 ,
-then ported nroff to C as troff, which Brian W. Kernighan released with
-.At v7 .
-In 1989, James Clark re-implemented troff in C++, naming it groff.
-.Sh AUTHORS
-.An -nosplit
-This
-.Nm
-reference was written by
-.An Kristaps Dzonsons Aq Mt kristaps@bsd.lv
-and
-.An Ingo Schwarze Aq Mt schwarze@openbsd.org .
diff --git a/usr/src/man/man5/mansun.5 b/usr/src/man/man5/mansun.5
deleted file mode 100644
index 000ddc95bd..0000000000
--- a/usr/src/man/man5/mansun.5
+++ /dev/null
@@ -1,314 +0,0 @@
-'\" te
-.\" Copyright (c) 2017 Peter Tribble.
-.\" Copyright (c) 1992, Sun Microsystems, Inc.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH MANSUN 5 "Apr 2, 2017"
-.SH NAME
-mansun \- macros to format Reference Manual pages
-.SH SYNOPSIS
-.LP
-.nf
-\fBnroff\fR \fB-mansun\fR \fIfilename\fR...
-.fi
-
-.LP
-.nf
-\fBtroff\fR \fB-mansun\fR \fIfilename\fR...
-.fi
-
-.SH DESCRIPTION
-.LP
-These macros are used to lay out the reference pages in this manual. Note: if
-\fIfilename\fR contains format input for a preprocessor, the commands shown
-above must be piped through the appropriate preprocessor. This is handled
-automatically by \fBman\fR(1). See the ``Conventions'' section.
-.sp
-.LP
-Any text argument \fIt\fR may be zero to six words. Quotes may be used to
-include SPACE characters in a "word". If \fItext\fR is empty, the special
-treatment is applied to the next input line with text to be printed. In this
-way \fB\&.I\fR may be used to italicize a whole line, or \fB\&.SB\fR may be
-used to make small bold letters.
-.sp
-.LP
-A prevailing indent distance is remembered between successive indented
-paragraphs, and is reset to default value upon reaching a non-indented
-paragraph. Default units for indents \fIi\fR are ens.
-.sp
-.LP
-Type font and size are reset to default values before each paragraph, and after
-processing font and size setting macros.
-.sp
-.LP
-These strings are predefined by \fB-mansun\fR:
-.sp
-.ne 2
-.na
-\fB\fB\e*R\fR\fR
-.ad
-.RS 8n
-`\(rg', `(Reg)' in \fBnroff\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\e*S\fR\fR
-.ad
-.RS 8n
-Change to default type size.
-.RE
-
-.SS "Requests"
-.LP
-* n.t.l. = next text line; p.i. = prevailing indent
-.sp
-
-.sp
-.TS
-c c c c
-c c c c .
-\fIRequest\fR \fICause\fR \fIIf no\fR \fIExplanation\fR
- \fIBreak\fR \fIArgument\fR
-\fB\&.B \fR\fIt\fR no \fIt\fR=n.t.l.* Text is in bold font.
-\fB\&.BI \fR\fIt\fR no \fIt\fR=n.t.l. Join words, alternating bold and italic.
-\fB\&.BR \fR\fIt\fR no \fIt\fR=n.t.l. Join words, alternating bold and Roman.
-\fB\&.DT\fR no \&.5i 1i... Restore default tabs.
-\fB\&.HP \fR\fIi\fR yes \fIi\fR=p.i.* T{
-Begin paragraph with hanging indent. Set prevailing indent to \fIi\fR.
-T}
-\fB\&.I \fR\fIt\fR no \fIt\fR=n.t.l. Text is italic.
-\fB\&.IB \fR\fIt\fR no \fIt\fR=n.t.l. Join words, alternating italic and bold.
-\fB\&.IP \fR\fIx i\fR yes \fIx\fR="" Same as \fB\&.TP\fR with tag \fIx\fR.
-\fB\&.IR \fR\fIt\fR no \fIt\fR=n.t.l. T{
-Join words, alternating italic and Roman.
-T}
-\fB\&.IX \fR\fIt\fR no - Index macro, for SunSoft internal use.
-\fB\&.LP\fR yes - T{
-Begin left-aligned paragraph. Set prevailing indent to .5i.
-T}
-\fB\&.P\fR yes - Same as \fB\&.LP\fR.
-\fB\&.PD \fR\fId\fR no \fId\fR=.4v T{
-Set vertical distance between paragraphs.
-T}
-\fB\&.PP\fR yes - Same as \fB\&.LP\fR.
-\fB\&.RE\fR yes - T{
-End of relative indent. Restores prevailing indent.
-T}
-\fB\&.RB \fR\fIt\fR no \fIt\fR=n.t.l. Join words, alternating Roman and bold.
-\fB\&.RI \fR\fIt\fR no \fIt\fR=n.t.l. T{
-Join words, alternating Roman and italic.
-T}
-\fB\&.RS \fR\fIi\fR yes \fIi\fR=p.i. T{
-Start relative indent, increase indent by \fIi\fR. Sets prevailing indent to .5i for nested indents.
-T}
-\fB\&.SB \fR\fIt\fR no - T{
-Reduce size of text by 1 point, make text bold.
-T}
-\fB\&.SH \fR\fIt\fR yes - Section Heading.
-\fB\&.SM \fR\fIt\fR no \fIt\fR=n.t.l. Reduce size of text by 1 point.
-\fB\&.SS \fR\fIt\fR yes \fIt\fR=n.t.l. Section Subheading.
-\fB\&.TH \fR\fIN S "f d, m\fR"
-\fB\&.TH \fR\fIn s d f m\fR yes - T{
-Begin reference page \fIn\fR, of of section \fIs\fR; \fId\fR is the date of the most recent change. If present, \fIf\fR is the left page footer; \fIm\fR is the main page (center) header. Sets prevailing indent and tabs to .5i.
-T}
-\fB\&.TP \fR\fIi\fR yes \fIi\fR=p.i. T{
-Begin indented paragraph, with the tag given on the next text line. Set prevailing indent to \fIi\fR.
-T}
-\fB\&.TX \fR\fIt \fR\fIp\fR no - T{
-Resolve the title abbreviation \fIt\fR; join to punctuation mark (or text) \fIp\fR.
-T}
-.TE
-
-.SS "Conventions"
-.LP
-When formatting a manual page, \fBmansun\fR examines the first line to
-determine whether it requires special processing. For example a first line
-consisting of:
-.sp
-.LP
-\fB\&'\e" t\fR
-.sp
-.LP
-indicates that the manual page must be run through the \fBtbl\fR(1)
-preprocessor.
-.sp
-.LP
-A typical manual page for a command or function is laid out as follows:
-.sp
-.ne 2
-.na
-\fB\&.TH\fI TITLE \fR[1-8]\fR " , "
-.ad
-.RS 21n
-The name of the command or function, which serves as the title of the manual
-page. This is followed by the number of the section in which it appears.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\&.SH NAME\fR
-.ad
-.RS 21n
-The name, or list of names, by which the command is called, followed by a dash
-and then a one-line summary of the action performed. All in Roman font, this
-section contains no \fBtroff\fR(1) commands or escapes, and no macro requests.
-It is used to generate the \fBwhatis\fR database, which is used by the
-\fBwhatis\fR(1) and \fBapropos\fR(1) commands.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\&.SH SYNOPSIS\fR
-.ad
-.RS 21n
-.sp
-.ne 2
-.na
-\fBCommands:\fR
-.ad
-.RS 13n
-The syntax of the command and its arguments, as typed on the command line.
-When in boldface, a word must be typed exactly as printed. When in italics, a
-word can be replaced with an argument that you supply. References to bold or
-italicized items are not capitalized in other sections, even when they begin a
-sentence.
-.sp
-Syntactic symbols appear in Roman face:
-.sp
-.ne 2
-.na
-\fB[ ]\fR
-.ad
-.RS 13n
-An argument, when surrounded by brackets is optional.
-.RE
-
-.sp
-.ne 2
-.na
-\fB|\fR
-.ad
-.RS 13n
-Arguments separated by a vertical bar are exclusive. You can supply only one
-item from such a list.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\&.\|.\|.\fR
-.ad
-.RS 13n
-Arguments followed by an ellipsis can be repeated. When an ellipsis follows a
-bracketed set, the expression within the brackets can be repeated.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fBFunctions:\fR
-.ad
-.RS 14n
-If required, the data declaration, or \fB#include\fR directive, is shown first,
-followed by the function declaration. Otherwise, the function declaration is
-shown.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\&.SH DESCRIPTION\fR
-.ad
-.RS 21n
-A narrative overview of the command or function's external behavior. This
-includes how it interacts with files or data, and how it handles the standard
-input, standard output and standard error. Internals and implementation details
-are normally omitted. This section attempts to provide a succinct overview in
-answer to the question, "what does it do?"
-.sp
-Literal text from the synopsis appears in constant width, as do literal
-filenames and references to items that appear elsewhere in the reference
-manuals. Arguments are italicized.
-.sp
-If a command interprets either subcommands or an input grammar, its command
-interface or input grammar is normally described in a \fBUSAGE\fR section,
-which follows the \fBOPTIONS\fR section. The \fBDESCRIPTION\fR section only
-describes the behavior of the command itself, not that of subcommands.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\&.SH OPTIONS\fR
-.ad
-.RS 21n
-The list of options along with a description of how each affects the command's
-operation.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\&.SH FILES\fR
-.ad
-.RS 21n
-A list of files associated with the command or function.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\&.SH SEE ALSO\fR
-.ad
-.RS 21n
-A comma-separated list of related manual pages, followed by references to other
-published materials.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\&.SH DIAGNOSTICS\fR
-.ad
-.RS 21n
-A list of diagnostic messages and an explanation of each.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\&.SH BUGS\fR
-.ad
-.RS 21n
-A description of limitations, known defects, and possible problems associated
-with the command or function.
-.RE
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/usr/share/lib/tmac/ansun\fR\fR
-.ad
-.RS 29n
-
-.RE
-
-.SH SEE ALSO
-.LP
-\fBman\fR(1), \fBnroff\fR(1), \fBtroff\fR(1)
-.sp
-.LP
-Dale Dougherty and Tim O'Reilly, \fIUnix\fR \fIText\fR \fIProcessing\fR
-
-.SH NOTES
-.LP
-New manual pages should be coded in the \fBmdoc\fR(5) format.
diff --git a/usr/src/man/man5/mdoc.5 b/usr/src/man/man5/mdoc.5
deleted file mode 100644
index 4c85b861a7..0000000000
--- a/usr/src/man/man5/mdoc.5
+++ /dev/null
@@ -1,3337 +0,0 @@
-.\" $Id: mdoc.7,v 1.287 2021/07/29 17:32:01 schwarze Exp $
-.\"
-.\" Copyright (c) 2009, 2010, 2011 Kristaps Dzonsons <kristaps@bsd.lv>
-.\" Copyright (c) 2010, 2011, 2013-2020 Ingo Schwarze <schwarze@openbsd.org>
-.\"
-.\" Permission to use, copy, modify, and distribute this software for any
-.\" purpose with or without fee is hereby granted, provided that the above
-.\" copyright notice and this permission notice appear in all copies.
-.\"
-.\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
-.\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
-.\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
-.\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
-.\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
-.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
-.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
-.\"
-.\"
-.\" Copyright 2014 Garrett D'Amore <garrett@damore.org>
-.\" Copyright 2018 Nexenta Systems, Inc.
-.\"
-.Dd $Mdocdate: July 29 2021 $
-.Dt MDOC 5
-.Os
-.Sh NAME
-.Nm mdoc
-.Nd semantic markup language for formatting manual pages
-.Sh DESCRIPTION
-The
-.Nm mdoc
-language supports authoring of manual pages for the
-.Xr man 1
-utility by allowing semantic annotations of words, phrases,
-page sections and complete manual pages.
-Such annotations are used by formatting tools to achieve a uniform
-presentation across all manuals written in
-.Nm ,
-and to support hyperlinking if supported by the output medium.
-.Pp
-This reference document describes the structure of manual pages
-and the syntax and usage of the
-.Nm
-language.
-The reference implementation of a parsing and formatting tool is
-.Xr mandoc 1 ;
-the
-.Sx COMPATIBILITY
-section describes compatibility with other implementations.
-.Pp
-In an
-.Nm
-document, lines beginning with the control character
-.Sq \&.
-are called
-.Dq macro lines .
-The first word is the macro name.
-It consists of two or three letters.
-Most macro names begin with a capital letter.
-For a list of available macros, see
-.Sx MACRO OVERVIEW .
-The words following the macro name are arguments to the macro, optionally
-including the names of other, callable macros; see
-.Sx MACRO SYNTAX
-for details.
-.Pp
-Lines not beginning with the control character are called
-.Dq text lines .
-They provide free-form text to be printed; the formatting of the text
-depends on the respective processing context:
-.Bd -literal -offset indent
-\&.Sh Macro lines change control state.
-Text lines are interpreted within the current state.
-.Ed
-.Pp
-Many aspects of the basic syntax of the
-.Nm
-language are based on the
-.Xr mandoc_roff 5
-language; see the
-.Em LANGUAGE SYNTAX
-and
-.Em MACRO SYNTAX
-sections in the
-.Xr mandoc_roff 5
-manual for details, in particular regarding
-comments, escape sequences, whitespace, and quoting.
-However, using
-.Xr mandoc_roff 5
-requests in
-.Nm
-documents is discouraged;
-.Xr mandoc 1
-supports some of them merely for backward compatibility.
-.Sh MANUAL STRUCTURE
-A well-formed
-.Nm
-document consists of a document prologue followed by one or more
-sections.
-.Pp
-The prologue, which consists of the
-.Ic \&Dd ,
-.Ic \&Dt ,
-and
-.Ic \&Os
-macros in that order, is required for every document.
-.Pp
-The first section (sections are denoted by
-.Ic \&Sh )
-must be the NAME section, consisting of at least one
-.Ic \&Nm
-followed by
-.Ic \&Nd .
-.Pp
-Following that, convention dictates specifying at least the
-.Em SYNOPSIS
-and
-.Em DESCRIPTION
-sections, although this varies between manual sections.
-.Pp
-The following is a well-formed skeleton
-.Nm
-file for a utility
-.Qq progname :
-.Bd -literal -offset indent
-\&.Dd Jan 1, 1970
-\&.Dt PROGNAME section
-\&.Os
-\&.Sh NAME
-\&.Nm progname
-\&.Nd one line about what it does
-\&.\e\(dq .Sh LIBRARY
-\&.\e\(dq For sections 2, 3, and 9 only.
-\&.Sh SYNOPSIS
-\&.Nm progname
-\&.Op Fl options
-\&.Ar
-\&.Sh DESCRIPTION
-The
-\&.Nm
-utility processes files ...
-\&.\e\(dq .Sh IMPLEMENTATION NOTES
-\&.\e\(dq .Sh RETURN VALUES
-\&.\e\(dq For sections 2, 3, 7, and 9 only.
-\&.\e\(dq .Sh CONTEXT
-\&.\e\(dq For section 9 functions only.
-\&.\e\(dq .Sh ENVIRONMENT
-\&.\e\(dq For sections 1, 1M, and 5.
-\&.\e\(dq .Sh FILES
-\&.\e\(dq .Sh EXIT STATUS
-\&.\e\(dq For sections 1, 1M, and 5.
-\&.\e\(dq .Sh EXAMPLES
-\&.\e\(dq .Sh DIAGNOSTICS
-\&.\e\(dq .Sh ERRORS
-\&.\e\(dq For sections 2, 3, 7, and 9 only.
-\&.\e\(dq .Sh ARCHITECTURE
-\&.\e\(dq .Sh CODE SET INDEPENDENCE
-\&.\e\(dq For sections 1, 1M, and 3 only.
-\&.\e\(dq .Sh INTERFACE STABILITY
-\&.\e\(dq .Sh MT-LEVEL
-\&.\e\(dq For sections 2 and 3 only.
-\&.\e\(dq .Sh SECURITY
-\&.\e\(dq .Sh SEE ALSO
-\&.\e\(dq .Xr foobar 1
-\&.\e\(dq .Sh STANDARDS
-\&.\e\(dq .Sh HISTORY
-\&.\e\(dq .Sh AUTHORS
-\&.\e\(dq .Sh CAVEATS
-\&.\e\(dq .Sh BUGS
-.Ed
-.Pp
-The sections in an
-.Nm
-document are conventionally ordered as they appear above.
-Sections should be composed as follows:
-.Bl -ohang -offset Ds
-.It Em NAME
-The name(s) and a one line description of the documented material.
-The syntax for this as follows:
-.Bd -literal -offset indent
-\&.Nm name0 ,
-\&.Nm name1 ,
-\&.Nm name2
-\&.Nd a one line description
-.Ed
-.Pp
-Multiple
-.Sq \&Nm
-names should be separated by commas.
-.Pp
-The
-.Ic \&Nm
-macro(s) must precede the
-.Ic \&Nd
-macro.
-.Pp
-See
-.Ic \&Nm
-and
-.Ic \&Nd .
-.It Em LIBRARY
-The name of the library containing the documented material, which is
-assumed to be a function in a section 2, 3, or 9 manual.
-The syntax for this is as follows:
-.Bd -literal -offset indent
-\&.Lb libarm
-.Ed
-.Pp
-See
-.Ic \&Lb .
-.It Em SYNOPSIS
-Documents the utility invocation syntax, function call syntax, or device
-configuration.
-.Pp
-For the first, utilities (sections 1 and 1M), this is
-generally structured as follows:
-.Bd -literal -offset indent
-\&.Nm bar
-\&.Op Fl v
-\&.Op Fl o Ar file
-\&.Op Ar
-\&.Nm foo
-\&.Op Fl v
-\&.Op Fl o Ar file
-\&.Op Ar
-.Ed
-.Pp
-Commands should be ordered alphabetically.
-.Pp
-For the second, function calls (sections 2, 3, 7I, 7P, 9):
-.Bd -literal -offset indent
-\&.In header.h
-\&.Vt extern const char *global;
-\&.Ft "char *"
-\&.Fn foo "const char *src"
-\&.Ft "char *"
-\&.Fn bar "const char *src"
-.Ed
-.Pp
-Ordering of
-.Ic \&In ,
-.Ic \&Vt ,
-.Ic \&Fn ,
-and
-.Ic \&Fo
-macros should follow C header-file conventions.
-.Pp
-And for the third, configurations (section 7D):
-.Bd -literal -offset indent
-\&.Pa /dev/device_node
-.Ed
-.Pp
-Manuals not in these sections generally don't need a
-.Em SYNOPSIS .
-.Pp
-Some macros are displayed differently in the
-.Em SYNOPSIS
-section, particularly
-.Ic \&Nm ,
-.Ic \&Cd ,
-.Ic \&Fd ,
-.Ic \&Fn ,
-.Ic \&Fo ,
-.Ic \&In ,
-.Ic \&Vt ,
-and
-.Ic \&Ft .
-All of these macros are output on their own line.
-If two such dissimilar macros are pairwise invoked (except for
-.Ic \&Ft
-before
-.Ic \&Fo
-or
-.Ic \&Fn ) ,
-they are separated by a vertical space, unless in the case of
-.Ic \&Fo ,
-.Ic \&Fn ,
-and
-.Ic \&Ft ,
-which are always separated by vertical space.
-.Pp
-When text and macros following an
-.Ic \&Nm
-macro starting an input line span multiple output lines,
-all output lines but the first will be indented to align
-with the text immediately following the
-.Ic \&Nm
-macro, up to the next
-.Ic \&Nm ,
-.Ic \&Sh ,
-or
-.Ic \&Ss
-macro or the end of an enclosing block, whichever comes first.
-.It Em DESCRIPTION
-This begins with an expansion of the brief, one line description in
-.Em NAME :
-.Bd -literal -offset indent
-The
-\&.Nm
-utility does this, that, and the other.
-.Ed
-.Pp
-It usually follows with a breakdown of the options (if documenting a
-command), such as:
-.Bd -literal -offset indent
-The options are as follows:
-\&.Bl \-tag \-width Ds
-\&.It Fl v
-Print verbose information.
-\&.El
-.Ed
-.Pp
-List the options in alphabetical order,
-uppercase before lowercase for each letter and
-with no regard to whether an option takes an argument.
-Put digits in ascending order before all letter options.
-.Pp
-Manuals not documenting a command won't include the above fragment.
-.Pp
-Since the
-.Em DESCRIPTION
-section usually contains most of the text of a manual, longer manuals
-often use the
-.Ic \&Ss
-macro to form subsections.
-In very long manuals, the
-.Em DESCRIPTION
-may be split into multiple sections, each started by an
-.Ic \&Sh
-macro followed by a non-standard section name, and each having
-several subsections, like in the present
-.Nm
-manual.
-.It Em IMPLEMENTATION NOTES
-Implementation-specific notes should be kept here.
-This is useful when implementing standard functions that may have side
-effects or notable algorithmic implications.
-.It Em RETURN VALUES
-This section documents the
-return values of functions in sections 2, 3, and 9.
-.Pp
-See
-.Ic \&Rv .
-.It Em CONTEXT
-This section lists the contexts in which functions can be called in section 9.
-The contexts are user, kernel, or interrupt.
-.It Em ENVIRONMENT
-Lists the environment variables used by the utility,
-and explains the syntax and semantics of their values.
-The
-.Xr environ 5
-manual provides examples of typical content and formatting.
-.Pp
-See
-.Ic \&Ev .
-.It Em FILES
-Documents files used.
-It's helpful to document both the file name and a short description of how
-the file is used (created, modified, etc.).
-.Pp
-See
-.Ic \&Pa .
-.It Em EXIT STATUS
-This section documents the
-command exit status for sections 1 and 1M.
-Historically, this information was described in
-.Em DIAGNOSTICS ,
-a practise that is now discouraged.
-.Pp
-See
-.Ic \&Ex .
-.It Em EXAMPLES
-Example usages.
-This often contains snippets of well-formed, well-tested invocations.
-Make sure that examples work properly!
-.It Em DIAGNOSTICS
-Documents error and diagnostic messages displayed to the user or
-sent to logs.
-Note that exit status and return values should be documented in the
-.Em EXIT STATUS
-and
-.Em RETURN VALUES
-sections.
-.Pp
-See
-.Ic \&Bl
-.Fl diag .
-.It Em ERRORS
-Documents error handling in sections 2, 3, 7, and 9.
-.Pp
-See
-.Ic \&Er .
-.It Em ARCHITECTURE
-This section is usually absent, but will be present when the
-interface is specific to one or more architectures.
-.It Em CODE SET INDEPENDENCE
-Indicates whether the interface operates correctly with various different
-code sets.
-True independent code sets will support not only ASCII and Extended UNIX
-Codesets (EUC), but also other multi-byte encodings such as UTF-8 and GB2312.
-.Pp
-Generally there will be some limitations that are fairly standard.
-See
-.Xr standards 5
-for more information about some of these.
-Most interfaces should support at least UTF-8 in addition to ASCII.
-.It Em INTERFACE STABILITY
-Indicates the level of commitment to the interface.
-Interfaces can be described with in the following ways:
-.Bl -tag -width Ds
-.It Nm Standard
-Indicates that the interface is defined by one or more standards bodies.
-Generally, changes to the interface will be carefully managed to conform
-to the relevant standards.
-These interfaces are generally the most suitable for use in portable programs.
-.It Nm Committed
-Indicates that the interface is intended to be preserved for the long-haul, and
-will rarely, if ever change, and never without notification (barring
-extraordinary and extenuating circumstances).
-These interfaces are preferred over other interfaces with the exeception of
-.Nm Standard
-interfaces.
-.It Nm Uncommitted
-Indicates that the interface may change.
-Generally, changes to these interfaces should be infrequent, and some effort
-will be made to address compatibility considerations when changing or removing
-such interfaces.
-However, there is no firm commitment to the preservation of the interface.
-Most often this is applied to interfaces where operational experience with the
-interface is still limited and some need to change may be anticipated.
-.Pp
-Consumers should expect to revalidate any
-.Nm Uncommitted
-interfaces when crossing release boundaries.
-Products intended for use on many releases or intended to support compatibility
-with future releases should avoid these interfaces.
-.It Nm Volatile
-The interface can change at any time for any reason.
-Often this relates to interfaces that are part of external software components
-that are still evolving rapidly.
-Consumers should not expect that the interface (either binary or source level)
-will be unchanged from one release to the next.
-.It Nm Not-an-Interface
-Describes something that is specifically not intended for programmatic
-consumption.
-For example, specific human-readable output, or the layout of graphical items on
-a user interface, may be described this way.
-Generally programmatic alternatives to these will be available, and should be
-used when programmatic consumption is needed.
-.It Nm Private
-This is an internal interface.
-Generally these interfaces should only be used within the project, and should
-not be used by other programs or modules.
-The interface can and will change without notice as the project needs, at any
-time.
-.Pp
-Most often, Private interfaces will lack any documentation whatsoever, and
-generally any undocumented interface can be assumed to be Private.
-.It Nm Obsolete
-The interface is not intended for use in new projects or programs, and may
-be removed at a future date.
-The
-.Nm Obsolete
-word is a modifier that can
-be applied to other commitment levels.
-For example an
-.Nm Obsolete Committed
-interface is unlikely to be removed or changed, but nonetheless new use
-is discouraged (perhaps a better newer alternative is present).
-.El
-.It Em MT-LEVEL
-This section describes considerations for the interface when used within
-programs that use multiple threads.
-More discussion of these considerations is made in the MT-Level section of
-.Xr attributes 5 .
-The interface can be described in the following ways.
-.Bl -tag -width Ds
-.It Nm Safe
-Indicates the interface is safe for use within multiple threads.
-There may be additional caveats that apply, in which case those will be
-described.
-Note that some interfaces have semantics which may affect other threads, but
-these should be an intrinsic part of the interface rather than an unexpected
-side effect.
-For example, closing a file in one thread will cause that file to be closed in
-all threads.
-.It Nm Unsafe
-Indicates the interface is unsuitable for concurrent use within multiple
-threads.
-A threaded application may still make use of the interface, but will be required
-to provide external synchronization means to ensure that only a single thread
-calls the interface at a time.
-.It Nm MT-Safe
-Indicates that the interface is not only safe for concurrent use, but is
-designed for such use.
-For example, a
-.Nm Safe
-interface may make use of a global lock to provide safety, but at reduced
-internal concurrency, whereas an
-.Nm MT-Safe
-interface will be designed to be efficient even when used concurrently.
-.It Nm Async-Signal-Safe
-Indicates that the library is safe for use within a signal handler.
-An
-.Nm MT-Safe
-interface can be made
-.Nm Async-Signal-Safe
-by ensuring that it blocks signals when acquiring locks.
-.It Nm Safe with Exceptions
-As for
-.Nm Safe
-but with specific exceptions noted.
-.It Nm MT-Safe with Exceptions
-As for
-.Nm MT-Safe
-but with specific exceptions noted.
-.El
-.It Em SECURITY
-Documents any security precautions that operators should consider.
-.It Em SEE ALSO
-References other manuals with related topics.
-This section should exist for most manuals.
-Cross-references should conventionally be ordered first by section, then
-alphabetically (ignoring case).
-.Pp
-References to other documentation concerning the topic of the manual page,
-for example authoritative books or journal articles, may also be
-provided in this section.
-.Pp
-See
-.Ic \&Rs
-and
-.Ic \&Xr .
-.It Em STANDARDS
-References any standards implemented or used.
-If not adhering to any standards, the
-.Em HISTORY
-section should be used instead.
-.Pp
-See
-.Ic \&St .
-.It Em HISTORY
-A brief history of the subject, including where it was first implemented,
-and when it was ported to or reimplemented for the operating system at hand.
-.It Em AUTHORS
-Credits to the person or persons who wrote the code and/or documentation.
-Authors should generally be noted by both name and email address.
-.Pp
-See
-.Ic \&An .
-.It Em CAVEATS
-Common misuses and misunderstandings should be explained
-in this section.
-.It Em BUGS
-Known bugs, limitations, and work-arounds should be described
-in this section.
-.El
-.Sh MACRO OVERVIEW
-This overview is sorted such that macros of similar purpose are listed
-together, to help find the best macro for any given purpose.
-Deprecated macros are not included in the overview, but can be found below
-in the alphabetical
-.Sx MACRO REFERENCE .
-.Ss Document preamble and NAME section macros
-.Bl -column "Brq, Bro, Brc" description
-.It Ic \&Dd Ta document date: Cm $\&Mdocdate$ | Ar month day , year
-.It Ic \&Dt Ta document title: Ar TITLE section Op Ar arch
-.It Ic \&Os Ta operating system version: Op Ar system Op Ar version
-.It Ic \&Nm Ta document name (one argument)
-.It Ic \&Nd Ta document description (one line)
-.El
-.Ss Sections and cross references
-.Bl -column "Brq, Bro, Brc" description
-.It Ic \&Sh Ta section header (one line)
-.It Ic \&Ss Ta subsection header (one line)
-.It Ic \&Sx Ta internal cross reference to a section or subsection
-.It Ic \&Xr Ta cross reference to another manual page: Ar name section
-.It Ic \&Tg Ta tag the definition of a Ar term Pq <= 1 arguments
-.It Ic \&Pp Ta start a text paragraph (no arguments)
-.El
-.Ss Displays and lists
-.Bl -column "Brq, Bro, Brc" description
-.It Ic \&Bd , \&Ed Ta display block:
-.Fl Ar type
-.Op Fl offset Ar width
-.Op Fl compact
-.It Ic \&D1 Ta indented display (one line)
-.It Ic \&Dl Ta indented literal display (one line)
-.It Ic \&Ql Ta in-line literal display: Ql text
-.It Ic \&Bl , \&El Ta list block:
-.Fl Ar type
-.Op Fl width Ar val
-.Op Fl offset Ar val
-.Op Fl compact
-.It Ic \&It Ta list item (syntax depends on Fl Ar type )
-.It Ic \&Ta Ta table cell separator in Ic \&Bl Fl column No lists
-.It Ic \&Rs , \&%* , \&Re Ta bibliographic block (references)
-.El
-.Ss Spacing control
-.Bl -column "Brq, Bro, Brc" description
-.It Ic \&Pf Ta prefix, no following horizontal space (one argument)
-.It Ic \&Ns Ta roman font, no preceding horizontal space (no arguments)
-.It Ic \&Ap Ta apostrophe without surrounding whitespace (no arguments)
-.It Ic \&Sm Ta switch horizontal spacing mode: Op Cm on | off
-.It Ic \&Bk , \&Ek Ta keep block: Fl words
-.El
-.Ss Semantic markup for command line utilities
-.Bl -column "Brq, Bro, Brc" description
-.It Ic \&Nm Ta start a SYNOPSIS block with the name of a utility
-.It Ic \&Fl Ta command line options (flags) (>=0 arguments)
-.It Ic \&Cm Ta command modifier (>0 arguments)
-.It Ic \&Ar Ta command arguments (>=0 arguments)
-.It Ic \&Op , \&Oo , \&Oc Ta optional syntax elements (enclosure)
-.It Ic \&Ic Ta internal or interactive command (>0 arguments)
-.It Ic \&Ev Ta environmental variable (>0 arguments)
-.It Ic \&Pa Ta file system path (>=0 arguments)
-.El
-.Ss Semantic markup for function libraries
-.Bl -column "Brq, Bro, Brc" description
-.It Ic \&Lb Ta function library (one argument)
-.It Ic \&In Ta include file (one argument)
-.It Ic \&Fd Ta other preprocessor directive (>0 arguments)
-.It Ic \&Ft Ta function type (>0 arguments)
-.It Ic \&Fo , \&Fc Ta function block: Ar funcname
-.It Ic \&Fn Ta function name: Ar funcname Op Ar argument ...
-.It Ic \&Fa Ta function argument (>0 arguments)
-.It Ic \&Vt Ta variable type (>0 arguments)
-.It Ic \&Va Ta variable name (>0 arguments)
-.It Ic \&Dv Ta defined variable or preprocessor constant (>0 arguments)
-.It Ic \&Er Ta error constant (>0 arguments)
-.It Ic \&Ev Ta environmental variable (>0 arguments)
-.El
-.Ss Various semantic markup
-.Bl -column "Brq, Bro, Brc" description
-.It Ic \&An Ta author name (>0 arguments)
-.It Ic \&Lk Ta hyperlink: Ar uri Op Ar display_name
-.It Ic \&Mt Ta Do mailto Dc hyperlink: Ar localpart Ns @ Ns Ar domain
-.It Ic \&Cd Ta kernel configuration declaration (>0 arguments)
-.It Ic \&Ad Ta memory address (>0 arguments)
-.It Ic \&Ms Ta mathematical symbol (>0 arguments)
-.El
-.Ss Physical markup
-.Bl -column "Brq, Bro, Brc" description
-.It Ic \&Em Ta italic font or underline (emphasis) (>0 arguments)
-.It Ic \&Sy Ta boldface font (symbolic) (>0 arguments)
-.It Ic \&No Ta return to roman font (normal) (>0 arguments)
-.It Ic \&Bf , \&Ef Ta font block: Fl Ar type | Cm \&Em | \&Li | \&Sy
-.El
-.Ss Physical enclosures
-.Bl -column "Brq, Bro, Brc" description
-.It Ic \&Dq , \&Do , \&Dc Ta enclose in typographic double quotes: Dq text
-.It Ic \&Qq , \&Qo , \&Qc Ta enclose in typewriter double quotes: Qq text
-.It Ic \&Sq , \&So , \&Sc Ta enclose in single quotes: Sq text
-.It Ic \&Pq , \&Po , \&Pc Ta enclose in parentheses: Pq text
-.It Ic \&Bq , \&Bo , \&Bc Ta enclose in square brackets: Bq text
-.It Ic \&Brq , \&Bro , \&Brc Ta enclose in curly braces: Brq text
-.It Ic \&Aq , \&Ao , \&Ac Ta enclose in angle brackets: Aq text
-.It Ic \&Eo , \&Ec Ta generic enclosure
-.El
-.Ss Text production
-.Bl -column "Brq, Bro, Brc" description
-.It Ic \&Ex Fl std Ta standard command exit values: Op Ar utility ...
-.It Ic \&Rv Fl std Ta standard function return values: Op Ar function ...
-.It Ic \&St Ta reference to a standards document (one argument)
-.It Ic \&At Ta At
-.It Ic \&Bx Ta Bx
-.It Ic \&Bsx Ta Bsx
-.It Ic \&Nx Ta Nx
-.It Ic \&Fx Ta Fx
-.It Ic \&Ox Ta Ox
-.It Ic \&Dx Ta Dx
-.El
-.Sh MACRO REFERENCE
-This section is a canonical reference of all macros, arranged
-alphabetically.
-For the scoping of individual macros, see
-.Sx MACRO SYNTAX .
-.Bl -tag -width 3n
-.It Ic \&%A Ar first_name ... last_name
-Author name of an
-.Ic \&Rs
-block.
-Multiple authors should each be accorded their own
-.Ic \%%A
-line.
-Author names should be ordered with full or abbreviated forename(s)
-first, then full surname.
-.It Ic \&%B Ar title
-Book title of an
-.Ic \&Rs
-block.
-This macro may also be used in a non-bibliographic context when
-referring to book titles.
-.It Ic \&%C Ar location
-Publication city or location of an
-.Ic \&Rs
-block.
-.It Ic \&%D Oo Ar month day , Oc Ar year
-Publication date of an
-.Ic \&Rs
-block.
-Provide the full English name of the
-.Ar month
-and all four digits of the
-.Ar year .
-.It Ic \&%I Ar name
-Publisher or issuer name of an
-.Ic \&Rs
-block.
-.It Ic \&%J Ar name
-Journal name of an
-.Ic \&Rs
-block.
-.It Ic \&%N Ar number
-Issue number (usually for journals) of an
-.Ic \&Rs
-block.
-.It Ic \&%O Ar line
-Optional information of an
-.Ic \&Rs
-block.
-.It Ic \&%P Ar number
-Book or journal page number of an
-.Ic \&Rs
-block.
-Conventionally, the argument starts with
-.Ql p.\&
-for a single page or
-.Ql pp.\&
-for a range of pages, for example:
-.Pp
-.Dl .%P pp. 42\e(en47
-.It Ic \&%Q Ar name
-Institutional author (school, government, etc.) of an
-.Ic \&Rs
-block.
-Multiple institutional authors should each be accorded their own
-.Ic \&%Q
-line.
-.It Ic \&%R Ar name
-Technical report name of an
-.Ic \&Rs
-block.
-.It Ic \&%T Ar title
-Article title of an
-.Ic \&Rs
-block.
-This macro may also be used in a non-bibliographical context when
-referring to article titles.
-.It Ic \&%U Ar protocol Ns :// Ns Ar path
-URI of reference document.
-.It Ic \&%V Ar number
-Volume number of an
-.Ic \&Rs
-block.
-.It Ic \&Ac
-Close an
-.Ic \&Ao
-block.
-Does not have any tail arguments.
-.Tg Ad
-.It Ic \&Ad Ar address
-Memory address.
-Do not use this for postal addresses.
-.Pp
-Examples:
-.Dl \&.Ad [0,$]
-.Dl \&.Ad 0x00000000
-.Tg An
-.It Ic \&An Fl split | nosplit | Ar first_name ... last_name
-Author name.
-Can be used both for the authors of the program, function, or driver
-documented in the manual, or for the authors of the manual itself.
-Requires either the name of an author or one of the following arguments:
-.Pp
-.Bl -tag -width "-nosplitX" -offset indent -compact
-.It Fl split
-Start a new output line before each subsequent invocation of
-.Ic \&An .
-.It Fl nosplit
-The opposite of
-.Fl split .
-.El
-.Pp
-The default is
-.Fl nosplit .
-The effect of selecting either of the
-.Fl split
-modes ends at the beginning of the
-.Em AUTHORS
-section.
-In the
-.Em AUTHORS
-section, the default is
-.Fl nosplit
-for the first author listing and
-.Fl split
-for all other author listings.
-.Pp
-Examples:
-.Dl \&.An -nosplit
-.Dl \&.An Kristaps Dzonsons \&Aq \&Mt kristaps@bsd.lv
-.It Ic \&Ao Ar block
-Begin a block enclosed by angle brackets.
-Does not have any head arguments.
-This macro is almost never useful.
-See
-.Ic \&Aq
-for more details.
-.Tg Ap
-.It Ic \&Ap
-Inserts an apostrophe without any surrounding whitespace.
-This is generally used as a grammatical device when referring to the verb
-form of a function.
-.Pp
-Examples:
-.Dl \&.Fn execve \&Ap d
-.Tg Aq
-.It Ic \&Aq Ar line
-Enclose the rest of the input line in angle brackets.
-The only important use case is for email addresses.
-See
-.Ic \&Mt
-for an example.
-.Pp
-Occasionally, it is used for names of characters and keys, for example:
-.Bd -literal -offset indent
-Press the
-\&.Aq escape
-key to ...
-.Ed
-.Pp
-For URIs, use
-.Ic \&Lk
-instead, and
-.Ic \&In
-for
-.Dq #include
-directives.
-Never wrap
-.Ic \&Ar
-in
-.Ic \&Aq .
-.Pp
-Since
-.Ic \&Aq
-usually renders with non-ASCII characters in non-ASCII output modes,
-do not use it where the ASCII characters
-.Sq <
-and
-.Sq >
-are required as syntax elements.
-Instead, use these characters directly in such cases, combining them
-with the macros
-.Ic \&Pf ,
-.Ic \&Ns ,
-or
-.Ic \&Eo
-as needed.
-.Pp
-See also
-.Ic \&Ao .
-.Tg Ar
-.It Ic \&Ar Op Ar placeholder ...
-Command arguments.
-If an argument is not provided, the string
-.Dq file ...\&
-is used as a default.
-.Pp
-Examples:
-.Dl ".Fl o Ar file"
-.Dl ".Ar"
-.Dl ".Ar arg1 , arg2 ."
-.Pp
-The arguments to the
-.Ic \&Ar
-macro are names and placeholders for command arguments;
-for fixed strings to be passed verbatim as arguments, use
-.Ic \&Fl
-or
-.Ic \&Cm .
-.Tg At
-.It Ic \&At Op Ar version
-Formats an
-.At
-version.
-Accepts one optional argument:
-.Pp
-.Bl -tag -width "v[1-7] | 32vX" -offset indent -compact
-.It Cm v[1-7] | 32v
-A version of
-.At .
-.It Cm III
-.At III .
-.It Cm V | V.[1-4]
-A version of
-.At V .
-.El
-.Pp
-Note that these arguments do not begin with a hyphen.
-.Pp
-Examples:
-.Dl \&.At
-.Dl \&.At III
-.Dl \&.At V.1
-.Pp
-See also
-.Ic \&Bsx ,
-.Ic \&Bx ,
-.Ic \&Dx ,
-.Ic \&Fx ,
-.Ic \&Nx ,
-and
-.Ic \&Ox .
-.It Ic \&Bc
-Close a
-.Ic \&Bo
-block.
-Does not have any tail arguments.
-.Tg Bd
-.It Ic \&Bd Fl Ns Ar type Oo Fl offset Ar width Oc Op Fl compact
-Begin a display block.
-Display blocks are used to select a different indentation and
-justification than the one used by the surrounding text.
-They may contain both macro lines and text lines.
-By default, a display block is preceded by a vertical space.
-.Pp
-The
-.Ar type
-must be one of the following:
-.Bl -tag -width 13n -offset indent
-.It Fl centered
-Produce one output line from each input line, and center-justify each line.
-Using this display type is not recommended; many
-.Nm
-implementations render it poorly.
-.It Fl filled
-Change the positions of line breaks to fill each line, and left- and
-right-justify the resulting block.
-.It Fl literal
-Produce one output line from each input line,
-and do not justify the block at all.
-Preserve white space as it appears in the input.
-Always use a constant-width font.
-Use this for displaying source code.
-.It Fl ragged
-Change the positions of line breaks to fill each line, and left-justify
-the resulting block.
-.It Fl unfilled
-The same as
-.Fl literal ,
-but using the same font as for normal text, which is a variable width font
-if supported by the output device.
-.El
-.Pp
-The
-.Ar type
-must be provided first.
-Additional arguments may follow:
-.Bl -tag -width 13n -offset indent
-.It Fl offset Ar width
-Indent the display by the
-.Ar width ,
-which may be one of the following:
-.Bl -item
-.It
-One of the pre-defined strings
-.Cm indent ,
-the width of a standard indentation (six constant width characters);
-.Cm indent-two ,
-twice
-.Cm indent ;
-.Cm left ,
-which has no effect;
-.Cm right ,
-which justifies to the right margin; or
-.Cm center ,
-which aligns around an imagined center axis.
-.It
-A macro invocation, which selects a predefined width
-associated with that macro.
-The most popular is the imaginary macro
-.Ar \&Ds ,
-which resolves to
-.Sy 6n .
-.It
-A scaling width as described in
-.Xr mandoc_roff 5 .
-.It
-An arbitrary string, which indents by the length of this string.
-.El
-.Pp
-When the argument is missing,
-.Fl offset
-is ignored.
-.It Fl compact
-Do not assert vertical space before the display.
-.El
-.Pp
-Examples:
-.Bd -literal -offset indent
-\&.Bd \-literal \-offset indent \-compact
- Hello world.
-\&.Ed
-.Ed
-.Pp
-See also
-.Ic \&D1
-and
-.Ic \&Dl .
-.Tg Bf
-.It Ic \&Bf Fl emphasis | literal | symbolic | Cm \&Em | \&Li | \&Sy
-Change the font mode for a scoped block of text.
-The
-.Fl emphasis
-and
-.Cm \&Em
-argument are equivalent, as are
-.Fl symbolic
-and
-.Cm \&Sy ,
-and
-.Fl literal
-and
-.Cm \&Li .
-Without an argument, this macro does nothing.
-The font mode continues until broken by a new font mode in a nested
-scope or
-.Ic \&Ef
-is encountered.
-.Pp
-See also
-.Ic \&Li ,
-.Ic \&Ef ,
-.Ic \&Em ,
-and
-.Ic \&Sy .
-.Tg Bk
-.It Ic \&Bk Fl words
-For each macro, keep its output together on the same output line,
-until the end of the macro or the end of the input line is reached,
-whichever comes first.
-Line breaks in text lines are unaffected.
-.Pp
-The
-.Fl words
-argument is required; additional arguments are ignored.
-.Pp
-The following example will not break within each
-.Ic \&Op
-macro line:
-.Bd -literal -offset indent
-\&.Bk \-words
-\&.Op Fl f Ar flags
-\&.Op Fl o Ar output
-\&.Ek
-.Ed
-.Pp
-Be careful in using over-long lines within a keep block!
-Doing so will clobber the right margin.
-.Tg Bl
-.It Xo
-.Ic \&Bl
-.Fl Ns Ar type
-.Op Fl width Ar val
-.Op Fl offset Ar val
-.Op Fl compact
-.Op Ar col ...
-.Xc
-Begin a list.
-Lists consist of items specified using the
-.Ic \&It
-macro, containing a head or a body or both.
-.Pp
-The list
-.Ar type
-is mandatory and must be specified first.
-The
-.Fl width
-and
-.Fl offset
-arguments accept macro names as described for
-.Ic \&Bd
-.Fl offset ,
-scaling widths as described in
-.Xr mandoc_roff 5 ,
-or use the length of the given string.
-The
-.Fl offset
-is a global indentation for the whole list, affecting both item heads
-and bodies.
-For those list types supporting it, the
-.Fl width
-argument requests an additional indentation of item bodies,
-to be added to the
-.Fl offset .
-Unless the
-.Fl compact
-argument is specified, list entries are separated by vertical space.
-.Pp
-A list must specify one of the following list types:
-.Bl -tag -width 12n -offset indent
-.It Fl bullet
-No item heads can be specified, but a bullet will be printed at the head
-of each item.
-Item bodies start on the same output line as the bullet
-and are indented according to the
-.Fl width
-argument.
-.It Fl column
-A columnated list.
-The
-.Fl width
-argument has no effect; instead, the string length of each argument
-specifies the width of one column.
-If the first line of the body of a
-.Fl column
-list is not an
-.Ic \&It
-macro line,
-.Ic \&It
-contexts spanning one input line each are implied until an
-.Ic \&It
-macro line is encountered, at which point items start being interpreted as
-described in the
-.Ic \&It
-documentation.
-.It Fl dash
-Like
-.Fl bullet ,
-except that dashes are used in place of bullets.
-.It Fl diag
-Like
-.Fl inset ,
-except that item heads are not parsed for macro invocations.
-Most often used in the
-.Em DIAGNOSTICS
-section with error constants in the item heads.
-.It Fl enum
-A numbered list.
-No item heads can be specified.
-Formatted like
-.Fl bullet ,
-except that cardinal numbers are used in place of bullets,
-starting at 1.
-.It Fl hang
-Like
-.Fl tag ,
-except that the first lines of item bodies are not indented, but follow
-the item heads like in
-.Fl inset
-lists.
-.It Fl hyphen
-Synonym for
-.Fl dash .
-.It Fl inset
-Item bodies follow items heads on the same line, using normal inter-word
-spacing.
-Bodies are not indented, and the
-.Fl width
-argument is ignored.
-.It Fl item
-No item heads can be specified, and none are printed.
-Bodies are not indented, and the
-.Fl width
-argument is ignored.
-.It Fl ohang
-Item bodies start on the line following item heads and are not indented.
-The
-.Fl width
-argument is ignored.
-.It Fl tag
-Item bodies are indented according to the
-.Fl width
-argument.
-When an item head fits inside the indentation, the item body follows
-this head on the same output line.
-Otherwise, the body starts on the output line following the head.
-.El
-.Pp
-Lists may be nested within lists and displays.
-Nesting of
-.Fl column
-and
-.Fl enum
-lists may not be portable.
-.Pp
-See also
-.Ic \&El
-and
-.Ic \&It .
-.It Ic \&Bo Ar block
-Begin a block enclosed by square brackets.
-Does not have any head arguments.
-.Pp
-Examples:
-.Bd -literal -offset indent -compact
-\&.Bo 1 ,
-\&.Dv BUFSIZ \&Bc
-.Ed
-.Pp
-See also
-.Ic \&Bq .
-.Tg Bq
-.It Ic \&Bq Ar line
-Encloses its arguments in square brackets.
-.Pp
-Examples:
-.Dl \&.Bq 1 , \&Dv BUFSIZ
-.Pp
-.Em Remarks :
-this macro is sometimes abused to emulate optional arguments for
-commands; the correct macros to use for this purpose are
-.Ic \&Op ,
-.Ic \&Oo ,
-and
-.Ic \&Oc .
-.Pp
-See also
-.Ic \&Bo .
-.It Ic \&Brc
-Close a
-.Ic \&Bro
-block.
-Does not have any tail arguments.
-.It Ic \&Bro Ar block
-Begin a block enclosed by curly braces.
-Does not have any head arguments.
-.Pp
-Examples:
-.Bd -literal -offset indent -compact
-\&.Bro 1 , ... ,
-\&.Va n \&Brc
-.Ed
-.Pp
-See also
-.Ic \&Brq .
-.Tg Brq
-.It Ic \&Brq Ar line
-Encloses its arguments in curly braces.
-.Pp
-Examples:
-.Dl \&.Brq 1 , ... , \&Va n
-.Pp
-See also
-.Ic \&Bro .
-.Tg Bsx
-.It Ic \&Bsx Op Ar version
-Format the
-.Bsx
-version provided as an argument, or a default value if
-no argument is provided.
-.Pp
-Examples:
-.Dl \&.Bsx 1.0
-.Dl \&.Bsx
-.Pp
-See also
-.Ic \&At ,
-.Ic \&Bx ,
-.Ic \&Dx ,
-.Ic \&Fx ,
-.Ic \&Nx ,
-and
-.Ic \&Ox .
-.It Ic \&Bt
-Supported only for compatibility, do not use this in new manuals.
-Prints
-.Dq is currently in beta test.
-.Tg Bx
-.It Ic \&Bx Op Ar version Op Ar variant
-Format the
-.Bx
-version provided as an argument, or a default value if no
-argument is provided.
-.Pp
-Examples:
-.Dl \&.Bx 4.3 Tahoe
-.Dl \&.Bx 4.4
-.Dl \&.Bx
-.Pp
-See also
-.Ic \&At ,
-.Ic \&Bsx ,
-.Ic \&Dx ,
-.Ic \&Fx ,
-.Ic \&Nx ,
-and
-.Ic \&Ox .
-.Tg Cd
-.It Ic \&Cd Ar line
-Kernel configuration declaration.
-It is found in pages for
-.Bx
-and not used here.
-.Pp
-Examples:
-.Dl \&.Cd device le0 at scode?
-.Pp
-.Em Remarks :
-this macro is commonly abused by using quoted literals to retain
-whitespace and align consecutive
-.Ic \&Cd
-declarations.
-This practise is discouraged.
-.Tg Cm
-.It Ic \&Cm Ar keyword ...
-Command modifiers.
-Typically used for fixed strings passed as arguments to interactive
-commands, to commands in interpreted scripts, or to configuration
-file directives, unless
-.Ic \&Fl
-is more appropriate.
-Also useful when specifying configuration options or keys.
-.Pp
-Examples:
-.Dl ".Nm mt Fl f Ar device Cm rewind"
-.Dl ".Nm ps Fl o Cm pid , Ns Cm command"
-.Dl ".Nm dd Cm if= Ns Ar file1 Cm of= Ns Ar file2"
-.Dl ".Ic set Fl o Cm vi"
-.Dl ".Ic lookup Cm file bind"
-.Dl ".Ic permit Ar identity Op Cm as Ar target"
-.Tg D1
-.It Ic \&D1 Ar line
-One-line indented display.
-This is formatted by the default rules and is useful for simple indented
-statements.
-It is followed by a newline.
-.Pp
-Examples:
-.Dl \&.D1 \&Fl abcdefgh
-.Pp
-See also
-.Ic \&Bd
-and
-.Ic \&Dl .
-.It Ic \&Db
-This macro is obsolete.
-No replacement is needed.
-It is ignored by
-.Xr mandoc 1
-and groff including its arguments.
-It was formerly used to toggle a debugging mode.
-.It Ic \&Dc
-Close a
-.Ic \&Do
-block.
-Does not have any tail arguments.
-.Tg Dd
-.It Ic \&Dd Cm $\&Mdocdate$ | Ar month day , year
-Document date for display in the page footer,
-by convention the date of the last change.
-This is the mandatory first macro of any
-.Nm
-manual.
-.Pp
-The
-.Ar month
-is the full English month name, the
-.Ar day
-is an integer number, and the
-.Ar year
-is the full four-digit year.
-.Pp
-Other arguments are not portable; the
-.Xr mandoc 1
-utility handles them as follows:
-.Bl -dash -offset 3n -compact
-.It
-To have the date automatically filled in by the
-.Ox
-version of
-.Xr cvs 1 ,
-the special string
-.Dq $\&Mdocdate$
-can be given as an argument.
-.It
-The traditional, purely numeric
-.Xr man 5
-format
-.Ar year Ns \(en Ns Ar month Ns \(en Ns Ar day
-is accepted, too.
-.It
-If a date string cannot be parsed, it is used verbatim.
-.It
-If no date string is given, the current date is used.
-.El
-.Pp
-Examples:
-.Dl \&.Dd $\&Mdocdate$
-.Dl \&.Dd $\&Mdocdate: July 2 2018$
-.Dl \&.Dd July 2, 2018
-.Pp
-See also
-.Ic \&Dt
-and
-.Ic \&Os .
-.Tg Dl
-.It Ic \&Dl Ar line
-One-line indented display.
-This is formatted as literal text and is useful for commands and
-invocations.
-It is followed by a newline.
-.Pp
-Examples:
-.Dl \&.Dl % mandoc mdoc.5 \e(ba less
-.Pp
-See also
-.Ic \&Ql ,
-.Ic \&Bd Fl literal ,
-and
-.Ic \&D1 .
-.It Ic \&Do Ar block
-Begin a block enclosed by double quotes.
-Does not have any head arguments.
-.Pp
-Examples:
-.Bd -literal -offset indent -compact
-\&.Do
-April is the cruellest month
-\&.Dc
-\e(em T.S. Eliot
-.Ed
-.Pp
-See also
-.Ic \&Dq .
-.Tg Dq
-.It Ic \&Dq Ar line
-Encloses its arguments in
-.Dq typographic
-double-quotes.
-.Pp
-Examples:
-.Bd -literal -offset indent -compact
-\&.Dq April is the cruellest month
-\e(em T.S. Eliot
-.Ed
-.Pp
-See also
-.Ic \&Qq ,
-.Ic \&Sq ,
-and
-.Ic \&Do .
-.Tg Dt
-.It Ic \&Dt Ar TITLE section Op Ar arch
-Document title for display in the page header.
-This is the mandatory second macro of any
-.Nm
-file.
-.Pp
-Its arguments are as follows:
-.Bl -tag -width section -offset 2n
-.It Ar TITLE
-The document's title (name), defaulting to
-.Dq UNTITLED
-if unspecified.
-To achieve a uniform appearance of page header lines,
-it should by convention be all caps.
-.It Ar SECTION
-The manual section.
-It should correspond to the manual's filename suffix and defaults to
-the empty string if unspecified.
-This field is optional.
-To achieve a uniform appearance of page header lines,
-it should by convention be all caps.
-.It Ar arch
-This specifies the machine architecture a manual page applies to,
-where relevant.
-.El
-.It Ic \&Dv
-Defined variables such as preprocessor constants, constant symbols,
-enumeration values, and so on.
-.Pp
-Examples:
-.Dl \&.Dv NULL
-.Dl \&.Dv BUFSIZ
-.Dl \&.Dv STDOUT_FILENO
-.Pp
-See also
-.Ic \&Er
-and
-.Ic \&Ev
-for special-purpose constants,
-.Ic \&Va
-for variable symbols, and
-.Ic \&Fd
-for listing preprocessor variable definitions in the
-.Em SYNOPSIS .
-.Tg Dx
-.It Ic \&Dx Op Ar version
-Format the
-.Dx
-version provided as an argument, or a default
-value if no argument is provided.
-.Pp
-Examples:
-.Dl \&.Dx 2.4.1
-.Dl \&.Dx
-.Pp
-See also
-.Ic \&At ,
-.Ic \&Bsx ,
-.Ic \&Bx ,
-.Ic \&Fx ,
-.Ic \&Nx ,
-and
-.Ic \&Ox .
-.It Ic \&Ec Op Ar closing_delimiter
-Close a scope started by
-.Ic \&Eo .
-.Pp
-The
-.Ar closing_delimiter
-argument is used as the enclosure tail, for example, specifying \e(rq
-will emulate
-.Ic \&Dc .
-.It Ic \&Ed
-End a display context started by
-.Ic \&Bd .
-.It Ic \&Ef
-End a font mode context started by
-.Ic \&Bf .
-.It Ic \&Ek
-End a keep context started by
-.Ic \&Bk .
-.It Ic \&El
-End a list context started by
-.Ic \&Bl .
-See also
-.Ic \&It .
-.Tg Em
-.It Ic \&Em Ar word ...
-Request an italic font.
-If the output device does not provide that, underline.
-.Pp
-This is most often used for stress emphasis (not to be confused with
-importance, see
-.Ic \&Sy ) .
-In the rare cases where none of the semantic markup macros fit,
-it can also be used for technical terms and placeholders, except
-that for syntax elements,
-.Ic \&Sy
-and
-.Ic \&Ar
-are preferred, respectively.
-.Pp
-Examples:
-.Bd -literal -compact -offset indent
-Selected lines are those
-\&.Em not
-matching any of the specified patterns.
-Some of the functions use a
-\&.Em hold space
-to save the pattern space for subsequent retrieval.
-.Ed
-.Pp
-See also
-.Ic \&No ,
-.Ic \&Ql ,
-and
-.Ic \&Sy .
-.It Ic \&En Ar word ...
-This macro is obsolete.
-Use
-.Ic \&Eo
-or any of the other enclosure macros.
-.Pp
-It encloses its argument in the delimiters specified by the last
-.Ic \&Es
-macro.
-.Tg Eo
-.It Ic \&Eo Op Ar opening_delimiter
-An arbitrary enclosure.
-The
-.Ar opening_delimiter
-argument is used as the enclosure head, for example, specifying \e(lq
-will emulate
-.Ic \&Do .
-.Tg Er
-.It Ic \&Er Ar identifier ...
-Error constants for definitions of the
-.Va errno
-libc global variable.
-This is most often used in section 2 and 3 manual pages.
-.Pp
-Examples:
-.Dl \&.Er EPERM
-.Dl \&.Er ENOENT
-.Pp
-See also
-.Ic \&Dv
-for general constants.
-.It Ic \&Es Ar opening_delimiter closing_delimiter
-This macro is obsolete.
-Use
-.Ic \&Eo
-or any of the other enclosure macros.
-.Pp
-It takes two arguments, defining the delimiters to be used by subsequent
-.Ic \&En
-macros.
-.Tg Ev
-.It Ic \&Ev Ar identifier ...
-Environmental variables such as those specified in
-.Xr environ 5 .
-.Pp
-Examples:
-.Dl \&.Ev DISPLAY
-.Dl \&.Ev PATH
-.Pp
-See also
-.Ic \&Dv
-for general constants.
-.Tg Ex
-.It Ic \&Ex Fl std Op Ar utility ...
-Insert a standard sentence regarding command exit values of 0 on success
-and >0 on failure.
-This is most often used in section 1 and 1M manual pages.
-.Pp
-If
-.Ar utility
-is not specified, the document's name set by
-.Ic \&Nm
-is used.
-Multiple
-.Ar utility
-arguments are treated as separate utilities.
-.Pp
-See also
-.Ic \&Rv .
-.Tg Fa
-.It Ic \&Fa Ar argument ...
-Function argument or parameter.
-Each argument may be a name and a type (recommended for the
-.Em SYNOPSIS
-section), a name alone (for function invocations),
-or a type alone (for function prototypes).
-If both a type and a name are given or if the type consists of multiple
-words, all words belonging to the same function argument have to be
-given in a single argument to the
-.Ic \&Fa
-macro.
-.Pp
-This macro is also used to specify the field name of a structure.
-.Pp
-Most often, the
-.Ic \&Fa
-macro is used in the
-.Em SYNOPSIS
-within
-.Ic \&Fo
-blocks when documenting multi-line function prototypes.
-If invoked with multiple arguments, the arguments are separated by a
-comma.
-Furthermore, if the following macro is another
-.Ic \&Fa ,
-the last argument will also have a trailing comma.
-.Pp
-Examples:
-.Dl \&.Fa \(dqconst char *p\(dq
-.Dl \&.Fa \(dqint a\(dq \(dqint b\(dq \(dqint c\(dq
-.Dl \&.Fa \(dqchar *\(dq size_t
-.Pp
-See also
-.Ic \&Fo .
-.It Ic \&Fc
-End a function context started by
-.Ic \&Fo .
-.Tg Fd
-.It Ic \&Fd Pf # Ar directive Op Ar argument ...
-Preprocessor directive, in particular for listing it in the
-.Em SYNOPSIS .
-Historically, it was also used to document include files.
-The latter usage has been deprecated in favour of
-.Ic \&In .
-.Pp
-Examples:
-.Dl \&.Fd #define sa_handler __sigaction_u.__sa_handler
-.Dl \&.Fd #define SIO_MAXNFDS
-.Dl \&.Fd #ifdef FS_DEBUG
-.Dl \&.Ft void
-.Dl \&.Fn dbg_open \(dqconst char *\(dq
-.Dl \&.Fd #endif
-.Pp
-See also
-.Sx MANUAL STRUCTURE ,
-.Ic \&In ,
-and
-.Ic \&Dv .
-.Tg Fl
-.It Ic \&Fl Op Ar word ...
-Command-line flag or option.
-Used when listing arguments to command-line utilities.
-For each argument, prints an ASCII hyphen-minus character
-.Sq \- ,
-immediately followed by the argument.
-If no arguments are provided, a hyphen-minus is printed followed by a space.
-If the argument is a macro, a hyphen-minus is prefixed
-to the subsequent macro output.
-.Pp
-Examples:
-.Dl ".Nm du Op Fl H | L | P"
-.Dl ".Nm ls Op Fl 1AaCcdFfgHhikLlmnopqRrSsTtux"
-.Dl ".Nm route Cm add Fl inet Ar destination gateway"
-.Dl ".Nm locate.updatedb Op Fl \e-fcodes Ns = Ns Ar dbfile"
-.Dl ".Nm aucat Fl o Fl"
-.Dl ".Nm kill Fl Ar signal_number"
-.Pp
-For GNU-sytle long options, escaping the additional hyphen-minus is not
-strictly required, but may be safer with future versions of GNU troff; see
-.Xr mandoc_char 5
-for details.
-.Pp
-See also
-.Ic \&Cm .
-.Tg Fn
-.It Ic \&Fn Ar funcname Op Ar argument ...
-A function name.
-.Pp
-Function arguments are surrounded in parenthesis and
-are delimited by commas.
-If no arguments are specified, blank parenthesis are output.
-In the
-.Em SYNOPSIS
-section, this macro starts a new output line,
-and a blank line is automatically inserted between function definitions.
-.Pp
-Examples:
-.Dl \&.Fn \(dqint funcname\(dq \(dqint arg0\(dq \(dqint arg1\(dq
-.Dl \&.Fn funcname \(dqint arg0\(dq
-.Dl \&.Fn funcname arg0
-.Bd -literal -offset indent
-\&.Ft functype
-\&.Fn funcname
-.Ed
-.Pp
-When referring to a function documented in another manual page, use
-.Ic \&Xr
-instead.
-See also
-.Sx MANUAL STRUCTURE ,
-.Ic \&Fo ,
-and
-.Ic \&Ft .
-.Tg Fo
-.It Ic \&Fo Ar funcname
-Begin a function block.
-This is a multi-line version of
-.Ic \&Fn .
-.Pp
-Invocations usually occur in the following context:
-.Bd -ragged -offset indent
-.Pf \. Ic \&Ft Ar functype
-.br
-.Pf \. Ic \&Fo Ar funcname
-.br
-.Pf \. Ic \&Fa Qq Ar argtype Ar argname
-.br
-\&.\.\.
-.br
-.Pf \. Ic \&Fc
-.Ed
-.Pp
-A
-.Ic \&Fo
-scope is closed by
-.Ic \&Fc .
-.Pp
-See also
-.Sx MANUAL STRUCTURE ,
-.Ic \&Fa ,
-.Ic \&Fc ,
-and
-.Ic \&Ft .
-.It Ic \&Fr Ar number
-This macro is obsolete.
-No replacement markup is needed.
-.Pp
-It was used to show numerical function return values in an italic font.
-.Tg Ft
-.It Ic \&Ft Ar functype
-A function type.
-.Pp
-In the
-.Em SYNOPSIS
-section, a new output line is started after this macro.
-.Pp
-Examples:
-.Dl \&.Ft int
-.Bd -literal -offset indent -compact
-\&.Ft functype
-\&.Fn funcname
-.Ed
-.Pp
-See also
-.Sx MANUAL STRUCTURE ,
-.Ic \&Fn ,
-and
-.Ic \&Fo .
-.Tg Fx
-.It Ic \&Fx Op Ar version
-Format the
-.Fx
-version provided as an argument, or a default value
-if no argument is provided.
-.Pp
-Examples:
-.Dl \&.Fx 7.1
-.Dl \&.Fx
-.Pp
-See also
-.Ic \&At ,
-.Ic \&Bsx ,
-.Ic \&Bx ,
-.Ic \&Dx ,
-.Ic \&Nx ,
-and
-.Ic \&Ox .
-.It Ic \&Hf Ar filename
-This macro is not implemented in
-.Xr mandoc 1 .
-It was used to include the contents of a (header) file literally.
-.Tg Ic
-.It Ic \&Ic Ar keyword ...
-Internal or interactive command, or configuration instruction
-in a configuration file.
-See also
-.Ic \&Cm .
-.Pp
-Examples:
-.Dl \&.Ic :wq
-.Dl \&.Ic hash
-.Dl \&.Ic alias
-.Pp
-Note that using
-.Ic \&Ql ,
-.Ic \&Dl ,
-or
-.Ic \&Bd Fl literal
-is preferred for displaying code samples; the
-.Ic \&Ic
-macro is used when referring to an individual command name.
-.Tg In
-.It Ic \&In Ar filename
-The name of an include file.
-This macro is most often used in section 2, 3, and 9 manual pages.
-.Pp
-When invoked as the first macro on an input line in the
-.Em SYNOPSIS
-section, the argument is displayed in angle brackets
-and preceded by
-.Qq #include ,
-and a blank line is inserted in front if there is a preceding
-function declaration.
-In other sections, it only encloses its argument in angle brackets
-and causes no line break.
-.Pp
-Examples:
-.Dl \&.In sys/types.h
-.Pp
-See also
-.Sx MANUAL STRUCTURE .
-.Tg It
-.It Ic \&It Op Ar head
-A list item.
-The syntax of this macro depends on the list type.
-.Pp
-Lists
-of type
-.Fl hang ,
-.Fl ohang ,
-.Fl inset ,
-and
-.Fl diag
-have the following syntax:
-.Pp
-.D1 Pf \. Ic \&It Ar args
-.Pp
-Lists of type
-.Fl bullet ,
-.Fl dash ,
-.Fl enum ,
-.Fl hyphen
-and
-.Fl item
-have the following syntax:
-.Pp
-.D1 Pf \. Ic \&It
-.Pp
-with subsequent lines interpreted within the scope of the
-.Ic \&It
-until either a closing
-.Ic \&El
-or another
-.Ic \&It .
-.Pp
-The
-.Fl tag
-list has the following syntax:
-.Pp
-.D1 Pf \. Ic \&It Op Cm args
-.Pp
-Subsequent lines are interpreted as with
-.Fl bullet
-and family.
-The line arguments correspond to the list's left-hand side; body
-arguments correspond to the list's contents.
-.Pp
-The
-.Fl column
-list is the most complicated.
-Its syntax is as follows:
-.Pp
-.D1 Pf \. Ic \&It Ar cell Op Ic \&Ta Ar cell ...
-.D1 Pf \. Ic \&It Ar cell Op <TAB> Ar cell ...
-.Pp
-The arguments consist of one or more lines of text and macros
-representing a complete table line.
-Cells within the line are delimited by the special
-.Ic \&Ta
-block macro or by literal tab characters.
-.Pp
-Using literal tabs is strongly discouraged because they are very
-hard to use correctly and
-.Nm
-code using them is very hard to read.
-In particular, a blank character is syntactically significant
-before and after the literal tab character.
-If a word precedes or follows the tab without an intervening blank,
-that word is never interpreted as a macro call, but always output
-literally.
-.Pp
-The tab cell delimiter may only be used within the
-.Ic \&It
-line itself; on following lines, only the
-.Ic \&Ta
-macro can be used to delimit cells, and portability requires that
-.Ic \&Ta
-is called by other macros: some parsers do not recognize it when
-it appears as the first macro on a line.
-.Pp
-Note that quoted strings may span tab-delimited cells on an
-.Ic \&It
-line.
-For example,
-.Pp
-.Dl .It \(dqcol1 ,\& <TAB> col2 ,\(dq \&;
-.Pp
-will preserve the whitespace before both commas,
-but not the whitespace before the semicolon.
-.Pp
-See also
-.Ic \&Bl .
-.Tg Lb
-.It Ic \&Lb Cm lib Ns Ar name
-Specify a library.
-.Pp
-The
-.Ar name
-parameter may be a system library, such as
-.Cm z
-or
-.Cm pam ,
-in which case a small library description is printed next to the linker
-invocation; or a custom library, in which case the library name is
-printed in quotes.
-This is most commonly used in the
-.Em SYNOPSIS
-section as described in
-.Sx MANUAL STRUCTURE .
-.Pp
-Examples:
-.Dl \&.Lb libz
-.Dl \&.Lb libmandoc
-.Tg Li
-.It Ic \&Li Ar word ...
-Request a typewriter (literal) font.
-Deprecated because on terminal output devices, this is usually
-indistinguishable from normal text.
-For literal displays, use
-.Ic \&Ql Pq in-line ,
-.Ic \&Dl Pq single line ,
-or
-.Ic \&Bd Fl literal Pq multi-line
-instead.
-.Tg Lk
-.It Ic \&Lk Ar uri Op Ar display_name
-Format a hyperlink.
-.Pp
-Examples:
-.Dl \&.Lk https://bsd.lv \(dqThe BSD.lv Project\(dq
-.Dl \&.Lk https://bsd.lv
-.Pp
-See also
-.Ic \&Mt .
-.It Ic \&Lp
-Deprecated synonym for
-.Ic \&Pp .
-.Tg Ms
-.It Ic \&Ms Ar name
-Display a mathematical symbol.
-.Pp
-Examples:
-.Dl \&.Ms sigma
-.Dl \&.Ms aleph
-.Tg Mt
-.It Ic \&Mt Ar localpart Ns @ Ns Ar domain
-Format a
-.Dq mailto:
-hyperlink.
-.Pp
-Examples:
-.Dl \&.Mt discuss@manpages.bsd.lv
-.Dl \&.An Kristaps Dzonsons \&Aq \&Mt kristaps@bsd.lv
-.Tg Nd
-.It Ic \&Nd Ar line
-A one line description of the manual's content.
-This is the mandatory last macro of the
-.Em NAME
-section and not appropriate for other sections.
-.Pp
-Examples:
-.Dl Pf . Ic \&Nd mdoc language reference
-.Dl Pf . Ic \&Nd format and display UNIX manuals
-.Pp
-The
-.Ic \&Nd
-macro technically accepts child macros and terminates with a subsequent
-.Ic \&Sh
-invocation.
-Do not assume this behaviour: some
-.Xr whatis 1
-database generators are not smart enough to parse more than the line
-arguments and will display macros verbatim.
-.Pp
-See also
-.Ic \&Nm .
-.Tg Nm
-.It Ic \&Nm Op Ar name
-The name of the manual page, or \(em in particular in section 1
-pages \(em of an additional command or feature documented in
-the manual page.
-When first invoked, the
-.Ic \&Nm
-macro expects a single argument, the name of the manual page.
-Usually, the first invocation happens in the
-.Em NAME
-section of the page.
-The specified name will be remembered and used whenever the macro is
-called again without arguments later in the page.
-The
-.Ic \&Nm
-macro uses
-.Sx Block full-implicit
-semantics when invoked as the first macro on an input line in the
-.Em SYNOPSIS
-section; otherwise, it uses ordinary
-.Sx In-line
-semantics.
-.Pp
-Examples:
-.Bd -literal -offset indent
-\&.Sh SYNOPSIS
-\&.Nm cat
-\&.Op Fl benstuv
-\&.Op Ar
-.Ed
-.Pp
-In the
-.Em SYNOPSIS
-of section 2, 3 and 9 manual pages, use the
-.Ic \&Fn
-macro rather than
-.Ic \&Nm
-to mark up the name of the manual page.
-.Tg No
-.It Ic \&No Ar word ...
-Normal text.
-Closes the scope of any preceding in-line macro.
-When used after physical formatting macros like
-.Ic \&Em
-or
-.Ic \&Sy ,
-switches back to the standard font face and weight.
-Can also be used to embed plain text strings in macro lines
-using semantic annotation macros.
-.Pp
-Examples:
-.Dl ".Em italic , Sy bold , No and roman"
-.Bd -literal -offset indent
-\&.Sm off
-\&.Cm :C No / Ar pattern No / Ar replacement No /
-\&.Sm on
-.Ed
-.Pp
-See also
-.Ic \&Em ,
-.Ic \&Ql ,
-and
-.Ic \&Sy .
-.Tg Ns
-.It Ic \&Ns
-Suppress a space between the output of the preceding macro
-and the following text or macro.
-Following invocation, input is interpreted as normal text
-just like after an
-.Ic \&No
-macro.
-.Pp
-This has no effect when invoked at the start of a macro line.
-.Pp
-Examples:
-.Dl ".Ar name Ns = Ns Ar value"
-.Dl ".Cm :M Ns Ar pattern"
-.Dl ".Fl o Ns Ar output"
-.Pp
-See also
-.Ic \&No
-and
-.Ic \&Sm .
-.Tg Nx
-.It Ic \&Nx Op Ar version
-Format the
-.Nx
-version provided as an argument, or a default value if
-no argument is provided.
-.Pp
-Examples:
-.Dl \&.Nx 5.01
-.Dl \&.Nx
-.Pp
-See also
-.Ic \&At ,
-.Ic \&Bsx ,
-.Ic \&Bx ,
-.Ic \&Dx ,
-.Ic \&Fx ,
-and
-.Ic \&Ox .
-.It Ic \&Oc
-Close multi-line
-.Ic \&Oo
-context.
-.It Ic \&Oo Ar block
-Multi-line version of
-.Ic \&Op .
-.Pp
-Examples:
-.Bd -literal -offset indent -compact
-\&.Oo
-\&.Op Fl flag Ns Ar value
-\&.Oc
-.Ed
-.Tg Op
-.It Ic \&Op Ar line
-Optional part of a command line.
-Prints the argument(s) in brackets.
-This is most often used in the
-.Em SYNOPSIS
-section of section 1 and 1M manual pages.
-.Pp
-Examples:
-.Dl \&.Op \&Fl a \&Ar b
-.Dl \&.Op \&Ar a | b
-.Pp
-See also
-.Ic \&Oo .
-.Tg Os
-.It Ic \&Os Op Ar system Op Ar version
-Operating system version for display in the page footer.
-This is the mandatory third macro of
-any
-.Nm
-file.
-.Pp
-The optional
-.Ar system
-parameter specifies the relevant operating system or environment.
-It is suggested to leave it unspecified, in which case
-.Xr mandoc 1
-uses its
-.Fl Ios
-argument or, if that isn't specified either,
-.Fa sysname
-and
-.Fa release
-as returned by
-.Xr uname 3 .
-.Pp
-Examples:
-.Dl \&.Os
-.Dl \&.Os KTH/CSC/TCS
-.Dl \&.Os BSD 4.3
-.Pp
-See also
-.Ic \&Dd
-and
-.Ic \&Dt .
-.It Ic \&Ot Ar functype
-This macro is obsolete.
-Use
-.Ic \&Ft
-instead; with
-.Xr mandoc 1 ,
-both have the same effect.
-.Pp
-Historical
-.Nm
-packages described it as
-.Dq "old function type (FORTRAN)" .
-.Tg Ox
-.It Ic \&Ox Op Ar version
-Format the
-.Ox
-version provided as an argument, or a default value
-if no argument is provided.
-.Pp
-Examples:
-.Dl \&.Ox 4.5
-.Dl \&.Ox
-.Pp
-See also
-.Ic \&At ,
-.Ic \&Bsx ,
-.Ic \&Bx ,
-.Ic \&Dx ,
-.Ic \&Fx ,
-and
-.Ic \&Nx .
-.Tg Pa
-.It Ic \&Pa Ar name ...
-An absolute or relative file system path, or a file or directory name.
-If an argument is not provided, the character
-.Sq \(ti
-is used as a default.
-.Pp
-Examples:
-.Dl \&.Pa /usr/bin/mandoc
-.Dl \&.Pa /usr/share/man/man5/mdoc.5
-.Pp
-See also
-.Ic \&Lk .
-.It Ic \&Pc
-Close parenthesised context opened by
-.Ic \&Po .
-.Tg Pf
-.It Ic \&Pf Ar prefix macro Op Ar argument ...
-Removes the space between its argument and the following macro.
-It is equivalent to:
-.Pp
-.D1 Ic \&No Pf \e& Ar prefix Ic \&Ns Ar macro Op Ar argument ...
-.Pp
-The
-.Ar prefix
-argument is not parsed for macro names or delimiters,
-but used verbatim as if it were escaped.
-.Pp
-Examples:
-.Dl ".Pf $ Ar variable_name"
-.Dl ".Pf . Ar macro_name"
-.Dl ".Pf 0x Ar hex_digits"
-.Pp
-See also
-.Ic \&Ns
-and
-.Ic \&Sm .
-.It Ic \&Po Ar block
-Multi-line version of
-.Ic \&Pq .
-.Tg Pp
-.It Ic \&Pp
-Break a paragraph.
-This will assert vertical space between prior and subsequent macros
-and/or text.
-.Pp
-Paragraph breaks are not needed before or after
-.Ic \&Sh
-or
-.Ic \&Ss
-macros or before displays
-.Pq Ic \&Bd Ar line
-or lists
-.Pq Ic \&Bl
-unless the
-.Fl compact
-flag is given.
-.Tg Pq
-.It Ic \&Pq Ar line
-Parenthesised enclosure.
-.Pp
-See also
-.Ic \&Po .
-.It Ic \&Qc
-Close quoted context opened by
-.Ic \&Qo .
-.Tg Ql
-.It Ic \&Ql Ar line
-In-line literal display.
-This can be used for complete command invocations and for multi-word
-code examples when an indented display is not desired.
-.Pp
-See also
-.Ic \&Dl
-and
-.Ic \&Bd
-.Fl literal .
-.It Ic \&Qo Ar block
-Multi-line version of
-.Ic \&Qq .
-.Tg Qq
-.It Ic \&Qq Ar line
-Encloses its arguments in
-.Qq typewriter
-double-quotes.
-Consider using
-.Ic \&Dq .
-.Pp
-See also
-.Ic \&Dq ,
-.Ic \&Sq ,
-and
-.Ic \&Qo .
-.It Ic \&Re
-Close an
-.Ic \&Rs
-block.
-Does not have any tail arguments.
-.Tg Rs
-.It Ic \&Rs
-Begin a bibliographic
-.Pq Dq reference
-block.
-Does not have any head arguments.
-The block macro may only contain
-.Ic \&%A ,
-.Ic \&%B ,
-.Ic \&%C ,
-.Ic \&%D ,
-.Ic \&%I ,
-.Ic \&%J ,
-.Ic \&%N ,
-.Ic \&%O ,
-.Ic \&%P ,
-.Ic \&%Q ,
-.Ic \&%R ,
-.Ic \&%T ,
-.Ic \&%U ,
-and
-.Ic \&%V
-child macros (at least one must be specified).
-.Pp
-Examples:
-.Bd -literal -offset indent -compact
-\&.Rs
-\&.%A J. E. Hopcroft
-\&.%A J. D. Ullman
-\&.%B Introduction to Automata Theory, Languages, and Computation
-\&.%I Addison-Wesley
-\&.%C Reading, Massachusetts
-\&.%D 1979
-\&.Re
-.Ed
-.Pp
-If an
-.Ic \&Rs
-block is used within a SEE ALSO section, a vertical space is asserted
-before the rendered output, else the block continues on the current
-line.
-.Tg Rv
-.It Ic \&Rv Fl std Op Ar function ...
-Insert a standard sentence regarding a function call's return value of 0
-on success and \-1 on error, with the
-.Va errno
-libc global variable set on error.
-.Pp
-If
-.Ar function
-is not specified, the document's name set by
-.Ic \&Nm
-is used.
-Multiple
-.Ar function
-arguments are treated as separate functions.
-.Pp
-See also
-.Ic \&Ex .
-.It Ic \&Sc
-Close single-quoted context opened by
-.Ic \&So .
-.Tg Sh
-.It Ic \&Sh Ar TITLE LINE
-Begin a new section.
-For a list of conventional manual sections, see
-.Sx MANUAL STRUCTURE .
-These sections should be used unless it's absolutely necessary that
-custom sections be used.
-.Pp
-Section names should be unique so that they may be keyed by
-.Ic \&Sx .
-Although this macro is parsed, it should not consist of child node or it
-may not be linked with
-.Ic \&Sx .
-.Pp
-See also
-.Ic \&Pp ,
-.Ic \&Ss ,
-and
-.Ic \&Sx .
-.Tg Sm
-.It Ic \&Sm Op Cm on | off
-Switches the spacing mode for output generated from macros.
-.Pp
-By default, spacing is
-.Cm on .
-When switched
-.Cm off ,
-no white space is inserted between macro arguments and between the
-output generated from adjacent macros, but text lines
-still get normal spacing between words and sentences.
-.Pp
-When called without an argument, the
-.Ic \&Sm
-macro toggles the spacing mode.
-Using this is not recommended because it makes the code harder to read.
-.It Ic \&So Ar block
-Multi-line version of
-.Ic \&Sq .
-.Tg Sq
-.It Ic \&Sq Ar line
-Encloses its arguments in
-.Sq typewriter
-single-quotes.
-.Pp
-See also
-.Ic \&Dq ,
-.Ic \&Qq ,
-and
-.Ic \&So .
-.Tg Ss
-.It Ic \&Ss Ar Title line
-Begin a new subsection.
-Unlike with
-.Ic \&Sh ,
-there is no convention for the naming of subsections.
-Except
-.Em DESCRIPTION ,
-the conventional sections described in
-.Sx MANUAL STRUCTURE
-rarely have subsections.
-.Pp
-Sub-section names should be unique so that they may be keyed by
-.Ic \&Sx .
-Although this macro is parsed, it should not consist of child node or it
-may not be linked with
-.Ic \&Sx .
-.Pp
-See also
-.Ic \&Pp ,
-.Ic \&Sh ,
-and
-.Ic \&Sx .
-.Tg St
-.It Ic \&St Fl Ns Ar abbreviation
-Replace an abbreviation for a standard with the full form.
-The following standards are recognised.
-Where multiple lines are given without a blank line in between,
-they all refer to the same standard, and using the first form
-is recommended.
-.Bl -tag -width 1n
-.It C language standards
-.Pp
-.Bl -tag -width "-p1003.1g-2000" -compact
-.It \-ansiC
-.St -ansiC
-.It \-ansiC-89
-.St -ansiC-89
-.It \-isoC
-.St -isoC
-.It \-isoC-90
-.St -isoC-90
-.br
-The original C standard.
-.Pp
-.It \-isoC-amd1
-.St -isoC-amd1
-.Pp
-.It \-isoC-tcor1
-.St -isoC-tcor1
-.Pp
-.It \-isoC-tcor2
-.St -isoC-tcor2
-.Pp
-.It \-isoC-99
-.St -isoC-99
-.br
-The second major version of the C language standard.
-.Pp
-.It \-isoC-2011
-.St -isoC-2011
-.br
-The third major version of the C language standard.
-.El
-.It POSIX.1 before the Single UNIX Specification
-.Pp
-.Bl -tag -width "-p1003.1g-2000" -compact
-.It \-p1003.1-88
-.St -p1003.1-88
-.It \-p1003.1
-.St -p1003.1
-.br
-The original POSIX standard, based on ANSI C.
-.Pp
-.It \-p1003.1-90
-.St -p1003.1-90
-.It \-iso9945-1-90
-.St -iso9945-1-90
-.br
-The first update of POSIX.1.
-.Pp
-.It \-p1003.1b-93
-.St -p1003.1b-93
-.It \-p1003.1b
-.St -p1003.1b
-.br
-Real-time extensions.
-.Pp
-.It \-p1003.1c-95
-.St -p1003.1c-95
-.br
-POSIX thread interfaces.
-.Pp
-.It \-p1003.1i-95
-.St -p1003.1i-95
-.br
-Technical Corrigendum.
-.Pp
-.It \-p1003.1-96
-.St -p1003.1-96
-.It \-iso9945-1-96
-.St -iso9945-1-96
-.br
-Includes POSIX.1-1990, 1b, 1c, and 1i.
-.El
-.It X/Open Portability Guide version 4 and related standards
-.Pp
-.Bl -tag -width "-p1003.1g-2000" -compact
-.It \-xpg3
-.St -xpg3
-.br
-An XPG4 precursor, published in 1989.
-.Pp
-.It \-p1003.2
-.St -p1003.2
-.It \-p1003.2-92
-.St -p1003.2-92
-.It \-iso9945-2-93
-.St -iso9945-2-93
-.br
-An XCU4 precursor.
-.Pp
-.It \-p1003.2a-92
-.St -p1003.2a-92
-.br
-Updates to POSIX.2.
-.Pp
-.It \-xpg4
-.St -xpg4
-.br
-Based on POSIX.1 and POSIX.2, published in 1992.
-.El
-.It Single UNIX Specification version 1 and related standards
-.Pp
-.Bl -tag -width "-p1003.1g-2000" -compact
-.It \-susv1
-.St -susv1
-.It \-xpg4.2
-.St -xpg4.2
-.br
-This standard was published in 1994.
-It was used as the basis for UNIX 95 certification.
-The following three refer to parts of it.
-.Pp
-.It \-xsh4.2
-.St -xsh4.2
-.Pp
-.It \-xcurses4.2
-.St -xcurses4.2
-.Pp
-.It \-p1003.1g-2000
-.St -p1003.1g-2000
-.br
-Networking APIs, including sockets.
-.Pp
-.It \-svid4
-.St -svid4 ,
-.br
-Published in 1995.
-.El
-.It Single UNIX Specification version 2 and related standards
-.Pp
-.Bl -tag -width "-p1003.1g-2000" -compact
-.It \-susv2
-.St -susv2
-This Standard was published in 1997
-and is also called X/Open Portability Guide version 5.
-It was used as the basis for UNIX 98 certification.
-The following refer to parts of it.
-.Pp
-.It \-xbd5
-.St -xbd5
-.Pp
-.It \-xsh5
-.St -xsh5
-.Pp
-.It \-xcu5
-.St -xcu5
-.Pp
-.It \-xns5
-.St -xns5
-.It \-xns5.2
-.St -xns5.2
-.El
-.It Single UNIX Specification version 3
-.Pp
-.Bl -tag -width "-p1003.1-2001" -compact
-.It \-p1003.1-2001
-.St -p1003.1-2001
-.It \-susv3
-.St -susv3
-.br
-This standard is based on C99, SUSv2, POSIX.1-1996, 1d, and 1j.
-It is also called X/Open Portability Guide version 6.
-It is used as the basis for UNIX 03 certification.
-.Pp
-.It \-p1003.1-2004
-.St -p1003.1-2004
-.br
-The second and last Technical Corrigendum.
-.El
-.It Single UNIX Specification version 4
-.Pp
-.Bl -tag -width "-p1003.1g-2000" -compact
-.It \-p1003.1-2008
-.St -p1003.1-2008
-.It \-susv4
-.St -susv4
-.br
-This standard is also called
-X/Open Portability Guide version 7.
-.El
-.It Other standards
-.Pp
-.Bl -tag -width "-p1003.1g-2000" -compact
-.It \-ieee754
-.St -ieee754
-.br
-Floating-point arithmetic.
-.Pp
-.It \-iso8601
-.St -iso8601
-.br
-Representation of dates and times, published in 1988.
-.Pp
-.It \-iso8802-3
-.St -iso8802-3
-.br
-Ethernet local area networks.
-.Pp
-.It \-ieee1275-94
-.St -ieee1275-94
-.El
-.El
-.Tg Sx
-.It Ic \&Sx Ar Title line
-Reference a section or subsection in the same manual page.
-The referenced section or subsection name must be identical to the
-enclosed argument, including whitespace.
-.Pp
-Examples:
-.Dl \&.Sx MANUAL STRUCTURE
-.Pp
-See also
-.Ic \&Sh
-and
-.Ic \&Ss .
-.Tg Sy
-.It Ic \&Sy Ar word ...
-Request a boldface font.
-.Pp
-This is most often used to indicate importance or seriousness (not to be
-confused with stress emphasis, see
-.Ic \&Em ) .
-When none of the semantic macros fit, it is also adequate for syntax
-elements that have to be given or that appear verbatim.
-.Pp
-Examples:
-.Bd -literal -compact -offset indent
-\&.Sy Warning :
-If
-\&.Sy s
-appears in the owner permissions, set-user-ID mode is set.
-This utility replaces the former
-\&.Sy dumpdir
-program.
-.Ed
-.Pp
-See also
-.Ic \&Em ,
-.Ic \&No ,
-and
-.Ic \&Ql .
-.Tg Ta
-.It Ic \&Ta
-Table cell separator in
-.Ic \&Bl Fl column
-lists; can only be used below
-.Ic \&It .
-.Tg Tg
-.It Ic \&Tg Op Ar term
-Announce that the next input line starts a definition of the
-.Ar term .
-This macro must appear alone on its own input line.
-The argument defaults to the first argument of the first macro
-on the next line.
-The argument may not contain whitespace characters, not even when it is quoted.
-This macro is a
-.Xr mandoc 1
-extension and is typically ignored by other formatters.
-.Pp
-When viewing terminal output with
-.Xr less 1 ,
-the interactive
-.Ic :t
-command can be used to go to the definition of the
-.Ar term
-as described for the
-.Ev MANPAGER
-variable in
-.Xr man 1 ;
-when producing HTML output, a fragment identifier
-.Pq Ic id No attribute
-is generated, to be used for deep linking to this place of the document.
-.Pp
-In most cases, adding a
-.Ic \&Tg
-macro would be redundant because
-.Xr mandoc 1
-is able to automatically tag most definitions.
-This macro is intended for cases where automatic tagging of a
-.Ar term
-is unsatisfactory, for example if a definition is not tagged
-automatically (false negative) or if places are tagged that do
-not define the
-.Ar term
-(false positives).
-When there is at least one
-.Ic \&Tg
-macro for a
-.Ar term ,
-no other places are automatically marked as definitions of that
-.Ar term .
-.It Ic \&Tn Ar word ...
-Supported only for compatibility, do not use this in new manuals.
-Even though the macro name
-.Pq Dq tradename
-suggests a semantic function, historic usage is inconsistent, mostly
-using it as a presentation-level macro to request a small caps font.
-.It Ic \&Ud
-Supported only for compatibility, do not use this in new manuals.
-Prints out
-.Dq currently under development.
-.It Ic \&Ux
-Supported only for compatibility, do not use this in new manuals.
-Prints out
-.Dq Ux .
-.Tg Va
-.It Ic \&Va Oo Ar type Oc Ar identifier ...
-A variable name.
-.Pp
-Examples:
-.Dl \&.Va foo
-.Dl \&.Va const char *bar ;
-.Pp
-For function arguments and parameters, use
-.Ic \&Fa
-instead.
-For declarations of global variables in the
-.Em SYNOPSIS
-section, use
-.Ic \&Vt .
-.Tg Vt
-.It Ic \&Vt Ar type Op Ar identifier
-A variable type.
-.Pp
-This is also used for indicating global variables in the
-.Em SYNOPSIS
-section, in which case a variable name is also specified.
-Note that it accepts
-.Sx Block partial-implicit
-syntax when invoked as the first macro on an input line in the
-.Em SYNOPSIS
-section, else it accepts ordinary
-.Sx In-line
-syntax.
-In the former case, this macro starts a new output line,
-and a blank line is inserted in front if there is a preceding
-function definition or include directive.
-.Pp
-Examples:
-.Dl \&.Vt unsigned char
-.Dl \&.Vt extern const char * const sys_signame[] \&;
-.Pp
-For parameters in function prototypes, use
-.Ic \&Fa
-instead, for function return types
-.Ic \&Ft ,
-and for variable names outside the
-.Em SYNOPSIS
-section
-.Ic \&Va ,
-even when including a type with the name.
-See also
-.Sx MANUAL STRUCTURE .
-.It Ic \&Xc
-Close a scope opened by
-.Ic \&Xo .
-.It Ic \&Xo Ar block
-Extend the header of an
-.Ic \&It
-macro or the body of a partial-implicit block macro
-beyond the end of the input line.
-This macro originally existed to work around the 9-argument limit
-of historic
-.Xr mandoc_roff 5 .
-.Tg Xr
-.It Ic \&Xr Ar name section
-Link to another manual
-.Pq Qq cross-reference .
-.Pp
-Cross reference the
-.Ar name
-and
-.Ar section
-number of another man page.
-.Pp
-Examples:
-.Dl \&.Xr mandoc 1
-.Dl \&.Xr mandoc 1 \&;
-.Dl \&.Xr mandoc 1 \&Ns s behaviour
-.El
-.Sh MACRO SYNTAX
-The syntax of a macro depends on its classification.
-In this section,
-.Sq \-arg
-refers to macro arguments, which may be followed by zero or more
-.Sq parm
-parameters;
-.Sq \&Yo
-opens the scope of a macro; and if specified,
-.Sq \&Yc
-closes it out.
-.Pp
-The
-.Em Callable
-column indicates that the macro may also be called by passing its name
-as an argument to another macro.
-For example,
-.Sq \&.Op \&Fl O \&Ar file
-produces
-.Sq Op Fl O Ar file .
-To prevent a macro call and render the macro name literally,
-escape it by prepending a zero-width space,
-.Sq \e& .
-For example,
-.Sq \&Op \e&Fl O
-produces
-.Sq Op \&Fl O .
-If a macro is not callable but its name appears as an argument
-to another macro, it is interpreted as opaque text.
-For example,
-.Sq \&.Fl \&Sh
-produces
-.Sq Fl \&Sh .
-.Pp
-The
-.Em Parsed
-column indicates whether the macro may call other macros by receiving
-their names as arguments.
-If a macro is not parsed but the name of another macro appears
-as an argument, it is interpreted as opaque text.
-.Pp
-The
-.Em Scope
-column, if applicable, describes closure rules.
-.Ss Block full-explicit
-Multi-line scope closed by an explicit closing macro.
-All macros contains bodies; only
-.Ic \&Bf
-and
-.Pq optionally
-.Ic \&Bl
-contain a head.
-.Bd -literal -offset indent
-\&.Yo \(lB\-arg \(lBparm...\(rB\(rB \(lBhead...\(rB
-\(lBbody...\(rB
-\&.Yc
-.Ed
-.Bl -column "MacroX" "CallableX" "ParsedX" "closed by XXX" -offset indent
-.It Em Macro Ta Em Callable Ta Em Parsed Ta Em Scope
-.It Ic \&Bd Ta \&No Ta \&No Ta closed by Ic \&Ed
-.It Ic \&Bf Ta \&No Ta \&No Ta closed by Ic \&Ef
-.It Ic \&Bk Ta \&No Ta \&No Ta closed by Ic \&Ek
-.It Ic \&Bl Ta \&No Ta \&No Ta closed by Ic \&El
-.It Ic \&Ed Ta \&No Ta \&No Ta opened by Ic \&Bd
-.It Ic \&Ef Ta \&No Ta \&No Ta opened by Ic \&Bf
-.It Ic \&Ek Ta \&No Ta \&No Ta opened by Ic \&Bk
-.It Ic \&El Ta \&No Ta \&No Ta opened by Ic \&Bl
-.El
-.Ss Block full-implicit
-Multi-line scope closed by end-of-file or implicitly by another macro.
-All macros have bodies; some
-.Po
-.Ic \&It Fl bullet ,
-.Fl hyphen ,
-.Fl dash ,
-.Fl enum ,
-.Fl item
-.Pc
-don't have heads; only one
-.Po
-.Ic \&It
-in
-.Ic \&Bl Fl column
-.Pc
-has multiple heads.
-.Bd -literal -offset indent
-\&.Yo \(lB\-arg \(lBparm...\(rB\(rB \(lBhead... \(lBTa head...\(rB\(rB
-\(lBbody...\(rB
-.Ed
-.Bl -column "MacroX" "CallableX" "ParsedX" "closed by XXXXXXXXXXX" -offset indent
-.It Em Macro Ta Em Callable Ta Em Parsed Ta Em Scope
-.It Ic \&It Ta \&No Ta Yes Ta closed by Ic \&It , Ic \&El
-.It Ic \&Nd Ta \&No Ta \&No Ta closed by Ic \&Sh
-.It Ic \&Nm Ta \&No Ta Yes Ta closed by Ic \&Nm , Ic \&Sh , Ic \&Ss
-.It Ic \&Sh Ta \&No Ta Yes Ta closed by Ic \&Sh
-.It Ic \&Ss Ta \&No Ta Yes Ta closed by Ic \&Sh , Ic \&Ss
-.El
-.Pp
-Note that the
-.Ic \&Nm
-macro is a
-.Sx Block full-implicit
-macro only when invoked as the first macro
-in a
-.Em SYNOPSIS
-section line, else it is
-.Sx In-line .
-.Ss Block partial-explicit
-Like block full-explicit, but also with single-line scope.
-Each has at least a body and, in limited circumstances, a head
-.Po
-.Ic \&Fo ,
-.Ic \&Eo
-.Pc
-and/or tail
-.Pq Ic \&Ec .
-.Bd -literal -offset indent
-\&.Yo \(lB\-arg \(lBparm...\(rB\(rB \(lBhead...\(rB
-\(lBbody...\(rB
-\&.Yc \(lBtail...\(rB
-
-\&.Yo \(lB\-arg \(lBparm...\(rB\(rB \(lBhead...\(rB \
-\(lBbody...\(rB \&Yc \(lBtail...\(rB
-.Ed
-.Bl -column "MacroX" "CallableX" "ParsedX" "closed by XXXX" -offset indent
-.It Em Macro Ta Em Callable Ta Em Parsed Ta Em Scope
-.It Ic \&Ac Ta Yes Ta Yes Ta opened by Ic \&Ao
-.It Ic \&Ao Ta Yes Ta Yes Ta closed by Ic \&Ac
-.It Ic \&Bc Ta Yes Ta Yes Ta closed by Ic \&Bo
-.It Ic \&Bo Ta Yes Ta Yes Ta opened by Ic \&Bc
-.It Ic \&Brc Ta Yes Ta Yes Ta opened by Ic \&Bro
-.It Ic \&Bro Ta Yes Ta Yes Ta closed by Ic \&Brc
-.It Ic \&Dc Ta Yes Ta Yes Ta opened by Ic \&Do
-.It Ic \&Do Ta Yes Ta Yes Ta closed by Ic \&Dc
-.It Ic \&Ec Ta Yes Ta Yes Ta opened by Ic \&Eo
-.It Ic \&Eo Ta Yes Ta Yes Ta closed by Ic \&Ec
-.It Ic \&Fc Ta Yes Ta Yes Ta opened by Ic \&Fo
-.It Ic \&Fo Ta \&No Ta \&No Ta closed by Ic \&Fc
-.It Ic \&Oc Ta Yes Ta Yes Ta closed by Ic \&Oo
-.It Ic \&Oo Ta Yes Ta Yes Ta opened by Ic \&Oc
-.It Ic \&Pc Ta Yes Ta Yes Ta closed by Ic \&Po
-.It Ic \&Po Ta Yes Ta Yes Ta opened by Ic \&Pc
-.It Ic \&Qc Ta Yes Ta Yes Ta opened by Ic \&Oo
-.It Ic \&Qo Ta Yes Ta Yes Ta closed by Ic \&Oc
-.It Ic \&Re Ta \&No Ta \&No Ta opened by Ic \&Rs
-.It Ic \&Rs Ta \&No Ta \&No Ta closed by Ic \&Re
-.It Ic \&Sc Ta Yes Ta Yes Ta opened by Ic \&So
-.It Ic \&So Ta Yes Ta Yes Ta closed by Ic \&Sc
-.It Ic \&Xc Ta Yes Ta Yes Ta opened by Ic \&Xo
-.It Ic \&Xo Ta Yes Ta Yes Ta closed by Ic \&Xc
-.El
-.Ss Block partial-implicit
-Like block full-implicit, but with single-line scope closed by the
-end of the line.
-.Bd -literal -offset indent
-\&.Yo \(lB\-arg \(lBval...\(rB\(rB \(lBbody...\(rB \(lBres...\(rB
-.Ed
-.Bl -column "MacroX" "CallableX" "ParsedX" -offset indent
-.It Em Macro Ta Em Callable Ta Em Parsed
-.It Ic \&Aq Ta Yes Ta Yes
-.It Ic \&Bq Ta Yes Ta Yes
-.It Ic \&Brq Ta Yes Ta Yes
-.It Ic \&D1 Ta \&No Ta \&Yes
-.It Ic \&Dl Ta \&No Ta Yes
-.It Ic \&Dq Ta Yes Ta Yes
-.It Ic \&En Ta Yes Ta Yes
-.It Ic \&Op Ta Yes Ta Yes
-.It Ic \&Pq Ta Yes Ta Yes
-.It Ic \&Ql Ta Yes Ta Yes
-.It Ic \&Qq Ta Yes Ta Yes
-.It Ic \&Sq Ta Yes Ta Yes
-.It Ic \&Vt Ta Yes Ta Yes
-.El
-.Pp
-Note that the
-.Ic \&Vt
-macro is a
-.Sx Block partial-implicit
-only when invoked as the first macro
-in a
-.Em SYNOPSIS
-section line, else it is
-.Sx In-line .
-.Ss Special block macro
-The
-.Ic \&Ta
-macro can only be used below
-.Ic \&It
-in
-.Ic \&Bl Fl column
-lists.
-It delimits blocks representing table cells;
-these blocks have bodies, but no heads.
-.Bl -column "MacroX" "CallableX" "ParsedX" "closed by XXXX" -offset indent
-.It Em Macro Ta Em Callable Ta Em Parsed Ta Em Scope
-.It Ic \&Ta Ta Yes Ta Yes Ta closed by Ic \&Ta , Ic \&It
-.El
-.Ss In-line
-Closed by the end of the line, fixed argument lengths,
-and/or subsequent macros.
-In-line macros have only text children.
-If a number (or inequality) of arguments is
-.Pq n ,
-then the macro accepts an arbitrary number of arguments.
-.Bd -literal -offset indent
-\&.Yo \(lB\-arg \(lBval...\(rB\(rB \(lBargs...\(rB \(lBres...\(rB
-
-\&.Yo \(lB\-arg \(lBval...\(rB\(rB \(lBargs...\(rB Yc...
-
-\&.Yo \(lB\-arg \(lBval...\(rB\(rB arg0 arg1 argN
-.Ed
-.Bl -column "MacroX" "CallableX" "ParsedX" "Arguments" -offset indent
-.It Em Macro Ta Em Callable Ta Em Parsed Ta Em Arguments
-.It Ic \&%A Ta \&No Ta \&No Ta >0
-.It Ic \&%B Ta \&No Ta \&No Ta >0
-.It Ic \&%C Ta \&No Ta \&No Ta >0
-.It Ic \&%D Ta \&No Ta \&No Ta >0
-.It Ic \&%I Ta \&No Ta \&No Ta >0
-.It Ic \&%J Ta \&No Ta \&No Ta >0
-.It Ic \&%N Ta \&No Ta \&No Ta >0
-.It Ic \&%O Ta \&No Ta \&No Ta >0
-.It Ic \&%P Ta \&No Ta \&No Ta >0
-.It Ic \&%Q Ta \&No Ta \&No Ta >0
-.It Ic \&%R Ta \&No Ta \&No Ta >0
-.It Ic \&%T Ta \&No Ta \&No Ta >0
-.It Ic \&%U Ta \&No Ta \&No Ta >0
-.It Ic \&%V Ta \&No Ta \&No Ta >0
-.It Ic \&Ad Ta Yes Ta Yes Ta >0
-.It Ic \&An Ta Yes Ta Yes Ta >0
-.It Ic \&Ap Ta Yes Ta Yes Ta 0
-.It Ic \&Ar Ta Yes Ta Yes Ta n
-.It Ic \&At Ta Yes Ta Yes Ta 1
-.It Ic \&Bsx Ta Yes Ta Yes Ta n
-.It Ic \&Bt Ta \&No Ta \&No Ta 0
-.It Ic \&Bx Ta Yes Ta Yes Ta n
-.It Ic \&Cd Ta Yes Ta Yes Ta >0
-.It Ic \&Cm Ta Yes Ta Yes Ta >0
-.It Ic \&Db Ta \&No Ta \&No Ta 1
-.It Ic \&Dd Ta \&No Ta \&No Ta n
-.It Ic \&Dt Ta \&No Ta \&No Ta n
-.It Ic \&Dv Ta Yes Ta Yes Ta >0
-.It Ic \&Dx Ta Yes Ta Yes Ta n
-.It Ic \&Em Ta Yes Ta Yes Ta >0
-.It Ic \&Er Ta Yes Ta Yes Ta >0
-.It Ic \&Es Ta Yes Ta Yes Ta 2
-.It Ic \&Ev Ta Yes Ta Yes Ta >0
-.It Ic \&Ex Ta \&No Ta \&No Ta n
-.It Ic \&Fa Ta Yes Ta Yes Ta >0
-.It Ic \&Fd Ta \&No Ta \&No Ta >0
-.It Ic \&Fl Ta Yes Ta Yes Ta n
-.It Ic \&Fn Ta Yes Ta Yes Ta >0
-.It Ic \&Fr Ta Yes Ta Yes Ta >0
-.It Ic \&Ft Ta Yes Ta Yes Ta >0
-.It Ic \&Fx Ta Yes Ta Yes Ta n
-.It Ic \&Hf Ta \&No Ta \&No Ta n
-.It Ic \&Ic Ta Yes Ta Yes Ta >0
-.It Ic \&In Ta \&No Ta \&No Ta 1
-.It Ic \&Lb Ta \&No Ta \&No Ta 1
-.It Ic \&Li Ta Yes Ta Yes Ta >0
-.It Ic \&Lk Ta Yes Ta Yes Ta >0
-.It Ic \&Lp Ta \&No Ta \&No Ta 0
-.It Ic \&Ms Ta Yes Ta Yes Ta >0
-.It Ic \&Mt Ta Yes Ta Yes Ta >0
-.It Ic \&Nm Ta Yes Ta Yes Ta n
-.It Ic \&No Ta Yes Ta Yes Ta >0
-.It Ic \&Ns Ta Yes Ta Yes Ta 0
-.It Ic \&Nx Ta Yes Ta Yes Ta n
-.It Ic \&Os Ta \&No Ta \&No Ta n
-.It Ic \&Ot Ta Yes Ta Yes Ta >0
-.It Ic \&Ox Ta Yes Ta Yes Ta n
-.It Ic \&Pa Ta Yes Ta Yes Ta n
-.It Ic \&Pf Ta Yes Ta Yes Ta 1
-.It Ic \&Pp Ta \&No Ta \&No Ta 0
-.It Ic \&Rv Ta \&No Ta \&No Ta n
-.It Ic \&Sm Ta \&No Ta \&No Ta <2
-.It Ic \&St Ta \&No Ta Yes Ta 1
-.It Ic \&Sx Ta Yes Ta Yes Ta >0
-.It Ic \&Sy Ta Yes Ta Yes Ta >0
-.It Ic \&Tg Ta \&No Ta \&No Ta <2
-.It Ic \&Tn Ta Yes Ta Yes Ta >0
-.It Ic \&Ud Ta \&No Ta \&No Ta 0
-.It Ic \&Ux Ta Yes Ta Yes Ta n
-.It Ic \&Va Ta Yes Ta Yes Ta n
-.It Ic \&Vt Ta Yes Ta Yes Ta >0
-.It Ic \&Xr Ta Yes Ta Yes Ta 2
-.El
-.Ss Delimiters
-When a macro argument consists of one single input character
-considered as a delimiter, the argument gets special handling.
-This does not apply when delimiters appear in arguments containing
-more than one character.
-Consequently, to prevent special handling and just handle it
-like any other argument, a delimiter can be escaped by prepending
-a zero-width space
-.Pq Sq \e& .
-In text lines, delimiters never need escaping, but may be used
-as normal punctuation.
-.Pp
-For many macros, when the leading arguments are opening delimiters,
-these delimiters are put before the macro scope,
-and when the trailing arguments are closing delimiters,
-these delimiters are put after the macro scope.
-Spacing is suppressed after opening delimiters
-and before closing delimiters.
-For example,
-.Pp
-.D1 Pf \. \&Aq "( [ word ] ) ."
-.Pp
-renders as:
-.Pp
-.D1 Aq ( [ word ] ) .
-.Pp
-Opening delimiters are:
-.Pp
-.Bl -tag -width Ds -offset indent -compact
-.It \&(
-left parenthesis
-.It \&[
-left bracket
-.El
-.Pp
-Closing delimiters are:
-.Pp
-.Bl -tag -width Ds -offset indent -compact
-.It \&.
-period
-.It \&,
-comma
-.It \&:
-colon
-.It \&;
-semicolon
-.It \&)
-right parenthesis
-.It \&]
-right bracket
-.It \&?
-question mark
-.It \&!
-exclamation mark
-.El
-.Pp
-Note that even a period preceded by a backslash
-.Pq Sq \e.\&
-gets this special handling; use
-.Sq \e&.\&
-to prevent that.
-.Pp
-Many in-line macros interrupt their scope when they encounter
-delimiters, and resume their scope when more arguments follow that
-are not delimiters.
-For example,
-.Pp
-.D1 Pf \. \&Fl "a ( b | c \e*(Ba d ) e"
-.Pp
-renders as:
-.Pp
-.D1 Fl a ( b | c \*(Ba d ) e
-.Pp
-This applies to both opening and closing delimiters,
-and also to the middle delimiter, which does not suppress spacing:
-.Pp
-.Bl -tag -width Ds -offset indent -compact
-.It \&|
-vertical bar
-.El
-.Pp
-As a special case, the predefined string \e*(Ba is handled and rendered
-in the same way as a plain
-.Sq \&|
-character.
-Using this predefined string is not recommended in new manuals.
-.Pp
-Appending a zero-width space
-.Pq Sq \e&
-to the end of an input line is also useful to prevent the interpretation
-of a trailing period, exclamation or question mark as the end of a
-sentence, for example when an abbreviation happens to occur
-at the end of a text or macro input line.
-.Ss Font handling
-In
-.Nm
-documents, usage of semantic markup is recommended in order to have
-proper fonts automatically selected; only when no fitting semantic markup
-is available, consider falling back to
-.Sx Physical markup
-macros.
-Whenever any
-.Nm
-macro switches the
-.Xr mandoc_roff 5
-font mode, it will automatically restore the previous font when exiting
-its scope.
-Manually switching the font using the
-.Xr mandoc_roff 5
-.Ql \ef
-font escape sequences is never required.
-.Sh COMPATIBILITY
-This section provides an incomplete list of compatibility issues
-between mandoc and GNU troff
-.Pq Qq groff .
-.Pp
-The following problematic behaviour is found in groff:
-.Pp
-.Bl -dash -compact
-.It
-.Ic \&Pa
-does not format its arguments when used in the FILES section under
-certain list types.
-.It
-.Ic \&Ta
-can only be called by other macros, but not at the beginning of a line.
-.It
-.Sq \ef
-.Pq font face
-and
-.Sq \eF
-.Pq font family face
-.Sx Text Decoration
-escapes behave irregularly when specified within line-macro scopes.
-.It
-Negative scaling units return to prior lines.
-Instead, mandoc truncates them to zero.
-.El
-.Pp
-The following features are unimplemented in mandoc:
-.Pp
-.Bl -dash -compact
-.It
-.Ic \&Bd Fl file Ar file
-is unsupported for security reasons.
-.It
-.Ic \&Bd
-.Fl filled
-does not adjust the right margin, but is an alias for
-.Ic \&Bd
-.Fl ragged .
-.It
-.Ic \&Bd
-.Fl literal
-does not use a literal font, but is an alias for
-.Ic \&Bd
-.Fl unfilled .
-.It
-.Ic \&Bd
-.Fl offset Cm center
-and
-.Fl offset Cm right
-don't work.
-Groff does not implement centered and flush-right rendering either,
-but produces large indentations.
-.El
-.Sh SEE ALSO
-.Xr man 1 ,
-.Xr mandoc 1 ,
-.Xr eqn 5 ,
-.Xr man 5 ,
-.Xr mandoc_char 5 ,
-.Xr mandoc_roff 5 ,
-.Xr tbl 5
-.Pp
-The web page
-.Lk https://mandoc.bsd.lv/mdoc/ "extended documentation for the mdoc language"
-provides a few tutorial-style pages for beginners, an extensive style
-guide for advanced authors, and an alphabetic index helping to choose
-the best macros for various kinds of content.
-.Pp
-The manual page
-.Lk https://man.voidlinux.org/groff_mdoc "groff_mdoc(7)"
-contained in the
-.Dq groff
-package documents exactly the same language in a somewhat different style.
-.Sh HISTORY
-The
-.Nm
-language first appeared as a troff macro package in
-.Bx 4.4 .
-It was later significantly updated by Werner Lemberg and Ruslan Ermilov
-in groff-1.17.
-The standalone implementation that is part of the
-.Xr mandoc 1
-utility written by Kristaps Dzonsons appeared in
-.Ox 4.6 .
-.Sh AUTHORS
-The
-.Nm
-reference was written by
-.An Kristaps Dzonsons Aq Mt kristaps@bsd.lv .
diff --git a/usr/src/man/man5/me.5 b/usr/src/man/man5/me.5
deleted file mode 100644
index f79912dce1..0000000000
--- a/usr/src/man/man5/me.5
+++ /dev/null
@@ -1,242 +0,0 @@
-'\" te
-.\" Copyright (c) 1980 Regents of the University of California. All rights reserved. The Berkeley software License Agreement Copyright (c) 1997, Sun Microsystems, Inc. All Rights Reserved
-.TH ME 5 "Feb 25, 1992"
-.SH NAME
-me \- macros for formatting papers
-.SH SYNOPSIS
-.LP
-.nf
-\fBnroff\fR \fB-me\fR [\fIoptions\fR] \fIfilename\fR...
-.fi
-
-.LP
-.nf
-\fBtroff\fR \fB-me\fR [\fIoptions\fR] \fIfilename\fR...
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-This package of \fBnroff\fR and \fBtroff\fR macro definitions provides a canned
-formatting facility for technical papers in various formats. When producing
-2-column output on a terminal, filter the output through \fBcol\fR(1).
-.sp
-.LP
-The macro requests are defined below. Many \fBnroff\fR and \fBtroff\fR requests
-are unsafe in conjunction with this package, however, these requests may be
-used with impunity after the first \fB\&.pp\fR:
-.sp
-.ne 2
-.na
-\fB\&.bp\fR
-.ad
-.RS 12n
-begin new page
-.RE
-
-.sp
-.ne 2
-.na
-\fB\&.br\fR
-.ad
-.RS 12n
-break output line here
-.RE
-
-.sp
-.ne 2
-.na
-\fB\&.sp \fIn\fR\fR
-.ad
-.RS 12n
-insert \fIn\fR spacing lines
-.RE
-
-.sp
-.ne 2
-.na
-\fB\&.ls \fIn\fR\fR
-.ad
-.RS 12n
-(line spacing) \fIn\fR=1 single, \fIn\fR=2 double space
-.RE
-
-.sp
-.ne 2
-.na
-\fB\&.na\fR
-.ad
-.RS 12n
-no alignment of right margin
-.RE
-
-.sp
-.ne 2
-.na
-\fB\&.ce \fIn\fR\fR
-.ad
-.RS 12n
-center next \fIn\fR lines
-.RE
-
-.sp
-.ne 2
-.na
-\fB\&.ul \fIn\fR\fR
-.ad
-.RS 12n
-underline next \fIn\fR lines
-.RE
-
-.sp
-.ne 2
-.na
-\fB\&.sz \fI+n\fR\fR
-.ad
-.RS 12n
-add \fIn\fR to point size
-.RE
-
-.sp
-.LP
-Output of the \fBeqn\fR(1), \fBneqn\fR(1), \fBrefer\fR(1), and \fBtbl\fR(1)
-preprocessors for equations and tables is acceptable as input.
-.SH REQUESTS
-.sp
-.LP
-In the following list, "initialization" refers to the first \fB\&.pp,\fR
-\fB\&.lp\fR, \fB\&.ip\fR, \fB\&.np\fR, \fB\&.sh\fR, or \fB\&.uh\fR macro. This
-list is incomplete.
-.sp
-
-.sp
-.TS
-c c c c
-c c c c .
-\fIRequest\fR \fIInitial\fR \fICause\fR \fIExplanation\fR
- \fIValue\fR \fIBreak\fR
-\fB\&.(c\fR - yes Begin centered block.
-\fB\&.(d\fR - no Begin delayed text.
-\fB\&.(f\fR - no Begin footnote.
-\fB\&.(l\fR - yes Begin list.
-\fB\&.(q\fR - yes Begin major quote.
-\fB\&.(x\fR\fIx\fR - no Begin indexed item in index \fIx\fR.
-\fB\&.(z\fR - no Begin floating keep.
-\fB\&.)c\fR - yes End centered block.
-\fB\&.)d\fR - yes End delayed text.
-\fB\&.)f\fR - yes End footnote.
-\fB\&.)l\fR - yes End list.
-\fB\&.)q\fR - yes End major quote.
-\fB\&.)x\fR - yes End index item.
-\fB\&.)z\fR - yes End floating keep.
-\fB\&.++\fR \fIm H\fR - no Define paper section.
- \fIm\fR defines the part of the paper,
- T{
-and can be \fBC\fR (chapter), \fBA\fR (appendix), \fBP\fR (preliminary, for instance,
-T}
- abstract, table of contents, etc.),
- \fBB\fR (bibliography), \fBRC\fR (chapters
- renumbered from page one each
- chapter), or \fBRA\fR (appendix renumbered
- from page one).
-\fB\&.+c \fR\fIT\fR - yes Begin chapter (or appendix, etc.,
- as set by \fB\&.++\fR). \fIT\fR is
- the chapter title.
-\fB\&.1c\fR 1 yes One column format on a new page.
-\fB\&.2c\fR 1 yes Two column format.
-\fB\&.EN\fR - yes Space after equation produced by \fBeqn\fR
- or \fBneqn\fR.
-\fB\&.EQ\fR \fIx y\fR - yes Precede equation; break out and
- add space. Equation number is \fIy\fR.
- The optional argument \fIx\fR may be \fII\fR
- to indent equation (default),
- \fIL\fR to left-adjust the equation, or
- \fIC\fR to center the equation.
-\fB\&.GE\fR - yes End \fIgremlin\fR picture.
-\fB\&.GS\fR - yes Begin \fIgremlin\fR picture.
-\fB\&.PE\fR - yes End \fBpic\fR picture.
-\fB\&.PS\fR - yes Begin \fBpic\fR picture.
-\fB\&.TH\fR - YES "heading End, section"
-\fB\&.TE\fR - yes End table.
-\fB\&.TS\fR \fIx\fR - yes Begin table; if \fIx\fR is \fIH\fR table
- has repeated heading.
-\fB\&.ac\fR \fIA N\fR - no Set up for ACM style output.
- \fIA\fR is the Author's name(s), \fIN\fR is the
- total number of pages. Must be given
- before the first initialization.
-\fB\&.b\fR \fIx\fR no no Print \fIx\fR in boldface; if no argument
- switch to boldface.
-\fB\&.ba\fR \fI+n\fR 0 yes Augments the base indent by \fIn\fR.
- This indent is used to set the indent
- on regular text (like paragraphs).
-\fB\&.bc\fR no yes Begin new column.
-\fB\&.bi\fR \fIx\fR no no Print \fIx\fR in bold italics
- (nofill only).
-\fB\&.bu\fR - yes Begin bulleted paragraph.
-\fB\&.bx\fR \fIx\fR no no Print \fIx\fR in a box (nofill only).
-\fB\&.ef\fR \fI\&'x'y'z\fR \&''''' no Set even footer to \fIx y z\fR.
-\fB\&.eh\fR \fI\&'x'y'z\fR \&''''' no Set even header to \fIx y z\fR.
-\fB\&.fo\fR \fI\&'x'y'z\fR \&''''' no Set footer to \fIx y z\fR.
-\fB\&.hx\fR - no Suppress headers and footers on
- next page.
-\fB\&.he\fR \fI\&'x'y'z\fR \&''''' no Set header to \fIx y z\fR.
-\fB\&.hl\fR - yes Draw a horizontal line.
-\fB\&.i\fR \fIx\fR no no Italicize \fIx\fR; if \fIx\fR missing, italic
- text follows.
-\fB\&.ip\fR \fIx y\fR no yes Start indented paragraph, with
- hanging tag \fIx\fR. Indentation is
- \fIy\fR ens (default 5).
-\fB\&.lp\fR yes yes Start left-blocked paragraph.
-\fB\&.lo\fR - no Read in a file of local macros
- of the form \fB\&.*\fR\fIx.\fR Must be
- given before initialization.
-\fB\&.np\fR 1 yes Start numbered paragraph.
-\fB\&.of\fR \fI\&'x'y'z\fR \&''''' no Set odd footer to x y z.
-\fB\&.oh\fR \fI\&'x'y'z\fR \&''''' no Set odd header to x y z.
-\fB\&.pd\fR - yes Print delayed text.
-\fB\&.pp\fR no yes Begin paragraph. First line indented.
-\fB\&.r\fR yes no Roman text follows.
-\fB\&.re\fR - no Reset tabs to default values.
-\fB\&.sc\fR no no Read in a file of special characters
- and diacritical marks. Must be
- given before initialization.
-\fB\&.sh\fR \fIn x\fR - yes Section head follows, font
- automatically bold. \fIn\fR is level
- of section, \fIx\fR is title of section.
-\fB\&.sk\fR no no Leave the next page blank.
- Only one page is remembered ahead.
-\fB\&.sm\fR \fIx\fR - no Set \fIx\fR in a smaller pointsize.
-\fB\&.sz\fR \fI+n\fR 10p no Augment the point size by \fIn\fR points.
-\fB\&.th\fR no no Produce the paper in thesis format.
- Must be given before initialization.
-\fB\&.tp\fR no yes Begin title page.
-\fB\&.u\fR \fIx\fR - no Underline argument (even in \fBtroff\fR).
- (Nofill only).
-\fB\&.uh\fR - yes Like \fB\&.sh\fR but unnumbered.
-\fB\&.xp\fR \fIx\fR - no Print index \fIx\fR.
-.TE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/usr/share/lib/tmac/e\fR\fR
-.ad
-.RS 28n
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/share/lib/tmac/*.me\fR\fR
-.ad
-.RS 28n
-
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBcol\fR(1), \fBeqn\fR(1), \fBnroff\fR(1), \fBrefer\fR(1), \fBtbl\fR(1),
-\fBtroff\fR(1)
diff --git a/usr/src/man/man5/mech.5 b/usr/src/man/man5/mech.5
new file mode 100644
index 0000000000..5e5037bde7
--- /dev/null
+++ b/usr/src/man/man5/mech.5
@@ -0,0 +1,157 @@
+'\" te
+.\" Copyright 2003 Sun Microsystems, Inc.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH MECH 5 "Sep 6, 2006"
+.SH NAME
+mech, qop \- mechanism and QOP files
+.SH SYNOPSIS
+.LP
+.nf
+\fB/etc/gss/mech\fR
+\fB/etc/gss/qop\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fB/etc/gss/mech\fR and \fB/etc/gss/qop\fR files contain tables showing
+installed security mechanisms and the Quality of Protection (\fBQOP\fR)
+associated with them, respectively. As security mechanisms are installed on the
+system, entries are added to these two files. Contents of these files may be
+accessed either manually or programmatically. For example, manually with
+\fBcat\fR(1) or \fBmore\fR(1), or programmatically with either
+\fBrpc_gss_get_mechanisms\fR(3NSL) or \fBrpc_gss_get_mech_info\fR(3NSL).
+.sp
+.LP
+The order of entries in the \fB/etc/gss/mech\fR file is significant: the order
+should be from the most preferred to the least preferred mechanisms.
+.sp
+.LP
+The \fB/etc/gss/mech\fR file contains five fields:
+.sp
+.ne 2
+.na
+\fB\fImechanism name\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBASCII\fR string representing the mechanism.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIobject identifier\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBRPC\fR \fBOID\fR for this mechanism.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIshared library\fR\fR
+.ad
+.sp .6
+.RS 4n
+Shared library which implements the services provided by this mechanism.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIkernel module\fR\fR
+.ad
+.sp .6
+.RS 4n
+Kernel module which implements the services provided by this mechanism.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIlibrary options\fR (optional field)\fR
+.ad
+.sp .6
+.RS 4n
+Optional parameters that are interpreted by the individual mechanism with which
+they are associated. Specific supported options are described in the
+documentation for the individual mechanism, if any. Not all mechanisms have
+support for optional parameters. \fIlibrary options\fR must be enclosed in
+brackets (\fB[ ]\fR) so they may be differentiated from the optional kernel
+module entries.
+.RE
+
+.sp
+.LP
+The \fB/etc/gss/qop\fR file contains three fields:
+.sp
+.ne 2
+.na
+\fB\fIQOP string\fR\fR
+.ad
+.RS 19n
+Name, in \fBASCII\fR, of this Quality of Protection.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIQOP value\fR\fR
+.ad
+.RS 19n
+Numeric value by which \fBRPC\fR identifies this \fBQOP\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fImechanism name\fR \fR
+.ad
+.RS 19n
+\fBASCII\fR string representing the mechanism with which this \fBQOP\fR is
+associated.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRA Typical Entry in \fB/etc/gss/mech\fR
+.sp
+.LP
+This is a typical entry in a \fB/etc/gss/mech\fR file:
+
+.sp
+.in +2
+.nf
+kerberosv5 1.2.840.113554.1.2.2 mech_krb5.so kmech_krb5
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRA Typical Entry in \fB/etc/gss/qop\fR
+.sp
+.LP
+This is a typical entry in a \fB/etc/gss/qop\fR file:
+
+.sp
+.in +2
+.nf
+GSS_KRB5_CONF_C_QOP_DES 0 kerberosv5
+.fi
+.in -2
+.sp
+
+.SH SEE ALSO
+.sp
+.LP
+.BR rpc (3NSL),
+.BR rpc_gss_get_mech_info (3NSL),
+.BR rpc_gss_get_mechanisms (3NSL),
+.BR rpcsec_gss (3NSL)
+.sp
+.LP
+\fIONC+ Developer\&'s Guide\fR
diff --git a/usr/src/man/man5/mech_spnego.5 b/usr/src/man/man5/mech_spnego.5
deleted file mode 100644
index 9b3c0cc68b..0000000000
--- a/usr/src/man/man5/mech_spnego.5
+++ /dev/null
@@ -1,119 +0,0 @@
-'\" te
-.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH MECH_SPNEGO 5 "Oct 4, 2004"
-.SH NAME
-mech_spnego \- Simple and Protected GSS-API Negotiation Mechanism
-.SH SYNOPSIS
-.LP
-.nf
-/usr/lib/gss/mech_spnego.so.1
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The SPNEGO security mechanism for \fBGSS\fR-\fBAPI\fR allows
-\fBGSS\fR-\fBAPI\fR applications to negotiate the actual security mechanism to
-be used in the \fBGSS\fR-\fBAPI\fR session. \fBmech_spnego.so.1\fR is a shared
-object module that is dynamically opened by applications that specify the
-SPNEGO Object Identifier (\fBOID\fR) in calls to the \fBGSS\fR-\fBAPI\fR
-functions (see \fBlibgss\fR(3LIB)).
-.sp
-.LP
-SPNEGO is described by IETF RFC 2478 and is intended to be used in environments
-where multiple \fBGSS\fR-\fBAPI \fRmechanisms are available to the client or
-server and neither side knows what mechanisms are supported by the other.
-.sp
-.LP
-When SPNEGO is used, it selects the list of mechanisms to advertise by reading
-the \fBGSS\fR mechanism configuration file, \fB/etc/gss/mech\fR (see
-\fBmech\fR(4)), and by listing all active mechanisms except for itself.
-.SH OPTIONS
-.sp
-.LP
-SPNEGO may be configured to function in two ways. The first way is to
-interoperate with Microsoft SSPI clients and servers that use the Microsoft
-"\fBNegotiate\fR" method, which is also based on SPNEGO. The Microsoft
-"\fBNegotiate\fR" mechanism does not strictly follow the IETF RFC. Therefore,
-use special handling in order to enable full interoperability. In order to
-interoperate, place option "\fB[ msinterop ]\fR" at the end of the SPNEGO line
-in \fB/etc/gss/mech\fR.
-.sp
-.LP
-This is an example (from \fB/etc/gss/mech\fR):
-.sp
-.in +2
-.nf
-\fBspnego 1.3.6.1.5.5.2 mech_spnego.so [ msinterop ]\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Without the "\fB[ msinterop ]\fR" option, \fBmech_spnego\fR will follow the
-strict IETF RFC 2478 specification and will not be able to negotiate with
-Microsoft applications that try to use the SSPI "\fBNegotiate\fR" mechanism.
-.SH INTERFACES
-.sp
-.LP
-\fBmech_spnego.so.1\fR has no public interfaces. It is only activated and used
-through the \fBGSS\fR-\fBAPI\fR interface provided by \fBlibgss.so.1\fR (see
-\fBlibgss\fR(3LIB)).
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/gss/mech_spnego.so.1\fR\fR
-.ad
-.sp .6
-.RS 4n
-shared object file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/sparcv9/gss/mech_spnego.so.1\fR\fR
-.ad
-.sp .6
-.RS 4n
-SPARC 64-bit shared object file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/amd64/gss/mech_spnego.so.1\fR\fR
-.ad
-.sp .6
-.RS 4n
-x86 64-bit shared object file
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-MT Level Safe
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBIntro\fR(3), \fBlibgss\fR(3LIB), \fBmech\fR(4), \fBattributes\fR(5)
-.sp
-.LP
-\fISolaris Security for Developers Guide\fR
diff --git a/usr/src/man/man5/menu.4th.5 b/usr/src/man/man5/menu.4th.5
deleted file mode 100644
index 5cde905f4c..0000000000
--- a/usr/src/man/man5/menu.4th.5
+++ /dev/null
@@ -1,307 +0,0 @@
-.\" Copyright (c) 2011-2013 Devin Teske
-.\" All rights reserved.
-.\"
-.\" Redistribution and use in source and binary forms, with or without
-.\" modification, are permitted provided that the following conditions
-.\" are met:
-.\" 1. Redistributions of source code must retain the above copyright
-.\" notice, this list of conditions and the following disclaimer.
-.\" 2. Redistributions in binary form must reproduce the above copyright
-.\" notice, this list of conditions and the following disclaimer in the
-.\" documentation and/or other materials provided with the distribution.
-.\"
-.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
-.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
-.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
-.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
-.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-.\" SUCH DAMAGE.
-.\"
-.Dd July 20, 2018
-.Dt MENU.4TH 5
-.Os
-.Sh NAME
-.Nm menu.4th
-.Nd loader dynamic menu boot module
-.Sh DESCRIPTION
-The file that goes by the name of
-.Nm
-is a set of commands designed to display a dynamic menu system managed through
-a system of carefully named environment variables.
-The commands of
-.Nm
-by themselves are not enough for most uses.
-Please refer to the
-examples below for the most common situations, and to
-.Xr loader 5
-for additional commands.
-.Pp
-Before using any of the commands provided in
-.Nm ,
-it must be included
-through the command:
-.Pp
-.Dl include menu.4th
-.Pp
-This line is present in the default
-.Pa /boot/forth/menu.rc
-file, so it is not needed (and should not be re-issued) in a normal setup.
-.Pp
-The commands provided by it are:
-.Pp
-.Bl -tag -width disable-module_module -compact -offset indent
-.It Ic menu-init
-Draws the menu bounding box and initializes some internal state variables.
-This should be called before any other menu-related functions.
-.It Ic menu-display
-Displays the menu (configured via the below documented environment variables)
-and blocks on keyboard input, awaiting user action.
-.It Ic menu-erase
-Clears the screen area within the menu bounding box.
-.It Ic menu-redraw
-Calls
-.Ic menu-erase
-and then redraws the menu.
-.It Ic menu-unset
-Unsets the environment variables associated with individual menu items,
-clearing the way for a new menu.
-.It Ic menu-clear
-Calls
-.Ic menu-unset
-and then
-.Ic menu-erase .
-.El
-.Pp
-The environment variables that effect its behavior are:
-.Bl -tag -width bootfile -offset indent
-.It Va loader_color
-If set to
-.Dq Li NO
-(case-insensitive) or
-.Dq Li 0 ,
-causes the menu to be displayed without color.
-The default is to use ANSI coloring whenever possible.
-If serial boot is enabled, color is disabled by default.
-Color features include the use of ANSI bold for numbers appearing to the left
-of menuitems and the use of special
-.Dq Li ansi
-variables described below.
-.It Va autoboot_delay
-Number of seconds
-.Ic menu-display
-will wait before executing
-.Va menu_timeout_command
-.Ic ( boot
-by default) unless a key is pressed.
-If set to
-.Dq Li NO
-(case-insensitive)
-.Ic menu-display
-will wait for user input and never execute
-.Ic menu_timeout_command .
-If set to
-.Dq Li -1 ,
-.Ic menu-display
-will boot immediately, preventing both interruption of the
-.Ic autoboot
-process and escaping to the loader prompt.
-Default is
-.Dq Li 10 .
-See
-.Xr loader 5
-for additional information.
-.It Va menu_timeout_command
-The command to be executed after
-.Va autoboot_delay
-seconds if a key is not pressed.
-The default is
-.Ic boot .
-.It Va loader_menu_frame
-Sets the desired box style to draw around the boot menu.
-Possible values are:
-.Dq Li single
-.Pq the default ,
-.Dq Li double ,
-and
-.Dq Li none .
-.It Va loader_menu_timeout_x
-Sets the desired column position of the timeout countdown text.
-Default is 4.
-.It Va loader_menu_timeout_y
-Sets the desired row position of the timeout countdown text.
-Default is 23.
-.It Va loader_menu_title
-The text to display above the menu.
-Default is
-.Dq Li "Welcome to FreeBSD" .
-.It Va loader_menu_title_align
-Default is to align
-.Ic loader_menu_title
-centered above the menu.
-This can be set to
-.Dq Li left
-or
-.Dq Li right
-to instead display the title left-or-right justified
-.Pq respectively .
-.It Va loader_menu_x
-Sets the desired column position of the boot menu.
-Default is 5.
-.It Va loader_menu_y
-Sets the desired row position of the boot menu.
-Default is 10.
-.It Va menu_caption[x]
-The text to be displayed for the numbered menuitem
-.Dq Li x .
-.It Va menu_command[x]
-The command to be executed when the number associated with menuitem
-.Dq Li x
-is pressed.
-See the list of included FICL words below for some ideas.
-.It Va menu_keycode[x]
-An optional decimal ASCII keycode to be associated with menuitem
-.Dq Li x .
-When pressed, will cause the execution of
-.Va menu_command[x] .
-.It Va ansi_caption[x]
-If
-.Va loader_color
-is set
-.Pq enabled by default ,
-use this caption for menuitem
-.Dq Li x
-instead of
-.Va menu_caption[x] .
-.It Va toggled_text[x]
-For menuitems where
-.Va menu_command[x]
-is set to
-.Dq Li toggle_menuitem
-(or a derivative thereof), the text displayed
-will toggle between this and
-.Va menu_caption[x] .
-.It Va toggled_ansi[x]
-Like
-.Va toggled_text[x]
-except used when
-.Va loader_color
-is enabled
-.Pq default .
-.It Va menu_caption[x][y]
-For menuitems where
-.Va menu_command[x]
-is set to
-.Dq Li cycle_menuitem
-(or a derivative thereof), the text displayed will cycle between this and other
-.Va menu_caption[x][y]
-entries.
-.It Va ansi_caption[x][y]
-Like
-.Va menu_caption[x][y]
-except used when
-.Va loader_color
-is enabled
-.Pq default .
-.It Va menu_acpi
-When set to a number
-.Dq Li x
-associated with a given menuitem, that menuitem will allow to select
-acpi-user-options
-.Pq see Xr eeprom 1M .
-.It Va menu_options
-When set to a number
-.Dq Li x ,
-a single blank-line and an
-.Dq Li Options
-header are inserted between
-.Va menu_caption[x-1]
-and
-.Va menu_caption[x]
-(if configured).
-.It Va menu_reboot
-If set, adds a built-in
-.Dq Li Reboot
-menuitem to the end of the last configured menuitem.
-If
-.Va menu_options
-is configured, the
-.Dq Li Reboot
-menuitem will be inserted before the
-.Dq Options
-separator.
-.El
-.Pp
-In addition, it provides the following FICL words:
-.Pp
-.Bl -tag -width disable-module_module -compact -offset indent
-.It Ic arch-i386? ( -- BOOL )
-Returns true (-1) on i386 and false (0) otherwise.
-.It Ic acpipresent? ( -- BOOL )
-Returns true (-1) if ACPI is present and false (0) otherwise.
-.It Ic acpienabled? ( -- BOOL )
-Returns true (-1) if ACPI is enabled and false (0) otherwise.
-.It Ic toggle_menuitem ( N -- N )
-Toggles menuitem
-.Dq Li N
-between
-.Va menu_caption[x]
-and
-.Va toggled_text[x]
-(where
-.Dq Li N
-represents the ASCII decimal value for
-.Dq Li x ) .
-.It Ic cycle_menuitem ( N -- N )
-Cycles menuitem
-.Dq Li N
-between
-.Va menu_caption[x][y]
-entries (where
-.Va N
-represents the ASCII decimal value for
-.Va x ) .
-.El
-.Pp
-For all values of
-.Dq Li x
-above, use any number between 1 through 9.
-Sorry, double-digits are not currently supported.
-.Sh FILES
-.Bl -tag -width /boot/forth/loader.4th -compact
-.It Pa /boot/loader
-The
-.Xr loader 5 .
-.It Pa /boot/forth/menu.4th
-.Nm
-itself.
-.It Pa /boot/loader.rc
-.Xr loader 5
-bootstrapping script.
-.El
-.Sh EXAMPLES
-A simple boot menu:
-.Pp
-.Bd -literal -offset indent -compact
-include /boot/forth/menu.4th
-menu-init
-set menu_caption[1]="Boot"
-set menu_command[1]="boot"
-set menu_options=2
-set menu_caption[2]="Option: NO"
-set toggled_text[2]="Option: YES"
-set menu_command[2]="toggle_menuitem"
-set menu_timeout_command="boot"
-set menu_reboot
-menu-display
-.Ed
-.Sh SEE ALSO
-.Xr eeprom 1M ,
-.Xr loader.conf 4 ,
-.Xr beastie.4th 5 ,
-.Xr loader 5 ,
-.Xr loader.4th 5
diff --git a/usr/src/man/man5/menusets.4th.5 b/usr/src/man/man5/menusets.4th.5
deleted file mode 100644
index 14720a8d09..0000000000
--- a/usr/src/man/man5/menusets.4th.5
+++ /dev/null
@@ -1,359 +0,0 @@
-.\" Copyright (c) 2012 Devin Teske
-.\" All rights reserved.
-.\"
-.\" Redistribution and use in source and binary forms, with or without
-.\" modification, are permitted provided that the following conditions
-.\" are met:
-.\" 1. Redistributions of source code must retain the above copyright
-.\" notice, this list of conditions and the following disclaimer.
-.\" 2. Redistributions in binary form must reproduce the above copyright
-.\" notice, this list of conditions and the following disclaimer in the
-.\" documentation and/or other materials provided with the distribution.
-.\"
-.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
-.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
-.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
-.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
-.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-.\" SUCH DAMAGE.
-.\"
-.Dd July 20, 2018
-.Dt MENUSETS.4TH 5
-.Os
-.Sh NAME
-.Nm menusets.4th
-.Nd loader dynamic submenu boot module
-.Sh DESCRIPTION
-The file that goes by the name of
-.Nm
-is a set of commands designed to add submenu functionality to the dynamic menu
-system provided by
-.Xr menu.4th 5 .
-Submenus are managed through a system of carefully named environment variables.
-The commands of
-.Nm
-by themselves are not enough for most uses.
-Please refer to the examples below for the most common situations, and to
-.Xr menu.4th 5
-for additional commands.
-.Pp
-Before using any of the commands provided in
-.Nm ,
-it must be included
-through the command:
-.Pp
-.Dl include menusets.4th
-.Pp
-This line is present in the default
-.Pa /boot/forth/menu-commands.4th
-file, so it is not needed (and should not be re-issued) in a normal setup.
-.Pp
-The commands provided by it are:
-.Pp
-.Bl -tag -width menuset-loadinitial -compact -offset indent
-.It Ic menuset-loadsetnum
-Takes a single integer on the stack to identify the menuset environment
-variables to be activated (see environment variables below).
-.It Ic menuset-loadinitial
-If $menuset_initial is set, passes the value to menuset-loadsetnum.
-The value must be a number.
-.It Ic menusets-unset
-Unsets the environment variables associated with all menusets.
-Increments starting at 1 and stops at the first unconfigured menuset.
-A menuset is considered configured if the caption for item 1 is set.
-.El
-.Pp
-The environment variables that effect its behavior are:
-.Bl -tag -width bootfile -offset indent
-.It Va menuset_initial
-Number to pass to menuset-loadsetnum when menuset-loadinitial is called.
-.It Va menuset_nameN
-Used to give a name to a menuset.
-.El
-.Pp
-When a menuset is NOT given a name (the default),
-menuset N is comprised of the following environment variables:
-.Pp
-.Bl -tag -width menusetN_caption[x][y] -compact -offset indent
-.It Va ansisetN_caption[x]
--> ansi_caption[x]
-.It Va ansisetN_caption[x][y]
--> ansi_caption[x][y]
-.It Va menusetN_acpi
--> menu_acpi
-.It Va menusetN_caption[x]
--> menu_caption[x]
-.It Va menusetN_caption[x][y]
--> menu_caption[x][y]
-.It Va menusetN_command[x]
--> menu_command[x]
-.It Va menusetN_init
-->
-.Dq Li evaluated
-.It Va menusetN_init[x]
--> menu_init[x]
-.It Va menusetN_keycode[x]
--> menu_keycode[x]
-.It Va menusetN_options
--> menu_options
-.It Va menusetN_optionstext
--> menu_optionstext
-.It Va menusetN_reboot
--> menu_reboot
-.It Va toggledsetN_ansi[x]
--> toggled_ansi[x]
-.It Va toggledsetN_text[x]
--> toggled_text[x]
-.El
-.Pp
-When you choose to give a menuset a name (by setting $menuset_nameN),
-menuset N is instead comprised of the following environment variables:
-.Pp
-.Bl -tag -width NAMEmenu_caption[x][y] -compact -offset indent
-.It Va NAMEansi_caption[x]
--> ansi_caption[x]
-.It Va NAMEansi_caption[x][y]
--> ansi_caption[x][y]
-.It Va NAMEmenu_acpi
--> menu_acpi
-.It Va NAMEmenu_caption[x]
--> menu_caption[x]
-.It Va NAMEmenu_caption[x][y]
--> menu_caption[x][y]
-.It Va NAMEmenu_command[x]
--> menu_command[x]
-.It Va NAMEmenu_init
-->
-.Dq Li evaluated
-.It Va NAMEmenu_init[x]
--> menu_init[x]
-.It Va NAMEmenu_keycode[x]
--> menu_keycode[x]
-.It Va NAMEmenu_options
--> menu_options
-.It Va NAMEmenu_optionstext
--> menu_optionstext
-.It Va NAMEmenu_reboot
--> menu_reboot
-.It Va NAMEtoggled_ansi[x]
--> toggled_ansi[x]
-.It Va NAMEtoggled_text[x]
--> toggled_text[x]
-.El
-.Pp
-where
-.Dq Li NAME
-is the value of $menuset_nameN.
-In the case of $NAMEmenu_init ($menusetN_init when $menuset_nameN is unset),
-the value is evaluated as an FICL statement.
-This can be used to dynamically adjust the menuset variables right before the
-menu is activated.
-.Pp
-In addition,
-.Nm
-provides the following FICL words:
-.Pp
-.Bl -tag -width menuset -compact -offset indent
-.It Ic menuset-checksetnum ( N -- )
-Given a single integer on the stack, sets a global variable
-.Va menuset_use_name
-to a boolean based on whether $menuset_nameN is set (true) or not (false).
-Also sets $affix temporary variable (prefix or infix depending on
-menuset_use_name).
-Automatically called by menuset-loadsetnum and menusets-unset.
-.It Ic menuset-loadvar ( -- )
-Used indirectly to shorten syntax and mitigate dictionary size.
-Requires the following temporary environment variables:
-.Pp
-.Bl -tag -width affix -compact -offset indent
-.It Va type
-should be set to one of: menu toggled ansi
-.It Va var
-should be set to one of: caption command keycode text ...
-.It Va affix
-either a prefix (menuset_use_name is true) or infix (menuset_use_name is false)
-.El
-.Pp
-If the global
-.Va menuset_use_name
-is true, the variable ${type}_${var} is made to
-equal the value of the variable ${affix}${type}_${var}
-(note: in this case menuset-checksetnum has set $affix to $menuset_nameN).
-Otherwise (when
-.Va menuset_use_name
-is false), the variable ${type}_${var} is made to
-equal the value of the variable ${type}set${affix}_${var}
-(note: in this case menuset-checksetnum has set $affix to N).
-.Pp
-Both the global variable
-.Va menuset_use_name
-and the environment variable $affix are automatically handled by
-menuset-checksetnum above (which is automatically called by
-menuset-loadsetnum).
-.It Ic menuset-unloadvar ( -- )
-Used indirectly to shorten syntax and mitigate dictionary size.
-Like menuset-loadvar except it unsets the menuset variable.
-If global
-.Va menuset_use_name
-is true ($affix is $menuset_nameN),
-variable ${affix}${type}_${var} is unset.
-Otherwise, $affix is N and variable ${type}set${affix}_${var} is unset.
-.It Ic menuset-loadmenuvar ( -- )
-Sets $type to
-.Dq menu
-and calls menuset-loadvar.
-.It Ic menuset-unloadmenuvar ( -- )
-Sets $type to
-.Dq menu
-and calls menuset-unloadvar.
-.It Ic menuset-loadxvar ( -- )
-Like menuset-loadvar except it takes an additional temporary variable $x.
-If the global
-.Va menuset_use_name
-is true (making $affix equal $menuset_nameN),
-sets variable ${type}_${var}[${x}] to variable ${affix}${type}_${var}[${x}].
-Otherwise ($affix being N), sets the same variable to instead
-${type}set{affix}_${var}[${x}].
-.It Ic menuset-unloadxvar ( -- )
-Like menuset-loadxvar except it unsets the menuset variable.
-If global
-.Va menuset_use_name
-is true, unsets ${affix}${type}_${var}[${x}].
-Otherwise, unsets ${type}set${affix}_${var}[${x}].
-.It Ic menuset-loadansixvar ( -- )
-Sets $type to
-.Dq ansi
-and calls menuset-loadxvar
-.It Ic menuset-unloadansixvar ( -- )
-Sets $type to
-.Dq ansi
-and calls menuset-unloadxvar
-.It Ic menuset-loadmenuxvar ( -- )
-Sets $type to
-.Dq ansi
-and calls menuset-loadxvar
-.It Ic menuset-unloadmenuxvar ( -- )
-Sets $type to
-.Dq ansi
-and calls menuset-unloadxvar
-.It Ic menuset-loadtoggledxvar ( -- )
-Sets $type to
-.Dq toggled
-and calls menuset-loadxvar
-.It Ic menuset-unloadtoggledxvar ( -- )
-Sets $type to
-.Dq toggled
-and calls menuset-unloadxvar
-.It Ic menuset-loadxyvar ( -- )
-Like menuset-loadxvar except it takes an additional temporary variable $y.
-If the global
-.Va menuset_use_name
-is true ($affix is $menuset_nameN),
-sets variable ${type}_${var}[${x}][${y}] to ${affix}${type}_${var}[${x}][${y}].
-Otherwise ($affix is N) sets the same variable to instead
-${type}set${affix}_${var}[${x}][${y}].
-.It Ic menuset-unloadxyvar ( -- )
-Like menuset-loadxyvar except it unsets the menuset variable.
-If the global
-.Va menuset_use_name
-is true, unsets ${affix}${type}_${var}[${x}][${y}].
-Otherwise, unsets ${type}set${affix}_${var}[${x}][${y}].
-.It Ic menuset-loadansixyvar ( -- )
-Sets $type to
-.Dq ansi
-and calls menuset-loadxyvar.
-.It Ic menuset-unloadansixyvar ( -- )
-Sets $type to
-.Dq ansi
-and calls menuset-unloadxyvar.
-.It Ic menuset-loadmenuxyvar ( -- )
-Sets $type to
-.Dq menu
-and calls menuset-loadxyvar.
-.It Ic menuset-unloadmenuxyvar ( -- )
-Sets $type to
-.Dq menu
-and calls menuset-unloadxyvar.
-.It Ic menuset-setnum-namevar ( N -- C-Addr/U )
-Takes a single integer on the stack and replaces it with a string (in c-addr/u
-format) whose value is
-.Dq menuset_nameN .
-For example, if given 1 returns
-.Dq menuset_name1 .
-.It Ic menuset-cleanup ( N -- )
-Unsets all the various temporary variables, currently
-.Va type ,
-.Va var ,
-.Va x ,
-.Va y ,
-and
-.Va affix .
-.El
-.Pp
-For all values of
-.Dq Li x
-above, use any number between 1 through 9. Sorry, double-digits are not
-currently supported.
-For all values of
-.Dq Li N
-above, use any number between 1 and 65535.
-.Sh FILES
-.Bl -tag -width /boot/menu-commands.4th -compact
-.It Pa /boot/loader
-The
-.Xr loader 5 .
-.It Pa /boot/forth/menu.4th
-Dynamic menu module.
-.It Pa /boot/forth/menu-commands.4th
-Contains the goto_menu command.
-.It Pa /boot/forth/menusets.4th
-.Nm
-itself.
-.It Pa /boot/loader.rc
-.Xr loader 5
-bootstrapping script.
-.El
-.Sh EXAMPLES
-A simple boot menu with a submenu:
-.Pp
-.Bd -literal -offset indent -compact
-include /boot/forth/menu.4th
-include /boot/forth/menu-commands.4th
-menu-init
-set menuset1_caption[1]="Boot"
-set menuset1_command[1]="boot"
-set menuset1_caption[2]="Submenu..."
-set menuset1_command[2]="2 goto_menu"
-set menuset2_caption[1]="Back"
-set menuset2_command[1]="1 goto_menu"
-set menuset_initial=2
-menuset-loadinitial
-menu-display
-.Ed
-.Pp
-The same boot menu with named menusets:
-.Pp
-.Bd -literal -offset indent -compact
-include /boot/forth/menu.4th
-include /boot/forth/menu-commands.4th
-menu-init
-set menuset_name1=main
-set mainmenu_caption[1]="Boot"
-set mainmenu_command[1]="boot"
-set mainmenu_caption[2]="Submenu..."
-set mainmenu_command[2]="2 goto_menu"
-set menuset_name2=sub
-set submenu_caption[1]="Back"
-set submenu_command[1]="1 goto_menu"
-.Ed
-.Sh SEE ALSO
-.Xr loader.conf 4 ,
-.Xr beastie.4th 5 ,
-.Xr loader 5 ,
-.Xr loader.4th 5 ,
-.Xr menu.4th 5
diff --git a/usr/src/man/man5/mm.5 b/usr/src/man/man5/mm.5
deleted file mode 100644
index 10208d127b..0000000000
--- a/usr/src/man/man5/mm.5
+++ /dev/null
@@ -1,441 +0,0 @@
-'\" te
-.\" Copyright (c) 1997, Sun Microsystems, Inc.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH MM 5 "Jan 1, 1997"
-.SH NAME
-mm \- text formatting (memorandum) macros
-.SH SYNOPSIS
-.LP
-.nf
-\fBnroff\fR \fB-mm\fR [\fIoptions\fR] \fIfilename\fR...
-.fi
-
-.LP
-.nf
-\fBtroff\fR \fB-mm\fR [\fIoptions\fR] \fIfilename\fR...
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-This package of \fBnroff\fR(1) and \fBtroff\fR(1) macro definitions provides a
-formatting facility for various styles of articles, theses, and books. When
-producing 2-column output on a terminal or lineprinter, or when reverse line
-motions are needed, filter the output through \fBcol\fR(1). All external
-\fB-mm\fR macros are defined below.
-.sp
-.LP
-Note: this \fB-mm\fR macro package is an extended version written at Berkeley
-and is a superset of the standard \fB-mm\fR macro packages as supplied by Bell
-Labs. Some of the Bell Labs macros have been removed; for instance, it is
-assumed that the user has little interest in producing headers stating that the
-memo was generated at Whippany Labs.
-.sp
-.LP
-Many \fBnroff\fR and \fBtroff\fR requests are unsafe in conjunction with this
-package. However, the first four requests below may be used with impunity after
-initialization, and the last two may be used even before initialization:
-.sp
-.ne 2
-.na
-\fB\fB\&.bp\fR\fR
-.ad
-.RS 11n
-begin new page
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\&.br\fR \fR
-.ad
-.RS 11n
-break output line
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\&.sp\fR\fIn\fR \fR
-.ad
-.RS 11n
-insert n spacing lines
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\&.ce\fR\fIn\fR \fR
-.ad
-.RS 11n
-center next n lines
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\&.ls\fR\fIn\fR \fR
-.ad
-.RS 11n
-line spacing: \fIn\fR\fB=1\fR single, \fIn\fR\fB=2\fR double space
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\&.na\fR \fR
-.ad
-.RS 11n
-no alignment of right margin
-.RE
-
-.sp
-.LP
-Font and point size changes with \fB\ef\fR and \fB\es\fR are also allowed; for
-example, \fB\efIword\efR\fR will italicize \fIword\fR. Output of the
-\fBtbl\fR(1), \fBeqn\fR(1) and \fBrefer\fR(1) preprocessors for equations,
-tables, and references is acceptable as input.
-.SH REQUESTS
-.sp
-.LP
-Here is a table of macros.
-.sp
-
-.sp
-.TS
-c | c | c | c
-l | l | l | l .
-Macro Name Initial Value Break? Reset? Explanation
-_
-\fB\&.1C\fR on y,y one column format on a new page
-_
-\fB\&.2C\fR [ \fIl\fR ] - y,y two column format \fIl\fR=line length
-_
-\fB\&.AE\fR - y end abstract
-_
-\fB\&.AL\fR [ \fIt\fR ] [ \fIi\fR ] [ \fIs\fR ] \fIt\fR=\fB1\fR;\fIi\fR=\fB\&.Li\fR;\fIs\fR=\fB0\fR y T{
-Start automatic list type \fIt\fR=[\fB1\fR,\fBA\fR,\fBa\fR,\fBI\fR,\fBi\fR] \fB1\fR=arabic numbers; \fBA\fR=uppercase letters \fBa\fR=lowercase letters; \fBI\fR=uppercase Roman numerals; \fBi\fR=lowercase Roman numerals indentation \fIi\fR; separation \fIs\fR
-T}
-_
-\fB\&.AS\fR \fIm\fR [ \fIn\fR ] \fIn\fR=\fB0\fR y begin abstract
-_
-\fB\&.AU\fR - y author's name
-_
-\fB\&.AV\fR \fIx\fR - y signature and date line of verifier \fIx\fR
-_
-\fB\&.B\fR \fIx\fR - n embolden \fIx\fR; if no \fIx\fR, switch to boldface
-_
-\fB\&.BE\fR - y end block text
-_
-\fB\&.BI\fR \fIx\fR \fIy\fR - n embolden \fIx\fR and underline \fIy\fR
-_
-\fB\&.BL\fR - y bullet list
-_
-\fB\&.BR\fR \fIx\fR \fIy\fR - n embolden \fIx\fR and use Roman font for \fIy\fR
-_
-\fB\&.BS\fR - n start block text
-_
-\fB\&.CN\fR - y same as \fB\&.DE\fR (\fBnroff\fR)
-_
-\fB\&.CS\fR - y cover sheet
-_
-\fB\&.CW\fR - n same as \fB\&.DS I\fR (\fBnroff\fR)
-_
-\fB\&.DE\fR - y end display
-_
-\fB\&.DF\fR [ \fIp\fR ] [ \fIf\fR ] [ \fIrp\fR ] \fIp\fR=\fBL\fR;\fIf\fR=\fBN\fR y T{
-start floating display; position \fIp\fR=[\fBL\fR,\fBC\fR,\fBCB\fR] \fBL\fR=left; \fBI\fR=indent; \fBC\fR=center; \fBCB\fR=center block fill \fIf\fR=[\fBN\fR,\fBY\fR]; right position \fIrp\fR (fill only)
-T}
-_
-\fB\&.DL\fR [ \fIi\fR ] [ \fIs\fR ] - y start dash list
-_
-\fB\&.DS\fR [ \fIp\fR ] [ \fIf\fR ] [ \fIrp\fR ] \fIp\fR=\fBL\fR;\fIf\fR=\fBN\fR y T{
-begin static display (see \fB\&.DF\fR for argument descriptions)
-T}
-_
-\fB\&.EC\fR \fIx\fR [ \fIn\fR ] \fIn\fR=\fB1\fR y equation title; equation \fIx\fR; number \fIn\fR
-_
-\fB\&.EF\fR \fIx\fR - n T{
-even footer appears at the bottom of even-numbered pages; \fIx\fR="\fIl\fR\fB\&'\fR\fIc\fR\fB\&'\fR\fIr\fR" \fIl\fR=left; \fIc\fR=center; \fIr\fR=right
-T}
-_
-\fB\&.EH\fR \fIx\fR - n T{
-even header appears at the top of even-numbered pages; \fIx\fR="\fIl\fR\fB\&'\fR\fIc\fR\fB\&'\fR\fIr\fR" \fIl\fR=left; \fIc\fR=center; \fIr\fR=right
-T}
-_
-\fB\&.EN\fR - y end displayed equation produced by \fBeqn\fR
-_
-\fB\&.EQ\fR - y break out equation produced by \fBeqn\fR
-_
-\fB\&.EX\fR \fIx\fR [ \fIn\fR ] \fIn\fR=\fB1\fR y exhibit title; exhibit \fIx\fR
-_
- number \fIn\fR
-_
-\fB\&.FD\fR [ \fIf\fR ] [ \fIr\fR ] \fIf\fR=\fB10\fR;\fIr\fR=\fB1\fR n T{
-set footnote style format \fIf\fR=[\fB0-11\fR]; renumber \fIr\fR=[\fB0\fR,\fB1\fR]
-T}
-_
-\fB\&.FE\fR - y end footnote
-_
-\fB\&.FG\fR \fIx\fR [ \fIn\fR ] \fIn\fR=\fB1\fR y figure title; figure \fIx\fR; number \fIn\fR
-_
-\fB\&.FS\fR - n start footnote
-_
-\fB\&.H\fR \fIl\fR [ \fIt\fR ] - y T{
-produce numbered heading level \fIl\fR=[\fB1-7\fR]; title \fIt\fR
-T}
-_
-\fB\&.HU\fR \fIt\fR - y produce unnumbered heading; title \fIt\fR
-_
-\fB\&.I\fR \fIx\fR - n underline \fIx\fR
-_
-\fB\&.IB\fR \fIx\fR \fIy\fR - n underline \fIx\fR and embolden \fIy\fR
-_
-\fB\&.IR\fR \fIx\fR \fIy\fR - n underline \fIx\fR and use Roman font on \fIy\fR
-_
-\fB\&.LE\fR [ \fIs\fR ] \fIs\fR=\fB0\fR y end list; separation \fIs\fR
-_
-\fB\&.LI\fR [ \fIm\fR ] [ \fIp\fR ] - y start new list item; mark \fIm\fR
-_
- prefix \fIp\fR (mark only)
-_
-\fB\&.ML\fR \fIm\fR [ \fIi\fR ] [ \fIs\fR ] \fIs\fR=\fB0\fR y T{
-start marked list; mark \fIm\fR indentation \fIi\fR; separation \fIs\fR=[\fB0\fR,\fB1\fR]
-T}
-_
-\fB\&.MT\fR \fIx\fR y memo title; title \fIx\fR
-_
-\fB\&.ND\fR \fIx\fR n T{
-no date in page footer; \fIx\fR is date on cover
-T}
-_
-\fB\&.NE\fR - y end block text
-_
-\fB\&.NS\fR - y start block text
-_
-\fB\&.OF\fR \fIx\fR - n T{
-odd footer appears at the bottom of odd-numbered pages; \fIx\fR="\fIl\fR\fB\&'\fR\fIc\fR\fB\&'\fR\fIr\fR" \fIl\fR=left; \fIc\fR=center; \fIr\fR=right
-T}
-_
-\fB\&.OF\fR \fIx\fR - n T{
-odd header appears at the top of odd-numbered pages; \fIx\fR="\fIl\fR\fB\&'\fR\fIc\fR\fB\&'\fR\fIr\fR" \fIl\fR=left; \fIc\fR=center; \fIr\fR=right
-T}
-_
-\fB\&.OP\fR - y skip to the top of an odd-number page
-_
-\fB\&.P\fR [ \fIt\fR ] \fIt\fR=\fB0\fR y,y T{
-begin paragraph; \fIt\fR=[\fB0\fR,\fB1\fR] \fB0\fR=justified; \fB1\fR=indented
-T}
-_
-\fB\&.PF\fR \fIx\fR - n T{
-page footer appears at the bottom of every page; \fIx\fR="\fIl\fR\fB\&'\fR\fIc\fR\fB\&'\fR\fIr\fR" \fIl\fR=left; \fIc\fR=center; \fIr\fR=right
-T}
-_
-\fB\&.PH\fR \fIx\fR - n T{
-page header appears at the top of every page; \fIx\fR="\fIl\fR\fB\&'\fR\fIc\fR\fB\&'\fR\fIr\fR" \fIl\fR=left; \fIc\fR=center; \fIr\fR=right
-T}
-_
-\fB\&.R\fR on n return to Roman font
-_
-\fB\&.RB\fR \fIx\fR \fIy\fR - n use Roman on \fIx\fR and embolden \fIy\fR
-_
-\fB\&.RI\fR \fIx\fR \fIy\fR - n use Roman on \fIx\fR and underline \fIy\fR
-_
-\fB\&.RP\fR \fIx\fR - y,y T{
-released paper format ? \fIx\fR=no stops title on first
-T}
-_
-\fB\&.RS\fR 5n y,y T{
-right shift: start level of relative indentation
-T}
-_
-\fB\&.S\fR \fIm\fR \fIn\fR - n T{
-set character point size & vertical space character point size \fIm\fR; vertical space \fIn\fR
-T}
-_
-\fB\&.SA\fR \fIx\fR \fIx\fR=\fB1\fR n justification; \fIx\fR=[\fB0\fR,\fB1\fR]
-_
-\fB\&.SK\fR \fIx\fR - y skip \fIx\fR pages
-_
-\fB\&.SM\fR - n smaller; decrease point size by 2
-_
-\fB\&.SP\fR [ \fIx\fR ] - y leave \fIx\fR blank lines
-_
-\fB\&.TB\fR \fIx\fR [ \fIn\fR ] \fIn\fR=\fB1\fR y table title; table \fIx\fR; number \fIn\fR
-_
-\fB\&.TC\fR - y T{
-print table of contents (put at end of input file)
-T}
-_
-_
-\fB\&.TH\fR - Y "multi-page end, header"
-_
-\fB\&.TL\fR - n title in boldface and two points larger
-_
-\fB\&.TM\fR - n UC Berkeley thesis mode
-_
-\fB\&.TP\fR \fIi\fR y y T{
-\fIi\fR=p.i. Begin indented paragraph, with the tag given on the next text line. Set prevailing indent to \fIi\fR.
-T}
-_
-\fB\&.TE\fR - y end of table processed by tbl
-\fB\&.TS\fR \fIx\fR - y,y T{
-begin table; if \fIx\fR=\fBH\fR table has multi-page header
-T}
-_
-\fB\&.TY\fR - y display centered title \fBCONTENTS\fR
-_
-\fB\&.VL\fR \fIi\fR [ \fIm\fR ] [ \fIs\fR ] \fIm\fR=\fB0\fR;\fIs\fR=\fB0\fR y T{
-start variable-item list; indentation \fIi\fR mark-indentation \fIm\fR; separation \fIs\fR
-T}
-.TE
-
-.SH REGISTERS
-.sp
-.LP
-Formatting distances can be controlled in \fB-mm\fR by means of built-in number
-registers. For example, this sets the line length to 6.5 inches:
-.sp
-.in +2
-.nf
-\&.nr LL 6.5i
-.fi
-.in -2
-
-.sp
-.LP
-Here is a table of number registers and their default values:
-.sp
-
-.sp
-.TS
-c | c | c | c
-l | l | l | l .
-Name Register Controls Takes Effect Default
-_
-\fBCl\fR contents level table of contents 2
-_
-\fBDe\fR display eject display 0
-_
-\fBDf\fR display floating display 5
-_
-\fBDs\fR display spacing display 1v
-_
-\fBHb\fR heading break heading 2
-_
-\fBHc\fR heading centering heading 0
-_
-\fBHi\fR heading indent heading 1
-_
-\fBHi\fR heading spacing heading 1
-_
-\fBHu\fR heading unnumbered heading 2
-_
-\fBLi\fR list indentation list \fB6 (\fR\fBnroff\fR\fB) 5 (\fR\fBtroff\fR\fB)\fR
-_
-\fBLs\fR list spacing list 6
-_
-\fBPi\fR paragraph indent paragraph 5
-_
-\fBPt\fR paragraph type paragraph 1
-_
-\fBSi\fR static indent display \fB5 (\fR\fBnroff\fR\fB) 3 (\fR\fBtroff\fR\fB)\fR
-.TE
-
-.sp
-.LP
-When resetting these values, make sure to specify the appropriate units.
-Setting the line length to 7, for example, will result in output with one
-character per line. Setting \fBPi\fR to 0 suppresses paragraph indentation
-.sp
-.LP
-Here is a list of string registers available in \fB-mm\fR; they may be used
-anywhere in the text:
-.sp
-
-.sp
-.TS
-c | c
-l | l .
-Name String's Function
-_
-\fB\e*Q\fR quote (\fB"\fR in \fBnroff,\fR\| \fB``\fR in \fBtroff\fR )
-_
-\fB\e*U\fR unquote (\fB"\fR in \fBnroff,\fR\| \fB\&''\fR in \fBtroff\fR )
-_
-\fB\e*-\fR dash (\fB--\fR in \fBnroff,\fR \(em in \fBtroff\fR )
-_
-\fB\e*(MO\fR month (month of the year)
-_
-\fB\e*(DY\fR day (current date)
-_
-\fB\e**\fR automatically numbered footnote
-_
-\fB\e*'\fR acute accent (before letter)
-_
-\fB\e*`\fR grave accent (before letter)
-_
-\fB\e*^\fR circumflex (before letter)
-_
-\fB\e*,\fR cedilla (before letter)
-_
-\fB\e*:\fR umlaut (before letter)
-_
-\fB\e*~\fR tilde (before letter)
-_
-\fB\e(BU\fR bullet item
-_
-\fB\e(DT\fR date (\fImonth day\fR, \fIyr\fR)
-_
-\fB\e(EM\fR em dash
-_
-\fB\e(Lf\fR \fBLIST OF FIGURES\fR title
-_
-\fB\e(Lt\fR \fBLIST OF TABLES\fR title
-_
-\fB\e(Lx\fR \fBLIST OF EXHIBITS\fR title
-_
-\fB\e(Le\fR \fBLIST OF EQUATIONS\fR title
-_
-\fB\e(Rp\fR \fBREFERENCES\fR title
-_
-\fB\e(Tm\fR trademark character (TM)
-.TE
-
-.sp
-.LP
-When using the extended accent mark definitions available with \fB\&.AM\fR,
-these strings should come after, rather than before, the letter to be accented.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/usr/share/lib/tmac/m\fR\fR
-.ad
-.sp .6
-.RS 4n
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/share/lib/tmac/mm.[nt]\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBnroff\fR and \fBtroff\fR definitions of \fBmm\fR.
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBcol\fR(1), \fBeqn\fR(1), \fBnroff\fR(1), \fBrefer\fR(1), \fBtbl\fR(1),
-\fBtroff\fR(1), \fBattributes\fR(5)
-.SH BUGS
-.sp
-.LP
-Floating keeps and regular keeps are diverted to the same space, so they cannot
-be mixed together with predictable results.
diff --git a/usr/src/man/man5/mnttab.5 b/usr/src/man/man5/mnttab.5
new file mode 100644
index 0000000000..e2a2ceb7d5
--- /dev/null
+++ b/usr/src/man/man5/mnttab.5
@@ -0,0 +1,248 @@
+'\" te
+.\" Copyright (c) 2003 Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 2015 Nexenta Systems, Inc. All rights reserved.
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH MNTTAB 5 "Sep 8, 2015"
+.SH NAME
+mnttab \- mounted file system table
+.SH DESCRIPTION
+.LP
+The file \fB/etc/mnttab\fR is really a file system that provides read-only
+access to the table of mounted file systems for the current host.
+\fB/etc/mnttab\fR is read by programs using the routines described in
+\fBgetmntent\fR(3C). Mounting a file system adds an entry to this table.
+Unmounting removes an entry from this table. Remounting a file system causes
+the information in the mounted file system table to be updated to reflect any
+changes caused by the remount. The list is maintained by the kernel in order of
+mount time. That is, the first mounted file system is first in the list and the
+most recently mounted file system is last. When mounted on a mount point the
+file system appears as a regular file containing the current \fBmnttab\fR
+information.
+.LP
+Each entry is a line of fields separated by TABs in the form:
+.sp
+.in +2
+.nf
+\fIspecial mount_point fstype options time\fR
+.fi
+.in -2
+
+.LP
+where:
+.sp
+.ne 2
+.na
+\fB\fIspecial\fR\fR
+.ad
+.RS 15n
+The name of the resource that has been mounted.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fImount_point\fR\fR
+.ad
+.RS 15n
+The pathname of the directory on which the filesystem is mounted.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIfstype\fR\fR
+.ad
+.RS 15n
+The file system type of the mounted file system.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIoptions\fR\fR
+.ad
+.RS 15n
+The mount options. See respective mount file system man page in the See Also
+section below.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fItime\fR\fR
+.ad
+.RS 15n
+The time at which the file system was mounted.
+.RE
+
+.LP
+Examples of entries for the \fIspecial\fR field include the pathname of a
+block-special device, the name of a remote file system in the form of
+\fIhost:pathname\fR, or the name of a \fBswap file\fR, for example, a file made
+with \fBmkfile\fR(8).
+.SH IOCTLS
+.LP
+The following \fBioctl\fR(2) calls are supported:
+.sp
+.ne 2
+.na
+\fB\fBMNTIOC_NMNTS\fR\fR
+.ad
+.RS 21n
+Returns the count of mounted resources in the current snapshot in the
+\fBuint32_t\fR pointed to by \fIarg\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBMNTIOC_GETDEVLIST\fR\fR
+.ad
+.RS 21n
+Returns an array of \fBuint32_t\fR's that is twice as long as the length
+returned by \fBMNTIOC_NMNTS\fR. Each pair of numbers is the major and minor
+device number for the file system at the corresponding line in the current
+\fB/etc/mnttab\fR snapshot. \fIarg\fR points to the memory buffer to receive
+the device number information.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBMNTIOC_SETTAG\fR\fR
+.ad
+.RS 21n
+Sets a tag word into the options list for a mounted file system. A tag is a
+notation that will appear in the options string of a mounted file system but it
+is not recognized or interpreted by the file system code. \fIarg\fR points to a
+filled in \fBmnttagdesc\fR structure, as shown in the following example:
+.sp
+.in +2
+.nf
+uint_t mtd_major; /* major number for mounted fs */
+uint_t mtd_minor; /* minor number for mounted fs */
+char *mtd_mntpt; /* mount point of file system */
+char *mtd_tag; /* tag to set/clear */
+.fi
+.in -2
+
+If the tag already exists then it is marked as set but not re-added. Tags can
+be at most \fBMAX_MNTOPT_TAG\fR long.
+.sp
+Use of this ioctl is restricted to processes with the \fB{PRIV_SYS_MOUNT}\fR
+privilege.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBMNTIOC_CLRTAG\fR\fR
+.ad
+.RS 21n
+Marks a tag in the options list for a mounted file system as not set. \fIarg\fR
+points to the same structure as \fBMNTIOC_SETTAG\fR, which identifies the file
+system and tag to be cleared.
+.sp
+Use of this ioctl is restricted to processes with the \fB{PRIV_SYS_MOUNT}\fR
+privilege.
+.RE
+
+.SH ERRORS
+.ne 2
+.na
+\fB\fBEFAULT\fR\fR
+.ad
+.RS 16n
+The arg pointer in an \fBMNTIOC_ ioctl\fR call pointed to an inaccessible
+memory location or a character pointer in a \fBmnttagdesc\fR structure pointed
+to an inaccessible memory location.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEINVAL\fR\fR
+.ad
+.RS 16n
+The tag specified in a \fBMNTIOC_SETTAG\fR call already exists as a file system
+option, or the tag specified in a \fBMNTIOC_CLRTAG\fR call does not exist.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBENAMETOOLONG\fR\fR
+.ad
+.RS 16n
+The tag specified in a \fBMNTIOC_SETTAG\fR call is too long or the tag would
+make the total length of the option string for the mounted file system too
+long.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEPERM\fR\fR
+.ad
+.RS 16n
+The calling process does not have \fB{PRIV_SYS_MOUNT}\fR privilege and either a
+\fBMNTIOC_SETTAG\fR or \fBMNTIOC_CLRTAG\fR call was made.
+.RE
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/etc/mnttab\fR\fR
+.ad
+.RS 28n
+Usual mount point for \fBmnttab\fR file system
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/include/sys/mntio.h\fR\fR
+.ad
+.RS 28n
+Header file that contains \fBIOCTL\fR definitions
+.RE
+
+.SH SEE ALSO
+.LP
+.BR ioctl (2),
+.BR poll (2),
+.BR read (2),
+.BR stat (2),
+.BR getmntent (3C),
+.BR mkfile (8),
+.BR mount (8),
+.BR mount_hsfs (8),
+.BR mount_nfs (8),
+.BR mount_pcfs (8),
+.BR mount_ufs (8)
+.SH WARNINGS
+.LP
+The \fBmnttab\fR file system provides the previously undocumented
+\fBdev=\fR\fIxxx\fR option in the option string for each mounted file system.
+This is provided for legacy applications that might have been using the
+\fBdev=information\fR option.
+.LP
+Using \fBdev=\fR\fIoption\fR in applications is strongly discouraged. The
+device number string represents a 32-bit quantity and might not contain correct
+information in 64-bit environments.
+.LP
+Applications requiring device number information for mounted file systems
+should use the \fBgetextmntent\fR(3C) interface, which functions properly in
+either 32- or 64-bit environments.
+.SH NOTES
+.LP
+The snapshot of the \fBmnttab\fR information is taken any time a \fBread\fR(2)
+is performed at offset \fB0\fR (the beginning) of the \fBmnttab\fR file. The
+file modification time returned by \fBstat\fR(2) for the \fBmnttab\fR file is
+the time of the last change to mounted file system information. A \fBpoll\fR(2)
+system call requesting a \fBPOLLRDBAND\fR event can be used to block and wait
+for the system's mounted file system information to be different from the most
+recent snapshot since the \fBmnttab\fR file was opened.
diff --git a/usr/src/man/man5/mpapi.conf.5 b/usr/src/man/man5/mpapi.conf.5
new file mode 100644
index 0000000000..12c267a500
--- /dev/null
+++ b/usr/src/man/man5/mpapi.conf.5
@@ -0,0 +1,100 @@
+'\" te
+.\" Copyright (c) 2004-2006 Storage Networking Industry Association. All Rights Reserved.
+.\" Portions Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
+.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH MPAPI.CONF 5 "Sep 16, 2018"
+.SH NAME
+mpapi.conf \- configuration file for libMPAPI
+.SH SYNOPSIS
+.LP
+.nf
+/etc/mpapi.conf
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fB/etc/mpapi.conf\fR file is used to specify the vendor-provided plugin
+library that is installed on the system. This file is used by the
+\fBlibMPAPI\fR(3LIB) common library to load the individual plugin library when
+its interface is called. If changes are made to the file while the library is
+in use, the library should be unloaded and reloaded. Addition and removal of
+the plugin library should be handled through \fBMP_RegisterPlugin\fR(3MPAPI)
+and \fBMP_DeregisterPlugin\fR(3MPAPI).
+.sp
+.LP
+Each plugin library entry is a single line of the form:
+.sp
+.in +2
+.nf
+"id" "library file name"
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+where
+.sp
+.ne 2
+.na
+\fB\fBid\fR\fR
+.ad
+.RS 21n
+The identification of the library. It is the reversed domain name of the vendor
+followed by \fB\&.\fR followed by the vendor specific name of the plugin that
+uniquely identifies the plugin library.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBlibrary file name\fR\fR
+.ad
+.RS 21n
+The absolute path to the shared object library file.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRExample of an \fB/etc/mpapi.conf\fR file
+.sp
+.in +2
+.nf
+# This file contains names and references to MP API plugin libraries
+#
+# Do NOT manually edit this file
+#
+# Format:
+#
+# <library ID> <library file name>
+#
+com.sun.mpapi32 /lib/libmpscsi_vhci.so
+com.sun.mpapi64 /lib/64/libmpscsi_vhci.so
+.fi
+.in -2
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability T{
+Standard: ANSI INCITS 412 Multipath Management API
+T}
+.TE
+
+.SH SEE ALSO
+.LP
+.BR libMPAPI (3LIB),
+.BR MP_DeregisterPlugin (3MPAPI),
+.BR MP_RegisterPlugin (3MPAPI),
+.BR attributes (7)
diff --git a/usr/src/man/man5/ms.5 b/usr/src/man/man5/ms.5
deleted file mode 100644
index 8a2c6716d6..0000000000
--- a/usr/src/man/man5/ms.5
+++ /dev/null
@@ -1,432 +0,0 @@
-'\" te
-.\" Copyright (c) 1992, Sun Microsystems, Inc.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH MS 5 "Feb 25, 1992"
-.SH NAME
-ms \- text formatting macros
-.SH SYNOPSIS
-.LP
-.nf
-\fBnroff\fR \fB-ms\fR [\fIoptions\fR] \fIfilename\fR...
-.fi
-
-.LP
-.nf
-\fBtroff\fR \fB-ms\fR [\fIoptions\fR] \fIfilename\fR...
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-This package of \fBnroff\fR(1) and \fBtroff\fR(1) macro definitions provides a
-formatting facility for various styles of articles, theses, and books. When
-producing 2-column output on a terminal or lineprinter, or when reverse line
-motions are needed, filter the output through \fBcol\fR(1). All external
-\fB-ms\fR macros are defined below.
-.sp
-.LP
-Note: this \fB-ms\fR macro package is an extended version written at Berkeley
-and is a superset of the standard \fB-ms\fR macro packages as supplied by Bell
-Labs. Some of the Bell Labs macros have been removed; for instance, it is
-assumed that the user has little interest in producing headers stating that the
-memo was generated at Whippany Labs.
-.sp
-.LP
-Many \fBnroff\fR and \fBtroff\fR requests are unsafe in conjunction with this
-package. However, the first four requests below may be used with impunity after
-initialization, and the last two may be used even before initialization:
-.sp
-.ne 2
-.na
-\fB\fB\&.bp\fR\fR
-.ad
-.RS 11n
-begin new page
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\&.br\fR\fR
-.ad
-.RS 11n
-break output line
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\&.sp\fR\fI n\fR\fR
-.ad
-.RS 11n
-insert n spacing lines
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\&.ce\fR\fI n\fR\fR
-.ad
-.RS 11n
-center next n lines
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\&.ls\fR\fI n\fR\fR
-.ad
-.RS 11n
-line spacing: \fIn\fR\fB=1\fR single, \fIn\fR\fB=2\fR double space
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\&.na\fR\fR
-.ad
-.RS 11n
-no alignment of right margin
-.RE
-
-.sp
-.LP
-Font and point size changes with \fB\ef\fR and \fB\es\fR are also allowed; for
-example, \fB\efIword\efR\fR will italicize \fIword\fR. Output of the
-\fBtbl\fR(1), \fBeqn\fR(1) and \fBrefer\fR(1) preprocessors for equations,
-tables, and references is acceptable as input.
-.SH REQUESTS
-.sp
-
-.sp
-.TS
-c | c | c | c
-l | l | l | l .
-Macro Name Initial Value Break? Reset? Explanation
-_
-\fB\&.AB\fR \fIx\fR - y T{
-begin abstract; if \fIx\fR=no do not label abstract
-T}
-_
-\fB\&.AE\fR - y end abstract
-_
-\fB\&.AI\fR - y author's institution
-_
-\fB\&.AM\fR - n better accent mark definitions
-_
-\fB\&.AU\fR - y author's name
-_
-\fB\&.B\fR \fIx\fR - n embolden \fIx\fR; if no \fIx\fR, switch to boldface
-_
-\fB\&.B1\fR - y begin text to be enclosed in a box
-_
-\fB\&.B2\fR - y end boxed text and print it
-_
-\fB\&.BT\fR date n bottom title, printed at foot of page
-_
-\fB\&.BX\fR \fIx\fR - n print word \fIx\fR in a box
-_
-\fB\&.CM\fR if t n cut mark between pages
-_
-\fB\&.CT\fR - y,y T{
-chapter title: page number moved to CF (TM only)
-T}
-_
-\fB\&.DA\fR \fIx\fR if n n T{
-force date \fIx\fR at bottom of page; today if no \fIx\fR
-T}
-_
-\fB\&.DE\fR - y end display (unfilled text) of any kind
-_
-\fB\&.DS\fR \fIx y\fR I y T{
-begin display with keep; \fIx\fR=I,\|L,\|C,\|B; \fIy\fR=indent
-T}
-_
-\fB\&.ID\fR\fI y\fR 8n,.5i y indented display with no keep; \fIy\fR=indent
-_
-\fB\&.LD\fR - y left display with no keep
-_
-\fB\&.CD\fR - y centered display with no keep
-_
-\fB\&.BD\fR - y block display; center entire block
-_
-\fB\&.EF\fR \fIx\fR - n even page footer \fIx\fR (3 part as for \fB\&.tl\fR)
-_
-\fB\&.EH\fR \fIx\fR - n even page header \fIx\fR (3 part as for \fB\&.tl\fR)
-_
-\fB\&.EN\fR - y end displayed equation produced by \fBeqn\fR
-_
-\fB\&.EQ\fR \fIx y\fR - y T{
-break out equation; \fIx\fR=L,I,C; \fIy\fR=equation number
-T}
-_
-\fB\&.FE\fR - n T{
-end footnote to be placed at bottom of page
-T}
-_
-\fB\&.FP\fR - n T{
-numbered footnote paragraph; may be redefined
-T}
-_
-\fB\&.FS\fR \fIx\fR - n T{
-start footnote; \fIx\fR is optional footnote label
-T}
-_
-\fB\&.HD\fR undef n optional page header below header margin
-_
-\fB\&.I\fR \fIx\fR - n italicize \fIx\fR; if no \fIx\fR, switch to italics
-_
-\fB\&.IP\fR \fIx y\fR - y,y T{
-indented paragraph, with hanging tag \fIx\fR; \fIy\fR=indent
-T}
-_
-\fB\&.IX\fR \fIx y\fR - y T{
-index words \fIx\fR \fIy\fR and so on (up to 5 levels)
-T}
-_
-\fB\&.KE\fR - n end keep of any kind
-_
-\fB\&.KF\fR - n T{
-begin floating keep; text fills remainder of page
-T}
-_
-\fB\&.KS\fR - y T{
-begin keep; unit kept together on a single page
-T}
-_
-\fB\&.LG\fR - n larger; increase point size by 2
-_
-\fB\&.LP\fR - y,y left (block) paragraph.
-_
-\fB\&.MC\fR \fIx\fR - y,y multiple columns; \fIx\fR=column width
-_
-\fB\&.ND\fR \fIx\fR if t n T{
-no date in page footer; \fIx\fR is date on cover
-T}
-_
-\fB\&.NH\fR \fIx y\fR - y,y T{
-numbered header; \fIx\fR=level, \fIx\fR=0 resets, \fIx\fR=S sets to \fIy\fR
-T}
-_
-\fB\&.NL\fR 10p n set point size back to normal
-_
-\fB\&.OF\fR \fIx\fR - n odd page footer \fIx\fR (3 part as for \fB\&.tl\fR)
-_
-\fB\&.OH\fR \fIx\fR - n odd page header \fIx\fR (3 part as for \fB\&.tl\fR)
-_
-\fB\&.P1\fR if TM n print header on first page
-_
-\fB\&.PP\fR - y,y paragraph with first line indented
-_
-\fB\&.PT\fR - % - n page title, printed at head of page
-_
-\fB\&.PX\fR \fIx\fR - y T{
-print index (table of contents); \fIx\fR=no suppresses title
-T}
-_
-\fB\&.QP\fR - y,y quote paragraph (indented and shorter)
-_
-\fB\&.R\fR on n return to Roman font
-_
-\fB\&.RE\fR 5n y,y T{
-retreat: end level of relative indentation
-T}
-_
-\fB\&.RP\fR \fIx\fR - n T{
-released paper format; \fIx\fR=no stops title on first page
-T}
-_
-\fB\&.RS\fR 5n y,y T{
-right shift: start level of relative indentation
-T}
-_
-\fB\&.SH\fR - y,y section header, in boldface
-_
-\fB\&.SM\fR - n smaller; decrease point size by 2
-_
-\fB\&.TA\fR 8n,5n n T{
-set TAB characters to 8n 16n .\|.\|. (\fBnroff\fR) or 5n 10n .\|.\|. (\fBtroff\fR)
-T}
-_
-\fB\&.TC\fR \fIx\fR - y T{
-print table of contents at end; \fIx\fR=no suppresses title
-T}
-_
-_
-\fB\&.TH\fR - Y "multi-page end, header"
-_
-\fB\&.TL\fR - y title in boldface and two points larger
-_
-\fB\&.TM\fR off n UC Berkeley thesis mode
-_
-\fB\&.TE\fR - y end of table processed by \fBtbl\fR
-\fB\&.TS\fR \fIx\fR - y,y T{
-begin table; if \fIx\fR=H table has multi-page header
-T}
-_
-\fB\&.UL\fR \fIx\fR - n underline \fIx\fR, even in \fBtroff\fR
-_
-\fB\&.UX\fR \fIx\fR - n T{
-UNIX; trademark message first time; \fIx\fR appended
-T}
-_
-\fB\&.XA\fR \fIx y\fR - y T{
-another index entry; \fIx\fR=page or no for none; y=indent
-T}
-_
-\fB\&.XE\fR - y T{
-end index entry (or series of \fB\&.IX\fR entries)
-T}
-_
-\fB\&.XP\fR - y,y T{
-paragraph with first line indented, others indented
-T}
-_
-\fB\&.XS\fR \fIx y\fR - y T{
-begin index entry; \fIx\fR=page or no for none; \fIy\fR=indent
-T}
-_
-\fB\&.1C\fR on y,y one column format, on a new page
-_
-\fB\&.2C\fR - y,y begin two column format
-_
-\fB\&.]\|-\fR - n beginning of \fBrefer\fR reference
-_
-\fB\&.[\|0\fR - n end of unclassifiable type of reference
-_
-\fB\&.[\|N\fR - n T{
-N= 1:journal-article, 2:book, 3:book-article, 4:report
-T}
-.TE
-
-.SH REGISTERS
-.sp
-.LP
-Formatting distances can be controlled in \fB-ms\fR by means of built-in number
-registers. For example, this sets the line length to 6.5 inches:
-.sp
-.in +2
-.nf
-\&.nr LL 6.5i
-.fi
-.in -2
-
-.sp
-.LP
-Here is a table of number registers and their default values:
-.sp
-
-.sp
-.TS
-c | c | c | c
-l | l | l | l .
-Name Register Controls Takes Effect Default
-_
-\fBPS\fR point size paragraph 10
-_
-\fBVS\fR vertical spacing paragraph 12
-_
-\fBLL\fR line length paragraph 6i
-_
-\fBLT\fR title length next page same as \fBLL\fR
-_
-\fBFL\fR footnote length next \fB\&.FS\fR 5.5i
-_
-\fBPD\fR paragraph distance paragraph 1v (if n), .3v (if t)
-_
-\fBDD\fR display distance displays 1v (if n), .5v (if t)
-_
-\fBPI\fR paragraph indent paragraph 5n
-_
-\fBQI\fR quote indent next \fB\&.QP\fR 5n
-_
-\fBFI\fR footnote indent next \fB\&.FS\fR 2n
-_
-\fBPO\fR page offset next page 0 (if n), \(ap1i (if t)
-_
-\fBHM\fR header margin next page 1i
-_
-\fBFM\fR footer margin next page 1i
-_
-\fBFF\fR footnote format next \fB\&.FS\fR 0 (1, 2, 3 available)
-.TE
-
-.sp
-.LP
-When resetting these values, make sure to specify the appropriate units.
-Setting the line length to 7, for example, will result in output with one
-character per line. Setting \fBFF\fR to 1 suppresses footnote superscripting;
-setting it to 2 also suppresses indentation of the first line; and setting it
-to 3 produces an \fB\&.IP\fR-like footnote paragraph.
-.sp
-.LP
-Here is a list of string registers available in \fB-ms\fR; they may be used
-anywhere in the text:
-.sp
-
-.sp
-.TS
-c | c
-l | l .
-Name String's Function
-_
-\fB\e*Q\fR quote (\fB"\fR in \fBnroff,\fR\| \fB"\fR in \fBtroff\fR )
-_
-\fB\e*U\fR unquote (\fB"\fR in \fBnroff,\fR\| \fB"\fR in \fBtroff\fR )
-_
-\fB\e*-\fR dash (\fB--\fR in \fBnroff,\fR \fB\(em\fR in \fBtroff\fR )
-_
-\fB\e*(MO\fR month (month of the year)
-_
-\fB\e*(DY\fR day (current date)
-_
-\fB\e**\fR automatically numbered footnote
-_
-\fB\e*'\fR acute accent (before letter)
-_
-\fB\e*`\fR grave accent (before letter)
-_
-\fB\e*^\fR circumflex (before letter)
-_
-\fB\e*,\fR cedilla (before letter)
-_
-\fB\e*:\fR umlaut (before letter)
-_
-\fB\e*~\fR tilde (before letter)
-.TE
-
-.sp
-.LP
-When using the extended accent mark definitions available with \fB\&.AM\fR,
-these strings should come after, rather than before, the letter to be accented.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/usr/share/lib/tmac/s\fR\fR
-.ad
-.RS 30n
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/share/lib/tmac/ms.???\fR\fR
-.ad
-.RS 30n
-
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBcol\fR(1), \fBeqn\fR(1), \fBnroff\fR(1), \fBrefer\fR(1), \fBtbl\fR(1),
-\fBtroff\fR(1)
-.SH BUGS
-.sp
-.LP
-Floating keeps and regular keeps are diverted to the same space, so they cannot
-be mixed together with predictable results.
diff --git a/usr/src/man/man5/mutex.5 b/usr/src/man/man5/mutex.5
deleted file mode 100644
index aafa52aa7a..0000000000
--- a/usr/src/man/man5/mutex.5
+++ /dev/null
@@ -1,177 +0,0 @@
-.\"
-.\" Sun Microsystems, Inc. gratefully acknowledges The Open Group for
-.\" permission to reproduce portions of its copyrighted documentation.
-.\" Original documentation from The Open Group can be obtained online at
-.\" http://www.opengroup.org/bookstore/.
-.\"
-.\" The Institute of Electrical and Electronics Engineers and The Open
-.\" Group, have given us permission to reprint portions of their
-.\" documentation.
-.\"
-.\" In the following statement, the phrase ``this text'' refers to portions
-.\" of the system documentation.
-.\"
-.\" Portions of this text are reprinted and reproduced in electronic form
-.\" in the SunOS Reference Manual, from IEEE Std 1003.1, 2004 Edition,
-.\" Standard for Information Technology -- Portable Operating System
-.\" Interface (POSIX), The Open Group Base Specifications Issue 6,
-.\" Copyright (C) 2001-2004 by the Institute of Electrical and Electronics
-.\" Engineers, Inc and The Open Group. In the event of any discrepancy
-.\" between these versions and the original IEEE and The Open Group
-.\" Standard, the original IEEE and The Open Group Standard is the referee
-.\" document. The original Standard can be obtained online at
-.\" http://www.opengroup.org/unix/online.html.
-.\"
-.\" This notice shall appear on any product containing this material.
-.\"
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.\"
-.\"
-.\" Portions Copyright (c) 1995 IEEE All Rights Reserved.
-.\" Copyright (c) 1998 Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright (c) 2001, The IEEE and The Open Group. All Rights Reserved.
-.\"
-.TH MUTEX 5 "Jun 5, 2007"
-.SH NAME
-mutex \- concepts relating to mutual exclusion locks
-.SH DESCRIPTION
-.sp
-.LP
-Mutual exclusion locks (mutexes) prevent multiple threads from simultaneously
-executing critical sections of code which access shared data (that is, mutexes
-are used to serialize the execution of threads). All mutexes must be global. A
-successful call to acquire a mutex will cause another thread that is also
-trying to lock the same mutex to block until the owner thread unlocks the
-mutex.
-.sp
-.LP
-Mutexes can synchronize threads within the same process or in other processes.
-Mutexes can be used to synchronize threads between processes if the mutexes are
-allocated in writable memory and shared among the cooperating processes (see
-\fBmmap\fR(2)), and have been initialized for this task.
-.sp
-.LP
-The following table lists mutex functions and the actions they perform.
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-FUNCTION ACTION
-_
-\fBmutex_init\fR Initialize a mutex.
-\fBmutex_destroy\fR Destroy a mutex.
-\fBmutex_lock\fR Lock a mutex.
-\fBmutex_trylock\fR Attempt to lock a mutex.
-\fBmutex_unlock\fR Unlock a mutex.
-\fBpthread_mutex_init\fR Initialize a mutex.
-\fBpthread_mutex_destroy\fR Destroy a mutex.
-\fBpthread_mutex_lock\fR Lock a mutex.
-\fBpthread_mutex_trylock\fR Attempt to lock a mutex.
-\fBpthread_mutex_unlock\fR Unlock a mutex.
-.TE
-
-.SS "Initialization"
-.sp
-.LP
-Mutexes are either intra-process or inter-process, depending upon the argument
-passed implicitly or explicitly to the initialization of that mutex. A
-statically allocated mutex does not need to be explicitly initialized; by
-default, a statically allocated mutex is initialized with all zeros and its
-scope is set to be within the calling process.
-.sp
-.LP
-For inter-process synchronization, a mutex needs to be allocated in memory
-shared between these processes. Since the memory for such a mutex must be
-allocated dynamically, the mutex needs to be explicitly initialized with the
-appropriate attribute that indicates inter-process use.
-.SS "Locking and Unlocking"
-.sp
-.LP
-A critical section of code is enclosed by a call to lock the mutex and the call
-to unlock the mutex to protect it from simultaneous access by multiple threads.
-Only one thread at a time may possess mutually exclusive access to the critical
-section of code that is enclosed by the mutex-locking call and the
-mutex-unlocking call, whether the mutex's scope is intra-process or
-inter-process. A thread calling to lock the mutex either gets exclusive access
-to the code starting from the successful locking until its call to unlock the
-mutex, or it waits until the mutex is unlocked by the thread that locked it.
-.sp
-.LP
-Mutexes have ownership, unlike semaphores. Only the thread that locked a mutex,
-(that is, the owner of the mutex), should unlock it.
-.sp
-.LP
-If a thread waiting for a mutex receives a signal, upon return from the signal
-handler, the thread resumes waiting for the mutex as if there was no interrupt.
-.SS "Caveats"
-.sp
-.LP
-Mutexes are almost like data - they can be embedded in data structures, files,
-dynamic or static memory, and so forth. Hence, they are easy to introduce into
-a program. However, too many mutexes can degrade performance and scalability of
-the application. Because too few mutexes can hinder the concurrency of the
-application, they should be introduced with care. Also, incorrect usage (such
-as recursive calls, or violation of locking order, and so forth) can lead to
-deadlocks, or worse, data inconsistencies.
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-MT-Level MT-Safe
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBmmap\fR(2), \fBshmop\fR(2), \fBmutex_destroy\fR(3C), \fBmutex_init\fR(3C),
-\fBmutex_lock\fR(3C), \fBmutex_trylock\fR(3C), \fBmutex_unlock\fR(3C),
-\fBpthread_create\fR(3C), \fBpthread_mutex_destroy\fR(3C),
-\fBpthread_mutex_init\fR(3C), \fBpthread_mutex_lock\fR(3C),
-\fBpthread_mutex_trylock\fR(3C), \fBpthread_mutex_unlock\fR(3C),
-\fBpthread_mutexattr_init\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
-.SH NOTES
-.sp
-.LP
-In the current implementation of threads, \fBpthread_mutex_lock()\fR,
-\fBpthread_mutex_unlock()\fR, \fBmutex_lock()\fR \fBmutex_unlock()\fR,
-\fBpthread_mutex_trylock()\fR, and \fBmutex_trylock()\fR do not validate the
-mutex type. Therefore, an uninitialized mutex or a mutex with an invalid type
-does not return \fBEINVAL\fR. Interfaces for mutexes with an invalid type have
-unspecified behavior.
-.sp
-.LP
-By default, if multiple threads are waiting for a mutex, the order of
-acquisition is undefined.
-.sp
-.LP
-The system does not support multiple mappings to the same logical synch object
-if it is initialized as process-private (\fBUSYNC_THREAD\fR for Solaris,
-\fBPTHREAD_PROCESS_PRIVATE\fR for POSIX). If you need to \fBmmap\fR(2)a synch
-object to different locations within the same address space, then the synch
-object should be initialized as a shared object (\fBUSYNC_PROCESS\fR for
-Solaris, \fBPTHREAD_PROCESS_SHARED\fR for POSIX).
diff --git a/usr/src/man/man5/nca.if.5 b/usr/src/man/man5/nca.if.5
new file mode 100644
index 0000000000..2ce8956464
--- /dev/null
+++ b/usr/src/man/man5/nca.if.5
@@ -0,0 +1,142 @@
+'\" te
+.\" Copyright (C) 2003, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH NCA.IF 5 "Feb 18, 2003"
+.SH NAME
+nca.if \- the NCA configuration file that specifies physical interfaces
+.SH SYNOPSIS
+.LP
+.nf
+\fB/etc/nca/nca.if\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+Specify the physical interfaces for which the Solaris Network Cache and
+Accelerator ("\fBNCA\fR") feature will be configured in the \fBnca.if\fR
+configuration file. List the physical interfaces in the file, one per line. To
+configure \fBNCA\fR to listen on all physical interfaces present on the system
+backed by a \fBhostname.{interface_name}\fR, then list only an asterik
+("\fB*\fR") in \fBnca.if\fR.
+.sp
+.LP
+When the \fBncakmod\fR(1) initialization script is invoked during system boot,
+it will attempt to configure each physical interface specified in the
+\fBnca.if\fR file by using \fBncaconfd\fR(8). Note that there must be an
+accompanying \fBhostname.{interface_name}\fR file and an entry in
+\fB/etc/hosts\fR for the contents of \fBhostname.{interface_name}\fR.
+.sp
+.LP
+You must reboot in order to implement changes to the \fBnca.if\fR file.
+.SH EXAMPLES
+.SS "x86"
+.LP
+\fBExample 1 \fR\fBnca.if\fR on x86
+.sp
+.LP
+The following is an example of an \fBnca.if\fR file that would be used on an
+x86 system:
+
+.sp
+.in +2
+.nf
+iprb1
+iprb6
+iprb8
+.fi
+.in -2
+
+.SS "SPARC"
+.LP
+\fBExample 2 \fR\fBnca.if\fR on SPARC
+.sp
+.LP
+The following is an example of an \fBnca.if\fR file that would be used on a
+SPARC system:
+
+.sp
+.in +2
+.nf
+hme2
+hme3
+hme4
+.fi
+.in -2
+
+.SS "All Platforms"
+.LP
+\fBExample 3 \fRConfiguring NCA to Listen on All Physical Interfaces
+.sp
+.LP
+The following example shows the contents of an \fBnca.if\fR file that would be
+used to configure either platform to listen on all physical interfaces present
+on the system:
+
+.sp
+.in +2
+.nf
+*
+.fi
+.in -2
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/nca/nca.if\fR\fR
+.ad
+.RS 25n
+Lists the physical interfaces on which \fBNCA\fR will run.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/hostname.{}{0-9}\fR\fR
+.ad
+.RS 25n
+Lists all physical interfaces configured on the server.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/hosts\fR\fR
+.ad
+.RS 25n
+Lists all host names associated with the server. Entries in this file must
+match with entries in \fB/etc/hostname.{}{0-9}\fR for \fBNCA\fR to function.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR nca (1),
+.BR ncab2clf (1),
+.BR ncakmod (1),
+.BR ncakmod.conf (5),
+.BR ncalogd.conf (5),
+.BR attributes (7),
+.BR ifconfig (8)
+.sp
+.LP
+\fISystem Administration Guide: IP Services\fR
diff --git a/usr/src/man/man5/ncad_addr.5 b/usr/src/man/man5/ncad_addr.5
new file mode 100644
index 0000000000..f7d356a886
--- /dev/null
+++ b/usr/src/man/man5/ncad_addr.5
@@ -0,0 +1,76 @@
+'\" te
+.\" Copyright (C) 2003, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH NCAD_ADDR 5 "April 9, 2016"
+.SH NAME
+ncad_addr \- name of the Solaris Network Cache and Accelerator (NCA) socket
+utility library
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/ncad_addr.so\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+\fBncad_addr.so\fR is the Solaris Network Cache and Accelerator (\fBNCA\fR)
+socket utility library. Use this library with a web server to avoid support for
+the \fBPF_NCA\fR family type socket. The web server can take advantage of NCA
+functionality.
+.sp
+.LP
+Interpose the \fBncad_addr\fR interfaces before the interfaces in
+\fBlibsocket\fR by setting the environment variable \fBLD_PRELOAD\fR to
+\fBncad_addr.so\fR so that it is preloaded before \fBlibsocket.so.1\fR. The
+\fBncad_addr.so\fR interfaces will be interposed only if NCA is enabled. See
+\fBncakmod\fR(1).
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRInterposing \fBncad_addr\fR
+.sp
+.LP
+Using Bourne shell syntax as an example, set \fBLD_PRELOAD\fR as shown below to
+interpose the \fBncad_addr\fR socket utility library:
+
+.sp
+.in +2
+.nf
+LD_PRELOAD=/usr/lib/ncad_addr.so /usr/bin/httpd
+.fi
+.in -2
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/usr/lib/ncad_addr.so\fR\fR
+.ad
+.RS 25n
+\fBncad_addr\fR socket utility library shared object
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Unstable
+.TE
+
+.SH SEE ALSO
+.LP
+\fBnca\fR(1), \fBncab2clf\fR(1), \fBncakmod\fR(1), \fBsocket\fR(3SOCKET),
+\fBnca.if\fR(5), \fBncakmod.conf\fR(5),
+.BR attributes (7)
+.SH NOTES
+.LP
+Only applications that use the \fBNCA\fR feature, for example, web servers,
+should interpose this library.
diff --git a/usr/src/man/man5/ncakmod.conf.5 b/usr/src/man/man5/ncakmod.conf.5
new file mode 100644
index 0000000000..ab8f74af2c
--- /dev/null
+++ b/usr/src/man/man5/ncakmod.conf.5
@@ -0,0 +1,110 @@
+'\" te
+.\" Copyright (C) 2001, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH NCAKMOD.CONF 5 "Sep 28, 2001"
+.SH NAME
+ncakmod.conf \- ncakmod configuration file
+.SH SYNOPSIS
+.LP
+.nf
+\fB/etc/nca/ncakmod.conf\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBncakmod.conf\fR file is used to configure the Solaris Network Cache and
+Accelerator ("\fBNCA\fR") kernel module. The file contains two fields,
+\fBkey\fR and \fBvalue\fR.
+.sp
+.LP
+The \fBstatus\fR key is used to indicate if the user wants to have \fBNCA\fR
+turned on as a feature. If the value of \fBstatus\fR key is \fBenabled\fR,
+then the \fBNCA\fR kernel module will be pushed on to the specified interfaces.
+If the value of the \fBstatus\fR key is \fBdisabled\fR, then the \fBNCA\fR
+kernel module will not be pushed on to any interfaces . The default is
+\fBdisabled\fR.
+.sp
+.LP
+The \fBhttpd_door_path\fR key specifies the path name of the Solaris Door
+\fBRPC\fR mechanism that will be used to communicate with the \fBhttp\fR
+daemon. The default value is \fB/var/run/nca_httpd_1.door\fR.
+.sp
+.LP
+Use the \fBnca_active\fR key to indicate whether to allow NCA to actively open
+outgoing TCP connections. The default value for \fBnca_active\fR is
+\fBdisabled\fR. If set to \fBenabled\fR, \fBncaconfd\fR sets up NCA for each
+interface and then operates as a daemon, allowing NCA to make outgoing TCP
+connections. This functionality is possible only by using the doors interface
+to NCA. A web server that uses the sockets interface with \fBPF_NCA\fR or
+\fBncad_addr.so\fR cannot connect by means of \fBnca_active\fR.
+.sp
+.LP
+NCA supports the logging of in-kernel cache hits. See \fBncalogd.conf\fR(5).
+NCA stores logs in a binary format. Use the \fBncab2clf\fR(1) utility to
+convert the log from a binary format to the Common Log File format.
+.sp
+.LP
+In order to implement changes to the \fBncakmod.conf\fR file, you will need to
+reboot.
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRA Sample \fBncakmod.conf\fR File
+.sp
+.LP
+The following is a sample \fBncakmod.conf\fR file:
+
+.sp
+.in +2
+.nf
+#
+# NCA Kernel Module Configuration File
+#
+status=disabled
+httpd_door_path=/var/run/nca_httpd_1.door
+nca_active=disabled
+.fi
+.in -2
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/nca/ncakmod.conf\fR\fR
+.ad
+.RS 25n
+The NCA kernel module configuration file.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR nca (1),
+.BR ncab2clf (1),
+.BR ncakmod (1),
+.BR door_create (3C),
+.BR nca.if (5),
+.BR ncad_addr (5),
+.BR ncalogd.conf (5),
+.BR attributes (7)
+.sp
+.LP
+\fISystem Administration Guide: IP Services\fR
diff --git a/usr/src/man/man5/ncalogd.conf.5 b/usr/src/man/man5/ncalogd.conf.5
new file mode 100644
index 0000000000..8ef091eaa2
--- /dev/null
+++ b/usr/src/man/man5/ncalogd.conf.5
@@ -0,0 +1,118 @@
+'\" te
+.\" Copyright (C) 2002, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH NCALOGD.CONF 5 "Jan 22, 2002"
+.SH NAME
+ncalogd.conf \- NCA logging configuration file
+.SH SYNOPSIS
+.LP
+.nf
+\fB/etc/nca/ncalogd.conf\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBncalogd.conf\fR is used to configure Solaris Network Cache and
+Accelerator ("\fBNCA\fR") logging. The file contains two fields, \fBkey\fR and
+\fBvalue\fR.
+.sp
+.LP
+The \fBstatus\fR key is used to indicate if the user wants to have \fBNCA\fR
+logging turned on. If the value of \fBstatus\fR key is \fBenabled\fR, then
+\fBNCA\fR logging will be turned on. If the value of the \fBstatus\fR key is
+\fBdisabled\fR, then \fBNCA\fR logging will not be invoked. The default value
+is \fBdisabled\fR.
+.sp
+.LP
+The \fBlogd_path_name\fR key specifies the absolute pathname of the log file.
+The log file must be a raw device without a filesystem or a file on a local
+file system. The default value is \fB/var/nca/log\fR. \fBlogd_path_name\fR can
+also contain a whitespace-delimited list of values for multiple log files to a
+maximum of 16. If you specify multiple log files, you must enclose the list in
+quotation marks ("). With multiple files, \fBNCA\fR logging moves to the next
+file on the list once the file size specified by \fBlogd_file_size\fR has been
+reached. When the last file is full, \fBNCA\fR logging rotates back to the
+first file in the list. A pointer to the current log file is stored in
+\fB/var/nca/current\fR.
+.sp
+.LP
+The \fBlogd_file_size\fR key specifies the value of the file size, in bytes,
+allowed for each log file specified in by the \fBlogd_path_name\fR key. The
+default value is 1000000 bytes.
+.sp
+.LP
+In order to implement changes to the \fBncalogd.conf\fR file, you will need to
+stop and start NCA logging or reboot.
+.sp
+.LP
+NCA stores logs in a binary format. Use the \fBncab2clf\fR(1) utility to
+convert the log from a binary format to the Common Log File format.
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRA Sample \fBncalogd.conf\fR File
+.sp
+.LP
+The following is a sample \fBncalogd.conf\fR file that specifies three log
+files:
+
+.sp
+.in +2
+.nf
+#
+# NCA Log Daemon Configuration File
+#
+
+status=enabled
+logd_path_name="/var/nca/log1 /var/nca/log2 /var/nca/log3"
+logd_file_size=1000000
+.fi
+.in -2
+
+.sp
+.LP
+Note that there is no NCA logging daemon. Logging is performed as one of the
+functions of the NCA software.
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/nca/ncalogd.conf\fR\fR
+.ad
+.RS 25n
+Lists configuration parameters for \fBNCA\fRlogging.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR nca (1),
+.BR ncab2clf (1),
+.BR ncakmod (1),
+.BR door_create (3C),
+.BR nca.if (5),
+.BR ncakmod.conf (5),
+.BR attributes (7),
+.BR dd (8)
+.sp
+.LP
+\fISystem Administration Guide: IP Services\fR
diff --git a/usr/src/man/man5/ncaport.conf.5 b/usr/src/man/man5/ncaport.conf.5
new file mode 100644
index 0000000000..7c3f50804e
--- /dev/null
+++ b/usr/src/man/man5/ncaport.conf.5
@@ -0,0 +1,69 @@
+'\" te
+.\" Copyright (c) 2001, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH NCAPORT.CONF 5 "Jul 30, 2001"
+.SH NAME
+ncaport.conf \- ncaport configuration file
+.SH SYNOPSIS
+.LP
+.nf
+\fB/etc/nca/ncaport.conf\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBncaport.conf\fR file is used to configure the IP addresses and ports
+that the Solaris Network Cache and Acceleration (NCA) kernel module services.
+The file contains two fields, key and value, in the format of
+\fBncaport=\fIipaddress\fR/\fIport\fR\fR. IPv4 addresses must be in the dot
+notation \fId\fR.\fId\fR.\fId\fR.\fId\fR. IPv6 addresses must be in one of the
+three conventional forms (see \fBinet_pton\fR(3C)). If an asterisk
+(\fB*\fR) is used for an IP address, it is interpreted as \fBINADDR_ANY\fR,
+which matches any IP address.
+.sp
+.LP
+A web server uses the environment variable \fBLD_PRELOAD\fR and the
+\fBncaport.conf\fR configuration file to convert an \fBAF_INET\fR socket to an
+\fBAF_NCA\fR socket. \fBLD_PRELOAD\fR enables the NCA socket utility library to
+be loaded before \fBlibsocket.so.1\fR. See the \fBncad_addr\fR(5) for details.
+When a web server issues the \fBbind\fR(3SOCKET) system call, it is intercepted
+by the interposition library \fBncad_addr.so\fR. If the bind address is in the
+\fBncaport.conf\fR file, the \fBAF_INET\fR socket is converted to a
+\fBAF_NCA\fR socket.
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRSample \fBncaport.conf\fR File
+.sp
+.LP
+The following is a sample \fBncaport.conf\fR file:
+
+.sp
+.in +2
+.nf
+#
+# NCA Kernel Module Port Configuration File
+#
+ncaport=1080:0:0:0:8:800:200C:417A/100
+ncaport=192.168.84.71/80
+ncaport=*/9000
+.fi
+.in -2
+.sp
+
+.SH SEE ALSO
+.LP
+.BR nca (1),
+.BR inet_pton (3C),
+.BR bind (3SOCKET),
+.BR ncad_addr (5),
+.BR attributes (7)
+.SH NOTES
+.LP
+For those web servers that use \fBAF_NCA\fR sockets, the NCA port configuration
+described here has no effect.
+.sp
+.LP
+NCA does not currently support IPv6. Any IPv6 addresses in the file
+\fBncaport.conf\fR are ignored.
diff --git a/usr/src/man/man5/ndmp.5 b/usr/src/man/man5/ndmp.5
new file mode 100644
index 0000000000..b1795c4992
--- /dev/null
+++ b/usr/src/man/man5/ndmp.5
@@ -0,0 +1,178 @@
+'\" te
+.\" Copyright (C) 2009, Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 2014 Nexenta Systems, Inc. All rights reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH NDMP 5 "Feb 24, 2014"
+.SH NAME
+ndmp \- configuration properties for Solaris Network Data Management Protocol
+(NDMP) server
+.SH DESCRIPTION
+.sp
+.LP
+The behavior of the Solaris NDMP server is specified by property values that
+are stored in the Service Management Facility, \fBsmf\fR(7).
+.sp
+.LP
+An authorized user can use the \fBndmpadm\fR(8) command to set global values
+for these properties in SMF.
+.sp
+.LP
+You can set the following properties by using the \fBndmpadm set\fR command:
+.sp
+.ne 2
+.na
+\fB\fBbackup-quarantine\fR\fR
+.ad
+.RS 24n
+Backup the files marked as quarantined by AV. Acceptable values are \fByes\fR
+or \fBno\fR. The default is \fBno\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdar-support\fR\fR
+.ad
+.RS 24n
+Set the Direct Access Recovery mode. Acceptable values are \fByes\fR or
+\fBno\fR. The default is \fBno\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdebug-path\fR\fR
+.ad
+.RS 24n
+The path to which to save the debug log. The default is \fB/var/log/ndmp\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdebug-mode\fR\fR
+.ad
+.RS 24n
+Enable or disable debug log messages.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdump-pathnode\fR\fR
+.ad
+.RS 24n
+Enable or disable backing up the directories containing modified files or
+directories in \fBdump\fR(1) backup format. Acceptable values are yes or no.
+The default is no.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBignore-ctime\fR\fR
+.ad
+.RS 24n
+Determines whether the change timestamp (\fBctime\fR) of files and directories
+is used to determine whether a file should be backed up in level backup. If
+this parameter is set to \fByes\fR, only the modification time (\fBmtime\fR) of
+the file or directory determines whether it should be backed up. Acceptable
+values are \fByes\fR or \fBno\fR. The default value is \fBno\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBoverwrite-quarantine\fR\fR
+.ad
+.RS 24n
+Restore quarantined files on top of current files if they already exist.
+Acceptable values are \fByes\fR or \fBno\fR. The default value is \fBno\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrestore-quarantine\fR\fR
+.ad
+.RS 24n
+Restore the files that had been marked as quarantined by AV and are backed up.
+Acceptable values are yes or no. The default value is no.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBtar-pathnode\fR\fR
+.ad
+.RS 24n
+Enable or disable backing up the directories containing modified files or
+directories in \fBtar\fR(1) backup format. Acceptable values are \fByes\fR or
+\fBno\fR. The default value is \fBno\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBtoken-maxseq\fR\fR
+.ad
+.RS 24n
+Set the maximum sequence number for subsequent token-based incremental backup
+in NDMP-V4. The default value is \fB9\fR. There are two limits for this value:
+soft-limit, which is \fB59\fR, and hard-limit, equal to \fB64\fR. If the token
+sequence number, passed by the DMA, is between the soft and hard limits, a
+warning message is issued to the DMA. The token sequence number can never
+exceed the hard-limit value.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBversion\fR\fR
+.ad
+.RS 24n
+Set the maximum active NDMP protocol version. Valid values are currently
+\fB2\fR, \fB3\fR, and \fB4\fR. The default is \fB4\fR.
+.RE
+
+.sp
+.LP
+The following property can only be set when using the \fBndmpadm enable\fR or
+\fBndmpadm disable\fR command:
+.sp
+.ne 2
+.na
+\fB\fBauth-type\fR\fR
+.ad
+.RS 13n
+Sets the password encryption type for the authentication of local users. Valid
+values are \fBcram-md5\fR or \fBcleartext\fR.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Committed
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR dump (1),
+.BR tar (1),
+.BR attributes (7),
+.BR smf (7),
+.BR ndmpadm (8),
+.BR ndmpd (8)
diff --git a/usr/src/man/man5/ndpd.conf.5 b/usr/src/man/man5/ndpd.conf.5
new file mode 100644
index 0000000000..fcb519f886
--- /dev/null
+++ b/usr/src/man/man5/ndpd.conf.5
@@ -0,0 +1,557 @@
+'\" te
+.\" Copyright (C) 2004, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH NDPD.CONF 5 "Jan 4, 2007"
+.SH NAME
+ndpd.conf \- configuration file for IPv6 router autoconfiguration
+.SH SYNOPSIS
+.LP
+.nf
+\fB/etc/inet/ndpd.conf\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBndpd.conf\fR file contains configuration information for
+\fBin.ndpd\fR(8). On a host, this file does not need to exist or can be empty.
+The file has one configuration entry per line; note that lines can be extended
+with a backslash (\fB\e\fR) followed by a NEWLINE. There are four forms of
+configuration entries which are identified by the first field on the line:
+\fBifdefault\fR, \fBprefixdefault\fR, \fBif\fR, or \fBprefix\fR. The
+\fBifdefault\fR and \fBif\fR entries set interface configuration variables. The
+former establishes the routing behavior for all interfaces, the latter sets
+per-interface parameters. Any \fBifdefault\fR entries must precede any \fBif\fR
+entries in the file.
+.sp
+.LP
+The \fBprefixdefault\fR and \fBprefix\fR entries control prefix configuration
+variables. \fBprefixdefault\fR establishes the default behavior for all prefix
+advertisements on all interfaces. The \fBprefix\fR keyword advertises
+per-prefix information. Any \fBprefixdefault\fR entries must precede any
+\fBprefix\fR entries in the file.
+.sp
+.LP
+Each \fBifdefault\fR entry is composed of a single line of the form:
+.sp
+.in +2
+.nf
+ifdefault [ \fIif-variable-name\fR \fIvalue\fR ]*
+.fi
+.in -2
+
+.sp
+.LP
+Each \fBif\fR entry is composed of a single line of the form:
+.sp
+.in +2
+.nf
+if \fIinterface\fR [ \fIif-variable-name\fR \fIvalue\fR ]*
+.fi
+.in -2
+
+.sp
+.LP
+Each \fBprefixdefault\fR entry is composed of a single line of the form:
+.sp
+.in +2
+.nf
+prefixdefault [ \fIprefix-variable-name\fR \fIvalue\fR ]*
+.fi
+.in -2
+
+.sp
+.LP
+Each prefix\fB\fR entry is composed of a single line of the form:
+.sp
+.in +2
+.nf
+prefix \fIprefix\fR/\fIprefix_length\fR \fIinterface\fR [ \fIprefix-variable-name\fR \fIvalue\fR ]*
+.fi
+.in -2
+
+.sp
+.LP
+Fields are separated by either SPACE or TAB characters. A `\fB#\fR' (number
+sign) indicates the beginning of a comment. Characters up to the end of the
+line are not interpreted by routines that search this file.
+.sp
+.ne 2
+.na
+\fB\fB\fIinterface\fR\fR\fR
+.ad
+.RS 24n
+The name of a network interface, for example, \fBeri0\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\fIprefix\fR\fR\fR
+.ad
+.RS 24n
+An IPv6 address in standard hexadecimal notation, for example,
+\fBfec0:0:0:1::0\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\fIprefix_length\fR\fR\fR
+.ad
+.RS 24n
+A number between 0 and 128.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\fIif-variable-name\fR\fR\fR
+.ad
+.RS 24n
+An interface variable. Below is the list of interface variables applicable to
+routers only along with their default values and units as discussed in \fIRFC
+2461\fR and \fIRFC 2462\fR. The \fBTmp\fR* variables apply to hosts and
+routers. The \fBTmp\fR* variables configure temporary address functionality as
+defined in \fIRFC 3041\fR.
+.sp
+.in +2
+.nf
+Variable Name Default Unit
+
+AdvSendAdvertisements false Boolean
+DupAddrDetectTransmits 1 Counter
+MaxRtrAdvInterval 600 Seconds
+MinRtrAdvInterval 200 Seconds
+AdvManagedFlag false Boolean
+AdvOtherConfigFlag false Boolean
+AdvLinkMTU 0 Bytes
+AdvReachableTime 0 Milliseconds
+AdvRetransTimer 0 Milliseconds
+AdvCurHopLimit see below Counter
+AdvDefaultLifetime 1800 Seconds
+.fi
+.in -2
+.sp
+
+These variables are described as follows:
+.sp
+.ne 2
+.na
+\fB\fBAdvSendAdvertisements\fR\fR
+.ad
+.RS 26n
+Indicates whether the node should send out advertisements and respond to router
+solicitations. You need to explicitly configure this value to turn on router
+advertisement functions.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBDupAddrDetectTransmits\fR\fR
+.ad
+.RS 26n
+Defines the number of consecutive Neighbor Solicitation messages that the
+Neighbor Discovery protocol should send during Duplicate Address Detection of
+the local node's address.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBMaxRtrAdvInterval\fR\fR
+.ad
+.RS 26n
+Specifies the maximum time to wait between sending unsolicited multicast
+advertisements.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBMinRtrAdvInterval\fR\fR
+.ad
+.RS 26n
+Specifies the minimum amount of time to wait between sending unsolicited
+multicast advertisements.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBAdvManagedFlag\fR\fR
+.ad
+.RS 26n
+Indicates the value to be placed in the "Manage address configuration" flag in
+the Router Advertisement. This flag causes hosts to run DHCPv6 to acquire
+addresses and other configuration information. This flag causes hosts to run
+DHCPv6 to acquire configuration information, but only if \fBAdvManagedFlag\fR
+is not set.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBAdvOtherConfigFlag\fR\fR
+.ad
+.RS 26n
+Indicates the value to be placed in the "Other stateful configuration"flag in
+the Router Advertisement.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBAdvLinkMTU\fR\fR
+.ad
+.RS 26n
+Specifies an MTU value to be sent by the router. The default of zero indicates
+that the router does not specify MTU options.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBAdvReachableTime\fR\fR
+.ad
+.RS 26n
+Specifies the value in the Reachable Time field in the advertisement messages
+sent by the router.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBAdvRetransTimer\fR\fR
+.ad
+.RS 26n
+Specifies the value in the Retrans Timer field in the advertisement messages
+sent by the router.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBAdvCurHopLimit\fR\fR
+.ad
+.RS 26n
+Specifies the value to be placed in the current hop limit field in the
+advertisement messages sent by the router. The default is the current diameter
+of the Internet.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBAdvDefaultLifetime\fR\fR
+.ad
+.RS 26n
+Specifies the default lifetime of the router advertisements.
+.RE
+
+Listed below is the interface variable that applies to both hosts and routers.
+.sp
+.in +2
+.nf
+Variable Name Default Unit
+
+StatefulAddrConf true Boolean
+StatelessAddrConf true Boolean
+TmpAddrsEnabled false Boolean
+TmpValidLifetime 604800 Seconds
+ (1 week)
+TmpPreferredLifetime 86400 Seconds
+ (1 day)
+TmpRegenAdvance 5 Seconds
+TmpMaxDesyncFactor 600 Seconds
+.fi
+.in -2
+.sp
+
+.sp
+.ne 2
+.na
+\fB\fBStatefulAddrConf\fR\fR
+.ad
+.RS 24n
+Controls whether the system configures its IPv6 addresses by means of the
+Stateful Address Autoconfiguration mechanism, also known as DHCPv6, as
+described in RFC 3315. If enabled (the default), hosts automatically run DHCPv6
+based on the "managed" and "other" flags sent by routers. If disabled,
+\fBin.ndpd\fR will not invoke DHCPv6 automatically. DHCPv6 can still be invoked
+manually by using \fBifconfig\fR(8), in which case \fBin.ndpd\fR automatically
+sets the prefix length as needed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBStatelessAddrConf\fR\fR
+.ad
+.RS 24n
+Controls whether the system configures its IPv6 addresses by means of the
+Stateless Address Autoconfiguration mechanism described in \fIRFC 2462\fR. If
+enabled hosts (the default) autoconfigure addresses based on prefixes
+advertised by routers, routers will only autoconfigure addresses based on the
+prefixes they advertise themselves. In other words, even when enabled, routers
+do not autoconfigure addresses based on prefixes that other routers advertise.
+If you specify \fBfalse\fR for this variable, then the address must be
+configured manually.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBTmpAddrsEnabled\fR\fR
+.ad
+.RS 24n
+Indicates whether a temporary address should be created for all interfaces or
+for a particular interface of a node.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBTmpValidLifetime\fR\fR
+.ad
+.RS 24n
+Sets the valid lifetime for a temporary address.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBTmpPreferredLifetime\fR\fR
+.ad
+.RS 24n
+Sets the preferred lifetime of a temporary address.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBTmpRegenAdvance\fR\fR
+.ad
+.RS 24n
+Specifies the lead time in advance of address deprecation for generation of a
+new temporary address.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBTmpMaxDesyncFactor\fR\fR
+.ad
+.RS 24n
+Sets the upper bound on the DesyncFactor, which is a random value that is used
+to shorten the preferred lifetime so that clients do not regenerate an address
+at the same time.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIprefix-variable-name\fR\fR
+.ad
+.RS 24n
+A prefix variable as discussed in \fIRFC 2461 \fR and \fIRFC 2462\fR. The
+following lists the each interface variable and its default value and unit:
+.sp
+
+.sp
+.TS
+box;
+c | c | c
+l | l | l .
+Variable Name Default Unit
+_
+AdvValidLifetime 2592000 Seconds
+_
+AdvOnLinkFlag true Boolean
+_
+AdvPreferredLifetime 604800 Seconds
+_
+AdvAutonomousFlag true Boolean
+_
+AdvValidExpiration not set Date/Time
+_
+AdvPreferredExpiration not set Date/TIme
+.TE
+
+These variables are described as follows:
+.sp
+.ne 2
+.na
+\fB\fBAdvValidLifetime\fR\fR
+.ad
+.RS 26n
+Specifies the valid lifetime of the prefix that is being configured.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBAdvOnLinkFlag\fR\fR
+.ad
+.RS 26n
+Specifies the value to be placed in the on-link flag ("L-bit") field in the
+Prefix Information option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBAdvPreferredLifetime\fR\fR
+.ad
+.RS 26n
+Specifies the value to be placed in the Preferred Lifetime in the Prefix
+Information option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBAdvAutonomousFlag\fR\fR
+.ad
+.RS 26n
+Specifies the value to be placed in the Autonomous Flag field in the Prefix
+Information option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBAdvValidExpiration\fR\fR
+.ad
+.RS 26n
+Specifies the valid expiration date of the prefix.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBAdvPreferredExpiration\fR\fR
+.ad
+.RS 26n
+Specifies the preferred expiration date of the prefix.
+.RE
+
+The \fBAdvValidExpiration\fR and \fBAdvPreferredExpiration\fR variables are
+used to specify that the lifetime should be decremented in real time as
+specified in \fIRFC 2461\fR. If an \fBExpiration\fR variable is set, it takes
+precedence over the corresponding \fBAdvValidLifetime\fR or
+\fBAdvPreferredLifetime\fR variable setting.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIvalue\fR\fR
+.ad
+.RS 24n
+The value is a function of the unit. Boolean values are \fBtrue\fR,
+\fBfalse\fR, \fBon\fR, \fBoff\fR, \fB1\fR, or \fB0\fR.
+.sp
+Values in seconds can have characters appended for day (\fBd\fR), hour
+\fBh\fR), minute (\fBm\fR) and second (\fBs\fR). The default is seconds. For
+example, \fB1h\fR means 1 hour. This is equivalent to the value \fB3600\fR.
+.sp
+Values in milliseconds can have characters appended for day (\fBd\fR),hour
+(\fBh\fR), minute (\fBm\fR) second (\fBs\fR), and millisecond (\fBms\fR). The
+default is milliseconds. For example, \fB1h\fR is equivalent to the value
+\fB3600000\fR.
+.sp
+Date/time values are strings that use the recommended ISO date format described
+as "\fB%Y-%m-%d %R\fR", which represents a 4 digit year, a dash character, a
+numeric month, a dash character, and a numeric day of the month, followed by
+one or more whitespace characters and finally a 24 hour clock with hours, a
+colon, and minutes. For example, \fB1999-01-31 20:00\fR means 8pm January 31 in
+1999. Since the date/time values contain a space, use single or double quotes
+to declare the value. For example:
+.sp
+.in +2
+.nf
+prefixdefault AdvPreferredExpiration '1999-01-31 20:00'
+.fi
+.in -2
+
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRSending Router Advertisements for all Interfaces
+.sp
+.LP
+The following example can be used to send router advertisements out to all
+interfaces:
+
+.sp
+.in +2
+.nf
+# Send router advertisements out all interfaces
+ifdefault AdvSendAdvertisements on
+prefixdefault AdvOnLinkFlag on AdvAutonomousFlag on
+
+# Advertise a (bogus) global prefix and a site
+# local prefix on three interfaces using the default lifetimes
+prefix 2:0:0:9255::0/64 eri0
+prefix fec0:0:0:9255::0/64 eri0
+
+prefix 2:0:0:9256::0/64 eri1
+prefix fec0:0:0:9256::0/64 eri1
+
+prefix 2:0:0:9259::0/64 eri2
+prefix fec0:0:0:9259::0/64 eri2
+.fi
+.in -2
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Committed
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR icmp6 (4P),
+.BR ip6 (4P),
+.BR attributes (7),
+.BR dhcpagent (8),
+.BR ifconfig (8),
+.BR in.ndpd (8),
+.BR routeadm (8)
+.sp
+.LP
+Narten, T., Nordmark, E., and Simpson, W. \fIRFC 2461, Neighbor Discovery for
+IP Version 6 (IPv6)\fR. The Internet Society. December 1998.
+.sp
+.LP
+Thomson, S., and Narten, T. \fIRFC 2462, IPv6 Stateless Address
+Autoconfiguration\fR. The Internet Society. December 1998.
+.sp
+.LP
+Narten, T., and Draves, R. \fIRFC 3041, Privacy Extensions for Stateless
+Address Autoconfiguration in IPv6\fR. The Internet Society. January 2001.
+.sp
+.LP
+Droms, R. \fIRFC 3315, Dynamic Host Configuration Protocol for IPv6
+(DHCPv6)\fR. Cisco Systems. July 2003.
+.sp
+.LP
+\fISystem Administration Guide: IP Services\fR
diff --git a/usr/src/man/man5/netconfig.5 b/usr/src/man/man5/netconfig.5
new file mode 100644
index 0000000000..118e54e63c
--- /dev/null
+++ b/usr/src/man/man5/netconfig.5
@@ -0,0 +1,586 @@
+'\" te
+.\" Copyright 1989 AT&T
+.\" Copyright (C) 1999, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH NETCONFIG 5 "Nov 18, 2003"
+.SH NAME
+netconfig \- network configuration database
+.SH SYNOPSIS
+.LP
+.nf
+\fB/etc/netconfig\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The network configuration database, \fB/etc/netconfig\fR, is a system file used
+to store information about networks that are connected to the system. The
+\fBnetconfig\fR database and the routines that access it (see
+\fBgetnetconfig\fR(3NSL)) are part of the Network Selection component. The
+Network Selection component also includes \fBgetnetpath\fR(3NSL) routines to
+provide application-specific network search paths. These routines access the
+\fBnetconfig\fR database based on the environment variable \fBNETPATH\fR. See
+\fBenviron\fR(7).
+.sp
+.LP
+\fBnetconfig\fR contains an entry for each network available on the system.
+Entries are separated by newlines. Fields are separated by whitespace and occur
+in the order in which they are described below. Whitespace can be embedded as
+``\fB\e\fR\fIblank\fR'' or ``\fB\e\fR\fItab\fR''. Backslashes may be embedded
+as ``\fB\e\e\fR\&''. Lines in \fB/etc/netconfig\fR that begin with a \fB#\fR
+(hash) in column 1 are treated as comments.
+.sp
+.LP
+Each of the valid lines in the \fBnetconfig\fR database correspond to an
+available transport. Each entry is of the form:
+.sp
+.in +2
+.nf
+network ID semantics flag protocol-family \e
+ protocol-name network-device translation-libraries
+.fi
+.in -2
+
+.sp
+.ne 2
+.na
+\fB\fInetwork ID\fR\fR
+.ad
+.RS 25n
+A string used to uniquely identify a network. \fInetwork ID\fR consists of
+non-null characters, and has a length of at least 1. No maximum length is
+specified. This namespace is locally significant and the local system
+administrator is the naming authority. All \fInetwork ID\fRs on a system must
+be unique.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIsemantics\fR\fR
+.ad
+.RS 25n
+The \fIsemantics\fR field is a string identifying the ``semantics'' of the
+network, that is, the set of services it supports, by identifying the service
+interface it provides. The \fIsemantics\fR field is mandatory. The following
+semantics are recognized.
+.sp
+.ne 2
+.na
+\fB\fBtpi_clts\fR\fR
+.ad
+.RS 16n
+Transport Provider Interface, connectionless
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBtpi_cots\fR\fR
+.ad
+.RS 16n
+Transport Provider Interface, connection oriented
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBtpi_cots_ord\fR\fR
+.ad
+.RS 16n
+Transport Provider Interface, connection oriented, supports orderly release.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIflag\fR\fR
+.ad
+.RS 25n
+The \fIflag\fR field records certain two-valued (``true'' and ``false'')
+attributes of networks. \fIflag\fR is a string composed of a combination of
+characters, each of which indicates the value of the corresponding attribute.
+If the character is present, the attribute is ``true.'' If the character is
+absent, the attribute is ``false.'' ``\fB-\fR'' indicates that none of the
+attributes are present. Only one character is currently recognized:
+.sp
+.ne 2
+.na
+\fB\fBv\fR\fR
+.ad
+.RS 5n
+Visible (``default'') network. Used when the environment variable \fBNETPATH\fR
+is unset.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIprotocol family\fR\fR
+.ad
+.RS 25n
+The \fIprotocol family\fR and \fIprotocol name\fR fields are provided for
+protocol-specific applications. The \fIprotocol family\fR field contains a
+string that identifies a protocol family. The \fIprotocol family\fR identifier
+follows the same rules as those for \fInetwork ID\fRs; the string consists of
+non-null characters, it has a length of at least \fB1\fR, and there is no
+maximum length specified. A ``\fB\(mi\fR\&'' in the \fIprotocol family\fR field
+indicates that no protocol family identifier applies (the network is
+experimental). The following are examples:
+.sp
+.ne 2
+.na
+\fB\fBloopback\fR\fR
+.ad
+.RS 13n
+Loopback (local to host).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBinet\fR\fR
+.ad
+.RS 13n
+Internetwork: UDP, TCP, and the like.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBinet6\fR\fR
+.ad
+.RS 13n
+Internetwork over IPv6: UDP, TCP, and the like.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBimplink\fR\fR
+.ad
+.RS 13n
+ARPANET imp addresses
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpup\fR\fR
+.ad
+.RS 13n
+PUP protocols: for example, BSP
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBchaos\fR\fR
+.ad
+.RS 13n
+MIT CHAOS protocols
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBns\fR\fR
+.ad
+.RS 13n
+XEROX NS protocols
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnbs\fR\fR
+.ad
+.RS 13n
+NBS protocols
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBecma\fR\fR
+.ad
+.RS 13n
+European Computer Manufacturers Association
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdatakit\fR\fR
+.ad
+.RS 13n
+DATAKIT protocols
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBccitt\fR\fR
+.ad
+.RS 13n
+CCITT protocols, X.25, and the like.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsna\fR\fR
+.ad
+.RS 13n
+IBM SNA
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdecnet\fR\fR
+.ad
+.RS 13n
+DECNET
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdli\fR\fR
+.ad
+.RS 13n
+Direct data link interface
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBlat\fR\fR
+.ad
+.RS 13n
+LAT
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBhylink\fR\fR
+.ad
+.RS 13n
+NSC Hyperchannel
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBappletalk\fR\fR
+.ad
+.RS 13n
+Apple Talk
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnit\fR\fR
+.ad
+.RS 13n
+Network Interface Tap
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBieee802\fR\fR
+.ad
+.RS 13n
+IEEE 802.2; also ISO 8802
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBosi\fR\fR
+.ad
+.RS 13n
+Umbrella for all families used by OSI (for example, protosw lookup)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBx25\fR\fR
+.ad
+.RS 13n
+CCITT X.25 in particular
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBosinet\fR\fR
+.ad
+.RS 13n
+AFI = 47, IDI = 4
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBgosip\fR\fR
+.ad
+.RS 13n
+U.S. Government OSI
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIprotocol name\fR\fR
+.ad
+.RS 25n
+The \fIprotocol name\fR field contains a string that identifies a protocol. The
+\fIprotocol name\fR identifier follows the same rules as those for \fInetwork
+ID\fRs; that is, the string consists of non-NULL characters, it has a length of
+at least \fB1\fR, and there is no maximum length specified. A ``\fB\(mi\fR\&''
+indicates that none of the names listed apply. The following protocol names are
+recognized.
+.sp
+.ne 2
+.na
+\fB\fBtcp\fR\fR
+.ad
+.RS 8n
+Transmission Control Protocol
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBudp\fR\fR
+.ad
+.RS 8n
+User Datagram Protocol
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBicmp\fR\fR
+.ad
+.RS 8n
+Internet Control Message Protocol
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fInetwork device\fR\fR
+.ad
+.RS 25n
+The \fInetwork device\fR is the full pathname of the device used to connect to
+the transport provider. Typically, this device will be in the \fB/dev\fR
+directory. The \fInetwork device\fR must be specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fItranslation libraries\fR\fR
+.ad
+.RS 25n
+The \fIname-to-address translation libraries\fR support a ``directory service''
+(a name-to-address mapping service) for the network. A ``\fB\(mi\fR\&'' in this
+field indicates the absence of any \fItranslation libraries\fR. This has a
+special meaning for networks of the protocol family \fBinet :\fR its
+name-to-address mapping is provided by the name service switch based on the
+entries for \fBhosts\fR and \fBservices\fR in \fBnsswitch.conf\fR(5). For
+networks of other families, a ``\fB\(mi\fR\&'' indicates non-functional
+name-to-address mapping. Otherwise, this field consists of a comma-separated
+list of pathnames to dynamically linked libraries. The pathname of the library
+can be either absolute or relative. See \fBdlopen\fR(3C).
+.RE
+
+.sp
+.LP
+Each field corresponds to an element in the \fBstruct netconfig\fR structure.
+\fBstruct netconfig\fR and the identifiers described on this manual page are
+defined in <\fBnetconfig.h\fR>. This structure includes the following members:
+.sp
+.ne 2
+.na
+\fB\fBchar *\fR\fInc_netid\fR\fR
+.ad
+.RS 30n
+Network ID, including \fBNULL\fR terminator.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBunsigned long\fR \fInc_semantics\fR\fR
+.ad
+.RS 30n
+Semantics.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBunsigned long\fR \fInc_flag\fR\fR
+.ad
+.RS 30n
+Flags.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBchar *\fR\fInc_protofmly\fR\fR
+.ad
+.RS 30n
+Protocol family.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBchar *\fR\fInc_proto\fR\fR
+.ad
+.RS 30n
+Protocol name.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBchar *\fR\fInc_device\fR\fR
+.ad
+.RS 30n
+Full pathname of the network device.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBunsigned long\fR \fInc_nlookups\fR\fR
+.ad
+.RS 30n
+Number of directory lookup libraries.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBchar **\fR\fInc_lookups\fR\fR
+.ad
+.RS 30n
+Names of the name-to-address translation libraries.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBunsigned long\fR \fInc_unused[9]\fR\fR
+.ad
+.RS 30n
+Reserved for future expansion.
+.RE
+
+.sp
+.LP
+The \fInc_semantics\fR field takes the following values, corresponding to the
+semantics identified above:
+.br
+.in +2
+\fBNC_TPI_CLTS\fR
+.in -2
+.br
+.in +2
+\fBNC_TPI_COTS\fR
+.in -2
+.br
+.in +2
+\fBNC_TPI_COTS_ORD\fR
+.in -2
+.sp
+.LP
+The \fInc_flag\fR field is a bitfield. The following bit, corresponding to the
+attribute identified above, is currently recognized. \fBNC_NOFLAG\fR indicates
+the absence of any attributes.
+.sp
+.in +2
+.nf
+\fBNC_VISIBLE\fR
+.fi
+.in -2
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRA Sample \fBnetconfig\fR File
+.sp
+.LP
+Below is a sample \fBnetconfig\fR file:
+
+.sp
+.in +2
+.nf
+#
+# The "Network Configuration" File.
+#
+# Each entry is of the form:
+#
+# <networkid> <semantics> <flags> <protofamily> <protoname> <device>
+# <nametoaddrlibs>
+#
+# The "-" in <nametoaddrlibs> for inet family transports indicates
+# redirection to the name service switch policies for "hosts" and
+# "services". The "-" may be replaced by nametoaddr libraries that
+# comply with the SVr4 specs, in which case the name service switch
+# will not be used for netdir_getbyname, netdir_getbyaddr,
+# gethostbyname, gethostbyaddr, getservbyname, and getservbyport.
+# There are no nametoaddr_libs for the inet family in Solaris anymore.
+#
+udp6 tpi_clts v inet6 udp /dev/udp6 -
+tcp6 tpi_cots_ord v inet6 tcp /dev/tcp6 -
+udp tpi_clts v inet udp /dev/udp -
+tcp tpi_cots_ord v inet tcp /dev/tcp -
+rawip tpi_raw - inet - /dev/rawip -
+ticlts tpi_clts v loopback - /dev/ticlts straddr.so
+ticotsord tpi_cots_ord v loopback - /dev/ticotsord straddr.so
+ticots tpi_cots v loopback - /dev/ticots straddr.so
+.fi
+.in -2
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB<\fBnetconfig.h\fR>\fR
+.ad
+.RS 17n
+
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR dlopen (3C),
+.BR getnetconfig (3NSL),
+.BR getnetpath (3NSL),
+.BR nsswitch.conf (5)
+.sp
+.LP
+\fISystem Administration Guide: IP Services\fR
diff --git a/usr/src/man/man5/netgroup.5 b/usr/src/man/man5/netgroup.5
new file mode 100644
index 0000000000..15ea159e18
--- /dev/null
+++ b/usr/src/man/man5/netgroup.5
@@ -0,0 +1,164 @@
+'\" te
+.\" Copyright 2012 Nexenta Systems, Inc. All rights reserved.
+.\" Copyright (C) 2003, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH NETGROUP 5 "Jun 17, 2021"
+.SH NAME
+netgroup \- list of network groups
+.SH SYNOPSIS
+.nf
+\fB/etc/netgroup\fR
+.fi
+.SH DESCRIPTION
+A \fBnetgroup\fR defines a network-wide group of hosts and users. Use a
+\fBnetgroup\fR to restrict access to shared \fBNFS\fR filesystems and to
+restrict remote login and shell access.
+.sp
+Network groups are usually stored in network information services,
+such as \fBLDAP\fR, or \fBNIS\fR, but may alternatively be stored in
+the local \fB/etc/netgroup\fR file. The \fBnetgroup\fR line of the
+\fBnsswitch.conf\fR(5) file determines which of those sources are used.
+.sp
+This manual page describes the format for a file that is used to supply input
+to a program such as \fBldapaddent\fR(8) for LDAP, or \fBmakedbm\fR(8) for
+NIS. The same file format is used in the local \fB/etc/netgroup\fR file.
+.sp
+Each line of the file defines the name and membership of a network group. The
+line should have the format:
+.sp
+.in +2
+.nf
+\fIgroupname member\fR...
+.fi
+.in -2
+.sp
+.sp
+The items on a line can be separated by a combination of one or more spaces or
+tabs.
+.sp
+The \fIgroupname\fR is the name of the group being defined. This is followed by
+a list of members of the group. Each \fImember\fR is either another group name,
+all of whose members are to be included in the group being defined, or a triple
+of the form:
+.sp
+.in +2
+.nf
+\fI(hostname,username,domainname)\fR
+.fi
+.in -2
+.sp
+.sp
+In each triple, any of the three fields \fIhostname\fR, \fIusername\fR, and
+\fIdomainname\fR, can be empty. An empty field signifies a wildcard that
+matches any value in that field. Thus:
+.sp
+.in +2
+.nf
+everything (\|,\|,this.domain)
+.fi
+.in -2
+.sp
+.sp
+defines a group named "everything" for the domain "this.domain" to which every
+host and user belongs.
+.sp
+The \fIdomainname\fR field refers to the domain in which the triple is valid,
+not the domain containing the host or user. In fact, applications using
+\fBnetgroup\fR generally do not check the \fIdomainname\fR. Therefore, using
+.sp
+.in +2
+.nf
+(,,domain)
+.fi
+.in -2
+.sp
+.sp
+is equivalent to
+.sp
+.in +2
+.nf
+(,,)
+.fi
+.in -2
+.sp
+.sp
+You can also use netgroups to control \fBNFS\fR mount access (see
+\fBshare_nfs\fR(8)) and to control remote login and shell access (see
+\fBhosts.equiv\fR(5)). You can also use them to control local login access (see
+\fBpasswd\fR(5), \fBshadow\fR(5), and \fBcompat\fR in \fBnsswitch.conf\fR(5)).
+.sp
+When used for these purposes, a host is considered a member of a \fBnetgroup\fR
+if the \fBnetgroup\fR contains any triple in which the \fBhostname\fR field
+matches the name of the host requesting access and the \fBdomainname\fR field
+matches the domain of the host controlling access.
+.sp
+Similarly, a user is considered a member of a \fBnetgroup\fR if the
+\fBnetgroup\fR contains any triple in which the \fIusername\fR field matches
+the name of the \fBuser\fR requesting access and the \fIdomainname\fR field
+matches the domain of the host controlling access.
+.sp
+Note that when netgroups are used to control NFS mount access, access is
+granted depending only on whether the requesting host is a member of the
+\fBnetgroup\fR. Remote login and shell access can be controlled both on the
+basis of host and user membership in separate netgroups.
+.SH FILES
+.ne 2
+.na
+\fB\fB/etc/netgroup\fR\fR
+.ad
+.RS 17n
+Used by a network information service's utility to construct a map or table
+that contains \fBnetgroup\fR information. For example, \fBldapaddent\fR(8)
+uses \fB/etc/netgroup\fR to construct an LDAP container. Alternatively,
+the \fB/etc/netgroup\fR file may be used directly if the \fBfiles\fR
+source is specified in \fBnsswitch.conf\fR(5) for the \fBnetgroup\fR
+database.
+.RE
+.SH SEE ALSO
+.BR innetgr (3C),
+.BR hosts (5),
+.BR hosts.equiv (5),
+.BR nsswitch.conf (5),
+.BR passwd (5),
+.BR shadow (5),
+.BR ldapaddent (8),
+.BR makedbm (8),
+.BR share_nfs (8)
+.SH NOTES
+Applications may make general membership tests using the \fBinnetgr()\fR
+function. See \fBinnetgr\fR(3C).
+.sp
+Because the "-" character will not match any specific username or hostname, it
+is commonly used as a placeholder that will match only wildcarded membership
+queries. So, for example:
+.sp
+.in +2
+.nf
+onlyhosts (host1,-,our.domain) (host2,-,our.domain)
+onlyusers (-,john,our.domain) (-,linda,our.domain)
+.fi
+.in -2
+.sp
+.sp
+effectively define netgroups containing only hosts and only users,
+respectively. Any other string that is guaranteed not to be a legal username or
+hostname will also suffice for this purpose.
+.sp
+Use of placeholders will improve search performance.
+.sp
+When a machine with multiple interfaces and multiple names is defined as a
+member of a \fBnetgroup\fR, one must list all of the names. See \fBhosts\fR(5).
+A manageable way to do this is to define a \fBnetgroup\fR containing all of the
+machine names. For example, for a host "gateway" that has names
+"gateway-subnet1" and "gateway-subnet2" one may define the \fBnetgroup\fR:
+.sp
+.in +2
+.nf
+gateway (gateway-subnet1,\|,our.domain) (gateway-subnet2,\|,our.domain)
+.fi
+.in -2
+.sp
+and use this \fBnetgroup\fR "\fBgateway\fR" whenever the host is to be included
+in another \fBnetgroup\fR.
diff --git a/usr/src/man/man5/netid.5 b/usr/src/man/man5/netid.5
new file mode 100644
index 0000000000..ab281b6cd0
--- /dev/null
+++ b/usr/src/man/man5/netid.5
@@ -0,0 +1,176 @@
+'\" te
+.\" Copyright (c) 1994, Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH NETID 5 "November 22, 2021"
+.SH NAME
+netid \- netname database
+.SH SYNOPSIS
+.nf
+\fB/etc/netid\fR
+.fi
+
+.SH DESCRIPTION
+The \fBnetid\fR file is a local source of information on mappings between
+netnames (see \fBsecure_rpc\fR(3NSL)) and user ids or hostnames in the local
+domain. The \fBnetid\fR file can be used in conjunction with, or instead of,
+a network nameservice. The \fBpublickey\fR entry in
+the \fBnsswitch.conf\fR (see \fBnsswitch.conf\fR(5)) file determines which of
+these sources will be queried by the system to translate netnames to local user
+ids or hostnames.
+.sp
+.LP
+Each entry in the \fBnetid\fR file is a single line of the form:
+.sp
+.in +2
+.nf
+\fInetname uid\fR\fB:\fR\fIgid, gid, gid\|.\|.\|.\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+or
+.sp
+.in +2
+.nf
+\fInetname\fR \fB 0:\fR\fBhostname\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The first entry associates a local user id with a netname. The second entry
+associates a hostname with a netname.
+.sp
+.LP
+The \fBnetid\fR file field descriptions are as follows:
+.sp
+.ne 2
+.na
+\fB\fInetname\fR\fR
+.ad
+.RS 12n
+The operating system independent network name for the user or host.
+\fInetname\fR has one of two formats. The format used to specify a host is of
+the form:
+.sp
+\fBunix.\fR\fBhostname\fR\fB@\fR\fIdomain\fR
+.sp
+where \fBhostname\fR is the name of the host and \fIdomain\fR is the network
+domain name.
+.sp
+The format used to specify a user id is of the form:
+.sp
+\fBunix.\fR\fIuid\fR\fB@\fR\fIdomain\fR
+.sp
+where \fIuid\fR is the numerical id of the user and \fIdomain\fR is the network
+domain name.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIuid\fR\fR
+.ad
+.RS 12n
+The numerical id of the user (see \fBpasswd\fR(5)). When specifying a host
+name, \fIuid\fR is always zero.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIgroup\fR\fR
+.ad
+.RS 12n
+The numerical id of the group the user belongs to (see \fBgroup\fR(5)).
+Several groups, separated by commas, may be listed for a single \fIuid\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBhostname\fR\fR
+.ad
+.RS 12n
+The local hostname (see \fBhosts\fR(5)).
+.RE
+
+.sp
+.LP
+Blank lines are ignored. Any part of a line to the right of a `\fB#\fR' symbol
+is treated as a comment.
+.SH EXAMPLES
+\fBExample 1 \fRA sample \fBnetid\fR file.
+.sp
+.LP
+Here is a sample \fBnetid\fR file:
+
+.sp
+.in +2
+.nf
+unix.789@West.Example.COM 789:30,65
+unix.123@Bldg_xy.Example.COM 123:20,1521
+unix.candlestick@campus1.example.NET 0:candlestick
+.fi
+.in -2
+.sp
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/etc/group\fR\fR
+.ad
+.RS 18n
+groups file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/hosts\fR\fR
+.ad
+.RS 18n
+hosts database
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/netid\fR\fR
+.ad
+.RS 18n
+netname database
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/passwd\fR\fR
+.ad
+.RS 18n
+password file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/publickey\fR\fR
+.ad
+.RS 18n
+public key database
+.RE
+
+.SH SEE ALSO
+.BR netname2user (3NSL),
+.BR secure_rpc (3NSL),
+.BR group (5),
+.BR hosts (5),
+.BR nsswitch.conf (5),
+.BR passwd (5),
+.BR publickey (5)
diff --git a/usr/src/man/man5/netmasks.5 b/usr/src/man/man5/netmasks.5
new file mode 100644
index 0000000000..3b06cbf5ef
--- /dev/null
+++ b/usr/src/man/man5/netmasks.5
@@ -0,0 +1,134 @@
+'\" te
+.\" Copyright 1996 Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH NETMASKS 5 "Jan 7, 1997"
+.SH NAME
+netmasks \- network mask database
+.SH SYNOPSIS
+.LP
+.nf
+\fB/etc/inet/netmasks\fR
+.fi
+
+.LP
+.nf
+\fB/etc/netmasks\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBnetmasks\fR file contains network masks used to implement \fBIP\fR
+subnetting. It supports both standard subnetting as specified in \fIRFC-950\fR
+and variable length subnetting as specified in \fIRFC-1519\fR. When using
+standard subnetting there should be a single line for each network that is
+subnetted in this file with the network number, any number of \fBSPACE\fR or
+\fBTAB\fR characters, and the network mask to use on that network. Network
+numbers and masks may be specified in the conventional \fBIP\fR `.' (dot)
+notation (like \fBIP\fR host addresses, but with zeroes for the host part).
+For example,
+.sp
+.ne 2
+.na
+\fB\fR
+.ad
+.sp .6
+.RS 4n
+.sp
+.in +2
+.nf
+128.32.0.0 255.255.255.0
+.fi
+.in -2
+.sp
+
+.RE
+
+.sp
+.LP
+can be used to specify that the Class B network 128.32.0.0 should have eight
+bits of subnet field and eight bits of host field, in addition to the standard
+sixteen bits in the network field.
+.sp
+.LP
+When using variable length subnetting, the format is identical. However, there
+should be a line for each subnet with the first field being the subnet and the
+second field being the netmask that applies to that subnet. The users of the
+database, such as \fBifconfig\fR(8), perform a lookup to find the longest
+possible matching mask. It is possible to combine the \fIRFC-950\fR and
+\fIRFC-1519\fR form of subnet masks in the netmasks file. For example,
+.sp
+.ne 2
+.na
+\fB\fR
+.ad
+.sp .6
+.RS 4n
+.sp
+.in +2
+.nf
+128.32.0.0 255.255.255.0
+128.32.27.0 255.255.255.240
+128.32.27.16 255.255.255.240
+128.32.27.32 255.255.255.240
+128.32.27.48 255.255.255.240
+128.32.27.64 255.255.255.240
+128.32.27.80 255.255.255.240
+128.32.27.96 255.255.255.240
+128.32.27.112 255.255.255.240
+128.32.27.128 255.255.255.240
+128.32.27.144 255.255.255.240
+128.32.27.160 255.255.255.240
+128.32.27.176 255.255.255.240
+128.32.27.192 255.255.255.240
+128.32.27.208 255.255.255.240
+128.32.27.224 255.255.255.240
+128.32.27.240 255.255.255.240
+128.32.64.0 255.255.255.192
+.fi
+.in -2
+.sp
+
+.RE
+
+.sp
+.LP
+can be used to specify different netmasks in different parts of the 128.32.0.0
+Class B network number. Addresses 128.32.27.0 through 128.32.27.255 have a
+subnet mask with 28 bits in the combined network and subnet fields (often
+referred to as the subnet field) and 4 bits in the host field. Furthermore,
+addresses 128.32.64.0 through 128.32.64.63 have a 26 bits in the subnet field.
+Finally, all other addresses in the range 128.32.0.0 through 128.32.255.255
+have a 24 bit subnet field.
+.sp
+.LP
+Invalid entries are ignored.
+.SH SEE ALSO
+.sp
+.LP
+.BR inet (4P),
+.BR ifconfig (8)
+.sp
+.LP
+Postel, Jon, and Mogul, Jeff, \fIInternet Standard Subnetting Procedure\fR,
+\fBRFC\fR 950, Network Information Center, \fBSRI\fR International, Menlo Park,
+Calif., August 1985.
+.sp
+.LP
+V. Fuller, T. Li, J. Yu, K. Varadhan, \fIClassless Inter-Domain Routing
+(CIDR): an Address Assignment and Aggregation Strategy\fR, \fBRFC\fR 1519,
+Network Information Center, \fBSRI\fR International, Menlo Park, Calif.,
+September 1993.
+.sp
+.LP
+T. Pummill, B. Manning, \fIVariable Length Subnet Table For IPv4\fR, \fBRFC\fR
+1878, Network Information Center, \fBSRI\fR International, Menlo Park, Calif.,
+December 1995.
+.SH NOTES
+.sp
+.LP
+\fB/etc/inet/netmasks\fR is the official SVr4 name of the \fBnetmasks\fR file.
+The symbolic link \fB/etc/netmasks\fR exists for \fBBSD\fR compatibility.
diff --git a/usr/src/man/man5/netrc.5 b/usr/src/man/man5/netrc.5
new file mode 100644
index 0000000000..036a09d4e0
--- /dev/null
+++ b/usr/src/man/man5/netrc.5
@@ -0,0 +1,149 @@
+'\" te
+.\" Copyright (c) 2006 Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH NETRC 5 "Aug 25, 2006"
+.SH NAME
+netrc \- file for ftp remote login data
+.SH DESCRIPTION
+.LP
+The \fB\&.netrc\fR file contains data for logging in to a remote host over the
+network for file transfers by \fBftp\fR(1). This file resides in the user's
+home directory on the machine initiating the file transfer. Its permissions
+should be set to disallow read access by group and others. See \fBchmod\fR(1).
+.sp
+.LP
+Tokens can be separated by \fBSPACE\fR, \fBTAB\fR, or \fBNEWLINE\fR characters.
+The following tokens are supported:
+.sp
+.ne 2
+.na
+\fB\fBaccount\fR \fIstring\fR\fR
+.ad
+.RS 19n
+Supply an additional account password. If this token is present, the auto-login
+process supplies the specified string if the remote server requires an
+additional account password. If the remote server does not require an
+additional account password, the auto-login process initiates an \fBACCT\fR
+command.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdefault\fR\fR
+.ad
+.RS 19n
+Same as \fBmachine\fR \fIname\fR, except that default matches any name. There
+can be only one \fBdefault\fR token, and it must be after all \fBmachine\fR
+tokens. The \fBdefault\fR token is normally used as follows:
+.sp
+.in +2
+.nf
+default login anonymous password \fIuser\fR@\fIsite\fR
+.fi
+.in -2
+.sp
+
+Such an entry gives the user automatic anonymous \fBftp\fR login to machines
+not specified in \fB\&.netrc\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBlogin\fR \fIname\fR\fR
+.ad
+.RS 19n
+Identify a user on the remote machine. If this token is present, the auto-login
+process initiates a login using the specified name.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmachine\fR \fIname\fR\fR
+.ad
+.RS 19n
+Identify a remote machine name. The auto-login process searches the
+\fB\&.netrc\fR file for a \fBmachine\fR token that matches the remote machine
+specified on the \fBftp\fR command line or as an \fBopen\fR command argument.
+Once a match is made, the subsequent \fB\&.netrc\fR tokens are processed,
+stopping when the \fBEOF\fR is reached or another \fBmachine\fR token is
+encountered.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmacdef\fR \fIname\fR\fR
+.ad
+.RS 19n
+Define a macro. This token functions the same as \fBftp\fR \fBmacdef\fR. A
+macro is defined with the specified name; its contents begin with the next
+\fB\&.netrc\fR line and continue until a null line (consecutive \fBNEWLINE\fR
+characters) is encountered. If a macro named \fBinit\fR is defined, it is
+automatically executed as the last step in the auto-login process.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpassword\fR \fIstring\fR\fR
+.ad
+.RS 19n
+Supply a password. If this token is present, the auto-login process supplies
+the specified string if the remote server requires a password as part of the
+login process. If this token is present in the \fB\&.netrc\fR file, \fBftp\fR
+aborts the auto-login process if the \fB\&.netrc\fR is readable by anyone
+besides the user.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBskipsyst\fR\fR
+.ad
+.RS 19n
+Skip the \fBSYST\fR command that is sent by default to all remote servers upon
+connection. The system command is what enables the automatic use of binary mode
+rather than the protocol default ascii mode.
+.sp
+As some older servers cannot handle the \fBftp\fR command, this directive is
+provided to allow inter-operability with these servers.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRA Sample \fB\&.netrc\fR File
+.sp
+.LP
+A \fB\&.netrc\fR file containing the following line:
+
+.sp
+.in +2
+.nf
+machine ray login demo password mypassword
+.fi
+.in -2
+
+.sp
+.LP
+allows an autologin to the machine \fBray\fR using the login name \fBdemo\fR
+with password \fBmypassword\fR.
+
+.SH FILES
+.ne 2
+.na
+\fB\fB~/.netrc\fR\fR
+.ad
+.RS 12n
+
+.RE
+
+.SH SEE ALSO
+.LP
+.BR chmod (1),
+.BR ftp (1)
diff --git a/usr/src/man/man5/networks.5 b/usr/src/man/man5/networks.5
new file mode 100644
index 0000000000..9171c8cc29
--- /dev/null
+++ b/usr/src/man/man5/networks.5
@@ -0,0 +1,74 @@
+'\" te
+.\" Copyright 1989 AT&T
+.\" Copyright (C) 2002, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH NETWORKS 5 "Feb 25, 2017"
+.SH NAME
+networks \- network name database
+.SH SYNOPSIS
+.LP
+.nf
+\fB/etc/inet/networks\fR
+.fi
+
+.LP
+.nf
+\fB/etc/networks\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBnetworks\fR file is a local source of information regarding the networks
+which comprise the Internet. The networks file can be used in conjunction
+with, or instead of, other networks sources, including the NIS maps
+\fBnetworks.byname\fR and \fBnetworks.byaddr\fR.
+Programs use the \fBgetnetbyname\fR(3SOCKET) routines to access
+this information.
+.sp
+.LP
+The network file has a single line for each network, with the following
+information:
+.sp
+.in +2
+.nf
+\fIofficial-network-name network-number aliases\fR
+.fi
+.in -2
+
+.sp
+.LP
+Items are separated by any number of \fBSPACE\fR or \fBTAB\fR characters. A
+`\fB#\fR' indicates the beginning of a comment. Characters up to the end of the
+line are not interpreted by routines which search the file. This file is
+normally created from the official network database maintained at the Network
+Information Control Center (NIC), though local changes may be required to bring
+it up to date regarding unofficial aliases and/or unknown networks.
+.sp
+.LP
+Network numbers may be specified in the conventional dot (`\fB\&.\fR') notation
+using the \fBinet_network\fR routine from the Internet address manipulation
+library, \fBinet\fR(4P). Network names may contain any printable character
+other than a field delimiter, \fBNEWLINE\fR, or comment character.
+.SH SEE ALSO
+.LP
+.BR getnetbyaddr (3SOCKET),
+.BR getnetbyname (3SOCKET),
+.BR inet (3SOCKET),
+.BR inet (4P),
+.BR nsswitch.conf (5)
+.SH NOTES
+.LP
+The official SVR4 name of the \fBnetworks\fR file is \fB/etc/inet/networks\fR.
+The symbolic link \fB/etc/networks\fR exists for \fBBSD\fR compatibility.
+.sp
+.LP
+The network number in \fBnetworks\fR database is the host address shifted to
+the right by the number of 0 bits in the address mask. For example, for the
+address \fB24.132.47.86\fR that has a mask of \fBfffffe00\fR, its network
+number is \fB803351\fR. This is obtained when the address is shifted right by 9
+bits. The address maps to \fB12.66.23\fR. The trailing 0 bits should not be
+specified. The network number here is different from that described in
+\fBnetmasks\fR(5). For this example, the entry in \fBnetmasks\fR would be
+\fB24.132.46.0 fffffe00\fR.
diff --git a/usr/src/man/man5/nfs.5 b/usr/src/man/man5/nfs.5
new file mode 100644
index 0000000000..d53d7bfe98
--- /dev/null
+++ b/usr/src/man/man5/nfs.5
@@ -0,0 +1,319 @@
+.\"
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.\"
+.\"
+.\" Copyright 1989 AT&T
+.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 2016 Nexenta Systems, Inc.
+.\" Copyright 2020 Joyent, Inc.
+.\"
+.Dd November 22, 2021
+.Dt NFS 5
+.Os
+.Sh NAME
+.Nm nfs
+.Nd NFS configuration properties
+.Sh DESCRIPTION
+The behavior of the
+.Xr nfsd 8 ,
+.Xr nfsmapid 8 ,
+.Xr lockd 8 ,
+and
+.Xr mountd 8
+daemons and
+.Xr mount_nfs 8
+command is controlled by property values that are stored in the Service
+Management Facility, smf(7).
+The
+.Xr sharectl 8
+command should be used to query or change values for these properties.
+.Pp
+Changes made to
+.Nm
+property values on the
+.Nm nfsd ,
+.Nm lockd ,
+.Nm mountd ,
+or
+.Nm mount_nfs
+command line override the values set using
+.Xr sharectl 8 .
+.Pp
+The following list describes the properties:
+.Bl -tag -width Ds
+.It Xo
+.Sy client_versmin Ns = Ns Ar num
+.br
+.Sy client_versmax Ns = Ns Ar num
+.Xc
+The NFS client only uses NFS versions in the range specified by these
+properties.
+Valid values of versions are: 2, 3, and 4.
+Default minimum version is
+.Li 2 ,
+while default maximum is
+.Li 4 .
+.Pp
+You can override this range on a per-mount basis by using the
+.Fl o Sy vers Ns =
+option to
+.Xr mount_nfs 8 .
+.It Xo
+.Sy server_versmin Ns = Ns Ar num
+.br
+.Sy server_versmax Ns = Ns Ar num
+.Xc
+The NFS server only uses NFS versions in the range specified by these
+properties.
+Valid values of versions are: 2, 3, and 4.
+Default minimum version is
+.Li 2 ,
+while the default maximum version is
+.Li 4 .
+.It Sy server_delegation Ns = Ns Sy on Ns | Ns Sy off
+By default the NFS server provides delegations to clients.
+The user can turn off delegations for all exported filesystems by setting this
+variable to
+.Li off .
+This variable only applies to NFS Version 4.
+.It Sy nfsmapid_domain Ns = Ns Op Ar string
+By default, the
+.Nm nfsmapid
+uses the DNS domain of the system.
+This setting overrides the default.
+This domain is used for identifying user and group attribute strings in the NFS
+Version 4 protocol.
+Clients and servers must match with this domain for operation to proceed
+normally.
+This variable only applies to NFS Version 4.
+See
+.Sx Setting nfsmapid_domain
+below for further details.
+.It Sy max_connections Ns = Ns Ar num
+Sets the maximum number of concurrent, connection-oriented connections.
+The default is
+.Li -1
+.Pq unlimited .
+Equivalent to the
+.Fl c
+option in
+.Nm nfsd .
+.It Sy listen_backlog Ns = Ns Ar num
+Set connection queue length for the NFS over a connection-oriented transport.
+The default value is
+.Li 32 ,
+meaning 32 entries in the queue.
+Equivalent to the
+.Fl l
+option in
+.Nm nfsd .
+.It Sy protocol Ns = Ns Op Sy all Ns | Ns Ar protocol
+Start
+.Nm nfsd
+over the specified protocol only.
+Equivalent to the
+.Fl p
+option in
+.Nm nfsd .
+.Sy all
+is equivalent to
+.Fl a
+on the
+.Nm nfsd
+command line.
+Mutually exclusive of
+.Sy device .
+For the UDP protocol, only version 2 and version 3 service is established.
+NFS Version 4 is not supported for the UDP protocol.
+.It Sy device Ns = Ns Op Ar devname
+Start NFS daemon for the transport specified by the given device only.
+Equivalent to the
+.Fl t
+option in
+.Nm nfsd .
+Mutually exclusive of
+.Sy protocol .
+.It Sy servers Ns = Ns Ar num
+Maximum number of concurrent NFS requests.
+Equivalent to last numeric argument on the
+.Nm nfsd
+command line.
+The default is
+.Li 1024 .
+.It Sy lockd_listen_backlog Ns = Ns Ar num
+Set connection queue length for
+.Nm lockd
+over a connection-oriented transport.
+The default and minimum value is
+.Li 32 .
+.It Sy lockd_servers Ns = Ns Ar num
+Maximum number of concurrent
+.Nm lockd
+requests.
+The default is 256.
+.It Sy lockd_retransmit_timeout Ns = Ns Ar num
+Retransmit timeout, in seconds, before
+.Nm lockd
+retries.
+The default is
+.Li 5 .
+.It Sy grace_period Ns = Ns Ar num
+Grace period, in seconds, that all clients
+.Pq both NLM and NFSv4
+have to reclaim locks after a server reboot.
+This parameter also controls the NFSv4 lease interval.
+The default is
+.Li 90 .
+.It Sy mountd_listen_backlog Ns = Ns Ar num
+Set the connection queue length for
+.Nm mountd
+over a connection-oriented transport.
+The default value is
+.Li 64 .
+.It Sy mountd_max_threads Ns = Ns Ar num
+Maximum number of threads for
+.Nm mountd .
+The default value is
+.Li 16 .
+.It Sy mountd_port Ns = Ns Ar num
+The IP port number on which
+.Nm mountd
+should listen.
+The default value is
+.Li 0 ,
+which means it should use a default binding.
+.It Sy statd_port Ns = Ns Ar num
+The IP port number on which
+.Nm statd
+should listen.
+The default value is
+.Li 0 ,
+which means it should use a default binding.
+.El
+.Ss Setting nfsmapid_domain
+As described above, the setting for
+.Sy nfsmapid_domain
+overrides the domain used by
+.Xr nfsmapid 8
+for building and comparing outbound and inbound attribute strings, respectively.
+This setting overrides any other mechanism for setting the NFSv4 domain.
+In the absence of a
+.Sy nfsmapid_domain
+setting, the
+.Xr nfsmapid 8
+daemon determines the NFSv4 domain as follows:
+.Bl -bullet
+.It
+If a properly configured
+.Pa /etc/resolv.conf
+.Po see
+.Xr resolv.conf 5
+.Pc
+exists,
+.Nm nfsmapid
+queries specified nameserver(s) for the domain.
+.It
+If a properly configured
+.Pa /etc/resolv.conf
+.Po see
+.Xr resolv.conf 5
+.Pc
+exists, but the queried nameserver does not have a proper record of the domain
+name,
+.Nm nfsmapid
+attempts to obtain the domain name through the BIND interface
+.Po see
+.Xr resolver 3RESOLV
+.Pc .
+.It
+If no
+.Pa /etc/resolv.conf
+exists,
+.Nm nfsmapid
+falls back on using the configured domain name
+.Po see
+.Xr domainname 8
+.Pc ,
+which is returned with the leading domain suffix removed.
+For example, for
+.Li widgets.sales.example.com ,
+.Li sales.example.com
+is returned.
+.It
+If
+.Pa /etc/resolv.conf
+does not exist, no domain name has been configured
+.Po or no
+.Pa /etc/defaultdomain
+exists
+.Pc ,
+.Nm nfsmapid
+falls back on obtaining the domain name from the host name, if the host name
+contains a fully qualified domain name
+.Pq FQDN .
+.El
+.Pp
+If a domainname is still not obtained following all of the preceding steps,
+.Nm nfsmapid
+will have no domain configured.
+This results in the following behavior:
+.Bl -bullet
+.It
+Outbound
+.Qq owner
+and
+.Qq owner_group
+attribute strings are encoded as literal id's.
+For example, the UID 12345 is encoded as
+.Li 12345 .
+.It
+.Nm nfsmapid
+ignores the
+.Qq domain
+portion of the inbound attribute string and performs name service lookups only
+for the user or group.
+If the user/group exists in the local system name service databases, then the
+proper uid/gid will be mapped even when no domain has been configured.
+.Pp
+This behavior implies that the same administrative user/group domain exists
+between NFSv4 client and server (that is, the same uid/gid's for users/groups
+on both client and server).
+In the case of overlapping id spaces, the inbound attribute string could
+potentially be mapped to the wrong id.
+However, this is not functionally different from mapping the inbound string to
+.Sy nobody ,
+yet provides greater flexibility.
+.El
+.Sh ZONES
+NFS can be served out of a non-global zone.
+All of the above documentation applies to an in-zone NFS server.
+File sharing in zones is restricted to filesystems a zone completely controls.
+Some zone brands (see
+.Xr brands 7 )
+do not give the zone's root its own filesystem, for example.
+Delegated ZFS datasets to a zone are shareable, as well as lofs-remounted
+directories.
+The zone must have sys_nfs privileges; most brands grant this already.
+.Sh SEE ALSO
+.Xr brands 7 ,
+.Xr smf 7 ,
+.Xr zones 7 ,
+.Xr lockd 8 ,
+.Xr mount_nfs 8 ,
+.Xr mountd 8 ,
+.Xr nfsd 8 ,
+.Xr nfsmapid 8 ,
+.Xr sharectl 8
diff --git a/usr/src/man/man5/nfslog.conf.5 b/usr/src/man/man5/nfslog.conf.5
new file mode 100644
index 0000000000..b69f3a5c4e
--- /dev/null
+++ b/usr/src/man/man5/nfslog.conf.5
@@ -0,0 +1,180 @@
+'\" te
+.\" Copyright (c) 1999, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH NFSLOG.CONF 5 "Dec 2, 2004"
+.SH NAME
+nfslog.conf \- NFS server logging configuration file
+.SH SYNOPSIS
+.LP
+.nf
+\fB/etc/nfs/nfslog.conf\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBnfslog.conf\fR file specifies the location of the \fBNFS\fR server logs,
+as well as the location of the private work files used by the \fBNFS\fR server
+and \fBnfslogd\fR(8) daemon during logging. Each entry in the file consists of
+a mandatory tag identifier and one or more parameter identifiers. The parameter
+identifier specifies the value or location of the specific parameter. For
+instance, the parameter identifier "\fBlog=/var/nfs/logs/serverLog\fR"
+specifies the location of the \fBNFS\fR server activity log. The mandatory tag
+identifier serves as an index into the \fB/etc/nfs/nfslog.conf\fR file to
+identify the various parameters to be used. At export time, the
+\fBshare_nfs\fR(8) command specifies the \fBNFS\fR server logging parameters
+to use by associating a tag from the \fB/etc/nfs/nfslog.conf\fR file to the
+exported file system. It is legal for more than one file system to be exported
+using the same logging tag identifier.
+.sp
+.LP
+NFS server logging is not supported on Solaris machines that are using NFS
+Version 4.
+.sp
+.LP
+A "global" tag identifier is included in \fB/etc/nfs/nfslog.conf\fR. It
+specifies the default set of values to be used during logging. If no tag
+identifier is specified at export time, then the values in the "global" entry
+are used. The "global" values can be modified by updating this entry in
+\fB/etc/nfs/nfslog.conf\fR.
+.sp
+.LP
+Each entry in the file must contain a mandatory tag identifier and at least one
+parameter/value pair. If a parameter is not specified in a given entry, the
+global value of the parameter will be used. The exact entry syntax follows:
+.sp
+.in +2
+.nf
+<tag> [defaultdir=<path>] [log=<path><file>] \e
+[fhtable=<path><file>] [buffer=<path><file>] [logformat=basic|extended]
+.fi
+.in -2
+
+.sp
+.ne 2
+.na
+\fB\fBdefaultdir=\fI<path>\fR\fR\fR
+.ad
+.RS 28n
+Specifies the directory where the logging files and working files will be
+placed. This path is prepended to all relative paths specified in other
+parameters.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBlog=\fI<path>\fR\fI<file>\fR\fR\fR
+.ad
+.RS 28n
+Specifies the location of the user-readable log file. The log will be located
+in the \fBdefaultdir\fR, unless \fB<path>\fR is an absolute path.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfhtable=\fI<path>\fR\fI<file>\fR\fR\fR
+.ad
+.RS 28n
+Specifies the location of the private file handle to path mapping database
+files. These database files are for the private use of the \fBNFS\fR server
+kernel module and the \fBnfslog\fRd daemon. These files will be located in the
+\fBdefaultdir\fR, unless \fB<path>\fR is an absolute path. These database files
+are permanently stored in the file system. Consult \fBnfslogd\fR(8) for
+information on pruning the database files.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBbuffer=\fI<path>\fR\fI<file>\fR\fR\fR
+.ad
+.RS 28n
+Specifies the location of the private work buffer file used by the \fBNFS\fR
+server kernel module to record raw \fBRPC\fR information. This file is later
+processed by the \fBnfslog\fR daemon, which in turn generates the user-readable
+log file. This work buffer file will be located in the \fBdefaultdir\fR, unless
+\fB<path>\fR is an absolute path.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBlogformat=basic|extended\fR\fR
+.ad
+.RS 28n
+Sets the format of the user-readable log file. If not specified, the basic
+format is used. The basic format is compatible with log files generated by the
+Washington University \fBFTPd\fR. The extended format provides a more detailed
+log, which includes directory modification operations not included in the basic
+format, such as \fBmkdir\fR, \fBrmdir\fR and \fBremove\fR. Note that the
+extended format is not compatible with Washington University's \fBFTPd\fR log
+format.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRUsing the \fBglobal\fR Tag
+.sp
+.LP
+The "global" tag may be modified so that all exported file systems that enabled
+logging use a common set of parameters that conform to the specific needs of
+the user. These values are used until a specific tag identifier overrides them.
+
+.sp
+.in +2
+.nf
+global defaultdir=/var/nfs log=logs/nfslog \e
+ fhtable=tables/fhtable buffer=buffers/nfslog_workbuffer \e
+ logformat=basic
+.fi
+.in -2
+
+.LP
+\fBExample 2 \fROverriding the Global \fBdefaultdir\fR and \fBlogformat\fR
+.sp
+.LP
+Because log files can become very large, it may be desirable to store the logs
+and working files in separate file systems. This can be easily accomplished by
+simply specifying a different \fBdefaultdir\fR for every file system exported
+by means of a unique tag:
+
+.sp
+.in +2
+.nf
+engineering defaultdir=/engineering/logging \e
+ logformat=extended
+accounting defaultdir=/accounting/logging
+marketing defaultdir=/marketing/logging
+.fi
+.in -2
+
+.sp
+.LP
+File systems shared with the engineering identifier will have their logs and
+workfiles located in \fB/engineering/logging\fR. For instance, the log file
+will be located at \fB/engineering/logging/logs/nfslog\fR. Note that the
+engineering log file will be stored in the extended format, while the rest of
+the log files will remain in the basic format.
+
+.sp
+.LP
+Any of the parameters can be updated in a tag identifier, which overrides the
+global settings.
+
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7),
+.BR nfslogd (8),
+.BR share_nfs (8)
+.SH NOTES
+.sp
+.LP
+Logs, work files, and file handle to path mapping database can become very
+large. Be aware of appropriate placement within the file system name space. See
+\fBnfslogd\fR(8)) for information on pruning the database files and cycling
+logs.
diff --git a/usr/src/man/man5/nfssec.5 b/usr/src/man/man5/nfssec.5
deleted file mode 100644
index da696103ca..0000000000
--- a/usr/src/man/man5/nfssec.5
+++ /dev/null
@@ -1,141 +0,0 @@
-'\" te
-.\" Copyright 2014 Nexenta Systems, Inc. All rights reserved.
-.\" Copyright (c) 2001, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH NFSSEC 5 "Nov 20, 2014"
-.SH NAME
-nfssec \- overview of NFS security modes
-.SH DESCRIPTION
-.LP
-The \fBmount_nfs\fR(1M) and \fBshare_nfs\fR(1M) commands each provide a way to
-specify the security mode to be used on an \fBNFS\fR file system through the
-\fBsec=\fR\fImode\fR option. \fImode\fR can be \fBsys\fR, \fBdh\fR, \fBkrb5\fR,
-\fBkrb5i\fR, \fBkrb5p\fR, or \fBnone\fR. These security modes can also be added
-to the automount maps. Note that \fBmount_nfs\fR(1M) and \fBautomount\fR(1M) do
-not support \fBsec=none\fR at this time. \fBmount_nfs\fR(1M) allows you to
-specify a single security mode; \fBshare_nfs\fR(1M) allows you to specify
-multiple modes (or \fBnone\fR). With multiple modes, an NFS client can choose
-any of the modes in the list.
-.sp
-.LP
-The \fBsec=\fR\fImode\fR option on the \fBshare_nfs\fR(1M) command line
-establishes the security mode of \fBNFS\fR servers. If the \fBNFS\fR connection
-uses the \fBNFS\fR Version 3 protocol, the \fBNFS\fR clients must query the
-server for the appropriate \fImode\fR to use. If the \fBNFS\fR connection uses
-the \fBNFS\fR Version 2 protocol, then the \fBNFS\fR client uses the default
-security mode, which is currently \fBsys\fR. \fBNFS\fR clients may force the
-use of a specific security mode by specifying the \fBsec=\fR\fImode\fR option
-on the command line. However, if the file system on the server is not shared
-with that security mode, the client may be denied access.
-.sp
-.LP
-If the \fBNFS\fR client wants to authenticate the \fBNFS\fR server using a
-particular (stronger) security mode, the client wants to specify the security
-mode to be used, even if the connection uses the \fBNFS\fR Version 3 protocol.
-This guarantees that an attacker masquerading as the server does not compromise
-the client.
-.sp
-.LP
-The \fBNFS\fR security modes are described below. Of these, the \fBkrb5\fR,
-\fBkrb5i\fR, \fBkrb5p\fR modes use the Kerberos V5 protocol for authenticating
-and protecting the shared filesystems. Before these can be used, the system
-must be configured to be part of a Kerberos realm. See \fBkerberos\fR(5).
-.sp
-.ne 2
-.na
-\fB\fBsys\fR\fR
-.ad
-.RS 9n
-Use \fBAUTH_SYS\fR authentication. The user's UNIX user-id and group-ids are
-passed in the clear on the network, unauthenticated by the \fBNFS\fR server.
-This is the simplest security method and requires no additional administration.
-It is the default used by Solaris \fBNFS\fR Version 2 clients and Solaris
-\fBNFS\fR servers.
-.sp
-According to the ONC RPC specification (RFC 5531), \fBAUTH_SYS\fR
-authentication supports up to 16 groups for a user only. To workaround this
-limitation, in the case where the \fBNFS\fR client supplied 16 groups in
-\fBAUTH_SYS\fR and \fBNGROUPS_MAX\fR is more than 16, the \fBNFS\fR server
-will lookup the user's groups on the server instead of relying on the list of
-groups provided by the \fBNFS\fR client via \fBAUTH_SYS\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdh\fR\fR
-.ad
-.RS 9n
-Use a Diffie-Hellman public key system (\fBAUTH_DES\fR, which is referred to as
-\fBAUTH_DH\fR in the forthcoming Internet \fBRFC).\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBkrb5\fR\fR
-.ad
-.RS 9n
-Use Kerberos V5 protocol to authenticate users before granting access to the
-shared filesystem.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBkrb5i\fR\fR
-.ad
-.RS 9n
-Use Kerberos V5 authentication with integrity checking (checksums) to verify
-that the data has not been tampered with.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBkrb5p\fR\fR
-.ad
-.RS 9n
-User Kerberos V5 authentication, integrity checksums, and privacy protection
-(encryption) on the shared filesystem. This provides the most secure filesystem
-sharing, as all traffic is encrypted. It should be noted that performance might
-suffer on some systems when using \fBkrb5p\fR, depending on the computational
-intensity of the encryption algorithm and the amount of data being transferred.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnone\fR\fR
-.ad
-.RS 9n
-Use null authentication (\fBAUTH_NONE\fR). \fBNFS\fR clients using
-\fBAUTH_NONE\fR have no identity and are mapped to the anonymous user
-\fBnobody\fR by \fBNFS\fR servers. A client using a security mode other than
-the one with which a Solaris \fBNFS\fR server shares the file system has its
-security mode mapped to \fBAUTH_NONE.\fR In this case, if the file system is
-shared with \fBsec=none,\fR users from the client are mapped to the
-anonymous user. The \fBNFS\fR security mode \fBnone\fR is supported by
-\fBshare_nfs\fR(1M), but not by \fBmount_nfs\fR(1M) or \fBautomount\fR(1M).
-.RE
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/etc/nfssec.conf\fR\fR
-.ad
-.RS 20n
-\fBNFS\fR security service configuration file
-.RE
-
-.SH SEE ALSO
-.LP
-\fBautomount\fR(1M), \fBkclient\fR(1M), \fBmount_nfs\fR(1M),
-\fBshare_nfs\fR(1M), \fBrpc_clnt_auth\fR(3NSL), \fBsecure_rpc\fR(3NSL),
-\fBnfssec.conf\fR(4), \fBattributes\fR(5), \fBkerberos\fR(5)
-.SH NOTES
-.LP
-\fB/etc/nfssec.conf\fR lists the \fBNFS\fR security services. Do not edit this
-file. It is not intended to be user-configurable. See \fBkclient\fR(1M).
diff --git a/usr/src/man/man5/nfssec.conf.5 b/usr/src/man/man5/nfssec.conf.5
new file mode 100644
index 0000000000..9210f26d49
--- /dev/null
+++ b/usr/src/man/man5/nfssec.conf.5
@@ -0,0 +1,26 @@
+'\" te
+.\" Copyright (c) 2001 Sun Microsystems, Inc. All rights reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH NFSSEC.CONF 5 "Nov 12, 2001"
+.SH NAME
+nfssec.conf \- list NFS security modes
+.SH SYNOPSIS
+.LP
+.nf
+\fB/etc/nfssec.conf\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBnfssec.conf\fR file lists the NFS security modes supported on a system.
+These modes are defined in \fBnfssec\fR(7).
+.sp
+.LP
+The \fBnfssec.conf\fR file should not be edited by a user.
+.SH SEE ALSO
+.sp
+.LP
+.BR nfssec (7)
diff --git a/usr/src/man/man5/nodename.5 b/usr/src/man/man5/nodename.5
new file mode 100644
index 0000000000..fb4176decc
--- /dev/null
+++ b/usr/src/man/man5/nodename.5
@@ -0,0 +1,66 @@
+'\" te
+.\" Copyright 2015 Nexenta Systems, Inc. All rights reserved.
+.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH NODENAME 5 "Feb 25, 2017"
+.SH NAME
+nodename \- local source for system name
+.SH SYNOPSIS
+.LP
+.nf
+\fB/etc/nodename\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+When a machine is standalone or its IP address is configured locally, the
+\fB/etc/nodename\fR file contains the system name. By convention, the system
+name is the same as the hostname associated with the IP address of the primary
+network interface, for example, \fBhostname.hme0\fR.
+.sp
+.LP
+If the machine's network configuration is delivered by the RPC bootparams
+protocol, the \fB/etc/nodename\fR file is not used, as the system name is
+delivered by the remote service.
+.sp
+.LP
+If the machine's network configuration is delivered by the DHCP protocol, the
+\fB/etc/nodename\fR file is used only if the DHCP server does not provide a
+value for the Hostname option (DHCP standard option code 12).
+.sp
+.LP
+A system name configured in \fB/etc/nodename\fR should be unique within the
+system's name service domain in order to ensure that any network services
+provided by the system will operate correctly.
+.sp
+.LP
+Given a system name value, regardless of source, the \fBuname\fR utility
+invoked with the \fB-S\fR option is used to set the system name of the running
+system.
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRSyntax
+.sp
+.LP
+The syntax for \fBnodename\fR consists of a single line containing the system's
+name. For example, for a system named \fBmyhost\fR:
+
+.sp
+.in +2
+.nf
+myhost
+.fi
+.in -2
+
+.SH SEE ALSO
+.LP
+.BR uname (1),
+.BR attributes (7),
+.BR named (8),
+.BR ypbind (8)
+.SH NOTES
+.LP
+The \fBnodename\fR file is modified by Solaris installation and de-installation
+scripts.
diff --git a/usr/src/man/man5/nologin.5 b/usr/src/man/man5/nologin.5
new file mode 100644
index 0000000000..f31ae369bf
--- /dev/null
+++ b/usr/src/man/man5/nologin.5
@@ -0,0 +1,43 @@
+'\" te
+.\" Copyright (c) 1995 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH NOLOGIN 5 "Dec 21, 1995"
+.SH NAME
+nologin \- message displayed to users attempting to log on in the process of a
+system shutdown
+.SH SYNOPSIS
+.LP
+.nf
+\fB/etc/nologin\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fB/etc/nologin\fR file contains the message displayed to users attempting
+to log on to a machine in the process of being shutdown. After displaying the
+contents of the \fBnologin\fR file, the \fBlogin\fR procedure terminates,
+preventing the user from logging onto the machine.
+.sp
+.LP
+This procedure is preferable to terminating a user's session by
+\fBshutdown\fR shortly after the user has logged on.
+.sp
+.LP
+Logins by super-user are not affected by this procedure.
+.sp
+.LP
+The message contained in the \fBnologin\fR file is editable by super-user. A
+typical \fBnologin\fR file contains a message similar to:
+.sp
+.LP
+\fBNO LOGINS: System going down in 10 minutes.\fR
+.SH SEE ALSO
+.sp
+.LP
+.BR login (1),
+.BR rlogin (1),
+.BR telnet (1),
+.BR shutdown (8)
diff --git a/usr/src/man/man5/note.5 b/usr/src/man/man5/note.5
new file mode 100644
index 0000000000..b79dc92bac
--- /dev/null
+++ b/usr/src/man/man5/note.5
@@ -0,0 +1,79 @@
+'\" te
+.\" Copyright (c) 1995, Sun Microsystems, Inc.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH NOTE 5 "Jan 17, 1995"
+.SH NAME
+note \- specify legal annotations
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/note\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+Each file in this directory contains the \fBNOTE\fR (also \fB_NOTE\fR)
+annotations legal for a single tool. The name of the file, by convention,
+should be the tool vendor's stock name, followed by a hyphen, followed by the
+tool name. For example, for Sun's \fBlock_lint\fR tool the filename should be
+\fBSUNW-lock_lint\fR.
+.sp
+.LP
+The file should contain the names of the annotations understood by the tool,
+one per line. For example, if a tool understands the following annotations:
+.sp
+.in +2
+.nf
+NOTE(NOT_REACHED)
+NOTE(MUTEX_PROTECTS_DATA(list_lock, list_head))
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+then its file in \fB/usr/lib/note\fR should contain the entries:
+.sp
+.in +2
+.nf
+\fBNOT_REACHED
+MUTEX_PROTECTS_DATA\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Blank lines, and lines beginning with a pound (#), are ignored.
+.sp
+.LP
+While \fB/usr/lib/note\fR is the default directory tools search for such files,
+they can be made to search other directories instead simply by setting
+environment variable \fBNOTE\fR\fBPATH\fR to contain the paths, separated by
+colons, of directories to be searched, e.g.,
+\fB/usr/mytool/note:/usr/lib/note\fR.
+.SH USAGE
+.sp
+.LP
+These files are used by such tools whenever they encounter \fBNOTE\fRs they do
+not understand. If a file in \fB/usr/lib/note\fR contains the annotation, then
+it is valid. If no such file contains the annotation, then the tool should
+issue a warning complaining that it might be invalid.
+.SH ENVIRONMENT VARIABLES
+.sp
+.ne 2
+.na
+\fB\fBNOTE\fR\fBPATH\fR\fR
+.ad
+.RS 12n
+specify paths to be searched for annotation files. Paths are separated by
+colons (":").
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR NOTE (3EXT)
diff --git a/usr/src/man/man5/notrouter.5 b/usr/src/man/man5/notrouter.5
new file mode 100644
index 0000000000..38c5872275
--- /dev/null
+++ b/usr/src/man/man5/notrouter.5
@@ -0,0 +1,24 @@
+'\" te
+.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH NOTROUTER 5 "Sep 10, 2004"
+.SH NAME
+notrouter \- flag to turn off IPv4 routing
+.SH SYNOPSIS
+.LP
+.nf
+\fB/etc/notrouter\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fB/etc/notrouter\fR file is no longer used as of the current release of
+the Solaris operating system. IPv4 forwarding is disabled by default and can be
+enabled using \fBrouteadm\fR(8).
+.SH SEE ALSO
+.sp
+.LP
+.BR routeadm (8)
diff --git a/usr/src/man/man5/nscd.conf.5 b/usr/src/man/man5/nscd.conf.5
new file mode 100644
index 0000000000..bc2edb96da
--- /dev/null
+++ b/usr/src/man/man5/nscd.conf.5
@@ -0,0 +1,215 @@
+'\" te
+.\" Copyright (c) 2004 Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH NSCD.CONF 5 "Mar 6, 2017"
+.SH NAME
+nscd.conf \- name service cache daemon configuration
+.SH SYNOPSIS
+.LP
+.nf
+\fB/etc/nscd.conf\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBnscd.conf\fR file contains the configuration information for
+\fBnscd\fR(8). Each line specifies either an \fIattribute\fR and a
+\fIvalue\fR, or an \fIattribute\fR, \fIcachename\fR, and a \fIvalue\fR. Fields
+are separated either by SPACE or TAB characters. A `\fB#\fR' (number sign)
+indicates the beginning of a comment; characters up to the end of the line are
+not interpreted by \fBnscd\fR.
+.sp
+.LP
+\fIcachename\fR is represented by \fBhosts\fR, \fBipnodes\fR, \fBpasswd\fR,
+\fBgroup\fR, \fBexec_attr\fR, \fBprof_attr\fR, \fBuser_attr\fR, \fBethers\fR,
+\fBrpc\fR, \fBprotocols\fR, \fBnetworks\fR, \fBbootparams\fR,
+\fBauth_attr\fR, \fBservices\fR, \fBnetmasks\fR, \fBprinters\fR, or
+\fBproject\fR.
+.sp
+.LP
+The \fIattribute\fR field supports the following:
+.sp
+.ne 2
+.na
+\fB\fBcheck-files\fR \fIcachename value\fR\fR
+.ad
+.sp .6
+.RS 4n
+Enables or disables checking the file belonging to the specified
+\fIcachename\fR for changes. If enabled (which is the default), changes in the
+corresponding file cause the cache to be invalidated within 10 seconds. Can be
+disabled if files are never modified for a slight performance boost,
+particularly over \fBNFS\fR. \fIvalue\fR may be either \fByes\fR or \fBno\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdebug-level\fR \fIvalue\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets the debug level desired. \fIvalue\fR may range from \fB0\fR (the default)
+to \fB10\fR. Use of this option causes \fBnscd\fR(8) to run in the foreground
+and not become a daemon. Note that the output of the debugging command is not
+likely to remain the same from release-to-release; scripts should \fInot\fR
+rely on its format.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBenable-cache\fR \fIcachename value\fR\fR
+.ad
+.sp .6
+.RS 4n
+Enables or disables the specified cache. \fIvalue\fR may be either \fByes\fR or
+\fBno\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBenable-per-user-lookup\fR \fIvalue\fR\fR
+.ad
+.sp .6
+.RS 4n
+Enables or disables the ability of \fBnscd\fR to create a per-user \fBnscd\fR.
+A per-user \fBnscd\fR performs per-user lookups and manages the per-user cache.
+The per-user lookups might not be possible if the corresponding name service
+switch backends do not support it or are not configured to do so. The value of
+this attribute can be either \fByes\fR or \fBno\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBkeep-hot-count\fR \fIcachename value\fR\fR
+.ad
+.sp .6
+.RS 4n
+This attribute allows the administrator to set the number of entries
+\fBnscd\fR(8) is to keep current in the specified cache. \fIvalue\fR is an
+integer number which should approximate the number of entries frequently used
+during the day.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBlogfile\fR \fIdebug-file-name\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies name of the file to which debug info should be written. Use
+\fB/dev/tty\fR for standard output.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmaximum-per-user-nscd\fR \fIvalue\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets the maximum number of per-user \fBnscd\fRs that can be created and managed
+by the main \fBnscd\fR daemon. The value is an integer.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnegative-time-to-live\fR \fIcachename value\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets the time-to-live for negative entries (unsuccessful queries) in the
+specified cache. \fIvalue\fR is in integer seconds. Can result in significant
+performance improvements if there are several files owned by uids (user IDs)
+not in system databases; should be kept small to reduce cache coherency
+problems.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBper-user-nscd-time-to-live\fR \fIvalue\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets the time-to-live value for a per-user \fBnscd\fR based on the last time
+the per-user \fBnscd\fR was active. The value is an integer that specifies a
+number of seconds.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpositive-time-to-live\fR \fIcachename value\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets the time-to-live for positive entries (successful queries) in the
+specified cache. \fIvalue\fR is in integer seconds. Larger values increase
+cache hit rates and reduce mean response times, but increase problems with
+cache coherence. Note that sites that push (update) NIS maps nightly can set
+the value to be the equivalent of 12 hours or more with very good performance
+implications.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsuggested-size\fR \fIcachename value\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets the suggested number of hash buckets in the specified cache. This
+parameter should be changed only if the number of entries in the cache exceeds
+the suggested size by more than a factor of four or five. Since this is the
+internal hash table size, \fIvalue\fR should remain a prime number for optimum
+efficiency.
+.sp
+This attribute is obsolete and will be silently ignored. \fBnscd\fR now
+automatically adjusts the hash table size.
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Availibility SUNWcsu
+_
+Interface Stability Committed
+.TE
+
+.SH SEE ALSO
+.LP
+.BR auth_attr (5),
+.BR bootparams (5),
+.BR ethers (5),
+.BR exec_attr (5),
+.BR group (5),
+.BR hosts (5),
+.BR netmasks (5),
+.BR networks (5),
+.BR passwd (5),
+.BR printers (5),
+.BR prof_attr (5),
+.BR project (5),
+.BR protocols (5),
+.BR rpc (5),
+.BR services (5),
+.BR user_attr (5),
+.BR attributes (7),
+.BR nscd (8)
diff --git a/usr/src/man/man5/nsmbrc.5 b/usr/src/man/man5/nsmbrc.5
new file mode 100644
index 0000000000..a06cfb017a
--- /dev/null
+++ b/usr/src/man/man5/nsmbrc.5
@@ -0,0 +1,420 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.\" Copyright 2018 Nexenta Systems, Inc. All rights reserved.
+.TH NSMBRC 5 "November 22, 2021"
+.SH NAME
+nsmbrc \- configuration file for Solaris CIFS client requests
+.SH SYNOPSIS
+.nf
+\fB$HOME/.nsmbrc\fR
+.fi
+
+.SH DESCRIPTION
+Global behavior of the Solaris CIFS client is defined by property values that
+are stored in the Service Management Facility (SMF). The \fB\&.nsmbrc\fR file
+can be used to customize the behavior of the Solaris CIFS client on a per-user
+basis. Settings in the \fB$HOME/.nsmbrc\fR file are used unless they have
+security implications.
+.sp
+.LP
+An authorized user can use the \fBsharectl\fR command to set global values for
+these properties in SMF. See \fBsharectl\fR(8).
+.sp
+.LP
+A regular user can change the global values when granted the "SMBFS Management"
+rights profile in the \fB/etc/user_attr\fR file. See \fBuser_attr\fR(5) and
+\fBrbac\fR(7).
+.sp
+.LP
+The SMBFS library first reads from SMF and then the \fB$HOME/.nsmbrc\fR file
+when determining which policy to apply to a particular server, user, or share.
+\fB$HOME/.nsmbrc\fR entries take precedence with the exception of the
+\fBminauth\fR property value. For \fBminauth\fR, the strongest authentication
+level specified is used. Sections are applied so that more specific sections
+override less specific sections. Not all keywords are valid in all sections.
+.sp
+.LP
+The configuration file is comprised of these four section types. Each section
+can include zero or more properties and associated values. The sections also
+have a hierarchical relationship with each other, as shown by the order of the
+following list:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBDefault section.\fR Specifies the default property values to be used by all
+other sections unless specifically overridden.
+.sp
+The section name appears in the \fB\&.nsmbrc\fR file as \fB[default]\fR.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBServer section.\fR Specifies the property values to be used by sections that
+are related to the named server. These property values can be specifically
+overridden by a related user section or share section.
+.sp
+The section name appears in the \fB\&.nsmbrc\fR file as
+\fB[\fIserver-name\fR]\fR. \fIserver-name\fR must use uppercase characters to
+match.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBUser section.\fR Specifies the property values to be used by sections that
+are related to the named server and user. These property values can be
+specifically overridden by a related share section.
+.sp
+The section name appears in the \fB\&.nsmbrc\fR as
+\fB[\fIserver-name\fR:\fIusername\fR]\fR. Both \fIserver-name\fR and
+\fIusername\fR must use uppercase characters to match.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBShare section.\fR Specifies the property values to be used by sections that
+are related to the named server, user, and share.
+.sp
+The section name appears in the \fB\&.nsmbrc\fR as
+\fB[\fIserver-name\fR:\fIusername\fR:\fIshare-name\fR]\fR. Both
+\fIserver-name\fR and \fIusername\fR must use uppercase characters to match.
+.RE
+.sp
+.LP
+The end of each section is marked either by the start of a new section or by an
+end of file (EOF).
+.sp
+.LP
+The following list describes the properties and states in which sections they
+can be set:
+.sp
+.ne 2
+.na
+\fB\fBaddr\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the DNS name or IP address of the CIFS server. This property can only
+be set in a server section. If this property is specified, it must specify a
+value as there is no default.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdomain\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the Windows domain name to use when authenticating with a server. The
+default value is \fBWORKGROUP\fR. This property can only be set in the default
+and server sections.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBminauth\fR\fR
+.ad
+.sp .6
+.RS 4n
+Is the minimum authentication level required, which can be one of
+\fBkerberos\fR, \fBntlmv2\fR, \fBntlm\fR, \fBlm\fR, or \fBnone\fR. If
+\fBminauth\fR is set globally and in a user's \fB\&.nsmbrc\fR file, the
+stronger authentication setting are used whether set by the user or globally.
+This property can only be set in the default and server sections. The default
+value is \fBntlm\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmin_protocol\fR\fR
+.ad
+.sp .6
+.RS 4n
+Is the minimum SMB protocol level that will be negotiated,
+which must be one of: \fB1\fR, \fB2.1\fR
+This property can only be set in the default and server sections.
+The default value is \fB1\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmax_protocol\fR\fR
+.ad
+.sp .6
+.RS 4n
+Is the maximum SMB protocol level that will be negotiated,
+which must be one of: \fB1\fR, \fB2.1\fR
+This property can only be set in the default and server sections.
+The default value is \fB2.1\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnbns\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the DNS name or IP address of the NetBIOS/WINS name server. This
+property can \fBonly\fR be set by an administrator by using the \fBsharectl\fR
+command. This property can only be set in the default section. The default
+value is empty, \fBnbns=""\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnbns_broadcast\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies whether to perform NetBIOS/WINS broadcast lookups. Broadcast lookups
+are less secure than unicast lookups. To prevent broadcast lookups, set the
+value to \fBno\fR. This property has no effect if the \fBnbns_enable\fR
+property is set to \fBno\fR or \fBfalse\fR. This property can \fBonly\fR be set
+by an administrator by using the \fBsharectl\fR command. This property can only
+be set in the default section. Valid values are \fByes\fR, \fBtrue\fR,
+\fBno\fR, and \fBfalse\fR. The default value is \fByes\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnbns_enable\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies whether to perform NetBIOS/WINS name lookups. To force all lookups to
+be done through the name service switch (see \fBnsswitch.conf\fR(5)), set the
+value to \fBno\fR. This property can \fBonly\fR be set by an administrator by
+using the \fBsharectl\fR command. This property can only be set in the default
+section. Valid values are \fByes\fR, \fBtrue\fR, \fBno\fR, and \fBfalse\fR. The
+default value is \fByes\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpassword\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the password to use when authenticating a server. The \fBpassword\fR
+property value is used as long as the \fB\&.nsmbrc\fR file can \fBonly\fR be
+read and written by the owner. This property can be set in the default, server,
+user, and share sections.
+.sp
+If you assign the hashed password from the \fBsmbutil crypt\fR command to the
+\fBpassword\fR property, be sure to escape the special characters in the
+password.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsigning\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies whether communications are digitally signed by SMB security
+signatures for the Solaris CIFS client. This property can only be set in the
+default and server sections. Valid values are \fBdisabled\fR, \fBenabled\fR,
+and \fBrequired\fR. The default value is \fBdisabled\fR.
+.sp
+When set to \fBdisabled\fR, the client permits the use of SMB security
+signatures only if the server requires signing. In such an instance, the
+Solaris CIFS client ignores local property values.
+.sp
+When set to \fBenabled\fR, the client permits, but does not require, the use of
+SMB security signatures.
+.sp
+When set to \fBrequired\fR, the client requires the use of SMB security
+signatures. So, if SMB security signatures are disabled on a CIFS server and a
+client has signing required, the client cannot connect to that server.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBtimeout\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the CIFS request timeout. By default, the timeout is 15 seconds. This
+property can only be set in the default, server, and share sections.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBuser\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the user name to use when authenticating a server. The default value
+is the Solaris account name of the user performing the authentication. This
+property can only be set in the default and server sections.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBworkgroup\fR\fR
+.ad
+.sp .6
+.RS 4n
+Is supported for compatibility purposes and is a synonym for the \fBdomain\fR
+property. Use the \fBdomain\fR property instead.
+.RE
+
+.SH EXAMPLES
+The examples in this section show how to use the \fB\&.nsmbrc\fR file and the
+\fBsmbutil\fR command to configure the \fBexample.com\fR environment.
+.sp
+.LP
+The \fBexample.com\fR environment is described by means of these sections and
+settings:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The \fBdefault\fR section describes the default domain, which is called
+\fBMYDOMAIN\fR, and sets a default user of \fBMYUSER\fR. These default settings
+are inherited by other sections unless property values are overridden.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBFSERVER\fR is a server section that defines a server called
+\fBfserv.example.com\fR. It is part of the \fBSALES\fR domain.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBRSERVER\fR is a server section that defines a server called
+\fBrserv.example.com\fR that belongs to a new domain called \fBREMGROUP\fR.
+.RE
+.LP
+\fBExample 1 \fRUsing the \fB$HOME/.nsmbrc\fR Configuration File
+.sp
+.LP
+The following example shows how a user can configure the \fBexample.com\fR
+environment by creating the \fB\&.nsmbrc\fR file.
+
+.sp
+.LP
+All lines that begin with the \fB#\fR character are comments and are not
+parsed.
+
+.sp
+.in +2
+.nf
+# Configuration file for example.com
+# Specify the Windows account name to use everywhere.
+[default]
+domain=MYDOMAIN
+user=MYUSER
+
+# The 'FSERVER' is server in our domain.
+[FSERVER]
+addr=fserv.example.com
+
+# The 'RSERVER' is a server in another domain.
+[RSERVER]
+domain=REMGROUP
+addr=rserv.example.com
+.fi
+.in -2
+
+.LP
+\fBExample 2 \fRUsing the \fBsharectl\fR Command
+.sp
+.LP
+The following example shows how an authorized user can use \fBsharectl\fR
+commands to configure global settings for the \fBexample.com\fR environment in SMF.
+
+.sp
+.in +2
+.nf
+# \fBsharectl set -p section=default -p domain=MYDOMAIN \e
+-p user=MYUSER smbfs\fR
+# \fBsharectl set -p section=FSERVER -p addr=fserv.example.com smbfs\fR
+# \fBsharectl set -p section=RSERVER -p domain=REMGROUP \e
+-p addr=rserv.example.com smbfs\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRUsing the \fBsharectl\fR Command to Show Current Settings
+.sp
+.LP
+The following example shows how an authorized user can use the \fBsharectl
+get\fR command to view the global settings for \fBsmbfs\fR in SMF. The values
+shown are those set by the previous example.
+
+.sp
+.in +2
+.nf
+# \fBsharectl get smbfs\fR
+[default]
+ domain=MYDOMAIN
+ user=MYUSER
+[FSERVER]
+ addr=fserv.example.com
+[RSERVER]
+ domain=REMGROUP
+ addr=rserv.example.com
+.fi
+.in -2
+.sp
+
+.SH FILES
+.ne 2
+.na
+\fB\fB$HOME/.nsmbrc\fR\fR
+.ad
+.sp .6
+.RS 4n
+User-settable mount point configuration file to store the description for each
+connection.
+.RE
+
+.SH ATTRIBUTES
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Committed
+.TE
+
+.SH SEE ALSO
+.BR smbutil (1),
+.BR smbfs (4FS),
+.BR nsswitch.conf (5),
+.BR user_attr (5),
+.BR attributes (7),
+.BR rbac (7),
+.BR mount_smbfs (8),
+.BR sharectl (8)
+.SH NOTES
+By default, passwords stored in the \fB\&.nsmbrc\fR file are ignored unless
+\fBonly\fR the file owner has read and write permission.
diff --git a/usr/src/man/man5/nss.5 b/usr/src/man/man5/nss.5
new file mode 100644
index 0000000000..a20af72e21
--- /dev/null
+++ b/usr/src/man/man5/nss.5
@@ -0,0 +1,84 @@
+'\" te
+.\" Copyright (c) 2003, Sun Microsystems, Inc.
+.\" All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH NSS 5 "Feb 25, 2017"
+.SH NAME
+nss \- configuration file for initgroups
+.SH SYNOPSIS
+.LP
+.nf
+\fB/etc/default/nss\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fB/etc/default/nss\fR configuration file provides methods for
+\fBinitgroups\fR(3C) lookup method. The file also provides a method to disable
+address sorting by name lookup functions. The file controls the behavior of the
+name service switch routines outside of the source database mappings provided
+by the \fB/etc/nsswitch.conf\fR file.
+.sp
+.LP
+\fB/etc/default/nss\fR supports the following options:
+.sp
+.ne 2
+.na
+\fB\fBNETID_AUTHORITATIVE\fR\fR
+.ad
+.RS 23n
+Changes the behavior of the name service lookups to use the \fBnetid\fR table
+in response to the \fBinitgroups()\fR call. By default,
+\fBinitgroups()\fR uses the \fBgroup\fR table. When \fBNETID_AUTHORITATIVE\fR
+is set to TRUE, \fBinitgroups()\fR uses \fBnetid\fR as the source for
+supplementary groups rather than the \fBgroup\fR table.
+.sp
+The name service administrator must ensure that the \fBnetid\fR table contains
+valid supplementary group information for users. Not all name services can
+automatically keep the members listed in the \fBgroup\fR table in sync with the
+\fBnetid\fR table.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSORT_ADDRS\fR\fR
+.ad
+.RS 23n
+If this option is set to FALSE, the sorting of addresses is disabled on
+addresses that are returned by name lookup functions such as
+\fBinitgroups()\fR, \fBgethostbyname\fR(3NSL), \fBnetdir_getbyname\fR(3NSL),
+\fBgetaddrinfo\fR(3SOCKET), and \fBgetipnodebyname\fR(3SOCKET). Setting this
+option to FALSE is useful when the order of addresses returned by the
+nameserver needs to be maintained. To use the DNS round robin feature, for
+example, address sorting by name lookup functions should be disabled.
+.sp
+By default, address sorting is enabled.
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.LP
+.BR initgroups (3C),
+.BR gethostbyname (3NSL),
+.BR netdir_getbyname (3NSL),
+.BR getaddrinfo (3SOCKET),
+.BR getipnodebyname (3SOCKET),
+.BR nsswitch.conf (5),
+.BR attributes (7)
diff --git a/usr/src/man/man5/nsswitch.conf.5 b/usr/src/man/man5/nsswitch.conf.5
new file mode 100644
index 0000000000..0fce284d1a
--- /dev/null
+++ b/usr/src/man/man5/nsswitch.conf.5
@@ -0,0 +1,842 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH NSSWITCH.CONF 5 "Mar 6, 2017"
+.SH NAME
+nsswitch.conf \- configuration file for the name service switch
+.SH SYNOPSIS
+.LP
+.nf
+\fB/etc/nsswitch.conf\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+The operating system uses a number of databases of information about hosts,
+ipnodes, users (\fBpasswd\fR(5), \fBshadow\fR(5), and \fBuser_attr\fR(5)), and
+groups. Data for these can come from a variety of sources: hostnames and host
+addresses, for example, can be found in \fB/etc/hosts\fR, \fBNIS\fR,
+\fBLDAP\fR, \fBDNS\fR or Multicast \fBDNS\fR. Zero or more sources
+can be used for each database; the sources and their lookup order are specified
+in the \fB/etc/nsswitch.conf\fR file.
+.sp
+.LP
+The following databases use the \fBswitch\fR file:
+.sp
+
+.sp
+.TS
+c c
+l l .
+Database Used By
+\fBaliases\fR \fBsendmail\fR(8)
+\fBauth_attr\fR \fBgetauthnam\fR(3SECDB)
+\fBautomount\fR \fBautomount\fR(8)
+\fBbootparams\fR \fBrpc.bootparamd\fR(8)
+\fBethers\fR \fBethers\fR(3SOCKET)
+\fBgroup\fR \fBgetgrnam\fR(3C)
+\fBhosts\fR T{
+\fBgethostbyname\fR(3NSL), \fBgetaddrinfo\fR(3SOCKET). See \fBInteraction with netconfig\fR.
+T}
+\fBipnodes\fR Same as \fBhosts\fR.
+\fBnetgroup\fR \fBinnetgr\fR(3C)
+\fBnetmasks\fR \fBifconfig\fR(8)
+\fBnetworks\fR \fBgetnetbyname\fR(3SOCKET)
+\fBpasswd\fR T{
+\fBgetpwnam\fR(3C),
+\fBgetspnam\fR(3C),
+\fBgetusernam\fR(3SECDB)
+T}
+\fBprinters\fR T{
+\fBlp\fR(1),
+\fBlpstat\fR(1),
+\fBcancel\fR(1),
+\fBlpr\fR(1B),
+\fBlpq\fR(1B),
+\fBlprm\fR(1B),
+\fBin.lpd\fR(8),
+\fBlpadmin\fR(8),
+\fBlpget\fR(8),
+\fBlpset\fR(8)
+T}
+\fBprof_attr\fR \fBgetprofnam\fR(3SECDB),
+\fBgetexecprof\fR(3SECDB)
+\fBproject\fR T{
+\fBgetprojent\fR(3PROJECT),
+\fBgetdefaultproj\fR(3PROJECT),
+\fBinproj\fR(3PROJECT),
+\fBnewtask\fR(1),
+\fBsetproject\fR(3PROJECT)
+T}
+\fBprotocols\fR \fBgetprotobyname\fR(3SOCKET)
+\fBpublickey\fR \fBgetpublickey\fR(3NSL),
+\fBsecure_rpc\fR(3NSL)
+\fBrpc\fR \fBgetrpcbyname\fR(3NSL)
+\fBservices\fR \fBgetservbyname\fR(3SOCKET).
+ See \fBInteraction with netconfig\fR.
+\fBuser_attr\fR \fBgetuserattr\fR(3SECDB)
+.TE
+
+.sp
+.LP
+The following sources can be used:
+.sp
+
+.sp
+.TS
+c c
+l l .
+Source Uses
+\fBfiles\fR T{
+\fB/etc/hosts\fR, \fB/etc/passwd\fR, \fB/etc/inet/ipnodes\fR, \fB/etc/shadow\fR, \fB/etc/security/auth_attr\fR, \fB/etc/user_attr\fR
+T}
+\fBnis\fR \fBNIS\fR(\fBYP\fR)
+\fBldap\fR \fBLDAP\fR
+\fBad\fR Active Directory
+\fBdns\fR T{
+Valid only for hosts and ipnodes. Uses the Internet Domain Name Service.
+T}
+\fBmdns\fR T{
+Valid only for hosts and ipnodes. Uses the Multicast Domain Name Service.
+T}
+\fBcompat\fR T{
+Valid only for \fBpasswd\fR and \fBgroup\fR. Implements \fB+\fR and \fB-.\fR See \fBInteraction with +/- syntax\fR.
+T}
+\fBuser\fR T{
+Valid only for printers. Implements support for \fB${HOME}/.printers\fR.
+T}
+.TE
+
+.sp
+.LP
+Note that \fB/etc/inet/ipnodes\fR is a symbolic link to \fB/etc/hosts\fR.
+.sp
+.LP
+There is an entry in \fB/etc/nsswitch.conf\fR for each database. Typically
+these entries are simple, such as \fBprotocols: files\fR. However, when
+multiple sources are specified, it is sometimes necessary to define precisely
+the circumstances under which each source is tried. A source can return one
+of the following codes:
+.sp
+
+.sp
+.TS
+c c
+l l .
+Status Meaning
+\fBSUCCESS\fR Requested database entry was found.
+\fBUNAVAIL\fR T{
+Source is not configured on this system or internal failure.
+T}
+\fBNOTFOUND\fR Source responded "\fBno such entry\fR"
+\fBTRYAGAIN\fR T{
+Source is busy or not responding, might respond to retries.
+T}
+.TE
+
+.sp
+.LP
+For each status code, two actions are possible:
+.sp
+
+.sp
+.TS
+c c
+l l .
+Action Meaning
+\fBcontinue\fR Try the next source in the list.
+\fBreturn\fR Return now.
+.TE
+
+.sp
+.LP
+Additionally, for \fBTRYAGAIN\fR only, the following actions are possible:
+.sp
+
+.sp
+.TS
+c c
+l l .
+Action Meaning
+\fBforever\fR Retry the current source forever.
+\fIn\fR T{
+Retry the current source \fIn\fR more times, where \fIn\fR is an integer between \fB0\fR and \fBMAX_INT\fR (that is, 2.14 billion). After \fIn\fR retries has been exhausted, the \fBTRYAGAIN\fR action transitions to \fBcontinue\fR, until a future request receives a response, at which time \fBTRYAGAIN\fR=\fIn\fR is restored.
+T}
+.TE
+
+.sp
+.LP
+The complete syntax of an entry is:
+.sp
+.in +2
+.nf
+<entry> ::= <database> ":" [<source> [<criteria>]]*
+<criteria> ::= "[" <criterion>+ "]"
+<criterion> ::= <status> "=" <action>
+<status> ::= "success" | "notfound" | "unavail" | "tryagain"
+.fi
+.in -2
+
+.sp
+.LP
+For every status except \fBTRYAGAIN\fR, the action syntax is:
+.sp
+.in +2
+.nf
+<action> ::= "return" | "continue"
+.fi
+.in -2
+
+.sp
+.LP
+For the \fBTRYAGAIN\fR status, the action syntax is:
+.sp
+.in +2
+.nf
+<action> ::= "return" | "continue" | "forever" | <n>
+<n> ::= 0...MAX_INT
+.fi
+.in -2
+
+.sp
+.LP
+Each entry occupies a single line in the file. Lines that are blank, or that
+start with white space, are ignored. Everything on a line following a \fB#\fR
+character is also ignored; the \fB#\fR character can begin anywhere in a line,
+to be used to begin comments. The <database> and <source> names are
+case-sensitive, but <action> and <status> names are case-insensitive.
+.sp
+.LP
+The library functions contain compiled-in default entries that are used if the
+appropriate entry in \fBnsswitch.conf\fR is absent or syntactically incorrect.
+.sp
+.LP
+The default criteria for \fBDNS\fR and the \fBNIS\fR server in "DNS-forwarding
+mode" is [\fBSUCCESS\fR=return \fBNOTFOUND\fR=continue \fBUNAVAIL\fR=continue
+\fBTRYAGAIN\fR=3].
+.sp
+.LP
+The default criteria for all other sources is [\fBSUCCESS\fR=return
+\fBNOTFOUND\fR=continue \fBUNAVAIL\fR=continue \fBTRYAGAIN\fR=forever].
+.sp
+.LP
+The default, or explicitly specified, criteria are meaningless following the
+last source in an entry; and they are ignored, since the action is always to
+return to the caller irrespective of the status code the source returns.
+.SS "Interaction with \fBnetconfig\fR"
+.LP
+In order to ensure that they all return consistent results,
+\fBgethostbyname\fR(3NSL), \fBgetaddrinfo\fR(3SOCKET),
+\fBgetservbyname\fR(3SOCKET), and \fBnetdir_getbyname\fR(3NSL) functions are
+all implemented in terms of the same internal library function. This function
+obtains the system-wide source lookup policy for \fBhosts\fR, \fBipnodes\fR,
+and \fBservices\fR based on the \fBinet\fR family entries in \fBnetconfig\fR(5)
+and uses the switch entries only if the \fBnetconfig\fR entries have a \fB-\fR
+(hyphen) in the last column for \fBnametoaddr\fR libraries. See the Notes
+section in \fBgethostbyname\fR(3NSL) and \fBgetservbyname\fR(3SOCKET) for
+details.
+.SS "Interaction with server in DNS-forwarding Mode"
+.LP
+The \fBNIS\fR (\fBYP\fR) server can be run in DNS-forwarding mode, where it
+forwards lookup requests to \fBDNS\fR for host-names and -addresses that do not
+exist in its database. In this case, specifying \fBnis\fR as a source for
+\fBhosts\fR is sufficient to get \fBDNS\fR lookups; \fBdns\fR need not be
+specified explicitly as a source.
+.SS "Interaction with Password Aging"
+.LP
+When password aging is turned on, only a limited set of possible name services
+are permitted for the \fBpasswd\fR: database in the \fB/etc/nsswitch.conf\fR
+file:
+.sp
+.ne 2
+.na
+\fBpasswd:\fR
+.ad
+.RS 18n
+files
+.RE
+
+.sp
+.ne 2
+.na
+\fBpasswd:\fR
+.ad
+.RS 18n
+files nis
+.RE
+
+.sp
+.ne 2
+.na
+\fBpasswd:\fR
+.ad
+.RS 18n
+files ldap
+.RE
+
+.sp
+.ne 2
+.na
+\fBpasswd:\fR
+.ad
+.RS 18n
+compat
+.RE
+
+.sp
+.ne 2
+.na
+\fBpasswd_compat:\fR
+.ad
+.RS 18n
+ldap
+.RE
+
+.sp
+.LP
+You can add the \fBad\fR keyword to any of the \fBpasswd\fR configurations
+listed above. However, you cannot use the \fBpasswd\fR command to change the
+password of an Active Directory (AD) user. If the \fBad\fR keyword is found in
+the \fBpasswd\fR entry during a password update operation, it is ignored. To
+update the password of an AD user, use the \fBkpasswd\fR(1) command.
+.sp
+.LP
+Any other settings causes the \fBpasswd\fR(1) command to fail when it attempts
+to change the password after expiration and prevents the user from logging in.
+These are the \fBonly\fR permitted settings when password aging has been turned
+on. Otherwise, you can work around incorrect \fBpasswd\fR: lines by using the
+\fB-r repository\fR argument to the \fBpasswd\fR(1) command and using \fBpasswd
+-r repository\fR to override the \fBnsswitch.conf\fR settings and specify in
+which name service you want to modify your password.
+.SS "Interaction with +/- syntax"
+.LP
+Releases prior to SunOS 5.0 did not have the name service switch but did allow
+the user some policy control. In \fB/etc/passwd\fR one could have entries of
+the form \fI+user\fR (include the specified user from \fBNIS\fR passwd.byname),
+\fI-user\fR (exclude the specified user) and \fB+\fR (include everything,
+except excluded users, from \fBNIS\fR passwd.byname). The desired behavior was
+often \fBeverything in the file followed by everything in NIS\fR, expressed by
+a solitary \fB+\fR at the end of \fB/etc/passwd\fR. The switch provides an
+alternative for this case (\fBpasswd: files nis\fR) that does not require
+\fB+\fR entries in \fB/etc/passwd\fR and \fB/etc/shadow\fR (the latter is a new
+addition to SunOS 5.0, see \fBshadow\fR(5)).
+.sp
+.LP
+If this is not sufficient, the \fBNIS/YP\fR compatibility source provides full
++/- semantics. It reads \fB/etc/passwd\fR for \fBgetpwnam\fR(3C) functions and
+\fB/etc/shadow\fR for \fBgetspnam\fR(3C) functions and, if it finds +/-
+entries, invokes an appropriate source. By default, the source is \fBnis\fR,
+but this can be overridden by specifying \fBldap\fR as the
+source for the pseudo-database \fBpasswd_compat\fR.
+.sp
+.LP
+Note that in compat mode, for every \fB/etc/passwd\fR entry, there must be a
+corresponding entry in the \fB/etc/shadow\fR file.
+.sp
+.LP
+The NIS/YP compatibility source also provides full +/- semantics for
+\fBgroup\fR; the relevant pseudo-database is \fBgroup_compat\fR.
+.SS "Useful Configurations"
+.LP
+The compiled-in default entries for all databases use \fBNIS (YP)\fR as the
+enterprise level name service and are identical to those in the default
+configuration of this file:
+.sp
+.ne 2
+.na
+\fBpasswd:\fR
+.ad
+.RS 15n
+files nis
+.RE
+
+.sp
+.ne 2
+.na
+\fBgroup:\fR
+.ad
+.RS 15n
+files nis
+.RE
+
+.sp
+.ne 2
+.na
+\fBhosts:\fR
+.ad
+.RS 15n
+nis [NOTFOUND=return] files
+.RE
+
+.sp
+.ne 2
+.na
+\fBipnodes:\fR
+.ad
+.RS 15n
+nis [NOTFOUND=return] files
+.RE
+
+.sp
+.ne 2
+.na
+\fBnetworks:\fR
+.ad
+.RS 15n
+nis [NOTFOUND=return] files
+.RE
+
+.sp
+.ne 2
+.na
+\fBprotocols:\fR
+.ad
+.RS 15n
+nis [NOTFOUND=return] files
+.RE
+
+.sp
+.ne 2
+.na
+\fBrpc:\fR
+.ad
+.RS 15n
+nis [NOTFOUND=return] files
+.RE
+
+.sp
+.ne 2
+.na
+\fBethers:\fR
+.ad
+.RS 15n
+nis [NOTFOUND=return] files
+.RE
+
+.sp
+.ne 2
+.na
+\fBnetmasks:\fR
+.ad
+.RS 15n
+nis [NOTFOUND=return] files
+.RE
+
+.sp
+.ne 2
+.na
+\fBbootparams:\fR
+.ad
+.RS 15n
+nis [NOTFOUND=return] files
+.RE
+
+.sp
+.ne 2
+.na
+\fBpublickey:\fR
+.ad
+.RS 15n
+nis [NOTFOUND=return] files
+.RE
+
+.sp
+.ne 2
+.na
+\fBnetgroup:\fR
+.ad
+.RS 15n
+nis
+.RE
+
+.sp
+.ne 2
+.na
+\fBautomount:\fR
+.ad
+.RS 15n
+files nis
+.RE
+
+.sp
+.ne 2
+.na
+\fBaliases:\fR
+.ad
+.RS 15n
+files nis
+.RE
+
+.sp
+.ne 2
+.na
+\fBservices:\fR
+.ad
+.RS 15n
+files nis
+.RE
+
+.sp
+.ne 2
+.na
+\fBprinters:\fR
+.ad
+.RS 15n
+user files nis
+.RE
+
+.sp
+.ne 2
+.na
+\fBauth_attr\fR
+.ad
+.RS 15n
+files nis
+.RE
+
+.sp
+.ne 2
+.na
+\fBprof_attr\fR
+.ad
+.RS 15n
+files nis
+.RE
+
+.sp
+.ne 2
+.na
+\fBproject\fR
+.ad
+.RS 15n
+files nis
+.RE
+
+.sp
+.LP
+Note that the \fBfiles\fR source for the \fBipnodes\fR and \fBhosts\fR
+databases is identical, as \fB/etc/inet/ipnodes\fR is a symbolic link to
+\fB/etc/hosts\fR. Because other sources for the \fBipnodes\fR and \fBhosts\fR
+databases are different, do not remove the \fBipnodes\fR line from the
+\fB/etc/nsswitch.conf\fR file.
+.sp
+.LP
+The policy \fBnis [NOTFOUND=return] files\fR implies: if \fBnis\fR is
+\fBUNAVAIL\fR, continue on to \fBfiles\fR, and if \fBnis\fR returns
+\fBNOTFOUND\fR, return to the caller. In other words, treat \fBnis\fR as the
+authoritative source of information and try \fBfiles\fR only if \fBnis\fR is
+down. This, and other policies listed in the default configuration above, are
+identical to the hard-wired policies in SunOS releases prior to 5.0.
+.sp
+.LP
+If compatibility with the +/- syntax for \fBpasswd\fR and \fBgroup\fR is
+required, simply modify the entries for \fBpasswd\fR and \fBgroup\fR to:
+.sp
+.ne 2
+.na
+\fBpasswd:\fR
+.ad
+.RS 11n
+compat
+.RE
+
+.sp
+.ne 2
+.na
+\fBgroup:\fR
+.ad
+.RS 11n
+compat
+.RE
+
+.sp
+.LP
+If \fBLDAP\fR is the enterprise level name service, the default configuration
+should be modified to use \fBldap\fR instead of \fBnis\fR for every database on
+client machines. The file \fB/etc/nsswitch.ldap\fR contains a sample
+configuration that can be copied to \fB/etc/nsswitch.conf\fR to set this
+policy.
+.sp
+.LP
+When using Active Directory, \fBdns\fR is required to perform hosts resolution.
+.sp
+.LP
+If the use of +/- syntax is desired in conjunction with \fBLDAP\fR, use the
+following four entries:
+.sp
+.ne 2
+.na
+\fBpasswd:\fR
+.ad
+.RS 18n
+compat
+.RE
+
+.sp
+.ne 2
+.na
+\fBpasswd_compat:\fR
+.ad
+.RS 18n
+ldap
+.RE
+
+.sp
+.ne 2
+.na
+\fBgroup:\fR
+.ad
+.RS 18n
+compat
+.RE
+
+.sp
+.ne 2
+.na
+\fBgroup_compat:\fR
+.ad
+.RS 18n
+ldap
+.RE
+
+.sp
+.LP
+In order to get information from the Internet Domain Name Service for hosts
+that are not listed in the enterprise level name service, such as
+\fBLDAP\fR, use the following configuration and set up the
+\fB/etc/resolv.conf\fR file (see \fBresolv.conf\fR(5) for more details):
+.sp
+.ne 2
+.na
+\fBhosts:\fR
+.ad
+.RS 10n
+ldap dns [NOTFOUND=return] files
+.RE
+
+.SS "Enumeration - \fBgetXXXent()\fR"
+.LP
+Many of the databases have enumeration functions: \fBpasswd\fR has
+\fBgetpwent()\fR, \fBhosts\fR has \fBgethostent()\fR, and so on. These were
+reasonable when the only source was \fBfiles\fR but often make little sense for
+hierarchically structured sources that contain large numbers of entries, much
+less for multiple sources. The interfaces are still provided and the
+implementations strive to provide reasonable results, but the data returned can
+be incomplete (enumeration for \fBhosts\fR is simply not supported by the
+\fBdns\fR source), inconsistent (if multiple sources are used), formatted in an
+unexpected fashion,
+or very expensive (enumerating a \fBpasswd\fR database of 5,000 users is
+probably a bad idea). Furthermore, multiple threads in the same process using
+the same reentrant enumeration function (\fBgetXXXent_r()\fR are supported
+beginning with SunOS 5.3) share the same enumeration position; if they
+interleave calls, they enumerate disjoint subsets of the same database.
+.sp
+.LP
+In general, the use of the enumeration functions is deprecated. In the case of
+\fBpasswd\fR, \fBshadow\fR, and \fBgroup\fR, it might sometimes be appropriate
+to use \fBfgetgrent()\fR, \fBfgetpwent()\fR, and \fBfgetspent()\fR (see
+\fBgetgrnam\fR(3C), \fBgetpwnam\fR(3C), and \fBgetspnam\fR(3C), respectively),
+which use only the \fBfiles\fR source.
+.SH FILES
+.LP
+A source named SSS is implemented by a shared object named \fBnss_SSS.so.1\fR
+that resides in \fB/usr/lib\fR.
+.sp
+.ne 2
+.na
+\fB\fB/etc/nsswitch.conf\fR\fR
+.ad
+.RS 29n
+Configuration file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/nss_compat.so.1\fR\fR
+.ad
+.RS 29n
+Implements \fBcompat\fR source.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/nss_dns.so.1\fR\fR
+.ad
+.RS 29n
+Implements \fBdns\fR source.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/nss_files.so.1\fR\fR
+.ad
+.RS 29n
+Implements \fBfiles\fR source.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/nss_mdns.so.1\fR\fR
+.ad
+.RS 29n
+Implements \fBmdns\fR source.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/nss_nis.so.1\fR\fR
+.ad
+.RS 29n
+Implements \fBnis\fR source.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/nss_ldap.so.1\fR\fR
+.ad
+.RS 29n
+Implements \fBldap\fR source.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/nss_ad.so.1\fR\fR
+.ad
+.RS 29n
+Implements ad source.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/nss_user.so.1\fR\fR
+.ad
+.RS 29n
+Implements \fBuser\fR source.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/netconfig\fR\fR
+.ad
+.RS 29n
+Configuration file for \fBnetdir\fR(3NSL) functions that redirects
+hosts/devices policy to the switch.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/nsswitch.files\fR\fR
+.ad
+.RS 29n
+Sample configuration file that uses \fBfiles\fR only.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/nsswitch.nis\fR\fR
+.ad
+.RS 29n
+Sample configuration file that uses \fBfiles\fR and \fBnis\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/nsswitch.ldap\fR\fR
+.ad
+.RS 29n
+Sample configuration file that uses \fBfiles\fR and \fBldap\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/nsswitch.ad\fR\fR
+.ad
+.RS 29n
+Sample configuration file that uses \fBfiles\fR and \fBad\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/nsswitch.dns\fR\fR
+.ad
+.RS 29n
+Sample configuration file that uses \fBfiles\fR, \fBdns\fR and \fBmdns\fR
+(\fBdns\fR and \fBmdns\fR only for hosts).
+.RE
+
+.SH SEE ALSO
+.LP
+.BR kpasswd (1),
+.BR ldap (1),
+.BR newtask (1),
+.BR passwd (1),
+.BR getgrnam (3C),
+.BR getnetgrent (3C),
+.BR getpwnam (3C),
+.BR getspnam (3C),
+.BR gethostbyname (3NSL),
+.BR getpublickey (3NSL),
+.BR getrpcbyname (3NSL),
+.BR netdir (3NSL),
+.BR secure_rpc (3NSL),
+.BR getdefaultproj (3PROJECT),
+.BR getprojent (3PROJECT),
+.BR inproj (3PROJECT),
+.BR setproject (3PROJECT),
+.BR getauthnam (3SECDB),
+.BR getexecprof (3SECDB),
+.BR getprofnam (3SECDB),
+.BR getuserattr (3SECDB),
+.BR getusernam (3SECDB),
+.BR ethers (3SOCKET),
+.BR getaddrinfo (3SOCKET),
+.BR getnetbyname (3SOCKET),
+.BR getprotobyname (3SOCKET),
+.BR getservbyname (3SOCKET),
+.BR auth_attr (5),
+.BR hosts (5),
+.BR netconfig (5),
+.BR project (5),
+.BR resolv.conf (5),
+.BR user_attr (5),
+.BR ypfiles (5),
+.BR ad (7),
+.BR automount (8),
+.BR ifconfig (8),
+.BR mdnsd (8),
+.BR rpc.bootparamd (8),
+.BR sendmail (8)
+.SH NOTES
+.LP
+Within each process that uses \fBnsswitch.conf\fR, the entire file is read only
+once; if the file is later changed, the process continues using the old
+configuration.
+.sp
+.LP
+Do not use the \fBldap\fR and \fBad\fR keywords together when the Solaris LDAP
+client uses schema mapping to talk to Active Directory.
+.sp
+.LP
+Misspelled names of sources and databases are treated as legitimate names of
+(most likely nonexistent) sources and databases.
+.sp
+.LP
+The following functions do \fBnot\fR use the switch: \fBfgetgrent\fR(3C),
+\fBfgetprojent\fR(3PROJECT), \fBfgetpwent\fR(3C), \fBfgetspent\fR(3C),
+\fBgetpw\fR(3C), \fBputpwent\fR(3C), \fBshadow\fR(5).
diff --git a/usr/src/man/man5/overlay.5 b/usr/src/man/man5/overlay.5
deleted file mode 100644
index 41d1b18739..0000000000
--- a/usr/src/man/man5/overlay.5
+++ /dev/null
@@ -1,521 +0,0 @@
-.\"
-.\" This file and its contents are supplied under the terms of the
-.\" Common Development and Distribution License ("CDDL"), version 1.0.
-.\" You may only use this file in accordance with the terms of version
-.\" 1.0 of the CDDL.
-.\"
-.\" A full copy of the text of the CDDL should have accompanied this
-.\" source. A copy of the CDDL is also available via the Internet at
-.\" http://www.illumos.org/license/CDDL.
-.\"
-.\"
-.\" Copyright 2015 Joyent, Inc.
-.\"
-.Dd Apr 09, 2015
-.Dt OVERLAY 5
-.Os
-.Sh NAME
-.Nm overlay
-.Nd Overlay Devices
-.Sh DESCRIPTION
-Overlay devices are a GLDv3 device that allows users to create overlay
-networks that can be used to form the basis of network virtualization
-and software defined networking.
-Overlay networks allow a single physical network, often called an
-.Sy underlay
-network, to provide the means for creating multiple logical, isolated,
-and discrete layer two and layer three networks on top of it.
-.Pp
-Overlay devices are administered through
-.Xr dladm 1M .
-Overlay devices themselves cannot be plumbed up with
-.Sy IP ,
-.Sy vnd ,
-or any other protocol.
-Instead, like an
-.Sy etherstub ,
-they allow for VNICs to be created on top of them.
-Like an
-.Sy etherstub ,
-an overlay device acts as a local switch; however, when it encounters a
-non-local destination address, it instead looks up where it should send
-the packet, encapsulates it, and sends it out another interface in the
-system.
-.Pp
-A single overlay device encapsulates the logic to answer two different,
-but related, questions:
-.Pp
-.Bl -enum -offset indent -compact
-.It
-How should a packet be transformed and put on the wire?
-.It
-Where should a transformed packet be sent?
-.El
-.Pp
-Each of these questions is answered by a plugin.
-The first question is answered by what's called an
-.Em encapsulation plugin .
-The second question is answered by what's called a
-.Em search plugin .
-Packets are encapsulated and decapsulated using the encapsulation plugin
-by the kernel.
-The search plugins are all user land plugins that are consumed by the
-varpd service whose FMRI is
-.Em svc:/network/varpd:default .
-This separation allows for the kernel to be responsible for the data
-path, while having the search plugins in userland allows the system to
-provide a much more expressive interface.
-.Ss Overlay Types
-Overlay devices come in two different flavors, one where all packets are
-always sent to a single address, the other, where the destination of a
-packet varies based on the target MAC address of the packet.
-This information is maintained in a
-.Em target table ,
-which is independent and unique to each overlay device.
-We call the plugins that send traffic to a single location, for example
-a single unicast or multicast IP address, a
-.Sy point to point
-overlay and the overlay devices that can send traffic to different
-locations based on the MAC address of that packet a
-.Sy dynamic
-overlay.
-The plugin type is determined based on the type of the
-.Sy search plugin .
-These are all fully listed in the section
-.Sx Plugins and their Properties .
-.Ss Overlay Destination
-Both encapsulation and search plugins define the kinds of destinations
-that they know how to support.
-An encapsulation plugin always has a single destination type that's
-determined based on how the encapsulation is defined.
-A search plugin, on the other hand, can support multiple combinations of
-destinations.
-A search plugin must support the destination type of the encapsulation
-device.
-The destination may require any of the following three pieces of
-information, depending on the encapsulation plugin:
-.Bl -hang -width Ds
-.It Sy MAC Address
-.Bd -filled -compact
-An Ethernet MAC address is required to determine the destination.
-.Ed
-.It Sy IP Address
-.Bd -filled -compact
-An IP address is required.
-Both IPv4 and IPv6 addresses are supported.
-.Ed
-.It Sy Port
-.Bd -filled -compact
-An IP protocol level (TCP, UDP, SCTP, etc.) port is required.
-.Ed
-.El
-.Pp
-The list of destination types that are supported by both the search and
-encapsulation plugins is listed in the section
-.Sx Plugins and their Properties .
-.Ss varpd
-The varpd service, mentioned above, is responsible for providing the
-virtual ARP daemon.
-Its responsibility is conceptually similar to ARP.
-It runs all instances of search plugins in the system and is responsible
-for answering the kernel's ARP-like questions for where packets should
-be sent.
-.Pp
-The varpd service, svc:/network/varpd:default, must be enabled for
-overlay devices to function.
-If it is disabled while there are active devices, then most overlay
-devices will not function correctly and likely will end up dropping
-traffic.
-.Sh PLUGINS AND PROPERTIES
-Properties fall into three categories in the system:
-.Bl -enum -offset indent -compact
-.It
-Generic properties all overlay devices have
-.It
-Properties specific to the encapsulation plugin
-.It
-Properties specific to the search plugin
-.El
-.Pp
-Each property in the system has the following attributes, which mirror
-the traditional
-.Xr dladm 1M
-link properties:
-.Bl -hang -width Ds
-.It Sy Name
-.Bd -filled -compact
-The name of a property is namespaced by its module and always structured
-and referred to as as module/property.
-This allows for both an encapsulation and search plugin to have a
-property with the same name.
-Properties that are valid for all overlay devices and not specific to a
-module do not generally use a module prefix.
-.Pp
-For example, the property
-.Sy vxlan/listen_ip
-is associated with the
-.Sy vxlan
-encapsulation module.
-.Ed
-.It Sy Type
-.Bd -filled -compact
-Each property in the system has a type.
-.Xr dladm 1M
-takes care of converting between the internal representation and a
-value, but the type influences the acceptable input range.
-The types are:
-.Bl -hang -width Ds
-.It Sy INT
-A signed integer that is up to eight bytes long
-.Pq Sy int64_t .
-.It Sy UINT
-An unsigned integer that is up to eight bytes long
-.Pq Sy uint64_t .
-.It Sy IP
-Either an IPv4 or IPv6 address in traditional string form.
-For example, 192.168.128.23 or 2001:470:8af4::1:1.
-IPv4 addresses may also be encoded as IPv4-mapped IPv6 addresses.
-.It Sy STRING
-A string of ASCII or UTF-8 encoded characters terminated with a
-.Sy NUL
-byte.
-The maximum string length, including the terminator, is currently
-256 bytes.
-.El
-.Ed
-.It Sy Permissions
-.Bd -filled -compact
-Each property has permissions associated with it, which indicate whether
-the system considers them read-only properties or read-write properties.
-A read-only property can never be updated once the device is created.
-This generally includes things like the overlay's encapsulation module.
-.Ed
-.It Sy Required
-.Bd -filled -compact
-This property indicates whether the property is required for the given
-plugin.
-If it is not specified during a call to
-.Sy dladm create-overlay ,
-then the overlay cannot be successfully created.
-Properties which have a
-.Sy default
-will use that value if one is not specified rather than cause the
-overlay creation to fail.
-.Ed
-.It Sy Current Value
-.Bd -filled -compact
-The current value of a property, if the property has a value set.
-Required properties always have a value set.
-.Ed
-.It Sy Default Value
-.Bd -filled -compact
-The default value is an optional part of a given property.
-If a property does define a default value, then it will be used when an
-overlay is created and no other value is given.
-.Ed
-.It Sy Value ranges
-.Bd -filled -compact
-Value ranges are an optional part of a given property.
-They indicate a range or set of values that are valid and may be set for
-a property.
-A property may not declare such a range as it may be impractical or
-unknown.
-For example, most properties based on IP addresses will not
-declare a range.
-.Ed
-.El
-.Pp
-The following sections describe both the modules and the properties that
-exist for each module, noting their name, type, permissions, whether or
-not they are required, and if there is a default value.
-In addition, the effects of each property will be described.
-.Ss Encapsulation Plugins
-.Bl -hang -width Ds
-.It Sy vxlan
-The
-.Sy vxlan
-module is a UDP based encapsulation method.
-It takes a frame that would be put on the wire, wraps it up in a VXLAN
-header and places it in a UDP packet that gets sent out on the
-underlying network.
-For more details about the specific format of the VXLAN header, see
-.Xr vxlan 7P .
-.Pp
-The
-.Sy vxlan
-module requires both an
-.Sy IP address
-and
-.Sy port
-to address it.
-It has a 24-bit virtual network ID space, allowing for
-virtual network identifiers that range from
-.Sy 0
--
-.Sy 16777215 .
-.Pp
-The
-.Sy vxlan
-module has the following properties:
-.Bl -hang -width Ds
-.It Sy vxlan/listen_ip
-.Bd -filled -compact
-Type:
-.Sy IP |
-Permissions:
-.Sy Read/Write |
-.Sy Required
-.Ed
-.Bd -filled
-The
-.Sy vxlan/listen_ip
-property determines the IP address that the system will accept VXLAN
-encapsulated packets on for this overlay.
-.Ed
-.It Sy vxlan/listen_port
-.Bd -filled -compact
-Type:
-.Sy UINT |
-Permissions:
-.Sy Read/Write |
-.Sy Required
-.Ed
-.Bd -filled -compact
-Default Value:
-.Sy 4789 |
-Range:
-.Sy 0 - 65535
-.Ed
-.Bd -filled
-The
-.Sy vxlan/listen_port
-property determines the UDP port that the system will listen on for
-VXLAN traffic for this overlay.
-The default value is
-.Sy 4789 ,
-the IANA assigned port for VXLAN.
-.Ed
-.El
-.Pp
-The
-.Sy vxlan/listen_ip
-and
-.Sy vxlan/listen_port
-properties determine how the system will accept VXLAN encapsulated
-packets for this interface.
-It does not determine the interface that packets will be sent out over.
-Multiple overlays that all use VXLAN can share the same IP and port
-combination, as the virtual network identifier can be used to tell the
-different overlays apart.
-.El
-.Ss Search Plugins
-Because search plugins may support multiple destinations, they may have
-more properties listed than necessarily show up for a given overlay.
-For example, the
-.Sy direct
-plugin supports destinations that are identified by both an IP address
-and a port, or just an IP address.
-In cases where the device is created over an overlay that only uses an
-IP address for its destination, then it will not have the
-.Sy direct/dest_port
-property.
-.Bl -hang -width Ds
-.It Sy direct
-The
-.Sy direct
-plugin is a point to point module that can be used to create an overlay
-that forwards all non-local traffic to a single destination.
-It supports destinations that are a combination of an
-.Sy IP Address
-and a
-.Sy port .
-.Pp
-The
-.Sy direct
-plugin has the following properties:
-.Bl -hang -width Ds
-.It Sy direct/dest_ip
-.Bd -filled -compact
-Type:
-.Sy IP |
-Permissions:
-.Sy Read/Write |
-.Sy Required
-.Ed
-.Bd -filled
-The
-.Sy direct/dest_ip
-property indicates the IP address that all traffic will be sent out.
-Traffic will be sent out the corresponding interface based on
-traditional IP routing rules and the configuration of the networking
-stack of the global zone.
-.Ed
-.It Sy direct/dest_port
-.Bd -filled -compact
-Type:
-.Sy UINT |
-Permissions:
-.Sy Read/Write |
-.Sy Required
-.Ed
-.Bd -filled -compact
-Default Value:
-.Sy - |
-Range:
-.Sy 0 - 65535
-.Ed
-.Bd -filled
-The
-.Sy direct/dest_port
-property indicates the TCP or UDP port that all traffic will be directed
-to.
-.Ed
-.El
-.It Sy files
-The
-.Sy files
-plugin implements a
-.Sy dynamic
-plugin that specifies where traffic should be sent based on a file.
-It is a glorified version of /etc/ethers.
-The
-.Sy dynamic
-plugin does not support broadcast or multicast traffic, but it has
-support for proxy ARP, NDP, and DHCPv4.
-For the full details of the file format, see
-.Xr overlay_files 4 .
-.Pp
-The
-.Sy files
-plugin has the following property:
-.Bl -hang -width Ds
-.It Sy files/config
-.Bd -filled -compact
-Type:
-.Sy String |
-Permissions:
-.Sy Read/Write |
-.Sy Required
-.Ed
-.Bd -filled
-The
-.Sy files/config
-property specifies an absolute path to a file to read.
-The file is a JSON file that is formatted according to
-.Xr overlay_files 4 .
-.Ed
-.El
-.El
-.Ss General Properties
-Each overlay has the following properties which are used to give
-additional information about the system.
-None of these properties may be specified as part of a
-.Sy dladm create-overlay ,
-instead they come from other arguments or from internal parts of the
-system.
-.Bl -hang -width Ds
-.It Sy encap
-.Bd -filled -compact
-.Sy String |
-Permissions:
-.Sy Read Only
-.Ed
-.Bd -filled
-The
-.Sy encap
-property contains the name of the encapsulation module that's in use.
-.Ed
-.It Sy mtu
-.Bd -filled -compact
-.Sy UINT |
-Permissions:
-.Sy Read/Write
-.Ed
-.Bd -filled -compact
-Default Value:
-.Sy 1400 |
-Range:
-.Sy 576 - 9000
-.Ed
-.Bd -filled
-The
-.Sy mtu
-property describes the maximum transmission unit of the overlay.
-The default value is
-.Sy 1400
-bytes, which ensures that in a traditional deployment with an MTU of
-1500 bytes, the overhead that is added from encapsulation is all
-accounted for.
-It is the administrator's responsibility to ensure that
-the device's MTU and the encapsulation overhead does not exceed that of
-the interfaces that the encapsulated traffic will be sent out of.
-.Pp
-To modify the
-.Sy mtu
-property, use
-.Sy dladm set-linkprop .
-.Ed
-.It Sy search
-.Bd -filled -compact
-.Sy String |
-Permissions:
-.Sy Read Only
-.Ed
-.Bd -filled
-The
-.Sy search
-property contains the name of the search plugin that's in use.
-.Ed
-.It Sy varpd/id
-.Bd -filled -compact
-.Sy String |
-Permissions:
-.Sy Read Only
-.Ed
-.Bd -filled
-The
-.Sy varpd/id
-property indicates the identifier which the
-.Sy varpd
-service uses for this overlay.
-.Ed
-.It Sy vnetid
-.Bd -filled -compact
-.Sy UINT |
-Permissions:
-.Sy Read/Write
-.Ed
-.Bd -filled
-The
-.Sy vnetid
-property has the virtual network identifier that belongs to this overlay.
-The valid range for the virtual network identifier depends on the
-encapsulation engine.
-.Ed
-.El
-.Sh FMA INTEGRATION
-Overlay devices are wired into FMA, the illumos fault management
-architecture, and generates error reports depending on the
-.Sy search
-plugin in use.
-Due to limitations in FMA today, when a single overlay
-enters a degraded state, meaning that it cannot properly perform look
-ups or another error occurred, then it degrades the overall
-.Sy overlay
-pseudo-device driver.
-.Pp
-For more fine-grained information about which overlay is actually in a
-.Em degraded
-state, one should run
-.Sy dladm show-overlay -f .
-In addition, for each overlay in a degraded state a more useful
-diagnostic message is provided which describes the reason that caused
-this overlay to enter into a degraded state.
-.Pp
-The overlay driver is self-healing.
-If the problem corrects itself on its own, it will clear the fault on
-the corresponding device.
-.Sh SEE ALSO
-.Xr dladm 1M ,
-.Xr overlay_files 4 ,
-.Xr vxlan 7P
diff --git a/usr/src/man/man5/overlay_files.5 b/usr/src/man/man5/overlay_files.5
new file mode 100644
index 0000000000..a676e59f57
--- /dev/null
+++ b/usr/src/man/man5/overlay_files.5
@@ -0,0 +1,187 @@
+.\"
+.\" This file and its contents are supplied under the terms of the
+.\" Common Development and Distribution License ("CDDL"), version 1.0.
+.\" You may only use this file in accordance with the terms of version
+.\" 1.0 of the CDDL.
+.\"
+.\" A full copy of the text of the CDDL should have accompanied this
+.\" source. A copy of the CDDL is also available via the Internet at
+.\" http://www.illumos.org/license/CDDL.
+.\"
+.\"
+.\" Copyright 2015, Joyent, Inc.
+.\"
+.Dd Apr 13, 2015
+.Dt OVERLAY_FILES 5
+.Os
+.Sh NAME
+.Nm overlay_files
+.Nd Overlay files plugin file format
+.Sh DESCRIPTION
+The
+.Sy files
+plugin provides a means for a dynamic overlay where the destinations are
+determined based on a static description contained in a
+.Sy JSON
+file.
+This manual describes the format of the file used by the
+.Sy files/config
+property.
+To create and manage overlays with the
+.Sy files
+plugin, use
+.Xr dladm 8 .
+For more information on overlays, see
+.Xr overlay 7 .
+.Pp
+Using the
+.Sy files
+module, a static and simple overlay network can be created.
+This network does not support the use of
+.Em broadcast
+or
+.Em multicast
+traffic.
+Both ARP and NDP traffic are proxied by the plugin itself.
+In addition, the plugin allows for DHCP.
+Instead of providing a traditional DHCP proxy, when an initial DHCP broadcast
+goes out to a broadcast address, it will get rewritten to target a specific MAC
+address.
+The
+.Sy files
+plugin is useful as proof of concept and for simple static networks
+where addresses do not need to be reconfigured.
+If more advanced topologies or more streamlined updates are required, consider
+a different plugin.
+.Pp
+The file format is encoded as a series of
+.Sy JSON
+objects.
+Each object has a key, which is a MAC address on the
+.Sy overlay
+network.
+It has multiple values, some required, some optional, which describe various
+properties.
+The valid properties are:
+.Bl -hang -width Ds
+.It Sy ip
+.Bd -filled -compact
+The
+.Sy ip
+key indicates the IP address on the
+.Sy underlay
+network that houses the MAC address in question.
+Packets directed for the MAC address will be encapsulated and set to this
+address.
+This field is required.
+.Pp
+The value is a
+.Em JSON String .
+Both IPv4 and IPv6 addresses are supported and should be written out in their
+traditional forms.
+Follow the guidelines for writing addresses in
+.Xr inet_aton 3SOCKET .
+.Ed
+.It Sy port
+.Bd -filled -compact
+The
+.Sy port
+key indicates the port on the
+.Sy underlay
+network that houses the MAC address in question.
+This property is required if the encapsulation module requires a port for its
+destination.
+The value is a
+.Em JSON Number .
+.Ed
+.It Sy arp
+.Bd -filled -compact
+The
+.Sy arp
+key stores the IPv4 address that corresponds to this MAC address on the
+.Sy overlay
+network.
+This will be used to respond to ARP queries that would traditionally have been
+received by the OS kernel.
+If this address is not present, no IPv4 packets directed to this IP address will
+be received by the network interface that has this MAC address, regardless of
+what is configured on top of it.
+.Pp
+The value is a
+.Em JSON String
+and should be written out following the guidelines for IPv4 addresses in
+.Xr inet_aton 3SOCKET .
+.Ed
+.It Sy ndp
+.Bd -filled -compact
+The
+.Sy ndp
+key stores the IPv6 address that corresponds to this MAC address on the
+.Sy overlay
+network.
+This will be used to respond to NDP queries that would traditionally have been
+received by the OS kernel.
+If this address is not present, no IPv6 packets directed to this IP address will
+be received by the network interface that has this MAC address, regardless of
+what is configured on top of it.
+.Pp
+The value is a
+.Em JSON String
+and should be written out following the guidelines for IPv6 addresses in
+.Xr inet_aton 3SOCKET .
+.Ed
+.It Sy dhcp-proxy
+.Bd -filled -compact
+The
+.Sy dhcp-proxy
+key stores a MAC address that DHCP messages directed to a broadcast address get
+rewritten to be sent to.
+This can be viewed as a form of proxy DHCP, but is different in mechanism from a
+traditional proxy.
+The value is a
+.Em JSON String
+and should be written as a traditional MAC address string as described by
+.Xr ether_aton 3SOCKET .
+.Ed
+.El
+.Sh EXAMPLES
+.Sy Example 1
+Sample configuration file
+.Pp
+This configuration file provides information for three different MAC
+addresses.
+Each MAC address has an entry which describes what its IPv4
+and IPv6 address is, as well as the IP address and port of the host on
+the underlay network.
+Finally, one host has a DHCP proxy entry to demonstrate how one might
+configure DHCP.
+.Bd -literal -offset indent
+{
+ "de:ad:be:ef:00:00": {
+ "arp": "10.55.55.2",
+ "ip": "10.88.88.69",
+ "ndp": "fe80::3",
+ "port": 4789
+ },
+ "de:ad:be:ef:00:01": {
+ "arp": "10.55.55.3",
+ "dhcp-proxy": "de:ad:be:ef:00:00",
+ "ip": "10.88.88.70",
+ "ndp": "fe80::4",
+ "port": 4789
+ },
+ "de:ad:be:ef:00:02": {
+ "arp": "10.55.55.4",
+ "ip": "10.88.88.71",
+ "ndp": "fe80::5",
+ "port": 4789
+ }
+}
+.Ed
+.Sh STABILITY
+This file format is
+.Sy committed ;
+however, keys that are not listed here are reserved for future use.
+.Sh SEE ALSO
+.Xr overlay 7 ,
+.Xr dladm 8
diff --git a/usr/src/man/man5/packingrules.5 b/usr/src/man/man5/packingrules.5
new file mode 100644
index 0000000000..14a016cbeb
--- /dev/null
+++ b/usr/src/man/man5/packingrules.5
@@ -0,0 +1,183 @@
+'\" te
+.\" Copyright (c) 1996 Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 2015 Nexenta Systems, Inc. All rights reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PACKINGRULES 5 "Sep 8, 2015"
+.SH NAME
+packingrules \- packing rules file for filesync
+.SH SYNOPSIS
+.LP
+.nf
+\fB$\fR\fBHOME\fR\fB/.packingrules\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+\fB$\fR\fBHOME\fR\fB/.packingrules\fR is a packing rules file for
+\fBfilesync\fR. \fB$\fR\fBHOME\fR\fB/.packingrules\fR
+contains a list of directories and files that are to be packed and
+synchronized. It also contains a list of directories and files that are to be
+specifically excluded from packing and synchronization. See \fBfilesync\fR(1).
+.LP
+The \fB$\fR\fBHOME\fR\fB/.packingrules\fR file is automatically created if
+users invoke \fBfilesync\fR with filename arguments. By using \fBfilesync\fR
+options, users can augment the packing rules in
+\fB$\fR\fBHOME\fR\fB/.packingrules\fR.
+.LP
+Many users choose to manually create the packing rules file and edit it by
+hand. Users can edit \fB$\fR\fBHOME\fR\fB/.packingrules\fR (using any editor)
+to permanently change the \fB$\fR\fBHOME\fR\fB/.packingrules\fR file, or to
+gain access to more powerful options that are not available from the command
+line (such as \fBIGNORE\fR commands). It is much easier to enter complex
+wildcard expressions by editing the \fB$\fR\fBHOME\fR\fB/.packingrules\fR file.
+.LP
+Blank lines and lines that begin with a pound sign (`\fB#\fR') are ignored.
+.LP
+Any line can be continued by placing a backslash (`\fB\e\fR\&') immediately
+before the \fBNEWLINE.\fR
+.LP
+All other lines in the \fB$\fR\fBHOME\fR\fB/.packingrules\fR file have one of
+the following formats:
+.sp
+.ne 2
+.na
+\fB\fBPACKINGRULES\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fImajor\fR. \fIminor\fR. This line is not actually required, but it should be
+the first line of every packing rules file. This line identifies the packing
+rules file for the \fBfile\fR(1) command and specifies a format version
+number. The current version number is 1.1. See \fBfile\fR(1).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBBASE\fR \fIdirectory-1\fR [\fIdirectory-2\fR]\fR
+.ad
+.sp .6
+.RS 4n
+This line identifies a directory (or pair of directories) under which files
+should be packed and synchronized. At least one directory name must be
+specified. For rules that are to be used by \fBfilesync\fR a second directory
+name (where the copies are to be kept) must also be specified. The arguments
+must be fully qualified path names, and may include environment variables.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBLIST\fR \fIname\fR \|.\|.\|.\fR
+.ad
+.sp .6
+.RS 4n
+This line enumerates a list of files and sub-directories (beneath the current
+\fBBASE)\fR that are to be kept synchronized. This specification is recursive,
+in that specifying the name of a directory automatically includes all files and
+subdirectories it contains. Regular expressions (as described in \fBglob\fR
+and \fBgmatch\fR) are permitted. See \fBglob\fR(1) and \fBgmatch\fR(3GEN).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBIGNORE\fR \fIname\fR \|.\|.\|.\fR
+.ad
+.sp .6
+.RS 4n
+This line enumerates a list of files that are not to be kept synchronized.
+Regular expressions (using \fBglob\fR and \fBgmatch\fR) are permitted.
+.RE
+
+.sp
+.LP
+There are important differences between the arguments to \fBLIST\fR and
+\fBIGNORE\fR statements. The arguments to a \fBLIST\fR statement can contain
+slashes and are interpreted as file names relative to the \fBBASE\fR
+directories. The arguments to an \fBIGNORE\fR statement are simpler names or
+expressions that cannot contain slashes. An \fBIGNORE\fR statement will not
+override a \fBLIST\fR statement. \fBIGNORE\fR statements only exclude files
+that are found beneath \fBLISTed\fR directories.
+.sp
+.LP
+If the first name argument to a \fBLIST\fR statement begins with an
+exclamation point (`\fB!\fR'), the remainder of the statement will be executed
+as a command. The command will be run in the current \fBBASE\fR directory. The
+output of the command will be treated as a list of newline separated file
+names to be packed/synchronized. The resulting file names will be interpreted
+relative to the enclosing \fBBASE\fR directory.
+.sp
+.LP
+If the first name argument to an \fBIGNORE\fR statement begins with an
+exclamation point (`\fB!\fR'), the remainder of the statement will be executed
+as a command. The command will be run in the current \fBBASE\fR directory. The
+command will be expected to figure out which names should not be synchronized.
+The output of the command will be treated as a list of newline separated file
+names that should be excluded from the packing and synchronization list.
+.sp
+.LP
+Commands will be broken into distinct arguments and run directly with \fBsh
+\fR\fB-c\fR. Blanks can be embedded in an argument by escaping them with a
+backslash (`\fB\e\fR\&') or enclosing the argument in double quotes (`
+\fB"\fR '). Double quotes can be passed in arguments by escaping the double quotes with
+a backslash (`\fB\e\fR\&').
+.sp
+.LP
+\fBLIST\fR lines only apply to the \fBBASE\fR statement that precedes them.
+\fBIGNORE\fR lines can appear before any \fBBASE\fR statement (in which case
+they apply to all \fBBASEs)\fR or after a \fBBASE\fR statement (in which case
+they only apply to the \fBBASE\fR that precedes them). Any number of these
+statements can occur in any combination. The order is not important.
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRA sample \fB$\fR\fBHOME\fR\fB\&.packingrules\fR file.
+.sp
+.LP
+The use of these statements is illustrated in the following
+\fB$\fR\fBHOME\fR\fB\&.packingrules\fR file.
+
+.sp
+.in +2
+.nf
+#
+# junk files, not worth copying
+#
+IGNORE core *.o *.bak *%
+#
+# most of the stuff I want to keep in sync is in my $HOME
+#
+BASE /net/bigserver/export/home/myname $HOME
+# everything in my work sub-directory should be maintained
+LIST work
+# a few of my favorite mail boxes should be replicated
+LIST m/incoming
+LIST m/action
+LIST m/pending
+#
+# I like to carry around a couple of project directories
+# but skip all the postscript output
+#
+BASE /net/bigserver/export/projects $HOME/projects
+LIST poindexter epiphany
+IGNORE *.ps
+#
+# the foonly package should always be kept on every machine
+#
+BASE /net/bigserver/opt/foonly /opt/foonly
+LIST !cat .packinglist
+#
+# and the latest executables for the standard build environment
+#
+BASE /net/bigserver/export/buildenv $HOME/buildenv
+LIST !find . -type f -a -perm -111 -a -print
+.fi
+.in -2
+.sp
+
+.SH SEE ALSO
+.LP
+.BR file (1),
+.BR filesync (1)
diff --git a/usr/src/man/man5/pam.conf.5 b/usr/src/man/man5/pam.conf.5
new file mode 100644
index 0000000000..6fbbf71585
--- /dev/null
+++ b/usr/src/man/man5/pam.conf.5
@@ -0,0 +1,478 @@
+'\" te
+.\" Copyright (C) 2006, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PAM.CONF 5 "Mar 4, 2017"
+.SH NAME
+pam.conf \- configuration file for pluggable authentication modules
+.SH SYNOPSIS
+.LP
+.nf
+\fB/etc/pam.conf\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+\fBpam.conf\fR is the configuration file for the Pluggable Authentication
+Module architecture, or \fBPAM\fR. A \fBPAM\fR module provides functionality
+for one or more of four possible services: authentication, account management,
+session management, and password management.
+.sp
+.ne 2
+.na
+\fBauthentication service module\fR
+.ad
+.sp .6
+.RS 4n
+Provides functionality to authenticate a user and set up user credentials.
+.RE
+
+.sp
+.ne 2
+.na
+\fBaccount management module\fR
+.ad
+.sp .6
+.RS 4n
+Provides functionality to determine if the current user's account is valid.
+This includes checking for password and account expiration, as well as
+verifying access hour restrictions.
+.RE
+
+.sp
+.ne 2
+.na
+\fBsession management module\fR
+.ad
+.sp .6
+.RS 4n
+Provides functionality to set up and terminate login sessions.
+.RE
+
+.sp
+.ne 2
+.na
+\fBpassword management module\fR
+.ad
+.sp .6
+.RS 4n
+Provides functionality to change a user's authentication token or password.
+.RE
+
+.sp
+.LP
+Each of the four service modules can be implemented as a shared library object
+which can be referenced in the \fBpam.conf\fR configuration file.
+.SS "Simplified pam.conf Configuration File"
+.LP
+The \fBpam.conf\fR file contains a listing of services. Each service is paired
+with a corresponding service module. When a service is requested, its
+associated module is invoked. Each entry may be a maximum of 256 characters,
+including the end of line, and has the following format:
+.sp
+.in +2
+.nf
+\fIservice_name module_type control_flag module_path options\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The following is an example of a \fBpam.conf\fR configuration file with support
+for authentication, account management, session management and password
+management modules (See the \fBpam.conf\fR file that is shipped with your
+system for the contents of this file):
+.sp
+.in +2
+.nf
+login auth requisite pam_authtok_get.so.1
+login auth required pam_dhkeys.so.1
+login auth required pam_unix_auth.so.1
+login auth required pam_dial_auth.so.1
+
+other account requisite pam_roles.so.1
+other account required pam_unix_account.so.1
+
+other session required pam_unix_session.so.1
+
+other password required pam_dhkeys.so.1
+other password requisite pam_authtok_get.so.1
+other password requisite pam_authtok_check.so.1
+other password required pam_authtok_store.so.1
+.fi
+.in -2
+
+.sp
+.LP
+\fIservice_name\fR denotes the service (for example, \fBlogin\fR,
+\fBdtlogin\fR, or \fBrlogin\fR).
+.sp
+.LP
+The keyword, "\fBother\fR," indicates the module that all other applications
+which have not been specified should use. The "\fBother\fR" keyword can also be
+used if all services of the same \fImodule_type\fR have the same requirements.
+.sp
+.LP
+In the example, since all of the services use the same session module, they
+could have been replaced by a single \fBother\fR line.
+.sp
+.LP
+\fImodule_type\fR denotes the service module type: authentication (\fBauth\fR),
+account management (\fBaccount\fR), session management (\fBsession\fR), or
+password management (\fBpassword\fR).
+.sp
+.LP
+The \fIcontrol_flag\fR field determines the behavior of stacking.
+.sp
+.LP
+The \fImodule_path\fR field specifies the relative pathname to a shared library
+object, or an included \fBPAM\fR configuration file, which implements the
+service functionality. If the pathname is not absolute, shared library objects
+are assumed to be relative to \fB/usr/lib/security/$ISA/\fR, and included
+\fBPAM\fR configuration files are assumed to be relative to
+\fB/usr/lib/security/\fR.
+.sp
+.LP
+The \fBISA\fR token is replaced by an implementation defined directory name
+which defines the path relative to the calling program's instruction set
+architecture.
+.sp
+.LP
+The \fIoptions\fR field is used by the \fBPAM\fR framework layer to pass module
+specific options to the modules. It is up to the module to parse and interpret
+the options.
+.sp
+.LP
+This field can be used by the modules to turn on debugging or to pass any
+module specific parameters such as a \fBTIMEOUT\fR value. The options supported
+by the modules are documented in their respective manual pages.
+.SS "Integrating Multiple Authentication Services With Stacking"
+.LP
+When a \fIservice_name\fR of the same \fImodule_type\fR is defined more than
+once, the service is said to be stacked. Each module referenced in the
+\fImodule_path\fR for that service is then processed in the order that it
+occurs in the configuration file. The \fIcontrol_flag\fR field specifies the
+continuation and failure semantics of the modules, and can contain one of the
+following values:
+.sp
+.ne 2
+.na
+\fB\fBbinding\fR\fR
+.ad
+.RS 14n
+If the service module returns success and no preceding \fBrequired\fR modules
+returned failures, immediately return success without calling any subsequent
+modules. If a failure is returned, treat the failure as a \fBrequired\fR module
+failure, and continue to process the \fBPAM\fR stack.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBinclude\fR\fR
+.ad
+.RS 14n
+Process the lines from the \fBPAM\fR configuration file that is specified in
+the \fImodule_path\fR at this point in the \fBPAM\fR stack. The ``\fBother\fR''
+keyword is used if the specified service_name is not found. 32 levels of
+included \fBPAM\fR configuration files are supported. Any options are ignored.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBoptional\fR\fR
+.ad
+.RS 14n
+If the service module returns success, record the success, and continue to
+process the \fBPAM\fR stack. If a failure is returned, and it is the first
+\fBoptional\fR module failure, save the failure code as an \fBoptional\fR
+failure. Continue to process the \fBPAM\fR stack.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrequired\fR\fR
+.ad
+.RS 14n
+If the service module returns success, record the success, and continue to
+process the \fBPAM\fR stack. If a failure is returned, and it is the first
+\fBrequired\fR failure, save the failure code as a \fBrequired\fR failure.
+Continue to process the \fBPAM\fR stack.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrequisite\fR\fR
+.ad
+.RS 14n
+If the service module returns success, record the success, and continue to
+process the \fBPAM\fR stack. If a failure is returned, immediately return the
+first non-optional failure value recorded without calling any subsequent
+modules. That is, return this failure unless a previous required service module
+failed. If a previous required service module failed, then return the first of
+those values.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsufficient\fR\fR
+.ad
+.RS 14n
+If the service module return success and no preceding required modules returned
+failures, immediately return success without calling any subsequent modules. If
+a failure is returned, treat the failure as an optional module failure, and
+continue to process the \fBPAM\fR stack.
+.RE
+
+.sp
+.LP
+If the \fBPAM\fR stack runs to completion, that is, neither a \fBrequisite\fR
+module failed, nor a \fBbinding\fR or \fBsufficient\fR module success stops it,
+success is returned if no required modules failed and at least one required,
+requisite, optional module succeeded. If no module succeeded and a required or
+binding module failed, the first of those errors is returned. If no required or
+binding module failed and an optional module failed, the first of the option
+module errors is returned. If no module in the stack succeeded or failed, that
+is, all modules returned an ignore status, a default error based on module
+type, for example, "User account expired," is returned.
+.sp
+.LP
+All errors in \fBpam.conf\fR entries are logged to \fBsyslog\fR as
+\fBLOG_AUTH\fR | \fBLOG_ERR\fR errors. The use of a service with an error noted
+in the \fBpam.conf\fR entry for that service will fail. The system
+administrator will need to correct the noted errors before that service may be
+used. If no services are available or the \fBpam.conf\fR file is missing, the
+system administrator may enter system maintenance mode to correct or restore
+the file.
+.sp
+.LP
+The following is a sample configuration file that stacks the \fBsu\fR,
+\fBlogin\fR, and \fBrlogin\fR services.
+.sp
+.in +2
+.nf
+su auth required pam_inhouse.so.1
+su auth requisite pam_authtok_get.so.1
+su auth required pam_dhkeys.so.1
+su auth required pam_unix_auth.so.1
+
+login auth requisite pam_authtok_get.so.1
+login auth required pam_dhkeys.so.1
+login auth required pam_unix_auth.so.1
+login auth required pam_dial_auth.so.1
+login auth optional pam_inhouse.so.1
+
+rlogin auth sufficient pam_rhosts_auth.so.1
+rlogin auth requisite pam_authtok_get.so.1
+rlogin auth required pam_dhkeys.so.1
+rlogin auth required pam_unix_auth.so.1
+.fi
+.in -2
+
+.sp
+.LP
+In the case of \fBsu\fR, the user is authenticated by the \fBinhouse\fR and
+\fBauthtok_get\fR, \fBdhkeys\fR, and \fBunix_auth\fR authentication modules.
+Because the \fBinhouse\fR and the other authentication modules are
+\fBrequired\fR and \fBrequisite\fR, respectively, an error is returned back to
+the application if any module fails. In addition, if the \fBrequisite\fR
+authentication (\fBpam_authtok_get\fR authentication) fails, the other
+authentication modules are never invoked, and the error is returned immediately
+back to the application.
+.sp
+.LP
+In the case of \fBlogin\fR, the \fBrequired\fR keyword for \fIcontrol_flag\fR
+requires that the user be allowed to login only if the user is authenticated by
+all the service modules. If \fBpam_unix_auth\fR authentication fails, control
+continues to proceed down the stack, and the \fBinhouse\fR authentication
+module is invoked. \fBinhouse\fR authentication is optional by virtue of the
+optional keyword in the \fIcontrol_flag\fR field. The user can still log in
+even if \fBinhouse\fR authentication fails, assuming the modules stacked above
+succeeded.
+.sp
+.LP
+In the case of \fBrlogin\fR, the \fBsufficient\fR keyword for
+\fIcontrol_flag\fR specifies that if the \fBrhosts\fR authentication check
+succeeds, then \fBPAM\fR should return success to \fBrlogin\fR and \fBrlogin\fR
+should not prompt the user for a password. The other authentication modules,
+which are in the stack, will only be invoked if the \fBrhosts\fR check fails.
+This gives the system administrator the flexibility to determine if
+\fBrhosts\fR alone is sufficient enough to authenticate a remote user.
+.sp
+.LP
+Some modules return \fBPAM_IGNORE\fR in certain situations. In these cases the
+\fBPAM\fR framework ignores the entire entry in \fBpam.conf\fR regardless of
+whether or not it is \fBbinding\fR, \fBrequisite\fR, \fBrequired\fR,
+\fBoptional\fR, or \fBsufficient\fR.
+.SS "Utilities and Files"
+.LP
+The specific service names and module types for each service should be
+documented in the man page for that service. For instance, the \fBsshd\fR(8)
+man page lists all of the \fBPAM\fR service names and module types for the
+\fBsshd\fR command.
+.sp
+.LP
+The \fBPAM\fR configuration file does not dictate either the name or the
+location of the service specific modules. The convention, however, is the
+following:
+.sp
+.ne 2
+.na
+\fB\fBpam_module_name.so.x\fR\fR
+.ad
+.RS 29n
+File that implements various function of specific authentication services. As
+the relative pathname specified, \fB/usr/lib/security/$ISA\fR is prepended to
+it.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/pam.conf\fR\fR
+.ad
+.RS 29n
+Configuration file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/$ISA/libpam.so.1\fR\fR
+.ad
+.RS 29n
+File that implements the \fBPAM\fR framework library
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRUsing the include control flag
+.sp
+.LP
+The following example collects the common Unix modules into a single file to be
+included as needed in the example of a \fBpam.conf\fR file. The common Unix
+module file is named \fBunix_common\fR and consists of:
+
+.sp
+.in +2
+.nf
+OTHER auth requisite pam_authtok_get.so.1
+OTHER auth required pam_dhkeys.so.1
+OTHER auth required pam_unix_auth.so.1
+OTHER auth required pam_unix_cred.so.1
+OTHER account requisite pam_roles.so.1
+OTHER account required pam_unix_account.so.1
+OTHER session required pam_unix_session.so.1
+OTHER password required pam_dhkeys.so.1
+OTHER password requisite pam_authtok_get.so.1
+OTHER password requisite pam_authtok_check.so.1
+OTHER password required pam_authtok_store.so.1
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The \fBpam.conf\fR file and consists of:
+
+.sp
+.in +2
+.nf
+# Authentication management
+#
+# login service (explicit because of pam_dial_auth)
+#
+login auth include unix_common
+login auth required pam_dial_auth.so.1
+#
+# rlogin service (explicit because of pam_rhost_auth)
+#
+rlogin auth sufficient pam_rhosts_auth.so.1
+rlogin auth include unix_common
+#
+# Default definitions for Authentication management
+# Used when service name is not explicitly mentioned
+#
+OTHER auth include unix_common
+#
+# Default definition for Account management
+# Used when service name is not explicitly mentioned
+#
+OTHER account include unix_common
+#
+# Default definition for Session management
+# Used when service name is not explicitly mentioned
+#
+OTHER session include unix_common
+#
+# Default definition for Password management
+# Used when service name is not explicitly mentioned
+#
+OTHER password include unix_common
+.fi
+.in -2
+.sp
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability See Below.
+.TE
+
+.sp
+.LP
+The format is Stable. The contents has no stability attributes.
+.SH SEE ALSO
+.LP
+.BR login (1),
+.BR passwd (1),
+.BR syslog (3C),
+.BR libpam (3LIB),
+.BR pam (3PAM),
+.BR attributes (7),
+.BR environ (7),
+.BR pam_authtok_check (7),
+.BR pam_authtok_get (7),
+.BR pam_authtok_store (7),
+.BR pam_dhkeys (7),
+.BR pam_krb5 (7),
+.BR pam_passwd_auth (7),
+.BR pam_unix_account (7),
+.BR pam_unix_auth (7),
+.BR pam_unix_session (7),
+.BR in.rlogind (8),
+.BR in.rshd (8),
+.BR in.telnetd (8),
+.BR in.uucpd (8),
+.BR init (8),
+.BR sac (8),
+.BR su (8),
+.BR ttymon (8)
+.SH NOTES
+.LP
+The \fBpam_unix\fR module is no longer supported. Similar functionality is
+provided by \fBpam_authtok_check\fR(7), \fBpam_authtok_get\fR(7),
+\fBpam_authtok_store\fR(7), \fBpam_dhkeys\fR(7), \fBpam_passwd_auth\fR(7),
+\fBpam_unix_account\fR(7), \fBpam_unix_auth\fR(7), and
+\fBpam_unix_session\fR(7).
+.sp
+.LP
+With the removal of the \fBpam_unix\fR module, the SunOS delivered PAM service
+modules no longer need or support the "\fBuse_first_pass\fR" or
+"\fBtry_first_pass\fR" options. This functionality is provided by stacking
+\fBpam_authtok_get\fR(7) above a module that requires a password.
diff --git a/usr/src/man/man5/pam_allow.5 b/usr/src/man/man5/pam_allow.5
deleted file mode 100644
index 857f910479..0000000000
--- a/usr/src/man/man5/pam_allow.5
+++ /dev/null
@@ -1,110 +0,0 @@
-'\" te
-.\" Copyright (c) 2005, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PAM_ALLOW 5 "Aug 25, 2005"
-.SH NAME
-pam_allow \- PAM authentication, account, session and password management PAM
-module to allow operations
-.SH SYNOPSIS
-.LP
-.nf
-\fBpam_allow.so.1\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBpam_allow\fR module implements all the PAM service module functions and
-returns \fBPAM_SUCCESS\fR for all calls. Opposite functionality is available in
-the \fBpam_deny\fR(5) module.
-.sp
-.LP
-Proper Solaris authentication operation requires \fBpam_unix_cred\fR(5) be
-stacked above \fBpam_allow\fR.
-.sp
-.LP
-The following options are interpreted:
-.sp
-.ne 2
-.na
-\fBdebug\fR
-.ad
-.RS 9n
-Provides \fBsyslog\fR(3C) debugging information at the \fBLOG_AUTH |
-LOG_DEBUG\fR level.
-.RE
-
-.SH ERRORS
-.sp
-.LP
-\fBPAM_SUCCESS\fR is always returned.
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRAllowing \fBssh none\fR
-.sp
-.LP
-The following example is a \fBpam.conf\fR fragment that illustrates a sample
-for allowing \fBssh none\fR authentication:
-
-.sp
-.in +2
-.nf
-sshd-none auth required pam_unix_cred.so.1
-sshd-none auth sufficient pam_allow.so.1
-sshd-none account sufficient pam_allow.so.1
-sshd-none session sufficient pam_allow.so.1
-sshd-none password sufficient pam_allow.so.1
-.fi
-.in -2
-
-.LP
-\fBExample 2 \fRAllowing Kiosk Automatic Login Service
-.sp
-.LP
-The following is example is a \fBpam.conf\fR fragment that illustrates a sample
-for allowing \fBgdm\fR kiosk auto login:
-
-.sp
-.in +2
-.nf
-gdm-autologin auth required pam_unix_cred.so.1
-gdm-autologin auth sufficient pam_allow.so.1
-.fi
-.in -2
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Stable
-_
-MT Level MT-Safe with exceptions
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBlibpam\fR(3LIB), \fBpam\fR(3PAM), \fBpam_sm\fR(3PAM), \fBsyslog\fR(3C),
-\fBpam.conf\fR(4), \fBattributes\fR(5), \fBpam_deny\fR(5),
-\fBpam_unix_cred\fR(5)
-.SH NOTES
-.sp
-.LP
-The interfaces in \fBlibpam\fR(3LIB) are MT-Safe only if each thread within the
-multi-threaded application uses its own PAM handle.
-.sp
-.LP
-This module is intended to be used to either allow access to specific services
-names, or to all service names not specified (by specifying it as the default
-service stack).
diff --git a/usr/src/man/man5/pam_authtok_check.5 b/usr/src/man/man5/pam_authtok_check.5
deleted file mode 100644
index 2c6c0f544d..0000000000
--- a/usr/src/man/man5/pam_authtok_check.5
+++ /dev/null
@@ -1,191 +0,0 @@
-'\" te
-.\" Copyright (C) 2003, Sun Microsystems, Inc.
-.\" All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PAM_AUTHTOK_CHECK 5 "Mar 1, 2005"
-.SH NAME
-pam_authtok_check \- authentication and password management module
-.SH SYNOPSIS
-.LP
-.nf
-\fBpam_authtok_check.so.1\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBpam_authtok_check\fR provides functionality to the Password Management
-stack. The implementation of \fBpam_sm_chauthtok()\fR performs a number of
-checks on the construction of the newly entered password.
-\fBpam_sm_chauthtok()\fR is invoked twice by the PAM framework, once with flags
-set to \fBPAM_PRELIM_CHECK\fR, and once with flags set to
-\fBPAM_UPDATE_AUTHTOK\fR. This module only performs its checks during the first
-invocation. This module expects the current authentication token in the
-\fBPAM_OLDAUTHTOK\fR item, the new (to be checked) password in the
-\fBPAM_AUTHTOK\fR item, and the login name in the \fBPAM_USER\fR item. The
-checks performed by this module are:
-.sp
-.ne 2
-.na
-\fBlength\fR
-.ad
-.RS 20n
-The password length should not be less that the minimum specified in
-\fB/etc/default/passwd\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBcircular shift\fR
-.ad
-.RS 20n
-The password should not be a circular shift of the login name. This check may
-be disabled in \fB/etc/default/passwd\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBcomplexity\fR
-.ad
-.RS 20n
-The password should contain at least the minimum number of characters described
-by the parameters \fBMINALPHA\fR, \fBMINNONALPHA\fR, \fBMINDIGIT\fR, and
-\fBMINSPECIAL\fR. Note that \fBMINNONALPHA\fR describes the same character
-classes as \fBMINDIGIT\fR and \fBMINSPECIAL\fR combined; therefore the user
-cannot specify both \fBMINNONALPHA\fR and \fBMINSPECIAL\fR (or \fBMINDIGIT\fR).
-The user must choose which of the two options to use. Furthermore, the
-\fBWHITESPACE\fR parameter determines whether whitespace characters are
-allowed. If unspecified \fBMINALPHA\fR is 2, \fBMINNONALPHA\fR is 1 and
-\fBWHITESPACE\fR is yes
-.RE
-
-.sp
-.ne 2
-.na
-\fBvariation\fR
-.ad
-.RS 20n
-The old and new passwords must differ by at least the \fBMINDIFF\fR value
-specified in \fB/etc/default/passwd\fR. If unspecified, the default is 3. For
-accounts in name services which support password history checking, if prior
-history is defined, the new password must not match the prior passwords.
-.RE
-
-.sp
-.ne 2
-.na
-\fBdictionary check\fR
-.ad
-.RS 20n
-The password must not be based on a dictionary word. The list of words to be
-used for the site's dictionary can be specified with \fBDICTIONLIST\fR. It
-should contain a comma-separated list of filenames, one word per line. The
-database that is created from these files is stored in the directory named by
-\fBDICTIONDBDIR\fR (defaults to \fB/var/passwd\fR). See \fBmkpwdict\fR(1M) for
-information on pre-generating the database. If neither \fBDICTIONLIST\fR nor
-\fBDICTIONDBDIR\fR is specified, no dictionary check is made.
-.RE
-
-.sp
-.ne 2
-.na
-\fBupper/lower case\fR
-.ad
-.RS 20n
-The password must contain at least the minimum of upper- and lower-case letters
-specified by the \fBMINUPPER\fR and \fBMINLOWER\fR values in
-\fB/etc/default/passwd\fR. If unspecified, the defaults are 0.
-.RE
-
-.sp
-.ne 2
-.na
-\fBmaximum repeats\fR
-.ad
-.RS 20n
-The password must not contain more consecutively repeating characters than
-specified by the \fBMAXREPEATS\fR value in \fB/etc/default/passwd\fR. If
-unspecified, no repeat character check is made.
-.RE
-
-.sp
-.LP
-The following option may be passed to the module:
-.sp
-.ne 2
-.na
-\fBforce_check\fR
-.ad
-.RS 15n
-If the \fBPAM_NO_AUTHTOK_CHECK\fR flag set, \fBforce_check\fR ignores this
-flag. The \fBPAM_NO_AUTHTOK_CHECK\fR flag can be set to bypass password checks
-(see \fBpam_chauthtok\fR(3PAM)).
-.RE
-
-.sp
-.ne 2
-.na
-\fBdebug\fR
-.ad
-.RS 15n
-\fBsyslog\fR(3C) debugging information at the \fBLOG_DEBUG\fR level
-.RE
-
-.SH RETURN VALUES
-.sp
-.LP
-If the password in \fBPAM_AUTHTOK\fR passes all tests, \fBPAM_SUCCESS\fR is
-returned. If any of the tests fail, \fBPAM_AUTHTOK_ERR\fR is returned.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB/etc/default/passwd\fR
-.ad
-.RS 23n
-See \fBpasswd\fR(1) for a description of the contents.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-_
-MT Level MT-Safe with exceptions
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBpasswd\fR(1), \fBpam\fR(3PAM), \fBmkpwdict\fR(1M),
-\fBpam_chauthtok\fR(3PAM), \fBsyslog\fR(3C), \fBlibpam\fR(3LIB),
-\fBpam.conf\fR(4), \fBpasswd\fR(4), \fBshadow\fR(4), \fBattributes\fR(5),
-\fBpam_authtok_get\fR(5), \fBpam_authtok_store\fR(5), \fBpam_dhkeys\fR(5),
-\fBpam_passwd_auth\fR(5), \fBpam_unix_account\fR(5), \fBpam_unix_auth\fR(5),
-\fBpam_unix_session\fR(5)
-.SH NOTES
-.sp
-.LP
-The interfaces in \fBlibpam\fR(3LIB) are MT-Safe only if each thread within the
-multi-threaded application uses its own \fBPAM\fR handle.
-.sp
-.LP
-The \fBpam_unix\fR(5) module is no longer supported. Similar functionality is
-provided by \fBpam_authtok_check\fR(5), \fBpam_authtok_get\fR(5),
-\fBpam_authtok_store\fR(5), \fBpam_dhkeys\fR(5), \fBpam_passwd_auth\fR(5),
-\fBpam_unix_account\fR(5), \fBpam_unix_auth\fR(5), and
-\fBpam_unix_session\fR(5).
diff --git a/usr/src/man/man5/pam_authtok_get.5 b/usr/src/man/man5/pam_authtok_get.5
deleted file mode 100644
index b4e4d650a4..0000000000
--- a/usr/src/man/man5/pam_authtok_get.5
+++ /dev/null
@@ -1,140 +0,0 @@
-'\" te
-.\" Copyright (C) 2003, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PAM_AUTHTOK_GET 5 "April 9, 2016"
-.SH NAME
-pam_authtok_get \- authentication and password management module
-.SH SYNOPSIS
-.LP
-.nf
-\fBpam_authtok_get.so.1\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBpam_authtok_get\fR service module provides password prompting
-functionality to the PAM stack. It implements \fBpam_sm_authenticate()\fR and
-\fBpam_sm_chauthtok()\fR, providing functionality to both the Authentication
-Stack and the Password Management Stack.
-.SS "Authentication Service"
-.LP
-The implementation of \fBpam_sm_authenticate\fR(3PAM) prompts the user name if
-not set and then tries to get the authentication token from the pam handle. If
-the token is not set, it then prompts the user for a password and stores it in
-the \fBPAM\fR item \fBPAM_AUTHTOK\fR. This module is meant to be the first
-module on an authentication stack where users are to authenticate using a
-keyboard.
-.SS "Password Management Service"
-.LP
-Due to the nature of the PAM Password Management stack traversal mechanism, the
-\fBpam_sm_chauthtok\fR(3PAM) function is called twice. Once with the
-\fBPAM_PRELIM_CHECK\fR flag, and one with the \fBPAM_UPDATE_AUTHTOK\fR flag.
-.sp
-.LP
-In the first (\fBPRELIM\fR) invocation, the implementation of
-\fBpam_sm_chauthtok\fR(3PAM) moves the contents of the \fBPAM_AUTHTOK\fR
-(current authentication token) to \fBPAM_OLDAUTHTOK\fR, and subsequently
-prompts the user for a new password. This new password is stored in
-\fBPAM_AUTHTOK\fR.
-.sp
-.LP
-If a previous module has set \fBPAM_OLDAUTHTOK\fR prior to the invocation of
-pam_authtok_get, this module turns into a \fBNO-OP\fR and immediately returns
-\fBPAM_SUCCESS\fR.
-.sp
-.LP
-In the second (\fBUPDATE\fR) invocation, the user is prompted to Re-enter his
-password. The pam_sm_chauthtok implementation verifies this reentered password
-with the password stored in \fBPAM_AUTHTOK\fR. If the passwords match, the
-module returns \fBPAM_SUCCESS\fR.
-.sp
-.LP
-The following option can be passed to the module:
-.sp
-.ne 2
-.na
-\fBdebug\fR
-.ad
-.RS 9n
-\fBsyslog\fR(3C) debugging information at the \fBLOG_DEBUG\fR level
-.RE
-
-.SH ERRORS
-.LP
-The authentication service returns the following error codes:
-.sp
-.ne 2
-.na
-\fB\fBPAM_SUCCESS\fR\fR
-.ad
-.RS 18n
-Successfully obtains authentication token
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_SYSTEM_ERR\fR\fR
-.ad
-.RS 18n
-Fails to retrieve username, username is \fBNULL\fR or empty
-.RE
-
-.sp
-.LP
-The password management service returns the following error codes:
-.sp
-.ne 2
-.na
-\fB\fBPAM_SUCCESS\fR\fR
-.ad
-.RS 19n
-Successfully obtains authentication token
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_AUTHTOK_ERR\fR\fR
-.ad
-.RS 19n
-Authentication token manipulation error
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-_
-MT Level MT-Safe with exceptions
-.TE
-
-.SH SEE ALSO
-.LP
-\fBpam\fR(3PAM), \fBpam_authenticate\fR(3PAM), \fBsyslog\fR(3C),
-\fBlibpam\fR(3LIB), \fBpam.conf\fR(4), \fBattributes\fR(5),
-\fBpam_authtok_check\fR(5), pam_authtok_get(5), \fBpam_authtok_store\fR(5),
-\fBpam_dhkeys\fR(5), \fBpam_passwd_auth\fR(5), \fBpam_unix_account\fR(5),
-\fBpam_unix_auth\fR(5), \fBpam_unix_session\fR(5)
-.SH NOTES
-.LP
-The interfaces in \fBlibpam\fR(3LIB) are MT-Safe only if each thread within the
-multi-threaded application uses its own PAM handle.
-.sp
-.LP
-The \fBpam_unix\fR(5) module is no longer supported. Similar functionality is
-provided by \fBpam_authtok_check\fR(5), \fBpam_authtok_get\fR(5),
-\fBpam_authtok_store\fR(5), \fBpam_dhkeys\fR(5), \fBpam_passwd_auth\fR(5),
-\fBpam_unix_account\fR(5), \fBpam_unix_auth\fR(5), and
-\fBpam_unix_session\fR(5).
diff --git a/usr/src/man/man5/pam_authtok_store.5 b/usr/src/man/man5/pam_authtok_store.5
deleted file mode 100644
index 9f4ddcb2de..0000000000
--- a/usr/src/man/man5/pam_authtok_store.5
+++ /dev/null
@@ -1,121 +0,0 @@
-'\" te
-.\" Copyright (C) 2002, Sun Microsystems, Inc.
-.\" All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PAM_AUTHTOK_STORE 5 "Jan 26, 2004"
-.SH NAME
-pam_authtok_store \- password management module
-.SH SYNOPSIS
-.LP
-.nf
-\fBpam_authtok_store.so.1\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBpam_authtok_store\fR provides functionality to the PAM password management
-stack. It provides one function: \fBpam_sm_chauthtok()\fR.
-.sp
-.LP
-When invoked with flags set to \fBPAM_UPDATE_AUTHTOK\fR, this module updates
-the authentication token for the user specified by \fBPAM_USER\fR.
-.sp
-.LP
-The authentication token \fBPAM_OLDAUTHTOK\fR can be used to authenticate the
-user against repositories that need updating (\fBNIS\fR, \fBLDAP\fR). After
-successful updates, the new authentication token stored in \fBPAM_AUTHTOK\fR is
-the user's valid password.
-.sp
-.LP
-This module honors the \fBPAM_REPOSITORY\fR item, which, if set, specifies
-which repository is to be updated. If \fBPAM_REPOSITORY\fR is unset, it follows
-the \fBnsswitch.conf\fR(4).
-.sp
-.LP
-The following option can be passed to the module:
-.sp
-.ne 2
-.na
-\fB\fBdebug\fR\fR
-.ad
-.RS 17n
-\fBsyslog\fR(3C) debugging information at the \fBLOG_DEBUG\fR level
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBserver_policy\fR\fR
-.ad
-.RS 17n
-If the account authority for the user, as specified by \fBPAM_USER\fR, is a
-server, do not encrypt the authentication token before updating.
-.RE
-
-.SH ERRORS
-.sp
-.ne 2
-.na
-\fB\fBPAM_SUCCESS\fR\fR
-.ad
-.RS 18n
-Successfully obtains authentication token
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_SYSTEM_ERR\fR\fR
-.ad
-.RS 18n
-Fails to get username, service name, old password or new password, user name
-null or empty, or password null.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-_
-MT Level MT-Safe with exceptions
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBpam\fR(3PAM), \fBpam_authenticate\fR(3PAM), \fBpam_chauthtok\fR(3PAM),
-\fBsyslog\fR(3C), \fBlibpam\fR(3LIB), \fBpam.conf\fR(4), \fBattributes\fR(5),
-\fBpam_authtok_check\fR(5), \fBpam_authtok_get\fR(5), \fBpam_dhkeys\fR(5),
-\fBpam_passwd_auth\fR(5), \fBpam_unix_account\fR(5), \fBpam_unix_auth\fR(5),
-\fBpam_unix_session\fR(5)
-.SH NOTES
-.sp
-.LP
-The interfaces in \fBlibpam\fR(3LIB) are MT-Safe only if each thread within the
-multi-threaded application uses its own \fBPAM\fR handle.
-.sp
-.LP
-The \fBpam_unix\fR(5) module is no longer supported. Similar functionality is
-provided by \fBpam_authtok_check\fR(5), \fBpam_authtok_get\fR(5),
-\fBpam_authtok_store\fR(5), \fBpam_dhkeys\fR(5), \fBpam_passwd_auth\fR(5),
-\fBpam_unix_account\fR(5), \fBpam_unix_auth\fR(5), and
-\fBpam_unix_session\fR(5).
-.sp
-.LP
-If the \fBPAM_REPOSITORY\fR \fIitem_type\fR is set and a service module does
-not recognize the type, the service module does not process any information,
-and returns \fBPAM_IGNORE\fR. If the \fBPAM_REPOSITORY\fR \fIitem_type\fR is
-not set, a service module performs its default action.
diff --git a/usr/src/man/man5/pam_deny.5 b/usr/src/man/man5/pam_deny.5
deleted file mode 100644
index 4e862855fd..0000000000
--- a/usr/src/man/man5/pam_deny.5
+++ /dev/null
@@ -1,146 +0,0 @@
-'\" te
-.\" Copyright (c) 2005, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PAM_DENY 5 "Jun 16, 2005"
-.SH NAME
-pam_deny \- PAM authentication, account, session and password management PAM
-module to deny operations
-.SH SYNOPSIS
-.LP
-.nf
-\fBpam_deny.so.1\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBpam_deny\fR module implements all the PAM service module functions and
-returns the module type default failure return code for all calls.
-.sp
-.LP
-The following options are interpreted:
-.sp
-.ne 2
-.na
-\fBdebug\fR
-.ad
-.RS 9n
-\fBsyslog\fR(3C) debugging information at the \fBLOG_AUTH\fR|\fBLOG_DEBUG\fR
-levels
-.RE
-
-.SH ERRORS
-.sp
-.LP
-The following error codes are returned:
-.sp
-.ne 2
-.na
-\fB\fBPAM_ACCT_EXPIRED\fR\fR
-.ad
-.RS 20n
-If \fBpam_sm_acct_mgmt\fR is called.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_AUTH_ERR\fR\fR
-.ad
-.RS 20n
-If \fBpam_sm_authenticate\fR is called.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_AUTHOK_ERR\fR\fR
-.ad
-.RS 20n
-If \fBpam_sm_chauthtok\fR is called.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_CRED_ERR\fR\fR
-.ad
-.RS 20n
-If \fBpam_sm_setcred\fR is called.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_SESSION_ERR\fR\fR
-.ad
-.RS 20n
-If \fBpam_sm_open_session\fR or \fBpam_sm_close_session\fR is called.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRDisallowing ssh none authentication
-.sp
-.in +2
-.nf
- sshd-none auth requisite pam_deny.so.1
- sshd-none account requisite pam_deny.so.1
- sshd-none session requisite pam_deny.so.1
- sshd-none password requisite pam_deny.so.1
-.fi
-.in -2
-.sp
-
-.LP
-\fBExample 2 \fRDisallowing any service not explicitly defined
-.sp
-.in +2
-.nf
- other auth requisite pam_deny.so.1
- other account requisite pam_deny.so.1
- other session requisite pam_deny.so.1
- other password requisite pam_deny.so.1
-.fi
-.in -2
-.sp
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for a description of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-_
-MT Level MT-Safe with exceptions
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBsu\fR(1M), \fBlibpam\fR(3LIB), \fBpam\fR(3PAM),
-\fBpam_sm_authenticate\fR(3PAM), \fBsyslog\fR(3C), \fBpam.conf\fR(4),
-\fBnsswitch.conf\fR(4), \fBattributes\fR(5), \fBpam_authtok_check\fR(5),
-\fBpam_authtok_get\fR(5), \fBpam_authtok_store\fR(5), \fBpam_dhkeys\fR(5),
-\fBpam_passwd_auth\fR(5), \fBpam_unix_account\fR(5), \fBpam_unix_auth\fR(5),
-\fBpam_unix_session\fR(5), \fBprivileges\fR(5)
-.SH NOTES
-.sp
-.LP
-The interfaces in \fBlibpam\fR(3LIB) are MT-Safe only if each thread within the
-multi-threaded application uses its own PAM handle.
-.sp
-.LP
-The \fBpam_deny\fR module is intended to deny access to a specified service.
-The \fBother\fR service name may be used to deny access to services not
-explicitly specified.
diff --git a/usr/src/man/man5/pam_dhkeys.5 b/usr/src/man/man5/pam_dhkeys.5
deleted file mode 100644
index 955ef873bd..0000000000
--- a/usr/src/man/man5/pam_dhkeys.5
+++ /dev/null
@@ -1,204 +0,0 @@
-'\" te
-.\" Copyright (C) 2003, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PAM_DHKEYS 5 "Feb 25, 2017"
-.SH NAME
-pam_dhkeys \- authentication Diffie-Hellman keys management module
-.SH SYNOPSIS
-.LP
-.nf
-\fBpam_dhkeys.so.1\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBpam_dhkeys.so.1\fR service module provides functionality to two
-\fBPAM\fR services: Secure \fBRPC\fR authentication and Secure \fBRPC\fR
-authentication token management.
-.sp
-.LP
-Secure RPC authentication differs from regular unix authentication because
-some \fBONC RPC\fRs use Secure RPC as the underlying security mechanism.
-.sp
-.LP
-The following options may be passed to the module:
-.sp
-.ne 2
-.na
-\fBdebug\fR
-.ad
-.RS 10n
-\fBsyslog\fR(3C) debugging information at \fBLOG_DEBUG\fR level
-.RE
-
-.sp
-.ne 2
-.na
-\fBnowarn\fR
-.ad
-.RS 10n
-Turn off warning messages
-.RE
-
-.SS "Authentication Services"
-.LP
-If the user has Diffie-Hellman keys, \fBpam_sm_authenticate()\fR establishes
-secret keys for the user specified by the \fBPAM_USER\fR (equivalent to running
-\fBkeylogin\fR(1)), using the authentication token found in the
-\fBPAM_AUTHTOK\fR item. If \fBpam_sm_setcred()\fR is called with
-\fBPAM_ESTABLISH_CRED\fR and the user's secure \fBRPC\fR credentials need to be
-established, these credentials are set. This is equivalent to running
-\fBkeylogin\fR(1).
-.sp
-.LP
-If the credentials could not be set and \fBPAM_SILENT\fR is not specified, a
-diagnostic message is displayed. If \fBpam_setcred()\fR is called with
-\fBPAM_DELETE_CRED\fR, the user's secure \fBRPC\fR credentials are unset. This
-is equivalent to running \fBkeylogout\fR(1).
-.sp
-.LP
-\fBPAM_REINITIALIZE_CRED\fR and \fBPAM_REFRESH_CRED\fR are not supported and
-return \fBPAM_IGNORE\fR.
-.SS "Authentication Token Management"
-.LP
-The \fBpam_sm_chauthtok()\fR implementation checks whether the old login
-password decrypts the users secret keys. If it doesn't this module prompts the
-user for an old Secure \fBRPC\fR password and stores it in a pam data item
-called \fBSUNW_OLDRPCPASS\fR. This data item can be used by the store module to
-effectively update the users secret keys.
-.SH ERRORS
-.LP
-The authentication service returns the following error codes:
-.sp
-.ne 2
-.na
-\fB\fBPAM_SUCCESS\fR\fR
-.ad
-.RS 20n
-Credentials set successfully.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_IGNORE\fR\fR
-.ad
-.RS 20n
-Credentials not needed to access the password repository.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_USER_UNKNOWN\fR\fR
-.ad
-.RS 20n
-\fBPAM_USER\fR is not set, or the user is unknown.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_AUTH_ERR\fR\fR
-.ad
-.RS 20n
-No secret keys were set. \fBPAM_AUTHTOK\fR is not set, no credentials are
-present or there is a wrong password.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_BUF_ERR\fR\fR
-.ad
-.RS 20n
-Module ran out of memory.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_SYSTEM_ERR\fR\fR
-.ad
-.RS 20n
-Credentials could not be stored, or netname could not be created.
-.RE
-
-.sp
-.LP
-The authentication token management returns the following error codes:
-.sp
-.ne 2
-.na
-\fB\fBPAM_SUCCESS \fR\fR
-.ad
-.RS 20n
-Old \fBrpc\fR password is set in \fBSUNW_OLDRPCPASS\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_USER_UNKNOWN\fR\fR
-.ad
-.RS 20n
-User in \fBPAM_USER\fR is unknown.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_AUTHTOK_ERR\fR\fR
-.ad
-.RS 20n
-User did not provide a password that decrypts the secret keys.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_BUF_ERR\fR\fR
-.ad
-.RS 20n
-Module ran out of memory.
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-_
-MT Level MT-Safe with exceptions
-.TE
-
-.SH SEE ALSO
-.LP
-\fBkeylogin\fR(1), \fBkeylogout\fR(1), \fBpam\fR(3PAM),
-\fBpam_authenticate\fR(3PAM), \fBpam_chauthtok\fR(3PAM),
-\fBpam_setcred\fR(3PAM), \fBpam_get_item\fR(3PAM), \fBpam_set_data\fR(3PAM),
-\fBpam_get_data\fR(3PAM), \fBsyslog\fR(3C), \fBlibpam\fR(3LIB),
-\fBpam.conf\fR(4), \fBattributes\fR(5), \fBpam_authtok_check\fR(5),
-\fBpam_authtok_get\fR(5), \fBpam_authtok_store\fR(5), \fBpam_passwd_auth\fR(5),
-\fBpam_unix_account\fR(5), \fBpam_unix_auth\fR(5), \fBpam_unix_session\fR(5)
-.SH NOTES
-.LP
-The interfaces in \fBlibpam\fR(3LIB) are MT-Safe only if each thread within the
-multi-threaded application uses its own PAM handle.
-.sp
-.LP
-The \fBpam_unix\fR(5) module is no longer supported. Similar functionality is
-provided by \fBpam_authtok_check\fR(5), \fBpam_authtok_get\fR(5),
-\fBpam_authtok_store\fR(5), \fBpam_dhkeys\fR(5), \fBpam_passwd_auth\fR(5),
-\fBpam_unix_account\fR(5), \fBpam_unix_auth\fR(5), and
-\fBpam_unix_session\fR(5).
diff --git a/usr/src/man/man5/pam_dial_auth.5 b/usr/src/man/man5/pam_dial_auth.5
deleted file mode 100644
index 3c2bdd4e16..0000000000
--- a/usr/src/man/man5/pam_dial_auth.5
+++ /dev/null
@@ -1,122 +0,0 @@
-'\" te
-.\" Copyright (C) 2002, Sun Microsystems, Inc.
-.\" All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PAM_DIAL_AUTH 5 "Sep 9, 2004"
-.SH NAME
-pam_dial_auth \- authentication management PAM module for dialups
-.SH SYNOPSIS
-.LP
-.nf
-\fBpam_dial_auth.so.1\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBpam_dial_auth\fR module implements \fBpam_sm_authenticate\fR(3PAM) which
-authenticates the user according to the \fBdialups\fR(4) and \fBd_passwd\fR(4)
-files configuration.
-.sp
-.LP
-Authentication service modules must implement both \fBpam_sm_authenticate()\fR
-and \fBpam_sm_setcred()\fR. \fBpam_sm_setcred()\fR in this module always
-returns \fBPAM_IGNORE\fR.
-.sp
-.LP
-The value of the \fBPAM_TTY\fR item is checked against entries in
-\fBdialups\fR(4). If there is a match, the user's shell is compared against
-entries in \fBd_passwd\fR(4). If there is a matching entry, the user is
-prompted for a password which is validated against the entry found.
-.sp
-.LP
-The following option may be passed in to this service module:
-.sp
-.ne 2
-.na
-\fB\fBdebug\fR\fR
-.ad
-.RS 9n
-\fBsyslog\fR(3C) debugging information at \fBLOG_DEBUG\fR level.
-.RE
-
-.SH ERRORS
-.sp
-.LP
-If \fBdialups\fR(4) is not present, \fBPAM_IGNORE\fR is returned. Upon
-successful completion of \fBpam_sm_authenticate()\fR, \fBPAM_SUCCESS\fR is
-returned. The following error codes are returned upon error:
-.sp
-.ne 2
-.na
-\fB\fBPAM_AUTH_ERR\fR\fR
-.ad
-.RS 20n
-Authentication failure.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_SERVICE_ERR\fR\fR
-.ad
-.RS 20n
-Error in the calling service, \fBPAM_TTY\fR is not set.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_SYSTEM_ERR\fR\fR
-.ad
-.RS 20n
-System error (\fBd_passwd\fR(4) is not present).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_USER_UNKNOWN\fR\fR
-.ad
-.RS 20n
-No account is present for \fIuser\fR.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for a description of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-MT Level MT-Safe with exceptions
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBpam\fR(3PAM), \fBpam_authenticate\fR(3PAM), \fBpam_sm_authenticate\fR(3PAM),
-\fBd_passwd\fR(4), \fBdialups\fR(4), \fBlibpam\fR(3LIB), \fBpam.conf\fR(4),
-\fBattributes\fR(5), \fBpam_authtok_check\fR(5), \fBpam_authtok_get\fR(5),
-\fBpam_authtok_store\fR(5), \fBpam_dhkeys\fR(5), \fBpam_passwd_auth\fR(5),
-\fBpam_unix_account\fR(5), \fBpam_unix_auth\fR(5), \fBpam_unix_session\fR(5)
-.SH NOTES
-.sp
-.LP
-The interfaces in \fBlibpam\fR(3LIB) are MT-Safe only if each thread within the
-multi-threaded application uses its own \fBPAM\fR handle.
-.sp
-.LP
-The \fBpam_unix\fR(5) module is no longer supported. Similar functionality is
-provided by \fBpam_authtok_check\fR(5), \fBpam_authtok_get\fR(5),
-\fBpam_authtok_store\fR(5), \fBpam_dhkeys\fR(5), \fBpam_passwd_auth\fR(5),
-\fBpam_unix_account\fR(5), \fBpam_unix_auth\fR(5), and
-\fBpam_unix_session\fR(5).
diff --git a/usr/src/man/man5/pam_krb5.5 b/usr/src/man/man5/pam_krb5.5
deleted file mode 100644
index 4537e4a58d..0000000000
--- a/usr/src/man/man5/pam_krb5.5
+++ /dev/null
@@ -1,701 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PAM_KRB5 5 "Apr 8, 2008"
-.SH NAME
-pam_krb5 \- authentication, account, session, and password management PAM
-modules for Kerberos V5
-.SH SYNOPSIS
-.LP
-.nf
-/usr/lib/security/pam_krb5.so.1
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The Kerberos V5 service module for \fBPAM\fR provides functionality for all
-four \fBPAM\fR modules: authentication, account management, session management,
-and password management. The service module is a shared object that can be
-dynamically loaded to provide the necessary functionality upon demand. Its path
-is specified in the \fBPAM\fR configuration file.
-.SS "Kerberos Authentication Module"
-.sp
-.LP
-The Kerberos V5 authentication component provides functions to verify the
-identity of a user, \fBpam_sm_authenticate()\fR, and to manage the Kerberos
-credentials cache, \fBpam_sm_setcred()\fR.
-.sp
-.LP
-\fBpam_sm_authenticate()\fR authenticates a user principal through the Kerberos
-authentication service. If the authentication request is successful, the
-authentication service sends a ticket-granting ticket (\fBTGT\fR) back to the
-service module, which then verifies that the \fBTGT\fR came from a valid Key
-Distribution Center (\fBKDC\fR) by attempting to get a service ticket for the
-local host service. For this to succeed, the local host's keytab file
-(\fB/etc/krb5/krb5.keytab\fR) must contain the entry for the local host
-service. For example, in the file \fBhost/\fIhostname.com\fR@\fIREALM\fR\fR,
-\fIhostname.com\fR is the fully qualified local hostname and \fIREALM\fR is the
-default realm of the local host as defined in \fB/etc/krb5/krb5.conf\fR. If the
-host entry is not found in the keytab file, the authentication fails.
-Administrators may optionally disable this "strict" verification by setting
-"\fBverify_ap_req_nofail = false\fR" in \fB/etc/krb5/krb5.conf\fR. See
-\fBkrb5.conf\fR(4) for more details on this option. This allows \fBTGT\fR
-verification to succeed in the absence of a keytab host principal entry.
-.sp
-.LP
-\fBpam_sm_authenticate\fR(3PAM) may be passed the following flag:
-.sp
-.ne 2
-.na
-\fB\fBPAM_DISALLOW_NULL_AUTHTOK\fR\fR
-.ad
-.sp .6
-.RS 4n
-This flag is ignored. The Kerberos authentication mechanism will not allow an
-empty password string by default.
-.RE
-
-.sp
-.LP
-\fBpam_sm_setcred()\fR creates and modifies the user's credential cache. This
-function initializes the user's credential cache, if it does not already exist,
-and stores the initial credentials for later use by Kerberized network
-applications. The following flags may be set in the flags field. They are best
-described by their effect on the user's credential cache.
-.sp
-.ne 2
-.na
-\fB\fBPAM_ESTABLISH_CRED\fR\fR
-.ad
-.sp .6
-.RS 4n
-Stores the initial credentials in the user's credential cache so that the user
-may access Kerberos network services. If a successful authentication pass was
-made, the new credentials are stored in the credential cache, overwriting any
-existing credentials that were previously stored. If an unsuccessful
-authentication pass was made, PAM_CRED_UNAVAIL is returned.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_DELETE_CRED\fR\fR
-.ad
-.sp .6
-.RS 4n
-This flag has no effect on the credential cache and always returns
-\fBPAM_SUCCESS\fR. The credential cache is not deleted because there is no
-accurate method to determine if the credentials are needed by another process.
-The credential cache may be deleted with the \fBkdestroy\fR(1) command.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_REINITIALIZE_CRED\fR\fR
-.ad
-.sp .6
-.RS 4n
-Deletes the user's existing credential cache, if it exists, and creates a new
-credential cache. The new credentials are stored in the new cache and the
-user's ticket lifetime and renewable life time values are reset.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_REFRESH_CRED\fR\fR
-.ad
-.sp .6
-.RS 4n
-Does not require a previous authentication pass, but if a successful one is
-made, the new credentials are stored in the credential cache. If a previous
-authentication pass was not made or was unsuccessful, an attempt to renew the
-existing credentials is made. Note that this function fails if the user's
-renewable ticket lifetime is expired.
-.RE
-
-.sp
-.LP
-The following options can be passed to the Kerberos V5 authentication module:
-.sp
-.ne 2
-.na
-\fB\fBdebug\fR\fR
-.ad
-.RS 10n
-Provides \fBsyslog\fR(3C) debugging information at \fBLOG_DEBUG\fR level.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnowarn\fR\fR
-.ad
-.RS 10n
-Turns off warning messages.
-.RE
-
-.SS "Kerberos V5 Account Management Module"
-.sp
-.LP
-The Kerberos account management component provides a function to perform
-account management, \fBpam_sm_acct_mgmt()\fR. This function checks to see if
-the \fBpam_krb5\fR authentication module has noted that the user's password has
-not expired. The following options may be passed in to the Kerberos V5 account
-management module:
-.sp
-.ne 2
-.na
-\fBdebug\fR
-.ad
-.RS 10n
-Provides \fBsyslog\fR(3C) debugging information at \fBLOG_DEBUG\fR level
-.RE
-
-.sp
-.ne 2
-.na
-\fBnowarn\fR
-.ad
-.RS 10n
-Turns off warning messages. Also, does not query KDC for impending password
-expiration information used to warn the user.
-.RE
-
-.SS "Kerberos V5 Session Management Module"
-.sp
-.LP
-The Kerberos V5 session management component provides functions to initiate
-\fBpam_sm_open_session()\fR and terminate \fBpam_sm_close_session()\fR Kerberos
-sessions. For Kerberos V5, both \fBpam_sm_open_session\fR and
-\fBpam_sm_close_session()\fR are null functions, returning \fBPAM_IGNORE\fR.
-.SS "Kerberos V5 Password Management Module"
-.sp
-.LP
-The Kerberos V5 password management component provides a function to change
-passwords, \fBpam_sm_chauthtok()\fR, in the Key Distribution Center (\fBKDC\fR)
-database. The following flags may be passed to \fBpam_sm_chauthtok\fR(3PAM):
-.sp
-.ne 2
-.na
-\fB\fBPAM_CHANGE_EXPIRED_AUTHTOK\fR\fR
-.ad
-.sp .6
-.RS 4n
-The password service should only update the user's Kerberos password if it is
-expired. Otherwise, this function returns \fBPAM_IGNORE\fR. The default
-behaviour is to always change the user's Kerberos password.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_PRELIM_CHECK\fR\fR
-.ad
-.sp .6
-.RS 4n
-This is a null function that always returns \fBPAM_IGNORE\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_UPDATE_AUTHTOK\fR\fR
-.ad
-.sp .6
-.RS 4n
-This flag is necessary to change the user's Kerberos password. If this flag is
-not set, \fBpam_krb5\fR returns \fBPAM_SYSTEM_ERR\fR.
-.RE
-
-.sp
-.LP
-The following option can be passed to the Kerberos V5 password module:
-.sp
-.ne 2
-.na
-\fB\fBdebug\fR\fR
-.ad
-.RS 9n
-Provides \fBsyslog\fR(3C) debugging information at \fBLOG_DEBUG\fR level.
-.RE
-
-.SH ERRORS
-.sp
-.LP
-The following error codes are returned for \fBpam_sm_authenticate()\fR:
-.sp
-.ne 2
-.na
-\fB\fBPAM_AUTH_ERR\fR\fR
-.ad
-.RS 20n
-Authentication failure
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_BUF_ERR\fR\fR
-.ad
-.RS 20n
-Memory buffer error.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_IGNORE\fR\fR
-.ad
-.RS 20n
-The user is "\fBroot\fR" and the root key exists in the default keytab.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_SUCCESS\fR\fR
-.ad
-.RS 20n
-Successfully obtained Kerberos credentials .
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_SYSTEM_ERR\fR\fR
-.ad
-.RS 20n
-System error.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_USER_UNKNOWN\fR\fR
-.ad
-.RS 20n
-An unknown Kerberos principal was requested.
-.RE
-
-.sp
-.LP
-The following error codes are returned for \fBpam_sm_setcred()\fR:
-.sp
-.ne 2
-.na
-\fB\fBPAM_AUTH_ERR\fR\fR
-.ad
-.RS 18n
-Authentication failure.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_BUF_ERR\fR\fR
-.ad
-.RS 18n
-Memory buffer error.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_IGNORE\fR\fR
-.ad
-.RS 18n
-The user is "\fBroot\fR" and the root key exists in the default keytab.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_SYSTEM_ERR\fR\fR
-.ad
-.RS 18n
-System error.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_SUCCESS\fR\fR
-.ad
-.RS 18n
-Successfully modified the Kerberos credential cache.
-.RE
-
-.sp
-.LP
-The following error codes are returned for \fBpam_sm_acct_mgmt()\fR:
-.sp
-.ne 2
-.na
-\fB\fBPAM_AUTH_ERR\fR\fR
-.ad
-.RS 24n
-Authentication failure.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_IGNORE\fR\fR
-.ad
-.RS 24n
-Kerberos service module \fBpam_sm_authenticate()\fR was never called, or the
-user is "\fBroot\fR" and the root key exists in the default keytab.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_NEW_AUTHTOK_REQD\fR\fR
-.ad
-.RS 24n
-Obtain new authentication token from the user.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_SERVICE_ERR\fR\fR
-.ad
-.RS 24n
-Error in underlying service module.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_SUCCESS\fR\fR
-.ad
-.RS 24n
-Kerberos principal account is valid.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_SYSTEM_ERR\fR\fR
-.ad
-.RS 24n
-System error.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_USER_UNKNOWN\fR\fR
-.ad
-.RS 24n
-An unknown Kerberos principal was requested.
-.RE
-
-.sp
-.LP
-The following error code is returned for \fBpam_sm_open_session()\fR and
-\fBpam_sm_close_session()\fR:
-.sp
-.ne 2
-.na
-\fB\fBPAM_IGNORE\fR\fR
-.ad
-.RS 14n
-These two functions are null functions in \fBpam_krb5\fR:
-.RE
-
-.sp
-.LP
-The following error codes are returned for \fBpam_sm_chauthtok()\fR:
-.sp
-.ne 2
-.na
-\fB\fBPAM_AUTH_ERR\fR\fR
-.ad
-.RS 24n
-Authentication failure.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_IGNORE\fR\fR
-.ad
-.RS 24n
-The user has not been authenticated by Kerberos service module
-\fBpam_sm_authenticate()\fR, or the user is "\fBroot\fR" and the root key
-exists in the default keytab.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_NEW_AUTHTOK_REQD\fR\fR
-.ad
-.RS 24n
-User's Kerberos password has expired.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_SERVICE_ERR\fR\fR
-.ad
-.RS 24n
-Error in module. At least one input parameter is missing.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_SYSTEM_ERR\fR\fR
-.ad
-.RS 24n
-System error.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_USER_UNKNOWN\fR\fR
-.ad
-.RS 24n
-An unknown Kerberos principal was requested.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_SUCCESS\fR\fR
-.ad
-.RS 24n
-Successfully changed the user's Kerberos password.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRAuthenticate Users Through Kerberos as First Choice
-.sp
-.LP
-The following is an excerpt of a sample \fBpam.conf\fR configuration file that
-authenticates users through the Kerberos authentication service and
-authenticates through the Unix login only if the Kerberos authentication fails.
-This arrangement is helpful when a majority of the users are networked by means
-of Kerberos and when there are only a few non-Kerberos type user accounts, such
-as root. The service illustrated below is for \fBdtlogin\fR.
-
-.sp
-.in +2
-.nf
-dtlogin auth requisite pam_smartcard.so.1
-dtlogin auth requisite pam_authtok_get.so.1
-dtlogin auth required pam_dhkeys.so.1
-dtlogin auth required pam_unix_cred.so.1
-dtlogin auth sufficient pam_krb5.so.1
-dtlogin auth required pam_unix_auth.so.1
-.fi
-.in -2
-
-.sp
-.LP
-Note that these changes should not be made to the existing \fBkrlogin\fR,
-\fBkrsh\fR, and \fBktelnet\fR service entries. Those services require Kerberos
-authentication, so using a seemingly sufficient control flag would not provide
-the necessary functionality for privacy and integrity. There should be no need
-to change those entries.
-
-.sp
-.LP
-The following entries check for password expiration when dealing with Kerberos
-and Unix password aging policies:
-
-.sp
-.in +2
-.nf
-other account requisite pam_roles.so.1
-other account required pam_unix_account.so.1
-other account required pam_krb5.so.1
-.fi
-.in -2
-
-.sp
-.LP
-The following entries would change the Kerberos password of the user and
-continue to change the Unix login password only if the Kerberos password change
-had failed:
-
-.sp
-.in +2
-.nf
-other password required pam_dhkeys.so.1
-other password requisite pam_authtok_get.so.1
-other password requisite pam_authtok_check.so.1
-other password sufficient pam_krb5.so.1
-other password required pam_authtok_store.so.1
-.fi
-.in -2
-
-.sp
-.LP
-When changing Kerberos based user's password, use \fBkpasswd\fR(1). When
-changing a non-Kerberos user's password, it is recommended that the repository
-is specified (\fB-r\fR) with the \fBpasswd\fR(1) command.
-
-.LP
-\fBExample 2 \fRAuthenticate Users Through Kerberos Only
-.sp
-.LP
-The following example allows authentication only to users that have
-Kerberos-based accounts.
-
-.sp
-.in +2
-.nf
-dtlogin auth requisite pam_smartcard.so.1
-dtlogin auth requisite pam_authtok_get.so.1
-dtlogin auth required pam_dhkeys.so.1
-dtlogin auth required pam_unix_cred.so.1
-dtlogin auth binding pam_krb5.so.1
-dtlogin auth required pam_unix_auth.so.1
-.fi
-.in -2
-
-.sp
-.LP
-Typically, you would have another service specified in the \fBpam.conf\fR file
-that would allow local users, such as database, web server, system
-administrator accounts, to log in to the host machine. For example, the service
-name "login" could be used for these users. Note that these users should not
-belong to any roles.
-
-.sp
-.LP
-The rest of the module types look similar to that shown in the previous
-example:
-
-.sp
-.in +2
-.nf
-other account requisite pam_roles.so.1
-other account required pam_unix_account.so.1
-other account required pam_krb5.so.1
-.fi
-.in -2
-
-.sp
-.LP
-With binding specified in the following, it is important that non-Kerberos
-users specify the repository in which they reside using the \fB-r\fR option
-with the \fBpasswd\fR(1) command. This configuration is also based on the
-assumptions that:
-
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Kerberos users maintain only their Kerberos passwords;
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-changing their Unix password is not necessary, given that they are
-authenticated only through their Kerberos passwords when logging in.
-.RE
-.sp
-.in +2
-.nf
-other password required pam_dhkeys.so.1
-other password requisite pam_authtok_get.so.1
-other password requisite pam_authtok_check.so.1
-other password binding pam_krb5.so.1
-other password required pam_authtok_store.so.1
-.fi
-.in -2
-
-.LP
-\fBExample 3 \fRAuthenticate Through Kerberos Optionally
-.sp
-.LP
-This configuration is helpful when the majority of users are non-Kerberos users
-and would like to authenticate through Kerberos if they happened to exist in
-the Kerberos database. The effect of this is similar to users voluntarily
-executing \fBkinit\fR(1) after they have successfully logged in:
-
-.sp
-.in +2
-.nf
-dtlogin auth requisite pam_smartcard.so.1
-dtlogin auth requisite pam_authtok_get.so.1
-dtlogin auth required pam_dhkeys.so.1
-dtlogin auth required pam_unix_cred.so.1
-dtlogin auth required pam_unix_auth.so.1
-dtlogin auth optional pam_krb5.so.1
-.fi
-.in -2
-
-.sp
-.LP
-The rest of the configuration is as follows:
-
-.sp
-.in +2
-.nf
-other account requisite pam_roles.so.1
-other account required pam_unix_account.so.1
-other account required pam_krb5.so.1
-
-other password required pam_dhkeys.so.1
-other password requisite pam_authtok_get.so.1
-other password requisite pam_authtok_check.so.1
-other password required pam_authtok_store.so.1
-other password optional pam_krb5.so.1
-.fi
-.in -2
-
-.sp
-.LP
-Non-Kerberos users should specify their respective repositories by using the
-\fB-r\fR option when changing their password with the \fBpasswd\fR(1) command.
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBkdestroy\fR(1), \fBkinit\fR(1), \fBkpasswd\fR(1), \fBpasswd\fR(1),
-\fBktkt_warnd\fR(1M), \fBlibpam\fR(3LIB), \fBpam\fR(3PAM), \fBpam_sm\fR(3PAM),
-\fBpam_sm_acct_mgmt\fR(3PAM), \fBpam_sm_authenticate\fR(3PAM),
-\fBpam_sm_chauthtok\fR(3PAM), \fBpam_sm_close_session\fR(3PAM),
-\fBpam_sm_open_session\fR(3PAM), \fBpam_sm_setcred\fR(3PAM), \fBsyslog\fR(3C),
-\fBpam.conf\fR(4), \fBattributes\fR(5), \fBkerberos\fR(5), \fBkrb5envvar\fR(5)
-.SH NOTES
-.sp
-.LP
-The interfaces in \fBlibpam\fR(3LIB) are MT-Safe only if each thread within the
-multi-threaded application uses its own \fBPAM\fR handle.
-.sp
-.LP
-On successful acquisition of initial credentials (ticket-granting ticket),
-\fBktkt_warnd\fR(1M) will be notified, to alert the user when the initial
-credentials are about to expire.
diff --git a/usr/src/man/man5/pam_krb5_migrate.5 b/usr/src/man/man5/pam_krb5_migrate.5
deleted file mode 100644
index 8f2dc5bb51..0000000000
--- a/usr/src/man/man5/pam_krb5_migrate.5
+++ /dev/null
@@ -1,194 +0,0 @@
-'\" te
-.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PAM_KRB5_MIGRATE 5 "November 22, 2021"
-.SH NAME
-pam_krb5_migrate \- authentication PAM module for the KerberosV5 auto-migration
-of users feature
-.SH SYNOPSIS
-.nf
-\fB/usr/lib/security/pam_krb5_migrate.so.1\fR
-.fi
-
-.SH DESCRIPTION
-The KerberosV5 auto-migrate service module for PAM provides functionality for
-the PAM authentication component. The service module helps in the automatic
-migration of \fBPAM_USER\fR to the client's local Kerberos realm, using
-\fBPAM_AUTHTOK\fR (the PAM authentication token associated with \fBPAM_USER\fR)
-as the new Kerberos principal's password.
-.SS "KerberosV5 Auto-migrate Authentication Module"
-The KerberosV5 auto-migrate authentication component provides the
-\fBpam_sm_authenticate\fR(3PAM) function to migrate a user who does not have a
-corresponding \fBkrb5\fR principal account to the default Kerberos realm of the
-client.
-.sp
-.LP
-\fBpam_sm_authenticate\fR(3PAM) uses a host-based client service principal,
-present in the local \fBkeytab\fR (\fB/etc/krb5/krb5.keytab\fR) to authenticate
-to \fBkadmind\fR(1M) (defaults to the \fBhost/nodename.fqdn\fR service
-principal), for the principal creation operation. Also, for successful creation
-of the \fBkrb5\fR user principal account, the host-based client service
-principal being used needs to be assigned the appropriate privilege on the
-master KDC's \fBkadm5.acl\fR(4) file. \fBkadmind\fR(1M) checks for the
-appropriate privilege and validates the user password using PAM by calling
-\fBpam_authenticate\fR(3PAM) and \fBpam_acct_mgmt\fR(3PAM) for the
-\fBk5migrate\fR service.
-.sp
-.LP
-If migration of the user to the KerberosV5 infrastructure is successful, the
-module will inform users about it by means of a \fBPAM_TEXT_INFO\fR message,
-unless instructed otherwise by the presence of the \fBquiet\fR option.
-.sp
-.LP
-The authentication component always returns \fBPAM_IGNORE\fR and is meant to be
-stacked in \fBpam.conf\fR with a requirement that it be listed below
-pam_authtok_get(5) in the authentication stack. Also, if \fBpam_krb5_migrate\fR
-is used in the authentication stack of a particular service, it is mandatory
-that \fBpam_krb5\fR(5) be listed in the PAM account stack of that service for
-proper operation (see EXAMPLES).
-.SH OPTIONS
-The following options can be passed to the KerberosV5 auto-migrate
-authentication module:
-.sp
-.ne 2
-.na
-\fB\fBdebug\fR\fR
-.ad
-.sp .6
-.RS 4n
-Provides \fBsyslog\fR(3C) debugging information at \fBLOG_DEBUG\fR level.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBclient_service=\fR\fI<service name>\fR\fR
-.ad
-.sp .6
-.RS 4n
-Name of the service used to authenticate to \fBkadmind\fR(1M) defaults to
-\fBhost\fR. This means that the module uses \fBhost/\fR\fI<nodename.fqdn>\fR as
-its client service principal name, KerberosV5 user principal creation operation
-or \fI<service>\fR/\fI<nodename.fqdn>\fR if this option is provided.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBquiet\fR\fR
-.ad
-.sp .6
-.RS 4n
-Do not explain KerberosV5 migration to the user.
-.sp
-This has the same effect as passing the \fBPAM_SILENT\fR flag to
-\fBpam_sm_authenticate\fR(3PAM) and is useful where applications cannot handle
-\fBPAM_TEXT_INFO\fR messages.
-.sp
-If not set, the authentication component will issue a \fBPAM_TEXT_INFO\fR
-message after creation of the Kerberos V5 principal, indicating that it has
-done so.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBexpire_pw\fR\fR
-.ad
-.sp .6
-.RS 4n
-Causes the creation of KerberosV5 user principals with password expiration set
-to \fBnow\fR (current time).
-.RE
-
-.SH EXAMPLES
-\fBExample 1 \fRSample Entries from \fBpam.conf\fR
-.sp
-.LP
-The following entries from \fBpam.conf\fR(4) demonstrate the use of the
-\fBpam_krb5_migrate.so.1\fR module:
-
-.sp
-.in +2
-.nf
-login auth requisite pam_authtok_get.so.1
-login auth required pam_dhkeys.so.1
-login auth required pam_unix_cred.so.1
-login auth sufficient pam_krb5.so.1
-login auth requisite pam_unix_auth.so.1
-login auth optional pam_krb5_migrate.so.1 expire_pw
-login auth required pam_dial_auth.so.1
-
-other account requisite pam_roles.so.1
-other account required pam_krb5.so.1
-other account required pam_unix_account.so.1
-.fi
-.in -2
-
-.sp
-.LP
-The \fBpam_krb5_migrate\fR module can generally be present on the
-authentication stack of any service where the application calls
-\fBpam_sm_authenticate\fR(3PAM) and an authentication token (in the preceding
-example, the authentication token would be the user's Unix password) is
-available for use as a Kerberos V5 password.
-
-.LP
-\fBExample 2 \fRSample Entries from \fBkadm5.acl\fR
-.sp
-.LP
-The following entries from \fBkadm5.acl\fR(4) permit or deny privileges to the
-host client service principal:
-
-.sp
-.in +2
-.nf
-host/*@EXAMPLE.COM U root
-host/*@EXAMPLE.COM ui *
-.fi
-.in -2
-
-.sp
-.LP
-The preceding entries permit the \fBpam_krb5_migrate\fR \fBadd\fR privilege to
-the host client service principal of any machine in the \fBEXAMPLE.COM\fR
-KerberosV5 realm, but denies the \fBadd\fR privilege to all host service
-principals for addition of the root user account.
-
-.LP
-\fBExample 3 \fRSample Entries in \fBpam.conf\fR of the Master KDC
-.sp
-.LP
-The entries below enable \fBkadmind\fR(1M) on the master KDC to use the
-\fBk5migrate\fR PAM service in order to validate Unix user passwords for
-accounts that require migration to the Kerberos realm.
-
-.sp
-.in +2
-.nf
-k5migrate auth required pam_unix_auth.so.1
-k5migrate account required pam_unix_account.so.1
-.fi
-.in -2
-
-.SH ATTRIBUTES
-See \fBattributes\fR(5) for a description of the following attribute:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-\fBkadmind\fR(1M), \fBsyslog\fR(3C), \fBpam_authenticate\fR(3PAM),
-\fBpam_acct_mgmt\fR(3PAM), \fBpam_sm_authenticate\fR(3PAM), \fBkadm5.acl\fR(4),
-\fBpam.conf\fR(4), \fBattributes\fR(5), \fBpam_authtok_get\fR(5),
-\fBpam_krb5\fR(5)
diff --git a/usr/src/man/man5/pam_ldap.5 b/usr/src/man/man5/pam_ldap.5
deleted file mode 100644
index 26d2786af8..0000000000
--- a/usr/src/man/man5/pam_ldap.5
+++ /dev/null
@@ -1,412 +0,0 @@
-'\" te
-.\" Copyright (C) 2005, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PAM_LDAP 5 "Dec 21, 2005"
-.SH NAME
-pam_ldap \- authentication and account management PAM module for LDAP
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/security/pam_ldap.so.1\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBpam_ldap\fR module implements \fBpam_sm_authenticate\fR(3PAM) and
-\fBpam_sm_acct_mgmt\fR(3PAM), the functions that provide functionality for the
-PAM authentication and account management stacks. The \fBpam_ldap\fR module
-ties the authentication and account management functionality to the
-functionality of the supporting LDAP server. For authentication, \fBpam_ldap\fR
-can authenticate the user directly to any LDAP directory server by using any
-supported authentication mechanism, such as \fBDIGEST-MD5\fR. However, the
-account management component of \fBpam_ldap\fR will work only with the Sun Java
-System Directory Server. The server's user account management must be properly
-configured before it can be used by \fBpam_ldap\fR. Refer to the \fISun Java
-System Directory Server Administration Guide\fR for information on how to
-configure user account management, including password and account lockout
-policy.
-.sp
-.LP
-\fBpam_ldap\fR must be used in conjunction with the modules that support the
-UNIX authentication, password, and account management, which are
-\fBpam_authtok_get\fR(5), \fBpam_passwd_auth\fR(5), \fBpam_unix_account\fR(5),
-and \fBpam_unix_auth\fR(5). \fBpam_ldap\fR is designed to be stacked directly
-below these modules. If other modules are designed to be stacked in this
-manner, the modules can be stacked below the \fBpam_ldap\fR module. The
-Examples section shows how the UNIX modules are stacked with \fBpam_ldap\fR.
-When stacked together, the UNIX modules are used to control local accounts,
-such as \fBroot\fR. \fBpam_ldap\fR is used to control network accounts, that
-is, LDAP users. For the stacks to work, \fBpam_unix_auth\fR,
-\fBpam_unix_account\fR, and \fBpam_passwd_auth\fR must be configured with the
-\fBbinding\fR control flag and the \fBserver_policy\fR option. This
-configuration allows local account override of a network account.
-.SS "LDAP Authentication Module"
-.LP
-The LDAP authentication module verifies the identity of a user. The
-\fBpam_sm_authenticate\fR(3PAM) function uses the password entered by the user
-to attempt to authenticate to the LDAP server. If successful, the user is
-authenticated. See NOTES for information on password prompting.
-.sp
-.LP
-The authentication method used is either defined in the client profile , or the
-authentication method is configured by using the \fBldapclient\fR(1M) command.
-To determine the authentication method to use, this module first attempts to
-use the authentication method that is defined, for service \fBpam_ldap\fR, for
-example, \fBserviceAuthenticationMethod:pam_ldap:sasl/DIGEST-MD5\fR. If no
-authentication method is defined, \fBpam_ldap\fR uses the default
-authentication method. If neither are set, the authentication fails. This
-module skips the configured authentication method if the authentication method
-is set to \fBnone\fR.
-.sp
-.LP
-The following options can be passed to the LDAP service module:
-.sp
-.ne 2
-.na
-\fB\fBdebug\fR\fR
-.ad
-.RS 10n
-\fBsyslog\fR(3C) debugging information at \fBLOG_DEBUG\fR level.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnowarn\fR\fR
-.ad
-.RS 10n
-Turn off warning messages.
-.RE
-
-.sp
-.LP
-These options are case sensitive and must be used exactly as presented here.
-.SS "LDAP Account Management Module"
-.LP
-The LDAP account management module validates the user's account. The
-\fBpam_sm_acct_mgmt\fR(3PAM) function authenticates to the LDAP server to
-verify that the user's password has not expired, or that the user's account has
-not been locked. In the event that there is no user authentication token
-(\fBPAM_AUTHTOK\fR) available, the \fBpam_sm_acct_mgmt\fR(3PAM) function
-attempts to retrieve the user's account status without authenticating to the
-LDAP server as the user logging in. This procedure will succeed only if the
-LDAP server is Sun Java System Directory server 5.2 patch 4 or newer. The
-following options can be passed to the LDAP service module:
-.sp
-.ne 2
-.na
-\fB\fBdebug\fR\fR
-.ad
-.RS 10n
-\fBsyslog\fR(3C) debugging information at \fBLOG_DEBUG\fR level.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnowarn\fR\fR
-.ad
-.RS 10n
-Turn off warning messages.
-.RE
-
-.sp
-.LP
-These options are case sensitive, and the options must be used exactly as
-presented here.
-.SS "LDAP Password Management Module"
-.LP
-LDAP password management is no longer supported by \fBpam_ldap\fR. Use
-\fBpam_authtok_store\fR(5) instead of \fBpam_ldap\fR for password change.
-\fBpam_authtok_store\fR(5) handles both the local and LDAP accounts and updates
-the passwords in all the repositories configured by \fBnsswitch.conf\fR(4).
-.SH ERRORS
-.LP
-The authentication service returns the following error codes:
-.sp
-.ne 2
-.na
-\fB\fBPAM_SUCCESS\fR\fR
-.ad
-.RS 20n
-The authentication was successful.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_MAXTRIES\fR\fR
-.ad
-.RS 20n
-The maximum number of authentication attempts was exceeded.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_AUTH_ERR\fR\fR
-.ad
-.RS 20n
-The authentication failed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_USER_UNKNOWN\fR\fR
-.ad
-.RS 20n
-No account is present for the user.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_BUF_ERR\fR\fR
-.ad
-.RS 20n
-A memory buffer error occurred.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_SYSTEM_ERR\fR\fR
-.ad
-.RS 20n
-A system error occurred.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_IGNORE\fR\fR
-.ad
-.RS 20n
-The user's account was inactivated.
-.RE
-
-.sp
-.LP
-The account management service returns the following error codes:
-.sp
-.ne 2
-.na
-\fB\fBPAM_SUCCESS\fR\fR
-.ad
-.RS 24n
-The user was allowed access to the account.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_NEW_AUTHTOK_REQD\fR\fR
-.ad
-.RS 24n
-A new authentication token is required.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_ACCT_EXPIRED\fR\fR
-.ad
-.RS 24n
-The user account has expired.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_PERM_DENIED\fR\fR
-.ad
-.RS 24n
-The user was denied access to the account at this time.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_USER_UNKNOWN\fR\fR
-.ad
-.RS 24n
-No account is present for the user.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_BUF_ERROR\fR\fR
-.ad
-.RS 24n
-A memory buffer error occurred.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_SYSTEM_ERR\fR\fR
-.ad
-.RS 24n
-A system error occurred.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRUsing \fBpam_ldap\fR With Authentication\fB\fR
-.sp
-.LP
-The following is a configuration for the login service when using
-\fBpam_ldap\fR. The service name \fBlogin\fR can be substituted for any other
-authentication service such as \fBdtlogin\fR or \fBsu\fR. Lines that begin with
-the # symbol are comments and are ignored.
-
-.sp
-.in +2
-.nf
-# Authentication management for login service is stacked.
-# If pam_unix_auth succeeds, pam_ldap is not invoked.
-# The control flag "binding" provides a local overriding
-# remote (LDAP) control. The "server_policy" option is used
-# to tell pam_unix_auth.so.1 to ignore the LDAP users.
-
-login auth requisite pam_authtok_get.so.1
-login auth required pam_dhkeys.so.1
-login auth required pam_unix_cred.so.1
-login auth binding pam_unix_auth.so.1 server_policy
-login auth required pam_ldap.so.1
-.fi
-.in -2
-
-.LP
-\fBExample 2 \fRUsing \fBpam_ldap\fR With Account Management
-.sp
-.LP
-The following is a configuration for account management when using
-\fBpam_ldap\fR. Lines that begin with the # symbol are comments and are
-ignored.
-
-.sp
-.in +2
-.nf
-# Account management for all services is stacked
-# If pam_unix_account succeeds, pam_ldap is not invoked.
-# The control flag "binding" provides a local overriding
-# remote (LDAP) control. The "server_policy" option is used
-# to tell pam_unix_account.so.1 to ignore the LDAP users.
-
-other account requisite pam_roles.so.1
-other account binding pam_unix_account.so.1 server_policy
-other account required pam_ldap.so.1
-.fi
-.in -2
-
-.LP
-\fBExample 3 \fRUsing \fBpam_authtok_store\fR With Password Management For Both
-Local and LDAP Accounts
-.sp
-.LP
-The following is a configuration for password management when using
-\fBpam_authtok_store\fR. Lines that begin with the # symbol are comments and
-are ignored.
-
-.sp
-.in +2
-.nf
-# Password management (authentication)
-# The control flag "binding" provides a local overriding
-# remote (LDAP) control. The server_policy option is used
-# to tell pam_passwd_auth.so.1 to ignore the LDAP users.
-
-passwd auth binding pam_passwd_auth.so.1 server_policy
-passwd auth required pam_ldap.so.1
-
-# Password management (updates)
-# This updates passwords stored both in the local /etc
-# files and in the LDAP directory. The "server_policy"
-# option is used to tell pam_authtok_store to
-# follow the LDAP server's policy when updating
-# passwords stored in the LDAP directory
-
-other password required pam_dhkeys.so.1
-other password requisite pam_authtok_get.so.1
-other password requisite pam_authtok_check.so.1
-other password required pam_authtok_store.so.1 server_policy
-.fi
-.in -2
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/var/ldap/ldap_client_file\fR\fR
-.ad
-.br
-.na
-\fB\fB/var/ldap/ldap_client_cred\fR\fR
-.ad
-.RS 30n
-The LDAP configuration files of the client. Do not manually modify these files,
-as these files might not be human readable. Use \fBldapclient\fR(1M) to update
-these files.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/pam.conf\fR\fR
-.ad
-.RS 30n
-PAM configuration file.
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-_
-MT-Level MT-Safe with exceptions
-.TE
-
-.SH SEE ALSO
-.LP
-\fBldap\fR(1), \fBidsconfig\fR(1M), \fBldap_cachemgr\fR(1M),
-\fBldapclient\fR(1M), \fBlibpam\fR(3LIB), \fBpam\fR(3PAM),
-\fBpam_sm_acct_mgmt\fR(3PAM), \fBpam_sm_authenticate\fR(3PAM),
-\fBpam_sm_chauthtok\fR(3PAM), \fBpam_sm_close_session\fR(3PAM),
-\fBpam_sm_open_session\fR(3PAM), \fBpam_sm_setcred\fR(3PAM), \fBsyslog\fR(3C),
-\fBpam.conf\fR(4), \fBattributes\fR(5), \fBpam_authtok_check\fR(5),
-\fBpam_authtok_get\fR(5), \fBpam_authtok_store\fR(5), \fBpam_passwd_auth\fR(5),
-\fBpam_unix_account\fR(5), \fBpam_unix_auth\fR(5)
-.SH NOTES
-.LP
-The interfaces in \fBlibpam\fR(3LIB) are MT-Safe only if each thread within the
-multi-threaded application uses its own \fBPAM\fR handle.
-.sp
-.LP
-The previously supported \fBuse_first_pass\fR and \fBtry_first_pass\fR options
-are obsolete in this version, are no longer needed, can safely be removed from
-\fBpam.conf\fR(4), and are silently ignored. They might be removed in a future
-release. Password prompting must be provided for by stacking
-\fBpam_authtok_get\fR(5) before \fBpam_ldap\fR in the \fBauth\fR and
-\fBpassword\fR module stacks and \fBpam_passwd_auth\fR(5) in the \fBpasswd\fR
-service \fBauth\fR stack (as described in the EXAMPLES section). The previously
-supported password update function is replaced in this release by the
-previously recommended use of \fBpam_authtok_store\fR with the
-\fBserver_policy\fR option (as described in the EXAMPLES section).
-.sp
-.LP
-The functions: \fBpam_sm_setcred\fR(3PAM), \fBpam_sm_chauthtok\fR(3PAM),
-\fBpam_sm_open_session\fR(3PAM), and \fBpam_sm_close_session\fR(3PAM) do
-nothing and return \fBPAM_IGNORE\fR in \fBpam_ldap\fR.
diff --git a/usr/src/man/man5/pam_list.5 b/usr/src/man/man5/pam_list.5
deleted file mode 100644
index 78228ce076..0000000000
--- a/usr/src/man/man5/pam_list.5
+++ /dev/null
@@ -1,303 +0,0 @@
-'\" te
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
-.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PAM_LIST 5 "April 22, 2020"
-.SH NAME
-pam_list \- PAM account management module for UNIX
-.SH SYNOPSIS
-.nf
- pam_list.so.1
-.fi
-
-.SH DESCRIPTION
-The \fBpam_list\fR module implements \fBpam_sm_acct_mgmt\fR(3PAM), which
-provides functionality to the PAM account management stack. The module
-provides functions to validate that the user's account is valid on this
-host based on a list of users, groups, and/or netgroups in the given file. The users,
-groups, and netgroups are separated by newline character. Groups are specified
-with character '%' and netgroups are specified with character '@' as prefix
-before name of the group/netgroup in the list. The maximum line length is 1023
-characters.
-.sp
-.LP
-The username is the value of \fBPAM_USER\fR. The host is the value of
-\fBPAM_RHOST\fR or, if \fBPAM_RHOST\fR is not set, the value of the localhost
-as returned by \fBgethostname\fR(3C) is used.
-.sp
-.LP
-If neither of the \fBallow\fR, \fBdeny\fR, or \fBcompat\fR options are
-specified, the module will look for +/- entries in the local \fB/etc/passwd\fR
-file. If this style is used, \fBnsswitch.conf\fR(4) must not be configured
-with \fBcompat\fR for the \fBpasswd\fR database. If no relevant +/- entry
-exists for the user, \fBpam_list\fR is not participating in result.
-.sp
-.LP
-If \fBcompat\fR option is specified then the module will look for +/- entries
-in the local \fB/etc/passwd\fR file. Other entries in this file will be counted
-as + entries. If no relevant entry exits for the user, \fBpam_list\fR will deny
-the access.
-.sp
-.LP
-The following options can be passed to the module:
-.sp
-.ne 2
-.na
-\fB\fBallow=\fR\fR
-.ad
-.RS 19n
-The full pathname to a file of allowed users, groups, and/or netgroups.
-Only one of \fBallow=\fR or \fBdeny=\fR can be specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcompat\fR\fR
-.ad
-.RS 19n
-Activate \fBcompat\fR mode.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdeny=\fR\fR
-.ad
-.RS 19n
-The full pathname to a file of denied users, groups, and/or netgroups.
-Only one of \fBdeny=\fR or \fBallow=\fR can be specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdebug\fR\fR
-.ad
-.RS 19n
-Provide \fBsyslog\fR(3C) debugging information at the \fBLOG_AUTH\fR |
-\fBLOG_DEBUG\fR level.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBgroup\fR\fR
-.ad
-.RS 19n
-The module should perform group membership matches for the username.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBuser\fR\fR
-.ad
-.RS 19n
-The module should only perform netgroup matches on the username. This is the
-default option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnouser\fR\fR
-.ad
-.RS 19n
-The username should not be used in the netgroup match.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBhost\fR\fR
-.ad
-.RS 19n
-Only the host should be used in netgroup matches.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnohost\fR\fR
-.ad
-.RS 19n
-The hostname should not be used in netgroup matches.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBuser_host_exact\fR\fR
-.ad
-.RS 19n
-The user and hostname must be in the same netgroup.
-.RE
-
-.SH ERRORS
-The following error values are returned:
-.sp
-.ne 2
-.na
-\fB\fBPAM_SERVICE_ERR\fR\fR
-.ad
-.RS 20n
-An invalid set of module options was given in the \fBpam.conf\fR(4) for this
-module, or the \fBuser/netgroup\fR file could not be opened.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_BUF_ERR\fR\fR
-.ad
-.RS 20n
-A memory buffer error occurred.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_IGNORE\fR\fR
-.ad
-.RS 20n
-The module is ignored, as it is not participating in the result.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_PERM_DENIED\fR\fR
-.ad
-.RS 20n
-The user is not on the allow list or is on the deny list.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_SUCCESS\fR\fR
-.ad
-.RS 20n
-The account is valid for use at this time.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_USER_UNKNOWN\fR\fR
-.ad
-.RS 20n
-No account is present for the user
-.RE
-
-.SH EXAMPLES
-\fBExample 1 \fRUsing \fBpam_list\fR in default mode
-.sp
-.LP
-\fB/etc/pam.conf\fR modification looks like:
-
-.sp
-.in +2
-.nf
-other account requisite pam_roles.so.1
-other account required pam_unix_account.so.1
-other account required pam_list.so.1
-.fi
-.in -2
-
-.sp
-.LP
-In the case of \fBdefault\fR mode or \fBcompat\fR mode, the important lines in
-\fB/etc/passwd\fR appear as follows:
-
-.sp
-.in +2
-.nf
-+loginname - user is approved
--loginname - user is disapproved
-+@netgroup - netgroup members are approved
--@netgroup - netgroup members are disapproved
-.fi
-.in -2
-
-.LP
-\fBExample 2 \fRUsing \fBpam_list\fR with allow file
-.sp
-.LP
-\fB/etc/pam.conf\fR modification looks like:
-
-.sp
-.in +2
-.nf
-other account requisite pam_roles.so.1
-other account required pam_unix_account.so.1
-other account required pam_list.so.1 allow=/etc/users.allow
-.fi
-.in -2
-
-.sp
-.LP
-\fB/etc/users.allow\fR contains:
-.sp
-.in +2
-.nf
-root
-localloginname
-remoteloginname
-@netgroup
-.fi
-.in -2
-
-.LP
-\fBExample 3 \fRUsing \fBpam_list\fR with allow file to allow
-members of the 'admins' group access.
-.sp
-.LP
-\fB/etc/pam.conf\fR modification looks like:
-
-.sp
-.in +2
-.nf
-other account requisite pam_roles.so.1
-other account required pam_unix_account.so.1
-other account required pam_list.so.1 group allow=/etc/users.allow
-.fi
-.in -2
-
-.sp
-.LP
-\fB/etc/users.allow\fR contains:
-.sp
-.in +2
-.nf
-root
-%admins
-.fi
-.in -2
-
-.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Committed
-_
-MT-Level MT-Safe with exceptions
-.TE
-
-.sp
-.LP
-The interfaces in \fBlibpam\fR(3LIB) are MT-Safe only if each thread within the
-multithreaded application uses its own PAM handle.
-.SH SEE ALSO
-\fBpam\fR(3PAM), \fBpam_authenticate\fR(3PAM), \fBpam_sm_acct_mgmt\fR(3PAM),
-\fBsyslog\fR(3C), \fBlibpam\fR(3LIB), \fBnsswitch.conf\fR(4),
-\fBpam.conf\fR(4), \fBattributes\fR(5)
diff --git a/usr/src/man/man5/pam_passwd_auth.5 b/usr/src/man/man5/pam_passwd_auth.5
deleted file mode 100644
index fe73210f8e..0000000000
--- a/usr/src/man/man5/pam_passwd_auth.5
+++ /dev/null
@@ -1,145 +0,0 @@
-'\" te
-.\" Copyright (C) 2002, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PAM_PASSWD_AUTH 5 "Aug 10, 2002"
-.SH NAME
-pam_passwd_auth \- authentication module for password
-.SH SYNOPSIS
-.LP
-.nf
-\fBpam_passwd_auth.so.1\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBpam_passwd_auth\fR provides authentication functionality to the password
-service as implemented by \fBpasswd\fR(1). It differs from the standard
-\fBPAM\fR authentication modules in its prompting behavior. It should be the
-first module on the password service authentication stack.
-.sp
-.LP
-The name of the user whose password attributes are to be updated must be
-present in the \fBPAM_USER\fR item. This can be accomplished due to a previous
-call to \fBpam_start\fR(3PAM), or explicitly set by \fBpam_set_item\fR(3PAM).
-Based on the current user-id and the repository that is to by updated, the
-module determines whether a password is necessary for a successful update of
-the password repository, and if so, which password is required.
-.sp
-.LP
-The following options can be passed to the module:
-.sp
-.ne 2
-.na
-\fB\fBdebug\fR\fR
-.ad
-.RS 17n
-\fBsyslog\fR(3C) debugging information at the \fBLOG_DEBUG\fR level
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnowarn\fR\fR
-.ad
-.RS 17n
-Turn off warning messages
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBserver_policy\fR\fR
-.ad
-.RS 17n
-If the account authority for the user, as specified by \fBPAM_USER\fR, is a
-server, do not apply the Unix policy from the passwd entry in the name service
-switch.
-.RE
-
-.SH ERRORS
-.sp
-.LP
-The following error codes are returned:
-.sp
-.ne 2
-.na
-\fB\fBPAM_BUF_ERR\fR\fR
-.ad
-.RS 18n
-Memory buffer error
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_IGNORE\fR\fR
-.ad
-.RS 18n
-Ignore module, not participating in result
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_SUCCESS\fR\fR
-.ad
-.RS 18n
-Successfully obtains authentication token
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_SYSTEM_ERR\fR\fR
-.ad
-.RS 18n
-System error
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-_
-MT Level MT-Safe with exceptions
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBpasswd\fR(1), \fBpam\fR(3PAM), \fBpam_authenticate\fR(3PAM),
-\fBpam_start\fR(3PAM), \fBpam_set_item\fR(3PAM), \fBsyslog\fR(3C),
-\fBlibpam\fR(3LIB), \fBpam.conf\fR(4), \fBattributes\fR(5),
-\fBpam_authtok_check\fR(5), \fBpam_authtok_get\fR(5),
-\fBpam_authtok_store\fR(5), \fBpam_dhkeys\fR(5), \fBpam_unix_account\fR(5),
-\fBpam_unix_auth\fR(5), \fBpam_unix_session\fR(5)
-.SH NOTES
-.sp
-.LP
-The interfaces in \fBlibpam\fR(3LIB) are MT-Safe only if each thread within the
-multi-threaded application uses its own PAM handle.
-.sp
-.LP
-This module relies on the value of the current real \fBUID\fR, this module is
-only safe for MT-applications that don't change \fBUID\fRs during the call to
-\fBpam_authenticate\fR(3PAM).
-.sp
-.LP
-The \fBpam_unix\fR(5) module is no longer supported. Similar functionality is
-provided by \fBpam_authtok_check\fR(5), \fBpam_authtok_get\fR(5),
-\fBpam_authtok_store\fR(5), \fBpam_dhkeys\fR(5), \fBpam_passwd_auth\fR(5),
-\fBpam_unix_account\fR(5), \fBpam_unix_auth\fR(5), and
-\fBpam_unix_session\fR(5).
diff --git a/usr/src/man/man5/pam_rhosts_auth.5 b/usr/src/man/man5/pam_rhosts_auth.5
deleted file mode 100644
index c568c1ab4c..0000000000
--- a/usr/src/man/man5/pam_rhosts_auth.5
+++ /dev/null
@@ -1,67 +0,0 @@
-'\" te
-.\" Copyright (c) 1995, Sun Microsystems, Inc.
-.\" All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PAM_RHOSTS_AUTH 5 "Oct 28, 1996"
-.SH NAME
-pam_rhosts_auth \- authentication management PAM module using ruserok()
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/security/pam_rhosts_auth.so.1\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The rhosts \fBPAM\fR module, \fB/usr/lib/security/pam_rhosts_auth.so.1\fR,
-authenticates a user via the \fBrlogin\fR authentication protocol. Only
-\fBpam_sm_authenticate()\fR is implemented within this module.
-\fBpam_sm_authenticate()\fR uses the \fBruserok\fR(3SOCKET) library function to
-authenticate the \fBrlogin\fR or \fBrsh\fR user. \fBpam_sm_setcred()\fR is a
-null function.
-.sp
-.LP
-\fB/usr/lib/security/pam_rhosts_auth.so.1\fR is designed to be stacked on top
-of the \fB/usr/lib/security/pam_unix.so.1\fR module for both the \fBrlogin\fR
-and \fBrsh\fR services. This module is normally configured as \fIsufficient\fR
-so that subsequent authentication is performed only on failure of
-\fBpam_sm_authenticate()\fR. The following option may be passed in to this
-service module:
-.sp
-.ne 2
-.na
-\fB\fBdebug\fR \fR
-.ad
-.RS 10n
-\fBsyslog\fR(3C) debugging information at \fBLOG_DEBUG\fR level.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-MT Level MT-Safe with exceptions
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBpam\fR(3PAM), \fBpam_authenticate\fR(3PAM), \fBruserok\fR(3SOCKET),
-\fBsyslog\fR(3C), \fBlibpam\fR(3LIB), \fBpam.conf\fR(4), \fBattributes\fR(5)
-.SH NOTES
-.sp
-.LP
-The interfaces in \fBlibpam()\fR are MT-Safe only if each thread within the
-multi-threaded application uses its own \fBPAM\fR handle.
diff --git a/usr/src/man/man5/pam_roles.5 b/usr/src/man/man5/pam_roles.5
deleted file mode 100644
index f1425f9e21..0000000000
--- a/usr/src/man/man5/pam_roles.5
+++ /dev/null
@@ -1,185 +0,0 @@
-'\" te
-.\" Copyright (C) 2007, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PAM_ROLES 5 "Mar 6, 2007"
-.SH NAME
-pam_roles \- Solaris Roles account management module
-.SH SYNOPSIS
-.LP
-.nf
-pam_roles.so.1
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBpam_roles\fR module implements \fBpam_sm_acct_mgmt\fR(3PAM). It provides
-functionality to verify that a user is authorized to assume a role. It also
-prevents direct logins to a role. The \fBuser_attr\fR(4) database is used to
-determine which users can assume which roles.
-.sp
-.LP
-The \fBPAM\fR items \fBPAM_USER\fR and \fBPAM_AUSER\fR, and \fBPAM_RHOST\fR are
-used to determine the outcome of this module. \fBPAM_USER\fR represents the new
-identity being verified. \fBPAM_AUSER\fR, if set, represents the user asserting
-a new identity. If \fBPAM_AUSER\fR is not set, the real user \fBID\fR of the
-calling service implies that the user is asserting a new identity. Notice that
-root can never have roles.
-.sp
-.LP
-This module is generally stacked above the \fBpam_unix_account\fR(5) module.
-.sp
-.LP
-The following options are interpreted:
-.sp
-.ne 2
-.na
-\fB\fBallow_remote\fR\fR
-.ad
-.RS 16n
-Allows a remote service to specify the user to enter as a role.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdebug\fR\fR
-.ad
-.RS 16n
-Provides \fBsyslog\fR(3C) debugging information at the \fBLOG_DEBUG\fR level.
-.RE
-
-.SH ERRORS
-.sp
-.LP
-The following values are returned:
-.sp
-.ne 2
-.na
-\fB\fBPAM_IGNORE\fR\fR
-.ad
-.RS 20n
-If the type of the new user identity (\fBPAM_USER\fR) is "\fBnormal\fR". Or, if
-the type of the new user identity is "\fBrole\fR" and the user asserting the
-new identity (\fBPAM_AUSER\fR) has the new identity name in its list of roles.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_USER_UNKNOWN\fR\fR
-.ad
-.RS 20n
-No account is present for user.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_PERM_DENIED\fR\fR
-.ad
-.RS 20n
-If the type of the new user identity (\fBPAM_USER\fR) is "\fBrole\fR" and the
-user asserting the new identity (\fBPAM_AUSER\fR) does not have the new
-identity name in its list of roles.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRUsing the \fBpam_roles.so.1\fR Module
-.sp
-.LP
-The following are sample entries from \fBpam.conf\fR(4). These entries
-demonstrate the use of the \fBpam_roles.so.1\fR module:
-
-.sp
-.in +2
-.nf
-cron account required pam_unix_account.so.1
-#
-other account requisite pam_roles.so.1
-other account required pam_unix_account.so.1
-#
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The \fBcron\fR service does not invoke \fBpam_roles.so.1\fR. Delayed jobs are
-independent of role assumption. All other services verify that roles cannot
-directly login. The "\fBsu\fR" service (covered by the "\fBother\fR" service
-entry) verifies that if the new user is a role, the calling user is authorized
-for that role.
-
-.LP
-\fBExample 2 \fRAllowing Remote Roles
-.sp
-.LP
-Remote roles should only be allowed from remote services that can be trusted to
-provide an accurate \fBPAM_AUSER\fRname. This trust is a function of the
-protocol (such as \fBsshd\fR-hostbased).
-
-.sp
-.LP
-The following is a sample entry for a \fBpam.conf\fR(4) file. It demonstrates
-the use of \fBpam_roles\fR configuration for remote roles for the
-\fBsshd\fR-hostbased service.
-
-.sp
-.in +2
-.nf
-sshd-hostbased account requisite pam_roles.so.1 allow_remote
-sshd-hostbased account required pam_unix_account
-.fi
-.in -2
-.sp
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-_
-MT Level MT-Safe with exceptions
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBroles\fR(1), \fBsshd\fR(1M), \fBsu\fR(1M), \fBlibpam\fR(3LIB),
-\fBpam\fR(3PAM), \fBpam_acct_mgmt\fR(3PAM), \fBpam_setcred\fR(3PAM),
-\fBpam_set_item\fR(3PAM), \fBpam_sm_acct_mgmt\fR(3PAM), \fBsyslog\fR(3C),
-\fBpam.conf\fR(4), \fBuser_attr\fR(4), \fBattributes\fR(5),
-\fBpam_authtok_check\fR(5), \fBpam_authtok_get\fR(5),
-\fBpam_authtok_store\fR(5), \fBpam_dhkeys\fR(5), \fBpam_passwd_auth\fR(5),
-\fBpam_unix_account\fR(5), \fBpam_unix_auth\fR(5), \fBpam_unix_session\fR(5)
-.SH NOTES
-.sp
-.LP
-The interfaces in \fBlibpam\fR(3LIB) are MT-Safe only if each thread within the
-multi-threaded application uses its own \fBPAM\fR handle.
-.sp
-.LP
-This module should never be stacked alone. It never returns \fBPAM_SUCCESS\fR,
-as it never makes a positive decision.
-.sp
-.LP
-The \fBallow_remote\fR option should only be specified for services that are
-trusted to correctly identify the remote user (that is, \fBsshd\fR-hostbased).
-.sp
-.LP
-\fBPAM_AUSER\fR has replaced \fBPAM_RUSER\fR whose definition is limited to the
-\fBrlogin\fR/\fBrsh\fR untrusted remote user name. See
-\fBpam_set_item\fR(3PAM).
diff --git a/usr/src/man/man5/pam_sample.5 b/usr/src/man/man5/pam_sample.5
deleted file mode 100644
index 38f313607f..0000000000
--- a/usr/src/man/man5/pam_sample.5
+++ /dev/null
@@ -1,202 +0,0 @@
-'\" te
-.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PAM_SAMPLE 5 "Apr 4, 2007"
-.SH NAME
-pam_sample \- a sample PAM module
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/security/pam_sample.so.1\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The SAMPLE service module for \fBPAM\fR is divided into four components:
-authentication, account management, password management, and session
-management. The sample module is a shared object that is dynamically loaded to
-provide the necessary functionality.
-.SH SAMPLE AUTHENTICATION COMPONENT
-.sp
-.LP
-The SAMPLE authentication module provides functions to test the \fBPAM\fR
-framework functionality using the \fBpam_sm_authenticate\fR(3PAM) call. The
-SAMPLE module implementation of the \fBpam_sm_authenticate\fR(3PAM) function
-compares the user entered password with the password set in the
-\fBpam.conf\fR(4) file, or the string "test" if a default test password has not
-been set. The following options can be passed in to the SAMPLE Authentication
-module:
-.sp
-.ne 2
-.na
-\fB\fBdebug\fR \fR
-.ad
-.RS 20n
-Syslog debugging information at the \fBLOG_DEBUG\fR level.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpass=newone\fR \fR
-.ad
-.RS 20n
-Sets the password to be "newone".
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfirst_pass_good\fR \fR
-.ad
-.RS 20n
-The first password is always good when used with the use_first_pass or
-try_first_pass option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfirst_pass_bad\fR \fR
-.ad
-.RS 20n
-The first password is always bad when used with the use_first_pass or
-try_first_pass option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBalways_fail\fR \fR
-.ad
-.RS 20n
-Always returns \fBPAM_AUTH_ERR.\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBalways_succeed\fR \fR
-.ad
-.RS 20n
-Always returns \fBPAM_SUCCESS.\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBalways_ignore\fR \fR
-.ad
-.RS 20n
-Always returns \fBPAM_IGNORE.\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBuse_first_pass\fR \fR
-.ad
-.RS 20n
-Use the user's initial password (entered when the user is authenticated to the
-first authentication module in the stack) to authenticate with the SAMPLE
-module. If the passwords do not match, or if this is the first authentication
-module in the stack, quit and do not prompt the user for a password. It is
-recommended that this option only be used if the SAMPLE authentication module
-is designated as \fIoptional\fR in the \fBpam.conf\fR configuration file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBtry_first_pass\fR \fR
-.ad
-.RS 20n
-Use the user's initial password (entered when the user is authenticated to the
-first authentication module in the stack) to authenticate with the SAMPLE
-module. If the passwords do not match, or if this is the first authentication
-module in the stack, prompt the user for a password.
-.sp
-The SAMPLE module \fBpam_sm_setcred\fR(3PAM) function always returns
-\fBPAM_SUCCESS.\fR
-.RE
-
-.SH SAMPLE ACCOUNT MANAGEMENT COMPONENT
-.sp
-.LP
-The SAMPLE Account Management Component implements a simple access control
-scheme that limits machine access to a list of authorized users. The list of
-authorized users is supplied as option arguments to the entry for the SAMPLE
-account management \fBPAM\fR module in the \fBpam.conf\fR file. Note that the
-module always permits access to the root super user.
-.sp
-.LP
-The option field syntax to limit access is shown below: allow=
-\fIname[,name]\fR allow= \fIname\fR \fI[allow=name]\fR
-.sp
-.LP
-The example \fBpam.conf\fR show below permits only larry to \fBlogin\fR
-directly. \fBrlogin\fR is allowed only for don and larry. Once a user is logged
-in, the user can use \fBsu\fR if the user are sam or eric.
-.sp
-
-.sp
-.TS
-l l l l l
-l l l l l .
-login account require pam_sample.so.1 allow=larry
-dtlogin account require pam_sample.so.1 allow=larry
-rlogin account require pam_sample.so.1 allow=don allow=larry
-su account require pam_sample.so.1 allow=sam,eric
-.TE
-
-.sp
-.LP
-The debug and nowarn options are also supported.
-.SH SAMPLE PASSWORD MANAGEMENT COMPONENT
-.sp
-.LP
-The SAMPLE Password Management Component function (
-\fBpam_sm_chauthtok\fR(3PAM)), always returns \fBPAM_SUCCESS.\fR
-.SH SAMPLE SESSION MANAGEMENT COMPONENT
-.sp
-.LP
-The SAMPLE Session Management Component functions (
-\fBpam_sm_open_session\fR(3PAM), \fBpam_sm_close_session\fR(3PAM)) always
-return \fBPAM_SUCCESS.\fR
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for description of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-MT Level MT-Safe with exceptions
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBpam\fR(3PAM), \fBpam_sm_authenticate\fR(3PAM), \fBpam_sm_chauthtok\fR(3PAM),
-\fBpam_sm_close_session\fR(3PAM), \fBpam_sm_open_session\fR(3PAM),
-\fBpam_sm_setcred\fR(3PAM), \fBlibpam\fR(3LIB), \fBpam.conf\fR(4),
-\fBattributes\fR(5)
-.SH WARNINGS
-.sp
-.LP
-This module should never be used outside of a closed debug environment. The
-examples of the \fBuse_first_pass\fR and \fBtry_first_pass\fR options are
-obsolete for all other Solaris delivered PAM service modules
-.SH NOTES
-.sp
-.LP
-The interfaces in \fBlibpam()\fR are MT-Safe only if each thread within the
-multi-threaded application uses its own \fBPAM\fR handle.
diff --git a/usr/src/man/man5/pam_smb_passwd.5 b/usr/src/man/man5/pam_smb_passwd.5
deleted file mode 100644
index 858c354478..0000000000
--- a/usr/src/man/man5/pam_smb_passwd.5
+++ /dev/null
@@ -1,184 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PAM_SMB_PASSWD 5 "Apr 29, 2008"
-.SH NAME
-pam_smb_passwd \- SMB password management module
-.SH SYNOPSIS
-.LP
-.nf
-\fBpam_smb_passwd.so.1\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBpam_smb_passwd\fR module enhances the PAM password management stack.
-This functionality supports the changing or adding of SMB passwords for local
-Solaris users. The Solaris CIFS server uses SMB passwords to authenticate
-connected Solaris users. This module includes the \fBpam_sm_chauthtok\fR(3PAM)
-function.
-.sp
-.LP
-The \fBpam_sm_chauthtok()\fR function accepts the following flags:
-.sp
-.ne 2
-.na
-\fB\fBPAM_PRELIM_CHECK\fR\fR
-.ad
-.sp .6
-.RS 4n
-Always returns \fBPAM_IGNORE\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_SILENT\fR\fR
-.ad
-.sp .6
-.RS 4n
-Suppresses messages.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_UPDATE_AUTHTOK\fR\fR
-.ad
-.sp .6
-.RS 4n
-Updates or creates a new \fBCIFS\fR local \fBLM\fR/\fBNTLM\fR hash for the user
-that is specified in \fBPAM_USER\fR by using the authentication information
-found in \fBPAM_AUTHTOK\fR. The \fBLM\fR hash is only created if the
-\fBsmbd/lmauth_level\fR property value of the \fBsmb/server\fR service is set
-to 3 or less. \fBPAM_IGNORE\fR is returned if the user is not in the local
-\fB/etc/passwd\fR repository.
-.RE
-
-.sp
-.LP
-The following options can be passed to the \fBpam_smb_passwd\fR module:
-.sp
-.ne 2
-.na
-\fB\fBdebug\fR\fR
-.ad
-.sp .6
-.RS 4n
-Produces \fBsyslog\fR(3C) debugging information at the \fBLOG_AUTH\fR or
-\fBLOG_DEBUG\fR level.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnowarn\fR\fR
-.ad
-.sp .6
-.RS 4n
-Suppresses warning messages.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/var/smb/smbpasswd\fR\fR
-.ad
-.sp .6
-.RS 4n
-Stores SMB passwords for Solaris users.
-.RE
-
-.SH ERRORS
-.sp
-.LP
-Upon successful completion of \fBpam_sm_chauthtok()\fR, \fBPAM_SUCCESS\fR is
-returned. The following error codes are returned upon error:
-.sp
-.ne 2
-.na
-\fB\fBPAM_AUTHTOK_ERR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Authentication token manipulation error
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_AUTHTOK_LOCK_BUSY\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBSMB\fR password file is locked
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_PERM_DENIED\fR\fR
-.ad
-.sp .6
-.RS 4n
-Permissions are insufficient for accessing the \fBSMB\fR password file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_SYSTEM_ERR\fR\fR
-.ad
-.sp .6
-.RS 4n
-System error
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_USER_UNKNOWN\fR\fR
-.ad
-.sp .6
-.RS 4n
-User is unknown
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See the \fBattributes\fR(5) man page for descriptions of the following
-attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Committed
-_
-MT Level MT-Safe with exceptions
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBsmbd\fR(1M), \fBsyslog\fR(3C), \fBlibpam\fR(3LIB), \fBpam\fR(3PAM),
-\fBpam_chauthtok\fR(3PAM), \fBpam_sm\fR(3PAM), \fBpam_sm_chauthtok\fR(3PAM),
-\fBpam.conf\fR(4), \fBattributes\fR(5)
-.SH NOTES
-.sp
-.LP
-The interfaces in \fBlibpam\fR(3LIB) are MT-Safe \fBonly\fR if each thread
-within the multi-threaded application uses its own PAM handle.
-.sp
-.LP
-The \fBpam_smb_passwd.so.1\fR module should be stacked following all password
-qualification modules in the \fBPAM\fR password stack.
diff --git a/usr/src/man/man5/pam_smbfs_login.5 b/usr/src/man/man5/pam_smbfs_login.5
deleted file mode 100644
index 8f627db028..0000000000
--- a/usr/src/man/man5/pam_smbfs_login.5
+++ /dev/null
@@ -1,224 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PAM_SMBFS_LOGIN 5 "Sep 25, 2008"
-.SH NAME
-pam_smbfs_login \- PAM user credential authentication module for SMB/CIFS
-client login
-.SH SYNOPSIS
-.LP
-.nf
-pam_smb_cred.so.1
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBpam_smbfs_login\fR module implements \fBpam_sm_setcred\fR(3PAM) to
-provide functions that act equivalently to the \fBsmbutil\fR(1) login command.
-.sp
-.LP
-This optional functionality is meant to be used only in environments that do
-not run Active Directory or Kerberos, but which synchronize passwords between
-Solaris clients and their CIFS/SMB servers.
-.sp
-.LP
-This module permits the login password to be stored as if the \fBsmbutil\fR(1)
-login command was used to store a password for PAM_USER in the user or system
-default domain. The choice of default domain is the first of the following:
-.br
-.in +2
--Domain entry specified in the default section of the \fB$HOME/.nsmbrc\fR
-file, if readable.
-.in -2
-.br
-.in +2
--Domain entry specified in the default section shown by the sharectl get smbfs
-command.
-.in -2
-.br
-.in +2
--String WORKGROUP.
-.in -2
-.sp
-.LP
-Because \fBpam_smbfs_login\fR runs as root during the login process, a
-\fB$HOME/.nsmbrc\fR file accessed through NFS may only be readable if the file
-permits reads by others. This conflicts with the requirement that passwords
-stored in \fB$HOME/.nsmbrc\fR are ignored when permissions are open.
-.sp
-.LP
-To use this functionality, add the following line to the \fB/etc/pam.conf\fR
-file:
-.sp
-.in +2
-.nf
-login auth optional pam_smbfs_login.so.1
-.fi
-.in -2
-
-.sp
-.LP
-Authentication service modules must implement both
-\fBpam_sm_authenticate\fR(3PAM) and \fBpam_sm_setcred\fR(3PAM). In this module,
-\fBpam_sm_authenticate\fR(3PAM) always returns \fBPAM_IGNORE\fR.
-.sp
-.LP
-The \fBpam_sm_setcred\fR(3PAM) function accepts the following flags:
-.sp
-.ne 2
-.na
-\fB\fBPAM_REFRESH_CRED\fR\fR
-.ad
-.sp .6
-.RS 4n
-Returns PAM_IGNORE.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_SILENT\fR\fR
-.ad
-.sp .6
-.RS 4n
-Suppresses messages.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_ESTABLISH_CRED\fR\fR
-.ad
-.br
-.na
-\fB\fBPAM_REINITIALIZE_CRED\fR\fR
-.ad
-.sp .6
-.RS 4n
-Stores the authentication token for PAM_USER in the same manner as the
-\fBsmbutil\fR(1) login command.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_DELETE_CRED\fR\fR
-.ad
-.sp .6
-.RS 4n
-Deletes the stored password for PAM_USER in the same manner as the
-\fBsmbutil\fR(1) logout command.
-.RE
-
-.sp
-.LP
-The following options can be passed to the \fBpam_smbfs_login\fR module:
-.sp
-.ne 2
-.na
-\fB\fBdebug\fR\fR
-.ad
-.sp .6
-.RS 4n
-Produces \fBsyslog\fR(3C) debugging information at the LOG_AUTH or LOG_DEBUG
-level.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnowarn\fR\fR
-.ad
-.sp .6
-.RS 4n
-Suppresses warning messages.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB$HOME/.nsmbrc\fR\fR
-.ad
-.RS 28n
-Find default domain, if present.
-.RE
-
-.SH ERRORS
-.sp
-.LP
-Upon successful completion of \fBpam_sm_setcred\fR(3PAM), \fBPAM_SUCCESS\fR is
-returned. The following error codes are returned upon error:
-.sp
-.ne 2
-.na
-\fB\fBPAM_USER_UNKNOWN\fR\fR
-.ad
-.sp .6
-.RS 4n
-User is unknown.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_AUTHTOK_ERR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Password is bad.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_AUTH_ERR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Domain is bad.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_SYSTEM_ERR\fR\fR
-.ad
-.sp .6
-.RS 4n
-System error.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attribute:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Committed
-_
-MT Level MT-Safe with exceptions
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBsmbutil\fR(1), \fBsyslog\fR(3C), \fBlibpam\fR(3LIB), \fBpam\fR(3PAM),
-\fBpam_setcred\fR(3PAM), \fBpam_sm\fR(3PAM), \fBpam_sm_authenticate\fR(3PAM),
-\fBpam_sm_chauthtok\fR(3PAM), \fBpam_sm_setcred\fR(3PAM), \fBpam.conf\fR(4),
-\fBattributes\fR(5), \fBsmbfs\fR(7FS)
-.SH NOTES
-.sp
-.LP
-The interfaces in \fBlibpam\fR(3LIB) are MT-Safe only if each thread within
-the multi-threaded application uses its own PAM handle.
diff --git a/usr/src/man/man5/pam_timestamp.5 b/usr/src/man/man5/pam_timestamp.5
deleted file mode 100644
index aae2aba27f..0000000000
--- a/usr/src/man/man5/pam_timestamp.5
+++ /dev/null
@@ -1,113 +0,0 @@
-.\"
-.\" This file and its contents are supplied under the terms of the
-.\" Common Development and Distribution License ("CDDL"), version 1.0.
-.\" You may only use this file in accordance with the terms of version
-.\" 1.0 of the CDDL.
-.\"
-.\" A full copy of the text of the CDDL should have accompanied this
-.\" source. A copy of the CDDL is also available via the Internet at
-.\" http://www.illumos.org/license/CDDL.
-.\"
-.\" Copyright 2014 Nexenta Systems, Inc.
-.\"
-.Dd Nov 26, 2017
-.Dt PAM_TIMESTAMP 5
-.Os
-.Sh NAME
-.Nm pam_timestamp
-.Nd PAM authentication module using cached successful authentication attempts
-.Sh SYNOPSIS
-.Nm pam_timestamp.so.1
-.Op Ar debug
-.Op Ar timeout=min
-.Sh DESCRIPTION
-The
-.Nm
-module caches successful tty-based authentication attempts by
-creating user's directories and per tty timestamp files in the
-common timestamp directory
-.Pa /var/run/tty_timestamps .
-Next authentication, if the timestamp file exist and not expired,
-the user will not be asked for a password, otherwise timestamp
-file will be deleted and user will be prompted to enter a password.
-.Lp
-The PAM items
-.Dv PAM_USER ,
-.Dv PAM_AUSER
-and
-.Dv PAM_TTY
-are used by this module.
-.Sy pam_timestamp
-is normally configured as
-.Sy sufficient
-and must be used in conjunction with the modules that support
-the UNIX authentication, which are
-.Xr pam_authtok_get 5 ,
-.Xr pam_unix_cred 5
-and
-.Xr pam_unix_auth 5 .
-Proper authentication operation requires
-.Xr pam_unix_cred 5
-be stacked above
-.Nm .
-.Sh OPTIONS
-.Bl -tag -width Ds
-.It Dv debug
-Provides
-.Xr syslog 3C
-debugging information at the
-.Sy LOG_AUTH | LOG_DEBUG
-level.
-.It Dv timeout
-Specifies the period (in minutes) for which the timestamp file is valid.
-The default value is 5 minutes.
-.El
-.Sh FILES
-.Bl -tag -width indent
-.It Pa /var/run/tty_timestamps/...
-stores timestamp directories and files
-.El
-.Sh EXIT STATUS
-.Bl -tag -width Ds
-.It Dv PAM_SUCCESS
-Timestamp file is not expired.
-.It Dv PAM_IGNORE
-The
-.Nm
-module was not able to retrieve required credentials
-or timestamp file is expired or corrupt.
-.El
-.Sh EXAMPLES
-.Ss Example 1 Allowing su authentication
-.
-The following example is a
-.Xr pam.conf 4
-fragment that illustrates default settings for allowing
-.Xr su 1M
-authentication:
-.Bd -literal -offset indent
-su auth required pam_unix_cred.so.1
-su auth sufficient pam_timestamp.so.1
-su auth requisite pam_authtok_get.so.1
-su auth required pam_unix_auth.so.1
-.Ed
-.Ss Example 2 Changing default timeout
-.
-The default timeout set to 10 minutes:
-.Bd -literal -offset indent
-su auth required pam_unix_cred.so.1
-su auth sufficient pam_timestamp.so.1 timeout=10
-su auth requisite pam_authtok_get.so.1
-su auth required pam_unix_auth.so.1
-.Ed
-.Sh INTERFACE STABILITY
-.Sy Uncommitted .
-.Sh MT LEVEL
-.Sy MT-Safe .
-.Sh SEE ALSO
-.Xr su 1M ,
-.Xr syslog 3C ,
-.Xr pam 3PAM ,
-.Xr pam_sm_authenticate 3PAM ,
-.Xr pam_sm_setcred 3PAM ,
-.Xr pam.conf 4
diff --git a/usr/src/man/man5/pam_tsol_account.5 b/usr/src/man/man5/pam_tsol_account.5
deleted file mode 100644
index 34aef1d2b9..0000000000
--- a/usr/src/man/man5/pam_tsol_account.5
+++ /dev/null
@@ -1,138 +0,0 @@
-'\" te
-.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PAM_TSOL_ACCOUNT 5 "Jul 20, 2007"
-.SH NAME
-pam_tsol_account \- PAM account management module for Trusted Extensions
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/security/pam_tsol_account.so.1\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The Solaris Trusted Extensions service module for \fBPAM\fR,
-\fB/usr/lib/security/pam_tsol_account.so.1\fR, checks account limitations that
-are related to labels. The \fBpam_tsol_account.so.1\fR module is a shared
-object that can be dynamically loaded to provide the necessary functionality
-upon demand. Its path is specified in the \fBPAM\fR configuration file.
-.sp
-.LP
-\fBpam_tsol_account.so.1\fR contains a function to perform account management,
-\fBpam_sm_acct_mgmt()\fR. The function checks for the allowed label range for
-the user. The allowable label range is set by the defaults in the
-\fBlabel_encodings\fR(4) file. These defaults can be overridden by entries in
-the \fBuser_attr\fR(4) database.
-.sp
-.LP
-By default, this module requires that remote hosts connecting to the global
-zone must have a CIPSO host type. To disable this policy, add the
-\fBallow_unlabeled\fR keyword as an option to the entry in \fBpam.conf\fR(4),
-as in:
-.sp
-.in +2
-.nf
-other account required pam_tsol_account allow_unlabeled
-.fi
-.in -2
-.sp
-
-.SH OPTIONS
-.sp
-.LP
-The following options can be passed to the module:
-.sp
-.ne 2
-.na
-\fB\fBallow_unlabeled\fR\fR
-.ad
-.RS 19n
-Allows remote connections from hosts with unlabeled template types.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdebug\fR\fR
-.ad
-.RS 19n
-Provides debugging information at the \fBLOG_DEBUG\fR level. See
-\fBsyslog\fR(3C).
-.RE
-
-.SH RETURN VALUES
-.sp
-.LP
-The following values are returned:
-.sp
-.ne 2
-.na
-\fB\fBPAM_SUCCESS\fR\fR
-.ad
-.RS 19n
-The account is valid for use at this time and label.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_PERM_DENIED\fR\fR
-.ad
-.RS 19n
-The current process label is outside the user's label range, or the label
-information for the process is unavailable, or the remote host type is not
-valid.
-.RE
-
-.sp
-.ne 2
-.na
-\fBOther values\fR
-.ad
-.RS 19n
-Returns an error code that is consistent with typical PAM operations. For
-information on error-related return values, see the \fBpam\fR(3PAM) man page.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for description of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Committed
-_
-MT Level MT-Safe with exceptions
-.TE
-
-.sp
-.LP
-The interfaces in \fBlibpam\fR(3LIB) are MT-Safe only if each thread within the
-multi-threaded application uses its own PAM handle.
-.SH SEE ALSO
-.sp
-.LP
-\fBkeylogin\fR(1), \fBlibpam\fR(3LIB), \fBpam\fR(3PAM),
-\fBpam_sm_acct_mgmt\fR(3PAM), \fBpam_start\fR(3PAM), \fBsyslog\fR(3C),
-\fBlabel_encodings\fR(4), \fBpam.conf\fR(4), \fBuser_attr\fR(4),
-\fBattributes\fR(5)
-.sp
-.LP
-Chapter 17, \fIUsing PAM,\fR in \fISystem Administration Guide: Security
-Services\fR
-.SH NOTES
-.sp
-.LP
-The functionality described on this manual page is available only if the system
-is configured with Trusted Extensions.
diff --git a/usr/src/man/man5/pam_unix_account.5 b/usr/src/man/man5/pam_unix_account.5
deleted file mode 100644
index 552ee1d8a3..0000000000
--- a/usr/src/man/man5/pam_unix_account.5
+++ /dev/null
@@ -1,173 +0,0 @@
-'\" te
-.\" Copyright (C) 2003, Sun Microsystems, Inc.
-.\" All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PAM_UNIX_ACCOUNT 5 "Feb 14, 2005"
-.SH NAME
-pam_unix_account \- PAM account management module for UNIX
-.SH SYNOPSIS
-.LP
-.nf
-\fBpam_unix_account.so.1\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBpam_unix_account\fR module implements \fBpam_sm_acct_mgmt()\fR, which
-provides functionality to the \fBPAM\fR account management stack. The module
-provides functions to validate that the user's account is not locked or expired
-and that the user's password does not need to be changed. The module retrieves
-account information from the configured databases in \fBnsswitch.conf\fR(4).
-.sp
-.LP
-The following options can be passed to the module:
-.sp
-.ne 2
-.na
-\fB\fBdebug\fR\fR
-.ad
-.RS 17n
-\fBsyslog\fR(3C) debugging information at the \fBLOG_DEBUG\fR level
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnowarn\fR\fR
-.ad
-.RS 17n
-Turn off warning messages
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBserver_policy\fR\fR
-.ad
-.RS 17n
-If the account authority for the user, as specified by \fBPAM_USER\fR, is a
-server, do not apply the Unix policy from the passwd entry in the name service
-switch.
-.RE
-
-.SH ERRORS
-.sp
-.LP
-The following values are returned:
-.sp
-.ne 2
-.na
-\fB\fBPAM_UNIX_ACCOUNT\fR\fR
-.ad
-.RS 24n
-User account has expired
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_AUTHTOK_EXPIRED\fR\fR
-.ad
-.RS 24n
-Password expired and no longer usable
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_BUF_ERR\fR\fR
-.ad
-.RS 24n
-Memory buffer error
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_IGNORE\fR\fR
-.ad
-.RS 24n
-Ignore module, not participating in result
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_NEW_AUTHTOK_REQD\fR\fR
-.ad
-.RS 24n
-Obtain new authentication token from the user
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_PERM_DENIED\fR\fR
-.ad
-.RS 24n
-The account is locked or has been inactive for too long
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_SERVICE_ERR\fR\fR
-.ad
-.RS 24n
-Error in underlying service module
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_SUCCESS\fR\fR
-.ad
-.RS 24n
-The account is valid for use at this time
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_USER_UNKNOWN\fR\fR
-.ad
-.RS 24n
-No account is present for the user
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-_
-MT Level MT-Safe with exceptions
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBpam\fR(3PAM), \fBpam_authenticate\fR(3PAM), \fBsyslog\fR(3C),
-\fBlibpam\fR(3LIB), \fBpam.conf\fR(4), \fBnsswitch.conf\fR(4),
-\fBattributes\fR(5)
-.SH NOTES
-.sp
-.LP
-The interfaces in \fBlibpam\fR(3LIB) are MT-Safe only if each thread within the
-multi-threaded application uses its own PAM handle.
-.sp
-.LP
-Attempts to validate locked accounts are logged via \fBsyslog\fR(3C) to the
-\fBLOG_AUTH\fR facility with a \fBLOG_NOTICE\fR severity.
diff --git a/usr/src/man/man5/pam_unix_auth.5 b/usr/src/man/man5/pam_unix_auth.5
deleted file mode 100644
index 047a99de06..0000000000
--- a/usr/src/man/man5/pam_unix_auth.5
+++ /dev/null
@@ -1,226 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PAM_UNIX_AUTH 5 "Apr 23, 2008"
-.SH NAME
-pam_unix_auth \- PAM authentication module for UNIX
-.SH SYNOPSIS
-.LP
-.nf
-\fBpam_unix_auth.so.1\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBpam_unix_auth\fR module implements \fBpam_sm_authenticate()\fR, which
-provides functionality to the PAM authentication stack. It provides functions
-that use \fBcrypt\fR(3C) to verify that the password contained in the \fBPAM\fR
-item \fBPAM_AUTHTOK\fR is the correct password for the user specified in the
-item \fBPAM_USER\fR. If \fBPAM_REPOSITORY\fR is specified, then user's password
-is fetched from that repository. Otherwise, the default \fBnsswitch.conf\fR(4)
-repository is searched for that user.
-.sp
-.LP
-For accounts in the name services which support automatic account locking, the
-account may be configured to be automatically locked (see \fBuser_attr\fR(4)
-and \fBpolicy.conf\fR(4)) after multiple failed login attempts. For accounts
-that are configured for automatic locking, if authentication failure is to be
-returned, the failed login counter is incremented upon each failure. If the
-number of successive failures equals or exceeds \fBRETRIES\fR as defined in
-\fBlogin\fR(1), the account is locked and \fBPAM_MAXTRIES\fR is returned.
-Currently, only the "files" repository (see \fBpasswd\fR(4) and
-\fBshadow\fR(4)) supports automatic account locking. A successful
-authentication by this module clears the failed login counter and reports the
-number of failed attempts since the last successful authentication.
-.sp
-.LP
-Authentication service modules must implement both \fBpam_sm_authenticate()\fR
-and \fBpam_sm_setcred()\fR. To allow the authentication portion of UNIX
-authentication to be replaced, \fBpam_sm_setcred()\fR in this module always
-returns \fBPAM_IGNORE\fR. This module should be stacked with
-\fBpam_unix_cred\fR(5) to ensure a successful return from
-\fBpam_setcred\fR(3PAM).
-.sp
-.LP
-The following options can be passed to the module:
-.sp
-.ne 2
-.na
-\fB\fBnowarn\fR\fR
-.ad
-.sp .6
-.RS 4n
-Turn off warning messages.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBserver_policy\fR\fR
-.ad
-.sp .6
-.RS 4n
-If the account authority for the user, as specified by \fBPAM_USER\fR, is a
-server, do not apply the UNIX policy from the \fBpasswd\fR entry in the name
-service switch.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnolock\fR\fR
-.ad
-.sp .6
-.RS 4n
-Regardless of the automatic account locking setting for the account, do not
-lock the account, increment or clear the failed login count. The \fBnolock\fR
-option allows for exempting account locking on a per service basis.
-.RE
-
-.SH ERRORS
-.sp
-.LP
-The following error codes are returned from \fBpam_sm_authenticate()\fR:
-.sp
-.ne 2
-.na
-\fB\fBPAM_AUTH_ERR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Authentication failure.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_BUF_ERR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Memory buffer error.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_IGNORE\fR\fR
-.ad
-.sp .6
-.RS 4n
-Ignores module, not participating in result.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_MAXTRIES\fR\fR
-.ad
-.sp .6
-.RS 4n
-Maximum number of retries exceeded.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_PERM_DENIED\fR\fR
-.ad
-.sp .6
-.RS 4n
-Permission denied.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_SUCCESS\fR\fR
-.ad
-.sp .6
-.RS 4n
-Successfully obtains authentication token.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_SYSTEM_ERR\fR\fR
-.ad
-.sp .6
-.RS 4n
-System error.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_USER_UNKNOWN\fR\fR
-.ad
-.sp .6
-.RS 4n
-No account present for user.
-.RE
-
-.sp
-.LP
-The following error codes are returned from \fBpam_sm_setcred()\fR:
-.sp
-.ne 2
-.na
-\fB\fBPAM_IGNORE\fR\fR
-.ad
-.sp .6
-.RS 4n
-Ignores this module regardless of the control flag.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Committed
-_
-MT Level MT-Safe with exceptions
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBlogin\fR(1), \fBpasswd\fR(1), \fBuseradd\fR(1M), \fBusermod\fR(1M),
-\fBroleadd\fR(1M), \fBrolemod\fR(1M), \fBcrypt\fR(3C), \fBlibpam\fR(3LIB),
-\fBpam\fR(3PAM), \fBpam_authenticate\fR(3PAM), \fBpam_setcred\fR(3PAM),
-\fBsyslog\fR(3C), \fBpam.conf\fR(4), \fBpasswd\fR(4), \fBpolicy.conf\fR(4),
-\fBnsswitch.conf\fR(4), \fBshadow\fR(4), \fBuser_attr\fR(4),
-\fBattributes\fR(5), \fBpam_authtok_check\fR(5), \fBpam_authtok_get\fR(5),
-\fBpam_authtok_store\fR(5), \fBpam_dhkeys\fR(5), \fBpam_passwd_auth\fR(5),
-\fBpam_unix_account\fR(5), \fBpam_unix_session\fR(5)
-.SH NOTES
-.sp
-.LP
-The interfaces in \fBlibpam\fR(3LIB) are MT-Safe only if each thread within the
-multi-threaded application uses its own \fBPAM\fR handle.
-.sp
-.LP
-The \fBpam_unix\fR(5) module is no longer supported. Similar functionality is
-provided by \fBpam_authtok_check\fR(5), \fBpam_authtok_get\fR(5),
-\fBpam_authtok_store\fR(5), \fBpam_dhkeys\fR(5),
-\fBpam_passwd_auth\fR(5), \fBpam_setcred\fR(3PAM), \fBpam_unix_account\fR(5),
-\fBpam_unix_cred\fR(5), \fBpam_unix_session\fR(5).
-.sp
-.LP
-If the \fBPAM_REPOSITORY\fR \fIitem_type\fR is set and a service module does
-not recognize the type, the service module does not process any information,
-and returns \fBPAM_IGNORE\fR. If the \fBPAM_REPOSITORY\fR \fIitem_type\fR is
-not set, a service module performs its default action.
diff --git a/usr/src/man/man5/pam_unix_cred.5 b/usr/src/man/man5/pam_unix_cred.5
deleted file mode 100644
index b227b70857..0000000000
--- a/usr/src/man/man5/pam_unix_cred.5
+++ /dev/null
@@ -1,211 +0,0 @@
-'\" te
-.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PAM_UNIX_CRED 5 "Mar 9, 2005"
-.SH NAME
-pam_unix_cred \- PAM user credential authentication module for UNIX
-.SH SYNOPSIS
-.LP
-.nf
-\fBpam_unix_cred.so.1\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBpam_unix_cred\fR module implements \fBpam_sm_setcred\fR(3PAM). It
-provides functions that establish user credential information. It is a module
-separate from the \fBpam_unix_auth\fR(5) module to allow replacement of the
-authentication functionality independently from the credential functionality.
-.sp
-.LP
-The \fBpam_unix_cred\fR module must always be stacked along with whatever
-authentication module is used to ensure correct credential setting.
-.sp
-.LP
-Authentication service modules must implement both \fBpam_sm_authenticate()\fR
-and \fBpam_sm_setcred()\fR.
-.sp
-.LP
-\fBpam_sm_authenticate()\fR in this module always returns \fBPAM_IGNORE\fR.
-.sp
-.LP
-\fBpam_sm_setcred()\fR initializes the user's project, privilege sets and
-initializes or updates the user's audit context if it hasn't already been
-initialized. The following flags may be set in the flags field:
-.sp
-.ne 2
-.na
-\fB\fBPAM_ESTABLISH_CRED\fR\fR
-.ad
-.br
-.na
-\fB\fBPAM_REFRESH_CRED\fR\fR
-.ad
-.br
-.na
-\fB\fBPAM_REINITIALIZE_CRED\fR\fR
-.ad
-.sp .6
-.RS 4n
-Initializes the user's project to the project specified in \fBPAM_RESOURCE\fR,
-or if \fBPAM_RESOURCE\fR is not specified, to the user's default project.
-Establishes the user's privilege sets.
-.sp
-If the audit context is not already initialized and auditing is configured,
-these flags cause the context to be initialized to that of the user specified
-in \fBPAM_AUSER\fR (if any) merged with the user specified in \fBPAM_USER\fR
-and host specified in \fBPAM_RHOST\fR. If \fBPAM_RHOST\fR is not specified,
-\fBPAM_TTY\fR specifies the local terminal name. Attributing audit to
-\fBPAM_AUSER\fR and merging \fBPAM_USER\fR is required for correctly
-attributing auditing when the system entry is performed by another user that
-can be identified as trustworthy.
-.sp
-If the audit context is already initialized, the \fBPAM_REINITIALIZE_CRED\fR
-flag merges the current audit context with that of the user specified in
-\fBPAM_USER\fR. \fBPAM_REINITIALIZE_CRED\fR is useful when a user is assuming a
-new identity, as with \fBsu\fR(1M).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_DELETE_CRED\fR\fR
-.ad
-.sp .6
-.RS 4n
-This flag has no effect and always returns \fBPAM_SUCCESS\fR.
-.RE
-
-.sp
-.LP
-The following options are interpreted:
-.sp
-.ne 2
-.na
-\fB\fBdebug\fR\fR
-.ad
-.RS 10n
-Provides \fBsyslog\fR(3C) debugging information at the \fBLOG_DEBUG\fR level.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnowarn\fR\fR
-.ad
-.RS 10n
-Disables any warning messages.
-.RE
-
-.SH ERRORS
-.sp
-.LP
-Upon successful completion of \fBpam_sm_setcred()\fR, \fBPAM_SUCCESS\fR is
-returned. The following error codes are returned upon error:
-.sp
-.ne 2
-.na
-\fB\fBPAM_CRED_UNAVAIL\fR\fR
-.ad
-.RS 20n
-Underlying authentication service cannot retrieve user credentials
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_CRED_EXPIRED\fR\fR
-.ad
-.RS 20n
-User credentials have expired
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_USER_UNKNOWN\fR\fR
-.ad
-.RS 20n
-User is unknown to the authentication service
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_CRED_ERR\fR\fR
-.ad
-.RS 20n
-Failure in setting user credentials
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_BUF_ERR\fR\fR
-.ad
-.RS 20n
-Memory buffer error
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_SYSTEM_ERR\fR\fR
-.ad
-.RS 20n
-System error
-.RE
-
-.sp
-.LP
-The following values are returned from \fBpam_sm_authenticate()\fR:
-.sp
-.ne 2
-.na
-\fB\fBPAM_IGNORE\fR\fR
-.ad
-.RS 14n
-Ignores this module regardless of the control flag
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-_
-MT Level MT-Safe with exceptions
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBssh\fR(1), \fBsu\fR(1M), \fBsettaskid\fR(2), \fBlibpam\fR(3LIB),
-\fBgetprojent\fR(3PROJECT), \fBpam\fR(3PAM), \fBpam_set_item\fR(3PAM),
-\fBpam_sm_authenticate\fR(3PAM), \fBsyslog\fR(3C),
-\fBsetproject\fR(3PROJECT), \fBpam.conf\fR(4), \fBnsswitch.conf\fR(4),
-\fBproject\fR(4), \fBattributes\fR(5), \fBpam_authtok_check\fR(5),
-\fBpam_authtok_get\fR(5), \fBpam_authtok_store\fR(5), \fBpam_dhkeys\fR(5),
-\fBpam_passwd_auth\fR(5), \fBpam_unix_auth\fR(5), \fBpam_unix_account\fR(5),
-\fBpam_unix_session\fR(5), \fBprivileges\fR(5)
-.SH NOTES
-.sp
-.LP
-The interfaces in \fBlibpam\fR(3LIB) are MT-Safe only if each thread within the
-multi-threaded application uses its own \fBPAM\fR handle.
-.sp
-.LP
-If this module is replaced, the audit context and credential may not be
-correctly configured.
diff --git a/usr/src/man/man5/pam_unix_session.5 b/usr/src/man/man5/pam_unix_session.5
deleted file mode 100644
index 417ab45de4..0000000000
--- a/usr/src/man/man5/pam_unix_session.5
+++ /dev/null
@@ -1,113 +0,0 @@
-'\" te
-.\" Copyright 2016 Toomas Soome <tsoome@me.com>
-.\" Copyright (C) 2002, Sun Microsystems, Inc.
-.\" All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PAM_UNIX_SESSION 5 "Jan 3, 2016"
-.SH NAME
-pam_unix_session \- session management PAM module for UNIX
-.SH SYNOPSIS
-.LP
-.nf
-\fBpam_unix_session.so.1\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBpam_unix_session\fR module implements \fBpam_sm_open_session\fR(3PAM)
-and \fBpam_sm_close_session\fR(3PAM).
-.sp
-.LP
-\fBpam_sm_open_session()\fR updates the \fB/var/adm/lastlog\fR file with the
-information contained in the \fBPAM_USER\fR, \fBPAM_TTY\fR, and
-\fBPAM_RHOSTS\fR items. \fBpam_unix_account\fR(5) uses this account to
-determine the previous time the user logged in.
-.sp
-.LP
-\fBpam_sm_close_session()\fR is a null function.
-.sp
-.LP
-The following options can be passed to the module:
-.sp
-.ne 2
-.na
-\fBdebug\fR
-.ad
-.RS 9n
-\fBsyslog\fR(3C) debugging information at the \fBLOG_DEBUG\fR level
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnowarn\fR\fR
-.ad
-.RS 9n
-Turn off last login PAM_TEXT_INFO message.
-.RE
-
-.SH ERRORS
-.sp
-.LP
-Upon successful completion, \fBPAM_SUCCESS\fR is returned. The following error
-codes are returned upon error:
-.sp
-.ne 2
-.na
-\fB\fBPAM_SESSION_ERR\fR\fR
-.ad
-.RS 20n
-Cannot make or remove the entry for the specified session (PAM_TTY is not
-present).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPAM_USER_UNKNOWN\fR\fR
-.ad
-.RS 20n
-No account is present for \fIuser\fR.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-_
-MT Level MT-Safe with exceptions
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBpam\fR(3PAM), \fBpam_authenticate\fR(3PAM), \fBsyslog\fR(3C),
-\fBlibpam\fR(3LIB), \fBpam.conf\fR(4), \fBnsswitch.conf\fR(4),
-\fBattributes\fR(5), \fBpam_authtok_check\fR(5), \fBpam_authtok_get\fR(5),
-\fBpam_authtok_store\fR(5), \fBpam_dhkeys\fR(5), \fBpam_passwd_auth\fR(5),
-\fBpam_unix_account\fR(5), \fBpam_unix_auth\fR(5)
-.SH NOTES
-.sp
-.LP
-The interfaces in \fBlibpam\fR(3LIB) are MT-Safe only if each thread within the
-multi-threaded application uses its own PAM handle.
-.sp
-.LP
-The \fBpam_unix\fR(5) module is no longer supported. Similar functionality is
-provided by \fBpam_authtok_check\fR(5), \fBpam_authtok_get\fR(5),
-\fBpam_authtok_store\fR(5), \fBpam_dhkeys\fR(5), \fBpam_passwd_auth\fR(5),
-\fBpam_unix_account\fR(5), \fBpam_unix_auth\fR(5), and
-\fBpam_unix_session\fR(5).
diff --git a/usr/src/man/man5/passwd.5 b/usr/src/man/man5/passwd.5
new file mode 100644
index 0000000000..56cac1b8d5
--- /dev/null
+++ b/usr/src/man/man5/passwd.5
@@ -0,0 +1,368 @@
+'\" te
+.\" Copyright (c) 2013 Gary Mills
+.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PASSWD 5 "Feb 25, 2017"
+.SH NAME
+passwd \- password file
+.SH SYNOPSIS
+.LP
+.nf
+\fB/etc/passwd\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+The file \fB/etc/passwd\fR is a local source of information about users'
+accounts. The password file can be used in conjunction with other naming
+sources, such as the \fBNIS\fR maps \fBpasswd.byname\fR and \fBpasswd.bygid\fR,
+or password data stored on an LDAP
+server. Programs use the \fBgetpwnam\fR(3C) routines to access this
+information.
+.sp
+.LP
+Each \fBpasswd\fR entry is a single line of the form:
+.sp
+.in +2
+.nf
+\fIusername\fR\fB:\fR\fIpassword\fR\fB:\fR\fIuid\fR\fB:\fR
+\fIgid\fR\fB:\fR\fIgcos-field\fR\fB:\fR\fIhome-dir\fR\fB:\fR
+\fIlogin-shell\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+where
+.sp
+.ne 2
+.na
+\fB\fIusername\fR\fR
+.ad
+.RS 15n
+is the user's login name.
+.sp
+The login (\fBlogin\fR) and role (\fBrole\fR) fields accept a string of no more
+than 32 bytes consisting of characters from the set of alphabetic
+characters, numeric characters, period (\fB\&.\fR), underscore (\fB_\fR), and
+hyphen (\fB-\fR). The first character should be alphabetic and the field should
+contain at least one lower case alphabetic character. A warning message is
+displayed if these restrictions are not met.
+.sp
+The \fBlogin\fR and \fBrole\fR fields must contain at least one character and
+must not contain a colon (\fB:\fR) or a newline (\fB\en\fR).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIpassword\fR\fR
+.ad
+.RS 15n
+is an empty field. The encrypted password for the user is in the corresponding
+entry in the \fB/etc/shadow\fR file. \fBpwconv\fR(8) relies on a special value
+of '\fBx\fR' in the password field of \fB/etc/passwd\fR. If this value
+of '\fBx\fR' exists in the password field of \fB/etc/passwd\fR, this indicates
+that the password for the user is already in \fB/etc/shadow\fR and should not
+be modified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIuid\fR\fR
+.ad
+.RS 15n
+is the user's unique numerical \fBID\fR for the system.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIgid\fR\fR
+.ad
+.RS 15n
+is the unique numerical \fBID\fR of the group that the user belongs to.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIgcos-field\fR\fR
+.ad
+.RS 15n
+is the user's real name, along with information to pass along in a mail-message
+heading. (It is called the gcos-field for historical reasons.) An ``\fB&\fR\&''
+(ampersand) in this field stands for the login name (in cases where the login
+name appears in a user's real name).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIhome-dir\fR\fR
+.ad
+.RS 15n
+is the pathname to the directory in which the user is initially positioned upon
+logging in.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIlogin-shell\fR\fR
+.ad
+.RS 15n
+is the user's initial shell program. If this field is empty, the default shell
+is \fB/usr/bin/sh\fR.
+.RE
+
+.sp
+.LP
+The maximum value of the \fIuid\fR and \fIgid\fR fields is \fB2147483647\fR. To
+maximize interoperability and compatibility, administrators are recommended to
+assign users a range of \fBUID\fRs and \fBGID\fRs below \fB60000\fR where
+possible. (\fBUID\fRs from \fB0\fR-\fB99\fR inclusive are reserved by the
+operating system vendor for use in future applications. Their use by end system
+users or vendors of layered products is not supported and may cause security
+related issues with future applications.)
+.sp
+.LP
+The password file is an \fBASCII\fR file that resides in the \fB/etc\fR
+directory. Because the encrypted passwords on a secure system are always kept
+in the \fBshadow\fR file, \fB/etc/passwd\fR has general read permission on all
+systems and can be used by routines that map between numerical user \fBID\fRs
+and user names.
+.sp
+.LP
+Blank lines are treated as malformed entries in the \fBpasswd\fR file and cause
+consumers of the file , such as \fBgetpwnam\fR(3C), to fail.
+.sp
+.LP
+The password file can contain entries beginning with a `+' (plus sign) or '-'
+(minus sign) to selectively incorporate entries from another naming service
+source, such as NIS or LDAP.
+.sp
+.LP
+A line beginning with a '+' means to incorporate entries from the naming
+service source. There are three styles of the '+' entries in this file. A
+single + means to insert all the entries from the alternate naming service
+source at that point, while a +\fIname\fR means to insert the specific entry,
+if one exists, from the naming service source. A +@\fInetgroup\fR means to
+insert the entries for all members of the network group \fInetgroup\fR from the
+alternate naming service. If a +\fIname\fR entry has a non-null \fBpassword\fR,
+\fIgcos\fR, \fIhome-dir\fR, or \fIlogin-shell\fR field, the value of that field
+overrides what is contained in the alternate naming service. The \fIuid\fR and
+\fIgid\fR fields cannot be overridden.
+.sp
+.LP
+A line beginning with a `\(mi' means to disallow entries from the alternate
+naming service. There are two styles of `-` entries in this file. -\fIname\fR
+means to disallow any subsequent entries (if any) for \fIname\fR (in this file
+or in a naming service), and -@\fInetgroup\fR means to disallow any subsequent
+entries for all members of the network group \fInetgroup\fR.
+.sp
+.LP
+This is also supported by specifying ``passwd : compat'' in
+\fBnsswitch.conf\fR(5). The "compat" source might not be supported in future
+releases. The preferred sources are \fBfiles\fR followed by the identifier of a
+name service, such as \fBnis\fR or \fBldap\fR. This has the effect of
+incorporating the entire contents of the naming service's \fBpasswd\fR database
+or password-related information after the \fBpasswd\fR file.
+.sp
+.LP
+Note that in compat mode, for every \fB/etc/passwd\fR entry, there must be a
+corresponding entry in the \fB/etc/shadow\fR file.
+.sp
+.LP
+Appropriate precautions must be taken to lock the \fB/etc/passwd\fR file
+against simultaneous changes if it is to be edited with a text editor;
+\fBvipw\fR(1B) does the necessary locking.
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRSample \fBpasswd\fR File
+.sp
+.LP
+The following is a sample \fBpasswd\fR file:
+
+.sp
+.in +2
+.nf
+root:x:0:1:Super-User:/:/sbin/sh
+fred:6k/7KCFRPNVXg:508:10:& Fredericks:/usr2/fred:/bin/csh
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+and the sample password entry from \fBnsswitch.conf\fR:
+
+.sp
+.in +2
+.nf
+passwd: files ldap
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+In this example, there are specific entries for users \fBroot\fR and \fBfred\fR
+to assure that they can login even when the system is running single-user. In
+addition, anyone whose password information is stored on an LDAP server will be
+able to login with their usual password, shell, and home directory.
+
+.sp
+.LP
+If the password file is:
+
+.sp
+.in +2
+.nf
+root:x:0:1:Super-User:/:/sbin/sh
+fred:6k/7KCFRPNVXg:508:10:& Fredericks:/usr2/fred:/bin/csh
++
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+and the password entry in \fBnsswitch.conf\fR is:
+
+.sp
+.in +2
+.nf
+passwd: compat
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+then all the entries listed in the \fBNIS\fR \fBpasswd.byuid\fR and
+\fBpasswd.byname\fR maps will be effectively incorporated after the entries for
+\fBroot\fR and \fBfred\fR. If the password entry in \fBnsswitch.conf\fR is:
+
+.sp
+.in +2
+.nf
+passwd_compat: ldap
+passwd: compat
+.fi
+.in -2
+
+.sp
+.LP
+then all password-related entries stored on the LDAP server will be
+incorporated after the entries for \fBroot\fR and \fBfred\fR.
+
+.sp
+.LP
+The following is a sample \fBpasswd\fR file when \fBshadow\fR does not exist:
+
+.sp
+.in +2
+.nf
+root:q.mJzTnu8icf.:0:1:Super-User:/:/sbin/sh
+fred:6k/7KCFRPNVXg:508:10:& Fredericks:/usr2/fred:/bin/csh
++john:
++@documentation:no-login:
++::::Guest
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The following is a sample \fBpasswd\fR file when \fBshadow\fR does exist:
+
+.sp
+.in +2
+.nf
+root:##root:0:1:Super-User:/:/sbin/sh
+fred:##fred:508:10:& Fredericks:/usr2/fred:/bin/csh
++john:
++@documentation:no-login:
++::::Guest
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+In this example, there are specific entries for users \fBroot\fR and
+\fBfred\fR, to assure that they can log in even when the system is running
+standalone. The user \fBjohn\fR will have his password entry in the naming
+service source incorporated without change, anyone in the netgroup
+\fBdocumentation\fR will have their password field disabled, and anyone else
+will be able to log in with their usual password, shell, and home directory,
+but with a \fIgcos\fR field of \fBGuest\fR
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/etc/nsswitch.conf\fR\fR
+.ad
+.RS 22n
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/passwd\fR\fR
+.ad
+.RS 22n
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/shadow\fR\fR
+.ad
+.RS 22n
+
+.RE
+
+.SH SEE ALSO
+.LP
+.BR chgrp (1),
+.BR chown (1),
+.BR finger (1),
+.BR groups (1),
+.BR login (1),
+.BR newgrp (1),
+.BR passwd (1),
+.BR sh (1),
+.BR sort (1),
+.BR a64l (3C),
+.BR crypt (3C),
+.BR getpw (3C),
+.BR getpwnam (3C),
+.BR getspnam (3C),
+.BR putpwent (3C),
+.BR unistd.h (3HEAD),
+.BR group (5),
+.BR hosts.equiv (5),
+.BR nsswitch.conf (5),
+.BR shadow (5),
+.BR environ (7),
+.BR domainname (8),
+.BR getent (8),
+.BR passmgmt (8),
+.BR pwck (8),
+.BR pwconv (8),
+.BR su (8),
+.BR useradd (8),
+.BR userdel (8),
+.BR usermod (8)
+.sp
+.LP
+\fISystem Administration Guide: Basic Administration\fR
diff --git a/usr/src/man/man5/path_to_inst.5 b/usr/src/man/man5/path_to_inst.5
new file mode 100644
index 0000000000..a728bdbf1c
--- /dev/null
+++ b/usr/src/man/man5/path_to_inst.5
@@ -0,0 +1,143 @@
+'\" te
+.\" Copyright 1992 Sun Microsystems Inc.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PATH_TO_INST 5 "May 18, 2007"
+.SH NAME
+path_to_inst \- device instance number file
+.SH SYNOPSIS
+.LP
+.nf
+\fB/etc/path_to_inst\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fB/etc/path_to_inst\fR records mappings of physical device names to instance
+numbers.
+.sp
+.LP
+The instance number of a device is encoded in its minor number, and is the way
+that a device driver determines which of the possible devices that it may drive
+is referred to by a given special file.
+.sp
+.LP
+In order to keep instance numbers persistent across reboots, the system records
+them in \fB/etc/path_to_inst\fR.
+.sp
+.LP
+This file is read only at boot time, and is updated by \fBadd_drv\fR(8) and
+\fBdevfsadm\fR(8).
+.sp
+.LP
+Note that it is generally not necessary for the system administrator to change
+this file, as the system will maintain it.
+.sp
+.LP
+The system administrator can change the assignment of instance numbers by
+editing this file and doing a reconfiguration reboot. However, any changes made
+in this file will be lost if \fBadd_drv\fR(8) or \fBdevfsadm\fR(8) is run
+before the system is rebooted.
+.sp
+.LP
+Each instance entry is a single line of the form:
+.sp
+.in +2
+.nf
+\fB"\fR\fIphysical name\fR\fB"\fR \fIinstance\fR \fInumber\fR \fB"\fR\fIdriver binding name\fR\fB"\fR
+.fi
+.in -2
+
+.sp
+.LP
+where
+.sp
+.ne 2
+.na
+\fB\fIphysical\fR \fIname\fR\fR
+.ad
+.RS 23n
+is the absolute physical pathname of a device. This pathname must be enclosed
+in double quotes.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIinstance number\fR\fR
+.ad
+.RS 23n
+is a decimal or hexadecimal number.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIdriver binding name\fR\fR
+.ad
+.RS 23n
+is the name used to determine the driver for the device. This name may be a
+driver alias or a driver name. The driver binding name must be enclosed in
+double quotes.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRSample \fBpath_to_inst\fR Entries
+.sp
+.LP
+Here are some sample \fBpath_to_inst\fR entries:
+
+.sp
+.in +2
+.nf
+"/iommu@f,e0000000" 0 "iommu"
+"/iommu@f,e0000000/sbus@f,e0001000" 0 "sbus"
+"/iommu@f,e0000000/sbus@f,e0001000/sbusmem@e,0" 14 "sbusmem"
+"/iommu@f,e0000000/sbus@f,e0001000/sbusmem@f,0" 15 "sbusmem"
+"/iommu@f,e0000000/sbus@f,e0001000/ledma@f,400010" 0 "ledma"
+"/obio/serial@0,100000" 0 "zs"
+"/SUNW,sx@f,80000000" 0 "SUNW,sx"
+.fi
+.in -2
+.sp
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/path_to_inst\fR\fR
+.ad
+.RS 21n
+Mapping of physical device names to instance numbers.
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR add_drv (8),
+.BR boot (8),
+.BR devfsadm (8),
+.BR mknod (8)
+.SH WARNINGS
+.sp
+.LP
+If the file is removed the system may not be bootable (as it may rely on
+information found in this file to find the root, usr or swap device). If it
+does successfully boot, it will regenerate the file, but after rebooting
+devices may end up having different minor numbers than they did before, and
+special files created via \fBmknod\fR(8) may refer to different devices than
+expected.
+.sp
+.LP
+For the same reasons, changes should not be made to this file without careful
+consideration.
+.SH NOTES
+.sp
+.LP
+This document does not constitute an API. \fBpath_to_inst\fR may not exist or
+may have a different content or interpretation in a future release. The
+existence of this notice does not imply that any other documentation that lacks
+this notice constitutes an API.
diff --git a/usr/src/man/man5/pci.5 b/usr/src/man/man5/pci.5
new file mode 100644
index 0000000000..992fbeac40
--- /dev/null
+++ b/usr/src/man/man5/pci.5
@@ -0,0 +1,274 @@
+'\" te
+.\" Copyright (c) 2005 Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PCI 5 "May 13, 2017"
+.SH NAME
+pci, pcie \- configuration files for PCI and PCI Express device drivers
+.SH DESCRIPTION
+.LP
+The Peripheral Component Interconnect (PCI) bus is a little endian bus. PCI
+Express (PCIe) and PCI-X are successors to PCI. All three types of devices
+share the same configuration parameters. What is specified here for PCI devices
+applies to PCI-X 1.0 devices as well. All three types of devices are
+self-identifying, which means that these devices provide configuration
+parameters to the system that allow the system to identify the device and its
+driver. The configuration parameters are represented in the form of name-value
+pairs that can be retrieved using the \fBDDI\fR property interfaces. See
+\fBddi_prop_lookup\fR(9F) for details.
+.sp
+.LP
+The bus properties of PCI devices or logical bus properties of PCIe devices are
+derived from PCI configuration space, or supplied by the Fcode \fBPROM\fR, if
+it exists. Therefore, driver configuration files are not necessary for these
+devices.
+.sp
+.LP
+On some occasions, drivers for \fBPCI\fR and PCIe devices can use driver
+configuration files to provide driver private properties through the global
+property mechanism. See \fBdriver.conf\fR(5) for further details. Driver
+configuration files can also be used to augment or override properties for a
+specific instance of a driver.
+.sp
+.LP
+All bus drivers of PCI and PCIe devices recognize the following properties:
+.sp
+.ne 2
+.na
+\fB\fBreg\fR\fR
+.ad
+.RS 14n
+An arbitrary length array where each element of the array consists of a 5-tuple
+of 32-bit values. Each array element describes a logically contiguous mappable
+resource on the \fBPCI\fR bus or PCIe device tree.
+.sp
+The first three values in the 5-tuple describe the \fBPCI\fR address of the
+mappable resource. The first tuple contains the following information:
+.sp
+
+.sp
+.TS
+l l l
+l l l .
+Bits 0 - 7 8-bit register number
+Bits 8 - 10 3-bit function number
+Bits 11 - 15 5-bit device number
+Bits 16 - 23 8-bit bus number
+Bits 24 - 25 2-bit address space type identifier
+Bits 31 - 28 T{
+Register number extended bits 8:11 for extended config space. Zero for conventional configuration space.
+T}
+.TE
+
+The address space type identifier can be interpreted as follows:
+.sp
+
+.sp
+.TS
+l l l
+l l l .
+0x0 configuration space
+0x1 I/O space
+0x2 32-bit memory space address
+0x3 64-bit memory space address
+.TE
+
+The bus number is a unique identifying number assigned to each \fBPCI\fR bus or
+PCIe logical bus within its domain.
+.sp
+The device number is a unique identifying number assigned to each device on a
+\fBPCI\fR bus or PCIe logical bus. Note that a device number is unique only
+within the set of device numbers for a particular bus or logical bus.
+.sp
+Each \fBPCI\fR or PCIe device can have one to eight logically independent
+functions, each with its own independent set of configuration registers. Each
+function on a device is assigned a function number. For a device with only one
+function, the function number must be \fB0\fR.
+.sp
+The register number fields select a particular register within the set of
+configuration registers corresponding to the selected function. When the
+address space type identifier indicates configuration space, non-zero register
+number extended bits select registers in extended configuration space.
+.sp
+The second and third values in the \fBreg\fR property 5-tuple specify the
+64-bit address of the mappable resource within the \fBPCI\fR or PCIe address
+domain. The second 32-bit tuple corresponds to the high order four bytes of the
+64-bit address. The third 32-bit tuple corresponds to the low order bytes.
+.sp
+The fourth and fifth 32-bit values in the 5-tuple \fBreg\fR property specify
+the size of the mappable resource. The size is a 64-bit value, where the fourth
+tuple corresponds to the high order bytes of the 64-bit size and the fifth
+corresponds to the low order.
+.sp
+The driver can refer to the elements of this array by index, and construct
+kernel mappings to these addresses using \fBddi_regs_map_setup\fR(9F). The
+index into the array is passed as the \fIrnumber\fR argument of
+\fBddi_regs_map_setup\fR(9F).
+.sp
+At a high-level interrupt context, you can use the \fBddi_get*\fR and
+\fBddi_put*\fR family of functions to access I/O and memory space. However,
+access to configuration space is not allowed when running at a high-interrupt
+level.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBinterrupts\fR\fR
+.ad
+.RS 14n
+This property consists of a single-integer element array. Valid interrupt
+property values are \fB1\fR, \fB2\fR, \fB3\fR, and \fB4\fR. This value is
+derived directly from the contents of the device's configuration-interrupt-pin
+register.
+.sp
+A driver should use an index value of \fB0\fR when registering its interrupt
+handler with the DDI interrupt interfaces.
+.RE
+
+.sp
+.LP
+All \fBPCI\fR and PCIe devices support the \fBreg\fR property. The device
+number and function number as derived from the \fBreg\fR property are used to
+construct the address part of the device name under \fB/devices\fR.
+.sp
+.LP
+Only devices that generate interrupts support an \fBinterrupts\fR property.
+.sp
+.LP
+Occasionally it might be necessary to override or augment the configuration
+information supplied by a \fBPCI\fR or PCIe device. This change can be achieved
+by writing a driver configuration file that describes a prototype device node
+specification containing the additional properties required.
+.sp
+.LP
+For the system to merge the prototype node specification into an actual device
+node, certain conditions must be met.
+.RS +4
+.TP
+.ie t \(bu
+.el o
+First, the \fBname\fR property must be identical. The value of the \fBname\fR
+property needs to match the binding name of the device. The binding name is the
+name chosen by the system to bind a driver to a device and is either an alias
+associated with the driver or the hardware node name of the device.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Second, the parent property must identify the PCI bus or PCIe logical bus.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Third, the unit-address property must identify the card. The format of the
+unit-address property is:
+.RE
+.sp
+.LP
+\fBDD[,F]\fR
+.sp
+.LP
+where \fBDD\fR is the device number and \fBF\fR is the function number. If the
+function number is 0, only \fBDD\fR is specified.
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRSample Configuration File
+.sp
+.LP
+An example configuration file called \fBACME,scsi-hba.conf\fR for a \fBPCI\fR
+driver called \fBACME,scsi-hba\fR follows:
+
+.sp
+.in +2
+.nf
+#
+# Copyright (c) 1995, ACME SCSI Host Bus Adaptor
+# ident "@(#)ACME,scsi-hba.conf 1.1 96/02/04"
+name="ACME,scsi-hba" parent="/pci@1,0/pci@1f,4000"
+ unit-address="3" scsi-initiator-id=6;
+hba-advanced-mode="on";
+hba-dma-speed=10;
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+In this example, a property \fBscsi-initiator-id\fR specifies the \fBSCSI\fR
+bus initiator id that the adapter should use, for just one particular instance
+of adapter installed in the machine. The \fBname\fR property identifies the
+driver and the parent property to identify the particular bus the card is
+plugged into. This example uses the parent's full path name to identify the
+bus. The unit-address property identifies the card itself, with device number
+of 3 and function number of 0.
+
+.sp
+.LP
+Two global driver properties are also created: \fBhba-advanced-mode\fR (which
+has the string value \fBon\fR) and \fBhba-dma-speed\fR (which has the value
+\fB10\fR M bit/s). These properties apply to all device nodes of the
+\fBACME,scsi-hba\fR.
+
+.sp
+.LP
+Configuration files for PCIe devices are similar. Shown below is an example
+configuration file called \fBACME,pcie-widget.conf\fR for a PCIe driver called
+\fBACME,pcie-widget\fR.
+
+.sp
+.in +2
+.nf
+#
+# Copyright (c) 2005, ACME PCIe Widget Adapter
+# ident "@(#)ACME,pcie-widget.conf 1.1 05/11/14"
+name="ACME,pcie-widget" parent="/pci@780" unit-address="2,1"
+debug-mode=12;
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+In this example, we provide a property \fBdebug-mode\fR for a particular PCIe
+device. As before, the logical bus is identified by the pathname of the parent
+of the device. The device has a device number of 2, and a function number of 1.
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture SPARC, x86
+.TE
+
+.SH SEE ALSO
+.LP
+.BR driver.conf (5),
+.BR attributes (7),
+.BR ddi_intr_add_handler (9F),
+.BR ddi_prop_lookup (9F),
+.BR ddi_regs_map_setup (9F)
+.sp
+.LP
+\fIWriting Device Drivers\fR
+.sp
+.LP
+\fIIEEE 1275 PCI Bus Binding\fR
+.SH NOTES
+.LP
+PCIe devices support an extended configuration space unavailable to PCI
+devices. While PCIe devices can be operated using a PCI device driver,
+operating them using a PCIe device driver can make use of the extended
+properties and features made available only in the extended configuration
+space.
diff --git a/usr/src/man/man5/phones.5 b/usr/src/man/man5/phones.5
new file mode 100644
index 0000000000..ab24f4aeeb
--- /dev/null
+++ b/usr/src/man/man5/phones.5
@@ -0,0 +1,60 @@
+'\" te
+.\" Copyright (c) 1992, Sun Microsystems, Inc.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PHONES 5 "Jan 14, 1992"
+.SH NAME
+phones \- remote host phone number database
+.SH SYNOPSIS
+.LP
+.nf
+\fB/etc/phones\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The file \fB/etc/phones\fR contains the system-wide private phone numbers for
+the \fBtip\fR(1) program. \fB/etc/phones\fR is normally unreadable, and so may
+contain privileged information. The format of \fB/etc/phones\fR is a series of
+lines of the form:
+.sp
+.in +2
+.nf
+\fB<\fR\fIsystem-name\fR\fB>[ \et]*<\fR\fIphone-number\fR\fB>.\fR
+.fi
+.in -2
+
+.sp
+.LP
+The system name is one of those defined in the \fBremote\fR(5) file and the
+phone number is constructed from \fB[0123456789\(mi=*%]\fR. The `\fB=\fR' and
+`\fB*\fR' characters are indicators to the auto call units to pause and wait
+for a second dial tone (when going through an exchange). The `\fB=\fR' is
+required by the \fBDF02-AC\fR and the `\fB*\fR' is required by the
+\fBBIZCOMP\fR 1030.
+.sp
+.LP
+Comment lines are lines containing a `\fB#\fR' sign in the first column of the
+line.
+.sp
+.LP
+Only one phone number per line is permitted. However, if more than one line in
+the file contains the same system name \fBtip\fR(1) will attempt to dial each
+one in turn, until it establishes a connection.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/phones\fR\fR
+.ad
+.RS 15n
+
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR tip (1),
+.BR remote (5)
diff --git a/usr/src/man/man5/pkcs11_kernel.5 b/usr/src/man/man5/pkcs11_kernel.5
deleted file mode 100644
index 79fb4b6b65..0000000000
--- a/usr/src/man/man5/pkcs11_kernel.5
+++ /dev/null
@@ -1,111 +0,0 @@
-'\" te
-.\" Copyright (c) 2005, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PKCS11_KERNEL 5 "Oct 27, 2005"
-.SH NAME
-pkcs11_kernel \- PKCS#11 interface to Kernel Cryptographic Framework
-.SH SYNOPSIS
-.LP
-.nf
-/usr/lib/security/pkcs11_kernel.so
-/usr/lib/security/64/pkcs11_kernel.so
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBpkcs11_kernel.so\fR object implements the RSA PKCS#11 v2.20
-specification by using a private interface to communicate with the Kernel
-Cryptographic Framework.
-.sp
-.LP
-Each unique hardware provider is represented by a PKCS#11 slot. In a system
-with no hardware Kernel Cryptographic Framework providers, this PKCS#11 library
-presents no slots.
-.sp
-.LP
-The PKCS#11 mechanisms provided by this library is determined by the available
-hardware providers.
-.sp
-.LP
-Application developers should link to \fBlibpkcs11.so\fR rather than link
-directly to \fBpkcs11_kernel.so\fR. See \fBlibpkcs11\fR(3LIB).
-.sp
-.LP
-All of the Standard PKCS#11 functions listed on \fBlibpkcs11\fR(3LIB) are
-implemented except for the following:
-.sp
-.in +2
-.nf
-C_DecryptDigestUpdate
-C_DecryptVerifyUpdate
-C_DigestEncryptUpdate
-C_GetOperationState
-C_InitToken
-C_InitPIN
-C_SetOperationState
-C_SignEncryptUpdate
-C_WaitForSlotEvent
-.fi
-.in -2
-
-.sp
-.LP
-A call to these functions returns \fBCKR_FUNCTION_NOT_SUPPORTED\fR.
-.sp
-.LP
-Buffers cannot be greater than 2 megabytes. For example, \fBC_Encrypt()\fR can
-be called with a 2 megabyte buffer of plaintext and a 2 megabyte buffer for the
-ciphertext.
-.sp
-.LP
-The maximum number of object handles that can be returned by a call to
-\fBC_FindObjects()\fR is 512.
-.sp
-.LP
-The maximum amount of kernel memory that can be used for crypto operations is
-limited by the \fBproject.max-crypto-memory\fR resource control. Allocations in
-the kernel for buffers and session-related structures are charged against this
-resource control.
-.SH RETURN VALUES
-.sp
-.LP
-The return values of each of the implemented functions are defined and listed
-in the RSA PKCS#11 v2.20 specification. See http://www.rsasecurity.com.
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for a description of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Standard: PKCS#11 v2.20
-_
-MT-Level T{
-MT-Safe with exceptions. See section 6.5.2 of RSA PKCS#11 v2.20
-T}
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBcryptoadm\fR(1M), \fBrctladm\fR(1M), \fBlibpkcs11\fR(3LIB),
-\fBattributes\fR(5), \fBpkcs11_softtoken\fR(5)
-.sp
-.LP
-RSA PKCS#11 v2.20 http://www.rsasecurity.com
-.SH NOTES
-.sp
-.LP
-Applications that have an open session to a PKCS#11 slot make the corresponding
-hardware provider driver not unloadable. An administrator must close the
-applications that have an PKCS#11 session open to the hardware provider to make
-the driver unloadable.
diff --git a/usr/src/man/man5/pkcs11_softtoken.5 b/usr/src/man/man5/pkcs11_softtoken.5
deleted file mode 100644
index a96482554c..0000000000
--- a/usr/src/man/man5/pkcs11_softtoken.5
+++ /dev/null
@@ -1,280 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PKCS11_SOFTTOKEN 5 "Mar 25, 2008"
-.SH NAME
-pkcs11_softtoken \- Software RSA PKCS#11 softtoken
-.SH SYNOPSIS
-.LP
-.nf
-/usr/lib/security/pkcs11_softtoken.so
-/usr/lib/security/64/pkcs11_softtoken.so
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBpkcs11_softtoken.so\fR object implements the RSA PKCS#11 v2.20
-specification in software. Persistent storage for "token" objects is provided
-by this PKCS#11 implementation.
-.sp
-.LP
-Application developers should link to \fBlibpkcs11.so\fR rather than link
-directly to \fBpkcs11_softtoken.so\fR. See \fBlibpkcs11\fR(3LIB).
-.sp
-.LP
-The following cryptographic algorithms are implemented: DES, 3DES, AES,
-Blowfish, RC4, MD5, SHA1, SHA256, SHA384, SHA512, RSA, DSA, DH, and ECC.
-.sp
-.LP
-All of the Standard PKCS#11 functions listed on \fBlibpkcs11\fR(3LIB) are
-implemented except for the following:
-.sp
-.in +2
-.nf
-C_GetObjectSize
-C_InitPIN
-C_InitToken
-C_WaitForSlotEvent
-.fi
-.in -2
-
-.sp
-.LP
-A call to these functions returns \fBCKR_FUNCTION_NOT_SUPPORTED\fR.
-.sp
-.LP
-The following RSA PKCS#11 v2.20 mechanisms are supported:
-.sp
-.in +2
-.nf
-CKM_RSA_PKCS_KEY_PAIR_GEN
-CKM_RSA_PKCS
-CKM_RSA_X_509
-
-CKM_DSA_KEY_PAIR_GEN
-CKM_DSA
-CKM_DSA_SHA1
-
-CKM_DH_PKCS_KEY_PAIR_GEN
-CKM_DH_PKCS_DERIVE
-
-CKM_EC_KEY_PAIR_GEN
-CKM_ECDSA
-CKM_ECDSA_SHA1
-CKM_ECDH1_DERIVE
-
-CKM_DES_KEY_GEN
-CKM_DES_ECB
-CKM_DES_CBC
-CKM_DES_CBC_PAD
-
-CKM_DES3_KEY_GEN
-CKM_DES3_ECB
-CKM_DES3_CBC
-CKM_DES3_CBC_PAD
-
-CKM_AES_KEY_GEN
-CKM_AES_ECB
-CKM_AES_CBC
-CKM_AES_CBC_PAD
-CKM_AES_CTR
-
-CKM_BLOWFISH_KEY_GEN
-CKM_BLOWFISH_CBC
-
-CKM_RC4_KEY_GEN
-CKM_RC4
-
-CKM_MD5_RSA_PKCS
-CKM_SHA1_RSA_PKCS
-CKM_SHA256_RSA_PKCS
-CKM_SHA384_RSA_PKCS
-CKM_SHA512_RSA_PKCS
-
-CKM_MD5
-CKM_SHA_1
-CKM_SHA256
-CKM_SHA384
-CKM_SHA512
-
-CKM_MD5_HMAC
-CKM_MD5_HMAC_GENERAL
-CKM_SHA_1_HMAC
-CKM_SHA_1_HMAC_GENERAL
-CKM_SHA256_HMAC
-CKM_SHA256_HMAC_GENERAL
-CKM_SHA384_HMAC
-CKM_SHA384_HMAC_GENERAL
-
-CKM_MD5_KEY_DERIVATION
-CKM_SHA1_KEY_DERIVATION
-CKM_SHA256_KEY_DERIVATION
-CKM_SHA384_KEY_DERIVATION
-CKM_SHA512_KEY_DERIVATION
-
-CKM_SSL3_PRE_MASTER_KEY_GEN
-CKM_SSL3_MASTER_KEY_DERIVE
-CKM_SSL3_KEY_AND_MAC_DERIVE
-CKM_SSL3_MASTER_KEY_DERIVE_DH
-CKM_TLS_PRE_MASTER_KEY_GEN
-CKM_TLS_MASTER_KEY_DERIVE
-CKM_TLS_KEY_AND_MAC_DERIVE
-CKM_TLS_MASTER_KEY_DERIVE_DH
-.fi
-.in -2
-
-.sp
-.LP
-Each of the following types of key objects has certain token-specific
-attributes that are set to true by default as a result of object creation,
-key/key pair generation, and key derivation.
-.sp
-.ne 2
-.na
-\fBPublic key object\fR
-.ad
-.RS 22n
-\fBCKA_ENCRYPT\fR, \fBCKA_VERIFY\fR, \fBCKA_VERIFY_RECOVER\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fBPrivate key object\fR
-.ad
-.RS 22n
-\fBCKA_DECRYPT\fR, \fBCKA_SIGN\fR, \fBCKA_SIGN_RECOVER\fR,
-\fBCKA_EXTRACTABLE\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fBSecret key object\fR
-.ad
-.RS 22n
-\fBCKA_ENCRYPT\fR, \fBCKA_DECRYPT\fR, \fBCKA_SIGN\fR, \fBCKA_VERIFY\fR,
-\fBCKA_EXTRACTABLE\fR
-.RE
-
-.sp
-.LP
-The following certificate objects are supported:
-.sp
-.ne 2
-.na
-\fB\fBCKC_X_509\fR\fR
-.ad
-.RS 23n
-For \fBCKC_X_509\fR certificate objects, the following attributes are
-supported: \fBCKA_SUBJECT\fR, \fBCKA_VALUE\fR, \fBCKA_LABEL\fR, \fBCKA_ID\fR,
-\fBCKA_ISSUER\fR, \fBCKA_SERIAL_NUMBER\fR, and \fBCKA_CERTIFICATE_TYPE\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBCKC_X_509_ATTR_CERT\fR\fR
-.ad
-.RS 23n
-For \fBCKC_X_509_ATTR_CERT\fR certificate objects, the following attributes are
-supported: \fBCKA_OWNER\fR, \fBCKA_VALUE, CKA_LABEL\fR,
-\fBCKA_SERIAL_NUMBER\fR, \fBCKA_AC_ISSUER\fR, \fBCKA_ATTR_TYPES\fR, and
-\fBCKA_CERTIFICATE_TYPE\fR.
-.RE
-
-.sp
-.LP
-The search operation of objects matching the template is performed at
-\fBC_FindObjectsInit\fR. The matched objects are cached for subsequent
-\fBC_FindObjects\fR operations.
-.sp
-.LP
-The \fBpkcs11_softtoken.so\fR object provides a filesystem-based persistent
-token object store for storing token objects. The default location of the token
-object store is the user's home directory returned by \fBgetpwuid_r()\fR. The
-user can override the default location by using the \fB${SOFTTOKEN_DIR}\fR
-environment variable.
-.sp
-.LP
-If the token object store has never been initialized, the \fBC_Login()\fR
-function might return \fBCKR_OK\fR but the user will not be able to create,
-generate, derive or find any private token object and receives
-\fBCKR_PIN_EXPIRED\fR.
-.sp
-.LP
-The user must use the \fBpktool\fR(1) \fBsetpin\fR command with the default
-passphrase "changeme" as the old passphrase to change the passphrase of the
-object store. This action is needed to initialize and set the passphrase to a
-newly created token object store.
-.sp
-.LP
-After logging into object store with the new passphrase that was set by the
-\fBpktool setpin\fR command, the user can create and store the private token
-object in this newly created object store. Until the token object store is
-initialized by \fBsetpin\fR, the \fBC_Login()\fR function is allowed, but all
-attempts by the user to create, generate, derive or find any private token
-object fails with a \fBCKR_PIN_EXPIRED\fR error.
-.sp
-.LP
-The PIN provided for \fBC_Login()\fR and \fBC_SetPIN()\fR functions can be any
-string of characters with lengths between 1 and 256 and no embedded nulls.
-.SH RETURN VALUES
-.sp
-.LP
-The return values for each of the implemented functions are defined and listed
-in the RSA PKCS#11 v2.20 specification. See http://www.rsasecurity.com
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB\fIuser_home_directory\fR/.sunw/pkcs11_softtoken\fR\fR
-.ad
-.sp .6
-.RS 4n
-user's default token object store
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB${SOFTTOKEN_DIR}/pkcs11_softtoken\fR\fR
-.ad
-.sp .6
-.RS 4n
-alternate token object store
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for a description of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Committed
-_
-MT-Level T{
-MT-Safe with exceptions. See section 6.5.2 of RSA PKCS#11 v2.20.
-T}
-_
-Standard PKCS#11 v2.20
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBpktool\fR(1), \fBcryptoadm\fR(1M), \fBlibpkcs11\fR(3LIB),
-\fBattributes\fR(5), \fBpkcs11_kernel\fR(5)
-.sp
-.LP
-RSA PKCS#11 v2.20 http://www.rsasecurity.com
diff --git a/usr/src/man/man5/pkcs11_tpm.5 b/usr/src/man/man5/pkcs11_tpm.5
deleted file mode 100644
index 22de6e14a4..0000000000
--- a/usr/src/man/man5/pkcs11_tpm.5
+++ /dev/null
@@ -1,273 +0,0 @@
-'\" te
-.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
-.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PKCS11_TPM 5 "May 13, 2017"
-.SH NAME
-pkcs11_tpm \- RSA PKCS#11 token for Trusted Platform Modules (TPM)
-.SH SYNOPSIS
-.LP
-.nf
-/usr/lib/security/pkcs11_tpm.so
-.fi
-
-.LP
-.nf
-/usr/lib/security/64/pkcs11_tpm.so
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBpkcs11_tpm.so\fR object implements the RSA PKCS#11 v2.20 specification
-using Trusted Computing Group protocols to talk to a TPM security device. This
-provider implements the PKCS#11 specification and uses the TCG Software Stack
-(TSS) APIs in the \fBtrousers\fR package.
-.sp
-.LP
-Application developers should link to \fBlibpkcs11.so.1\fR rather than link
-directly with \fBpkcs11_tpm.so\fR. See \fBlibpkcs11\fR(3LIB).
-.sp
-.LP
-The following cryptographic algorithms are implemented: \fBRSA\fR, \fBSHA1\fR,
-and \fBMD5\fR.
-.sp
-.LP
-All of the standard PKCS#11 functions listed in \fBlibpkcs11\fR(3LIB) are
-implemented except for the following:
-.sp
-.in +2
-.nf
-C_EncryptUpdate
-C_EncryptFinal
-C_DecryptUpdate
-C_DecryptFinal
-C_DigestEncryptUpdate
-C_DecryptDigestUpdate
-C_SignEncryptUpdate
-C_DecryptVerifyUpdate
-C_GetFunctionStatus
-C_CancelFunction
-C_WaitForSlotEvent
-C_GenerateKey
-C_DeriveKey
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The following RSA PKCS#11 v2.20 mechanisms are supported:
-.sp
-.in +2
-.nf
-CKM_RSA_PKCS_KEY_PAIR_GEN
-CKM_RSA_PKCS
-CKM_RSA_PKCS_OAEP
-CKM_RSA_X_509
-CKM_MD5_RSA_PKCS
-CKM_SHA1_RSA_PKCS
-CKM_SHA_1
-CKM_SHA_1_HMAC
-CKM_SHA_1_HMAC_GENERAL
-CKM_MD5
-CKM_MD5_HMAC
-CKM_MD5_HMAC_GENERAL
-.fi
-.in -2
-.sp
-
-.SS "Per-User Initialization"
-.LP
-The \fBpkcs11_tpm\fR provider can only be used on a system which has a TPM
-device and which also has the \fBtrousers\fR package installed. If those
-prerequisites are met, users can create their own private tokens using
-\fBpktool\fR(1), which will allow them to perform operations using the TPM
-device and protect their private data with TPM-protected keys.
-.sp
-.LP
-To prepare and initialize a user's TPM token, the following steps must be
-performed:
-.RS +4
-.TP
-1.
-Initialize the token.
-.RE
-.RS +4
-.TP
-2.
-Set the SO (security officer) PIN.
-.RE
-.RS +4
-.TP
-3.
-Set the user's unique PIN.
-.RE
-.sp
-.LP
-Initializing the token is done using the \fBpktool\fR(1) command as follows:
-.sp
-.in +2
-.nf
-$ \fBpktool inittoken currlabel=TPM newlabel=tpm/myname\fR
-.fi
-.in -2
-.sp
-
-.RS +4
-.TP
-.ie t \(bu
-.el o
-By default, an uninitialized TPM is recognized by the name \fBTPM\fR. When a
-user initializes their own private token, it can either be renamed to something
-else (for example, \fBtpm/joeuser\fR) or kept as \fBTPM\fR (in which case the
-\fBnewlabel\fR argument would be omitted).
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The user will have to supply the default SO PIN before being able to initialize
-his or her token. The default SO PIN is \fB87654321\fR. It is changed in step
-2, above.
-.RE
-.sp
-.LP
-Once the token is initialized, the SO and user PINs must be changed from the
-default values. Again, \fBpktool\fR(1) is used to change these PIN values.
-.sp
-.LP
-Changing the SO PIN:
-.sp
-.in +2
-.nf
-$ \fBpktool setpin token=tpm/joeuser so\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The \fBso\fR option indicates that this "setpin" operation is to change the SO
-PIN and must be present. The user must then enter the default SO PIN
-(\fB87654321\fR) and then enter (and confirm) a new PIN.
-.sp
-.LP
-Once the SO PIN is reset from the default, the user's unique PIN must also be
-changed.
-.sp
-.LP
-Changing the user's PIN:
-.sp
-.in +2
-.nf
-$ \fBpktool setpin token=tmp/joeuser\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The default PIN for a non-SO user is \fB12345678\fR. The user must enter the
-default PIN and then enter (and confirm) a new, unique PIN.
-.sp
-.LP
-The PIN provided for the \fBpktool\fR \fBsetpin\fR operation or by calling
-\fBC_Login()\fR and \fBC_SetPIN()\fR functions can be any string of characters
-with a length between 1 and 256 and no embedded nulls.
-.SS "Accessing the Token"
-.LP
-After a user initializes their token, they can begin using it with
-\fBpktool\fR(1) or by writing PKCS11 applications and locating the token using
-the name created above (\fBtpm/joeuser\fR in the examples above).
-.sp
-.LP
-Examples:
-.sp
-.in +2
-.nf
-$ \fBpktool gencert token=tpm/joeuser -i\fR
-$ \fBpktool list token=tpm/joeuser\fR
-.fi
-.in -2
-.sp
-
-.SS "Notes"
-.LP
-\fBpkcs11_tpm.so\fR provides object storage in a filesystem-specific token
-object storage area. Private objects are protected by encryption with private
-keys and can only be decrypted by loading the token's private key into the TPM
-and performing the decryption entirely in the TPM. The user's private key is
-generated by the TPM when the user sets their personal PIN (see above). The
-keys for both the SO and users are stored in the TSS persistent storage
-database and are referenced by a unique UUID value. All user tokens have a
-unique SO key and unique user key so that the PINs for one user's token will
-not unlock private data in another user's token on the same machine.
-.sp
-.LP
-Each TPM is unique and the token keys created on one TPM may not be used on
-another TPM. The \fBpkcs11_tpm.so\fR token data is all managed on the system
-where the TPM resides and may not be moved to other systems. If the TPM is
-reset and the SRK (Storage Root Key) is changed, all of the keys previously
-generated for that TPM will no longer be valid.
-.sp
-.LP
-\fBpkcs11_tpm.so\fR creates a private workspace to manage administrative files
-for each token created. By default, this area is created as
-\fB/var/tpm/pkcs11/$USERNAME\fR. However, users may override this by setting
-the \fBPKCS11_TPM_DIR\fR environment variable prior to initializing or using
-the token.
-.SH RETURN VALUES
-.LP
-The return values for each of the implemented functions are defined and listed
-in the RSA PKCS#11 v2.20 specification. See \fBhttp://www.rsasecurity.com\fR.
-.SH FILES
-.ne 2
-.na
-\fB\fB/var/tpm/pkcs11/USERNAME\fR\fR
-.ad
-.sp .6
-.RS 4n
-User's default token object store.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB${PKCS11_TPM_DIR}\fR\fR
-.ad
-.sp .6
-.RS 4n
-Alternate token object store.
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Committed
-_
-MT-Level MT-Safe with Exceptions (see below)
-_
-Standard PKCS#11 v2.20
-.TE
-
-.sp
-.LP
-Exceptions to MT-Safe attribute are documented in section 6.5.2 of RSA PKCS#11
-v2.20.
-.SH SEE ALSO
-.LP
-\fBpktool\fR(1), \fBcryptoadm\fR(1M), \fBlibpkcs11\fR(3LIB),
-\fBattributes\fR(5)
-.sp
-.LP
-TCG Software Stack (TSS) Specifications: \fBhttps://www.trustedcomputinggroup.org/specs/TSS\fR (as of the date of publication)
diff --git a/usr/src/man/man5/pkginfo.5 b/usr/src/man/man5/pkginfo.5
new file mode 100644
index 0000000000..01a6f75216
--- /dev/null
+++ b/usr/src/man/man5/pkginfo.5
@@ -0,0 +1,754 @@
+'\" te
+.\" Copyright 2017 Peter Tribble
+.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PKGINFO 5 "Nov 26, 2017"
+.SH NAME
+pkginfo \- package characteristics file
+.SH DESCRIPTION
+.LP
+\fBpkginfo\fR is an \fBASCII\fR file that describes the characteristics of the
+package along with information that helps control the flow of installation. It
+is created by the software package developer.
+.sp
+.LP
+Each entry in the \fBpkginfo\fR file is a line that establishes the value of a
+parameter in the following form:
+.sp
+.in +2
+.nf
+PARAM="\fIvalue\fR"
+.fi
+.in -2
+
+.sp
+.LP
+There is no required order in which the parameters must be specified within the
+file. The \fBPKG\fR, \fBNAME\fR, \fBARCH\fR, \fBVERSION\fR and \fBCATEGORY\fR
+parameters are mandatory. Other parameters are optional.
+.sp
+.LP
+\fBpkginfo\fR provides optional parameters and an environment variable in
+support of the zones (multiple Solaris environments) feature. See
+\fBzones\fR(7).
+.sp
+.LP
+The following parameters are mandatory:
+.sp
+.ne 2
+.na
+\fB\fBARCH\fR\fR
+.ad
+.sp .6
+.RS 4n
+A comma-separated list of alphanumeric tokens that indicate the architecture
+associated with the package. The \fBpkgmk\fR(1) tool can be used to create or
+modify this value when actually building the package. The maximum length of a
+token is 16 characters and it cannot include a comma.
+.sp
+Solaris's installation software meaningfully uses only one architecture token
+of the form:
+.sp
+.in +2
+.nf
+<\fIinstruction_set_architecture\fR>[.<\fIplatform_group\fR>]
+.fi
+.in -2
+
+where \fIplatform_group\fR is intended only for Solaris installation packages.
+Third party application software should restrict itself to \fBARCH\fR values
+from the following Solaris-supported instruction set architectures (\fBuname
+-p\fR): \fBsparc\fR, \fBi386\fR, and \fBppc\fR. Examples of Solaris' platform
+groups (\fBuname -m\fR) are \fBsun4u\fR for the \fBSPARC\fR instruction set and
+\fBi86pc\fR for the i386 instruction set. See \fBuname\fR(1) and
+\fBisalist\fR(1) for more details.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBCATEGORY\fR\fR
+.ad
+.sp .6
+.RS 4n
+A comma-separated list of categories under which a package can be displayed. A
+package must at least belong to the system or application category. Categories
+are case-insensitive and can contain only alphanumerics. Each category is
+limited in length to 16 characters.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBNAME\fR\fR
+.ad
+.sp .6
+.RS 4n
+Text that specifies the package name (maximum length of 256 \fBASCII\fR
+characters). Use the \fBNAME\fR parameter as the foundation for describing the
+functionality and purpose of the package; spell out any acronyms and avoid
+internal product/project code names. The \fBDESC\fR parameter can then be used
+to expand the descriptive information. Use the \fBNAME\fR parameter to state as
+specifically as possible the use of the package, why a user would need to load
+it, and so on.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPKG\fR\fR
+.ad
+.sp .6
+.RS 4n
+Abbreviation for the package being installed. All characters in the
+abbreviation must be alphanumeric. You can also use the \fB\(mi\fR and \fB+\fR
+characters in the abbreviation. The first character cannot be numeric, a
+\fB+\fR or a \fB-\fR.
+.sp
+The abbreviation is limited to a maximum length of 32 characters.
+\fBinstall\fR, \fBnew\fR, and \fBall\fR are reserved abbreviations. It is
+customary to make the first four letters unique to your company, such as the
+company's stock symbol.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBVERSION\fR\fR
+.ad
+.sp .6
+.RS 4n
+Text that specifies the current version associated with the software package.
+The maximum length is 256 \fBASCII\fR characters and the first character cannot
+be a left parenthesis. The \fBpkgmk\fR(1) tool can be used to create or modify
+this value when actually building the package. Traditional Solaris
+practice was to assign this parameter monotonically increasing Dewey decimal
+values of the form:
+.sp
+.in +2
+.nf
+<\fImajor_revision\fR>.<\fIminor_revision\fR>[.<\fImicro_revision\fR>]
+.fi
+.in -2
+
+where all the revision fields are integers. The versioning fields can be
+extended to an arbitrary string of numbers in Dewey-decimal format, if
+necessary.
+.RE
+
+.sp
+.LP
+The following parameters are optional:
+.sp
+.ne 2
+.na
+\fB\fBBASEDIR\fR\fR
+.ad
+.sp .6
+.RS 4n
+The pathname to a default directory where "relocatable" files can be installed.
+If blank, the package is not relocatable and any files that have relative
+pathnames are not installed. An administrator can override the default
+directory.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBCLASSES\fR\fR
+.ad
+.sp .6
+.RS 4n
+A space-separated list of classes defined for a package. The order of the list
+determines the order in which the classes are installed. Classes listed first
+are installed first (on a media by media basis). This parameter can be modified
+by the request script.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBDESC\fR\fR
+.ad
+.sp .6
+.RS 4n
+Text that describes the package (maximum length of 256 \fBASCII\fR characters).
+This parameter value is used to provide the installer with a description of
+what the package contains and should build on the description provided in the
+\fBNAME\fR parameter. Try to make the two parameters work together so that a
+\fBpkginfo\fR \fB-l\fR provides a fairly comprehensive textual description of
+the package.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEMAIL\fR\fR
+.ad
+.sp .6
+.RS 4n
+An electronic address where further information is available or bugs can be
+reported (maximum length of 256 \fBASCII\fR characters).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBHOTLINE\fR\fR
+.ad
+.sp .6
+.RS 4n
+Phone number and/or mailing address where further information can be received
+or bugs can be reported (maximum length of 256 \fBASCII\fR characters).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBINTONLY\fR\fR
+.ad
+.sp .6
+.RS 4n
+Indicates that the package should only be installed interactively when set to
+any non-null value.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBISTATES\fR\fR
+.ad
+.sp .6
+.RS 4n
+A list of allowable run states for package installation (for example, "\fBS s
+1\fR" allows run states of \fBS\fR, \fBs\fR or \fB1\fR). The Solaris operating
+environment supports the run levels \fBs\fR, \fBS\fR, \fB0\fR, \fB1\fR,
+\fB2\fR, \fB3\fR, \fB5\fR, and \fB6\fR. Applicable run levels for this
+parameter are \fBs\fR, \fBS\fR, \fB1\fR, \fB2\fR, and \fB3\fR. See
+\fBinit\fR(8) for details.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBMAXINST\fR\fR
+.ad
+.sp .6
+.RS 4n
+The maximum number of package instances that should be allowed on a machine at
+the same time. By default, only one instance of a package is allowed. This
+parameter must be set in order to have multiple instances of a package. In
+order to support multiple instances of packages (for example, packages that
+differ in their \fBARCH\fR or \fBVERSION\fR parameter value), the value of this
+parameter must be high enough to allow for all instances of a given package,
+including multiple versions coexisting on a software server.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBORDER\fR\fR
+.ad
+.sp .6
+.RS 4n
+A list of classes defining the order in which they should be put on the medium.
+Used by \fBpkgmk\fR(1) in creating the package. Classes not defined in this
+field are placed on the medium using the standard ordering procedures.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPSTAMP\fR\fR
+.ad
+.sp .6
+.RS 4n
+Production stamp used to mark the \fBpkgmap\fR(5) file on the output volumes.
+Provides a means for distinguishing between production copies of a version if
+more than one is in use at a time. If \fBPSTAMP\fR is not defined, the default
+is used. The default consists of the UNIX system machine name followed by the
+string "\fIYYYYMMDDHHMMSS\fR" (year, month, date, hour, minutes, seconds).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBRSTATES\fR\fR
+.ad
+.sp .6
+.RS 4n
+A list of allowable run states for package removal (for example, "\fBS s 1\fR"
+allows run states of \fBS\fR, \fBs\fR or \fB1\fR). The Solaris operating
+environment supports the run levels \fBs\fR, \fBS\fR, \fB0\fR, \fB1\fR,
+\fB2\fR, \fB3\fR, \fB5\fR, and \fB6\fR. Applicable run levels for this
+parameter are \fBs\fR, \fBS\fR, \fB1\fR, \fB2\fR, and \fB3\fR See
+\fBinit\fR(8) for details.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSUNW_ISA\fR\fR
+.ad
+.sp .6
+.RS 4n
+Solaris-only optional parameter that indicates a software package contains
+64-bit objects if it is set to \fBsparcv9\fR. If this parameter is not set, the
+default \fBISA\fR (instruction set architecture) is set to the value of the
+\fBARCH\fR parameter.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSUNW_PKG_DIR\fR\fR
+.ad
+.sp .6
+.RS 4n
+A value set by \fBpkgadd\fR that contains the location of the installing
+package. This value is provided to any install time package procedure scripts
+that need to know where the installing package is located. This parameter
+should never be set manually from within a \fBpkginfo\fR file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSUNW_PKG_ALLZONES\fR\fR
+.ad
+.sp .6
+.RS 4n
+Defines whether a package, when installed, must be installed and must be
+identical in all zones. Assigned value can be \fBtrue\fR or \fBfalse\fR. The
+default value is \fBfalse\fR. The setting of \fBSUNW_PKG_ALLZONES\fR has the
+effects described below.
+.sp
+If set to \fBtrue\fR, the following conditions are in effect:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The package must be installed in the global zone.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The package must be installed in any non-global zone that is created.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The package must be identical in all zones.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The package can be installed only by the global zone administrator.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The package cannot be installed by a non-global zone administrator.
+.RE
+If set to \fBfalse\fR, the following conditions are in effect:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The package is not required to be installed in all zones.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The package is not required to be identical across all zones.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The package can be installed by the global zone administrator or by a
+non-global zone administrator.
+.RE
+Packages that must be identical across all zones must set this variable to
+\fBtrue\fR. This would include packages that deliver components that are part
+of the core operating system, or that are dependent on interfaces exported by
+the core operating system, or that deliver device drivers, or runtime libraries
+that use or export operating system interfaces that are not guaranteed to be
+stable across minor releases.
+.sp
+Packages that deliver components that are not part of the core operating system
+(such as application programs) that can be different between any two zones must
+set this variable to \fBfalse\fR.
+.sp
+With respect to \fBSUNW_PKG_ALLZONES\fR, keep in mind the following:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Use of \fBpkgadd\fR in the global zone installs packages in all zones unless
+\fB-G\fR is specified, in which case packages are installed in the global zone
+only. The setting of \fBSUNW_PKG_ALLZONES\fR does not change this behavior. For
+example, a package that has a setting of \fBSUNW_PKG_ALLZONES=false\fR is not
+installed in the global zone only.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The \fBSUNW_PKG_ALLZONES\fR attribute controls whether a package \fBmust\fR be
+installed in all zones (and must be the same in all zones) when it is
+installed.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Use of the \fB-G\fR option to \fBpkgadd\fR with a package that has
+\fBSUNW_PKG_ALLZONES=true\fR is an error and causes installation of that
+package to fail.
+.RE
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSUNW_PKG_HOLLOW\fR\fR
+.ad
+.sp .6
+.RS 4n
+Defines whether a package should be visible in any non-global zone if that
+package is required to be installed and be identical in all zones (for example,
+a package that has \fBSUNW_PKG_ALLZONES=true\fR). Assigned value can be
+\fBtrue\fR or \fBfalse\fR. The default value is \fBfalse\fR. The package is not
+required to be installed, but if it is installed, the setting of
+\fBSUNW_PKG_HOLLOW\fR has the effects described below.
+.sp
+If set to \fBfalse\fR, the following conditions are in effect:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+If installed in the global zone, the package content and installation
+information are required in all non-global zones.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Software delivered by the package is visible in all non-global zones. An
+example of such a a package is the package that delivers the \fBtruss\fR(1)
+command.
+.RE
+If set to \fBtrue\fR, the following conditions are in effect:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The package content is not delivered on any non-global zone. However, the
+package installation information is required on all non-global zones.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The package delivers software that should not be visible in all non-global
+zones. Examples include kernel drivers and system configuration files that work
+only in the global zone. This setting allows the non-global zone to resolve
+dependencies on packages that are installed only in the global zone without
+actually installing the package data.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+In the global zone, the package is recognized as having been installed, and all
+components of the package are installed. Directories are created, files are
+installed, and class action and other scripts are run as appropriate when the
+package is installed.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+In a non-global zone, the package is recognized as having been installed, but
+no components of the package are installed. No directories are created, no
+files are installed, and no class action or other install scripts are run when
+the package is installed.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+When removed from the global zone, the package is recognized as having been
+completely installed. Appropriate directories and files are removed, and class
+action or other install scripts are run when the package is removed.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+When removed from a non-global zone, the package is recognized as not having
+been completely installed. No directories are removed, no files are removed,
+and no class action or other install scripts are run when the package is
+removed.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The package is recognized as being installed in all zones for purposes of
+dependency checking by other packages that rely on this package being
+installed.
+.RE
+If \fBSUNW_PKG_ALLZONES\fR is set to \fBfalse\fR, the value of this variable
+has no meaning. It is a package construction error to set
+\fBSUNW_PKG_ALLZONES\fR to \fBfalse\fR, then set \fBSUNW_PKG_HOLLOW\fR to
+\fBtrue\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSUNW_PKG_THISZONE\fR\fR
+.ad
+.sp .6
+.RS 4n
+Defines whether a package must be installed in the current zone only. Assigned
+value can be \fBtrue\fR or \fBfalse\fR. The default value is \fBfalse\fR. The
+setting of \fBSUNW_PKG_THISZONE\fR has the effects described below.
+.sp
+If set to true, the following conditions are in effect:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The package is installed in the current zone only.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+If installed in the global zone, the package is not added to any currently
+existing or yet-to-be-created non-global zones. This is the same behavior that
+would occur if the \fB-G\fR option were specified to \fBpkgadd\fR.
+.RE
+If set to false, the following conditions are in effect:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+If \fBpkgadd\fR is run in a non-global zone, the package is installed in the
+current zone only.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+If \fBpkgadd\fR is run in the global zone, the package is installed in the
+global zone, and is also installed in all currently installed non-global zones.
+In addition, the package will be propagated to all future, newly installed
+non-global zones.
+.RE
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSUNW_PKGVERS\fR\fR
+.ad
+.sp .6
+.RS 4n
+Solaris-only parameter indicating of version of the Solaris operating
+environment package interface.
+.sp
+.in +2
+.nf
+SUNW_PKGVERS="<\fIsunw_package_version\fR>"
+.fi
+.in -2
+
+where <\fIsunw_package_version\fR> has the form \fIx.y[.z]\fR and \fIx\fR,
+\fIy\fR, and z are integers. For packages built for this release and previous
+releases, use \fBSUNW_PKGVERS="\fI1.0\fR"\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSUNW_PRODNAME\fR\fR
+.ad
+.sp .6
+.RS 4n
+Solaris-only parameter indicating the name of the product this package is a
+part of or comprises (maximum length of 256 \fBASCII\fR characters). A few
+examples of \fBSUNW_PRODNAME\fR values are: \fB"SunOS"\fR,
+\fB"OpenWindows"\fR, and \fB"Common Desktop Environment"\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSUNW_PRODVERS\fR\fR
+.ad
+.sp .6
+.RS 4n
+Solaris-only parameter indicating the version or release of the product
+described in \fBSUNW_PRODNAME\fR (maximum length of 256 \fBASCII\fR
+characters). For example, where \fBSUNW_PRODNAME="\fR\fISunOS\fR\fB"\fR, and
+the Solaris 2.x Beta release, this string could be \fB"5.x BETA"\fR, while for
+the Solaris 2.x FCS release, the string would be \fB"5.x"\fR. For Solaris 10,
+the string is \fB"5.10"\fR. If the \fBSUNW_PRODNAME\fR parameter is \fINULL\fR,
+so should be the \fBSUNW_PRODVERS\fR parameter.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBULIMIT\fR\fR
+.ad
+.sp .6
+.RS 4n
+If set, this parameter is passed as an argument to the \fBulimit\fR(1) command
+(see \fBlimit\fR(1)), which establishes the maximum size of a file during
+installation.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBVENDOR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Used to identify the vendor that holds the software copyright (maximum length
+of 256 \fBASCII\fR characters).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBVSTOCK\fR\fR
+.ad
+.sp .6
+.RS 4n
+The vendor stock number, if any, that identifies this product (maximum length
+of 256 \fBASCII\fR characters).
+.RE
+
+.sp
+.LP
+For further discussion of the zones-related parameters described above, see
+\fISystem Administration Guide: Virtualization Using the Solaris Operating
+System\fR.
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRA Sample \fBpkginfo\fR File
+.sp
+.LP
+Here is a sample \fBpkginfo\fR file:
+
+.sp
+.in +2
+.nf
+SUNW_PRODNAME="SunOS"
+SUNW_PRODVERS="5.5"
+SUNW_PKG_ALLZONES=false
+SUNW_PKG_HOLLOW=false
+PKG="SUNWesu"
+NAME="Extended System Utilities"
+VERSION="11.5.1"
+ARCH="sparc"
+VENDOR="Sun Microsystems, Inc."
+HOTLINE="Please contact your local service provider"
+EMAIL=""
+VSTOCK="0122c3f5566"
+CATEGORY="system"
+ISTATES="S 2"
+RSTATES="S 2"
+.fi
+.in -2
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability See entries below
+_
+PKG value Evolving
+_
+VERSION value Evolving
+_
+NAME value Evolving
+_
+DESC value Evolving
+_
+ARCH value Evolving
+_
+CATEGORY value Evolving
+_
+BASEDIR value Evolving
+_
+ISTATES value Evolving
+_
+RSTATES value Evolving
+_
+MAXINST value Evolving
+_
+SUNW_PKG_ALLZONES Evolving
+_
+SUNW_PKG_HOLLOW Evolving
+_
+SUNW_PKG_THISZONE Evolving
+_
+SUNW_PRODNAME Evolving
+_
+SUNW_PRODVERS Evolving
+_
+SUNW_PKGVERS Evolving
+_
+SUNW_PKG_DIR Evolving
+.TE
+
+.SH SEE ALSO
+.LP
+.BR isalist (1),
+.BR limit (1),
+.BR pkgmk (1),
+.BR uname (1),
+.BR pkgmap (5),
+.BR attributes (7),
+.BR zones (7),
+.BR init (8)
+.sp
+.LP
+\fIApplication Packaging Developer\&'s Guide\fR
+.sp
+.LP
+\fISystem Administration Guide: Virtualization Using the Solaris Operating
+System\fR
+.SH NOTES
+.LP
+Developers can define their own installation parameters by adding a definition
+to this file. A developer-defined parameter must begin with a capital letter.
+.sp
+.LP
+Trailing white space after any parameter value is ignored. For example,
+\fBVENDOR="Sun Microsystems, Inc."\fR is the same as \fBVENDOR="Sun
+Microsystems, Inc. "\fR.
diff --git a/usr/src/man/man5/pkgmap.5 b/usr/src/man/man5/pkgmap.5
new file mode 100644
index 0000000000..afe926653e
--- /dev/null
+++ b/usr/src/man/man5/pkgmap.5
@@ -0,0 +1,367 @@
+'\" te
+.\" Copyright 1989 AT&T
+.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PKGMAP 5 "Jul 12, 2006"
+.SH NAME
+pkgmap \- package contents description file
+.SH DESCRIPTION
+.sp
+.LP
+\fBpkgmap\fR is an \fBASCII\fR file that provides a complete listing of the
+package contents. It is automatically generated by \fBpkgmk\fR(1) using the
+information in the \fBprototype\fR(5) file.
+.sp
+.LP
+Each entry in \fBpkgmap\fR describes a single ``deliverable object file.'' A
+deliverable object file includes shell scripts, executable objects, data files,
+directories, and so forth. The entry consists of several fields of information,
+each field separated by a space. The fields are described below and must appear
+in the order shown.
+.sp
+.ne 2
+.na
+\fB\fIpart\fR\fR
+.ad
+.RS 12n
+An optional field designating the part number in which the object resides. A
+part is a collection of files and is the atomic unit by which a package is
+processed. A developer can choose the criteria for grouping files into a part
+(for example, based on class). If no value is defined in this field, part 1 is
+assumed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIftype\fR\fR
+.ad
+.RS 12n
+A one-character field that indicates the file type. Valid values are listed
+below. File types are divided between those that are not to be modified and
+those that are modifiable.
+.sp
+Files of the following types must never be modified:
+.sp
+.ne 2
+.na
+\fB\fBb\fR\fR
+.ad
+.RS 5n
+block special device
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBc\fR\fR
+.ad
+.RS 5n
+character special device
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBd\fR\fR
+.ad
+.RS 5n
+directory
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBf\fR\fR
+.ad
+.RS 5n
+a standard executable file, data file, or other type of file, the contents of
+which must never be modified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBi\fR\fR
+.ad
+.RS 5n
+information file (such as a file containing a copyright, list of dependencies,
+or package information) or installation script (such as checkinstall, class
+action [\fBi.\fR], pre/post install/remove), the contents of which must never
+be modified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBl\fR\fR
+.ad
+.RS 5n
+linked file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBp\fR\fR
+.ad
+.RS 5n
+named pipe
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBs\fR\fR
+.ad
+.RS 5n
+symbolic link
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBx\fR\fR
+.ad
+.RS 5n
+an exclusive directory accessible only by this package
+.RE
+
+Files of the following types can be modified:
+.sp
+.ne 2
+.na
+\fB\fBe\fR\fR
+.ad
+.RS 5n
+An editable file, intended to be edited (selectively modified) after
+installation. An editable file is expected to change on installation or
+removal, can be shared by several packages, and must be installed by a class
+action script. Examples are a configuration file or a list of users.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBv\fR\fR
+.ad
+.RS 5n
+A volatile file, intended to be overwritten or appended to after installation.
+A volatile file is not expected to change on installation or removal, is not
+preserved between installations, and can be installed by a class action script.
+Examples are a log file or a lock file.
+.RE
+
+Following package installation, the contents of files of all types except
+\fBe\fR and \fBv\fR must not change. Any file that is subject to change should
+be marked as \fBe\fR or \fBv\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIclass\fR\fR
+.ad
+.RS 12n
+The installation class to which the file belongs. This name must contain only
+alphanumeric characters and be no longer than 12 characters. It is not
+specified if the \fIftype\fR is \fBi\fR (information file).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIpathname\fR\fR
+.ad
+.RS 12n
+\fIpathname\fR may contain variables of the form \fB$\fR\fIvariable\fR that
+support install-time configuration of the file. \fIvariable\fR may be embedded
+in the pathname structure. (See \fBprototype\fR(5) for definitions of variable
+specifications.)
+.sp
+Do not use the following reserved words in \fIpathname\fR, since they are
+applied by \fBpkgadd\fR(8) using a different mechanism:
+.sp
+.in +2
+.nf
+PKG_INSTALL_ROOT
+BASEDIR
+CLIENT_BASEDIR
+.fi
+.in -2
+.sp
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fImajor\fR\fR
+.ad
+.RS 12n
+The major device number. The field is only specified for block or character
+special devices.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIminor\fR\fR
+.ad
+.RS 12n
+The minor device number. The field is only specified for block or character
+special devices.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fImode\fR\fR
+.ad
+.RS 12n
+The octal mode of the file (for example, 0664). A question mark (\fB?\fR)
+indicates that the mode will be left unchanged, implying that the file already
+exists on the target machine. This field is not used for linked files,
+packaging information files, or non-installable files.
+.sp
+The mode can contain a variable specification. (See \fBprototype\fR(5) for
+definitions of variable specifications.)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIowner\fR\fR
+.ad
+.RS 12n
+The owner of the file (for example, \fBbin\fR or \fBroot\fR). The field is
+limited to 14 characters in length. A question mark (\fB?\fR) indicates that
+the owner will be left unchanged or changed to the owner stored in the package
+database, which could be different from what is on the file system. When the
+question mark is used, it implies that the file is already on the file system.
+This field is not used for linked files or non-installable files. It is used
+optionally with a package information file. If used, it indicates with what
+owner an installation script will be executed.
+.sp
+The owner can contain a variable specification. (See \fBprototype\fR(5) for
+definitions of variable specifications.)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIgroup\fR\fR
+.ad
+.RS 12n
+The group to which the file belongs (for example, \fBbin\fR or \fBsys\fR). The
+field is limited to 14 characters in length. A question mark (\fB?\fR)
+indicates that the group will be left unchanged or changed to the owner stored
+in the package database, which could be different from what is on the file
+system. When the question mark is used, it implies that the file is already on
+the file system. This field is not used for linked files or non-installable
+files. It is used optionally with a package information file. If used, it
+indicates with what group an installation script will be executed.
+.sp
+The group can contain a variable specification. (See \fBprototype\fR(5) for
+definitions of variable specifications.)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIsize\fR\fR
+.ad
+.RS 12n
+The actual size of the file in bytes. This field is not specified for named
+pipes, special devices, directories or linked files.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIcksum\fR\fR
+.ad
+.RS 12n
+The checksum of the file contents. This field is not specified for named pipes,
+special devices, directories, or linked files.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fImodtime\fR\fR
+.ad
+.RS 12n
+The time of last modification, as reported by the \fBstat\fR(2) function call.
+This field is not specified for named pipes, special devices, directories, or
+linked files.
+.RE
+
+.sp
+.LP
+Each \fBpkgmap\fR file must have one line that provides information about the
+number of parts, maximum size of parts that make up the package, and,
+optionally, the size of the package after compression (where size is given in
+512-byte blocks). This line is in the following format:
+.sp
+.LP
+\fB:\fR \fInumber_of_parts\fR \fImaximum_part_size\fR \fIcompressed_pkg_size\fR
+.sp
+.LP
+Lines that begin with ``\fB#\fR'' are comment lines and are ignored.
+.sp
+.LP
+When files are saved during installation before they are overwritten, they are
+normally just copied to a temporary pathname. However, for files whose mode
+includes execute permission (but which are not editable), the existing version
+is linked to a temporary pathname and the original file is removed. This allows
+processes which are executing during installation to be overwritten.
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRA Sample \fBpkgmap\fR File
+.sp
+.in +2
+.nf
+\fB: 2 500
+1 i pkginfo 237 1179 541296672
+1 b class1 /dev/diskette 17 134 0644 root other
+1 c class1 /dev/rdiskette 17 134 0644 root other
+1 d none bin 0755 root bin
+1 f none bin/INSTALL 0755 root bin 11103 17954 541295535
+1 f none bin/REMOVE 0755 root bin 3214 50237 541295541
+1 l none bin/UNINSTALL=bin/REMOVE
+1 f none bin/cmda 0755 root bin 3580 60325 541295567
+1 f none bin/cmdb 0755 root bin 49107 51255 541438368
+1 f class1 bin/cmdc 0755 root bin 45599 26048 541295599
+1 f class1 bin/cmdd 0755 root bin 4648 8473 541461238
+1 f none bin/cmde 0755 root bin 40501 1264 541295622
+1 f class2 bin/cmdf 0755 root bin 2345 35889 541295574
+1 f none bin/cmdg 0755 root bin 41185 47653 541461242
+2 d class2 data 0755 root bin
+2 p class1 data/apipe 0755 root other
+2 d none log 0755 root bin
+2 v none log/logfile 0755 root bin 41815 47563 541461333
+2 d none save 0755 root bin
+2 d none spool 0755 root bin
+2 d none tmp 0755 root bin\fR
+.fi
+.in -2
+.sp
+
+.SH SEE ALSO
+.sp
+.LP
+.BR pkgmk (1),
+.BR stat (2),
+.BR pkginfo (5),
+.BR prototype (5),
+.BR pkgadd (8)
+.sp
+.LP
+\fIApplication Packaging Developer\&'s Guide\fR
+.SH NOTES
+.sp
+.LP
+The \fBpkgmap\fR file may contain only one entry per unique pathname.
diff --git a/usr/src/man/man5/policy.conf.5 b/usr/src/man/man5/policy.conf.5
new file mode 100644
index 0000000000..526b97a2ef
--- /dev/null
+++ b/usr/src/man/man5/policy.conf.5
@@ -0,0 +1,257 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH POLICY.CONF 5 "Feb 25, 2008"
+.SH NAME
+policy.conf \- configuration file for security policy
+.SH SYNOPSIS
+.LP
+.nf
+/etc/security/policy.conf
+.fi
+
+.SH DESCRIPTION
+
+.LP
+The \fBpolicy.conf\fR file provides the security policy configuration for
+user-level attributes. Each entry consists of a key/value pair in the form:
+.sp
+.LP
+key=value
+.sp
+.LP
+The following keys are defined:
+.sp
+.ne 2
+.na
+\fB\fBAUTHS_GRANTED\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify the default set of authorizations granted to all users. This entry is
+interpreted by \fBchkauthattr\fR(3SECDB). The value is zero or more
+comma-separated authorizations defined in \fBauth_attr\fR(5).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPROFS_GRANTED\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify the default set of profiles granted to all users. This entry is
+interpreted by \fBchkauthattr\fR(3SECDB) and \fBgetexecuser\fR(3SECDB). The
+value is zero or more comma-separated profiles defined in \fBprof_attr\fR(5).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBCONSOLE_USER\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify an additional default set of profiles granted to the \fIconsole user\fR
+user. This entry is interpreted by \fBchkauthattr\fR(3SECDB) and
+\fBgetexecuser\fR(3SECDB). The value is zero or more comma-separated profiles
+defined in \fBprof_attr\fR(5).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_DEFAULT\fR and \fBPRIV_LIMIT\fR\fR
+.ad
+.sp .6
+.RS 4n
+Settings for these keys determine the default privileges that users have. (See
+\fBprivileges\fR(7).) If these keys are not set, the default privileges are
+taken from the inherited set. \fBPRIV_DEFAULT\fR determines the default set on
+login. \fBPRIV_LIMIT\fR defines the limit set on login. Users can have
+privileges assigned or taken away through use of \fBuser_attr\fR(5). Privileges
+can also be assigned to profiles, in which case users who have those profiles
+can exercise the assigned privileges through \fBpfexec\fR(1).
+.sp
+For maximum future compatibility, the privilege specifications should always
+include \fBbasic\fR or \fBall\fR. Privileges should then be removed using
+negation. See EXAMPLES. By assigning privileges in this way, you avoid a
+situation where, following an addition of a currently unprivileged operation to
+the basic privilege set, a user unexpectedly does not have the privileges he
+needs to perform that now-privileged operation.
+.sp
+Note that removing privileges from the limit set requires \fBextreme\fR care,
+as any set-uid root program might suddenly fail because it lacks certain
+privilege(s). Note also that dropping \fBbasic\fR privileges from the default
+privilege set can cause unexpected failure modes in applications.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBLOCK_AFTER_RETRIES=YES|NO\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies whether a local account is locked after the count of failed logins
+for a user equals or exceeds the allowed number of retries as defined by
+\fBRETRIES\fR in \fB/etc/default/login\fR. The default value for users is
+\fBNO\fR. Individual account overrides are provided by \fBuser_attr\fR(5).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBCRYPT_ALGORITHMS_ALLOW\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify the algorithms that are allowed for new passwords and is enforced only
+in \fBcrypt_gensalt\fR(3C).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBCRYPT_ALGORITHMS_DEPRECATE\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify the algorithm for new passwords that is to be deprecated. For example,
+to deprecate use of the traditional UNIX algorithm, specify
+\fBCRYPT_ALGORITHMS_DEPRECATE=__unix__\fR and change \fBCRYPT_DEFAULT=\fR to
+another algorithm, such as \fBCRYPT_DEFAULT=1\fR for BSD and Linux MD5.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBCRYPT_DEFAULT\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify the default algorithm for new passwords. The Solaris default was once
+the traditional UNIX algorithm. This is not listed in \fBcrypt.conf\fR(5) since
+it is internal to \fBlibc\fR. The reserved name \fB__unix__\fR is used to refer
+to it.
+.RE
+
+.sp
+.LP
+The key/value pair must appear on a single line, and the key must start the
+line. Lines starting with \fB#\fR are taken as comments and ignored. Option
+name comparisons are case-insensitive.
+.sp
+.LP
+Only one \fBCRYPT_ALGORITHMS_ALLOW\fR or \fBCRYPT_ALGORITHMS_DEPRECATE\fR value
+can be specified. Whichever is listed first in the file takes precedence. The
+algorithm specified for \fBCRYPT_DEFAULT\fR must either be specified for
+\fBCRYPT_ALGORITHMS_ALLOW\fR or not be specified for
+\fBCRYPT_ALGORITHMS_DEPRECATE\fR. If \fBCRYPT_DEFAULT\fR is not specified, the
+default is \fB__unix__\fR.
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRDefining a Key/Value Pair
+.sp
+.in +2
+.nf
+\fBAUTHS_GRANTED=solaris.date\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRSpecifying Privileges
+.sp
+.LP
+As noted above, you should specify privileges through negation, specifying
+\fBall\fR for \fBPRIV_LIMIT\fR and \fBbasic\fR for \fBPRIV_DEFAULT\fR, then
+subtracting privileges, as shown below.
+
+.sp
+.in +2
+.nf
+PRIV_LIMIT=all,!sys_linkdir
+PRIV_DEFAULT=basic,!file_link_any
+.fi
+.in -2
+
+.sp
+.LP
+The first line, above, takes away only the \fBsys_linkdir\fR privilege. The
+second line takes away only the \fBfile_link\fR privilege. These privilege
+specifications are unaffected by any future addition of privileges that might
+occur.
+
+.SH FILES
+
+.ne 2
+.na
+\fB\fB/etc/user_attr\fR\fR
+.ad
+.RS 29n
+Defines extended user attributes.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/security/auth_attr\fR\fR
+.ad
+.RS 29n
+Defines authorizations.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/security/prof_attr\fR\fR
+.ad
+.RS 29n
+Defines profiles.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/security/policy.conf\fR\fR
+.ad
+.RS 29n
+Defines policy for the system.
+.RE
+
+.SH ATTRIBUTES
+
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Committed
+.TE
+
+.SH SEE ALSO
+
+.LP
+.BR login (1),
+.BR pfexec (1),
+.BR chkauthattr (3SECDB),
+.BR getexecuser (3SECDB),
+.BR auth_attr (5),
+.BR crypt.conf (5),
+.BR prof_attr (5),
+.BR user_attr (5),
+.BR attributes (7),
+.BR privileges (7)
+.SH NOTES
+
+.LP
+The \fIconsole user\fR is defined as the owner of \fB/dev/console\fR.
diff --git a/usr/src/man/man5/power.conf.5 b/usr/src/man/man5/power.conf.5
new file mode 100644
index 0000000000..886424d05e
--- /dev/null
+++ b/usr/src/man/man5/power.conf.5
@@ -0,0 +1,822 @@
+'\" te
+.\" Copyright (C) 2009, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH POWER.CONF 5 "June 20, 2021"
+.SH NAME
+power.conf \- Power Management configuration information file
+.SH SYNOPSIS
+.nf
+\fB/etc/power.conf\fR
+.fi
+
+.SH DESCRIPTION
+The \fBpower.conf\fR file is used by the Power Management configuration program
+\fBpmconfig\fR(8), to initialize the settings for Power Management. If you
+make changes to this file, you must run \fBpmconfig\fR(8) manually for the
+changes to take effect.
+.sp
+.LP
+Power Management addresses two specific management scenarios: management of
+individual devices and management of the whole system. An individual device is
+power managed if the device supports multiple power levels and if the device
+driver uses Power Management interfaces provided by the kernel to save device
+power when the device is idle.
+.sp
+.LP
+All entries in the \fBpower.conf\fR file are processed in the order that they
+occur in the file.
+.SS "Automatic Device Power Management"
+Devices with drivers that use the automatic device Power Management interfaces
+are automatically power managed if the \fBautopm\fR entry is enabled. The
+\fBautopm\fR entry is described near the end of this section. The
+\fBpm-components\fR property describes the Power Management model of a device
+driver to the Power Management framework. See \fBpm-components\fR(9P) for more
+information.
+.sp
+.LP
+When a component has been idle at a given power level for its threshold time,
+the power level of the component is reduced to the next lower power level of
+that component, if any. For devices which implement multiple components, each
+component is power-managed independently.
+.sp
+.LP
+Default thresholds for components of automatically power managed devices are
+computed by the Power Management framework based on the system idleness
+threshold. By default, all components of the device are powered off if they
+have all been idle for the system's idleness threshold. The default system
+idleness threshold is determined by the applicable United States Environmental
+Protection Agency's (EPA) \fIEnergy Star Memorandum of Understanding\fR. See
+the \fBNOTES\fR section of this manual page for more information.
+.sp
+.LP
+To set the system idleness \fIthreshold\fR, use one of the following entries:
+.sp
+.in +2
+.nf
+system-threshold \fIthreshold\fR
+.fi
+.in -2
+
+.sp
+.in +2
+.nf
+system-threshold \fBalways-on\fR
+.fi
+.in -2
+
+.sp
+.LP
+where \fIthreshold\fR is the value of the system idleness threshold in hours,
+minutes or seconds as indicated by a trailing \fBh\fR, \fBm\fR or \fBs\fR
+(defaulting to seconds if only a number is given). If \fBalways-on\fR is
+specified, then by default, all devices are left at full power.
+.sp
+.LP
+The \fBsystem-threshold\fR entry is applicable to CPU Power Management only
+when CPU Power Management has been configured to operate in poll-mode, which is
+expressed through the \fBcpupm\fR keyword.
+.sp
+.LP
+If a system has power manageable CPUs, these can be managed independently of
+the system idleness threshold by using one of the following entries:
+.sp
+.in +2
+.nf
+cpu-threshold \fIthreshold\fR
+.fi
+.in -2
+
+.sp
+.in +2
+.nf
+cpu-threshold \fBalways-on\fR
+.fi
+.in -2
+
+.sp
+.LP
+where \fIthreshold\fR is the value of the CPU idleness threshold in hours,
+minutes or seconds as indicated by a trailing \fBh\fR, \fBm\fR or \fBs\fR
+(defaulting to seconds if only a number is given). If \fBalways-on\fR is
+specified, then by default, all CPUs are left at full power.
+.sp
+.LP
+The \fBcpu-threshold\fR keyword is used only when CPU Power Management has been
+configured to operate in poll-mode, which is expressed through the \fBcpupm\fR
+keyword.
+.sp
+.LP
+If no \fBcpu-threshold\fR entry is specified, then the system idleness
+threshold is used.
+.sp
+.LP
+To override the default device component thresholds assigned by the Power
+Management framework, a \fBdevice-thresholds\fR entry can be used. A
+\fBdevice-thresholds\fR entry sets thresholds for a specific automatically
+power-managed device or disables automatic Power Management for the specific
+device.
+.sp
+.LP
+A \fBdevice-thresholds\fR entry has the form:
+.sp
+.in +2
+.nf
+device-thresholds \fIphys_path\fR \fI(threshold ...) ...\fR
+.fi
+.in -2
+
+.sp
+.LP
+or
+.sp
+.in +2
+.nf
+device-thresholds \fIphys_path\fR \fIthreshold\fR
+.fi
+.in -2
+
+.sp
+.LP
+or
+.sp
+.in +2
+.nf
+device-thresholds \fIphys_path\fR \fBalways-on\fR
+.fi
+.in -2
+
+.sp
+.LP
+where \fIphys_path\fR specifies the physical path (\fBlibdevinfo\fR(3LIB)) of a
+specific device. For example,
+\fB/pci@8,600000/scsi@4/ssd@w210000203700c3ee,0\fR specifies the physical path
+of a disk. A symbolic link into the \fB/devices\fR tree, for example
+\fB/dev/dsk/c1t1d0s0\fR, is also accepted. The thresholds apply (or keeping the
+device always on applies) to the specific device only.
+.sp
+.LP
+In the first form above, each \fIthreshold\fR value represents the number of
+hours, minutes or seconds, depending on a trailing \fBh\fR, \fBm\fR or \fBs\fR
+with a default to seconds, to spend idle at the corresponding power level
+before power is reduced to the next lower level of that component. Parentheses
+are used to group thresholds per component, with the first (leftmost) group
+being applied to component \fB0\fR, the next to component \fB1\fR, and the
+like. Within a group, the last (rightmost) number represents the time to be
+idle in the highest power level of the component before going to the
+next-to-highest level, while the first (leftmost) number represents the time to
+be idle in the next-to-lowest power level before going to the lowest power
+level.
+.sp
+.LP
+If the number of groups does not match the number of components exported by the
+device (by means of \fBpm-components\fR(9P) property), or the number of
+thresholds in a group is not one less than the number of power levels the
+corresponding component supports, then an error message is printed and the
+entry is ignored.
+.sp
+.LP
+For example, assume a device called \fBxfb\fR exports the components \fBFrame
+Buffer\fR and \fBMonitor\fR. Component \fBFrame Buffer\fR has two power levels:
+\fBOff\fR and \fBOn\fR. Component \fBMonitor\fR has four power levels:
+\fBOff\fR, \fBSuspend, Standby\fR, and \fBOn\fR.
+.sp
+.LP
+The following \fBdevice-thresholds\fR entry:
+.sp
+.in +2
+.nf
+device-thresholds \fI/pci@f0000/xfb@0 (0) (3m 5m 15m)\fR
+.fi
+.in -2
+
+.sp
+.LP
+would set the \fIthreshold\fR time for the \fBMonitor\fR component of the
+specific \fBxfb\fR card to go from \fBOn\fR to \fBStandby in\fR 15 minutes, the
+\fIthreshold\fR for \fBMonitor\fR to go from \fBStandby\fR to \fBSuspend\fR in 5
+minutes, and the \fIthreshold\fR for \fBMonitor\fR to go from \fBSuspend\fR to
+\fBOff\fR in 3 minutes. The threshold for \fBFrame Buffer\fR to go from
+\fBOn\fR to \fBOff\fR is 0 seconds.
+.sp
+.LP
+In the second form above, where a single threshold value is specified without
+parentheses, the threshold value represents a maximum overall time within which
+the entire device should be powered down if it is idle. Because the system does
+not know about any internal dependencies there can be among a device's
+components, the device can actually be powered down sooner than the specified
+\fIthreshold\fR, but does take longer than the specified \fIthreshold\fR,
+provided that all device components are idle.
+.sp
+.LP
+In the third form above, all components of the device are left at full power.
+.sp
+.LP
+Device Power Management entries are only effective if there is no user process
+controlling the device directly. For example, X Windows systems directly
+control frame buffers. The entries in the \fBpower.conf\fR file are effective
+only when X Windows is not running.
+.sp
+.LP
+Dependencies among devices can also be defined. A device depends upon another
+if none of its components might have their power levels reduced unless all
+components of the other device are powered off. A dependency can be indicated
+by an entry of the form:
+.sp
+.in +2
+.nf
+device-dependency \fIdependent_phys_path phys_path [ phys_path ... ]\fR
+.fi
+.in -2
+
+.sp
+.LP
+where \fIdependent_phys_path\fR is the path name (as above) of the device that
+is kept up by the others, and the \fIphys_path\fR entries specify the devices
+that keep it up. A symbolic link into the \fB/devices\fR tree, such as
+\fB/dev/fb\fR, is also accepted. This entry is needed only for logical
+dependents for the device. A logical dependent is a device that is not
+physically connected to the power managed device (for example, the display and
+the keyboard). Physical dependents are automatically considered and need not be
+included.
+.sp
+.LP
+In addition to listing dependents by physical path, an arbitrary group of
+devices can be made dependent upon another device by specifying a property
+dependency using the following syntax:
+.sp
+.in +2
+.nf
+device-dependency-property \fIproperty\fR \fIphys_path\fR [\fIphys_path\fR ...]
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+where each device that exports the property \fIproperty\fR is kept up by the
+devices named by \fIphys_path\fR(s). A symbolic link into the \fB/devices\fR
+tree (such as \fB/dev/fb\fR) is accepted as well as a pathname for
+\fIphys_path\fR.
+.sp
+.LP
+For example, the following entry ensures that every device that exports the
+boolean property named \fBremovable-media\fR is kept up when the console
+framebuffer is up. See \fBremovable-media\fR(9P).
+.sp
+.in +2
+.nf
+# This entry keeps removable media from being powered down unless the
+# console framebuffer and monitor are powered down
+# (See removable-media(9P))
+#
+device-dependency-property removable-media /dev/fb
+.fi
+.in -2
+
+.sp
+.LP
+An \fBautopm\fR entry can be used to enable or disable automatic device Power
+Management on a system-wide basis. The format of the \fBautopm\fR entry is:
+.sp
+.in +2
+.nf
+autopm \fIbehavior\fR
+.fi
+.in -2
+
+.sp
+.LP
+Acceptable behavior values are described as follows:
+.sp
+.ne 2
+.na
+\fB\fBdefault\fR\fR
+.ad
+.RS 11n
+The behavior of the system depends upon its model. Desktop models that fall
+under the United States Environmental Protection Agency's \fIEnergy Star
+Memorandum of Understanding #3\fR have automatic device Power Management
+enabled, and all others do not. See the \fBNOTES\fR section of this manual page
+for more information.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBenable\fR\fR
+.ad
+.RS 11n
+Automatic device Power Management is started when this entry is encountered.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdisable\fR\fR
+.ad
+.RS 11n
+Automatic device Power Management is stopped when this entry is encountered.
+.RE
+
+.sp
+.LP
+A \fBcpupm\fR entry can be used to enable or disable Power Management of CPUs
+on a system-wide basis, independent of \fBautopm\fR. The format of the
+\fBcpupm\fR entry is:
+.sp
+.in +2
+.nf
+cpupm \fIbehavior\fR
+.fi
+.in -2
+
+.sp
+.LP
+Acceptable behavior values and their meanings are :
+.sp
+.ne 2
+.na
+\fB\fBenable\fR\fR
+.ad
+.RS 11n
+CPU Power Management is started when this entry is encountered.
+.sp
+Where the behavior is \fBenable\fR, an optional \fImode\fR argument can be
+specified:
+.sp
+.in +2
+.nf
+cpupm enable \fImode\fR
+.fi
+.in -2
+
+Acceptable \fImode\fR values and their meanings are:
+.sp
+.ne 2
+.na
+\fB\fBevent-mode\fR\fR
+.ad
+.RS 14n
+CPU power state transitions is driven by thread scheduler/dispatcher events.
+The \fBcpu-threshold\fR, and \fBsystem-threshold\fR keywords are not used for
+CPUs in this mode.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpoll-mode\fR\fR
+.ad
+.RS 14n
+The Power Management framework polls the idleness of the system's CPUs, and
+manages their power once idle for the period of time specified by either the
+\fBsystem-threshold\fR or \fBcpu-threshold\fR.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdisable\fR\fR
+.ad
+.RS 11n
+CPU Power Management is stopped when this entry is encountered.
+.RE
+
+.sp
+.LP
+If supported by the platform, a \fBcpu_deep_idle\fR entry can be used to enable
+or disable automatic use of power saving cpu idle states. The format of the
+\fBcpu_deep_idle\fR entry is:
+.sp
+.in +2
+.nf
+\fBcpu_deep_idle\fR \fIbehavior\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Acceptable values for \fIbehavior\fR are:
+.sp
+.ne 2
+.na
+\fB\fBdefault\fR\fR
+.ad
+.RS 11n
+Advanced cpu idle power saving features are enabled on hardware which supports
+it. On X86 systems this can translate to the use of ACPI C-States beyond C1.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBenable\fR\fR
+.ad
+.RS 11n
+Enables the system to automatically use idle cpu power saving features.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdisable\fR\fR
+.ad
+.RS 11n
+The system does not automatically use idle cpu power saving features. This
+option can be used when maximum performance is required at the expense of
+power.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBabsent\fR\fR
+.ad
+.RS 11n
+It the \fBcpu_deep_idle\fR keyword is absent from \fBpower.conf\fR the behavior
+is the same as the default case.
+.RE
+
+.sp
+.LP
+Once every device is at its lowest possible power state, additional power
+savings can be obtained by putting the system into a sleep state (if the
+platform hardware is capable of doing so).
+.SS "S3 Support"
+Because of reliability problems encountered in BIOS implementations of X86
+systems not produced by Sun Microsystems, by default, only X86 workstation
+products produced by Sun are considered to support S3 (suspend to RAM). To
+override this default, an S3-support entry (of the format S3-support
+\fBbehavior\fR) can be used to indicate if the system supports S3.
+.sp
+.LP
+Acceptable behavior values are:
+.sp
+.ne 2
+.na
+\fBenable\fR
+.ad
+.RS 11n
+The system supports entry into S3 state. If the BIOS of a system enabled using
+an \fBS3-support enable\fR entry does not support entry into S3, the attempt
+fails and the system returns to normal operation. If support for S3 in the BIOS
+of a system enabled via an S3-support entry contains bugs, the system can be
+unable to enter S3 or resume successfully, so use this entry with caution.
+.RE
+
+.sp
+.ne 2
+.na
+\fBdisable\fR
+.ad
+.RS 11n
+The system does not support entry into S3 state.
+.RE
+
+.SS "Automatic Entry Into S3"
+If supported by your platform, an autoS3 entry can be used to enable or disable
+automatic entry into the S3 state. When in the S3 state, the power button,
+keyboard and mouse activity or network traffic (depending upon the capabilities
+of the platform hardware) can wake the system, returning it to the state it was
+in upon entry to the S3 state. If the platform doesn't support S3, the entry
+has no effect.
+.sp
+.LP
+The format of the autoS3 entry is autoS3 \fBbehavior\fR.
+.sp
+.LP
+Acceptable behavior values are:
+.sp
+.ne 2
+.na
+\fBdefault\fR
+.ad
+.RS 11n
+System behavior depends upon model. Sun X86 desktop and workstation models that
+fall under the United States Environmental Protection Agency's \fIEnergy Star
+Memorandum of Understanding #3\fR have automatic entry into the S3 state
+enabled. Non-Sun systems do not. See \fBNOTES\fR for more information.
+.RE
+
+.sp
+.ne 2
+.na
+\fBenable\fR
+.ad
+.RS 11n
+Enables the system to automatically enter the S3 state if autopm is enabled and
+every device is at its lowest power state.
+.RE
+
+.sp
+.ne 2
+.na
+\fBdisable\fR
+.ad
+.RS 11n
+The system does not automatically enter the S3 state.
+.RE
+
+.SS "System Power Management"
+The system Power Management entries control Power Management of the entire
+system using the suspend-resume feature. When the system is suspended, the
+complete current state is saved on the disk before power is removed. On reboot,
+the system automatically starts a resume operation and the system is restored
+to the state it was in prior to suspend.
+.sp
+.LP
+The system can be configured to do an automatic shutdown (autoshutdown) using
+the suspend-resume feature by an entry of the following form:
+.sp
+.in +2
+.nf
+autoshutdown \fIidle_time\fR \fIstart_time\fR \fIfinish_time\fR \fIbehavior\fR
+.fi
+.in -2
+
+.sp
+.LP
+\fIidle_time\fR specifies the time in minutes that system must have been idle
+before it is automatically shutdown. System idleness is determined by the
+inactivity of the system and can be configured as discussed below.
+.sp
+.LP
+\fIstart_time\fR and \fIfinish_time\fR (each in \fBhh:mm\fR) specify the time
+period during which the system can be automatically shutdown. These times are
+measured from the start of the day (12:00 a.m.). If the \fIfinish_time\fR is
+less than or equal to the \fIstart_time\fR, the period span from midnight to
+the \fIfinish_time\fR and from the \fIstart_time\fR to the following midnight.
+To specify continuous operation, the \fIfinish_time\fR can be set equal to the
+\fIstart_time\fR.
+.sp
+.LP
+Acceptable behavior values are described as follows:
+.sp
+.ne 2
+.na
+\fB\fBshutdown\fR\fR
+.ad
+.RS 16n
+The system is shut down automatically when it has been idle for the number of
+minutes specified in the \fIidle_time\fR value and the time of day falls
+between the \fIstart_time\fR and \fIfinish_time\fR values.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnoshutdown\fR\fR
+.ad
+.RS 16n
+The system is never shut down automatically.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBautowakeup\fR\fR
+.ad
+.RS 16n
+If the hardware has the capability to do \fBautowakeup\fR, the system is shut
+down as if the value were \fBshutdown\fR and the system is restarted
+automatically the next time the time of day equals \fIfinish_time\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdefault\fR\fR
+.ad
+.RS 16n
+The behavior of the system depends upon its model. Desktop models that fall
+under the United States Environmental Protection Agency's \fIEnergy Star
+Memorandum of Understanding #2\fR have automatic \fBshutdown\fR enabled, as if
+\fIbehavior\fR field were set to \fBshutdown\fR, and all others do not. See
+\fBNOTES\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBunconfigured\fR\fR
+.ad
+.RS 16n
+The system does not be shut down automatically. If the system has just been
+installed or upgraded, the value of this field is changed upon the next reboot.
+.RE
+
+.sp
+.LP
+You can use the following format to configure the system's notion of idleness:
+.sp
+.LP
+\fBidleness_parameter\fR \fIvalue\fR
+.sp
+.LP
+Where \fBidleness_parameter\fR can be:
+.sp
+.ne 2
+.na
+\fB\fBttychars\fR\fR
+.ad
+.RS 15n
+If the \fBidleness_parameter\fR is \fBttychars\fR, the \fIvalue\fR field is
+interpreted as the maximum number of tty characters that can pass through the
+\fBldterm\fR module while still allowing the system to be considered idle. This
+value defaults to \fB0\fR if no entry is provided.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBloadaverage\fR\fR
+.ad
+.RS 15n
+If the \fBidleness_parameter\fR is \fBloadaverage\fR, the (floating point)
+\fIvalue\fR field is interpreted as the maximum load average that can be seen
+while still allowing the system to be considered idle. This value defaults to
+\fB0.04\fR if no entry is provided.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdiskreads\fR\fR
+.ad
+.RS 15n
+If the \fBidleness_parameter\fR is \fBdiskreads\fR, the \fIvalue\fR field is
+interpreted as the maximum number of disk reads that can be perform by the
+system while still allowing the system to be considered idle. This value
+defaults to \fB0\fR if no entry is provided.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnfsreqs\fR\fR
+.ad
+.RS 15n
+If the \fBidleness_parameter\fR is \fBnfsreqs\fR, the \fIvalue\fR field is
+interpreted as the maximum number of NFS requests that can be sent or received
+by the system while still allowing the system to be considered idle. Null
+requests, access requests, and \fBgetattr\fR requests are excluded from this
+count. This value defaults to \fB0\fR if no entry is provided.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBidlecheck\fR\fR
+.ad
+.RS 15n
+If the \fBidleness_parameter\fR is \fBidlecheck\fR, the \fIvalue\fR must be
+pathname of a program to be executed to determine if the system is idle. If
+\fBautoshutdown\fR is enabled and the console keyboard, mouse, tty, CPU (as
+indicated by load average), network (as measured by NFS requests) and disk (as
+measured by read activity) have been idle for the amount of time specified in
+the \fBautoshutdown\fR entry specified above, and the time of day falls between
+the start and finish times, then this program is executed to check for other
+idleness criteria. The \fIvalue\fR of the idle time specified in the above
+\fBautoshutdown\fR entry is passed to the program in the environment variable
+\fBPM_IDLETIME\fR. The process must terminate with an exit code that represents
+the number of minutes that the process considers the system to have been idle.
+.sp
+There is no default \fIidlecheck\fR entry.
+.RE
+
+.sp
+.LP
+When the system is suspended, the current system state is saved on the disk in
+a statefile. An entry of following form can be used to change the location of
+statefile:
+.sp
+.in +2
+.nf
+\fBstatefile\fR \fIpathname\fR
+.fi
+.in -2
+
+.sp
+.LP
+where \fIpathname\fR identifies a block special file, for example,
+\fB/dev/dsk/c1t0d0s2\fR, or is the absolute pathname of a local \fBufs\fR file.
+If the pathname specifies a block special file, it can be a symbolic link as
+long as it does not have a file system mounted on it. If pathname specifies a
+local ufs file, it cannot be a symbolic link. If the file does not exist, it is
+created during the \fBsuspend\fR operation. All the directory components of the
+path must already exist.
+.sp
+.LP
+The actual size of statefile depends on a variety of factors, including the
+size of system memory, the number of loadable drivers/modules in use, the
+number and type of processes running, and the amount of user memory that has
+been locked down. It is recommended that statefile be placed on a file system
+with at least 10 Mbytes of free space. In case there is no statefile entry at
+boot time, an appropriate new entry is automatically created by the system.
+.SH EXAMPLES
+\fBExample 1 \fRDisabling Automatic Device Power Management
+.sp
+.LP
+To disable automatic device Power Management, change the following line in the
+\fB/etc/power.conf\fR file
+
+.sp
+.in +2
+.nf
+autopm default
+.fi
+.in -2
+
+.sp
+.LP
+to read:
+
+.sp
+.in +2
+.nf
+autopm disable
+.fi
+.in -2
+
+.sp
+.LP
+Then run \fBpmconfig\fR or reboot. See \fBpmconfig\fR(8) for more information.
+
+.SH ATTRIBUTES
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface stability Committed
+.TE
+
+.SH SEE ALSO
+.BR uadmin (2),
+.BR libdevinfo (3LIB),
+.BR cpr (4),
+.BR pm (4D),
+.BR ldterm (4M),
+.BR attributes (7),
+.BR pmconfig (8),
+.BR powerd (8),
+.BR pm-components (9P),
+.BR removable-media (9P)
+.sp
+.LP
+\fIWriting Device Drivers\fR
+.SH NOTES
+SPARC desktop models first shipped after October 1, 1995 and before July 1,
+1999 comply with the United States Environmental Protection Agency's \fIEnergy
+Star Memorandum of Understanding #2\fR guidelines and have \fBautoshutdown\fR
+enabled by default after 30 minutes of system idleness. This is achieved by
+\fBdefault\fR keyword of \fBautoshutdown\fR entry behave as \fBshutdown\fR for
+these machines. The user is prompted to confirm this default behavior at system
+installation reboot.
+.sp
+.LP
+SPARC desktop models first shipped after July 1, 1999 comply with the United
+States Environmental Protection Agency's \fIEnergy Star Memorandum of
+Understanding #3\fR guidelines and have \fBautoshutdown\fR disabled by default,
+with \fBautopm\fR enabled after 30 minutes of idleness. This is achieved by
+interpreting default keyword of \fBautopm\fR entry behavior as \fBenabled\fR
+for these machines. User is not prompted to confirm this default behavior.
+.sp
+.LP
+To determine the version of the EPA's \fIEnergy Star Memorandum\fR applicable
+to your machine, use:
+.sp
+.in +2
+.nf
+prtconf -pv | grep -i energystar
+.fi
+.in -2
+
+.sp
+.LP
+Absence of a property indicates no Energy Star guidelines are applicable to
+your machine.
+.sp
+.LP
+System Power Management (suspend-resume) is currently supported only on a
+limited set of hardware platforms.
+.sp
+.LP
+Sun X86 desktop models first shipped after July 1, 1999 fall within United
+States Environmental Protection Agency's \fIEnergy Star Memorandum of
+Understanding #3\fR guidelines and have autopm and autoS3 enabled by default,
+with entry into S3 after 30 minutes of idleness. This is achieved by
+interpreting the default keyword of the autopm and autoS3 behaviors as enabled
+for these machines. You are not prompted to confirm the default behavior. On
+all other X86 systems, the autopm and autoS3 default keywords are interpreted
+as \fBdisable\fR.
diff --git a/usr/src/man/man5/printers.5 b/usr/src/man/man5/printers.5
new file mode 100644
index 0000000000..a48c9e80b7
--- /dev/null
+++ b/usr/src/man/man5/printers.5
@@ -0,0 +1,315 @@
+'\" te
+.\" Copyright (C) 2006, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PRINTERS 5 "Feb 25, 2017"
+.SH NAME
+printers \- user-configurable printer alias database
+.SH SYNOPSIS
+.LP
+.nf
+$HOME/.printers
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fB$HOME/.printers\fR file is a simplified version of the system
+\fB/etc/printers.conf\fR file. See \fBprinters.conf\fR(5). Users create the
+\fB$HOME/.printers\fR file in their home directory. This optional file is
+customizable by the user.
+.sp
+.LP
+The \fB$HOME/.printers\fR file performs the following functions:
+.RS +4
+.TP
+1.
+Sets personal aliases for all print commands.
+.RE
+.RS +4
+.TP
+2.
+Sets the interest list for the \fBlpget\fR, \fBlpstat\fR, and \fBcancel\fR
+commands. See \fBlpget\fR(8), \fBlpstat\fR(1) and \fBcancel\fR(1).
+.RE
+.RS +4
+.TP
+3.
+Sets the default printer for the \fBlp\fR, \fBlpr\fR, \fBlpq\fR, and
+\fBlprm\fR commands. See \fBlp\fR(1), \fBlpr\fR(1B), \fBlpq\fR(1B), and
+\fBlprm\fR(1B).
+.RE
+.SS "Entries"
+.LP
+Use a line or full screen editor to create or modify the \fB$HOME/.printers\fR
+file.
+.sp
+.LP
+Each entry in \fB$HOME/.printers\fR describes one destination. Entries are one
+line consisting of two fields separated by either BLANKs or TABs and terminated
+by a NEWLINE. Format for an entry in \fB$HOME/.printers\fR varies according to
+the purpose of the entry.
+.sp
+.LP
+Empty lines can be included for readability. Entries can continue on to
+multiple lines by adding a backslash (`\fB\e\fR\&') as the last character in
+the line. The \fB$HOME/.printers\fR file can include comments. Comments have a
+pound sign (`\fB#\fR') as the first character in the line, and are terminated
+by a NEWLINE.
+.SS "Setting Personal Aliases"
+.LP
+Specify the alias or aliases in the first field. Separate multiple aliases by a
+pipe sign (`\fB|\fR'). Specify the destination in the second field. A
+destination names a printer or class of printers, See \fBlpadmin\fR(8).
+Specify the destination using atomic, URI-style
+(\fIscheme\fR\fB://\fR\fBendpoint\fR), or POSIX-style
+(\fIserver\fR\fB:\fR\fIdestination\fR) names. See \fBprinters.conf\fR(5) for
+information regarding the naming conventions for destination names.
+.SS "Setting the Interest List for lpget, lpstat and cancel"
+.LP
+Specify \fB_all\fR in the first field. Specify the list of destinations for the
+interest list in the second field. Separate each destinations by a comma
+(`\fB,\fR'). Specify destinations using atomic, URI-style
+(\fIscheme\fR\fB://\fR\fBendpoint\fR), or POSIX-style
+(\fIserver\fR\fB:\fR\fIdestination\fR) names. See \fBprinters.conf\fR(5) for
+information regarding the naming conventions for destination names. This list
+of destinations can refer to an alias defined in \fB$HOME/.printers\fR.
+.SS "Setting the Default Destination"
+.LP
+Specify \fB_default\fR in the first field. Specify the default destination in
+the second field. Specify the default destination using atomic, URI-style
+(\fIscheme\fR\fB://\fR\fBendpoint\fR), or POSIX-style
+(\fIserver\fR\fB:\fR\fIdestination\fR) names. See \fBprinters.conf\fR(5) for
+information regarding the naming conventions for destination names. The default
+destination can refer to an alias defined in \fB$HOME/.printers\fR.
+.SS "Locating Destination Information"
+.LP
+The print client commands locate destination information based on the
+"printers" database entry in the \fB/etc/nsswitch.conf\fR file. See
+\fBnsswitch.conf\fR(5).
+.SS "Locating the Personal Default Destination"
+.LP
+The default destination is located differently depending on the command.
+.sp
+.LP
+The \fBlp\fR command locates the default destination in the following order:
+.RS +4
+.TP
+1.
+\fBlp\fR command's \fB-d\fR \fIdestination\fR option.
+.RE
+.RS +4
+.TP
+2.
+\fBLPDEST\fR environment variable.
+.RE
+.RS +4
+.TP
+3.
+\fBPRINTER\fR environment variable.
+.RE
+.RS +4
+.TP
+4.
+\fB_default\fR destination in \fB$HOME/.printers\fR.
+.RE
+.RS +4
+.TP
+5.
+\fB_default\fR destination in \fB/etc/printers.conf\fR.
+.RE
+.sp
+.LP
+The \fBlpr\fR, \fBlpq\fR, and \fBlprm\fR commands locate the default
+destination in the following order:
+.RS +4
+.TP
+1.
+\fBlpr\fR command's \fB-P\fR \fIdestination\fR option.
+.RE
+.RS +4
+.TP
+2.
+\fBPRINTER\fR environment variable.
+.RE
+.RS +4
+.TP
+3.
+\fBLPDEST\fR environment variable.
+.RE
+.RS +4
+.TP
+4.
+\fB_default\fR destination in \fB$HOME/.printers\fR.
+.RE
+.RS +4
+.TP
+5.
+\fB_default\fR destination in \fB/etc/printers.conf\fR.
+.RE
+.SS "Locating the Interest List for lpget, lpstat, and cancel"
+.LP
+The \fBlpget\fR, \fBlpstat\fR, and \fBcancel\fR commands locate the interest
+list in the following order:
+.RS +4
+.TP
+1.
+\fB_all\fR list in \fB$HOME/.printers\fR.
+.RE
+.RS +4
+.TP
+2.
+\fB_all\fR list in \fB/etc/printers.conf\fR.
+.RE
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRSetting the Interest List
+.sp
+.LP
+The following entry sets the interest list to destinations \fBps\fR,
+\fBsecure\fR, and \fBdog\fR at server \fBwest\fR and \fBfinance_ps\fR:
+
+.sp
+.in +2
+.nf
+\fB_all ps,secure,west:dog,lpd://server/printers/queue\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRSetting Aliases to a Printer
+.sp
+.LP
+The following entry sets the aliases \fBps\fR, \fBlp\fR, and \fBlw\fR to
+\fBsparc_printer\fR:
+
+.sp
+.in +2
+.nf
+\fBps|lp|lw sparc_printer\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRSetting an Alias as a Default Destination
+.sp
+.LP
+The following entry sets the alias \fBpcl\fR to \fBhplj\fR and sets it as the
+default destination:
+
+.sp
+.in +2
+.nf
+\fBpcl|_default hplj\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 4 \fRSetting an Alias to a Server Destination
+.sp
+.LP
+The following entry sets the alias \fBsecure\fR to destination \fBcatalpa\fR at
+server \fBtabloid\fR:
+
+.sp
+.in +2
+.nf
+\fBsecure tabloid:catalpa\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 5 \fRSetting an Alias to a Site Destination
+.sp
+.LP
+The following entry sets the alias \fBinsecure\fR to destination \fBlegal_ps\fR
+using IPP:
+
+.sp
+.in +2
+.nf
+\fBinsecure ipp://server/printers/legal_ps\fR
+.fi
+.in -2
+.sp
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/etc/printers.conf\fR\fR
+.ad
+.RS 24n
+System printer configuration database
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB$HOME/.printers\fR\fR
+.ad
+.RS 24n
+User-configurable printer database
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBou=printers\fR\fR
+.ad
+.RS 24n
+LDAP version of \fB/etc/printers.conf\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBprinters.conf.byname\fR\fR
+.ad
+.RS 24n
+\fBNIS\fR version of \fB/etc/printers.conf\fR
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Stable
+.TE
+
+.SH SEE ALSO
+.LP
+.BR cancel (1),
+.BR lp (1),
+.BR lpstat (1),
+.BR lpq (1B),
+.BR lpr (1B),
+.BR lprm (1B),
+.BR nsswitch.conf (5),
+.BR printers.conf (5),
+.BR attributes (7),
+.BR standards (7),
+.BR lpadmin (8),
+.BR lpget (8)
+.sp
+.LP
+\fISystem Administration Guide: Basic Administration\fR
+.SH NOTES
+.LP
+\fB$HOME/.printers\fR is referenced by the printing commands before further
+name resolution is made in \fB/etc/printers.conf\fR or the name service. If the
+alias references a destination defined in \fB/etc/printers.conf\fR, it is
+possible that the destination is defined differently on different systems. This
+could cause output to be sent to an unintended destination if the user is
+logged in to a different system.
diff --git a/usr/src/man/man5/printers.conf.5 b/usr/src/man/man5/printers.conf.5
new file mode 100644
index 0000000000..1a2325e3c4
--- /dev/null
+++ b/usr/src/man/man5/printers.conf.5
@@ -0,0 +1,456 @@
+'\" te
+.\" Copyright (C) 2006, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PRINTERS.CONF 5 "Feb 25, 2017"
+.SH NAME
+printers.conf \- system printing configuration database
+.SH SYNOPSIS
+.LP
+.nf
+\fB/etc/printers.conf\fR
+.fi
+
+.SS "LDAP"
+.LP
+.nf
+\fBou=printers\fR
+.fi
+
+.SS "NIS"
+.LP
+.nf
+\fBprinters.conf.byname\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBprinters.conf\fR file is the system printing configuration database.
+System administrators use \fBprinters.conf\fR to describe destinations for the
+print client commands and the print protocol adaptor. A destination names a
+printer or class of printers. See \fBlpadmin\fR(8). The \fBLP\fR print spooler
+uses private \fBLP\fR configuration data for represented in the
+\fBprinters.conf\fR database.
+.SS "Entries"
+.LP
+Each entry in \fBprinters.conf\fR describes one destination. Entries are one
+line consisting of any number of fields separated by colons (`\fB:\fR') and
+terminated by a NEWLINE. The first field of each entry specifies the name of
+the destination and aliases to which the entry describes. Specify one or more
+names or aliases of the destination in this first field. Specify the
+destination using atomic names. URI-style and POSIX-style names are not
+acceptable. See \fBstandards\fR(7). Separate destination names by pipe signs
+(`\fB|\fR').
+.sp
+.LP
+Two destination names are reserved for special use in the first entry. Use
+\fB_all\fR to specify the interest list for \fBlpget\fR, \fBlpstat\fR, and
+\fBcancel\fR. Use \fB_default\fR to specify the default destination.
+.sp
+.LP
+The remaining fields in an entry are \fIkey\fR\fB=\fR\fIvalue\fR pairs. See
+\fBSpecifying Configuration Options\fR for details regarding
+\fIkey\fR\fB=\fR\fIvalue\fR pairs.
+.sp
+.LP
+Empty lines can be included for readability. Entries can continue on to
+multiple lines by adding a backslash (`\fB\e\fR\&') as the last character in
+the line. \fBprinters.conf\fR can include comments. Comments have a pound sign
+(`\fB#\fR') as the first character in the line, and are terminated by a
+NEWLINE. Use the \fBlpset\fR command to create or modify \fBprinters.conf\fR.
+See \fBlpset\fR(8). Do \fBnot\fR make changes in \fBprinters.conf\fR by using
+an editor.
+.SS "Specifying Configuration Options"
+.LP
+\fIkey\fR\fB=\fR\fIvalue\fR pairs are configuration options defined by the
+system administrator. \fIkey\fR and \fIvalue\fR can be of arbitrary length.
+Separate \fIkey\fR and \fIvalue\fR by the equal (`\fB='\fR) character.
+.SS "Client/Server Configuration Options"
+.LP
+The following client/server configuration options (represented as
+\fIkey\fR\fB=\fR\fIvalue\fR pairs) are supported:
+.sp
+.ne 2
+.na
+\fB\fBprinter-uri-supported=\fR\fIscheme\fR\fB://\fR\fIendpoint\fR\fR
+.ad
+.sp .6
+.RS 4n
+Provides the information necessary to contact the print service for the entry.
+The scheme generally identifies the print service or protocol to use. Currently
+this is limited to \fBlpsched\fR, \fBipp\fR, and \fBlpd\fR but might be
+expanded in the future. Each of these schemes imposes a set of restrictions for
+specifying the endpoint and the functionality provided.
+.sp
+.ne 2
+.na
+\fB\fBlpsched://\fR\fIlocalhost\fR\fB/printers/queue\fR\fR
+.ad
+.sp .6
+.RS 4n
+ This is URI form is used for print queues that are configured under the local
+LP service.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBipp://\fR\fIserver\fR[:\fIport\fR\fB]/printers/queue\fR\fR
+.ad
+.br
+.na
+\fB\fBhttp://server:631/printers/queue\fR\fR
+.ad
+.br
+.na
+\fB\fBipp://\fR\fIserver\fR\fB[:\fR\fIport\fR\fB]/...\fR\fR
+.ad
+.sp .6
+.RS 4n
+This URI form is used for print queues that are remotely accessible by way of
+the Internet Print Protocol. This protocol is the preferred method of accessing
+remote print queues because it provides the greatest functionality over the
+wire. The \fBipp\fR uri scheme is specified in the internet print protocol
+specifications and is much more free form than listed above. The actual content
+and format of the endpoint is determined by the remote print service.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBlpd://\fR\fIserver\fR\fB/printers/queue[#Solaris]\fR\fR
+.ad
+.sp .6
+.RS 4n
+This URI form is used for print queues that are remotely accessible by way of
+the BSD Print Protocol. Though limited in capability, this protocol is widely
+used between client and server. It provides maximum interoperability with
+remote print services. When used to communicate with print services on a
+Solaris print server, the optional \fB#Solaris\fR component of the URI
+indicates that Solaris protocol extensions can be used during print job
+submission.
+.RE
+
+If an entry does not contain a printer-uri-supported key/value pair, the
+bsdaddr value is converted to its equivalent uri form and a
+printer-uri-supported key/value pair is added to the resulting data returned to
+applications requesting printer configuration data.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBbsdaddr=\fR\fIserver\fR\fB,\fR\fIdestination\fR[\fB,Solaris\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Sets the server and destination name. Sets if the client generates protocol
+extensions for use with the \fBlp\fR command (see \fBlp\fR(1)). \fBSolaris\fR
+specifies a Solaris print server extension. If \fBSolaris\fR is not specified,
+no protocol extensions are generated. \fIserver\fR is the name of the host
+containing the queue for \fIdestination\fR. \fIdestination\fR is the atomic
+name by which the server knows the destination. If the configuration file
+contents are to be shared with legacy systems (Solaris 2.6 - Solaris 10), this
+key/value pair should be provided for backward compatibility.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBuse=\fR\fIdestination\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets the destination to continue searching for configuration information.
+\fIdestination\fR is an atomic, URI-style (\fIscheme\fR://\fIendpoint\fR), or
+Posix-style name (\fBserver\fR:\fBprinter\fR).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBall=\fR\fIdestination_list\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets the interest list for the \fBlpget\fR, \fBlpstat\fR, and \fBcancel\fR
+commands. \fIdestination_list\fR is a comma-separated list of destinations.
+Specify \fIdestination\fR using atomic, URI-style
+(\fIscheme\fR://\fIendpoint\fR), or Posix-style names (\fBserver:printer\fR).
+See \fBlpget\fR(8), \fBlpstat\fR(1), and \fBcancel\fR(1).
+.RE
+
+.SS "LP Server Options"
+.LP
+The following \fBLP\fR configuration options (represented as
+\fIkey\fR\fB=\fR\fIvalue\fR pairs) are supported:
+.sp
+.ne 2
+.na
+\fB\fBuser-equivalence=\fR\fBtrue\fR|\fBfalse\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets whether or not usernames are considered equivalent when cancelling a print
+request submitted from a different host in a networked environment. \fBtrue\fR
+means that usernames are considered equivalent, and permits users to cancel a
+print requests submitted from a different host. \fBuser-equivalence\fR is set
+to \fBfalse\fR by default. \fBfalse\fR means that usernames are not considered
+equivalent, and does not permit users cancel a print request submitted from a
+different host. If \fBuser-equivalence\fR is set to \fBfalse\fR, print requests
+can only be cancelled by the users on the host on which the print request was
+generated or by the superuser on the print server.
+.RE
+
+.SS "Print Queue Name Resolution"
+.LP
+Applications needing to resolve print queue names (destinations) to the
+associated print service and communications endpoint make use of a specific
+name resolution ordering. Destination names in URI and POSIX form are complete
+unto themselves and require no further resolution. Names in atomic form are
+resolved based on the \fBprinters\fR database entry in the /etc/nsswitch.conf
+file. See nsswitch.conf(5)
+.SS "Locating the Personal Default Destination"
+.LP
+The default destination is located differently depending on the command.
+.sp
+.LP
+The \fBlp\fR command locates the default destination in the following order:
+.RS +4
+.TP
+1.
+\fBlp\fR command's \fB-d\fR \fIdestination\fR option.
+.RE
+.RS +4
+.TP
+2.
+\fBLPDEST\fR environment variable.
+.RE
+.RS +4
+.TP
+3.
+\fBPRINTER\fR environment variable.
+.RE
+.RS +4
+.TP
+4.
+\fB_default\fR destination in \fB$HOME/.printers\fR.
+.RE
+.RS +4
+.TP
+5.
+\fB_default\fR destination in \fB/etc/printers.conf\fR.
+.RE
+.sp
+.LP
+The \fBlpr\fR, \fBlpq\fR, and \fBlprm\fR commands locate the default
+destination in the following order:
+.RS +4
+.TP
+1.
+\fBlpr\fR command's \fB-P\fR \fIdestination\fR option.
+.RE
+.RS +4
+.TP
+2.
+\fBPRINTER\fR environment variable.
+.RE
+.RS +4
+.TP
+3.
+\fBLPDEST\fR environment variable.
+.RE
+.RS +4
+.TP
+4.
+\fB_default\fR destination in \fB$HOME/.printers\fR.
+.RE
+.RS +4
+.TP
+5.
+\fB_default\fR destination in \fB/etc/printers.conf\fR.
+.RE
+.SS "Locating the Interest List for lpstat, lpget, and cancel"
+.LP
+The \fBlpget\fR, \fBlpstat\fR, and \fBcancel\fR commands locate the interest
+list in the following order:
+.RS +4
+.TP
+1.
+\fB_all\fR list in \fB$HOME/.printers\fR.
+.RE
+.RS +4
+.TP
+2.
+\fB_all\fR list in \fB/etc/printers.conf\fR.
+.RE
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRSetting the Interest List
+.sp
+.LP
+The following entry sets the interest list for the \fBlpget\fR, \fBlpstat\fR
+and \fBcancel\fR commands to \fBprinter1\fR, \fBprinter2\fR and \fBprinter3\fR:
+
+.sp
+.in +2
+.nf
+\fB_all:all=printer1,printer2,printer3\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRSetting the Server Name
+.sp
+.LP
+The following entry sets the server name to \fBserver\fR and printer name
+to \fBps_printer\fR for destinations \fBprinter1\fR and \fBps\fR. It does not
+generate BSD protocol extensions.
+
+.sp
+.in +2
+.nf
+\fBprinter1|ps:bsdaddr=server,ps_printer\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRSetting Server Name and Destination Name
+.sp
+.LP
+The following entry sets the server name to \fBserver\fR and destination name
+to \fBpcl_printer\fR, for destination \fBprinter2\fR. It also generates
+\fBSolaris\fR protocol extensions.
+
+.sp
+.in +2
+.nf
+\fBprinter2:printer-uri-supported=lpd\://server/printers/pcl_printer#Solaris\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 4 \fRSetting Server Name and Destination Name with Continuous Search
+.sp
+.LP
+The following entry sets the server name to \fBserver\fR and destination name
+to \fBnew_printer\fR, for destination \fBprinter3\fR. It also sets the
+\fBprinter3\fR to continue searching for configuration information to printer
+\fBanother_printer\fR.
+
+.sp
+.in +2
+.nf
+\fBprinter3:bsdaddr=server,new_printer:use=another_printer\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 5 \fRSetting Default Destination
+.sp
+.LP
+The following entry sets the default destination to continue searching for
+configuration information to destination \fBprinter1\fR.
+
+.sp
+.in +2
+.nf
+\fB_default:use=printer1\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 6 \fRUsing IPP as the URI
+.sp
+.LP
+The following example uses IPP as the URI:
+
+.sp
+.in +2
+.nf
+\fBprinter4:printer-uri-supported=ipp\e://server/printers/queue\fR
+.fi
+.in -2
+.sp
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/etc/printers.conf\fR\fR
+.ad
+.RS 30n
+System configuration database
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB$HOME/.printers\fR\fR
+.ad
+.RS 30n
+User-configurable printer database
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBou=printers\fR\fR
+.ad
+.RS 30n
+LDAP version of \fB/etc/printers.conf\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBprinters.conf.byname\fR (\fBNIS\fR)\fR
+.ad
+.RS 30n
+\fBNIS\fR version of \fB/etc/printers.conf\fR
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Stability Level Stable
+.TE
+
+.SH SEE ALSO
+.LP
+.BR cancel (1),
+.BR enable (1),
+.BR enable (1),
+.BR lp (1),
+.BR lpstat (1),
+.BR lpq (1B),
+.BR lpr (1B),
+.BR lprm (1B),
+.BR nsswitch.conf (5),
+.BR printers (5),
+.BR attributes (7),
+.BR standards (7),
+.BR accept (8),
+.BR accept (8),
+.BR in.lpd (8),
+.BR lpadmin (8),
+.BR lpget (8),
+.BR lpmove (8),
+.BR lpset (8)
+.sp
+.LP
+\fISystem Administration Guide: Basic Administration\fR
diff --git a/usr/src/man/man5/priv_names.5 b/usr/src/man/man5/priv_names.5
new file mode 100644
index 0000000000..cda1490ac7
--- /dev/null
+++ b/usr/src/man/man5/priv_names.5
@@ -0,0 +1,56 @@
+'\" te
+.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PRIV_NAMES 5 "Nov 24, 2003"
+.SH NAME
+priv_names \- privilege definition file
+.SH SYNOPSIS
+.LP
+.nf
+\fB/etc/security/priv_names\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBpriv_names\fR file, located in \fB/etc/security\fR, defines the
+privileges with which a process can be associated. See \fBprivileges\fR(7) for
+the privilege definitions. In that man page, privileges correspond to privilege
+names in \fBpriv_names\fR as shown in the following examples:
+.sp
+
+.sp
+.TS
+c c
+l l .
+name in privileges(7) Name in \fBpriv_names\fR
+_
+\fBPRIV_FILE_CHOWN\fR \fBfile_chown\fR
+\fBPRIV_FILE_CHOWN_SELF\fR \fBfile_chown_self\fR
+\fBPRIV_FILE_DAC_EXECUTE\fR \fBfile_dac_execute\fR
+.TE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR ppriv (1),
+.BR attributes (7),
+.BR privileges (7)
diff --git a/usr/src/man/man5/privileges.5 b/usr/src/man/man5/privileges.5
deleted file mode 100644
index 8a5e571993..0000000000
--- a/usr/src/man/man5/privileges.5
+++ /dev/null
@@ -1,1376 +0,0 @@
-'\" te
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 2016, Joyent, Inc. All Rights Reserved.
-.\" Copyright 2019 Peter Tribble
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
-.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PRIVILEGES 5 "Aug 26, 2019"
-.SH NAME
-privileges \- process privilege model
-.SH DESCRIPTION
-In illumos, software implements a set of privileges that provide fine-grained
-control over the actions of processes. The possession of a certain privilege
-allows a process to perform a specific set of restricted operations.
-.sp
-.LP
-The change to a primarily privilege-based security model in the
-operating system gives developers an opportunity to restrict processes to those
-privileged operations actually needed instead of all (super-user) or no
-privileges (non-zero UIDs). Additionally, a set of previously unrestricted
-operations now requires a privilege; these privileges are dubbed the "basic"
-privileges and are by default given to all processes.
-.sp
-.LP
-Taken together, all defined privileges with the exception of the "basic"
-privileges compose the set of privileges that are traditionally associated with
-the root user. The "basic" privileges are "privileges" unprivileged processes
-were accustomed to having.
-.sp
-.LP
-The defined privileges are:
-.sp
-.ne 2
-.na
-\fB\fBPRIV_CONTRACT_EVENT\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow a process to request reliable delivery of events to an event endpoint.
-.sp
-Allow a process to include events in the critical event set term of a template
-which could be generated in volume by the user.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_CONTRACT_IDENTITY\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allows a process to set the service FMRI value of a process contract template.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_CONTRACT_OBSERVER\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow a process to observe contract events generated by contracts created and
-owned by users other than the process's effective user ID.
-.sp
-Allow a process to open contract event endpoints belonging to contracts created
-and owned by users other than the process's effective user ID.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_CPC_CPU\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow a process to access per-CPU hardware performance counters.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_DTRACE_KERNEL\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow DTrace kernel-level tracing.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_DTRACE_PROC\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow DTrace process-level tracing. Allow process-level tracing probes to be
-placed and enabled in processes to which the user has permissions.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_DTRACE_USER\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow DTrace user-level tracing. Allow use of the syscall and profile DTrace
-providers to examine processes to which the user has permissions.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_FILE_CHOWN\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow a process to change a file's owner user ID. Allow a process to change a
-file's group ID to one other than the process's effective group ID or one of
-the process's supplemental group IDs.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_FILE_CHOWN_SELF\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow a process to give away its files. A process with this privilege runs as
-if {\fB_POSIX_CHOWN_RESTRICTED\fR} is not in effect.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_FILE_DAC_EXECUTE\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow a process to execute an executable file whose permission bits or ACL
-would otherwise disallow the process execute permission.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_FILE_DAC_READ\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow a process to read a file or directory whose permission bits or ACL would
-otherwise disallow the process read permission.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_FILE_DAC_SEARCH\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow a process to search a directory whose permission bits or ACL would not
-otherwise allow the process search permission.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_FILE_DAC_WRITE\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow a process to write a file or directory whose permission bits or ACL do
-not allow the process write permission. All privileges are required to write
-files owned by UID 0 in the absence of an effective UID of 0.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_FILE_DOWNGRADE_SL\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow a process to set the sensitivity label of a file or directory to a
-sensitivity label that does not dominate the existing sensitivity label.
-.sp
-This privilege is interpreted only if the system is configured with Trusted
-Extensions.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_FILE_FLAG_SET\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allows a process to set immutable, nounlink or appendonly file attributes.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_FILE_LINK_ANY\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow a process to create hardlinks to files owned by a UID different from the
-process's effective UID.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_FILE_OWNER\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow a process that is not the owner of a file to modify that file's access
-and modification times. Allow a process that is not the owner of a directory to
-modify that directory's access and modification times. Allow a process that is
-not the owner of a file or directory to remove or rename a file or directory
-whose parent directory has the "save text image after execution" (sticky) bit
-set. Allow a process that is not the owner of a file to mount a \fBnamefs\fR
-upon that file. Allow a process that is not the owner of a file or directory to
-modify that file's or directory's permission bits or ACL.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_FILE_READ\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow a process to open objects in the filesystem for reading. This
-privilege is not necessary to read from an already open file which was opened
-before dropping the \fBPRIV_FILE_READ\fR privilege.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_FILE_SETID\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow a process to change the ownership of a file or write to a file without
-the set-user-ID and set-group-ID bits being cleared. Allow a process to set the
-set-group-ID bit on a file or directory whose group is not the process's
-effective group or one of the process's supplemental groups. Allow a process to
-set the set-user-ID bit on a file with different ownership in the presence of
-\fBPRIV_FILE_OWNER\fR. Additional restrictions apply when creating or modifying
-a setuid 0 file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_FILE_UPGRADE_SL\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow a process to set the sensitivity label of a file or directory to a
-sensitivity label that dominates the existing sensitivity label.
-.sp
-This privilege is interpreted only if the system is configured with Trusted
-Extensions.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_FILE_WRITE\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow a process to open objects in the filesystem for writing, or otherwise
-modify them. This privilege is not necessary to write to an already open file
-which was opened before dropping the \fBPRIV_FILE_WRITE\fR privilege.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_GRAPHICS_ACCESS\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow a process to make privileged ioctls to graphics devices. Typically only
-an xserver process needs to have this privilege. A process with this privilege
-is also allowed to perform privileged graphics device mappings.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_GRAPHICS_MAP\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow a process to perform privileged mappings through a graphics device.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_HYPRLOFS_CONTROL\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow a process to perform hyprlofs name space management.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_IPC_DAC_READ\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow a process to read a System V IPC Message Queue, Semaphore Set, or Shared
-Memory Segment whose permission bits would not otherwise allow the process read
-permission.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_IPC_DAC_WRITE\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow a process to write a System V IPC Message Queue, Semaphore Set, or Shared
-Memory Segment whose permission bits would not otherwise allow the process
-write permission.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_IPC_OWNER\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow a process that is not the owner of a System V IPC Message Queue,
-Semaphore Set, or Shared Memory Segment to remove, change ownership of, or
-change permission bits of the Message Queue, Semaphore Set, or Shared Memory
-Segment.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_NET_ACCESS\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow a process to open a TCP, UDP, SDP, or SCTP network endpoint. This
-privilege is not necessary to communicate using an existing endpoint already
-opened before dropping the \fBPRIV_NET_ACCESS\fR privilege.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_NET_BINDMLP\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow a process to bind to a port that is configured as a multi-level port
-(MLP) for the process's zone. This privilege applies to both shared address and
-zone-specific address MLPs. See \fBtnzonecfg\fR(\fB4\fR) from the Trusted
-Extensions manual pages for information on configuring MLP ports.
-.sp
-This privilege is interpreted only if the system is configured with Trusted
-Extensions.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_NET_ICMPACCESS\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow a process to send and receive ICMP packets.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_NET_MAC_AWARE\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow a process to set the \fBNET_MAC_AWARE\fR process flag by using
-\fBsetpflags\fR(2). This privilege also allows a process to set the
-\fBSO_MAC_EXEMPT\fR socket option by using \fBsetsockopt\fR(3SOCKET). The
-\fBNET_MAC_AWARE\fR process flag and the \fBSO_MAC_EXEMPT\fR socket option both
-allow a local process to communicate with an unlabeled peer if the local
-process's label dominates the peer's default label, or if the local process
-runs in the global zone.
-.sp
-This privilege is interpreted only if the system is configured with Trusted
-Extensions.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_NET_MAC_IMPLICIT\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow a process to set \fBSO_MAC_IMPLICIT\fR option by using
-\fBsetsockopt\fR(3SOCKET). This allows a privileged process to transmit
-implicitly-labeled packets to a peer.
-.sp
-This privilege is interpreted only if the system is configured with
-Trusted Extensions.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_NET_OBSERVABILITY\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow a process to open a device for just receiving network traffic, sending
-traffic is disallowed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_NET_PRIVADDR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow a process to bind to a privileged port number. The privilege port numbers
-are 1-1023 (the traditional UNIX privileged ports) as well as those ports
-marked as "\fBudp/tcp_extra_priv_ports\fR" with the exception of the ports
-reserved for use by NFS and SMB.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_NET_RAWACCESS\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow a process to have direct access to the network layer.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_PROC_AUDIT\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow a process to generate audit records. Allow a process to get its own audit
-pre-selection information.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_PROC_CHROOT\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow a process to change its root directory.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_PROC_CLOCK_HIGHRES\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow a process to use high resolution timers with very small time values.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_PROC_EXEC\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow a process to call \fBexec\fR(2).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_PROC_FORK\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow a process to call \fBfork\fR(2), \fBfork1\fR(2), or \fBvfork\fR(2).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_PROC_INFO\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow a process to examine the status of processes other than those to which it
-can send signals. Processes that cannot be examined cannot be seen in
-\fB/proc\fR and appear not to exist.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_PROC_LOCK_MEMORY\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow a process to lock pages in physical memory.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_PROC_MEMINFO\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow a process to access physical memory information.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_PROC_OWNER\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow a process to send signals to other processes and inspect and modify the
-process state in other processes, regardless of ownership. When modifying
-another process, additional restrictions apply: the effective privilege set of
-the attaching process must be a superset of the target process's effective,
-permitted, and inheritable sets; the limit set must be a superset of the
-target's limit set; if the target process has any UID set to 0 all privilege
-must be asserted unless the effective UID is 0. Allow a process to bind
-arbitrary processes to CPUs.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_PROC_PRIOUP\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow a process to elevate its priority above its current level.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_PROC_PRIOCNTL\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allows all that PRIV_PROC_PRIOUP allows.
-Allow a process to change its scheduling class to any scheduling class,
-including the RT class.
-.RE
-
-.sp
-.ne 2
-.na
-\fBPRIV_PROC_SECFLAGS\fR
-.ad
-.sp .6
-.RS 4n
-Allow a process to manipulate the secflags of processes (subject to,
-additionally, the ability to signal that process).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_PROC_SESSION\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow a process to send signals or trace processes outside its session.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_PROC_SETID\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow a process to set its UIDs at will, assuming UID 0 requires all privileges
-to be asserted.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_PROC_TASKID\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow a process to assign a new task ID to the calling process.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_PROC_ZONE\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow a process to trace or send signals to processes in other zones. See
-\fBzones\fR(5).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_SYS_ACCT\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow a process to enable and disable and manage accounting through
-\fBacct\fR(2).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_SYS_ADMIN\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow a process to perform system administration tasks such as setting node and
-domain name and managing \fBfmd\fR(1M) and \fBnscd\fR(1M).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_SYS_AUDIT\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow a process to start the (kernel) audit daemon. Allow a process to view and
-set audit state (audit user ID, audit terminal ID, audit sessions ID, audit
-pre-selection mask). Allow a process to turn off and on auditing. Allow a
-process to configure the audit parameters (cache and queue sizes, event to
-class mappings, and policy options).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_SYS_CONFIG\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow a process to perform various system configuration tasks. Allow
-filesystem-specific administrative procedures, such as filesystem configuration
-ioctls, quota calls, creation and deletion of snapshots, and manipulating the
-PCFS bootsector.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_SYS_DEVICES\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow a process to create device special files. Allow a process to successfully
-call a kernel module that calls the kernel \fBdrv_priv\fR(9F) function to check
-for allowed access. Allow a process to open the real console device directly.
-Allow a process to open devices that have been exclusively opened.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_SYS_DL_CONFIG\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow a process to configure a system's datalink interfaces.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_SYS_FS_IMPORT\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow a process to import a potentially untrusted file system (e.g. ZFS recv).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_SYS_IP_CONFIG\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow a process to configure a system's IP interfaces and routes. Allow a
-process to configure network parameters for \fBTCP/IP\fR using \fBndd\fR. Allow
-a process access to otherwise restricted \fBTCP/IP\fR information using
-\fBndd\fR. Allow a process to configure \fBIPsec\fR. Allow a process to pop
-anchored \fBSTREAM\fRs modules with matching \fBzoneid\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_SYS_IPC_CONFIG\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow a process to increase the size of a System V IPC Message Queue buffer.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_SYS_IPTUN_CONFIG\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow a process to configure IP tunnel links.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_SYS_LINKDIR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow a process to unlink and link directories.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_SYS_MOUNT\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow a process to mount and unmount filesystems that would otherwise be
-restricted (that is, most filesystems except \fBnamefs\fR). Allow a process to
-add and remove swap devices.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_SYS_NET_CONFIG\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow a process to do all that \fBPRIV_SYS_IP_CONFIG\fR,
-\fBPRIV_SYS_DL_CONFIG\fR, and \fBPRIV_SYS_PPP_CONFIG\fR allow, plus the
-following: use the \fBrpcmod\fR STREAMS module and insert/remove STREAMS
-modules on locations other than the top of the module stack.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_SYS_NFS\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow a process to provide NFS service: start NFS kernel threads, perform NFS
-locking operations, bind to NFS reserved ports: ports 2049 (\fBnfs\fR) and port
-4045 (\fBlockd\fR).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_SYS_PPP_CONFIG\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow a process to create, configure, and destroy PPP instances with pppd(1M)
-\fBpppd\fR(1M) and control PPPoE plumbing with \fBsppptun\fR(1M)sppptun(1M).
-This privilege is granted by default to exclusive IP stack instance zones.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_SYS_RES_BIND\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allows a process to bind processes to processor sets.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_SYS_RES_CONFIG\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allows all that PRIV_SYS_RES_BIND allows.
-Allow a process to create and delete processor sets, assign CPUs to processor
-sets and override the \fBPSET_NOESCAPE\fR property. Allow a process to change
-the operational status of CPUs in the system using \fBp_online\fR(2). Allow a
-process to configure filesystem quotas. Allow a process to configure resource
-pools and bind processes to pools.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_SYS_RESOURCE\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow a process to exceed the resource limits imposed on it by
-\fBsetrlimit\fR(2) and \fBsetrctl\fR(2).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_SYS_SMB\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow a process to provide NetBIOS or SMB services: start SMB kernel threads or
-bind to NetBIOS or SMB reserved ports: ports 137, 138, 139 (NetBIOS) and 445
-(SMB).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_SYS_SUSER_COMPAT\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow a process to successfully call a third party loadable module that calls
-the kernel \fBsuser()\fR function to check for allowed access. This privilege
-exists only for third party loadable module compatibility and is not used by
-illumos.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_SYS_TIME\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow a process to manipulate system time using any of the appropriate system
-calls: \fBstime\fR(2), \fBadjtime\fR(2), and \fBntp_adjtime\fR(2).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_SYS_TRANS_LABEL\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow a process to translate labels that are not dominated by the process's
-sensitivity label to and from an external string form.
-.sp
-This privilege is interpreted only if the system is configured with Trusted
-Extensions.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_VIRT_MANAGE\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allows a process to manage virtualized environments such as \fBxVM\fR(5).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_WIN_COLORMAP\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow a process to override colormap restrictions.
-.sp
-Allow a process to install or remove colormaps.
-.sp
-Allow a process to retrieve colormap cell entries allocated by other processes.
-.sp
-This privilege is interpreted only if the system is configured with Trusted
-Extensions.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_WIN_CONFIG\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow a process to configure or destroy resources that are permanently retained
-by the X server.
-.sp
-Allow a process to use SetScreenSaver to set the screen saver timeout value
-.sp
-Allow a process to use ChangeHosts to modify the display access control list.
-.sp
-Allow a process to use GrabServer.
-.sp
-Allow a process to use the SetCloseDownMode request that can retain window,
-pixmap, colormap, property, cursor, font, or graphic context resources.
-.sp
-This privilege is interpreted only if the system is configured with Trusted
-Extensions.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_WIN_DAC_READ\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow a process to read from a window resource that it does not own (has a
-different user ID).
-.sp
-This privilege is interpreted only if the system is configured with Trusted
-Extensions.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_WIN_DAC_WRITE\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow a process to write to or create a window resource that it does not own
-(has a different user ID). A newly created window property is created with the
-window's user ID.
-.sp
-This privilege is interpreted only if the system is configured with Trusted
-Extensions.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_WIN_DEVICES\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow a process to perform operations on window input devices.
-.sp
-Allow a process to get and set keyboard and pointer controls.
-.sp
-Allow a process to modify pointer button and key mappings.
-.sp
-This privilege is interpreted only if the system is configured with Trusted
-Extensions.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_WIN_DGA\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow a process to use the direct graphics access (DGA) X protocol extensions.
-Direct process access to the frame buffer is still required. Thus the process
-must have MAC and DAC privileges that allow access to the frame buffer, or the
-frame buffer must be allocated to the process.
-.sp
-This privilege is interpreted only if the system is configured with Trusted
-Extensions.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_WIN_DOWNGRADE_SL\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow a process to set the sensitivity label of a window resource to a
-sensitivity label that does not dominate the existing sensitivity label.
-.sp
-This privilege is interpreted only if the system is configured with Trusted
-Extensions.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_WIN_FONTPATH\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow a process to set a font path.
-.sp
-This privilege is interpreted only if the system is configured with Trusted
-Extensions.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_WIN_MAC_READ\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow a process to read from a window resource whose sensitivity label is not
-equal to the process sensitivity label.
-.sp
-This privilege is interpreted only if the system is configured with Trusted
-Extensions.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_WIN_MAC_WRITE\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow a process to create a window resource whose sensitivity label is not
-equal to the process sensitivity label. A newly created window property is
-created with the window's sensitivity label.
-.sp
-This privilege is interpreted only if the system is configured with Trusted
-Extensions.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_WIN_SELECTION\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow a process to request inter-window data moves without the intervention of
-the selection confirmer.
-.sp
-This privilege is interpreted only if the system is configured with Trusted
-Extensions.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_WIN_UPGRADE_SL\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allow a process to set the sensitivity label of a window resource to a
-sensitivity label that dominates the existing sensitivity label.
-.sp
-This privilege is interpreted only if the system is configured with Trusted
-Extensions.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPRIV_XVM_CONTROL\fR\fR
-.ad
-.sp .6
-.RS 4n
-Allows a process access to the \fBxVM\fR(5) control devices for managing guest
-domains and the hypervisor. This privilege is used only if booted into xVM on
-x86 platforms.
-.RE
-
-.sp
-.LP
-Of the privileges listed above, the privileges \fBPRIV_FILE_LINK_ANY\fR,
-\fBPRIV_PROC_INFO\fR, \fBPRIV_PROC_SESSION\fR, \fBPRIV_PROC_FORK\fR,
-\fBPRIV_FILE_READ\fR, \fBPRIV_FILE_WRITE\fR, \fBPRIV_NET_ACCESS\fR and
-\fBPRIV_PROC_EXEC\fR are considered "basic" privileges. These are privileges
-that used to be always available to unprivileged processes. By default,
-processes still have the basic privileges.
-.sp
-.LP
-The privileges \fBPRIV_PROC_SETID\fR and \fBPRIV_PROC_AUDIT\fR must be present
-in the Limit set (see below) of a process in order for set-uid root \fBexec\fRs
-to be successful, that is, get an effective UID of 0 and additional privileges.
-.sp
-.LP
-The privilege implementation in illumos extends the process credential with
-four privilege sets:
-.sp
-.ne 2
-.na
-\fBI, the inheritable set\fR
-.ad
-.RS 26n
-The privileges inherited on \fBexec\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBP, the permitted set\fR
-.ad
-.RS 26n
-The maximum set of privileges for the process.
-.RE
-
-.sp
-.ne 2
-.na
-\fBE, the effective set\fR
-.ad
-.RS 26n
-The privileges currently in effect.
-.RE
-
-.sp
-.ne 2
-.na
-\fBL, the limit set\fR
-.ad
-.RS 26n
-The upper bound of the privileges a process and its offspring can obtain.
-Changes to L take effect on the next \fBexec\fR.
-.RE
-
-.sp
-.LP
-The sets I, P and E are typically identical to the basic set of privileges for
-unprivileged processes. The limit set is typically the full set of privileges.
-.sp
-.LP
-Each process has a Privilege Awareness State (PAS) that can take the value PA
-(privilege-aware) and NPA (not-PA). PAS is a transitional mechanism that allows
-a choice between full compatibility with the old superuser model and completely
-ignoring the effective UID.
-.sp
-.LP
-To facilitate the discussion, we introduce the notion of "observed effective
-set" (oE) and "observed permitted set" (oP) and the implementation sets iE and
-iP.
-.sp
-.LP
-A process becomes privilege-aware either by manipulating the effective,
-permitted, or limit privilege sets through \fBsetppriv\fR(2) or by using
-\fBsetpflags\fR(2). In all cases, oE and oP are invariant in the process of
-becoming privilege-aware. In the process of becoming privilege-aware, the
-following assignments take place:
-.sp
-.in +2
-.nf
-iE = oE
-iP = oP
-.fi
-.in -2
-
-.sp
-.LP
-When a process is privilege-aware, oE and oP are invariant under UID changes.
-When a process is not privilege-aware, oE and oP are observed as follows:
-.sp
-.in +2
-.nf
-oE = euid == 0 ? L : iE
-oP = (euid == 0 || ruid == 0 || suid == 0) ? L : iP
-.fi
-.in -2
-
-.sp
-.LP
-When a non-privilege-aware process has an effective UID of 0, it can exercise
-the privileges contained in its limit set, the upper bound of its privileges.
-If a non-privilege-aware process has any of the UIDs 0, it appears to be
-capable of potentially exercising all privileges in L.
-.sp
-.LP
-It is possible for a process to return to the non-privilege aware state using
-\fBsetpflags()\fR. The kernel always attempts this on \fBexec\fR(2). This
-operation is permitted only if the following conditions are met:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-If any of the UIDs is equal to 0, P must be equal to L.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-If the effective UID is equal to 0, E must be equal to L.
-.RE
-.sp
-.LP
-When a process gives up privilege awareness, the following assignments take
-place:
-.sp
-.in +2
-.nf
-if (euid == 0) iE = L & I
-if (any uid == 0) iP = L & I
-.fi
-.in -2
-
-.sp
-.LP
-The privileges obtained when not having a UID of \fB0\fR are the inheritable
-set of the process restricted by the limit set.
-.sp
-.LP
-Only privileges in the process's (observed) effective privilege set allow the
-process to perform restricted operations. A process can use any of the
-privilege manipulation functions to add or remove privileges from the privilege
-sets. Privileges can be removed always. Only privileges found in the permitted
-set can be added to the effective and inheritable set. The limit set cannot
-grow. The inheritable set can be larger than the permitted set.
-.sp
-.LP
-When a process performs an \fBexec\fR(2), the kernel first tries to relinquish
-privilege awareness before making the following privilege set modifications:
-.sp
-.in +2
-.nf
-E' = P' = I' = L & I
-L is unchanged
-.fi
-.in -2
-
-.sp
-.LP
-If a process has not manipulated its privileges, the privilege sets effectively
-remain the same, as E, P and I are already identical.
-.sp
-.LP
-The limit set is enforced at \fBexec\fR time.
-.sp
-.LP
-To run a non-privilege-aware application in a backward-compatible manner, a
-privilege-aware application should start the non-privilege-aware application
-with I=basic.
-.sp
-.LP
-For most privileges, absence of the privilege simply results in a failure. In
-some instances, the absence of a privilege can cause system calls to behave
-differently. In other instances, the removal of a privilege can force a set-uid
-application to seriously malfunction. Privileges of this type are considered
-"unsafe". When a process is lacking any of the unsafe privileges from its limit
-set, the system does not honor the set-uid bit of set-uid root applications.
-The following unsafe privileges have been identified: \fBproc_setid\fR,
-\fBsys_resource\fR and \fBproc_audit\fR.
-.SS "Privilege Escalation"
-In certain circumstances, a single privilege could lead to a process gaining
-one or more additional privileges that were not explicitly granted to that
-process. To prevent such an escalation of privileges, the security policy
-requires explicit permission for those additional privileges.
-.sp
-.LP
-Common examples of escalation are those mechanisms that allow modification of
-system resources through "raw" interfaces; for example, changing kernel data
-structures through \fB/dev/kmem\fR or changing files through \fB/dev/dsk/*\fR.
-Escalation also occurs when a process controls processes with more privileges
-than the controlling process. A special case of this is manipulating or
-creating objects owned by UID 0 or trying to obtain UID 0 using
-\fBsetuid\fR(2). The special treatment of UID 0 is needed because the UID 0
-owns all system configuration files and ordinary file protection mechanisms
-allow processes with UID 0 to modify the system configuration. With appropriate
-file modifications, a given process running with an effective UID of 0 can gain
-all privileges.
-.sp
-.LP
-In situations where a process might obtain UID 0, the security policy requires
-additional privileges, up to the full set of privileges. Such restrictions
-could be relaxed or removed at such time as additional mechanisms for
-protection of system files became available. There are no such mechanisms in
-the current release.
-.sp
-.LP
-The use of UID 0 processes should be limited as much as possible. They should
-be replaced with programs running under a different UID but with exactly the
-privileges they need.
-.sp
-.LP
-Daemons that never need to \fBexec\fR subprocesses should remove the
-\fBPRIV_PROC_EXEC\fR privilege from their permitted and limit sets.
-.SS "Assigned Privileges and Safeguards"
-When privileges are assigned to a user, the system administrator could give
-that user more powers than intended. The administrator should consider whether
-safeguards are needed. For example, if the \fBPRIV_PROC_LOCK_MEMORY\fR
-privilege is given to a user, the administrator should consider setting the
-\fBproject.max-locked-memory\fR resource control as well, to prevent that user
-from locking all memory.
-.SS "Privilege Debugging"
-When a system call fails with a permission error, it is not always immediately
-obvious what caused the problem. To debug such a problem, you can use a tool
-called \fBprivilege debugging\fR. When privilege debugging is enabled for a
-process, the kernel reports missing privileges on the controlling terminal of
-the process. (Enable debugging for a process with the \fB-D\fR option of
-\fBppriv\fR(1).) Additionally, the administrator can enable system-wide
-privilege debugging by setting the \fBsystem\fR(4) variable \fBpriv_debug\fR
-using:
-.sp
-.in +2
-.nf
-set priv_debug = 1
-.fi
-.in -2
-
-.sp
-.LP
-On a running system, you can use \fBmdb\fR(1) to change this variable.
-.SS "Privilege Administration"
-Use \fBusermod\fR(1M) or \fBrolemod\fR(1M)
-to assign privileges to or modify privileges for, respectively, a user or a
-role. Use \fBppriv\fR(1) to enumerate the privileges supported on a system and
-\fBtruss\fR(1) to determine which privileges a program requires.
-.SH SEE ALSO
-\fBmdb\fR(1), \fBppriv\fR(1), \fBadd_drv\fR(1M), \fBifconfig\fR(1M),
-\fBlockd\fR(1M), \fBnfsd\fR(1M), \fBpppd\fR(1M), \fBrem_drv\fR(1M),
-\fBsmbd\fR(1M), \fBsppptun\fR(1M), \fBupdate_drv\fR(1M), \fBIntro\fR(2),
-\fBaccess\fR(2), \fBacct\fR(2), \fBacl\fR(2), \fBadjtime\fR(2), \fBaudit\fR(2),
-\fBauditon\fR(2), \fBchmod\fR(2), \fBchown\fR(2), \fBchroot\fR(2),
-\fBcreat\fR(2), \fBexec\fR(2), \fBfcntl\fR(2), \fBfork\fR(2),
-\fBfpathconf\fR(2), \fBgetacct\fR(2), \fBgetpflags\fR(2), \fBgetppriv\fR(2),
-\fBgetsid\fR(2), \fBkill\fR(2), \fBlink\fR(2), \fBmemcntl\fR(2),
-\fBmknod\fR(2), \fBmount\fR(2), \fBmsgctl\fR(2), \fBnice\fR(2),
-\fBntp_adjtime\fR(2), \fBopen\fR(2), \fBp_online\fR(2), \fBpriocntl\fR(2),
-\fBpriocntlset\fR(2), \fBprocessor_bind\fR(2), \fBpset_bind\fR(2),
-\fBpset_create\fR(2), \fBreadlink\fR(2), \fBresolvepath\fR(2), \fBrmdir\fR(2),
-\fBsemctl\fR(2), \fBsetauid\fR(2), \fBsetegid\fR(2), \fBseteuid\fR(2),
-\fBsetgid\fR(2), \fBsetgroups\fR(2), \fBsetpflags\fR(2), \fBsetppriv\fR(2),
-\fBsetrctl\fR(2), \fBsetregid\fR(2), \fBsetreuid\fR(2), \fBsetrlimit\fR(2),
-\fBsettaskid\fR(2), \fBsetuid\fR(2), \fBshmctl\fR(2), \fBshmget\fR(2),
-\fBshmop\fR(2), \fBsigsend\fR(2), \fBstat\fR(2), \fBstatvfs\fR(2),
-\fBstime\fR(2), \fBswapctl\fR(2), \fBsysinfo\fR(2), \fBuadmin\fR(2),
-\fBulimit\fR(2), \fBumount\fR(2), \fBunlink\fR(2), \fButime\fR(2),
-\fButimes\fR(2), \fBbind\fR(3SOCKET), \fBdoor_ucred\fR(3C),
-\fBpriv_addset\fR(3C), \fBpriv_set\fR(3C), \fBpriv_getbyname\fR(3C),
-\fBpriv_getbynum\fR(3C), \fBpriv_set_to_str\fR(3C), \fBpriv_str_to_set\fR(3C),
-\fBsocket\fR(3SOCKET), \fBt_bind\fR(3NSL), \fBtimer_create\fR(3C),
-\fBucred_get\fR(3C), \fBexec_attr\fR(4), \fBproc\fR(4), \fBsystem\fR(4),
-\fBuser_attr\fR(4), \fBxVM\fR(5), \fBddi_cred\fR(9F), \fBdrv_priv\fR(9F),
-\fBpriv_getbyname\fR(9F), \fBpriv_policy\fR(9F), \fBpriv_policy_choice\fR(9F),
-\fBpriv_policy_only\fR(9F)
-.sp
-.LP
-\fISystem Administration Guide: Security Services\fR
diff --git a/usr/src/man/man5/proc.5 b/usr/src/man/man5/proc.5
new file mode 100644
index 0000000000..80adab2f4b
--- /dev/null
+++ b/usr/src/man/man5/proc.5
@@ -0,0 +1,3248 @@
+.\" Copyright 1989 AT&T
+.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 2019, Joyent, Inc.
+.\" Copyright 2020 OmniOS Community Edition (OmniOSce) Association.
+.\"
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.\"
+.Dd May 17, 2020
+.Dt PROC 5
+.Os
+.Sh NAME
+.Nm proc
+.Nd /proc, the process file system
+.Sh DESCRIPTION
+.Pa /proc
+is a file system that provides access to the state of each process
+and light-weight process (lwp) in the system.
+The name of each entry in the
+.Pa /proc
+directory is a decimal number corresponding to a process-ID.
+These entries are themselves subdirectories.
+Access to process state is provided by additional files contained within each
+subdirectory; the hierarchy is described more completely below.
+In this document,
+.Dq Pa /proc file
+refers to a non-directory file within the hierarchy rooted at
+.Pa /proc .
+The owner of each
+.Pa /proc
+file and subdirectory is determined by the user-ID of the process.
+.Pp
+.Pa /proc
+can be mounted on any mount point, in addition to the standard
+.Pa /proc
+mount point, and can be mounted several places at once.
+Such additional mounts are allowed in order to facilitate the confinement of
+processes to subtrees of the file system via
+.Xr chroot 2
+and yet allow such processes access to commands like
+.Xr ps 1 .
+.Pp
+Standard system calls are used to access
+.Pa /proc
+files:
+.Xr open 2 ,
+.Xr close 2 ,
+.Xr read 2 ,
+and
+.Xr write 2
+(including
+.Xr readv 2 ,
+.Xr writev 2 ,
+.Xr pread 2 ,
+and
+.Xr pwrite 2 ) .
+Most files describe process state and can only be opened for reading.
+.Pa ctl
+and
+.Pa lwpctl
+(control) files permit manipulation of process state and can only be opened for
+writing.
+.Pa as
+(address space) files contain the image of the running process and can be
+opened for both reading and writing.
+An open for writing allows process control; a read-only open allows inspection
+but not control.
+In this document, we refer to the process as open for reading or writing if
+any of its associated
+.Pa /proc
+files is open for reading or writing.
+.Pp
+In general, more than one process can open the same
+.Pa /proc
+file at the same time. \fIExclusive\fR \fIopen\fR is an advisory mechanism provided to
+allow controlling processes to avoid collisions with each other.
+A process can obtain exclusive control of a target process, with respect to
+other cooperating processes, if it successfully opens any
+.Pa /proc
+file in the target process for writing (the
+.Pa as
+or
+.Pa ctl
+files, or the
+.Pa lwpctl
+file of any lwp) while specifying
+.Sy O_EXCL
+in the
+.Xr open 2 .
+Such an open will fail if the target process is already open for writing (that
+is, if an
+.Pa as ,
+.Pa ctl ,
+or
+.Pa lwpctl
+file is already open for writing).
+There can be any number of concurrent read-only opens;
+.Sy O_EXCL
+is ignored on opens for reading.
+It is recommended that the first open for writing by a controlling
+process use the
+.Sy O_EXCL
+flag; multiple controlling processes usually result in chaos.
+.Pp
+If a process opens one of its own
+.Pa /proc
+files for writing, the open
+succeeds regardless of
+.Sy O_EXCL
+and regardless of whether some other process has the process open for writing.
+Self-opens do not count when another process attempts an exclusive open.
+(A process cannot exclude a debugger by opening itself for writing and the
+application of a debugger cannot prevent a process from opening itself.)
+All self-opens for writing are forced to be close-on-exec (see the
+.Sy F_SETFD
+operation of
+.Xr fcntl 2 ) .
+.Pp
+Data may be transferred from or to any locations in the address space of the
+traced process by applying
+.Xr lseek 2
+to position the
+.Pa as
+file at the virtual address of interest followed by
+.Xr read 2
+or
+.Xr write 2
+(or by using
+.Xr pread 2
+or
+.Xr pwrite 2
+for the combined operation).
+The address-map files
+.Pa /proc/ Ns Em pid Ns Pa /map
+and
+.Pa /proc/ Ns Em pid Ns Pa /xmap
+can be read to determine the accessible areas (mappings) of the address space.
+.Sy I/O
+transfers may span contiguous mappings.
+An
+.Sy I/O
+request extending into an unmapped area is truncated at the boundary.
+A write request beginning at an unmapped virtual address fails with
+.Er EIO ;
+a read request beginning at an unmapped virtual address returns zero (an
+end-of-file indication).
+.Pp
+Information and control operations are provided through additional files.
+.In procfs.h
+contains definitions of data structures and message formats
+used with these files.
+Some of these definitions involve the use of sets of flags.
+The set types
+.Sy sigset_t ,
+.Sy fltset_t ,
+and
+.Sy sysset_t
+correspond, respectively, to signal, fault, and system call enumerations
+defined in
+.In sys/signal.h ,
+.In sys/fault.h ,
+and
+.In sys/syscall.h .
+Each set type is large enough to hold flags for its own enumeration.
+Although they are of different sizes, they have a common
+structure and can be manipulated by these macros:
+.Bd -literal -offset indent
+prfillset(&set); /* turn on all flags in set */
+premptyset(&set); /* turn off all flags in set */
+praddset(&set, flag); /* turn on the specified flag */
+prdelset(&set, flag); /* turn off the specified flag */
+r = prismember(&set, flag); /* != 0 iff flag is turned on */
+.Ed
+.Pp
+One of
+.Fn prfillset
+or
+.Fn premptyset
+must be used to initialize
+.Fa set
+before it is used in any other operation.
+.Fa flag
+must be a member of the enumeration corresponding to
+.Fa set .
+.Pp
+Every process contains at least one
+.Em light-weight process ,
+or
+.Sy lwp .
+Each lwp represents a flow of execution that is independently scheduled by the
+operating system.
+All lwps in a process share its address space as well as many other attributes.
+Through the use of
+.Pa lwpctl
+and
+.Pa ctl
+files as described below, it is possible to affect individual lwps in a
+process or to affect all of them at once, depending on the operation.
+.Pp
+When the process has more than one lwp, a representative lwp is chosen by the
+system for certain process status files and control operations.
+The representative lwp is a stopped lwp only if all of the process's lwps are
+stopped; is stopped on an event of interest only if all of the lwps are so
+stopped (excluding
+.Sy PR_SUSPENDED
+lwps); is in a
+.Sy PR_REQUESTED
+stop only if there are no other events of interest to be found; or, failing
+everything else, is in a
+.Sy PR_SUSPENDED
+stop (implying that the process is deadlocked).
+See the description of the
+.Pa status
+file for definitions of stopped states.
+See the
+.Sy PCSTOP
+control operation for the definition of
+.Dq event of interest .
+.Pp
+The representative lwp remains fixed (it will be chosen again on the next
+operation) as long as all of the lwps are stopped on events of interest or are
+in a
+.Sy PR_SUSPENDED
+stop and the
+.Sy PCRUN
+control operation is not applied to any of them.
+.Pp
+When applied to the process control file, every
+.Pa /proc
+control operation
+that must act on an lwp uses the same algorithm to choose which lwp to act
+upon.
+Together with synchronous stopping (see
+.Sy PCSET ) ,
+this enables a debugger to control a multiple-lwp process using only the
+process-level status and control files if it so chooses.
+More fine-grained control can be achieved using the lwp-specific files.
+.Pp
+The system supports two process data models, the traditional 32-bit data model
+in which ints, longs and pointers are all 32 bits wide (the ILP32 data model),
+and on some platforms the 64-bit data model in which longs and pointers, but
+not ints, are 64 bits in width (the LP64 data model).
+In the LP64 data model some system data types, notably
+.Sy size_t ,
+.Sy off_t ,
+.Sy time_t
+and
+.Sy dev_t ,
+grow from 32 bits to 64 bits as well.
+.Pp
+The
+.Pa /proc
+interfaces described here are available to both 32-bit and
+64-bit controlling processes.
+However, many operations attempted by a 32-bit
+controlling process on a 64-bit target process will fail with
+.Er EOVERFLOW
+because the address space range of a 32-bit process cannot encompass a 64-bit
+process or because the data in some 64-bit system data type cannot be
+compressed to fit into the corresponding 32-bit type without loss of
+information.
+Operations that fail in this circumstance include reading and
+writing the address space, reading the address-map files, and setting the
+target process's registers.
+There is no restriction on operations applied by a
+64-bit process to either a 32-bit or a 64-bit target processes.
+.Pp
+The format of the contents of any
+.Pa /proc
+file depends on the data model of the observer (the controlling process), not
+on the data model of the target process.
+A 64-bit debugger does not have to translate the information it reads from a
+.Pa /proc
+file for a 32-bit process from 32-bit format to 64-bit format.
+However, it usually has to be aware of the data model of the target process.
+The
+.Sy pr_dmodel
+field of the
+.Pa status
+files indicates the target process's data model.
+.Pp
+To help deal with system data structures that are read from 32-bit processes, a
+64-bit controlling program can be compiled with the C preprocessor symbol
+.Dv _SYSCALL32
+defined before system header files are included.
+This makes explicit 32-bit fixed-width data structures (like
+.Sy struct stat32 )
+visible to the 64-bit program.
+See
+.Xr types32.h 3HEAD .
+.Sh DIRECTORY STRUCTURE
+At the top level, the directory
+.Pa /proc
+contains entries each of which names an existing process in the system.
+These entries are themselves directories.
+Except where otherwise noted, the files described below can be
+opened for reading only.
+In addition, if a process becomes a
+.Em zombie
+(one that has exited but whose parent has not yet performed a
+.Xr wait 3C
+upon it), most of its associated
+.Pa /proc
+files disappear from the hierarchy; subsequent attempts to open them, or to
+read or write files opened before the process exited, will elicit the error
+.Er ENOENT .
+.Pp
+Although process state and consequently the contents of
+.Pa /proc
+files can change from instant to instant, a single
+.Xr read 2
+of a
+.Pa /proc
+file is guaranteed to return a sane representation of state; that is, the read
+will be atomic with respect to the state of the process.
+No such guarantee applies to successive reads applied to a
+.Pa /proc
+file for a running process.
+In addition, atomicity is not guaranteed for
+.Sy I/O
+applied to the
+.Pa as
+(address-space) file for a running process or for a process whose address space
+contains memory shared by another running process.
+.Pp
+A number of structure definitions are used to describe the files.
+These structures may grow by the addition of elements at the end in future
+releases of the system and it is not legitimate for a program to assume that
+they will not.
+.Sh STRUCTURE OF Pa /proc/ Ns Em pid
+A given directory
+.Pa /proc/ Ns Em pid
+contains the following entries.
+A process can use the invisible alias
+.Pa /proc/self
+if it wishes to open one of its own
+.Pa /proc
+files (invisible in the sense that the name
+.Dq self
+does not appear in a directory listing of
+.Pa /proc
+obtained from
+.Xr ls 1 ,
+.Xr getdents 2 ,
+or
+.Xr readdir 3C ) .
+.Ss contracts
+A directory containing references to the contracts held by the process.
+Each entry is a symlink to the contract's directory under
+.Pa /system/contract .
+See
+.Xr contract 5 .
+.Ss as
+Contains the address-space image of the process; it can be opened for both
+reading and writing.
+.Xr lseek 2
+is used to position the file at the virtual address of interest and then the
+address space can be examined or changed through
+.Xr read 2
+or
+.Xr write 2
+(or by using
+.Xr pread 2
+or
+.Xr pwrite 2
+for the combined operation).
+.Ss ctl
+A write-only file to which structured messages are written directing the system
+to change some aspect of the process's state or control its behavior in some
+way.
+The seek offset is not relevant when writing to this file.
+Individual lwps also have associated
+.Pa lwpctl
+files in the lwp subdirectories.
+A control message may be written either to the process's
+.Pa ctl
+file or to a specific
+.Pa lwpctl
+file with operation-specific effects.
+The effect of a control message is immediately reflected in the state of the
+process visible through appropriate status and information files.
+The types of control messages are described in detail later.
+See
+.Sx CONTROL MESSAGES .
+.Ss status
+Contains state information about the process and the representative lwp.
+The file contains a
+.Sy pstatus
+structure which contains an embedded
+.Sy lwpstatus
+structure for the representative lwp, as follows:
+.Bd -literal -offset 2
+typedef struct pstatus {
+ int pr_flags; /* flags (see below) */
+ int pr_nlwp; /* number of active lwps in the process */
+ int pr_nzomb; /* number of zombie lwps in the process */
+ pid_tpr_pid; /* process id */
+ pid_tpr_ppid; /* parent process id */
+ pid_tpr_pgid; /* process group id */
+ pid_tpr_sid; /* session id */
+ id_t pr_aslwpid; /* obsolete */
+ id_t pr_agentid; /* lwp-id of the agent lwp, if any */
+ sigset_t pr_sigpend; /* set of process pending signals */
+ uintptr_t pr_brkbase; /* virtual address of the process heap */
+ size_t pr_brksize; /* size of the process heap, in bytes */
+ uintptr_t pr_stkbase; /* virtual address of the process stack */
+ size_tpr_stksize; /* size of the process stack, in bytes */
+ timestruc_t pr_utime; /* process user cpu time */
+ timestruc_t pr_stime; /* process system cpu time */
+ timestruc_t pr_cutime; /* sum of children's user times */
+ timestruc_t pr_cstime; /* sum of children's system times */
+ sigset_t pr_sigtrace; /* set of traced signals */
+ fltset_t pr_flttrace; /* set of traced faults */
+ sysset_t pr_sysentry; /* set of system calls traced on entry */
+ sysset_t pr_sysexit; /* set of system calls traced on exit */
+ char pr_dmodel; /* data model of the process */
+ taskid_t pr_taskid; /* task id */
+ projid_t pr_projid; /* project id */
+ zoneid_t pr_zoneid; /* zone id */
+ lwpstatus_t pr_lwp; /* status of the representative lwp */
+} pstatus_t;
+.Ed
+.Pp
+.Sy pr_flags
+is a bit-mask holding the following process flags.
+For convenience, it also contains the lwp flags for the representative lwp,
+described later.
+.Bl -tag -width "PR_MSACCT" -offset indent
+.It Sy PR_ISSYS
+process is a system process (see
+.Sx PCSTOP ) .
+.It Sy PR_VFORKP
+process is the parent of a vforked child (see
+.Sx PCWATCH ) .
+.It Sy PR_FORK
+process has its inherit-on-fork mode set (see
+.Sx PCSET ) .
+.It Sy PR_RLC
+process has its run-on-last-close mode set (see
+.Sx PCSET ) .
+.It Sy PR_KLC
+process has its kill-on-last-close mode set (see
+.Sx PCSET ) .
+.It Sy PR_ASYNC
+process has its asynchronous-stop mode set (see
+.Sx PCSET ) .
+.It Sy PR_MSACCT
+Set by default in all processes to indicate that microstate accounting is
+enabled.
+However, this flag has been deprecated and no longer has any effect.
+Microstate accounting may not be disabled; however, it is still possible to
+toggle the flag.
+.It Sy PR_MSFORK
+Set by default in all processes to indicate that microstate accounting will be
+enabled for processes that this parent
+.Xr fork 2 Ns s .
+However, this flag has been deprecated and no longer has any effect.
+It is possible to toggle this flag; however, it is not possible to disable
+microstate accounting.
+.It Sy PR_BPTADJ
+process has its breakpoint adjustment mode set (see
+.Sx PCSET ) .
+.It Sy PR_PTRACE
+process has its ptrace-compatibility mode set (see
+.Sx PCSET ) .
+.El
+.Pp
+.Sy pr_nlwp
+is the total number of active lwps in the process.
+.Sy pr_nzomb
+is the total number of zombie lwps in the process.
+A zombie lwp is a non-detached lwp that has terminated but has not been reaped
+with
+.Xr thr_join 3C
+or
+.Xr pthread_join 3C .
+.Pp
+.Sy pr_pid ,
+.Sy pr_ppi ,
+.Sy pr_pgid ,
+and
+.Sy pr_sid
+are, respectively, the process ID, the ID of the process's parent, the
+process's process group ID, and the process's session ID.
+.Pp
+.Sy pr_aslwpid
+is obsolete and is always zero.
+.Pp
+.Sy pr_agentid
+is the lwp-ID for the
+.Pa /proc
+agent lwp (see the
+.Sx PCAGENT
+control operation).
+It is zero if there is no agent lwp in the process.
+.Pp
+.Sy pr_sigpend
+identifies asynchronous signals pending for the process.
+.Pp
+.Sy pr_brkbase
+is the virtual address of the process heap and
+.Sy pr_brksize
+is its size in bytes.
+The address formed by the sum of these values is the process
+.Sy break
+(see
+.Xr brk 2 ) .
+.Sy pr_stkbase
+and
+.Sy pr_stksize
+are, respectively, the virtual address of the process stack and its size in
+bytes.
+(Each lwp runs on a separate stack; the distinguishing characteristic of the
+process stack is that the operating system will grow it when necessary.)
+.Pp
+.Sy pr_utime ,
+.Sy pr_stime ,
+.Sy pr_cutime ,
+.Sy and pr_cstime
+are, respectively, the user
+.Sy CPU
+and system
+.Sy CPU
+time consumed by the process, and the cumulative user
+.Sy CPU
+and system
+.Sy CPU
+time consumed by the process's children, in seconds and nanoseconds.
+.Pp
+.Sy pr_sigtrace
+and
+.Sy pr_flttrace
+contain, respectively, the set of signals and the set of hardware faults that
+are being traced (see
+.Sx PCSTRACE
+and
+.Sx PCSFAULT ) .
+.Pp
+.Sy pr_sysentry
+and
+.Sy pr_sysexit
+contain, respectively, the sets of system calls being traced on entry and exit
+(see
+.Sx PCSENTRY
+and
+.Sx PCSEXIT ) .
+.Pp
+.Sy pr_dmodel
+indicates the data model of the process.
+Possible values are:
+.Bl -tag -width "PR_MODEL_NATIVE" -offset indent
+.It Sy PR_MODEL_ILP32
+process data model is ILP32.
+.It Sy PR_MODEL_LP64
+process data model is LP64.
+.It Sy PR_MODEL_NATIVE
+process data model is native.
+.El
+.Pp
+The
+.Sy pr_taskid ,
+.Sy pr_projid ,
+and
+.Sy pr_zoneid
+fields contain respectively, the numeric
+.Sy ID Ns s
+of the task, project, and zone in which the process was running.
+.Pp
+The constant
+.Sy PR_MODEL_NATIVE
+reflects the data model of the controlling process,
+.Em that is ,
+its value is
+.Sy PR_MODEL_ILP32
+or
+.Sy PR_MODEL_LP64
+according to whether the controlling process has been
+compiled as a 32-bit program or a 64-bit program, respectively.
+.Pp
+.Sy pr_lwp
+contains the status information for the representative lwp:
+.Bd -literal -offset 2
+typedef struct lwpstatus {
+ int pr_flags; /* flags (see below) */
+ id_t pr_lwpid; /* specific lwp identifier */
+ short pr_why; /* reason for lwp stop, if stopped */
+ short pr_what; /* more detailed reason */
+ short pr_cursig; /* current signal, if any */
+ siginfo_t pr_info; /* info associated with signal or fault */
+ sigset_t pr_lwppend; /* set of signals pending to the lwp */
+ sigset_t pr_lwphold; /* set of signals blocked by the lwp */
+ struct sigaction pr_action;/* signal action for current signal */
+ stack_t pr_altstack; /* alternate signal stack info */
+ uintptr_t pr_oldcontext; /* address of previous ucontext */
+ short pr_syscall; /* system call number (if in syscall) */
+ short pr_nsysarg; /* number of arguments to this syscall */
+ int pr_errno; /* errno for failed syscall */
+ long pr_sysarg[PRSYSARGS]; /* arguments to this syscall */
+ long pr_rval1; /* primary syscall return value */
+ long pr_rval2; /* second syscall return value, if any */
+ char pr_clname[PRCLSZ]; /* scheduling class name */
+ timestruc_t pr_tstamp; /* real-time time stamp of stop */
+ timestruc_t pr_utime; /* lwp user cpu time */
+ timestruc_t pr_stime; /* lwp system cpu time */
+ uintptr_t pr_ustack; /* stack boundary data (stack_t) address */
+ ulong_t pr_instr; /* current instruction */
+ prgregset_t pr_reg; /* general registers */
+ prfpregset_t pr_fpreg; /* floating-point registers */
+} lwpstatus_t;
+.Ed
+.Pp
+.Sy pr_flags
+is a bit-mask holding the following lwp flags.
+For convenience, it also contains the process flags, described previously.
+.Bl -tag -width "PR_STOPPED" -offset indent
+.It Sy PR_STOPPED
+The lwp is stopped.
+.It Sy PR_ISTOP
+The lwp is stopped on an event of interest (see
+.Sx PCSTOP ) .
+.It Sy PR_DSTOP
+The lwp has a stop directive in effect (see
+.Sx PCSTOP ) .
+.It Sy PR_STEP
+The lwp has a single-step directive in effect (see
+.Sx PCRUN ) .
+.It Sy PR_ASLEEP
+The lwp is in an interruptible sleep within a system call.
+.It Sy PR_PCINVAL
+The lwp's current instruction
+.Pq Sy pr_instr
+is undefined.
+.It Sy PR_DETACH
+This is a detached lwp (see
+.Xr pthread_create 3C
+and
+.Xr pthread_join 3C ) .
+.It Sy PR_DAEMON
+This is a daemon lwp (see
+.Xr pthread_create 3C ) .
+.It Sy PR_ASLWP
+This flag is obsolete and is never set.
+.It Sy PR_AGENT
+This is the
+.Pa /proc
+agent lwp for the process.
+.El
+.Pp
+.Sy pr_lwpid
+names the specific lwp.
+.Pp
+.Sy pr_why
+.Sy and
+pr_what
+together describe, for a stopped lwp, the reason for the stop.
+Possible values of
+.Sy pr_why
+and the associated
+.Sy pr_what
+are:
+.Bl -tag -width "PR_JOBCONTROL" -offset left
+.It Sy PR_REQUESTED
+indicates that the stop occurred in response to a stop directive, normally
+because
+.Sy PCSTOP
+was applied or because another lwp stopped on an event of interest and the
+asynchronous-stop flag (see
+.Sx PCSET )
+was not set for the process.
+.Sy pr_what
+is unused in this case.
+.It Sy PR_SIGNALLED
+indicates that the lwp stopped on receipt of a signal (see
+.Sx PCSTRACE ) ;
+.Sy pr_what
+holds the signal number that caused the stop (for a newly-stopped
+lwp, the same value is in
+.Sy pr_cursig ) .
+.It Sy PR_FAULTED
+indicates that the lwp stopped on incurring a hardware fault (see
+.Sx PCSFAULT ) ;
+.Sy pr_what
+holds the fault number that caused the stop.
+.It Sy PR_SYSENTRY
+.It Sy PR_SYSEXIT
+indicate a stop on entry to or exit from a system call (see
+.Sx PCSENTRY
+and
+.Sx PCSEXIT ) ;
+.Sy pr_what
+holds the system call number.
+.It Sy PR_JOBCONTROL
+indicates that the lwp stopped due to the default action of a job control stop
+signal (see
+.Xr sigaction 2 ) ;
+.Sy pr_what
+holds the stopping signal number.
+.It Sy PR_SUSPENDED
+indicates that the lwp stopped due to internal synchronization of lwps within
+the process.
+.Sy pr_what
+is unused in this case.
+.It Sy PR_BRAND
+indicates that the lwp stopped for a brand-specific reason.
+Interpretation of the value of
+.Sy pr_what
+depends on which zone brand is in use.
+It is not generally expected that an lwp stopped in this state will be
+restarted by native
+.\" mandoc(1) doesn't like .Xr macros referring to itself, so this is
+.\" a bit of a hack.
+.Nm Ns Pq 4
+consumers.
+.El
+.Pp
+.Sy pr_cursig
+names the current signal, that is, the next signal to be delivered to the lwp,
+if any.
+.Sy pr_info ,
+when the lwp is in a
+.Sy PR_SIGNALLED
+or
+.Sy PR_FAULTED
+stop, contains additional information pertinent to the particular signal or
+fault (see
+.In sys/siginfo.h ) .
+.Pp
+.Sy pr_lwppend
+identifies any synchronous or directed signals pending for the lwp.
+.Sy pr_lwphold
+identifies those signals whose delivery is being blocked by the lwp (the
+signal mask).
+.Pp
+.Sy pr_action
+contains the signal action information pertaining to the current signal (see
+.Xr sigaction 2 ) ;
+it is undefined if
+.Sy pr_cursig
+is zero.
+.Sy pr_altstack
+contains the alternate signal stack information for the lwp (see
+.Xr sigaltstack 2 ) .
+.Pp
+.Sy pr_oldcontext ,
+if not zero, contains the address on the lwp stack of a
+.Sy ucontext
+structure describing the previous user-level context (see
+.Xr ucontext.h 3HEAD ) .
+It is non-zero only if the lwp is executing in the context of a signal handler.
+.Pp
+.Sy pr_syscall
+is the number of the system call, if any, being executed by
+the lwp; it is non-zero if and only if the lwp is stopped on
+.Sy PR_SYSENTRY
+or
+.Sy PR_SYSEXIT ,
+or is asleep within a system call
+.Pf ( Sy PR_ASLEEP
+is set).
+If
+.Sy pr_syscall
+is non-zero,
+.Sy pr_nsysarg
+is the number of arguments to the system call and
+.Sy pr_sysarg
+contains the actual arguments.
+.Pp
+.Sy pr_rval1 ,
+.Sy pr_rval2 ,
+and
+.Sy pr_errno
+are defined only if the lwp
+is stopped on
+.Sy PR_SYSEXIT
+or if the
+.Sy PR_VFORKP
+flag is set.
+If
+.Sy pr_errno
+is zero,
+.Sy pr_rval1
+and
+.Sy pr_rval2
+contain the return values from the system call.
+Otherwise,
+.Sy pr_errno
+contains the error number for the failing system call (see
+.In sys/errno.h ) .
+.Pp
+.Sy pr_clname
+contains the name of the lwp's scheduling class.
+.Pp
+.Sy pr_tstamp ,
+if the lwp is stopped, contains a time stamp marking when the
+lwp stopped, in real time seconds and nanoseconds since an arbitrary time in
+the past.
+.Pp
+.Sy pr_utime
+is the amount of user level CPU time used by this LWP.
+.Pp
+.Sy pr_stime
+is the amount of system level CPU time used by this LWP.
+.Pp
+.Sy pr_ustack
+is the virtual address of the
+.Sy stack_t
+that contains the stack boundaries for this LWP.
+See
+.Xr getustack 2
+and
+.Xr _stack_grow 3C .
+.Pp
+.Sy pr_instr
+contains the machine instruction to which the lwp's program counter refers.
+The amount of data retrieved from the process is machine-dependent.
+On SPARC based machines, it is a 32-bit word.
+On x86-based machines, it is a single byte.
+In general, the size is that of the machine's smallest instruction.
+If
+.Sy PR_PCINVAL
+is set,
+.Sy pr_instr
+is undefined; this occurs whenever the lwp is not stopped or when the program
+counter refers to an invalid virtual address.
+.Pp
+.Sy pr_reg
+is an array holding the contents of a stopped lwp's general registers.
+.Bl -tag -offset left -width "SPARC V8 (32-bit)"
+.It Sy SPARC
+On SPARC-based machines, the predefined constants
+.Sy R_G0
+\&.\&.\&.
+.Sy R_G7 ,
+.Sy R_O0
+\&.\&.\&.
+.Sy R_O7 ,
+.Sy R_L0
+\&.\&.\&.
+.Sy R_L7 ,
+.Sy R_I0
+\&.\&.\&.
+.Sy R_I7 ,
+.Sy R_PC ,
+.Sy R_nPC ,
+and
+.Sy R_Y
+can be used as indices to refer to the corresponding registers; previous
+register windows can be read from their overflow locations on the stack
+(however, see the
+.Pa gwindows
+file in the
+.Pa /proc/ Ns Em pid Ns Pa /lwp/ Ns Em lwpid
+subdirectory).
+.It Sy SPARC V8 (32-bit)
+For SPARC V8 (32-bit) controlling processes, the predefined constants
+.Sy R_PSR ,
+.Sy R_WIM ,
+and
+.Sy R_TBR
+can be used as indices to refer to the corresponding special registers.
+For SPARC V9 (64-bit) controlling processes, the predefined constants
+.Sy R_CCR ,
+.Sy R_ASI ,
+and
+.Sy R_FPRS
+can be used as indices to refer to the corresponding special registers.
+.It Sy x86 (32-bit)
+For 32-bit x86 processes, the predefined constants listed belowcan be used as
+indices to refer to the corresponding registers.
+.Bl -tag -width "TRAPNO" -offset indent -compact
+.It SS
+.It UESP
+.It EFL
+.It CS
+.It EIP
+.It ERR
+.It TRAPNO
+.It EAX
+.It ECX
+.It EDX
+.It EBX
+.It ESP
+.It EBP
+.It ESI
+.It EDI
+.It DS
+.It ES
+.It GS
+.El
+.Pp
+The preceding constants are listed in
+.In sys/regset.h .
+.Pp
+Note that a 32-bit process can run on an x86 64-bit system, using the constants
+listed above.
+.It Sy x86 (64-bit)
+To read the registers of a 32-
+.Em or
+a 64-bit process, a 64-bit x86 process should use the predefined constants
+listed below.
+.Bl -tag -width "REG_TRAPNO" -offset indent -compact
+.It REG_GSBASE
+.It REG_FSBASE
+.It REG_DS
+.It REG_ES
+.It REG_GS
+.It REG_FS
+.It REG_SS
+.It REG_RSP
+.It REG_RFL
+.It REG_CS
+.It REG_RIP
+.It REG_ERR
+.It REG_TRAPNO
+.It REG_RAX
+.It REG_RCX
+.It REG_RDX
+.It REG_RBX
+.It REG_RBP
+.It REG_RSI
+.It REG_RDI
+.It REG_R8
+.It REG_R9
+.It REG_R10
+.It REG_R11
+.It REG_R12
+.It REG_R13
+.It REG_R14
+.It REG_R15
+.El
+.Pp
+The preceding constants are listed in
+.In sys/regset.h .
+.El
+.Pp
+.Sy pr_fpreg
+is a structure holding the contents of the floating-point registers.
+.Pp
+SPARC registers, both general and floating-point, as seen by a 64-bit
+controlling process are the V9 versions of the registers, even if the target
+process is a 32-bit (V8) process.
+V8 registers are a subset of the V9 registers.
+.Pp
+If the lwp is not stopped, all register values are undefined.
+.Ss psinfo
+Contains miscellaneous information about the process and the representative lwp
+needed by the
+.Xr ps 1
+command.
+.Sy psinfo
+remains accessible after a process becomes a
+.Em zombie .
+The file contains a
+.Sy psinfo
+structure which contains an embedded
+.Sy lwpsinfo
+structure for the representative lwp, as follows:
+.Bd -literal -offset 2
+typedef struct psinfo {
+ int pr_flag; /* process flags (DEPRECATED: see below) */
+ int pr_nlwp; /* number of active lwps in the process */
+ int pr_nzomb; /* number of zombie lwps in the process */
+ pid_t pr_pid; /* process id */
+ pid_t pr_ppid; /* process id of parent */
+ pid_t pr_pgid; /* process id of process group leader */
+ pid_t pr_sid; /* session id */
+ uid_t pr_uid; /* real user id */
+ uid_t pr_euid; /* effective user id */
+ gid_t pr_gid; /* real group id */
+ gid_t pr_egid; /* effective group id */
+ uintptr_t pr_addr; /* address of process */
+ size_t pr_size; /* size of process image in Kbytes */
+ size_t pr_rssize; /* resident set size in Kbytes */
+ dev_t pr_ttydev; /* controlling tty device (or PRNODEV) */
+ ushort_t pr_pctcpu; /* % of recent cpu time used by all lwps */
+ ushort_t pr_pctmem; /* % of system memory used by process */
+ timestruc_t pr_start; /* process start time, from the epoch */
+ timestruc_t pr_time; /* cpu time for this process */
+ timestruc_t pr_ctime; /* cpu time for reaped children */
+ char pr_fname[PRFNSZ]; /* name of exec'ed file */
+ char pr_psargs[PRARGSZ]; /* initial characters of arg list */
+ int pr_wstat; /* if zombie, the wait() status */
+ int pr_argc; /* initial argument count */
+ uintptr_t pr_argv; /* address of initial argument vector */
+ uintptr_t pr_envp; /* address of initial environment vector */
+ char pr_dmodel; /* data model of the process */
+ taskid_t pr_taskid; /* task id */
+ projid_t pr_projid; /* project id */
+ poolid_t pr_poolid; /* pool id */
+ zoneid_t pr_zoneid; /* zone id */
+ ctid_t pr_contract; /* process contract id */
+ lwpsinfo_t pr_lwp; /* information for representative lwp */
+} psinfo_t;
+.Ed
+.Pp
+Some of the entries in
+.Sy psinfo ,
+such as
+.Sy pr_addr ,
+refer to internal kernel data structures and should not be expected to retain
+their meanings across different versions of the operating system.
+.Pp
+.Sy psinfo_t.pr_flag
+is a deprecated interface that should no longer be used.
+Applications currently relying on the
+.Sy SSYS
+bit in
+.Sy pr_flag
+should migrate to checking
+.Sy PR_ISSYS
+in the
+.Sy pstatus
+structure's
+.Sy pr_flags
+field.
+.Pp
+.Sy pr_pctcpu
+and
+.Sy pr_pctmem
+are 16-bit binary fractions in the range 0.0 to 1.0 with the binary point to
+the right of the high-order bit (1.0 == 0x8000).
+.Sy pr_pctcpu
+is the summation over all lwps in the process.
+.Pp
+The
+.Sy pr_fname
+and
+.Sy pr_psargs
+are writable by the owner of the process.
+To write to them, the
+.Sy psinfo
+file should be open for writing and the desired value for the field should be
+written at the file offset that corresponds to the member of structure.
+No other entry may be written to; if a write is attempted to an offset that
+does not represent one of these two memers, or if the size of the write is not
+exactly the size of the member being written, no bytes will be written and
+zero will be returned.
+.Pp
+.Sy pr_lwp
+contains the
+.Xr ps 1
+information for the representative lwp.
+If the process is a
+.Em zombie ,
+.Sy pr_nlwp ,
+.Sy pr_nzomb ,
+and
+.Sy pr_lwp.pr_lwpid
+are zero and the other fields of
+.Sy pr_lwp
+are undefined:
+.Bd -literal -offset 2
+typedef struct lwpsinfo {
+ int pr_flag; /* lwp flags (DEPRECATED: see below) */
+ id_t pr_lwpid; /* lwp id */
+ uintptr_t pr_addr; /* internal address of lwp */
+ uintptr_t pr_wchan; /* wait addr for sleeping lwp */
+ char pr_stype; /* synchronization event type */
+ char pr_state; /* numeric lwp state */
+ char pr_sname; /* printable character for pr_state */
+ char pr_nice; /* nice for cpu usage */
+ short pr_syscall; /* system call number (if in syscall) */
+ char pr_oldpri; /* pre-SVR4, low value is high priority */
+ char pr_cpu; /* pre-SVR4, cpu usage for scheduling */
+ int pr_pri; /* priority, high value = high priority */
+ ushort_t pr_pctcpu; /* % of recent cpu time used by this lwp */
+ timestruc_t pr_start; /* lwp start time, from the epoch */
+ timestruc_t pr_time; /* cpu time for this lwp */
+ char pr_clname[PRCLSZ]; /* scheduling class name */
+ char pr_name[PRFNSZ]; /* name of system lwp */
+ processorid_t pr_onpro; /* processor which last ran this lwp */
+ processorid_t pr_bindpro;/* processor to which lwp is bound */
+ psetid_t pr_bindpset; /* processor set to which lwp is bound */
+ lgrp_id_t pr_lgrp; /* home lgroup */
+} lwpsinfo_t;
+.Ed
+.Pp
+Some of the entries in
+.Sy lwpsinfo ,
+such as
+.Sy pr_addr ,
+.Sy pr_wchan ,
+.Sy pr_stype ,
+.Sy pr_state ,
+and
+.Sy pr_name ,
+refer to internal kernel data structures and should not be expected to retain
+their meanings across different versions of the operating system.
+.Pp
+.Sy lwpsinfo_t.pr_flag
+is a deprecated interface that should no longer be used.
+.Pp
+.Sy pr_pctcpu
+is a 16-bit binary fraction, as described above.
+It represents the
+.Sy CPU
+time used by the specific lwp.
+On a multi-processor machine, the maximum value is 1/N, where N is the number
+of
+.Sy CPU Ns s .
+.Pp
+.Sy pr_contract
+is the id of the process contract of which the process is a member.
+See
+.Xr contract 5
+and
+.Xr process 5 .
+.Ss cred
+Contains a description of the credentials associated with the process:
+.Bd -literal -offset 2
+typedef struct prcred {
+ uid_t pr_euid; /* effective user id */
+ uid_t pr_ruid; /* real user id */
+ uid_t pr_suid; /* saved user id (from exec) */
+ gid_t pr_egid; /* effective group id */
+ gid_t pr_rgid; /* real group id */
+ gid_t pr_sgid; /* saved group id (from exec) */
+ int pr_ngroups; /* number of supplementary groups */
+ gid_t pr_groups[1]; /* array of supplementary groups */
+} prcred_t;
+.Ed
+.Pp
+The array of associated supplementary groups in
+.Sy pr_groups
+ is of variable
+length; the
+.Sy cred
+file contains all of the supplementary groups.
+.Sy pr_ngroups
+indicates the number of supplementary groups. (See also the
+.Sy PCSCRED
+and
+.Sy PCSCREDX
+control operations.)
+.Ss priv
+Contains a description of the privileges associated with the process:
+.Bd -literal -offset 2
+typedef struct prpriv {
+ uint32_t pr_nsets; /* number of privilege set */
+ uint32_t pr_setsize; /* size of privilege set */
+ uint32_t pr_infosize; /* size of supplementary data */
+ priv_chunk_t pr_sets[1]; /* array of sets */
+} prpriv_t;
+.Ed
+.Pp
+The actual dimension of the
+.Sy pr_sets Ns []
+field is
+.D1 pr_sets[pr_nsets][pr_setsize]
+.Pp
+which is followed by additional information about the process state
+.Sy pr_infosize
+bytes in size.
+.Pp
+The full size of the structure can be computed using
+.Fn PRIV_PRPRIV_SIZE "prpriv_t *" .
+.Ss secflags
+This file contains the security-flags of the process.
+It contains a description of the security flags associated with the process.
+.Bd -literal -offset 2
+typedef struct prsecflags {
+ uint32_t pr_version; /* ABI Versioning of this structure */
+ secflagset_t pr_effective; /* Effective flags */
+ secflagset_t pr_inherit; /* Inheritable flags */
+ secflagset_t pr_lower; /* Lower flags */
+ secflagset_t pr_upper; /* Upper flags */
+} prsecflags_t;
+.Ed
+.Pp
+The
+.Sy pr_version
+field is a version number for the structure, currently
+.Sy PRSECFLAGS_VERSION_1 .
+.Ss sigact
+Contains an array of
+.Sy sigaction structures
+describing the current dispositions of all signals associated with the traced
+process (see
+.Xr sigaction 2 ) .
+Signal numbers are displaced by 1 from array indices, so that the action for
+signal number
+.Va n
+appears in position
+.Va n Ns -1
+of the array.
+.Ss auxv
+Contains the initial values of the process's aux vector in an array of
+.Sy auxv_t
+structures (see
+.In sys/auxv.h ) .
+The values are those that were passed by the operating system as startup
+information to the dynamic linker.
+.Ss argv
+Contains the concatenation of each of the argument strings, including their
+.Sy NUL
+terminators, in the argument vector
+.Pq Va argv
+for the process.
+If the process has modified either its argument vector, or the contents of
+any of the strings referenced by that vector, those changes will be visible
+here.
+.Ss ldt
+This file exists only on x86-based machines.
+It is non-empty only if the process has established a local descriptor table
+.Pq Sy LDT .
+If non-empty, the file contains the array of currently active
+.Sy LDT
+entries in an array of elements of type
+.Vt struct ssd ,
+defined in
+.In sys/sysi86.h ,
+one element for each active
+.Sy LDT
+entry.
+.Ss map, xmap
+Contain information about the virtual address map of the process.
+The map file contains an array of
+.Sy prmap
+structures while the xmap file contains an
+array of
+.Sy prxmap
+structures.
+Each structure describes a contiguous virtual
+address region in the address space of the traced process:
+.Bd -literal -offset 2
+typedef struct prmap {
+ uintptr_tpr_vaddr; /* virtual address of mapping */
+ size_t pr_size; /* size of mapping in bytes */
+ char pr_mapname[PRMAPSZ]; /* name in /proc/pid/object */
+ offset_t pr_offset; /* offset into mapped object, if any */
+ int pr_mflags; /* protection and attribute flags */
+ int pr_pagesize; /* pagesize for this mapping in bytes */
+ int pr_shmid; /* SysV shared memory identifier */
+} prmap_t;
+.Ed
+.Bd -literal -offset 2
+typedef struct prxmap {
+ uintptr_t pr_vaddr; /* virtual address of mapping */
+ size_t pr_size; /* size of mapping in bytes */
+ char pr_mapname[PRMAPSZ]; /* name in /proc/pid/object */
+ offset_t pr_offset; /* offset into mapped object, if any */
+ int pr_mflags; /* protection and attribute flags */
+ int pr_pagesize; /* pagesize for this mapping in bytes */
+ int pr_shmid; /* SysV shared memory identifier */
+ dev_t pr_dev; /* device of mapped object, if any */
+ uint64_t pr_ino; /* inode of mapped object, if any */
+ size_t pr_rss; /* pages of resident memory */
+ size_t pr_anon; /* pages of resident anonymous memory */
+ size_t pr_locked; /* pages of locked memory */
+ uint64_t pr_hatpagesize; /* pagesize of mapping */
+} prxmap_t;
+.Ed
+.Pp
+.Sy pr_vaddr
+is the virtual address of the mapping within the traced process and
+.Sy pr_size
+is its size in bytes.
+.Sy pr_mapname ,
+if it does not contain a null string, contains the name of a file in the
+.Sy object
+directory (see below) that can be opened read-only to obtain a file descriptor
+for the mapped file associated with the mapping.
+This enables a debugger to find object file symbol tables without having to
+know the real path names of the executable file and shared libraries of
+the process.
+.Sy pr_offset
+is the 64-bit offset within the mapped file (if any) to which the virtual
+address is mapped.
+.Pp
+.Sy pr_mflags
+is a bit-mask of protection and attribute flags:
+.Bl -tag -width "MA_NORESERVE" -offset left
+.It Sy MA_READ
+mapping is readable by the traced process.
+.It Sy MA_WRITE
+mapping is writable by the traced process.
+.It Sy MA_EXEC
+mapping is executable by the traced process.
+.It Sy MA_SHARED
+mapping changes are shared by the mapped object.
+.It Sy MA_ISM
+mapping is intimate shared memory (shared MMU resources)
+.It Sy MAP_NORESERVE
+mapping does not have swap space reserved (mapped with MAP_NORESERVE)
+.It Sy MA_SHM
+mapping System V shared memory
+.El
+.Pp
+A contiguous area of the address space having the same underlying mapped object
+may appear as multiple mappings due to varying read, write, and execute
+attributes.
+The underlying mapped object does not change over the range of a
+single mapping.
+An
+.Sy I/O
+operation to a mapping marked
+.Sy MA_SHARED
+fails if applied at a virtual address not corresponding to a valid page in the
+underlying mapped object.
+A write to a
+.Sy MA_SHARED
+mapping that is not marked
+.Sy MA_WRITE
+fails.
+Reads and writes to private mappings always succeed.
+Reads and writes to unmapped addresses fail.
+.Pp
+.Sy pr_pagesize
+is the page size for the mapping, currently always the system pagesize.
+.Pp
+.Sy pr_shmid
+is the shared memory identifier, if any, for the mapping.
+Its value is \-1
+if the mapping is not System V shared memory.
+See
+.Xr shmget 2 .
+.Pp
+.Sy pr_dev
+is the device of the mapped object, if any, for the mapping.
+Its value is
+.Sy PRNODEV
+.Pq \-1
+if the mapping does not have a device.
+.Pp
+.Sy pr_ino
+is the inode of the mapped object, if any, for the mapping.
+Its contents are only valid if
+.Sy pr_dev
+is not
+.Sy PRNODEV .
+.Pp
+.Sy pr_rss
+is the number of resident pages of memory for the mapping.
+The number of resident bytes for the mapping may be determined by multiplying
+.Sy pr_rss
+by the page size given by
+.Sy pr_pagesize .
+.Pp
+.Sy pr_anon
+is the number of resident anonymous memory pages (pages which are
+private to this process) for the mapping.
+.Pp
+.Sy pr_locked
+is the number of locked pages for the mapping.
+Pages which are locked are always resident in memory.
+.Pp
+.Sy pr_hatpagesize
+is the size, in bytes, of the
+.Sy HAT
+.Pq Sy MMU
+translation for the mapping.
+.Sy pr_hatpagesize
+may be different than
+.Sy pr_pagesize .
+The possible values are hardware architecture specific, and
+may change over a mapping's lifetime.
+.Ss rmap
+Contains information about the reserved address ranges of the process.
+The file contains an array of
+.Sy prmap
+structures, as defined above for the
+.Sy map
+file.
+Each structure describes a contiguous virtual address region in the
+address space of the traced process that is reserved by the system in the sense
+that an
+.Xr mmap 2
+system call that does not specify
+.Sy MAP_FIXED
+will not use any part of it for the new mapping.
+Examples of such reservations include the address ranges reserved for the
+process stack and the individual thread stacks of a multi-threaded process.
+.Ss cwd
+A symbolic link to the process's current working directory.
+See
+.Xr chdir 2 .
+A
+.Xr readlink 2
+of
+.Pa /proc/ Ns Em pid Ns Pa /cwd
+yields a null string.
+However, it can be opened, listed, and searched as a directory, and can be the
+target of
+.Xr chdir 2 .
+.Ss root
+A symbolic link to the process's root directory.
+.Pa /proc/ Ns Em pid Ns Pa /root
+can differ from the system root directory if the process or one of its
+ancestors executed
+.Xr chroot 2
+as super user.
+It has the same semantics as
+.Pa /proc/ Ns Em pid Ns Pa /cwd .
+.Ss fd
+A directory containing references to the open files of the process.
+Each entry is a decimal number corresponding to an open file descriptor in the
+process.
+.Pp
+If an entry refers to a regular file, it can be opened with normal file system
+semantics but, to ensure that the controlling process cannot gain greater
+access than the controlled process, with no file access modes other than its
+read/write open modes in the controlled process.
+If an entry refers to a directory, it can be accessed with the same semantics
+as
+.Pa /proc/ Ns Em pid Ns Pa /cwd .
+An attempt to open any other type of entry fails with
+.Er EACCES .
+.Ss fdinfo
+A directory containing information about each of the process's open files.
+Each entry is a decimal number corresponding to an open file descriptor in the
+process.
+Each file contains a
+.Sy prfdinfo_t
+structure defined as follows:
+.Bd -literal -offset 2
+typedef struct prfdinfo {
+ int pr_fd; /* file descriptor number */
+ mode_t pr_mode; /* (see st_mode in stat(2)) */
+ uint64_t pr_ino; /* inode number */
+ uint64_t pr_size; /* file size */
+ int64_t pr_offset; /* current offset of file descriptor */
+ uid_t pr_uid; /* owner's user id */
+ gid_t pr_gid; /* owner's group id */
+ major_t pr_major; /* major number of device containing file */
+ minor_t pr_minor; /* minor number of device containing file */
+ major_t pr_rmajor; /* major number (if special file) */
+ minor_t pr_rminor; /* minor number (if special file) */
+ int pr_fileflags; /* (see F_GETXFL in fcntl(2)) */
+ int pr_fdflags; /* (see F_GETFD in fcntl(2)) */
+ short pr_locktype; /* (see F_GETLK in fcntl(2)) */
+ pid_t pr_lockpid; /* process holding file lock (see F_GETLK) */
+ int pr_locksysid; /* sysid of locking process (see F_GETLK) */
+ pid_t pr_peerpid; /* peer process (socket, door) */
+ int pr_filler[25]; /* reserved for future use */
+ char pr_peername[PRFNSZ]; /* peer process name */
+#if __STDC_VERSION__ >= 199901L
+ char pr_misc[]; /* self describing structures */
+#else
+ char pr_misc[1];
+#endif
+} prfdinfo_t;
+.Ed
+.Pp
+The
+.Sy pr_misc
+element points to a list of additional miscellaneous data items, each of which
+has a header of type
+.Sy pr_misc_header_t
+specifying the size and type, and some data which immediately follow
+the header.
+.Bd -literal -offset 2
+typedef struct pr_misc_header {
+ uint_t pr_misc_size;
+ uint_t pr_misc_type;
+} pr_misc_header_t;
+.Ed
+.Pp
+The
+.Sy pr_misc_size
+field is the sum of the sizes of the header and the associated data and any
+trailing padding bytes which will be set to zero.
+The end of the list is indicated by a header with a zero size and a type with
+all bits set.
+.Pp
+The following miscellaneous data types can be present:
+.Bl -tag -width "PR_SOCKOPT_TCP_CONGESTION" -offset left
+.It Sy PR_PATHNAME
+The file descriptor's path in the filesystem.
+This is a NUL-terminated sequence of characters.
+.It Sy PR_SOCKETNAME
+A
+.Sy sockaddr
+structure representing the local socket name for this file descriptor, as
+would be returned by calling
+.Fn getsockname
+within the process.
+.It Sy PR_PEERSOCKNAME
+A
+.Sy sockaddr
+structure representing the peer socket name for this file descriptor, as
+would be returned by calling
+.Fn getpeername
+within the process.
+.It Sy PR_SOCKOPTS_BOOL_OPTS
+An unsigned integer which has bits set corresponding to options which are
+set on the underlying socket.
+The following bits may be set:
+.Bl -tag -width "PR_SO_PASSIVE_CONNECT"
+.It Sy PR_SO_DEBUG
+.It Sy PR_SO_REUSEADDR
+.It Sy PR_SO_REUSEPORT
+.It Sy PR_SO_KEEPALIVE
+.It Sy PR_SO_DONTROUTE
+.It Sy PR_SO_BROADCAST
+.It Sy PR_SO_OOBINLINE
+.It Sy PR_SO_DGRAM_ERRIND
+.It Sy PR_SO_ALLZONES
+.It Sy PR_SO_MAC_EXEMPT
+.It Sy PR_SO_EXCLBIND
+.It Sy PR_SO_PASSIVE_CONNECT
+.It Sy PR_SO_ACCEPTCONN
+.It Sy PR_UDP_NAT_T_ENDPOINT
+.It Sy PR_SO_VRRP
+.It Sy PR_SO_MAC_IMPLICIT
+.El
+.It Sy PR_SOCKOPT_LINGER
+A
+.Sy struct linger
+as would be returned by calling
+.Fn getsockopt SO_LINGER
+within the process.
+.It Sy PR_SOCKOPT_SNDBUF
+The data that would be returned by calling
+.Fn getsockopt SO_SNDBUF
+within the process.
+.It Sy PR_SOCKOPT_RCVBUF
+The data that would be returned by calling
+.Fn getsockopt SO_RCVBUF
+within the process.
+.It Sy PR_SOCKOPT_IP_NEXTHOP
+The data that would be returned by calling
+.Fn getsockopt IPPROTO_IP IP_NEXTHOP
+within the process.
+.It Sy PR_SOCKOPT_IPV6_NEXTHOP
+The data that would be returned by calling
+.Fn getsockopt IPPROTO_IPV6 IPV6_NEXTHOP
+within the process.
+.It Sy PR_SOCKOPT_TYPE
+The data that would be returned by calling
+.Fn getsockopt SO_TYPE
+within the process.
+.It Sy PR_SOCKOPT_TCP_CONGESTION
+For TCP sockets, the data that would be returned by calling
+.Fn getsockopt IPPROTO_TCP TCP_CONGESTION
+within the process.
+This is a NUL-terminated character array containing the name of the congestion
+algorithm in use for the socket.
+.It Sy PR_SOCKFILTERS_PRIV
+Private data relating to up to the first 32 socket filters pushed on this
+descriptor.
+.El
+.Ss object
+A directory containing read-only files with names corresponding to the
+.Sy pr_mapname
+entries in the
+.Sy map
+and
+.Sy pagedata
+files.
+Opening such a file yields a file descriptor for the underlying mapped file
+associated with an address-space mapping in the process.
+The file name
+.Pa a.out
+appears in the directory as an alias for the process's executable file.
+.Pp
+The
+.Pa object
+directory makes it possible for a controlling process to gain
+access to the object file and any shared libraries (and consequently the symbol
+tables) without having to know the actual path names of the executable files.
+.Ss path
+A directory containing symbolic links to files opened by the process.
+The directory includes one entry for
+.Pa cwd
+and
+.Pa root .
+The directory also contains a numerical entry for each file descriptor in the
+.Pa fd
+directory, and entries matching those in the
+.Pa object
+directory.
+If this information is not available, any attempt to read the contents of the
+symbolic link will fail.
+This is most common for files that do not exist in the filesystem namespace
+(such as
+.Sy FIFO Ns s
+and sockets), but can also happen for regular files.
+For the file descriptor entries, the path may be different from the one
+used by the process to open the file.
+.Ss pagedata
+Opening the page data file enables tracking of address space references and
+modifications on a per-page basis.
+.Pp
+A
+.Xr read 2
+of the page data file descriptor returns structured page data
+and atomically clears the page data maintained for the file by the system.
+That is to say, each read returns data collected since the last read; the
+first read returns data collected since the file was opened.
+When the call completes, the read buffer contains the following structure as
+its header and thereafter contains a number of section header structures and
+associated byte arrays that must be accessed by walking linearly through the
+buffer.
+.Bd -literal -offset 2
+typedef struct prpageheader {
+ timestruc_t pr_tstamp; /* real time stamp, time of read() */
+ ulong_t pr_nmap; /* number of address space mappings */
+ ulong_t pr_npage; /* total number of pages */
+} prpageheader_t;
+.Ed
+.Pp
+The header is followed by
+.Sy "pr_nmap prasmap"
+structures and associated data arrays.
+The
+.Sy prasmap
+structure contains the following elements:
+.Bd -literal -offset 2
+typedef struct prasmap {
+ uintptr_t pr_vaddr; /* virtual address of mapping */
+ ulong_t pr_npage; /* number of pages in mapping */
+ char pr_mapname[PRMAPSZ]; /* name in /proc/pid/object */
+ offset_t pr_offset; /* offset into mapped object, if any */
+ int pr_mflags; /* protection and attribute flags */
+ int pr_pagesize; /* pagesize for this mapping in bytes */
+ int pr_shmid; /* SysV shared memory identifier */
+} prasmap_t;
+.Ed
+.Pp
+Each section header is followed by
+.Sy pr_npage
+bytes, one byte for each page in the mapping, plus 0-7 null bytes at the end
+so that the next
+.Sy prasmap
+structure begins on an eight-byte aligned boundary.
+Each data byte may contain these flags:
+.Bl -tag -width "PG_REFERENCED" -offset 2
+.It Sy PG_REFERENCED
+page has been referenced.
+.It Sy PG_MODIFIED
+page has been modified.
+.El
+.Pp
+If the read buffer is not large enough to contain all of the page data, the
+read fails with
+.Er E2BIG
+and the page data is not cleared.
+The required size of the read buffer can be determined through
+.Xr fstat 2 .
+Application of
+.Xr lseek 2
+to the page data file descriptor is ineffective; every read
+starts from the beginning of the file.
+Closing the page data file descriptor
+terminates the system overhead associated with collecting the data.
+.Pp
+More than one page data file descriptor for the same process can be opened, up
+to a system-imposed limit per traced process.
+A read of one does not affect the data being collected by the system for the
+others.
+An open of the page data file will fail with
+.Er ENOMEM
+if the system-imposed limit would be exceeded.
+.Ss watch
+Contains an array of
+.Vt prwatch
+structures, one for each watched area established by the
+.Sy PCWATCH
+control operation.
+See
+.Sx PCWATCH
+for details.
+.Ss usage
+Contains process usage information described by a
+.Vt prusage
+structure which contains at least the following fields:
+.Bd -literal -offset 2
+typedef struct prusage {
+ id_t pr_lwpid; /* lwp id. 0: process or defunct */
+ int pr_count; /* number of contributing lwps */
+ timestruc_t pr_tstamp; /* real time stamp, time of read() */
+ timestruc_t pr_create; /* process/lwp creation time stamp */
+ timestruc_t pr_term; /* process/lwp termination time stamp */
+ timestruc_t pr_rtime; /* total lwp real (elapsed) time */
+ timestruc_t pr_utime; /* user level CPU time */
+ timestruc_t pr_stime; /* system call CPU time */
+ timestruc_t pr_ttime; /* other system trap CPU time */
+ timestruc_t pr_tftime; /* text page fault sleep time */
+ timestruc_t pr_dftime; /* data page fault sleep time */
+ timestruc_t pr_kftime; /* kernel page fault sleep time */
+ timestruc_t pr_ltime; /* user lock wait sleep time */
+ timestruc_t pr_slptime; /* all other sleep time */
+ timestruc_t pr_wtime; /* wait-cpu (latency) time */
+ timestruc_t pr_stoptime; /* stopped time */
+ ulong_t pr_minf; /* minor page faults */
+ ulong_t pr_majf; /* major page faults */
+ ulong_t pr_nswap; /* swaps */
+ ulong_t pr_inblk; /* input blocks */
+ ulong_t pr_oublk; /* output blocks */
+ ulong_t pr_msnd; /* messages sent */
+ ulong_t pr_mrcv; /* messages received */
+ ulong_t pr_sigs; /* signals received */
+ ulong_t pr_vctx; /* voluntary context switches */
+ ulong_t pr_ictx; /* involuntary context switches */
+ ulong_t pr_sysc; /* system calls */
+ ulong_t pr_ioch; /* chars read and written */
+} prusage_t;
+.Ed
+.Pp
+Microstate accounting is now continuously enabled.
+While this information was
+previously an estimate, if microstate accounting were not enabled, the current
+information is now never an estimate represents time the process has spent in
+various states.
+.Ss lstatus
+Contains a
+.Vt prheader
+structure followed by an array of
+.Vt lwpstatus
+structures, one for each active lwp in the process (see also
+.Pa /proc/ Ns Em pid Ns Pa /lwp/ Ns Em lwpid Ns Pa /lwpstatus ,
+below).
+The
+.Vt prheader
+structure describes the number and size of the array entries that follow.
+.Bd -literal -offset 2
+typedef struct prheader {
+ long pr_nent; /* number of entries */
+ size_t pr_entsize; /* size of each entry, in bytes */
+} prheader_t;
+.Ed
+.Pp
+The
+.Vt lwpstatus
+structure may grow by the addition of elements at the end in future releases
+of the system.
+Programs must use
+.Sy pr_entsize
+in the file header to index through the array.
+These comments apply to all
+.Pa /proc
+files that include a
+.Vt prheader
+structure
+.Pf ( Pa lpsinfo
+and
+.Pa lusage ,
+below).
+.Ss lpsinfo
+Contains a
+.Vt prheader
+structure followed by an array of
+.Vt lwpsinfo
+structures, one for eachactive and zombie lwp in the process.
+See also
+.Pa /proc/ Ns Em pid Ns Pa /lwp/ Ns Em lwpid Ns Pa /lwpsinfo ,
+below.
+.Ss lusage
+Contains a
+.Vt prheader
+structure followed by an array of
+.Vt prusage
+structures, one for each active lwp in the process, plus an additional element
+at the beginning that contains the summation over all defunct lwps (lwps that
+once existed but no longer exist in the process).
+Excluding the
+.Sy pr_lwpid ,
+.Sy pr_tstamp ,
+.Sy pr_create ,
+and
+.Sy pr_term
+entries, the entry-by-entry summation over all these structures is the
+definition of the process usage information obtained from the
+.Pa usage
+file. (See also
+.Pa /proc/ Ns Em pid Ns Pa /lwp/ Ns Em lwpid Ns Pa /lwpusage ,
+below.)
+.Ss lwp
+A directory containing entries each of which names an active or zombie lwp
+within the process.
+These entries are themselves directories containing additional files as
+described below.
+Only the
+.Pa lwpsinfo
+file exists in the directory of a zombie lwp.
+.Sh "STRUCTURE OF" Pa /proc/ Ns Em pid Ns Pa /lwp/ Ns Em lwpid
+A given directory
+.Pa /proc/ Ns Em pid Ns Pa /lwp/ Ns Em lwpid
+contains the following entries:
+.Ss lwpctl
+Write-only control file.
+The messages written to this file affect the specific
+lwp rather than the representative lwp, as is the case for the process's
+.Pa ctl
+file.
+.Ss lwpname
+A buffer of
+.Dv THREAD_NAME_MAX
+bytes representing the LWP name; the buffer is
+zero-filled if the thread name is shorter than the buffer.
+If no thread name is set, the buffer contains the empty string.
+A read with a buffer shorter than
+.Dv THREAD_NAME_MAX
+bytes is not guaranteed to be NUL-terminated.
+Writing to this file will set the LWP name for the specific lwp.
+This file may not be present in older operating system versions.
+.Dv THREAD_NAME_MAX
+may increase in the future; clients should be prepared for this.
+.Ss lwpstatus
+lwp-specific state information.
+This file contains the
+.Vt lwpstatus
+structure for the specific lwp as described above for the representative lwp in
+the process's
+.Pa status
+file.
+.Ss lwpsinfo
+lwp-specific
+.Xr ps 1
+information.
+This file contains the
+.Vt lwpsinfo
+structure for the specific lwp as described above for the representative lwp in
+the process's
+.Pa psinfo
+file.
+The
+.Pa lwpsinfo
+file remains accessible after an lwp becomes a zombie.
+.Ss lwpusage
+This file contains the
+.Vt prusage
+structure for the specific lwp as described above for the process's
+.Pa usage
+file.
+.Ss gwindows
+This file exists only on SPARC based machines.
+If it is non-empty, it contains a
+.Vt gwindows_t
+structure, defined in
+.In sys/regset.h ,
+with the values of those SPARC register windows that could not be stored on
+the stack when the lwp stopped.
+Conditions under which register windows are not stored on the
+stack are: the stack pointer refers to nonexistent process memory or the stack
+pointer is improperly aligned.
+If the lwp is not stopped or if there are no
+register windows that could not be stored on the stack, the file is empty (the
+usual case).
+.Ss xregs
+Extra state registers.
+The extra state register set is architecture dependent;
+this file is empty if the system does not support extra state registers.
+If the file is non-empty, it contains an architecture dependent structure of
+type
+.Vt prxregset_t ,
+defined in
+.In procfs.h ,
+with the values of the lwp's extra state registers.
+If the lwp is not stopped, all register values are undefined.
+See also the
+.Sx PCSXREG
+control operation, below.
+.Ss asrs
+This file exists only for 64-bit SPARC V9 processes.
+It contains an
+.Vt asrset_t
+structure, defined in
+.In sys/regset.h ,
+containing the values of the lwp's platform-dependent ancillary state registers.
+If the lwp is not stopped, all register values are undefined.
+See also the
+.Sx PCSASRS
+control operation, below.
+.Ss spymaster
+For an agent lwp (see
+.Sx PCAGENT ) ,
+this file contains a
+.Vt psinfo_t
+structure that corresponds to the process that created the agent lwp at the
+time the agent was created.
+This structure is identical to that retrieved via the
+.Pa psinfo
+file, with one modification: the
+.Sy pr_time
+field does not correspond to the CPU time for the process, but rather to the
+creation time of the agent lwp.
+.Ss templates
+A directory which contains references to the active templates for the lwp,
+named by the contract type.
+Changes made to an active template descriptor do
+not affect the original template which was activated, though they do affect the
+active template.
+It is not possible to activate an active template descriptor.
+See
+.Xr contract 5 .
+.Sh CONTROL MESSAGES
+Process state changes are effected through messages written to a process's
+.Sy ctl
+file or to an individual lwp's
+.Sy lwpctl
+file.
+All control messages consist of a
+.Sy long
+that names the specific operation followed by
+additional data containing the operand, if any.
+.Pp
+Multiple control messages may be combined in a single
+.Xr write 2
+(or
+.Xr writev 2 )
+to a control file, but no partial writes are permitted.
+That is, each control message, operation code plus operand, if any, must be
+presented in its entirety to the
+.Xr write 2
+and not in pieces over several system calls.
+If a control operation fails, no subsequent operations contained in the same
+.Xr write 2
+are attempted.
+.Pp
+Descriptions of the allowable control messages follow.
+In all cases, writing a message to a control file for a process or lwp that
+has terminated elicits the error
+.Er ENOENT .
+.Ss PCSTOP PCDSTOP PCWSTOP PCTWSTOP
+When applied to the process control file,
+.Sy PCSTOP
+directs all lwps to stop and waits for them to stop,
+.Sy PCDSTOP
+directs all lwps to stop without waiting for them to stop, and
+.Sy PCWSTOP
+simply waits for all lwps to stop.
+When applied to an lwp control file,
+.Sy PCSTOP
+directs the specific lwp to stop and waits until it has stopped,
+.Sy PCDSTOP
+directs the specific lwp to stop without waiting for it to stop, and
+.Sy PCWSTOP
+ simply waits for the specific lwp to stop.
+When applied to an lwp control file,
+.Sy PCSTOP
+and
+.Sy PCWSTOP
+complete when the lwp stops on an event of interest, immediately
+if already so stopped; when applied to the process control file, they complete
+when every lwp has stopped either on an event of interest or on a
+.Sy PR_SUSPENDED
+stop.
+.Pp
+.Sy PCTWSTOP
+is identical to
+.Sy PCWSTOP
+except that it enables the operation to time out, to avoid waiting forever for
+a process or lwp that may never stop on an event of interest.
+.Sy PCTWSTOP
+takes a
+.Sy long
+operand specifying a number of milliseconds; the wait will terminate
+successfully after the specified number of milliseconds even if the process or
+lwp has not stopped; a timeout value of zero makes the operation identical to
+.Sy PCWSTOP .
+.Pp
+An
+.Dq event of interest
+is either a
+.Sy PR_REQUESTED
+stop or a stop that has been specified in the process's tracing flags (set by
+.Sy PCSTRACE ,
+.Sy PCSFAULT ,
+.Sy PCSENTRY ,
+and
+.Sy PCSEXIT ) .
+.Sy PR_JOBCONTROL
+ and
+.Sy PR_SUSPENDED
+stops are specifically not events of interest.
+(An lwp may stop twice due to a stop signal, first showing
+.Sy PR_SIGNALLED
+if the signal is traced and again showing
+.Sy PR_JOBCONTROL
+if the lwp is set running without clearing the signal.)
+If
+.Sy PCSTOP
+or
+.Sy PCDSTOP
+is applied to an
+lwp that is stopped, but not on an event of interest, the stop directive takes
+effect when the lwp is restarted by the competing mechanism.
+At that time, the lwp enters a
+.Sy PR_REQUESTED
+stop before executing any user-level code.
+.Pp
+A write of a control message that blocks is interruptible by a signal so that,
+for example, an
+.Xr alarm 2
+can be set to avoid waiting forever for a
+process or lwp that may never stop on an event of interest.
+If
+.Sy PCSTOP
+is interrupted, the lwp stop directives remain in effect even though the
+.Xr write 2
+returns an error.
+(Use of
+.Sy PCTWSTOP
+with a non-zero timeout is recommended over
+.Sy PCWSTOP
+with an
+.Xr alarm 2 . )
+.Pp
+A system process (indicated by the
+.Sy PR_ISSYS
+flag) never executes at user level, has no user-level address space visible
+through
+.Pa /proc ,
+and cannot be stopped.
+Applying one of these operations to a system process or any of its
+lwps elicits the error
+.Er EBUSY .
+.Ss PCRUN
+Make an lwp runnable again after a stop.
+This operation takes a
+.Vt long
+operand containing zero or more of the following flags:
+.Bl -tag -width "PRSABORT" -offset left
+.It Sy PRCSIG
+clears the current signal, if any (see
+.Sx PCCSIG ) .
+.It Sy PRCFAULT
+clears the current fault, if any (see
+.Sx PCCFAULT ) .
+.It Sy PRSTEP
+directs the lwp to execute a single machine instruction.
+On completion of the instruction, a trace trap occurs.
+If
+.Sy FLTTRACE
+is being traced, the lwp stops; otherwise, it is sent
+.Sy SIGTRAP .
+If
+.Sy SIGTRAP
+is being traced and is not blocked, the lwp stops.
+When the lwp stops on an event of interest,
+the single-step directive is cancelled, even if the stop occurs before the
+instruction is executed.
+This operation requires hardware and operating system
+support and may not be implemented on all processors.
+It is implemented on SPARC and x86-based machines.
+.It Sy PRSABORT
+is meaningful only if the lwp is in a
+.Sy PR_SYSENTRY
+stop or is marked
+.Sy PR_ASLEEP ;
+it instructs the lwp to abort execution of the system call (see
+.Sx PCSENTRY
+and
+.Sx PCSEXIT ) .
+.It Sy PRSTOP
+directs the lwp to stop again as soon as possible after resuming execution (see
+.Sx PCDSTOP ) .
+In particular, if the lwp is stopped on
+.Sy PR_SIGNALLED
+or
+.Sy PR_FAULTED ,
+the next stop will show
+.Sy PR_REQUESTED ,
+no other stop
+will have intervened, and the lwp will not have executed any user-level code.
+.El
+.Pp
+When applied to an lwp control file,
+.Sy PCRUN
+clears any outstanding
+directed-stop request and makes the specific lwp runnable.
+The operation fails with
+.Er EBUSY
+if the specific lwp is not stopped on an event of interest or
+has not been directed to stop or if the agent lwp exists and this is not the
+agent lwp (see
+.Sx PCAGENT ) .
+.Pp
+When applied to the process control file, a representative lwp is chosen for
+the operation as described for
+.Pa /proc/ Ns Em pid Ns Pa /status .
+The operation fails with
+.Er EBUSY
+if the representative lwp is not stopped on an
+event of interest or has not been directed to stop or if the agent lwp exists.
+If
+.Sy PRSTEP
+or
+.Sy PRSTOP
+was requested, the representative lwp is made
+runnable and its outstanding directed-stop request is cleared; otherwise all
+outstanding directed-stop requests are cleared and, if it was stopped on an
+event of interest, the representative lwp is marked
+.Sy PR_REQUESTED .
+If, as a consequence, all lwps are in the
+.Sy PR_REQUESTED
+or
+.Sy PR_SUSPENDED
+stop state, all lwps showing
+.Sy PR_REQUESTED
+are made runnable.
+.Ss PCSTRACE
+Define a set of signals to be traced in the process.
+The receipt of one of these signals by an lwp causes the lwp to stop.
+The set of signals is defined using an operand
+.Sy sigset_t
+contained in the control message.
+Receipt of
+.Sy SIGKILL
+cannot be traced; if specified, it is silently ignored.
+.Pp
+If a signal that is included in an lwp's held signal set (the signal mask) is
+sent to the lwp, the signal is not received and does not cause a stop until it
+is removed from the held signal set, either by the lwp itself or by setting the
+held signal set with
+.Sy PCSHOLD .
+.Ss PCCSIG
+The current signal, if any, is cleared from the specific or representative lwp.
+.Ss PCSSIG
+The current signal and its associated signal information for the specific or
+representative lwp are set according to the contents of the operand
+.Vt siginfo
+structure (see
+.In sys/siginfo.h ) .
+If the specified signal number is zero, the current signal is cleared.
+The semantics of this operation are different from those of
+.Xr kill 2
+in that the signal is delivered to the lwp immediately after execution is
+resumed (even if it is being blocked) and an additional
+.Sy PR_SIGNALLED
+stop does not intervene even if the signal is traced.
+Setting the current signal to
+.Sy SIGKILL
+terminates the process immediately.
+.Ss PCKILL
+If applied to the process control file, a signal is sent to the process with
+semantics identical to those of
+.Xr kill 2
+If applied to an lwp control file, a directed signal is sent to the specific
+lwp.
+The signal is named in a
+.Vt long
+operand contained in the message.
+Sending
+.Sy SIGKILL
+terminates the process immediately.
+.Ss PCUNKILL
+A signal is deleted, that is, it is removed from the set of pending signals.
+If applied to the process control file, the signal is deleted from the process's
+pending signals.
+If applied to an lwp control file, the signal is deleted from
+the lwp's pending signals.
+The current signal (if any) is unaffected.
+The signal is named in a
+.Sy long
+operand in the control message.
+It is an error
+.Pq Er EINVAL
+to attempt to delete
+.Sy SIGKILL .
+.Ss PCSHOLD
+Set the set of held signals for the specific or representative lwp (signals
+whose delivery will be blocked if sent to the lwp).
+The set of signals is specified with a
+.Vt sigset_t
+operand.
+.Sy SIGKILL
+and
+.Sy SIGSTOP
+cannot be held; if specified, they are silently ignored.
+.Ss PCSFAULT
+Define a set of hardware faults to be traced in the process.
+On incurring one of these faults, an lwp stops.
+The set is defined via the operand
+.Vt fltset_t
+structure.
+Fault names are defined in
+.In sys/fault.h
+and include the following.
+Some of these may not occur on all processors; there may
+be processor-specific faults in addition to these.
+.Bl -tag -width "FLTACCESS" -offset indent
+.It Sy FLTILL
+illegal instruction
+.It Sy FLTPRIV
+privileged instruction
+.It Sy FLTBPT
+breakpoint trap
+.It Sy FLTTRACE
+trace trap (single-step)
+.It Sy FLTWATCH
+watchpoint trap
+.It Sy FLTACCESS
+memory access fault (bus error)
+.It Sy FLTBOUNDS
+memory bounds violation
+.It Sy FLTIOVF
+integer overflow
+.It Sy FLTIZDIV
+integer zero divide
+.It Sy FLTFPE
+floating-point exception
+.It Sy FLTSTACK
+unrecoverable stack fault
+.It Sy FLTPAGE
+recoverable page fault
+.El
+.Pp
+When not traced, a fault normally results in the posting of a signal to the lwp
+that incurred the fault.
+If an lwp stops on a fault, the signal is posted to
+the lwp when execution is resumed unless the fault is cleared by
+.Sy PCCFAULT
+or by the
+.Sy PRCFAULT
+option of
+.Sy PCRUN .
+.Sy FLTPAGE
+is an exception; no signal is posted.
+The
+.Sy pr_info
+field in the
+.Vt lwpstatus
+structure identifies the signal to be sent and contains machine-specific
+information about the fault.
+.Ss PCCFAULT
+The current fault, if any, is cleared; the associated signal will not be sent
+to the specific or representative lwp.
+.Ss PCSENTRY PCSEXIT
+These control operations instruct the process's lwps to stop on entry to or
+exit from specified system calls.
+The set of system calls to be traced is defined via an operand
+.Vt sysset_t
+structure.
+.Pp
+When entry to a system call is being traced, an lwp stops after having begun
+the call to the system but before the system call arguments have been fetched
+from the lwp.
+When exit from a system call is being traced, an lwp stops on completion of
+the system call just prior to checking for signals and returning to user level.
+At this point, all return values have been stored into the lwp's registers.
+.Pp
+If an lwp is stopped on entry to a system call
+.Pq Sy PR_SYSENTRY
+or when sleeping in an interruptible system call
+.Pf ( Sy PR_ASLEEP
+is set), it may be instructed to go directly to system call exit by specifying
+the
+.Sy PRSABORT
+flag in a
+.Sy PCRUN
+control message.
+Unless exit from the system call is being traced, the lwp returns to user
+level showing
+.Er EINTR .
+.Ss PCWATCH
+Set or clear a watched area in the controlled process from a
+.Vt prwatch
+structure operand:
+.Bd -literal -offset 2
+typedef struct prwatch {
+ uintptr_t pr_vaddr; /* virtual address of watched area */
+ size_t pr_size; /* size of watched area in bytes */
+ int pr_wflags; /* watch type flags */
+} prwatch_t;
+.Ed
+.Pp
+.Sy pr_vaddr
+specifies the virtual address of an area of memory to be watched
+in the controlled process.
+.Sy pr_size
+specifies the size of the area, in bytes.
+.Sy pr_wflags
+specifies the type of memory access to be monitored as a
+bit-mask of the following flags:
+.Bl -tag -width "WA_TRAPAFTER" -offset indent
+.It Sy WA_READ
+read access
+.It Sy WA_WRITE
+write access
+.It Sy WA_EXEC
+execution access
+.It Sy WA_TRAPAFTER
+trap after the instruction completes
+.El
+.Pp
+If
+.Sy pr_wflags
+is non-empty, a watched area is established for the virtual
+address range specified by
+.Sy pr_vaddr
+and
+.Sy pr_size .
+If
+.Sy pr_wflags
+is empty, any previously-established watched area starting at the specified
+virtual address is cleared;
+.Sy pr_size
+is ignored.
+.Pp
+A watchpoint is triggered when an lwp in the traced process makes a memory
+reference that covers at least one byte of a watched area and the memory
+reference is as specified in
+.Sy pr_wflags .
+When an lwp triggers a watchpoint, it incurs a watchpoint trap.
+If
+.Sy FLTWATCH
+is being traced, the lwp stops; otherwise, it is sent a
+.Sy SIGTRAP
+signal; if
+.Sy SIGTRAP
+is being traced and is not blocked, the lwp stops.
+.Pp
+The watchpoint trap occurs before the instruction completes unless
+.Sy WA_TRAPAFTER
+was specified, in which case it occurs after the instruction completes.
+If it occurs before completion, the memory is not modified.
+If it occurs after completion, the memory is modified (if the access is a write
+access).
+.Pp
+Physical i/o is an exception for watchpoint traps.
+In this instance, there is no guarantee that memory before the watched area
+has already been modified (or in the case of
+.Sy WA_TRAPAFTER ,
+that the memory following the watched area
+has not been modified) when the watchpoint trap occurs and the lwp stops.
+.Pp
+.Sy pr_info
+in the
+.Vt lwpstatus
+structure contains information pertinent to the watchpoint trap.
+In particular, the
+.Sy si_addr
+field contains the
+virtual address of the memory reference that triggered the watchpoint, and the
+.Sy si_code
+field contains one of
+.Sy TRAP_RWATCH ,
+.Sy TRAP_WWATCH ,
+or
+.Sy TRAP_XWATCH ,
+indicating read, write, or execute access, respectively.
+The
+.Sy si_trapafter
+field is zero unless
+.Sy WA_TRAPAFTER
+is in effect for this watched area; non-zero indicates that the current
+instruction is not the instruction that incurred the watchpoint trap.
+The
+.Sy si_pc
+field contains the virtual address of the instruction that incurred the trap.
+.Pp
+A watchpoint trap may be triggered while executing a system call that makes
+reference to the traced process's memory.
+The lwp that is executing the system call incurs the watchpoint trap while
+still in the system call.
+If it stops as a result, the
+.Vt lwpstatus
+structure contains the system call number and its arguments.
+If the lwp does not stop, or if it is set running again without
+clearing the signal or fault, the system call fails with
+.Er EFAULT .
+If
+.Sy WA_TRAPAFTER
+was specified, the memory reference will have completed and
+the memory will have been modified (if the access was a write access) when the
+watchpoint trap occurs.
+.Pp
+If more than one of
+.Sy WA_READ ,
+.Sy WA_WRITE ,
+and
+.Sy WA_EXEC
+is specified for a watched area, and a single instruction incurs more than one
+of the specified types, only one is reported when the watchpoint trap occurs.
+The precedence is
+.Sy WA_EXEC ,
+.Sy WA_READ ,
+.Sy WA_WRITE
+.Pf ( Sy WA_EXEC
+and
+.Sy WA_READ
+take precedence over
+.Sy WA_WRITE ) ,
+unless
+.Sy WA_TRAPAFTER
+was specified, in which case it is
+.Sy WA_WRITE ,
+.Sy WA_READ ,
+.Sy WA_EXEC
+.Pf ( Sy WA_WRITE
+takes precedence).
+.Pp
+.Sy PCWATCH
+fails with
+.Er EINVAL
+if an attempt is made to specify overlapping watched areas or if
+.Sy pr_wflags
+contains flags other than those specified above.
+It fails with
+.Er ENOMEM
+if an attempt is made to establish more watched areas than the system can
+support (the system can support thousands).
+.Pp
+The child of a
+.Xr vfork 2
+borrows the parent's address space.
+When a
+.Xr vfork 2
+is executed by a traced process, all watched areas established
+for the parent are suspended until the child terminates or performs an
+.Xr exec 2 .
+Any watched areas established independently in the child are
+cancelled when the parent resumes after the child's termination or
+.Xr exec 2 .
+.Sy PCWATCH
+fails with
+.Er EBUSY
+if applied to the parent of a
+.Xr vfork 2
+before the child has terminated or performed an
+.Xr exec 2 .
+The
+.Sy PR_VFORKP
+flag is set in the
+.Sy pstatus
+structure for such a parent process.
+.Pp
+Certain accesses of the traced process's address space by the operating system
+are immune to watchpoints.
+The initial construction of a signal stack frame when a signal is delivered to
+an lwp will not trigger a watchpoint trap even if the new frame covers watched
+areas of the stack.
+Once the signal handler is entered, watchpoint traps occur normally.
+On SPARC based machines, register window overflow and underflow will not
+trigger watchpoint traps, even if the register window save areas cover watched
+areas of the stack.
+.Pp
+Watched areas are not inherited by child processes, even if the traced
+process's inherit-on-fork mode,
+.Sy PR_FORK ,
+is set (see
+.Sy PCSET ,
+below).
+All watched areas are cancelled when the traced process performs a successful
+.Xr exec 2 .
+.Ss PCSET PCUNSET
+.Sy PCSET
+sets one or more modes of operation for the traced process.
+.Sy PCUNSET
+unsets these modes.
+The modes to be set or unset are specified by flags in an operand
+.Sy long
+in the control message:
+.Bl -tag -offset left -width "PR_MSFORK"
+.It Sy PR_FORK
+(inherit-on-fork): When set, the process's tracing flags and its
+inherit-on-fork mode are inherited by the child of a
+.Xr fork 2 ,
+.Xr fork1 2 ,
+or
+.Xr vfork 2 .
+When unset, child processes start with all tracing flags cleared.
+.It Sy PR_RLC
+(run-on-last-close): When set and the last writable
+.Pa /proc
+file descriptor referring to the traced process or any of its lwps is closed,
+all of the process's tracing flags and watched areas are cleared, any
+outstanding stop directives are canceled, and if any lwps are stopped on
+events of interest, they are set running as though
+.Sy PCRUN
+had been applied to them.
+When unset, the process's tracing flags and watched areas are retained and
+lwps are not set running on last close.
+.It Sy PR_KLC
+(kill-on-last-close): When set and the last writable
+.Pa /proc
+file descriptor referring to the traced process or any of its lwps is closed,
+the process is terminated with
+.Sy SIGKILL .
+.It Sy PR_ASYNC
+(asynchronous-stop): When set, a stop on an event of interest by one lwp does
+not directly affect any other lwp in the process.
+When unset and an lwp stops on an event of interest other than
+.Sy PR_REQUESTED ,
+all other lwps in the process are directed to stop.
+.It Sy PR_MSACCT
+(microstate accounting): Microstate accounting is now continuously enabled.
+This flag is deprecated and no longer has any effect upon microstate
+accounting.
+Applications may toggle this flag; however, microstate accounting
+will remain enabled regardless.
+.It Sy PR_MSFORK
+(inherit microstate accounting): All processes now inherit microstate
+accounting, as it is continuously enabled.
+This flag has been deprecated and its use no longer has any effect upon the
+behavior of microstate accounting.
+.It Sy PR_BPTADJ
+(breakpoint trap pc adjustment): On x86-based machines, a breakpoint trap
+leaves the program counter (the
+.Sy EIP )
+referring to the breakpointed instruction plus one byte.
+When
+.Sy PR_BPTADJ
+is set, the system will adjust the program counter back to the location of the
+breakpointed instruction when the lwp stops on a breakpoint.
+This flag has no effect on SPARC based machines, where breakpoint traps leave
+the program counter referring to the breakpointed instruction.
+.It Sy PR_PTRACE
+(ptrace-compatibility): When set, a stop on an event of interest by the traced
+process is reported to the parent of the traced process by
+.Xr wait 3C ,
+.Sy SIGTRAP
+is sent to the traced process when it executes a successful
+.Xr exec 2 ,
+setuid/setgid flags are not honored for execs performed by the
+traced process, any exec of an object file that the traced process cannot read
+fails, and the process dies when its parent dies.
+This mode is deprecated; it is provided only to allow
+.Xr ptrace 3C
+to be implemented as a library function using
+.Pa /proc .
+.El
+.Pp
+It is an error
+.Pq Er EINVAL
+to specify flags other than those described above
+or to apply these operations to a system process.
+The current modes are reported in the
+.Sy pr_flags
+field of
+.Pa /proc/ Ns Em pid Ns Pa /status
+and
+.Pa /proc/ Ns Em pid Ns Pa /lwp/ Ns Em lwp Ns Pa /lwpstatus .
+.Ss PCSREG
+Set the general registers for the specific or representative lwp according to
+the operand
+.Vt prgregset_t
+structure.
+.Pp
+On SPARC based systems, only the condition-code bits of the processor-status
+register (R_PSR) of SPARC V8 (32-bit) processes can be modified by
+.Sy PCSREG .
+Other privileged registers cannot be modified at all.
+.Pp
+On x86-based systems, only certain bits of the flags register (EFL) can be
+modified by
+.Sy PCSREG :
+these include the condition codes, direction-bit, and overflow-bit.
+.Pp
+.Sy PCSREG
+fails with
+.Er EBUSY
+if the lwp is not stopped on an event of interest.
+.Ss PCSVADDR
+Set the address at which execution will resume for the specific or
+representative lwp from the operand
+.Vt long .
+On SPARC based systems, both %pc and %npc are set, with %npc set to the
+instruction following the virtual address.
+On x86-based systems, only %eip is set.
+.Sy PCSVADDR
+fails with
+.Er EBUSY
+if the lwp is not stopped on an event of interest.
+.Ss PCSFPREG
+Set the floating-point registers for the specific or representative lwp
+according to the operand
+.Vt prfpregset_t
+structure.
+An error
+.Pq Er EINVAL
+is returned if the system does not support floating-point operations (no
+floating-point hardware and the system does not emulate floating-point machine
+instructions).
+.Sy PCSFPREG
+fails with
+.Er EBUSY
+if the lwp is not stopped on an event of interest.
+.Ss PCSXREG
+Set the extra state registers for the specific or representative lwp according
+to the architecture-dependent operand
+.Vt prxregset_t
+structure.
+An error
+.Pq Er EINVAL
+is returned if the system does not support extra state registers.
+.Sy PCSXREG
+fails with
+.Er EBUSY
+if the lwp is not stopped on an event of interest.
+.Ss PCSASRS
+Set the ancillary state registers for the specific or representative lwp
+according to the SPARC V9 platform-dependent operand
+.Vt asrset_t
+structure.
+An error
+.Pq Er EINVAL
+is returned if either the target process or the
+controlling process is not a 64-bit SPARC V9 process.
+Most of the ancillary state registers are privileged registers that cannot be
+modified.
+Only those that can be modified are set; all others are silently ignored.
+.Sy PCSASRS
+fails with
+.Er EBUSY
+if the lwp is not stopped on an event of interest.
+.Ss PCAGENT
+Create an agent lwp in the controlled process with register values from the
+operand
+.Vt prgregset_t
+structure (see
+.Sy PCSREG ,
+above).
+The agent lwp is created in the stopped state showing
+.Sy PR_REQUESTED
+and with its held signal set (the signal mask) having all signals except
+.Sy SIGKILL
+and
+.Sy SIGSTOP
+blocked.
+.Pp
+The
+.Sy PCAGENT
+operation fails with
+.Er EBUSY
+unless the process is fully stopped via
+.Pa /proc ,
+that is, unless all of the lwps in the process are
+stopped either on events of interest or on
+.Sy PR_SUSPENDED ,
+or are stopped on
+.Sy PR_JOBCONTROL
+and have been directed to stop via
+.Sy PCDSTOP .
+It fails with
+.Er EBUSY
+if an agent lwp already exists.
+It fails with
+.Er ENOMEM
+if system resources for creating new lwps have been exhausted.
+.Pp
+Any
+.Sy PCRUN
+operation applied to the process control file or to the control
+file of an lwp other than the agent lwp fails with
+.Er EBUSY
+as long as the agent lwp exists.
+The agent lwp must be caused to terminate by executing the
+.Sy SYS_lwp_exit
+system call trap before the process can be restarted.
+.Pp
+Once the agent lwp is created, its lwp-ID can be found by reading the process
+status file.
+To facilitate opening the agent lwp's control and status files,
+the directory name
+.Pa /proc/ Ns Em pid Ns Pa /lwp/agent
+is accepted for lookup operations as an invisible alias for
+.Pa /proc/ Ns Em pid Ns Pa /lwp/ Ns Em lwpid ,
+.Em lwpid
+being the lwp-ID of the agent lwp (invisible in the sense that the name
+.Dq agent
+does not appear in a directory listing of
+.Pa /proc/ Ns Em pid Ns Pa /lwp
+obtained from
+.Xr ls 1 ,
+.Xr getdents 2 ,
+or
+.Xr readdir 3C .
+.Pp
+The purpose of the agent lwp is to perform operations in the controlled process
+on behalf of the controlling process: to gather information not directly
+available via
+.Pa /proc
+files, or in general to make the process change state
+in ways not directly available via
+.Pa /proc
+control operations.
+To make use of an agent lwp, the controlling process must be capable of making
+it execute system calls (specifically, the
+.Sy SYS_lwp_exit
+system call trap).
+The register values given to the agent lwp on creation are typically the
+registers of the representative lwp, so that the agent lwp can use its stack.
+.Pp
+If the controlling process neglects to force the agent lwp to execute the
+.Sy SYS_lwp_exit
+system call (due to either logic error or fatal failure on
+the part of the controlling process), the agent lwp will remain in the target
+process.
+For purposes of being able to debug these otherwise rogue agents,
+information as to the creator of the agent lwp is reflected in that lwp's
+.Pa spymaster
+file in
+.Pa /proc .
+Should the target process generate a core
+dump with the agent lwp in place, this information will be available via the
+.Sy NT_SPYMASTER
+note in the core file (see
+.Xr core 5 ) .
+.Pp
+The agent lwp is not allowed to execute any variation of the
+.Sy SYS_fork
+or
+.Sy SYS_exec
+system call traps.
+Attempts to do so yield
+.Er ENOTSUP
+to the agent lwp.
+.Pp
+Symbolic constants for system call trap numbers like
+.Sy SYS_lwp_exit
+and
+.Sy SYS_lwp_create
+can be found in the header file
+.In sys/syscall.h .
+.Ss PCREAD PCWRITE
+Read or write the target process's address space via a
+.Vt priovec
+structure operand:
+.Bd -literal -offset 2
+typedef struct priovec {
+ void *pio_base; /* buffer in controlling process */
+ size_t pio_len; /* size of read/write request in bytes */
+ off_t pio_offset; /* virtual address in target process */
+} priovec_t;
+.Ed
+.Pp
+These operations have the same effect as
+.Xr pread 2
+and
+.Xr pwrite 2 ,
+respectively, of the target process's address space file.
+The difference is that more than one
+.Sy PCREAD
+or
+.Sy PCWRITE
+control operation can be
+written to the control file at once, and they can be interspersed with other
+control operations in a single write to the control file.
+This is useful, for example, when planting many breakpoint instructions in
+the process's address space, or when stepping over a breakpointed instruction.
+Unlike
+.Xr pread 2
+and
+.Xr pwrite 2 ,
+no provision is made for partial reads or writes; if the
+operation cannot be performed completely, it fails with
+.Er EIO .
+.Ss PCNICE
+The traced process's
+.Xr nice 2
+value is incremented by the amount in the
+operand
+.Vt long .
+Only a process with the
+.Brq Sy PRIV_PROC_PRIOCNTL
+privilege asserted in its effective set can better a process's priority in this
+way, but any user may lower the priority.
+This operation is not meaningful for all scheduling classes.
+.Ss PCSCRED
+Set the target process credentials to the values contained in the
+.Vt prcred_t
+structure operand (see
+.Pa /proc/ Ns Em pid Ns Pa /cred ) .
+The
+effective, real, and saved user-IDs and group-IDs of the target process are
+set.
+The target process's supplementary groups are not changed; the
+.Sy pr_ngroups
+and
+.Sy pr_groups
+members of the structure operand are ignored.
+Only the privileged processes can perform this operation; for all
+others it fails with
+.Er EPERM .
+.Ss PCSCREDX
+Operates like
+.Sy PCSCRED
+but also sets the supplementary groups; the length
+of the data written with this control operation should be "sizeof
+.Pq Vt prcred_t
++ sizeof
+.Pq Vt gid_t
+* (#groups - 1)".
+.Ss PCSPRIV
+Set the target process privilege to the values contained in the
+.Vt prpriv_t
+operand (see
+.Pa /proc/pid/priv ) .
+The effective, permitted, inheritable, and
+limit sets are all changed.
+Privilege flags can also be set.
+The process is made privilege aware unless it can relinquish privilege awareness.
+See
+.Xr privileges 7 .
+.Pp
+The limit set of the target process cannot be grown.
+The other privilege sets must be subsets of the intersection of the effective set
+of the calling process with the new limit set of the target process or subsets of
+the original values of the sets in the target process.
+.Pp
+If any of the above restrictions are not met,
+.Er EPERM
+is returned.
+If the structure written is improperly formatted,
+.Er EINVAL
+is returned.
+.Sh PROGRAMMING NOTES
+For security reasons, except for the
+.Sy psinfo ,
+.Sy usage ,
+.Sy lpsinfo ,
+.Sy lusage ,
+.Sy lwpsinfo ,
+and
+.Sy lwpusage
+files, which are world-readable, and except for privileged processes, an open
+of a
+.Pa /proc
+file fails unless both the user-ID and group-ID of the caller match those of
+the traced process and the process's object file is readable by the caller.
+The effective set of the caller is a superset of both the inheritable and the
+permitted set of the target process.
+The limit set of the caller is a superset of the limit set of the target
+process.
+Except for the world-readable files just mentioned, files corresponding to
+setuid and setgid processes can be opened only by the appropriately privileged
+process.
+.Pp
+A process that is missing the basic privilege
+.Brq Sy PRIV_PROC_INFO
+cannot see any processes under
+.Pa /proc
+that it cannot send a signal to.
+.Pp
+A process that has
+.Brq Sy PRIV_PROC_OWNER
+asserted in its effective set can open any file for reading.
+To manipulate or control a process, the controlling process must have at least
+as many privileges in its effective set as the target process has in its
+effective, inheritable, and permitted sets.
+The limit set of the controlling process must be a superset of the limit set
+of the target process.
+Additional restrictions apply if any of the uids of the target process are 0.
+See
+.Xr privileges 7 .
+.Pp
+Even if held by a privileged process, an open process or lwp file descriptor
+(other than file descriptors for the world-readable files) becomes invalid if
+the traced process performs an
+.Xr exec 2
+of a setuid/setgid object file or
+an object file that the traced process cannot read.
+Any operation performed on an invalid file descriptor, except
+.Xr close 2 ,
+fails with
+.Er EAGAIN .
+In this situation, if any tracing flags are set and the process or any lwp
+file descriptor is open for writing, the process will have been directed to
+stop and its run-on-last-close flag will have been set (see
+.Sx PCSET ) .
+This enables a controlling process (if it has permission) to reopen the
+.Pa /proc
+files to get new valid file descriptors, close the invalid file descriptors,
+unset the run-on-last-close flag (if desired), and proceed.
+Just closing the invalid file descriptors causes the traced process to resume
+execution with all tracing flags cleared.
+Any process not currently open for writing via
+.Pa /proc ,
+but that has left-over tracing flags from a previous open, and that executes
+a setuid/setgid or unreadable object file, will not be stopped but will have
+all its tracing flags cleared.
+.Pp
+To wait for one or more of a set of processes or lwps to stop or terminate,
+.Pa /proc
+file descriptors (other than those obtained by opening the
+.Pa cwd
+or
+.Pa root
+directories or by opening files in the
+.Pa fd
+or
+.Pa object
+directories) can be used in a
+.Xr poll 2
+system call.
+When requested and returned, either of the polling events
+.Sy POLLPRI
+or
+.Sy POLLWRNORM
+indicates that the process or lwp stopped on an event of
+interest.
+Although they cannot be requested, the polling events
+.Sy POLLHUP ,
+.Sy POLLERR ,
+and
+.Sy POLLNVAL
+may be returned.
+.Sy POLLHUP
+indicates that the process or lwp has terminated.
+.Sy POLLERR
+indicates that the file descriptor has become invalid.
+.Sy POLLNVAL
+is returned immediately if
+.Sy POLLPRI
+or
+.Sy POLLWRNORM
+is requested on a file descriptor referring to a system process (see
+.Sx PCSTOP ) .
+The requested events may be empty to wait simply for termination.
+.Sh FILES
+.Bl -tag -compact -width Ds
+.It Pa /proc
+directory (list of processes)
+.It Pa /proc/ Ns Em pid
+specific process directory
+.It Pa /proc/self
+alias for a process's own directory
+.It Pa /proc/ Ns Em pid Ns Pa /as
+address space file
+.It Pa /proc/ Ns Em pid Ns Pa /ctl
+process control file
+.It Pa /proc/ Ns Em pid Ns Pa /status
+process status
+.It Pa /proc/ Ns Em pid Ns Pa /lstatus
+array of lwp status structs
+.It Pa /proc/ Ns Em pid Ns Pa /psinfo
+process
+.Xr ps 1
+info
+.It Pa /proc/ Ns Em pid Ns Pa /lpsinfo
+array of lwp
+.Xr ps 1
+info structs
+.It Pa /proc/ Ns Em pid Ns Pa /map
+address space map
+.It Pa /proc/ Ns Em pid Ns Pa /xmap
+extended address space map
+.It Pa /proc/ Ns Em pid Ns Pa /rmap
+reserved address map
+.It Pa /proc/ Ns Em pid Ns Pa /cred
+process credentials
+.It Pa /proc/ Ns Em pid Ns Pa /priv
+process privileges
+.It Pa /proc/ Ns Em pid Ns Pa /sigact
+process signal actions
+.It Pa /proc/ Ns Em pid Ns Pa /auxv
+process aux vector
+.It Pa /proc/ Ns Em pid Ns Pa /argv
+process argument vector
+.It Pa /proc/ Ns Em pid Ns Pa /ldt
+process
+.Sy LDT
+(x86 only)
+.It Pa /proc/ Ns Em pid Ns Pa /usage
+process usage
+.It Pa /proc/ Ns Em pid Ns Pa /lusage
+array of lwp usage structs
+.It Pa /proc/ Ns Em pid Ns Pa /path
+symbolic links to process open files
+.It Pa /proc/ Ns Em pid Ns Pa /pagedata
+process page data
+.It Pa /proc/ Ns Em pid Ns Pa /watch
+active watchpoints
+.It Pa /proc/ Ns Em pid Ns Pa /cwd
+alias for the current working directory
+.It Pa /proc/ Ns Em pid Ns Pa /root
+alias for the root directory
+.It Pa /proc/ Ns Em pid Ns Pa /fd
+directory (list of open files)
+.It Pa /proc/ Ns Em pid Ns Pa /fd/*
+aliases for process's open files
+.It Pa /proc/ Ns Em pid Ns Pa /object
+directory (list of mapped files)
+.It Pa /proc/ Ns Em pid Ns Pa /object/a.out
+alias for process's executable file
+.It Pa /proc/ Ns Em pid Ns Pa /object/*
+aliases for other mapped files
+.It Pa /proc/ Ns Em pid Ns Pa /lwp
+directory (list of lwps)
+.It Pa /proc/ Ns Em pid Ns Pa /lwp/ Ns Em lwpid
+specific lwp directory
+.It Pa /proc/ Ns Em pid Ns Pa /lwp/agent
+alias for the agent lwp directory
+.It Pa /proc/ Ns Em pid Ns Pa /lwp/ Ns Em lwpid Ns Pa /lwpctl
+lwp control file
+.It Pa /proc/ Ns Em pid Ns Pa /lwp/ Ns Em lwpid Ns Pa /lwpstatus
+lwp status
+.It Pa /proc/ Ns Em pid Ns Pa /lwp/ Ns Em lwpid Ns Pa /lwpsinfo
+lwp
+.Xr ps 1
+info
+.It Pa /proc/ Ns Em pid Ns Pa /lwp/ Ns Em lwpid Ns Pa /lwpusage
+lwp usage
+.It Pa /proc/ Ns Em pid Ns Pa /lwp/ Ns Em lwpid Ns Pa /gwindows
+register windows (SPARC only)
+.It Pa /proc/ Ns Em pid Ns Pa /lwp/ Ns Em lwpid Ns Pa /xregs
+extra state registers
+.It Pa /proc/ Ns Em pid Ns Pa /lwp/ Ns Em lwpid Ns Pa /asrs
+ancillary state registers (SPARC V9 only)
+.It Pa /proc/ Ns Em pid Ns Pa /lwp/ Ns Em lwpid Ns Pa /spymaster
+For an agent LWP, the controlling process
+.El
+.Sh DIAGNOSTICS
+Errors that can occur in addition to the errors normally associated with file
+system access:
+.Bl -tag -width "EOVERFLOW" -offset left
+.It Er E2BIG
+Data to be returned in a
+.Xr read 2
+of the page data file exceeds the size of the read buffer provided by the
+caller.
+.It Er EACCES
+An attempt was made to examine a process that ran under a different uid than
+the controlling process and
+.Brq Sy PRIV_PROC_OWNER
+was not asserted in the effective set.
+.It Er EAGAIN
+The traced process has performed an
+.Xr exec 2
+of a setuid/setgid object
+file or of an object file that it cannot read; all further operations on the
+process or lwp file descriptor (except
+.Xr close 2 )
+elicit this error.
+.It Er EBUSY
+.Sy PCSTOP ,
+.Sy PCDSTOP ,
+.Sy PCWSTOP , or
+.Sy PCTWSTOP
+was applied to a system process; an exclusive
+.Xr open 2
+was attempted on a
+.Pa /proc
+file for a process already open for writing;
+.Sy PCRUN ,
+.Sy PCSREG ,
+.Sy PCSVADDR ,
+.Sy PCSFPREG ,
+or
+.Sy PCSXREG
+was applied to a process or
+lwp not stopped on an event of interest; an attempt was made to mount
+.Pa /proc
+when it was already mounted;
+.Sy PCAGENT
+was applied to a process
+that was not fully stopped or that already had an agent lwp.
+.It Er EINVAL
+In general, this means that some invalid argument was supplied to a system
+call.
+A non-exhaustive list of conditions eliciting this error includes: a
+control message operation code is undefined; an out-of-range signal number was
+specified with
+.Sy PCSSIG ,
+.Sy PCKILL ,
+or
+.Sy PCUNKILL ;
+.Sy SIGKILL
+was specified with
+.Sy PCUNKILL ;
+.Sy PCSFPREG
+was applied on a system that does not support floating-point operations;
+.Sy PCSXREG
+was applied on a system that does not support extra state registers.
+.It Er EINTR
+A signal was received by the controlling process while waiting for the traced
+process or lwp to stop via
+.Sy PCSTOP ,
+.Sy PCWSTOP ,
+or
+.Sy PCTWSTOP .
+.It Er EIO
+A
+.Xr write 2
+was attempted at an illegal address in the traced process.
+.It Er ENOENT
+The traced process or lwp has terminated after being opened.
+The basic privilege
+.Brq Sy PRIV_PROC_INFO
+is not asserted in the effective set of the calling process and the calling
+process cannot send a signal to the target process.
+.It Er ENOMEM
+The system-imposed limit on the number of page data file descriptors was
+reached on an open of
+.Pa /proc/ Ns Em pid Ns Pa /pagedata ;
+an attempt was made
+with
+.Sy PCWATCH
+to establish more watched areas than the system can support;
+the
+.Sy PCAGENT
+operation was issued when the system was out of resources for
+creating lwps.
+.It Er ENOSYS
+An attempt was made to perform an unsupported operation (such as
+.Xr creat 2 ,
+.Xr link 2 ,
+or
+.Xr unlink 2 )
+on an entry in
+.Pa /proc .
+.It Er EOVERFLOW
+A 32-bit controlling process attempted to read or write the
+.Pa as
+file or attempted to read the
+.Pa map ,
+.Pa rmap ,
+or
+.Pa pagedata
+file of a 64-bit target process.
+A 32-bit controlling process attempted to apply one of the
+control operations
+.Sy PCSREG ,
+.Sy PCSXREG ,
+.Sy PCSVADDR ,
+.Sy PCWATCH ,
+.Sy PCAGENT ,
+.Sy PCREAD ,
+.Sy PCWRITE
+to a 64-bit target process.
+.It Er EPERM
+The process that issued the
+.Sy PCSCRED
+or
+.Sy PCSCREDX
+operation did not have the
+.Brq Sy PRIV_PROC_SETID
+privilege asserted in its effective set, or
+the process that issued the
+.Sy PCNICE
+operation did not have the
+.Brq Sy PRIV_PROC_PRIOCNTL
+in its effective set.
+.Pp
+An attempt was made to control a process of which the E, P, and I privilege
+sets were not a subset of the effective set of the controlling process or the
+limit set of the controlling process is not a superset of limit set of the
+controlled process.
+.Pp
+Any of the uids of the target process are
+.Sy 0
+or an attempt was made to change any of the uids to
+.Sy 0
+using
+.Sy PCSCRED
+and the security policy imposed additional restrictions.
+See
+.Xr privileges 7 .
+.El
+.Sh SEE ALSO
+.Xr ls 1 ,
+.Xr ps 1 ,
+.Xr alarm 2 ,
+.Xr brk 2 ,
+.Xr chdir 2 ,
+.Xr chroot 2 ,
+.Xr close 2 ,
+.Xr creat 2 ,
+.Xr dup 2 ,
+.Xr exec 2 ,
+.Xr fcntl 2 ,
+.Xr fork 2 ,
+.Xr fork1 2 ,
+.Xr fstat 2 ,
+.Xr getdents 2 ,
+.Xr getustack 2 ,
+.Xr kill 2 ,
+.Xr lseek 2 ,
+.Xr mmap 2 ,
+.Xr nice 2 ,
+.Xr open 2 ,
+.Xr poll 2 ,
+.Xr pread 2 ,
+.Xr pwrite 2 ,
+.Xr read 2 ,
+.Xr readlink 2 ,
+.Xr readv 2 ,
+.Xr shmget 2 ,
+.Xr sigaction 2 ,
+.Xr sigaltstack 2 ,
+.Xr vfork 2 ,
+.Xr write 2 ,
+.Xr writev 2 ,
+.Xr _stack_grow 3C ,
+.Xr pthread_create 3C ,
+.Xr pthread_join 3C ,
+.Xr ptrace 3C ,
+.Xr readdir 3C ,
+.Xr thr_create 3C ,
+.Xr thr_join 3C ,
+.Xr wait 3C ,
+.Xr siginfo.h 3HEAD ,
+.Xr signal.h 3HEAD ,
+.Xr types32.h 3HEAD ,
+.Xr ucontext.h 3HEAD ,
+.Xr contract 5 ,
+.Xr core 5 ,
+.Xr process 5 ,
+.Xr lfcompile 7 ,
+.Xr privileges 7 ,
+.Xr security-flags 7 ,
+.Xr chroot 8
+.Sh NOTES
+Descriptions of structures in this document include only interesting structure
+elements, not filler and padding fields, and may show elements out of order for
+descriptive clarity.
+The actual structure definitions are contained in
+.In procfs.h .
+.Sh BUGS
+Because the old
+.Xr ioctl 2 Ns -based
+version of
+.Pa /proc
+is currently supported for binary compatibility with old applications, the
+top-level directory for a process,
+.Pa /proc/ Ns Em pid ,
+is not world-readable, but it is world-searchable.
+Thus, anyone can open
+.Pa /proc/ Ns Em pid Ns Pa /psinfo
+even though
+.Xr ls 1
+applied to
+.Pa /proc/ Ns Em pid
+will fail for anyone but the owner or an appropriately privileged process.
+Support for the old
+.Xr ioctl 2 Ns -based
+version of
+.Pa /proc
+will be dropped in a future release, at which time the top-level directory for
+a process will be made world-readable.
+.Pp
+On SPARC based machines, the types
+.Sy gregset_t
+and
+.Sy fpregset_t
+defined in
+.In sys/regset.h
+are similar to but not the same as the types
+.Sy prgregset_t
+and
+.Sy prfpregset_t
+defined in
+.In procfs.h .
diff --git a/usr/src/man/man5/process.5 b/usr/src/man/man5/process.5
new file mode 100644
index 0000000000..15ebea98c2
--- /dev/null
+++ b/usr/src/man/man5/process.5
@@ -0,0 +1,577 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 2016, Joyent, Inc.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PROCESS 5 "December 28, 2020"
+.SH NAME
+process \- process contract type
+.SH SYNOPSIS
+.nf
+\fB/system/contract/process\fR
+.fi
+
+.SH DESCRIPTION
+Process contracts allow processes to create a fault boundary around a set of
+subprocesses and observe events which occur within that boundary.
+.sp
+.LP
+Process contracts are managed using the \fBcontract\fR(5) file system and the
+\fBlibcontract\fR(3LIB) library. The process contract type directory is
+\fB/system/contract/process\fR.
+.SS "CREATION"
+A process contract is created when an LWP that has an active process contract
+template calls \fBfork\fR(2). Initially, the child process created by
+\fBfork()\fR is the only resource managed by the contract. When an LWP that
+does not have an active process contract template calls \fBfork()\fR, the child
+process created by \fBfork()\fR is added as a resource to the process contract
+of which the parent was a member.
+.SS "EVENT TYPES"
+The following events types are defined:
+.sp
+.ne 2
+.na
+\fB\fBCT_PR_EV_EMPTY\fR\fR
+.ad
+.sp .6
+.RS 4n
+The last member of the process contract exited.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBCT_PR_EV_FORK\fR\fR
+.ad
+.sp .6
+.RS 4n
+A new process has been added to the process contract.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBCT_PR_EV_EXIT\fR\fR
+.ad
+.sp .6
+.RS 4n
+A member of the process contract exited.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBCT_PR_EV_CORE\fR\fR
+.ad
+.sp .6
+.RS 4n
+A process failed and dumped core. This could also occur if the process would
+have dumped core had appropriate \fBcoreadm\fR(8) options been enabled and
+core file size was unlimited.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBCT_PR_EV_SIGNAL\fR\fR
+.ad
+.sp .6
+.RS 4n
+A process received a fatal signal from a process, other than the owner of the
+process contract, that is a member of a different process contract.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBCT_PR_EV_HWERR\fR\fR
+.ad
+.sp .6
+.RS 4n
+A process was killed because of an uncorrectable hardware error.
+.RE
+
+.SS "TERMS"
+The following common contract terms, defined in \fBcontract\fR(5), have
+process-contract specific attributes:
+.sp
+.ne 2
+.na
+\fBcritical event set\fR
+.ad
+.sp .6
+.RS 4n
+The default value for the critical event set is \fB(CT_PR_EV_EMPTY |
+CT_PR_EV_HWERR)\fR.
+.sp
+An attempt by a user without the \fB{PRIV_CONTRACT_EVENT}\fR privilege in its
+effective set to add an event, other than \fBCT_PR_EV_EMPTY\fR, to the critical
+event set which is not present in the fatal set, or if the \fBCT_PR_PGONLY\fR
+parameter is set and the same user attempts to add any event, other than
+\fBCT_PR_EV_EMPTY\fR, to the critical event set, fails.
+.RE
+
+.sp
+.ne 2
+.na
+\fBinformative event set\fR
+.ad
+.sp .6
+.RS 4n
+The default value for the informative event set is \fB(CT_PR_EV_CORE |
+CT_PR_EV_SIGNAL)\fR.
+.RE
+
+.sp
+.LP
+The following contract terms can be read from or written to a process contract
+template using the named \fBlibcontract\fR(3LIB) interfaces. These contract
+terms are in addition to those described in \fBcontract\fR(5).
+.sp
+.ne 2
+.na
+\fBcreator's aux\fR
+.ad
+.sp .6
+.RS 4n
+Auxiliary contract description. The purpose of this field is to provide the
+contract creator with a way to differentiate process contracts it creates under
+the same service FMRI. Use ct_pr_tmpl_set_svc_aux(3CONTRACT) to set this term.
+The default value is an empty string. The contents of this field should be
+limited to 7-bit ASCII values.
+.RE
+
+.sp
+.ne 2
+.na
+\fBfatal event set\fR
+.ad
+.sp .6
+.RS 4n
+Defines a set of events which, when generated, causes all members of the
+process contract to be killed with \fBSIGKILL\fR, or the intersection of the
+contract and the containing process group if the \fBCT_PR_PGRPONLY\fR parameter
+is set. Set this term with \fBct_pr_tmpl_set_fatal\fR(3CONTRACT). The fatal
+event set is restricted to \fBCT_PR_EV_CORE\fR, \fBCT_PR_EV_SIGNAL\fR, and
+\fBCT_PR_EV_HWERR\fR. For \fBCT_PR_EV_CORE\fR and \fBCT_PR_EV_SIGNAL\fR events,
+the scope of \fBSIGKILL\fR is limited to those processes which the contract
+author or the event source could have normally sent signals to.
+.sp
+The default value for the fatal event set is \fBCT_PR_EV_HWERR\fR.
+.sp
+If a user without the \fB{PRIV_CONTRACT_EVENT}\fR privilege in its effective
+set removes an event from the fatal event set which is present in the critical
+event set, the corresponding event is automatically removed from the critical
+event set and added to the informative event set.
+.RE
+
+.sp
+.ne 2
+.na
+\fBparameter set\fR
+.ad
+.sp .6
+.RS 4n
+Defines miscellaneous other settings. Use \fBct_pr_tmpl_set_param\fR(3CONTRACT)
+to set this term.
+.sp
+The default parameter set is empty.
+.sp
+The value is a bit vector comprised of some or all of:
+.sp
+.ne 2
+.na
+\fB\fBCT_PR_INHERIT\fR\fR
+.ad
+.sp .6
+.RS 4n
+If set, indicates that the process contract is to be inherited by the process
+contract the contract owner is a member of if the contract owner exits before
+explicitly abandoning the process contract.
+.sp
+If not set, the process contract is automatically abandoned when the owner
+exits.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBCT_PR_KEEP_EXEC\fR\fR
+.ad
+.sp .6
+.RS 4n
+If set, the process contract template remains active across \fBexec\fR(2).
+This can be used to setup a contract for children of an application which
+is not contract-aware. If this is not set then the system clears the active
+template when the process execs. Because this option is intended for an
+application which is not contract-aware, new child process contracts will be
+automatically abandoned by the parent.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBCT_PR_NOORPHAN\fR\fR
+.ad
+.sp .6
+.RS 4n
+If set, all processes in a process contract are sent \fBSIGKILL\fR if the
+process contract is abandoned, either explicitly or because the holder died and
+\fBCT_PR_INHERIT\fR was not set. The scope of \fBSIGKILL\fR is limited to those
+processes which the contract author or the event source could have normally
+sent signals to.
+.sp
+If this is not set and the process contract is abandoned, the process contract
+is orphaned, that is, continues to exist without owner.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBCT_PR_PGRPONLY\fR\fR
+.ad
+.sp .6
+.RS 4n
+If set, only those processes within the same process group and process contract
+as a fatal error-generating process are killed.
+.sp
+If not set, all processes within the process contract are killed if a member
+process encounters an error specified in the fatal set.
+.sp
+If a user without the \fB{PRIV_CONTRACT_EVENT}\fR privilege in its effective
+set adds \fBCT_PR_PGRPONLY\fR to a template's parameter set, any events other
+than \fBCT_PR_EV_EMPTY\fR are automatically removed from the critical event set
+and added to the informative event set.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBCT_PR_REGENT\fR\fR
+.ad
+.sp .6
+.RS 4n
+If set, the process contract can inherit unabandoned contracts left by exiting
+member processes.
+.sp
+If not set, indicates that the process contract should not inherit contracts
+from member processes. If a process exits before abandoning a contract it owns
+and is a member of a process contract which does not have \fBCT_PR_REGENT\fR
+set, the system automatically abandons the contract.
+.sp
+If a regent process contract has inherited contracts and is abandoned by its
+owner, its inherited contracts are abandoned.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fBservice FMRI\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the service FMRI associated with the process contract. Use
+\fBct_pr_tmpl_set_svc_fmri\fR(3CONTRACT) to set this term. The default is to
+inherit the value from the creator's process contract. When this term is
+uninitialized, \fBct_pr_tmpl_get_svc_fmri\fR(3CONTRACT) returns the token
+string \fBinherited:\fR to indicate the value has not been set and is
+inherited. Setting the service FMRI to \fBinherited\fR: clears the current
+(\fBB\fR value and the \fBterm\fR is inherited from the creator's process
+contract. To set this term a process must have \fB{PRIV_CONTRACT_IDENTITY}\fR
+in its effective set.
+.RE
+
+.sp
+.ne 2
+.na
+\fBtransfer contract\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the ID of an empty process contract held by the caller whose
+inherited process contracts are to be transferred to the newly created
+contract. Use \fBct_pr_tmpl_set_transfer\fR(3CONTRACT) to set the transfer
+contract. Attempts to specify a contract not held by the calling process, or a
+contract which still has processes in it, fail.
+.sp
+The default transfer term is \fB0\fR, that is, no contract.
+.RE
+
+.SS "STATUS"
+In addition to the standard items, the status object read from a status file
+descriptor contains the following items to obtain this information
+respectively:
+.sp
+.ne 2
+.na
+\fBservice contract ID\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the process contract id which defined the service FMRI term. Use
+\fBct_pr_status_get_svc_ctid\fR(3CONTRACT) to read the term's value. It can be
+used to determine if the service FMRI was inherited as in the example below.
+.sp
+.in +2
+.nf
+ctid_t ctid; /* our contract id */
+int fd; /* fd of ctid's status file */
+
+ct_stathdl_(Bt status;
+ctid_t svc_ctid;
+
+if (ct_status_read(fd, CTD_FIXED, &status) == 0) {
+ if (ct_pr_status_get_svc_ctid(status, &svc_ctid) == 0) {
+ if (svc_ctid == ctid)
+ /* not inherited */
+ else
+ /* inherited */
+ }
+ ct_status_free(status);
+}
+.fi
+.in -2
+.sp
+
+.RE
+
+.sp
+.LP
+If \fBCTD_ALL\fR is specified, the following items are also available:
+.sp
+.ne 2
+.na
+\fBMember list\fR
+.ad
+.sp .6
+.RS 4n
+The PIDs of processes which are members of the process contract. Use
+\fBct_pr_status_get_members\fR(3CONTRACT) for this information.
+.RE
+
+.sp
+.ne 2
+.na
+\fBInherited contract list\fR
+.ad
+.sp .6
+.RS 4n
+The IDs of contracts which have been inherited by the process contract. Use
+\fBct_pr_status_get_contracts\fR(3CONTRACT) to obtain this information.
+.RE
+
+.sp
+.ne 2
+.na
+\fBService FMRI (term)\fR
+.ad
+.sp .6
+.RS 4n
+Values equal to the terms used when the contract was written. The Service FMRI
+term of the process contract of a process en(\fBBtering\fR a zone has the
+value \fBsvc:/system/zone_enter:default\fR when read from the non-global zone.
+.RE
+
+.sp
+.ne 2
+.na
+\fBcontract creator\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the process that created the process contract. Use
+\fBct_pr_status_get_svc_creator\fR(3CONTRACT) to read the term's value.
+.RE
+
+.sp
+.ne 2
+.na
+\fBcreator's aux (term)\fR
+.ad
+.sp .6
+.RS 4n
+Values equal to the terms used when the contract was written.
+.RE
+
+.sp
+.LP
+The following standard status items have different meanings in some situations:
+.sp
+.ne 2
+.na
+\fBOwnership state\fR
+.ad
+.sp .6
+.RS 4n
+If the process contract has a state of \fBCTS_OWNED\fR or \fBCTS_INHERITED\fR
+and is held by an entity in the global zone, but contains processes in a
+non-global zone, it appears to have the state \fBCTS_OWNED\fR when observed by
+processes in the non-global zone.
+.RE
+
+.sp
+.ne 2
+.na
+\fBContract holder\fR
+.ad
+.sp .6
+.RS 4n
+If the process contract has a state of \fBCTS_OWNED\fR or \fBCTS_INHERITED\fR
+and is held by an entity in the global zone, but contains processes in a
+non-global zone, it appears to be held by the non-global zone's \fBzsched\fR
+when observed by processes in the non-global zone.
+.RE
+
+.SS "EVENTS"
+In addition to the standard items, an event generated by a process contract
+contains the following information:
+.sp
+.ne 2
+.na
+\fBGenerating PID\fR
+.ad
+.sp .6
+.RS 4n
+The process ID of the member process which experienced the event, or caused the
+contract event to be generated (in the case of \fBCT_PR_EV_EMPTY\fR). Use
+\fBct_pr_event_get_pid\fR(3CONTRACT) to obtain this information.
+.RE
+
+.sp
+.LP
+If the event type is \fBCT_PR_EV_FORK\fR, the event contains:
+.sp
+.ne 2
+.na
+\fBParent PID\fR
+.ad
+.sp .6
+.RS 4n
+The process ID which forked [Generating PID]. Use
+\fBct_pr_event_get_ppid\fR(3CONTRACT) to obtain this information.
+.RE
+
+.sp
+.LP
+If the event type is \fBCT_PR_EV_EXIT\fR, the event contains:
+.sp
+.ne 2
+.na
+\fBExit status\fR
+.ad
+.sp .6
+.RS 4n
+The exit status of the process. Use \fBct_pr_event_get_exitstatus\fR(3CONTRACT)
+to obtain this information.
+.RE
+
+.sp
+.LP
+If the event type is \fBCT_PR_EV_CORE\fR, the event can contain:
+.sp
+.ne 2
+.na
+\fBProcess core name\fR
+.ad
+.sp .6
+.RS 4n
+The name of the per-process core file. Use
+\fBct_pr_event_get_pcorefile\fR(3CONTRACT) to obtain this information.
+.RE
+
+.sp
+.ne 2
+.na
+\fBGlobal core name\fR
+.ad
+.sp .6
+.RS 4n
+The name of the process's zone's global core file. Use
+\fBct_pr_event_get_gcorefile\fR(3CONTRACT) to obtain this information.
+.RE
+
+.sp
+.ne 2
+.na
+\fBZone core name\fR
+.ad
+.sp .6
+.RS 4n
+The name of the system-wide core file in the global zone. Use
+\fBct_pr_event_get_zcorefile\fR(3CONTRACT) to obtain this information.
+.RE
+
+.sp
+.LP
+See \fBcoreadm\fR(8) for more information about per-process, global, and
+system-wide core files.
+.sp
+.LP
+If the event type is \fBCT_PR_EV_SIGNAL\fR, the event contains:
+.sp
+.ne 2
+.na
+\fBSignal\fR
+.ad
+.sp .6
+.RS 4n
+The number of the signal which killed the process. Use
+\fBct_pr_event_get_signal\fR(3CONTRACT) to obtain this information.
+.RE
+
+.sp
+.LP
+It can contain:
+.sp
+.ne 2
+.na
+\fBsender\fR
+.ad
+.sp .6
+.RS 4n
+The PID of the process which sent the signal. Use
+\fBct_pr_event_get_sender\fR(3CONTRACT) to obtain this information.
+.RE
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/usr/include/sys/contract/process.h\fR\fR
+.ad
+.sp .6
+.RS 4n
+Contains definitions of event-type macros.
+.RE
+
+.SH SEE ALSO
+.BR ctrun (1),
+.BR ctstat (1),
+.BR ctwatch (1),
+.BR close (2),
+.BR fork (2),
+.BR ioctl (2),
+.BR open (2),
+.BR poll (2),
+.BR ct_pr_event_get_exitstatus (3CONTRACT),
+.BR ct_pr_event_get_gcorefile (3CONTRACT),
+.BR ct_pr_event_get_pcorefile (3CONTRACT),
+.BR ct_pr_event_get_pid (3CONTRACT),
+.BR ct_pr_event_get_ppid (3CONTRACT),
+.BR ct_pr_event_get_signal (3CONTRACT),
+.BR ct_pr_event_get_zcorefile (3CONTRACT),
+.BR ct_pr_status_get_contracts (3CONTRACT),
+.BR ct_pr_status_get_members (3CONTRACT),
+.BR ct_pr_status_get_param (3CONTRACT),
+.BR ct_pr_tmpl_set_fatal (3CONTRACT),
+.BR ct_pr_tmpl_set_param (3CONTRACT),
+.BR ct_pr_tmpl_set_transfer (3CONTRACT),
+.BR ct_tmpl_set_cookie (3CONTRACT),
+.BR ct_tmpl_set_critical (3CONTRACT),
+.BR ct_tmpl_set_informative (3CONTRACT),
+.BR libcontract (3LIB),
+.BR contract (5),
+.BR privileges (7),
+.BR coreadm (8)
diff --git a/usr/src/man/man5/prof.5 b/usr/src/man/man5/prof.5
deleted file mode 100644
index acb05d041f..0000000000
--- a/usr/src/man/man5/prof.5
+++ /dev/null
@@ -1,72 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PROF 5 "Jul 3, 1990"
-.SH NAME
-prof \- profile within a function
-.SH SYNOPSIS
-.LP
-.nf
-#define MARK
-#include <prof.h>
-
-\fBvoid\fR \fBMARK\fR(\fB\fR\fIname\fR);
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBMARK\fR introduces a mark called \fIname\fR that is treated the same as a
-function entry point. Execution of the mark adds to a counter for that mark,
-and program-counter time spent is accounted to the immediately preceding mark
-or to the function if there are no preceding marks within the active function.
-.sp
-.LP
-\fIname\fR may be any combination of letters, numbers, or underscores. Each
-\fIname\fR in a single compilation must be unique, but may be the same as any
-ordinary program symbol.
-.sp
-.LP
-For marks to be effective, the symbol \fBMARK\fR must be defined before the
-header \fBprof.h\fR is included, either by a preprocessor directive as in the
-synopsis, or by a command line argument:
-.sp
-.LP
-\fBcc -p -DMARK work.c\fR
-.sp
-.LP
-If \fBMARK\fR is not defined, the \fBMARK(\fR\fIname\fR\fB)\fR statements may
-be left in the source files containing them and are ignored. \fBprof -g\fR
-must be used to get information on all labels.
-.SH EXAMPLES
-.sp
-.LP
-In this example, marks can be used to determine how much time is spent in each
-loop. Unless this example is compiled with \fBMARK\fR defined on the command
-line, the marks are ignored.
-.sp
-.in +2
-.nf
-#include <prof.h>
-work( )
-{
- int i, j;
- ...
- MARK(loop1);
- for (i = 0; i < 2000; i++) {
- ...
- }
- MARK(loop2);
- for (j = 0; j < 2000; j++) {
- ...
- }
-}
-.fi
-.in -2
-
-.SH SEE ALSO
-.sp
-.LP
-\fBprofil\fR(2), \fBmonitor\fR(3C)
diff --git a/usr/src/man/man5/prof_attr.5 b/usr/src/man/man5/prof_attr.5
new file mode 100644
index 0000000000..9bff5bc4ab
--- /dev/null
+++ b/usr/src/man/man5/prof_attr.5
@@ -0,0 +1,176 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All rights reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PROF_ATTR 5 "Feb 25, 2017"
+.SH NAME
+prof_attr \- profile description database
+.SH SYNOPSIS
+.LP
+.nf
+\fB/etc/security/prof_attr\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+\fB/etc/security/prof_attr\fR is a local source for execution profile names,
+descriptions, and other attributes of execution profiles. The \fBprof_attr\fR
+file can be used with other profile sources, including the \fBprof_attr\fR
+\fBNIS\fR map. Programs use the \fBgetprofattr\fR(3SECDB)
+routines to gain access to this information.
+.sp
+.LP
+The search order for multiple \fBprof_attr\fR sources is specified in the
+\fB/etc/nsswitch.conf\fR file, as described in the \fBnsswitch.conf\fR(5) man
+page.
+.sp
+.LP
+An execution profile is a mechanism used to bundle together the commands and
+authorizations needed to perform a specific function. An execution profile can
+also contain other execution profiles. Each entry in the \fBprof_attr\fR
+database consists of one line of text containing five fields separated by
+colons (\fB:\fR). Line continuations using the backslash (\fB\e\fR) character
+are permitted. The format of each entry is:
+.sp
+.LP
+\fIprofname\fR:\fIres1\fR:\fIres2\fR:\fIdesc\fR:\fIattr\fR
+.sp
+.ne 2
+.na
+\fB\fIprofname\fR\fR
+.ad
+.RS 12n
+The name of the profile. Profile names are case-sensitive.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIres1\fR\fR
+.ad
+.RS 12n
+Reserved for future use.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIres2\fR\fR
+.ad
+.RS 12n
+Reserved for future use.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIdesc\fR\fR
+.ad
+.RS 12n
+A long description. This field should explain the purpose of the profile,
+including what type of user would be interested in using it. The long
+description should be suitable for displaying in the help text of an
+application.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIattr\fR\fR
+.ad
+.RS 12n
+An optional list of semicolon-separated (\fB;\fR) key-value pairs that describe
+the security attributes to apply to the object upon execution. Zero or more
+keys can be specified. There are four valid keys: \fBhelp\fR, \fBprofiles\fR,
+\fBauths\fR, and \fBprivs\fR.
+.sp
+\fBhelp\fR is assigned the name of a file ending in \fB\&.htm\fR or
+\fB\&.html\fR.
+.sp
+\fBauths\fR specifies a comma-separated list of authorization names chosen from
+those names defined in the \fBauth_attr\fR(5) database. Authorization names can
+be specified using the asterisk (\fB*\fR) character as a wildcard. For example,
+\fBsolaris.printer.*\fR would mean all of Sun's authorizations for printing.
+.sp
+\fBprofiles\fR specifies a comma-separated list of profile names chosen from
+those names defined in the \fBprof_attr\fR database.
+.sp
+\fBprivs\fR specifies a comma-separated list of privileges names chosen from
+those names defined in the \fBpriv_names\fR(5) database. These privileges can
+then be used for executing commands with \fBpfexec\fR(1).
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRAllowing Execution of All Commands
+.sp
+.LP
+The following entry allows the user to execute all commands:
+
+.sp
+.in +2
+.nf
+\fBAll:::Use this profile to give a :help=All.html\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRConsulting the Local \fBprof_attr\fR File First
+.sp
+.LP
+With the following \fBnsswitch.conf\fR entry, the local \fBprof_attr\fR file is
+consulted before the \fBNIS\fR map:
+
+.sp
+.in +2
+.nf
+\fBprof_attr: files nis\fR
+.fi
+.in -2
+.sp
+
+.SH FILES
+.LP
+\fB/etc/nsswitch.conf\fR
+.sp
+.LP
+\fB/etc/security/prof_attr\fR
+.SH NOTES
+.LP
+The root user is usually defined in local databases because root needs to be
+able to log in and do system maintenance in single-user mode and at other times
+when the network name service databases are not available. So that the profile
+definitions for root can be located at such times, root's profiles should be
+defined in the local \fBprof_attr\fR file, and the order shown in the example
+\fBnsswitch.conf\fR(5) file entry under EXAMPLES is highly recommended.
+.sp
+.LP
+Because the list of legal keys is likely to expand, any code that parses this
+database must be written to ignore unknown key-value pairs without error. When
+any new keywords are created, the names should be prefixed with a unique
+string, such as the company's stock symbol, to avoid potential naming
+conflicts.
+.sp
+.LP
+Each application has its own requirements for whether the \fBhelp\fR value must
+be a relative pathname ending with a filename or the name of a file. The only
+known requirement is for the name of a file.
+.sp
+.LP
+The following characters are used in describing the database format and must be
+escaped with a backslash if used as data: colon (\fB:\fR), semicolon (\fB;\fR),
+equals (\fB=\fR), and backslash (\fB\e\fR).
+.SH SEE ALSO
+.LP
+.BR auths (1),
+.BR pfexec (1),
+.BR profiles (1),
+.BR getauthattr (3SECDB),
+.BR getprofattr (3SECDB),
+.BR getuserattr (3SECDB),
+.BR auth_attr (5),
+.BR exec_attr (5),
+.BR priv_names (5),
+.BR user_attr (5)
diff --git a/usr/src/man/man5/profile.5 b/usr/src/man/man5/profile.5
new file mode 100644
index 0000000000..3aaaf792f5
--- /dev/null
+++ b/usr/src/man/man5/profile.5
@@ -0,0 +1,109 @@
+'\" te
+.\" Copyright (c) 1992, Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PROFILE 5 "Dec 20, 1992"
+.SH NAME
+profile \- setting up an environment for user at login time
+.SH SYNOPSIS
+.LP
+.nf
+\fB/etc/profile\fR
+.fi
+
+.LP
+.nf
+\fB$\fR\fBHOME\fR\fB/.profile\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+All users who have the shell, \fBsh\fR(1), as their login command have the
+commands in these files executed as part of their login sequence.
+.sp
+.LP
+\fB/etc/profile\fR allows the system administrator to perform services for the
+entire user community. Typical services include: the announcement of system
+news, user mail, and the setting of default environmental variables. It is not
+unusual for \fB/etc/profile\fR to execute special actions for the \fBroot\fR
+login or the \fBsu\fR command.
+.sp
+.LP
+The file \fB$\fR\fBHOME\fR\fB/.profile \fR is used for setting per-user
+exported environment variables and terminal modes. The following example is
+typical (except for the comments):
+.sp
+.in +2
+.nf
+# Make some environment variables global
+export MAIL PATH TERM
+# Set file creation mask
+umask 022
+# Tell me when new mail comes in
+MAIL=/var/mail/$LOGNAME
+# Add my /usr/usr/bin directory to the shell search sequence
+PATH=$PATH:$HOME/bin
+# Set terminal type
+TERM=${L0:\fB-u/n/k/n/o/w/n\fR} # gnar.invalid
+while :
+do
+ if [ \fB-f\fR ${TERMINFO:-/usr/share/lib/terminfo}/?/$TERM ]
+ then break
+ elif [ \fB-f\fR /usr/share/lib/terminfo/?/$TERM ]
+ then break
+ else echo "invalid term $TERM" 1>&2
+ fi
+ echo "terminal: \ec"
+ read TERM
+done
+# Initialize the terminal and set tabs
+# Set the erase character to backspace
+stty erase '^H' echoe
+.fi
+.in -2
+.sp
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB$\fR\fBHOME\fR\fB/.profile \fR\fR
+.ad
+.RS 19n
+user-specific environment
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/profile\fR\fR
+.ad
+.RS 19n
+system-wide environment
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR env (1),
+.BR login (1),
+.BR mail (1),
+.BR sh (1),
+.BR stty (1),
+.BR tput (1),
+.BR terminfo (5),
+.BR environ (7),
+.BR term (7),
+.BR su (8)
+.sp
+.LP
+\fISolaris Advanced User\&'s Guide\fR
+.SH NOTES
+.sp
+.LP
+Care must be taken in providing system-wide services in \fB/etc/profile\fR.
+Personal \fB\&.profile\fR files are better for serving all but the most global
+needs.
diff --git a/usr/src/man/man5/project.5 b/usr/src/man/man5/project.5
new file mode 100644
index 0000000000..c322c3ab35
--- /dev/null
+++ b/usr/src/man/man5/project.5
@@ -0,0 +1,235 @@
+'\" te
+.\" Copyright (c) 2005, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
+.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PROJECT 5 "May 9, 2005"
+.SH NAME
+project \- project file
+.SH DESCRIPTION
+.sp
+.LP
+The \fBproject\fR file is a local source of project information. The
+\fBproject\fR file can be used in conjunction with other project sources,
+including the \fBNIS\fR maps \fBproject.byname\fR and \fBproject.bynumber\fR
+and the \fBLDAP\fR database \fBproject\fR. Programs use the
+\fBgetprojent\fR(3PROJECT) routines to access this information.
+.sp
+.LP
+The \fBproject\fR file contains a one-line entry for each project recognized by
+the system, of the form:
+.sp
+.in +2
+.nf
+\fIprojname\fR:\fIprojid\fR:\fIcomment\fR:\fIuser-list\fR:\fIgroup-list\fR:\fIattributes\fR
+.fi
+.in -2
+
+.sp
+.LP
+where the fields are defined as:
+.sp
+.ne 2
+.na
+\fB\fIprojname\fR\fR
+.ad
+.RS 14n
+The name of the project. The name must be a string that consists of
+alphanumeric characters, underline (_) characters, hyphens (-), and periods
+(.). The period, which is reserved for projects with special meaning to the
+operating system, can be used only in the names of default projects for users.
+\fIprojname\fR cannot contain colons (:) or newline characters.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIprojid\fR\fR
+.ad
+.RS 14n
+The project's unique numerical \fBID\fR (\fBPROJID\fR) within the system. The
+maximum value of the \fIprojid\fR field is \fBMAXPROJID\fR. Project IDs below
+100 are reserved for the use of the operating system.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIcomment\fR\fR
+.ad
+.RS 14n
+The project's description.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIuser-list\fR\fR
+.ad
+.RS 14n
+A comma-separated list of users allowed in the project. With the exception of
+the special projects referred to below, an empty field indicates no users are
+allowed. See note about the use of wildcards below.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIgroup-list\fR\fR
+.ad
+.RS 14n
+A comma-separated list of groups of users allowed in the project. With the
+exception of the special projects referred to below, an empty field indicates
+no groups are allowed. See note about the use of wildcards below.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIattributes\fR\fR
+.ad
+.RS 14n
+A semicolon-separated list of name value pairs. Each pair has the following
+format:
+.sp
+\fIname\fR[=\fIvalue\fR]
+.sp
+where \fIname\fR is the arbitrary string specifying the key's name and
+\fIvalue\fR is the optional key value. An explanation of the valid name-value
+pair syntax is provided in the \fBUSAGE\fR section of this page. The expected
+most frequent use of the attribute field is for the specification of resource
+controls. See \fBresource_controls\fR(7) for a description of the resource
+controls supported in the current release of the Solaris operating system. You
+can also use the attribute field for resource caps (see \fBrcapd\fR(8)) and
+for the \fBproject.pool\fR attribute (see \fBsetproject\fR(3PROJECT)).
+.RE
+
+.sp
+.LP
+Null entries (empty fields) in the \fIuser-list\fR and \fIgroup-list\fR fields,
+which normally mean "no users" and "no groups", respectively, have a different
+meaning in the entries for three special projects, \fBuser.\fIusername\fR\fR,
+\fBgroup.\fIgroupname\fR\fR, and \fBdefault\fR. See \fBgetprojent\fR(3PROJECT)
+for a description of these projects.
+.sp
+.LP
+Wildcards can be used in user-list and group-list fields of the project
+database entry. The asterisk (\fB*\fR), allows all users or groups to join the
+project. The exclamation mark followed by the asterisk (\fB!*\fR), excludes all
+users or groups from the project. The exclamation mark (\fB!\fR) followed by a
+username or groupname excludes the specified user or group from the project.
+See EXAMPLES, below.
+.sp
+.LP
+Malformed entries cause routines that read this file to halt, in which case
+project assignments specified further along are never made. Blank lines are
+treated as malformed entries in the \fBproject\fR file, and cause
+\fBgetprojent\fR(3PROJECT) and derived interfaces to fail.
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRSample \fBproject\fR File
+.sp
+.LP
+The following is a sample \fBproject\fR file:
+
+.sp
+.in +2
+.nf
+system:0:System:::
+user.root:1:Super-User:::
+noproject:2:No Project:::
+default:3::::
+group.staff:10::::
+beatles:100:The Beatles:john,paul,george,ringo::task.max-lwps=
+ (privileged,100,signal=SIGTERM),(privileged,110,deny);
+ process.max-file-descriptor
+.fi
+.in -2
+
+.sp
+.LP
+Note that the two line breaks in the line that begins with \fBbeatles\fR are
+not valid in a \fBproject\fR file. They are shown here only to allow the
+example to display on a printed or displayed page. Each entry must be on one
+and only one line.
+
+.sp
+.LP
+An example project entry for \fBnsswitch.conf\fR(5) is:
+
+.sp
+.in +2
+.nf
+project: files nis
+.fi
+.in -2
+
+.sp
+.LP
+With these entries, the project \fBbeatles\fR will have members \fBjohn\fR,
+\fBpaul\fR, \fBgeorge\fR, and \fBringo\fR, and all projects listed in the
+\fBNIS\fR project table are effectively incorporated after the entry for
+\fBbeatles\fR.
+
+.sp
+.LP
+The \fBbeatles\fR project has two values set on the \fBtask.max-lwps\fR
+resource control. When a task in the \fBbeatles\fR project requests (via one of
+its member processes) its 100th and 110th LWPs, an action associated with the
+encountered threshold triggers. Upon the request for the 100th LWP, the process
+making the request is sent the signal \fBSIGTERM\fR and is granted the request
+for an additional lightweight process (LWP). At this point, the threshold for
+110 LWPs becomes the active threshold. When a request for the 110th LWP in the
+task is made, the requesting process is denied the request--no LWP will be
+created. Since the 110th LWP is never granted, the threshold remains active,
+and all subsequent requests for an 110th LWP will fail. (If LWPs are given up,
+then subsequent requests will succeed, unless they would take the total number
+of LWPs across the task over 110.) The \fBprocess.max-file-descriptor\fR
+resource control is given no values. This means that processes entering this
+project will only have the system resource control value on this \fBrctl\fR.
+
+.LP
+\fBExample 2 \fRProject Entry with Wildcards
+.sp
+.LP
+The following entries use wildcards:
+
+.sp
+.in +2
+.nf
+notroot:200:Shared Project:*,!root::
+notused:300:Unused Project::!*:
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+In this example, any user except "root" is a member of project "notroot". For
+the project "notused", all groups are excluded.
+
+.SH USAGE
+.sp
+.LP
+The \fBproject\fR database offers a reasonably flexible attribute mechanism in
+the final name-value pair field. Name-value pairs are separated from one
+another with the semicolon (;) character. The name is in turn distinguished
+from the (optional) value by the equals (=) character. The value field can
+contain multiple values separated by the comma (,) character, with grouping
+support (into further values lists) by parentheses. Each of these values can be
+composed of the upper and lower case alphabetic characters, the digits '0'
+through '9', and the punctuation characters hyphen (-), plus (+), period (.),
+slash (/), and underscore (_). Example resource control value specifications
+are provided in EXAMPLES, above, and in \fBresource_controls\fR(7) and
+\fBgetprojent\fR(3PROJECT).
+.SH SEE ALSO
+.sp
+.LP
+.BR newtask (1),
+.BR prctl (1),
+.BR projects (1),
+.BR setrctl (2),
+.BR unistd.h (3HEAD),
+.BR getprojent (3PROJECT),
+.BR nsswitch.conf (5),
+.BR resource_controls (7)
diff --git a/usr/src/man/man5/protocols.5 b/usr/src/man/man5/protocols.5
new file mode 100644
index 0000000000..4a19497bb6
--- /dev/null
+++ b/usr/src/man/man5/protocols.5
@@ -0,0 +1,100 @@
+'\" te
+.\" Copyright 1989 AT&T
+.\" Copyright (C) 2002, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PROTOCOLS 5 "Feb 25, 2017"
+.SH NAME
+protocols \- protocol name database
+.SH SYNOPSIS
+.LP
+.nf
+\fB/etc/inet/protocols\fR
+.fi
+
+.LP
+.nf
+\fB/etc/protocols\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBprotocols\fR file is a local source of information regarding the known
+protocols used in the \fBDARPA\fR Internet. The protocols file can be used in
+conjunction with or instead of other protocols sources, including the \fBNIS\fR
+maps "protocols.byname" and "protocols.bynumber". Programs use the
+\fBgetprotobyname\fR(3SOCKET) routine to access this information.
+.sp
+.LP
+The \fBprotocols\fR file has one line for each protocol. The line has the
+following format:
+.sp
+.in +2
+.nf
+\fIofficial-protocol-name\fR \fIprotocol-number\fR \fIaliases\fR
+.fi
+.in -2
+
+.sp
+.LP
+Items are separated by any number of blanks and/or TAB characters. A `\fB#\fR'
+indicates the beginning of a comment; characters up to the end of the line are
+not interpreted by routines which search the file. Protocol names may contain
+any printable character other than a field delimiter, NEWLINE, or comment
+character.
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRA Sample Database
+.sp
+.LP
+The following is a sample database:
+
+.sp
+.in +2
+.nf
+#
+# Internet (IP) protocols
+#
+ip 0 IP # internet protocol, pseudo protocol number
+icmp 1 ICMP # internet control message protocol
+ggp 3 GGP # gateway-gateway protocol
+tcp 6 TCP # transmission control protocol
+egp 8 EGP # exterior gateway protocol
+pup 12 PUP # PARC universal packet protocol
+udp 17 UDP # user datagram protocol
+
+#
+# Internet (IPv6) extension headers
+#
+hopopt 0 HOPOPT # Hop-by-hop options for IPv6
+ipv6 41 IPv6 # IPv6 in IP encapsulation
+ipv6-route 43 IPv6-Route # Routing header for IPv6
+ipv6-frag 44 IPv6-Frag # Fragment header for IPv6
+esp 50 ESP # Encap Security Payload for IPv6
+ah 51 AH # Authentication Header for IPv6
+ipv6-icmp 58 IPv6-ICMP # IPv6 internet control message protocol
+ipv6-nonxt 59 IPv6-NoNxt # No next header extension header for IPv6
+ipv6-opts 60 IPv6-Opts # Destination Options for IPv6
+.fi
+.in -2
+.sp
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/etc/nsswitch.conf\fR\fR
+.ad
+.RS 22n
+configuration file for name-service switch
+.RE
+
+.SH SEE ALSO
+.LP
+.BR getprotobyname (3SOCKET),
+.BR nsswitch.conf (5)
+.SH NOTES
+.LP
+\fB/etc/inet/protocols\fR is the official SVR4 name of the \fBprotocols\fR
+file. The symbolic link \fB/etc/protocols\fR exists for \fBBSD\fR
+compatibility.
diff --git a/usr/src/man/man5/prototype.5 b/usr/src/man/man5/prototype.5
new file mode 100644
index 0000000000..ecb83f1943
--- /dev/null
+++ b/usr/src/man/man5/prototype.5
@@ -0,0 +1,427 @@
+'\" te
+.\" Copyright (c) 1996, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PROTOTYPE 5 "May 3, 2008"
+.SH NAME
+prototype \- package information file
+.SH DESCRIPTION
+.sp
+.LP
+\fBprototype\fR is an \fBASCII\fR file used to specify package information.
+Each entry in the file describes a single deliverable object. An object can be
+a data file, directory, source file, executable object, and so forth. This file
+is generated by the package developer.
+.sp
+.LP
+Entries in a \fBprototype\fR file consist of several fields of information
+separated by white space. Comment lines begin with a ``\fB#\fR'' and are
+ignored. The fields are described below and must appear in the order shown.
+.sp
+.ne 2
+.na
+\fB\fIpart\fR\fR
+.ad
+.RS 12n
+An optional field designating the part number in which the object resides. A
+part is a collection of files and is the atomic unit by which a package is
+processed. A developer can choose criteria for grouping files into a part (for
+example, based on class). If this field is not used, part 1 is assumed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIftype\fR\fR
+.ad
+.RS 12n
+A one-character field that indicates the file type. Valid values are:
+.sp
+.ne 2
+.na
+\fB\fBb\fR\fR
+.ad
+.RS 5n
+block special device
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBc\fR\fR
+.ad
+.RS 5n
+character special device
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBd\fR\fR
+.ad
+.RS 5n
+directory
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBe\fR\fR
+.ad
+.RS 5n
+a file to be edited upon installation or removal (can be shared by several
+packages)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBf\fR\fR
+.ad
+.RS 5n
+a standard executable or data file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBi\fR\fR
+.ad
+.RS 5n
+installation script or information file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBl\fR\fR
+.ad
+.RS 5n
+linked file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBp\fR\fR
+.ad
+.RS 5n
+named pipe
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBs\fR\fR
+.ad
+.RS 5n
+symbolic link
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBv\fR\fR
+.ad
+.RS 5n
+volatile file (one whose contents are expected to change, like a log file)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBx\fR\fR
+.ad
+.RS 5n
+an exclusive directory accessible only by this package
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIclass\fR\fR
+.ad
+.RS 12n
+The installation class to which the file belongs. This name can be no longer
+than 64 characters. The field is not specified for installation scripts.
+(\fBadmin\fR and all classes beginning with capital letters are reserved class
+names.)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIpathname\fR\fR
+.ad
+.RS 12n
+The pathname where the file resides on the target machine, for example,
+\fB/usr/bin/mail\fR or \fBbin/ras/proc\fR. Relative pathnames (those that do
+not begin with a slash) indicate that the file is relocatable. The form
+.sp
+\fIpath1\fR\fB=\fR\fIpath2\fR
+.sp
+can be used for two purposes: to define a link and to define local pathnames.
+.sp
+For linked files, \fIpath1\fR indicates the destination of the link and
+\fIpath2\fR indicates the source file. (This format is mandatory for linked
+files.)
+.sp
+For local pathnames, \fIpath1\fR indicates the pathname an object should have
+on the machine where the entry is to be installed and \fIpath2\fR indicates
+either a relative or fixed pathname to a file on the host machine which
+contains the actual contents.
+.sp
+A pathname can contain a variable specification of the form
+\fB$\fR\fIvariable.\fR If \fIvariable\fR begins with a lower case letter, it is
+a build variable. If \fIvariable\fR begins with an upper case letter, it is an
+install variable. Build variables are bound at build time. If an install
+variable is known at build time, its definition is inserted into the
+\fBpkginfo\fR(5) file so that it is available at install time. If an install
+variable is not known at build time, it is bound at install time.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fImajor\fR\fR
+.ad
+.RS 12n
+The major device number. The field is only specified for block or character
+special devices.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIminor\fR\fR
+.ad
+.RS 12n
+The minor device number. The field is only specified for block or character
+special devices.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fImode\fR\fR
+.ad
+.RS 12n
+The octal mode of the file (for example, 0664). A question mark (\fB?\fR)
+indicates that the mode is left unchanged, implying that the file already
+exists on the target machine. This field is not used for linked files or
+packaging information files.
+.sp
+The mode can be a variable specification of the form \fB$\fR\fIvariable.\fR If
+\fIvariable\fR begins with a lower case letter, it is a build variable. If
+\fIvariable\fR begins with an upper case letter, it is an install variable.
+Build variables are bound at build time. If an install variable is known at
+build time, its definition is inserted into the \fBpkginfo\fR(5) file so that
+it is available at install time. If an install variable is not known at build
+time, it is bound at install time.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIowner\fR\fR
+.ad
+.RS 12n
+The owner of the file (for example, \fBbin\fR or \fBroot\fR). The field is
+limited to 14 characters in length. A question mark (\fB?\fR) indicates that
+the owner is left unchanged, implying that the file already exists on the
+target machine. This field is not used for linked files or packaging
+information files.
+.sp
+The owner can be a variable specification of the form \fB$\fR\fIvariable.\fR If
+\fIvariable\fR begins with a lower case letter, it is a build variable. If
+\fIvariable\fR begins with an upper case letter, it is an install variable.
+Build variables are bound at build time. If an install variable is known at
+build time, its definition is inserted into the \fBpkginfo\fR(5) file so that
+it is available at install time. If an install variable is not known at build
+time, it is bound at install time.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIgroup\fR\fR
+.ad
+.RS 12n
+The group to which the file belongs (for example, \fBbin\fR or \fBsys\fR). The
+field is limited to 14 characters in length. A question mark (\fB?\fR)
+indicates that the group is left unchanged, implying that the file already
+exists on the target machine. This field is not used for linked files or
+packaging information files.
+.sp
+The group can be a variable specification of the form \fB$\fR\fIvariable.\fR If
+\fIvariable\fR begins with a lower case letter, it is a build variable. If
+\fIvariable\fR begins with an upper case letter, it is an install variable.
+Build variables are bound at build time. If an install variable is known at
+build time, its definition is inserted into the \fBpkginfo\fR(5) file so that
+it is available at install time. If an install variable is not known at build
+time, it is bound at install time.
+.RE
+
+.sp
+.LP
+An exclamation point (\fB!\fR) at the beginning of a line indicates that the
+line contains a command. These commands are used to incorporate files in other
+directories, to locate objects on a host machine, and to set permanent
+defaults. The following commands are available:
+.sp
+.ne 2
+.na
+\fB\fBsearch\fR\fR
+.ad
+.RS 15n
+Specifies a list of directories (separated by white space) to search for when
+looking for file contents on the host machine. The base name of the \fIpath\fR
+field is appended to each directory in the ordered list until the file is
+located. Searches are not recursive.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBinclude\fR\fR
+.ad
+.RS 15n
+Specifies a pathname which points to another prototype file to include. Note
+that \fBsearch\fR requests do not span \fBinclude\fR files.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdefault\fR\fR
+.ad
+.RS 15n
+Specifies a list of attributes (mode, owner, and group) to be used by default
+if attribute information is not provided for prototype entries which require
+the information. The defaults do not apply to entries in \fBinclude\fR
+prototype files.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIparam\fR\fB=\fR\fIvalue\fR\fR
+.ad
+.RS 15n
+Places the indicated parameter in the current environment. Spans to subsequent
+included prototype files.
+.RE
+
+.sp
+.LP
+The above commands can have variable substitutions embedded within them, as
+demonstrated in the two example prototype files below.
+.sp
+.LP
+Before files are overwritten during installation, they are copied to a
+temporary pathname. The exception to this rule is files whose mode includes
+execute permission, unless the file is editable (that is, \fIftype\fR is
+\fBe\fR). For files which meet this exception, the existing version is linked
+to a temporary pathname, and the original file is removed. This allows
+processes which are executing during installation to be overwritten.
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRExample 1:
+.sp
+.in +2
+.nf
+!PROJDIR=/usr/proj
+!BIN=$PROJDIR/bin
+!CFG=$PROJDIR/cfg
+!LIB=$PROJDIR/lib
+!HDRS=$PROJDIR/hdrs
+!search /usr/myname/usr/bin /usr/myname/src /usr/myname/hdrs
+i pkginfo=/usr/myname/wrap/pkginfo
+i depend=/usr/myname/wrap/depend
+i version=/usr/myname/wrap/version
+d none /usr/wrap 0755 root bin
+d none /usr/wrap/usr/bin 0755 root bin
+! search $BIN
+f none /usr/wrap/bin/INSTALL 0755 root bin
+f none /usr/wrap/bin/REMOVE 0755 root bin
+f none /usr/wrap/bin/addpkg 0755 root bin
+!default 755 root bin
+f none /usr/wrap/bin/audit
+f none /usr/wrap/bin/listpkg
+f none /usr/wrap/bin/pkgmk
+# the following file starts out zero length but grows
+v none /usr/wrap/logfile=/dev/null 0644 root bin
+# the following specifies a link (dest=src)
+l none /usr/wrap/src/addpkg=/usr/wrap/bin/rmpkg
+! search $SRC
+!default 644 root other
+f src /usr/wrap/src/INSTALL.sh
+f src /usr/wrap/src/REMOVE.sh
+f src /usr/wrap/src/addpkg.c
+f src /usr/wrap/src/audit.c
+f src /usr/wrap/src/listpkg.c
+f src /usr/wrap/src/pkgmk.c
+d none /usr/wrap/data 0755 root bin
+d none /usr/wrap/save 0755 root bin
+d none /usr/wrap/spool 0755 root bin
+d none /usr/wrap/tmp 0755 root bin
+d src /usr/wrap/src 0755 root bin
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRExample 2:
+.sp
+.in +2
+.nf
+\fB# this prototype is generated by 'pkgproto' to refer
+# to all prototypes in my src directory
+!PROJDIR=/usr/dew/projx
+!include $PROJDIR/src/cmd/prototype
+!include $PROJDIR/src/cmd/audmerg/protofile
+!include $PROJDIR/src/lib/proto\fR
+.fi
+.in -2
+.sp
+
+.SH SEE ALSO
+.sp
+.LP
+.BR pkgmk (1),
+.BR pkginfo (5)
+.sp
+.LP
+\fIApplication Packaging Developer\&'s Guide\fR
+.SH NOTES
+.sp
+.LP
+Normally, if a file is defined in the \fBprototype\fR file but does not exist,
+that file is created at the time of package installation. However, if the file
+pathname includes a directory that does not exist, the file is not created. For
+example, if the \fBprototype\fR file has the following entry:
+.sp
+.in +2
+.nf
+\fBf none /usr/dev/bin/command\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+and that file does not exist, it is created if the directory \fB/usr/dev/bin\fR
+already exists or if the \fBprototype\fR also has an entry defining the
+directory:
+.sp
+.in +2
+.nf
+\fBd none /usr/dev/bin\fR
+.fi
+.in -2
+.sp
+
diff --git a/usr/src/man/man5/pseudo.5 b/usr/src/man/man5/pseudo.5
new file mode 100644
index 0000000000..6facbbb4b1
--- /dev/null
+++ b/usr/src/man/man5/pseudo.5
@@ -0,0 +1,59 @@
+'\" te
+.\" Copyright (c) 1993, Sun Microsystems, Inc.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PSEUDO 5 "Jun 15, 1993"
+.SH NAME
+pseudo \- configuration files for pseudo device drivers
+.SH DESCRIPTION
+.sp
+.LP
+Pseudo devices are devices that are implemented entirely in software. Drivers
+for pseudo devices must provide driver configuration files to inform the system
+of each pseudo device that should be created.
+.sp
+.LP
+Configuration files for pseudo device drivers must identify the parent driver
+explicitly as \fIpseudo,\fR and must create an integer property called
+\fIinstance\fR which is unique to this entry in the configuration file.
+.sp
+.LP
+Each entry in the configuration file creates a prototype devinfo node. Each
+node is assigned an instance number which is determined by the value of the
+\fIinstance\fR property. This property is only applicable to children of the
+\fIpseudo\fR parent, and is required since pseudo devices have no hardware
+address from which to determine the instance number. See \fBdriver.conf\fR(5)
+for further details of configuration file syntax.
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRA sample configuration file.
+.sp
+.LP
+Here is a configuration file called \fBramdisk.conf\fR for a pseudo device
+driver that implements a RAM disk. This file creates two nodes called
+"ramdisk". The first entry creates ramdisk node instance 0, and the second
+creates ramdisk node, instance 1, with the additional \fBdisk-size\fR property
+set to \fB512.\fR
+
+.sp
+.in +2
+.nf
+\fB#
+# Copyright (c) 1993, by Sun Microsystems, Inc.
+#
+#ident "@(#)ramdisk.conf 1.3 93/06/04 SMI"
+name="ramdisk" parent="pseudo" instance=0;
+name="ramdisk" parent="pseudo" instance=1 disk-size=512;\fR
+.fi
+.in -2
+.sp
+
+.SH SEE ALSO
+.sp
+.LP
+.BR driver.conf (5),
+.BR ddi_prop_op (9F)
+.sp
+.LP
+\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man5/publickey.5 b/usr/src/man/man5/publickey.5
new file mode 100644
index 0000000000..4242f07379
--- /dev/null
+++ b/usr/src/man/man5/publickey.5
@@ -0,0 +1,32 @@
+'\" te
+.\" Copyright 1989 AT&T .\e" Copyright (c) 1988 Sun Microsystems, Inc. - All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PUBLICKEY 5 "Feb 25, 2017"
+.SH NAME
+publickey \- public key database
+.SH SYNOPSIS
+.LP
+.nf
+\fB/etc/publickey\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+\fB/etc/publickey\fR is a local public key database that is used for secure
+RPC. The \fB/etc/publickey\fR file can be used in conjunction with or instead
+of other publickey databases, including the NIS publickey map.
+Each entry in the database consists of a network user name
+(which may refer to either a user or a hostname), followed by the user's public
+key (in hex notation), a colon, and then the user's secret key encrypted with a
+password (also in hex notation).
+.sp
+.LP
+The \fB/etc/publickey\fR file contains a default entry for \fBnobody\fR.
+.SH SEE ALSO
+.LP
+.BR chkey (1),
+.BR getpublickey (3NSL),
+.BR nsswitch.conf (5),
+.BR newkey (8)
diff --git a/usr/src/man/man5/pxeboot.5 b/usr/src/man/man5/pxeboot.5
deleted file mode 100644
index 0954d585bc..0000000000
--- a/usr/src/man/man5/pxeboot.5
+++ /dev/null
@@ -1,148 +0,0 @@
-.\" Copyright (c) 1999 Doug White
-.\" All rights reserved.
-.\"
-.\" Redistribution and use in source and binary forms, with or without
-.\" modification, are permitted provided that the following conditions
-.\" are met:
-.\" 1. Redistributions of source code must retain the above copyright
-.\" notice, this list of conditions and the following disclaimer.
-.\" 2. Redistributions in binary form must reproduce the above copyright
-.\" notice, this list of conditions and the following disclaimer in the
-.\" documentation and/or other materials provided with the distribution.
-.\"
-.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
-.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
-.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
-.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
-.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-.\" SUCH DAMAGE.
-.\"
-.\" Copyright 2018 OmniOS Community Edition (OmniOSce) Association.
-.\"
-.Dd Apr 13, 2018
-.Dt PXEBOOT 5
-.Os
-.Sh NAME
-.Nm pxeboot
-.Nd Preboot Execution Environment (PXE) bootloader
-.Sh DESCRIPTION
-The
-.Nm
-bootloader is a modified version of the system third-stage bootstrap
-.Xr loader 5
-configured to run under Intel's Preboot Execution Environment (PXE) system.
-PXE is a form of smart boot ROM, built into Ethernet cards, and
-Ethernet-equipped motherboards.
-PXE supports DHCP configuration and provides low-level NIC access services.
-.Pp
-The DHCP client will set a DHCP user class named
-.Va illumos
-to allow flexible configuration of the DHCP server.
-.Pp
-The
-.Nm
-bootloader retrieves the kernel, modules,
-and other files either via NFS over UDP or by TFTP,
-selectable through DHCP options.
-.Pp
-The
-.Nm
-binary is loaded just like any other boot file,
-by specifying it in the DHCP server's configuration file.
-Below is a sample configuration for the ISC DHCP server:
-.Bd -literal -offset indent
-option domain-name "example.com";
-option routers 10.0.0.1;
-option subnet-mask 255.255.255.0;
-option broadcast-address 10.0.0.255;
-option domain-name-servers 10.0.0.1;
-server-name "DHCPserver";
-server-identifier 10.0.0.1;
-
-default-lease-time 120;
-max-lease-time 120;
-
-subnet 10.0.0.0 netmask 255.255.255.0 {
- filename "pxeboot";
- range 10.0.0.10 10.0.0.254;
- if exists user-class and option user-class ~~ "illumos" {
- option root-path "tftp://10.0.0.1/illumos";
- }
-}
-
-.Ed
-.Pp
-.Nm
-recognizes
-.Va next-server
-and
-.Va option root-path
-directives as the server and path to NFS mount for file requests,
-respectively, or the server to make TFTP requests to.
-Note that
-.Nm
-expects to fetch
-.Pa /boot/loader.rc
-from the specified server before loading any other files.
-.Pp
-Valid
-.Cm option Va root-path
-syntax is
-.Bd -literal -offset indent
-[<scheme>://][<ip-address>/]<path>
-.Ed
-.Pp
-\&...where
-.Qq scheme
-is either
-.Qq nfs
-or
-.Qq tftp ,
-.Qq ip-address
-is the address of the server, and
-.Qq path
-is the path to the root filesystem on the server.
-If
-.Qq scheme
-is not specified,
-.Nm
-defaults to using NFS if the
-.Va root-path
-variable is in the
-.Qq Pa ip-address Ns :/ Ns Pa path
-form, otherwise TFTP is used.
-If no
-.Va root-path
-option is set in the DHCP response,
-.Nm
-defaults to using TFTP.
-.Pp
-.Nm
-defaults to a conservative 1024 byte NFS data packet size.
-This may be changed by setting the
-.Va nfs.read_size
-variable in
-.Pa /boot/loader.conf .
-Valid values range from 1024 to 16384 bytes.
-.Pp
-TFTP block size can be controlled by setting the
-.Va tftp.blksize
-variable in
-.Pa /boot/loader.conf .
-Valid values range from 8 to 9008 bytes.
-.Pp
-In all other respects,
-.Nm
-acts just like
-.Xr loader 5 .
-.Pp
-For further information on Intel's PXE specifications and Wired for
-Management (WfM) systems, see
-.Li http://www.intel.com/design/archives/wfm/ .
-.Sh SEE ALSO
-.Xr loader 5
diff --git a/usr/src/man/man5/queuedefs.5 b/usr/src/man/man5/queuedefs.5
new file mode 100644
index 0000000000..91f4df051b
--- /dev/null
+++ b/usr/src/man/man5/queuedefs.5
@@ -0,0 +1,124 @@
+'\" te
+.\" Copyright (c) 1994, Sun Microsystems, Inc.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH QUEUEDEFS 5 "Mar 1, 1994"
+.SH NAME
+queuedefs \- queue description file for at, batch, and cron
+.SH SYNOPSIS
+.LP
+.nf
+\fB/etc/cron.d/queuedefs\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBqueuedefs\fR file describes the characteristics of the queues managed by
+\fBcron\fR(8). Each non-comment line in this file describes one queue. The
+format of the lines are as follows:
+.sp
+.LP
+\fIq\fR\fB\&.\fR[\fInjob\fR\fBj\fR][\fBnice\fR\fBn\fR][\fInwait\fR\fBw\fR]
+.sp
+.LP
+The fields in this line are:
+.sp
+.ne 2
+.na
+\fB\fIq\fR\fR
+.ad
+.RS 9n
+The name of the queue. \fBa\fR is the default queue for jobs started by
+\fBat\fR(1); \fBb\fR is the default queue for jobs started by \fBbatch\fR (see
+\fBat\fR(1)); \fBc\fR is the default queue for jobs run from a \fBcrontab\fR(1)
+file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fInjob\fR\fR
+.ad
+.RS 9n
+The maximum number of jobs that can be run simultaneously in that queue; if
+more than \fInjob\fR jobs are ready to run, only the first \fInjob\fR jobs will
+be run, and the others will be run as jobs that are currently running
+terminate. The default value is \fB100\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnice\fR\fR
+.ad
+.RS 9n
+The \fBnice\fR(1) value to give to all jobs in that queue that are not run with
+a user \fBID\fR of super-user. The default value is \fB2\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fInwait\fR\fR
+.ad
+.RS 9n
+The number of seconds to wait before rescheduling a job that was deferred
+because more than \fInjob\fR jobs were running in that job's queue, or because
+the system-wide limit of jobs executing has been reached. The default value is
+\fB60\fR.
+.RE
+
+.sp
+.LP
+Lines beginning with \fB#\fR are comments, and are ignored.
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRA sample file.
+.sp
+.in +2
+.nf
+\fB#
+#
+a.4j1n
+b.2j2n90w\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+This file specifies that the \fBa\fR queue, for \fBat\fR jobs, can have up to 4
+jobs running simultaneously; those jobs will be run with a \fBnice\fR value of
+1. As no \fInwait\fR value was given, if a job cannot be run because too many
+other jobs are running \fBcron\fR will wait 60 seconds before trying again to
+run it.
+
+.sp
+.LP
+The \fBb\fR queue, for \fBbatch\fR(1) jobs, can have up to 2 jobs running
+simultaneously; those jobs will be run with a \fBnice\fR(1) value of 2. If a
+job cannot be run because too many other jobs are running, \fBcron\fR(8) will
+wait 90 seconds before trying again to run it. All other queues can have up to
+100 jobs running simultaneously; they will be run with a \fBnice\fR value of 2,
+and if a job cannot be run because too many other jobs are running \fBcron\fR
+will wait 60 seconds before trying again to run it.
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/cron.d/queuedefs\fR\fR
+.ad
+.RS 25n
+queue description file for \fBat\fR, \fBbatch\fR, and \fBcron\fR.
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR at (1),
+.BR crontab (1),
+.BR nice (1),
+.BR cron (8)
diff --git a/usr/src/man/man5/rbac.5 b/usr/src/man/man5/rbac.5
deleted file mode 100644
index 69f00ced9c..0000000000
--- a/usr/src/man/man5/rbac.5
+++ /dev/null
@@ -1,238 +0,0 @@
-'\" te
-.\" Copyright (c) 2002, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH RBAC 5 "Jul 15, 2003"
-.SH NAME
-rbac, RBAC \- role-based access control
-.SH DESCRIPTION
-.sp
-.LP
-The addition of role-based access control (RBAC) to the Solaris operating
-environment gives developers the opportunity to deliver fine-grained security
-in new and modified applications. RBAC is an alternative to the all-or-nothing
-security model of traditional superuser-based systems. With RBAC, an
-administrator can assign privileged functions to specific user accounts (or
-special accounts called roles).
-.sp
-.LP
-There are two ways to give applications privileges:
-.RS +4
-.TP
-1.
-Administrators can assign special attributes such as setUID to application
-binaries (executable files).
-.RE
-.RS +4
-.TP
-2.
-Administrators can assign special attributes such as setUID to applications
-using execution profiles.
-.RE
-.sp
-.LP
-Special attribute assignment along with the theory behind RBAC is discussed in
-detail in "Role Based Access Control" chapter of the \fISystem Administration
-Guide: Security Services\fR. This chapter describes what authorizations are and
-how to code for them.
-.SS "Authorizations"
-.sp
-.LP
-An authorization is a unique string that represents a user's right to perform
-some operation or class of operations. Authorization definitions are stored in
-a database called \fBauth_attr\fR(4). For programming authorization checks,
-only the authorization name is significant.
-.sp
-.LP
-Some typical values in an \fBauth_attr\fR database are shown below.
-.sp
-.in +2
-.nf
-solaris.jobs.:::Cron and At Jobs::help=JobHeader.html
-solaris.jobs.grant:::Delegate Cron & At \e
- Administration::help=JobsGrant.html
-solaris.jobs.admin:::Manage All Jobs::help=AuthJobsAdmin.html
-solaris.jobs.user:::Cron & At User::help=JobsUser.html
-.fi
-.in -2
-
-.sp
-.LP
-Authorization name strings ending with the \fBgrant\fR suffix are special
-authorizations that give a user the ability to delegate authorizations with the
-same prefix and functional area to other users.
-.SS "Creating Authorization Checks"
-.sp
-.LP
-To check authorizations, use the \fBchkauthattr\fR(3SECDB) library function,
-which verifies whether or not a user has a given authorization. The synopsis
-is:
-.sp
-.in +2
-.nf
-int chkauthattr(const char *authname, const char *username);
-.fi
-.in -2
-
-.sp
-.LP
-The \fBchkauthattr()\fR function checks the \fBpolicy.conf\fR(4),
-\fBuser_attr\fR(4), and \fBprof_attr\fR(4) databases in order for a match to
-the given authorization.
-.sp
-.LP
-If you are modifying existing code that tests for root UID, you should find the
-test in the code and replace it with the \fBchkauthattr()\fR function. A
-typical root UID check is shown in the first code segment below. An
-authorization check replacing it is shown in the second code segment; it uses
-the \fBsolaris.jobs.admin\fR authorization and a variable called
-\fBreal_login\fR representing the user.
-.LP
-\fBExample 1 \fRStandard root check
-.sp
-.in +2
-.nf
-ruid = getuid();
-
-if ((eflag || lflag || rflag) && argc == 1) {
- if ((pwp = getpwnam(*argv)) == NULL)
- crabort(INVALIDUSER);
-
- if (ruid != 0) {
- if (pwp->pw_uid != ruid)
- crabort(NOTROOT);
- else
- pp = getuser(ruid);
- } else
- pp = *argv++;
-} else {
-.fi
-.in -2
-
-.LP
-\fBExample 2 \fRAuthorization check
-.sp
-.in +2
-.nf
-ruid = getuid();
-if ((pwp = getpwuid(ruid)) == NULL)
- crabort(INVALIDUSER);
-
-strcpy(real_login, pwp->pw_name);
-
-if ((eflag || lflag || rflag) && argc == 1) {
- if ((pwp = getpwnam(*argv)) == NULL)
- crabort(INVALIDUSER);
-
- if (!chkauthattr("solaris.jobs.admin", real_login)) {
- if (pwp->pw_uid != ruid)
- crabort(NOTROOT);
- else
- pp = getuser(ruid);
- } else
- pp = *argv++;
-} else {
-.fi
-.in -2
-
-.sp
-.LP
-For new applications, find an appropriate location for the test and use
-\fBchkauthattr()\fR as shown above. Typically the authorization check makes an
-access decision based on the identity of the calling user to determine if a
-privileged action (for example, a system call) should be taken on behalf of
-that user.
-.sp
-.LP
-Applications that perform a test to restrict who can perform their
-security-relevant functionality are generally \fBsetuid\fR to root. Programs
-that were written prior to RBAC and that are only available to the root user
-may not have such checks. In most cases, the kernel requires an effective user
-\fBID\fR of root to override policy enforcement. Therefore, authorization
-checking is most useful in programs that are \fBsetuid\fR to root.
-.sp
-.LP
-For instance, if you want to write a program that allows authorized users to
-set the system date, the command must be run with an effective user \fBID\fR of
-root. Typically, this means that the file modes for the file would be
-\fB-rwsr-xr-x\fR with root ownership.
-.sp
-.LP
-Use caution, though, when making programs \fBsetuid\fR to root. For example,
-the effective \fBUID\fR should be set to the real \fBUID\fR as early as
-possible in the program's initialization function. The effective \fBUID\fR can
-then be set back to root after the authorization check is performed and before
-the system call is made. On return from the system call, the effective UID
-should be set back to the real \fBUID\fR again to adhere to the principle of
-least privilege.
-.sp
-.LP
-Another consideration is that \fBLD_LIBRARY\fR path is ignored for setuid
-programs (see SECURITY section in \fBld.so.1\fR(1)) and that shell scripts must
-be modified to work properly when the effective and real \fBUID\fRs are
-different. For example, the \fB-p\fR flag in Bourne shell is required to avoid
-resetting the effective \fBUID\fR back to the real \fBUID\fR.
-.sp
-.LP
-Using an effective \fBUID\fR of root instead of the real \fBUID\fR requires
-extra care when writing shell scripts. For example, many shell scripts check to
-see if the user is root before executing their functionality. With RBAC, these
-shell scripts may be running with the effective \fBUID\fR of root and with a
-real \fBUID\fR of a user or role. Thus, the shell script should check
-\fBeuid\fR instead of \fBuid\fR. For example,
-.sp
-.in +2
-.nf
-WHO=`id | cut -f1 -d" "`
-if [ ! "$WHO" = "uid=0(root)" ]
-then
- echo "$PROG: ERROR: you must be super-user to run this script."
- exit 1
-fi
-.fi
-.in -2
-
-.sp
-.LP
-should be changed to
-.sp
-.in +2
-.nf
-WHO=`/usr/xpg4/bin/id -n -u`
-if [ ! "$WHO" = "root" ]
-then
- echo "$PROG: ERROR: you are not authorized to run this script."
- exit 1
-fi
-.fi
-.in -2
-
-.sp
-.LP
-Authorizations can be explicitly checked in shell scripts by checking the
-output of the \fBauths\fR(1) utility. For example,
-.sp
-.in +2
-.nf
-for auth in `auths | tr , " "` NOTFOUND
-do
- [ "$auth" = "solaris.date" ] && break # authorization found
-done
-
-if [ "$auth" != "solaris.date" ]
-then
- echo >&2 "$PROG: ERROR: you are not authorized to set the date"
- exit 1
-fi
-.fi
-.in -2
-
-.SH SEE ALSO
-.sp
-.LP
-\fBld.so.1\fR(1), \fBchkauthattr\fR(3SECDB), \fBauth_attr\fR(4),
-\fBpolicy.conf\fR(4), \fBprof_attr\fR(4), \fBuser_attr\fR(4)
-.sp
-.LP
-\fISystem Administration Guide: Security Services\fR
diff --git a/usr/src/man/man5/rcmscript.5 b/usr/src/man/man5/rcmscript.5
new file mode 100644
index 0000000000..7939bde8b3
--- /dev/null
+++ b/usr/src/man/man5/rcmscript.5
@@ -0,0 +1,990 @@
+'\" te
+.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH RCMSCRIPT 5 "Feb 18, 2003"
+.SH NAME
+rcmscript \- script interface specification for the Reconfiguration and
+Coordination Manager
+.SH SYNOPSIS
+.LP
+.nf
+\fB\fIrcm_scriptname\fR scriptinfo\fR
+.fi
+
+.LP
+.nf
+\fB\fIrcm_scriptname\fR register\fR
+.fi
+
+.LP
+.nf
+\fB\fIrcm_scriptname\fR resourceinfo \fIresourcename\fR\fR
+.fi
+
+.LP
+.nf
+\fB\fIrcm_scriptname\fR queryremove \fIresourcename\fR\fR
+.fi
+
+.LP
+.nf
+\fB\fIrcm_scriptname\fR preremove \fIresourcename\fR\fR
+.fi
+
+.LP
+.nf
+\fB\fIrcm_scriptname\fR postremove \fIresourcename\fR\fR
+.fi
+
+.LP
+.nf
+\fB\fIrcm_scriptname\fR undoremove \fIresourcename\fR\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+Reconfiguration and Coordination Manager (RCM) is a framework designed to
+coordinate device consumers during Solaris Dynamic Reconfiguration (DR). The
+interfaces specified in this man page allow device consumers, such as
+application vendors or site administrators, to act before and after DR
+operations take place by providing RCM scripts. You can write your own RCM
+scripts to shut down your applications, or to cleanly release the devices from
+your applications during dynamic remove operations.
+.sp
+.LP
+An RCM script is an executable perl script, a shell script or a binary. Perl is
+the recommended language. Each script is run in its own address space using the
+user-id of the script file owner.
+.sp
+.LP
+An RCM script is invoked on demand in response to DR as follows:
+.sp
+.in +2
+.nf
+\fI<scriptname>\fR \fI<command>\fR [\fIargs\fR ...]
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Every script must implement the following RCM commands:
+.sp
+.ne 2
+.na
+\fB\fBscriptinfo\fR\fR
+.ad
+.RS 16n
+Get script information.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBregister\fR\fR
+.ad
+.RS 16n
+Register devices the script handles.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBresourceinfo\fR\fR
+.ad
+.RS 16n
+Get resource information.
+.RE
+
+.sp
+.LP
+A script might include some or all the of the following commands:
+.sp
+.ne 2
+.na
+\fB\fBqueryremove\fR\fR
+.ad
+.RS 15n
+Queries whether the resource can be released.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpreremove\fR\fR
+.ad
+.RS 15n
+Releases the resource.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpostremove\fR\fR
+.ad
+.RS 15n
+Provides post-resource removal notification.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBundoremove\fR\fR
+.ad
+.RS 15n
+Undo the actions done in preremove.
+.RE
+
+.sp
+.LP
+When a script's \fBregister\fR command is run, the script should supply, in
+return data, all resource names the script or its application handles that
+could potentially be removed by DR. A resource name refers to a name in
+\fB/dev\fR path name.
+.sp
+.LP
+Below is a high-level overview of the sequence of script invocations that
+occurs when dynamic removal of a script's registered resource is attempted. See
+the COMMANDS section for a detailed description of the commands.
+.RS +4
+.TP
+1.
+Prior to removing the resource from the system during DR, the script's
+\fBqueryremove\fR command is run:
+.sp
+.in +2
+.nf
+\fI<scriptname>\fR queryremove \fI<resourcename>\fR
+.fi
+.in -2
+.sp
+
+The script should check for obvious reasons why the resource can not be removed
+from the perspective of its service or application.
+.RE
+.RS +4
+.TP
+2.
+If the script indicates that the resource can be removed in the
+\fBqueryremove\fR command. The script's \fBpreremove\fR command is run:
+.sp
+.in +2
+.nf
+\fI<scriptname>\fR preremove \fI<resourcename>\fR
+.fi
+.in -2
+.sp
+
+The script releases the resource from the service or application represented by
+the script and prepares for the resource removal. Releasing the resource
+includes closing the resource if the resource is currently opened by its
+application.
+.RE
+.RS +4
+.TP
+3.
+The system then proceeds to remove the resource.
+.RE
+.RS +4
+.TP
+4.
+If the system has removed the resource successfully the script's
+\fBpostremove\fR command is run:
+.sp
+.in +2
+.nf
+\fI<scriptname>\fR postremove \fI<resourcename>\fR
+.fi
+.in -2
+.sp
+
+Otherwise the script's \fBundoremove\fR command is run:
+.sp
+.in +2
+.nf
+\fI<scriptname>\fR undoremove \fI<resourcename>\fR
+.fi
+.in -2
+.sp
+
+.RE
+.sp
+.LP
+For any commands the script does not implement, it must exit with exit status
+of 2. RCM silently returns success for the script's unimplemented commands.
+.sp
+.LP
+A script performs the following basic steps:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Takes RCM command and additional arguments from the command line and
+environment parameters.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Processes the command.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Writes the expected return data to stdout as \fIname=value\fR pairs delimited
+by newlines, where \fIname\fR is the name of the return data item that RCM
+expects and \fIvalue\fR is the value associated with the data item.
+.RE
+.SS "Environment"
+.LP
+The initial environment of RCM scripts is set as follows:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Process UID is set to the UID of the script.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Process GID is set to the GID of the script.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBPATH\fR variable is set to \fB/usr/sbin:/usr/bin\fR.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Current working directory is set to:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fB/var/run\fR for scripts owned by root
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fB/tmp\fR for scripts not owned by root
+.RE
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+File descriptor 0 (stdin) is set to \fB/dev/null\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Environment variable \fBRCM_ENV_DEBUG_LEVEL\fR is set to the debug level.
+Logging is discussed below.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+ The following environment variables are also set where possible:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBLANG\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBLC_COLLATE\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBLC_CTYPE\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBLC_MESSAGES\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBLC_MONETARY\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBLC_NUMERIC\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBLC_TIME\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBLC_ALL\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBTZ\fR
+.RE
+See \fBenviron\fR(7) for a description of these variables. See \fBgettext\fR(1)
+for details on retrieving localized messages.
+.RE
+.sp
+.LP
+All environment variable names beginning with \fBRCM_ENV_\fR are reserved for
+use by the RCM.
+.sp
+.LP
+The character encoding used by the RCM and RCM scripts to exchange RCM
+commands, environment parameters, and name-value pairs is ASCII unless the
+controlling environment variables are specified otherwise.
+.SS "Commands"
+.SS "\fBscriptinfo\fR"
+.LP
+The \fBscriptinfo\fR command is invoked to gather information about the script.
+.sp
+.ne 2
+.na
+\fBReturn data:\fR
+.ad
+.RS 16n
+If successful, the script must write the following name-value pairs to stdout
+and exit with status 0:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBrcm_script_version=1\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBrcm_script_func_info=\fR\fIscript_func_info\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBrcm_cmd_timeout=\fR\fIcommand_timeout_value\fR
+.RE
+where \fIscript_func_info\fR is a localized human-readable message describing
+the functionality of the script.
+.sp
+The RCM monitors the execution time of RCM commands by RCM scripts.
+\fIcommand_timeout_value\fR is the maximum time in seconds the script is
+expected to take to process any RCM command except the \fBscriptinfo\fR command
+itself. If an RCM script does not process the RCM command and exit within this
+time, RCM sends a \fBSIGABRT\fR signal to the script process. RCM then waits
+for a few seconds for the script to finish the processing of the current RCM
+command and exit. If the script does not exit within this time, RCM sends a
+\fBSIGKILL\fR signal to the script.
+.sp
+The \fBrcm_cmd_timeout\fR name-value pair is optional. It is only needed if the
+script is expected to take more than a few seconds to process any RCM command.
+Setting this name to a value of 0 (zero) disables the timer. If this name-value
+pair is not supplied, a default value is assigned by the RCM.
+.sp
+Upon failure, the script must specify the failure reason using the name-value
+pair \fBrcm_failure_reason\fR and exit with status 1.
+.RE
+
+.SS "\fBregister\fR"
+.LP
+The \fBregister\fR command is invoked to allow a script to specify the
+resources that it or its application handles that could potentially be removed
+by DR. The script has to supply all its resource names to RCM using the
+name-value pair \fBrcm_resource_name\fR.
+.sp
+.ne 2
+.na
+\fBReturn Data:\fR
+.ad
+.RS 16n
+If successful, the script must write the following name-value pairs to stdout
+and exit with status 0:
+.sp
+.in +2
+.nf
+rcm_resource_name=\fIresourcename\fR
+rcm_resource_name=\fIresourcename\fR
+ .
+ .
+ .
+.fi
+.in -2
+.sp
+
+where \fIresourcename\fR is the name of the resource the script is interested
+in.
+.sp
+Upon failure, the script must specify the failure reason using the name-value
+pair \fBrcm_failure_reason\fR and exit with status 1.
+.RE
+
+.SS "\fBresourceinfo\fR \fIresourcename\fR"
+.LP
+The \fBresourceinfo\fR command is invoked to get the usage information about
+\fIresourcename\fR.
+.sp
+.ne 2
+.na
+\fBReturn Data:\fR
+.ad
+.RS 16n
+If successful, the script must write the following name-value pair to stdout
+and exit with status 0:
+.sp
+.in +2
+.nf
+rcm_resource_usage_info=\fIresource_usage\fR
+.fi
+.in -2
+.sp
+
+where \fIresource_usage\fR is a localized human readable message describing the
+usage of the resource by the script.
+.sp
+Upon failure, the script must specify the failure reason using the name-value
+pair \fBrcm_failure_reason\fR and exit with status 1.
+.RE
+
+.SS "\fBqueryremove\fR \fIresourcename\fR"
+.LP
+Prior to removing the resource from the system, the \fBqueryremove\fR command
+is invoked to query the script to determine whether the script can release the
+given resource successfully from the service or application it represents. The
+script does not actually release the resource. The script might indicate that
+it is not able to release the resource if the resource is critical for its
+service or application.
+.sp
+.LP
+Additional environment parameter:
+.sp
+.ne 2
+.na
+\fB\fBRCM_ENV_FORCE\fR\fR
+.ad
+.RS 17n
+Can be one of:
+.sp
+.ne 2
+.na
+\fB\fBFALSE\fR\fR
+.ad
+.RS 9n
+Normal request.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBTRUE\fR\fR
+.ad
+.RS 9n
+Request is urgent. The script should check whether the resource can be released
+successfully by force, such as by using the force option to unmount a file
+system.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fBReturn Data:\fR
+.ad
+.RS 16n
+If the command succeeds, the script must return no data and exit with status 0.
+.sp
+If the script would not be able to release the resource, it must specify the
+reason using the name-value pair \fBrcm_failure_reason\fR and exit with status
+3.
+.sp
+Upon any other failure, the script must specify the failure reason using the
+name-value pair \fBrcm_failure_reason\fR and exit with status 1.
+.RE
+
+.SS "\fBpreremove\fR \fIresourcename\fR"
+.LP
+The \fBpreremove\fR command is invoked prior to an attempt to remove the given
+\fIresourcename\fR. In response to this command the script can either release
+the resource (including closing the device if the device is currently opened)
+from the service or application it represents or indicate that it can not
+release the resource if the resource is critical for its service or
+application.
+.sp
+.LP
+Additional environment parameter:
+.sp
+.ne 2
+.na
+\fB\fBRCM_ENV_FORCE\fR\fR
+.ad
+.RS 17n
+Can be one of:
+.sp
+.ne 2
+.na
+\fB\fBFALSE\fR\fR
+.ad
+.RS 9n
+Normal request.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBTRUE\fR\fR
+.ad
+.RS 9n
+Request is urgent. The script should make extra effort to release the resource,
+such as by using the force option to unmount a file system.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fBReturn Data:\fR
+.ad
+.RS 16n
+If the command succeeds, the script must return no data and exit with status 0.
+.sp
+If the script cannot release the resource, it must specify the reason using the
+name-value pair \fBrcm_failure_reason\fR and exit with status 3.
+.sp
+Upon any other failure, the script must specify the failure reason using the
+name-value pair \fBrcm_failure_reason\fR and exit with status 1.
+.RE
+
+.SS "\fBpostremove\fR \fIresourcename\fR"
+.LP
+The \fBpostremove\fR command is invoked after the given \fIresourcename\fR has
+been removed.
+.sp
+.ne 2
+.na
+\fBReturn Data:\fR
+.ad
+.RS 16n
+If the command succeeds, the script must return no data and exit with status 0.
+.sp
+Upon failure, the script must specify the failure reason using the name-value
+pair \fBrcm_failure_reason\fR and exit with status 1.
+.RE
+
+.sp
+.LP
+\fBundoremove\fR \fIresourcename\fR
+.sp
+.LP
+The \fBundoremove\fR command is invoked to undo what was done in the previous
+\fBpreremove\fR command for the given \fIresourcename\fR. The script can bring
+the state of the resource to the same state it was in when the script received
+the \fBpreremove\fR command for that resource.
+.sp
+.ne 2
+.na
+\fBReturn Data:\fR
+.ad
+.RS 16n
+If the command succeeds, the script must return no data and exit with status 0.
+.sp
+Upon failure, the script must specify the failure reason using the name-value
+pair \fBrcm_failure_reason\fR and exit with status 1.
+.RE
+
+.SS "Logging"
+.LP
+A script must log all error and debug messages by writing to stdout the
+name-value pairs listed below. The logged messages go to \fBsyslogd\fR(8) with
+the \fBsyslog\fR facility of \fBLOG_DAEMON\fR. See \fBsyslog.conf\fR(5).
+.sp
+.ne 2
+.na
+\fB\fBrcm_log_err=\fR\fImessage\fR\fR
+.ad
+.RS 25n
+Logs the \fImessage\fR with the syslog level of \fBLOG_ERR\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrcm_log_warn=\fR\fImessage\fR\fR
+.ad
+.RS 25n
+Logs the \fImessage\fR with the syslog level of \fBLOG_WARNING\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrcm_log_info=\fR\fImessage\fR\fR
+.ad
+.RS 25n
+Logs the \fImessage\fR with the syslog level of \fBLOG_INFO\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrcm_log_debug=\fR\fImessage\fR\fR
+.ad
+.RS 25n
+Logs the \fImessage\fR with the syslog level of \fBLOG_DEBUG\fR.
+.RE
+
+.sp
+.LP
+A script can use the environment variable \fBRCM_ENV_DEBUG_LEVEL\fR to control
+the amount of information to log. \fBRCM_ENV_DEBUG_LEVEL\fR is a numeric value
+ranging from 0 to 9, with 0 meaning log the least amount of information and 9
+meaning log the most.
+.SS "Installing or Removing RCM Scripts"
+.LP
+You must use the following format to name a script:
+.sp
+.in +2
+.nf
+\fIvendor\fR,\fIservice\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+where \fIvendor\fR is the stock symbol (or any distinctive name) of the vendor
+providing the script and \fIservice\fR is the name of service the script
+represents.
+.sp
+.LP
+You must be a superuser (root) to install or remove an RCM script.
+.sp
+.LP
+Select one of the following directories where you want to place the script:
+.sp
+.ne 2
+.na
+\fB\fB/etc/rcm/scripts\fR\fR
+.ad
+.sp .6
+.RS 4n
+Scripts for specific systems
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/platform/`uname -i`/lib/rcm/scripts\fR\fR
+.ad
+.sp .6
+.RS 4n
+Scripts for specific hardware implementation
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/platform/`uname -m`/lib/rcm/scripts\fR\fR
+.ad
+.sp .6
+.RS 4n
+Scripts for specific hardware class
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/rcm/scripts\fR\fR
+.ad
+.sp .6
+.RS 4n
+Scripts for any hardware
+.RE
+
+.SS "Installing a Script"
+.LP
+To install a script, copy the script to the appropriate directory from the list
+above, change the userid and the groupid of the script to the desired values,
+and send \fBSIGHUP\fR to \fBrcm_daemon\fR. For example:
+.sp
+.in +2
+.nf
+# cp SUNW,sample.pl /usr/lib/rcm/scripts
+# chown user[:group] /usr/lib/rcm/scripts/SUNW,sample.pl
+# pkill -HUP -x -u root rcm_daemon
+.fi
+.in -2
+.sp
+
+.SS "Removing a script"
+.LP
+Remove the script from the appropriate directory from the list above and send
+\fBSIGHUP\fR to \fBrcm_daemon\fR. For example:
+.sp
+.in +2
+.nf
+# rm /usr/lib/rcm/scripts/SUNW,sample.pl
+# pkill -HUP -x -u root rcm_daemon
+.fi
+.in -2
+.sp
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRSite Customization RCM Script
+.sp
+.in +2
+.nf
+#! /usr/bin/perl -w
+
+#
+# A sample site customization RCM script for a tape backup application.
+#
+# This script registers all tape drives in the system with RCM.
+# When the system attempts to remove a tape drive by DR the script
+# does the following:
+# - if the tape drive is not being used for backup, it allows the
+# DR to continue.
+# - if the tape drive is being used for backup, and when DR is not
+# forced (RCM_ENV_FORCE=FALSE) it indicates that it cannot release
+# the tape drive with appropriate error message. When forced
+# (RCM_ENV_FORCE=TRUE) it kills the tape backup application in
+# order to allow the DR to continue.
+#
+# This script does not implement the postremove and undoremove commands
+# since there is nothing to cleanup after DR remove operation is
+# completed or failed. If any cleanup is needed after the DR removal
+# completed, postremove command needs to implemented. If any cleanup is
+# needed in the event of DR removal failure, undoremove command needs
+# to be implemented.
+#
+
+use strict;
+
+my ($cmd, %dispatch);
+
+$cmd = shift(@ARGV);
+
+# dispatch table for RCM commands
+%dispatch = (
+ "scriptinfo" => \&do_scriptinfo,
+ "register" => \&do_register,
+ "resourceinfo" => \&do_resourceinfo,
+ "queryremove" => \&do_preremove,
+ "preremove" => \&do_preremove
+);
+
+if (defined($dispatch{$cmd})) {
+ &{$dispatch{$cmd}};
+} else {
+ exit (2);
+}
+
+sub do_scriptinfo
+{
+ print "rcm_script_version=1\en";
+ print "rcm_script_func_info=Tape backup appl script for DR\en";
+ exit (0);
+}
+
+sub do_register
+{
+ my ($dir, $f, $errmsg);
+
+ $dir = opendir(RMT, "/dev/rmt");
+ if (!$dir) {
+ $errmsg = "Unable to open /dev/rmt directory: $!";
+ print "rcm_failure_reason=$errmsg\en";
+ exit (1);
+ }
+
+ while ($f = readdir(RMT)) {
+ # ignore hidden files and multiple names for the same device
+ if (($f !~ /^\./) && ($f =~ /^[0-9]+$/)) {
+ print "rcm_resource_name=/dev/rmt/$f\en";
+ }
+
+ }
+
+ closedir(RMT);
+ exit (0);
+}
+
+sub do_resourceinfo
+{
+ my ($rsrc, $unit);
+
+ $rsrc = shift(@ARGV);
+ if ($rsrc =~ /^\e/dev\e/rmt\e/([0-9]+)$/) {
+ $unit = $1;
+ print "rcm_resource_usage_info=Backup Tape Unit Number $unit\en";
+ exit (0);
+ } else {
+ print "rcm_failure_reason=Unknown tape device!\en";
+ exit (1);
+ }
+}
+
+sub do_preremove
+{
+ my ($rsrc);
+
+ $rsrc = shift(@ARGV);
+
+ # check if backup application is using this resource
+ # if (the backup application is not running on $rsrc) {
+ # allow the DR to continue
+ # exit (0);
+ #}
+ #
+ # If RCM_ENV_FORCE is FALSE deny the operation.
+ # If RCM_ENV_FORCE is TRUE kill the backup application in order
+ # to allow the DR operation to proceed
+ #
+ if ($ENV{RCM_ENV_FORCE} eq 'TRUE') {
+ if ($cmd eq 'preremove') {
+ # kill the tape backup application
+ }
+ exit (0);
+ } else {
+ #
+ # indicate that the tape drive can not be released
+ # since the device is being used for backup by the
+ # tape backup application
+ #
+ print "rcm_failure_reason=tape backup in progress pid=...\en";
+ exit (3);
+
+ }
+}
+.fi
+.in -2
+
+.SH EXIT STATUS
+.LP
+A script must exit with following exit status values:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 5n
+Operation specified by the given RCM command has been executed successfully by
+the script. For \fBqueryremove\fR command it also means that the script can
+successfully release the resource.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB1\fR\fR
+.ad
+.RS 5n
+An error occurred while processing the RCM command. The script should provide
+the error message to RCM using the name-value pair \fBrcm_failure_reason\fR
+before exiting.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB2\fR\fR
+.ad
+.RS 5n
+The script does not support the given RCM command. A script must exit with this
+status if it cannot understand the given RCM command.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB3\fR\fR
+.ad
+.RS 5n
+Indicates that the script cannot release the resource for \fBpreremove\fR and
+\fBqueryremove\fR commands. The script should provide a message to RCM
+specifying the reason for not being able to release the resource using the
+name-value pair \fBrcm_failure_reason\fR before exiting.
+.RE
+
+.SH ERRORS
+.LP
+If a script cannot successfully process an RCM command, it must supply to the
+RCM a message indicating the reason for failure by writing a name-value pair,
+in the form shown below, to stdout and exiting with the appropriate exit
+status.
+.sp
+.in +2
+.nf
+rcm_failure_reason=\fIfailure_reason\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+where \fIfailure_reason\fR is a localized human readable message describing the
+reason for failure of the RCM command.
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.LP
+.BR gettext (1),
+.BR syslog (3C),
+.BR signal.h (3HEAD),
+.BR syslog.conf (5),
+.BR attributes (7),
+.BR environ (7),
+.BR cfgadm (8),
+.BR cfgadm_pci (8),
+.BR cfgadm_scsi (8)
+.SH NOTES
+.LP
+RCM scripts are expected to properly handle all RCM commands that the script
+implements and to log all errors. Only root has permission to add or remove an
+RCM script. An ill-behaved RCM script can cause unexpected DR failures.
+.sp
+.LP
+RCM commands are invoked only for the resources whose subsystems participate
+within the RCM framework. Currently, not all subsystems participate within the
+RCM framework.
diff --git a/usr/src/man/man5/regex.5 b/usr/src/man/man5/regex.5
deleted file mode 100644
index 077c6335f9..0000000000
--- a/usr/src/man/man5/regex.5
+++ /dev/null
@@ -1,1040 +0,0 @@
-.\"
-.\" Sun Microsystems, Inc. gratefully acknowledges The Open Group for
-.\" permission to reproduce portions of its copyrighted documentation.
-.\" Original documentation from The Open Group can be obtained online at
-.\" http://www.opengroup.org/bookstore/.
-.\"
-.\" The Institute of Electrical and Electronics Engineers and The Open
-.\" Group, have given us permission to reprint portions of their
-.\" documentation.
-.\"
-.\" In the following statement, the phrase ``this text'' refers to portions
-.\" of the system documentation.
-.\"
-.\" Portions of this text are reprinted and reproduced in electronic form
-.\" in the SunOS Reference Manual, from IEEE Std 1003.1, 2004 Edition,
-.\" Standard for Information Technology -- Portable Operating System
-.\" Interface (POSIX), The Open Group Base Specifications Issue 6,
-.\" Copyright (C) 2001-2004 by the Institute of Electrical and Electronics
-.\" Engineers, Inc and The Open Group. In the event of any discrepancy
-.\" between these versions and the original IEEE and The Open Group
-.\" Standard, the original IEEE and The Open Group Standard is the referee
-.\" document. The original Standard can be obtained online at
-.\" http://www.opengroup.org/unix/online.html.
-.\"
-.\" This notice shall appear on any product containing this material.
-.\"
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.\"
-.\"
-.\" Copyright (c) 1992, X/Open Company Limited All Rights Reserved
-.\" Portions Copyright (c) 1999, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 2017 Nexenta Systems, Inc.
-.\"
-.Dd August 14, 2020
-.Dt REGEX 5
-.Os
-.Sh NAME
-.Nm regex
-.Nd internationalized basic and extended regular expression matching
-.Sh DESCRIPTION
-Regular Expressions
-.Pq REs
-provide a mechanism to select specific strings from a set of character strings.
-The Internationalized Regular Expressions described below differ from the Simple
-Regular Expressions described on the
-.Xr regexp 5
-manual page in the following ways:
-.Bl -bullet
-.It
-both Basic and Extended Regular Expressions are supported
-.It
-the Internationalization features -- character class, equivalence class, and
-multi-character collation -- are supported.
-.El
-.Pp
-The Basic Regular Expression
-.Pq BRE
-notation and construction rules described in the
-.Sx BASIC REGULAR EXPRESSIONS
-section apply to most utilities supporting regular expressions.
-Some utilities, instead, support the Extended Regular Expressions
-.Pq ERE
-described in the
-.Sx EXTENDED REGULAR EXPRESSIONS
-section; any exceptions for both cases are noted in the descriptions of the
-specific utilities using regular expressions.
-Both BREs and EREs are supported by the Regular Expression Matching interfaces
-.Xr regcomp 3C
-and
-.Xr regexec 3C .
-.Sh BASIC REGULAR EXPRESSIONS
-.Ss BREs Matching a Single Character
-A BRE ordinary character, a special character preceded by a backslash, or a
-period matches a single character.
-A bracket expression matches a single character or a single collating element.
-See
-.Sx RE Bracket Expression ,
-below.
-.Ss BRE Ordinary Characters
-An ordinary character is a BRE that matches itself: any character in the
-supported character set, except for the BRE special characters listed in
-.Sx BRE Special Characters ,
-below.
-.Pp
-The interpretation of an ordinary character preceded by a backslash
-.Pq Qq \e
-is undefined, except for:
-.Bl -enum
-.It
-the characters
-.Qq \&) ,
-.Qq \&( ,
-.Qq { ,
-and
-.Qq }
-.It
-the digits 1 to 9 inclusive
-.Po see
-.Sx BREs Matching Multiple Characters ,
-below
-.Pc
-.It
-a character inside a bracket expression.
-.El
-.Ss BRE Special Characters
-A BRE special character has special properties in certain contexts.
-Outside those contexts, or when preceded by a backslash, such a character will
-be a BRE that matches the special character itself.
-The BRE special characters and the contexts in which they have their special
-meaning are:
-.Bl -tag -width Ds
-.It Sy \&. \&[ \&\e
-The period, left-bracket, and backslash are special except when used in a
-bracket expression
-.Po see
-.Sx RE Bracket Expression ,
-below
-.Pc .
-An expression containing a
-.Qq \&[
-that is not preceded by a backslash and is not part of a bracket expression
-produces undefined results.
-.It Sy *
-The asterisk is special except when used:
-.Bl -bullet
-.It
-in a bracket expression
-.It
-as the first character of an entire BRE
-.Po after an initial
-.Qq ^ ,
-if any
-.Pc
-.It
-as the first character of a subexpression
-.Po after an initial
-.Qq ^ ,
-if any; see
-.Sx BREs Matching Multiple Characters ,
-below
-.Pc .
-.El
-.It Sy ^
-The circumflex is special when used:
-.Bl -bullet
-.It
-as an anchor
-.Po see
-.Sx BRE Expression Anchoring ,
-below
-.Pc .
-.It
-as the first character of a bracket expression
-.Po see
-.Sx RE Bracket Expression ,
-below
-.Pc .
-.El
-.It Sy $
-The dollar sign is special when used as an anchor.
-.El
-.Ss Periods in BREs
-A period
-.Pq Qq \&. ,
-when used outside a bracket expression, is a BRE that matches any character in
-the supported character set except NUL.
-.Ss RE Bracket Expression
-A bracket expression
-.Po an expression enclosed in square brackets,
-.Qq []
-.Pc
-is an RE that matches a single collating element contained in the non-empty set
-of collating elements represented by the bracket expression.
-.Pp
-The following rules and definitions apply to bracket expressions:
-.Bl -enum
-.It
-A
-.Em bracket expression
-is either a matching list expression or a non-matching list expression.
-It consists of one or more expressions: collating elements, collating symbols,
-equivalence classes, character classes, or range expressions
-.Pq see rule 7 below .
-Portable applications must not use range expressions, even though all
-implementations support them.
-The right-bracket
-.Pq Qq \&]
-loses its special meaning and represents itself in a bracket expression if it
-occurs first in the list
-.Po after an initial circumflex
-.Pq Qq ^ ,
-if any
-.Pc .
-Otherwise, it terminates the bracket expression, unless it appears in a
-collating symbol
-.Po such as
-.Qq [.].]
-.Pc
-or is the ending right-bracket for a collating symbol, equivalence class, or
-character class.
-.Pp
-The special characters
-.Qq \&. ,
-.Qq * ,
-.Qq \&[ ,
-.Qq \&\e
-.Pq period, asterisk, left-bracket and backslash, respectively
-lose their special meaning within a bracket expression.
-.Pp
-The character sequences
-.Qq [. ,
-.Qq [= ,
-.Qq [:
-.Pq left-bracket followed by a period, equals-sign, or colon
-are special inside a bracket expression and are used to delimit collating
-symbols, equivalence class expressions, and character class expressions.
-These symbols must be followed by a valid expression and the matching
-terminating sequence
-.Qq .] ,
-.Qq =]
-or
-.Qq :] ,
-as described in the following items.
-.It
-A
-.Em matching list expression
-specifies a list that matches any one of the expressions represented in the
-list.
-The first character in the list must not be the circumflex.
-For example,
-.Qq [abc]
-is an RE that matches any of the characters
-.Qq a ,
-.Qq b
-or
-.Qq c .
-.It
-A
-.Em non-matching list expression
-begins with a circumflex
-.Pq Qq ^ ,
-and specifies a list that matches any character or collating element except for
-the expressions represented in the list after the leading circumflex.
-For example,
-.Qq [^abc]
-is an RE that matches any character or collating element except the characters
-.Qq a ,
-.Qq b ,
-or
-.Qq c .
-The circumflex will have this special meaning only when it occurs first in the
-list, immediately following the left-bracket.
-.It
-A
-.Em collating symbol
-is a collating element enclosed within bracket-period
-.Pq Qq [..]
-delimiters.
-Multi-character collating elements must be represented as collating symbols when
-it is necessary to distinguish them from a list of the individual characters
-that make up the multi-character collating element.
-For example, if the string
-.Qq ch
-is a collating element in the current collation sequence with the associated
-collating symbol
-.Qq Aq ch ,
-the expression
-.Qq [[.ch.]]
-will be treated as an RE matching the character sequence
-.Qq ch ,
-while
-.Qq [ch]
-will be treated as an RE matching
-.Qq c
-or
-.Qq h .
-Collating symbols will be recognized only inside bracket expressions.
-This implies that the RE
-.Qq [[.ch.]]*c
-matches the first to fifth character in the string
-.Qq chchch.
-If the string is not a collating element in the current collating sequence
-definition, or if the collating element has no characters associated with it,
-the symbol will be treated as an invalid expression.
-.It
-An
-.Em equivalence class expression
-represents the set of collating elements belonging to an equivalence class.
-Only primary equivalence classes will be recognised.
-The class is expressed by enclosing any one of the collating elements in the
-equivalence class within bracket-equal
-.Pq Qq [==]
-delimiters.
-For example, if
-.Qq a
-and
-.Qq b
-belong to the same equivalence class, then
-.Qq [[=a=]b] ,
-.Qq [[==]a]
-and
-.Qq [[==]b]
-will each be equivalent to
-.Qq [ab] .
-If the collating element does not belong to an equivalence class, the
-equivalence class expression will be treated as a
-.Em collating symbol .
-.It
-A
-.Em character class expression
-represents the set of characters belonging to a character class, as defined in
-the
-.Ev LC_CTYPE
-category in the current locale.
-All character classes specified in the current locale will be recognized.
-A character class expression is expressed as a character class name enclosed
-within bracket-colon
-.Pq Qq [::]
-delimiters.
-.Pp
-The following character class expressions are supported in all locales:
-.Bl -column "[:alnum:]" "[:cntrl:]" "[:lower:]" "[:xdigit:]"
-.It [:alnum:] Ta [:cntrl:] Ta [:lower:] Ta [:space:]
-.It [:alpha:] Ta [:digit:] Ta [:print:] Ta [:upper:]
-.It [:blank:] Ta [:graph:] Ta [:punct:] Ta [:xdigit:]
-.El
-.Pp
-In addition, character class expressions of the form
-.Qq [:name:]
-are recognized in those locales where the
-.Em name
-keyword has been given a
-.Em charclass
-definition in the
-.Ev LC_CTYPE
-category.
-.It
-A
-.Em range expression
-represents the set of collating elements that fall between two elements in the
-current collation sequence, inclusively.
-It is expressed as the starting point and the ending point separated by a hyphen
-.Pq Qq - .
-.Pp
-Range expressions must not be used in portable applications because their
-behavior is dependent on the collating sequence.
-Ranges will be treated according to the current collating sequence, and include
-such characters that fall within the range based on that collating sequence,
-regardless of character values.
-This, however, means that the interpretation will differ depending on collating
-sequence.
-If, for instance, one collating sequence defines as a variant of
-.Qq a ,
-while another defines it as a letter following
-.Qq z ,
-then the expression
-.Qq [-z]
-is valid in the first language and invalid in the second.
-.sp
-In the following, all examples assume the collation sequence specified for the
-POSIX locale, unless another collation sequence is specifically defined.
-.Pp
-The starting range point and the ending range point must be a collating element
-or collating symbol.
-An equivalence class expression used as a starting or ending point of a range
-expression produces unspecified results.
-An equivalence class can be used portably within a bracket expression, but only
-outside the range.
-For example, the unspecified expression
-.Qq [[=e=]-f]
-should be given as
-.Qq [[=e=]e-f] .
-The ending range point must collate equal to or higher than the starting range
-point; otherwise, the expression will be treated as invalid.
-The order used is the order in which the collating elements are specified in the
-current collation definition.
-One-to-many mappings
-.Po see
-.Xr locale 5
-.Pc
-will not be performed.
-For example, assuming that the character
-.Qq eszet
-is placed in the collation sequence after
-.Qq r
-and
-.Qq s ,
-but before
-.Qq t ,
-and that it maps to the sequence
-.Qq ss
-for collation purposes, then the expression
-.Qq [r-s]
-matches only
-.Qq r
-and
-.Qq s ,
-but the expression
-.Qq [s-t]
-matches
-.Qq s ,
-.Qq beta ,
-or
-.Qq t .
-.Pp
-The interpretation of range expressions where the ending range point is also
-the starting range point of a subsequent range expression
-.Po for instance
-.Qq [a-m-o]
-.Pc
-is undefined.
-.Pp
-The hyphen character will be treated as itself if it occurs first
-.Po after an initial
-.Qq ^ ,
-if any
-.Pc
-or last in the list, or as an ending range point in a range expression.
-As examples, the expressions
-.Qq [-ac]
-and
-.Qq [ac-]
-are equivalent and match any of the characters
-.Qq a ,
-.Qq c ,
-or
-.Qq -;
-.Qq [^-ac]
-and
-.Qq [^ac-]
-are equivalent and match any characters except
-.Qq a ,
-.Qq c ,
-or
-.Qq -;
-the expression
-.Qq [%--]
-matches any of the characters between
-.Qq %
-and
-.Qq -
-inclusive; the expression
-.Qq [--@]
-matches any of the characters between
-.Qq -
-and
-.Qq @
-inclusive; and the expression
-.Qq [a--@]
-is invalid, because the letter
-.Qq a
-follows the symbol
-.Qq -
-in the POSIX locale.
-To use a hyphen as the starting range point, it must either come first in the
-bracket expression or be specified as a collating symbol, for example:
-.Qq [][.-.]-0] ,
-which matches either a right bracket or any character or collating element that
-collates between hyphen and 0, inclusive.
-.Pp
-If a bracket expression must specify both
-.Qq -
-and
-.Qq \&] ,
-the
-.Qq \&]
-must be placed first
-.Po after the
-.Qq ^ ,
-if any
-.Pc
-and the
-.Qq -
-last within the bracket expression.
-.El
-.Pp
-Note: Latin-1 characters such as
-.Qq \(ga
-or
-.Qq ^
-are not printable in some locales, for example, the
-.Em ja
-locale.
-.Ss BREs Matching Multiple Characters
-The following rules can be used to construct BREs matching multiple characters
-from BREs matching a single character:
-.Bl -enum
-.It
-The concatenation of BREs matches the concatenation of the strings matched
-by each component of the BRE.
-.It
-A
-.Em subexpression
-can be defined within a BRE by enclosing it between the character pairs
-.Qq \e(
-and
-.Qq \e) .
-Such a subexpression matches whatever it would have matched without the
-.Qq \e(
-and
-.Qq \e) ,
-except that anchoring within subexpressions is optional behavior; see
-.Sx BRE Expression Anchoring ,
-below.
-Subexpressions can be arbitrarily nested.
-.It
-The
-.Em back-reference
-expression
-.Qq \e Ns Em n
-matches the same
-.Pq possibly empty
-string of characters as was matched by a subexpression enclosed between
-.Qq \e(
-and
-.Qq \e)
-preceding the
-.Qq \e Ns Em n .
-The character
-.Qq Em n
-must be a digit from 1 to 9 inclusive,
-.Em n Ns th
-subexpression
-.Po the one that begins with the
-.Em n Ns th
-.Qq \e(
-and ends with the corresponding paired
-.Qq \e)
-.Pc .
-The expression is invalid if less than
-.Em n
-subexpressions precede the
-.Qq \e Ns Em n .
-For example, the expression
-.Qq ^\e(.*\e)\e1$
-matches a line consisting of two adjacent appearances of the same string, and
-the expression
-.Qq \e(a\e)*\e1
-fails to match
-.Qq a .
-The limit of nine back-references to subexpressions in the RE is based on the
-use of a single digit identifier.
-This does not imply that only nine subexpressions are allowed in REs.
-.It
-When a BRE matching a single character, a subexpression or a back-reference is
-followed by the special character asterisk
-.Pq Qq * ,
-together with that asterisk it matches what zero or more consecutive occurrences
-of the BRE would match.
-For example,
-.Qq [ab]*
-and
-.Qq [ab][ab]
-are equivalent when matching the string
-.Qq ab .
-.It
-When a BRE matching a single character, a subexpression, or a back-reference
-is followed by an
-.Em interval expression
-of the format
-.Qq \e{ Ns Em m Ns \e} ,
-.Qq \e{ Ns Em m Ns ,\e}
-or
-.Qq \e{ Ns Em m Ns \&, Ns Em n Ns \e} ,
-together with that interval expression it matches what repeated consecutive
-occurrences of the BRE would match.
-The values of
-.Em m
-and
-.Em n
-will be decimal integers in the range 0 <=
-.Em m
-<=
-.Em n
-<=
-.Dv BRE_DUP_MAX ,
-where
-.Em m
-specifies the exact or minimum number of occurrences and
-.Em n
-specifies the maximum number of occurrences.
-The expression
-.Qq \e{ Ns Em m Ns \e}
-matches exactly
-.Em m
-occurrences of the preceding BRE,
-.Qq \e{ Ns Em m Ns ,\e}
-matches at least
-.Em m
-occurrences and
-.Qq \e{ Ns Em m Ns \&, Ns Em n Ns \e}
-matches any number of occurrences between
-.Em m
-and
-.Em n ,
-inclusive.
-.Pp
-For example, in the string
-.Qq abababccccccd ,
-the BRE
-.Qq c\e{3\e}
-is matched by characters seven to nine, the BRE
-.Qq \e(ab\e)\e{4,\e}
-is not matched at all and the BRE
-.Qq c\e{1,3\e}d
-is matched by characters ten to thirteen.
-.El
-.Pp
-The behavior of multiple adjacent duplication symbols
-.Po Qq *
-and intervals
-.Pc
-produces undefined results.
-.Ss BRE Precedence
-The order of precedence is as shown in the following table:
-.Bl -column "BRE Precedence (from high to low)" ""
-.It Sy BRE Precedence (from high to low) Ta
-.It collation-related bracket symbols Ta [= =] [: :] [. .]
-.It escaped characters Ta \e< Ns Em special character Ns >
-.It bracket expression Ta [ ]
-.It subexpressions/back-references Ta \e( \e) \e Ns Em n
-.It single-character-BRE duplication Ta * \e{ Ns Em m Ns \&, Ns Em n Ns \e}
-.It concatenation Ta
-.It anchoring Ta ^ $
-.El
-.Ss BRE Expression Anchoring
-A BRE can be limited to matching strings that begin or end a line; this is
-called
-.Em anchoring .
-The circumflex and dollar sign special characters will be considered BRE anchors
-in the following contexts:
-.Bl -enum
-.It
-A circumflex
-.Pq Qq ^
-is an anchor when used as the first character of an entire BRE.
-The implementation may treat circumflex as an anchor when used as the first
-character of a subexpression.
-The circumflex will anchor the expression to the beginning of a string;
-only sequences starting at the first character of a string will be matched by
-the BRE.
-For example, the BRE
-.Qq ^ab
-matches
-.Qq ab
-in the string
-.Qq abcdef ,
-but fails to match in the string
-.Qq cdefab .
-A portable BRE must escape a leading circumflex in a subexpression to match a
-literal circumflex.
-.It
-A dollar sign
-.Pq Qq $
-is an anchor when used as the last character of an entire BRE.
-The implementation may treat a dollar sign as an anchor when used as the last
-character of a subexpression.
-The dollar sign will anchor the expression to the end of the string being
-matched; the dollar sign can be said to match the end-of-string following the
-last character.
-.It
-A BRE anchored by both
-.Qq ^
-and
-.Qq $
-matches only an entire string.
-For example, the BRE
-^abcdef$
-matches strings consisting only of
-.Qq abcdef .
-.It
-.Qq ^
-and
-.Qq $
-are not special in subexpressions.
-.El
-.Pp
-Note: The Solaris implementation does not support anchoring in BRE
-subexpressions.
-.Sh EXTENDED REGULAR EXPRESSIONS
-The rules specified for BREs apply to Extended Regular Expressions
-.Pq EREs
-with the following exceptions:
-.Bl -bullet
-.It
-The characters
-.Qq | ,
-.Qq + ,
-and
-.Qq \&?
-have special meaning, as defined below.
-.It
-The
-.Qq {
-and
-.Qq }
-characters, when used as the duplication operator, are not preceded by
-backslashes.
-The constructs
-.Qq \e{
-and
-.Qq \e}
-simply match the characters
-.Qq {
-and
-.Qq }, respectively.
-.It
-The back reference operator is not supported.
-.It
-Anchoring
-.Pq Qq ^$
-is supported in subexpressions.
-.El
-.Ss EREs Matching a Single Character
-An ERE ordinary character, a special character preceded by a backslash, or a
-period matches a single character.
-A bracket expression matches a single character or a single collating element.
-An
-.Em ERE matching a single character
-enclosed in parentheses matches the same as the ERE without parentheses would
-have matched.
-.Ss ERE Ordinary Characters
-An
-.Em ordinary character
-is an ERE that matches itself.
-An ordinary character is any character in the supported character set, except
-for the ERE special characters listed in
-.Sx ERE Special Characters
-below.
-The interpretation of an ordinary character preceded by a backslash
-.Pq Qq \&\e
-is undefined.
-.Ss ERE Special Characters
-An
-.Em ERE special character
-has special properties in certain contexts.
-Outside those contexts, or when preceded by a backslash, such a character is an
-ERE that matches the special character itself.
-The extended regular expression special characters and the contexts in which
-they have their special meaning are:
-.Bl -tag -width Ds
-.It Sy \&. \&[ \&\e \&(
-The period, left-bracket, backslash, and left-parenthesis are special except
-when used in a bracket expression
-.Po see
-.Sx RE Bracket Expression ,
-above
-.Pc .
-Outside a bracket expression, a left-parenthesis immediately followed by a
-right-parenthesis produces undefined results.
-.It Sy \&)
-The right-parenthesis is special when matched with a preceding
-left-parenthesis, both outside a bracket expression.
-.It Sy * + \&? {
-The asterisk, plus-sign, question-mark, and left-brace are special except when
-used in a bracket expression
-.Po see
-.Sx RE Bracket Expression ,
-above
-.Pc .
-Any of the following uses produce undefined results:
-.Bl -bullet
-.It
-if these characters appear first in an ERE, or immediately following a
-vertical-line, circumflex or left-parenthesis
-.It
-if a left-brace is not part of a valid interval expression.
-.El
-.It Sy \&|
-The vertical-line is special except when used in a bracket expression
-.Po see
-.Sx RE Bracket Expression ,
-above
-.Pc .
-A vertical-line appearing first or last in an ERE, or immediately following a
-vertical-line or a left-parenthesis, or immediately preceding a
-right-parenthesis, produces undefined results.
-.It Sy ^
-The circumflex is special when used:
-.Bl -bullet
-.It
-as an anchor
-.Po see
-.Sx ERE Expression Anchoring ,
-below
-.Pc .
-.It
-as the first character of a bracket expression
-.Po see
-.Sx RE Bracket Expression ,
-above
-.Pc .
-.El
-.It Sy $
-The dollar sign is special when used as an anchor.
-.El
-.Ss Periods in EREs
-A period
-.Pq Qq \&. ,
-when used outside a bracket expression, is an ERE that matches any character in
-the supported character set except NUL.
-.Ss ERE Bracket Expression
-The rules for ERE Bracket Expressions are the same as for Basic Regular
-Expressions; see
-.Sx RE Bracket Expression ,
-above.
-.Ss EREs Matching Multiple Characters
-The following rules will be used to construct EREs matching multiple characters
-from EREs matching a single character:
-.Bl -enum
-.It
-A
-.Em concatenation of EREs
-matches the concatenation of the character sequences matched by each component
-of the ERE.
-A concatenation of EREs enclosed in parentheses matches whatever the
-concatenation without the parentheses matches.
-For example, both the ERE
-.Qq cd
-and the ERE
-.Qq (cd)
-are matched by the third and fourth character of the string
-.Qq abcdefabcdef .
-.It
-When an ERE matching a single character or an ERE enclosed in parentheses is
-followed by the special character plus-sign
-.Pq Qq + ,
-together with that plus-sign it matches what one or more consecutive occurrences
-of the ERE would match.
-For example, the ERE
-.Qq b+(bc)
-matches the fourth to seventh characters in the string
-.Qq acabbbcde ;
-.Qq [ab]+
-and
-.Qq [ab][ab]*
-are equivalent.
-.It
-When an ERE matching a single character or an ERE enclosed in parentheses is
-followed by the special character asterisk
-.Pq Qq * ,
-together with that asterisk it matches what zero or more consecutive occurrences
-of the ERE would match.
-For example, the ERE
-.Qq b*c
-matches the first character in the string
-.Qq cabbbcde ,
-and the ERE
-.Qq b*cd
-matches the third to seventh characters in the string
-.Qq cabbbcdebbbbbbcdbc .
-And,
-.Qq [ab]*
-and
-.Qq [ab][ab]
-are equivalent when matching the string
-.Qq ab .
-.It
-When an ERE matching a single character or an ERE enclosed in parentheses is
-followed by the special character question-mark
-.Pq Qq \&? ,
-together with that question-mark it matches what zero or one consecutive
-occurrences of the ERE would match.
-For example, the ERE
-.Qq b?c
-matches the second character in the string
-.Qq acabbbcde .
-.It
-When an ERE matching a single character or an ERE enclosed in parentheses is
-followed by an
-.Em interval expression
-of the format
-.Qq { Ns Em m Ns } ,
-.Qq { Ns Em m Ns ,}
-or
-.Qq { Ns Em m Ns \&, Ns Em n Ns } ,
-together with that interval expression it matches what repeated consecutive
-occurrences of the ERE would match.
-The values of
-.Em m
-and
-.Em n
-will be decimal integers in the range 0 <=
-.Em m
-<=
-.Em n
-<=
-.Dv RE_DUP_MAX ,
-where
-.Em m
-specifies the exact or minimum number of occurrences and
-.Em n
-specifies the maximum number of occurrences.
-The expression
-.Qq { Ns Em m Ns }
-matches exactly
-.Em m
-occurrences of the preceding ERE,
-.Qq { Ns Em m Ns ,}
-matches at least
-.Em m
-occurrences and
-.Qq { Ns m Ns \&, Ns Em n Ns }
-matches any number of occurrences between
-.Em m
-and
-.Em n ,
-inclusive.
-.El
-.Pp
-For example, in the string
-.Qq abababccccccd
-the ERE
-.Qq c{3}
-is matched by characters seven to nine and the ERE
-.Qq (ab){2,}
-is matched by characters one to six.
-.Pp
-The behavior of multiple adjacent duplication symbols
-.Po
-.Qq + ,
-.Qq * ,
-.Qq \&?
-and intervals
-.Pc
-produces undefined results.
-.Ss ERE Alternation
-Two EREs separated by the special character vertical-line
-.Pq Qq |
-match a string that is matched by either.
-For example, the ERE
-.Qq a((bc)|d)
-matches the string
-.Qq abc
-and the string
-.Qq ad .
-Single characters, or expressions matching single characters, separated by the
-vertical bar and enclosed in parentheses, will be treated as an ERE matching a
-single character.
-.Ss ERE Precedence
-The order of precedence will be as shown in the following table:
-.Bl -column "ERE Precedence (from high to low)" ""
-.It Sy ERE Precedence (from high to low) Ta
-.It collation-related bracket symbols Ta [= =] [: :] [. .]
-.It escaped characters Ta \e< Ns Em special character Ns >
-.It bracket expression Ta \&[ \&]
-.It grouping Ta \&( \&)
-.It single-character-ERE duplication Ta * + \&? { Ns Em m Ns \&, Ns Em n Ns}
-.It concatenation Ta
-.It anchoring Ta ^ $
-.It alternation Ta |
-.El
-.Pp
-For example, the ERE
-.Qq abba|cde
-matches either the string
-.Qq abba
-or the string
-.Qq cde
-.Po rather than the string
-.Qq abbade
-or
-.Qq abbcde ,
-because concatenation has a higher order of precedence than alternation
-.Pc .
-.Ss ERE Expression Anchoring
-An ERE can be limited to matching strings that begin or end a line; this is
-called
-.Em anchoring .
-The circumflex and dollar sign special characters are considered ERE anchors
-when used anywhere outside a bracket expression.
-This has the following effects:
-.Bl -enum
-.It
-A circumflex
-.Pq Qq ^
-outside a bracket expression anchors the expression or subexpression it begins
-to the beginning of a string; such an expression or subexpression can match only
-a sequence starting at the first character of a string.
-For example, the EREs
-.Qq ^ab
-and
-.Qq (^ab)
-match
-.Qq ab
-in the string
-.Qq abcdef ,
-but fail to match in the string
-.Qq cdefab ,
-and the ERE
-.Qq a^b
-is valid, but can never match because the
-.Qq a
-prevents the expression
-.Qq ^b
-from matching starting at the first character.
-.It
-A dollar sign
-.Pq Qq $
-outside a bracket expression anchors the expression or subexpression it ends to
-the end of a string; such an expression or subexpression can match only a
-sequence ending at the last character of a string.
-For example, the EREs
-.Qq ef$
-and
-.Qq (ef$)
-match
-.Qq ef
-in the string
-.Qq abcdef ,
-but fail to match in the string
-.Qq cdefab ,
-and the ERE
-.Qq e$f
-is valid, but can never match because the
-.Qq f
-prevents the expression
-.Qq e$
-from matching ending at the last character.
-.El
-.Sh SEE ALSO
-.Xr localedef 1 ,
-.Xr regcomp 3C ,
-.Xr attributes 5 ,
-.Xr environ 5 ,
-.Xr locale 5 ,
-.Xr regexp 5
diff --git a/usr/src/man/man5/regexp.5 b/usr/src/man/man5/regexp.5
deleted file mode 100644
index fe5a0c3d32..0000000000
--- a/usr/src/man/man5/regexp.5
+++ /dev/null
@@ -1,750 +0,0 @@
-.\"
-.\" Sun Microsystems, Inc. gratefully acknowledges The Open Group for
-.\" permission to reproduce portions of its copyrighted documentation.
-.\" Original documentation from The Open Group can be obtained online at
-.\" http://www.opengroup.org/bookstore/.
-.\"
-.\" The Institute of Electrical and Electronics Engineers and The Open
-.\" Group, have given us permission to reprint portions of their
-.\" documentation.
-.\"
-.\" In the following statement, the phrase ``this text'' refers to portions
-.\" of the system documentation.
-.\"
-.\" Portions of this text are reprinted and reproduced in electronic form
-.\" in the SunOS Reference Manual, from IEEE Std 1003.1, 2004 Edition,
-.\" Standard for Information Technology -- Portable Operating System
-.\" Interface (POSIX), The Open Group Base Specifications Issue 6,
-.\" Copyright (C) 2001-2004 by the Institute of Electrical and Electronics
-.\" Engineers, Inc and The Open Group. In the event of any discrepancy
-.\" between these versions and the original IEEE and The Open Group
-.\" Standard, the original IEEE and The Open Group Standard is the referee
-.\" document. The original Standard can be obtained online at
-.\" http://www.opengroup.org/unix/online.html.
-.\"
-.\" This notice shall appear on any product containing this material.
-.\"
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.\"
-.\"
-.\" Copyright 1989 AT&T
-.\" Portions Copyright (c) 1992, X/Open Company Limited All Rights Reserved
-.\" Copyright (c) 2002, Sun Microsystems, Inc. All Rights Reserved.
-.\"
-.TH REGEXP 5 "May 20, 2002"
-.SH NAME
-regexp, compile, step, advance \- simple regular expression compile and match
-routines
-.SH SYNOPSIS
-.LP
-.nf
-#define INIT \fIdeclarations\fR
-#define GETC(void) \fIgetc code\fR
-#define PEEKC(void) \fIpeekc code\fR
-#define UNGETC(void) \fIungetc code\fR
-#define RETURN(\fIptr\fR) \fIreturn code\fR
-#define ERROR(\fIval\fR) \fIerror code\fR
-
-extern char *\fIloc1\fR, *\fIloc2\fR, *\fIlocs\fR;
-
-#include <regexp.h>
-
-\fBchar *\fR\fBcompile\fR(\fBchar *\fR\fIinstring\fR, \fBchar *\fR\fIexpbuf\fR, \fBconst char *\fR\fIendfug\fR, \fBint\fR \fIeof\fR);
-.fi
-
-.LP
-.nf
-\fBint\fR \fBstep\fR(\fBconst char *\fR\fIstring\fR, \fBconst char *\fR\fIexpbuf\fR);
-.fi
-
-.LP
-.nf
-\fBint\fR \fBadvance\fR(\fBconst char *\fR\fIstring\fR, \fBconst char *\fR\fIexpbuf\fR);
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-Regular Expressions (REs) provide a mechanism to select specific strings from a
-set of character strings. The Simple Regular Expressions described below differ
-from the Internationalized Regular Expressions described on the
-\fBregex\fR(5) manual page in the following ways:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-only Basic Regular Expressions are supported
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-the Internationalization features\(emcharacter class, equivalence class, and
-multi-character collation\(emare not supported.
-.RE
-.sp
-.LP
-The functions \fBstep()\fR, \fBadvance()\fR, and \fBcompile()\fR are general
-purpose regular expression matching routines to be used in programs that
-perform regular expression matching. These functions are defined by the
-\fB<regexp.h>\fR header.
-.sp
-.LP
-The functions \fBstep()\fR and \fBadvance()\fR do pattern matching given a
-character string and a compiled regular expression as input.
-.sp
-.LP
-The function \fBcompile()\fR takes as input a regular expression as defined
-below and produces a compiled expression that can be used with \fBstep()\fR or
-\fBadvance()\fR.
-.SS "Basic Regular Expressions"
-.sp
-.LP
-A regular expression specifies a set of character strings. A member of this set
-of strings is said to be matched by the regular expression. Some characters
-have special meaning when used in a regular expression; other characters stand
-for themselves.
-.sp
-.LP
-The following \fIone-character\fR \fIRE\fRs match a \fIsingle\fR character:
-.sp
-.ne 2
-.na
-\fB1.1\fR
-.ad
-.RS 7n
-An ordinary character ( \fInot\fR one of those discussed in 1.2 below) is a
-one-character RE that matches itself.
-.RE
-
-.sp
-.ne 2
-.na
-\fB1.2\fR
-.ad
-.RS 7n
-A backslash (\fB\|\e\fR\|) followed by any special character is a one-character
-RE that matches the special character itself. The special characters are:
-.sp
-.ne 2
-.na
-\fBa.\fR
-.ad
-.RS 6n
-\fB\&.\fR, \fB*\fR, \fB[\fR\|, and \fB\e\fR (period, asterisk, left square
-bracket, and backslash, respectively), which are always special, \fIexcept\fR
-when they appear within square brackets (\fB[\|]\fR; see 1.4 below).
-.RE
-
-.sp
-.ne 2
-.na
-\fBb.\fR
-.ad
-.RS 6n
-^ (caret or circumflex), which is special at the \fIbeginning\fR of an
-\fIentire\fR RE (see 4.1 and 4.3 below), or when it immediately follows the
-left of a pair of square brackets (\fB[\|]\fR) (see 1.4 below).
-.RE
-
-.sp
-.ne 2
-.na
-\fBc.\fR
-.ad
-.RS 6n
-\fB$\fR (dollar sign), which is special at the \fBend\fR of an \fIentire\fR RE
-(see 4.2 below).
-.RE
-
-.sp
-.ne 2
-.na
-\fBd.\fR
-.ad
-.RS 6n
-The character used to bound (that is, delimit) an entire RE, which is special
-for that RE (for example, see how slash (\fB/\fR) is used in the \fBg\fR
-command, below.)
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB1.3\fR
-.ad
-.RS 7n
-A period (\fB\&.\fR) is a one-character RE that matches any character except
-new-line.
-.RE
-
-.sp
-.ne 2
-.na
-\fB1.4\fR
-.ad
-.RS 7n
-A non-empty string of characters enclosed in square brackets (\fB[\|]\fR) is a
-one-character RE that matches \fIany one\fR character in that string. If,
-however, the first character of the string is a circumflex (^), the
-one-character RE matches any character \fIexcept\fR new-line and the remaining
-characters in the string. The ^ has this special meaning \fIonly\fR if it
-occurs first in the string. The minus (\fB-\fR) may be used to indicate a range
-of consecutive characters; for example, \fB[0-9]\fR is equivalent to
-\fB[0123456789]\fR. The \fB-\fR loses this special meaning if it occurs first
-(after an initial ^, if any) or last in the string. The right square bracket
-(\fB]\fR) does not terminate such a string when it is the first character
-within it (after an initial ^, if any); for example, \fB[\|]a-f]\fR matches
-either a right square bracket (\fB]\fR) or one of the \fBASCII\fR letters
-\fBa\fR through \fBf\fR inclusive. The four characters listed in 1.2.a above
-stand for themselves within such a string of characters.
-.RE
-
-.sp
-.LP
-The following rules may be used to construct REs from one-character REs:
-.sp
-.ne 2
-.na
-\fB2.1\fR
-.ad
-.RS 7n
-A one-character RE is a RE that matches whatever the one-character RE matches.
-.RE
-
-.sp
-.ne 2
-.na
-\fB2.2\fR
-.ad
-.RS 7n
-A one-character RE followed by an asterisk (\fB*\fR) is a RE that matches
-\fB0\fR or more occurrences of the one-character RE. If there is any choice,
-the longest leftmost string that permits a match is chosen.
-.RE
-
-.sp
-.ne 2
-.na
-\fB2.3\fR
-.ad
-.RS 7n
-A one-character RE followed by \fB\e{\fR\fIm\fR\fB\e}\fR,
-\fB\e{\fR\fIm,\fR\fB\e}\fR, or \fB\e{\fR\fIm,n\fR\fB\e}\fR is a RE that matches
-a \fIrange\fR of occurrences of the one-character RE. The values of \fIm\fR and
-\fIn\fR must be non-negative integers less than 256; \fB\e{\fR\fIm\fR\fB\e}\fR
-matches \fIexactly\fR \fIm\fR occurrences; \fB\e{\fR\fIm,\fR\fB\e}\fR matches
-\fIat least\fR \fIm\fR occurrences; \fB\e{\fR\fIm,n\fR\fB\e}\fR matches \fIany
-number\fR of occurrences \fIbetween\fR \fIm\fR and \fIn\fR inclusive. Whenever
-a choice exists, the RE matches as many occurrences as possible.
-.RE
-
-.sp
-.ne 2
-.na
-\fB2.4\fR
-.ad
-.RS 7n
-The concatenation of REs is a RE that matches the concatenation of the strings
-matched by each component of the RE.
-.RE
-
-.sp
-.ne 2
-.na
-\fB2.5\fR
-.ad
-.RS 7n
-A RE enclosed between the character sequences \fB\e\|(\fR and \fB\e\|)\fR is a
-RE that matches whatever the unadorned RE matches.
-.RE
-
-.sp
-.ne 2
-.na
-\fB2.6\fR
-.ad
-.RS 7n
-The expression \fB\e\|\fR\fIn\fR matches the same string of characters as was
-matched by an expression enclosed between \fB\e\|(\fR and \fB\e\|)\fR
-\fIearlier\fR in the same RE. Here \fIn\fR is a digit; the sub-expression
-specified is that beginning with the \fIn\fR-th occurrence of \fB\|\e\|(\fR
-counting from the left. For example, the expression
-^\|\fB\e\|(\|.\|*\|\e\|)\|\e\|1\|$\fR matches a line consisting of two repeated
-appearances of the same string.
-.RE
-
-.sp
-.LP
-An RE may be constrained to match words.
-.sp
-.ne 2
-.na
-\fB3.1\fR
-.ad
-.RS 7n
-\fB\e\|<\fR constrains a RE to match the beginning of a string or to follow a
-character that is not a digit, underscore, or letter. The first character
-matching the RE must be a digit, underscore, or letter.
-.RE
-
-.sp
-.ne 2
-.na
-\fB3.2\fR
-.ad
-.RS 7n
-\fB\e\|>\fR constrains a RE to match the end of a string or to precede a
-character that is not a digit, underscore, or letter.
-.RE
-
-.sp
-.LP
-An \fIentire\fR \fIRE\fR may be constrained to match only an initial segment or
-final segment of a line (or both).
-.sp
-.ne 2
-.na
-\fB4.1\fR
-.ad
-.RS 7n
-A circumflex (^) at the beginning of an entire RE constrains that RE to match
-an \fIinitial\fR segment of a line.
-.RE
-
-.sp
-.ne 2
-.na
-\fB4.2\fR
-.ad
-.RS 7n
-A dollar sign (\fB$\fR) at the end of an entire RE constrains that RE to match
-a \fIfinal\fR segment of a line.
-.RE
-
-.sp
-.ne 2
-.na
-\fB4.3\fR
-.ad
-.RS 7n
-The construction ^\fIentire RE\fR\|\fB$\fR constrains the entire RE to match
-the entire line.
-.RE
-
-.sp
-.LP
-The null RE (for example, \fB//\|\fR) is equivalent to the last RE encountered.
-.SS "Addressing with REs"
-.sp
-.LP
-Addresses are constructed as follows:
-.RS +4
-.TP
-1.
-The character "\fB\&.\fR" addresses the current line.
-.RE
-.RS +4
-.TP
-2.
-The character "\fB$\fR" addresses the last line of the buffer.
-.RE
-.RS +4
-.TP
-3.
-A decimal number \fIn\fR addresses the \fIn\fR-th line of the buffer.
-.RE
-.RS +4
-.TP
-4.
-\fI\&'x\fR addresses the line marked with the mark name character \fIx\fR,
-which must be an ASCII lower-case letter (\fBa\fR-\fBz\fR). Lines are marked
-with the \fBk\fR command described below.
-.RE
-.RS +4
-.TP
-5.
-A RE enclosed by slashes (\fB/\fR) addresses the first line found by
-searching \fIforward\fR from the line \fIfollowing\fR the current line toward
-the end of the buffer and stopping at the first line containing a string
-matching the RE. If necessary, the search wraps around to the beginning of the
-buffer and continues up to and including the current line, so that the entire
-buffer is searched.
-.RE
-.RS +4
-.TP
-6.
-A RE enclosed in question marks (\fB?\fR) addresses the first line found by
-searching \fIbackward\fR from the line \fIpreceding\fR the current line toward
-the beginning of the buffer and stopping at the first line containing a string
-matching the RE. If necessary, the search wraps around to the end of the buffer
-and continues up to and including the current line.
-.RE
-.RS +4
-.TP
-7.
-An address followed by a plus sign (\fB+\fR) or a minus sign (\fB-\fR)
-followed by a decimal number specifies that address plus (respectively minus)
-the indicated number of lines. A shorthand for .+5 is .5.
-.RE
-.RS +4
-.TP
-8.
-If an address begins with \fB+\fR or \fB-\fR, the addition or subtraction is
-taken with respect to the current line; for example, \fB-5\fR is understood to
-mean \fB\&.-5\fR.
-.RE
-.RS +4
-.TP
-9.
-If an address ends with \fB+\fR or \fB-\fR, then 1 is added to or subtracted
-from the address, respectively. As a consequence of this rule and of Rule 8,
-immediately above, the address \fB-\fR refers to the line preceding the current
-line. (To maintain compatibility with earlier versions of the editor, the
-character ^ in addresses is entirely equivalent to \fB-\fR\&.) Moreover,
-trailing \fB+\fR and \fB-\fR characters have a cumulative effect, so \fB--\fR
-refers to the current line less 2.
-.RE
-.RS +4
-.TP
-10.
-For convenience, a comma (\fB,\fR) stands for the address pair \fB1,$\fR,
-while a semicolon (\fB;\fR) stands for the pair \fB\&.,$\fR.
-.RE
-.SS "Characters With Special Meaning"
-.sp
-.LP
-Characters that have special meaning except when they appear within square
-brackets (\fB[\|]\fR) or are preceded by \fB\e\fR are: \fB\&.\fR, \fB*\fR,
-\fB[\|\fR, \fB\e\fR\|. Other special characters, such as \fB$\fR have special
-meaning in more restricted contexts.
-.sp
-.LP
-The character \fB^\fR at the beginning of an expression permits a successful
-match only immediately after a newline, and the character \fB$\fR at the end of
-an expression requires a trailing newline.
-.sp
-.LP
-Two characters have special meaning only when used within square brackets. The
-character \fB-\fR denotes a range, \fB[\|\fR\fIc\fR\fB-\fR\fIc\fR\fB]\fR,
-unless it is just after the open bracket or before the closing bracket,
-\fB[\|-\fR\fIc\fR\fB]\fR or \fB[\|\fR\fIc\fR\fB-]\fR in which case it has no
-special meaning. When used within brackets, the character \fB^\fR has the
-meaning \fIcomplement of\fR if it immediately follows the open bracket
-(example: \fB[^\fR\fIc\fR\fB]\|\fR); elsewhere between brackets (example:
-\fB[\fR\fIc\fR\fB^]\|\fR) it stands for the ordinary character \fB^\fR.
-.sp
-.LP
-The special meaning of the \fB\e\fR operator can be escaped only by preceding
-it with another \fB\e\fR\|, for example \fB\e\e\fR\|.
-.SS "Macros"
-.sp
-.LP
-Programs must have the following five macros declared before the \fB#include
-<regexp.h>\fR statement. These macros are used by the \fBcompile()\fR routine.
-The macros \fBGETC\fR, \fBPEEKC\fR, and \fBUNGETC\fR operate on the regular
-expression given as input to \fBcompile()\fR.
-.sp
-.ne 2
-.na
-\fB\fBGETC\fR\fR
-.ad
-.RS 15n
-This macro returns the value of the next character (byte) in the regular
-expression pattern. Successive calls to \fBGETC\fR should return successive
-characters of the regular expression.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPEEKC\fR\fR
-.ad
-.RS 15n
-This macro returns the next character (byte) in the regular expression.
-Immediately successive calls to \fBPEEKC\fR should return the same character,
-which should also be the next character returned by \fBGETC\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBUNGETC\fR\fR
-.ad
-.RS 15n
-This macro causes the argument \fBc\fR to be returned by the next call to
-\fBGETC\fR and \fBPEEKC\fR. No more than one character of pushback is ever
-needed and this character is guaranteed to be the last character read by
-\fBGETC\fR. The return value of the macro \fBUNGETC(c)\fR is always ignored.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBRETURN(\fR\fIptr\fR\fB)\fR\fR
-.ad
-.RS 15n
-This macro is used on normal exit of the \fBcompile()\fR routine. The value of
-the argument \fIptr\fR is a pointer to the character after the last character
-of the compiled regular expression. This is useful to programs which have
-memory allocation to manage.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBERROR(\fR\fIval\fR\fB)\fR\fR
-.ad
-.RS 15n
-This macro is the abnormal return from the \fBcompile()\fR routine. The
-argument \fIval\fR is an error number (see \fBERRORS\fR below for meanings).
-This call should never return.
-.RE
-
-.SS "\fBcompile()\fR"
-.sp
-.LP
-The syntax of the \fBcompile()\fR routine is as follows:
-.sp
-.in +2
-.nf
-\fBcompile(\fR\fIinstring\fR\fB,\fR \fIexpbuf\fR\fB,\fR \fIendbuf\fR\fB,\fR \fIeof\fR\fB)\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The first parameter, \fIinstring\fR, is never used explicitly by the
-\fBcompile()\fR routine but is useful for programs that pass down different
-pointers to input characters. It is sometimes used in the \fBINIT\fR
-declaration (see below). Programs which call functions to input characters or
-have characters in an external array can pass down a value of \fB(char *)0\fR
-for this parameter.
-.sp
-.LP
-The next parameter, \fIexpbuf\fR, is a character pointer. It points to the
-place where the compiled regular expression will be placed.
-.sp
-.LP
-The parameter \fIendbuf\fR is one more than the highest address where the
-compiled regular expression may be placed. If the compiled expression cannot
-fit in \fB(endbuf-expbuf)\fR bytes, a call to \fBERROR(50)\fR is made.
-.sp
-.LP
-The parameter \fIeof\fR is the character which marks the end of the regular
-expression. This character is usually a \fB/\fR.
-.sp
-.LP
-Each program that includes the \fB<regexp.h>\fR header file must have a
-\fB#define\fR statement for \fBINIT\fR. It is used for dependent declarations
-and initializations. Most often it is used to set a register variable to point
-to the beginning of the regular expression so that this register variable can
-be used in the declarations for \fBGETC\fR, \fBPEEKC\fR, and \fBUNGETC\fR.
-Otherwise it can be used to declare external variables that might be used by
-\fBGETC\fR, \fBPEEKC\fR and \fBUNGETC\fR. (See \fBEXAMPLES\fR below.)
-.SS "step(\|), advance(\|)"
-.sp
-.LP
-The first parameter to the \fBstep()\fR and \fBadvance()\fR functions is a
-pointer to a string of characters to be checked for a match. This string should
-be null terminated.
-.sp
-.LP
-The second parameter, \fIexpbuf\fR, is the compiled regular expression which
-was obtained by a call to the function \fBcompile()\fR.
-.sp
-.LP
-The function \fBstep()\fR returns non-zero if some substring of \fIstring\fR
-matches the regular expression in \fIexpbuf\fR and \fB0\fR if there is no
-match. If there is a match, two external character pointers are set as a side
-effect to the call to \fBstep()\fR. The variable \fBloc1\fR points to the first
-character that matched the regular expression; the variable \fBloc2\fR points
-to the character after the last character that matches the regular expression.
-Thus if the regular expression matches the entire input string, \fBloc1\fR will
-point to the first character of \fIstring\fR and \fBloc2\fR will point to the
-null at the end of \fIstring\fR.
-.sp
-.LP
-The function \fBadvance()\fR returns non-zero if the initial substring of
-\fIstring\fR matches the regular expression in \fIexpbuf\fR. If there is a
-match, an external character pointer, \fBloc2\fR, is set as a side effect. The
-variable \fBloc2\fR points to the next character in \fIstring\fR after the last
-character that matched.
-.sp
-.LP
-When \fBadvance()\fR encounters a \fB*\fR or \fB\e{ \e}\fR sequence in the
-regular expression, it will advance its pointer to the string to be matched as
-far as possible and will recursively call itself trying to match the rest of
-the string to the rest of the regular expression. As long as there is no match,
-\fBadvance()\fR will back up along the string until it finds a match or reaches
-the point in the string that initially matched the \fB*\fR or \fB\e{ \e}\fR\&.
-It is sometimes desirable to stop this backing up before the initial point in
-the string is reached. If the external character pointer \fBlocs\fR is equal to
-the point in the string at sometime during the backing up process,
-\fBadvance()\fR will break out of the loop that backs up and will return zero.
-.sp
-.LP
-The external variables \fBcircf\fR, \fBsed\fR, and \fBnbra\fR are reserved.
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRUsing Regular Expression Macros and Calls
-.sp
-.LP
-The following is an example of how the regular expression macros and calls
-might be defined by an application program:
-
-.sp
-.in +2
-.nf
-#define INIT register char *sp = instring;
-#define GETC() (*sp++)
-#define PEEKC() (*sp)
-#define UNGETC(c) (--sp)
-#define RETURN(c) return;
-#define ERROR(c) regerr()
-
-#include <regexp.h>
-\&...
- (void) compile(*argv, expbuf, &expbuf[ESIZE],'\e0');
-\&...
- if (step(linebuf, expbuf))
- succeed;
-.fi
-.in -2
-.sp
-
-.SH DIAGNOSTICS
-.sp
-.LP
-The function \fBcompile()\fR uses the macro \fBRETURN\fR on success and the
-macro \fBERROR\fR on failure (see above). The functions \fBstep()\fR and
-\fBadvance()\fR return non-zero on a successful match and zero if there is no
-match. Errors are:
-.sp
-.ne 2
-.na
-\fB11\fR
-.ad
-.RS 6n
-range endpoint too large.
-.RE
-
-.sp
-.ne 2
-.na
-\fB16\fR
-.ad
-.RS 6n
-bad number.
-.RE
-
-.sp
-.ne 2
-.na
-\fB25\fR
-.ad
-.RS 6n
-\fB\e\fR \fIdigit\fR out of range.
-.RE
-
-.sp
-.ne 2
-.na
-\fB36\fR
-.ad
-.RS 6n
-illegal or missing delimiter.
-.RE
-
-.sp
-.ne 2
-.na
-\fB41\fR
-.ad
-.RS 6n
-no remembered search string.
-.RE
-
-.sp
-.ne 2
-.na
-\fB42\fR
-.ad
-.RS 6n
-\fB\e( \e)\fR imbalance.
-.RE
-
-.sp
-.ne 2
-.na
-\fB43\fR
-.ad
-.RS 6n
-too many \fB\e(\fR\&.
-.RE
-
-.sp
-.ne 2
-.na
-\fB44\fR
-.ad
-.RS 6n
-more than 2 numbers given in \fB\e{ \e}\fR\&.
-.RE
-
-.sp
-.ne 2
-.na
-\fB45\fR
-.ad
-.RS 6n
-\fB}\fR expected after \fB\e\fR\&.
-.RE
-
-.sp
-.ne 2
-.na
-\fB46\fR
-.ad
-.RS 6n
-first number exceeds second in \fB\e{ \e}\fR\&.
-.RE
-
-.sp
-.ne 2
-.na
-\fB49\fR
-.ad
-.RS 6n
-\fB[ ]\fR imbalance.
-.RE
-
-.sp
-.ne 2
-.na
-\fB50\fR
-.ad
-.RS 6n
-regular expression overflow.
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBregex\fR(5)
diff --git a/usr/src/man/man5/remote.5 b/usr/src/man/man5/remote.5
new file mode 100644
index 0000000000..0e26c323f7
--- /dev/null
+++ b/usr/src/man/man5/remote.5
@@ -0,0 +1,527 @@
+'\" te
+.\" Copyright (C) 2002, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH REMOTE 5 "Jun 13, 2002"
+.SH NAME
+remote \- remote host description file
+.SH SYNOPSIS
+.LP
+.nf
+\fB/etc/remote\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The systems known by \fBtip\fR(1) and their attributes are stored in an
+\fBASCII\fR file which is structured somewhat like the \fBtermcap\fR file. Each
+line in the file provides a description for a single \fIsystem\fR. Fields are
+separated by a colon `\fB:\fR'. Lines ending in a `\fB\e\fR\&' character with
+an immediately following \fBNEWLINE\fR are continued on the next line.
+.sp
+.LP
+The first entry is the name(s) of the host system. If there is more than one
+name for a system, the names are separated by vertical bars. After the name of
+the system comes the fields of the description. A field name followed by an
+`\fB=\fR' sign indicates a string value follows. A field name followed by a
+`\fB#\fR' sign indicates a following numeric value.
+.sp
+.LP
+Entries named \fBtip\fR\fIbaudrate\fR are used as default entries by \fBtip\fR,
+as follows. When \fBtip\fR is invoked with only a phone number, it looks for
+an entry of the form \fBtip\fR\fIbaudrate\fR, where \fIbaudrate\fR is the baud
+rate with which the connection is to be made. For example, if the connection
+is to be made at \fB300\fR baud, \fBtip\fR looks for an entry of the form
+\fBtip300\fR.
+.SH CAPABILITIES
+.sp
+.LP
+Capabilities are either strings \fB(str)\fR, numbers \fB(num)\fR, or boolean
+flags \fB(bool)\fR. A string capability is specified by
+\fIcapability\fR=\fIvalue\fR; for example, `\fBdv=/dev/harris\fR'. A numeric
+capability is specified by \fIcapability\fR#\fIvalue\fR; for example,
+`\fBxa#99\fR'. A boolean capability is specified by simply listing the
+capability.
+.sp
+.ne 2
+.na
+\fB\fBat\fR\fR
+.ad
+.RS 6n
+\fB(str)\fR Auto call unit type. The following lists valid '\fBat\fR' types and
+their corresponding hardware:
+.sp
+.ne 2
+.na
+\fB\fBbiz31f\fR\fR
+.ad
+.RS 10n
+Bizcomp 1031, tone dialing
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBbiz31w\fR\fR
+.ad
+.RS 10n
+Bizcomp 1031, pulse dialing
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBbiz22f\fR\fR
+.ad
+.RS 10n
+Bizcomp 1022, tone dialing
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBbiz22w\fR\fR
+.ad
+.RS 10n
+Bizcomp 1022, pulse dialing
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdf02\fR\fR
+.ad
+.RS 10n
+DEC DF02
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdf03\fR\fR
+.ad
+.RS 10n
+DEC DF03
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBventel\fR\fR
+.ad
+.RS 10n
+Ventel 212+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBv3451\fR\fR
+.ad
+.RS 10n
+Vadic 3451 Modem
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBv831\fR\fR
+.ad
+.RS 10n
+Vadic 831
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBhayes\fR\fR
+.ad
+.RS 10n
+Any Hayes-compatible modem
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBat\fR\fR
+.ad
+.RS 10n
+Any Hayes-compatible modem
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBbr\fR\fR
+.ad
+.RS 6n
+\fB(num)\fR The baud rate used in establishing a connection to the remote host.
+This is a decimal number. The default baud rate is \fB300\fR baud.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcm\fR\fR
+.ad
+.RS 6n
+\fB(str)\fR An initial connection message to be sent to the remote host. For
+example, if a host is reached through a port selector, this might be set to the
+appropriate sequence required to switch to the host.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcu\fR\fR
+.ad
+.RS 6n
+\fB(str)\fR Call unit if making a phone call. Default is the same as the
+\fBdv\fR field.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdb\fR\fR
+.ad
+.RS 6n
+\fB(bool)\fR Cause \fBtip\fR(1) to ignore the first hangup it sees. \fBdb\fR
+(dialback) allows the user to remain in \fBtip\fR while the remote machine
+disconnects and places a call back to the local machine. For more information
+about dialback configuration, see \fISystem Administration Guide: IP
+Services\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdi\fR\fR
+.ad
+.RS 6n
+\fB(str)\fR Disconnect message sent to the host when a disconnect is requested
+by the user.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdu\fR\fR
+.ad
+.RS 6n
+\fB(bool)\fR This host is on a dial-up line.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdv\fR\fR
+.ad
+.RS 6n
+\fB(str)\fR Device(s) to open to establish a connection. If this file refers to
+a terminal line, \fBtip\fR attempts to perform an exclusive open on the device
+to insure only one user at a time has access to the port.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBec\fR\fR
+.ad
+.RS 6n
+\fB(bool)\fR Initialize the \fBtip\fR variable \fBechocheck\fR to \fBon\fR, so
+that \fBtip\fR will synchronize with the remote host during file transfer by
+waiting for the echo of the last character transmitted.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBel\fR\fR
+.ad
+.RS 6n
+\fB(str)\fR Characters marking an end-of-line. The default is no characters.
+\fBtip\fR only recognizes `\fB~\fR' escapes after one of the characters in
+\fBel\fR, or after a \fBRETURN.\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBes\fR\fR
+.ad
+.RS 6n
+\fB(str)\fR The command prefix (escape) character for \fBtip\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBet\fR\fR
+.ad
+.RS 6n
+\fB(num)\fR Number of seconds to wait for an echo response when echo-check mode
+is on. This is a decimal number. The default value is \fB10\fR seconds.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBex\fR\fR
+.ad
+.RS 6n
+\fB(str)\fR Set of non-printable characters not to be discarded when scripting
+with beautification turned on. The default value is "\fB\et\en\eb\ef\fR".
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfo\fR\fR
+.ad
+.RS 6n
+\fB(str)\fR Character used to force literal data transmission. The default
+value is `\fB\e377\fR\&'.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfs\fR\fR
+.ad
+.RS 6n
+\fB(num)\fR Frame size for transfers. The default frame size is equal to
+\fB1024\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBhd\fR\fR
+.ad
+.RS 6n
+\fB(bool)\fR Initialize the \fBtip\fR variable \fBhalfduplex\fR to \fBon\fR, so
+local echo should be performed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBhf\fR\fR
+.ad
+.RS 6n
+\fB(bool)\fR Initialize the \fBtip\fR variable \fBhardwareflow\fR to \fBon\fR,
+so hardware flow control is used.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBie\fR\fR
+.ad
+.RS 6n
+\fB(str)\fR Input end-of-file marks. The default is a null string ("").
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnb\fR\fR
+.ad
+.RS 6n
+\fB(bool)\fR Initialize the \fBtip\fR variable \fBbeautify\fR to \fIoff\fR, so
+that unprintable characters will not be discarded when scripting.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnt\fR\fR
+.ad
+.RS 6n
+\fB(bool)\fR Initialize the \fBtip\fR variable \fBtandem\fR to \fIoff\fR, so
+that \fBXON/XOFF\fR flow control will not be used to throttle data from the
+remote host.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnv\fR\fR
+.ad
+.RS 6n
+\fB(bool)\fR Initialize the \fBtip\fR variable \fBverbose\fR to \fIoff\fR, so
+that verbose mode will be turned on.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBoe\fR\fR
+.ad
+.RS 6n
+\fB(str)\fR Output end-of-file string. The default is a null string ("").
+When \fBtip\fR is transferring a file, this string is sent at end-of-file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpa\fR\fR
+.ad
+.RS 6n
+\fB(str)\fR The type of parity to use when sending data to the host. This may
+be one of \fBeven\fR, \fBodd\fR, \fBnone\fR, \fBzero\fR (always set bit
+\fB8\fR to \fB0\fR), \fBone\fR (always set bit \fB8\fR to \fB1\fR). The
+default is \fBnone\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpn\fR\fR
+.ad
+.RS 6n
+\fB(str)\fR Telephone number(s) for this host. If the telephone number field
+contains an `\fB@\fR' sign, \fBtip\fR searches the \fB/etc/phones\fR file for a
+list of telephone numbers \(em see \fBphones\fR(5). A `\fB%\fR' sign in the
+telephone number indicates a 5-second delay for the Ventel Modem.
+.sp
+For Hayes-compatible modems, if the telephone number starts with an 'S', the
+telephone number string will be sent to the modem without the "\fBDT\fR", which
+allows reconfiguration of the modem's S-registers and other parameters; for
+example, to disable auto-answer: "\fBpn=S0=0DT5551234\fR"; or to also
+restrict the modem to return only the basic result codes:
+"\fBpn=S0=0X0DT5551234\fR".
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpr\fR\fR
+.ad
+.RS 6n
+\fB(str)\fR Character that indicates end-of-line on the remote host. The
+default value is \fB`\fR\en\fB\&'.\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBra\fR\fR
+.ad
+.RS 6n
+\fB(bool)\fR Initialize the \fBtip\fR variable \fBraise\fR to \fBon\fR, so that
+lower case letters are mapped to upper case before sending them to the remote
+host.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrc\fR\fR
+.ad
+.RS 6n
+\fB(str)\fR Character that toggles case-mapping mode. The default value is
+`\fB\e377\fR\&'.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBre\fR\fR
+.ad
+.RS 6n
+\fB(str)\fR The file in which to record session scripts. The default value is
+\fBtip.record\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrw\fR\fR
+.ad
+.RS 6n
+\fB(bool)\fR Initialize the \fBtip\fR variable \fBrawftp\fR to \fBon\fR, so
+that all characters will be sent as is during file transfers.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsc\fR\fR
+.ad
+.RS 6n
+\fB(bool)\fR Initialize the \fBtip\fR variable \fBscript\fR to \fBon\fR, so
+that everything transmitted by the remote host will be recorded.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBtb\fR\fR
+.ad
+.RS 6n
+\fB(bool)\fR Initialize the \fBtip\fR variable \fBtabexpand\fR to \fBon\fR, so
+that tabs will be expanded to spaces during file transfers.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBtc\fR\fR
+.ad
+.RS 6n
+\fB(str)\fR Indicates that the list of capabilities is continued in the named
+description. This is used primarily to share common capability information.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRUsing the Capability Continuation Feature
+.sp
+.LP
+Here is a short example showing the use of the capability continuation feature:
+
+.sp
+.in +2
+.nf
+UNIX-1200:\e
+ :dv=/dev/cua0:el=^D^U^C^S^Q^O@:du:at=ventel:ie=#$%:oe=^D
+:br#1200:arpavax|ax:\e
+ :pn=7654321%:tc=UNIX-1200
+.fi
+.in -2
+.sp
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/remote\fR\fR
+.ad
+.RS 15n
+remote host description file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/phones\fR\fR
+.ad
+.RS 15n
+remote host phone number database.
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR tip (1),
+.BR phones (5)
+.sp
+.LP
+\fISystem Administration Guide: IP Services\fR
diff --git a/usr/src/man/man5/resolv.conf.5 b/usr/src/man/man5/resolv.conf.5
new file mode 100644
index 0000000000..7d74bd554f
--- /dev/null
+++ b/usr/src/man/man5/resolv.conf.5
@@ -0,0 +1,262 @@
+'\" te
+.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 1989 AT&T
+.\" Copyright (c) 1983 Regents of the University of California. All rights reserved. The Berkeley software License Agreement specifies the terms and conditions for redistribution.
+.TH RESOLV.CONF 5 "Dec 15, 2004"
+.SH NAME
+resolv.conf \- resolver configuration file
+.SH SYNOPSIS
+.LP
+.nf
+\fB/etc/resolv.conf\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBresolver\fR is a set of routines that provide access to the Internet
+Domain Name System. See \fBresolver\fR(3RESOLV). \fBresolv.conf\fR is a
+configuration file that contains the information that is read by the
+\fBresolver\fR routines the first time they are invoked by a process. The file
+is designed to be human readable and contains a list of keywords with values
+that provide various types of \fBresolver\fR information.
+.sp
+.LP
+The \fBresolv.conf\fR file contains the following configuration directives:
+.sp
+.ne 2
+.na
+\fB\fBnameserver\fR\fR
+.ad
+.RS 23n
+Specifies the IPv4 or IPv6 Internet address of a name server that the resolver
+is to query. Up to \fIMAXNS\fR name servers may be listed, one per keyword. See
+<\fBresolv.h\fR>. If there are multiple servers, the resolver library queries
+them in the order listed. If no name server entries are present, the resolver
+library queries the name server on the local machine. The resolver library
+follows the algorithm to try a name server until the query times out. It then
+tries the name servers that follow, until each query times out. It repeats all
+the name servers until a maximum number of retries are made.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdomain\fR\fR
+.ad
+.RS 23n
+Specifies the local domain name. Most queries for names within this domain can
+use short names relative to the local domain. If no domain entry is present,
+the domain is determined from \fBsysinfo\fR(2) or from \fBgethostname\fR(3C).
+(Everything after the first `.' is presumed to be the domain name.) If the host
+name does not contain a domain part, the root domain is assumed. You can use
+the \fBLOCALDOMAIN\fR environment variable to override the domain name.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsearch\fR\fR
+.ad
+.RS 23n
+The search list for host name lookup. The search list is normally determined
+from the local domain name. By default, it contains only the local domain name.
+You can change the default behavior by listing the desired domain search path
+following the search keyword, with spaces or tabs separating the names. Most
+\fBresolver\fR queries will be attempted using each component of the search
+path in turn until a match is found. This process may be slow and will generate
+a lot of network traffic if the servers for the listed domains are not local.
+Queries will time out if no server is available for one of the domains.
+.sp
+The search list is currently limited to six domains and a total of 256
+characters.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsortlist\fR\fIaddresslist\fR\fR
+.ad
+.RS 23n
+Allows addresses returned by the libresolv-internal \fBgethostbyname()\fR to be
+sorted. A \fBsortlist\fR is specified by IP address netmask pairs. The netmask
+is optional and defaults to the natural netmask of the net. The IP address and
+optional network pairs are separated by slashes. Up to 10 pairs may be
+specified. For example:
+.sp
+.in +2
+.nf
+sortlist 130.155.160.0/255.255.240.0 130.155.0.0
+.fi
+.in -2
+.sp
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBoptions\fR\fR
+.ad
+.RS 23n
+Allows certain internal resolver variables to be modified. The syntax is
+.sp
+.in +2
+.nf
+options option ...
+.fi
+.in -2
+.sp
+
+where option is one of the following:
+.sp
+.ne 2
+.na
+\fB\fBdebug\fR\fR
+.ad
+.RS 18n
+Sets \fBRES_DEBUG\fR in the \fB_res.options\fR field.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBndots:\fR\fIn\fR\fR
+.ad
+.RS 18n
+Sets a threshold floor for the number of dots which must appear in a name given
+to \fBres_query()\fR before an initial absolute (as-is) query is performed. See
+\fBresolver\fR(3RESOLV). The default value for \fIn\fR is 1, which means that
+if there are any dots in a name, the name is tried first as an absolute name
+before any search list elements are appended to it.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBtimeout:\fR\fIn\fR\fR
+.ad
+.br
+.na
+\fB\fBretrans:\fR\fIn\fR\fR
+.ad
+.RS 18n
+Sets the amount of time the resolver will wait for a response from a remote
+name server before retrying the query by means of a different name server.
+Measured in seconds, the default is \fBRES_TIMEOUT\fR. See <\fBresolv.h\fR>.
+The \fBtimeout\fR and \fBretrans\fR values are the starting point for an
+exponential back off procedure where the \fBtimeout\fR is doubled for every
+retransmit attempt.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBattempts:\fR\fIn\fR\fR
+.ad
+.br
+.na
+\fB\fBretry:\fR\fIn\fR\fR
+.ad
+.RS 18n
+Sets the number of times the resolver will send a query to its name servers
+before giving up and returning an error to the calling application. The default
+is \fBRES_DFLRETRY\fR. See <\fBresolv.h\fR>.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrotate\fR\fR
+.ad
+.RS 18n
+Sets \fBRES_ROTATE\fR in \fB_res.options\fR. The name servers are queried
+round-robin from among those listed. The query load is spread among all listed
+servers, rather than having all clients try the first listed server first every
+time.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBno-check-names\fR\fR
+.ad
+.RS 18n
+Sets \fBRES_NOCHECKNAME\fR in \fB_res.options\fR. This disables the modern BIND
+checking of incoming host names and mail names for invalid characters such as
+underscore (\fB_\fR), non-ASCII, or control characters.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBinet6\fR\fR
+.ad
+.RS 18n
+Sets \fBRES_USE_INET6\fR in \fB_res.options\fR. In the Solaris BIND port, this
+has no effect on \fBgethostbyname\fR(3NSL). To retrieve IPv6 addresses or IPv4
+addresses, use \fBgetaddrinfo\fR(3SOCKET) instead of setting \fBinet6\fR.
+.RE
+
+.RE
+
+.sp
+.LP
+The \fBdomain\fR and \fBsearch\fR keywords are mutually exclusive. If more than
+one instance of these keywords is present, the last instance takes precedence.
+.sp
+.LP
+You can override the \fBsearch\fR keyword of the system \fBresolv.conf\fR file
+on a per-process basis by setting the environment variable \fBLOCALDOMAIN\fR to
+a space-separated list of search domains.
+.sp
+.LP
+You can amend the \fBoptions\fR keyword of the system \fBresolv.conf\fR file on
+a per-process basis by setting the environment variable \fBRES_OPTIONS\fR to a
+space-separated list of resolver options.
+.sp
+.LP
+The keyword and value must appear on a single line. Start the line with the
+keyword, for example, \fBnameserver\fR, followed by the value, separated by
+white space.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/resolv.conf\fR\fR
+.ad
+.RS 20n
+
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Standard BIND 8.3.3
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR sysinfo (2),
+.BR gethostname (3C),
+.BR gethostbyname (3NSL),
+.BR resolver (3RESOLV),
+.BR getipnodebyname (3SOCKET),
+.BR getnameinfo (3SOCKET),
+.BR attributes (7),
+.BR domainname (8)
+.sp
+.LP
+Vixie, Paul, Dunlap, Keven J., Karels, Michael J. \fIName Server Operations
+Guide for BIND\fR. Internet Software Consortium, 1996.
diff --git a/usr/src/man/man5/resource_controls.5 b/usr/src/man/man5/resource_controls.5
deleted file mode 100644
index 4cf7f5ed26..0000000000
--- a/usr/src/man/man5/resource_controls.5
+++ /dev/null
@@ -1,1103 +0,0 @@
-'\" te
-.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 2017, Joyent, Inc.
-.\" Copyright 2021 OmniOS Community Edition (OmniOSce) Association.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH RESOURCE_CONTROLS 5 "Jan 23, 2021"
-.SH NAME
-resource_controls \- resource controls available through projects and zones
-.SH DESCRIPTION
-The resource controls facility is configured through the project database. See
-\fBproject\fR(4). You can set and modify resource controls through the
-following utilities:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBprctl\fR(1)
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBprojadd\fR(1M)
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBprojmod\fR(1M)
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBrctladm\fR(1M)
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBzonecfg\fR(1M)
-.RE
-.sp
-.LP
-In a program, you use \fBsetrctl\fR(2) to set resource control values.
-.sp
-.LP
-In addition to the preceding resource controls, there are resource pools,
-accessible through the \fBpooladm\fR(1M) and \fBpoolcfg\fR(1M) utilities. In a
-program, resource pools can be manipulated through the \fBlibpool\fR(3LIB)
-library.
-.sp
-.LP
-The following are the resource controls are available:
-.sp
-.ne 2
-.na
-\fBprocess.max-address-space\fR
-.ad
-.sp .6
-.RS 4n
-Maximum amount of address space, as summed over segment sizes, that is
-available to this process, expressed as a number of bytes.
-.RE
-
-.sp
-.ne 2
-.na
-\fBprocess.max-core-size\fR
-.ad
-.sp .6
-.RS 4n
-Maximum size of a core file created by this process, expressed as a number of
-bytes.
-.RE
-
-.sp
-.ne 2
-.na
-\fBprocess.max-cpu-time\fR
-.ad
-.sp .6
-.RS 4n
-Maximum CPU time that is available to this process, expressed as a number of
-seconds.
-.RE
-
-.sp
-.ne 2
-.na
-\fBprocess.max-data-size\fR
-.ad
-.sp .6
-.RS 4n
-Maximum heap memory available to this process, expressed as a number of bytes.
-.RE
-
-.sp
-.ne 2
-.na
-\fBprocess.max-file-descriptor\fR
-.ad
-.sp .6
-.RS 4n
-Maximum file descriptor index available to this process, expressed as an
-integer.
-.RE
-
-.sp
-.ne 2
-.na
-\fBprocess.max-file-size\fR
-.ad
-.sp .6
-.RS 4n
-Maximum file offset available for writing by this process, expressed as a
-number of bytes.
-.RE
-
-.sp
-.ne 2
-.na
-\fBprocess.max-locked-memory\fR
-.ad
-.sp .6
-.RS 4n
-Total amount of physical memory that can be locked by this process, expressed
-as a number of bytes. This limit is not enforced for a process with the
-\fBPRIV_PROC_LOCK_MEMORY\fR privilege. Because the ability to lock memory
-is controlled by the \fBPRIV_PROC_LOCK_MEMORY\fR privilege within native
-zones, this resource control is only useful within branded zones which might
-support a different policy for locking memory.
-.RE
-
-.sp
-.ne 2
-.na
-\fBprocess.max-msg-messages\fR
-.ad
-.sp .6
-.RS 4n
-Maximum number of messages on a message queue (value copied from the resource
-control at \fBmsgget()\fR time), expressed as an integer.
-.RE
-
-.sp
-.ne 2
-.na
-\fBprocess.max-msg-qbytes\fR
-.ad
-.sp .6
-.RS 4n
-Maximum number of bytes of messages on a message queue (value copied from the
-resource control at \fBmsgget()\fR time), expressed as a number of bytes.
-.RE
-
-.sp
-.ne 2
-.na
-\fBprocess.max-port-events\fR
-.ad
-.sp .6
-.RS 4n
-Maximum allowable number of events per event port, expressed as an integer.
-.RE
-
-.sp
-.ne 2
-.na
-\fBprocess.max-sem-nsems\fR
-.ad
-.sp .6
-.RS 4n
-Maximum number of semaphores allowed per semaphore set, expressed as an
-integer.
-.RE
-
-.sp
-.ne 2
-.na
-\fBprocess.max-sem-ops\fR
-.ad
-.sp .6
-.RS 4n
-Maximum number of semaphore operations allowed per \fBsemop\fR call (value
-copied from the resource control at \fBsemget()\fR time). Expressed as an
-integer, specifying the number of operations.
-.RE
-
-.sp
-.ne 2
-.na
-\fBprocess.max-sigqueue-size\fR
-.ad
-.sp .6
-.RS 4n
-Maximum number of outstanding queued signals.
-.RE
-
-.sp
-.ne 2
-.na
-\fBprocess.max-stack-size\fR
-.ad
-.sp .6
-.RS 4n
-Maximum stack memory segment available to this process, expressed as a number
-of bytes.
-.RE
-
-.sp
-.ne 2
-.na
-\fBproject.cpu-cap\fR
-.ad
-.sp .6
-.RS 4n
-Maximum amount of CPU resources that a project can use. The unit used is the
-percentage of a single CPU that can be used by all user threads in a project.
-Expressed as an integer. The cap does not apply to threads running in real-time
-scheduling class. This resource control does not support the \fBsyslog\fR
-action.
-.RE
-
-.sp
-.ne 2
-.na
-\fBproject.cpu-shares\fR
-.ad
-.sp .6
-.RS 4n
-Number of CPU shares granted to a project for use with the fair share scheduler
-(see \fBFSS\fR(7)). The unit used is the number of shares (an integer). This
-resource control does not support the \fBsyslog\fR action.
-.RE
-
-.sp
-.ne 2
-.na
-\fBproject.max-contracts\fR
-.ad
-.sp .6
-.RS 4n
-Maximum number of contracts allowed in a project, expressed as an integer.
-.RE
-
-.sp
-.ne 2
-.na
-\fBproject.max-crypto-memory\fR
-.ad
-.sp .6
-.RS 4n
-Maximum amount of kernel memory that can be used for crypto operations.
-Allocations in the kernel for buffers and session-related structures are
-charged against this resource control.
-.RE
-
-.sp
-.ne 2
-.na
-\fBproject.max-locked-memory\fR
-.ad
-.sp .6
-.RS 4n
-Total amount of physical memory locked by device drivers and user processes
-(including D/ISM), expressed as a number of bytes.
-.RE
-
-.sp
-.ne 2
-.na
-\fBproject.max-lwps\fR
-.ad
-.sp .6
-.RS 4n
-Maximum number of LWPs simultaneously available to a project, expressed as an
-integer.
-.RE
-
-.sp
-.ne 2
-.na
-\fBproject.max-msg-ids\fR
-.ad
-.sp .6
-.RS 4n
-Maximum number of message queue IDs allowed for a project, expressed as an
-integer.
-.RE
-
-.sp
-.ne 2
-.na
-\fBproject.max-processes\fR
-.ad
-.sp .6
-.RS 4n
-Maximum number of processes simultaneously available to a project, expressed as
-an integer.
-.RE
-
-.sp
-.ne 2
-.na
-\fBproject.max-port-ids\fR
-.ad
-.sp .6
-.RS 4n
-Maximum allowable number of event ports, expressed as an integer.
-.RE
-
-.sp
-.ne 2
-.na
-\fBproject.max-sem-ids\fR
-.ad
-.sp .6
-.RS 4n
-Maximum number of semaphore IDs allowed for a project, expressed as an integer.
-.RE
-
-.sp
-.ne 2
-.na
-\fBproject.max-shm-ids\fR
-.ad
-.sp .6
-.RS 4n
-Maximum number of shared memory IDs allowed for a project, expressed as an
-integer.
-.RE
-
-.sp
-.ne 2
-.na
-\fBproject.max-shm-memory\fR
-.ad
-.sp .6
-.RS 4n
-Total amount of shared memory allowed for a project, expressed as a number of
-bytes.
-.RE
-
-.sp
-.ne 2
-.na
-\fBproject.max-tasks\fR
-.ad
-.sp .6
-.RS 4n
-Maximum number of tasks allowable in a project, expressed as an integer.
-.RE
-
-.sp
-.ne 2
-.na
-\fBproject.pool\fR
-.ad
-.sp .6
-.RS 4n
-Binds a specified resource pool with a project.
-.RE
-
-.sp
-.ne 2
-.na
-\fBrcap.max-rss\fR
-.ad
-.sp .6
-.RS 4n
-The total amount of physical memory, in bytes, that is available to processes
-in a project.
-.RE
-
-.sp
-.ne 2
-.na
-\fBtask.max-cpu-time\fR
-.ad
-.sp .6
-.RS 4n
-Maximum CPU time that is available to this task's processes, expressed as a
-number of seconds.
-.RE
-
-.sp
-.ne 2
-.na
-\fBtask.max-lwps\fR
-.ad
-.sp .6
-.RS 4n
-Maximum number of LWPs simultaneously available to this task's processes,
-expressed as an integer.
-.RE
-
-.sp
-.ne 2
-.na
-\fBtask.max-processes\fR
-.ad
-.sp .6
-.RS 4n
-Maximum number of processes simultaneously available to this task,
-expressed as an integer.
-.RE
-
-.sp
-.LP
-The following zone-wide resource controls are available:
-.sp
-.ne 2
-.na
-\fBzone.cpu-baseline\fR
-.ad
-.sp .6
-.RS 4n
-Sets a baseline amount of CPU time that a zone can use before it is considered
-to be bursting. The unit used is the percentage of a single CPU that is being
-used by all user threads in a zone. The value should be less than the
-\fBzone.cpu-cap\fR rctl value and is expressed as an integer.
-This resource control does not support the \fBsyslog\fR action.
-.RE
-
-.sp
-.ne 2
-.na
-\fBzone.cpu-burst-time\fR
-.ad
-.sp .6
-.RS 4n
-Sets the number of seconds that a zone can exceed the \fBzone.cpu-baseline\fR
-rctl value before being cpu-capped down to the \fBzone.cpu-baseline\fR.
-A value of 0 means that \fBzone.cpu-baseline\fR can be exceeded indefinitely.
-This resource control does not support the \fBsyslog\fR action.
-.RE
-
-.sp
-.ne 2
-.na
-\fBzone.cpu-cap\fR
-.ad
-.sp .6
-.RS 4n
-Sets a limit on the amount of CPU time that can be used by a zone. The unit
-used is the percentage of a single CPU that can be used by all user threads in
-a zone. Expressed as an integer. When projects within the capped zone have
-their own caps, the minimum value takes precedence. This resource control does
-not support the \fBsyslog\fR action.
-.RE
-
-.sp
-.ne 2
-.na
-\fBzone.cpu-shares\fR
-.ad
-.sp .6
-.RS 4n
-Sets a value on the number of fair share scheduler (FSS) CPU shares for a zone.
-CPU shares are first allocated to the zone, and then further subdivided among
-projects within the zone as specified in the \fBproject.cpu-shares\fR entries.
-Expressed as an integer. This resource control does not support the
-\fBsyslog\fR action.
-.RE
-
-.sp
-.ne 2
-.na
-\fBzone.max-locked-memory\fR
-.ad
-.sp .6
-.RS 4n
-Total amount of physical locked memory available to a zone.
-.RE
-
-.sp
-.ne 2
-.na
-\fBzone.max-lofi\fR
-.ad
-.sp .6
-.RS 4n
-Sets a limit on the number of \fBLOFI\fR(7D) devices that can be created in a
-zone. Expressed as an integer. This resource control does not support the
-\fBsyslog\fR action.
-.RE
-
-\fBzone.max-lwps\fR
-.ad
-.sp .6
-.RS 4n
-Enhances resource isolation by preventing too many LWPs in one zone from
-affecting other zones. A zone's total LWPs can be further subdivided among
-projects within the zone by using \fBproject.max-lwps\fR entries. Expressed as
-an integer.
-.RE
-
-.sp
-.ne 2
-.na
-\fBzone.max-msg-ids\fR
-.ad
-.sp .6
-.RS 4n
-Maximum number of message queue IDs allowed for a zone, expressed as an
-integer.
-.RE
-
-.sp
-.ne 2
-.na
-\fBzone.max-physical-memory\fR
-.ad
-.sp .6
-.RS 4n
-Sets a limit on the amount of physical memory (RSS) that can be used by a zone
-before resident pages start being forcibly paged out. The unit used is bytes.
-Expressed as an integer. This resource control does not support the
-\fBsyslog\fR action.
-\fBzone.max-processes\fR
-.ad
-.sp .6
-.RS 4n
-Enhances resource isolation by preventing too many processes in one zone from
-affecting other zones. A zone's total processes can be further subdivided among
-projects within the zone by using \fBproject.max-processes\fR entries.
-Expressed as an integer.
-.RE
-
-.sp
-.ne 2
-.na
-.RE
-
-.sp
-.ne 2
-.na
-\fBzone.max-sem-ids\fR
-.ad
-.sp .6
-.RS 4n
-Maximum number of semaphore IDs allowed for a zone, expressed as an integer.
-.RE
-
-.sp
-.ne 2
-.na
-\fBzone.max-shm-ids\fR
-.ad
-.sp .6
-.RS 4n
-Maximum number of shared memory IDs allowed for a zone, expressed as an
-integer.
-.RE
-
-.sp
-.ne 2
-.na
-\fBzone.max-shm-memory\fR
-.ad
-.sp .6
-.RS 4n
-Total amount of shared memory allowed for a zone, expressed as a number of
-bytes.
-.RE
-
-.sp
-.ne 2
-.na
-\fBzone.max-swap\fR
-.ad
-.sp .6
-.RS 4n
-Total amount of swap that can be consumed by user process address space
-mappings and \fBtmpfs\fR mounts for this zone.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBzone.zfs-io-priority\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sets a value for the \fBzfs\fR(1M) I/O priority for a zone. This is used as
-one of the inputs to determine if a zone's I/O should be throttled. Expressed
-as an integer. This resource control does not support the \fBsyslog\fR action.
-.RE
-
-.sp
-.LP
-See \fBzones\fR(5).
-.SS "Units Used in Resource Controls"
-Resource controls can be expressed as in units of size (bytes), time (seconds),
-or as a count (integer). These units use the strings specified below.
-.sp
-.in +2
-.nf
-Category Res Ctrl Modifier Scale
- Type String
------------ ----------- -------- -----
-Size bytes B 1
- KB 2^10
- MB 2^20
- GB 2^30
- TB 2^40
- PB 2^50
- EB 2^60
-
-Time seconds s 1
- Ks 10^3
- Ms 10^6
- Gs 10^9
- Ts 10^12
- Ps 10^15
- Es 10^18
-
-Count integer none 1
- K 10^3
- M 10^6
- G 10^9
- T 10^12
- P 10^15
- Es 10^18
-.fi
-.in -2
-
-.sp
-.LP
-Scaled values can be used with resource controls. The following example shows a
-scaled threshold value:
-.sp
-.in +2
-.nf
-task.max-lwps=(priv,1K,deny)
-.fi
-.in -2
-
-.sp
-.LP
-In the \fBproject\fR file, the value \fB1K\fR is expanded to \fB1000\fR:
-.sp
-.in +2
-.nf
-task.max-lwps=(priv,1000,deny)
-.fi
-.in -2
-
-.sp
-.LP
-A second example uses a larger scaled value:
-.sp
-.in +2
-.nf
-process.max-file-size=(priv,5G,deny)
-.fi
-.in -2
-
-.sp
-.LP
-In the \fBproject\fR file, the value \fB5G\fR is expanded to \fB5368709120\fR:
-.sp
-.in +2
-.nf
-process.max-file-size=(priv,5368709120,deny)
-.fi
-.in -2
-
-.sp
-.LP
-The preceding examples use the scaling factors specified in the table above.
-.sp
-.LP
-Note that unit modifiers (for example, \fB5G\fR) are accepted by the
-\fBprctl\fR(1), \fBprojadd\fR(1M), and \fBprojmod\fR(1M) commands. You cannot
-use unit modifiers in the project database itself.
-.SS "Resource Control Values and Privilege Levels"
-A threshold value on a resource control constitutes a point at which local
-actions can be triggered or global actions, such as logging, can occur.
-.sp
-.LP
-Each threshold value on a resource control must be associated with a privilege
-level. The privilege level must be one of the following three types:
-.sp
-.ne 2
-.na
-\fBbasic\fR
-.ad
-.sp .6
-.RS 4n
-Can be modified by the owner of the calling process.
-.RE
-
-.sp
-.ne 2
-.na
-\fBprivileged\fR
-.ad
-.sp .6
-.RS 4n
-Can be modified by the current process (requiring \fBsys_resource\fR privilege)
-or by \fBprctl\fR(1) (requiring \fBproc_owner\fR privilege).
-.RE
-
-.sp
-.ne 2
-.na
-\fBsystem\fR
-.ad
-.sp .6
-.RS 4n
-Fixed for the duration of the operating system instance.
-.RE
-
-.sp
-.LP
-A resource control is guaranteed to have one \fBsystem\fR value, which is
-defined by the system, or resource provider. The \fBsystem\fR value represents
-how much of the resource the current implementation of the operating system is
-capable of providing.
-.sp
-.LP
-Any number of privileged values can be defined, and only one basic value is
-allowed. Operations that are performed without specifying a privilege value are
-assigned a basic privilege by default.
-.sp
-.LP
-The privilege level for a resource control value is defined in the privilege
-field of the resource control block as \fBRCTL_BASIC\fR, \fBRCTL_PRIVILEGED\fR,
-or \fBRCTL_SYSTEM\fR. See \fBsetrctl\fR(2) for more information. You can use
-the \fBprctl\fR command to modify values that are associated with basic and
-privileged levels.
-.sp
-.LP
-In specifying the privilege level of \fBprivileged\fR, you can use the
-abbreviation \fBpriv\fR. For example:
-.sp
-.in +2
-.nf
-task.max-lwps=(priv,1K,deny)
-.fi
-.in -2
-
-.SS "Global and Local Actions on Resource Control Values"
-There are two categories of actions on resource control values: global and
-local.
-.sp
-.LP
-Global actions apply to resource control values for every resource control on
-the system. You can use \fBrctladm\fR(1M) to perform the following actions:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Display the global state of active system resource controls.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Set global logging actions.
-.RE
-.sp
-.LP
-You can disable or enable the global logging action on resource controls. You
-can set the \fBsyslog\fR action to a specific degree by assigning a severity
-level, \fBsyslog=\fR\fIlevel\fR. The possible settings for \fIlevel\fR are as
-follows:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBdebug\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBinfo\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBnotice\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBwarning\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBerr\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBcrit\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBalert\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBemerg\fR
-.RE
-.sp
-.LP
-By default, there is no global logging of resource control violations.
-.sp
-.LP
-Local actions are taken on a process that attempts to exceed the control value.
-For each threshold value that is placed on a resource control, you can
-associate one or more actions. There are three types of local actions:
-\fBnone\fR, \fBdeny\fR, and \fBsignal=\fR. These three actions are used as
-follows:
-.sp
-.ne 2
-.na
-\fBnone\fR
-.ad
-.sp .6
-.RS 4n
-No action is taken on resource requests for an amount that is greater than the
-threshold. This action is useful for monitoring resource usage without
-affecting the progress of applications. You can also enable a global message
-that displays when the resource control is exceeded, while, at the same time,
-the process exceeding the threshold is not affected.
-.RE
-
-.sp
-.ne 2
-.na
-\fBdeny\fR
-.ad
-.sp .6
-.RS 4n
-You can deny resource requests for an amount that is greater than the
-threshold. For example, a \fBtask.max-lwps\fR resource control with action deny
-causes a \fBfork()\fR system call to fail if the new process would exceed the
-control value. See the \fBfork\fR(2).
-.RE
-
-.sp
-.ne 2
-.na
-\fBsignal=\fR
-.ad
-.sp .6
-.RS 4n
-You can enable a global signal message action when the resource control is
-exceeded. A signal is sent to the process when the threshold value is exceeded.
-Additional signals are not sent if the process consumes additional resources.
-Available signals are listed below.
-.RE
-
-.sp
-.LP
-Not all of the actions can be applied to every resource control. For example, a
-process cannot exceed the number of CPU shares assigned to the project of which
-it is a member. Therefore, a deny action is not allowed on the
-\fBproject.cpu-shares\fR resource control.
-.sp
-.LP
-Due to implementation restrictions, the global properties of each control can
-restrict the range of available actions that can be set on the threshold value.
-(See \fBrctladm\fR(1M).) A list of available signal actions is presented in the
-following list. For additional information about signals, see
-\fBsignal\fR(3HEAD).
-.sp
-.LP
-The following are the signals available to resource control values:
-.sp
-.ne 2
-.na
-\fBSIGABRT\fR
-.ad
-.sp .6
-.RS 4n
-Terminate the process.
-.RE
-
-.sp
-.ne 2
-.na
-\fBSIGHUP\fR
-.ad
-.sp .6
-.RS 4n
-Send a hangup signal. Occurs when carrier drops on an open line. Signal sent to
-the process group that controls the terminal.
-.RE
-
-.sp
-.ne 2
-.na
-\fBSIGTERM\fR
-.ad
-.sp .6
-.RS 4n
-Terminate the process. Termination signal sent by software.
-.RE
-
-.sp
-.ne 2
-.na
-\fBSIGKILL\fR
-.ad
-.sp .6
-.RS 4n
-Terminate the process and kill the program.
-.RE
-
-.sp
-.ne 2
-.na
-\fBSIGSTOP\fR
-.ad
-.sp .6
-.RS 4n
-Stop the process. Job control signal.
-.RE
-
-.sp
-.ne 2
-.na
-\fBSIGXRES\fR
-.ad
-.sp .6
-.RS 4n
-Resource control limit exceeded. Generated by resource control facility.
-.RE
-
-.sp
-.ne 2
-.na
-\fBSIGXFSZ\fR
-.ad
-.sp .6
-.RS 4n
-Terminate the process. File size limit exceeded. Available only to resource
-controls with the \fBRCTL_GLOBAL_FILE_SIZE\fR property
-(\fBprocess.max-file-size\fR). See \fBrctlblk_set_value\fR(3C).
-.RE
-
-.sp
-.ne 2
-.na
-\fBSIGXCPU\fR
-.ad
-.sp .6
-.RS 4n
-Terminate the process. CPU time limit exceeded. Available only to resource
-controls with the \fBRCTL_GLOBAL_CPUTIME\fR property
-(\fBprocess.max-cpu-time\fR). See \fBrctlblk_set_value\fR(3C).
-.RE
-
-.SS "Resource Control Flags and Properties"
-Each resource control on the system has a certain set of associated properties.
-This set of properties is defined as a set of flags, which are associated with
-all controlled instances of that resource. Global flags cannot be modified, but
-the flags can be retrieved by using either \fBrctladm\fR(1M) or the
-\fBsetrctl\fR(2) system call.
-.sp
-.LP
-Local flags define the default behavior and configuration for a specific
-threshold value of that resource control on a specific process or process
-collective. The local flags for one threshold value do not affect the behavior
-of other defined threshold values for the same resource control. However, the
-global flags affect the behavior for every value associated with a particular
-control. Local flags can be modified, within the constraints supplied by their
-corresponding global flags, by the \fBprctl\fR command or the \fBsetrctl\fR
-system call. See \fBsetrctl\fR(2).
-.sp
-.LP
-For the complete list of local flags, global flags, and their definitions, see
-\fBrctlblk_set_value\fR(3C).
-.sp
-.LP
-To determine system behavior when a threshold value for a particular resource
-control is reached, use \fBrctladm\fR to display the global flags for the
-resource control . For example, to display the values for
-\fBprocess.max-cpu-time\fR, enter:
-.sp
-.in +2
-.nf
-$ rctladm process.max-cpu-time
-process.max-cpu-time syslog=off [ lowerable no-deny cpu-time inf seconds ]
-.fi
-.in -2
-
-.sp
-.LP
-The global flags indicate the following:
-.sp
-.ne 2
-.na
-\fBlowerable\fR
-.ad
-.sp .6
-.RS 4n
-Superuser privileges are not required to lower the privileged values for this
-control.
-.RE
-
-.sp
-.ne 2
-.na
-\fBno-deny\fR
-.ad
-.sp .6
-.RS 4n
-Even when threshold values are exceeded, access to the resource is never
-denied.
-.RE
-
-.sp
-.ne 2
-.na
-\fBcpu-time\fR
-.ad
-.sp .6
-.RS 4n
-\fBSIGXCPU\fR is available to be sent when threshold values of this resource
-are reached.
-.RE
-
-.sp
-.ne 2
-.na
-\fBseconds\fR
-.ad
-.sp .6
-.RS 4n
-The time value for the resource control.
-.RE
-
-.sp
-.LP
-Use the \fBprctl\fR command to display local values and actions for the
-resource control. For example:
-.sp
-.in +2
-.nf
-$ prctl -n process.max-cpu-time $$
- process 353939: -ksh
- NAME PRIVILEGE VALUE FLAG ACTION RECIPIENT
- process.max-cpu-time
- privileged 18.4Es inf signal=XCPU -
- system 18.4Es inf none
-.fi
-.in -2
-
-.sp
-.LP
-The \fBmax\fR (\fBRCTL_LOCAL_MAXIMAL\fR) flag is set for both threshold values,
-and the \fBinf\fR (\fBRCTL_GLOBAL_INFINITE\fR) flag is defined for this
-resource control. An \fBinf\fR value has an infinite quantity. The value is
-never enforced. Hence, as configured, both threshold quantities represent
-infinite values that are never exceeded.
-.SS "Resource Control Enforcement"
-More than one resource control can exist on a resource. A resource control can
-exist at each containment level in the process model. If resource controls are
-active on the same resource at different container levels, the smallest
-container's control is enforced first. Thus, action is taken on
-\fBprocess.max-cpu-time\fR before \fBtask.max-cpu-time\fR if both controls are
-encountered simultaneously.
-.SH ATTRIBUTES
-See \fBattributes\fR(5) for a description of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-\fBprctl\fR(1), \fBpooladm\fR(1M), \fBpoolcfg\fR(1M), \fBprojadd\fR(1M),
-\fBprojmod\fR(1M), \fBrctladm\fR(1M), \fBsetrctl\fR(2),
-\fBrctlblk_set_value\fR(3C), \fBlibpool\fR(3LIB), \fBproject\fR(4),
-\fBattributes\fR(5), \fBprivileges\fR(5), \fBzones\fR(5), \fBFSS\fR(7)
-.sp
-.LP
-\fISystem Administration Guide: Virtualization Using the Solaris Operating
-System\fR
diff --git a/usr/src/man/man5/rmtab.5 b/usr/src/man/man5/rmtab.5
new file mode 100644
index 0000000000..02f72525d8
--- /dev/null
+++ b/usr/src/man/man5/rmtab.5
@@ -0,0 +1,58 @@
+'\" te
+.\" Copyright (C) 1999, Sun Microsystems,
+.\" Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH RMTAB 5 "Nov 15, 1990"
+.SH NAME
+rmtab \- remote mounted file system table
+.SH SYNOPSIS
+.LP
+.nf
+\fB/etc/rmtab\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBrmtab\fR contains a table of filesystems that are remotely mounted by
+\fBNFS\fR clients. This file is maintained by \fBmountd\fR(8), the mount
+daemon. The data in this file should be obtained only from \fBmountd\fR(8)
+using the \fBMOUNTPROC_DUMP\fR remote procedure call.
+.sp
+.LP
+The file contains a line of information for each remotely mounted filesystem.
+There are a number of lines of the form:
+.sp
+.in +2
+.nf
+\fBhostname\fR\fB:\fR\fIfsname\fR
+.fi
+.in -2
+
+.sp
+.LP
+The mount daemon adds an entry for any client that successfully executes a
+mount request and deletes the appropriate entries for an unmount request.
+.sp
+.LP
+Lines beginning with a hash (' \fB#\fR') are commented out. These lines are
+removed from the file by \fBmountd\fR(8) when it first starts up. Stale
+entries may accumulate for clients that crash without sending an unmount
+request.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/rmtab\fR\fR
+.ad
+.RS 14n
+
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR mountd (8),
+.BR showmount (8)
diff --git a/usr/src/man/man5/rpc.5 b/usr/src/man/man5/rpc.5
new file mode 100644
index 0000000000..531df2c116
--- /dev/null
+++ b/usr/src/man/man5/rpc.5
@@ -0,0 +1,77 @@
+'\" te
+.\" Copyright (c) 1991, Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH RPC 5 "Feb 25, 2017"
+.SH NAME
+rpc \- rpc program number data base
+.SH SYNOPSIS
+.LP
+.nf
+\fB/etc/rpc\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBrpc\fR file is a local source containing user readable names that can be
+used in place of \fBRPC\fR program numbers. The \fBrpc\fR file can be used in
+conjunction with or instead of other rpc sources, including the \fBNIS\fR maps
+``rpc.byname'' and ``rpc.bynumber''.
+.sp
+.LP
+The rpc file has one line for each \fBRPC\fR program name. The line has the
+following format:
+.sp
+.in +2
+.nf
+\fIname-of-the-RPC-program\fR \fIRPC-program-number\fR \fIaliases\fR
+.fi
+.in -2
+
+.sp
+.LP
+Items are separated by any number of blanks and/or tab characters. A
+``\fB#\fR'' indicates the beginning of a comment; characters up to the end of
+the line are not interpreted by routines which search the file.
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRRPC Database
+.sp
+.LP
+Below is an example of an RPC database:
+
+.sp
+.in +2
+.nf
+#
+# rpc
+#
+rpcbind 100000 portmap sunrpc portmapper
+rusersd 100002 rusers
+nfs 100003 nfsprog
+mountd 100005 mount showmount
+walld 100008 rwall shutdown
+sprayd 100012 spray
+llockmgr 100020
+nlockmgr 100021
+status 100024
+bootparam 100026
+keyserv 100029 keyserver
+.fi
+.in -2
+.sp
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/etc/nsswitch.conf\fR\fR
+.ad
+.RS 22n
+
+.RE
+
+.SH SEE ALSO
+.LP
+.BR nsswitch.conf (5)
diff --git a/usr/src/man/man5/rt_dptbl.5 b/usr/src/man/man5/rt_dptbl.5
new file mode 100644
index 0000000000..39336fadd4
--- /dev/null
+++ b/usr/src/man/man5/rt_dptbl.5
@@ -0,0 +1,348 @@
+'\" te
+.\" Copyright 1989 AT&T, Copyright (c) 2001, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH RT_DPTBL 5 "Oct 15, 2002"
+.SH NAME
+rt_dptbl \- real-time dispatcher parameter table
+.SH DESCRIPTION
+The process scheduler (or dispatcher) is the portion of the kernel that
+controls allocation of the \fBCPU\fR to processes. The scheduler supports the
+notion of scheduling classes where each class defines a scheduling policy, used
+to schedule processes within that class. Associated with each scheduling class
+is a set of priority queues on which ready to run processes are linked. These
+priority queues are mapped by the system configuration into a set of global
+scheduling priorities which are available to processes within the class. The
+dispatcher always selects for execution the process with the highest global
+scheduling priority in the system. The priority queues associated with a given
+class are viewed by that class as a contiguous set of priority levels numbered
+from 0 (lowest priority) to \fIn\fR (highest priority\(ema configuration
+dependent value). The set of global scheduling priorities that the queues for a
+given class are mapped into might not start at zero and might not be
+contiguous, depending on the configuration.
+.sp
+.LP
+The real-time class maintains an in-core table, with an entry for each priority
+level, giving the properties of that level. This table is called the real-time
+dispatcher parameter table (\fBrt_dptbl\fR). The \fBrt_dptbl\fR consists of an
+array (\fBconfig_rt_dptbl[]\fR) of parameter structures (\fBstruct
+rtdpent_t\fR), one for each of the \fIn\fR priority levels. The structure are
+accessed via a pointer, (\fBrt_dptbl\fR), to the array. The properties of a
+given priority level \fIi\fR are specified by the \fIi\fRth parameter structure
+in this array ( \fBrt_dptbl[\fR\fIi\fR\fB]\fR ).
+.sp
+.LP
+A parameter structure consists of the following members. These are also
+described in the \fB/usr/include/sys/rt.h\fR header file.
+.sp
+.ne 2
+.na
+\fB\fBrt_globpri\fR\fR
+.ad
+.RS 14n
+The global scheduling priority associated with this priority level. The
+\fBrt_globpri\fR values cannot be changed with \fBdispadmin\fR(8).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrt_quantum\fR\fR
+.ad
+.RS 14n
+The length of the time quantum allocated to processes at this level in ticks
+(\fBhz\fR). The time quantum value is only a default or starting value for
+processes at a particular level as the time quantum of a real-time process can
+be changed by the user with the \fBpriocntl\fR command or the \fBpriocntl\fR
+system call.
+.sp
+In the default high resolution clock mode (\fBhires_tick\fR set to \fB1\fR),
+the value of \fBhz\fR is set to \fB1000\fR. If this value is overridden to
+\fB0\fR then \fBhz\fR will instead be \fB100\fR; the number of ticks per
+quantum must then be decreased to maintain the same length of quantum in
+absolute time.
+.RE
+
+.sp
+.LP
+An administrator can affect the behavior of the real-time portion of the
+scheduler by reconfiguring the \fBrt_dptbl\fR. There are two methods available
+for doing this: reconfigure with a loadable module at boot-time or by using
+\fBdispadmin\fR(8) at run-time.
+.SS "rt_dptbl Loadable Module"
+The \fBrt_dptbl\fR can be reconfigured with a loadable module which contains a
+new real time dispatch table. The module containing the dispatch table is
+separate from the RT loadable module which contains the rest of the real time
+software. This is the only method that can be used to change the number of real
+time priority levels or the set of global scheduling priorities used by the
+real time class. The relevant procedure and source code is described in the
+Examples section.
+.SS "dispadmin Configuration File"
+The \fBrt_quantum\fR values in the \fBrt_dptbl\fR can be examined and modified
+on a running system using the \fBdispadmin\fR(8) command. Invoking
+\fBdispadmin\fR for the real-time class allows the administrator to retrieve
+the current \fBrt_dptbl\fR configuration from the kernel's in-core table, or
+overwrite the in-core table with values from a configuration file. The
+configuration file used for input to \fBdispadmin\fR must conform to the
+specific format described below.
+.sp
+.LP
+Blank lines are ignored and any part of a line to the right of a \fI#\fR symbol
+is treated as a comment. The first non-blank, non-comment line must indicate
+the resolution to be used for interpreting the time quantum values. The
+resolution is specified as
+.sp
+.in +2
+.nf
+RES=\fIres\fR
+.fi
+.in -2
+
+.sp
+.LP
+where \fIres\fR is a positive integer between 1 and 1,000,000,000 inclusive and
+the resolution used is the reciprocal of \fIres\fR in seconds. (For example,
+\fBRES=1000\fR specifies millisecond resolution.) Although very fine
+(nanosecond) resolution may be specified, the time quantum lengths are rounded
+up to the next integral multiple of the system clock's resolution.
+.sp
+.LP
+The remaining lines in the file are used to specify the \fBrt_quantum\fR values
+for each of the real-time priority levels. The first line specifies the quantum
+for real-time level 0, the second line specifies the quantum for real-time
+level 1. There must be exactly one line for each configured real-time priority
+level. Each \fBrt_quantum\fR entry must be either a positive integer specifying
+the desired time quantum (in the resolution given by \fIres\fR), or the value
+-2 indicating an infinite time quantum for that level.
+.SH EXAMPLES
+\fBExample 1 \fRA Sample \fBdispadmin\fR Configuration File
+.sp
+.LP
+The following excerpt from a \fBdispadmin\fR configuration file illustrates the
+format. Note that for each line specifying a time quantum there is a comment
+indicating the corresponding priority level. These level numbers indicate
+priority within the real-time class, and the mapping between these real-time
+priorities and the corresponding global scheduling priorities is determined by
+the configuration specified in the \fBRT_DPTBL\fR loadable module. The level
+numbers are strictly for the convenience of the administrator reading the file
+and, as with any comment, they are ignored by \fBdispadmin\fR on input.
+\fBdispadmin\fR assumes that the lines in the file are ordered by consecutive,
+increasing priority level (from 0 to the maximum configured real-time
+priority). The level numbers in the comments should normally agree with this
+ordering; if for some reason they don't, however, \fBdispadmin\fR is
+unaffected.
+
+.sp
+.in +2
+.nf
+# Real-Time Dispatcher Configuration File
+RES=1000
+
+# TIME QUANTUM PRIORITY
+# (rt_quantum)LEVEL
+100# 0
+100# 1
+100# 2
+100# 3
+100# 4
+100# 5
+90 # 6
+90 # 7
+\&.. .
+\&.. .
+\&.. .
+10# 58
+10# 59
+.fi
+.in -2
+
+.LP
+\fBExample 2 \fRReplacing The rt_dptbl Loadable Module
+.sp
+.LP
+In order to change the size of the real time dispatch table, the loadable
+module which contains the dispatch table information will have to be built. It
+is recommended that you save the existing module before using the following
+procedure.
+
+.RS +4
+.TP
+1.
+Place the dispatch table code shown below in a file called \fBrt_dptbl.c\fR
+An example of an \fBrt_dptbl.c\fR file follows.
+.RE
+.RS +4
+.TP
+2.
+Compile the code using the given compilation and link lines supplied.
+.sp
+.in +2
+.nf
+cc -c -0 -D_KERNEL rt_dptbl.c
+ld -r -o RT_DPTBL rt_dptbl.o
+.fi
+.in -2
+.sp
+
+.RE
+.RS +4
+.TP
+3.
+Copy the current dispatch table in \fB/usr/kernel/sched\fR to
+\fBRT_DPTBL.bak\fR.
+.RE
+.RS +4
+.TP
+4.
+Replace the current \fBRT_DPTBL\fR in \fB/usr/kernel/sched\fR.
+.RE
+.RS +4
+.TP
+5.
+You will have to make changes in the \fB/etc/system\fR file to reflect the
+changes to the sizes of the tables. See \fBsystem\fR(5). The \fBrt_maxpri\fR
+variable may need changing. The syntax for setting this is:
+.sp
+.in +2
+.nf
+set RT:rt_maxpri=(class-specific value for maximum \e
+ real-time priority)
+.fi
+.in -2
+
+.RE
+.RS +4
+.TP
+6.
+Reboot the system to use the new dispatch table.
+.RE
+.sp
+.LP
+Great care should be used in replacing the dispatch table using this method. If
+you don't get it right, the system may not behave properly.
+
+.sp
+.LP
+The following is an example of a \fBrt_dptbl.c\fR file used for building the
+new \fBrt_dptbl\fR.
+
+.sp
+.in +2
+.nf
+/* BEGIN rt_dptbl.c */
+#include <sys/proc.h>
+#include <sys/priocntl.h>
+#include <sys/class.h>
+#include <sys/disp.h>
+#include <sys/rt.h>
+#include <sys/rtpriocntl.h>
+/*
+ * This is the loadable module wrapper.
+ */
+#include <sys/modctl.h>
+extern struct mod_ops mod_miscops;
+/*
+ * Module linkage information for the kernel.
+ */
+static struct modlmisc modlmisc = {
+ &mod_miscops, "realtime dispatch table"
+};
+static struct modlinkage modlinkage = {
+ MODREV_1, &modlmisc, 0
+};
+_init()
+{
+ return (mod_install(&modlinkage));
+}
+_info (struct modinfo *modinfop)
+{
+ return (mod_info(&modlinkage, modinfop));
+}
+rtdpent_t config_rt_dptbl[] = {
+
+/* prilevel Time quantum */
+
+100,100,
+101,100,
+102,100,
+103,100,
+104,100,
+105,100,
+106,100,
+107,100,
+108,100,
+109,100,
+110,80,
+111,80,
+112,80,
+113,80,
+114,80,
+115,80,
+116,80,
+117,80,
+118,80,
+119,80,
+120,60,
+121,60,
+122,60,
+123,60,
+124,60,
+125,60,
+126,60,
+127,60,
+128,60,
+129,60,
+130,40,
+131,40,
+132,40,
+133,40,
+134,40,
+135,40,
+136,40,
+137,40,
+138,40,
+139,40,
+140,20,
+141,20,
+142,20,
+143,20,
+144,20,
+145,20,
+146,20,
+147,20,
+148,20,
+149,20,
+150,10,
+151,10,
+152,10,
+153,10,
+154,10,
+155,10,
+156,10,
+157,10,
+158,10,
+159,10,
+
+};
+/*
+ * Return the address of config_rt_dptbl
+ */ rtdpent_t *
+ rt_getdptbl()
+{
+ return (config_rt_dptbl);
+}
+.fi
+.in -2
+
+.SH SEE ALSO
+.BR priocntl (1),
+.BR priocntl (2),
+.BR system (5),
+.BR dispadmin (8)
+.sp
+.LP
+\fISystem Administration Guide: Basic Administration\fR
+.sp
+.LP
+ \fIProgramming Interfaces Guide\fR
diff --git a/usr/src/man/man5/sasl_appname.conf.5 b/usr/src/man/man5/sasl_appname.conf.5
new file mode 100644
index 0000000000..739202b917
--- /dev/null
+++ b/usr/src/man/man5/sasl_appname.conf.5
@@ -0,0 +1,170 @@
+'\" te
+.\" Copyright (C) 1998-2003, Carnegie Mellon Univeristy. All Rights Reserved.
+.\" Portions Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SASL_APPNAME.CONF 5 "Oct 14, 2003"
+.SH NAME
+sasl_appname.conf \- SASL options and configuration file
+.SH SYNOPSIS
+.LP
+.nf
+/etc/sasl/\fIappname\fR\fB\&.conf\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fB/etc/sasl/\fIappname\fR.conf\fR file is a user-supplied configuration
+file that supports user set options for server applications.
+.sp
+.LP
+You can modify the behavior of \fBlibsasl\fR and its plug-ins for server
+applications by specifying option values in \fB/etc/sasl/\fIappname\fR.conf\fR
+file, where \fIappname\fR is the application defined name of the application.
+For \fBsendmail\fR, the file would be \fB/etc/sasl/Sendmail.conf\fR. See your
+application documentation for information on the application name.
+.sp
+.LP
+Options that you set in a \fB\fIappname\fR.conf\fR file do not override SASL
+options specified by the application itself.
+.sp
+.LP
+The format for each option setting is:
+.sp
+.in +2
+.nf
+option_name:value.
+.fi
+.in -2
+
+.sp
+.LP
+You can comment lines in the file by using a leading #.
+.sp
+.LP
+The SASL library supports the following options for server applications:
+.sp
+.ne 2
+.na
+\fB\fBauto_transition\fR\fR
+.ad
+.RS 25n
+When set to \fByes\fR, plain users and login plug-ins are automatically
+transitioned to other mechanisms when they do a successful plaintext
+authentication. The default value for \fBauto_transition\fR is \fBno\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBauxprop_plugin\fR\fR
+.ad
+.RS 25n
+A space-separated list of names of auxiliary property plug-ins to use. By
+default, SASL will use or query all available auxiliary property plug-ins.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcanon_user_plugin\fR\fR
+.ad
+.RS 25n
+The name of the canonical user plug-in to use. By default, the value of
+\fBcanon_user_plugin\fR is \fBINTERNAL\fR, to indicated the use of built-in
+plug-ins..
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBlog_level\fR\fR
+.ad
+.RS 25n
+An integer value for the desired level of logging for a server, as defined in
+<\fBsasl.h\fR>. This sets the \fBlog_level\fR in the \fBsasl_server_params_t
+struct\fR in \fB/usr/include/sasl/saslplug.h\fR. The default value for
+\fBlog_level\fR is \fB1\fR to indicate \fBSASL_LOG_ERR\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmech_list\fR\fR
+.ad
+.RS 25n
+Whitespace separated list of SASL mechanisms to allow, for example,
+\fBDIGEST-MD5 GSSAPI\fR. The \fBmech_list\fR option is used to restrict the
+mechanisms to a subset of the installed plug-ins. By default, SASL will use all
+available mechanisms.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpw_check\fR\fR
+.ad
+.RS 25n
+Whitespace separated list of mechanisms used to verify passwords that are used
+by \fBsasl_checkpass\fR(3SASL). The default value for \fBpw_check\fR is
+\fBauxprop\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBreauth_timeout\fR\fR
+.ad
+.RS 25n
+This SASL option is used by the server DIGEST-MD5 plug-in. The value of
+\fBreauth_timeout\fR is the length in time (in minutes) that authentication
+information will be cached for a fast reauthorization. A value of 0 will
+disable reauthorization. The default value of \fBreauth_timeout\fR is 1440 (24
+hours).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBserver_load_mech_list\fR\fR
+.ad
+.RS 25n
+A space separated list of mechanisms to load. If in the process of loading
+server plug-ns no desired mechanisms are included in the plug-in, the plug-in
+will be unloaded. By default, SASL loads all server plug-ins.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBuser_authid\fR\fR
+.ad
+.RS 25n
+If the value of \fBuser_authid\fR is \fByes\fR, then the GSSAPI will acquire
+the client credentials rather than use the default credentials when it creates
+the GSS client security context. The default value of \fBuser_authid\fR is
+\fBno\fR, whereby SASL uses the default client Kerberos identity.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7)
diff --git a/usr/src/man/man5/sbus.5 b/usr/src/man/man5/sbus.5
new file mode 100644
index 0000000000..d4e3d55624
--- /dev/null
+++ b/usr/src/man/man5/sbus.5
@@ -0,0 +1,188 @@
+'\" te
+.\" Copyright (c) 1999, Sun Microsystems, Inc.
+.\" All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SBUS 5 "Dec 31, 1996"
+.SH NAME
+sbus \- configuration files for SBus device drivers
+.SH DESCRIPTION
+.LP
+The \fBSBus\fR is a geographically addressed peripheral bus present on many
+\fBSPARC\fR hardware platforms. \fBSBus\fR devices are \fIself-identifying\fR
+\(em that is to say the \fBSBus\fR card itself provides information to the
+system so that it can identify the device driver that needs to be used. The
+device usually provides additional information to the system in the form of
+name-value pairs that can be retrieved using the \fBDDI\fR property interfaces.
+See \fBddi_prop_op\fR(9F) for details.
+.sp
+.LP
+The information is usually derived from a small Forth program stored in the
+\fBFCode\fR \fBPROM\fR on the card, so driver configuration files should be
+completely unnecessary for these devices. However, on some occasions, drivers
+for \fBSBus\fR devices may need to use driver configuration files to augment
+the information provided by the \fBSBus\fR card. See \fBdriver.conf\fR(5) for
+further details.
+.sp
+.LP
+When they are needed, configuration files for \fBSBus\fR device drivers should
+identify the parent bus driver implicitly using the \fIclass\fR keyword. This
+removes the dependency on the particular bus driver involved since this may be
+named differently on different platforms.
+.sp
+.LP
+All bus drivers of class \fBsbus\fR recognise the following properties:
+.sp
+.ne 2
+.na
+\fB\fBreg\fR\fR
+.ad
+.RS 14n
+An arbitrary length array where each element of the array consists of a 3-tuple
+of integers. Each array element describes a logically contiguous mappable
+resource on the \fBSBus.\fR
+.sp
+The first integer of each tuple specifies the slot number the card is plugged
+into. The second integer of each 3-tuple specifies the offset in the slot
+address space identified by the first element. The third integer of each
+3-tuple specifies the size in bytes of the mappable resource.
+.sp
+The driver can refer to the elements of this array by index, and construct
+kernel mappings to these addresses using \fBddi_map_regs\fR(9F). The index into
+the array is passed as the \fIrnumber\fR argument of \fBddi_map_regs()\fR.
+.sp
+You can use the \fBddi_get*\fR and \fBddi_put*\fR family of functions to access
+register space from a high-level interrupt context.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBinterrupts\fR\fR
+.ad
+.RS 14n
+An arbitrary length array where each element of the array consists of a single
+integer. Each array element describes a possible \fBSBus\fR interrupt level
+that the device might generate.
+.sp
+The driver can refer to the elements of this array by index, and register
+interrupt handlers with the system using \fBddi_add_intr\fR(9F). The index into
+the array is passed as the \fIinumber\fR argument of \fBddi_add_intr()\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBregisters\fR\fR
+.ad
+.RS 14n
+An arbitrary length array where each element of the array consists of a 3-tuple
+of integers. Each array element describes a logically contiguous mappable
+resource on the \fBSBus.\fR
+.sp
+The first integer of each tuple should be set to \fB\(mi1\fR, specifying that
+any SBus slot may be matched. The second integer of each 3-tuple specifies the
+offset in the slot address space identified by the first element. The third
+integer of each 3-tuple specifies the size in bytes of the mappable resource.
+.sp
+The \fBregisters\fR property can only be used to augment an incompletely
+specified \fBreg\fR property with information from a driver configuration file.
+It may only be specified in a driver configuration file.
+.RE
+
+.sp
+.LP
+All \fBSBus\fR devices must provide \fBreg\fR properties to the system. The
+first two integer elements of the \fBreg\fR property are used to construct the
+address part of the device name under \fB/devices\fR.
+.sp
+.LP
+Only devices that generate interrupts need to provide \fBinterrupts\fR
+properties.
+.sp
+.LP
+Occasionally, it may be necessary to override or augment the configuration
+information supplied by the \fBSBus\fR device. This can be achieved by writing
+a driver configuration file that describes a prototype device information
+(devinfo) node specification, containing the additional properties required.
+.sp
+.LP
+For the system to merge the information, certain conditions must be met. First,
+the \fBname\fR property must be the same. Second, either the first two integers
+(slot number and offset) of the two \fBreg\fR properties must be the same, or
+the second integer (offset) of the \fBreg\fR and \fBregisters\fR properties
+must be the same.
+.sp
+.LP
+In the event that the \fBSBus\fR card has no \fBreg\fR property at all, the
+self-identifying information cannot be used, so all the details of the card
+must be specified in a driver configuration file.
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRA sample configuration file.
+.sp
+.LP
+Here is a configuration file for an \fBSBus\fR card called \fBSUNW,netboard\fR.
+The card already has a simple \fBFCode\fR \fBPROM\fR that creates \fBname\fR
+and \fBreg\fR properties, and will have a complete set of properties for normal
+use once the driver and firmware is complete.
+
+.sp
+.LP
+In this example, we want to augment the properties given to us by the firmware.
+We use the same \fBname\fR property, and use the \fBregisters\fR property to
+match the firmware \fBreg\fR property. That way we don't have to worry about
+which slot the card is really plugged into.
+
+.sp
+.LP
+We want to add an \fBinterrupts\fR property while we are developing the
+firmware and driver so that we can start to experiment with interrupts. The
+device can generate interrupts at \fBSBus\fR level 3. Additionally, we want to
+set a \fBdebug-level\fR property to 4.
+
+.sp
+.in +2
+.nf
+#
+# Copyright (c) 1992, by Sun Microsystems, Inc.
+#ident "@(#)SUNW,netboard.conf 1.4 92/03/10 SMI"
+#
+name="SUNW,netboard" class="sbus"
+ registers=-1,0x40000,64,-1,0x80000,1024
+ interrupts=3 debug-level=4;
+.fi
+.in -2
+.sp
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture SPARC
+.TE
+
+.SH SEE ALSO
+.LP
+.BR driver.conf (5),
+.BR attributes (7),
+.BR ddi_add_intr (9F),
+.BR ddi_map_regs (9F),
+.BR ddi_prop_op (9F)
+.sp
+.LP
+\fIWriting Device Drivers\fR
+.SH WARNINGS
+.LP
+The wildcarding mechanism of the \fBregisters\fR property matches every
+instance of the particular device attached to the system. This may not always
+be what is wanted.
diff --git a/usr/src/man/man5/scsi.5 b/usr/src/man/man5/scsi.5
new file mode 100644
index 0000000000..d6fe88c56a
--- /dev/null
+++ b/usr/src/man/man5/scsi.5
@@ -0,0 +1,355 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SCSI 5 "May 30, 2008"
+.SH NAME
+scsi \- configuration files for SCSI target drivers
+.SH DESCRIPTION
+The architecture of the illumos \fBSCSI\fR subsystem distinguishes two types of
+device drivers: \fBSCSI\fR target drivers, and \fBSCSI\fR host adapter drivers.
+Target drivers like \fBsd\fR(4D) and \fBst\fR(4D) manage the device on the
+other end of the \fBSCSI\fR bus. Host adapter drivers manage the \fBSCSI\fR bus
+on behalf of all the devices that share it.
+.sp
+.LP
+Drivers for host adapters provide a common set of interfaces for target
+drivers. These interfaces comprise the Sun Common \fBSCSI\fR Architecture (
+\fBSCSA)\fR which are documented as part of the illumos DDI/DKI. See
+\fBscsi_ifgetcap\fR(9F), \fBscsi_init_pkt\fR(9F), and \fBscsi_transport\fR(9F)
+for further details of these, and associated routines.
+.sp
+.LP
+Depending on the interconnect (transport), SCSI target devices are either
+self-identifying or rely on \fBdriver.conf\fR(5) entries to be recognized by
+the system. For self-identifying target devices the driver binding is chosen
+based on the IEEE-1275 like 'compatible' forms of the target devices. Currently
+the Fibre Channel interconnects, \fBfcp\fR(4D), \fBifp\fR(4D),
+\fBscsi_vhci\fR(4D), \fBsf\fR(4D), and the SATA framework drivers (see
+\fBsata\fR(4D)) are self-identifying. You must specify other possible
+interconnects target devices by using the target driver \fBdriver.conf\fR(5)
+configuration files.
+.SS "Self-Identifying"
+Host adapter drivers of class scsi-self-identifying that dynamically create
+self-identifying target device children establish a \fBcompatible\fR property
+on each child. The compatible property is an ordered array of strings, each
+string is a compatible \fBform\fR. High precedence forms are defined first. For
+a particular device, the highest precedence form that has an established driver
+alias selects the driver for the device. Driver associations to compatible
+forms, called aliases, are administered by way of \fBadd_drv\fR(8),
+\fBupdate_drv\fR(8), and \fBrem_drv\fR(8) utilities.
+.sp
+.LP
+The forms for self-identifying SCSI target devices are derived from the SCSI
+target device's INQUIRY data. A diverse set of forms is defined, allowing for
+flexibility in binding.
+.sp
+.LP
+From the SCSI INQUIRY data, three types of information are extracted:
+scsi_dtype, flag bits, and SCSI_ASCII vendor product revision.
+.sp
+.LP
+The scsi_dtype is the first component of most forms. It is represented as two
+hex digits. For nodes that represent embedded secondary functions, such as an
+embedded enclosure service or media changer, additional forms are generated
+that contain the dtype of the secondary function followed by the dtype of the
+device in which the secondary function is embedded.
+.sp
+.LP
+For forms that use flag bits, all applicable flags are concatenated (in
+alphabetical order) into a single flags string. Removable media is represented
+by a flag. For forms that use the SCSI_ASCII INQUIRY vendor, product, and
+revision fields, a one-way conversion algorithm translates SCSI_ASCII to a IEEE
+1275 compatible string.
+.sp
+.LP
+It is possible that a device might change the INQUIRY data it returns over time
+as a result of a device initialization sequence or in response to out-of-band
+management. A device node's compatible property is based on the INQUIRY data
+when the device node was created.
+.sp
+.LP
+The following forms, in high to low precedence order, are defined for SCSI
+target device nodes.
+.sp
+.in +2
+.nf
+scsiclass,DDEEFFF.vVVVVVVVV.pPPPPPPPPPPPPPPPP.rRRRR (1 *1&2)
+scsiclass,DDEE.vVVVVVVVV.pPPPPPPPPPPPPPPPP.rRRRR (2 *1)
+scsiclass,DDFFF.vVVVVVVVV.pPPPPPPPPPPPPPPPP.rRRRR (3 *2)
+scsiclass,DD.vVVVVVVVV.pPPPPPPPPPPPPPPPP.rRRRR (4)
+scsiclass,DDEEFFF.vVVVVVVVV.pPPPPPPPPPPPPPPPP (5 *1&2)
+scsiclass,DDEE.vVVVVVVVV.pPPPPPPPPPPPPPPPP (6 *1)
+scsiclass,DDFFF.vVVVVVVVV.pPPPPPPPPPPPPPPPP (7 *2)
+scsiclass,DD.vVVVVVVVV.pPPPPPPPPPPPPPPPP (8)
+scsiclass,DDEEFFF (9 *1&2)
+scsiclass,DDEE (10 *1)
+scsiclass,DDFFF (11 *2)
+scsiclass,DD (12)
+scsiclass (13)
+ *1 only produced on a secondary function node
+ *2 only produced on a node with flags
+.fi
+.in -2
+
+.sp
+.LP
+where:
+.sp
+.ne 2
+.na
+\fB\fBv\fR\fR
+.ad
+.RS 20n
+Is the letter \fBv\fR. Denotes the beginning of \fBVVVVVVVV\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBVVVVVVVV\fR\fR
+.ad
+.RS 20n
+Translated scsi_vendor: SCSI standard INQUIRY data "Vendor identification"
+SCSI_ASCII field (bytes 8-15).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBp\fR\fR
+.ad
+.RS 20n
+Is the letter \fBp\fR. Denotes the beginning of \fBPPPPPPPPPPPPPPPP\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPPPPPPPPPPPPPPPP\fR\fR
+.ad
+.RS 20n
+Translated scsi_product: SCSI standard INQUIRY data "Product identification"
+SCSI_ASCII field (bytes 16-31).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBr\fR\fR
+.ad
+.RS 20n
+Is the letter \fBr\fR. Denotes the beginning of \fBRRRR\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBRRRR\fR\fR
+.ad
+.RS 20n
+Translated scsi_revision: SCSI standard INQUIRY data "Product revision level"
+SCSI_ASCII field (bytes 32-35).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBDD\fR\fR
+.ad
+.RS 20n
+Is a two digit ASCII hexadecimal number. The value of the two digits is based
+one the SCSI "Peripheral device type" command set associated with the node. On
+a primary node this is the scsi_dtype of the primary command set; on a
+secondary node this is the \fBscsi_dtype\fR associated with the embedded
+function command set.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEE\fR\fR
+.ad
+.RS 20n
+Same encoding used for \fBDD\fR. This form is only generated on secondary
+function nodes. The \fBDD\fR function is embedded in an \fBEE\fR device.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBFFF\fR\fR
+.ad
+.RS 20n
+Concatenation, in alphabetical order, of the flag characters below. The
+following flag characters are defined:
+.sp
+.ne 2
+.na
+\fBR\fR
+.ad
+.RS 5n
+Removable media: Used when \fBscsi_rmb\fR is set
+.RE
+
+Forms using \fBFFF\fR are only be generated if there are applicable flag
+characters.
+.RE
+
+.sp
+.LP
+illumos might create additional \fBcompatible\fR forms not described. These
+forms are for illumos internal use only. Any additional use of these forms is
+discouraged. Future releases of illumos might not produce these forms.
+.SS "driver.conf"
+Configuration files for \fBSCSI\fR target drivers should identify the host
+adapter driver implicitly using the \fIclass\fR keyword to remove any
+dependency on the particular host adapter involved.
+.sp
+.LP
+All host adapter drivers of class \fBscsi\fR recognize the following
+properties:
+.sp
+.ne 2
+.na
+\fB\fBtarget\fR\fR
+.ad
+.RS 10n
+Integer-valued \fBSCSI\fR target identifier that this driver claims.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBlun\fR\fR
+.ad
+.RS 10n
+Integer-valued \fBSCSI\fR logical unit number ( \fBLUN)\fR that this driver
+claims.
+.RE
+
+.sp
+.LP
+All \fBSCSI\fR target driver configuration file device definitions except stub
+device definitions for discovery of \fBdevid\fR must provide target and
+\fBlun\fR properties. These properties are used to construct the address part
+of the device name under \fB/devices\fR. The stub device definitions for
+discovery of \fBdevid\fR must be able to specify or imply the host adapter
+drivers that might have children that bind to the target driver. So all SCSI
+target driver configuration file stub device definitions must be defined by
+property class or parent.
+.sp
+.LP
+The \fBSCSI\fR target driver configuration files shipped with illumos have
+entries for \fBLUN\fR \fB0\fR only. For devices that support other \fBLUNs,\fR
+such as some \fBCD\fR changers, the system administrator can edit the driver
+configuration file to add entries for other \fBLUNs.\fR
+.SH EXAMPLES
+\fBExample 1 \fRAn Example Configuration File for a SCSI Target Driver
+.sp
+.LP
+The following is an example configuration file for a SCSI target driver called
+\fBtoaster.conf\fR.
+
+.sp
+.in +2
+.nf
+#
+# Copyright (c) 1992, by Sun Microsystems, Inc.
+#
+#ident "@(#)toaster.conf 1.2 92/05/12 SMI"
+name="toaster" class="scsi" target=4 lun=0;
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Add the following lines to \fBsd.conf\fR for a six- \fBCD\fR changer on
+\fBtarget 3\fR, with \fBLUNs\fR \fB0\fR to \fB5\fR.
+
+.sp
+.in +2
+.nf
+name="sd" class="scsi" target=3 lun=1;
+name="sd" class="scsi" target=3 lun=2;
+name="sd" class="scsi" target=3 lun=3;
+name="sd" class="scsi" target=3 lun=4;
+name="sd" class="scsi" target=3 lun=5;
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+It is not necessary to add the line for \fBLUN\fR \fB0\fR, as it already exists
+in the file shipped with illumos.
+
+.LP
+\fBExample 2 \fRA Stub Device Definition of \fBsd.conf\fR
+.sp
+.LP
+The following line is a stub device definition which implies the host adapter
+drivers of class scsi-self-identifying might have children that bind to the
+\fBsd\fR(4D) driver:
+
+.sp
+.in +2
+.nf
+name="sd" class="scsi-self-identifying";
+.fi
+.in -2
+.sp
+
+.SH ATTRIBUTES
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Committed
+.TE
+
+.SH SEE ALSO
+.BR fcp (4D),
+.BR ifp (4D),
+.BR sata (4D),
+.BR scsi_vhci (4D),
+.BR sd (4D),
+.BR sf (4D),
+.BR st (4D),
+.BR driver.conf (5),
+.BR attributes (7),
+.BR add_drv (8),
+.BR rem_drv (8),
+.BR update_drv (8),
+.BR scsi_ifgetcap (9F),
+.BR scsi_init_pkt (9F),
+.BR scsi_transport (9F)
+.sp
+.LP
+\fIWriting Device Drivers\fR
+.sp
+.LP
+\fIANS X3T9.2/82-2 SMALL COMPUTER SYSTEM INTERFACE (SCSI-1)\fR
+.sp
+.LP
+\fIANS X3T9.2/375D Small Computer System Interface - 2 (SCSI-2)\fR
+.sp
+.LP
+\fIANS X3T10/994D SCSI-3 Architecture Model (SAM)\fR
+.sp
+.LP
+\fIIEEE 1275 SCSI Target Device Binding\fR
+.SH NOTES
+With \fBdriver.conf\fR(5) configuration, you need to ensure that the
+\fBtarget\fR and \fBlun\fR values claimed by your target driver do not conflict
+with existing target drivers on the system. For example, if the target is a
+direct access device, the standard \fBsd.conf\fR file usually makes \fBsd\fR
+claim it before any other driver has a chance to probe it.
diff --git a/usr/src/man/man5/securenets.5 b/usr/src/man/man5/securenets.5
new file mode 100644
index 0000000000..f0a61ea246
--- /dev/null
+++ b/usr/src/man/man5/securenets.5
@@ -0,0 +1,177 @@
+'\" te
+.\" Copyright (C) 2000, Sun Microsystems,
+.\" Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SECURENETS 5 "May 16, 2020"
+.SH NAME
+securenets \- configuration file for NIS security
+.SH SYNOPSIS
+.nf
+\fB/var/yp/securenets\fR
+.fi
+
+.SH DESCRIPTION
+The \fB/var/yp/securenets\fR file defines the networks or hosts which are
+allowed access to information by the Network Information Service ("\fBNIS\fR").
+.sp
+.LP
+The format of the file is as follows:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Lines beginning with the ``#'' character are treated as comments.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Otherwise, each line contains two fields separated by white space. The first
+field is a netmask, the second a network.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The netmask field may be either \fB255.255.255.255\fR (IPv4),
+\fBffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff\fR (IPv6) , or the string ``host''
+indicating that the second field is a specific host to be allowed access.
+.RE
+.sp
+.LP
+Both \fBypserv\fR(8) and \fBypxfrd\fR(8) use the \fB/var/yp/securenets\fR
+file. The file is read when the \fBypserv\fR(8) and \fBypxfrd\fR(8) daemons
+begin. If \fB/var/yp/securenets\fR is present, \fBypserv\fR(8) and
+\fBypxfrd\fR(8) respond only to \fBIP\fR addresses in the range given. In
+order for a change in the \fB/var/yp/securenets\fR file to take effect, you
+must kill and restart any active daemons using \fBypstop\fR(8) and
+\fBypstart\fR(8).
+.sp
+.LP
+An important thing to note for all the examples below is that the server must
+be allowed to access itself. You accomplish this either by the server being
+part of a subnet that is allowed to access the server, or by adding an
+individual entry, as the following:
+.sp
+.in +2
+.nf
+hosts 127.0.0.1
+.fi
+.in -2
+.sp
+
+.SH EXAMPLES
+\fBExample 1 \fRAccess for Individual Entries
+.sp
+.LP
+If individual machines are to be give access, the entry could be:
+
+.sp
+.in +2
+.nf
+255.255.255.255 192.9.1.20
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+or
+
+.sp
+.in +2
+.nf
+host 192.0.1.20
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRAccess for a Class C Network
+.sp
+.LP
+If access is to be given to an entire class C network, the entry could be:
+
+.sp
+.in +2
+.nf
+255.255.255.0 192.9.1.0
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRAccess for a Class B Network
+.sp
+.LP
+The entry for access to a class B network could be:
+
+.sp
+.in +2
+.nf
+255.255.0.0 9.9.0.0
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 4 \fRAccess for an Individual IPv6 Address
+.sp
+.LP
+Similarly, to allow access for an individual IPv6 address:
+
+.sp
+.in +2
+.nf
+ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff fec0::111:abba:ace0:fba5e:1
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+or
+
+.sp
+.in +2
+.nf
+host fec0::111:abba:ace0:fba5e:1
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 5 \fRAccess for all IPv6 Addresses Starting with fe80
+.sp
+.LP
+To allow access for all IPv6 addresses starting with fe80:
+
+.sp
+.in +2
+.nf
+ffff:: fe80::
+.fi
+.in -2
+.sp
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/var/yp/securenets\fR\fR
+.ad
+.RS 22n
+Configuration file for \fBNIS\fR security.
+.RE
+
+.SH SEE ALSO
+.BR ypserv (8),
+.BR ypstart (8),
+.BR ypstop (8),
+.BR ypxfrd (8)
+.SH NOTES
+The Network Information Service (NIS) was formerly known as Sun Yellow Pages
+(YP). The functionality of the two remains the same; only the name has
+changed. The name Yellow Pages is a registered trademark in the United Kingdom
+of British Telecommunications plc, and may not be used without permission.
diff --git a/usr/src/man/man5/security-flags.5 b/usr/src/man/man5/security-flags.5
deleted file mode 100644
index 2868d38d15..0000000000
--- a/usr/src/man/man5/security-flags.5
+++ /dev/null
@@ -1,115 +0,0 @@
-.\"
-.\" This file and its contents are supplied under the terms of the
-.\" Common Development and Distribution License ("CDDL"), version 1.0.
-.\" You may only use this file in accordance with the terms of version
-.\" 1.0 of the CDDL.
-.\"
-.\" A full copy of the text of the CDDL should have accompanied this
-.\" source. A copy of the CDDL is also available via the Internet at
-.\" http://www.illumos.org/license/CDDL.
-.\"
-.\" Copyright 2015, Richard Lowe.
-.\"
-.TH "SECURITY-FLAGS" "5" "June 6, 2016"
-.SH "NAME"
-\fBsecurity-flags\fR - process security flags
-.SH "DESCRIPTION"
-Each process on an illumos system has an associated set of security-flags
-which describe additional per-process security and exploit mitigation
-features which are enabled for that process.
-.P
-There are four sets of these flags for each process, the effective set
-(abbreviated \fIE\fR) are the set which currently apply to the process and are
-immutable. The inheritable set (abbreviated \fII\fR) are the flags which will
-become effective the next time the process calls one of the \fBexec(2)\fR
-family of functions, and will be inherited as both the effective and
-inheritable sets by any child processes. The upper set (abbreviated \fIU\fR)
-specify the maximal flags that a process can have in its inheritable set. The
-lower set (abbreviated \fIL\fR) specify the minimal amount of flags that a
-process must have in its inheritable set. The inheritable set may be changed
-at any time, subject to permissions and the lower and upper sets.
-.P
-To change the security-flags of a process one must have both permissions
-equivalent to those required to send a signal to the process and have the
-\fBPRIV_PROC_SECFLAGS\fR privilege.
-.P
-Currently available features are:
-
-.sp
-.ne 2
-.na
-Address Space Layout Randomisation (\fBASLR\fR)
-.ad
-.RS 11n
-The base addresses of the stack, heap and shared library (including
-\fBld.so\fR) mappings are randomised, the bases of mapped regions other than
-those using \fBMAP_FIXED\fR are randomised.
-.P
-Currently, executable base addresses are \fInot\fR randomised, due to which
-the mitigation provided by this feature is currently limited.
-.P
-This flag may also be enabled by the presence of the \fBDT_SUNW_ASLR\fR
-dynamic tag in the \fB.dynamic\fR section of the executable file. If this
-tag has a value of 1, ASLR will be enabled. If the flag has a value of
-\fB0\fR ASLR will be disabled. If the tag is not present, the value of the
-ASLR flag will be inherited as normal.
-.RE
-
-.sp
-.ne 2
-.na
-Forbid mappings at NULL (\fBFORBIDNULLMAP\fR)
-.ad
-.RS 11n
-Mappings with an address of 0 are forbidden, and return EINVAL rather than
-being honored.
-.RE
-
-.sp
-.ne 2
-.na
-Make the userspace stack non-executable (\fBNOEXECSTACK\fR)
-.ad
-.RS 11n
-The stack will be mapped without executable permission, and attempts to
-execute it will fault.
-.RE
-
-System default security-flags are configured via properties on the
-\fBsvc:/system/process-security\fR service, which contains a boolean property
-per-flag in the \fBdefault\fR, \fBlower\fR and \fBupper\fR, property groups.
-The value indicates the setting of the flag, flags with no value take their
-defaults. For example, to enable ASLR by default you would execute the
-following commands:
-.sp
-.in +2
-.nf
-# svccfg -s svc:/system/process-security setprop default/aslr = true
-.fi
-.in -2
-.sp
-.P
-To restore the setting to the defaults you would execute:
-.sp
-.in +2
-.nf
-# svccfg -s svc:/system/process-security delpropvalue default/aslr true
-.fi
-.in -2
-.sp
-.P
-This can be done by any user with the \fBsolaris.smf.value.process-security\fR
-authorization.
-.P
-Since security-flags are strictly inherited, this will not take effect until
-the system or zone is next booted.
-
-.SH "SEE ALSO"
-.BR psecflags (1),
-.BR svccfg (1M),
-.BR brk (2),
-.BR exec (2),
-.BR mmap (2),
-.BR mmapobj (2),
-.BR privileges (5),
-.BR rbac (5)
diff --git a/usr/src/man/man5/sendmail.5 b/usr/src/man/man5/sendmail.5
new file mode 100644
index 0000000000..afee47618f
--- /dev/null
+++ b/usr/src/man/man5/sendmail.5
@@ -0,0 +1,298 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SENDMAIL 5 "May 13, 2017"
+.SH NAME
+sendmail, sendmail.cf, submit.cf \- sendmail configuration files
+.SH SYNOPSIS
+.LP
+.nf
+\fB/etc/mail/sendmail.cf\fR
+.fi
+
+.LP
+.nf
+\fB/etc/mail/submit.cf\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBsendmail.cf\fR and \fBsubmit.cf\fR files are the configuration files for
+\fBsendmail\fR(8). Starting with version 8.12 of \fBsendmail\fR, which was
+shipped with version 9 of the Solaris operating system, two configuration files
+are used for submission and transmission of mail, instead of only
+\fBsendmail.cf\fR, as before. These are:
+.sp
+.ne 2
+.na
+\fB\fBsendmail.cf\fR\fR
+.ad
+.RS 15n
+Remains the principal \fBsendmail\fR configuration file. Used for the Mail
+Transmission Agent (MTA).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsubmit.cf\fR\fR
+.ad
+.RS 15n
+Used for the Mail Submission Program (MSP). The MSP is used to submit mail
+messages. Unlike the MTA, it does not run as an SMTP daemon.
+.RE
+
+.sp
+.LP
+The MSP does not require root privileges, thus the two-file model provides
+better security than the pre-\fBsendmail\fR 8.12 model, in which the MSP ran as
+a daemon and required root privileges.
+.sp
+.LP
+In the default \fBsendmail\fR configuration, \fBsendmail\fR uses
+\fBsubmit.cf\fR, as indicated in \fBps\fR(1) output. In \fBps\fR output, you
+will observe two \fBsendmail\fR invocations, such as the ones below:
+.sp
+.in +2
+.nf
+/usr/lib/sendmail -Ac -q15m
+/usr/lib/sendmail -bd -q15m
+.fi
+.in -2
+
+.sp
+.LP
+The first indicates the use of \fBsubmit.cf\fR, with the client queue
+(\fB/var/spool/clientmqueue\fR) being checked\(emand, if needed,
+flushed\(emevery 15 minutes. The second invocation runs \fBsendmail\fR as a
+daemon, waiting for incoming SMTP connections.
+.sp
+.LP
+As shipped, \fBsendmail.cf\fR and, in particular, \fBsubmit.cf\fR, are
+appropriate for most environments. Where a knowledgeable system administrator
+needs to make a change, he should use the following procedures.
+.sp
+.LP
+For \fBsendmail.cf\fR:
+.RS +4
+.TP
+1.
+Change directories to the directory that contains the source files for the
+configuration files.
+.sp
+.in +2
+.nf
+# \fBcd /etc/mail/cf/cf\fR
+.fi
+.in -2
+.sp
+
+.RE
+.RS +4
+.TP
+2.
+Create a copy of the \fBsendmail\fR file for your system.
+.sp
+.in +2
+.nf
+# \fBcp sendmail.mc `hostname`.mc\fR
+.fi
+.in -2
+.sp
+
+.RE
+.RS +4
+.TP
+3.
+Edit \fB`hostname`.mc\fR. Make changes suitable for your system and
+environment.
+.RE
+.RS +4
+.TP
+4.
+Run \fBmake\fR to generate the configuration file.
+.sp
+.in +2
+.nf
+# \fB/usr/bin/make `hostname`.cf\fR
+.fi
+.in -2
+.sp
+
+.RE
+.RS +4
+.TP
+5.
+Copy the newly generated file to its correct location.
+.sp
+.in +2
+.nf
+# \fBcp `hostname`.cf /etc/mail/sendmail.cf\fR
+.fi
+.in -2
+.sp
+
+.RE
+.RS +4
+.TP
+6.
+Restart the \fBsendmail\fR service.
+.sp
+.in +2
+.nf
+# \fBsvcadm restart sendmail\fR
+.fi
+.in -2
+.sp
+
+.RE
+.sp
+.LP
+You must restart \fBsendmail\fR for \fBsendmail.cf\fR file changes to take
+effect, as indicated in step 6. Steps 4 - 6 can be automated. See \fBAutomated
+Rebuilding of Configuration Files\fR below.
+.sp
+.LP
+For \fBsubmit.cf\fR:
+.RS +4
+.TP
+1.
+Change directories to the directory that contains the source files for the
+configuration files.
+.sp
+.in +2
+.nf
+# \fBcd /etc/mail/cf/cf\fR
+.fi
+.in -2
+.sp
+
+.RE
+.RS +4
+.TP
+2.
+Create a copy of the \fBsubmit\fR file for your system.
+.sp
+.in +2
+.nf
+# \fBcp submit.mc submit-`hostname`.mc\fR
+.fi
+.in -2
+.sp
+
+.RE
+.RS +4
+.TP
+3.
+Edit \fBsubmit-`hostname`.mc\fR. Make changes suitable for your system and
+environment.
+.RE
+.RS +4
+.TP
+4.
+Run \fBmake\fR to generate the configuration file.
+.sp
+.in +2
+.nf
+# \fB/usr/bin/make submit-`hostname`.cf\fR
+.fi
+.in -2
+.sp
+
+.RE
+.RS +4
+.TP
+5.
+Copy the newly generated file to its correct location.
+.sp
+.in +2
+.nf
+# \fBcp submit-`hostname`.cf /etc/mail/submit.cf\fR
+.fi
+.in -2
+.sp
+
+.RE
+.sp
+.LP
+You do not need to restart \fBsendmail\fR for changes to \fBsubmit.cf\fR to
+take effect. Steps 4 and 5 can be automated. See \fBAutomated Rebuilding of
+Configuration Files\fR below.
+.SS "Enabling Access to Remote Clients"
+.LP
+The \fBsendmail\fR(8) man page describes how the \fBconfig/local_only\fR
+property can be set to \fBtrue\fR or \fBfalse\fR to disallow or allow,
+respectively, access to remote clients for unmodified systems.
+.sp
+.LP
+Setting values for the following properties for the service instance
+\fBsvc:/network/smtp:sendmail\fR results in automated (re)building of
+configuration files:
+.sp
+.in +2
+.nf
+path_to_sendmail_mc
+path_to_submit_mc
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The values for these properties should be strings which represent the path name
+of the \fB\&.mc\fR files referred to in steps 2 and 3 of both procedures above.
+Recommended values are:
+.sp
+.in +2
+.nf
+/etc/mail/cf/cf/`hostname`.mc
+/etc/mail/cf/cf/submit-`hostname`.mc
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Each property, if set, results in the corresponding \fB\&.mc\fR file being used
+to (re)build the matching \fB\&.cf\fR file when the service is started.
+.sp
+.LP
+These properties persist across updates. To prevent an update
+from clobbering your \fB\&.cf\fR file, or renaming it to
+\fB\&.cf.old\fR, you can set the desired properties instead.
+.SH FILES
+.ne 2
+.na
+\fB\fB/etc/mail/cf/README\fR\fR
+.ad
+.RS 23n
+Describes \fBsendmail\fR configuration files.
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Committed
+.TE
+
+.SH SEE ALSO
+.LP
+.BR ps (1),
+.BR make (1S),
+.BR attributes (7),
+.BR sendmail (8),
+.BR svcadm (8)
+.sp
+.LP
+\fISystem Administration Guide: Network Services\fR
diff --git a/usr/src/man/man5/service_bundle.5 b/usr/src/man/man5/service_bundle.5
new file mode 100644
index 0000000000..024cb050d9
--- /dev/null
+++ b/usr/src/man/man5/service_bundle.5
@@ -0,0 +1,155 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
+.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SERVICE_BUNDLE 5 "Mar 6, 2009"
+.SH NAME
+service_bundle \- service manifest file format
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/share/lib/xml/dtd/service_bundle.dtd.1\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The service management facility, described in \fBsmf\fR(7), utilizes an
+XML-based file format to marshal the description of a set of services or
+service instances between systems. This file is known as a service bundle. The
+primary form of a service bundle is the inventory of services that are provided
+by a package, which is called a \fBservice manifest\fR.
+.sp
+.LP
+The DTD describing the \fBservice_bundle\fR is provided at
+\fB/usr/share/lib/xml/dtd/service_bundle.dtd.1\fR. The attributes and tags are
+fully described in the commented DTD. The services supplied with the operating
+system, stored under \fB/var/svc/manifest\fR, provide examples of correctly
+formed service descriptions.
+.sp
+.LP
+\fBservice_bundle\fR documents can also use the XML Inclusions (\fBXInclude\fR)
+facility to merge multiple documents into one. A \fBservice_bundle\fR document
+manipulator must therefore support the functionality defined by the XInclude
+specification.
+.sp
+.LP
+A complete service description consists of the following:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+A set of properties that identify the service and identify its restarter
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+A set of properties that identify each instance
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+A set of framework property groups that describe the framework's understanding
+of each instance
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+A set of method property groups as required by \fBsvc.startd\fR(8), or by a
+delegated restarter
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Additional optional method property groups
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+A set of dependency property groups
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+An optional group of properties that indicate services to which dependencies on
+the described service were added
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+A set of application property groups or application-specific typed property
+groups containing application configuration data
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+A template that describes supporting information about this service, such as a
+description, links to documentation, and metadata about property groups and
+properties.
+.RE
+.sp
+.LP
+The document type definition for the service bundle provides markup to define
+each of these aspects of a service description, as well as a number of entities
+that identify regular features in describing a service, such as the
+\fB<create_default_instance>\fR tag.
+.SS "Manifest Handling During Packaging Operations"
+.sp
+.LP
+Service manifests within packages should be identified with the class
+\fBmanifest\fR. Class action scripts that install and remove service manifests
+are included in the packaging subsystem. When \fBpkgadd\fR(8) is invoked, the
+service manifest is imported.
+.sp
+.LP
+When \fBpkgrm\fR(8) is invoked, instances in the manifest that are disabled
+are deleted. Any services in the manifest with no remaining instances are also
+deleted.
+.sp
+.LP
+If the \fB-R\fR option is supplied to \fBpkgadd\fR(8) or \fBpkgrm\fR(8), the
+actions described in this section are done when the system is next rebooted
+with that alternate root path.
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Stability Committed
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR libscf (3LIB),
+.BR attributes (7),
+.BR locale (7),
+.BR smf (7),
+.BR smf_method (7),
+.BR smf_template (7),
+.BR pkgadd (8),
+.BR pkgrm (8),
+.BR svc.startd (8),
+.BR svcadm (8),
+.BR svccfg (8)
+.SH NOTES
+.sp
+.LP
+Nested \fBservice_bundle\fR elements must be of the same type.
diff --git a/usr/src/man/man5/service_provider.conf.5 b/usr/src/man/man5/service_provider.conf.5
new file mode 100644
index 0000000000..1e6f7da933
--- /dev/null
+++ b/usr/src/man/man5/service_provider.conf.5
@@ -0,0 +1,185 @@
+'\" te
+.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SERVICE_PROVIDER.CONF 5 "Jun 18, 2004"
+.SH NAME
+service_provider.conf \- service provider configuration file
+.SH SYNOPSIS
+.LP
+.nf
+\fBservice_provider.conf\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+\fBservice_provider.conf\fR contains information about the device type that the
+service provider supports. This information includes the pathname of the
+service provider library, the library version and other library characteristics
+that are required by the system administrative command, \fBdatadm\fR(8).
+\fBdatadm\fR(8) puts this information in the DAT static register file,
+\fBdat.conf\fR(5).
+.sp
+.LP
+The \fBdatadm\fR program enumerates each device entry into a list of interface
+adapters, that is, interfaces to external network that are available to uDAPL
+consumers. This new list of interface adapters is appended to other service
+providers' information in the DAT static registry, \fBdat.conf\fR. You can do
+this if you invoke the \fBdatadm\fR program with the \fB-a\fR option and the
+pathname of the \fBservice_provider.conf\fR file.
+.sp
+.LP
+Each entry in the service_provider.conf is a single line of 7 fields.
+.sp
+.LP
+The following shows the order of the fields in a \fBservice_provider.conf\fR
+entry:
+.sp
+.in +2
+.nf
+"\fIdriver_name\fR" "\fIAPI_version\fR" "\fIthreadsafe_library\fR | \e
+ \fInonthreadsafe_library\fR"\e
+"\fIdefault_version\fR | \fInondefault_version\fR" \e
+ "\fIservice_provider_library_pathname\fR"\e
+"\fIservice_provider_version\fR" "\fIservice_provider_instance_data\fR"\e
+.fi
+.in -2
+
+.sp
+.LP
+The fields are defined as follows:
+.sp
+.ne 2
+.na
+\fB\fIdriver_name\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies a driver name in the format of \fBdriver_name\fR=\fIvalue pair\fR,
+for example, \fBdriver_name=tavor\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIAPI_version\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the API version of the service provider library: For example,
+\fB"u"major.minor\fR is \fBu1.2\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIthreadsafe_library\fR | \fInonthreadsafe_library\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies a threadsafe or non-threadsafe library.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIdefault_version\fR | \fInondefault_version\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies a default or non-default version of a library. A service provider can
+offer several versions of the library. If so, one version is designated as
+\fBdefault\fR with the rest as \fBnondefault\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIservice_provider_library_pathname\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the pathname of the library image.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIservice_provider_version\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the version of the service provider. By convention, specify the
+company stock symbol as the service provider, followed by major and minor
+version numbers, for example, \fBSUNW1.0\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIservice_provider_instance_data\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the service provider instance data.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRUsing a Logical Device Name
+.sp
+.LP
+The following example \fBservice_provider.conf\fR entry uses a logical device
+name:
+
+.sp
+.in +2
+.nf
+#
+# Sample service_provider.conf entry showing an uDAPL 1.2 service
+# provider, udapl_tavor.so.1 supporting a device with a driver named
+# tavor
+driver_name=tavor u1.2 nonthreadsafe default udapl_tavor.so.1 \e
+ SUNW.1.0 ""
+.fi
+.in -2
+
+.LP
+\fBExample 2 \fRUsing a Physical Device Name
+.sp
+.LP
+The following example \fBservice_provider.conf\fR uses a physical device name:
+
+.sp
+.in +2
+.nf
+#
+# Sample service_provider.conf entry showing an uDAPL 1.2
+# service provider, udapl_tavor.so.1 supporting a device named
+# pci15b3,5a44 that can be located under /devices
+#
+pci15b3,5a44 u1.2 nonthreadsafe default \e
+ /usr/lib/tavor/udapl_tavor.so.1 SUNWudaplt1.0 ""
+.fi
+.in -2
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+Stability Evolving
+.TE
+
+.SH SEE ALSO
+.LP
+.BR dat.conf (5),
+.BR attributes (7),
+.BR datadm (8)
diff --git a/usr/src/man/man5/services.5 b/usr/src/man/man5/services.5
new file mode 100644
index 0000000000..c87ca5c81f
--- /dev/null
+++ b/usr/src/man/man5/services.5
@@ -0,0 +1,95 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 1983 Regents of the University of California. All rights reserved. The Berkeley software License Agreement specifies the terms and conditions for redistribution.
+.\" Copyright (C) 2000, Sun Microsystems, Inc. All Rights Reserved
+.TH SERVICES 5 "Feb 25, 2017"
+.SH NAME
+services \- Internet services and aliases
+.SH SYNOPSIS
+.LP
+.nf
+\fB/etc/inet/services\fR
+.fi
+
+.LP
+.nf
+\fB/etc/services\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBservices\fR file is a local source of information regarding each
+service available through the Internet. The \fBservices\fR file can be used in
+conjunction with or instead of other services sources, including the \fBNIS\fR
+map "services.byname". Programs use the
+\fBgetservbyname\fR(3SOCKET) routines to access this information.
+.sp
+.LP
+The \fBservices\fR file contains an entry for each service. Each entry has the
+form:
+.sp
+.in +2
+.nf
+\fIservice-name port\fR/\fIprotocol aliases\fR
+.fi
+.in -2
+
+.sp
+.ne 2
+.na
+\fB\fIservice-name\fR\fR
+.ad
+.RS 17n
+This is the official Internet service name.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIport\fR/\fIprotocol\fR\fR
+.ad
+.RS 17n
+This field is composed of the port number and protocol through which the
+service is provided, for instance, \fB512/tcp\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIaliases\fR\fR
+.ad
+.RS 17n
+This is a list of alternate names by which the service might be requested.
+.RE
+
+.sp
+.LP
+Fields can be separated by any number of \fBSPACE\fR and/or \fBTAB\fR
+characters. A number sign (\fB#\fR) indicates the beginning of a comment; any
+characters that follow the comment character up to the end of the line are not
+interpreted by routines which search the file.
+.sp
+.LP
+Service names may contain any printable character other than a field delimiter,
+a \fBNEWLINE\fR, or a comment character.
+.sp
+.LP
+Any changes to a port assignment do not affect the actual port registration of
+the service.
+.SH FILES
+.ne 2
+.na
+\fB\fB/etc/nsswitch.conf\fR\fR
+.ad
+.RS 22n
+configuration file for name-service switch
+.RE
+
+.SH SEE ALSO
+.LP
+.BR getservbyname (3SOCKET),
+.BR inetd.conf (5),
+.BR nsswitch.conf (5)
+.SH NOTES
+.LP
+\fB/etc/inet/services\fR is the official SVR4 name of the \fBservices\fR file.
+The symbolic link \fB/etc/services\fR exists for \fBBSD\fR compatibility.
diff --git a/usr/src/man/man5/shadow.5 b/usr/src/man/man5/shadow.5
new file mode 100644
index 0000000000..078c54e678
--- /dev/null
+++ b/usr/src/man/man5/shadow.5
@@ -0,0 +1,229 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 2002, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SHADOW 5 "Feb 25, 2017"
+.SH NAME
+shadow \- shadow password file
+.SH DESCRIPTION
+.LP
+\fB/etc/shadow\fR is an access-restricted ASCII system file that stores users'
+encrypted passwords and related information. The shadow file can be used in
+conjunction with other shadow sources, including the \fBNIS\fR maps
+\fBpasswd.byname\fR and \fBpasswd.byuid\fR.
+Programs use the \fBgetspnam\fR(3C) routines to access this information.
+.sp
+.LP
+The fields for each user entry are separated by colons. Each user is separated
+from the next by a newline. Unlike the \fB/etc/passwd\fR file,
+\fB/etc/shadow\fR does not have general read permission.
+.sp
+.LP
+Each entry in the shadow file has the form:
+.sp
+.in +2
+.nf
+\fIusername\fR:\fIpassword\fR:\fIlastchg\fR:\fImin\fR:\fImax\fR:\fIwarn\fR:\fIinactive\fR:\fIexpire\fR:\fIflag\fR
+.fi
+.in -2
+
+.sp
+.LP
+The fields are defined as follows:
+.sp
+.ne 2
+.na
+\fB\fIusername\fR\fR
+.ad
+.RS 12n
+The user's login name (UID).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIpassword\fR\fR
+.ad
+.RS 12n
+An encrypted password for the user generated by \fBcrypt\fR(3C), a \fIlock\fR
+string to indicate that the login is not accessible, or no string, which shows
+that there is no password for the login.
+.sp
+The lock string is defined as \fB*LK*\fR in the first four characters of the
+password field.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIlastchg\fR\fR
+.ad
+.RS 12n
+The number of days between January 1, 1970, and the date that the password was
+last modified. The \fIlastchg\fR value is a decimal number, as interpreted by
+\fBstrtol\fR(3C).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fImin\fR\fR
+.ad
+.RS 12n
+The minimum number of days required between password changes. This field must
+be set to 0 or above to enable password aging.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fImax\fR\fR
+.ad
+.RS 12n
+The maximum number of days the password is valid.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIwarn\fR\fR
+.ad
+.RS 12n
+The number of days before password expires that the user is warned.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIinactive\fR\fR
+.ad
+.RS 12n
+The number of days of inactivity allowed for that user. This is counted on a
+per-machine basis; the information about the last login is taken from the
+machine's \fBlastlog\fR file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIexpire\fR\fR
+.ad
+.RS 12n
+An absolute date expressed as the number of days since the Unix Epoch (January
+1, 1970). When this number is reached the login can no longer be used. For
+example, an \fIexpire\fR value of \fB13514\fR specifies a login expiration of
+January 1, 2007.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIflag\fR\fR
+.ad
+.RS 12n
+Failed login count in low order four bits; remainder reserved for future use,
+set to zero.
+.RE
+
+.sp
+.LP
+A value of \fB-1\fR for \fImin\fR, \fImax\fR, or \fIwarn\fR disables password
+aging.
+.sp
+.LP
+The encrypted password consists of at most \fBCRYPT_MAXCIPHERTEXTLEN\fR
+characters chosen from a 64-character alphabet (\fB\&.\fR, \fB/\fR,
+\fB0\(mi9\fR, \fBA\(miZ\fR, \fBa\(miz\fR). Two additional special characters,
+"$" and ",", can also be used and are defined in \fBcrypt\fR(3C). To update
+this file, use the \fBpasswd\fR(1), \fBuseradd\fR(8), \fBusermod\fR(8), or
+\fBuserdel\fR(8) commands.
+.sp
+.LP
+In order to make system administration manageable, \fB/etc/shadow\fR entries
+should appear in exactly the same order as \fB/etc/passwd\fR entries; this
+includes ``+'' and ``-'' entries if the \fBcompat\fR source is being used (see
+\fBnsswitch.conf\fR(5)).
+.sp
+.LP
+Values for the various time-related fields are interpreted as Greenwich Mean
+Time.
+.SH FILES
+.ne 2
+.na
+\fB\fB/etc/shadow\fR\fR
+.ad
+.RS 22n
+shadow password file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/passwd\fR\fR
+.ad
+.RS 22n
+password file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/nsswitch.conf\fR\fR
+.ad
+.RS 22n
+name-service switch configuration file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/adm/lastlog\fR\fR
+.ad
+.RS 22n
+time of last login
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Stable
+.TE
+
+.SH SEE ALSO
+.LP
+.BR login (1),
+.BR passwd (1),
+.BR crypt (3C),
+.BR crypt_gensalt (3C),
+.BR getspnam (3C),
+.BR putspent (3C),
+.BR strtol (3C),
+.BR nsswitch.conf (5),
+.BR passwd (5),
+.BR attributes (7),
+.BR pam_unix_account (7),
+.BR pam_unix_auth (7),
+.BR useradd (8),
+.BR userdel (8),
+.BR usermod (8)
+.SH NOTES
+.LP
+If password aging is turned on in any name service the \fIpasswd:\fR line in
+the \fB/etc/nsswitch.conf\fR file must have a format specified in the
+\fBnsswitch.conf\fR(5) man page.
+.sp
+.LP
+If the \fB/etc/nsswitch.conf\fR passwd policy is not in one of the supported
+formats, logins will not be allowed upon password expiration, because the
+software does not know how to handle password updates under these conditions.
+See \fBnsswitch.conf\fR(5) for additional information.
diff --git a/usr/src/man/man5/sharetab.5 b/usr/src/man/man5/sharetab.5
new file mode 100644
index 0000000000..d5095d05ce
--- /dev/null
+++ b/usr/src/man/man5/sharetab.5
@@ -0,0 +1,73 @@
+'\" te
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SHARETAB 5 "Jul 3, 1990"
+.SH NAME
+sharetab \- shared file system table
+.SH DESCRIPTION
+.sp
+.LP
+\fBsharetab\fR resides in directory \fB/etc/dfs\fR and contains a table of
+local resources shared by the \fBshare\fR command.
+.sp
+.LP
+Each line of the file consists of the following fields:
+.sp
+.LP
+\fIpathname resource fstype specific_options description\fR
+.sp
+.LP
+where
+.sp
+.ne 2
+.na
+\fB\fIpathname\fR\fR
+.ad
+.RS 20n
+Indicate the path name of the shared resource.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIresource\fR\fR
+.ad
+.RS 20n
+Indicate the symbolic name by which remote systems can access the resource.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIfstype\fR\fR
+.ad
+.RS 20n
+Indicate the file system type of the shared resource.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIspecific_options\fR\fR
+.ad
+.RS 20n
+Indicate file-system-type-specific options that were given to the \fBshare\fR
+command when the resource was shared.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIdescription\fR\fR
+.ad
+.RS 20n
+Describe the shared resource provided by the system administrator when the
+resource was shared.
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR share (8)
diff --git a/usr/src/man/man5/shells.5 b/usr/src/man/man5/shells.5
new file mode 100644
index 0000000000..d56d1c1f63
--- /dev/null
+++ b/usr/src/man/man5/shells.5
@@ -0,0 +1,60 @@
+'\" te
+.\" Copyright (c) 2007 Sun Microsystems, Inc. All Rights Reserved.
+.\" Portions Copyright (c) 1982-2007 AT&T Knowledge Ventures
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SHELLS 5 "Nov 20, 2007"
+.SH NAME
+shells \- shell database
+.SH SYNOPSIS
+.LP
+.nf
+\fB/etc/shells\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBshells\fR file contains a list of the shells on the system. Applications
+use this file to determine whether a shell is valid. See
+\fBgetusershell\fR(3C). For each shell a single line should be present,
+consisting of the shell's path, relative to root.
+.sp
+.LP
+A hash mark (\fB#\fR) indicates the beginning of a comment; subsequent
+characters up to the end of the line are not interpreted by the routines which
+search the file. Blank lines are also ignored.
+.sp
+.LP
+The following default shells are used by utilities: \fB/bin/bash\fR,
+\fB/bin/csh\fR, \fB/bin/jsh\fR, \fB/bin/ksh\fR, \fB/bin/ksh93\fR,
+\fB/bin/pfcsh\fR, \fB/bin/pfksh\fR, \fB/bin/pfsh\fR, \fB/bin/sh\fR,
+\fB/bin/tcsh\fR, \fB/bin/zsh\fR, \fB/sbin/jsh\fR, \fB/sbin/sh\fR,
+\fB/usr/bin/bash\fR, \fB/usr/bin/csh\fR, \fB/usr/bin/jsh\fR,
+\fB/usr/bin/ksh\fR, \fB/usr/bin/ksh93\fR, \fB/usr/bin/pfcsh\fR,
+\fB/usr/bin/pfksh\fR, \fB/usr/bin/pfsh\fR, and \fB/usr/bin/sh\fR,
+\fB/usr/bin/tcsh\fR, \fB/usr/bin/zsh\fR, and \fB/usr/sfw/bin/zsh\fR.
+\fB/etc/shells\fR overrides the default list.
+.sp
+.LP
+Invalid shells in \fB/etc/shells\fR could cause unexpected behavior, such as
+being unable to log in by way of \fBftp\fR(1).
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/shells\fR\fR
+.ad
+.RS 15n
+list of shells on system
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR vipw (1B),
+.BR getusershell (3C),
+.BR aliases (5),
+.BR ftpd (8),
+.BR sendmail (8)
diff --git a/usr/src/man/man5/slp.conf.5 b/usr/src/man/man5/slp.conf.5
new file mode 100644
index 0000000000..382360697e
--- /dev/null
+++ b/usr/src/man/man5/slp.conf.5
@@ -0,0 +1,1152 @@
+'\" te
+.\" Copyright (C) 2003, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SLP.CONF 5 "Feb 18, 2003"
+.SH NAME
+slp.conf \- configuration file for Service Location Protocol agents
+.SH SYNOPSIS
+.LP
+.nf
+\fB/etc/inet/slp.conf\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBslp.conf \fR provides all Service Location Protocol ("\fBSLP\fR") agents
+with their operational configuration. \fBslpd\fR(8) reads \fBslp.conf\fR on
+startup. Service Agents ("\fBSA\fRs") and User Agents ("\fBUA\fRs") read
+\fBslp.conf\fR on invocation of the \fBSA\fR and \fBUA\fR library routines;
+configuration parameters are then cached on a per-process basis. All \fBSA\fR's
+must use the same set of properties as \fBslpd\fR on the local machine, since
+\fBslpd\fR acts as an \fBSA\fR server.
+.sp
+.LP
+The configuration file format consists of a newline-delimited list of zero or
+more property definitions. Each property definition corresponds to a particular
+configurable \fBSLP\fR, network, or other parameter in one or more of the three
+\fBSLP\fR agents. The file format grammar is shown in \fIRFC 2234\fR as
+follows:
+.sp
+.in +2
+.nf
+config-file = line-list
+line-list = line / line line-list
+line = property-line / comment-line
+comment-line = ( "#" / ";" ) 1*allchar newline
+property-line = property newline
+property = tag "=" value-list
+tag = prop / prop "." tag
+prop = 1*tagchar
+value-list = value / value "," value-list
+value = int / bool /
+ "(" value-list ")" / string
+int = 1*DIGIT
+bool = "true" / "false" / "TRUE" / "FALSE"
+newline = CR / ( CRLF )
+string = 1*stringchar
+tagchar = DIGIT / ALPHA / tother / escape
+tother = %x21-%x2d / %x2f /
+ %x3a / %x3c-%x40 /
+ %x5b-%x60 / %7b-%7e
+ ; i.e., all characters except `.',
+ ; and `='.
+stringchar = DIGIT / ALPHA / sother / escape
+sother = %x21-%x29 / %x2a-%x2b /
+ %x2d-%x2f / %x3a-%x40 /
+ %x5b-%x60 / %7b-%7e
+ ; i.e., all characters except `,'
+allchar = DIGIT / ALPHA / HTAB / SP
+escape = "\e" HEXDIG HEXDIG
+ ; Used for reserved characters
+.fi
+.in -2
+
+.sp
+.LP
+The properties fall into one of the following categories:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBDA\fR Configuration
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Static Scope Configuration
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Tracing and Logging
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Serialized Proxy Registrations
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Networking Configuration Parameters
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBUA\fR Configuration
+.RE
+.SS "DA Configuration"
+.sp
+.LP
+The following are configuration properties and their parameters for \fBDA\fRs:
+.sp
+.ne 2
+.na
+\fB\fBnet.slp.isDA\fR\fR
+.ad
+.RS 24n
+.sp
+.ne 2
+.na
+\fBSetting Type\fR
+.ad
+.RS 19n
+Boolean
+.RE
+
+.sp
+.ne 2
+.na
+\fBDefault Value\fR
+.ad
+.RS 19n
+\fBFalse\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fBRange of Values\fR
+.ad
+.RS 19n
+\fBTrue\fR or \fBFalse\fR
+.RE
+
+A boolean that indicates whether \fBslpd\fR(8) is to act as a \fBDA\fR. If
+\fBFalse\fR, \fBslpd\fR(8) is not run as a \fBDA\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnet.slp.DAHeartBeat\fR\fR
+.ad
+.RS 24n
+.sp
+.ne 2
+.na
+\fBSetting Type\fR
+.ad
+.RS 19n
+Integer
+.RE
+
+.sp
+.ne 2
+.na
+\fBDefault Value\fR
+.ad
+.RS 19n
+10800 seconds (3 hours)
+.RE
+
+.sp
+.ne 2
+.na
+\fBRange of Values\fR
+.ad
+.RS 19n
+2000 - 259200000 seconds
+.RE
+
+A 32-bit integer giving the number of seconds for the passive \fBDA\fR
+advertisement heartbeat. The default value is 10800 seconds. This property is
+ignored if \fBnet.slp.isDA\fR is \fBFalse\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnet.slp.DAAttributes\fR\fR
+.ad
+.RS 24n
+.sp
+.ne 2
+.na
+\fBSetting Type\fR
+.ad
+.RS 19n
+List of Strings
+.RE
+
+.sp
+.ne 2
+.na
+\fBDefault Value\fR
+.ad
+.RS 19n
+Unassigned
+.RE
+
+.sp
+.ne 2
+.na
+\fBRange of Values\fR
+.ad
+.RS 19n
+List of Attribute Tag/Value List Pairs
+.RE
+
+A comma-separated list of parenthesized attribute tag/value list pairs that the
+\fBDA\fR must advertise in \fBDA\fR advertisements. The property must be in
+the \fBSLP\fR attribute list wire format, which requires that you use a
+backslash ("\\") to escape reserved characters. See \fIRFC 2608\fR for more
+information on reserved characters, or refer to the \fISystem Administration
+Guide: Network Services\fR.
+.RE
+
+.SS "Static Scope Configuration"
+.sp
+.LP
+The following properties and their parameters allow you to configure various
+aspects of scope and \fBDA\fR handling:
+.sp
+.ne 2
+.na
+\fB\fBnet.slp.useScopes\fR\fR
+.ad
+.RS 23n
+.sp
+.ne 2
+.na
+\fBSetting Type\fR
+.ad
+.RS 19n
+List of Strings
+.RE
+
+.sp
+.ne 2
+.na
+\fBDefault Value\fR
+.ad
+.RS 19n
+\fBDefault\fR, for \fBSA\fR and \fBDA\fR; unassigned for \fBUA\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBRange of Values\fR
+.ad
+.RS 19n
+List of Strings
+.RE
+
+A list of strings indicating either the scopes that a \fBUA\fR or an \fBSA\fR
+is allowed to use when making requests, or the scopes a \fBDA\fR must
+support. If not present for the \fBDA\fR and \fBSA\fR, the default scope
+\fBDefault\fR is used. If not present for the \fBUA\fR, then the user scoping
+model is in force, in which active and passive \fBDA\fR or \fBSA\fR discovery
+are used for scope discovery. The scope \fBDefault\fR is used if no other
+information is available. If a \fBDA\fR or \fBSA\fR gets another scope in a
+request, a \fBSCOPE_NOT_SUPPORTED\fR error is returned, unless the request was
+multicast, in which case it is dropped. If a \fBDA\fR receives another scope in
+a registration, a \fBSCOPE_NOT_SUPPORTED\fR error will be returned. Unlike
+other properties, this property is "read-only", so attempts to change it
+programmatically after the configuration file has been read are ignored.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnet.slp.DAAddresses\fR\fR
+.ad
+.RS 23n
+.sp
+.ne 2
+.na
+\fBSetting Type\fR
+.ad
+.RS 19n
+List of Strings
+.RE
+
+.sp
+.ne 2
+.na
+\fBDefault Value\fR
+.ad
+.RS 19n
+Unassigned
+.RE
+
+.sp
+.ne 2
+.na
+\fBRange of Values\fR
+.ad
+.RS 19n
+IPv4 addresses or host names
+.RE
+
+A list of \fBIP\fR addresses or \fBDNS\fR-resolvable names that denote
+the \fBDA\fRs to use for statically configured \fBUA\fRs and \fBSA\fRs. The
+property is read by \fBslpd\fR(8), and registrations are forwarded to the
+\fBDA\fRs. The \fBDA\fRs are provided to \fBUA\fRs upon request. Unlike other
+properties, this property is "read-only", so attempts to change it after the
+configuration file has been read are ignored.
+.sp
+The following grammar describes the property:
+.sp
+.in +2
+.nf
+addr-list = addr / addr "," addr-list
+addr = fqdn / hostnumber
+fqdn = ALPHA / ALPHA *[ anum / "-" ] anum
+anum = ALPHA / DIGIT
+hostnumber = 1*3DIGIT 3("." 1*3DIGIT)
+.fi
+.in -2
+
+The following is an example using this grammar:
+.sp
+.in +2
+.nf
+sawah,mandi,sambal
+.fi
+.in -2
+
+\fBIP\fR addresses can be used instead of host names in networks where
+\fBDNS\fR is not deployed, but network administrators are reminded that using
+\fBIP\fR addresses will complicate machine renumbering, since the \fBSLP\fR
+configuration property files in statically configured networks will have to be
+changed.
+.RE
+
+.SS "Tracing and Logging"
+.sp
+.LP
+These properties direct tracing and logging information to be sent to
+\fBsyslogd\fR at the \fBLOG_INFO\fR priority. These properties affect
+\fBslpd\fR(8) only.
+.sp
+.ne 2
+.na
+\fB\fBnet.slp.traceDATraffic\fR\fR
+.ad
+.RS 26n
+.sp
+.ne 2
+.na
+\fBSetting Type\fR
+.ad
+.RS 19n
+Boolean
+.RE
+
+.sp
+.ne 2
+.na
+\fBDefault Value\fR
+.ad
+.RS 19n
+\fBFalse\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fBRange of Values\fR
+.ad
+.RS 19n
+\fBTrue\fR or \fBFalse\fR
+.RE
+
+Set \fBnet.slp.traceDATraffic\fR to \fBTrue\fR to enable logging of \fBDA\fR
+traffic by \fBslpd\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnet.slp.traceMsg\fR\fR
+.ad
+.RS 26n
+.sp
+.ne 2
+.na
+\fBSetting Type\fR
+.ad
+.RS 19n
+Boolean
+.RE
+
+.sp
+.ne 2
+.na
+\fBDefault Value\fR
+.ad
+.RS 19n
+\fBFalse\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fBRange of Values\fR
+.ad
+.RS 19n
+\fBTrue\fR or \fBFalse\fR
+.RE
+
+Set \fBnet.slp.traceMsg\fR to \fBTrue\fR to display details about \fBSLP\fR
+messages. The fields in all incoming messages and outgoing replies are
+printed by \fBslpd\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnet.slp.traceDrop\fR\fR
+.ad
+.RS 26n
+.sp
+.ne 2
+.na
+\fBSetting Type\fR
+.ad
+.RS 19n
+Boolean
+.RE
+
+.sp
+.ne 2
+.na
+\fBDefault Value\fR
+.ad
+.RS 19n
+\fBFalse\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fBRange of Values\fR
+.ad
+.RS 19n
+\fBTrue\fR or \fBFalse\fR
+.RE
+
+Set this property to \fBTrue\fR to display details when an \fBSLP\fRmessage is
+dropped by \fBslpd\fR for any reason.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnet.slp.traceReg\fR\fR
+.ad
+.RS 26n
+.sp
+.ne 2
+.na
+\fBSetting Type\fR
+.ad
+.RS 19n
+Boolean
+.RE
+
+.sp
+.ne 2
+.na
+\fBDefault Value\fR
+.ad
+.RS 19n
+\fBFalse\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fBRange of Values\fR
+.ad
+.RS 19n
+\fBTrue\fR or \fBFalse\fR
+.RE
+
+Set this property to \fBTrue\fR to display the table of service advertisements
+when a registration or deregistration is processed by \fBslpd\fR.
+.RE
+
+.SS "Serialized Proxy Registrations"
+.sp
+.LP
+The following properties control reading and writing serialized
+registrations.
+.sp
+.ne 2
+.na
+\fB\fBnet.slp.serializedRegURL\fR\fR
+.ad
+.RS 28n
+.sp
+.ne 2
+.na
+\fBSetting Type\fR
+.ad
+.RS 19n
+String
+.RE
+
+.sp
+.ne 2
+.na
+\fBDefault Value\fR
+.ad
+.RS 19n
+Unassigned
+.RE
+
+.sp
+.ne 2
+.na
+\fBRange of Values\fR
+.ad
+.RS 19n
+Valid \fBURL\fR
+.RE
+
+A string containing a \fBURL\fR pointing to a document, which contains
+serialized registrations that should be processed when the \fBslpd\fR starts
+up.
+.RE
+
+.SS "Networking Configuration Parameters"
+.sp
+.LP
+The properties that follow allow you to set various network configuration
+parameters:
+.sp
+.ne 2
+.na
+\fB\fBnet.slp.isBroadcastOnly\fR\fR
+.ad
+.sp .6
+.RS 4n
+.sp
+.ne 2
+.na
+\fBSetting Type\fR
+.ad
+.RS 19n
+Boolean
+.RE
+
+.sp
+.ne 2
+.na
+\fBDefault Value\fR
+.ad
+.RS 19n
+\fBFalse\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fBRange of Values\fR
+.ad
+.RS 19n
+\fBTrue\fR or \fBFalse\fR
+.RE
+
+A boolean that indicates if broadcast should be used instead of multicast.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnet.slp.multicastTTL\fR\fR
+.ad
+.sp .6
+.RS 4n
+.sp
+.ne 2
+.na
+\fBSetting Type\fR
+.ad
+.RS 19n
+Positive Integer
+.RE
+
+.sp
+.ne 2
+.na
+\fBDefault Value\fR
+.ad
+.RS 19n
+\fB255\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fBRange of Values\fR
+.ad
+.RS 19n
+A positive integer from 1 to 255.
+.RE
+
+A positive integer less than or equal to 255 that defines the multicast
+\fBTTL\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnet.slp.DAActiveDiscoveryInterval\fR\fR
+.ad
+.sp .6
+.RS 4n
+.sp
+.ne 2
+.na
+\fBSetting Type\fR
+.ad
+.RS 19n
+Integer
+.RE
+
+.sp
+.ne 2
+.na
+\fBDefault Value\fR
+.ad
+.RS 19n
+900 seconds (15 minutes)
+.RE
+
+.sp
+.ne 2
+.na
+\fBRange of Values\fR
+.ad
+.RS 19n
+From 300 to 10800 seconds
+.RE
+
+A 16-bit positive integer giving the number of seconds between \fBDA\fR active
+discovery queries. The default value is 900 seconds (15 minutes). If the
+property is set to zero, active discovery is turned off. This is useful when
+the \fBDA\fRs available are explicitly restricted to those obtained from the
+\fBnet.slp.DAAddresses\fR property.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnet.slp.multicastMaximumWait\fR\fR
+.ad
+.sp .6
+.RS 4n
+.sp
+.ne 2
+.na
+\fBSetting Type\fR
+.ad
+.RS 19n
+Integer
+.RE
+
+.sp
+.ne 2
+.na
+\fBDefault Value\fR
+.ad
+.RS 19n
+15000 milliseconds (15 seconds)
+.RE
+
+.sp
+.ne 2
+.na
+\fBRange of Values\fR
+.ad
+.RS 19n
+ 1000 to 60000 milliseconds
+.RE
+
+A 32-bit integer giving the maximum value for the sum of the
+\fBnet.slp.multicastTimeouts\fR values and \fBnet.slp.DADiscoveryTimeouts\fR
+values in milliseconds.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnet.slp.multicastTimeouts\fR\fR
+.ad
+.sp .6
+.RS 4n
+.sp
+.ne 2
+.na
+\fBSetting Type\fR
+.ad
+.RS 19n
+List of Integers
+.RE
+
+.sp
+.ne 2
+.na
+\fBDefault Value\fR
+.ad
+.RS 19n
+\fB3000,3000,3000,3000\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fBRange of Values\fR
+.ad
+.RS 19n
+List of Positive Integers
+.RE
+
+A list of 32-bit integers used as timeouts, in milliseconds, to implement the
+multicast convergence algorithm. Each value specifies the time to wait before
+sending the next request, or until nothing new has been learned from two
+successive requests. In a fast network the aggressive values of
+\fB1000,1250,1500,2000,4000\fR allow better performance. The sum of the list
+must equal \fBnet.slp.multicastMaximumWait\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnet.slp.passiveDADetection\fR\fR
+.ad
+.sp .6
+.RS 4n
+.sp
+.ne 2
+.na
+\fBSetting Type\fR
+.ad
+.RS 19n
+Boolean
+.RE
+
+.sp
+.ne 2
+.na
+\fBDefault Value\fR
+.ad
+.RS 19n
+\fBTrue\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fBRange of Values\fR
+.ad
+.RS 19n
+\fBTrue\fR or \fBFalse\fR
+.RE
+
+A boolean indicating whether \fBslpd\fR should perform passive \fBDA\fR
+detection.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnet.slp.DADiscoveryTimeouts\fR\fR
+.ad
+.sp .6
+.RS 4n
+.sp
+.ne 2
+.na
+\fBSetting Type\fR
+.ad
+.RS 19n
+List of Integers.
+.RE
+
+.sp
+.ne 2
+.na
+\fBDefault Value\fR
+.ad
+.RS 19n
+\fB2000,2000,2000,2000,3000,4000\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fBRange of Values\fR
+.ad
+.RS 19n
+List of Positive Integers
+.RE
+
+A list of 32-bit integers used as timeouts, in milliseconds, to implement the
+multicast convergence algorithm during active \fBDA\fR discovery. Each value
+specifies the time to wait before sending the next request, or until nothing
+new has been learned from two successive requests. The sum of the list must
+equal \fBnet.slp.multicastMaximumWait\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnet.slp.datagramTimeouts\fR\fR
+.ad
+.sp .6
+.RS 4n
+.sp
+.ne 2
+.na
+\fBSetting Type\fR
+.ad
+.RS 19n
+List of Integers
+.RE
+
+.sp
+.ne 2
+.na
+\fBDefault Value\fR
+.ad
+.RS 19n
+\fB3000,3000,3000\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fBRange of Values\fR
+.ad
+.RS 19n
+List of Positive Integers
+.RE
+
+A list of 32-bit integers used as timeouts, in milliseconds, to implement
+unicast datagram transmission to \fBDA\fRs. The \fIn\fRth value gives the time
+to block waiting for a reply on the \fIn\fRth try to contact the \fBDA\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnet.slp.randomWaitBound\fR\fR
+.ad
+.sp .6
+.RS 4n
+.sp
+.ne 2
+.na
+\fBSetting Type\fR
+.ad
+.RS 19n
+Integer
+.RE
+
+.sp
+.ne 2
+.na
+\fBDefault Value\fR
+.ad
+.RS 19n
+1000 milliseconds (1 second)
+.RE
+
+.sp
+.ne 2
+.na
+\fBRange of Values\fR
+.ad
+.RS 19n
+1000 to 3000 milliseconds
+.RE
+
+Sets the upper bound for calculating the random wait time before attempting to
+contact a \fBDA\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnet.slp.MTU\fR\fR
+.ad
+.sp .6
+.RS 4n
+.sp
+.ne 2
+.na
+\fBSetting Type\fR
+.ad
+.RS 19n
+Integer
+.RE
+
+.sp
+.ne 2
+.na
+\fBDefault Value\fR
+.ad
+.RS 19n
+1400
+.RE
+
+.sp
+.ne 2
+.na
+\fBRange of Values\fR
+.ad
+.RS 19n
+128 to 8192
+.RE
+
+A 16-bit integer that specifies the network packet size, in bytes. The packet
+size includes \fBIP\fR and \fBTCP\fR or \fBUDP\fR headers.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnet.slp.interfaces\fR\fR
+.ad
+.sp .6
+.RS 4n
+.sp
+.ne 2
+.na
+\fBSetting Type\fR
+.ad
+.RS 19n
+List of Strings
+.RE
+
+.sp
+.ne 2
+.na
+\fBDefault Value\fR
+.ad
+.RS 19n
+Default interface
+.RE
+
+.sp
+.ne 2
+.na
+\fBRange of Values\fR
+.ad
+.RS 19n
+IPv4 addresses or host names
+.RE
+
+List of strings giving the \fBIP\fR addresses or host names of the network
+interface cards on which the \fBDA\fR or \fBSA\fR should listen on port 427 for
+multicast, unicast \fBUDP\fR, and \fBTCP\fR messages. The default value is
+unassigned, indicating that the default network interface card should be used.
+An example is:
+.sp
+.in +2
+.nf
+195.42.42.42,195.42.142.1,195.42.120.1
+.fi
+.in -2
+
+The example machine has three interfaces on which the \fBDA\fR should listen.
+Note that if \fBIP\fR addresses are used, the property must be renumbered if
+the network is renumbered.
+.RE
+
+.SS "UA Configuration"
+.sp
+.LP
+The following configuration parameters apply to the \fBUA\fR:
+.sp
+.ne 2
+.na
+\fB\fBnet.slp.locale\fR\fR
+.ad
+.RS 22n
+.sp
+.ne 2
+.na
+\fBSetting Type\fR
+.ad
+.RS 19n
+String
+.RE
+
+.sp
+.ne 2
+.na
+\fBDefault Value\fR
+.ad
+.RS 19n
+\fBen\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fBRange of Values\fR
+.ad
+.RS 19n
+See \fIRFC 1766\fR for a list of the locale language tag names.
+.RE
+
+A \fIRFC 1766\fR Language Tag for the language locale. Setting this
+property causes the property value to become the default locale for
+\fBSLP\fR messages.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnet.slp.maxResults\fR\fR
+.ad
+.RS 22n
+.sp
+.ne 2
+.na
+\fBSetting Type\fR
+.ad
+.RS 19n
+Integer
+.RE
+
+.sp
+.ne 2
+.na
+\fBDefault Value\fR
+.ad
+.RS 19n
+\fB-1\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fBRange of Values\fR
+.ad
+.RS 19n
+\fB-1\fR, positive integer
+.RE
+
+A 32 bit-integer that specifies the maximum number of results to accumulate and
+return for a synchronous request before the timeout, or the maximum number of
+results to return through a callback if the request results are reported
+asynchronously. Positive integers and \fB-1\fR are legal values. If the value
+of \fBnet.slp.maxResults\fR is \fB-1\fR, all results should be returned.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnet.slp.typeHint\fR\fR
+.ad
+.RS 22n
+.sp
+.ne 2
+.na
+\fBSetting Type\fR
+.ad
+.RS 19n
+List of Strings
+.RE
+
+.sp
+.ne 2
+.na
+\fBDefault Value\fR
+.ad
+.RS 19n
+Unassigned
+.RE
+
+.sp
+.ne 2
+.na
+\fBRange of Values\fR
+.ad
+.RS 19n
+Service type names
+.RE
+
+A list of service type names. In the absence of any \fBDA\fRs, \fBUA\fRs
+perform \fBSA\fR discovery to find scopes. If the \fBnet.slp.typeHint\fR
+property is set, only \fBSA\fR's advertising types on the list respond. Note
+that \fBUA\fRs set this property programmatically. It is not typically set in
+the configuration file. The default is unassigned, meaning do not restrict the
+type.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+CSI Enabled
+_
+Interface Stability Standard
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR slp_api (3SLP),
+.BR slp (4P),
+.BR slpd.reg (5),
+.BR slpd (8)
+.sp
+.LP
+\fISystem Administration Guide: Network Services\fR
+.sp
+.LP
+Alvestrand, H. \fIRFC 1766: Tags for the Identification of Languages\fR.
+Network Working Group. March 1995.
+.sp
+.LP
+Crocker, D., Overell, P. \fIRFC 2234, Augmented BNF for Syntax Specifications:
+ABNF\fR. The Internet Society. 1997.
+.sp
+.LP
+Kempf, J. and Guttman, E. \fIRFC 2614, An API for Service Location\fR. The
+Internet Society. June 1999.
diff --git a/usr/src/man/man5/slpd.reg.5 b/usr/src/man/man5/slpd.reg.5
new file mode 100644
index 0000000000..651f32b6c4
--- /dev/null
+++ b/usr/src/man/man5/slpd.reg.5
@@ -0,0 +1,151 @@
+'\" te
+.\" Copyright (C) 2000, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SLPD.REG 5 "Nov 17, 1999"
+.SH NAME
+slpd.reg \- serialized registration file for the service location protocol
+daemon (slpd)
+.SH SYNOPSIS
+.LP
+.nf
+\fB/etc/inet/slpd.reg\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+The serialized registration file contains a group of registrations that
+\fBslpd\fR(8) registers when it starts. These registrations are primarily for
+older service programs that do not internally support \fBSLP\fR and cannot be
+converted. The character format of the registration file is required to be
+\fBASCII\fR. To use serialized registrations, set the
+\fBnet.slp.serializedRegURL\fR property in \fBslp.conf\fR(5) to point at a
+valid \fBslpd.reg\fR file. The syntax of the serialized registration file, in
+\fBABNF\fR format (see \fIRFC 2234\fR), is as follows:
+.sp
+.in +2
+.nf
+ser-file = reg-list
+reg-list = reg / reg reg-list
+reg = creg / ser-reg
+creg = comment-line ser-reg
+comment-line = ( "#" / ";" ) 1*allchar newline
+ser-reg = url-props [slist] [attr-list] newline
+url-props = surl "," lang "," ltime [ "," type ] newline
+surl = ;The registration's URL. See
+ ; [8] for syntax.
+lang = 1*8ALPHA [ "-" 1*8ALPHA ]
+ ;RFC 1766 Language Tag see [6].
+ltime = 1*5DIGIT
+ ; A positive 16-bit integer
+ ; giving the lifetime
+ ; of the registration.
+type = ; The service type name, see [7]
+ ; and [8] for syntax.
+slist = "scopes" "=" scope-list newline
+scope-list = scope-name / scope-name "," scope-list
+scope = ; See grammar of [7] for
+ ; scope-name syntax.
+attr-list = attr-def / attr-def attr-list
+attr-def = ( attr / keyword ) newline
+keyword = attr-id
+attr = attr-id "=" attr-val-list
+attr-id = ;Attribute id, see [7] for syntax.
+attr-val-list = attr-val / attr-val "," attr-val-list
+attr-val = ;Attribute value, see [7] for syntax
+allchar = char / WSP
+char = DIGIT / ALPHA / other
+other = %x21-%x2f / %x3a-%x40 /
+ %x5b-%x60 / %7b-%7e
+ ; All printable, nonwhitespace US-ASCII
+ ; characters.
+newline = CR / ( CRLF )
+.fi
+.in -2
+
+.sp
+.LP
+The syntax for attributes and attribute values requires that you use a
+backslash to escape special characters, in addition to non-\fBASCII\fR
+characters, as specified in \fIRFC 2608\fR. The \fBslpd\fR command handles
+serialized registrations exactly as if they were registered by an \fBSA\fR. In
+the \fBurl-props\fR production, the type token is optional. If the type token
+is present for a service: \fBURL\fR, a warning is signalled, and the type name
+is ignored. If the maximum lifetime of \fB65535\fR seconds is specified, the
+registration is taken to be permanent, and it is continually refreshed by the
+\fBDA\fR or \fBSA\fR server until it exits.
+.sp
+.LP
+Scopes can be included in a registration by including an attribute definition
+with tag \fBscopes\fR followed by a comma-separated list of scope names
+immediately after the \fBurl-props\fR production. If the optional
+\fBscope-list\fR is present, the registrations are made in the indicated scopes;
+otherwise, they are registered in the scopes with which the \fBDA\fR or
+\fBSA\fR server was configured through the \fBnet.slp.useScopes\fR property. If
+any conflicts occur between the scope list and the \fBnet.slp.useScopes\fR
+property, an error message is issued by way of \fBsyslog\fR(3C). Refer to
+information regarding \fBLOG_INFO\fR in \fBsyslog\fR(3C).
+.sp
+.LP
+Service advertisements are separated by a single blank line. Additionally, the
+file must end with a single blank line.
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRUsing a Serialized Registration File
+.sp
+.LP
+The following serialized registration file shows an instance of the service
+type \fBfoo\fR, with a lifetime of \fB65535\fR seconds, in the \fBen\fR
+locale, with scope \fBsomescope\fR:
+
+.sp
+.in +2
+.nf
+# register foo
+service:foo://fooserver/foopath,en,65535
+scopes=somescope
+description=bogus
+security=kerberos_v5
+location=headquarters
+
+# next registration...
+.fi
+.in -2
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+CSI Enabled
+_
+Interface Stability Standard
+.TE
+
+.SH SEE ALSO
+.LP
+.BR syslog (3C),
+.BR slp_api (3SLP),
+.BR slp.conf (5),
+.BR attributes (7),
+.BR slpd (8)
+.sp
+.LP
+Crocker, D. and Overell, P., \fIRFC 2234, Augmented BNF for Syntax
+Specifications: ABNF\fR, The Internet Society, November 1997.
+.sp
+.LP
+Guttman, E., Perkins, C., Veizades, J., and Day, M., \fIRFC 2608, Service
+Location Protocol, Version 2\fR, The Internet Society, June 1999.
+.sp
+.LP
+Kempf, J. and Guttman, E., \fIRFC 2614, An API for Service Location\fR, The
+Internet Society, June 1999.
diff --git a/usr/src/man/man5/smb.5 b/usr/src/man/man5/smb.5
new file mode 100644
index 0000000000..50977b3e1a
--- /dev/null
+++ b/usr/src/man/man5/smb.5
@@ -0,0 +1,621 @@
+'\" te
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 2017, Nexenta Systems, Inc. All Rights Reserved.
+.\" Copyright 2021, RackTop Systems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.\"
+.TH SMB 5 "December 28, 2020"
+.SH NAME
+smb \- configuration properties for Solaris CIFS server
+.SH DESCRIPTION
+Behavior of the Solaris CIFS server is defined by property values that are
+stored in the Service Management Facility, \fBsmf\fR(7).
+.sp
+.LP
+An authorized user can use the \fBsharectl\fR(8) command to set global values
+for these properties in SMF.
+.sp
+.LP
+The following list describes the properties:
+.sp
+.ne 2
+.na
+\fB\fBads_site\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the site configured in DNS to look up Active Directory information.
+Sites provide a mechanism to partition or delegate administration and policy
+management, which are typically used in large or complex domains.
+.sp
+The value should not be set if you do not have a local Active Directory site.
+By default, no value is set.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBautohome_map\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the full path for the SMD autohome map file, \fBsmbautohome\fR. The
+default path is \fB/etc\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBbypass_traverse_checking\fR\fR
+.ad
+.sp .6
+.RS 4n
+When set, allows the SMB server to bypass ACL "traverse" checks.
+The default value is \fBtrue\fR, for Windows compatibility.
+If this parameter is \fBfalse\fR, ACL checks require that
+"traverse" (directory execute) is granted on every directory
+above the directory the SMB client tries to access.
+Windows shares are normally setup with the higher level
+directories not specifically granting such access.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdisposition\fR\fR
+.ad
+.sp .6
+.RS 4n
+A value that controls whether to disconnect the share or proceed if the map
+command fails. The disposition property only has meaning when the map property
+has been set. Otherwise it will have no effect.
+.sp
+.in +2
+.nf
+disposition = [ continue | terminate ]
+.fi
+.in -2
+.sp
+
+.sp
+.ne 2
+.na
+\fB\fBcontinue\fR\fR
+.ad
+.sp .6
+.RS 4n
+Proceed with share connection if the map command fails. This is the default in
+the event that disposition is not specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBterminate\fR\fR
+.ad
+.sp .6
+.RS 4n
+Disconnect the share if the map command fails.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBddns_enable\fR\fR
+.ad
+.sp .6
+.RS 4n
+Enables or disables dynamic DNS updates. A value of \fBtrue\fR enables dynamic
+updates, while a value of \fBfalse\fR disables dynamic updates. By default, the
+value is \fBfalse\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBencrypt\fR\fR
+.ad
+.sp .6
+.RS 4n
+Controls SMB3 Encryption. For requests on a particular share, the server's
+behavior is controlled by the stricter of this option and the per-share
+"encrypt" option.
+.sp
+When set to \fBdisabled\fR, the server will not ask clients to encrypt requests.
+When set to \fBenabled\fR, the server will ask clients to encrypt requests,
+but will not require that they do so. Any message that can be encrypted
+will be encrypted.
+When set to \fBrequired\fR, the server will deny access to or disconnect
+any client that does not support encryption or fails to encrypt requests
+that they should.
+.sp
+In other words, the \fBenabled\fR behavior is that any message that CAN
+be encrypted SHOULD be encrypted, while the \fBrequired\fR behavior is that any
+message that CAN be encrypted MUST be encrypted.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBencrypt_cipher\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies a list of enabled SMB 3.1.1 encryption ciphers. This property is only
+used when encryption is On (see \fBencrypt\fR property) and negotiated SMB
+dialect is 3.1.1 or higher (see \fBmax_protocol\fR property). Otherwise it is
+ignored.
+.sp
+When the property is set, a list of comma separated ciphers should be specified,
+or the value \fBall\fR should be used instead to enable all supported ciphers.
+By default, when the property is empty, it is equivalent to value \fBall\fR -
+all available ciphers will be enabled.
+.sp
+The list of ciphers should contain these values:
+.sp
+.ne 2
+.na
+\fBaes128-ccm\fR
+.ad
+.RS 13n
+AES-128-CCM cipher is enabled. It is the only cipher used for SMB 3.0.2
+dialect.
+.RE
+
+.sp
+.ne 2
+.na
+\fBaes128-gcm\fR
+.ad
+.RS 13n
+AES-128-GCM cipher is enabled.
+preferred.
+.RE
+
+.sp
+.ne 2
+.na
+\fBall\fR
+.ad
+.RS 13n
+All ciphers are enabled.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBipv6_enable\fR\fR
+.ad
+.sp .6
+.RS 4n
+Enables IPv6 Internet protocol support within the CIFS Service. Valid values
+are \fBtrue\fR and \fBfalse\fR. The default value is \fBfalse\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBkeep_alive\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the number of seconds before an idle SMB connection is dropped by the
+Solaris CIFS server. If set to 0, idle connections are not dropped. Valid
+values are 0 and from 20 seconds and above. The default value is 0.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBlmauth_level\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the LAN Manager (LM) authentication level. The LM compatibility level
+controls the type of user authentication to use in workgroup mode or domain
+mode. The default value is 3.
+.sp
+The following describes the behavior at each level.
+.sp
+.ne 2
+.na
+\fB2\fR
+.ad
+.RS 13n
+In Windows workgroup mode, the Solaris CIFS server accepts LM, NTLM, LMv2, and
+NTLMv2 requests. In domain mode, the SMB redirector on the Solaris CIFS server
+sends NTLM requests.
+.RE
+
+.sp
+.ne 2
+.na
+\fB3\fR
+.ad
+.RS 13n
+In Windows workgroup mode, the Solaris CIFS server accepts LM, NTLM, LMv2, and
+NTLMv2 requests. In domain mode, the SMB redirector on the Solaris CIFS server
+sends LMv2 and NTLMv2 requests.
+.RE
+
+.sp
+.ne 2
+.na
+\fB4\fR
+.ad
+.RS 13n
+In Windows workgroup mode, the Solaris CIFS server accepts NTLM, LMv2, and
+NTLMv2 requests. In domain mode, the SMB redirector on the Solaris CIFS server
+sends LMv2 and NTLMv2 requests.
+.RE
+
+.sp
+.ne 2
+.na
+\fB5\fR
+.ad
+.RS 13n
+In Windows workgroup mode, the Solaris CIFS server accepts LMv2 and NTLMv2
+requests. In domain mode, the SMB redirector on the Solaris CIFS server sends
+LMv2 and NTLMv2 requests.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmap\fR\fR
+.ad
+.sp .6
+.RS 4n
+The value is a command to be executed when connecting to the share. The command
+can take the following arguments, which will be substituted when the command is
+exec'd as described below:
+.sp
+.ne 2
+.na
+\fB\fB%U\fR\fR
+.ad
+.sp .6
+.RS 4n
+Windows username.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB%D\fR\fR
+.ad
+.sp .6
+.RS 4n
+Name of the domain or workgroup of \fB%U\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB%h\fR\fR
+.ad
+.sp .6
+.RS 4n
+The server hostname.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB%M\fR\fR
+.ad
+.sp .6
+.RS 4n
+The client hostname, or \fB""\fR if not available.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB%L\fR\fR
+.ad
+.sp .6
+.RS 4n
+The server NetBIOS name.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB%m\fR\fR
+.ad
+.sp .6
+.RS 4n
+The client NetBIOS name, or \fB""\fR if not available. This option is only
+valid for NetBIOS connections (port 139).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB%I\fR\fR
+.ad
+.sp .6
+.RS 4n
+The IP address of the client machine.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB%i\fR\fR
+.ad
+.sp .6
+.RS 4n
+The local IP address to which the client is connected.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB%S\fR\fR
+.ad
+.sp .6
+.RS 4n
+The name of the share.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB%P\fR\fR
+.ad
+.sp .6
+.RS 4n
+The root directory of the share.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB%u\fR\fR
+.ad
+.sp .6
+.RS 4n
+The UID of the Unix user.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmax_protocol\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the maximum SMB protocol level that the SMB service
+should allow clients to negotiate. The default value is \fB3.11\fR.
+Valid settings include: \fB1\fR, \fB2.1\fR, \fB3.0\fR, \fB3.02\fR, \fB3.11\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmin_protocol\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the minimum SMB protocol level that the SMB service
+should allow clients to negotiate. The default value is \fB1\fR.
+Valid settings include: \fB1\fR, \fB2.1\fR, \fB3.0\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmax_workers\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the maximum number of worker threads that will be launched to process
+incoming CIFS requests. The SMB \fBmax_mpx\fR value, which indicates to a
+client the maximum number of outstanding SMB requests that it may have pending
+on the server, is derived from the \fBmax_workers\fR value. To ensure
+compatibility with older versions of Windows the lower 8-bits of \fBmax_mpx\fR
+must not be zero. If the lower byte of \fBmax_workers\fR is zero, \fB64\fR is
+added to the value. Thus the minimum value is \fB64\fR and the default value,
+which appears in \fBsharectl\fR(8) as \fB1024\fR, is \fB1088\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnetbios_scope\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the NetBIOS scope identifier, which identifies logical NetBIOS
+networks that are on the same physical network. When you specify a NetBIOS
+scope identifier, the server filters the number of machines that are listed in
+the browser display to make it easier to find other hosts. The value is a text
+string that represents a domain name. By default, no value is set.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBoplock_enable\fR\fR
+.ad
+.sp .6
+.RS 4n
+Controls whether "oplocks" may be granted by the SMB server.
+The term "oplock" is short for "opportunistic lock", which is
+the legacy name for cache delegations in SMB.
+By default, oplocks are enabled.
+Note that if oplocks are disabled, file I/O performance may be
+severely reduced.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpdc\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the preferred IP address for the domain controller. This property is
+sometimes used when there are multiple domain controllers to indicate which one
+is preferred. If the specified domain controller responds, it is chosen even if
+the other domain controllers are also available. By default, no value is set.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrestrict_anonymous\fR\fR
+.ad
+.sp .6
+.RS 4n
+Disables anonymous access to IPC$, which requires that the client be
+authenticated to get access to MSRPC services through IPC$. A value of
+\fBtrue\fR disables anonymous access to IPC$, while a value of \fBfalse\fR
+enables anonymous access.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsigning_enabled\fR\fR
+.ad
+.sp .6
+.RS 4n
+Enables SMB signing. When signing is enabled but not required it is possible
+for clients to connect regardless of whether or not the client supports SMB
+signing. If a packet has been signed, the signature will be verified. If a
+packet has not been signed it will be accepted without signature verification.
+Valid values are \fBtrue\fR and \fBfalse\fR. The default value is \fBfalse\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsigning_required\fR\fR
+.ad
+.sp .6
+.RS 4n
+When SMB signing is required, all packets must be signed or they will be
+rejected, and clients that do not support signing will be unable to connect to
+the server. The \fBsigning_required\fR setting is only taken into account when
+\fBsigning_enabled\fR is \fBtrue\fR. Valid values are \fBtrue\fR and
+\fBfalse\fR. The default value is \fBfalse\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsystem_comment\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies an optional description for the system, which is a text string. This
+property value might appear in various places, such as Network Neighborhood or
+Network Places on Windows clients. By default, no value is set.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBtraverse_mounts\fR\fR
+.ad
+.sp .6
+.RS 4n
+The \fBtraverse_mounts\fR setting determines how the SMB server
+presents sub-mounts underneath an SMB share. When \fBtraverse_mounts\fR
+is \fBtrue\fR (the default), sub-mounts are presented to SMB clients
+like any other subdirectory. When \fBtraverse_mounts\fR is \fBfalse\fR,
+sub-mounts are not shown to SMB clients.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBunmap\fR\fR
+.ad
+.sp .6
+.RS 4n
+The value is a command to be executed when disconnecting the share. The command
+can take the same substitutions listed on the \fBmap\fR property.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBwins_exclude\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies a comma-separated list of network interfaces that should not be
+registered with WINS. NetBIOS host announcements are made on excluded
+interfaces.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBwins_server_1\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the IP address of the primary WINS server. By default, no value is
+set.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBwins_server_2\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the IP address of the secondary WINS server. By default, no value is
+set.
+.RE
+
+.SH ATTRIBUTES
+See the \fBattributes\fR(7) man page for descriptions of the following
+attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Uncommitted
+.TE
+
+.SH SEE ALSO
+.BR attributes (7),
+.BR smf (7),
+.BR sharectl (8),
+.BR smbadm (8),
+.BR smbd (8),
+.BR smbstat (8)
diff --git a/usr/src/man/man5/smbautohome.5 b/usr/src/man/man5/smbautohome.5
new file mode 100644
index 0000000000..02e5a51862
--- /dev/null
+++ b/usr/src/man/man5/smbautohome.5
@@ -0,0 +1,206 @@
+'\" te
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SMBAUTOHOME 5 "Feb 25, 2017"
+.SH NAME
+smbautohome \- CIFS autohome configuration
+.SH SYNOPSIS
+.LP
+.nf
+\fBsmbautohome\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+The Solaris CIFS service can automatically share home directories when a CIFS
+client connects. The autohome map file, \fB/etc/smbautohome\fR, uses the search
+options and rules to determine whether to share a home directory when a CIFS
+client connects to the server.
+.sp
+.LP
+For example, the following entries specify the autohome rules for a particular
+environment:
+.sp
+.in +2
+.nf
++nsswitch dn=ad,dn=sun,dn=com,ou=users
+jane /home/?/& dn=ad,dn=sun,dn=com,ou=users
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The \fBnsswitch\fR autohome entry uses the naming service to match users to
+home directories. The second autohome entry specifies that the home directory
+for user \fBjane\fR is \fB/home/j/jane\fR.
+.SS "autohome Map Entry Format"
+.LP
+A map entry, which is also referred to as a mapping, uses the following format:
+.sp
+.in +2
+.nf
+\fIkey\fR \fIlocation\fR [ \fIoptions\fR ]
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+\fIkey\fR is a user name, \fIlocation\fR is the fully qualified path for the
+user's home directory, and \fIoptions\fR specifies the share options, for
+example, an AD container or description. See \fBsharemgr\fR(8) for information
+on share options.
+.sp
+.LP
+If you intend to publish the share in Active Directory (AD), you \fBmust\fR
+specify an AD container name, which is specified as a comma-separated list of
+attribute name-value pairs. The attributes use the LDAP distinguished name (DN)
+or relative distinguished name (RDN) format.
+.sp
+.LP
+The DN or RDN must be specified in LDAP format by using the following attribute
+types:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBcn=\fR represents the common name
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBou=\fR represents the organizational unit
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBdc=\fR represents the domain component
+.RE
+.sp
+.LP
+The attribute type that is used to describe an object's RDN is called a
+\fBnaming attribute\fR. AD uses the naming attributes as follows:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBcn\fR for the \fBuser\fR object class
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBou\fR for the \fBOU\fR (organizational unit) object class
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBdc\fR for the \fBdomainDns\fR object class
+.RE
+.SS "autohome Map Key Substitution"
+.LP
+The autohome feature supports the following wildcard substitutions for the
+value of the key field:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The ampersand character (\fB&\fR) is expanded to the value of the key field for
+the entry in which it occurs. In the following example, \fB&\fR expands to
+\fBjane\fR:
+.sp
+.in +2
+.nf
+jane /home/&
+.fi
+.in -2
+
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The question mark character (\fB?\fR) is expanded to the value of the first
+character in the key field for the entry in which it occurs. In the following
+example, \fB?\fR expands to \fBj\fR:
+.sp
+.in +2
+.nf
+jane /home/?/&
+.fi
+.in -2
+
+.RE
+.SS "Wildcard Rule"
+.LP
+When supplied in the key field, the asterisk character (\fB*\fR) is recognized
+as the "catch-all" entry. Such an entry matches any key not previously matched.
+.sp
+.LP
+For example, the following entry would map any user to a home directory in
+\fB/home\fR in which the home directory name was the same as the user name:
+.sp
+.in +2
+.nf
+* /home/&
+.fi
+.in -2
+
+.sp
+.LP
+The wildcard rule is \fBonly\fR applied if an appropriate rule is not matched
+by another map entry.
+.SS "NSSwitch Map"
+.LP
+The \fBnsswitch\fR map is used to request that the home directory be obtained
+from a password database, such as the local, NIS, or LDAP databases. If
+an AD path is appended, it is used to publish shares.
+.sp
+.in +2
+.nf
++nsswitch
+.fi
+.in -2
+
+.sp
+.LP
+Like the "catch-all" entry, the \fBnsswitch\fR map is \fBonly\fR searched if an
+appropriate rule is not matched by another map entry.
+.sp
+.LP
+The wildcard and \fBnsswitch\fR rules are mutually exclusive. Do not include an
+\fBnsswitch\fR rule if a wildcard rule has already been defined.
+.SH FILES
+.LP
+\fB/etc/smbautohome\fR
+.SH ATTRIBUTES
+.LP
+See the \fBattributes\fR(7) man page for descriptions of the following
+attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Uncommitted
+.TE
+
+.SH SEE ALSO
+.LP
+.BR smb (5),
+.BR attributes (7),
+.BR sharectl (8),
+.BR sharemgr (8),
+.BR smbadm (8),
+.BR smbd (8),
+.BR smbstat (8)
diff --git a/usr/src/man/man5/smf.5 b/usr/src/man/man5/smf.5
deleted file mode 100644
index f26ff03ddf..0000000000
--- a/usr/src/man/man5/smf.5
+++ /dev/null
@@ -1,499 +0,0 @@
-'\" te
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
-.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SMF 5 "Jul 6, 2009"
-.SH NAME
-smf \- service management facility
-.SH DESCRIPTION
-.sp
-.LP
-The Solaris service management facility defines a programming model for
-providing persistently running applications called \fIservices\fR. The facility
-also provides the infrastructure in which to run services. A service can
-represent a running application, the software state of a device, or a set of
-other services. Services are represented in the framework by \fIservice
-instance\fR objects, which are children of service objects. Instance objects
-can inherit or override the configuration of the parent service object, which
-allows multiple service instances to share configuration information. All
-service and instance objects are contained in a \fIscope\fR that represents a
-collection of configuration information. The configuration of the local Solaris
-instance is called the "localhost" scope, and is the only currently supported
-scope.
-.sp
-.LP
-Each service instance is named with a fault management resource identifier
-(FMRI) with the scheme \fBsvc:\fR. For example, the \fBsyslogd\fR(1M) daemon
-started at system startup is the default service instance named:
-.sp
-.in +2
-.nf
-svc://localhost/system/system-log:default
-svc:/system/system-log:default
-system/system-log:default
-.fi
-.in -2
-
-.sp
-.LP
-Many commands also allow FMRI abbreviations. See the \fBsvcs\fR(1) man page for
-one such example.
-.sp
-.LP
-In the above example, 'default' is the name of the instance
-and 'system/system-log' is the service name. Service names can comprise multiple
-components separated by slashes (/). All components, except the last, compose
-the \fIcategory\fR of the service. Site-specific services should be named with
-a category beginning with 'site'.
-.sp
-.LP
-A service instance is either enabled or disabled. All services can be enabled
-or disabled with the \fBsvcadm\fR(1M) command.
-.sp
-.LP
-The list of managed service instances on a system can be displayed with the
-\fBsvcs\fR(1) command.
-.SS "Dependencies"
-.sp
-.LP
-Service instances can have dependencies on a set of \fBentities\fR which can
-include services and files. Dependencies govern when the service is started and
-automatically stopped. When the dependencies of an enabled service are not
-satisfied, the service is kept in the offline state. When its dependencies are
-satisfied, the service is started. If the start is successful, the service is
-transitioned to the online state.
-.sp
-.LP
-Whether a dependency is satisfied is determined by its \fBgrouping\fR:
-.sp
-.ne 2
-.na
-\fB\fBrequire_all\fR\fR
-.ad
-.RS 16n
-Satisfied when all cited services are running (online or degraded), or when all
-indicated files are present.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrequire_any\fR\fR
-.ad
-.RS 16n
-Satisfied when one of the cited services is running (online or degraded), or
-when at least one of the indicated files is present.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBoptional_all\fR\fR
-.ad
-.RS 16n
-Satisfied if the cited services are running (online or degraded) or do not run
-without administrative action (disabled, maintenance, not present, or offline
-waiting for dependencies which do not start without administrative action).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBexclude_all\fR\fR
-.ad
-.RS 16n
-Satisfied when all of the cited services are disabled, in the maintenance
-state, or when cited services or files are not present.
-.RE
-
-.sp
-.LP
-Once running (online or degraded), if a service cited by a \fBrequire_all\fR,
-\fBrequire_any\fR, or \fBoptional_all\fR dependency is stopped or refreshed,
-the SMF considers why the service was stopped and the \fBrestart_on\fR
-attribute of the dependency to decide whether to stop the service.
-.sp
-.in +2
-.nf
- | restart_on value
-event | none error restart refresh
--------------------+------------------------------
-stop due to error | no yes yes yes
-non-error stop | no no yes yes
-refresh | no no no yes
-.fi
-.in -2
-
-.sp
-.LP
-A service is considered to have stopped due to an error if the service has
-encountered a hardware error or a software error such as a core dump. For
-\fBexclude_all\fR dependencies, the service is stopped if the cited service is
-started and the \fBrestart_on\fR attribute is not \fBnone\fR.
-.sp
-.LP
-The dependencies on a service can be listed with \fBsvcs\fR(1)\ or
-\fBsvccfg\fR(1M), and modified with \fBsvccfg\fR(1M).
-.SS "Restarters"
-.sp
-.LP
-Each service is managed by a restarter. The master restarter,
-\fBsvc.startd\fR(1M) manages states for the entire set of service instances and
-their dependencies. The master restarter acts on behalf of its services and on
-delegated restarters that can provide specific execution environments for
-certain application classes. For instance, \fBinetd\fR(1M) is a delegated
-restarter that provides its service instances with an initial environment
-composed of a network connection as input and output file descriptors. Each
-instance delegated to \fBinetd\fR(1M) is in the online state. While the daemon
-of a particular instance might not be running, the instance is available to
-run.
-.sp
-.LP
-As dependencies are satisfied when instances move to the online state,
-\fBsvc.startd\fR(1M) invokes start methods of other instances or directs the
-delegated restarter to do so. These operations might overlap.
-.sp
-.LP
-The current set of services and associated restarters can be examined using
-\fBsvcs\fR(1). A description of the common configuration used by all restarters
-is given in \fBsmf_restarter\fR(5).
-.SS "Methods"
-.sp
-.LP
-Each service or service instance must define a set of methods that start, stop,
-and, optionally, refresh the service. See \fBsmf_method\fR(5) for a more
-complete description of the method conventions for \fBsvc.startd\fR(1M) and
-similar \fBfork\fR(2)-\fBexec\fR(2) restarters.
-.sp
-.LP
-Administrative methods, such as for the capture of legacy configuration
-information into the repository, are discussed on the \fBsvccfg\fR(1M) manual
-page.
-.sp
-.LP
-The methods for a service can be listed and modified using the \fBsvccfg\fR(1M)
-command.
-.SS "States"
-.sp
-.LP
-Each service instance is always in a well-defined state based on its
-dependencies, the results of the execution of its methods, and its potential
-contracts events. The following states are defined:
-.sp
-.ne 2
-.na
-\fB\fBUNINITIALIZED\fR\fR
-.ad
-.RS 17n
-This is the initial state for all service instances. Instances are moved to
-maintenance, offline, or a disabled state upon evaluation by
-\fBsvc.startd\fR(1M) or the appropriate restarter.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBOFFLINE\fR\fR
-.ad
-.RS 17n
-The instance is enabled, but not yet running or available to run. If restarter
-execution of the service start method or the equivalent method is successful,
-the instance moves to the online state. Failures might lead to a degraded or
-maintenance state. Administrative action can lead to the uninitialized state.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBONLINE\fR\fR
-.ad
-.RS 17n
-The instance is enabled and running or is available to run. The specific nature
-of the online state is application-model specific and is defined by the
-restarter responsible for the service instance. Online is the expected
-operating state for a properly configured service with all dependencies
-satisfied. Failures of the instance can lead to a degraded or maintenance
-state. Failures of services on which the instance depends can lead to offline
-or degraded states.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBDEGRADED\fR\fR
-.ad
-.RS 17n
-The instance is enabled and running or available to run. The instance, however,
-is functioning at a limited capacity in comparison to normal operation.
-Failures of the instance can lead to the maintenance state. Failures of
-services on which the instance depends can lead to offline or degraded states.
-Restoration of capacity should result in a transition to the online state.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBMAINTENANCE\fR\fR
-.ad
-.RS 17n
-The instance is enabled, but not able to run. Administrative action (through
-\fBsvcadm clear\fR) is required to move the instance out of the maintenance
-state. The maintenance state might be a temporarily reached state if an
-administrative operation is underway.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBDISABLED\fR\fR
-.ad
-.RS 17n
-The instance is disabled. Enabling the service results in a transition to the
-offline state and eventually to the online state with all dependencies
-satisfied.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBLEGACY-RUN\fR\fR
-.ad
-.RS 17n
-This state represents a legacy instance that is not managed by the service
-management facility. Instances in this state have been started at some point,
-but might or might not be running. Instances can only be observed using the
-facility and are not transferred into other states.
-.RE
-
-.sp
-.LP
-States can also have transitions that result in a return to the originating
-state.
-.SS "Properties and Property Groups"
-.sp
-.LP
-The dependencies, methods, delegated restarter, and instance state mentioned
-above are represented as properties or property groups of the service or
-service instance. A service or service instance has an arbitrary number of
-property groups in which to store application data. Using property groups in
-this way allows the configuration of the application to derive the attributes
-that the repository provides for all data in the facility. The application can
-also use the appropriate subset of the \fBservice_bundle\fR(4) DTD to represent
-its configuration data within the framework.
-.sp
-.LP
-Property lookups are composed. If a property group-property combination is not
-found on the service instance, most commands and the high-level interfaces of
-\fBlibscf\fR(3LIB) search for the same property group-property combination on
-the service that contains that instance. This allows common configuration among
-service instances to be shared. Composition can be viewed as an inheritance
-relationship between the service instance and its parent service.
-.sp
-.LP
-Properties are protected from modification by unauthorized processes. See
-\fBsmf_security\fR(5).
-.SS "General Property Group"
-.sp
-.LP
-The \fBgeneral\fR property group applies to all service instances. It includes
-the following properties:
-.sp
-.ne 2
-.na
-\fBenabled (boolean)\fR
-.ad
-.RS 21n
-Specifies whether the instance is enabled. If this property is not present on
-an instance, SMF does not tell the instance's restarter about the existence of
-the restarter.
-.RE
-
-.sp
-.ne 2
-.na
-\fBrestarter (fmri)\fR
-.ad
-.RS 21n
-The restarter for this service. See the Restarters section for more
-information. If this property is unset, the default system restarter is used.
-.RE
-
-.SS "Snapshots"
-.sp
-.LP
-Historical data about each instance in the repository is maintained by the
-service management facility. This data is made available as read-only snapshots
-for administrative inspection and rollback. The following set of snapshot types
-might be available:
-.sp
-.ne 2
-.na
-\fB\fBinitial\fR\fR
-.ad
-.RS 15n
-Initial configuration of the instance created by the administrator or produced
-during package installation.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBlast_import\fR\fR
-.ad
-.RS 15n
-Configuration as prescribed by the manifest of the service that is taken during
-\fBsvccfg\fR(1M) import operation. This snapshot provides a baseline for
-determining property customization.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBprevious\fR\fR
-.ad
-.RS 15n
-Current configuration captured when an administrative undo operation is
-performed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrunning\fR\fR
-.ad
-.RS 15n
-The running configuration of the instance.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBstart\fR\fR
-.ad
-.RS 15n
-Configuration captured during a successful transition to the online state.
-.RE
-
-.sp
-.LP
-The \fBsvccfg\fR(1M) command can be used to interact with snapshots.
-.SS "Special Property Groups"
-.sp
-.LP
-Some property groups are marked as "non-persistent". These groups are not
-backed up in snapshots and their content is cleared during system boot. Such
-groups generally hold an active program state which does not need to survive
-system restart.
-.SS "Configuration Repository"
-.sp
-.LP
-The current state of each service instance, as well as the properties
-associated with services and service instances, is stored in a system
-repository managed by \fBsvc.configd\fR(1M). This repository is transactional
-and able to provide previous versions of properties and property groups
-associated with each service or service instance.
-.sp
-.LP
-The repository for service management facility data is managed by
-\fBsvc.configd\fR(1M).
-.SS "Service Bundles, Manifests, and Profiles"
-.sp
-.LP
-The information associated with a service or service instance that is stored in
-the configuration repository can be exported as XML-based files. Such XML
-files, known as service bundles, are portable and suitable for backup purposes.
-Service bundles are classified as one of the following types:
-.sp
-.ne 2
-.na
-\fB\fBmanifests\fR\fR
-.ad
-.RS 13n
-Files that contain the complete set of properties associated with a specific
-set of services or service instances.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBprofiles\fR\fR
-.ad
-.RS 13n
-Files that contain a set of service instances and values for the enabled
-property (type \fBboolean\fR in the general property group) on each instance.
-.sp
-Profiles can also contain configuration values for properties in services and
-instances. Template elements cannot be defined in a profile.
-.RE
-
-.sp
-.LP
-Service bundles can be imported or exported from a repository using the
-\fBsvccfg\fR(1M) command. See \fBservice_bundle\fR(4) for a description of the
-service bundle file format with guidelines for authoring service bundles.
-.sp
-.LP
-A \fIservice archive\fR is an XML file that contains the description and
-persistent properties of every service in the repository, excluding transient
-properties such as service state. This service archive is basically a 'svccfg
-export' for every service which is not limited to named services.
-.SS "Milestones"
-.sp
-.LP
-An \fBsmf\fR milestone is a service that aggregates a multiple service
-dependencies. Usually, a milestone does nothing useful itself, but declares a
-specific state of system-readiness on which other services can depend. One
-example is the \fBname-services\fR milestone, which simply depends upon the
-currently enabled name services.
-.SS "Legacy Startup Scripts"
-.sp
-.LP
-Startup programs in the \fB/etc/rc?.d\fR directories are executed as part of
-the corresponding run-level milestone:
-.sp
-.ne 2
-.na
-\fB\fB/etc/rcS.d\fR\fR
-.ad
-.RS 14n
-milestone/single-user:default
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/rc2.d\fR\fR
-.ad
-.RS 14n
-milestone/multi-user:default
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/rc3.d\fR\fR
-.ad
-.RS 14n
-milestone/multi-user-server:default
-.RE
-
-.sp
-.LP
-Execution of each program is represented as a reduced-functionality service
-instance named by the program's path. These instances are held in a special
-legacy-run state.
-.sp
-.LP
-These instances do not have an enabled property (type \fBboolean\fR in the
-general property group) and, generally, cannot be manipulated with the
-\fBsvcadm\fR(1M) command. No error diagnosis or restart is done for these
-programs.
-.SH SEE ALSO
-.sp
-.LP
-\fBsvcs\fR(1), \fBinetd\fR(1M), \fBsvcadm\fR(1M), \fBsvccfg\fR(1M),
-\fBsvc.configd\fR(1M), \fBsvc.startd\fR(1M), \fBexec\fR(2), \fBfork\fR(2),
-\fBlibscf\fR(3LIB), \fBstrftime\fR(3C), \fBcontract\fR(4),
-\fBservice_bundle\fR(4), \fBsmf_bootstrap\fR(5), \fBsmf_method\fR(5),
-\fBsmf_restarter\fR(5), \fBsmf_security\fR(5)
diff --git a/usr/src/man/man5/smf_bootstrap.5 b/usr/src/man/man5/smf_bootstrap.5
deleted file mode 100644
index eabb7d114b..0000000000
--- a/usr/src/man/man5/smf_bootstrap.5
+++ /dev/null
@@ -1,124 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SMF_BOOTSTRAP 5 "Sep 25, 2008"
-.SH NAME
-smf_bootstrap \- service management facility boot, packaging, and compatibility
-behavior
-.SH DESCRIPTION
-.sp
-.LP
-The service management facility establishes conventions for delivering service
-manifests, incorporating service manifest changes, describing service
-configuration stability, using service configuration overrides, and the use of
-service profiles.
-.SS "Manifest Loading at Boot"
-.sp
-.LP
-The \fBsvc:/system/manifest-import:default\fR service uses \fBsvccfg\fR(1M) to
-import certain manifest files from the \fB/var/svc/manifest\fR directory tree
-into the service configuration repository. The service imports files that it
-has not imported previously and those files which have changed since the last
-time they were imported by the service. When a manifest is imported by the
-service, a hash of the file that includes its contents is recorded in a
-property group of the \fBsvc:/smf/manifest\fR service. The
-\fBmanifest-import\fR service uses the hash to determine whether the file has
-changed. See \fBsvccfg\fR(1M) for information on the \fBsvccfg import\fR
-behavior for services that already exist in the repository.
-.SS "Manifest Handling During Packaging Operations"
-.sp
-.LP
-Service manifests within packages should be identified with the class
-\fBmanifest\fR. Class action scripts that install and remove service manifests
-are included in the packaging subsystem. When \fBpkgadd\fR(1M) is invoked, the
-service manifest is imported.
-.sp
-.LP
-When \fBpkgrm\fR(1M) is invoked, instances in the manifest that are disabled
-are deleted. Instances in the manifest that are online or degraded are disabled
-first and then deleted. Any services in the manifest with no remaining
-instances are also deleted.
-.sp
-.LP
-If the \fB-R\fR option is supplied to \fBpkgadd\fR(1M) or \fBpkgrm\fR(1M), the
-actions described in this section will be done when the system is next rebooted
-with that alternate root path.
-.SS "Stability Declarations"
-.sp
-.LP
-Each service group and each property group delivered in a manifest should
-declare a stability level based on \fBattributes\fR(5) definitions. With
-knowledge of the stability level, an application developer can determine the
-likelihood that feature development based on the existence or components of a
-service or object is likely to remain functional across a release boundary.
-.sp
-.LP
-In an \fBsmf\fR(5) context, the stability value also identifies the expected
-scope of the changes to properties within the property group across a release
-boundary for the service, which can include patches for that service. The
-following two sections discuss this in more detail.
-.SS "Property Overrides"
-.sp
-.LP
-The \fBservice_bundle\fR(4) document type definition includes an override
-attribute that is applicable to each property in a service manifest. If set to
-\fBtrue\fR, the attribute instructs \fBsvccfg\fR(1M) and other manifest import
-tools to replace the current value of a property in the repository with the one
-from the manifest. If the override attribute is absent or present but set to
-\fBfalse\fR, the current value in the repository is preserved.
-.sp
-.LP
-Property groups declared as Stable do not contain override attributes on
-enclosed properties. Property groups declared as Evolving do so only to correct
-an erroneous setting. Property groups declared as Unstable can contain
-overrides on any property. The exception to this behavior is for the stability
-property itself, which can be modified to identify incipient change to the
-interface presented by the service.
-.SS "Property Group Deletion"
-.sp
-.LP
-The \fBservice_bundle\fR(4) document type definition includes a delete
-attribute, applicable to each property group in a service manifest. If set to
-\fBtrue\fR, the delete attribute instructs \fBsvccfg\fR(1M) and other manifest
-import tools to delete this property group from the repository. If the delete
-attribute is absent or present but set to \fBfalse\fR, the property group in
-the repository is preserved.
-.sp
-.LP
-Property groups declared as Stable or Evolving are not deleted. Property groups
-declared as Unstable can be deleted across any release boundary.
-.SS "Profile Application"
-.sp
-.LP
-The first time the existence of each of the three service profiles listed below
-is detected, \fBsvc.startd\fR(1M) automatically applies the profile.
-.sp
-.in +2
-.nf
-/var/svc/profile/generic.xml
-/var/svc/profile/platform.xml
-/var/svc/profile/site.xml
-.fi
-.in -2
-
-.sp
-.LP
-The \fBsvc:/smf/manifest\fR service is used in a similar fashion.
-.sp
-.LP
-Additional service profiles that characterize the activation of various groups
-of service instances might be present in \fB/var/svc/profile\fR. None of the
-\fB/var/svc/profile\fR profiles are automatically applied to the repository. A
-profile can be manually applied or re-applied using \fBsvccfg\fR(1M).
-.SH SEE ALSO
-.sp
-.LP
-\fBpkgadd\fR(1M), \fBpkgrm\fR(1M), \fBsvcadm\fR(1M), \fBsvccfg\fR(1M),
-\fBsvc.startd\fR(1M), \fBlibscf\fR(3LIB), \fBservice_bundle\fR(4),
-\fBattributes\fR(5), \fBsmf\fR(5), \fBsmf_security\fR(5)
-.SH NOTES
-.sp
-.LP
-The present version of \fBsmf\fR(5) does not support multiple repositories.
diff --git a/usr/src/man/man5/smf_method.5 b/usr/src/man/man5/smf_method.5
deleted file mode 100644
index 4815a7196a..0000000000
--- a/usr/src/man/man5/smf_method.5
+++ /dev/null
@@ -1,589 +0,0 @@
-'\" te
-.\" Copyright 2019 OmniOS Community Edition (OmniOSce) Association.
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
-.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SMF_METHOD 5 "February 25, 2019"
-.SH NAME
-smf_method \- service management framework conventions for methods
-.SH DESCRIPTION
-.LP
-The class of services managed by \fBsvc.startd\fR(1M) in the service management
-framework, \fBsmf\fR(5), consists of applications that fit a simple
-\fBfork\fR(2)-\fBexec\fR(2) model. The \fBsvc.startd\fR(1M) master daemon and
-other restarters support the \fBfork\fR(2)-\fBexec\fR(2) model, potentially
-with additional capabilities. The \fBsvc.startd\fR(1M) daemon and other
-restarters require that the methods which activate, manipulate, or examine a
-service instance follow the conventions described in this manual page.
-.SS "Invocation form"
-.LP
-The form of a method invocation is not dictated by convention. In some cases, a
-method invocation might consist of the direct invocation of the daemon or other
-binary executable that provides the service. For cases in which an executable
-script or other mediating executable is used, the convention recommends the
-form:
-.sp
-.in +2
-.nf
-/path/to/method_executable abbr_method_name
-.fi
-.in -2
-
-.sp
-.LP
-The \fIabbr_method_name\fR used for the recommended form is a supported method
-such as \fBstart\fR or \fBstop\fR. The set of methods supported by a restarter
-is given on the related restarter page. The \fBsvc.startd\fR(1M) daemon
-supports \fBstart\fR, \fBstop\fR, and \fBrefresh\fR methods.
-.sp
-.LP
-A restarter might define other kinds of methods beyond those referenced in this
-page. The conventions surrounding such extensions are defined by the restarter
-and might not be identical to those given here.
-.SS "Environment Variables"
-.LP
-The restarter provides four environment variables to the method that determine
-the context in which the method is invoked.
-.sp
-.ne 2
-.na
-\fB\fBSMF_FMRI\fR\fR
-.ad
-.sp .6
-.RS 4n
-The service fault management resource identifier (FMRI) of the instance for
-which the method is invoked.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSMF_METHOD\fR\fR
-.ad
-.sp .6
-.RS 4n
-The full name of the method being invoked, such as \fBstart\fR or \fBstop\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSMF_RESTARTER\fR\fR
-.ad
-.sp .6
-.RS 4n
-The service FMRI of the restarter that invokes the method
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSMF_ZONENAME\fR\fR
-.ad
-.sp .6
-.RS 4n
-The name of the zone in which the method is running. This can also be obtained
-by using the \fBzonename\fR(1) command.
-.RE
-
-.sp
-.LP
-These variables should be removed from the environment prior to the invocation
-of any persistent process by the method. A convenience shell function,
-\fBsmf_clear_env\fR, is given for service authors who use Bourne-compatible
-shell scripting to compose service methods in the include file described below.
-.sp
-.LP
-The method context can cause other environment variables to be set as described
-below.
-.SS "Method Definition"
-.LP
-A method is defined minimally by three properties in a propertygroup of type
-\fBmethod\fR.
-.sp
-.LP
-These properties are:
-.sp
-.ne 2
-.na
-\fBexec (\fIastring\fR)\fR
-.ad
-.RS 27n
-Method executable string.
-.RE
-
-.sp
-.ne 2
-.na
-\fBtimeout_seconds (\fIcount\fR)\fR
-.ad
-.RS 27n
-Number of seconds before method times out. See the \fBTimeouts\fR section for
-more detail.
-.RE
-
-.sp
-.ne 2
-.na
-\fBtype (\fIastring\fR)\fR
-.ad
-.RS 27n
-Method type. Currently always set to \fBmethod\fR.
-.RE
-
-.sp
-.LP
-A Method Context can be defined to further refine the execution environment of
-the method. See the \fBMethod Context\fR section for more information.
-.SS "Method Tokens"
-.LP
-When defined in the \fBexec\fR string of the method by the restarter
-\fBsvc.startd\fR, a set of tokens are parsed and expanded with appropriate
-value. Other restarters might not support method tokens. The delegated
-restarter for inet services, \fBinetd\fR(1M), does not support the following
-method expansions.
-.sp
-.ne 2
-.na
-\fB\fB%%\fR\fR
-.ad
-.sp .6
-.RS 4n
-%
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB%r\fR\fR
-.ad
-.sp .6
-.RS 4n
-Name of the restarter, such as \fBsvc.startd\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB%m\fR\fR
-.ad
-.sp .6
-.RS 4n
-The full name of the method being invoked, such as \fBstart\fR or \fBstop\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB%s\fR\fR
-.ad
-.sp .6
-.RS 4n
-Name of the service
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB%i\fR\fR
-.ad
-.sp .6
-.RS 4n
-Name of the instance
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\fR\fB%f\fR\fR
-.ad
-.sp .6
-.RS 4n
-FMRI of the instance
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB%{prop[:,]}\fR\fR
-.ad
-.sp .6
-.RS 4n
-Value(s) of a property. The \fBprop\fR might be a property FMRI, a property
-group name and a property name separated by a \fB/\fR, or a property name in
-the \fBapplication\fR property group. These values can be followed by a \fB,\fR
-(comma) or \fB:\fR (colon). If present, the separators are used to separate
-multiple values. If absent, a space is used. The following shell metacharacters
-encountered in string values are quoted with a \ (backslash):
-.sp
-.in +2
-.nf
-; & ( ) | ^ < > newline space tab \ " '
-.fi
-.in -2
-
-An invalid expansion constitutes method failure.
-.RE
-
-.sp
-.LP
-Two explicit tokens can be used in the place of method commands.
-.sp
-.ne 2
-.na
-\fB\fB:kill [-signal]\fR\fR
-.ad
-.sp .6
-.RS 4n
-Sends the specified signal, which is \fBSIGTERM\fR by default, to all processes
-in the primary instance contract. Always returns \fBSMF_EXIT_OK\fR. This token
-should be used to replace common \fBpkill\fR invocations.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB:true\fR\fR
-.ad
-.sp .6
-.RS 4n
-Always returns \fBSMF_EXIT_OK\fR. This token should be used for methods that
-are required by the restarter but which are unnecessary for the particular
-service implementation.
-.RE
-
-.SS "Exiting and Exit Status"
-.LP
-The required behavior of a start method is to delay exiting until the service
-instance is ready to answer requests or is otherwise functional.
-.sp
-.LP
-The following exit status codes are defined in \fB<libscf.h>\fR and in the
-shell support file.
-.sp
-
-.sp
-.TS
-l l l
-l l l .
-\fBSMF_EXIT_OK\fR \fB0\fR T{
-Method exited, performing its operation successfully.
-T}
-\fBSMF_EXIT_NODAEMON\fR \fB94\fR T{
-Method exited successfully but purposefully leaves no processes remaining in
-the contract; it should be treated as if it had a transient service model.
-T}
-\fBSMF_EXIT_ERR_FATAL\fR \fB95\fR T{
-Method failed fatally and is unrecoverable without administrative intervention.
-T}
-\fBSMF_EXIT_ERR_CONFIG\fR \fB96\fR T{
-Unrecoverable configuration error. A common condition that returns this exit status is the absence of required configuration files for an enabled service instance.
-T}
-\fBSMF_EXIT_ERR_NOSMF\fR \fB99\fR T{
-Method has been mistakenly invoked outside the \fBsmf\fR(5) facility. Services that depend on \fBsmf\fR(5) capabilities should exit with this status value.
-T}
-\fBSMF_EXIT_ERR_PERM\fR \fB100\fR T{
-Method requires a form of permission such as file access, privilege, authorization, or other credential that is not available when invoked.
-T}
-\fBSMF_EXIT_ERR_OTHER\fR \fBnon-zero\fR T{
-Any non-zero exit status from a method is treated as an unknown error. A series of unknown errors can be diagnosed as a fault by the restarter or on behalf of the restarter.
-T}
-.TE
-
-.sp
-.LP
-Use of a precise exit code allows the responsible restarter to categorize an
-error response as likely to be intermittent and worth pursuing restart or
-permanent and request administrative intervention.
-.SS "Timeouts"
-.LP
-Each method can have an independent timeout, given in seconds. The choice of a
-particular timeout should be based on site expectations for detecting a method
-failure due to non-responsiveness. Sites with replicated filesystems or other
-failover resources can elect to lengthen method timeouts from the default.
-Sites with no remote resources can elect to shorten the timeouts. Method
-timeout is specified by the \fBtimeout_seconds\fR property.
-.sp
-.LP
-If you specify \fB0 timeout_seconds\fR for a method, it declares to the
-restarter that there is no timeout for the service. This setting is not
-preferred, but is available for services that absolutely require it.
-.sp
-.LP
-\fB-1 timeout_seconds\fR is also accepted, but is a deprecated specification.
-.SS "Shell Programming Support"
-.LP
-A set of environment variables that define the above exit status values is
-provided with convenience shell functions in the file
-\fB/lib/svc/share/smf_include.sh\fR. This file is a Bourne shell script
-suitable for inclusion via the source operator in any Bourne-compatible shell.
-.sp
-.LP
-To assist in the composition of scripts that can serve as SMF methods as well
-as \fB/etc/init.d\fR scripts, the \fBsmf_present()\fR shell function is
-provided. If the \fBsmf\fR(5) facility is not available, \fBsmf_present()\fR
-returns a non-zero exit status.
-.sp
-.LP
-One possible structure for such a script follows:
-.sp
-.in +2
-.nf
-if smf_present; then
- # Shell code to run application as managed service
- ....
-
- smf_clear_env
-else
- # Shell code to run application as /etc/init.d script
- ....
-fi
-.fi
-.in -2
-
-.sp
-.LP
-This example shows the use of both convenience functions that are provided.
-.SS "Method Context"
-.LP
-The service management facility offers a common mechanism set the context in
-which the \fBfork\fR(2)-\fBexec\fR(2) model services execute.
-.sp
-.LP
-The desired method context should be provided by the service developer. All
-service instances should run with the lowest level of privileges possible to
-limit potential security compromises.
-.sp
-.LP
-A method context can contain the following properties:
-.sp
-.ne 2
-.na
-\fB\fBuse_profile\fR\fR
-.ad
-.sp .6
-.RS 4n
-A boolean that specifies whether the profile should be used instead of the
-\fBuser\fR, \fBgroup\fR, \fBprivileges\fR, and \fBlimit_privileges\fR
-properties.
-.RE
-
-.sp
-.ne 2
-.na
-\fBenvironment\fR
-.ad
-.sp .6
-.RS 4n
-Environment variables to insert into the environment of the method, in the form
-of a number of \fBNAME=value\fR strings.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBprofile\fR\fR
-.ad
-.sp .6
-.RS 4n
-The name of an RBAC (role-based access control) profile which, along with the
-method executable, identifies an entry in \fBexec_attr\fR(4).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBuser\fR\fR
-.ad
-.sp .6
-.RS 4n
-The user ID in numeric or text form.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBgroup\fR\fR
-.ad
-.sp .6
-.RS 4n
-The group ID in numeric or text form.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsupp_groups\fR\fR
-.ad
-.sp .6
-.RS 4n
-An optional string that specifies the supplemental group memberships by ID, in
-numeric or text form.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBprivileges\fR\fR
-.ad
-.sp .6
-.RS 4n
-An optional string specifying the privilege set as defined in
-\fBprivileges\fR(5).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBlimit_privileges\fR\fR
-.ad
-.sp .6
-.RS 4n
-An optional string specifying the limit privilege set as defined in
-\fBprivileges\fR(5).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBworking_directory\fR\fR
-.ad
-.sp .6
-.RS 4n
-The home directory from which to launch the method. \fB:home\fR can be used as
-a token to indicate the home directory of the user whose \fBuid\fR is used to
-launch the method. If the property is unset, \fB:home\fR is used.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsecurity_flags\fR\fR
-.ad
-.sp .6
-.RS 4n
-The security flags to apply when launching the method. See \fBsecurity-flags\fR(5).
-.sp
-.LP
-The "default" keyword specifies those flags specified in
-\fBsvc:/system/process-security\fR. The "all" keyword enables all flags, the
-"none" keyword enables no flags. The "current" keyword specifies the current
-flags. Flags may be added by specifying their name (optionally preceded
-by '+'), and removed by preceding their name with '-').
-.sp
-.LP
-Use of "all" has associated risks, as future versions of the system may
-include further flags which may harm poorly implemented software.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcorefile_pattern\fR\fR
-.ad
-.sp .6
-.RS 4n
-An optional string that specifies the corefile pattern to use for the service,
-as per \fBcoreadm\fR(1M). Most restarters supply a default. Setting this
-property overrides local customizations to the global core pattern.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBproject\fR\fR
-.ad
-.sp .6
-.RS 4n
-The project ID in numeric or text form. \fB:default\fR can be used as a token
-to indicate a project identified by \fBgetdefaultproj\fR(3PROJECT) for the user
-whose \fBuid\fR is used to launch the method.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBresource_pool\fR\fR
-.ad
-.sp .6
-.RS 4n
-The resource pool name on which to launch the method. \fB:default\fR can be
-used as a token to indicate the pool specified in the \fBproject\fR(4) entry
-given in the \fBproject\fR attribute above.
-.RE
-
-.sp
-.LP
-The method context can be set for the entire service instance by specifying a
-\fBmethod_context\fR property group for the service or instance. A method might
-override the instance method context by providing the method context properties
-on the method property group.
-.sp
-.LP
-Invalid method context settings always lead to failure of the method, with the
-exception of invalid environment variables that issue warnings.
-.sp
-.LP
-In addition to the context defined above, many \fBfork\fR(2)-\fBexec\fR(2)
-model restarters also use the following conventions when invoking executables
-as methods:
-.sp
-.ne 2
-.na
-\fBArgument array\fR
-.ad
-.sp .6
-.RS 4n
-The arguments in \fBargv[]\fR are set consistently with the result \fB/bin/sh
--c\fR of the \fBexec\fR string.
-.RE
-
-.sp
-.ne 2
-.na
-\fBFile descriptors\fR
-.ad
-.sp .6
-.RS 4n
-File descriptor \fB0\fR is \fB/dev/null\fR. File descriptors \fB1\fR and
-\fB2\fR are recommended to be a per-service log file.
-.RE
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/lib/svc/share/smf_include.sh\fR\fR
-.ad
-.sp .6
-.RS 4n
-Definitions of exit status values.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/include/libscf.h\fR\fR
-.ad
-.sp .6
-.RS 4n
-Definitions of exit status codes.
-.RE
-
-.SH SEE ALSO
-.LP
-\fBzonename\fR(1), \fBcoreadm\fR(1M), \fBinetd\fR(1M), \fBsvccfg\fR(1M),
-\fBsvc.startd\fR(1M), \fBexec\fR(2), \fBfork\fR(2),
-\fBgetdefaultproj\fR(3PROJECT), \fBexec_attr\fR(4), \fBproject\fR(4),
-\fBservice_bundle\fR(4), \fBattributes\fR(5), \fBprivileges\fR(5),
-\fBrbac\fR(5), \fBsmf\fR(5), \fBsmf_bootstrap\fR(5), \fBzones\fR(5),
-\fBsecurity-flags\fR(5)
-.SH NOTES
-.LP
-The present version of \fBsmf\fR(5) does not support multiple repositories.
-.sp
-.LP
-When a service is configured to be started as root but with privileges
-different from \fBlimit_privileges\fR, the resulting process is privilege
-aware. This can be surprising to developers who expect \fBseteuid(<non-zero
-UID>)\fR to reduce privileges to basic or less.
diff --git a/usr/src/man/man5/smf_restarter.5 b/usr/src/man/man5/smf_restarter.5
deleted file mode 100644
index 5ca1b5b729..0000000000
--- a/usr/src/man/man5/smf_restarter.5
+++ /dev/null
@@ -1,106 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 2019 Joyent, Inc.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SMF_RESTARTER 5 "Dec 11, 2019"
-.SH NAME
-smf_restarter \- service management facility conventions for restarters
-.SH DESCRIPTION
-All service instances in the service management facility must be managed by a
-restarter. This manual page describes configuration, functionality, and
-reporting characteristics that are common to all restarters in the framework.
-Characteristics specific to a particular restarter are described in the
-restarter's man page.
-.sp
-.LP
-For each managed service, a restarter relies on retrieving properties on the
-service instance to determine configuration. The restarter manages a set of
-property groups to communicate the current disposition of a service with
-display tools such as \fBsvcs\fR(1).
-.SS "Service Configuration"
-The common restarter configuration for all services is captured in the
-\fBgeneral\fR property group. This group includes the following required and
-optional property settings.
-.sp
-.ne 2
-.na
-\fB\fBenabled\fR\fR
-.ad
-.RS 19n
-This is a required property. If set, the restarter of an instance attempts to
-maintain availability of the service.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrestarter\fR\fR
-.ad
-.RS 19n
-This is an optional property that allows the specification of an alternate
-restarter to manage the service instance. If the restarter property is empty or
-absent, the restarter defaults to \fBsvc.startd\fR(1M).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsingle_instance\fR\fR
-.ad
-.RS 19n
-This is an optional property. When set, only one instance of the service is
-allowed to transition to an online or degraded status at any time. Note that no
-known implementation honours this setting, and it should be considered obsolete.
-.RE
-
-.SS "Service Reporting"
-All restarters report status using the \fBrestarter\fR property group, which
-includes the following properties:
-.sp
-.ne 2
-.na
-\fB\fBnext_state\fR\fR
-.ad
-.RS 19n
-The current state and next state, if currently in transition, for instances
-stored in these properties. See \fBsmf\fR(5) for a description of the potential
-states.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBauxiliary_state\fR\fR
-.ad
-.RS 19n
-An astring with no spaces that contains a precise term to describe the full
-restarter-specific state in combination with the restarter state property. The
-auxiliary state cannot always be set and is always cleared during transition
-out of any state. Each restarter must define the precise list of auxiliary
-states it uses.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBstate_timestamp\fR\fR
-.ad
-.RS 19n
-The time when the current state was reached.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcontract\fR\fR
-.ad
-.RS 19n
-The primary process contract ID, if any, under which the service instance is
-executing.
-.RE
-
-.SH SEE ALSO
-\fBsvcs\fR(1), \fBsvc.startd\fR(1M), \fBservice_bundle\fR(4), \fBsmf\fR(5),
-\fBsmf_method\fR(5)
diff --git a/usr/src/man/man5/smf_security.5 b/usr/src/man/man5/smf_security.5
deleted file mode 100644
index 6f94f14c4e..0000000000
--- a/usr/src/man/man5/smf_security.5
+++ /dev/null
@@ -1,230 +0,0 @@
-'\" te
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
-.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SMF_SECURITY 5 "May 13, 2017"
-.SH NAME
-smf_security \- service management facility security behavior
-.SH DESCRIPTION
-.LP
-The configuration subsystem for the service management facility, \fBsmf\fR(5),
-requires privilege to modify the configuration of a service. Privileges are
-granted to a user by associating the authorizations described below to the user
-through \fBuser_attr\fR(4) and \fBprof_attr\fR(4). See \fBrbac\fR(5).
-.sp
-.LP
-The following authorization is used to manipulate services and service
-instances.
-.sp
-.ne 2
-.na
-\fB\fBsolaris.smf.modify\fR\fR
-.ad
-.RS 22n
-Authorized to add, delete, or modify services, service instances, or their
-properties, and to read protected property values.
-.RE
-
-.SS "Property Group Authorizations"
-.LP
-The \fBsmf\fR(5) configuration subsystem associates properties with each
-service and service instance. Related properties are grouped. Groups can
-represent an execution method, credential information, application data, or
-restarter state. The ability to create or modify property groups can cause
-\fBsmf\fR(5) components to perform actions that can require operating system
-privilege. Accordingly, the framework requires appropriate authorization to
-manipulate property groups.
-.sp
-.LP
-Each property group has a type corresponding to its purpose. The core property
-group types are \fBmethod\fR, \fBdependency\fR, \fBapplication\fR, and
-\fBframework\fR. Additional property group types can be introduced, provided
-they conform to the extended naming convention in \fBsmf\fR(5). The following
-basic authorizations, however, apply only to the core property group types:
-.sp
-.ne 2
-.na
-\fB\fBsolaris.smf.modify.method\fR\fR
-.ad
-.sp .6
-.RS 4n
-Authorized to change values or create, delete, or modify a property group of
-type \fBmethod\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsolaris.smf.modify.dependency\fR\fR
-.ad
-.sp .6
-.RS 4n
-Authorized to change values or create, delete, or modify a property group of
-type \fBdependency\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsolaris.smf.modify.application\fR\fR
-.ad
-.sp .6
-.RS 4n
-Authorized to change values, read protected values, and create, delete, or
-modify a property group of type application.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsolaris.smf.modify.framework\fR\fR
-.ad
-.sp .6
-.RS 4n
-Authorized to change values or create, delete, or modify a property group of
-type \fBframework\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsolaris.smf.modify\fR\fR
-.ad
-.sp .6
-.RS 4n
-Authorized to add, delete, or modify services, service instances, or their
-properties, and to read protected property values.
-.RE
-
-.sp
-.LP
-Property group-specific authorization can be specified by properties contained
-in the property group.
-.sp
-.ne 2
-.na
-\fB\fBmodify_authorization\fR\fR
-.ad
-.RS 24n
-Authorizations allow the addition, deletion, or modification of properties
-within the property group, and the retrieval of property values from the
-property group if protected.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBvalue_authorization\fR\fR
-.ad
-.RS 24n
-Authorizations allow changing the values of any property of the property group
-except \fBmodify_authorization\fR, and the retrieval of any property values
-except modify_authorization from the property group if protected.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBread_authorization\fR\fR
-.ad
-.RS 24n
-Authorizations allow the retrieval of property values within the property
-group. The presence of a string-valued property with this name identifies the
-containing property group as protected. This property has no effect on property
-groups of types other than application. See \fBProtected Property Groups\fR.
-.RE
-
-.sp
-.LP
-The above authorization properties are only used if they have type
-\fBastring\fR. If an instance property group does not have one of the
-properties, but the instance's service has a property group of the same name
-with the property, its values are used.
-.SS "Protected Property Groups"
-.LP
-Normally, all property values in the repository can be read by any user without
-explicit authorization. Property groups of non-framework types can be used to
-store properties with values that require protection. They must not be revealed
-except upon proper authorization. A property group's status as protected is
-indicated by the presence of a string-valued \fBread_authorization\fR property.
-If this property is present, the values of all properties in the property group
-is retrievable only as described in \fBProperty Group Authorizations\fR.
-.sp
-.LP
-Administrative domains with policies that prohibit backup of data considered
-sensitive should exclude the SMF repository databases from their backups. In
-the face of such a policy, non-protected property values can be backed up by
-using the \fBsvccfg\fR(1M) archive command to create an archive of the
-repository without protected property values.
-.SS "Service Action Authorization"
-.LP
-Certain actions on service instances can result in service interruption or
-deactivation. These actions require an authorization to ensure that any denial
-of service is a deliberate administrative action. Such actions include a
-request for execution of the refresh or restart methods, or placement of a
-service instance in the maintenance or other non-operational state. The
-following authorization allows such actions to be requested:
-.sp
-.ne 2
-.na
-\fB\fBsolaris.smf.manage\fR\fR
-.ad
-.RS 22n
-Authorized to request restart, refresh, or other state modification of any
-service instance.
-.RE
-
-.sp
-.LP
-In addition, the \fBgeneral/action_authorization\fR property can specify
-additional authorizations that permit service actions to be requested for that
-service instance. The \fBsolaris.smf.manage\fR authorization is required to
-modify this property.
-.SS "Defined Rights Profiles"
-.LP
-Two rights profiles are included that offer grouped authorizations for
-manipulating typical \fBsmf\fR(5) operations.
-.sp
-.ne 2
-.na
-\fBService Management\fR
-.ad
-.RS 22n
-A service manager can manipulate any service in the repository in any way. It
-corresponds to the \fBsolaris.smf.manage\fR and \fBsolaris.smf.modify\fR
-authorizations.
-.RE
-
-.sp
-.ne 2
-.na
-\fBService Operator\fR
-.ad
-.RS 22n
-A service operator has the ability to enable or disable any service instance on
-the system, as well as request that its restart or refresh method be executed.
-It corresponds to the \fBsolaris.smf.manage\fR and
-\fBsolaris.smf.modify.framework\fR authorizations.
-.sp
-Sites can define additional rights profiles customized to their needs.
-.RE
-
-.SS "Remote Repository Modification"
-.LP
-Remote repository servers can deny modification attempts due to additional
-privilege checks. See NOTES.
-.SH SEE ALSO
-.LP
-\fBauths\fR(1), \fBprofiles\fR(1),
-\fBsvccfg\fR(1M), \fBprof_attr\fR(4), \fBuser_attr\fR(4), \fBrbac\fR(5),
-\fBsmf\fR(5)
-.SH NOTES
-.LP
-The present version of \fBsmf\fR(5) does not support remote repositories.
-.sp
-.LP
-When a service is configured to be started as root but with privileges
-different from \fBlimit_privileges\fR, the resulting process is privilege
-aware. This can be surprising to developers who expect \fBseteuid(<non-zero
-UID>)\fR to reduce privileges to basic or less.
diff --git a/usr/src/man/man5/smf_template.5 b/usr/src/man/man5/smf_template.5
deleted file mode 100644
index 565433f4ae..0000000000
--- a/usr/src/man/man5/smf_template.5
+++ /dev/null
@@ -1,803 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SMF_TEMPLATE 5 "Nov 10, 2008"
-.SH NAME
-smf_template \- service management framework support for service metadata
-.SH DESCRIPTION
-.sp
-.LP
-Templates are defined by service developers to describe metadata about a
-service in general or individual configuration properties on a service,
-including human-consumable descriptions as well as definitions of valid
-configuration.
-.sp
-.LP
-Administrators are provided access to templates through SMF commands that
-describe configuration values and validate configuration against templates.
-.sp
-.LP
-Tool developers can use templates to provide more helpful user interfaces for
-service configuration.
-.SS "Template Data"
-.sp
-.LP
-Service metadata is defined in the template as part of the service manifest.
-.SS "Consuming Template Data"
-.sp
-.LP
-The \fBsvcs -lv\fR and \fBsvccfg describe\fR commands can be used to access
-metadata about properties in a human-readable format.
-.sp
-.LP
-\fBsvccfg\fR(1M)'s \fBvalidate\fR subcommand can be used to validate a service
-instance or manifest against template data. A set of \fBlibscf\fR(3LIB)
-interfaces is available to access template data.
-.SS "Template Definition"
-.sp
-.LP
-The sole interface to define templates is the service manifest.
-.sp
-.LP
-Service authors should provide template metadata including \fBcommon_names\fR,
-\fBdescriptions\fR, \fBchoices\fR and \fBconstraints\fR for service-specific
-property groups and properties which they introduce. At a minimum, service
-authors must provide descriptions for property groups and properties in the C
-locale. Service authors should not provide template metadata for
-framework-delivered property groups such as methods and dependencies.
-.sp
-.LP
-See the \fBEXAMPLES\fR section for an example of authoring a template
-definition for a service.
-.SS "Template Composition"
-.sp
-.LP
-All template interfaces search for template data about a property group first
-on the instance, then on the service, then on the service's restarter, and
-finally globally.
-.sp
-.LP
-A property group template is defined by its author to apply to a specific
-instance, to a service and all of its instances, to a restarter's delegates, or
-globally. A typical service author defines the template on an instance or on a
-service. A template defined on an instance is applied to that instance only,
-and can override a template for that property group defined on the service. A
-template defined on the service is applied to all instances of that service.
-.sp
-.LP
-Restarter authors can define templates in their manifest that apply to any
-service which uses their restarter, which is also known as a \fBdelegate\fR.
-SMF framework authors have defined templates for property groups with
-well-known meanings to the entire SMF framework in the manifest for
-\fBsvc:/system/svc/global\fR.
-.sp
-.LP
-Templates defined globally or by the restarter and re-defined by the service or
-instance are flagged as a validation error. Service authors can avoid these
-errors by creating templates only for property groups specific to their service
-and not consumed by the SMF framework.
-.sp
-.LP
-Property group templates can also be wildcarded by name or type. Only the most
-specific template definition applicable to a property group is honored.
-.SS "Template Details"
-.SS "Service and Instance Templates"
-.sp
-.LP
-The \fBtemplate\fR element defines the start of a template block. All further
-definitions below can be included in a template block. A \fBtemplate\fR element
-can be contained in either a \fBservice\fR or \fBinstance\fR element. If it is
-contained in the \fBservice\fR element, it applies to the service and all
-instances of that service. If it is contained in the \fBinstance\fR element, it
-applies to only that instance of the service.
-.sp
-.LP
-Whenever possible, we recommend defining the template data for the entire
-service.
-.sp
-.in +2
-.nf
-<service ... >
- <template>
- </template>
-</service>
-.fi
-.in -2
-
-.SS "Service and Instance Common Names"
-.sp
-.LP
-The entire service or instance can define a common name to describe the purpose
-of the service/instance.
-.sp
-.in +2
-.nf
-<template>
- <common_name>
- <loctext xml:lang='C'>console login</loctext>
- </common_name>
-<template>
-.fi
-.in -2
-
-.sp
-.LP
-\fIcommon_name\fR is a free-form string, but is intended to be used as a label
-in a GUI or CLI.
-.sp
-.LP
-The following guidelines are recommended:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Be brief. A word or two is usually most appropriate. Limit the name to under 40
-characters.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Be clear. The service, property group, or property name might not be helpful
-for humans, but \fIcommon_name\fR should help clarify the purpose of the
-entity.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-No punctuation. \fIcommon_name\fR is not a sentence or a paragraph. It should
-not contain clauses or phrases. Punctuation should only be present to meet
-trademark requirements.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Capital letters must be used only for acronyms or proper names. For locales
-other than English, use appropriate capitalization for a sentence fragment.
-.RE
-.SS "Service and Instance Descriptions"
-.sp
-.LP
-The description element contains a longer description of the property group,
-suitable for a status line or a tool-tip:
-.sp
-.in +2
-.nf
-<template>
- <description>
- <loctext xml:lang='C'>Provide the text login prompt on console.
- </lcotext>
- </description>
-<template>
-.fi
-.in -2
-
-.sp
-.LP
-\fIdescription\fR Guidelines
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Use proper grammar. \fIdescription\fR is a sentence meant to be read by humans.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Be brief. A few sentences are usually most appropriate.
-.RE
-.SS "Documentation"
-.sp
-.LP
-Documentation for this service can be defined explicitly, so that when the
-service is experiencing issues, or a consumer of the service wants more
-information on it, they can find it easily.
-.sp
-.LP
-Documentation can include man pages or references to stable URLs for reference
-documentation.
-.sp
-.in +2
-.nf
-<template>
- <documentation>
- <manpage title='ttymon' section='1M' manpath='/usr/share/man' />
- <doc_link name='docs.sun.com' uri='http://docs.sun.com' />
- </documentation>
-</template>
-.fi
-.in -2
-
-.SS "Property Groups"
-.sp
-.LP
-The \fBpg_pattern\fR element contains the definitions for a property group:
-.sp
-.in +2
-.nf
-<template>
- <pg_pattern name="pgname" type="pgtype" target="this" required="true">
- </pg_pattern>
-</template>
-.fi
-.in -2
-
-.sp
-.LP
-\fIname\fR is the property group's name, and \fItype\fR is the property group's
-type.
-.sp
-.LP
-\fItarget\fR specifies what the target of this definition is. \fB"this"\fR
-would refer to the defining service or instance. \fB"instance"\fR can only be
-used in a service's template block, and means the definition applies to all
-instances of this service. \fB"delegate"\fR can only be used in a restarter's
-template block, and applies to all instances that are delegated to that
-restarter. \fB"all"\fR, only usable by the master restarter, would refer to all
-services on the system. The default value of target is \fB"this"\fR.
-.sp
-.LP
-\fBrequired\fR indicates whether this property group is required or not. The
-default value of required is \fBfalse\fR. If \fBrequired\fR is \fBtrue\fR, both
-\fIname\fR and \fItype\fR must be specified.
-.sp
-.LP
-\fIname\fR and/or \fItype\fR can be omitted. If either of these attributes is
-omitted it is treated as a wildcard. For instance, if the name attribute is
-omitted from the \fBpg_pattern\fR definition, the \fBpg_pattern\fR is applied
-to all property groups that have the specified type.
-.SS "Property Group Names"
-.sp
-.LP
-The \fIcommon_name\fR element contains the localized, human-readable name for
-the property group:
-.sp
-.in +2
-.nf
-<pg_pattern ...>
- <common_name>
- <loctext xml:lang='C'>startt method</loctext>
- </common_name>
-</pg_pattern>
-.fi
-.in -2
-
-.sp
-.LP
-\fIcommon_name\fR is a free-form string, but is intended to be used as a label
-in a GUI or CLI.
-.sp
-.LP
-The following guidelines are recommended:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Be brief. A word or two is usually most appropriate.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Be clear. The service, property group, or property name might not be helpful
-for humans, but \fIcommon_name\fR should help clarify the purpose of the
-entity.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-No punctuation. \fIcommon_name\fR is not a sentence or a paragraph. It should
-not contain clauses or phrases. Punctuation should only be present to meet
-trademark requirements.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Capital letters must be used only for acronyms or proper names. For locales
-other than English, use appropriate capitalization for a sentence fragment.
-.RE
-.SS "Property Group Description"
-.sp
-.LP
-The \fIdescription\fR element contains a longer description of the property
-group, suitable for a status line or a tool-tip:
-.sp
-.in +2
-.nf
-<pg_pattern ...>
- <description>
- <loctext xml:lang='C'>A required method which starts the service.
- </loctext>
- </description>
-</pg_pattern>
-.fi
-.in -2
-
-.sp
-.LP
-\fIdescription\fR Guidelines
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Use proper grammar. description is a sentence meant to be read by humans.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Be brief. A few sentences are usually most appropriate.
-.RE
-.SS "Properties"
-.sp
-.LP
-The \fIprop_pattern\fR element contains the definitions for a specific
-property:
-.sp
-.in +2
-.nf
-<pg_pattern ...>
- <prop_pattern name="propname" type="proptype" required="true">
- </prop_pattern>
-</pg_pattern>
-.fi
-.in -2
-
-.sp
-.LP
-\fIname\fR is the property's name, and \fItype\fR is the property's type.
-.sp
-.LP
-\fBrequired\fR indicates whether this property is required. The default value
-of \fBrequired\fR is \fBfalse\fR.
-.sp
-.LP
-\fIname\fR is always required. \fItype\fR is optional only if \fBrequired\fR is
-\fBfalse\fR.
-.SS "Property Names"
-.sp
-.LP
-The \fIcommon_name\fR element contains the localized, human-readable name for
-the property:
-.sp
-.in +2
-.nf
-
-.fi
-.in -2
-
-.sp
-.LP
-\fIcommon_name\fR is a free-form string field, but is intended to be used as a
-label in a GUI or CLI.
-.sp
-.in +2
-.nf
-<prop_pattern ...>
-<common_name>
- <loctext xml:lang='C'>retry interval</loctext>
-</common_name>
-</prop_pattern>
-.fi
-.in -2
-
-.sp
-.LP
-The following guidelines are recommended:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Be brief. A word or two is usually most appropriate.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Be clear. The service, property group, or property name might not be helpful
-for humans, but \fIcommon_name\fR should help clarify the purpose of the
-entity.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-No punctuation. \fIcommon_name\fR is not a sentence or a paragraph. It should
-not contain clauses or phrases. Punctuation should only be present to meet
-trademark requirements.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Capital letters must be used only for acronyms or proper names. For locales
-other than English, use appropriate capitalization for a sentence fragment.
-.RE
-.SS "Property units"
-.sp
-.LP
-The \fIunits\fR element contains the localized, human-readable units for a
-numerical property:
-.sp
-.in +2
-.nf
-<prop_pattern ...>
- <units>
- <loctext xml:lang='C'>seconds</loctext>
- </units>
-</prop_pattern>
-.fi
-.in -2
-
-.sp
-.LP
-\fIunits\fR Guidelines
-.sp
-.LP
-The following guidelines are recommended:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Be brief. Strive to use only a single word or label. The plural form is usually
-most appropriate.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-No punctuation. units is not a sentence or a paragraph. It should not contain
-clauses or phrases. Punctuation should only be present to meet trademark
-requirements.
-.RE
-.SS "Property description"
-.sp
-.LP
-The \fIdescription\fR element contains a longer description of the property,
-suitable for a status line or a tool-tip:
-.sp
-.in +2
-.nf
-<prop_pattern ...>
- <description> <loctext xml:lang='C'>
- The number of seconds to wait before retry.
- </loctext> </description>
-</prop_pattern>
-.fi
-.in -2
-
-.sp
-.LP
-\fIdescription\fR Guidelines
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Use proper grammar. \fIdescription\fR is a sentence meant to be read by humans.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Be brief. A few sentences are usually most appropriate.
-.RE
-.SS "Property visibility"
-.sp
-.LP
-The \fIvisibility\fR element specifies whether simplified views in higher level
-software might want to display this property.
-.sp
-.in +2
-.nf
-<prop_pattern ...>
- <visibility value="hidden | readonly | readwrite"/>
-</prop_pattern>
-.fi
-.in -2
-
-.sp
-.LP
-Some properties are internal implementation details and should not be presented
-as a configuration setting. Others might merely be read-only. This property is
-used to specify these restrictions. A value of hidden indicates that the
-property shouldn't be displayed, \fBreadonly\fR means that the property isn't
-intended to be modified, and \fBreadwrite\fR indicates the property is
-modifiable.
-.sp
-.LP
-This is not a security mechanism, it is solely intended to help prevent the
-user from shooting himself in the foot, and to remove unnecessary clutter from
-CLI output or a GUI display. Hidden properties is visible in full-disclosure
-modes of many commands and UIs.
-.SS "Property format"
-.sp
-.LP
-The \fIcardinality\fR and \fIinternal_separators\fR elements constrain the
-structure of a property:
-.sp
-.in +2
-.nf
-<prop_pattern ...>
- <cardinality min="1" max="1"/>
- <internal_separators>,<internal_separators>
-</prop_pattern>
-.fi
-.in -2
-
-.sp
-.LP
-\fIcardinality\fR indicates the acceptable number of property values. \fImin\fR
-is the minimum number, and \fImax\fR is the maximum number. Both are optional.
-If neither is specified, \fB<cardinality/>\fR is the same as the default, zero
-or more values.
-.sp
-.LP
-\fIinternal_separators\fR specify the separator characters used for those
-property values into which multiple real values are packed.
-.SS "Value constraints"
-.sp
-.LP
-The \fIconstraints\fR element specifies what values are acceptable for a
-property:
-.sp
-.in +2
-.nf
-<prop_pattern ...>
-<constraints>
- <value name="blue" />
- <range min="1" max="7"/>
- <include_values type="values"/>
-</constraints>
-</prop_pattern>
-.fi
-.in -2
-
-.sp
-.LP
-The \fIvalue\fR element includes a possible property value. range includes an
-integer range.
-.sp
-.LP
-\fIvalue\fR and \fIrange\fR can be used in any combination, as restricting
-their use would prohibit many valid descriptions. If no value constraints are
-specified, the property can take on any value.
-.sp
-.LP
-\fIinclude_values\fR includes all values specified by the values block (see
-\fBValue Descriptions\fR section).
-.SS "Value choices"
-.sp
-.LP
-The choices block indicates which values a UI should offer the user:
-.sp
-.in +2
-.nf
-<prop_pattern ...>
-<choices>
- <range min="1" max="3"/>
- <value name="vt100" />
- <value name="xterm" />
- <include_values type="constraints"/>
- <include_values type="values"/>
-</choices>
-</prop_pattern>
-.fi
-.in -2
-
-.sp
-.LP
-range and value include ranges and individual values like they do for
-constraints.
-.sp
-.LP
-\fIinclude_values\fR includes all values specified by either the constraints
-block or the values block (see next section).
-.SS "Value Descriptions"
-.sp
-.LP
-Like property names, the values a property can take on can also have
-inscrutable representations. The values element contains localized,
-human-readable descriptions for specific property values:
-.sp
-.in +2
-.nf
-<prop_pattern>
-<values>
- <value name="blue">
- <common_name>
- <loctext xml:lang='C'>blueloctext xml:lang='C'>blue>
- </common_name>
- <description>
- <loctext xml:lang='C>
- The color between green and indigo.
- </loctext>
- </description>
- </value>
-</values>
-</prop_pattern>
-.fi
-.in -2
-
-.sp
-.LP
-\fIcommon_name\fR is a free-form string field, but is intended to be used as a
-label in a GUI or CLI.
-.sp
-.LP
-The following guidelines are recommended:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Be brief. A word or two is usually most appropriate.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Be clear. The service, property group, or property name might not be helpful
-for humans, but \fIcommon_name\fR should help clarify the purpose of the
-entity.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-No punctuation. \fIcommon_name\fR is not a sentence or a paragraph. It should
-not contain clauses or phrases. Punctuation should only be present to meet
-trademark requirements.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Capital letters must be used only for acronyms or proper names. For locales
-other than English, use appropriate capitalization for a sentence fragment.
-.RE
-.sp
-.LP
-description Guidelines
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Use proper grammar. description is a sentence meant to be read by humans.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Be brief. A few sentences are usually most appropriate.
-.RE
-.SH EXAMPLES
-.sp
-.LP
-Assuming a basic service which wants to define basic templates data looks
-like this:
-.sp
-.in +2
-.nf
-<?xml version="1.0"?
-<!DOCTYPE service_bundle SYSTEM "/usr/share/lib/xml/dtd/service_bundle.dtd.1">
-<service_bundle type='manifest' name='FOOfoo:foo'>
-<service name='system/foo' type='service' version='1'>
- <dependency>
- name='multi-user'
- type='service'
- grouping='require_all'
- restart_on='none'
- <service_fmri value='svc:/milestone/multi-user' />
- </dependency>
- <exec_method
- type='method'
- name='start'
- exec='/opt/foo/food'
- timeout_seconds='60'>
- </exec_method>
- <exec_method
- type='method'
- name='stop'
- exec=':kill'
- timeout_seconds='60'>
- </exec_method>
- <property_group name='config' type='application'>
- <propval name='local_only' type='boolean' value='false' />
- <propval name='config_file' type='astring'
- value='/opt/foo/foo.conf' />
- <property name='modules' type='astring'>
- <astring_list>
- <value_node value='bar'/>
- <value_node value='baz'/>
- </astring_list>
- </property>
- </property_group>
-
- <instance name='default' enabled='false' />
-</service_bundle>
-</service>
-.fi
-.in -2
-
-.sp
-.LP
-That service could define some basic templates data to help an administrator
-using this service inside of the \fB<service>\fR tags. The most helpful
-things are to document the purpose of the service itself and the
-service-specific configuration.
-.sp
-.in +2
-.nf
-<template>
- <common_name> <loctext xml:lang='C'>
- all-purpose demonstration
- </loctext> /common_name>
- <documentation>
- <manpage title='food' section='1M'
- manpath='/opt/foo/man' />
- </documentation>
-
- <pg_pattern name='config' type='application' target='this'
- required='true'>
- <description> <loctext xml:lang='C'>
- Basic configuration for foo.
- </loctext> </description>
- <prop_pattern name='local_only' type='boolean'
- required='false'>
- <description> <loctext xml:lang='C'>
- Only listen to local connection requests.
- </loctext> </description>
- </prop_pattern>
- <prop_pattern name='config_file' type='astring'
- required='true'>
- <cardinality min='1' max='1'/>
- <description> <loctext xml:lang='C'>
- Configuration file for foo.
- </loctext> </description>
- </prop_pattern>
- <prop_pattern name='modules' type='astring'
- required='false'>
- <description> <loctext xml:lang='C'>
- Plugin modules for foo.
- </loctext> /description>
- <values>
- <value name='bar'>
- <description> <loctext xml:lang='C'>
- Allow foo to access the bar.
- </loctext> </description>
- </value>
- <value name='baz'>
- <description> <loctext xml:lang='C'>
- Allow foo to access baz functions.
- </loctext> </description>
- </value>
- <value name='qux'>
- <description> <loctext xml:lang='C'>
- Allow foo to access qux functions.
- </loctext> </description>
- </value>
- </values>
- <choices>
- <include_values type='values'/>
- </choices>
- <prop_pattern>
- </pg_pattern>
-</template>
-.fi
-.in -2
-
-.SH FILES
-.sp
-.LP
-\fB/usr/share/lib/xml/dtd/service_bundle.dtd.1\fR
-.SH SEE ALSO
-.sp
-.LP
-\fBsvcs\fR(1), \fBsvccfg\fR(1M), \fBlibscf\fR(3LIB), \fBservice_bundle\fR(4),
-\fBsmf\fR(5)
diff --git a/usr/src/man/man5/smhba.conf.5 b/usr/src/man/man5/smhba.conf.5
new file mode 100644
index 0000000000..bdf4f65430
--- /dev/null
+++ b/usr/src/man/man5/smhba.conf.5
@@ -0,0 +1,97 @@
+'\" te
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
+.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SMHBA.CONF 5 "May 16, 2020"
+.SH NAME
+smhba.conf \- configuration file for the SMHBAAPI library
+.SH DESCRIPTION
+The \fB/etc/smhba.conf\fR file is used to specify the Vendor-Specific Libraries
+that are installed on the system. This file is used by the Common Library to
+load the individual VSLs when \fBHBA_LoadLibrary\fR(3HBAAPI) is called. If
+changes are made to the file while the library is in use, the library should be
+freed and reloaded. A version 1 VSL is compatible only with a version 1 Common
+Library. A version 2 VSL is compatible with both a version 1 and a version 2
+Common Library.
+.sp
+.LP
+Each VSL entry is a single line of the form:
+.sp
+.in +2
+.nf
+"name" "library path"
+.fi
+.in -2
+
+.sp
+.LP
+where:
+.sp
+.ne 2
+.na
+\fB\fIname\fR\fR
+.ad
+.RS 16n
+is the description of library. The library name should be prepended with the
+domain of the manufacturer of the library.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIlibrary path\fR\fR
+.ad
+.RS 16n
+is the absolute path to the shared object library file.
+.RE
+
+.SH EXAMPLES
+\fBExample 1 \fRContents of \fB/etc/smhba.conf\fR
+.sp
+.in +2
+.nf
+#
+# This file contains names and references to SM-HBA libraries
+#
+# Format:
+#
+# <library name> <library pathname>
+#
+# The library name should be prepended with the domain of
+# the manufacturer or driver author.
+com.sun.sashba /usr/lib/libsun_sas.so.1
+com.sun.sashba64 /usr/lib/64/libsun_sas.so.1
+.fi
+.in -2
+
+.SH ATTRIBUTES
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Committed
+_
+Standard T{
+ANSI INCITS 428 Storage Management Host Bus Adapter Application Programming Interface(SM-HBA)
+T}
+.TE
+
+.SH SEE ALSO
+.BR HBA_LoadLibrary (3HBAAPI),
+.BR libSMHBAAPI (3LIB),
+.BR attributes (7)
+.SH NOTES
+The SMHBAAPI library is provided in both 32-and 64-bit versions, but only one
+configuration file is specified. As a result, both 32- and 64-bit VSL libraries
+must be specified within the same file. When using the 32-bit Common Library,
+the 64-bit VSLs will fail to load. When using the 64-bit Common Library, the
+32-bit VSLs will fail to load. These failures are silently ignored by the
+Common Library during normal usage, but can result in warning messages when
+running client applications in a debugger.
diff --git a/usr/src/man/man5/sock2path.d.5 b/usr/src/man/man5/sock2path.d.5
new file mode 100644
index 0000000000..d92cc3f9c8
--- /dev/null
+++ b/usr/src/man/man5/sock2path.d.5
@@ -0,0 +1,60 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SOCK2PATH.D 5 "Apr 12, 2014"
+.SH NAME
+sock2path.d \- socket mapping files that map sockets to transport providers
+.SH SYNOPSIS
+.LP
+.nf
+\fB/etc/sock2path.d\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fB/etc/sock2path.d\fR is a directory containing files with mappings
+between the \fBsocket\fR(3SOCKET) call parameters and the transport
+provider driver. The mapping file format is described in the
+\fBsoconfig\fR(8) manual page.
+.sp
+.LP
+The \fBinit\fR(8) utility uses the \fBsoconfig\fR utility with the
+\fBsock2path.d\fR directory during the boot sequence.
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRAn Example of a Mapping File
+.sp
+.LP
+The following is an example of a mapping file:
+
+.sp
+.in +2
+.nf
+# Family Type Protocol Module | Path
+ 2 2 0 tcp
+ 2 2 6 tcp
+ 26 2 0 tcp
+ 26 2 6 tcp
+ 2 1 0 udp
+ 2 1 17 udp
+ 26 1 0 udp
+ 26 1 17 udp
+ 1 2 0 /dev/ticotsord
+ 1 6 0 /dev/ticotsord
+ 1 1 0 /dev/ticlts
+ 2 4 0 icmp
+ 26 4 0 icmp
+ 24 4 0 rts
+ 27 4 2 /dev/keysock
+.fi
+.in -2
+
+.SH SEE ALSO
+.sp
+.LP
+.BR socket (3SOCKET),
+.BR init (8),
+.BR soconfig (8)
diff --git a/usr/src/man/man5/space.5 b/usr/src/man/man5/space.5
new file mode 100644
index 0000000000..1294ac2ff8
--- /dev/null
+++ b/usr/src/man/man5/space.5
@@ -0,0 +1,78 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 1997, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SPACE 5 "Feb 7, 1997"
+.SH NAME
+space \- disk space requirement file
+.SH DESCRIPTION
+.sp
+.LP
+\fBspace\fR is an \fBASCII\fR file that gives information about disk space
+requirements for the target environment. The \fBspace\fR file defines space
+needed beyond what is used by objects defined in the \fBprototype\fR(5) file;
+for example, files which will be installed with the \fBinstallf\fR(8) command.
+The \fBspace\fR file should define the maximum amount of additional space that
+a package will require.
+.sp
+.LP
+The generic format of a line in this file is:
+.sp
+.LP
+\fIpathname blocks inodes\fR
+.sp
+.LP
+Definitions for the fields are as follows:
+.sp
+.ne 2
+.na
+\fB\fIpathname\fR\fR
+.ad
+.RS 12n
+Specify a directory name which may or may not be the mount point for a
+filesystem. Names that do not begin with a slash ('\fB/\fR') indicate
+relocatable directories.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIblocks\fR\fR
+.ad
+.RS 12n
+Define the number of disk blocks required for installation of the files and
+directory entries contained in the pathname (using a 512-byte block size).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIinodes\fR\fR
+.ad
+.RS 12n
+Define the number of inodes required for installation of the files and
+directory entries contained in the pathname.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRA sample file.
+.sp
+.in +2
+.nf
+# extra space required by config data which is
+# dynamically loaded onto the system
+data 500 1
+.fi
+.in -2
+.sp
+
+.SH SEE ALSO
+.sp
+.LP
+.BR prototype (5),
+.BR installf (8)
+.sp
+.LP
+\fIApplication Packaging Developer\&'s Guide\fR
diff --git a/usr/src/man/man5/standards.5 b/usr/src/man/man5/standards.5
deleted file mode 100644
index b77846f061..0000000000
--- a/usr/src/man/man5/standards.5
+++ /dev/null
@@ -1,487 +0,0 @@
-'\" te
-.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH STANDARDS 5 "Nov 26, 2017"
-.SH NAME
-standards, ANSI, C, C++, ISO, POSIX, POSIX.1, POSIX.2, SUS, SUSv2, SUSv3, SVID,
-SVID3, XNS, XNS4, XNS5, XPG, XPG3, XPG4, XPG4v2 \- standards and specifications
-supported by Solaris
-.SH DESCRIPTION
-.LP
-Solaris 10 supports IEEE Std 1003.1 and IEEE Std 1003.2, commonly known as
-POSIX.1 and POSIX.2, respectively. The following table lists each version of
-these standards with a brief description and the SunOS or Solaris release that
-first conformed to it.
-.sp
-
-.sp
-.TS
-c c c
-l l l .
-POSIX Standard Description Release
-_
-POSIX.1-1988 system interfaces and headers SunOS 4.1
-_
-POSIX.1-1990 POSIX.1-1988 update Solaris 2.0
-_
-POSIX.1b-1993 realtime extensions Solaris 2.4
-_
-POSIX.1c-1996 threads extensions Solaris 2.6
-_
-POSIX.2-1992 shell and utilities Solaris 2.5
-_
-POSIX.2a-1992 interactive shell and utilities Solaris 2.5
-_
-POSIX.1-2001 T{
-POSIX.1-1990, POSIX.1b-1993, POSIX.1c-1996, POSIX.2-1992, and POSIX.2a-1992 updates
-T} Solaris 10
-.TE
-
-.sp
-.LP
-Solaris 10 also supports the X/Open Common Applications Environment (CAE)
-Portability Guide Issue 3 (XPG3) and Issue 4 (XPG4); Single UNIX Specification
-(SUS, also known as XPG4v2); Single UNIX Specification, Version 2 (SUSv2); and
-Single UNIX Specification, Version 3 (SUSv3). Both XPG4 and SUS include
-Networking Services Issue 4 (XNS4). SUSv2 includes Networking Services Issue 5
-(XNS5).
-.sp
-.LP
-The following table lists each X/Open specification with a brief description
-and the SunOS or Solaris release that first conformed to it.
-.sp
-
-.sp
-.TS
-c c c
-c c c .
-X/Open CAE
-_
- Specification Description Release
-_
-XPG3 T{
-superset of POSIX.1-1988 containing utilities from SVID3
-T} SunOS 4.1
-_
-XPG4 T{
-superset of POSIX.1-1990, POSIX.2-1992, and POSIX.2a-1992 containing extensions to POSIX standards from XPG3
-T} Solaris 2.4
-_
-SUS (XPG4v2) T{
-superset of XPG4 containing historical BSD interfaces widely used by common application packages
-T} Solaris 2.6
-_
-XNS4 sockets and XTI interfaces Solaris 2.6
-_
-SUSv2 T{
-superset of SUS extended to support POSIX.1b-1993, POSIX.1c-1996, and ISO/IEC 9899 (C Standard) Amendment 1
-T} Solaris 7
-_
-XNS5 T{
-superset and LP64-clean derivative of XNS4.
-T} Solaris 7
-_
-SUSv3 same as POSIX.1-2001 Solaris 10
-.TE
-
-.sp
-.LP
-The XNS4 specification is safe for use only in ILP32 (32-bit) environments and
-should not be used for LP64 (64-bit) application environments. Use XNS5 or
-SUSv3, which have LP64-clean interfaces that are portable across ILP32 and LP64
-environments. Solaris releases 7 through 10 support both the ILP32 and LP64
-environments.
-.sp
-.LP
-Solaris releases 7 through 10 have been branded to conform to The Open Group's
-UNIX 98 Product Standard. Solaris 10 has been branded to conform to The Open
-Group's UNIX 03 Product Standard.
-.sp
-.LP
-Solaris releases 2.0 through 10 support the interfaces specified by the System
-V Interface Definition, Third Edition, Volumes 1 through 4 (SVID3). Note,
-however, that since the developers of this specification (UNIX Systems
-Laboratories) are no longer in business and since this specification defers to
-POSIX and X/Open CAE specifications, there is some disagreement about what is
-currently required for conformance to this specification.
-.sp
-.LP
-When \fBSun Studio C Compiler 5.6\fR is installed, Solaris releases 2.0 through
-10 support the ANSI X3.159-1989 Programming Language - C and ISO/IEC 9899:1990
-Programming Language - C (C) interfaces.
-.sp
-.LP
-When \fBSun Studio C Compiler 5.6\fR is installed, Solaris releases 7 through
-10 support ISO/IEC 9899:1990 Amendment 1:1995: C Integrity.
-.sp
-.LP
-When \fBSun Studio C Compiler 5.6\fR is installed, Solaris 10 supports ISO/IEC
-9899:1999 Programming Languages - C.
-.sp
-.LP
-When \fBSun Studio C++ Compiler 5.6\fR is installed, Solaris releases 2.5.1
-through 10 support ISO/IEC 14882:1998 Programming Languages - C++. Unsupported
-features of that standard are described in the compiler README file.
-.SS "Utilities"
-.LP
-If the behavior required by POSIX.2, POSIX.2a, XPG4, SUS, or SUSv2 conflicts
-with historical Solaris utility behavior, the original Solaris version of the
-utility is unchanged; a new version that is standard-conforming has been
-provided in \fB/usr/xpg4/bin\fR. If the behavior required by POSIX.1-2001 or
-SUSv3 conflicts with historical Solaris utility behavior, a new version that is
-standard-conforming has been provided in \fB/usr/xpg4/bin\fR or in
-\fB/usr/xpg6/bin\fR. If the behavior required by POSIX.1-2001 or SUSv3
-conflicts with POSIX.2, POSIX.2a, SUS, or SUSv2, a new version that is SUSv3
-standard-conforming has been provided in \fB/usr/xpg6/bin\fR.
-.sp
-.LP
-An application that wants to use standard-conforming utilities must set the
-\fBPATH\fR (\fBsh\fR(1) or \fBksh\fR(1)) or \fBpath\fR (\fBcsh\fR(1))
-environment variable to specify the directories listed below in the order
-specified to get the appropriate utilities:
-.sp
-.ne 2
-.na
-\fBSVID3, XPG3\fR
-.ad
-.sp .6
-.RS 4n
-.RS +4
-.TP
-1.
-\fB/usr/ccs/bin\fR
-.RE
-.RS +4
-.TP
-2.
-\fB/usr/bin\fR
-.RE
-.RS +4
-.TP
-3.
-directory containing binaries for your compiler
-.RE
-.RS +4
-.TP
-4.
-other directories containing binaries needed by the application
-.RE
-.RE
-
-.sp
-.ne 2
-.na
-\fBPOSIX.2, POSIX.2a, SUS, SUSv2, XPG4\fR
-.ad
-.sp .6
-.RS 4n
-.RS +4
-.TP
-1.
-\fB/usr/xpg4/bin\fR
-.RE
-.RS +4
-.TP
-2.
-\fB/usr/ccs/bin\fR
-.RE
-.RS +4
-.TP
-3.
-\fB/usr/bin\fR
-.RE
-.RS +4
-.TP
-4.
-directory containing binaries for your compiler
-.RE
-.RS +4
-.TP
-5.
-other directories containing binaries needed by the application
-.RE
-.RE
-
-.sp
-.ne 2
-.na
-\fBPOSIX.1-2001, SUSv3\fR
-.ad
-.sp .6
-.RS 4n
-.RS +4
-.TP
-1.
-\fB/usr/xpg6/bin\fR
-.RE
-.RS +4
-.TP
-2.
-\fB/usr/xpg4/bin\fR
-.RE
-.RS +4
-.TP
-3.
-\fB/usr/ccs/bin\fR
-.RE
-.RS +4
-.TP
-4.
-\fB/usr/bin\fR
-.RE
-.RS +4
-.TP
-5.
-directory containing binaries for your compiler
-.RE
-.RS +4
-.TP
-6.
-other directories containing binaries needed by the application
-.RE
-.RE
-
-.SS "Feature Test Macros"
-.LP
-Feature test macros are used by applications to indicate additional sets of
-features that are desired beyond those specified by the C standard. If an
-application uses only those interfaces and headers defined by a particular
-standard (such as POSIX or X/Open CAE), then it need only define the
-appropriate feature test macro specified by that standard. If the application
-is using interfaces and headers not defined by that standard, then in addition
-to defining the appropriate standard feature test macro, it must also define
-\fB__EXTENSIONS__\fR. Defining \fB__EXTENSIONS__\fR provides the application
-with access to all interfaces and headers not in conflict with the specified
-standard. The application must define \fB__EXTENSIONS__\fR either on the
-compile command line or within the application source files.
-.SS "1989 ANSI C, 1990 ISO C, 1999 ISO C"
-.LP
-No feature test macros need to be defined to indicate that an application is a
-conforming C application.
-.SS "ANSI/ISO C++"
-.LP
-ANSI/ISO C++ does not define any feature test macros. If the standard C++
-announcement macro \fB__cplusplus\fR is predefined to value 199711 or greater,
-the compiler operates in a standard-conforming mode, indicating C++ standards
-conformance. The value 199711 indicates conformance to ISO/IEC 14882:1998, as
-required by that standard. (As noted above, conformance to the standard is
-incomplete.) A standard-conforming mode is not available with compilers prior
-to Sun WorkShop C++ 5.0.
-.sp
-.LP
-C++ bindings are not defined for POSIX or X/Open CAE, so specifying feature
-test macros such as \fB_POSIX_SOURCE\fR, \fB_POSIX_C_SOURCE\fR, and
-\fB_XOPEN_SOURCE\fR can result in compilation errors due to conflicting
-requirements of standard C++ and those specifications.
-.SS "POSIX"
-.LP
-Applications that are intended to be conforming POSIX.1 applications must
-define the feature test macros specified by the standard before including any
-headers. For the standards listed below, applications must define the feature
-test macros listed. Application writers must check the corresponding standards
-for other macros that can be queried to determine if desired options are
-supported by the implementation.
-.sp
-
-.sp
-.TS
-c c
-l l .
-\fBPOSIX Standard\fR \fBFeature Test Macros\fR
-_
-POSIX.1-1990 \fB_POSIX_SOURCE\fR
-_
-T{
-POSIX.1-1990 and POSIX.2-1992 C-Language Bindings Option
-T} \fB_POSIX_SOURCE\fR and \fB_POSIX_C_SOURCE=2\fR
-POSIX.1b-1993 \fB_POSIX_C_SOURCE=199309L\fR
-_
-POSIX.1c-1996 \fB_POSIX_C_SOURCE=199506L\fR
-_
-POSIX.1-2001 \fB_POSIX_C_SOURCE=200112L\fR
-.TE
-
-.SS "SVID3"
-.LP
-The SVID3 specification does not specify any feature test macros to indicate
-that an application is written to meet SVID3 requirements. The SVID3
-specification was written before the C standard was completed.
-.SS "X/Open CAE"
-.LP
-To build or compile an application that conforms to one of the X/Open CAE
-specifications, use the following guidelines. Applications need not set the
-POSIX feature test macros if they require both CAE and POSIX functionality.
-.sp
-.ne 2
-.na
-\fBXPG3\fR
-.ad
-.RS 16n
-The application must define \fB_XOPEN_SOURCE\fR. If \fB_XOPEN_SOURCE\fR is
-defined with a value, the value must be less than 500.
-.RE
-
-.sp
-.ne 2
-.na
-\fBXPG4\fR
-.ad
-.RS 16n
-The application must define \fB_XOPEN_SOURCE\fR and set \fB_XOPEN_VERSION=4\fR.
-If \fB_XOPEN_SOURCE\fR is defined with a value, the value must be less than
-500.
-.RE
-
-.sp
-.ne 2
-.na
-\fBSUS (XPG4v2)\fR
-.ad
-.RS 16n
-The application must define \fB_XOPEN_SOURCE\fR and set
-\fB_XOPEN_SOURCE_EXTENDED=1\fR. If \fB_XOPEN_SOURCE\fR is defined with a value,
-the value must be less than 500.
-.RE
-
-.sp
-.ne 2
-.na
-\fBSUSv2\fR
-.ad
-.RS 16n
-The application must define \fB_XOPEN_SOURCE=500\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBSUSv3\fR
-.ad
-.RS 16n
-The application must define \fB_XOPEN_SOURCE=600\fR.
-.RE
-
-.SS "Compilation"
-.LP
-A POSIX.1 (1988-1996)-, XPG4-, SUS-, or SUSv2-conforming implementation must
-include an ANSI X3.159-1989 (ANSI C Language) standard-conforming compilation
-system and the \fBcc\fR and \fBc89\fR utilities. A POSIX.1-2001- or
-SUSv3-conforming implementation must include an ISO/IEC 99899:1999 (1999 ISO C
-Language) standard-conforming compilation system and the \fBc99\fR utility.
-Solaris 10 was tested with the \fBcc\fR, \fBc89\fR, and \fBc99\fR utilities and
-the compilation environment provided by \fBSun Studio C Compiler 5.6\fR.
-.sp
-.LP
-When \fBcc\fR is used to link applications, \fB/usr/lib/values-xpg4.o\fR must
-be specified on any link/load command line, unless the application is
-POSIX.1-2001- or SUSv3-conforming, in which case \fB/usr/lib/values-xpg6.o\fR
-must be specified on any link/load compile line. The preferred way to build
-applications, however, is described in the table below.
-.sp
-.LP
-An XNS4- or XNS5-conforming application must include \fB-l\fR \fBXNS\fR on any
-link/load command line in addition to defining the feature test macros
-specified for SUS or SUSv2, respectively.
-.sp
-.LP
-If the compiler supports the \fBredefine_extname\fR pragma feature (the \fBSun
-Studio C Compiler 5.6\fR compilers define the macro
-\fB__PRAGMA_REDEFINE_EXTNAME\fR to indicate that it supports this feature),
-then the standard headers use \fB#pragma\fR \fBredefine_extname\fR directives
-to properly map function names onto library entry point names. This mapping
-provides full support for ISO C, POSIX, and X/Open namespace reservations.
-.sp
-.LP
-If this pragma feature is not supported by the compiler, the headers use the
-\fB#define\fR directive to map internal function names onto appropriate library
-entry point names. In this instance, applications should avoid using the
-explicit 64-bit file offset symbols listed on the \fBlf64\fR(5) manual page,
-since these names are used by the implementation to name the alternative entry
-points.
-.sp
-.LP
-When using \fBSun Studio C Compiler 5.6\fR compilers, applications conforming
-to the specifications listed above should be compiled using the utilities and
-flags indicated in the following table:
-.sp
-.in +2
-.nf
-Specification Compiler/Flags Feature Test Macros
-_________________________________________________________________________
-1989 ANSI C and 1990 ISO C c89 none
-_________________________________________________________________________
-1999 ISO C c99 none
-_________________________________________________________________________
-2011 ISO C c11 none
- gcc -stdc=c11
-_________________________________________________________________________
-SVID3 cc -Xt -xc99=none none
-_________________________________________________________________________
-POSIX.1-1990 c89 _POSIX_SOURCE
-_________________________________________________________________________
-POSIX.1-1990 and POSIX.2-1992 c89 _POSIX_SOURCE and
- C-Language Bindings Option POSIX_C_SOURCE=2
-_________________________________________________________________________
-POSIX.1b-1993 c89 _POSIX_C_SOURCE=199309L
-_________________________________________________________________________
-POSIX.1c-1996 c89 _POSIX_C_SOURCE=199506L
-_________________________________________________________________________
-POSIX.1-2001 c99 _POSIX_C_SOURCE=200112L
-_________________________________________________________________________
-CAE XPG3 cc -Xa -xc99=none _XOPEN_SOURCE
-_________________________________________________________________________
-CAE XPG4 c89 _XOPEN_SOURCE and
- _XOPEN_VERSION=4
-_________________________________________________________________________
-SUS (CAE XPG4v2) c89 _XOPEN_SOURCE and
- (includes XNS4) _XOPEN_SOURCE_EXTENDED=1
-_________________________________________________________________________
-SUSv2 (includes XNS5) c89 _XOPEN_SOURCE=500
-_________________________________________________________________________
-SUSv3 c99 _XOPEN_SOURCE=600
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-For platforms supporting the LP64 (64-bit) programming environment,
-SUSv2-conforming LP64 applications using XNS5 library calls should be built
-with command lines of the form:
-.sp
-.in +2
-.nf
-c89 $(getconf XBS5_LP64_OFF64_CFLAGS) -D_XOPEN_SOURCE=500 \e
- $(getconf XBS5_LP64_OFF64_LDFLAGS) foo.c -o foo \e
- $(getconf XBS5_LP64_OFF64_LIBS) -lxnet
-.fi
-.in -2
-
-.sp
-.LP
-Similar SUSv3-conforming LP64 applications should be built with command lines
-of the form:
-.sp
-.in +2
-.nf
-c99 $(getconf POSIX_V6_LP64_OFF64_CFLAGS) -D_XOPEN_SOURCE=600 \e
- $(getconf POSIX_V6_LP64_OFF64_LDFLAGS) foo.c -o foo \e
- $(getconf POSIX_V6_LP64_OFF64_LIBS) -lxnet
-.fi
-.in -2
-
-.SS "SUSv3"
-.ne 2
-.na
-\fB\fBc99\fR\fR
-.ad
-.RS 28n
-\fB_XOPEN_SOURCE=600\fR
-.RE
-
-.SH SEE ALSO
-.LP
-\fBcsh\fR(1), \fBksh\fR(1), \fBsh\fR(1), \fBexec\fR(2), \fBsysconf\fR(3C),
-\fBsystem\fR(3C), \fBenviron\fR(5), \fBlf64\fR(5)
diff --git a/usr/src/man/man5/sticky.5 b/usr/src/man/man5/sticky.5
deleted file mode 100644
index 52badee857..0000000000
--- a/usr/src/man/man5/sticky.5
+++ /dev/null
@@ -1,40 +0,0 @@
-'\" te
-.\" Copyright (c) 2002, Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright (c) 1983 Regents of the University of California. All rights reserved. The Berkeley software License Agreement specifies the terms and conditions for redistribution.
-.TH STICKY 5 "Aug 1, 2002"
-.SH NAME
-sticky \- mark files for special treatment
-.SH DESCRIPTION
-.sp
-.LP
-The \fIsticky bit\fR (file mode bit \fB01000\fR, see \fBchmod\fR(2)) is used
-to indicate special treatment of certain files and directories. A directory for
-which the sticky bit is set restricts deletion of files it contains. A file in
-a sticky directory can only be removed or renamed by a user who has write
-permission on the directory, and either owns the file, owns the directory, has
-write permission on the file, or is a privileged user. Setting the sticky bit
-is useful for directories such as \fB/tmp\fR, which must be publicly writable
-but should deny users permission to arbitrarily delete or rename the files of
-others.
-.sp
-.LP
-If the sticky bit is set on a regular file and no execute bits are set, the
-system's page cache will not be used to hold the file's data. This bit is
-normally set on swap files of diskless clients so that accesses to these files
-do not flush more valuable data from the system's cache. Moreover, by default
-such files are treated as swap files, whose inode modification times may not
-necessarily be correctly recorded on permanent storage.
-.sp
-.LP
-Any user may create a sticky directory. See \fBchmod\fR for details about
-modifying file modes.
-.SH SEE ALSO
-.sp
-.LP
-\fBchmod\fR(1), \fBchmod\fR(2), \fBchown\fR(2), \fBmkdir\fR(2),
-\fBrename\fR(2), \fBunlink\fR(2)
-.SH BUGS
-.sp
-.LP
-The \fBmkdir\fR(2) function will not create a directory with the sticky bit
-set.
diff --git a/usr/src/man/man5/sulog.5 b/usr/src/man/man5/sulog.5
new file mode 100644
index 0000000000..90d05807d2
--- /dev/null
+++ b/usr/src/man/man5/sulog.5
@@ -0,0 +1,139 @@
+'\" te
+.\" Copyright (c) 1994, Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SULOG 5 "Jun 6, 1994"
+.SH NAME
+sulog \- su command log file
+.SH SYNOPSIS
+.LP
+.nf
+\fB/var/adm/sulog\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBsulog\fR file is a record of all attempts by users on the system to
+execute the \fBsu\fR(8) command. Each time \fBsu\fR(8) is executed, an
+entry is added to the \fBsulog\fR file.
+.sp
+.LP
+Each entry in the \fBsulog\fR file is a single line of the form:
+.sp
+.in +2
+.nf
+\fBSU\fR \fBdate\fR \fBtime\fR
+\fIresult port user\fR\fB-\fR\fInewuser\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+where
+.sp
+.ne 2
+.na
+\fB\fBdate\fR\fR
+.ad
+.RS 11n
+The month and date \fBsu\fR(8) was executed. \fBdate\fR is displayed in the
+form \fImm\fR\fB/\fR\fBdd\fR where \fImm\fR is the month number and \fBdd\fR
+is the day number in the month.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBtime\fR\fR
+.ad
+.RS 11n
+The time \fBsu\fR(8) was executed. \fBtime\fR is displayed in the form
+\fIHH\fR\fB/\fR\fIMM\fR where \fIHH\fR is the hour number (24 hour system) and
+\fIMM\fR is the minute number.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIresult\fR\fR
+.ad
+.RS 11n
+The result of the \fBsu\fR(8) command. A ` + ' sign is displayed in this
+field if the su attempt was successful; otherwise a ` - ' sign is displayed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIport\fR\fR
+.ad
+.RS 11n
+The name of the terminal device from which \fBsu\fR(8) was executed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIuser\fR\fR
+.ad
+.RS 11n
+The user id of the user executing the \fBsu\fR(8) command.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fInewuser\fR\fR
+.ad
+.RS 11n
+The user id being switched to with \fBsu\fR(8).
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRA sample \fBsulog\fR file.
+.sp
+.LP
+Here is a sample \fBsulog\fR file:
+
+.sp
+.in +2
+.nf
+SU 02/25 09:29 + console root-sys
+SU 02/25 09:32 + pts/3 user1-root
+SU 03/02 08:03 + pts/5 user1-root
+SU 03/03 08:19 + pts/5 user1-root
+SU 03/09 14:24 - pts/5 guest3-root
+SU 03/09 14:24 - pts/5 guest3-root
+SU 03/14 08:31 + pts/4 user1-root
+.fi
+.in -2
+.sp
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/var/adm/sulog\fR\fR
+.ad
+.RS 19n
+su log file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/default/su\fR\fR
+.ad
+.RS 19n
+contains the default location of \fBsulog\fR
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR su (8)
diff --git a/usr/src/man/man5/sysbus.5 b/usr/src/man/man5/sysbus.5
new file mode 100644
index 0000000000..95b7d1e303
--- /dev/null
+++ b/usr/src/man/man5/sysbus.5
@@ -0,0 +1,131 @@
+'\" te
+.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SYSBUS 5 "December 28, 2020"
+.SH NAME
+sysbus, isa \- device tree properties for ISA bus device drivers
+.SH DESCRIPTION
+Solaris for x86 supports the \fBISA\fR bus as the system bus. Drivers for
+devices on this bus use the device tree built by the booting system to
+retrieve the necessary system resources used by the driver. These resources
+include device I/O port addresses, any interrupt capabilities that the device
+can have, any DMA channels it can require, and any memory-mapped addresses it
+can occupy.
+.sp
+.LP
+Configuration files for \fBISA\fR device drivers are only necessary to describe
+properties used by a particular driver that are not part of the standard
+properties found in the device tree. See \fBdriver.conf\fR(5) for further
+details of configuration file syntax.
+.sp
+.LP
+The \fBISA\fR nexus drivers all belong to class \fBsysbus\fR. All bus drivers
+of class \fBsysbus\fR recognize the following properties:
+.sp
+.ne 2
+.na
+\fB\fBinterrupts\fR\fR
+.ad
+.RS 16n
+An arbitrary-length array where each element of the array represents a hardware
+interrupt (IRQ) that is used by the device. In general, this array only has
+one entry unless a particular device uses more than one IRQ.
+.sp
+Solaris defaults all \fBISA\fR interrupts to IPL 5. This interrupt priority
+can be overridden by placing an \fBinterrupt-priorities\fR property in a .conf
+file for the driver. Each entry in the array of integers for the
+\fBinterrupt-priorities\fR property is matched one-to-one with the elements in
+the \fBinterrupts\fR property to specify the \fBIPL\fR value that is used by
+the system for this interrupt in this driver. This is the priority that this
+device's interrupt handler receives relative to the interrupt handlers of other
+drivers. The priority is an integer from \fB1\fR to \fB16\fR. Generally,
+disks are assigned a priority of \fB5\fR, while mice and printers are lower,
+and serial communication devices are higher, typically \fB7\fR. \fB10\fR is
+reserved by the system and must not be used. Priorities \fB11\fR and greater
+are high level priorities and are generally not recommended (see
+\fBddi_intr_hilevel\fR(9F)).
+.sp
+The driver can refer to the elements of this array by index using
+\fBddi_add_intr\fR(9F). The index into the array is passed as the
+\fIinumber\fR argument of \fBddi_add_intr()\fR.
+.sp
+Only devices that generate interrupts have an \fBinterrupts\fR property.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBreg\fR\fR
+.ad
+.RS 16n
+An arbitrary-length array where each element of the array consists of a 3-tuple
+of integers. Each array element describes a contiguous memory address range
+associated with the device on the bus.
+.sp
+The first integer of the tuple specifies the memory type, \fB0\fR specifies a
+memory range and \fB1\fR specifies an I/O range. The second integer specifies
+the base address of the memory range. The third integer of each 3-tuple
+specifies the size, in bytes, of the mappable region.
+.sp
+The driver can refer to the elements of this array by index, and construct
+kernel mappings to these addresses using \fBddi_map_regs\fR(9F). The index into
+the array is passed as the \fIrnumber\fR argument of \fBddi_map_regs()\fR.
+.sp
+All \fBsysbus\fR devices have \fBreg\fR properties. The first tuple of this
+property is used to construct the address part of the device name under
+\fB/devices\fR. In the case of \fBPlug and Play ISA\fR devices, the first tuple
+is a special tuple that does not denote a memory range, but is used by the
+system only to create the address part of the device name. This special tuple
+can be recognized by determining if the top bit of the first integer is set to
+a one.
+.sp
+The order of the tuples in the reg property is determined by the boot system
+probe code and depends on the characteristics of each particular device.
+However, the reg property maintains the same order of entries from system boot
+to system boot. The recommended way to determine the reg property for a
+particular device is to use the \fBprtconf\fR(8) command after installing the
+particular device. The output of the \fBprtconf\fR command can be examined to
+determine the reg property for any installed device.
+.sp
+You can use the \fBddi_get*\fR and \fBddi_put*\fR family of functions to access
+register space from a high-level interrupt context.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdma-channels\fR\fR
+.ad
+.RS 16n
+A list of integers that specifies the DMA channels used by this device. Only
+devices that use DMA channels have a \fBdma-channels\fR property.
+.RE
+
+.SH ATTRIBUTES
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture x86
+.TE
+
+.SH SEE ALSO
+.BR driver.conf (5),
+.BR scsi (5),
+.BR attributes (7),
+.BR prtconf (8),
+.BR ddi_add_intr (9F),
+.BR ddi_intr_hilevel (9F),
+.BR ddi_map_regs (9F),
+.BR ddi_prop_op (9F)
+.sp
+.LP
+\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man5/syslog.conf.5 b/usr/src/man/man5/syslog.conf.5
new file mode 100644
index 0000000000..c40e43a6e0
--- /dev/null
+++ b/usr/src/man/man5/syslog.conf.5
@@ -0,0 +1,436 @@
+'\" te
+.\" Copyright (c) 2013 Gary Mills
+.\" Copyright (c) 2003 Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright (c) 1983 Regents of the University of California. All rights reserved. The Berkeley software License Agreement specifies the terms and conditions for redistribution.
+.TH SYSLOG.CONF 5 "Nov 19, 2013"
+.SH NAME
+syslog.conf \- configuration file for syslogd system log daemon
+.SH SYNOPSIS
+.LP
+.nf
+\fB/etc/syslog.conf\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+The file \fB/etc/syslog.conf\fR contains information used by the system log
+daemon, \fBsyslogd\fR(8), to forward a system message to appropriate log files
+and/or users. \fBsyslogd\fR preprocesses this file through \fBm4\fR(1) to
+obtain the correct information for certain log files, defining \fBLOGHOST\fR if
+the address of "loghost" is the same as one of the addresses of the host that
+is running \fBsyslogd\fR.
+.sp
+.LP
+A configuration entry is composed of two TAB-separated fields:
+.sp
+.in +2
+.nf
+\fIselector action\fR
+.fi
+.in -2
+
+.sp
+.LP
+The \fIselector\fR field contains a semicolon-separated list of priority
+specifications of the form:
+.sp
+.in +2
+.nf
+\fIfacility\fR\fB\&.\fR\fIlevel\fR [ \fB;\fR \fIfacility\fR\fB\&.\fR\fIlevel\fR ]
+.fi
+.in -2
+
+.sp
+.LP
+where \fIfacility\fR is a system facility, or comma-separated list of
+facilities, and \fIlevel\fR is an indication of the severity of the condition
+being logged.
+The presence of a facility name only implies that it is available.
+Each individual service determines which facility it will use for logging.
+In particular, many facilities are only useful for \fBsyslog\fR messages
+that are forwarded from other operating systems.
+Recognized values for \fIfacility\fR include:
+.sp
+.ne 2
+.na
+\fB\fBkern\fR\fR
+.ad
+.RS 12n
+Messages generated by the kernel.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBuser\fR\fR
+.ad
+.RS 12n
+Messages generated by user processes. This is the default priority for messages
+from programs or facilities not listed in this file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmail\fR\fR
+.ad
+.RS 12n
+The mail system.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdaemon\fR\fR
+.ad
+.RS 12n
+Various system daemons.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBauth\fR\fR
+.ad
+.RS 12n
+The authorization system: \fBlogin\fR(1), \fBsu\fR(8), \fBgetty\fR(8), among
+others.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBlpr\fR\fR
+.ad
+.RS 12n
+The line printer spooling system: \fBlpr\fR(1B), \fBlpc\fR(1B), among others.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnews\fR\fR
+.ad
+.RS 12n
+Designated for the USENET network news system.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBuucp\fR\fR
+.ad
+.RS 12n
+Designated for the UUCP system; it does not currently use the \fBsyslog\fR
+mechanism.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBaltcron\fR\fR
+.ad
+.RS 12n
+Designated for the BSD cron/at system.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBauthpriv\fR\fR
+.ad
+.RS 12n
+Designated for the BSD security/authorization system.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBftp\fR\fR
+.ad
+.RS 12n
+Designated for the file transfer system.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBntp\fR\fR
+.ad
+.RS 12n
+Designated for the network time system.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBaudit\fR\fR
+.ad
+.RS 12n
+Designated for audit messages generated by systems that audit by means of
+syslog.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBconsole\fR\fR
+.ad
+.RS 12n
+Designated for the BSD console system.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcron\fR\fR
+.ad
+.RS 12n
+Designated for \fBcron\fR/\fBat\fR messages generated by systems that do
+logging through \fBsyslog\fR.
+The current versions of \fBcron\fR and \fBat\fR do not use this facility
+for logging.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBlocal0-7\fR\fR
+.ad
+.RS 12n
+Designated for local use.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmark\fR\fR
+.ad
+.RS 12n
+For timestamp messages produced internally by \fBsyslogd\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB*\fR\fR
+.ad
+.RS 12n
+An asterisk indicates all facilities except for the \fBmark\fR facility.
+.RE
+
+.sp
+.LP
+Recognized values for \fIlevel\fR are (in descending order of severity):
+.sp
+.ne 2
+.na
+\fB\fBemerg\fR\fR
+.ad
+.RS 11n
+For panic conditions that would normally be broadcast to all users.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBalert\fR\fR
+.ad
+.RS 11n
+For conditions that should be corrected immediately, such as a corrupted system
+database.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcrit\fR\fR
+.ad
+.RS 11n
+For warnings about critical conditions, such as hard device errors.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBerr\fR\fR
+.ad
+.RS 11n
+For other errors.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBwarning\fR\fR
+.ad
+.RS 11n
+For warning messages.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnotice\fR\fR
+.ad
+.RS 11n
+For conditions that are not error conditions, but may require special handling.
+A configuration entry with a \fIlevel\fR value of \fBnotice\fR must appear on a
+separate line.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBinfo\fR\fR
+.ad
+.RS 11n
+Informational messages.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdebug\fR\fR
+.ad
+.RS 11n
+For messages that are normally used only when debugging a program.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnone\fR\fR
+.ad
+.RS 11n
+Do not send messages from the indicated \fIfacility\fR to the selected file.
+For example, a \fIselector\fR of
+.sp
+\fB*.debug;mail.none\fR
+.sp
+sends all messages \fIexcept\fR mail messages to the selected file.
+.RE
+
+.sp
+.LP
+For a given \fIfacility\fR and \fIlevel\fR, \fBsyslogd\fR matches all messages
+for that level and all higher levels. For example, an entry that specifies a
+level of \fBcrit\fR also logs messages at the \fBalert\fR and \fBemerg\fR
+levels.
+.sp
+.LP
+The \fIaction\fR field indicates where to forward the message. Values for this
+field can have one of four forms:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+A filename, beginning with a leading slash, which indicates that messages
+specified by the \fIselector\fR are to be written to the specified file. The
+file is opened in append mode if it exists. If the file does not exist, logging
+silently fails for this action.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The name of a remote host, prefixed with an \fB@\fR, as with:
+\fB@\fR\fIserver\fR, which indicates that messages specified by the
+\fIselector\fR are to be forwarded to the \fBsyslogd\fR on the named host. The
+hostname "loghost" is treated, in the default \fBsyslog.conf\fR, as the
+hostname given to the machine that logs \fBsyslogd\fR messages. Every machine
+is "loghost" by default, per the hosts database. It is also possible to specify
+one machine on a network to be "loghost" by, literally, naming the machine
+"loghost". If the local machine is designated to be "loghost", then
+\fBsyslogd\fR messages are written to the appropriate files. Otherwise, they
+are sent to the machine "loghost" on the network.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+A comma-separated list of usernames, which indicates that messages specified by
+the \fIselector\fR are to be written to the named users if they are logged in.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+An asterisk, which indicates that messages specified by the \fIselector\fR are
+to be written to all logged-in users.
+.RE
+.sp
+.LP
+Blank lines are ignored. Lines for which the first nonwhite character is
+a '\fB#\fR' are treated as comments.
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRA Sample Configuration File
+.sp
+.LP
+With the following configuration file:
+
+.sp
+
+.sp
+.TS
+l l
+l l .
+\fB*.notice\fR \fB/var/log/notice\fR
+\fBmail.info\fR \fB/var/log/notice\fR
+\fB*.crit\fR \fB/var/log/critical\fR
+\fBkern,mark.debug\fR \fB/dev/console\fR
+\fBkern.err\fR \fB@server\fR
+\fB*.emerg\fR \fB*\fR
+\fB*.alert\fR \fBroot,operator\fR
+\fB*.alert;auth.warning\fR \fB/var/log/auth\fR
+.TE
+
+.sp
+.LP
+\fBsyslogd\fR(8) logs all mail system messages except \fBdebug\fR messages and
+all \fBnotice\fR (or higher) messages into a file named \fB/var/log/notice\fR.
+It logs all critical messages into \fB/var/log/critical\fR, and all kernel
+messages and 20-minute marks onto the system console.
+
+.sp
+.LP
+Kernel messages of \fBerr\fR (error) severity or higher are forwarded to the
+machine named \fBserver\fR. Emergency messages are forwarded to all users. The
+users \fBroot\fR and \fBoperator\fR are informed of any \fBalert\fR messages.
+All messages from the authorization system of \fBwarning\fR level or higher are
+logged in the file \fB/var/log/auth\fR.
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Stable
+.TE
+
+.SH SEE ALSO
+.LP
+.BR at (1),
+.BR crontab (1),
+.BR logger (1),
+.BR login (1),
+.BR lp (1),
+.BR m4 (1),
+.BR lpc (1B),
+.BR lpr (1B),
+.BR syslog (3C),
+.BR hosts (5),
+.BR attributes (7),
+.BR cron (8),
+.BR getty (8),
+.BR in.ftpd (8),
+.BR su (8),
+.BR syslogd (8)
diff --git a/usr/src/man/man5/system.5 b/usr/src/man/man5/system.5
new file mode 100644
index 0000000000..ff7b84c0b7
--- /dev/null
+++ b/usr/src/man/man5/system.5
@@ -0,0 +1,368 @@
+'\" te
+.\" Copyright (c) 2003 Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 2016 Hans Rosenfeld <rosenfeld@grumpf.hope-2000.org>
+.\" Copyright 2019 OmniOS Community Edition (OmniOSce) Association.
+.\" Copyright 2019 Peter Tribble
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SYSTEM 5 "Apr 20, 2019"
+.SH NAME
+system \- system configuration information file
+.SH DESCRIPTION
+.LP
+The \fBsystem\fR file is used for customizing the operation of the operating
+system kernel. The recommended procedure is to preserve the original
+\fBsystem\fR file before modifying it.
+.sp
+.LP
+It is not recommended to edit the \fB/etc/system\fR file directly but rather
+to deliver configuration fragments into files under \fB/etc/system.d\fR;
+files in this directory are combined in alphabetical order and read by the
+kernel before \fB/etc/system\fR is processed. Directives in \fB/etc/system\fR
+therefore take precedence over any settings delivered in fragment files.
+.sp
+.LP
+The recommended naming schema for the fragment files is to use the name of
+the package which is delivering the file with '\fB/\fR' characters replaced
+by '\fB:\fR'; file names that start with a dot (\fB.\fR) will be ignored.
+.sp
+.LP
+If \fB/etc/system.d/\fR exists and contains any fragment files,
+then the directory must also be writable or it will not be possible to
+create or update the system boot archive.
+.sp
+.LP
+The \fBsystem\fR file contains commands which are read by the kernel during
+initialization and used to customize the operation of your system. These
+commands are useful for modifying the system's treatment of its loadable kernel
+modules.
+.sp
+.LP
+The syntax of the \fBsystem\fR file consists of a list of keyword/value pairs
+which are recognized by the system as valid commands. Comment lines must begin
+with an asterisk (\fB*\fR) or a hash mark (\fB#\fR) and end with a newline
+character. All commands are case-insensitive except where noted.
+.sp
+.LP
+Commands that modify the system's operation with respect to loadable kernel
+modules require you to specify the module type by listing the module's
+namespace. The following namespaces are currently supported on all platforms:
+.sp
+.ne 2
+.na
+\fB\fBdrv\fR\fR
+.ad
+.RS 10n
+Modules in this namespace are device drivers.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBexec\fR\fR
+.ad
+.RS 10n
+Modules in this namespace are execution format modules. The following
+\fBexec\fR modules are currently provided:
+.sp
+.ne 2
+.na
+\fBOnly on SPARC systems:\fR
+.ad
+.RS 28n
+.sp
+.in +2
+.nf
+aoutexec
+.fi
+.in -2
+.sp
+
+.RE
+
+.sp
+.ne 2
+.na
+\fBOn SPARC and IA systems:\fR
+.ad
+.RS 28n
+.sp
+.in +2
+.nf
+elfexec
+intpexec
+javaexec
+.fi
+.in -2
+.sp
+
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfirmware\fR\fR
+.ad
+.RS 10n
+Raw firmware images in subdirectories, one for each device driver
+module using \fBfirmload\fR(9F).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfs\fR\fR
+.ad
+.RS 10n
+These modules are filesystems.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsched\fR\fR
+.ad
+.RS 10n
+These modules implement a process scheduling algorithm.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBstrmod\fR\fR
+.ad
+.RS 10n
+These modules are \fBSTREAMS\fR modules.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsys\fR\fR
+.ad
+.RS 10n
+These modules implement loadable system-call modules.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmisc\fR\fR
+.ad
+.RS 10n
+These modules do not fit into any of the above categories, so are considered
+"miscellaneous" modules.
+.RE
+
+.sp
+.LP
+SPARC only:
+.sp
+.ne 2
+.na
+\fB\fBdacf\fR\fR
+.ad
+.RS 8n
+These modules provide rules and actions for device auto-configuration.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBtod\fR\fR
+.ad
+.RS 8n
+These modules provide support for the time of day hardware.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcpu\fR\fR
+.ad
+.RS 8n
+These modules provide \fBCPU\fR-specific kernel routines.
+.RE
+
+.sp
+.LP
+A description of each of the supported commands follows:
+.sp
+.ne 2
+.na
+\fB\fBexclude:\fR <\fInamespace\fR>/<\fImodulename\fR>\fR
+.ad
+.sp .6
+.RS 4n
+Do not allow the listed loadable kernel module to be loaded. \fBexclude\fR
+commands are cumulative; the list of modules to \fBexclude\fR is created by
+combining every \fBexclude\fR entry in the \fBsystem\fR file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBinclude:\fR <\fInamespace\fR>/<\fImodulename\fR>\fR
+.ad
+.sp .6
+.RS 4n
+Include the listed loadable kernel module. This is the system's default, so
+using \fBinclude\fR does not modify the system's operation. \fBinclude\fR
+commands are cumulative.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBforceload:\fR <\fInamespace\fR>/<\fImodulename\fR>\fR
+.ad
+.sp .6
+.RS 4n
+Force this kernel module to be loaded during kernel initialization. The default
+action is to automatically load the kernel module when its services are first
+accessed. \fBforceload\fR commands are cumulative.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrootdev:\fR <\fIdevice name\fR>\fR
+.ad
+.sp .6
+.RS 4n
+Set the root device to the listed value instead of using the default root
+device as supplied by the boot program.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrootfs:\fR <\fIroot filesystem type\fR>\fR
+.ad
+.sp .6
+.RS 4n
+Set the root filesystem type to the listed value.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmoddir:\fR <\fIfirst module path\fR>[[{:, }<\fIsecond ...\fR>]...]\fR
+.ad
+.sp .6
+.RS 4n
+Set the search path for loadable kernel modules. This command operates very
+much like the \fBPATH\fR shell variable. Multiple directories to search can be
+listed together, delimited either by blank spaces or colons.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBset\fR [\fI<module>\fR:]\fI<symbol>\fR {=, |, &} [~][-]\fI<value>\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set an integer or character pointer in the kernel or in the selected kernel
+module to a new value. This command is used to change kernel and module
+parameters and thus modify the operation of your system. Assignment operations
+are not cumulative, whereas bitwise \fBAND\fR and \fBOR\fR operations are
+cumulative.
+.sp
+Operations that are supported for modifying integer variables are: simple
+assignment, inclusive bitwise \fBOR,\fR bitwise \fBAND,\fR one's complement,
+and negation. Variables in a specific loadable module can be targeted for
+modification by specifying the variable name prefixed with the kernel module
+name and a colon (:) separator. Values can be specified as hexadecimal (0x10),
+Octal (046), or Decimal (5).
+.sp
+The only operation supported for modifying character pointers is simple
+assignment. Static string data such as character arrays cannot be modified
+using the \fBset\fR command. Use care and ensure that the variable you are
+modifying is in fact a character pointer. The \fBset\fR command is very
+powerful, and will likely cause problems if used carelessly. The following
+escape sequences are supported within the quoted string:
+.sp
+.in +2
+.nf
+\en (newline)
+\et (tab)
+\eb (backspace)
+.fi
+.in -2
+.sp
+
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRA sample \fBsystem\fR file.
+.sp
+.LP
+The following is a sample \fBsystem\fR file.
+
+.sp
+.in +2
+.nf
+* Force the ELF exec kernel module to be loaded during kernel
+* initialization. Execution type modules are in the exec namespace.
+forceload: exec/elfexec
+* Change the root device to /sbus@1,f8000000/esp@0,800000/sd@3,0:a.
+* You can derive root device names from /devices.
+* Root device names must be the fully expanded Open Boot Prom
+* device name. This command is platform and configuration specific.
+* This example uses the first partition (a) of the SCSI disk at
+* SCSI target 3 on the esp host adapter in slot 0 (on board)
+* of the SBus of the machine.
+* Adapter unit-address 3,0 at sbus unit-address 0,800000.
+rootdev: /sbus@1,f8000000/esp@0,800000/sd@3,0:a
+* Set the filesystem type of the root to ufs. Note that
+* the equal sign can be used instead of the colon.
+rootfs:ufs
+* Set the search path for kernel modules to look first in
+* /usr/phil/mod_test for modules, then in /kernel/modules (the
+* default) if not found. Useful for testing new modules.
+* Note that you can delimit your module pathnames using
+* colons instead of spaces: moddir:/newmodules:/kernel/modules
+moddir:/usr/phil/mod_test /kernel/modules.
+* Set the configuration option {_POSIX_CHOWN_RESTRICTED} :
+* This configuration option is enabled by default.
+set rstchown = 1
+* Disable the configuration option {_POSIX_CHOWN_RESTRICTED} :
+set rstchown = 0
+* Turn on debugging messages in the modules mydriver. This is useful
+* during driver development.
+set mydriver:debug = 1
+* Bitwise AND the kernel variable "moddebug" with the
+* one's complement of the hex value 0x880, and set
+* "moddebug" to this new value.
+set moddebug & ~0x880
+* Demonstrate the cumulative effect of the SET
+* bitwise AND/OR operations by further modifying "moddebug"
+* by ORing it with 0x40.
+set moddebug | 0x40
+.fi
+.in -2
+.sp
+
+.SH SEE ALSO
+.LP
+.BR boot (8),
+.BR init (8),
+.BR kernel (8)
+.SH WARNINGS
+.LP
+Use care when modifying the \fBsystem\fR file; it modifies the operation of the
+kernel. If you preserved the original \fBsystem\fR file, you can boot using
+\fBboot -a\fR, which will ask you to specify the path to the saved file. This
+should allow the system to boot correctly. If you cannot locate a \fBsystem\fR
+file that will work, you may specify \fB/dev/null\fR. This acts as an empty
+\fBsystem\fR file, and the system will attempt to boot using its default
+settings.
+.SH NOTES
+.LP
+The \fBsystem\fR files are read only once, at boot time.
diff --git a/usr/src/man/man5/tbl.5 b/usr/src/man/man5/tbl.5
deleted file mode 100644
index 4bbeb9379e..0000000000
--- a/usr/src/man/man5/tbl.5
+++ /dev/null
@@ -1,455 +0,0 @@
-.\" $Id: tbl.7,v 1.37 2021/09/18 12:34:27 schwarze Exp $
-.\"
-.\" Copyright (c) 2010, 2011 Kristaps Dzonsons <kristaps@bsd.lv>
-.\" Copyright (c) 2014,2015,2017,2018,2019 Ingo Schwarze <schwarze@openbsd.org>
-.\"
-.\" Permission to use, copy, modify, and distribute this software for any
-.\" purpose with or without fee is hereby granted, provided that the above
-.\" copyright notice and this permission notice appear in all copies.
-.\"
-.\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
-.\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
-.\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
-.\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
-.\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
-.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
-.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
-.\"
-.Dd $Mdocdate: September 18 2021 $
-.Dt TBL 5
-.Os
-.Sh NAME
-.Nm tbl
-.Nd tbl language reference for mandoc
-.Sh DESCRIPTION
-The
-.Nm tbl
-language formats tables.
-It is used within
-.Xr mdoc 5
-and
-.Xr man 5
-pages.
-This manual describes the subset of the
-.Nm
-language accepted by the
-.Xr mandoc 1
-utility.
-.Pp
-Each table is started with a
-.Xr mandoc_roff 5
-.Ic \&TS
-macro, consist of at most one line of
-.Sx Options ,
-one or more
-.Sx Layout
-lines, one or more
-.Sx Data
-lines, and ends with a
-.Ic \&TE
-macro.
-All input must be 7-bit ASCII.
-.Ss Options
-If the first input line of a table ends with a semicolon, it contains
-case-insensitive options separated by spaces, tabs, or commas.
-Otherwise, it is interpreted as the first
-.Sx Layout
-line.
-.Pp
-The following options are available.
-Some of them require arguments enclosed in parentheses:
-.Bl -tag -width Ds
-.It Cm allbox
-Draw a single-line box around each table cell.
-.It Cm box
-Draw a single-line box around the table.
-For GNU compatibility, this may also be invoked with
-.Cm frame .
-.It Cm center
-Center the table instead of left-adjusting it.
-For GNU compatibility, this may also be invoked with
-.Cm centre .
-.It Cm decimalpoint
-Use the single-character argument as the decimal point with the
-.Cm n
-layout key.
-This is a GNU extension.
-.It Cm delim
-Use the two characters of the argument as
-.Xr eqn 5
-delimiters.
-Currently unsupported.
-.It Cm doublebox
-Draw a double-line box around the table.
-For GNU compatibility, this may also be invoked with
-.Cm doubleframe .
-.It Cm expand
-Increase the width of the table to the current line length.
-Currently ignored.
-.It Cm linesize
-Draw lines with the point size given by the unsigned integer argument.
-Currently ignored.
-.It Cm nokeep
-Allow page breaks within the table.
-This is a GNU extension and currently ignored.
-.It Cm nospaces
-Ignore leading and trailing spaces in data cells.
-This is a GNU extension.
-.It Cm nowarn
-Suppress warnings about tables exceeding the current line length.
-This is a GNU extension and currently ignored.
-.It Cm tab
-Use the single-character argument as a delimiter between data cells.
-By default, the horizontal tabulator character is used.
-.El
-.Ss Layout
-The table layout follows an
-.Sx Options
-line or a
-.Xr mandoc_roff 5
-.Ic \&TS
-or
-.Ic \&T&
-macro.
-Each layout line specifies how one line of
-.Sx Data
-is formatted.
-The last layout line ends with a full stop.
-It also applies to all remaining data lines.
-Multiple layout lines can be joined by commas on a single physical
-input line.
-.Pp
-Each layout line consists of one or more layout cell specifications,
-optionally separated by whitespace.
-The following case-insensitive key characters start a new cell
-specification:
-.Bl -tag -width 2n
-.It Cm c
-Center the string in this cell.
-.It Cm r
-Right-justify the string in this cell.
-.It Cm l
-Left-justify the string in this cell.
-.It Cm n
-Justify a number around its last decimal point.
-If no decimal point is found in the number,
-it is assumed to trail the number.
-.It Cm s
-Horizontally span columns from the last
-.Pf non- Cm s
-layout cell.
-It is an error if a column span follows a
-.Cm _
-or
-.Cm =
-cell, or comes first on a layout line.
-The combined cell as a whole consumes only one cell
-of the corresponding data line.
-.It Cm a
-Left-justify a string and pad with one space.
-.It Cm \(ha
-Vertically span rows from the last
-.Pf non- Cm \(ha
-layout cell.
-It is an error to invoke a vertical span on the first layout line.
-Unlike a horizontal span, a vertical span consumes a data cell
-and discards the content.
-.It Cm _
-Draw a single horizontal line in this cell.
-This consumes a data cell and discards the content.
-It may also be invoked with
-.Cm \- .
-.It Cm =
-Draw a double horizontal line in this cell.
-This consumes a data cell and discards the content.
-.El
-.Pp
-Each cell key may be followed by zero or more of the following
-case-insensitive modifiers:
-.Bl -tag -width 2n
-.It Cm b
-Use a bold font for the contents of this cell.
-.It Cm d
-Move content down to the last row of this vertical span.
-Currently ignored.
-.It Cm e
-Make this column wider to match the maximum width
-of any other column also having the
-.Cm e
-modifier.
-.It Cm f
-The next one or two characters select the font to use for this cell.
-One-character font names must be followed by a blank or period.
-See the
-.Xr mandoc_roff 5
-manual for supported font names.
-.It Cm i
-Use an italic font for the contents of this cell.
-.It Cm m
-Specify a cell start macro.
-This is a GNU extension and currently unsupported.
-.It Cm p
-Set the point size to the following unsigned argument,
-or change it by the following signed argument.
-Currently ignored.
-.It Cm v
-Set the vertical line spacing to the following unsigned argument,
-or change it by the following signed argument.
-Currently ignored.
-.It Cm t
-Do not vertically center content in this vertical span,
-leave it in the top row.
-Currently ignored.
-.It Cm u
-Move cell content up by half a table row.
-Currently ignored.
-.It Cm w
-Specify a minimum column width.
-.It Cm x
-After determining the width of all other columns, distribute the
-rest of the line length among all columns having the
-.Cm x
-modifier.
-.It Cm z
-Do not use this cell for determining the width of this column.
-.It Cm \&|
-Draw a single vertical line to the right of this cell.
-.It Cm ||
-Draw a double vertical line to the right of this cell.
-.El
-.Pp
-If a modifier consists of decimal digits,
-it specifies a minimum spacing in units of
-.Cm n
-between this column and the next column to the right.
-The default is 3.
-If there is a vertical line, it is drawn inside the spacing.
-.Ss Data
-The data section follows the last
-.Sx Layout
-line.
-Each data line consists of one or more data cells, delimited by
-.Cm tab
-characters.
-.Pp
-If a data cell contains only the two bytes
-.Ql \e\(ha ,
-the cell above spans to this row, as if the layout specification
-of this cell were
-.Cm \(ha .
-.Pp
-If a data cell contains only the single character
-.Ql _
-or
-.Ql = ,
-a single or double horizontal line is drawn across the cell,
-joining its neighbours.
-If a data cell contains only the two character sequence
-.Ql \e_
-or
-.Ql \e= ,
-a single or double horizontal line is drawn inside the cell,
-not joining its neighbours.
-If a data line contains nothing but the single character
-.Ql _
-or
-.Ql = ,
-a horizontal line across the whole table is inserted
-without consuming a layout row.
-.Pp
-In place of any data cell, a text block can be used.
-It starts with
-.Ic \&T{
-at the end of a physical input line.
-Input line breaks inside the text block
-neither end the text block nor its data cell.
-It only ends if
-.Ic \&T}
-occurs at the beginning of a physical input line and is followed
-by an end-of-cell indicator.
-If the
-.Ic \&T}
-is followed by the end of the physical input line, the text block,
-the data cell, and the data line ends at this point.
-If the
-.Ic \&T}
-is followed by the
-.Cm tab
-character, only the text block and the data cell end,
-but the data line continues with the data cell following the
-.Cm tab
-character.
-If
-.Ic \&T}
-is followed by any other character, it does not end the text block,
-which instead continues to the following physical input line.
-.Sh EXAMPLES
-String justification and font selection:
-.Bd -literal -offset indent
-\&.TS
-rb c lb
-r ci l.
-r center l
-ri ce le
-right c left
-\&.TE
-.Ed
-.Bd -filled -offset indent
-.TS
-rb c lb
-r ci l.
-r center l
-ri ce le
-right c left
-.TE
-.Ed
-.Pp
-Some ports in
-.Ox 6.1
-to show number alignment and line drawing:
-.Bd -literal -offset indent
-\&.TS
-box tab(:);
-r| l
-r n.
-software:version
-_
-AFL:2.39b
-Mutt:1.8.0
-Ruby:1.8.7.374
-TeX Live:2015
-\&.TE
-.Ed
-.Bd -filled -offset indent
-.TS
-box tab(:);
-r| l
-r n.
-software:version
-_
-AFL:2.39b
-Mutt:1.8.0
-Ruby:1.8.7.374
-TeX Live:2015
-.TE
-.Ed
-.sp 2v
-Spans and skipping width calculations:
-.Bd -literal -offset indent
-\&.TS
-box tab(:);
-lz s | rt
-lt| cb| \(ha
-\(ha | rz s.
-left:r
-l:center:
-:right
-\&.TE
-.Ed
-.Bd -filled -offset indent
-.TS
-box tab(:);
-lz s | rt
-lt| cb| ^
-^ | rz s.
-left:r
-l:center:
-:right
-.TE
-.Ed
-.sp 2v
-Text blocks, specifying spacings and specifying and equalizing
-column widths, putting lines into individual cells, and overriding
-.Cm allbox :
-.Bd -literal -offset indent
-\&.TS
-allbox tab(:);
-le le||7 lw10.
-The fourth line:_:line 1
-of this column:=:line 2
-determines:\_:line 3
-the column width.:T{
-This text is too wide to fit into a column of width 17.
-T}:line 4
-T{
-No break here.
-T}::line 5
-\&.TE
-.Ed
-.Bd -filled -offset indent
-.TS
-allbox tab(:);
-le le||7 lw10.
-The fourth line:_:line 1
-of this column:=:line 2
-determines:\_:line 3
-the column width.:T{
-This text is too wide to fit into a column of width 17.
-T}:line 4
-T{
-No break here.
-T}::line 5
-.TE
-.Ed
-.sp 2v
-These examples were constructed to demonstrate many
-.Nm
-features in a compact way.
-In real manual pages, keep tables as simple as possible.
-They usually look better, are less fragile, and are more portable.
-.Sh COMPATIBILITY
-The
-.Xr mandoc 1
-implementation of
-.Nm
-doesn't support
-.Xr mdoc 5
-and
-.Xr man 5
-macros and
-.Xr eqn 5
-equations inside tables.
-.Sh SEE ALSO
-.Xr mandoc 1 ,
-.Xr man 5 ,
-.Xr mandoc_char 5 ,
-.Xr mandoc_roff 5 ,
-.Xr mdoc 5
-.Rs
-.%A M. E. Lesk
-.%T Tbl \(em A Program to Format Tables
-.%D June 11, 1976
-.Re
-.Sh HISTORY
-The tbl utility, a preprocessor for troff, was originally written by M.
-E. Lesk at Bell Labs in 1975.
-The GNU reimplementation of tbl, part of the groff package, was released
-in 1990 by James Clark.
-A standalone tbl implementation was written by Kristaps Dzonsons in
-2010.
-This formed the basis of the implementation that first appeared in
-.Ox 4.9
-as a part of the
-.Xr mandoc 1
-utility.
-.Sh AUTHORS
-This
-.Nm
-reference was written by
-.An Kristaps Dzonsons Aq Mt kristaps@bsd.lv
-and
-.An Ingo Schwarze Aq Mt schwarze@openbsd.org .
-.Sh BUGS
-In
-.Fl T
-.Cm utf8
-output mode, heavy lines are drawn instead of double lines.
-This cannot be improved because the Unicode standard only provides
-an incomplete set of box drawing characters with double lines,
-whereas it provides a full set of box drawing characters
-with heavy lines.
-It is unlikely this can be improved in the future because the box
-drawing characters are already marked in Unicode as characters
-intended only for backward compatibility with legacy systems,
-and their use is not encouraged.
-So it seems unlikely that the missing ones might get added in the future.
diff --git a/usr/src/man/man5/tecla.5 b/usr/src/man/man5/tecla.5
deleted file mode 100644
index 1de777853f..0000000000
--- a/usr/src/man/man5/tecla.5
+++ /dev/null
@@ -1,3661 +0,0 @@
-'\" te
-.\" Copyright (c) 2000, 2001, 2002, 2003, 2004 by Martin C. Shepherd. All Rights Reserved.
-.\" Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the
-.\" "Software"), to deal in the Software without restriction, including
-.\" without limitation the rights to use, copy, modify, merge, publish,
-.\" distribute, and/or sell copies of the Software, and to permit persons
-.\" to whom the Software is furnished to do so, provided that the above
-.\" copyright notice(s) and this permission notice appear in all copies of
-.\" the Software and that both the above copyright notice(s) and this
-.\" permission notice appear in supporting documentation.
-.\"
-.\" THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
-.\" OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-.\" MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
-.\" OF THIRD PARTY RIGHTS. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR
-.\" HOLDERS INCLUDED IN THIS NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL
-.\" INDIRECT OR CONSEQUENTIAL DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING
-.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
-.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
-.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
-.\"
-.\" Except as contained in this notice, the name of a copyright holder
-.\" shall not be used in advertising or otherwise to promote the sale, use
-.\" or other dealings in this Software without prior written authorization
-.\" of the copyright holder.
-.\" Portions Copyright (c) 2005, Sun Microsystems, Inc. All Rights Reserved.
-.TH TECLA 5 "April 9, 2016"
-.SH NAME
-tecla, teclarc \- User interface provided by the tecla library.
-.SH DESCRIPTION
-.LP
-This man page describes the command-line editing features that are available to
-users of programs that read keyboard input via the tecla library. Users of the
-\fBtcsh\fR shell will find the default key bindings very familiar. Users of the
-\fBbash\fR shell will also find it quite familiar, but with a few minor
-differences, most notably in how forward and backward searches through the list
-of historical commands are performed. There are two major editing modes, one
-with \fBemacs\fR-like key bindings and another with \fBvi\fR-like key bindings.
-By default \fBemacs\fR mode is enabled, but \fBvi\fR(1) mode can alternatively
-be selected via the user's configuration file. This file can also be used to
-change the bindings of individual keys to suit the user's preferences. By
-default, tab completion is provided. If the application hasn't reconfigured
-this to complete other types of symbols, then tab completion completes file
-names.
-.SS "Key Sequence Notation"
-.LP
-In the rest of this man page, and also in all tecla configuration files, key
-sequences are expressed as follows.
-.sp
-.ne 2
-.na
-\fB\fB^A\fR or \fBC-a\fR\fR
-.ad
-.RS 13n
-This is a 'CONTROL-A', entered by pressing the CONTROL key at the same time as
-the 'A' key.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\eE\fR or \fBM-\fR
-.ad
-.RS 13n
-In key sequences, both of these notations can be entered either by pressing the
-ESCAPE key, then the following key, or by pressing the META key at the same
-time as the following key. Thus the key sequence \fBM-p\fR can be typed in two
-ways, by pressing the ESCAPE key, followed by pressing 'P', or by pressing the
-META key at the same time as 'P'.
-.RE
-
-.sp
-.ne 2
-.na
-\fBup\fR
-.ad
-.RS 13n
-This refers to the up-arrow key.
-.RE
-
-.sp
-.ne 2
-.na
-\fBdown\fR
-.ad
-.RS 13n
-This refers to the down-arrow key.
-.RE
-
-.sp
-.ne 2
-.na
-\fBleft\fR
-.ad
-.RS 13n
-This refers to the left-arrow key.
-.RE
-
-.sp
-.ne 2
-.na
-\fBright\fR
-.ad
-.RS 13n
-This refers to the right-arrow key.
-.RE
-
-.sp
-.ne 2
-.na
-\fBa\fR
-.ad
-.RS 13n
-This is just a normal 'A' key.
-.RE
-
-.SS "The Tecla Configuration File"
-.LP
-By default, tecla looks for a file called \fB\&.teclarc\fR in your home
-directory (ie. \fB~/.teclarc\fR). If it finds this file, it reads it,
-interpreting each line as defining a new key binding or an editing
-configuration option. Since the \fBemacs\fR key-bindings are installed by
-default, if you want to use the non-default \fBvi\fR editing mode, the most
-important item to go in this file is the following line:
-.sp
-.in +2
-.nf
-edit-mode vi
-.fi
-.in -2
-
-.sp
-.LP
-This will re-configure the default bindings for \fBvi\fR-mode. The complete set
-of arguments that this command accepts are:
-.sp
-.ne 2
-.na
-\fBvi\fR
-.ad
-.RS 9n
-Install key bindings like those of the \fBvi\fR editor.
-.RE
-
-.sp
-.ne 2
-.na
-\fBemacs\fR
-.ad
-.RS 9n
-Install key bindings like those of the \fBemacs\fR editor. This is the default.
-.RE
-
-.sp
-.ne 2
-.na
-\fBnone\fR
-.ad
-.RS 9n
-Use just the native line editing facilities provided by the terminal driver.
-.RE
-
-.sp
-.LP
-To prevent the terminal bell from being rung, such as when an unrecognized
-control-sequence is typed, place the following line in the configuration file:
-.sp
-.in +2
-.nf
-nobeep
-.fi
-.in -2
-
-.sp
-.LP
-An example of a key binding line in the configuration file is the following.
-.sp
-.in +2
-.nf
-bind M-[2~ insert-mode
-.fi
-.in -2
-
-.sp
-.LP
-On many keyboards, the above key sequence is generated when one presses the
-insert key, so with this key binding, one can toggle between the
-\fBemacs\fR-mode insert and overwrite modes by hitting one key. One could also
-do it by typing out the above sequence of characters one by one. As explained
-above, the \fBM-\fR part of this sequence can be typed either by pressing the
-ESCAPE key before the following key, or by pressing the META key at the same
-time as the following key. Thus if you had set the above key binding, and the
-insert key on your keyboard didn't generate the above key sequence, you could
-still type it in either of the following 2 ways.
-.RS +4
-.TP
-1.
-Hit the ESCAPE key momentarily, then press '[', then '2', then finally '~'.
-.RE
-.RS +4
-.TP
-2.
-Press the META key at the same time as pressing the '[' key, then press '2',
-then '~'.
-.RE
-.sp
-.LP
-If you set a key binding for a key sequence that is already bound to a
-function, the new binding overrides the old one. If in the new binding you omit
-the name of the new function to bind to the key sequence, the original binding
-becomes undefined.
-.sp
-.LP
-Starting with versions of \fBlibtecla\fR later than 1.3.3 it is now possible to
-bind key sequences that begin with a printable character. Previously key
-sequences were required to start with a CONTROL or META character.
-.sp
-.LP
-Note that the special keywords "up", "down", "left", and "right" refer to the
-arrow keys, and are thus not treated as key sequences. So, for example, to
-rebind the up and down arrow keys to use the history search mechanism instead
-of the simple history recall method, you could place the following in your
-configuration file:
-.sp
-.in +2
-.nf
-bind up history-search-backwards
-bind down history-search-backwards
-.fi
-.in -2
-
-.sp
-.LP
-To unbind an existing binding, you can do this with the bind command by
-omitting to name any action to rebind the key sequence to. For example, by not
-specifying an action function, the following command unbinds the default
-beginning-of-line action from the \fB^A\fR key sequence:
-.sp
-.in +2
-.nf
-bind ^A
-.fi
-.in -2
-
-.sp
-.LP
-If you create a \fB~/.teclarc\fR configuration file, but it appears to have no
-effect on the program, check the documentation of the program to see if the
-author chose a different name for this file.
-.SS "Filename and Tilde Completion"
-.LP
-With the default key bindings, pressing the TAB key (aka. \fB^I\fR) results in
-tecla attempting to complete the incomplete file name that precedes the cursor.
-Tecla searches backwards from the cursor, looking for the start of the file
-name, stopping when it hits either a space or the start of the line. If more
-than one file has the specified prefix, then tecla completes the file name up
-to the point at which the ambiguous matches start to differ, then lists the
-possible matches.
-.sp
-.LP
-In addition to literally written file names, tecla can complete files that
-start with \fB~/\fR and \fB~user/\fR expressions and that contain \fB$envvar\fR
-expressions. In particular, if you hit TAB within an incomplete \fB~user\fR,
-expression, tecla will attempt to complete the username, listing any ambiguous
-matches.
-.sp
-.LP
-The completion binding is implemented using the \fBcpl_complete_word()\fR
-function, which is also available separately to users of this library. See the
-\fBcpl_complete_word\fR(3TECLA) man page for more details.
-.SS "Filename Expansion"
-.LP
-With the default key bindings, pressing \fB^X*\fR causes tecla to expand the
-file name that precedes the cursor, replacing \fB~/\fR and \fB~user/\fR
-expressions with the corresponding home directories, and replacing
-\fB$envvar\fR expressions with the value of the specified environment variable,
-then if there are any wildcards, replacing the so far expanded file name with a
-space-separated list of the files which match the wild cards.
-.sp
-.LP
-The expansion binding is implemented using the \fBef_expand_file()\fR function.
-See the \fBef_expand_file\fR(3TECLA) man page for more details.
-.SS "Recalling Previously Typed Lines"
-.LP
-Every time that a new line is entered by the user, it is appended to a list of
-historical input lines maintained within the \fBGetLine\fR resource object. You
-can traverse up and down this list using the up and down arrow keys.
-Alternatively, you can do the same with the \fB^P\fR, and \fB^N\fR keys, and in
-\fBvi\fR command mode you can alternatively use the k and j characters. Thus
-pressing up-arrow once, replaces the current input line with the previously
-entered line. Pressing up-arrow again, replaces this with the line that was
-entered before it, etc.. Having gone back one or more lines into the history
-list, one can return to newer lines by pressing down-arrow one or more times.
-If you do this sufficient times, you will return to the original line that you
-were entering when you first hit up-arrow.
-.sp
-.LP
-Note that in \fBvi\fR mode, all of the history recall functions switch the
-library into command mode.
-.sp
-.LP
-In \fBemacs\fR mode the \fBM-p\fR and \fBM-n\fR keys work just like the
-\fB^P\fR and \fB^N\fR keys, except that they skip all but those historical
-lines which share the prefix that precedes the cursor. In \fBvi\fR command mode
-the upper case 'K' and 'J' characters do the same thing, except that the string
-that they search for includes the character under the cursor as well as what
-precedes it.
-.sp
-.LP
-Thus for example, suppose that you were in \fBemacs\fR mode, and you had just
-entered the following list of commands in the order shown:
-.sp
-.in +2
-.nf
-ls ~/tecla/
-cd ~/tecla
-ls -l getline.c
-\fBemacs\fR ~/tecla/getline.c
-.fi
-.in -2
-
-.sp
-.LP
-If you next typed:
-.sp
-.in +2
-.nf
-ls
-.fi
-.in -2
-
-.sp
-.LP
-and then hit \fBM-p\fR, then rather than returning the previously typed
-\fBemacs\fR line, which doesn't start with "ls", tecla would recall the "ls -l
-getline.c" line. Pressing \fBM-p\fR again would recall the "ls ~/tecla/" line.
-.sp
-.LP
-Note that if the string that you are searching for, contains any of the special
-characters, *, ?, or '[', then it is interpreted as a pattern to be matched.
-Thus, continuing with the above example, after typing in the list of commands
-shown, if you then typed:
-.sp
-.in +2
-.nf
-*tecla*
-.fi
-.in -2
-
-.sp
-.LP
-and hit \fBM-p\fR, then the "\fBemacs\fR ~/tecla/getline.c" line would be
-recalled first, since it contains the word tecla somewhere in the line,
-Similarly, hitting \fBM-p\fR again, would recall the "ls ~/tecla/" line, and
-hitting it once more would recall the "ls ~/tecla/" line. The pattern syntax is
-the same as that described for file name expansion, in the
-\fBef_expand_file\fR(3TECLA).
-.SS "History Files"
-.LP
-Authors of programs that use the tecla library have the option of saving
-historical command-lines in a file before exiting, and subsequently reading
-them back in from this file when the program is next started. There is no
-standard name for this file, since it makes sense for each application to use
-its own history file, so that commands from different applications don't get
-mixed up.
-.SS "International Character Sets"
-.LP
-Since \fBlibtecla\fR version 1.4.0, tecla has been 8-bit clean. This means that
-all 8-bit characters that are printable in the user's current locale are now
-displayed verbatim and included in the returned input line. Assuming that the
-calling program correctly contains a call like the following,
-.sp
-.in +2
-.nf
-setlocale(LC_CTYPE, "");
-.fi
-.in -2
-
-.sp
-.LP
-then the current locale is determined by the first of the environment variables
-\fBLC_CTYPE\fR, \fBLC_ALL\fR, and \fBLANG\fR, that is found to contain a valid
-locale name. If none of these variables are defined, or the program neglects to
-call \fBsetlocale\fR, then the default C locale is used, which is US 7-bit
-ASCII. On most unix-like platforms, you can get a list of valid locales by
-typing the command:
-.sp
-.in +2
-.nf
-locale -a
-.fi
-.in -2
-
-.sp
-.LP
-at the shell prompt.
-.SS "Meta Keys and Locales"
-.LP
-Beware that in most locales other than the default C locale, META characters
-become printable, and they are then no longer considered to match \fBM-c\fR
-style key bindings. This allows international characters to be entered with the
-compose key without unexpectedly triggering META key bindings. You can still
-invoke META bindings, since there are actually two ways to do this. For example
-the binding \fBM-c\fR can also be invoked by pressing the ESCAPE key
-momentarily, then pressing the c key, and this will work regardless of locale.
-Moreover, many modern terminal emulators, such as gnome's gnome-terminal's and
-KDE's konsole terminals, already generate escape pairs like this when you use
-the META key, rather than a real meta character, and other emulators usually
-have a way to request this behavior, so you can continue to use the META key on
-most systems.
-.sp
-.LP
-For example, although xterm terminal emulators generate real 8-bit meta
-characters by default when you use the META key, they can be configured to
-output the equivalent escape pair by setting their \fBEightBitInput\fR X
-resource to False. You can either do this by placing a line like the following
-in your \fB~/.Xdefaults\fR file,
-.sp
-.in +2
-.nf
-XTerm*EightBitInput: False
-.fi
-.in -2
-
-.sp
-.LP
-or by starting an \fBxterm\fR with an \fB-xrm\fR \&'*EightBitInput: False'
-command-line argument. In recent versions of xterm you can toggle this feature
-on and off with the 'Meta Sends Escape' option in the menu that is displayed
-when you press the left mouse button and the CONTROL key within an xterm
-window. In CDE, dtterms can be similarly coerced to generate escape pairs in
-place of meta characters, by setting the \fBDtterm*KshMode\fR resource to True.
-.SS "Entering International Characters"
-.LP
-If you don't have a keyboard that generates all of the international characters
-that you need, there is usually a compose key that will allow you to enter
-special characters, or a way to create one. For example, under X windows on
-unix-like systems, if your keyboard doesn't have a compose key, you can
-designate a redundant key to serve this purpose with the xmodmap command. For
-example, on many PC keyboards there is a microsoft-windows key, which is
-otherwise useless under Linux. On a laptop, for example, the \fBxev\fR program
-might report that pressing this key generates keycode 115. To turn this key
-into a COMPOSE key, do the following:
-.sp
-.in +2
-.nf
-xmodmap -e 'keycode 115 = Multi_key'
-.fi
-.in -2
-
-.sp
-.LP
-Type this key followed by a " character to enter an 'I' with a umlaut over it.
-.SS "The Available Key Binding Functions"
-.LP
-The following is a list of the editing functions provided by the tecla library.
-The names in the leftmost column of the list can be used in configuration files
-to specify which function a given key or combination of keys should invoke.
-They are also used in the next two sections to list the default key bindings in
-\fBemacs\fR and \fBvi\fR modes.
-.sp
-.ne 2
-.na
-\fBuser-interrupt\fR
-.ad
-.RS 30n
-Send a SIGINT signal to the parent process.
-.RE
-
-.sp
-.ne 2
-.na
-\fBsuspend\fR
-.ad
-.RS 30n
-Suspend the parent process.
-.RE
-
-.sp
-.ne 2
-.na
-\fBstop-output\fR
-.ad
-.RS 30n
-Pause terminal output.
-.RE
-
-.sp
-.ne 2
-.na
-\fBstart-output\fR
-.ad
-.RS 30n
-Resume paused terminal output.
-.RE
-
-.sp
-.ne 2
-.na
-\fBliteral-next\fR
-.ad
-.RS 30n
-Arrange for the next character to be treated as a normal character. This allows
-control characters to be entered.
-.RE
-
-.sp
-.ne 2
-.na
-\fBcursor-right\fR
-.ad
-.RS 30n
-Move the cursor one character right.
-.RE
-
-.sp
-.ne 2
-.na
-\fBcursor-left\fR
-.ad
-.RS 30n
-Move the cursor one character left.
-.RE
-
-.sp
-.ne 2
-.na
-\fBinsert-mode\fR
-.ad
-.RS 30n
-Toggle between insert mode and overwrite mode.
-.RE
-
-.sp
-.ne 2
-.na
-\fBbeginning-of-line\fR
-.ad
-.RS 30n
-Move the cursor to the beginning of the line.
-.RE
-
-.sp
-.ne 2
-.na
-\fBend-of-line\fR
-.ad
-.RS 30n
-Move the cursor to the end of the line.
-.RE
-
-.sp
-.ne 2
-.na
-\fBdelete-line\fR
-.ad
-.RS 30n
-Delete the contents of the current line.
-.RE
-
-.sp
-.ne 2
-.na
-\fBkill-line\fR
-.ad
-.RS 30n
-Delete everything that follows the cursor.
-.RE
-
-.sp
-.ne 2
-.na
-\fBbackward-kill-line\fR
-.ad
-.RS 30n
-Delete all characters between the cursor and the start of the line.
-.RE
-
-.sp
-.ne 2
-.na
-\fBforward-word\fR
-.ad
-.RS 30n
-Move to the end of the word which follows the cursor.
-.RE
-
-.sp
-.ne 2
-.na
-\fBforward-to-word\fR
-.ad
-.RS 30n
-Move the cursor to the start of the word that follows the cursor.
-.RE
-
-.sp
-.ne 2
-.na
-\fBbackward-word\fR
-.ad
-.RS 30n
-Move to the start of the word which precedes the cursor.
-.RE
-
-.sp
-.ne 2
-.na
-\fBgoto-column\fR
-.ad
-.RS 30n
-Move the cursor to the 1-relative column in the line specified by any preceding
-digit-argument sequences (see Entering Repeat Counts below).
-.RE
-
-.sp
-.ne 2
-.na
-\fBfind-parenthesis\fR
-.ad
-.RS 30n
-If the cursor is currently over a parenthesis character, move it to the
-matching parenthesis character. If not over a parenthesis character move right
-to the next close parenthesis.
-.RE
-
-.sp
-.ne 2
-.na
-\fBforward-delete-char\fR
-.ad
-.RS 30n
-Delete the character under the cursor.
-.RE
-
-.sp
-.ne 2
-.na
-\fBbackward-delete-char\fR
-.ad
-.RS 30n
-Delete the character which precedes the cursor.
-.RE
-
-.sp
-.ne 2
-.na
-\fBlist-or-eof\fR
-.ad
-.RS 30n
-This is intended for binding to \fB^D\fR. When invoked when the cursor is
-within the line it displays all possible completions then redisplays the line
-unchanged. When invoked on an empty line, it signals end-of-input (EOF) to the
-caller of \fBgl_get_line()\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBdel-char-or-list-or-eof\fR
-.ad
-.RS 30n
-This is intended for binding to \fB^D\fR. When invoked when the cursor is
-within the line it invokes forward-delete-char. When invoked at the end of the
-line it displays all possible completions then redisplays the line unchanged.
-When invoked on an empty line, it signals end-of-input (EOF) to the caller of
-\fBgl_get_line()\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBforward-delete-word\fR
-.ad
-.RS 30n
-Delete the word which follows the cursor.
-.RE
-
-.sp
-.ne 2
-.na
-\fBbackward-delete-word\fR
-.ad
-.RS 30n
-Delete the word which precedes the cursor.
-.RE
-
-.sp
-.ne 2
-.na
-\fBupcase-word\fR
-.ad
-.RS 30n
-Convert all of the characters of the word which follows the cursor, to upper
-case.
-.RE
-
-.sp
-.ne 2
-.na
-\fBdowncase-word\fR
-.ad
-.RS 30n
-Convert all of the characters of the word which follows the cursor, to lower
-case.
-.RE
-
-.sp
-.ne 2
-.na
-\fBcapitalize-word\fR
-.ad
-.RS 30n
-Capitalize the word which follows the cursor.
-.RE
-
-.sp
-.ne 2
-.na
-\fBchange-case\fR
-.ad
-.RS 30n
-If the next character is upper case, toggle it to lower case and vice versa.
-.RE
-
-.sp
-.ne 2
-.na
-\fBredisplay\fR
-.ad
-.RS 30n
-Redisplay the line.
-.RE
-
-.sp
-.ne 2
-.na
-\fBclear-screen\fR
-.ad
-.RS 30n
-Clear the terminal, then redisplay the current line.
-.RE
-
-.sp
-.ne 2
-.na
-\fBtranspose-chars\fR
-.ad
-.RS 30n
-Swap the character under the cursor with the character just before the cursor.
-.RE
-
-.sp
-.ne 2
-.na
-\fBset-mark\fR
-.ad
-.RS 30n
-Set a mark at the position of the cursor.
-.RE
-
-.sp
-.ne 2
-.na
-\fBexchange-point-and-mark\fR
-.ad
-.RS 30n
-Move the cursor to the last mark that was set, and move the mark to where the
-cursor used to be.
-.RE
-
-.sp
-.ne 2
-.na
-\fBkill-region\fR
-.ad
-.RS 30n
-Delete the characters that lie between the last mark that was set, and the
-cursor.
-.RE
-
-.sp
-.ne 2
-.na
-\fBcopy-region-as-kill\fR
-.ad
-.RS 30n
-Copy the text between the mark and the cursor to the cut buffer, without
-deleting the original text.
-.RE
-
-.sp
-.ne 2
-.na
-\fByank\fR
-.ad
-.RS 30n
-Insert the text that was last deleted, just before the current position of the
-cursor.
-.RE
-
-.sp
-.ne 2
-.na
-\fBappend-yank\fR
-.ad
-.RS 30n
-Paste the current contents of the cut buffer, after the cursor.
-.RE
-
-.sp
-.ne 2
-.na
-\fBup-history\fR
-.ad
-.RS 30n
-Recall the next oldest line that was entered. Note that in \fBvi\fR mode you
-are left in command mode.
-.RE
-
-.sp
-.ne 2
-.na
-\fBdown-history\fR
-.ad
-.RS 30n
-Recall the next most recent line that was entered. If no history recall session
-is currently active, the next line from a previous recall session is recalled.
-Note that in vi mode you are left in command mode.
-.RE
-
-.sp
-.ne 2
-.na
-\fBhistory-search-backward\fR
-.ad
-.RS 30n
-Recall the next oldest line who's prefix matches the string which currently
-precedes the cursor (in \fBvi\fR command-mode the character under the cursor is
-also included in the search string). Note that in \fBvi\fR mode you are left in
-command mode.
-.RE
-
-.sp
-.ne 2
-.na
-\fBhistory-search-forward\fR
-.ad
-.RS 30n
-Recall the next newest line who's prefix matches the string which currently
-precedes the cursor (in \fBvi\fR command-mode the character under the cursor is
-also included in the search string). Note that in \fBvi\fR mode you are left in
-command mode.
-.RE
-
-.sp
-.ne 2
-.na
-\fBhistory-re-search-backward\fR
-.ad
-.RS 30n
-Recall the next oldest line who's prefix matches that established by the last
-invocation of either history-search-forward or history-search-backward.
-.RE
-
-.sp
-.ne 2
-.na
-\fBhistory-re-search-forward\fR
-.ad
-.RS 30n
-Recall the next newest line who's prefix matches that established by the last
-invocation of either history-search-forward or history-search-backward.
-.RE
-
-.sp
-.ne 2
-.na
-\fBcomplete-word\fR
-.ad
-.RS 30n
-Attempt to complete the incomplete word which precedes the cursor. Unless the
-host program has customized word completion, file name completion is attempted.
-In \fBvi\fR command mode the character under the cursor is also included in
-the word being completed, and you are left in \fBvi\fR insert mode.
-.RE
-
-.sp
-.ne 2
-.na
-\fBexpand-filename\fR
-.ad
-.RS 30n
-Within the command line, expand wild cards, tilde expressions and dollar
-expressions in the file name which immediately precedes the cursor. In \fBvi\fR
-command mode the character under the cursor is also included in the file name
-being expanded, and you are left in \fBvi\fR insert mode.
-.RE
-
-.sp
-.ne 2
-.na
-\fBlist-glob\fR
-.ad
-.RS 30n
-List any file names which match the wild-card, tilde and dollar expressions in
-the file name which immediately precedes the cursor, then redraw the input line
-unchanged.
-.RE
-
-.sp
-.ne 2
-.na
-\fBlist-history\fR
-.ad
-.RS 30n
-Display the contents of the history list for the current history group. If a
-repeat count of \fB> 1\fR is specified, only that many of the most recent lines
-are displayed. See the Entering Repeat Counts section.
-.RE
-
-.sp
-.ne 2
-.na
-\fBread-from-file\fR
-.ad
-.RS 30n
-Temporarily switch to reading input from the file who's name precedes the
-cursor.
-.RE
-
-.sp
-.ne 2
-.na
-\fBread-init-files\fR
-.ad
-.RS 30n
-Re-read \fBteclarc\fR configuration files.
-.RE
-
-.sp
-.ne 2
-.na
-\fBbeginning-of-history\fR
-.ad
-.RS 30n
-Move to the oldest line in the history list. Note that in \fBvi\fR mode you are
-left in command mode.
-.RE
-
-.sp
-.ne 2
-.na
-\fBend-of-history\fR
-.ad
-.RS 30n
-Move to the newest line in the history list (ie. the current line). Note that
-in \fBvi\fR mode this leaves you in command mode.
-.RE
-
-.sp
-.ne 2
-.na
-\fBdigit-argument\fR
-.ad
-.RS 30n
-Enter a repeat count for the next key binding function. For details, see the
-Entering Repeat Counts section.
-.RE
-
-.sp
-.ne 2
-.na
-\fBnewline\fR
-.ad
-.RS 30n
-Terminate and return the current contents of the line, after appending a
-newline character. The newline character is normally '\en', but will be the
-first character of the key sequence that invoked the newline action, if this
-happens to be a printable character. If the action was invoked by the '\en'
-newline character or the '\er' carriage return character, the line is appended
-to the history buffer.
-.RE
-
-.sp
-.ne 2
-.na
-\fBrepeat-history\fR
-.ad
-.RS 30n
-Return the line that is being edited, then arrange for the next most recent
-entry in the history buffer to be recalled when tecla is next called.
-Repeatedly invoking this action causes successive historical input lines to be
-re-executed. Note that this action is equivalent to the 'Operate' action in
-ksh.
-.RE
-
-.sp
-.ne 2
-.na
-\fBring-bell\fR
-.ad
-.RS 30n
-Ring the terminal bell, unless the bell has been silenced via the nobeep
-configuration option (see The Tecla Configuration File section).
-.RE
-
-.sp
-.ne 2
-.na
-\fBforward-copy-char\fR
-.ad
-.RS 30n
-Copy the next character into the cut buffer (NB. use repeat counts to copy more
-than one).
-.RE
-
-.sp
-.ne 2
-.na
-\fBbackward-copy-char\fR
-.ad
-.RS 30n
-Copy the previous character into the cut buffer.
-.RE
-
-.sp
-.ne 2
-.na
-\fBforward-copy-word\fR
-.ad
-.RS 30n
-Copy the next word into the cut buffer.
-.RE
-
-.sp
-.ne 2
-.na
-\fBbackward-copy-word\fR
-.ad
-.RS 30n
-Copy the previous word into the cut buffer.
-.RE
-
-.sp
-.ne 2
-.na
-\fBforward-find-char\fR
-.ad
-.RS 30n
-Move the cursor to the next occurrence of the next character that you type.
-.RE
-
-.sp
-.ne 2
-.na
-\fBbackward-find-char\fR
-.ad
-.RS 30n
-Move the cursor to the last occurrence of the next character that you type.
-.RE
-
-.sp
-.ne 2
-.na
-\fBforward-to-char\fR
-.ad
-.RS 30n
-Move the cursor to the character just before the next occurrence of the next
-character that the user types.
-.RE
-
-.sp
-.ne 2
-.na
-\fBbackward-to-char\fR
-.ad
-.RS 30n
-Move the cursor to the character just after the last occurrence before the
-cursor of the next character that the user types.
-.RE
-
-.sp
-.ne 2
-.na
-\fBrepeat-find-char\fR
-.ad
-.RS 30n
-Repeat the last backward-find-char, forward-find-char, backward-to-char or
-forward-to-char.
-.RE
-
-.sp
-.ne 2
-.na
-\fBinvert-refind-char\fR
-.ad
-.RS 30n
-Repeat the last backward-find-char, forward-find-char, backward-to-char, or
-forward-to-char in the opposite direction.
-.RE
-
-.sp
-.ne 2
-.na
-\fBdelete-to-column\fR
-.ad
-.RS 30n
-Delete the characters from the cursor up to the column that is specified by the
-repeat count.
-.RE
-
-.sp
-.ne 2
-.na
-\fBdelete-to-parenthesis\fR
-.ad
-.RS 30n
-Delete the characters from the cursor up to and including the matching
-parenthesis, or next close parenthesis.
-.RE
-
-.sp
-.ne 2
-.na
-\fBforward-delete-find\fR
-.ad
-.RS 30n
-Delete the characters from the cursor up to and including the following
-occurrence of the next character typed.
-.RE
-
-.sp
-.ne 2
-.na
-\fBbackward-delete-find\fR
-.ad
-.RS 30n
-Delete the characters from the cursor up to and including the preceding
-occurrence of the next character typed.
-.RE
-
-.sp
-.ne 2
-.na
-\fBforward-delete-to\fR
-.ad
-.RS 30n
-Delete the characters from the cursor up to, but not including, the following
-occurrence of the next character typed.
-.RE
-
-.sp
-.ne 2
-.na
-\fBbackward-delete-to\fR
-.ad
-.RS 30n
-Delete the characters from the cursor up to, but not including, the preceding
-occurrence of the next character typed.
-.RE
-
-.sp
-.ne 2
-.na
-\fBdelete-refind\fR
-.ad
-.RS 30n
-Repeat the last *-delete-find or *-delete-to action.
-.RE
-
-.sp
-.ne 2
-.na
-\fBdelete-invert-refind\fR
-.ad
-.RS 30n
-Repeat the last *-delete-find or *-delete-to action, in the opposite direction.
-.RE
-
-.sp
-.ne 2
-.na
-\fBcopy-to-column\fR
-.ad
-.RS 30n
-Copy the characters from the cursor up to the column that is specified by the
-repeat count, into the cut buffer.
-.RE
-
-.sp
-.ne 2
-.na
-\fBcopy-to-parenthesis\fR
-.ad
-.RS 30n
-Copy the characters from the cursor up to and including the matching
-parenthesis, or next close parenthesis, into the cut buffer.
-.RE
-
-.sp
-.ne 2
-.na
-\fBforward-copy-find\fR
-.ad
-.RS 30n
-Copy the characters from the cursor up to and including the following occurrence
-of the next character typed, into the cut buffer.
-.RE
-
-.sp
-.ne 2
-.na
-\fBbackward-copy-find\fR
-.ad
-.RS 30n
-Copy the characters from the cursor up to and including the preceding occurrence
-of the next character typed, into the cut buffer.
-.RE
-
-.sp
-.ne 2
-.na
-\fBforward-copy-to\fR
-.ad
-.RS 30n
-Copy the characters from the cursor up to, but not including, the following
-occurrence of the next character typed, into the cut buffer.
-.RE
-
-.sp
-.ne 2
-.na
-\fBbackward-copy-to\fR
-.ad
-.RS 30n
-Copy the characters from the cursor up to, but not including, the preceding
-occurrence of the next character typed, into the cut buffer.
-.RE
-
-.sp
-.ne 2
-.na
-\fBcopy-refind\fR
-.ad
-.RS 30n
-Repeat the last *-copy-find or *-copy-to action.
-.RE
-
-.sp
-.ne 2
-.na
-\fBcopy-invert-refind\fR
-.ad
-.RS 30n
-Repeat the last *-copy-find or *-copy-to action, in the opposite direction.
-.RE
-
-.sp
-.ne 2
-.na
-\fBvi-mode\fR
-.ad
-.RS 30n
-Switch to \fBvi\fR mode from emacs mode.
-.RE
-
-.sp
-.ne 2
-.na
-\fBemacs-mode\fR
-.ad
-.RS 30n
-Switch to \fBemacs\fR mode from \fBvi\fR mode.
-.RE
-
-.sp
-.ne 2
-.na
-\fBvi-insert\fR
-.ad
-.RS 30n
-From \fBvi\fR command mode, switch to insert mode.
-.RE
-
-.sp
-.ne 2
-.na
-\fBvi-overwrite\fR
-.ad
-.RS 30n
-From \fBvi\fR command mode, switch to overwrite mode.
-.RE
-
-.sp
-.ne 2
-.na
-\fBvi-insert-at-bol\fR
-.ad
-.RS 30n
-From \fBvi\fR command mode, move the cursor to the start of the line and switch
-to insert mode.
-.RE
-
-.sp
-.ne 2
-.na
-\fBvi-append-at-eol\fR
-.ad
-.RS 30n
-From \fBvi\fR command mode, move the cursor to the end of the line and switch
-to append mode.
-.RE
-
-.sp
-.ne 2
-.na
-\fBvi-append\fR
-.ad
-.RS 30n
-From \fBvi\fR command mode, move the cursor one position right, and switch to
-insert mode.
-.RE
-
-.sp
-.ne 2
-.na
-\fBvi-replace-char\fR
-.ad
-.RS 30n
-From \fBvi\fR command mode, replace the character under the cursor with the
-next character entered.
-.RE
-
-.sp
-.ne 2
-.na
-\fBvi-forward-change-char\fR
-.ad
-.RS 30n
-From \fBvi\fR command mode, delete the next character then enter insert mode.
-.RE
-
-.sp
-.ne 2
-.na
-\fBvi-backward-change-char\fR
-.ad
-.RS 30n
-From vi command mode, delete the preceding character then enter insert mode.
-.RE
-
-.sp
-.ne 2
-.na
-\fBvi-forward-change-word\fR
-.ad
-.RS 30n
-From \fBvi\fR command mode, delete the next word then enter insert mode.
-.RE
-
-.sp
-.ne 2
-.na
-\fBvi-backward-change-word\fR
-.ad
-.RS 30n
-From vi command mode, delete the preceding word then enter insert mode.
-.RE
-
-.sp
-.ne 2
-.na
-\fBvi-change-rest-of-line\fR
-.ad
-.RS 30n
-From \fBvi\fR command mode, delete from the cursor to the end of the line, then
-enter insert mode.
-.RE
-
-.sp
-.ne 2
-.na
-\fBvi-change-line\fR
-.ad
-.RS 30n
-From \fBvi\fR command mode, delete the current line, then enter insert mode.
-.RE
-
-.sp
-.ne 2
-.na
-\fBvi-change-to-bol\fR
-.ad
-.RS 30n
-From \fBvi\fR command mode, delete all characters between the cursor and the
-beginning of the line, then enter insert mode.
-.RE
-
-.sp
-.ne 2
-.na
-\fBvi-change-to-column\fR
-.ad
-.RS 30n
-From \fBvi\fR command mode, delete the characters from the cursor up to the
-column that is specified by the repeat count, then enter insert mode.
-.RE
-
-.sp
-.ne 2
-.na
-\fBvi-change-to-parenthesis\fR
-.ad
-.RS 30n
-Delete the characters from the cursor up to and including the matching
-parenthesis, or next close parenthesis, then enter \fBvi\fR insert mode.
-.RE
-
-.sp
-.ne 2
-.na
-\fBvi-forward-change-find\fR
-.ad
-.RS 30n
-From \fBvi\fR command mode, delete the characters from the cursor up to and
-including the following occurrence of the next character typed, then enter
-insert mode.
-.RE
-
-.sp
-.ne 2
-.na
-\fBvi-backward-change-find\fR
-.ad
-.RS 30n
-From vi command mode, delete the characters from the cursor up to and including
-the preceding occurrence of the next character typed, then enter insert mode.
-.RE
-
-.sp
-.ne 2
-.na
-\fBvi-forward-change-to\fR
-.ad
-.RS 30n
-From \fBvi\fR command mode, delete the characters from the cursor up to, but
-not including, the following occurrence of the next character typed, then enter
-insert mode.
-.RE
-
-.sp
-.ne 2
-.na
-\fBvi-backward-change-to\fR
-.ad
-.RS 30n
-From \fBvi\fR command mode, delete the characters from the cursor up to, but
-not including, the preceding occurrence of the next character typed, then enter
-insert mode.
-.RE
-
-.sp
-.ne 2
-.na
-\fBvi-change-refind\fR
-.ad
-.RS 30n
-Repeat the last vi-*-change-find or vi-*-change-to action.
-.RE
-
-.sp
-.ne 2
-.na
-\fBvi-change-invert-refind\fR
-.ad
-.RS 30n
-Repeat the last vi-*-change-find or vi-*-change-to action, in the opposite
-direction.
-.RE
-
-.sp
-.ne 2
-.na
-\fBvi-undo\fR
-.ad
-.RS 30n
-In \fBvi\fR mode, undo the last editing operation.
-.RE
-
-.sp
-.ne 2
-.na
-\fBvi-repeat-change\fR
-.ad
-.RS 30n
-In \fBvi\fR command mode, repeat the last command that modified the line.
-.RE
-
-.SS "Default Key Bindings In \fBemacs\fR Mode"
-.LP
-The following default key bindings, which can be overridden by the tecla
-configuration file, are designed to mimic most of the bindings of the unix
-\fBtcsh\fR shell, when it is in \fBemacs\fR editing mode.
-.sp
-.LP
-This is the default editing mode of the tecla library.
-.sp
-.LP
-Under UNIX the terminal driver sets a number of special keys for certain
-functions. The tecla library attempts to use the same key bindings to maintain
-consistency. The key sequences shown for the following 6 bindings are thus just
-examples of what they will probably be set to. If you have used the stty
-command to change these keys, then the default bindings should match.
-.sp
-.ne 2
-.na
-\fB\fB^C\fR\fR
-.ad
-.RS 6n
-user-interrupt
-.RE
-
-.sp
-.ne 2
-.na
-\fB^\e\fR
-.ad
-.RS 6n
-abort
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB^Z\fR\fR
-.ad
-.RS 6n
-suspend
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB^Q\fR\fR
-.ad
-.RS 6n
-start-output
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB^S\fR\fR
-.ad
-.RS 6n
-stop-output
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB^V\fR\fR
-.ad
-.RS 6n
-literal-next
-.RE
-
-.sp
-.LP
-The cursor keys are referred to by name, as follows. This is necessary because
-different types of terminals generate different key sequences when their cursor
-keys are pressed.
-.sp
-.ne 2
-.na
-\fBright\fR
-.ad
-.RS 9n
-cursor-right
-.RE
-
-.sp
-.ne 2
-.na
-\fBleft\fR
-.ad
-.RS 9n
-cursor-left
-.RE
-
-.sp
-.ne 2
-.na
-\fBup\fR
-.ad
-.RS 9n
-up-history
-.RE
-
-.sp
-.ne 2
-.na
-\fBdown\fR
-.ad
-.RS 9n
-down-history
-.RE
-
-.sp
-.LP
-The remaining bindings don't depend on the terminal settings.
-.sp
-.ne 2
-.na
-\fB\fB^F\fR\fR
-.ad
-.RS 21n
-cursor-right
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB^B\fR\fR
-.ad
-.RS 21n
-cursor-left
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-i\fR\fR
-.ad
-.RS 21n
-insert-mode
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB^A\fR\fR
-.ad
-.RS 21n
-beginning-of-line
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB^E\fR\fR
-.ad
-.RS 21n
-end-of-line
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB^U\fR\fR
-.ad
-.RS 21n
-delete-line
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB^K\fR\fR
-.ad
-.RS 21n
-kill-line
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-f\fR\fR
-.ad
-.RS 21n
-forward-word
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-b\fR\fR
-.ad
-.RS 21n
-backward-word
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB^D\fR\fR
-.ad
-.RS 21n
-del-char-or-list-or-eof
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB^H\fR\fR
-.ad
-.RS 21n
-backward-delete-char
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB^?\fR\fR
-.ad
-.RS 21n
-backward-delete-char
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-d\fR\fR
-.ad
-.RS 21n
-forward-delete-word
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-^H\fR\fR
-.ad
-.RS 21n
-backward-delete-word
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-^?\fR\fR
-.ad
-.RS 21n
-backward-delete-word
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-u\fR\fR
-.ad
-.RS 21n
-upcase-word
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-l\fR\fR
-.ad
-.RS 21n
-downcase-word
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-c\fR\fR
-.ad
-.RS 21n
-capitalize-word
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB^R\fR\fR
-.ad
-.RS 21n
-redisplay
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB^L\fR\fR
-.ad
-.RS 21n
-clear-screen
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB^T\fR\fR
-.ad
-.RS 21n
-transpose-chars
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB^@\fR\fR
-.ad
-.RS 21n
-set-mark
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB^X^X\fR\fR
-.ad
-.RS 21n
-exchange-point-and-mark
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB^W\fR\fR
-.ad
-.RS 21n
-kill-region
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-w\fR\fR
-.ad
-.RS 21n
-copy-region-as-kill
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB^Y\fR\fR
-.ad
-.RS 21n
-yank
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB^P\fR\fR
-.ad
-.RS 21n
-up-history
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB^N\fR\fR
-.ad
-.RS 21n
-down-history
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-p\fR\fR
-.ad
-.RS 21n
-history-search-backward
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-n\fR\fR
-.ad
-.RS 21n
-history-search-forward
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB^I\fR\fR
-.ad
-.RS 21n
-complete-word
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB^X*\fR\fR
-.ad
-.RS 21n
-expand-filename
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB^X^F\fR\fR
-.ad
-.RS 21n
-read-from-file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB^X^R\fR\fR
-.ad
-.RS 21n
-read-init-files
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB^Xg\fR\fR
-.ad
-.RS 21n
-list-glob
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB^Xh\fR\fR
-.ad
-.RS 21n
-list-history
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-<\fR\fR
-.ad
-.RS 21n
-beginning-of-history
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM->\fR\fR
-.ad
-.RS 21n
-end-of-history
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\en\fR\fR
-.ad
-.RS 21n
-newline
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\er\fR\fR
-.ad
-.RS 21n
-newline
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-o\fR\fR
-.ad
-.RS 21n
-repeat-history
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-^V\fR\fR
-.ad
-.RS 21n
-\fBvi\fR-mode
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-0, M-1, ... M-9\fR\fR
-.ad
-.RS 21n
-digit-argument (see below)
-.RE
-
-.sp
-.LP
-Note that \fB^I\fR is what the TAB key generates, and that \fB^@\fR can be
-generated not only by pressing the CONTROL key and the @ key simultaneously,
-but also by pressing the CONTROL key and the space bar at the same time.
-.SS "Default Key Bindings in \fBvi\fR Mode"
-.LP
-The following default key bindings are designed to mimic the \fBvi\fR style of
-editing as closely as possible. This means that very few editing functions are
-provided in the initial character input mode, editing functions instead being
-provided by the \fBvi\fR command mode. The \fBvi\fR command mode is entered
-whenever the ESCAPE character is pressed, or whenever a key sequence that
-starts with a meta character is entered. In addition to mimicing \fBvi\fR,
-\fBlibtecla\fR provides bindings for tab completion, wild-card expansion of
-file names, and historical line recall.
-.sp
-.LP
-To learn how to tell the tecla library to use \fBvi\fR mode instead of the
-default \fBemacs\fR editing mode, see the earlier section entitled The Tecla
-Configuration File.
-.sp
-.LP
-Under UNIX the terminal driver sets a number of special keys for certain
-functions. The tecla library attempts to use the same key bindings to maintain
-consistency, binding them both in input mode and in command mode. The key
-sequences shown for the following 6 bindings are thus just examples of what
-they will probably be set to. If you have used the \fBstty\fR command to change
-these keys, then the default bindings should match.
-.sp
-.ne 2
-.na
-\fB\fB^C\fR\fR
-.ad
-.RS 8n
-user-interrupt
-.RE
-
-.sp
-.ne 2
-.na
-\fB^\e\fR
-.ad
-.RS 8n
-abort
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB^Z\fR\fR
-.ad
-.RS 8n
-suspend
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB^Q\fR\fR
-.ad
-.RS 8n
-start-output
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB^S\fR\fR
-.ad
-.RS 8n
-stop-output
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB^V\fR\fR
-.ad
-.RS 8n
-literal-next
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-^C\fR\fR
-.ad
-.RS 8n
-user-interrupt
-.RE
-
-.sp
-.ne 2
-.na
-\fBM-^\e\fR
-.ad
-.RS 8n
-abort
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-^Z\fR\fR
-.ad
-.RS 8n
-suspend
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-^Q\fR\fR
-.ad
-.RS 8n
-start-output
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-^S\fR\fR
-.ad
-.RS 8n
-stop-output
-.RE
-
-.sp
-.LP
-Note that above, most of the bindings are defined twice, once as a raw control
-code like \fB^C\fR and then a second time as a META character like \fBM-^C\fR.
-The former is the binding for \fBvi\fR input mode, whereas the latter is the
-binding for \fBvi\fR command mode. Once in command mode all key sequences that
-the user types that they don't explicitly start with an ESCAPE or a META key,
-have their first key secretly converted to a META character before the key
-sequence is looked up in the key binding table. Thus, once in command mode,
-when you type the letter i, for example, the tecla library actually looks up
-the binding for \fBM-i\fR.
-.sp
-.LP
-The cursor keys are referred to by name, as follows. This is necessary because
-different types of terminals generate different key sequences when their cursor
-keys are pressed.
-.sp
-.ne 2
-.na
-\fB\fBright\fR\fR
-.ad
-.RS 9n
-cursor-right
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBleft\fR\fR
-.ad
-.RS 9n
-cursor-left
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBup\fR\fR
-.ad
-.RS 9n
-up-history
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdown\fR\fR
-.ad
-.RS 9n
-down-history
-.RE
-
-.sp
-.LP
-The cursor keys normally generate a key sequence that start with an ESCAPE
-character, so beware that using the arrow keys will put you into command mode
-(if you aren't already in command mode).
-.sp
-.LP
-The following are the terminal-independent key bindings for \fBvi\fR input
-mode.
-.sp
-.ne 2
-.na
-\fB\fB^D\fR\fR
-.ad
-.RS 8n
-list-or-eof
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB^G\fR\fR
-.ad
-.RS 8n
-list-glob
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB^H\fR\fR
-.ad
-.RS 8n
-backward-delete-char
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB^I\fR\fR
-.ad
-.RS 8n
-complete-word
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\er\fR\fR
-.ad
-.RS 8n
-newline
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\en\fR\fR
-.ad
-.RS 8n
-newline
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB^L\fR\fR
-.ad
-.RS 8n
-clear-screen
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB^N\fR\fR
-.ad
-.RS 8n
-down-history
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB^P\fR\fR
-.ad
-.RS 8n
-up-history
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB^R\fR\fR
-.ad
-.RS 8n
-redisplay
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB^U\fR\fR
-.ad
-.RS 8n
-backward-kill-line
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB^W\fR\fR
-.ad
-.RS 8n
-backward-delete-word
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB^X*\fR\fR
-.ad
-.RS 8n
-expand-filename
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB^X^F\fR\fR
-.ad
-.RS 8n
-read-from-file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB^X^R\fR\fR
-.ad
-.RS 8n
-read-init-files
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB^?\fR\fR
-.ad
-.RS 8n
-backward-delete-char
-.RE
-
-.sp
-.LP
-The following are the key bindings that are defined in \fBvi\fR command mode,
-this being specified by them all starting with a META character. As mentioned
-above, once in command mode the initial meta character is optional. For
-example, you might enter command mode by typing ESCAPE, and then press 'H'
-twice to move the cursor two positions to the left. Both 'H' characters get
-quietly converted to \fBM-h\fR before being compared to the key binding table,
-the first one because ESCAPE followed by a character is always converted to the
-equivalent META character, and the second because command mode was already
-active.
-.sp
-.ne 2
-.na
-\fBM-<space>\fR
-.ad
-.RS 21n
-cursor-right (META-space)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-$\fR\fR
-.ad
-.RS 21n
-end-of-line
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-*\fR\fR
-.ad
-.RS 21n
-expand-filename
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-+\fR\fR
-.ad
-.RS 21n
-down-history
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM--\fR\fR
-.ad
-.RS 21n
-up-history
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-<\fR\fR
-.ad
-.RS 21n
-beginning-of-history
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM->\fR\fR
-.ad
-.RS 21n
-end-of-history
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-^\fR\fR
-.ad
-.RS 21n
-beginning-of-line
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-\fR\fR
-.ad
-.RS 21n
-repeat-find-char
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-,\fR\fR
-.ad
-.RS 21n
-invert-refind-char
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-|\fR\fR
-.ad
-.RS 21n
-goto-column
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-~\fR\fR
-.ad
-.RS 21n
-change-case
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-.\fR\fR
-.ad
-.RS 21n
-vi-repeat-change
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-%\fR\fR
-.ad
-.RS 21n
-find-parenthesis
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-a\fR\fR
-.ad
-.RS 21n
-vi-append
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-A\fR\fR
-.ad
-.RS 21n
-vi-append-at-eol
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-b\fR\fR
-.ad
-.RS 21n
-backward-word
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-B\fR\fR
-.ad
-.RS 21n
-backward-word
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-C\fR\fR
-.ad
-.RS 21n
-vi-change-rest-of-line
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-cb\fR\fR
-.ad
-.RS 21n
-vi-backward-change-word
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-cB\fR\fR
-.ad
-.RS 21n
-vi-backward-change-word
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-cc\fR\fR
-.ad
-.RS 21n
-vi-change-line
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-ce\fR\fR
-.ad
-.RS 21n
-vi-forward-change-word
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-cE\fR\fR
-.ad
-.RS 21n
-vi-forward-change-word
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-cw\fR\fR
-.ad
-.RS 21n
-vi-forward-change-word
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-cW\fR\fR
-.ad
-.RS 21n
-vi-forward-change-word
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-cF\fR\fR
-.ad
-.RS 21n
-vi-backward-change-find
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-cf\fR\fR
-.ad
-.RS 21n
-vi-forward-change-find
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-cT\fR\fR
-.ad
-.RS 21n
-vi-backward-change-to
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-ct\fR\fR
-.ad
-.RS 21n
-vi-forward-change-to
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-c;\fR\fR
-.ad
-.RS 21n
-vi-change-refind
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-c,\fR\fR
-.ad
-.RS 21n
-vi-change-invert-refind
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-ch\fR\fR
-.ad
-.RS 21n
-vi-backward-change-char
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-c^H\fR\fR
-.ad
-.RS 21n
-vi-backward-change-char
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-c^?\fR\fR
-.ad
-.RS 21n
-vi-backward-change-char
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-cl\fR\fR
-.ad
-.RS 21n
-vi-forward-change-char
-.RE
-
-.sp
-.ne 2
-.na
-\fBM-c<space>\fR
-.ad
-.RS 21n
-vi-forward-change-char (META-c-space)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-c^\fR\fR
-.ad
-.RS 21n
-vi-change-to-bol
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-c0\fR\fR
-.ad
-.RS 21n
-vi-change-to-bol
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-c$\fR\fR
-.ad
-.RS 21n
-vi-change-rest-of-line
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-c|\fR\fR
-.ad
-.RS 21n
-vi-change-to-column
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-c%\fR\fR
-.ad
-.RS 21n
-vi-change-to-parenthesis
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-dh\fR\fR
-.ad
-.RS 21n
-backward-delete-char
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-d^H\fR\fR
-.ad
-.RS 21n
-backward-delete-char
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-d^?\fR\fR
-.ad
-.RS 21n
-backward-delete-char
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-dl\fR\fR
-.ad
-.RS 21n
-forward-delete-char
-.RE
-
-.sp
-.ne 2
-.na
-\fBM-d<space>\fR
-.ad
-.RS 21n
-forward-delete-char (META-d-space)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-dd\fR\fR
-.ad
-.RS 21n
-delete-line
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-db\fR\fR
-.ad
-.RS 21n
-backward-delete-word
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-dB\fR\fR
-.ad
-.RS 21n
-backward-delete-word
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-de\fR\fR
-.ad
-.RS 21n
-forward-delete-word
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-dE\fR\fR
-.ad
-.RS 21n
-forward-delete-word
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-dw\fR\fR
-.ad
-.RS 21n
-forward-delete-word
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-dW\fR\fR
-.ad
-.RS 21n
-forward-delete-word
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-dF\fR\fR
-.ad
-.RS 21n
-backward-delete-find
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-df\fR\fR
-.ad
-.RS 21n
-forward-delete-find
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-dT\fR\fR
-.ad
-.RS 21n
-backward-delete-to
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-dt\fR\fR
-.ad
-.RS 21n
-forward-delete-to
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-d;\fR\fR
-.ad
-.RS 21n
-delete-refind
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-d,\fR\fR
-.ad
-.RS 21n
-delete-invert-refind
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-d^\fR\fR
-.ad
-.RS 21n
-backward-kill-line
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-d0\fR\fR
-.ad
-.RS 21n
-backward-kill-line
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-d$\fR\fR
-.ad
-.RS 21n
-kill-line
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-D\fR\fR
-.ad
-.RS 21n
-kill-line
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-d|\fR\fR
-.ad
-.RS 21n
-delete-to-column
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-d%\fR\fR
-.ad
-.RS 21n
-delete-to-parenthesis
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-e\fR\fR
-.ad
-.RS 21n
-forward-word
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-E\fR\fR
-.ad
-.RS 21n
-forward-word
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-f\fR\fR
-.ad
-.RS 21n
-forward-find-char
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-F\fR\fR
-.ad
-.RS 21n
-backward-find-char
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM--\fR\fR
-.ad
-.RS 21n
-up-history
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-h\fR\fR
-.ad
-.RS 21n
-cursor-left
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-H\fR\fR
-.ad
-.RS 21n
-beginning-of-history
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-i\fR\fR
-.ad
-.RS 21n
-vi-insert
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-I\fR\fR
-.ad
-.RS 21n
-vi-insert-at-bol
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-j\fR\fR
-.ad
-.RS 21n
-down-history
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-J\fR\fR
-.ad
-.RS 21n
-history-search-forward
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-k\fR\fR
-.ad
-.RS 21n
-up-history
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-K\fR\fR
-.ad
-.RS 21n
-history-search-backward
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-l\fR\fR
-.ad
-.RS 21n
-cursor-right
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-L\fR\fR
-.ad
-.RS 21n
-end-of-history
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-n\fR\fR
-.ad
-.RS 21n
-history-re-search-forward
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-N\fR\fR
-.ad
-.RS 21n
-history-re-search-backward
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-p\fR\fR
-.ad
-.RS 21n
-append-yank
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-P\fR\fR
-.ad
-.RS 21n
-yank
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-r\fR\fR
-.ad
-.RS 21n
-vi-replace-char
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-R\fR\fR
-.ad
-.RS 21n
-vi-overwrite
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-s\fR\fR
-.ad
-.RS 21n
-vi-forward-change-char
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-S\fR\fR
-.ad
-.RS 21n
-vi-change-line
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-t\fR\fR
-.ad
-.RS 21n
-forward-to-char
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-T\fR\fR
-.ad
-.RS 21n
-backward-to-char
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-u\fR\fR
-.ad
-.RS 21n
-vi-undo
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-w\fR\fR
-.ad
-.RS 21n
-forward-to-word
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-W\fR\fR
-.ad
-.RS 21n
-forward-to-word
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-x\fR\fR
-.ad
-.RS 21n
-forward-delete-char
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-X\fR\fR
-.ad
-.RS 21n
-backward-delete-char
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-yh\fR\fR
-.ad
-.RS 21n
-backward-copy-char
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-y^H\fR\fR
-.ad
-.RS 21n
-backward-copy-char
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-y^?\fR\fR
-.ad
-.RS 21n
-backward-copy-char
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-yl\fR\fR
-.ad
-.RS 21n
-forward-copy-char
-.RE
-
-.sp
-.ne 2
-.na
-\fBM-y<space>\fR
-.ad
-.RS 21n
-forward-copy-char (META-y-space)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-ye\fR\fR
-.ad
-.RS 21n
-forward-copy-word
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-yE\fR\fR
-.ad
-.RS 21n
-forward-copy-word
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-yw\fR\fR
-.ad
-.RS 21n
-forward-copy-word
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-yW\fR\fR
-.ad
-.RS 21n
-forward-copy-word
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-yb\fR\fR
-.ad
-.RS 21n
-backward-copy-word
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-yB\fR\fR
-.ad
-.RS 21n
-backward-copy-word
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-yf\fR\fR
-.ad
-.RS 21n
-forward-copy-find
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-yF\fR\fR
-.ad
-.RS 21n
-backward-copy-find
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-yt\fR\fR
-.ad
-.RS 21n
-forward-copy-to
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-yT\fR\fR
-.ad
-.RS 21n
-backward-copy-to
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-y;\fR\fR
-.ad
-.RS 21n
-copy-refind
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-y,\fR\fR
-.ad
-.RS 21n
-copy-invert-refind
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-y^\fR\fR
-.ad
-.RS 21n
-copy-to-bol
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-y0\fR\fR
-.ad
-.RS 21n
-copy-to-bol
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-y$\fR\fR
-.ad
-.RS 21n
-copy-rest-of-line
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-yy\fR\fR
-.ad
-.RS 21n
-copy-line
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-Y\fR\fR
-.ad
-.RS 21n
-copy-line
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-y|\fR\fR
-.ad
-.RS 21n
-copy-to-column
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-y%\fR\fR
-.ad
-.RS 21n
-copy-to-parenthesis
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-^E\fR\fR
-.ad
-.RS 21n
-emacs-mode
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-^H\fR\fR
-.ad
-.RS 21n
-cursor-left
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-^?\fR\fR
-.ad
-.RS 21n
-cursor-left
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-^L\fR\fR
-.ad
-.RS 21n
-clear-screen
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-^N\fR\fR
-.ad
-.RS 21n
-down-history
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-^P\fR\fR
-.ad
-.RS 21n
-up-history
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-^R\fR\fR
-.ad
-.RS 21n
-redisplay
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-^D\fR\fR
-.ad
-.RS 21n
-list-or-eof
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-^I\fR\fR
-.ad
-.RS 21n
-complete-word
-.RE
-
-.sp
-.ne 2
-.na
-\fBM-\er\fR
-.ad
-.RS 21n
-newline
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-\en\fR\fR
-.ad
-.RS 21n
-newline
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-^X^R\fR\fR
-.ad
-.RS 21n
-read-init-files
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-^Xh\fR\fR
-.ad
-.RS 21n
-list-history
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM-0, M-1, ... M-9\fR\fR
-.ad
-.RS 21n
-digit-argument (see below)
-.RE
-
-.sp
-.LP
-Note that \fB^I\fR is what the TAB key generates.
-.SS "Entering Repeat Counts"
-.LP
-Many of the key binding functions described previously, take an optional count,
-typed in before the target key sequence. This is interpreted as a repeat count
-by most bindings. A notable exception is the goto-column binding, which
-interprets the count as a column number.
-.sp
-.LP
-By default you can specify this count argument by pressing the META key while
-typing in the numeric count. This relies on the digit-argument action being
-bound to 'META-0', 'META-1' etc. Once any one of these bindings has been
-activated, you can optionally take your finger off the META key to type in the
-rest of the number, since every numeric digit thereafter is treated as part of
-the number, unless it is preceded by the literal-next binding. As soon as a
-non-digit, or literal digit key is pressed the repeat count is terminated and
-either causes the just typed character to be added to the line that many times,
-or causes the next key binding function to be given that argument.
-.sp
-.LP
-For example, in \fBemacs\fR mode, typing:
-.sp
-.in +2
-.nf
-M-12a
-.fi
-.in -2
-
-.sp
-.LP
-causes the letter 'a' to be added to the line 12 times, whereas
-.sp
-.in +2
-.nf
-M-4M-c
-.fi
-.in -2
-
-.sp
-.LP
-Capitalizes the next 4 words.
-.sp
-.LP
-In \fBvi\fR command mode the meta modifier is automatically added to all
-characters typed in, so to enter a count in \fBvi\fR command-mode, just
-involves typing in the number, just as it does in the \fBvi\fR editor itself.
-So for example, in vi command mode, typing:
-.sp
-.in +2
-.nf
-4w2x
-.fi
-.in -2
-
-.sp
-.LP
-moves the cursor four words to the right, then deletes two characters.
-.sp
-.LP
-You can also bind digit-argument to other key sequences. If these end in a
-numeric digit, that digit gets appended to the current repeat count. If it
-doesn't end in a numeric digit, a new repeat count is started with a value of
-zero, and can be completed by typing in the number, after letting go of the key
-which triggered the digit-argument action.
-.SH FILES
-.ne 2
-.na
-\fB\fB/usr/lib/libtecla.so\fR\fR
-.ad
-.RS 27n
-The tecla library
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/include/libtecla.h\fR\fR
-.ad
-.RS 27n
-The tecla header file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB~/.teclarc\fR\fR
-.ad
-.RS 27n
-The personal tecla customization file
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-.LP
-\fBvi\fR(1), \fBcpl_complete_word\fR(3TECLA), \fBef_expand_file\fR(3TECLA),
-\fBgl_get_line\fR(3TECLA), \fBgl_io_mode\fR(3TECLA), \fBlibtecla\fR(3LIB),
-\fBpca_lookup_file\fR(3TECLA), \fBattributes\fR(5)
diff --git a/usr/src/man/man5/term.5 b/usr/src/man/man5/term.5
index 981a380fda..a536d7e7ce 100644
--- a/usr/src/man/man5/term.5
+++ b/usr/src/man/man5/term.5
@@ -1,194 +1,185 @@
'\" te
-.\" Copyright 1989 AT&T
+.\" Copyright 1989 AT&T Copyright (c) 1996, Sun Microsystems, Inc. All Rights Reserved
.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH TERM 5 "Jul 3, 1990"
+.TH TERM 5 "Jul 3, 1996"
.SH NAME
-term \- conventional names for terminals
+term \- format of compiled term file
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/share/lib/terminfo/?/*\fR
+.fi
+
.SH DESCRIPTION
.sp
.LP
-Terminal names are maintained as part of the shell environment in the
-environment variable \fB\fR\fBTERM\fR\fB\&. \fR See \fBsh\fR(1),
-\fBprofile\fR(4), and \fBenviron\fR(5). These names are used by certain
-commands (for example, \fBtabs\fR, \fBtput\fR, and \fBvi\fR) and certain
-functions (for example, see \fBcurses\fR(3CURSES)).
-.sp
-.LP
-Files under \fB/usr/share/lib/terminfo\fR are used to name terminals and
-describe their capabilities. These files are in the format described in
-\fBterminfo\fR(4). Entries in \fBterminfo\fR source files consist of a number
-of comma-separated fields. To print a description of a terminal \fIterm\fR,
-use the command \fBinfocmp\fR \fB-I\fR \fIterm\fR. See \fBinfocmp\fR(1M).
-White space after each comma is ignored. The first line of each terminal
-description in the \fBterminfo\fR database gives the names by which
-\fBterminfo\fR knows the terminal, separated by bar (\fB|\fR) characters. The
-first name given is the most common abbreviation for the terminal (this is the
-one to use to set the environment variable \fBTERMINFO\fR in
-\fB$HOME/.profile\fR; see \fBprofile\fR(4)), the last name given should be a
-long name fully identifying the terminal, and all others are understood as
-synonyms for the terminal name. All names but the last should contain no blanks
-and must be unique in the first 14 characters; the last name may contain blanks
-for readability.
-.sp
-.LP
-Terminal names (except for the last, verbose entry) should be chosen using the
-following conventions. The particular piece of hardware making up the terminal
-should have a root name chosen, for example, for the AT&T 4425 terminal,
-\fBatt4425\fR. This name should not contain hyphens, except that synonyms may
-be chosen that do not conflict with other names. Up to 8 characters, chosen
-from the set \fBa\fR through \fBz\fR and \fB0\fR through \fB9\fR, make up a
-basic terminal name. Names should generally be based on original vendors rather
-than local distributors. A terminal acquired from one vendor should not have
-more than one distinct basic name. Terminal sub-models, operational modes that
-the hardware can be in, or user preferences should be indicated by appending a
-hyphen and an indicator of the mode. Thus, an AT&T 4425 terminal in 132 column
-mode is \fBatt4425\(miw\fR. The following suffixes should be used where
-possible:
+The \fBterm\fR file is compiled from \fBterminfo\fR(5) source files using
+\fBtic\fR(8). Compiled files are organized in a directory hierarchy under the
+first letter of each terminal name. For example, the \fBvt100\fR file would
+have the pathname \fB/usr/lib/terminfo/v/vt100\fR. The default directory is
+\fB/usr/share/lib/terminfo\fR. Synonyms for the same terminal are implemented
+by multiple links to the same compiled file.
.sp
-
+.LP
+The format has been chosen so that it is the same on all hardware. An 8-bit
+byte is assumed, but no assumptions about byte ordering or sign extension are
+made. Thus, these binary \fBterminfo\fR files can be transported to other
+hardware with 8-bit bytes.
.sp
-.TS
-l l l
-l l l .
-Suffix Meaning Example
-\(miw Wide mode (more than 80 columns) att4425\(miw
-\(miam With auto. margins (usually default) vt100\(miam
-\(minam Without automatic margins vt100\(minam
-\(mi\fIn\fR Number of lines on the screen aaa\(mi60
-\(mina No arrow keys (leave them in local) c100\(mina
-\(minp Number of pages of memory c100\(mi4p
-\(mirv Reverse video att4415\(mirv
-.TE
-
+.LP
+Short integers are stored in two 8-bit bytes. The first byte contains the least
+significant 8 bits of the value, and the second byte contains the most
+significant 8 bits. (Thus, the value represented is
+256*\fIsecond\fR+\fIfirst\fR.) The value \fB\(mi1\fR is represented by
+\fB0377,0377\fR, and the value \fB\(mi2\fR is represented by \fB0376,0377\fR;
+other negative values are illegal. The \fB\(mi1\fR generally means that a
+capability is missing from this terminal. The \fB\(mi2\fR means that the
+capability has been cancelled in the \fBterminfo\fR source and also is to be
+considered missing.
+.sp
+.LP
+The compiled file is created from the source file descriptions of the terminals
+(see the \fB-I\fR option of \fBinfocmp\fR) by using the \fBterminfo\fR
+compiler, \fBtic\fR, and read by the routine \fBsetupterm\fR (see
+\fBcurses\fR(3CURSES)). The file is divided into six parts in the following
+order: the header, terminal names, boolean flags, numbers, strings, and string
+table.
+.sp
+.LP
+The header section begins the file six short integers in the format described
+below. These integers are:
+.RS +4
+.TP
+1.
+the magic number (octal \fB0432\fR);
+.RE
+.RS +4
+.TP
+2.
+the size, in bytes, of the names section;
+.RE
+.RS +4
+.TP
+3.
+the number of bytes in the boolean section
+.RE
+.RS +4
+.TP
+4.
+the number of short integers in the numbers section;
+.RE
+.RS +4
+.TP
+5.
+the number of offsets (short integers) in the strings section;
+.RE
+.RS +4
+.TP
+6.
+the size, in bytes, of the string table.
+.RE
+.sp
+.LP
+The terminal name section comes next. It contains the first line of the
+\fBterminfo\fR description, listing the various names for the terminal,
+separated by the bar ( | ) character (see \fBterm\fR(7)). The section is
+terminated with an \fBASCII NUL\fR character.
+.sp
+.LP
+The terminal name section is followed by the Boolean section, number section,
+string section, and string table.
+.sp
+.LP
+The boolean flags section consists of one byte for each flag. This byte is
+either \fB0\fR or \fB1\fR as the flag is present or absent. The value of
+\fB2\fR means that the flag has been cancelled. The capabilities are in the
+same order as the file <\fBterm.h\fR>.
+.sp
+.LP
+Between the boolean flags section and the number section, a null byte is
+inserted, if necessary, to ensure that the number section begins on an even
+byte offset. All short integers are aligned on a short word boundary.
+.sp
+.LP
+The numbers section is similar to the boolean flags section. Each capability
+takes up two bytes, and is stored as a short integer. If the value represented
+is \fB\(mi1\fR or \fB\(mi2\fR, the capability is taken to be missing.
+.sp
+.LP
+The strings section is also similar. Each capability is stored as a short
+integer, in the format above. A value of \fB\(mi1\fR or \fB\(mi2\fR means the
+capability is missing. Otherwise, the value is taken as an offset from the
+beginning of the string table. Special characters in ^X or \ec notation are
+stored in their interpreted form, not the printing representation. Padding
+information ($<nn>) and parameter information (%x) are stored intact in
+uninterpreted form.
.sp
.LP
-To avoid conflicts with the naming conventions used in describing the different
-modes of a terminal (for example, \fB-w\fR), it is recommended that a
-terminal's root name not contain hyphens. Further, it is good practice to make
-all terminal names used in the \fBterminfo\fR(4) database unique. Terminal
-entries that are present only for inclusion in other entries via the \fBuse=\fR
-facilities should have a '\fB+\fR' in their name, as in \fB4415+nl\fR.
+The final section is the string table. It contains all the values of string
+capabilities referenced in the string section. Each string is null terminated.
.sp
.LP
-Here are some of the known terminal names: (For a complete list, enter the
-command \fBls -C /usr/share/lib/terminfo/?\fR ).
+Note that it is possible for \fBsetupterm\fR to expect a different set of
+capabilities than are actually present in the file. Either the database may
+have been updated since \fBsetupterm\fR has been recompiled (resulting in extra
+unrecognized entries in the file) or the program may have been recompiled more
+recently than the database was updated (resulting in missing entries). The
+routine \fBsetupterm\fR must be prepared for both possibilities\(emthis is why
+the numbers and sizes are included. Also, new capabilities must always be added
+at the end of the lists of boolean, number, and string capabilities.
+.sp
+.LP
+As an example, here is terminal information on the AT&T Model 37 KSR terminal
+as output by the \fBinfocmp \fR\fB-I\fR\fB tty37\fR command:
+.sp
+.in +2
+.nf
+37|tty37|AT&T model 37 teletype,
+ hc, os, xon,
+ bel=^G, cr=\er, cub1=\eb, cud1=\en, cuu1=\eE7, hd=\eE9,
+ hu=\eE8, ind=\en,
+.fi
+.in -2
.sp
.sp
-.TS
-l l
-l l .
-2621,hp2621 Hewlett-Packard 2621 series
-2631 Hewlett-Packard 2631 line printer
-2631\(mic T{
-Hewlett-Packard 2631 line printer, compressed mode
-T}
-2631\(mie T{
-Hewlett-Packard 2631 line printer, expanded mode
-T}
-2640,hp2640 Hewlett-Packard 2640 series
-2645,hp2645 Hewlett-Packard 2645 series
-3270 IBM Model 3270
-33,tty33 AT&T Teletype Model 33 KSR
-35,tty35 AT&T Teletype Model 35 KSR
-37,tty37 AT&T Teletype Model 37 KSR
-4000a Trendata 4000a
-4014,tek4014 TEKTRONIX 4014
-40,tty40 AT&T Teletype Dataspeed 40/2
-43,tty43 AT&T Teletype Model 43 KSR
-4410,5410 T{
-AT&T 4410/5410 in 80-column mode, version 2
-T}
-4410\(minfk,5410\(minfk T{
-AT&T 4410/5410 without function keys, version 1
-T}
-4410\(minsl,5410\(minsl AT&T 4410/5410 without pln defined
-4410\(miw,5410\(miw AT&T 4410/5410 in 132-column mode
-4410v1,5410v1 T{
-AT&T 4410/5410 in 80-column mode, version 1
-T}
-4410v1\(miw,5410v1\(miw T{
-AT&T 4410/5410 in 132-column mode, version 1
-T}
-4415,5420 AT&T 4415/5420 in 80-column mode
-4415\(minl,5420\(minl AT&T 4415/5420 without changing labels
-4415\(mirv,5420\(mirv T{
-AT&T 4415/5420 80 columns in reverse video
-T}
-4415\(mirv\(minl,5420\(mirv\(minl T{
-AT&T 4415/5420 reverse video without changing labels
-T}
-4415\(miw,5420\(miw AT&T 4415/5420 in 132-column mode
-4415\(miw\(minl,5420\(miw\(minl T{
-AT&T 4415/5420 in 132-column mode without changing labels
-T}
-4415\(miw\(mirv,5420\(miw\(mirv T{
-AT&T 4415/5420 132 columns in reverse video
-T}
-4418,5418 AT&T 5418 in 80-column mode
-4418\(miw,5418\(miw AT&T 5418 in 132-column mode
-4420 AT&T Teletype Model 4420
-4424 AT&T Teletype Model 4424
-4424-2 T{
-AT&T Teletype Model 4424 in display function group ii
-T}
-4425,5425 AT&T 4425/5425
-4425\(mifk,5425\(mifk AT&T 4425/5425 without function keys
-4425\(minl,5425\(minl T{
-AT&T 4425/5425 without changing labels in 80-column mode
-T}
-4425\(miw,5425\(miw AT&T 4425/5425 in 132-column mode
-4425\(miw\(mifk,5425\(miw\(mifk T{
-AT&T 4425/5425 without function keys in 132-column mode
-T}
-4425\(minl\(miw,5425\(minl\(miw T{
-AT&T 4425/5425 without changing labels in 132-column mode
-T}
-4426 AT&T Teletype Model 4426S
-450 DASI 450 (same as Diablo 1620)
-450\(mi12 DASI 450 in 12-pitch mode
-500,att500 AT&T-IS 500 terminal
-510,510a AT&T 510/510a in 80-column mode
-513bct,att513 AT&T 513 bct terminal
-5320 AT&T 5320 hardcopy terminal
-5420_2 AT&T 5420 model 2 in 80-column mode
-5420_2\(miw AT&T 5420 model 2 in 132-column mode
-5620,dmd AT&T 5620 terminal 88 columns
-5620\(mi24,dmd\(mi24 T{
-AT&T Teletype Model DMD 5620 in a 24x80 layer
-T}
-5620\(mi34,dmd\(mi34 T{
-AT&T Teletype Model DMD 5620 in a 34x80 layer
-T}
-610,610bct AT&T 610 bct terminal in 80-column mode
-610\(miw,610bct\(miw AT&T 610 bct terminal in 132-column mode
-630,630MTG AT&T 630 Multi-Tasking Graphics terminal
-7300,pc7300,unix_pc AT&T UNIX PC Model 7300
-735,ti Texas Instruments TI735 and TI725
-745 Texas Instruments TI745
-dumb T{
-generic name for terminals that lack reverse line-feed and other special escape sequences
-T}
-hp Hewlett-Packard (same as 2645)
-lp generic name for a line printer
-pt505 AT&T Personal Terminal 505 (22 lines)
-pt505\(mi24 T{
-AT&T Personal Terminal 505 (24-line mode)
-T}
-sync T{
-generic name for synchronous Teletype Model 4540-compatible terminals
-T}
-.TE
+.LP
+The following is an octal dump of the corresponding \fBterm\fR file, produced
+by the \fBod -c /usr/share/lib/terminfo/t/tty37\fR command:
+.sp
+.in +2
+.nf
+0000000 032 001 \e0 032 \e0 013 \e0 021 001 3 \e0 3 7 | t
+0000020 t y 3 7 | A T & T m o d e l
+0000040 3 7 t e l e t y p e \e0 \e0 \e0 \e0 \e0
+0000060 \e0 \e0 \e0 001 \e0 \e0 \e0 \e0 \e0 \e0 \e0 001 \e0 \e0 \e0 \e0
+0000100 001 \e0 \e0 \e0 \e0 \e0 377 377 377 377 377 377 377 377 377 377
+0000120 377 377 377 377 377 377 377 377 377 377 377 377 377 377 & \e0
+0000140 \e0 377 377 377 377 377 377 377 377 377 377 377 377 377 377
+0000160 377 377 " \e0 377 377 377 377 ( \e0 377 377 377 377 377 377
+0000200 377 377 0 \e0 377 377 377 377 377 377 377 377 - \e0 377 377
+0000220 377 377 377 377 377 377 377 377 377 377 377 377 377 377 377 377
+ *
+0000520 377 377 377 377 377 377 377 377 377 377 377 377 377 377 $ \e0
+0000540 377 377 377 377 377 377 377 377 377 377 377 377 377 377 * \e0
+0000560 377 377 377 377 377 377 377 377 377 377 377 377 377 377 377 377
+ *
+0001160 377 377 377 377 377 377 377 377 377 377 377 377 377 377 3 7
+0001200 | t t y 3 7 | A T & T m o d e
+0001220 l 3 7 t e l e t y p e \e0 \er \e0
+0001240 \en \e0 \en \e0 007 \e0 \eb \e0 033 8 \e0 033 9 \e0 033 7
+0001260 \e0 \e0
+0001261
+.fi
+.in -2
+.sp
.sp
.LP
-Commands whose behavior depends on the type of terminal should accept arguments
-of the form \fB-T\fR\fIterm\fR where \fIterm\fR is one of the names given
-above; if no such argument is present, such commands should obtain the terminal
-type from the environment variable \fBTERM\fR, which, in turn, should contain
-\fIterm\fR.
+Some limitations: total compiled entries cannot exceed 4096 bytes; all entries
+in the name field cannot exceed 128 bytes.
.SH FILES
.sp
.ne 2
@@ -200,9 +191,31 @@ type from the environment variable \fBTERM\fR, which, in turn, should contain
compiled terminal description database
.RE
+.sp
+.ne 2
+.na
+\fB\fB/usr/include/term.h\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBterminfo\fR header
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/xpg4/include/term.h\fR\fR
+.ad
+.sp .6
+.RS 4n
+X/Open Curses \fBterminfo\fR header
+.RE
+
.SH SEE ALSO
.sp
.LP
-\fBsh\fR(1), \fBstty\fR(1), \fBtabs\fR(1), \fBtput\fR(1), \fBvi\fR(1),
-\fBinfocmp\fR(1M), \fBcurses\fR(3CURSES), \fBprofile\fR(4), \fBterminfo\fR(4),
-\fBenviron\fR(5)
+.BR curses (3CURSES),
+.BR curses (3XCURSES),
+.BR terminfo (5),
+.BR term (7),
+.BR infocmp (8)
diff --git a/usr/src/man/man5/terminfo.5 b/usr/src/man/man5/terminfo.5
new file mode 100644
index 0000000000..99f74ee736
--- /dev/null
+++ b/usr/src/man/man5/terminfo.5
@@ -0,0 +1,2925 @@
+'\" te
+.\" Copyright 1989 AT&T
+.\" Copyright (c) 1996, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH TERMINFO 5 "June 20, 2021"
+.SH NAME
+terminfo \- terminal and printer capability database
+.SH SYNOPSIS
+.nf
+\fB/usr/share/lib/terminfo/?/*\fR
+.fi
+
+.SH DESCRIPTION
+The \fBterminfo\fR database describes the capabilities of devices such as
+terminals and printers. Devices are described in \fBterminfo\fR source files by
+specifying a set of capabilities, by quantifying certain aspects of the device,
+and by specifying character sequences that affect particular results. This
+database is often used by screen oriented applications such as \fBvi\fR and
+\fBcurses\fR-based programs, as well as by some system commands such as
+\fBls\fR and \fBmore\fR. This usage allows them to work with a variety of
+devices without changes to the programs.
+.sp
+.LP
+\fBterminfo\fR descriptions are located in the directory pointed to by the
+environment variable \fBTERMINFO\fR or in \fB/usr/share/lib/terminfo\fR.
+\fBterminfo\fR descriptions are generated by \fBtic\fR(8).
+.sp
+.LP
+\fBterminfo\fR source files consist of one or more device descriptions. Each
+description consists of a header (beginning in column 1) and one or more lines
+that list the features for that particular device. Every line in a
+\fBterminfo\fR source file must end in a comma (\fB,\fR). Every line in a
+\fBterminfo\fR source file except the header must be indented with one or more
+white spaces (either spaces or tabs).
+.sp
+.LP
+Entries in \fBterminfo\fR source files consist of a number of comma-separated
+fields. White space after each comma is ignored. Embedded commas must be
+escaped by using a backslash. Each device entry has the following format:
+.sp
+.in +2
+.nf
+\fBalias\fR1 | \fBalias\fR2 | .\|.\|. | \fBalias\fRn | \fIfullname\fR,
+ capability1, \fIcapability\fR2,
+ .
+ .
+ .
+ \fIcapability\fRn,
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The first line, commonly referred to as the header line, must begin in column
+one and must contain at least two aliases separated by vertical bars. The last
+field in the header line must be the long name of the device and it may
+contain any string. Alias names must be unique in the \fBterminfo\fR database
+and they must conform to system file naming conventions. See \fBtic\fR(8).
+They cannot, for example, contain white space or slashes.
+.sp
+.LP
+Every device must be assigned a name, such as "vt100". Device names (except the
+long name) should be chosen using the following conventions. The name should
+not contain hyphens because hyphens are reserved for use when adding suffixes
+that indicate special modes.
+.sp
+.LP
+These special modes may be modes that the hardware can be in, or user
+preferences. To assign a special mode to a particular device, append a suffix
+consisting of a hyphen and an indicator of the mode to the device name. For
+example, the \fB-w\fR suffix means "wide mode". When specified, it allows for a
+width of 132 columns instead of the standard 80 columns. Therefore, if you want
+to use a "vt100" device set to wide mode, name the device "vt100-w". Use the
+following suffixes where possible.
+.sp
+
+.sp
+.TS
+l l l l
+l l l l .
+ Suffix Meaning Example
+ \fB-w\fR Wide mode (more than 80 columns) \fB5410-w\fR
+ \fB-am\fR With auto. margins (usually default) \fBvt100-am\fR
+ \fB-nam\fR Without automatic margins \fBvt100-nam\fR
+ \fI-n\fR Number of lines on the screen \fB2300-40\fR
+ \fB-na\fR No arrow keys (leave them in local) \fBc100-na\fR
+ -\fIn\fRp Number of pages of memory \fBc100-4p\fR
+ \fB-rv\fR Reverse video \fB4415-rv\fR
+.TE
+
+.sp
+.LP
+The \fBterminfo\fR reference manual page is organized in two sections:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBPART 1: DEVICE CAPABILITIES\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBPART 2: PRINTER CAPABILITIES\fR
+.RE
+.SS "PART 1: DEVICE CAPABILITIES"
+Capabilities in \fBterminfo\fR are of three types: Boolean capabilities (which
+show that a device has or does not have a particular feature), numeric
+capabilities (which quantify particular features of a device), and string
+capabilities (which provide sequences that can be used to perform particular
+operations on devices).
+.sp
+.LP
+In the following table, a \fBVariable\fR is the name by which a \fBC\fR
+programmer accesses a capability (at the \fBterminfo\fR level). A \fBCapname\fR
+is the short name for a capability specified in the \fBterminfo\fR source file.
+It is used by a person updating the source file and by the \fBtput\fR command.
+A \fBTermcap Code\fR is a two-letter sequence that corresponds to the
+\fBtermcap\fR capability name. (Note that \fBtermcap\fR is no longer
+supported.)
+.sp
+.LP
+Capability names have no real length limit, but an informal limit of five
+characters has been adopted to keep them short. Whenever possible, capability
+names are chosen to be the same as or similar to those specified by the ANSI
+X3.64-1979 standard. Semantics are also intended to match those of the ANSI
+standard.
+.sp
+.LP
+All string capabilities listed below may have padding specified, with the
+exception of those used for input. Input capabilities, listed under the
+\fBStrings\fR section in the following tables, have names beginning with
+\fBkey_\fR. The \fB#i\fR symbol in the description field of the following
+tables refers to the \fIi\fRth parameter.
+.SS "Booleans"
+.in +2
+.nf
+________________________________________________________________
+ Cap- Termcap
+Variable name Code Description
+________________________________________________________________
+
+auto_left_margin bw bw cub1 wraps from column 0 to
+ last column
+auto_right_margin am am Terminal has automatic margins
+back_color_erase bce be Screen erased with background
+ color
+can_change ccc cc Terminal can re-define existing
+ color
+ceol_standout_glitch xhp xs Standout not erased by
+ overwriting (hp)
+col_addr_glitch xhpa YA Only positive motion
+ for hpa/mhpa caps
+cpi_changes_res cpix YF Changing character pitch
+ changes resolution
+cr_cancels_micro_mode crxm YB Using cr turns off micro mode
+dest_tabs_magic_smso xt xt Destructive tabs, magic
+ smso char (t1061)
+eat_newline_glitch xenl xn Newline ignored after
+ 80 columns (Concept)
+erase_overstrike eo eo Can erase overstrikes with a
+ blank
+generic_type gn gn Generic line type
+ (for example, dialup, switch)
+hard_copy hc hc Hardcopy terminal
+hard_cursor chts HC Cursor is hard to see
+has_meta_key km km Has a meta key (shift,
+ sets parity bit)
+has_print_wheel daisy YC Printer needs operator
+ to change character set
+has_status_line hs hs Has extra "status line"
+hue_lightness_saturation hls hl Terminal uses only HLS
+ color notation (Tektronix)
+insert_null_glitch in in Insert mode distinguishes nulls
+lpi_changes_res lpix YG Changing line pitch
+ changes resolution
+memory_above da da Display may be retained
+ above the screen
+memory_below db db Display may be retained
+ below the screen
+move_insert_mode mir mi Safe to move while in insert
+ mode
+move_standout_mode msgr ms Safe to move in standout modes
+needs_xon_xoff nxon nx Padding won't work,
+ xon/xoff required
+no_esc_ctlc xsb xb Beehive (f1=escape, f2=ctrl C)
+no_pad_char npc NP Pad character doesn't exist
+non_dest_scroll_region ndscr ND Scrolling region
+ is nondestructive
+non_rev_rmcup nrrmc NR smcup does not reverse rmcup
+over_strike os os Terminal overstrikes
+ on hard-copy terminal
+prtr_silent mc5i 5i Printer won't echo on screen
+row_addr_glitch xvpa YD Only positive motion
+ for vpa/mvpa caps
+semi_auto_right_margin sam YE Printing in last column causes
+ cr
+status_line_esc_ok eslok es Escape can be used on
+ the status line
+tilde_glitch hz hz Hazeltine; can't print tilde (~)
+transparent_underline ul ul Underline character overstrikes
+xon_xoff xon xo Terminal uses xon/xoff
+ handshaking
+.fi
+.in -2
+.sp
+
+.SS "Numbers"
+.in +2
+.nf
+________________________________________________________________
+ Cap- Termcap
+Variable name Code Description
+________________________________________________________________
+
+bit_image_entwining bitwin Yo Number of passes for each
+ bit-map row
+bit_image_type bitype Yp Type of bit image device
+buffer_capacity bufsz Ya Number of bytes buffered
+ before printing
+buttons btns BT Number of buttons on the mouse
+columns cols co Number of columns in a line
+dot_horz_spacing spinh Yc Spacing of dots horizontally
+ in dots per inch
+dot_vert_spacing spinv Yb Spacing of pins vertically
+ in pins per inch
+init_tabs it it Tabs initially every # spaces
+label_height lh lh Number of rows in each label
+label_width lw lw Number of columns in each label
+lines lines li Number of lines on a screen or
+ a page
+lines_of_memory lm lm Lines of memory if > lines;
+ 0 means varies
+max_attributes ma ma Maximum combined video attributes
+ terminal can display
+magic_cookie_glitch xmc sg Number of blank characters
+ left by smso or rmso
+max_colors colors Co Maximum number of colors
+ on the screen
+max_micro_address maddr Yd Maximum value in
+ micro_..._address
+max_micro_jump mjump Ye Maximum value in parm_..._micro
+max_pairs pairs pa Maximum number of
+ color-pairs on the screen
+maximum_windows Wnum MW Maximum number of definable windows
+micro_char_size mcs Yf Character step size when
+ in micro mode
+micro_line_size mls Yg Line step size when in micro mode
+no_color_video ncv NC Video attributes that
+ can't be used with colors
+num_labels nlab Nl Number of labels on screen
+number_of_pins npins Yh Number of pins in print-head
+output_res_char orc Yi Horizontal resolution in
+ units per character
+output_res_line orl Yj Vertical resolution in units per
+ line
+output_res_horz_inch orhi Yk Horizontal resolution in
+ units per inch
+output_res_vert_inch orvi Yl Vertical resolution in
+ units per inch
+padding_baud_rate pb pb Lowest baud rate
+print_rate cps Ym Print rate in characters per second
+ where padding needed
+virtual_terminal vt vt Virtual terminal number (system)
+wide_char_size widcs Yn Character step size when
+ in double wide mode
+width_status_line wsl ws Number of columns in status line
+.fi
+.in -2
+.sp
+
+.SS "Strings"
+.in +2
+.nf
+________________________________________________________________
+ Cap- Termcap
+Variable name Code Description
+________________________________________________________________
+
+acs_chars acsc ac Graphic charset pairs aAbBcC
+alt_scancode_esc scesa S8 Alternate escape for
+ scancode emulation
+ (default is for vt100)
+back_tab cbt bt Back tab
+bell bel bl Audible signal (bell)
+bit_image_carriage_return bicr Yv Move to beginning of
+ same row (use tparm)
+bit_image_newline binel Zz Move to next row of
+ the bit image (use tparm)
+bit_image_repeat birep Zy Repeat bit-image cell
+ #1 #2 times (use tparm)
+carriage_return cr cr Carriage return
+change_char_pitch cpi ZA Change number of
+ characters per inch
+change_line_pitch lpi ZB Change number of lines per inch
+change_res_horz chr ZC Change horizontal resolution
+change_res_vert cvr ZD Change vertical resolution
+change_scroll_region csr cs Change to lines #1
+ through #2 (vt100)
+char_padding rmp rP Like ip but when in replace
+ mode
+char_set_names csnm Zy List of character set names
+clear_all_tabs tbc ct Clear all tab stops
+clear_margins mgc MC Clear all margins
+ (top, bottom, and sides)
+clear_screen clear cl Clear screen and home cursor
+clr_bol el1 cb Clear to beginning of
+ line, inclusive
+clr_eol el ce Clear to end of line
+clr_eos ed cd Clear to end of display
+code_set_init csin ci Init sequence
+ for multiple codesets
+color_names colornm Yw Give name for color #1
+column_address hpa ch Horizontal position
+command_character cmdch CC Terminal settable cmd
+ character in prototype
+create_window cwin CW Define win #1 to go
+ from #2,#3to #4,#5
+cursor_address cup cm Move to row #1 col #2
+cursor_down cud1 do Down one line
+cursor_home home ho Home cursor (if no cup)
+cursor_invisible civis vi Make cursor invisible
+cursor_left cub1 le Move left one space.
+cursor_mem_address mrcup CM Memory relative cursor
+ addressing
+cursor_normal cnorm ve Make cursor appear
+ normal (undo vs/vi)
+cursor_right cuf1 nd Non-destructive space
+ (cursor or carriage right)
+cursor_to_ll ll ll Last line, first
+ column (if no cup)
+cursor_up cuu1 up Upline (cursor up)
+cursor_visible cvvis vs Make cursor very visible
+define_bit_image_region defbi Yx Define rectangular bit-
+ image region (use tparm)
+define_char defc ZE Define a character in
+ a character set
+delete_character dch1 dc Delete character
+delete_line dl1 dl Delete line
+device_type devt dv Indicate language/
+ codeset support
+dial_phone dial DI Dial phone number #1
+dis_status_line dsl ds Disable status line
+display_clock dclk DK Display time-of-day clock
+display_pc_char dispc S1 Display PC character
+down_half_line hd hd Half-line down (forward
+ 1/2 linefeed)
+ena_acs enacs eA Enable alternate character set
+end_bit_image_region endbi Yy End a bit-image region
+ (use tparm)
+enter_alt_charset_mode smacs as Start alternate character set
+enter_am_mode smam SA Turn on automatic margins
+enter_blink_mode blink mb Turn on blinking
+enter_bold_mode bold md Turn on bold (extra
+ bright) mode
+enter_ca_mode smcup ti String to begin programs
+ that use cup
+enter_delete_mode smdc dm Delete mode (enter)
+enter_dim_mode dim mh Turn on half-bright mode
+enter_doublewide_mode swidm ZF Enable double wide printing
+enter_draft_quality sdrfq ZG Set draft quality print mode
+enter_insert_mode smir im Insert mode (enter)
+enter_italics_mode sitm ZH Enable italics
+enter_leftward_mode slm ZI Enable leftward carriage
+ motion
+enter_micro_mode smicm ZJ Enable micro motion
+ capabilities
+enter_near_letter_quality snlq ZK Set near-letter quality print
+enter_normal_quality snrmq ZL Set normal quality
+enter_pc_charset_mode smpch S2 Enter PC character display mode
+enter_protected_mode prot mp Turn on protected mode
+enter_reverse_mode rev mr Turn on reverse video mode
+enter_scancode_mode smsc S4 Enter PC scancode mode
+enter_scancode_mode smsc S4 Enter PC scancode mode
+enter_secure_mode invis mk Turn on blank mode
+ (characters invisible)
+enter_shadow_mode sshm ZM Enable shadow printing
+enter_standout_mode smso so Begin standout mode
+enter_subscript_mode ssubm ZN Enable subscript printing
+enter_superscript_mode ssupm ZO Enable superscript printing
+enter_underline_mode smul us Start underscore mode
+enter_upward_mode sum ZP Enable upward carriage motion
+ mode
+enter_xon_mode smxon SX Turn on xon/xoff handshaking
+erase_chars ech ec Erase #1 characters
+exit_alt_charset_mode rmacs ae End alternate character set
+exit_am_mode rmam RA Turn off automatic margins
+exit_attribute_mode sgr0 me Turn off all attributes
+exit_ca_mode rmcup te String to end programs
+ that use cup
+exit_delete_mode rmdc ed End delete mode
+exit_doublewide_mode rwidm ZQ Disable double wide printing
+exit_insert_mode rmir ei End insert mode
+exit_italics_mode ritm ZR Disable italics
+exit_leftward_mode rlm ZS Enable rightward (normal)
+ carriage motion
+exit_micro_mode rmicm ZT Disable micro motion
+ capabilities
+exit_pc_charset_mode rmpch S3 Disable PC character
+ display mode
+exit_scancode_mode rmsc S5 Disable PC scancode mode
+exit_shadow_mode rshm ZU Disable shadow printing
+exit_standout_mode rmso se End standout mode
+exit_subscript_mode rsubm ZV Disable subscript printing
+exit_superscript_mode rsupm ZW Disable superscript printing
+exit_underline_mode rmul ue End underscore mode
+exit_upward_mode rum ZX Enable downward (normal)
+ carriage motion
+exit_xon_mode rmxon RX Turn off xon/xoff handshaking
+fixed_pause pause PA Pause for 2-3 seconds
+flash_hook hook fh Flash the switch hook
+flash_screen flash vb Visible bell (may
+ not move cursor)
+form_feed ff ff Hardcopy terminal page eject
+from_status_line fsl fs Return from status line
+get_mouse getm Gm Curses should get button events
+goto_window wingo WG Go to window #1
+hangup hup HU Hang-up phone
+init_1string is1 i1 Terminal or printer
+ initialization string
+init_2string is2 is Terminal or printer
+ initialization string
+init_3string is3 i3 Terminal or printer
+ initialization string
+init_file if if Name of initialization file
+init_prog iprog iP Path name of program
+ for initialization
+initialize_color initc Ic Initialize the
+ definition of color
+initialize_pair initp Ip Initialize color-pair
+insert_character ich1 ic Insert character
+insert_line il1 al Add new blank line
+insert_padding ip ip Insert pad after
+ character inserted
+.fi
+.in -2
+.sp
+
+.SS "key_Strings"
+The ``\fBkey_\fR'' strings are sent by specific keys. The ``\fBkey_\fR''
+descriptions include the macro, defined in \fB<curses.h>\fR, for the code
+returned by the \fBcurses\fR routine \fBgetch\fR when the key is pressed (see
+\fBcurs_getch\fR(3CURSES)).
+.sp
+.in +2
+.nf
+________________________________________________________________
+ Cap- Termcap
+Variable name Code Description
+________________________________________________________________
+
+key_a1 ka1 K1 KEY_A1, upper left of keypad
+key_a3 ka3 K3 KEY_A3, upper right of keypad
+key_b2 kb2 K2 KEY_B2, center of keypad
+key_backspace kbs kb KEY_BACKSPACE, sent by
+ backspace key
+key_beg kbeg @1 KEY_BEG, sent by beg(inning) key
+key_btab kcbt kB KEY_BTAB, sent by back-tab key
+key_c1 kc1 K4 KEY_C1, lower left of keypad
+key_c3 kc3 K5 KEY_C3, lower right of keypad
+key_cancel kcan @2 KEY_CANCEL, sent by cancel key
+key_catab ktbc ka KEY_CATAB, sent by
+ clear-all-tabs key
+key_clear kclr kC KEY_CLEAR, sent by
+ clear-screen or erase key
+key_close kclo @3 KEY_CLOSE, sent by close key
+key_command kcmd @4 KEY_COMMAND, sent by
+ cmd (command) key
+key_copy kcpy @5 KEY_COPY, sent by copy key
+key_create kcrt @6 KEY_CREATE, sent by create key
+key_ctab kctab kt KEY_CTAB, sent by clear-tab key
+key_dc kdch1 kD KEY_DC, sent by delete-character
+ key
+key_dl kdl1 kL KEY_DL, sent by delete-line key
+key_down kcud1 kd KEY_DOWN, sent by terminal
+ down-arrow key
+key_eic krmir kM KEY_EIC, sent by rmir or smir in
+ insert mode
+key_end kend @7 KEY_END, sent by end key
+key_enter kent @8 KEY_ENTER, sent by enter/send
+ key
+key_eol kel kE KEY_EOL, sent by
+ clear-to-end-of-line key
+key_eos ked kS KEY_EOS, sent by
+ clear-to-end-of-screen key
+key_exit kext @9 KEY_EXIT, sent by exit key
+key_f0 kf0 k0 KEY_F(0), sent by function key f0
+key_f1 kf1 k1 KEY_F(1), sent by function key f1
+key_f2 kf2 k2 KEY_F(2), sent by function key f2
+key_f3 kf3 k3 KEY_F(3), sent by function key f3
+key_fB kf4 k4 KEY_F(4), sent by function key fB
+key_f5 kf5 k5 KEY_F(5), sent by function key f5
+key_f6 kf6 k6 KEY_F(6), sent by function key f6
+key_f7 kf7 k7 KEY_F(7), sent by function key f7
+key_f8 kf8 k8 KEY_F(8), sent by function key f8
+key_f9 kf9 k9 KEY_F(9), sent by function key f9
+
+key_f10 kf10 k; KEY_F(10), sent by function key
+ f10
+key_f11 kf11 F1 KEY_F(11), sent by function key
+ f11
+key_f12 kf12 F2 KEY_F(12), sent by function key
+ f12
+key_f13 kf13 F3 KEY_F(13), sent by function key
+ f13
+key_f14 kf14 F4 KEY_F(14), sent by function key
+ f14
+key_f15 kf15 F5 KEY_F(15), sent by function key
+ f15
+key_f16 kf16 F6 KEY_F(16), sent by function key
+ f16
+key_f17 kf17 F7 KEY_F(17), sent by function key
+ f17
+key_f18 kf18 F8 KEY_F(18), sent by function key
+ f18
+key_f19 kf19 F9 KEY_F(19), sent by function key
+ f19
+key_f20 kf20 FA KEY_F(20), sent by function key
+ f20
+key_f21 kf21 FB KEY_F(21), sent by function key
+ f21
+key_f22 kf22 FC KEY_F(22), sent by function key
+ f22
+key_f23 kf23 FD KEY_F(23), sent by function key
+ f23
+key_f24 kf24 FE KEY_F(24), sent by function key
+ f24
+key_f25 kf25 FF KEY_F(25), sent by function key
+ f25
+key_f26 kf26 FG KEY_F(26), sent by function key
+ f26
+key_f27 kf27 FH KEY_F(27), sent by function key
+ f27
+key_f28 kf28 FI KEY_F(28), sent by function key
+ f28
+key_f29 kf29 FJ KEY_F(29), sent by function key
+ f29
+key_f30 kf30 FK KEY_F(30), sent by function key
+ f30
+key_f31 kf31 FL KEY_F(31), sent by function key
+ f31
+key_f32 kf32 FM KEY_F(32), sent by function key
+ f32
+key_f33 kf33 FN KEY_F(13), sent by function key
+ f13
+key_f34 kf34 FO KEY_F(34), sent by function key
+ f34
+key_f35 kf35 FP KEY_F(35), sent by function key
+ f35
+key_f36 kf36 FQ KEY_F(36), sent by function key
+ f36
+key_f37 kf37 FR KEY_F(37), sent by function key
+ f37
+key_f38 kf38 FS KEY_F(38), sent by function key
+ f38
+key_f39 kf39 FT KEY_F(39), sent by function key
+ f39
+key_fB0 kf40 FU KEY_F(40), sent by function key
+ fB0
+key_fB1 kf41 FV KEY_F(41), sent by function key
+ fB1
+key_fB2 kf42 FW KEY_F(42), sent by function key
+ fB2
+key_fB3 kf43 FX KEY_F(43), sent by function key
+ fB3
+key_fB4 kf44 FY KEY_F(44), sent by function key
+ fB4
+key_fB5 kf45 FZ KEY_F(45), sent by function key
+ fB5
+key_fB6 kf46 Fa KEY_F(46), sent by function key
+ fB6
+key_fB7 kf47 Fb KEY_F(47), sent by function key
+ fB7
+key_fB8 kf48 Fc KEY_F(48), sent by function key
+ fB8
+key_fB9 kf49 Fd KEY_F(49), sent by function key
+ fB9
+key_f50 kf50 Fe KEY_F(50), sent by function key
+ f50
+key_f51 kf51 Ff KEY_F(51), sent by function key
+ f51
+key_f52 kf52 Fg KEY_F(52), sent by function key
+ f52
+key_f53 kf53 Fh KEY_F(53), sent by function key
+ f53
+key_f54 kf54 Fi KEY_F(54), sent by function key
+ f54
+key_f55 kf55 Fj KEY_F(55), sent by function key
+ f55
+key_f56 kf56 Fk KEY_F(56), sent by function key
+ f56
+key_f57 kf57 Fl KEY_F(57), sent by function key
+ f57
+key_f58 kf58 Fm KEY_F(58), sent by function key
+ f58
+key_f59 kf59 Fn KEY_F(59), sent by function key
+ f59
+key_f60 kf60 Fo KEY_F(60), sent by function key
+ f60
+key_f61 kf61 Fp KEY_F(61), sent by function key
+ f61
+key_f62 kf62 Fq KEY_F(62), sent by function key
+ f62
+key_f63 kf63 Fr KEY_F(63), sent by function key
+ f63
+key_find kfnd @0 KEY_FIND, sent by find key
+key_help khlp %1 KEY_HELP, sent by help key
+key_home khome kh KEY_HOME, sent by home key
+key_ic kich1 kI KEY_IC, sent by ins-char/enter
+ ins-mode key
+key_il kil1 kA KEY_IL, sent by insert-line key
+key_left kcub1 kl KEY_LEFT, sent by
+ terminal left-arrow key
+key_ll kll kH KEY_LL, sent by home-down key
+key_mark kmrk %2 KEY_MARK, sent by
+key_message kmsg %3 KEY_MESSAGE, sent by message key
+key_mouse kmous Km 0631, Mouse event has occurred
+key_move kmov %4 KEY_MOVE, sent by move key
+key_next knxt %5 KEY_NEXT, sent by next-object
+ key
+key_npage knp kN KEY_NPAGE, sent by next-page
+ key
+key_open kopn %6 KEY_OPEN, sent by open key
+key_options kopt %7 KEY_OPTIONS, sent by options
+ key
+key_ppage kpp kP KEY_PPAGE, sent by
+ previous-page key
+key_previous kprv %8 KEY_PREVIOUS, sent by
+ previous-object key
+key_print kprt %9 KEY_PRINT, sent by
+ print or copy key
+key_redo krdo %0 KEY_REDO, sent by redo key
+key_reference kref &1 KEY_REFERENCE, sent by
+ reference key
+key_refresh krfr &2 KEY_REFRESH, sent by
+ refresh key
+key_replace krpl &3 KEY_REPLACE, sent by
+ replace key
+key_restart krst &4 KEY_RESTART, sent by
+ restart key
+key_resume kres &5 KEY_RESUME, sent by resume key
+key_right kcuf1 kr KEY_RIGHT, sent by terminal
+ right-arrow key
+key_save ksav &6 KEY_SAVE, sent by save key
+key_sbeg kBEG &9 KEY_SBEG, sent by
+ shifted beginning key
+key_scancel kCAN &0 KEY_SCANCEL, sent by
+ shifted cancel key
+key_scommand kCMD *1 KEY_SCOMMAND, sent by
+ shifted command key
+key_scopy kCPY *2 KEY_SCOPY, sent by
+ shifted copy key
+key_screate kCRT *3 KEY_SCREATE, sent by
+ shifted create key
+key_sdc kDC *4 KEY_SDC, sent by
+ shifted delete-char key
+key_sdl kDL *5 KEY_SDL, sent by
+ shifted delete-line key
+key_select kslt *6 KEY_SELECT, sent by
+ select key
+key_send kEND *7 KEY_SEND, sent by
+ shifted end key
+key_seol kEOL *8 KEY_SEOL, sent by
+ shifted clear-line key
+key_sexit kEXT *9 KEY_SEXIT, sent by
+ shifted exit key
+key_sf kind kF KEY_SF, sent by
+ scroll-forward/down key
+key_sfind kFND *0 KEY_SFIND, sent by
+ shifted find key
+key_shelp kHLP #1 KEY_SHELP, sent by
+ shifted help key
+key_shome kHOM #2 KEY_SHOME, sent by
+ shifted home key
+key_sic kIC #3 KEY_SIC, sent by
+ shifted input key
+key_sleft kLFT #4 KEY_SLEFT, sent by
+ shifted left-arrow key
+key_smessage kMSG %a KEY_SMESSAGE, sent by
+ shifted message key
+key_smove kMOV %b KEY_SMOVE, sent by
+ shifted move key
+key_snext kNXT %c KEY_SNEXT, sent by
+ shifted next key
+key_soptions kOPT %d KEY_SOPTIONS, sent by
+ shifted options key
+key_sprevious kPRV %e KEY_SPREVIOUS, sent by
+ shifted prev key
+key_sprint kPRT %f KEY_SPRINT, sent by
+ shifted print key
+key_sr kri kR KEY_SR, sent by
+ scroll-backward/up key
+key_sredo kRDO %g KEY_SREDO, sent by
+ shifted redo key
+key_sreplace kRPL %h KEY_SREPLACE, sent by
+ shifted replace key
+key_sright kRIT %i KEY_SRIGHT, sent by shifted
+ right-arrow key
+key_srsume kRES %j KEY_SRSUME, sent by
+ shifted resume key
+key_ssave kSAV !1 KEY_SSAVE, sent by
+ shifted save key
+key_ssuspend kSPD !2 KEY_SSUSPEND, sent by
+ shifted suspend key
+key_stab khts kT KEY_STAB, sent by
+ set-tab key
+key_sundo kUND !3 KEY_SUNDO, sent by
+ shifted undo key
+key_suspend kspd &7 KEY_SUSPEND, sent by
+ suspend key
+key_undo kund &8 KEY_UNDO, sent by undo key
+key_up kcuu1 ku KEY_UP, sent by
+ terminal up-arrow key
+keypad_local rmkx ke Out of
+ ``keypad-transmit'' mode
+keypad_xmit smkx ks Put terminal in
+ ``keypad-transmit'' mode
+lab_f0 lf0 l0 Labels on function key
+ f0 if not f0
+lab_f1 lf1 l1 Labels on function key
+ f1 if not f1
+lab_f2 lf2 l2 Labels on function key
+ f2 if not f2
+lab_f3 lf3 l3 Labels on function key
+ f3 if not f3
+lab_fB lfB l4 Labels on function key
+ fB if not fB
+lab_f5 lf5 l5 Labels on function key
+ f5 if not f5
+lab_f6 lf6 l6 Labels on function key
+ f6 if not f6
+lab_f7 lf7 l7 Labels on function key
+ f7 if not f7
+lab_f8 lf8 l8 Labels on function key
+ f8 if not f8
+lab_f9 lf9 l9 Labels on function key
+ f9 if not f9
+lab_f10 lf10 la Labels on function key
+ f10 if not f10
+label_format fln Lf Label format
+label_off rmln LF Turn off soft labels
+label_on smln LO Turn on soft labels
+meta_off rmm mo Turn off "meta mode"
+meta_on smm mm Turn on "meta mode" (8th bit)
+micro_column_address mhpa ZY Like column_address
+ for micro adjustment
+micro_down mcud1 ZZ Like cursor_down
+ for micro adjustment
+micro_left mcub1 Za Like cursor_left
+ for micro adjustment
+micro_right mcuf1 Zb Like cursor_right
+ for micro adjustment
+micro_row_address mvpa Zc Like row_address
+ for micro adjustment
+micro_up mcuu1 Zd Like cursor_up
+ for micro adjustment
+mouse_info minfo Mi Mouse status information
+newline nel nw Newline (behaves like
+ cr followed by lf)
+order_of_pins porder Ze Matches software bits
+ to print-head pins
+orig_colors oc oc Set all color(-pair)s
+ to the original ones
+orig_pair op op Set default color-pair
+ to the original one
+pad_char pad pc Pad character (rather than null)
+parm_dch dch DC Delete #1 chars
+parm_delete_line dl DL Delete #1 lines
+parm_down_cursor cud DO Move down #1 lines
+parm_down_micro mcud Zf Like parm_down_cursor
+ for micro adjust
+parm_ich ich IC Insert #1 blank chars
+parm_index indn SF Scroll forward #1 lines
+parm_insert_line il AL Add #1 new blank lines
+parm_left_cursor cub LE Move cursor left #1 spaces
+parm_left_micro mcub Zg Like parm_left_cursor
+ for micro adjust
+parm_right_cursor cuf RI Move right #1 spaces
+parm_right_micro mcuf Zh Like parm_right_cursor
+ for micro adjust
+parm_rindex rin SR Scroll backward #1 lines
+parm_up_cursor cuu UP Move cursor up #1 lines
+parm_up_micro mcuu Zi Like parm_up_cursor
+ for micro adjust
+pc_term_options pctrm S6 PC terminal options
+pkey_key pfkey pk Prog funct key #1 to
+ type string #2
+pkey_local pfloc pl Prog funct key #1 to
+ execute string #2
+pkey_plab pfxl xl Prog key #1 to xmit
+ string #2 and show string #3
+pkey_xmit pfx px Prog funct key #1 to
+ xmit string #2
+plab_norm pln pn Prog label #1 to show
+ string #2
+print_screen mc0 ps Print contents of the screen
+prtr_non mc5p pO Turn on the printer for #1 bytes
+prtr_off mc4 pf Turn off the printer
+prtr_on mc5 po Turn on the printer
+pulse pulse PU Select pulse dialing
+quick_dial qdial QD Dial phone number #1, without
+ progress detection
+remove_clock rmclk RC Remove time-of-day clock
+repeat_char rep rp Repeat char #1 #2 times
+req_for_input rfi RF Send next input char (for ptys)
+req_mouse_pos reqmp RQ Request mouse position report
+reset_1string rs1 r1 Reset terminal completely to
+ sane modes
+reset_2string rs2 r2 Reset terminal completely to
+ sane modes
+reset_3string rs3 r3 Reset terminal completely to
+ sane modes
+reset_file rf rf Name of file containing
+ reset string
+restore_cursor rc rc Restore cursor to
+ position of last sc
+row_address vpa cv Vertical position absolute
+save_cursor sc sc Save cursor position
+scancode_escape scesc S7 Escape for scancode emulation
+scroll_forward ind sf Scroll text up
+scroll_reverse ri sr Scroll text down
+select_char_set scs Zj Select character set
+set0_des_seq s0ds s0 Shift into codeset 0
+ (EUC set 0, ASCII)
+set1_des_seq s1ds s1 Shift into codeset 1
+set2_des_seq s2ds s2 Shift into codeset 2
+set3_des_seq s3ds s3 Shift into codeset 3
+ attributes #1-#6
+set_a_background setab AB Set background color
+ using ANSI escape
+set_a_foreground setaf AF Set foreground color
+ using ANSI escape
+set_attributes sgr sa Define the video
+ attributes #1-#9
+set_background setb Sb Set current background color
+set_bottom_margin smgb Zk Set bottom margin at
+ current line
+set_bottom_margin_parm smgbp Zl Set bottom margin at
+ line #1 or #2
+ lines from bottom
+set_clock sclk SC Set time-of-day clock
+set_color_band setcolor YzChange to ribbon color #1
+set_color_pair scp sp Set current color-pair
+set_foreground setf Sf Set current foreground color1
+set_left_margin smgl ML Set left margin at current line
+set_left_margin_parm smglp Zm Set left (right) margin
+ at column #1 (#2)
+set_lr_margin smglr ML Sets both left and right margins
+set_page_length slines YZ Set page length to #1 lines
+ (use tparm) of an inch
+set_right_margin smgr MR Set right margin at
+ current column
+set_right_margin_parm smgrp Zn Set right margin at column #1
+set_tab hts st Set a tab in all rows,
+ current column
+set_tb_margin smgtb MT Sets both top and bottom margins
+set_top_margin smgt Zo Set top margin at current line
+set_top_margin_parm smgtp Zp Set top (bottom) margin
+ at line #1 (#2)
+set_window wind wi Current window is lines
+ #1-#2 cols #3-#4
+start_bit_image sbim Zq Start printing bit image graphics
+start_char_set_def scsd Zr Start definition of a character
+ set
+stop_bit_image rbim Zs End printing bit image graphics
+stop_char_set_def rcsd Zt End definition of a character set
+subscript_characters subcs Zu List of ``subscript-able''
+ characters
+superscript_characters supcs Zv List of ``superscript-able''
+ characters
+tab ht ta Tab to next 8-space hardware tab
+ stop
+these_cause_cr docr Zw Printing any of these
+ chars causes cr
+to_status_line tsl ts Go to status line, col #1
+tone tone TO Select touch tone dialing
+user0 u0 u0 User string 0
+user1 u1 u1 User string 1
+user2 u2 u2 User string 2
+user3 u3 u3 User string 3
+user4 u4 u4 User string 4
+user5 u5 u5 User string 5
+user6 u6 u6 User string 6
+user7 u7 u7 User string 7
+user8 u8 u8 User string 8
+user9 u9 u9 User string 9
+underline_char uc uc Underscore one char
+ and move past it
+up_half_line hu hu Half-line up (reverse
+ 1/2 linefeed)
+wait_tone wait WA Wait for dial tone
+xoff_character xoffc XF X-off character
+xon_character xonc XN X-on character
+zero_motion zerom Zx No motion for the
+ subsequent character
+.fi
+.in -2
+.sp
+
+.SS "Sample Entry"
+The following entry, which describes the AT&T 610 terminal, is among the more
+complex entries in the \fBterminfo\fR file as of this writing.
+.sp
+.in +2
+.nf
+610|610bct|ATT610|att610|AT&T610;80column;98key keyboard
+ am, eslok, hs, mir, msgr, xenl, xon,
+ cols#80, it#8, lh#2, lines#24, lw#8, nlab#8, wsl#80,
+ acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
+ bel=^G, blink=\eE[5m, bold=\eE[1m, cbt=\eE[Z,
+ civis=\eE[?25l, clear=\eE[H\eE[J, cnorm=\eE[?25h\eE[?12l,
+ cr=\er, csr=\eE[%i%p1%d;%p2%dr, cub=\eE[%p1%dD, cub1=\eb,
+ cud=\eE[%p1%dB, cud1=\eE[B, cuf=\eE[%p1%dC, cuf1=\eE[C,
+ cup=\eE[%i%p1%d;%p2%dH, cuu=\eE[%p1%dA, cuu1=\eE[A,
+ cvvis=\eE[?12;25h, dch=\eE[%p1%dP, dch1=\eE[P, dim=\eE[2m,
+ dl=\eE[%p1%dM, dl1=\eE[M, ed=\eE[J, el=\eE[K, el1=\eE[1K,
+ flash=\eE[?5h$<200>\eE[?5l, fsl=\eE8, home=\eE[H, ht=\et,
+ ich=\eE[%p1%d@, il=\eE[%p1%dL, il1=\eE[L, ind=\eED, .ind=\eED$<9>,
+ invis=\eE[8m,
+ is1=\eE[8;0 | \eE[?3;4;5;13;15l\eE[13;20l\eE[?7h\eE[12h\eE(B\eE)0,
+ is2=\eE[0m^O, is3=\eE(B\eE)0, kLFT=\eE[\es@, kRIT=\eE[\esA,
+ kbs=^H, kcbt=\eE[Z, kclr=\eE[2J, kcub1=\eE[D, kcud1=\eE[B,
+ kcuf1=\eE[C, kcuu1=\eE[A, kf1=\eEOc, kf10=\eENp,
+ kf11=\eENq, kf12=\eENr, kf13=\eENs, kf14=\eENt, kf2=\eEOd,
+ kf3=\eEOe, kf4=\eEOf, kf5=\eEOg, kf6=\eEOh, kf7=\eEOi,
+ kf8=\eEOj, kf9=\eENo, khome=\eE[H, kind=\eE[S, kri=\eE[T,
+ ll=\eE[24H, mc4=\eE[?4i, mc5=\eE[?5i, nel=\eEE,
+ pfxl=\eE[%p1%d;%p2%l%02dq%?%p1%{9}%<%t\es\es\esF%p1%1d\es\es\es\es\es
+\es\es\es\es\es\es%%p2%s,
+ pln=\eE[%p1%d;0;0;0q%p2%:-16.16s, rc=\eE8, rev=\eE[7m,
+ ri=\eEM, rmacs=^O, rmir=\eE[4l, rmln=\eE[2p, rmso=\eE[m,
+ rmul=\eE[m, rs2=\eEc\eE[?3l, sc=\eE7,
+ sgr=\eE[0%?%p6%t;1%%?%p5%t;2%%?%p2%t;4%%?%p4%t;5%
+%?%p3%p1% | %t;7%%?%p7%t;8%m%?%p9%t^N%e^O%,
+ sgr0=\eE[m^O, smacs=^N, smir=\eE[4h, smln=\eE[p,
+ smso=\eE[7m, smul=\eE[4m, tsl=\eE7\eE[25;%i%p1%dx,
+.fi
+.in -2
+
+.SS "Types of Capabilities in the Sample Entry"
+The sample entry shows the formats for the three types of \fBterminfo\fR
+capabilities listed: Boolean, numeric, and string. All capabilities specified
+in the \fBterminfo\fR source file must be followed by commas, including the
+last capability in the source file. In \fBterminfo\fR source files,
+capabilities are referenced by their capability names (as shown in the previous
+tables).
+.sp
+.LP
+Boolean capabilities are specified simply by their comma separated cap names.
+.sp
+.LP
+Numeric capabilities are followed by the character `#' and then a positive
+integer value. Thus, in the sample, \fBcols\fR (which shows the number of
+columns available on a device) is assigned the value \fB80\fR for the AT&T 610.
+(Values for numeric capabilities may be specified in decimal, octal, or
+hexadecimal, using normal C programming language conventions.)
+.sp
+.LP
+Finally, string-valued capabilities such as \fBel\fR (clear to end of line
+sequence) are listed by a two- to five-character capname, an `=', and a string
+ended by the next occurrence of a comma. A delay in milliseconds may appear
+anywhere in such a capability, preceded by \fB$\fR and enclosed in angle
+brackets, as in \fBel=\eEK$<3>\fR. Padding characters are supplied by
+\fBtput\fR. The delay can be any of the following: a number, a number followed
+by an asterisk, such as \fB5*\fR, a number followed by a slash, such as
+\fB5/\fR, or a number followed by both, such as \fB5*/\fR. A `\fB*\fR\fB\&'\fR
+shows that the padding required is proportional to the number of lines affected
+by the operation, and the amount given is the per-affected-unit padding
+required. (In the case of insert characters, the factor is still the number of
+lines affected. This is always 1 unless the device has \fBin\fR and the
+software uses it.) When a `\fB*\fR\fB\&'\fR is specified, it is sometimes
+useful to give a delay of the form \fB3.5\fR to specify a delay per unit to
+tenths of milliseconds. (Only one decimal place is allowed.)
+.sp
+.LP
+A `/' indicates that the padding is mandatory. If a device has \fBxon\fR
+defined, the padding information is advisory and will only be used for cost
+estimates or when the device is in raw mode. Mandatory padding will be
+transmitted regardless of the setting of \fBxon\fR. If padding (whether
+advisory or mandatory) is specified for \fBbel\fR or \fBflash\fR, however, it
+will always be used, regardless of whether \fBxon\fR is specified.
+.sp
+.LP
+\fBterminfo\fR offers notation for encoding special characters. Both \fB\eE\fR
+and \fB\ee\fR map to an ESCAPE character, \fI^x\fR maps to a control \fIx\fR
+for any appropriate \fIx\fR, and the sequences \fB\en, \el, \er, \et, \eb,
+\ef\fR, and \fB\es\fR give a newline, linefeed, return, tab, backspace,
+formfeed, and space, respectively. Other escapes include: \fB\e^\fR for caret
+(^); \fB\e\e\fR for backslash (\e); \fB\e\fR, for comma (,); \fB\e:\fR for
+colon (:); and \fB\e0\fR for null. (\fB\e0\fR will actually produce
+\fB\e200\fR, which does not terminate a string but behaves as a null character
+on most devices, providing CS7 is specified. (See \fBstty\fR(1)). Finally,
+characters may be given as three octal digits after a backslash (for example,
+\e123).
+.sp
+.LP
+Sometimes individual capabilities must be commented out. To do this, put a
+period before the capability name. For example, see the second \fBind\fR in the
+example above. Note that capabilities are defined in a left-to-right order and,
+therefore, a prior definition will override a later definition.
+.SS "Preparing Descriptions"
+The most effective way to prepare a device description is by imitating the
+description of a similar device in \fBterminfo\fR and building up a description
+gradually, using partial descriptions with \fBvi\fR to check that they are
+correct. Be aware that a very unusual device may expose deficiencies in the
+ability of the \fBterminfo\fR file to describe it or the inability of \fBvi\fR
+to work with that device. To test a new device description, set the environment
+variable \fBTERMINFO\fR to the pathname of a directory containing the compiled
+description you are working on and programs will look there rather than in
+\fB/usr/share/lib/terminfo\fR. To get the padding for insert-line correct (if
+the device manufacturer did not document it) a severe test is to comment out
+\fBxon\fR, edit a large file at 9600 baud with \fBvi\fR, delete 16 or so lines
+from the middle of the screen, and then press the \fBu\fR key several times
+quickly. If the display is corrupted, more padding is usually needed. A similar
+test can be used for insert-character.
+.SS "Section 1-1: Basic Capabilities"
+The number of columns on each line for the device is given by the \fBcols\fR
+numeric capability. If the device has a screen, then the number of lines on the
+screen is given by the \fBlines\fR capability. If the device wraps around to
+the beginning of the next line when it reaches the right margin, then it should
+have the \fBam\fR capability. If the terminal can clear its screen, leaving the
+cursor in the home position, then this is given by the \fBclear\fR string
+capability. If the terminal overstrikes (rather than clearing a position when a
+character is struck over) then it should have the \fBos\fR capability. If the
+device is a printing terminal, with no soft copy unit, specify both \fBhc\fR
+and \fBos\fR. If there is a way to move the cursor to the left edge of the
+current row, specify this as \fBcr\fR. (Normally this will be carriage return,
+control M.) If there is a way to produce an audible signal (such as a bell or a
+beep), specify it as \fBbel\fR. If, like most devices, the device uses the
+xon-xoff flow-control protocol, specify \fBxon\fR.
+.sp
+.LP
+If there is a way to move the cursor one position to the left (such as
+backspace), that capability should be given as \fBcub1\fR. Similarly, sequences
+to move to the right, up, and down should be given as \fBcuf1\fR, \fBcuu1\fR,
+and \fBcud1\fR, respectively. These local cursor motions must not alter the
+text they pass over; for example, you would not normally use ``\fBcuf1\fR=\es''
+because the space would erase the character moved over.
+.sp
+.LP
+A very important point here is that the local cursor motions encoded in
+\fBterminfo\fR are undefined at the left and top edges of a screen terminal.
+Programs should never attempt to backspace around the left edge, unless
+\fBbw\fR is specified, and should never attempt to go up locally off the top.
+To scroll text up, a program goes to the bottom left corner of the screen and
+sends the \fBind\fR (index) string.
+.sp
+.LP
+To scroll text down, a program goes to the top left corner of the screen and
+sends the \fBri\fR (reverse index) string. The strings \fBind\fR and \fBri\fR
+are undefined when not on their respective corners of the screen.
+.sp
+.LP
+Parameterized versions of the scrolling sequences are \fBindn\fR and \fBrin\fR.
+These versions have the same semantics as \fBind\fR and \fBri\fR, except that
+they take one parameter and scroll the number of lines specified by that
+parameter. They are also undefined except at the appropriate edge of the
+screen.
+.sp
+.LP
+The \fBam\fR capability tells whether the cursor sticks at the right edge of
+the screen when text is output, but this does not necessarily apply to a
+\fBcuf1\fR from the last column. Backward motion from the left edge of the
+screen is possible only when \fBbw\fR is specified. In this case, \fBcub1\fR
+will move to the right edge of the previous row. If \fBbw\fR is not given, the
+effect is undefined. This is useful for drawing a box around the edge of the
+screen, for example. If the device has switch selectable automatic margins,
+\fBam\fR should be specified in the \fBterminfo\fR source file. In this case,
+initialization strings should turn on this option, if possible. If the device
+has a command that moves to the first column of the next line, that command can
+be given as \fBnel\fR (newline). It does not matter if the command clears the
+remainder of the current line, so if the device has no \fBcr\fR and \fBlf\fR it
+may still be possible to craft a working \fBnel\fR out of one or both of them.
+.sp
+.LP
+These capabilities suffice to describe hardcopy and screen terminals. Thus the
+AT&T 5320 hardcopy terminal is described as follows:
+.sp
+.in +2
+.nf
+5320|att5320|AT&T 5320 hardcopy terminal,
+ am, hc, os,
+ cols#132,
+ bel=^G, cr=\er, cub1=\eb, cnd1=\en,
+ dch1=\eE[P, dl1=\eE[M,
+ ind=\en,
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+while the Lear Siegler ADM\(mi3 is described as
+.sp
+.in +2
+.nf
+adm3 | lsi adm3,
+ am, bel=^G, clear=^Z, cols#80, cr=^M, cub1=^H,
+ cud1=^J, ind=^J, lines#24,
+.fi
+.in -2
+.sp
+
+.SS "Section 1-2: Parameterized Strings"
+Cursor addressing and other strings requiring parameters are described by a
+parameterized string capability, with \fBprintf\fR-like escapes
+(\fB%\fR\fIx\fR) in it. For example, to address the cursor, the \fBcup\fR
+capability is given, using two parameters: the row and column to address to.
+(Rows and columns are numbered from zero and refer to the physical screen
+visible to the user, not to any unseen memory.) If the terminal has memory
+relative cursor addressing, that can be indicated by \fBmrcup\fR.
+.sp
+.LP
+The parameter mechanism uses a stack and special \fB%\fR codes to manipulate
+the stack in the manner of Reverse Polish Notation (postfix). Typically a
+sequence will push one of the parameters onto the stack and then print it in
+some format. Often more complex operations are necessary. Operations are in
+postfix form with the operands in the usual order. That is, to subtract 5 from
+the first parameter, one would use \fB%p1%{5}%\(mi\fR.
+.sp
+.LP
+The \fB%\fR encodings have the following meanings:
+.sp
+.ne 2
+.na
+\fB\fB%%\fR\fR
+.ad
+.sp .6
+.RS 4n
+outputs `%'
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB%[[:]\fR\fIflags\fR][\fIwidth\fR[\fI\&.precision\fR]][\fBdoxXs\fR]\fR
+.ad
+.sp .6
+.RS 4n
+as in \fBprintf\fR, flags are \fB[\(mi+#]\fR and space
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB%c\fR\fR
+.ad
+.sp .6
+.RS 4n
+print pop gives %c
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB%p[1-9]\fR\fR
+.ad
+.sp .6
+.RS 4n
+push \fIi\fRth parm
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB%P[a-z]\fR\fR
+.ad
+.sp .6
+.RS 4n
+set dynamic variable [a-z] to pop
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB%g[a-z]\fR\fR
+.ad
+.sp .6
+.RS 4n
+get dynamic variable [a-z] and push it
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB%P[A-Z]\fR\fR
+.ad
+.sp .6
+.RS 4n
+set static variable [a-z] to pop
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB%g[A-Z]\fR\fR
+.ad
+.sp .6
+.RS 4n
+get static variable [a-z] and push it
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB%'\fR\fIc\fR'\fR
+.ad
+.sp .6
+.RS 4n
+push char constant \fIc\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB%{\fR\fInn\fR}\fR
+.ad
+.sp .6
+.RS 4n
+push decimal constant \fInn\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB%l\fR\fR
+.ad
+.sp .6
+.RS 4n
+push strlen(pop)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB%+ %\(mi %* %/ %m\fR\fR
+.ad
+.sp .6
+.RS 4n
+arithmetic (\fB%m\fR is mod): push(pop integer2 op pop integer1)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB%& %| %^\fR\fR
+.ad
+.sp .6
+.RS 4n
+bit operations: push(pop integer2 op pop integer1)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB%= %> %<\fR\fR
+.ad
+.sp .6
+.RS 4n
+logical operations: push(pop integer2 op pop integer1)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB%A %O\fR\fR
+.ad
+.sp .6
+.RS 4n
+logical operations: and, or
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB%! %~\fR\fR
+.ad
+.sp .6
+.RS 4n
+unary operations: push(op pop)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB%i\fR\fR
+.ad
+.sp .6
+.RS 4n
+(for ANSI terminals) add 1 to first parm, if one parm present, or first two
+parms, if more than one parm present
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB%?\fR \fBexpr\fR %t \fIthenpart\fR %e \fIelsepart\fR %\fR
+.ad
+.sp .6
+.RS 4n
+if-then-else, \fB%e\fR \fIelsepart\fR is optional; else-if's are possible ala
+Algol 68: \fB%? c\fR(1) %t b(1) %e c(2) %t b(2) %e c(3) %t b(3) %e c(4) %t b(4)
+%e b(5)% c(\fIi\fR) are conditions, b(\fIi\fR) are bodies.
+.RE
+
+.sp
+.LP
+If the ``\fB\(mi\fR\&'' flag is used with ``\fB%\fR[doxXs]'', then a colon
+(\fB:\fR) must be placed between the ``\fB%\fR'' and the ``\fB\(mi\fR\&'' to
+differentiate the flag from the binary ``\fB%\(mi\fR'' operator, for example
+``\fB%:\(mi16.16s\fR''.
+.sp
+.LP
+Consider the Hewlett-Packard 2645, which, to get to row 3 and column 12, needs
+to be sent \fB\eE&a12c03Y\fR padded for 6 milliseconds. Note that the order of
+the rows and columns is inverted here, and that the row and column are
+zero-padded as two digits. Thus its \fBcup\fR capability is:
+\fBcup=\eE&a%p2%2.2dc%p1%2.2dY$<6>\fR
+.sp
+.LP
+The Micro-Term ACT-IV needs the current row and column sent preceded by a
+\fB^T\fR, with the row and column simply encoded in binary,
+``\fBcup=^T%p1%c%p2%c\fR''. Devices that use ``\fB%c\fR'' need to be able to
+backspace the cursor (\fBcub1\fR), and to move the cursor up one line on the
+screen (\fBcuu1\fR). This is necessary because it is not always safe to
+transmit \fB\en\fR, \fB^D\fR, and \fB\er\fR, as the system may change or
+discard them. (The library routines dealing with \fBterminfo\fR set tty modes
+so that tabs are never expanded, so \fB\et\fR is safe to send. This turns out
+to be essential for the Ann Arbor 4080.)
+.sp
+.LP
+A final example is the LSI ADM-3a, which uses row and column offset by a blank
+character, thus ``\fBcup=\eE=%p1%'\es'%+%c%p2%'\es'%+%c\fR''. After sending
+``\fB\eE=\fR\&'', this pushes the first parameter, pushes the ASCII value for a
+space (32), adds them (pushing the sum on the stack in place of the two
+previous values), and outputs that value as a character. Then the same is done
+for the second parameter. More complex arithmetic is possible using the stack.
+.SS "Section 1-3: Cursor Motions"
+If the terminal has a fast way to home the cursor (to very upper left corner of
+screen) then this can be given as \fBhome\fR; similarly a fast way of getting
+to the lower left-hand corner can be given as \fBll\fR; this may involve going
+up with \fBcuu1\fR from the home position, but a program should never do this
+itself (unless \fBll\fR does) because it can make no assumption about the
+effect of moving up from the home position. Note that the home position is the
+same as addressing to (0,0): to the top left corner of the screen, not of
+memory. (Thus, the \fB\eEH\fR sequence on Hewlett-Packard terminals cannot be
+used for \fBhome\fR without losing some of the other features on the terminal.)
+.sp
+.LP
+If the device has row or column absolute-cursor addressing, these can be given
+as single parameter capabilities \fBhpa\fR (horizontal position absolute) and
+\fBvpa\fR (vertical position absolute). Sometimes these are shorter than the
+more general two-parameter sequence (as with the Hewlett-Packard 2645) and can
+be used in preference to \fBcup\fR. If there are parameterized local motions
+(for example, move \fIn\fR spaces to the right) these can be given as
+\fBcud\fR, \fBcub\fR, \fBcuf\fR, and \fBcuu\fR with a single parameter
+indicating how many spaces to move. These are primarily useful if the device
+does not have \fBcup\fR, such as the Tektronix 4025.
+.sp
+.LP
+If the device needs to be in a special mode when running a program that uses
+these capabilities, the codes to enter and exit this mode can be given as
+\fBsmcup\fR and \fBrmcup\fR. This arises, for example, from terminals, such as
+the Concept, with more than one page of memory. If the device has only memory
+relative cursor addressing and not screen relative cursor addressing, a one
+screen-sized window must be fixed into the device for cursor addressing to work
+properly. This is also used for the Tektronix 4025, where \fBsmcup\fR sets the
+command character to be the one used by \fBterminfo\fR. If the \fBsmcup\fR
+sequence will not restore the screen after an \fBrmcup\fR sequence is output
+(to the state prior to outputting \fBrmcup\fR), specify \fBnrrmc\fR.
+.SS "Section 1-4: Area Clears"
+If the terminal can clear from the current position to the end of the line,
+leaving the cursor where it is, this should be given as \fBel\fR. If the
+terminal can clear from the beginning of the line to the current position
+inclusive, leaving the cursor where it is, this should be given as \fBel1\fR.
+If the terminal can clear from the current position to the end of the display,
+then this should be given as \fBed\fR. \fBed\fR is only defined from the first
+column of a line. (Thus, it can be simulated by a request to delete a large
+number of lines, if a true \fBed\fR is not available.)
+.SS "Section 1-5: Insert/Delete Line"
+If the terminal can open a new blank line before the line where the cursor is,
+this should be given as \fBil1\fR; this is done only from the first position of
+a line. The cursor must then appear on the newly blank line. If the terminal
+can delete the line which the cursor is on, then this should be given as
+\fBdl1\fR; this is done only from the first position on the line to be deleted.
+Versions of \fBil1\fR and \fBdl1\fR which take a single parameter and insert or
+delete that many lines can be given as \fBil\fR and \fBdl\fR.
+.sp
+.LP
+If the terminal has a settable destructive scrolling region (like the VT100)
+the command to set this can be described with the \fBcsr\fR capability, which
+takes two parameters: the top and bottom lines of the scrolling region. The
+cursor position is, alas, undefined after using this command. It is possible to
+get the effect of insert or delete line using this command \(em the \fBsc\fR
+and \fBrc\fR (save and restore cursor) commands are also useful. Inserting
+lines at the top or bottom of the screen can also be done using \fBri\fR or
+\fBind\fR on many terminals without a true insert/delete line, and is often
+faster even on terminals with those features.
+.sp
+.LP
+To determine whether a terminal has destructive scrolling regions or
+non-destructive scrolling regions, create a scrolling region in the middle of
+the screen, place data on the bottom line of the scrolling region, move the
+cursor to the top line of the scrolling region, and do a reverse index
+(\fBri\fR) followed by a delete line (\fBdl1\fR) or index (\fBind\fR). If the
+data that was originally on the bottom line of the scrolling region was
+restored into the scrolling region by the \fBdl1\fR or \fBind\fR, then the
+terminal has non-destructive scrolling regions. Otherwise, it has destructive
+scrolling regions. Do not specify \fBcsr\fR if the terminal has non-destructive
+scrolling regions, unless \fBind\fR, \fBri\fR, \fBindn\fR, \fBrin\fR, \fBdl\fR,
+and \fBdl1\fR all simulate destructive scrolling.
+.sp
+.LP
+If the terminal has the ability to define a window as part of memory, which all
+commands affect, it should be given as the parameterized string \fBwind\fR. The
+four parameters are the starting and ending lines in memory and the starting
+and ending columns in memory, in that order.
+.sp
+.LP
+If the terminal can retain display memory above, then the \fBda\fR capability
+should be given; if display memory can be retained below, then \fBdb\fR should
+be given. These indicate that deleting a line or scrolling a full screen may
+bring non-blank lines up from below or that scrolling back with \fBri\fR may
+bring down non-blank lines.
+.SS "Section 1-6: Insert/Delete Character"
+There are two basic kinds of intelligent terminals with respect to
+insert/delete character operations which can be described using \fBterminfo.\fR
+The most common insert/delete character operations affect only the characters
+on the current line and shift characters off the end of the line rigidly. Other
+terminals, such as the Concept 100 and the Perkin Elmer Owl, make a distinction
+between typed and untyped blanks on the screen, shifting upon an insert or
+delete only to an untyped blank on the screen which is either eliminated, or
+expanded to two untyped blanks. You can determine the kind of terminal you have
+by clearing the screen and then typing text separated by cursor motions. Type
+``\fBabc def\fR'' using local cursor motions (not spaces) between the \fBabc\fR
+and the \fBdef\fR. Then position the cursor before the \fBabc\fR and put the
+terminal in insert mode. If typing characters causes the rest of the line to
+shift rigidly and characters to fall off the end, then your terminal does not
+distinguish between blanks and untyped positions. If the \fBabc\fR shifts over
+to the \fBdef\fR which then move together around the end of the current line
+and onto the next as you insert, you have the second type of terminal, and
+should give the capability \fBin\fR, which stands for ``insert null.'' While
+these are two logically separate attributes (one line versus multiline insert
+mode, and special treatment of untyped spaces) we have seen no terminals whose
+insert mode cannot be described with the single attribute.
+.sp
+.LP
+\fBterminfo\fR can describe both terminals that have an insert mode and
+terminals which send a simple sequence to open a blank position on the current
+line. Give as \fBsmir\fR the sequence to get into insert mode. Give as
+\fBrmir\fR the sequence to leave insert mode. Now give as \fBich1\fR any
+sequence needed to be sent just before sending the character to be inserted.
+Most terminals with a true insert mode will not give \fBich1\fR; terminals that
+send a sequence to open a screen position should give it here. (If your
+terminal has both, insert mode is usually preferable to \fBich1\fR. Do not give
+both unless the terminal actually requires both to be used in combination.) If
+post-insert padding is needed, give this as a number of milliseconds padding in
+\fBip\fR (a string option). Any other sequence which may need to be sent after
+an insert of a single character may also be given in \fBip\fR. If your terminal
+needs both to be placed into an `insert mode' and a special code to precede
+each inserted character, then both \fBsmir\fR/rmir and \fBich1\fR can be given,
+and both will be used. The \fBich\fR capability, with one parameter, \fIn\fR,
+will insert \fIn\fR blanks.
+.sp
+.LP
+If padding is necessary between characters typed while not in insert mode, give
+this as a number of milliseconds padding in \fBrmp\fR.
+.sp
+.LP
+It is occasionally necessary to move around while in insert mode to delete
+characters on the same line (for example, if there is a tab after the insertion
+position). If your terminal allows motion while in insert mode you can give the
+capability \fBmir\fR to speed up inserting in this case. Omitting \fBmir\fR
+will affect only speed. Some terminals (notably Datamedia's) must not have
+\fBmir\fR because of the way their insert mode works.
+.sp
+.LP
+Finally, you can specify \fBdch1\fR to delete a single character, \fBdch\fR
+with one parameter, \fIn\fR, to delete \fIn\fR characters, and delete mode by
+giving \fBsmdc\fR and \fBrmdc\fR to enter and exit delete mode (any mode the
+terminal needs to be placed in for \fBdch1\fR to work).
+.sp
+.LP
+A command to erase \fIn\fR characters (equivalent to outputting \fIn\fR blanks
+without moving the cursor) can be given as \fBech\fR with one parameter.
+.SS "Section 1-7: Highlighting, Underlining, and Visible Bells"
+Your device may have one or more kinds of display attributes that allow you to
+highlight selected characters when they appear on the screen. The following
+display modes (shown with the names by which they are set) may be available: a
+blinking screen (\fBblink\fR), bold or extra-bright characters (\fBbold\fR),
+dim or half-bright characters (\fBdim\fR), blanking or invisible text
+(\fBinvis\fR), protected text (\fBprot\fR), a reverse-video screen (\fBrev\fR),
+and an alternate character set (\fBsmacs\fR to enter this mode and \fBrmacs\fR
+to exit it). (If a command is necessary before you can enter alternate
+character set mode, give the sequence in \fBenacs\fR or "enable
+alternate-character-set" mode.) Turning on any of these modes singly may or may
+not turn off other modes.
+.sp
+.LP
+\fBsgr0\fR should be used to turn off all video enhancement capabilities. It
+should always be specified because it represents the only way to turn off some
+capabilities, such as \fBdim\fR or \fBblink\fR.
+.sp
+.LP
+You should choose one display method as \fIstandout mode\fR and use it to
+highlight error messages and other kinds of text to which you want to draw
+attention. Choose a form of display that provides strong contrast but that is
+easy on the eyes. (We recommend reverse-video plus half-bright or reverse-video
+alone.) The sequences to enter and exit standout mode are given as \fBsmso\fR
+and \fBrmso\fR, respectively. If the code to change into or out of standout
+mode leaves one or even two blank spaces on the screen, as the TVI 912 and
+Teleray 1061 do, then \fBxmc\fR should be given to tell how many spaces are
+left.
+.sp
+.LP
+Sequences to begin underlining and end underlining can be specified as
+\fBsmul\fR and \fBrmul ,\fR respectively. If the device has a sequence to
+underline the current character and to move the cursor one space to the right
+(such as the Micro-Term MIME), this sequence can be specified as \fBuc\fR.
+.sp
+.LP
+Terminals with the ``magic cookie'' glitch (\fBxmc\fR\fB)\fR deposit special
+``cookies'' when they receive mode-setting sequences, which affect the display
+algorithm rather than having extra bits for each character. Some terminals,
+such as the Hewlett-Packard 2621, automatically leave standout mode when they
+move to a new line or the cursor is addressed. Programs using standout mode
+should exit standout mode before moving the cursor or sending a newline, unless
+the \fBmsgr\fR capability, asserting that it is safe to move in standout mode,
+is present.
+.sp
+.LP
+If the terminal has a way of flashing the screen to indicate an error quietly
+(a bell replacement), then this can be given as \fBflash\fR; it must not move
+the cursor. A good flash can be done by changing the screen into reverse video,
+pad for 200 ms, then return the screen to normal video.
+.sp
+.LP
+If the cursor needs to be made more visible than normal when it is not on the
+bottom line (to make, for example, a non-blinking underline into an easier to
+find block or blinking underline) give this sequence as \fBcvvis\fR. The
+boolean \fBchts\fR should also be given. If there is a way to make the cursor
+completely invisible, give that as \fBcivis\fR. The capability \fBcnorm\fR
+should be given which undoes the effects of either of these modes.
+.sp
+.LP
+If your terminal generates underlined characters by using the underline
+character (with no special sequences needed) even though it does not otherwise
+overstrike characters, then you should specify the capability \fBul\fR. For
+devices on which a character overstriking another leaves both characters on the
+screen, specify the capability \fBos\fR. If overstrikes are erasable with a
+blank, then this should be indicated by specifying \fBeo\fR.
+.sp
+.LP
+If there is a sequence to set arbitrary combinations of modes, this should be
+given as \fBsgr\fR (set attributes), taking nine parameters. Each parameter is
+either \fB0\fR or non-zero, as the corresponding attribute is on or off. The
+nine parameters are, in order: standout, underline, reverse, blink, dim, bold,
+blank, protect, alternate character set. Not all modes need to be supported by
+\fBsgr\fR; only those for which corresponding separate attribute commands exist
+should be supported. For example, let's assume that the terminal in question
+needs the following escape sequences to turn on various modes.
+.sp
+
+.sp
+.TS
+c c c
+c c c .
+tparm
+parameter attribute escape sequence
+_
+ none \eE[0m
+p1 standout \eE[0;4;7m
+p2 underline \eE[0;3m
+p3 reverse \eE[0;4m
+p4 blink \eE[0;5m
+p5 dim \eE[0;7m
+p6 bold \eE[0;3;4m
+p7 invis \eE[0;8m
+p8 protect not available
+p9 altcharset ^O (off) ^N (on)
+.TE
+
+.sp
+.LP
+Note that each escape sequence requires a \fB0\fR to turn off other modes
+before turning on its own mode. Also note that, as suggested above,
+\fIstandout\fR is set up to be the combination of \fIreverse\fR and \fIdim\fR.
+Also, because this terminal has no \fIbold\fR mode, \fIbold\fR is set up as the
+combination of \fIreverse\fR and \fIunderline\fR. In addition, to allow
+combinations, such as \fIunderline+blink\fR, the sequence to use would be
+\fB\eE[0;3;5m\fR\&. The terminal doesn't have \fIprotect\fR mode, either, but
+that cannot be simulated in any way, so \fBp8\fR is ignored. The
+\fIaltcharset\fR mode is different in that it is either \fB^O\fR or \fB^N\fR,
+depending on whether it is off or on. If all modes were to be turned on, the
+sequence would be \fB\eE[0;3;4;5;7;8m^N\fR\&.
+.sp
+.LP
+Now look at when different sequences are output. For example, \fB;3\fR is
+output when either \fBp2\fR or \fBp6\fR is true, that is, if either
+\fIunderline\fR or \fIbold\fR modes are turned on. Writing out the above
+sequences, along with their dependencies, gives the following:
+.sp
+
+.sp
+.TS
+c c c
+l l l .
+sequence when to output terminfo translation
+_
+\eE[0 always \eE[0
+;3 if \fBp2\fR or \fBp6\fR %?%p2%p6%|%t;3%
+;4 if \fBp1\fR or \fBp3\fR or \fBp6\fR %?%p1%p3%|%p6%|%t;4%
+;5 if \fBp4\fR %?%p4%t;5%
+;7 if \fBp1\fR or \fBp5\fR %?%p1%p5%|%t;7%
+;8 if \fBp7\fR %?%p7%t;8%
+m always m
+^N or ^O if \fBp9 ^N\fR, else \fB^O\fR %?%p9%t^N%e^O%
+.TE
+
+.sp
+.LP
+Putting this all together into the \fBsgr\fR sequence gives:
+.sp
+.LP
+\fBsgr=\eE[0%?%p2%p6%|%t;3%%?%p1%p3%|%p6% |%t;4%%?%p5%t;5%%?%p1%p5%
+|%t;7%%?%p7%t;8%m%?%p9%t^N%e^O%,\fR
+.sp
+.LP
+Remember that \fBsgr\fR and \fBsgr0\fR must always be specified.
+.SS "Section 1-8: Keypad"
+If the device has a keypad that transmits sequences when the keys are pressed,
+this information can also be specified. Note that it is not possible to handle
+devices where the keypad only works in local (this applies, for example, to the
+unshifted Hewlett-Packard 2621 keys). If the keypad can be set to transmit or
+not transmit, specify these sequences as \fBsmkx\fR and \fBrmkx\fR. Otherwise
+the keypad is assumed to always transmit.
+.sp
+.LP
+The sequences sent by the left arrow, right arrow, up arrow, down arrow, and
+home keys can be given as \fBkcub1, kcuf1, kcuu1, kcud1,\fRand \fBkhome\fR,
+respectively. If there are function keys such as f0, f1, ..., f63, the
+sequences they send can be specified as \fBkf0, kf1, ..., kf63\fR. If the first
+11 keys have labels other than the default f0 through f10, the labels can be
+given as \fBlf0, lf1, ..., lf10\fR. The codes transmitted by certain other
+special keys can be given: \fBkll\fR (home down), \fBkbs\fR (backspace),
+\fBktbc\fR (clear all tabs), \fBkctab\fR (clear the tab stop in this column),
+\fBkclr\fR (clear screen or erase key), \fBkdch1\fR (delete character),
+\fBkdl1\fR (delete line), \fBkrmir\fR (exit insert mode), \fBkel\fR (clear to
+end of line), \fBked\fR (clear to end of screen), \fBkich1\fR (insert character
+or enter insert mode), \fBkil1\fR (insert line), \fBknp\fR (next page),
+\fBkpp\fR (previous page), \fBkind\fR (scroll forward/down), \fBkri\fR (scroll
+backward/up), \fBkhts\fR (set a tab stop in this column). In addition, if the
+keypad has a 3 by 3 array of keys including the four arrow keys, the other five
+keys can be given as \fBka1\fR, \fBka3\fR, \fBkb2\fR, \fBkc1\fR, and \fBkc3\fR.
+These keys are useful when the effects of a 3 by 3 directional pad are needed.
+Further keys are defined above in the capabilities list.
+.sp
+.LP
+Strings to program function keys can be specified as \fBpfkey\fR, \fBpfloc\fR,
+and \fBpfx\fR. A string to program screen labels should be specified as
+\fBpln\fR. Each of these strings takes two parameters: a function key
+identifier and a string to program it with. \fBpfkey\fR causes pressing the
+given key to be the same as the user typing the given string; \fBpfloc\fR
+causes the string to be executed by the terminal in local mode; and \fBpfx\fR
+causes the string to be transmitted to the computer. The capabilities
+\fBnlab\fR, \fBlw\fR and \fBlh\fR define the number of programmable screen
+labels and their width and height. If there are commands to turn the labels on
+and off, give them in \fBsmln\fR and \fBrmln\fR. \fBsmln\fR is normally output
+after one or more \fBpln\fR sequences to make sure that the change becomes
+visible.
+.SS "Section 1-9: Tabs and Initialization"
+If the device has hardware tabs, the command to advance to the next tab stop
+can be given as \fBht\fR (usually control I). A ``backtab'' command that moves
+leftward to the next tab stop can be given as \fBcbt\fR. By convention, if tty
+modes show that tabs are being expanded by the computer rather than being sent
+to the device, programs should not use \fBht\fR or \fBcbt\fR (even if they are
+present) because the user may not have the tab stops properly set. If the
+device has hardware tabs that are initially set every \fIn\fR spaces when the
+device is powered up, the numeric parameter \fBit\fR is given, showing the
+number of spaces the tabs are set to. This is normally used by \fBtput\fR
+\fBinit\fR (see \fBtput\fR(1)) to determine whether to set the mode for
+hardware tab expansion and whether to set the tab stops. If the device has tab
+stops that can be saved in nonvolatile memory, the \fBterminfo\fR description
+can assume that they are properly set. If there are commands to set and clear
+tab stops, they can be given as \fBtbc\fR (clear all tab stops) and \fBhts\fR
+(set a tab stop in the current column of every row).
+.sp
+.LP
+Other capabilities include: \fBis1\fR, \fBis2\fR, and \fBis3\fR, initialization
+strings for the device; \fBiprog\fR, the path name of a program to be run to
+initialize the device; and \fBif\fR, the name of a file containing long
+initialization strings. These strings are expected to set the device into modes
+consistent with the rest of the \fBterminfo\fR description. They must be sent
+to the device each time the user logs in and be output in the following order:
+run the program \fBiprog\fR; output \fBis1\fR; output \fBis2\fR; set the
+margins using \fBmgc\fR, \fBsmgl\fR and \fBsmgr\fR; set the tabs using
+\fBtbc\fR and \fBhts\fR; print the file \fBif\fR; and finally output \fBis3\fR.
+This is usually done using the \fBinit\fR option of \fBtput\fR.
+.sp
+.LP
+Most initialization is done with \fBis2\fR. Special device modes can be set up
+without duplicating strings by putting the common sequences in \fBis2\fR and
+special cases in \fBis1\fR and \fBis3\fR. Sequences that do a reset from a
+totally unknown state can be given as \fBrs1\fR, \fBrs2\fR, \fBrf\fR, and
+\fBrs3\fR, analogous to \fBis1\fR, \fBis2\fR, \fBis3\fR, and \fBif\fR. (The
+method using files, \fBif\fR and \fBrf\fR, is used for a few terminals, from
+\fB/usr/share/lib/tabset/*\fR; however, the recommended method is to use the
+initialization and reset strings.) These strings are output by \fBtput\fR
+reset, which is used when the terminal gets into a wedged state. Commands are
+normally placed in \fBrs1\fR, \fBrs2\fR, \fBrs3\fR, and \fBrf\fR only if they
+produce annoying effects on the screen and are not necessary when logging in.
+For example, the command to set a terminal into 80-column mode would normally
+be part of \fBis2\fR, but on some terminals it causes an annoying glitch on the
+screen and is not normally needed because the terminal is usually already in
+80-column mode.
+.sp
+.LP
+If a more complex sequence is needed to set the tabs than can be described by
+using \fBtbc\fR and \fBhts\fR, the sequence can be placed in \fBis2\fR or
+\fBif\fR.
+.sp
+.LP
+Any margin can be cleared with \fBmgc\fR. (For instructions on how to specify
+commands to set and clear margins, see "Margins" below under "PRINTER
+CAPABILITIES".)
+.SS "Section 1-10: Delays"
+Certain capabilities control padding in the \fBtty\fR driver. These are
+primarily needed by hard-copy terminals, and are used by \fBtput\fR \fBinit\fR
+to set tty modes appropriately. Delays embedded in the capabilities \fBcr\fR,
+\fBind\fR, \fBcub1\fR, \fBff\fR, and \fBtab\fR can be used to set the
+appropriate delay bits to be set in the tty driver. If \fBpb\fR (padding baud
+rate) is given, these values can be ignored at baud rates below the value of
+\fBpb\fR.
+.SS "Section 1-11: Status Lines"
+If the terminal has an extra ``status line'' that is not normally used by
+software, this fact can be indicated. If the status line is viewed as an extra
+line below the bottom line, into which one can cursor address normally (such as
+the Heathkit h19's 25th line, or the 24th line of a VT100 which is set to a
+23-line scrolling region), the capability \fBhs\fR should be given. Special
+strings that go to a given column of the status line and return from the status
+line can be given as \fBtsl\fR and \fBfsl\fR. (\fBfsl\fR must leave the cursor
+position in the same place it was before \fBtsl\fR. If necessary, the \fBsc\fR
+and \fBrc\fR strings can be included in \fBtsl\fR and \fBfsl\fR to get this
+effect.) The capability \fBtsl\fR takes one parameter, which is the column
+number of the status line the cursor is to be moved to.
+.sp
+.LP
+If escape sequences and other special commands, such as tab, work while in the
+status line, the flag \fBeslok\fR can be given. A string which turns off the
+status line (or otherwise erases its contents) should be given as \fBdsl\fR. If
+the terminal has commands to save and restore the position of the cursor, give
+them as \fBsc\fR and \fBrc\fR. The status line is normally assumed to be the
+same width as the rest of the screen, for example, \fBcols\fR. If the status
+line is a different width (possibly because the terminal does not allow an
+entire line to be loaded) the width, in columns, can be indicated with the
+numeric parameter \fBwsl\fR.
+.SS "Section 1-12: Line Graphics"
+If the device has a line drawing alternate character set, the mapping of glyph
+to character would be given in \fBacsc\fR. The definition of this string is
+based on the alternate character set used in the DEC VT100 terminal, extended
+slightly with some characters from the AT&T 4410v1 terminal.
+.sp
+
+.sp
+.TS
+c c
+l l .
+Glyph Name vt100+ Character
+_
+arrow pointing right +
+arrow pointing left ,
+arrow pointing down \&.
+solid square block 0
+lantern symbol I
+arrow pointing up \(mi
+diamond `
+checker board (stipple) a
+degree symbol f
+plus/minus g
+board of squares h
+lower right corner j
+upper right corner k
+upper left corner l
+lower left corner m
+plus n
+scan line 1 o
+horizontal line q
+scan line 9 s
+left tee t
+right tee u
+bottom tee v
+top tee w
+vertical line x
+bullet ~
+.TE
+
+.sp
+.LP
+The best way to describe a new device's line graphics set is to add a third
+column to the above table with the characters for the new device that produce
+the appropriate glyph when the device is in the alternate character set mode.
+For example,
+.sp
+
+.sp
+.TS
+c c c
+l l l .
+Glyph Name vt100+ Char New tty Char
+_
+upper left corner l R
+lower left corner m F
+upper right corner k T
+lower right corner j G
+horizontal line q ,
+vertical line x \&.
+.TE
+
+.sp
+.LP
+Now write down the characters left to right, as in
+``\fBacsc=lRmFkTjGq\e,x.\fR''.
+.sp
+.LP
+In addition, \fBterminfo\fR allows you to define multiple character sets. See
+Section 2-5 for details.
+.SS "Section 1-13: Color Manipulation"
+Let us define two methods of color manipulation: the Tektronix method and the
+HP method. The Tektronix method uses a set of N predefined colors (usually 8)
+from which a user can select "current" foreground and background colors. Thus a
+terminal can support up to N colors mixed into N*N color-pairs to be displayed
+on the screen at the same time. When using an HP method the user cannot define
+the foreground independently of the background, or vice-versa. Instead, the
+user must define an entire color-pair at once. Up to M color-pairs, made from
+2*M different colors, can be defined this way. Most existing color terminals
+belong to one of these two classes of terminals.
+.sp
+.LP
+The numeric variables \fBcolors\fR and \fBpairs\fR define the number of colors
+and color-pairs that can be displayed on the screen at the same time. If a
+terminal can change the definition of a color (for example, the Tektronix 4100
+and 4200 series terminals), this should be specified with \fBccc\fR (can change
+color). To change the definition of a color (Tektronix 4200 method), use
+\fBinitc\fR (initialize color). It requires four arguments: color number
+(ranging from 0 to \fBcolors\fR\(mi1) and three RGB (red, green, and blue)
+values or three HLS colors (Hue, Lightness, Saturation). Ranges of RGB and HLS
+values are terminal dependent.
+.sp
+.LP
+Tektronix 4100 series terminals only use HLS color notation. For such terminals
+(or dual-mode terminals to be operated in HLS mode) one must define a boolean
+variable \fBhls\fR; that would instruct the \fBcurses init_color\fR routine to
+convert its RGB arguments to HLS before sending them to the terminal. The last
+three arguments to the \fBinitc\fR string would then be HLS values.
+.sp
+.LP
+If a terminal can change the definitions of colors, but uses a color notation
+different from RGB and HLS, a mapping to either RGB or HLS must be developed.
+.sp
+.LP
+To set current foreground or background to a given color, use \fBsetaf\fR (set
+ANSI foreground) and \fBsetab\fR (set ANSI background). They require one
+parameter: the number of the color. To initialize a color-pair (HP method),
+use \fBinitp\fR (initialize pair). It requires seven parameters: the number of
+a color-pair (range=0 to \fBpairs\fR\(mi1), and six RGB values: three for the
+foreground followed by three for the background. (Each of these groups of three
+should be in the order RGB.) When \fBinitc\fR or \fBinitp\fR are used, RGB or
+HLS arguments should be in the order "red, green, blue" or "hue, lightness,
+saturation"), respectively. To make a color-pair current, use \fBscp\fR (set
+color-pair). It takes one parameter, the number of a color-pair.
+.sp
+.LP
+Some terminals (for example, most color terminal emulators for PCs) erase areas
+of the screen with current background color. In such cases, \fBbce\fR
+(background color erase) should be defined. The variable \fBop\fR (original
+pair) contains a sequence for setting the foreground and the background colors
+to what they were at the terminal start-up time. Similarly, \fBoc\fR (original
+colors) contains a control sequence for setting all colors (for the Tektronix
+method) or color-pairs (for the HP method) to the values they had at the
+terminal start-up time.
+.sp
+.LP
+Some color terminals substitute color for video attributes. Such video
+attributes should not be combined with colors. Information about these video
+attributes should be packed into the \fBncv\fR (no color video) variable. There
+is a one-to-one correspondence between the nine least significant bits of that
+variable and the video attributes. The following table depicts this
+correspondence.
+.sp
+
+.sp
+.TS
+c c c
+l l l .
+Attribute Bit Position Decimal Value
+_
+A_STANDOUT 0 1
+A_UNDERLINE 1 2
+A_REVERSE 2 4
+A_BLINK 3 8
+A_DIM 4 16
+A_BOLD 5 32
+A_INVIS 6 64
+A_PROTECT 7 128
+A_ALTCHARSET 8 256
+.TE
+
+.sp
+.LP
+When a particular video attribute should not be used with colors, the
+corresponding \fBncv\fR bit should be set to 1; otherwise it should be set to
+zero. To determine the information to pack into the \fBncv\fR variable, you
+must add together the decimal values corresponding to those attributes that
+cannot coexist with colors. For example, if the terminal uses colors to
+simulate reverse video (bit number 2 and decimal value 4) and bold (bit number
+5 and decimal value 32), the resulting value for \fBncv\fR will be 36 (4 + 32).
+.SS "Section 1-14: Miscellaneous"
+If the terminal requires other than a null (zero) character as a pad, then this
+can be given as \fBpad\fR. Only the first character of the \fBpad\fR string is
+used. If the terminal does not have a pad character, specify \fBnpc\fR.
+.sp
+.LP
+If the terminal can move up or down half a line, this can be indicated with
+\fBhu\fR (half-line up) and \fBhd\fR (half-line down). This is primarily useful
+for superscripts and subscripts on hardcopy terminals. If a hardcopy terminal
+can eject to the next page (form feed), give this as \fBff\fR (usually control
+L).
+.sp
+.LP
+If there is a command to repeat a given character a given number of times (to
+save time transmitting a large number of identical characters) this can be
+indicated with the parameterized string \fBrep\fR. The first parameter is the
+character to be repeated and the second is the number of times to repeat it.
+Thus, \fBtparm(repeat_char, 'x', 10)\fR is the same as \fBxxxxxxxxxx.\fR
+.sp
+.LP
+If the terminal has a settable command character, such as the Tektronix 4025,
+this can be indicated with \fBcmdch\fR. A prototype command character is chosen
+which is used in all capabilities. This character is given in the \fBcmdch\fR
+capability to identify it. The following convention is supported on some
+systems: If the environment variable \fBCC\fR exists, all occurrences of the
+prototype character are replaced with the character in \fBCC\fR.
+.sp
+.LP
+Terminal descriptions that do not represent a specific kind of known terminal,
+such as \fBswitch\fR, \fIdialup\fR, \fBpatch\fR, and \fInetwork\fR, should
+include the \fBgn\fR (generic) capability so that programs can complain that
+they do not know how to talk to the terminal. (This capability does not apply
+to \fIvirtual\fR terminal descriptions for which the escape sequences are
+known.) If the terminal is one of those supported by the system virtual
+terminal protocol, the terminal number can be given as \fBvt\fR. A
+line-turn-around sequence to be transmitted before doing reads should be
+specified in \fBrfi\fR.
+.sp
+.LP
+If the device uses xon/xoff handshaking for flow control, give \fBxon\fR.
+Padding information should still be included so that routines can make better
+decisions about costs, but actual pad characters will not be transmitted.
+Sequences to turn on and off xon/xoff handshaking may be given in \fBsmxon\fR
+and \fBrmxon\fR. If the characters used for handshaking are not \fB^S\fR and
+\fB^Q\fR, they may be specified with \fBxonc\fR and \fBxoffc\fR.
+.sp
+.LP
+If the terminal has a ``meta key'' which acts as a shift key, setting the 8th
+bit of any character transmitted, this fact can be indicated with \fBkm\fR.
+Otherwise, software will assume that the 8th bit is parity and it will usually
+be cleared. If strings exist to turn this ``meta mode'' on and off, they can be
+given as \fBsmm\fR and \fBrmm\fR.
+.sp
+.LP
+If the terminal has more lines of memory than will fit on the screen at once,
+the number of lines of memory can be indicated with \fBlm\fR. A value of
+\fBlm\fR#0 indicates that the number of lines is not fixed, but that there is
+still more memory than fits on the screen.
+.sp
+.LP
+Media copy strings which control an auxiliary printer connected to the terminal
+can be given as \fBmc0\fR: print the contents of the screen, \fBmc4\fR: turn
+off the printer, and \fBmc5\fR: turn on the printer. When the printer is on,
+all text sent to the terminal will be sent to the printer. A variation,
+\fBmc5p\fR, takes one parameter, and leaves the printer on for as many
+characters as the value of the parameter, then turns the printer off. The
+parameter should not exceed 255. If the text is not displayed on the terminal
+screen when the printer is on, specify \fBmc5i\fR (silent printer). All text,
+including \fBmc4\fR, is transparently passed to the printer while an \fBmc5p\fR
+is in effect.
+.SS "Section 1-15: Special Cases"
+The working model used by \fBterminfo\fR fits most terminals reasonably well.
+However, some terminals do not completely match that model, requiring special
+support by \fBterminfo\fR. These are not meant to be construed as deficiencies
+in the terminals; they are just differences between the working model and the
+actual hardware. They may be unusual devices or, for some reason, do not have
+all the features of the \fBterminfo\fR model implemented.
+.sp
+.LP
+Terminals that cannot display tilde (~) characters, such as certain Hazeltine
+terminals, should indicate \fBhz\fR.
+.sp
+.LP
+Terminals that ignore a linefeed immediately after an \fBam\fR wrap, such as
+the Concept 100, should indicate \fBxenl\fR. Those terminals whose cursor
+remains on the right-most column until another character has been received,
+rather than wrapping immediately upon receiving the right-most character, such
+as the VT100, should also indicate \fBxenl\fR.
+.sp
+.LP
+If \fBel\fR is required to get rid of standout (instead of writing normal text
+on top of it), \fBxhp\fR should be given.
+.sp
+.LP
+Those Teleray terminals whose tabs turn all characters moved over to blanks,
+should indicate \fBxt\fR (destructive tabs). This capability is also taken to
+mean that it is not possible to position the cursor on top of a ``magic
+cookie.'' Therefore, to erase standout mode, it is necessary, instead, to use
+delete and insert line.
+.sp
+.LP
+Those Beehive Superbee terminals which do not transmit the escape or
+control\(miC characters, should specify \fBxsb\fR, indicating that the f1 key
+is to be used for escape and the f2 key for control C.
+.SS "Section 1-16: Similar Terminals"
+If there are two very similar terminals, one can be defined as being just like
+the other with certain exceptions. The string capability \fBuse\fR can be given
+with the name of the similar terminal. The capabilities given before \fBuse\fR
+override those in the terminal type invoked by \fBuse\fR. A capability can be
+canceled by placing \fIxx\fR\fB@\fR to the left of the capability definition,
+where \fIxx\fR is the capability. For example, the entry
+.sp
+.in +2
+.nf
+\fBatt4424-2|Teletype4424 in display function group ii,
+rev@, sgr@, smul@, use=att4424,\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+defines an AT&T4424 terminal that does not have the \fBrev\fR, \fBsgr\fR, and
+\fBsmul\fR capabilities, and hence cannot do highlighting. This is useful for
+different modes for a terminal, or for different user preferences. More than
+one \fBuse\fR capability may be given.
+.SS "PART 2: PRINTER CAPABILITIES"
+The \fBterminfo\fR database allows you to define capabilities of printers as
+well as terminals. To find out what capabilities are available for printers as
+well as for terminals, see the two lists under "DEVICE CAPABILITIES" that list
+capabilities by variable and by capability name.
+.SS "Section 2-1: Rounding Values"
+Because parameterized string capabilities work only with integer values, we
+recommend that \fBterminfo\fR designers create strings that expect numeric
+values that have been rounded. Application designers should note this and
+should always round values to the nearest integer before using them with a
+parameterized string capability.
+.SS "Section 2-2: Printer Resolution"
+A printer's resolution is defined to be the smallest spacing of characters it
+can achieve. In general printers have independent resolution horizontally and
+vertically. Thus the vertical resolution of a printer can be determined by
+measuring the smallest achievable distance between consecutive printing
+baselines, while the horizontal resolution can be determined by measuring the
+smallest achievable distance between the left-most edges of consecutive
+printed, identical, characters.
+.sp
+.LP
+All printers are assumed to be capable of printing with a uniform horizontal
+and vertical resolution. The view of printing that \fBterminfo\fR currently
+presents is one of printing inside a uniform matrix: All characters are printed
+at fixed positions relative to each ``cell'' in the matrix; furthermore, each
+cell has the same size given by the smallest horizontal and vertical step sizes
+dictated by the resolution. (The cell size can be changed as will be seen
+later.)
+.sp
+.LP
+Many printers are capable of ``proportional printing,'' where the horizontal
+spacing depends on the size of the character last printed. \fBterminfo\fR does
+not make use of this capability, although it does provide enough capability
+definitions to allow an application to simulate proportional printing.
+.sp
+.LP
+A printer must not only be able to print characters as close together as the
+horizontal and vertical resolutions suggest, but also of ``moving'' to a
+position an integral multiple of the smallest distance away from a previous
+position. Thus printed characters can be spaced apart a distance that is an
+integral multiple of the smallest distance, up to the length or width of a
+single page.
+.sp
+.LP
+Some printers can have different resolutions depending on different ``modes.''
+In ``normal mode,'' the existing \fBterminfo\fR capabilities are assumed to
+work on columns and lines, just like a video terminal. Thus the old \fBlines\fR
+capability would give the length of a page in lines, and the \fBcols\fR
+capability would give the width of a page in columns. In ``micro mode,'' many
+\fBterminfo\fR capabilities work on increments of lines and columns. With some
+printers the micro mode may be concomitant with normal mode, so that all the
+capabilities work at the same time.
+.SS "Section 2-3: Specifying Printer Resolution"
+The printing resolution of a printer is given in several ways. Each specifies
+the resolution as the number of smallest steps per distance:
+.sp
+.in +2
+.nf
+ Specification of Printer Resolution
+ Characteristic Number of Smallest Steps
+
+ orhi Steps per inch horizontally
+ orvi Steps per inch vertically
+ orc Steps per column
+ orl Steps per line
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+When printing in normal mode, each character printed causes movement to the
+next column, except in special cases described later; the distance moved is the
+same as the per-column resolution. Some printers cause an automatic movement to
+the next line when a character is printed in the rightmost position; the
+distance moved vertically is the same as the per-line resolution. When printing
+in micro mode, these distances can be different, and may be zero for some
+printers.
+.sp
+.in +2
+.nf
+ Specification of Printer Resolution
+ Automatic Motion after Printing
+
+ Normal Mode:
+
+ orc Steps moved horizontally
+ orl Steps moved vertically
+
+ Micro Mode:
+
+ mcs Steps moved horizontally
+ mls Steps moved vertically
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Some printers are capable of printing wide characters. The distance moved when
+a wide character is printed in normal mode may be different from when a regular
+width character is printed. The distance moved when a wide character is printed
+in micro mode may also be different from when a regular character is printed in
+micro mode, but the differences are assumed to be related: If the distance
+moved for a regular character is the same whether in normal mode or micro mode
+(\fBmcs\fR=orc), then the distance moved for a wide character is also the same
+whether in normal mode or micro mode. This doesn't mean the normal character
+distance is necessarily the same as the wide character distance, just that the
+distances don't change with a change in normal to micro mode. However, if the
+distance moved for a regular character is different in micro mode from the
+distance moved in normal mode (\fBmcs\fR<\fBorc\fR), the micro mode distance is
+assumed to be the same for a wide character printed in micro mode, as the table
+below shows.
+.sp
+.in +2
+.nf
+ Specification of Printer Resolution
+ Automatic Motion after Printing Wide Character
+
+ Normal Mode or Micro Mode (mcs = orc):
+ sp
+ widcs Steps moved horizontally
+
+ Micro Mode (mcs < orc):
+
+ mcs Steps moved horizontally
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+There may be control sequences to change the number of columns per inch (the
+character pitch) and to change the number of lines per inch (the line pitch).
+If these are used, the resolution of the printer changes, but the type of
+change depends on the printer:
+.sp
+.in +2
+.nf
+ Specification of Printer Resolution
+ Changing the Character/Line Pitches
+
+ cpi Change character pitch
+ cpix If set, cpi changes orhi, otherwise changes
+ orc
+ lpi Change line pitch
+ lpix If set, lpi changes orvi, otherwise changes
+ orl
+ chr Change steps per column
+ cvr Change steps per line
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The \fBcpi\fR and \fBlpi\fR string capabilities are each used with a single
+argument, the pitch in columns (or characters) and lines per inch,
+respectively. The \fBchr\fR and \fBcvr\fR string capabilities are each used
+with a single argument, the number of steps per column and line, respectively.
+.sp
+.LP
+Using any of the control sequences in these strings will imply a change in some
+of the values of \fBorc\fR, \fBorhi\fR, \fBorl\fR, and \fBorvi\fR. Also, the
+distance moved when a wide character is printed, \fBwidcs\fR, changes in
+relation to \fBorc\fR. The distance moved when a character is printed in micro
+mode, \fBmcs\fR, changes similarly, with one exception: if the distance is 0
+or 1, then no change is assumed (see items marked with * in the following
+table).
+.sp
+.LP
+Programs that use \fBcpi\fR, \fBlpi\fR, \fBchr\fR, or \fBcvr\fR should
+recalculate the printer resolution (and should recalculate other values\(em see
+"Effect of Changing Printing Resolution" under "Dot-Mapped Graphics").
+.sp
+.in +2
+.nf
+ Specification of Printer Resolution
+ Effects of Changing the Character/Line Pitches
+
+ Before After
+
+Using cpi with cpix clear:
+ $bold orhi '$ orhi
+ $bold orc '$ $bold orc = bold orhi over V sub italic cpi$
+
+ Using cpi with cpix set:
+ $bold orhi '$ $bold orhi = bold orc cdot V sub italic cpi$
+ $bold orc '$ $bold orc$
+
+ Using lpi with lpix clear:
+ $bold orvi '$ $bold orvi$
+ $bold orl '$ $bold orl = bold orvi over V sub italic lpi$
+
+ Using lpi with lpix set:
+ $bold orvi '$ $bold orvi = bold orl cdot V sub italic lpi$
+ $bold orl '$ $bold orl$
+
+ Using chr:
+ $bold orhi '$ $bold orhi$
+ $bold orc '$ $V sub italic chr$
+
+ Using cvr:
+ $bold orvi '$ $bold orvi$
+ $bold orl '$ $V sub italic cvr$
+
+ Using cpi or chr:
+ $bold widcs '$ $bold widcs = bold {widcs '} bold orc over { bold {orc '} }$
+ $bold mcs '$ $bold mcs = bold {mcs '} bold orc over { bold {orc '} }$
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+$V sub italic cpi$, $V sub italic lpi$, $V sub italic chr$, and $V sub italic
+cvr$ are the arguments used with \fBcpi\fR, \fBlpi\fR, \fBchr\fR, and
+\fBcvr\fR, respectively. The prime marks (\|'\|) indicate the old values.
+.SS "Section 2-4: Capabilities that Cause Movement"
+In the following descriptions, ``movement'' refers to the motion of the
+``current position.'' With video terminals this would be the cursor; with some
+printers this is the carriage position. Other printers have different
+equivalents. In general, the current position is where a character would be
+displayed if printed.
+.sp
+.LP
+\fBterminfo\fR has string capabilities for control sequences that cause
+movement a number of full columns or lines. It also has equivalent string
+capabilities for control sequences that cause movement a number of smallest
+steps.
+.sp
+.in +2
+.nf
+String Capabilities for Motion
+
+ mcub1 Move 1 step left
+ mcuf1 Move 1 step right
+ mcuu1 Move 1 step up
+ mcud1 Move 1 step down
+ mcub Move N steps left
+ mcuf Move N steps right
+ mcuu Move N steps up
+ mcud Move N steps down
+ mhpa Move N steps from the left
+ mvpa Move N steps from the top
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The latter six strings are each used with a single argument, \fIN\fR.
+.sp
+.LP
+Sometimes the motion is limited to less than the width or length of a page.
+Also, some printers don't accept absolute motion to the left of the current
+position. \fBterminfo\fR has capabilities for specifying these limits.
+.sp
+.in +2
+.nf
+Limits to Motion
+
+ mjump Limit on use of mcub1, mcuf1, mcuu1, mcud1
+ maddr Limit on use of mhpa, mvpa
+ xhpa If set, hpa and mhpa can't move left
+ xvpa If set, vpa and mvpa can't move up
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+If a printer needs to be in a ``micro mode'' for the motion capabilities
+described above to work, there are string capabilities defined to contain the
+control sequence to enter and exit this mode. A boolean is available for those
+printers where using a carriage return causes an automatic return to normal
+mode.
+.sp
+.in +2
+.nf
+ Entering/Exiting Micro Mode
+
+ smicm Enter micro mode
+ rmicm Exit micro mode
+ crxm Using cr exits micro mode
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The movement made when a character is printed in the rightmost position varies
+among printers. Some make no movement, some move to the beginning of the next
+line, others move to the beginning of the same line. \fBterminfo\fR has boolean
+capabilities for describing all three cases.
+.sp
+.in +2
+.nf
+ What Happens After Character
+ Printed in Rightmost Position
+
+ sam Automatic move to beginning of same line
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Some printers can be put in a mode where the normal direction of motion is
+reversed. This mode can be especially useful when there are no capabilities for
+leftward or upward motion, because those capabilities can be built from the
+motion reversal capability and the rightward or downward motion capabilities.
+It is best to leave it up to an application to build the leftward or upward
+capabilities, though, and not enter them in the \fBterminfo\fR database. This
+allows several reverse motions to be strung together without intervening wasted
+steps that leave and reenter reverse mode.
+.sp
+.in +2
+.nf
+Entering/Exiting Reverse Modes
+
+ slm Reverse sense of horizontal motions
+ rlm Restore sense of horizontal motions
+ sum Reverse sense of vertical motions
+ rum Restore sense of vertical motions
+
+ While sense of horizontal motions reversed:
+ mcub1 Move 1 step right
+ mcuf1 Move 1 step left
+ mcub Move N steps right
+ mcuf Move N steps left
+ cub1 Move 1 column right
+ cuf1 Move 1 column left
+ cub Move N columns right
+ cuf Move N columns left
+
+ While sense of vertical motions reversed:
+ mcuu1 Move 1 step down
+ mcud1 Move 1 step up
+ mcuu Move N steps down
+ mcud Move N steps up
+ cuu1 Move 1 line down
+ cud1 Move 1 line up
+ cuu Move N lines down
+ cud Move N lines up
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The reverse motion modes should not affect the \fBmvpa\fR and \fBmhpa\fR
+absolute motion capabilities. The reverse vertical motion mode should, however,
+also reverse the action of the line ``wrapping'' that occurs when a character
+is printed in the right-most position. Thus printers that have the standard
+\fBterminfo\fR capability \fBam\fR defined should experience motion to the
+beginning of the previous line when a character is printed in the right-most
+position under reverse vertical motion mode.
+.sp
+.LP
+The action when any other motion capabilities are used in reverse motion modes
+is not defined; thus, programs must exit reverse motion modes before using
+other motion capabilities.
+.sp
+.LP
+Two miscellaneous capabilities complete the list of new motion capabilities.
+One of these is needed for printers that move the current position to the
+beginning of a line when certain control characters, such as ``line-feed'' or
+``form-feed,'' are used. The other is used for the capability of suspending the
+motion that normally occurs after printing a character.
+.sp
+.in +2
+.nf
+Miscellaneous Motion Strings
+
+ docr List of control characters causing cr
+ zerom Prevent auto motion after printing next single character
+.fi
+.in -2
+.sp
+
+.SS "Margins"
+\fBterminfo\fR provides two strings for setting margins on terminals: one for
+the left and one for the right margin. Printers, however, have two additional
+margins, for the top and bottom margins of each page. Furthermore, some
+printers require not using motion strings to move the current position to a
+margin and then fixing the margin there, but require the specification of where
+a margin should be regardless of the current position. Therefore \fBterminfo\fR
+offers six additional strings for defining margins with printers.
+.sp
+.in +2
+.nf
+Setting Margins
+
+ smgl Set left margin at current column
+ smgr Set right margin at current column
+ smgb Set bottom margin at current line
+ smgt Set top margin at current line
+ smgbp Set bottom margin at line N
+ smglp Set left margin at column N
+ smgrp Set right margin at column N
+ smgtp Set top margin at line N
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The last four strings are used with one or more arguments that give the
+position of the margin or margins to set. If both of \fBsmglp\fR and
+\fBsmgrp\fR are set, each is used with a single argument, \fIN,\fR that gives
+the column number of the left and right margin, respectively. If both of
+\fBsmgtp\fR and \fBsmgbp\fR are set, each is used to set the top and bottom
+margin, respectively: \fBsmgtp\fR is used with a single argument, \fIN,\fR the
+line number of the top margin; however, \fBsmgbp\fR is used with two arguments,
+\fIN\fR and \fIM,\fR that give the line number of the bottom margin, the first
+counting from the top of the page and the second counting from the bottom. This
+accommodates the two styles of specifying the bottom margin in different
+manufacturers' printers. When coding a \fBterminfo\fR entry for a printer that
+has a settable bottom margin, only the first or second parameter should be
+used, depending on the printer. When writing an application that uses
+\fBsmgbp\fR to set the bottom margin, both arguments must be given.
+.sp
+.LP
+If only one of \fBsmglp\fR and \fBsmgrp\fR is set, then it is used with two
+arguments, the column number of the left and right margins, in that order.
+Likewise, if only one of \fBsmgtp\fR and \fBsmgbp\fR is set, then it is used
+with two arguments that give the top and bottom margins, in that order,
+counting from the top of the page. Thus when coding a \fBterminfo\fR entry for
+a printer that requires setting both left and right or top and bottom margins
+simultaneously, only one of \fBsmglp\fR and \fBsmgrp\fR or \fBsmgtp\fR and
+\fBsmgbp\fR should be defined; the other should be left blank. When writing an
+application that uses these string capabilities, the pairs should be first
+checked to see if each in the pair is set or only one is set, and should then
+be used accordingly.
+.sp
+.LP
+In counting lines or columns, line zero is the top line and column zero is the
+left-most column. A zero value for the second argument with \fBsmgbp\fR means
+the bottom line of the page.
+.sp
+.LP
+All margins can be cleared with \fBmgc\fR.
+.SS "Shadows, Italics, Wide Characters"
+Five new sets of strings describe the capabilities printers have of enhancing
+printed text.
+.sp
+.in +2
+.nf
+Enhanced Printing
+
+ sshm Enter shadow-printing mode
+ rshm Exit shadow-printing mode
+ sitm Enter italicizing mode
+ ritm Exit italicizing mode
+ swidm Enter wide character mode
+ rwidm Exit wide character mode
+ ssupm Enter superscript mode
+ rsupd
+ m Exit superscript mode
+ supcs List of characters available as superscripts
+ ssubm Enter subscript mode
+ rsubm Exit subscript mode
+ subcs List of characters available as subscripts
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+If a printer requires the \fBsshm\fR control sequence before every character to
+be shadow-printed, the \fBrshm\fR string is left blank. Thus programs that find
+a control sequence in \fBsshm\fR but none in \fBrshm\fR should use the
+\fBsshm\fR control sequence before every character to be shadow-printed;
+otherwise, the \fBsshm\fR control sequence should be used once before the set
+of characters to be shadow-printed, followed by \fBrshm\fR. The same is also
+true of each of the \fBsitm\fR/\fBritm\fR, \fBswidm\fR/\fBrwidm\fR,
+\fBssupm\fR/\fBrsupm\fR, and \fBssubm\fR/ \fBrsubm\fR pairs.
+.sp
+.LP
+Note that \fBterminfo\fR also has a capability for printing emboldened text
+(\fBbold\fR). While shadow printing and emboldened printing are similar in that
+they ``darken'' the text, many printers produce these two types of print in
+slightly different ways. Generally, emboldened printing is done by overstriking
+the same character one or more times. Shadow printing likewise usually involves
+overstriking, but with a slight movement up and/or to the side so that the
+character is ``fatter.''
+.sp
+.LP
+It is assumed that enhanced printing modes are independent modes, so that it
+would be possible, for instance, to shadow print italicized subscripts.
+.sp
+.LP
+As mentioned earlier, the amount of motion automatically made after printing a
+wide character should be given in \fBwidcs\fR.
+.sp
+.LP
+If only a subset of the printable ASCII characters can be printed as
+superscripts or subscripts, they should be listed in \fBsupcs\fR or \fBsubcs\fR
+strings, respectively. If the \fBssupm\fR or \fBssubm\fR strings contain
+control sequences, but the corresponding \fBsupcs\fR or \fBsubcs\fR strings are
+empty, it is assumed that all printable ASCII characters are available as
+superscripts or subscripts.
+.sp
+.LP
+Automatic motion made after printing a superscript or subscript is assumed to
+be the same as for regular characters. Thus, for example, printing any of the
+following three examples will result in equivalent motion:
+.sp
+.LP
+\fBBi B\fR(i) B^i
+.sp
+.LP
+Note that the existing \fBmsgr\fR boolean capability describes whether motion
+control sequences can be used while in ``standout mode.'' This capability is
+extended to cover the enhanced printing modes added here. \fBmsgr\fR should be
+set for those printers that accept any motion control sequences without
+affecting shadow, italicized, widened, superscript, or subscript printing.
+Conversely, if \fBmsgr\fR is not set, a program should end these modes before
+attempting any motion.
+.SS "Section 2-5: Alternate Character Sets"
+In addition to allowing you to define line graphics (described in Section
+1-12), \fBterminfo\fR lets you define alternate character sets. The following
+capabilities cover printers and terminals with multiple selectable or definable
+character sets.
+.sp
+.in +2
+.nf
+Alternate Character Sets
+
+ scs Select character set N
+ scsd Start definition of character set N, M characters
+ defc Define character A, B dots wide, descender D
+ rcsd End definition of character set N
+ csnm List of character set names
+ daisy Printer has manually changed print-wheels
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The \fBscs\fR, \fBrcsd\fR, and \fBcsnm\fR strings are used with a single
+argument, \fIN\fR, a number from 0 to 63 that identifies the character set. The
+\fBscsd\fR string is also used with the argument \fIN\fR and another, \fIM\fR,
+that gives the number of characters in the set. The \fBdefc\fR string is used
+with three arguments: \fIA\fR gives the ASCII code representation for the
+character, \fIB\fR gives the width of the character in dots, and \fID\fR is
+zero or one depending on whether the character is a ``descender'' or not. The
+\fBdefc\fR string is also followed by a string of ``image-data'' bytes that
+describe how the character looks (see below).
+.sp
+.LP
+Character set 0 is the default character set present after the printer has been
+initialized. Not every printer has 64 character sets, of course; using
+\fBscs\fR with an argument that doesn't select an available character set
+should cause a null result from \fBtparm\fR.
+.sp
+.LP
+If a character set has to be defined before it can be used, the \fBscsd\fR
+control sequence is to be used before defining the character set, and the
+\fBrcsd\fR is to be used after. They should also cause a null result from
+\fBtparm\fR when used with an argument \fIN\fR that doesn't apply. If a
+character set still has to be selected after being defined, the \fBscs\fR
+control sequence should follow the \fBrcsd\fR control sequence. By examining
+the results of using each of the \fBscs\fR, \fBscsd\fR, and \fBrcsd\fR strings
+with a character set number in a call to \fBtparm\fR, a program can determine
+which of the three are needed.
+.sp
+.LP
+Between use of the \fBscsd\fR and \fBrcsd\fR strings, the \fBdefc\fR string
+should be used to define each character. To print any character on printers
+covered by \fBterminfo\fR, the ASCII code is sent to the printer. This is true
+for characters in an alternate set as well as ``normal'' characters. Thus the
+definition of a character includes the ASCII code that represents it. In
+addition, the width of the character in dots is given, along with an indication
+of whether the character should descend below the print line (such as the lower
+case letter ``g'' in most character sets). The width of the character in dots
+also indicates the number of image-data bytes that will follow the \fBdefc\fR
+string. These image-data bytes indicate where in a dot-matrix pattern ink
+should be applied to ``draw'' the character; the number of these bytes and
+their form are defined below under ``Dot-Mapped Graphics.''
+.sp
+.LP
+It's easiest for the creator of \fBterminfo\fR entries to refer to each
+character set by number; however, these numbers will be meaningless to the
+application developer. The \fBcsnm\fR string alleviates this problem by
+providing names for each number.
+.sp
+.LP
+When used with a character set number in a call to \fBtparm\fR, the \fBcsnm\fR
+string will produce the equivalent name. These names should be used as a
+reference only. No naming convention is implied, although anyone who creates a
+\fBterminfo\fR entry for a printer should use names consistent with the names
+found in user documents for the printer. Application developers should allow a
+user to specify a character set by number (leaving it up to the user to examine
+the \fBcsnm\fR string to determine the correct number), or by name, where the
+application examines the \fBcsnm\fR string to determine the corresponding
+character set number.
+.sp
+.LP
+These capabilities are likely to be used only with dot-matrix printers. If they
+are not available, the strings should not be defined. For printers that have
+manually changed print-wheels or font cartridges, the boolean \fBdaisy\fR is
+set.
+.SS "Section 2-6: Dot-Matrix Graphics"
+Dot-matrix printers typically have the capability of reproducing
+``raster-graphics'' images. Three new numeric capabilities and three new string
+capabilities can help a program draw raster-graphics images independent of the
+type of dot-matrix printer or the number of pins or dots the printer can handle
+at one time.
+.sp
+.in +2
+.nf
+Dot-Matrix Graphics
+
+ npins Number of pins, N, in print-head
+ spinv Spacing of pins vertically in pins per inch
+ spinh Spacing of dots horizontally in dots per inch
+ porder Matches software bits to print-head pins
+ sbim Start printing bit image graphics, B bits wide
+ rbim End printing bit image graphics
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The \fBsbim\fR string is used with a single argument, \fIB\fR, the width of the
+image in dots.
+.sp
+.LP
+The model of dot-matrix or raster-graphics that \fBterminfo\fR presents is
+similar to the technique used for most dot-matrix printers: each pass of the
+printer's print-head is assumed to produce a dot-matrix that is \fIN\fR dots
+high and \fIB\fR dots wide. This is typically a wide, squat, rectangle of dots.
+The height of this rectangle in dots will vary from one printer to the next;
+this is given in the \fBnpins\fR numeric capability. The size of the rectangle
+in fractions of an inch will also vary; it can be deduced from the \fBspinv\fR
+and \fBspinh\fR numeric capabilities. With these three values an application
+can divide a complete raster-graphics image into several horizontal strips,
+perhaps interpolating to account for different dot spacing vertically and
+horizontally.
+.sp
+.LP
+The \fBsbim\fR and \fBrbim\fR strings are used to start and end a dot-matrix
+image, respectively. The \fBsbim\fR string is used with a single argument that
+gives the width of the dot-matrix in dots. A sequence of ``image-data bytes''
+are sent to the printer after the \fBsbim\fR string and before the \fBrbim\fR
+string. The number of bytes is a integral multiple of the width of the
+dot-matrix; the multiple and the form of each byte is determined by the
+\fBporder\fR string as described below.
+.sp
+.LP
+The \fBporder\fR string is a comma separated list of pin numbers optionally
+followed by an numerical offset. The offset, if given, is separated from the
+list with a semicolon. The position of each pin number in the list corresponds
+to a bit in an 8-bit data byte. The pins are numbered consecutively from 1 to
+\fBnpins\fR, with 1 being the top pin. Note that the term ``pin'' is used
+loosely here; ``ink-jet'' dot-matrix printers don't have pins, but can be
+considered to have an equivalent method of applying a single dot of ink to
+paper. The bit positions in \fBporder\fR are in groups of 8, with the first
+position in each group the most significant bit and the last position the least
+significant bit. An application produces 8-bit bytes in the order of the groups
+in \fBporder\fR.
+.sp
+.LP
+An application computes the ``image-data bytes'' from the internal image,
+mapping vertical dot positions in each print-head pass into 8-bit bytes, using
+a 1 bit where ink should be applied and 0 where no ink should be applied. This
+can be reversed (0 bit for ink, 1 bit for no ink) by giving a negative pin
+number. If a position is skipped in \fBporder\fR, a 0 bit is used. If a
+position has a lower case `x' instead of a pin number, a 1 bit is used in the
+skipped position. For consistency, a lower case `o' can be used to represent a
+0 filled, skipped bit. There must be a multiple of 8 bit positions used or
+skipped in \fBporder\fR; if not, 0 bits are used to fill the last byte in the
+least significant bits. The offset, if given, is added to each data byte; the
+offset can be negative.
+.sp
+.LP
+Some examples may help clarify the use of the \fBporder\fR string. The AT&T
+470, AT&T 475 and C.Itoh 8510 printers provide eight pins for graphics. The
+pins are identified top to bottom by the 8 bits in a byte, from least
+significant to most. The \fBporder\fR strings for these printers would be
+\fB8,7,6,5,4,3,2,1\fR. The AT&T 478 and AT&T 479 printers also provide eight
+pins for graphics. However, the pins are identified in the reverse order. The
+\fBporder\fR strings for these printers would be \fB1,2,3,4,5,6,7,8\fR. The
+AT&T 5310, AT&T 5320, DEC LA100, and DEC LN03 printers provide six pins for
+graphics. The pins are identified top to bottom by the decimal values 1, 2, 4,
+8, 16 and 32. These correspond to the low six bits in an 8-bit byte, although
+the decimal values are further offset by the value 63. The \fBporder\fR string
+for these printers would be \fB,,6,5,4,3,2,1;63\fR, or alternately
+\fBo,o,6,5,4,3,2,1;63\fR.
+.SS "Section 2-7: Effect of Changing Printing Resolution"
+If the control sequences to change the character pitch or the line pitch are
+used, the pin or dot spacing may change:
+.sp
+.in +2
+.nf
+ Dot-Matrix Graphics
+ Changing the Character/Line Pitches
+
+ cpi Change character pitch
+ cpix If set, cpi changes spinh
+ lpi Change line pitch
+ lpix If set, lpi changes spinv
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Programs that use \fBcpi\fR or \fBlpi\fR should recalculate the dot spacing:
+.sp
+.in +2
+.nf
+Dot-Matrix Graphics
+ Effects of Changing the Character/Line Pitches
+
+ Before After
+
+Using cpi with cpix clear:
+ $bold spinh '$ $bold spinh$
+
+Using cpi with cpix set:
+ $bold spinh '$ $bold spinh = bold spinh ' cdot bold orhi over
+ { bold {orhi '} }$
+
+Using lpi with lpix clear:
+ $bold spinv '$ $bold spinv$
+
+Using lpi with lpix set:
+ $bold spinv '$ $bold spinv = bold {spinv '} cdot bold orhi over
+ { bold {orhi '}}$
+
+Using chr:
+ $bold spinh '$ $bold spinh$
+
+Using cvr:
+ $bold spinv '$ $bold spinv$
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+\fBorhi\fR' and \fBorhi\fR are the values of the horizontal resolution in steps
+per inch, before using \fBcpi\fR and after using \fBcpi\fR, respectively.
+Likewise, \fBorvi'\fR and \fBorvi\fR are the values of the vertical resolution
+in steps per inch, before using \fBlpi\fR and after using \fBlpi\fR,
+respectively. Thus, the changes in the dots per inch for dot-matrix graphics
+follow the changes in steps per inch for printer resolution.
+.SS "Section 2-8: Print Quality"
+Many dot-matrix printers can alter the dot spacing of printed text to produce
+near ``letter quality'' printing or ``draft quality'' printing. Usually it is
+important to be able to choose one or the other because the rate of printing
+generally falls off as the quality improves. There are three new strings used
+to describe these capabilities.
+.sp
+.in +2
+.nf
+Print Quality
+
+ snlq Set near-letter quality print
+ snrmq Set normal quality print
+ sdrfq Set draft quality print
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The capabilities are listed in decreasing levels of quality. If a printer
+doesn't have all three levels, one or two of the strings should be left blank
+as appropriate.
+.SS "Section 2-9: Printing Rate and Buffer Size"
+Because there is no standard protocol that can be used to keep a program
+synchronized with a printer, and because modern printers can buffer data before
+printing it, a program generally cannot determine at any time what has been
+printed. Two new numeric capabilities can help a program estimate what has been
+printed.
+.sp
+.in +2
+.nf
+Print Rate/Buffer Size
+
+ cps Nominal print rate in characters per second
+ bufsz Buffer capacity in characters
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+\fBcps\fR is the nominal or average rate at which the printer prints
+characters; if this value is not given, the rate should be estimated at
+one-tenth the prevailing baud rate. \fBbufsz\fR is the maximum number of
+subsequent characters buffered before the guaranteed printing of an earlier
+character, assuming proper flow control has been used. If this value is not
+given it is assumed that the printer does not buffer characters, but prints
+them as they are received.
+.sp
+.LP
+As an example, if a printer has a 1000-character buffer, then sending the
+letter ``a'' followed by 1000 additional characters is guaranteed to cause the
+letter ``a'' to print. If the same printer prints at the rate of 100 characters
+per second, then it should take 10 seconds to print all the characters in the
+buffer, less if the buffer is not full. By keeping track of the characters sent
+to a printer, and knowing the print rate and buffer size, a program can
+synchronize itself with the printer.
+.sp
+.LP
+Note that most printer manufacturers advertise the maximum print rate, not the
+nominal print rate. A good way to get a value to put in for \fBcps\fR is to
+generate a few pages of text, count the number of printable characters, and
+then see how long it takes to print the text.
+.sp
+.LP
+Applications that use these values should recognize the variability in the
+print rate. Straight text, in short lines, with no embedded control sequences
+will probably print at close to the advertised print rate and probably faster
+than the rate in \fBcps\fR. Graphics data with a lot of control sequences, or
+very long lines of text, will print at well below the advertised rate and below
+the rate in \fBcps\fR. If the application is using \fBcps\fR to decide how long
+it should take a printer to print a block of text, the application should pad
+the estimate. If the application is using \fBcps\fR to decide how much text has
+already been printed, it should shrink the estimate. The application will thus
+err in favor of the user, who wants, above all, to see all the output in its
+correct place.
+.SH FILES
+.ne 2
+.na
+\fB\fB/usr/share/lib/terminfo/?/*\fR\fR
+.ad
+.sp .6
+.RS 4n
+compiled terminal description database
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/share/lib/.COREterm/?/*\fR\fR
+.ad
+.sp .6
+.RS 4n
+subset of compiled terminal description database
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/share/lib/tabset/*\fR\fR
+.ad
+.sp .6
+.RS 4n
+tab settings for some terminals, in a format appropriate to be output to the
+terminal (escape sequences that set margins and tabs)
+.RE
+
+.SH SEE ALSO
+.BR ls (1),
+.BR pg (1),
+.BR stty (1),
+.BR tput (1),
+.BR tty (1),
+.BR vi (1),
+.BR printf (3C),
+.BR curses (3CURSES),
+.BR curses (3XCURSES),
+.BR infocmp (8),
+.BR tic (8)
+.SH NOTES
+The most effective way to prepare a terminal description is by imitating the
+description of a similar terminal in \fBterminfo\fR and to build up a
+description gradually, using partial descriptions with a screen oriented
+editor, such as \fBvi\fR, to check that they are correct. To easily test a new
+terminal description the environment variable \fBTERMINFO\fR can be set to the
+pathname of a directory containing the compiled description, and programs will
+look there rather than in \fB/usr/share/lib/terminfo\fR.
diff --git a/usr/src/man/man5/threads.5 b/usr/src/man/man5/threads.5
deleted file mode 100644
index dea66af7b2..0000000000
--- a/usr/src/man/man5/threads.5
+++ /dev/null
@@ -1,495 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 2016 Joyent, Inc.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH THREADS 5 "Mar 27, 2016"
-.SH NAME
-threads, pthreads \- POSIX pthreads, c11, and illumos threads concepts
-.SH SYNOPSIS
-.SS "POSIX"
-.nf
-gcc -D_REENTRANT [ \fIflag\fR... ] \fIfile\fR... [ \fIlibrary\fR... ]
-.fi
-
-.LP
-.nf
-#include <pthread.h>
-.fi
-
-.SS "C11"
-.nf
-gcc -std=c11 -D_REENTRANT [ \fIflag\fR... ] \fIfile\fR... [ \fIlibrary\fR... ]
-.fi
-
-.LP
-.nf
-#include <threads.h>
-.fi
-
-.SS "illumos"
-.nf
-gcc -D_REENTRANT [ \fIflag\fR... ] \fIfile\fR... [ \fIlibrary\fR... ]
-.fi
-
-.LP
-.nf
-#include <sched.h>
-.fi
-
-.LP
-.nf
-#include <thread.h>
-.fi
-
-.SH DESCRIPTION
-A thread is an independent source of execution within a process. Every process
-is created with a single thread, which calls the
-.B main
-function. A process may have multiple threads, all of which are scheduled
-independently by the system and may run concurrently. Threads within a process
-all use the same address space and as a result can access all data in the
-process; however, each thread is created with its own attributes and its own
-stack. When a thread is created, it inherits the signal mask of the thread which
-created it, but it has no pending signals.
-.sp
-.LP
-All threads of execution have their own, independent life time, though it is
-ultimately bounded by the life time of the process. If the process terminates
-for any reason, whether due to a call to \fBexit\fR(3C), the receipt of a fatal
-signal, or some other reason, then all threads within the process are
-terminated. Threads may themselves exit and status information of them may be
-obtained, for more information, see the \fBpthread_detach\fR(3C),
-\fBpthread_join\fR(3C), and \fBpthread_exit\fR(3C) functions, and their
-equivalents as described in the tables later on in the manual.
-.sp
-.LP
-Most hardware platforms do not have any special synchronization for data objects
-which may be accessed concurrently from multiple threads of execution. To avoid
-such problems, programs may use atomic operations (see \fBatomic_ops\fR(3C)) and
-locking primitives, such as mutexes, readers/writer locks, condition variables,
-and semaphores. Note, that depending on the hardware platform, memory
-synchronization may be necessary, for more information, see \fBmembar_ops\fR(3C).
-.LP
-POSIX, C11, and illumos threads each have their own implementation within
-\fBlibc\fR(3LIB). All implementations are interoperable, their functionality
-similar, and can be used within the same application. Only POSIX threads are
-guaranteed to be fully portable to other POSIX-compliant environments. C11
-threads are an optional part of ISO C11 and may not exist on every ISO C11
-platform. POSIX, C11, and illumos threads require different source and include
-files. See \fBSYNOPSIS\fR.
-.SS "Similarities"
-Most of the POSIX and illumos threading functions have counterparts with each
-other. POSIX function names, with the exception of the semaphore names, have a
-"\fBpthread\fR" prefix. Function names for similar POSIX and illumos functions
-have similar endings. Typically, similar POSIX and illumos functions have the
-same number and use of arguments.
-.SS "Differences"
-POSIX pthreads and illumos threads differ in the following ways:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-POSIX threads are more portable.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-POSIX threads establish characteristics for each thread according to
-configurable attribute objects.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-POSIX pthreads implement thread cancellation.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-POSIX pthreads enforce scheduling algorithms.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-POSIX pthreads allow for clean-up handlers for \fBfork\fR(2) calls.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-illumos threads can be suspended and continued.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-illumos threads implement daemon threads, for whose demise the process does not
-wait.
-.RE
-.SS "Comparison to C11 Threads"
-C11 threads are not as functional as either POSIX or illumos threads. C11
-threads only support intra-process locking and do not have any form of
-readers/writer locking or semaphores. In general, POSIX threads will be more
-portable than C11 threads, all POSIX-compliant systems support pthreads;
-however, not all C environments support C11 Threads.
-.sp
-.LP
-In addition to lacking other common synchronization primitives, the ISO/IEC
-standard for C11 threads does not have rich error semantics. In an effort to not
-extend the set of error numbers standardized in ISO/IEC C11, none of the
-routines set errno and instead multiple distinguishable errors, aside from the
-equivalent to ENOMEM and EBUSY, are all squashed into one. As such, users of the
-platform are encouraged to use POSIX threads, unless a portability concern
-dictates otherwise.
-
-.SH FUNCTION COMPARISON
-The following table compares the POSIX pthreads, C11 threads, and illumos
-threads functions. When a comparable interface is not available either in POSIX
-pthreads, C11 threads or illumos threads, a hyphen (\fB-\fR) appears in the
-column.
-.SS "Functions Related to Creation"
-
-.TS
-l l l
-l l l .
-\fBPOSIX\fR \fBillumos\fR \fBC11\fR
-\fBpthread_create()\fR \fBthr_create()\fR \fBthrd_create()\fR
-\fBpthread_attr_init()\fR \fB-\fR \fB-\fR
-\fBpthread_attr_setdetachstate()\fR \fB-\fR \fB-\fR
-\fBpthread_attr_getdetachstate()\fR \fB-\fR \fB-\fR
-\fBpthread_attr_setinheritsched()\fR \fB-\fR \fB-\fR
-\fBpthread_attr_getinheritsched()\fR \fB-\fR \fB-\fR
-\fBpthread_attr_setschedparam()\fR \fB-\fR \fB-\fR
-\fBpthread_attr_getschedparam()\fR \fB-\fR \fB-\fR
-\fBpthread_attr_setschedpolicy()\fR \fB-\fR \fB-\fR
-\fBpthread_attr_getschedpolicy()\fR \fB-\fR \fB-\fR
-\fBpthread_attr_setscope()\fR \fB-\fR \fB-\fR
-\fBpthread_attr_getscope()\fR \fB-\fR \fB-\fR
-\fBpthread_attr_setstackaddr()\fR \fB-\fR \fB-\fR
-\fBpthread_attr_getstackaddr()\fR \fB-\fR \fB-\fR
-\fBpthread_attr_setstacksize()\fR \fB-\fR \fB-\fR
-\fBpthread_attr_getstacksize()\fR \fB-\fR \fB-\fR
-\fBpthread_attr_getguardsize()\fR \fB-\fR \fB-\fR
-\fBpthread_attr_setguardsize()\fR \fB-\fR \fB-\fR
-\fBpthread_attr_destroy()\fR \fB-\fR \fB-\fR
-\fB-\fR \fBthr_min_stack()\fR \fB-\fR
-.TE
-
-.SS "Functions Related to Exit"
-
-.TS
-l l l
-l l l .
-\fBPOSIX\fR \fBillumos\fR \fBC11\fR
-\fBpthread_exit()\fR \fBthr_exit()\fR \fBthrd_exit()\fR
-\fBpthread_join()\fR \fBthr_join()\fR \fBthrd_join()\fR
-\fBpthread_detach()\fR \fB-\fR \fBthrd_detach()\fR
-.TE
-
-.SS "Functions Related to Thread Specific Data"
-
-.TS
-l l l
-l l l .
-\fBPOSIX\fR \fBillumos\fR \fBC11\fR
-\fBpthread_key_create()\fR \fBthr_keycreate()\fR \fBtss_create()\fR
-\fBpthread_setspecific()\fR \fBthr_setspecific()\fR \fBtss_set()\fR
-\fBpthread_getspecific()\fR \fBthr_getspecific()\fR \fBtss_get()\fR
-\fBpthread_key_delete()\fR \fB-\fR \fBtss_delete()\fR
-.TE
-
-.SS "Functions Related to Signals"
-
-.TS
-l l l
-l l l .
-\fBPOSIX\fR \fBillumos\fR \fBC11\fR
-\fBpthread_sigmask()\fR \fBthr_sigsetmask()\fR \fB-\fR
-\fBpthread_kill()\fR \fBthr_kill()\fR \fB-\fR
-.TE
-
-.SS "Functions Related to IDs"
-
-.TS
-l l l
-l l l .
-\fBPOSIX\fR \fBillumos\fR \fBc11\fR
-\fBpthread_self()\fR \fBthr_self()\fR \fBthrd_current()\fR
-\fBpthread_equal()\fR \fB-\fR \fBthrd_equal()\fR
-\fB-\fR \fBthr_main()\fR \fB-\fR
-.TE
-
-.SS "Functions Related to Scheduling"
-
-.TS
-l l l
-l l l .
-\fBPOSIX\fR \fBillumos\fR \fBC11\fR
-\fB-\fR \fBthr_yield()\fR \fBthrd_yield()\fR
-\fB-\fR \fBthr_suspend()\fR \fB-\fR
-\fB-\fR \fBthr_continue()\fR \fB-\fR
-\fBpthread_setconcurrency()\fR \fBthr_setconcurrency()\fR \fB-\fR
-\fBpthread_getconcurrency()\fR \fBthr_getconcurrency()\fR \fB-\fR
-\fBpthread_setschedparam()\fR \fBthr_setprio()\fR \fB-\fR
-\fBpthread_setschedprio()\fR \fBthr_setprio()\fR \fB-\fR
-\fBpthread_getschedparam()\fR \fBthr_getprio()\fR \fB-\fR
-.TE
-
-.SS "Functions Related to Cancellation"
-
-.TS
-l l l
-l l l .
-\fBPOSIX\fR \fBillumos\fR \fBC11\fR
-\fBpthread_cancel()\fR \fB-\fR \fB-\fR
-\fBpthread_setcancelstate()\fR \fB-\fR \fB-\fR
-\fBpthread_setcanceltype()\fR \fB-\fR \fB-\fR
-\fBpthread_testcancel()\fR \fB-\fR \fB-\fR
-\fBpthread_cleanup_pop()\fR \fB-\fR \fB-\fR
-\fBpthread_cleanup_push()\fR \fB-\fR \fB-\fR
-.TE
-
-.SS "Functions Related to Mutexes"
-
-.TS
-l l l
-l l l .
-\fBPOSIX\fR \fBillumos\fR \fBc11\fR
-\fBpthread_mutex_init()\fR \fBmutex_init()\fR \fBmtx_init()\fR
-\fBpthread_mutexattr_init()\fR \fB-\fR \fB-\fR
-\fBpthread_mutexattr_setpshared()\fR \fB-\fR \fB-\fR
-\fBpthread_mutexattr_getpshared()\fR \fB-\fR \fB-\fR
-\fBpthread_mutexattr_setprotocol()\fR \fB-\fR \fB-\fR
-\fBpthread_mutexattr_getprotocol()\fR \fB-\fR \fB-\fR
-\fBpthread_mutexattr_setprioceiling()\fR \fB-\fR \fB-\fR
-\fBpthread_mutexattr_getprioceiling()\fR \fB-\fR \fB-\fR
-\fBpthread_mutexattr_settype()\fR \fB-\fR \fB-\fR
-\fBpthread_mutexattr_gettype()\fR \fB-\fR \fB-\fR
-\fBpthread_mutexattr_setrobust()\fR \fB-\fR \fB-\fR
-\fBpthread_mutexattr_getrobust()\fR \fB-\fR \fB-\fR
-\fBpthread_mutexattr_destroy()\fR \fB-\fR \fBmtx_destroy()\fR
-\fBpthread_mutex_setprioceiling()\fR \fB-\fR \fB-\fR
-\fBpthread_mutex_getprioceiling()\fR \fB-\fR \fB-\fR
-\fBpthread_mutex_lock()\fR \fBmutex_lock()\fR \fBmtx_lock()\fR
-\fBpthread_mutex_timedlock()\fR \fB-\fR \fBmtx_timedlock()\fR
-\fBpthread_mutex_trylock()\fR \fBmutex_trylock()\fR \fBmtx_trylock()\fR
-\fBpthread_mutex_unlock()\fR \fBmutex_unlock()\fR \fBmtx_unlock()\fR
-\fBpthread_mutex_destroy()\fR \fBmutex_destroy()\fR \fBmtx_destroy()\fR
-.TE
-
-.SS "Functions Related to Condition Variables"
-
-.TS
-l l l
-l l l .
-\fBPOSIX\fR \fBillumos\fR \fBC11\fR
-\fBpthread_cond_init()\fR \fBcond_init()\fR \fBcnd_init()\fR
-\fBpthread_condattr_init()\fR \fB-\fR \fB-\fR
-\fBpthread_condattr_setpshared()\fR \fB-\fR \fB-\fR
-\fBpthread_condattr_getpshared()\fR \fB-\fR \fB-\fR
-\fBpthread_condattr_destroy()\fR \fB-\fR \fB-\fR
-\fBpthread_cond_wait()\fR \fBcond_wait()\fR \fBcnd_wait()\fR
-\fBpthread_cond_timedwait()\fR \fBcond_timedwait()\fR \fBcond_timedwait()\fR
-\fBpthread_cond_signal()\fR \fBcond_signal()\fR \fBcnd_signal()\fR
-\fBpthread_cond_broadcast()\fR \fBcond_broadcast()\fR \fBcnd_broadcast()\fR
-\fBpthread_cond_destroy()\fR \fBcond_destroy()\fR \fBcnd_destroy()\fR
-.TE
-
-.SS "Functions Related to Reader/Writer Locking"
-
-.TS
-l l l
-l l l .
-\fBPOSIX\fR \fBillumos\fR \fBC11\fR
-\fBpthread_rwlock_init()\fR \fBrwlock_init()\fR \fB-\fR
-\fBpthread_rwlock_rdlock()\fR \fBrw_rdlock()\fR \fB-\fR
-\fBpthread_rwlock_tryrdlock()\fR \fBrw_tryrdlock()\fR \fB-\fR
-\fBpthread_rwlock_wrlock()\fR \fBrw_wrlock()\fR \fB-\fR
-\fBpthread_rwlock_trywrlock()\fR \fBrw_trywrlock()\fR \fB-\fR
-\fBpthread_rwlock_unlock()\fR \fBrw_unlock()\fR \fB-\fR
-\fBpthread_rwlock_destroy()\fR \fBrwlock_destroy()\fR \fB-\fR
-\fBpthread_rwlockattr_init()\fR \fB-\fR \fB-\fR
-\fBpthread_rwlockattr_destroy()\fR \fB-\fR \fB-\fR
-\fBpthread_rwlockattr_getpshared()\fR \fB-\fR \fB-\fR
-\fBpthread_rwlockattr_setpshared()\fR \fB-\fR \fB-\fR
-.TE
-
-.SS "Functions Related to Semaphores"
-
-.TS
-l l l
-l l l .
-\fBPOSIX\fR \fBillumos\fR \fBC11\fR
-\fBsem_init()\fR \fBsema_init()\fR \fB-\fR
-\fBsem_open()\fR \fB-\fR \fB-\fR
-\fBsem_close()\fR \fB-\fR \fB-\fR
-\fBsem_wait()\fR \fBsema_wait()\fR \fB-\fR
-\fBsem_trywait()\fR \fBsema_trywait()\fR \fB-\fR
-\fBsem_post()\fR \fBsema_post()\fR \fB-\fR
-\fBsem_getvalue()\fR \fB-\fR \fB-\fR
-\fBsem_unlink()\fR \fB-\fR \fB-\fR
-\fBsem_destroy()\fR \fBsema_destroy()\fR \fB-\fR
-.TE
-
-.SS "Functions Related to fork(\|) Clean Up"
-
-.TS
-l l l
-l l l .
-\fBPOSIX\fR \fBillumos\fR \fBC11\fR
-\fBpthread_atfork()\fR \fB-\fR \fB-\fR
-.TE
-
-.SS "Functions Related to Limits"
-
-.TS
-l l l
-l l l .
-\fBPOSIX\fR \fBillumos\fR \fBC11\fR
-\fBpthread_once()\fR \fB-\fR \fBcall_once()\fR
-.TE
-
-.SS "Functions Related to Debugging"
-
-.TS
-l l l
-l l l .
-\fBPOSIX\fR \fBillumos\fR \fBC11\fR
-\fB-\fR \fBthr_stksegment()\fR \fB-\fR
-.TE
-
-.SH LOCKING
-.SS "Synchronization"
-Multithreaded behavior is asynchronous, and therefore, optimized for
-concurrent and parallel processing. As threads, always from within the same
-process and sometimes from multiple processes, share global data with each
-other, they are not guaranteed exclusive access to the shared data at any point
-in time. Securing mutually exclusive access to shared data requires
-synchronization among the threads. Both POSIX and illumos implement four
-synchronization mechanisms: mutexes, condition variables, reader/writer locking
-(\fIoptimized frequent-read occasional-write mutex\fR), and semaphores, where as
-C11 threads only implement two mechanisms: mutexes and condition variables.
-.sp
-.LP
-Synchronizing multiple threads diminishes their concurrency. The coarser the
-grain of synchronization, that is, the larger the block of code that is locked,
-the lesser the concurrency.
-.SS "MT \fBfork()\fR"
-If a threads program calls \fBfork\fR(2), it implicitly calls \fBfork1\fR(2),
-which replicates only the calling thread. Should there be any outstanding
-mutexes throughout the process, the application should call
-\fBpthread_atfork\fR(3C) to wait for and acquire those mutexes prior to calling
-\fBfork()\fR.
-.SH SCHEDULING
-.SS "POSIX Threads"
-illumos supports the following three POSIX scheduling policies:
-.sp
-.ne 2
-.na
-\fB\fBSCHED_OTHER\fR\fR
-.ad
-.RS 15n
-Traditional Timesharing scheduling policy. It is based on the timesharing (TS)
-scheduling class.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSCHED_FIFO\fR\fR
-.ad
-.RS 15n
-First-In-First-Out scheduling policy. Threads scheduled to this policy, if not
-preempted by a higher priority, will proceed until completion. Such threads are
-in real-time (RT) scheduling class. The calling process must have a effective
-user \fBID\fR of \fB0\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSCHED_RR\fR\fR
-.ad
-.RS 15n
-Round-Robin scheduling policy. Threads scheduled to this policy, if not
-preempted by a higher priority, will execute for a time period determined by
-the system. Such threads are in real-time (RT) scheduling class and the calling
-process must have a effective user \fBID\fR of \fB0\fR.
-.RE
-
-.sp
-.LP
-In addition to the POSIX-specified scheduling policies above, illumos also
-supports these scheduling policies:
-.sp
-.ne 2
-.na
-\fB\fBSCHED_IA\fR\fR
-.ad
-.RS 13n
-Threads are scheduled according to the Inter-Active Class (IA) policy as
-described in \fBpriocntl\fR(2).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSCHED_FSS\fR\fR
-.ad
-.RS 13n
-Threads are scheduled according to the Fair-Share Class (FSS) policy as
-described in \fBpriocntl\fR(2).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSCHED_FX\fR\fR
-.ad
-.RS 13n
-Threads are scheduled according to the Fixed-Priority Class (FX) policy as
-described in \fBpriocntl\fR(2).
-.RE
-
-.SS "illumos Threads"
-Only scheduling policy supported is \fBSCHED_OTHER\fR, which is timesharing,
-based on the \fBTS\fR scheduling class.
-.SH ERRORS
-In a multithreaded application, \fBEINTR\fR can be returned from blocking
-system calls when another thread calls \fBforkall\fR(2).
-.SH USAGE
-.SS "\fB-mt\fR compiler option"
-The \fB-mt\fR compiler option compiles and links for multithreaded code. It
-compiles source files with \(mi\fBD_REENTRANT\fR and augments the set of
-support libraries properly.
-.sp
-.LP
-Users of other compilers such as gcc and clang should manually set
-\(mi\fBD_REENTRANT\fR on the compilation line. There are no other libraries or
-flags necessary.
-.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-MT-Level MT-Safe, Fork 1-Safe
-.TE
-
-.SH SEE ALSO
-\fBcrle\fR(1), \fBfork\fR(2), \fBpriocntl\fR(2), \fBlibpthread\fR(3LIB),
-\fBlibrt\fR(3LIB), \fBlibthread\fR(3LIB), \fBpthread_atfork\fR(3C),
-\fBpthread_create\fR(3C), \fBattributes\fR(5), \fBstandards\fR(5)
-.sp
-.LP
-\fILinker and Libraries Guide\fR
diff --git a/usr/src/man/man5/timerfd.5 b/usr/src/man/man5/timerfd.5
deleted file mode 100644
index 3229095b49..0000000000
--- a/usr/src/man/man5/timerfd.5
+++ /dev/null
@@ -1,47 +0,0 @@
-.\"
-.\" This file and its contents are supplied under the terms of the
-.\" Common Development and Distribution License ("CDDL"), version 1.0.
-.\" You may only use this file in accordance with the terms of version
-.\" 1.0 of the CDDL.
-.\"
-.\" A full copy of the text of the CDDL should have accompanied this
-.\" source. A copy of the CDDL is also available via the Internet at
-.\" http://www.illumos.org/license/CDDL.
-.\"
-.\"
-.\" Copyright (c) 2015, Joyent, Inc. All Rights Reserved.
-.\"
-.Dd Feb 23, 2015
-.Dt TIMERFD 5
-.Os
-.Sh NAME
-.Nm timerfd
-.Nd Linux-compatible timer notification facility
-.Sh SYNOPSIS
-.In sys/timerfd.h
-.Sh DESCRIPTION
-.Nm
-is a Linux-borne facility for creating POSIX timers and
-receiving their subsequent events via a file descriptor.
-The facility itself is arguably unnecessary:
-portable code can either use the timeout value present in
-.Xr poll 2 /
-.Xr port_get 3C
-or -- if this is deemed of unacceptably poor resolution -- create a POSIX timer
-via
-.Xr timer_create 3C
-and use the resulting signal to induce an
-.Sy EINTR
-to polling threads. (For code that need not be
-portable, the
-.Sy SIGEV_PORT
-signal notification allows for explicit, event-oriented timer notification to be
-sent to a specified port; see
-.Xr signal.h 3HEAD
-for details.) This facility therefore exists only to accommodate Linux-borne
-applications and binaries; it is compatible with its Linux antecedent in both
-binary interface and in semantics.
-.Sh SEE ALSO
-.Xr timerfd_create 3C ,
-.Xr timerfd_gettime 3C ,
-.Xr timerfd_settime 3C
diff --git a/usr/src/man/man5/timezone.5 b/usr/src/man/man5/timezone.5
new file mode 100644
index 0000000000..6784db58be
--- /dev/null
+++ b/usr/src/man/man5/timezone.5
@@ -0,0 +1,65 @@
+'\" te
+.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH TIMEZONE 5 "November 22, 2021"
+.SH NAME
+timezone \- default timezone data base
+.SH SYNOPSIS
+.nf
+\fB/etc/timezone\fR
+.fi
+
+.SH DESCRIPTION
+The timezone file contains information regarding the default timezone for each
+host in a domain. Alternatively, a single default line for the entire domain
+may be specified. Each entry has the format:
+.sp
+.in +2
+.nf
+\fITimezone-name official-host-or-domain-name\fR
+.fi
+.in -2
+
+.sp
+.LP
+Items are separated by any number of blanks and/or TAB characters. A `#'
+indicates the beginning of a comment; characters up to the end of the line are
+not interpreted by routines which search the file. The timezone is a pathname
+relative to the directory \fB/usr/share/lib/zoneinfo\fR.
+.sp
+.LP
+This file is not actually referenced by any system software; it is merely used
+as a source file to construct the \fBNIS\fR \fBtimezone.byname\fR map, which
+was used by the installer in older releases of Solaris.
+.sp
+.LP
+The \fBtimezone\fR file does not set the timezone environment variable
+\fBTZ\fR. See \fBTIMEZONE\fR(5) for information to set the \fBTZ\fR environment
+variable.
+.SH EXAMPLES
+\fBExample 1 \fRTypical timezone line
+.sp
+.LP
+Here is a typical line from the \fB/etc/timezone\fR file:
+
+.sp
+.in +2
+.nf
+US/Eastern East.Example.COM #Host on East Coast
+.fi
+.in -2
+.sp
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/etc/timezone\fR\fR
+.ad
+.RS 17n
+
+.RE
+
+.SH SEE ALSO
+.BR TIMEZONE (5)
diff --git a/usr/src/man/man5/tnf_kernel_probes.5 b/usr/src/man/man5/tnf_kernel_probes.5
new file mode 100644
index 0000000000..d01df72197
--- /dev/null
+++ b/usr/src/man/man5/tnf_kernel_probes.5
@@ -0,0 +1,949 @@
+'\" te
+.\" Copyright 1999 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH TNF_KERNEL_PROBES 5 "June 20, 2021"
+.SH NAME
+tnf_kernel_probes \- TNF kernel probes
+.SH DESCRIPTION
+The set of probes (trace instrumentation points) available in the standard
+kernel. The probes log trace data to a kernel trace buffer in Trace Normal
+Form (TNF). Kernel probes are controlled by \fBprex\fR(1). A snapshot of the
+kernel trace buffer can be made using \fBtnfxtract\fR(1) and examined using
+\fBtnfdump\fR(1).
+.sp
+.LP
+Each probe has a \fIname\fR and is associated with a set of symbolic
+\fIkeys\fR, or \fIcategories\fR. These are used to select and control probes
+from \fBprex\fR(1). A probe that is enabled for tracing generates a \fBTNF\fR
+record, called an \fIevent record\fR. An event record contains two common
+members and may contain other probe-specific data members.
+.SS "Common Members"
+.in +2
+.nf
+\fBtnf_probe_event\fR \fItag\fR
+\fBtnf_time_delta\fR \fItime_delta\fR
+.fi
+.in -2
+
+.sp
+.ne 2
+.na
+\fB\fItag\fR\fR
+.ad
+.RS 14n
+Encodes \fBTNF\fR references to two other records:
+.sp
+.ne 2
+.na
+\fB\fItag\fR\fR
+.ad
+.RS 12n
+Describes the layout of the event record.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIschedule\fR\fR
+.ad
+.RS 12n
+Identifies the writing thread and also contains a 64-bit base time in
+nanoseconds.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fItime_delta\fR\fR
+.ad
+.RS 14n
+A 32-bit time offset from the base time; the sum of the two times is the actual
+time of the event.
+.RE
+
+.SS "Threads"
+.SS "\fBthread_create\fR"
+.in +2
+.nf
+\fBtnf_kthread_id\fR \fItid\fR
+\fBtnf_pid\fR \fIpid\fR
+\fBtnf_symbol\fR \fIstart_pc\fR
+.fi
+.in -2
+
+.sp
+.LP
+Thread creation event.
+.sp
+.ne 2
+.na
+\fB\fItid\fR\fR
+.ad
+.RS 12n
+The thread identifier for the new thread.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIpid\fR\fR
+.ad
+.RS 12n
+The process identifier for the new thread.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIstart_pc\fR\fR
+.ad
+.RS 12n
+The kernel address of its start routine.
+.RE
+
+.SS "\fBthread_state\fR"
+.in +2
+.nf
+\fBtnf_kthread_id\fR \fItid\fR
+\fBtnf_microstate\fR \fIstate\fR
+.fi
+.in -2
+
+.sp
+.LP
+Thread microstate transition events.
+.sp
+.ne 2
+.na
+\fB\fItid\fR\fR
+.ad
+.RS 9n
+Optional; if it is absent, the event is for the writing thread, otherwise the
+event is for the specified thread.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIstate\fR\fR
+.ad
+.RS 9n
+Indicates the thread state:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Running in user mode.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Running in system mode.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Asleep waiting for a user-mode lock.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Asleep on a kernel object.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Runnable (waiting for a cpu).
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Stopped.
+.RE
+The values of this member are defined in <\fBsys/msacct.h\fR>. Note that to
+reduce trace output, transitions between the \fIsystem\fR and \fIuser\fR
+microstates that are induced by system calls are not traced. This information
+is implicit in the system call entry and exit events.
+.RE
+
+.SS "thread_exit"
+Thread termination event for writing thread. This probe has no data members
+other than the common members.
+.SS "Scheduling"
+\fB\fR
+.SS "thread_queue"
+.in +2
+.nf
+\fBtnf_kthread_id\fR \fItid\fR
+\fBtnf_cpuid\fR \fIcpuid\fR
+\fBtnf_long\fR \fIpriority\fR
+\fBtnf_ulong\fR \fIqueue_length\fR
+.fi
+.in -2
+
+.sp
+.LP
+Thread scheduling events. These are triggered when a runnable thread is placed
+on a dispatch queue.
+.sp
+.ne 2
+.na
+\fB\fIcpuid\fR\fR
+.ad
+.RS 16n
+Specifies the cpu to which the queue is attached.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIpriority\fR\fR
+.ad
+.RS 16n
+The (global) dispatch priority of the thread.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIqueue_length\fR\fR
+.ad
+.RS 16n
+The current length of the cpu's dispatch queue.
+.RE
+
+.SS "Blocking"
+.SS "\fBthread_block\fR"
+.in +2
+.nf
+\fBtnf_opaque\fR \fIreason\fR
+\fBtnf_symbols\fR \fIstack\fR
+.fi
+.in -2
+
+.sp
+.LP
+Thread blockage event. This probe captures a partial stack backtrace when the
+current thread blocks.
+.sp
+.ne 2
+.na
+\fB\fIreason\fR\fR
+.ad
+.RS 11n
+The address of the object on which the thread is blocking.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIsymbols\fR\fR
+.ad
+.RS 11n
+References a \fBTNF\fR array of kernel addresses representing the PCs on the
+stack at the time the thread blocks.
+.RE
+
+.SS "System Calls"
+.SS "\fBsyscall_start\fR"
+.in +2
+.nf
+\fBtnf_sysnum\fR \fIsysnum\fR
+.fi
+.in -2
+
+.sp
+.LP
+System call entry event.
+.sp
+.ne 2
+.na
+\fB\fIsysnum\fR\fR
+.ad
+.RS 10n
+The system call number. The writing thread implicitly enters the \fIsystem\fR
+microstate with this event.
+.RE
+
+.SS "\fBsyscall_end\fR"
+.in +2
+.nf
+\fBtnf_long\fR \fIrval1\fR
+\fBtnf_long\fR \fIrval2\fR
+\fBtnf_long\fR \fIerrno\fR
+.fi
+.in -2
+
+.sp
+.LP
+System call exit event.
+.sp
+.ne 2
+.na
+\fB\fIrval1\fR and \fIrval2\fR\fR
+.ad
+.RS 19n
+The two return values of the system call
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIerrno\fR\fR
+.ad
+.RS 19n
+The error return.
+.RE
+
+.sp
+.LP
+The writing thread implicitly enters the \fIuser\fR microstate with this event.
+.SS "Page Faults"
+.SS "\fBaddress_fault\fR"
+.in +2
+.nf
+\fBtnf_opaque\fR \fIaddress\fR
+\fBtnf_fault_type\fR \fIfault_type\fR
+\fBtnf_seg_access\fR \fIaccess\fR
+.fi
+.in -2
+
+.sp
+.LP
+Address-space fault event.
+.sp
+.ne 2
+.na
+\fB\fIaddress\fR\fR
+.ad
+.RS 14n
+Gives the faulting virtual address.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIfault_type\fR\fR
+.ad
+.RS 14n
+Gives the fault type: invalid page, protection fault, software requested
+locking or unlocking.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIaccess\fR\fR
+.ad
+.RS 14n
+Gives the desired access protection: read, write, execute or create. The values
+for these two members are defined in <\fBvm/seg_enum.h\fR>.
+.RE
+
+.SS "\fBmajor_fault\fR"
+.in +2
+.nf
+\fBtnf_opaque\fR \fIvnode\fR
+\fBtnf_offset\fR \fIoffset\fR
+.fi
+.in -2
+
+.sp
+.LP
+Major page fault event. The faulting page is mapped to the file given by the
+\fIvnode\fR member, at the given \fIoffset\fR into the file. (The faulting
+virtual address is in the most recent \fBaddress_fault\fR event for the writing
+thread.)
+.SS "\fBanon_private\fR"
+.in +2
+.nf
+\fBtnf_opaque\fR \fIaddress\fR
+.fi
+.in -2
+
+.sp
+.LP
+Copy-on-write page fault event.
+.sp
+.ne 2
+.na
+\fB\fIaddress\fR\fR
+.ad
+.RS 11n
+The virtual address at which the new page is mapped.
+.RE
+
+.SS "\fBanon_zero\fR"
+.in +2
+.nf
+\fBtnf_opaque\fR \fIaddress\fR
+.fi
+.in -2
+
+.sp
+.LP
+Zero-fill page fault event.
+.sp
+.ne 2
+.na
+\fB\fIaddress\fR\fR
+.ad
+.RS 11n
+The virtual address at which the new page is mapped.
+.RE
+
+.SS "\fBpage_unmap\fR"
+.in +2
+.nf
+\fBtnf_opaque\fR \fIvnode\fR
+\fBtnf_offset\fR \fIoffset\fR
+.fi
+.in -2
+
+.sp
+.LP
+Page unmapping event. This probe marks the unmapping of a file system page
+from the system.
+.sp
+.ne 2
+.na
+\fB\fIvnode\fR and \fIoffset\fR\fR
+.ad
+.RS 20n
+Identifies the file and offset of the page being unmapped.
+.RE
+
+.SS "Pageins and Pageouts"
+.SS "\fBpagein\fR"
+.in +2
+.nf
+\fBtnf_opaque\fR \fIvnode\fR
+\fBtnf_offset\fR \fIoffset\fR
+\fBtnf_size\fR \fIsize\fR
+.fi
+.in -2
+
+.sp
+.LP
+Pagein start event. This event signals the initiation of pagein I/O.
+.sp
+.ne 2
+.na
+\fB\fIvnode\fR and \fIoffset\fR\fR
+.ad
+.RS 18n
+Identifies the file and offset to be paged in.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIsize\fR\fR
+.ad
+.RS 18n
+Specifies the number of bytes to be paged in.
+.RE
+
+.SS "\fBpageout\fR"
+.in +2
+.nf
+\fBtnf_opaque\fR \fIvnode\fR
+\fBtnf_ulong\fR \fIpages_pageout\fR
+\fBtnf_ulong\fR \fIpages_freed\fR
+\fBtnf_ulong\fR \fIpages_reclaimed\fR
+.fi
+.in -2
+
+.sp
+.LP
+Pageout completion event. This event signals the completion of pageout I/O.
+.sp
+.ne 2
+.na
+\fB\fIvnode\fR\fR
+.ad
+.RS 19n
+Identifies the file of the pageout request.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIpages_pageout\fR\fR
+.ad
+.RS 19n
+The number of pages written out.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIpages_freed\fR\fR
+.ad
+.RS 19n
+The number of pages freed after being written out.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIpages_reclaimed\fR\fR
+.ad
+.RS 19n
+The number of pages reclaimed after being written out.
+.RE
+
+.SS "Page Daemon (Page Stealer)"
+.SS "\fBpageout_scan_start\fR"
+.in +2
+.nf
+\fBtnf_ulong\fR \fIpages_free\fR
+\fBtnf_ulong\fR \fIpages_needed\fR
+.fi
+.in -2
+
+.sp
+.LP
+Page daemon scan start event. This event signals the beginning of one
+iteration of the page daemon.
+.sp
+.ne 2
+.na
+\fB\fIpages_free\fR\fR
+.ad
+.RS 16n
+The number of free pages in the system.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIpages_needed\fR\fR
+.ad
+.RS 16n
+The number of pages desired free.
+.RE
+
+.SS "\fBpageout_scan_end\fR"
+.in +2
+.nf
+\fBtnf_ulong\fR \fIpages_free\fR
+\fBtnf_ulong\fR \fIpages_scanned\fR
+.fi
+.in -2
+
+.sp
+.LP
+Page daemon scan end event. This event signals the end of one iteration of the
+page daemon.
+.sp
+.ne 2
+.na
+\fB\fIpages_free\fR\fR
+.ad
+.RS 17n
+The number of free pages in the system.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIpages_scanned\fR\fR
+.ad
+.RS 17n
+The number of pages examined by the page daemon. (Potentially more pages will
+be freed when any queued pageout requests complete.)
+.RE
+
+.SS "Swapper"
+.SS "\fBswapout_process\fR"
+.in +2
+.nf
+\fBtnf_pid\fR \fIpid\fR
+\fBtnf_ulong\fR \fIpage_count\fR
+.fi
+.in -2
+
+.sp
+.LP
+Address space swapout event. This event marks the swapping out of a process
+address space.
+.sp
+.ne 2
+.na
+\fB\fIpid\fR\fR
+.ad
+.RS 14n
+Identifies the process.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIpage_count\fR\fR
+.ad
+.RS 14n
+Reports the number of pages either freed or queued for pageout.
+.RE
+
+.SS "\fBswapout_lwp\fR"
+.in +2
+.nf
+\fBtnf_pid\fR \fIpid\fR
+\fBtnf_lwpid\fR \fIlwpid\fR
+\fBtnf_kthread_id\fR \fItid\fR
+\fBtnf_ulong\fR \fIpage_count\fR
+.fi
+.in -2
+
+.sp
+.LP
+Light-weight process swapout event. This event marks the swapping out of an
+\fBLWP\fR and its stack.
+.sp
+.ne 2
+.na
+\fB\fIpid\fR\fR
+.ad
+.RS 14n
+The \fBLWP's\fR process identifier
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIlwpid\fR\fR
+.ad
+.RS 14n
+The \fBLWP\fR identifier
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fItid\fR \fImember\fR\fR
+.ad
+.RS 14n
+The \fBLWP's\fR kernel thread identifier.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIpage_count\fR\fR
+.ad
+.RS 14n
+The number of pages swapped out.
+.RE
+
+.SS "\fBswapin_lwp\fR"
+.in +2
+.nf
+\fBtnf_pid\fR \fIpid\fR
+\fBtnf_lwpid\fR \fIlwpid\fR
+\fBtnf_kthread_id\fR \fItid\fR
+\fBtnf_ulong\fR \fIpage_count\fR
+.fi
+.in -2
+
+.sp
+.LP
+Light-weight process swapin event. This event marks the swapping in of an
+\fBLWP\fR and its stack.
+.sp
+.ne 2
+.na
+\fB\fIpid\fR\fR
+.ad
+.RS 14n
+The \fBLWP's\fR process identifier.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIlwpid\fR\fR
+.ad
+.RS 14n
+The \fBLWP\fR identifier.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fItid\fR\fR
+.ad
+.RS 14n
+The \fBLWP's\fR kernel thread identifier.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIpage_count\fR\fR
+.ad
+.RS 14n
+The number of pages swapped in.
+.RE
+
+.SS "Local I/O"
+.SS "\fBstrategy\fR"
+.in +2
+.nf
+\fBtnf_device\fR \fIdevice\fR
+\fBtnf_diskaddr\fR \fIblock\fR
+\fBtnf_size\fR \fIsize\fR
+\fBtnf_opaque\fR \fIbuf\fR
+\fBtnf_bioflags\fR \fI flags\fR
+.fi
+.in -2
+
+.sp
+.LP
+Block I/O strategy event. This event marks a call to the \fBstrategy\fR(9E)
+function of a block device driver.
+.sp
+.ne 2
+.na
+\fB\fIdevice\fR\fR
+.ad
+.RS 10n
+Contains the major and minor numbers of the device.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIblock\fR\fR
+.ad
+.RS 10n
+The logical block number to be accessed on the device.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIsize\fR\fR
+.ad
+.RS 10n
+The size of the I/O request.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIbuf\fR\fR
+.ad
+.RS 10n
+The kernel address of the \fBbuf\fR(9S) structure associated with the transfer.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIflags\fR\fR
+.ad
+.RS 10n
+The \fBbuf\fR(9S) flags associated with the transfer.
+.RE
+
+.SS "\fBbiodone\fR"
+.in +2
+.nf
+\fBtnf_device\fR \fIdevice\fR
+\fBtnf_diskaddr\fR \fIblock\fR
+\fBtnf_opaque\fR \fIbuf\fR
+.fi
+.in -2
+
+.sp
+.LP
+Buffered I/O completion event. This event marks calls to the \fBbiodone\fR(9F)
+function.
+.sp
+.ne 2
+.na
+\fB\fIdevice\fR\fR
+.ad
+.RS 10n
+Contains the major and minor numbers of the device.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIblock\fR\fR
+.ad
+.RS 10n
+The logical block number accessed on the device.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIbuf\fR\fR
+.ad
+.RS 10n
+The kernel address of the \fBbuf\fR(9S) structure associated with the transfer.
+.RE
+
+.SS "\fBphysio_start\fR"
+.in +2
+.nf
+\fBtnf_device\fR \fIdevice\fR
+\fBtnf_offset\fR \fIoffset\fR
+\fBtnf_size\fR \fIsize\fR
+\fBtnf_bioflags\fR \fIrw\fR
+.fi
+.in -2
+
+.sp
+.LP
+Raw I/O start event. This event marks entry into the \fBphysio\fR(9F)
+function which performs unbuffered I/O.
+.sp
+.ne 2
+.na
+\fB\fIdevice\fR\fR
+.ad
+.RS 10n
+Contains the major and minor numbers of the device of the transfer.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIoffset\fR\fR
+.ad
+.RS 10n
+The logical offset on the device for the transfer.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIsize\fR\fR
+.ad
+.RS 10n
+The number of bytes to be transferred.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIrw\fR\fR
+.ad
+.RS 10n
+The direction of the transfer: read or write (see \fBbuf\fR(9S)).
+.RE
+
+.SS "\fBphysio_end\fR"
+.in +2
+.nf
+\fBtnf_device\fR \fIdevice\fR
+.fi
+.in -2
+
+.sp
+.LP
+Raw I/O end event. This event marks exit from the \fBphysio\fR(9F) function.
+.sp
+.ne 2
+.na
+\fB\fIdevice\fR\fR
+.ad
+.RS 10n
+The major and minor numbers of the device of the transfer.
+.RE
+
+.SH USAGE
+Use the \fBprex\fR utility to control kernel probes. The standard \fBprex\fR
+commands to list and manipulate probes are available to you, along with
+commands to set up and manage kernel tracing.
+.sp
+.LP
+Kernel probes write trace records into a kernel trace buffer. You must copy the
+buffer into a TNF file for post-processing; use the \fBtnfxtract\fR utility for
+this.
+.sp
+.LP
+You use the \fBtnfdump\fR utility to examine a kernel trace file. This is
+exactly the same as examining a user-level trace file.
+.sp
+.LP
+The steps you typically follow to take a kernel trace are:
+.RS +4
+.TP
+1.
+Become superuser (\fBsu\fR).
+.RE
+.RS +4
+.TP
+2.
+Allocate a kernel trace buffer of the desired size (\fBprex\fR).
+.RE
+.RS +4
+.TP
+3.
+Select the probes you want to trace and enable (\fBprex\fR).
+.RE
+.RS +4
+.TP
+4.
+Turn kernel tracing on (\fBprex\fR).
+.RE
+.RS +4
+.TP
+5.
+Run your application.
+.RE
+.RS +4
+.TP
+6.
+Turn kernel tracing off (\fBprex\fR).
+.RE
+.RS +4
+.TP
+7.
+Extract the kernel trace buffer (\fBtnfxtract\fR).
+.RE
+.RS +4
+.TP
+8.
+Disable all probes (\fBprex\fR).
+.RE
+.RS +4
+.TP
+9.
+Deallocate the kernel trace buffer (\fBprex\fR).
+.RE
+.RS +4
+.TP
+10.
+Examine the trace file (\fBtnfdump\fR).
+.RE
+.sp
+.LP
+A convenient way to follow these steps is to use two shell windows; run an
+interactive \fBprex\fR session in one, and run your application and
+\fBtnfxtract\fR in the other.
+.SH SEE ALSO
+.BR prex (1),
+.BR tnfdump (1),
+.BR tnfxtract (1),
+.BR TNF_PROBE (3TNF),
+.BR libtnfctl (3TNF),
+.BR tracing (3TNF),
+.BR strategy (9E),
+.BR biodone (9F),
+.BR physio (9F),
+.BR buf (9S)
diff --git a/usr/src/man/man5/trusted_extensions.5 b/usr/src/man/man5/trusted_extensions.5
deleted file mode 100644
index 8f6d5a97df..0000000000
--- a/usr/src/man/man5/trusted_extensions.5
+++ /dev/null
@@ -1,40 +0,0 @@
-'\" te
-.\" Copyright 2017 Peter Tribble
-.\" Copyright (c) 2007, Sun Microsystems Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH TRUSTED_EXTENSIONS 5 "Aug 3, 2017"
-.SH NAME
-trusted_extensions \- Trusted Extensions
-.SH DESCRIPTION
-.LP
-Trusted Extensions software is a specific configuration
-of the Operating System. Trusted Extensions
-provides labels for local objects and processes,
-for zones and file systems, and for network
-communications. These labels are used to implement a Multilevel Security (MLS)
-policy that restricts the flow of information based on label relationships. In
-contrast to Discretionary Access Control (DAC) based on ownership, the MLS
-policy enforced by Trusted Extensions is an example of Mandatory Access Control
-(MAC).
-.sp
-.LP
-By default, Trusted Extensions software is disabled. It is enabled and disabled
-(but not configured) by the \fBlabeld\fR(1M) service, identified by the FMRI:
-.sp
-.in +2
-.nf
-svc:/system/labeld:default
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The system must be
-rebooted after enabling or disabling \fBlabeld\fR to activate or deactivate
-Trusted Extensions software.
-.SH SEE ALSO
-.LP
-\fBlabeld\fR(1M), \fBlabel_encodings\fR(4), \fBlabels\fR(5)
diff --git a/usr/src/man/man5/ts_dptbl.5 b/usr/src/man/man5/ts_dptbl.5
new file mode 100644
index 0000000000..475dd14ccc
--- /dev/null
+++ b/usr/src/man/man5/ts_dptbl.5
@@ -0,0 +1,455 @@
+'\" te
+.\" Copyright 1989 AT&T, Copyright (c) 2002, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH TS_DPTBL 5 "Oct 15, 2002"
+.SH NAME
+ts_dptbl \- time-sharing dispatcher parameter table
+.SH DESCRIPTION
+The process scheduler (or dispatcher) is the portion of the kernel that
+controls allocation of the \fBCPU\fR to processes. The scheduler supports the
+notion of scheduling classes where each class defines a scheduling policy, used
+to schedule processes within that class. Associated with each scheduling class
+is a set of priority queues on which ready to run processes are linked. These
+priority queues are mapped by the system configuration into a set of global
+scheduling priorities which are available to processes within the class. (The
+dispatcher always selects for execution the process with the highest global
+scheduling priority in the system.) The priority queues associated with a given
+class are viewed by that class as a contiguous set of priority levels numbered
+from 0 (lowest priority) to \fIn\fR (highest priority\(ema
+configuration-dependent value). The set of global scheduling priorities that
+the queues for a given class are mapped into might not start at zero and might
+not be contiguous (depending on the configuration).
+.sp
+.LP
+Processes in the time-sharing class which are running in user mode (or in
+kernel mode before going to sleep) are scheduled according to the parameters in
+a time-sharing dispatcher parameter table (\fBts_dptbl\fR). Processes in the
+inter-active scheduling class are also scheduled according to the parameters in
+the time-sharing dispatcher parameter table. (Time-sharing processes and
+inter-active processes running in kernel mode after sleeping are run within a
+special range of priorities reserved for such processes and are not affected by
+the parameters in the \fBts_dptbl\fR until they return to user mode.) The
+\fBts_dptbl\fR consists of an array (\fBconfig_ts_dptbl[]\fR) of parameter
+structures (\fBstruct tsdpent_t\fR), one for each of the \fIn\fR priority
+levels used by time-sharing processes and inter-active processes in user mode.
+The structures are accessed via a pointer, (\fBts_dptbl\fR), to the array. The
+properties of a given priority level \fIi\fR are specified by the \fIi\fRth
+parameter structure in this array (\fBts_dptbl[\fR \fIi\fR\fB]\fR ).
+.sp
+.LP
+A parameter structure consists of the following members. These are also
+described in the \fB/usr/include/sys/ts.h\fR header.
+.sp
+.ne 2
+.na
+\fB\fBts_globpri\fR\fR
+.ad
+.RS 14n
+The global scheduling priority associated with this priority level. The mapping
+between time-sharing priority levels and global scheduling priorities is
+determined at boot time by the system configuration. \fBts_globpri\fR is the
+only member of the \fBts_dptbl\fR which cannot be changed with
+\fBdispadmin\fR(8).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBts_quantum\fR\fR
+.ad
+.RS 14n
+The length of the time quantum allocated to processes at this level in ticks
+(\fBhz\fR).
+.sp
+In the default high resolution clock mode (\fBhires_tick\fR set to \fB1\fR),
+the value of \fBhz\fR is set to \fB1000\fR. If this value is overridden to
+\fB0\fR then \fBhz\fR will instead be \fB100\fR; the number of ticks per
+quantum must then be decreased to maintain the same length of quantum in
+absolute time.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBts_tqexp\fR\fR
+.ad
+.RS 14n
+Priority level of the new queue on which to place a process running at the
+current level if it exceeds its time quantum. Normally this field links to a
+lower priority time-sharing level that has a larger quantum.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBts_slpret\fR\fR
+.ad
+.RS 14n
+Priority level of the new queue on which to place a process, that was
+previously in user mode at this level, when it returns to user mode after
+sleeping. Normally this field links to a higher priority level that has a
+smaller quantum.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBts_maxwait\fR\fR
+.ad
+.RS 14n
+A per process counter, \fBts_dispwait\fR is initialized to zero each time a
+time-sharing or inter-active process is placed back on the dispatcher queue
+after its time quantum has expired or when it is awakened (\fBts_dispwait\fR is
+not reset to zero when a process is preempted by a higher priority process).
+This counter is incremented once per second for each process on a dispatcher or
+sleep queue. If a process' \fBts_dispwait\fR value exceeds the \fBts_maxwait\fR
+value for its level, the process' priority is changed to that indicated by
+\fBts_lwait\fR. The purpose of this field is to prevent starvation.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBts_lwait\fR\fR
+.ad
+.RS 14n
+Move a process to this new priority level if \fBts_dispwait\fR is greater than
+\fBts_maxwait\fR.
+.RE
+
+.sp
+.LP
+An administrator can affect the behavior of the time-sharing portion of the
+scheduler by reconfiguring the \fBts_dptbl\fR. Since processes in the
+time-sharing and inter-active scheduling classes share the same dispatch
+parameter table (\fBts_dptbl\fR), changes to this table will affect both
+scheduling classes. There are two methods available for doing this: reconfigure
+with a loadable module at boot-time or by using \fBdispadmin\fR(8) at
+run-time.
+.SS "ts_dptbl Loadable Module"
+The \fBts_dptbl\fR can be reconfigured with a loadable module which contains a
+new time sharing dispatch table. The module containing the dispatch table is
+separate from the TS loadable module which contains the rest of the
+time-sharing and inter-active software. This is the only method that can be
+used to change the number of time-sharing priority levels or the set of global
+scheduling priorities used by the time-sharing and inter-active classes. The
+relevant procedure and source code is described in the \fBREPLACING THE
+TS_DPTBL LOADABLE MODULE\fR section.
+.SS "dispadmin Configuration File"
+With the exception of \fBts_globpri\fR all of the members of the \fBts_dptbl\fR
+can be examined and modified on a running system using the \fBdispadmin\fR(8)
+command. Invoking \fBdispadmin\fR for the time-sharing or inter-active class
+allows the administrator to retrieve the current \fBts_dptbl\fR configuration
+from the kernel's in-core table, or overwrite the in-core table with values
+from a configuration file. The configuration file used for input to
+\fBdispadmin\fR must conform to the specific format described below.
+.sp
+.LP
+Blank lines are ignored and any part of a line to the right of a \fI#\fR symbol
+is treated as a comment. The first non-blank, non-comment line must indicate
+the resolution to be used for interpreting the \fBts_quantum\fR time quantum
+values. The resolution is specified as
+.sp
+.in +2
+.nf
+\fBRES=\fR\fIres\fR
+.fi
+.in -2
+
+.sp
+.LP
+where \fIres\fR is a positive integer between 1 and 1,000,000,000 inclusive and
+the resolution used is the reciprocal of \fIres\fR in seconds (for example,
+\fBRES=1000\fR specifies millisecond resolution). Although very fine
+(nanosecond) resolution may be specified, the time quantum lengths are rounded
+up to the next integral multiple of the system clock's resolution.
+.sp
+.LP
+The remaining lines in the file are used to specify the parameter values for
+each of the time-sharing priority levels. The first line specifies the
+parameters for time-sharing level 0, the second line specifies the parameters
+for time-sharing level 1, etc. There must be exactly one line for each
+configured time-sharing priority level.
+.SH EXAMPLES
+\fBExample 1 \fRA Sample From a Configuration File
+.sp
+.LP
+The following excerpt from a \fBdispadmin\fR configuration file illustrates the
+format. Note that for each line specifying a set of parameters there is a
+comment indicating the corresponding priority level. These level numbers
+indicate priority within the time-sharing and interactive classes, and the
+mapping between these time-sharing priorities and the corresponding global
+scheduling priorities is determined by the configuration specified in the
+\fBts\fR master file. The level numbers are strictly for the convenience of the
+administrator reading the file and, as with any comment, they are ignored by
+\fBdispadmin\fR. \fBdispadmin\fR assumes that the lines in the file are ordered
+by consecutive, increasing priority level (from 0 to the maximum configured
+time-sharing priority). The level numbers in the comments should normally agree
+with this ordering; if for some reason they don't, however, \fBdispadmin\fR is
+unaffected.
+
+.sp
+.in +2
+.nf
+# Time-Sharing Dispatcher Configuration File RES=1000
+
+
+# ts_quantum ts_tqexp ts_slpret ts_maxwait ts_lwait PRIORITY
+# LEVEL
+500 0 10 5 10 # 0
+500 0 11 5 11 # 1
+500 1 12 5 12 # 2
+500 1 13 5 13 # 3
+500 2 14 5 14 # 4
+500 2 15 5 15 # 5
+450 3 16 5 16 # 6
+450 3 17 5 17 # 7
+\&. . . . . . .
+\&. . . . . . .
+\&. . . . . . .
+50 48 59 5 59 # 58
+50 49 59 5 59 # 59
+.fi
+.in -2
+
+.LP
+\fBExample 2 \fRReplacing The ts_dptbl Loadable Module
+.sp
+.LP
+In order to change the size of the time sharing dispatch table, the loadable
+module which contains the dispatch table information will have to be built. It
+is recommended that you save the existing module before using the following
+procedure.
+
+.RS +4
+.TP
+1.
+Place the dispatch table code shown below in a file called \fBts_dptbl.c\fR
+An example of this file follows.
+.RE
+.RS +4
+.TP
+2.
+Compile the code using the given compilation and link lines supplied.
+.sp
+.in +2
+.nf
+cc -c -0 -D_KERNEL
+ts_dptbl.c
+ld -r -o TS_DPTBL ts_dptbl.o
+.fi
+.in -2
+.sp
+
+.RE
+.RS +4
+.TP
+3.
+Copy the current dispatch table in \fB/kernel/sched\fR to
+\fBTS_DPTBL.bak\fR.
+.RE
+.RS +4
+.TP
+4.
+Replace the current \fBTS_DPTBL\fR in \fB/kernel/sched\fR.
+.RE
+.RS +4
+.TP
+5.
+You will have to make changes in the \fB/etc/system\fR file to reflect the
+changes to the sizes of the tables. See \fBsystem\fR(5). The two variables
+affected are \fBts_maxupri\fR and \fBts_maxkmdpri\fR. The syntax for setting
+these is as follows:
+.sp
+.in +2
+.nf
+set TS:ts_maxupri=(value for max time-sharing user priority)
+set TS:ts_maxkmdpri=(number of kernel mode priorities - 1)
+.fi
+.in -2
+.sp
+
+.RE
+.RS +4
+.TP
+6.
+Reboot the system to use the new dispatch table.
+.RE
+.sp
+.LP
+Great care should be used in replacing the dispatch table using this method. If
+you do not get it right, panics may result, thus making the system unusable.
+
+.sp
+.LP
+The following is an example of a \fBts_dptbl.c\fR file used for building the
+new \fBts_dptbl\fR.
+
+.sp
+.in +2
+.nf
+/* BEGIN ts_dptbl.c */
+#include <sys/proc.h>
+#include <sys/priocntl.h>
+#include <sys/class.h>
+#include <sys/disp.h>
+#include <sys/ts.h>
+#include <sys/rtpriocntl.h>
+/*
+ * This is the loadable module wrapper.
+ */
+#include <sys/modctl.h>
+extern struct mod_ops mod_miscops;
+/*
+ * Module linkage information for the kernel.
+ */
+static struct modlmisc modlmisc = {
+ &mod_miscops, "Time sharing dispatch table"
+};
+static struct modlinkage modlinkage = {
+ MODREV_1, &modlmisc, 0
+};
+_init()
+{
+ return (mod_install(&modlinkage));
+}
+_info(modinfop)
+ struct modinfo *modinfop;
+{
+ return (mod_info(&modlinkage, modinfop));
+}
+/*
+ * array of global priorities used by ts procs sleeping or
+ * running in kernel mode after sleep. Must have at least
+ * 40 values.
+ */
+pri_t config_ts_kmdpris[] = {
+ 60,61,62,63,64,65,66,67,68,69,
+ 70,71,72,73,74,75,76,77,78,79,
+ 80,81,82,83,84,85,86,87,88,89,
+ 90,91,92,93,94,95,96,97,98,99,
+};
+tsdpent_t config_ts_dptbl[] = {
+
+/* glbpri qntm tqexp slprt mxwt lwt */
+
+ 0, 100, 0, 10, 5, 10,
+ 1, 100, 0, 11, 5, 11,
+ 2, 100, 1, 12, 5, 12,
+ 3, 100, 1, 13, 5, 13,
+ 4, 100, 2, 14, 5, 14
+ 5, 100, 2, 15, 5, 15,
+ 6, 100, 3, 16, 5, 16,
+ 7, 100, 3, 17, 5, 17,
+ 8, 100, 4, 18, 5, 18,
+ 9, 100, 4, 19, 5, 19,
+ 10, 80, 5, 20, 5, 20,
+ 11, 80, 5, 21, 5, 21,
+ 12, 80, 6, 22, 5, 22,
+ 13, 80, 6, 23, 5, 23,
+ 14, 80, 7, 24, 5, 24,
+ 15, 80, 7, 25, 5, 25,
+ 16, 80, 8, 26, 5, 26,
+ 17, 80, 8, 27, 5, 27,
+ 18, 80, 9, 28, 5, 28,
+ 19, 80, 9, 29, 5, 29,
+ 20, 60, 10, 30, 5, 30,
+ 21, 60, 11, 31, 5, 31,
+ 22, 60, 12, 32, 5, 33,
+ 24, 60, 14, 34, 5, 34,
+ 25, 60, 15, 35, 5, 35,
+ 26, 60, 16, 36, 5, 36,
+ 27, 60, 17, 37, 5, 37,
+ 28, 60, 18, 38, 5, 38,
+ 29, 60, 19, 39, 5, 39,
+ 30, 40, 20, 40, 5, 40,
+ 31, 40, 21, 41, 5, 41,
+ 32, 40, 22, 42, 5, 42,
+ 33, 40, 23, 43, 5, 43,
+ 34, 40, 24, 44, 5, 44,
+ 35, 40, 25, 45, 5, 45,
+ 36, 40, 26, 46, 5, 46,
+ 37, 40, 27, 47, 5, 47,
+ 38, 40, 28, 48, 5, 48,
+ 39, 40, 29, 49, 5, 49,
+ 40, 20, 30, 50, 5, 50,
+ 41, 20, 31, 50, 5, 50,
+ 42, 20, 32, 51, 5, 51,
+ 43, 20, 33, 51, 5, 51,
+ 44, 20, 34, 52, 5, 52,
+ 45, 20, 35, 52, 5, 52,
+ 46, 20, 36, 53, 5, 53,
+ 47, 20 37, 53, 5, 53,
+ 48, 20, 38, 54, 5, 54,
+ 49, 20, 39, 54, 5, 54,
+ 50, 10, 40, 55, 5, 55,
+ 51, 10, 41, 55, 5, 55,
+ 52, 10, 42, 56, 5, 56,
+ 53, 10, 43, 56, 5, 56,
+ 54, 10, 44, 57, 5, 57,
+ 55, 10, 45, 57, 5, 57,
+ 56, 10, 46, 58, 5, 58,
+ 57, 10, 47, 58, 5, 58,
+ 58, 10, 48, 59, 5, 59,
+ 59, 10, 49, 59, 5, 59,
+
+};
+
+short config_ts_maxumdpri = sizeof (config_ts_dptbl)/16 - 1;
+/*
+ * Return the address of config_ts_dptbl
+ */
+tsdpent_t *
+ts_getdptbl()
+{
+ return (config_ts_dptbl);
+}
+
+/*
+ * Return the address of config_ts_kmdpris
+ */
+ int *
+ ts_getkmdpris()
+{
+ return (config_ts_kmdpris);
+}
+
+/*
+ * Return the address of ts_maxumdpri
+ */
+short
+ts_getmaxumdpri()
+{
+ return (config_ts_maxumdpri);
+}
+
+/* END ts_dptbl.c */
+.fi
+.in -2
+
+.SH SEE ALSO
+.BR priocntl (1),
+.BR priocntl (2),
+.BR system (5),
+.BR dispadmin (8)
+.sp
+.LP
+\fISystem Administration Guide: Basic Administration\fR
+.sp
+.LP
+\fIProgramming Interfaces Guide\fR
+.SH NOTES
+\fBdispadmin\fR does some limited sanity checking on the values supplied in the
+configuration file. The sanity checking is intended to ensure that the new
+\fBts_dptbl\fR values do not cause the system to panic. The sanity checking
+does not attempt to analyze the effect that the new values will have on the
+performance of the system. Unusual \fBts_dptbl\fR configurations may have a
+dramatic negative impact on the performance of the system.
+.sp
+.LP
+No sanity checking is done on the \fBts_dptbl\fR values specified in the
+\fBTS_DPTBL\fR loadable module. Specifying an inconsistent or nonsensical
+\fBts_dptbl\fR configuration through the \fBTS_DPTBL\fR loadable module could
+cause serious performance problems and/or cause the system to panic.
diff --git a/usr/src/man/man5/ttydefs.5 b/usr/src/man/man5/ttydefs.5
new file mode 100644
index 0000000000..f9f5247bf3
--- /dev/null
+++ b/usr/src/man/man5/ttydefs.5
@@ -0,0 +1,87 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 1997, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH TTYDEFS 5 "Jan 27, 1994"
+.SH NAME
+ttydefs \- file contains terminal line settings information for ttymon
+.SH DESCRIPTION
+.sp
+.LP
+\fB/etc/ttydefs\fR is an administrative file that contains records divided into
+fields by colons (":"). This information used by \fBttymon\fR to set up the
+speed and terminal settings for a TTY port.
+.sp
+.LP
+The \fBttydefs\fR file contains the following fields:
+.sp
+.ne 2
+.na
+\fB\fIttylabel\fR\fR
+.ad
+.RS 17n
+The string \fBttymon\fR tries to match against the TTY port's \fIttylabel\fR
+field in the port monitor administrative file. It often describes the speed at
+which the terminal is supposed to run, for example, \fB1200\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIinitial-flags\fR\fR
+.ad
+.RS 17n
+Contains the initial \fBtermio\fR(4I) settings to which the terminal is to be
+set. For example, the system administrator will be able to specify what the
+default erase and kill characters will be. \fIinitial-flags\fR must be
+specified in the syntax recognized by the \fBstty\fR command.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIfinal-flags\fR\fR
+.ad
+.RS 17n
+\fIfinal-flags\fR must be specified in the same format as \fIinitial-flags\fR.
+\fBttymon\fR sets these final settings after a connection request has been made
+and immediately prior to invoking a port's service.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIautobaud\fR\fR
+.ad
+.RS 17n
+If the autobaud field contains the character 'A,' autobaud will be enabled.
+Otherwise, autobaud will be disabled. \fBttymon\fR determines what line speed
+to set the TTY port to by analyzing the carriage returns entered. If autobaud
+has been disabled, the hunt sequence is used for baud rate determination.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fInextlabel\fR\fR
+.ad
+.RS 17n
+If the user indicates that the current terminal setting is not appropriate by
+sending a BREAK, \fBttymon\fR searchs for a \fBttydefs\fR entry whose
+\fIttylabel\fR field matches the \fInextlabel\fR field. If a match is found,
+\fBttymon\fR uses that field as its \fIttylabel\fR field. A series of speeds is
+often linked together in this way into a closed set called a hunt sequence. For
+example, \fB4800\fR may be linked to \fB1200\fR, which in turn is linked to
+\fB2400\fR, which is finally linked to \fB4800\fR.
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR termio (4I),
+.BR sttydefs (8),
+.BR ttymon (8)
+.sp
+.LP
+\fISystem Administration Guide: Basic Administration\fR
diff --git a/usr/src/man/man5/ttysrch.5 b/usr/src/man/man5/ttysrch.5
new file mode 100644
index 0000000000..01312b3076
--- /dev/null
+++ b/usr/src/man/man5/ttysrch.5
@@ -0,0 +1,95 @@
+'\" te
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH TTYSRCH 5 "Feb 23, 1994"
+.SH NAME
+ttysrch \- directory search list for ttyname
+.SH DESCRIPTION
+.sp
+.LP
+\fBttysrch\fR is an optional file that is used by the \fBttyname\fR library
+routine. This file contains the names of directories in \fB/dev\fR that contain
+terminal and terminal-related device files. The purpose of this file is to
+improve the performance of \fBttyname\fR by indicating which subdirectories in
+\fB/dev\fR contain terminal-related device files and should be searched first.
+These subdirectory names must appear on separate lines and must begin with
+\fB/dev\fR. Those path names that do not begin with \fB/dev\fR will be ignored
+and a warning will be sent to the console. Blank lines (lines containing only
+white space) and lines beginning with the comment character "#" will be
+ignored. For each file listed (except for the special entry \fB/dev\fR),
+\fBttyname\fR will recursively search through subdirectories looking for a
+match. If \fB/dev\fR appears in the \fBttysrch\fR file, the \fB/dev\fR
+directory itself will be searched but there will not be a recursive search
+through its subdirectories.
+.sp
+.LP
+When \fBttyname\fR searches through the device files, it tries to find a file
+whose major/minor device number, file system identifier, and inode number match
+that of the file descriptor it was given as an argument. If a match is not
+found, it will settle for a match of just major/minor device and file system
+identifier, if one can be found. However, if the file descriptor is associated
+with a cloned device, this algorithm does not work efficiently because the
+inode number of the device file associated with a clonable device will never
+match the inode number of the file descriptor that was returned by the open of
+that clonable device. To help with these situations, entries can be put into
+the \fB/etc/ttysrch\fR file to improve performance when cloned devices are used
+as terminals on a system (for example, for remote login). However, this is
+only useful if the minor devices related to a cloned device are put into a
+subdirectory. (It is important to note that device files need not exist for
+cloned devices and if that is the case, \fBttyname\fR will eventually fail.) An
+optional second field is used in the \fB/etc/ttysrch\fR file to indicate the
+matching criteria. This field is separated by white space (any combination of
+blanks or tabs). The letter \fBM\fR means major/minor device number, \fBF\fR
+means file system identifier, and \fBI\fR means inode number. If this field is
+not specified for an entry, the default is \fBMFI\fR which means try to match
+on all three. For cloned devices the field should be \fBMF\fR, which indicates
+that it is not necessary to match on the inode number.
+.sp
+.LP
+Without the \fB/etc/ttysrch\fR file, \fBttyname\fR will search the \fB/dev\fR
+directory by first looking in the directories \fB/dev/term\fR, \fB/dev/pts\fR,
+and \fB/dev/xt\fR. If a system has terminal devices installed in directories
+other than these, it may help performance if the \fBttysrch\fR file is created
+and contains that list of directories.
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRA sample display of \fB/etc/ttysrch\fR command.
+.sp
+.LP
+A sample \fB/etc/ttysrch\fR file follows:
+
+.sp
+.in +2
+.nf
+/dev/term MFI
+/dev/pts MFI
+/dev/xt MFI
+/dev/slan MF
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+This file tells \fBttyname\fR that it should first search through those
+directories listed and that when searching through the \fB/dev/slan\fR
+directory, if a file is encountered whose major/minor devices and file system
+identifier match that of the file descriptor argument to \fBttyname\fR, this
+device name should be considered a match.
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/ttysrch\fR\fR
+.ad
+.RS 16n
+
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR ttyname (3C)
diff --git a/usr/src/man/man5/ufsdump.5 b/usr/src/man/man5/ufsdump.5
new file mode 100644
index 0000000000..6fe47d5859
--- /dev/null
+++ b/usr/src/man/man5/ufsdump.5
@@ -0,0 +1,740 @@
+'\" te
+.\" Copyright (c) 1980 Regents of the University of California. All rights reserved. The Berkeley software License Agreement specifies the terms and conditions for redistribution. Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved.
+.TH UFSDUMP 5 "June 19, 2021"
+.SH NAME
+ufsdump, dumpdates \- incremental dump format
+.SH SYNOPSIS
+.nf
+\fB#include <protocols/dumprestore.h>\fR
+.fi
+
+.LP
+.nf
+\fB/etc/dumpdates\fR
+.fi
+
+.SH DESCRIPTION
+Tapes used by \fBufsdump\fR(8) and \fBufsrestore\fR(8) contain:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+a header record
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+two groups of bit map records
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+a group of records describing directories
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+a group of records describing files
+.RE
+.sp
+.LP
+The format of the header record and the format of the first record of each
+description in the \fB<protocols/dumprestore.h>\fR include file are:
+.sp
+.in +2
+.nf
+#define TP_BSIZE_MAX 65536
+#define TP_BSIZE_MIN 1024
+#define ESIZE_SHIFT_MAX 6
+
+#ifdef SUPPORTS_MTB_TAPE_FORMAT
+#define TP_BUFSIZE TP_BSIZE_MAX
+#else
+#define TP_BSIZE 1024
+#define TP_BUFSIZE TP_BSIZE
+#endif /* SUPPORTS_MTB_TAPE_FORMAT */
+
+#define NTREC 10
+#define HIGHDENSITYTREC 32
+#define CARTRIDGETREC 63
+#define TP_NINDIR (TP_BSIZE_MIN/2)
+#define TP_NINOS (TP_NINDIR / sizeof (long))
+#define LBLSIZE 16
+#define NAMELEN 64
+
+#define OFS_MAGIC (int)60011
+#define NFS_MAGIC (int)60012
+#define MTB_MAGIC (int)60013
+#define CHECKSUM (int)84446
+.fi
+.in -2
+
+.sp
+.in +2
+.nf
+union u_data {
+ char s_addrs[TP_NINDIR];
+ int32_t s_inos[TP_NINOS];
+};
+
+union u_shadow {
+ struct s_nonsh {
+ int32_t c_level;
+ char c_filesys[NAMELEN];
+ char c_dev[NAMELEN];
+ char c_host[NAMELEN];
+ } c_nonsh;
+ char c_shadow[1];
+};
+
+union u_spcl {
+ char dummy[TP_BUFSIZE];
+ struct s_spcl {
+ int32_t c_type;
+ time32_t c_date;
+ time32_t c_ddate;
+ int32_t c_volume;
+ daddr32_t c_tapea;
+ ino32_t c_inumber;
+ int32_t c_magic;
+ int32_t c_checksum;
+ struct dinode c_dinode;
+ int32_t c_count;
+ union u_data c_data;
+ char c_label[LBLSIZE];
+ union u_shadow c_shadow;
+ int32_t c_flags;
+ int32_t c_firstrec;
+#ifdef SUPPORTS_MTB_TAPE_FORMAT
+ int32_t c_tpbsize;
+ int32_t c_spare[31];
+#else
+ int32_t c_spare[32];
+#endif /* SUPPORTS_MTB_TAPE_FORMAT */
+} s_spcl;
+} u_spcl;
+.fi
+.in -2
+
+.sp
+.in +2
+.nf
+int32_t c_type;
+time32_t c_date;
+time32_t c_ddate;
+int32_t c_volume;
+daddr32_t c_tapea;
+ino32_t c_inumber;
+int32_t c_magic;
+int32_t c_checksum;
+struct dinode c_dinode;
+int32_t c_count;
+union u_data c_data;
+char c_label[LBLSIZE];
+union u_shadow c_shadow;
+int32_t c_flags;
+int32_t c_firstrec;
+#ifdef SUPPORTS_MTB_TAPE_FORMAT
+int32_t c_tpbsize;
+int32_t c_spare[31];
+#else
+int32_t c_spare[32];
+#endif /*
+ SUPPORTS_MTB_TAPE_FORMAT */
+.fi
+.in -2
+
+.sp
+.in +2
+.nf
+ } s_spcl;
+} u_spcl;
+#define spcl u_spcl.s_spcl
+#define c_addr c_data.s_addrs
+#define c_inos c_data.s_inos
+#define c_level c_shadow.c_nonsh.c_level
+#define c_filesys c_shadow.c_nonsh.c_filesys
+#define c_dev c_shadow.c_nonsh.c_dev
+#define c_host c_shadow.c_nonsh.c_host
+.fi
+.in -2
+
+.sp
+.in +2
+.nf
+#define TS_TAPE 1
+#define TS_INODE 2
+#define TS_ADDR 4
+#define TS_BITS 3
+#define TS_CLRI 6
+#define TS_END 5
+#define TS_EOM 7
+
+#define DR_NEWHEADER 1
+#define DR_INODEINFO 2
+#define DR_REDUMP 4
+#define DR_TRUEINC 8
+#define DR_HASMETA 16
+.fi
+.in -2
+
+.sp
+.LP
+This header describes three formats for the \fBufsdump\fR/\fBufsrestore\fR
+interface:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+An old format, non-MTB, that supports dump sizes of less than 2 terabytes. This
+format is represented by \fBNFS_MAGIC\fR.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+A new format, MTB, that supports dump sizes of greater than 2 terabytes using a
+variable block size and 2 new constants: \fBTP_BSIZE_MIN\fR and
+\fBTP_BSIZE_MAX\fR. This format is represented by \fBMTB_MAGIC\fR.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+A much older format that might be found on existing backup tapes. The
+\fBufsrestore\fR command can restore tapes of this format, but no longer
+generates tapes of this format. Backups in this format have the \fBOFS_MAGIC\fR
+magic number in their tape headers.
+.RE
+.sp
+.LP
+The constants are described as follows:
+.sp
+.ne 2
+.na
+\fB\fBTP_BSIZE\fR\fR
+.ad
+.RS 20n
+Size of file blocks on the dump tapes for the old format. Note that
+\fBTP_BSIZE\fR must be a multiple of \fBDEV_BSIZE\fR This is applicable for
+dumps of type \fBNFS_MAGIC\fR or \fBOFS_MAGIC\fR, but is not applicable for
+dumps of type \fBMTB_MAGIC\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBTP_BSIZE_MIN\fR\fR
+.ad
+.RS 20n
+Minimum size of file blocks on the dump tapes for the new MTB format
+(\fBMTB_MAGIC\fR) only.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBTP_BSIZE_MAX\fR\fR
+.ad
+.RS 20n
+Maximum size of file blocks on the dump tapes for the new MTB format
+(\fBMTB_MAGIC\fR) only.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBNTREC\fR\fR
+.ad
+.RS 20n
+Number of \fBTP_BSIZE\fR blocks that are written in each tape record.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBHIGHDENSITYNTREC\fR\fR
+.ad
+.RS 20n
+Number of \fBTP_BSIZE\fR blocks that are written in each tape record on 6250
+BPI or higher density tapes.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBCARTRIDGETREC\fR\fR
+.ad
+.RS 20n
+Number of \fBTP_BSIZE\fR blocks that are written in each tape record on
+cartridge tapes.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBTP_NINDIR\fR\fR
+.ad
+.RS 20n
+Number of indirect pointers in a \fBTS_INODE\fR or \fBTS_ADDR\fR record. It
+must be a power of 2.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBTP_NINOS\fR\fR
+.ad
+.RS 20n
+The maximum number of volumes on a tape.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBLBLSIZE\fR\fR
+.ad
+.RS 20n
+The maximum size of a volume label.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBNAMELEN\fR\fR
+.ad
+.RS 20n
+The maximum size of a host's name.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBOFS_MAGIC\fR\fR
+.ad
+.RS 20n
+Magic number that is used for the very old format.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBNFS_MAGIC\fR\fR
+.ad
+.RS 20n
+Magic number that is used for the non-MTB format.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBMTB_MAGIC\fR\fR
+.ad
+.RS 20n
+Magic number that is used for the MTB format.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBCHECKSUM\fR\fR
+.ad
+.RS 20n
+Header records checksum to this value.
+.RE
+
+.sp
+.LP
+The \fBTS_\fR entries are used in the \fBc_type\fR field to indicate what sort
+of header this is. The types and their meanings are as follows:
+.sp
+.ne 2
+.na
+\fB\fBTS_TAPE\fR\fR
+.ad
+.RS 12n
+Tape volume label.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBTS_INODE\fR\fR
+.ad
+.RS 12n
+A file or directory follows. The \fBc_dinode\fR field is a copy of the disk
+inode and contains bits telling what sort of file this is.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBTS_ADDR\fR\fR
+.ad
+.RS 12n
+A subrecord of a file description. See \fBs_addrs\fR below.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBTS_BITS\fR\fR
+.ad
+.RS 12n
+A bit map follows. This bit map has a one bit for each inode that was dumped.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBTS_CLRI\fR\fR
+.ad
+.RS 12n
+A bit map follows. This bit map contains a zero bit for all inodes that were
+empty on the file system when dumped.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBTS_END\fR\fR
+.ad
+.RS 12n
+End of tape record.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBTS_EOM\fR\fR
+.ad
+.RS 12n
+diskette \fBEOM\fRindicates that the restore is compatible with old dump
+.RE
+
+.sp
+.LP
+The flags are described as follows:
+.sp
+.ne 2
+.na
+\fB\fBDR_NEWHEADER\fR\fR
+.ad
+.RS 17n
+New format tape header.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBDR_INFODEINFO\fR\fR
+.ad
+.RS 17n
+Header contains starting inode info.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBDR_REDUMP\fR\fR
+.ad
+.RS 17n
+Dump contains recopies of active files.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBDR_TRUEINC\fR\fR
+.ad
+.RS 17n
+Dump is a "true incremental".
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBDR_HASMETA\fR\fR
+.ad
+.RS 17n
+The metadata in this header.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBDUMPOUTFMT\fR\fR
+.ad
+.RS 17n
+Name, incon, and ctime (date) for printf.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBDUMPINFMT\fR\fR
+.ad
+.RS 17n
+Inverse for scanf.
+.RE
+
+.sp
+.LP
+The fields of the header structure are as follows:
+.sp
+.ne 2
+.na
+\fB\fBs_addrs\fR\fR
+.ad
+.RS 17n
+An array of bytes describing the blocks of the dumped file. A byte is zero if
+the block associated with that byte was not present on the file system;
+otherwise, the byte is non-zero. If the block was not present on the file
+lsystem, no block was dumped; the block will be stored as a hole in the file.
+If there is not sufficient space in this record to describe all the blocks in
+a file, \fBTS_ADDR\fR records will be scattered through the file, each one
+picking up where the last left off
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBs_inos\fR\fR
+.ad
+.RS 17n
+The starting inodes on tape.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBc_type\fR\fR
+.ad
+.RS 17n
+The type of the record.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBc_date\fR\fR
+.ad
+.RS 17n
+The date of the previous dump.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBc_ddate\fR\fR
+.ad
+.RS 17n
+The date of this dump.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBc_volume\fR\fR
+.ad
+.RS 17n
+The current volume number of the dump.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBc_tapea\fR\fR
+.ad
+.RS 17n
+The logical block of this record.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBc_inumber\fR\fR
+.ad
+.RS 17n
+The number of the inode being dumped if this is of type \fBTS_INODE\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBc_magic\fR\fR
+.ad
+.RS 17n
+This contains the value \fBMAGIC\fR above, truncated as needed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBc_checksum\fR\fR
+.ad
+.RS 17n
+This contains whatever value is needed to make the record sum to
+\fBCHECKSUM\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBc_dinode\fR\fR
+.ad
+.RS 17n
+This is a copy of the inode as it appears on the file system.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBc_count\fR\fR
+.ad
+.RS 17n
+The count of bytes in \fBs_addrs\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBu_data c_data\fR\fR
+.ad
+.RS 17n
+The union of either \fBu_data c_data\fR The union of either \fBs_addrs\fR or
+\fBs_inos\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBc_label\fR\fR
+.ad
+.RS 17n
+Label for this dump.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBc_level\fR\fR
+.ad
+.RS 17n
+Level of this dump.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBc_filesys\fR\fR
+.ad
+.RS 17n
+Name of dumped file system.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBc_dev\fR\fR
+.ad
+.RS 17n
+Name of dumped service.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBc_host\fR\fR
+.ad
+.RS 17n
+Name of dumped host.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBc_flags\fR\fR
+.ad
+.RS 17n
+Additional information.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBc_firstrec\fR\fR
+.ad
+.RS 17n
+First record on volume.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBc_spare\fR\fR
+.ad
+.RS 17n
+Reserved for future uses.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBc_tpbsize\fR\fR
+.ad
+.RS 17n
+Tape block size for MTB format only.
+.RE
+
+.sp
+.LP
+Each volume except the last ends with a tapemark (read as an end of file). The
+last volume ends with a \fBTS_END\fR record and then the tapemark.
+.sp
+.LP
+The dump history is kept in the file \fB/etc/dumpdates\fR. It is an \fBASCII\fR
+file with three fields separated by white space:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The name of the device on which the dumped file system resides.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The level number of the dump tape; see \fBufsdump\fR(8).
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The date of the incremental dump in the format generated by \fBctime\fR(3C).
+.RE
+.sp
+.LP
+\fBDUMPOUTFMT\fR is the format to use when using \fBprintf\fR(3C) to write an
+entry to \fB/etc/dumpdates\fR; \fBDUMPINFMT\fR is the format to use when using
+\fBscanf\fR(3C) to read an entry from \fB/etc/dumpdates\fR.
+.SH ATTRIBUTES
+See \fBattributes\fR(7) for a description of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Stability Level Unstable
+.TE
+
+.SH SEE ALSO
+\fBufsdump\fR(8), \fBufsrestore\fR(8), \fBctime\fR(3C), \fBprintf\fR(3C),
+\fBscanf\fR(3C), \fBtypes.h\fR(3HEAD), \fBattributes\fR(7),
diff --git a/usr/src/man/man5/updaters.5 b/usr/src/man/man5/updaters.5
new file mode 100644
index 0000000000..6b1183327b
--- /dev/null
+++ b/usr/src/man/man5/updaters.5
@@ -0,0 +1,116 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 1988 Sun Microsystems, Inc. - All Rights Reserved. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH UPDATERS 5 "Oct 24, 1996"
+.SH NAME
+updaters \- configuration file for NIS updating
+.SH SYNOPSIS
+.LP
+.nf
+\fB/var/yp/updaters\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The file \fB/var/yp/updaters\fR is a makefile (see \fBmake\fR(1S)) which is
+used for updating the Network Information Service (NIS) databases. Databases
+can only be updated in a secure network, that is, one that has a
+\fBpublickey\fR(5) database. Each entry in the file is a make target for a
+particular \fBNIS\fR database. For example, if there is an \fBNIS\fR database
+named \fBpasswd.byname\fR that can be updated, there should be a \fBmake\fR
+target named \fBpasswd.byname\fR in the \fBupdaters\fR file with the command to
+update the file.
+.sp
+.LP
+The information necessary to make the update is passed to the update command
+through standard input. The information passed is described below (all items
+are followed by a \fBNEWLINE\fR except for 4 and 6):
+.sp
+.ne 2
+.na
+\fB\fB1.\fR\fR
+.ad
+.RS 6n
+Network name of client wishing to make the update (a string).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB2.\fR\fR
+.ad
+.RS 6n
+Kind of update (an integer).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB3.\fR\fR
+.ad
+.RS 6n
+Number of bytes in key (an integer).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB4.\fR\fR
+.ad
+.RS 6n
+Actual bytes of key.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB5.\fR\fR
+.ad
+.RS 6n
+Number of bytes in data (an integer).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB6.\fR\fR
+.ad
+.RS 6n
+Actual bytes of data.
+.RE
+
+.sp
+.LP
+After receiving this information through standard input, the command to update
+the particular database determines whether the user is allowed to make the
+change. If not, it exits with the status \fBYPERR_ACCESS.\fR If the user is
+allowed to make the change, the command makes the change and exits with a
+status of zero. If there are any errors that may prevent the \fBupdaters\fR
+from making the change, it should exit with the status that matches a valid
+\fBNIS\fR error code described in \fB<rpcsvc/ypclnt.h>\fR\&.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/var/yp/updaters\fR\fR
+.ad
+.RS 20n
+The makefile used for updating the \fBNIS\fR databases.
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR make (1S),
+.BR publickey (5),
+.BR rpc.ypupdated (8)
+.SH NOTES
+.sp
+.LP
+The Network Information Service (NIS) was formerly known as Sun Yellow Pages
+(YP). The functionality of the two remains the same; only the name has
+changed. The name Yellow Pages is a registered trademark in the United Kingdom
+of British Telecommunications plc, and may not be used without permission.
diff --git a/usr/src/man/man5/user_attr.5 b/usr/src/man/man5/user_attr.5
new file mode 100644
index 0000000000..a06e374973
--- /dev/null
+++ b/usr/src/man/man5/user_attr.5
@@ -0,0 +1,367 @@
+'\" te
+.\" Copyright 2020 OmniOS Community Edition (OmniOSce) Association.
+.\" Copyright (C) 2008 Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH USER_ATTR 5 "Oct 1, 2020"
+.SH NAME
+user_attr \- extended user attributes database
+.SH SYNOPSIS
+.nf
+\fB/etc/user_attr\fR
+.fi
+
+.SH DESCRIPTION
+\fB/etc/user_attr\fR is a local source of extended attributes associated with
+users and roles. \fBuser_attr\fR can be used with other user attribute sources,
+including the LDAP people container and the \fBuser_attr\fR \fBNIS\fR map.
+Programs use the \fBgetuserattr\fR(3SECDB)
+routines to gain access to this information.
+.sp
+.LP
+The search order for multiple \fBuser_attr\fR sources is specified in the
+\fB/etc/nsswitch.conf\fR file, as described in the \fBnsswitch.conf\fR(5) man
+page. The search order follows that for \fBpasswd\fR(5).
+.sp
+.LP
+Each entry in the \fBuser_attr\fR databases consists of a single line with five
+fields separated by colons (\fB:\fR). Line continuations using the backslash
+(\fB\e\fR) character are permitted. Each entry has the form:
+.sp
+.in +2
+.nf
+\fIuser\fR:\fIqualifier\fR:\fIres1\fR:\fIres2\fR:\fIattr\fR
+.fi
+.in -2
+
+.sp
+.ne 2
+.na
+\fB\fIuser\fR\fR
+.ad
+.sp .6
+.RS 4n
+The name of the user as specified in the \fBpasswd\fR(5) database.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIqualifier\fR\fR
+.ad
+.sp .6
+.RS 4n
+Reserved for future use.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIres1\fR\fR
+.ad
+.sp .6
+.RS 4n
+Reserved for future use.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIres2\fR\fR
+.ad
+.sp .6
+.RS 4n
+Reserved for future use.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIattr\fR\fR
+.ad
+.sp .6
+.RS 4n
+An optional list of semicolon-separated (\fB;\fR) key-value pairs that describe
+the security attributes to apply to the object upon execution. Zero or more
+keys may be specified. The following keys are currently interpreted by the
+system:
+.sp
+.ne 2
+.na
+\fBauths\fR
+.ad
+.sp .6
+.RS 4n
+Specifies a comma-separated list of authorization names chosen from those names
+defined in the \fBauth_attr\fR(5) database. Authorization names may be
+specified using the asterisk (\fB*\fR) character as a wildcard. For example,
+\fBsolaris.printer.*\fR means all of Sun's printer authorizations.
+.RE
+
+.sp
+.ne 2
+.na
+\fBprofiles\fR
+.ad
+.sp .6
+.RS 4n
+Contains an ordered, comma-separated list of profile names chosen from
+\fBprof_attr\fR(5). Profiles are enforced by the profile shells, \fBpfcsh\fR,
+\fBpfksh\fR, and \fBpfsh\fR. See \fBpfsh\fR(1). A default profile is assigned
+in \fB/etc/security/policy.conf\fR (see \fBpolicy.conf\fR(5)). If no profiles
+are assigned, the profile shells do not allow the user to execute any commands.
+.RE
+
+.sp
+.ne 2
+.na
+\fBroleauth\fR
+.ad
+.sp .6
+.RS 4n
+Specifies whether a user assuming a role is required to use the role password
+or their own password.
+If the \fBroleauth\fR key value is not specified, the role password is required
+for users assuming the role.
+.RE
+
+.sp
+.ne 2
+.na
+\fBroles\fR
+.ad
+.sp .6
+.RS 4n
+Can be assigned a comma-separated list of role names from the set of user
+accounts in this database whose \fBtype\fR field indicates the account is a
+role. If the \fBroles\fR key value is not specified, the user is not permitted
+to assume any role.
+.RE
+
+.sp
+.ne 2
+.na
+\fBtype\fR
+.ad
+.sp .6
+.RS 4n
+Can be assigned one of these strings: \fBnormal\fR, indicating that this
+account is for a normal user, one who logs in; or \fBrole\fR, indicating that
+this account is for a role. Roles can only be assumed by a normal user after
+the user has logged in.
+.RE
+
+.sp
+.ne 2
+.na
+\fBproject\fR
+.ad
+.sp .6
+.RS 4n
+Can be assigned a name of one project from the \fBproject\fR(5) database to be
+used as a default project to place the user in at login time. For more
+information, see \fBgetdefaultproj\fR(3PROJECT).
+.RE
+
+.sp
+.ne 2
+.na
+\fBdefaultpriv\fR
+.ad
+.sp .6
+.RS 4n
+The default set of privileges assigned to a user's inheritable set upon login.
+See "Privileges Keywords," below.
+.RE
+
+.sp
+.ne 2
+.na
+\fBlimitpriv\fR
+.ad
+.sp .6
+.RS 4n
+The maximum set of privileges a user or any process started by the user,
+whether through \fBsu\fR(8) or any other means, can obtain. The system
+administrator must take extreme care when removing privileges from the limit
+set. Removing any basic privilege has the ability of crippling all
+applications; removing any other privilege can cause many or all applications
+requiring privileges to malfunction. See "Privileges Keywords," below.
+.RE
+
+.sp
+.ne 2
+.na
+\fBlock_after_retries\fR
+.ad
+.sp .6
+.RS 4n
+Specifies whether an account is locked after the count of failed logins for a
+user equals or exceeds the allowed number of retries as defined by
+\fBRETRIES\fR in \fB/etc/default/login\fR. Possible values are \fByes\fR or
+\fBno\fR. The default is \fBno\fR. Account locking is applicable only to local
+accounts.
+.RE
+
+The following keys are available only if the system is configured with the
+Trusted Extensions feature:
+.sp
+.ne 2
+.na
+\fBclearance\fR
+.ad
+.sp .6
+.RS 4n
+Contains the maximum label at which the user can operate. If unspecified, in
+the Defense Intelligence Agency (\fBDIA\fR) encodings scheme, the default is
+specified in \fBlabel_encodings\fR(5) (see \fBlabel_encodings\fR(5) and
+\fBlabels\fR(7) in the \fISolaris Trusted Extensions Reference Manual\fR).
+.RE
+
+.sp
+.ne 2
+.na
+\fBmin_label\fR
+.ad
+.sp .6
+.RS 4n
+Contains the minimum label at which the user can log in. If unspecified, in the
+\fBDIA\fR encodings scheme, the default is specified in
+\fBlabel_encodings\fR(5) (see \fBlabel_encodings\fR(5) and \fBlabels\fR(7) in
+the \fISolaris Trusted Extensions Reference Manual\fR).
+.RE
+
+.RE
+
+.sp
+.LP
+Except for the \fBtype\fR key, the \fB\fIkey\fR=\fIvalue\fR\fR fields in
+\fB/etc/user_attr\fR can be added using \fBroleadd\fR(8) and
+\fBuseradd\fR(8). You can use \fBrolemod\fR(8) and \fBusermod\fR(8) to
+modify \fB\fIkey\fR=\fIvalue\fR\fR fields in \fB/etc/user_attr\fR. Modification
+of the \fBtype\fR key is restricted as described in \fBrolemod\fR and
+\fBusermod\fR.
+.SS "Privileges Keywords"
+The \fBdefaultpriv\fR and \fBlimitpriv\fR are the privileges-related keywords
+and are described above.
+.sp
+.LP
+See \fBprivileges\fR(7) for a description of privileges. The command
+\fBppriv\fR \fB-l\fR (see \fBppriv\fR(1)) produces a list of all supported
+privileges. Note that you specify privileges as they are displayed by
+\fBppriv\fR. In \fBprivileges\fR(7), privileges are listed in the form
+\fBPRIV_\fR\fI<privilege_name>\fR\&. For example, the privilege
+\fBfile_chown\fR, as you would specify it in \fBuser_attr\fR, is listed in
+\fBprivileges\fR(7) as \fBPRIV_FILE_CHOWN\fR.
+.sp
+.LP
+See \fBusermod\fR(8) for examples of commands that
+modify privileges and their subsequent effect on \fBuser_attr\fR.
+.SH EXAMPLES
+\fBExample 1 \fRAssigning a Profile to Root
+.sp
+.LP
+The following example entry assigns to root the \fBAll\fR profile, which allows
+root to use all commands in the system, and also assigns two authorizations:
+
+.sp
+.in +2
+.nf
+root::::auths=solaris.*,solaris.grant;profiles=All;type=normal
+.fi
+.in -2
+
+.sp
+.LP
+The \fBsolaris.*\fR wildcard authorization shown above gives root all the
+\fBsolaris\fR authorizations; and the \fBsolaris.grant\fR authorization gives
+root the right to grant to others any \fBsolaris\fR authorizations that root
+has. The combination of authorizations enables root to grant to others all the
+\fBsolaris\fR authorizations. See \fBauth_attr\fR(5) for more about
+authorizations.
+
+.SH FILES
+.ne 2
+.na
+\fB/etc/nsswitch.conf\fR
+.ad
+.sp .6
+.RS 4n
+See \fBnsswitch.conf\fR(5).
+.RE
+
+.sp
+.ne 2
+.na
+\fB/etc/user_attr\fR
+.ad
+.sp .6
+.RS 4n
+Described here.
+.RE
+
+.SH ATTRIBUTES
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Availibility SUNWcsr
+_
+Interface Stability See below
+.TE
+
+.sp
+.LP
+The command-line syntax is Committed. The output is Uncommitted.
+.SH SEE ALSO
+.BR auths (1),
+.BR pfcsh (1),
+.BR pfksh (1),
+.BR pfsh (1),
+.BR ppriv (1),
+.BR profiles (1),
+.BR roles (1),
+.BR getdefaultproj (3PROJECT),
+.BR getuserattr (3SECDB),
+.BR auth_attr (5),
+.BR exec_attr (5),
+.BR nsswitch.conf (5),
+.BR passwd (5),
+.BR policy.conf (5),
+.BR prof_attr (5),
+.BR project (5),
+.BR attributes (7),
+.BR privileges (7),
+.BR roleadd (8),
+.BR rolemod (8),
+.BR useradd (8),
+.BR usermod (8)
+.sp
+.LP
+\fISystem Administration Guide: Security Services\fR
+.SH NOTES
+The root user is usually defined in local databases for a number of reasons,
+including the fact that root needs to be able to log in and do system
+maintenance in single-user mode, before the network name service databases are
+available. For this reason, an entry should exist for root in the local
+\fBuser_attr\fR file, and the precedence shown in the example
+\fBnsswitch.conf\fR(5) file entry under EXAMPLES is highly recommended.
+.sp
+.LP
+Because the list of legal keys is likely to expand, any code that parses this
+database must be written to ignore unknown key-value pairs without error. When
+any new keywords are created, the names should be prefixed with a unique
+string, such as the company's stock symbol, to avoid potential naming
+conflicts.
+.sp
+.LP
+In the \fBattr\fR field, escape the following symbols with a backslash
+(\fB\e\fR) if you use them in any value: colon (\fB:\fR), semicolon (\fB;\fR),
+carriage return (\fB\en\fR), equals (\fB=\fR), or backslash (\fB\e\fR).
diff --git a/usr/src/man/man5/utmp.5 b/usr/src/man/man5/utmp.5
new file mode 100644
index 0000000000..3f579889e5
--- /dev/null
+++ b/usr/src/man/man5/utmp.5
@@ -0,0 +1,34 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 1998, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH UTMP 5 "Feb 22, 1999"
+.SH NAME
+utmp, wtmp \- utmp and wtmp database entry formats
+.SH SYNOPSIS
+.LP
+.nf
+\fB#include <utmp.h>\fR
+\fB/var/adm/utmp\fR
+\fB/var/adm/wtmp\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fButmp\fR and \fBwtmp\fR database files are obsolete and are no longer
+present on the system. They have been superseded by the extended database
+contained in the \fButmpx\fR and \fBwtmpx\fR database files. See
+\fButmpx\fR(5).
+.sp
+.LP
+It is possible for \fB/var/adm/utmp\fR to reappear on the system. This would
+most likely occur if a third party application that still uses \fButmp\fR
+recreates the file if it finds it missing. This file should not be allowed to
+remain on the system. The user should investigate to determine which
+application is recreating this file.
+.SH SEE ALSO
+.sp
+.LP
+.BR utmpx (5)
diff --git a/usr/src/man/man5/utmpx.5 b/usr/src/man/man5/utmpx.5
new file mode 100644
index 0000000000..67420880c7
--- /dev/null
+++ b/usr/src/man/man5/utmpx.5
@@ -0,0 +1,56 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH UTMPX 5 "April 9, 2016"
+.SH NAME
+utmpx, wtmpx \- utmpx and wtmpx database entry formats
+.SH SYNOPSIS
+.LP
+.nf
+\fB#include <utmpx.h>\fR
+\fB/var/adm/utmpx\fR
+\fB/var/adm/wtmpx\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fButmpx\fR and \fBwtmpx\fR files are extended database files that have
+superseded the obsolete \fButmp\fR and \fBwtmp\fR database files.
+.sp
+.LP
+The \fButmpx\fR database contains user access and accounting information for
+commands such as \fBwho\fR(1), \fBwrite\fR(1), and \fBlogin\fR(1). The
+\fBwtmpx\fR database contains the history of user access and accounting
+information for the \fButmpx\fR database.
+.SH USAGE
+.LP
+Applications should not access these databases directly, but should use the
+functions described on the \fBgetutxent\fR(3C) manual page to interact with the
+\fButmpx\fR and \fBwtmpx\fR databases to ensure that they are maintained
+consistently.
+.SH FILES
+.ne 2
+.na
+\fB\fB/var/adm/utmpx\fR\fR
+.ad
+.RS 18n
+user access and administration information
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/adm/wtmpx\fR\fR
+.ad
+.RS 18n
+history of user access and administrative information
+.RE
+
+.SH SEE ALSO
+.LP
+.BR getutxent (3C),
+.BR wait (3C),
+.BR wait.h (3HEAD)
diff --git a/usr/src/man/man5/version.4th.5 b/usr/src/man/man5/version.4th.5
deleted file mode 100644
index 3082e01bf7..0000000000
--- a/usr/src/man/man5/version.4th.5
+++ /dev/null
@@ -1,115 +0,0 @@
-.\" Copyright (c) 2011-2013 Devin Teske
-.\" All rights reserved.
-.\"
-.\" Redistribution and use in source and binary forms, with or without
-.\" modification, are permitted provided that the following conditions
-.\" are met:
-.\" 1. Redistributions of source code must retain the above copyright
-.\" notice, this list of conditions and the following disclaimer.
-.\" 2. Redistributions in binary form must reproduce the above copyright
-.\" notice, this list of conditions and the following disclaimer in the
-.\" documentation and/or other materials provided with the distribution.
-.\"
-.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
-.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
-.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
-.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
-.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-.\" SUCH DAMAGE.
-.\"
-.Dd July 20, 2018
-.Dt VERSION.4TH 5
-.Os
-.Sh NAME
-.Nm version.4th
-.Nd loader version string boot module
-.Sh DESCRIPTION
-The file that goes by the name of
-.Nm
-is a set of commands designed to draw the boot loader
-version at the bottom-right of the screen.
-The commands of
-.Nm
-by themselves are not enough for most uses.
-Please refer to the
-examples below for the most common situations, and to
-.Xr loader 5
-for additional commands.
-.Pp
-Before using any of the commands provided in
-.Nm ,
-it must be included
-through the command:
-.Pp
-.Dl include version.4th
-.Pp
-This line is present in the default
-.Pa /boot/forth/menu.rc
-file, so it is not needed (and should not be re-issued) in a normal setup.
-.Pp
-The commands provided by it are:
-.Pp
-.Bl -tag -width disable-module_module -compact -offset indent
-.It Ic print_version
-Prints the contents of the
-.Va loader_version
-environment variable right-justified at the column
-.Va loader_version_x
-and row
-.Va loader_version_y .
-.El
-.Pp
-The environment variables that effect its behavior are:
-.Bl -tag -width bootfile -offset indent
-.It Va loader_version
-Set automatically by
-.Xr loader 5 ,
-but you can override it by setting in
-.Xr loader.conf 4 .
-This should be the version of boot loader used.
-.It Va loader_version_x
-Sets the desired ending column position of
-.Va loader_version .
-Default is 80.
-.It Va loader_version_y
-Sets the desired ending row position of
-.Va loader_version .
-Default is 24.
-.It Va loader_color
-If set to
-.Dq Li NO
-(case-insensitive) or
-.Dq Li 0 ,
-causes the version to be printed without color
-.Pq default is ANSI Cyan .
-.El
-.Sh FILES
-.Bl -tag -width /boot/version.4th -compact
-.It Pa /boot/loader
-The
-.Xr loader 5 .
-.It Pa /boot/forth/version.4th
-.Nm
-itself.
-.It Pa /boot/loader.rc
-.Xr loader 5
-bootstrapping script.
-.El
-.Sh EXAMPLES
-Override
-.Xr loader 5
-version in
-.Xr loader.conf 4 :
-.Pp
-.Bd -literal -offset indent -compact
-loader_version="loader 1.1"
-.Ed
-.Sh SEE ALSO
-.Xr loader.conf 4 ,
-.Xr color.4th 5 ,
-.Xr loader 5
diff --git a/usr/src/man/man5/vfstab.5 b/usr/src/man/man5/vfstab.5
new file mode 100644
index 0000000000..83a779e0a9
--- /dev/null
+++ b/usr/src/man/man5/vfstab.5
@@ -0,0 +1,196 @@
+'\"
+.\" Copyright (c) 2001 Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 1989 AT&T
+.\" Copyright 2015 Nexenta Systems, Inc. All rights reserved.
+.\" Copyright 2022 Oxide Computer Company
+.\"
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.\"
+.Dd January 16, 2022
+.Dt VFSTAB 5
+.Os
+.Sh NAME
+.Nm vfstab
+.Nd table of file system defaults
+.Sh DESCRIPTION
+The file
+.Pa /etc/vfstab
+describes defaults for each file system.
+The information is stored in a table with the following column headings:
+.Bd -literal
+device device mount FS fsck mount mount
+to mount to fsck point type pass at boot options
+.Ed
+.Pp
+The fields in the table are space-separated and show the resource name
+.Pq Fa device to mount ,
+the raw device to
+.Sy fsck
+.Pq Em device to fsck ,
+the default mount directory
+.Pq Em mount point ,
+the name of the file system type
+.Pq Em FS type ,
+the number used by
+.Xr fsck 8
+to decide whether to check the file system automatically
+.Pq Em fsck pass ,
+whether the file system should be mounted automatically by
+.Xr mountall 8
+.Pq Em mount at boot ,
+and the file system mount options
+.Pq Em mount options .
+See respective mount file system man page below in
+.Sx SEE ALSO
+for
+.Em mount options.
+A
+.Sq -
+is used to indicate no entry in a field.
+This may be used when a field does not apply to the resource being mounted.
+.Pp
+The
+.Xr getvfsent 3C
+family of routines is used to read
+.Pa /etc/vfstab .
+There are currently no library routines to automate the writing of
+.Pa /etc/vfstab .
+.Pp
+.Pa /etc/vfstab
+can be used to specify swap areas.
+An entry so specified,
+.Pq which can be a file or a device ,
+will automatically be added as a swap area by the
+.Pa /sbin/swapadd
+script when the system boots.
+To specify a swap area, the
+.Em device-to-mount
+field contains the name of the swap file or device, the
+.Em FS-type
+is
+.Dq swap ,
+.Em mount-at-boot
+is
+.Dq no
+and all other fields have no entry.
+.Sh EXAMPLES
+The following are
+.Pa /etc/vfstab
+entries for various file system types supported in illumos.
+.Pp
+.Sy Example 1
+NFS and UFS Mounts
+.Pp
+The following entry invokes NFS to automatically mount the directory
+.Pa /usr/local
+of the server
+.Sy example1
+on the client's
+.Pa /usr/local
+directory with read-only permission:
+.Bd -literal -offset indent
+example1:/usr/local - /usr/local nfs - yes ro
+.Ed
+.Pp
+The following example assumes a small departmental mail setup, in which clients
+mount
+.Pa /var/mail
+from a server
+.Sy mailsvr .
+The following entry would be listed in each client's
+.Pa /etc/vfstab:
+.Bd -literal -offset indent
+mailsvr:/var/mail - /var/mail nfs - yes intr,bg
+.Ed
+.Pp
+The following is an example for a UFS file system in which logging is enabled:
+.Bd -literal -offset indent
+/dev/dsk/c2t10d0s0 /dev/rdsk/c2t10d0s0 /export/local ufs 3 yes logging
+.Ed
+.Pp
+See
+.Xr mount_nfs 8
+for a description of NFS mount options and
+.Xr mount_ufs 8
+for a description of UFS options.
+.Pp
+.Sy Example 2
+pcfs Mounts
+.Pp
+The following example mounts a pcfs file system on a fixed hard disk on an x86
+machine:
+.Bd -literal -offset indent
+/dev/dsk/c1t2d0p0:c - /win98 pcfs - yes -
+.Ed
+.Pp
+The example below mounts a Jaz drive on a SPARC machine.
+Normally, the volume management software handles mounting of removable media,
+obviating a
+.Nm
+entry.
+Specifying a device that supports removable media in
+.Pa /etc/vfstab
+with set the mount-at-boot field to
+.Dq no
+.Pq as shown below
+disables the automatic handling of that device.
+Such an entry presumes you are not running volume management software.
+.Bd -literal -offset indent
+/dev/dsk/c1t2d0s2:c - /jaz pcfs - no -
+.Ed
+.Pp
+For removable media on a SPARC machine, the convention for the slice portion of
+the disk identifier is to specify
+.Sy s2 ,
+which stands for the entire medium.
+.Pp
+For pcfs file systems on x86 machines, note that the disk identifier uses
+a
+.Sy p
+.Pq Sy p0
+and a logical drive
+.Po
+.Sy c ,
+in the
+.Pa /win98
+example above
+.Pc
+for a pcfs logical drive.
+See
+.Xr mount_pcfs 8
+for syntax for pcfs logical drives and for pcfs-specific mount options.
+.Pp
+.Sy Example 3
+loopback File System Mount
+.Pp
+The following is an example of mounting a loopback
+.Pq lofs
+file system:
+.Bd -literal
+/export/test - /opt/test lofs - yes -
+.Ed
+See
+.Xr lofs 4FS
+for an overview of the loopback file system.
+.Sh SEE ALSO
+.Xr getvfsent 3C ,
+.Xr fsck 8 ,
+.Xr mount 8 ,
+.Xr mount_hsfs 8 ,
+.Xr mount_nfs 8 ,
+.Xr mount_tmpfs 8 ,
+.Xr mount_ufs 8 ,
+.Xr swap 8
diff --git a/usr/src/man/man5/vgrindefs.5 b/usr/src/man/man5/vgrindefs.5
deleted file mode 100644
index ff29bfd8a3..0000000000
--- a/usr/src/man/man5/vgrindefs.5
+++ /dev/null
@@ -1,252 +0,0 @@
-'\" te
-.\" Copyright (c) 1994, Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright (c) 1983 Regents of the University of California. All rights reserved. The Berkeley software License Agreement specifies the terms and conditions for redistribution.
-.TH VGRINDEFS 5 "Aug 10, 1994"
-.SH NAME
-vgrindefs \- vgrind's language definition data base
-.SH SYNOPSIS
-.LP
-.nf
-\fB/usr/lib/vgrindefs\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBvgrindefs\fR contains all language definitions for \fBvgrind\fR(1).
-Capabilities in \fBvgrindefs\fR are of two types: Boolean capabilities which
-indicate that the language has some particular feature and string capabilities
-which give a regular expression or keyword list. Entries may continue onto
-multiple lines by giving a \e as the last character of a line. Lines starting
-with # are comments.
-.SS "Capabilities"
-.sp
-.LP
-The following table names and describes each capability.
-.sp
-
-.sp
-.TS
-box;
-c | c | c
-l | l | l .
-Name Type Description
-_
-\fBab\fR \fBstr\fR T{
-Regular expression for the start of an alternate form comment
-T}
-_
-\fBae\fR \fBstr\fR T{
-Regular expression for the end of an alternate form comment
-T}
-_
-\fBbb\fR \fBstr\fR T{
-Regular expression for the start of a block
-T}
-_
-\fBbe\fR \fBstr\fR T{
-Regular expression for the end of a lexical block
-T}
-_
-\fBcb\fR \fBstr\fR T{
-Regular expression for the start of a comment
-T}
-_
-\fBce\fR \fBstr\fR T{
-Regular expression for the end of a comment
-T}
-_
-\fBid\fR \fBstr\fR T{
-String giving characters other than letters and digits that may legally occur in identifiers (default `_')
-T}
-_
-\fBkw\fR \fBstr\fR A list of keywords separated by spaces
-_
-\fBlb\fR \fBstr\fR T{
-Regular expression for the start of a character constant
-T}
-_
-\fBle\fR \fBstr\fR T{
-Regular expression for the end of a character constant
-T}
-_
-\fBoc\fR \fBbool\fR T{
-Present means upper and lower case are equivalent
-T}
-_
-\fBpb\fR \fBstr\fR T{
-Regular expression for start of a procedure
-T}
-_
-\fBpl\fR \fBbool\fR T{
-Procedure definitions are constrained to the lexical level matched by the `px' capability
-T}
-_
-\fBpx\fR \fBstr\fR T{
-A match for this regular expression indicates that procedure definitions may occur at the next lexical level. Useful for lisp-like languages in which procedure definitions occur as subexpressions of defuns.
-T}
-_
-\fBsb\fR \fBstr\fR T{
-Regular expression for the start of a string
-T}
-_
-\fBse\fR \fBstr\fR T{
-Regular expression for the end of a string
-T}
-_
-\fBtc\fR \fBstr\fR T{
-Use the named entry as a continuation of this one
-T}
-_
-\fBtl\fR \fBbool\fR T{
-Present means procedures are only defined at the top lexical level
-T}
-.TE
-
-.SS "Regular Expressions"
-.sp
-.LP
-\fBvgrindefs\fR uses regular expressions similar to those of \fBex\fR(1) and
-\fBlex\fR(1). The characters `^', `$', `:', and `\e' are reserved characters
-and must be `quoted' with a preceding \e if they are to be included as normal
-characters. The metasymbols and their meanings are:
-.sp
-.ne 2
-.na
-\fB\fB$\fR\fR
-.ad
-.RS 7n
-The end of a line
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB^\fR\fR
-.ad
-.RS 7n
-The beginning of a line
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\ed\fR\fR
-.ad
-.RS 7n
-A delimiter (space, tab, newline, start of line)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\ea\fR\fR
-.ad
-.RS 7n
-Matches any string of symbols (like `.*' in lex)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\ep\fR\fR
-.ad
-.RS 7n
-Matches any identifier. In a procedure definition (the `pb' capability) the
-string that matches this symbol is used as the procedure name.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB()\fR\fR
-.ad
-.RS 7n
-Grouping
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB|\fR\fR
-.ad
-.RS 7n
-Alternation
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB?\fR\fR
-.ad
-.RS 7n
-Last item is optional
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB\ee\fR\fR
-.ad
-.RS 7n
-Preceding any string means that the string will not match an input string if
-the input string is preceded by an escape character (\e). This is typically
-used for languages (like C) that can include the string delimiter in a string
-by escaping it.
-.RE
-
-.sp
-.LP
-Unlike other regular expressions in the system, these match words and not
-characters. Hence something like `(tramp|steamer)flies?' would match `tramp',
-`steamer', `trampflies', or `steamerflies'. Contrary to some forms of regular
-expressions, \fBvgrindef\fR alternation binds very tightly. Grouping
-parentheses are likely to be necessary in expressions involving alternation.
-.SS "Keyword List"
-.sp
-.LP
-The keyword list is just a list of keywords in the language separated by
-spaces. If the `oc' boolean is specified, indicating that upper and lower case
-are equivalent, then all the keywords should be specified in lower case.
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRA sample program.
-.sp
-.LP
-The following entry, which describes the C language, is typical of a language
-entry.
-
-.sp
-.in +2
-.nf
-C|c|the C programming language:\e
- :pb=^\ed?*?\ed?\ep\ed?(\ea?\e)(\ed|{):bb={:be=}:cb=/*:ce=*/:sb=":se=\ee":\e
- :le=\ee':tl:\e
- :kw=asm auto break case char continue default do double else enum\e
- extern float for fortran goto if int long register return short\e
- sizeof static struct switch typedef union unsigned void while #define\e
- #else #endif #if #ifdef #ifndef #include #undef # define endif\e
- ifdef ifndef include undef defined:
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Note that the first field is just the language name (and any variants of it).
-Thus the C language could be specified to \fBvgrind\fR(1) as `c' or `C'.
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/usr/lib/vgrindefs\fR\fR
-.ad
-.RS 22n
-file containing vgrind descriptions
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBex\fR(1), \fBlex\fR(1), \fBtroff\fR(1), \fBvgrind\fR(1)
diff --git a/usr/src/man/man5/warn.conf.5 b/usr/src/man/man5/warn.conf.5
new file mode 100644
index 0000000000..0a940fb67b
--- /dev/null
+++ b/usr/src/man/man5/warn.conf.5
@@ -0,0 +1,239 @@
+'\" te
+.\" Copyright 1987, 1989 by the Student Information Processing Board of the Massachusetts Institute of Technology. For copying and distribution information, please see the file kerberosv5/mit-sipb-copyright.h.
+.\" Portions Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH WARN.CONF 5 "November 22, 2021"
+.SH NAME
+warn.conf \- Kerberos warning configuration file
+.SH SYNOPSIS
+.nf
+/etc/krb5/warn.conf
+.fi
+
+.SH DESCRIPTION
+The \fBwarn.conf\fR file contains configuration information specifying how
+users will be warned by the \fBktkt_warnd\fR daemon about ticket expiration. In
+addition, this file can be used to auto-renew the user's Ticket-Granting Ticket
+(TGT) instead of warning the user. Credential expiration warnings and
+auto-renew results are sent, by means of syslog, to \fBauth.notice\fR.
+.sp
+.LP
+Each Kerberos client host must have a \fBwarn.conf\fR file in order for users
+on that host to get Kerberos warnings from the client. Entries in the
+\fBwarn.conf\fR file must have the following format:
+.sp
+.in +2
+.nf
+\fIprincipal\fR [renew[:\fIopt1\fR,...\fIoptN\fR]] syslog|terminal \fItime\fR
+.fi
+.in -2
+
+.sp
+.LP
+or:
+.sp
+.in +2
+.nf
+\fIprincipal\fR [renew[:\fIopt1\fR,...\fIoptN\fR]] mail \fItime\fR [\fIemail address\fR]
+.fi
+.in -2
+
+.sp
+.ne 2
+.na
+\fB\fIprincipal\fR\fR
+.ad
+.RS 17n
+Specifies the principal name to be warned. The asterisk (\fB*\fR) wildcard can
+be used to specify groups of principals.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrenew\fR\fR
+.ad
+.RS 17n
+Automatically renew the credentials (TGT) until renewable lifetime expires.
+This is equivalent to the user running \fBkinit\fR \fB-R\fR.
+.sp
+The renew options include:
+.sp
+.ne 2
+.na
+\fB\fBlog-success\fR\fR
+.ad
+.RS 15n
+Log the result of the renew attempt on success using the specified method
+(\fBsyslog\fR|\fBterminal\fR|\fBmail\fR).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBlog-failure\fR\fR
+.ad
+.RS 15n
+Log the result of the renew attempt on failure using the specified method
+(\fBsyslog\fR|\fBterminal\fR|\fBmail\fR). Some renew failure conditions are:
+TGT renewable lifetime has expired, the KDCs are unavailable, or the cred cache
+file has been removed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBlog\fR\fR
+.ad
+.RS 15n
+Same as specifying both \fBlog-success\fR and \fBlog-failure\fR.
+.RE
+
+.LP
+Note -
+.sp
+.RS 2
+If no log options are given, no logging is done.
+.RE
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsyslog\fR\fR
+.ad
+.RS 17n
+Sends the warnings to the system's syslog. Depending on the
+\fB/etc/syslog.conf\fR file, syslog entries are written to the
+\fB/var/adm/messages\fR file and/or displayed on the terminal.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBterminal\fR\fR
+.ad
+.RS 17n
+Sends the warnings to display on the terminal.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmail\fR\fR
+.ad
+.RS 17n
+Sends the warnings as email to the address specified by \fIemail_address\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fItime\fR\fR
+.ad
+.RS 17n
+Specifies how much time before the \fBTGT\fR expires when a warning should be
+sent. The default time value is seconds, but you can specify \fBh\fR (hours)
+and \fBm\fR (minutes) after the number to specify other time values.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIemail_address\fR\fR
+.ad
+.RS 17n
+Specifies the email address at which to send the warnings. This field must be
+specified only with the \fBmail\fR field.
+.RE
+
+.SH EXAMPLES
+\fBExample 1 \fRSpecifying Warnings
+.sp
+.LP
+The following \fBwarn.conf\fR entry
+
+.sp
+.in +2
+.nf
+\fB* syslog 5m\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+specifies that warnings will be sent to the syslog five minutes before the
+expiration of the \fBTGT\fR for all principals. The form of the message is:
+
+.sp
+.in +2
+.nf
+jdb@EXAMPLE.COM: your kerberos credentials expire in 5 minutes
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRSpecifying Renewal
+.sp
+.LP
+The following \fBwarn.conf\fR entry:
+
+.sp
+.in +2
+.nf
+* renew:log terminal 30m
+.fi
+.in -2
+
+.sp
+.LP
+\&...specifies that renew results will be sent to the user's terminal 30
+minutes before the expiration of the TGT for all principals. The form of the
+message (on renew success) is:
+
+.sp
+.in +2
+.nf
+myname@EXAMPLE.COM: your kerberos credentials have been renewed
+.fi
+.in -2
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/usr/lib/krb5/ktkt_warnd\fR\fR
+.ad
+.RS 28n
+Kerberos warning daemon
+.RE
+
+.SH ATTRIBUTES
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.BR kdestroy (1),
+.BR kinit (1),
+.BR syslog.conf (5),
+.BR utmpx (5),
+.BR attributes (7),
+.BR kerberos (7),
+.BR pam_krb5 (7),
+.BR ktkt_warnd (8)
+.SH NOTES
+The auto-renew of the TGT is attempted only if the user is logged-in, as
+determined by examining \fButmpx\fR(5).
diff --git a/usr/src/man/man5/ypfiles.5 b/usr/src/man/man5/ypfiles.5
new file mode 100644
index 0000000000..1157505776
--- /dev/null
+++ b/usr/src/man/man5/ypfiles.5
@@ -0,0 +1,161 @@
+'\" te
+.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH YPFILES 5 "Feb 25, 2017"
+.SH NAME
+ypfiles \- Network Information Service Version 2, formerly known as YP
+.SH DESCRIPTION
+.LP
+The NIS network information service uses a distributed, replicated database of
+\fBdbm\fR files , in ASCII form, that are contained in the \fB/var/yp\fR
+directory hierarchy on each NIS server.
+.sp
+.LP
+A \fBdbm\fR database served by the NIS server is called a NIS \fImap\fR. A NIS
+\fIdomain\fR is a subdirectory of \fB/var/yp\fR that contains a set of NIS maps
+on each NIS server.
+.sp
+.LP
+Standard nicknames are defined in the file \fB/var/yp/nicknames\fR. These names
+can be used in place of the full map name in the \fBypmatch\fR and \fBypcat\fR
+commands. Use the command \fBypwhich\fR \fB-x\fR to display the current set of
+nicknames. Use the command \fBypwhich\fR \fB-m\fR to display all the available
+maps. Each line of the nickname file contains two fields separated by white
+space. The first field is the nickname, and the second field is the name of the
+map that it expands to. The nickname cannot contain a ".".
+.SS "NIS to LDAP (N2L)"
+.LP
+If the \fB/var/yp/NISLDAPmapping\fR configuration file is present, the NIS
+server operates in NIS to LDAP (N2L) mode. In this mode, NIS maps are stored in
+a new set of DBM files, prepended by the \fBLDAP_\fR prefix, at
+\fB/var/yp/\fIdomainname\fR\fR. These files are used as a cache backed by
+information from an LDAP server. Additional DBM files are created in the same
+directory to hold the cache's TTL values.
+.sp
+.LP
+N2L mode enables NIS clients to be supported in an LDAP environment.
+.sp
+.LP
+In N2L mode, the old style DBM files, NIS source files, and the
+\fBypmake\fR(8) utility have to role. They are retained to enable easy
+conversion back to the traditional mode, if required.
+.SS "Converting from N2L to Traditional NIS"
+.LP
+When NIS is operating in N2L mode, it uses a new set of NIS maps with an
+\fBLDAP_\fR prefix, based on the contents of the LDAP DIT. The NIS source files
+are unused and become out of date. If you wish to convert back to the
+traditional NIS mode, the N2L configuration file should be deleted. The system
+will then return to using the standard map files. Optionally, the N2L mode map
+files, \fB/var/yp/*/LDAP_*\fR can also be deleted.
+.sp
+.LP
+If you want to run the system in traditional mode with information based on the
+DIT, then the NIS source files must be regenerated based on the N2L maps. To
+regenerate the NIS source files based on the N2L maps, run \fBypmap2src\fR(8).
+.SH FILES
+.ne 2
+.na
+\fB\fB/var/yp\fR\fR
+.ad
+.sp .6
+.RS 4n
+Directory containing NIS configuration files.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/yp/binding\fR\fR
+.ad
+.sp .6
+.RS 4n
+Stores the information required to bind the NIS client to the NIS server.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/yp/binding/\fIypdomain\fR/ypservers\fR\fR
+.ad
+.sp .6
+.RS 4n
+Contains the servers to which the NIS client is allowed to bind.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/yp/Makefile\fR\fR
+.ad
+.sp .6
+.RS 4n
+Builds the NIS \fBndbm\fR databases.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/yp/nicknames\fR\fR
+.ad
+.sp .6
+.RS 4n
+Nicknames file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/yp/securenets\fR\fR
+.ad
+.sp .6
+.RS 4n
+Defines the hosts and networks that are granted access to information in the
+served domain. This file is read at startup time by \fBypserv\fR and
+\fBypxfrd\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/yp/\fIypdomain\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Directory containing \fBndbm\fR databases.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/yp/NISLDAPmapping\fR\fR
+.ad
+.sp .6
+.RS 4n
+NIS to LDAP configuration file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/yp/*/LDAP_*\fR\fR
+.ad
+.sp .6
+.RS 4n
+NIS to LDAP mode map files
+.RE
+
+.SH SEE ALSO
+.LP
+.BR ldap (1),
+.BR ndbm (3C),
+.BR ypclnt (3NSL),
+.BR makedbm (8),
+.BR ypbind (8),
+.BR ypinit (8),
+.BR ypmake (8),
+.BR ypmap2src (8),
+.BR ypserv (8),
+.BR ypxfrd (8)
diff --git a/usr/src/man/man5/yppasswdd.5 b/usr/src/man/man5/yppasswdd.5
new file mode 100644
index 0000000000..cbe12bf02e
--- /dev/null
+++ b/usr/src/man/man5/yppasswdd.5
@@ -0,0 +1,61 @@
+'\" te
+.\" Copyright (c) 2001, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH YPPASSWDD 5 "Nov 8, 2001"
+.SH NAME
+yppasswdd \- configuration file for rpc.yppasswdd (NIS password daemon)
+.SH SYNOPSIS
+.LP
+.nf
+\fB/etc/default/yppasswdd\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fByppasswdd\fR file contains a parameter that modifies the behavior of the
+\fBrpc.yppasswdd\fR(8) daemon.
+.sp
+.LP
+The \fByppasswdd\fR file contains a single parameter:
+.sp
+.in +2
+.nf
+#check_restricted_shell_name=1
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+By default in the current release, this line in \fByppasswdd\fR is commented
+out. If you uncomment the line, when a user attempts to change his default
+shell using \fB`passwd -r nis -e`\fR (see \fBpasswd\fR(1)), the
+\fBrpc.yppasswdd\fR daemon checks whether the name of the user's current shell
+begins with an 'r'. \fBrpc.yppasswdd\fR considers any shell whose name begins
+with an 'r' (for example, \fBrcsh\fR) to be a restricted shell. If a user's
+shell does begin with 'r', his attempt to change from the default shell will
+fail.
+.sp
+.LP
+If the line in the \fByppasswdd\fR file is commented out (the default), the
+\fBrpc.yppasswdd\fR daemon does not perform the restricted shell check.
+.sp
+.LP
+The \fByppasswdd\fR file is editable only by root or a member of the sys group.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/default/yppasswdd\fR\fR
+.ad
+.RS 26n
+configuration file for \fBrpc.yppasswdd\fR daemon
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR rpc.yppasswdd (8)
diff --git a/usr/src/man/man5/ypserv.5 b/usr/src/man/man5/ypserv.5
new file mode 100644
index 0000000000..6a41c15eab
--- /dev/null
+++ b/usr/src/man/man5/ypserv.5
@@ -0,0 +1,719 @@
+'\" te
+.\" Copyright (C) 2003, Sun Microsystems, Inc.
+.\" All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH YPSERV 5 "Feb 25, 2017"
+.SH NAME
+ypserv \- configuration file for NIS to LDAP transition daemons
+.SH SYNOPSIS
+.LP
+.nf
+\fB/etc/default/ypserv\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBypserv\fR file specifies configuration information for the
+\fBypserv\fR(8) daemon. Configuration information can come from LDAP or be
+specified in the \fBypserv\fR file.
+.sp
+.LP
+You can create a simple \fBypserv\fR file by running \fBinityp2l\fR(8). The
+\fBypserv\fR file can then be customized as required.
+.sp
+.LP
+A related \fBNISLDAPmapping\fR file contains mapping information that converts
+NIS entries into LDAP entries. See the \fBNISLDAPmapping\fR(5) man page for an
+overview of the setup that is needed to map NIS data to or from LDAP.
+.SH EXTENDED DESCRIPTION
+.LP
+The \fBypserv\fR(8) server recognizes the attributes that follow. Values
+specified for these attributes in the \fBypserv\fR file, including any empty
+values, override values that are obtained from LDAP. However, the
+\fBnisLDAPconfig*\fR values are read from the \fBypserv\fR file only
+.SS "Attributes"
+.LP
+The following are attributes that are used for initial configuration.
+.sp
+.ne 2
+.na
+\fB\fBnisLDAPconfigDN\fR\fR
+.ad
+.sp .6
+.RS 4n
+The \fBDN\fR for configuration information. If \fBnisLDAPconfigDN\fR is empty,
+all other \fBnisLDAPConfig*\fR values are ignored.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnisLDAPconfigPreferredServerList\fR\fR
+.ad
+.sp .6
+.RS 4n
+The list of servers to use for the configuration phase. There is no default
+value. The following is an example of a value for
+\fBnisLDAPconfigPreferredServerList\fR:
+.sp
+.in +2
+.nf
+nisLDAPconfigPreferredServerList=127.0.0.1:389
+.fi
+.in -2
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnisLDAPconfigAuthenticationMethod\fR\fR
+.ad
+.sp .6
+.RS 4n
+The authentication method used to obtain the configuration information. The
+recognized values for \fBnisLDAPconfigAuthenticationMethod\fR are:
+.sp
+.ne 2
+.na
+\fB\fBnone\fR\fR
+.ad
+.RS 19n
+No authentication attempted
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsimple\fR\fR
+.ad
+.RS 19n
+Password of proxy user sent in the clear to the LDAP server
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsasl/cram-md5\fR\fR
+.ad
+.RS 19n
+Use \fBSASL/CRAM-MD5\fR authentication. This authentication method may not be
+supported by all LDAP servers. A password must be supplied.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsasl/digest-md5\fR\fR
+.ad
+.RS 19n
+Use SASL/DIGEST-MD5 authentication. The \fBSASL/CRAM-MD5\fRauthentication
+method may not be supported by all LDAP servers. A password must be supplied.
+.RE
+
+\fBnisLDAPconfigAuthenticationMethod\fR has no default value. The following is
+an example of a value for \fBnisLDAPconfigAuthenticationMethod\fR:
+.sp
+.in +2
+.nf
+nisLDAPconfigAuthenticationMethod=simple
+.fi
+.in -2
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnisLDAPconfigTLS\fR\fR
+.ad
+.sp .6
+.RS 4n
+The transport layer security used for the connection to the server. The
+recognized values are:
+.sp
+.ne 2
+.na
+\fB\fBnone\fR\fR
+.ad
+.RS 8n
+No encryption of transport layer data. The default value is \fBnone\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBssl\fR\fR
+.ad
+.RS 8n
+\fBSSL\fR encryption of transport layer data. A certificate is required.
+.RE
+
+Export and import control restrictions might limit the availability of
+transport layer security.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnisLDAPconfigTLSCertificateDBPath\fR\fR
+.ad
+.sp .6
+.RS 4n
+The name of the directory that contains the certificate database. The default
+path is \fB/var/yp\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnisLDAPconfigProxyUser\fR\fR
+.ad
+.sp .6
+.RS 4n
+The proxy user used to obtain configuration information.
+\fBnisLDAPconfigProxyUser\fR has no default value. If the value ends with a
+comma, the value of the \fBnisLDAPconfigDN\fR attribute is appended. For
+example:
+.sp
+.in +2
+.nf
+nisLDAPconfigProxyUser=cn=nisAdmin,ou=People,
+.fi
+.in -2
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnisLDAPconfigProxyPassword\fR\fR
+.ad
+.sp .6
+.RS 4n
+The password that should be supplied to LDAP for the proxy user when the
+authentication method requires one. To avoid exposing this password publicly on
+the machine, the password should only appear in the configuration file, and the
+file should have an appropriate owner, group, and file mode.
+\fBnisLDAPconfigProxyPassword\fR has no default value.
+.RE
+
+.sp
+.LP
+The following are attributes used for data retrieval. The object class name
+used for these attributes is \fBnisLDAPconfig\fR.
+.sp
+.ne 2
+.na
+\fB\fBpreferredServerList\fR\fR
+.ad
+.sp .6
+.RS 4n
+The list of servers to use to read or to write mapped NIS data from or to LDAP.
+\fBpreferredServerList\fR has no default value. For example:
+.sp
+.in +2
+.nf
+preferredServerList=127.0.0.1:389
+.fi
+.in -2
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBauthenticationMethod\fR\fR
+.ad
+.sp .6
+.RS 4n
+The authentication method to use to read or to write mapped NIS data from or to
+LDAP. For recognized values, see the \fBLDAPconfigAuthenticationMethod
+attribute\fR. \fBauthenticationMethod\fR has no default value. For example:
+.sp
+.in +2
+.nf
+authenticationMethod=simple
+.fi
+.in -2
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnisLDAPTLS\fR\fR
+.ad
+.sp .6
+.RS 4n
+The transport layer security to use to read or to write NIS data from or to
+LDAP. For recognized values, see the \fBnisLDAPconfigTLS\fR attribute. The
+default value is none. Export and import control restrictions might limit the
+availability of transport layer security.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnisLDAPTLSCertificateDBPath\fR\fR
+.ad
+.sp .6
+.RS 4n
+The name of the directory that contains the certificate \fBDB\fR. For
+recognized and default values for \fBnisLDAPTLSCertificateDBPath\fR, see the
+\fBnisLDAPconfigTLSCertificateDBPath\fR attribute.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnisLDAPproxyUser\fR\fR
+.ad
+.sp .6
+.RS 4n
+Proxy user used by \fBypserv\fR(8), \fBypxfrd\fR(8) and \fByppasswdd\fR(8)
+to read or to write from or to LDAP. Assumed to have the appropriate permission
+to read and modify LDAP data. There is no default value. If the value ends in a
+comma, the value of the context for the current domain, as defined by a
+\fBnisLDAPdomainContext\fR attribute, is appended. See \fBNISLDAPmapping\fR(5).
+For example:
+.sp
+.in +2
+.nf
+nisLDAPproxyUser=cn=nisAdmin,ou=People,
+.fi
+.in -2
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnisLDAPproxyPassword\fR\fR
+.ad
+.sp .6
+.RS 4n
+The password that should be supplied to LDAP for the proxy user when the
+authentication method so requires. To avoid exposing this password publicly on
+the machine, the password should only appear in the configuration file, and the
+file must have an appropriate owner, group, and file mode.
+\fBnisLDAPproxyPassword\fR has no default value.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnisLDAPsearchTimeout\fR\fR
+.ad
+.sp .6
+.RS 4n
+Establishes the timeout for the LDAP search operation. The default value for
+\fBnisLDAPsearchTimeout\fR is 180 seconds.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnisLDAPbindTimeout\fR\fR
+.ad
+.br
+.na
+\fB\fBnisLDAPmodifyTimeout\fR\fR
+.ad
+.br
+.na
+\fB\fBnisLDAPaddTimeout\fR\fR
+.ad
+.br
+.na
+\fB\fBnisLDAPdeleteTimeout\fR\fR
+.ad
+.sp .6
+.RS 4n
+Establish timeouts for LDAP bind, modify, add, and delete operations,
+respectively. The default value is 15 seconds for each attribute. Decimal
+values are allowed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnisLDAPsearchTimeLimit\fR\fR
+.ad
+.sp .6
+.RS 4n
+Establish a value for the \fBLDAP_OPT_TIMELIMIT\fR option, which suggests a
+time limit for the search operation on the LDAP server. The server may impose
+its own constraints on possible values. See your LDAP server documentation. The
+default is the \fBnisLDAPsearchTimeout\fR value. Only integer values are
+allowed.
+.sp
+Since the \fBnisLDAPsearchTimeout\fR limits the amount of time the client
+\fBypserv\fR will wait for completion of a search operation, do not set the
+value of \fBnisLDAPsearchTimeLimit\fR larger than the value of
+\fBnisLDAPsearchTimeout\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnisLDAPsearchSizeLimit\fR\fR
+.ad
+.sp .6
+.RS 4n
+Establish a value for the \fBLDAP_OPT_SIZELIMIT\fR option, which suggests a
+size limit, in bytes, for the search results on the LDAP server. The server may
+impose its own constraints on possible values. See your LDAP server
+documentation. The default value for \fBnisLDAPsearchSizeLimit\fR is zero,
+which means the size limit is unlimited. Only integer values are allowed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnisLDAPfollowReferral\fR\fR
+.ad
+.sp .6
+.RS 4n
+Determines if the \fBypserv\fR should follow referrals or not. Recognized
+values for \fBnisLDAPfollowReferral\fR are \fByes\fR and \fBno\fR. The default
+value for \fBnisLDAPfollowReferral\fR is \fBno\fR.
+.RE
+
+.sp
+.LP
+The following attributes specify the action to be taken when some event occurs.
+The values are all of the form \fBevent=action\fR. The default action is the
+first one listed for each event.
+.sp
+.ne 2
+.na
+\fB\fBnisLDAPretrieveErrorAction\fR\fR
+.ad
+.sp .6
+.RS 4n
+If an error occurs while trying to retrieve an entry from LDAP, one of the
+following actions can be selected:
+.sp
+.ne 2
+.na
+\fB\fBuse_cached\fR\fR
+.ad
+.RS 14n
+Retry the retrieval the number of time specified by
+\fBnisLDAPretrieveErrorAttempts\fR, with the \fBnisLDAPretrieveErrorTimeout\fR
+value controlling the wait between each attempt.
+.sp
+If all attempts fail, then a warning is logged and the value currently in the
+cache is returned to the client.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfail\fR\fR
+.ad
+.RS 14n
+Proceed as for \fBuse_cached\fR, but if all attempts fail, a \fBYPERR_YPERR\fR
+error is returned to the client.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnisLDAPretrieveErrorAttempts\fR\fR
+.ad
+.sp .6
+.RS 4n
+The number of times a failed retrieval should be retried. The default value for
+\fBnisLDAPretrieveErrorAttempts\fR is unlimited. While retries are made the
+\fBypserv\fR daemon will be prevented from servicing further
+requests .\fBnisLDAPretrieveErrorAttempts\fR values other than \fB1\fR should be used
+with caution.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnisLDAPretrieveErrorTimeout\fR\fR
+.ad
+.sp .6
+.RS 4n
+The timeout in seconds between each new attempt to retrieve LDAP data. The
+default value for \fBnisLDAPretrieveErrorTimeout\fR is 15 seconds.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnisLDAPstoreErrorAction\fR\fR
+.ad
+.sp .6
+.RS 4n
+An error occurred while trying to store data to the LDAP repository.
+.sp
+.ne 2
+.na
+\fB\fBretry\fR\fR
+.ad
+.RS 9n
+Retry operation \fBnisLDAPstoreErrorAttempts\fR times with
+\fBnisLDAPstoreErrorTimeout\fR seconds between each attempt. While retries are
+made, the NIS daemon will be prevented from servicing further requests. Use
+with caution.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfail\fR\fR
+.ad
+.RS 9n
+Return \fBYPERR_YPERR\fR error to the client.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnisLDAPstoreErrorAttempts\fR\fR
+.ad
+.sp .6
+.RS 4n
+The number of times a failed attempt to store should be retried. The default
+value for \fBnisLDAPstoreErrorAttempts\fR is unlimited. The value for
+\fBnisLDAPstoreErrorAttempts\fR is ignored unless
+\fBnisLDAPstoreErrorAction=retry\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnisLDAPstoreErrortimeout\fR\fR
+.ad
+.sp .6
+.RS 4n
+The timeout, in seconds, between each new attempt to store LDAP data. The
+default value for \fBnisLDAPstoreErrortimeout\fR is 15 seconds. The
+\fBnisLDAPstoreErrortimeout\fR value is ignored unless
+\fBnisLDAPstoreErrorAction=retry\fR.
+.RE
+
+.SS "Storing Configuration Attributes in LDAP"
+.LP
+Most attributes described on this man page, as well as those described on
+\fBNISLDAPmapping\fR(5), can be stored in LDAP. In order to do so, you will
+need to add the following definitions to your LDAP server, which are described
+here in \fBLDIF\fR format suitable for use by \fBldapadd\fR(1). The attribute
+and objectclass OIDs are examples only.
+.sp
+.in +2
+.nf
+dn: cn=schema
+changetype: modify
+add: attributetypes
+attributetypes: ( 1.3.6.1.4.1.11.1.3.1.1.2 NAME 'preferredServerList' \e
+ DESC 'Preferred LDAP server host addresses used by DUA' \e
+ EQUALITY caseIgnoreMatch \
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE )
+attributetypes: ( 1.3.6.1.4.1.11.1.3.1.1.6 NAME 'authenticationMethod' \e
+ DESC 'Authentication method used to contact the DSA' \e
+ EQUALITY caseIgnoreMatch \
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE )
+
+dn: cn=schema
+ changetype: modify
+ add: attributetypes
+ attributetypes: ( 1.3.6.1.4.1.42.2.27.5.42.43.1.0 \e
+ NAME 'nisLDAPTLS' \e
+ DESC 'Transport Layer Security' \e
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )
+ attributetypes: ( 1.3.6.1.4.1.42.2.27.5.42.43.1.1 \e
+ NAME 'nisLDAPTLSCertificateDBPath' \e
+ DESC 'Certificate file' \e
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )
+ attributetypes: ( 1.3.6.1.4.1.42.2.27.5.42.43.1.2 \e
+ NAME 'nisLDAPproxyUser' \e
+ DESC 'Proxy user for data store/retrieval' \e
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )
+ attributetypes: ( 1.3.6.1.4.1.42.2.27.5.42.43.1.3 \e
+ NAME 'nisLDAPproxyPassword' \e
+ DESC 'Password/key/shared secret for proxy user' \e
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )
+ attributetypes: ( 1.3.6.1.4.1.42.2.27.5.42.43.1.6 \e
+ NAME 'nisLDAPretrieveErrorAction' \e
+ DESC 'Action following an LDAP search error' \e
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )
+ attributetypes: ( 1.3.6.1.4.1.42.2.27.5.42.43.1.7 \e
+ NAME 'nisLDAPretrieveErrorAttempts' \e
+ DESC 'Number of times to retry an LDAP search' \e
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )
+ attributetypes: ( 1.3.6.1.4.1.42.2.27.5.42.43.1.8 \e
+ NAME 'nisLDAPretrieveErrorTimeout' \e
+ DESC 'Timeout between each search attempt' \e
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )
+ attributetypes: ( 1.3.6.1.4.1.42.2.27.5.42.43.1.9 \e
+ NAME 'nisLDAPstoreErrorAction' \e
+ DESC 'Action following an LDAP store error' \e
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )
+ attributetypes: ( 1.3.6.1.4.1.42.2.27.5.42.43.1.10 \e
+ NAME 'nisLDAPstoreErrorAttempts' \e
+ DESC 'Number of times to retry an LDAP store' \e
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )
+ attributetypes: ( 1.3.6.1.4.1.42.2.27.5.42.43.1.11 \e
+ NAME 'nisLDAPstoreErrorTimeout' \e
+ DESC 'Timeout between each store attempt' \e
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )
+ attributetypes: ( 1.3.6.1.4.1.42.2.27.5.42.43.1.12 \e
+ NAME 'nisLDAPdomainContext' \e
+ DESC 'Context for a single domain' \e
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )
+ attributetypes: ( 1.3.6.1.4.1.42.2.27.5.42.43.1.13 \e
+ NAME 'nisLDAPyppasswddDomains' \e
+ DESC 'List of domains for which password changes are made' \e
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )
+ attributetypes: ( 1.3.6.1.4.1.42.2.27.5.42.43.1.14 \e
+ NAME 'nisLDAPdatabaseIdMapping' \e
+ DESC 'Defines a database id for a NIS object' \e
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
+ attributetypes: ( 1.3.6.1.4.1.42.2.27.5.42.43.1.15 \e
+ NAME 'nisLDAPentryTtl' \e
+ DESC 'TTL for cached objects derived from LDAP' \e
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
+ attributetypes: ( 1.3.6.1.4.1.42.2.27.5.42.43.1.16 \e
+ NAME 'nisLDAPobjectDN' \e
+ DESC 'Location in LDAP tree where NIS data is stored' \e
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
+ attributetypes: ( 1.3.6.1.4.1.42.2.27.5.42.43.1.17 ) \e
+ NAME 'nisLDAPnameFields' \e
+ DESC 'Rules for breaking NIS entries into fields' \\e
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
+ attributetypes: ( 1.3.6.1.4.1.42.2.27.5.42.43.1.18 ) \e
+ NAME 'nisLDAPsplitFields' \e
+ DESC 'Rules for breaking fields into sub fields' \e
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
+
+ attributetypes: ( 1.3.6.1.4.1.42.2.27.5.42.43.1.19 \e
+ NAME 'nisLDAPattributeFromField' \e
+ DESC 'Rules for mapping fields to LDAP attributes' \e
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
+
+ attributetypes: ( 1.3.6.1.4.1.42.2.27.5.42.43.1.20 \e
+ NAME 'nisLDAPfieldFromAttribute' \e
+ DESC 'Rules for mapping fields to LDAP attributes' \e
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
+
+ attributetypes: ( 1.3.6.1.4.1.42.2.27.5.42.43.1.21 \e
+ NAME 'nisLDAPrepeatedFieldSeparators' \e
+ DESC 'Rules for mapping fields to LDAP attributes' \e
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
+
+ attributetypes: ( 1.3.6.1.4.1.42.2.27.5.42.43.1.22 \e
+ NAME 'nisLDAPcommentChar' \e
+ DESC 'Rules for mapping fields to LDAP attributes' \e
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
+
+ attributetypes: ( 1.3.6.1.4.1.42.2.27.5.42.43.1.23 \e
+ NAME 'nisLDAPmapFlags' \e
+ DESC 'Rules for mapping fields to LDAP attributes' \e
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
+
+ dn: cn=schema
+ changetype: modify
+ add: objectclasses
+ objectclasses: ( 1.3.6.1.4.1.42.2.27.5.42.43.1.0 NAME 'nisLDAPconfig' \e
+ DESC 'NIS/LDAP mapping configuration' \e
+ SUP top STRUCTURAL \e
+ MAY ( cn $ preferredServerList $
+ authenticationMethod $ nisLDAPTLS $
+ nisLDAPTLSCertificateDBPath $
+ nisLDAPproxyUser $ nisLDAPproxyPassword $
+ nisLDAPretrieveErrorAction $
+ nisLDAPretrieveErrorAttempts $
+ nisLDAPretrieveErrorTimeout $
+ nisLDAPstoreErrorAction $
+ nisLDAPstoreErrorAttempts $
+ nisLDAPstoreErrorTimeout $
+ nisLDAPdomainContext $
+ nisLDAPyppasswddDomains $
+ nisLDAPdatabaseIdMapping $
+ nisLDAPentryTtl $
+ nisLDAPobjectDN $
+ nisLDAPnameFields $
+ nisLDAPsplitFields $
+ nisLDAPattributeFromField $
+ nisLDAPfieldFromAttribute $
+ nisLDAPrepeatedFieldSeparators $
+ nisLDAPcommentChar $
+ nisLDAPmapFlags ) )
+.fi
+.in -2
+
+.sp
+.LP
+Create a file containing the following LDIF data. Substitute your actual
+\fBnisLDAPconfigDN\fR for \fBconfigDN\fR:
+.sp
+.in +2
+.nf
+dn: configDN
+objectClass: top
+objectClass: nisLDAPconfig
+.fi
+.in -2
+
+.sp
+.LP
+Use this file as input to the \fBldapadd\fR(1) command in order to create the
+NIS to LDAP configuration entry. Initially, the entry is empty. You can use the
+\fBldapmodify\fR(1) command to add configuration attributes.
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRCreating a NIS to LDAP Configuration Entry
+.sp
+.LP
+To set the server list to port 389 on 127.0.0.1, create the following file and
+use it as input to \fBldapmodify\fR(1):
+
+.sp
+.in +2
+.nf
+dn: configDN
+preferredServerList: 127.0.0.1:389
+.fi
+.in -2
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Obsolete
+.TE
+
+.SH SEE ALSO
+.LP
+.BR ldapadd (1),
+.BR ldapmodify (1),
+.BR NISLDAPmapping (5),
+.BR attributes (7),
+.BR inityp2l (8),
+.BR yppasswdd (8),
+.BR ypserv (8),
+.BR ypxfrd (8)
+.sp
+.LP
+\fISystem Administration Guide: Naming and Directory Services (DNS, NIS, and
+LDAP)\fR
diff --git a/usr/src/man/man5/zoneinfo.5 b/usr/src/man/man5/zoneinfo.5
new file mode 100644
index 0000000000..e400cd6034
--- /dev/null
+++ b/usr/src/man/man5/zoneinfo.5
@@ -0,0 +1,13 @@
+'\" te
+.\" Copyright (c) 1999, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH ZONEINFO 5 "Jun 21, 1999"
+.SH NAME
+zoneinfo \- timezone information
+.SH DESCRIPTION
+.sp
+.LP
+For notes regarding the zoneinfo timezones, see
+\fB/usr/share/lib/zoneinfo/src/README\fR.
diff --git a/usr/src/man/man5/zones.5 b/usr/src/man/man5/zones.5
deleted file mode 100644
index 8badc27d3b..0000000000
--- a/usr/src/man/man5/zones.5
+++ /dev/null
@@ -1,242 +0,0 @@
-'\" te
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.\"
-.\" Copyright 2020 Joyent, Inc.
-.TH ZONES 5 "May 23, 2021"
-.SH NAME
-zones \- Solaris application containers
-.SH DESCRIPTION
-The zones facility in Solaris provides an isolated environment for running
-applications. Processes running in a zone are prevented from monitoring or
-interfering with other activity in the system. Access to other processes,
-network interfaces, file systems, devices, and inter-process communication
-facilities are restricted to prevent interaction between processes in different
-zones.
-.sp
-.LP
-The privileges available within a zone are restricted to prevent operations
-with system-wide impact. See \fBprivileges\fR(5).
-.sp
-.LP
-You can configure and administer zones with the \fBzoneadm\fR(1M) and
-\fBzonecfg\fR(1M) utilities. You can specify the configuration details a zone,
-install file system contents including software packages into the zone, and
-manage the runtime state of the zone. You can use the \fBzlogin\fR(1) to run
-commands within an active zone. You can do this without logging in through a
-network-based login server such as \fBsshd\fR(1M).
-.sp
-.LP
-The autobooting of zones is enabled and disabled by the zones service,
-identified by the FMRI:
-.sp
-.LP
-svc:/system/zones:default
-.sp
-.LP
-See \fBzoneadm\fR(1M). Note that a zone has an \fBautoboot\fR property, which
-can be set to \fBtrue\fR (always autoboot). However, if the zones service is
-disabled, autoboot will not occur, regardless of the setting of the autoboot
-property for a given zone. See \fBzonecfg\fR(1M).
-.sp
-.LP
-An alphanumeric name and numeric ID identify each active zone. Alphanumeric
-names are configured using the \fBzonecfg\fR(1M) utility. Numeric IDs are
-automatically assigned when the zone is booted. The \fBzonename\fR(1) utility
-reports the current zone name, and the \fBzoneadm\fR(1M) utility can be used to
-report the names and IDs of configured zones.
-.sp
-.LP
-A zone can be in one of several states:
-.sp
-.ne 2
-.na
-\fB\fBCONFIGURED\fR\fR
-.ad
-.RS 17n
-Indicates that the configuration for the zone has been completely specified and
-committed to stable storage.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBINCOMPLETE\fR\fR
-.ad
-.RS 17n
-Indicates that the zone is in the midst of being installed or uninstalled, or
-was interrupted in the midst of such a transition.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBINSTALLED\fR\fR
-.ad
-.RS 17n
-Indicates that the zone's configuration has been instantiated on the system:
-packages have been installed under the zone's root path.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBREADY\fR\fR
-.ad
-.RS 17n
-Indicates that the "virtual platform" for the zone has been established. For
-instance, file systems have been mounted, devices have been configured, but no
-processes associated with the zone have been started.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBRUNNING\fR\fR
-.ad
-.RS 17n
-Indicates that user processes associated with the zone application environment
-are running.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSHUTTING_DOWN\fR\fR
-.ad
-.br
-.na
-\fB\fBDOWN\fR\fR
-.ad
-.RS 17n
-Indicates that the zone is being halted. The zone can become stuck in one of
-these states if it is unable to tear down the application environment state
-(such as mounted file systems) or if some portion of the virtual platform
-cannot be destroyed. Such cases require operator intervention.
-.RE
-
-.SS "Process Access Restrictions"
-Processes running inside a zone (aside from the global zone) have restricted
-access to other processes. Only processes in the same zone are visible through
-\fB/proc\fR (see \fBproc\fR(4) or through system call interfaces that take
-process IDs such as \fBkill\fR(2) and \fBpriocntl\fR(2). Attempts to access
-processes that exist in other zones (including the global zone) fail with the
-same error code that would be issued if the specified process did not exist.
-.SS "Privilege Restrictions"
-Processes running within a non-global zone are restricted to a subset of
-privileges, in order to prevent one zone from being able to perform operations
-that might affect other zones. The set of privileges limits the capabilities of
-privileged users (such as the super-user or root user) within the zone. The
-list of privileges available within a zone can be displayed using the
-\fBppriv\fR(1) utility. For more information about privileges, see
-\fBprivileges\fR(5).
-.SS "Device Restrictions"
-The set of devices available within a zone is restricted, to prevent a process
-in one zone from interfering with processes in other zones. For example, a
-process in a zone should not be able to modify kernel memory using
-\fB/dev/kmem\fR, or modify the contents of the root disk. Thus, by default,
-only a few pseudo devices considered safe for use within a zone are available.
-Additional devices can be made available within specific zones using the
-\fBzonecfg\fR(1M) utility.
-.sp
-.LP
-The device and privilege restrictions have a number of effects on the utilities
-that can run in a non-global zone. For example, the \fBeeprom\fR(1M),
-\fBprtdiag\fR(1M), and \fBprtconf\fR(1M) utilities do not work in a zone since
-they rely on devices that are not normally available.
-.SS "Brands"
-A zone may be assigned a brand when it is initially created. A branded zone is
-one whose software does not match that software found in the global zone. The
-software may include Solaris software configured or laid out differently, or it
-may include non-Solaris software. The particular collection of software is
-called a "brand" (see \fBbrands\fR(5)). Once installed, a zone's brand may not
-be changed unless the zone is first uninstalled.
-.SS "File Systems"
-Each zone has its own section of the file system hierarchy, rooted at a
-directory known as the zone root. Processes inside the zone can access only
-files within that part of the hierarchy, that is, files that are located
-beneath the zone root. This prevents processes in one zone from corrupting or
-examining file system data associated with another zone. The \fBchroot\fR(1M)
-utility can be used within a zone, but can only restrict the process to a root
-path accessible within the zone.
-.sp
-.LP
-In order to preserve file system space, sections of the file system can be
-mounted into one or more zones using the read-only option of the
-\fBlofs\fR(7FS) file system. This allows the same file system data to be shared
-in multiple zones, while preserving the security guarantees supplied by zones.
-.sp
-.LP
-NFS and autofs mounts established within a zone are local to that zone; they
-cannot be accessed from other zones, including the global zone. The mounts are
-removed when the zone is halted or rebooted.
-.sp
-.LP
-A zone can share filesystems using \fBnfs\fR(4) or \fBsmb\fR(4)
-subject to the restrictions earlier in this section, plus the additional
-restriction that file sharing can only be done from filesystems a zone
-completely controls. Some \fBbrands\fR(5) do not have the zone root set to a
-filesystem boundary. \fBsharefs\fR(7FS) can instantiate per-zone subject to
-the brand restrictions.
-.SS "Networking"
-A zone has its own port number space for \fBTCP\fR, \fBUDP\fR, and \fBSCTP\fR
-applications and typically one or more separate \fBIP\fR addresses (but some
-configurations of Trusted Extensions share IP address(es) between zones).
-.sp
-.LP
-For the \fBIP\fR layer (\fBIP\fR routing, \fBARP\fR, \fBIPsec\fR, \fBIP\fR
-Filter, and so on) a zone can either share the configuration and state with the
-global zone (a shared-\fBIP\fR zone), or have its distinct \fBIP\fR layer
-configuration and state (an exclusive-\fBIP\fR zone).
-.sp
-.LP
-If a zone is to be connected to the same datalink, that is, be on the same
-\fBIP\fR subnet or subnets as the global zone, then it is appropriate for the
-zone to use the shared \fBIP\fR instance.
-.sp
-.LP
-If a zone needs to be isolated at the \fBIP\fR layer on the network, for
-instance being connected to different \fBVLAN\fRs or different \fBLAN\fRs than
-the global zone and other non-global zones, then for isolation reasons the zone
-should have its exclusive \fBIP\fR.
-.sp
-.LP
-A shared-\fBIP\fR zone is prevented from doing certain things towards the
-network (such as changing its \fBIP\fR address or sending spoofed \fBIP\fR or
-Ethernet packets), but an exclusive-\fBIP\fR zone has more or less the same
-capabilities towards the network as a separate host that is connected to the
-same network interface. In particular, the superuser in such a zone can change
-its \fBIP\fR address and spoof \fBARP\fR packets.
-.sp
-.LP
-The shared-\fBIP\fR zones are assigned one or more network interface names and
-\fBIP\fR addresses in \fBzonecfg\fR(1M). The network interface name(s) must
-also be configured in the global zone.
-.sp
-.LP
-The exclusive-\fBIP\fR zones are assigned one or more network interface names
-in \fBzonecfg\fR(1M). The network interface names must be exclusively assigned
-to that zone, that is, it (or they) can not be assigned to some other running
-zone, nor can they be used by the global zone.
-.sp
-.LP
-The full \fBIP\fR-level functionality in the form of \fBDHCP\fR client,
-\fBIPsec\fR and \fBIP\fR Filter, is available in exclusive-\fBIP\fR zones and
-not in shared-\fBIP\fR zones.
-.SS "Host Identifiers"
-A zone is capable of emulating a 32-bit host identifier, which can be
-configured via \fBzonecfg\fR(1M), for the purpose of system consolidation. If a
-zone emulates a host identifier, then commands such as \fBhostid\fR(1) and
-\fBsysdef\fR(1M) as well as C interfaces such as \fBsysinfo\fR(2) and
-\fBgethostid\fR(3C) that are executed within the context of the zone will
-display or return the zone's emulated host identifier rather than the host
-machine's identifier.
-.SH SEE ALSO
-\fBhostid\fR(1), \fBzlogin\fR(1), \fBzonename\fR(1),
-\fBsshd\fR(1M), \fBsysdef\fR(1M), \fBzoneadm\fR(1M), \fBzonecfg\fR(1M),
-\fBkill\fR(2), \fBpriocntl\fR(2), \fBsysinfo\fR(2), \fBgethostid\fR(3C),
-\fBgetzoneid\fR(3C), \fBucred_get\fR(3C), \fBnfs\fR(4), \fBproc\fR(4),
-\fBsmb\fR(4), \fBattributes\fR(5), \fBbrands\fR(5), \fBprivileges\fR(5),
-\fBsharefs\fR(7FS), \fBcrgetzoneid\fR(9F)
diff --git a/usr/src/man/man5/zpool-features.5 b/usr/src/man/man5/zpool-features.5
deleted file mode 100644
index 38045f80df..0000000000
--- a/usr/src/man/man5/zpool-features.5
+++ /dev/null
@@ -1,834 +0,0 @@
-'\" te
-.\" Copyright (c) 2013, 2017 by Delphix. All rights reserved.
-.\" Copyright (c) 2013 by Saso Kiselkov. All rights reserved.
-.\" Copyright (c) 2014, Joyent, Inc. All rights reserved.
-.\" Copyright (c) 2014 Integros [integros.com]
-.\" The contents of this file are subject to the terms of the Common Development
-.\" and Distribution License (the "License"). You may not use this file except
-.\" in compliance with the License. You can obtain a copy of the license at
-.\" usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\"
-.\" See the License for the specific language governing permissions and
-.\" limitations under the License. When distributing Covered Code, include this
-.\" CDDL HEADER in each file and include the License file at
-.\" usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this
-.\" CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your
-.\" own identifying information:
-.\" Portions Copyright [yyyy] [name of copyright owner]
-.TH ZPOOL-FEATURES 5 "May 15, 2019"
-.SH NAME
-zpool\-features \- ZFS pool feature descriptions
-.SH DESCRIPTION
-.LP
-ZFS pool on\-disk format versions are specified via "features" which replace
-the old on\-disk format numbers (the last supported on\-disk format number is
-28). To enable a feature on a pool use the \fBupgrade\fR subcommand of the
-\fBzpool\fR(1M) command, or set the \fBfeature@\fR\fIfeature_name\fR property
-to \fBenabled\fR.
-.sp
-.LP
-The pool format does not affect file system version compatibility or the ability
-to send file systems between pools.
-.sp
-.LP
-Since most features can be enabled independently of each other the on\-disk
-format of the pool is specified by the set of all features marked as
-\fBactive\fR on the pool. If the pool was created by another software version
-this set may include unsupported features.
-.SS "Identifying features"
-.LP
-Every feature has a guid of the form \fIcom.example:feature_name\fR. The reverse
-DNS name ensures that the feature's guid is unique across all ZFS
-implementations. When unsupported features are encountered on a pool they will
-be identified by their guids. Refer to the documentation for the ZFS
-implementation that created the pool for information about those features.
-.sp
-.LP
-Each supported feature also has a short name. By convention a feature's short
-name is the portion of its guid which follows the ':' (e.g.
-\fIcom.example:feature_name\fR would have the short name \fIfeature_name\fR),
-however a feature's short name may differ across ZFS implementations if
-following the convention would result in name conflicts.
-.SS "Feature states"
-.LP
-Features can be in one of three states:
-.sp
-.ne 2
-.na
-\fB\fBactive\fR\fR
-.ad
-.RS 12n
-This feature's on\-disk format changes are in effect on the pool. Support for
-this feature is required to import the pool in read\-write mode. If this
-feature is not read-only compatible, support is also required to import the pool
-in read\-only mode (see "Read\-only compatibility").
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBenabled\fR\fR
-.ad
-.RS 12n
-An administrator has marked this feature as enabled on the pool, but the
-feature's on\-disk format changes have not been made yet. The pool can still be
-imported by software that does not support this feature, but changes may be made
-to the on\-disk format at any time which will move the feature to the
-\fBactive\fR state. Some features may support returning to the \fBenabled\fR
-state after becoming \fBactive\fR. See feature\-specific documentation for
-details.
-.RE
-
-.sp
-.ne 2
-.na
-\fBdisabled\fR
-.ad
-.RS 12n
-This feature's on\-disk format changes have not been made and will not be made
-unless an administrator moves the feature to the \fBenabled\fR state. Features
-cannot be disabled once they have been enabled.
-.RE
-
-.sp
-.LP
-The state of supported features is exposed through pool properties of the form
-\fIfeature@short_name\fR.
-.SS "Read\-only compatibility"
-.LP
-Some features may make on\-disk format changes that do not interfere with other
-software's ability to read from the pool. These features are referred to as
-"read\-only compatible". If all unsupported features on a pool are read\-only
-compatible, the pool can be imported in read\-only mode by setting the
-\fBreadonly\fR property during import (see \fBzpool\fR(1M) for details on
-importing pools).
-.SS "Unsupported features"
-.LP
-For each unsupported feature enabled on an imported pool a pool property
-named \fIunsupported@feature_guid\fR will indicate why the import was allowed
-despite the unsupported feature. Possible values for this property are:
-
-.sp
-.ne 2
-.na
-\fB\fBinactive\fR\fR
-.ad
-.RS 12n
-The feature is in the \fBenabled\fR state and therefore the pool's on\-disk
-format is still compatible with software that does not support this feature.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBreadonly\fR\fR
-.ad
-.RS 12n
-The feature is read\-only compatible and the pool has been imported in
-read\-only mode.
-.RE
-
-.SS "Feature dependencies"
-.LP
-Some features depend on other features being enabled in order to function
-properly. Enabling a feature will automatically enable any features it
-depends on.
-.SH FEATURES
-.LP
-The following features are supported on this system:
-.sp
-.ne 2
-.na
-\fB\fBasync_destroy\fR\fR
-.ad
-.RS 4n
-.TS
-l l .
-GUID com.delphix:async_destroy
-READ\-ONLY COMPATIBLE yes
-DEPENDENCIES none
-.TE
-
-Destroying a file system requires traversing all of its data in order to
-return its used space to the pool. Without \fBasync_destroy\fR the file system
-is not fully removed until all space has been reclaimed. If the destroy
-operation is interrupted by a reboot or power outage the next attempt to open
-the pool will need to complete the destroy operation synchronously.
-
-When \fBasync_destroy\fR is enabled the file system's data will be reclaimed
-by a background process, allowing the destroy operation to complete without
-traversing the entire file system. The background process is able to resume
-interrupted destroys after the pool has been opened, eliminating the need
-to finish interrupted destroys as part of the open operation. The amount
-of space remaining to be reclaimed by the background process is available
-through the \fBfreeing\fR property.
-
-This feature is only \fBactive\fR while \fBfreeing\fR is non\-zero.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBempty_bpobj\fR\fR
-.ad
-.RS 4n
-.TS
-l l .
-GUID com.delphix:empty_bpobj
-READ\-ONLY COMPATIBLE yes
-DEPENDENCIES none
-.TE
-
-This feature increases the performance of creating and using a large
-number of snapshots of a single filesystem or volume, and also reduces
-the disk space required.
-
-When there are many snapshots, each snapshot uses many Block Pointer
-Objects (bpobj's) to track blocks associated with that snapshot.
-However, in common use cases, most of these bpobj's are empty. This
-feature allows us to create each bpobj on-demand, thus eliminating the
-empty bpobjs.
-
-This feature is \fBactive\fR while there are any filesystems, volumes,
-or snapshots which were created after enabling this feature.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfilesystem_limits\fR\fR
-.ad
-.RS 4n
-.TS
-l l .
-GUID com.joyent:filesystem_limits
-READ\-ONLY COMPATIBLE yes
-DEPENDENCIES extensible_dataset
-.TE
-
-This feature enables filesystem and snapshot limits. These limits can be used
-to control how many filesystems and/or snapshots can be created at the point in
-the tree on which the limits are set.
-
-This feature is \fBactive\fR once either of the limit properties has been
-set on a dataset. Once activated the feature is never deactivated.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBlz4_compress\fR\fR
-.ad
-.RS 4n
-.TS
-l l .
-GUID org.illumos:lz4_compress
-READ\-ONLY COMPATIBLE no
-DEPENDENCIES none
-.TE
-
-\fBlz4\fR is a high-performance real-time compression algorithm that
-features significantly faster compression and decompression as well as a
-higher compression ratio than the older \fBlzjb\fR compression.
-Typically, \fBlz4\fR compression is approximately 50% faster on
-compressible data and 200% faster on incompressible data than
-\fBlzjb\fR. It is also approximately 80% faster on decompression, while
-giving approximately 10% better compression ratio.
-
-When the \fBlz4_compress\fR feature is set to \fBenabled\fR, the
-administrator can turn on \fBlz4\fR compression on any dataset on the
-pool using the \fBzfs\fR(1M) command. Also, all newly written metadata
-will be compressed with \fBlz4\fR algorithm. Since this feature is not
-read-only compatible, this operation will render the pool unimportable
-on systems without support for the \fBlz4_compress\fR feature. Booting
-off of \fBlz4\fR-compressed root pools is supported.
-
-This feature becomes \fBactive\fR as soon as it is enabled and will
-never return to being \fBenabled\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBspacemap_histogram\fR\fR
-.ad
-.RS 4n
-.TS
-l l .
-GUID com.delphix:spacemap_histogram
-READ\-ONLY COMPATIBLE yes
-DEPENDENCIES none
-.TE
-
-This features allows ZFS to maintain more information about how free space
-is organized within the pool. If this feature is \fBenabled\fR, ZFS will
-set this feature to \fBactive\fR when a new space map object is created or
-an existing space map is upgraded to the new format. Once the feature is
-\fBactive\fR, it will remain in that state until the pool is destroyed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmulti_vdev_crash_dump\fR\fR
-.ad
-.RS 4n
-.TS
-l l .
-GUID com.joyent:multi_vdev_crash_dump
-READ\-ONLY COMPATIBLE no
-DEPENDENCIES none
-.TE
-
-This feature allows a dump device to be configured with a pool comprised
-of multiple vdevs. Those vdevs may be arranged in any mirrored or raidz
-configuration.
-
-When the \fBmulti_vdev_crash_dump\fR feature is set to \fBenabled\fR,
-the administrator can use the \fBdumpadm\fR(1M) command to configure a
-dump device on a pool comprised of multiple vdevs.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBextensible_dataset\fR\fR
-.ad
-.RS 4n
-.TS
-l l .
-GUID com.delphix:extensible_dataset
-READ\-ONLY COMPATIBLE no
-DEPENDENCIES none
-.TE
-
-This feature allows more flexible use of internal ZFS data structures,
-and exists for other features to depend on.
-
-This feature will be \fBactive\fR when the first dependent feature uses it,
-and will be returned to the \fBenabled\fR state when all datasets that use
-this feature are destroyed.
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBbookmarks\fR\fR
-.ad
-.RS 4n
-.TS
-l l .
-GUID com.delphix:bookmarks
-READ\-ONLY COMPATIBLE yes
-DEPENDENCIES extensible_dataset
-.TE
-
-This feature enables use of the \fBzfs bookmark\fR subcommand.
-
-This feature is \fBactive\fR while any bookmarks exist in the pool.
-All bookmarks in the pool can be listed by running
-\fBzfs list -t bookmark -r \fIpoolname\fR\fR.
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBenabled_txg\fR\fR
-.ad
-.RS 4n
-.TS
-l l .
-GUID com.delphix:enabled_txg
-READ\-ONLY COMPATIBLE yes
-DEPENDENCIES none
-.TE
-
-Once this feature is enabled ZFS records the transaction group number
-in which new features are enabled. This has no user-visible impact,
-but other features may depend on this feature.
-
-This feature becomes \fBactive\fR as soon as it is enabled and will
-never return to being \fBenabled\fR.
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBhole_birth\fR\fR
-.ad
-.RS 4n
-.TS
-l l .
-GUID com.delphix:hole_birth
-READ\-ONLY COMPATIBLE no
-DEPENDENCIES enabled_txg
-.TE
-
-This feature improves performance of incremental sends ("zfs send -i")
-and receives for objects with many holes. The most common case of
-hole-filled objects is zvols.
-
-An incremental send stream from snapshot \fBA\fR to snapshot \fBB\fR
-contains information about every block that changed between \fBA\fR and
-\fBB\fR. Blocks which did not change between those snapshots can be
-identified and omitted from the stream using a piece of metadata called
-the 'block birth time', but birth times are not recorded for holes (blocks
-filled only with zeroes). Since holes created after \fBA\fR cannot be
-distinguished from holes created before \fBA\fR, information about every
-hole in the entire filesystem or zvol is included in the send stream.
-
-For workloads where holes are rare this is not a problem. However, when
-incrementally replicating filesystems or zvols with many holes (for
-example a zvol formatted with another filesystem) a lot of time will
-be spent sending and receiving unnecessary information about holes that
-already exist on the receiving side.
-
-Once the \fBhole_birth\fR feature has been enabled the block birth times
-of all new holes will be recorded. Incremental sends between snapshots
-created after this feature is enabled will use this new metadata to avoid
-sending information about holes that already exist on the receiving side.
-
-This feature becomes \fBactive\fR as soon as it is enabled and will
-never return to being \fBenabled\fR.
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBembedded_data\fR\fR
-.ad
-.RS 4n
-.TS
-l l .
-GUID com.delphix:embedded_data
-READ\-ONLY COMPATIBLE no
-DEPENDENCIES none
-.TE
-
-This feature improves the performance and compression ratio of
-highly-compressible blocks. Blocks whose contents can compress to 112 bytes
-or smaller can take advantage of this feature.
-
-When this feature is enabled, the contents of highly-compressible blocks are
-stored in the block "pointer" itself (a misnomer in this case, as it contains
-the compresseed data, rather than a pointer to its location on disk). Thus
-the space of the block (one sector, typically 512 bytes or 4KB) is saved,
-and no additional i/o is needed to read and write the data block.
-
-This feature becomes \fBactive\fR as soon as it is enabled and will
-never return to being \fBenabled\fR.
-
-.RE
-.sp
-.ne 2
-.na
-\fB\fBdevice_removal\fR\fR
-.ad
-.RS 4n
-.TS
-l l .
-GUID com.delphix:device_removal
-READ\-ONLY COMPATIBLE no
-DEPENDENCIES none
-.TE
-
-This feature enables the "zpool remove" subcommand to remove top-level
-vdevs, evacuating them to reduce the total size of the pool.
-
-This feature becomes \fBactive\fR when the "zpool remove" command is used
-on a top-level vdev, and will never return to being \fBenabled\fR.
-
-.RE
-.sp
-.ne 2
-.na
-\fB\fBobsolete_counts\fR\fR
-.ad
-.RS 4n
-.TS
-l l .
-GUID com.delphix:obsolete_counts
-READ\-ONLY COMPATIBLE yes
-DEPENDENCIES device_removal
-.TE
-
-This feature is an enhancement of device_removal, which will over time
-reduce the memory used to track removed devices. When indirect blocks
-are freed or remapped, we note that their part of the indirect mapping
-is "obsolete", i.e. no longer needed. See also the \fBzfs remap\fR
-subcommand in \fBzfs\fR(1M).
-
-This feature becomes \fBactive\fR when the "zpool remove" command is
-used on a top-level vdev, and will never return to being \fBenabled\fR.
-
-.RE
-.sp
-.ne 2
-.na
-\fB\fBzpool_checkpoint\fR\fR
-.ad
-.RS 4n
-.TS
-l l .
-GUID com.delphix:zpool_checkpoint
-READ\-ONLY COMPATIBLE yes
-DEPENDENCIES none
-.TE
-
-This feature enables the "zpool checkpoint" subcommand that can
-checkpoint the state of the pool at the time it was issued and later
-rewind back to it or discard it.
-
-This feature becomes \fBactive\fR when the "zpool checkpoint" command
-is used to checkpoint the pool.
-The feature will only return back to being \fBenabled\fR when the pool
-is rewound or the checkpoint has been discarded.
-
-.RE
-.sp
-.ne 2
-.na
-\fB\fBspacemap_v2\fR\fR
-.ad
-.RS 4n
-.TS
-l l .
-GUID com.delphix:spacemap_v2
-READ\-ONLY COMPATIBLE yes
-DEPENDENCIES none
-.TE
-
-This feature enables the use of the new space map encoding which
-consists of two words (instead of one) whenever it is advantageous.
-The new encoding allows space maps to represent large regions of
-space more efficiently on-disk while also increasing their maximum
-addressable offset.
-
-This feature becomes \fBactive\fR once it is \fBenabled\fR, and never
-returns back to being \fBenabled\fR.
-
-.RE
-.sp
-.ne 2
-.na
-\fB\fBlarge_blocks\fR\fR
-.ad
-.RS 4n
-.TS
-l l .
-GUID org.open-zfs:large_block
-READ\-ONLY COMPATIBLE no
-DEPENDENCIES extensible_dataset
-.TE
-
-The \fBlarge_block\fR feature allows the record size on a dataset to be
-set larger than 128KB.
-
-This feature becomes \fBactive\fR once a \fBrecordsize\fR property has been
-set larger than 128KB, and will return to being \fBenabled\fR once all
-filesystems that have ever had their recordsize larger than 128KB are destroyed.
-.RE
-
-.ne 2
-.na
-\fB\fBlarge_dnode\fR\fR
-.ad
-.RS 4n
-.TS
-l l .
-GUID org.zfsonlinux:large_dnode
-READ\-ONLY COMPATIBLE no
-DEPENDENCIES extensible_dataset
-.TE
-
-The \fBlarge_dnode\fR feature allows the size of dnodes in a dataset to be
-set larger than 512B.
-
-This feature becomes \fBactive\fR once a dataset contains an object with a
-dnode larger than 512B, which occurs as a result of setting the \fBdnodesize\fR
-dataset property to a value other than \fBlegacy\fR. The feature will return to
-being \fBenabled\fR once all filesystems that have ever contained a dnode larger
-than 512B are destroyed. Large dnodes allow more data to be stored in the
-bonus buffer, thus potentially improving performance by avoiding the use of
-spill blocks.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsha512\fR\fR
-.ad
-.RS 4n
-.TS
-l l .
-GUID org.illumos:sha512
-READ\-ONLY COMPATIBLE no
-DEPENDENCIES extensible_dataset
-.TE
-
-This feature enables the use of the SHA-512/256 truncated hash algorithm
-(FIPS 180-4) for checksum and dedup. The native 64-bit arithmetic of
-SHA-512 provides an approximate 50% performance boost over SHA-256 on
-64-bit hardware and is thus a good minimum-change replacement candidate
-for systems where hash performance is important, but these systems
-cannot for whatever reason utilize the faster \fBskein\fR and
-\fBedonr\fR algorithms.
-
-When the \fBsha512\fR feature is set to \fBenabled\fR, the administrator
-can turn on the \fBsha512\fR checksum on any dataset using the
-\fBzfs set checksum=sha512\fR command. This feature becomes
-\fBactive\fR once a \fBchecksum\fR property has been set to \fBsha512\fR,
-and will return to being \fBenabled\fR once all filesystems that have
-ever had their checksum set to \fBsha512\fR are destroyed.
-
-Booting off of pools utilizing SHA-512/256 is supported.
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBskein\fR\fR
-.ad
-.RS 4n
-.TS
-l l .
-GUID org.illumos:skein
-READ\-ONLY COMPATIBLE no
-DEPENDENCIES extensible_dataset
-.TE
-
-This feature enables the use of the Skein hash algorithm for checksum
-and dedup. Skein is a high-performance secure hash algorithm that was a
-finalist in the NIST SHA-3 competition. It provides a very high security
-margin and high performance on 64-bit hardware (80% faster than
-SHA-256). This implementation also utilizes the new salted checksumming
-functionality in ZFS, which means that the checksum is pre-seeded with a
-secret 256-bit random key (stored on the pool) before being fed the data
-block to be checksummed. Thus the produced checksums are unique to a
-given pool, preventing hash collision attacks on systems with dedup.
-
-When the \fBskein\fR feature is set to \fBenabled\fR, the administrator
-can turn on the \fBskein\fR checksum on any dataset using the
-\fBzfs set checksum=skein\fR command. This feature becomes
-\fBactive\fR once a \fBchecksum\fR property has been set to \fBskein\fR,
-and will return to being \fBenabled\fR once all filesystems that have
-ever had their checksum set to \fBskein\fR are destroyed.
-
-Booting off of pools using \fBskein\fR is supported.
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBbookmark_v2\fR\fR
-.ad
-.RS 4n
-.TS
-l l .
-GUID com.datto:bookmark_v2
-READ\-ONLY COMPATIBLE no
-DEPENDENCIES extensible_dataset
-.TE
-
-This feature enables the creation and management of larger bookmarks which are
-needed for other features in ZFS.
-
-This feature becomes \fBactive\fR when a v2 bookmark is created and will be
-returned to the \fBenabled\fR state when all v2 bookmarks are destroyed.
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBedonr\fR\fR
-.ad
-.RS 4n
-.TS
-l l .
-GUID org.illumos:edonr
-READ\-ONLY COMPATIBLE no
-DEPENDENCIES extensible_dataset
-.TE
-
-This feature enables the use of the Edon-R hash algorithm for checksum,
-including for nopwrite (if compression is also enabled, an overwrite of
-a block whose checksum matches the data being written will be ignored).
-In an abundance of caution, Edon-R can not be used with dedup
-(without verification).
-
-Edon-R is a very high-performance hash algorithm that was part
-of the NIST SHA-3 competition. It provides extremely high hash
-performance (over 350% faster than SHA-256), but was not selected
-because of its unsuitability as a general purpose secure hash algorithm.
-This implementation utilizes the new salted checksumming functionality
-in ZFS, which means that the checksum is pre-seeded with a secret
-256-bit random key (stored on the pool) before being fed the data block
-to be checksummed. Thus the produced checksums are unique to a given
-pool.
-
-When the \fBedonr\fR feature is set to \fBenabled\fR, the administrator
-can turn on the \fBedonr\fR checksum on any dataset using the
-\fBzfs set checksum=edonr\fR command. This feature becomes
-\fBactive\fR once a \fBchecksum\fR property has been set to \fBedonr\fR,
-and will return to being \fBenabled\fR once all filesystems that have
-ever had their checksum set to \fBedonr\fR are destroyed.
-
-Booting off of pools using \fBedonr\fR is supported.
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBallocation_classes\fR\fR
-.ad
-.RS 4n
-.TS
-l l .
-GUID com.intel:allocation_classes
-READ\-ONLY COMPATIBLE yes
-DEPENDENCIES none
-.TE
-
-This feature enables support for separate allocation classes.
-
-This feature becomes \fBactive\fR when a dedicated allocation class vdev
-(dedup or special) is created with zpool create or zpool add. With device
-removal, it can be returned to the \fBenabled\fR state if all the top-level
-vdevs from an allocation class are removed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBencryption\fR\fR
-.ad
-.RS 4n
-.TS
-l l .
-GUID com.datto:encryption
-READ\-ONLY COMPATIBLE no
-DEPENDENCIES extensible_dataset
-.TE
-
-This feature enables the creation and management of natively encrypted datasets.
-
-This feature becomes \fBactive\fR when an encrypted dataset is created
-and will be returned to the \fBenabled\fR state when all datasets that
-use this feature are destroyed.
-
-.RE
-.sp
-.ne 2
-.na
-\fB\fBresilver_defer\fR\fR
-.ad
-.RS 4n
-.TS
-l l .
-GUID com.datto:resilver_defer
-READ\-ONLY COMPATIBLE yes
-DEPENDENCIES none
-.TE
-
-This feature allows zfs to postpone new resilvers if an existing one is already
-in progress. Without this feature, any new resilvers will cause the currently
-running one to be immediately restarted from the beginning.
-
-This feature becomes \fBactive\fR once a resilver has been deferred, and
-returns to being \fBenabled\fR when the deferred resilver begins.
-.RE
-
-.sp
-.ne 2
-.na
-\fBuserobj_accounting\fR
-.ad
-.RS 4n
-.TS
-l l .
-GUID org.zfsonlinux:userobj_accounting
-READ\-ONLY COMPATIBLE yes
-DEPENDENCIES extensible_dataset
-.TE
-
-This feature allows administrators to account the object usage information
-by user and group.
-
-This feature becomes \fBactive\fR as soon as it is enabled and will never
-return to being \fBenabled\fR.
-Each filesystem will be upgraded automatically when remounted, or when new
-files are created under that filesystem.
-The upgrade can also be started manually on filesystems by running
-`zfs set version=current <pool/fs>`.
-The upgrade process runs in the background and may take a while to complete
-for filesystems containing a large number of files.
-.RE
-
-.sp
-.ne 2
-.na
-\fBproject_quota\fR
-.ad
-.RS 4n
-.TS
-l l .
-GUID org.zfsonlinux:project_quota
-READ\-ONLY COMPATIBLE yes
-DEPENDENCIES extensible_dataset
-.TE
-
-This feature allows administrators to account the space and object usage
-information against the project identifier (ID).
-
-The project ID is a new object-based attribute.
-When upgrading an existing filesystem, an object without a project ID
-attribute will be assigned a zero project ID.
-After this feature is enabled, a newly created object will inherit
-its parent directory's project ID if the parent's inherit flag is set (via
-\fBzfs project [-s|-C]\fR).
-Otherwise, the new object's project ID will be set as zero.
-An object's project ID can be changed at any time by the owner (or privileged
-user) via \fBzfs project -p $prjid\fR.
-
-This feature will become \fBactive\fR as soon as it is enabled and will never
-return to being \fBdisabled\fR.
-Each filesystem will be upgraded automatically when remounted or when a new file
-is created under that filesystem.
-The upgrade can also be triggered on filesystems via `zfs set version=current
-<pool/fs>`.
-The upgrade process runs in the background and may take a while to complete
-for the filesystems containing a large number of files.
-.RE
-
-.sp
-.ne 2
-.na
-\fBlog_spacemap\fR
-.ad
-.RS 4n
-.TS
-l l .
-GUID com.delphix:log_spacemap
-READ\-ONLY COMPATIBLE yes
-DEPENDENCIES com.delphix:spacemap_v2
-.TE
-
-This feature improves performance for heavily-fragmented pools,
-especially when workloads are heavy in random-writes.
-It does so by logging all the metaslab changes on a single spacemap every TXG
-instead of scattering multiple writes to all the metaslab spacemaps.
-
-This feature becomes \fBactive\fR as soon as it is enabled and will never
-return to being \fBenabled\fR.
-.RE
-
-.SH "SEE ALSO"
-\fBzfs\fR(1M), \fBzpool\fR(1M)
diff --git a/usr/src/man/man7/FSS.7 b/usr/src/man/man7/FSS.7
deleted file mode 100644
index 8583d0831e..0000000000
--- a/usr/src/man/man7/FSS.7
+++ /dev/null
@@ -1,231 +0,0 @@
-.\" Copyright (c) 2001, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 2019 Joyent, Inc.
-.\"
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.\"
-.Dd December 17, 2019
-.Dt FSS 7
-.Os
-.Sh NAME
-.Nm FSS
-.Nd Fair share scheduler
-.Sh DESCRIPTION
-The fair share scheduler (FSS) guarantees application performance by explicitly
-allocating shares of CPU resources to projects.
-A share indicates a project's
-entitlement to available CPU resources.
-Because shares are meaningful only in
-comparison with other project's shares, the absolute quantity of shares is not
-important.
-Any number that is in proportion with the desired CPU entitlement
-can be used.
-.Pp
-The goals of the FSS scheduler differ from the traditional time-sharing
-scheduling class (TS).
-In addition to scheduling individual LWPs, the FSS
-scheduler schedules projects against each other, making it impossible for any
-project to acquire more CPU cycles simply by running more processes
-concurrently.
-.Pp
-A project's entitlement is individually calculated by FSS independently for
-each processor set if the project contains processes bound to them.
-If a
-project is running on more than one processor set, it can have different
-entitlements on every set.
-A project's entitlement is defined as a ratio
-between the number of shares given to a project and the sum of shares of all
-active projects running on the same processor set.
-An active project is one
-that has at least one running or runnable process.
-Entitlements are recomputed
-whenever any project becomes active or inactive, or whenever the number of
-shares is changed.
-.Pp
-Processor sets represent virtual machines in the FSS scheduling class and
-processes are scheduled independently in each processor set.
-That is, processes
-compete with each other only if they are running on the same processor set.
-When a processor set is destroyed, all processes that were bound to it are
-moved to the default processor set, which always exists.
-Empty processor sets
-(that is, sets without processors in them) have no impact on the FSS scheduler
-behavior.
-.Pp
-If a processor set contains a mix of TS/IA and FSS processes, the fairness of
-the FSS scheduling class can be compromised because these classes use the same
-range of priorities.
-Fairness is most significantly affected if processes
-running in the TS scheduling class are CPU-intensive and are bound to
-processors within the processor set.
-As a result, you should avoid having
-processes from TS/IA and FSS classes share the same processor set.
-RT and FSS
-processes use disjoint priority ranges and therefore can share processor sets.
-.Pp
-As projects execute, their CPU usage is accumulated over time.
-The FSS
-scheduler periodically decays CPU usages of every project by multiplying it
-with a decay factor, ensuring that more recent CPU usage has greater weight
-when taken into account for scheduling.
-The FSS scheduler continually adjusts
-priorities of all processes to make each project's relative CPU usage converge
-with its entitlement.
-.Pp
-While FSS is designed to fairly allocate cycles over a long-term time period,
-it is possible that projects will not receive their allocated shares worth of
-CPU cycles due to uneven demand.
-This makes one-shot, instantaneous analysis of
-FSS performance data unreliable.
-.Pp
-Note that share is not the same as utilization.
-A project may be allocated 50%
-of the system, although on the average, it uses just 20%.
-Shares serve to cap a
-project's CPU usage only when there is competition from other projects running
-on the same processor set.
-When there is no competition, utilization may be
-larger than entitlement based on shares.
-Allocating a small share to a busy
-project slows it down but does not prevent it from completing its work if the
-system is not saturated.
-.Pp
-The configuration of CPU shares is managed by the name server as a property of
-the
-.Xr project 4
-database.
-In the following example, an entry in the
-.Pa /etc/project
-file sets the number of shares for project
-.Sy x-files
-to 10:
-.Bd -literal -offset 2n
-x-files:100::::project.cpu-shares=(privileged,10,none)
-.Ed
-.Pp
-Projects with undefined number of shares are given one share each.
-This means
-that such projects are treated with equal importance.
-Projects with 0 shares
-only run when there are no projects with non-zero shares competing for the same
-processor set.
-The maximum number of shares that can be assigned to one project
-is 65535.
-.Pp
-You can use the
-.Xr prctl 1
-command to determine the current share
-assignment for a given project:
-.Bd -literal -offset 2n
-$ prctl -n project.cpu-shares -i project x-files
-.Ed
-.Pp
-or to change the amount of shares if you have root privileges:
-.Bd -literal -offset 2n
-# prctl -r -n project.cpu-shares -v 5 -i project x-files
-.Ed
-.Pp
-See the
-.Xr prctl 1
-man page for additional information on how to modify and
-examine resource controls associated with active processes, tasks, or projects
-on the system.
-See
-.Xr resource_controls 5
-for a description of the resource
-controls supported in the current release of the Solaris operating system.
-.Pp
-By default, project
-.Sy system
-(project ID 0) includes all system daemons
-started by initialization scripts and has an
-.Dq unlimited
-amount of shares.
-That
-is, it is always scheduled first no matter how many shares are given to other
-projects.
-.Pp
-The following command sets FSS as the default scheduler for the system:
-.Bd -literal -offset 2n
-# dispadmin -d FSS
-.Ed
-.Pp
-This change will take effect on the next reboot.
-Alternatively, you can move
-processes from the time-share scheduling class (as well as the special case of
-init) into the FSS class without changing your default scheduling class and
-rebooting by becoming
-.Sy root ,
-and then using the
-.Xr priocntl 1
-command, as shown in the following example:
-.Bd -literal -offset 2n
-# priocntl -s -c FSS -i class TS
-# priocntl -s -c FSS -i pid 1
-.Ed
-.Sh CONFIGURING SCHEDULER WITH DISPADMIN
-You can use the
-.Xr dispadmin 1M
-command to examine and tune the FSS
-scheduler's time quantum value.
-Time quantum is the amount of time that a
-thread is allowed to run before it must relinquish the processor.
-The following
-example dumps the current time quantum for the fair share scheduler:
-.Bd -literal -offset 2n
-$ dispadmin -g -c FSS
- #
- # Fair Share Scheduler Configuration
- #
- RES=1000
- #
- # Time Quantum
- #
- QUANTUM=110
-.Ed
-.Pp
-The value of the QUANTUM represents some fraction of a second with the
-fractional value determined by the reciprocal value of RES.
-With the default
-value of RES = 1000, the reciprocal of 1000 is \&.001, or milliseconds.
-Thus, by
-default, the QUANTUM value represents the time quantum in milliseconds.
-.Pp
-If you change the RES value using
-.Xr dispadmin 1M
-with the
-.Fl r
-option, you also change the QUANTUM value.
-For example, instead of quantum of 110 with RES
-of 1000, a quantum of 11 with a RES of 100 results.
-The fractional unit is different while the amount of time is the same.
-.Pp
-You can use the
-.Fl s
-option to change the time quantum value.
-Note that such changes are not preserved across reboot.
-Please refer to the
-.Xr dispadmin 1M
-man page for additional information.
-.Sh SEE ALSO
-.Xr prctl 1 ,
-.Xr priocntl 1 ,
-.Xr dispadmin 1M ,
-.Xr psrset 1M ,
-.Xr priocntl 2 ,
-.Xr project 4 ,
-.Xr resource_controls 5
-.Pp
-.%T System Administration Guide: Virtualization Using the Solaris Operating System
diff --git a/usr/src/man/man7/Intro.7 b/usr/src/man/man7/Intro.7
index 3e08d1344b..0b3632c773 100644
--- a/usr/src/man/man7/Intro.7
+++ b/usr/src/man/man7/Intro.7
@@ -1,209 +1,87 @@
-.\" Copyright (c) 1999, Sun Microsystems, Inc. All Rights Reserved.
+'\" te
.\" Copyright 1989 AT&T
-.\" Copyright 2020 Joyent, Inc.
-.\"
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.\"
-.Dd January 6, 2020
-.Dt INTRO 7
-.Os
-.Sh NAME
-.Nm Intro ,
-.Nm intro
-.Nd introduction to special files
-.Sh DESCRIPTION
-This section describes various device and network interfaces available on the
-sysstem.
-The types of interfaces described include character and block
-devices,
-.Sy STREAMS
-modules, network protocols, file systems, and ioctl requests
-for driver subsystems and classes.
-.Pp
-This section contains the following major collections:
-.Bl -tag -width "xxxxx"
-.It Pq Sy 7D
-The system provides drivers for a variety of hardware devices, such as disk,
-magnetic tapes, serial communication lines, mice, and frame buffers, as well
-as virtual devices such as pseudo-terminals and windows.
-.Pp
-This section describes special files that refer to specific hardware
-peripherals and device drivers.
-.Sy STREAMS
-device drivers are also described.
-Characteristics of both the hardware device and the corresponding device driver
-are discussed where applicable.
-.Pp
-An application accesses a device through that device's special file.
-This
-section specifies the device special file to be used to access the device as
-well as application programming interface (API) information relevant to the use
-of the device driver.
-All device special files are located under the
-.Pa /devices
-directory.
-The
-.Pa /devices
-directory hierarchy attempts to mirror the hierarchy of system
-busses, controllers, and devices configured on the system.
-Logical device names for special files in
-.Pa /devices
-are located under the
-.Pa /dev
-directory.
-Although not every special file under
-.Pa /devices
-will have a corresponding logical entry under
-.Pa /dev ,
-whenever possible, an
-application should reference a device using the logical name for the device.
-Logical device names are listed in the
-.Sy FILES
-section of the page for the device in question.
-.Pp
-This section also describes driver configuration where applicable.
-Many device drivers have a driver configuration file of the form
-.Em driver_name Ns \&.conf
-associated with them (see
-.Xr driver.conf 4 ) .
-The configuration information stored in the driver
-configuration file is used to configure the driver and the device.
-Driver configuration files are located in
-.Pa /kernel/drv
-and
-.Pa /usr/kernel/drv .
-Driver configuration files for platform dependent
-drivers are located in
-.Pa /platform/`uname\ -i`/kernel/drv
-where
-.Pa `uname\ -i`
-is the output of the
-.Xr uname 1
-command with the
-.Fl i
-option.
-.Pp
-Some driver configuration files may contain user configurable properties.
-Changes in a driver's configuration file will not take effect until the system
-is rebooted or the driver has been removed and re-added (see
-.Xr rem_drv 1M
-and
-.Xr add_drv 1M ) .
-.It Pq Sy 7FS
-This section describes the programmatic interface for several file systems
-supported by SunOS.
-.It Pq Sy 7I
-This section describes ioctl requests which apply to a class of drivers or
-subsystems.
-For example, ioctl requests which apply to most tape devices are
-discussed in
-.Xr mtio 7I .
-Ioctl requests relevant to only a specific
-device are described on the man page for that device.
-The page for the device
-in question should still be examined for exceptions to the ioctls listed in
-section 7I.
-.It Pq Sy 7M
-This section describes
-.Sy STREAMS
-modules.
-Note that
-.Sy STREAMS
-drivers are discussed in section 7D.
-.Xr streamio 7I
-contains a list of ioctl requests used to manipulate
-.Sy STREAMS
-modules and interface with the
-.Sy STREAMS
-framework.
-.Xr ioctl 2
-requests specific to a
-.Sy STREAMS
-module will be discussed on the man page for that module.
-.It Pq Sy 7P
-This section describes various network protocols available in SunOS.
-SunOS supports both socket-based and
-.Sy STREAMS Ns -based
-network communications.
-.Pp
-The Internet protocol family, described in
-.Xr inet 7P ,
-is the primary protocol family supported by SunOS, although the system can
-support a number of others.
-The raw interface provides low-level services, such as
-packet fragmentation and reassembly, routing, addressing, and basic transport
-for socket-based implementations.
-Facilities for communicating using an
-Internet-family protocol are generally accessed by specifying the
-.Dv AF_INET
-address family when binding a socket; see
-.Xr socket 3SOCKET
-for details.
-.Pp
-Major protocols in the Internet family include:
-.Bl -bullet -offset indent
-.It
-The Internet Protocol (IP) itself, which supports the universal datagram
-format, as described in
-.Xr ip 7P .
-This is the default protocol for
-.Dv SOCK_RAW
-type sockets within the
-.Dv AF_INET
-domain.
-.It
-The Transmission Control Protocol (TCP); see
-.Xr tcp 7P .
-This is the default protocol for
-.Dv SOCK_STREAM
-type sockets.
-.It
-The User Datagram Protocol (UDP); see
-.Xr udp 7P .
-This is the default
-protocol for
-.Dv SOCK_DGRAM
-type sockets.
-.It
-The Address Resolution Protocol (ARP); see
-.Xr arp 7P .
-.It
-The Internet Control Message Protocol (ICMP); see
-.Xr icmp 7P .
-.El
-.El
-.Sh SEE ALSO
-.Xr add_drv 1M ,
-.Xr rem_drv 1M ,
-.Xr ioctl 2 ,
-.Xr Intro 3 ,
-.Xr socket 3SOCKET ,
-.Xr driver.conf 4 ,
-.Xr st 7D ,
-.Xr mtio 7I ,
-.Xr streamio 7I ,
-.Xr arp 7P ,
-.Xr icmp 7P ,
-.Xr inet 7P ,
-.Xr ip 7P ,
-.Xr tcp 7P ,
-.Xr udp 7P
-.Pp
-.%T System Administration Guide: IP Services
-.Pp
-.%T STREAMS Programming Guide
-.Pp
-.%T Writing Device Drivers
+.\" Copyright (C) 2008, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH INTRO 7 "Nov 17, 2008"
+.SH NAME
+Intro, intro \- introduction to miscellany
+.SH DESCRIPTION
+.sp
+.LP
+Among the topics presented in this section are:
+.sp
+.ne 2
+.na
+\fBStandards\fR
+.ad
+.RS 16n
+The POSIX (IEEE) Standards and the X/Open Specifications are described on the
+\fBstandards\fR page.
+.RE
+
+.sp
+.ne 2
+.na
+\fBEnvironments\fR
+.ad
+.RS 16n
+The user environment (\fBenviron\fR), the subset of the user environment that
+depends on language and cultural conventions (\fBlocale\fR), the large file
+compilation environment (\fBlfcompile\fR), and the transitional compilation
+environment (\fBlfcompile64\fR) are described.
+.RE
+
+.sp
+.ne 2
+.na
+\fBMacros\fR
+.ad
+.RS 16n
+The macros to format Reference Manual pages (\fBman\fR and \fBmansun\fR) as
+well as other text format macros (\fBme\fR, \fBmm\fR, and \fBms\fR) are
+described.
+.RE
+
+.sp
+.ne 2
+.na
+\fBCharacters\fR
+.ad
+.RS 16n
+Tables of character sets (\fBascii\fR, \fBcharmap\fR, \fBeqnchar\fR, and
+\fBiconv\fR), file format notation (\fBformats\fR), file name pattern matching
+(\fBfnmatch\fR), and regular expressions (\fBregex\fR and \fBregexp\fR) are
+presented.
+.RE
+
+.SH ACKNOWLEDGMENTS
+.sp
+.LP
+Sun Microsystems, Inc. gratefully acknowledges The Open Group for permission to
+reproduce portions of its copyrighted documentation. Original documentation
+from The Open Group can be obtained online at
+http://www.opengroup.org/bookstore/\&.
+.sp
+.LP
+The Institute of Electrical and Electronics Engineers and The Open Group, have
+given us permission to reprint portions of their documentation.
+.sp
+.LP
+In the following statement, the phrase ``this text'' refers to portions of the
+system documentation.
+.sp
+.LP
+Portions of this text are reprinted and reproduced in electronic form in the
+SunOS Reference Manual, from IEEE Std 1003.1, 2004 Edition, Standard for
+Information Technology -- Portable Operating System Interface (POSIX), The Open
+Group Base Specifications Issue 6, Copyright (C) 2001-2004 by the Institute of
+Electrical and Electronics Engineers, Inc and The Open Group. In the event of
+any discrepancy between these versions and the original IEEE and The Open Group
+Standard, the original IEEE and The Open Group Standard is the referee
+document. The original Standard can be obtained online at
+http://www.opengroup.org/unix/online.html\&.
+.sp
+.LP
+This notice shall appear on any product containing this material.
diff --git a/usr/src/man/man7/Makefile b/usr/src/man/man7/Makefile
index c53357d29a..6ce3008a0c 100644
--- a/usr/src/man/man7/Makefile
+++ b/usr/src/man/man7/Makefile
@@ -11,25 +11,223 @@
#
# Copyright 2011, Richard Lowe
-# Copyright 2013 Nexenta Systems, Inc. All rights reserved.
+# Copyright (c) 2012 by Delphix. All rights reserved.
+# Copyright 2014 Nexenta Systems, Inc.
+# Copyright 2014 Garrett D'Amore <garrett@damore.org>
# Copyright 2017 Joyent, Inc.
+# Copyright 2018 Gary Mills
+# Copyright 2019 OmniOS Community Edition (OmniOSce) Association.
+# Copyright 2019 Peter Tribble
#
include $(SRC)/Makefile.master
-MANSECT= 7
+MANSECT= 7
+_MANFILES= Intro.7 \
+ acl.7 \
+ ad.7 \
+ ascii.7 \
+ attributes.7 \
+ audit_binfile.7 \
+ audit_remote.7 \
+ audit_syslog.7 \
+ brands.7 \
+ byteorder.7 \
+ cancellation.7 \
+ charmap.7 \
+ condition.7 \
+ crypt_bsdbf.7 \
+ crypt_bsdmd5.7 \
+ crypt_sha256.7 \
+ crypt_sha512.7 \
+ crypt_sunmd5.7 \
+ crypt_unix.7 \
+ device_clean.7 \
+ dhcp.7 \
+ environ.7 \
+ epoll.7 \
+ eqn.7 \
+ eqnchar.7 \
+ eventfd.7 \
+ extendedFILE.7 \
+ filesystem.7 \
+ fnmatch.7 \
+ formats.7 \
+ fsattr.7 \
+ grub.7 \
+ gss_auth_rules.7 \
+ hal.7 \
+ iconv.7 \
+ iconv_unicode.7 \
+ ieee802.3.7 \
+ ieee802.11.7 \
+ inotify.7 \
+ ipfilter.7 \
+ isalist.7 \
+ kerberos.7 \
+ krb5_auth_rules.7 \
+ krb5envvar.7 \
+ largefile.7 \
+ lf64.7 \
+ lfcompile.7 \
+ lfcompile64.7 \
+ locale.7 \
+ lx.7 \
+ man.7 \
+ mandoc_char.7 \
+ mandoc_roff.7 \
+ mansun.7 \
+ mdoc.7 \
+ me.7 \
+ mech_spnego.7 \
+ mm.7 \
+ ms.7 \
+ mutex.7 \
+ nfssec.7 \
+ overlay.7 \
+ pam_allow.7 \
+ pam_authtok_check.7 \
+ pam_authtok_get.7 \
+ pam_authtok_store.7 \
+ pam_deny.7 \
+ pam_dhkeys.7 \
+ pam_dial_auth.7 \
+ pam_krb5.7 \
+ pam_krb5_migrate.7 \
+ pam_ldap.7 \
+ pam_list.7 \
+ pam_passwd_auth.7 \
+ pam_rhosts_auth.7 \
+ pam_roles.7 \
+ pam_sample.7 \
+ pam_smb_passwd.7 \
+ pam_smbfs_login.7 \
+ pam_timestamp.7 \
+ pam_tsol_account.7 \
+ pam_unix_account.7 \
+ pam_unix_auth.7 \
+ pam_unix_cred.7 \
+ pam_unix_session.7 \
+ pkcs11_kernel.7 \
+ pkcs11_softtoken.7 \
+ pkcs11_tpm.7 \
+ privileges.7 \
+ prof.7 \
+ rbac.7 \
+ regex.7 \
+ regexp.7 \
+ resource_controls.7 \
+ security-flags.7 \
+ smf.7 \
+ smf_bootstrap.7 \
+ smf_method.7 \
+ smf_restarter.7 \
+ smf_security.7 \
+ smf_template.7 \
+ standards.7 \
+ sticky.7 \
+ tbl.7 \
+ tecla.7 \
+ term.7 \
+ threads.7 \
+ timerfd.7 \
+ trusted_extensions.7 \
+ vgrindefs.7 \
+ zones.7 \
+ zpool-features.7
-MANFILES= FSS.7 \
- Intro.7 \
- cpr.7 \
- ibmf.7 \
- swap.7
+i386_MANFILES= beastie.4th.7 \
+ brand.4th.7 \
+ check-password.4th.7 \
+ color.4th.7 \
+ delay.4th.7 \
+ gptzfsboot.7 \
+ isoboot.7 \
+ loader.7 \
+ loader.4th.7 \
+ menu.4th.7 \
+ menusets.4th.7 \
+ pxeboot.7 \
+ version.4th.7
-MANLINKS= intro.7
+MANLINKS= ANSI.7 \
+ C++.7 \
+ C.7 \
+ CSI.7 \
+ ISO.7 \
+ MT-Level.7 \
+ POSIX.1.7 \
+ POSIX.2.7 \
+ POSIX.7 \
+ RBAC.7 \
+ SUS.7 \
+ SUSv2.7 \
+ SUSv3.7 \
+ SVID.7 \
+ SVID3.7 \
+ XNS.7 \
+ XNS4.7 \
+ XNS5.7 \
+ XPG.7 \
+ XPG3.7 \
+ XPG4.7 \
+ XPG4v2.7 \
+ advance.7 \
+ architecture.7 \
+ availability.7 \
+ compile.7 \
+ endian.7 \
+ intro.7 \
+ pthreads.7 \
+ stability.7 \
+ standard.7 \
+ step.7 \
+ teclarc.7
+
+MANFILES= $(_MANFILES) $($(MACH)_MANFILES)
intro.7 := LINKSRC = Intro.7
+CSI.7 := LINKSRC = attributes.7
+MT-Level.7 := LINKSRC = attributes.7
+architecture.7 := LINKSRC = attributes.7
+availability.7 := LINKSRC = attributes.7
+stability.7 := LINKSRC = attributes.7
+standard.7 := LINKSRC = attributes.7
+
+endian.7 := LINKSRC = byteorder.7
+
+RBAC.7 := LINKSRC = rbac.7
+
+advance.7 := LINKSRC = regexp.7
+compile.7 := LINKSRC = regexp.7
+step.7 := LINKSRC = regexp.7
+
+ANSI.7 := LINKSRC = standards.7
+C++.7 := LINKSRC = standards.7
+C.7 := LINKSRC = standards.7
+ISO.7 := LINKSRC = standards.7
+POSIX.1.7 := LINKSRC = standards.7
+POSIX.2.7 := LINKSRC = standards.7
+POSIX.7 := LINKSRC = standards.7
+SUS.7 := LINKSRC = standards.7
+SUSv2.7 := LINKSRC = standards.7
+SUSv3.7 := LINKSRC = standards.7
+SVID.7 := LINKSRC = standards.7
+SVID3.7 := LINKSRC = standards.7
+XNS.7 := LINKSRC = standards.7
+XNS4.7 := LINKSRC = standards.7
+XNS5.7 := LINKSRC = standards.7
+XPG.7 := LINKSRC = standards.7
+XPG3.7 := LINKSRC = standards.7
+XPG4.7 := LINKSRC = standards.7
+XPG4v2.7 := LINKSRC = standards.7
+
+teclarc.7 := LINKSRC = tecla.7
+
+pthreads.7 := LINKSRC = threads.7
+
.KEEP_STATE:
include $(SRC)/man/Makefile.man
diff --git a/usr/src/man/man7/acl.7 b/usr/src/man/man7/acl.7
new file mode 100644
index 0000000000..3dd58041df
--- /dev/null
+++ b/usr/src/man/man7/acl.7
@@ -0,0 +1,847 @@
+'\" te
+.\" Copyright (c) 2020 Peter Tribble.
+.\" Copyright 2014 Nexenta Systems, Inc. All rights reserved.
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH ACL 7 "Feb 8, 2020"
+.SH NAME
+acl \- Access Control Lists
+.SH DESCRIPTION
+Access control lists (ACLs) are discretionary access control mechanisms that
+grant and deny access to files and directories. Two different ACL models are
+supported in this release: POSIX-draft ACLs and NFSv4 ACLs.
+.sp
+.LP
+The older, POSIX-draft model is supported by the UFS file system. This model is
+based on a withdrawn ACL POSIX specification that was never standardized. It
+was subsequently withdrawn by the POSIX committee.
+.sp
+.LP
+The other model is based on the standards of the NFSv4 working group and is an
+approved standard from the Internet Engineering Task Force (IETF). The ZFS file
+system uses the NFSv4 model, and provides richer semantics and finer grained
+permission capabilities than the POSIX-draft model.
+.SS "POSIX-draft ACLs"
+POSIX-draft ACLs provide an alternative security mechanism to basic UNIX file
+permissions. Their purpose is to further restrict access
+to files and directories or to extend permissions to a particular user. ACLs
+can be used to change the permissions for the standard owner, group and other
+class bits of a file's mode. ACLs can give additional users and groups access
+to the file. A directory can also have a special kind of ACL called a
+\fBdefault\fR ACL, which defines ACL entries to be inherited by descendents of
+the directory. POSIX-draft ACLs have an ACL entry called \fBmask\fR. The mask
+defines the maximum permissions that can be granted to additional user and
+group entries. Whenever a file is created or its mode is changed by
+\fBchmod\fR(1) or \fBchmod\fR(2), the mask is recomputed. It is recomputed to
+be the group permission defined in the mode passed to \fBchmod\fR(2).
+.sp
+.LP
+The POSIX-draft ACL model uses the standard \fBrwx\fR model of traditional UNIX
+permissions.
+.sp
+.LP
+An ACL is represented as follows:
+.sp
+.in +2
+.nf
+\fIacl_entry\fR[,\fIacl_entry\fR]...
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Each \fIacl_entry\fR contains one ACL entry. An ACL entry is represented by two
+or three colon-separated(\fB:\fR) fields.
+.sp
+.ne 2
+.na
+\fB\fIuser\fR:[\fIuid\fR]:\fIperms\fR\fR
+.ad
+.RS 21n
+If \fIuid\fR blank, it represents the file owner.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIgroup\fR:[\fIgid\fR]:\fIperms\fR\fR
+.ad
+.RS 21n
+If \fIgid\fR is blank, it represents the owning group.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIother\fR:\fIperms\fR\fR
+.ad
+.RS 21n
+Represents the file other class.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fImask\fR:\fIperms\fR\fR
+.ad
+.RS 21n
+Defines the \fBMAX\fR permission to hand out.
+.RE
+
+.sp
+.LP
+For example to give user \fBjoe\fR read and write permissions, the ACL entry is
+specified as:
+.sp
+.in +2
+.nf
+user:joe:rw-
+.fi
+.in -2
+.sp
+
+.SS "NFSv4 ACLs"
+The NFSv4 ACL model is based loosely on the Windows NT ACL model. NFSv4 ACLs
+provide a much richer ACL model than POSIX-draft ACLs.
+.sp
+.LP
+The major differences between NFSv4 and POSIX-draft ACLs are as follows:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+NFSv4 ACLs provide finer grained permissions than the \fBrwx\fR model.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+NFSv4 ACLs allow for both \fBALLOW\fR and \fBDENY\fR entries.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+NFSv4 ACLs provide a rich set of inheritance semantics. POSIX ACLs also have
+inheritance, but with the NFSv4 model you can control the following inheritance
+features:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Whether inheritance cascades to both files and directories or only to files or
+directories.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+In the case of directories, you can indicate whether inheritance is applied to
+the directory itself, to just one level of subdirectories, or cascades to all
+subdirectories of the directory.
+.RE
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+NFSv4 ACLs provide a mechanism for hooking into a system's audit trail.
+Currently, illumos does not support this mechanism.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+NFSv4 ACLs enable administrators to specify the order in which ACL entries are
+checked. With POSIX-draft ACLs the file system reorders ACL entries into a well
+defined, strict access, checking order.
+.RE
+.sp
+.LP
+POSIX-draft ACL semantics can be achieved with NFSv4 ACLs. However, only some
+NFSv4 ACLs can be translated to equivalent POSIX-draft ACLs.
+.sp
+.LP
+Permissions can be specified in three different \fBchmod\fR ACL formats:
+verbose, compact, or positional. The verbose format uses words to indicate that
+the permissions are separated with a forward slash (\fB/\fR) character. Compact
+format uses the permission letters and positional format uses the permission
+letters or the hyphen (\fB-\fR) to identify no permissions.
+.sp
+.LP
+The permissions for verbose mode and their abbreviated form in parentheses for
+compact and positional mode are described as follows:
+.sp
+.ne 2
+.na
+\fBread_data (\fBr\fR)\fR
+.ad
+.RS 24n
+Permission to read the data of the file
+.RE
+
+.sp
+.ne 2
+.na
+\fBlist_directory (\fBr\fR)\fR
+.ad
+.RS 24n
+Permission to list the contents of a directory.
+.RE
+
+.sp
+.ne 2
+.na
+\fBwrite_data (\fBw\fR)\fR
+.ad
+.RS 24n
+Permission to modify a file's data anywhere in the file's offset range. This
+includes the ability to grow the file or write to any arbitrary offset.
+.RE
+
+.sp
+.ne 2
+.na
+\fBadd_file (\fBw\fR)\fR
+.ad
+.RS 24n
+Permission to add a new file to a directory.
+.RE
+
+.sp
+.ne 2
+.na
+\fBappend_data (\fBp\fR)\fR
+.ad
+.RS 24n
+The ability to modify the file's data, but only starting at EOF. Currently,
+this permission is not supported.
+.RE
+
+.sp
+.ne 2
+.na
+\fBadd_subdirectory (\fBp\fR)\fR
+.ad
+.RS 24n
+Permission to create a subdirectory to a directory.
+.RE
+
+.sp
+.ne 2
+.na
+\fBread_xattr (\fBR\fR)\fR
+.ad
+.RS 24n
+The ability to read the extended attributes of a file or do a lookup in the
+extended attributes directory.
+.RE
+
+.sp
+.ne 2
+.na
+\fBwrite_xattr (\fBW\fR)\fR
+.ad
+.RS 24n
+The ability to create extended attributes or write to the extended attributes
+directory.
+.RE
+
+.sp
+.ne 2
+.na
+\fBexecute (\fBx\fR)\fR
+.ad
+.RS 24n
+Permission to execute a file.
+.RE
+
+.sp
+.ne 2
+.na
+\fBread_attributes (\fBa\fR)\fR
+.ad
+.RS 24n
+The ability to read basic attributes (non-ACLs) of a file. Basic attributes are
+considered to be the stat level attributes. Allowing this access mask bit means
+that the entity can execute \fBls\fR(1) and \fBstat\fR(2).
+.RE
+
+.sp
+.ne 2
+.na
+\fBwrite_attributes (\fBA\fR)\fR
+.ad
+.RS 24n
+Permission to change the times associated with a file or directory to an
+arbitrary value.
+.RE
+
+.sp
+.ne 2
+.na
+\fBdelete (\fBd\fR)\fR
+.ad
+.RS 24n
+Permission to delete the file.
+.RE
+
+.sp
+.ne 2
+.na
+\fBdelete_child (\fBD\fR)\fR
+.ad
+.RS 24n
+Permission to delete a file within a directory.
+.RE
+
+.sp
+.ne 2
+.na
+\fBread_acl (\fBc\fR)\fR
+.ad
+.RS 24n
+Permission to read the ACL.
+.RE
+
+.sp
+.ne 2
+.na
+\fBwrite_acl (\fBC\fR)\fR
+.ad
+.RS 24n
+Permission to write the ACL or the ability to execute \fBchmod\fR(1) or
+\fBsetfacl\fR(1).
+.RE
+
+.sp
+.ne 2
+.na
+\fBwrite_owner (\fBo\fR)\fR
+.ad
+.RS 24n
+Permission to change the owner or the ability to execute \fBchown\fR(1) or
+\fBchgrp\fR(1).
+.RE
+
+.sp
+.ne 2
+.na
+\fBsynchronize (\fBs\fR)\fR
+.ad
+.RS 24n
+Permission to access a file locally at the server with synchronous reads and
+writes. Currently, this permission is not supported.
+.RE
+
+.sp
+.LP
+The following inheritance flags are supported by NFSv4 ACLs:
+.sp
+.ne 2
+.na
+\fBfile_inherit (\fBf\fR)\fR
+.ad
+.RS 26n
+Inherit to all newly created files in a directory.
+.RE
+
+.sp
+.ne 2
+.na
+\fBdir_inherit (\fBd\fR)\fR
+.ad
+.RS 26n
+Inherit to all newly created directories in a directory.
+.RE
+
+.sp
+.ne 2
+.na
+\fBinherit_only (\fBi\fR)\fR
+.ad
+.RS 26n
+Placed on a directory, but does not apply to the directory itself, only to
+newly created files and directories. This flag requires file_inherit
+and/or dir_inherit to indicate what to inherit.
+.RE
+
+.sp
+.ne 2
+.na
+\fBno_propagate (\fBn\fR)\fR
+.ad
+.RS 26n
+Placed on directories and indicates that ACL entries should only be inherited
+one level of the tree. This flag requires file_inherit and/or dir_inherit to
+indicate what to inherit.
+.RE
+
+.sp
+.ne 2
+.na
+\fBsuccessful_access (\fBS\fR)\fR
+.ad
+.RS 26n
+Indicates whether an alarm or audit record should be initiated upon successful
+accesses. Used with audit/alarm ACE types.
+.RE
+
+.sp
+.ne 2
+.na
+\fBfailed_access (\fBF\fR)\fR
+.ad
+.RS 26n
+Indicates whether an alarm or audit record should be initiated when access
+fails. Used with audit/alarm ACE types.
+.RE
+
+.sp
+.ne 2
+.na
+\fBinherited (\fBI\fR)\fR
+.ad
+.RS 26n
+ACE was inherited.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-\fR\fR
+.ad
+.RS 26n
+No permission granted.
+.RE
+
+.sp
+.LP
+An NFSv4 ACL is expressed using the following syntax:
+.sp
+.in +2
+.nf
+\fIacl_entry\fR[,\fIacl_entry\fR]...
+
+ owner@:<perms>[:inheritance flags]:<allow|deny>
+ group@:<perms>[:inheritance flags]:<allow|deny>
+ everyone@:<perms>[:inheritance flags]:<allow|deny>
+ user:<username>:<perms>[:inheritance flags]:<allow|deny>
+ usersid:<sid string>:<perms>[:inheritance flags]:<allow|deny>
+ group:<groupname>:<perms>[:inheritance flags]:<allow|deny>
+ groupsid:<sid string>:<perms>[:inheritance flags]:<allow|deny>
+ sid:<sid string>:<perms>[:inheritance flags]:<allow|deny>
+.fi
+.in -2
+
+.sp
+.ne 2
+.na
+\fBowner@\fR
+.ad
+.RS 10n
+File owner
+.RE
+
+.sp
+.ne 2
+.na
+\fBgroup@\fR
+.ad
+.RS 10n
+Group owner
+.RE
+
+.sp
+.ne 2
+.na
+\fBuser\fR
+.ad
+.RS 10n
+Permissions for a specific user
+.RE
+
+.sp
+.ne 2
+.na
+\fBgroup\fR
+.ad
+.RS 10n
+Permissions for a specific group
+.RE
+
+.sp
+.LP
+Permission and inheritance flags are separated by a \fB/\fR character.
+.sp
+.LP
+ACL specification examples:
+.sp
+.in +2
+.nf
+user:fred:read_data/write_data/read_attributes:file_inherit:allow
+owner@:read_data:allow,group@:read_data:allow,user:tom:read_data:deny
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Using the compact ACL format, permissions are specified by using 14 unique
+letters to indicate permissions.
+.sp
+.LP
+Using the positional ACL format, permissions are specified as positional
+arguments similar to the \fBls -V\fR format. The hyphen (\fB-\fR), which
+indicates that no permission is granted at that position, can be omitted and
+only the required letters have to be specified.
+.sp
+.LP
+The letters above are listed in the order they would be specified in positional
+notation.
+.sp
+.LP
+With these letters you can specify permissions in the following equivalent
+ways.
+.sp
+.in +2
+.nf
+user:fred:rw------R------:file_inherit:allow
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Or you can remove the \fB-\fR and scrunch it together.
+.sp
+.in +2
+.nf
+user:fred:rwR:file_inherit:allow
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The inheritance flags can also be specified in a more compact manner, as
+follows:
+.sp
+.in +2
+.nf
+user:fred:rwR:f:allow
+user:fred:rwR:f------:allow
+.fi
+.in -2
+.sp
+
+.SS "Shell-level API"
+Several utilities support the manipulation of ACLs. The following
+utilities accommodate both ACL models:
+.sp
+.ne 2
+.na
+\fB\fBchmod\fR\fR
+.ad
+.RS 12n
+The \fBchmod\fR utility has been enhanced to allow for the setting and deleting
+of ACLs. This is achieved by extending the symbolic-mode argument to support
+ACL manipulation. See \fBchmod\fR(1) for details.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcompress\fR\fR
+.ad
+.RS 12n
+When a file is compressed any ACL associated with the original file is
+preserved with the compressed file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcp\fR\fR
+.ad
+.RS 12n
+By default, \fBcp\fR ignores ACLs, unless the \fB-p\fR option is specified.
+When \fB-p\fR is specified the owner and group id, permission modes,
+modification and access times, ACLs, and extended attributes if applicable are
+preserved.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcpio\fR\fR
+.ad
+.RS 12n
+ACLs are preserved when the \fB-P\fR option is specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfind\fR\fR
+.ad
+.RS 12n
+Find locates files with ACLs when the \fB-acl\fR flag is specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBls\fR\fR
+.ad
+.RS 12n
+By default \fBls\fR does not display ACL information. When the \fB-v\fR option
+is specified, a file's ACL is displayed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmv\fR\fR
+.ad
+.RS 12n
+When a file is moved, all attributes are carried along with the renamed file.
+When a file is moved across a file system boundary, the ACLs are replicated. If
+the ACL information cannot be replicated, the move fails and the source file is
+not removed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpack\fR\fR
+.ad
+.RS 12n
+When a file is packed, any ACL associated with the original file is preserved
+with the packed file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrcp\fR\fR
+.ad
+.RS 12n
+\fBrcp\fR has been enhanced to support copying. A file's ACL is only preserved
+when the remote host supports ACLs.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBtar\fR\fR
+.ad
+.RS 12n
+ACLs are preserved when the \fB-p\fR option is specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBunpack\fR\fR
+.ad
+.RS 12n
+When a file with an ACL is unpacked, the unpacked file retains the ACL
+information.
+.RE
+
+.SS "Application-level API"
+The primary interfaces required to access file system ACLs at the programmatic
+level are the \fBacl_get()\fR and \fBacl_set()\fR functions. These functions
+support both POSIX-draft ACLs and NFSv4 ACLs.
+.SS "Retrieving a file's ACL"
+.in +2
+.nf
+int acl_get(const char *path, int flag, acl_t **aclp);
+int facl_get(int fd, int flag, acl_t **aclp);
+.fi
+.in -2
+
+.sp
+.LP
+The \fBacl_get\fR(3SEC) and \fBfacl_get\fR(3SEC) functions retrieve an ACL on
+a file whose name is given by path or referenced by the open file descriptor
+fd. The flag argument specifies whether a trivial ACL should be retrieved. When
+the flag argument equals \fBACL_NO_TRIVIAL\fR only ACLs that are not
+trivial are retrieved. The ACL is returned in the \fBaclp\fR argument.
+.SS "Freeing ACL structure"
+.in +2
+.nf
+void acl_free(acl_t *aclp);
+.fi
+.in -2
+
+.sp
+.LP
+The \fBacl_free()\fR function frees up memory allocated for the argument
+\fBaclp\fR.
+.SS "Setting an ACL on a file"
+.in +2
+.nf
+int acl_set(const char *path, acl_t *aclp);
+int facl_set(int fd, acl_t *aclp);
+.fi
+.in -2
+
+.sp
+.LP
+The \fBacl_set\fR(3SEC) and \fBfacl_get\fR(3SEC) functions are used for setting
+an ACL on a file whose name is given by path or referenced by the open file
+descriptor \fBfd\fR. The \fBaclp\fR argument specifies the ACL to set. The
+\fBacl_set\fR(3SEC) function translates a POSIX-draft ACL into a NFSv4 ACL when
+the target file system supports NFSv4 ACLs. No translation is performed when
+trying to set an NFSv4 ACL on a POSIX-draft ACL supported file system.
+.SS "Determining an ACL's trivialness"
+.in +2
+.nf
+int acl_trivial(const char *path);
+.fi
+.in -2
+
+.sp
+.LP
+The \fBacl_trivial()\fR function is used to determine whether a file has a
+trivial ACL.
+.SS "Removing all ACLs from a file"
+.in +2
+.nf
+int acl_strip(const char *path, uid_t uid, gid_t gid, mode_t mode);
+.fi
+.in -2
+
+.sp
+.LP
+The \fBacl_strip()\fR function removes all ACLs from a file and replaces them
+with a trivial ACL based off of the passed in argument mode. After replacing
+the ACL the owner and group of the file are set to the values specified in the
+uid and gid parameters.
+.SS "Converting ACLs to/from external representation"
+.in +2
+.nf
+int acl_fromtext(const char *path, acl_t **aclp);
+char *acl_totext(acl_t *aclp, int flags);
+.fi
+.in -2
+
+.sp
+.LP
+The \fBacl_totext()\fR function converts an internal ACL representation pointed
+to by aclp into an external representation. See \fBDESCRIPTION\fR for details
+about external representation.
+.sp
+.LP
+The \fBacl_fromtext()\fR function converts an external representation into an
+internal representation. See \fBDESCRIPTION\fR for details about external
+representation.
+.SH EXAMPLES
+The following examples demonstrate how the API can be used to perform basic
+operations on ACLs.
+.LP
+\fBExample 1 \fRRetrieving and Setting an ACL
+.sp
+.LP
+Use the following to retrieve an ACL and set it on another file:
+
+.sp
+.in +2
+.nf
+error = acl_get("file", ACL_NO_TRIVIAL, &aclp);
+
+if (error == 0 && aclp != NULL) {
+.in +8
+error = acl_set("file2", aclp);
+acl_free(aclp);
+.in -8
+}
+\&...
+.fi
+.in -2
+
+.LP
+\fBExample 2 \fRRetrieving and Setting Any ACLs
+.sp
+.LP
+Use the following to retrieve any ACL, including trivial ACLs, and set it on
+another file:
+
+.sp
+.in +2
+.nf
+error = acl_get("file3", 0, &aclp);
+if (error == 0) {
+.in +8
+error = acl_set("file4", aclp);
+acl_free(aclp);
+.in -8
+}
+\&...
+.fi
+.in -2
+
+.LP
+\fBExample 3 \fRDetermining if a File has a Trivial ACL
+.sp
+.LP
+Use the following to determine if a file has a trivial ACL:
+
+.sp
+.in +2
+.nf
+char *file = "file5";
+istrivial = acl_trivial(file);
+
+if (istrivial == 0)
+.in +8
+printf("file %s has a trivial ACL\en", file);
+.in -8
+else
+.in +8
+printf("file %s has a NON-trivial ACL\en", file);
+.in -8
+\&...
+.fi
+.in -2
+
+.LP
+\fBExample 4 \fRRemoving all ACLs from a File
+.sp
+.LP
+Use the following to remove all ACLs from a file, and set a new mode, owner,
+and group:
+
+.sp
+.in +2
+.nf
+error = acl_strip("file", 10, 100, 0644);
+\&...
+.fi
+.in -2
+
+.SH SEE ALSO
+.BR chgrp (1),
+.BR chmod (1),
+.BR chown (1),
+.BR cp (1),
+.BR cpio (1),
+.BR find (1),
+.BR ls (1),
+.BR mv (1),
+.BR setfacl (1),
+.BR tar (1),
+.BR acl (2),
+.BR chmod (2),
+.BR stat (2),
+.BR acl_free (3SEC),
+.BR acl_fromtext (3SEC),
+.BR acl_get (3SEC),
+.BR acl_strip (3SEC),
+.BR acl_trivial (3SEC),
+.BR aclsort (3SEC)
diff --git a/usr/src/man/man7/ad.7 b/usr/src/man/man7/ad.7
new file mode 100644
index 0000000000..4b082881cd
--- /dev/null
+++ b/usr/src/man/man7/ad.7
@@ -0,0 +1,79 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH AD 7 "May 23, 2021"
+.SH NAME
+ad \- Active Directory as a naming repository
+.SH DESCRIPTION
+Solaris clients can obtain naming information from Active Directory (AD)
+servers.
+.sp
+.LP
+The Solaris system must first join an AD domain and then add the \fBad\fR
+keyword to the appropriate entries in the \fBnsswitch.conf\fR(5) file. The
+Solaris system joins the AD domain by using the \fBkclient\fR(8) utility. The
+AD name service only supports the naming databases for \fBpasswd\fR and
+\fBgroup\fR.
+.sp
+.LP
+Windows users are not able to log in. The \fBuser_attr\fR(5) database has no
+entries for Windows users, and the \fBpasswd\fR(1) command does not support the
+synchronization of user passwords with AD.
+.sp
+.LP
+The Solaris AD client uses auto-discovery techniques to find AD directory
+servers, such as domain controllers and global catalog servers. The client also
+uses the LDAP v3 protocol to access naming information from AD servers. The AD
+server schema requires no modification because the AD client works with native
+AD schema. The Solaris AD client uses the \fBidmap\fR(8) service to map
+between Windows security identifiers (SIDs) and Solaris user identifiers (UIDs)
+and group identifiers (GIDs). User names and group names are taken from the
+\fBsAMAccountName\fR attribute of the AD user and group objects and then tagged
+with the domain where the objects reside. The domain name is separated from the
+user name or group name by the \fB@\fR character.
+.sp
+.LP
+The client uses the SASL/GSSAPI/KRB5 security model. The \fBkclient\fR utility
+is used to join the client to AD. During the join operation, \fBkclient\fR
+configures Kerberos v5 on the client. See \fBkclient\fR(8).
+.SH FILES
+.ne 2
+.na
+\fB\fB/etc/nsswitch.conf\fR\fR
+.ad
+.RS 24n
+Configuration file for the name-service switch.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/nsswitch.ad\fR\fR
+.ad
+.RS 24n
+Sample configuration file for the name-service switch configured with ad, dns
+and files.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/nss_ad.so.1\fR\fR
+.ad
+.RS 24n
+Name service switch module for AD.
+.RE
+
+.SH SEE ALSO
+.BR passwd (1),
+.BR svcs (1),
+.BR nsswitch.conf (5),
+.BR user_attr (5),
+.BR smf (7),
+.BR idmap (8),
+.BR idmapd (8),
+.BR kclient (8),
+.BR svcadm (8),
+.BR svccfg (8)
diff --git a/usr/src/man/man7/ascii.7 b/usr/src/man/man7/ascii.7
new file mode 100644
index 0000000000..97ae2a69dd
--- /dev/null
+++ b/usr/src/man/man7/ascii.7
@@ -0,0 +1,107 @@
+'\" te
+.\" Copyright (c) 2002, Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH ASCII 7 "Apr 19, 2002"
+.SH NAME
+ascii \- map of ASCII character set
+.SH SYNOPSIS
+.LP
+.nf
+\fBcat\fR \fB/usr/pub/ascii\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fB/usr/pub/ascii\fR is a map of the \fBASCII\fR character set, to be printed
+as needed. It contains octal and hexadecimal values for each character. While
+not included in that file, a chart of decimal values is also shown here.
+.sp
+.in +2
+.nf
+ Octal \(mi Character
+
+000 NUL 001 SOH 002 STX 003 ETX 004 EOT 005 ENQ 006 ACK 007 BEL
+010 BS 011 HT 012 NL 013 VT 014 NP 015 CR 016 SO 017 SI
+020 DLE 021 DC1 022 DC2 023 DC3 024 DC4 025 NAK 026 SYN 027 ETB
+030 CAN 031 EM 032 SUB 033 ESC 034 FS 035 GS 036 RS 037 US
+040 SP 041 ! 042 " 043 # 044 $ 045 % 046 & 047 \&'
+050 ( 051 ) 052 * 053 + 054 , 055 \(mi 056 . 057 /
+060 0 061 1 062 2 063 3 064 4 065 5 066 6 067 7
+070 8 071 9 072 : 073 ; 074 < 075 = 076 > 077 ?
+100 @ 101 A 102 B 103 C 104 D 105 E 106 F 107 G
+110 H 111 I 112 J 113 K 114 L 115 M 116 N 117 O
+120 P 121 Q 122 R 123 S 124 T 125 U 126 V 127 W
+130 X 131 Y 132 Z 133 [ 134 \e 135 ] 136 ^ 137 _
+140 ` 141 a 142 b 143 c 144 d 145 e 146 f 147 g
+150 h 151 i 152 j 153 k 154 l 155 m 156 n 157 o
+160 p 161 q 162 r 163 s 164 t 165 u 166 v 167 w
+170 x 171 y 172 z 173 { 174 | 175 } 176 ~ 177 DEL
+.fi
+.in -2
+.sp
+
+.sp
+.in +2
+.nf
+ Hexadecimal \(mi Character
+
+00 NUL 01 SOH 02 STX 03 ETX 04 EOT 05 ENQ 06 ACK 07 BEL
+08 BS 09 HT 0A NL 0B VT 0C NP 0D CR 0E SO 0F SI
+10 DLE 11 DC1 12 DC2 13 DC3 14 DC4 15 NAK 16 SYN 17 ETB
+18 CAN 19 EM 1A SUB 1B ESC 1C FS 1D GS 1E RS 1F US
+20 SP 21 ! 22 " 23 # 24 $ 25 % 26 & 27 \&'
+28 ( 29 ) 2A * 2B + 2C , 2D \(mi 2E . 2F /
+30 0 31 1 32 2 33 3 34 4 35 5 36 6 37 7
+38 8 39 9 3A : 3B ; 3C < 3D = 3E > 3F ?
+40 @ 41 A 42 B 43 C 44 D 45 E 46 F 47 G
+48 H 49 I 4A J 4B K 4C L 4D M 4E N 4F O
+50 P 51 Q 52 R 53 S 54 T 55 U 56 V 57 W
+58 X 59 Y 5A Z 5B [ 5C \e 5D ] 5E ^ 5F _
+60 ` 61 a 62 b 63 c 64 d 65 e 66 f 67 g
+68 h 69 i 6A j 6B k 6C l 6D m 6E n 6F o
+70 p 71 q 72 r 73 s 74 t 75 u 76 v 77 w
+78 x 79 y 7A z 7B { 7C | 7D } 7E ~ 7F DEL
+.fi
+.in -2
+.sp
+
+.sp
+.in +2
+.nf
+ Decimal \(mi Character
+
+ 0 NUL 1 SOH 2 STX 3 ETX 4 EOT 5 ENQ 6 ACK 7 BEL
+ 8 BS 9 HT 10 NL 11 VT 12 NP 13 CR 14 SO 15 SI
+ 16 DLE 17 DC1 18 DC2 19 DC3 20 DC4 21 NAK 22 SYN 23 ETB
+ 24 CAN 25 EM 26 SUB 27 ESC 28 FS 29 GS 30 RS 31 US
+ 32 SP 33 ! 34 " 35 # 36 $ 37 % 38 & 39 \&'
+ 40 ( 41 ) 42 * 43 + 44 , 45 \(mi 46 . 47 /
+ 48 0 49 1 50 2 51 3 52 4 53 5 54 6 55 7
+ 56 8 57 9 58 : 59 ; 60 < 61 = 62 > 63 ?
+ 64 @ 65 A 66 B 67 C 68 D 69 E 70 F 71 G
+ 72 H 73 I 74 J 75 K 76 L 77 M 78 N 79 O
+ 80 P 81 Q 82 R 83 S 84 T 85 U 86 V 87 W
+ 88 X 89 Y 90 Z 91 [ 92 \e 93 ] 94 ^ 95 _
+ 96 ` 97 a 98 b 99 c 100 d 101 e 102 f 103 g
+104 h 105 i 106 j 107 k 108 l 109 m 110 n 111 o
+112 p 113 q 114 r 115 s 116 t 117 u 118 v 119 w
+120 x 121 y 122 z 123 { 124 | 125 } 126 ~ 127 DEL
+.fi
+.in -2
+.sp
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/usr/pub/ascii\fR \fR
+.ad
+.RS 19n
+On-line chart of octal and hexadecimal values for the \fBASCII\fR character
+set.
+.RE
+
diff --git a/usr/src/man/man7/attributes.7 b/usr/src/man/man7/attributes.7
new file mode 100644
index 0000000000..9f7b086566
--- /dev/null
+++ b/usr/src/man/man7/attributes.7
@@ -0,0 +1,722 @@
+'\" te
+.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH ATTRIBUTES 7 "May 13, 2017"
+.SH NAME
+attributes, architecture, availability, CSI, stability, MT-Level, standard \-
+attributes of interfaces
+.SH DESCRIPTION
+.LP
+The \fBATTRIBUTES\fR section of a manual page contains a table defining
+attribute types and their corresponding values. The following is an example of
+an attributes table. Not all attribute types are appropriate for all types of
+interfaces.
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture SPARC
+_
+CSI Enabled
+_
+Interface Stability Committed
+_
+MT-Level Safe
+_
+Standard See \fBstandards\fR(7).
+.TE
+
+.SS "Architecture"
+.LP
+Architecture defines processor or specific hardware. See \fB-p\fR option of
+\fBuname\fR(1). In some cases, it may indicate required adapters or
+peripherals.
+.SS "Code Set Independence (CSI)"
+.LP
+\fBOS\fR utilities and libraries free of dependencies on the properties of any
+code sets are said to have Code Set Independence (CSI). They have the attribute
+of being \fBCSI\fR enabled. This is in contrast to many commands and utilities,
+for example, that work only with Extended Unix Codesets (EUC), an encoding
+method that allows concurrent support for up to four code sets and is commonly
+used to represent Asian character sets.
+.sp
+.LP
+For practical reasons, however, this independence is not absolute. Certain
+assumptions are still applied to the current \fBCSI\fR implementation:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+File code is a superset of \fBASCII\fR.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+To support multi-byte characters and null-terminated \fBUNIX\fR file names,
+the \fINULL\fR and \fB/\fR (slash) characters cannot be part of any multi-byte
+characters.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Only "stateless" file code encodings are supported. Stateless encoding avoids
+shift, locking shift, designation, invocation, and so forth, although single
+shift is not excluded.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Process code (\fBwchar_t\fR values) is implementation dependent and can change
+over time or between implementations or between locales.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Not every object can have names composed of arbitrary characters. The names of
+the following objects must be composed of \fBASCII\fR characters:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+User names, group name, and passwords
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+System name
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Names of printers and special devices
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Names of terminals (/\fBdev/tty*\fR)
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Process \fBID\fR numbers
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Message queues, semaphores, and shared memory labels.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The following may be composed of \fBISO\fR Latin-1 or \fBEUC\fR characters:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+File names
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Directory names
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Command names
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Shell variables and environmental variable names
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Mount points for file systems
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBNIS\fR key names and domain names
+.RE
+.RE
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The names of \fBNFS\fR shared files should be composed of \fBASCII\fR
+characters. Although files and directories may have names and contents composed
+of characters from non-\fBASCII\fR code sets, using only the \fBASCII\fR
+codeset allows \fBNFS\fR mounting across any machine, regardless of
+localization. For the commands and utilities that are \fBCSI\fR enabled, all
+can handle single-byte and multi-byte locales released in 2.6. For applications
+to get full support of internationalization services, dynamic binding has to be
+applied. Statically bound programs will only get support for C and POSIX
+locales.
+.RE
+.SS "Interface Stability"
+.LP
+Sun often provides developers with early access to new technologies, which
+allows developers to evaluate with them as soon as possible. Unfortunately, new
+technologies are prone to changes and standardization often results in
+interface incompatibility from previous versions.
+.sp
+.LP
+To make reasonable risk assessments, developers need to know how likely an
+interface is to change in future releases. To aid developers in making these
+assessments, interface stability information is included on some manual pages
+for commands, entry-points, and file formats.
+.sp
+.LP
+The more stable interfaces can safely be used by nearly all applications,
+because Sun will endeavor to ensure that these continue to work in future minor
+releases. Applications that depend only on Committed interfaces should reliably
+continue to function correctly on future minor releases (but not necessarily on
+earlier major releases).
+.sp
+.LP
+The less stable interfaces allow experimentation and prototyping, but should be
+used only with the understanding that they might change incompatibly or even be
+dropped or replaced with alternatives in future minor releases.
+.sp
+.LP
+"Interfaces" that Sun does not document (for example, most kernel data
+structures and some symbols in system header files) may be implementation
+artifacts. Such internal interfaces are not only subject to incompatible change
+or removal, but we are unlikely to mention such a change in release notes.
+.SS "Release Levels"
+.LP
+Products are given release levels, as well as names, to aid compatibility
+discussions. Each release level may also include changes suitable for lower
+levels.
+.sp
+
+.sp
+.TS
+c c c
+l l l .
+Release Version Significance
+_
+Major x.0 T{
+Likely to contain major feature additions; adhere to different, possibly incompatible standard revisions; and though unlikely, could change, drop, or replace Committed interfaces. Initial product releases are usually 1.0.
+T}
+_
+Minor x.y T{
+Compared to an x.0 or earlier release (y!=0), it is likely to contain: feature additions, compatible changes to Committed interfaces, or likely incompatible changes to Uncommitted or Volatile interfaces.
+T}
+_
+Micro x.y.z T{
+Intended to be interface compatible with the previous release (z!=0), but likely to add bug fixes, performance enhancements, and support for additional hardware. Incompatible changes to Volatile interfaces are possible.
+T}
+.TE
+
+.sp
+.LP
+In the context of interface stability, update releases (occasionally referred
+to as patch releases) should be considered equivalent to Micro Releases.
+.SS "Classifications"
+.LP
+The following table summarizes how stability level classifications relate to
+release level. The first column lists the Stability Level. The second column
+lists the Release Level for Incompatible Changes, and the third column lists
+other comments. For a complete discussion of individual classifications, see
+the appropriate subsection below.
+.sp
+
+.sp
+.TS
+c c c
+l l l .
+Stability Release Comments
+_
+Committed Major (x.0) Incompatibilities are exceptional.
+_
+Uncommitted Minor (x.y) Incompatibilities are common.
+_
+Volatile Micro (x.y.z) Incompatibilities are common.
+.TE
+
+.sp
+.LP
+The interface stability level classifications described on this manual page
+apply to both source and binary interfaces unless otherwise stated. All
+stability level classifications are public, with the exception of the
+\fBPrivate\fR classification. The precise stability level of a public interface
+(one that is documented in the manual pages) is unspecified unless explicitly
+stated. The stability level of an undocumented interface is implicitly
+\fBPrivate\fR.
+.sp
+.LP
+The existence of documentation other than the documentation that is a component
+of the Solaris product should not be construed to imply any level of stability
+for interfaces provided by the Solaris product. The only source of stability
+level information is Solaris manual pages.
+.sp
+.ne 2
+.na
+\fB\fBCommitted\fR\fR
+.ad
+.sp .6
+.RS 4n
+The intention of a Committed interface is to enable third parties to develop
+applications to these interfaces, release them, and have confidence that they
+will run on all releases of the product after the one in which the interface
+was introduced, and within the same Major release. Even at a Major release,
+incompatible changes are expected to be rare, and to have strong
+justifications.
+.sp
+Interfaces defined and controlled as industry standards are most often treated
+as Committed interfaces. In this case, the controlling body and/or public,
+versioned document is typically noted in a "Standard" entry in the Attributes
+table or elsewhere in the documentation.
+.sp
+Although a truly exceptional event, incompatible changes are possible in any
+release if the associated defect is serious enough as outlined in the
+Exceptions section of this document or in a Minor release by following the End
+of Feature process. If support of a Committed interface must be discontinued,
+Sun will attempt to provide notification and the stability level will be marked
+Obsolete.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBUncommitted\fR\fR
+.ad
+.sp .6
+.RS 4n
+No commitment is made about either source or binary compatibility of these
+interfaces from one Minor release to the next. Even the drastic incompatible
+change of removal of the interface in a Minor release is possible. Uncommitted
+interfaces are generally not appropriate for use by release-independent
+products.
+.sp
+Incompatible changes to the interface are intended to be motivated by true
+improvement to the interface which may include ease of use considerations. The
+general expectation should be that Uncommitted interfaces are not likely to
+change incompatibly and if such changes occur they will be small in impact and
+may often have a mitigation plan.
+.sp
+Uncommitted interfaces generally fall into one of the following subcategories:
+.RS +4
+.TP
+1.
+Interfaces that are experimental or transitional. They are typically used to
+give outside developers early access to new or rapidly changing technology, or
+to provide an interim solution to a problem where a more general solution is
+anticipated.
+.RE
+.RS +4
+.TP
+2.
+Interfaces whose specification is controlled by an outside body yet Sun
+expects to make a reasonable effort to maintain compatibility with previous
+releases until the next Minor release at which time Sun expects to synchronize
+with the external specification.
+.RE
+.RS +4
+.TP
+3.
+Interfaces whose target audience values innovation (and possibly ease of
+use) over stability. This attribute is often associated with administrative
+interfaces for higher tier components.
+.RE
+For Uncommitted interfaces, Sun makes no claims about either source or binary
+compatibility from one minor release to another. Applications developed based
+on these interfaces may not work in future minor releases.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBVolatile\fR\fR
+.ad
+.sp .6
+.RS 4n
+Volatile interfaces can change at any time and for any reason.
+.sp
+The Volatile interface stability level allows Sun products to quickly track a
+fluid, rapidly evolving specification. In many cases, this is preferred to
+providing additional stability to the interface, as it may better meet the
+expectations of the consumer.
+.sp
+The most common application of this taxonomy level is to interfaces that are
+controlled by a body other than Sun, but unlike specifications controlled by
+standards bodies or Free or Open Source Software (FOSS) communities which value
+interface compatibility, it can not be asserted that an incompatible change to
+the interface specification would be exceedingly rare. It may also be applied
+to FOSS controlled software where it is deemed more important to track the
+community with minimal latency than to provide stability to our customers.
+.sp
+It also common to apply the Volatile classification level to interfaces in the
+process of being defined by trusted or widely accepted organization. These are
+generically referred to as draft standards. An "IETF Internet draft" is a well
+understood example of a specification under development.
+.sp
+Volatile can also be applied to experimental interfaces.
+.sp
+No assertion is made regarding either source or binary compatibility of
+Volatile interfaces between any two releases, including patches. Applications
+containing these interfaces might fail to function properly in any future
+release.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBNot-an-Interface\fR\fR
+.ad
+.sp .6
+.RS 4n
+The situation occasionally occurs where there exists an entity that could be
+inferred to be an interface, but actually is not. Common examples are output
+from CLIs intended only for human consumption and the exact layout of a GUI.
+.sp
+This classification is a convenience term to be used to clarify such situations
+where such confusion is identified as likely. Failure to apply this term to an
+entity is not an indication that the entity is some form of interface. It only
+indicates that the potential for confusion was not identified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPrivate\fR\fR
+.ad
+.sp .6
+.RS 4n
+A Private interface is an interface provided by a component (or product)
+intended only for the use of that component. A Private interface might still be
+visible to or accessible by other components. Because the use of interfaces
+private to another component carries great stability risks, such use is
+explicitly not supported. Components not supplied by Sun Microsystems should
+not use Private interfaces.
+.sp
+Most Private interfaces are not documented. It is an exceptional case when a
+Private interface is documented. Reasons for documenting a Private interface
+include, but are not limited to, the intention that the interface might be
+reclassified to one of the public stability level classifications in the future
+or the fact that the interface is inordinately visible.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBObsolete\fR\fR
+.ad
+.sp .6
+.RS 4n
+Obsolete is a modifier that can appear in conjunction with the above
+classification levels. The Obsolete modifier indicates an interface that is
+"deprecated" and/or no longer advised for general use. An existing interface
+may be downgraded from some other status (such as Committed or Uncommitted) by
+the application of the Obsolete modifier to encourage customers to migrate from
+that interface before it may be removed (or incompatibly changed).
+.sp
+An Obsolete interface is supported in the current release, but is scheduled to
+be removed in a future (minor) release. When support of an interface is to be
+discontinued, Sun will attempt to provide notification before discontinuing
+support. Use of an Obsolete interface may produce warning messages.
+.RE
+
+.SS "Exceptions"
+.LP
+There are rare instances when it is in the best interest of both Sun and the
+customer to break the interface stability commitment. The following list
+contains the common, known reasons for the interface provider to violate an
+interface stability commitment, but does not preclude others.
+.RS +4
+.TP
+1.
+Security holes where the vulnerability is inherent in the interface.
+.RE
+.RS +4
+.TP
+2.
+Data corruption where the vulnerability is inherent in the interface.
+.RE
+.RS +4
+.TP
+3.
+Standards violations uncovered by a change in interpretation or enhancement
+of conformance tests.
+.RE
+.RS +4
+.TP
+4.
+An interface specification which isn't controlled by Sun has been changed
+incompatibly and the vast majority of interface consumers expect the newer
+interface.
+.RE
+.RS +4
+.TP
+5.
+Not making the incompatible change would be incomprehensible to our
+customers. One example of this would to have not incompatibly changed pcfs
+when the DOS 8.3 naming restrictions were abandoned.
+.RE
+.sp
+.LP
+Incompatible changes allowed by exception will always be delivered in the "most
+major" release vehicle possible. However, often the consequences of the
+vulnerabilities or contractual branding requirements will force delivery in a
+patch.
+.SS "Compatibility with Earlier Interface Classification Schemes"
+.LP
+In releases up to and including Solaris 10, a different interface
+classification scheme was used. The following table summarizes the mapping
+between the old and new classification schemes.
+.sp
+
+.sp
+.TS
+c c c
+l l l .
+Old New Comments
+_
+Standard Committed T{
+An entry in the attributes table for the Standard attribute type should appear.
+T}
+Stable Committed Name change.
+Evolving Uncommitted Actual commitments match.
+Unstable Uncommitted Name change.
+External Volatile T{
+Name change with expansion of allowed usage.
+T}
+Obsolete (Obsolete) Was a classification, now a modifier.
+.TE
+
+.sp
+.LP
+The increased importance of Free or Open Source Software motivated the name
+change from Stable/Unstable to Committed/Uncommitted. Stable conflicted with
+the common use of the term in FOSS communities.
+.sp
+.LP
+Ambiguity in the definition of Evolving was causing difficulty in
+interpretation. As part of the migration to the new classification scheme, many
+formerly Evolving interfaces were upgraded to Committed. However, upon
+encountering the term Evolving, Uncommitted should be inferred.
+.SS "MT-Level"
+.LP
+Libraries are classified into categories that define their ability to support
+multiple threads. Manual pages containing functions that are of multiple or
+differing levels describe this in their \fBNOTES\fR or \fBUSAGE\fR section.
+.sp
+.ne 2
+.na
+\fB\fBSafe\fR\fR
+.ad
+.sp .6
+.RS 4n
+Safe is an attribute of code that can be called from a multithreaded
+application. The effect of calling into a Safe interface or a safe code segment
+is that the results are valid even when called by multiple threads. Often
+overlooked is the fact that the result of this Safe interface or safe code
+segment can have global consequences that affect all threads. For example, the
+action of opening or closing a file from one thread is visible by all the
+threads within a process. A multithreaded application has the responsibility
+for using these interfaces in a safe manner, which is different from whether or
+not the interface is Safe. For example, a multithreaded application that closes
+a file that is still in use by other threads within the application is not
+using the \fBclose\fR(2) interface safely.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBUnsafe\fR\fR
+.ad
+.sp .6
+.RS 4n
+An Unsafe library contains global and static data that is not protected. It is
+not safe to use unless the application arranges for only one thread at time to
+execute within the library. Unsafe libraries might contain functions that are
+Safe; however, most of the library's functions are unsafe to call. Some
+functions that are Unsafe have reentrant counterparts that are MT-Safe.
+Reentrant functions are designated by the \fB_r\fR suffix appended to the
+function name.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBMT-Safe\fR\fR
+.ad
+.sp .6
+.RS 4n
+An MT-Safe library is fully prepared for multithreaded access. It protects its
+global and static data with locks, and can provide a reasonable amount of
+concurrency. A library can be safe to use, but not MT-Safe. For example,
+surrounding an entire library with a monitor makes the library Safe, but it
+supports no concurrency so it is not considered MT-Safe. An MT-Safe library
+must permit a reasonable amount of concurrency. (This definition's purpose is
+to give precision to what is meant when a library is described as Safe. The
+definition of a Safe library does not specify if the library supports
+concurrency. The MT-Safe definition makes it clear that the library is Safe,
+and supports some concurrency. This clarifies the Safe definition, which can
+mean anything from being single threaded to being any degree of multithreaded.)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBAsync-Signal-Safe\fR\fR
+.ad
+.sp .6
+.RS 4n
+Async-Signal-Safe refers to particular library functions that can be safely
+called from a signal handler. A thread that is executing an Async-Signal-Safe
+function will not deadlock with itself if interrupted by a signal. Signals are
+only a problem for MT-Safe functions that acquire locks.
+.sp
+Async-Signal-Safe functions are also MT-Safe. Signals are disabled when locks
+are acquired in Async-Signal-Safe functions. These signals prevent a signal
+handler that might acquire the same lock from being called.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBMT-Safe with Exceptions\fR\fR
+.ad
+.sp .6
+.RS 4n
+See the \fBNOTES\fR or \fBUSAGE\fR sections of these pages for a description of
+the exceptions.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSafe with Exceptions\fR\fR
+.ad
+.sp .6
+.RS 4n
+See the \fBNOTES\fR or \fBUSAGE\fR sections of these pages for a description of
+the exceptions.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBFork-Safe\fR\fR
+.ad
+.sp .6
+.RS 4n
+The \fBfork\fR(2) function replicates only the calling thread in the child
+process. The \fBfork1\fR(2) function exists for compatibility with the past and
+is synonymous with \fBfork()\fR. If a thread other than the one performing the
+fork holds a lock when \fBfork()\fR is called, the lock will still be held in
+the child process but there will be no lock owner since the owning thread was
+not replicated. A child calling a function that attempts to acquire the lock
+will deadlock itself.
+.sp
+When \fBfork()\fR is called, a Fork-Safe library arranges to have all of its
+internal locks held only by the thread performing the fork. This is usually
+accomplished with \fBpthread_atfork\fR(3C), which is called when the library is
+initialized.
+.sp
+The \fBforkall\fR(2) function provides the capability for the rare case when a
+process needs to replicate all of its threads when performing a fork. No
+\fBpthread_atfork()\fR actions are performed when \fBforkall()\fR is called.
+There are dangers associated with calling \fBforkall()\fR. If some threads in a
+process are performing I/O operations when another thread calls
+\fBforkall()\fR, they will continue performing the same I/O operations in both
+the parent and child processes, possibly causing data corruption. For this and
+other race-condition reasons, the use of \fBforkall()\fR is discouraged.
+.sp
+In all Solaris releases prior to Solaris 10, the behavior of \fBfork()\fR
+depended on whether or not the application was linked with \fB-lpthread\fR
+(POSIX threads, see \fBstandards\fR(7)). If linked with \fB-lpthread\fR,
+\fBfork()\fR behaved like \fBfork1()\fR; otherwise it behaved like
+\fBforkall()\fR. To avoid any confusion concerning the behavior of
+\fBfork()\fR, applications can specifically call \fBfork1()\fR or
+\fBforkall()\fR as appropriate.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBCancel-Safety\fR\fR
+.ad
+.sp .6
+.RS 4n
+If a multithreaded application uses \fBpthread_cancel\fR(3C) to cancel (that
+is, kill) a thread, it is possible that the target thread is killed while
+holding a resource, such as a lock or allocated memory. If the thread has not
+installed the appropriate cancellation cleanup handlers to release the
+resources appropriately (see \fBpthread_cancel\fR(3C)), the application is
+"cancel-unsafe", that is, it is not safe with respect to cancellation. This
+unsafety could result in deadlocks due to locks not released by a thread that
+gets cancelled, or resource leaks; for example, memory not being freed on
+thread cancellation. All applications that use \fBpthread_cancel\fR(3C) should
+ensure that they operate in a Cancel-Safe environment. Libraries that have
+cancellation points and which acquire resources such as locks or allocate
+memory dynamically, also contribute to the cancel-unsafety of applications that
+are linked with these libraries. This introduces another level of safety for
+libraries in a multithreaded program: Cancel-Safety. There are two
+sub-categories of Cancel-Safety: Deferred-Cancel-Safety, and
+Asynchronous-Cancel-Safety. An application is considered to be
+Deferred-Cancel-Safe when it is Cancel-Safe for threads whose cancellation type
+is \fBPTHREAD_CANCEL_DEFERRED\fR. An application is considered to be
+Asynchronous-Cancel-Safe when it is Cancel-Safe for threads whose cancellation
+type is \fBPTHREAD_CANCEL_ASYNCHRONOUS\fR. Deferred-Cancel-Safety is easier to
+achieve than Asynchronous-Cancel-Safety, since a thread with the deferred
+cancellation type can be cancelled only at well-defined cancellation points,
+whereas a thread with the asynchronous cancellation type can be cancelled
+anywhere. Since all threads are created by default to have the deferred
+cancellation type, it might never be necessary to worry about asynchronous
+cancel safety. Most applications and libraries are expected to always be
+Asynchronous-Cancel-Unsafe. An application which is Asynchronous-Cancel-Safe is
+also, by definition, Deferred-Cancel-Safe.
+.RE
+
+.SS "Standard"
+.LP
+Many interfaces are defined and controlled as industry standards. When this is
+the case, the controlling body and/or public, versioned document is noted in
+this section.
+.sp
+.LP
+Programmers producing portable applications should rely on the interface
+descriptions present in the standard or specification to which the application
+is intended to conform, rather than the manual page descriptions of interfaces
+based upon a public standard. When the standard or specification allows
+alternative implementation choices, the manual page usually only describes the
+alternative implemented by Sun. The manual page also describes any compatible
+extensions to the base definition of Standard interfaces provided by Sun.
+.sp
+.LP
+No endorsement of the referenced controlling body or document should be
+inferred by its presence as a "Standard" entry. The controlling body may be a
+very formal organization, as in ISO or ANSII, a less formal, but generally
+accepted organization such as IETF, or as informal as the sole contributor in
+the case of FOSS (Free or Open Source Software).
+.SH SEE ALSO
+.LP
+.BR uname (1),
+.BR Intro (3),
+.BR standards (7)
diff --git a/usr/src/man/man7/audit_binfile.7 b/usr/src/man/man7/audit_binfile.7
new file mode 100644
index 0000000000..0099c05698
--- /dev/null
+++ b/usr/src/man/man7/audit_binfile.7
@@ -0,0 +1,80 @@
+'\" te
+.\" Copyright (c) 2017 Peter Tribble
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
+.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH AUDIT_BINFILE 7 "Mar 6, 2017"
+.SH NAME
+audit_binfile \- generation of audit logs
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/security/audit_binfile.so\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBaudit_binfile\fR plugin module for audit,
+\fB/usr/lib/security/audit_binfile.so\fR, writes binary audit data to files as
+specified in the plugin's attributes configured by \fBauditconfig\fR(8); it
+is the default plugin for the audit daemon \fBauditd\fR(8). Its output is
+described by \fBaudit.log\fR(5).
+.SH OBJECT ATTRIBUTES
+.LP
+The \fBp_dir\fR attribute specifies a comma-separated list of
+directories to be used for storing audit files.
+.sp
+.LP
+The \fBp_minfree\fR attribute specifies the percentage of free space required.
+If free space falls below this threshold, the audit daemon \fBauditd\fR(8)
+invokes the shell script \fBaudit_warn\fR(8). The default threshold is 0%.
+.sp
+.LP
+The \fBp_fsize\fR attribute defines the maximum size in bytes that an audit
+file can become before it is automatically closed and a new audit file opened.
+This is equivalent to an administrator issuing an \fBaudit\fR \fB-n\fR command
+when the audit file contains the specified number of bytes. The default size is
+zero (0), which allows the file to grow without bound. The value specified must
+be within the range of [512,000, 2,147,483,647].
+.SH EXAMPLES
+.LP
+The following commands cause \fBaudit_binfile.so\fR to be activated, specify the
+directories for writing audit logs, and specify the percentage of required free
+space per directory. Note that using \fBauditconfig\fR(8) only allows one
+attribute to be set at a time.
+.sp
+.in +2
+.nf
+# auditconfig -setplugin audit_binfile active p_minfree=20
+# auditconfig -setplugin audit_binfile active \e
+p_dir=/var/audit/jedgar/eggplant,\e
+/var/audit/jedgar.aux/eggplant,\e
+/var/audit/global/eggplant
+.fi
+.in -2
+.sp
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for a description of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+MT Level MT-Safe
+_
+Interface Stability Committed
+.TE
+
+.SH SEE ALSO
+.LP
+.BR audit.log (5),
+.BR attributes (7),
+.BR auditconfig (8),
+.BR auditd (8)
diff --git a/usr/src/man/man7/audit_remote.7 b/usr/src/man/man7/audit_remote.7
new file mode 100644
index 0000000000..395378ffa8
--- /dev/null
+++ b/usr/src/man/man7/audit_remote.7
@@ -0,0 +1,353 @@
+'\" te
+.\" Copyright (c) 2021 Peter Tribble
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH AUDIT_REMOTE 7 "November 22, 2021"
+.SH NAME
+audit_remote \- send audit logs to a remote server
+.SH SYNOPSIS
+.nf
+\fB/usr/lib/security/audit_remote.so\fR
+.fi
+
+.SH DESCRIPTION
+The \fBaudit_remote\fR plugin module for audit,
+\fB/usr/lib/security/audit_remote.so\fR, sends binary audit records
+(\fBaudit.log\fR(5)) to audit servers specified in the plugin's attributes
+configured by \fBauditconfig\fR(8).
+.SS "Object Attributes"
+The following attributes specify the configuration of the \fBaudit_remote\fR
+plugin:
+.sp
+.ne 2
+.na
+\fB\fBp_hosts\fR\fR
+.ad
+.sp .6
+.RS 4n
+.sp
+.in +2
+.nf
+\fIhost1\fR[:[\fIport1\fR][:\fImech1\fR]][,\fIhost2\fR[:[\fIport2\fR][:\fImech2\fR]],... \e
+ \fIhostn\fR[:[\fIportn\fR][:\fImechn\fR]]]
+.fi
+.in -2
+.sp
+
+A list of audit hosts/servers. Audit records are sent to the first available
+host. If a host is unreachable or a timeout occurs while sending data, the next
+host in the list is tried. If connection to all hosts fails, the list is tried
+again from the beginning.
+.sp
+The \fIhost\fR part of a \fBp_hosts\fR entry can be in any form acceptable to
+\fBgetipnodebyname\fR(3SOCKET).
+.sp
+The \fIport\fR part of a \fBp_hosts\fR entry is the port on host that is
+contacted to initiate an audit server connection. If not specified, the port
+number is that assigned to the \fBsolaris-audit\fR service. See
+\fBgetservbyname\fR(3XNET).
+.sp
+The \fBmech\fR part of a \fBp_host\fR entry is the GSS-API mechanism name
+(\fBmech\fR(5)). If not specified, the local host's default mechanism is used.
+The recommended mechanism is \fBkerberos_v5\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBp_retries\fR\fR
+.ad
+.sp .6
+.RS 4n
+The number of retries for connecting to and sending data to a server.
+.sp
+The default value is \fB3\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBp_timeout\fR\fR
+.ad
+.sp .6
+.RS 4n
+The number of seconds in which a connection/sending data timeouts.
+.sp
+The default value is \fB5\fR seconds.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBqsize\fR\fR
+.ad
+.sp .6
+.RS 4n
+The maximum number of outstanding audit records to keep.
+.sp
+The default is the value of the kernel queue control high water mark. See
+\fBauditconfig\fR(8).
+.RE
+
+.SS "GSS SESSION"
+The \fBaudit_remote plugin\fR is a TCP client that authenticates configured
+audit servers using the GSS-API (\fBlibgss\fR(3LIB)). Binary Audit
+records are sent with integrity and confidentiality protection as per-message
+tokens generated by \fBgss_wrap\fR(3GSS).
+.sp
+.LP
+The plugin initiates a TCP connection to an audit server (\fIhost:port:mech\fR)
+and establishes a GSS security context (with \fBgss_init_sec_context\fR(3GSS)),
+with appropriate security mechanism (\fBmech\fR(5)).
+.sp
+.LP
+If no port is specified, the service name \fBsolaris-audit\fR is looked up to
+obtain a TCP port number. If no mechanism is specified, the \fBGSS_C_NO_OID\fR
+is used as a \fBmech_type\fR parameter of \fBgss_init_sec_context\fR(3GSS), and
+causes the underlying \fBGSS-API\fR to use the local default mechanism.
+.sp
+.LP
+\fBgss_init_sec_context\fR(3GSS) uses \fBGSS_C_NO_CREDENTIAL\fR as the
+initiator credential handle and a target name of the form
+\fBaudit@<ost_fqdn>\fR. The server is expected to use
+\fBgss_accept_sec_context\fR(3GSS) to complete the context establishment.
+.sp
+.LP
+Once the security context is established, the client (\fBaudit_remote\fR
+plugin) calls \fBgss_wrap\fR(3GSS) to achieve the confidentiality of the
+transferred payload - the audit records. The server is expected to use
+\fBgss_unwrap\fR(3GSS) to unwrap the received data and \fBgss_get_mic\fR(3GSS)
+to obtain the MIC (Message Integrity Code) to be later sent back to the plugin
+as a message retrieval acknowledgment.
+.sp
+.LP
+For example, if the \fBkerberos_v5\fR mechanism is configured as \fBGSS_API\fR
+mechanism on the client and both sides agree on using this mechanism, the
+client side has to be eligible to non-interactively gain session keys for the
+\fBaudit/<host_fqdn>@<REALM>\fR principal from the Kerberos KDC/TGS. At the
+same time the identity running the audit server application has to have the
+long term keys associated with the \fBaudit/<host_fqdn>@<REALM>\fR principal
+stored in the \fBkeytab\fR file (\fBkrb5.conf\fR(5)) to be able to decrypt the
+session keys.
+.sp
+.LP
+The \fBaudit_remote\fR plugin initiates a connection to first server in the
+\fBp_hosts\fR list. If the connection fails or audit record sends are not
+responded to in \fBp_timeout\fR seconds, after \fBp_retries\fR attempts the
+plugin tries to connect to the next server. If the connection to the last
+server fails, the plugin retries to connect to the first host in the list.
+\fBaudit_warn\fR(8) is executed at every unsuccessful attempt to connect to
+the server or send timeout with the plugin option plugin \fBaudit_remote.so
+retry <count> <error>.<error>\fR is connection \fB<host:port> <the network
+error>\fR\&. An \fBEPROTO\fR network error indicates that the client plugin did
+not get a successful protocol version handshake.
+.SS "PROTOCOL DESCRIPTION"
+All protocol messages are preceded by the 4 octets of the size of the data to
+follow. This size is in network byte order.
+.sp
+.LP
+The protocol begins with version negotiation followed by a \fBGSS-API\fR
+security context token exchange. On error the connection is closed (and any
+output token optionally sent).
+.sp
+.LP
+The version negotiation takes place in the clear with the plugin sending an
+octet array of the comma (\fB,\fR) separated list of versions supported. The
+current version number is the characters \fB01\fR. The receiver is expected to
+respond with the version that they accept (in the current case that is the
+characters \fB01\fR). A mismatch is considered an error and the connection is
+closed.
+.sp
+.LP
+The version octet array sent by the plugin and the version characters accepted
+by the receiver are concatenated together to make up the application data field
+of the channel bindings of the GSS security context establishment.
+.sp
+.in +2
+.nf
+<plugin version characters> || <server accepted version characters>"
+||" represents concatenation
+.fi
+.in -2
+
+.sp
+.LP
+Subsequent tokens contain a 64 bit sequence number in network byte order and a
+single audit record (\fBaudit.log\fR(5)); the client uses confidentiality
+protection. wrap (64 bit sequence number || audit record)
+.sp
+.LP
+The server acknowledges the receipt (and is then responsible for any data loss)
+with the received 64 bit sequence number and a MIC token of the unwrapped 64
+bit sequence number and audit record. MIC verification on the client side
+acknowledges the audit record can be freed and not saved for possible
+retransmission.
+.sp
+.in +2
+.nf
+64 bit sequence number || mic (64 bit sequence number || audit record)
+.fi
+.in -2
+
+.sp
+.LP
+Secure remote audit client/server communication flow:
+.sp
+.in +2
+.nf
+1) Client <--> Server - TCP handshake
+
+2) Client <--> Server - protocol version negotiation:
+ a) Client --> Server - send data size - uint32_t value (2)
+ b) Client --> Server - send clear text message of the versions
+ supported comma separated, e.g.,
+ "01,02,03" for versions 1 and 2 and 3.
+ The only version supported at present is
+ "01"
+ c) Client <-- Server - send data size - uint32_t value (2)
+ d) Client <-- Server - send clear text version selected
+ ("01")
+ :no version match; close connection; try next host
+
+3) Security context initiation:
+ a) Client - Construct channel bindings application data value
+ (4 octets "0101")
+ b) Client --> Server - send token (data) size - uint32_t value
+ c) Client --> Server - GSS-API per-context token
+ d) Client <-- Server - send token (data) size
+ e) Client <-- Server - GSS-API per-context token
+ :repeat a-e until security context is initialized; if unsuccessful,
+ close connection; try next host
+
+4) Client - transmit thread, when audit record to be sent:
+ a) Client --> Server - send data size
+ b) Client --> Server - GSS-API per-message token
+ wrap (sequence number || audit record)
+ :repeat a-b while less than max (qsize) outstanding records
+
+ 5) Client - receive thread:
+ a) Client <-- Server - receive data size - uint32_t value
+ b) Client <-- Server - receive sequence number - uint64_t value
+ c) Client <-- Server - receive MIC
+ d) Client - MIC verification - OK
+ e) Client - remove particular audit record
+ pointed by the sequence number from the
+ retransmit buffer
+ :repeat a-e, on error close connection; try next host;
+ retransmit unacknowledged audit records
+
+6) Server - receive thread:
+ a) Client --> Server - receive data size
+ b) Client --> Server - GSS-API receive, uwrap, store
+ per-message token
+
+7) Server - transmit thread:
+ a) Server - MIC generation - message integrity code
+ mic (sequence number || audit record)
+ b) Client <-- Server - send data size
+ c) Client < -- Server - send sequence number
+ d) Client <-- Server - send MIC
+.fi
+.in -2
+
+.SH EXAMPLES
+\fBExample 1 \fRActivating \fBaudit_remote.so\fR and Specifying attributes
+.sp
+.LP
+The following commands cause \fBaudit_remote.so\fR to be activated and set
+the \fBp_retries\fR and \fBp_timeout\fR attributes. Note that using
+\fBauditconfig\fR(8) only allows one attribute to be set at a time.
+
+.sp
+.in +2
+.nf
+# auditconfig -setplugin audit_remote active p_retries=2
+# auditconfig -setplugin audit_remote active p_timeout=90
+.fi
+.in -2
+
+.LP
+\fBExample 2 \fRActivating \fBaudit_remote.so\fR and Specifying the Remote Audit
+Servers
+.sp
+.LP
+The following command causes \fBaudit_remote.so\fR to be activated and specifies
+the remote audit servers to where the audit records are sent. The
+\fBkerberos_v5\fR security mechanism is defined to be used when communicating
+with the servers.
+
+.sp
+.in +2
+.nf
+# auditconfig -setplugin audit_remote active \e
+p_hosts=eggplant.eng.example.com::kerberos_v5,\e
+purple.ebay.example.com:4592:kerberos_v5
+.fi
+.in -2
+
+.LP
+\fBExample 3 \fRUsing the Configuration of Usage Default Security Mechanism
+.sp
+.LP
+The following example shows the configuration of usage of default security
+mechanism. It also shows use of default port on one of the configured servers:
+
+.sp
+.in +2
+.nf
+# auditconfig -setplugin audit_remote active \e
+p_hosts=jedger.eng.example.com,\e
+jbadams.ebay.example.com:4592
+.fi
+.in -2
+.sp
+
+.SH ATTRIBUTES
+See \fBattributes\fR(7) for a description of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+MT Level MT-Safe
+_
+Interface Stability See below.
+.TE
+
+.sp
+.LP
+The plugin configuration parameters are Committed. The client/server protocol
+(version \fB"01"\fR) is Contracted Project Private. See \fBaudit.log\fR(5) for
+the audit record format and content stability.
+.SH SEE ALSO
+.BR gss_accept_sec_context (3GSS),
+.BR gss_get_mic (3GSS),
+.BR gss_init_sec_context (3GSS),
+.BR gss_unwrap (3GSS),
+.BR gss_wrap (3GSS),
+.BR libgss (3LIB),
+.BR libsocket (3LIB),
+.BR getipnodebyname (3SOCKET),
+.BR getservbyname (3XNET),
+.BR tcp (4P),
+.BR audit.log (5),
+.BR krb5.conf (5),
+.BR mech (5),
+.BR attributes (7),
+.BR kerberos (7),
+.BR audit_warn (8),
+.BR auditconfig (8),
+.BR auditd (8)
+.SH NOTES
+\fBaudit_remote\fR authenticates itself to the remote audit service by way of
+GSS-API (\fBlibgss\fR(3LIB)). Default gss credentials are used as provided by
+the \fBgss\fR implementation mechanism, such as Kerberos.
+.sp
+.LP
+The \fBsolaris-audit\fR service port assigned by IANA is \fB16162\fR.
diff --git a/usr/src/man/man7/audit_syslog.7 b/usr/src/man/man7/audit_syslog.7
new file mode 100644
index 0000000000..ec56ce6f61
--- /dev/null
+++ b/usr/src/man/man7/audit_syslog.7
@@ -0,0 +1,268 @@
+'\" te
+.\" Copyright (c) 2017 Peter Tribble
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH AUDIT_SYSLOG 7 "Mar 6, 2017"
+.SH NAME
+audit_syslog \- realtime conversion of audit data to syslog messages
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/security/audit_syslog.so\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBaudit_syslog\fR plugin module for audit,
+\fB/usr/lib/security/audit_syslog.so\fR, provides realtime conversion of
+audit data to syslog-formatted (text) data and sends it to a syslog
+daemon as configured in \fBsyslog.conf\fR(5).
+.sp
+.LP
+Messages to \fBsyslog\fR are written if the \fBaudit_syslog\fR plugin is
+activated and configured using \fBauditconfig\fR(8).
+.sp
+.LP
+Syslog messages are generated with the facility code of
+\fBLOG_AUDIT\fR (\fBaudit\fR in \fBsyslog.conf\fR(5)) and severity of
+\fBLOG_NOTICE\fR. Audit \fBsyslog\fR messages contain data selected from the
+tokens described for the binary audit log. (See \fBaudit.log\fR(5)). As with
+all \fBsyslog\fR messages, each line in a \fBsyslog\fR file consists of two
+parts, a \fBsyslog\fR header and a message.
+.sp
+.LP
+The syslog header contains the date and time the message was generated, the
+host name from which it was sent, \fBauditd\fR to indicate that it was
+generated by the audit daemon, an ID field used internally by \fBsyslogd\fR,
+and \fBaudit.notice\fR indicating the \fBsyslog\fR facility and severity
+values. The \fBsyslog\fR header ends with the characters \fB]\fR, that is, a
+closing square bracket and a space.
+.sp
+.LP
+The message part starts with the event type from the header token. All
+subsequent data appears only if contained in the original audit record and
+there is room in the 1024-byte maximum length \fBsyslog\fR line. In the
+following example, the backslash (\fB\e\fR) indicates a continuation; actual
+\fBsyslog\fR messages are contained on one line:
+.sp
+.in +2
+.nf
+Oct 31 11:38:08 smothers auditd: [ID 917521 audit.notice] chdir(2) ok\e
+session 401 by joeuser as root:other from myultra obj /export/home
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+In the preceding example, \fBchdir(2)\fR is the event type. Following this
+field is additional data, described below. This data is omitted if it is not
+contained in the source audit record.
+.sp
+.ne 2
+.na
+\fB\fBok\fR or \fBfailed\fR\fR
+.ad
+.RS 21n
+Comes from the return or exit token.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsession \fI<#>\fR\fR\fR
+.ad
+.RS 21n
+\fI<#>\fR is the session ID from the subject token.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBby \fI<name>\fR\fR\fR
+.ad
+.RS 21n
+\fI<name>\fR is the audit ID from the subject token.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBas \fI<name>\fR:\fI<group>\fR\fR\fR
+.ad
+.RS 21n
+\fI<name>\fR is the effective user ID and \fI<group>\fR is the effective group
+ID from the subject token.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBin\fR \fI<zone name>\fR\fR
+.ad
+.RS 21n
+The zone name. This field is generated only if the \fBzonename\fR audit policy
+is set.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfrom \fI<terminal>\fR\fR\fR
+.ad
+.RS 21n
+\fI<terminal>\fR is the text machine address from the subject token.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBobj \fI<path>\fR\fR\fR
+.ad
+.RS 21n
+\fI<path>\fR is the path from the path token The path can be truncated from the
+left if necessary to fit it on the line. Truncation is indicated by leading
+ellipsis (\fB\&...\fR).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBproc_uid \fI<owner>\fR\fR\fR
+.ad
+.RS 21n
+\fI<owner>\fR is the effective user ID of the process owner.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBproc_auid \fI<owner>\fR\fR\fR
+.ad
+.RS 21n
+\fI<owner>\fR is the audit ID of the process owner.
+.RE
+
+.sp
+.LP
+The following are example \fBsyslog\fR messages:
+.sp
+.in +2
+.nf
+Nov 4 8:27:07 smothers auditd: [ID 175219 audit.notice] \e
+system booted
+
+Nov 4 9:28:17 smothers auditd: [ID 752191 audit.notice] \e
+login - rlogin ok session 401 by joeuser as joeuser:staff from myultra
+
+Nov 4 10:29:27 smothers auditd: [ID 521917 audit.notice] \e
+access(2) ok session 255 by janeuser as janeuser:staff from \e
+129.146.89.30 obj /etc/passwd
+.fi
+.in -2
+.sp
+
+.SH OBJECT ATTRIBUTES
+.LP
+The \fBp_flags\fR attribute is used to further filter audit data being sent
+to the \fBsyslog\fR daemon beyond the default and non-attributable
+audit flags. The parameter is a comma-separated list; each
+item represents an audit class (see \fBaudit_class\fR(5)) and is specified
+using the same syntax used by \fBauditconfig\fR for the \fB-setflags\fR and
+\fB-setnaflags\fR options. The default (no \fBp_flags\fR set) is that no
+audit records are generated.
+.SH EXAMPLES
+.LP
+\fBExample 1 \fREnabling the plugin and selecting events
+.sp
+.LP
+The command below enables the \fBaudit_syslog\fR plugin and sets the
+\fBp_flags\fR filter to allow class records for \fBlo\fR but
+allows class records for \fBam\fR for failures only. Because no other
+classes are listed, not other audit records will be sent to
+syslog. You cannot add classes to those defined by means of
+\fBflags\fR and \fBnaflags\fR. You can only remove them.
+
+.sp
+.in +2
+.nf
+# autditconf -setplugin audit_syslog active p_flags=lo,-am
+.fi
+.in -2
+.sp
+
+\fBExample 2 \fRViewing the plugin configuration
+.sp
+.LP
+The command below enables shows the \fBaudit_syslog\fR plugin configuration.
+
+.sp
+.in +2
+.nf
+# auditconfig -getplugin audit_syslog
+Plugin: audit_syslog (active)
+ Attributes: p_flags=lo,-am;
+.fi
+.in -2
+.sp
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for a description of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+MT Level MT-Safe
+_
+Interface Stability See below.
+.TE
+
+.sp
+.LP
+The message format and message content are Uncommitted. The configuration
+parameters are Committed.
+.SH SEE ALSO
+.LP
+.BR audit_class (5),
+.BR syslog.conf (5),
+.BR attributes (7),
+.BR auditconfig (8),
+.BR auditd (8)
+.SH NOTES
+.LP
+Use of the \fBplugin\fR configuration line to include \fBaudit_syslog.so\fR
+requires that \fB/etc/syslog.conf\fR is configured to store \fBsyslog\fR
+messages of facility \fBaudit\fR and severity \fBnotice\fR or above in a file
+intended for audit records. An example of such a line in
+\fBsyslog.conf\fR is:
+.sp
+.in +2
+.nf
+audit.notice /var/audit/audit.log
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Messages from \fBsyslog\fR are sent to remote \fBsyslog\fR servers by means of
+UDP, which does not guarantee delivery or ensure the correct order of arrival
+of messages.
+.sp
+.LP
+If the \fBp_flags\fR attribute results in no classes
+being preselected, an error is reported by means of a \fBsyslog\fR alert with
+the \fBLOG_DAEMON\fR facility code.
+.sp
+.LP
+The time field in the \fBsyslog\fR header is generated by \fBsyslog\fR(3C) and
+only approximates the time given in the binary audit log. Normally the time
+field shows the same whole second or at most a few seconds difference.
diff --git a/usr/src/man/man7/beastie.4th.7 b/usr/src/man/man7/beastie.4th.7
new file mode 100644
index 0000000000..44129ebcb9
--- /dev/null
+++ b/usr/src/man/man7/beastie.4th.7
@@ -0,0 +1,146 @@
+.\" Copyright (c) 2011-2012 Devin Teske
+.\" All rights reserved.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\" notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\" notice, this list of conditions and the following disclaimer in the
+.\" documentation and/or other materials provided with the distribution.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+.\" SUCH DAMAGE.
+.\"
+.Dd July 20, 2018
+.Dt BEASTIE.4TH 7
+.Os
+.Sh NAME
+.Nm beastie.4th
+.Nd loader ASCII art boot module
+.Sh DESCRIPTION
+The file that goes by the name of
+.Nm
+is a set of commands designed to draw the ASCII art FreeBSD mascot
+\(en known simply as
+.Em beastie
+\(en to the right of the boot loader menu.
+In illumos based systems, the distribution specific logo is used.
+The commands of
+.Nm
+by themselves are not enough for most uses.
+Please refer to the
+examples below for the most common situations, and to
+.Xr loader 7
+for additional commands.
+.Pp
+Before using any of the commands provided in
+.Nm ,
+it must be included
+through the command:
+.Pp
+.Dl include beastie.4th
+.Pp
+This line is present in the default
+.Pa /boot/loader.rc
+file, so it is not needed (and should not be re-issued) in a normal setup.
+.Pp
+The commands provided by it are:
+.Pp
+.Bl -tag -width disable-module_module -compact -offset indent
+.It Ic draw-beastie
+Draws the logo.
+.Pp
+The logo that is drawn is configured by setting the
+.Ic loader_logo
+variable in
+.Xr loader.conf 5 .
+.Pp
+The position of the logo can be configured by setting the
+.Ic loader_logo_x
+and
+.Ic loader_logo_y
+variables in
+.Xr loader.conf 5 .
+The default values are 46 (x) and 4 (y).
+.Pp
+.It Ic clear-beastie
+Clears the screen of beastie.
+.Pp
+.It Ic beastie-start
+Initializes the interactive boot loader menu.
+.Pp
+The
+.Ic loader_delay
+variable can be configured in
+.Xr loader.conf 5
+to the number of seconds you would like to delay loading the boot menu.
+During the delay the user can press Ctrl-C to fall back to
+.Ic autoboot
+or ENTER to proceed.
+The default behavior is to not delay.
+.El
+.Pp
+The environment variables that effect its behavior are:
+.Bl -tag -width bootfile -offset indent
+.It Va loader_logo
+Selects the desired logo in the beastie boot menu.
+.It Va loader_logo_x
+Sets the desired column position of the logo.
+Default is 46.
+.It Va loader_logo_y
+Sets the desired row position of the logo.
+Default is 4.
+.It Va beastie_disable
+If set to
+.Dq YES ,
+the beastie boot menu will be skipped.
+The beastie boot menu is always skipped if running non-x86 hardware.
+.It Va loader_delay
+If set to a number higher than zero, introduces a delay before starting the
+beastie boot menu.
+During the delay the user can press either Ctrl-C to skip the menu or ENTER to
+proceed to the menu.
+The default is to not delay when loading the menu.
+.El
+.Sh FILES
+.Bl -tag -width /boot/forth/loader.4th -compact
+.It Pa /boot/loader
+The
+.Xr loader 7 .
+.It Pa /boot/forth/beastie.4th
+.Nm
+itself.
+.It Pa /boot/loader.rc
+.Xr loader 7
+bootstrapping script.
+.El
+.Sh EXAMPLES
+Standard i386
+.Pa /boot/loader.rc :
+.Pp
+.Bd -literal -offset indent -compact
+include /boot/forth/beastie.4th
+beastie-start
+.Ed
+.Pp
+Set a different logo in
+.Xr loader.conf 5 :
+.Pp
+.Bd -literal -offset indent -compact
+loader_logo="beastie"
+.Ed
+.Sh SEE ALSO
+.Xr loader.conf 5 ,
+.Xr loader 7 ,
+.Xr loader.4th 7
diff --git a/usr/src/man/man7/brand.4th.7 b/usr/src/man/man7/brand.4th.7
new file mode 100644
index 0000000000..ccb2f8a898
--- /dev/null
+++ b/usr/src/man/man7/brand.4th.7
@@ -0,0 +1,115 @@
+.\" Copyright (c) 2011 Devin Teske
+.\" All rights reserved.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\" notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\" notice, this list of conditions and the following disclaimer in the
+.\" documentation and/or other materials provided with the distribution.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+.\" SUCH DAMAGE.
+.\"
+.Dd July 20, 2018
+.Dt BRAND.4TH 7
+.Os
+.Sh NAME
+.Nm brand.4th
+.Nd loader ASCII art boot module
+.Sh DESCRIPTION
+The file that goes by the name of
+.Nm
+is a set of commands designed to draw the ASCII art illumos brand above the
+boot loader menu.
+The commands of
+.Nm
+by themselves are not enough for most uses.
+Please refer to the
+examples below for the most common situations, and to
+.Xr loader 7
+for additional commands.
+.Pp
+Before using any of the commands provided in
+.Nm ,
+it must be included
+through the command:
+.Pp
+.Dl include brand.4th
+.Pp
+This line is present in the default
+.Pa /boot/forth/menu.rc
+file, so it is not needed (and should not be re-issued) in a normal setup.
+.Pp
+The commands provided by it are:
+.Pp
+.Bl -tag -width disable-module_module -compact -offset indent
+.It Ic draw-brand
+Draws the illumos brand.
+.Pp
+The brand that is drawn is configured by setting the
+.Ic loader_brand
+variable in
+.Xr loader.conf 5
+to one of
+.Dq Li illumos
+(the default) or
+.Dq Li none .
+.Pp
+The position of the logo can be configured by setting the
+.Ic loader_brand_x
+and
+.Ic loader_brand_y
+variables in
+.Xr loader.conf 5 .
+The default values are 2 (x) and 1 (y).
+.El
+.Pp
+The environment variables that effect its behavior are:
+.Bl -tag -width bootfile -offset indent
+.It Va loader_brand
+Selects the desired brand in the beastie boot menu.
+Possible values are:
+.Dq Li illumos
+(default) or
+.Dq Li none .
+.It Va loader_brand_x
+Sets the desired column position of the brand.
+Default is 2.
+.It Va loader_brand_y
+Sets the desired row position of the brand.
+Default is 1.
+.El
+.Sh FILES
+.Bl -tag -width /boot/forth/loader.4th -compact
+.It Pa /boot/loader
+The
+.Xr loader 7 .
+.It Pa /boot/forth/brand.4th
+.Nm
+itself.
+.It Pa /boot/loader.rc
+.Xr loader 7
+bootstrapping script.
+.El
+.Sh EXAMPLES
+Set illumos brand in
+.Xr loader.conf 5 :
+.Pp
+.Bd -literal -offset indent -compact
+loader_brand="illumos"
+.Ed
+.Sh SEE ALSO
+.Xr loader.conf 5 ,
+.Xr loader 7
diff --git a/usr/src/man/man7/brands.7 b/usr/src/man/man7/brands.7
new file mode 100644
index 0000000000..a094db5edc
--- /dev/null
+++ b/usr/src/man/man7/brands.7
@@ -0,0 +1,77 @@
+'\" te
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH BRANDS 7 "May 23, 2021"
+.SH NAME
+brands \- alternate operating environments for non-global zones
+.SH DESCRIPTION
+The branded zone (BrandZ) framework extends the Solaris Zones infrastructure
+described in \fBzones\fR(7) to include the creation of brands, which provide
+non-global zones that contain non-native operating environments.
+.sp
+.LP
+The term "brand" can refer to a wide range of operating environments. All brand
+management is performed as extensions to the current zones structure.
+.sp
+.LP
+Every zone is configured with an associated brand. The brand type is used to
+determine which scripts are executed when a zone is installed and booted. In
+addition, a zone's brand is used to properly identify the correct application
+type at application launch time. The default brand is determined by the
+installed distribution in the global zone.
+.sp
+.LP
+A branded zone will support exactly one brand of non-native binary, which means
+that a branded zone provides a single operating environment. Once a zone has
+been assigned a brand, that brand cannot be changed or removed.
+.sp
+.LP
+BrandZ extends the zones tools in the following ways:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+A brand is an attribute of a zone, set at zone create time.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The zonecfg tool (see \fBzonecfg\fR(8)) is used to set a zone's brand type and
+configure the zone.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The zoneadm tool (see \fBzoneadm\fR(8)) is used to report a zone's brand type
+and administer the zone.
+.RE
+.SS "Device Support"
+The devices supported by each zone are documented in the man pages and other
+documentation for that brand. The zones infrastructure detects any attempt to
+add an unsupported device and issues a warning to the administrator. If the
+administrator chooses to add an unsupported device despite that warning, that
+device might or might not work as expected. The configuration will be untested
+and unsupported.
+.SH ATTRIBUTES
+See \fBattributes\fR(7) for a description of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.BR attributes (7),
+.BR zones (7),
+.BR zoneadm (8),
+.BR zonecfg (8)
diff --git a/usr/src/man/man7/byteorder.7 b/usr/src/man/man7/byteorder.7
new file mode 100644
index 0000000000..33ab61636c
--- /dev/null
+++ b/usr/src/man/man7/byteorder.7
@@ -0,0 +1,270 @@
+.\"
+.\" This file and its contents are supplied under the terms of the
+.\" Common Development and Distribution License ("CDDL"), version 1.0.
+.\" You may only use this file in accordance with the terms of version
+.\" 1.0 of the CDDL.
+.\"
+.\" A full copy of the text of the CDDL should have accompanied this
+.\" source. A copy of the CDDL is also available via the Internet at
+.\" http://www.illumos.org/license/CDDL.
+.\"
+.\"
+.\" Copyright 2016 Joyent, Inc.
+.\"
+.Dd August 2, 2018
+.Dt BYTEORDER 7
+.Os
+.Sh NAME
+.Nm byteorder ,
+.Nm endian
+.Nd byte order and endianness
+.Sh DESCRIPTION
+Integer values which occupy more than 1 byte in memory can be laid out
+in different ways on different platforms.
+In particular, there is a major split between those which place the least
+significant byte of an integer at the lowest address, and those which place the
+most significant byte there instead.
+As this difference relates to which end of the integer is found in memory first,
+the term
+.Em endian
+is used to refer to a particular byte order.
+.Pp
+A platform is referred to as using a
+.Em big-endian
+byte order when it places the most significant byte at the lowest
+address, and
+.Em little-endian
+when it places the least significant byte first.
+Some platforms may also switch between big- and little-endian mode and run code
+compiled for either.
+.Pp
+Historically, there have also been some systems that utilized
+.Em middle-endian
+byte orders for integers larger than 2 bytes.
+Such orderings are not in common use today.
+.Pp
+Endianness is also of particular importance when dealing with values
+that are being read into memory from an external source.
+For example, network protocols such as IP conventionally define the fields in a
+packet as being always stored in big-endian byte order.
+This means that a little-endian machine will have to perform transformations on
+these fields in order to process them.
+.Ss Examples
+To illustrate endianness in memory, let us consider the decimal integer
+2864434397.
+This number fits in 32 bits of storage (4 bytes).
+.Pp
+On a big-endian system, this integer would be written into memory as
+the bytes 0xAA, 0xBB, 0xCC, 0xDD, in order from lowest memory address to
+highest.
+.Pp
+On a little-endian system, it would be written instead as the bytes
+0xDD, 0xCC, 0xBB, 0xAA, in that order.
+.Pp
+If both the big- and little-endian systems were asked to store this
+integer at address 0x100, we would see the following in each of their
+memory:
+.Bd -literal
+
+ Big-Endian
+
+ ++------++------++------++------++
+ || 0xAA || 0xBB || 0xCC || 0xDD ||
+ ++------++------++------++------++
+ ^^ ^^ ^^ ^^
+ 0x100 0x101 0x102 0x103
+ vv vv vv vv
+ ++------++------++------++------++
+ || 0xDD || 0xCC || 0xBB || 0xAA ||
+ ++------++------++------++------++
+
+ Little-Endian
+.Ed
+.Pp
+It is particularly important to note that even though the byte order is
+different between these two machines, the bit ordering within each byte,
+by convention, is still the same.
+.Pp
+For example, take the decimal integer 4660, which occupies in 16 bits (2
+bytes).
+.Pp
+On a big-endian system, this would be written into memory as 0x12, then
+0x34.
+.Pp
+On a little-endian system, it would be written as 0x34, then 0x12.
+Note that this is not at all the same as seeing 0x43 then 0x21 in memory --
+only the bytes are re-ordered, not any bits (or nybbles) within them.
+.Pp
+As before, storing this at address 0x100:
+.Bd -literal
+ Big-Endian
+
+ ++------++------++
+ || 0x12 || 0x34 ||
+ ++------++------++
+ ^^ ^^
+ 0x100 0x101
+ vv vv
+ ++------++------++
+ || 0x34 || 0x12 ||
+ ++------++------++
+
+ Little-Endian
+.Ed
+.Pp
+This example shows how an eight byte number, 0xBADCAFEDEADBEEF is stored
+in both big and little-endian:
+.Bd -literal
+ Big-Endian
+
+ +------+------+------+------+------+------+------+------+
+ | 0xBA | 0xDC | 0xAF | 0xFE | 0xDE | 0xAD | 0xBE | 0xEF |
+ +------+------+------+------+------+------+------+------+
+ ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^
+ 0x100 0x101 0x102 0x103 0x104 0x105 0x106 0x107
+ vv vv vv vv vv vv vv vv
+ +------+------+------+------+------+------+------+------+
+ | 0xEF | 0xBE | 0xAD | 0xDE | 0xFE | 0xAF | 0xDC | 0xBA |
+ +------+------+------+------+------+------+------+------+
+
+ Little-Endian
+
+.Ed
+.Pp
+The treatment of different endian values would not be complete without
+discussing
+.Em PDP-endian ,
+which is also known as
+.Em middle-endian .
+While the PDP-11 was a 16-bit little-endian system, it laid out 32-bit
+values in a different way from current little-endian systems.
+First, it would divide a 32-bit number into two 16-bit numbers.
+Each 16-bit number would be stored in little-endian; however, the two 16-bit
+words would be stored with the larger 16-bit word appearing first in memory,
+followed by the latter.
+.Pp
+The following image illustrates PDP-endian and compares it against
+little-endian values.
+Here, we'll start with the value 0xAABBCCDD and show how the four bytes for it
+will be laid out, starting at 0x100.
+.Bd -literal
+ PDP-Endian
+
+ ++------++------++------++------++
+ || 0xBB || 0xAA || 0xDD || 0xCC ||
+ ++------++------++------++------++
+ ^^ ^^ ^^ ^^
+ 0x100 0x101 0x102 0x103
+ vv vv vv vv
+ ++------++------++------++------++
+ || 0xDD || 0xCC || 0xBB || 0xAA ||
+ ++------++------++------++------++
+
+ Little-Endian
+
+.Ed
+.Ss Network Byte Order
+The term 'network byte order' refers to big-endian ordering, and
+originates from the IEEE.
+Early disagreements over which byte ordering to use for network traffic prompted
+RFC1700 to define that all IETF-specified network protocols use big-endian
+ordering unless noted explicitly otherwise.
+The Internet protocol family (IP, and thus TCP and UDP etc) particularly adhere
+to this convention.
+.Ss Determining the System's Byte Order
+The operating system supports both big-endian and little-endian CPUs.
+To make it easier for programs to determine the endianness of the platform they
+are being compiled for, functions and macro constants are provided in the system
+header files.
+.Pp
+The endianness of the system can be obtained by including the header
+.In sys/types.h
+and using the pre-processor macros
+.Sy _LITTLE_ENDIAN
+and
+.Sy _BIG_ENDIAN .
+See
+.Xr types.h 3HEAD
+for more information.
+.Pp
+Additionally, the header
+.In endian.h
+defines an alternative means for determining the endianness of the
+current system.
+See
+.Xr endian.h 3HEAD
+for more information.
+.Pp
+illumos runs on both big- and little-endian systems.
+When writing software for which the endianness is important, one must always
+check the byte order and convert it appropriately.
+.Ss Converting Between Byte Orders
+The system provides two different sets of functions to convert values
+between big-endian and little-endian.
+They are defined in
+.Xr byteorder 3C
+and
+.Xr endian 3C .
+.Pp
+The
+.Xr byteorder 3C
+family of functions convert data between the host's native byte order
+and big- or little-endian.
+The functions operate on either 16-bit, 32-bit, or 64-bit values.
+Functions that convert from network byte order to the host's byte order
+start with the string
+.Sy ntoh ,
+while functions which convert from the host's byte order to network byte
+order, begin with
+.Sy hton .
+For example, to convert a 32-bit value, a long, from network byte order
+to the host's, one would use the function
+.Xr ntohl 3C .
+.Pp
+These functions have been standardized by POSIX.
+However, the 64-bit variants,
+.Xr ntohll 3C
+and
+.Xr htonll 3C
+are not standardized and may not be found on other systems.
+For more information on these functions, see
+.Xr byteorder 3C .
+.Pp
+The second family of functions,
+.Xr endian 3C ,
+provide a means to convert between the host's byte order
+and big-endian and little-endian specifically.
+While these functions are similar to those in
+.Xr byteorder 3C ,
+they more explicitly cover different data conversions.
+Like them, these functions operate on either 16-bit, 32-bit, or 64-bit values.
+When converting from big-endian, to the host's endianness, the functions
+begin with
+.Sy betoh .
+If instead, one is converting data from the host's native endianness to
+another, then it starts with
+.Sy htobe .
+When working with little-endian data, the prefixes
+.Sy letoh
+and
+.Sy htole
+convert little-endian data to the host's endianness and from the host's
+to little-endian respectively.
+.Pp
+These functions are not standardized and the header they appear in varies
+between the BSDs and GNU/Linux.
+Applications that wish to be portable, should instead use the
+.Xr byteorder 3C
+functions.
+.Pp
+All of these functions in both families simply return their input when
+the host's native byte order is the same as the desired order.
+For example, when calling
+.Xr htonl 3C
+on a big-endian system the original data is returned with no conversion
+or modification.
+.Sh SEE ALSO
+.Xr byteorder 3C ,
+.Xr endian 3C ,
+.Xr endian.h 3HEAD ,
+.Xr inet 3HEAD
diff --git a/usr/src/man/man7/cancellation.7 b/usr/src/man/man7/cancellation.7
new file mode 100644
index 0000000000..4b3362127b
--- /dev/null
+++ b/usr/src/man/man7/cancellation.7
@@ -0,0 +1,438 @@
+.\"
+.\" Sun Microsystems, Inc. gratefully acknowledges The Open Group for
+.\" permission to reproduce portions of its copyrighted documentation.
+.\" Original documentation from The Open Group can be obtained online at
+.\" http://www.opengroup.org/bookstore/.
+.\"
+.\" The Institute of Electrical and Electronics Engineers and The Open
+.\" Group, have given us permission to reprint portions of their
+.\" documentation.
+.\"
+.\" In the following statement, the phrase ``this text'' refers to portions
+.\" of the system documentation.
+.\"
+.\" Portions of this text are reprinted and reproduced in electronic form
+.\" in the SunOS Reference Manual, from IEEE Std 1003.1, 2004 Edition,
+.\" Standard for Information Technology -- Portable Operating System
+.\" Interface (POSIX), The Open Group Base Specifications Issue 6,
+.\" Copyright (C) 2001-2004 by the Institute of Electrical and Electronics
+.\" Engineers, Inc and The Open Group. In the event of any discrepancy
+.\" between these versions and the original IEEE and The Open Group
+.\" Standard, the original IEEE and The Open Group Standard is the referee
+.\" document. The original Standard can be obtained online at
+.\" http://www.opengroup.org/unix/online.html.
+.\"
+.\" This notice shall appear on any product containing this material.
+.\"
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.\"
+.\"
+.\" Portions Copyright (c) 1995 IEEE. All Rights Reserved.
+.\" Copyright (c) 2001, The IEEE and The Open Group. All Rights Reserved.
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved.
+.\"
+.TH CANCELLATION 7 "Oct 4, 2005"
+.SH NAME
+cancellation \- overview of concepts related to POSIX thread cancellation
+.SH DESCRIPTION
+.TS
+box;
+c | c
+l | l .
+FUNCTION ACTION
+_
+\fBpthread_cancel()\fR Cancels thread execution.
+\fBpthread_setcancelstate()\fR Sets the cancellation \fIstate\fR of a thread.
+\fBpthread_setcanceltype()\fR Sets the cancellation \fItype\fR of a thread.
+\fBpthread_testcancel()\fR T{
+Creates a cancellation point in the calling thread.
+T}
+\fBpthread_cleanup_push()\fR Pushes a cleanup handler routine.
+\fBpthread_cleanup_pop()\fR Pops a cleanup handler routine.
+.TE
+
+.SS "Cancellation"
+.LP
+Thread cancellation allows a thread to terminate the execution of any
+application thread in the process. Cancellation is useful when further
+operations of one or more threads are undesirable or unnecessary.
+.sp
+.LP
+An example of a situation that could benefit from using cancellation is an
+asynchronously-generated cancel condition such as a user requesting to close or
+exit some running operation. Another example is the completion of a task
+undertaken by a number of threads, such as solving a maze. While many threads
+search for the solution, one of the threads might solve the puzzle while the
+others continue to operate. Since they are serving no purpose at that point,
+they should all be canceled.
+.SS "Planning Steps"
+.LP
+Planning and programming for most cancellations follow this pattern:
+.RS +4
+.TP
+1.
+Identify which threads you want to cancel, and insert
+\fBpthread_cancel\fR(3C) statements.
+.RE
+.RS +4
+.TP
+2.
+Identify system-defined cancellation points where a thread that might be
+canceled could have changed system or program state that should be restored.
+See the \fBCancellation Points\fR for a list.
+.RE
+.RS +4
+.TP
+3.
+When a thread changes the system or program state just before a cancellation
+point, and should restore that state before the thread is canceled, place a
+cleanup handler before the cancellation point with
+\fBpthread_cleanup_push\fR(3C). Wherever a thread restores the changed state,
+pop the cleanup handler from the cleanup stack with
+\fBpthread_cleanup_pop\fR(3C).
+.RE
+.RS +4
+.TP
+4.
+Know whether the threads you are canceling call into cancel-unsafe
+libraries, and disable cancellation with \fBpthread_setcancelstate\fR(3C)
+before the call into the library. See \fBCancellation State\fR and
+\fBCancel-Safe\fR.
+.RE
+.RS +4
+.TP
+5.
+To cancel a thread in a procedure that contains no cancellation points,
+insert your own cancellation points with \fBpthread_testcancel\fR(3C). This
+function creates cancellation points by testing for pending cancellations and
+performing those cancellations if they are found. Push and pop cleanup handlers
+around the cancellation point, if necessary (see Step 3, above).
+.RE
+.SS "Cancellation Points"
+.LP
+The system defines certain points at which cancellation can occur (cancellation
+points), and you can create additional cancellation points in your application
+with \fBpthread_testcancel()\fR.
+.sp
+.LP
+The following cancellation points are defined by the system (system-defined
+cancellation points): \fBcreat\fR(2), \fBaio_suspend\fR(3C), \fBclose\fR(2),
+\fBcreat\fR(2), \fBgetmsg\fR(2), \fBgetpmsg\fR(2), \fBlockf\fR(3C),
+\fBmq_receive\fR(3C), \fBmq_send\fR(3C), \fBmsgrcv\fR(2), \fBmsgsnd\fR(2),
+\fBmsync\fR(3C), \fBnanosleep\fR(3C), \fBopen\fR(2), \fBpause\fR(2),
+\fBpoll\fR(2), \fBpread\fR(2), \fBpthread_cond_timedwait\fR(3C),
+\fBpthread_cond_wait\fR(3C), \fBpthread_join\fR(3C),
+\fBpthread_testcancel\fR(3C), \fBputmsg\fR(2), \fBputpmsg\fR(2),
+\fBpwrite\fR(2), \fBread\fR(2), \fBreadv\fR(2), \fBselect\fR(3C),
+\fBsem_wait\fR(3C), \fBsigpause\fR(3C), \fBsigwaitinfo\fR(3C),
+\fBsigsuspend\fR(2), \fBsigtimedwait\fR(3C), \fBsigwait\fR(2), \fBsleep\fR(3C),
+\fBsync\fR(2), \fBsystem\fR(3C), \fBtcdrain\fR(3C), \fBusleep\fR(3C),
+\fBwait\fR(3C), \fBwaitid\fR(2), \fBwait3\fR(3C), \fBwaitpid\fR(3C),
+\fBwrite\fR(2), \fBwritev\fR(2), and \fBfcntl\fR(2), when specifying
+\fBF_SETLKW\fR as the command.
+.sp
+.LP
+When cancellation is asynchronous, cancellation can occur at any time (before,
+during, or after the execution of the function defined as the cancellation
+point). When cancellation is deferred (the default case), cancellation occurs
+only within the scope of a function defined as a cancellation point (after the
+function is called and before the function returns). See \fBCancellation
+Type\fR for more information about deferred and asynchronous cancellation.
+.sp
+.LP
+Choosing where to place cancellation points and understanding how cancellation
+affects your program depend upon your understanding of both your application
+and of cancellation mechanics.
+.sp
+.LP
+Typically, any call that might require a long wait should be a cancellation
+point. Operations need to check for pending cancellation requests when the
+operation is about to block indefinitely. This includes threads waiting in
+\fBpthread_cond_wait()\fR and \fBpthread_cond_timedwait()\fR, threads waiting
+for the termination of another thread in \fBpthread_join()\fR, and threads
+blocked on \fBsigwait()\fR.
+.sp
+.LP
+A mutex is explicitly not a cancellation point and should be held for only the
+minimal essential time.
+.sp
+.LP
+Most of the dangers in performing cancellations deal with properly restoring
+invariants and freeing shared resources. For example, a carelessly canceled
+thread might leave a mutex in a locked state, leading to a deadlock. Or it
+might leave a region of memory allocated with no way to identify it and
+therefore no way to free it.
+.SS "Cleanup Handlers"
+.LP
+When a thread is canceled, it should release resources and clean up the state
+that is shared with other threads. So, whenever a thread that might be canceled
+changes the state of the system or of the program, be sure to push a cleanup
+handler with \fBpthread_cleanup_push\fR(3C) before the cancellation point.
+.sp
+.LP
+When a thread is canceled, all the currently-stacked cleanup handlers are
+executed in last-in-first-out (LIFO) order. Each handler is run in the scope in
+which it was pushed. When the last cleanup handler returns, the thread-specific
+data destructor functions are called. Thread execution terminates when the last
+destructor function returns.
+.sp
+.LP
+When, in the normal course of the program, an uncanceled thread restores state
+that it had previously changed, be sure to pop the cleanup handler (that you
+had set up where the change took place) using \fBpthread_cleanup_pop\fR(3C).
+That way, if the thread is canceled later, only currently-changed state will be
+restored by the handlers that are left in the stack.
+.sp
+.LP
+The \fBpthread_cleanup_push()\fR and \fBpthread_cleanup_pop()\fR functions can
+be implemented as macros. The application must ensure that they appear as
+statements, and in pairs within the same lexical scope (that is, the
+\fBpthread_cleanup_push()\fR macro can be thought to expand to a token list
+whose first token is '{' with \fBpthread_cleanup_pop()\fR expanding to a token
+list whose last token is the corresponding '}').
+.sp
+.LP
+The effect of the use of \fBreturn\fR, \fBbreak\fR, \fBcontinue\fR, and
+\fBgoto\fR to prematurely leave a code block described by a pair of
+\fBpthread_cleanup_push()\fR and \fBpthread_cleanup_pop()\fR function calls is
+undefined.
+.SS "Cancellation State"
+.LP
+Most programmers will use only the default cancellation state of
+\fBPTHREAD_CANCEL_ENABLE\fR, but can choose to change the state by using
+\fBpthread_setcancelstate\fR(3C), which determines whether a thread is
+cancelable at all. With the default \fIstate\fR of
+\fBPTHREAD_CANCEL_ENABLE\fR, cancellation is enabled and the thread is
+cancelable at points determined by its cancellation \fItype\fR. See
+\fBCancellation Type\fR.
+.sp
+.LP
+If the \fIstate\fR is \fBPTHREAD_CANCEL_DISABLE\fR, cancellation is disabled,
+the thread is not cancelable at any point, and all cancellation requests to it
+are held pending.
+.sp
+.LP
+You might want to disable cancellation before a call to a cancel-unsafe
+library, restoring the old cancel state when the call returns from the library.
+See \fBCancel-Safe\fR for explanations of cancel safety.
+.SS "Cancellation Type"
+.LP
+A thread's cancellation \fBtype\fR is set with \fBpthread_setcanceltype\fR(3C),
+and determines whether the thread can be canceled anywhere in its execution or
+only at cancellation points.
+.sp
+.LP
+With the default \fItype\fR of \fBPTHREAD_CANCEL_DEFERRED\fR, the thread is
+cancelable only at cancellation points, and then only when cancellation is
+enabled.
+.sp
+.LP
+If the \fItype\fR is \fBPTHREAD_CANCEL_ASYNCHRONOUS\fR, the thread is
+cancelable at any point in its execution (assuming, of course, that
+cancellation is enabled). Try to limit regions of asynchronous cancellation to
+sequences with no external dependencies that could result in dangling resources
+or unresolved state conditions. Using asynchronous cancellation is discouraged
+because of the danger involved in trying to guarantee correct cleanup handling
+at absolutely every point in the program.
+.sp
+
+.sp
+.TS
+box;
+c | c | c
+l | l | l .
+Cancellation Type/State Table
+Type State
+ Enabled (Default) Disabled
+_
+Deferred (Default) T{
+Cancellation occurs when the target thread reaches a cancellation point and a cancel is pending. (Default)
+T} T{
+All cancellation requests to the target thread are held pending.
+T}
+Asynchronous T{
+Receipt of a \fBpthread_cancel()\fR call causes immediate cancellation.
+T} T{
+All cancellation requests to the target thread are held pending; as
+soon as cancellation is re-enabled, pending cancellations are executed
+immediately.
+T}
+.TE
+
+.SS "Cancel-Safe"
+.LP
+With the arrival of POSIX cancellation, the Cancel-Safe level has been added to
+the list of MT-Safety levels. See \fBattributes\fR(7). An application or
+library is Cancel-Safe whenever it has arranged for cleanup handlers to restore
+system or program state wherever cancellation can occur. The application or
+library is specifically Deferred-Cancel-Safe when it is Cancel-Safe for threads
+whose cancellation type is \fBPTHREAD_CANCEL_DEFERRED\fR. See \fBCancellation
+State\fR. It is specifically Asynchronous-Cancel-Safe when it is Cancel-Safe
+for threads whose cancellation type is \fBPTHREAD_CANCEL_ASYNCHRONOUS\fR.
+.sp
+.LP
+It is easier to arrange for deferred cancel safety, as this requires system and
+program state protection only around cancellation points. In general, expect
+that most applications and libraries are not Asynchronous-Cancel-Safe.
+.SS "POSIX Threads Only"
+.LP
+The cancellation functions described in this manual page are available for
+POSIX threads, only (the Solaris threads interfaces do not provide cancellation
+functions).
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRCancellation example
+.sp
+.LP
+The following short C++ example shows the pushing/popping of cancellation
+handlers, the disabling/enabling of cancellation, the use of
+\fBpthread_testcancel()\fR, and so on. The \fBfree_res()\fR cancellation
+handler in this example is a dummy function that simply prints a message, but
+that would free resources in a real application. The function \fBf2()\fR is
+called from the main thread, and goes deep into its call stack by calling
+itself recursively.
+
+.sp
+.LP
+Before \fBf2()\fR starts running, the newly created thread has probably posted
+a cancellation on the main thread since the main thread calls \fBthr_yield()\fR
+right after creating thread2. Because cancellation was initially disabled in
+the main thread, through a call to \fBpthread_setcancelstate()\fR, the call to
+\fBf2()\fR from \fBmain()\fR continues and constructs X at each recursive
+call, even though the main thread has a pending cancellation.
+
+.sp
+.LP
+When \fBf2()\fR is called for the fifty-first time (when \fB"i == 50"\fR),
+\fBf2()\fR enables cancellation by calling \fBpthread_setcancelstate()\fR. It
+then establishes a cancellation point for itself by calling
+\fBpthread_testcancel()\fR. (Because a cancellation is pending, a call to a
+cancellation point such as \fBread\fR(2) or \fBwrite\fR(2) would also cancel
+the caller here.)
+
+.sp
+.LP
+After the \fBmain()\fR thread is canceled at the fifty-first iteration, all the
+cleanup handlers that were pushed are called in sequence; this is indicated by
+the calls to \fBfree_res()\fR and the calls to the destructor for \fIX\fR. At
+each level, the C++ runtime calls the destructor for \fIX\fR and then the
+cancellation handler, \fBfree_res()\fR. The print messages from
+\fBfree_res()\fR and \fIX\fR's destructor show the sequence of calls.
+
+.sp
+.LP
+At the end, the main thread is joined by thread2. Because the main thread was
+canceled, its return status from \fBpthread_join()\fR is
+\fBPTHREAD_CANCELED\fR. After the status is printed, thread2 returns, killing
+the process (since it is the last thread in the process).
+
+.sp
+.in +2
+.nf
+#include <pthread.h>
+#include <sched.h>
+extern "C" void thr_yield(void);
+
+extern "C" void printf(...);
+
+struct X {
+ int x;
+ X(int i){x = i; printf("X(%d) constructed.\en", i);}
+ ~X(){ printf("X(%d) destroyed.\en", x);}
+};
+
+void
+free_res(void *i)
+{
+ printf("Freeing `%d`\en",i);
+}
+
+char* f2(int i)
+{
+ try {
+ X dummy(i);
+ pthread_cleanup_push(free_res, (void *)i);
+ if (i == 50) {
+ pthread_setcancelstate(PTHREAD_CANCEL_ENABLE, NULL);
+ pthread_testcancel();
+ }
+ f2(i+1);
+ pthread_cleanup_pop(0);
+ }
+ catch (int) {
+ printf("Error: In handler.\en");
+ }
+ return "f2";
+}
+
+void *
+thread2(void *tid)
+{
+ void *sts;
+
+ printf("I am new thread :%d\en", pthread_self());
+
+ pthread_cancel((pthread_t)tid);
+
+ pthread_join((pthread_t)tid, &sts);
+
+ printf("main thread cancelled due to %d\en", sts);
+
+ return (sts);
+}
+
+main()
+{
+ pthread_setcancelstate(PTHREAD_CANCEL_DISABLE, NULL);
+ pthread_create(NULL, NULL, thread2, (void *)pthread_self());
+ thr_yield();
+ printf("Returned from %s\en",f2(0));
+}
+.fi
+.in -2
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+MT-Level MT-Safe
+.TE
+
+.SH SEE ALSO
+.LP
+.BR read (2),
+.BR sigwait (2),
+.BR write (2),
+.BR Intro (3),
+.BR pthread_cleanup_pop (3C),
+.BR pthread_cleanup_push (3C),
+.BR pthread_exit (3C),
+.BR pthread_join (3C),
+.BR pthread_setcancelstate (3C),
+.BR pthread_setcanceltype (3C),
+.BR pthread_testcancel (3C),
+.BR setjmp (3C),
+.BR attributes (7),
+.BR condition (7),
+.BR standards (7)
diff --git a/usr/src/man/man7/charmap.7 b/usr/src/man/man7/charmap.7
new file mode 100644
index 0000000000..e4accf134d
--- /dev/null
+++ b/usr/src/man/man7/charmap.7
@@ -0,0 +1,362 @@
+.\"
+.\" Sun Microsystems, Inc. gratefully acknowledges The Open Group for
+.\" permission to reproduce portions of its copyrighted documentation.
+.\" Original documentation from The Open Group can be obtained online at
+.\" http://www.opengroup.org/bookstore/.
+.\"
+.\" The Institute of Electrical and Electronics Engineers and The Open
+.\" Group, have given us permission to reprint portions of their
+.\" documentation.
+.\"
+.\" In the following statement, the phrase ``this text'' refers to portions
+.\" of the system documentation.
+.\"
+.\" Portions of this text are reprinted and reproduced in electronic form
+.\" in the SunOS Reference Manual, from IEEE Std 1003.1, 2004 Edition,
+.\" Standard for Information Technology -- Portable Operating System
+.\" Interface (POSIX), The Open Group Base Specifications Issue 6,
+.\" Copyright (C) 2001-2004 by the Institute of Electrical and Electronics
+.\" Engineers, Inc and The Open Group. In the event of any discrepancy
+.\" between these versions and the original IEEE and The Open Group
+.\" Standard, the original IEEE and The Open Group Standard is the referee
+.\" document. The original Standard can be obtained online at
+.\" http://www.opengroup.org/unix/online.html.
+.\"
+.\" This notice shall appear on any product containing this material.
+.\"
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.\"
+.\"
+.\" Copyright (c) 1992, X/Open Company Limited. All Rights Reserved.
+.\" Portions Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved
+.\"
+.TH CHARMAP 7 "Dec 1, 2003"
+.SH NAME
+charmap \- character set description file
+.SH DESCRIPTION
+.sp
+.LP
+A character set description file or \fIcharmap\fR defines characteristics for a
+coded character set. Other information about the coded character set may also
+be in the file. Coded character set character values are defined using symbolic
+character names followed by character encoding values.
+.sp
+.LP
+The character set description file provides:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The capability to describe character set attributes (such as collation order or
+character classes) independent of character set encoding, and using only the
+characters in the portable character set. This makes it possible to create
+generic \fBlocaledef\fR(1) source files for all codesets that share the
+portable character set.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Standardized symbolic names for all characters in the portable character set,
+making it possible to refer to any such character regardless of encoding.
+.RE
+.SS "Symbolic Names"
+.sp
+.LP
+Each symbolic name is included in the file and is mapped to a unique encoding
+value (except for those symbolic names that are shown with identical glyphs).
+If the control characters commonly associated with the symbolic names in the
+following table are supported by the implementation, the symbolic names and
+their corresponding encoding values are included in the file. Some of the
+encodings associated with the symbolic names in this table may be the same as
+characters in the portable character set table.
+.sp
+
+.sp
+.TS
+box;
+l l l l l l
+l l l l l l .
+<ACK> <DC2> <ENQ> <FS> <IS4> <SOH>
+<BEL> <DC3> <EOT> <GS> <LF> <STX>
+<BS> <DC4> <ESC> <HT> <NAK> <SUB>
+<CAN> <DEL> <ETB> <IS1> <RS> <SYN>
+<CR> <DLE> <ETX> <IS2> <SI> <US>
+<DC1> <EM> <FF> <IS3> <SO> <VT>
+.TE
+
+.SS "Declarations"
+.sp
+.LP
+The following declarations can precede the character definitions. Each must
+consist of the symbol shown in the following list, starting in column 1,
+including the surrounding brackets, followed by one or more blank characters,
+followed by the value to be assigned to the symbol.
+.sp
+.ne 2
+.na
+\fB<\fIcode_set_name\fR>\fR
+.ad
+.RS 19n
+The name of the coded character set for which the character set description
+file is defined.
+.RE
+
+.sp
+.ne 2
+.na
+\fB<\fImb_cur_max\fR>\fR
+.ad
+.RS 19n
+The maximum number of bytes in a multi-byte character. This defaults to
+\fB1\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB<\fImb_cur_min\fR>\fR
+.ad
+.RS 19n
+An unsigned positive integer value that defines the minimum number of bytes in
+a character for the encoded character set.
+.RE
+
+.sp
+.ne 2
+.na
+\fB<\fIescape_char\fR>\fR
+.ad
+.RS 19n
+The escape character used to indicate that the characters following will be
+interpreted in a special way, as defined later in this section. This defaults
+to backslash ('\fB\e\fR\&'), which is the character glyph used in all the
+following text and examples, unless otherwise noted.
+.RE
+
+.sp
+.ne 2
+.na
+\fB<\fIcomment_char\fR>\fR
+.ad
+.RS 19n
+The character that when placed in column 1 of a charmap line, is used to
+indicate that the line is to be ignored. The default character is the number
+sign (#).
+.RE
+
+.SS "Format"
+.sp
+.LP
+The character set mapping definitions will be all the lines immediately
+following an identifier line containing the string \fBCHARMAP\fR starting in
+column 1, and preceding a trailer line containing the string \fBEND\fR
+\fBCHARMAP\fR starting in column 1. Empty lines and lines containing a
+\fI<comment_char>\fR in the first column will be ignored. Each non-comment line
+of the character set mapping definition, that is, between the \fBCHARMAP\fR and
+\fBEND CHARMAP\fR lines of the file), must be in either of two forms:
+.sp
+.in +2
+.nf
+\fB"%s %s %s\en",\fR<\fIsymbolic-name\fR>,<\fIencoding\fR>,<\fIcomments\fR>
+.fi
+.in -2
+
+.sp
+.LP
+or
+.sp
+.in +2
+.nf
+\fB"%s...%s %s %s\en",\fR<\fIsymbolic-name\fR>,<\fIsymbolic-name\fR>, <\fIencoding\fR>,\e
+ <\fIcomments\fR>
+.fi
+.in -2
+
+.sp
+.LP
+In the first format, the line in the character set mapping definition defines a
+single symbolic name and a corresponding encoding. A character following an
+escape character is interpreted as itself; for example, the sequence
+"<\fB\e\e\e\fR>>" represents the symbolic name "\fI\e>\fR" enclosed between
+angle brackets.
+.sp
+.LP
+In the second format, the line in the character set mapping definition defines
+a range of one or more symbolic names. In this form, the symbolic names must
+consist of zero or more non-numeric characters, followed by an integer formed
+by one or more decimal digits. The characters preceding the integer must be
+identical in the two symbolic names, and the integer formed by the digits in
+the second symbolic name must be equal to or greater than the integer formed by
+the digits in the first name. This is interpreted as a series of symbolic names
+formed from the common part and each of the integers between the first and the
+second integer, inclusive. As an example, \fB<j0101>...<j0104>\fR is
+interpreted as the symbolic names \fB<j0101>\fR, \fB<j0102>\fR, \fB<j0103>\fR,
+and \fB<j0104>\fR, in that order.
+.sp
+.LP
+A character set mapping definition line must exist for all symbolic names and
+must define the coded character value that corresponds to the character glyph
+indicated in the table, or the coded character value that corresponds with the
+control character symbolic name. If the control characters commonly associated
+with the symbolic names are supported by the implementation, the symbolic name
+and the corresponding encoding value must be included in the file. Additional
+unique symbolic names may be included. A coded character value can be
+represented by more than one symbolic name.
+.sp
+.LP
+The encoding part is expressed as one (for single-byte character values) or
+more concatenated decimal, octal or hexadecimal constants in the following
+formats:
+.sp
+.in +2
+.nf
+\fB"%cd%d",\fR<\fIescape_char\fR>,<\fIdecimal byte value\fR>
+
+\fB"%cx%x",\fR<\fIescape_char\fR>,<\fIhexadecimal byte value\fR>
+
+\fB"%c%o",\fR<\fIescape_char\fR>,<\fIoctal byte value\fR>
+.fi
+.in -2
+
+.SS "Decimal Constants"
+.sp
+.LP
+Decimal constants must be represented by two or three decimal digits, preceded
+by the escape character and the lower-case letter \fBd\fR; for example,
+\fB\ed05\fR, \fB\ed97\fR, or \fB\ed143\fR\&. Hexadecimal constants must be
+represented by two hexadecimal digits, preceded by the escape character and the
+lower-case letter \fBx\fR; for example, \fB\ex05\fR, \fB\ex61\fR, or
+\fB\ex8f\fR\&. Octal constants must be represented by two or three octal
+digits, preceded by the escape character; for example, \fB\e05\fR, \fB\e141\fR,
+or \fB\e217\fR\&. In a portable charmap file, each constant must represent an
+8-bit byte. Implementations supporting other byte sizes may allow constants to
+represent values larger than those that can be represented in 8-bit bytes, and
+to allow additional digits in constants. When constants are concatenated for
+multi-byte character values, they must be of the same type, and interpreted in
+byte order from first to last with the least significant byte of the multi-byte
+character specified by the last constant.
+.SS "Ranges of Symbolic Names"
+.sp
+.LP
+In lines defining ranges of symbolic names, the encoded value is the value for
+the first symbolic name in the range (the symbolic name preceding the
+ellipsis). Subsequent symbolic names defined by the range will have encoding
+values in increasing order. Bytes are treated as unsigned octets and carry is
+propagated between the bytes as necessary to represent the range. However,
+because this causes a null byte in the second or subsequent bytes of a
+character, such a declaration should not be specified. For example, the line
+.sp
+.in +2
+.nf
+<j0101>...<j0104> \ed129\ed254
+.fi
+.in -2
+
+.sp
+.LP
+is interpreted as:
+.sp
+.in +2
+.nf
+<j0101> \ed129\ed254
+<j0102> \ed129\ed255
+<j0103> \ed130\ed00
+<j0104> \ed130\ed01
+.fi
+.in -2
+
+.sp
+.LP
+The expanded declaration of the symbol \fB<j0103>\fR in the above example is an
+invalid specification, because it contains a null byte in the second byte of a
+character.
+.sp
+.LP
+The comment is optional.
+.SS "Width Specification"
+.sp
+.LP
+The following declarations can follow the character set mapping definitions
+(after the "\fBEND CHARMAP\fR" statement). Each consists of the keyword shown
+in the following list, starting in column 1, followed by the value(s) to be
+associated to the keyword, as defined below.
+.sp
+.ne 2
+.na
+\fB\fBWIDTH\fR\fR
+.ad
+.RS 17n
+A non-negative integer value defining the column width for the printable
+character in the coded character set mapping definitions. Coded character set
+character values are defined using symbolic character names followed by column
+width values. Defining a character with more than one \fBWIDTH\fR produces
+undefined results. The \fBEND WIDTH\fR keyword is used to terminate the
+\fBWIDTH\fR definitions. Specifying the width of a non-printable character in a
+\fBWIDTH\fR declaration produces undefined results.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBWIDTH_DEFAULT\fR\fR
+.ad
+.RS 17n
+A non-negative integer value defining the default column width for any
+printable character not listed by one of the \fBWIDTH\fR keywords. If no
+\fBWIDTH_DEFAULT\fR keyword is included in the charmap, the default character
+width is \fB1\fR.
+.RE
+
+.sp
+.LP
+Example:
+.sp
+.LP
+After the "\fBEND CHARMAP\fR" statement, a syntax for a width definition would
+be:
+.sp
+.in +2
+.nf
+WIDTH
+<A> 1
+<B> 1
+<C>...<Z> 1
+\&...
+<fool>...<foon> 2
+\&...
+END WIDTH
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+In this example, the numerical code point values represented by the symbols
+\fB<A>\fR and \fB<B>\fR are assigned a width of \fB1\fR. The code point values
+\fB< C>\fR to \fB<Z>\fR inclusive, that is, \fB<C>\fR, \fB<D>\fR, \fB<E>\fR,
+and so on, are also assigned a width of \fB1\fR. Using \fB<A>...<Z>\fR would
+have required fewer lines, but the alternative was shown to demonstrate
+flexibility. The keyword \fBWIDTH_DEFAULT\fR could have been added as
+appropriate.
+.SH SEE ALSO
+.sp
+.LP
+.BR locale (1),
+.BR localedef (1),
+.BR nl_langinfo (3C),
+.BR extensions (7),
+.BR locale (7)
diff --git a/usr/src/man/man7/check-password.4th.7 b/usr/src/man/man7/check-password.4th.7
new file mode 100644
index 0000000000..fd165cb29a
--- /dev/null
+++ b/usr/src/man/man7/check-password.4th.7
@@ -0,0 +1,130 @@
+.\" Copyright (c) 2011-2015 Devin Teske
+.\" All rights reserved.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\" notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\" notice, this list of conditions and the following disclaimer in the
+.\" documentation and/or other materials provided with the distribution.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+.\" SUCH DAMAGE.
+.\"
+.Dd July 20, 2018
+.Dt CHECK-PASSWORD.4TH 7
+.Os
+.Sh NAME
+.Nm check-password.4th
+.Nd loader password-checking boot module
+.Sh DESCRIPTION
+The file that goes by the name of
+.Nm
+is a set of commands designed to do one or more of the following:
+.Pp
+.Dl o Prevent booting without password
+.Dl o Prevent modification of boot options without password
+.Pp
+The commands of
+.Nm
+by themselves are not enough for most uses.
+Please refer to the
+examples below for the most common situations, and to
+.Xr loader 7
+for additional commands.
+.Pp
+Before using any of the commands provided in
+.Nm ,
+it must be included
+through the command:
+.Pp
+.Dl include check-password.4th
+.Pp
+This line is present in
+.Pa /boot/forth/loader.4th
+file, so it is not needed (and should not be re-issued) in a normal setup.
+.Pp
+The commands provided by it are:
+.Pp
+.Bl -tag -width disable-module_module -compact -offset indent
+.It Ic check-password
+Multi-purpose function that can protect the interactive boot menu,
+prevent boot without password
+.Pq depending on Xr loader.conf 5 settings .
+.Pp
+First checks
+.Va bootlock_password
+and if-set, the user cannot continue until the correct password is entered.
+.Pp
+Last, checks
+.Va password
+and if-set, tries to
+.Ic autoboot
+and only prompts for password on failure or user-interrupt.
+See
+.Xr loader.conf 5
+for additional information.
+.El
+.Pp
+The environment variables that effect its behavior are:
+.Bl -tag -width bootlock_password -offset indent
+.It Va bootlock_password
+Sets the bootlock password (up to 16 characters long) that is required by
+.Ic check-password
+to be entered before the system is allowed to boot.
+.It Va password
+Sets the password (up to 16 characters long) that is required by
+.Ic check-password
+before the user is allowed to visit the boot menu.
+.El
+.Sh FILES
+.Bl -tag -width /boot/forth/check-password.4th -compact
+.It Pa /boot/loader
+The
+.Xr loader 7 .
+.It Pa /boot/forth/check-password.4th
+.Nm
+itself.
+.It Pa /boot/loader.rc
+.Xr loader 7
+bootstrapping script.
+.El
+.Sh EXAMPLES
+Standard i386
+.Pa /boot/loader.rc :
+.Pp
+.Bd -literal -offset indent -compact
+include /boot/forth/loader.4th
+check-password
+.Ed
+.Pp
+Set a password in
+.Xr loader.conf 5
+to prevent modification of boot options:
+.Pp
+.Bd -literal -offset indent -compact
+password="abc123"
+.Ed
+.Pp
+Set a password in
+.Xr loader.conf 5
+to prevent booting without password:
+.Pp
+.Bd -literal -offset indent -compact
+bootlock_password="boot"
+.Ed
+.Sh SEE ALSO
+.Xr loader.conf 5 ,
+.Xr loader 7 ,
+.Xr loader.4th 7
diff --git a/usr/src/man/man7/color.4th.7 b/usr/src/man/man7/color.4th.7
new file mode 100644
index 0000000000..e3884d170d
--- /dev/null
+++ b/usr/src/man/man7/color.4th.7
@@ -0,0 +1,103 @@
+.\" Copyright (c) 2011-2013 Devin Teske
+.\" All rights reserved.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\" notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\" notice, this list of conditions and the following disclaimer in the
+.\" documentation and/or other materials provided with the distribution.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+.\" SUCH DAMAGE.
+.\"
+.Dd July 20, 2018
+.Dt COLOR.4TH 7
+.Os
+.Sh NAME
+.Nm color.4th
+.Nd loader color-detection boot module
+.Sh DESCRIPTION
+The file that goes by the name of
+.Nm
+is a set of commands designed to simplify color logic.
+The commands of
+.Nm
+by themselves are not enough for most uses.
+Please refer to the
+examples below for the most common situations, and to
+.Xr loader 7
+for additional commands.
+.Pp
+Before using any of the commands provided in
+.Nm ,
+it must be included
+through the command:
+.Pp
+.Dl include color.4th
+.Pp
+This line is present in
+.Pa /boot/forth/loader.4th
+file, so it is not needed (and should not be re-issued) in a normal setup.
+.Pp
+The commands provided by it are:
+.Pp
+.Bl -tag -width disable-module_module -compact -offset indent
+.It Ic loader_color?
+Returns FALSE if the
+.Ic loader_color
+environment variable is set to
+.Dq NO
+(case-insensitive) or
+.Dq 0 .
+Otherwise returns TRUE
+.Pq unless booting serial .
+.El
+.Pp
+The environment variables that effect its behavior are:
+.Bl -tag -width bootfile -offset indent
+.It Va loader_color
+If set to
+.Dq NO
+(case-insensitive) or
+.Dq 0 ,
+causes
+.Ic loader_color?
+to return FALSE, indicating to many modules that color should not be used.
+.El
+.Sh FILES
+.Bl -tag -width /boot/forth/loader.4th -compact
+.It Pa /boot/loader
+The
+.Xr loader 7 .
+.It Pa /boot/forth/color.4th
+.Nm
+itself.
+.It Pa /boot/loader.rc
+.Xr loader 7
+bootstrapping script.
+.El
+.Sh EXAMPLES
+Standard i386
+.Pa /boot/loader.conf :
+.Pp
+Use color where applicable:
+.Pp
+.Bd -literal -offset indent -compact
+loader_color="YES"
+.Ed
+.Sh SEE ALSO
+.Xr loader.conf 5 ,
+.Xr loader 7 ,
+.Xr loader.4th 7
diff --git a/usr/src/man/man7/condition.7 b/usr/src/man/man7/condition.7
new file mode 100644
index 0000000000..017ffbbeb5
--- /dev/null
+++ b/usr/src/man/man7/condition.7
@@ -0,0 +1,154 @@
+.\"
+.\" Sun Microsystems, Inc. gratefully acknowledges The Open Group for
+.\" permission to reproduce portions of its copyrighted documentation.
+.\" Original documentation from The Open Group can be obtained online at
+.\" http://www.opengroup.org/bookstore/.
+.\"
+.\" The Institute of Electrical and Electronics Engineers and The Open
+.\" Group, have given us permission to reprint portions of their
+.\" documentation.
+.\"
+.\" In the following statement, the phrase ``this text'' refers to portions
+.\" of the system documentation.
+.\"
+.\" Portions of this text are reprinted and reproduced in electronic form
+.\" in the SunOS Reference Manual, from IEEE Std 1003.1, 2004 Edition,
+.\" Standard for Information Technology -- Portable Operating System
+.\" Interface (POSIX), The Open Group Base Specifications Issue 6,
+.\" Copyright (C) 2001-2004 by the Institute of Electrical and Electronics
+.\" Engineers, Inc and The Open Group. In the event of any discrepancy
+.\" between these versions and the original IEEE and The Open Group
+.\" Standard, the original IEEE and The Open Group Standard is the referee
+.\" document. The original Standard can be obtained online at
+.\" http://www.opengroup.org/unix/online.html.
+.\"
+.\" This notice shall appear on any product containing this material.
+.\"
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.\"
+.\"
+.\" Portions Copyright (c) 1995 IEEE All Rights Reserved
+.\" Copyright (c) 1998 Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright (c) 2001, The IEEE and The Open Group. All Rights Reserved.
+.\"
+.TH CONDITION 7 "May 16, 2020"
+.SH NAME
+condition \- concepts related to condition variables
+.SH DESCRIPTION
+Occasionally, a thread running within a mutex needs to wait for an event, in
+which case it blocks or sleeps. When a thread is waiting for another thread to
+communicate its disposition, it uses a condition variable in conjunction with a
+mutex. Although a mutex is exclusive and the code it protects is sharable (at
+certain moments), condition variables enable the synchronization of differing
+events that share a mutex, but not necessarily data. Several condition
+variables may be used by threads to signal each other when a task is complete,
+which then allows the next waiting thread to take ownership of the mutex.
+.sp
+.LP
+A condition variable enables threads to atomically block and test the condition
+under the protection of a mutual exclusion lock (mutex) until the condition is
+satisfied. If the condition is false, a thread blocks on a condition variable
+and atomically releases the mutex that is waiting for the condition to change.
+If another thread changes the condition, it may wake up waiting threads by
+signaling the associated condition variable. The waiting threads, upon
+awakening, reacquire the mutex and re-evaluate the condition.
+.SS "Initialize"
+Condition variables and mutexes should be global. Condition variables that are
+allocated in writable memory can synchronize threads among processes if they
+are shared by the cooperating processes (see \fBmmap\fR(2)) and are initialized
+for this purpose.
+.sp
+.LP
+The scope of a condition variable is either intra-process or inter-process.
+This is dependent upon whether the argument is passed implicitly or explicitly
+to the initialization of that condition variable. A condition variable does
+not need to be explicitly initialized. A condition variable is initialized with
+all zeros, by default, and its scope is set to within the calling process. For
+inter-process synchronization, a condition variable must be initialized once,
+and only once, before use.
+.sp
+.LP
+A condition variable must not be simultaneously initialized by multiple threads
+or re-initialized while in use by other threads.
+.sp
+.LP
+Condition variables attributes may be set to the default or customized at
+initialization. POSIX threads even allow the default values to be customized.
+Establishing these attributes varies depending upon whether POSIX or Solaris
+threads are used. Similar to the distinctions between POSIX and Solaris thread
+creation, POSIX condition variables implement the default, intra-process,
+unless an attribute object is modified for inter-process prior to the
+initialization of the condition variable. Solaris condition variables also
+implement as the default, intra-process; however, they set this attribute
+according to the argument, \fItype\fR, passed to their initialization function.
+.SS "Condition Wait"
+The condition wait interface allows a thread to wait for a condition and
+atomically release the associated mutex that it needs to hold to check the
+condition. The thread waits for another thread to make the condition true and
+that thread's resulting call to signal and wakeup the waiting thread.
+.SS "Condition Signaling"
+A condition signal allows a thread to unblock the next thread waiting on the
+condition variable, whereas, a condition broadcast allows a thread to unblock
+all threads waiting on the condition variable.
+.SS "Destroy"
+The condition destroy functions destroy any state, but not the space,
+associated with the condition variable.
+.SH ATTRIBUTES
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+MT-Level MT-Safe
+.TE
+
+.SH SEE ALSO
+.BR fork (2),
+.BR mmap (2),
+.BR setitimer (2),
+.BR shmop (2),
+.BR cond_broadcast (3C),
+.BR cond_destroy (3C),
+.BR cond_init (3C),
+.BR cond_signal (3C),
+.BR cond_timedwait (3C),
+.BR cond_wait (3C),
+.BR pthread_cond_broadcast (3C),
+.BR pthread_cond_destroy (3C),
+.BR pthread_cond_init (3C),
+.BR pthread_cond_signal (3C),
+.BR pthread_cond_timedwait (3C),
+.BR pthread_cond_wait (3C),
+.BR pthread_condattr_init (3C),
+.BR signal (3C),
+.BR attributes (7),
+.BR mutex (7),
+.BR standards (7)
+.SH NOTES
+If more than one thread is blocked on a condition variable, the order in which
+threads are unblocked is determined by the scheduling policy.
+.sp
+.LP
+\fBUSYNC_THREAD\fR does not support multiple mappings to the same logical
+synch object. If you need to \fBmmap()\fR a synch object to different locations
+within the same address space, then the synch object should be initialized as a
+shared object \fBUSYNC_PROCESS\fR for Solaris, and
+\fBPTHREAD_PROCESS_PRIVATE\fR for POSIX.
diff --git a/usr/src/man/man7/cpr.7 b/usr/src/man/man7/cpr.7
deleted file mode 100644
index 5faeaa68f2..0000000000
--- a/usr/src/man/man7/cpr.7
+++ /dev/null
@@ -1,114 +0,0 @@
-.\" Copyright (c) 2001, Sun Microsystems, Inc.
-.\" All Rights Reserved
-.\"
-.\" Copyright 2020 Joyent, Inc.
-.\"
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.\"
-.Dd January 12, 2020
-.Dt CPR 7
-.Os
-.Sh NAME
-.Nm cpr
-.Nd Suspend and resume module
-.Sh SYNOPSIS
-.Pa /platform/i86pc/kernel/misc/amd64/cpr
-.Pa /platform/sun4u/kernel/misc/sparcv9/cpr
-.Sh DESCRIPTION
-The
-.Nm
-module is a loadable module used to suspend and resume the entire system.
-You may wish to suspend a system to save power or to power off
-temporarily for transport.
-The
-.Nm
-module should not be used in place of
-a normal shutdown when performing any hardware reconfiguration or replacement.
-In order for the resume operation to succeed, it is important that the hardware
-configuration remain the same.
-When the system is suspended, the entire system
-state is preserved in non-volatile storage until a resume operation is
-conducted.
-.Pp
-.Xr pmconfig 1M
-and
-.Xr power.conf 4
-are used to configure the suspend-resume feature.
-.Pp
-The speed of suspend and resume operations can range from 15 seconds to
-several minutes, depending on the system speed, memory size, and load.
-.Pp
-During resume operation, the
-.Dv SIGTHAW
-signal is sent to all processes to
-allow them to do any special processing in response to suspend-resume
-operation.
-Normally applications are not required to do any special processing
-because of suspend-resume, but some specialized processes can use
-.Dv SIGTHAW
-to restore the state prior to suspend.
-For example,
-.Sy X
-can refresh the screen in response to
-.Dv SIGTHAW .
-.Pp
-In some cases the
-.Nm
-module may be unable to perform the suspend operation.
-If a system contains additional devices outside the standard shipped
-configuration, it is possible that device drivers for these additional devices
-might not support suspend-resume operations.
-In this case, the suspend fails and an error message is displayed.
-These devices must be removed or their
-device drivers unloaded for the suspend operation to succeed.
-Contact the
-device manufacturer to obtain a new version of device driver that supports
-suspend-resume.
-.Pp
-A suspend may also fail when devices or processes are performing critical or
-time-sensitive operations (such as realtime operations).
-The system will remain in its current running state.
-Messages reporting the failure will be displayed
-on the console and status returned to the caller.
-Once the system is
-successfully suspended the resume operation will succeed, barring external
-influences such as a hardware reconfiguration.
-.Pp
-Some network-based applications may fail across a suspend and resume cycle.
-This largely depends on the underlying network protocol and the applications
-involved.
-In general, applications that retry and automatically reestablish
-connections will continue to operate transparently on a resume operation;
-those applications that do not will likely fail.
-.Sh INTERFACE STABILITY
-Unstable
-.Sh SEE ALSO
-.Xr pmconfig 1M ,
-.Xr uadmin 1M ,
-.Xr uadmin 2 ,
-.Xr power.conf 4 ,
-.Xr attributes 5
-.Pp
-.%T Writing Device Drivers
-.Sh NOTES
-Certain device operations such as tape and floppy disk activities are not
-resumable due to the nature of removable media.
-These activities are detected
-at suspend time, and must be stopped before the suspend operation will
-complete successfully.
-.Pp
-Suspend-resume is currently supported only on a limited set of hardware
-platforms.
diff --git a/usr/src/man/man7/crypt_bsdbf.7 b/usr/src/man/man7/crypt_bsdbf.7
new file mode 100644
index 0000000000..7e4ca9f966
--- /dev/null
+++ b/usr/src/man/man7/crypt_bsdbf.7
@@ -0,0 +1,52 @@
+'\" te
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
+.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH CRYPT_BSDBF 7 "Sep 13, 2009"
+.SH NAME
+crypt_bsdbf \- password hashing module using Blowfish cryptographic algorithm
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/security/$ISA/crypt_bsdbf.so\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBcrypt_bsdbf\fR module is a one-way password hashing module for use with
+\fBcrypt\fR(3C) that uses the Blowfish cryptographic algorithm. The algorithm
+identifier for \fBcrypt.conf\fR(5) and \fBpolicy.conf\fR(5) is \fB2a\fR.
+.sp
+.LP
+The maximum password length for \fBcrypt_bsdbf\fR is 72 characters.
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+MT-Level Safe
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR passwd (1),
+.BR crypt (3C),
+.BR crypt_genhash_impl (3C),
+.BR crypt_gensalt (3C),
+.BR crypt_gensalt_impl (3C),
+.BR getpassphrase (3C),
+.BR crypt.conf (5),
+.BR passwd (5),
+.BR policy.conf (5),
+.BR attributes (7)
diff --git a/usr/src/man/man7/crypt_bsdmd5.7 b/usr/src/man/man7/crypt_bsdmd5.7
new file mode 100644
index 0000000000..7785e6e691
--- /dev/null
+++ b/usr/src/man/man7/crypt_bsdmd5.7
@@ -0,0 +1,53 @@
+'\" te
+.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH CRYPT_BSDMD5 7 "Aug 6, 2003"
+.SH NAME
+crypt_bsdmd5 \- password hashing module using MD5 message hash algorithm
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/security/$ISA/crypt_bsdmd5.so\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBcrypt_bsdmd5\fR module is a one-way password hashing module for use with
+\fBcrypt\fR(3C) that uses the MD5 message hash algorithm. The algorithm
+identifier for \fBcrypt.conf\fR(5) and \fBpolicy.conf\fR(5) is \fB1\fR. The
+output is compatible with \fBmd5crypt\fR on BSD and Linux systems.
+.sp
+.LP
+The maximum password length for \fBcrypt_bsdmd5\fR is 255 characters.
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+MT-Level Safe
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR passwd (1),
+.BR crypt (3C),
+.BR crypt_genhash_impl (3C),
+.BR crypt_gensalt (3C),
+.BR crypt_gensalt_impl (3C),
+.BR getpassphrase (3C),
+.BR crypt.conf (5),
+.BR passwd (5),
+.BR policy.conf (5),
+.BR attributes (7)
diff --git a/usr/src/man/man7/crypt_sha256.7 b/usr/src/man/man7/crypt_sha256.7
new file mode 100644
index 0000000000..a5637642ff
--- /dev/null
+++ b/usr/src/man/man7/crypt_sha256.7
@@ -0,0 +1,90 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH CRYPT_SHA256 7 "May 8, 2008"
+.SH NAME
+crypt_sha256 \- password hashing module using SHA-256 message hash algorithm
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/security/$ISA/crypt_sha256.so\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBcrypt_sha256\fR module is a one-way password hashing module for use with
+\fBcrypt\fR(3C) that uses the SHA-256 message hash algorithm. The algorithm
+identifier for \fBcrypt.conf\fR(5) and \fBpolicy.conf\fR(5) is \fB5\fR.
+.sp
+.LP
+This module is designed to make it difficult to crack passwords that use brute
+force attacks based on high speed SHA-256 implementations that use code
+inlining, unrolled loops, and table lookup.
+.sp
+.LP
+The maximum password length for \fBcrypt_sha256\fR is 255 characters.
+.sp
+.LP
+The following options can be passed to the module by means of
+\fBcrypt.conf\fR(5):
+.sp
+.ne 2
+.na
+\fB\fBrounds=\fR\fI<positive_number>\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the number of rounds of SHA-256 to use in generation of the salt; the
+default number of rounds is 5000. Negative values have no effect and are
+ignored. The minimum number of rounds cannot be below 1000.
+.sp
+The number of additional rounds is stored in the salt string returned by
+\fBcrypt_gensalt\fR(3C). For example:
+.sp
+.in +2
+.nf
+$5,rounds=6000$nlxmTTpz$
+.fi
+.in -2
+
+When \fBcrypt_gensalt\fR(3C) is being used to generate a new salt, if the
+number of additional rounds configured in \fBcrypt.conf\fR(5) is greater than
+that in the old salt, the value from \fBcrypt.conf\fR(5) is used instead. This
+allows for migration to stronger (but more time-consuming) salts on password
+change.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Committed
+_
+MT-Level Safe
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR passwd (1),
+.BR crypt (3C),
+.BR crypt_genhash_impl (3C),
+.BR crypt_gensalt (3C),
+.BR crypt_gensalt_impl (3C),
+.BR getpassphrase (3C),
+.BR crypt.conf (5),
+.BR passwd (5),
+.BR policy.conf (5),
+.BR attributes (7)
diff --git a/usr/src/man/man7/crypt_sha512.7 b/usr/src/man/man7/crypt_sha512.7
new file mode 100644
index 0000000000..1d8e968d4e
--- /dev/null
+++ b/usr/src/man/man7/crypt_sha512.7
@@ -0,0 +1,90 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH CRYPT_SHA512 7 "May 8, 2008"
+.SH NAME
+crypt_sha512 \- password hashing module using SHA-512 message hash algorithm
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/security/$ISA/crypt_sha512.so\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBcrypt_sha512\fR module is a one-way password hashing module for use with
+\fBcrypt\fR(3C) that uses the SHA-512 message hash algorithm. The algorithm
+identifier for \fBcrypt.conf\fR(5) and \fBpolicy.conf\fR(5) is \fB6\fR.
+.sp
+.LP
+This module is designed to make it difficult to crack passwords that use brute
+force attacks based on high speed SHA-512 implementations that use code
+inlining, unrolled loops, and table lookup.
+.sp
+.LP
+The maximum password length for \fBcrypt_sha512\fR is 255 characters.
+.sp
+.LP
+The following options can be passed to the module by means of
+\fBcrypt.conf\fR(5):
+.sp
+.ne 2
+.na
+\fB\fBrounds=\fR\fI<positive_number>\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the number of rounds of SHA-512 to use in generation of the salt; the
+default number of rounds is 5000. Negative values have no effect and are
+ignored. The minimum number of rounds cannot be below 1000.
+.sp
+The number of additional rounds is stored in the salt string returned by
+\fBcrypt_gensalt\fR(3C). For example:
+.sp
+.in +2
+.nf
+$6,rounds=6000$nlxmTTpz$
+.fi
+.in -2
+
+When \fBcrypt_gensalt\fR(3C) is being used to generate a new salt, if the
+number of additional rounds configured in \fBcrypt.conf\fR(5) is greater than
+that in the old salt, the value from \fBcrypt.conf\fR(5) is used instead. This
+allows for migration to stronger (but more time-consuming) salts on password
+change.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Committed
+_
+MT-Level Safe
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR passwd (1),
+.BR crypt (3C),
+.BR crypt_genhash_impl (3C),
+.BR crypt_gensalt (3C),
+.BR crypt_gensalt_impl (3C),
+.BR getpassphrase (3C),
+.BR crypt.conf (5),
+.BR passwd (5),
+.BR policy.conf (5),
+.BR attributes (7)
diff --git a/usr/src/man/man7/crypt_sunmd5.7 b/usr/src/man/man7/crypt_sunmd5.7
new file mode 100644
index 0000000000..81737179b0
--- /dev/null
+++ b/usr/src/man/man7/crypt_sunmd5.7
@@ -0,0 +1,87 @@
+'\" te
+.\" Copyright (c) 2002, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH CRYPT_SUNMD5 7 "Dec 23, 2003"
+.SH NAME
+crypt_sunmd5 \- password hashing module using MD5 message hash algorithm
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/security/$ISA/crypt_sunmd5.so\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBcrypt_sunmd5\fR module is a one-way password hashing module for use with
+\fBcrypt\fR(3C) that uses the MD5 message hash algorithm. The algorithm
+identifier for \fBcrypt.conf\fR(5) and \fBpolicy.conf\fR(5) is \fBmd5\fR.
+.sp
+.LP
+This module is designed to make it difficult to crack passwords that use brute
+force attacks based on high speed MD5 implementations that use code inlining,
+unrolled loops, and table lookup.
+.sp
+.LP
+The maximum password length for \fBcrypt_sunmd5\fR is 255 characters.
+.sp
+.LP
+The following options can be passed to the module by means of
+\fBcrypt.conf\fR(5):
+.sp
+.ne 2
+.na
+\fB\fBrounds=\fR\fI<positive_number>\fR\fR
+.ad
+.RS 28n
+Specifies the number of additional rounds of MD5 to use in generation of the
+salt; the default number of rounds is 4096. Negative values have no effect and
+are ignored, that is, the number of rounds cannot be lowered below 4096.
+.sp
+The number of additional rounds is stored in the salt string returned by
+\fBcrypt_gensalt\fR(3C). For example:
+.sp
+.in +2
+.nf
+$md5,rounds=1000$nlxmTTpz$
+.fi
+.in -2
+
+When \fBcrypt_gensalt\fR(3C) is being used to generate a new salt, if the
+number of additional rounds configured in \fBcrypt.conf\fR(5) is greater than
+that in the old salt, the value from \fBcrypt.conf\fR(5) is used instead. This
+allows for migration to stronger (but more time-consuming) salts on password
+change.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+MT-Level Safe
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR passwd (1),
+.BR crypt (3C),
+.BR crypt_genhash_impl (3C),
+.BR crypt_gensalt (3C),
+.BR crypt_gensalt_impl (3C),
+.BR getpassphrase (3C),
+.BR crypt.conf (5),
+.BR passwd (5),
+.BR policy.conf (5),
+.BR attributes (7)
diff --git a/usr/src/man/man7/crypt_unix.7 b/usr/src/man/man7/crypt_unix.7
new file mode 100644
index 0000000000..299840cf82
--- /dev/null
+++ b/usr/src/man/man7/crypt_unix.7
@@ -0,0 +1,73 @@
+'\" te
+.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH CRYPT_UNIX 7 "Aug 6, 2003"
+.SH NAME
+crypt_unix \- traditional UNIX crypt algorithm
+.SH DESCRIPTION
+.sp
+.LP
+The \fBcrypt_unix\fR algorithm is the traditional UNIX crypt algorithm. It is
+not considered sufficiently secure for current systems and is provided for
+backwards compatibility. The \fBcrypt_sunmd5\fR(7), \fBcrypt_bsdmd5\fR(7), or
+\fBcrypt_bsdbf\fR(7) algorithm should be used instead.
+.sp
+.LP
+The algorithm identifier for \fBpolicy.conf\fR(5) is \fB__unix__\fR. There is
+no entry in \fBcrypt.conf\fR(5) for this algorithm.
+.sp
+.LP
+The \fBcrypt_unix\fR algorithm is internal to \fBlibc\fR and provides the
+string encoding function used by \fBcrypt\fR(3C) when the first character of
+the salt is not a "$".
+.sp
+.LP
+This algorithm is based on a one-way encryption algorithm with variations
+intended (among other things) to frustrate use of hardware implementations of a
+key search. Only the first eight characters of the key passed to \fBcrypt()\fR
+are used with this algorithm; the rest are silently ignored. The salt is a
+two-character string chosen from the set [a-zA-Z0-9./]. This string is used to
+perturb the hashing algorithm in one of 4096 different ways.
+.sp
+.LP
+The maximum password length for \fBcrypt_unix\fR is 8 characters.
+.SH USAGE
+.sp
+.LP
+The return value of the \fBcrypt_unix\fR algorithm might not be portable among
+standard-conforming systems. See \fBstandards\fR(7).
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+MT-Level Safe
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR passwd (1),
+.BR crypt (3C),
+.BR crypt_genhash_impl (3C),
+.BR crypt_gensalt (3C),
+.BR crypt_gensalt_impl (3C),
+.BR getpassphrase (3C),
+.BR crypt.conf (5),
+.BR passwd (5),
+.BR policy.conf (5),
+.BR attributes (7),
+.BR crypt_bsdbf (7),
+.BR crypt_bsdmd5 (7),
+.BR crypt_sunmd5 (7),
+.BR standards (7)
diff --git a/usr/src/man/man7/delay.4th.7 b/usr/src/man/man7/delay.4th.7
new file mode 100644
index 0000000000..16729e01b4
--- /dev/null
+++ b/usr/src/man/man7/delay.4th.7
@@ -0,0 +1,113 @@
+.\" Copyright (c) 2011 Devin Teske
+.\" All rights reserved.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\" notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\" notice, this list of conditions and the following disclaimer in the
+.\" documentation and/or other materials provided with the distribution.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+.\" SUCH DAMAGE.
+.\"
+.Dd July 20, 2018
+.Dt DELAY.4TH 7
+.Os
+.Sh NAME
+.Nm delay.4th
+.Nd loader debugging boot module
+.Sh DESCRIPTION
+The file that goes by the name of
+.Nm
+is a set of commands designed to add debugging capabilities to
+.Xr loader 7 .
+The commands of
+.Nm
+by themselves are not enough for most uses.
+Please refer to the
+examples below for the most common situations, and to
+.Xr loader 7
+for additional commands.
+.Pp
+Before using any of the commands provided in
+.Nm ,
+it must be included
+through the command:
+.Pp
+.Dl include delay.4th
+.Pp
+This line is present in
+.Pa /boot/forth/beastie.4th
+file, so it is not needed (and should not be re-issued) in a normal setup.
+.Pp
+The commands provided by it are:
+.Pp
+.Bl -tag -width disable-module_module -compact -offset indent
+.It Ic delay_execute
+Executes the [string] procedure stored in the
+.Ic delay_command
+environment variable after
+.Ic loader_delay
+seconds.
+.Pp
+If the optional
+.Ic delay_showdots
+environment variable is set, a continuous series of dots is printed.
+.Pp
+During the duration, the user can either press Ctrl-C (or Esc) to abort or
+ENTER to proceed immediately.
+.El
+.Pp
+The environment variables that effect its behavior are:
+.Bl -tag -width bootfile -offset indent
+.It Va delay_command
+The command to be executed by
+.Ic delay_execute .
+.It Va loader_delay
+The duration (in seconds) to delay before executing
+.Ic delay_command .
+.It Va delay_showdots
+If set, will cause
+.Ic delay_execute
+to print a continuous series of dots during the delay duration.
+.El
+.Sh FILES
+.Bl -tag -width /boot/forth/loader.4th -compact
+.It Pa /boot/loader
+The
+.Xr loader 7 .
+.It Pa /boot/forth/delay.4th
+.Nm
+itself.
+.It Pa /boot/loader.rc
+.Xr loader 7
+bootstrapping script.
+.El
+.Sh EXAMPLES
+Introducing a 5-second delay before including another file from
+.Pa /boot/loader.rc :
+.Pp
+.Bd -literal -offset indent -compact
+include /boot/forth/delay.4th
+set delay_command="include /boot/forth/other.4th"
+set delay_showdots
+set loader_delay=5
+delay_execute
+.Ed
+.Sh SEE ALSO
+.Xr loader.conf 5 ,
+.Xr beastie.4th 7 ,
+.Xr loader 7 ,
+.Xr loader.4th 7
diff --git a/usr/src/man/man7/device_clean.7 b/usr/src/man/man7/device_clean.7
new file mode 100644
index 0000000000..9157841c2b
--- /dev/null
+++ b/usr/src/man/man7/device_clean.7
@@ -0,0 +1,308 @@
+'\" te
+.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH DEVICE_CLEAN 7 "Jun 14, 2007"
+.SH NAME
+device_clean \- device clean programs
+.SH DESCRIPTION
+.sp
+.LP
+Each allocatable device has a device clean program associated with it. Device
+clean programs are invoked by \fBdeallocate\fR(1) to clean device states,
+registers, and any residual information in the device before the device is
+allocated to a user. Such cleaning is required by the object reuse policy.
+.sp
+.LP
+Use \fBlist_devices\fR(1) to obtain the names and types of allocatable devices
+as well as the cleaning program and the authorizations that are associated with
+each device.
+.sp
+.LP
+On a system configured with Trusted Extensions, device clean programs are also
+invoked by \fBallocate\fR(1), in which case the program can optionally mount
+appropriate media for the caller.
+.sp
+.LP
+The following device clean programs reside in \fB/etc/security/lib\fR.
+.sp
+.ne 2
+.na
+\fB\fBaudio_clean\fR\fR
+.ad
+.RS 15n
+audio devices
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfd_clean\fR\fR
+.ad
+.RS 15n
+floppy devices
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBst_clean\fR\fR
+.ad
+.RS 15n
+tape devices
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsr_clean\fR\fR
+.ad
+.RS 15n
+CD-ROM devices
+.RE
+
+.sp
+.LP
+On a system configured with Trusted Extensions, the following additional
+cleaning programs and wrappers are available.
+.sp
+.ne 2
+.na
+\fB\fBdisk_clean\fR\fR
+.ad
+.RS 23n
+floppy, CD-ROM, and other removable media devices. This program mounts the
+device during the execution of \fBallocate\fR, if required.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBaudio_clean_wrapper\fR\fR
+.ad
+.RS 23n
+wrapper to make audio_clean work with CDE
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBwdwwrapper\fR\fR
+.ad
+.RS 23n
+wrapper to make other cleaning programs work with CDE
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBwdwmsg\fR\fR
+.ad
+.RS 23n
+CDE dialog boxes for cleaning programs
+.RE
+
+.sp
+.LP
+Administrators can create device clean programs for their sites. These programs
+must adhere to the syntax described below.
+.sp
+.in +2
+.nf
+/etc/security/lib/\fIdevice-clean-program\fR [\(mii | \(mif | \(mis | \(miI] \e
+\(mim \fImode\fR \(miu \fIuser-name\fR \(miz \fIzone-name\fR \(mip \fIzone-path\fR \fIdevice-name\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+where:
+.sp
+.ne 2
+.na
+\fB\fIdevice-name\fR\fR
+.ad
+.RS 15n
+The name of the device that is to be cleaned. Use \fBlist_devices\fR to obtain
+the list of allocatable devices.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-i\fR\fR
+.ad
+.RS 15n
+Invoke boot-time initialization.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR\fR
+.ad
+.RS 15n
+Force cleanup by the administrator.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR\fR
+.ad
+.RS 15n
+Invoke standard cleanup by the user.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-I\fR\fR
+.ad
+.RS 15n
+Same as \fB-i\fR, with no error or warning.
+.RE
+
+.sp
+.LP
+The following options are supported only when the system is configured with
+Trusted Extensions.
+.sp
+.ne 2
+.na
+\fB\fB-m\fR \fImode\fR\fR
+.ad
+.RS 16n
+Specify the mode in which the clean program is invoked. Valid values are allo-
+cate and deallocate. The default mode is allocate.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-u\fR \fIuser-name\fR\fR
+.ad
+.RS 16n
+Specify the name of user who executes the device clean program. The default
+user is the caller.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-z\fR \fIzone-name\fR\fR
+.ad
+.RS 16n
+Specify the name of the zone in which the device is to be allocated or
+deallocated. The default zone is the global zone.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR \fIzone-path\fR\fR
+.ad
+.RS 16n
+Establish the root path of the zone that is specified by \fIzone-name\fR.
+Default is "/".
+.RE
+
+.SH EXIT STATUS
+.sp
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.sp .6
+.RS 4n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB1\fR\fR
+.ad
+.sp .6
+.RS 4n
+An error. Caller can place device in error state.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB2\fR\fR
+.ad
+.sp .6
+.RS 4n
+A system error. Caller can place device in error state.
+.RE
+
+.sp
+.LP
+On a system configured with Trusted Extensions, the following additional exit
+values are returned:
+.sp
+.ne 2
+.na
+\fB\fB3\fR\fR
+.ad
+.sp .6
+.RS 4n
+Mounting of device failed. Caller shall not place device in error state.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB4\fR\fR
+.ad
+.sp .6
+.RS 4n
+Mounting of device succeeded.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/security/lib/*\fR\fR
+.ad
+.RS 23n
+device clean programs
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability See below.
+.TE
+
+.sp
+.LP
+The Invocation is Uncommitted. The Output is Not-an-interface.
+.SH SEE ALSO
+.sp
+.LP
+.BR allocate (1),
+.BR deallocate (1),
+.BR list_devices (1),
+.BR attributes (7)
+.sp
+.LP
+\fISystem Administration Guide: Security Services\fR
diff --git a/usr/src/man/man7/dhcp.7 b/usr/src/man/man7/dhcp.7
new file mode 100644
index 0000000000..67349a29d0
--- /dev/null
+++ b/usr/src/man/man7/dhcp.7
@@ -0,0 +1,67 @@
+'\" te
+.\" Copyright 2014 Garrett D'Amore <garrett@damore.org>
+.\" Copyright (c) 2001, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH DHCP 7 "Feb 13, 2020"
+.SH NAME
+dhcp \- Dynamic Host Configuration Protocol
+.SH DESCRIPTION
+Dynamic Host Configuration Protocol (\fBDHCP\fR) enables host systems in a
+\fBTCP/IP\fR network to be configured automatically for the network as they
+boot. \fBDHCP\fR uses a client/server mechanism: servers store configuration
+information for clients, and provide that information upon a client's request.
+The information can include the client's \fBIP\fR address and information about
+network services available to the client.
+.LP
+This manual page provides a brief summary of the \fBDHCP\fR
+implementation.
+.SS "DHCP Client"
+The DHCP client is implemented as background daemon,
+\fBdhcpagent\fR(8).
+.LP
+For IPv4, this daemon is started automatically during bootup if there exists at
+least one \fBdhcp.\fR\fIinterface\fR file in \fB/etc\fR. Only interfaces with a
+corresponding \fB\fR\fB/etc/dhcp.\fR\fB\fIinterface\fR\fR file are
+automatically configured during boot.
+.LP
+For IPv6, this daemon is started automatically when commanded by \fBin.ndpd\fR
+(based on IPv6 Routing Advertisement messages). No
+\fB/etc/dhcp\fR.\fIinterface\fR file is necessary, but such a file can be used
+to specify an interface as "primary," provided that IPv4 DHCP is also in use.
+.LP
+Network parameters needed for system configuration during bootup are extracted
+from the information received by the daemon through the use of the
+\fBdhcpinfo\fR(1) command. The daemon's default behavior can be altered by
+changing the tunables in the \fB/etc/default/dhcpagent\fR file. The daemon is
+controlled by the \fBifconfig\fR(8) utility. Check the status of the daemon
+using the \fBnetstat\fR(8) and \fBifconfig\fR(8) commands.
+.SH SEE ALSO
+.BR dhcpinfo (1),
+.BR syslog (3C),
+.BR dhcp_inittab (5),
+.BR ndpd.conf (5),
+.BR dhcpagent (8),
+.BR ifconfig (8),
+.BR in.ndpd (8),
+.BR netstat (8)
+.LP
+Alexander, S., and R. Droms. \fIRFC 2132, DHCP Options and BOOTP Vendor
+Extensions\fR. Silicon Graphics, Inc. Bucknell University. March 1997.
+.LP
+Droms, R. \fIRFC 1534, Interoperation Between DHCP and BOOTP\fR. Bucknell
+University. October 1993.
+.LP
+Droms, R. \fIRFC 2131, Dynamic Host Configuration Protocol\fR. Bucknell
+University. March 1997.
+.LP
+Wimer, W. \fIRFC 1542, Clarifications and Extensions for the Bootstrap
+Protocol\fR. Carnegie Mellon University. October 1993.
+.LP
+Lemon, T. and B. Sommerfeld. \fIRFC 4361, Node-specific Client Identifiers for
+Dynamic Host Configuration Protocol Version Four (DHCPv4)\fR. Nominum and Sun
+Microsystems. February 2006.
+.LP
+Droms, R. \fIRFC 3315, Dynamic Host Configuration Protocol for IPv6
+(DHCPv6)\fR. Cisco Systems. July 2003.
diff --git a/usr/src/man/man7/environ.7 b/usr/src/man/man7/environ.7
new file mode 100644
index 0000000000..f3ada02e56
--- /dev/null
+++ b/usr/src/man/man7/environ.7
@@ -0,0 +1,562 @@
+'\" te
+.\" Copyright 1989 AT&T
+.\" Copyright (c) 2002, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright (c) 2014, Joyent, Inc. All Rights Reserved
+.\" Copyright 2014 Garrett D'Amore <garrett@damore.org>
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH ENVIRON 7 "Jun 26, 2014"
+.SH NAME
+environ \- user environment
+.SH DESCRIPTION
+.LP
+When a process begins execution, one of the \fBexec\fR family of functions
+makes available an array of strings called the environment; see \fBexec\fR(2).
+By convention, these strings have the form \fIvariable=value\fR, for example,
+\fBPATH=/sbin:/usr/sbin\fR. These environmental variables provide a way to make
+information about a program's environment available to programs.
+.LP
+A name may be placed in the environment by the \fBexport\fR command and
+\fIname\fR=\fIvalue\fR arguments in \fBsh\fR(1), or by one of the \fBexec\fR
+functions. It is unwise to conflict with certain shell variables such as
+\fBMAIL\fR, \fBPS1\fR, \fBPS2\fR, and \fBIFS\fR that are frequently exported by
+\fB\&.profile\fR files; see \fBprofile\fR(5).
+.LP
+The following environmental variables can be used by applications and are
+expected to be set in the target run-time environment.
+.sp
+.ne 2
+.na
+\fB\fBHOME\fR\fR
+.ad
+.sp .6
+.RS 4n
+The name of the user's login directory, set by \fBlogin\fR(1) from the password
+file; see \fBpasswd\fR(5).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBLANG\fR\fR
+.ad
+.sp .6
+.RS 4n
+The string used to specify internationalization information that allows users
+to work with different national conventions. The \fBsetlocale\fR(3C) and
+\fBnewlocale\fR(3C) functions
+check the \fBLANG\fR environment variable when they are called with \fB""\fR as
+the \fBlocale\fR argument. \fBLANG\fR is used as the default locale if the
+corresponding environment variable for a particular category is unset or null.
+If, however, \fBLC_ALL\fR is set to a valid, non-empty value, its contents are
+used to override both the \fBLANG\fR and the other \fBLC_*\fR variables. For
+example, when invoked as \fBsetlocale(LC_CTYPE, "")\fR, \fBsetlocale()\fR will
+query the \fBLC_CTYPE\fR environment variable first to see if it is set and
+non-null. If \fBLC_CTYPE\fR is not set or null, then \fBsetlocale()\fR will
+check the \fBLANG\fR environment variable to see if it is set and non-null. If
+both \fBLANG\fR and \fBLC_CTYPE\fR are unset or \fINULL\fR, the default "C"
+locale will be used to set the \fBLC_CTYPE\fR category.
+.sp
+Most commands will invoke \fBsetlocale(LC_ALL, "")\fR prior to any other
+processing. This allows the command to be used with different national
+conventions by setting the appropriate environment variables. In addition, some
+commands will use
+.BR uselocale (3C)
+to set a thread-specific locale.
+.sp
+The following environment variables correspond to each category of
+\fBsetlocale\fR(3C):
+.sp
+.ne 2
+.na
+\fB\fBLC_ALL\fR\fR
+.ad
+.sp .6
+.RS 4n
+If set to a valid, non-empty string value, override the values of \fBLANG\fR
+and all the other \fBLC_*\fRvariables.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBLC_COLLATE\fR\fR
+.ad
+.sp .6
+.RS 4n
+This category specifies the character collation sequence being used. The
+information corresponding to this category is stored in a database created by
+the \fBlocaledef\fR(1) command. This environment variable affects
+\fBstrcoll\fR(3C) and \fBstrxfrm\fR(3C).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBLC_CTYPE\fR\fR
+.ad
+.sp .6
+.RS 4n
+This category specifies character classification, character conversion, and
+widths of multibyte characters. When \fBLC_CTYPE\fR is set to a valid value,
+the calling utility can display and handle text and file names containing valid
+characters for that locale; Extended Unix Code (EUC) characters where any
+individual character can be 1, 2, or 3 bytes wide; and EUC characters of 1, 2,
+or 3 column widths. The default "C" locale corresponds to the 7-bit \fBASCII\fR
+character set; only characters from ISO 8859-1 are valid. The information
+corresponding to this category is stored in a database created by the
+\fBlocaledef()\fR command. This environment variable is used by
+\fBctype\fR(3C), \fBmblen\fR(3C), and many commands, such as \fBcat\fR(1),
+\fBed\fR(1), \fBls\fR(1), and \fBvi\fR(1).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBLC_MESSAGES\fR\fR
+.ad
+.sp .6
+.RS 4n
+This category specifies the language of the message database being used. For
+example, an application may have one message database with French messages, and
+another database with German messages. Message databases are created by the
+\fBmkmsgs\fR(1) command. This environment variable is used by \fBexstr\fR(1),
+\fBgettxt\fR(1), \fBsrchtxt\fR(1), \fBgettxt\fR(3C), and \fBgettext\fR(3C).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBLC_MONETARY\fR\fR
+.ad
+.sp .6
+.RS 4n
+This category specifies the monetary symbols and delimiters used for a
+particular locale. The information corresponding to this category is stored in
+a database created by the \fBlocaledef\fR(1) command. This environment variable
+is used by \fBlocaleconv\fR(3C).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBLC_NUMERIC\fR\fR
+.ad
+.sp .6
+.RS 4n
+This category specifies the decimal and thousands delimiters. The information
+corresponding to this category is stored in a database created by the
+\fBlocaledef()\fR command. The default \fBC\fR locale corresponds to \fB"."\fR
+as the decimal delimiter and no thousands delimiter. This environment variable
+is used by \fBlocaleconv\fR(3C), \fBprintf\fR(3C), and \fBstrtod\fR(3C).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBLC_TIME\fR\fR
+.ad
+.sp .6
+.RS 4n
+This category specifies date and time formats. The information corresponding to
+this category is stored in a database specified in \fBlocaledef()\fR. The
+default \fBC\fR locale corresponds to U.S. date and time formats. This
+environment variable is used by many commands and functions; for example:
+\fBat\fR(1), \fBcalendar\fR(1), \fBdate\fR(1), \fBstrftime\fR(3C), and
+\fBgetdate\fR(3C).
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBMSGVERB\fR\fR
+.ad
+.sp .6
+.RS 4n
+Controls which standard format message components \fBfmtmsg\fR selects when
+messages are displayed to \fBstderr\fR; see \fBfmtmsg\fR(1) and
+\fBfmtmsg\fR(3C).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBNETPATH\fR\fR
+.ad
+.sp .6
+.RS 4n
+A colon-separated list of network identifiers. A network identifier is a
+character string used by the Network Selection component of the system to
+provide application-specific default network search paths. A network identifier
+must consist of non-null characters and must have a length of at least 1. No
+maximum length is specified. Network identifiers are normally chosen by the
+system administrator. A network identifier is also the first field in any
+\fB/etc/netconfig\fR file entry. \fBNETPATH\fR thus provides a link into the
+\fB/etc/netconfig\fR file and the information about a network contained in that
+network's entry. \fB/etc/netconfig\fR is maintained by the system
+administrator. The library routines described in \fBgetnetpath\fR(3NSL) access
+the \fBNETPATH\fR environment variable.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBNLSPATH\fR\fR
+.ad
+.sp .6
+.RS 4n
+Contains a sequence of templates which \fBcatopen\fR(3C) and \fBgettext\fR(3C)
+use when attempting to locate message catalogs. Each template consists of an
+optional prefix, one or more substitution fields, a filename and an optional
+suffix. For example:
+.sp
+.in +2
+.nf
+NLSPATH="/system/nlslib/%N.cat"
+.fi
+.in -2
+.sp
+
+defines that \fBcatopen()\fR should look for all message catalogs in the
+directory \fB/system/nlslib\fR, where the catalog name should be constructed
+from the \fIname\fR parameter passed to \fBcatopen\fR(\|), \fB%N\fR, with the
+suffix \fB\&.cat\fR.
+.sp
+Substitution fields consist of a \fB%\fR symbol, followed by a single-letter
+keyword. The following keywords are currently defined:
+.sp
+.ne 2
+.na
+\fB%N\fR
+.ad
+.sp .6
+.RS 4n
+The value of the \fIname\fR parameter passed to \fBcatopen()\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB%L\fR
+.ad
+.sp .6
+.RS 4n
+The value of \fBLANG\fR or \fBLC_MESSAGES\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB%l\fR
+.ad
+.sp .6
+.RS 4n
+The language element from \fBLANG\fR or \fBLC_MESSAGES\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB%t\fR
+.ad
+.sp .6
+.RS 4n
+The territory element from \fBLANG\fR or \fBLC_MESSAGES\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB%c\fR
+.ad
+.sp .6
+.RS 4n
+The codeset element from \fBLANG\fR or \fBLC_MESSAGES\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB%%\fR
+.ad
+.sp .6
+.RS 4n
+A single \fB%\fR character.
+.RE
+
+An empty string is substituted if the specified value is not currently defined.
+The separators "\fB_\fR" and "\fB\&.\fR" are not included in \fB%t\fR and
+\fB%c\fR substitutions.
+.sp
+Templates defined in \fBNLSPATH\fR are separated by colons (\fB:\fR). A leading
+colon or two adjacent colons (\fB::\fR) is equivalent to specifying \fB%N\fR.
+For example:
+.sp
+.in +2
+.nf
+NLSPATH=":%N.cat:/nlslib/%L/%N.cat"
+.fi
+.in -2
+.sp
+
+indicates to \fBcatopen()\fR that it should look for the requested message
+catalog in \fIname\fR, \fIname\fR\fB\&.cat\fR and
+\fB/nlslib/$LANG/\fR\fIname\fR.cat. For \fBgettext()\fR, \fB%N\fR automatically
+maps to "messages".
+.sp
+If \fBNLSPATH\fR is unset or \fINULL\fR, \fBcatopen()\fR and \fBgettext()\fR
+call \fBsetlocale\fR(3C), which checks \fBLANG\fR and the \fBLC_*\fR
+variables to locate the message catalogs.
+.sp
+\fBNLSPATH\fR will normally be set up on a system wide basis (in
+\fB/etc/profile\fR) and thus makes the location and naming conventions
+associated with message catalogs transparent to both programs and users.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPATH\fR\fR
+.ad
+.sp .6
+.RS 4n
+The sequence of directory prefixes that \fBsh\fR(1), \fBtime\fR(1),
+\fBnice\fR(1), \fBnohup\fR(1), and other utilities apply in searching for a
+file known by an incomplete path name. The prefixes are separated by colons
+(\fB:\fR). \fBlogin\fR(1) sets \fBPATH=/usr/bin\fR. For more detail, see
+\fBsh\fR(1).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSEV_LEVEL\fR\fR
+.ad
+.sp .6
+.RS 4n
+Define severity levels and associate and print strings with them in standard
+format error messages; see \fBaddseverity\fR(3C), \fBfmtmsg\fR(1), and
+\fBfmtmsg\fR(3C).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBTERM\fR\fR
+.ad
+.sp .6
+.RS 4n
+The kind of terminal for which output is to be prepared. This information is
+used by commands, such as \fBvi\fR(1), which may exploit special capabilities
+of that terminal.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBTZ\fR\fR
+.ad
+.sp .6
+.RS 4n
+Timezone information. The contents of this environment variable are used by the
+functions \fBctime\fR(3C), \fBlocaltime\fR(3C), \fBstrftime\fR(3C), and
+\fBmktime\fR(3C) to override the default timezone. The value of \fBTZ\fR has
+one of the two formats (spaces inserted for clarity):
+.sp
+.in +2
+.nf
+:characters
+.fi
+.in -2
+
+or
+.sp
+.in +2
+.nf
+std offset dst offset, rule
+.fi
+.in -2
+
+If \fBTZ\fR is of the first format (that is, if the first character is a colon
+(:)), or if \fBTZ\fR is not of the second format, then \fBTZ\fR designates a
+path to a timezone database file relative to \fB/usr/share/lib/zoneinfo/\fR,
+ignoring a leading colon if one exists.
+.sp
+Otherwise, \fBTZ\fR is of the second form, which when expanded is as follows:
+.sp
+.in +2
+.nf
+\fIstdoffset\fR[\fIdst\fR[\fIoffset\fR][,\fIstart\fR[/\fItime\fR],\fIend\fR[/\fItime\fR]]]
+.fi
+.in -2
+
+.sp
+.ne 2
+.na
+\fB\fIstd\fR and \fIdst\fR\fR
+.ad
+.sp .6
+.RS 4n
+Indicate no less than three, nor more than {\fBTZNAME_MAX\fR}, bytes that are
+the designation for the standard (\fIstd\fR) or the alternative (\fIdst\fR,
+such as Daylight Savings Time) timezone. Only \fIstd\fR is required; if
+\fIdst\fR is missing, then the alternative time does not apply in this
+timezone. Each of these fields can occur in either of two formats, quoted or
+unquoted:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+In the quoted form, the first character is the less-than ('<') character and
+the last character is the greater-than ('>') character. All characters between
+these quoting characters are alphanumeric characters from the portable
+character set in the current locale, the plus-sign ('+') character, or the
+minus-sign ('-') character. The \fIstd\fR and \fIdst\fR fields in this case do
+not include the quoting characters.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+In the unquoted form, all characters in these fields are alphabetic characters
+from the portable character set in the current locale.
+.RE
+The interpretation of these fields is unspecified if either field is less than
+three bytes (except for the case when \fIdst\fR is missing), more than
+{\fBTZNAME_MAX\fR} bytes, or if they contain characters other than those
+specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIoffset\fR\fR
+.ad
+.sp .6
+.RS 4n
+Indicate the value one must add to the local time to arrive at Coordinated
+Universal Time. The offset has the form:
+.sp
+.in +2
+.nf
+\fIhh\fR[:\fImm\fR[:\fIss\fR]]
+.fi
+.in -2
+.sp
+
+The minutes (\fImm\fR) and seconds (\fIss\fR) are optional. The hour (\fIhh\fR)
+is required and can be a single digit. The \fIoffset\fR following \fIstd\fR is
+required. If no \fIoffset\fR follows \fIdst\fR, daylight savings time is
+assumed to be one hour ahead of standard time. One or more digits can be used.
+The value is always interpreted as a decimal number. The hour must be between 0
+and 24, and the minutes (and seconds), if present, must be between 0 and 59.
+Out of range values can cause unpredictable behavior. If preceded by a "-", the
+timezone is east of the Prime Meridian. Otherwise, it is west of the Prime
+Meridian (which can be indicated by an optional preceding "\fI+\fR" sign).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIstart\fR/\fItime\fR,\|\fIend\fR/\fItime\fR\fR
+.ad
+.sp .6
+.RS 4n
+Indicate when to change to and back from daylight savings time, where
+\fIstart/time\fR describes when the change from standard time to daylight
+savings time occurs, and \fIend/time\fR describes when the change back occurs.
+Each \fItime\fR field describes when, in current local time, the change is
+made.
+.sp
+The formats of \fIstart\fR and \fIend\fR are one of the following:
+.sp
+.ne 2
+.na
+\fB\fBJ\fR\fIn\fR\fR
+.ad
+.sp .6
+.RS 4n
+The Julian day \fIn\fR (1 \(<= \fIn\fR \(<= 365). Leap days are not counted.
+That is, in all years, February 28 is day 59 and March 1 is day 60. It is
+impossible to refer to the occasional February 29.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIn\fR\fR
+.ad
+.sp .6
+.RS 4n
+The zero-based Julian day (0 \(<= \fIn\fR \(<= 365). Leap days are counted, and
+it is possible to refer to February 29.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM\fR\fIm.n.d\fR\fR
+.ad
+.sp .6
+.RS 4n
+The \fId\fR^th day, (0 \(<= \fId\fR \(<= 6) of week \fIn\fR of month \fIm\fR of
+the year (1 \(<= \fIn\fR \(<= 5, 1 \(<= \fIm\fR \(<= 12), where week 5 means
+"the last \fId\fR-day in month \fIm\fR" which may occur in either the fourth or
+the fifth week). Week 1 is the first week in which the \fId\fR^th day occurs.
+Day zero is Sunday.
+.RE
+
+Implementation specific defaults are used for \fIstart\fR and \fIend\fR if
+these optional fields are not specified.
+.sp
+The \fItime\fR has the same format as \fIoffset\fR except that no leading sign
+("-" or "+" ) is allowed. If \fItime\fR is not specified, the default value is
+02:00:00.
+.RE
+
+.RE
+
+.SH SEE ALSO
+.LP
+.BR cat (1),
+.BR date (1),
+.BR ed (1),
+.BR fmtmsg (1),
+.BR localedef (1),
+.BR login (1),
+.BR ls (1),
+.BR mkmsgs (1),
+.BR nice (1),
+.BR nohup (1),
+.BR sh (1),
+.BR sort (1),
+.BR time (1),
+.BR vi (1),
+.BR exec (2),
+.BR addseverity (3C),
+.BR catopen (3C),
+.BR ctime (3C),
+.BR ctype (3C),
+.BR fmtmsg (3C),
+.BR getdate (3C),
+.BR gettext (3C),
+.BR gettxt (3C),
+.BR localeconv (3C),
+.BR mblen (3C),
+.BR mktime (3C),
+.BR newlocale (3C),
+.BR printf (3C),
+.BR setlocale (3C),
+.BR strcoll (3C),
+.BR strftime (3C),
+.BR strtod (3C),
+.BR strxfrm (3C),
+.BR uselocale (3C),
+.BR getnetpath (3NSL),
+.BR TIMEZONE (5),
+.BR netconfig (5),
+.BR passwd (5),
+.BR profile (5)
diff --git a/usr/src/man/man7/epoll.7 b/usr/src/man/man7/epoll.7
new file mode 100644
index 0000000000..05df7322dd
--- /dev/null
+++ b/usr/src/man/man7/epoll.7
@@ -0,0 +1,108 @@
+'\" te
+.\" Copyright (c) 2014, Joyent, Inc. All Rights Reserved.
+.\" This file and its contents are supplied under the terms of the
+.\" Common Development and Distribution License ("CDDL"), version 1.0.
+.\" You may only use this file in accordance with the terms of version
+.\" 1.0 of the CDDL.
+.\"
+.\" A full copy of the text of the CDDL should have accompanied this
+.\" source. A copy of the CDDL is also available via the Internet at
+.\" http://www.illumos.org/license/CDDL.
+.TH EPOLL 7 "May 16, 2020"
+.SH NAME
+epoll \- Linux-compatible I/O event notification facility
+.SH SYNOPSIS
+.nf
+#include <sys/epoll.h>
+.fi
+
+.SH DESCRIPTION
+\fBepoll\fR is a facility for efficient event-oriented I/O that has a
+similar model to \fBpoll\fR(2), but does not necessitate rescanning a
+set of file descriptors to wait for an event. \fBepoll\fR is of Linux
+origins, and this facility is designed to be binary-compatible with
+the Linux facility, including the following interfaces:
+
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBepoll_create\fR(3C) creates an \fBepoll\fR instance, returning a file
+descriptor. It contains a size argument which is meaningful only in as
+much as it cannot be 0.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBepoll_create1\fR(3C) also creates an \fBepoll\fR instance, but eliminates
+the meaningless size argument -- replacing it instead with a flags
+argument.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBepoll_ctl\fR(3C) allows file descriptors to be added
+(via \fBEPOLL_CTL_ADD\fR), deleted (via \fBEPOLL_CTL_DEL\fR) or
+modified (via \fBEPOLL_CTL_MOD\fR) with respect to the \fBepoll\fR'd set
+of file descriptors.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBepoll_wait\fR(3C) fetches pending events for file descriptors added
+via \fBepoll_ctl\fR(3C), blocking the caller if no such events are pending.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBepoll_pwait\fR(3C) operates in a similar manner to \fBepoll_wait\fR(3C), but
+allows the caller to specify a signal mask to be set atomically with respect
+to waiting for events.
+.RE
+
+.sp
+.SH NOTES
+The \fBepoll\fR facility is implemented
+for purposes of offering compatibility to and portability of Linux-borne
+applications; native applications should continue to prefer using event ports
+via the \fBport_create\fR(3C),
+\fBport_associate\fR(3C) and \fBport_getn\fR(3C) interfaces.
+In particular, use of \fBepoll\fR in a multithreaded environment is fraught
+with peril; even when using \fBEPOLLONESHOT\fR for one-shot events,
+there are race conditions with respect to \fBclose\fR(2) that are unresolvable.
+(For more details, see the aborted effort in Linux to resolve this via the
+proposed
+\fBEPOLL_CTL_DISABLE\fR operation.)
+The event port facility -- like the BSD kqueue facility that inspired it --
+is designed to deal with such issues via explicit event source dissociation.
+
+While a best effort has been made to mimic the Linux semantics, there
+are some semantics that are too peculiar or ill-conceived to merit
+accommodation. In particular, the Linux \fBepoll\fR facility will -- by
+design -- continue to generate events for closed file descriptors where/when
+the underlying file description remains open. For example, if one were
+to \fBfork\fR(2) and subsequently close an actively \fBepoll\fR'd file
+descriptor in the parent,
+any events generated in the child on the implicitly duplicated file descriptor
+will continue to be delivered to the parent -- despite the fact that the
+parent itself no longer has any notion of the file description!
+This \fBepoll\fR facility refuses to honor
+these semantics; closing the \fBEPOLL_CTL_ADD\fR'd file descriptor
+will always result in no further
+events being generated for that event description.
+
+.SH SEE ALSO
+.BR epoll_create (3C),
+.BR epoll_create1 (3C),
+.BR epoll_ctl (3C),
+.BR epoll_pwait (3C),
+.BR epoll_wait (3C),
+.BR port_associate (3C),
+.BR port_create (3C),
+.BR port_dissociate (3C),
+.BR port_get (3C),
+.BR pselect (3C)
diff --git a/usr/src/man/man7/eqn.7 b/usr/src/man/man7/eqn.7
new file mode 100644
index 0000000000..f2728a6b39
--- /dev/null
+++ b/usr/src/man/man7/eqn.7
@@ -0,0 +1,507 @@
+.\" $Id: eqn.7,v 1.39 2020/01/10 11:55:04 schwarze Exp $
+.\"
+.\" Copyright (c) 2011 Kristaps Dzonsons <kristaps@bsd.lv>
+.\" Copyright (c) 2014 Ingo Schwarze <schwarze@openbsd.org>
+.\"
+.\" Permission to use, copy, modify, and distribute this software for any
+.\" purpose with or without fee is hereby granted, provided that the above
+.\" copyright notice and this permission notice appear in all copies.
+.\"
+.\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+.\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+.\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+.\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+.\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+.\"
+.Dd $Mdocdate: January 10 2020 $
+.Dt EQN 7
+.Os
+.Sh NAME
+.Nm eqn
+.Nd eqn language reference for mandoc
+.Sh DESCRIPTION
+The
+.Nm eqn
+language is an equation-formatting language.
+It is used within
+.Xr mdoc 7
+and
+.Xr man 7
+.Ux
+manual pages.
+It describes the
+.Em structure
+of an equation, not its mathematical meaning.
+This manual describes the
+.Nm
+language accepted by the
+.Xr mandoc 1
+utility, which corresponds to the Second Edition
+.Nm
+specification (see
+.Sx SEE ALSO
+for references).
+.Pp
+An equation starts with an input line containing exactly the characters
+.Sq \&.EQ ,
+may contain multiple input lines, and ends with an input line
+containing exactly the characters
+.Sq \&.EN .
+Equivalently, an equation can be given in the middle of a single
+text input line by surrounding it with the equation delimiters
+defined with the
+.Cm delim
+statement.
+.Pp
+The equation grammar is as follows, where quoted strings are
+case-sensitive literals in the input:
+.Bd -literal -offset indent
+eqn : box | eqn box
+box : text
+ | \(dq{\(dq eqn \(dq}\(dq
+ | \(dqdefine\(dq text text
+ | \(dqndefine\(dq text text
+ | \(dqtdefine\(dq text text
+ | \(dqgfont\(dq text
+ | \(dqgsize\(dq text
+ | \(dqset\(dq text text
+ | \(dqundef\(dq text
+ | \(dqsqrt\(dq box
+ | box pos box
+ | box mark
+ | \(dqmatrix\(dq \(dq{\(dq [col \(dq{\(dq list \(dq}\(dq]* \(dq}\(dq
+ | pile \(dq{\(dq list \(dq}\(dq
+ | font box
+ | \(dqsize\(dq text box
+ | \(dqleft\(dq text eqn [\(dqright\(dq text]
+col : \(dqlcol\(dq | \(dqrcol\(dq | \(dqccol\(dq | \(dqcol\(dq
+text : [^space\e\(dq]+ | \e\(dq.*\e\(dq
+pile : \(dqlpile\(dq | \(dqcpile\(dq | \(dqrpile\(dq | \(dqpile\(dq
+pos : \(dqover\(dq | \(dqsup\(dq | \(dqsub\(dq | \(dqto\(dq | \(dqfrom\(dq
+mark : \(dqdot\(dq | \(dqdotdot\(dq | \(dqhat\(dq | \(dqtilde\(dq | \(dqvec\(dq
+ | \(dqdyad\(dq | \(dqbar\(dq | \(dqunder\(dq
+font : \(dqroman\(dq | \(dqitalic\(dq | \(dqbold\(dq | \(dqfat\(dq
+list : eqn
+ | list \(dqabove\(dq eqn
+space : [\e^~ \et]
+.Ed
+.Pp
+White-space consists of the space, tab, circumflex, and tilde
+characters.
+It is required to delimit tokens consisting of alphabetic characters
+and it is ignored at other places.
+Braces and quotes also delimit tokens.
+If within a quoted string, these space characters are retained.
+Quoted strings are also not scanned for keywords, glyph names,
+and expansion of definitions.
+To print a literal quote character, it can be prepended with a
+backslash or expressed with the \e(dq escape sequence.
+.Pp
+Subequations can be enclosed in braces to pass them as arguments
+to operation keywords, overriding standard operation precedence.
+Braces can be nested.
+To set a brace verbatim, it needs to be enclosed in quotes.
+.Pp
+The following text terms are translated into a rendered glyph, if
+available: alpha, beta, chi, delta, epsilon, eta, gamma, iota, kappa,
+lambda, mu, nu, omega, omicron, phi, pi, psi, rho, sigma, tau, theta,
+upsilon, xi, zeta, DELTA, GAMMA, LAMBDA, OMEGA, PHI, PI, PSI, SIGMA,
+THETA, UPSILON, XI, inter (intersection), union (union), prod (product),
+int (integral), sum (summation), grad (gradient), del (vector
+differential), times (multiply), cdot (center-dot), nothing (zero-width
+space), approx (approximately equals), prime (prime), half (one-half),
+partial (partial differential), inf (infinity), >> (much greater), <<
+(much less), <\- (left arrow), \-> (right arrow), +\- (plus-minus), !=
+(not equal), == (equivalence), <= (less-than-equal), and >=
+(more-than-equal).
+The character escape sequences documented in
+.Xr mandoc_char 7
+can be used, too.
+.Pp
+The following control statements are available:
+.Bl -tag -width Ds
+.It Cm define
+Replace all occurrences of a key with a value.
+Its syntax is as follows:
+.Pp
+.D1 Cm define Ar key cvalc
+.Pp
+The first character of the value string,
+.Ar c ,
+is used as the delimiter for the value
+.Ar val .
+This allows for arbitrary enclosure of terms (not just quotes), such as
+.Pp
+.D1 Cm define Ar foo \(aqbar baz\(aq
+.D1 Cm define Ar foo cbar bazc
+.Pp
+It is an error to have an empty
+.Ar key
+or
+.Ar val .
+Note that a quoted
+.Ar key
+causes errors in some
+.Nm
+implementations and should not be considered portable.
+It is not expanded for replacements.
+Definitions may refer to other definitions; these are evaluated
+recursively when text replacement occurs and not when the definition is
+created.
+.Pp
+Definitions can create arbitrary strings, for example, the following is
+a legal construction.
+.Bd -literal -offset indent
+define foo \(aqdefine\(aq
+foo bar \(aqbaz\(aq
+.Ed
+.Pp
+Self-referencing definitions will raise an error.
+The
+.Cm ndefine
+statement is a synonym for
+.Cm define ,
+while
+.Cm tdefine
+is discarded.
+.It Cm delim
+This statement takes a string argument consisting of two bytes,
+to be used as the opening and closing delimiters for equations
+in the middle of text input lines.
+Conventionally, the dollar sign is used for both delimiters,
+as follows:
+.Bd -literal -offset indent
+\&.EQ
+delim $$
+\&.EN
+An equation like $sin pi = 0$ can now be entered
+in the middle of a text input line.
+.Ed
+.Pp
+The special statement
+.Cm delim off
+temporarily disables previously declared delimiters and
+.Cm delim on
+reenables them.
+.It Cm gfont
+Set the default font of subsequent output.
+Its syntax is as follows:
+.Pp
+.D1 Cm gfont Ar font
+.Pp
+In mandoc, this value is discarded.
+.It Cm gsize
+Set the default size of subsequent output.
+Its syntax is as follows:
+.Pp
+.D1 Cm gsize Oo +|\- Oc Ns Ar size
+.Pp
+The
+.Ar size
+value should be an integer.
+If prepended by a sign,
+the font size is changed relative to the current size.
+.It Cm set
+Set an equation mode.
+In mandoc, both arguments are thrown away.
+Its syntax is as follows:
+.Pp
+.D1 Cm set Ar key val
+.Pp
+The
+.Ar key
+and
+.Ar val
+are not expanded for replacements.
+This statement is a GNU extension.
+.It Cm undef
+Unset a previously-defined key.
+Its syntax is as follows:
+.Pp
+.D1 Cm define Ar key
+.Pp
+Once invoked, the definition for
+.Ar key
+is discarded.
+The
+.Ar key
+is not expanded for replacements.
+This statement is a GNU extension.
+.El
+.Pp
+Operation keywords have the following semantics:
+.Bl -tag -width Ds
+.It Cm above
+See
+.Cm pile .
+.It Cm bar
+Draw a line over the preceding box.
+.It Cm bold
+Set the following box using bold font.
+.It Cm ccol
+Like
+.Cm cpile ,
+but for use in
+.Cm matrix .
+.It Cm cpile
+Like
+.Cm pile ,
+but with slightly increased vertical spacing.
+.It Cm dot
+Set a single dot over the preceding box.
+.It Cm dotdot
+Set two dots (dieresis) over the preceding box.
+.It Cm dyad
+Set a dyad symbol (left-right arrow) over the preceding box.
+.It Cm fat
+A synonym for
+.Cm bold .
+.It Cm font
+Set the second argument using the font specified by the first argument;
+currently not recognized by the
+.Xr mandoc 1
+.Nm
+parser.
+.It Cm from
+Set the following box below the preceding box,
+using a slightly smaller font.
+Used for sums, integrals, limits, and the like.
+.It Cm hat
+Set a hat (circumflex) over the preceding box.
+.It Cm italic
+Set the following box using italic font.
+.It Cm lcol
+Like
+.Cm lpile ,
+but for use in
+.Cm matrix .
+.It Cm left
+Set the first argument as a big left delimiter before the second argument.
+As an optional third argument,
+.Cm right
+can follow.
+In that case, the fourth argument is set as a big right delimiter after
+the second argument.
+.It Cm lpile
+Like
+.Cm cpile ,
+but subequations are left-justified.
+.It Cm matrix
+Followed by a list of columns enclosed in braces.
+All columns need to have the same number of subequations.
+The columns are set as a matrix.
+The difference compared to multiple subsequent
+.Cm pile
+operators is that in a
+.Cm matrix ,
+corresponding subequations in all columns line up horizontally,
+while each
+.Cm pile
+does vertical spacing independently.
+.It Cm over
+Set a fraction.
+The preceding box is the numerator, the following box is the denominator.
+.It Cm pile
+Followed by a list of subequations enclosed in braces,
+the subequations being separated by
+.Cm above
+keywords.
+Sets the subequations one above the other, each of them centered.
+Typically used to represent vectors in coordinate representation.
+.It Cm rcol
+Like
+.Cm rpile ,
+but for use in
+.Cm matrix .
+.It Cm right
+See
+.Cm left ;
+.Cm right
+cannot be used without
+.Cm left .
+To set a big right delimiter without a big left delimiter, the following
+construction can be used:
+.Pp
+.D1 Cm left No \(dq\(dq Ar box Cm right Ar delimiter
+.It Cm roman
+Set the following box using the default font.
+.It Cm rpile
+Like
+.Cm cpile ,
+but subequations are right-justified.
+.It Cm size
+Set the second argument with the font size specified by the first
+argument; currently ignored by
+.Xr mandoc 1 .
+By prepending a plus or minus sign to the first argument,
+the font size can be selected relative to the current size.
+.It Cm sqrt
+Set the square root of the following box.
+.It Cm sub
+Set the following box as a subscript to the preceding box.
+.It Cm sup
+Set the following box as a superscript to the preceding box.
+As a special case, if a
+.Cm sup
+clause immediately follows a
+.Cm sub
+clause as in
+.Pp
+.D1 Ar mainbox Cm sub Ar subbox Cm sup Ar supbox
+.Pp
+both are set with respect to the same
+.Ar mainbox ,
+that is,
+.Ar supbox
+is set above
+.Ar subbox .
+.It Cm tilde
+Set a tilde over the preceding box.
+.It Cm to
+Set the following box above the preceding box,
+using a slightly smaller font.
+Used for sums and integrals and the like.
+As a special case, if a
+.Cm to
+clause immediately follows a
+.Cm from
+clause as in
+.Pp
+.D1 Ar mainbox Cm from Ar frombox Cm to Ar tobox
+.Pp
+both are set below and above the same
+.Ar mainbox .
+.It Cm under
+Underline the preceding box.
+.It Cm vec
+Set a vector symbol (right arrow) over the preceding box.
+.El
+.Pp
+The binary operations
+.Cm from ,
+.Cm to ,
+.Cm sub ,
+and
+.Cm sup
+group to the right, that is,
+.Pp
+.D1 Ar mainbox Cm sup Ar supbox Cm sub Ar subbox
+.Pp
+is the same as
+.Pp
+.D1 Ar mainbox Cm sup Brq Ar supbox Cm sub Ar subbox
+.Pp
+and different from
+.Pp
+.D1 Bro Ar mainbox Cm sup Ar supbox Brc Cm sub Ar subbox .
+.Pp
+By contrast,
+.Cm over
+groups to the left.
+.Pp
+In the following list, earlier operations bind more tightly than
+later operations:
+.Pp
+.Bl -enum -compact
+.It
+.Cm dyad ,
+.Cm vec ,
+.Cm under ,
+.Cm bar ,
+.Cm tilde ,
+.Cm hat ,
+.Cm dot ,
+.Cm dotdot
+.It
+.Cm fat ,
+.Cm roman ,
+.Cm italic ,
+.Cm bold ,
+.Cm size
+.It
+.Cm sub ,
+.Cm sup
+.It
+.Cm sqrt
+.It
+.Cm over
+.It
+.Cm from ,
+.Cm to
+.El
+.Sh COMPATIBILITY
+This section documents the compatibility of mandoc
+.Nm
+and the troff
+.Nm
+implementation (including GNU troff).
+.Pp
+.Bl -dash -compact
+.It
+The text string
+.Sq \e\(dq
+is interpreted as a literal quote in troff.
+In mandoc, this is interpreted as a comment.
+.It
+In troff, The circumflex and tilde white-space symbols map to
+fixed-width spaces.
+In mandoc, these characters are synonyms for the space character.
+.It
+The troff implementation of
+.Nm
+allows for equation alignment with the
+.Cm mark
+and
+.Cm lineup
+tokens.
+mandoc discards these tokens.
+The
+.Cm back Ar n ,
+.Cm fwd Ar n ,
+.Cm up Ar n ,
+and
+.Cm down Ar n
+commands are also ignored.
+.El
+.Sh SEE ALSO
+.Xr mandoc 1 ,
+.Xr man 7 ,
+.Xr mandoc_char 7 ,
+.Xr mandoc_roff 7 ,
+.Xr mdoc 7
+.Rs
+.%A Brian W. Kernighan
+.%A Lorinda L. Cherry
+.%T System for Typesetting Mathematics
+.%J Communications of the ACM
+.%V 18
+.%P pp. 151\(en157
+.%D March, 1975
+.Re
+.Rs
+.%A Brian W. Kernighan
+.%A Lorinda L. Cherry
+.%T Typesetting Mathematics, User's Guide
+.%D 1976
+.Re
+.Rs
+.%A Brian W. Kernighan
+.%A Lorinda L. Cherry
+.%T Typesetting Mathematics, User's Guide (Second Edition)
+.%D 1978
+.Re
+.Sh HISTORY
+The eqn utility, a preprocessor for troff, was originally written by
+Brian W. Kernighan and Lorinda L. Cherry in 1975.
+The GNU reimplementation of eqn, part of the GNU troff package, was
+released in 1989 by James Clark.
+The eqn component of
+.Xr mandoc 1
+was added in 2011.
+.Sh AUTHORS
+This
+.Nm
+reference was written by
+.An Kristaps Dzonsons Aq Mt kristaps@bsd.lv .
diff --git a/usr/src/man/man7/eqnchar.7 b/usr/src/man/man7/eqnchar.7
new file mode 100644
index 0000000000..592115f5df
--- /dev/null
+++ b/usr/src/man/man7/eqnchar.7
@@ -0,0 +1,42 @@
+'\" te
+.\" Copyright (C) 2002, Sun Microsystems, Inc.
+.\" All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH EQNCHAR 7 "Jul 12, 2002"
+.SH NAME
+eqnchar \- special character definitions for eqn
+.SH SYNOPSIS
+.LP
+.nf
+eqn /usr/share/lib/pub/eqnchar \fIfilename\fR | troff \fIoptions\fR
+.fi
+
+.LP
+.nf
+neqn /usr/share/lib/pub/eqnchar \fIfilename\fR | troff \fIoptions\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBeqnchar\fR command contains \fBnroff\fR(1) and \fBtroff\fR(1) character
+definitions for constructing characters that are not available on the Graphic
+Systems typesetter. These definitions are primarily intended for use with
+\fBeqn\fR(1) and \fBneqn\fR(1). It contains definitions for the characters
+listed in the following table.
+.sp
+To view the special characters, see the online man page on docs.sun.com or a
+print copy.
+.SH FILES
+.sp
+.LP
+\fB/usr/share/lib/pub/eqnchar\fR
+.SH SEE ALSO
+.sp
+.LP
+.BR eqn (1),
+.BR nroff (1),
+.BR troff (1),
+.BR attributes (7)
diff --git a/usr/src/man/man7/eventfd.7 b/usr/src/man/man7/eventfd.7
new file mode 100644
index 0000000000..18945d6df0
--- /dev/null
+++ b/usr/src/man/man7/eventfd.7
@@ -0,0 +1,32 @@
+.\"
+.\" This file and its contents are supplied under the terms of the
+.\" Common Development and Distribution License ("CDDL"), version 1.0.
+.\" You may only use this file in accordance with the terms of version
+.\" 1.0 of the CDDL.
+.\"
+.\" A full copy of the text of the CDDL should have accompanied this
+.\" source. A copy of the CDDL is also available via the Internet at
+.\" http://www.illumos.org/license/CDDL.
+.\"
+.\"
+.\" Copyright (c) 2014, Joyent, Inc. All Rights Reserved.
+.\"
+.Dd Dec 3, 2014
+.Dt EVENTFD 7
+.Os
+.Sh NAME
+.Nm eventfd
+.Nd Linux-compatible user event notification facility
+.Sh SYNOPSIS
+.In sys/eventfd.h
+.Sh DESCRIPTION
+.Nm
+is a Linux-borne facility for sending and receiving user
+events via a file descriptor.
+While the facility itself is somewhat dubious (it can be mimicked in an entirely
+portable way with a pipe), it is small and straightforward and this
+implementation is entirely compatible with its Linux antecedent; see
+.Xr eventfd 3C
+for details.
+.Sh SEE ALSO
+.Xr eventfd 3C
diff --git a/usr/src/man/man7/extendedFILE.7 b/usr/src/man/man7/extendedFILE.7
new file mode 100644
index 0000000000..7f63a34cf4
--- /dev/null
+++ b/usr/src/man/man7/extendedFILE.7
@@ -0,0 +1,194 @@
+'\" te
+.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH EXTENDEDFILE 7 "Apr 18, 2006"
+.SH NAME
+extendedFILE \- enable extended FILE facility usage
+.SH SYNOPSIS
+.LP
+.nf
+$ ulimit \fB-n\fR \fIN_file_descriptors\fR
+$ LD_PRELOAD_32=/usr/lib/extendedFILE.so.1 \fIapplication\fR [\fIarg\fR...]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBextendedFILE.so.1\fR is not a library but an enabler of the extended
+FILE facility.
+.sp
+.LP
+The extended FILE facility allows 32-bit processes to use any valid file
+descriptor with the standard I/O (see \fBstdio\fR(3C)) C library functions.
+Historically, 32-bit applications have been limited to using the first 256
+numerical file descriptors for use with standard I/O streams. By using the
+extended FILE facility this limitation is lifted. Any valid file descriptor can
+be used with standard I/O. See the NOTES section of
+\fBenable_extended_FILE_stdio\fR(3C).
+.sp
+.LP
+The extended FILE facility is enabled from the shell level before an
+application is launched. The file descriptor limit must also be raised. The
+syntax for raising the file descriptor limit is
+.sp
+.in +2
+.nf
+$ ulimit -n \fImax_file_descriptors\fR
+$ LD_PRELOAD_32=/usr/lib/extendedFILE.so.1 \fIapplication\fR [\fIarg\fR...]
+.fi
+.in -2
+
+.sp
+.LP
+where \fImax_file_descriptors\fR is the maximum number of file descriptors
+desired. See \fBlimit\fR(1). The maximum value is the same as the maximum value
+for \fBopen\fR(2).
+.SH ENVIRONMENT VARIABLES
+.sp
+.LP
+The following environment variables control the behavior of the extended FILE
+facility.
+.sp
+.ne 2
+.na
+\fB\fB_STDIO_BADFD\fR\fR
+.ad
+.RS 23n
+This variable takes an integer representing the lowest file descriptor, which
+will be made unallocatable. This action provides a protection mechanism so that
+applications that abuse interfaces do not experience silent data corruption.
+The value must be between 3 and 255 inclusive.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB_STDIO_BADFD_SIGNAL\fR\fR
+.ad
+.RS 23n
+This variable takes an integer or string representing any valid signal. See
+\fBsignal.h\fR(3HEAD) for valid values or strings. This environment variable
+causes the specified signal to be sent to the application if certain
+exceptional cases are detected during the use of this facility. The default
+signal is \fBSIGABRT\fR.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRLimit the number of file descriptors and FILE standard I/O
+structures.
+.sp
+.LP
+The following example limits the number of file descriptors and FILE standard
+I/O structures to 1000.
+
+.sp
+.in +2
+.nf
+$ ulimit -n 1000
+$ LD_PRELOAD_32=/usr/lib/extendedFILE.so.1 application [arg...]
+.fi
+.in -2
+
+.LP
+\fBExample 2 \fREnable the extended FILE facility.
+.sp
+.LP
+The following example enables the extended FILE facility. See
+\fBenable_extended_FILE_stdio\fR(3C) for more examples.
+
+.sp
+.in +2
+.nf
+$ ulimit -n 1000
+$ _STDIO_BADFD=100 _STDIO_BADFD_SIGNAL=SIGABRT \e
+ LD_PRELOAD_32=/usr/lib/extendedFILE.so.1 \e
+ application [arg ...]
+.fi
+.in -2
+
+.LP
+\fBExample 3 \fRSet up the extended FILE environment and start the application.
+.sp
+.LP
+The following shell script first sets up the proper extended FILE environment
+and then starts the application:
+
+.sp
+.in +2
+.nf
+#!/bin/sh
+if [ $# = 0 ]; then
+ echo "usage: $0 application [arguments...]"
+ exit 1
+fi
+ulimit -n 1000
+# _STDIO_BADFD=196; export _STDIO_BADFD
+# _STDIO_BADFD_SIGNAL=SIGABRT; export _STDIO_BADFD_SIGNAL
+LD_PRELOAD_32=/usr/lib/extendedFILE.so.1; export LD_PRELOAD_32
+"$@"
+.fi
+.in -2
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/extendedFILE.so.1\fR\fR
+.ad
+.RS 30n
+enabling library
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Stable
+_
+MT-Level Safe
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR limit (1),
+.BR open (2),
+.BR enable_extended_FILE_stdio (3C),
+.BR fdopen (3C),
+.BR fopen (3C),
+.BR popen (3C),
+.BR stdio (3C),
+.BR signal.h (3HEAD),
+.BR attributes (7)
+.SH WARNINGS
+.sp
+.LP
+The following displayed message
+.sp
+.in +2
+.nf
+Application violated extended FILE safety mechanism.
+Please read the man page for extendedFILE.
+Aborting
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+is an indication that your application is modifying the internal file
+descriptor field of the \fBFILE\fR structure from standard I/O. Continued use
+of this extended FILE facility could harm your data. Do not use the extended
+FILE facility with your application.
diff --git a/usr/src/man/man7/filesystem.7 b/usr/src/man/man7/filesystem.7
new file mode 100644
index 0000000000..958e62dd10
--- /dev/null
+++ b/usr/src/man/man7/filesystem.7
@@ -0,0 +1,2982 @@
+.\"
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.\"
+.\"
+.\" Copyright 1989 AT&T
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 2016 Nexenta Systems, Inc.
+.\" Copyright 2017 Peter Tribble
+.\"
+.TH FILESYSTEM 7 "Apr 15, 2020"
+.SH NAME
+filesystem \- File system organization
+.SH SYNOPSIS
+.nf
+/
+.fi
+
+.LP
+.nf
+/usr
+.fi
+
+.SH DESCRIPTION
+The file system tree is organized for administrative convenience. Distinct
+areas within the file system tree are provided for files that are private to
+one machine, files that can be shared by multiple machines of a common
+platform, files that can be shared by all machines, and home directories. This
+organization allows sharable files to be stored on one machine but accessed by
+many machines using a remote file access mechanism such as \fBNFS\fR. Grouping
+together similar files makes the file system tree easier to upgrade and manage.
+.sp
+.LP
+The file system tree consists of a root file system and a collection of
+mountable file systems. The \fBmount\fR(2) program attaches mountable file
+systems to the file system tree at mount points (directory entries) in the root
+file system or other previously mounted file systems. Two file systems, \fB/\fR
+(the root) and \fB/usr\fR, must be mounted and \fB/var\fR must be accessible to
+have a functional system. The root file system is mounted automatically by the
+kernel at boot time; the \fB/usr\fR file system is mounted by the system
+start-up script, which is run as part of the booting process. \fB/var\fR can be
+mounted as its own file system or be part of \fB/usr\fR, as it is by default.
+.sp
+.LP
+Certain locations, noted below, are approved installation locations for bundled
+Foundation Solaris software. In some cases, the approved locations for bundled
+software are also approved locations for add-on system software or for
+applications. The following descriptions make clear where the two locations
+differ. For example, \fB/etc\fR is the installation location for
+platform-dependent configuration files that are bundled with Solaris software.
+The analogous location for applications is \fB/etc/opt/\fR\fIpackagename\fR.
+.sp
+.LP
+In the following descriptions, \fIsubsystem\fR is a category of application or
+system software, such as a window system (\fBdt\fR) or a language
+(\fBjava1.2\fR)
+.sp
+.LP
+The following descriptions make use of the terms \fBplatform\fR,
+\fBplatform-dependent\fR, \fBplatform-independent\fR, and
+\fBplatform-specific\fR. Platform refers to a machines Instruction Set
+Architecture or processor type, such as is returned by \fBuname\fR \fB-i\fR.
+\fBPlatform-dependent\fR refers to a file that is installed on all platforms
+and whose contents vary depending on the platform. Like a platform-dependent
+file, a \fBplatform-independent\fR file is installed on all platforms. However,
+the contents of the latter type remains the same on all platforms. An example
+of a platform-dependent file is compiled, executable program. An example of a
+platform-independent file is a standard configuration file, such as
+\fB/etc/hosts\fR. Unlike a platform-dependent or a platform-independent file,
+the \fBplatform-specific\fR file is installed only on a subset of supported
+platforms. Most platform-specific files are gathered under \fB/platform\fR and
+\fB/usr/platform\fR.
+.SS "Root File System"
+The root file system contains files that are unique to each machine. It
+contains the following directories:
+.sp
+.ne 2
+.na
+\fB\fB/\fR\fR
+.ad
+.sp .6
+.RS 4n
+Root of the overall file system name space.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev\fR\fR
+.ad
+.sp .6
+.RS 4n
+The device name file system. See \fBdev\fR(4FS).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/cfg\fR\fR
+.ad
+.sp .6
+.RS 4n
+Symbolic links to physical \fBap_ids.\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/cpu\fR\fR
+.ad
+.sp .6
+.RS 4n
+Provides configuration and capability information about the processor type
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/cua\fR\fR
+.ad
+.sp .6
+.RS 4n
+Device files for \fBuucp\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/dsk\fR\fR
+.ad
+.sp .6
+.RS 4n
+Block disk devices.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/dtrace\fR\fR
+.ad
+.sp .6
+.RS 4n
+Pseudo-devices used by the DTrace framework.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/dtrace/provider\fR\fR
+.ad
+.sp .6
+.RS 4n
+Pseudo-device drivers representing instrumentation providers for the DTrace
+framework.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/fbs\fR\fR
+.ad
+.sp .6
+.RS 4n
+Frame buffer device files.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/fd\fR\fR
+.ad
+.sp .6
+.RS 4n
+File descriptors.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/net\fR\fR
+.ad
+.sp .6
+.RS 4n
+Network data-link interface devices.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/printers\fR\fR
+.ad
+.sp .6
+.RS 4n
+USB printer device files.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/pts\fR\fR
+.ad
+.sp .6
+.RS 4n
+Pseudo-terminal devices.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/rdsk\fR\fR
+.ad
+.sp .6
+.RS 4n
+Raw disk devices.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/rmt\fR\fR
+.ad
+.sp .6
+.RS 4n
+Raw tape devices.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/sad\fR\fR
+.ad
+.sp .6
+.RS 4n
+Entry points for the \fBSTREAMS\fR Administrative driver.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/sound\fR\fR
+.ad
+.sp .6
+.RS 4n
+Audio device and audio device control files.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/swap\fR\fR
+.ad
+.sp .6
+.RS 4n
+Default swap device.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/term\fR\fR
+.ad
+.sp .6
+.RS 4n
+Terminal devices.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/devices\fR\fR
+.ad
+.sp .6
+.RS 4n
+The devices file system. See \fBdevfs\fR(4FS).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc\fR\fR
+.ad
+.sp .6
+.RS 4n
+Platform-dependent administrative and configuration files and databases that
+are not shared among systems. \fB/etc\fR may be viewed as the directory that
+defines the machine's identity. An approved installation location for bundled
+Solaris software. The analogous location for add-on system software or for
+applications is \fB/etc/opt/\fR\fIpackagename\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/X11\fR\fR
+.ad
+.sp .6
+.RS 4n
+Xorg Xserver (X11) configuration files.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/acct\fR\fR
+.ad
+.sp .6
+.RS 4n
+Process accounting system configuration information.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/cron.d\fR\fR
+.ad
+.sp .6
+.RS 4n
+Configuration information for \fBcron\fR(8).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/dat\fR\fR
+.ad
+.sp .6
+.RS 4n
+Contains a list of interface adapters supported by uDAPL service providers.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/default\fR\fR
+.ad
+.sp .6
+.RS 4n
+Defaults information for various programs.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/devices\fR\fR
+.ad
+.sp .6
+.RS 4n
+Contains device-related data.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/dfs\fR\fR
+.ad
+.sp .6
+.RS 4n
+Configuration information for shared file systems.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/dhcp\fR\fR
+.ad
+.sp .6
+.RS 4n
+Dynamic Host Configuration Protocol (\fBDHCP\fR) configuration files.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/fm\fR\fR
+.ad
+.sp .6
+.RS 4n
+Fault manager configuration files. For more information, see \fBfmd\fR(8).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/fonts\fR\fR
+.ad
+.sp .6
+.RS 4n
+Font configuration information.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/fs\fR\fR
+.ad
+.sp .6
+.RS 4n
+Binaries organized by file system types for operations required before
+\fB/usr\fR is mounted.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/ftpd\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBftpd\fR configuration files.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/gss\fR\fR
+.ad
+.sp .6
+.RS 4n
+Generic Security Service (\fBGSS\fR) Application Program Interface
+configuration files.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/inet\fR\fR
+.ad
+.sp .6
+.RS 4n
+Configuration files for Internet services.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/init.d\fR\fR
+.ad
+.sp .6
+.RS 4n
+Shell scripts for transitioning between init states. The service management
+facility, \fBsmf\fR(7) is the preferred mechanism for managing services.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/krb5\fR\fR
+.ad
+.sp .6
+.RS 4n
+Kerberos configuration files.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/lib\fR\fR
+.ad
+.sp .6
+.RS 4n
+Shared libraries needed during booting.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/llc2\fR\fR
+.ad
+.sp .6
+.RS 4n
+Logical link control (\fBllc2\fR) driver configuration files.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/lp\fR\fR
+.ad
+.sp .6
+.RS 4n
+Configuration information for the printer subsystem.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/mail\fR\fR
+.ad
+.sp .6
+.RS 4n
+Mail subsystem configuration.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/nca\fR\fR
+.ad
+.sp .6
+.RS 4n
+Solaris Network Cache and Accelerator (\fBNCA\fR) configuration files.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/net\fR\fR
+.ad
+.sp .6
+.RS 4n
+Configuration information for transport independent network services.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/nfs\fR\fR
+.ad
+.sp .6
+.RS 4n
+NFS server logging configuration file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/opt\fR\fR
+.ad
+.sp .6
+.RS 4n
+Configuration information for optional packages.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/ppp\fR\fR
+.ad
+.sp .6
+.RS 4n
+Solaris \fBPPP\fR configuration files.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/rc0.d\fR\fR
+.ad
+.sp .6
+.RS 4n
+Scripts for entering or leaving run level 0. See \fBinit\fR(8).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/rc1.d\fR\fR
+.ad
+.sp .6
+.RS 4n
+Scripts for entering or leaving run level 1. See \fBinit\fR(8).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/rc2.d\fR\fR
+.ad
+.sp .6
+.RS 4n
+Scripts for entering or leaving run level 2. See \fBinit\fR(8).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/rc3.d\fR\fR
+.ad
+.sp .6
+.RS 4n
+Scripts for entering or leaving run level 3. See \fBinit\fR(8).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/rcS.d\fR\fR
+.ad
+.sp .6
+.RS 4n
+Scripts for bringing the system up in single user mode.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/rcm\fR\fR
+.ad
+.sp .6
+.RS 4n
+Directory for reconfiguration manager (RCM) custom scripts.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/saf\fR\fR
+.ad
+.sp .6
+.RS 4n
+Service Access Facility files.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/sasl\fR\fR
+.ad
+.sp .6
+.RS 4n
+Simple Authentication and Security Layer (SASL) server configuration files.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/security\fR\fR
+.ad
+.sp .6
+.RS 4n
+Solaris-delivered security configuration files (Audit, RBAC, crypto, Trusted
+Extensions).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/skel\fR\fR
+.ad
+.sp .6
+.RS 4n
+Default profile scripts for new user accounts. See \fBuseradd\fR(8).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/sound\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sound Events configuration files.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/ssh\fR\fR
+.ad
+.sp .6
+.RS 4n
+Secure Shell configuration files. See \fBssh\fR(1)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/svc\fR\fR
+.ad
+.sp .6
+.RS 4n
+SMF service repository.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/sysevent\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBsyseventd\fR configuration files.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/\fIsubsystem\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Platform-dependent \fIsubsystem\fR configuration files that are not shared
+among systems. An approved installation location for bundled Solaris software.
+The analogous location for add-on system software or for applications is
+\fB/etc/opt/\fR\fIpackagename\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/tm\fR\fR
+.ad
+.sp .6
+.RS 4n
+Trademark files; contents displayed at boot time.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/usb\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBUSB\fR configuration information.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/uucp\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBUUCP\fR configuration information. See \fBuucp\fR(1C).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/xml\fR\fR
+.ad
+.sp .6
+.RS 4n
+Extensible Markup Language (XML) catalog.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/zfs\fR\fR
+.ad
+.sp .6
+.RS 4n
+Contains the zfs state file, \fBzpool.cache\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/zones\fR\fR
+.ad
+.sp .6
+.RS 4n
+Solaris Zones configuration files.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/export\fR\fR
+.ad
+.sp .6
+.RS 4n
+Default root of the shared file system tree.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/home\fR\fR
+.ad
+.sp .6
+.RS 4n
+Default root of a subtree for user directories. Often managed by the
+automounter, see \fBautomount\fR(8) for more details.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel\fR\fR
+.ad
+.sp .6
+.RS 4n
+Subtree of platform-dependent loadable kernel modules required as part of the
+boot process. It includes the generic part of the core kernel that is
+platform-independent, \fB/kernel/genunix\fR. See \fBkernel\fR(8) An approved
+installation location for bundled Solaris software and for add-on system
+software.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv\fR\fR
+.ad
+.sp .6
+.RS 4n
+32-bit x86 device drivers.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/sparcv9\fR\fR
+.ad
+.sp .6
+.RS 4n
+64-bit \fBSPARC\fR device drivers.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64\fR\fR
+.ad
+.sp .6
+.RS 4n
+64-bit device drivers for 64-bit x86 platforms.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/dtrace\fR\fR
+.ad
+.sp .6
+.RS 4n
+Kernel modules representing components in the DTrace framework.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/genunix\fR\fR
+.ad
+.sp .6
+.RS 4n
+Platform-independent kernel.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/amd64/genunix\fR\fR
+.ad
+.sp .6
+.RS 4n
+64-bit, platform-independent kernel.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/\fIsubsystem\fR/amd64\fR\fR
+.ad
+.sp .6
+.RS 4n
+64-bit x86 platform-dependent modules required for boot. An approved
+installation location for bundled Solaris software and for add-on system
+software.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/\fIsubsystem\fR/sparcv9\fR\fR
+.ad
+.sp .6
+.RS 4n
+64-bit \fBSPARC\fR platform-dependent modules required for boot. An approved
+installation location for bundled Solaris software and for add-on system
+software.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/lib/svc/manifest\fR\fR
+.ad
+.sp .6
+.RS 4n
+SMF method scripts. An approved installation location for bundled Solaris
+software. The analogous location for add-on system software or for applications
+is \fB/opt/packagename/lib/svc/manifest\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/mnt\fR\fR
+.ad
+.sp .6
+.RS 4n
+Default temporary mount point for file systems. This is an empty directory on
+which file systems can be temporarily mounted.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/net\fR\fR
+.ad
+.sp .6
+.RS 4n
+Temporary mount point for file systems that are mounted by the automounter.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/opt\fR\fR
+.ad
+.sp .6
+.RS 4n
+Root of a subtree for add-on application packages.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/platform\fR\fR
+.ad
+.sp .6
+.RS 4n
+Subtree of platform-specific objects which need to reside on the root
+filesystem. It contains a series of directories, one per supported platform.
+The semantics of the series of directories is equivalent to \fB/\fR (root).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/platform/\fR\fB`\fR\fBuname\fR \fB-i\fR\fB\fR\fB`\fR\fB/kernel\fR\fR
+.ad
+.sp .6
+.RS 4n
+Platform-specific modules required for boot. These modules have semantics
+equivalent to \fB/kernel\fR. It includes the file \fBunix\fR, the core kernel.
+See \fBkernel\fR(8). An approved installation location for bundled Solaris
+software and for add-on system software.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/platform/\fR\fB`\fR\fBuname\fR \fB-m\fR\fB\fR\fB`\fR\fB/kernel\fR\fR
+.ad
+.sp .6
+.RS 4n
+Hardware class-specific modules required for boot. An approved installation
+location for bundled Solaris software and for add-on system software.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/platform/\fR\fB`\fR\fBuname\fR
+\fB-i\fR\fB\fR\fB`\fR\fB/kernel/\fIsubsystem\fR/amd64\fR\fR
+.ad
+.sp .6
+.RS 4n
+x86 64-bit, platform-dependent modules required for boot. This is an approved
+installation location for bundled Solaris software.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/platform/\fR\fB`\fR\fBuname\fR
+\fB-i\fR\fB\fR\fB`\fR\fB/kernel/\fIsubsystem\fR/sparcv9\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBSPARC\fR 64-bit platform-specific modules required for boot. An approved
+installation location for bundled Solaris software.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/platform/\fR\fB`\fR\fBuname\fR
+\fB-i\fR\fB\fR\fB`\fR\fB/kernel/sparcv9/unix\fR\fR
+.ad
+.sp .6
+.RS 4n
+64-bit platform-dependent kernel.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/platform/\fR\fB`\fR\fBuname\fR
+\fB-i\fR\fB\fR\fB`\fR\fB/kernel/unix\fR\fR
+.ad
+.sp .6
+.RS 4n
+32-bit platform-dependent kernel on i86 and a symlink to \fBsparcv9/unix\fR on
+SPARC.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/platform/\fR\fB`\fR\fBuname\fR \fB-i\fR\fB\fR\fB`\fR\fB/lib\fR\fR
+.ad
+.sp .6
+.RS 4n
+Platform-specific shared objects required for boot. Semantics are equivalent to
+\fB/lib\fR. An approved installation location for bundled Solaris software and
+for add-on system software.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/platform/\fR\fB`\fR\fBuname\fR \fB-i\fR\fB\fR\fB`\fR\fB/sbin\fR\fR
+.ad
+.sp .6
+.RS 4n
+Platform-specific administrative utilities required for boot. Semantics are
+equivalent to \fB/sbin\fR. An approved installation location for bundled
+Solaris software and for add-on system software.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/proc\fR\fR
+.ad
+.sp .6
+.RS 4n
+Root of a subtree for the process file system. See \fBproc\fR(5).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/sbin\fR\fR
+.ad
+.sp .6
+.RS 4n
+Essential executables used in the booting process and in manual system
+recovery. The full complement of utilities is available only after \fB/usr\fR
+is mounted. \fB/sbin\fR is an approved installation location for bundled
+Solaris software.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/system\fR\fR
+.ad
+.sp .6
+.RS 4n
+Mount point for the contract (CTFS) and object (OBJFS) file systems. See
+\fBctfs\fR(4FS) and \fBobjfs\fR(4FS).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/tmp\fR\fR
+.ad
+.sp .6
+.RS 4n
+Temporary files. Usually mounted as a memory based file system. See
+\fBtmpfs\fR(4FS).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr\fR\fR
+.ad
+.sp .6
+.RS 4n
+Mount point for the \fB/usr\fR file system. See description of \fB/usr\fR file
+system, below.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var\fR\fR
+.ad
+.sp .6
+.RS 4n
+Root of a subtree for varying files. Varying files are files that are unique to
+a machine but that can grow to an arbitrary (that is, variable) size. An
+example is a log file. An approved installation location for bundled Solaris
+software. The analogous location for add-on system software or for applications
+is \fB/var/opt/\fR\fIpackagename\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/adm\fR\fR
+.ad
+.sp .6
+.RS 4n
+System logging and accounting files.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/audit\fR\fR
+.ad
+.sp .6
+.RS 4n
+Default location for Audit log files.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/cores\fR\fR
+.ad
+.sp .6
+.RS 4n
+Directory provided for global core files storage. See \fBcoreadm\fR(8).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/crash\fR\fR
+.ad
+.sp .6
+.RS 4n
+Default depository for kernel crash dumps. See \fBdumpadm\fR(8).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/cron\fR\fR
+.ad
+.sp .6
+.RS 4n
+Log files for \fBcron\fR(8).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/fm\fR\fR
+.ad
+.sp .6
+.RS 4n
+Fault manager state files. For more information, see \fBfmd\fR(8).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/ftp\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBFTP\fR server directory.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/inet\fR\fR
+.ad
+.sp .6
+.RS 4n
+IPv6 router state files.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/krb5\fR\fR
+.ad
+.sp .6
+.RS 4n
+Database and log files for Kerberos.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/ld\fR\fR
+.ad
+.sp .6
+.RS 4n
+Configuration files for runtime linker. See \fBcrle\fR(1).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/ldap\fR\fR
+.ad
+.sp .6
+.RS 4n
+LDAP client configuration files.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/lib\fR\fR
+.ad
+.sp .6
+.RS 4n
+Directory for variable state information.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/log\fR\fR
+.ad
+.sp .6
+.RS 4n
+System log files.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/lp\fR\fR
+.ad
+.sp .6
+.RS 4n
+Line printer subsystem logging information.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/mail\fR\fR
+.ad
+.sp .6
+.RS 4n
+Directory where users' mail is kept.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/news\fR\fR
+.ad
+.sp .6
+.RS 4n
+Community service messages. This is not the same as USENET-style news.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/nfs\fR\fR
+.ad
+.sp .6
+.RS 4n
+NFS server log files.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/ntp\fR\fR
+.ad
+.sp .6
+.RS 4n
+Network Time Protocol (\fBNTP\fR) server state directory.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/opt\fR\fR
+.ad
+.sp .6
+.RS 4n
+Root of a subtree for varying files associated with optional software packages.
+An approved installation location for add-on system software and applications.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/pkg\fR\fR
+.ad
+.sp .6
+.RS 4n
+Data associated with the Image Packaging System.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/preserve\fR\fR
+.ad
+.sp .6
+.RS 4n
+Backup files for \fBvi\fR(1) and \fBex\fR(1).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/run\fR\fR
+.ad
+.sp .6
+.RS 4n
+Temporary files which are not needed across reboots. Only root may modify the
+contents of this directory.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/sadm\fR\fR
+.ad
+.sp .6
+.RS 4n
+Data associated with legacy SVR4 package management utilities.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/saf\fR\fR
+.ad
+.sp .6
+.RS 4n
+Service access facility logging and accounting files.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/spool\fR\fR
+.ad
+.sp .6
+.RS 4n
+Contains directories for files used in printer spooling, mail delivery,
+\fBcron\fR(8), \fBat\fR(1), and so forth.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/spool/clientmqueue\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBsendmail\fR(8) client files.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/spool/cron\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBcron\fR(8) and \fBat\fR(1) spooling files.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/spool/locks\fR\fR
+.ad
+.sp .6
+.RS 4n
+Spooling lock files.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/spool/lp\fR\fR
+.ad
+.sp .6
+.RS 4n
+Line printer spool files. See \fBlp\fR(1).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/spool/mqueue\fR\fR
+.ad
+.sp .6
+.RS 4n
+Mail queued for delivery.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/spool/pkg\fR\fR
+.ad
+.sp .6
+.RS 4n
+Spooled packages.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/spool/print\fR\fR
+.ad
+.sp .6
+.RS 4n
+LP print service client-side request staging area.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/spool/uucp\fR\fR
+.ad
+.sp .6
+.RS 4n
+Queued \fBuucp\fR(1C) jobs.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/spool/uucppublic\fR\fR
+.ad
+.sp .6
+.RS 4n
+Files deposited by \fBuucp\fR(1C).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/statmon\fR\fR
+.ad
+.sp .6
+.RS 4n
+Network status monitor files.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/svc/log\fR\fR
+.ad
+.sp .6
+.RS 4n
+SMF log files.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/svc/manifest\fR\fR
+.ad
+.sp .6
+.RS 4n
+SMF service manifests. An approved installation location for bundled, add-on
+system software and applications.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/svc/manifest/site\fR\fR
+.ad
+.sp .6
+.RS 4n
+Site-local SMF service manifests.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/tmp\fR\fR
+.ad
+.sp .6
+.RS 4n
+Files that vary in size or presence during normal system operations. This
+directory is \fBnot\fR cleared during the boot operation. An approved
+installation location for bundled Solaris software and for add-on system
+software and applications.
+.sp
+It is possible to change the default behavior for \fB/var/tmp\fR to clear all
+of the files except editor temporary files by setting the \fBclean_vartmp\fR
+property value of the \fBrmtmpfiles\fR service. This is done with the following
+commands:
+.sp
+.in +2
+.nf
+# \fBsvccfg -s svc:/system/rmtmpfiles setprop \e\fR
+ \fBoptions/clean_vartmp = "true"\fR
+# \fBsvcadm refresh svc:/system/rmtmpfiles:default\fR
+.fi
+.in -2
+.sp
+
+The \fBsolaris.smf.value.rmtmpfiles\fR authorization is required to modify this
+property.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/uucp\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBuucp\fR(1C) log and status files.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/yp\fR\fR
+.ad
+.sp .6
+.RS 4n
+Databases used by \fBNIS\fR and \fBypbind\fR(8).
+.RE
+
+.SS "\fB/usr\fR File System"
+Because it is desirable to keep the root file system small and not volatile, on
+disk-based systems larger file systems are often mounted on \fB/home\fR,
+\fB/opt\fR, \fB/usr\fR, and \fB/var\fR.
+.sp
+.LP
+The file system mounted on \fB/usr\fR contains platform-dependent and
+platform-independent sharable files. The subtree rooted at \fB/usr/share\fR
+contains platform-independent sharable files; the rest of the \fB/usr\fR tree
+contains platform-dependent files. By mounting a common remote file system, a
+group of machines with a common platform may share a single \fB/usr\fR file
+system. A single \fB/usr/share\fR file system can be shared by machines of any
+platform. A machine acting as a file server can share many different \fB/usr\fR
+file systems to support several different architectures and operating system
+releases. Clients usually mount \fB/usr\fR read-only so that they do not
+accidentally change any shared files.
+.sp
+.LP
+The \fB/usr\fR file system contains the following subdirectories:
+.sp
+.ne 2
+.na
+\fB\fB/usr/5bin\fR\fR
+.ad
+.sp .6
+.RS 4n
+Symbolic link to the \fB/usr/bin\fR directory.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/X11\fR\fR
+.ad
+.sp .6
+.RS 4n
+Xorg Xserver (X11) executables and documentation.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/adm\fR\fR
+.ad
+.sp .6
+.RS 4n
+Symbolic link to the \fB/var/adm\fR directory.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/bin\fR\fR
+.ad
+.sp .6
+.RS 4n
+Platform-dependent, user-invoked executables. These are commands users expect
+to be run as part of their normal \fB$PATH\fR. For executables that are
+different on a 64-bit system than on a 32-bit system, a wrapper that selects
+the appropriate executable is placed here. See \fBisaexec\fR(3C). An approved
+installation location for bundled Solaris software. The analogous location for
+add-on system software or for applications is \fB/opt/\fIpackagename\fR/bin\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/bin/amd64\fR\fR
+.ad
+.sp .6
+.RS 4n
+x86 64-bit, platform-dependent, user-invoked executables. This directory should
+not be part of a user's \fB$PATH\fR. A wrapper in \fB/usr/bin\fR should invoke
+the executable in this directory. See \fBisaexec\fR(3C). An approved
+installation location for bundled Solaris software. The analogous location for
+add-on system software or for applications is
+\fB/opt/\fIpackagename\fR/bin/amd64\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/bin/sparcv9\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBSPARC\fR platform-dependent, user-invoked executables. This directory should
+not be part of a user's \fB$PATH\fR. A wrapper in \fB/usr/bin\fR should invoke
+the executable in this directory. See \fBisaexec\fR(3C). An approved
+installation location for bundled Solaris software. The analogous location for
+add-on system software or for applications is
+\fB/opt/\fIpackagename\fR/bin/sparcv9\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/bin/\fIsubsystem\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Platform-dependent user-invoked executables that are associated with
+\fIsubsystem\fR. These are commands users expect to be run as part of their
+normal \fB$PATH\fR. An approved installation location for bundled Solaris
+software. The analogous location for add-on system software or for applications
+is \fB/opt/\fIpackagename\fR/bin\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/\fIsubsystem\fR/bin\fR\fR
+.ad
+.sp .6
+.RS 4n
+Platform-dependent user-invoked executables that are associated with
+\fIsubsystem\fR. These are commands users expect to be run as part of their
+normal \fB$PATH\fR. An approved installation location for bundled Solaris
+software. The analogous location for add-on system software or for applications
+is \fB/opt/\fIpackagename\fR/bin\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/\fIsubsystem\fR/bin/amd64\fR\fR
+.ad
+.sp .6
+.RS 4n
+x86 64-bit, platform-dependent, user-invoked executables. This directory should
+not be part of a user's \fB$PATH\fR. A wrapper in \fB/usr/bin\fR should invoke
+the executable in this directory. See \fBisaexec\fR(3C). An approved
+installation location for bundled Solaris software. The analogous location for
+add-on system software or for applications is
+\fB/opt/\fIpackagename\fR/bin/amd64\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/\fIsubsystem\fR/bin/sparcv9\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBSPARC\fR 64-bit, platform-dependent, user-invoked executables. This
+directory should not be part of a user's \fB$PATH\fR. A wrapper in
+\fB/usr/bin\fR should invoke the executable in this directory. See
+\fBisaexec\fR(3C). An approved installation location for bundled Solaris
+software. The analogous location for add-on system software or for applications
+is \fB/opt/\fIpackagename\fR/bin/sparcv9\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/ccs\fR\fR
+.ad
+.sp .6
+.RS 4n
+Former location of files for the C compilation system, now containing
+compatibility symbolic links to their new locations in \fB/usr/bin\fR
+and \fB/usr/lib\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/demo\fR\fR
+.ad
+.sp .6
+.RS 4n
+Demo programs and data.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/dict\fR\fR
+.ad
+.sp .6
+.RS 4n
+Symbolic link to the \fB/usr/share/lib/dict\fR directory, which contains the
+dictionary file used by the \fBUNIX\fR spell program.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/include\fR\fR
+.ad
+.sp .6
+.RS 4n
+Include headers (for C programs).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/java\fI*\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Directories containing Java programs and libraries.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/jdk\fI*\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Java Platform virtual machine and core class libraries.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/kernel\fR\fR
+.ad
+.sp .6
+.RS 4n
+Subtree of platform-dependent loadable kernel modules, not needed in the root
+filesystem. An approved installation location for bundled Solaris software.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/kvm\fR\fR
+.ad
+.sp .6
+.RS 4n
+A mount point, retained for backward compatibility, that formerly contained
+platform-specific binaries and libraries.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib\fR\fR
+.ad
+.sp .6
+.RS 4n
+Platform-dependent libraries, various databases, commands and daemons not
+invoked directly by a human user. An approved installation location for bundled
+Solaris software. The analogous location for add-on system software or for
+applications is \fB/opt/\fIpackagename\fR/lib\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/32\fR\fR
+.ad
+.sp .6
+.RS 4n
+Symbolic link to \fB/usr/lib\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/64\fR\fR
+.ad
+.sp .6
+.RS 4n
+Symbolic link to the most portable 64-bit Solaris interfaces, on both SPARC and
+x86 platforms.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/acct\fR\fR
+.ad
+.sp .6
+.RS 4n
+Accounting scripts and binaries. See \fBacct\fR(8).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/adb\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBadb\fR accounting scripts.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/amd64\fR\fR
+.ad
+.sp .6
+.RS 4n
+Platform-dependent libraries, various databases, commands and daemons not
+invoked directly by a human user on 64-bit x86. An approved installation
+location for bundled Solaris software. The analogous location for add-on system
+software or for applications is \fB/opt/\fIpackagename\fR/lib/amd64\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/autofs\fR\fR
+.ad
+.sp .6
+.RS 4n
+Contains the \fBautomountd\fR executable.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/cfgadm\fR\fR
+.ad
+.sp .6
+.RS 4n
+Contains \fBcfgadm\fR hardware-specific driver plugins.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/class\fR\fR
+.ad
+.sp .6
+.RS 4n
+Scheduling-class-specific directories containing executables for
+\fBpriocntl\fR(1) and \fBdispadmin\fR(8).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/crypto\fR\fR
+.ad
+.sp .6
+.RS 4n
+Contains the kernel-level cryptographic framework daemon (\fBkcfd\fR).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/devfsadm\fR\fR
+.ad
+.sp .6
+.RS 4n
+Contains \fBdevfsadm\fR, the daemon version of \fBdevfsadm\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/dict\fR\fR
+.ad
+.sp .6
+.RS 4n
+Database files for \fBspell\fR(1).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/dtrace\fR\fR
+.ad
+.sp .6
+.RS 4n
+Contains \fBdtrace\fR D source files.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/fm\fR\fR
+.ad
+.sp .6
+.RS 4n
+Contains \fBfmd\fR, the fault manager daemon and the fault manager library.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/font\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBtroff\fR(1) font description files.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/fs\fR\fR
+.ad
+.sp .6
+.RS 4n
+File system type dependent modules; generally not intended to be invoked
+directly by the user.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/gss\fR\fR
+.ad
+.sp .6
+.RS 4n
+Secure services-related libraries.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/iconv\fR\fR
+.ad
+.sp .6
+.RS 4n
+Conversion tables for \fBiconv\fR(1).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/inet\fR\fR
+.ad
+.sp .6
+.RS 4n
+Contains many network-related daemons and libraries.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/ipf\fR\fR
+.ad
+.sp .6
+.RS 4n
+Contains \fBIPFILTER.LICENCE\fR and \fBipftest\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/ipqosconf\fR\fR
+.ad
+.sp .6
+.RS 4n
+IPQoS configuration utility.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/krb5\fR\fR
+.ad
+.sp .6
+.RS 4n
+Contains the Kerberos database propagation program and libraries.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/ld\fR\fR
+.ad
+.sp .6
+.RS 4n
+Contains the map files for the \fBld\fR link editor.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/ldap\fR\fR
+.ad
+.sp .6
+.RS 4n
+Contains LDAP client configuration utilities.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/libp\fR\fR
+.ad
+.sp .6
+.RS 4n
+Profiled libraries.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/llc2\fR\fR
+.ad
+.sp .6
+.RS 4n
+Contains logical link control (\fBllc2\fR) driver configuration files.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/locale\fR\fR
+.ad
+.sp .6
+.RS 4n
+Localization databases.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/lp\fR\fR
+.ad
+.sp .6
+.RS 4n
+Line printer subsystem databases and back-end executables.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/netsvc\fR\fR
+.ad
+.sp .6
+.RS 4n
+Internet network services.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/nfs\fR\fR
+.ad
+.sp .6
+.RS 4n
+Auxiliary NFS-related programs and daemons.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/picl\fR\fR
+.ad
+.sp .6
+.RS 4n
+Platform Information and Control Library.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/pool\fR\fR
+.ad
+.sp .6
+.RS 4n
+Contains the automated resource pools partitioning daemon (\fBpoold\fR) and
+associated libraries.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/power\fR\fR
+.ad
+.sp .6
+.RS 4n
+Power management daemon, \fBpowerd\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/print\fR\fR
+.ad
+.sp .6
+.RS 4n
+Contains \fBlp\fR conversion scripts and the \fBin.lpd\fR daemon.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/rcap\fR\fR
+.ad
+.sp .6
+.RS 4n
+Resource cap enforcement daemon, \fBrcapd\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/rcm\fR\fR
+.ad
+.sp .6
+.RS 4n
+Contains the Reconfiguration and Coordination Manager daemon (\fBrcm_daemon\fR)
+and RCM scripts.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/refer\fR\fR
+.ad
+.sp .6
+.RS 4n
+Auxiliary programs for \fBrefer\fR(1).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/rmmount\fR\fR
+.ad
+.sp .6
+.RS 4n
+Removable media mounter shared objects.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/sa\fR\fR
+.ad
+.sp .6
+.RS 4n
+Scripts and commands for the system activity report package. See \fBsar\fR(1).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/saf\fR\fR
+.ad
+.sp .6
+.RS 4n
+Auxiliary programs and daemons related to the service access facility.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/sasl\fR\fR
+.ad
+.sp .6
+.RS 4n
+Simple Authentication and Security Layer (SASL) plug-in modules.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/secure\fR\fR
+.ad
+.sp .6
+.RS 4n
+Default trusted libraries.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/security\fR\fR
+.ad
+.sp .6
+.RS 4n
+Solaris security plug-in modules.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/smedia\fR\fR
+.ad
+.sp .6
+.RS 4n
+Removable media device server daemon, \fBrpc.smserverd\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/sparcv9\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBSPARC\fR 64-bit, platform-dependent libraries, various databases, commands
+and daemons not invoked directly by a human user. An approved installation
+location for bundled Solaris software. The analogous location for add-on system
+software or for applications is \fB/opt/\fIpackagename\fR/lib/sparcv9\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/spell\fR\fR
+.ad
+.sp .6
+.RS 4n
+Auxiliary programs and databases for \fBspell\fR(1). This directory is only
+present when the Binary Compatibility Package is installed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/\fIsubsystem\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Platform-dependent libraries, various databases, commands and daemons that are
+associated with \fIsubsystem\fR and that are not invoked directly by a human
+user. An approved installation location for bundled Solaris software. The
+analogous location for add-on system software or for applications is
+\fB/opt/\fIpackagename\fR/lib\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/\fIsubsystem\fR/amd64\fR\fR
+.ad
+.sp .6
+.RS 4n
+x86 64-bit, platform-dependent libraries, various databases, commands and
+daemons that are associated with \fIsubsystem\fR and that are not invoked
+directly by a human user. An approved installation location for bundled Solaris
+software. The analogous location for add-on system software or for applications
+is \fB/opt/\fIpackagename\fR/lib/amd64\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/\fIsubsystem\fR/sparcv9\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBSPARC\fR 64-bit, platform-dependent libraries, various databases, commands
+and daemons that are associated with \fIsubsystem\fR and that are not invoked
+directly by a human user. An approved installation location for bundled Solaris
+software. The analogous location for add-on system software or for applications
+is \fB/opt/\fIpackagename\fR/lib/sparcv9\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/\fIsubsystem\fR/lib\fR\fR
+.ad
+.sp .6
+.RS 4n
+Platform-dependent libraries, various databases, commands and daemons not
+invoked directly by a human user. An approved installation location for bundled
+Solaris software. The analogous location for add-on system software or for
+applications is \fB/opt/\fIpackagename\fR/lib\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/\fIsubsystem\fR/lib/amd64\fR\fR
+.ad
+.sp .6
+.RS 4n
+x86 64-bit, platform-dependent libraries, various databases, commands and
+daemons that are associated with \fIsubsystem\fR and that are not invoked
+directly by a human user. An approved installation location for bundled Solaris
+software. The analogous location for add-on system software or for applications
+is \fB/opt/\fIpackagename\fR/lib/amd64\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/\fIsubsystem\fR/lib/sparcv9\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBSPARC\fR 64-bit, platform-dependent libraries, various databases, commands
+and daemons that are associated with \fIsubsystem\fR and that are not invoked
+directly by a human user. An approved installation location for bundled Solaris
+software. The analogous location for add-on system software or for applications
+is \fB/opt/\fIpackagename\fR/lib/sparcv9\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/sysevent\fR\fR
+.ad
+.sp .6
+.RS 4n
+Contains the system event notification daemon (\fBsyseventd\fR) and the
+\fBsyseventd\fR loadable module (SLM) repository.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/uucp\fR\fR
+.ad
+.sp .6
+.RS 4n
+Auxiliary programs and daemons for \fBuucp\fR(1C).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/zones\fR\fR
+.ad
+.sp .6
+.RS 4n
+Zone administration daemon (\fBzoneadmd\fR).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/local\fR\fR
+.ad
+.sp .6
+.RS 4n
+Not part of the SVR4-based Solaris distribution. The \fB/usr\fR directory is
+exclusively for software bundled with the Solaris operating system. If needed
+for storing machine-local add-on software, create the directory
+\fB/opt/local\fR and make \fB/usr/local\fR a symbolic link to \fB/opt/local\fR.
+The \fB/opt\fR directory or filesystem is for storing add-on software to the
+system.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/mail\fR\fR
+.ad
+.sp .6
+.RS 4n
+Symbolic link to the \fB/var/mail\fR directory.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/man\fR\fR
+.ad
+.sp .6
+.RS 4n
+Symbolic link to the \fB/usr/share/man\fR directory.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/net/servers\fR\fR
+.ad
+.sp .6
+.RS 4n
+Entry points for foreign name service requests relayed using the network
+listener. See \fBlisten\fR(8).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/news\fR\fR
+.ad
+.sp .6
+.RS 4n
+Symbolic link to the \fB/var/news\fR directory.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/old\fR\fR
+.ad
+.sp .6
+.RS 4n
+Programs that are being phased out.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/perl5\fR\fR
+.ad
+.sp .6
+.RS 4n
+Perl 5 programs and documentation
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/platform\fR\fR
+.ad
+.sp .6
+.RS 4n
+Subtree of platform-specific objects which does not need to reside on the root
+filesystem. It contains a series of directories, one per supported platform.
+The semantics of the series of directories is equivalent to \fB/platform\fR,
+except for subdirectories which do not provide utility under one or the other
+(for example, \fB/platform/include\fR is not needed).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/platform/\fR\fB`\fR\fBuname\fR
+\fB-i\fR\fB\fR\fB`\fR\fB/include\fR\fR
+.ad
+.sp .6
+.RS 4n
+Symbolic link to \fB/../\fR\fB`\fR\fBuname\fR
+\fB-i\fR\fB\fR\fB`\fR\fB/include\fR. Platform-specific system (\fBsys\fR,
+\fBvm\fR) header files with semantics equivalent to \fB/usr/include\fR. An
+approved installation location for bundled Solaris software and for add-on
+system software.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/platform/\fR\fB`\fR\fBuname\fR \fB-i\fR\fB\fR\fB`\fR\fB/lib\fR\fR
+.ad
+.sp .6
+.RS 4n
+Platform-specific shared objects with semantics equivalent to \fB/usr/lib\fR.
+An approved installation location for bundled Solaris software and for add-on
+system software.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/platform/\fR\fB`\fR\fBuname\fR
+\fB-i\fR\fB\fR\fB`\fR\fB/lib/\fIsubsystem\fR/amd64\fR\fR
+.ad
+.sp .6
+.RS 4n
+x86 64-bit, platform-specific daemon and shared objects. An approved
+installation location for bundled Solaris software and for add-on system
+software.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/platform/\fR\fB`\fR\fBuname\fR \fB-i\fR\fB\fR\fB`\fR\fB/sbin\fR\fR
+.ad
+.sp .6
+.RS 4n
+Platform-specific system administration utilities with semantics equivalent to
+\fB/usr/sbin\fR. An approved installation location for bundled Solaris software
+and for add-on system software.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/preserve\fR\fR
+.ad
+.sp .6
+.RS 4n
+Symbolic link to the \fB/var/preserve\fR directory.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/proc\fR\fR
+.ad
+.sp .6
+.RS 4n
+Former location of the \fBproc\fR(1) tools, now containing compatibility
+symbolic links to their new locations in \fB/usr/bin\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/pub\fR\fR
+.ad
+.sp .6
+.RS 4n
+Symbolic link to \fB/share/lib/pub\fR, which contains files for online man page
+and character processing.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/sadm\fR\fR
+.ad
+.sp .6
+.RS 4n
+System administration files and directories.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/sadm/install\fR\fR
+.ad
+.sp .6
+.RS 4n
+Executables and scripts for package management.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/sbin\fR\fR
+.ad
+.sp .6
+.RS 4n
+Platform-dependent executables for system administration, expected to be run
+only by system administrators. An approved installation location for bundled
+Solaris software. The analogous location for add-on system software or for
+applications is \fB/opt/\fIpackagename\fR/sbin\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/sbin/sparcv7\fR and \fBsparcv9\fR\fR
+.ad
+.sp .6
+.RS 4n
+32-bit and 64-bit SPARC versions of commands.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/sbin/amd64\fR\fR
+.ad
+.sp .6
+.RS 4n
+64-bit x86 versions of commands.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/sbin/\fIsubsystem\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Platform-dependent executables for system administration, expected to be run
+only by system administrators, and associated with \fIsubsystem\fR. An approved
+installation location for bundled Solaris software. The analogous location for
+add-on system software or for applications is
+\fB/opt/\fIpackagename\fR/sbin\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/\fIsubsystem\fR/sbin\fR\fR
+.ad
+.sp .6
+.RS 4n
+Platform-dependent executables for system administration, expected to be run
+only by system administrators, and associated with \fIsubsystem\fR. An approved
+installation location for bundled Solaris software. The analogous location for
+add-on system software or for applications is
+\fB/opt/\fIpackagename\fR/sbin\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/share\fR\fR
+.ad
+.sp .6
+.RS 4n
+Platform-independent sharable files. An approved installation location for
+bundled Solaris software.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/share/aclocal\fR\fR
+.ad
+.sp .6
+.RS 4n
+Open source \fBm4\fR files.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/share/applications\fR\fR
+.ad
+.sp .6
+.RS 4n
+Desktop application files.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/share/audio\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sample audio files.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/share/icons\fR\fR
+.ad
+.sp .6
+.RS 4n
+Desktop icon files.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/share/intltool\fR\fR
+.ad
+.sp .6
+.RS 4n
+XML translation tools.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/share/ipfilter\fR\fR
+.ad
+.sp .6
+.RS 4n
+Open source IP Filter sample files.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/share/lib\fR\fR
+.ad
+.sp .6
+.RS 4n
+Platform-independent sharable databases. An approved installation location for
+bundled Solaris software.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/share/lib/dict\fR\fR
+.ad
+.sp .6
+.RS 4n
+Contains word list for \fBspell\fR(1).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/share/lib/keytables\fR\fR
+.ad
+.sp .6
+.RS 4n
+Keyboard layout description tables.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/share/lib/mailx\fR\fR
+.ad
+.sp .6
+.RS 4n
+Help files for \fBmailx\fR(1).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/share/lib/nterm\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBnroff\fR(1) terminal tables.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/share/lib/pub\fR\fR
+.ad
+.sp .6
+.RS 4n
+Character set data files.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/share/lib/tabset\fR\fR
+.ad
+.sp .6
+.RS 4n
+Tab setting escape sequences.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/share/lib/terminfo\fR\fR
+.ad
+.sp .6
+.RS 4n
+Terminal description files for \fBterminfo\fR(5).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/share/lib/tmac\fR\fR
+.ad
+.sp .6
+.RS 4n
+Macro packages and related files for text processing tools, for example,
+\fBnroff\fR(1) and \fBtroff\fR(1).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/share/lib/zoneinfo\fR\fR
+.ad
+.sp .6
+.RS 4n
+Time zone information.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/share/man\fR\fR
+.ad
+.sp .6
+.RS 4n
+Platform-independent sharable manual pages. An approved installation location
+for bundled Solaris software. The analogous location for add-on system software
+or for applications is \fB/opt/\fIpackagename\fR/man\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/share/pixmaps\fR\fR
+.ad
+.sp .6
+.RS 4n
+Desktop icon files.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/share/sounds\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sound files.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/share/src\fR\fR
+.ad
+.sp .6
+.RS 4n
+Source code for kernel, utilities, and libraries.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/share/themes\fR\fR
+.ad
+.sp .6
+.RS 4n
+Desktop themes.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/snadm\fR\fR
+.ad
+.sp .6
+.RS 4n
+Files related to system and network administration.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/spool\fR\fR
+.ad
+.sp .6
+.RS 4n
+Symbolic link to the \fB/var/spool\fR directory.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/src\fR\fR
+.ad
+.sp .6
+.RS 4n
+Symbolic link to the \fB/usr/share/src\fR directory.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/tmp\fR\fR
+.ad
+.sp .6
+.RS 4n
+Symbolic link to the \fB/var/tmp\fR directory.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/ucb\fR\fR
+.ad
+.sp .6
+.RS 4n
+Berkeley compatibility package binaries.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/ucbinclude\fR\fR
+.ad
+.sp .6
+.RS 4n
+Berkeley compatibility package headers.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/ucblib\fR\fR
+.ad
+.sp .6
+.RS 4n
+Berkeley compatibility package libraries.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/xpg4\fR\fR
+.ad
+.sp .6
+.RS 4n
+Directory for POSIX-compliant utilities.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/xpg6\fR\fR
+.ad
+.sp .6
+.RS 4n
+Directory for newer versions of POSIX-compliant utilities.
+.RE
+
+.SH SEE ALSO
+.BR at (1),
+.BR ex (1),
+.BR iconv (1),
+.BR isainfo (1),
+.BR lp (1),
+.BR mail (1),
+.BR mailx (1),
+.BR nroff (1),
+.BR priocntl (1),
+.BR refer (1),
+.BR sar (1),
+.BR sh (1),
+.BR spell (1),
+.BR svcs (1),
+.BR troff (1),
+.BR uname (1),
+.BR vi (1),
+.BR uucp (1C),
+.BR mount (2),
+.BR ctfs (4FS),
+.BR ctfs (4FS),
+.BR dev (4FS),
+.BR devfs (4FS),
+.BR objfs (4FS),
+.BR tmpfs (4FS),
+.BR Intro (5),
+.BR proc (5),
+.BR terminfo (5),
+.BR smf (7),
+.BR acct (8),
+.BR cron (8),
+.BR dispadmin (8),
+.BR dladm (8),
+.BR fmd (8),
+.BR fsck (8),
+.BR init (8),
+.BR kernel (8),
+.BR mknod (8),
+.BR mount (8),
+.BR svcadm (8),
+.BR svccfg (8),
+.BR useradd (8),
+.BR ypbind (8)
diff --git a/usr/src/man/man7/fnmatch.7 b/usr/src/man/man7/fnmatch.7
new file mode 100644
index 0000000000..51b73312d1
--- /dev/null
+++ b/usr/src/man/man7/fnmatch.7
@@ -0,0 +1,341 @@
+.\"
+.\" Sun Microsystems, Inc. gratefully acknowledges The Open Group for
+.\" permission to reproduce portions of its copyrighted documentation.
+.\" Original documentation from The Open Group can be obtained online at
+.\" http://www.opengroup.org/bookstore/.
+.\"
+.\" The Institute of Electrical and Electronics Engineers and The Open
+.\" Group, have given us permission to reprint portions of their
+.\" documentation.
+.\"
+.\" In the following statement, the phrase ``this text'' refers to portions
+.\" of the system documentation.
+.\"
+.\" Portions of this text are reprinted and reproduced in electronic form
+.\" in the SunOS Reference Manual, from IEEE Std 1003.1, 2004 Edition,
+.\" Standard for Information Technology -- Portable Operating System
+.\" Interface (POSIX), The Open Group Base Specifications Issue 6,
+.\" Copyright (C) 2001-2004 by the Institute of Electrical and Electronics
+.\" Engineers, Inc and The Open Group. In the event of any discrepancy
+.\" between these versions and the original IEEE and The Open Group
+.\" Standard, the original IEEE and The Open Group Standard is the referee
+.\" document. The original Standard can be obtained online at
+.\" http://www.opengroup.org/unix/online.html.
+.\"
+.\" This notice shall appear on any product containing this material.
+.\"
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.\"
+.\"
+.\" Copyright (c) 1992, X/Open Company Limited. All Rights Reserved.
+.\" Portions Copyright (c) 1995, Sun Microsystems, Inc. All Rights Reserved.
+.\"
+.TH FNMATCH 7 "Jun 14, 2015"
+.SH NAME
+fnmatch \- file name pattern matching
+.SH DESCRIPTION
+.LP
+The pattern matching notation described below is used to specify patterns for
+matching strings in the shell. Historically, pattern matching notation is
+related to, but slightly different from, the regular expression notation. For
+this reason, the description of the rules for this pattern matching notation is
+based on the description of regular expression notation described on the
+\fBregex\fR(7) manual page.
+.SS "Patterns Matching a Single Character"
+.LP
+The following patterns match a single character: \fIordinary characters\fR,
+\fIspecial pattern characters\fR and \fIpattern bracket expressions\fR. The pattern
+bracket expression will also match a single collating element.
+.sp
+.LP
+An ordinary character is a pattern that matches itself. It can be any character
+in the supported character set except for \fINUL\fR, those special shell
+characters that require quoting, and the following three special pattern
+characters. Matching is based on the bit pattern used for encoding the
+character, not on the graphic representation of the character. If any character
+(ordinary, shell special, or pattern special) is quoted, that pattern will
+match the character itself. The shell special characters always require
+quoting.
+.sp
+.LP
+When unquoted and outside a bracket expression, the following three characters
+will have special meaning in the specification of patterns:
+.sp
+.ne 2
+.na
+\fB\fB?\fR \fR
+.ad
+.RS 6n
+A question-mark is a pattern that will match any character.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB*\fR \fR
+.ad
+.RS 6n
+An asterisk is a pattern that will match multiple characters, as described in
+\fBPatterns Matching Multiple Characters\fR, below.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB[\fR \fR
+.ad
+.RS 6n
+The open bracket will introduce a pattern bracket expression.
+.RE
+
+.sp
+.LP
+The description of basic regular expression bracket expressions on the
+\fBregex\fR(7) manual page also applies to the pattern bracket expression,
+except that the exclamation-mark character \fB(\fR \fB!\fR \fB)\fR replaces the
+circumflex character (\fB^\fR) in its role in a \fInon-matching list\fR in the
+regular expression notation. A bracket expression starting with an unquoted
+circumflex character produces unspecified results.
+.sp
+.LP
+The restriction on a circumflex in a bracket expression is to allow
+implementations that support pattern matching using the circumflex as the
+negation character in addition to the exclamation-mark. A portable application
+must use something like \fB[\e^!\fR] to match either character.
+.sp
+.LP
+When pattern matching is used where shell quote removal is not performed (such
+as in the argument to the \fBfind\fR \fB-name\fR primary when \fBfind\fR is
+being called using one of the \fBexec\fR functions, or in the \fIpattern\fR
+argument to the \fBfnmatch\fR(3C) function, special characters can be escaped
+to remove their special meaning by preceding them with a backslash character.
+This escaping backslash will be discarded. The sequence \fB\e\e\fR represents
+one literal backslash. All of the requirements and effects of quoting on
+ordinary, shell special and special pattern characters will apply to escaping
+in this context.
+.sp
+.LP
+Both quoting and escaping are described here because pattern matching must work
+in three separate circumstances:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Calling directly upon the shell, such as in pathname expansion or in a
+\fBcase\fR statement. All of the following will match the string or file
+\fBabc\fR:
+.sp
+
+.sp
+.TS
+l l l l l
+l l l l l .
+\fBabc\fR \fB"abc"\fR \fBa"b"c\fR \fBa\ebc\fR \fBa[b]c\fR
+\fBa["b"]c\fR \fBa[\eb]c\fR \fBa["\eb"]c\fR \fBa?c\fR \fBa*c\fR
+.TE
+
+The following will not:
+.sp
+
+.sp
+.TS
+l l l .
+\fB"a?c"\fR \fBa\e*c\fR \fBa\e[b]c\fR
+.TE
+
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Calling a utility or function without going through a shell, as described for
+\fBfind\fR(1) and the function \fBfnmatch\fR(3C)
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Calling utilities such as \fBfind\fR, \fBcpio\fR, \fBtar\fR or \fBpax\fR
+through the shell command line. In this case, shell quote removal is performed
+before the utility sees the argument. For example, in:
+.sp
+find /bin -name e\ec[\eh]o -print
+.sp
+after quote removal, the backslashes are presented to \fBfind\fR and it treats
+them as escape characters. Both precede ordinary characters, so the \fBc\fR and
+\fBh\fR represent themselves and \fBecho\fR would be found on many historical
+systems (that have it in \fB/bin\fR). To find a file name that contained shell
+special characters or pattern characters, both quoting and escaping are
+required, such as:
+.sp
+\fBpax -r .\|.\|. "*a\e\|(\|\e?"\fR
+.sp
+to extract a filename ending with \fBa(?\fR.
+.RE
+.sp
+.LP
+Conforming applications are required to quote or escape the shell special
+characters (sometimes called metacharacters). If used without this protection,
+syntax errors can result or implementation extensions can be triggered. For
+example, the KornShell supports a series of extensions based on parentheses in
+patterns; see \fBksh\fR(1)
+.SS "Patterns Matching Multiple Characters"
+.LP
+The following rules are used to construct \fIpatterns matching multiple
+characters\fR from \fIpatterns matching a single character\fR:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The asterisk (*) is a pattern that will match any string, including the null
+string.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The concatenation of \fIpatterns matching a single character\fR is a valid
+pattern that will match the concatenation of the single characters or collating
+elements matched by each of the concatenated patterns.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The concatenation of one or more \fIpatterns matching a single character\fR
+with one or more asterisks is a valid pattern. In such patterns, each asterisk
+will match a string of zero or more characters, matching the greatest possible
+number of characters that still allows the remainder of the pattern to match
+the string.
+.RE
+.sp
+.LP
+Since each asterisk matches zero or more occurrences, the patterns \fBa*b\fR
+and \fBa**b\fR have identical functionality.
+.sp
+.LP
+Examples:
+.sp
+.ne 2
+.na
+\fB\fBa[bc]\fR \fR
+.ad
+.RS 10n
+matches the strings \fBab\fR and \fBac\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBa*d\fR \fR
+.ad
+.RS 10n
+matches the strings \fBad\fR, \fBabd\fR and \fBabcd\fR, but not the string
+\fBabc\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBa*d*\fR \fR
+.ad
+.RS 10n
+matches the strings \fBad\fR, \fBabcd\fR, \fBabcdef\fR, \fBaaaad\fR and
+\fBadddd\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB*a*d\fR \fR
+.ad
+.RS 10n
+matches the strings \fBad\fR, \fBabcd\fR, \fBefabcd\fR, \fBaaaad\fR and
+\fBadddd\fR.
+.RE
+
+.SS "Patterns Used for Filename Expansion"
+.LP
+The rules described so far in \fBPatterns\fR \fBMatching\fR \fBMultiple\fR
+\fBCharacters\fR and \fBPatterns\fR \fBMatching\fR \fBa\fR \fBSingle\fR
+\fBCharacter\fR are qualified by the following rules that apply when pattern
+matching notation is used for filename expansion.
+.RS +4
+.TP
+1.
+The slash character in a pathname must be explicitly matched by using one
+or more slashes in the pattern; it cannot be matched by the asterisk or
+question-mark special characters or by a bracket expression. Slashes in the
+pattern are identified before bracket expressions; thus, a slash cannot be
+included in a pattern bracket expression used for filename expansion. For
+example, the pattern \fBa[b/c]d\fR will not match such pathnames as \fBabd\fR
+or \fBa/d\fR. It will only match a pathname of literally \fBa[b/c]d\fR.
+.RE
+.RS +4
+.TP
+2.
+If a filename begins with a period (.), the period must be explicitly
+matched by using a period as the first character of the pattern or immediately
+following a slash character. The leading period will not be matched by:
+.sp
+\(bu the asterisk or question-mark special characters
+.sp
+\(bu a bracket expression containing a non-matching list, such as:
+.sp
+\fB[!a]\fR
+.sp
+a range expression, such as:
+.sp
+\fB[%\(mi0]\fR
+.sp
+or a character class expression, such as:
+.sp
+\fB[[:punct:]]\fR
+.sp
+It is unspecified whether an explicit period in a bracket expression matching
+list, such as:
+.sp
+\fB[.abc]\fR
+.sp
+can match a leading period in a filename.
+.RE
+.RS +4
+.TP
+3.
+Specified patterns are matched against existing filenames and pathnames, as
+appropriate. Each component that contains a pattern character requires read
+permission in the directory containing that component. Any component, except
+the last, that does not contain a pattern character requires search permission.
+For example, given the pattern:
+.sp
+\fB/foo/bar/x*/bam\fR
+.sp
+search permission is needed for directories \fB/\fR and \fBfoo\fR, search and
+read permissions are needed for directory \fBbar\fR, and search permission is
+needed for each \fBx*\fR directory.
+.sp
+If the pattern matches any existing filenames or pathnames, the pattern will be
+replaced with those filenames and pathnames, sorted according to the collating
+sequence in effect in the current locale. If the pattern contains an invalid
+bracket expression or does not match any existing filenames or pathnames, the
+pattern string is left unchanged.
+.RE
+.SH SEE ALSO
+.LP
+.BR find (1),
+.BR ksh (1),
+.BR fnmatch (3C),
+.BR regex (7)
diff --git a/usr/src/man/man7/formats.7 b/usr/src/man/man7/formats.7
new file mode 100644
index 0000000000..1d9c7bf0b0
--- /dev/null
+++ b/usr/src/man/man7/formats.7
@@ -0,0 +1,481 @@
+.\"
+.\" Sun Microsystems, Inc. gratefully acknowledges The Open Group for
+.\" permission to reproduce portions of its copyrighted documentation.
+.\" Original documentation from The Open Group can be obtained online at
+.\" http://www.opengroup.org/bookstore/.
+.\"
+.\" The Institute of Electrical and Electronics Engineers and The Open
+.\" Group, have given us permission to reprint portions of their
+.\" documentation.
+.\"
+.\" In the following statement, the phrase ``this text'' refers to portions
+.\" of the system documentation.
+.\"
+.\" Portions of this text are reprinted and reproduced in electronic form
+.\" in the SunOS Reference Manual, from IEEE Std 1003.1, 2004 Edition,
+.\" Standard for Information Technology -- Portable Operating System
+.\" Interface (POSIX), The Open Group Base Specifications Issue 6,
+.\" Copyright (C) 2001-2004 by the Institute of Electrical and Electronics
+.\" Engineers, Inc and The Open Group. In the event of any discrepancy
+.\" between these versions and the original IEEE and The Open Group
+.\" Standard, the original IEEE and The Open Group Standard is the referee
+.\" document. The original Standard can be obtained online at
+.\" http://www.opengroup.org/unix/online.html.
+.\"
+.\" This notice shall appear on any product containing this material.
+.\"
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.\"
+.\"
+.\" Copyright 1992, X/Open Company Limited. All Rights Reserved.
+.\" Portions Copyright (c) 1995, Sun Microsystems, Inc. All Rights Reserved.
+.\"
+.TH FORMATS 7 "Mar 28, 1995"
+.SH NAME
+formats \- file format notation
+.SH DESCRIPTION
+.sp
+.LP
+Utility descriptions use a syntax to describe the data organization within
+files\(emstdin, stdout, stderr, input files, and output files\(emwhen that
+organization is not otherwise obvious. The syntax is similar to that used by
+the \fBprintf\fR(3C) function. When used for stdin or input file
+descriptions, this syntax describes the format that could have been used to
+write the text to be read, not a format that could be used by the
+\fBscanf\fR(3C) function to read the input file.
+.SS "Format"
+.sp
+.LP
+The description of an individual record is as follows:
+.sp
+.in +2
+.nf
+"<\fBformat\fR>", [<\fIarg1\fR>, <\fIarg2\fR>, .\|.\|., <\fIargn\fR>]
+.fi
+.in -2
+
+.sp
+.LP
+The \fBformat\fR is a character string that contains three types of objects
+defined below:
+.sp
+.ne 2
+.na
+\fB\fI\fR\fIcharacters\fR\fI\fR \fR
+.ad
+.RS 30n
+Characters that are not \fIescape sequences\fR or \fIconversion
+specifications\fR, as described below, are copied to the output.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fI\fR\fIescape sequences\fR\fI\fR \fR
+.ad
+.RS 30n
+Represent non-graphic characters.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fI\fR\fIconversion specifications\fR\fI\fR \fR
+.ad
+.RS 30n
+Specifies the output format of each argument. (See below.)
+.RE
+
+.sp
+.LP
+The following characters have the following special meaning in the format
+string:
+.sp
+.ne 2
+.na
+\fB`` \&''\fR
+.ad
+.RS 11n
+(An empty character position.) One or more blank characters.
+.RE
+
+.sp
+.ne 2
+.na
+\fB/\e \fR
+.ad
+.RS 11n
+Exactly one space character.
+.RE
+
+.sp
+.LP
+The notation for spaces allows some flexibility for application output. Note
+that an empty character position in \fBformat\fR represents one or more blank
+characters on the output (not \fIwhite space\fR, which can include newline
+characters). Therefore, another utility that reads that output as its input
+must be prepared to parse the data using \fBscanf\fR(3C), \fBawk\fR(1), and so
+forth. The character is used when exactly one space character is output.
+.SS "Escape Sequences"
+.sp
+.LP
+The following table lists escape sequences and associated actions on display
+devices capable of the action.
+.sp
+
+.sp
+.TS
+c c c
+l l l .
+\fBSequence\fR \fBCharacter\fR \fBTerminal Action\fR
+_
+\fB\e\e\fR backslash None.
+\fB\ea\fR alert T{
+Attempts to alert the user through audible or visible notification.
+T}
+\fB\eb\fR backspace T{
+Moves the printing position to one column before the current position, unless the current position is the start of a line.
+T}
+\fB\ef\fR form-feed T{
+Moves the printing position to the initial printing position of the next logical page.
+T}
+\fB\en\fR newline T{
+Moves the printing position to the start of the next line.
+T}
+\fB\er\fR carriage-return T{
+Moves the printing position to the start of the current line.
+T}
+\fB\et\fR tab T{
+Moves the printing position to the next tab position on the current line. If there are no more tab positions left on the line, the behavior is undefined.
+T}
+\fB\ev\fR vertical-tab T{
+Moves the printing position to the start of the next vertical tab position. If there are no more vertical tab positions left on the page, the behavior is undefined.
+T}
+.TE
+
+.SS "Conversion Specifications"
+.sp
+.LP
+Each conversion specification is introduced by the percent-sign character (%).
+After the character %, the following appear in sequence:
+.sp
+.ne 2
+.na
+\fB\fI\fR\fIflags\fR\fI\fR \fR
+.ad
+.RS 26n
+Zero or more \fIflags\fR, in any order, that modify the meaning of the
+conversion specification.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fI\fR\fIfield width\fR\fI\fR \fR
+.ad
+.RS 26n
+An optional string of decimal digits to specify a minimum \fIfield width\fR.
+For an output field, if the converted value has fewer bytes than the field
+width, it is padded on the left (or right, if the left-adjustment flag (\(mi),
+described below, has been given to the field width).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fI\fR\fIprecision\fR\fI\fR \fR
+.ad
+.RS 26n
+Gives the minimum number of digits to appear for the d, o, i, u, x or X
+conversions (the field is padded with leading zeros), the number of digits to
+appear after the radix character for the e and f conversions, the maximum
+number of significant digits for the g conversion; or the maximum number of
+bytes to be written from a string in s conversion. The precision takes the form
+of a period (.) followed by a decimal digit string; a null digit string is
+treated as zero.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fI\fR\fIconversion characters\fR\fI\fR \fR
+.ad
+.RS 26n
+A conversion character (see below) that indicates the type of conversion to be
+applied.
+.RE
+
+.SS "\fIflags\fR"
+.sp
+.LP
+The \fIflags\fR and their meanings are:
+.sp
+.ne 2
+.na
+\fB\fI\(mi\fR \fR
+.ad
+.RS 12n
+The result of the conversion is left-justified within the field.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fI+\fR \fR
+.ad
+.RS 12n
+The result of a signed conversion always begins with a sign (+ or \(mi).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fI<space>\fR \fR
+.ad
+.RS 12n
+If the first character of a signed conversion is not a sign, a space character
+is prefixed to the result. This means that if the space character and + flags
+both appear, the space character flag is ignored.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fI#\fR \fR
+.ad
+.RS 12n
+The value is to be converted to an alternative form. For c, d, i, u, and s
+conversions, the behaviour is undefined. For o conversion, it increases the
+precision to force the first digit of the result to be a zero. For x or X
+conversion, a non-zero result has 0x or 0X prefixed to it, respectively. For e,
+E, f, g, and G conversions, the result always contains a radix character, even
+if no digits follow the radix character. For g and G conversions, trailing
+zeros are not removed from the result as they usually are.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fI0\fR \fR
+.ad
+.RS 12n
+For d, i, o, u, x, X, e, E, f, g, and G conversions, leading zeros (following
+any indication of sign or base) are used to pad to the field width; no space
+padding is performed. If the 0 and \(mi flags both appear, the 0 flag is
+ignored. For d, i, o, u, x and X conversions, if a precision is specified, the
+0 flag is ignored. For other conversions, the behaviour is undefined.
+.RE
+
+.SS "Conversion Characters"
+.sp
+.LP
+Each conversion character results in fetching zero or more arguments. The
+results are undefined if there are insufficient arguments for the format. If
+the format is exhausted while arguments remain, the excess arguments are
+ignored.
+.sp
+.LP
+The \fIconversion characters\fR and their meanings are:
+.sp
+.ne 2
+.na
+\fB\fId,i,o,u,x,X\fR \fR
+.ad
+.RS 16n
+The integer argument is written as signed decimal (d or i), unsigned octal (o),
+unsigned decimal (u), or unsigned hexadecimal notation (x and X). The d and i
+specifiers convert to signed decimal in the style \fB[\fR\(mi\fB]\fR\fIdddd\fR.
+The x conversion uses the numbers and letters 0123456789abcdef and the X
+conversion uses the numbers and letters 0123456789ABCDEF. The \fIprecision\fR
+component of the argument specifies the minimum number of digits to appear. If
+the value being converted can be represented in fewer digits than the specified
+minimum, it is expanded with leading zeros. The default precision is 1. The
+result of converting a zero value with a precision of 0 is no characters. If
+both the field width and precision are omitted, the implementation may precede,
+follow or precede and follow numeric arguments of types d, i and u with blank
+characters; arguments of type o (octal) may be preceded with leading zeros.
+.sp
+The treatment of integers and spaces is different from the \fBprintf\fR(3C)
+function in that they can be surrounded with blank characters. This was done so
+that, given a format such as:
+.sp
+.in +2
+.nf
+"%d\en",<\fIfoo\fR>
+.fi
+.in -2
+
+the implementation could use a \fBprintf()\fR call such as:
+.sp
+.in +2
+.nf
+printf("%6d\en", \fIfoo\fR);
+.fi
+.in -2
+
+and still conform. This notation is thus somewhat like \fBscanf()\fR in
+addition to \fBprintf(\|).\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIf\fR \fR
+.ad
+.RS 16n
+The floating point number argument is written in decimal notation in the style
+\fB[\fR\(mi\fB]\fR\fIddd\fR.\fIddd\fR, where the number of digits after the
+radix character (shown here as a decimal point) is equal to the \fIprecision\fR
+specification. The \fBLC_NUMERIC\fR locale category determines the radix
+character to use in this format. If the \fIprecision\fR is omitted from the
+argument, six digits are written after the radix character; if the
+\fIprecision\fR is explicitly 0, no radix character appears.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIe,E\fR \fR
+.ad
+.RS 16n
+The floating point number argument is written in the style
+\fB[\fR\(mi\fB]\fR\fId\fR.\fIddd\fRe\(+-\fBdd\fR (the symbol \(+- indicates
+either a plus or minus sign), where there is one digit before the radix
+character (shown here as a decimal point) and the number of digits after it is
+equal to the precision. The \fBLC_NUMERIC\fR locale category determines the
+radix character to use in this format. When the precision is missing, six
+digits are written after the radix character; if the precision is 0, no radix
+character appears. The E conversion character produces a number with E instead
+of e introducing the exponent. The exponent always contains at least two
+digits. However, if the value to be written requires an exponent greater than
+two digits, additional exponent digits are written as necessary.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIg,G\fR \fR
+.ad
+.RS 16n
+The floating point number argument is written in style f or e (or in style E in
+the case of a G conversion character), with the precision specifying the number
+of significant digits. The style used depends on the value converted: style g
+is used only if the exponent resulting from the conversion is less than \(mi4
+or greater than or equal to the precision. Trailing zeros are removed from the
+result. A radix character appears only if it is followed by a digit.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIc\fR \fR
+.ad
+.RS 16n
+The integer argument is converted to an \fBunsigned char\fR and the resulting
+byte is written.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIs\fR \fR
+.ad
+.RS 16n
+The argument is taken to be a string and bytes from the string are written
+until the end of the string or the number of bytes indicated by the
+\fIprecision\fR specification of the argument is reached. If the precision is
+omitted from the argument, it is taken to be infinite, so all bytes up to the
+end of the string are written.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fI%\fR \fR
+.ad
+.RS 16n
+Write a % character; no argument is converted.
+.RE
+
+.sp
+.LP
+In no case does a non-existent or insufficient \fIfield width\fR cause
+truncation of a field; if the result of a conversion is wider than the field
+width, the field is simply expanded to contain the conversion result. The term
+\fIfield width\fR should not be confused with the term \fIprecision\fR used in
+the description of %s.
+.sp
+.LP
+One difference from the C function \fBprintf()\fR is that the l and h
+conversion characters are not used. There is no differentiation between decimal
+values for type \fBint\fR, type \fBlong\fR, or type \fBshort\fR. The
+specifications %d or %i should be interpreted as an arbitrary length sequence
+of digits. Also, no distinction is made between single precision and double
+precision numbers (\fBfloat\fR or \fBdouble\fR in C). These are simply
+referred to as floating point numbers.
+.sp
+.LP
+Many of the output descriptions use the term \fBline\fR, such as:
+.sp
+.in +2
+.nf
+"%s", <\fIinput line\fR>
+.fi
+.in -2
+
+.sp
+.LP
+Since the definition of \fBline\fR includes the trailing newline character
+already, there is no need to include a \fB\en\fR in the format; a double
+newline character would otherwise result.
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRTo represent the output of a program that prints a date and
+time in the form Sunday, July 3, 10:02, where \fI<weekday>\fR and \fI<month>\fR
+are strings:
+.sp
+.in +2
+.nf
+"%s,/\e%s/\e%d,/\e%d:%.2d\en",<\fIweekday\fR>,<\fImonth\fR>,<\fIday\fR>,<\fIhour\fR>,<\fImin\fR>
+.fi
+.in -2
+
+.LP
+\fBExample 2 \fRTo show pi written to 5 decimal places:
+.sp
+.in +2
+.nf
+"pi/\e=/\e%.5f\en",<\fIvalue of pi\fR>
+.fi
+.in -2
+
+.LP
+\fBExample 3 \fRTo show an input file format consisting of five colon-separated
+fields:
+.sp
+.in +2
+.nf
+"%s:%s:%s:%s:%s\en",<\fIarg1\fR>,<\fIarg2\fR>,<\fIarg3\fR>,<\fIarg4\fR>,<\fIarg5\fR>
+.fi
+.in -2
+
+.SH SEE ALSO
+.sp
+.LP
+.BR awk (1),
+.BR printf (1),
+.BR printf (3C),
+.BR scanf (3C)
diff --git a/usr/src/man/man7/fsattr.7 b/usr/src/man/man7/fsattr.7
new file mode 100644
index 0000000000..4691e5eab6
--- /dev/null
+++ b/usr/src/man/man7/fsattr.7
@@ -0,0 +1,812 @@
+'\" te
+.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH FSATTR 7 "Oct 10, 2007"
+.SH NAME
+fsattr \- extended file attributes
+.SH DESCRIPTION
+.sp
+.LP
+Attributes are logically supported as files within the file system. The file
+system is therefore augmented with an orthogonal name space of file attributes.
+Any file (including attribute files) can have an arbitrarily deep attribute
+tree associated with it. Attribute values are accessed by file descriptors
+obtained through a special attribute interface. This logical view of
+"attributes as files" allows the leveraging of existing file system interface
+functionality to support the construction, deletion, and manipulation of
+attributes.
+.sp
+.LP
+The special files "." and ".\|." retain their accustomed semantics within the
+attribute hierarchy. The "." attribute file refers to the current directory
+and the ".\|." attribute file refers to the parent directory. The unnamed
+directory at the head of each attribute tree is considered the "child" of the
+file it is associated with and the ".\|." file refers to the associated file.
+For any non-directory file with attributes, the ".\|." entry in the unnamed
+directory refers to a file that is not a directory.
+.sp
+.LP
+Conceptually, the attribute model is fully general. Extended attributes can be
+any type of file (doors, links, directories, and so forth) and can even have
+their own attributes (fully recursive). As a result, the attributes associated
+with a file could be an arbitrarily deep directory hierarchy where each
+attribute could have an equally complex attribute tree associated with it. Not
+all implementations are able to, or want to, support the full model.
+Implementation are therefore permitted to reject operations that are not
+supported. For example, the implementation for the UFS file system allows only
+regular files as attributes (for example, no sub-directories) and rejects
+attempts to place attributes on attributes.
+.sp
+.LP
+The following list details the operations that are rejected in the current
+implementation:
+.sp
+.ne 2
+.na
+\fB\fBlink\fR\fR
+.ad
+.RS 25n
+Any attempt to create links between attribute and non-attribute space is
+rejected to prevent security-related or otherwise sensitive attributes from
+being exposed, and therefore manipulable, as regular files.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrename\fR\fR
+.ad
+.RS 25n
+Any attempt to rename between attribute and non-attribute space is rejected to
+prevent an already linked file from being renamed and thereby circumventing the
+\fBlink\fR restriction above.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmkdir\fR, \fBsymlink\fR, \fBmknod\fR\fR
+.ad
+.RS 25n
+Any attempt to create a "non-regular" file in attribute space is rejected to
+reduce the functionality, and therefore exposure and risk, of the initial
+implementation.
+.RE
+
+.sp
+.LP
+The entire available name space has been allocated to "general use" to bring
+the implementation in line with the NFSv4 draft standard [NFSv4]. That standard
+defines "named attributes" (equivalent to Solaris Extended Attributes) with no
+naming restrictions. All Sun applications making use of opaque extended
+attributes will use the prefix "SUNW".
+.SS "Shell-level API"
+.sp
+.LP
+The command interface for extended attributes is the set of applications
+provided by Solaris for the manipulation of attributes from the command line.
+This interface consists of a set of existing utilities that have been extended
+to be "attribute-aware", plus the \fBrunat\fR utility designed to "expose" the
+extended attribute space so that extended attributes can be manipulated as
+regular files.
+.sp
+.LP
+The \fB-@\fR option enable utilities to manipulate extended attributes. As a
+rule, this option enables the utility to enter into attribute space when the
+utility is performing a recursive traversal of file system space. This is a
+fully recursive concept. If the underlying file system supports recursive
+attributes and directory structures, the \fB-@\fR option opens these spaces to
+the file tree-walking algorithms.
+.sp
+.LP
+The following utilities accommodate extended attributes (see the individual
+manual pages for details):
+.sp
+.ne 2
+.na
+\fB\fBcp\fR\fR
+.ad
+.RS 8n
+By default, \fBcp\fR ignores attributes and copies only file data. This is
+intended to maintain the semantics implied by \fBcp\fR currently, where
+attributes (such as owner and mode) are not copied unless the \fB-p\fR option
+is specified. With the \fB-@\fR (or \fB-p\fR) option, \fBcp\fR attempts to copy
+all attributes along with the file data.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcpio\fR\fR
+.ad
+.RS 8n
+The \fB-@\fR option informs \fBcpio\fR to archive attributes, but by default
+\fBcpio\fR ignores extended attributes. See \fBExtended Archive Formats\fR
+below for a description of the new archive records.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdu\fR\fR
+.ad
+.RS 8n
+File sizes computed include the space allocated for any extended attributes
+present.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfind\fR\fR
+.ad
+.RS 8n
+By default, \fBfind\fR ignores attributes. The \fB-xattr\fR expression
+provides support for searches involving attribute space. It returns true if
+extended attributes are present on the current file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfsck\fR\fR
+.ad
+.RS 8n
+The \fBfsck\fR utility manages extended attribute data on the disk. A file
+system with extended attributes can be mounted on versions of Solaris that are
+not attribute-aware (versions prior to Solaris 9), but the attributes will not
+be accessible and \fBfsck\fR will strip them from the files and place them in
+\fBlost+found\fR. Once the attributes have been stripped the file system is
+completely stable on Solaris versions that are not attribute-aware, but would
+now be considered corrupted on attribute-aware versions of Solaris. The
+attribute-aware \fBfsck\fR utility should be run to stabilize the file system
+before using it in an attribute-aware environment.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfsdb\fR\fR
+.ad
+.RS 8n
+This \fBfsdb\fR utility is able to find the inode for the "hidden" extended
+attribute directory.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBls\fR\fR
+.ad
+.RS 8n
+The \fBls\fR \fB-@\fR command displays an "@" following the mode information
+when extended attributes are present. More precisely, the output line for a
+given file contains an "@" character following the mode characters if the
+\fBpathconf\fR(2) variable \fBXATTR_EXISTS\fR is set to true. See the
+\fBpathconf()\fR section below. The \fB-@\fR option uses the same general
+output format as the \fB-l\fR option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmv\fR\fR
+.ad
+.RS 8n
+When a file is moved, all attributes are carried along with the file rename.
+When a file is moved across a file system boundary, the copy command invoked is
+similar to the \fBcp\fR \fB-p\fR variant described above and extended
+attributes are "moved". If the extended file attributes cannot be replicated,
+the move operation fails and the source file is not removed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpax\fR\fR
+.ad
+.RS 8n
+The \fB-@\fR option informs \fBpax\fR to archive attributes, but by default
+\fBpax\fR ignores extended attributes. The \fBpax\fR(1) utility is a generic
+replacement for both \fBtar\fR(1) and \fBcpio\fR(1) and is able to produce
+either output format in its archive. See \fBExtended Archive Formats\fR below
+for a description of the new archive records.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBtar\fR\fR
+.ad
+.RS 8n
+In the default case, \fBtar\fR does not attempt to place attributes in the
+archive. If the \fB-@\fR option is specified, however, \fBtar\fR traverses
+into the attribute space of all files being placed in the archive and attempts
+to add the attributes to the archive. A new record type has been introduced for
+extended attribute entries in \fBtar\fR archive files (the same is true for
+\fBpax\fR and \fBcpio\fR archives) similar to the way ACLs records were
+defined. See \fBExtended Archive Formats\fR below for a description of the new
+archive records.
+.RE
+
+.sp
+.LP
+There is a class of utilities (\fBchmod\fR, \fBchown\fR, \fBchgrp\fR) that one
+might expect to be modified in a manner similar to those listed above. For
+example, one might expect that performing \fBchmod\fR on a file would not only
+affect the file itself but would also affect at least the extended attribute
+directory if not any existing extended attribute files. This is not the case.
+The model chosen for extended attributes implies that the attribute directory
+and the attributes themselves are all file objects in their own right, and can
+therefore have independent file status attributes associated with them (a
+given implementation cannot support this, for example, for intrinsic
+attributes). The relationship is left undefined and a fine-grained control
+mechanism (\fBrunat\fR(1)) is provided to allow manipulation of extended
+attribute status attributes as necessary.
+.sp
+.LP
+The \fBrunat\fR utility has the following syntax:
+.sp
+.in +2
+.nf
+runat \fIfilename\fR [\fIcommand\fR]
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The \fBrunat\fR utility executes the supplied command in the context of the
+"attribute space" associated with the indicated file. If no command argument
+is supplied, a shell is invoked. See \fBrunat\fR(1) for details.
+.SS "Application-level API"
+.sp
+.LP
+The primary interface required to access extended attributes at the
+programmatic level is the \fBopenat\fR(2) function. Once a file descriptor has
+been obtained for an attribute file by an \fBopenat()\fR call, all normal file
+system semantics apply. There is no attempt to place special semantics on
+\fBread\fR(2), \fBwrite\fR(2), \fBftruncate\fR(3C), or other functions when
+applied to attribute file descriptors relative to "normal" file descriptors.
+.sp
+.LP
+The set of existing attributes can be browsed by calling \fBopenat()\fR with
+"." as the file name and the \fBO_XATTR\fR flag set, resulting in a file
+descriptor for the attribute directory. The list of attributes is obtained by
+calls to \fBgetdents\fR(2) on the returned file descriptor. If the target file
+did not previously have any attributes associated with it, an empty top-level
+attribute directory is created for the file and subsequent \fBgetdents()\fR
+calls will return only "." and ".\|.". While the owner of the parent file owns
+the extended attribute directory, it is not charged against its quota if the
+directory is empty. Attribute files themselves, however, are charged against
+the user quota as any other regular file.
+.sp
+.LP
+Additional system calls have been provided as convenience functions. These
+include the \fBfchownat\fR(2), \fBfstatat\fR(2), \fBfutimesat\fR(2),
+\fBrenameat\fR(2), \fBunlinkat\fR(2). These new functions, along with
+\fBopenat()\fR, provide a mechanism to access files relative to an arbitrary
+point in the file system, rather than only the current working directory. This
+mechanism is particularly useful in situations when a file descriptor is
+available with no path. The \fBopenat()\fR function, in particular, can be used
+in many contexts where \fBchdir()\fR or \fBfchdir()\fR is currently required.
+See \fBchdir\fR(2).
+.SS "Open a file relative to a file descriptor"
+.sp
+.in +2
+.nf
+int openat (int \fIfd\fR, const char *\fIpath\fR, int \fIoflag\fR [, mode_t \fImode\fR])
+.fi
+.in -2
+
+.sp
+.LP
+The \fBopenat\fR(2) function behaves exactly as \fBopen\fR(2) except when given
+a relative path. Where \fBopen()\fR resolves a relative path from the current
+working directory, \fBopenat()\fR resolves the path based on the vnode
+indicated by the supplied file descriptor. When \fIoflag\fR is \fBO_XATTR\fR,
+\fBopenat()\fR interprets the \fIpath\fR argument as an extended attribute
+reference. The following code fragment uses \fBopenat()\fR to examine the
+attributes of some already opened file:
+.sp
+.in +2
+.nf
+dfd = openat(fd, ".", O_RDONLY|O_XATTR);
+(void)getdents(dfd, buf, nbytes);
+.fi
+.in -2
+
+.sp
+.LP
+If \fBopenat()\fR is passed the special value \fBAT_FDCWD\fR as its first
+(\fIfd\fR) argument, its behavior is identical to \fBopen()\fR and the relative
+path arguments are interpreted relative to the current working directory. If
+the \fBO_XATTR\fR flag is provided to \fBopenat()\fR or to \fBopen()\fR, the
+supplied path is interpreted as a reference to an extended attribute on the
+current working directory.
+.SS "Unlink a file relative to a directory file descriptor"
+.sp
+.in +2
+.nf
+int unlinkat (int \fIdirfd\fR, const char *path\fIflag\fR, int flag\fIflag\fR)
+.fi
+.in -2
+
+.sp
+.LP
+The \fBunlinkat\fR(2) function deletes an entry from a directory. The
+\fIpath\fR argument indicates the name of the entry to remove. If \fIpath\fR an
+absolute path, the \fIdirfd\fR argument is ignored. If it is a relative path,
+it is interpreted relative to the directory indicated by the \fIdirfd\fR
+argument. If \fIdirfd\fR does not refer to a valid directory, the function
+returns \fBENOTDIR\fR. If the special value \fBAT_FDCWD\fR is specified for
+\fIdirfd\fR, a relative path argument is resolved relative to the current
+working directory. If the \fIflag\fR argument is 0, all other semantics of
+this function are equivalent to \fBunlink\fR(2). If \fIflag\fR is set to
+\fBAT_REMOVEDIR\fR, all other semantics of this function are equivalent to
+\fBrmdir\fR(2).
+.SS "Rename a file relative to directories"
+.sp
+.in +2
+.nf
+int renameat (int \fIfromfd\fR, const char *\fIold\fR, int \fItofd\fR, const char *\fInew\fR)
+.fi
+.in -2
+
+.sp
+.LP
+The \fBrenameat\fR(2) function renames an entry in a directory, possibly moving
+the entry into a different directory. The \fIold\fR argument indicates the
+name of the entry to rename. If this argument is a relative path, it is
+interpreted relative to the directory indicated by the \fIfd\fR argument. If it
+is an absolute path, the \fIfromfd\fR argument is ignored. The \fInew\fR
+argument indicates the new name for the entry. If this argument is a relative
+path, it is interpreted relative to the directory indicated by the \fItofd\fR
+argument. If it is an absolute path, the \fItofd\fR argument is ignored.
+.sp
+.LP
+In the relative path cases, if the directory file descriptor arguments do not
+refer to a valid directory, the function returns \fBENOTDIR\fR. All other
+semantics of this function are equivalent to \fBrename\fR(2).
+.sp
+.LP
+If a special value \fBAT_FDCWD\fR is specified for either the \fIfromfd\fR or
+\fItofd\fR arguments, their associated path arguments (\fIold\fR and \fInew\fR)
+are interpreted relative to the current working directory if they are not
+specified as absolute paths. Any attempt to use \fBrenameat()\fR to move a file
+that is not an extended attribute into an extended attribute directory (so that
+it becomes an extended attribute) will fail. The same is true for an attempt to
+move a file that is an extended attribute into a directory that is not an
+extended attribute directory.
+.SS "Obtain information about a file"
+.sp
+.in +2
+.nf
+int fstatat (int \fIfd\fR, const char *\fIpath\fR, struct stat* \fIbuf\fR, int \fIflag\fR)
+.fi
+.in -2
+
+.sp
+.LP
+The \fBfstatat\fR(2) function obtains information about a file. If the
+\fIpath\fR argument is relative, it is resolved relative to the \fIfd\fR
+argument file descriptor, otherwise the \fIfd\fR argument is ignored. If the
+\fIfd\fR argument is a special value \fBAT_FDCWD\fR the path is resolved
+relative to the current working directory. If the \fIpath\fR argument is a
+null pointer, the function returns information about the file referenced by the
+\fIfd\fR argument. In all other relative path cases, if the \fIfd\fR argument
+does not refer to a valid directory, the function returns \fBENOTDIR\fR. If
+\fBAT_SYMLINK_NOFOLLOW\fR is set in the \fIflag\fR argument, the function will
+not automatically traverse a symbolic link at the position of the path. If
+\fB_AT_TRIGGER\fR is set in the \fIflag\fR argument and the vnode is a trigger
+mount point, the mount is performed and the function returns the attributes of
+the root of the mounted filesystem. The \fBfstatat()\fR function is a
+multipurpose function that can be used in place of \fBstat()\fR, \fBlstat()\fR,
+or \fBfstat()\fR. See \fBstat\fR(2)
+.sp
+.LP
+The function call \fBstat(\fR\fIpath\fR\fB,\fR \fIbuf\fR\fB)\fR is identical to
+\fBfstatat(AT_FDCWD\fR, \fIpath\fR\fB,\fR \fIbuf\fR\fB, 0)\fR.
+.sp
+.LP
+The function call \fBlstat(\fR\fIpath\fR\fB,\fR \fIbuf\fR\fB)\fR is identical
+to \fBfstatat(AT_FDCWD\fR, \fIpath\fR\fB,\fR \fIbuf\fR,
+\fBAT_SYMLINK_NOFOLLOW)\fR
+.sp
+.LP
+The function call \fBfstat(\fR\fIfildes\fR\fB,\fR \fIbuf\fR\fB)\fR is identical
+to \fBfstatat(\fR\fIfildes\fR, \fBNULL\fR, \fIbuf\fR, \fB0)\fR.
+.SS "Set owner and group ID"
+.sp
+.in +2
+.nf
+int fchownat (int \fIfd\fR, const char *\fIpath\fR, uid_t \fIowner\fR, gid_t \fIgroup\fR, \e
+ int \fIflag\fR)
+.fi
+.in -2
+
+.sp
+.LP
+The \fBfchownat\fR(2) function sets the owner ID and group ID for a file. If
+the \fIpath\fR argument is relative, it is resolved relative to the \fIfd\fR
+argument file descriptor, otherwise the \fIfd\fR argument is ignored. If the
+\fIfd\fR argument is a special value \fBAT_FDCWD\fR the path is resolved
+relative to the current working directory. If the path argument is a null
+pointer, the function sets the owner and group ID of the file referenced by the
+\fIfd\fR argument. In all other relative path cases, if the \fIfd\fR argument
+does not refer to a valid directory, the function returns \fBENOTDIR\fR. If the
+\fIflag\fR argument is set to \fBAT_SYMLINK_NOFOLLOW\fR, the function will not
+automatically traverse a symbolic link at the position of the path. The
+\fBfchownat()\fR function is a multi-purpose function that can be used in place
+of \fBchown()\fR, \fBlchown()\fR, or \fBfchown()\fR. See \fBchown\fR(2).
+.sp
+.LP
+The function call \fBchown(\fR\fIpath\fR\fB,\fR \fIowner\fR\fB,\fR
+\fIgroup\fR\fB)\fR is equivalent to \fBfchownat(AT_FDCWD\fR, \fIpath\fR\fB,\fR
+\fIowner\fR\fB,\fR \fIgroup\fR\fB, 0)\fR.
+.sp
+.LP
+The function call \fBlchown(\fR\fIpath\fR\fB,\fR \fIowner\fR\fB,\fR
+\fIgroup\fR\fB)\fR is equivalent to \fBfchownat(AT_FDCWD\fR, \fIpath\fR\fB,\fR
+\fIowner\fR\fB,\fR \fIgroup\fR\fB, AT_SYMLINK_NOFOLLOW)\fR.
+.SS "Set file access and modification times"
+.sp
+.in +2
+.nf
+int futimesat (int \fIfd\fR, const char *\fIpath\fR, const struct timeval \e
+ \fItimes\fR[2])
+.fi
+.in -2
+
+.sp
+.LP
+The \fBfutimesat\fR(2) function sets the access and modification times for a
+file. If the \fIpath\fR argument is relative, it is resolved relative to the
+\fIfd\fR argument file descriptor; otherwise the \fIfd\fR argument is ignored.
+If the \fIfd\fR argument is the special value \fBAT_FDCWD\fR, the path is
+resolved relative to the current working directory. If the \fIpath\fR argument
+is a null pointer, the function sets the access and modification times of the
+file referenced by the \fIfd\fR argument. In all other relative path cases, if
+the \fIfd\fR argument does not refer to a valid directory, the function returns
+\fBENOTDIR\fR. The \fBfutimesat()\fR function can be used in place of
+\fButimes\fR(2).
+.sp
+.LP
+The function call \fButimes(\fR\fIpath\fR\fB,\fR \fItimes\fR\fB)\fR is
+equivalent to \fBfutimesat(AT_FDCWD\fR, \fIpath\fR\fB,\fR \fItimes\fR\fB)\fR.
+.SS "New pathconf() functionality"
+.sp
+.in +2
+.nf
+long int pathconf(const char *\fIpath\fR, int \fIname\fR)
+.fi
+.in -2
+
+.sp
+.LP
+Two variables have been added to \fBpathconf\fR(2) to provide enhanced support
+for extended attribute manipulation. The \fBXATTR_ENABLED\fR variable allows an
+application to determine if attribute support is currently enabled for the file
+in question. The \fBXATTR_EXISTS\fR variable allows an application to determine
+whether there are any extended attributes associated with the supplied path.
+.SS "Open/Create an attribute file"
+.sp
+.in +2
+.nf
+int attropen (const char *\fIpath\fR, const char *\fIattrpath\fR, int \fIoflag\fR \e
+ [, mode_t \fImode\fR])
+.fi
+.in -2
+
+.sp
+.LP
+The \fBattropen\fR(3C) function returns a file descriptor for the named
+attribute, \fIattrpath\fR, of the file indicated by \fIpath\fR. The \fIoflag\fR
+and \fImode\fR arguments are identical to the \fBopen\fR(2) arguments and are
+applied to the open operation on the attribute file (for example, using the
+\fBO_CREAT\fR flag creates a new attribute). Once opened, all normal file
+system operations can be used on the attribute file descriptor. The
+\fBattropen()\fR function is a convenience function and is equivalent to the
+following sequence of operations:
+.sp
+.in +2
+.nf
+fd = open (path, O_RDONLY);
+attrfd = openat(fd, attrpath, oflag|O_XATTR, mode);
+close(fd);
+.fi
+.in -2
+
+.sp
+.LP
+The set of existing attributes can be browsed by calling \fBattropen()\fR with
+"." as the attribute name. The list of attributes is obtained by calling
+\fBgetdents\fR(2) (or \fBfdopendir\fR(3C) followed by \fBreaddir\fR(3C), see
+below) on the returned file descriptor.
+.SS "Convert an open file descriptor for a directory into a directory descriptor"
+.sp
+.in +2
+.nf
+DIR * fdopendir (const int \fIfd\fR)
+.fi
+.in -2
+
+.sp
+.LP
+The \fBfdopendir\fR(3C) function promotes a file descriptor for a directory to
+a directory pointer suitable for use with the \fBreaddir\fR(3C) function. The
+originating file descriptor should not be used again following the call to
+\fBfdopendir()\fR. The directory pointer should be closed with a call to
+\fBclosedir\fR(3C). If the provided file descriptor does not reference a
+directory, the function returns \fBENOTDIR\fR. This function is useful in
+circumstances where the only available handle on a directory is a file
+descriptor. See \fBattropen\fR(3C) and \fBopenat\fR(2).
+.SS "Using the API"
+.sp
+.LP
+The following examples demonstrate how the API might be used to perform basic
+operations on extended attributes:
+.LP
+\fBExample 1 \fRList extended attributes on a file.
+.sp
+.in +2
+.nf
+attrdirfd = attropen("test", ".", O_RDONLY);
+dirp = fdopendir(attrdirfd);
+while (dp = readdir(dirp)) {
+\&...
+.fi
+.in -2
+
+.LP
+\fBExample 2 \fROpen an extended attribute.
+.sp
+.in +2
+.nf
+attrfd = attropen("test", dp->d_name, O_RDONLY);
+.fi
+.in -2
+
+.sp
+.LP
+or
+
+.sp
+.in +2
+.nf
+attrfd = openat(attrdirfd, dp->d_name, O_RDONLY);
+.fi
+.in -2
+
+.LP
+\fBExample 3 \fRRead from an extended attribute.
+.sp
+.in +2
+.nf
+while (read(attrfd, buf, 512) > 0) {
+\&...
+.fi
+.in -2
+
+.LP
+\fBExample 4 \fRCreate an extended attribute.
+.sp
+.in +2
+.nf
+newfd = attropen("test", "attr", O_CREAT|O_RDWR);
+.fi
+.in -2
+
+.sp
+.LP
+or
+
+.sp
+.in +2
+.nf
+newfd = openat(attrdirfd, "attr", O_CREAT|O_RDWR);
+.fi
+.in -2
+
+.LP
+\fBExample 5 \fRWrite to an extended attribute.
+.sp
+.in +2
+.nf
+count = write(newfd, buf, length);
+.fi
+.in -2
+
+.LP
+\fBExample 6 \fRDelete an extended attribute.
+.sp
+.in +2
+.nf
+error = unlinkat(attrdirfd, "attr");
+.fi
+.in -2
+
+.sp
+.LP
+Applications intending to access the interfaces defined here as well as the
+POSIX and X/Open specification-conforming interfaces should define the macro
+\fB_ATFILE_SOURCE\fR to be 1 and set whichever feature test macros are
+appropriate to obtain the desired environment. See \fBstandards\fR(7).
+.SS "Extended Archive Formats"
+.sp
+.LP
+As noted above in the description of command utilities modified to provide
+support for extended attributes, the archive formats for \fBtar\fR(1) and
+\fBcpio\fR(1) have been extended to provide support for archiving extended
+attributes. This section describes the specifics of the archive format
+extensions.
+.SS "Extended tar format"
+.sp
+.LP
+The \fBtar\fR archive is made up of a series of 512 byte blocks. Each archived
+file is represented by a header block and zero or more data blocks containing
+the file contents. The header block is structured as shown in the following
+table.
+.sp
+
+.sp
+.TS
+c c c
+l l l .
+Field Name Length (in Octets) Description
+Name 100 File name string
+Mode 8 12 file mode bits
+Uid 8 User ID of file owner
+Gid 8 Group ID of file owner
+Size 12 Size of file
+Mtime 12 File modification time
+Chksum 8 File contents checksum
+Typeflag 1 File type flag
+Linkname 100 Link target name if file linked
+Magic 6 "ustar"
+Version 2 "00"
+Uname 32 User name of file owner
+Gname 32 Group name of file owner
+Devmajor 8 Major device ID if special file
+Devminor 8 Minor device ID if special file
+Prefix 155 Path prefix string for file
+.TE
+
+.sp
+.LP
+The extended attribute project extends the above header format by defining a
+new header type (for the \fBTypeflag\fR field). The type 'E' is defined to be
+used for all extended attribute files. Attribute files are stored in the
+\fBtar\fR archive as a sequence of two \fB<header ,data>\fR pairs. The first
+file contains the data necessary to locate and name the extended attribute in
+the file system. The second file contains the actual attribute file data. Both
+files use an 'E' type header. The prefix and name fields in extended attribute
+headers are ignored, though they should be set to meaningful values for the
+benefit of archivers that do not process these headers. Solaris archivers set
+the prefix field to "\fB/dev/null\fR" to prevent archivers that do not
+understand the type 'E' header from trying to restore extended attribute files
+in inappropriate places.
+.SS "Extended cpio format"
+.sp
+.LP
+The \fBcpio\fR archive format is octet-oriented rather than block-oriented.
+Each file entry in the archive includes a header that describes the file,
+followed by the file name, followed by the contents of the file. These data
+are arranged as described in the following table.
+.sp
+
+.sp
+.TS
+c c c
+l l l .
+\fBField Name\fR Length (in Octets) Description
+\fBc_magic\fR 6 70707
+\fBc_dev\fR 6 First half of unique file ID
+\fBc_ino\fR 6 Second half of unique file ID
+\fBc_mode\fR 6 File mode bits
+\fBc_uid\fR 6 User ID of file owner
+\fBc_gid\fR 6 Group ID of file owner
+\fBc_nlink\fR 6 Number of links referencing file
+\fBc_rdev\fR 6 Information for special files
+\fBc_mtime\fR 11 Modification time of file
+\fBc_namesize\fR 6 Length of file pathname
+\fBc_filesize\fR 11 Length of file content
+\fBc_name\fR \fBc_namesize\fR File pathname
+\fBc_filedata\fR \fBc_filesize\fR File content
+.TE
+
+.sp
+.LP
+The basic archive file structure is not changed for extended attributes. The
+file type bits stored in the \fBc_mode\fR field for an attribute file are set
+to \fB0xB000\fR. As with the \fBtar\fR archive format, extended attributes are
+stored in \fBcpio\fR archives as two consecutive file entries. The first file
+describes the location/name for the extended attribute. The second file
+contains the actual attribute file content. The \fBc_name\fR field in extended
+attribute headers is ignored, though it should be set to a meaningful value for
+the benefit of archivers that do not process these headers. Solaris archivers
+start the pathname with "\fB/dev/null/\fR"to prevent archivers that do not
+understand the type 'E' header from trying to restore extended attribute files
+in inappropriate places.
+.SS "Attribute identification data format"
+.sp
+.LP
+Both the \fBtar\fR and \fBcpio\fR archive formats can contain the special files
+described above, always paired with the extended attribute data record, for
+identifying the precise location of the extended attribute. These special data
+files are necessary because there is no simple naming mechanism for extended
+attribute files. Extended attributes are not visible in the file system name
+space. The extended attribute name space must be "tunneled into" using the
+\fBopenat()\fR function. The attribute identification data must support not
+only the flat naming structure for extended attributes, but also the
+possibility of future extensions allowing for attribute directory hierarchies
+and recursive attributes. The data file is therefore composed of a sequence of
+records. It begins with a fixed length header describing the content. The
+following table describes the format of this data file.
+.sp
+
+.sp
+.TS
+c c c
+l l l .
+Field Name Length (in Octets) Description
+\fBh_version\fR 7 Name file version
+\fBh_size\fR 10 Length of data file
+\fBh_component_len\fR 10 Total length of all path segments
+\fBh_link_comp_len\fR 10 Total length of all link segments
+\fBpath\fR \fBh_component_len\fR Complex path
+\fBlink_path\fR \fBh_link_comp_len\fR Complex link path
+.TE
+
+.sp
+.LP
+As demonstrated above, the header is followed by a record describing the "path"
+to the attribute file. This path is composed of two or more path segments
+separated by a null character. Each segment describes a path rooted at the
+hidden extended attribute directory of the leaf file of the previous segment,
+making it possible to name attributes on attributes. The first segment is
+always the path to the parent file that roots the entire sequence in the normal
+name space. The following table describes the format of each segment.
+.sp
+
+.sp
+.TS
+c c c
+l l l .
+Field Name Length (in Octets) Description
+_
+\fBh_namesz\fR 7 Length of segment path
+\fBh_typeflag\fR 1 Actual file type of attribute file
+\fBh_names\fR \fBh_namesz\fR Parent path + segment path
+.TE
+
+.sp
+.LP
+If the attribute file is linked to another file, the path record is followed by
+a second record describing the location of the referencing file. The structure
+of this record is identical to the record described above.
+.SH SEE ALSO
+.sp
+.LP
+.BR cp (1),
+.BR cpio (1),
+.BR du (1),
+.BR find (1),
+.BR ls (1),
+.BR mv (1),
+.BR pax (1),
+.BR runat (1),
+.BR tar (1),
+.BR chown (2),
+.BR link (2),
+.BR open (2),
+.BR pathconf (2),
+.BR rename (2),
+.BR stat (2),
+.BR unlink (2),
+.BR utimes (2),
+.BR attropen (3C),
+.BR standards (7),
+.BR fsck (8)
diff --git a/usr/src/man/man7/gptzfsboot.7 b/usr/src/man/man7/gptzfsboot.7
new file mode 100644
index 0000000000..ff7a5f31e3
--- /dev/null
+++ b/usr/src/man/man7/gptzfsboot.7
@@ -0,0 +1,191 @@
+.\" Copyright (c) 2014 Andriy Gapon <avg@FreeBSD.org>
+.\" All rights reserved.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\" notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\" notice, this list of conditions and the following disclaimer in the
+.\" documentation and/or other materials provided with the distribution.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE AUTHORS AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHORS OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+.\" SUCH DAMAGE.
+.\"
+.Dd July 17, 2019
+.Dt GPTZFSBOOT 7
+.Os
+.Sh NAME
+.Nm gptzfsboot
+.Nd disk bootcode for BIOS-based computers
+.Sh DESCRIPTION
+.Nm
+is used on BIOS-based computers to boot from a filesystem on disk device.
+Depending on disk partitioning and boot file system, the
+.Nm
+is installed in a
+.Cm zfs pool boot area
+or
+.Cm boot
+partition of a disk with
+.Xr installboot 8 .
+.Ss IMPLEMENTATION NOTES
+The GPT standard allows a variable number of partitions, but
+.Nm
+only boots from tables with 128 partitions or less.
+.Ss BOOTING
+.Nm
+tries to find all ZFS pools that are composed of BIOS-visible
+hard disks or partitions on them.
+.Nm
+looks for ZFS device labels on all visible disks and in discovered
+supported partitions for all supported partition scheme types.
+Disks are probed in BIOS defined order.
+After a disk is probed and
+.Nm
+determines that the whole disk is not a ZFS pool member, the
+individual partitions are probed in their partition table order.
+Currently GPT and MBR partition schemes are supported.
+.Pp
+The default boot partition is recorded into
+.Nm
+binary by
+.Xr installboot 8
+and the default boot file system is determined at run time.
+.Nm
+does support booting from the
+.Cm ZFS ,
+.Cm UFS
+and
+.Cm PCFS
+file systems.
+.Pp
+The filesystem specified by the
+.Cm bootfs
+property of the ZFS pool is used as a default boot filesystem.
+If the
+.Cm bootfs
+property is not set, then the root filesystem of the pool is used as
+the default.
+.Xr loader 7
+is loaded from the boot filesystem.
+If
+.Pa /boot/config
+is present in the boot filesystem, boot options are read from it.
+.Pp
+The ZFS GUIDs of the boot pool and boot file system are made available to
+.Xr loader 7 .
+.Ss USAGE
+Normally
+.Nm
+will boot in fully automatic mode.
+However, it is possible to interrupt the automatic boot process and
+interact with
+.Nm
+through a prompt.
+.Pp
+The filesystem specification and the path to
+.Xr loader 7
+is specified as
+.Pp
+.Sm off
+.Oo zfs:pool/filesystem: Oc Oo /path/to/loader Oc
+.Sm on
+.Pp
+Both the filesystem and the path can be specified.
+If only a path is specified, then the default filesystem is used.
+If only a pool and filesystem are specified, then
+.Pa /boot/loader
+is used as a path.
+.Pp
+Additionally, the
+.Nm
+does support two commands to get information about the system.
+.Ic ?directoryname
+can be used to list the content of named directory and
+.Ic status
+command can be used to query information about discovered devices.
+The output format for ZFS pools is similar to that of
+.Cm zpool status
+.Pq see Xr zpool 8 .
+.Pp
+The configured or automatically determined ZFS boot filesystem is
+stored in the
+.Xr loader 7
+.Cm loaddev
+variable, and also set as the initial value of the
+.Cm currdev
+variable.
+.Sh OPTIONS
+The following options are supported by
+.Nm
+and
+.Xr loader 7 :
+.Bl -tag -width indent
+.It Fl D
+Dual console.
+Use both text and serial console with
+.Nm
+and
+.Xr loader 7 .
+.It Fl P
+Probe for keyboard.
+If there is no keyboard, switch on the dual console and serial console.
+.It Fl S Ns Ar speed
+Set serial port speed.
+.It Fl h
+Set serial console.
+.It Fl q
+Keep the
+.Nm
+console quiet.
+.It Fl t
+Keep the VGA text mode for
+.Xr loader 7 .
+.El
+.Pp
+The following options will be passed to the kernel:
+.Bl -tag -width indent
+.It Fl s
+Single user
+.It Fl v
+Verbose boot
+.El
+.Sh FILES
+.Bl -tag -width /boot/gptzfsboot -compact
+.It Pa /boot/config
+parameters for the boot block
+.Pq optional
+.It Pa /boot/gptzfsboot
+boot code binary
+.El
+.Sh EXAMPLES
+.Nm
+is installed in combination with a
+.Dq protective MBR
+.Po
+see
+.Xr installboot 8
+.Pc .
+To install
+.Nm
+on the
+.Pa c0t0d0s0
+drive:
+.Bd -literal -offset indent
+installboot /boot/pmbr /boot/gptzfsboot /dev/rdsk/c0t0d0s0
+.Ed
+.Sh SEE ALSO
+.Xr loader 7 ,
+.Xr installboot 8 ,
+.Xr zpool 8
diff --git a/usr/src/man/man7/grub.7 b/usr/src/man/man7/grub.7
new file mode 100644
index 0000000000..4cc3baf2c0
--- /dev/null
+++ b/usr/src/man/man7/grub.7
@@ -0,0 +1,87 @@
+'\" te
+.\" Copyright (c) 2005 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH GRUB 7 "Apr 21, 2005"
+.SH NAME
+grub \- GRand Unified Bootloader software on Solaris
+.SH DESCRIPTION
+.sp
+.LP
+The current release of the Solaris operating system is shipped with the GRUB
+(GRand Unified Bootloader) software. GRUB is developed and supported by the
+Free Software Foundation.
+.sp
+.LP
+The overview for the GRUB Manual, accessible at \fBwww.gnu.org\fR, describes
+GRUB:
+.sp
+.LP
+Briefly, a boot loader is the first software program that runs when a computer
+starts. It is responsible for loading and transferring control to an operating
+system kernel software (such as Linux or GNU Mach). The kernel, in turn,
+initializes the rest of the operating system (for example, a GNU [Ed. note: or
+Solaris] system).
+.sp
+.LP
+GNU GRUB is a very powerful boot loader that can load a wide variety of free,
+as well as proprietary, operating systems, by means of chain-loading. GRUB is
+designed to address the complexity of booting a personal computer; both the
+program and this manual are tightly bound to that computer platform, although
+porting to other platforms may be addressed in the future. [Ed. note: Sun has
+ported GRUB to the Solaris operating system.]
+.sp
+.LP
+One of the important features in GRUB is flexibility; GRUB understands
+filesystems and kernel executable formats, so you can load an arbitrary
+operating system the way you like, without recording the physical position of
+your kernel on the disk. Thus you can load the kernel just by specifying its
+file name and the drive and partition where the kernel resides.
+.sp
+.LP
+Among Solaris machines, GRUB is supported on x86 platforms. The GRUB software
+that is shipped with Solaris adds two utilities not present in the open-source
+distribution:
+.sp
+.ne 2
+.na
+\fB\fBbootadm\fR(8)\fR
+.ad
+.RS 19n
+Enables you to manage the boot archive and make changes to the GRUB menu.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBinstallgrub\fR(8)\fR
+.ad
+.RS 19n
+Loads the boot program from disk.
+.RE
+
+.sp
+.LP
+Both of these utilities are described in Solaris man pages.
+.sp
+.LP
+Beyond these two Solaris-specific utilities, the GRUB software is described in
+the GRUB manual, a PDF version of which is available from the Sun web site.
+Available in the same location is the \fBgrub(8)\fR open-source man page. This
+man page describes the GRUB shell.
+.SH SEE ALSO
+.sp
+.LP
+.BR boot (8),
+.BR bootadm (8),
+.BR installgrub (8)
+.sp
+.LP
+\fISolaris Express Installation Guide: Basic Installations\fR
+.sp
+.LP
+\fISystem Administration Guide: Basic Administration\fR
+.sp
+.LP
+http://www.gnu.org/software/grub
diff --git a/usr/src/man/man7/gss_auth_rules.7 b/usr/src/man/man7/gss_auth_rules.7
new file mode 100644
index 0000000000..72d1d54738
--- /dev/null
+++ b/usr/src/man/man7/gss_auth_rules.7
@@ -0,0 +1,81 @@
+'\" te
+.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH GSS_AUTH_RULES 7 "Apr 13, 2004"
+.SH NAME
+gss_auth_rules \- overview of GSS authorization
+.SH DESCRIPTION
+.sp
+.LP
+The establishment of the veracity of a user's credentials requires both
+authentication (Is this an authentic user?) and authorization (Is this
+authentic user, in fact, authorized?).
+.sp
+.LP
+When a user makes use of Generic Security Services (GSS) versions of the
+\fBftp\fR or \fBssh\fR clients to connect to a server, the user is not
+necessarily authorized, even if his claimed GSS identity is authenticated,
+Authentication merely establishes that the user is who he says he is to the GSS
+mechanism's authentication system. Authorization is then required: it
+determines whether the GSS identity is permitted to access the specified
+Solaris user account.
+.sp
+.LP
+The GSS authorization rules are as follows:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+If the mechanism of the connection has a set of authorization rules, then use
+those rules. For example, if the mechanism is Kerberos, then use the
+\fBkrb5_auth_rules\fR(7), so that authorization is consistent between raw
+Kerberos applications and GSS/Kerberos applications.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+If the mechanism of the connection does not have a set of authorization rules,
+then authorization is successful if the remote user's \fBgssname\fR matches the
+local user's \fBgssname\fR exactly, as compared by
+\fBgss_compare_name\fR(3GSS).
+.RE
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/passwd\fR\fR
+.ad
+.RS 15n
+System account file. This information may also be in a directory service. See
+\fBpasswd\fR(5).
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for a description of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR ftp (1),
+.BR ssh (1),
+.BR gss_compare_name (3GSS),
+.BR passwd (5),
+.BR attributes (7),
+.BR krb5_auth_rules (7),
+.BR gsscred (8)
diff --git a/usr/src/man/man7/hal.7 b/usr/src/man/man7/hal.7
new file mode 100644
index 0000000000..df3f2a7351
--- /dev/null
+++ b/usr/src/man/man7/hal.7
@@ -0,0 +1,39 @@
+'\" te
+.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH HAL 7 "Nov 26, 2017"
+.SH NAME
+hal \- overview of hardware abstraction layer
+.SH DESCRIPTION
+.LP
+The Hardware Abstraction Layer (HAL) provides a view of the various hardware
+attached to a system. This view is updated dynamically as hardware
+configuration changes by means of hotplug or other mechanisms. HAL represents a
+piece of hardware as a device object. A device object is identified by a unique
+identifier and carries a set of key/value pairs, referred to as device
+properties. Some properties are derived from the actual hardware, some are
+merged from device information files (\fB\&.fdi\fR files), and some are related
+to the actual device configuration.
+.sp
+.LP
+HAL provides an easy-to-use API through D-Bus. D-Bus is an IPC framework that,
+among other features, provides a system-wide message-bus that allows
+applications to talk to one another. Specifically, D-Bus provides asynchronous
+notification such that HAL can notify other peers on the message-bus when
+devices are added and removed, as well as when properties on a device are
+changing.
+.sp
+.LP
+In the Solaris operating system, HAL is supported by a daemon, \fBhald\fR(8),
+and a set of utilities that enable the adding and removing of devices and the
+modification of their properties.
+.SH SEE ALSO
+.LP
+.BR fdi (5),
+.BR hald (8)
+.sp
+.LP
+See the HAL pages, including the HAL specification, under
+http://freedesktop.org.
diff --git a/usr/src/man/man7/ibmf.7 b/usr/src/man/man7/ibmf.7
deleted file mode 100644
index 36598fc066..0000000000
--- a/usr/src/man/man7/ibmf.7
+++ /dev/null
@@ -1,47 +0,0 @@
-.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 2020 Joyent, Inc.
-.\"
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.\"
-.Dd January 12, 2020
-.Dt IBMF 7
-.Os
-.Sh NAME
-.Nm ibmf
-.Nd InfiniBand Management Transport Framework
-.Sh DESCRIPTION
-The InfiniBand (IB) Management Transport Framework provides the mechanisms for
-IB management modules to communicate with other InfiniBand management modules
-such as the Subnet Administration process.
-It also provides helper functions
-such as Subnet Administration Access (SAA) for commonly performed operations.
-.Sh FILES
-.Bl -tag -width Pa
-.It Pa /kernel/misc/amd64/ibmf
-Device driver (x86).
-.It Pa /kernel/misc/sparcv9/ibmf
-Device driver (SPARC)
-.El
-.Sh ARCHITECTURE
-PCI-based systems
-.Sh INTERFACE STABILITY
-Private
-.Sh SEE ALSO
-.Xr ibtl 7D
-.Pp
-.%T InfiniBand Architecture Specification, Version 1\&.1
-.Pp
-.%U www.infinibandta.org
diff --git a/usr/src/man/man7/iconv.7 b/usr/src/man/man7/iconv.7
new file mode 100644
index 0000000000..2a292fc4fd
--- /dev/null
+++ b/usr/src/man/man7/iconv.7
@@ -0,0 +1,322 @@
+.\"
+.\" Sun Microsystems, Inc. gratefully acknowledges The Open Group for
+.\" permission to reproduce portions of its copyrighted documentation.
+.\" Original documentation from The Open Group can be obtained online at
+.\" http://www.opengroup.org/bookstore/.
+.\"
+.\" The Institute of Electrical and Electronics Engineers and The Open
+.\" Group, have given us permission to reprint portions of their
+.\" documentation.
+.\"
+.\" In the following statement, the phrase ``this text'' refers to portions
+.\" of the system documentation.
+.\"
+.\" Portions of this text are reprinted and reproduced in electronic form
+.\" in the SunOS Reference Manual, from IEEE Std 1003.1, 2004 Edition,
+.\" Standard for Information Technology -- Portable Operating System
+.\" Interface (POSIX), The Open Group Base Specifications Issue 6,
+.\" Copyright (C) 2001-2004 by the Institute of Electrical and Electronics
+.\" Engineers, Inc and The Open Group. In the event of any discrepancy
+.\" between these versions and the original IEEE and The Open Group
+.\" Standard, the original IEEE and The Open Group Standard is the referee
+.\" document. The original Standard can be obtained online at
+.\" http://www.opengroup.org/unix/online.html.
+.\"
+.\" This notice shall appear on any product containing this material.
+.\"
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.\"
+.\"
+.\" Copyright 1989 AT&T
+.\" Portions Copyright (c) 1992, X/Open Company Limited. All Rights Reserved.
+.\" Copyright (c) 2001, Sun Microsystems, Inc. All Rights Reserved.
+.\"
+.TH ICONV 7 "Dec 5, 2001"
+.SH NAME
+iconv \- code set conversion tables
+.SH DESCRIPTION
+.sp
+.LP
+The following code set conversions are supported:
+.sp
+.in +2
+.nf
+ Code Set Conversions Supported
+
+Code Symbol Target Code Symbol Target Output
+
+ISO 646 646 ISO 8859-1 8859 US ASCII
+ISO 646de 646de ISO 8859-1 8859 German
+ISO 646da 646da ISO 8859-1 8859 Danish
+ISO 646en 646en ISO 8859-1 8859 English ASCII
+ISO 646es 646es ISO 8859-1 8859 Spanish
+ISO 646fr 646fr ISO 8859-1 8859 French
+ISO 646it 646it ISO 8859-1 8859 Italian
+ISO 646sv 646sv ISO 8859-1 8859 Swedish
+ISO 8859-1 8859 ISO 646 646 7 bit ASCII
+ISO 8859-1 8859 ISO 646de 646de German
+ISO 8859-1 8859 ISO 646da 646da Danish
+ISO 8859-1 8859 ISO 646en 646en English ASCII
+ISO 8859-1 8859 ISO 646es 646es Spanish
+ISO 8859-1 8859 ISO 646fr 646fr French
+ISO 8859-1 8859 ISO 646it 646it Italian
+ISO 8859-1 8859 ISO 646sv 646sv Swedish
+ISO 8859-16 iso16 ISO 8859-2 iso2 ISO Latin 2
+ISO 8859-2 iso2 ISO 8859-16 iso16 ISO Latin 10
+ISO 8859-16 iso16 IBM 850 ibm850 IBM 850 code page
+ISO 8859-16 iso16 IBM 870 ibm870 IBM 870 code page
+ISO 8859-2 iso2 MS 1250 win2 Windows Latin 2
+ISO 8859-2 iso2 MS 852 dos2 MS-DOS Latin 2
+ISO 8859-2 iso2 Mazovia maz Mazovia
+IBM 850 ibm850 ISO 8859-16 iso16 ISO Latin 10
+IBM 870 ibm870 ISO 8859-16 iso16 ISO Latin 10
+MS 1250 win2 DHN dhn Dom Handlowy Nauki
+MS 852 dos2 ISO 8859-2 iso2 ISO Latin 2
+MS 852 dos2 MS 1250 win2 Windows Latin 2
+MS 852 dos2 Mazovia maz Mazovia
+MS 852 dos2 DHN dhn Dom Handlowy Nauki
+Mazovia maz ISO 8859-2 iso2 ISO Latin 2
+Mazovia maz MS 1250 win2 Windows Latin 2
+Mazovia maz MS 852 dos2 MS-DOS Latin 2
+Mazovia maz DHN dhn Dom Handlowy Nauki
+DHN dhn ISO 8859-2 iso2 ISO Latin 2
+DHN dhn MS 1250 win2 Windows Latin 2
+DHN dhn MS 852 dos2 MS-DOS Latin 2
+DHN dhn Mazovia maz Mazovia
+ISO 8859-5 iso5 KOI8-R koi8 KOI8-R
+ISO 8859-5 iso5 PC Cyrillic alt Alternative PC Cyrillic
+ISO 8859-5 iso5 MS 1251 win5 Windows Cyrillic
+ISO 8859-5 iso5 Mac Cyrillic mac Macintosh Cyrillic
+KOI8-R koi8 ISO 8859-5 iso5 ISO 8859-5 Cyrillic
+KOI8-R koi8 PC Cyrillic alt Alternative PC Cyrillic
+KOI8-R koi8 MS 1251 win5 Windows Cyrillic
+KOI8-R koi8 Mac Cyrillic mac Macintosh Cyrillic
+PC Cyrillic alt ISO 8859-5 iso5 ISO 8859-5 Cyrillic
+PC Cyrillic alt KOI8-R koi8 KOI8-R
+PC Cyrillic alt MS 1251 win5 Windows Cyrillic
+PC Cyrillic alt Mac Cyrillic mac Macintosh Cyrillic
+MS 1251 win5 ISO 8859-5 iso5 ISO 8859-5 Cyrillic
+MS 1251 win5 KOI8-R koi8 KOI8-R
+MS 1251 win5 PC Cyrillic alt Alternative PC Cyrillic
+MS 1251 win5 Mac Cyrillic mac Macintosh Cyrillic
+Mac Cyrillic mac ISO 8859-5 iso5 ISO 8859-5 Cyrillic
+Mac Cyrillic mac KOI8-R koi8 KOI8-R
+Mac Cyrillic mac PC Cyrillic alt Alternative PC Cyrillic
+Mac Cyrillic mac MS 1251 win5 Windows Cyrillic
+.fi
+.in -2
+.sp
+
+.SH CONVERSIONS
+.sp
+.LP
+The conversions are performed according to the tables contained in the manual
+pages cross-referenced in the \fBIndex of Conversion Code Tables\fR below.
+.sp
+
+.sp
+.TS
+box;
+c | c | c
+l | l | l .
+\fBIndex of Conversion Code Tables\fR
+_
+\fBCode\fR \fBTarget Code\fR \fBSee Manual Page\fR
+_
+ISO 646 ISO 8859-1 iconv_646 (5)
+_
+ISO 646de ISO 8859-1
+_
+ISO 646da ISO 8859-1
+_
+ISO 646en ISO 8859-1
+_
+ISO 646es ISO 8859-1
+_
+ISO 646fr ISO 8859-1
+_
+ISO 646it ISO 8859-1
+_
+ISO 646sv ISO 8859-1
+_
+ISO 8859-1 ISO 646 iconv_8859-1 (5)
+_
+ISO 8859-1 ISO 646de
+_
+ISO 8859-1 ISO 646da
+_
+ISO 8859-1 ISO 646en
+_
+ISO 8859-1 ISO 646es
+_
+ISO 8859-1 ISO 646fr
+_
+ISO 8859-1 ISO 646it
+_
+ISO 8859-1 ISO 646sv
+_
+ISO 8859-2 MS 1250 iconv_8859-2 (5)
+_
+ISO 8859-2 MS 852
+_
+ISO 8859-2 Mazovia
+_
+ISO 8859-2 DHN
+_
+MS 1250 ISO 8859-2 iconv_1250 (5)
+_
+MS 1250 MS 852
+_
+MS 1250 Mazovia
+_
+MS 1250 DHN
+_
+MS 852 ISO 8859-2 iconv_852 (5)
+_
+MS 852 MS 1250
+_
+MS 852 Mazovia
+_
+MS 852 DHN
+_
+Mazovia ISO 8859-2 iconv_maz (5)
+_
+Mazovia MS 1250
+_
+Mazovia MS 852
+_
+Mazovia DHN
+.TE
+
+.sp
+
+.sp
+.TS
+box;
+c | c | c
+l | l | l .
+\fBIndex of Conversion Code Tables\fR
+_
+\fBCode\fR \fBTarget Code\fR \fBSee Manual Page\fR
+_
+DHN ISO 8859-2 iconv_dhn (5)
+_
+DHN MS 1250
+_
+DHN MS 852
+_
+DHN Mazovia
+_
+ISO 8859-5 KOI8-R iconv_8859-5 (5)
+_
+ISO 8859-5 PC Cyrillic
+_
+ISO 8859-5 MS 1251
+_
+ISO 8859-5 Mac Cyrillic
+_
+KOI8-R ISO 8859-5 iconv_koi8-r (5)
+_
+KOI8-R PC Cyrillic
+_
+KOI8-R MS 1251
+_
+KOI8-R Mac Cyrillic
+_
+PC Cyrillic ISO 8859-5 iconv_pc_cyr (5)
+_
+PC Cyrillic KOI8-R
+_
+PC Cyrillic MS 1251
+_
+PC Cyrillic Mac Cyrillic
+_
+MS 1251 ISO 8859-5 iconv_1251 (5)
+_
+MS 1251 KOI8-R
+_
+MS 1251 PC Cyrillic
+_
+MS 1251 Mac Cyrillic
+_
+Mac Cyrillic ISO 8859-5 iconv_mac_cyr (5)
+_
+Mac Cyrillic KOI8-R
+_
+Mac Cyrillic PC Cyrillic
+_
+Mac Cyrillic MS 1251
+.TE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/iconv/*.so\fR\fR
+.ad
+.sp .6
+.RS 4n
+conversion modules
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/iconv/*.t\fR\fR
+.ad
+.sp .6
+.RS 4n
+Conversion tables.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/iconv/geniconvtbl/binarytables/*.bt\fR\fR
+.ad
+.sp .6
+.RS 4n
+Conversion binary tables.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/iconv/iconv_data\fR\fR
+.ad
+.sp .6
+.RS 4n
+List of conversions supported by conversion tables.
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR iconv (1),
+.BR iconv (3C),
+.BR iconv_1250 (7),
+.BR iconv_1251 (7),
+.BR iconv_646 (7),
+.BR iconv_852 (7),
+.BR iconv_8859-1 (7),
+.BR iconv_8859-2 (7),
+.BR iconv_8859-5 (7),
+.BR iconv_dhn (7),
+.BR iconv_koi8-r (7),
+.BR iconv_mac_cyr (7),
+.BR iconv_maz (7),
+.BR iconv_pc_cyr (7),
+.BR iconv_unicode (7)
diff --git a/usr/src/man/man7/iconv_unicode.7 b/usr/src/man/man7/iconv_unicode.7
new file mode 100644
index 0000000000..74a3aca765
--- /dev/null
+++ b/usr/src/man/man7/iconv_unicode.7
@@ -0,0 +1,325 @@
+'\" te
+.\" Copyright (c) 1997, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH ICONV_UNICODE 7 "Apr 18, 1997"
+.SH NAME
+iconv_unicode \- code set conversion tables for Unicode
+.SH DESCRIPTION
+.sp
+.LP
+The following code set conversions are supported:
+.sp
+.in +2
+.nf
+ CODE SET CONVERSIONS SUPPORTED
+ ------------------------------
+ FROM Code Set TO Code Set
+ Code FROM Target Code TO
+ Filename Filename
+ Element Element
+
+ISO 8859-1 (Latin 1) 8859-1 UTF-8 UTF-8
+ISO 8859-2 (Latin 2) 8859-2 UTF-8 UTF-8
+ISO 8859-3 (Latin 3) 8859-3 UTF-8 UTF-8
+ISO 8859-4 (Latin 4) 8859-4 UTF-8 UTF-8
+ISO 8859-5 (Cyrillic) 8859-5 UTF-8 UTF-8
+ISO 8859-6 (Arabic) 8859-6 UTF-8 UTF-8
+ISO 8859-7 (Greek) 8859-7 UTF-8 UTF-8
+ISO 8859-8 (Hebrew) 8859-8 UTF-8 UTF-8
+ISO 8859-9 (Latin 5) 8859-9 UTF-8 UTF-8
+ISO 8859-10 (Latin 6) 8859-10 UTF-8 UTF-8
+Japanese EUC eucJP UTF-8 UTF-8
+Chinese/PRC EUC
+(GB 2312-1980) gb2312 UTF-8 UTF-8
+ISO-2022 iso2022 UTF-8 UTF-8
+Korean EUC ko_KR-euc Korean UTF-8 ko_KR-UTF-8
+ISO-2022-KR ko_KR-iso2022-7 Korean UTF-8 ko_KR_UTF-8
+Korean Johap
+(KS C 5601-1987) ko_KR-johap Korean UTF-8 ko_KR-UTF-8
+Korean Johap
+(KS C 5601-1992) ko_KR-johap92 Korean UTF-8 ko_KR-UTF-8
+Korean UTF-8 ko_KR-UTF-8 Korean EUC ko_KR-euc
+Korean UTF-8 ko_KR-UTF-8 Korean Johap ko_KR-johap
+ (KS C 5601-1987)
+Korean UTF-8 ko_KR-UTF-8 Korean Johap ko_KR-johap92
+ (KS C 5601-1992)
+KOI8-R (Cyrillic) KOI8-R UCS-2 UCS-2
+KOI8-R (Cyrillic) KOI8-R UTF-8 UTF-8
+PC Kanji (SJIS) PCK UTF-8 UTF-8
+PC Kanji (SJIS) SJIS UTF-8 UTF-8
+UCS-2 UCS-2 KOI8-R (Cyrillic) KOI8-R
+UCS-2 UCS-2 UCS-4 UCS-4
+.fi
+.in -2
+.sp
+
+.sp
+.in +2
+.nf
+ CODE SET CONVERSIONS SUPPORTED
+ ------------------------------
+ FROM Code Set TO Code Set
+ Code FROM Target Code TO
+ Filename Filename
+ Element Element
+
+UCS-2 UCS-2 UTF-7 UTF-7
+UCS-2 UCS-2 UTF-8 UTF-8
+UCS-4 UCS-4 UCS-2 UCS-2
+UCS-4 UCS-4 UTF-16 UTF-16
+UCS-4 UCS-4 UTF-7 UTF-7
+UCS-4 UCS-4 UTF-8 UTF-8
+UTF-16 UTF-16 UCS-4 UCS-4
+UTF-16 UTF-16 UTF-8 UTF-8
+UTF-7 UTF-7 UCS-2 UCS-2
+UTF-7 UTF-7 UCS-4 UCS-4
+UTF-7 UTF-7 UTF-8 UTF-8
+UTF-8 UTF-8 ISO 8859-1 (Latin 1) 8859-1
+UTF-8 UTF-8 ISO 8859-2 (Latin 2) 8859-2
+UTF-8 UTF-8 ISO 8859-3 (Latin 3) 8859-3
+UTF-8 UTF-8 ISO 8859-4 (Latin 4) 8859-4
+UTF-8 UTF-8 ISO 8859-5 (Cyrillic) 8859-5
+UTF-8 UTF-8 ISO 8859-6 (Arabic) 8859-6
+UTF-8 UTF-8 ISO 8859-7 (Greek) 8859-7
+UTF-8 UTF-8 ISO 8859-8 (Hebrew) 8859-8
+UTF-8 UTF-8 ISO 8859-9 (Latin 5) 8859-9
+UTF-8 UTF-8 ISO 8859-10 (Latin 6) 8859-10
+UTF-8 UTF-8 Japanese EUC eucJP
+UTF-8 UTF-8 Chinese/PRC EUC gb2312
+ (GB 2312-1980)
+UTF-8 UTF-8 ISO-2022 iso2022
+UTF-8 UTF-8 KOI8-R (Cyrillic) KOI8-R
+UTF-8 UTF-8 PC Kanji (SJIS) PCK
+UTF-8 UTF-8 PC Kanji (SJIS) SJIS
+UTF-8 UTF-8 UCS-2 UCS-2
+UTF-8 UTF-8 UCS-4 UCS-4
+UTF-8 UTF-8 UTF-16 UTF-16
+UTF-8 UTF-8 UTF-7 UTF-7
+UTF-8 UTF-8 Chinese/PRC EUC zh_CN.euc
+ (GB 2312-1980)
+.fi
+.in -2
+.sp
+
+.sp
+.in +2
+.nf
+ CODE SET CONVERSIONS SUPPORTED
+ ------------------------------
+ FROM Code Set TO Code Set
+ Code FROM Target Code TO
+ Filename Filename
+ Element Element
+
+UTF-8 UTF-8 ISO 2022-CN zh_CN.iso2022-7
+UTF-8 UTF-8 Chinese/Taiwan Big5 zh_TW-big5
+UTF-8 UTF-8 Chinese/Taiwan EUC zh_TW-euc
+ (CNS 11643-1992)
+UTF-8 UTF-8 ISO 2022-TW zh_TW-iso2022-7
+Chinese/PRC EUC zh_CN.euc UTF-8 UTF-8
+(GB 2312-1980)
+ISO 2022-CN zh_CN.iso2022-7 UTF-8 UTF-8
+Chinese/Taiwan Big5 zh_TW-big5 UTF-8 UTF-8
+Chinese/Taiwan EUC zh_TW-euc UTF-8 UTF-8
+(CNS 11643-1992)
+ISO 2022-TW zh_TW-iso2022-7 UTF-8 UTF-8
+.fi
+.in -2
+.sp
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRThe library module filename
+.sp
+.LP
+In the conversion library, \fB/usr/lib/iconv\fR (see \fBiconv\fR(3C)), the
+library module filename is composed of two symbolic elements separated by the
+percent sign (\fB%\fR). The first symbol specifies the code set that is being
+converted; the second symbol specifies the \fItarget code\fR, that is, the code
+set to which the first one is being converted.
+
+.sp
+.LP
+In the conversion table above, the first symbol is termed the "FROM Filename
+Element". The second symbol, representing the target code set, is the "TO
+Filename Element".
+
+.sp
+.LP
+For example, the library module filename to convert from the \fIKorean\fR
+\fIEUC\fR code set to the \fIKorean\fR \fIUTF-8\fR code set is
+
+.sp
+.LP
+\fBko_KR-euc%ko_KR-UTF-8\fR
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/iconv/*.so\fR\fR
+.ad
+.RS 23n
+conversion modules
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR iconv (1),
+.BR iconv (3C),
+.BR iconv (7)
+.sp
+.LP
+Chernov, A., \fIRegistration of a Cyrillic Character Set\fR, RFC 1489, RELCOM
+Development Team, July 1993.
+.sp
+.LP
+Chon, K., H. Je Park, and U. Choi, \fIKorean Character Encoding for Internet
+Messages\fR, RFC 1557, Solvit Chosun Media, December 1993.
+.sp
+.LP
+Goldsmith, D., and M. Davis, \fIUTF-7 - A Mail-Safe Transformation Format of
+Unicode\fR, RFC 1642, Taligent, Inc., July 1994.
+.sp
+.LP
+Lee, F., \fIHZ - A Data Format for Exchanging Files of\fR \fIArbitrarily Mixed
+Chinese and ASCII characters\fR, RFC 1843, Stanford University, August 1995.
+.sp
+.LP
+Murai, J., M. Crispin, and E. van der Poel, \fIJapanese Character Encoding for
+Internet Messages\fR, RFC 1468, Keio University, Panda Programming, June 1993.
+.sp
+.LP
+Nussbacher, H., and Y. Bourvine, \fIHebrew Character Encoding for Internet
+Messages\fR, RFC 1555, Israeli Inter-University, Hebrew University, December
+1993.
+.sp
+.LP
+Ohta, M., \fICharacter Sets ISO-10646 and ISO-10646-J-1\fR, RFC 1815, Tokyo
+Institute of Technology, July 1995.
+.sp
+.LP
+Ohta, M., and K. Handa, \fIISO-2022-JP-2: Multilingual Extension of
+ISO-2022-JP\fR, RFC 1554, Tokyo Institute of Technology, December 1993.
+.sp
+.LP
+Reynolds, J., and J. Postel, \fIASSIGNED NUMBERS\fR, RFC 1700, University of
+Southern California/Information Sciences Institute, October 1994.
+.sp
+.LP
+Simonson, K., \fICharacter Mnemonics & Character Sets\fR, RFC 1345, Rationel
+Almen Planlaegning, June 1992.
+.sp
+.LP
+Spinellis, D., \fIGreek Character Encoding for Electronic Mail Messages\fR, RFC
+1947, SENA S.A., May 1996.
+.sp
+.LP
+The Unicode Consortium, \fIThe Unicode Standard\fR, Version 2.0, Addison Wesley
+Developers Press, July 1996.
+.sp
+.LP
+Wei, Y., Y. Zhang, J. Li, J. Ding, and Y. Jiang, \fIASCII Printable
+Characters-Based Chinese Character Encoding\fR \fIfor Internet Messages\fR, RFC
+1842, AsiaInfo Services Inc., Harvard University, Rice University, University
+of Maryland, August 1995.
+.sp
+.LP
+Yergeau, F., \fIUTF-8, a transformation format of Unicode and ISO 10646\fR, RFC
+2044, Alis Technologies, October 1996.
+.sp
+.LP
+Zhu, H., D. Hu, Z. Wang, T. Kao, W. Chang, and M. Crispin, \fIChinese Character
+Encoding for Internet Messages\fR, RFC 1922, Tsinghua University, China
+Information Technology Standardization Technical Committee (CITS), Institute
+for Information Industry (III), University of Washington, March 1996.
+.SH NOTES
+.sp
+.LP
+ISO 8859 character sets using Latin alphabetic characters are distinguished as
+follows:
+.sp
+.ne 2
+.na
+\fB\fBISO\fR \fB8859-1\fR \fB(Latin\fR \fB1)\fR\fR
+.ad
+.RS 25n
+For most West European languages, including:
+.sp
+
+.sp
+.TS
+l l l
+l l l .
+Albanian Finnish Italian
+Catalan French Norwegian
+Danish German Portuguese
+Dutch Galician Spanish
+English Irish Swedish
+Faeroese Icelandic
+.TE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBISO\fR \fB8859-2\fR \fB(Latin\fR \fB2)\fR\fR
+.ad
+.RS 25n
+For most Latin-written Slavic and Central European languages:
+.sp
+
+.sp
+.TS
+l l l
+l l l .
+Czech Polish Slovak
+German Rumanian Slovene
+Hungarian Croatian
+.TE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBISO\fR \fB8859-3\fR \fB(Latin\fR \fB3)\fR\fR
+.ad
+.RS 25n
+Popularly used for Esperanto, Galician, Maltese, and Turkish.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBISO\fR \fB8859-4\fR \fB(Latin\fR \fB4)\fR\fR
+.ad
+.RS 25n
+Introduces letters for Estonian, Latvian, and Lithuanian. It is an incomplete
+predecessor of ISO 8859-10 (Latin 6).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBISO\fR \fB8859-9\fR \fB(Latin\fR \fB5)\fR\fR
+.ad
+.RS 25n
+Replaces the rarely needed Icelandic letters in ISO 8859-1 (Latin 1) with the
+Turkish ones.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBISO\fR \fB8859-10\fR \fB(Latin\fR \fB6)\fR\fR
+.ad
+.RS 25n
+Adds the last Inuit (Greenlandic) and Sami (Lappish) letters that were not
+included in ISO 8859-4 (Latin 4) to complete coverage of the Nordic area.
+.RE
+
diff --git a/usr/src/man/man7/ieee802.11.7 b/usr/src/man/man7/ieee802.11.7
new file mode 100644
index 0000000000..a61dd8cf25
--- /dev/null
+++ b/usr/src/man/man7/ieee802.11.7
@@ -0,0 +1,140 @@
+'\" te
+.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH IEEE802.11 7 "Nov 28, 2006"
+.SH NAME
+ieee802.11 \- 802.11 kernel statistics
+.SH DESCRIPTION
+.sp
+.LP
+This page describes the kernel statistics that can be used to monitor
+attributes specific to the 802.11 physical layer. These statistics can be
+retrieved using \fBkstat\fR(8). Not all 802.11 devices will support all
+statistics.
+.sp
+.ne 2
+.na
+\fB\fBtx_frags\fR\fR
+.ad
+.RS 16n
+Count of data and management fragments transmitted.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrx_frags\fR\fR
+.ad
+.RS 16n
+Count of data and management fragments received.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrx_dups\fR\fR
+.ad
+.RS 16n
+Count of duplicate frames received. Duplicates are determined by the sequence
+control field.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmcast_tx\fR\fR
+.ad
+.RS 16n
+Count of broadcast and multicast frames transmitted.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmcast_rx\fR\fR
+.ad
+.RS 16n
+Count of broadcast and multicast frames received.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBtx_failed\fR\fR
+.ad
+.RS 16n
+Count of frames that could not be transmitted due to the retransmission limit
+being reached.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBtx_retrans\fR\fR
+.ad
+.RS 16n
+Count of frames successfully retransmitted after one or more retransmissions.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBtx_reretrans\fR\fR
+.ad
+.RS 16n
+Count of frames successfully retransmitted after more than one retransmission.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrts_success\fR\fR
+.ad
+.RS 16n
+Count of times a \fBCTS\fR was received in response to an \fBRTS\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrts_failure\fR\fR
+.ad
+.RS 16n
+ Count of times a \fBCTS\fR was not received in response to an \fBRTS\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBack_failure\fR\fR
+.ad
+.RS 16n
+Count of times an \fBACK\fR was expected but was not received.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfcs_errors\fR\fR
+.ad
+.RS 16n
+Count of frames received with \fBFCS\fR errors.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBwep_errors\fR\fR
+.ad
+.RS 16n
+Count of frames received with the \fBWEP\fR bit set but that either should not
+have been encrypted or that were discarded due to \fBWEP\fR not being
+supported.
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR kstat (8)
diff --git a/usr/src/man/man7/ieee802.3.7 b/usr/src/man/man7/ieee802.3.7
new file mode 100644
index 0000000000..f69db544a1
--- /dev/null
+++ b/usr/src/man/man7/ieee802.3.7
@@ -0,0 +1,555 @@
+.\" Copyright 2014 Garrett D'Amore <garrett@damore.org>
+.\" Copyright 2016 Joyent, Inc.
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\" notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\" notice, this list of conditions and the following disclaimer in the
+.\" documentation and/or other materials provided with the distribution.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER AND CONTRIBUTORS
+.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+.\" LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+.\" FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+.\" COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
+.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
+.\" USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
+.\" ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE
+.\"
+.Dd "Nov 23, 2016"
+.Dt IEEE802.3 7
+.Os
+.Sh NAME
+.Nm ieee802.3
+.Nd IEEE 802.3 Ethernet parameters and statistics
+.Sh DESCRIPTION
+The IEEE 802.3 standard specifies the details for Ethernet
+networking.
+This page describes the various statistics and tunables that device drivers
+supporting Ethernet commonly offer.
+.
+Note that not every device or driver supports every one of these
+values, and many devices offer additional statistics and tunables that
+are specific to that hardware.
+See the device driver's documentation for those specific details.
+.
+.Lp
+Values that are statistics are visible
+.Xr kstat 8 ,
+whereas properties are visible using the
+.Xr dladm 8
+.Sy show-linkprop
+subcommand.
+Tunables are properties that can be changed using the
+.Xr dladm 8
+.Sy set-linkprop
+subcommand.
+A more useful summary of current operational state can be seen with the
+.Xr dladm 8
+.Sy show-ether
+subcommand.
+.
+.Ss Statistics
+The following statistics are accessible with
+.Xr kstat 8 .
+Note that some statistics are available in both 32- and 64-bit counters,
+in which case the name of the 64 bit statistic will be the same as the
+32-bit, but with
+.Dq Sy 64
+appended.
+For example,
+.Sy ipackets64
+is the 64-bit version of the
+.Sy ipackets
+statistic.
+These are indicated with the special suffix
+.Op Sy 64
+in the table below.
+.
+.Bl -tag -width tx_late_collisions
+.It Sy adv_cap_1000fdx
+Advertises 1000 Mbps full-duplex support.
+.It Sy adv_cap_1000hdx
+Advertises 1000 Mbps half-duplex support.
+.It Sy adv_cap_100fdx
+Advertises 100 Mbps full-duplex support.
+.It Sy adv_cap_100gfdx
+Advertises 100 Gbps support.
+.It Sy adv_cap_100hdx
+Advertises 100 Mbps half-duplex support.
+.It Sy adv_cap_100T4
+Advertises 100BASE-T4 support.
+.It Sy adv_cap_10fdx
+Advertises 10 Mbps full-duplex support.
+.It Sy adv_cap_10gfdx
+Advertises 10 Gbps support.
+.It Sy adv_cap_10hdx
+Advertises 10 Mbps half-duplex support.
+.It Sy adv_cap_2500fdx
+Advertises 2.5 Gbps support.
+.It Sy adv_cap_50gfdx
+Advertises 50 Gbps support.
+.It Sy adv_cap_40gfdx
+Advertises 40 Gbps support.
+.It Sy adv_cap_25gfdx
+Advertises 25 Gbps support.
+.It Sy adv_cap_5000fdx
+Advertises 5 Gbps support.
+.It Sy adv_cap_autoneg
+Advertises auto-negotiation support.
+.It Sy adv_cap_asmpause
+Advertises asymmetric flow control support.
+.It Sy adv_cap_pause
+Advertises flow control support.
+.It Sy adv_rem_fault
+Remote fault status sent to peer.
+.It Sy align_errors
+Mis-aligned frames received.
+.It Sy brdcstrcv
+Broadcast frames received.
+.It Sy brdcstxmt
+Broadcast frames transmitted.
+.It Sy cap_1000fdx
+Device supports 1000 Mbps full-duplex.
+.It Sy cap_1000hdx
+Device supports 1000 Mbps half-duplex.
+.It Sy cap_100fdx
+Device supports 100 Mbps full-duplex.
+.It Sy cap_100gfdx
+Device supports 100 Gbps.
+.It Sy cap_100hdx
+Device supports 100 Mbps half-duplex.
+.It Sy cap_100T4
+Device supports 100BASE-T4.
+.It Sy cap_10fdx
+Device supports 10 Mbps full-duplex.
+.It Sy cap_10gfdx
+Device supports 10 Gpbs.
+.It Sy cap_10hdx
+Device supports 10 Mbps half-duplex.
+.It Sy cap_2500fdx
+Device supports 2.5 Gbps.
+.It Sy cap_50gfdx
+Device supports 50 Gpbs.
+.It Sy cap_40gfdx
+Device supports 40 Gpbs.
+.It Sy cap_25gfdx
+Device supports 25 Gpbs.
+.It Sy cap_5000fdx
+Device supports 5 Gbps.
+.It Sy cap_asmpause
+Device supports asymmetric flow control.
+.It Sy cap_autoneg
+Device supports auto-negotiation.
+.It Sy cap_pause
+Device supports symmetric flow control.
+.It Sy cap_rem_fault
+Device supports remote fault notification.
+.It Sy carrier_errors
+Frames dropped due to loss of link.
+.It Sy collisions
+Collisions.
+.It Sy defer_xmts
+Transmits deferred due to link activity.
+.It Sy ex_collisions
+Frames dropped due to too many collisions.
+.It Sy fcs_errors
+Frames received with bad frame checksum.
+.It Sy first_collisions
+Frames with at least one collision.
+.It Sy ierrors
+Receive errors.
+.It Sy ifspeed
+Link speed in bits per second.
+.It Sy ipackets Ns Op Sy 64
+Frames received successfully.
+.It Sy jabber_errors
+Jabber errors.
+.It Sy link_asmpause
+Asymmetric flow control; works together with
+.Sy link_pause .
+See the description for it below.
+.It Sy link_autoneg
+Link was auto-negotiated.
+.It Sy link_duplex
+Link duplex status, values as follows:
+.Bl -column "0" infinity
+.It 0 Ta Unknown.
+.It 1 Ta Half-duplex.
+.It 2 Ta Full-duplex.
+.El
+.It Sy link_pause
+Link flow control available; works together with
+.Sy link_asmpause .
+The meanings of these bits are:
+.Bl -column "pause" "asmpause"
+.It Sy pause Ta Sy asmpause Ta Sy meaning
+.It 0 Ta 0 Ta "No flow control."
+.It 1 Ta 0 Ta Symmetric flow control.
+.It 0 Ta 1 Ta Honor received pause frames.
+.It 1 Ta 1 Ta Send pause frames when congested.
+.El
+.It Sy link_state
+Link state; 0 for down, 1 for up.
+.It Sy link_up
+Link is up if 1.
+.It Sy lp_cap_1000fdx
+Peer supports 1000 Mbps full-duplex.
+.It Sy lp_cap_1000hdx
+Peer supports 1000 Mbps half-duplex.
+.It Sy lp_cap_100fdx
+Peer supports 100 Mbps full-duplex.
+.It Sy lp_cap_100gfdx
+Peer supports 100 Gbps full-duplex.
+.It Sy lp_cap_100hdx
+Peer supports 100 Mbps half-duplex.
+.It Sy lp_cap_100T4
+Peer supports 100BASE-T4.
+.It Sy lp_cap_10fdx
+Peer supports 10 Mbps full-duplex.
+.It Sy lp_cap_10gfdx
+Peer supports 10 Gbps.
+.It Sy lp_cap_10hdx
+Peer supports 10 Mbps half-duplex.
+.It Sy lp_cap_2500fdx
+Peer supports 2.5 Gbps.
+.It Sy lp_cap_5000fdx
+Peer supports 5 Gbps.
+.It Sy lp_cap_50gfdx
+Peer supports 50 Gbps.
+.It Sy lp_cap_40gfdx
+Peer supports 40 Gbps.
+.It Sy lp_cap_25gfdx
+Peer supports 25 Gbps.
+.It Sy lp_cap_asmpause
+Peer supports asymmetric flow control.
+.It Sy lp_cap_autoneg
+Peer supports auto-negotiation.
+.It Sy lp_cap_pause
+Peer advertises flow control support.
+.It Sy lp_rem_fault
+Peer announces a remote fault.
+.It Sy macrv_errors
+Generic receive errors.
+.It Sy macxmt_errors
+Generic transmit errors.
+.It Sy multi_collisions
+Frames with more than one collision.
+.It Sy multircv
+Multicast frames received.
+.It Sy multixmt
+Multicast frames transmitted.
+.It Sy norcvbuf
+Receive frames dropped due to lack of resources.
+.It Sy noxmtbuf
+Transmit frames dropped due to lack of resources.
+.It Sy obytes Ns Op Sy 64
+Bytes (octets) transmitted successfully.
+.It Sy oerrors
+Transmit errors.
+.It Sy oflo
+Overflow errors.
+.It Sy opackets Ns Op Sy 64
+Frames successfully transmitted.
+.It Sy promisc
+Interface is in promiscuous mode.
+.It Sy rbytes Ns Op Sy 64
+Bytes (octets) received successfully.
+.It Sy runt_errors
+Frames received that were too short.
+.It Sy sqe_errors
+Squelch errors.
+.It Sy toolong_errors
+Frames received that were too long.
+.It Sy tx_late_collisions
+Late collisions on transmit.
+.It Sy uflo
+Underflow errors.
+.It Sy unknowns
+Frames received with no local recipient.
+.It Sy xcvr_addr
+Transceiver address.
+.It Sy xcvr_id
+Transceiver vendor and device ID.
+.It Sy xcvr_inuse
+Identifies the type of transceiver in use.
+Values are as follows:
+.Bl -column "0"
+.It 0 Ta Unknown or undefined.
+.It 1 Ta None.
+.It 2 Ta 10 Mbps
+.It 3 Ta 100BASE-T4
+.It 4 Ta 100BASE-X
+.It 5 Ta 100BASE-T2
+.It 6 Ta 1000BASE-X
+.It 7 Ta 1000BASE-T
+.El
+.El
+.Ss Properties
+The following parameters are accessible with
+.Xr dladm 8 .
+Some of these are normally read-only.
+Other properties that are not specific to IEEE 802.3 / Ethernet links are also
+available via
+.Xr dladm 8 ,
+and are documented in its man page rather than here.
+.
+.Bl -tag -width adv_1000hdx_cap
+.It Sy speed
+Link speed, in Mbps per second (dladm only).
+.It Sy duplex
+Link duplex, either "full" or "half".
+.It Sy state
+Link state, either "up" or "down".
+.It Sy mtu
+Maximum link frame size in bytes.
+See
+.Sx Jumbo Frames .
+.It Sy flowctrl
+Flow control setting, one of \(dqno\(dq, \(dqtx\(dq, \(dqrx\(dq, or \(dqbi\(dq.
+See
+.Sx Flow Control .
+.It Sy adv_10gfdx_cap
+Advertising 10 Gbps support.
+.It Sy en_10gfdx_cap
+Enable 10 Gbps support.
+.
+.It Sy adv_1000fdx_cap
+Advertising 1000 Mbps full-duplex support.
+.It Sy en_1000fdx_cap
+Enable 1000 Mbps full-duplex.
+.
+.It Sy adv_1000hdx_cap
+Advertising 1000 Mbps half-duplex support.
+.It Sy en_1000hdx_cap
+Enable 1000 Mbps half-duplex.
+.
+.It Sy adv_100fdx_cap
+Advertising 100 Mbps full-duplex support.
+.It Sy en_100fdx_cap
+Enable 100 Mbps full-duplex.
+.
+.It Sy adv_100hdx_cap
+Advertising 100 Mbps half-duplex support.
+.It Sy en_100hdx_cap
+Enable 100 Mbps half-duplex.
+.
+.It Sy adv_10fdx_cap
+Advertising 10 Mbps full-duplex support.
+.It Sy en_10fhdx_cap
+Enable 100 Mbps full-duplex.
+.
+.It Sy adv_10hdx_cap
+Advertising 10 Mbps half-duplex support.
+.It Sy en_10fhdx_cap
+Enable 10 Mbps half-duplex.
+.El
+.Ss Auto-negotiation
+With modern devices, auto-negotiation is normally handled automatically.
+With 10 Gbps and 1000 Gbps, it is mandatory (10GBASE-T also requires full-duplex
+operation).
+It is also
+.Em strongly
+recommended for use whenever possible; without auto-negotiation the link
+will usually not operate unless both partners are configured to use the
+same link mode.
+.Lp
+Auto-negotiation, when enabled, takes place by comparing the local capabilities
+that have been advertised (which must also be supported by the local device),
+with the capabilities that have been advertised by the link partner (peer).
+.
+The first of the following modes that is supported by both partners is
+selected as the link negotiation result:
+.Lp
+.Bl -bullet -offset indent -compact
+.It
+10 Gbps (10gfdx)
+.It
+1000 Mbps full-duplex (1000fdx)
+.It
+1000 Mbps half-duplex (1000hdx)
+.It
+100 Mbps full-duplex (100fdx)
+.It
+100BASE-T4 (100T4)
+.It
+100 Mbps half-duplex (100hdx)
+.It
+10 Mbps full-duplex (10fdx)
+.It
+10 Mbps half-duplex (10hdx)
+.El
+.Lp
+Advertisement of these modes can be enabled or disabled by setting the
+appropriate
+.Sy en_
+property in
+.Xr dladm 8 .
+.Lp
+Auto-negotiation may also be disabled, by setting the
+.Sy adv_autoneg_cap
+property to 0.
+In this case, the highest enabled link mode (using the above list) is
+.Dq forced
+for the link.
+.Ss Flow Control
+Link layer flow control is available on many modern devices, and is mandatory
+for operation at 10 Gbps.
+It requires that the link be auto-negotiated, and that the link be full-duplex,
+in order to function.
+.Lp
+Flow control is applied when a receiver becomes congested.
+In this case the receiver can send a special frame, called a pause frame, to
+request its partner cease transmitting for a short period of time.
+.Lp
+Flow control can be said to be either symmetric, in which case both partners
+can send and honor pause frames, or asymmetric, in which case one partner
+may not transmit pause frames.
+.Lp
+The flow control mode used is driven by the
+.Sy flowctrl
+property.
+It has the following meanings:
+.Lp
+.Bl -column -compact -offset indent Dv
+.It \(dqno\(dq Ta Neither send, nor honor pause frames.
+.It \(dqtx\(dq Ta Send pause frames, provided that the peer can support them,
+but do not honor them.
+.It \(dqrx\(dq Ta Receive and honor pause frames.
+.It \(dqbi\(dq Ta Both send and receive (and honor) pause frames.
+.El
+.Lp
+The statistics for flow control
+.Po Sy adv_cap_pause , adv_cap_asmpause , lp_cap_pause , lp_cap_asmpause ,
+.Sy link_pause ,
+and
+.Sy link_asmpause
+.Pc
+are based on the properties exchanged in the auto-negotiation and are
+confusing as a result.
+Administrators are advised to use the
+.Sy flowctrl
+property instead.
+.
+.Ss Jumbo Frames
+The IEEE 802.3 standard specifies a standard frame size of 1518 bytes,
+which includes a 4-byte frame checksum, a 14-byte header, and 1500 bytes
+of payload.
+Most devices support larger frame sizes than this, and when all possible parties
+on the same local network can do so, it may be advantageous to choose a larger
+frame size; 9000 bytes is the most common option, as it allows a transport layer
+to convey 8 KB (8192) of data, while leaving room for various link, network, and
+transport layer headers.
+.Lp
+Note that the use of frames carrying more than 1500 bytes of payload is
+not standardized, even though it is common practice.
+.Lp
+The
+.Sy mtu
+property is used to configure the frame size.
+Note that this is the size of the payload, and excludes the preamble, checksum,
+and header.
+It also excludes the tag for devices that support tagging (see
+.Sx Virtual LANs
+below).
+.Lp
+Care must be taken to ensure that all communication parties agree on the same
+size, or communication may cease to function properly.
+.Lp
+Note that the
+.Sy mtu
+property refers to the link layer property.
+It may be necessary to configure upper layer protocols such as IP to use a
+different size when this changes.
+See
+.Xr ifconfig 8 .
+.
+.Ss Virtual LANs
+Most devices support virtual LANs (and also priority control tagging) though
+the use of a 4-byte tag inserted between the frame header and payload.
+The details of configuration of this are covered in the
+.Xr dladm 8
+manual.
+.
+.Ss Data Link Provider Interface (DLPI) Details
+.
+The correct method for applications to access Ethernet devices directly
+is to use the DLPI.
+See
+.Xr dlpi 4P
+and
+.Xr libdlpi 3LIB
+for further information.
+.Lp
+The following DLPI parameters are presented to applications.
+.Bl -column -offset indent "Broadcast address"
+.It Maximum SDU Ta 1500 (or larger, as determined by the Sy mtu No property.)
+.It Minimum SDU Ta 0
+.It Address length Ta 6
+.It MAC type Ta Dv DL_ETHER
+.It SAP length Ta \(mi2
+.It Service mode Ta Dv DL_CLDLS
+.It Broadcast address Ta Li ff:ff:ff:ff:ff:ff No (6 bytes with all bits set)
+.El
+.Lp
+Note that if the application binds to SAP of 0, then standard IEEE 802.3
+mode is assumed and the frame length is stored in place of the Ethernet type.
+Frames that arrive with the type field set to 1500 or less, are delivered
+to applications that bind to SAP 0.
+.Lp
+Ethernet drivers on the support both DLPI style 1 and style 2 operation.
+Additionally, it is possible to configure provide
+.Dq vanity
+names to interfaces using the
+.Xr dladm 8
+.Sy rename-link
+subcommand.
+Such vanity names are only accessible using DLPI style 1.
+.Sh NOTES
+There may be other mechanisms available to configure link layer properties.
+Historically the
+.Xr ndd 8
+command, and
+.Xr driver.conf 5
+files could be used to do this.
+These methods are deprecated in favor of
+.Xr dladm 8
+properties.
+.
+.Sh INTERFACE STABILITY
+When present, the statistics and properties presented here
+are
+.Sy Committed .
+However, note that not every Ethernet device supports all of these,
+and some devices may support additional statistics and properties.
+.Lp
+The DLPI and IEEE 802.3 itself are
+.Sy Standard .
+.Sh SEE ALSO
+.Xr libdlpi 3LIB ,
+.Xr dlpi 4P ,
+.Xr driver.conf 5 ,
+.Xr dladm 8 ,
+.Xr ifconfig 8 ,
+.Xr kstat 8 ,
+.Xr ndd 8 ,
+.Xr netstat 8
+.Rs
+.%T IEEE 802.3: Ethernet
+.%Q IEEE Standards Association
+.Re
+.Rs
+.%B Data Link Provider Interface (DLPI)
+.%Q The Open Group
+.%D 1997
+.Re
+.Rs
+.%B STREAMs Programming Guide
+.%Q Sun Microsystems, Inc.
+.%D January 2005
+.Re
diff --git a/usr/src/man/man7/inotify.7 b/usr/src/man/man7/inotify.7
new file mode 100644
index 0000000000..13ea10cf2b
--- /dev/null
+++ b/usr/src/man/man7/inotify.7
@@ -0,0 +1,305 @@
+'\" te
+.\" Copyright (c) 2014, Joyent, Inc. All Rights Reserved.
+.\" This file and its contents are supplied under the terms of the
+.\" Common Development and Distribution License ("CDDL"), version 1.0.
+.\" You may only use this file in accordance with the terms of version
+.\" 1.0 of the CDDL.
+.\"
+.\" A full copy of the text of the CDDL should have accompanied this
+.\" source. A copy of the CDDL is also available via the Internet at
+.\" http://www.illumos.org/license/CDDL.
+.TH INOTIFY 7 "Sep 17, 2014"
+.SH NAME
+inotify \- Linux-compatible file event notification facility
+.SH SYNOPSIS
+
+.LP
+.nf
+#include <sys/inotify.h>
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+
+\fBinotify\fR is a facility for receiving file system events on specified
+files or directories. When monitoring a directory, \fBinotify\fR can be
+used to retrieve events not only on the directory, but also on any files
+that the directory contains. \fBinotify\fR originated with Linux, and
+this facility is designed to be binary-compatible with the Linux facility,
+including the following interfaces:
+
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBinotify_init\fR(3C) creates an \fBinotify\fR instance, returning a file
+descriptor associated with the in-kernel event queue.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBinotify_init1\fR(3C) also creates an \fBinotify\fR instance, but allows
+for a flags argument that controls some attributes of the returned file
+descriptor.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBinotify_add_watch\fR(3C) allows a watch of a particular file or directory
+to be added to a watch list associated with the specified \fBinotify\fR
+instance. \fBinotify_add_watch\fR(3C) returns a watch descriptor that will
+be reflected in the \fIwd\fR member of the \fIinotify_event\fR structure
+returned via a \fBread\fR(2) of the instance.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBinotify_rm_watch\fR(3C) removes the watch that corresponds to the specified
+watch descriptor.
+.RE
+
+When all file descriptors referring to a particular \fBinotify\fR instance
+are closed, the instance and all watches associated with that instance are
+freed.
+
+To consume events on an \fBinotify\fR instance, an application should
+issue a \fBread\fR(2) to the instance. If no events are available
+(and the \fBinotify\fR instance has not been explicitly made non-blocking
+via \fBinotify_init1\fR(3C)) the \fBread\fR(2) will block until a
+watched event occurs. If and when events are available, \fBread\fR(2) will
+return an array of the following structures:
+
+.sp
+.in +2
+.nf
+struct inotify_event {
+ int wd; /* watch descriptor */
+ uint32_t mask; /* mask of event */
+ uint32_t cookie; /* cookie for associating renames */
+ uint32_t len; /* size of name field */
+ char name[]; /* optional name */
+};
+.fi
+.in -2
+
+\fIwd\fR contains the watch descriptor that corresponds to the event,
+as returned by \fBinotify_add_watch\fR(3C).
+
+\fImask\fR is a bitwise \fBOR\fR of event masks (see below) that
+describes the event.
+
+\fIcookie\fR is an opaque value that can be used to associate different
+events into a single logical event. In particular, it allows consumers to
+associate \fBIN_MOVED_FROM\fR events with subsequent \fBIN_MOVED_TO\fR
+events.
+
+\fIlen\fR denotes the length of the \fIname\fR field, including any padding
+required for trailing null bytes and alignment. The size of the entire
+event is therefore the size of the \fIinotify_event\fR structure plus the
+value of \fIlen\fR.
+
+\fIname\fR contains the name of the file associated with the event, if any.
+This field is only present when the watched entity is a directory and
+the event corresponds to a file that was contained by the watched directory
+(though see \fBNOTES\fR and \fBWARNINGS\fR for details and limitations).
+When present, \fIname\fR is null terminated, and may contain additional
+zero bytes
+to pad for alignment. (The length of this field -- including any bytes
+for alignment -- is denoted by the \fIlen\fR field.)
+
+.SS "Events"
+
+The events that can be generated on a watched entity are as follows:
+
+.sp
+.in +2
+.TS
+c c
+l l .
+\fIEvent\fR \fIDescription\fR
+\fBIN_ACCESS\fR File/directory was accessed
+\fBIN_ATTRIB\fR File/directory attributes were changed
+\fBIN_CLOSE_WRITE\fR File/directory opened for writing was closed
+\fBIN_CLOSE_NOWRITE\fR File/directory not opened for writing was closed
+\fBIN_CREATE\fR File/directory created in watched directory
+\fBIN_DELETE\fR File/directory deleted from watched directory
+\fBIN_DELETE_SELF\fR Watched file/directory was deleted
+\fBIN_MODIFY\fR File/directory was modified
+\fBIN_MODIFY_SELF\fR Watched file/directory was modified
+\fBIN_MOVED_FROM\fR File was renamed from entity in watched directory
+\fBIN_MOVED_TO\fR File was renamed to entity in watched directory
+\fBIN_OPEN\fR File/directory was opened
+.TE
+.in -2
+
+Of these, all events except \fBIN_MOVE_SELF\fR and \fBIN_DELETE_SELF\fR
+can refer to either the watched entity or (if the watched entity
+is a directory) a file or directory contained by the watched directory.
+(See \fBNOTES\fR and \fBWARNINGS\fR, below for details on this
+mechanism and its limitations.)
+If the event corresponds to a contained entity,
+\fIname\fR will be set to the name of the affected
+entity.
+
+In addition to speciyfing events of interest, watched events may
+be modified by potentially setting any of the following when adding a
+watch via \fBinotify_add_watch\fR(3C):
+
+.sp
+.ne 2
+.na
+\fBIN_DONT_FOLLOW\fR
+.ad
+.RS 12n
+Don't follow the specified pathname if it is a symbolic link.
+.RE
+
+.sp
+.ne 2
+.na
+\fBIN_EXCL_UNLINK\fR
+.ad
+.RS 12n
+If watching a directory and a contained entity becomes unlinked, cease
+generating events for that entity. (By default, contained entities will
+continue to generate events on their former parent directory.)
+.RE
+
+.sp
+.ne 2
+.na
+\fBIN_MASK_ADD\fR
+.ad
+.RS 12n
+If the specified pathname is already being watched, the specified events
+will be added to the watched events instead of the default behavior of
+replacing them. (If one
+may forgive the editorializing, this particular interface gewgaw
+seems entirely superfluous, and a canonical example of
+feasibility trumping wisdom.)
+.RE
+
+.sp
+.ne 2
+.na
+\fBIN_ONESHOT\fR
+.ad
+.RS 12n
+Once an event has been generated for the watched entity, remove the
+watch from the watch list as if \fBinotify_rm_watch\fR(3C) had been called
+on it (thereby inducing an \fBIN_IGNORED\fR event).
+.RE
+
+.sp
+.ne 2
+.na
+\fBIN_ONLYDIR\fR
+.ad
+.RS 12n
+Only watch the specified pathname if it is a directory.
+.RE
+
+In addition to the specified events, the following bits may be specified
+in the \fImask\fR field as returned from \fBread\fR(2):
+
+.sp
+.ne 2
+.na
+\fBIN_IGNORED\fR
+.ad
+.RS 12n
+A watch was removed explicitly (i.e, via \fBinotify_rm_watch\fR(3C)) or
+implicitly (e.g., because \fBIN_ONESHOT\fR was set or because the watched
+entity was deleted).
+.RE
+
+.sp
+.ne 2
+.na
+\fBIN_ISDIR\fR
+.ad
+.RS 12n
+The entity inducing the event is a directory.
+.RE
+
+.sp
+.ne 2
+.na
+\fBIN_Q_OVERFLOW\fR
+.ad
+.RS 12n
+The event queue exceeded the maximum event queue length per instance.
+(By default, this is 16384, but it can be tuned by setting
+\fBinotify_maxevents\fR via \fB/etc/system\fR.)
+.RE
+
+.sp
+.ne 2
+.na
+\fBIN_UNMOUNT\fR
+.ad
+.RS 12n
+The filesystem containing the watched entity was unmounted.
+.RE
+
+.sp
+.SH NOTES
+.sp
+.LP
+
+\fBinotify\fR instances can be monitored via \fBpoll\fR(2),
+\fBport_get\fR(3C), \fBepoll\fR(7), etc.
+
+The event queue associated with an \fBinotify\fR instance is serialized
+and ordered: events will be placed on the tail of the queue in the order
+that they occur.
+
+If at the time an event occurs the tail of the event queue is identical
+to the newly received event, the newly received event will be dropped,
+effectively coalescing the two events.
+
+When watching a directory and receieving events on contained elements
+(i.e., a contained file or subdirectory), note that the information
+received in the \fIname\fR field may be stale: the file may have been
+renamed between the event and its processing. If a file has been unlinked
+(and if \fBIN_EXCL_UNLINK\fR has not been set),
+the \fIname\fR will reflect the last name that resolved to the file.
+If a new file is created in the same directory with the old name, events
+on the new file and the old (unlinked) file will become undistinguishable.
+
+The number of bytes that are available to be read on an \fBinotify\fR
+instance can be determined via a \fBFIONREAD\fR \fBioctl\fR(2).
+
+.sp
+.SH WARNINGS
+.sp
+.LP
+
+While a best effort has been made to mimic the Linux semantics, there
+remains a fundamental difference with respect to hard links: on Linux,
+if a file has multiple hard links to it, a notification on a watched
+directory or file will be received if and only if that event was received
+via the watched path. For events that are induced by open files
+(such as \fBIN_MODIFY\fR), these semantics seem peculiar: the watched
+file is in fact changing, but because it is not changing via the watched
+path, no notification is received. By contrast, the implementation here
+will always yield an event in this case -- even if the event was induced
+by an \fBopen\fR(2) via an unwatched path. If an event occurs within a
+watched directory on a file for which there exist multiple hard links within
+the same (watched) directory, the event's \fIname\fR will correspond to one
+of the links to the file. If multiple hard links exist to the
+same file in the same watched directory and one of the links is removed,
+notifications may not necessarily continue to be received for the file,
+despite the (remaining) link in the watched directory; users of
+\fBinotify\fR should exercise extreme caution when watching directories
+that contain files with multiple hard links in the same directory.
+
+.SH SEE ALSO
+.sp
+.LP
+\fBinotify_init\fR(3C), \fBinotify_init1\fR(3C), \fBinotify_add_watch\fR(3C),
+\fBinotify_rm_watch\fR(3C), \fBport_get\fR(3C), \fBepoll\fR(7)
diff --git a/usr/src/man/man7/ipfilter.7 b/usr/src/man/man7/ipfilter.7
new file mode 100644
index 0000000000..ff960929d2
--- /dev/null
+++ b/usr/src/man/man7/ipfilter.7
@@ -0,0 +1,341 @@
+'\" te
+.\" To view license terms, attribution, and copyright for IP Filter, the default path is /usr/lib/ipf/IPFILTER.LICENCE. If the Solaris operating environment has been installed anywhere other than the default, modify the given path to access the file at the installed
+.\" location.
+.\" Portions Copyright (c) 2009, Sun Microsystems Inc. All Rights Reserved.
+.\" Portions Copyright (c) 2014, Joyent, Inc. All Rights Reserved.
+.TH IPFILTER 7 "Oct 7, 2014"
+.SH NAME
+ipfilter \- IP packet filtering software
+.SH DESCRIPTION
+.LP
+IP Filter is software that provides packet filtering capabilities on a Solaris
+system. On a properly setup system, it can be used to build a firewall.
+.sp
+.LP
+Solaris IP Filter is installed with the Solaris operating system. However,
+packet filtering is not enabled by default. See \fBipf\fR(8) for a procedure
+to enable and activate the IP Filter feature.
+.SH HOST-BASED FIREWALL
+.LP
+To simplify IP Filter configuration management, a firewall framework is created
+to allow users to configure IP Filter by expressing firewall policy at system
+and service level. Given the user-defined firewall policy, the framework
+generates a set of IP Filter rules to enforce the desired system behavior.
+Users specify system and service firewall policies that allow or deny network
+traffic from certain hosts, subnets, and interface(s). The policies are
+translated into a set of active IPF rules to enforce the specified firewall
+policies.
+.LP
+Note -
+.sp
+.RS 2
+Users can still specify their own ipf rule file if they choose not to take
+advantage of the framework. See \fBipf\fR(8) and \fBipf\fR(5).
+.RE
+.SS "Model"
+.LP
+This section describes the host-based firewall framework. See svc.ipfd(8) for
+details on how to configure firewall policies.
+.sp
+.LP
+In a given zone, a three-layer approach with different precedence levels helps
+the user achieve the desired behaviors.
+.sp
+.ne 2
+.na
+\fBGlobal Default\fR
+.ad
+.sp .6
+.RS 4n
+Global Default - Default system-wide firewall policy. This policy is
+automatically inherited by all services unless services modify their firewall
+policy.
+.RE
+
+.sp
+.ne 2
+.na
+\fBNetwork Services\fR
+.ad
+.sp .6
+.RS 4n
+Higher precedence than Global Default. A service's policy allows/disallows
+traffic to its specific ports, regardless of Global Default policy.
+.RE
+
+.sp
+.ne 2
+.na
+\fBGlobal Override\fR
+.ad
+.sp .6
+.RS 4n
+Another system-wide policy that takes precedence over the needs of specific
+services in Network Services layer.
+.RE
+
+.sp
+.in +2
+.nf
+Global Override
+ |
+ |
+Network Services
+ |
+ |
+Global Default
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+A firewall policy includes a firewall mode and an optional set of network
+sources. Network sources are IP addresses, subnets, and local network
+interfaces, from all of which a system can receive incoming traffic. The basic
+set of firewall modes are:
+.sp
+.ne 2
+.na
+\fBNone\fR
+.ad
+.sp .6
+.RS 4n
+No firewall, allow all incoming traffic.
+.RE
+
+.sp
+.ne 2
+.na
+\fBDeny\fR
+.ad
+.sp .6
+.RS 4n
+Allow all incoming traffic but deny from specified source(s).
+.RE
+
+.sp
+.ne 2
+.na
+\fBAllow\fR
+.ad
+.sp .6
+.RS 4n
+Deny all incoming traffic but allow from specified source(s).
+.RE
+
+.SS "Layers in Detail"
+.LP
+The first system-wide layer, Global Default, defines a firewall policy that
+applies to \fBany\fR incoming traffic, for example, allowing or blocking all
+traffic from an IP address. This makes it simple to have a policy that blocks
+all incoming traffic or all incoming traffic from unwanted source(s).
+.sp
+.LP
+The Network Services layer contains firewall policies for local programs that
+provide service to remote clients, for example, \fBtelnetd\fR, \fBsshd\fR, and
+\fBhttpd\fR. Each of these programs, a network service, has its own firewall
+policy that controls access to its service. Initially, a service's policy is
+set to inherit Global Default policy, a "Use Global Default" mode. This makes
+it simple to set a single policy, at the Global Default layer, that can be
+inherited by all services.
+.sp
+.LP
+When a service's policy is different from Global Default policy, the service's
+policy has higher precedence. If Global Default policy is set to block all
+traffic from a subnet, the SSH service could be configured to allow access from
+certain hosts in that subnet. The set of all policies for all network services
+comprises the Network Service layer.
+.sp
+.LP
+The second system-wide layer, Global Override, has a firewall policy that also
+applies to any incoming network traffic. This policy has highest precedence and
+overrides policies in the other layers, specifically overriding the needs of
+network services. The example is when it is desirable to block known malicious
+source(s) regardless of services' policies.
+.SS "User Interaction"
+.LP
+This framework leverages IP Filter functionality and is active only when
+\fBsvc:/network/ipfilter\fR is enabled and inactive when \fBnetwork/ipfilter\fR
+is disabled. Similarly, a network service's firewall policy is only active when
+that service is enabled and inactive when the service is disabled. A system
+with an active firewall has IP Filter rules for each running/enabled network
+service and system-wide policy(s) whose firewall mode is not \fBNone\fR.
+.sp
+.LP
+A user configures a firewall by setting the system-wide policies and policy for
+each network service. See svc.ipfd(8) on how to configure a firewall policy.
+.sp
+.LP
+The firewall framework composes of policy configuration and a mechanism to
+generate IP Filter rules from the policy and applying those rules to get the
+desired IP Filter configuration. A quick summary of the design and user
+interaction:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+system-wide policy(s) are stored in \fBnetwork/ipfilter\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+network services' policies are stored in each SMF service
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+a user activates a firewall by enabling \fBnetwork/ipfilter\fR (see
+\fBipf\fR(8))
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+a user activates/deactivate a service's firewall by enabling/disabling that
+network service
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+changes to system-wide or per-service firewall policy results in an update to
+the system's firewall rules
+
+.SS "In-Zone and Global Zone Controlled firewalls"
+.LP
+Each non-global zone in the system can potentially have two firewalls
+configured: the in-zone firewall and the Global Zone controlled (GZ-controlled)
+firewall. The in-zone firewall can be controlled and observed inside the zone
+using the framework detailed above, or from the Global Zone. The GZ-controlled
+firewall can only be controlled and observed from the Global Zone. The
+GZ-controlled firewall is always "outermost" with respect to the zone.
+.sp
+.LP
+For inbound traffic (from an external source to the zone), the traffic flow looks
+like the following diagram. Traffic blocked by the GZ-controlled firewall will
+not be processed by the in-zone firewall.
+.sp
+.in +2
+.nf
+ External Source
+ |
+ |
+GZ-controlled Firewall
+ |
+ |
+ In-Zone Firewall
+ |
+ |
+ Zone
+.fi
+.in -2
+.sp
+.LP
+For outbound traffic (from the zone to an external destination), the traffic
+flow looks like the following diagram. Traffic blocked by the in-zone firewall
+will not be processed by the GZ-controlled firewall.
+.sp
+.in +2
+.nf
+ Zone
+ |
+ |
+ In-Zone Firewall
+ |
+ |
+GZ-controlled Firewall
+ |
+ |
+ External Destination
+.fi
+.in -2
+.sp
+.LP
+Either of the in-Zone or GZ-controlled firewalls can be enabled, or both at the
+same time.
+.sp
+.LP
+The Global Zone does not have a GZ-controlled firewall, only an
+in-zone firewall. For inbound traffic (from an external source to the global
+zone), the traffic flow therefore looks like the following diagram.
+.sp
+.in +2
+.nf
+ External Source
+ |
+ |
+ In-Zone Firewall
+ |
+ |
+ Zone
+.fi
+.in -2
+.sp
+.LP
+For outbound traffic (from the global zone to an external destination), the
+traffic flow looks like the following diagram.
+.sp
+.in +2
+.nf
+ Zone
+ |
+ |
+ In-Zone Firewall
+ |
+ |
+ External Destination
+.fi
+.in -2
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for a description of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Committed
+.TE
+
+.SH SEE ALSO
+.LP
+.BR svcs (1),
+.BR ipf (5),
+.BR ipnat (5),
+.BR attributes (7),
+.BR smf (7),
+.BR ipf (8),
+.BR ipnat (8),
+.BR svc.ipfd (8),
+.BR svcadm (8)
+.sp
+.LP
+\fISystem Administration Guide: IP Services\fR
+.SH NOTES
+.LP
+The \fBipfilter\fR service is managed by the service management facility,
+\fBsmf\fR(7), under the service identifier:
+.sp
+.in +2
+.nf
+svc:/network/ipfilter:default
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Administrative actions on this service, such as enabling, disabling, or
+requesting restart, can be performed using \fBsvcadm\fR(8). The service's
+status can be queried using the \fBsvcs\fR(1) command.
+.sp
+.LP
+IP Filter startup configuration files are stored in \fB/etc/ipf\fR.
diff --git a/usr/src/man/man7/isalist.7 b/usr/src/man/man7/isalist.7
new file mode 100644
index 0000000000..452deadf17
--- /dev/null
+++ b/usr/src/man/man7/isalist.7
@@ -0,0 +1,227 @@
+'\" te
+.\" Copyright (c) 2008 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH ISALIST 7 "Mar 20, 2008"
+.SH NAME
+isalist \- the native instruction sets known to Solaris software
+.SH DESCRIPTION
+.sp
+.LP
+The possible instruction set names returned by \fBisalist\fR(1) and the
+\fBSI_ISALIST\fR command of \fBsysinfo\fR(2) are listed here.
+.sp
+.LP
+The list is ordered within an instruction set family in the sense that later
+names are generally faster then earlier names; note that this is in the reverse
+order than listed by \fBisalist\fR(1) and \fBsysinfo\fR(2). In the following
+list of values, numbered entries generally represent increasing performance;
+lettered entries are either mutually exclusive or cannot be ordered.
+.sp
+.LP
+This feature is obsolete and may be removed in a future version of Solaris. The
+lists below do not reflect all the extensions that have been made by modern
+processors. See \fBgetisax\fR(2) for a better way to handle instruction set
+extensions.
+.SS "SPARC Platforms"
+.sp
+.LP
+Where appropriate, correspondence with a given value of the \fB-xarch\fR option
+of Sun's C 4.0 compiler is indicated. Other compilers might have similar
+options.
+.sp
+.ne 2
+.na
+\fB1a. \fBsparc\fR\fR
+.ad
+.RS 27n
+Indicates the SPARC V8 instruction set, as defined in \fI\fR The SPARC
+Architecture Manual, Version 8, Prentice-Hall, Inc., 1992. Some instructions
+(such as integer multiply and divide, FSMULD, and all floating point operations
+on quad operands) can be emulated by the kernel on certain systems.
+.RE
+
+.sp
+.ne 2
+.na
+\fB1b. \fBsparcv7\fR\fR
+.ad
+.RS 27n
+Same as sparc. This corresponds to code produced with the -xarch=v7 option of
+Sun's C 4.0 compiler.
+.RE
+
+.sp
+.ne 2
+.na
+\fB2. \fBsparcv8-fsmuld\fR\fR
+.ad
+.RS 27n
+Like sparc, except that integer multiply and divide must be executed in
+hardware. This corresponds to code produced with the -xarch=v8a option of Sun's
+C 4.0 compiler.
+.RE
+
+.sp
+.ne 2
+.na
+\fB3. \fBsparcv8\fR\fR
+.ad
+.RS 27n
+Like sparcv8-fsmuld, except that FSMULD must also be executed in hardware. This
+corresponds to code produced with the -xarch=v8 option of Sun's C 4.0 compiler.
+.RE
+
+.sp
+.ne 2
+.na
+\fB4. \fBsparcv8plus\fR\fR
+.ad
+.RS 27n
+Indicates the SPARC V8 instruction set plus those instructions in the SPARC V9
+instruction set, as defined in \fI\fR The SPARC Architecture Manual, Version 9,
+Prentice-Hall, 1994, that can be used according to \fI\fR The V8+ Technical
+Specification. This corresponds to code produced with the -xarch=v8plus option
+of Sun's C 4.0 compiler.
+.RE
+
+.sp
+.ne 2
+.na
+\fB5a. \fBsparcv8plus+vis\fR\fR
+.ad
+.RS 27n
+Like sparcv8plus, with the addition of those UltraSPARC I Visualization
+Instructions that can be used according to \fI\fR The V8+ Technical
+Specification. This corresponds to code produced with the -xarch=v8plusa option
+of Sun's C 4.0 compiler.
+.RE
+
+.sp
+.ne 2
+.na
+\fB5b. \fBsparcv8plus+fmuladd\fR\fR
+.ad
+.RS 27n
+Like sparcv8plus, with the addition of the Fujitsu SPARC64 floating
+multiply-add and multiply-subtract instructions.
+.RE
+
+.sp
+.ne 2
+.na
+\fB6. \fBsparcv9\fR\fR
+.ad
+.RS 27n
+Indicates the SPARC V9 instruction set, as defined in \fI\fR The SPARC
+Architecture Manual, Version 9, Prentice-Hall, 1994.
+.RE
+
+.sp
+.ne 2
+.na
+\fB7a. \fBsparcv9+vis\fR\fR
+.ad
+.RS 27n
+Like sparcv9, with the addition of the UltraSPARC I Visualization Instructions.
+.RE
+
+.sp
+.ne 2
+.na
+\fB7b. \fBsparcv9+vis2\fR\fR
+.ad
+.RS 27n
+Like sparcv9, with the addition of the UltraSPARC III Visualization
+Instructions.
+.RE
+
+.sp
+.ne 2
+.na
+\fB7c. \fBsparcv9+fmuladd\fR\fR
+.ad
+.RS 27n
+Like sparcv9, with the addition of the Fujitsu SPARC64 floating multiply-add
+and multiply-subtract instructions.
+.RE
+
+.SS "x86 Platforms"
+.sp
+.ne 2
+.na
+\fB1. \fBi386\fR\fR
+.ad
+.RS 22n
+The Intel 80386 instruction set, as described in \fI\fR The i386 Microprocessor
+Programmer's Reference Manual.
+.RE
+
+.sp
+.ne 2
+.na
+\fB2. \fBi486\fR\fR
+.ad
+.RS 22n
+The Intel 80486 instruction set, as described in \fI\fR The i486 Microprocessor
+Programmer's Reference Manual. (This is effectively i386, plus the CMPXCHG,
+BSWAP, and XADD instructions.)
+.RE
+
+.sp
+.ne 2
+.na
+\fB3. \fBpentium\fR\fR
+.ad
+.RS 22n
+The Intel Pentium instruction set, as described in \fI\fR The Pentium Processor
+User's Manual. (This is effectively i486, plus the CPU_ID instruction, and any
+features that the CPU_ID instruction indicates are present.)
+.RE
+
+.sp
+.ne 2
+.na
+\fB4. \fBpentium+mmx\fR\fR
+.ad
+.RS 22n
+Like pentium, with the MMX instructions guaranteed present.
+.RE
+
+.sp
+.ne 2
+.na
+\fB5. \fBpentium_pro\fR\fR
+.ad
+.RS 22n
+The Intel PentiumPro instruction set, as described in \fI\fR The PentiumPro
+Family Developer's Manual. (This is effectively pentium, with the CMOVcc,
+FCMOVcc, FCOMI, and RDPMC instructions guaranteed present.)
+.RE
+
+.sp
+.ne 2
+.na
+\fB6. \fBpentium_pro+mmx\fR\fR
+.ad
+.RS 22n
+Like pentium_pro, with the MMX instructions guaranteed present.
+.RE
+
+.sp
+.ne 2
+.na
+\fB7. \fBamd64\fR\fR
+.ad
+.RS 22n
+The AMD Opteron instruction set, as described in the \fIAMD64 Architecture
+Programmer's Manual\fR.
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR isalist (1),
+.BR getisax (2),
+.BR sysinfo (2)
diff --git a/usr/src/man/man7/isoboot.7 b/usr/src/man/man7/isoboot.7
new file mode 100644
index 0000000000..eac855dcbe
--- /dev/null
+++ b/usr/src/man/man7/isoboot.7
@@ -0,0 +1,66 @@
+.\" Copyright (c) 2018 iXsystems, Inc.
+.\" All rights reserved.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\" notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\" notice, this list of conditions and the following disclaimer in the
+.\" documentation and/or other materials provided with the distribution.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE AUTHORS AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHORS OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+.\" SUCH DAMAGE.
+.\"
+.Dd March 30, 2018
+.Dt ISOBOOT 7
+.Os
+.Sh NAME
+.Nm isoboot
+.Nd Boot code for hybrid ISO/USB images on BIOS-based computers
+.Sh DESCRIPTION
+.Nm
+is used on BIOS-based computers to boot from an ISO image that has
+been written to a USB flash drive or other HDD-like device.
+.Nm
+is installed in a
+.Cm x86 Boot
+partition with
+.Xr installboot 8 .
+.Sh IMPLEMENTATION NOTES
+The El Torito standard for bootable CDs provides a 32KB "System Area"
+at the beginning of an image.
+To create an image that is able to be booted by the BIOS as either a
+CD-ROM ("ISO") and as a more HDD-like image (e.g. on a USB flash drive)
+it is necessary to have both a standard El Torito boot catalog
+containing a HDD-style partition table and boot code.
+.Nm
+is intended to be placed in a MBR x86 boot partition to allow the system to find
+the standard
+.Fx
+.Xr loader 7
+in the ISO filesystem later in the image.
+.Sh BOOTING
+.Nm
+looks for an ISO filesystem image on the device it was booted from and
+seeks to read the primary illumos
+.Xr loader 7
+from there.
+.Sh SEE ALSO
+.Xr installboot 8
+.Sh HISTORY
+.Nm
+appeared in FreeBSD 12.0.
+.Sh AUTHORS
+This manual page written by
+.An Benno Rice Aq benno@FreeBSD.org .
diff --git a/usr/src/man/man7/kerberos.7 b/usr/src/man/man7/kerberos.7
new file mode 100644
index 0000000000..f2873db09b
--- /dev/null
+++ b/usr/src/man/man7/kerberos.7
@@ -0,0 +1,162 @@
+'\" te
+.\" Copyright 2014 Nexenta Systems, Inc. All rights reserved.
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH KERBEROS 7 "November 22, 2021"
+.SH NAME
+kerberos \- overview of Solaris Kerberos implementation
+.SH DESCRIPTION
+The Solaris Kerberos implementation, hereafter sometimes shortened to
+"Kerberos," authenticates clients in a network environment, allowing for secure
+transactions. (A client may be a user or a network service.) Kerberos validates
+the identity of a client and the authenticity of transferred data. Kerberos is
+a \fIsingle-sign-on\fR system, meaning that a user needs to provide a password
+only at the beginning of a session. The Solaris Kerberos implementation is
+based on the Kerberos(TM) system developed at \fBMIT\fR, and is compatible with
+Kerberos V5 systems over heterogeneous networks.
+.sp
+.LP
+Kerberos works by granting clients \fItickets\fR, which uniquely identify a
+client, and which have a finite lifetime. A client possessing a ticket is
+automatically validated for network services for which it is entitled; for
+example, a user with a valid Kerberos ticket may rlogin into another machine
+running Kerberos without having to identify itself. Because each client has a
+unique ticket, its identity is guaranteed.
+.sp
+.LP
+To obtain tickets, a client must first initialize the Kerberos session, either
+by using the \fBkinit\fR(1) command or a \fBPAM\fR module. (See
+\fBpam_krb5\fR(7)). \fBkinit\fR prompts for a password, and then communicates
+with a \fIKey Distribution Center\fR (\fBKDC\fR). The \fBKDC\fR returns a
+\fITicket-Granting Ticket\fR (\fBTGT\fR) and prompts for a confirmation
+password. If the client confirms the password, it can use the Ticket-Granting
+Ticket to obtain tickets for specific network services. Because tickets are
+granted transparently, the user need not worry about their management. Current
+tickets may be viewed by using the \fBklist\fR(1) command.
+.sp
+.LP
+Tickets are valid according to the system \fIpolicy\fR set up at installation
+time. For example, tickets have a default lifetime for which they are valid. A
+policy may further dictate that privileged tickets, such as those belonging to
+root, have very short lifetimes. Policies may allow some defaults to be
+overruled; for example, a client may request a ticket with a lifetime greater
+or less than the default.
+.sp
+.LP
+Tickets can be renewed using \fBkinit\fR. Tickets are also \fIforwardable\fR,
+allowing you to use a ticket granted on one machine on a different host.
+Tickets can be destroyed by using \fBkdestroy\fR(1). It is a good idea to
+include a call to \fBkdestroy\fR in your \fB\&.logout\fR file.
+.sp
+.LP
+Under Kerberos, a client is referred to as a \fIprincipal\fR. A principal takes
+the following form:
+.sp
+.in +2
+.nf
+primary/instance@REALM
+.fi
+.in -2
+.sp
+
+.sp
+.ne 2
+.na
+\fBprimary\fR
+.ad
+.RS 12n
+A user, a host, or a service.
+.RE
+
+.sp
+.ne 2
+.na
+\fBinstance\fR
+.ad
+.RS 12n
+A qualification of the primary. If the primary is a host \(em indicated by the
+keyword \fBhost\fR\(em then the instance is the fully-qualified domain name of
+that host. If the primary is a user or service, then the instance is optional.
+Some instances, such as \fBadmin\fR or \fBroot\fR, are privileged.
+.RE
+
+.sp
+.ne 2
+.na
+\fBrealm\fR
+.ad
+.RS 12n
+The Kerberos equivalent of a domain; in fact, in most cases the realm is
+directly mapped to a \fBDNS\fR domain name. Kerberos realms are given in
+upper-case only. For examples of principal names, see the EXAMPLES.
+.RE
+
+.sp
+.LP
+By taking advantage of the General Security Services \fBAPI\fR (\fBGSS-API\fR),
+Kerberos offers, besides user authentication, two other types of security
+service: \fIintegrity\fR, which authenticates the validity of transmitted data,
+and \fIprivacy\fR, which encrypts transmitted data. Developers can take
+advantage of the \fBGSS-API\fR through the use of the RPCSEC_GSS \fBAPI\fR
+interface (see \fBrpcsec_gss\fR(3NSL)).
+.SH EXAMPLES
+\fBExample 1 \fRExamples of valid principal names
+.sp
+.LP
+The following are examples of valid principal names:
+
+.sp
+.in +2
+.nf
+ joe
+ joe/admin
+ joe@ENG.EXAMPLE.COM
+ joe/admin@ENG.EXAMPLE.COM
+ rlogin/bigmachine.eng.example.com@ENG.EXAMPLE.COM
+ host/bigmachine.eng.example.com@ENG.EXAMPLE.COM
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The first four cases are \fIuser principals\fR. In the first two cases, it is
+assumed that the user \fBjoe\fR is in the same realm as the client, so no realm
+is specified. Note that \fBjoe\fR and \fBjoe/admin\fR are different principals,
+even if the same user uses them; \fBjoe/admin\fR has different privileges from
+\fBjoe\fR. The fifth case is a \fIservice principal\fR, while the final case is
+a \fIhost principal\fR. The word \fBhost\fR is required for host principals.
+With host principals, the instance is the fully qualified hostname. Note that
+the words \fBadmin\fR and \fBhost\fR are reserved keywords.
+
+.SH SEE ALSO
+.BR kdestroy (1),
+.BR kinit (1),
+.BR klist (1),
+.BR kpasswd (1),
+.BR krb5.conf (5),
+.BR krb5envvar (7)
+.sp
+.LP
+\fISystem Administration Guide: Security Services\fR
+.SH NOTES
+In previous releases of the Solaris operating system, the Solaris Kerberos
+implementation was referred to as the "Sun Enterprise Authentication Mechanism"
+(SEAM).
+.sp
+.LP
+If you enter your username and \fBkinit\fR responds with this message:
+.sp
+.in +2
+.nf
+Principal unknown (kerberos)
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+you have not been registered as a Kerberos user. See your system administrator
+or the \fISystem Administration Guide: Security Services\fR.
diff --git a/usr/src/man/man7/krb5_auth_rules.7 b/usr/src/man/man7/krb5_auth_rules.7
new file mode 100644
index 0000000000..cf0f3c87e6
--- /dev/null
+++ b/usr/src/man/man7/krb5_auth_rules.7
@@ -0,0 +1,129 @@
+'\" te
+.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH KRB5_AUTH_RULES 7 "November 22, 2021"
+.SH NAME
+krb5_auth_rules \- overview of Kerberos V5 authorization
+.SH DESCRIPTION
+When kerberized versions of the \fBftp\fR, \fBrdist\fR, \fBrcp\fR,
+\fBrlogin\fR, \fBrsh\fR, \fBtelnet\fR, or \fBssh\fR clients are used to connect
+to a server, the identity of the originating user must be authenticated to the
+Kerberos V5 authentication system. Account access can then be authorized if
+appropriate entries exist in the \fB~/.k5login\fR file, the \fBgsscred\fR
+table, or if the default GSS/Kerberos authentication rules successfully map the
+Kerberos principal name to Unix login name.
+.sp
+.LP
+To avoid security problems, the \fB~/.k5login\fR file must be owned by the
+remote user on the server the client is attempting to access. The file should
+contain a private authorization list comprised of Kerberos principal names of
+the form \fIprincipal/instance\fR@\fIrealm\fR. The \fI/instance\fR variable is
+optional in Kerberos principal names. For example, different principal names
+such as \fBjdb@ENG.EXAMPLE.COM\fR and \fBjdb/happy.eng.example.com@ENG.EXAMPLE.COM\fR
+would each be legal, though not equivalent, Kerberos principals. The client is
+granted access if the \fB~/.k5login\fR file is located in the login directory
+of the remote user account and if the originating user can be authenticated to
+one of the principals named in the file. See \fBkadm5.acl\fR(5) for more
+information on Kerberos principal names.
+.sp
+.LP
+When no \fB~/.k5login\fR file is found in the remote user's login account, the
+Kerberos V5 principal name associated with the originating user is checked
+against the \fBgsscred\fR table. If a \fBgsscred\fR table exists and the
+principal name is matched in the table, access is granted if the Unix user ID
+listed in the table corresponds to the user account the client is attempting to
+access. If the Unix user ID does not match, access is denied. See
+\fBgsscred\fR(8).
+.sp
+.LP
+For example, an originating user listed in the \fBgsscred\fR table with the
+principal name \fBjdb@ENG.EXAMPLE.COM\fR and the \fBuid\fR \fB23154\fR is granted
+access to the \fBjdb-user\fR account if \fB23154\fR is also the \fBuid\fR of
+\fBjdb-user\fR listed in the user account database. See \fBpasswd\fR(5).
+.sp
+.LP
+Finally, if there is no \fB~/.k5login\fR file and the Kerberos V5 identity of
+the originating user is not in the \fBgsscred\fR table, or if the \fBgsscred\fR
+table does not exist, the client is granted access to the account under the
+following conditions (default GSS/Kerberos auth rules):
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The user part of the authenticated principal name is the same as the Unix
+account name specified by the client.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The realm part of the client and server are the same, unless the
+\fBkrb5.conf\fR(5) \fIauth_to_local_realm\fR parameter is used to create
+equivalence.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The Unix account name exists on the server.
+.RE
+.sp
+.LP
+For example, if the originating user has the principal name
+\fBjdb@ENG.EXAMPLE.COM\fR and if the server is in realm \fBSALES.EXAMPLE.COM\fR, the
+client would be denied access even if \fBjdb\fR is a valid account name on the
+server. This is because the realms \fBSALES.EXAMPLE.COM\fR and \fBENG.EXAMPLE.COM\fR
+differ.
+.sp
+.LP
+The \fBkrb5.conf\fR(5) \fIauth_to_local_realm\fR parameter also affects
+authorization. Non-default realms can be equated with the default realm for
+authenticated \fBname-to-local name\fR mapping.
+.SH FILES
+.ne 2
+.na
+\fB\fB~/.k5login\fR\fR
+.ad
+.RS 15n
+Per user-account authorization file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/passwd\fR\fR
+.ad
+.RS 15n
+System account file. This information may also be in a directory service. See
+\fBpasswd\fR(5).
+.RE
+
+.SH ATTRIBUTES
+See \fBattributes\fR(7) for a description of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.BR ftp (1),
+.BR rcp (1),
+.BR rdist (1),
+.BR rlogin (1),
+.BR rsh (1),
+.BR telnet (1),
+.BR kadm5.acl (5),
+.BR krb5.conf (5),
+.BR passwd (5),
+.BR attributes (7),
+.BR gss_auth_rules (7),
+.BR gsscred (8)
diff --git a/usr/src/man/man7/krb5envvar.7 b/usr/src/man/man7/krb5envvar.7
new file mode 100644
index 0000000000..6d180f9600
--- /dev/null
+++ b/usr/src/man/man7/krb5envvar.7
@@ -0,0 +1,235 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH KRB5ENVVAR 7 "Feb 13, 2008"
+.SH NAME
+krb5envvar \- Kerberos environment variables
+.SH DESCRIPTION
+.sp
+.LP
+The Kerberos mechanism provides a number of environment variables to configure
+different behavior in order to meet applications' needs. Environment variables
+used within the Kerberos mechanism are:
+.sp
+.ne 2
+.na
+\fB\fBKRB5_KTNAME\fR\fR
+.ad
+.sp .6
+.RS 4n
+Used by the mechanism to specify the location of the key table file. The
+variable can be set to the following value:
+.sp
+.in +2
+.nf
+[[\fI<kt type>\fR:]\fI<file name>\fR]
+.fi
+.in -2
+
+where \fI<kt type>\fR can be \fBFILE\fR or \fBWRFILE\fR. \fBFILE\fR is for read
+operations; \fBWRFILE\fR is for write operations. \fI<file name>\fR is the
+location of the \fBkeytab\fR file.
+.sp
+r
+.sp
+If \fBKRB5_KTNAME\fR is not defined, the default value is:
+.sp
+.in +2
+.nf
+FILE:/etc/krb5/krb5.keytab
+.fi
+.in -2
+
+The \fBkeytab\fR file is used to store credentials persistently and is used
+commonly for service daemons.
+.sp
+Specifying the \fBFILE\fR type assumes that the subsequent operations on the
+associated file are readable by the invoking process. Care must be taken to
+ensure that the file is readable only by the set of principals that need to
+retrieve their unencrypted keys.
+.sp
+The \fBWRFILE\fR type is used by the \fBkadmin\fR(8) command. Specifying this
+type allows the administrator to designate an alternate \fBkeytab\fR file to
+write to without using extra command line arguments for file location.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBKRB5CCNAME\fR\fR
+.ad
+.sp .6
+.RS 4n
+Used by the mechanism to specify the location of the credential cache. The
+variable can be set to the following value:
+.sp
+.in +2
+.nf
+[[\fI<cc type>\fR:]\fI<file name>\fR]
+.fi
+.in -2
+
+where \fI<cc type>\fR can be \fBFILE\fR or \fBMEMORY\fR. \fI<file name>\fR is
+the location of the principal's credential cache.
+.sp
+If \fBKRB5CCNAME\fR is not defined, the default value is:
+.sp
+.in +2
+.nf
+FILE:/tmp/krb5cc_\fI<uid>\fR
+.fi
+.in -2
+
+where \fI<uid>\fR is the user id of the process that created the cache file.
+.sp
+The credential cache file is used to store tickets that have been granted to
+the principal.
+.sp
+Specifying the \fBFILE\fR types assumes that subsequent operations on the
+associated file are readable and writable by the invoking process. Care must be
+taken to ensure that the file is accessible only by the set of principals that
+need to access their credentials. If the credential file is in a directory to
+which other users have write access, you need to set that directory's sticky
+bit (see \fBchmod\fR(1)).
+.sp
+The \fBMEMORY\fR credential cache type is used only in special cases, such as
+when making a temporary cache for the life of the invoking process.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBKRB5RCNAME\fR\fR
+.ad
+.sp .6
+.RS 4n
+Used by the mechanism to specify the type and location of the replay cache. The
+variable can be set to the following value:
+.sp
+.in +2
+.nf
+[[\fI<rc type>\fR:]\fI<file name>\fR]
+.fi
+.in -2
+
+where \fI<rc type>\fR can be either \fBFILE\fR, \fBMEMORY\fR, or \fBNONE\fR.
+\fI<file name>\fR is relevant only when specifying the replay cache file type.
+.sp
+If not defined, the default value is:
+.sp
+.in +2
+.nf
+FILE:/var/krb5/rcache/root/rc_\fI<service>\fR
+.fi
+.in -2
+
+\&...if the process is owned by root, or:
+.sp
+.in +2
+.nf
+FILE:/var/krb5/rcache/rc_\fI<service>\fR
+.fi
+.in -2
+
+\&...if the process is owned by a user other than root. \fI<service>\fR is the
+service process name associated with the replay cache file.
+.sp
+The replay cache is used by Kerberos to detect the replay of authentication
+data. This prevents people who capture authentication messages on the network
+from authenticating to the server by resending these messages.
+.sp
+When specifying the \fBFILE\fR replay cache type, care must be taken to prevent
+the replay cache file from being deleted by another user. Make sure that every
+directory in the replay cache path is either writable only by the owner of the
+replay cache or that the sticky bit ("\fBt\fR") is set on every directory in
+the replay cache path to which others have write permission.
+.sp
+When specifying the \fBMEMORY\fR replay cache type you need to weigh the
+trade-off of performance against the slight security risk created by using a
+non-persistent cache. The risk occurs during system reboots when the following
+condition obtains:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The duration from the last write to the replay cache before reboot to the point
+when the Kerberized server applications are running is less than the Kerberos
+clockskew (see \fBkrb5.conf\fR(5)).
+.RE
+When specifying the \fBNONE\fR replay cache time you need to understand that
+this disables the replay cache, and all security risks that this presents. This
+includes all the risks outlined in this section of the man page.
+.sp
+Under this condition, the server applications can accept a replay of Kerberos
+authentication data (up to the difference between the time of the last write
+and the clockskew). Typically, this is a small window of time. If the server
+applications take longer than the clockskew to start accepting connections
+there is no replay risk.
+.sp
+The risk described above is the same when using \fBFILE\fR replay cache types
+when the replay cache resides on swap file systems, such as \fB/tmp\fR and
+\fB/var/run\fR.
+.sp
+The performance improvement in \fBMEMORY\fR replay cache types over \fBFILE\fR
+types is derived from the absence of disk I/O. This is true even if the
+\fBFILE\fR replay cache is on a memory-backed file system, such as swap
+(\fB/tmp\fR and \fB/var/run\fR).
+.sp
+Note that \fBMEMORY\fR-type caches are per-process caches, therefore use of
+these types of caches must be carefully considered. One example of where
+\fBMEMORY\fR-type caches can be problematic is when an application uses more
+than one process for establishing security contexts. In such a case, memory
+replay caches are not shared across the processes, thus allowing potential for
+replay attacks.
+.RE
+
+.sp
+.ne 2
+.na
+\fBKRB5_CONFIG\fR
+.ad
+.sp .6
+.RS 4n
+Allows you to change the default location of the \fB/etc/krb5/krb5.conf\fR file
+to enable the Kerberos library code to read configuration parameters from
+another file specified by KRB5_CONFIG. For example (using kinit from
+\fBksh\fR(1)):
+.sp
+.in +2
+.nf
+ KRB5_CONFIG=/var/tmp/krb5.conf kinit
+.fi
+.in -2
+
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for a description of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Uncommitted
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR chmod (1),
+.BR kinit (1),
+.BR klist (1),
+.BR ksh (1),
+.BR krb5.conf (5),
+.BR attributes (7),
+.BR kerberos (7),
+.BR kadmin (8),
+.BR kadmind (8)
diff --git a/usr/src/man/man7/largefile.7 b/usr/src/man/man7/largefile.7
new file mode 100644
index 0000000000..bcb70cd8e2
--- /dev/null
+++ b/usr/src/man/man7/largefile.7
@@ -0,0 +1,231 @@
+'\" te
+.\" Copyright (c) 2007 Sun Microsystems, Inc. All Rights Reserved
+.\" Portions Copyright (c) 1982-2007 AT&T Knowledge Ventures
+.\" Copyright 2015 Nexenta Systems, Inc. All rights reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add
+.\" the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH LARGEFILE 7 "Sep 8, 2015"
+.SH NAME
+largefile \- large file status of utilities
+.SH DESCRIPTION
+.LP
+A \fIlarge file\fR is a regular file whose size is greater than or equal to 2
+Gbyte ( 2^31 bytes). A \fIsmall file\fR is a regular file whose size is less
+than 2 Gbyte.
+.SS "Large file aware utilities"
+.LP
+A utility is called \fIlarge file aware\fR if it can process large files in the
+same manner as it does small files. A utility that is large file aware is able
+to handle large files as input and generate as output large files that are
+being processed. The exception is where additional files are used as system
+configuration files or support files that can augment the processing. For
+example, the \fBfile\fR utility supports the \fB-m\fR option for an alternative
+"magic" file and the \fB-f\fR option for a support file that can contain a list
+of file names. It is unspecified whether a utility that is large file aware
+will accept configuration or support files that are large files. If a large
+file aware utility does not accept configuration or support files that are
+large files, it will cause no data loss or corruption upon encountering such
+files and will return an appropriate error.
+.LP
+The following \fB/usr/bin\fR utilities are large file aware:
+.sp
+
+.sp
+.TS
+l l l l l
+l l l l l .
+\fBadb\fR \fBaliasadm\fR \fBawk\fR \fBbdiff\fR \fBcat\fR
+\fBchgrp\fR \fBchmod\fR \fBchown\fR \fBcksum\fR \fBcmp\fR
+\fBcompress\fR \fBcp\fR \fBcsh\fR \fBcsplit\fR \fBcut\fR
+\fBdd\fR \fBdircmp\fR \fBdu\fR \fBegrep\fR \fBfgrep\fR
+\fBfile\fR \fBfind\fR \fBftp\fR \fBgetconf\fR \fBgrep\fR
+\fBgzip\fR \fBhead\fR \fBjoin\fR \fBjsh\fR \fBksh\fR
+\fBksh93\fR \fBln\fR \fBls\fR \fBmailcompat\fR \fBmailstats\fR
+\fBmdb\fR \fBmkdir\fR \fBmkfifo\fR \fBmore\fR \fBmv\fR
+\fBnawk\fR \fBpage\fR \fBpaste\fR \fBpathchck\fR \fBpg\fR
+\fBpraliases\fR \fBrcp\fR \fBremsh\fR \fBrksh\fR \fBrksh93\fR
+\fBrm\fR \fBrmdir\fR \fBrsh\fR \fBsed\fR \fBsh\fR
+\fBsort\fR \fBsplit\fR \fBsum\fR \fBtail\fR \fBtar\fR
+\fBtee\fR \fBtest\fR \fBtouch\fR \fBtr\fR \fBuncompress\fR
+\fBuudecode\fR \fBuuencode\fR \fBvacation\fR \fBwc\fR \fBzcat\fR
+.TE
+
+.LP
+The following \fB/usr/xpg4/bin\fR utilities are large file aware:
+.sp
+
+.sp
+.TS
+l l l l l
+l l l l l .
+\fBawk\fR \fBcp\fR \fBchgrp\fR \fBchown\fR \fBdu\fR
+\fBegrep\fR \fBfgrep\fR \fBfile\fR \fBgrep\fR \fBln\fR
+\fBls\fR \fBmore\fR \fBmv\fR \fBrm\fR \fBsed\fR
+\fBsh\fR sort tail tr
+.TE
+
+.LP
+The following \fB/usr/xpg6/bin\fR utilities are large file aware:
+.sp
+
+.sp
+.TS
+l l l l l .
+\fBgetconf\fR \fBls\fR \fBtr\fR
+.TE
+
+.LP
+The following \fB/usr/sbin\fR utilities are large file aware:
+.sp
+
+.sp
+.TS
+l l l l l
+l l l l l .
+\fBeditmap\fR \fBinstall\fR \fBmakemap\fR \fBmkfile\fR \fBmknod\fR
+\fBmvdir\fR \fBswap\fR
+.TE
+
+.LP
+The following \fB/usr/lib\fR utilities are large file aware:
+.sp
+
+.sp
+.TS
+l l l l l .
+\fBmail.local\fR \fBsendmail\fR \fBsmrsh\fR
+.TE
+
+.LP
+See the USAGE section of the \fBswap\fR(8) manual page for limitations of
+\fBswap\fR on block devices greater than 2 Gbyte on a 32-bit operating system.
+.sp
+.LP
+The following \fB/usr/ucb\fR utilities are large file aware:
+.sp
+
+.sp
+.TS
+l l l l l
+l l l l l .
+\fBchown\fR \fBfrom\fR \fBln\fR \fBls\fR \fBsed\fR
+\fBsum\fR \fBtouch\fR
+.TE
+
+.LP
+The \fB/usr/bin/cpio\fR and \fB/usr/bin/pax\fR utilities are large file aware,
+but cannot archive a file whose size exceeds 8 Gbyte - 1 byte.
+.LP
+The \fB/usr/bin/truss\fR utilities has been modified to read a dump file and
+display information relevant to large files, such as offsets.
+.SS "nfs file systems"
+.LP
+The following utilities are large file aware for \fBnfs\fR file systems:
+.sp
+
+.sp
+.TS
+l l
+l l .
+\fB/usr/lib/autofs/automountd\fR \fB/usr/sbin/mount\fR
+\fB/usr/lib/nfs/rquotad\fR
+.TE
+
+.SS "ufs file systems"
+.LP
+The following \fB/usr/bin\fR utility is large file aware for \fBufs\fR file
+systems:
+.LP
+\fBdf\fR
+.LP
+The following \fB/usr/lib/nfs\fR utility is large file aware for \fBufs\fR file
+systems:
+.LP
+\fBrquotad\fR
+.LP
+The following \fB/usr/xpg4/bin\fR utility is large file aware for \fBufs\fR
+file systems:
+.LP
+\fBdf\fR
+.LP
+The following \fB/usr/sbin\fR utilities are large file aware for \fBufs\fR file
+systems:
+.sp
+
+.sp
+.TS
+l l l l l
+l l l l l .
+\fBclri\fR \fBdcopy\fR \fBedquota\fR \fBff\fR \fBfsck\fR
+\fBfsdb\fR \fBfsirand\fR \fBfstyp\fR \fBlabelit\fR \fBlockfs\fR
+\fBmkfs\fR \fBmount\fR \fBncheck\fR \fBnewfs\fR \fBquot\fR
+\fBquota\fR \fBquotacheck\fR \fBquotaoff\fR \fBquotaon\fR \fBrepquota\fR
+\fBtunefs\fR \fBufsdump\fR \fBufsrestore\fR \fBumount\fR
+.TE
+
+.SS "Large file safe utilities"
+.LP
+A utility is called \fBlarge file safe\fR if it causes no data loss or
+corruption when it encounters a large file. A utility that is large file safe
+is unable to process properly a large file, but returns an appropriate error.
+.LP
+The following \fB/usr/bin\fR utilities are large file safe:
+.sp
+
+.sp
+.TS
+l l l l l
+l l l l l .
+\fBaudioconvert\fR \fBaudioplay\fR \fBaudiorecord\fR \fBcomm\fR \fBdiff\fR
+\fBdiff3\fR \fBdiffmk\fR \fBed\fR \fBlp\fR \fBmail\fR
+\fBmailcompat\fR \fBmailstats\fR \fBmailx\fR \fBpack\fR \fBpcat\fR
+\fBred\fR \fBrmail\fR \fBsdiff\fR \fBunpack\fR \fBvi\fR
+\fBview\fR
+.TE
+
+.LP
+The following \fB/usr/xpg4/bin\fR utilities are large file safe:
+.sp
+
+.sp
+.TS
+l l l l l .
+\fBed\fR \fBvi\fR \fBview\fR
+.TE
+
+.LP
+The following \fB/usr/xpg6/bin\fR utility is large file safe:
+.sp
+
+.sp
+.TS
+l l l l l .
+\fBed\fR
+.TE
+
+.LP
+The following \fB/usr/sbin\fR utilities are large file safe:
+.sp
+
+.sp
+.TS
+l l l l l .
+lpfilter lpforms
+.TE
+
+.LP
+The following \fB/usr/ucb\fR utilities are large file safe:
+.sp
+
+.sp
+.TS
+l l l l l .
+\fBMail\fR \fBlpr\fR
+.TE
+
+.SH SEE ALSO
+.LP
+.BR lf64 (7),
+.BR lfcompile (7),
+.BR lfcompile64 (7)
diff --git a/usr/src/man/man7/lf64.7 b/usr/src/man/man7/lf64.7
new file mode 100644
index 0000000000..ef611874df
--- /dev/null
+++ b/usr/src/man/man7/lf64.7
@@ -0,0 +1,348 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.\" Copyright (c) 2015, Joyent, Inc. All rights reserved.
+.TH LF64 7 "May 17, 2020"
+.SH NAME
+lf64 \- transitional interfaces for 64-bit file offsets
+.SH DESCRIPTION
+The data types, interfaces, and macros described on this page provide explicit
+access to 64-bit file offsets. They are accessible through the transitional
+compilation environment described on the \fBlfcompile64\fR(7) manual page. The
+function prototype and semantics of a transitional interface are equivalent to
+those of the standard version of the call, except that relevant data types are
+64-bit entities.
+.SS "Data Types"
+The following tables list the standard data or struct types in the left-hand
+column and their corresponding explicit 64-bit file offset types in the
+right-hand column, grouped by header. The absence of an entry in the left-hand
+column indicates that there is no existing explicit 32-bit type that
+corresponds to the 64-bit type listed in the right\(emhand column. Note that
+in a 64-bit application, the standard definition is equivalent to the 64-bit
+file offset definition.
+.SS "<\fBaio.h\fR>"
+
+.TS
+l l
+l l .
+struct \fBaiocb\fR struct \fBaiocb64\fR
+ \fBoff_t\fR aio_offset; \fBoff64_t\fR aio_offset;
+.TE
+
+.SS "<\fBsys/dirent.h\fR>"
+
+.TS
+l l
+l l .
+struct \fBdirent\fR struct \fBdirent64\fR
+ \fBino_t\fR d_ino; \fBino64_t\fR d_ino;
+ \fBoff_t\fR d_off; \fBoff64_t\fR d_off;
+.TE
+
+.SS "<\fBsys/fcntl.h\fR>"
+
+.TS
+l l
+l l .
+struct \fBflock\fR struct \fBflock64\fR
+ \fBoff_t\fR l_start; \fBoff64_t\fR l_start;
+ \fBoff_t\fR l_len; \fBoff64_t\fR l_len;
+\fBF_SETLK\fR \fBF_SETLK64\fR
+\fBF_SETLKW\fR \fBF_SETLKW64\fR
+\fBF_GETLK\fR \fBF_GETLK64\fR
+\fBF_FREESP\fR \fBF_FREESP64\fR
+\fBF_ALLOCSP\fR \fBF_ALLOCSP64\fR
+ \fBO_LARGEFILE\fR
+.TE
+
+.SS "<\fBsys/stdio.h\fR>"
+
+.TS
+l l .
+\fBfpos_t\fR \fBfpos64_t\fR
+.TE
+
+.SS "<\fBsys/resource.h\fR>"
+
+.TS
+l l
+l l .
+\fBrlim_t\fR \fBrlim64_t\fR
+struct \fBrlimit\fR struct \fBrlimit64\fR
+ \fBrlim_t\fR rlim_cur; \fBrlim64_t\fR rlim_cur;
+ \fBrlim_t\fR rlim_max; \fBrlim64_t\fR rlim_max;
+\fBRLIM_INFINITY\fR \fBRLIM64_INFINITY\fR
+\fBRLIM_SAVED_MAX\fR \fBRLIM64_SAVED_MAX\fR
+\fBRLIM_SAVED_CUR\fR \fBRLIM64_SAVED_CUR\fR
+.TE
+
+.SS "<\fBsys/stat.h\fR>"
+
+.TS
+l l
+l l .
+struct \fBstat\fR struct \fBstat64\fR
+ \fBino_t\fR st_ino; \fBino64_t\fR st_ino;
+ \fBoff_t\fR st_size; \fBoff64_t\fR st_size;
+ \fBblkcnt_t\fR st_blocks; \fBblkcnt64_t\fR st_blocks;
+.TE
+
+.SS "<\fBsys/statvfs.h\fR>"
+
+.TS
+l l
+l l .
+struct \fBstatvfs\fR struct \fBstatvfs64\fR
+ \fBfsblkcnt_t\fR f_blocks; \fBfsblkcnt64_t\fR f_blocks;
+ \fBfsblkcnt_t\fR f_bfree; \fBfsblkcnt64_t\fR f_bfree;
+ \fBfsblkcnt_t\fR f_bavail; \fBfsblkcnt64_t\fR f_bavail;
+ \fBfsfilcnt_t\fR f_files; \fBfsfilcnt64_t\fR f_files;
+ \fBfsfilcnt_t\fR f_ffree; \fBfsfilcnt64_t\fR f_ffree;
+ \fBfsfilcnt_t\fR f_favail; \fBfsfilcnt64_t\fR f_favail;
+.TE
+
+.SS "<\fBsys/types.h\fR>"
+
+.TS
+l l
+l l .
+\fBoff_t\fR; \fBoff64_t\fR;
+\fBino_t\fR; \fBino64_t\fR;
+\fBblkcnt_t\fR; \fBblkcnt64_t\fR;
+\fBfsblkcnt_t\fR; \fBfsblkcnt64_t\fR;
+\fBfsfilcnt_t\fR; \fBfsfilcnt64_t\fR;
+.TE
+
+.SS "<\fBunistd.h\fR>"
+
+.TS
+l l
+l l .
+ \fB_LFS64_LARGEFILE\fR
+ \fB_LFS64_STDIO\fR
+.TE
+
+.SS "<\fBsys/unistd.h\fR>"
+
+.TS
+l l
+l l .
+ \fB_CS_LFS64_CFLAGS\fR
+ \fB_CS_LFS64_LDFLAGS\fR
+ \fB_CS_LFS64_LIBS\fR
+ \fB_CS_LFS64_LINTFLAGS\fR
+.TE
+
+.SS "System Interfaces"
+The following tables display the standard API and the corresponding
+transitional interfaces for 64-bit file offsets. The interfaces are grouped by
+header. The interface name and the affected data types are displayed in courier
+font.
+.SS "<\fBaio.h\fR>"
+
+.TS
+l l
+l l .
+int \fBaio_cancel\fR(..., int \fBaio_cancel64\fR(...,
+ struct \fBaiocb\fR *); struct \fBaiocb64\fR *);
+int \fBaio_error\fR( int \fBaio_error64\fR(
+ const struct \fBaiocb\fR *); const struct \fBaiocb64\fR *);
+int \fBaio_fsync\fR(..., int \fBaio_fsync64\fR(...,
+ struct \fBaiocb\fR *); struct \fBaiocb64\fR *);
+int \fBaio_read\fR(struct \fBaiocb\fR *); int \fBaio_read64\fR(struct \fBaiocb64\fR *);
+int \fBaio_return\fR(struct \fBaiocb\fR *); int \fBaio_return64\fR(struct \fBaiocb64\fR *);
+int \fBaio_suspend\fR( int \fBaio_suspend64\fR(
+ const struct \fBaiocb\fR *, ...); const struct \fBaiocb64\fR *, ...);
+int \fBaio_waitn\fR(aiocb_t *[], int \fBaio_waitn64\fR(aiocb64_t *[],
+ ...); ...);
+int \fBaio_write\fR(struct \fBaiocb\fR *); int \fBaio_write64\fR(struct \fBaiocb64\fR *);
+int \fBlio_listio\fR(..., int \fBlio_listio64\fR(...,
+ const struct \fBaiocb\fR *, ...); const struct \fBaiocb64\fR *, ...);
+.TE
+
+.SS "<\fBdirent.h\fR>"
+
+.TS
+l l
+l l .
+int \fBalphasort\fR( int \fBalphasort64\fR(
+ const struct dirent **, const struct dirent64 **,
+ const struct dirent **) const struct dirent64 **)
+struct \fBdirent *\fR\fBreaddir()\fR; struct \fBdirent64 *\fR\fBreaddir64()\fR;
+struct \fBdirent *\fR\fBreaddir_r()\fR; struct \fBdirent64 *\fR\fBreaddir64_r()\fR;
+int \fBscandir\fR(..., int \fBscandir64\fR(...,
+ struct dirent *(*[]), struct dirent64 *(*[]),
+ int (*)(const struct dirent *), int (*)(const struct dirent64 *),
+ int (*)(const struct dirent **, int (*)(const struct dirent64 **,
+ const struct dirent **)) const struct dirent64 **))
+.TE
+
+.SS "<\fBfcntl.h\fR>"
+
+.TS
+l l
+l l .
+int \fBattropen()\fR; int \fBattropen64()\fR;
+int \fBcreat()\fR; int \fBcreat64()\fR;
+int \fBopen()\fR; int \fBopen64()\fR;
+int \fBopenat()\fR; int \fBopenat64()\fR;
+int \fBposix_fadvise()\fR int \fBposix_fadvise64()\fR
+int \fBposix_fallocate()\fR int \fBposix_fallocate64()\fR
+.TE
+
+.SS "<\fBftw.h\fR>"
+
+.TS
+l l
+l l .
+int \fBftw\fR(..., int \fBftw64\fR(...,
+ const struct \fBstat\fR *, ...); const struct \fBstat64\fR *, ...);
+
+int \fBnftw\fR(.. int \fBnftw64\fR(...,
+ const struct \fBstat\fR *, ...); const struct \fBstat64\fR *, ...);
+
+.TE
+
+.SS "<\fBlibgen.h\fR>"
+
+.TS
+l l .
+char *\fBcopylist\fR(..., \fBoff_t\fR); char *\fBcopylist64\fR(..., \fBoff64_t\fR);
+.TE
+
+.SS "<\fBstdio.h\fR>"
+
+.TS
+l l
+l l .
+int \fBfgetpos()\fR; int \fBfgetpos64()\fR;
+FILE *\fBfopen()\fR; FILE *\fBfopen64()\fR;
+FILE *\fBfreopen()\fR; FILE *\fBfreopen64()\fR;
+int \fBfseeko\fR(..., \fBoff_t\fR, ...); int \fBfseeko64\fR(..., \fBoff64_t\fR, ...);
+int \fBfsetpos\fR(..., int \fBfsetpos64\fR(...,
+ const \fBfpos_t\fR *); const \fBfpos64_t\fR *);
+off_t \fBftello()\fR; off64_t \fBftello64()\fR();
+FILE *\fBtmpfile()\fR; FILE *\fBtmpfile64()\fR;
+.TE
+
+.SS "<\fBstdlib.h\fR>"
+
+.TS
+l l .
+int \fBmkstemp()\fR; int \fBmkstemp64()\fR;
+.TE
+
+.SS "<\fBsys/async.h\fR>"
+
+.TS
+l l
+l l .
+int \fBaioread\fR(..., \fBoff_t\fR, ...); int \fBaioread64\fR(..., \fBoff64_t\fR, ...);
+int \fBaiowrite\fR(..., \fBoff_t\fR, ...); int \fBaiowrite64\fR(..., \fBoff64_t\fR, ...);
+.TE
+
+.SS "<\fBsys/dirent.h\fR>"
+
+.TS
+l l
+l l .
+int \fBgetdents\fR(..., \fBdirent\fR); int \fBgetdents64\fR(..., \fBdirent64\fR);
+
+.TE
+
+.SS "<\fBsys/mman.h\fR>"
+
+.TS
+l l .
+void \fBmmap\fR(..., \fBoff_t\fR); void \fBmmap64\fR(..., \fBoff64_t\fR);
+.TE
+
+.SS "<\fBsys/resource.h\fR>"
+
+.TS
+l l
+l l .
+int \fBgetrlimit\fR(..., int \fBgetrlimit64\fR(...,
+ struct \fBrlimit\fR *); struct \fBrlimit64\fR *);
+int \fBsetrlimit\fR(..., int \fBsetrlimit64\fR(...,
+ const struct \fBrlimit\fR *); const struct \fBrlimit64\fR *);
+.TE
+
+.SS "<\fBsys/sendfile.h\fR>"
+
+.TS
+l l
+l l .
+ssize_t \fBsendfile\fR(..., ssize_t \fBsendfile64\fR(...,
+ \fBoff_t\fR *, ...); \fBoff64_t\fR *, ...);
+ssize_t \fBsendfilev\fR(..., const ssize_t \fBsendfilev64\fR(..., const
+ struct \fBsendfilevec\fR *, ...); struct \fBsendfilevec64\fR *, ...);
+
+.TE
+
+.SS "<\fBsys/stat.h\fR>"
+
+.TS
+l l
+l l .
+int \fBfstat\fR(..., struct \fBstat\fR *); int \fBfstat64\fR(..., struct \fBstat64\fR *);
+int \fBfstatat\fR(..., int \fBfstatat64\fR(...,
+ struct \fBstat\fR *, int); struct \fBstat64\fR *, int);
+int \fBlstat\fR(..., struct \fBstat\fR *); int \fBlstat64\fR(..., struct \fBstat64\fR *);
+int \fBstat\fR(..., struct \fBstat\fR *); int \fBstat64\fR(..., struct \fBstat64\fR *);
+.TE
+
+.SS "<\fBsys/statvfs.h\fR>"
+
+.TS
+l l
+l l .
+int \fBstatvfs\fR(..., int \fBstatvfs64\fR(...,
+ struct \fBstatvfs\fR *); struct \fBstatvfs64\fR *);
+int \fBfstatvfs\fR(..., int \fBfstatvfs64\fR(...,
+ struct \fBstatvfs\fR *); struct \fBstatvfs64\fR *);
+.TE
+
+.SS "<\fBucbinclude/stdio.h\fR>"
+
+.TS
+l l
+l l .
+FILE *\fBfopen()\fR FILE *\fBfopen64()\fR
+FILE *\fBfreopen()\fR FILE *\fBfreopen64()\fR
+.TE
+
+.SS "<\fBucbinclude/sys/dir.h\fR>"
+
+.TS
+l l
+l l .
+int \fBalphasort\fR( int \fBalphasort64\fR(
+ struct \fBdirect\fR **, struct \fBdirect64\fR **,
+ struct \fBdirect\fR **); struct \fBdirect64\fR **);
+struct \fBdirect *\fR\fBreaddir()\fR; struct \fBdirect64 *\fR\fBreaddir64()\fR;
+int \fBscandir\fR(..., int \fBscandir64\fR(...,
+ struct \fBdirect\fR *(*[]);, ...); struct \fBdirect64\fR *(*[]);, ...);
+
+.TE
+
+.SS "<\fBunistd.h\fR>"
+
+.TS
+l l
+l l .
+int \fBlockf\fR(..., \fBoff_t\fR); int \fBlockf64\fR(..., \fBoff64_t\fR);
+\fBoff_t lseek\fR(..., \fBoff_t\fR, ...); \fBoff64_t lseek64\fR(..., \fBoff64_t\fR, ...);
+int \fBftruncate\fR(..., \fBoff_t\fR); int \fBftruncate64\fR..., \fBoff64_t\fR);
+ssize_t \fBpread\fR(..., \fBoff_t\fR); ssize_t \fBpread64\fR..., \fBoff64_t\fR);
+ssize_t \fBpwrite\fR(..., \fBoff_t\fR); ssize_t \fBpwrite64\fR(..., \fBoff64_t\fR);
+ssize_t \fBpreadv\fR(..., \fBoff_t\fR); ssize_t \fBpreadv64\fR..., \fBoff64_t\fR);
+ssize_t \fBpwritev\fR(..., \fBoff_t\fR); ssize_t \fBpwritev64\fR(..., \fBoff64_t\fR);
+int \fBtruncate\fR(..., \fBoff_t\fR); int \fBtruncate64\fR(..., \fBoff64_t\fR);
+.TE
+
+.SH SEE ALSO
+.BR lfcompile (7),
+.BR lfcompile64 (7)
diff --git a/usr/src/man/man7/lfcompile.7 b/usr/src/man/man7/lfcompile.7
new file mode 100644
index 0000000000..da5408179a
--- /dev/null
+++ b/usr/src/man/man7/lfcompile.7
@@ -0,0 +1,223 @@
+'\" te
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
+.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH LFCOMPILE 7 "Aug 24, 2009"
+.SH NAME
+lfcompile \- large file compilation environment for 32-bit applications
+.SH DESCRIPTION
+.sp
+.LP
+All 64-bit applications can manipulate large files by default. The methods
+described on this page allow 32-bit applications to manipulate large files.
+.sp
+.LP
+In the large file compilation environment, source interfaces are bound to
+appropriate 64-bit functions, structures, and types. Compiling in this
+environment allows 32-bit applications to access files whose size is greater
+than or equal to 2 Gbyte ( 2^31 bytes).
+.sp
+.LP
+Each interface named \fIxxx\fR\fB()\fR that needs to access 64-bit entities to
+access large files maps to a \fIxxx\fR\fB64()\fR call in the resulting binary.
+All relevant data types are defined to be of correct size (for example,
+\fBoff_t\fR has a typedef definition for a 64-bit entity).
+.sp
+.LP
+An application compiled in this environment is able to use the
+\fIxxx\fR\fB()\fR source interfaces to access both large and small files,
+rather than having to explicitly utilize the transitional \fIxxx\fR\fB64()\fR
+interface calls to access large files. See the \fBlfcompile64\fR(7) manual page
+for information regarding the transitional compilation environment.
+.sp
+.LP
+Applications can be compiled in the large file compilation environment by using
+the following methods:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Use the \fBgetconf\fR(1) utility with one or more of the arguments listed in
+the table below. This method is recommended for portable applications.
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+\fBargument\fR \fBpurpose\fR
+_
+\fBLFS_CFLAGS\fR T{
+obtain compilation flags necessary to enable the large file compilation environment
+T}
+\fBLFS_LDFLAGS\fR obtain link editor options
+\fBLFS_LIBS\fR obtain link library names
+\fBLFS_LINTFLAGS\fR obtain lint options
+.TE
+
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Set the compile-time flag \fB_FILE_OFFSET_BITS\fR to 64 before including any
+headers. Applications may combine objects produced in the large file
+compilation environment with objects produced in the transitional compilation
+environment, but must be careful with respect to interoperability between those
+objects. Applications should not declare global variables of types whose sizes
+change between compilation environments.
+.RE
+.SS "Access to Additional Large File Interfaces"
+.sp
+.LP
+The \fBfseek()\fR and \fBftell()\fR functions \fIdo not\fR map to functions
+named \fBfseek64()\fR and \fBftell64()\fR; rather, the large file additions
+\fBfseeko()\fR and \fBftello()\fR, have functionality identical to
+\fBfseek()\fR and \fBftell()\fR and \fIdo\fR map to the 64-bit functions
+\fBfseeko64()\fR and \fBftello64()\fR. Applications wishing to access large
+files should use \fBfseeko()\fR and \fBftello()\fR in place of \fBfseek()\fR
+and \fBftell()\fR. See the \fBfseek\fR(3C) and \fBftell\fR(3C) manual pages for
+information about \fBfseeko()\fR and \fBftello()\fR.
+.sp
+.LP
+Applications wishing to access \fBfseeko()\fR and \fBftello()\fR as well as
+the POSIX and X/Open specification-conforming interfaces should define the
+macro \fB_LARGEFILE_SOURCE\fR to be 1 and set whichever feature test macros are
+appropriate to obtain the desired environment (see \fBstandards\fR(7)).
+.SH EXAMPLES
+.sp
+.LP
+In the following examples, the large file compilation environment is accessed
+by invoking the \fBgetconf\fR utility with one of the arguments listed in the
+table above. The additional large file interfaces are accessed by specifying
+\fB-D_LARGEFILE_SOURCE\fR\&.
+.sp
+.LP
+The examples that use the form of command substitution specifying the command
+within parentheses preceded by a dollar sign can be executed only in a
+POSIX-conforming shell such as the Korn Shell (see \fBksh\fR(1)). In a shell
+that is not POSIX-conforming, such as the Bourne Shell (see \fBsh\fR(1)) and
+the C Shell (see \fBcsh\fR(1)), the \fBgetconf\fR calls must be enclosed within
+grave accent marks, as shown in the second example.
+.LP
+\fBExample 1 \fRCompile a program with a "large" \fBoff_t\fR that uses
+\fBfseeko()\fR, \fBftello()\fR, and \fByacc\fR.
+.sp
+.LP
+The following example compiles a program with a "large" \fBoff_t\fR and uses
+\fBfseeko()\fR, \fBftello()\fR, and \fByacc\fR(1).
+
+.sp
+.in +2
+.nf
+$ c89 -D_LARGEFILE_SOURCE \e
+ -D_FILE_OFFSET_BITS=64 -o foo \e
+ $(getconf LFS_CFLAGS) y.tab.c b.o \e
+ $(getconf LFS_LDFLAGS) \e
+ -ly $(getconf LFS_LIBS)
+.fi
+.in -2
+
+.LP
+\fBExample 2 \fRCompile a program with a "large" \fBoff_t\fR that does not use
+\fBfseeko()\fR and \fBftello()\fR and has no application specific libraries.
+.sp
+.in +2
+.nf
+% c89 -D_FILE_OFFSET_BITS=64 \e
+ \(gagetconf LFS_CFLAGS\(ga a.c \e
+ \(gagetconf LFS_LDFLAGS\(ga \e
+ \(gagetconf LFS_LIBS\(ga \e
+.fi
+.in -2
+
+.LP
+\fBExample 3 \fRCompile a program with a "default" \fBoff_t\fR that uses
+\fBfseeko()\fR and \fBftello()\fR.
+.sp
+.in +2
+.nf
+$ c89 -D_LARGEFILE_SOURCE a.c
+.fi
+.in -2
+
+.SH SEE ALSO
+.sp
+.LP
+.BR csh (1),
+.BR getconf (1),
+.BR ksh (1),
+.BR sh (1),
+.BR yacc (1),
+.BR fseek (3C),
+.BR ftell (3C),
+.BR lf64 (7),
+.BR lfcompile64 (7),
+.BR standards (7)
+.SH NOTES
+.sp
+.LP
+Certain system-specific or non-portable interfaces are not usable in the large
+file compilation environment. Known cases are:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Kernel data structures read from \fB/dev/kmem\fR.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Interfaces in the kernel virtual memory library, \fB-lkvm\fR\&.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Interfaces in the \fBELF\fR access library, \fB-lelf\fR\&.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Interfaces to \fB/proc\fR defined in <\fBprocfs.h\fR>.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The \fBustat\fR(2) system call.
+.RE
+.sp
+.LP
+Programs that use these interfaces should not be compiled in the large file
+compilation environment. As a partial safeguard against making this mistake,
+including either of the <\fBlibelf.h\fR> or <\fBsys/procfs.h\fR> header files
+will induce a compilation error when the large file compilation environment is
+enabled.
+.sp
+.LP
+In general, caution should be exercised when using any separately-compiled
+library whose interfaces include data items of type \fBoff_t\fR or the other
+redefined types either directly or indirectly, such as with '\fBstruct
+stat\fR'. (The redefined types are \fBoff_t\fR, \fBrlim_t\fR, \fBino_t\fR,
+\fBblkcnt_t\fR, \fBfsblkcnt_t\fR, and \fBfsfilcnt_t\fR.) For the large file
+compilation environment to work correctly with such a library, the library
+interfaces must include the appropriate \fIxxx\fR\fB64()\fR binary entry points
+and must have them mapped to the corresponding primary functions when
+\fB_FILE_OFFSET_BITS\fR is set to 64.
+.sp
+.LP
+Care should be exercised using any of the \fBprintf()\fR or \fBscanf()\fR
+routines on variables of the types mentioned above. In the large file
+compilation environment, these variables should be printed or scanned using
+\fBlong long\fR formats.
+.SH BUGS
+.sp
+.LP
+Symbolic formats analogous to those found in \fB<sys/int_fmtio.h>\fR do not
+exist for printing or scanning variables of the types that are redefined in the
+large file compilation environment.
diff --git a/usr/src/man/man7/lfcompile64.7 b/usr/src/man/man7/lfcompile64.7
new file mode 100644
index 0000000000..440e331f06
--- /dev/null
+++ b/usr/src/man/man7/lfcompile64.7
@@ -0,0 +1,137 @@
+'\" te
+.\" Copyright (c) 1996, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH LFCOMPILE64 7 "Jan 26, 1998"
+.SH NAME
+lfcompile64 \- transitional compilation environment
+.SH DESCRIPTION
+.sp
+.LP
+All 64-bit applications can manipulate large files by default. The transitional
+interfaces described on this page can be used by 32-bit and 64-bit applications
+to manipulate large files.
+.sp
+.LP
+In the transitional compilation environment, explicit 64-bit functions,
+structures, and types are added to the \fBAPI.\fR Compiling in this
+environment allows both 32-bit and 64-bit applications to access files whose
+size is greater than or equal to 2 Gbyte ( 2^31 bytes).
+.sp
+.LP
+The transitional compilation environment exports all the explicit 64-bit
+functions (\fIxxx\fR\fB64()\fR) and types in addition to all the regular
+functions (\fIxxx\fR\fB()\fR) and types. Both \fIxxx\fR\fB()\fR and
+\fIxxx\fR\fB64()\fR functions are available to the program source. A 32-bit
+application must use the \fIxxx\fR\fB64()\fR functions in order to access large
+files. See the \fBlf64\fR(7) manual page for a complete listing of the 64-bit
+transitional interfaces.
+.sp
+.LP
+The transitional compilation environment differs from the large file
+compilation environment, wherein the underlying interfaces are bound to 64-bit
+functions, structures, and types. An application compiled in the large file
+compilation environment is able to use the \fIxxx\fR\fB()\fR source interfaces
+to access both large and small files, rather than having to explicitly utilize
+the transitional \fIxxx\fR\fB64()\fR interface calls to access large files. See
+the \fBlfcompile\fR(7) manual page for more information regarding the large
+file compilation environment.
+.sp
+.LP
+Applications may combine objects produced in the large file compilation
+environment with objects produced in the transitional compilation environment,
+but must be careful with respect to interoperability between those objects.
+Applications should not declare global variables of types whose sizes change
+between compilation environments.
+.sp
+.LP
+For applications that do not wish to conform to the POSIX or X/Open
+specifications, the 64-bit transitional interfaces are available by default.
+No compile-time flags need to be set.
+.SS "Access to Additional Large File Interfaces"
+.sp
+.LP
+Applications that wish to access the transitional interfaces as well as the
+POSIX or X/Open specification-conforming interfaces should use the following
+compilation methods and set whichever feature test macros are appropriate to
+obtain the desired environment (see \fBstandards\fR(7)).
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Set the compile-time flag \fB_LARGEFILE64_SOURCE\fR to 1 before including any
+headers.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Use the \fBgetconf\fR(1) command with one or more of the following arguments:
+.RE
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+\fBargument\fR \fBpurpose\fR
+_
+\fBLFS64_CFLAGS\fR T{
+obtain compilation flags necessary to enable the transitional compilation environment
+T}
+\fBLFS64_LDFLAGS\fR obtain link editor options
+\fBLFS64_LIBS\fR obtain link library names
+\fBLFS64_LINTFLAGS\fR obtain lint options
+.TE
+
+.SH EXAMPLES
+.sp
+.LP
+In the following examples, the transitional compilation environment is accessed
+by invoking the \fBgetconf\fR utility with one of the arguments listed in the
+table above. The additional large file interfaces are accessed either by
+specifying \fB-D_LARGEFILE64_SOURCE\fR or by invoking the \fBgetconf\fR utility
+with the arguments listed above.
+.sp
+.LP
+The example that uses the form of command substitution specifying the command
+within parentheses preceded by a dollar sign can be executed only in a
+POSIX-conforming shell such as the Korn Shell (see \fBksh\fR(1)). In a shell
+that is not POSIX-conforming, such as the Bourne Shell (see \fBsh\fR(1)) and
+the C Shell (see \fBcsh\fR(1)), the command must be enclosed within grave
+accent marks.
+.LP
+\fBExample 1 \fRAn example of compiling a program using transitional
+interfaces such as \fBlseek64()\fR and \fBfopen64()\fR:
+.sp
+.in +2
+.nf
+$ c89 -D_LARGEFILE64_SOURCE \e
+ $(getconf LFS64_CFLAGS) a.c \e
+ $(getconf LFS64_LDFLAGS) \e
+ $(getconf LFS64_LIBS)
+.fi
+.in -2
+
+.LP
+\fBExample 2 \fRAn example of running lint on a program using transitional
+interfaces:
+.sp
+.in +2
+.nf
+% lint -D_LARGEFILE64_SOURCE \e
+ \(gagetconf LFS64_LINTFLAGS\(ga \&.\|.\|. \e
+ \(gagetconf LFS64_LIBS\(ga
+.fi
+.in -2
+
+.SH SEE ALSO
+.sp
+.LP
+.BR getconf (1),
+.BR lseek (2),
+.BR fopen (3C),
+.BR lf64 (7),
+.BR standards (7)
diff --git a/usr/src/man/man7/loader.4th.7 b/usr/src/man/man7/loader.4th.7
new file mode 100644
index 0000000000..3830d1de62
--- /dev/null
+++ b/usr/src/man/man7/loader.4th.7
@@ -0,0 +1,206 @@
+.\" Copyright (c) 1999 Daniel C. Sobral
+.\" All rights reserved.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\" notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\" notice, this list of conditions and the following disclaimer in the
+.\" documentation and/or other materials provided with the distribution.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+.\" SUCH DAMAGE.
+.\"
+.Dd Apr 22, 2017
+.Dt LOADER.4TH 7
+.Os
+.Sh NAME
+.Nm loader.4th
+.Nd loader.conf processing tools
+.Sh DESCRIPTION
+The file that goes by the name of
+.Nm
+is a set of commands designed to manipulate
+.Xr loader.conf 5
+files.
+The default
+.Pa /boot/loader.rc
+includes
+.Nm
+and uses one of its commands to automatically read and process
+the standard
+.Xr loader.conf 5
+files.
+Other commands exists to help the user specify alternate
+configurations.
+.Pp
+The commands of
+.Nm
+by themselves are not enough for most uses.
+Please refer to the
+examples below for the most common situations, and to
+.Xr loader 7
+for additional commands.
+.Pp
+Before using any of the commands provided in
+.Nm ,
+it must be included
+through the command:
+.Pp
+.Dl include loader.4th
+.Pp
+This line is present in the default
+.Pa /boot/loader.rc
+file, so it is not needed (and should not be re-issued) in a normal setup.
+.Pp
+The commands provided by it are:
+.Bl -tag -width disable-module_module -compact -offset indent
+.It Ic boot
+.It Ic boot Ar kernelname Op Cm ...
+.It Ic boot Ar directory Op Cm ...
+.It Ic boot Fl flag Cm ...
+Boot as specified by the
+.Xr loader.conf 5
+files read.
+.Pp
+Depending on the arguments passed, it can override boot flags and
+either the kernel name or the search path for kernel and modules.
+.Pp
+.It Ic boot-conf
+.It Ic boot-conf Ar kernelname Op Cm ...
+.It Ic boot-conf Ar directory Op Cm ...
+.It Ic boot-conf Fl flag Cm ...
+Works like
+.Ic boot
+described above, but instead of booting immediately, uses
+.Ic autoboot ,
+so it can be stopped.
+.Pp
+.It Ic start
+Reads
+.Pa /boot/defaults/loader.conf ,
+all other
+.Xr loader.conf 5
+files specified in it, then loads the desired kernel and modules
+.Pq if not already loaded .
+After which you can use the
+.Ic boot
+or
+.Ic autoboot
+commands or simply exit (provided
+.Va autoboot_delay
+is not set to NO) to boot the system.
+.Ic start
+is the command used in the default
+.Pa /boot/loader.rc
+file
+.Pq see Xr loader 7 .
+.Pp
+.It Ic initialize
+Initialize the support library so commands can be used without executing
+.Ic start
+first.
+Like
+.Ic start ,
+it reads
+.Pa /boot/defaults/loader.conf
+and all other
+.Xr loader.conf 5
+files specified in it
+.Pq but does not load kernel or modules .
+Returns a flag on the stack to indicate
+if any configuration files were successfully loaded.
+.Pp
+.It Ic read-conf Ar filename
+Reads and processes a
+.Xr loader.conf 5
+file.
+Does not proceed to boot.
+.Pp
+.It Ic enable-module Ar module
+Enables the loading of
+.Ar module .
+.Pp
+.It Ic disable-module Ar module
+Disables the loading of
+.Ar module .
+.Pp
+.It Ic toggle-module Ar module
+Toggles the loading of
+.Ar module
+on and off.
+.Pp
+.It Ic show-module Ar module
+Shows the information gathered in the
+.Xr loader.conf 5
+files about the module
+.Ar module .
+.Pp
+.It Ic show-module-options
+Shows all modules defined in current
+.Xr loader.conf 5
+configuration.
+.Pp
+.It Ic retry
+Used inside
+.Xr loader.conf 5
+files to specify the action after a module loading fails.
+.Pp
+.It Ic ignore
+Used inside
+.Xr loader.conf 5
+files to specify the action after a module loading fails.
+.It Ic try-include Ar file Op Ar
+Process script files if they exist.
+Each file, in turn, is completely read into memory,
+and then each of its lines is passed to the command line interpreter.
+If any error is returned by the interpreter, the try-include
+command aborts immediately, without reading any other files, and
+silently returns without error.
+.El
+.Sh FILES
+.Bl -tag -width /boot/forth/loader.4th -compact
+.It Pa /boot/loader
+The
+.Xr loader 7 .
+.It Pa /boot/forth/loader.4th
+.Nm
+itself.
+.It Pa /boot/loader.rc
+.Xr loader 7
+bootstrapping script.
+.It Pa /boot/defaults/loader.conf
+File loaded by the
+.Ic start
+command.
+.El
+.Sh EXAMPLES
+Standard
+.Pa /boot/loader.rc :
+.Pp
+.Bd -literal -offset indent -compact
+include /boot/forth/loader.4th
+start
+.Ed
+.Pp
+Read an additional configuration file and then proceed to boot:
+.Pp
+.Bd -literal -offset indent -compact
+unload
+read-conf /boot/special.conf
+boot-conf
+.Ed
+.Sh SEE ALSO
+.Xr loader.conf 5 ,
+.Xr loader 7
diff --git a/usr/src/man/man7/loader.7 b/usr/src/man/man7/loader.7
new file mode 100644
index 0000000000..c3ab1d35b3
--- /dev/null
+++ b/usr/src/man/man7/loader.7
@@ -0,0 +1,909 @@
+.\" Copyright (c) 1999 Daniel C. Sobral
+.\" Copyright 2019 OmniOS Community Edition (OmniOSce) Association.
+.\" All rights reserved.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\" notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\" notice, this list of conditions and the following disclaimer in the
+.\" documentation and/or other materials provided with the distribution.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+.\" SUCH DAMAGE.
+.\"
+.Dd January 25, 2022
+.Dt LOADER 7
+.Os
+.Sh NAME
+.Nm loader
+.Nd kernel bootstrapping final stage
+.Sh DESCRIPTION
+The
+.Nm
+is the final stage of
+.Nm illumos Ns 's
+kernel bootstrapping process.
+The actual name for the stage depends on the platform.
+On IA32 (i386) architectures with BIOS firmware, it is a
+.Pa BTX
+client and named
+.Nm loader .
+It is linked statically to libstand and usually located in the directory
+.Pa /boot .
+.Pp
+.Nm
+supports booting from
+.Cm ZFS ,
+.Cm UFS ,
+.Cm PCFS ,
+.Cm HSFS
+and
+.Cm NFS
+file systems.
+Additionally,
+.Nm
+can load files from the
+.Cm TFTP
+file service.
+The NFS and TFTP based boot is enabled via
+.Xr pxeboot 7 .
+The
+.Nm
+also does support uncompressing gzip files while reading.
+The uncompression will happen automatically if the compressed file is stored
+without .gz suffix or if the file is accessed by leaving out the .gz suffix from
+the name.
+If the file is referred by full name, including .gz suffix, then the file
+content is read as is and the uncompression is not performed.
+.Pp
+.Nm
+provides a scripting language that can be used to
+automate tasks, do pre-configuration or assist in recovery
+procedures.
+This scripting language is roughly divided in
+two main components.
+The smaller one is a set of commands
+designed for direct use by the casual user, called "builtin
+commands" for historical reasons.
+The main drive behind these commands is user-friendliness.
+The bigger component is an
+.Tn ANS
+Forth compatible Forth interpreter based on FICL, by
+.An John Sadler .
+.Pp
+During initialization,
+.Nm
+will probe for a console and set the
+.Va console
+variable, or set it to serial console
+.Pq Do Li ttya Dc - Dq Li ttyd
+if the previous boot stage used that.
+If multiple consoles are selected, they will be listed separated by commas.
+Then, devices are probed,
+.Va currdev
+and
+.Va loaddev
+are set, and
+.Va screen-#cols ,
+.Va screen-#rows ,
+and
+.Va ISADIR
+are set.
+Next,
+.Tn FICL
+is initialized, the builtin words are added to its vocabulary.
+The inner interpreter
+.Nm
+will use with
+.Tn FICL
+is then set to
+.Ic interpret ,
+which is
+.Tn FICL Ns 's
+default.
+After that,
+.Pa /boot/loader.rc
+is processed if available.
+These files are processed through the
+.Ic include
+command, which reads all of them into memory before processing them,
+making disk changes possible.
+.Pp
+At this point, if an
+.Ic autoboot
+has not been tried, and if
+.Va autoboot_delay
+is not set to
+.Dq Li NO
+(not case sensitive), then an
+.Ic autoboot
+will be tried.
+If the system gets past this point,
+.Va prompt
+will be set and
+.Nm
+will engage interactive mode.
+Please note that historically even when
+.Va autoboot_delay
+is set to
+.Dq Li 0
+user will be able to interrupt autoboot process by pressing some key
+on the console while kernel and modules are being loaded.
+In some
+cases such behaviour may be undesirable, to prevent it set
+.Va autoboot_delay
+to
+.Dq Li -1 ,
+in this case
+.Nm
+will engage interactive mode only if
+.Ic autoboot
+has failed.
+.Ss Builtin Commands
+In
+.Nm ,
+builtin commands take parameters from the command line.
+If an error condition occurs, an exception will be generated,
+which can be intercepted using
+.Tn ANS
+Forth exception handling
+words.
+If not intercepted, an error message will be displayed and
+the interpreter's state will be reset, emptying the stack and restoring
+interpreting mode.
+.Pp
+The builtin commands available are:
+.Pp
+.Bl -tag -width Ds -compact
+.It Ic autoboot Op Ar seconds Op Ar prompt
+Proceeds to bootstrap the system after a number of seconds, if not
+interrupted by the user.
+Displays a countdown prompt
+warning the user the system is about to be booted,
+unless interrupted by a key press.
+The kernel will be loaded first if necessary.
+Defaults to 10 seconds.
+.Pp
+.It Ic bcachestat
+Displays statistics about disk cache usage.
+For debugging only.
+.Pp
+.It Ic boot
+.It Ic boot Ar kernelname Op Cm ...
+.It Ic boot Fl flag Cm ...
+Immediately proceeds to bootstrap the system, loading the kernel
+if necessary.
+Any flags or arguments are passed to the kernel, but they
+must precede the kernel name, if a kernel name is provided.
+.Pp
+.Em WARNING :
+The behavior of this builtin is changed if
+.Xr loader.4th 7
+is loaded.
+.Pp
+.It Ic chain Ar device
+Chain load another boot loader from the specified device.
+Device can be either disk name or partition.
+.Pp
+.It Ic echo Xo
+.Op Fl n
+.Op Aq message
+.Xc
+Displays text on the screen.
+A new line will be printed unless
+.Fl n
+is specified.
+.Pp
+.It Ic heap
+Displays memory usage statistics.
+For debugging purposes only.
+.Pp
+.It Ic help Op topic Op subtopic
+Shows help messages read from
+.Pa /boot/loader.help .
+The special topic
+.Em index
+will list the topics available.
+.Pp
+.It Ic include Ar file Op Ar
+Process script files.
+Each file, in turn, is completely read into memory,
+and then each of its lines is passed to the command line interpreter.
+If any error is returned by the interpreter, the include
+command aborts immediately, without reading any other files, and
+returns an error itself (see
+.Sx ERRORS ) .
+.Pp
+.It Ic load Xo
+.Op Fl t Ar type
+.Ar file Cm ...
+.Xc
+Loads a kernel or file of opaque contents tagged as being of the type
+.Ar type .
+Kernel and modules can be either in a.out or ELF format.
+Any arguments passed after the name of the file to be loaded
+will be passed as arguments to that file.
+.Pp
+.It Ic ls Xo
+.Op Fl l
+.Op Ar path
+.Xc
+Displays a listing of files in the directory
+.Ar path ,
+or the root directory if
+.Ar path
+is not specified.
+If
+.Fl l
+is specified, file sizes will be shown too.
+.Pp
+.It Ic lsdev Op Fl v
+Lists all of the devices from which it may be possible to load modules.
+In addition to disks and partitions, ZFS pools are also listed.
+If
+.Fl v
+is specified, more details are printed.
+For ZFS pools the output resembles
+.Nm zpool Cm status
+output.
+.Pp
+.It Ic lsmod Op Fl v
+Displays loaded modules.
+If
+.Fl v
+is specified, more details are shown.
+.Pp
+.It Ic lszfs Ar filesystem
+A ZFS extended command that can be used to explore the ZFS filesystem
+hierarchy in a pool.
+Lists the immediate children of the
+.Ar filesystem .
+The filesystem hierarchy is rooted at a filesystem with the same name
+as the pool.
+.Pp
+.It Ic more Ar file Op Ar
+Display the files specified, with a pause at each
+.Va screen-#rows
+displayed.
+.Pp
+.It Ic read Xo
+.Op Fl t Ar seconds
+.Op Fl p Ar prompt
+.Op Va variable
+.Xc
+Reads a line of input from the terminal, storing it in
+.Va variable
+if specified.
+A timeout can be specified with
+.Fl t ,
+though it will be canceled at the first key pressed.
+A prompt may also be displayed through the
+.Fl p
+flag.
+.Pp
+.It Ic reboot
+Immediately reboots the system.
+.Pp
+.It Ic set Ar variable
+.It Ic set Ar variable Ns = Ns Ar value
+Set loader's environment variables.
+.Pp
+.It Ic show Op Va variable
+Displays the specified variable's value, or all variables and their
+values if
+.Va variable
+is not specified.
+.Pp
+.It Ic unload
+Remove all modules from memory.
+.Pp
+.It Ic unset Va variable
+Removes
+.Va variable
+from the environment.
+.Pp
+.It Ic \&?
+Lists available commands.
+.El
+.Ss ZFS Features
+.Nm
+supports the following format for specifying ZFS filesystems which
+can be used wherever
+.Nm
+refers to a device specification:
+.Pp
+.Ar zfs:pool/filesystem:
+.Pp
+where
+.Pa pool/filesystem
+is a ZFS filesystem name as described in
+.Xr zfs 8 .
+.Ss Builtin Environment Variables
+The
+.Nm
+has actually two different kinds of
+.Sq environment
+variables.
+There are ANS Forth's
+.Em environmental queries ,
+and a separate space of environment variables used by builtins, which
+are not directly available to Forth words.
+It is the latter type that this section covers.
+.Pp
+Environment variables can be set and unset through the
+.Ic set
+and
+.Ic unset
+builtins, and can have their values interactively examined through the
+use of the
+.Ic show
+builtin.
+Their values can also be accessed as described in
+.Sx BUILTIN PARSER .
+.Pp
+Notice that these environment variables are not inherited by any shell
+after the system has been booted.
+.Pp
+A few variables are set automatically by
+.Nm .
+Others can affect the behavior of either
+.Nm
+or the kernel at boot.
+Some options may require a value,
+while others define behavior just by being set.
+Both types of builtin variables are described below.
+.Bl -tag -width bootfile
+.It Va autoboot_delay
+Number of seconds
+.Ic autoboot
+will wait before booting.
+If this variable is not defined,
+.Ic autoboot
+will default to 10 seconds.
+.Pp
+If set to
+.Dq Li NO ,
+no
+.Ic autoboot
+will be automatically attempted after processing
+.Pa /boot/loader.rc ,
+though explicit
+.Ic autoboot Ns 's
+will be processed normally, defaulting to 10 seconds delay.
+.Pp
+If set to
+.Dq Li 0 ,
+no delay will be inserted, but user still will be able to interrupt
+.Ic autoboot
+process and escape into the interactive mode by pressing some key
+on the console while kernel and
+modules are being loaded.
+.Pp
+If set to
+.Dq Li -1 ,
+no delay will be inserted and
+.Nm
+will engage interactive mode only if
+.Ic autoboot
+has failed for some reason.
+.It Va boot_ask
+Will set
+.Xr kernel 8
+.Fl a
+option.
+.It Va boot_debug
+Will set
+.Xr kernel 8
+.Fl d
+option.
+.It Va boot_kmdb
+Will set
+.Xr kernel 8
+.Fl k
+option.
+.It Va boot_reconfigure
+Will set
+.Xr kernel 8
+.Fl r
+option.
+.It Va boot_single
+Will set
+.Xr kernel 8
+.Fl s
+option.
+.It Va boot_verbose
+Will set
+.Xr kernel 8
+.Fl v
+option.
+.It Va boot-args
+Will set custom arguments for the kernel.
+If set in
+.Nm
+configuration, the
+.Nm
+startup will parse the
+.Va boot-args
+value to set boot prefixed variables listed above, any unrecognized options
+are added to kernel command line verbatim.
+.It Va bootfile
+The name of the kernel.
+.It Va console
+Defines the current console or consoles.
+Multiple consoles may be specified.
+In that case, the first listed console will become the default console for
+the
+.Xr kernel 8 .
+.It Va currdev
+Selects the default device.
+Syntax for devices is odd.
+.It Va interpret
+Has the value
+.Dq Li ok
+if the Forth's current state is interpreting.
+.It Va screen-#rows
+Define the number of lines on the screen, to be used by the pager.
+.It Va module_path
+Sets the list of directories which will be searched for modules
+named in a load command or implicitly required by a dependency.
+The default value for this variable is
+.Dq Li /platform/i86pc/${ISADIR}
+.It Va prompt
+Value of
+.Nm Ns 's
+prompt.
+Defaults to
+.Dq Li "${interpret}" .
+If variable
+.Va prompt
+is unset, the default prompt is
+.Ql > .
+.It Va os_console
+If set, the value is used to set
+.Xr kernel 8
+.Va console
+property.
+.El
+.Pp
+Other variables are used for loader or to set kernel properties or for
+informational purposes.
+.Ss Builtin Parser
+When a builtin command is executed, the rest of the line is taken
+by it as arguments, and it is processed by a special parser which
+is not used for regular Forth commands.
+.Pp
+This special parser applies the following rules to the parsed text:
+.Bl -enum
+.It
+All backslash characters are preprocessed.
+.Bl -bullet
+.It
+\eb , \ef , \er , \en and \et are processed as in C.
+.It
+\es is converted to a space.
+.It
+\ev is converted to
+.Tn ASCII
+11.
+.It
+\ez is just skipped.
+Useful for things like
+.Dq \e0xf\ez\e0xf .
+.It
+\e0xN and \e0xNN are replaced by the hex N or NN.
+.It
+\eNNN is replaced by the octal NNN
+.Tn ASCII
+character.
+.It
+\e" , \e' and \e$ will escape these characters, preventing them from
+receiving special treatment in Step 2, described below.
+.It
+\e\e will be replaced with a single \e .
+.It
+In any other occurrence, backslash will just be removed.
+.El
+.It
+Every string between non-escaped quotes or double-quotes will be treated
+as a single word for the purposes of the remaining steps.
+.It
+Replace any
+.Li $VARIABLE
+or
+.Li ${VARIABLE}
+with the value of the environment variable
+.Va VARIABLE .
+.It
+Space-delimited arguments are passed to the called builtin command.
+Spaces can also be escaped through the use of \e\e .
+.El
+.Pp
+An exception to this parsing rule exists, and is described in
+.Sx Builtins And FORTH .
+.Ss Builtins And FORTH
+All builtin words are state-smart, immediate words.
+If interpreted, they behave exactly as described previously.
+If they are compiled, though,
+they extract their arguments from the stack instead of the command line.
+.Pp
+If compiled, the builtin words expect to find, at execution time, the
+following parameters on the stack:
+.D1 Ar addrN lenN ... addr2 len2 addr1 len1 N
+where
+.Ar addrX lenX
+are strings which will compose the command line that will be parsed
+into the builtin's arguments.
+Internally, these strings are concatenated in from 1 to N,
+with a space put between each one.
+.Pp
+If no arguments are passed, a 0
+.Em must
+be passed, even if the builtin accepts no arguments.
+.Pp
+While this behavior has benefits, it has its trade-offs.
+If the execution token of a builtin is acquired (through
+.Ic '
+or
+.Ic ['] ) ,
+and then passed to
+.Ic catch
+or
+.Ic execute ,
+the builtin behavior will depend on the system state
+.Bf Em
+at the time
+.Ic catch
+or
+.Ic execute
+is processed!
+.Ef
+This is particularly annoying for programs that want or need to
+handle exceptions.
+In this case, the use of a proxy is recommended.
+For example:
+.Dl : (boot) boot ;
+.Ss FICL
+.Tn FICL
+is a Forth interpreter written in C, in the form of a forth
+virtual machine library that can be called by C functions and vice
+versa.
+.Pp
+In
+.Nm ,
+each line read interactively is then fed to
+.Tn FICL ,
+which may call
+.Nm
+back to execute the builtin words.
+The builtin
+.Ic include
+will also feed
+.Tn FICL ,
+one line at a time.
+.Pp
+The words available to
+.Tn FICL
+can be classified into four groups.
+The
+.Tn ANS
+Forth standard words, extra
+.Tn FICL
+words, extra
+.Fx
+words, and the builtin commands;
+the latter were already described.
+The
+.Tn ANS
+Forth standard words are listed in the
+.Sx STANDARDS
+section.
+The words falling in the two other groups are described in the
+following subsections.
+.Ss FICL Extra Words
+.Bl -tag -width wid-set-super
+.It Ic .env
+.It Ic .ver
+.It Ic -roll
+.It Ic 2constant
+.It Ic >name
+.It Ic body>
+.It Ic compare
+This is the STRING word set's
+.Ic compare .
+.It Ic compile-only
+.It Ic endif
+.It Ic forget-wid
+.It Ic parse-word
+.It Ic sliteral
+This is the STRING word set's
+.Ic sliteral .
+.It Ic wid-set-super
+.It Ic w@
+.It Ic w!
+.It Ic x.
+.It Ic empty
+.It Ic cell-
+.It Ic -rot
+.El
+.Ss Loader Extra Words
+.Bl -tag -width XXXXXXXX
+.It Ic \&$ Pq --
+Evaluates the remainder of the input buffer, after having printed it first.
+.It Ic \&% Pq --
+Evaluates the remainder of the input buffer under a
+.Ic catch
+exception guard.
+.It Ic .#
+Works like
+.Ic \&.
+but without outputting a trailing space.
+.It Ic fclose Pq Ar fd --
+Closes a file.
+.It Ic fkey Pq Ar fd -- char
+Reads a single character from a file.
+.It Ic fload Pq Ar fd --
+Processes a file
+.Em fd .
+.It Ic fopen Pq Ar addr len mode Li -- Ar fd
+Opens a file.
+Returns a file descriptor, or \-1 in case of failure.
+The
+.Ar mode
+parameter selects whether the file is to be opened for read access, write
+access, or both.
+The constants
+.Dv O_RDONLY , O_WRONLY ,
+and
+.Dv O_RDWR
+are defined in
+.Pa /boot/forth/support.4th ,
+indicating read only, write only, and read-write access, respectively.
+.It Xo
+.Ic fread
+.Pq Ar fd addr len -- len'
+.Xc
+Tries to read
+.Em len
+bytes from file
+.Em fd
+into buffer
+.Em addr .
+Returns the actual number of bytes read, or -1 in case of error or end of
+file.
+.It Ic heap? Pq -- Ar cells
+Return the space remaining in the dictionary heap, in cells.
+This is not related to the heap used by dynamic memory allocation words.
+.It Ic inb Pq Ar port -- char
+Reads a byte from a port.
+.It Ic isvirtualized? Pq -- Ar addr len flag | Ar flag
+Returns
+.Ic true
+and string with virtualization engine name or
+.Ic false .
+.It Ic key Pq -- Ar char
+Reads a single character from the console.
+.It Ic key? Pq -- Ar flag
+Returns
+.Ic true
+if there is a character available to be read from the console.
+.It Ic ms Pq Ar u --
+Waits
+.Em u
+microseconds.
+.It Ic outb Pq Ar port char --
+Writes a byte to a port.
+.It Ic seconds Pq -- Ar u
+Returns the number of seconds since midnight.
+.It Ic tib> Pq -- Ar addr len
+Returns the remainder of the input buffer as a string on the stack.
+.El
+.Ss Loader Extra Framebuffer Words
+.Bl -tag -width XXXXXXXX
+.It Ic fb-bezier Pq Ar x1 y1 x2 y2 x3 y3 width --
+Draws a quadratic Bezier curve in the current foreground color using the
+three provided points and specified line with.
+.It Ic fb-drawrect Pq Ar x1 y1 x2 y2 fill --
+Draws a rectangle to the screen with the top left at
+.Em (x1,y1)
+and the bottom right at
+.Em (x2,y2)
+, using the current foreground color.
+If
+.Em fill
+is
+.Ic true
+then the rectangle will be filled in.
+.It Ic fb-line Pq Ar x1 y1 x2 y2 width --
+Draws a line from
+.Em (x1,y1)
+to
+.Em (x2,y2)
+in the current foreground color and with the specified width.
+.It Ic fb-putimage Pq Ar flags x1 y1 x2 y2 addr len -- flag
+Outputs an image to the screen.
+Returns
+.Ic true
+if the image was able to be written and
+.Ic false
+otherwise.
+Only truecolor PNG images are supported and the path to the file
+must be provided through the
+.Em addr
+and
+.Em len
+arguments on the stack.
+The image will be displayed in the rectangular screen region with the top left
+at
+.Em (x1,y1)
+and the bottom right at
+.Em (x2,y2)
+.
+.Pp
+Either
+.Em x2
+or
+.Em y2
+can be set to "0" which causes it to be calculated to maintain the aspect
+ratio of the image.
+If both are "0" then the native resolution of the image will be used.
+.Pp
+If
+.Em x1
+is "0", then the image will be placed as far over to the right of the
+screen as possible.
+Similarly, if
+.Em y1
+is "0", then the image will be placed as far down the screen as possible.
+.Pp
+Flags is a bitfield; the following bits are defined:
+.Bl -tag -width XXXXX -offset indent
+.It 1
+Draw a single pixel border around the image in the current foreground color.
+.It 2
+Do not scroll the image with the rest of the screen.
+.It 128
+Output diagnostic information (for debugging).
+.El
+.It Ic fb-setpixel Pq Ar x y --
+Colors the pixel at
+.Em (x,y)
+with the current foreground color.
+.It Ic term-drawrect Pq Ar x1 y1 x2 y2 --
+Draws a rectangle with rounded corners using terminal coordinates and the
+current foreground color.
+.El
+.Ss Loader Defined Environmental Queries
+.Bl -tag -width Ds
+.It arch-i386
+.Ic TRUE
+if the architecture is IA32.
+.It loader_version
+.Nm
+version.
+.El
+.Ss Errors
+The following values are thrown by
+.Nm :
+.Bl -tag -width XXXXX -offset indent
+.It 100
+Any type of error in the processing of a builtin.
+.It -1
+.Ic Abort
+executed.
+.It -2
+.Ic Abort"
+executed.
+.It -56
+.Ic Quit
+executed.
+.It -256
+Out of interpreting text.
+.It -257
+Need more text to succeed -- will finish on next run.
+.It -258
+.Ic Bye
+executed.
+.It -259
+Unspecified error.
+.El
+.Sh FILES
+.Bl -tag -width /boot/defaults/loader.conf -compact
+.It Pa /boot/defaults/loader.conf
+.It Pa /boot/conf.d/*
+.It Pa /boot/loader.conf
+.It Pa /boot/loader.conf.local
+.Nm
+configuration files, as described in
+.Xr loader.conf 5 .
+.It Pa /boot/loader.help
+Loaded by
+.Ic help .
+Contains the help messages.
+.It Pa /boot/loader.rc
+.Nm
+bootstrapping script.
+.It Pa /boot/forth/loader.4th
+Extra builtin-like words.
+.It Pa /boot/forth/support.4th
+.Pa loader.conf
+processing words.
+.It Pa /boot/loader
+.Nm
+itself.
+.El
+.Sh EXAMPLES
+Boot in single user mode:
+.Pp
+.Dl boot -s
+.Pp
+Load the kernel, a boot_archive, and then autoboot in five seconds.
+Notice that a kernel must be loaded before any other
+.Ic load
+command is attempted.
+.Bd -literal -offset indent
+load /platform/i86pc/kernel/amd64/unix
+load -t rootfs /platform/i86pc/amd64/boot_archive
+autoboot 5
+.Ed
+.Pp
+Set the default device used for loading a kernel from a ZFS filesystem:
+.Bd -literal -offset indent
+set currdev=zfs:rpool/ROOT/knowngood:
+.Ed
+.Sh NOTES
+Although setting the
+.Va currdev
+as shown in the example above is supported, it is advisable to use loader
+beadm command or boot environment menu instead.
+The reason is, the beadm or menu selection will also instruct loader to clean up
+the currently set configuration and load configuration from the new boot
+environment.
+.Sh SEE ALSO
+.Xr btxld 1onbld ,
+.Xr loader.conf 5 ,
+.Xr boot 8
+.Sh STANDARDS
+For the purposes of ANS Forth compliance, loader is an
+.Bf Em
+ANS Forth System with Environmental Restrictions, Providing
+.Ef
+.Bf Li
+.No .( ,
+.No :noname ,
+.No ?do ,
+parse, pick, roll, refill, to, value, \e, false, true,
+.No <> ,
+.No 0<> ,
+compile\&, , erase, nip, tuck
+.Ef
+.Em and
+.Li marker
+.Bf Em
+from the Core Extensions word set, Providing the Exception Extensions
+word set, Providing the Locals Extensions word set, Providing the
+Memory-Allocation Extensions word set, Providing
+.Ef
+.Bf Li
+\&.s,
+bye, forget, see, words,
+\&[if],
+\&[else]
+.Ef
+.Em and
+.Li [then]
+.Bf Em
+from the Programming-Tools extension word set, Providing the
+Search-Order extensions word set.
+.Ef
diff --git a/usr/src/man/man7/locale.7 b/usr/src/man/man7/locale.7
new file mode 100644
index 0000000000..a99304653b
--- /dev/null
+++ b/usr/src/man/man7/locale.7
@@ -0,0 +1,2463 @@
+.\"
+.\" Sun Microsystems, Inc. gratefully acknowledges The Open Group for
+.\" permission to reproduce portions of its copyrighted documentation.
+.\" Original documentation from The Open Group can be obtained online at
+.\" http://www.opengroup.org/bookstore/.
+.\"
+.\" The Institute of Electrical and Electronics Engineers and The Open
+.\" Group, have given us permission to reprint portions of their
+.\" documentation.
+.\"
+.\" In the following statement, the phrase ``this text'' refers to portions
+.\" of the system documentation.
+.\"
+.\" Portions of this text are reprinted and reproduced in electronic form
+.\" in the SunOS Reference Manual, from IEEE Std 1003.1, 2004 Edition,
+.\" Standard for Information Technology -- Portable Operating System
+.\" Interface (POSIX), The Open Group Base Specifications Issue 6,
+.\" Copyright (C) 2001-2004 by the Institute of Electrical and Electronics
+.\" Engineers, Inc and The Open Group. In the event of any discrepancy
+.\" between these versions and the original IEEE and The Open Group
+.\" Standard, the original IEEE and The Open Group Standard is the referee
+.\" document. The original Standard can be obtained online at
+.\" http://www.opengroup.org/unix/online.html.
+.\"
+.\" This notice shall appear on any product containing this material.
+.\"
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.\"
+.\"
+.\" Copyright (c) 1992, X/Open Company Limited. All Rights Reserved.
+.\" Portions Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved.
+.\"
+.TH LOCALE 7 "May 16, 2020"
+.SH NAME
+locale \- subset of a user's environment that depends on language and cultural
+conventions
+.SH DESCRIPTION
+A \fBlocale\fR is the definition of the subset of a user's environment that
+depends on language and cultural conventions. It is made up from one or more
+categories. Each category is identified by its name and controls specific
+aspects of the behavior of components of the system. Category names correspond
+to the following environment variable names:
+.sp
+.ne 2
+.na
+\fB\fBLC_CTYPE\fR\fR
+.ad
+.RS 15n
+Character classification and case conversion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBLC_COLLATE\fR\fR
+.ad
+.RS 15n
+Collation order.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBLC_TIME\fR\fR
+.ad
+.RS 15n
+Date and time formats.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBLC_NUMERIC\fR\fR
+.ad
+.RS 15n
+Numeric formatting.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBLC_MONETARY\fR\fR
+.ad
+.RS 15n
+Monetary formatting.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBLC_MESSAGES\fR\fR
+.ad
+.RS 15n
+Formats of informative and diagnostic messages and interactive responses.
+.RE
+
+.sp
+.LP
+The standard utilities base their behavior on the current locale, as defined
+in the ENVIRONMENT VARIABLES section for each utility. The behavior of some of
+the C-language functions will also be modified based on the current locale, as
+defined by the last call to \fBsetlocale\fR(3C).
+.sp
+.LP
+Locales other than those supplied by the implementation can be created by the
+application via the \fBlocaledef\fR(1) utility. The value that is used to
+specify a locale when using environment variables will be the string specified
+as the \fIname\fR operand to \fBlocaledef\fR when the locale was created. The
+strings "C" and "POSIX" are reserved as identifiers for the POSIX locale.
+.sp
+.LP
+Applications can select the desired locale by invoking the \fBsetlocale()\fR
+function with the appropriate value. If the function is invoked with an empty
+string, such as:
+.sp
+.in +2
+.nf
+setlocale(LC_ALL, "");
+.fi
+.in -2
+
+.sp
+.LP
+the value of the corresponding environment variable is used. If the environment
+variable is unset or is set to the empty string, the \fBsetlocale()\fR
+function sets the appropriate environment.
+.SS "Locale Definition"
+Locales can be described with the file format accepted by the \fBlocaledef\fR
+utility.
+.sp
+.LP
+The locale definition file must contain one or more locale category source
+definitions, and must not contain more than one definition for the same locale
+category.
+.sp
+.LP
+A category source definition consists of a category header, a category body and
+a category trailer. A category header consists of the character string naming
+of the category, beginning with the characters \fBLC_\fR. The category trailer
+consists of the string \fBEND\fR, followed by one or more blank characters and
+the string used in the corresponding category header.
+.sp
+.LP
+The category body consists of one or more lines of text. Each line contains an
+identifier, optionally followed by one or more operands. Identifiers are either
+keywords, identifying a particular locale element, or collating elements. Each
+keyword within a locale must have a unique name (that is, two categories cannot
+have a commonly-named keyword). No keyword can start with the characters
+\fBLC_\fR. Identifiers must be separated from the operands by one or more blank
+characters.
+.sp
+.LP
+Operands must be characters, collating elements, or strings of characters.
+Strings must be enclosed in double-quotes (\fB"\fR). Literal double-quotes
+within strings must be preceded by the <\fIescape character\fR>, as described
+below. When a keyword is followed by more than one operand, the operands must
+be separated by semicolons (\fB;\fR). Blank characters are allowed both before
+and after a semicolon.
+.sp
+.LP
+The first category header in the file can be preceded by a line modifying the
+comment character. It has the following format, starting in column 1:
+.sp
+.in +2
+.nf
+"comment_char %c\en",<\fIcomment character\fR>
+.fi
+.in -2
+
+.sp
+.LP
+The comment character defaults to the number sign (\fB#\fR). Blank lines and
+lines containing the <\fIcomment character\fR> in the first position are
+ignored.
+.sp
+.LP
+The first category header in the file can be preceded by a line modifying the
+escape character to be used in the file. It has the following format, starting
+in column 1:
+.sp
+.in +2
+.nf
+"escape_char %c\en",<\fIescape character\fR>
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The escape character defaults to backslash.
+.sp
+.LP
+A line can be continued by placing an escape character as the last character on
+the line; this continuation character will be discarded from the input.
+Although the implementation need not accept any one portion of a continued line
+with a length exceeding \fB{LINE_MAX}\fR bytes, it places no limits on the
+accumulated length of the continued line. Comment lines cannot be continued on
+a subsequent line using an escaped newline character.
+.sp
+.LP
+Individual characters, characters in strings, and collating elements must be
+represented using symbolic names, as defined below. In addition, characters can
+be represented using the characters themselves or as octal, hexadecimal or
+decimal constants. When non-symbolic notation is used, the resultant locale
+definitions will in many cases not be portable between systems. The left angle
+bracket (\fB<\fR) is a reserved symbol, denoting the start of a symbolic name;
+when used to represent itself it must be preceded by the escape character. The
+following rules apply to character representation:
+.RS +4
+.TP
+1.
+A character can be represented via a symbolic name, enclosed within angle
+brackets \fB<\fR and \fB>\fR. The symbolic name, including the angle brackets,
+must exactly match a symbolic name defined in the charmap file specified via
+the \fBlocaledef\fR \fB-f\fR option, and will be replaced by a character value
+determined from the value associated with the symbolic name in the charmap
+file. The use of a symbolic name not found in the charmap file constitutes an
+error, unless the category is \fBLC_CTYPE\fR or \fBLC_COLLATE\fR, in which
+case it constitutes a warning condition (see \fBlocaledef\fR(1) for a
+description of action resulting from errors and warnings). The specification of
+a symbolic name in a \fBcollating-element\fR or \fBcollating-symbol\fR section
+that duplicates a symbolic name in the charmap file (if present) is an error.
+Use of the escape character or a right angle bracket within a symbolic name is
+invalid unless the character is preceded by the escape character.
+.sp
+Example:
+.sp
+.in +2
+.nf
+<C>;<c-cedilla> "<M><a><y>"
+.fi
+.in -2
+.sp
+
+.RE
+.RS +4
+.TP
+2.
+A character can be represented by the character itself, in which case the
+value of the character is implementation-dependent. Within a string, the
+double-quote character, the escape character and the right angle bracket
+character must be escaped (preceded by the escape character) to be interpreted
+as the character itself. Outside strings, the characters
+.sp
+.in +2
+.nf
+\fB, ; < >\fR \fIescape_char\fR
+.fi
+.in -2
+.sp
+
+must be escaped to be interpreted as the character itself.
+.sp
+Example:
+.sp
+.in +2
+.nf
+c "May"
+.fi
+.in -2
+.sp
+
+.RE
+.RS +4
+.TP
+3.
+A character can be represented as an octal constant. An octal constant is
+specified as the escape character followed by two or more octal digits. Each
+constant represents a byte value. Multi-byte values can be represented by
+concatenated constants specified in byte order with the last constant
+specifying the least significant byte of the character.
+.sp
+Example:
+.sp
+.in +2
+.nf
+\e143;\e347;\e143\e150 "\e115\e141\e171"
+.fi
+.in -2
+.sp
+
+.RE
+.RS +4
+.TP
+4.
+A character can be represented as a hexadecimal constant. A hexadecimal
+constant is specified as the escape character followed by an \fBx\fR followed
+by two or more hexadecimal digits. Each constant represents a byte value.
+Multi-byte values can be represented by concatenated constants specified in
+byte order with the last constant specifying the least significant byte of the
+character.
+.sp
+Example:
+.sp
+.in +2
+.nf
+\ex63;\exe7;\ex63\ex68 "\ex4d\ex61\ex79"
+.fi
+.in -2
+.sp
+
+.RE
+.RS +4
+.TP
+5.
+A character can be represented as a decimal constant. A decimal constant is
+specified as the escape character followed by a \fBd\fR followed by two or more
+decimal digits. Each constant represents a byte value. Multi-byte values can be
+represented by concatenated constants specified in byte order with the last
+constant specifying the least significant byte of the character.
+.sp
+Example:
+.sp
+.in +2
+.nf
+\ed99;\ed231;\ed99\ed104 "\ed77\ed97\ed121"
+.fi
+.in -2
+.sp
+
+Only characters existing in the character set for which the locale definition
+is created can be specified, whether using symbolic names, the characters
+themselves, or octal, decimal or hexadecimal constants. If a charmap file is
+present, only characters defined in the charmap can be specified using octal,
+decimal or hexadecimal constants. Symbolic names not present in the charmap
+file can be specified and will be ignored, as specified under item 1 above.
+.RE
+.SS "LC_CTYPE"
+The \fBLC_CTYPE\fR category defines character classification, case conversion
+and other character attributes. In addition, a series of characters can be
+represented by three adjacent periods representing an ellipsis symbol
+(\fB\&...\fR). The ellipsis specification is interpreted as meaning that all
+values between the values preceding and following it represent valid
+characters. The ellipsis specification is valid only within a single encoded
+character set, that is, within a group of characters of the same size. An
+ellipsis is interpreted as including in the list all characters with an encoded
+value higher than the encoded value of the character preceding the ellipsis and
+lower than the encoded value of the character following the ellipsis.
+.sp
+.LP
+Example:
+.sp
+.in +2
+.nf
+\ex30;...;\ex39;
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+includes in the character class all characters with encoded values between the
+endpoints.
+.sp
+.LP
+The following keywords are recognized. In the descriptions, the term
+``automatically included'' means that it is not an error either to include or
+omit any of the referenced characters.
+.sp
+.LP
+The character classes \fBdigit\fR, \fBxdigit\fR, \fBlower\fR, \fBupper\fR, and
+\fBspace\fR have a set of automatically included characters. These only need to
+be specified if the character values (that is, encoding) differ from the
+implementation default values.
+.sp
+.ne 2
+.na
+\fB\fBupper\fR\fR
+.ad
+.RS 18n
+Define characters to be classified as upper-case letters.
+.sp
+In the POSIX locale, the 26 upper-case letters are included:
+.sp
+.in +2
+.nf
+A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
+.fi
+.in -2
+.sp
+
+In a locale definition file, no character specified for the keywords
+\fBcntrl\fR, \fBdigit\fR, \fBpunct\fR, or \fBspace\fR can be specified. The
+upper-case letters \fBA\fR to \fBZ\fR are automatically included in this class.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBlower\fR\fR
+.ad
+.RS 18n
+Define characters to be classified as lower-case letters. In the POSIX locale,
+the 26 lower-case letters are included:
+.sp
+.in +2
+.nf
+a b c d e f g h i j k l m n o p q r s t u v w x y z
+.fi
+.in -2
+.sp
+
+In a locale definition file, no character specified for the keywords
+\fBcntrl\fR, \fBdigit\fR, \fBpunct\fR, or \fBspace\fR can be specified. The
+lower-case letters \fBa\fR to \fBz\fR of the portable character set are
+automatically included in this class.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBalpha\fR\fR
+.ad
+.RS 18n
+Define characters to be classified as letters.
+.sp
+In the POSIX locale, all characters in the classes \fBupper\fR and \fBlower\fR
+are included.
+.sp
+In a locale definition file, no character specified for the keywords
+\fBcntrl\fR, \fBdigit\fR, \fBpunct\fR, or \fBspace\fR can be specified.
+Characters classified as either \fBupper\fR or \fBlower\fR are automatically
+included in this class.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdigit\fR\fR
+.ad
+.RS 18n
+Define the characters to be classified as numeric digits.
+.sp
+In the POSIX locale, only
+.sp
+.in +2
+.nf
+0 1 2 3 4 5 6 7 8 9
+.fi
+.in -2
+.sp
+
+are included.
+.sp
+In a locale definition file, only the digits \fB0\fR, \fB1\fR, \fB2\fR,
+\fB3\fR, \fB4\fR, \fB5\fR, \fB6\fR, \fB7\fR, \fB8\fR, and \fB9\fR can be
+specified, and in contiguous ascending sequence by numerical value. The digits
+\fB0\fR to \fB9\fR of the portable character set are automatically included in
+this class.
+.sp
+The definition of character class \fBdigit\fR requires that only ten
+characters; the ones defining digits can be specified; alternative digits (for
+example, Hindi or Kanji) cannot be specified here.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBalnum\fR\fR
+.ad
+.RS 18n
+Define characters to be classified as letters and numeric digits. Only the
+characters specified for the \fBalpha\fR and \fBdigit\fR keywords are
+specified. Characters specified for the keywords \fBalpha\fR and \fBdigit\fR
+are automatically included in this class.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBspace\fR\fR
+.ad
+.RS 18n
+Define characters to be classified as white-space characters.
+.sp
+In the POSIX locale, at a minimum, the characters \fBSPACE\fR, \fBFORMFEED\fR,
+\fBNEWLINE\fR, \fBCARRIAGE RETURN\fR, \fBTAB\fR, and \fBVERTICAL TAB\fR are
+included.
+.sp
+In a locale definition file, no character specified for the keywords
+\fBupper\fR, \fBlower\fR, \fBalpha\fR, \fBdigit\fR, \fBgraph\fR, or
+\fBxdigit\fR can be specified. The characters \fBSPACE\fR, \fBFORMFEED\fR,
+\fBNEWLINE\fR, \fBCARRIAGE RETURN\fR, \fBTAB\fR, and \fBVERTICAL TAB\fR of the
+portable character set, and any characters included in the class \fBblank\fR
+are automatically included in this class.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcntrl\fR\fR
+.ad
+.RS 18n
+Define characters to be classified as control characters.
+.sp
+In the POSIX locale, no characters in classes \fBalpha\fR or \fBprint\fR are
+included.
+.sp
+In a locale definition file, no character specified for the keywords
+\fBupper\fR, \fBlower\fR, \fBalpha\fR, \fBdigit\fR, \fBpunct\fR, \fBgraph\fR,
+\fBprint\fR, or \fBxdigit\fR can be specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpunct\fR\fR
+.ad
+.RS 18n
+Define characters to be classified as punctuation characters.
+.sp
+In the POSIX locale, neither the space character nor any characters in classes
+\fBalpha\fR, \fBdigit\fR, or \fBcntrl\fR are included.
+.sp
+In a locale definition file, no character specified for the keywords
+\fBupper\fR, \fBlower\fR, \fBalpha\fR, \fBdigit\fR, \fBcntrl\fR, \fBxdigit\fR
+or as the space character can be specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBgraph\fR\fR
+.ad
+.RS 18n
+Define characters to be classified as printable characters, not including the
+space character.
+.sp
+In the POSIX locale, all characters in classes \fBalpha\fR, \fBdigit\fR, and
+\fBpunct\fR are included; no characters in class \fBcntrl\fR are included.
+.sp
+In a locale definition file, characters specified for the keywords \fBupper\fR,
+\fBlower\fR, \fBalpha\fR, \fBdigit\fR, \fBxdigit\fR, and \fBpunct\fR are
+automatically included in this class. No character specified for the keyword
+\fBcntrl\fR can be specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBprint\fR\fR
+.ad
+.RS 18n
+Define characters to be classified as printable characters, including the space
+character.
+.sp
+In the POSIX locale, all characters in class \fBgraph\fR are included; no
+characters in class \fBcntrl\fR are included.
+.sp
+In a locale definition file, characters specified for the keywords \fBupper\fR,
+\fBlower\fR, \fBalpha\fR, \fBdigit\fR, \fBxdigit\fR, \fBpunct\fR, and the space
+character are automatically included in this class. No character specified for
+the keyword \fBcntrl\fR can be specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBxdigit\fR\fR
+.ad
+.RS 18n
+Define the characters to be classified as hexadecimal digits.
+.sp
+In the POSIX locale, only:
+.sp
+.in +2
+.nf
+0 1 2 3 4 5 6 7 8 9 A B C D E F a b c d e f
+.fi
+.in -2
+.sp
+
+are included.
+.sp
+In a locale definition file, only the characters defined for the class
+\fBdigit\fR can be specified, in contiguous ascending sequence by numerical
+value, followed by one or more sets of six characters representing the
+hexadecimal digits 10 to 15 inclusive, with each set in ascending order (for
+example \fBA\fR, \fBB\fR, \fBC\fR, \fBD\fR, \fBE\fR, \fBF\fR, \fBa\fR, \fBb\fR,
+\fBc\fR, \fBd\fR, \fBe\fR, \fBf\fR). The digits \fB0\fR to \fB9\fR, the
+upper-case letters \fBA\fR to \fBF\fR and the lower-case letters \fBa\fR to
+\fBf\fR of the portable character set are automatically included in this class.
+.sp
+The definition of character class \fBxdigit\fR requires that the characters
+included in character class \fBdigit\fR be included here also.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBblank\fR\fR
+.ad
+.RS 18n
+Define characters to be classified as blank characters.
+.sp
+In the POSIX locale, only the space and tab characters are included.
+.sp
+In a locale definition file, the characters space and tab are automatically
+included in this class.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcharclass\fR\fR
+.ad
+.RS 18n
+Define one or more locale-specific character class names as strings separated
+by semi-colons. Each named character class can then be defined subsequently in
+the \fBLC_CTYPE\fR definition. A character class name consists of at least one
+and at most \fB{CHARCLASS_NAME_MAX}\fR bytes of alphanumeric characters from
+the portable filename character set. The first character of a character class
+name cannot be a digit. The name cannot match any of the \fBLC_CTYPE\fR
+keywords defined in this document.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcharclass-name\fR\fR
+.ad
+.RS 18n
+Define characters to be classified as belonging to the named locale-specific
+character class. In the POSIX locale, the locale-specific named character
+classes need not exist. If a class name is defined by a \fBcharclass\fR
+keyword, but no characters are subsequently assigned to it, this is not an
+error; it represents a class without any characters belonging to it. The
+\fBcharclass-name\fR can be used as the \fIproperty\fR argument to the
+\fBwctype\fR(3C) function, in regular expression and shell pattern-matching
+bracket expressions, and by the \fBtr\fR(1) command.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBtoupper\fR\fR
+.ad
+.RS 18n
+Define the mapping of lower-case letters to upper-case letters.
+.sp
+In the POSIX locale, at a minimum, the 26 lower-case characters:
+.sp
+.in +2
+.nf
+a b c d e f g h i j k l m n o p q r s t u v w x y z
+.fi
+.in -2
+.sp
+
+are mapped to the corresponding 26 upper-case characters:
+.sp
+.in +2
+.nf
+A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
+.fi
+.in -2
+.sp
+
+In a locale definition file, the operand consists of character pairs, separated
+by semicolons. The characters in each character pair are separated by a comma
+and the pair enclosed by parentheses. The first character in each pair is the
+lower-case letter, the second the corresponding upper-case letter. Only
+characters specified for the keywords \fBlower\fR and \fBupper\fR can be
+specified. The lower-case letters \fBa\fR to \fBz\fR, and their corresponding
+upper-case letters \fBA\fR to \fBZ\fR, of the portable character set are
+automatically included in this mapping, but only when the \fBtoupper\fR keyword
+is omitted from the locale definition.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBtolower\fR\fR
+.ad
+.RS 18n
+Define the mapping of upper-case letters to lower-case letters.
+.sp
+In the POSIX locale, at a minimum, the 26 upper-case characters:
+.sp
+.in +2
+.nf
+A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
+.fi
+.in -2
+.sp
+
+are mapped to the corresponding 26 lower-case characters:
+.sp
+.in +2
+.nf
+a b c d e f g h i j k l m n o p q r s t u v w x y z
+.fi
+.in -2
+.sp
+
+In a locale definition file, the operand consists of character pairs, separated
+by semicolons. The characters in each character pair are separated by a comma
+and the pair enclosed by parentheses. The first character in each pair is the
+upper-case letter, the second the corresponding lower-case letter. Only
+characters specified for the keywords \fBlower\fR and \fBupper\fR can be
+specified. If the \fBtolower\fR keyword is omitted from the locale definition,
+the mapping will be the reverse mapping of the one specified for \fBtoupper\fR.
+.RE
+
+.SS "LC_COLLATE"
+The \fBLC_COLLATE\fR category provides a collation sequence definition for
+numerous utilities (such as \fBsort\fR(1), \fBuniq\fR(1), and so forth),
+regular expression matching (see \fBregex\fR(7)), and the \fBstrcoll\fR(3C),
+\fBstrxfrm\fR(3C), \fBwcscoll\fR(3C), and \fBwcsxfrm\fR(3C) functions.
+.sp
+.LP
+A collation sequence definition defines the relative order between collating
+elements (characters and multi-character collating elements) in the locale.
+This order is expressed in terms of collation values, that is, by assigning
+each element one or more collation values (also known as collation weights).
+The following capabilities are provided:
+.RS +4
+.TP
+1.
+\fBMulti-character collating elements\fR. Specification of multi-character
+collating elements (that is, sequences of two or more characters to be collated
+as an entity).
+.RE
+.RS +4
+.TP
+2.
+\fBUser-defined ordering of collating elements\fR. Each collating element is
+assigned a collation value defining its order in the character (or basic)
+collation sequence. This ordering is used by regular expressions and pattern
+matching and, unless collation weights are explicitly specified, also as the
+collation weight to be used in sorting.
+.RE
+.RS +4
+.TP
+3.
+\fBMultiple weights and equivalence classes\fR. Collating elements can be
+assigned one or more (up to the limit \fB{COLL_WEIGHTS_MAX}\fR \fB)\fR
+collating weights for use in sorting. The first weight is hereafter referred to
+as the primary weight.
+.RE
+.RS +4
+.TP
+4.
+\fBOne-to-Many mapping\fR. A single character is mapped into a string of
+collating elements.
+.RE
+.RS +4
+.TP
+5.
+\fBEquivalence class definition\fR. Two or more collating elements have the
+same collation value (primary weight).
+.RE
+.RS +4
+.TP
+6.
+\fBOrdering by weights\fR. When two strings are compared to determine their
+relative order, the two strings are first broken up into a series of collating
+elements. The elements in each successive pair of elements are then compared
+according to the relative primary weights for the elements. If equal, and more
+than one weight has been assigned, the pairs of collating elements are
+recompared according to the relative subsequent weights, until either a pair of
+collating elements compare unequal or the weights are exhausted.
+.RE
+.sp
+.LP
+The following keywords are recognized in a collation sequence definition. They
+are described in detail in the following sections.
+.sp
+.ne 2
+.na
+\fB\fBcopy\fR\fR
+.ad
+.RS 21n
+Specify the name of an existing locale which is used as the definition of this
+category. If this keyword is specified, no other keyword is specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcollating-element\fR\fR
+.ad
+.RS 21n
+Define a collating-element symbol representing a multi-character collating
+element. This keyword is optional.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcollating-symbol\fR\fR
+.ad
+.RS 21n
+Define a collating symbol for use in collation order statements. This keyword
+is optional.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBorder_start\fR\fR
+.ad
+.RS 21n
+Define collation rules. This statement is followed by one or more collation
+order statements, assigning character collation values and collation weights to
+collating elements.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBorder_end\fR\fR
+.ad
+.RS 21n
+Specify the end of the collation-order statements.
+.RE
+
+.SS "collating-element \fIkeyword\fR"
+In addition to the collating elements in the character set, the
+\fBcollating-element\fR keyword is used to define multi-character collating
+elements. The syntax is:
+.sp
+.in +2
+.nf
+\fB"collating-element %s from \e"%s\e"\en",\fR<\fIcollating-symbol\fR>,<\fIstring\fR>
+.fi
+.in -2
+
+.sp
+.LP
+The <\fIcollating-symbol\fR> operand is a symbolic name, enclosed between angle
+brackets (\fB<\fR and \fB>\fR), and must not duplicate any symbolic name in the
+current charmap file (if any), or any other symbolic name defined in this
+collation definition. The string operand is a string of two or more characters
+that collates as an entity. A <\fIcollating-element\fR> defined via this
+keyword is only recognized with the \fBLC_COLLATE\fR category.
+.sp
+.LP
+Example:
+.br
+.in +2
+\fBcollating-element\fR <\fBch\fR> from "<\fBc\fR><\fBh\fR>"
+.in -2
+.br
+.in +2
+\fBcollating-element\fR <\fBe-acute\fR> from "<\fBacute\fR><\fBe\fR>"
+.in -2
+.br
+.in +2
+\fBcollating-element\fR <\fBll\fR> from "\fBll\fR"
+.in -2
+.SS "collating-symbol \fIkeyword\fR"
+This keyword will be used to define symbols for use in collation sequence
+statements; that is, between the \fBorder_start\fR and the \fBorder_end\fR
+keywords. The syntax is:
+.sp
+.in +2
+.nf
+\fB"collating-symbol %s\en",\fR<\fIcollating-symbol\fR>
+.fi
+.in -2
+
+.sp
+.LP
+The \fB<\fR\fIcollating-symbol\fR\fB>\fR is a symbolic name, enclosed between
+angle brackets (\fB<\fR and \fB>\fR), and must not duplicate any symbolic name
+in the current charmap file (if any), or any other symbolic name defined in
+this collation definition.
+.sp
+.LP
+A \fBcollating-symbol\fR defined via this keyword is only recognized with the
+\fBLC_COLLATE\fR category.
+.sp
+.LP
+Example:
+.br
+.in +2
+\fBcollating-symbol\fR <\fBUPPER_CASE\fR>
+.in -2
+.br
+.in +2
+\fBcollating-symbol\fR <\fBHIGH\fR>
+.in -2
+.sp
+.LP
+The \fBcollating-symbol\fR keyword defines a symbolic name that can be
+associated with a relative position in the character order sequence. While such
+a symbolic name does not represent any collating element, it can be used as a
+weight.
+.SS "order_start \fIkeyword\fR"
+The \fBorder_start\fR keyword must precede collation order entries and also
+defines the number of weights for this collation sequence definition and other
+collation rules.
+.sp
+.LP
+The syntax of the \fBorder_start\fR keyword is:
+.sp
+.in +2
+.nf
+\fB"order_start %s;%s;...;%s\en",\fR<\fIsort-rules\fR>,<\fIsort-rules\fR>
+.fi
+.in -2
+
+.sp
+.LP
+The operands to the \fBorder_start\fR keyword are optional. If present, the
+operands define rules to be applied when strings are compared. The number of
+operands define how many weights each element is assigned. If no operands are
+present, one \fBforward\fR operand is assumed. If present, the first operand
+defines rules to be applied when comparing strings using the first (primary)
+weight; the second when comparing strings using the second weight, and so on.
+Operands are separated by semicolons (\fB;\fR). Each operand consists of one or
+more collation directives, separated by commas (\fB,\fR). If the number of
+operands exceeds the \fB{COLL_WEIGHTS_MAX}\fR limit, the utility will issue a
+warning message. The following directives will be supported:
+.sp
+.ne 2
+.na
+\fB\fBforward\fR\fR
+.ad
+.RS 12n
+Specifies that comparison operations for the weight level proceed from start of
+string towards the end of string.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBbackward\fR\fR
+.ad
+.RS 12n
+Specifies that comparison operations for the weight level proceed from end of
+string towards the beginning of string.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBposition\fR\fR
+.ad
+.RS 12n
+Specifies that comparison operations for the weight level will consider the
+relative position of elements in the strings not subject to \fBIGNORE.\fR The
+string containing an element not subject to \fBIGNORE\fR after the fewest
+collating elements subject to \fBIGNORE\fR from the start of the compare will
+collate first. If both strings contain a character not subject to \fBIGNORE\fR
+in the same relative position, the collating values assigned to the elements
+will determine the ordering. In case of equality, subsequent characters not
+subject to \fBIGNORE\fR are considered in the same manner.
+.RE
+
+.sp
+.LP
+The directives \fBforward\fR and \fBbackward\fR are mutually exclusive.
+.sp
+.LP
+Example:
+.sp
+.in +2
+.nf
+order_start forward;backward
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+If no operands are specified, a single \fBforward\fR operand is assumed.
+.SS "Collation Order"
+The \fBorder_start\fR keyword is followed by collating identifier entries. The
+syntax for the collating element entries is:
+.sp
+.in +2
+.nf
+\fB"%s %s;%s;...;%s\en"\fR<\fIcollating-identifier\fR>,<\fIweight\fR>,<\fIweight\fR>\fB,...\fR
+.fi
+.in -2
+
+.sp
+.LP
+Each \fIcollating-identifier\fR consists of either a character described in
+\fBLocale Definition\fR above, a <\fIcollating-element\fR>, a
+<\fIcollating-symbol\fR>, an ellipsis, or the special symbol \fBUNDEFINED\fR.
+The order in which collating elements are specified determines the character
+order sequence, such that each collating element compares less than the
+elements following it. The \fBNUL\fR character compares lower than any other
+character.
+.sp
+.LP
+A <\fIcollating-element\fR> is used to specify multi-character collating
+elements, and indicates that the character sequence specified via the
+<\fIcollating-element\fR> is to be collated as a unit and in the relative order
+specified by its place.
+.sp
+.LP
+A <\fIcollating-symbol\fR> is used to define a position in the relative order
+for use in weights. No weights are specified with a <\fIcollating-symbol\fR>.
+.sp
+.LP
+The ellipsis symbol specifies that a sequence of characters will collate
+according to their encoded character values. It is interpreted as indicating
+that all characters with a coded character set value higher than the value of
+the character in the preceding line, and lower than the coded character set
+value for the character in the following line, in the current coded character
+set, will be placed in the character collation order between the previous and
+the following character in ascending order according to their coded character
+set values. An initial ellipsis is interpreted as if the preceding line
+specified the NUL character, and a trailing ellipsis as if the following line
+specified the highest coded character set value in the current coded character
+set. An ellipsis is treated as invalid if the preceding or following lines do
+not specify characters in the current coded character set. The use of the
+ellipsis symbol ties the definition to a specific coded character set and may
+preclude the definition from being portable between implementations.
+.sp
+.LP
+The symbol \fBUNDEFINED\fR is interpreted as including all coded character set
+values not specified explicitly or via the ellipsis symbol. Such characters are
+inserted in the character collation order at the point indicated by the symbol,
+and in ascending order according to their coded character set values. If no
+\fBUNDEFINED\fR symbol is specified, and the current coded character set
+contains characters not specified in this section, the utility will issue a
+warning message and place such characters at the end of the character collation
+order.
+.sp
+.LP
+The optional operands for each collation-element are used to define the
+primary, secondary, or subsequent weights for the collating element. The first
+operand specifies the relative primary weight, the second the relative
+secondary weight, and so on. Two or more collation-elements can be assigned the
+same weight; they belong to the same \fIequivalence class\fR if they have the
+same primary weight. Collation behaves as if, for each weight level, elements
+subject to \fBIGNORE\fR are removed, unless the \fBposition\fR collation
+directive is specified for the corresponding level with the \fBorder_start\fR
+keyword. Then each successive pair of elements is compared according to the
+relative weights for the elements. If the two strings compare equal, the
+process is repeated for the next weight level, up to the limit
+{\fBCOLL_WEIGHTS_MAX\fR}.
+.sp
+.LP
+Weights are expressed as characters described in \fBLocale Definition\fR
+above, <\fIcollating-symbol\fR>s, <\fIcollating-element\fR>s, an ellipsis, or
+the special symbol \fBIGNORE.\fR A single character, a <\fIcollating-symbol\fR>
+or a <\fIcollating-element\fR> represent the relative position in the character
+collating sequence of the character or symbol, rather than the character or
+characters themselves. Thus, rather than assigning absolute values to weights,
+a particular weight is expressed using the relative order value assigned to a
+collating element based on its order in the character collation sequence.
+.sp
+.LP
+One-to-many mapping is indicated by specifying two or more concatenated
+characters or symbolic names. For example, if the character <\fBeszet\fR> is
+given the string "<\fBs\fR><\fBs\fR>" as a weight, comparisons are performed as
+if all occurrences of the character <\fBeszet\fR> are replaced by
+<\fBs\fR><\fBs\fR> (assuming that <\fBs\fR> has the collating weight
+<\fBs\fR>). If it is necessary to define <\fBeszet\fR> and <\fBs\fR><\fBs\fR>
+as an equivalence class, then a collating element must be defined for the
+string \fBss\fR.
+.sp
+.LP
+All characters specified via an ellipsis will by default be assigned unique
+weights, equal to the relative order of characters. Characters specified via an
+explicit or implicit \fBUNDEFINED\fR special symbol will by default be assigned
+the same primary weight (that is, belong to the same equivalence class). An
+ellipsis symbol as a weight is interpreted to mean that each character in the
+sequence has unique weights, equal to the relative order of their character in
+the character collation sequence. The use of the ellipsis as a weight is
+treated as an error if the collating element is neither an ellipsis nor the
+special symbol \fBUNDEFINED\fR.
+.sp
+.LP
+The special keyword \fBIGNORE\fR as a weight indicates that when strings are
+compared using the weights at the level where \fBIGNORE\fR is specified, the
+collating element is ignored; that is, as if the string did not contain the
+collating element. In regular expressions and pattern matching, all characters
+that are subject to \fBIGNORE\fR in their primary weight form an equivalence
+class.
+.sp
+.LP
+An empty operand is interpreted as the collating element itself.
+.sp
+.LP
+For example, the order statement:
+.sp
+.in +2
+.nf
+<a> <a>;<a>
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+is equal to:
+.sp
+.in +2
+.nf
+<a>
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+An ellipsis can be used as an operand if the collating element was an ellipsis,
+and is interpreted as the value of each character defined by the ellipsis.
+.sp
+.LP
+The collation order as defined in this section defines the interpretation of
+bracket expressions in regular expressions.
+.sp
+.LP
+Example:
+.sp
+
+.sp
+.TS
+l l
+l l .
+\fBorder_start\fR \fBforward;backward\fR
+\fBUNDEFINED\fR \fBIGNORE;IGNORE\fR
+\fB<LOW>\fR
+\fB<space>\fR \fB<LOW>;<space>\fR
+\fB\&.\|.\|.\fR \fB<LOW>;.\|.\|.\fR
+\fB<a>\fR \fB<a>;<a>\fR
+\fB<a-acute>\fR \fB<a>;<a-acute>\fR
+\fB<a-grave>\fR \fB<a>;<a-grave>\fR
+\fB<A>\fR \fB<a>;<A>\fR
+\fB<A-acute>\fR \fB<a>;<A-acute>\fR
+\fB<A-grave>\fR \fB<a>;<A-grave>\fR
+\fB<ch>\fR \fB<ch>;<ch>\fR
+\fB<Ch>\fR \fB<ch>;<Ch>\fR
+\fB<s>\fR \fB<s>;<s>\fR
+\fB<eszet>\fR \fB"<s><s>";"<eszet><eszet>"\fR
+\fBorder_end\fR
+.TE
+
+.sp
+.LP
+This example is interpreted as follows:
+.RS +4
+.TP
+1.
+The \fBUNDEFINED\fR means that all characters not specified in this
+definition (explicitly or via the ellipsis) are ignored for collation purposes;
+for regular expression purposes they are ordered first.
+.RE
+.RS +4
+.TP
+2.
+All characters between <\fBspace\fR> and <\fBa\fR> have the same primary
+equivalence class and individual secondary weights based on their ordinal
+encoded values.
+.RE
+.RS +4
+.TP
+3.
+All characters based on the upper- or lower-case character \fBa\fR belong to
+the same primary equivalence class.
+.RE
+.RS +4
+.TP
+4.
+The multi-character collating element <\fBch\fR> is represented by the
+collating symbol <\fBch\fR> and belongs to the same primary equivalence class
+as the multi-character collating element <\fBCh\fR>.
+.RE
+.SS "order_end \fIkeyword\fR"
+The collating order entries must be terminated with an \fBorder_end\fR keyword.
+.SS "LC_MONETARY"
+The \fBLC_MONETARY\fR category defines the rules and symbols that are used to
+format monetary numeric information. This information is available through the
+\fBlocaleconv\fR(3C) function
+.sp
+.LP
+The following items are defined in this category of the locale. The item names
+are the keywords recognized by the \fBlocaledef\fR(1) utility when defining a
+locale. They are also similar to the member names of the \fBlconv\fR structure
+defined in <\fBlocale.h\fR>. The \fBlocaleconv\fR function returns
+\fB{CHAR_MAX}\fR for unspecified integer items and the empty string (\fB""\fR)
+for unspecified or size zero string items.
+.sp
+.LP
+In a locale definition file the operands are strings. For some keywords, the
+strings can contain only integers. Keywords that are not provided, string
+values set to the empty string (\fB""\fR), or integer keywords set to \fB-1\fR,
+are used to indicate that the value is not available in the locale.
+.sp
+.ne 2
+.na
+\fB\fBint_curr_symbol\fR\fR
+.ad
+.RS 22n
+The international currency symbol. The operand is a four-character string, with
+the first three characters containing the alphabetic international currency
+symbol in accordance with those specified in the ISO 4217 standard. The fourth
+character is the character used to separate the international currency symbol
+from the monetary quantity.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcurrency_symbol\fR\fR
+.ad
+.RS 22n
+The string used as the local currency symbol.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmon_decimal_point\fR\fR
+.ad
+.RS 22n
+The operand is a string containing the symbol that is used as the decimal
+delimiter (radix character) in monetary formatted quantities.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmon_thousands_sep\fR\fR
+.ad
+.RS 22n
+The operand is a string containing the symbol that is used as a separator for
+groups of digits to the left of the decimal delimiter in formatted monetary
+quantities.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmon_grouping\fR\fR
+.ad
+.RS 22n
+Define the size of each group of digits in formatted monetary quantities. The
+operand is a sequence of integers separated by semicolons. Each integer
+specifies the number of digits in each group, with the initial integer defining
+the size of the group immediately preceding the decimal delimiter, and the
+following integers defining the preceding groups. If the last integer is not
+\fB-1\fR, then the size of the previous group (if any) will be repeatedly used
+for the remainder of the digits. If the last integer is \fB-1\fR, then no
+further grouping will be performed.
+.sp
+The following is an example of the interpretation of the \fBmon_grouping\fR
+keyword. Assuming that the value to be formatted is \fB123456789\fR and the
+\fBmon_thousands_sep\fR is \fB\&'\fR, then the following table shows the
+result. The third column shows the equivalent string in the ISO C standard that
+would be used by the \fBlocaleconv\fR function to accommodate this grouping.
+.sp
+.in +2
+.nf
+mon_grouping Formatted Value ISO C String
+
+3;-1 123456'789 "\e3\e177"
+3 123'456'789 "\e3"
+3;2;-1 1234'56'789 "\e3\e2\e177"
+3;2 12'34'56'789 "\e3\e2"
+-1 1234567898 "\e177"
+.fi
+.in -2
+.sp
+
+In these examples, the octal value of \fB{CHAR_MAX}\fR is 177.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpositive_sign\fR\fR
+.ad
+.RS 22n
+A string used to indicate a non-negative-valued formatted monetary quantity.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnegative_sign\fR\fR
+.ad
+.RS 22n
+A string used to indicate a negative-valued formatted monetary quantity.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBint_frac_digits\fR\fR
+.ad
+.RS 22n
+An integer representing the number of fractional digits (those to the right of
+the decimal delimiter) to be written in a formatted monetary quantity using
+\fBint_curr_symbol\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfrac_digits\fR\fR
+.ad
+.RS 22n
+An integer representing the number of fractional digits (those to the right of
+the decimal delimiter) to be written in a formatted monetary quantity using
+\fBcurrency_symbol\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBp_cs_precedes\fR\fR
+.ad
+.RS 22n
+In an application conforming to the SUSv3 standard, an integer set to \fB1\fR
+if the \fBcurrency_symbol\fR precedes the value for a monetary quantity with a
+non-negative value, and set to \fB0\fR if the symbol succeeds the value.
+.sp
+In an application \fBnot\fR conforming to the SUSv3 standard, an integer set to
+\fB1\fR if the \fBcurrency_symbol\fR or \fBint_currency_symbol\fR precedes the
+value for a monetary quantity with a non-negative value, and set to \fB0\fR if
+the symbol succeeds the value.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBp_sep_by_space\fR\fR
+.ad
+.RS 22n
+In an application conforming to the SUSv3 standard, an integer set to \fB0\fR
+if no space separates the \fBcurrency_symbol\fR from the value for a monetary
+quantity with a non-negative value, set to \fB1\fR if a space separates the
+symbol from the value, and set to \fB2\fR if a space separates the symbol and
+the sign string, if adjacent.
+.sp
+In an application \fBnot\fR conforming to the SUSv3 standard, an integer set to
+\fB0\fR if no space separates the \fBcurrency_symbol\fR or
+\fBint_curr_symbol\fR from the value for a monetary quantity with a
+non-negative value, set to \fB1\fR if a space separates the symbol from the
+value, and set to \fB2\fR if a space separates the symbol and the sign string,
+if adjacent.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBn_cs_precedes\fR\fR
+.ad
+.RS 22n
+In an application conforming to the SUSv3 standard, an integer set to \fB1\fR
+if the \fBcurrency_symbol\fR precedes the value for a monetary quantity with a
+negative value, and set to \fB0\fR if the symbol succeeds the value.
+.sp
+In an application \fBnot\fR conforming to the SUSv3 standard, an integer set to
+\fB1\fR if the \fBcurrency_symbol\fR or \fBint_currency_symbol\fR precedes the
+value for a monetary quantity with a negative value, and set to \fB0\fR if the
+symbol succeeds the value.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBn_sep_by_space\fR\fR
+.ad
+.RS 22n
+In an application conforming to the SUSv3 standard, an integer set to \fB0\fR
+if no space separates the \fBcurrency_symbol\fR from the value for a monetary
+quantity with a negative value, set to \fB1\fR if a space separates the symbol
+from the value, and set to \fB2\fR if a space separates the symbol and the sign
+string, if adjacent.
+.sp
+In an application \fBnot\fR conforming to the SUSv3 standard, an integer set to
+\fB0\fR if no space separates the \fBcurrency_symbol\fR or
+\fBint_curr_symbol\fR from the value for a monetary quantity with a negative
+value, set to \fB1\fR if a space separates the symbol from the value, and set
+to \fB2\fR if a space separates the symbol and the sign string, if adjacent.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBp_sign_posn\fR\fR
+.ad
+.RS 22n
+An integer set to a value indicating the positioning of the \fBpositive_sign\fR
+for a monetary quantity with a non-negative value. The following integer values
+are recognized for both \fBp_sign_posn\fR and \fBn_sign_posn\fR:
+.sp
+In an application conforming to the SUSv3 standard:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 5n
+Parentheses enclose the quantity and the \fBcurrency_symbol\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB1\fR\fR
+.ad
+.RS 5n
+The sign string precedes the quantity and the \fBcurrency_symbol\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB2\fR\fR
+.ad
+.RS 5n
+The sign string succeeds the quantity and the \fBcurrency_symbol\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB3\fR\fR
+.ad
+.RS 5n
+The sign string precedes the \fBcurrency_symbol\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB4\fR\fR
+.ad
+.RS 5n
+The sign string succeeds the \fBcurrency_symbol\fR.
+.RE
+
+In an application \fBnot\fR conforming to the SUSv3 standard:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 5n
+Parentheses enclose the quantity and the \fBcurrency_symbol\fR or
+\fBint_curr_symbol\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB1\fR\fR
+.ad
+.RS 5n
+The sign string precedes the quantity and the \fBcurrency_symbol\fR or
+\fBint_curr_symbol\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB2\fR\fR
+.ad
+.RS 5n
+The sign string succeeds the quantity and the \fBcurrency_symbol\fR or
+\fBint_curr_symbol\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB3\fR\fR
+.ad
+.RS 5n
+The sign string precedes the \fBcurrency_symbol\fR or \fBint_curr_symbol\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB4\fR\fR
+.ad
+.RS 5n
+The sign string succeeds the \fBcurrency_symbol\fR or \fBint_curr_symbol\fR.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBn_sign_posn\fR\fR
+.ad
+.RS 22n
+An integer set to a value indicating the positioning of the \fBnegative_sign\fR
+for a negative formatted monetary quantity.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBint_p_cs_precedes\fR\fR
+.ad
+.RS 22n
+An integer set to \fB1\fR if the \fBint_curr_symbol\fR precedes the value for a
+monetary quantity with a non-negative value, and set to \fB0\fR if the symbol
+succeeds the value.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBint_n_cs_precedes\fR\fR
+.ad
+.RS 22n
+An integer set to \fB1\fR if the \fBint_curr_symbol\fR precedes the value for a
+monetary quantity with a negative value, and set to \fB0\fR if the symbol
+succeeds the value.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBint_p_sep_by_space\fR\fR
+.ad
+.RS 22n
+An integer set to \fB0\fR if no space separates the \fBint_curr_symbol\fR from
+the value for a monetary quantity with a non-negative value, set to \fB1\fR if
+a space separates the symbol from the value, and set to \fB2\fR if a space
+separates the symbol and the sign string, if adjacent.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBint_n_sep_by_space\fR\fR
+.ad
+.RS 22n
+An integer set to \fB0\fR if no space separates the \fBint_curr_symbol\fR from
+the value for a monetary quantity with a negative value, set to \fB1\fR if a
+space separates the symbol from the value, and set to \fB2\fR if a space
+separates the symbol and the sign string, if adjacent.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBint_p_sign_posn\fR\fR
+.ad
+.RS 22n
+An integer set to a value indicating the positioning of the \fBpositive_sign\fR
+for a positive monetary quantity formatted with the international format. The
+following integer values are recognized for \fBint_p_sign_posn\fR and
+\fBint_n_sign_posn\fR:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 5n
+Parentheses enclose the quantity and the \fB\fR\fBint_curr_symbol\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB1\fR\fR
+.ad
+.RS 5n
+The sign string precedes the quantity and the \fBint_curr_symbol\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB2\fR\fR
+.ad
+.RS 5n
+The sign string precedes the quantity and the \fBint_curr_symbol\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB3\fR\fR
+.ad
+.RS 5n
+The sign string precedes the \fBint_curr_symbol\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB4\fR\fR
+.ad
+.RS 5n
+The sign string succeeds the \fBint_curr_symbol\fR.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBint_n_sign_posn\fR\fR
+.ad
+.RS 22n
+An integer set to a value indicating the positioning of the \fBnegative_sign\fR
+for a negative monetary quantity formatted with the international format.
+.RE
+
+.sp
+.LP
+The following table shows the result of various combinations:
+.sp
+
+.sp
+.TS
+l l l l l l
+l l l l l l .
+ \fBp_sep_by_space\fR
+ 2 1 0
+\fBp_cs_precedes\fR= 1 \fBp_sign_posn\fR= 0 \fB($1.25)\fR \fB($1.25)\fR \fB($1.25)\fR
+ \fBp_sign_posn\fR= 1 \fB+$1.25\fR \fB+$1.25\fR \fB+$1.25\fR
+ \fBp_sign_posn\fR= 2 \fB$1.25+\fR \fB$1.25+\fR \fB$1.25+\fR
+ \fBp_sign_posn\fR= 3 \fB+$1.25\fR \fB+$1.25\fR \fB+$1.25\fR
+ \fBp_sign_posn\fR= 4 \fB$+1.25\fR \fB$+1.25\fR \fB$+1.25\fR
+\fBp_cs_precedes\fR= 0 \fBp_sign_posn\fR= 0 \fB(1.25 $)\fR \fB(1.25 $)\fR \fB(1.25$)\fR
+ \fBp_sign_posn\fR= 1 \fB+1.25 $\fR \fB+1.25 $\fR \fB+1.25$\fR
+ \fBp_sign_posn\fR= 2 \fB1.25$ +\fR \fB1.25 $+\fR \fB1.25$+\fR
+ \fBp_sign_posn\fR= 3 \fB1.25+ $\fR \fB1.25 +$\fR \fB1.25+$\fR
+ \fBp_sign_posn\fR= 4 \fB1.25$ +\fR \fB1.25 $+\fR \fB1.25$+\fR
+.TE
+
+.sp
+.LP
+The monetary formatting definitions for the POSIX locale follow. The code
+listing depicts the \fBlocaledef\fR(1) input, the table representing the same
+information with the addition of \fBlocaleconv\fR(3C) and \fBnl_langinfo\fR(3C)
+formats. All values are unspecified in the POSIX locale.
+.sp
+.in +2
+.nf
+LC_MONETARY
+# This is the POSIX locale definition for
+# the LC_MONETARY category.
+#
+int_curr_symbol ""
+currency_symbol ""
+mon_decimal_point ""
+mon_thousands_sep ""
+mon_grouping -1
+positive_sign ""
+negative_sign ""
+int_frac_digits -1
+frac_digits -1
+p_cs_precedes -1
+p_sep_by_space -1
+n_cs_precedes -1
+n_sep_by_space -1
+p_sign_posn -1
+n_sign_posn -1
+int_p_cs_precedes -1
+int_p_sep_by_space -1
+int_n_cs_precedes -1
+int_n_sep_by_space -1
+int_p_sign_posn -1
+int_n_sign_posn -1
+#
+END LC_MONETARY
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The entry \fBn/a\fR indicates that the value is not available in the POSIX
+locale.
+.SS "LC_NUMERIC"
+The \fBLC_NUMERIC\fR category defines the rules and symbols that will be used
+to format non-monetary numeric information. This information is available
+through the \fBlocaleconv\fR(3C) function.
+.sp
+.LP
+The following items are defined in this category of the locale. The item names
+are the keywords recognized by the \fBlocaledef\fR utility when defining a
+locale. They are also similar to the member names of the \fIlconv\fR structure
+defined in <\fBlocale.h\fR>. The \fBlocaleconv()\fR function returns
+\fB{CHAR_MAX}\fR for unspecified integer items and the empty string (\fB""\fR)
+for unspecified or size zero string items.
+.sp
+.LP
+In a locale definition file the operands are strings. For some keywords, the
+strings only can contain integers. Keywords that are not provided, string
+values set to the empty string (\fB""\fR), or integer keywords set to \fB-1\fR,
+will be used to indicate that the value is not available in the locale. The
+following keywords are recognized:
+.sp
+.ne 2
+.na
+\fB\fBdecimal_point\fR\fR
+.ad
+.RS 17n
+The operand is a string containing the symbol that is used as the decimal
+delimiter (radix character) in numeric, non-monetary formatted quantities. This
+keyword cannot be omitted and cannot be set to the empty string. In contexts
+where standards limit the \fBdecimal_point\fR to a single byte, the result of
+specifying a multi-byte operand is unspecified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBthousands_sep\fR\fR
+.ad
+.RS 17n
+The operand is a string containing the symbol that is used as a separator for
+groups of digits to the left of the decimal delimiter in numeric, non-monetary
+formatted monetary quantities. In contexts where standards limit the
+\fBthousands_sep\fR to a single byte, the result of specifying a multi-byte
+operand is unspecified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBgrouping\fR\fR
+.ad
+.RS 17n
+Define the size of each group of digits in formatted non-monetary quantities.
+The operand is a sequence of integers separated by semicolons. Each integer
+specifies the number of digits in each group, with the initial integer defining
+the size of the group immediately preceding the decimal delimiter, and the
+following integers defining the preceding groups. If the last integer is not
+\fB\(mi1\fR, then the size of the previous group (if any) will be repeatedly
+used for the remainder of the digits. If the last integer is \fB-1\fR, then no
+further grouping will be performed. The non-monetary numeric formatting
+definitions for the POSIX locale follow. The code listing depicts the
+\fBlocaledef\fR input, the table representing the same information with the
+addition of \fBlocaleconv\fR values, and \fBnl_langinfo\fR constants.
+.sp
+.in +2
+.nf
+LC_NUMERIC
+# This is the POSIX locale definition for
+# the LC_NUMERIC category.
+#
+decimal_point "<period>"
+thousands_sep ""
+grouping -1
+#
+END LC_NUMERIC
+.fi
+.in -2
+.sp
+
+.RE
+
+.sp
+
+.sp
+.TS
+l l l l l
+l l l l l .
+ \fBPOSIX locale\fR \fBlanginfo\fR \fBlocaleconv()\fR \fBlocaledef\fR
+\fBItem\fR \fBValue\fR \fBConstant\fR \fBValue\fR \fBValue\fR
+_
+\fBdecimal_point\fR \fB"."\fR \fBRADIXCHAR\fR \fB"."\fR \fB\&.\fR
+\fBthousands_sep\fR \fBn/a\fR \fBTHOUSEP\fR \fB""\fR \fB""\fR
+\fBgrouping\fR \fBn/a\fR \fB-\fR \fB""\fR \fB\(mi1\fR
+.TE
+
+.sp
+.LP
+The entry \fBn/a\fR indicates that the value is not available in the POSIX
+locale.
+.SS "LC_TIME"
+The \fBLC_TIME\fR category defines the interpretation of the field descriptors
+supported by \fBdate\fR(1) and affects the behavior of the \fBstrftime\fR(3C),
+\fBwcsftime\fR(3C), \fBstrptime\fR(3C), and \fBnl_langinfo\fR(3C) functions.
+Because the interfaces for C-language access and locale definition differ
+significantly, they are described separately. For locale definition, the
+following mandatory keywords are recognized:
+.sp
+.ne 2
+.na
+\fB\fBabday\fR\fR
+.ad
+.RS 15n
+Define the abbreviated weekday names, corresponding to the \fB%a\fR field
+descriptor (conversion specification in the \fBstrftime()\fR, \fBwcsftime()\fR,
+and \fBstrptime()\fR functions). The operand consists of seven
+semicolon-separated strings, each surrounded by double-quotes. The first string
+is the abbreviated name of the day corresponding to Sunday, the second the
+abbreviated name of the day corresponding to Monday, and so on.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBday\fR\fR
+.ad
+.RS 15n
+Define the full weekday names, corresponding to the \fB%A\fR field descriptor.
+The operand consists of seven semicolon-separated strings, each surrounded by
+double-quotes. The first string is the full name of the day corresponding to
+Sunday, the second the full name of the day corresponding to Monday, and so on.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBabmon\fR\fR
+.ad
+.RS 15n
+Define the abbreviated month names, corresponding to the \fB%b\fR field
+descriptor. The operand consists of twelve semicolon-separated strings, each
+surrounded by double-quotes. The first string is the abbreviated name of the
+first month of the year (January), the second the abbreviated name of the
+second month, and so on.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmon\fR\fR
+.ad
+.RS 15n
+Define the full month names, corresponding to the \fB%B\fR field descriptor.
+The operand consists of twelve semicolon-separated strings, each surrounded by
+double-quotes. The first string is the full name of the first month of the year
+(January), the second the full name of the second month, and so on.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBd_t_fmt\fR\fR
+.ad
+.RS 15n
+Define the appropriate date and time representation, corresponding to the
+\fB%c\fR field descriptor. The operand consists of a string, and can contain
+any combination of characters and field descriptors. In addition, the string
+can contain the escape sequences \e\e, \fB\ea\fR, \fB\eb\fR, \fB\ef\fR,
+\fB\en\fR, \fB\er\fR, \fB\et\fR, \fB\ev\fR\&.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdate_fmt\fR\fR
+.ad
+.RS 15n
+Define the appropriate date and time representation, corresponding to the
+\fB%C\fR field descriptor. The operand consists of a string, and can contain
+any combination of characters and field descriptors. In addition, the string
+can contain the escape sequences \fB\e\e\fR, \fB\ea\fR, \fB\eb\fR, \fB\ef\fR,
+\fB\en\fR, \fB\er\fR, \fB\et\fR, \fB\ev\fR\&.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBd_fmt\fR\fR
+.ad
+.RS 15n
+Define the appropriate date representation, corresponding to the \fB%x\fR field
+descriptor. The operand consists of a string, and can contain any combination
+of characters and field descriptors. In addition, the string can contain the
+escape sequences \fB\e\e\fR, \fB\ea\fR, \fB\eb\fR, \fB\ef\fR, \fB\en\fR,
+\fB\er\fR, \fB\et\fR, \fB\ev\fR\&.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBt_fmt\fR\fR
+.ad
+.RS 15n
+Define the appropriate time representation, corresponding to the \fB%X\fR field
+descriptor. The operand consists of a string, and can contain any combination
+of characters and field descriptors. In addition, the string can contain the
+escape sequences \fB\e\e\fR, \fB\ea\fR, \fB\eb\fR, \fB\ef\fR, \fB\en\fR,
+\fB\er\fR, \fB\et\fR, \fB\ev\fR\&.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBam_pm\fR\fR
+.ad
+.RS 15n
+Define the appropriate representation of the \fIante meridiem\fR and \fIpost
+meridiem\fR strings, corresponding to the \fB%p\fR field descriptor. The
+operand consists of two strings, separated by a semicolon, each surrounded by
+double-quotes. The first string represents the \fIante meridiem\fR designation,
+the last string the \fIpost meridiem\fR designation.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBt_fmt_ampm\fR\fR
+.ad
+.RS 15n
+Define the appropriate time representation in the 12-hour clock format with
+\fBam_pm\fR, corresponding to the \fB%r\fR field descriptor. The operand
+consists of a string and can contain any combination of characters and field
+descriptors. If the string is empty, the 12-hour format is not supported in the
+locale.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBera\fR\fR
+.ad
+.RS 15n
+Define how years are counted and displayed for each era in a locale. The
+operand consists of semicolon-separated strings. Each string is an era
+description segment with the format:
+.sp
+\fIdirection\fR:\fIoffset\fR:\fIstart_date\fR:\fIend_date\fR:\fIera_name\fR:\fIera_format\fR
+.sp
+according to the definitions below. There can be as many era description
+segments as are necessary to describe the different eras.
+.sp
+The start of an era might not be the earliest point For example, the Christian
+era B.C. starts on the day before January 1, A.D. 1, and increases with earlier
+time.
+.sp
+.ne 2
+.na
+\fB\fIdirection\fR\fR
+.ad
+.RS 14n
+Either a \fB+\fR or a \fB-\fR character. The \fB+\fR character indicates that
+years closer to the \fIstart_date\fR have lower numbers than those closer to
+the \fIend_date\fR. The \fB-\fR character indicates that years closer to the
+\fIstart_date\fR have higher numbers than those closer to the \fIend_date\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIoffset\fR\fR
+.ad
+.RS 14n
+The number of the year closest to the \fIstart_date\fR in the era,
+corresponding to the \fB%Eg\fR and \fB%Ey\fR field descriptors.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIstart_date\fR\fR
+.ad
+.RS 14n
+A date in the form \fIyyyy\fR/\fImm\fR/\fBdd\fR, where \fIyyyy\fR, \fImm\fR,
+and \fBdd\fR are the year, month and day numbers respectively of the start of
+the era. Years prior to A.D. 1 are represented as negative numbers.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIend_date\fR\fR
+.ad
+.RS 14n
+The ending date of the era, in the same format as the \fIstart_date\fR, or one
+of the two special values -* or +*. The value -* indicates that the ending date
+is the beginning of time. The value +* indicates that the ending date is the
+end of time.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIera_name\fR\fR
+.ad
+.RS 14n
+A string representing the name of the era, corresponding to the \fB%EC\fR field
+descriptor.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIera_format\fR\fR
+.ad
+.RS 14n
+A string for formatting the year in the era, corresponding to the \fB%EG\fR and
+\fB%EY\fR field descriptors.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBera_d_fmt\fR\fR
+.ad
+.RS 15n
+Define the format of the date in alternative era notation, corresponding to the
+\fB%Ex\fR field descriptor.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBera_t_fmt\fR\fR
+.ad
+.RS 15n
+Define the locale's appropriate alternative time format, corresponding to the
+\fB%EX\fR field descriptor.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBera_d_t_fmt\fR\fR
+.ad
+.RS 15n
+Define the locale's appropriate alternative date and time format, corresponding
+to the \fB%Ec\fR field descriptor.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBalt_digits\fR\fR
+.ad
+.RS 15n
+Define alternative symbols for digits, corresponding to the \fB%O\fR field
+descriptor modifier. The operand consists of semicolon-separated strings, each
+surrounded by double-quotes. The first string is the alternative symbol
+corresponding with zero, the second string the symbol corresponding with one,
+and so on. Up to 100 alternative symbol strings can be specified. The \fB%O\fR
+modifier indicates that the string corresponding to the value specified via the
+field descriptor will be used instead of the value.
+.RE
+
+.SS "LC_TIME \fIC-language\fR Access"
+The following information can be accessed. These correspond to constants
+defined in <\fBlanginfo.h\fR> and used as arguments to the
+\fBnl_langinfo\fR(3C) function.
+.sp
+.ne 2
+.na
+\fB\fBABDAY_\fIx\fR\fR\fR
+.ad
+.RS 15n
+The abbreviated weekday names (for example Sun), where \fIx\fR is a number from
+1 to 7.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBDAY_\fIx\fR\fR\fR
+.ad
+.RS 15n
+The full weekday names (for example Sunday), where \fIx\fR is a number from 1
+to 7.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBABMON_\fIx\fR\fR\fR
+.ad
+.RS 15n
+The abbreviated month names (for example Jan), where \fIx\fR is a number from 1
+to 12.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBMON_\fIx\fR\fR\fR
+.ad
+.RS 15n
+The full month names (for example January), where \fIx\fR is a number from 1 to
+12.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBD_T_FMT\fR\fR
+.ad
+.RS 15n
+The appropriate date and time representation.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBD_FMT\fR\fR
+.ad
+.RS 15n
+The appropriate date representation.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBT_FMT\fR\fR
+.ad
+.RS 15n
+The appropriate time representation.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBAM_STR\fR\fR
+.ad
+.RS 15n
+The appropriate ante-meridiem affix.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPM_STR\fR\fR
+.ad
+.RS 15n
+The appropriate post-meridiem affix.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBT_FMT_AMPM\fR\fR
+.ad
+.RS 15n
+The appropriate time representation in the 12-hour clock format with
+\fBAM_STR\fR and \fBPM_STR.\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBERA\fR\fR
+.ad
+.RS 15n
+The era description segments, which describe how years are counted and
+displayed for each era in a locale. Each era description segment has the
+format:
+.sp
+.in +2
+.nf
+\fIdirection\fR:\fIoffset\fR:\fIstart_date\fR:\fIend_date\fR:\fIera_name\fR:\fIera_format\fR
+.fi
+.in -2
+.sp
+
+according to the definitions below. There will be as many era description
+segments as are necessary to describe the different eras. Era description
+segments are separated by semicolons.
+.sp
+The start of an era might not be the earliest point For example, the Christian
+era B.C. starts on the day before January 1, A.D. 1, and increases with earlier
+time.
+.sp
+.ne 2
+.na
+\fB\fIdirection\fR\fR
+.ad
+.RS 14n
+Either a + or a - character. The + character indicates that years closer to the
+\fIstart_date\fR have lower numbers than those closer to the \fIend_date\fR.
+The - character indicates that years closer to the \fIstart_date\fR have higher
+numbers than those closer to the \fIend_date\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIoffset\fR\fR
+.ad
+.RS 14n
+The number of the year closest to the start_date in the era.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIstart_date\fR\fR
+.ad
+.RS 14n
+A date in the form \fIyyyy\fR/\fImm\fR/\fIdd\fR, where \fIyyyy\fR, \fImm\fR,
+and \fBdd\fR are the year, month and day numbers respectively of the start of
+the era. Years prior to AD 1 are represented as negative numbers.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIend_date\fR\fR
+.ad
+.RS 14n
+The ending date of the era, in the same format as the \fIstart_date\fR, or one
+of the two special values, \fB-*\fR or \fB+*\fR. The value \fB-*\fR indicates
+that the ending date is the beginning of time. The value \fB+*\fR indicates
+that the ending date is the end of time.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIera_name\fR\fR
+.ad
+.RS 14n
+The era, corresponding to the \fB%EC\fR conversion specification.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIera_format\fR\fR
+.ad
+.RS 14n
+The format of the year in the era, corresponding to the \fB%EY\fR and \fB%EY\fR
+conversion specifications.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBERA_D_FMT\fR\fR
+.ad
+.RS 15n
+The era date format.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBERA_T_FMT\fR\fR
+.ad
+.RS 15n
+The locale's appropriate alternative time format, corresponding to the
+\fB%EX\fR field descriptor.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBERA_D_T_FMT\fR\fR
+.ad
+.RS 15n
+The locale's appropriate alternative date and time format, corresponding to the
+\fB%Ec\fR field descriptor.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBALT_DIGITS\fR\fR
+.ad
+.RS 15n
+The alternative symbols for digits, corresponding to the \fB%O\fR conversion
+specification modifier. The value consists of semicolon-separated symbols. The
+first is the alternative symbol corresponding to zero, the second is the symbol
+corresponding to one, and so on. Up to 100 alternative symbols may be
+specified. The following table displays the correspondence between the items
+described above and the conversion specifiers used by \fBdate\fR(1) and the
+\fBstrftime\fR(3C), \fBwcsftime\fR(3C), and \fBstrptime\fR(3C) functions.
+.RE
+
+.sp
+
+.sp
+.TS
+box;
+c | c | c
+c | c | c .
+\fBlocaledef\fR \fBlanginfo\fR \fBConversion\fR
+\fBKeyword\fR \fBConstant\fR \fBSpecifier\fR
+_
+\fBabday\fR \fBABDAY_\fR\fIx\fR \fB%a\fR
+\fBday\fR \fBDAY_\fR\fIx\fR \fB%A\fR
+\fBabmon\fR \fBABMON_\fR\fIx\fR \fB%b\fR
+\fBmon\fR \fBMON\fR \fB%B\fR
+\fBd_t_fmt\fR \fBD_T_FMT\fR \fB%c\fR
+\fBdate_fmt\fR \fBDATE_FMT\fR \fB%C\fR
+\fBd_fmt\fR \fBD_FMT\fR \fB%x\fR
+\fBt_fmt\fR \fBT_FMT\fR \fB%X\fR
+\fBam_pm\fR \fBAM_STR\fR \fB%p\fR
+\fBam_pm\fR \fBPM_STR\fR \fB%p\fR
+\fBt_fmt_ampm\fR \fBT_FMT_AMPM\fR \fB%r\fR
+\fBera\fR \fBERA\fR \fB%EC, %Eg,\fR
+ \fB%EG, %Ey, %EY\fR
+\fBera_d_fmt\fR \fBERA_D_FMT\fR \fB%Ex\fR
+\fBera_t_fmt\fR \fBERA_T_FMT\fR \fB%EX\fR
+\fBera_d_t_fmt\fR \fBERA_D_T_FMT\fR \fB%Ec\fR
+\fBalt_digits\fR \fBALT_DIGITS\fR \fB%O\fR
+.TE
+
+.SS "LC_TIME \fIGeneral\fR Information"
+Although certain of the field descriptors in the POSIX locale (such as the name
+of the month) are shown with initial capital letters, this need not be the case
+in other locales. Programs using these fields may need to adjust the
+capitalization if the output is going to be used at the beginning of a
+sentence.
+.sp
+.LP
+The \fBLC_TIME\fR descriptions of \fBabday\fR, \fBday\fR, \fBmon\fR, and
+\fBabmon\fR imply a Gregorian style calendar (7-day weeks, 12-month years, leap
+years, and so forth). Formatting time strings for other types of calendars is
+outside the scope of this document set.
+.sp
+.LP
+As specified under \fBdate\fR in \fBLocale Definition\fR and
+\fBstrftime\fR(3C), the field descriptors corresponding to the optional
+keywords consist of a modifier followed by a traditional field descriptor (for
+instance \fB%Ex\fR). If the optional keywords are not supported by the
+implementation or are unspecified for the current locale, these field
+descriptors are treated as the traditional field descriptor. For instance,
+assume the following keywords:
+.sp
+.in +2
+.nf
+alt_digits "0th" ; "1st" ; "2nd" ; "3rd" ; "4th" ; "5th" ; \e
+"6th" ; "7th" ; "8th" ; "9th" ; "10th">
+d_fmt "The %Od day of %B in %Y"
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+On 7/4/1776, the \fB%x\fR field descriptor would result in "The 4th day of July
+in 1776" while 7/14/1789 would come out as "The 14 day of July in 1789" The
+above example is for illustrative purposes only. The \fB%O\fR modifier is
+primarily intended to provide for Kanji or Hindi digits in \fBdate\fR formats.
+.SS "LC_MESSAGES"
+The \fBLC_MESSAGES\fR category defines the format and values for affirmative
+and negative responses.
+.sp
+.LP
+The following keywords are recognized as part of the locale definition file.
+The \fBnl_langinfo\fR(3C) function accepts upper-case versions of the first
+four keywords.
+.sp
+.ne 2
+.na
+\fB\fByesexpr\fR\fR
+.ad
+.RS 11n
+The operand consists of an extended regular expression (see \fBregex\fR(7))
+that describes the acceptable affirmative response to a question expecting an
+affirmative or negative response.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnoexpr\fR\fR
+.ad
+.RS 11n
+The operand consists of an extended regular expression that describes the
+acceptable negative response to a question expecting an affirmative or negative
+response.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fByesstr\fR\fR
+.ad
+.RS 11n
+The operand consists of a fixed string (not a regular expression) that can be
+used by an application for composition of a message that lists an acceptable
+affirmative response, such as in a prompt.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnostr\fR\fR
+.ad
+.RS 11n
+The operand consists of a fixed string that can be used by an application for
+composition of a message that lists an acceptable negative response. The format
+and values for affirmative and negative responses of the POSIX locale follow;
+the code listing depicting the \fBlocaledef\fR input, the table representing
+the same information with the addition of \fBnl_langinfo()\fR constants.
+.sp
+.in +2
+.nf
+LC_MESSAGES
+# This is the POSIX locale definition for
+# the LC_MESSAGES category.
+#
+yesexpr "<circumflex><left-square-bracket><y><Y>\e
+ <right-square-bracket>"
+#
+noexpr "<circumflex><left-square-bracket><n><N>\e
+ <right-square-bracket>"
+#
+yesstr "yes"
+nostr "no"
+END LC_MESSAGES
+.fi
+.in -2
+.sp
+
+.RE
+
+.sp
+
+.sp
+.TS
+box;
+l | l | l
+l | l | l .
+\fBlocaledef Keyword\fR \fBlanginfo Constant\fR \fBPOSIX Locale Value\fR
+\fByesexpr\fR \fBYESEXPR\fR \fB"^[yY]"\fR
+\fBnoexpr\fR \fBNOEXPR\fR \fB"^[nN]"\fR
+\fByesstr\fR \fBYESSTR\fR \fB"yes"\fR
+\fBnostr\fR \fBNOSTR\fR \fB"no"\fR
+.TE
+
+.sp
+.LP
+In an application conforming to the SUSv3 standard, the information on
+\fByesstr\fR and \fBnostr\fR is not available.
+.SH SEE ALSO
+.BR date (1),
+.BR locale (1),
+.BR localedef (1),
+.BR sort (1),
+.BR tr (1),
+.BR uniq (1),
+.BR localeconv (3C),
+.BR nl_langinfo (3C),
+.BR setlocale (3C),
+.BR strcoll (3C),
+.BR strftime (3C),
+.BR strptime (3C),
+.BR strxfrm (3C),
+.BR wcscoll (3C),
+.BR wcsftime (3C),
+.BR wcsxfrm (3C),
+.BR wctype (3C),
+.BR attributes (7),
+.BR charmap (7),
+.BR extensions (7),
+.BR regex (7)
diff --git a/usr/src/man/man7/lx.7 b/usr/src/man/man7/lx.7
new file mode 100644
index 0000000000..a45ead418c
--- /dev/null
+++ b/usr/src/man/man7/lx.7
@@ -0,0 +1,113 @@
+.\"
+.\" This file and its contents are supplied under the terms of the
+.\" Common Development and Distribution License ("CDDL"), version 1.0.
+.\" You may only use this file in accordance with the terms of version
+.\" 1.0 of the CDDL.
+.\"
+.\" A full copy of the text of the CDDL should have accompanied this
+.\" source. A copy of the CDDL is also available via the Internet at
+.\" http://www.illumos.org/license/CDDL.
+.\"
+.\"
+.\" Copyright 2016, Joyent, Inc.
+.\"
+.Dd February 5, 2106
+.Dt LX 7
+.Os
+.Sh NAME
+.Nm lx
+.Nd zone brand for running a GNU/Linux user-level environment
+.Sh DESCRIPTION
+The
+.Em lx
+brand
+uses the
+.Xr brands 7
+framework to provide an environment for running binary applications built
+for GNU/Linux.
+User-level code, including an entire Linux distribution, can run inside the
+zone.
+Both 32-bit and 64-bit applications are supported.
+The majority of Linux system calls are provided, along with emulation for a
+variety of Linux file systems, such as
+.Em proc ,
+.Em cgroup
+and
+.Em sysfs .
+.Pp
+The
+.Em /proc
+file system within the zone is a subset of a full Linux
+.Em /proc .
+Most kernel-level tuning applied to
+.Em /proc
+is unavailable or ignored.
+Some tuning can be performed, but only to reduce the overall limits that have
+been specified on the zone's configuration.
+That is, within the zone there is no way to increase the resource limits set on
+the zone itself.
+.Pp
+The zone must be installed using a clone of a
+.Xr zfs 8
+dataset which contains an image of the software to be run in the zone.
+.Pp
+Example:
+.Dl zoneadm -z myzone install -x nodataset -t debian7
+.Pp
+Applications provided by the base SunOS operating system are also available
+within the zone under the
+.Em /native
+mount point.
+This allows the use of various native tools such as
+.Xr dtrace 8 ,
+.Xr mdb 1 ,
+or the
+.Xr proc 1
+tools on GNU/Linux applications.
+However, not every native tool will work properly within an
+.Em lx
+zone.
+.Sh CONFIGURATION
+The
+.Em kernel-version
+attribute can be included in the zone's
+.Xr zonecfg 8
+settings as a way to specify the Linux version that the zone is emulating.
+For example, the value could be
+.Em 3.13.0 .
+.Sh LIMITATIONS
+The brand only supports the exclusive IP stack zone configuration.
+.Pp
+Most modern GNU/Linux application software runs on
+.Em lx ,
+but because there are some system calls or file systems which are not currently
+implemented, it's possible that an application won't run.
+This does not preclude the application running in the future as the
+.Em lx
+brand adds new capabilities.
+.Pp
+Because there is only the single SunOS kernel running on the system, there
+is no support for any Linux kernel-level modules.
+That is, there is no support for add-on drivers or any other modules that are
+part of the Linux kernel itself.
+If that is required, a full virtual machine should be used instead of an
+.Em lx
+branded zone.
+.Pp
+Any core files produced within the zone are in the native SunOS format.
+.Pp
+As with any zone, the normal security mechanisms and privileges apply.
+Thus, certain operations (for example, changing the system time), will not be
+allowed unless the zone has been configured with the appropriate additional
+privileges.
+.Sh SEE ALSO
+.Xr mdb 1 ,
+.Xr proc 1 ,
+.Xr brands 7 ,
+.Xr privileges 7 ,
+.Xr resource_controls 7 ,
+.Xr zones 7 ,
+.Xr dtrace 8 ,
+.Xr zfs 8 ,
+.Xr zoneadm 8 ,
+.Xr zonecfg 8
diff --git a/usr/src/man/man7/man.7 b/usr/src/man/man7/man.7
new file mode 100644
index 0000000000..f68f37511c
--- /dev/null
+++ b/usr/src/man/man7/man.7
@@ -0,0 +1,265 @@
+.\" Copyright 2015 Nexenta Systems, Inc. All rights reserved.
+.\" Copyright 2014 Garrett D'Amore <garrett@damore.org>
+.\" Copyright (c) 1995, Sun Microsystems, Inc.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.Dd "Feb 18, 2015"
+.Dt MAN 7
+.Os
+.Sh NAME
+.Nm man
+.Nd macros to format Reference Manual pages
+.Sh SYNOPSIS
+.Nm mandoc
+.Fl T Ar man
+.Ar
+.Nm nroff
+.Fl man
+.Ar
+.Nm troff
+.Fl man
+.Ar
+.Sh DESCRIPTION
+These macros are used to lay out the reference pages in this manual.
+Note: if
+.Ar file
+contains format input for a preprocessor, the commands shown
+above must be piped through the appropriate preprocessor.
+This is handled automatically by the
+.Xr man 1
+command.
+See the
+.Sx Conventions
+section.
+.Lp
+Any text argument
+.Ar t
+may be zero to six words.
+Quotes may be used to include SPACE characters in a
+.Qq word .
+If
+.Ar text
+is empty, the special
+treatment is applied to the next input line with text to be printed.
+In this way
+.Nm \&.I
+may be used to italicize a whole line, or
+.Nm \&.SB
+may be used to make small bold letters.
+.Lp
+A prevailing indent distance is remembered between successive indented
+paragraphs, and is reset to default value upon reaching a non-indented
+paragraph.
+Default units for indents
+.Nm i
+are ens.
+.Lp
+Type font and size are reset to default values before each paragraph, and after
+processing font and size setting macros.
+.Pp
+These strings are predefined by
+.Nm -man :
+.Bl -tag -width Ds
+.It Nm \e*R
+.Sq \(rg ,
+.Sq (Reg)
+in
+.Nm nroff .
+.It Nm \e*S
+Change to default type size.
+.El
+.Sh "Requests"
+* n.t.l. = next text line; p.i. = prevailing indent
+.Bl -column ".TH n s d f m" "Cause " "t=n.t.l.*" "Explanation " -offset Ds
+.It Sy Request Sy Cause Sy "If No" Sy Explanation
+.It "" Sy Break Sy "Argument" ""
+.It Nm \&.B Ar "t" no Ar t Ns =n.t.l.* Text is in bold font.
+.It Nm \&.BI Ar t no Ar t Ns =n.t.l. Join words, alternating bold and italic.
+.It Nm \&.BR Ar t no Ar t Ns =n.t.l. Join words, alternating bold and roman.
+.It Nm \&.DT no Li \&.5i 1i... Restore default tabs.
+.It Nm \&.HP Ar i yes Ar i Ns =p.i.* "Begin paragraph with hanging indent. Set prevailing indent to" Ar i .
+.It Nm \&.I Ar t no Ar t Ns =n.t.l. Text is italic.
+.It Nm \&.IB Ar t no Ar t Ns =n.t.l. Join words, altenrating italic and bold.
+.It Nm \&.IP Ar x Ar i yes Ar x Ns ="" Same as
+.Nm \&.TP
+with tag
+.Ar x .
+.It Nm \&.IR Ar t no Ar t Ns =n.t.l. Join words, alternating italic and roman.
+.It Nm \&.IX Ar t no - Index macro, not used (obsolete).
+.It Nm \&.LP yes - Begin left-aligned paragraph. Set prevailing indent to .5i.
+.It Nm \&.P yes - Same as
+.Nm \&.LP .
+.It Nm \&.PD Ar d no Ar d Ns =.4v Set vertical distance between paragraphs.
+.It Nm \&.PP yes - Same as
+.Nm \&.LP .
+.It Nm \&.RE yes - End of relative indent. Restores prevailing indent.
+.It Nm \&.RB Ar t no Ar t Ns =n.t.l. Join words, alternating roman and bold.
+.It Nm \&.RI Ar t no Ar t Ns =n.t.l. Join words, alternating roman and italic.
+.It Nm \&.RS Ar i yes Ar i Ns =p.i. Start relative indent, increase indent by Ar i .
+Sets prevailing indent to .5i for nested indents.
+.It Nm \&.SB Ar t no - Reduce size of text by 1 point, make text bold.
+.It Nm \&.SH Ar t yes - Section Heading.
+.It Nm \&.SM Ar t no Ar t Ns =n.t.l. Reduce size of text by 1 point.
+.It Nm \&.SS Ar t yes Ar t Ns =n.t.l. Section Subheading.
+.It Nm \&.TH Ar n s d f m yes - Begin reference page Ar n , No of section Ar s ; Ar d No is the date of the most recent change. If present, Ar f No is the left page footer; Ar m No is the main page (center) header. Sets prevailing indent and tabs to .5i.
+.It Nm \&.TP Ar i yes Ar i Ns =p.i. Begin indented paragraph, with the tag given on the next text line. Set prevailing indent to
+.Ar i .
+.It Nm \&.TX Ar t p no - Resolve the title abbreviation Ar t ; No join to punctuation mark (or text) Ar p .
+.El
+.Ss "Conventions"
+When formatting a manual page,
+.Nm
+examines the first line to determine
+whether it requires special processing.
+For example a first line consisting of:
+.Lp
+.Dl \&'\e" t
+.Lp
+indicates that the manual page must be run through the
+.Xr tbl 1
+preprocessor.
+.Lp
+A typical manual page for a command or function is laid out as follows:
+.Bl -tag -width ".SH RETURN VALUES"
+.
+.It Nm \&.TH Ar title Op "1-9"
+.
+The name of the command or function, which serves as the title of the manual
+page.
+This is followed by the number of the section in which it appears.
+.
+.It Nm \&.SH NAME
+.
+The name, or list of names, by which the command is called, followed by a dash
+and then a one-line summary of the action performed.
+All in roman font, this section contains no
+.Xr troff 1
+commands or escapes, and no macro requests.
+It is used to generate the database used by the
+.Xr whatis 1
+command.
+.
+.It Nm \&.SH SYNOPSIS
+.Bl -tag -width "Functions:"
+.It Sy Commands:
+The syntax of the command and its arguments, as typed on the command line.
+When in boldface, a word must be typed exactly as printed.
+When in italics, a word can be replaced with an argument that you supply.
+References to bold or italicized items are not capitalized in other sections,
+even when they begin a sentence.
+.Lp
+Syntactic symbols appear in roman face:
+.Bl -tag -width " "
+.It Op " "
+An argument, when surrounded by brackets is optional.
+.It |
+Arguments separated by a vertical bar are exclusive.
+You can supply only one item from such a list.
+.It \&.\|.\|.
+Arguments followed by an ellipsis can be repeated.
+When an ellipsis follows a bracketed set, the expression within the brackets can
+be repeated.
+.El
+.It Sy Functions:
+If required, the data declaration, or
+.Li #include
+directive, is shown first,
+followed by the function declaration.
+Otherwise, the function declaration is shown.
+.El
+.
+.It Nm \&.SH DESCRIPTION
+.
+A narrative overview of the command or function's external behavior.
+This includes how it interacts with files or data, and how it handles the
+standard input, standard output and standard error.
+Internals and implementation details are normally omitted.
+This section attempts to provide a succinct overview in answer to the question,
+"what does it do?"
+.Lp
+Literal text from the synopsis appears in constant width, as do literal
+filenames and references to items that appear elsewhere in the reference
+manuals.
+Arguments are italicized.
+.Lp
+If a command interprets either subcommands or an input grammar, its command
+interface or input grammar is normally described in a
+.Nm USAGE
+section, which follows the
+.Nm OPTIONS
+section.
+The
+.Nm DESCRIPTION
+section only
+describes the behavior of the command itself, not that of subcommands.
+.
+.It Nm \&.SH OPTIONS
+.
+The list of options along with a description of how each affects the command's
+operation.
+.
+.It Nm \&.SH RETURN VALUES
+.
+A list of the values the library routine will return to the calling program
+and the conditions that cause these values to be returned.
+.
+.It Nm \&.SH EXIT STATUS
+.
+A list of the values the utility will return to the calling program or shell,
+and the conditions that cause these values to be returned.
+.
+.It Nm \&.SH FILES
+.
+A list of files associated with the command or function.
+.
+.It Nm \&.SH SEE ALSO
+.
+A comma-separated list of related manual pages, followed by references to other
+published materials.
+.
+.It Nm \&.SH DIAGNOSTICS
+.
+A list of diagnostic messages and an explanation of each.
+.
+.It Nm \&.SH BUGS
+.
+A description of limitations, known defects, and possible problems associated
+with the command or function.
+.El
+.Sh FILES
+.Pa /usr/share/man/whatis
+.Sh NOTES
+The
+.Nm
+package should not be used for new documentation.
+The
+.Xr mdoc 7 ,
+package is preferred, as it uses semantic markup rather than physical markup.
+.Sh CODE SET INDEPENDENCE
+When processed with
+.Xr mandoc 1 ,
+this package is Code Set Independent.
+However, when processed with legacy tools such as
+.Xr nroff 1
+and
+.Xr troff 1 ,
+the use of multi-byte characters may not be supported.
+.Sh INTERFACE STABILITY
+.Sy Obsolete Committed .
+The
+.Xr mdoc 7
+package should be used instead.
+.Sh SEE ALSO
+.Xr eqn 1 ,
+.Xr man 1 ,
+.Xr mandoc 1 ,
+.Xr nroff 1 ,
+.Xr tbl 1 ,
+.Xr troff 1 ,
+.Xr whatis 1 ,
+.Xr mdoc 7
+.Rs
+.%A Dale Dougherty and Tim O'Reilly
+.%B Unix Text Processing
+.Re
diff --git a/usr/src/man/man7/mandoc_char.7 b/usr/src/man/man7/mandoc_char.7
new file mode 100644
index 0000000000..f8d78e3099
--- /dev/null
+++ b/usr/src/man/man7/mandoc_char.7
@@ -0,0 +1,829 @@
+.\" $Id: mandoc_char.7,v 1.78 2020/10/31 11:45:16 schwarze Exp $
+.\"
+.\" Copyright (c) 2003 Jason McIntyre <jmc@openbsd.org>
+.\" Copyright (c) 2009, 2010, 2011 Kristaps Dzonsons <kristaps@bsd.lv>
+.\" Copyright (c) 2011,2013,2015,2017-2020 Ingo Schwarze <schwarze@openbsd.org>
+.\"
+.\" Permission to use, copy, modify, and distribute this software for any
+.\" purpose with or without fee is hereby granted, provided that the above
+.\" copyright notice and this permission notice appear in all copies.
+.\"
+.\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+.\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+.\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+.\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+.\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+.\"
+.Dd $Mdocdate: October 31 2020 $
+.Dt MANDOC_CHAR 7
+.Os
+.Sh NAME
+.Nm mandoc_char
+.Nd mandoc special characters
+.Sh DESCRIPTION
+This page documents the
+.Xr mandoc_roff 7
+escape sequences accepted by
+.Xr mandoc 1
+to represent special characters in
+.Xr mdoc 7
+and
+.Xr man 7
+documents.
+.Pp
+The rendering depends on the
+.Xr mandoc 1
+output mode; it can be inspected by calling
+.Xr man 1
+on the
+.Nm
+manual page with different
+.Fl T
+arguments.
+In ASCII output, the rendering of some characters may be hard
+to interpret for the reader.
+Many are rendered as descriptive strings like
+.Qq <integral> ,
+.Qq <degree> ,
+or
+.Qq <Gamma> ,
+which may look ugly, and many are replaced by similar ASCII characters.
+In particular, accented characters are usually shown without the accent.
+For that reason, try to avoid using any of the special characters
+documented here except those discussed in the
+.Sx DESCRIPTION ,
+unless they are essential for explaining the subject matter at hand,
+for example when documenting complicated mathematical functions.
+.Pp
+In particular, in English manual pages, do not use special-character
+escape sequences to represent national language characters in author
+names; instead, provide ASCII transcriptions of the names.
+.Ss Dashes and Hyphens
+In typography there are different types of dashes of various width:
+the hyphen (\(hy),
+the en-dash (\(en),
+the em-dash (\(em),
+and the mathematical minus sign (\(mi).
+.Pp
+Hyphens are used for adjectives;
+to separate the two parts of a compound word;
+or to separate a word across two successive lines of text.
+The hyphen does not need to be escaped:
+.Bd -unfilled -offset indent
+blue-eyed
+lorry-driver
+.Ed
+.Pp
+The en-dash is used to separate the two elements of a range,
+or can be used the same way as an em-dash.
+It should be written as
+.Sq \e(en :
+.Bd -unfilled -offset indent
+pp. 95\e(en97.
+Go away \e(en or else!
+.Ed
+.Pp
+The em-dash can be used to show an interruption
+or can be used the same way as colons, semi-colons, or parentheses.
+It should be written as
+.Sq \e(em :
+.Bd -unfilled -offset indent
+Three things \e(em apples, oranges, and bananas.
+This is not that \e(em rather, this is that.
+.Ed
+.Pp
+In
+.Xr mandoc_roff 7
+documents, the minus sign is normally written as
+.Sq \e- .
+In manual pages, some style guides recommend to also use
+.Sq \e-
+if an ASCII 0x2d
+.Dq hyphen-minus
+output glyph that can be copied and pasted is desired in output modes
+supporting it, for example in
+.Fl T Cm utf8
+and
+.Fl T Cm html .
+But currently, no practically relevant manual page formatter requires
+that subtlety, so in manual pages, it is sufficient to write plain
+.Sq -
+to represent hyphen, minus, and hyphen-minus.
+.Pp
+If a word on a text input line contains a hyphen, a formatter may decide
+to insert an output line break after the hyphen if that helps filling
+the current output line, but the whole word would overflow the line.
+If it is important that the word is not broken across lines in this
+way, a zero-width space
+.Pq Sq \e&
+can be inserted before or after the hyphen.
+While
+.Xr mandoc 1
+never breaks the output line after hyphens adjacent to a zero-width
+space, after any of the other dash- or hyphen-like characters
+represented by escape sequences, or after hyphens inside words in
+macro arguments, other software may not respect these rules and may
+break the line even in such cases.
+.Pp
+Some
+.Xr mandoc_roff 7
+implementations contains dictionaries allowing to break the line
+at syllable boundaries even inside words that contain no hyphens.
+Such automatic hyphenation is not supported by
+.Xr mandoc 1 ,
+which only breaks the line at whitespace, and inside words only
+after existing hyphens.
+.Ss Spaces
+To separate words in normal text, for indenting and alignment
+in literal context, and when none of the following special cases apply,
+just use the normal space character
+.Pq Sq \ .
+.Pp
+When filling text, output lines may be broken between words, i.e. at space
+characters.
+To prevent a line break between two particular words,
+use the unpaddable non-breaking space escape sequence
+.Pq Sq \e\ \&
+instead of the normal space character.
+For example, the input string
+.Dq number\e\ 1
+will be kept together as
+.Dq number\ 1
+on the same output line.
+.Pp
+On request and macro lines, the normal space character serves as an
+argument delimiter.
+To include whitespace into arguments, quoting is usually the best choice;
+see the MACRO SYNTAX section in
+.Xr mandoc_roff 7 .
+In some cases, using the non-breaking space escape sequence
+.Pq Sq \e\ \&
+may be preferable.
+.Pp
+To escape macro names and to protect whitespace at the end
+of input lines, the zero-width space
+.Pq Sq \e&
+is often useful.
+For example, in
+.Xr mdoc 7 ,
+a normal space character can be displayed in single quotes in either
+of the following ways:
+.Pp
+.Dl .Sq \(dq \(dq
+.Dl .Sq \e \e&
+.Ss Quotes
+On request and macro lines, the double-quote character
+.Pq Sq \(dq
+is handled specially to allow quoting.
+One way to prevent this special handling is by using the
+.Sq \e(dq
+escape sequence.
+.Pp
+Note that on text lines, literal double-quote characters can be used
+verbatim.
+All other quote-like characters can be used verbatim as well,
+even on request and macro lines.
+.Ss Accents
+In output modes supporting such special output characters, for example
+.Fl T Cm pdf ,
+and sometimes less consistently in
+.Fl T Cm utf8 ,
+some
+.Xr mandoc_roff 7
+formatters convert the following ASCII input characters to the
+following Unicode special output characters:
+.Bl -column x(ga U+2018 -offset indent
+.It \(ga Ta U+2018 Ta left single quotation mark
+.It \(aq Ta U+2019 Ta right single quotation mark
+.It \(ti Ta U+02DC Ta small tilde
+.It \(ha Ta U+02C6 Ta modifier letter circumflex
+.El
+.Pp
+In prose, this automatic substitution is often desirable;
+but when these characters have to be displayed as plain ASCII
+characters, for example in source code samples, they require
+escaping to render as follows:
+.Bl -column x(ga U+2018 -offset indent
+.It \e(ga Ta U+0060 Ta grave accent
+.It \e(aq Ta U+0027 Ta apostrophe
+.It \e(ti Ta U+007E Ta tilde
+.It \e(ha Ta U+005E Ta circumflex accent
+.El
+.Ss Periods
+The period
+.Pq Sq \&.
+is handled specially at the beginning of an input line,
+where it introduces a
+.Xr mandoc_roff 7
+request or a macro, and when appearing alone as a macro argument in
+.Xr mdoc 7 .
+In such situations, prepend a zero-width space
+.Pq Sq \e&.
+to make it behave like normal text.
+.Pp
+Do not use the
+.Sq \e.
+escape sequence.
+It does not prevent special handling of the period.
+.Ss Backslashes
+To include a literal backslash
+.Pq Sq \e
+into the output, use the
+.Pq Sq \ee
+escape sequence.
+.Pp
+Note that doubling it
+.Pq Sq \e\e
+is not the right way to output a backslash.
+Because
+.Xr mandoc 1
+does not implement full
+.Xr mandoc_roff 7
+functionality, it may work with
+.Xr mandoc 1 ,
+but it may have weird effects on complete
+.Xr mandoc_roff 7
+implementations.
+.Sh SPECIAL CHARACTERS
+Special characters are encoded as
+.Sq \eX
+.Pq for a one-character escape ,
+.Sq \e(XX
+.Pq two-character ,
+and
+.Sq \e[N]
+.Pq N-character .
+For details, see the
+.Em Special Characters
+subsection of the
+.Xr mandoc_roff 7
+manual.
+.Pp
+Spaces, non-breaking unless stated otherwise:
+.Bl -column "Input" "Description" -offset indent -compact
+.It Em Input Ta Em Description
+.It Sq \e\ \& Ta unpaddable space
+.It \e\(ti Ta paddable space
+.It \e0 Ta digit-width space
+.It \e| Ta one-sixth \e(em narrow space, zero width in nroff mode
+.It \e^ Ta one-twelfth \e(em half-narrow space, zero width in nroff
+.It \e& Ta zero-width space
+.It \e) Ta zero-width space transparent to end-of-sentence detection
+.It \e% Ta zero-width space allowing hyphenation
+.It \e: Ta zero-width space allowing line break
+.El
+.Pp
+Lines:
+.Bl -column "Input" "Rendered" "Description" -offset indent -compact
+.It Em Input Ta Em Rendered Ta Em Description
+.It \e(ba Ta \(ba Ta bar
+.It \e(br Ta \(br Ta box rule
+.It \e(ul Ta \(ul Ta underscore
+.It \e(ru Ta \(ru Ta underscore (width 0.5m)
+.It \e(rn Ta \(rn Ta overline
+.It \e(bb Ta \(bb Ta broken bar
+.It \e(sl Ta \(sl Ta forward slash
+.It \e(rs Ta \(rs Ta backward slash
+.El
+.Pp
+Text markers:
+.Bl -column "Input" "Rendered" "Description" -offset indent -compact
+.It Em Input Ta Em Rendered Ta Em Description
+.It \e(ci Ta \(ci Ta circle
+.It \e(bu Ta \(bu Ta bullet
+.It \e(dd Ta \(dd Ta double dagger
+.It \e(dg Ta \(dg Ta dagger
+.It \e(lz Ta \(lz Ta lozenge
+.It \e(sq Ta \(sq Ta white square
+.It \e(ps Ta \(ps Ta paragraph
+.It \e(sc Ta \(sc Ta section
+.It \e(lh Ta \(lh Ta left hand
+.It \e(rh Ta \(rh Ta right hand
+.It \e(at Ta \(at Ta at
+.It \e(sh Ta \(sh Ta hash (pound)
+.It \e(CR Ta \(CR Ta carriage return
+.It \e(OK Ta \(OK Ta check mark
+.It \e(CL Ta \(CL Ta club suit
+.It \e(SP Ta \(SP Ta spade suit
+.It \e(HE Ta \(HE Ta heart suit
+.It \e(DI Ta \(DI Ta diamond suit
+.El
+.Pp
+Legal symbols:
+.Bl -column "Input" "Rendered" "Description" -offset indent -compact
+.It Em Input Ta Em Rendered Ta Em Description
+.It \e(co Ta \(co Ta copyright
+.It \e(rg Ta \(rg Ta registered
+.It \e(tm Ta \(tm Ta trademarked
+.El
+.Pp
+Punctuation:
+.Bl -column "Input" "Rendered" "Description" -offset indent -compact
+.It Em Input Ta Em Rendered Ta Em Description
+.It \e(em Ta \(em Ta em-dash
+.It \e(en Ta \(en Ta en-dash
+.It \e(hy Ta \(hy Ta hyphen
+.It \ee Ta \e Ta back-slash
+.It \e. Ta \. Ta period
+.It \e(r! Ta \(r! Ta upside-down exclamation
+.It \e(r? Ta \(r? Ta upside-down question
+.El
+.Pp
+Quotes:
+.Bl -column "Input" "Rendered" "Description" -offset indent -compact
+.It Em Input Ta Em Rendered Ta Em Description
+.It \e(Bq Ta \(Bq Ta right low double-quote
+.It \e(bq Ta \(bq Ta right low single-quote
+.It \e(lq Ta \(lq Ta left double-quote
+.It \e(rq Ta \(rq Ta right double-quote
+.It \e(oq Ta \(oq Ta left single-quote
+.It \e(cq Ta \(cq Ta right single-quote
+.It \e(aq Ta \(aq Ta apostrophe quote (ASCII character)
+.It \e(dq Ta \(dq Ta double quote (ASCII character)
+.It \e(Fo Ta \(Fo Ta left guillemet
+.It \e(Fc Ta \(Fc Ta right guillemet
+.It \e(fo Ta \(fo Ta left single guillemet
+.It \e(fc Ta \(fc Ta right single guillemet
+.El
+.Pp
+Brackets:
+.Bl -column "xxbracketrightbtx" Rendered Description -offset indent -compact
+.It Em Input Ta Em Rendered Ta Em Description
+.It \e(lB Ta \(lB Ta left bracket
+.It \e(rB Ta \(rB Ta right bracket
+.It \e(lC Ta \(lC Ta left brace
+.It \e(rC Ta \(rC Ta right brace
+.It \e(la Ta \(la Ta left angle
+.It \e(ra Ta \(ra Ta right angle
+.It \e(bv Ta \(bv Ta brace extension (special font)
+.It \e[braceex] Ta \[braceex] Ta brace extension
+.It \e[bracketlefttp] Ta \[bracketlefttp] Ta top-left hooked bracket
+.It \e[bracketleftbt] Ta \[bracketleftbt] Ta bottom-left hooked bracket
+.It \e[bracketleftex] Ta \[bracketleftex] Ta left hooked bracket extension
+.It \e[bracketrighttp] Ta \[bracketrighttp] Ta top-right hooked bracket
+.It \e[bracketrightbt] Ta \[bracketrightbt] Ta bottom-right hooked bracket
+.It \e[bracketrightex] Ta \[bracketrightex] Ta right hooked bracket extension
+.It \e(lt Ta \(lt Ta top-left hooked brace
+.It \e[bracelefttp] Ta \[bracelefttp] Ta top-left hooked brace
+.It \e(lk Ta \(lk Ta mid-left hooked brace
+.It \e[braceleftmid] Ta \[braceleftmid] Ta mid-left hooked brace
+.It \e(lb Ta \(lb Ta bottom-left hooked brace
+.It \e[braceleftbt] Ta \[braceleftbt] Ta bottom-left hooked brace
+.It \e[braceleftex] Ta \[braceleftex] Ta left hooked brace extension
+.It \e(rt Ta \(rt Ta top-left hooked brace
+.It \e[bracerighttp] Ta \[bracerighttp] Ta top-right hooked brace
+.It \e(rk Ta \(rk Ta mid-right hooked brace
+.It \e[bracerightmid] Ta \[bracerightmid] Ta mid-right hooked brace
+.It \e(rb Ta \(rb Ta bottom-right hooked brace
+.It \e[bracerightbt] Ta \[bracerightbt] Ta bottom-right hooked brace
+.It \e[bracerightex] Ta \[bracerightex] Ta right hooked brace extension
+.It \e[parenlefttp] Ta \[parenlefttp] Ta top-left hooked parenthesis
+.It \e[parenleftbt] Ta \[parenleftbt] Ta bottom-left hooked parenthesis
+.It \e[parenleftex] Ta \[parenleftex] Ta left hooked parenthesis extension
+.It \e[parenrighttp] Ta \[parenrighttp] Ta top-right hooked parenthesis
+.It \e[parenrightbt] Ta \[parenrightbt] Ta bottom-right hooked parenthesis
+.It \e[parenrightex] Ta \[parenrightex] Ta right hooked parenthesis extension
+.El
+.Pp
+Arrows:
+.Bl -column "Input" "Rendered" "Description" -offset indent -compact
+.It Em Input Ta Em Rendered Ta Em Description
+.It \e(<- Ta \(<- Ta left arrow
+.It \e(-> Ta \(-> Ta right arrow
+.It \e(<> Ta \(<> Ta left-right arrow
+.It \e(da Ta \(da Ta down arrow
+.It \e(ua Ta \(ua Ta up arrow
+.It \e(va Ta \(va Ta up-down arrow
+.It \e(lA Ta \(lA Ta left double-arrow
+.It \e(rA Ta \(rA Ta right double-arrow
+.It \e(hA Ta \(hA Ta left-right double-arrow
+.It \e(uA Ta \(uA Ta up double-arrow
+.It \e(dA Ta \(dA Ta down double-arrow
+.It \e(vA Ta \(vA Ta up-down double-arrow
+.It \e(an Ta \(an Ta horizontal arrow extension
+.El
+.Pp
+Logical:
+.Bl -column "Input" "Rendered" "Description" -offset indent -compact
+.It Em Input Ta Em Rendered Ta Em Description
+.It \e(AN Ta \(AN Ta logical and
+.It \e(OR Ta \(OR Ta logical or
+.It \e[tno] Ta \[tno] Ta logical not (text font)
+.It \e(no Ta \(no Ta logical not (special font)
+.It \e(te Ta \(te Ta existential quantifier
+.It \e(fa Ta \(fa Ta universal quantifier
+.It \e(st Ta \(st Ta such that
+.It \e(tf Ta \(tf Ta therefore
+.It \e(3d Ta \(3d Ta therefore
+.It \e(or Ta \(or Ta bitwise or
+.El
+.Pp
+Mathematical:
+.Bl -column "xxcoproductxx" "Rendered" "Description" -offset indent -compact
+.It Em Input Ta Em Rendered Ta Em Description
+.It \e- Ta \- Ta minus (text font)
+.It \e(mi Ta \(mi Ta minus (special font)
+.It + Ta + Ta plus (text font)
+.It \e(pl Ta \(pl Ta plus (special font)
+.It \e(-+ Ta \(-+ Ta minus-plus
+.It \e[t+-] Ta \[t+-] Ta plus-minus (text font)
+.It \e(+- Ta \(+- Ta plus-minus (special font)
+.It \e(pc Ta \(pc Ta center-dot
+.It \e[tmu] Ta \[tmu] Ta multiply (text font)
+.It \e(mu Ta \(mu Ta multiply (special font)
+.It \e(c* Ta \(c* Ta circle-multiply
+.It \e(c+ Ta \(c+ Ta circle-plus
+.It \e[tdi] Ta \[tdi] Ta divide (text font)
+.It \e(di Ta \(di Ta divide (special font)
+.It \e(f/ Ta \(f/ Ta fraction
+.It \e(** Ta \(** Ta asterisk
+.It \e(<= Ta \(<= Ta less-than-equal
+.It \e(>= Ta \(>= Ta greater-than-equal
+.It \e(<< Ta \(<< Ta much less
+.It \e(>> Ta \(>> Ta much greater
+.It \e(eq Ta \(eq Ta equal
+.It \e(!= Ta \(!= Ta not equal
+.It \e(== Ta \(== Ta equivalent
+.It \e(ne Ta \(ne Ta not equivalent
+.It \e(ap Ta \(ap Ta tilde operator
+.It \e(|= Ta \(|= Ta asymptotically equal
+.It \e(=\(ti Ta \(=~ Ta approximately equal
+.It \e(\(ti\(ti Ta \(~~ Ta almost equal
+.It \e(\(ti= Ta \(~= Ta almost equal
+.It \e(pt Ta \(pt Ta proportionate
+.It \e(es Ta \(es Ta empty set
+.It \e(mo Ta \(mo Ta element
+.It \e(nm Ta \(nm Ta not element
+.It \e(sb Ta \(sb Ta proper subset
+.It \e(nb Ta \(nb Ta not subset
+.It \e(sp Ta \(sp Ta proper superset
+.It \e(nc Ta \(nc Ta not superset
+.It \e(ib Ta \(ib Ta reflexive subset
+.It \e(ip Ta \(ip Ta reflexive superset
+.It \e(ca Ta \(ca Ta intersection
+.It \e(cu Ta \(cu Ta union
+.It \e(/_ Ta \(/_ Ta angle
+.It \e(pp Ta \(pp Ta perpendicular
+.It \e(is Ta \(is Ta integral
+.It \e[integral] Ta \[integral] Ta integral
+.It \e[sum] Ta \[sum] Ta summation
+.It \e[product] Ta \[product] Ta product
+.It \e[coproduct] Ta \[coproduct] Ta coproduct
+.It \e(gr Ta \(gr Ta gradient
+.It \e(sr Ta \(sr Ta square root
+.It \e[sqrt] Ta \[sqrt] Ta square root
+.It \e(lc Ta \(lc Ta left-ceiling
+.It \e(rc Ta \(rc Ta right-ceiling
+.It \e(lf Ta \(lf Ta left-floor
+.It \e(rf Ta \(rf Ta right-floor
+.It \e(if Ta \(if Ta infinity
+.It \e(Ah Ta \(Ah Ta aleph
+.It \e(Im Ta \(Im Ta imaginary
+.It \e(Re Ta \(Re Ta real
+.It \e(wp Ta \(wp Ta Weierstrass p
+.It \e(pd Ta \(pd Ta partial differential
+.It \e(-h Ta \(-h Ta Planck constant over 2\(*p
+.It \e[hbar] Ta \[hbar] Ta Planck constant over 2\(*p
+.It \e(12 Ta \(12 Ta one-half
+.It \e(14 Ta \(14 Ta one-fourth
+.It \e(34 Ta \(34 Ta three-fourths
+.It \e(18 Ta \(18 Ta one-eighth
+.It \e(38 Ta \(38 Ta three-eighths
+.It \e(58 Ta \(58 Ta five-eighths
+.It \e(78 Ta \(78 Ta seven-eighths
+.It \e(S1 Ta \(S1 Ta superscript 1
+.It \e(S2 Ta \(S2 Ta superscript 2
+.It \e(S3 Ta \(S3 Ta superscript 3
+.El
+.Pp
+Ligatures:
+.Bl -column "Input" "Rendered" "Description" -offset indent -compact
+.It Em Input Ta Em Rendered Ta Em Description
+.It \e(ff Ta \(ff Ta ff ligature
+.It \e(fi Ta \(fi Ta fi ligature
+.It \e(fl Ta \(fl Ta fl ligature
+.It \e(Fi Ta \(Fi Ta ffi ligature
+.It \e(Fl Ta \(Fl Ta ffl ligature
+.It \e(AE Ta \(AE Ta AE
+.It \e(ae Ta \(ae Ta ae
+.It \e(OE Ta \(OE Ta OE
+.It \e(oe Ta \(oe Ta oe
+.It \e(ss Ta \(ss Ta German eszett
+.It \e(IJ Ta \(IJ Ta IJ ligature
+.It \e(ij Ta \(ij Ta ij ligature
+.El
+.Pp
+Accents:
+.Bl -column "Input" "Rendered" "Description" -offset indent -compact
+.It Em Input Ta Em Rendered Ta Em Description
+.It \e(a" Ta \(a" Ta Hungarian umlaut
+.It \e(a- Ta \(a- Ta macron
+.It \e(a. Ta \(a. Ta dotted
+.It \e(a^ Ta \(a^ Ta circumflex
+.It \e(aa Ta \(aa Ta acute
+.It \e\(aq Ta \' Ta acute
+.It \e(ga Ta \(ga Ta grave
+.It \e\(ga Ta \` Ta grave
+.It \e(ab Ta \(ab Ta breve
+.It \e(ac Ta \(ac Ta cedilla
+.It \e(ad Ta \(ad Ta dieresis
+.It \e(ah Ta \(ah Ta caron
+.It \e(ao Ta \(ao Ta ring
+.It \e(a\(ti Ta \(a~ Ta tilde
+.It \e(ho Ta \(ho Ta ogonek
+.It \e(ha Ta \(ha Ta hat (ASCII character)
+.It \e(ti Ta \(ti Ta tilde (ASCII character)
+.El
+.Pp
+Accented letters:
+.Bl -column "Input" "Rendered" "Description" -offset indent -compact
+.It Em Input Ta Em Rendered Ta Em Description
+.It \e(\(aqA Ta \('A Ta acute A
+.It \e(\(aqE Ta \('E Ta acute E
+.It \e(\(aqI Ta \('I Ta acute I
+.It \e(\(aqO Ta \('O Ta acute O
+.It \e(\(aqU Ta \('U Ta acute U
+.It \e(\(aqY Ta \('Y Ta acute Y
+.It \e(\(aqa Ta \('a Ta acute a
+.It \e(\(aqe Ta \('e Ta acute e
+.It \e(\(aqi Ta \('i Ta acute i
+.It \e(\(aqo Ta \('o Ta acute o
+.It \e(\(aqu Ta \('u Ta acute u
+.It \e(\(aqy Ta \('y Ta acute y
+.It \e(\(gaA Ta \(`A Ta grave A
+.It \e(\(gaE Ta \(`E Ta grave E
+.It \e(\(gaI Ta \(`I Ta grave I
+.It \e(\(gaO Ta \(`O Ta grave O
+.It \e(\(gaU Ta \(`U Ta grave U
+.It \e(\(gaa Ta \(`a Ta grave a
+.It \e(\(gae Ta \(`e Ta grave e
+.It \e(\(gai Ta \(`i Ta grave i
+.It \e(\(gao Ta \(`i Ta grave o
+.It \e(\(gau Ta \(`u Ta grave u
+.It \e(\(tiA Ta \(~A Ta tilde A
+.It \e(\(tiN Ta \(~N Ta tilde N
+.It \e(\(tiO Ta \(~O Ta tilde O
+.It \e(\(tia Ta \(~a Ta tilde a
+.It \e(\(tin Ta \(~n Ta tilde n
+.It \e(\(tio Ta \(~o Ta tilde o
+.It \e(:A Ta \(:A Ta dieresis A
+.It \e(:E Ta \(:E Ta dieresis E
+.It \e(:I Ta \(:I Ta dieresis I
+.It \e(:O Ta \(:O Ta dieresis O
+.It \e(:U Ta \(:U Ta dieresis U
+.It \e(:a Ta \(:a Ta dieresis a
+.It \e(:e Ta \(:e Ta dieresis e
+.It \e(:i Ta \(:i Ta dieresis i
+.It \e(:o Ta \(:o Ta dieresis o
+.It \e(:u Ta \(:u Ta dieresis u
+.It \e(:y Ta \(:y Ta dieresis y
+.It \e(^A Ta \(^A Ta circumflex A
+.It \e(^E Ta \(^E Ta circumflex E
+.It \e(^I Ta \(^I Ta circumflex I
+.It \e(^O Ta \(^O Ta circumflex O
+.It \e(^U Ta \(^U Ta circumflex U
+.It \e(^a Ta \(^a Ta circumflex a
+.It \e(^e Ta \(^e Ta circumflex e
+.It \e(^i Ta \(^i Ta circumflex i
+.It \e(^o Ta \(^o Ta circumflex o
+.It \e(^u Ta \(^u Ta circumflex u
+.It \e(,C Ta \(,C Ta cedilla C
+.It \e(,c Ta \(,c Ta cedilla c
+.It \e(/L Ta \(/L Ta stroke L
+.It \e(/l Ta \(/l Ta stroke l
+.It \e(/O Ta \(/O Ta stroke O
+.It \e(/o Ta \(/o Ta stroke o
+.It \e(oA Ta \(oA Ta ring A
+.It \e(oa Ta \(oa Ta ring a
+.El
+.Pp
+Special letters:
+.Bl -column "Input" "Rendered" "Description" -offset indent -compact
+.It Em Input Ta Em Rendered Ta Em Description
+.It \e(-D Ta \(-D Ta Eth
+.It \e(Sd Ta \(Sd Ta eth
+.It \e(TP Ta \(TP Ta Thorn
+.It \e(Tp Ta \(Tp Ta thorn
+.It \e(.i Ta \(.i Ta dotless i
+.It \e(.j Ta \(.j Ta dotless j
+.El
+.Pp
+Currency:
+.Bl -column "Input" "Rendered" "Description" -offset indent -compact
+.It Em Input Ta Em Rendered Ta Em Description
+.It \e(Do Ta \(Do Ta dollar
+.It \e(ct Ta \(ct Ta cent
+.It \e(Eu Ta \(Eu Ta Euro symbol
+.It \e(eu Ta \(eu Ta Euro symbol
+.It \e(Ye Ta \(Ye Ta yen
+.It \e(Po Ta \(Po Ta pound
+.It \e(Cs Ta \(Cs Ta Scandinavian
+.It \e(Fn Ta \(Fn Ta florin
+.El
+.Pp
+Units:
+.Bl -column "Input" "Rendered" "Description" -offset indent -compact
+.It Em Input Ta Em Rendered Ta Em Description
+.It \e(de Ta \(de Ta degree
+.It \e(%0 Ta \(%0 Ta per-thousand
+.It \e(fm Ta \(fm Ta minute
+.It \e(sd Ta \(sd Ta second
+.It \e(mc Ta \(mc Ta micro
+.It \e(Of Ta \(Of Ta Spanish female ordinal
+.It \e(Om Ta \(Om Ta Spanish masculine ordinal
+.El
+.Pp
+Greek letters:
+.Bl -column "Input" "Rendered" "Description" -offset indent -compact
+.It Em Input Ta Em Rendered Ta Em Description
+.It \e(*A Ta \(*A Ta Alpha
+.It \e(*B Ta \(*B Ta Beta
+.It \e(*G Ta \(*G Ta Gamma
+.It \e(*D Ta \(*D Ta Delta
+.It \e(*E Ta \(*E Ta Epsilon
+.It \e(*Z Ta \(*Z Ta Zeta
+.It \e(*Y Ta \(*Y Ta Eta
+.It \e(*H Ta \(*H Ta Theta
+.It \e(*I Ta \(*I Ta Iota
+.It \e(*K Ta \(*K Ta Kappa
+.It \e(*L Ta \(*L Ta Lambda
+.It \e(*M Ta \(*M Ta Mu
+.It \e(*N Ta \(*N Ta Nu
+.It \e(*C Ta \(*C Ta Xi
+.It \e(*O Ta \(*O Ta Omicron
+.It \e(*P Ta \(*P Ta Pi
+.It \e(*R Ta \(*R Ta Rho
+.It \e(*S Ta \(*S Ta Sigma
+.It \e(*T Ta \(*T Ta Tau
+.It \e(*U Ta \(*U Ta Upsilon
+.It \e(*F Ta \(*F Ta Phi
+.It \e(*X Ta \(*X Ta Chi
+.It \e(*Q Ta \(*Q Ta Psi
+.It \e(*W Ta \(*W Ta Omega
+.It \e(*a Ta \(*a Ta alpha
+.It \e(*b Ta \(*b Ta beta
+.It \e(*g Ta \(*g Ta gamma
+.It \e(*d Ta \(*d Ta delta
+.It \e(*e Ta \(*e Ta epsilon
+.It \e(*z Ta \(*z Ta zeta
+.It \e(*y Ta \(*y Ta eta
+.It \e(*h Ta \(*h Ta theta
+.It \e(*i Ta \(*i Ta iota
+.It \e(*k Ta \(*k Ta kappa
+.It \e(*l Ta \(*l Ta lambda
+.It \e(*m Ta \(*m Ta mu
+.It \e(*n Ta \(*n Ta nu
+.It \e(*c Ta \(*c Ta xi
+.It \e(*o Ta \(*o Ta omicron
+.It \e(*p Ta \(*p Ta pi
+.It \e(*r Ta \(*r Ta rho
+.It \e(*s Ta \(*s Ta sigma
+.It \e(*t Ta \(*t Ta tau
+.It \e(*u Ta \(*u Ta upsilon
+.It \e(*f Ta \(*f Ta phi
+.It \e(*x Ta \(*x Ta chi
+.It \e(*q Ta \(*q Ta psi
+.It \e(*w Ta \(*w Ta omega
+.It \e(+h Ta \(+h Ta theta variant
+.It \e(+f Ta \(+f Ta phi variant
+.It \e(+p Ta \(+p Ta pi variant
+.It \e(+e Ta \(+e Ta epsilon variant
+.It \e(ts Ta \(ts Ta sigma terminal
+.El
+.Sh PREDEFINED STRINGS
+Predefined strings are inherited from the macro packages of historical
+troff implementations.
+They are
+.Em not recommended
+for use, as they differ across implementations.
+Manuals using these predefined strings are almost certainly not
+portable.
+.Pp
+Their syntax is similar to special characters, using
+.Sq \e*X
+.Pq for a one-character escape ,
+.Sq \e*(XX
+.Pq two-character ,
+and
+.Sq \e*[N]
+.Pq N-character .
+.Bl -column "Input" "Rendered" "Description" -offset indent
+.It Em Input Ta Em Rendered Ta Em Description
+.It \e*(Ba Ta \*(Ba Ta vertical bar
+.It \e*(Ne Ta \*(Ne Ta not equal
+.It \e*(Ge Ta \*(Ge Ta greater-than-equal
+.It \e*(Le Ta \*(Le Ta less-than-equal
+.It \e*(Gt Ta \*(Gt Ta greater-than
+.It \e*(Lt Ta \*(Lt Ta less-than
+.It \e*(Pm Ta \*(Pm Ta plus-minus
+.It \e*(If Ta \*(If Ta infinity
+.It \e*(Pi Ta \*(Pi Ta pi
+.It \e*(Na Ta \*(Na Ta NaN
+.It \e*(Am Ta \*(Am Ta ampersand
+.It \e*R Ta \*R Ta restricted mark
+.It \e*(Tm Ta \*(Tm Ta trade mark
+.It \e*q Ta \*q Ta double-quote
+.It \e*(Rq Ta \*(Rq Ta right-double-quote
+.It \e*(Lq Ta \*(Lq Ta left-double-quote
+.It \e*(lp Ta \*(lp Ta right-parenthesis
+.It \e*(rp Ta \*(rp Ta left-parenthesis
+.It \e*(lq Ta \*(lq Ta left double-quote
+.It \e*(rq Ta \*(rq Ta right double-quote
+.It \e*(ua Ta \*(ua Ta up arrow
+.It \e*(va Ta \*(va Ta up-down arrow
+.It \e*(<= Ta \*(<= Ta less-than-equal
+.It \e*(>= Ta \*(>= Ta greater-than-equal
+.It \e*(aa Ta \*(aa Ta acute
+.It \e*(ga Ta \*(ga Ta grave
+.It \e*(Px Ta \*(Px Ta POSIX standard name
+.It \e*(Ai Ta \*(Ai Ta ANSI standard name
+.El
+.Sh UNICODE CHARACTERS
+The escape sequences
+.Pp
+.Dl \e[uXXXX] and \eC\(aquXXXX\(aq
+.Pp
+are interpreted as Unicode codepoints.
+The codepoint must be in the range above U+0080 and less than U+10FFFF.
+For compatibility, the hexadecimal digits
+.Sq A
+to
+.Sq F
+must be given as uppercase characters,
+and points must be zero-padded to four characters; if
+greater than four characters, no zero padding is allowed.
+Unicode surrogates are not allowed.
+.Sh NUMBERED CHARACTERS
+For backward compatibility with existing manuals,
+.Xr mandoc 1
+also supports the
+.Pp
+.Dl \eN\(aq Ns Ar number Ns \(aq and \e[ Ns Cm char Ns Ar number ]
+.Pp
+escape sequences, inserting the character
+.Ar number
+from the current character set into the output.
+Of course, this is inherently non-portable and is already marked
+as deprecated in the Heirloom roff manual;
+on top of that, the second form is a GNU extension.
+For example, do not use \eN\(aq34\(aq or \e[char34], use \e(dq,
+or even the plain
+.Sq \(dq
+character where possible.
+.Sh COMPATIBILITY
+This section documents compatibility between mandoc and other
+troff implementations, at this time limited to GNU troff
+.Pq Qq groff .
+.Pp
+.Bl -dash -compact
+.It
+The \eN\(aq\(aq escape sequence is limited to printable characters; in
+groff, it accepts arbitrary character numbers.
+.It
+In
+.Fl T Ns Cm ascii ,
+the
+\e(ss, \e(nm, \e(nb, \e(nc, \e(ib, \e(ip, \e(pp, \e[sum], \e[product],
+\e[coproduct], \e(gr, \e(-h, and \e(a. special characters render
+differently between mandoc and groff.
+.It
+In
+.Fl T Ns Cm html ,
+the \e(\(ti=, \e(nb, and \e(nc special characters render differently
+between mandoc and groff.
+.It
+The
+.Fl T Ns Cm ps
+and
+.Fl T Ns Cm pdf
+modes format like
+.Fl T Ns Cm ascii
+instead of rendering glyphs as in groff.
+.It
+The \e[radicalex], \e[sqrtex], and \e(ru special characters have been omitted
+from mandoc either because they are poorly documented or they have no
+known representation.
+.El
+.Sh SEE ALSO
+.Xr mandoc 1 ,
+.Xr man 7 ,
+.Xr mandoc_roff 7 ,
+.Xr mdoc 7
+.Sh AUTHORS
+The
+.Nm
+manual page was written by
+.An Kristaps Dzonsons Aq Mt kristaps@bsd.lv .
+.Sh CAVEATS
+The predefined string
+.Sq \e*(Ba
+mimics the behaviour of the
+.Sq \&|
+character in
+.Xr mdoc 7 ;
+thus, if you wish to render a vertical bar with no side effects, use
+the
+.Sq \e(ba
+escape.
diff --git a/usr/src/man/man7/mandoc_roff.7 b/usr/src/man/man7/mandoc_roff.7
new file mode 100644
index 0000000000..6c2e3583f6
--- /dev/null
+++ b/usr/src/man/man7/mandoc_roff.7
@@ -0,0 +1,2342 @@
+.\" $Id: roff.7,v 1.116 2021/09/18 12:23:06 schwarze Exp $
+.\"
+.\" Copyright (c) 2010, 2011, 2012 Kristaps Dzonsons <kristaps@bsd.lv>
+.\" Copyright (c) 2010-2019 Ingo Schwarze <schwarze@openbsd.org>
+.\"
+.\" Permission to use, copy, modify, and distribute this software for any
+.\" purpose with or without fee is hereby granted, provided that the above
+.\" copyright notice and this permission notice appear in all copies.
+.\"
+.\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+.\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+.\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+.\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+.\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+.\"
+.Dd $Mdocdate: September 18 2021 $
+.Dt ROFF 7
+.Os
+.Sh NAME
+.Nm roff
+.Nd roff language reference for mandoc
+.Sh DESCRIPTION
+The
+.Nm roff
+language is a general purpose text formatting language.
+Since traditional implementations of the
+.Xr mdoc 7
+and
+.Xr man 7
+manual formatting languages are based on it,
+many real-world manuals use small numbers of
+.Nm
+requests and escape sequences intermixed with their
+.Xr mdoc 7
+or
+.Xr man 7
+code.
+To properly format such manuals, the
+.Xr mandoc 1
+utility supports a subset of
+.Nm
+requests and escapes.
+Even though this manual page lists all
+.Nm
+requests and escape sequences, it only contains partial information
+about requests not supported by
+.Xr mandoc 1
+and about language features that do not matter for manual pages.
+For complete
+.Nm
+manuals, consult the
+.Sx SEE ALSO
+section.
+.Pp
+Input lines beginning with the control character
+.Sq \&.
+are parsed for requests and macros.
+Such lines are called
+.Dq request lines
+or
+.Dq macro lines ,
+respectively.
+Requests change the processing state and manipulate the formatting;
+some macros also define the document structure and produce formatted
+output.
+The single quote
+.Pq Qq \(aq
+is accepted as an alternative control character,
+treated by
+.Xr mandoc 1
+just like
+.Ql \&.
+.Pp
+Lines not beginning with control characters are called
+.Dq text lines .
+They provide free-form text to be printed; the formatting of the text
+depends on the respective processing context.
+.Sh LANGUAGE SYNTAX
+.Nm
+documents may contain only graphable 7-bit ASCII characters, the space
+character, and, in certain circumstances, the tab character.
+The backslash character
+.Sq \e
+indicates the start of an escape sequence, used for example for
+.Sx Comments
+and
+.Sx Special Characters .
+For a complete listing of escape sequences, consult the
+.Sx ESCAPE SEQUENCE REFERENCE
+below.
+.Ss Comments
+Text following an escaped double-quote
+.Sq \e\(dq ,
+whether in a request, macro, or text line, is ignored to the end of the line.
+A request line beginning with a control character and comment escape
+.Sq \&.\e\(dq
+is also ignored.
+Furthermore, request lines with only a control character and optional
+trailing whitespace are stripped from input.
+.Pp
+Examples:
+.Bd -literal -offset indent -compact
+\&.\e\(dq This is a comment line.
+\&.\e\(dq The next line is ignored:
+\&.
+\&.Sh EXAMPLES \e\(dq This is a comment, too.
+\&example text \e\(dq And so is this.
+.Ed
+.Ss Special Characters
+Special characters are used to encode special glyphs and are rendered
+differently across output media.
+They may occur in request, macro, and text lines.
+Sequences begin with the escape character
+.Sq \e
+followed by either an open-parenthesis
+.Sq \&(
+for two-character sequences; an open-bracket
+.Sq \&[
+for n-character sequences (terminated at a close-bracket
+.Sq \&] ) ;
+or a single one character sequence.
+.Pp
+Examples:
+.Bl -tag -width Ds -offset indent -compact
+.It Li \e(em
+Two-letter em dash escape.
+.It Li \ee
+One-letter backslash escape.
+.El
+.Pp
+See
+.Xr mandoc_char 7
+for a complete list.
+.Ss Font Selection
+In
+.Xr mdoc 7
+and
+.Xr man 7
+documents, fonts are usually selected with macros.
+The
+.Ic \ef
+escape sequence and the
+.Ic \&ft
+request can be used to manually change the font,
+but this is not recommended in
+.Xr mdoc 7
+documents.
+Such manual font changes are overridden by many subsequent macros.
+.Pp
+The following fonts are supported:
+.Pp
+.Bl -tag -width CW -offset indent -compact
+.It Cm B
+Bold font.
+.It Cm BI
+A font that is both bold and italic.
+.It Cm CB
+Bold constant width font.
+Same as
+.Cm B
+in terminal output.
+.It Cm CI
+Italic constant width font.
+Same as
+.Cm I
+in terminal output.
+.It Cm CR
+Regular constant width font.
+Same as
+.Cm R
+in terminal output.
+.It Cm CW
+An alias for
+.Cm CR .
+.It Cm I
+Italic font.
+.It Cm P
+Return to the previous font.
+If a macro caused a font change since the last
+.Ic \ef
+eascape sequence or
+.Ic \&ft
+request, this returns to the font before the last font change in
+the macro rather than to the font before the last manual font change.
+.It Cm R
+Roman font.
+This is the default font.
+.It Cm 1
+An alias for
+.Cm R .
+.It Cm 2
+An alias for
+.Cm I .
+.It Cm 3
+An alias for
+.Cm B .
+.It Cm 4
+An alias for
+.Cm BI .
+.El
+.Pp
+Examples:
+.Bl -tag -width Ds -offset indent -compact
+.It Li \efBbold\efR
+Write in \fBbold\fP, then switch to regular font mode.
+.It Li \efIitalic\efP
+Write in \fIitalic\fP, then return to previous font mode.
+.It Li \ef(BIbold italic\efP
+Write in \f(BIbold italic\fP, then return to previous font mode.
+.El
+.Ss Whitespace
+Whitespace consists of the space character.
+In text lines, whitespace is preserved within a line.
+In request and macro lines, whitespace delimits arguments and is discarded.
+.Pp
+Unescaped trailing spaces are stripped from text line input unless in a
+literal context.
+In general, trailing whitespace on any input line is discouraged for
+reasons of portability.
+In the rare case that a space character is needed at the end of an
+input line, it may be forced by
+.Sq \e\ \e& .
+.Pp
+Literal space characters can be produced in the output
+using escape sequences.
+In macro lines, they can also be included in arguments using quotation; see
+.Sx MACRO SYNTAX
+for details.
+.Pp
+Blank text lines, which may include whitespace, are only permitted
+within literal contexts.
+If the first character of a text line is a space, that line is printed
+with a leading newline.
+.Ss Scaling Widths
+Many requests and macros support scaled widths for their arguments.
+The syntax for a scaled width is
+.Sq Li [+-]?[0-9]*.[0-9]*[:unit:] ,
+where a decimal must be preceded or followed by at least one digit.
+.Pp
+The following scaling units are accepted:
+.Pp
+.Bl -tag -width Ds -offset indent -compact
+.It c
+centimetre
+.It i
+inch
+.It P
+pica (1/6 inch)
+.It p
+point (1/72 inch)
+.It f
+scale
+.Sq u
+by 65536
+.It v
+default vertical span
+.It m
+width of rendered
+.Sq m
+.Pq em
+character
+.It n
+width of rendered
+.Sq n
+.Pq en
+character
+.It u
+default horizontal span for the terminal
+.It M
+mini-em (1/100 em)
+.El
+.Pp
+Using anything other than
+.Sq m ,
+.Sq n ,
+or
+.Sq v
+is necessarily non-portable across output media.
+See
+.Sx COMPATIBILITY .
+.Pp
+If a scaling unit is not provided, the numerical value is interpreted
+under the default rules of
+.Sq v
+for vertical spaces and
+.Sq u
+for horizontal ones.
+.Pp
+Examples:
+.Bl -tag -width ".Bl -tag -width 2i" -offset indent -compact
+.It Li \&.Bl -tag -width 2i
+two-inch tagged list indentation in
+.Xr mdoc 7
+.It Li \&.HP 2i
+two-inch tagged list indentation in
+.Xr man 7
+.It Li \&.sp 2v
+two vertical spaces
+.El
+.Ss Sentence Spacing
+Each sentence should terminate at the end of an input line.
+By doing this, a formatter will be able to apply the proper amount of
+spacing after the end of sentence (unescaped) period, exclamation mark,
+or question mark followed by zero or more non-sentence closing
+delimiters
+.Po
+.Sq \&) ,
+.Sq \&] ,
+.Sq \&' ,
+.Sq \&"
+.Pc .
+.Pp
+The proper spacing is also intelligently preserved if a sentence ends at
+the boundary of a macro line.
+.Pp
+If an input line happens to end with a period, exclamation or question
+mark that isn't the end of a sentence, append a zero-width space
+.Pq Sq \e& .
+.Pp
+Examples:
+.Bd -literal -offset indent -compact
+Do not end sentences mid-line like this. Instead,
+end a sentence like this.
+A macro would end like this:
+\&.Xr mandoc 1 \&.
+An abbreviation at the end of an input line needs escaping, e.g.\e&
+like this.
+.Ed
+.Sh REQUEST SYNTAX
+A request or macro line consists of:
+.Pp
+.Bl -enum -compact
+.It
+the control character
+.Sq \&.
+or
+.Sq \(aq
+at the beginning of the line,
+.It
+optionally an arbitrary amount of whitespace,
+.It
+the name of the request or the macro, which is one word of arbitrary
+length, terminated by whitespace,
+.It
+and zero or more arguments delimited by whitespace.
+.El
+.Pp
+Thus, the following request lines are all equivalent:
+.Bd -literal -offset indent
+\&.ig end
+\&.ig end
+\&. ig end
+.Ed
+.Sh MACRO SYNTAX
+Macros are provided by the
+.Xr mdoc 7
+and
+.Xr man 7
+languages and can be defined by the
+.Ic \&de
+request.
+When called, they follow the same syntax as requests, except that
+macro arguments may optionally be quoted by enclosing them
+in double quote characters
+.Pq Sq \(dq .
+Quoted text, even if it contains whitespace or would cause
+a macro invocation when unquoted, is always considered literal text.
+Inside quoted text, pairs of double quote characters
+.Pq Sq Qq
+resolve to single double quote characters.
+.Pp
+To be recognised as the beginning of a quoted argument, the opening
+quote character must be preceded by a space character.
+A quoted argument extends to the next double quote character that is not
+part of a pair, or to the end of the input line, whichever comes earlier.
+Leaving out the terminating double quote character at the end of the line
+is discouraged.
+For clarity, if more arguments follow on the same input line,
+it is recommended to follow the terminating double quote character
+by a space character; in case the next character after the terminating
+double quote character is anything else, it is regarded as the beginning
+of the next, unquoted argument.
+.Pp
+Both in quoted and unquoted arguments, pairs of backslashes
+.Pq Sq \e\e
+resolve to single backslashes.
+In unquoted arguments, space characters can alternatively be included
+by preceding them with a backslash
+.Pq Sq \e\~ ,
+but quoting is usually better for clarity.
+.Pp
+Examples:
+.Bl -tag -width Ds -offset indent -compact
+.It Li .Fn strlen \(dqconst char *s\(dq
+Group arguments
+.Qq const char *s
+into one function argument.
+If unspecified,
+.Qq const ,
+.Qq char ,
+and
+.Qq *s
+would be considered separate arguments.
+.It Li .Op \(dqFl a\(dq
+Consider
+.Qq \&Fl a
+as literal text instead of a flag macro.
+.El
+.Sh REQUEST REFERENCE
+The
+.Xr mandoc 1
+.Nm
+parser recognises the following requests.
+For requests marked as "ignored" or "unsupported", any arguments are
+ignored, and the number of arguments is not checked.
+.Bl -tag -width Ds
+.It Ic \&ab Op Ar message
+Abort processing.
+Currently unsupported.
+.It Ic \&ad Op Cm b | c | l | n | r
+Set line adjustment mode for subsequent text.
+Currently ignored.
+.It Ic \&af Ar registername format
+Assign an output format to a number register.
+Currently ignored.
+.It Ic \&aln Ar newname oldname
+Create an alias for a number register.
+Currently unsupported.
+.It Ic \&als Ar newname oldname
+Create an alias for a request, string, macro, or diversion.
+.It Ic \&am Ar macroname Op Ar endmacro
+Append to a macro definition.
+The syntax of this request is the same as that of
+.Ic \&de .
+.It Ic \&am1 Ar macroname Op Ar endmacro
+Append to a macro definition, switching roff compatibility mode off
+during macro execution (groff extension).
+The syntax of this request is the same as that of
+.Ic \&de1 .
+Since
+.Xr mandoc 1
+does not implement
+.Nm
+compatibility mode at all, it handles this request as an alias for
+.Ic \&am .
+.It Ic \&ami Ar macrostring Op Ar endstring
+Append to a macro definition, specifying the macro name indirectly
+(groff extension).
+The syntax of this request is the same as that of
+.Ic \&dei .
+.It Ic \&ami1 Ar macrostring Op Ar endstring
+Append to a macro definition, specifying the macro name indirectly
+and switching roff compatibility mode off during macro execution
+(groff extension).
+The syntax of this request is the same as that of
+.Ic \&dei1 .
+Since
+.Xr mandoc 1
+does not implement
+.Nm
+compatibility mode at all, it handles this request as an alias for
+.Ic \&ami .
+.It Ic \&as Ar stringname Op Ar string
+Append to a user-defined string.
+The syntax of this request is the same as that of
+.Ic \&ds .
+If a user-defined string with the specified name does not yet exist,
+it is set to the empty string before appending.
+.It Ic \&as1 Ar stringname Op Ar string
+Append to a user-defined string, switching roff compatibility mode off
+during macro execution (groff extension).
+The syntax of this request is the same as that of
+.Ic \&ds1 .
+Since
+.Xr mandoc 1
+does not implement
+.Nm
+compatibility mode at all, it handles this request as an alias for
+.Ic \&as .
+.It Ic \&asciify Ar divname
+Fully unformat a diversion.
+Currently unsupported.
+.It Ic \&backtrace
+Print a backtrace of the input stack.
+This is a groff extension and currently ignored.
+.It Ic \&bd Ar font Oo Ar curfont Oc Op Ar offset
+Artificially embolden by repeated printing with small shifts.
+Currently ignored.
+.It Ic \&bleedat Ar left top width height
+Set the BleedBox page parameter for PDF generation.
+This is a Heirloom extension and currently ignored.
+.It Ic \&blm Ar macroname
+Set a blank line trap.
+Currently unsupported.
+.It Ic \&box Ar divname
+Begin a diversion without including a partially filled line.
+Currently unsupported.
+.It Ic \&boxa Ar divname
+Add to a diversion without including a partially filled line.
+Currently unsupported.
+.It Ic \&bp Oo Cm + Ns | Ns Cm - Oc Ns Ar pagenumber
+Begin a new page.
+Currently ignored.
+.It Ic \&BP Ar source height width position offset flags label
+Define a frame and place a picture in it.
+This is a Heirloom extension and currently unsupported.
+.It Ic \&br
+Break the output line.
+.It Ic \&break
+Break out of the innermost
+.Ic \&while
+loop.
+.It Ic \&breakchar Ar char ...
+Optional line break characters.
+This is a Heirloom extension and currently ignored.
+.It Ic \&brnl Ar N
+Break output line after the next
+.Ar N
+input lines.
+This is a Heirloom extension and currently ignored.
+.It Ic \&brp
+Break and spread output line.
+Currently, this is implemented as an alias for
+.Ic \&br .
+.It Ic \&brpnl Ar N
+Break and spread output line after the next
+.Ar N
+input lines.
+This is a Heirloom extension and currently ignored.
+.It Ic \&c2 Op Ar char
+Change the no-break control character.
+Currently unsupported.
+.It Ic \&cc Op Ar char
+Change the control character.
+If
+.Ar char
+is not specified, the control character is reset to
+.Sq \&. .
+Trailing characters are ignored.
+.It Ic \&ce Op Ar N
+Center the next
+.Ar N
+input lines without filling.
+.Ar N
+defaults to 1.
+An argument of 0 or less ends centering.
+Currently, high level macros abort centering.
+.It Ic \&cf Ar filename
+Output the contents of a file.
+Ignored because insecure.
+.It Ic \&cflags Ar flags char ...
+Set character flags.
+This is a groff extension and currently ignored.
+.It Ic \&ch Ar macroname Op Ar dist
+Change a trap location.
+Currently ignored.
+.It Ic \&char Ar glyph Op Ar string
+Define or redefine the ASCII character or character escape sequence
+.Ar glyph
+to be rendered as
+.Ar string ,
+which can be empty.
+Only partially supported in
+.Xr mandoc 1 ;
+may interact incorrectly with
+.Ic \&tr .
+.It Ic \&chop Ar stringname
+Remove the last character from a macro, string, or diversion.
+Currently unsupported.
+.It Ic \&class Ar classname char ...
+Define a character class.
+This is a groff extension and currently ignored.
+.It Ic \&close Ar streamname
+Close an open file.
+Ignored because insecure.
+.It Ic \&CL Ar color text
+Print text in color.
+This is a Heirloom extension and currently unsupported.
+.It Ic \&color Op Cm 1 | 0
+Activate or deactivate colors.
+This is a groff extension and currently ignored.
+.It Ic \&composite Ar from to
+Define a name component for composite glyph names.
+This is a groff extension and currently unsupported.
+.It Ic \&continue
+Immediately start the next iteration of a
+.Ic \&while
+loop.
+Currently unsupported.
+.It Ic \&cp Op Cm 1 | 0
+Switch
+.Nm
+compatibility mode on or off.
+Currently ignored.
+.It Ic \&cropat Ar left top width height
+Set the CropBox page parameter for PDF generation.
+This is a Heirloom extension and currently ignored.
+.It Ic \&cs Ar font Op Ar width Op Ar emsize
+Constant character spacing mode.
+Currently ignored.
+.It Ic \&cu Op Ar N
+Underline next
+.Ar N
+input lines including whitespace.
+Currently ignored.
+.It Ic \&da Ar divname
+Append to a diversion.
+Currently unsupported.
+.It Ic \&dch Ar macroname Op Ar dist
+Change a trap location in the current diversion.
+This is a Heirloom extension and currently unsupported.
+.It Ic \&de Ar macroname Op Ar endmacro
+Define a
+.Nm
+macro.
+Its syntax can be either
+.Bd -literal -offset indent
+.Pf . Ic \&de Ar macroname
+.Ar definition
+\&..
+.Ed
+.Pp
+or
+.Bd -literal -offset indent
+.Pf . Ic \&de Ar macroname endmacro
+.Ar definition
+.Pf . Ar endmacro
+.Ed
+.Pp
+Both forms define or redefine the macro
+.Ar macroname
+to represent the
+.Ar definition ,
+which may consist of one or more input lines, including the newline
+characters terminating each line, optionally containing calls to
+.Nm
+requests,
+.Nm
+macros or high-level macros like
+.Xr man 7
+or
+.Xr mdoc 7
+macros, whichever applies to the document in question.
+.Pp
+Specifying a custom
+.Ar endmacro
+works in the same way as for
+.Ic \&ig ;
+namely, the call to
+.Sq Pf . Ar endmacro
+first ends the
+.Ar definition ,
+and after that, it is also evaluated as a
+.Nm
+request or
+.Nm
+macro, but not as a high-level macro.
+.Pp
+The macro can be invoked later using the syntax
+.Pp
+.D1 Pf . Ar macroname Op Ar argument Op Ar argument ...
+.Pp
+Regarding argument parsing, see
+.Sx MACRO SYNTAX
+above.
+.Pp
+The line invoking the macro will be replaced
+in the input stream by the
+.Ar definition ,
+replacing all occurrences of
+.No \e\e$ Ns Ar N ,
+where
+.Ar N
+is a digit, by the
+.Ar N Ns th Ar argument .
+For example,
+.Bd -literal -offset indent
+\&.de ZN
+\efI\e^\e\e$1\e^\efP\e\e$2
+\&..
+\&.ZN XtFree .
+.Ed
+.Pp
+produces
+.Pp
+.D1 \efI\e^XtFree\e^\efP.
+.Pp
+in the input stream, and thus in the output: \fI\^XtFree\^\fP.
+Each occurrence of \e\e$* is replaced with all the arguments,
+joined together with single space characters.
+The variant \e\e$@ is similar, except that each argument is
+individually quoted.
+.Pp
+Since macros and user-defined strings share a common string table,
+defining a macro
+.Ar macroname
+clobbers the user-defined string
+.Ar macroname ,
+and the
+.Ar definition
+can also be printed using the
+.Sq \e*
+string interpolation syntax described below
+.Ic ds ,
+but this is rarely useful because every macro definition contains at least
+one explicit newline character.
+.Pp
+In order to prevent endless recursion, both groff and
+.Xr mandoc 1
+limit the stack depth for expanding macros and strings
+to a large, but finite number, and
+.Xr mandoc 1
+also limits the length of the expanded input line.
+Do not rely on the exact values of these limits.
+.It Ic \&de1 Ar macroname Op Ar endmacro
+Define a
+.Nm
+macro that will be executed with
+.Nm
+compatibility mode switched off during macro execution.
+This is a groff extension.
+Since
+.Xr mandoc 1
+does not implement
+.Nm
+compatibility mode at all, it handles this request as an alias for
+.Ic \&de .
+.It Ic \&defcolor Ar newname scheme component ...
+Define a color name.
+This is a groff extension and currently ignored.
+.It Ic \&dei Ar macrostring Op Ar endstring
+Define a
+.Nm
+macro, specifying the macro name indirectly (groff extension).
+The syntax of this request is the same as that of
+.Ic \&de .
+The effect is the same as:
+.Pp
+.D1 Pf . Cm \&de No \e* Ns Bo Ar macrostring Bc Op \e* Ns Bq Ar endstring
+.It Ic \&dei1 Ar macrostring Op Ar endstring
+Define a
+.Nm
+macro that will be executed with
+.Nm
+compatibility mode switched off during macro execution,
+specifying the macro name indirectly (groff extension).
+Since
+.Xr mandoc 1
+does not implement
+.Nm
+compatibility mode at all, it handles this request as an alias for
+.Ic \&dei .
+.It Ic \&device Ar string ...
+.It Ic \&devicem Ar stringname
+These two requests only make sense with the groff-specific intermediate
+output format and are unsupported.
+.It Ic \&di Ar divname
+Begin a diversion.
+Currently unsupported.
+.It Ic \&do Ar command Op Ar argument ...
+Execute
+.Nm
+request or macro line with compatibility mode disabled.
+Currently unsupported.
+.It Ic \&ds Ar stringname Op Oo \(dq Oc Ns Ar string
+Define a user-defined string.
+The
+.Ar stringname
+and
+.Ar string
+arguments are space-separated.
+If the
+.Ar string
+begins with a double-quote character, that character will not be part
+of the string.
+All remaining characters on the input line form the
+.Ar string ,
+including whitespace and double-quote characters, even trailing ones.
+.Pp
+The
+.Ar string
+can be interpolated into subsequent text by using
+.No \e* Ns Bq Ar stringname
+for a
+.Ar stringname
+of arbitrary length, or \e*(NN or \e*N if the length of
+.Ar stringname
+is two or one characters, respectively.
+Interpolation can be prevented by escaping the leading backslash;
+that is, an asterisk preceded by an even number of backslashes
+does not trigger string interpolation.
+.Pp
+Since user-defined strings and macros share a common string table,
+defining a string
+.Ar stringname
+clobbers the macro
+.Ar stringname ,
+and the
+.Ar stringname
+used for defining a string can also be invoked as a macro,
+in which case the following input line will be appended to the
+.Ar string ,
+forming a new input line passed to the
+.Nm
+parser.
+For example,
+.Bd -literal -offset indent
+\&.ds badidea .S
+\&.badidea
+H SYNOPSIS
+.Ed
+.Pp
+invokes the
+.Ic SH
+macro when used in a
+.Xr man 7
+document.
+Such abuse is of course strongly discouraged.
+.It Ic \&ds1 Ar stringname Op Oo \(dq Oc Ns Ar string
+Define a user-defined string that will be expanded with
+.Nm
+compatibility mode switched off during string expansion.
+This is a groff extension.
+Since
+.Xr mandoc 1
+does not implement
+.Nm
+compatibility mode at all, it handles this request as an alias for
+.Ic \&ds .
+.It Ic \&dwh Ar dist macroname
+Set a location trap in the current diversion.
+This is a Heirloom extension and currently unsupported.
+.It Ic \&dt Op Ar dist macroname
+Set a trap within a diversion.
+Currently unsupported.
+.It Ic \&ec Op Ar char
+Enable the escape mechanism and change the escape character.
+The
+.Ar char
+argument defaults to the backslash
+.Pq Sq \e .
+.It Ic \&ecr
+Restore the escape character.
+Currently unsupported.
+.It Ic \&ecs
+Save the escape character.
+Currently unsupported.
+.It Ic \&el Ar body
+The
+.Dq else
+half of an if/else conditional.
+Pops a result off the stack of conditional evaluations pushed by
+.Ic \&ie
+and uses it as its conditional.
+If no stack entries are present (e.g., due to no prior
+.Ic \&ie
+calls)
+then false is assumed.
+The syntax of this request is similar to
+.Ic \&if
+except that the conditional is missing.
+.It Ic \&em Ar macroname
+Set a trap at the end of input.
+Currently unsupported.
+.It Ic \&EN
+End an equation block.
+See
+.Ic \&EQ .
+.It Ic \&eo
+Disable the escape mechanism completely.
+.It Ic \&EP
+End a picture started by
+.Ic \&BP .
+This is a Heirloom extension and currently unsupported.
+.It Ic \&EQ
+Begin an equation block.
+See
+.Xr eqn 7
+for a description of the equation language.
+.It Ic \&errprint Ar message
+Print a string like an error message.
+This is a Heirloom extension and currently ignored.
+.It Ic \&ev Op Ar envname
+Switch to another environment.
+Currently unsupported.
+.It Ic \&evc Op Ar envname
+Copy an environment into the current environment.
+Currently unsupported.
+.It Ic \&ex
+Abort processing and exit.
+Currently unsupported.
+.It Ic \&fallback Ar curfont font ...
+Select the fallback sequence for a font.
+This is a Heirloom extension and currently ignored.
+.It Ic \&fam Op Ar familyname
+Change the font family.
+This is a groff extension and currently ignored.
+.It Ic \&fc Op Ar delimchar Op Ar padchar
+Define a delimiting and a padding character for fields.
+Currently unsupported.
+.It Ic \&fchar Ar glyphname Op Ar string
+Define a fallback glyph.
+Currently unsupported.
+.It Ic \&fcolor Ar colorname
+Set the fill color for \eD objects.
+This is a groff extension and currently ignored.
+.It Ic \&fdeferlig Ar font string ...
+Defer ligature building.
+This is a Heirloom extension and currently ignored.
+.It Ic \&feature Cm + Ns | Ns Cm - Ns Ar name
+Enable or disable an OpenType feature.
+This is a Heirloom extension and currently ignored.
+.It Ic \&fi
+Break the output line and switch to fill mode,
+which is active by default but can be ended with the
+.Ic \&nf
+request.
+In fill mode, input from subsequent input lines is added to
+the same output line until the next word no longer fits,
+at which point the output line is broken.
+This request is implied by the
+.Xr mdoc 7
+.Ic \&Sh
+macro and by the
+.Xr man 7
+.Ic \&SH ,
+.Ic \&SS ,
+and
+.Ic \&EE
+macros.
+.It Ic \&fkern Ar font minkern
+Control the use of kerning tables for a font.
+This is a Heirloom extension and currently ignored.
+.It Ic \&fl
+Flush output.
+Currently ignored.
+.It Ic \&flig Ar font string char ...
+Define ligatures.
+This is a Heirloom extension and currently ignored.
+.It Ic \&fp Ar position font Op Ar filename
+Assign font position.
+Currently ignored.
+.It Ic \&fps Ar mapname ...
+Mount a font with a special character map.
+This is a Heirloom extension and currently ignored.
+.It Ic \&fschar Ar font glyphname Op Ar string
+Define a font-specific fallback glyph.
+This is a groff extension and currently unsupported.
+.It Ic \&fspacewidth Ar font Op Ar afmunits
+Set a font-specific width for the space character.
+This is a Heirloom extension and currently ignored.
+.It Ic \&fspecial Ar curfont Op Ar font ...
+Conditionally define a special font.
+This is a groff extension and currently ignored.
+.It Ic \&ft Op Ar font
+Change the font; see
+.Sx Font Selection .
+The
+.Ar font
+argument defaults to
+.Cm P .
+.It Ic \&ftr Ar newname Op Ar oldname
+Translate font name.
+This is a groff extension and currently ignored.
+.It Ic \&fzoom Ar font Op Ar permille
+Zoom font size.
+Currently ignored.
+.It Ic \&gcolor Op Ar colorname
+Set glyph color.
+This is a groff extension and currently ignored.
+.It Ic \&hc Op Ar char
+Set the hyphenation character.
+Currently ignored.
+.It Ic \&hcode Ar char code ...
+Set hyphenation codes of characters.
+Currently ignored.
+.It Ic \&hidechar Ar font char ...
+Hide characters in a font.
+This is a Heirloom extension and currently ignored.
+.It Ic \&hla Ar language
+Set hyphenation language.
+This is a groff extension and currently ignored.
+.It Ic \&hlm Op Ar number
+Set maximum number of consecutive hyphenated lines.
+Currently ignored.
+.It Ic \&hpf Ar filename
+Load hyphenation pattern file.
+This is a groff extension and currently ignored.
+.It Ic \&hpfa Ar filename
+Load hyphenation pattern file, appending to the current patterns.
+This is a groff extension and currently ignored.
+.It Ic \&hpfcode Ar code code ...
+Define mapping values for character codes in hyphenation patterns.
+This is a groff extension and currently ignored.
+.It Ic \&hw Ar word ...
+Specify hyphenation points in words.
+Currently ignored.
+.It Ic \&hy Op Ar mode
+Set automatic hyphenation mode.
+Currently ignored.
+.It Ic \&hylang Ar language
+Set hyphenation language.
+This is a Heirloom extension and currently ignored.
+.It Ic \&hylen Ar nchar
+Minimum word length for hyphenation.
+This is a Heirloom extension and currently ignored.
+.It Ic \&hym Op Ar length
+Set hyphenation margin.
+This is a groff extension and currently ignored.
+.It Ic \&hypp Ar penalty ...
+Define hyphenation penalties.
+This is a Heirloom extension and currently ignored.
+.It Ic \&hys Op Ar length
+Set hyphenation space.
+This is a groff extension and currently ignored.
+.It Ic \&ie Ar condition body
+The
+.Dq if
+half of an if/else conditional.
+The result of the conditional is pushed into a stack used by subsequent
+invocations of
+.Ic \&el ,
+which may be separated by any intervening input (or not exist at all).
+Its syntax is equivalent to
+.Ic \&if .
+.It Ic \&if Ar condition body
+Begin a conditional.
+This request can also be written as follows:
+.Bd -unfilled -offset indent
+.Pf . Ic \&if Ar condition No \e{ Ns Ar body
+.Ar body ... Ns \e}
+.Ed
+.Bd -unfilled -offset indent
+.Pf . Ic \&if Ar condition No \e{\e
+.Ar body ...
+.Pf . No \e}
+.Ed
+.Pp
+The
+.Ar condition
+is a boolean expression.
+Currently,
+.Xr mandoc 1
+supports the following subset of roff conditionals:
+.Bl -bullet
+.It
+If
+.Sq \&!
+is prefixed to
+.Ar condition ,
+it is logically inverted.
+.It
+If the first character of
+.Ar condition
+is
+.Sq n
+.Pq nroff mode
+or
+.Sq o
+.Pq odd page ,
+it evaluates to true, and the
+.Ar body
+starts with the next character.
+.It
+If the first character of
+.Ar condition
+is
+.Sq e
+.Pq even page ,
+.Sq t
+.Pq troff mode ,
+or
+.Sq v
+.Pq vroff mode ,
+it evaluates to false, and the
+.Ar body
+starts with the next character.
+.It
+If the first character of
+.Ar condition
+is
+.Sq c
+.Pq character available ,
+it evaluates to true if the following character is an ASCII character
+or a valid character escape sequence, or to false otherwise.
+The
+.Ar body
+starts with the character following that next character.
+.It
+If the first character of
+.Ar condition
+is
+.Sq d ,
+it evaluates to true if the rest of
+.Ar condition
+is the name of an existing user defined macro or string;
+otherwise, it evaluates to false.
+.It
+If the first character of
+.Ar condition
+is
+.Sq r ,
+it evaluates to true if the rest of
+.Ar condition
+is the name of an existing number register;
+otherwise, it evaluates to false.
+.It
+If the
+.Ar condition
+starts with a parenthesis or with an optionally signed
+integer number, it is evaluated according to the rules of
+.Sx Numerical expressions
+explained below.
+It evaluates to true if the result is positive,
+or to false if the result is zero or negative.
+.It
+Otherwise, the first character of
+.Ar condition
+is regarded as a delimiter and it evaluates to true if the string
+extending from its first to its second occurrence is equal to the
+string extending from its second to its third occurrence.
+.It
+If
+.Ar condition
+cannot be parsed, it evaluates to false.
+.El
+.Pp
+If a conditional is false, its children are not processed, but are
+syntactically interpreted to preserve the integrity of the input
+document.
+Thus,
+.Pp
+.D1 \&.if t .ig
+.Pp
+will discard the
+.Sq \&.ig ,
+which may lead to interesting results, but
+.Pp
+.D1 \&.if t .if t \e{\e
+.Pp
+will continue to syntactically interpret to the block close of the final
+conditional.
+Sub-conditionals, in this case, obviously inherit the truth value of
+the parent.
+.Pp
+If the
+.Ar body
+section is begun by an escaped brace
+.Sq \e{ ,
+scope continues until the end of the input line containing the
+matching closing-brace escape sequence
+.Sq \e} .
+If the
+.Ar body
+is not enclosed in braces, scope continues until the end of the line.
+If the
+.Ar condition
+is followed by a
+.Ar body
+on the same line, whether after a brace or not, then requests and macros
+.Em must
+begin with a control character.
+It is generally more intuitive, in this case, to write
+.Bd -unfilled -offset indent
+.Pf . Ic \&if Ar condition No \e{\e
+.Pf . Ar request
+.Pf . No \e}
+.Ed
+.Pp
+than having the request or macro follow as
+.Pp
+.D1 Pf . Ic \&if Ar condition Pf \e{. Ar request
+.Pp
+The scope of a conditional is always parsed, but only executed if the
+conditional evaluates to true.
+.Pp
+Note that the
+.Sq \e}
+is converted into a zero-width escape sequence if not passed as a
+standalone macro
+.Sq \&.\e} .
+For example,
+.Pp
+.D1 \&.Fl a \e} b
+.Pp
+will result in
+.Sq \e}
+being considered an argument of the
+.Sq \&Fl
+macro.
+.It Ic \&ig Op Ar endmacro
+Ignore input.
+Its syntax can be either
+.Bd -literal -offset indent
+.Pf . Cm \&ig
+.Ar ignored text
+\&..
+.Ed
+.Pp
+or
+.Bd -literal -offset indent
+.Pf . Cm \&ig Ar endmacro
+.Ar ignored text
+.Pf . Ar endmacro
+.Ed
+.Pp
+In the first case, input is ignored until a
+.Sq \&..
+request is encountered on its own line.
+In the second case, input is ignored until the specified
+.Sq Pf . Ar endmacro
+is encountered.
+Do not use the escape character
+.Sq \e
+anywhere in the definition of
+.Ar endmacro ;
+it would cause very strange behaviour.
+.Pp
+When the
+.Ar endmacro
+is a roff request or a roff macro, like in
+.Pp
+.D1 \&.ig if
+.Pp
+the subsequent invocation of
+.Ic \&if
+will first terminate the
+.Ar ignored text ,
+then be invoked as usual.
+Otherwise, it only terminates the
+.Ar ignored text ,
+and arguments following it or the
+.Sq \&..
+request are discarded.
+.It Ic \&in Op Oo Cm + Ns | Ns Cm - Oc Ns Ar width
+Change indentation.
+See
+.Xr man 7 .
+Ignored in
+.Xr mdoc 7 .
+.It Ic \&index Ar register stringname substring
+Find a substring in a string.
+This is a Heirloom extension and currently unsupported.
+.It Ic \&it Ar expression macro
+Set an input line trap.
+The named
+.Ar macro
+will be invoked after processing the number of input text lines
+specified by the numerical
+.Ar expression .
+While evaluating the
+.Ar expression ,
+the unit suffixes described below
+.Sx Scaling Widths
+are ignored.
+.It Ic \&itc Ar expression macro
+Set an input line trap, not counting lines ending with \ec.
+Currently unsupported.
+.It Ic \&IX Ar class keystring
+To support the generation of a table of contents,
+.Xr pod2man 1
+emits this user-defined macro, usually without defining it.
+To avoid reporting large numbers of spurious errors,
+.Xr mandoc 1
+ignores it.
+.It Ic \&kern Op Cm 1 | 0
+Switch kerning on or off.
+Currently ignored.
+.It Ic \&kernafter Ar font char ... afmunits ...
+Increase kerning after some characters.
+This is a Heirloom extension and currently ignored.
+.It Ic \&kernbefore Ar font char ... afmunits ...
+Increase kerning before some characters.
+This is a Heirloom extension and currently ignored.
+.It Ic \&kernpair Ar font char ... font char ... afmunits
+Add a kerning pair to the kerning table.
+This is a Heirloom extension and currently ignored.
+.It Ic \&lc Op Ar glyph
+Define a leader repetition character.
+Currently unsupported.
+.It Ic \&lc_ctype Ar localename
+Set the
+.Dv LC_CTYPE
+locale.
+This is a Heirloom extension and currently unsupported.
+.It Ic \&lds Ar macroname string
+Define a local string.
+This is a Heirloom extension and currently unsupported.
+.It Ic \&length Ar register string
+Count the number of input characters in a string.
+Currently unsupported.
+.It Ic \&letadj Ar lspmin lshmin letss lspmax lshmax
+Dynamic letter spacing and reshaping.
+This is a Heirloom extension and currently ignored.
+.It Ic \&lf Ar lineno Op Ar filename
+Change the line number for error messages.
+Ignored because insecure.
+.It Ic \&lg Op Cm 1 | 0
+Switch the ligature mechanism on or off.
+Currently ignored.
+.It Ic \&lhang Ar font char ... afmunits
+Hang characters at left margin.
+This is a Heirloom extension and currently ignored.
+.It Ic \&linetabs Op Cm 1 | 0
+Enable or disable line-tabs mode.
+This is a groff extension and currently unsupported.
+.It Ic \&ll Op Oo Cm + Ns | Ns Cm - Oc Ns Ar width
+Change the output line length.
+If the
+.Ar width
+argument is omitted, the line length is reset to its previous value.
+The default setting for terminal output is 78n.
+If a sign is given, the line length is added to or subtracted from;
+otherwise, it is set to the provided value.
+Using this request in new manuals is discouraged for several reasons,
+among others because it overrides the
+.Xr mandoc 1
+.Fl O Cm width
+command line option.
+.It Ic \&lnr Ar register Oo Cm + Ns | Ns Cm - Oc Ns Ar value Op Ar increment
+Set local number register.
+This is a Heirloom extension and currently unsupported.
+.It Ic \&lnrf Ar register Oo Cm + Ns | Ns Cm - Oc Ns Ar value Op Ar increment
+Set local floating-point register.
+This is a Heirloom extension and currently unsupported.
+.It Ic \&lpfx Ar string
+Set a line prefix.
+This is a Heirloom extension and currently unsupported.
+.It Ic \&ls Op Ar factor
+Set line spacing.
+It takes one integer argument specifying the vertical distance of
+subsequent output text lines measured in v units.
+Currently ignored.
+.It Ic \&lsm Ar macroname
+Set a leading spaces trap.
+This is a groff extension and currently unsupported.
+.It Ic \&lt Op Oo Cm + Ns | Ns Cm - Oc Ns Ar width
+Set title line length.
+Currently ignored.
+.It Ic \&mc Ar glyph Op Ar dist
+Print margin character in the right margin.
+The
+.Ar dist
+is currently ignored; instead, 1n is used.
+.It Ic \&mediasize Ar media
+Set the device media size.
+This is a Heirloom extension and currently ignored.
+.It Ic \&minss Ar width
+Set minimum word space.
+This is a Heirloom extension and currently ignored.
+.It Ic \&mk Op Ar register
+Mark vertical position.
+Currently ignored.
+.It Ic \&mso Ar filename
+Load a macro file using the search path.
+Ignored because insecure.
+.It Ic \&na
+Disable adjusting without changing the adjustment mode.
+Currently ignored.
+.It Ic \&ne Op Ar height
+Declare the need for the specified minimum vertical space
+before the next trap or the bottom of the page.
+Currently ignored.
+.It Ic \&nf
+Break the output line and switch to no-fill mode.
+Subsequent input lines are kept together on the same output line
+even when exceeding the right margin,
+and line breaks in subsequent input cause output line breaks.
+This request is implied by the
+.Xr mdoc 7
+.Ic \&Bd Fl unfilled
+and
+.Ic \&Bd Fl literal
+macros and by the
+.Xr man 7
+.Ic \&EX
+macro.
+The
+.Ic \&fi
+request switches back to the default fill mode.
+.It Ic \&nh
+Turn off automatic hyphenation mode.
+Currently ignored.
+.It Ic \&nhychar Ar char ...
+Define hyphenation-inhibiting characters.
+This is a Heirloom extension and currently ignored.
+.It Ic \&nm Op Ar start Op Ar inc Op Ar space Op Ar indent
+Print line numbers.
+Currently unsupported.
+.It Ic \&nn Op Ar number
+Temporarily turn off line numbering.
+Currently unsupported.
+.It Ic \&nop Ar body
+Execute the rest of the input line as a request, macro, or text line,
+skipping the
+.Ic \&nop
+request and any space characters immediately following it.
+This is mostly used to indent text lines inside macro definitions.
+.It Ic \&nr Ar register Oo Cm + Ns | Ns Cm - Oc Ns Ar expression Op Ar stepsize
+Define or change a register.
+A register is an arbitrary string value that defines some sort of state,
+which influences parsing and/or formatting.
+For the syntax of
+.Ar expression ,
+see
+.Sx Numerical expressions
+below.
+If it is prefixed by a sign, the register will be
+incremented or decremented instead of assigned to.
+.Pp
+The
+.Ar stepsize
+is used by the
+.Ic \en+
+auto-increment feature.
+It remains unchanged when omitted while changing an existing register,
+and it defaults to 0 when defining a new register.
+.Pp
+The following
+.Ar register
+is handled specially:
+.Bl -tag -width Ds
+.It Cm nS
+If set to a positive integer value, certain
+.Xr mdoc 7
+macros will behave in the same way as in the
+.Em SYNOPSIS
+section.
+If set to 0, these macros will behave in the same way as outside the
+.Em SYNOPSIS
+section, even when called within the
+.Em SYNOPSIS
+section itself.
+Note that starting a new
+.Xr mdoc 7
+section with the
+.Ic \&Sh
+macro will reset this register.
+.El
+.It Xo
+.Ic \&nrf Ar register Oo Cm + Ns | Ns Cm - Oc Ns Ar expression
+.Op Ar increment
+.Xc
+Define or change a floating-point register.
+This is a Heirloom extension and currently unsupported.
+.It Ic \&nroff
+Force nroff mode.
+This is a groff extension and currently ignored.
+.It Ic \&ns
+Turn on no-space mode.
+Currently ignored.
+.It Ic \&nx Op Ar filename
+Abort processing of the current input file and process another one.
+Ignored because insecure.
+.It Ic \&open Ar stream file
+Open a file for writing.
+Ignored because insecure.
+.It Ic \&opena Ar stream file
+Open a file for appending.
+Ignored because insecure.
+.It Ic \&os
+Output saved vertical space.
+Currently ignored.
+.It Ic \&output Ar string
+Output directly to intermediate output.
+Not supported.
+.It Ic \&padj Op Cm 1 | 0
+Globally control paragraph-at-once adjustment.
+This is a Heirloom extension and currently ignored.
+.It Ic \&papersize Ar media
+Set the paper size.
+This is a Heirloom extension and currently ignored.
+.It Ic \&pc Op Ar char
+Change the page number character.
+Currently ignored.
+.It Ic \&pev
+Print environments.
+This is a groff extension and currently ignored.
+.It Ic \&pi Ar command
+Pipe output to a shell command.
+Ignored because insecure.
+.It Ic \&PI
+Low-level request used by
+.Ic \&BP .
+This is a Heirloom extension and currently unsupported.
+.It Ic \&pl Op Oo Cm + Ns | Ns Cm - Oc Ns Ar height
+Change page length.
+Currently ignored.
+.It Ic \&pm
+Print names and sizes of macros, strings, and diversions
+to standard error output.
+Currently ignored.
+.It Ic \&pn Oo Cm + Ns | Ns Cm - Oc Ns Ar number
+Change the page number of the next page.
+Currently ignored.
+.It Ic \&pnr
+Print all number registers on standard error output.
+Currently ignored.
+.It Ic \&po Op Oo Cm + Ns | Ns Cm - Oc Ns Ar offset
+Set a horizontal page offset.
+If no argument is specified, the page offset is reverted to its
+previous value.
+If a sign is specified, the new page offset is calculated relative
+to the current one; otherwise, it is absolute.
+The argument follows the syntax of
+.Sx Scaling Widths
+and the default scaling unit is
+.Cm m .
+.It Ic \&ps Op Oo Cm + Ns | Ns Cm - Oc Ns size
+Change point size.
+Currently ignored.
+.It Ic \&psbb Ar filename
+Retrieve the bounding box of a PostScript file.
+Currently unsupported.
+.It Ic \&pshape Ar indent length ...
+Set a special shape for the current paragraph.
+This is a Heirloom extension and currently unsupported.
+.It Ic \&pso Ar command
+Include output of a shell command.
+Ignored because insecure.
+.It Ic \&ptr
+Print the names and positions of all traps on standard error output.
+This is a groff extension and currently ignored.
+.It Ic \&pvs Op Oo Cm + Ns | Ns Cm - Oc Ns Ar height
+Change post-vertical spacing.
+This is a groff extension and currently ignored.
+.It Ic \&rchar Ar glyph ...
+Remove glyph definitions.
+Currently unsupported.
+.It Ic \&rd Op Ar prompt Op Ar argument ...
+Read from standard input.
+Currently ignored.
+.It Ic \&recursionlimit Ar maxrec maxtail
+Set the maximum stack depth for recursive macros.
+This is a Heirloom extension and currently ignored.
+.It Ic \&return Op Ar twice
+Exit the presently executed macro and return to the caller.
+The argument is currently ignored.
+.It Ic \&rfschar Ar font glyph ...
+Remove font-specific fallback glyph definitions.
+Currently unsupported.
+.It Ic \&rhang Ar font char ... afmunits
+Hang characters at right margin.
+This is a Heirloom extension and currently ignored.
+.It Ic \&rj Op Ar N
+Justify the next
+.Ar N
+input lines to the right margin without filling.
+.Ar N
+defaults to 1.
+An argument of 0 or less ends right adjustment.
+.It Ic \&rm Ar macroname
+Remove a request, macro or string.
+.It Ic \&rn Ar oldname newname
+Rename a request, macro, diversion, or string.
+In
+.Xr mandoc 1 ,
+user-defined macros,
+.Xr mdoc 7
+and
+.Xr man 7
+macros, and user-defined strings can be renamed, but renaming of
+predefined strings and of
+.Nm
+requests is not supported, and diversions are not implemented at all.
+.It Ic \&rnn Ar oldname newname
+Rename a number register.
+Currently unsupported.
+.It Ic \&rr Ar register
+Remove a register.
+.It Ic \&rs
+End no-space mode.
+Currently ignored.
+.It Ic \&rt Op Ar dist
+Return to marked vertical position.
+Currently ignored.
+.It Ic \&schar Ar glyph Op Ar string
+Define global fallback glyph.
+This is a groff extension and currently unsupported.
+.It Ic \&sentchar Ar char ...
+Define sentence-ending characters.
+This is a Heirloom extension and currently ignored.
+.It Ic \&shc Op Ar glyph
+Change the soft hyphen character.
+Currently ignored.
+.It Ic \&shift Op Ar number
+Shift macro arguments
+.Ar number
+times, by default once: \e\e$i becomes what \e\e$i+number was.
+Also decrement \en(.$ by
+.Ar number .
+.It Ic \&sizes Ar size ...
+Define permissible point sizes.
+This is a groff extension and currently ignored.
+.It Ic \&so Ar filename
+Include a source file.
+The file is read and its contents processed as input in place of the
+.Ic \&so
+request line.
+To avoid inadvertent inclusion of unrelated files,
+.Xr mandoc 1
+only accepts relative paths not containing the strings
+.Qq ../
+and
+.Qq /.. .
+.Pp
+This request requires
+.Xr man 1
+to change to the right directory before calling
+.Xr mandoc 1 ,
+per convention to the root of the manual tree.
+Typical usage looks like:
+.Pp
+.Dl \&.so man3/Xcursor.3
+.Pp
+As the whole concept is rather fragile, the use of
+.Ic \&so
+is discouraged.
+Use
+.Xr ln 1
+instead.
+.It Ic \&sp Op Ar height
+Break the output line and emit vertical space.
+The argument follows the syntax of
+.Sx Scaling Widths
+and defaults to one blank line
+.Pq Li 1v .
+.It Ic \&spacewidth Op Cm 1 | 0
+Set the space width from the font metrics file.
+This is a Heirloom extension and currently ignored.
+.It Ic \&special Op Ar font ...
+Define a special font.
+This is a groff extension and currently ignored.
+.It Ic \&spreadwarn Op Ar width
+Warn about wide spacing between words.
+Currently ignored.
+.It Ic \&ss Ar wordspace Op Ar sentencespace
+Set space character size.
+Currently ignored.
+.It Ic \&sty Ar position style
+Associate style with a font position.
+This is a groff extension and currently ignored.
+.It Ic \&substring Ar stringname startpos Op Ar endpos
+Replace a user-defined string with a substring.
+Currently unsupported.
+.It Ic \&sv Op Ar height
+Save vertical space.
+Currently ignored.
+.It Ic \&sy Ar command
+Execute shell command.
+Ignored because insecure.
+.It Ic \&T&
+Re-start a table layout, retaining the options of the prior table
+invocation.
+See
+.Ic \&TS .
+.It Ic \&ta Op Ar width ... Op Cm T Ar width ...
+Set tab stops.
+Each
+.Ar width
+argument follows the syntax of
+.Sx Scaling Widths .
+If prefixed by a plus sign, it is relative to the previous tab stop.
+The arguments after the
+.Cm T
+marker are used repeatedly as often as needed; for each reuse,
+they are taken relative to the last previously established tab stop.
+When
+.Ic \&ta
+is called without arguments, all tab stops are cleared.
+.It Ic \&tc Op Ar glyph
+Change tab repetition character.
+Currently unsupported.
+.It Ic \&TE
+End a table context.
+See
+.Ic \&TS .
+.It Ic \&ti Oo Cm + Ns | Ns Cm - Oc Ns Ar width
+Break the output line and indent the next output line by
+.Ar width .
+If a sign is specified, the temporary indentation is calculated
+relative to the current indentation; otherwise, it is absolute.
+The argument follows the syntax of
+.Sx Scaling Widths
+and the default scaling unit is
+.Cm m .
+.It Ic \&tkf Ar font minps width1 maxps width2
+Enable track kerning for a font.
+Currently ignored.
+.It Ic \&tl No \& Ap Ar left Ap Ar center Ap Ar right Ap
+Print a title line.
+Currently unsupported.
+.It Ic \&tm Ar string
+Print to standard error output.
+Currently ignored.
+.It Ic \&tm1 Ar string
+Print to standard error output, allowing leading blanks.
+This is a groff extension and currently ignored.
+.It Ic \&tmc Ar string
+Print to standard error output without a trailing newline.
+This is a groff extension and currently ignored.
+.It Ic \&tr Ar glyph glyph ...
+Output character translation.
+The first glyph in each pair is replaced by the second one.
+Character escapes can be used; for example,
+.Pp
+.Dl tr \e(xx\e(yy
+.Pp
+replaces all invocations of \e(xx with \e(yy.
+.It Ic \&track Ar font minps width1 maxps width2
+Static letter space tracking.
+This is a Heirloom extension and currently ignored.
+.It Ic \&transchar Ar char ...
+Define transparent characters for sentence-ending.
+This is a Heirloom extension and currently ignored.
+.It Ic \&trf Ar filename
+Output the contents of a file, disallowing invalid characters.
+This is a groff extension and ignored because insecure.
+.It Ic \&trimat Ar left top width height
+Set the TrimBox page parameter for PDF generation.
+This is a Heirloom extension and currently ignored.
+.It Ic \&trin Ar glyph glyph ...
+Output character translation, ignored by
+.Ic \&asciify .
+Currently unsupported.
+.It Ic \&trnt Ar glyph glyph ...
+Output character translation, ignored by \e!.
+Currently unsupported.
+.It Ic \&troff
+Force troff mode.
+This is a groff extension and currently ignored.
+.It Ic \&TS
+Begin a table, which formats input in aligned rows and columns.
+See
+.Xr tbl 7
+for a description of the tbl language.
+.It Ic \&uf Ar font
+Globally set the underline font.
+Currently ignored.
+.It Ic \&ul Op Ar N
+Underline next
+.Ar N
+input lines.
+Currently ignored.
+.It Ic \&unformat Ar divname
+Unformat spaces and tabs in a diversion.
+Currently unsupported.
+.It Ic \&unwatch Ar macroname
+Disable notification for string or macro.
+This is a Heirloom extension and currently ignored.
+.It Ic \&unwatchn Ar register
+Disable notification for register.
+This is a Heirloom extension and currently ignored.
+.It Ic \&vpt Op Cm 1 | 0
+Enable or disable vertical position traps.
+This is a groff extension and currently ignored.
+.It Ic \&vs Op Oo Cm + Ns | Ns Cm - Oc Ns Ar height
+Change vertical spacing.
+Currently ignored.
+.It Ic \&warn Ar flags
+Set warning level.
+Currently ignored.
+.It Ic \&warnscale Ar si
+Set the scaling indicator used in warnings.
+This is a groff extension and currently ignored.
+.It Ic \&watch Ar macroname
+Notify on change of string or macro.
+This is a Heirloom extension and currently ignored.
+.It Ic \&watchlength Ar maxlength
+On change, report the contents of macros and strings
+up to the specified length.
+This is a Heirloom extension and currently ignored.
+.It Ic \&watchn Ar register
+Notify on change of register.
+This is a Heirloom extension and currently ignored.
+.It Ic \&wh Ar dist Op Ar macroname
+Set a page location trap.
+Currently unsupported.
+.It Ic \&while Ar condition body
+Repeated execution while a
+.Ar condition
+is true, with syntax similar to
+.Ic \&if .
+Currently implemented with two restrictions: cannot nest,
+and each loop must start and end in the same scope.
+.It Ic \&write Oo \(dq Oc Ns Ar string
+Write to an open file.
+Ignored because insecure.
+.It Ic \&writec Oo \(dq Oc Ns Ar string
+Write to an open file without appending a newline.
+Ignored because insecure.
+.It Ic \&writem Ar macroname
+Write macro or string to an open file.
+Ignored because insecure.
+.It Ic \&xflag Ar level
+Set the extension level.
+This is a Heirloom extension and currently ignored.
+.El
+.Ss Numerical expressions
+The
+.Ic \&nr ,
+.Ic \&if ,
+and
+.Ic \&ie
+requests accept integer numerical expressions as arguments.
+These are always evaluated using the C
+.Vt int
+type; integer overflow works the same way as in the C language.
+Numbers consist of an arbitrary number of digits
+.Sq 0
+to
+.Sq 9
+prefixed by an optional sign
+.Sq +
+or
+.Sq - .
+Each number may be followed by one optional scaling unit described below
+.Sx Scaling Widths .
+The following equations hold:
+.Bd -literal -offset indent
+1i = 6v = 6P = 10m = 10n = 72p = 1000M = 240u = 240
+254c = 100i = 24000u = 24000
+1f = 65536u = 65536
+.Ed
+.Pp
+The following binary operators are implemented.
+Unless otherwise stated, they behave as in the C language:
+.Pp
+.Bl -tag -width 2n -compact
+.It Ic +
+addition
+.It Ic -
+subtraction
+.It Ic *
+multiplication
+.It Ic /
+division
+.It Ic %
+remainder of division
+.It Ic <
+less than
+.It Ic >
+greater than
+.It Ic ==
+equal to
+.It Ic =
+equal to, same effect as
+.Ic ==
+(this differs from C)
+.It Ic <=
+less than or equal to
+.It Ic >=
+greater than or equal to
+.It Ic <>
+not equal to (corresponds to C
+.Ic != ;
+this one is of limited portability, it is supported by Heirloom roff,
+but not by groff)
+.It Ic &
+logical and (corresponds to C
+.Ic && )
+.It Ic \&:
+logical or (corresponds to C
+.Ic || )
+.It Ic <?
+minimum (not available in C)
+.It Ic >?
+maximum (not available in C)
+.El
+.Pp
+There is no concept of precedence; evaluation proceeds from left to right,
+except when subexpressions are enclosed in parentheses.
+Inside parentheses, whitespace is ignored.
+.Sh ESCAPE SEQUENCE REFERENCE
+The
+.Xr mandoc 1
+.Nm
+parser recognises the following escape sequences.
+In
+.Xr mdoc 7
+and
+.Xr man 7
+documents, using escape sequences is discouraged except for those
+described in the
+.Sx LANGUAGE SYNTAX
+section above.
+.Pp
+A backslash followed by any character not listed here
+simply prints that character itself.
+.Bl -tag -width Ds
+.It Ic \e<newline>
+A backslash at the end of an input line can be used to continue the
+logical input line on the next physical input line, joining the text
+on both lines together as if it were on a single input line.
+.It Ic \e<space>
+The escape sequence backslash-space
+.Pq Sq \e\ \&
+is an unpaddable space-sized non-breaking space character; see
+.Sx Whitespace
+and
+.Xr mandoc_char 7 .
+.It Ic \e!
+Embed text up to and including the end of the input line into the
+current diversion or into intermediate output without interpreting
+requests, macros, and escapes.
+Currently unsupported.
+.It Ic \e\(dq
+The rest of the input line is treated as
+.Sx Comments .
+.It Ic \e#
+Line continuation with comment.
+Discard the rest of the physical input line and continue the logical
+input line on the next physical input line, joining the text on
+both lines together as if it were on a single input line.
+This is a groff extension.
+.It Ic \e$ Ns Ar arg
+Macro argument expansion, see
+.Ic \&de .
+.It Ic \e%
+Hyphenation allowed at this point of the word; ignored by
+.Xr mandoc 1 .
+.It Ic \e&
+Non-printing zero-width character,
+often used for various kinds of escaping; see
+.Sx Whitespace ,
+.Xr mandoc_char 7 ,
+and the
+.Dq MACRO SYNTAX
+and
+.Dq Delimiters
+sections in
+.Xr mdoc 7 .
+.It Ic \e\(aq
+Acute accent special character; use
+.Ic \e(aa
+instead.
+.It Ic \e( Ns Ar cc
+.Sx Special Characters
+with two-letter names, see
+.Xr mandoc_char 7 .
+.It Ic \e)
+Zero-width space transparent to end-of-sentence detection;
+ignored by
+.Xr mandoc 1 .
+.It Ic \e*[ Ns Ar name Ns Ic \&]
+Interpolate the string with the
+.Ar name .
+For short names, there are variants
+.Ic \e* Ns Ar c
+and
+.Ic \e*( Ns Ar cc .
+.Pp
+One string is predefined on the
+.Nm
+language level:
+.Ic \e*(.T
+expands to the name of the output device,
+for example ascii, utf8, ps, pdf, html, or markdown.
+.Pp
+Macro sets traditionally predefine additional strings which are not
+portable and differ across implementations.
+Those supported by
+.Xr mandoc 1
+are listed in
+.Xr mandoc_char 7 .
+.Pp
+Strings can be defined, changed, and deleted with the
+.Ic \&ds ,
+.Ic \&as ,
+and
+.Ic \&rm
+requests.
+.It Ic \e,
+Left italic correction (groff extension); ignored by
+.Xr mandoc 1 .
+.It Ic \e-
+Special character
+.Dq mathematical minus sign ;
+see
+.Xr mandoc_char 7
+for details.
+.It Ic \e/
+Right italic correction (groff extension); ignored by
+.Xr mandoc 1 .
+.It Ic \e:
+Breaking the line is allowed at this point of the word
+without inserting a hyphen.
+.It Ic \e?
+Embed the text up to the next
+.Ic \e?
+into the current diversion without interpreting requests, macros,
+and escapes.
+This is a groff extension and currently unsupported.
+.It Ic \e[ Ns Ar name Ns Ic \&]
+.Sx Special Characters
+with names of arbitrary length, see
+.Xr mandoc_char 7 .
+.It Ic \e^
+One-twelfth em half-narrow space character, effectively zero-width in
+.Xr mandoc 1 .
+.It Ic \e_
+Underline special character; use
+.Ic \e(ul
+instead.
+.It Ic \e`
+Grave accent special character; use
+.Ic \e(ga
+instead.
+.It Ic \e{
+Begin conditional input; see
+.Ic \&if .
+.It Ic \e\(ba
+One-sixth em narrow space character, effectively zero-width in
+.Xr mandoc 1 .
+.It Ic \e}
+End conditional input; see
+.Ic \&if .
+.It Ic \e~
+Paddable non-breaking space character.
+.It Ic \e0
+Digit width space character.
+.It Ic \eA\(aq Ns Ar string Ns Ic \(aq
+Anchor definition; ignored by
+.Xr mandoc 1 .
+.It Ic \ea
+Leader character; ignored by
+.Xr mandoc 1 .
+.It Ic \eB\(aq Ns Ar string Ns Ic \(aq
+Interpolate
+.Sq 1
+if
+.Ar string
+conforms to the syntax of
+.Sx Numerical expressions
+explained above or
+.Sq 0
+otherwise.
+.It Ic \eb\(aq Ns Ar string Ns Ic \(aq
+Bracket building function; ignored by
+.Xr mandoc 1 .
+.It Ic \eC\(aq Ns Ar name Ns Ic \(aq
+.Sx Special Characters
+with names of arbitrary length.
+.It Ic \ec
+When encountered at the end of an input text line,
+the next input text line is considered to continue that line,
+even if there are request or macro lines in between.
+No whitespace is inserted.
+.It Ic \eD\(aq Ns Ar string Ns Ic \(aq
+Draw graphics function; ignored by
+.Xr mandoc 1 .
+.It Ic \ed
+Move down by half a line; ignored by
+.Xr mandoc 1 .
+.It Ic \eE
+Escape character intended to not be interpreted in copy mode.
+In
+.Xr mandoc 1 ,
+it currently does the same as
+.Ic \e
+itself.
+.It Ic \ee
+Backslash special character.
+.It Ic \eF[ Ns Ar name Ns Ic \&]
+Switch font family (groff extension); ignored by
+.Xr mandoc 1 .
+For short names, there are variants
+.Ic \eF Ns Ar c
+and
+.Ic \eF( Ns Ar cc .
+.It Ic \ef[ Ns Ar name Ns Ic \&]
+Switch to the font
+.Ar name ,
+see
+.Sx Font Selection .
+For short names, there are variants
+.Ic \ef Ns Ar c
+and
+.Ic \ef( Ns Ar cc .
+An empty name
+.Ic \ef[]
+defaults to
+.Ic \efP .
+.It Ic \eg[ Ns Ar name Ns Ic \&]
+Interpolate the format of a number register; ignored by
+.Xr mandoc 1 .
+For short names, there are variants
+.Ic \eg Ns Ar c
+and
+.Ic \eg( Ns Ar cc .
+.It Ic \eH\(aq Ns Oo +|- Oc Ns Ar number Ns Ic \(aq
+Set the height of the current font; ignored by
+.Xr mandoc 1 .
+.It Ic \eh\(aq Ns Oo Cm \&| Oc Ns Ar width Ns Ic \(aq
+Horizontal motion.
+If the vertical bar is given, the motion is relative to the current
+indentation.
+Otherwise, it is relative to the current position.
+The default scaling unit is
+.Cm m .
+.It Ic \ek[ Ns Ar name Ns Ic \&]
+Mark horizontal input place in register; ignored by
+.Xr mandoc 1 .
+For short names, there are variants
+.Ic \ek Ns Ar c
+and
+.Ic \ek( Ns Ar cc .
+.It Ic \eL\(aq Ns Ar number Ns Oo Ar c Oc Ns Ic \(aq
+Vertical line drawing function; ignored by
+.Xr mandoc 1 .
+.It Ic \el\(aq Ns Ar width Ns Oo Ar c Oc Ns Ic \(aq
+Draw a horizontal line of
+.Ar width
+using the glyph
+.Ar c .
+.It Ic \eM[ Ns Ar name Ns Ic \&]
+Set fill (background) color (groff extension); ignored by
+.Xr mandoc 1 .
+For short names, there are variants
+.Ic \eM Ns Ar c
+and
+.Ic \eM( Ns Ar cc .
+.It Ic \em[ Ns Ar name Ns Ic \&]
+Set glyph drawing color (groff extension); ignored by
+.Xr mandoc 1 .
+For short names, there are variants
+.Ic \em Ns Ar c
+and
+.Ic \em( Ns Ar cc .
+.It Ic \eN\(aq Ns Ar number Ns Ic \(aq
+Character
+.Ar number
+on the current font.
+.It Ic \en Ns Oo +|- Oc Ns Ic \&[ Ns Ar name Ns Ic \&]
+Interpolate the number register
+.Ar name .
+For short names, there are variants
+.Ic \en Ns Ar c
+and
+.Ic \en( Ns Ar cc .
+If the optional sign is specified,
+the register is first incremented or decremented by the
+.Ar stepsize
+that was specified in the relevant
+.Ic \&nr
+request, and the changed value is interpolated.
+.It Ic \eO Ns Ar digit , Ic \eO[5 Ns arguments Ns Ic \&]
+Suppress output.
+This is a groff extension and currently unsupported.
+With an argument of
+.Ic 1 , 2 , 3 ,
+or
+.Ic 4 ,
+it is ignored.
+.It Ic \eo\(aq Ns Ar string Ns Ic \(aq
+Overstrike, writing all the characters contained in the
+.Ar string
+to the same output position.
+In terminal and HTML output modes,
+only the last one of the characters is visible.
+.It Ic \ep
+Break the output line at the end of the current word.
+.It Ic \eR\(aq Ns Ar name Oo +|- Oc Ns Ar number Ns Ic \(aq
+Set number register; ignored by
+.Xr mandoc 1 .
+.It Ic \er
+Move up by one line; ignored by
+.Xr mandoc 1 .
+.It Ic \eS\(aq Ns Ar number Ns Ic \(aq
+Slant output; ignored by
+.Xr mandoc 1 .
+.It Ic \es\(aq Ns Oo +|- Oc Ns Ar number Ns Ic \(aq
+Change point size; ignored by
+.Xr mandoc 1 .
+Alternative forms
+.Ic \es Ns Oo +|- Oc Ns Ar n ,
+.Ic \es Ns Oo +|- Oc Ns Ic \(aq Ns Ar number Ns Ic \(aq ,
+.Ic \es[ Ns Oo +|- Oc Ns Ar number Ns Ic \&] ,
+and
+.Ic \es Ns Oo +|- Oc Ns Ic \&[ Ns Ar number Ns Ic \&]
+are also parsed and ignored.
+.It Ic \et
+Horizontal tab; ignored by
+.Xr mandoc 1 .
+.It Ic \eu
+Move up by half a line; ignored by
+.Xr mandoc 1 .
+.It Ic \eV[ Ns Ar name Ns Ic \&]
+Interpolate an environment variable; ignored by
+.Xr mandoc 1 .
+For short names, there are variants
+.Ic \eV Ns Ar c
+and
+.Ic \eV( Ns Ar cc .
+.It Ic \ev\(aq Ns Ar number Ns Ic \(aq
+Vertical motion; ignored by
+.Xr mandoc 1 .
+.It Ic \ew\(aq Ns Ar string Ns Ic \(aq
+Interpolate the width of the
+.Ar string .
+The
+.Xr mandoc 1
+implementation assumes that after expansion of user-defined strings, the
+.Ar string
+only contains normal characters, no escape sequences, and that each
+character has a width of 24 basic units.
+.It Ic \eX\(aq Ns Ar string Ns Ic \(aq
+Output
+.Ar string
+as device control function; ignored in nroff mode and by
+.Xr mandoc 1 .
+.It Ic \ex\(aq Ns Ar number Ns Ic \(aq
+Extra line space function; ignored by
+.Xr mandoc 1 .
+.It Ic \eY[ Ns Ar name Ns Ic \&]
+Output a string as a device control function; ignored in nroff mode and by
+.Xr mandoc 1 .
+For short names, there are variants
+.Ic \eY Ns Ar c
+and
+.Ic \eY( Ns Ar cc .
+.It Ic \eZ\(aq Ns Ar string Ns Ic \(aq
+Print
+.Ar string
+with zero width and height; ignored by
+.Xr mandoc 1 .
+.It Ic \ez
+Output the next character without advancing the cursor position.
+.El
+.Sh COMPATIBILITY
+The
+.Xr mandoc 1
+implementation of the
+.Nm
+language is incomplete.
+Major unimplemented features include:
+.Pp
+.Bl -dash -compact
+.It
+For security reasons,
+.Xr mandoc 1
+never reads or writes external files except via
+.Ic \&so
+requests with safe relative paths.
+.It
+There is no automatic hyphenation, no adjustment to the right margin,
+and very limited support for centering; the output is always set flush-left.
+.It
+Support for setting tabulator and leader characters is missing,
+and support for manually changing indentation is limited.
+.It
+The
+.Sq u
+scaling unit is the default terminal unit.
+In traditional troff systems, this unit changes depending on the
+output media.
+.It
+Width measurements are implemented in a crude way
+and often yield wrong results.
+Support for explicit movement requests and escapes is limited.
+.It
+There is no concept of output pages, no support for floats,
+graphics drawing, and picture inclusion;
+terminal output is always continuous.
+.It
+Requests regarding color, font families, font sizes,
+and glyph manipulation are ignored.
+Font support is very limited.
+Kerning is not implemented, and no ligatures are produced.
+.It
+The
+.Qq \(aq
+macro control character does not suppress output line breaks.
+.It
+Diversions and environments are not implemented,
+and support for traps is very incomplete.
+.It
+Use of macros is not supported inside
+.Xr tbl 7
+code.
+.El
+.Pp
+The special semantics of the
+.Cm nS
+number register is an idiosyncrasy of
+.Ox
+manuals and not supported by other
+.Xr mdoc 7
+implementations.
+.Sh SEE ALSO
+.Xr mandoc 1 ,
+.Xr eqn 7 ,
+.Xr man 7 ,
+.Xr mandoc_char 7 ,
+.Xr mdoc 7 ,
+.Xr tbl 7
+.Rs
+.%A Joseph F. Ossanna
+.%A Brian W. Kernighan
+.%I AT&T Bell Laboratories
+.%T Troff User's Manual
+.%R Computing Science Technical Report
+.%N 54
+.%C Murray Hill, New Jersey
+.%D 1976 and 1992
+.%U http://www.kohala.com/start/troff/cstr54.ps
+.Re
+.Rs
+.%A Joseph F. Ossanna
+.%A Brian W. Kernighan
+.%A Gunnar Ritter
+.%T Heirloom Documentation Tools Nroff/Troff User's Manual
+.%D September 17, 2007
+.%U http://heirloom.sourceforge.net/doctools/troff.pdf
+.Re
+.Sh HISTORY
+The RUNOFF typesetting system, whose input forms the basis for
+.Nm ,
+was written in MAD and FAP for the CTSS operating system by Jerome E.
+Saltzer in 1964.
+Doug McIlroy rewrote it in BCPL in 1969, renaming it
+.Nm .
+Dennis M. Ritchie rewrote McIlroy's
+.Nm
+in PDP-11 assembly for
+.At v1 ,
+Joseph F. Ossanna improved roff and renamed it nroff
+for
+.At v2 ,
+then ported nroff to C as troff, which Brian W. Kernighan released with
+.At v7 .
+In 1989, James Clark re-implemented troff in C++, naming it groff.
+.Sh AUTHORS
+.An -nosplit
+This
+.Nm
+reference was written by
+.An Kristaps Dzonsons Aq Mt kristaps@bsd.lv
+and
+.An Ingo Schwarze Aq Mt schwarze@openbsd.org .
diff --git a/usr/src/man/man7/mansun.7 b/usr/src/man/man7/mansun.7
new file mode 100644
index 0000000000..e5330e7302
--- /dev/null
+++ b/usr/src/man/man7/mansun.7
@@ -0,0 +1,316 @@
+'\" te
+.\" Copyright (c) 2017 Peter Tribble.
+.\" Copyright (c) 1992, Sun Microsystems, Inc.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH MANSUN 7 "Apr 2, 2017"
+.SH NAME
+mansun \- macros to format Reference Manual pages
+.SH SYNOPSIS
+.LP
+.nf
+\fBnroff\fR \fB-mansun\fR \fIfilename\fR...
+.fi
+
+.LP
+.nf
+\fBtroff\fR \fB-mansun\fR \fIfilename\fR...
+.fi
+
+.SH DESCRIPTION
+.LP
+These macros are used to lay out the reference pages in this manual. Note: if
+\fIfilename\fR contains format input for a preprocessor, the commands shown
+above must be piped through the appropriate preprocessor. This is handled
+automatically by \fBman\fR(1). See the ``Conventions'' section.
+.sp
+.LP
+Any text argument \fIt\fR may be zero to six words. Quotes may be used to
+include SPACE characters in a "word". If \fItext\fR is empty, the special
+treatment is applied to the next input line with text to be printed. In this
+way \fB\&.I\fR may be used to italicize a whole line, or \fB\&.SB\fR may be
+used to make small bold letters.
+.sp
+.LP
+A prevailing indent distance is remembered between successive indented
+paragraphs, and is reset to default value upon reaching a non-indented
+paragraph. Default units for indents \fIi\fR are ens.
+.sp
+.LP
+Type font and size are reset to default values before each paragraph, and after
+processing font and size setting macros.
+.sp
+.LP
+These strings are predefined by \fB-mansun\fR:
+.sp
+.ne 2
+.na
+\fB\fB\e*R\fR\fR
+.ad
+.RS 8n
+`\(rg', `(Reg)' in \fBnroff\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\e*S\fR\fR
+.ad
+.RS 8n
+Change to default type size.
+.RE
+
+.SS "Requests"
+.LP
+* n.t.l. = next text line; p.i. = prevailing indent
+.sp
+
+.sp
+.TS
+c c c c
+c c c c .
+\fIRequest\fR \fICause\fR \fIIf no\fR \fIExplanation\fR
+ \fIBreak\fR \fIArgument\fR
+\fB\&.B \fR\fIt\fR no \fIt\fR=n.t.l.* Text is in bold font.
+\fB\&.BI \fR\fIt\fR no \fIt\fR=n.t.l. Join words, alternating bold and italic.
+\fB\&.BR \fR\fIt\fR no \fIt\fR=n.t.l. Join words, alternating bold and Roman.
+\fB\&.DT\fR no \&.5i 1i... Restore default tabs.
+\fB\&.HP \fR\fIi\fR yes \fIi\fR=p.i.* T{
+Begin paragraph with hanging indent. Set prevailing indent to \fIi\fR.
+T}
+\fB\&.I \fR\fIt\fR no \fIt\fR=n.t.l. Text is italic.
+\fB\&.IB \fR\fIt\fR no \fIt\fR=n.t.l. Join words, alternating italic and bold.
+\fB\&.IP \fR\fIx i\fR yes \fIx\fR="" Same as \fB\&.TP\fR with tag \fIx\fR.
+\fB\&.IR \fR\fIt\fR no \fIt\fR=n.t.l. T{
+Join words, alternating italic and Roman.
+T}
+\fB\&.IX \fR\fIt\fR no - Index macro, for SunSoft internal use.
+\fB\&.LP\fR yes - T{
+Begin left-aligned paragraph. Set prevailing indent to .5i.
+T}
+\fB\&.P\fR yes - Same as \fB\&.LP\fR.
+\fB\&.PD \fR\fId\fR no \fId\fR=.4v T{
+Set vertical distance between paragraphs.
+T}
+\fB\&.PP\fR yes - Same as \fB\&.LP\fR.
+\fB\&.RE\fR yes - T{
+End of relative indent. Restores prevailing indent.
+T}
+\fB\&.RB \fR\fIt\fR no \fIt\fR=n.t.l. Join words, alternating Roman and bold.
+\fB\&.RI \fR\fIt\fR no \fIt\fR=n.t.l. T{
+Join words, alternating Roman and italic.
+T}
+\fB\&.RS \fR\fIi\fR yes \fIi\fR=p.i. T{
+Start relative indent, increase indent by \fIi\fR. Sets prevailing indent to .5i for nested indents.
+T}
+\fB\&.SB \fR\fIt\fR no - T{
+Reduce size of text by 1 point, make text bold.
+T}
+\fB\&.SH \fR\fIt\fR yes - Section Heading.
+\fB\&.SM \fR\fIt\fR no \fIt\fR=n.t.l. Reduce size of text by 1 point.
+\fB\&.SS \fR\fIt\fR yes \fIt\fR=n.t.l. Section Subheading.
+\fB\&.TH \fR\fIN S "f d, m\fR"
+\fB\&.TH \fR\fIn s d f m\fR yes - T{
+Begin reference page \fIn\fR, of of section \fIs\fR; \fId\fR is the date of the most recent change. If present, \fIf\fR is the left page footer; \fIm\fR is the main page (center) header. Sets prevailing indent and tabs to .5i.
+T}
+\fB\&.TP \fR\fIi\fR yes \fIi\fR=p.i. T{
+Begin indented paragraph, with the tag given on the next text line. Set prevailing indent to \fIi\fR.
+T}
+\fB\&.TX \fR\fIt \fR\fIp\fR no - T{
+Resolve the title abbreviation \fIt\fR; join to punctuation mark (or text) \fIp\fR.
+T}
+.TE
+
+.SS "Conventions"
+.LP
+When formatting a manual page, \fBmansun\fR examines the first line to
+determine whether it requires special processing. For example a first line
+consisting of:
+.sp
+.LP
+\fB\&'\e" t\fR
+.sp
+.LP
+indicates that the manual page must be run through the \fBtbl\fR(1)
+preprocessor.
+.sp
+.LP
+A typical manual page for a command or function is laid out as follows:
+.sp
+.ne 2
+.na
+\fB\&.TH\fI TITLE \fR[1-8]\fR " , "
+.ad
+.RS 21n
+The name of the command or function, which serves as the title of the manual
+page. This is followed by the number of the section in which it appears.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\&.SH NAME\fR
+.ad
+.RS 21n
+The name, or list of names, by which the command is called, followed by a dash
+and then a one-line summary of the action performed. All in Roman font, this
+section contains no \fBtroff\fR(1) commands or escapes, and no macro requests.
+It is used to generate the \fBwhatis\fR database, which is used by the
+\fBwhatis\fR(1) and \fBapropos\fR(1) commands.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\&.SH SYNOPSIS\fR
+.ad
+.RS 21n
+.sp
+.ne 2
+.na
+\fBCommands:\fR
+.ad
+.RS 13n
+The syntax of the command and its arguments, as typed on the command line.
+When in boldface, a word must be typed exactly as printed. When in italics, a
+word can be replaced with an argument that you supply. References to bold or
+italicized items are not capitalized in other sections, even when they begin a
+sentence.
+.sp
+Syntactic symbols appear in Roman face:
+.sp
+.ne 2
+.na
+\fB[ ]\fR
+.ad
+.RS 13n
+An argument, when surrounded by brackets is optional.
+.RE
+
+.sp
+.ne 2
+.na
+\fB|\fR
+.ad
+.RS 13n
+Arguments separated by a vertical bar are exclusive. You can supply only one
+item from such a list.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\&.\|.\|.\fR
+.ad
+.RS 13n
+Arguments followed by an ellipsis can be repeated. When an ellipsis follows a
+bracketed set, the expression within the brackets can be repeated.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fBFunctions:\fR
+.ad
+.RS 14n
+If required, the data declaration, or \fB#include\fR directive, is shown first,
+followed by the function declaration. Otherwise, the function declaration is
+shown.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\&.SH DESCRIPTION\fR
+.ad
+.RS 21n
+A narrative overview of the command or function's external behavior. This
+includes how it interacts with files or data, and how it handles the standard
+input, standard output and standard error. Internals and implementation details
+are normally omitted. This section attempts to provide a succinct overview in
+answer to the question, "what does it do?"
+.sp
+Literal text from the synopsis appears in constant width, as do literal
+filenames and references to items that appear elsewhere in the reference
+manuals. Arguments are italicized.
+.sp
+If a command interprets either subcommands or an input grammar, its command
+interface or input grammar is normally described in a \fBUSAGE\fR section,
+which follows the \fBOPTIONS\fR section. The \fBDESCRIPTION\fR section only
+describes the behavior of the command itself, not that of subcommands.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\&.SH OPTIONS\fR
+.ad
+.RS 21n
+The list of options along with a description of how each affects the command's
+operation.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\&.SH FILES\fR
+.ad
+.RS 21n
+A list of files associated with the command or function.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\&.SH SEE ALSO\fR
+.ad
+.RS 21n
+A comma-separated list of related manual pages, followed by references to other
+published materials.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\&.SH DIAGNOSTICS\fR
+.ad
+.RS 21n
+A list of diagnostic messages and an explanation of each.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\&.SH BUGS\fR
+.ad
+.RS 21n
+A description of limitations, known defects, and possible problems associated
+with the command or function.
+.RE
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/usr/share/lib/tmac/ansun\fR\fR
+.ad
+.RS 29n
+
+.RE
+
+.SH SEE ALSO
+.LP
+.BR man (1),
+.BR nroff (1),
+.BR troff (1)
+.sp
+.LP
+Dale Dougherty and Tim O'Reilly, \fIUnix\fR \fIText\fR \fIProcessing\fR
+
+.SH NOTES
+.LP
+New manual pages should be coded in the \fBmdoc\fR(7) format.
diff --git a/usr/src/man/man7/mdoc.7 b/usr/src/man/man7/mdoc.7
new file mode 100644
index 0000000000..b1c1e15ce0
--- /dev/null
+++ b/usr/src/man/man7/mdoc.7
@@ -0,0 +1,3337 @@
+.\" $Id: mdoc.7,v 1.287 2021/07/29 17:32:01 schwarze Exp $
+.\"
+.\" Copyright (c) 2009, 2010, 2011 Kristaps Dzonsons <kristaps@bsd.lv>
+.\" Copyright (c) 2010, 2011, 2013-2020 Ingo Schwarze <schwarze@openbsd.org>
+.\"
+.\" Permission to use, copy, modify, and distribute this software for any
+.\" purpose with or without fee is hereby granted, provided that the above
+.\" copyright notice and this permission notice appear in all copies.
+.\"
+.\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+.\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+.\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+.\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+.\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+.\"
+.\"
+.\" Copyright 2014 Garrett D'Amore <garrett@damore.org>
+.\" Copyright 2018 Nexenta Systems, Inc.
+.\"
+.Dd $Mdocdate: July 29 2021 $
+.Dt MDOC 7
+.Os
+.Sh NAME
+.Nm mdoc
+.Nd semantic markup language for formatting manual pages
+.Sh DESCRIPTION
+The
+.Nm mdoc
+language supports authoring of manual pages for the
+.Xr man 1
+utility by allowing semantic annotations of words, phrases,
+page sections and complete manual pages.
+Such annotations are used by formatting tools to achieve a uniform
+presentation across all manuals written in
+.Nm ,
+and to support hyperlinking if supported by the output medium.
+.Pp
+This reference document describes the structure of manual pages
+and the syntax and usage of the
+.Nm
+language.
+The reference implementation of a parsing and formatting tool is
+.Xr mandoc 1 ;
+the
+.Sx COMPATIBILITY
+section describes compatibility with other implementations.
+.Pp
+In an
+.Nm
+document, lines beginning with the control character
+.Sq \&.
+are called
+.Dq macro lines .
+The first word is the macro name.
+It consists of two or three letters.
+Most macro names begin with a capital letter.
+For a list of available macros, see
+.Sx MACRO OVERVIEW .
+The words following the macro name are arguments to the macro, optionally
+including the names of other, callable macros; see
+.Sx MACRO SYNTAX
+for details.
+.Pp
+Lines not beginning with the control character are called
+.Dq text lines .
+They provide free-form text to be printed; the formatting of the text
+depends on the respective processing context:
+.Bd -literal -offset indent
+\&.Sh Macro lines change control state.
+Text lines are interpreted within the current state.
+.Ed
+.Pp
+Many aspects of the basic syntax of the
+.Nm
+language are based on the
+.Xr mandoc_roff 7
+language; see the
+.Em LANGUAGE SYNTAX
+and
+.Em MACRO SYNTAX
+sections in the
+.Xr mandoc_roff 7
+manual for details, in particular regarding
+comments, escape sequences, whitespace, and quoting.
+However, using
+.Xr mandoc_roff 7
+requests in
+.Nm
+documents is discouraged;
+.Xr mandoc 1
+supports some of them merely for backward compatibility.
+.Sh MANUAL STRUCTURE
+A well-formed
+.Nm
+document consists of a document prologue followed by one or more
+sections.
+.Pp
+The prologue, which consists of the
+.Ic \&Dd ,
+.Ic \&Dt ,
+and
+.Ic \&Os
+macros in that order, is required for every document.
+.Pp
+The first section (sections are denoted by
+.Ic \&Sh )
+must be the NAME section, consisting of at least one
+.Ic \&Nm
+followed by
+.Ic \&Nd .
+.Pp
+Following that, convention dictates specifying at least the
+.Em SYNOPSIS
+and
+.Em DESCRIPTION
+sections, although this varies between manual sections.
+.Pp
+The following is a well-formed skeleton
+.Nm
+file for a utility
+.Qq progname :
+.Bd -literal -offset indent
+\&.Dd Jan 1, 1970
+\&.Dt PROGNAME section
+\&.Os
+\&.Sh NAME
+\&.Nm progname
+\&.Nd one line about what it does
+\&.\e\(dq .Sh LIBRARY
+\&.\e\(dq For sections 2, 3, and 9 only.
+\&.Sh SYNOPSIS
+\&.Nm progname
+\&.Op Fl options
+\&.Ar
+\&.Sh DESCRIPTION
+The
+\&.Nm
+utility processes files ...
+\&.\e\(dq .Sh IMPLEMENTATION NOTES
+\&.\e\(dq .Sh RETURN VALUES
+\&.\e\(dq For sections 2, 3, 7, and 9 only.
+\&.\e\(dq .Sh CONTEXT
+\&.\e\(dq For section 9 functions only.
+\&.\e\(dq .Sh ENVIRONMENT
+\&.\e\(dq For sections 1, 7, and 8.
+\&.\e\(dq .Sh FILES
+\&.\e\(dq .Sh EXIT STATUS
+\&.\e\(dq For sections 1, 7, and 8.
+\&.\e\(dq .Sh EXAMPLES
+\&.\e\(dq .Sh DIAGNOSTICS
+\&.\e\(dq .Sh ERRORS
+\&.\e\(dq For sections 2, 3, 4, and 9 only.
+\&.\e\(dq .Sh ARCHITECTURE
+\&.\e\(dq .Sh CODE SET INDEPENDENCE
+\&.\e\(dq For sections 1, 3, and 8 only.
+\&.\e\(dq .Sh INTERFACE STABILITY
+\&.\e\(dq .Sh MT-LEVEL
+\&.\e\(dq For sections 2 and 3 only.
+\&.\e\(dq .Sh SECURITY
+\&.\e\(dq .Sh SEE ALSO
+\&.\e\(dq .Xr foobar 1
+\&.\e\(dq .Sh STANDARDS
+\&.\e\(dq .Sh HISTORY
+\&.\e\(dq .Sh AUTHORS
+\&.\e\(dq .Sh CAVEATS
+\&.\e\(dq .Sh BUGS
+.Ed
+.Pp
+The sections in an
+.Nm
+document are conventionally ordered as they appear above.
+Sections should be composed as follows:
+.Bl -ohang -offset Ds
+.It Em NAME
+The name(s) and a one line description of the documented material.
+The syntax for this as follows:
+.Bd -literal -offset indent
+\&.Nm name0 ,
+\&.Nm name1 ,
+\&.Nm name2
+\&.Nd a one line description
+.Ed
+.Pp
+Multiple
+.Sq \&Nm
+names should be separated by commas.
+.Pp
+The
+.Ic \&Nm
+macro(s) must precede the
+.Ic \&Nd
+macro.
+.Pp
+See
+.Ic \&Nm
+and
+.Ic \&Nd .
+.It Em LIBRARY
+The name of the library containing the documented material, which is
+assumed to be a function in a section 2, 3, or 9 manual.
+The syntax for this is as follows:
+.Bd -literal -offset indent
+\&.Lb libarm
+.Ed
+.Pp
+See
+.Ic \&Lb .
+.It Em SYNOPSIS
+Documents the utility invocation syntax, function call syntax, or device
+configuration.
+.Pp
+For the first, utilities (sections 1 and 8), this is
+generally structured as follows:
+.Bd -literal -offset indent
+\&.Nm bar
+\&.Op Fl v
+\&.Op Fl o Ar file
+\&.Op Ar
+\&.Nm foo
+\&.Op Fl v
+\&.Op Fl o Ar file
+\&.Op Ar
+.Ed
+.Pp
+Commands should be ordered alphabetically.
+.Pp
+For the second, function calls (sections 2, 3, 4I, 4P, 9):
+.Bd -literal -offset indent
+\&.In header.h
+\&.Vt extern const char *global;
+\&.Ft "char *"
+\&.Fn foo "const char *src"
+\&.Ft "char *"
+\&.Fn bar "const char *src"
+.Ed
+.Pp
+Ordering of
+.Ic \&In ,
+.Ic \&Vt ,
+.Ic \&Fn ,
+and
+.Ic \&Fo
+macros should follow C header-file conventions.
+.Pp
+And for the third, configurations (section 4D):
+.Bd -literal -offset indent
+\&.Pa /dev/device_node
+.Ed
+.Pp
+Manuals not in these sections generally don't need a
+.Em SYNOPSIS .
+.Pp
+Some macros are displayed differently in the
+.Em SYNOPSIS
+section, particularly
+.Ic \&Nm ,
+.Ic \&Cd ,
+.Ic \&Fd ,
+.Ic \&Fn ,
+.Ic \&Fo ,
+.Ic \&In ,
+.Ic \&Vt ,
+and
+.Ic \&Ft .
+All of these macros are output on their own line.
+If two such dissimilar macros are pairwise invoked (except for
+.Ic \&Ft
+before
+.Ic \&Fo
+or
+.Ic \&Fn ) ,
+they are separated by a vertical space, unless in the case of
+.Ic \&Fo ,
+.Ic \&Fn ,
+and
+.Ic \&Ft ,
+which are always separated by vertical space.
+.Pp
+When text and macros following an
+.Ic \&Nm
+macro starting an input line span multiple output lines,
+all output lines but the first will be indented to align
+with the text immediately following the
+.Ic \&Nm
+macro, up to the next
+.Ic \&Nm ,
+.Ic \&Sh ,
+or
+.Ic \&Ss
+macro or the end of an enclosing block, whichever comes first.
+.It Em DESCRIPTION
+This begins with an expansion of the brief, one line description in
+.Em NAME :
+.Bd -literal -offset indent
+The
+\&.Nm
+utility does this, that, and the other.
+.Ed
+.Pp
+It usually follows with a breakdown of the options (if documenting a
+command), such as:
+.Bd -literal -offset indent
+The options are as follows:
+\&.Bl \-tag \-width Ds
+\&.It Fl v
+Print verbose information.
+\&.El
+.Ed
+.Pp
+List the options in alphabetical order,
+uppercase before lowercase for each letter and
+with no regard to whether an option takes an argument.
+Put digits in ascending order before all letter options.
+.Pp
+Manuals not documenting a command won't include the above fragment.
+.Pp
+Since the
+.Em DESCRIPTION
+section usually contains most of the text of a manual, longer manuals
+often use the
+.Ic \&Ss
+macro to form subsections.
+In very long manuals, the
+.Em DESCRIPTION
+may be split into multiple sections, each started by an
+.Ic \&Sh
+macro followed by a non-standard section name, and each having
+several subsections, like in the present
+.Nm
+manual.
+.It Em IMPLEMENTATION NOTES
+Implementation-specific notes should be kept here.
+This is useful when implementing standard functions that may have side
+effects or notable algorithmic implications.
+.It Em RETURN VALUES
+This section documents the
+return values of functions in sections 2, 3, and 9.
+.Pp
+See
+.Ic \&Rv .
+.It Em CONTEXT
+This section lists the contexts in which functions can be called in section 9.
+The contexts are user, kernel, or interrupt.
+.It Em ENVIRONMENT
+Lists the environment variables used by the utility,
+and explains the syntax and semantics of their values.
+The
+.Xr environ 7
+manual provides examples of typical content and formatting.
+.Pp
+See
+.Ic \&Ev .
+.It Em FILES
+Documents files used.
+It's helpful to document both the file name and a short description of how
+the file is used (created, modified, etc.).
+.Pp
+See
+.Ic \&Pa .
+.It Em EXIT STATUS
+This section documents the
+command exit status for sections 1 and 8.
+Historically, this information was described in
+.Em DIAGNOSTICS ,
+a practise that is now discouraged.
+.Pp
+See
+.Ic \&Ex .
+.It Em EXAMPLES
+Example usages.
+This often contains snippets of well-formed, well-tested invocations.
+Make sure that examples work properly!
+.It Em DIAGNOSTICS
+Documents error and diagnostic messages displayed to the user or
+sent to logs.
+Note that exit status and return values should be documented in the
+.Em EXIT STATUS
+and
+.Em RETURN VALUES
+sections.
+.Pp
+See
+.Ic \&Bl
+.Fl diag .
+.It Em ERRORS
+Documents error handling in sections 2, 3, 7, and 9.
+.Pp
+See
+.Ic \&Er .
+.It Em ARCHITECTURE
+This section is usually absent, but will be present when the
+interface is specific to one or more architectures.
+.It Em CODE SET INDEPENDENCE
+Indicates whether the interface operates correctly with various different
+code sets.
+True independent code sets will support not only ASCII and Extended UNIX
+Codesets (EUC), but also other multi-byte encodings such as UTF-8 and GB2312.
+.Pp
+Generally there will be some limitations that are fairly standard.
+See
+.Xr standards 7
+for more information about some of these.
+Most interfaces should support at least UTF-8 in addition to ASCII.
+.It Em INTERFACE STABILITY
+Indicates the level of commitment to the interface.
+Interfaces can be described with in the following ways:
+.Bl -tag -width Ds
+.It Nm Standard
+Indicates that the interface is defined by one or more standards bodies.
+Generally, changes to the interface will be carefully managed to conform
+to the relevant standards.
+These interfaces are generally the most suitable for use in portable programs.
+.It Nm Committed
+Indicates that the interface is intended to be preserved for the long-haul, and
+will rarely, if ever change, and never without notification (barring
+extraordinary and extenuating circumstances).
+These interfaces are preferred over other interfaces with the exeception of
+.Nm Standard
+interfaces.
+.It Nm Uncommitted
+Indicates that the interface may change.
+Generally, changes to these interfaces should be infrequent, and some effort
+will be made to address compatibility considerations when changing or removing
+such interfaces.
+However, there is no firm commitment to the preservation of the interface.
+Most often this is applied to interfaces where operational experience with the
+interface is still limited and some need to change may be anticipated.
+.Pp
+Consumers should expect to revalidate any
+.Nm Uncommitted
+interfaces when crossing release boundaries.
+Products intended for use on many releases or intended to support compatibility
+with future releases should avoid these interfaces.
+.It Nm Volatile
+The interface can change at any time for any reason.
+Often this relates to interfaces that are part of external software components
+that are still evolving rapidly.
+Consumers should not expect that the interface (either binary or source level)
+will be unchanged from one release to the next.
+.It Nm Not-an-Interface
+Describes something that is specifically not intended for programmatic
+consumption.
+For example, specific human-readable output, or the layout of graphical items on
+a user interface, may be described this way.
+Generally programmatic alternatives to these will be available, and should be
+used when programmatic consumption is needed.
+.It Nm Private
+This is an internal interface.
+Generally these interfaces should only be used within the project, and should
+not be used by other programs or modules.
+The interface can and will change without notice as the project needs, at any
+time.
+.Pp
+Most often, Private interfaces will lack any documentation whatsoever, and
+generally any undocumented interface can be assumed to be Private.
+.It Nm Obsolete
+The interface is not intended for use in new projects or programs, and may
+be removed at a future date.
+The
+.Nm Obsolete
+word is a modifier that can
+be applied to other commitment levels.
+For example an
+.Nm Obsolete Committed
+interface is unlikely to be removed or changed, but nonetheless new use
+is discouraged (perhaps a better newer alternative is present).
+.El
+.It Em MT-LEVEL
+This section describes considerations for the interface when used within
+programs that use multiple threads.
+More discussion of these considerations is made in the MT-Level section of
+.Xr attributes 7 .
+The interface can be described in the following ways.
+.Bl -tag -width Ds
+.It Nm Safe
+Indicates the interface is safe for use within multiple threads.
+There may be additional caveats that apply, in which case those will be
+described.
+Note that some interfaces have semantics which may affect other threads, but
+these should be an intrinsic part of the interface rather than an unexpected
+side effect.
+For example, closing a file in one thread will cause that file to be closed in
+all threads.
+.It Nm Unsafe
+Indicates the interface is unsuitable for concurrent use within multiple
+threads.
+A threaded application may still make use of the interface, but will be required
+to provide external synchronization means to ensure that only a single thread
+calls the interface at a time.
+.It Nm MT-Safe
+Indicates that the interface is not only safe for concurrent use, but is
+designed for such use.
+For example, a
+.Nm Safe
+interface may make use of a global lock to provide safety, but at reduced
+internal concurrency, whereas an
+.Nm MT-Safe
+interface will be designed to be efficient even when used concurrently.
+.It Nm Async-Signal-Safe
+Indicates that the library is safe for use within a signal handler.
+An
+.Nm MT-Safe
+interface can be made
+.Nm Async-Signal-Safe
+by ensuring that it blocks signals when acquiring locks.
+.It Nm Safe with Exceptions
+As for
+.Nm Safe
+but with specific exceptions noted.
+.It Nm MT-Safe with Exceptions
+As for
+.Nm MT-Safe
+but with specific exceptions noted.
+.El
+.It Em SECURITY
+Documents any security precautions that operators should consider.
+.It Em SEE ALSO
+References other manuals with related topics.
+This section should exist for most manuals.
+Cross-references should conventionally be ordered first by section, then
+alphabetically (ignoring case).
+.Pp
+References to other documentation concerning the topic of the manual page,
+for example authoritative books or journal articles, may also be
+provided in this section.
+.Pp
+See
+.Ic \&Rs
+and
+.Ic \&Xr .
+.It Em STANDARDS
+References any standards implemented or used.
+If not adhering to any standards, the
+.Em HISTORY
+section should be used instead.
+.Pp
+See
+.Ic \&St .
+.It Em HISTORY
+A brief history of the subject, including where it was first implemented,
+and when it was ported to or reimplemented for the operating system at hand.
+.It Em AUTHORS
+Credits to the person or persons who wrote the code and/or documentation.
+Authors should generally be noted by both name and email address.
+.Pp
+See
+.Ic \&An .
+.It Em CAVEATS
+Common misuses and misunderstandings should be explained
+in this section.
+.It Em BUGS
+Known bugs, limitations, and work-arounds should be described
+in this section.
+.El
+.Sh MACRO OVERVIEW
+This overview is sorted such that macros of similar purpose are listed
+together, to help find the best macro for any given purpose.
+Deprecated macros are not included in the overview, but can be found below
+in the alphabetical
+.Sx MACRO REFERENCE .
+.Ss Document preamble and NAME section macros
+.Bl -column "Brq, Bro, Brc" description
+.It Ic \&Dd Ta document date: Cm $\&Mdocdate$ | Ar month day , year
+.It Ic \&Dt Ta document title: Ar TITLE section Op Ar arch
+.It Ic \&Os Ta operating system version: Op Ar system Op Ar version
+.It Ic \&Nm Ta document name (one argument)
+.It Ic \&Nd Ta document description (one line)
+.El
+.Ss Sections and cross references
+.Bl -column "Brq, Bro, Brc" description
+.It Ic \&Sh Ta section header (one line)
+.It Ic \&Ss Ta subsection header (one line)
+.It Ic \&Sx Ta internal cross reference to a section or subsection
+.It Ic \&Xr Ta cross reference to another manual page: Ar name section
+.It Ic \&Tg Ta tag the definition of a Ar term Pq <= 1 arguments
+.It Ic \&Pp Ta start a text paragraph (no arguments)
+.El
+.Ss Displays and lists
+.Bl -column "Brq, Bro, Brc" description
+.It Ic \&Bd , \&Ed Ta display block:
+.Fl Ar type
+.Op Fl offset Ar width
+.Op Fl compact
+.It Ic \&D1 Ta indented display (one line)
+.It Ic \&Dl Ta indented literal display (one line)
+.It Ic \&Ql Ta in-line literal display: Ql text
+.It Ic \&Bl , \&El Ta list block:
+.Fl Ar type
+.Op Fl width Ar val
+.Op Fl offset Ar val
+.Op Fl compact
+.It Ic \&It Ta list item (syntax depends on Fl Ar type )
+.It Ic \&Ta Ta table cell separator in Ic \&Bl Fl column No lists
+.It Ic \&Rs , \&%* , \&Re Ta bibliographic block (references)
+.El
+.Ss Spacing control
+.Bl -column "Brq, Bro, Brc" description
+.It Ic \&Pf Ta prefix, no following horizontal space (one argument)
+.It Ic \&Ns Ta roman font, no preceding horizontal space (no arguments)
+.It Ic \&Ap Ta apostrophe without surrounding whitespace (no arguments)
+.It Ic \&Sm Ta switch horizontal spacing mode: Op Cm on | off
+.It Ic \&Bk , \&Ek Ta keep block: Fl words
+.El
+.Ss Semantic markup for command line utilities
+.Bl -column "Brq, Bro, Brc" description
+.It Ic \&Nm Ta start a SYNOPSIS block with the name of a utility
+.It Ic \&Fl Ta command line options (flags) (>=0 arguments)
+.It Ic \&Cm Ta command modifier (>0 arguments)
+.It Ic \&Ar Ta command arguments (>=0 arguments)
+.It Ic \&Op , \&Oo , \&Oc Ta optional syntax elements (enclosure)
+.It Ic \&Ic Ta internal or interactive command (>0 arguments)
+.It Ic \&Ev Ta environmental variable (>0 arguments)
+.It Ic \&Pa Ta file system path (>=0 arguments)
+.El
+.Ss Semantic markup for function libraries
+.Bl -column "Brq, Bro, Brc" description
+.It Ic \&Lb Ta function library (one argument)
+.It Ic \&In Ta include file (one argument)
+.It Ic \&Fd Ta other preprocessor directive (>0 arguments)
+.It Ic \&Ft Ta function type (>0 arguments)
+.It Ic \&Fo , \&Fc Ta function block: Ar funcname
+.It Ic \&Fn Ta function name: Ar funcname Op Ar argument ...
+.It Ic \&Fa Ta function argument (>0 arguments)
+.It Ic \&Vt Ta variable type (>0 arguments)
+.It Ic \&Va Ta variable name (>0 arguments)
+.It Ic \&Dv Ta defined variable or preprocessor constant (>0 arguments)
+.It Ic \&Er Ta error constant (>0 arguments)
+.It Ic \&Ev Ta environmental variable (>0 arguments)
+.El
+.Ss Various semantic markup
+.Bl -column "Brq, Bro, Brc" description
+.It Ic \&An Ta author name (>0 arguments)
+.It Ic \&Lk Ta hyperlink: Ar uri Op Ar display_name
+.It Ic \&Mt Ta Do mailto Dc hyperlink: Ar localpart Ns @ Ns Ar domain
+.It Ic \&Cd Ta kernel configuration declaration (>0 arguments)
+.It Ic \&Ad Ta memory address (>0 arguments)
+.It Ic \&Ms Ta mathematical symbol (>0 arguments)
+.El
+.Ss Physical markup
+.Bl -column "Brq, Bro, Brc" description
+.It Ic \&Em Ta italic font or underline (emphasis) (>0 arguments)
+.It Ic \&Sy Ta boldface font (symbolic) (>0 arguments)
+.It Ic \&No Ta return to roman font (normal) (>0 arguments)
+.It Ic \&Bf , \&Ef Ta font block: Fl Ar type | Cm \&Em | \&Li | \&Sy
+.El
+.Ss Physical enclosures
+.Bl -column "Brq, Bro, Brc" description
+.It Ic \&Dq , \&Do , \&Dc Ta enclose in typographic double quotes: Dq text
+.It Ic \&Qq , \&Qo , \&Qc Ta enclose in typewriter double quotes: Qq text
+.It Ic \&Sq , \&So , \&Sc Ta enclose in single quotes: Sq text
+.It Ic \&Pq , \&Po , \&Pc Ta enclose in parentheses: Pq text
+.It Ic \&Bq , \&Bo , \&Bc Ta enclose in square brackets: Bq text
+.It Ic \&Brq , \&Bro , \&Brc Ta enclose in curly braces: Brq text
+.It Ic \&Aq , \&Ao , \&Ac Ta enclose in angle brackets: Aq text
+.It Ic \&Eo , \&Ec Ta generic enclosure
+.El
+.Ss Text production
+.Bl -column "Brq, Bro, Brc" description
+.It Ic \&Ex Fl std Ta standard command exit values: Op Ar utility ...
+.It Ic \&Rv Fl std Ta standard function return values: Op Ar function ...
+.It Ic \&St Ta reference to a standards document (one argument)
+.It Ic \&At Ta At
+.It Ic \&Bx Ta Bx
+.It Ic \&Bsx Ta Bsx
+.It Ic \&Nx Ta Nx
+.It Ic \&Fx Ta Fx
+.It Ic \&Ox Ta Ox
+.It Ic \&Dx Ta Dx
+.El
+.Sh MACRO REFERENCE
+This section is a canonical reference of all macros, arranged
+alphabetically.
+For the scoping of individual macros, see
+.Sx MACRO SYNTAX .
+.Bl -tag -width 3n
+.It Ic \&%A Ar first_name ... last_name
+Author name of an
+.Ic \&Rs
+block.
+Multiple authors should each be accorded their own
+.Ic \%%A
+line.
+Author names should be ordered with full or abbreviated forename(s)
+first, then full surname.
+.It Ic \&%B Ar title
+Book title of an
+.Ic \&Rs
+block.
+This macro may also be used in a non-bibliographic context when
+referring to book titles.
+.It Ic \&%C Ar location
+Publication city or location of an
+.Ic \&Rs
+block.
+.It Ic \&%D Oo Ar month day , Oc Ar year
+Publication date of an
+.Ic \&Rs
+block.
+Provide the full English name of the
+.Ar month
+and all four digits of the
+.Ar year .
+.It Ic \&%I Ar name
+Publisher or issuer name of an
+.Ic \&Rs
+block.
+.It Ic \&%J Ar name
+Journal name of an
+.Ic \&Rs
+block.
+.It Ic \&%N Ar number
+Issue number (usually for journals) of an
+.Ic \&Rs
+block.
+.It Ic \&%O Ar line
+Optional information of an
+.Ic \&Rs
+block.
+.It Ic \&%P Ar number
+Book or journal page number of an
+.Ic \&Rs
+block.
+Conventionally, the argument starts with
+.Ql p.\&
+for a single page or
+.Ql pp.\&
+for a range of pages, for example:
+.Pp
+.Dl .%P pp. 42\e(en47
+.It Ic \&%Q Ar name
+Institutional author (school, government, etc.) of an
+.Ic \&Rs
+block.
+Multiple institutional authors should each be accorded their own
+.Ic \&%Q
+line.
+.It Ic \&%R Ar name
+Technical report name of an
+.Ic \&Rs
+block.
+.It Ic \&%T Ar title
+Article title of an
+.Ic \&Rs
+block.
+This macro may also be used in a non-bibliographical context when
+referring to article titles.
+.It Ic \&%U Ar protocol Ns :// Ns Ar path
+URI of reference document.
+.It Ic \&%V Ar number
+Volume number of an
+.Ic \&Rs
+block.
+.It Ic \&Ac
+Close an
+.Ic \&Ao
+block.
+Does not have any tail arguments.
+.Tg Ad
+.It Ic \&Ad Ar address
+Memory address.
+Do not use this for postal addresses.
+.Pp
+Examples:
+.Dl \&.Ad [0,$]
+.Dl \&.Ad 0x00000000
+.Tg An
+.It Ic \&An Fl split | nosplit | Ar first_name ... last_name
+Author name.
+Can be used both for the authors of the program, function, or driver
+documented in the manual, or for the authors of the manual itself.
+Requires either the name of an author or one of the following arguments:
+.Pp
+.Bl -tag -width "-nosplitX" -offset indent -compact
+.It Fl split
+Start a new output line before each subsequent invocation of
+.Ic \&An .
+.It Fl nosplit
+The opposite of
+.Fl split .
+.El
+.Pp
+The default is
+.Fl nosplit .
+The effect of selecting either of the
+.Fl split
+modes ends at the beginning of the
+.Em AUTHORS
+section.
+In the
+.Em AUTHORS
+section, the default is
+.Fl nosplit
+for the first author listing and
+.Fl split
+for all other author listings.
+.Pp
+Examples:
+.Dl \&.An -nosplit
+.Dl \&.An Kristaps Dzonsons \&Aq \&Mt kristaps@bsd.lv
+.It Ic \&Ao Ar block
+Begin a block enclosed by angle brackets.
+Does not have any head arguments.
+This macro is almost never useful.
+See
+.Ic \&Aq
+for more details.
+.Tg Ap
+.It Ic \&Ap
+Inserts an apostrophe without any surrounding whitespace.
+This is generally used as a grammatical device when referring to the verb
+form of a function.
+.Pp
+Examples:
+.Dl \&.Fn execve \&Ap d
+.Tg Aq
+.It Ic \&Aq Ar line
+Enclose the rest of the input line in angle brackets.
+The only important use case is for email addresses.
+See
+.Ic \&Mt
+for an example.
+.Pp
+Occasionally, it is used for names of characters and keys, for example:
+.Bd -literal -offset indent
+Press the
+\&.Aq escape
+key to ...
+.Ed
+.Pp
+For URIs, use
+.Ic \&Lk
+instead, and
+.Ic \&In
+for
+.Dq #include
+directives.
+Never wrap
+.Ic \&Ar
+in
+.Ic \&Aq .
+.Pp
+Since
+.Ic \&Aq
+usually renders with non-ASCII characters in non-ASCII output modes,
+do not use it where the ASCII characters
+.Sq <
+and
+.Sq >
+are required as syntax elements.
+Instead, use these characters directly in such cases, combining them
+with the macros
+.Ic \&Pf ,
+.Ic \&Ns ,
+or
+.Ic \&Eo
+as needed.
+.Pp
+See also
+.Ic \&Ao .
+.Tg Ar
+.It Ic \&Ar Op Ar placeholder ...
+Command arguments.
+If an argument is not provided, the string
+.Dq file ...\&
+is used as a default.
+.Pp
+Examples:
+.Dl ".Fl o Ar file"
+.Dl ".Ar"
+.Dl ".Ar arg1 , arg2 ."
+.Pp
+The arguments to the
+.Ic \&Ar
+macro are names and placeholders for command arguments;
+for fixed strings to be passed verbatim as arguments, use
+.Ic \&Fl
+or
+.Ic \&Cm .
+.Tg At
+.It Ic \&At Op Ar version
+Formats an
+.At
+version.
+Accepts one optional argument:
+.Pp
+.Bl -tag -width "v[1-7] | 32vX" -offset indent -compact
+.It Cm v[1-7] | 32v
+A version of
+.At .
+.It Cm III
+.At III .
+.It Cm V | V.[1-4]
+A version of
+.At V .
+.El
+.Pp
+Note that these arguments do not begin with a hyphen.
+.Pp
+Examples:
+.Dl \&.At
+.Dl \&.At III
+.Dl \&.At V.1
+.Pp
+See also
+.Ic \&Bsx ,
+.Ic \&Bx ,
+.Ic \&Dx ,
+.Ic \&Fx ,
+.Ic \&Nx ,
+and
+.Ic \&Ox .
+.It Ic \&Bc
+Close a
+.Ic \&Bo
+block.
+Does not have any tail arguments.
+.Tg Bd
+.It Ic \&Bd Fl Ns Ar type Oo Fl offset Ar width Oc Op Fl compact
+Begin a display block.
+Display blocks are used to select a different indentation and
+justification than the one used by the surrounding text.
+They may contain both macro lines and text lines.
+By default, a display block is preceded by a vertical space.
+.Pp
+The
+.Ar type
+must be one of the following:
+.Bl -tag -width 13n -offset indent
+.It Fl centered
+Produce one output line from each input line, and center-justify each line.
+Using this display type is not recommended; many
+.Nm
+implementations render it poorly.
+.It Fl filled
+Change the positions of line breaks to fill each line, and left- and
+right-justify the resulting block.
+.It Fl literal
+Produce one output line from each input line,
+and do not justify the block at all.
+Preserve white space as it appears in the input.
+Always use a constant-width font.
+Use this for displaying source code.
+.It Fl ragged
+Change the positions of line breaks to fill each line, and left-justify
+the resulting block.
+.It Fl unfilled
+The same as
+.Fl literal ,
+but using the same font as for normal text, which is a variable width font
+if supported by the output device.
+.El
+.Pp
+The
+.Ar type
+must be provided first.
+Additional arguments may follow:
+.Bl -tag -width 13n -offset indent
+.It Fl offset Ar width
+Indent the display by the
+.Ar width ,
+which may be one of the following:
+.Bl -item
+.It
+One of the pre-defined strings
+.Cm indent ,
+the width of a standard indentation (six constant width characters);
+.Cm indent-two ,
+twice
+.Cm indent ;
+.Cm left ,
+which has no effect;
+.Cm right ,
+which justifies to the right margin; or
+.Cm center ,
+which aligns around an imagined center axis.
+.It
+A macro invocation, which selects a predefined width
+associated with that macro.
+The most popular is the imaginary macro
+.Ar \&Ds ,
+which resolves to
+.Sy 6n .
+.It
+A scaling width as described in
+.Xr mandoc_roff 7 .
+.It
+An arbitrary string, which indents by the length of this string.
+.El
+.Pp
+When the argument is missing,
+.Fl offset
+is ignored.
+.It Fl compact
+Do not assert vertical space before the display.
+.El
+.Pp
+Examples:
+.Bd -literal -offset indent
+\&.Bd \-literal \-offset indent \-compact
+ Hello world.
+\&.Ed
+.Ed
+.Pp
+See also
+.Ic \&D1
+and
+.Ic \&Dl .
+.Tg Bf
+.It Ic \&Bf Fl emphasis | literal | symbolic | Cm \&Em | \&Li | \&Sy
+Change the font mode for a scoped block of text.
+The
+.Fl emphasis
+and
+.Cm \&Em
+argument are equivalent, as are
+.Fl symbolic
+and
+.Cm \&Sy ,
+and
+.Fl literal
+and
+.Cm \&Li .
+Without an argument, this macro does nothing.
+The font mode continues until broken by a new font mode in a nested
+scope or
+.Ic \&Ef
+is encountered.
+.Pp
+See also
+.Ic \&Li ,
+.Ic \&Ef ,
+.Ic \&Em ,
+and
+.Ic \&Sy .
+.Tg Bk
+.It Ic \&Bk Fl words
+For each macro, keep its output together on the same output line,
+until the end of the macro or the end of the input line is reached,
+whichever comes first.
+Line breaks in text lines are unaffected.
+.Pp
+The
+.Fl words
+argument is required; additional arguments are ignored.
+.Pp
+The following example will not break within each
+.Ic \&Op
+macro line:
+.Bd -literal -offset indent
+\&.Bk \-words
+\&.Op Fl f Ar flags
+\&.Op Fl o Ar output
+\&.Ek
+.Ed
+.Pp
+Be careful in using over-long lines within a keep block!
+Doing so will clobber the right margin.
+.Tg Bl
+.It Xo
+.Ic \&Bl
+.Fl Ns Ar type
+.Op Fl width Ar val
+.Op Fl offset Ar val
+.Op Fl compact
+.Op Ar col ...
+.Xc
+Begin a list.
+Lists consist of items specified using the
+.Ic \&It
+macro, containing a head or a body or both.
+.Pp
+The list
+.Ar type
+is mandatory and must be specified first.
+The
+.Fl width
+and
+.Fl offset
+arguments accept macro names as described for
+.Ic \&Bd
+.Fl offset ,
+scaling widths as described in
+.Xr mandoc_roff 7 ,
+or use the length of the given string.
+The
+.Fl offset
+is a global indentation for the whole list, affecting both item heads
+and bodies.
+For those list types supporting it, the
+.Fl width
+argument requests an additional indentation of item bodies,
+to be added to the
+.Fl offset .
+Unless the
+.Fl compact
+argument is specified, list entries are separated by vertical space.
+.Pp
+A list must specify one of the following list types:
+.Bl -tag -width 12n -offset indent
+.It Fl bullet
+No item heads can be specified, but a bullet will be printed at the head
+of each item.
+Item bodies start on the same output line as the bullet
+and are indented according to the
+.Fl width
+argument.
+.It Fl column
+A columnated list.
+The
+.Fl width
+argument has no effect; instead, the string length of each argument
+specifies the width of one column.
+If the first line of the body of a
+.Fl column
+list is not an
+.Ic \&It
+macro line,
+.Ic \&It
+contexts spanning one input line each are implied until an
+.Ic \&It
+macro line is encountered, at which point items start being interpreted as
+described in the
+.Ic \&It
+documentation.
+.It Fl dash
+Like
+.Fl bullet ,
+except that dashes are used in place of bullets.
+.It Fl diag
+Like
+.Fl inset ,
+except that item heads are not parsed for macro invocations.
+Most often used in the
+.Em DIAGNOSTICS
+section with error constants in the item heads.
+.It Fl enum
+A numbered list.
+No item heads can be specified.
+Formatted like
+.Fl bullet ,
+except that cardinal numbers are used in place of bullets,
+starting at 1.
+.It Fl hang
+Like
+.Fl tag ,
+except that the first lines of item bodies are not indented, but follow
+the item heads like in
+.Fl inset
+lists.
+.It Fl hyphen
+Synonym for
+.Fl dash .
+.It Fl inset
+Item bodies follow items heads on the same line, using normal inter-word
+spacing.
+Bodies are not indented, and the
+.Fl width
+argument is ignored.
+.It Fl item
+No item heads can be specified, and none are printed.
+Bodies are not indented, and the
+.Fl width
+argument is ignored.
+.It Fl ohang
+Item bodies start on the line following item heads and are not indented.
+The
+.Fl width
+argument is ignored.
+.It Fl tag
+Item bodies are indented according to the
+.Fl width
+argument.
+When an item head fits inside the indentation, the item body follows
+this head on the same output line.
+Otherwise, the body starts on the output line following the head.
+.El
+.Pp
+Lists may be nested within lists and displays.
+Nesting of
+.Fl column
+and
+.Fl enum
+lists may not be portable.
+.Pp
+See also
+.Ic \&El
+and
+.Ic \&It .
+.It Ic \&Bo Ar block
+Begin a block enclosed by square brackets.
+Does not have any head arguments.
+.Pp
+Examples:
+.Bd -literal -offset indent -compact
+\&.Bo 1 ,
+\&.Dv BUFSIZ \&Bc
+.Ed
+.Pp
+See also
+.Ic \&Bq .
+.Tg Bq
+.It Ic \&Bq Ar line
+Encloses its arguments in square brackets.
+.Pp
+Examples:
+.Dl \&.Bq 1 , \&Dv BUFSIZ
+.Pp
+.Em Remarks :
+this macro is sometimes abused to emulate optional arguments for
+commands; the correct macros to use for this purpose are
+.Ic \&Op ,
+.Ic \&Oo ,
+and
+.Ic \&Oc .
+.Pp
+See also
+.Ic \&Bo .
+.It Ic \&Brc
+Close a
+.Ic \&Bro
+block.
+Does not have any tail arguments.
+.It Ic \&Bro Ar block
+Begin a block enclosed by curly braces.
+Does not have any head arguments.
+.Pp
+Examples:
+.Bd -literal -offset indent -compact
+\&.Bro 1 , ... ,
+\&.Va n \&Brc
+.Ed
+.Pp
+See also
+.Ic \&Brq .
+.Tg Brq
+.It Ic \&Brq Ar line
+Encloses its arguments in curly braces.
+.Pp
+Examples:
+.Dl \&.Brq 1 , ... , \&Va n
+.Pp
+See also
+.Ic \&Bro .
+.Tg Bsx
+.It Ic \&Bsx Op Ar version
+Format the
+.Bsx
+version provided as an argument, or a default value if
+no argument is provided.
+.Pp
+Examples:
+.Dl \&.Bsx 1.0
+.Dl \&.Bsx
+.Pp
+See also
+.Ic \&At ,
+.Ic \&Bx ,
+.Ic \&Dx ,
+.Ic \&Fx ,
+.Ic \&Nx ,
+and
+.Ic \&Ox .
+.It Ic \&Bt
+Supported only for compatibility, do not use this in new manuals.
+Prints
+.Dq is currently in beta test.
+.Tg Bx
+.It Ic \&Bx Op Ar version Op Ar variant
+Format the
+.Bx
+version provided as an argument, or a default value if no
+argument is provided.
+.Pp
+Examples:
+.Dl \&.Bx 4.3 Tahoe
+.Dl \&.Bx 4.4
+.Dl \&.Bx
+.Pp
+See also
+.Ic \&At ,
+.Ic \&Bsx ,
+.Ic \&Dx ,
+.Ic \&Fx ,
+.Ic \&Nx ,
+and
+.Ic \&Ox .
+.Tg Cd
+.It Ic \&Cd Ar line
+Kernel configuration declaration.
+It is found in pages for
+.Bx
+and not used here.
+.Pp
+Examples:
+.Dl \&.Cd device le0 at scode?
+.Pp
+.Em Remarks :
+this macro is commonly abused by using quoted literals to retain
+whitespace and align consecutive
+.Ic \&Cd
+declarations.
+This practise is discouraged.
+.Tg Cm
+.It Ic \&Cm Ar keyword ...
+Command modifiers.
+Typically used for fixed strings passed as arguments to interactive
+commands, to commands in interpreted scripts, or to configuration
+file directives, unless
+.Ic \&Fl
+is more appropriate.
+Also useful when specifying configuration options or keys.
+.Pp
+Examples:
+.Dl ".Nm mt Fl f Ar device Cm rewind"
+.Dl ".Nm ps Fl o Cm pid , Ns Cm command"
+.Dl ".Nm dd Cm if= Ns Ar file1 Cm of= Ns Ar file2"
+.Dl ".Ic set Fl o Cm vi"
+.Dl ".Ic lookup Cm file bind"
+.Dl ".Ic permit Ar identity Op Cm as Ar target"
+.Tg D1
+.It Ic \&D1 Ar line
+One-line indented display.
+This is formatted by the default rules and is useful for simple indented
+statements.
+It is followed by a newline.
+.Pp
+Examples:
+.Dl \&.D1 \&Fl abcdefgh
+.Pp
+See also
+.Ic \&Bd
+and
+.Ic \&Dl .
+.It Ic \&Db
+This macro is obsolete.
+No replacement is needed.
+It is ignored by
+.Xr mandoc 1
+and groff including its arguments.
+It was formerly used to toggle a debugging mode.
+.It Ic \&Dc
+Close a
+.Ic \&Do
+block.
+Does not have any tail arguments.
+.Tg Dd
+.It Ic \&Dd Cm $\&Mdocdate$ | Ar month day , year
+Document date for display in the page footer,
+by convention the date of the last change.
+This is the mandatory first macro of any
+.Nm
+manual.
+.Pp
+The
+.Ar month
+is the full English month name, the
+.Ar day
+is an integer number, and the
+.Ar year
+is the full four-digit year.
+.Pp
+Other arguments are not portable; the
+.Xr mandoc 1
+utility handles them as follows:
+.Bl -dash -offset 3n -compact
+.It
+To have the date automatically filled in by the
+.Ox
+version of
+.Xr cvs 1 ,
+the special string
+.Dq $\&Mdocdate$
+can be given as an argument.
+.It
+The traditional, purely numeric
+.Xr man 7
+format
+.Ar year Ns \(en Ns Ar month Ns \(en Ns Ar day
+is accepted, too.
+.It
+If a date string cannot be parsed, it is used verbatim.
+.It
+If no date string is given, the current date is used.
+.El
+.Pp
+Examples:
+.Dl \&.Dd $\&Mdocdate$
+.Dl \&.Dd $\&Mdocdate: July 2 2018$
+.Dl \&.Dd July 2, 2018
+.Pp
+See also
+.Ic \&Dt
+and
+.Ic \&Os .
+.Tg Dl
+.It Ic \&Dl Ar line
+One-line indented display.
+This is formatted as literal text and is useful for commands and
+invocations.
+It is followed by a newline.
+.Pp
+Examples:
+.Dl \&.Dl % mandoc mdoc.5 \e(ba less
+.Pp
+See also
+.Ic \&Ql ,
+.Ic \&Bd Fl literal ,
+and
+.Ic \&D1 .
+.It Ic \&Do Ar block
+Begin a block enclosed by double quotes.
+Does not have any head arguments.
+.Pp
+Examples:
+.Bd -literal -offset indent -compact
+\&.Do
+April is the cruellest month
+\&.Dc
+\e(em T.S. Eliot
+.Ed
+.Pp
+See also
+.Ic \&Dq .
+.Tg Dq
+.It Ic \&Dq Ar line
+Encloses its arguments in
+.Dq typographic
+double-quotes.
+.Pp
+Examples:
+.Bd -literal -offset indent -compact
+\&.Dq April is the cruellest month
+\e(em T.S. Eliot
+.Ed
+.Pp
+See also
+.Ic \&Qq ,
+.Ic \&Sq ,
+and
+.Ic \&Do .
+.Tg Dt
+.It Ic \&Dt Ar TITLE section Op Ar arch
+Document title for display in the page header.
+This is the mandatory second macro of any
+.Nm
+file.
+.Pp
+Its arguments are as follows:
+.Bl -tag -width section -offset 2n
+.It Ar TITLE
+The document's title (name), defaulting to
+.Dq UNTITLED
+if unspecified.
+To achieve a uniform appearance of page header lines,
+it should by convention be all caps.
+.It Ar SECTION
+The manual section.
+It should correspond to the manual's filename suffix and defaults to
+the empty string if unspecified.
+This field is optional.
+To achieve a uniform appearance of page header lines,
+it should by convention be all caps.
+.It Ar arch
+This specifies the machine architecture a manual page applies to,
+where relevant.
+.El
+.It Ic \&Dv
+Defined variables such as preprocessor constants, constant symbols,
+enumeration values, and so on.
+.Pp
+Examples:
+.Dl \&.Dv NULL
+.Dl \&.Dv BUFSIZ
+.Dl \&.Dv STDOUT_FILENO
+.Pp
+See also
+.Ic \&Er
+and
+.Ic \&Ev
+for special-purpose constants,
+.Ic \&Va
+for variable symbols, and
+.Ic \&Fd
+for listing preprocessor variable definitions in the
+.Em SYNOPSIS .
+.Tg Dx
+.It Ic \&Dx Op Ar version
+Format the
+.Dx
+version provided as an argument, or a default
+value if no argument is provided.
+.Pp
+Examples:
+.Dl \&.Dx 2.4.1
+.Dl \&.Dx
+.Pp
+See also
+.Ic \&At ,
+.Ic \&Bsx ,
+.Ic \&Bx ,
+.Ic \&Fx ,
+.Ic \&Nx ,
+and
+.Ic \&Ox .
+.It Ic \&Ec Op Ar closing_delimiter
+Close a scope started by
+.Ic \&Eo .
+.Pp
+The
+.Ar closing_delimiter
+argument is used as the enclosure tail, for example, specifying \e(rq
+will emulate
+.Ic \&Dc .
+.It Ic \&Ed
+End a display context started by
+.Ic \&Bd .
+.It Ic \&Ef
+End a font mode context started by
+.Ic \&Bf .
+.It Ic \&Ek
+End a keep context started by
+.Ic \&Bk .
+.It Ic \&El
+End a list context started by
+.Ic \&Bl .
+See also
+.Ic \&It .
+.Tg Em
+.It Ic \&Em Ar word ...
+Request an italic font.
+If the output device does not provide that, underline.
+.Pp
+This is most often used for stress emphasis (not to be confused with
+importance, see
+.Ic \&Sy ) .
+In the rare cases where none of the semantic markup macros fit,
+it can also be used for technical terms and placeholders, except
+that for syntax elements,
+.Ic \&Sy
+and
+.Ic \&Ar
+are preferred, respectively.
+.Pp
+Examples:
+.Bd -literal -compact -offset indent
+Selected lines are those
+\&.Em not
+matching any of the specified patterns.
+Some of the functions use a
+\&.Em hold space
+to save the pattern space for subsequent retrieval.
+.Ed
+.Pp
+See also
+.Ic \&No ,
+.Ic \&Ql ,
+and
+.Ic \&Sy .
+.It Ic \&En Ar word ...
+This macro is obsolete.
+Use
+.Ic \&Eo
+or any of the other enclosure macros.
+.Pp
+It encloses its argument in the delimiters specified by the last
+.Ic \&Es
+macro.
+.Tg Eo
+.It Ic \&Eo Op Ar opening_delimiter
+An arbitrary enclosure.
+The
+.Ar opening_delimiter
+argument is used as the enclosure head, for example, specifying \e(lq
+will emulate
+.Ic \&Do .
+.Tg Er
+.It Ic \&Er Ar identifier ...
+Error constants for definitions of the
+.Va errno
+libc global variable.
+This is most often used in section 2 and 3 manual pages.
+.Pp
+Examples:
+.Dl \&.Er EPERM
+.Dl \&.Er ENOENT
+.Pp
+See also
+.Ic \&Dv
+for general constants.
+.It Ic \&Es Ar opening_delimiter closing_delimiter
+This macro is obsolete.
+Use
+.Ic \&Eo
+or any of the other enclosure macros.
+.Pp
+It takes two arguments, defining the delimiters to be used by subsequent
+.Ic \&En
+macros.
+.Tg Ev
+.It Ic \&Ev Ar identifier ...
+Environmental variables such as those specified in
+.Xr environ 7 .
+.Pp
+Examples:
+.Dl \&.Ev DISPLAY
+.Dl \&.Ev PATH
+.Pp
+See also
+.Ic \&Dv
+for general constants.
+.Tg Ex
+.It Ic \&Ex Fl std Op Ar utility ...
+Insert a standard sentence regarding command exit values of 0 on success
+and >0 on failure.
+This is most often used in section 1 and 8 manual pages.
+.Pp
+If
+.Ar utility
+is not specified, the document's name set by
+.Ic \&Nm
+is used.
+Multiple
+.Ar utility
+arguments are treated as separate utilities.
+.Pp
+See also
+.Ic \&Rv .
+.Tg Fa
+.It Ic \&Fa Ar argument ...
+Function argument or parameter.
+Each argument may be a name and a type (recommended for the
+.Em SYNOPSIS
+section), a name alone (for function invocations),
+or a type alone (for function prototypes).
+If both a type and a name are given or if the type consists of multiple
+words, all words belonging to the same function argument have to be
+given in a single argument to the
+.Ic \&Fa
+macro.
+.Pp
+This macro is also used to specify the field name of a structure.
+.Pp
+Most often, the
+.Ic \&Fa
+macro is used in the
+.Em SYNOPSIS
+within
+.Ic \&Fo
+blocks when documenting multi-line function prototypes.
+If invoked with multiple arguments, the arguments are separated by a
+comma.
+Furthermore, if the following macro is another
+.Ic \&Fa ,
+the last argument will also have a trailing comma.
+.Pp
+Examples:
+.Dl \&.Fa \(dqconst char *p\(dq
+.Dl \&.Fa \(dqint a\(dq \(dqint b\(dq \(dqint c\(dq
+.Dl \&.Fa \(dqchar *\(dq size_t
+.Pp
+See also
+.Ic \&Fo .
+.It Ic \&Fc
+End a function context started by
+.Ic \&Fo .
+.Tg Fd
+.It Ic \&Fd Pf # Ar directive Op Ar argument ...
+Preprocessor directive, in particular for listing it in the
+.Em SYNOPSIS .
+Historically, it was also used to document include files.
+The latter usage has been deprecated in favour of
+.Ic \&In .
+.Pp
+Examples:
+.Dl \&.Fd #define sa_handler __sigaction_u.__sa_handler
+.Dl \&.Fd #define SIO_MAXNFDS
+.Dl \&.Fd #ifdef FS_DEBUG
+.Dl \&.Ft void
+.Dl \&.Fn dbg_open \(dqconst char *\(dq
+.Dl \&.Fd #endif
+.Pp
+See also
+.Sx MANUAL STRUCTURE ,
+.Ic \&In ,
+and
+.Ic \&Dv .
+.Tg Fl
+.It Ic \&Fl Op Ar word ...
+Command-line flag or option.
+Used when listing arguments to command-line utilities.
+For each argument, prints an ASCII hyphen-minus character
+.Sq \- ,
+immediately followed by the argument.
+If no arguments are provided, a hyphen-minus is printed followed by a space.
+If the argument is a macro, a hyphen-minus is prefixed
+to the subsequent macro output.
+.Pp
+Examples:
+.Dl ".Nm du Op Fl H | L | P"
+.Dl ".Nm ls Op Fl 1AaCcdFfgHhikLlmnopqRrSsTtux"
+.Dl ".Nm route Cm add Fl inet Ar destination gateway"
+.Dl ".Nm locate.updatedb Op Fl \e-fcodes Ns = Ns Ar dbfile"
+.Dl ".Nm aucat Fl o Fl"
+.Dl ".Nm kill Fl Ar signal_number"
+.Pp
+For GNU-sytle long options, escaping the additional hyphen-minus is not
+strictly required, but may be safer with future versions of GNU troff; see
+.Xr mandoc_char 7
+for details.
+.Pp
+See also
+.Ic \&Cm .
+.Tg Fn
+.It Ic \&Fn Ar funcname Op Ar argument ...
+A function name.
+.Pp
+Function arguments are surrounded in parenthesis and
+are delimited by commas.
+If no arguments are specified, blank parenthesis are output.
+In the
+.Em SYNOPSIS
+section, this macro starts a new output line,
+and a blank line is automatically inserted between function definitions.
+.Pp
+Examples:
+.Dl \&.Fn \(dqint funcname\(dq \(dqint arg0\(dq \(dqint arg1\(dq
+.Dl \&.Fn funcname \(dqint arg0\(dq
+.Dl \&.Fn funcname arg0
+.Bd -literal -offset indent
+\&.Ft functype
+\&.Fn funcname
+.Ed
+.Pp
+When referring to a function documented in another manual page, use
+.Ic \&Xr
+instead.
+See also
+.Sx MANUAL STRUCTURE ,
+.Ic \&Fo ,
+and
+.Ic \&Ft .
+.Tg Fo
+.It Ic \&Fo Ar funcname
+Begin a function block.
+This is a multi-line version of
+.Ic \&Fn .
+.Pp
+Invocations usually occur in the following context:
+.Bd -ragged -offset indent
+.Pf \. Ic \&Ft Ar functype
+.br
+.Pf \. Ic \&Fo Ar funcname
+.br
+.Pf \. Ic \&Fa Qq Ar argtype Ar argname
+.br
+\&.\.\.
+.br
+.Pf \. Ic \&Fc
+.Ed
+.Pp
+A
+.Ic \&Fo
+scope is closed by
+.Ic \&Fc .
+.Pp
+See also
+.Sx MANUAL STRUCTURE ,
+.Ic \&Fa ,
+.Ic \&Fc ,
+and
+.Ic \&Ft .
+.It Ic \&Fr Ar number
+This macro is obsolete.
+No replacement markup is needed.
+.Pp
+It was used to show numerical function return values in an italic font.
+.Tg Ft
+.It Ic \&Ft Ar functype
+A function type.
+.Pp
+In the
+.Em SYNOPSIS
+section, a new output line is started after this macro.
+.Pp
+Examples:
+.Dl \&.Ft int
+.Bd -literal -offset indent -compact
+\&.Ft functype
+\&.Fn funcname
+.Ed
+.Pp
+See also
+.Sx MANUAL STRUCTURE ,
+.Ic \&Fn ,
+and
+.Ic \&Fo .
+.Tg Fx
+.It Ic \&Fx Op Ar version
+Format the
+.Fx
+version provided as an argument, or a default value
+if no argument is provided.
+.Pp
+Examples:
+.Dl \&.Fx 7.1
+.Dl \&.Fx
+.Pp
+See also
+.Ic \&At ,
+.Ic \&Bsx ,
+.Ic \&Bx ,
+.Ic \&Dx ,
+.Ic \&Nx ,
+and
+.Ic \&Ox .
+.It Ic \&Hf Ar filename
+This macro is not implemented in
+.Xr mandoc 1 .
+It was used to include the contents of a (header) file literally.
+.Tg Ic
+.It Ic \&Ic Ar keyword ...
+Internal or interactive command, or configuration instruction
+in a configuration file.
+See also
+.Ic \&Cm .
+.Pp
+Examples:
+.Dl \&.Ic :wq
+.Dl \&.Ic hash
+.Dl \&.Ic alias
+.Pp
+Note that using
+.Ic \&Ql ,
+.Ic \&Dl ,
+or
+.Ic \&Bd Fl literal
+is preferred for displaying code samples; the
+.Ic \&Ic
+macro is used when referring to an individual command name.
+.Tg In
+.It Ic \&In Ar filename
+The name of an include file.
+This macro is most often used in section 2, 3, and 9 manual pages.
+.Pp
+When invoked as the first macro on an input line in the
+.Em SYNOPSIS
+section, the argument is displayed in angle brackets
+and preceded by
+.Qq #include ,
+and a blank line is inserted in front if there is a preceding
+function declaration.
+In other sections, it only encloses its argument in angle brackets
+and causes no line break.
+.Pp
+Examples:
+.Dl \&.In sys/types.h
+.Pp
+See also
+.Sx MANUAL STRUCTURE .
+.Tg It
+.It Ic \&It Op Ar head
+A list item.
+The syntax of this macro depends on the list type.
+.Pp
+Lists
+of type
+.Fl hang ,
+.Fl ohang ,
+.Fl inset ,
+and
+.Fl diag
+have the following syntax:
+.Pp
+.D1 Pf \. Ic \&It Ar args
+.Pp
+Lists of type
+.Fl bullet ,
+.Fl dash ,
+.Fl enum ,
+.Fl hyphen
+and
+.Fl item
+have the following syntax:
+.Pp
+.D1 Pf \. Ic \&It
+.Pp
+with subsequent lines interpreted within the scope of the
+.Ic \&It
+until either a closing
+.Ic \&El
+or another
+.Ic \&It .
+.Pp
+The
+.Fl tag
+list has the following syntax:
+.Pp
+.D1 Pf \. Ic \&It Op Cm args
+.Pp
+Subsequent lines are interpreted as with
+.Fl bullet
+and family.
+The line arguments correspond to the list's left-hand side; body
+arguments correspond to the list's contents.
+.Pp
+The
+.Fl column
+list is the most complicated.
+Its syntax is as follows:
+.Pp
+.D1 Pf \. Ic \&It Ar cell Op Ic \&Ta Ar cell ...
+.D1 Pf \. Ic \&It Ar cell Op <TAB> Ar cell ...
+.Pp
+The arguments consist of one or more lines of text and macros
+representing a complete table line.
+Cells within the line are delimited by the special
+.Ic \&Ta
+block macro or by literal tab characters.
+.Pp
+Using literal tabs is strongly discouraged because they are very
+hard to use correctly and
+.Nm
+code using them is very hard to read.
+In particular, a blank character is syntactically significant
+before and after the literal tab character.
+If a word precedes or follows the tab without an intervening blank,
+that word is never interpreted as a macro call, but always output
+literally.
+.Pp
+The tab cell delimiter may only be used within the
+.Ic \&It
+line itself; on following lines, only the
+.Ic \&Ta
+macro can be used to delimit cells, and portability requires that
+.Ic \&Ta
+is called by other macros: some parsers do not recognize it when
+it appears as the first macro on a line.
+.Pp
+Note that quoted strings may span tab-delimited cells on an
+.Ic \&It
+line.
+For example,
+.Pp
+.Dl .It \(dqcol1 ,\& <TAB> col2 ,\(dq \&;
+.Pp
+will preserve the whitespace before both commas,
+but not the whitespace before the semicolon.
+.Pp
+See also
+.Ic \&Bl .
+.Tg Lb
+.It Ic \&Lb Cm lib Ns Ar name
+Specify a library.
+.Pp
+The
+.Ar name
+parameter may be a system library, such as
+.Cm z
+or
+.Cm pam ,
+in which case a small library description is printed next to the linker
+invocation; or a custom library, in which case the library name is
+printed in quotes.
+This is most commonly used in the
+.Em SYNOPSIS
+section as described in
+.Sx MANUAL STRUCTURE .
+.Pp
+Examples:
+.Dl \&.Lb libz
+.Dl \&.Lb libmandoc
+.Tg Li
+.It Ic \&Li Ar word ...
+Request a typewriter (literal) font.
+Deprecated because on terminal output devices, this is usually
+indistinguishable from normal text.
+For literal displays, use
+.Ic \&Ql Pq in-line ,
+.Ic \&Dl Pq single line ,
+or
+.Ic \&Bd Fl literal Pq multi-line
+instead.
+.Tg Lk
+.It Ic \&Lk Ar uri Op Ar display_name
+Format a hyperlink.
+.Pp
+Examples:
+.Dl \&.Lk https://bsd.lv \(dqThe BSD.lv Project\(dq
+.Dl \&.Lk https://bsd.lv
+.Pp
+See also
+.Ic \&Mt .
+.It Ic \&Lp
+Deprecated synonym for
+.Ic \&Pp .
+.Tg Ms
+.It Ic \&Ms Ar name
+Display a mathematical symbol.
+.Pp
+Examples:
+.Dl \&.Ms sigma
+.Dl \&.Ms aleph
+.Tg Mt
+.It Ic \&Mt Ar localpart Ns @ Ns Ar domain
+Format a
+.Dq mailto:
+hyperlink.
+.Pp
+Examples:
+.Dl \&.Mt discuss@manpages.bsd.lv
+.Dl \&.An Kristaps Dzonsons \&Aq \&Mt kristaps@bsd.lv
+.Tg Nd
+.It Ic \&Nd Ar line
+A one line description of the manual's content.
+This is the mandatory last macro of the
+.Em NAME
+section and not appropriate for other sections.
+.Pp
+Examples:
+.Dl Pf . Ic \&Nd mdoc language reference
+.Dl Pf . Ic \&Nd format and display UNIX manuals
+.Pp
+The
+.Ic \&Nd
+macro technically accepts child macros and terminates with a subsequent
+.Ic \&Sh
+invocation.
+Do not assume this behaviour: some
+.Xr whatis 1
+database generators are not smart enough to parse more than the line
+arguments and will display macros verbatim.
+.Pp
+See also
+.Ic \&Nm .
+.Tg Nm
+.It Ic \&Nm Op Ar name
+The name of the manual page, or \(em in particular in section 1
+pages \(em of an additional command or feature documented in
+the manual page.
+When first invoked, the
+.Ic \&Nm
+macro expects a single argument, the name of the manual page.
+Usually, the first invocation happens in the
+.Em NAME
+section of the page.
+The specified name will be remembered and used whenever the macro is
+called again without arguments later in the page.
+The
+.Ic \&Nm
+macro uses
+.Sx Block full-implicit
+semantics when invoked as the first macro on an input line in the
+.Em SYNOPSIS
+section; otherwise, it uses ordinary
+.Sx In-line
+semantics.
+.Pp
+Examples:
+.Bd -literal -offset indent
+\&.Sh SYNOPSIS
+\&.Nm cat
+\&.Op Fl benstuv
+\&.Op Ar
+.Ed
+.Pp
+In the
+.Em SYNOPSIS
+of section 2, 3 and 9 manual pages, use the
+.Ic \&Fn
+macro rather than
+.Ic \&Nm
+to mark up the name of the manual page.
+.Tg No
+.It Ic \&No Ar word ...
+Normal text.
+Closes the scope of any preceding in-line macro.
+When used after physical formatting macros like
+.Ic \&Em
+or
+.Ic \&Sy ,
+switches back to the standard font face and weight.
+Can also be used to embed plain text strings in macro lines
+using semantic annotation macros.
+.Pp
+Examples:
+.Dl ".Em italic , Sy bold , No and roman"
+.Bd -literal -offset indent
+\&.Sm off
+\&.Cm :C No / Ar pattern No / Ar replacement No /
+\&.Sm on
+.Ed
+.Pp
+See also
+.Ic \&Em ,
+.Ic \&Ql ,
+and
+.Ic \&Sy .
+.Tg Ns
+.It Ic \&Ns
+Suppress a space between the output of the preceding macro
+and the following text or macro.
+Following invocation, input is interpreted as normal text
+just like after an
+.Ic \&No
+macro.
+.Pp
+This has no effect when invoked at the start of a macro line.
+.Pp
+Examples:
+.Dl ".Ar name Ns = Ns Ar value"
+.Dl ".Cm :M Ns Ar pattern"
+.Dl ".Fl o Ns Ar output"
+.Pp
+See also
+.Ic \&No
+and
+.Ic \&Sm .
+.Tg Nx
+.It Ic \&Nx Op Ar version
+Format the
+.Nx
+version provided as an argument, or a default value if
+no argument is provided.
+.Pp
+Examples:
+.Dl \&.Nx 5.01
+.Dl \&.Nx
+.Pp
+See also
+.Ic \&At ,
+.Ic \&Bsx ,
+.Ic \&Bx ,
+.Ic \&Dx ,
+.Ic \&Fx ,
+and
+.Ic \&Ox .
+.It Ic \&Oc
+Close multi-line
+.Ic \&Oo
+context.
+.It Ic \&Oo Ar block
+Multi-line version of
+.Ic \&Op .
+.Pp
+Examples:
+.Bd -literal -offset indent -compact
+\&.Oo
+\&.Op Fl flag Ns Ar value
+\&.Oc
+.Ed
+.Tg Op
+.It Ic \&Op Ar line
+Optional part of a command line.
+Prints the argument(s) in brackets.
+This is most often used in the
+.Em SYNOPSIS
+section of section 1 and 8 manual pages.
+.Pp
+Examples:
+.Dl \&.Op \&Fl a \&Ar b
+.Dl \&.Op \&Ar a | b
+.Pp
+See also
+.Ic \&Oo .
+.Tg Os
+.It Ic \&Os Op Ar system Op Ar version
+Operating system version for display in the page footer.
+This is the mandatory third macro of
+any
+.Nm
+file.
+.Pp
+The optional
+.Ar system
+parameter specifies the relevant operating system or environment.
+It is suggested to leave it unspecified, in which case
+.Xr mandoc 1
+uses its
+.Fl Ios
+argument or, if that isn't specified either,
+.Fa sysname
+and
+.Fa release
+as returned by
+.Xr uname 3 .
+.Pp
+Examples:
+.Dl \&.Os
+.Dl \&.Os KTH/CSC/TCS
+.Dl \&.Os BSD 4.3
+.Pp
+See also
+.Ic \&Dd
+and
+.Ic \&Dt .
+.It Ic \&Ot Ar functype
+This macro is obsolete.
+Use
+.Ic \&Ft
+instead; with
+.Xr mandoc 1 ,
+both have the same effect.
+.Pp
+Historical
+.Nm
+packages described it as
+.Dq "old function type (FORTRAN)" .
+.Tg Ox
+.It Ic \&Ox Op Ar version
+Format the
+.Ox
+version provided as an argument, or a default value
+if no argument is provided.
+.Pp
+Examples:
+.Dl \&.Ox 4.5
+.Dl \&.Ox
+.Pp
+See also
+.Ic \&At ,
+.Ic \&Bsx ,
+.Ic \&Bx ,
+.Ic \&Dx ,
+.Ic \&Fx ,
+and
+.Ic \&Nx .
+.Tg Pa
+.It Ic \&Pa Ar name ...
+An absolute or relative file system path, or a file or directory name.
+If an argument is not provided, the character
+.Sq \(ti
+is used as a default.
+.Pp
+Examples:
+.Dl \&.Pa /usr/bin/mandoc
+.Dl \&.Pa /usr/share/man/man5/mdoc.5
+.Pp
+See also
+.Ic \&Lk .
+.It Ic \&Pc
+Close parenthesised context opened by
+.Ic \&Po .
+.Tg Pf
+.It Ic \&Pf Ar prefix macro Op Ar argument ...
+Removes the space between its argument and the following macro.
+It is equivalent to:
+.Pp
+.D1 Ic \&No Pf \e& Ar prefix Ic \&Ns Ar macro Op Ar argument ...
+.Pp
+The
+.Ar prefix
+argument is not parsed for macro names or delimiters,
+but used verbatim as if it were escaped.
+.Pp
+Examples:
+.Dl ".Pf $ Ar variable_name"
+.Dl ".Pf . Ar macro_name"
+.Dl ".Pf 0x Ar hex_digits"
+.Pp
+See also
+.Ic \&Ns
+and
+.Ic \&Sm .
+.It Ic \&Po Ar block
+Multi-line version of
+.Ic \&Pq .
+.Tg Pp
+.It Ic \&Pp
+Break a paragraph.
+This will assert vertical space between prior and subsequent macros
+and/or text.
+.Pp
+Paragraph breaks are not needed before or after
+.Ic \&Sh
+or
+.Ic \&Ss
+macros or before displays
+.Pq Ic \&Bd Ar line
+or lists
+.Pq Ic \&Bl
+unless the
+.Fl compact
+flag is given.
+.Tg Pq
+.It Ic \&Pq Ar line
+Parenthesised enclosure.
+.Pp
+See also
+.Ic \&Po .
+.It Ic \&Qc
+Close quoted context opened by
+.Ic \&Qo .
+.Tg Ql
+.It Ic \&Ql Ar line
+In-line literal display.
+This can be used for complete command invocations and for multi-word
+code examples when an indented display is not desired.
+.Pp
+See also
+.Ic \&Dl
+and
+.Ic \&Bd
+.Fl literal .
+.It Ic \&Qo Ar block
+Multi-line version of
+.Ic \&Qq .
+.Tg Qq
+.It Ic \&Qq Ar line
+Encloses its arguments in
+.Qq typewriter
+double-quotes.
+Consider using
+.Ic \&Dq .
+.Pp
+See also
+.Ic \&Dq ,
+.Ic \&Sq ,
+and
+.Ic \&Qo .
+.It Ic \&Re
+Close an
+.Ic \&Rs
+block.
+Does not have any tail arguments.
+.Tg Rs
+.It Ic \&Rs
+Begin a bibliographic
+.Pq Dq reference
+block.
+Does not have any head arguments.
+The block macro may only contain
+.Ic \&%A ,
+.Ic \&%B ,
+.Ic \&%C ,
+.Ic \&%D ,
+.Ic \&%I ,
+.Ic \&%J ,
+.Ic \&%N ,
+.Ic \&%O ,
+.Ic \&%P ,
+.Ic \&%Q ,
+.Ic \&%R ,
+.Ic \&%T ,
+.Ic \&%U ,
+and
+.Ic \&%V
+child macros (at least one must be specified).
+.Pp
+Examples:
+.Bd -literal -offset indent -compact
+\&.Rs
+\&.%A J. E. Hopcroft
+\&.%A J. D. Ullman
+\&.%B Introduction to Automata Theory, Languages, and Computation
+\&.%I Addison-Wesley
+\&.%C Reading, Massachusetts
+\&.%D 1979
+\&.Re
+.Ed
+.Pp
+If an
+.Ic \&Rs
+block is used within a SEE ALSO section, a vertical space is asserted
+before the rendered output, else the block continues on the current
+line.
+.Tg Rv
+.It Ic \&Rv Fl std Op Ar function ...
+Insert a standard sentence regarding a function call's return value of 0
+on success and \-1 on error, with the
+.Va errno
+libc global variable set on error.
+.Pp
+If
+.Ar function
+is not specified, the document's name set by
+.Ic \&Nm
+is used.
+Multiple
+.Ar function
+arguments are treated as separate functions.
+.Pp
+See also
+.Ic \&Ex .
+.It Ic \&Sc
+Close single-quoted context opened by
+.Ic \&So .
+.Tg Sh
+.It Ic \&Sh Ar TITLE LINE
+Begin a new section.
+For a list of conventional manual sections, see
+.Sx MANUAL STRUCTURE .
+These sections should be used unless it's absolutely necessary that
+custom sections be used.
+.Pp
+Section names should be unique so that they may be keyed by
+.Ic \&Sx .
+Although this macro is parsed, it should not consist of child node or it
+may not be linked with
+.Ic \&Sx .
+.Pp
+See also
+.Ic \&Pp ,
+.Ic \&Ss ,
+and
+.Ic \&Sx .
+.Tg Sm
+.It Ic \&Sm Op Cm on | off
+Switches the spacing mode for output generated from macros.
+.Pp
+By default, spacing is
+.Cm on .
+When switched
+.Cm off ,
+no white space is inserted between macro arguments and between the
+output generated from adjacent macros, but text lines
+still get normal spacing between words and sentences.
+.Pp
+When called without an argument, the
+.Ic \&Sm
+macro toggles the spacing mode.
+Using this is not recommended because it makes the code harder to read.
+.It Ic \&So Ar block
+Multi-line version of
+.Ic \&Sq .
+.Tg Sq
+.It Ic \&Sq Ar line
+Encloses its arguments in
+.Sq typewriter
+single-quotes.
+.Pp
+See also
+.Ic \&Dq ,
+.Ic \&Qq ,
+and
+.Ic \&So .
+.Tg Ss
+.It Ic \&Ss Ar Title line
+Begin a new subsection.
+Unlike with
+.Ic \&Sh ,
+there is no convention for the naming of subsections.
+Except
+.Em DESCRIPTION ,
+the conventional sections described in
+.Sx MANUAL STRUCTURE
+rarely have subsections.
+.Pp
+Sub-section names should be unique so that they may be keyed by
+.Ic \&Sx .
+Although this macro is parsed, it should not consist of child node or it
+may not be linked with
+.Ic \&Sx .
+.Pp
+See also
+.Ic \&Pp ,
+.Ic \&Sh ,
+and
+.Ic \&Sx .
+.Tg St
+.It Ic \&St Fl Ns Ar abbreviation
+Replace an abbreviation for a standard with the full form.
+The following standards are recognised.
+Where multiple lines are given without a blank line in between,
+they all refer to the same standard, and using the first form
+is recommended.
+.Bl -tag -width 1n
+.It C language standards
+.Pp
+.Bl -tag -width "-p1003.1g-2000" -compact
+.It \-ansiC
+.St -ansiC
+.It \-ansiC-89
+.St -ansiC-89
+.It \-isoC
+.St -isoC
+.It \-isoC-90
+.St -isoC-90
+.br
+The original C standard.
+.Pp
+.It \-isoC-amd1
+.St -isoC-amd1
+.Pp
+.It \-isoC-tcor1
+.St -isoC-tcor1
+.Pp
+.It \-isoC-tcor2
+.St -isoC-tcor2
+.Pp
+.It \-isoC-99
+.St -isoC-99
+.br
+The second major version of the C language standard.
+.Pp
+.It \-isoC-2011
+.St -isoC-2011
+.br
+The third major version of the C language standard.
+.El
+.It POSIX.1 before the Single UNIX Specification
+.Pp
+.Bl -tag -width "-p1003.1g-2000" -compact
+.It \-p1003.1-88
+.St -p1003.1-88
+.It \-p1003.1
+.St -p1003.1
+.br
+The original POSIX standard, based on ANSI C.
+.Pp
+.It \-p1003.1-90
+.St -p1003.1-90
+.It \-iso9945-1-90
+.St -iso9945-1-90
+.br
+The first update of POSIX.1.
+.Pp
+.It \-p1003.1b-93
+.St -p1003.1b-93
+.It \-p1003.1b
+.St -p1003.1b
+.br
+Real-time extensions.
+.Pp
+.It \-p1003.1c-95
+.St -p1003.1c-95
+.br
+POSIX thread interfaces.
+.Pp
+.It \-p1003.1i-95
+.St -p1003.1i-95
+.br
+Technical Corrigendum.
+.Pp
+.It \-p1003.1-96
+.St -p1003.1-96
+.It \-iso9945-1-96
+.St -iso9945-1-96
+.br
+Includes POSIX.1-1990, 1b, 1c, and 1i.
+.El
+.It X/Open Portability Guide version 4 and related standards
+.Pp
+.Bl -tag -width "-p1003.1g-2000" -compact
+.It \-xpg3
+.St -xpg3
+.br
+An XPG4 precursor, published in 1989.
+.Pp
+.It \-p1003.2
+.St -p1003.2
+.It \-p1003.2-92
+.St -p1003.2-92
+.It \-iso9945-2-93
+.St -iso9945-2-93
+.br
+An XCU4 precursor.
+.Pp
+.It \-p1003.2a-92
+.St -p1003.2a-92
+.br
+Updates to POSIX.2.
+.Pp
+.It \-xpg4
+.St -xpg4
+.br
+Based on POSIX.1 and POSIX.2, published in 1992.
+.El
+.It Single UNIX Specification version 1 and related standards
+.Pp
+.Bl -tag -width "-p1003.1g-2000" -compact
+.It \-susv1
+.St -susv1
+.It \-xpg4.2
+.St -xpg4.2
+.br
+This standard was published in 1994.
+It was used as the basis for UNIX 95 certification.
+The following three refer to parts of it.
+.Pp
+.It \-xsh4.2
+.St -xsh4.2
+.Pp
+.It \-xcurses4.2
+.St -xcurses4.2
+.Pp
+.It \-p1003.1g-2000
+.St -p1003.1g-2000
+.br
+Networking APIs, including sockets.
+.Pp
+.It \-svid4
+.St -svid4 ,
+.br
+Published in 1995.
+.El
+.It Single UNIX Specification version 2 and related standards
+.Pp
+.Bl -tag -width "-p1003.1g-2000" -compact
+.It \-susv2
+.St -susv2
+This Standard was published in 1997
+and is also called X/Open Portability Guide version 5.
+It was used as the basis for UNIX 98 certification.
+The following refer to parts of it.
+.Pp
+.It \-xbd5
+.St -xbd5
+.Pp
+.It \-xsh5
+.St -xsh5
+.Pp
+.It \-xcu5
+.St -xcu5
+.Pp
+.It \-xns5
+.St -xns5
+.It \-xns5.2
+.St -xns5.2
+.El
+.It Single UNIX Specification version 3
+.Pp
+.Bl -tag -width "-p1003.1-2001" -compact
+.It \-p1003.1-2001
+.St -p1003.1-2001
+.It \-susv3
+.St -susv3
+.br
+This standard is based on C99, SUSv2, POSIX.1-1996, 1d, and 1j.
+It is also called X/Open Portability Guide version 6.
+It is used as the basis for UNIX 03 certification.
+.Pp
+.It \-p1003.1-2004
+.St -p1003.1-2004
+.br
+The second and last Technical Corrigendum.
+.El
+.It Single UNIX Specification version 4
+.Pp
+.Bl -tag -width "-p1003.1g-2000" -compact
+.It \-p1003.1-2008
+.St -p1003.1-2008
+.It \-susv4
+.St -susv4
+.br
+This standard is also called
+X/Open Portability Guide version 7.
+.El
+.It Other standards
+.Pp
+.Bl -tag -width "-p1003.1g-2000" -compact
+.It \-ieee754
+.St -ieee754
+.br
+Floating-point arithmetic.
+.Pp
+.It \-iso8601
+.St -iso8601
+.br
+Representation of dates and times, published in 1988.
+.Pp
+.It \-iso8802-3
+.St -iso8802-3
+.br
+Ethernet local area networks.
+.Pp
+.It \-ieee1275-94
+.St -ieee1275-94
+.El
+.El
+.Tg Sx
+.It Ic \&Sx Ar Title line
+Reference a section or subsection in the same manual page.
+The referenced section or subsection name must be identical to the
+enclosed argument, including whitespace.
+.Pp
+Examples:
+.Dl \&.Sx MANUAL STRUCTURE
+.Pp
+See also
+.Ic \&Sh
+and
+.Ic \&Ss .
+.Tg Sy
+.It Ic \&Sy Ar word ...
+Request a boldface font.
+.Pp
+This is most often used to indicate importance or seriousness (not to be
+confused with stress emphasis, see
+.Ic \&Em ) .
+When none of the semantic macros fit, it is also adequate for syntax
+elements that have to be given or that appear verbatim.
+.Pp
+Examples:
+.Bd -literal -compact -offset indent
+\&.Sy Warning :
+If
+\&.Sy s
+appears in the owner permissions, set-user-ID mode is set.
+This utility replaces the former
+\&.Sy dumpdir
+program.
+.Ed
+.Pp
+See also
+.Ic \&Em ,
+.Ic \&No ,
+and
+.Ic \&Ql .
+.Tg Ta
+.It Ic \&Ta
+Table cell separator in
+.Ic \&Bl Fl column
+lists; can only be used below
+.Ic \&It .
+.Tg Tg
+.It Ic \&Tg Op Ar term
+Announce that the next input line starts a definition of the
+.Ar term .
+This macro must appear alone on its own input line.
+The argument defaults to the first argument of the first macro
+on the next line.
+The argument may not contain whitespace characters, not even when it is quoted.
+This macro is a
+.Xr mandoc 1
+extension and is typically ignored by other formatters.
+.Pp
+When viewing terminal output with
+.Xr less 1 ,
+the interactive
+.Ic :t
+command can be used to go to the definition of the
+.Ar term
+as described for the
+.Ev MANPAGER
+variable in
+.Xr man 1 ;
+when producing HTML output, a fragment identifier
+.Pq Ic id No attribute
+is generated, to be used for deep linking to this place of the document.
+.Pp
+In most cases, adding a
+.Ic \&Tg
+macro would be redundant because
+.Xr mandoc 1
+is able to automatically tag most definitions.
+This macro is intended for cases where automatic tagging of a
+.Ar term
+is unsatisfactory, for example if a definition is not tagged
+automatically (false negative) or if places are tagged that do
+not define the
+.Ar term
+(false positives).
+When there is at least one
+.Ic \&Tg
+macro for a
+.Ar term ,
+no other places are automatically marked as definitions of that
+.Ar term .
+.It Ic \&Tn Ar word ...
+Supported only for compatibility, do not use this in new manuals.
+Even though the macro name
+.Pq Dq tradename
+suggests a semantic function, historic usage is inconsistent, mostly
+using it as a presentation-level macro to request a small caps font.
+.It Ic \&Ud
+Supported only for compatibility, do not use this in new manuals.
+Prints out
+.Dq currently under development.
+.It Ic \&Ux
+Supported only for compatibility, do not use this in new manuals.
+Prints out
+.Dq Ux .
+.Tg Va
+.It Ic \&Va Oo Ar type Oc Ar identifier ...
+A variable name.
+.Pp
+Examples:
+.Dl \&.Va foo
+.Dl \&.Va const char *bar ;
+.Pp
+For function arguments and parameters, use
+.Ic \&Fa
+instead.
+For declarations of global variables in the
+.Em SYNOPSIS
+section, use
+.Ic \&Vt .
+.Tg Vt
+.It Ic \&Vt Ar type Op Ar identifier
+A variable type.
+.Pp
+This is also used for indicating global variables in the
+.Em SYNOPSIS
+section, in which case a variable name is also specified.
+Note that it accepts
+.Sx Block partial-implicit
+syntax when invoked as the first macro on an input line in the
+.Em SYNOPSIS
+section, else it accepts ordinary
+.Sx In-line
+syntax.
+In the former case, this macro starts a new output line,
+and a blank line is inserted in front if there is a preceding
+function definition or include directive.
+.Pp
+Examples:
+.Dl \&.Vt unsigned char
+.Dl \&.Vt extern const char * const sys_signame[] \&;
+.Pp
+For parameters in function prototypes, use
+.Ic \&Fa
+instead, for function return types
+.Ic \&Ft ,
+and for variable names outside the
+.Em SYNOPSIS
+section
+.Ic \&Va ,
+even when including a type with the name.
+See also
+.Sx MANUAL STRUCTURE .
+.It Ic \&Xc
+Close a scope opened by
+.Ic \&Xo .
+.It Ic \&Xo Ar block
+Extend the header of an
+.Ic \&It
+macro or the body of a partial-implicit block macro
+beyond the end of the input line.
+This macro originally existed to work around the 9-argument limit
+of historic
+.Xr mandoc_roff 7 .
+.Tg Xr
+.It Ic \&Xr Ar name section
+Link to another manual
+.Pq Qq cross-reference .
+.Pp
+Cross reference the
+.Ar name
+and
+.Ar section
+number of another man page.
+.Pp
+Examples:
+.Dl \&.Xr mandoc 1
+.Dl \&.Xr mandoc 1 \&;
+.Dl \&.Xr mandoc 1 \&Ns s behaviour
+.El
+.Sh MACRO SYNTAX
+The syntax of a macro depends on its classification.
+In this section,
+.Sq \-arg
+refers to macro arguments, which may be followed by zero or more
+.Sq parm
+parameters;
+.Sq \&Yo
+opens the scope of a macro; and if specified,
+.Sq \&Yc
+closes it out.
+.Pp
+The
+.Em Callable
+column indicates that the macro may also be called by passing its name
+as an argument to another macro.
+For example,
+.Sq \&.Op \&Fl O \&Ar file
+produces
+.Sq Op Fl O Ar file .
+To prevent a macro call and render the macro name literally,
+escape it by prepending a zero-width space,
+.Sq \e& .
+For example,
+.Sq \&Op \e&Fl O
+produces
+.Sq Op \&Fl O .
+If a macro is not callable but its name appears as an argument
+to another macro, it is interpreted as opaque text.
+For example,
+.Sq \&.Fl \&Sh
+produces
+.Sq Fl \&Sh .
+.Pp
+The
+.Em Parsed
+column indicates whether the macro may call other macros by receiving
+their names as arguments.
+If a macro is not parsed but the name of another macro appears
+as an argument, it is interpreted as opaque text.
+.Pp
+The
+.Em Scope
+column, if applicable, describes closure rules.
+.Ss Block full-explicit
+Multi-line scope closed by an explicit closing macro.
+All macros contains bodies; only
+.Ic \&Bf
+and
+.Pq optionally
+.Ic \&Bl
+contain a head.
+.Bd -literal -offset indent
+\&.Yo \(lB\-arg \(lBparm...\(rB\(rB \(lBhead...\(rB
+\(lBbody...\(rB
+\&.Yc
+.Ed
+.Bl -column "MacroX" "CallableX" "ParsedX" "closed by XXX" -offset indent
+.It Em Macro Ta Em Callable Ta Em Parsed Ta Em Scope
+.It Ic \&Bd Ta \&No Ta \&No Ta closed by Ic \&Ed
+.It Ic \&Bf Ta \&No Ta \&No Ta closed by Ic \&Ef
+.It Ic \&Bk Ta \&No Ta \&No Ta closed by Ic \&Ek
+.It Ic \&Bl Ta \&No Ta \&No Ta closed by Ic \&El
+.It Ic \&Ed Ta \&No Ta \&No Ta opened by Ic \&Bd
+.It Ic \&Ef Ta \&No Ta \&No Ta opened by Ic \&Bf
+.It Ic \&Ek Ta \&No Ta \&No Ta opened by Ic \&Bk
+.It Ic \&El Ta \&No Ta \&No Ta opened by Ic \&Bl
+.El
+.Ss Block full-implicit
+Multi-line scope closed by end-of-file or implicitly by another macro.
+All macros have bodies; some
+.Po
+.Ic \&It Fl bullet ,
+.Fl hyphen ,
+.Fl dash ,
+.Fl enum ,
+.Fl item
+.Pc
+don't have heads; only one
+.Po
+.Ic \&It
+in
+.Ic \&Bl Fl column
+.Pc
+has multiple heads.
+.Bd -literal -offset indent
+\&.Yo \(lB\-arg \(lBparm...\(rB\(rB \(lBhead... \(lBTa head...\(rB\(rB
+\(lBbody...\(rB
+.Ed
+.Bl -column "MacroX" "CallableX" "ParsedX" "closed by XXXXXXXXXXX" -offset indent
+.It Em Macro Ta Em Callable Ta Em Parsed Ta Em Scope
+.It Ic \&It Ta \&No Ta Yes Ta closed by Ic \&It , Ic \&El
+.It Ic \&Nd Ta \&No Ta \&No Ta closed by Ic \&Sh
+.It Ic \&Nm Ta \&No Ta Yes Ta closed by Ic \&Nm , Ic \&Sh , Ic \&Ss
+.It Ic \&Sh Ta \&No Ta Yes Ta closed by Ic \&Sh
+.It Ic \&Ss Ta \&No Ta Yes Ta closed by Ic \&Sh , Ic \&Ss
+.El
+.Pp
+Note that the
+.Ic \&Nm
+macro is a
+.Sx Block full-implicit
+macro only when invoked as the first macro
+in a
+.Em SYNOPSIS
+section line, else it is
+.Sx In-line .
+.Ss Block partial-explicit
+Like block full-explicit, but also with single-line scope.
+Each has at least a body and, in limited circumstances, a head
+.Po
+.Ic \&Fo ,
+.Ic \&Eo
+.Pc
+and/or tail
+.Pq Ic \&Ec .
+.Bd -literal -offset indent
+\&.Yo \(lB\-arg \(lBparm...\(rB\(rB \(lBhead...\(rB
+\(lBbody...\(rB
+\&.Yc \(lBtail...\(rB
+
+\&.Yo \(lB\-arg \(lBparm...\(rB\(rB \(lBhead...\(rB \
+\(lBbody...\(rB \&Yc \(lBtail...\(rB
+.Ed
+.Bl -column "MacroX" "CallableX" "ParsedX" "closed by XXXX" -offset indent
+.It Em Macro Ta Em Callable Ta Em Parsed Ta Em Scope
+.It Ic \&Ac Ta Yes Ta Yes Ta opened by Ic \&Ao
+.It Ic \&Ao Ta Yes Ta Yes Ta closed by Ic \&Ac
+.It Ic \&Bc Ta Yes Ta Yes Ta closed by Ic \&Bo
+.It Ic \&Bo Ta Yes Ta Yes Ta opened by Ic \&Bc
+.It Ic \&Brc Ta Yes Ta Yes Ta opened by Ic \&Bro
+.It Ic \&Bro Ta Yes Ta Yes Ta closed by Ic \&Brc
+.It Ic \&Dc Ta Yes Ta Yes Ta opened by Ic \&Do
+.It Ic \&Do Ta Yes Ta Yes Ta closed by Ic \&Dc
+.It Ic \&Ec Ta Yes Ta Yes Ta opened by Ic \&Eo
+.It Ic \&Eo Ta Yes Ta Yes Ta closed by Ic \&Ec
+.It Ic \&Fc Ta Yes Ta Yes Ta opened by Ic \&Fo
+.It Ic \&Fo Ta \&No Ta \&No Ta closed by Ic \&Fc
+.It Ic \&Oc Ta Yes Ta Yes Ta closed by Ic \&Oo
+.It Ic \&Oo Ta Yes Ta Yes Ta opened by Ic \&Oc
+.It Ic \&Pc Ta Yes Ta Yes Ta closed by Ic \&Po
+.It Ic \&Po Ta Yes Ta Yes Ta opened by Ic \&Pc
+.It Ic \&Qc Ta Yes Ta Yes Ta opened by Ic \&Oo
+.It Ic \&Qo Ta Yes Ta Yes Ta closed by Ic \&Oc
+.It Ic \&Re Ta \&No Ta \&No Ta opened by Ic \&Rs
+.It Ic \&Rs Ta \&No Ta \&No Ta closed by Ic \&Re
+.It Ic \&Sc Ta Yes Ta Yes Ta opened by Ic \&So
+.It Ic \&So Ta Yes Ta Yes Ta closed by Ic \&Sc
+.It Ic \&Xc Ta Yes Ta Yes Ta opened by Ic \&Xo
+.It Ic \&Xo Ta Yes Ta Yes Ta closed by Ic \&Xc
+.El
+.Ss Block partial-implicit
+Like block full-implicit, but with single-line scope closed by the
+end of the line.
+.Bd -literal -offset indent
+\&.Yo \(lB\-arg \(lBval...\(rB\(rB \(lBbody...\(rB \(lBres...\(rB
+.Ed
+.Bl -column "MacroX" "CallableX" "ParsedX" -offset indent
+.It Em Macro Ta Em Callable Ta Em Parsed
+.It Ic \&Aq Ta Yes Ta Yes
+.It Ic \&Bq Ta Yes Ta Yes
+.It Ic \&Brq Ta Yes Ta Yes
+.It Ic \&D1 Ta \&No Ta \&Yes
+.It Ic \&Dl Ta \&No Ta Yes
+.It Ic \&Dq Ta Yes Ta Yes
+.It Ic \&En Ta Yes Ta Yes
+.It Ic \&Op Ta Yes Ta Yes
+.It Ic \&Pq Ta Yes Ta Yes
+.It Ic \&Ql Ta Yes Ta Yes
+.It Ic \&Qq Ta Yes Ta Yes
+.It Ic \&Sq Ta Yes Ta Yes
+.It Ic \&Vt Ta Yes Ta Yes
+.El
+.Pp
+Note that the
+.Ic \&Vt
+macro is a
+.Sx Block partial-implicit
+only when invoked as the first macro
+in a
+.Em SYNOPSIS
+section line, else it is
+.Sx In-line .
+.Ss Special block macro
+The
+.Ic \&Ta
+macro can only be used below
+.Ic \&It
+in
+.Ic \&Bl Fl column
+lists.
+It delimits blocks representing table cells;
+these blocks have bodies, but no heads.
+.Bl -column "MacroX" "CallableX" "ParsedX" "closed by XXXX" -offset indent
+.It Em Macro Ta Em Callable Ta Em Parsed Ta Em Scope
+.It Ic \&Ta Ta Yes Ta Yes Ta closed by Ic \&Ta , Ic \&It
+.El
+.Ss In-line
+Closed by the end of the line, fixed argument lengths,
+and/or subsequent macros.
+In-line macros have only text children.
+If a number (or inequality) of arguments is
+.Pq n ,
+then the macro accepts an arbitrary number of arguments.
+.Bd -literal -offset indent
+\&.Yo \(lB\-arg \(lBval...\(rB\(rB \(lBargs...\(rB \(lBres...\(rB
+
+\&.Yo \(lB\-arg \(lBval...\(rB\(rB \(lBargs...\(rB Yc...
+
+\&.Yo \(lB\-arg \(lBval...\(rB\(rB arg0 arg1 argN
+.Ed
+.Bl -column "MacroX" "CallableX" "ParsedX" "Arguments" -offset indent
+.It Em Macro Ta Em Callable Ta Em Parsed Ta Em Arguments
+.It Ic \&%A Ta \&No Ta \&No Ta >0
+.It Ic \&%B Ta \&No Ta \&No Ta >0
+.It Ic \&%C Ta \&No Ta \&No Ta >0
+.It Ic \&%D Ta \&No Ta \&No Ta >0
+.It Ic \&%I Ta \&No Ta \&No Ta >0
+.It Ic \&%J Ta \&No Ta \&No Ta >0
+.It Ic \&%N Ta \&No Ta \&No Ta >0
+.It Ic \&%O Ta \&No Ta \&No Ta >0
+.It Ic \&%P Ta \&No Ta \&No Ta >0
+.It Ic \&%Q Ta \&No Ta \&No Ta >0
+.It Ic \&%R Ta \&No Ta \&No Ta >0
+.It Ic \&%T Ta \&No Ta \&No Ta >0
+.It Ic \&%U Ta \&No Ta \&No Ta >0
+.It Ic \&%V Ta \&No Ta \&No Ta >0
+.It Ic \&Ad Ta Yes Ta Yes Ta >0
+.It Ic \&An Ta Yes Ta Yes Ta >0
+.It Ic \&Ap Ta Yes Ta Yes Ta 0
+.It Ic \&Ar Ta Yes Ta Yes Ta n
+.It Ic \&At Ta Yes Ta Yes Ta 1
+.It Ic \&Bsx Ta Yes Ta Yes Ta n
+.It Ic \&Bt Ta \&No Ta \&No Ta 0
+.It Ic \&Bx Ta Yes Ta Yes Ta n
+.It Ic \&Cd Ta Yes Ta Yes Ta >0
+.It Ic \&Cm Ta Yes Ta Yes Ta >0
+.It Ic \&Db Ta \&No Ta \&No Ta 1
+.It Ic \&Dd Ta \&No Ta \&No Ta n
+.It Ic \&Dt Ta \&No Ta \&No Ta n
+.It Ic \&Dv Ta Yes Ta Yes Ta >0
+.It Ic \&Dx Ta Yes Ta Yes Ta n
+.It Ic \&Em Ta Yes Ta Yes Ta >0
+.It Ic \&Er Ta Yes Ta Yes Ta >0
+.It Ic \&Es Ta Yes Ta Yes Ta 2
+.It Ic \&Ev Ta Yes Ta Yes Ta >0
+.It Ic \&Ex Ta \&No Ta \&No Ta n
+.It Ic \&Fa Ta Yes Ta Yes Ta >0
+.It Ic \&Fd Ta \&No Ta \&No Ta >0
+.It Ic \&Fl Ta Yes Ta Yes Ta n
+.It Ic \&Fn Ta Yes Ta Yes Ta >0
+.It Ic \&Fr Ta Yes Ta Yes Ta >0
+.It Ic \&Ft Ta Yes Ta Yes Ta >0
+.It Ic \&Fx Ta Yes Ta Yes Ta n
+.It Ic \&Hf Ta \&No Ta \&No Ta n
+.It Ic \&Ic Ta Yes Ta Yes Ta >0
+.It Ic \&In Ta \&No Ta \&No Ta 1
+.It Ic \&Lb Ta \&No Ta \&No Ta 1
+.It Ic \&Li Ta Yes Ta Yes Ta >0
+.It Ic \&Lk Ta Yes Ta Yes Ta >0
+.It Ic \&Lp Ta \&No Ta \&No Ta 0
+.It Ic \&Ms Ta Yes Ta Yes Ta >0
+.It Ic \&Mt Ta Yes Ta Yes Ta >0
+.It Ic \&Nm Ta Yes Ta Yes Ta n
+.It Ic \&No Ta Yes Ta Yes Ta >0
+.It Ic \&Ns Ta Yes Ta Yes Ta 0
+.It Ic \&Nx Ta Yes Ta Yes Ta n
+.It Ic \&Os Ta \&No Ta \&No Ta n
+.It Ic \&Ot Ta Yes Ta Yes Ta >0
+.It Ic \&Ox Ta Yes Ta Yes Ta n
+.It Ic \&Pa Ta Yes Ta Yes Ta n
+.It Ic \&Pf Ta Yes Ta Yes Ta 1
+.It Ic \&Pp Ta \&No Ta \&No Ta 0
+.It Ic \&Rv Ta \&No Ta \&No Ta n
+.It Ic \&Sm Ta \&No Ta \&No Ta <2
+.It Ic \&St Ta \&No Ta Yes Ta 1
+.It Ic \&Sx Ta Yes Ta Yes Ta >0
+.It Ic \&Sy Ta Yes Ta Yes Ta >0
+.It Ic \&Tg Ta \&No Ta \&No Ta <2
+.It Ic \&Tn Ta Yes Ta Yes Ta >0
+.It Ic \&Ud Ta \&No Ta \&No Ta 0
+.It Ic \&Ux Ta Yes Ta Yes Ta n
+.It Ic \&Va Ta Yes Ta Yes Ta n
+.It Ic \&Vt Ta Yes Ta Yes Ta >0
+.It Ic \&Xr Ta Yes Ta Yes Ta 2
+.El
+.Ss Delimiters
+When a macro argument consists of one single input character
+considered as a delimiter, the argument gets special handling.
+This does not apply when delimiters appear in arguments containing
+more than one character.
+Consequently, to prevent special handling and just handle it
+like any other argument, a delimiter can be escaped by prepending
+a zero-width space
+.Pq Sq \e& .
+In text lines, delimiters never need escaping, but may be used
+as normal punctuation.
+.Pp
+For many macros, when the leading arguments are opening delimiters,
+these delimiters are put before the macro scope,
+and when the trailing arguments are closing delimiters,
+these delimiters are put after the macro scope.
+Spacing is suppressed after opening delimiters
+and before closing delimiters.
+For example,
+.Pp
+.D1 Pf \. \&Aq "( [ word ] ) ."
+.Pp
+renders as:
+.Pp
+.D1 Aq ( [ word ] ) .
+.Pp
+Opening delimiters are:
+.Pp
+.Bl -tag -width Ds -offset indent -compact
+.It \&(
+left parenthesis
+.It \&[
+left bracket
+.El
+.Pp
+Closing delimiters are:
+.Pp
+.Bl -tag -width Ds -offset indent -compact
+.It \&.
+period
+.It \&,
+comma
+.It \&:
+colon
+.It \&;
+semicolon
+.It \&)
+right parenthesis
+.It \&]
+right bracket
+.It \&?
+question mark
+.It \&!
+exclamation mark
+.El
+.Pp
+Note that even a period preceded by a backslash
+.Pq Sq \e.\&
+gets this special handling; use
+.Sq \e&.\&
+to prevent that.
+.Pp
+Many in-line macros interrupt their scope when they encounter
+delimiters, and resume their scope when more arguments follow that
+are not delimiters.
+For example,
+.Pp
+.D1 Pf \. \&Fl "a ( b | c \e*(Ba d ) e"
+.Pp
+renders as:
+.Pp
+.D1 Fl a ( b | c \*(Ba d ) e
+.Pp
+This applies to both opening and closing delimiters,
+and also to the middle delimiter, which does not suppress spacing:
+.Pp
+.Bl -tag -width Ds -offset indent -compact
+.It \&|
+vertical bar
+.El
+.Pp
+As a special case, the predefined string \e*(Ba is handled and rendered
+in the same way as a plain
+.Sq \&|
+character.
+Using this predefined string is not recommended in new manuals.
+.Pp
+Appending a zero-width space
+.Pq Sq \e&
+to the end of an input line is also useful to prevent the interpretation
+of a trailing period, exclamation or question mark as the end of a
+sentence, for example when an abbreviation happens to occur
+at the end of a text or macro input line.
+.Ss Font handling
+In
+.Nm
+documents, usage of semantic markup is recommended in order to have
+proper fonts automatically selected; only when no fitting semantic markup
+is available, consider falling back to
+.Sx Physical markup
+macros.
+Whenever any
+.Nm
+macro switches the
+.Xr mandoc_roff 7
+font mode, it will automatically restore the previous font when exiting
+its scope.
+Manually switching the font using the
+.Xr mandoc_roff 7
+.Ql \ef
+font escape sequences is never required.
+.Sh COMPATIBILITY
+This section provides an incomplete list of compatibility issues
+between mandoc and GNU troff
+.Pq Qq groff .
+.Pp
+The following problematic behaviour is found in groff:
+.Pp
+.Bl -dash -compact
+.It
+.Ic \&Pa
+does not format its arguments when used in the FILES section under
+certain list types.
+.It
+.Ic \&Ta
+can only be called by other macros, but not at the beginning of a line.
+.It
+.Sq \ef
+.Pq font face
+and
+.Sq \eF
+.Pq font family face
+.Sx Text Decoration
+escapes behave irregularly when specified within line-macro scopes.
+.It
+Negative scaling units return to prior lines.
+Instead, mandoc truncates them to zero.
+.El
+.Pp
+The following features are unimplemented in mandoc:
+.Pp
+.Bl -dash -compact
+.It
+.Ic \&Bd Fl file Ar file
+is unsupported for security reasons.
+.It
+.Ic \&Bd
+.Fl filled
+does not adjust the right margin, but is an alias for
+.Ic \&Bd
+.Fl ragged .
+.It
+.Ic \&Bd
+.Fl literal
+does not use a literal font, but is an alias for
+.Ic \&Bd
+.Fl unfilled .
+.It
+.Ic \&Bd
+.Fl offset Cm center
+and
+.Fl offset Cm right
+don't work.
+Groff does not implement centered and flush-right rendering either,
+but produces large indentations.
+.El
+.Sh SEE ALSO
+.Xr man 1 ,
+.Xr mandoc 1 ,
+.Xr eqn 7 ,
+.Xr man 7 ,
+.Xr mandoc_char 7 ,
+.Xr mandoc_roff 7 ,
+.Xr tbl 7
+.Pp
+The web page
+.Lk https://mandoc.bsd.lv/mdoc/ "extended documentation for the mdoc language"
+provides a few tutorial-style pages for beginners, an extensive style
+guide for advanced authors, and an alphabetic index helping to choose
+the best macros for various kinds of content.
+.Pp
+The manual page
+.Lk https://man.voidlinux.org/groff_mdoc "groff_mdoc(4)"
+contained in the
+.Dq groff
+package documents exactly the same language in a somewhat different style.
+.Sh HISTORY
+The
+.Nm
+language first appeared as a troff macro package in
+.Bx 4.4 .
+It was later significantly updated by Werner Lemberg and Ruslan Ermilov
+in groff-1.17.
+The standalone implementation that is part of the
+.Xr mandoc 1
+utility written by Kristaps Dzonsons appeared in
+.Ox 4.6 .
+.Sh AUTHORS
+The
+.Nm
+reference was written by
+.An Kristaps Dzonsons Aq Mt kristaps@bsd.lv .
diff --git a/usr/src/man/man7/me.7 b/usr/src/man/man7/me.7
new file mode 100644
index 0000000000..10966adc9f
--- /dev/null
+++ b/usr/src/man/man7/me.7
@@ -0,0 +1,246 @@
+'\" te
+.\" Copyright (c) 1980 Regents of the University of California. All rights reserved. The Berkeley software License Agreement Copyright (c) 1997, Sun Microsystems, Inc. All Rights Reserved
+.TH ME 7 "Feb 25, 1992"
+.SH NAME
+me \- macros for formatting papers
+.SH SYNOPSIS
+.LP
+.nf
+\fBnroff\fR \fB-me\fR [\fIoptions\fR] \fIfilename\fR...
+.fi
+
+.LP
+.nf
+\fBtroff\fR \fB-me\fR [\fIoptions\fR] \fIfilename\fR...
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+This package of \fBnroff\fR and \fBtroff\fR macro definitions provides a canned
+formatting facility for technical papers in various formats. When producing
+2-column output on a terminal, filter the output through \fBcol\fR(1).
+.sp
+.LP
+The macro requests are defined below. Many \fBnroff\fR and \fBtroff\fR requests
+are unsafe in conjunction with this package, however, these requests may be
+used with impunity after the first \fB\&.pp\fR:
+.sp
+.ne 2
+.na
+\fB\&.bp\fR
+.ad
+.RS 12n
+begin new page
+.RE
+
+.sp
+.ne 2
+.na
+\fB\&.br\fR
+.ad
+.RS 12n
+break output line here
+.RE
+
+.sp
+.ne 2
+.na
+\fB\&.sp \fIn\fR\fR
+.ad
+.RS 12n
+insert \fIn\fR spacing lines
+.RE
+
+.sp
+.ne 2
+.na
+\fB\&.ls \fIn\fR\fR
+.ad
+.RS 12n
+(line spacing) \fIn\fR=1 single, \fIn\fR=2 double space
+.RE
+
+.sp
+.ne 2
+.na
+\fB\&.na\fR
+.ad
+.RS 12n
+no alignment of right margin
+.RE
+
+.sp
+.ne 2
+.na
+\fB\&.ce \fIn\fR\fR
+.ad
+.RS 12n
+center next \fIn\fR lines
+.RE
+
+.sp
+.ne 2
+.na
+\fB\&.ul \fIn\fR\fR
+.ad
+.RS 12n
+underline next \fIn\fR lines
+.RE
+
+.sp
+.ne 2
+.na
+\fB\&.sz \fI+n\fR\fR
+.ad
+.RS 12n
+add \fIn\fR to point size
+.RE
+
+.sp
+.LP
+Output of the \fBeqn\fR(1), \fBneqn\fR(1), \fBrefer\fR(1), and \fBtbl\fR(1)
+preprocessors for equations and tables is acceptable as input.
+.SH REQUESTS
+.sp
+.LP
+In the following list, "initialization" refers to the first \fB\&.pp,\fR
+\fB\&.lp\fR, \fB\&.ip\fR, \fB\&.np\fR, \fB\&.sh\fR, or \fB\&.uh\fR macro. This
+list is incomplete.
+.sp
+
+.sp
+.TS
+c c c c
+c c c c .
+\fIRequest\fR \fIInitial\fR \fICause\fR \fIExplanation\fR
+ \fIValue\fR \fIBreak\fR
+\fB\&.(c\fR - yes Begin centered block.
+\fB\&.(d\fR - no Begin delayed text.
+\fB\&.(f\fR - no Begin footnote.
+\fB\&.(l\fR - yes Begin list.
+\fB\&.(q\fR - yes Begin major quote.
+\fB\&.(x\fR\fIx\fR - no Begin indexed item in index \fIx\fR.
+\fB\&.(z\fR - no Begin floating keep.
+\fB\&.)c\fR - yes End centered block.
+\fB\&.)d\fR - yes End delayed text.
+\fB\&.)f\fR - yes End footnote.
+\fB\&.)l\fR - yes End list.
+\fB\&.)q\fR - yes End major quote.
+\fB\&.)x\fR - yes End index item.
+\fB\&.)z\fR - yes End floating keep.
+\fB\&.++\fR \fIm H\fR - no Define paper section.
+ \fIm\fR defines the part of the paper,
+ T{
+and can be \fBC\fR (chapter), \fBA\fR (appendix), \fBP\fR (preliminary, for instance,
+T}
+ abstract, table of contents, etc.),
+ \fBB\fR (bibliography), \fBRC\fR (chapters
+ renumbered from page one each
+ chapter), or \fBRA\fR (appendix renumbered
+ from page one).
+\fB\&.+c \fR\fIT\fR - yes Begin chapter (or appendix, etc.,
+ as set by \fB\&.++\fR). \fIT\fR is
+ the chapter title.
+\fB\&.1c\fR 1 yes One column format on a new page.
+\fB\&.2c\fR 1 yes Two column format.
+\fB\&.EN\fR - yes Space after equation produced by \fBeqn\fR
+ or \fBneqn\fR.
+\fB\&.EQ\fR \fIx y\fR - yes Precede equation; break out and
+ add space. Equation number is \fIy\fR.
+ The optional argument \fIx\fR may be \fII\fR
+ to indent equation (default),
+ \fIL\fR to left-adjust the equation, or
+ \fIC\fR to center the equation.
+\fB\&.GE\fR - yes End \fIgremlin\fR picture.
+\fB\&.GS\fR - yes Begin \fIgremlin\fR picture.
+\fB\&.PE\fR - yes End \fBpic\fR picture.
+\fB\&.PS\fR - yes Begin \fBpic\fR picture.
+\fB\&.TH\fR - YES "heading End, section"
+\fB\&.TE\fR - yes End table.
+\fB\&.TS\fR \fIx\fR - yes Begin table; if \fIx\fR is \fIH\fR table
+ has repeated heading.
+\fB\&.ac\fR \fIA N\fR - no Set up for ACM style output.
+ \fIA\fR is the Author's name(s), \fIN\fR is the
+ total number of pages. Must be given
+ before the first initialization.
+\fB\&.b\fR \fIx\fR no no Print \fIx\fR in boldface; if no argument
+ switch to boldface.
+\fB\&.ba\fR \fI+n\fR 0 yes Augments the base indent by \fIn\fR.
+ This indent is used to set the indent
+ on regular text (like paragraphs).
+\fB\&.bc\fR no yes Begin new column.
+\fB\&.bi\fR \fIx\fR no no Print \fIx\fR in bold italics
+ (nofill only).
+\fB\&.bu\fR - yes Begin bulleted paragraph.
+\fB\&.bx\fR \fIx\fR no no Print \fIx\fR in a box (nofill only).
+\fB\&.ef\fR \fI\&'x'y'z\fR \&''''' no Set even footer to \fIx y z\fR.
+\fB\&.eh\fR \fI\&'x'y'z\fR \&''''' no Set even header to \fIx y z\fR.
+\fB\&.fo\fR \fI\&'x'y'z\fR \&''''' no Set footer to \fIx y z\fR.
+\fB\&.hx\fR - no Suppress headers and footers on
+ next page.
+\fB\&.he\fR \fI\&'x'y'z\fR \&''''' no Set header to \fIx y z\fR.
+\fB\&.hl\fR - yes Draw a horizontal line.
+\fB\&.i\fR \fIx\fR no no Italicize \fIx\fR; if \fIx\fR missing, italic
+ text follows.
+\fB\&.ip\fR \fIx y\fR no yes Start indented paragraph, with
+ hanging tag \fIx\fR. Indentation is
+ \fIy\fR ens (default 5).
+\fB\&.lp\fR yes yes Start left-blocked paragraph.
+\fB\&.lo\fR - no Read in a file of local macros
+ of the form \fB\&.*\fR\fIx.\fR Must be
+ given before initialization.
+\fB\&.np\fR 1 yes Start numbered paragraph.
+\fB\&.of\fR \fI\&'x'y'z\fR \&''''' no Set odd footer to x y z.
+\fB\&.oh\fR \fI\&'x'y'z\fR \&''''' no Set odd header to x y z.
+\fB\&.pd\fR - yes Print delayed text.
+\fB\&.pp\fR no yes Begin paragraph. First line indented.
+\fB\&.r\fR yes no Roman text follows.
+\fB\&.re\fR - no Reset tabs to default values.
+\fB\&.sc\fR no no Read in a file of special characters
+ and diacritical marks. Must be
+ given before initialization.
+\fB\&.sh\fR \fIn x\fR - yes Section head follows, font
+ automatically bold. \fIn\fR is level
+ of section, \fIx\fR is title of section.
+\fB\&.sk\fR no no Leave the next page blank.
+ Only one page is remembered ahead.
+\fB\&.sm\fR \fIx\fR - no Set \fIx\fR in a smaller pointsize.
+\fB\&.sz\fR \fI+n\fR 10p no Augment the point size by \fIn\fR points.
+\fB\&.th\fR no no Produce the paper in thesis format.
+ Must be given before initialization.
+\fB\&.tp\fR no yes Begin title page.
+\fB\&.u\fR \fIx\fR - no Underline argument (even in \fBtroff\fR).
+ (Nofill only).
+\fB\&.uh\fR - yes Like \fB\&.sh\fR but unnumbered.
+\fB\&.xp\fR \fIx\fR - no Print index \fIx\fR.
+.TE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/usr/share/lib/tmac/e\fR\fR
+.ad
+.RS 28n
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/share/lib/tmac/*.me\fR\fR
+.ad
+.RS 28n
+
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR col (1),
+.BR eqn (1),
+.BR nroff (1),
+.BR refer (1),
+.BR tbl (1),
+.BR troff (1)
diff --git a/usr/src/man/man7/mech_spnego.7 b/usr/src/man/man7/mech_spnego.7
new file mode 100644
index 0000000000..1827e29703
--- /dev/null
+++ b/usr/src/man/man7/mech_spnego.7
@@ -0,0 +1,122 @@
+'\" te
+.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH MECH_SPNEGO 7 "Oct 4, 2004"
+.SH NAME
+mech_spnego \- Simple and Protected GSS-API Negotiation Mechanism
+.SH SYNOPSIS
+.LP
+.nf
+/usr/lib/gss/mech_spnego.so.1
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The SPNEGO security mechanism for \fBGSS\fR-\fBAPI\fR allows
+\fBGSS\fR-\fBAPI\fR applications to negotiate the actual security mechanism to
+be used in the \fBGSS\fR-\fBAPI\fR session. \fBmech_spnego.so.1\fR is a shared
+object module that is dynamically opened by applications that specify the
+SPNEGO Object Identifier (\fBOID\fR) in calls to the \fBGSS\fR-\fBAPI\fR
+functions (see \fBlibgss\fR(3LIB)).
+.sp
+.LP
+SPNEGO is described by IETF RFC 2478 and is intended to be used in environments
+where multiple \fBGSS\fR-\fBAPI \fRmechanisms are available to the client or
+server and neither side knows what mechanisms are supported by the other.
+.sp
+.LP
+When SPNEGO is used, it selects the list of mechanisms to advertise by reading
+the \fBGSS\fR mechanism configuration file, \fB/etc/gss/mech\fR (see
+\fBmech\fR(5)), and by listing all active mechanisms except for itself.
+.SH OPTIONS
+.sp
+.LP
+SPNEGO may be configured to function in two ways. The first way is to
+interoperate with Microsoft SSPI clients and servers that use the Microsoft
+"\fBNegotiate\fR" method, which is also based on SPNEGO. The Microsoft
+"\fBNegotiate\fR" mechanism does not strictly follow the IETF RFC. Therefore,
+use special handling in order to enable full interoperability. In order to
+interoperate, place option "\fB[ msinterop ]\fR" at the end of the SPNEGO line
+in \fB/etc/gss/mech\fR.
+.sp
+.LP
+This is an example (from \fB/etc/gss/mech\fR):
+.sp
+.in +2
+.nf
+\fBspnego 1.3.6.1.5.5.2 mech_spnego.so [ msinterop ]\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Without the "\fB[ msinterop ]\fR" option, \fBmech_spnego\fR will follow the
+strict IETF RFC 2478 specification and will not be able to negotiate with
+Microsoft applications that try to use the SSPI "\fBNegotiate\fR" mechanism.
+.SH INTERFACES
+.sp
+.LP
+\fBmech_spnego.so.1\fR has no public interfaces. It is only activated and used
+through the \fBGSS\fR-\fBAPI\fR interface provided by \fBlibgss.so.1\fR (see
+\fBlibgss\fR(3LIB)).
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/gss/mech_spnego.so.1\fR\fR
+.ad
+.sp .6
+.RS 4n
+shared object file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/sparcv9/gss/mech_spnego.so.1\fR\fR
+.ad
+.sp .6
+.RS 4n
+SPARC 64-bit shared object file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/amd64/gss/mech_spnego.so.1\fR\fR
+.ad
+.sp .6
+.RS 4n
+x86 64-bit shared object file
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+MT Level Safe
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR Intro (3),
+.BR libgss (3LIB),
+.BR mech (5),
+.BR attributes (7)
+.sp
+.LP
+\fISolaris Security for Developers Guide\fR
diff --git a/usr/src/man/man7/menu.4th.7 b/usr/src/man/man7/menu.4th.7
new file mode 100644
index 0000000000..79c4712298
--- /dev/null
+++ b/usr/src/man/man7/menu.4th.7
@@ -0,0 +1,307 @@
+.\" Copyright (c) 2011-2013 Devin Teske
+.\" All rights reserved.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\" notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\" notice, this list of conditions and the following disclaimer in the
+.\" documentation and/or other materials provided with the distribution.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+.\" SUCH DAMAGE.
+.\"
+.Dd July 20, 2018
+.Dt MENU.4TH 7
+.Os
+.Sh NAME
+.Nm menu.4th
+.Nd loader dynamic menu boot module
+.Sh DESCRIPTION
+The file that goes by the name of
+.Nm
+is a set of commands designed to display a dynamic menu system managed through
+a system of carefully named environment variables.
+The commands of
+.Nm
+by themselves are not enough for most uses.
+Please refer to the
+examples below for the most common situations, and to
+.Xr loader 7
+for additional commands.
+.Pp
+Before using any of the commands provided in
+.Nm ,
+it must be included
+through the command:
+.Pp
+.Dl include menu.4th
+.Pp
+This line is present in the default
+.Pa /boot/forth/menu.rc
+file, so it is not needed (and should not be re-issued) in a normal setup.
+.Pp
+The commands provided by it are:
+.Pp
+.Bl -tag -width disable-module_module -compact -offset indent
+.It Ic menu-init
+Draws the menu bounding box and initializes some internal state variables.
+This should be called before any other menu-related functions.
+.It Ic menu-display
+Displays the menu (configured via the below documented environment variables)
+and blocks on keyboard input, awaiting user action.
+.It Ic menu-erase
+Clears the screen area within the menu bounding box.
+.It Ic menu-redraw
+Calls
+.Ic menu-erase
+and then redraws the menu.
+.It Ic menu-unset
+Unsets the environment variables associated with individual menu items,
+clearing the way for a new menu.
+.It Ic menu-clear
+Calls
+.Ic menu-unset
+and then
+.Ic menu-erase .
+.El
+.Pp
+The environment variables that effect its behavior are:
+.Bl -tag -width bootfile -offset indent
+.It Va loader_color
+If set to
+.Dq Li NO
+(case-insensitive) or
+.Dq Li 0 ,
+causes the menu to be displayed without color.
+The default is to use ANSI coloring whenever possible.
+If serial boot is enabled, color is disabled by default.
+Color features include the use of ANSI bold for numbers appearing to the left
+of menuitems and the use of special
+.Dq Li ansi
+variables described below.
+.It Va autoboot_delay
+Number of seconds
+.Ic menu-display
+will wait before executing
+.Va menu_timeout_command
+.Ic ( boot
+by default) unless a key is pressed.
+If set to
+.Dq Li NO
+(case-insensitive)
+.Ic menu-display
+will wait for user input and never execute
+.Ic menu_timeout_command .
+If set to
+.Dq Li -1 ,
+.Ic menu-display
+will boot immediately, preventing both interruption of the
+.Ic autoboot
+process and escaping to the loader prompt.
+Default is
+.Dq Li 10 .
+See
+.Xr loader 7
+for additional information.
+.It Va menu_timeout_command
+The command to be executed after
+.Va autoboot_delay
+seconds if a key is not pressed.
+The default is
+.Ic boot .
+.It Va loader_menu_frame
+Sets the desired box style to draw around the boot menu.
+Possible values are:
+.Dq Li single
+.Pq the default ,
+.Dq Li double ,
+and
+.Dq Li none .
+.It Va loader_menu_timeout_x
+Sets the desired column position of the timeout countdown text.
+Default is 4.
+.It Va loader_menu_timeout_y
+Sets the desired row position of the timeout countdown text.
+Default is 23.
+.It Va loader_menu_title
+The text to display above the menu.
+Default is
+.Dq Li "Welcome to FreeBSD" .
+.It Va loader_menu_title_align
+Default is to align
+.Ic loader_menu_title
+centered above the menu.
+This can be set to
+.Dq Li left
+or
+.Dq Li right
+to instead display the title left-or-right justified
+.Pq respectively .
+.It Va loader_menu_x
+Sets the desired column position of the boot menu.
+Default is 5.
+.It Va loader_menu_y
+Sets the desired row position of the boot menu.
+Default is 10.
+.It Va menu_caption[x]
+The text to be displayed for the numbered menuitem
+.Dq Li x .
+.It Va menu_command[x]
+The command to be executed when the number associated with menuitem
+.Dq Li x
+is pressed.
+See the list of included FICL words below for some ideas.
+.It Va menu_keycode[x]
+An optional decimal ASCII keycode to be associated with menuitem
+.Dq Li x .
+When pressed, will cause the execution of
+.Va menu_command[x] .
+.It Va ansi_caption[x]
+If
+.Va loader_color
+is set
+.Pq enabled by default ,
+use this caption for menuitem
+.Dq Li x
+instead of
+.Va menu_caption[x] .
+.It Va toggled_text[x]
+For menuitems where
+.Va menu_command[x]
+is set to
+.Dq Li toggle_menuitem
+(or a derivative thereof), the text displayed
+will toggle between this and
+.Va menu_caption[x] .
+.It Va toggled_ansi[x]
+Like
+.Va toggled_text[x]
+except used when
+.Va loader_color
+is enabled
+.Pq default .
+.It Va menu_caption[x][y]
+For menuitems where
+.Va menu_command[x]
+is set to
+.Dq Li cycle_menuitem
+(or a derivative thereof), the text displayed will cycle between this and other
+.Va menu_caption[x][y]
+entries.
+.It Va ansi_caption[x][y]
+Like
+.Va menu_caption[x][y]
+except used when
+.Va loader_color
+is enabled
+.Pq default .
+.It Va menu_acpi
+When set to a number
+.Dq Li x
+associated with a given menuitem, that menuitem will allow to select
+acpi-user-options
+.Pq see Xr eeprom 8 .
+.It Va menu_options
+When set to a number
+.Dq Li x ,
+a single blank-line and an
+.Dq Li Options
+header are inserted between
+.Va menu_caption[x-1]
+and
+.Va menu_caption[x]
+(if configured).
+.It Va menu_reboot
+If set, adds a built-in
+.Dq Li Reboot
+menuitem to the end of the last configured menuitem.
+If
+.Va menu_options
+is configured, the
+.Dq Li Reboot
+menuitem will be inserted before the
+.Dq Options
+separator.
+.El
+.Pp
+In addition, it provides the following FICL words:
+.Pp
+.Bl -tag -width disable-module_module -compact -offset indent
+.It Ic arch-i386? ( -- BOOL )
+Returns true (-1) on i386 and false (0) otherwise.
+.It Ic acpipresent? ( -- BOOL )
+Returns true (-1) if ACPI is present and false (0) otherwise.
+.It Ic acpienabled? ( -- BOOL )
+Returns true (-1) if ACPI is enabled and false (0) otherwise.
+.It Ic toggle_menuitem ( N -- N )
+Toggles menuitem
+.Dq Li N
+between
+.Va menu_caption[x]
+and
+.Va toggled_text[x]
+(where
+.Dq Li N
+represents the ASCII decimal value for
+.Dq Li x ) .
+.It Ic cycle_menuitem ( N -- N )
+Cycles menuitem
+.Dq Li N
+between
+.Va menu_caption[x][y]
+entries (where
+.Va N
+represents the ASCII decimal value for
+.Va x ) .
+.El
+.Pp
+For all values of
+.Dq Li x
+above, use any number between 1 through 9.
+Sorry, double-digits are not currently supported.
+.Sh FILES
+.Bl -tag -width /boot/forth/loader.4th -compact
+.It Pa /boot/loader
+The
+.Xr loader 7 .
+.It Pa /boot/forth/menu.4th
+.Nm
+itself.
+.It Pa /boot/loader.rc
+.Xr loader 7
+bootstrapping script.
+.El
+.Sh EXAMPLES
+A simple boot menu:
+.Pp
+.Bd -literal -offset indent -compact
+include /boot/forth/menu.4th
+menu-init
+set menu_caption[1]="Boot"
+set menu_command[1]="boot"
+set menu_options=2
+set menu_caption[2]="Option: NO"
+set toggled_text[2]="Option: YES"
+set menu_command[2]="toggle_menuitem"
+set menu_timeout_command="boot"
+set menu_reboot
+menu-display
+.Ed
+.Sh SEE ALSO
+.Xr loader.conf 5 ,
+.Xr beastie.4th 7 ,
+.Xr loader 7 ,
+.Xr loader.4th 7 ,
+.Xr eeprom 8
diff --git a/usr/src/man/man7/menusets.4th.7 b/usr/src/man/man7/menusets.4th.7
new file mode 100644
index 0000000000..bd29efd1f6
--- /dev/null
+++ b/usr/src/man/man7/menusets.4th.7
@@ -0,0 +1,359 @@
+.\" Copyright (c) 2012 Devin Teske
+.\" All rights reserved.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\" notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\" notice, this list of conditions and the following disclaimer in the
+.\" documentation and/or other materials provided with the distribution.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+.\" SUCH DAMAGE.
+.\"
+.Dd July 20, 2018
+.Dt MENUSETS.4TH 7
+.Os
+.Sh NAME
+.Nm menusets.4th
+.Nd loader dynamic submenu boot module
+.Sh DESCRIPTION
+The file that goes by the name of
+.Nm
+is a set of commands designed to add submenu functionality to the dynamic menu
+system provided by
+.Xr menu.4th 7 .
+Submenus are managed through a system of carefully named environment variables.
+The commands of
+.Nm
+by themselves are not enough for most uses.
+Please refer to the examples below for the most common situations, and to
+.Xr menu.4th 7
+for additional commands.
+.Pp
+Before using any of the commands provided in
+.Nm ,
+it must be included
+through the command:
+.Pp
+.Dl include menusets.4th
+.Pp
+This line is present in the default
+.Pa /boot/forth/menu-commands.4th
+file, so it is not needed (and should not be re-issued) in a normal setup.
+.Pp
+The commands provided by it are:
+.Pp
+.Bl -tag -width menuset-loadinitial -compact -offset indent
+.It Ic menuset-loadsetnum
+Takes a single integer on the stack to identify the menuset environment
+variables to be activated (see environment variables below).
+.It Ic menuset-loadinitial
+If $menuset_initial is set, passes the value to menuset-loadsetnum.
+The value must be a number.
+.It Ic menusets-unset
+Unsets the environment variables associated with all menusets.
+Increments starting at 1 and stops at the first unconfigured menuset.
+A menuset is considered configured if the caption for item 1 is set.
+.El
+.Pp
+The environment variables that effect its behavior are:
+.Bl -tag -width bootfile -offset indent
+.It Va menuset_initial
+Number to pass to menuset-loadsetnum when menuset-loadinitial is called.
+.It Va menuset_nameN
+Used to give a name to a menuset.
+.El
+.Pp
+When a menuset is NOT given a name (the default),
+menuset N is comprised of the following environment variables:
+.Pp
+.Bl -tag -width menusetN_caption[x][y] -compact -offset indent
+.It Va ansisetN_caption[x]
+-> ansi_caption[x]
+.It Va ansisetN_caption[x][y]
+-> ansi_caption[x][y]
+.It Va menusetN_acpi
+-> menu_acpi
+.It Va menusetN_caption[x]
+-> menu_caption[x]
+.It Va menusetN_caption[x][y]
+-> menu_caption[x][y]
+.It Va menusetN_command[x]
+-> menu_command[x]
+.It Va menusetN_init
+->
+.Dq Li evaluated
+.It Va menusetN_init[x]
+-> menu_init[x]
+.It Va menusetN_keycode[x]
+-> menu_keycode[x]
+.It Va menusetN_options
+-> menu_options
+.It Va menusetN_optionstext
+-> menu_optionstext
+.It Va menusetN_reboot
+-> menu_reboot
+.It Va toggledsetN_ansi[x]
+-> toggled_ansi[x]
+.It Va toggledsetN_text[x]
+-> toggled_text[x]
+.El
+.Pp
+When you choose to give a menuset a name (by setting $menuset_nameN),
+menuset N is instead comprised of the following environment variables:
+.Pp
+.Bl -tag -width NAMEmenu_caption[x][y] -compact -offset indent
+.It Va NAMEansi_caption[x]
+-> ansi_caption[x]
+.It Va NAMEansi_caption[x][y]
+-> ansi_caption[x][y]
+.It Va NAMEmenu_acpi
+-> menu_acpi
+.It Va NAMEmenu_caption[x]
+-> menu_caption[x]
+.It Va NAMEmenu_caption[x][y]
+-> menu_caption[x][y]
+.It Va NAMEmenu_command[x]
+-> menu_command[x]
+.It Va NAMEmenu_init
+->
+.Dq Li evaluated
+.It Va NAMEmenu_init[x]
+-> menu_init[x]
+.It Va NAMEmenu_keycode[x]
+-> menu_keycode[x]
+.It Va NAMEmenu_options
+-> menu_options
+.It Va NAMEmenu_optionstext
+-> menu_optionstext
+.It Va NAMEmenu_reboot
+-> menu_reboot
+.It Va NAMEtoggled_ansi[x]
+-> toggled_ansi[x]
+.It Va NAMEtoggled_text[x]
+-> toggled_text[x]
+.El
+.Pp
+where
+.Dq Li NAME
+is the value of $menuset_nameN.
+In the case of $NAMEmenu_init ($menusetN_init when $menuset_nameN is unset),
+the value is evaluated as an FICL statement.
+This can be used to dynamically adjust the menuset variables right before the
+menu is activated.
+.Pp
+In addition,
+.Nm
+provides the following FICL words:
+.Pp
+.Bl -tag -width menuset -compact -offset indent
+.It Ic menuset-checksetnum ( N -- )
+Given a single integer on the stack, sets a global variable
+.Va menuset_use_name
+to a boolean based on whether $menuset_nameN is set (true) or not (false).
+Also sets $affix temporary variable (prefix or infix depending on
+menuset_use_name).
+Automatically called by menuset-loadsetnum and menusets-unset.
+.It Ic menuset-loadvar ( -- )
+Used indirectly to shorten syntax and mitigate dictionary size.
+Requires the following temporary environment variables:
+.Pp
+.Bl -tag -width affix -compact -offset indent
+.It Va type
+should be set to one of: menu toggled ansi
+.It Va var
+should be set to one of: caption command keycode text ...
+.It Va affix
+either a prefix (menuset_use_name is true) or infix (menuset_use_name is false)
+.El
+.Pp
+If the global
+.Va menuset_use_name
+is true, the variable ${type}_${var} is made to
+equal the value of the variable ${affix}${type}_${var}
+(note: in this case menuset-checksetnum has set $affix to $menuset_nameN).
+Otherwise (when
+.Va menuset_use_name
+is false), the variable ${type}_${var} is made to
+equal the value of the variable ${type}set${affix}_${var}
+(note: in this case menuset-checksetnum has set $affix to N).
+.Pp
+Both the global variable
+.Va menuset_use_name
+and the environment variable $affix are automatically handled by
+menuset-checksetnum above (which is automatically called by
+menuset-loadsetnum).
+.It Ic menuset-unloadvar ( -- )
+Used indirectly to shorten syntax and mitigate dictionary size.
+Like menuset-loadvar except it unsets the menuset variable.
+If global
+.Va menuset_use_name
+is true ($affix is $menuset_nameN),
+variable ${affix}${type}_${var} is unset.
+Otherwise, $affix is N and variable ${type}set${affix}_${var} is unset.
+.It Ic menuset-loadmenuvar ( -- )
+Sets $type to
+.Dq menu
+and calls menuset-loadvar.
+.It Ic menuset-unloadmenuvar ( -- )
+Sets $type to
+.Dq menu
+and calls menuset-unloadvar.
+.It Ic menuset-loadxvar ( -- )
+Like menuset-loadvar except it takes an additional temporary variable $x.
+If the global
+.Va menuset_use_name
+is true (making $affix equal $menuset_nameN),
+sets variable ${type}_${var}[${x}] to variable ${affix}${type}_${var}[${x}].
+Otherwise ($affix being N), sets the same variable to instead
+${type}set{affix}_${var}[${x}].
+.It Ic menuset-unloadxvar ( -- )
+Like menuset-loadxvar except it unsets the menuset variable.
+If global
+.Va menuset_use_name
+is true, unsets ${affix}${type}_${var}[${x}].
+Otherwise, unsets ${type}set${affix}_${var}[${x}].
+.It Ic menuset-loadansixvar ( -- )
+Sets $type to
+.Dq ansi
+and calls menuset-loadxvar
+.It Ic menuset-unloadansixvar ( -- )
+Sets $type to
+.Dq ansi
+and calls menuset-unloadxvar
+.It Ic menuset-loadmenuxvar ( -- )
+Sets $type to
+.Dq ansi
+and calls menuset-loadxvar
+.It Ic menuset-unloadmenuxvar ( -- )
+Sets $type to
+.Dq ansi
+and calls menuset-unloadxvar
+.It Ic menuset-loadtoggledxvar ( -- )
+Sets $type to
+.Dq toggled
+and calls menuset-loadxvar
+.It Ic menuset-unloadtoggledxvar ( -- )
+Sets $type to
+.Dq toggled
+and calls menuset-unloadxvar
+.It Ic menuset-loadxyvar ( -- )
+Like menuset-loadxvar except it takes an additional temporary variable $y.
+If the global
+.Va menuset_use_name
+is true ($affix is $menuset_nameN),
+sets variable ${type}_${var}[${x}][${y}] to ${affix}${type}_${var}[${x}][${y}].
+Otherwise ($affix is N) sets the same variable to instead
+${type}set${affix}_${var}[${x}][${y}].
+.It Ic menuset-unloadxyvar ( -- )
+Like menuset-loadxyvar except it unsets the menuset variable.
+If the global
+.Va menuset_use_name
+is true, unsets ${affix}${type}_${var}[${x}][${y}].
+Otherwise, unsets ${type}set${affix}_${var}[${x}][${y}].
+.It Ic menuset-loadansixyvar ( -- )
+Sets $type to
+.Dq ansi
+and calls menuset-loadxyvar.
+.It Ic menuset-unloadansixyvar ( -- )
+Sets $type to
+.Dq ansi
+and calls menuset-unloadxyvar.
+.It Ic menuset-loadmenuxyvar ( -- )
+Sets $type to
+.Dq menu
+and calls menuset-loadxyvar.
+.It Ic menuset-unloadmenuxyvar ( -- )
+Sets $type to
+.Dq menu
+and calls menuset-unloadxyvar.
+.It Ic menuset-setnum-namevar ( N -- C-Addr/U )
+Takes a single integer on the stack and replaces it with a string (in c-addr/u
+format) whose value is
+.Dq menuset_nameN .
+For example, if given 1 returns
+.Dq menuset_name1 .
+.It Ic menuset-cleanup ( N -- )
+Unsets all the various temporary variables, currently
+.Va type ,
+.Va var ,
+.Va x ,
+.Va y ,
+and
+.Va affix .
+.El
+.Pp
+For all values of
+.Dq Li x
+above, use any number between 1 through 9. Sorry, double-digits are not
+currently supported.
+For all values of
+.Dq Li N
+above, use any number between 1 and 65535.
+.Sh FILES
+.Bl -tag -width /boot/menu-commands.4th -compact
+.It Pa /boot/loader
+The
+.Xr loader 7 .
+.It Pa /boot/forth/menu.4th
+Dynamic menu module.
+.It Pa /boot/forth/menu-commands.4th
+Contains the goto_menu command.
+.It Pa /boot/forth/menusets.4th
+.Nm
+itself.
+.It Pa /boot/loader.rc
+.Xr loader 7
+bootstrapping script.
+.El
+.Sh EXAMPLES
+A simple boot menu with a submenu:
+.Pp
+.Bd -literal -offset indent -compact
+include /boot/forth/menu.4th
+include /boot/forth/menu-commands.4th
+menu-init
+set menuset1_caption[1]="Boot"
+set menuset1_command[1]="boot"
+set menuset1_caption[2]="Submenu..."
+set menuset1_command[2]="2 goto_menu"
+set menuset2_caption[1]="Back"
+set menuset2_command[1]="1 goto_menu"
+set menuset_initial=2
+menuset-loadinitial
+menu-display
+.Ed
+.Pp
+The same boot menu with named menusets:
+.Pp
+.Bd -literal -offset indent -compact
+include /boot/forth/menu.4th
+include /boot/forth/menu-commands.4th
+menu-init
+set menuset_name1=main
+set mainmenu_caption[1]="Boot"
+set mainmenu_command[1]="boot"
+set mainmenu_caption[2]="Submenu..."
+set mainmenu_command[2]="2 goto_menu"
+set menuset_name2=sub
+set submenu_caption[1]="Back"
+set submenu_command[1]="1 goto_menu"
+.Ed
+.Sh SEE ALSO
+.Xr loader.conf 5 ,
+.Xr beastie.4th 7 ,
+.Xr loader 7 ,
+.Xr loader.4th 7 ,
+.Xr menu.4th 7
diff --git a/usr/src/man/man7/mm.7 b/usr/src/man/man7/mm.7
new file mode 100644
index 0000000000..c78fad3d94
--- /dev/null
+++ b/usr/src/man/man7/mm.7
@@ -0,0 +1,446 @@
+'\" te
+.\" Copyright (c) 1997, Sun Microsystems, Inc.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH MM 7 "Jan 1, 1997"
+.SH NAME
+mm \- text formatting (memorandum) macros
+.SH SYNOPSIS
+.LP
+.nf
+\fBnroff\fR \fB-mm\fR [\fIoptions\fR] \fIfilename\fR...
+.fi
+
+.LP
+.nf
+\fBtroff\fR \fB-mm\fR [\fIoptions\fR] \fIfilename\fR...
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+This package of \fBnroff\fR(1) and \fBtroff\fR(1) macro definitions provides a
+formatting facility for various styles of articles, theses, and books. When
+producing 2-column output on a terminal or lineprinter, or when reverse line
+motions are needed, filter the output through \fBcol\fR(1). All external
+\fB-mm\fR macros are defined below.
+.sp
+.LP
+Note: this \fB-mm\fR macro package is an extended version written at Berkeley
+and is a superset of the standard \fB-mm\fR macro packages as supplied by Bell
+Labs. Some of the Bell Labs macros have been removed; for instance, it is
+assumed that the user has little interest in producing headers stating that the
+memo was generated at Whippany Labs.
+.sp
+.LP
+Many \fBnroff\fR and \fBtroff\fR requests are unsafe in conjunction with this
+package. However, the first four requests below may be used with impunity after
+initialization, and the last two may be used even before initialization:
+.sp
+.ne 2
+.na
+\fB\fB\&.bp\fR\fR
+.ad
+.RS 11n
+begin new page
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\&.br\fR \fR
+.ad
+.RS 11n
+break output line
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\&.sp\fR\fIn\fR \fR
+.ad
+.RS 11n
+insert n spacing lines
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\&.ce\fR\fIn\fR \fR
+.ad
+.RS 11n
+center next n lines
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\&.ls\fR\fIn\fR \fR
+.ad
+.RS 11n
+line spacing: \fIn\fR\fB=1\fR single, \fIn\fR\fB=2\fR double space
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\&.na\fR \fR
+.ad
+.RS 11n
+no alignment of right margin
+.RE
+
+.sp
+.LP
+Font and point size changes with \fB\ef\fR and \fB\es\fR are also allowed; for
+example, \fB\efIword\efR\fR will italicize \fIword\fR. Output of the
+\fBtbl\fR(1), \fBeqn\fR(1) and \fBrefer\fR(1) preprocessors for equations,
+tables, and references is acceptable as input.
+.SH REQUESTS
+.sp
+.LP
+Here is a table of macros.
+.sp
+
+.sp
+.TS
+c | c | c | c
+l | l | l | l .
+Macro Name Initial Value Break? Reset? Explanation
+_
+\fB\&.1C\fR on y,y one column format on a new page
+_
+\fB\&.2C\fR [ \fIl\fR ] - y,y two column format \fIl\fR=line length
+_
+\fB\&.AE\fR - y end abstract
+_
+\fB\&.AL\fR [ \fIt\fR ] [ \fIi\fR ] [ \fIs\fR ] \fIt\fR=\fB1\fR;\fIi\fR=\fB\&.Li\fR;\fIs\fR=\fB0\fR y T{
+Start automatic list type \fIt\fR=[\fB1\fR,\fBA\fR,\fBa\fR,\fBI\fR,\fBi\fR] \fB1\fR=arabic numbers; \fBA\fR=uppercase letters \fBa\fR=lowercase letters; \fBI\fR=uppercase Roman numerals; \fBi\fR=lowercase Roman numerals indentation \fIi\fR; separation \fIs\fR
+T}
+_
+\fB\&.AS\fR \fIm\fR [ \fIn\fR ] \fIn\fR=\fB0\fR y begin abstract
+_
+\fB\&.AU\fR - y author's name
+_
+\fB\&.AV\fR \fIx\fR - y signature and date line of verifier \fIx\fR
+_
+\fB\&.B\fR \fIx\fR - n embolden \fIx\fR; if no \fIx\fR, switch to boldface
+_
+\fB\&.BE\fR - y end block text
+_
+\fB\&.BI\fR \fIx\fR \fIy\fR - n embolden \fIx\fR and underline \fIy\fR
+_
+\fB\&.BL\fR - y bullet list
+_
+\fB\&.BR\fR \fIx\fR \fIy\fR - n embolden \fIx\fR and use Roman font for \fIy\fR
+_
+\fB\&.BS\fR - n start block text
+_
+\fB\&.CN\fR - y same as \fB\&.DE\fR (\fBnroff\fR)
+_
+\fB\&.CS\fR - y cover sheet
+_
+\fB\&.CW\fR - n same as \fB\&.DS I\fR (\fBnroff\fR)
+_
+\fB\&.DE\fR - y end display
+_
+\fB\&.DF\fR [ \fIp\fR ] [ \fIf\fR ] [ \fIrp\fR ] \fIp\fR=\fBL\fR;\fIf\fR=\fBN\fR y T{
+start floating display; position \fIp\fR=[\fBL\fR,\fBC\fR,\fBCB\fR] \fBL\fR=left; \fBI\fR=indent; \fBC\fR=center; \fBCB\fR=center block fill \fIf\fR=[\fBN\fR,\fBY\fR]; right position \fIrp\fR (fill only)
+T}
+_
+\fB\&.DL\fR [ \fIi\fR ] [ \fIs\fR ] - y start dash list
+_
+\fB\&.DS\fR [ \fIp\fR ] [ \fIf\fR ] [ \fIrp\fR ] \fIp\fR=\fBL\fR;\fIf\fR=\fBN\fR y T{
+begin static display (see \fB\&.DF\fR for argument descriptions)
+T}
+_
+\fB\&.EC\fR \fIx\fR [ \fIn\fR ] \fIn\fR=\fB1\fR y equation title; equation \fIx\fR; number \fIn\fR
+_
+\fB\&.EF\fR \fIx\fR - n T{
+even footer appears at the bottom of even-numbered pages; \fIx\fR="\fIl\fR\fB\&'\fR\fIc\fR\fB\&'\fR\fIr\fR" \fIl\fR=left; \fIc\fR=center; \fIr\fR=right
+T}
+_
+\fB\&.EH\fR \fIx\fR - n T{
+even header appears at the top of even-numbered pages; \fIx\fR="\fIl\fR\fB\&'\fR\fIc\fR\fB\&'\fR\fIr\fR" \fIl\fR=left; \fIc\fR=center; \fIr\fR=right
+T}
+_
+\fB\&.EN\fR - y end displayed equation produced by \fBeqn\fR
+_
+\fB\&.EQ\fR - y break out equation produced by \fBeqn\fR
+_
+\fB\&.EX\fR \fIx\fR [ \fIn\fR ] \fIn\fR=\fB1\fR y exhibit title; exhibit \fIx\fR
+_
+ number \fIn\fR
+_
+\fB\&.FD\fR [ \fIf\fR ] [ \fIr\fR ] \fIf\fR=\fB10\fR;\fIr\fR=\fB1\fR n T{
+set footnote style format \fIf\fR=[\fB0-11\fR]; renumber \fIr\fR=[\fB0\fR,\fB1\fR]
+T}
+_
+\fB\&.FE\fR - y end footnote
+_
+\fB\&.FG\fR \fIx\fR [ \fIn\fR ] \fIn\fR=\fB1\fR y figure title; figure \fIx\fR; number \fIn\fR
+_
+\fB\&.FS\fR - n start footnote
+_
+\fB\&.H\fR \fIl\fR [ \fIt\fR ] - y T{
+produce numbered heading level \fIl\fR=[\fB1-7\fR]; title \fIt\fR
+T}
+_
+\fB\&.HU\fR \fIt\fR - y produce unnumbered heading; title \fIt\fR
+_
+\fB\&.I\fR \fIx\fR - n underline \fIx\fR
+_
+\fB\&.IB\fR \fIx\fR \fIy\fR - n underline \fIx\fR and embolden \fIy\fR
+_
+\fB\&.IR\fR \fIx\fR \fIy\fR - n underline \fIx\fR and use Roman font on \fIy\fR
+_
+\fB\&.LE\fR [ \fIs\fR ] \fIs\fR=\fB0\fR y end list; separation \fIs\fR
+_
+\fB\&.LI\fR [ \fIm\fR ] [ \fIp\fR ] - y start new list item; mark \fIm\fR
+_
+ prefix \fIp\fR (mark only)
+_
+\fB\&.ML\fR \fIm\fR [ \fIi\fR ] [ \fIs\fR ] \fIs\fR=\fB0\fR y T{
+start marked list; mark \fIm\fR indentation \fIi\fR; separation \fIs\fR=[\fB0\fR,\fB1\fR]
+T}
+_
+\fB\&.MT\fR \fIx\fR y memo title; title \fIx\fR
+_
+\fB\&.ND\fR \fIx\fR n T{
+no date in page footer; \fIx\fR is date on cover
+T}
+_
+\fB\&.NE\fR - y end block text
+_
+\fB\&.NS\fR - y start block text
+_
+\fB\&.OF\fR \fIx\fR - n T{
+odd footer appears at the bottom of odd-numbered pages; \fIx\fR="\fIl\fR\fB\&'\fR\fIc\fR\fB\&'\fR\fIr\fR" \fIl\fR=left; \fIc\fR=center; \fIr\fR=right
+T}
+_
+\fB\&.OF\fR \fIx\fR - n T{
+odd header appears at the top of odd-numbered pages; \fIx\fR="\fIl\fR\fB\&'\fR\fIc\fR\fB\&'\fR\fIr\fR" \fIl\fR=left; \fIc\fR=center; \fIr\fR=right
+T}
+_
+\fB\&.OP\fR - y skip to the top of an odd-number page
+_
+\fB\&.P\fR [ \fIt\fR ] \fIt\fR=\fB0\fR y,y T{
+begin paragraph; \fIt\fR=[\fB0\fR,\fB1\fR] \fB0\fR=justified; \fB1\fR=indented
+T}
+_
+\fB\&.PF\fR \fIx\fR - n T{
+page footer appears at the bottom of every page; \fIx\fR="\fIl\fR\fB\&'\fR\fIc\fR\fB\&'\fR\fIr\fR" \fIl\fR=left; \fIc\fR=center; \fIr\fR=right
+T}
+_
+\fB\&.PH\fR \fIx\fR - n T{
+page header appears at the top of every page; \fIx\fR="\fIl\fR\fB\&'\fR\fIc\fR\fB\&'\fR\fIr\fR" \fIl\fR=left; \fIc\fR=center; \fIr\fR=right
+T}
+_
+\fB\&.R\fR on n return to Roman font
+_
+\fB\&.RB\fR \fIx\fR \fIy\fR - n use Roman on \fIx\fR and embolden \fIy\fR
+_
+\fB\&.RI\fR \fIx\fR \fIy\fR - n use Roman on \fIx\fR and underline \fIy\fR
+_
+\fB\&.RP\fR \fIx\fR - y,y T{
+released paper format ? \fIx\fR=no stops title on first
+T}
+_
+\fB\&.RS\fR 5n y,y T{
+right shift: start level of relative indentation
+T}
+_
+\fB\&.S\fR \fIm\fR \fIn\fR - n T{
+set character point size & vertical space character point size \fIm\fR; vertical space \fIn\fR
+T}
+_
+\fB\&.SA\fR \fIx\fR \fIx\fR=\fB1\fR n justification; \fIx\fR=[\fB0\fR,\fB1\fR]
+_
+\fB\&.SK\fR \fIx\fR - y skip \fIx\fR pages
+_
+\fB\&.SM\fR - n smaller; decrease point size by 2
+_
+\fB\&.SP\fR [ \fIx\fR ] - y leave \fIx\fR blank lines
+_
+\fB\&.TB\fR \fIx\fR [ \fIn\fR ] \fIn\fR=\fB1\fR y table title; table \fIx\fR; number \fIn\fR
+_
+\fB\&.TC\fR - y T{
+print table of contents (put at end of input file)
+T}
+_
+_
+\fB\&.TH\fR - Y "multi-page end, header"
+_
+\fB\&.TL\fR - n title in boldface and two points larger
+_
+\fB\&.TM\fR - n UC Berkeley thesis mode
+_
+\fB\&.TP\fR \fIi\fR y y T{
+\fIi\fR=p.i. Begin indented paragraph, with the tag given on the next text line. Set prevailing indent to \fIi\fR.
+T}
+_
+\fB\&.TE\fR - y end of table processed by tbl
+\fB\&.TS\fR \fIx\fR - y,y T{
+begin table; if \fIx\fR=\fBH\fR table has multi-page header
+T}
+_
+\fB\&.TY\fR - y display centered title \fBCONTENTS\fR
+_
+\fB\&.VL\fR \fIi\fR [ \fIm\fR ] [ \fIs\fR ] \fIm\fR=\fB0\fR;\fIs\fR=\fB0\fR y T{
+start variable-item list; indentation \fIi\fR mark-indentation \fIm\fR; separation \fIs\fR
+T}
+.TE
+
+.SH REGISTERS
+.sp
+.LP
+Formatting distances can be controlled in \fB-mm\fR by means of built-in number
+registers. For example, this sets the line length to 6.5 inches:
+.sp
+.in +2
+.nf
+\&.nr LL 6.5i
+.fi
+.in -2
+
+.sp
+.LP
+Here is a table of number registers and their default values:
+.sp
+
+.sp
+.TS
+c | c | c | c
+l | l | l | l .
+Name Register Controls Takes Effect Default
+_
+\fBCl\fR contents level table of contents 2
+_
+\fBDe\fR display eject display 0
+_
+\fBDf\fR display floating display 5
+_
+\fBDs\fR display spacing display 1v
+_
+\fBHb\fR heading break heading 2
+_
+\fBHc\fR heading centering heading 0
+_
+\fBHi\fR heading indent heading 1
+_
+\fBHi\fR heading spacing heading 1
+_
+\fBHu\fR heading unnumbered heading 2
+_
+\fBLi\fR list indentation list \fB6 (\fR\fBnroff\fR\fB) 5 (\fR\fBtroff\fR\fB)\fR
+_
+\fBLs\fR list spacing list 6
+_
+\fBPi\fR paragraph indent paragraph 5
+_
+\fBPt\fR paragraph type paragraph 1
+_
+\fBSi\fR static indent display \fB5 (\fR\fBnroff\fR\fB) 3 (\fR\fBtroff\fR\fB)\fR
+.TE
+
+.sp
+.LP
+When resetting these values, make sure to specify the appropriate units.
+Setting the line length to 7, for example, will result in output with one
+character per line. Setting \fBPi\fR to 0 suppresses paragraph indentation
+.sp
+.LP
+Here is a list of string registers available in \fB-mm\fR; they may be used
+anywhere in the text:
+.sp
+
+.sp
+.TS
+c | c
+l | l .
+Name String's Function
+_
+\fB\e*Q\fR quote (\fB"\fR in \fBnroff,\fR\| \fB``\fR in \fBtroff\fR )
+_
+\fB\e*U\fR unquote (\fB"\fR in \fBnroff,\fR\| \fB\&''\fR in \fBtroff\fR )
+_
+\fB\e*-\fR dash (\fB--\fR in \fBnroff,\fR \(em in \fBtroff\fR )
+_
+\fB\e*(MO\fR month (month of the year)
+_
+\fB\e*(DY\fR day (current date)
+_
+\fB\e**\fR automatically numbered footnote
+_
+\fB\e*'\fR acute accent (before letter)
+_
+\fB\e*`\fR grave accent (before letter)
+_
+\fB\e*^\fR circumflex (before letter)
+_
+\fB\e*,\fR cedilla (before letter)
+_
+\fB\e*:\fR umlaut (before letter)
+_
+\fB\e*~\fR tilde (before letter)
+_
+\fB\e(BU\fR bullet item
+_
+\fB\e(DT\fR date (\fImonth day\fR, \fIyr\fR)
+_
+\fB\e(EM\fR em dash
+_
+\fB\e(Lf\fR \fBLIST OF FIGURES\fR title
+_
+\fB\e(Lt\fR \fBLIST OF TABLES\fR title
+_
+\fB\e(Lx\fR \fBLIST OF EXHIBITS\fR title
+_
+\fB\e(Le\fR \fBLIST OF EQUATIONS\fR title
+_
+\fB\e(Rp\fR \fBREFERENCES\fR title
+_
+\fB\e(Tm\fR trademark character (TM)
+.TE
+
+.sp
+.LP
+When using the extended accent mark definitions available with \fB\&.AM\fR,
+these strings should come after, rather than before, the letter to be accented.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/usr/share/lib/tmac/m\fR\fR
+.ad
+.sp .6
+.RS 4n
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/share/lib/tmac/mm.[nt]\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBnroff\fR and \fBtroff\fR definitions of \fBmm\fR.
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR col (1),
+.BR eqn (1),
+.BR nroff (1),
+.BR refer (1),
+.BR tbl (1),
+.BR troff (1),
+.BR attributes (7)
+.SH BUGS
+.sp
+.LP
+Floating keeps and regular keeps are diverted to the same space, so they cannot
+be mixed together with predictable results.
diff --git a/usr/src/man/man7/ms.7 b/usr/src/man/man7/ms.7
new file mode 100644
index 0000000000..875e34aaad
--- /dev/null
+++ b/usr/src/man/man7/ms.7
@@ -0,0 +1,436 @@
+'\" te
+.\" Copyright (c) 1992, Sun Microsystems, Inc.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH MS 7 "Feb 25, 1992"
+.SH NAME
+ms \- text formatting macros
+.SH SYNOPSIS
+.LP
+.nf
+\fBnroff\fR \fB-ms\fR [\fIoptions\fR] \fIfilename\fR...
+.fi
+
+.LP
+.nf
+\fBtroff\fR \fB-ms\fR [\fIoptions\fR] \fIfilename\fR...
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+This package of \fBnroff\fR(1) and \fBtroff\fR(1) macro definitions provides a
+formatting facility for various styles of articles, theses, and books. When
+producing 2-column output on a terminal or lineprinter, or when reverse line
+motions are needed, filter the output through \fBcol\fR(1). All external
+\fB-ms\fR macros are defined below.
+.sp
+.LP
+Note: this \fB-ms\fR macro package is an extended version written at Berkeley
+and is a superset of the standard \fB-ms\fR macro packages as supplied by Bell
+Labs. Some of the Bell Labs macros have been removed; for instance, it is
+assumed that the user has little interest in producing headers stating that the
+memo was generated at Whippany Labs.
+.sp
+.LP
+Many \fBnroff\fR and \fBtroff\fR requests are unsafe in conjunction with this
+package. However, the first four requests below may be used with impunity after
+initialization, and the last two may be used even before initialization:
+.sp
+.ne 2
+.na
+\fB\fB\&.bp\fR\fR
+.ad
+.RS 11n
+begin new page
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\&.br\fR\fR
+.ad
+.RS 11n
+break output line
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\&.sp\fR\fI n\fR\fR
+.ad
+.RS 11n
+insert n spacing lines
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\&.ce\fR\fI n\fR\fR
+.ad
+.RS 11n
+center next n lines
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\&.ls\fR\fI n\fR\fR
+.ad
+.RS 11n
+line spacing: \fIn\fR\fB=1\fR single, \fIn\fR\fB=2\fR double space
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\&.na\fR\fR
+.ad
+.RS 11n
+no alignment of right margin
+.RE
+
+.sp
+.LP
+Font and point size changes with \fB\ef\fR and \fB\es\fR are also allowed; for
+example, \fB\efIword\efR\fR will italicize \fIword\fR. Output of the
+\fBtbl\fR(1), \fBeqn\fR(1) and \fBrefer\fR(1) preprocessors for equations,
+tables, and references is acceptable as input.
+.SH REQUESTS
+.sp
+
+.sp
+.TS
+c | c | c | c
+l | l | l | l .
+Macro Name Initial Value Break? Reset? Explanation
+_
+\fB\&.AB\fR \fIx\fR - y T{
+begin abstract; if \fIx\fR=no do not label abstract
+T}
+_
+\fB\&.AE\fR - y end abstract
+_
+\fB\&.AI\fR - y author's institution
+_
+\fB\&.AM\fR - n better accent mark definitions
+_
+\fB\&.AU\fR - y author's name
+_
+\fB\&.B\fR \fIx\fR - n embolden \fIx\fR; if no \fIx\fR, switch to boldface
+_
+\fB\&.B1\fR - y begin text to be enclosed in a box
+_
+\fB\&.B2\fR - y end boxed text and print it
+_
+\fB\&.BT\fR date n bottom title, printed at foot of page
+_
+\fB\&.BX\fR \fIx\fR - n print word \fIx\fR in a box
+_
+\fB\&.CM\fR if t n cut mark between pages
+_
+\fB\&.CT\fR - y,y T{
+chapter title: page number moved to CF (TM only)
+T}
+_
+\fB\&.DA\fR \fIx\fR if n n T{
+force date \fIx\fR at bottom of page; today if no \fIx\fR
+T}
+_
+\fB\&.DE\fR - y end display (unfilled text) of any kind
+_
+\fB\&.DS\fR \fIx y\fR I y T{
+begin display with keep; \fIx\fR=I,\|L,\|C,\|B; \fIy\fR=indent
+T}
+_
+\fB\&.ID\fR\fI y\fR 8n,.5i y indented display with no keep; \fIy\fR=indent
+_
+\fB\&.LD\fR - y left display with no keep
+_
+\fB\&.CD\fR - y centered display with no keep
+_
+\fB\&.BD\fR - y block display; center entire block
+_
+\fB\&.EF\fR \fIx\fR - n even page footer \fIx\fR (3 part as for \fB\&.tl\fR)
+_
+\fB\&.EH\fR \fIx\fR - n even page header \fIx\fR (3 part as for \fB\&.tl\fR)
+_
+\fB\&.EN\fR - y end displayed equation produced by \fBeqn\fR
+_
+\fB\&.EQ\fR \fIx y\fR - y T{
+break out equation; \fIx\fR=L,I,C; \fIy\fR=equation number
+T}
+_
+\fB\&.FE\fR - n T{
+end footnote to be placed at bottom of page
+T}
+_
+\fB\&.FP\fR - n T{
+numbered footnote paragraph; may be redefined
+T}
+_
+\fB\&.FS\fR \fIx\fR - n T{
+start footnote; \fIx\fR is optional footnote label
+T}
+_
+\fB\&.HD\fR undef n optional page header below header margin
+_
+\fB\&.I\fR \fIx\fR - n italicize \fIx\fR; if no \fIx\fR, switch to italics
+_
+\fB\&.IP\fR \fIx y\fR - y,y T{
+indented paragraph, with hanging tag \fIx\fR; \fIy\fR=indent
+T}
+_
+\fB\&.IX\fR \fIx y\fR - y T{
+index words \fIx\fR \fIy\fR and so on (up to 5 levels)
+T}
+_
+\fB\&.KE\fR - n end keep of any kind
+_
+\fB\&.KF\fR - n T{
+begin floating keep; text fills remainder of page
+T}
+_
+\fB\&.KS\fR - y T{
+begin keep; unit kept together on a single page
+T}
+_
+\fB\&.LG\fR - n larger; increase point size by 2
+_
+\fB\&.LP\fR - y,y left (block) paragraph.
+_
+\fB\&.MC\fR \fIx\fR - y,y multiple columns; \fIx\fR=column width
+_
+\fB\&.ND\fR \fIx\fR if t n T{
+no date in page footer; \fIx\fR is date on cover
+T}
+_
+\fB\&.NH\fR \fIx y\fR - y,y T{
+numbered header; \fIx\fR=level, \fIx\fR=0 resets, \fIx\fR=S sets to \fIy\fR
+T}
+_
+\fB\&.NL\fR 10p n set point size back to normal
+_
+\fB\&.OF\fR \fIx\fR - n odd page footer \fIx\fR (3 part as for \fB\&.tl\fR)
+_
+\fB\&.OH\fR \fIx\fR - n odd page header \fIx\fR (3 part as for \fB\&.tl\fR)
+_
+\fB\&.P1\fR if TM n print header on first page
+_
+\fB\&.PP\fR - y,y paragraph with first line indented
+_
+\fB\&.PT\fR - % - n page title, printed at head of page
+_
+\fB\&.PX\fR \fIx\fR - y T{
+print index (table of contents); \fIx\fR=no suppresses title
+T}
+_
+\fB\&.QP\fR - y,y quote paragraph (indented and shorter)
+_
+\fB\&.R\fR on n return to Roman font
+_
+\fB\&.RE\fR 5n y,y T{
+retreat: end level of relative indentation
+T}
+_
+\fB\&.RP\fR \fIx\fR - n T{
+released paper format; \fIx\fR=no stops title on first page
+T}
+_
+\fB\&.RS\fR 5n y,y T{
+right shift: start level of relative indentation
+T}
+_
+\fB\&.SH\fR - y,y section header, in boldface
+_
+\fB\&.SM\fR - n smaller; decrease point size by 2
+_
+\fB\&.TA\fR 8n,5n n T{
+set TAB characters to 8n 16n .\|.\|. (\fBnroff\fR) or 5n 10n .\|.\|. (\fBtroff\fR)
+T}
+_
+\fB\&.TC\fR \fIx\fR - y T{
+print table of contents at end; \fIx\fR=no suppresses title
+T}
+_
+_
+\fB\&.TH\fR - Y "multi-page end, header"
+_
+\fB\&.TL\fR - y title in boldface and two points larger
+_
+\fB\&.TM\fR off n UC Berkeley thesis mode
+_
+\fB\&.TE\fR - y end of table processed by \fBtbl\fR
+\fB\&.TS\fR \fIx\fR - y,y T{
+begin table; if \fIx\fR=H table has multi-page header
+T}
+_
+\fB\&.UL\fR \fIx\fR - n underline \fIx\fR, even in \fBtroff\fR
+_
+\fB\&.UX\fR \fIx\fR - n T{
+UNIX; trademark message first time; \fIx\fR appended
+T}
+_
+\fB\&.XA\fR \fIx y\fR - y T{
+another index entry; \fIx\fR=page or no for none; y=indent
+T}
+_
+\fB\&.XE\fR - y T{
+end index entry (or series of \fB\&.IX\fR entries)
+T}
+_
+\fB\&.XP\fR - y,y T{
+paragraph with first line indented, others indented
+T}
+_
+\fB\&.XS\fR \fIx y\fR - y T{
+begin index entry; \fIx\fR=page or no for none; \fIy\fR=indent
+T}
+_
+\fB\&.1C\fR on y,y one column format, on a new page
+_
+\fB\&.2C\fR - y,y begin two column format
+_
+\fB\&.]\|-\fR - n beginning of \fBrefer\fR reference
+_
+\fB\&.[\|0\fR - n end of unclassifiable type of reference
+_
+\fB\&.[\|N\fR - n T{
+N= 1:journal-article, 2:book, 3:book-article, 4:report
+T}
+.TE
+
+.SH REGISTERS
+.sp
+.LP
+Formatting distances can be controlled in \fB-ms\fR by means of built-in number
+registers. For example, this sets the line length to 6.5 inches:
+.sp
+.in +2
+.nf
+\&.nr LL 6.5i
+.fi
+.in -2
+
+.sp
+.LP
+Here is a table of number registers and their default values:
+.sp
+
+.sp
+.TS
+c | c | c | c
+l | l | l | l .
+Name Register Controls Takes Effect Default
+_
+\fBPS\fR point size paragraph 10
+_
+\fBVS\fR vertical spacing paragraph 12
+_
+\fBLL\fR line length paragraph 6i
+_
+\fBLT\fR title length next page same as \fBLL\fR
+_
+\fBFL\fR footnote length next \fB\&.FS\fR 5.5i
+_
+\fBPD\fR paragraph distance paragraph 1v (if n), .3v (if t)
+_
+\fBDD\fR display distance displays 1v (if n), .5v (if t)
+_
+\fBPI\fR paragraph indent paragraph 5n
+_
+\fBQI\fR quote indent next \fB\&.QP\fR 5n
+_
+\fBFI\fR footnote indent next \fB\&.FS\fR 2n
+_
+\fBPO\fR page offset next page 0 (if n), \(ap1i (if t)
+_
+\fBHM\fR header margin next page 1i
+_
+\fBFM\fR footer margin next page 1i
+_
+\fBFF\fR footnote format next \fB\&.FS\fR 0 (1, 2, 3 available)
+.TE
+
+.sp
+.LP
+When resetting these values, make sure to specify the appropriate units.
+Setting the line length to 7, for example, will result in output with one
+character per line. Setting \fBFF\fR to 1 suppresses footnote superscripting;
+setting it to 2 also suppresses indentation of the first line; and setting it
+to 3 produces an \fB\&.IP\fR-like footnote paragraph.
+.sp
+.LP
+Here is a list of string registers available in \fB-ms\fR; they may be used
+anywhere in the text:
+.sp
+
+.sp
+.TS
+c | c
+l | l .
+Name String's Function
+_
+\fB\e*Q\fR quote (\fB"\fR in \fBnroff,\fR\| \fB"\fR in \fBtroff\fR )
+_
+\fB\e*U\fR unquote (\fB"\fR in \fBnroff,\fR\| \fB"\fR in \fBtroff\fR )
+_
+\fB\e*-\fR dash (\fB--\fR in \fBnroff,\fR \fB\(em\fR in \fBtroff\fR )
+_
+\fB\e*(MO\fR month (month of the year)
+_
+\fB\e*(DY\fR day (current date)
+_
+\fB\e**\fR automatically numbered footnote
+_
+\fB\e*'\fR acute accent (before letter)
+_
+\fB\e*`\fR grave accent (before letter)
+_
+\fB\e*^\fR circumflex (before letter)
+_
+\fB\e*,\fR cedilla (before letter)
+_
+\fB\e*:\fR umlaut (before letter)
+_
+\fB\e*~\fR tilde (before letter)
+.TE
+
+.sp
+.LP
+When using the extended accent mark definitions available with \fB\&.AM\fR,
+these strings should come after, rather than before, the letter to be accented.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/usr/share/lib/tmac/s\fR\fR
+.ad
+.RS 30n
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/share/lib/tmac/ms.???\fR\fR
+.ad
+.RS 30n
+
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR col (1),
+.BR eqn (1),
+.BR nroff (1),
+.BR refer (1),
+.BR tbl (1),
+.BR troff (1)
+.SH BUGS
+.sp
+.LP
+Floating keeps and regular keeps are diverted to the same space, so they cannot
+be mixed together with predictable results.
diff --git a/usr/src/man/man7/mutex.7 b/usr/src/man/man7/mutex.7
new file mode 100644
index 0000000000..51a99249bc
--- /dev/null
+++ b/usr/src/man/man7/mutex.7
@@ -0,0 +1,187 @@
+.\"
+.\" Sun Microsystems, Inc. gratefully acknowledges The Open Group for
+.\" permission to reproduce portions of its copyrighted documentation.
+.\" Original documentation from The Open Group can be obtained online at
+.\" http://www.opengroup.org/bookstore/.
+.\"
+.\" The Institute of Electrical and Electronics Engineers and The Open
+.\" Group, have given us permission to reprint portions of their
+.\" documentation.
+.\"
+.\" In the following statement, the phrase ``this text'' refers to portions
+.\" of the system documentation.
+.\"
+.\" Portions of this text are reprinted and reproduced in electronic form
+.\" in the SunOS Reference Manual, from IEEE Std 1003.1, 2004 Edition,
+.\" Standard for Information Technology -- Portable Operating System
+.\" Interface (POSIX), The Open Group Base Specifications Issue 6,
+.\" Copyright (C) 2001-2004 by the Institute of Electrical and Electronics
+.\" Engineers, Inc and The Open Group. In the event of any discrepancy
+.\" between these versions and the original IEEE and The Open Group
+.\" Standard, the original IEEE and The Open Group Standard is the referee
+.\" document. The original Standard can be obtained online at
+.\" http://www.opengroup.org/unix/online.html.
+.\"
+.\" This notice shall appear on any product containing this material.
+.\"
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.\"
+.\"
+.\" Portions Copyright (c) 1995 IEEE All Rights Reserved.
+.\" Copyright (c) 1998 Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright (c) 2001, The IEEE and The Open Group. All Rights Reserved.
+.\"
+.TH MUTEX 7 "Jun 5, 2007"
+.SH NAME
+mutex \- concepts relating to mutual exclusion locks
+.SH DESCRIPTION
+.sp
+.LP
+Mutual exclusion locks (mutexes) prevent multiple threads from simultaneously
+executing critical sections of code which access shared data (that is, mutexes
+are used to serialize the execution of threads). All mutexes must be global. A
+successful call to acquire a mutex will cause another thread that is also
+trying to lock the same mutex to block until the owner thread unlocks the
+mutex.
+.sp
+.LP
+Mutexes can synchronize threads within the same process or in other processes.
+Mutexes can be used to synchronize threads between processes if the mutexes are
+allocated in writable memory and shared among the cooperating processes (see
+\fBmmap\fR(2)), and have been initialized for this task.
+.sp
+.LP
+The following table lists mutex functions and the actions they perform.
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+FUNCTION ACTION
+_
+\fBmutex_init\fR Initialize a mutex.
+\fBmutex_destroy\fR Destroy a mutex.
+\fBmutex_lock\fR Lock a mutex.
+\fBmutex_trylock\fR Attempt to lock a mutex.
+\fBmutex_unlock\fR Unlock a mutex.
+\fBpthread_mutex_init\fR Initialize a mutex.
+\fBpthread_mutex_destroy\fR Destroy a mutex.
+\fBpthread_mutex_lock\fR Lock a mutex.
+\fBpthread_mutex_trylock\fR Attempt to lock a mutex.
+\fBpthread_mutex_unlock\fR Unlock a mutex.
+.TE
+
+.SS "Initialization"
+.sp
+.LP
+Mutexes are either intra-process or inter-process, depending upon the argument
+passed implicitly or explicitly to the initialization of that mutex. A
+statically allocated mutex does not need to be explicitly initialized; by
+default, a statically allocated mutex is initialized with all zeros and its
+scope is set to be within the calling process.
+.sp
+.LP
+For inter-process synchronization, a mutex needs to be allocated in memory
+shared between these processes. Since the memory for such a mutex must be
+allocated dynamically, the mutex needs to be explicitly initialized with the
+appropriate attribute that indicates inter-process use.
+.SS "Locking and Unlocking"
+.sp
+.LP
+A critical section of code is enclosed by a call to lock the mutex and the call
+to unlock the mutex to protect it from simultaneous access by multiple threads.
+Only one thread at a time may possess mutually exclusive access to the critical
+section of code that is enclosed by the mutex-locking call and the
+mutex-unlocking call, whether the mutex's scope is intra-process or
+inter-process. A thread calling to lock the mutex either gets exclusive access
+to the code starting from the successful locking until its call to unlock the
+mutex, or it waits until the mutex is unlocked by the thread that locked it.
+.sp
+.LP
+Mutexes have ownership, unlike semaphores. Only the thread that locked a mutex,
+(that is, the owner of the mutex), should unlock it.
+.sp
+.LP
+If a thread waiting for a mutex receives a signal, upon return from the signal
+handler, the thread resumes waiting for the mutex as if there was no interrupt.
+.SS "Caveats"
+.sp
+.LP
+Mutexes are almost like data - they can be embedded in data structures, files,
+dynamic or static memory, and so forth. Hence, they are easy to introduce into
+a program. However, too many mutexes can degrade performance and scalability of
+the application. Because too few mutexes can hinder the concurrency of the
+application, they should be introduced with care. Also, incorrect usage (such
+as recursive calls, or violation of locking order, and so forth) can lead to
+deadlocks, or worse, data inconsistencies.
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+MT-Level MT-Safe
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR mmap (2),
+.BR shmop (2),
+.BR mutex_destroy (3C),
+.BR mutex_init (3C),
+.BR mutex_lock (3C),
+.BR mutex_trylock (3C),
+.BR mutex_unlock (3C),
+.BR pthread_create (3C),
+.BR pthread_mutex_destroy (3C),
+.BR pthread_mutex_init (3C),
+.BR pthread_mutex_lock (3C),
+.BR pthread_mutex_trylock (3C),
+.BR pthread_mutex_unlock (3C),
+.BR pthread_mutexattr_init (3C),
+.BR attributes (7),
+.BR standards (7)
+.SH NOTES
+.sp
+.LP
+In the current implementation of threads, \fBpthread_mutex_lock()\fR,
+\fBpthread_mutex_unlock()\fR, \fBmutex_lock()\fR \fBmutex_unlock()\fR,
+\fBpthread_mutex_trylock()\fR, and \fBmutex_trylock()\fR do not validate the
+mutex type. Therefore, an uninitialized mutex or a mutex with an invalid type
+does not return \fBEINVAL\fR. Interfaces for mutexes with an invalid type have
+unspecified behavior.
+.sp
+.LP
+By default, if multiple threads are waiting for a mutex, the order of
+acquisition is undefined.
+.sp
+.LP
+The system does not support multiple mappings to the same logical synch object
+if it is initialized as process-private (\fBUSYNC_THREAD\fR for Solaris,
+\fBPTHREAD_PROCESS_PRIVATE\fR for POSIX). If you need to \fBmmap\fR(2)a synch
+object to different locations within the same address space, then the synch
+object should be initialized as a shared object (\fBUSYNC_PROCESS\fR for
+Solaris, \fBPTHREAD_PROCESS_SHARED\fR for POSIX).
diff --git a/usr/src/man/man7/nfssec.7 b/usr/src/man/man7/nfssec.7
new file mode 100644
index 0000000000..3e76479194
--- /dev/null
+++ b/usr/src/man/man7/nfssec.7
@@ -0,0 +1,147 @@
+'\" te
+.\" Copyright 2014 Nexenta Systems, Inc. All rights reserved.
+.\" Copyright (c) 2001, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH NFSSEC 7 "Nov 20, 2014"
+.SH NAME
+nfssec \- overview of NFS security modes
+.SH DESCRIPTION
+.LP
+The \fBmount_nfs\fR(8) and \fBshare_nfs\fR(8) commands each provide a way to
+specify the security mode to be used on an \fBNFS\fR file system through the
+\fBsec=\fR\fImode\fR option. \fImode\fR can be \fBsys\fR, \fBdh\fR, \fBkrb5\fR,
+\fBkrb5i\fR, \fBkrb5p\fR, or \fBnone\fR. These security modes can also be added
+to the automount maps. Note that \fBmount_nfs\fR(8) and \fBautomount\fR(8) do
+not support \fBsec=none\fR at this time. \fBmount_nfs\fR(8) allows you to
+specify a single security mode; \fBshare_nfs\fR(8) allows you to specify
+multiple modes (or \fBnone\fR). With multiple modes, an NFS client can choose
+any of the modes in the list.
+.sp
+.LP
+The \fBsec=\fR\fImode\fR option on the \fBshare_nfs\fR(8) command line
+establishes the security mode of \fBNFS\fR servers. If the \fBNFS\fR connection
+uses the \fBNFS\fR Version 3 protocol, the \fBNFS\fR clients must query the
+server for the appropriate \fImode\fR to use. If the \fBNFS\fR connection uses
+the \fBNFS\fR Version 2 protocol, then the \fBNFS\fR client uses the default
+security mode, which is currently \fBsys\fR. \fBNFS\fR clients may force the
+use of a specific security mode by specifying the \fBsec=\fR\fImode\fR option
+on the command line. However, if the file system on the server is not shared
+with that security mode, the client may be denied access.
+.sp
+.LP
+If the \fBNFS\fR client wants to authenticate the \fBNFS\fR server using a
+particular (stronger) security mode, the client wants to specify the security
+mode to be used, even if the connection uses the \fBNFS\fR Version 3 protocol.
+This guarantees that an attacker masquerading as the server does not compromise
+the client.
+.sp
+.LP
+The \fBNFS\fR security modes are described below. Of these, the \fBkrb5\fR,
+\fBkrb5i\fR, \fBkrb5p\fR modes use the Kerberos V5 protocol for authenticating
+and protecting the shared filesystems. Before these can be used, the system
+must be configured to be part of a Kerberos realm. See \fBkerberos\fR(7).
+.sp
+.ne 2
+.na
+\fB\fBsys\fR\fR
+.ad
+.RS 9n
+Use \fBAUTH_SYS\fR authentication. The user's UNIX user-id and group-ids are
+passed in the clear on the network, unauthenticated by the \fBNFS\fR server.
+This is the simplest security method and requires no additional administration.
+It is the default used by Solaris \fBNFS\fR Version 2 clients and Solaris
+\fBNFS\fR servers.
+.sp
+According to the ONC RPC specification (RFC 5531), \fBAUTH_SYS\fR
+authentication supports up to 16 groups for a user only. To workaround this
+limitation, in the case where the \fBNFS\fR client supplied 16 groups in
+\fBAUTH_SYS\fR and \fBNGROUPS_MAX\fR is more than 16, the \fBNFS\fR server
+will lookup the user's groups on the server instead of relying on the list of
+groups provided by the \fBNFS\fR client via \fBAUTH_SYS\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdh\fR\fR
+.ad
+.RS 9n
+Use a Diffie-Hellman public key system (\fBAUTH_DES\fR, which is referred to as
+\fBAUTH_DH\fR in the forthcoming Internet \fBRFC).\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBkrb5\fR\fR
+.ad
+.RS 9n
+Use Kerberos V5 protocol to authenticate users before granting access to the
+shared filesystem.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBkrb5i\fR\fR
+.ad
+.RS 9n
+Use Kerberos V5 authentication with integrity checking (checksums) to verify
+that the data has not been tampered with.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBkrb5p\fR\fR
+.ad
+.RS 9n
+User Kerberos V5 authentication, integrity checksums, and privacy protection
+(encryption) on the shared filesystem. This provides the most secure filesystem
+sharing, as all traffic is encrypted. It should be noted that performance might
+suffer on some systems when using \fBkrb5p\fR, depending on the computational
+intensity of the encryption algorithm and the amount of data being transferred.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnone\fR\fR
+.ad
+.RS 9n
+Use null authentication (\fBAUTH_NONE\fR). \fBNFS\fR clients using
+\fBAUTH_NONE\fR have no identity and are mapped to the anonymous user
+\fBnobody\fR by \fBNFS\fR servers. A client using a security mode other than
+the one with which a Solaris \fBNFS\fR server shares the file system has its
+security mode mapped to \fBAUTH_NONE.\fR In this case, if the file system is
+shared with \fBsec=none,\fR users from the client are mapped to the
+anonymous user. The \fBNFS\fR security mode \fBnone\fR is supported by
+\fBshare_nfs\fR(8), but not by \fBmount_nfs\fR(8) or \fBautomount\fR(8).
+.RE
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/etc/nfssec.conf\fR\fR
+.ad
+.RS 20n
+\fBNFS\fR security service configuration file
+.RE
+
+.SH SEE ALSO
+.LP
+.BR rpc_clnt_auth (3NSL),
+.BR secure_rpc (3NSL),
+.BR nfssec.conf (5),
+.BR attributes (7),
+.BR kerberos (7),
+.BR automount (8),
+.BR kclient (8),
+.BR mount_nfs (8),
+.BR share_nfs (8)
+.SH NOTES
+.LP
+\fB/etc/nfssec.conf\fR lists the \fBNFS\fR security services. Do not edit this
+file. It is not intended to be user-configurable. See \fBkclient\fR(8).
diff --git a/usr/src/man/man7/overlay.7 b/usr/src/man/man7/overlay.7
new file mode 100644
index 0000000000..708281aeda
--- /dev/null
+++ b/usr/src/man/man7/overlay.7
@@ -0,0 +1,521 @@
+.\"
+.\" This file and its contents are supplied under the terms of the
+.\" Common Development and Distribution License ("CDDL"), version 1.0.
+.\" You may only use this file in accordance with the terms of version
+.\" 1.0 of the CDDL.
+.\"
+.\" A full copy of the text of the CDDL should have accompanied this
+.\" source. A copy of the CDDL is also available via the Internet at
+.\" http://www.illumos.org/license/CDDL.
+.\"
+.\"
+.\" Copyright 2015 Joyent, Inc.
+.\"
+.Dd Apr 09, 2015
+.Dt OVERLAY 7
+.Os
+.Sh NAME
+.Nm overlay
+.Nd Overlay Devices
+.Sh DESCRIPTION
+Overlay devices are a GLDv3 device that allows users to create overlay
+networks that can be used to form the basis of network virtualization
+and software defined networking.
+Overlay networks allow a single physical network, often called an
+.Sy underlay
+network, to provide the means for creating multiple logical, isolated,
+and discrete layer two and layer three networks on top of it.
+.Pp
+Overlay devices are administered through
+.Xr dladm 8 .
+Overlay devices themselves cannot be plumbed up with
+.Sy IP ,
+.Sy vnd ,
+or any other protocol.
+Instead, like an
+.Sy etherstub ,
+they allow for VNICs to be created on top of them.
+Like an
+.Sy etherstub ,
+an overlay device acts as a local switch; however, when it encounters a
+non-local destination address, it instead looks up where it should send
+the packet, encapsulates it, and sends it out another interface in the
+system.
+.Pp
+A single overlay device encapsulates the logic to answer two different,
+but related, questions:
+.Pp
+.Bl -enum -offset indent -compact
+.It
+How should a packet be transformed and put on the wire?
+.It
+Where should a transformed packet be sent?
+.El
+.Pp
+Each of these questions is answered by a plugin.
+The first question is answered by what's called an
+.Em encapsulation plugin .
+The second question is answered by what's called a
+.Em search plugin .
+Packets are encapsulated and decapsulated using the encapsulation plugin
+by the kernel.
+The search plugins are all user land plugins that are consumed by the
+varpd service whose FMRI is
+.Em svc:/network/varpd:default .
+This separation allows for the kernel to be responsible for the data
+path, while having the search plugins in userland allows the system to
+provide a much more expressive interface.
+.Ss Overlay Types
+Overlay devices come in two different flavors, one where all packets are
+always sent to a single address, the other, where the destination of a
+packet varies based on the target MAC address of the packet.
+This information is maintained in a
+.Em target table ,
+which is independent and unique to each overlay device.
+We call the plugins that send traffic to a single location, for example
+a single unicast or multicast IP address, a
+.Sy point to point
+overlay and the overlay devices that can send traffic to different
+locations based on the MAC address of that packet a
+.Sy dynamic
+overlay.
+The plugin type is determined based on the type of the
+.Sy search plugin .
+These are all fully listed in the section
+.Sx Plugins and their Properties .
+.Ss Overlay Destination
+Both encapsulation and search plugins define the kinds of destinations
+that they know how to support.
+An encapsulation plugin always has a single destination type that's
+determined based on how the encapsulation is defined.
+A search plugin, on the other hand, can support multiple combinations of
+destinations.
+A search plugin must support the destination type of the encapsulation
+device.
+The destination may require any of the following three pieces of
+information, depending on the encapsulation plugin:
+.Bl -hang -width Ds
+.It Sy MAC Address
+.Bd -filled -compact
+An Ethernet MAC address is required to determine the destination.
+.Ed
+.It Sy IP Address
+.Bd -filled -compact
+An IP address is required.
+Both IPv4 and IPv6 addresses are supported.
+.Ed
+.It Sy Port
+.Bd -filled -compact
+An IP protocol level (TCP, UDP, SCTP, etc.) port is required.
+.Ed
+.El
+.Pp
+The list of destination types that are supported by both the search and
+encapsulation plugins is listed in the section
+.Sx Plugins and their Properties .
+.Ss varpd
+The varpd service, mentioned above, is responsible for providing the
+virtual ARP daemon.
+Its responsibility is conceptually similar to ARP.
+It runs all instances of search plugins in the system and is responsible
+for answering the kernel's ARP-like questions for where packets should
+be sent.
+.Pp
+The varpd service, svc:/network/varpd:default, must be enabled for
+overlay devices to function.
+If it is disabled while there are active devices, then most overlay
+devices will not function correctly and likely will end up dropping
+traffic.
+.Sh PLUGINS AND PROPERTIES
+Properties fall into three categories in the system:
+.Bl -enum -offset indent -compact
+.It
+Generic properties all overlay devices have
+.It
+Properties specific to the encapsulation plugin
+.It
+Properties specific to the search plugin
+.El
+.Pp
+Each property in the system has the following attributes, which mirror
+the traditional
+.Xr dladm 8
+link properties:
+.Bl -hang -width Ds
+.It Sy Name
+.Bd -filled -compact
+The name of a property is namespaced by its module and always structured
+and referred to as as module/property.
+This allows for both an encapsulation and search plugin to have a
+property with the same name.
+Properties that are valid for all overlay devices and not specific to a
+module do not generally use a module prefix.
+.Pp
+For example, the property
+.Sy vxlan/listen_ip
+is associated with the
+.Sy vxlan
+encapsulation module.
+.Ed
+.It Sy Type
+.Bd -filled -compact
+Each property in the system has a type.
+.Xr dladm 8
+takes care of converting between the internal representation and a
+value, but the type influences the acceptable input range.
+The types are:
+.Bl -hang -width Ds
+.It Sy INT
+A signed integer that is up to eight bytes long
+.Pq Sy int64_t .
+.It Sy UINT
+An unsigned integer that is up to eight bytes long
+.Pq Sy uint64_t .
+.It Sy IP
+Either an IPv4 or IPv6 address in traditional string form.
+For example, 192.168.128.23 or 2001:470:8af4::1:1.
+IPv4 addresses may also be encoded as IPv4-mapped IPv6 addresses.
+.It Sy STRING
+A string of ASCII or UTF-8 encoded characters terminated with a
+.Sy NUL
+byte.
+The maximum string length, including the terminator, is currently
+256 bytes.
+.El
+.Ed
+.It Sy Permissions
+.Bd -filled -compact
+Each property has permissions associated with it, which indicate whether
+the system considers them read-only properties or read-write properties.
+A read-only property can never be updated once the device is created.
+This generally includes things like the overlay's encapsulation module.
+.Ed
+.It Sy Required
+.Bd -filled -compact
+This property indicates whether the property is required for the given
+plugin.
+If it is not specified during a call to
+.Sy dladm create-overlay ,
+then the overlay cannot be successfully created.
+Properties which have a
+.Sy default
+will use that value if one is not specified rather than cause the
+overlay creation to fail.
+.Ed
+.It Sy Current Value
+.Bd -filled -compact
+The current value of a property, if the property has a value set.
+Required properties always have a value set.
+.Ed
+.It Sy Default Value
+.Bd -filled -compact
+The default value is an optional part of a given property.
+If a property does define a default value, then it will be used when an
+overlay is created and no other value is given.
+.Ed
+.It Sy Value ranges
+.Bd -filled -compact
+Value ranges are an optional part of a given property.
+They indicate a range or set of values that are valid and may be set for
+a property.
+A property may not declare such a range as it may be impractical or
+unknown.
+For example, most properties based on IP addresses will not
+declare a range.
+.Ed
+.El
+.Pp
+The following sections describe both the modules and the properties that
+exist for each module, noting their name, type, permissions, whether or
+not they are required, and if there is a default value.
+In addition, the effects of each property will be described.
+.Ss Encapsulation Plugins
+.Bl -hang -width Ds
+.It Sy vxlan
+The
+.Sy vxlan
+module is a UDP based encapsulation method.
+It takes a frame that would be put on the wire, wraps it up in a VXLAN
+header and places it in a UDP packet that gets sent out on the
+underlying network.
+For more details about the specific format of the VXLAN header, see
+.Xr vxlan 4P .
+.Pp
+The
+.Sy vxlan
+module requires both an
+.Sy IP address
+and
+.Sy port
+to address it.
+It has a 24-bit virtual network ID space, allowing for
+virtual network identifiers that range from
+.Sy 0
+-
+.Sy 16777215 .
+.Pp
+The
+.Sy vxlan
+module has the following properties:
+.Bl -hang -width Ds
+.It Sy vxlan/listen_ip
+.Bd -filled -compact
+Type:
+.Sy IP |
+Permissions:
+.Sy Read/Write |
+.Sy Required
+.Ed
+.Bd -filled
+The
+.Sy vxlan/listen_ip
+property determines the IP address that the system will accept VXLAN
+encapsulated packets on for this overlay.
+.Ed
+.It Sy vxlan/listen_port
+.Bd -filled -compact
+Type:
+.Sy UINT |
+Permissions:
+.Sy Read/Write |
+.Sy Required
+.Ed
+.Bd -filled -compact
+Default Value:
+.Sy 4789 |
+Range:
+.Sy 0 - 65535
+.Ed
+.Bd -filled
+The
+.Sy vxlan/listen_port
+property determines the UDP port that the system will listen on for
+VXLAN traffic for this overlay.
+The default value is
+.Sy 4789 ,
+the IANA assigned port for VXLAN.
+.Ed
+.El
+.Pp
+The
+.Sy vxlan/listen_ip
+and
+.Sy vxlan/listen_port
+properties determine how the system will accept VXLAN encapsulated
+packets for this interface.
+It does not determine the interface that packets will be sent out over.
+Multiple overlays that all use VXLAN can share the same IP and port
+combination, as the virtual network identifier can be used to tell the
+different overlays apart.
+.El
+.Ss Search Plugins
+Because search plugins may support multiple destinations, they may have
+more properties listed than necessarily show up for a given overlay.
+For example, the
+.Sy direct
+plugin supports destinations that are identified by both an IP address
+and a port, or just an IP address.
+In cases where the device is created over an overlay that only uses an
+IP address for its destination, then it will not have the
+.Sy direct/dest_port
+property.
+.Bl -hang -width Ds
+.It Sy direct
+The
+.Sy direct
+plugin is a point to point module that can be used to create an overlay
+that forwards all non-local traffic to a single destination.
+It supports destinations that are a combination of an
+.Sy IP Address
+and a
+.Sy port .
+.Pp
+The
+.Sy direct
+plugin has the following properties:
+.Bl -hang -width Ds
+.It Sy direct/dest_ip
+.Bd -filled -compact
+Type:
+.Sy IP |
+Permissions:
+.Sy Read/Write |
+.Sy Required
+.Ed
+.Bd -filled
+The
+.Sy direct/dest_ip
+property indicates the IP address that all traffic will be sent out.
+Traffic will be sent out the corresponding interface based on
+traditional IP routing rules and the configuration of the networking
+stack of the global zone.
+.Ed
+.It Sy direct/dest_port
+.Bd -filled -compact
+Type:
+.Sy UINT |
+Permissions:
+.Sy Read/Write |
+.Sy Required
+.Ed
+.Bd -filled -compact
+Default Value:
+.Sy - |
+Range:
+.Sy 0 - 65535
+.Ed
+.Bd -filled
+The
+.Sy direct/dest_port
+property indicates the TCP or UDP port that all traffic will be directed
+to.
+.Ed
+.El
+.It Sy files
+The
+.Sy files
+plugin implements a
+.Sy dynamic
+plugin that specifies where traffic should be sent based on a file.
+It is a glorified version of /etc/ethers.
+The
+.Sy dynamic
+plugin does not support broadcast or multicast traffic, but it has
+support for proxy ARP, NDP, and DHCPv4.
+For the full details of the file format, see
+.Xr overlay_files 4 .
+.Pp
+The
+.Sy files
+plugin has the following property:
+.Bl -hang -width Ds
+.It Sy files/config
+.Bd -filled -compact
+Type:
+.Sy String |
+Permissions:
+.Sy Read/Write |
+.Sy Required
+.Ed
+.Bd -filled
+The
+.Sy files/config
+property specifies an absolute path to a file to read.
+The file is a JSON file that is formatted according to
+.Xr overlay_files 5 .
+.Ed
+.El
+.El
+.Ss General Properties
+Each overlay has the following properties which are used to give
+additional information about the system.
+None of these properties may be specified as part of a
+.Sy dladm create-overlay ,
+instead they come from other arguments or from internal parts of the
+system.
+.Bl -hang -width Ds
+.It Sy encap
+.Bd -filled -compact
+.Sy String |
+Permissions:
+.Sy Read Only
+.Ed
+.Bd -filled
+The
+.Sy encap
+property contains the name of the encapsulation module that's in use.
+.Ed
+.It Sy mtu
+.Bd -filled -compact
+.Sy UINT |
+Permissions:
+.Sy Read/Write
+.Ed
+.Bd -filled -compact
+Default Value:
+.Sy 1400 |
+Range:
+.Sy 576 - 9000
+.Ed
+.Bd -filled
+The
+.Sy mtu
+property describes the maximum transmission unit of the overlay.
+The default value is
+.Sy 1400
+bytes, which ensures that in a traditional deployment with an MTU of
+1500 bytes, the overhead that is added from encapsulation is all
+accounted for.
+It is the administrator's responsibility to ensure that
+the device's MTU and the encapsulation overhead does not exceed that of
+the interfaces that the encapsulated traffic will be sent out of.
+.Pp
+To modify the
+.Sy mtu
+property, use
+.Sy dladm set-linkprop .
+.Ed
+.It Sy search
+.Bd -filled -compact
+.Sy String |
+Permissions:
+.Sy Read Only
+.Ed
+.Bd -filled
+The
+.Sy search
+property contains the name of the search plugin that's in use.
+.Ed
+.It Sy varpd/id
+.Bd -filled -compact
+.Sy String |
+Permissions:
+.Sy Read Only
+.Ed
+.Bd -filled
+The
+.Sy varpd/id
+property indicates the identifier which the
+.Sy varpd
+service uses for this overlay.
+.Ed
+.It Sy vnetid
+.Bd -filled -compact
+.Sy UINT |
+Permissions:
+.Sy Read/Write
+.Ed
+.Bd -filled
+The
+.Sy vnetid
+property has the virtual network identifier that belongs to this overlay.
+The valid range for the virtual network identifier depends on the
+encapsulation engine.
+.Ed
+.El
+.Sh FMA INTEGRATION
+Overlay devices are wired into FMA, the illumos fault management
+architecture, and generates error reports depending on the
+.Sy search
+plugin in use.
+Due to limitations in FMA today, when a single overlay
+enters a degraded state, meaning that it cannot properly perform look
+ups or another error occurred, then it degrades the overall
+.Sy overlay
+pseudo-device driver.
+.Pp
+For more fine-grained information about which overlay is actually in a
+.Em degraded
+state, one should run
+.Sy dladm show-overlay -f .
+In addition, for each overlay in a degraded state a more useful
+diagnostic message is provided which describes the reason that caused
+this overlay to enter into a degraded state.
+.Pp
+The overlay driver is self-healing.
+If the problem corrects itself on its own, it will clear the fault on
+the corresponding device.
+.Sh SEE ALSO
+.Xr vxlan 4P ,
+.Xr overlay_files 5 ,
+.Xr dladm 8
diff --git a/usr/src/man/man7/pam_allow.7 b/usr/src/man/man7/pam_allow.7
new file mode 100644
index 0000000000..bb4ca27ae0
--- /dev/null
+++ b/usr/src/man/man7/pam_allow.7
@@ -0,0 +1,115 @@
+'\" te
+.\" Copyright (c) 2005, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PAM_ALLOW 7 "Aug 25, 2005"
+.SH NAME
+pam_allow \- PAM authentication, account, session and password management PAM
+module to allow operations
+.SH SYNOPSIS
+.LP
+.nf
+\fBpam_allow.so.1\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBpam_allow\fR module implements all the PAM service module functions and
+returns \fBPAM_SUCCESS\fR for all calls. Opposite functionality is available in
+the \fBpam_deny\fR(7) module.
+.sp
+.LP
+Proper Solaris authentication operation requires \fBpam_unix_cred\fR(7) be
+stacked above \fBpam_allow\fR.
+.sp
+.LP
+The following options are interpreted:
+.sp
+.ne 2
+.na
+\fBdebug\fR
+.ad
+.RS 9n
+Provides \fBsyslog\fR(3C) debugging information at the \fBLOG_AUTH |
+LOG_DEBUG\fR level.
+.RE
+
+.SH ERRORS
+.sp
+.LP
+\fBPAM_SUCCESS\fR is always returned.
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRAllowing \fBssh none\fR
+.sp
+.LP
+The following example is a \fBpam.conf\fR fragment that illustrates a sample
+for allowing \fBssh none\fR authentication:
+
+.sp
+.in +2
+.nf
+sshd-none auth required pam_unix_cred.so.1
+sshd-none auth sufficient pam_allow.so.1
+sshd-none account sufficient pam_allow.so.1
+sshd-none session sufficient pam_allow.so.1
+sshd-none password sufficient pam_allow.so.1
+.fi
+.in -2
+
+.LP
+\fBExample 2 \fRAllowing Kiosk Automatic Login Service
+.sp
+.LP
+The following is example is a \fBpam.conf\fR fragment that illustrates a sample
+for allowing \fBgdm\fR kiosk auto login:
+
+.sp
+.in +2
+.nf
+gdm-autologin auth required pam_unix_cred.so.1
+gdm-autologin auth sufficient pam_allow.so.1
+.fi
+.in -2
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Stable
+_
+MT Level MT-Safe with exceptions
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR syslog (3C),
+.BR libpam (3LIB),
+.BR pam (3PAM),
+.BR pam_sm (3PAM),
+.BR pam.conf (5),
+.BR attributes (7),
+.BR pam_deny (7),
+.BR pam_unix_cred (7)
+.SH NOTES
+.sp
+.LP
+The interfaces in \fBlibpam\fR(3LIB) are MT-Safe only if each thread within the
+multi-threaded application uses its own PAM handle.
+.sp
+.LP
+This module is intended to be used to either allow access to specific services
+names, or to all service names not specified (by specifying it as the default
+service stack).
diff --git a/usr/src/man/man7/pam_authtok_check.7 b/usr/src/man/man7/pam_authtok_check.7
new file mode 100644
index 0000000000..65dd922781
--- /dev/null
+++ b/usr/src/man/man7/pam_authtok_check.7
@@ -0,0 +1,202 @@
+'\" te
+.\" Copyright (C) 2003, Sun Microsystems, Inc.
+.\" All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PAM_AUTHTOK_CHECK 7 "Mar 1, 2005"
+.SH NAME
+pam_authtok_check \- authentication and password management module
+.SH SYNOPSIS
+.LP
+.nf
+\fBpam_authtok_check.so.1\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBpam_authtok_check\fR provides functionality to the Password Management
+stack. The implementation of \fBpam_sm_chauthtok()\fR performs a number of
+checks on the construction of the newly entered password.
+\fBpam_sm_chauthtok()\fR is invoked twice by the PAM framework, once with flags
+set to \fBPAM_PRELIM_CHECK\fR, and once with flags set to
+\fBPAM_UPDATE_AUTHTOK\fR. This module only performs its checks during the first
+invocation. This module expects the current authentication token in the
+\fBPAM_OLDAUTHTOK\fR item, the new (to be checked) password in the
+\fBPAM_AUTHTOK\fR item, and the login name in the \fBPAM_USER\fR item. The
+checks performed by this module are:
+.sp
+.ne 2
+.na
+\fBlength\fR
+.ad
+.RS 20n
+The password length should not be less that the minimum specified in
+\fB/etc/default/passwd\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBcircular shift\fR
+.ad
+.RS 20n
+The password should not be a circular shift of the login name. This check may
+be disabled in \fB/etc/default/passwd\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBcomplexity\fR
+.ad
+.RS 20n
+The password should contain at least the minimum number of characters described
+by the parameters \fBMINALPHA\fR, \fBMINNONALPHA\fR, \fBMINDIGIT\fR, and
+\fBMINSPECIAL\fR. Note that \fBMINNONALPHA\fR describes the same character
+classes as \fBMINDIGIT\fR and \fBMINSPECIAL\fR combined; therefore the user
+cannot specify both \fBMINNONALPHA\fR and \fBMINSPECIAL\fR (or \fBMINDIGIT\fR).
+The user must choose which of the two options to use. Furthermore, the
+\fBWHITESPACE\fR parameter determines whether whitespace characters are
+allowed. If unspecified \fBMINALPHA\fR is 2, \fBMINNONALPHA\fR is 1 and
+\fBWHITESPACE\fR is yes
+.RE
+
+.sp
+.ne 2
+.na
+\fBvariation\fR
+.ad
+.RS 20n
+The old and new passwords must differ by at least the \fBMINDIFF\fR value
+specified in \fB/etc/default/passwd\fR. If unspecified, the default is 3. For
+accounts in name services which support password history checking, if prior
+history is defined, the new password must not match the prior passwords.
+.RE
+
+.sp
+.ne 2
+.na
+\fBdictionary check\fR
+.ad
+.RS 20n
+The password must not be based on a dictionary word. The list of words to be
+used for the site's dictionary can be specified with \fBDICTIONLIST\fR. It
+should contain a comma-separated list of filenames, one word per line. The
+database that is created from these files is stored in the directory named by
+\fBDICTIONDBDIR\fR (defaults to \fB/var/passwd\fR). See \fBmkpwdict\fR(8) for
+information on pre-generating the database. If neither \fBDICTIONLIST\fR nor
+\fBDICTIONDBDIR\fR is specified, no dictionary check is made.
+.RE
+
+.sp
+.ne 2
+.na
+\fBupper/lower case\fR
+.ad
+.RS 20n
+The password must contain at least the minimum of upper- and lower-case letters
+specified by the \fBMINUPPER\fR and \fBMINLOWER\fR values in
+\fB/etc/default/passwd\fR. If unspecified, the defaults are 0.
+.RE
+
+.sp
+.ne 2
+.na
+\fBmaximum repeats\fR
+.ad
+.RS 20n
+The password must not contain more consecutively repeating characters than
+specified by the \fBMAXREPEATS\fR value in \fB/etc/default/passwd\fR. If
+unspecified, no repeat character check is made.
+.RE
+
+.sp
+.LP
+The following option may be passed to the module:
+.sp
+.ne 2
+.na
+\fBforce_check\fR
+.ad
+.RS 15n
+If the \fBPAM_NO_AUTHTOK_CHECK\fR flag set, \fBforce_check\fR ignores this
+flag. The \fBPAM_NO_AUTHTOK_CHECK\fR flag can be set to bypass password checks
+(see \fBpam_chauthtok\fR(3PAM)).
+.RE
+
+.sp
+.ne 2
+.na
+\fBdebug\fR
+.ad
+.RS 15n
+\fBsyslog\fR(3C) debugging information at the \fBLOG_DEBUG\fR level
+.RE
+
+.SH RETURN VALUES
+.sp
+.LP
+If the password in \fBPAM_AUTHTOK\fR passes all tests, \fBPAM_SUCCESS\fR is
+returned. If any of the tests fail, \fBPAM_AUTHTOK_ERR\fR is returned.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB/etc/default/passwd\fR
+.ad
+.RS 23n
+See \fBpasswd\fR(1) for a description of the contents.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+_
+MT Level MT-Safe with exceptions
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR passwd (1),
+.BR syslog (3C),
+.BR libpam (3LIB),
+.BR pam (3PAM),
+.BR pam_chauthtok (3PAM),
+.BR pam.conf (5),
+.BR passwd (5),
+.BR shadow (5),
+.BR attributes (7),
+.BR pam_authtok_get (7),
+.BR pam_authtok_store (7),
+.BR pam_dhkeys (7),
+.BR pam_passwd_auth (7),
+.BR pam_unix_account (7),
+.BR pam_unix_auth (7),
+.BR pam_unix_session (7),
+.BR mkpwdict (8)
+.SH NOTES
+.sp
+.LP
+The interfaces in \fBlibpam\fR(3LIB) are MT-Safe only if each thread within the
+multi-threaded application uses its own \fBPAM\fR handle.
+.sp
+.LP
+The \fBpam_unix\fR(7) module is no longer supported. Similar functionality is
+provided by \fBpam_authtok_check\fR(7), \fBpam_authtok_get\fR(7),
+\fBpam_authtok_store\fR(7), \fBpam_dhkeys\fR(7), \fBpam_passwd_auth\fR(7),
+\fBpam_unix_account\fR(7), \fBpam_unix_auth\fR(7), and
+\fBpam_unix_session\fR(7).
diff --git a/usr/src/man/man7/pam_authtok_get.7 b/usr/src/man/man7/pam_authtok_get.7
new file mode 100644
index 0000000000..4c82c0e9fa
--- /dev/null
+++ b/usr/src/man/man7/pam_authtok_get.7
@@ -0,0 +1,143 @@
+'\" te
+.\" Copyright (C) 2003, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PAM_AUTHTOK_GET 7 "April 9, 2016"
+.SH NAME
+pam_authtok_get \- authentication and password management module
+.SH SYNOPSIS
+.LP
+.nf
+\fBpam_authtok_get.so.1\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBpam_authtok_get\fR service module provides password prompting
+functionality to the PAM stack. It implements \fBpam_sm_authenticate()\fR and
+\fBpam_sm_chauthtok()\fR, providing functionality to both the Authentication
+Stack and the Password Management Stack.
+.SS "Authentication Service"
+.LP
+The implementation of \fBpam_sm_authenticate\fR(3PAM) prompts the user name if
+not set and then tries to get the authentication token from the pam handle. If
+the token is not set, it then prompts the user for a password and stores it in
+the \fBPAM\fR item \fBPAM_AUTHTOK\fR. This module is meant to be the first
+module on an authentication stack where users are to authenticate using a
+keyboard.
+.SS "Password Management Service"
+.LP
+Due to the nature of the PAM Password Management stack traversal mechanism, the
+\fBpam_sm_chauthtok\fR(3PAM) function is called twice. Once with the
+\fBPAM_PRELIM_CHECK\fR flag, and one with the \fBPAM_UPDATE_AUTHTOK\fR flag.
+.sp
+.LP
+In the first (\fBPRELIM\fR) invocation, the implementation of
+\fBpam_sm_chauthtok\fR(3PAM) moves the contents of the \fBPAM_AUTHTOK\fR
+(current authentication token) to \fBPAM_OLDAUTHTOK\fR, and subsequently
+prompts the user for a new password. This new password is stored in
+\fBPAM_AUTHTOK\fR.
+.sp
+.LP
+If a previous module has set \fBPAM_OLDAUTHTOK\fR prior to the invocation of
+pam_authtok_get, this module turns into a \fBNO-OP\fR and immediately returns
+\fBPAM_SUCCESS\fR.
+.sp
+.LP
+In the second (\fBUPDATE\fR) invocation, the user is prompted to Re-enter his
+password. The pam_sm_chauthtok implementation verifies this reentered password
+with the password stored in \fBPAM_AUTHTOK\fR. If the passwords match, the
+module returns \fBPAM_SUCCESS\fR.
+.sp
+.LP
+The following option can be passed to the module:
+.sp
+.ne 2
+.na
+\fBdebug\fR
+.ad
+.RS 9n
+\fBsyslog\fR(3C) debugging information at the \fBLOG_DEBUG\fR level
+.RE
+
+.SH ERRORS
+.LP
+The authentication service returns the following error codes:
+.sp
+.ne 2
+.na
+\fB\fBPAM_SUCCESS\fR\fR
+.ad
+.RS 18n
+Successfully obtains authentication token
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_SYSTEM_ERR\fR\fR
+.ad
+.RS 18n
+Fails to retrieve username, username is \fBNULL\fR or empty
+.RE
+
+.sp
+.LP
+The password management service returns the following error codes:
+.sp
+.ne 2
+.na
+\fB\fBPAM_SUCCESS\fR\fR
+.ad
+.RS 19n
+Successfully obtains authentication token
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_AUTHTOK_ERR\fR\fR
+.ad
+.RS 19n
+Authentication token manipulation error
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+_
+MT Level MT-Safe with exceptions
+.TE
+
+.SH SEE ALSO
+.LP
+\fBpam\fR(3PAM), \fBpam_authenticate\fR(3PAM), \fBsyslog\fR(3C),
+\fBlibpam\fR(3LIB), \fBpam.conf\fR(5), \fBattributes\fR(7),
+\fBpam_authtok_check\fR(7), pam_authtok_get(7), \fBpam_authtok_store\fR(7),
+.BR pam_dhkeys (7),
+.BR pam_passwd_auth (7),
+.BR pam_unix_account (7),
+.BR pam_unix_auth (7),
+.BR pam_unix_session (7)
+.SH NOTES
+.LP
+The interfaces in \fBlibpam\fR(3LIB) are MT-Safe only if each thread within the
+multi-threaded application uses its own PAM handle.
+.sp
+.LP
+The \fBpam_unix\fR(7) module is no longer supported. Similar functionality is
+provided by \fBpam_authtok_check\fR(7), \fBpam_authtok_get\fR(7),
+\fBpam_authtok_store\fR(7), \fBpam_dhkeys\fR(7), \fBpam_passwd_auth\fR(7),
+\fBpam_unix_account\fR(7), \fBpam_unix_auth\fR(7), and
+\fBpam_unix_session\fR(7).
diff --git a/usr/src/man/man7/pam_authtok_store.7 b/usr/src/man/man7/pam_authtok_store.7
new file mode 100644
index 0000000000..d20ca83d44
--- /dev/null
+++ b/usr/src/man/man7/pam_authtok_store.7
@@ -0,0 +1,130 @@
+'\" te
+.\" Copyright (C) 2002, Sun Microsystems, Inc.
+.\" All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PAM_AUTHTOK_STORE 7 "Jan 26, 2004"
+.SH NAME
+pam_authtok_store \- password management module
+.SH SYNOPSIS
+.LP
+.nf
+\fBpam_authtok_store.so.1\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBpam_authtok_store\fR provides functionality to the PAM password management
+stack. It provides one function: \fBpam_sm_chauthtok()\fR.
+.sp
+.LP
+When invoked with flags set to \fBPAM_UPDATE_AUTHTOK\fR, this module updates
+the authentication token for the user specified by \fBPAM_USER\fR.
+.sp
+.LP
+The authentication token \fBPAM_OLDAUTHTOK\fR can be used to authenticate the
+user against repositories that need updating (\fBNIS\fR, \fBLDAP\fR). After
+successful updates, the new authentication token stored in \fBPAM_AUTHTOK\fR is
+the user's valid password.
+.sp
+.LP
+This module honors the \fBPAM_REPOSITORY\fR item, which, if set, specifies
+which repository is to be updated. If \fBPAM_REPOSITORY\fR is unset, it follows
+the \fBnsswitch.conf\fR(5).
+.sp
+.LP
+The following option can be passed to the module:
+.sp
+.ne 2
+.na
+\fB\fBdebug\fR\fR
+.ad
+.RS 17n
+\fBsyslog\fR(3C) debugging information at the \fBLOG_DEBUG\fR level
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBserver_policy\fR\fR
+.ad
+.RS 17n
+If the account authority for the user, as specified by \fBPAM_USER\fR, is a
+server, do not encrypt the authentication token before updating.
+.RE
+
+.SH ERRORS
+.sp
+.ne 2
+.na
+\fB\fBPAM_SUCCESS\fR\fR
+.ad
+.RS 18n
+Successfully obtains authentication token
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_SYSTEM_ERR\fR\fR
+.ad
+.RS 18n
+Fails to get username, service name, old password or new password, user name
+null or empty, or password null.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+_
+MT Level MT-Safe with exceptions
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR syslog (3C),
+.BR libpam (3LIB),
+.BR pam (3PAM),
+.BR pam_authenticate (3PAM),
+.BR pam_chauthtok (3PAM),
+.BR pam.conf (5),
+.BR attributes (7),
+.BR pam_authtok_check (7),
+.BR pam_authtok_get (7),
+.BR pam_dhkeys (7),
+.BR pam_passwd_auth (7),
+.BR pam_unix_account (7),
+.BR pam_unix_auth (7),
+.BR pam_unix_session (7)
+.SH NOTES
+.sp
+.LP
+The interfaces in \fBlibpam\fR(3LIB) are MT-Safe only if each thread within the
+multi-threaded application uses its own \fBPAM\fR handle.
+.sp
+.LP
+The \fBpam_unix\fR(7) module is no longer supported. Similar functionality is
+provided by \fBpam_authtok_check\fR(7), \fBpam_authtok_get\fR(7),
+\fBpam_authtok_store\fR(7), \fBpam_dhkeys\fR(7), \fBpam_passwd_auth\fR(7),
+\fBpam_unix_account\fR(7), \fBpam_unix_auth\fR(7), and
+\fBpam_unix_session\fR(7).
+.sp
+.LP
+If the \fBPAM_REPOSITORY\fR \fIitem_type\fR is set and a service module does
+not recognize the type, the service module does not process any information,
+and returns \fBPAM_IGNORE\fR. If the \fBPAM_REPOSITORY\fR \fIitem_type\fR is
+not set, a service module performs its default action.
diff --git a/usr/src/man/man7/pam_deny.7 b/usr/src/man/man7/pam_deny.7
new file mode 100644
index 0000000000..3910787eb0
--- /dev/null
+++ b/usr/src/man/man7/pam_deny.7
@@ -0,0 +1,157 @@
+'\" te
+.\" Copyright (c) 2005, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PAM_DENY 7 "Jun 16, 2005"
+.SH NAME
+pam_deny \- PAM authentication, account, session and password management PAM
+module to deny operations
+.SH SYNOPSIS
+.LP
+.nf
+\fBpam_deny.so.1\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBpam_deny\fR module implements all the PAM service module functions and
+returns the module type default failure return code for all calls.
+.sp
+.LP
+The following options are interpreted:
+.sp
+.ne 2
+.na
+\fBdebug\fR
+.ad
+.RS 9n
+\fBsyslog\fR(3C) debugging information at the \fBLOG_AUTH\fR|\fBLOG_DEBUG\fR
+levels
+.RE
+
+.SH ERRORS
+.sp
+.LP
+The following error codes are returned:
+.sp
+.ne 2
+.na
+\fB\fBPAM_ACCT_EXPIRED\fR\fR
+.ad
+.RS 20n
+If \fBpam_sm_acct_mgmt\fR is called.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_AUTH_ERR\fR\fR
+.ad
+.RS 20n
+If \fBpam_sm_authenticate\fR is called.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_AUTHOK_ERR\fR\fR
+.ad
+.RS 20n
+If \fBpam_sm_chauthtok\fR is called.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_CRED_ERR\fR\fR
+.ad
+.RS 20n
+If \fBpam_sm_setcred\fR is called.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_SESSION_ERR\fR\fR
+.ad
+.RS 20n
+If \fBpam_sm_open_session\fR or \fBpam_sm_close_session\fR is called.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRDisallowing ssh none authentication
+.sp
+.in +2
+.nf
+ sshd-none auth requisite pam_deny.so.1
+ sshd-none account requisite pam_deny.so.1
+ sshd-none session requisite pam_deny.so.1
+ sshd-none password requisite pam_deny.so.1
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRDisallowing any service not explicitly defined
+.sp
+.in +2
+.nf
+ other auth requisite pam_deny.so.1
+ other account requisite pam_deny.so.1
+ other session requisite pam_deny.so.1
+ other password requisite pam_deny.so.1
+.fi
+.in -2
+.sp
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for a description of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+_
+MT Level MT-Safe with exceptions
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR syslog (3C),
+.BR libpam (3LIB),
+.BR pam (3PAM),
+.BR pam_sm_authenticate (3PAM),
+.BR nsswitch.conf (5),
+.BR pam.conf (5),
+.BR attributes (7),
+.BR pam_authtok_check (7),
+.BR pam_authtok_get (7),
+.BR pam_authtok_store (7),
+.BR pam_dhkeys (7),
+.BR pam_passwd_auth (7),
+.BR pam_unix_account (7),
+.BR pam_unix_auth (7),
+.BR pam_unix_session (7),
+.BR privileges (7),
+.BR su (8)
+.SH NOTES
+.sp
+.LP
+The interfaces in \fBlibpam\fR(3LIB) are MT-Safe only if each thread within the
+multi-threaded application uses its own PAM handle.
+.sp
+.LP
+The \fBpam_deny\fR module is intended to deny access to a specified service.
+The \fBother\fR service name may be used to deny access to services not
+explicitly specified.
diff --git a/usr/src/man/man7/pam_dhkeys.7 b/usr/src/man/man7/pam_dhkeys.7
new file mode 100644
index 0000000000..2f403c9d12
--- /dev/null
+++ b/usr/src/man/man7/pam_dhkeys.7
@@ -0,0 +1,217 @@
+'\" te
+.\" Copyright (C) 2003, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PAM_DHKEYS 7 "Feb 25, 2017"
+.SH NAME
+pam_dhkeys \- authentication Diffie-Hellman keys management module
+.SH SYNOPSIS
+.LP
+.nf
+\fBpam_dhkeys.so.1\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBpam_dhkeys.so.1\fR service module provides functionality to two
+\fBPAM\fR services: Secure \fBRPC\fR authentication and Secure \fBRPC\fR
+authentication token management.
+.sp
+.LP
+Secure RPC authentication differs from regular unix authentication because
+some \fBONC RPC\fRs use Secure RPC as the underlying security mechanism.
+.sp
+.LP
+The following options may be passed to the module:
+.sp
+.ne 2
+.na
+\fBdebug\fR
+.ad
+.RS 10n
+\fBsyslog\fR(3C) debugging information at \fBLOG_DEBUG\fR level
+.RE
+
+.sp
+.ne 2
+.na
+\fBnowarn\fR
+.ad
+.RS 10n
+Turn off warning messages
+.RE
+
+.SS "Authentication Services"
+.LP
+If the user has Diffie-Hellman keys, \fBpam_sm_authenticate()\fR establishes
+secret keys for the user specified by the \fBPAM_USER\fR (equivalent to running
+\fBkeylogin\fR(1)), using the authentication token found in the
+\fBPAM_AUTHTOK\fR item. If \fBpam_sm_setcred()\fR is called with
+\fBPAM_ESTABLISH_CRED\fR and the user's secure \fBRPC\fR credentials need to be
+established, these credentials are set. This is equivalent to running
+\fBkeylogin\fR(1).
+.sp
+.LP
+If the credentials could not be set and \fBPAM_SILENT\fR is not specified, a
+diagnostic message is displayed. If \fBpam_setcred()\fR is called with
+\fBPAM_DELETE_CRED\fR, the user's secure \fBRPC\fR credentials are unset. This
+is equivalent to running \fBkeylogout\fR(1).
+.sp
+.LP
+\fBPAM_REINITIALIZE_CRED\fR and \fBPAM_REFRESH_CRED\fR are not supported and
+return \fBPAM_IGNORE\fR.
+.SS "Authentication Token Management"
+.LP
+The \fBpam_sm_chauthtok()\fR implementation checks whether the old login
+password decrypts the users secret keys. If it doesn't this module prompts the
+user for an old Secure \fBRPC\fR password and stores it in a pam data item
+called \fBSUNW_OLDRPCPASS\fR. This data item can be used by the store module to
+effectively update the users secret keys.
+.SH ERRORS
+.LP
+The authentication service returns the following error codes:
+.sp
+.ne 2
+.na
+\fB\fBPAM_SUCCESS\fR\fR
+.ad
+.RS 20n
+Credentials set successfully.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_IGNORE\fR\fR
+.ad
+.RS 20n
+Credentials not needed to access the password repository.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_USER_UNKNOWN\fR\fR
+.ad
+.RS 20n
+\fBPAM_USER\fR is not set, or the user is unknown.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_AUTH_ERR\fR\fR
+.ad
+.RS 20n
+No secret keys were set. \fBPAM_AUTHTOK\fR is not set, no credentials are
+present or there is a wrong password.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_BUF_ERR\fR\fR
+.ad
+.RS 20n
+Module ran out of memory.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_SYSTEM_ERR\fR\fR
+.ad
+.RS 20n
+Credentials could not be stored, or netname could not be created.
+.RE
+
+.sp
+.LP
+The authentication token management returns the following error codes:
+.sp
+.ne 2
+.na
+\fB\fBPAM_SUCCESS \fR\fR
+.ad
+.RS 20n
+Old \fBrpc\fR password is set in \fBSUNW_OLDRPCPASS\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_USER_UNKNOWN\fR\fR
+.ad
+.RS 20n
+User in \fBPAM_USER\fR is unknown.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_AUTHTOK_ERR\fR\fR
+.ad
+.RS 20n
+User did not provide a password that decrypts the secret keys.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_BUF_ERR\fR\fR
+.ad
+.RS 20n
+Module ran out of memory.
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+_
+MT Level MT-Safe with exceptions
+.TE
+
+.SH SEE ALSO
+.LP
+.BR keylogin (1),
+.BR keylogout (1),
+.BR syslog (3C),
+.BR libpam (3LIB),
+.BR pam (3PAM),
+.BR pam_authenticate (3PAM),
+.BR pam_chauthtok (3PAM),
+.BR pam_get_data (3PAM),
+.BR pam_get_item (3PAM),
+.BR pam_set_data (3PAM),
+.BR pam_setcred (3PAM),
+.BR pam.conf (5),
+.BR attributes (7),
+.BR pam_authtok_check (7),
+.BR pam_authtok_get (7),
+.BR pam_authtok_store (7),
+.BR pam_passwd_auth (7),
+.BR pam_unix_account (7),
+.BR pam_unix_auth (7),
+.BR pam_unix_session (7)
+.SH NOTES
+.LP
+The interfaces in \fBlibpam\fR(3LIB) are MT-Safe only if each thread within the
+multi-threaded application uses its own PAM handle.
+.sp
+.LP
+The \fBpam_unix\fR(7) module is no longer supported. Similar functionality is
+provided by \fBpam_authtok_check\fR(7), \fBpam_authtok_get\fR(7),
+\fBpam_authtok_store\fR(7), \fBpam_dhkeys\fR(7), \fBpam_passwd_auth\fR(7),
+\fBpam_unix_account\fR(7), \fBpam_unix_auth\fR(7), and
+\fBpam_unix_session\fR(7).
diff --git a/usr/src/man/man7/pam_dial_auth.7 b/usr/src/man/man7/pam_dial_auth.7
new file mode 100644
index 0000000000..ad7218f983
--- /dev/null
+++ b/usr/src/man/man7/pam_dial_auth.7
@@ -0,0 +1,133 @@
+'\" te
+.\" Copyright (C) 2002, Sun Microsystems, Inc.
+.\" All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PAM_DIAL_AUTH 7 "Sep 9, 2004"
+.SH NAME
+pam_dial_auth \- authentication management PAM module for dialups
+.SH SYNOPSIS
+.LP
+.nf
+\fBpam_dial_auth.so.1\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBpam_dial_auth\fR module implements \fBpam_sm_authenticate\fR(3PAM) which
+authenticates the user according to the \fBdialups\fR(5) and \fBd_passwd\fR(5)
+files configuration.
+.sp
+.LP
+Authentication service modules must implement both \fBpam_sm_authenticate()\fR
+and \fBpam_sm_setcred()\fR. \fBpam_sm_setcred()\fR in this module always
+returns \fBPAM_IGNORE\fR.
+.sp
+.LP
+The value of the \fBPAM_TTY\fR item is checked against entries in
+\fBdialups\fR(5). If there is a match, the user's shell is compared against
+entries in \fBd_passwd\fR(5). If there is a matching entry, the user is
+prompted for a password which is validated against the entry found.
+.sp
+.LP
+The following option may be passed in to this service module:
+.sp
+.ne 2
+.na
+\fB\fBdebug\fR\fR
+.ad
+.RS 9n
+\fBsyslog\fR(3C) debugging information at \fBLOG_DEBUG\fR level.
+.RE
+
+.SH ERRORS
+.sp
+.LP
+If \fBdialups\fR(5) is not present, \fBPAM_IGNORE\fR is returned. Upon
+successful completion of \fBpam_sm_authenticate()\fR, \fBPAM_SUCCESS\fR is
+returned. The following error codes are returned upon error:
+.sp
+.ne 2
+.na
+\fB\fBPAM_AUTH_ERR\fR\fR
+.ad
+.RS 20n
+Authentication failure.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_SERVICE_ERR\fR\fR
+.ad
+.RS 20n
+Error in the calling service, \fBPAM_TTY\fR is not set.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_SYSTEM_ERR\fR\fR
+.ad
+.RS 20n
+System error (\fBd_passwd\fR(5) is not present).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_USER_UNKNOWN\fR\fR
+.ad
+.RS 20n
+No account is present for \fIuser\fR.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for a description of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+MT Level MT-Safe with exceptions
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR libpam (3LIB),
+.BR pam (3PAM),
+.BR pam_authenticate (3PAM),
+.BR pam_sm_authenticate (3PAM),
+.BR d_passwd (5),
+.BR dialups (5),
+.BR pam.conf (5),
+.BR attributes (7),
+.BR pam_authtok_check (7),
+.BR pam_authtok_get (7),
+.BR pam_authtok_store (7),
+.BR pam_dhkeys (7),
+.BR pam_passwd_auth (7),
+.BR pam_unix_account (7),
+.BR pam_unix_auth (7),
+.BR pam_unix_session (7)
+.SH NOTES
+.sp
+.LP
+The interfaces in \fBlibpam\fR(3LIB) are MT-Safe only if each thread within the
+multi-threaded application uses its own \fBPAM\fR handle.
+.sp
+.LP
+The \fBpam_unix\fR(7) module is no longer supported. Similar functionality is
+provided by \fBpam_authtok_check\fR(7), \fBpam_authtok_get\fR(7),
+\fBpam_authtok_store\fR(7), \fBpam_dhkeys\fR(7), \fBpam_passwd_auth\fR(7),
+\fBpam_unix_account\fR(7), \fBpam_unix_auth\fR(7), and
+\fBpam_unix_session\fR(7).
diff --git a/usr/src/man/man7/pam_krb5.7 b/usr/src/man/man7/pam_krb5.7
new file mode 100644
index 0000000000..b749852758
--- /dev/null
+++ b/usr/src/man/man7/pam_krb5.7
@@ -0,0 +1,714 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PAM_KRB5 7 "Apr 8, 2008"
+.SH NAME
+pam_krb5 \- authentication, account, session, and password management PAM
+modules for Kerberos V5
+.SH SYNOPSIS
+.LP
+.nf
+/usr/lib/security/pam_krb5.so.1
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The Kerberos V5 service module for \fBPAM\fR provides functionality for all
+four \fBPAM\fR modules: authentication, account management, session management,
+and password management. The service module is a shared object that can be
+dynamically loaded to provide the necessary functionality upon demand. Its path
+is specified in the \fBPAM\fR configuration file.
+.SS "Kerberos Authentication Module"
+.sp
+.LP
+The Kerberos V5 authentication component provides functions to verify the
+identity of a user, \fBpam_sm_authenticate()\fR, and to manage the Kerberos
+credentials cache, \fBpam_sm_setcred()\fR.
+.sp
+.LP
+\fBpam_sm_authenticate()\fR authenticates a user principal through the Kerberos
+authentication service. If the authentication request is successful, the
+authentication service sends a ticket-granting ticket (\fBTGT\fR) back to the
+service module, which then verifies that the \fBTGT\fR came from a valid Key
+Distribution Center (\fBKDC\fR) by attempting to get a service ticket for the
+local host service. For this to succeed, the local host's keytab file
+(\fB/etc/krb5/krb5.keytab\fR) must contain the entry for the local host
+service. For example, in the file \fBhost/\fIhostname.com\fR@\fIREALM\fR\fR,
+\fIhostname.com\fR is the fully qualified local hostname and \fIREALM\fR is the
+default realm of the local host as defined in \fB/etc/krb5/krb5.conf\fR. If the
+host entry is not found in the keytab file, the authentication fails.
+Administrators may optionally disable this "strict" verification by setting
+"\fBverify_ap_req_nofail = false\fR" in \fB/etc/krb5/krb5.conf\fR. See
+\fBkrb5.conf\fR(5) for more details on this option. This allows \fBTGT\fR
+verification to succeed in the absence of a keytab host principal entry.
+.sp
+.LP
+\fBpam_sm_authenticate\fR(3PAM) may be passed the following flag:
+.sp
+.ne 2
+.na
+\fB\fBPAM_DISALLOW_NULL_AUTHTOK\fR\fR
+.ad
+.sp .6
+.RS 4n
+This flag is ignored. The Kerberos authentication mechanism will not allow an
+empty password string by default.
+.RE
+
+.sp
+.LP
+\fBpam_sm_setcred()\fR creates and modifies the user's credential cache. This
+function initializes the user's credential cache, if it does not already exist,
+and stores the initial credentials for later use by Kerberized network
+applications. The following flags may be set in the flags field. They are best
+described by their effect on the user's credential cache.
+.sp
+.ne 2
+.na
+\fB\fBPAM_ESTABLISH_CRED\fR\fR
+.ad
+.sp .6
+.RS 4n
+Stores the initial credentials in the user's credential cache so that the user
+may access Kerberos network services. If a successful authentication pass was
+made, the new credentials are stored in the credential cache, overwriting any
+existing credentials that were previously stored. If an unsuccessful
+authentication pass was made, PAM_CRED_UNAVAIL is returned.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_DELETE_CRED\fR\fR
+.ad
+.sp .6
+.RS 4n
+This flag has no effect on the credential cache and always returns
+\fBPAM_SUCCESS\fR. The credential cache is not deleted because there is no
+accurate method to determine if the credentials are needed by another process.
+The credential cache may be deleted with the \fBkdestroy\fR(1) command.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_REINITIALIZE_CRED\fR\fR
+.ad
+.sp .6
+.RS 4n
+Deletes the user's existing credential cache, if it exists, and creates a new
+credential cache. The new credentials are stored in the new cache and the
+user's ticket lifetime and renewable life time values are reset.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_REFRESH_CRED\fR\fR
+.ad
+.sp .6
+.RS 4n
+Does not require a previous authentication pass, but if a successful one is
+made, the new credentials are stored in the credential cache. If a previous
+authentication pass was not made or was unsuccessful, an attempt to renew the
+existing credentials is made. Note that this function fails if the user's
+renewable ticket lifetime is expired.
+.RE
+
+.sp
+.LP
+The following options can be passed to the Kerberos V5 authentication module:
+.sp
+.ne 2
+.na
+\fB\fBdebug\fR\fR
+.ad
+.RS 10n
+Provides \fBsyslog\fR(3C) debugging information at \fBLOG_DEBUG\fR level.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnowarn\fR\fR
+.ad
+.RS 10n
+Turns off warning messages.
+.RE
+
+.SS "Kerberos V5 Account Management Module"
+.sp
+.LP
+The Kerberos account management component provides a function to perform
+account management, \fBpam_sm_acct_mgmt()\fR. This function checks to see if
+the \fBpam_krb5\fR authentication module has noted that the user's password has
+not expired. The following options may be passed in to the Kerberos V5 account
+management module:
+.sp
+.ne 2
+.na
+\fBdebug\fR
+.ad
+.RS 10n
+Provides \fBsyslog\fR(3C) debugging information at \fBLOG_DEBUG\fR level
+.RE
+
+.sp
+.ne 2
+.na
+\fBnowarn\fR
+.ad
+.RS 10n
+Turns off warning messages. Also, does not query KDC for impending password
+expiration information used to warn the user.
+.RE
+
+.SS "Kerberos V5 Session Management Module"
+.sp
+.LP
+The Kerberos V5 session management component provides functions to initiate
+\fBpam_sm_open_session()\fR and terminate \fBpam_sm_close_session()\fR Kerberos
+sessions. For Kerberos V5, both \fBpam_sm_open_session\fR and
+\fBpam_sm_close_session()\fR are null functions, returning \fBPAM_IGNORE\fR.
+.SS "Kerberos V5 Password Management Module"
+.sp
+.LP
+The Kerberos V5 password management component provides a function to change
+passwords, \fBpam_sm_chauthtok()\fR, in the Key Distribution Center (\fBKDC\fR)
+database. The following flags may be passed to \fBpam_sm_chauthtok\fR(3PAM):
+.sp
+.ne 2
+.na
+\fB\fBPAM_CHANGE_EXPIRED_AUTHTOK\fR\fR
+.ad
+.sp .6
+.RS 4n
+The password service should only update the user's Kerberos password if it is
+expired. Otherwise, this function returns \fBPAM_IGNORE\fR. The default
+behaviour is to always change the user's Kerberos password.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_PRELIM_CHECK\fR\fR
+.ad
+.sp .6
+.RS 4n
+This is a null function that always returns \fBPAM_IGNORE\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_UPDATE_AUTHTOK\fR\fR
+.ad
+.sp .6
+.RS 4n
+This flag is necessary to change the user's Kerberos password. If this flag is
+not set, \fBpam_krb5\fR returns \fBPAM_SYSTEM_ERR\fR.
+.RE
+
+.sp
+.LP
+The following option can be passed to the Kerberos V5 password module:
+.sp
+.ne 2
+.na
+\fB\fBdebug\fR\fR
+.ad
+.RS 9n
+Provides \fBsyslog\fR(3C) debugging information at \fBLOG_DEBUG\fR level.
+.RE
+
+.SH ERRORS
+.sp
+.LP
+The following error codes are returned for \fBpam_sm_authenticate()\fR:
+.sp
+.ne 2
+.na
+\fB\fBPAM_AUTH_ERR\fR\fR
+.ad
+.RS 20n
+Authentication failure
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_BUF_ERR\fR\fR
+.ad
+.RS 20n
+Memory buffer error.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_IGNORE\fR\fR
+.ad
+.RS 20n
+The user is "\fBroot\fR" and the root key exists in the default keytab.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_SUCCESS\fR\fR
+.ad
+.RS 20n
+Successfully obtained Kerberos credentials .
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_SYSTEM_ERR\fR\fR
+.ad
+.RS 20n
+System error.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_USER_UNKNOWN\fR\fR
+.ad
+.RS 20n
+An unknown Kerberos principal was requested.
+.RE
+
+.sp
+.LP
+The following error codes are returned for \fBpam_sm_setcred()\fR:
+.sp
+.ne 2
+.na
+\fB\fBPAM_AUTH_ERR\fR\fR
+.ad
+.RS 18n
+Authentication failure.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_BUF_ERR\fR\fR
+.ad
+.RS 18n
+Memory buffer error.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_IGNORE\fR\fR
+.ad
+.RS 18n
+The user is "\fBroot\fR" and the root key exists in the default keytab.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_SYSTEM_ERR\fR\fR
+.ad
+.RS 18n
+System error.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_SUCCESS\fR\fR
+.ad
+.RS 18n
+Successfully modified the Kerberos credential cache.
+.RE
+
+.sp
+.LP
+The following error codes are returned for \fBpam_sm_acct_mgmt()\fR:
+.sp
+.ne 2
+.na
+\fB\fBPAM_AUTH_ERR\fR\fR
+.ad
+.RS 24n
+Authentication failure.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_IGNORE\fR\fR
+.ad
+.RS 24n
+Kerberos service module \fBpam_sm_authenticate()\fR was never called, or the
+user is "\fBroot\fR" and the root key exists in the default keytab.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_NEW_AUTHTOK_REQD\fR\fR
+.ad
+.RS 24n
+Obtain new authentication token from the user.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_SERVICE_ERR\fR\fR
+.ad
+.RS 24n
+Error in underlying service module.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_SUCCESS\fR\fR
+.ad
+.RS 24n
+Kerberos principal account is valid.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_SYSTEM_ERR\fR\fR
+.ad
+.RS 24n
+System error.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_USER_UNKNOWN\fR\fR
+.ad
+.RS 24n
+An unknown Kerberos principal was requested.
+.RE
+
+.sp
+.LP
+The following error code is returned for \fBpam_sm_open_session()\fR and
+\fBpam_sm_close_session()\fR:
+.sp
+.ne 2
+.na
+\fB\fBPAM_IGNORE\fR\fR
+.ad
+.RS 14n
+These two functions are null functions in \fBpam_krb5\fR:
+.RE
+
+.sp
+.LP
+The following error codes are returned for \fBpam_sm_chauthtok()\fR:
+.sp
+.ne 2
+.na
+\fB\fBPAM_AUTH_ERR\fR\fR
+.ad
+.RS 24n
+Authentication failure.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_IGNORE\fR\fR
+.ad
+.RS 24n
+The user has not been authenticated by Kerberos service module
+\fBpam_sm_authenticate()\fR, or the user is "\fBroot\fR" and the root key
+exists in the default keytab.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_NEW_AUTHTOK_REQD\fR\fR
+.ad
+.RS 24n
+User's Kerberos password has expired.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_SERVICE_ERR\fR\fR
+.ad
+.RS 24n
+Error in module. At least one input parameter is missing.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_SYSTEM_ERR\fR\fR
+.ad
+.RS 24n
+System error.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_USER_UNKNOWN\fR\fR
+.ad
+.RS 24n
+An unknown Kerberos principal was requested.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_SUCCESS\fR\fR
+.ad
+.RS 24n
+Successfully changed the user's Kerberos password.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRAuthenticate Users Through Kerberos as First Choice
+.sp
+.LP
+The following is an excerpt of a sample \fBpam.conf\fR configuration file that
+authenticates users through the Kerberos authentication service and
+authenticates through the Unix login only if the Kerberos authentication fails.
+This arrangement is helpful when a majority of the users are networked by means
+of Kerberos and when there are only a few non-Kerberos type user accounts, such
+as root. The service illustrated below is for \fBdtlogin\fR.
+
+.sp
+.in +2
+.nf
+dtlogin auth requisite pam_smartcard.so.1
+dtlogin auth requisite pam_authtok_get.so.1
+dtlogin auth required pam_dhkeys.so.1
+dtlogin auth required pam_unix_cred.so.1
+dtlogin auth sufficient pam_krb5.so.1
+dtlogin auth required pam_unix_auth.so.1
+.fi
+.in -2
+
+.sp
+.LP
+Note that these changes should not be made to the existing \fBkrlogin\fR,
+\fBkrsh\fR, and \fBktelnet\fR service entries. Those services require Kerberos
+authentication, so using a seemingly sufficient control flag would not provide
+the necessary functionality for privacy and integrity. There should be no need
+to change those entries.
+
+.sp
+.LP
+The following entries check for password expiration when dealing with Kerberos
+and Unix password aging policies:
+
+.sp
+.in +2
+.nf
+other account requisite pam_roles.so.1
+other account required pam_unix_account.so.1
+other account required pam_krb5.so.1
+.fi
+.in -2
+
+.sp
+.LP
+The following entries would change the Kerberos password of the user and
+continue to change the Unix login password only if the Kerberos password change
+had failed:
+
+.sp
+.in +2
+.nf
+other password required pam_dhkeys.so.1
+other password requisite pam_authtok_get.so.1
+other password requisite pam_authtok_check.so.1
+other password sufficient pam_krb5.so.1
+other password required pam_authtok_store.so.1
+.fi
+.in -2
+
+.sp
+.LP
+When changing Kerberos based user's password, use \fBkpasswd\fR(1). When
+changing a non-Kerberos user's password, it is recommended that the repository
+is specified (\fB-r\fR) with the \fBpasswd\fR(1) command.
+
+.LP
+\fBExample 2 \fRAuthenticate Users Through Kerberos Only
+.sp
+.LP
+The following example allows authentication only to users that have
+Kerberos-based accounts.
+
+.sp
+.in +2
+.nf
+dtlogin auth requisite pam_smartcard.so.1
+dtlogin auth requisite pam_authtok_get.so.1
+dtlogin auth required pam_dhkeys.so.1
+dtlogin auth required pam_unix_cred.so.1
+dtlogin auth binding pam_krb5.so.1
+dtlogin auth required pam_unix_auth.so.1
+.fi
+.in -2
+
+.sp
+.LP
+Typically, you would have another service specified in the \fBpam.conf\fR file
+that would allow local users, such as database, web server, system
+administrator accounts, to log in to the host machine. For example, the service
+name "login" could be used for these users. Note that these users should not
+belong to any roles.
+
+.sp
+.LP
+The rest of the module types look similar to that shown in the previous
+example:
+
+.sp
+.in +2
+.nf
+other account requisite pam_roles.so.1
+other account required pam_unix_account.so.1
+other account required pam_krb5.so.1
+.fi
+.in -2
+
+.sp
+.LP
+With binding specified in the following, it is important that non-Kerberos
+users specify the repository in which they reside using the \fB-r\fR option
+with the \fBpasswd\fR(1) command. This configuration is also based on the
+assumptions that:
+
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Kerberos users maintain only their Kerberos passwords;
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+changing their Unix password is not necessary, given that they are
+authenticated only through their Kerberos passwords when logging in.
+.RE
+.sp
+.in +2
+.nf
+other password required pam_dhkeys.so.1
+other password requisite pam_authtok_get.so.1
+other password requisite pam_authtok_check.so.1
+other password binding pam_krb5.so.1
+other password required pam_authtok_store.so.1
+.fi
+.in -2
+
+.LP
+\fBExample 3 \fRAuthenticate Through Kerberos Optionally
+.sp
+.LP
+This configuration is helpful when the majority of users are non-Kerberos users
+and would like to authenticate through Kerberos if they happened to exist in
+the Kerberos database. The effect of this is similar to users voluntarily
+executing \fBkinit\fR(1) after they have successfully logged in:
+
+.sp
+.in +2
+.nf
+dtlogin auth requisite pam_smartcard.so.1
+dtlogin auth requisite pam_authtok_get.so.1
+dtlogin auth required pam_dhkeys.so.1
+dtlogin auth required pam_unix_cred.so.1
+dtlogin auth required pam_unix_auth.so.1
+dtlogin auth optional pam_krb5.so.1
+.fi
+.in -2
+
+.sp
+.LP
+The rest of the configuration is as follows:
+
+.sp
+.in +2
+.nf
+other account requisite pam_roles.so.1
+other account required pam_unix_account.so.1
+other account required pam_krb5.so.1
+
+other password required pam_dhkeys.so.1
+other password requisite pam_authtok_get.so.1
+other password requisite pam_authtok_check.so.1
+other password required pam_authtok_store.so.1
+other password optional pam_krb5.so.1
+.fi
+.in -2
+
+.sp
+.LP
+Non-Kerberos users should specify their respective repositories by using the
+\fB-r\fR option when changing their password with the \fBpasswd\fR(1) command.
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR kdestroy (1),
+.BR kinit (1),
+.BR kpasswd (1),
+.BR passwd (1),
+.BR syslog (3C),
+.BR libpam (3LIB),
+.BR pam (3PAM),
+.BR pam_sm (3PAM),
+.BR pam_sm_acct_mgmt (3PAM),
+.BR pam_sm_authenticate (3PAM),
+.BR pam_sm_chauthtok (3PAM),
+.BR pam_sm_close_session (3PAM),
+.BR pam_sm_open_session (3PAM),
+.BR pam_sm_setcred (3PAM),
+.BR pam.conf (5),
+.BR attributes (7),
+.BR kerberos (7),
+.BR krb5envvar (7),
+.BR ktkt_warnd (8)
+.SH NOTES
+.sp
+.LP
+The interfaces in \fBlibpam\fR(3LIB) are MT-Safe only if each thread within the
+multi-threaded application uses its own \fBPAM\fR handle.
+.sp
+.LP
+On successful acquisition of initial credentials (ticket-granting ticket),
+\fBktkt_warnd\fR(8) will be notified, to alert the user when the initial
+credentials are about to expire.
diff --git a/usr/src/man/man7/pam_krb5_migrate.7 b/usr/src/man/man7/pam_krb5_migrate.7
new file mode 100644
index 0000000000..fbdb2be4f8
--- /dev/null
+++ b/usr/src/man/man7/pam_krb5_migrate.7
@@ -0,0 +1,200 @@
+'\" te
+.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PAM_KRB5_MIGRATE 7 "November 22, 2021"
+.SH NAME
+pam_krb5_migrate \- authentication PAM module for the KerberosV5 auto-migration
+of users feature
+.SH SYNOPSIS
+.nf
+\fB/usr/lib/security/pam_krb5_migrate.so.1\fR
+.fi
+
+.SH DESCRIPTION
+The KerberosV5 auto-migrate service module for PAM provides functionality for
+the PAM authentication component. The service module helps in the automatic
+migration of \fBPAM_USER\fR to the client's local Kerberos realm, using
+\fBPAM_AUTHTOK\fR (the PAM authentication token associated with \fBPAM_USER\fR)
+as the new Kerberos principal's password.
+.SS "KerberosV5 Auto-migrate Authentication Module"
+The KerberosV5 auto-migrate authentication component provides the
+\fBpam_sm_authenticate\fR(3PAM) function to migrate a user who does not have a
+corresponding \fBkrb5\fR principal account to the default Kerberos realm of the
+client.
+.sp
+.LP
+\fBpam_sm_authenticate\fR(3PAM) uses a host-based client service principal,
+present in the local \fBkeytab\fR (\fB/etc/krb5/krb5.keytab\fR) to authenticate
+to \fBkadmind\fR(8) (defaults to the \fBhost/nodename.fqdn\fR service
+principal), for the principal creation operation. Also, for successful creation
+of the \fBkrb5\fR user principal account, the host-based client service
+principal being used needs to be assigned the appropriate privilege on the
+master KDC's \fBkadm5.acl\fR(5) file. \fBkadmind\fR(8) checks for the
+appropriate privilege and validates the user password using PAM by calling
+\fBpam_authenticate\fR(3PAM) and \fBpam_acct_mgmt\fR(3PAM) for the
+\fBk5migrate\fR service.
+.sp
+.LP
+If migration of the user to the KerberosV5 infrastructure is successful, the
+module will inform users about it by means of a \fBPAM_TEXT_INFO\fR message,
+unless instructed otherwise by the presence of the \fBquiet\fR option.
+.sp
+.LP
+The authentication component always returns \fBPAM_IGNORE\fR and is meant to be
+stacked in \fBpam.conf\fR with a requirement that it be listed below
+pam_authtok_get(7) in the authentication stack. Also, if \fBpam_krb5_migrate\fR
+is used in the authentication stack of a particular service, it is mandatory
+that \fBpam_krb5\fR(7) be listed in the PAM account stack of that service for
+proper operation (see EXAMPLES).
+.SH OPTIONS
+The following options can be passed to the KerberosV5 auto-migrate
+authentication module:
+.sp
+.ne 2
+.na
+\fB\fBdebug\fR\fR
+.ad
+.sp .6
+.RS 4n
+Provides \fBsyslog\fR(3C) debugging information at \fBLOG_DEBUG\fR level.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBclient_service=\fR\fI<service name>\fR\fR
+.ad
+.sp .6
+.RS 4n
+Name of the service used to authenticate to \fBkadmind\fR(8) defaults to
+\fBhost\fR. This means that the module uses \fBhost/\fR\fI<nodename.fqdn>\fR as
+its client service principal name, KerberosV5 user principal creation operation
+or \fI<service>\fR/\fI<nodename.fqdn>\fR if this option is provided.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBquiet\fR\fR
+.ad
+.sp .6
+.RS 4n
+Do not explain KerberosV5 migration to the user.
+.sp
+This has the same effect as passing the \fBPAM_SILENT\fR flag to
+\fBpam_sm_authenticate\fR(3PAM) and is useful where applications cannot handle
+\fBPAM_TEXT_INFO\fR messages.
+.sp
+If not set, the authentication component will issue a \fBPAM_TEXT_INFO\fR
+message after creation of the Kerberos V5 principal, indicating that it has
+done so.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBexpire_pw\fR\fR
+.ad
+.sp .6
+.RS 4n
+Causes the creation of KerberosV5 user principals with password expiration set
+to \fBnow\fR (current time).
+.RE
+
+.SH EXAMPLES
+\fBExample 1 \fRSample Entries from \fBpam.conf\fR
+.sp
+.LP
+The following entries from \fBpam.conf\fR(5) demonstrate the use of the
+\fBpam_krb5_migrate.so.1\fR module:
+
+.sp
+.in +2
+.nf
+login auth requisite pam_authtok_get.so.1
+login auth required pam_dhkeys.so.1
+login auth required pam_unix_cred.so.1
+login auth sufficient pam_krb5.so.1
+login auth requisite pam_unix_auth.so.1
+login auth optional pam_krb5_migrate.so.1 expire_pw
+login auth required pam_dial_auth.so.1
+
+other account requisite pam_roles.so.1
+other account required pam_krb5.so.1
+other account required pam_unix_account.so.1
+.fi
+.in -2
+
+.sp
+.LP
+The \fBpam_krb5_migrate\fR module can generally be present on the
+authentication stack of any service where the application calls
+\fBpam_sm_authenticate\fR(3PAM) and an authentication token (in the preceding
+example, the authentication token would be the user's Unix password) is
+available for use as a Kerberos V5 password.
+
+.LP
+\fBExample 2 \fRSample Entries from \fBkadm5.acl\fR
+.sp
+.LP
+The following entries from \fBkadm5.acl\fR(5) permit or deny privileges to the
+host client service principal:
+
+.sp
+.in +2
+.nf
+host/*@EXAMPLE.COM U root
+host/*@EXAMPLE.COM ui *
+.fi
+.in -2
+
+.sp
+.LP
+The preceding entries permit the \fBpam_krb5_migrate\fR \fBadd\fR privilege to
+the host client service principal of any machine in the \fBEXAMPLE.COM\fR
+KerberosV5 realm, but denies the \fBadd\fR privilege to all host service
+principals for addition of the root user account.
+
+.LP
+\fBExample 3 \fRSample Entries in \fBpam.conf\fR of the Master KDC
+.sp
+.LP
+The entries below enable \fBkadmind\fR(8) on the master KDC to use the
+\fBk5migrate\fR PAM service in order to validate Unix user passwords for
+accounts that require migration to the Kerberos realm.
+
+.sp
+.in +2
+.nf
+k5migrate auth required pam_unix_auth.so.1
+k5migrate account required pam_unix_account.so.1
+.fi
+.in -2
+
+.SH ATTRIBUTES
+See \fBattributes\fR(7) for a description of the following attribute:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.BR syslog (3C),
+.BR pam_acct_mgmt (3PAM),
+.BR pam_authenticate (3PAM),
+.BR pam_sm_authenticate (3PAM),
+.BR kadm5.acl (5),
+.BR pam.conf (5),
+.BR attributes (7),
+.BR pam_authtok_get (7),
+.BR pam_krb5 (7),
+.BR kadmind (8)
diff --git a/usr/src/man/man7/pam_ldap.7 b/usr/src/man/man7/pam_ldap.7
new file mode 100644
index 0000000000..66173284a8
--- /dev/null
+++ b/usr/src/man/man7/pam_ldap.7
@@ -0,0 +1,425 @@
+'\" te
+.\" Copyright (C) 2005, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PAM_LDAP 7 "Dec 21, 2005"
+.SH NAME
+pam_ldap \- authentication and account management PAM module for LDAP
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/security/pam_ldap.so.1\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBpam_ldap\fR module implements \fBpam_sm_authenticate\fR(3PAM) and
+\fBpam_sm_acct_mgmt\fR(3PAM), the functions that provide functionality for the
+PAM authentication and account management stacks. The \fBpam_ldap\fR module
+ties the authentication and account management functionality to the
+functionality of the supporting LDAP server. For authentication, \fBpam_ldap\fR
+can authenticate the user directly to any LDAP directory server by using any
+supported authentication mechanism, such as \fBDIGEST-MD5\fR. However, the
+account management component of \fBpam_ldap\fR will work only with the Sun Java
+System Directory Server. The server's user account management must be properly
+configured before it can be used by \fBpam_ldap\fR. Refer to the \fISun Java
+System Directory Server Administration Guide\fR for information on how to
+configure user account management, including password and account lockout
+policy.
+.sp
+.LP
+\fBpam_ldap\fR must be used in conjunction with the modules that support the
+UNIX authentication, password, and account management, which are
+\fBpam_authtok_get\fR(7), \fBpam_passwd_auth\fR(7), \fBpam_unix_account\fR(7),
+and \fBpam_unix_auth\fR(7). \fBpam_ldap\fR is designed to be stacked directly
+below these modules. If other modules are designed to be stacked in this
+manner, the modules can be stacked below the \fBpam_ldap\fR module. The
+Examples section shows how the UNIX modules are stacked with \fBpam_ldap\fR.
+When stacked together, the UNIX modules are used to control local accounts,
+such as \fBroot\fR. \fBpam_ldap\fR is used to control network accounts, that
+is, LDAP users. For the stacks to work, \fBpam_unix_auth\fR,
+\fBpam_unix_account\fR, and \fBpam_passwd_auth\fR must be configured with the
+\fBbinding\fR control flag and the \fBserver_policy\fR option. This
+configuration allows local account override of a network account.
+.SS "LDAP Authentication Module"
+.LP
+The LDAP authentication module verifies the identity of a user. The
+\fBpam_sm_authenticate\fR(3PAM) function uses the password entered by the user
+to attempt to authenticate to the LDAP server. If successful, the user is
+authenticated. See NOTES for information on password prompting.
+.sp
+.LP
+The authentication method used is either defined in the client profile , or the
+authentication method is configured by using the \fBldapclient\fR(8) command.
+To determine the authentication method to use, this module first attempts to
+use the authentication method that is defined, for service \fBpam_ldap\fR, for
+example, \fBserviceAuthenticationMethod:pam_ldap:sasl/DIGEST-MD5\fR. If no
+authentication method is defined, \fBpam_ldap\fR uses the default
+authentication method. If neither are set, the authentication fails. This
+module skips the configured authentication method if the authentication method
+is set to \fBnone\fR.
+.sp
+.LP
+The following options can be passed to the LDAP service module:
+.sp
+.ne 2
+.na
+\fB\fBdebug\fR\fR
+.ad
+.RS 10n
+\fBsyslog\fR(3C) debugging information at \fBLOG_DEBUG\fR level.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnowarn\fR\fR
+.ad
+.RS 10n
+Turn off warning messages.
+.RE
+
+.sp
+.LP
+These options are case sensitive and must be used exactly as presented here.
+.SS "LDAP Account Management Module"
+.LP
+The LDAP account management module validates the user's account. The
+\fBpam_sm_acct_mgmt\fR(3PAM) function authenticates to the LDAP server to
+verify that the user's password has not expired, or that the user's account has
+not been locked. In the event that there is no user authentication token
+(\fBPAM_AUTHTOK\fR) available, the \fBpam_sm_acct_mgmt\fR(3PAM) function
+attempts to retrieve the user's account status without authenticating to the
+LDAP server as the user logging in. This procedure will succeed only if the
+LDAP server is Sun Java System Directory server 5.2 patch 4 or newer. The
+following options can be passed to the LDAP service module:
+.sp
+.ne 2
+.na
+\fB\fBdebug\fR\fR
+.ad
+.RS 10n
+\fBsyslog\fR(3C) debugging information at \fBLOG_DEBUG\fR level.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnowarn\fR\fR
+.ad
+.RS 10n
+Turn off warning messages.
+.RE
+
+.sp
+.LP
+These options are case sensitive, and the options must be used exactly as
+presented here.
+.SS "LDAP Password Management Module"
+.LP
+LDAP password management is no longer supported by \fBpam_ldap\fR. Use
+\fBpam_authtok_store\fR(7) instead of \fBpam_ldap\fR for password change.
+\fBpam_authtok_store\fR(7) handles both the local and LDAP accounts and updates
+the passwords in all the repositories configured by \fBnsswitch.conf\fR(5).
+.SH ERRORS
+.LP
+The authentication service returns the following error codes:
+.sp
+.ne 2
+.na
+\fB\fBPAM_SUCCESS\fR\fR
+.ad
+.RS 20n
+The authentication was successful.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_MAXTRIES\fR\fR
+.ad
+.RS 20n
+The maximum number of authentication attempts was exceeded.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_AUTH_ERR\fR\fR
+.ad
+.RS 20n
+The authentication failed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_USER_UNKNOWN\fR\fR
+.ad
+.RS 20n
+No account is present for the user.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_BUF_ERR\fR\fR
+.ad
+.RS 20n
+A memory buffer error occurred.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_SYSTEM_ERR\fR\fR
+.ad
+.RS 20n
+A system error occurred.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_IGNORE\fR\fR
+.ad
+.RS 20n
+The user's account was inactivated.
+.RE
+
+.sp
+.LP
+The account management service returns the following error codes:
+.sp
+.ne 2
+.na
+\fB\fBPAM_SUCCESS\fR\fR
+.ad
+.RS 24n
+The user was allowed access to the account.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_NEW_AUTHTOK_REQD\fR\fR
+.ad
+.RS 24n
+A new authentication token is required.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_ACCT_EXPIRED\fR\fR
+.ad
+.RS 24n
+The user account has expired.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_PERM_DENIED\fR\fR
+.ad
+.RS 24n
+The user was denied access to the account at this time.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_USER_UNKNOWN\fR\fR
+.ad
+.RS 24n
+No account is present for the user.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_BUF_ERROR\fR\fR
+.ad
+.RS 24n
+A memory buffer error occurred.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_SYSTEM_ERR\fR\fR
+.ad
+.RS 24n
+A system error occurred.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRUsing \fBpam_ldap\fR With Authentication\fB\fR
+.sp
+.LP
+The following is a configuration for the login service when using
+\fBpam_ldap\fR. The service name \fBlogin\fR can be substituted for any other
+authentication service such as \fBdtlogin\fR or \fBsu\fR. Lines that begin with
+the # symbol are comments and are ignored.
+
+.sp
+.in +2
+.nf
+# Authentication management for login service is stacked.
+# If pam_unix_auth succeeds, pam_ldap is not invoked.
+# The control flag "binding" provides a local overriding
+# remote (LDAP) control. The "server_policy" option is used
+# to tell pam_unix_auth.so.1 to ignore the LDAP users.
+
+login auth requisite pam_authtok_get.so.1
+login auth required pam_dhkeys.so.1
+login auth required pam_unix_cred.so.1
+login auth binding pam_unix_auth.so.1 server_policy
+login auth required pam_ldap.so.1
+.fi
+.in -2
+
+.LP
+\fBExample 2 \fRUsing \fBpam_ldap\fR With Account Management
+.sp
+.LP
+The following is a configuration for account management when using
+\fBpam_ldap\fR. Lines that begin with the # symbol are comments and are
+ignored.
+
+.sp
+.in +2
+.nf
+# Account management for all services is stacked
+# If pam_unix_account succeeds, pam_ldap is not invoked.
+# The control flag "binding" provides a local overriding
+# remote (LDAP) control. The "server_policy" option is used
+# to tell pam_unix_account.so.1 to ignore the LDAP users.
+
+other account requisite pam_roles.so.1
+other account binding pam_unix_account.so.1 server_policy
+other account required pam_ldap.so.1
+.fi
+.in -2
+
+.LP
+\fBExample 3 \fRUsing \fBpam_authtok_store\fR With Password Management For Both
+Local and LDAP Accounts
+.sp
+.LP
+The following is a configuration for password management when using
+\fBpam_authtok_store\fR. Lines that begin with the # symbol are comments and
+are ignored.
+
+.sp
+.in +2
+.nf
+# Password management (authentication)
+# The control flag "binding" provides a local overriding
+# remote (LDAP) control. The server_policy option is used
+# to tell pam_passwd_auth.so.1 to ignore the LDAP users.
+
+passwd auth binding pam_passwd_auth.so.1 server_policy
+passwd auth required pam_ldap.so.1
+
+# Password management (updates)
+# This updates passwords stored both in the local /etc
+# files and in the LDAP directory. The "server_policy"
+# option is used to tell pam_authtok_store to
+# follow the LDAP server's policy when updating
+# passwords stored in the LDAP directory
+
+other password required pam_dhkeys.so.1
+other password requisite pam_authtok_get.so.1
+other password requisite pam_authtok_check.so.1
+other password required pam_authtok_store.so.1 server_policy
+.fi
+.in -2
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/var/ldap/ldap_client_file\fR\fR
+.ad
+.br
+.na
+\fB\fB/var/ldap/ldap_client_cred\fR\fR
+.ad
+.RS 30n
+The LDAP configuration files of the client. Do not manually modify these files,
+as these files might not be human readable. Use \fBldapclient\fR(8) to update
+these files.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/pam.conf\fR\fR
+.ad
+.RS 30n
+PAM configuration file.
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+_
+MT-Level MT-Safe with exceptions
+.TE
+
+.SH SEE ALSO
+.LP
+.BR ldap (1),
+.BR syslog (3C),
+.BR libpam (3LIB),
+.BR pam (3PAM),
+.BR pam_sm_acct_mgmt (3PAM),
+.BR pam_sm_authenticate (3PAM),
+.BR pam_sm_chauthtok (3PAM),
+.BR pam_sm_close_session (3PAM),
+.BR pam_sm_open_session (3PAM),
+.BR pam_sm_setcred (3PAM),
+.BR pam.conf (5),
+.BR attributes (7),
+.BR pam_authtok_check (7),
+.BR pam_authtok_get (7),
+.BR pam_authtok_store (7),
+.BR pam_passwd_auth (7),
+.BR pam_unix_account (7),
+.BR pam_unix_auth (7),
+.BR idsconfig (8),
+.BR ldap_cachemgr (8),
+.BR ldapclient (8)
+.SH NOTES
+.LP
+The interfaces in \fBlibpam\fR(3LIB) are MT-Safe only if each thread within the
+multi-threaded application uses its own \fBPAM\fR handle.
+.sp
+.LP
+The previously supported \fBuse_first_pass\fR and \fBtry_first_pass\fR options
+are obsolete in this version, are no longer needed, can safely be removed from
+\fBpam.conf\fR(5), and are silently ignored. They might be removed in a future
+release. Password prompting must be provided for by stacking
+\fBpam_authtok_get\fR(7) before \fBpam_ldap\fR in the \fBauth\fR and
+\fBpassword\fR module stacks and \fBpam_passwd_auth\fR(7) in the \fBpasswd\fR
+service \fBauth\fR stack (as described in the EXAMPLES section). The previously
+supported password update function is replaced in this release by the
+previously recommended use of \fBpam_authtok_store\fR with the
+\fBserver_policy\fR option (as described in the EXAMPLES section).
+.sp
+.LP
+The functions: \fBpam_sm_setcred\fR(3PAM), \fBpam_sm_chauthtok\fR(3PAM),
+\fBpam_sm_open_session\fR(3PAM), and \fBpam_sm_close_session\fR(3PAM) do
+nothing and return \fBPAM_IGNORE\fR in \fBpam_ldap\fR.
diff --git a/usr/src/man/man7/pam_list.7 b/usr/src/man/man7/pam_list.7
new file mode 100644
index 0000000000..e7a0c1e9a4
--- /dev/null
+++ b/usr/src/man/man7/pam_list.7
@@ -0,0 +1,308 @@
+'\" te
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
+.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PAM_LIST 7 "April 22, 2020"
+.SH NAME
+pam_list \- PAM account management module for UNIX
+.SH SYNOPSIS
+.nf
+ pam_list.so.1
+.fi
+
+.SH DESCRIPTION
+The \fBpam_list\fR module implements \fBpam_sm_acct_mgmt\fR(3PAM), which
+provides functionality to the PAM account management stack. The module
+provides functions to validate that the user's account is valid on this
+host based on a list of users, groups, and/or netgroups in the given file. The users,
+groups, and netgroups are separated by newline character. Groups are specified
+with character '%' and netgroups are specified with character '@' as prefix
+before name of the group/netgroup in the list. The maximum line length is 1023
+characters.
+.sp
+.LP
+The username is the value of \fBPAM_USER\fR. The host is the value of
+\fBPAM_RHOST\fR or, if \fBPAM_RHOST\fR is not set, the value of the localhost
+as returned by \fBgethostname\fR(3C) is used.
+.sp
+.LP
+If neither of the \fBallow\fR, \fBdeny\fR, or \fBcompat\fR options are
+specified, the module will look for +/- entries in the local \fB/etc/passwd\fR
+file. If this style is used, \fBnsswitch.conf\fR(5) must not be configured
+with \fBcompat\fR for the \fBpasswd\fR database. If no relevant +/- entry
+exists for the user, \fBpam_list\fR is not participating in result.
+.sp
+.LP
+If \fBcompat\fR option is specified then the module will look for +/- entries
+in the local \fB/etc/passwd\fR file. Other entries in this file will be counted
+as + entries. If no relevant entry exits for the user, \fBpam_list\fR will deny
+the access.
+.sp
+.LP
+The following options can be passed to the module:
+.sp
+.ne 2
+.na
+\fB\fBallow=\fR\fR
+.ad
+.RS 19n
+The full pathname to a file of allowed users, groups, and/or netgroups.
+Only one of \fBallow=\fR or \fBdeny=\fR can be specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcompat\fR\fR
+.ad
+.RS 19n
+Activate \fBcompat\fR mode.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdeny=\fR\fR
+.ad
+.RS 19n
+The full pathname to a file of denied users, groups, and/or netgroups.
+Only one of \fBdeny=\fR or \fBallow=\fR can be specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdebug\fR\fR
+.ad
+.RS 19n
+Provide \fBsyslog\fR(3C) debugging information at the \fBLOG_AUTH\fR |
+\fBLOG_DEBUG\fR level.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBgroup\fR\fR
+.ad
+.RS 19n
+The module should perform group membership matches for the username.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBuser\fR\fR
+.ad
+.RS 19n
+The module should only perform netgroup matches on the username. This is the
+default option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnouser\fR\fR
+.ad
+.RS 19n
+The username should not be used in the netgroup match.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBhost\fR\fR
+.ad
+.RS 19n
+Only the host should be used in netgroup matches.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnohost\fR\fR
+.ad
+.RS 19n
+The hostname should not be used in netgroup matches.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBuser_host_exact\fR\fR
+.ad
+.RS 19n
+The user and hostname must be in the same netgroup.
+.RE
+
+.SH ERRORS
+The following error values are returned:
+.sp
+.ne 2
+.na
+\fB\fBPAM_SERVICE_ERR\fR\fR
+.ad
+.RS 20n
+An invalid set of module options was given in the \fBpam.conf\fR(5) for this
+module, or the \fBuser/netgroup\fR file could not be opened.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_BUF_ERR\fR\fR
+.ad
+.RS 20n
+A memory buffer error occurred.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_IGNORE\fR\fR
+.ad
+.RS 20n
+The module is ignored, as it is not participating in the result.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_PERM_DENIED\fR\fR
+.ad
+.RS 20n
+The user is not on the allow list or is on the deny list.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_SUCCESS\fR\fR
+.ad
+.RS 20n
+The account is valid for use at this time.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_USER_UNKNOWN\fR\fR
+.ad
+.RS 20n
+No account is present for the user
+.RE
+
+.SH EXAMPLES
+\fBExample 1 \fRUsing \fBpam_list\fR in default mode
+.sp
+.LP
+\fB/etc/pam.conf\fR modification looks like:
+
+.sp
+.in +2
+.nf
+other account requisite pam_roles.so.1
+other account required pam_unix_account.so.1
+other account required pam_list.so.1
+.fi
+.in -2
+
+.sp
+.LP
+In the case of \fBdefault\fR mode or \fBcompat\fR mode, the important lines in
+\fB/etc/passwd\fR appear as follows:
+
+.sp
+.in +2
+.nf
++loginname - user is approved
+-loginname - user is disapproved
++@netgroup - netgroup members are approved
+-@netgroup - netgroup members are disapproved
+.fi
+.in -2
+
+.LP
+\fBExample 2 \fRUsing \fBpam_list\fR with allow file
+.sp
+.LP
+\fB/etc/pam.conf\fR modification looks like:
+
+.sp
+.in +2
+.nf
+other account requisite pam_roles.so.1
+other account required pam_unix_account.so.1
+other account required pam_list.so.1 allow=/etc/users.allow
+.fi
+.in -2
+
+.sp
+.LP
+\fB/etc/users.allow\fR contains:
+.sp
+.in +2
+.nf
+root
+localloginname
+remoteloginname
+@netgroup
+.fi
+.in -2
+
+.LP
+\fBExample 3 \fRUsing \fBpam_list\fR with allow file to allow
+members of the 'admins' group access.
+.sp
+.LP
+\fB/etc/pam.conf\fR modification looks like:
+
+.sp
+.in +2
+.nf
+other account requisite pam_roles.so.1
+other account required pam_unix_account.so.1
+other account required pam_list.so.1 group allow=/etc/users.allow
+.fi
+.in -2
+
+.sp
+.LP
+\fB/etc/users.allow\fR contains:
+.sp
+.in +2
+.nf
+root
+%admins
+.fi
+.in -2
+
+.SH ATTRIBUTES
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Committed
+_
+MT-Level MT-Safe with exceptions
+.TE
+
+.sp
+.LP
+The interfaces in \fBlibpam\fR(3LIB) are MT-Safe only if each thread within the
+multithreaded application uses its own PAM handle.
+.SH SEE ALSO
+.BR syslog (3C),
+.BR libpam (3LIB),
+.BR pam (3PAM),
+.BR pam_authenticate (3PAM),
+.BR pam_sm_acct_mgmt (3PAM),
+.BR nsswitch.conf (5),
+.BR pam.conf (5),
+.BR attributes (7)
diff --git a/usr/src/man/man7/pam_passwd_auth.7 b/usr/src/man/man7/pam_passwd_auth.7
new file mode 100644
index 0000000000..b8ba03367e
--- /dev/null
+++ b/usr/src/man/man7/pam_passwd_auth.7
@@ -0,0 +1,155 @@
+'\" te
+.\" Copyright (C) 2002, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PAM_PASSWD_AUTH 7 "Aug 10, 2002"
+.SH NAME
+pam_passwd_auth \- authentication module for password
+.SH SYNOPSIS
+.LP
+.nf
+\fBpam_passwd_auth.so.1\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBpam_passwd_auth\fR provides authentication functionality to the password
+service as implemented by \fBpasswd\fR(1). It differs from the standard
+\fBPAM\fR authentication modules in its prompting behavior. It should be the
+first module on the password service authentication stack.
+.sp
+.LP
+The name of the user whose password attributes are to be updated must be
+present in the \fBPAM_USER\fR item. This can be accomplished due to a previous
+call to \fBpam_start\fR(3PAM), or explicitly set by \fBpam_set_item\fR(3PAM).
+Based on the current user-id and the repository that is to by updated, the
+module determines whether a password is necessary for a successful update of
+the password repository, and if so, which password is required.
+.sp
+.LP
+The following options can be passed to the module:
+.sp
+.ne 2
+.na
+\fB\fBdebug\fR\fR
+.ad
+.RS 17n
+\fBsyslog\fR(3C) debugging information at the \fBLOG_DEBUG\fR level
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnowarn\fR\fR
+.ad
+.RS 17n
+Turn off warning messages
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBserver_policy\fR\fR
+.ad
+.RS 17n
+If the account authority for the user, as specified by \fBPAM_USER\fR, is a
+server, do not apply the Unix policy from the passwd entry in the name service
+switch.
+.RE
+
+.SH ERRORS
+.sp
+.LP
+The following error codes are returned:
+.sp
+.ne 2
+.na
+\fB\fBPAM_BUF_ERR\fR\fR
+.ad
+.RS 18n
+Memory buffer error
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_IGNORE\fR\fR
+.ad
+.RS 18n
+Ignore module, not participating in result
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_SUCCESS\fR\fR
+.ad
+.RS 18n
+Successfully obtains authentication token
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_SYSTEM_ERR\fR\fR
+.ad
+.RS 18n
+System error
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+_
+MT Level MT-Safe with exceptions
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR passwd (1),
+.BR syslog (3C),
+.BR libpam (3LIB),
+.BR pam (3PAM),
+.BR pam_authenticate (3PAM),
+.BR pam_set_item (3PAM),
+.BR pam_start (3PAM),
+.BR pam.conf (5),
+.BR attributes (7),
+.BR pam_authtok_check (7),
+.BR pam_authtok_get (7),
+.BR pam_authtok_store (7),
+.BR pam_dhkeys (7),
+.BR pam_unix_account (7),
+.BR pam_unix_auth (7),
+.BR pam_unix_session (7)
+.SH NOTES
+.sp
+.LP
+The interfaces in \fBlibpam\fR(3LIB) are MT-Safe only if each thread within the
+multi-threaded application uses its own PAM handle.
+.sp
+.LP
+This module relies on the value of the current real \fBUID\fR, this module is
+only safe for MT-applications that don't change \fBUID\fRs during the call to
+\fBpam_authenticate\fR(3PAM).
+.sp
+.LP
+The \fBpam_unix\fR(7) module is no longer supported. Similar functionality is
+provided by \fBpam_authtok_check\fR(7), \fBpam_authtok_get\fR(7),
+\fBpam_authtok_store\fR(7), \fBpam_dhkeys\fR(7), \fBpam_passwd_auth\fR(7),
+\fBpam_unix_account\fR(7), \fBpam_unix_auth\fR(7), and
+\fBpam_unix_session\fR(7).
diff --git a/usr/src/man/man7/pam_rhosts_auth.7 b/usr/src/man/man7/pam_rhosts_auth.7
new file mode 100644
index 0000000000..68ea961cb6
--- /dev/null
+++ b/usr/src/man/man7/pam_rhosts_auth.7
@@ -0,0 +1,72 @@
+'\" te
+.\" Copyright (c) 1995, Sun Microsystems, Inc.
+.\" All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PAM_RHOSTS_AUTH 7 "Oct 28, 1996"
+.SH NAME
+pam_rhosts_auth \- authentication management PAM module using ruserok()
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/security/pam_rhosts_auth.so.1\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The rhosts \fBPAM\fR module, \fB/usr/lib/security/pam_rhosts_auth.so.1\fR,
+authenticates a user via the \fBrlogin\fR authentication protocol. Only
+\fBpam_sm_authenticate()\fR is implemented within this module.
+\fBpam_sm_authenticate()\fR uses the \fBruserok\fR(3SOCKET) library function to
+authenticate the \fBrlogin\fR or \fBrsh\fR user. \fBpam_sm_setcred()\fR is a
+null function.
+.sp
+.LP
+\fB/usr/lib/security/pam_rhosts_auth.so.1\fR is designed to be stacked on top
+of the \fB/usr/lib/security/pam_unix.so.1\fR module for both the \fBrlogin\fR
+and \fBrsh\fR services. This module is normally configured as \fIsufficient\fR
+so that subsequent authentication is performed only on failure of
+\fBpam_sm_authenticate()\fR. The following option may be passed in to this
+service module:
+.sp
+.ne 2
+.na
+\fB\fBdebug\fR \fR
+.ad
+.RS 10n
+\fBsyslog\fR(3C) debugging information at \fBLOG_DEBUG\fR level.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+MT Level MT-Safe with exceptions
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR syslog (3C),
+.BR libpam (3LIB),
+.BR pam (3PAM),
+.BR pam_authenticate (3PAM),
+.BR ruserok (3SOCKET),
+.BR pam.conf (5),
+.BR attributes (7)
+.SH NOTES
+.sp
+.LP
+The interfaces in \fBlibpam()\fR are MT-Safe only if each thread within the
+multi-threaded application uses its own \fBPAM\fR handle.
diff --git a/usr/src/man/man7/pam_roles.7 b/usr/src/man/man7/pam_roles.7
new file mode 100644
index 0000000000..ad7b0ce111
--- /dev/null
+++ b/usr/src/man/man7/pam_roles.7
@@ -0,0 +1,199 @@
+'\" te
+.\" Copyright (C) 2007, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PAM_ROLES 7 "Mar 6, 2007"
+.SH NAME
+pam_roles \- Solaris Roles account management module
+.SH SYNOPSIS
+.LP
+.nf
+pam_roles.so.1
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBpam_roles\fR module implements \fBpam_sm_acct_mgmt\fR(3PAM). It provides
+functionality to verify that a user is authorized to assume a role. It also
+prevents direct logins to a role. The \fBuser_attr\fR(5) database is used to
+determine which users can assume which roles.
+.sp
+.LP
+The \fBPAM\fR items \fBPAM_USER\fR and \fBPAM_AUSER\fR, and \fBPAM_RHOST\fR are
+used to determine the outcome of this module. \fBPAM_USER\fR represents the new
+identity being verified. \fBPAM_AUSER\fR, if set, represents the user asserting
+a new identity. If \fBPAM_AUSER\fR is not set, the real user \fBID\fR of the
+calling service implies that the user is asserting a new identity. Notice that
+root can never have roles.
+.sp
+.LP
+This module is generally stacked above the \fBpam_unix_account\fR(7) module.
+.sp
+.LP
+The following options are interpreted:
+.sp
+.ne 2
+.na
+\fB\fBallow_remote\fR\fR
+.ad
+.RS 16n
+Allows a remote service to specify the user to enter as a role.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdebug\fR\fR
+.ad
+.RS 16n
+Provides \fBsyslog\fR(3C) debugging information at the \fBLOG_DEBUG\fR level.
+.RE
+
+.SH ERRORS
+.sp
+.LP
+The following values are returned:
+.sp
+.ne 2
+.na
+\fB\fBPAM_IGNORE\fR\fR
+.ad
+.RS 20n
+If the type of the new user identity (\fBPAM_USER\fR) is "\fBnormal\fR". Or, if
+the type of the new user identity is "\fBrole\fR" and the user asserting the
+new identity (\fBPAM_AUSER\fR) has the new identity name in its list of roles.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_USER_UNKNOWN\fR\fR
+.ad
+.RS 20n
+No account is present for user.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_PERM_DENIED\fR\fR
+.ad
+.RS 20n
+If the type of the new user identity (\fBPAM_USER\fR) is "\fBrole\fR" and the
+user asserting the new identity (\fBPAM_AUSER\fR) does not have the new
+identity name in its list of roles.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRUsing the \fBpam_roles.so.1\fR Module
+.sp
+.LP
+The following are sample entries from \fBpam.conf\fR(5). These entries
+demonstrate the use of the \fBpam_roles.so.1\fR module:
+
+.sp
+.in +2
+.nf
+cron account required pam_unix_account.so.1
+#
+other account requisite pam_roles.so.1
+other account required pam_unix_account.so.1
+#
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The \fBcron\fR service does not invoke \fBpam_roles.so.1\fR. Delayed jobs are
+independent of role assumption. All other services verify that roles cannot
+directly login. The "\fBsu\fR" service (covered by the "\fBother\fR" service
+entry) verifies that if the new user is a role, the calling user is authorized
+for that role.
+
+.LP
+\fBExample 2 \fRAllowing Remote Roles
+.sp
+.LP
+Remote roles should only be allowed from remote services that can be trusted to
+provide an accurate \fBPAM_AUSER\fRname. This trust is a function of the
+protocol (such as \fBsshd\fR-hostbased).
+
+.sp
+.LP
+The following is a sample entry for a \fBpam.conf\fR(5) file. It demonstrates
+the use of \fBpam_roles\fR configuration for remote roles for the
+\fBsshd\fR-hostbased service.
+
+.sp
+.in +2
+.nf
+sshd-hostbased account requisite pam_roles.so.1 allow_remote
+sshd-hostbased account required pam_unix_account
+.fi
+.in -2
+.sp
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+_
+MT Level MT-Safe with exceptions
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR roles (1),
+.BR syslog (3C),
+.BR libpam (3LIB),
+.BR pam (3PAM),
+.BR pam_acct_mgmt (3PAM),
+.BR pam_set_item (3PAM),
+.BR pam_setcred (3PAM),
+.BR pam_sm_acct_mgmt (3PAM),
+.BR pam.conf (5),
+.BR user_attr (5),
+.BR attributes (7),
+.BR pam_authtok_check (7),
+.BR pam_authtok_get (7),
+.BR pam_authtok_store (7),
+.BR pam_dhkeys (7),
+.BR pam_passwd_auth (7),
+.BR pam_unix_account (7),
+.BR pam_unix_auth (7),
+.BR pam_unix_session (7),
+.BR sshd (8),
+.BR su (8)
+.SH NOTES
+.sp
+.LP
+The interfaces in \fBlibpam\fR(3LIB) are MT-Safe only if each thread within the
+multi-threaded application uses its own \fBPAM\fR handle.
+.sp
+.LP
+This module should never be stacked alone. It never returns \fBPAM_SUCCESS\fR,
+as it never makes a positive decision.
+.sp
+.LP
+The \fBallow_remote\fR option should only be specified for services that are
+trusted to correctly identify the remote user (that is, \fBsshd\fR-hostbased).
+.sp
+.LP
+\fBPAM_AUSER\fR has replaced \fBPAM_RUSER\fR whose definition is limited to the
+\fBrlogin\fR/\fBrsh\fR untrusted remote user name. See
+\fBpam_set_item\fR(3PAM).
diff --git a/usr/src/man/man7/pam_sample.7 b/usr/src/man/man7/pam_sample.7
new file mode 100644
index 0000000000..b6f3b9f9ed
--- /dev/null
+++ b/usr/src/man/man7/pam_sample.7
@@ -0,0 +1,207 @@
+'\" te
+.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PAM_SAMPLE 7 "Apr 4, 2007"
+.SH NAME
+pam_sample \- a sample PAM module
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/security/pam_sample.so.1\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The SAMPLE service module for \fBPAM\fR is divided into four components:
+authentication, account management, password management, and session
+management. The sample module is a shared object that is dynamically loaded to
+provide the necessary functionality.
+.SH SAMPLE AUTHENTICATION COMPONENT
+.sp
+.LP
+The SAMPLE authentication module provides functions to test the \fBPAM\fR
+framework functionality using the \fBpam_sm_authenticate\fR(3PAM) call. The
+SAMPLE module implementation of the \fBpam_sm_authenticate\fR(3PAM) function
+compares the user entered password with the password set in the
+\fBpam.conf\fR(5) file, or the string "test" if a default test password has not
+been set. The following options can be passed in to the SAMPLE Authentication
+module:
+.sp
+.ne 2
+.na
+\fB\fBdebug\fR \fR
+.ad
+.RS 20n
+Syslog debugging information at the \fBLOG_DEBUG\fR level.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpass=newone\fR \fR
+.ad
+.RS 20n
+Sets the password to be "newone".
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfirst_pass_good\fR \fR
+.ad
+.RS 20n
+The first password is always good when used with the use_first_pass or
+try_first_pass option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfirst_pass_bad\fR \fR
+.ad
+.RS 20n
+The first password is always bad when used with the use_first_pass or
+try_first_pass option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBalways_fail\fR \fR
+.ad
+.RS 20n
+Always returns \fBPAM_AUTH_ERR.\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBalways_succeed\fR \fR
+.ad
+.RS 20n
+Always returns \fBPAM_SUCCESS.\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBalways_ignore\fR \fR
+.ad
+.RS 20n
+Always returns \fBPAM_IGNORE.\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBuse_first_pass\fR \fR
+.ad
+.RS 20n
+Use the user's initial password (entered when the user is authenticated to the
+first authentication module in the stack) to authenticate with the SAMPLE
+module. If the passwords do not match, or if this is the first authentication
+module in the stack, quit and do not prompt the user for a password. It is
+recommended that this option only be used if the SAMPLE authentication module
+is designated as \fIoptional\fR in the \fBpam.conf\fR configuration file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBtry_first_pass\fR \fR
+.ad
+.RS 20n
+Use the user's initial password (entered when the user is authenticated to the
+first authentication module in the stack) to authenticate with the SAMPLE
+module. If the passwords do not match, or if this is the first authentication
+module in the stack, prompt the user for a password.
+.sp
+The SAMPLE module \fBpam_sm_setcred\fR(3PAM) function always returns
+\fBPAM_SUCCESS.\fR
+.RE
+
+.SH SAMPLE ACCOUNT MANAGEMENT COMPONENT
+.sp
+.LP
+The SAMPLE Account Management Component implements a simple access control
+scheme that limits machine access to a list of authorized users. The list of
+authorized users is supplied as option arguments to the entry for the SAMPLE
+account management \fBPAM\fR module in the \fBpam.conf\fR file. Note that the
+module always permits access to the root super user.
+.sp
+.LP
+The option field syntax to limit access is shown below: allow=
+\fIname[,name]\fR allow= \fIname\fR \fI[allow=name]\fR
+.sp
+.LP
+The example \fBpam.conf\fR show below permits only larry to \fBlogin\fR
+directly. \fBrlogin\fR is allowed only for don and larry. Once a user is logged
+in, the user can use \fBsu\fR if the user are sam or eric.
+.sp
+
+.sp
+.TS
+l l l l l
+l l l l l .
+login account require pam_sample.so.1 allow=larry
+dtlogin account require pam_sample.so.1 allow=larry
+rlogin account require pam_sample.so.1 allow=don allow=larry
+su account require pam_sample.so.1 allow=sam,eric
+.TE
+
+.sp
+.LP
+The debug and nowarn options are also supported.
+.SH SAMPLE PASSWORD MANAGEMENT COMPONENT
+.sp
+.LP
+The SAMPLE Password Management Component function (
+\fBpam_sm_chauthtok\fR(3PAM)), always returns \fBPAM_SUCCESS.\fR
+.SH SAMPLE SESSION MANAGEMENT COMPONENT
+.sp
+.LP
+The SAMPLE Session Management Component functions (
+\fBpam_sm_open_session\fR(3PAM), \fBpam_sm_close_session\fR(3PAM)) always
+return \fBPAM_SUCCESS.\fR
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for description of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+MT Level MT-Safe with exceptions
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR libpam (3LIB),
+.BR pam (3PAM),
+.BR pam_sm_authenticate (3PAM),
+.BR pam_sm_chauthtok (3PAM),
+.BR pam_sm_close_session (3PAM),
+.BR pam_sm_open_session (3PAM),
+.BR pam_sm_setcred (3PAM),
+.BR pam.conf (5),
+.BR attributes (7)
+.SH WARNINGS
+.sp
+.LP
+This module should never be used outside of a closed debug environment. The
+examples of the \fBuse_first_pass\fR and \fBtry_first_pass\fR options are
+obsolete for all other Solaris delivered PAM service modules
+.SH NOTES
+.sp
+.LP
+The interfaces in \fBlibpam()\fR are MT-Safe only if each thread within the
+multi-threaded application uses its own \fBPAM\fR handle.
diff --git a/usr/src/man/man7/pam_smb_passwd.7 b/usr/src/man/man7/pam_smb_passwd.7
new file mode 100644
index 0000000000..b55b0d7229
--- /dev/null
+++ b/usr/src/man/man7/pam_smb_passwd.7
@@ -0,0 +1,190 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PAM_SMB_PASSWD 7 "Apr 29, 2008"
+.SH NAME
+pam_smb_passwd \- SMB password management module
+.SH SYNOPSIS
+.LP
+.nf
+\fBpam_smb_passwd.so.1\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBpam_smb_passwd\fR module enhances the PAM password management stack.
+This functionality supports the changing or adding of SMB passwords for local
+Solaris users. The Solaris CIFS server uses SMB passwords to authenticate
+connected Solaris users. This module includes the \fBpam_sm_chauthtok\fR(3PAM)
+function.
+.sp
+.LP
+The \fBpam_sm_chauthtok()\fR function accepts the following flags:
+.sp
+.ne 2
+.na
+\fB\fBPAM_PRELIM_CHECK\fR\fR
+.ad
+.sp .6
+.RS 4n
+Always returns \fBPAM_IGNORE\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_SILENT\fR\fR
+.ad
+.sp .6
+.RS 4n
+Suppresses messages.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_UPDATE_AUTHTOK\fR\fR
+.ad
+.sp .6
+.RS 4n
+Updates or creates a new \fBCIFS\fR local \fBLM\fR/\fBNTLM\fR hash for the user
+that is specified in \fBPAM_USER\fR by using the authentication information
+found in \fBPAM_AUTHTOK\fR. The \fBLM\fR hash is only created if the
+\fBsmbd/lmauth_level\fR property value of the \fBsmb/server\fR service is set
+to 3 or less. \fBPAM_IGNORE\fR is returned if the user is not in the local
+\fB/etc/passwd\fR repository.
+.RE
+
+.sp
+.LP
+The following options can be passed to the \fBpam_smb_passwd\fR module:
+.sp
+.ne 2
+.na
+\fB\fBdebug\fR\fR
+.ad
+.sp .6
+.RS 4n
+Produces \fBsyslog\fR(3C) debugging information at the \fBLOG_AUTH\fR or
+\fBLOG_DEBUG\fR level.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnowarn\fR\fR
+.ad
+.sp .6
+.RS 4n
+Suppresses warning messages.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/var/smb/smbpasswd\fR\fR
+.ad
+.sp .6
+.RS 4n
+Stores SMB passwords for Solaris users.
+.RE
+
+.SH ERRORS
+.sp
+.LP
+Upon successful completion of \fBpam_sm_chauthtok()\fR, \fBPAM_SUCCESS\fR is
+returned. The following error codes are returned upon error:
+.sp
+.ne 2
+.na
+\fB\fBPAM_AUTHTOK_ERR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Authentication token manipulation error
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_AUTHTOK_LOCK_BUSY\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBSMB\fR password file is locked
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_PERM_DENIED\fR\fR
+.ad
+.sp .6
+.RS 4n
+Permissions are insufficient for accessing the \fBSMB\fR password file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_SYSTEM_ERR\fR\fR
+.ad
+.sp .6
+.RS 4n
+System error
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_USER_UNKNOWN\fR\fR
+.ad
+.sp .6
+.RS 4n
+User is unknown
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See the \fBattributes\fR(7) man page for descriptions of the following
+attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Committed
+_
+MT Level MT-Safe with exceptions
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR syslog (3C),
+.BR libpam (3LIB),
+.BR pam (3PAM),
+.BR pam_chauthtok (3PAM),
+.BR pam_sm (3PAM),
+.BR pam_sm_chauthtok (3PAM),
+.BR pam.conf (5),
+.BR attributes (7),
+.BR smbd (8)
+.SH NOTES
+.sp
+.LP
+The interfaces in \fBlibpam\fR(3LIB) are MT-Safe \fBonly\fR if each thread
+within the multi-threaded application uses its own PAM handle.
+.sp
+.LP
+The \fBpam_smb_passwd.so.1\fR module should be stacked following all password
+qualification modules in the \fBPAM\fR password stack.
diff --git a/usr/src/man/man7/pam_smbfs_login.7 b/usr/src/man/man7/pam_smbfs_login.7
new file mode 100644
index 0000000000..0ad333585b
--- /dev/null
+++ b/usr/src/man/man7/pam_smbfs_login.7
@@ -0,0 +1,232 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PAM_SMBFS_LOGIN 7 "Sep 25, 2008"
+.SH NAME
+pam_smbfs_login \- PAM user credential authentication module for SMB/CIFS
+client login
+.SH SYNOPSIS
+.LP
+.nf
+pam_smb_cred.so.1
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBpam_smbfs_login\fR module implements \fBpam_sm_setcred\fR(3PAM) to
+provide functions that act equivalently to the \fBsmbutil\fR(1) login command.
+.sp
+.LP
+This optional functionality is meant to be used only in environments that do
+not run Active Directory or Kerberos, but which synchronize passwords between
+Solaris clients and their CIFS/SMB servers.
+.sp
+.LP
+This module permits the login password to be stored as if the \fBsmbutil\fR(1)
+login command was used to store a password for PAM_USER in the user or system
+default domain. The choice of default domain is the first of the following:
+.br
+.in +2
+-Domain entry specified in the default section of the \fB$HOME/.nsmbrc\fR
+file, if readable.
+.in -2
+.br
+.in +2
+-Domain entry specified in the default section shown by the sharectl get smbfs
+command.
+.in -2
+.br
+.in +2
+-String WORKGROUP.
+.in -2
+.sp
+.LP
+Because \fBpam_smbfs_login\fR runs as root during the login process, a
+\fB$HOME/.nsmbrc\fR file accessed through NFS may only be readable if the file
+permits reads by others. This conflicts with the requirement that passwords
+stored in \fB$HOME/.nsmbrc\fR are ignored when permissions are open.
+.sp
+.LP
+To use this functionality, add the following line to the \fB/etc/pam.conf\fR
+file:
+.sp
+.in +2
+.nf
+login auth optional pam_smbfs_login.so.1
+.fi
+.in -2
+
+.sp
+.LP
+Authentication service modules must implement both
+\fBpam_sm_authenticate\fR(3PAM) and \fBpam_sm_setcred\fR(3PAM). In this module,
+\fBpam_sm_authenticate\fR(3PAM) always returns \fBPAM_IGNORE\fR.
+.sp
+.LP
+The \fBpam_sm_setcred\fR(3PAM) function accepts the following flags:
+.sp
+.ne 2
+.na
+\fB\fBPAM_REFRESH_CRED\fR\fR
+.ad
+.sp .6
+.RS 4n
+Returns PAM_IGNORE.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_SILENT\fR\fR
+.ad
+.sp .6
+.RS 4n
+Suppresses messages.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_ESTABLISH_CRED\fR\fR
+.ad
+.br
+.na
+\fB\fBPAM_REINITIALIZE_CRED\fR\fR
+.ad
+.sp .6
+.RS 4n
+Stores the authentication token for PAM_USER in the same manner as the
+\fBsmbutil\fR(1) login command.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_DELETE_CRED\fR\fR
+.ad
+.sp .6
+.RS 4n
+Deletes the stored password for PAM_USER in the same manner as the
+\fBsmbutil\fR(1) logout command.
+.RE
+
+.sp
+.LP
+The following options can be passed to the \fBpam_smbfs_login\fR module:
+.sp
+.ne 2
+.na
+\fB\fBdebug\fR\fR
+.ad
+.sp .6
+.RS 4n
+Produces \fBsyslog\fR(3C) debugging information at the LOG_AUTH or LOG_DEBUG
+level.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnowarn\fR\fR
+.ad
+.sp .6
+.RS 4n
+Suppresses warning messages.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB$HOME/.nsmbrc\fR\fR
+.ad
+.RS 28n
+Find default domain, if present.
+.RE
+
+.SH ERRORS
+.sp
+.LP
+Upon successful completion of \fBpam_sm_setcred\fR(3PAM), \fBPAM_SUCCESS\fR is
+returned. The following error codes are returned upon error:
+.sp
+.ne 2
+.na
+\fB\fBPAM_USER_UNKNOWN\fR\fR
+.ad
+.sp .6
+.RS 4n
+User is unknown.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_AUTHTOK_ERR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Password is bad.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_AUTH_ERR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Domain is bad.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_SYSTEM_ERR\fR\fR
+.ad
+.sp .6
+.RS 4n
+System error.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attribute:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Committed
+_
+MT Level MT-Safe with exceptions
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR smbutil (1),
+.BR syslog (3C),
+.BR libpam (3LIB),
+.BR pam (3PAM),
+.BR pam_setcred (3PAM),
+.BR pam_sm (3PAM),
+.BR pam_sm_authenticate (3PAM),
+.BR pam_sm_chauthtok (3PAM),
+.BR pam_sm_setcred (3PAM),
+.BR smbfs (4FS),
+.BR pam.conf (5),
+.BR attributes (7)
+.SH NOTES
+.sp
+.LP
+The interfaces in \fBlibpam\fR(3LIB) are MT-Safe only if each thread within
+the multi-threaded application uses its own PAM handle.
diff --git a/usr/src/man/man7/pam_timestamp.7 b/usr/src/man/man7/pam_timestamp.7
new file mode 100644
index 0000000000..695106d84d
--- /dev/null
+++ b/usr/src/man/man7/pam_timestamp.7
@@ -0,0 +1,113 @@
+.\"
+.\" This file and its contents are supplied under the terms of the
+.\" Common Development and Distribution License ("CDDL"), version 1.0.
+.\" You may only use this file in accordance with the terms of version
+.\" 1.0 of the CDDL.
+.\"
+.\" A full copy of the text of the CDDL should have accompanied this
+.\" source. A copy of the CDDL is also available via the Internet at
+.\" http://www.illumos.org/license/CDDL.
+.\"
+.\" Copyright 2014 Nexenta Systems, Inc.
+.\"
+.Dd Nov 26, 2017
+.Dt PAM_TIMESTAMP 7
+.Os
+.Sh NAME
+.Nm pam_timestamp
+.Nd PAM authentication module using cached successful authentication attempts
+.Sh SYNOPSIS
+.Nm pam_timestamp.so.1
+.Op Ar debug
+.Op Ar timeout=min
+.Sh DESCRIPTION
+The
+.Nm
+module caches successful tty-based authentication attempts by
+creating user's directories and per tty timestamp files in the
+common timestamp directory
+.Pa /var/run/tty_timestamps .
+Next authentication, if the timestamp file exist and not expired,
+the user will not be asked for a password, otherwise timestamp
+file will be deleted and user will be prompted to enter a password.
+.Lp
+The PAM items
+.Dv PAM_USER ,
+.Dv PAM_AUSER
+and
+.Dv PAM_TTY
+are used by this module.
+.Sy pam_timestamp
+is normally configured as
+.Sy sufficient
+and must be used in conjunction with the modules that support
+the UNIX authentication, which are
+.Xr pam_authtok_get 7 ,
+.Xr pam_unix_cred 7
+and
+.Xr pam_unix_auth 7 .
+Proper authentication operation requires
+.Xr pam_unix_cred 7
+be stacked above
+.Nm .
+.Sh OPTIONS
+.Bl -tag -width Ds
+.It Dv debug
+Provides
+.Xr syslog 3C
+debugging information at the
+.Sy LOG_AUTH | LOG_DEBUG
+level.
+.It Dv timeout
+Specifies the period (in minutes) for which the timestamp file is valid.
+The default value is 5 minutes.
+.El
+.Sh FILES
+.Bl -tag -width indent
+.It Pa /var/run/tty_timestamps/...
+stores timestamp directories and files
+.El
+.Sh EXIT STATUS
+.Bl -tag -width Ds
+.It Dv PAM_SUCCESS
+Timestamp file is not expired.
+.It Dv PAM_IGNORE
+The
+.Nm
+module was not able to retrieve required credentials
+or timestamp file is expired or corrupt.
+.El
+.Sh EXAMPLES
+.Ss Example 1 Allowing su authentication
+.
+The following example is a
+.Xr pam.conf 5
+fragment that illustrates default settings for allowing
+.Xr su 8
+authentication:
+.Bd -literal -offset indent
+su auth required pam_unix_cred.so.1
+su auth sufficient pam_timestamp.so.1
+su auth requisite pam_authtok_get.so.1
+su auth required pam_unix_auth.so.1
+.Ed
+.Ss Example 2 Changing default timeout
+.
+The default timeout set to 10 minutes:
+.Bd -literal -offset indent
+su auth required pam_unix_cred.so.1
+su auth sufficient pam_timestamp.so.1 timeout=10
+su auth requisite pam_authtok_get.so.1
+su auth required pam_unix_auth.so.1
+.Ed
+.Sh INTERFACE STABILITY
+.Sy Uncommitted .
+.Sh MT LEVEL
+.Sy MT-Safe .
+.Sh SEE ALSO
+.Xr syslog 3C ,
+.Xr pam 3PAM ,
+.Xr pam_sm_authenticate 3PAM ,
+.Xr pam_sm_setcred 3PAM ,
+.Xr pam.conf 5 ,
+.Xr su 8
diff --git a/usr/src/man/man7/pam_tsol_account.7 b/usr/src/man/man7/pam_tsol_account.7
new file mode 100644
index 0000000000..3b12a24648
--- /dev/null
+++ b/usr/src/man/man7/pam_tsol_account.7
@@ -0,0 +1,144 @@
+'\" te
+.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PAM_TSOL_ACCOUNT 7 "Jul 20, 2007"
+.SH NAME
+pam_tsol_account \- PAM account management module for Trusted Extensions
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/security/pam_tsol_account.so.1\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The Solaris Trusted Extensions service module for \fBPAM\fR,
+\fB/usr/lib/security/pam_tsol_account.so.1\fR, checks account limitations that
+are related to labels. The \fBpam_tsol_account.so.1\fR module is a shared
+object that can be dynamically loaded to provide the necessary functionality
+upon demand. Its path is specified in the \fBPAM\fR configuration file.
+.sp
+.LP
+\fBpam_tsol_account.so.1\fR contains a function to perform account management,
+\fBpam_sm_acct_mgmt()\fR. The function checks for the allowed label range for
+the user. The allowable label range is set by the defaults in the
+\fBlabel_encodings\fR(5) file. These defaults can be overridden by entries in
+the \fBuser_attr\fR(5) database.
+.sp
+.LP
+By default, this module requires that remote hosts connecting to the global
+zone must have a CIPSO host type. To disable this policy, add the
+\fBallow_unlabeled\fR keyword as an option to the entry in \fBpam.conf\fR(5),
+as in:
+.sp
+.in +2
+.nf
+other account required pam_tsol_account allow_unlabeled
+.fi
+.in -2
+.sp
+
+.SH OPTIONS
+.sp
+.LP
+The following options can be passed to the module:
+.sp
+.ne 2
+.na
+\fB\fBallow_unlabeled\fR\fR
+.ad
+.RS 19n
+Allows remote connections from hosts with unlabeled template types.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdebug\fR\fR
+.ad
+.RS 19n
+Provides debugging information at the \fBLOG_DEBUG\fR level. See
+\fBsyslog\fR(3C).
+.RE
+
+.SH RETURN VALUES
+.sp
+.LP
+The following values are returned:
+.sp
+.ne 2
+.na
+\fB\fBPAM_SUCCESS\fR\fR
+.ad
+.RS 19n
+The account is valid for use at this time and label.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_PERM_DENIED\fR\fR
+.ad
+.RS 19n
+The current process label is outside the user's label range, or the label
+information for the process is unavailable, or the remote host type is not
+valid.
+.RE
+
+.sp
+.ne 2
+.na
+\fBOther values\fR
+.ad
+.RS 19n
+Returns an error code that is consistent with typical PAM operations. For
+information on error-related return values, see the \fBpam\fR(3PAM) man page.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for description of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Committed
+_
+MT Level MT-Safe with exceptions
+.TE
+
+.sp
+.LP
+The interfaces in \fBlibpam\fR(3LIB) are MT-Safe only if each thread within the
+multi-threaded application uses its own PAM handle.
+.SH SEE ALSO
+.sp
+.LP
+.BR keylogin (1),
+.BR syslog (3C),
+.BR libpam (3LIB),
+.BR pam (3PAM),
+.BR pam_sm_acct_mgmt (3PAM),
+.BR pam_start (3PAM),
+.BR label_encodings (5),
+.BR pam.conf (5),
+.BR user_attr (5),
+.BR attributes (7)
+.sp
+.LP
+Chapter 17, \fIUsing PAM,\fR in \fISystem Administration Guide: Security
+Services\fR
+.SH NOTES
+.sp
+.LP
+The functionality described on this manual page is available only if the system
+is configured with Trusted Extensions.
diff --git a/usr/src/man/man7/pam_unix_account.7 b/usr/src/man/man7/pam_unix_account.7
new file mode 100644
index 0000000000..516f486550
--- /dev/null
+++ b/usr/src/man/man7/pam_unix_account.7
@@ -0,0 +1,177 @@
+'\" te
+.\" Copyright (C) 2003, Sun Microsystems, Inc.
+.\" All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PAM_UNIX_ACCOUNT 7 "Feb 14, 2005"
+.SH NAME
+pam_unix_account \- PAM account management module for UNIX
+.SH SYNOPSIS
+.LP
+.nf
+\fBpam_unix_account.so.1\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBpam_unix_account\fR module implements \fBpam_sm_acct_mgmt()\fR, which
+provides functionality to the \fBPAM\fR account management stack. The module
+provides functions to validate that the user's account is not locked or expired
+and that the user's password does not need to be changed. The module retrieves
+account information from the configured databases in \fBnsswitch.conf\fR(5).
+.sp
+.LP
+The following options can be passed to the module:
+.sp
+.ne 2
+.na
+\fB\fBdebug\fR\fR
+.ad
+.RS 17n
+\fBsyslog\fR(3C) debugging information at the \fBLOG_DEBUG\fR level
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnowarn\fR\fR
+.ad
+.RS 17n
+Turn off warning messages
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBserver_policy\fR\fR
+.ad
+.RS 17n
+If the account authority for the user, as specified by \fBPAM_USER\fR, is a
+server, do not apply the Unix policy from the passwd entry in the name service
+switch.
+.RE
+
+.SH ERRORS
+.sp
+.LP
+The following values are returned:
+.sp
+.ne 2
+.na
+\fB\fBPAM_UNIX_ACCOUNT\fR\fR
+.ad
+.RS 24n
+User account has expired
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_AUTHTOK_EXPIRED\fR\fR
+.ad
+.RS 24n
+Password expired and no longer usable
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_BUF_ERR\fR\fR
+.ad
+.RS 24n
+Memory buffer error
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_IGNORE\fR\fR
+.ad
+.RS 24n
+Ignore module, not participating in result
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_NEW_AUTHTOK_REQD\fR\fR
+.ad
+.RS 24n
+Obtain new authentication token from the user
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_PERM_DENIED\fR\fR
+.ad
+.RS 24n
+The account is locked or has been inactive for too long
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_SERVICE_ERR\fR\fR
+.ad
+.RS 24n
+Error in underlying service module
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_SUCCESS\fR\fR
+.ad
+.RS 24n
+The account is valid for use at this time
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_USER_UNKNOWN\fR\fR
+.ad
+.RS 24n
+No account is present for the user
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+_
+MT Level MT-Safe with exceptions
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR syslog (3C),
+.BR libpam (3LIB),
+.BR pam (3PAM),
+.BR pam_authenticate (3PAM),
+.BR nsswitch.conf (5),
+.BR pam.conf (5),
+.BR attributes (7)
+.SH NOTES
+.sp
+.LP
+The interfaces in \fBlibpam\fR(3LIB) are MT-Safe only if each thread within the
+multi-threaded application uses its own PAM handle.
+.sp
+.LP
+Attempts to validate locked accounts are logged via \fBsyslog\fR(3C) to the
+\fBLOG_AUTH\fR facility with a \fBLOG_NOTICE\fR severity.
diff --git a/usr/src/man/man7/pam_unix_auth.7 b/usr/src/man/man7/pam_unix_auth.7
new file mode 100644
index 0000000000..9b3f09430f
--- /dev/null
+++ b/usr/src/man/man7/pam_unix_auth.7
@@ -0,0 +1,244 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PAM_UNIX_AUTH 7 "Apr 23, 2008"
+.SH NAME
+pam_unix_auth \- PAM authentication module for UNIX
+.SH SYNOPSIS
+.LP
+.nf
+\fBpam_unix_auth.so.1\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBpam_unix_auth\fR module implements \fBpam_sm_authenticate()\fR, which
+provides functionality to the PAM authentication stack. It provides functions
+that use \fBcrypt\fR(3C) to verify that the password contained in the \fBPAM\fR
+item \fBPAM_AUTHTOK\fR is the correct password for the user specified in the
+item \fBPAM_USER\fR. If \fBPAM_REPOSITORY\fR is specified, then user's password
+is fetched from that repository. Otherwise, the default \fBnsswitch.conf\fR(5)
+repository is searched for that user.
+.sp
+.LP
+For accounts in the name services which support automatic account locking, the
+account may be configured to be automatically locked (see \fBuser_attr\fR(5)
+and \fBpolicy.conf\fR(5)) after multiple failed login attempts. For accounts
+that are configured for automatic locking, if authentication failure is to be
+returned, the failed login counter is incremented upon each failure. If the
+number of successive failures equals or exceeds \fBRETRIES\fR as defined in
+\fBlogin\fR(1), the account is locked and \fBPAM_MAXTRIES\fR is returned.
+Currently, only the "files" repository (see \fBpasswd\fR(5) and
+\fBshadow\fR(5)) supports automatic account locking. A successful
+authentication by this module clears the failed login counter and reports the
+number of failed attempts since the last successful authentication.
+.sp
+.LP
+Authentication service modules must implement both \fBpam_sm_authenticate()\fR
+and \fBpam_sm_setcred()\fR. To allow the authentication portion of UNIX
+authentication to be replaced, \fBpam_sm_setcred()\fR in this module always
+returns \fBPAM_IGNORE\fR. This module should be stacked with
+\fBpam_unix_cred\fR(7) to ensure a successful return from
+\fBpam_setcred\fR(3PAM).
+.sp
+.LP
+The following options can be passed to the module:
+.sp
+.ne 2
+.na
+\fB\fBnowarn\fR\fR
+.ad
+.sp .6
+.RS 4n
+Turn off warning messages.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBserver_policy\fR\fR
+.ad
+.sp .6
+.RS 4n
+If the account authority for the user, as specified by \fBPAM_USER\fR, is a
+server, do not apply the UNIX policy from the \fBpasswd\fR entry in the name
+service switch.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnolock\fR\fR
+.ad
+.sp .6
+.RS 4n
+Regardless of the automatic account locking setting for the account, do not
+lock the account, increment or clear the failed login count. The \fBnolock\fR
+option allows for exempting account locking on a per service basis.
+.RE
+
+.SH ERRORS
+.sp
+.LP
+The following error codes are returned from \fBpam_sm_authenticate()\fR:
+.sp
+.ne 2
+.na
+\fB\fBPAM_AUTH_ERR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Authentication failure.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_BUF_ERR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Memory buffer error.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_IGNORE\fR\fR
+.ad
+.sp .6
+.RS 4n
+Ignores module, not participating in result.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_MAXTRIES\fR\fR
+.ad
+.sp .6
+.RS 4n
+Maximum number of retries exceeded.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_PERM_DENIED\fR\fR
+.ad
+.sp .6
+.RS 4n
+Permission denied.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_SUCCESS\fR\fR
+.ad
+.sp .6
+.RS 4n
+Successfully obtains authentication token.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_SYSTEM_ERR\fR\fR
+.ad
+.sp .6
+.RS 4n
+System error.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_USER_UNKNOWN\fR\fR
+.ad
+.sp .6
+.RS 4n
+No account present for user.
+.RE
+
+.sp
+.LP
+The following error codes are returned from \fBpam_sm_setcred()\fR:
+.sp
+.ne 2
+.na
+\fB\fBPAM_IGNORE\fR\fR
+.ad
+.sp .6
+.RS 4n
+Ignores this module regardless of the control flag.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Committed
+_
+MT Level MT-Safe with exceptions
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR login (1),
+.BR passwd (1),
+.BR crypt (3C),
+.BR syslog (3C),
+.BR libpam (3LIB),
+.BR pam (3PAM),
+.BR pam_authenticate (3PAM),
+.BR pam_setcred (3PAM),
+.BR nsswitch.conf (5),
+.BR pam.conf (5),
+.BR passwd (5),
+.BR policy.conf (5),
+.BR shadow (5),
+.BR user_attr (5),
+.BR attributes (7),
+.BR pam_authtok_check (7),
+.BR pam_authtok_get (7),
+.BR pam_authtok_store (7),
+.BR pam_dhkeys (7),
+.BR pam_passwd_auth (7),
+.BR pam_unix_account (7),
+.BR pam_unix_session (7),
+.BR roleadd (8),
+.BR rolemod (8),
+.BR useradd (8),
+.BR usermod (8)
+.SH NOTES
+.sp
+.LP
+The interfaces in \fBlibpam\fR(3LIB) are MT-Safe only if each thread within the
+multi-threaded application uses its own \fBPAM\fR handle.
+.sp
+.LP
+The \fBpam_unix\fR(7) module is no longer supported. Similar functionality is
+provided by \fBpam_authtok_check\fR(7), \fBpam_authtok_get\fR(7),
+\fBpam_authtok_store\fR(7), \fBpam_dhkeys\fR(7),
+\fBpam_passwd_auth\fR(7), \fBpam_setcred\fR(3PAM), \fBpam_unix_account\fR(7),
+\fBpam_unix_cred\fR(7), \fBpam_unix_session\fR(7).
+.sp
+.LP
+If the \fBPAM_REPOSITORY\fR \fIitem_type\fR is set and a service module does
+not recognize the type, the service module does not process any information,
+and returns \fBPAM_IGNORE\fR. If the \fBPAM_REPOSITORY\fR \fIitem_type\fR is
+not set, a service module performs its default action.
diff --git a/usr/src/man/man7/pam_unix_cred.7 b/usr/src/man/man7/pam_unix_cred.7
new file mode 100644
index 0000000000..add7af7527
--- /dev/null
+++ b/usr/src/man/man7/pam_unix_cred.7
@@ -0,0 +1,226 @@
+'\" te
+.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PAM_UNIX_CRED 7 "Mar 9, 2005"
+.SH NAME
+pam_unix_cred \- PAM user credential authentication module for UNIX
+.SH SYNOPSIS
+.LP
+.nf
+\fBpam_unix_cred.so.1\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBpam_unix_cred\fR module implements \fBpam_sm_setcred\fR(3PAM). It
+provides functions that establish user credential information. It is a module
+separate from the \fBpam_unix_auth\fR(7) module to allow replacement of the
+authentication functionality independently from the credential functionality.
+.sp
+.LP
+The \fBpam_unix_cred\fR module must always be stacked along with whatever
+authentication module is used to ensure correct credential setting.
+.sp
+.LP
+Authentication service modules must implement both \fBpam_sm_authenticate()\fR
+and \fBpam_sm_setcred()\fR.
+.sp
+.LP
+\fBpam_sm_authenticate()\fR in this module always returns \fBPAM_IGNORE\fR.
+.sp
+.LP
+\fBpam_sm_setcred()\fR initializes the user's project, privilege sets and
+initializes or updates the user's audit context if it hasn't already been
+initialized. The following flags may be set in the flags field:
+.sp
+.ne 2
+.na
+\fB\fBPAM_ESTABLISH_CRED\fR\fR
+.ad
+.br
+.na
+\fB\fBPAM_REFRESH_CRED\fR\fR
+.ad
+.br
+.na
+\fB\fBPAM_REINITIALIZE_CRED\fR\fR
+.ad
+.sp .6
+.RS 4n
+Initializes the user's project to the project specified in \fBPAM_RESOURCE\fR,
+or if \fBPAM_RESOURCE\fR is not specified, to the user's default project.
+Establishes the user's privilege sets.
+.sp
+If the audit context is not already initialized and auditing is configured,
+these flags cause the context to be initialized to that of the user specified
+in \fBPAM_AUSER\fR (if any) merged with the user specified in \fBPAM_USER\fR
+and host specified in \fBPAM_RHOST\fR. If \fBPAM_RHOST\fR is not specified,
+\fBPAM_TTY\fR specifies the local terminal name. Attributing audit to
+\fBPAM_AUSER\fR and merging \fBPAM_USER\fR is required for correctly
+attributing auditing when the system entry is performed by another user that
+can be identified as trustworthy.
+.sp
+If the audit context is already initialized, the \fBPAM_REINITIALIZE_CRED\fR
+flag merges the current audit context with that of the user specified in
+\fBPAM_USER\fR. \fBPAM_REINITIALIZE_CRED\fR is useful when a user is assuming a
+new identity, as with \fBsu\fR(8).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_DELETE_CRED\fR\fR
+.ad
+.sp .6
+.RS 4n
+This flag has no effect and always returns \fBPAM_SUCCESS\fR.
+.RE
+
+.sp
+.LP
+The following options are interpreted:
+.sp
+.ne 2
+.na
+\fB\fBdebug\fR\fR
+.ad
+.RS 10n
+Provides \fBsyslog\fR(3C) debugging information at the \fBLOG_DEBUG\fR level.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnowarn\fR\fR
+.ad
+.RS 10n
+Disables any warning messages.
+.RE
+
+.SH ERRORS
+.sp
+.LP
+Upon successful completion of \fBpam_sm_setcred()\fR, \fBPAM_SUCCESS\fR is
+returned. The following error codes are returned upon error:
+.sp
+.ne 2
+.na
+\fB\fBPAM_CRED_UNAVAIL\fR\fR
+.ad
+.RS 20n
+Underlying authentication service cannot retrieve user credentials
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_CRED_EXPIRED\fR\fR
+.ad
+.RS 20n
+User credentials have expired
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_USER_UNKNOWN\fR\fR
+.ad
+.RS 20n
+User is unknown to the authentication service
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_CRED_ERR\fR\fR
+.ad
+.RS 20n
+Failure in setting user credentials
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_BUF_ERR\fR\fR
+.ad
+.RS 20n
+Memory buffer error
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_SYSTEM_ERR\fR\fR
+.ad
+.RS 20n
+System error
+.RE
+
+.sp
+.LP
+The following values are returned from \fBpam_sm_authenticate()\fR:
+.sp
+.ne 2
+.na
+\fB\fBPAM_IGNORE\fR\fR
+.ad
+.RS 14n
+Ignores this module regardless of the control flag
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+_
+MT Level MT-Safe with exceptions
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR ssh (1),
+.BR settaskid (2),
+.BR syslog (3C),
+.BR libpam (3LIB),
+.BR pam (3PAM),
+.BR pam_set_item (3PAM),
+.BR pam_sm_authenticate (3PAM),
+.BR getprojent (3PROJECT),
+.BR setproject (3PROJECT),
+.BR nsswitch.conf (5),
+.BR pam.conf (5),
+.BR project (5),
+.BR attributes (7),
+.BR pam_authtok_check (7),
+.BR pam_authtok_get (7),
+.BR pam_authtok_store (7),
+.BR pam_dhkeys (7),
+.BR pam_passwd_auth (7),
+.BR pam_unix_account (7),
+.BR pam_unix_auth (7),
+.BR pam_unix_session (7),
+.BR privileges (7),
+.BR su (8)
+.SH NOTES
+.sp
+.LP
+The interfaces in \fBlibpam\fR(3LIB) are MT-Safe only if each thread within the
+multi-threaded application uses its own \fBPAM\fR handle.
+.sp
+.LP
+If this module is replaced, the audit context and credential may not be
+correctly configured.
diff --git a/usr/src/man/man7/pam_unix_session.7 b/usr/src/man/man7/pam_unix_session.7
new file mode 100644
index 0000000000..1076e93a59
--- /dev/null
+++ b/usr/src/man/man7/pam_unix_session.7
@@ -0,0 +1,122 @@
+'\" te
+.\" Copyright 2016 Toomas Soome <tsoome@me.com>
+.\" Copyright (C) 2002, Sun Microsystems, Inc.
+.\" All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PAM_UNIX_SESSION 7 "Jan 3, 2016"
+.SH NAME
+pam_unix_session \- session management PAM module for UNIX
+.SH SYNOPSIS
+.LP
+.nf
+\fBpam_unix_session.so.1\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBpam_unix_session\fR module implements \fBpam_sm_open_session\fR(3PAM)
+and \fBpam_sm_close_session\fR(3PAM).
+.sp
+.LP
+\fBpam_sm_open_session()\fR updates the \fB/var/adm/lastlog\fR file with the
+information contained in the \fBPAM_USER\fR, \fBPAM_TTY\fR, and
+\fBPAM_RHOSTS\fR items. \fBpam_unix_account\fR(7) uses this account to
+determine the previous time the user logged in.
+.sp
+.LP
+\fBpam_sm_close_session()\fR is a null function.
+.sp
+.LP
+The following options can be passed to the module:
+.sp
+.ne 2
+.na
+\fBdebug\fR
+.ad
+.RS 9n
+\fBsyslog\fR(3C) debugging information at the \fBLOG_DEBUG\fR level
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnowarn\fR\fR
+.ad
+.RS 9n
+Turn off last login PAM_TEXT_INFO message.
+.RE
+
+.SH ERRORS
+.sp
+.LP
+Upon successful completion, \fBPAM_SUCCESS\fR is returned. The following error
+codes are returned upon error:
+.sp
+.ne 2
+.na
+\fB\fBPAM_SESSION_ERR\fR\fR
+.ad
+.RS 20n
+Cannot make or remove the entry for the specified session (PAM_TTY is not
+present).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_USER_UNKNOWN\fR\fR
+.ad
+.RS 20n
+No account is present for \fIuser\fR.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+_
+MT Level MT-Safe with exceptions
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR syslog (3C),
+.BR libpam (3LIB),
+.BR pam (3PAM),
+.BR pam_authenticate (3PAM),
+.BR nsswitch.conf (5),
+.BR pam.conf (5),
+.BR attributes (7),
+.BR pam_authtok_check (7),
+.BR pam_authtok_get (7),
+.BR pam_authtok_store (7),
+.BR pam_dhkeys (7),
+.BR pam_passwd_auth (7),
+.BR pam_unix_account (7),
+.BR pam_unix_auth (7)
+.SH NOTES
+.sp
+.LP
+The interfaces in \fBlibpam\fR(3LIB) are MT-Safe only if each thread within the
+multi-threaded application uses its own PAM handle.
+.sp
+.LP
+The \fBpam_unix\fR(7) module is no longer supported. Similar functionality is
+provided by \fBpam_authtok_check\fR(7), \fBpam_authtok_get\fR(7),
+\fBpam_authtok_store\fR(7), \fBpam_dhkeys\fR(7), \fBpam_passwd_auth\fR(7),
+\fBpam_unix_account\fR(7), \fBpam_unix_auth\fR(7), and
+\fBpam_unix_session\fR(7).
diff --git a/usr/src/man/man7/pkcs11_kernel.7 b/usr/src/man/man7/pkcs11_kernel.7
new file mode 100644
index 0000000000..61d96b679c
--- /dev/null
+++ b/usr/src/man/man7/pkcs11_kernel.7
@@ -0,0 +1,114 @@
+'\" te
+.\" Copyright (c) 2005, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PKCS11_KERNEL 7 "Oct 27, 2005"
+.SH NAME
+pkcs11_kernel \- PKCS#11 interface to Kernel Cryptographic Framework
+.SH SYNOPSIS
+.LP
+.nf
+/usr/lib/security/pkcs11_kernel.so
+/usr/lib/security/64/pkcs11_kernel.so
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBpkcs11_kernel.so\fR object implements the RSA PKCS#11 v2.20
+specification by using a private interface to communicate with the Kernel
+Cryptographic Framework.
+.sp
+.LP
+Each unique hardware provider is represented by a PKCS#11 slot. In a system
+with no hardware Kernel Cryptographic Framework providers, this PKCS#11 library
+presents no slots.
+.sp
+.LP
+The PKCS#11 mechanisms provided by this library is determined by the available
+hardware providers.
+.sp
+.LP
+Application developers should link to \fBlibpkcs11.so\fR rather than link
+directly to \fBpkcs11_kernel.so\fR. See \fBlibpkcs11\fR(3LIB).
+.sp
+.LP
+All of the Standard PKCS#11 functions listed on \fBlibpkcs11\fR(3LIB) are
+implemented except for the following:
+.sp
+.in +2
+.nf
+C_DecryptDigestUpdate
+C_DecryptVerifyUpdate
+C_DigestEncryptUpdate
+C_GetOperationState
+C_InitToken
+C_InitPIN
+C_SetOperationState
+C_SignEncryptUpdate
+C_WaitForSlotEvent
+.fi
+.in -2
+
+.sp
+.LP
+A call to these functions returns \fBCKR_FUNCTION_NOT_SUPPORTED\fR.
+.sp
+.LP
+Buffers cannot be greater than 2 megabytes. For example, \fBC_Encrypt()\fR can
+be called with a 2 megabyte buffer of plaintext and a 2 megabyte buffer for the
+ciphertext.
+.sp
+.LP
+The maximum number of object handles that can be returned by a call to
+\fBC_FindObjects()\fR is 512.
+.sp
+.LP
+The maximum amount of kernel memory that can be used for crypto operations is
+limited by the \fBproject.max-crypto-memory\fR resource control. Allocations in
+the kernel for buffers and session-related structures are charged against this
+resource control.
+.SH RETURN VALUES
+.sp
+.LP
+The return values of each of the implemented functions are defined and listed
+in the RSA PKCS#11 v2.20 specification. See http://www.rsasecurity.com.
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for a description of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Standard: PKCS#11 v2.20
+_
+MT-Level T{
+MT-Safe with exceptions. See section 6.5.2 of RSA PKCS#11 v2.20
+T}
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR libpkcs11 (3LIB),
+.BR attributes (7),
+.BR pkcs11_softtoken (7),
+.BR cryptoadm (8),
+.BR rctladm (8)
+.sp
+.LP
+RSA PKCS#11 v2.20 http://www.rsasecurity.com
+.SH NOTES
+.sp
+.LP
+Applications that have an open session to a PKCS#11 slot make the corresponding
+hardware provider driver not unloadable. An administrator must close the
+applications that have an PKCS#11 session open to the hardware provider to make
+the driver unloadable.
diff --git a/usr/src/man/man7/pkcs11_softtoken.7 b/usr/src/man/man7/pkcs11_softtoken.7
new file mode 100644
index 0000000000..ee20e34e2b
--- /dev/null
+++ b/usr/src/man/man7/pkcs11_softtoken.7
@@ -0,0 +1,283 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PKCS11_SOFTTOKEN 7 "Mar 25, 2008"
+.SH NAME
+pkcs11_softtoken \- Software RSA PKCS#11 softtoken
+.SH SYNOPSIS
+.LP
+.nf
+/usr/lib/security/pkcs11_softtoken.so
+/usr/lib/security/64/pkcs11_softtoken.so
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBpkcs11_softtoken.so\fR object implements the RSA PKCS#11 v2.20
+specification in software. Persistent storage for "token" objects is provided
+by this PKCS#11 implementation.
+.sp
+.LP
+Application developers should link to \fBlibpkcs11.so\fR rather than link
+directly to \fBpkcs11_softtoken.so\fR. See \fBlibpkcs11\fR(3LIB).
+.sp
+.LP
+The following cryptographic algorithms are implemented: DES, 3DES, AES,
+Blowfish, RC4, MD5, SHA1, SHA256, SHA384, SHA512, RSA, DSA, DH, and ECC.
+.sp
+.LP
+All of the Standard PKCS#11 functions listed on \fBlibpkcs11\fR(3LIB) are
+implemented except for the following:
+.sp
+.in +2
+.nf
+C_GetObjectSize
+C_InitPIN
+C_InitToken
+C_WaitForSlotEvent
+.fi
+.in -2
+
+.sp
+.LP
+A call to these functions returns \fBCKR_FUNCTION_NOT_SUPPORTED\fR.
+.sp
+.LP
+The following RSA PKCS#11 v2.20 mechanisms are supported:
+.sp
+.in +2
+.nf
+CKM_RSA_PKCS_KEY_PAIR_GEN
+CKM_RSA_PKCS
+CKM_RSA_X_509
+
+CKM_DSA_KEY_PAIR_GEN
+CKM_DSA
+CKM_DSA_SHA1
+
+CKM_DH_PKCS_KEY_PAIR_GEN
+CKM_DH_PKCS_DERIVE
+
+CKM_EC_KEY_PAIR_GEN
+CKM_ECDSA
+CKM_ECDSA_SHA1
+CKM_ECDH1_DERIVE
+
+CKM_DES_KEY_GEN
+CKM_DES_ECB
+CKM_DES_CBC
+CKM_DES_CBC_PAD
+
+CKM_DES3_KEY_GEN
+CKM_DES3_ECB
+CKM_DES3_CBC
+CKM_DES3_CBC_PAD
+
+CKM_AES_KEY_GEN
+CKM_AES_ECB
+CKM_AES_CBC
+CKM_AES_CBC_PAD
+CKM_AES_CTR
+
+CKM_BLOWFISH_KEY_GEN
+CKM_BLOWFISH_CBC
+
+CKM_RC4_KEY_GEN
+CKM_RC4
+
+CKM_MD5_RSA_PKCS
+CKM_SHA1_RSA_PKCS
+CKM_SHA256_RSA_PKCS
+CKM_SHA384_RSA_PKCS
+CKM_SHA512_RSA_PKCS
+
+CKM_MD5
+CKM_SHA_1
+CKM_SHA256
+CKM_SHA384
+CKM_SHA512
+
+CKM_MD5_HMAC
+CKM_MD5_HMAC_GENERAL
+CKM_SHA_1_HMAC
+CKM_SHA_1_HMAC_GENERAL
+CKM_SHA256_HMAC
+CKM_SHA256_HMAC_GENERAL
+CKM_SHA384_HMAC
+CKM_SHA384_HMAC_GENERAL
+
+CKM_MD5_KEY_DERIVATION
+CKM_SHA1_KEY_DERIVATION
+CKM_SHA256_KEY_DERIVATION
+CKM_SHA384_KEY_DERIVATION
+CKM_SHA512_KEY_DERIVATION
+
+CKM_SSL3_PRE_MASTER_KEY_GEN
+CKM_SSL3_MASTER_KEY_DERIVE
+CKM_SSL3_KEY_AND_MAC_DERIVE
+CKM_SSL3_MASTER_KEY_DERIVE_DH
+CKM_TLS_PRE_MASTER_KEY_GEN
+CKM_TLS_MASTER_KEY_DERIVE
+CKM_TLS_KEY_AND_MAC_DERIVE
+CKM_TLS_MASTER_KEY_DERIVE_DH
+.fi
+.in -2
+
+.sp
+.LP
+Each of the following types of key objects has certain token-specific
+attributes that are set to true by default as a result of object creation,
+key/key pair generation, and key derivation.
+.sp
+.ne 2
+.na
+\fBPublic key object\fR
+.ad
+.RS 22n
+\fBCKA_ENCRYPT\fR, \fBCKA_VERIFY\fR, \fBCKA_VERIFY_RECOVER\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fBPrivate key object\fR
+.ad
+.RS 22n
+\fBCKA_DECRYPT\fR, \fBCKA_SIGN\fR, \fBCKA_SIGN_RECOVER\fR,
+\fBCKA_EXTRACTABLE\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fBSecret key object\fR
+.ad
+.RS 22n
+\fBCKA_ENCRYPT\fR, \fBCKA_DECRYPT\fR, \fBCKA_SIGN\fR, \fBCKA_VERIFY\fR,
+\fBCKA_EXTRACTABLE\fR
+.RE
+
+.sp
+.LP
+The following certificate objects are supported:
+.sp
+.ne 2
+.na
+\fB\fBCKC_X_509\fR\fR
+.ad
+.RS 23n
+For \fBCKC_X_509\fR certificate objects, the following attributes are
+supported: \fBCKA_SUBJECT\fR, \fBCKA_VALUE\fR, \fBCKA_LABEL\fR, \fBCKA_ID\fR,
+\fBCKA_ISSUER\fR, \fBCKA_SERIAL_NUMBER\fR, and \fBCKA_CERTIFICATE_TYPE\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBCKC_X_509_ATTR_CERT\fR\fR
+.ad
+.RS 23n
+For \fBCKC_X_509_ATTR_CERT\fR certificate objects, the following attributes are
+supported: \fBCKA_OWNER\fR, \fBCKA_VALUE, CKA_LABEL\fR,
+\fBCKA_SERIAL_NUMBER\fR, \fBCKA_AC_ISSUER\fR, \fBCKA_ATTR_TYPES\fR, and
+\fBCKA_CERTIFICATE_TYPE\fR.
+.RE
+
+.sp
+.LP
+The search operation of objects matching the template is performed at
+\fBC_FindObjectsInit\fR. The matched objects are cached for subsequent
+\fBC_FindObjects\fR operations.
+.sp
+.LP
+The \fBpkcs11_softtoken.so\fR object provides a filesystem-based persistent
+token object store for storing token objects. The default location of the token
+object store is the user's home directory returned by \fBgetpwuid_r()\fR. The
+user can override the default location by using the \fB${SOFTTOKEN_DIR}\fR
+environment variable.
+.sp
+.LP
+If the token object store has never been initialized, the \fBC_Login()\fR
+function might return \fBCKR_OK\fR but the user will not be able to create,
+generate, derive or find any private token object and receives
+\fBCKR_PIN_EXPIRED\fR.
+.sp
+.LP
+The user must use the \fBpktool\fR(1) \fBsetpin\fR command with the default
+passphrase "changeme" as the old passphrase to change the passphrase of the
+object store. This action is needed to initialize and set the passphrase to a
+newly created token object store.
+.sp
+.LP
+After logging into object store with the new passphrase that was set by the
+\fBpktool setpin\fR command, the user can create and store the private token
+object in this newly created object store. Until the token object store is
+initialized by \fBsetpin\fR, the \fBC_Login()\fR function is allowed, but all
+attempts by the user to create, generate, derive or find any private token
+object fails with a \fBCKR_PIN_EXPIRED\fR error.
+.sp
+.LP
+The PIN provided for \fBC_Login()\fR and \fBC_SetPIN()\fR functions can be any
+string of characters with lengths between 1 and 256 and no embedded nulls.
+.SH RETURN VALUES
+.sp
+.LP
+The return values for each of the implemented functions are defined and listed
+in the RSA PKCS#11 v2.20 specification. See http://www.rsasecurity.com
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB\fIuser_home_directory\fR/.sunw/pkcs11_softtoken\fR\fR
+.ad
+.sp .6
+.RS 4n
+user's default token object store
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB${SOFTTOKEN_DIR}/pkcs11_softtoken\fR\fR
+.ad
+.sp .6
+.RS 4n
+alternate token object store
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for a description of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Committed
+_
+MT-Level T{
+MT-Safe with exceptions. See section 6.5.2 of RSA PKCS#11 v2.20.
+T}
+_
+Standard PKCS#11 v2.20
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR pktool (1),
+.BR libpkcs11 (3LIB),
+.BR attributes (7),
+.BR pkcs11_kernel (7),
+.BR cryptoadm (8)
+.sp
+.LP
+RSA PKCS#11 v2.20 http://www.rsasecurity.com
diff --git a/usr/src/man/man7/pkcs11_tpm.7 b/usr/src/man/man7/pkcs11_tpm.7
new file mode 100644
index 0000000000..3d67400906
--- /dev/null
+++ b/usr/src/man/man7/pkcs11_tpm.7
@@ -0,0 +1,275 @@
+'\" te
+.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
+.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PKCS11_TPM 7 "May 13, 2017"
+.SH NAME
+pkcs11_tpm \- RSA PKCS#11 token for Trusted Platform Modules (TPM)
+.SH SYNOPSIS
+.LP
+.nf
+/usr/lib/security/pkcs11_tpm.so
+.fi
+
+.LP
+.nf
+/usr/lib/security/64/pkcs11_tpm.so
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBpkcs11_tpm.so\fR object implements the RSA PKCS#11 v2.20 specification
+using Trusted Computing Group protocols to talk to a TPM security device. This
+provider implements the PKCS#11 specification and uses the TCG Software Stack
+(TSS) APIs in the \fBtrousers\fR package.
+.sp
+.LP
+Application developers should link to \fBlibpkcs11.so.1\fR rather than link
+directly with \fBpkcs11_tpm.so\fR. See \fBlibpkcs11\fR(3LIB).
+.sp
+.LP
+The following cryptographic algorithms are implemented: \fBRSA\fR, \fBSHA1\fR,
+and \fBMD5\fR.
+.sp
+.LP
+All of the standard PKCS#11 functions listed in \fBlibpkcs11\fR(3LIB) are
+implemented except for the following:
+.sp
+.in +2
+.nf
+C_EncryptUpdate
+C_EncryptFinal
+C_DecryptUpdate
+C_DecryptFinal
+C_DigestEncryptUpdate
+C_DecryptDigestUpdate
+C_SignEncryptUpdate
+C_DecryptVerifyUpdate
+C_GetFunctionStatus
+C_CancelFunction
+C_WaitForSlotEvent
+C_GenerateKey
+C_DeriveKey
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The following RSA PKCS#11 v2.20 mechanisms are supported:
+.sp
+.in +2
+.nf
+CKM_RSA_PKCS_KEY_PAIR_GEN
+CKM_RSA_PKCS
+CKM_RSA_PKCS_OAEP
+CKM_RSA_X_509
+CKM_MD5_RSA_PKCS
+CKM_SHA1_RSA_PKCS
+CKM_SHA_1
+CKM_SHA_1_HMAC
+CKM_SHA_1_HMAC_GENERAL
+CKM_MD5
+CKM_MD5_HMAC
+CKM_MD5_HMAC_GENERAL
+.fi
+.in -2
+.sp
+
+.SS "Per-User Initialization"
+.LP
+The \fBpkcs11_tpm\fR provider can only be used on a system which has a TPM
+device and which also has the \fBtrousers\fR package installed. If those
+prerequisites are met, users can create their own private tokens using
+\fBpktool\fR(1), which will allow them to perform operations using the TPM
+device and protect their private data with TPM-protected keys.
+.sp
+.LP
+To prepare and initialize a user's TPM token, the following steps must be
+performed:
+.RS +4
+.TP
+1.
+Initialize the token.
+.RE
+.RS +4
+.TP
+2.
+Set the SO (security officer) PIN.
+.RE
+.RS +4
+.TP
+3.
+Set the user's unique PIN.
+.RE
+.sp
+.LP
+Initializing the token is done using the \fBpktool\fR(1) command as follows:
+.sp
+.in +2
+.nf
+$ \fBpktool inittoken currlabel=TPM newlabel=tpm/myname\fR
+.fi
+.in -2
+.sp
+
+.RS +4
+.TP
+.ie t \(bu
+.el o
+By default, an uninitialized TPM is recognized by the name \fBTPM\fR. When a
+user initializes their own private token, it can either be renamed to something
+else (for example, \fBtpm/joeuser\fR) or kept as \fBTPM\fR (in which case the
+\fBnewlabel\fR argument would be omitted).
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The user will have to supply the default SO PIN before being able to initialize
+his or her token. The default SO PIN is \fB87654321\fR. It is changed in step
+2, above.
+.RE
+.sp
+.LP
+Once the token is initialized, the SO and user PINs must be changed from the
+default values. Again, \fBpktool\fR(1) is used to change these PIN values.
+.sp
+.LP
+Changing the SO PIN:
+.sp
+.in +2
+.nf
+$ \fBpktool setpin token=tpm/joeuser so\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The \fBso\fR option indicates that this "setpin" operation is to change the SO
+PIN and must be present. The user must then enter the default SO PIN
+(\fB87654321\fR) and then enter (and confirm) a new PIN.
+.sp
+.LP
+Once the SO PIN is reset from the default, the user's unique PIN must also be
+changed.
+.sp
+.LP
+Changing the user's PIN:
+.sp
+.in +2
+.nf
+$ \fBpktool setpin token=tmp/joeuser\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The default PIN for a non-SO user is \fB12345678\fR. The user must enter the
+default PIN and then enter (and confirm) a new, unique PIN.
+.sp
+.LP
+The PIN provided for the \fBpktool\fR \fBsetpin\fR operation or by calling
+\fBC_Login()\fR and \fBC_SetPIN()\fR functions can be any string of characters
+with a length between 1 and 256 and no embedded nulls.
+.SS "Accessing the Token"
+.LP
+After a user initializes their token, they can begin using it with
+\fBpktool\fR(1) or by writing PKCS11 applications and locating the token using
+the name created above (\fBtpm/joeuser\fR in the examples above).
+.sp
+.LP
+Examples:
+.sp
+.in +2
+.nf
+$ \fBpktool gencert token=tpm/joeuser -i\fR
+$ \fBpktool list token=tpm/joeuser\fR
+.fi
+.in -2
+.sp
+
+.SS "Notes"
+.LP
+\fBpkcs11_tpm.so\fR provides object storage in a filesystem-specific token
+object storage area. Private objects are protected by encryption with private
+keys and can only be decrypted by loading the token's private key into the TPM
+and performing the decryption entirely in the TPM. The user's private key is
+generated by the TPM when the user sets their personal PIN (see above). The
+keys for both the SO and users are stored in the TSS persistent storage
+database and are referenced by a unique UUID value. All user tokens have a
+unique SO key and unique user key so that the PINs for one user's token will
+not unlock private data in another user's token on the same machine.
+.sp
+.LP
+Each TPM is unique and the token keys created on one TPM may not be used on
+another TPM. The \fBpkcs11_tpm.so\fR token data is all managed on the system
+where the TPM resides and may not be moved to other systems. If the TPM is
+reset and the SRK (Storage Root Key) is changed, all of the keys previously
+generated for that TPM will no longer be valid.
+.sp
+.LP
+\fBpkcs11_tpm.so\fR creates a private workspace to manage administrative files
+for each token created. By default, this area is created as
+\fB/var/tpm/pkcs11/$USERNAME\fR. However, users may override this by setting
+the \fBPKCS11_TPM_DIR\fR environment variable prior to initializing or using
+the token.
+.SH RETURN VALUES
+.LP
+The return values for each of the implemented functions are defined and listed
+in the RSA PKCS#11 v2.20 specification. See \fBhttp://www.rsasecurity.com\fR.
+.SH FILES
+.ne 2
+.na
+\fB\fB/var/tpm/pkcs11/USERNAME\fR\fR
+.ad
+.sp .6
+.RS 4n
+User's default token object store.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB${PKCS11_TPM_DIR}\fR\fR
+.ad
+.sp .6
+.RS 4n
+Alternate token object store.
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Committed
+_
+MT-Level MT-Safe with Exceptions (see below)
+_
+Standard PKCS#11 v2.20
+.TE
+
+.sp
+.LP
+Exceptions to MT-Safe attribute are documented in section 6.5.2 of RSA PKCS#11
+v2.20.
+.SH SEE ALSO
+.LP
+.BR pktool (1),
+.BR libpkcs11 (3LIB),
+.BR attributes (7),
+.BR cryptoadm (8)
+.sp
+.LP
+TCG Software Stack (TSS) Specifications: \fBhttps://www.trustedcomputinggroup.org/specs/TSS\fR (as of the date of publication)
diff --git a/usr/src/man/man7/privileges.7 b/usr/src/man/man7/privileges.7
new file mode 100644
index 0000000000..b2d51cccf8
--- /dev/null
+++ b/usr/src/man/man7/privileges.7
@@ -0,0 +1,1449 @@
+'\" te
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 2016, Joyent, Inc. All Rights Reserved.
+.\" Copyright 2019 Peter Tribble
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
+.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PRIVILEGES 7 "Aug 26, 2019"
+.SH NAME
+privileges \- process privilege model
+.SH DESCRIPTION
+In illumos, software implements a set of privileges that provide fine-grained
+control over the actions of processes. The possession of a certain privilege
+allows a process to perform a specific set of restricted operations.
+.sp
+.LP
+The change to a primarily privilege-based security model in the
+operating system gives developers an opportunity to restrict processes to those
+privileged operations actually needed instead of all (super-user) or no
+privileges (non-zero UIDs). Additionally, a set of previously unrestricted
+operations now requires a privilege; these privileges are dubbed the "basic"
+privileges and are by default given to all processes.
+.sp
+.LP
+Taken together, all defined privileges with the exception of the "basic"
+privileges compose the set of privileges that are traditionally associated with
+the root user. The "basic" privileges are "privileges" unprivileged processes
+were accustomed to having.
+.sp
+.LP
+The defined privileges are:
+.sp
+.ne 2
+.na
+\fB\fBPRIV_CONTRACT_EVENT\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow a process to request reliable delivery of events to an event endpoint.
+.sp
+Allow a process to include events in the critical event set term of a template
+which could be generated in volume by the user.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_CONTRACT_IDENTITY\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allows a process to set the service FMRI value of a process contract template.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_CONTRACT_OBSERVER\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow a process to observe contract events generated by contracts created and
+owned by users other than the process's effective user ID.
+.sp
+Allow a process to open contract event endpoints belonging to contracts created
+and owned by users other than the process's effective user ID.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_CPC_CPU\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow a process to access per-CPU hardware performance counters.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_DTRACE_KERNEL\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow DTrace kernel-level tracing.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_DTRACE_PROC\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow DTrace process-level tracing. Allow process-level tracing probes to be
+placed and enabled in processes to which the user has permissions.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_DTRACE_USER\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow DTrace user-level tracing. Allow use of the syscall and profile DTrace
+providers to examine processes to which the user has permissions.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_FILE_CHOWN\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow a process to change a file's owner user ID. Allow a process to change a
+file's group ID to one other than the process's effective group ID or one of
+the process's supplemental group IDs.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_FILE_CHOWN_SELF\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow a process to give away its files. A process with this privilege runs as
+if {\fB_POSIX_CHOWN_RESTRICTED\fR} is not in effect.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_FILE_DAC_EXECUTE\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow a process to execute an executable file whose permission bits or ACL
+would otherwise disallow the process execute permission.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_FILE_DAC_READ\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow a process to read a file or directory whose permission bits or ACL would
+otherwise disallow the process read permission.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_FILE_DAC_SEARCH\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow a process to search a directory whose permission bits or ACL would not
+otherwise allow the process search permission.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_FILE_DAC_WRITE\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow a process to write a file or directory whose permission bits or ACL do
+not allow the process write permission. All privileges are required to write
+files owned by UID 0 in the absence of an effective UID of 0.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_FILE_DOWNGRADE_SL\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow a process to set the sensitivity label of a file or directory to a
+sensitivity label that does not dominate the existing sensitivity label.
+.sp
+This privilege is interpreted only if the system is configured with Trusted
+Extensions.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_FILE_FLAG_SET\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allows a process to set immutable, nounlink or appendonly file attributes.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_FILE_LINK_ANY\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow a process to create hardlinks to files owned by a UID different from the
+process's effective UID.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_FILE_OWNER\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow a process that is not the owner of a file to modify that file's access
+and modification times. Allow a process that is not the owner of a directory to
+modify that directory's access and modification times. Allow a process that is
+not the owner of a file or directory to remove or rename a file or directory
+whose parent directory has the "save text image after execution" (sticky) bit
+set. Allow a process that is not the owner of a file to mount a \fBnamefs\fR
+upon that file. Allow a process that is not the owner of a file or directory to
+modify that file's or directory's permission bits or ACL.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_FILE_READ\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow a process to open objects in the filesystem for reading. This
+privilege is not necessary to read from an already open file which was opened
+before dropping the \fBPRIV_FILE_READ\fR privilege.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_FILE_SETID\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow a process to change the ownership of a file or write to a file without
+the set-user-ID and set-group-ID bits being cleared. Allow a process to set the
+set-group-ID bit on a file or directory whose group is not the process's
+effective group or one of the process's supplemental groups. Allow a process to
+set the set-user-ID bit on a file with different ownership in the presence of
+\fBPRIV_FILE_OWNER\fR. Additional restrictions apply when creating or modifying
+a setuid 0 file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_FILE_UPGRADE_SL\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow a process to set the sensitivity label of a file or directory to a
+sensitivity label that dominates the existing sensitivity label.
+.sp
+This privilege is interpreted only if the system is configured with Trusted
+Extensions.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_FILE_WRITE\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow a process to open objects in the filesystem for writing, or otherwise
+modify them. This privilege is not necessary to write to an already open file
+which was opened before dropping the \fBPRIV_FILE_WRITE\fR privilege.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_GRAPHICS_ACCESS\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow a process to make privileged ioctls to graphics devices. Typically only
+an xserver process needs to have this privilege. A process with this privilege
+is also allowed to perform privileged graphics device mappings.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_GRAPHICS_MAP\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow a process to perform privileged mappings through a graphics device.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_HYPRLOFS_CONTROL\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow a process to perform hyprlofs name space management.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_IPC_DAC_READ\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow a process to read a System V IPC Message Queue, Semaphore Set, or Shared
+Memory Segment whose permission bits would not otherwise allow the process read
+permission.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_IPC_DAC_WRITE\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow a process to write a System V IPC Message Queue, Semaphore Set, or Shared
+Memory Segment whose permission bits would not otherwise allow the process
+write permission.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_IPC_OWNER\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow a process that is not the owner of a System V IPC Message Queue,
+Semaphore Set, or Shared Memory Segment to remove, change ownership of, or
+change permission bits of the Message Queue, Semaphore Set, or Shared Memory
+Segment.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_NET_ACCESS\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow a process to open a TCP, UDP, SDP, or SCTP network endpoint. This
+privilege is not necessary to communicate using an existing endpoint already
+opened before dropping the \fBPRIV_NET_ACCESS\fR privilege.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_NET_BINDMLP\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow a process to bind to a port that is configured as a multi-level port
+(MLP) for the process's zone. This privilege applies to both shared address and
+zone-specific address MLPs. See \fBtnzonecfg\fR(\fB4\fR) from the Trusted
+Extensions manual pages for information on configuring MLP ports.
+.sp
+This privilege is interpreted only if the system is configured with Trusted
+Extensions.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_NET_ICMPACCESS\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow a process to send and receive ICMP packets.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_NET_MAC_AWARE\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow a process to set the \fBNET_MAC_AWARE\fR process flag by using
+\fBsetpflags\fR(2). This privilege also allows a process to set the
+\fBSO_MAC_EXEMPT\fR socket option by using \fBsetsockopt\fR(3SOCKET). The
+\fBNET_MAC_AWARE\fR process flag and the \fBSO_MAC_EXEMPT\fR socket option both
+allow a local process to communicate with an unlabeled peer if the local
+process's label dominates the peer's default label, or if the local process
+runs in the global zone.
+.sp
+This privilege is interpreted only if the system is configured with Trusted
+Extensions.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_NET_MAC_IMPLICIT\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow a process to set \fBSO_MAC_IMPLICIT\fR option by using
+\fBsetsockopt\fR(3SOCKET). This allows a privileged process to transmit
+implicitly-labeled packets to a peer.
+.sp
+This privilege is interpreted only if the system is configured with
+Trusted Extensions.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_NET_OBSERVABILITY\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow a process to open a device for just receiving network traffic, sending
+traffic is disallowed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_NET_PRIVADDR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow a process to bind to a privileged port number. The privilege port numbers
+are 1-1023 (the traditional UNIX privileged ports) as well as those ports
+marked as "\fBudp/tcp_extra_priv_ports\fR" with the exception of the ports
+reserved for use by NFS and SMB.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_NET_RAWACCESS\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow a process to have direct access to the network layer.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_PROC_AUDIT\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow a process to generate audit records. Allow a process to get its own audit
+pre-selection information.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_PROC_CHROOT\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow a process to change its root directory.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_PROC_CLOCK_HIGHRES\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow a process to use high resolution timers with very small time values.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_PROC_EXEC\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow a process to call \fBexec\fR(2).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_PROC_FORK\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow a process to call \fBfork\fR(2), \fBfork1\fR(2), or \fBvfork\fR(2).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_PROC_INFO\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow a process to examine the status of processes other than those to which it
+can send signals. Processes that cannot be examined cannot be seen in
+\fB/proc\fR and appear not to exist.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_PROC_LOCK_MEMORY\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow a process to lock pages in physical memory.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_PROC_MEMINFO\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow a process to access physical memory information.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_PROC_OWNER\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow a process to send signals to other processes and inspect and modify the
+process state in other processes, regardless of ownership. When modifying
+another process, additional restrictions apply: the effective privilege set of
+the attaching process must be a superset of the target process's effective,
+permitted, and inheritable sets; the limit set must be a superset of the
+target's limit set; if the target process has any UID set to 0 all privilege
+must be asserted unless the effective UID is 0. Allow a process to bind
+arbitrary processes to CPUs.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_PROC_PRIOUP\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow a process to elevate its priority above its current level.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_PROC_PRIOCNTL\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allows all that PRIV_PROC_PRIOUP allows.
+Allow a process to change its scheduling class to any scheduling class,
+including the RT class.
+.RE
+
+.sp
+.ne 2
+.na
+\fBPRIV_PROC_SECFLAGS\fR
+.ad
+.sp .6
+.RS 4n
+Allow a process to manipulate the secflags of processes (subject to,
+additionally, the ability to signal that process).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_PROC_SESSION\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow a process to send signals or trace processes outside its session.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_PROC_SETID\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow a process to set its UIDs at will, assuming UID 0 requires all privileges
+to be asserted.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_PROC_TASKID\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow a process to assign a new task ID to the calling process.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_PROC_ZONE\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow a process to trace or send signals to processes in other zones. See
+\fBzones\fR(7).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_SYS_ACCT\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow a process to enable and disable and manage accounting through
+\fBacct\fR(2).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_SYS_ADMIN\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow a process to perform system administration tasks such as setting node and
+domain name and managing \fBfmd\fR(8) and \fBnscd\fR(8).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_SYS_AUDIT\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow a process to start the (kernel) audit daemon. Allow a process to view and
+set audit state (audit user ID, audit terminal ID, audit sessions ID, audit
+pre-selection mask). Allow a process to turn off and on auditing. Allow a
+process to configure the audit parameters (cache and queue sizes, event to
+class mappings, and policy options).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_SYS_CONFIG\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow a process to perform various system configuration tasks. Allow
+filesystem-specific administrative procedures, such as filesystem configuration
+ioctls, quota calls, creation and deletion of snapshots, and manipulating the
+PCFS bootsector.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_SYS_DEVICES\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow a process to create device special files. Allow a process to successfully
+call a kernel module that calls the kernel \fBdrv_priv\fR(9F) function to check
+for allowed access. Allow a process to open the real console device directly.
+Allow a process to open devices that have been exclusively opened.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_SYS_DL_CONFIG\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow a process to configure a system's datalink interfaces.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_SYS_FS_IMPORT\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow a process to import a potentially untrusted file system (e.g. ZFS recv).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_SYS_IP_CONFIG\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow a process to configure a system's IP interfaces and routes. Allow a
+process to configure network parameters for \fBTCP/IP\fR using \fBndd\fR. Allow
+a process access to otherwise restricted \fBTCP/IP\fR information using
+\fBndd\fR. Allow a process to configure \fBIPsec\fR. Allow a process to pop
+anchored \fBSTREAM\fRs modules with matching \fBzoneid\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_SYS_IPC_CONFIG\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow a process to increase the size of a System V IPC Message Queue buffer.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_SYS_IPTUN_CONFIG\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow a process to configure IP tunnel links.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_SYS_LINKDIR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow a process to unlink and link directories.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_SYS_MOUNT\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow a process to mount and unmount filesystems that would otherwise be
+restricted (that is, most filesystems except \fBnamefs\fR). Allow a process to
+add and remove swap devices.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_SYS_NET_CONFIG\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow a process to do all that \fBPRIV_SYS_IP_CONFIG\fR,
+\fBPRIV_SYS_DL_CONFIG\fR, and \fBPRIV_SYS_PPP_CONFIG\fR allow, plus the
+following: use the \fBrpcmod\fR STREAMS module and insert/remove STREAMS
+modules on locations other than the top of the module stack.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_SYS_NFS\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow a process to provide NFS service: start NFS kernel threads, perform NFS
+locking operations, bind to NFS reserved ports: ports 2049 (\fBnfs\fR) and port
+4045 (\fBlockd\fR).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_SYS_PPP_CONFIG\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow a process to create, configure, and destroy PPP instances with pppd(8)
+\fBpppd\fR(8) and control PPPoE plumbing with \fBsppptun\fR(8).
+This privilege is granted by default to exclusive IP stack instance zones.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_SYS_RES_BIND\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allows a process to bind processes to processor sets.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_SYS_RES_CONFIG\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allows all that PRIV_SYS_RES_BIND allows.
+Allow a process to create and delete processor sets, assign CPUs to processor
+sets and override the \fBPSET_NOESCAPE\fR property. Allow a process to change
+the operational status of CPUs in the system using \fBp_online\fR(2). Allow a
+process to configure filesystem quotas. Allow a process to configure resource
+pools and bind processes to pools.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_SYS_RESOURCE\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow a process to exceed the resource limits imposed on it by
+\fBsetrlimit\fR(2) and \fBsetrctl\fR(2).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_SYS_SMB\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow a process to provide NetBIOS or SMB services: start SMB kernel threads or
+bind to NetBIOS or SMB reserved ports: ports 137, 138, 139 (NetBIOS) and 445
+(SMB).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_SYS_SUSER_COMPAT\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow a process to successfully call a third party loadable module that calls
+the kernel \fBsuser()\fR function to check for allowed access. This privilege
+exists only for third party loadable module compatibility and is not used by
+illumos.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_SYS_TIME\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow a process to manipulate system time using any of the appropriate system
+calls: \fBstime\fR(2), \fBadjtime\fR(2), and \fBntp_adjtime\fR(2).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_SYS_TRANS_LABEL\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow a process to translate labels that are not dominated by the process's
+sensitivity label to and from an external string form.
+.sp
+This privilege is interpreted only if the system is configured with Trusted
+Extensions.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_VIRT_MANAGE\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allows a process to manage virtualized environments such as \fBxVM\fR(7).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_WIN_COLORMAP\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow a process to override colormap restrictions.
+.sp
+Allow a process to install or remove colormaps.
+.sp
+Allow a process to retrieve colormap cell entries allocated by other processes.
+.sp
+This privilege is interpreted only if the system is configured with Trusted
+Extensions.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_WIN_CONFIG\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow a process to configure or destroy resources that are permanently retained
+by the X server.
+.sp
+Allow a process to use SetScreenSaver to set the screen saver timeout value
+.sp
+Allow a process to use ChangeHosts to modify the display access control list.
+.sp
+Allow a process to use GrabServer.
+.sp
+Allow a process to use the SetCloseDownMode request that can retain window,
+pixmap, colormap, property, cursor, font, or graphic context resources.
+.sp
+This privilege is interpreted only if the system is configured with Trusted
+Extensions.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_WIN_DAC_READ\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow a process to read from a window resource that it does not own (has a
+different user ID).
+.sp
+This privilege is interpreted only if the system is configured with Trusted
+Extensions.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_WIN_DAC_WRITE\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow a process to write to or create a window resource that it does not own
+(has a different user ID). A newly created window property is created with the
+window's user ID.
+.sp
+This privilege is interpreted only if the system is configured with Trusted
+Extensions.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_WIN_DEVICES\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow a process to perform operations on window input devices.
+.sp
+Allow a process to get and set keyboard and pointer controls.
+.sp
+Allow a process to modify pointer button and key mappings.
+.sp
+This privilege is interpreted only if the system is configured with Trusted
+Extensions.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_WIN_DGA\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow a process to use the direct graphics access (DGA) X protocol extensions.
+Direct process access to the frame buffer is still required. Thus the process
+must have MAC and DAC privileges that allow access to the frame buffer, or the
+frame buffer must be allocated to the process.
+.sp
+This privilege is interpreted only if the system is configured with Trusted
+Extensions.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_WIN_DOWNGRADE_SL\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow a process to set the sensitivity label of a window resource to a
+sensitivity label that does not dominate the existing sensitivity label.
+.sp
+This privilege is interpreted only if the system is configured with Trusted
+Extensions.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_WIN_FONTPATH\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow a process to set a font path.
+.sp
+This privilege is interpreted only if the system is configured with Trusted
+Extensions.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_WIN_MAC_READ\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow a process to read from a window resource whose sensitivity label is not
+equal to the process sensitivity label.
+.sp
+This privilege is interpreted only if the system is configured with Trusted
+Extensions.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_WIN_MAC_WRITE\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow a process to create a window resource whose sensitivity label is not
+equal to the process sensitivity label. A newly created window property is
+created with the window's sensitivity label.
+.sp
+This privilege is interpreted only if the system is configured with Trusted
+Extensions.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_WIN_SELECTION\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow a process to request inter-window data moves without the intervention of
+the selection confirmer.
+.sp
+This privilege is interpreted only if the system is configured with Trusted
+Extensions.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_WIN_UPGRADE_SL\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow a process to set the sensitivity label of a window resource to a
+sensitivity label that dominates the existing sensitivity label.
+.sp
+This privilege is interpreted only if the system is configured with Trusted
+Extensions.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIV_XVM_CONTROL\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allows a process access to the \fBxVM\fR(7) control devices for managing guest
+domains and the hypervisor. This privilege is used only if booted into xVM on
+x86 platforms.
+.RE
+
+.sp
+.LP
+Of the privileges listed above, the privileges \fBPRIV_FILE_LINK_ANY\fR,
+\fBPRIV_PROC_INFO\fR, \fBPRIV_PROC_SESSION\fR, \fBPRIV_PROC_FORK\fR,
+\fBPRIV_FILE_READ\fR, \fBPRIV_FILE_WRITE\fR, \fBPRIV_NET_ACCESS\fR and
+\fBPRIV_PROC_EXEC\fR are considered "basic" privileges. These are privileges
+that used to be always available to unprivileged processes. By default,
+processes still have the basic privileges.
+.sp
+.LP
+The privileges \fBPRIV_PROC_SETID\fR and \fBPRIV_PROC_AUDIT\fR must be present
+in the Limit set (see below) of a process in order for set-uid root \fBexec\fRs
+to be successful, that is, get an effective UID of 0 and additional privileges.
+.sp
+.LP
+The privilege implementation in illumos extends the process credential with
+four privilege sets:
+.sp
+.ne 2
+.na
+\fBI, the inheritable set\fR
+.ad
+.RS 26n
+The privileges inherited on \fBexec\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBP, the permitted set\fR
+.ad
+.RS 26n
+The maximum set of privileges for the process.
+.RE
+
+.sp
+.ne 2
+.na
+\fBE, the effective set\fR
+.ad
+.RS 26n
+The privileges currently in effect.
+.RE
+
+.sp
+.ne 2
+.na
+\fBL, the limit set\fR
+.ad
+.RS 26n
+The upper bound of the privileges a process and its offspring can obtain.
+Changes to L take effect on the next \fBexec\fR.
+.RE
+
+.sp
+.LP
+The sets I, P and E are typically identical to the basic set of privileges for
+unprivileged processes. The limit set is typically the full set of privileges.
+.sp
+.LP
+Each process has a Privilege Awareness State (PAS) that can take the value PA
+(privilege-aware) and NPA (not-PA). PAS is a transitional mechanism that allows
+a choice between full compatibility with the old superuser model and completely
+ignoring the effective UID.
+.sp
+.LP
+To facilitate the discussion, we introduce the notion of "observed effective
+set" (oE) and "observed permitted set" (oP) and the implementation sets iE and
+iP.
+.sp
+.LP
+A process becomes privilege-aware either by manipulating the effective,
+permitted, or limit privilege sets through \fBsetppriv\fR(2) or by using
+\fBsetpflags\fR(2). In all cases, oE and oP are invariant in the process of
+becoming privilege-aware. In the process of becoming privilege-aware, the
+following assignments take place:
+.sp
+.in +2
+.nf
+iE = oE
+iP = oP
+.fi
+.in -2
+
+.sp
+.LP
+When a process is privilege-aware, oE and oP are invariant under UID changes.
+When a process is not privilege-aware, oE and oP are observed as follows:
+.sp
+.in +2
+.nf
+oE = euid == 0 ? L : iE
+oP = (euid == 0 || ruid == 0 || suid == 0) ? L : iP
+.fi
+.in -2
+
+.sp
+.LP
+When a non-privilege-aware process has an effective UID of 0, it can exercise
+the privileges contained in its limit set, the upper bound of its privileges.
+If a non-privilege-aware process has any of the UIDs 0, it appears to be
+capable of potentially exercising all privileges in L.
+.sp
+.LP
+It is possible for a process to return to the non-privilege aware state using
+\fBsetpflags()\fR. The kernel always attempts this on \fBexec\fR(2). This
+operation is permitted only if the following conditions are met:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+If any of the UIDs is equal to 0, P must be equal to L.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+If the effective UID is equal to 0, E must be equal to L.
+.RE
+.sp
+.LP
+When a process gives up privilege awareness, the following assignments take
+place:
+.sp
+.in +2
+.nf
+if (euid == 0) iE = L & I
+if (any uid == 0) iP = L & I
+.fi
+.in -2
+
+.sp
+.LP
+The privileges obtained when not having a UID of \fB0\fR are the inheritable
+set of the process restricted by the limit set.
+.sp
+.LP
+Only privileges in the process's (observed) effective privilege set allow the
+process to perform restricted operations. A process can use any of the
+privilege manipulation functions to add or remove privileges from the privilege
+sets. Privileges can be removed always. Only privileges found in the permitted
+set can be added to the effective and inheritable set. The limit set cannot
+grow. The inheritable set can be larger than the permitted set.
+.sp
+.LP
+When a process performs an \fBexec\fR(2), the kernel first tries to relinquish
+privilege awareness before making the following privilege set modifications:
+.sp
+.in +2
+.nf
+E' = P' = I' = L & I
+L is unchanged
+.fi
+.in -2
+
+.sp
+.LP
+If a process has not manipulated its privileges, the privilege sets effectively
+remain the same, as E, P and I are already identical.
+.sp
+.LP
+The limit set is enforced at \fBexec\fR time.
+.sp
+.LP
+To run a non-privilege-aware application in a backward-compatible manner, a
+privilege-aware application should start the non-privilege-aware application
+with I=basic.
+.sp
+.LP
+For most privileges, absence of the privilege simply results in a failure. In
+some instances, the absence of a privilege can cause system calls to behave
+differently. In other instances, the removal of a privilege can force a set-uid
+application to seriously malfunction. Privileges of this type are considered
+"unsafe". When a process is lacking any of the unsafe privileges from its limit
+set, the system does not honor the set-uid bit of set-uid root applications.
+The following unsafe privileges have been identified: \fBproc_setid\fR,
+\fBsys_resource\fR and \fBproc_audit\fR.
+.SS "Privilege Escalation"
+In certain circumstances, a single privilege could lead to a process gaining
+one or more additional privileges that were not explicitly granted to that
+process. To prevent such an escalation of privileges, the security policy
+requires explicit permission for those additional privileges.
+.sp
+.LP
+Common examples of escalation are those mechanisms that allow modification of
+system resources through "raw" interfaces; for example, changing kernel data
+structures through \fB/dev/kmem\fR or changing files through \fB/dev/dsk/*\fR.
+Escalation also occurs when a process controls processes with more privileges
+than the controlling process. A special case of this is manipulating or
+creating objects owned by UID 0 or trying to obtain UID 0 using
+\fBsetuid\fR(2). The special treatment of UID 0 is needed because the UID 0
+owns all system configuration files and ordinary file protection mechanisms
+allow processes with UID 0 to modify the system configuration. With appropriate
+file modifications, a given process running with an effective UID of 0 can gain
+all privileges.
+.sp
+.LP
+In situations where a process might obtain UID 0, the security policy requires
+additional privileges, up to the full set of privileges. Such restrictions
+could be relaxed or removed at such time as additional mechanisms for
+protection of system files became available. There are no such mechanisms in
+the current release.
+.sp
+.LP
+The use of UID 0 processes should be limited as much as possible. They should
+be replaced with programs running under a different UID but with exactly the
+privileges they need.
+.sp
+.LP
+Daemons that never need to \fBexec\fR subprocesses should remove the
+\fBPRIV_PROC_EXEC\fR privilege from their permitted and limit sets.
+.SS "Assigned Privileges and Safeguards"
+When privileges are assigned to a user, the system administrator could give
+that user more powers than intended. The administrator should consider whether
+safeguards are needed. For example, if the \fBPRIV_PROC_LOCK_MEMORY\fR
+privilege is given to a user, the administrator should consider setting the
+\fBproject.max-locked-memory\fR resource control as well, to prevent that user
+from locking all memory.
+.SS "Privilege Debugging"
+When a system call fails with a permission error, it is not always immediately
+obvious what caused the problem. To debug such a problem, you can use a tool
+called \fBprivilege debugging\fR. When privilege debugging is enabled for a
+process, the kernel reports missing privileges on the controlling terminal of
+the process. (Enable debugging for a process with the \fB-D\fR option of
+\fBppriv\fR(1).) Additionally, the administrator can enable system-wide
+privilege debugging by setting the \fBsystem\fR(5) variable \fBpriv_debug\fR
+using:
+.sp
+.in +2
+.nf
+set priv_debug = 1
+.fi
+.in -2
+
+.sp
+.LP
+On a running system, you can use \fBmdb\fR(1) to change this variable.
+.SS "Privilege Administration"
+Use \fBusermod\fR(8) or \fBrolemod\fR(8)
+to assign privileges to or modify privileges for, respectively, a user or a
+role. Use \fBppriv\fR(1) to enumerate the privileges supported on a system and
+\fBtruss\fR(1) to determine which privileges a program requires.
+.SH SEE ALSO
+.BR mdb (1),
+.BR ppriv (1),
+.BR Intro (2),
+.BR access (2),
+.BR acct (2),
+.BR acl (2),
+.BR adjtime (2),
+.BR audit (2),
+.BR auditon (2),
+.BR chmod (2),
+.BR chown (2),
+.BR chroot (2),
+.BR creat (2),
+.BR exec (2),
+.BR fcntl (2),
+.BR fork (2),
+.BR fpathconf (2),
+.BR getacct (2),
+.BR getpflags (2),
+.BR getppriv (2),
+.BR getsid (2),
+.BR kill (2),
+.BR link (2),
+.BR memcntl (2),
+.BR mknod (2),
+.BR mount (2),
+.BR msgctl (2),
+.BR nice (2),
+.BR ntp_adjtime (2),
+.BR open (2),
+.BR p_online (2),
+.BR priocntl (2),
+.BR priocntlset (2),
+.BR processor_bind (2),
+.BR pset_bind (2),
+.BR pset_create (2),
+.BR readlink (2),
+.BR resolvepath (2),
+.BR rmdir (2),
+.BR semctl (2),
+.BR setauid (2),
+.BR setegid (2),
+.BR seteuid (2),
+.BR setgid (2),
+.BR setgroups (2),
+.BR setpflags (2),
+.BR setppriv (2),
+.BR setrctl (2),
+.BR setregid (2),
+.BR setreuid (2),
+.BR setrlimit (2),
+.BR settaskid (2),
+.BR setuid (2),
+.BR shmctl (2),
+.BR shmget (2),
+.BR shmop (2),
+.BR sigsend (2),
+.BR stat (2),
+.BR statvfs (2),
+.BR stime (2),
+.BR swapctl (2),
+.BR sysinfo (2),
+.BR uadmin (2),
+.BR ulimit (2),
+.BR umount (2),
+.BR unlink (2),
+.BR utime (2),
+.BR utimes (2),
+.BR door_ucred (3C),
+.BR priv_addset (3C),
+.BR priv_getbyname (3C),
+.BR priv_getbynum (3C),
+.BR priv_set (3C),
+.BR priv_set_to_str (3C),
+.BR priv_str_to_set (3C),
+.BR timer_create (3C),
+.BR ucred_get (3C),
+.BR t_bind (3NSL),
+.BR bind (3SOCKET),
+.BR socket (3SOCKET),
+.BR exec_attr (5),
+.BR proc (5),
+.BR system (5),
+.BR user_attr (5),
+.BR xVM (7),
+.BR add_drv (8),
+.BR ifconfig (8),
+.BR lockd (8),
+.BR nfsd (8),
+.BR pppd (8),
+.BR rem_drv (8),
+.BR smbd (8),
+.BR sppptun (8),
+.BR update_drv (8),
+.BR ddi_cred (9F),
+.BR drv_priv (9F),
+.BR priv_getbyname (9F),
+.BR priv_policy (9F),
+.BR priv_policy_choice (9F),
+.BR priv_policy_only (9F)
+.sp
+.LP
+\fISystem Administration Guide: Security Services\fR
diff --git a/usr/src/man/man7/prof.7 b/usr/src/man/man7/prof.7
new file mode 100644
index 0000000000..966f7fe37c
--- /dev/null
+++ b/usr/src/man/man7/prof.7
@@ -0,0 +1,73 @@
+'\" te
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PROF 7 "Jul 3, 1990"
+.SH NAME
+prof \- profile within a function
+.SH SYNOPSIS
+.LP
+.nf
+#define MARK
+#include <prof.h>
+
+\fBvoid\fR \fBMARK\fR(\fB\fR\fIname\fR);
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBMARK\fR introduces a mark called \fIname\fR that is treated the same as a
+function entry point. Execution of the mark adds to a counter for that mark,
+and program-counter time spent is accounted to the immediately preceding mark
+or to the function if there are no preceding marks within the active function.
+.sp
+.LP
+\fIname\fR may be any combination of letters, numbers, or underscores. Each
+\fIname\fR in a single compilation must be unique, but may be the same as any
+ordinary program symbol.
+.sp
+.LP
+For marks to be effective, the symbol \fBMARK\fR must be defined before the
+header \fBprof.h\fR is included, either by a preprocessor directive as in the
+synopsis, or by a command line argument:
+.sp
+.LP
+\fBcc -p -DMARK work.c\fR
+.sp
+.LP
+If \fBMARK\fR is not defined, the \fBMARK(\fR\fIname\fR\fB)\fR statements may
+be left in the source files containing them and are ignored. \fBprof -g\fR
+must be used to get information on all labels.
+.SH EXAMPLES
+.sp
+.LP
+In this example, marks can be used to determine how much time is spent in each
+loop. Unless this example is compiled with \fBMARK\fR defined on the command
+line, the marks are ignored.
+.sp
+.in +2
+.nf
+#include <prof.h>
+work( )
+{
+ int i, j;
+ ...
+ MARK(loop1);
+ for (i = 0; i < 2000; i++) {
+ ...
+ }
+ MARK(loop2);
+ for (j = 0; j < 2000; j++) {
+ ...
+ }
+}
+.fi
+.in -2
+
+.SH SEE ALSO
+.sp
+.LP
+.BR profil (2),
+.BR monitor (3C)
diff --git a/usr/src/man/man7/pxeboot.7 b/usr/src/man/man7/pxeboot.7
new file mode 100644
index 0000000000..4c58c4de8c
--- /dev/null
+++ b/usr/src/man/man7/pxeboot.7
@@ -0,0 +1,148 @@
+.\" Copyright (c) 1999 Doug White
+.\" All rights reserved.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\" notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\" notice, this list of conditions and the following disclaimer in the
+.\" documentation and/or other materials provided with the distribution.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+.\" SUCH DAMAGE.
+.\"
+.\" Copyright 2018 OmniOS Community Edition (OmniOSce) Association.
+.\"
+.Dd Apr 13, 2018
+.Dt PXEBOOT 7
+.Os
+.Sh NAME
+.Nm pxeboot
+.Nd Preboot Execution Environment (PXE) bootloader
+.Sh DESCRIPTION
+The
+.Nm
+bootloader is a modified version of the system third-stage bootstrap
+.Xr loader 7
+configured to run under Intel's Preboot Execution Environment (PXE) system.
+PXE is a form of smart boot ROM, built into Ethernet cards, and
+Ethernet-equipped motherboards.
+PXE supports DHCP configuration and provides low-level NIC access services.
+.Pp
+The DHCP client will set a DHCP user class named
+.Va illumos
+to allow flexible configuration of the DHCP server.
+.Pp
+The
+.Nm
+bootloader retrieves the kernel, modules,
+and other files either via NFS over UDP or by TFTP,
+selectable through DHCP options.
+.Pp
+The
+.Nm
+binary is loaded just like any other boot file,
+by specifying it in the DHCP server's configuration file.
+Below is a sample configuration for the ISC DHCP server:
+.Bd -literal -offset indent
+option domain-name "example.com";
+option routers 10.0.0.1;
+option subnet-mask 255.255.255.0;
+option broadcast-address 10.0.0.255;
+option domain-name-servers 10.0.0.1;
+server-name "DHCPserver";
+server-identifier 10.0.0.1;
+
+default-lease-time 120;
+max-lease-time 120;
+
+subnet 10.0.0.0 netmask 255.255.255.0 {
+ filename "pxeboot";
+ range 10.0.0.10 10.0.0.254;
+ if exists user-class and option user-class ~~ "illumos" {
+ option root-path "tftp://10.0.0.1/illumos";
+ }
+}
+
+.Ed
+.Pp
+.Nm
+recognizes
+.Va next-server
+and
+.Va option root-path
+directives as the server and path to NFS mount for file requests,
+respectively, or the server to make TFTP requests to.
+Note that
+.Nm
+expects to fetch
+.Pa /boot/loader.rc
+from the specified server before loading any other files.
+.Pp
+Valid
+.Cm option Va root-path
+syntax is
+.Bd -literal -offset indent
+[<scheme>://][<ip-address>/]<path>
+.Ed
+.Pp
+\&...where
+.Qq scheme
+is either
+.Qq nfs
+or
+.Qq tftp ,
+.Qq ip-address
+is the address of the server, and
+.Qq path
+is the path to the root filesystem on the server.
+If
+.Qq scheme
+is not specified,
+.Nm
+defaults to using NFS if the
+.Va root-path
+variable is in the
+.Qq Pa ip-address Ns :/ Ns Pa path
+form, otherwise TFTP is used.
+If no
+.Va root-path
+option is set in the DHCP response,
+.Nm
+defaults to using TFTP.
+.Pp
+.Nm
+defaults to a conservative 1024 byte NFS data packet size.
+This may be changed by setting the
+.Va nfs.read_size
+variable in
+.Pa /boot/loader.conf .
+Valid values range from 1024 to 16384 bytes.
+.Pp
+TFTP block size can be controlled by setting the
+.Va tftp.blksize
+variable in
+.Pa /boot/loader.conf .
+Valid values range from 8 to 9008 bytes.
+.Pp
+In all other respects,
+.Nm
+acts just like
+.Xr loader 7 .
+.Pp
+For further information on Intel's PXE specifications and Wired for
+Management (WfM) systems, see
+.Li http://www.intel.com/design/archives/wfm/ .
+.Sh SEE ALSO
+.Xr loader 7
diff --git a/usr/src/man/man7/rbac.7 b/usr/src/man/man7/rbac.7
new file mode 100644
index 0000000000..3e7f72e666
--- /dev/null
+++ b/usr/src/man/man7/rbac.7
@@ -0,0 +1,242 @@
+'\" te
+.\" Copyright (c) 2002, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH RBAC 7 "Jul 15, 2003"
+.SH NAME
+rbac, RBAC \- role-based access control
+.SH DESCRIPTION
+.sp
+.LP
+The addition of role-based access control (RBAC) to the Solaris operating
+environment gives developers the opportunity to deliver fine-grained security
+in new and modified applications. RBAC is an alternative to the all-or-nothing
+security model of traditional superuser-based systems. With RBAC, an
+administrator can assign privileged functions to specific user accounts (or
+special accounts called roles).
+.sp
+.LP
+There are two ways to give applications privileges:
+.RS +4
+.TP
+1.
+Administrators can assign special attributes such as setUID to application
+binaries (executable files).
+.RE
+.RS +4
+.TP
+2.
+Administrators can assign special attributes such as setUID to applications
+using execution profiles.
+.RE
+.sp
+.LP
+Special attribute assignment along with the theory behind RBAC is discussed in
+detail in "Role Based Access Control" chapter of the \fISystem Administration
+Guide: Security Services\fR. This chapter describes what authorizations are and
+how to code for them.
+.SS "Authorizations"
+.sp
+.LP
+An authorization is a unique string that represents a user's right to perform
+some operation or class of operations. Authorization definitions are stored in
+a database called \fBauth_attr\fR(5). For programming authorization checks,
+only the authorization name is significant.
+.sp
+.LP
+Some typical values in an \fBauth_attr\fR database are shown below.
+.sp
+.in +2
+.nf
+solaris.jobs.:::Cron and At Jobs::help=JobHeader.html
+solaris.jobs.grant:::Delegate Cron & At \e
+ Administration::help=JobsGrant.html
+solaris.jobs.admin:::Manage All Jobs::help=AuthJobsAdmin.html
+solaris.jobs.user:::Cron & At User::help=JobsUser.html
+.fi
+.in -2
+
+.sp
+.LP
+Authorization name strings ending with the \fBgrant\fR suffix are special
+authorizations that give a user the ability to delegate authorizations with the
+same prefix and functional area to other users.
+.SS "Creating Authorization Checks"
+.sp
+.LP
+To check authorizations, use the \fBchkauthattr\fR(3SECDB) library function,
+which verifies whether or not a user has a given authorization. The synopsis
+is:
+.sp
+.in +2
+.nf
+int chkauthattr(const char *authname, const char *username);
+.fi
+.in -2
+
+.sp
+.LP
+The \fBchkauthattr()\fR function checks the \fBpolicy.conf\fR(5),
+\fBuser_attr\fR(5), and \fBprof_attr\fR(5) databases in order for a match to
+the given authorization.
+.sp
+.LP
+If you are modifying existing code that tests for root UID, you should find the
+test in the code and replace it with the \fBchkauthattr()\fR function. A
+typical root UID check is shown in the first code segment below. An
+authorization check replacing it is shown in the second code segment; it uses
+the \fBsolaris.jobs.admin\fR authorization and a variable called
+\fBreal_login\fR representing the user.
+.LP
+\fBExample 1 \fRStandard root check
+.sp
+.in +2
+.nf
+ruid = getuid();
+
+if ((eflag || lflag || rflag) && argc == 1) {
+ if ((pwp = getpwnam(*argv)) == NULL)
+ crabort(INVALIDUSER);
+
+ if (ruid != 0) {
+ if (pwp->pw_uid != ruid)
+ crabort(NOTROOT);
+ else
+ pp = getuser(ruid);
+ } else
+ pp = *argv++;
+} else {
+.fi
+.in -2
+
+.LP
+\fBExample 2 \fRAuthorization check
+.sp
+.in +2
+.nf
+ruid = getuid();
+if ((pwp = getpwuid(ruid)) == NULL)
+ crabort(INVALIDUSER);
+
+strcpy(real_login, pwp->pw_name);
+
+if ((eflag || lflag || rflag) && argc == 1) {
+ if ((pwp = getpwnam(*argv)) == NULL)
+ crabort(INVALIDUSER);
+
+ if (!chkauthattr("solaris.jobs.admin", real_login)) {
+ if (pwp->pw_uid != ruid)
+ crabort(NOTROOT);
+ else
+ pp = getuser(ruid);
+ } else
+ pp = *argv++;
+} else {
+.fi
+.in -2
+
+.sp
+.LP
+For new applications, find an appropriate location for the test and use
+\fBchkauthattr()\fR as shown above. Typically the authorization check makes an
+access decision based on the identity of the calling user to determine if a
+privileged action (for example, a system call) should be taken on behalf of
+that user.
+.sp
+.LP
+Applications that perform a test to restrict who can perform their
+security-relevant functionality are generally \fBsetuid\fR to root. Programs
+that were written prior to RBAC and that are only available to the root user
+may not have such checks. In most cases, the kernel requires an effective user
+\fBID\fR of root to override policy enforcement. Therefore, authorization
+checking is most useful in programs that are \fBsetuid\fR to root.
+.sp
+.LP
+For instance, if you want to write a program that allows authorized users to
+set the system date, the command must be run with an effective user \fBID\fR of
+root. Typically, this means that the file modes for the file would be
+\fB-rwsr-xr-x\fR with root ownership.
+.sp
+.LP
+Use caution, though, when making programs \fBsetuid\fR to root. For example,
+the effective \fBUID\fR should be set to the real \fBUID\fR as early as
+possible in the program's initialization function. The effective \fBUID\fR can
+then be set back to root after the authorization check is performed and before
+the system call is made. On return from the system call, the effective UID
+should be set back to the real \fBUID\fR again to adhere to the principle of
+least privilege.
+.sp
+.LP
+Another consideration is that \fBLD_LIBRARY\fR path is ignored for setuid
+programs (see SECURITY section in \fBld.so.1\fR(1)) and that shell scripts must
+be modified to work properly when the effective and real \fBUID\fRs are
+different. For example, the \fB-p\fR flag in Bourne shell is required to avoid
+resetting the effective \fBUID\fR back to the real \fBUID\fR.
+.sp
+.LP
+Using an effective \fBUID\fR of root instead of the real \fBUID\fR requires
+extra care when writing shell scripts. For example, many shell scripts check to
+see if the user is root before executing their functionality. With RBAC, these
+shell scripts may be running with the effective \fBUID\fR of root and with a
+real \fBUID\fR of a user or role. Thus, the shell script should check
+\fBeuid\fR instead of \fBuid\fR. For example,
+.sp
+.in +2
+.nf
+WHO=`id | cut -f1 -d" "`
+if [ ! "$WHO" = "uid=0(root)" ]
+then
+ echo "$PROG: ERROR: you must be super-user to run this script."
+ exit 1
+fi
+.fi
+.in -2
+
+.sp
+.LP
+should be changed to
+.sp
+.in +2
+.nf
+WHO=`/usr/xpg4/bin/id -n -u`
+if [ ! "$WHO" = "root" ]
+then
+ echo "$PROG: ERROR: you are not authorized to run this script."
+ exit 1
+fi
+.fi
+.in -2
+
+.sp
+.LP
+Authorizations can be explicitly checked in shell scripts by checking the
+output of the \fBauths\fR(1) utility. For example,
+.sp
+.in +2
+.nf
+for auth in `auths | tr , " "` NOTFOUND
+do
+ [ "$auth" = "solaris.date" ] && break # authorization found
+done
+
+if [ "$auth" != "solaris.date" ]
+then
+ echo >&2 "$PROG: ERROR: you are not authorized to set the date"
+ exit 1
+fi
+.fi
+.in -2
+
+.SH SEE ALSO
+.sp
+.LP
+.BR ld.so.1 (1),
+.BR chkauthattr (3SECDB),
+.BR auth_attr (5),
+.BR policy.conf (5),
+.BR prof_attr (5),
+.BR user_attr (5)
+.sp
+.LP
+\fISystem Administration Guide: Security Services\fR
diff --git a/usr/src/man/man7/regex.7 b/usr/src/man/man7/regex.7
new file mode 100644
index 0000000000..99dd14afad
--- /dev/null
+++ b/usr/src/man/man7/regex.7
@@ -0,0 +1,1040 @@
+.\"
+.\" Sun Microsystems, Inc. gratefully acknowledges The Open Group for
+.\" permission to reproduce portions of its copyrighted documentation.
+.\" Original documentation from The Open Group can be obtained online at
+.\" http://www.opengroup.org/bookstore/.
+.\"
+.\" The Institute of Electrical and Electronics Engineers and The Open
+.\" Group, have given us permission to reprint portions of their
+.\" documentation.
+.\"
+.\" In the following statement, the phrase ``this text'' refers to portions
+.\" of the system documentation.
+.\"
+.\" Portions of this text are reprinted and reproduced in electronic form
+.\" in the SunOS Reference Manual, from IEEE Std 1003.1, 2004 Edition,
+.\" Standard for Information Technology -- Portable Operating System
+.\" Interface (POSIX), The Open Group Base Specifications Issue 6,
+.\" Copyright (C) 2001-2004 by the Institute of Electrical and Electronics
+.\" Engineers, Inc and The Open Group. In the event of any discrepancy
+.\" between these versions and the original IEEE and The Open Group
+.\" Standard, the original IEEE and The Open Group Standard is the referee
+.\" document. The original Standard can be obtained online at
+.\" http://www.opengroup.org/unix/online.html.
+.\"
+.\" This notice shall appear on any product containing this material.
+.\"
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.\"
+.\"
+.\" Copyright (c) 1992, X/Open Company Limited All Rights Reserved
+.\" Portions Copyright (c) 1999, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 2017 Nexenta Systems, Inc.
+.\"
+.Dd August 14, 2020
+.Dt REGEX 7
+.Os
+.Sh NAME
+.Nm regex
+.Nd internationalized basic and extended regular expression matching
+.Sh DESCRIPTION
+Regular Expressions
+.Pq REs
+provide a mechanism to select specific strings from a set of character strings.
+The Internationalized Regular Expressions described below differ from the Simple
+Regular Expressions described on the
+.Xr regexp 7
+manual page in the following ways:
+.Bl -bullet
+.It
+both Basic and Extended Regular Expressions are supported
+.It
+the Internationalization features -- character class, equivalence class, and
+multi-character collation -- are supported.
+.El
+.Pp
+The Basic Regular Expression
+.Pq BRE
+notation and construction rules described in the
+.Sx BASIC REGULAR EXPRESSIONS
+section apply to most utilities supporting regular expressions.
+Some utilities, instead, support the Extended Regular Expressions
+.Pq ERE
+described in the
+.Sx EXTENDED REGULAR EXPRESSIONS
+section; any exceptions for both cases are noted in the descriptions of the
+specific utilities using regular expressions.
+Both BREs and EREs are supported by the Regular Expression Matching interfaces
+.Xr regcomp 3C
+and
+.Xr regexec 3C .
+.Sh BASIC REGULAR EXPRESSIONS
+.Ss BREs Matching a Single Character
+A BRE ordinary character, a special character preceded by a backslash, or a
+period matches a single character.
+A bracket expression matches a single character or a single collating element.
+See
+.Sx RE Bracket Expression ,
+below.
+.Ss BRE Ordinary Characters
+An ordinary character is a BRE that matches itself: any character in the
+supported character set, except for the BRE special characters listed in
+.Sx BRE Special Characters ,
+below.
+.Pp
+The interpretation of an ordinary character preceded by a backslash
+.Pq Qq \e
+is undefined, except for:
+.Bl -enum
+.It
+the characters
+.Qq \&) ,
+.Qq \&( ,
+.Qq { ,
+and
+.Qq }
+.It
+the digits 1 to 9 inclusive
+.Po see
+.Sx BREs Matching Multiple Characters ,
+below
+.Pc
+.It
+a character inside a bracket expression.
+.El
+.Ss BRE Special Characters
+A BRE special character has special properties in certain contexts.
+Outside those contexts, or when preceded by a backslash, such a character will
+be a BRE that matches the special character itself.
+The BRE special characters and the contexts in which they have their special
+meaning are:
+.Bl -tag -width Ds
+.It Sy \&. \&[ \&\e
+The period, left-bracket, and backslash are special except when used in a
+bracket expression
+.Po see
+.Sx RE Bracket Expression ,
+below
+.Pc .
+An expression containing a
+.Qq \&[
+that is not preceded by a backslash and is not part of a bracket expression
+produces undefined results.
+.It Sy *
+The asterisk is special except when used:
+.Bl -bullet
+.It
+in a bracket expression
+.It
+as the first character of an entire BRE
+.Po after an initial
+.Qq ^ ,
+if any
+.Pc
+.It
+as the first character of a subexpression
+.Po after an initial
+.Qq ^ ,
+if any; see
+.Sx BREs Matching Multiple Characters ,
+below
+.Pc .
+.El
+.It Sy ^
+The circumflex is special when used:
+.Bl -bullet
+.It
+as an anchor
+.Po see
+.Sx BRE Expression Anchoring ,
+below
+.Pc .
+.It
+as the first character of a bracket expression
+.Po see
+.Sx RE Bracket Expression ,
+below
+.Pc .
+.El
+.It Sy $
+The dollar sign is special when used as an anchor.
+.El
+.Ss Periods in BREs
+A period
+.Pq Qq \&. ,
+when used outside a bracket expression, is a BRE that matches any character in
+the supported character set except NUL.
+.Ss RE Bracket Expression
+A bracket expression
+.Po an expression enclosed in square brackets,
+.Qq []
+.Pc
+is an RE that matches a single collating element contained in the non-empty set
+of collating elements represented by the bracket expression.
+.Pp
+The following rules and definitions apply to bracket expressions:
+.Bl -enum
+.It
+A
+.Em bracket expression
+is either a matching list expression or a non-matching list expression.
+It consists of one or more expressions: collating elements, collating symbols,
+equivalence classes, character classes, or range expressions
+.Pq see rule 7 below .
+Portable applications must not use range expressions, even though all
+implementations support them.
+The right-bracket
+.Pq Qq \&]
+loses its special meaning and represents itself in a bracket expression if it
+occurs first in the list
+.Po after an initial circumflex
+.Pq Qq ^ ,
+if any
+.Pc .
+Otherwise, it terminates the bracket expression, unless it appears in a
+collating symbol
+.Po such as
+.Qq [.].]
+.Pc
+or is the ending right-bracket for a collating symbol, equivalence class, or
+character class.
+.Pp
+The special characters
+.Qq \&. ,
+.Qq * ,
+.Qq \&[ ,
+.Qq \&\e
+.Pq period, asterisk, left-bracket and backslash, respectively
+lose their special meaning within a bracket expression.
+.Pp
+The character sequences
+.Qq [. ,
+.Qq [= ,
+.Qq [:
+.Pq left-bracket followed by a period, equals-sign, or colon
+are special inside a bracket expression and are used to delimit collating
+symbols, equivalence class expressions, and character class expressions.
+These symbols must be followed by a valid expression and the matching
+terminating sequence
+.Qq .] ,
+.Qq =]
+or
+.Qq :] ,
+as described in the following items.
+.It
+A
+.Em matching list expression
+specifies a list that matches any one of the expressions represented in the
+list.
+The first character in the list must not be the circumflex.
+For example,
+.Qq [abc]
+is an RE that matches any of the characters
+.Qq a ,
+.Qq b
+or
+.Qq c .
+.It
+A
+.Em non-matching list expression
+begins with a circumflex
+.Pq Qq ^ ,
+and specifies a list that matches any character or collating element except for
+the expressions represented in the list after the leading circumflex.
+For example,
+.Qq [^abc]
+is an RE that matches any character or collating element except the characters
+.Qq a ,
+.Qq b ,
+or
+.Qq c .
+The circumflex will have this special meaning only when it occurs first in the
+list, immediately following the left-bracket.
+.It
+A
+.Em collating symbol
+is a collating element enclosed within bracket-period
+.Pq Qq [..]
+delimiters.
+Multi-character collating elements must be represented as collating symbols when
+it is necessary to distinguish them from a list of the individual characters
+that make up the multi-character collating element.
+For example, if the string
+.Qq ch
+is a collating element in the current collation sequence with the associated
+collating symbol
+.Qq Aq ch ,
+the expression
+.Qq [[.ch.]]
+will be treated as an RE matching the character sequence
+.Qq ch ,
+while
+.Qq [ch]
+will be treated as an RE matching
+.Qq c
+or
+.Qq h .
+Collating symbols will be recognized only inside bracket expressions.
+This implies that the RE
+.Qq [[.ch.]]*c
+matches the first to fifth character in the string
+.Qq chchch.
+If the string is not a collating element in the current collating sequence
+definition, or if the collating element has no characters associated with it,
+the symbol will be treated as an invalid expression.
+.It
+An
+.Em equivalence class expression
+represents the set of collating elements belonging to an equivalence class.
+Only primary equivalence classes will be recognised.
+The class is expressed by enclosing any one of the collating elements in the
+equivalence class within bracket-equal
+.Pq Qq [==]
+delimiters.
+For example, if
+.Qq a
+and
+.Qq b
+belong to the same equivalence class, then
+.Qq [[=a=]b] ,
+.Qq [[==]a]
+and
+.Qq [[==]b]
+will each be equivalent to
+.Qq [ab] .
+If the collating element does not belong to an equivalence class, the
+equivalence class expression will be treated as a
+.Em collating symbol .
+.It
+A
+.Em character class expression
+represents the set of characters belonging to a character class, as defined in
+the
+.Ev LC_CTYPE
+category in the current locale.
+All character classes specified in the current locale will be recognized.
+A character class expression is expressed as a character class name enclosed
+within bracket-colon
+.Pq Qq [::]
+delimiters.
+.Pp
+The following character class expressions are supported in all locales:
+.Bl -column "[:alnum:]" "[:cntrl:]" "[:lower:]" "[:xdigit:]"
+.It [:alnum:] Ta [:cntrl:] Ta [:lower:] Ta [:space:]
+.It [:alpha:] Ta [:digit:] Ta [:print:] Ta [:upper:]
+.It [:blank:] Ta [:graph:] Ta [:punct:] Ta [:xdigit:]
+.El
+.Pp
+In addition, character class expressions of the form
+.Qq [:name:]
+are recognized in those locales where the
+.Em name
+keyword has been given a
+.Em charclass
+definition in the
+.Ev LC_CTYPE
+category.
+.It
+A
+.Em range expression
+represents the set of collating elements that fall between two elements in the
+current collation sequence, inclusively.
+It is expressed as the starting point and the ending point separated by a hyphen
+.Pq Qq - .
+.Pp
+Range expressions must not be used in portable applications because their
+behavior is dependent on the collating sequence.
+Ranges will be treated according to the current collating sequence, and include
+such characters that fall within the range based on that collating sequence,
+regardless of character values.
+This, however, means that the interpretation will differ depending on collating
+sequence.
+If, for instance, one collating sequence defines as a variant of
+.Qq a ,
+while another defines it as a letter following
+.Qq z ,
+then the expression
+.Qq [-z]
+is valid in the first language and invalid in the second.
+.sp
+In the following, all examples assume the collation sequence specified for the
+POSIX locale, unless another collation sequence is specifically defined.
+.Pp
+The starting range point and the ending range point must be a collating element
+or collating symbol.
+An equivalence class expression used as a starting or ending point of a range
+expression produces unspecified results.
+An equivalence class can be used portably within a bracket expression, but only
+outside the range.
+For example, the unspecified expression
+.Qq [[=e=]-f]
+should be given as
+.Qq [[=e=]e-f] .
+The ending range point must collate equal to or higher than the starting range
+point; otherwise, the expression will be treated as invalid.
+The order used is the order in which the collating elements are specified in the
+current collation definition.
+One-to-many mappings
+.Po see
+.Xr locale 7
+.Pc
+will not be performed.
+For example, assuming that the character
+.Qq eszet
+is placed in the collation sequence after
+.Qq r
+and
+.Qq s ,
+but before
+.Qq t ,
+and that it maps to the sequence
+.Qq ss
+for collation purposes, then the expression
+.Qq [r-s]
+matches only
+.Qq r
+and
+.Qq s ,
+but the expression
+.Qq [s-t]
+matches
+.Qq s ,
+.Qq beta ,
+or
+.Qq t .
+.Pp
+The interpretation of range expressions where the ending range point is also
+the starting range point of a subsequent range expression
+.Po for instance
+.Qq [a-m-o]
+.Pc
+is undefined.
+.Pp
+The hyphen character will be treated as itself if it occurs first
+.Po after an initial
+.Qq ^ ,
+if any
+.Pc
+or last in the list, or as an ending range point in a range expression.
+As examples, the expressions
+.Qq [-ac]
+and
+.Qq [ac-]
+are equivalent and match any of the characters
+.Qq a ,
+.Qq c ,
+or
+.Qq -;
+.Qq [^-ac]
+and
+.Qq [^ac-]
+are equivalent and match any characters except
+.Qq a ,
+.Qq c ,
+or
+.Qq -;
+the expression
+.Qq [%--]
+matches any of the characters between
+.Qq %
+and
+.Qq -
+inclusive; the expression
+.Qq [--@]
+matches any of the characters between
+.Qq -
+and
+.Qq @
+inclusive; and the expression
+.Qq [a--@]
+is invalid, because the letter
+.Qq a
+follows the symbol
+.Qq -
+in the POSIX locale.
+To use a hyphen as the starting range point, it must either come first in the
+bracket expression or be specified as a collating symbol, for example:
+.Qq [][.-.]-0] ,
+which matches either a right bracket or any character or collating element that
+collates between hyphen and 0, inclusive.
+.Pp
+If a bracket expression must specify both
+.Qq -
+and
+.Qq \&] ,
+the
+.Qq \&]
+must be placed first
+.Po after the
+.Qq ^ ,
+if any
+.Pc
+and the
+.Qq -
+last within the bracket expression.
+.El
+.Pp
+Note: Latin-1 characters such as
+.Qq \(ga
+or
+.Qq ^
+are not printable in some locales, for example, the
+.Em ja
+locale.
+.Ss BREs Matching Multiple Characters
+The following rules can be used to construct BREs matching multiple characters
+from BREs matching a single character:
+.Bl -enum
+.It
+The concatenation of BREs matches the concatenation of the strings matched
+by each component of the BRE.
+.It
+A
+.Em subexpression
+can be defined within a BRE by enclosing it between the character pairs
+.Qq \e(
+and
+.Qq \e) .
+Such a subexpression matches whatever it would have matched without the
+.Qq \e(
+and
+.Qq \e) ,
+except that anchoring within subexpressions is optional behavior; see
+.Sx BRE Expression Anchoring ,
+below.
+Subexpressions can be arbitrarily nested.
+.It
+The
+.Em back-reference
+expression
+.Qq \e Ns Em n
+matches the same
+.Pq possibly empty
+string of characters as was matched by a subexpression enclosed between
+.Qq \e(
+and
+.Qq \e)
+preceding the
+.Qq \e Ns Em n .
+The character
+.Qq Em n
+must be a digit from 1 to 9 inclusive,
+.Em n Ns th
+subexpression
+.Po the one that begins with the
+.Em n Ns th
+.Qq \e(
+and ends with the corresponding paired
+.Qq \e)
+.Pc .
+The expression is invalid if less than
+.Em n
+subexpressions precede the
+.Qq \e Ns Em n .
+For example, the expression
+.Qq ^\e(.*\e)\e1$
+matches a line consisting of two adjacent appearances of the same string, and
+the expression
+.Qq \e(a\e)*\e1
+fails to match
+.Qq a .
+The limit of nine back-references to subexpressions in the RE is based on the
+use of a single digit identifier.
+This does not imply that only nine subexpressions are allowed in REs.
+.It
+When a BRE matching a single character, a subexpression or a back-reference is
+followed by the special character asterisk
+.Pq Qq * ,
+together with that asterisk it matches what zero or more consecutive occurrences
+of the BRE would match.
+For example,
+.Qq [ab]*
+and
+.Qq [ab][ab]
+are equivalent when matching the string
+.Qq ab .
+.It
+When a BRE matching a single character, a subexpression, or a back-reference
+is followed by an
+.Em interval expression
+of the format
+.Qq \e{ Ns Em m Ns \e} ,
+.Qq \e{ Ns Em m Ns ,\e}
+or
+.Qq \e{ Ns Em m Ns \&, Ns Em n Ns \e} ,
+together with that interval expression it matches what repeated consecutive
+occurrences of the BRE would match.
+The values of
+.Em m
+and
+.Em n
+will be decimal integers in the range 0 <=
+.Em m
+<=
+.Em n
+<=
+.Dv BRE_DUP_MAX ,
+where
+.Em m
+specifies the exact or minimum number of occurrences and
+.Em n
+specifies the maximum number of occurrences.
+The expression
+.Qq \e{ Ns Em m Ns \e}
+matches exactly
+.Em m
+occurrences of the preceding BRE,
+.Qq \e{ Ns Em m Ns ,\e}
+matches at least
+.Em m
+occurrences and
+.Qq \e{ Ns Em m Ns \&, Ns Em n Ns \e}
+matches any number of occurrences between
+.Em m
+and
+.Em n ,
+inclusive.
+.Pp
+For example, in the string
+.Qq abababccccccd ,
+the BRE
+.Qq c\e{3\e}
+is matched by characters seven to nine, the BRE
+.Qq \e(ab\e)\e{4,\e}
+is not matched at all and the BRE
+.Qq c\e{1,3\e}d
+is matched by characters ten to thirteen.
+.El
+.Pp
+The behavior of multiple adjacent duplication symbols
+.Po Qq *
+and intervals
+.Pc
+produces undefined results.
+.Ss BRE Precedence
+The order of precedence is as shown in the following table:
+.Bl -column "BRE Precedence (from high to low)" ""
+.It Sy BRE Precedence (from high to low) Ta
+.It collation-related bracket symbols Ta [= =] [: :] [. .]
+.It escaped characters Ta \e< Ns Em special character Ns >
+.It bracket expression Ta [ ]
+.It subexpressions/back-references Ta \e( \e) \e Ns Em n
+.It single-character-BRE duplication Ta * \e{ Ns Em m Ns \&, Ns Em n Ns \e}
+.It concatenation Ta
+.It anchoring Ta ^ $
+.El
+.Ss BRE Expression Anchoring
+A BRE can be limited to matching strings that begin or end a line; this is
+called
+.Em anchoring .
+The circumflex and dollar sign special characters will be considered BRE anchors
+in the following contexts:
+.Bl -enum
+.It
+A circumflex
+.Pq Qq ^
+is an anchor when used as the first character of an entire BRE.
+The implementation may treat circumflex as an anchor when used as the first
+character of a subexpression.
+The circumflex will anchor the expression to the beginning of a string;
+only sequences starting at the first character of a string will be matched by
+the BRE.
+For example, the BRE
+.Qq ^ab
+matches
+.Qq ab
+in the string
+.Qq abcdef ,
+but fails to match in the string
+.Qq cdefab .
+A portable BRE must escape a leading circumflex in a subexpression to match a
+literal circumflex.
+.It
+A dollar sign
+.Pq Qq $
+is an anchor when used as the last character of an entire BRE.
+The implementation may treat a dollar sign as an anchor when used as the last
+character of a subexpression.
+The dollar sign will anchor the expression to the end of the string being
+matched; the dollar sign can be said to match the end-of-string following the
+last character.
+.It
+A BRE anchored by both
+.Qq ^
+and
+.Qq $
+matches only an entire string.
+For example, the BRE
+^abcdef$
+matches strings consisting only of
+.Qq abcdef .
+.It
+.Qq ^
+and
+.Qq $
+are not special in subexpressions.
+.El
+.Pp
+Note: The Solaris implementation does not support anchoring in BRE
+subexpressions.
+.Sh EXTENDED REGULAR EXPRESSIONS
+The rules specified for BREs apply to Extended Regular Expressions
+.Pq EREs
+with the following exceptions:
+.Bl -bullet
+.It
+The characters
+.Qq | ,
+.Qq + ,
+and
+.Qq \&?
+have special meaning, as defined below.
+.It
+The
+.Qq {
+and
+.Qq }
+characters, when used as the duplication operator, are not preceded by
+backslashes.
+The constructs
+.Qq \e{
+and
+.Qq \e}
+simply match the characters
+.Qq {
+and
+.Qq }, respectively.
+.It
+The back reference operator is not supported.
+.It
+Anchoring
+.Pq Qq ^$
+is supported in subexpressions.
+.El
+.Ss EREs Matching a Single Character
+An ERE ordinary character, a special character preceded by a backslash, or a
+period matches a single character.
+A bracket expression matches a single character or a single collating element.
+An
+.Em ERE matching a single character
+enclosed in parentheses matches the same as the ERE without parentheses would
+have matched.
+.Ss ERE Ordinary Characters
+An
+.Em ordinary character
+is an ERE that matches itself.
+An ordinary character is any character in the supported character set, except
+for the ERE special characters listed in
+.Sx ERE Special Characters
+below.
+The interpretation of an ordinary character preceded by a backslash
+.Pq Qq \&\e
+is undefined.
+.Ss ERE Special Characters
+An
+.Em ERE special character
+has special properties in certain contexts.
+Outside those contexts, or when preceded by a backslash, such a character is an
+ERE that matches the special character itself.
+The extended regular expression special characters and the contexts in which
+they have their special meaning are:
+.Bl -tag -width Ds
+.It Sy \&. \&[ \&\e \&(
+The period, left-bracket, backslash, and left-parenthesis are special except
+when used in a bracket expression
+.Po see
+.Sx RE Bracket Expression ,
+above
+.Pc .
+Outside a bracket expression, a left-parenthesis immediately followed by a
+right-parenthesis produces undefined results.
+.It Sy \&)
+The right-parenthesis is special when matched with a preceding
+left-parenthesis, both outside a bracket expression.
+.It Sy * + \&? {
+The asterisk, plus-sign, question-mark, and left-brace are special except when
+used in a bracket expression
+.Po see
+.Sx RE Bracket Expression ,
+above
+.Pc .
+Any of the following uses produce undefined results:
+.Bl -bullet
+.It
+if these characters appear first in an ERE, or immediately following a
+vertical-line, circumflex or left-parenthesis
+.It
+if a left-brace is not part of a valid interval expression.
+.El
+.It Sy \&|
+The vertical-line is special except when used in a bracket expression
+.Po see
+.Sx RE Bracket Expression ,
+above
+.Pc .
+A vertical-line appearing first or last in an ERE, or immediately following a
+vertical-line or a left-parenthesis, or immediately preceding a
+right-parenthesis, produces undefined results.
+.It Sy ^
+The circumflex is special when used:
+.Bl -bullet
+.It
+as an anchor
+.Po see
+.Sx ERE Expression Anchoring ,
+below
+.Pc .
+.It
+as the first character of a bracket expression
+.Po see
+.Sx RE Bracket Expression ,
+above
+.Pc .
+.El
+.It Sy $
+The dollar sign is special when used as an anchor.
+.El
+.Ss Periods in EREs
+A period
+.Pq Qq \&. ,
+when used outside a bracket expression, is an ERE that matches any character in
+the supported character set except NUL.
+.Ss ERE Bracket Expression
+The rules for ERE Bracket Expressions are the same as for Basic Regular
+Expressions; see
+.Sx RE Bracket Expression ,
+above.
+.Ss EREs Matching Multiple Characters
+The following rules will be used to construct EREs matching multiple characters
+from EREs matching a single character:
+.Bl -enum
+.It
+A
+.Em concatenation of EREs
+matches the concatenation of the character sequences matched by each component
+of the ERE.
+A concatenation of EREs enclosed in parentheses matches whatever the
+concatenation without the parentheses matches.
+For example, both the ERE
+.Qq cd
+and the ERE
+.Qq (cd)
+are matched by the third and fourth character of the string
+.Qq abcdefabcdef .
+.It
+When an ERE matching a single character or an ERE enclosed in parentheses is
+followed by the special character plus-sign
+.Pq Qq + ,
+together with that plus-sign it matches what one or more consecutive occurrences
+of the ERE would match.
+For example, the ERE
+.Qq b+(bc)
+matches the fourth to seventh characters in the string
+.Qq acabbbcde ;
+.Qq [ab]+
+and
+.Qq [ab][ab]*
+are equivalent.
+.It
+When an ERE matching a single character or an ERE enclosed in parentheses is
+followed by the special character asterisk
+.Pq Qq * ,
+together with that asterisk it matches what zero or more consecutive occurrences
+of the ERE would match.
+For example, the ERE
+.Qq b*c
+matches the first character in the string
+.Qq cabbbcde ,
+and the ERE
+.Qq b*cd
+matches the third to seventh characters in the string
+.Qq cabbbcdebbbbbbcdbc .
+And,
+.Qq [ab]*
+and
+.Qq [ab][ab]
+are equivalent when matching the string
+.Qq ab .
+.It
+When an ERE matching a single character or an ERE enclosed in parentheses is
+followed by the special character question-mark
+.Pq Qq \&? ,
+together with that question-mark it matches what zero or one consecutive
+occurrences of the ERE would match.
+For example, the ERE
+.Qq b?c
+matches the second character in the string
+.Qq acabbbcde .
+.It
+When an ERE matching a single character or an ERE enclosed in parentheses is
+followed by an
+.Em interval expression
+of the format
+.Qq { Ns Em m Ns } ,
+.Qq { Ns Em m Ns ,}
+or
+.Qq { Ns Em m Ns \&, Ns Em n Ns } ,
+together with that interval expression it matches what repeated consecutive
+occurrences of the ERE would match.
+The values of
+.Em m
+and
+.Em n
+will be decimal integers in the range 0 <=
+.Em m
+<=
+.Em n
+<=
+.Dv RE_DUP_MAX ,
+where
+.Em m
+specifies the exact or minimum number of occurrences and
+.Em n
+specifies the maximum number of occurrences.
+The expression
+.Qq { Ns Em m Ns }
+matches exactly
+.Em m
+occurrences of the preceding ERE,
+.Qq { Ns Em m Ns ,}
+matches at least
+.Em m
+occurrences and
+.Qq { Ns m Ns \&, Ns Em n Ns }
+matches any number of occurrences between
+.Em m
+and
+.Em n ,
+inclusive.
+.El
+.Pp
+For example, in the string
+.Qq abababccccccd
+the ERE
+.Qq c{3}
+is matched by characters seven to nine and the ERE
+.Qq (ab){2,}
+is matched by characters one to six.
+.Pp
+The behavior of multiple adjacent duplication symbols
+.Po
+.Qq + ,
+.Qq * ,
+.Qq \&?
+and intervals
+.Pc
+produces undefined results.
+.Ss ERE Alternation
+Two EREs separated by the special character vertical-line
+.Pq Qq |
+match a string that is matched by either.
+For example, the ERE
+.Qq a((bc)|d)
+matches the string
+.Qq abc
+and the string
+.Qq ad .
+Single characters, or expressions matching single characters, separated by the
+vertical bar and enclosed in parentheses, will be treated as an ERE matching a
+single character.
+.Ss ERE Precedence
+The order of precedence will be as shown in the following table:
+.Bl -column "ERE Precedence (from high to low)" ""
+.It Sy ERE Precedence (from high to low) Ta
+.It collation-related bracket symbols Ta [= =] [: :] [. .]
+.It escaped characters Ta \e< Ns Em special character Ns >
+.It bracket expression Ta \&[ \&]
+.It grouping Ta \&( \&)
+.It single-character-ERE duplication Ta * + \&? { Ns Em m Ns \&, Ns Em n Ns}
+.It concatenation Ta
+.It anchoring Ta ^ $
+.It alternation Ta |
+.El
+.Pp
+For example, the ERE
+.Qq abba|cde
+matches either the string
+.Qq abba
+or the string
+.Qq cde
+.Po rather than the string
+.Qq abbade
+or
+.Qq abbcde ,
+because concatenation has a higher order of precedence than alternation
+.Pc .
+.Ss ERE Expression Anchoring
+An ERE can be limited to matching strings that begin or end a line; this is
+called
+.Em anchoring .
+The circumflex and dollar sign special characters are considered ERE anchors
+when used anywhere outside a bracket expression.
+This has the following effects:
+.Bl -enum
+.It
+A circumflex
+.Pq Qq ^
+outside a bracket expression anchors the expression or subexpression it begins
+to the beginning of a string; such an expression or subexpression can match only
+a sequence starting at the first character of a string.
+For example, the EREs
+.Qq ^ab
+and
+.Qq (^ab)
+match
+.Qq ab
+in the string
+.Qq abcdef ,
+but fail to match in the string
+.Qq cdefab ,
+and the ERE
+.Qq a^b
+is valid, but can never match because the
+.Qq a
+prevents the expression
+.Qq ^b
+from matching starting at the first character.
+.It
+A dollar sign
+.Pq Qq $
+outside a bracket expression anchors the expression or subexpression it ends to
+the end of a string; such an expression or subexpression can match only a
+sequence ending at the last character of a string.
+For example, the EREs
+.Qq ef$
+and
+.Qq (ef$)
+match
+.Qq ef
+in the string
+.Qq abcdef ,
+but fail to match in the string
+.Qq cdefab ,
+and the ERE
+.Qq e$f
+is valid, but can never match because the
+.Qq f
+prevents the expression
+.Qq e$
+from matching ending at the last character.
+.El
+.Sh SEE ALSO
+.Xr localedef 1 ,
+.Xr regcomp 3C ,
+.Xr attributes 7 ,
+.Xr environ 7 ,
+.Xr locale 7 ,
+.Xr regexp 7
diff --git a/usr/src/man/man7/regexp.7 b/usr/src/man/man7/regexp.7
new file mode 100644
index 0000000000..337b6592a5
--- /dev/null
+++ b/usr/src/man/man7/regexp.7
@@ -0,0 +1,750 @@
+.\"
+.\" Sun Microsystems, Inc. gratefully acknowledges The Open Group for
+.\" permission to reproduce portions of its copyrighted documentation.
+.\" Original documentation from The Open Group can be obtained online at
+.\" http://www.opengroup.org/bookstore/.
+.\"
+.\" The Institute of Electrical and Electronics Engineers and The Open
+.\" Group, have given us permission to reprint portions of their
+.\" documentation.
+.\"
+.\" In the following statement, the phrase ``this text'' refers to portions
+.\" of the system documentation.
+.\"
+.\" Portions of this text are reprinted and reproduced in electronic form
+.\" in the SunOS Reference Manual, from IEEE Std 1003.1, 2004 Edition,
+.\" Standard for Information Technology -- Portable Operating System
+.\" Interface (POSIX), The Open Group Base Specifications Issue 6,
+.\" Copyright (C) 2001-2004 by the Institute of Electrical and Electronics
+.\" Engineers, Inc and The Open Group. In the event of any discrepancy
+.\" between these versions and the original IEEE and The Open Group
+.\" Standard, the original IEEE and The Open Group Standard is the referee
+.\" document. The original Standard can be obtained online at
+.\" http://www.opengroup.org/unix/online.html.
+.\"
+.\" This notice shall appear on any product containing this material.
+.\"
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.\"
+.\"
+.\" Copyright 1989 AT&T
+.\" Portions Copyright (c) 1992, X/Open Company Limited All Rights Reserved
+.\" Copyright (c) 2002, Sun Microsystems, Inc. All Rights Reserved.
+.\"
+.TH REGEXP 7 "May 20, 2002"
+.SH NAME
+regexp, compile, step, advance \- simple regular expression compile and match
+routines
+.SH SYNOPSIS
+.LP
+.nf
+#define INIT \fIdeclarations\fR
+#define GETC(void) \fIgetc code\fR
+#define PEEKC(void) \fIpeekc code\fR
+#define UNGETC(void) \fIungetc code\fR
+#define RETURN(\fIptr\fR) \fIreturn code\fR
+#define ERROR(\fIval\fR) \fIerror code\fR
+
+extern char *\fIloc1\fR, *\fIloc2\fR, *\fIlocs\fR;
+
+#include <regexp.h>
+
+\fBchar *\fR\fBcompile\fR(\fBchar *\fR\fIinstring\fR, \fBchar *\fR\fIexpbuf\fR, \fBconst char *\fR\fIendfug\fR, \fBint\fR \fIeof\fR);
+.fi
+
+.LP
+.nf
+\fBint\fR \fBstep\fR(\fBconst char *\fR\fIstring\fR, \fBconst char *\fR\fIexpbuf\fR);
+.fi
+
+.LP
+.nf
+\fBint\fR \fBadvance\fR(\fBconst char *\fR\fIstring\fR, \fBconst char *\fR\fIexpbuf\fR);
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+Regular Expressions (REs) provide a mechanism to select specific strings from a
+set of character strings. The Simple Regular Expressions described below differ
+from the Internationalized Regular Expressions described on the
+\fBregex\fR(7) manual page in the following ways:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+only Basic Regular Expressions are supported
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+the Internationalization features\(emcharacter class, equivalence class, and
+multi-character collation\(emare not supported.
+.RE
+.sp
+.LP
+The functions \fBstep()\fR, \fBadvance()\fR, and \fBcompile()\fR are general
+purpose regular expression matching routines to be used in programs that
+perform regular expression matching. These functions are defined by the
+\fB<regexp.h>\fR header.
+.sp
+.LP
+The functions \fBstep()\fR and \fBadvance()\fR do pattern matching given a
+character string and a compiled regular expression as input.
+.sp
+.LP
+The function \fBcompile()\fR takes as input a regular expression as defined
+below and produces a compiled expression that can be used with \fBstep()\fR or
+\fBadvance()\fR.
+.SS "Basic Regular Expressions"
+.sp
+.LP
+A regular expression specifies a set of character strings. A member of this set
+of strings is said to be matched by the regular expression. Some characters
+have special meaning when used in a regular expression; other characters stand
+for themselves.
+.sp
+.LP
+The following \fIone-character\fR \fIRE\fRs match a \fIsingle\fR character:
+.sp
+.ne 2
+.na
+\fB1.1\fR
+.ad
+.RS 7n
+An ordinary character ( \fInot\fR one of those discussed in 1.2 below) is a
+one-character RE that matches itself.
+.RE
+
+.sp
+.ne 2
+.na
+\fB1.2\fR
+.ad
+.RS 7n
+A backslash (\fB\|\e\fR\|) followed by any special character is a one-character
+RE that matches the special character itself. The special characters are:
+.sp
+.ne 2
+.na
+\fBa.\fR
+.ad
+.RS 6n
+\fB\&.\fR, \fB*\fR, \fB[\fR\|, and \fB\e\fR (period, asterisk, left square
+bracket, and backslash, respectively), which are always special, \fIexcept\fR
+when they appear within square brackets (\fB[\|]\fR; see 1.4 below).
+.RE
+
+.sp
+.ne 2
+.na
+\fBb.\fR
+.ad
+.RS 6n
+^ (caret or circumflex), which is special at the \fIbeginning\fR of an
+\fIentire\fR RE (see 4.1 and 4.3 below), or when it immediately follows the
+left of a pair of square brackets (\fB[\|]\fR) (see 1.4 below).
+.RE
+
+.sp
+.ne 2
+.na
+\fBc.\fR
+.ad
+.RS 6n
+\fB$\fR (dollar sign), which is special at the \fBend\fR of an \fIentire\fR RE
+(see 4.2 below).
+.RE
+
+.sp
+.ne 2
+.na
+\fBd.\fR
+.ad
+.RS 6n
+The character used to bound (that is, delimit) an entire RE, which is special
+for that RE (for example, see how slash (\fB/\fR) is used in the \fBg\fR
+command, below.)
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB1.3\fR
+.ad
+.RS 7n
+A period (\fB\&.\fR) is a one-character RE that matches any character except
+new-line.
+.RE
+
+.sp
+.ne 2
+.na
+\fB1.4\fR
+.ad
+.RS 7n
+A non-empty string of characters enclosed in square brackets (\fB[\|]\fR) is a
+one-character RE that matches \fIany one\fR character in that string. If,
+however, the first character of the string is a circumflex (^), the
+one-character RE matches any character \fIexcept\fR new-line and the remaining
+characters in the string. The ^ has this special meaning \fIonly\fR if it
+occurs first in the string. The minus (\fB-\fR) may be used to indicate a range
+of consecutive characters; for example, \fB[0-9]\fR is equivalent to
+\fB[0123456789]\fR. The \fB-\fR loses this special meaning if it occurs first
+(after an initial ^, if any) or last in the string. The right square bracket
+(\fB]\fR) does not terminate such a string when it is the first character
+within it (after an initial ^, if any); for example, \fB[\|]a-f]\fR matches
+either a right square bracket (\fB]\fR) or one of the \fBASCII\fR letters
+\fBa\fR through \fBf\fR inclusive. The four characters listed in 1.2.a above
+stand for themselves within such a string of characters.
+.RE
+
+.sp
+.LP
+The following rules may be used to construct REs from one-character REs:
+.sp
+.ne 2
+.na
+\fB2.1\fR
+.ad
+.RS 7n
+A one-character RE is a RE that matches whatever the one-character RE matches.
+.RE
+
+.sp
+.ne 2
+.na
+\fB2.2\fR
+.ad
+.RS 7n
+A one-character RE followed by an asterisk (\fB*\fR) is a RE that matches
+\fB0\fR or more occurrences of the one-character RE. If there is any choice,
+the longest leftmost string that permits a match is chosen.
+.RE
+
+.sp
+.ne 2
+.na
+\fB2.3\fR
+.ad
+.RS 7n
+A one-character RE followed by \fB\e{\fR\fIm\fR\fB\e}\fR,
+\fB\e{\fR\fIm,\fR\fB\e}\fR, or \fB\e{\fR\fIm,n\fR\fB\e}\fR is a RE that matches
+a \fIrange\fR of occurrences of the one-character RE. The values of \fIm\fR and
+\fIn\fR must be non-negative integers less than 256; \fB\e{\fR\fIm\fR\fB\e}\fR
+matches \fIexactly\fR \fIm\fR occurrences; \fB\e{\fR\fIm,\fR\fB\e}\fR matches
+\fIat least\fR \fIm\fR occurrences; \fB\e{\fR\fIm,n\fR\fB\e}\fR matches \fIany
+number\fR of occurrences \fIbetween\fR \fIm\fR and \fIn\fR inclusive. Whenever
+a choice exists, the RE matches as many occurrences as possible.
+.RE
+
+.sp
+.ne 2
+.na
+\fB2.4\fR
+.ad
+.RS 7n
+The concatenation of REs is a RE that matches the concatenation of the strings
+matched by each component of the RE.
+.RE
+
+.sp
+.ne 2
+.na
+\fB2.5\fR
+.ad
+.RS 7n
+A RE enclosed between the character sequences \fB\e\|(\fR and \fB\e\|)\fR is a
+RE that matches whatever the unadorned RE matches.
+.RE
+
+.sp
+.ne 2
+.na
+\fB2.6\fR
+.ad
+.RS 7n
+The expression \fB\e\|\fR\fIn\fR matches the same string of characters as was
+matched by an expression enclosed between \fB\e\|(\fR and \fB\e\|)\fR
+\fIearlier\fR in the same RE. Here \fIn\fR is a digit; the sub-expression
+specified is that beginning with the \fIn\fR-th occurrence of \fB\|\e\|(\fR
+counting from the left. For example, the expression
+^\|\fB\e\|(\|.\|*\|\e\|)\|\e\|1\|$\fR matches a line consisting of two repeated
+appearances of the same string.
+.RE
+
+.sp
+.LP
+An RE may be constrained to match words.
+.sp
+.ne 2
+.na
+\fB3.1\fR
+.ad
+.RS 7n
+\fB\e\|<\fR constrains a RE to match the beginning of a string or to follow a
+character that is not a digit, underscore, or letter. The first character
+matching the RE must be a digit, underscore, or letter.
+.RE
+
+.sp
+.ne 2
+.na
+\fB3.2\fR
+.ad
+.RS 7n
+\fB\e\|>\fR constrains a RE to match the end of a string or to precede a
+character that is not a digit, underscore, or letter.
+.RE
+
+.sp
+.LP
+An \fIentire\fR \fIRE\fR may be constrained to match only an initial segment or
+final segment of a line (or both).
+.sp
+.ne 2
+.na
+\fB4.1\fR
+.ad
+.RS 7n
+A circumflex (^) at the beginning of an entire RE constrains that RE to match
+an \fIinitial\fR segment of a line.
+.RE
+
+.sp
+.ne 2
+.na
+\fB4.2\fR
+.ad
+.RS 7n
+A dollar sign (\fB$\fR) at the end of an entire RE constrains that RE to match
+a \fIfinal\fR segment of a line.
+.RE
+
+.sp
+.ne 2
+.na
+\fB4.3\fR
+.ad
+.RS 7n
+The construction ^\fIentire RE\fR\|\fB$\fR constrains the entire RE to match
+the entire line.
+.RE
+
+.sp
+.LP
+The null RE (for example, \fB//\|\fR) is equivalent to the last RE encountered.
+.SS "Addressing with REs"
+.sp
+.LP
+Addresses are constructed as follows:
+.RS +4
+.TP
+1.
+The character "\fB\&.\fR" addresses the current line.
+.RE
+.RS +4
+.TP
+2.
+The character "\fB$\fR" addresses the last line of the buffer.
+.RE
+.RS +4
+.TP
+3.
+A decimal number \fIn\fR addresses the \fIn\fR-th line of the buffer.
+.RE
+.RS +4
+.TP
+4.
+\fI\&'x\fR addresses the line marked with the mark name character \fIx\fR,
+which must be an ASCII lower-case letter (\fBa\fR-\fBz\fR). Lines are marked
+with the \fBk\fR command described below.
+.RE
+.RS +4
+.TP
+5.
+A RE enclosed by slashes (\fB/\fR) addresses the first line found by
+searching \fIforward\fR from the line \fIfollowing\fR the current line toward
+the end of the buffer and stopping at the first line containing a string
+matching the RE. If necessary, the search wraps around to the beginning of the
+buffer and continues up to and including the current line, so that the entire
+buffer is searched.
+.RE
+.RS +4
+.TP
+6.
+A RE enclosed in question marks (\fB?\fR) addresses the first line found by
+searching \fIbackward\fR from the line \fIpreceding\fR the current line toward
+the beginning of the buffer and stopping at the first line containing a string
+matching the RE. If necessary, the search wraps around to the end of the buffer
+and continues up to and including the current line.
+.RE
+.RS +4
+.TP
+7.
+An address followed by a plus sign (\fB+\fR) or a minus sign (\fB-\fR)
+followed by a decimal number specifies that address plus (respectively minus)
+the indicated number of lines. A shorthand for .+5 is .5.
+.RE
+.RS +4
+.TP
+8.
+If an address begins with \fB+\fR or \fB-\fR, the addition or subtraction is
+taken with respect to the current line; for example, \fB-5\fR is understood to
+mean \fB\&.-5\fR.
+.RE
+.RS +4
+.TP
+9.
+If an address ends with \fB+\fR or \fB-\fR, then 1 is added to or subtracted
+from the address, respectively. As a consequence of this rule and of Rule 8,
+immediately above, the address \fB-\fR refers to the line preceding the current
+line. (To maintain compatibility with earlier versions of the editor, the
+character ^ in addresses is entirely equivalent to \fB-\fR\&.) Moreover,
+trailing \fB+\fR and \fB-\fR characters have a cumulative effect, so \fB--\fR
+refers to the current line less 2.
+.RE
+.RS +4
+.TP
+10.
+For convenience, a comma (\fB,\fR) stands for the address pair \fB1,$\fR,
+while a semicolon (\fB;\fR) stands for the pair \fB\&.,$\fR.
+.RE
+.SS "Characters With Special Meaning"
+.sp
+.LP
+Characters that have special meaning except when they appear within square
+brackets (\fB[\|]\fR) or are preceded by \fB\e\fR are: \fB\&.\fR, \fB*\fR,
+\fB[\|\fR, \fB\e\fR\|. Other special characters, such as \fB$\fR have special
+meaning in more restricted contexts.
+.sp
+.LP
+The character \fB^\fR at the beginning of an expression permits a successful
+match only immediately after a newline, and the character \fB$\fR at the end of
+an expression requires a trailing newline.
+.sp
+.LP
+Two characters have special meaning only when used within square brackets. The
+character \fB-\fR denotes a range, \fB[\|\fR\fIc\fR\fB-\fR\fIc\fR\fB]\fR,
+unless it is just after the open bracket or before the closing bracket,
+\fB[\|-\fR\fIc\fR\fB]\fR or \fB[\|\fR\fIc\fR\fB-]\fR in which case it has no
+special meaning. When used within brackets, the character \fB^\fR has the
+meaning \fIcomplement of\fR if it immediately follows the open bracket
+(example: \fB[^\fR\fIc\fR\fB]\|\fR); elsewhere between brackets (example:
+\fB[\fR\fIc\fR\fB^]\|\fR) it stands for the ordinary character \fB^\fR.
+.sp
+.LP
+The special meaning of the \fB\e\fR operator can be escaped only by preceding
+it with another \fB\e\fR\|, for example \fB\e\e\fR\|.
+.SS "Macros"
+.sp
+.LP
+Programs must have the following five macros declared before the \fB#include
+<regexp.h>\fR statement. These macros are used by the \fBcompile()\fR routine.
+The macros \fBGETC\fR, \fBPEEKC\fR, and \fBUNGETC\fR operate on the regular
+expression given as input to \fBcompile()\fR.
+.sp
+.ne 2
+.na
+\fB\fBGETC\fR\fR
+.ad
+.RS 15n
+This macro returns the value of the next character (byte) in the regular
+expression pattern. Successive calls to \fBGETC\fR should return successive
+characters of the regular expression.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPEEKC\fR\fR
+.ad
+.RS 15n
+This macro returns the next character (byte) in the regular expression.
+Immediately successive calls to \fBPEEKC\fR should return the same character,
+which should also be the next character returned by \fBGETC\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBUNGETC\fR\fR
+.ad
+.RS 15n
+This macro causes the argument \fBc\fR to be returned by the next call to
+\fBGETC\fR and \fBPEEKC\fR. No more than one character of pushback is ever
+needed and this character is guaranteed to be the last character read by
+\fBGETC\fR. The return value of the macro \fBUNGETC(c)\fR is always ignored.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBRETURN(\fR\fIptr\fR\fB)\fR\fR
+.ad
+.RS 15n
+This macro is used on normal exit of the \fBcompile()\fR routine. The value of
+the argument \fIptr\fR is a pointer to the character after the last character
+of the compiled regular expression. This is useful to programs which have
+memory allocation to manage.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBERROR(\fR\fIval\fR\fB)\fR\fR
+.ad
+.RS 15n
+This macro is the abnormal return from the \fBcompile()\fR routine. The
+argument \fIval\fR is an error number (see \fBERRORS\fR below for meanings).
+This call should never return.
+.RE
+
+.SS "\fBcompile()\fR"
+.sp
+.LP
+The syntax of the \fBcompile()\fR routine is as follows:
+.sp
+.in +2
+.nf
+\fBcompile(\fR\fIinstring\fR\fB,\fR \fIexpbuf\fR\fB,\fR \fIendbuf\fR\fB,\fR \fIeof\fR\fB)\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The first parameter, \fIinstring\fR, is never used explicitly by the
+\fBcompile()\fR routine but is useful for programs that pass down different
+pointers to input characters. It is sometimes used in the \fBINIT\fR
+declaration (see below). Programs which call functions to input characters or
+have characters in an external array can pass down a value of \fB(char *)0\fR
+for this parameter.
+.sp
+.LP
+The next parameter, \fIexpbuf\fR, is a character pointer. It points to the
+place where the compiled regular expression will be placed.
+.sp
+.LP
+The parameter \fIendbuf\fR is one more than the highest address where the
+compiled regular expression may be placed. If the compiled expression cannot
+fit in \fB(endbuf-expbuf)\fR bytes, a call to \fBERROR(50)\fR is made.
+.sp
+.LP
+The parameter \fIeof\fR is the character which marks the end of the regular
+expression. This character is usually a \fB/\fR.
+.sp
+.LP
+Each program that includes the \fB<regexp.h>\fR header file must have a
+\fB#define\fR statement for \fBINIT\fR. It is used for dependent declarations
+and initializations. Most often it is used to set a register variable to point
+to the beginning of the regular expression so that this register variable can
+be used in the declarations for \fBGETC\fR, \fBPEEKC\fR, and \fBUNGETC\fR.
+Otherwise it can be used to declare external variables that might be used by
+\fBGETC\fR, \fBPEEKC\fR and \fBUNGETC\fR. (See \fBEXAMPLES\fR below.)
+.SS "step(\|), advance(\|)"
+.sp
+.LP
+The first parameter to the \fBstep()\fR and \fBadvance()\fR functions is a
+pointer to a string of characters to be checked for a match. This string should
+be null terminated.
+.sp
+.LP
+The second parameter, \fIexpbuf\fR, is the compiled regular expression which
+was obtained by a call to the function \fBcompile()\fR.
+.sp
+.LP
+The function \fBstep()\fR returns non-zero if some substring of \fIstring\fR
+matches the regular expression in \fIexpbuf\fR and \fB0\fR if there is no
+match. If there is a match, two external character pointers are set as a side
+effect to the call to \fBstep()\fR. The variable \fBloc1\fR points to the first
+character that matched the regular expression; the variable \fBloc2\fR points
+to the character after the last character that matches the regular expression.
+Thus if the regular expression matches the entire input string, \fBloc1\fR will
+point to the first character of \fIstring\fR and \fBloc2\fR will point to the
+null at the end of \fIstring\fR.
+.sp
+.LP
+The function \fBadvance()\fR returns non-zero if the initial substring of
+\fIstring\fR matches the regular expression in \fIexpbuf\fR. If there is a
+match, an external character pointer, \fBloc2\fR, is set as a side effect. The
+variable \fBloc2\fR points to the next character in \fIstring\fR after the last
+character that matched.
+.sp
+.LP
+When \fBadvance()\fR encounters a \fB*\fR or \fB\e{ \e}\fR sequence in the
+regular expression, it will advance its pointer to the string to be matched as
+far as possible and will recursively call itself trying to match the rest of
+the string to the rest of the regular expression. As long as there is no match,
+\fBadvance()\fR will back up along the string until it finds a match or reaches
+the point in the string that initially matched the \fB*\fR or \fB\e{ \e}\fR\&.
+It is sometimes desirable to stop this backing up before the initial point in
+the string is reached. If the external character pointer \fBlocs\fR is equal to
+the point in the string at sometime during the backing up process,
+\fBadvance()\fR will break out of the loop that backs up and will return zero.
+.sp
+.LP
+The external variables \fBcircf\fR, \fBsed\fR, and \fBnbra\fR are reserved.
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRUsing Regular Expression Macros and Calls
+.sp
+.LP
+The following is an example of how the regular expression macros and calls
+might be defined by an application program:
+
+.sp
+.in +2
+.nf
+#define INIT register char *sp = instring;
+#define GETC() (*sp++)
+#define PEEKC() (*sp)
+#define UNGETC(c) (--sp)
+#define RETURN(c) return;
+#define ERROR(c) regerr()
+
+#include <regexp.h>
+\&...
+ (void) compile(*argv, expbuf, &expbuf[ESIZE],'\e0');
+\&...
+ if (step(linebuf, expbuf))
+ succeed;
+.fi
+.in -2
+.sp
+
+.SH DIAGNOSTICS
+.sp
+.LP
+The function \fBcompile()\fR uses the macro \fBRETURN\fR on success and the
+macro \fBERROR\fR on failure (see above). The functions \fBstep()\fR and
+\fBadvance()\fR return non-zero on a successful match and zero if there is no
+match. Errors are:
+.sp
+.ne 2
+.na
+\fB11\fR
+.ad
+.RS 6n
+range endpoint too large.
+.RE
+
+.sp
+.ne 2
+.na
+\fB16\fR
+.ad
+.RS 6n
+bad number.
+.RE
+
+.sp
+.ne 2
+.na
+\fB25\fR
+.ad
+.RS 6n
+\fB\e\fR \fIdigit\fR out of range.
+.RE
+
+.sp
+.ne 2
+.na
+\fB36\fR
+.ad
+.RS 6n
+illegal or missing delimiter.
+.RE
+
+.sp
+.ne 2
+.na
+\fB41\fR
+.ad
+.RS 6n
+no remembered search string.
+.RE
+
+.sp
+.ne 2
+.na
+\fB42\fR
+.ad
+.RS 6n
+\fB\e( \e)\fR imbalance.
+.RE
+
+.sp
+.ne 2
+.na
+\fB43\fR
+.ad
+.RS 6n
+too many \fB\e(\fR\&.
+.RE
+
+.sp
+.ne 2
+.na
+\fB44\fR
+.ad
+.RS 6n
+more than 2 numbers given in \fB\e{ \e}\fR\&.
+.RE
+
+.sp
+.ne 2
+.na
+\fB45\fR
+.ad
+.RS 6n
+\fB}\fR expected after \fB\e\fR\&.
+.RE
+
+.sp
+.ne 2
+.na
+\fB46\fR
+.ad
+.RS 6n
+first number exceeds second in \fB\e{ \e}\fR\&.
+.RE
+
+.sp
+.ne 2
+.na
+\fB49\fR
+.ad
+.RS 6n
+\fB[ ]\fR imbalance.
+.RE
+
+.sp
+.ne 2
+.na
+\fB50\fR
+.ad
+.RS 6n
+regular expression overflow.
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR regex (7)
diff --git a/usr/src/man/man7/resource_controls.7 b/usr/src/man/man7/resource_controls.7
new file mode 100644
index 0000000000..34392538bc
--- /dev/null
+++ b/usr/src/man/man7/resource_controls.7
@@ -0,0 +1,1113 @@
+'\" te
+.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 2017, Joyent, Inc.
+.\" Copyright 2021 OmniOS Community Edition (OmniOSce) Association.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH RESOURCE_CONTROLS 7 "Jan 23, 2021"
+.SH NAME
+resource_controls \- resource controls available through projects and zones
+.SH DESCRIPTION
+The resource controls facility is configured through the project database. See
+\fBproject\fR(5). You can set and modify resource controls through the
+following utilities:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+.BR prctl (1)
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+.BR projadd (8)
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+.BR projmod (8)
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+.BR rctladm (8)
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBzonecfg\fR(8)
+.RE
+.sp
+.LP
+In a program, you use \fBsetrctl\fR(2) to set resource control values.
+.sp
+.LP
+In addition to the preceding resource controls, there are resource pools,
+accessible through the \fBpooladm\fR(8) and \fBpoolcfg\fR(8) utilities. In a
+program, resource pools can be manipulated through the \fBlibpool\fR(3LIB)
+library.
+.sp
+.LP
+The following are the resource controls are available:
+.sp
+.ne 2
+.na
+\fBprocess.max-address-space\fR
+.ad
+.sp .6
+.RS 4n
+Maximum amount of address space, as summed over segment sizes, that is
+available to this process, expressed as a number of bytes.
+.RE
+
+.sp
+.ne 2
+.na
+\fBprocess.max-core-size\fR
+.ad
+.sp .6
+.RS 4n
+Maximum size of a core file created by this process, expressed as a number of
+bytes.
+.RE
+
+.sp
+.ne 2
+.na
+\fBprocess.max-cpu-time\fR
+.ad
+.sp .6
+.RS 4n
+Maximum CPU time that is available to this process, expressed as a number of
+seconds.
+.RE
+
+.sp
+.ne 2
+.na
+\fBprocess.max-data-size\fR
+.ad
+.sp .6
+.RS 4n
+Maximum heap memory available to this process, expressed as a number of bytes.
+.RE
+
+.sp
+.ne 2
+.na
+\fBprocess.max-file-descriptor\fR
+.ad
+.sp .6
+.RS 4n
+Maximum file descriptor index available to this process, expressed as an
+integer.
+.RE
+
+.sp
+.ne 2
+.na
+\fBprocess.max-file-size\fR
+.ad
+.sp .6
+.RS 4n
+Maximum file offset available for writing by this process, expressed as a
+number of bytes.
+.RE
+
+.sp
+.ne 2
+.na
+\fBprocess.max-locked-memory\fR
+.ad
+.sp .6
+.RS 4n
+Total amount of physical memory that can be locked by this process, expressed
+as a number of bytes. This limit is not enforced for a process with the
+\fBPRIV_PROC_LOCK_MEMORY\fR privilege. Because the ability to lock memory
+is controlled by the \fBPRIV_PROC_LOCK_MEMORY\fR privilege within native
+zones, this resource control is only useful within branded zones which might
+support a different policy for locking memory.
+.RE
+
+.sp
+.ne 2
+.na
+\fBprocess.max-msg-messages\fR
+.ad
+.sp .6
+.RS 4n
+Maximum number of messages on a message queue (value copied from the resource
+control at \fBmsgget()\fR time), expressed as an integer.
+.RE
+
+.sp
+.ne 2
+.na
+\fBprocess.max-msg-qbytes\fR
+.ad
+.sp .6
+.RS 4n
+Maximum number of bytes of messages on a message queue (value copied from the
+resource control at \fBmsgget()\fR time), expressed as a number of bytes.
+.RE
+
+.sp
+.ne 2
+.na
+\fBprocess.max-port-events\fR
+.ad
+.sp .6
+.RS 4n
+Maximum allowable number of events per event port, expressed as an integer.
+.RE
+
+.sp
+.ne 2
+.na
+\fBprocess.max-sem-nsems\fR
+.ad
+.sp .6
+.RS 4n
+Maximum number of semaphores allowed per semaphore set, expressed as an
+integer.
+.RE
+
+.sp
+.ne 2
+.na
+\fBprocess.max-sem-ops\fR
+.ad
+.sp .6
+.RS 4n
+Maximum number of semaphore operations allowed per \fBsemop\fR call (value
+copied from the resource control at \fBsemget()\fR time). Expressed as an
+integer, specifying the number of operations.
+.RE
+
+.sp
+.ne 2
+.na
+\fBprocess.max-sigqueue-size\fR
+.ad
+.sp .6
+.RS 4n
+Maximum number of outstanding queued signals.
+.RE
+
+.sp
+.ne 2
+.na
+\fBprocess.max-stack-size\fR
+.ad
+.sp .6
+.RS 4n
+Maximum stack memory segment available to this process, expressed as a number
+of bytes.
+.RE
+
+.sp
+.ne 2
+.na
+\fBproject.cpu-cap\fR
+.ad
+.sp .6
+.RS 4n
+Maximum amount of CPU resources that a project can use. The unit used is the
+percentage of a single CPU that can be used by all user threads in a project.
+Expressed as an integer. The cap does not apply to threads running in real-time
+scheduling class. This resource control does not support the \fBsyslog\fR
+action.
+.RE
+
+.sp
+.ne 2
+.na
+\fBproject.cpu-shares\fR
+.ad
+.sp .6
+.RS 4n
+Number of CPU shares granted to a project for use with the fair share scheduler
+(see \fBFSS\fR(4)). The unit used is the number of shares (an integer). This
+resource control does not support the \fBsyslog\fR action.
+.RE
+
+.sp
+.ne 2
+.na
+\fBproject.max-contracts\fR
+.ad
+.sp .6
+.RS 4n
+Maximum number of contracts allowed in a project, expressed as an integer.
+.RE
+
+.sp
+.ne 2
+.na
+\fBproject.max-crypto-memory\fR
+.ad
+.sp .6
+.RS 4n
+Maximum amount of kernel memory that can be used for crypto operations.
+Allocations in the kernel for buffers and session-related structures are
+charged against this resource control.
+.RE
+
+.sp
+.ne 2
+.na
+\fBproject.max-locked-memory\fR
+.ad
+.sp .6
+.RS 4n
+Total amount of physical memory locked by device drivers and user processes
+(including D/ISM), expressed as a number of bytes.
+.RE
+
+.sp
+.ne 2
+.na
+\fBproject.max-lwps\fR
+.ad
+.sp .6
+.RS 4n
+Maximum number of LWPs simultaneously available to a project, expressed as an
+integer.
+.RE
+
+.sp
+.ne 2
+.na
+\fBproject.max-msg-ids\fR
+.ad
+.sp .6
+.RS 4n
+Maximum number of message queue IDs allowed for a project, expressed as an
+integer.
+.RE
+
+.sp
+.ne 2
+.na
+\fBproject.max-processes\fR
+.ad
+.sp .6
+.RS 4n
+Maximum number of processes simultaneously available to a project, expressed as
+an integer.
+.RE
+
+.sp
+.ne 2
+.na
+\fBproject.max-port-ids\fR
+.ad
+.sp .6
+.RS 4n
+Maximum allowable number of event ports, expressed as an integer.
+.RE
+
+.sp
+.ne 2
+.na
+\fBproject.max-sem-ids\fR
+.ad
+.sp .6
+.RS 4n
+Maximum number of semaphore IDs allowed for a project, expressed as an integer.
+.RE
+
+.sp
+.ne 2
+.na
+\fBproject.max-shm-ids\fR
+.ad
+.sp .6
+.RS 4n
+Maximum number of shared memory IDs allowed for a project, expressed as an
+integer.
+.RE
+
+.sp
+.ne 2
+.na
+\fBproject.max-shm-memory\fR
+.ad
+.sp .6
+.RS 4n
+Total amount of shared memory allowed for a project, expressed as a number of
+bytes.
+.RE
+
+.sp
+.ne 2
+.na
+\fBproject.max-tasks\fR
+.ad
+.sp .6
+.RS 4n
+Maximum number of tasks allowable in a project, expressed as an integer.
+.RE
+
+.sp
+.ne 2
+.na
+\fBproject.pool\fR
+.ad
+.sp .6
+.RS 4n
+Binds a specified resource pool with a project.
+.RE
+
+.sp
+.ne 2
+.na
+\fBrcap.max-rss\fR
+.ad
+.sp .6
+.RS 4n
+The total amount of physical memory, in bytes, that is available to processes
+in a project.
+.RE
+
+.sp
+.ne 2
+.na
+\fBtask.max-cpu-time\fR
+.ad
+.sp .6
+.RS 4n
+Maximum CPU time that is available to this task's processes, expressed as a
+number of seconds.
+.RE
+
+.sp
+.ne 2
+.na
+\fBtask.max-lwps\fR
+.ad
+.sp .6
+.RS 4n
+Maximum number of LWPs simultaneously available to this task's processes,
+expressed as an integer.
+.RE
+
+.sp
+.ne 2
+.na
+\fBtask.max-processes\fR
+.ad
+.sp .6
+.RS 4n
+Maximum number of processes simultaneously available to this task,
+expressed as an integer.
+.RE
+
+.sp
+.LP
+The following zone-wide resource controls are available:
+.sp
+.ne 2
+.na
+\fBzone.cpu-baseline\fR
+.ad
+.sp .6
+.RS 4n
+Sets a baseline amount of CPU time that a zone can use before it is considered
+to be bursting. The unit used is the percentage of a single CPU that is being
+used by all user threads in a zone. The value should be less than the
+\fBzone.cpu-cap\fR rctl value and is expressed as an integer.
+This resource control does not support the \fBsyslog\fR action.
+.RE
+
+.sp
+.ne 2
+.na
+\fBzone.cpu-burst-time\fR
+.ad
+.sp .6
+.RS 4n
+Sets the number of seconds that a zone can exceed the \fBzone.cpu-baseline\fR
+rctl value before being cpu-capped down to the \fBzone.cpu-baseline\fR.
+A value of 0 means that \fBzone.cpu-baseline\fR can be exceeded indefinitely.
+This resource control does not support the \fBsyslog\fR action.
+.RE
+
+.sp
+.ne 2
+.na
+\fBzone.cpu-cap\fR
+.ad
+.sp .6
+.RS 4n
+Sets a limit on the amount of CPU time that can be used by a zone. The unit
+used is the percentage of a single CPU that can be used by all user threads in
+a zone. Expressed as an integer. When projects within the capped zone have
+their own caps, the minimum value takes precedence. This resource control does
+not support the \fBsyslog\fR action.
+.RE
+
+.sp
+.ne 2
+.na
+\fBzone.cpu-shares\fR
+.ad
+.sp .6
+.RS 4n
+Sets a value on the number of fair share scheduler (FSS) CPU shares for a zone.
+CPU shares are first allocated to the zone, and then further subdivided among
+projects within the zone as specified in the \fBproject.cpu-shares\fR entries.
+Expressed as an integer. This resource control does not support the
+\fBsyslog\fR action.
+.RE
+
+.sp
+.ne 2
+.na
+\fBzone.max-locked-memory\fR
+.ad
+.sp .6
+.RS 4n
+Total amount of physical locked memory available to a zone.
+.RE
+
+.sp
+.ne 2
+.na
+\fBzone.max-lofi\fR
+.ad
+.sp .6
+.RS 4n
+Sets a limit on the number of \fBLOFI\fR(4D) devices that can be created in a
+zone. Expressed as an integer. This resource control does not support the
+\fBsyslog\fR action.
+.RE
+
+\fBzone.max-lwps\fR
+.ad
+.sp .6
+.RS 4n
+Enhances resource isolation by preventing too many LWPs in one zone from
+affecting other zones. A zone's total LWPs can be further subdivided among
+projects within the zone by using \fBproject.max-lwps\fR entries. Expressed as
+an integer.
+.RE
+
+.sp
+.ne 2
+.na
+\fBzone.max-msg-ids\fR
+.ad
+.sp .6
+.RS 4n
+Maximum number of message queue IDs allowed for a zone, expressed as an
+integer.
+.RE
+
+.sp
+.ne 2
+.na
+\fBzone.max-physical-memory\fR
+.ad
+.sp .6
+.RS 4n
+Sets a limit on the amount of physical memory (RSS) that can be used by a zone
+before resident pages start being forcibly paged out. The unit used is bytes.
+Expressed as an integer. This resource control does not support the
+\fBsyslog\fR action.
+\fBzone.max-processes\fR
+.ad
+.sp .6
+.RS 4n
+Enhances resource isolation by preventing too many processes in one zone from
+affecting other zones. A zone's total processes can be further subdivided among
+projects within the zone by using \fBproject.max-processes\fR entries.
+Expressed as an integer.
+.RE
+
+.sp
+.ne 2
+.na
+.RE
+
+.sp
+.ne 2
+.na
+\fBzone.max-sem-ids\fR
+.ad
+.sp .6
+.RS 4n
+Maximum number of semaphore IDs allowed for a zone, expressed as an integer.
+.RE
+
+.sp
+.ne 2
+.na
+\fBzone.max-shm-ids\fR
+.ad
+.sp .6
+.RS 4n
+Maximum number of shared memory IDs allowed for a zone, expressed as an
+integer.
+.RE
+
+.sp
+.ne 2
+.na
+\fBzone.max-shm-memory\fR
+.ad
+.sp .6
+.RS 4n
+Total amount of shared memory allowed for a zone, expressed as a number of
+bytes.
+.RE
+
+.sp
+.ne 2
+.na
+\fBzone.max-swap\fR
+.ad
+.sp .6
+.RS 4n
+Total amount of swap that can be consumed by user process address space
+mappings and \fBtmpfs\fR mounts for this zone.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBzone.zfs-io-priority\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets a value for the \fBzfs\fR(8) I/O priority for a zone. This is used as
+one of the inputs to determine if a zone's I/O should be throttled. Expressed
+as an integer. This resource control does not support the \fBsyslog\fR action.
+.RE
+
+.sp
+.LP
+See \fBzones\fR(7).
+.SS "Units Used in Resource Controls"
+Resource controls can be expressed as in units of size (bytes), time (seconds),
+or as a count (integer). These units use the strings specified below.
+.sp
+.in +2
+.nf
+Category Res Ctrl Modifier Scale
+ Type String
+----------- ----------- -------- -----
+Size bytes B 1
+ KB 2^10
+ MB 2^20
+ GB 2^30
+ TB 2^40
+ PB 2^50
+ EB 2^60
+
+Time seconds s 1
+ Ks 10^3
+ Ms 10^6
+ Gs 10^9
+ Ts 10^12
+ Ps 10^15
+ Es 10^18
+
+Count integer none 1
+ K 10^3
+ M 10^6
+ G 10^9
+ T 10^12
+ P 10^15
+ Es 10^18
+.fi
+.in -2
+
+.sp
+.LP
+Scaled values can be used with resource controls. The following example shows a
+scaled threshold value:
+.sp
+.in +2
+.nf
+task.max-lwps=(priv,1K,deny)
+.fi
+.in -2
+
+.sp
+.LP
+In the \fBproject\fR file, the value \fB1K\fR is expanded to \fB1000\fR:
+.sp
+.in +2
+.nf
+task.max-lwps=(priv,1000,deny)
+.fi
+.in -2
+
+.sp
+.LP
+A second example uses a larger scaled value:
+.sp
+.in +2
+.nf
+process.max-file-size=(priv,5G,deny)
+.fi
+.in -2
+
+.sp
+.LP
+In the \fBproject\fR file, the value \fB5G\fR is expanded to \fB5368709120\fR:
+.sp
+.in +2
+.nf
+process.max-file-size=(priv,5368709120,deny)
+.fi
+.in -2
+
+.sp
+.LP
+The preceding examples use the scaling factors specified in the table above.
+.sp
+.LP
+Note that unit modifiers (for example, \fB5G\fR) are accepted by the
+\fBprctl\fR(1), \fBprojadd\fR(8), and \fBprojmod\fR(8) commands. You cannot
+use unit modifiers in the project database itself.
+.SS "Resource Control Values and Privilege Levels"
+A threshold value on a resource control constitutes a point at which local
+actions can be triggered or global actions, such as logging, can occur.
+.sp
+.LP
+Each threshold value on a resource control must be associated with a privilege
+level. The privilege level must be one of the following three types:
+.sp
+.ne 2
+.na
+\fBbasic\fR
+.ad
+.sp .6
+.RS 4n
+Can be modified by the owner of the calling process.
+.RE
+
+.sp
+.ne 2
+.na
+\fBprivileged\fR
+.ad
+.sp .6
+.RS 4n
+Can be modified by the current process (requiring \fBsys_resource\fR privilege)
+or by \fBprctl\fR(1) (requiring \fBproc_owner\fR privilege).
+.RE
+
+.sp
+.ne 2
+.na
+\fBsystem\fR
+.ad
+.sp .6
+.RS 4n
+Fixed for the duration of the operating system instance.
+.RE
+
+.sp
+.LP
+A resource control is guaranteed to have one \fBsystem\fR value, which is
+defined by the system, or resource provider. The \fBsystem\fR value represents
+how much of the resource the current implementation of the operating system is
+capable of providing.
+.sp
+.LP
+Any number of privileged values can be defined, and only one basic value is
+allowed. Operations that are performed without specifying a privilege value are
+assigned a basic privilege by default.
+.sp
+.LP
+The privilege level for a resource control value is defined in the privilege
+field of the resource control block as \fBRCTL_BASIC\fR, \fBRCTL_PRIVILEGED\fR,
+or \fBRCTL_SYSTEM\fR. See \fBsetrctl\fR(2) for more information. You can use
+the \fBprctl\fR command to modify values that are associated with basic and
+privileged levels.
+.sp
+.LP
+In specifying the privilege level of \fBprivileged\fR, you can use the
+abbreviation \fBpriv\fR. For example:
+.sp
+.in +2
+.nf
+task.max-lwps=(priv,1K,deny)
+.fi
+.in -2
+
+.SS "Global and Local Actions on Resource Control Values"
+There are two categories of actions on resource control values: global and
+local.
+.sp
+.LP
+Global actions apply to resource control values for every resource control on
+the system. You can use \fBrctladm\fR(8) to perform the following actions:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Display the global state of active system resource controls.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Set global logging actions.
+.RE
+.sp
+.LP
+You can disable or enable the global logging action on resource controls. You
+can set the \fBsyslog\fR action to a specific degree by assigning a severity
+level, \fBsyslog=\fR\fIlevel\fR. The possible settings for \fIlevel\fR are as
+follows:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBdebug\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBinfo\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBnotice\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBwarning\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBerr\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBcrit\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBalert\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBemerg\fR
+.RE
+.sp
+.LP
+By default, there is no global logging of resource control violations.
+.sp
+.LP
+Local actions are taken on a process that attempts to exceed the control value.
+For each threshold value that is placed on a resource control, you can
+associate one or more actions. There are three types of local actions:
+\fBnone\fR, \fBdeny\fR, and \fBsignal=\fR. These three actions are used as
+follows:
+.sp
+.ne 2
+.na
+\fBnone\fR
+.ad
+.sp .6
+.RS 4n
+No action is taken on resource requests for an amount that is greater than the
+threshold. This action is useful for monitoring resource usage without
+affecting the progress of applications. You can also enable a global message
+that displays when the resource control is exceeded, while, at the same time,
+the process exceeding the threshold is not affected.
+.RE
+
+.sp
+.ne 2
+.na
+\fBdeny\fR
+.ad
+.sp .6
+.RS 4n
+You can deny resource requests for an amount that is greater than the
+threshold. For example, a \fBtask.max-lwps\fR resource control with action deny
+causes a \fBfork()\fR system call to fail if the new process would exceed the
+control value. See the \fBfork\fR(2).
+.RE
+
+.sp
+.ne 2
+.na
+\fBsignal=\fR
+.ad
+.sp .6
+.RS 4n
+You can enable a global signal message action when the resource control is
+exceeded. A signal is sent to the process when the threshold value is exceeded.
+Additional signals are not sent if the process consumes additional resources.
+Available signals are listed below.
+.RE
+
+.sp
+.LP
+Not all of the actions can be applied to every resource control. For example, a
+process cannot exceed the number of CPU shares assigned to the project of which
+it is a member. Therefore, a deny action is not allowed on the
+\fBproject.cpu-shares\fR resource control.
+.sp
+.LP
+Due to implementation restrictions, the global properties of each control can
+restrict the range of available actions that can be set on the threshold value.
+(See \fBrctladm\fR(8).) A list of available signal actions is presented in the
+following list. For additional information about signals, see
+\fBsignal\fR(3HEAD).
+.sp
+.LP
+The following are the signals available to resource control values:
+.sp
+.ne 2
+.na
+\fBSIGABRT\fR
+.ad
+.sp .6
+.RS 4n
+Terminate the process.
+.RE
+
+.sp
+.ne 2
+.na
+\fBSIGHUP\fR
+.ad
+.sp .6
+.RS 4n
+Send a hangup signal. Occurs when carrier drops on an open line. Signal sent to
+the process group that controls the terminal.
+.RE
+
+.sp
+.ne 2
+.na
+\fBSIGTERM\fR
+.ad
+.sp .6
+.RS 4n
+Terminate the process. Termination signal sent by software.
+.RE
+
+.sp
+.ne 2
+.na
+\fBSIGKILL\fR
+.ad
+.sp .6
+.RS 4n
+Terminate the process and kill the program.
+.RE
+
+.sp
+.ne 2
+.na
+\fBSIGSTOP\fR
+.ad
+.sp .6
+.RS 4n
+Stop the process. Job control signal.
+.RE
+
+.sp
+.ne 2
+.na
+\fBSIGXRES\fR
+.ad
+.sp .6
+.RS 4n
+Resource control limit exceeded. Generated by resource control facility.
+.RE
+
+.sp
+.ne 2
+.na
+\fBSIGXFSZ\fR
+.ad
+.sp .6
+.RS 4n
+Terminate the process. File size limit exceeded. Available only to resource
+controls with the \fBRCTL_GLOBAL_FILE_SIZE\fR property
+(\fBprocess.max-file-size\fR). See \fBrctlblk_set_value\fR(3C).
+.RE
+
+.sp
+.ne 2
+.na
+\fBSIGXCPU\fR
+.ad
+.sp .6
+.RS 4n
+Terminate the process. CPU time limit exceeded. Available only to resource
+controls with the \fBRCTL_GLOBAL_CPUTIME\fR property
+(\fBprocess.max-cpu-time\fR). See \fBrctlblk_set_value\fR(3C).
+.RE
+
+.SS "Resource Control Flags and Properties"
+Each resource control on the system has a certain set of associated properties.
+This set of properties is defined as a set of flags, which are associated with
+all controlled instances of that resource. Global flags cannot be modified, but
+the flags can be retrieved by using either \fBrctladm\fR(8) or the
+\fBsetrctl\fR(2) system call.
+.sp
+.LP
+Local flags define the default behavior and configuration for a specific
+threshold value of that resource control on a specific process or process
+collective. The local flags for one threshold value do not affect the behavior
+of other defined threshold values for the same resource control. However, the
+global flags affect the behavior for every value associated with a particular
+control. Local flags can be modified, within the constraints supplied by their
+corresponding global flags, by the \fBprctl\fR command or the \fBsetrctl\fR
+system call. See \fBsetrctl\fR(2).
+.sp
+.LP
+For the complete list of local flags, global flags, and their definitions, see
+\fBrctlblk_set_value\fR(3C).
+.sp
+.LP
+To determine system behavior when a threshold value for a particular resource
+control is reached, use \fBrctladm\fR to display the global flags for the
+resource control . For example, to display the values for
+\fBprocess.max-cpu-time\fR, enter:
+.sp
+.in +2
+.nf
+$ rctladm process.max-cpu-time
+process.max-cpu-time syslog=off [ lowerable no-deny cpu-time inf seconds ]
+.fi
+.in -2
+
+.sp
+.LP
+The global flags indicate the following:
+.sp
+.ne 2
+.na
+\fBlowerable\fR
+.ad
+.sp .6
+.RS 4n
+Superuser privileges are not required to lower the privileged values for this
+control.
+.RE
+
+.sp
+.ne 2
+.na
+\fBno-deny\fR
+.ad
+.sp .6
+.RS 4n
+Even when threshold values are exceeded, access to the resource is never
+denied.
+.RE
+
+.sp
+.ne 2
+.na
+\fBcpu-time\fR
+.ad
+.sp .6
+.RS 4n
+\fBSIGXCPU\fR is available to be sent when threshold values of this resource
+are reached.
+.RE
+
+.sp
+.ne 2
+.na
+\fBseconds\fR
+.ad
+.sp .6
+.RS 4n
+The time value for the resource control.
+.RE
+
+.sp
+.LP
+Use the \fBprctl\fR command to display local values and actions for the
+resource control. For example:
+.sp
+.in +2
+.nf
+$ prctl -n process.max-cpu-time $$
+ process 353939: -ksh
+ NAME PRIVILEGE VALUE FLAG ACTION RECIPIENT
+ process.max-cpu-time
+ privileged 18.4Es inf signal=XCPU -
+ system 18.4Es inf none
+.fi
+.in -2
+
+.sp
+.LP
+The \fBmax\fR (\fBRCTL_LOCAL_MAXIMAL\fR) flag is set for both threshold values,
+and the \fBinf\fR (\fBRCTL_GLOBAL_INFINITE\fR) flag is defined for this
+resource control. An \fBinf\fR value has an infinite quantity. The value is
+never enforced. Hence, as configured, both threshold quantities represent
+infinite values that are never exceeded.
+.SS "Resource Control Enforcement"
+More than one resource control can exist on a resource. A resource control can
+exist at each containment level in the process model. If resource controls are
+active on the same resource at different container levels, the smallest
+container's control is enforced first. Thus, action is taken on
+\fBprocess.max-cpu-time\fR before \fBtask.max-cpu-time\fR if both controls are
+encountered simultaneously.
+.SH ATTRIBUTES
+See \fBattributes\fR(7) for a description of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.BR prctl (1),
+.BR setrctl (2),
+.BR rctlblk_set_value (3C),
+.BR libpool (3LIB),
+.BR FSS (4),
+.BR project (5),
+.BR attributes (7),
+.BR privileges (7),
+.BR zones (7),
+.BR pooladm (8),
+.BR poolcfg (8),
+.BR projadd (8),
+.BR projmod (8),
+.BR rctladm (8)
+.sp
+.LP
+\fISystem Administration Guide: Virtualization Using the Solaris Operating
+System\fR
diff --git a/usr/src/man/man7/security-flags.7 b/usr/src/man/man7/security-flags.7
new file mode 100644
index 0000000000..6ffd80ea9e
--- /dev/null
+++ b/usr/src/man/man7/security-flags.7
@@ -0,0 +1,115 @@
+.\"
+.\" This file and its contents are supplied under the terms of the
+.\" Common Development and Distribution License ("CDDL"), version 1.0.
+.\" You may only use this file in accordance with the terms of version
+.\" 1.0 of the CDDL.
+.\"
+.\" A full copy of the text of the CDDL should have accompanied this
+.\" source. A copy of the CDDL is also available via the Internet at
+.\" http://www.illumos.org/license/CDDL.
+.\"
+.\" Copyright 2015, Richard Lowe.
+.\"
+.TH "SECURITY-FLAGS" "7" "June 6, 2016"
+.SH "NAME"
+\fBsecurity-flags\fR - process security flags
+.SH "DESCRIPTION"
+Each process on an illumos system has an associated set of security-flags
+which describe additional per-process security and exploit mitigation
+features which are enabled for that process.
+.P
+There are four sets of these flags for each process, the effective set
+(abbreviated \fIE\fR) are the set which currently apply to the process and are
+immutable. The inheritable set (abbreviated \fII\fR) are the flags which will
+become effective the next time the process calls one of the \fBexec(2)\fR
+family of functions, and will be inherited as both the effective and
+inheritable sets by any child processes. The upper set (abbreviated \fIU\fR)
+specify the maximal flags that a process can have in its inheritable set. The
+lower set (abbreviated \fIL\fR) specify the minimal amount of flags that a
+process must have in its inheritable set. The inheritable set may be changed
+at any time, subject to permissions and the lower and upper sets.
+.P
+To change the security-flags of a process one must have both permissions
+equivalent to those required to send a signal to the process and have the
+\fBPRIV_PROC_SECFLAGS\fR privilege.
+.P
+Currently available features are:
+
+.sp
+.ne 2
+.na
+Address Space Layout Randomisation (\fBASLR\fR)
+.ad
+.RS 11n
+The base addresses of the stack, heap and shared library (including
+\fBld.so\fR) mappings are randomised, the bases of mapped regions other than
+those using \fBMAP_FIXED\fR are randomised.
+.P
+Currently, executable base addresses are \fInot\fR randomised, due to which
+the mitigation provided by this feature is currently limited.
+.P
+This flag may also be enabled by the presence of the \fBDT_SUNW_ASLR\fR
+dynamic tag in the \fB.dynamic\fR section of the executable file. If this
+tag has a value of 1, ASLR will be enabled. If the flag has a value of
+\fB0\fR ASLR will be disabled. If the tag is not present, the value of the
+ASLR flag will be inherited as normal.
+.RE
+
+.sp
+.ne 2
+.na
+Forbid mappings at NULL (\fBFORBIDNULLMAP\fR)
+.ad
+.RS 11n
+Mappings with an address of 0 are forbidden, and return EINVAL rather than
+being honored.
+.RE
+
+.sp
+.ne 2
+.na
+Make the userspace stack non-executable (\fBNOEXECSTACK\fR)
+.ad
+.RS 11n
+The stack will be mapped without executable permission, and attempts to
+execute it will fault.
+.RE
+
+System default security-flags are configured via properties on the
+\fBsvc:/system/process-security\fR service, which contains a boolean property
+per-flag in the \fBdefault\fR, \fBlower\fR and \fBupper\fR, property groups.
+The value indicates the setting of the flag, flags with no value take their
+defaults. For example, to enable ASLR by default you would execute the
+following commands:
+.sp
+.in +2
+.nf
+# svccfg -s svc:/system/process-security setprop default/aslr = true
+.fi
+.in -2
+.sp
+.P
+To restore the setting to the defaults you would execute:
+.sp
+.in +2
+.nf
+# svccfg -s svc:/system/process-security delpropvalue default/aslr true
+.fi
+.in -2
+.sp
+.P
+This can be done by any user with the \fBsolaris.smf.value.process-security\fR
+authorization.
+.P
+Since security-flags are strictly inherited, this will not take effect until
+the system or zone is next booted.
+
+.SH "SEE ALSO"
+.BR psecflags (1),
+.BR brk (2),
+.BR exec (2),
+.BR mmap (2),
+.BR mmapobj (2),
+.BR privileges (7),
+.BR rbac (7),
+.BR svccfg (8)
diff --git a/usr/src/man/man7/smf.7 b/usr/src/man/man7/smf.7
new file mode 100644
index 0000000000..c25a108a97
--- /dev/null
+++ b/usr/src/man/man7/smf.7
@@ -0,0 +1,510 @@
+'\" te
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
+.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SMF 7 "Jul 6, 2009"
+.SH NAME
+smf \- service management facility
+.SH DESCRIPTION
+.sp
+.LP
+The Solaris service management facility defines a programming model for
+providing persistently running applications called \fIservices\fR. The facility
+also provides the infrastructure in which to run services. A service can
+represent a running application, the software state of a device, or a set of
+other services. Services are represented in the framework by \fIservice
+instance\fR objects, which are children of service objects. Instance objects
+can inherit or override the configuration of the parent service object, which
+allows multiple service instances to share configuration information. All
+service and instance objects are contained in a \fIscope\fR that represents a
+collection of configuration information. The configuration of the local Solaris
+instance is called the "localhost" scope, and is the only currently supported
+scope.
+.sp
+.LP
+Each service instance is named with a fault management resource identifier
+(FMRI) with the scheme \fBsvc:\fR. For example, the \fBsyslogd\fR(8) daemon
+started at system startup is the default service instance named:
+.sp
+.in +2
+.nf
+svc://localhost/system/system-log:default
+svc:/system/system-log:default
+system/system-log:default
+.fi
+.in -2
+
+.sp
+.LP
+Many commands also allow FMRI abbreviations. See the \fBsvcs\fR(1) man page for
+one such example.
+.sp
+.LP
+In the above example, 'default' is the name of the instance
+and 'system/system-log' is the service name. Service names can comprise multiple
+components separated by slashes (/). All components, except the last, compose
+the \fIcategory\fR of the service. Site-specific services should be named with
+a category beginning with 'site'.
+.sp
+.LP
+A service instance is either enabled or disabled. All services can be enabled
+or disabled with the \fBsvcadm\fR(8) command.
+.sp
+.LP
+The list of managed service instances on a system can be displayed with the
+\fBsvcs\fR(1) command.
+.SS "Dependencies"
+.sp
+.LP
+Service instances can have dependencies on a set of \fBentities\fR which can
+include services and files. Dependencies govern when the service is started and
+automatically stopped. When the dependencies of an enabled service are not
+satisfied, the service is kept in the offline state. When its dependencies are
+satisfied, the service is started. If the start is successful, the service is
+transitioned to the online state.
+.sp
+.LP
+Whether a dependency is satisfied is determined by its \fBgrouping\fR:
+.sp
+.ne 2
+.na
+\fB\fBrequire_all\fR\fR
+.ad
+.RS 16n
+Satisfied when all cited services are running (online or degraded), or when all
+indicated files are present.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrequire_any\fR\fR
+.ad
+.RS 16n
+Satisfied when one of the cited services is running (online or degraded), or
+when at least one of the indicated files is present.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBoptional_all\fR\fR
+.ad
+.RS 16n
+Satisfied if the cited services are running (online or degraded) or do not run
+without administrative action (disabled, maintenance, not present, or offline
+waiting for dependencies which do not start without administrative action).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBexclude_all\fR\fR
+.ad
+.RS 16n
+Satisfied when all of the cited services are disabled, in the maintenance
+state, or when cited services or files are not present.
+.RE
+
+.sp
+.LP
+Once running (online or degraded), if a service cited by a \fBrequire_all\fR,
+\fBrequire_any\fR, or \fBoptional_all\fR dependency is stopped or refreshed,
+the SMF considers why the service was stopped and the \fBrestart_on\fR
+attribute of the dependency to decide whether to stop the service.
+.sp
+.in +2
+.nf
+ | restart_on value
+event | none error restart refresh
+-------------------+------------------------------
+stop due to error | no yes yes yes
+non-error stop | no no yes yes
+refresh | no no no yes
+.fi
+.in -2
+
+.sp
+.LP
+A service is considered to have stopped due to an error if the service has
+encountered a hardware error or a software error such as a core dump. For
+\fBexclude_all\fR dependencies, the service is stopped if the cited service is
+started and the \fBrestart_on\fR attribute is not \fBnone\fR.
+.sp
+.LP
+The dependencies on a service can be listed with \fBsvcs\fR(1)\ or
+\fBsvccfg\fR(8), and modified with \fBsvccfg\fR(8).
+.SS "Restarters"
+.sp
+.LP
+Each service is managed by a restarter. The master restarter,
+\fBsvc.startd\fR(8) manages states for the entire set of service instances and
+their dependencies. The master restarter acts on behalf of its services and on
+delegated restarters that can provide specific execution environments for
+certain application classes. For instance, \fBinetd\fR(8) is a delegated
+restarter that provides its service instances with an initial environment
+composed of a network connection as input and output file descriptors. Each
+instance delegated to \fBinetd\fR(8) is in the online state. While the daemon
+of a particular instance might not be running, the instance is available to
+run.
+.sp
+.LP
+As dependencies are satisfied when instances move to the online state,
+\fBsvc.startd\fR(8) invokes start methods of other instances or directs the
+delegated restarter to do so. These operations might overlap.
+.sp
+.LP
+The current set of services and associated restarters can be examined using
+\fBsvcs\fR(1). A description of the common configuration used by all restarters
+is given in \fBsmf_restarter\fR(7).
+.SS "Methods"
+.sp
+.LP
+Each service or service instance must define a set of methods that start, stop,
+and, optionally, refresh the service. See \fBsmf_method\fR(7) for a more
+complete description of the method conventions for \fBsvc.startd\fR(8) and
+similar \fBfork\fR(2)-\fBexec\fR(2) restarters.
+.sp
+.LP
+Administrative methods, such as for the capture of legacy configuration
+information into the repository, are discussed on the \fBsvccfg\fR(8) manual
+page.
+.sp
+.LP
+The methods for a service can be listed and modified using the \fBsvccfg\fR(8)
+command.
+.SS "States"
+.sp
+.LP
+Each service instance is always in a well-defined state based on its
+dependencies, the results of the execution of its methods, and its potential
+contracts events. The following states are defined:
+.sp
+.ne 2
+.na
+\fB\fBUNINITIALIZED\fR\fR
+.ad
+.RS 17n
+This is the initial state for all service instances. Instances are moved to
+maintenance, offline, or a disabled state upon evaluation by
+\fBsvc.startd\fR(8) or the appropriate restarter.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBOFFLINE\fR\fR
+.ad
+.RS 17n
+The instance is enabled, but not yet running or available to run. If restarter
+execution of the service start method or the equivalent method is successful,
+the instance moves to the online state. Failures might lead to a degraded or
+maintenance state. Administrative action can lead to the uninitialized state.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBONLINE\fR\fR
+.ad
+.RS 17n
+The instance is enabled and running or is available to run. The specific nature
+of the online state is application-model specific and is defined by the
+restarter responsible for the service instance. Online is the expected
+operating state for a properly configured service with all dependencies
+satisfied. Failures of the instance can lead to a degraded or maintenance
+state. Failures of services on which the instance depends can lead to offline
+or degraded states.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBDEGRADED\fR\fR
+.ad
+.RS 17n
+The instance is enabled and running or available to run. The instance, however,
+is functioning at a limited capacity in comparison to normal operation.
+Failures of the instance can lead to the maintenance state. Failures of
+services on which the instance depends can lead to offline or degraded states.
+Restoration of capacity should result in a transition to the online state.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBMAINTENANCE\fR\fR
+.ad
+.RS 17n
+The instance is enabled, but not able to run. Administrative action (through
+\fBsvcadm clear\fR) is required to move the instance out of the maintenance
+state. The maintenance state might be a temporarily reached state if an
+administrative operation is underway.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBDISABLED\fR\fR
+.ad
+.RS 17n
+The instance is disabled. Enabling the service results in a transition to the
+offline state and eventually to the online state with all dependencies
+satisfied.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBLEGACY-RUN\fR\fR
+.ad
+.RS 17n
+This state represents a legacy instance that is not managed by the service
+management facility. Instances in this state have been started at some point,
+but might or might not be running. Instances can only be observed using the
+facility and are not transferred into other states.
+.RE
+
+.sp
+.LP
+States can also have transitions that result in a return to the originating
+state.
+.SS "Properties and Property Groups"
+.sp
+.LP
+The dependencies, methods, delegated restarter, and instance state mentioned
+above are represented as properties or property groups of the service or
+service instance. A service or service instance has an arbitrary number of
+property groups in which to store application data. Using property groups in
+this way allows the configuration of the application to derive the attributes
+that the repository provides for all data in the facility. The application can
+also use the appropriate subset of the \fBservice_bundle\fR(5) DTD to represent
+its configuration data within the framework.
+.sp
+.LP
+Property lookups are composed. If a property group-property combination is not
+found on the service instance, most commands and the high-level interfaces of
+\fBlibscf\fR(3LIB) search for the same property group-property combination on
+the service that contains that instance. This allows common configuration among
+service instances to be shared. Composition can be viewed as an inheritance
+relationship between the service instance and its parent service.
+.sp
+.LP
+Properties are protected from modification by unauthorized processes. See
+\fBsmf_security\fR(7).
+.SS "General Property Group"
+.sp
+.LP
+The \fBgeneral\fR property group applies to all service instances. It includes
+the following properties:
+.sp
+.ne 2
+.na
+\fBenabled (boolean)\fR
+.ad
+.RS 21n
+Specifies whether the instance is enabled. If this property is not present on
+an instance, SMF does not tell the instance's restarter about the existence of
+the restarter.
+.RE
+
+.sp
+.ne 2
+.na
+\fBrestarter (fmri)\fR
+.ad
+.RS 21n
+The restarter for this service. See the Restarters section for more
+information. If this property is unset, the default system restarter is used.
+.RE
+
+.SS "Snapshots"
+.sp
+.LP
+Historical data about each instance in the repository is maintained by the
+service management facility. This data is made available as read-only snapshots
+for administrative inspection and rollback. The following set of snapshot types
+might be available:
+.sp
+.ne 2
+.na
+\fB\fBinitial\fR\fR
+.ad
+.RS 15n
+Initial configuration of the instance created by the administrator or produced
+during package installation.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBlast_import\fR\fR
+.ad
+.RS 15n
+Configuration as prescribed by the manifest of the service that is taken during
+\fBsvccfg\fR(8) import operation. This snapshot provides a baseline for
+determining property customization.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBprevious\fR\fR
+.ad
+.RS 15n
+Current configuration captured when an administrative undo operation is
+performed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrunning\fR\fR
+.ad
+.RS 15n
+The running configuration of the instance.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBstart\fR\fR
+.ad
+.RS 15n
+Configuration captured during a successful transition to the online state.
+.RE
+
+.sp
+.LP
+The \fBsvccfg\fR(8) command can be used to interact with snapshots.
+.SS "Special Property Groups"
+.sp
+.LP
+Some property groups are marked as "non-persistent". These groups are not
+backed up in snapshots and their content is cleared during system boot. Such
+groups generally hold an active program state which does not need to survive
+system restart.
+.SS "Configuration Repository"
+.sp
+.LP
+The current state of each service instance, as well as the properties
+associated with services and service instances, is stored in a system
+repository managed by \fBsvc.configd\fR(8). This repository is transactional
+and able to provide previous versions of properties and property groups
+associated with each service or service instance.
+.sp
+.LP
+The repository for service management facility data is managed by
+\fBsvc.configd\fR(8).
+.SS "Service Bundles, Manifests, and Profiles"
+.sp
+.LP
+The information associated with a service or service instance that is stored in
+the configuration repository can be exported as XML-based files. Such XML
+files, known as service bundles, are portable and suitable for backup purposes.
+Service bundles are classified as one of the following types:
+.sp
+.ne 2
+.na
+\fB\fBmanifests\fR\fR
+.ad
+.RS 13n
+Files that contain the complete set of properties associated with a specific
+set of services or service instances.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBprofiles\fR\fR
+.ad
+.RS 13n
+Files that contain a set of service instances and values for the enabled
+property (type \fBboolean\fR in the general property group) on each instance.
+.sp
+Profiles can also contain configuration values for properties in services and
+instances. Template elements cannot be defined in a profile.
+.RE
+
+.sp
+.LP
+Service bundles can be imported or exported from a repository using the
+\fBsvccfg\fR(8) command. See \fBservice_bundle\fR(5) for a description of the
+service bundle file format with guidelines for authoring service bundles.
+.sp
+.LP
+A \fIservice archive\fR is an XML file that contains the description and
+persistent properties of every service in the repository, excluding transient
+properties such as service state. This service archive is basically a 'svccfg
+export' for every service which is not limited to named services.
+.SS "Milestones"
+.sp
+.LP
+An \fBsmf\fR milestone is a service that aggregates a multiple service
+dependencies. Usually, a milestone does nothing useful itself, but declares a
+specific state of system-readiness on which other services can depend. One
+example is the \fBname-services\fR milestone, which simply depends upon the
+currently enabled name services.
+.SS "Legacy Startup Scripts"
+.sp
+.LP
+Startup programs in the \fB/etc/rc?.d\fR directories are executed as part of
+the corresponding run-level milestone:
+.sp
+.ne 2
+.na
+\fB\fB/etc/rcS.d\fR\fR
+.ad
+.RS 14n
+milestone/single-user:default
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/rc2.d\fR\fR
+.ad
+.RS 14n
+milestone/multi-user:default
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/rc3.d\fR\fR
+.ad
+.RS 14n
+milestone/multi-user-server:default
+.RE
+
+.sp
+.LP
+Execution of each program is represented as a reduced-functionality service
+instance named by the program's path. These instances are held in a special
+legacy-run state.
+.sp
+.LP
+These instances do not have an enabled property (type \fBboolean\fR in the
+general property group) and, generally, cannot be manipulated with the
+\fBsvcadm\fR(8) command. No error diagnosis or restart is done for these
+programs.
+.SH SEE ALSO
+.sp
+.LP
+.BR svcs (1),
+.BR exec (2),
+.BR fork (2),
+.BR strftime (3C),
+.BR libscf (3LIB),
+.BR contract (5),
+.BR service_bundle (5),
+.BR smf_bootstrap (7),
+.BR smf_method (7),
+.BR smf_restarter (7),
+.BR smf_security (7),
+.BR inetd (8),
+.BR svc.configd (8),
+.BR svc.startd (8),
+.BR svcadm (8),
+.BR svccfg (8)
diff --git a/usr/src/man/man7/smf_bootstrap.7 b/usr/src/man/man7/smf_bootstrap.7
new file mode 100644
index 0000000000..d48cf8b2ad
--- /dev/null
+++ b/usr/src/man/man7/smf_bootstrap.7
@@ -0,0 +1,131 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SMF_BOOTSTRAP 7 "Sep 25, 2008"
+.SH NAME
+smf_bootstrap \- service management facility boot, packaging, and compatibility
+behavior
+.SH DESCRIPTION
+.sp
+.LP
+The service management facility establishes conventions for delivering service
+manifests, incorporating service manifest changes, describing service
+configuration stability, using service configuration overrides, and the use of
+service profiles.
+.SS "Manifest Loading at Boot"
+.sp
+.LP
+The \fBsvc:/system/manifest-import:default\fR service uses \fBsvccfg\fR(8) to
+import certain manifest files from the \fB/var/svc/manifest\fR directory tree
+into the service configuration repository. The service imports files that it
+has not imported previously and those files which have changed since the last
+time they were imported by the service. When a manifest is imported by the
+service, a hash of the file that includes its contents is recorded in a
+property group of the \fBsvc:/smf/manifest\fR service. The
+\fBmanifest-import\fR service uses the hash to determine whether the file has
+changed. See \fBsvccfg\fR(8) for information on the \fBsvccfg import\fR
+behavior for services that already exist in the repository.
+.SS "Manifest Handling During Packaging Operations"
+.sp
+.LP
+Service manifests within packages should be identified with the class
+\fBmanifest\fR. Class action scripts that install and remove service manifests
+are included in the packaging subsystem. When \fBpkgadd\fR(8) is invoked, the
+service manifest is imported.
+.sp
+.LP
+When \fBpkgrm\fR(8) is invoked, instances in the manifest that are disabled
+are deleted. Instances in the manifest that are online or degraded are disabled
+first and then deleted. Any services in the manifest with no remaining
+instances are also deleted.
+.sp
+.LP
+If the \fB-R\fR option is supplied to \fBpkgadd\fR(8) or \fBpkgrm\fR(8), the
+actions described in this section will be done when the system is next rebooted
+with that alternate root path.
+.SS "Stability Declarations"
+.sp
+.LP
+Each service group and each property group delivered in a manifest should
+declare a stability level based on \fBattributes\fR(7) definitions. With
+knowledge of the stability level, an application developer can determine the
+likelihood that feature development based on the existence or components of a
+service or object is likely to remain functional across a release boundary.
+.sp
+.LP
+In an \fBsmf\fR(7) context, the stability value also identifies the expected
+scope of the changes to properties within the property group across a release
+boundary for the service, which can include patches for that service. The
+following two sections discuss this in more detail.
+.SS "Property Overrides"
+.sp
+.LP
+The \fBservice_bundle\fR(5) document type definition includes an override
+attribute that is applicable to each property in a service manifest. If set to
+\fBtrue\fR, the attribute instructs \fBsvccfg\fR(8) and other manifest import
+tools to replace the current value of a property in the repository with the one
+from the manifest. If the override attribute is absent or present but set to
+\fBfalse\fR, the current value in the repository is preserved.
+.sp
+.LP
+Property groups declared as Stable do not contain override attributes on
+enclosed properties. Property groups declared as Evolving do so only to correct
+an erroneous setting. Property groups declared as Unstable can contain
+overrides on any property. The exception to this behavior is for the stability
+property itself, which can be modified to identify incipient change to the
+interface presented by the service.
+.SS "Property Group Deletion"
+.sp
+.LP
+The \fBservice_bundle\fR(5) document type definition includes a delete
+attribute, applicable to each property group in a service manifest. If set to
+\fBtrue\fR, the delete attribute instructs \fBsvccfg\fR(8) and other manifest
+import tools to delete this property group from the repository. If the delete
+attribute is absent or present but set to \fBfalse\fR, the property group in
+the repository is preserved.
+.sp
+.LP
+Property groups declared as Stable or Evolving are not deleted. Property groups
+declared as Unstable can be deleted across any release boundary.
+.SS "Profile Application"
+.sp
+.LP
+The first time the existence of each of the three service profiles listed below
+is detected, \fBsvc.startd\fR(8) automatically applies the profile.
+.sp
+.in +2
+.nf
+/var/svc/profile/generic.xml
+/var/svc/profile/platform.xml
+/var/svc/profile/site.xml
+.fi
+.in -2
+
+.sp
+.LP
+The \fBsvc:/smf/manifest\fR service is used in a similar fashion.
+.sp
+.LP
+Additional service profiles that characterize the activation of various groups
+of service instances might be present in \fB/var/svc/profile\fR. None of the
+\fB/var/svc/profile\fR profiles are automatically applied to the repository. A
+profile can be manually applied or re-applied using \fBsvccfg\fR(8).
+.SH SEE ALSO
+.sp
+.LP
+.BR libscf (3LIB),
+.BR service_bundle (5),
+.BR attributes (7),
+.BR smf (7),
+.BR smf_security (7),
+.BR pkgadd (8),
+.BR pkgrm (8),
+.BR svc.startd (8),
+.BR svcadm (8),
+.BR svccfg (8)
+.SH NOTES
+.sp
+.LP
+The present version of \fBsmf\fR(7) does not support multiple repositories.
diff --git a/usr/src/man/man7/smf_method.7 b/usr/src/man/man7/smf_method.7
new file mode 100644
index 0000000000..9f2b9fc243
--- /dev/null
+++ b/usr/src/man/man7/smf_method.7
@@ -0,0 +1,601 @@
+'\" te
+.\" Copyright 2019 OmniOS Community Edition (OmniOSce) Association.
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
+.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SMF_METHOD 7 "February 25, 2019"
+.SH NAME
+smf_method \- service management framework conventions for methods
+.SH DESCRIPTION
+.LP
+The class of services managed by \fBsvc.startd\fR(8) in the service management
+framework, \fBsmf\fR(7), consists of applications that fit a simple
+\fBfork\fR(2)-\fBexec\fR(2) model. The \fBsvc.startd\fR(8) master daemon and
+other restarters support the \fBfork\fR(2)-\fBexec\fR(2) model, potentially
+with additional capabilities. The \fBsvc.startd\fR(8) daemon and other
+restarters require that the methods which activate, manipulate, or examine a
+service instance follow the conventions described in this manual page.
+.SS "Invocation form"
+.LP
+The form of a method invocation is not dictated by convention. In some cases, a
+method invocation might consist of the direct invocation of the daemon or other
+binary executable that provides the service. For cases in which an executable
+script or other mediating executable is used, the convention recommends the
+form:
+.sp
+.in +2
+.nf
+/path/to/method_executable abbr_method_name
+.fi
+.in -2
+
+.sp
+.LP
+The \fIabbr_method_name\fR used for the recommended form is a supported method
+such as \fBstart\fR or \fBstop\fR. The set of methods supported by a restarter
+is given on the related restarter page. The \fBsvc.startd\fR(8) daemon
+supports \fBstart\fR, \fBstop\fR, and \fBrefresh\fR methods.
+.sp
+.LP
+A restarter might define other kinds of methods beyond those referenced in this
+page. The conventions surrounding such extensions are defined by the restarter
+and might not be identical to those given here.
+.SS "Environment Variables"
+.LP
+The restarter provides four environment variables to the method that determine
+the context in which the method is invoked.
+.sp
+.ne 2
+.na
+\fB\fBSMF_FMRI\fR\fR
+.ad
+.sp .6
+.RS 4n
+The service fault management resource identifier (FMRI) of the instance for
+which the method is invoked.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSMF_METHOD\fR\fR
+.ad
+.sp .6
+.RS 4n
+The full name of the method being invoked, such as \fBstart\fR or \fBstop\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSMF_RESTARTER\fR\fR
+.ad
+.sp .6
+.RS 4n
+The service FMRI of the restarter that invokes the method
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSMF_ZONENAME\fR\fR
+.ad
+.sp .6
+.RS 4n
+The name of the zone in which the method is running. This can also be obtained
+by using the \fBzonename\fR(1) command.
+.RE
+
+.sp
+.LP
+These variables should be removed from the environment prior to the invocation
+of any persistent process by the method. A convenience shell function,
+\fBsmf_clear_env\fR, is given for service authors who use Bourne-compatible
+shell scripting to compose service methods in the include file described below.
+.sp
+.LP
+The method context can cause other environment variables to be set as described
+below.
+.SS "Method Definition"
+.LP
+A method is defined minimally by three properties in a propertygroup of type
+\fBmethod\fR.
+.sp
+.LP
+These properties are:
+.sp
+.ne 2
+.na
+\fBexec (\fIastring\fR)\fR
+.ad
+.RS 27n
+Method executable string.
+.RE
+
+.sp
+.ne 2
+.na
+\fBtimeout_seconds (\fIcount\fR)\fR
+.ad
+.RS 27n
+Number of seconds before method times out. See the \fBTimeouts\fR section for
+more detail.
+.RE
+
+.sp
+.ne 2
+.na
+\fBtype (\fIastring\fR)\fR
+.ad
+.RS 27n
+Method type. Currently always set to \fBmethod\fR.
+.RE
+
+.sp
+.LP
+A Method Context can be defined to further refine the execution environment of
+the method. See the \fBMethod Context\fR section for more information.
+.SS "Method Tokens"
+.LP
+When defined in the \fBexec\fR string of the method by the restarter
+\fBsvc.startd\fR, a set of tokens are parsed and expanded with appropriate
+value. Other restarters might not support method tokens. The delegated
+restarter for inet services, \fBinetd\fR(8), does not support the following
+method expansions.
+.sp
+.ne 2
+.na
+\fB\fB%%\fR\fR
+.ad
+.sp .6
+.RS 4n
+%
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB%r\fR\fR
+.ad
+.sp .6
+.RS 4n
+Name of the restarter, such as \fBsvc.startd\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB%m\fR\fR
+.ad
+.sp .6
+.RS 4n
+The full name of the method being invoked, such as \fBstart\fR or \fBstop\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB%s\fR\fR
+.ad
+.sp .6
+.RS 4n
+Name of the service
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB%i\fR\fR
+.ad
+.sp .6
+.RS 4n
+Name of the instance
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\fR\fB%f\fR\fR
+.ad
+.sp .6
+.RS 4n
+FMRI of the instance
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB%{prop[:,]}\fR\fR
+.ad
+.sp .6
+.RS 4n
+Value(s) of a property. The \fBprop\fR might be a property FMRI, a property
+group name and a property name separated by a \fB/\fR, or a property name in
+the \fBapplication\fR property group. These values can be followed by a \fB,\fR
+(comma) or \fB:\fR (colon). If present, the separators are used to separate
+multiple values. If absent, a space is used. The following shell metacharacters
+encountered in string values are quoted with a \ (backslash):
+.sp
+.in +2
+.nf
+; & ( ) | ^ < > newline space tab \ " '
+.fi
+.in -2
+
+An invalid expansion constitutes method failure.
+.RE
+
+.sp
+.LP
+Two explicit tokens can be used in the place of method commands.
+.sp
+.ne 2
+.na
+\fB\fB:kill [-signal]\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sends the specified signal, which is \fBSIGTERM\fR by default, to all processes
+in the primary instance contract. Always returns \fBSMF_EXIT_OK\fR. This token
+should be used to replace common \fBpkill\fR invocations.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB:true\fR\fR
+.ad
+.sp .6
+.RS 4n
+Always returns \fBSMF_EXIT_OK\fR. This token should be used for methods that
+are required by the restarter but which are unnecessary for the particular
+service implementation.
+.RE
+
+.SS "Exiting and Exit Status"
+.LP
+The required behavior of a start method is to delay exiting until the service
+instance is ready to answer requests or is otherwise functional.
+.sp
+.LP
+The following exit status codes are defined in \fB<libscf.h>\fR and in the
+shell support file.
+.sp
+
+.sp
+.TS
+l l l
+l l l .
+\fBSMF_EXIT_OK\fR \fB0\fR T{
+Method exited, performing its operation successfully.
+T}
+\fBSMF_EXIT_NODAEMON\fR \fB94\fR T{
+Method exited successfully but purposefully leaves no processes remaining in
+the contract; it should be treated as if it had a transient service model.
+T}
+\fBSMF_EXIT_ERR_FATAL\fR \fB95\fR T{
+Method failed fatally and is unrecoverable without administrative intervention.
+T}
+\fBSMF_EXIT_ERR_CONFIG\fR \fB96\fR T{
+Unrecoverable configuration error. A common condition that returns this exit status is the absence of required configuration files for an enabled service instance.
+T}
+\fBSMF_EXIT_ERR_NOSMF\fR \fB99\fR T{
+Method has been mistakenly invoked outside the \fBsmf\fR(7) facility. Services that depend on \fBsmf\fR(7) capabilities should exit with this status value.
+T}
+\fBSMF_EXIT_ERR_PERM\fR \fB100\fR T{
+Method requires a form of permission such as file access, privilege, authorization, or other credential that is not available when invoked.
+T}
+\fBSMF_EXIT_ERR_OTHER\fR \fBnon-zero\fR T{
+Any non-zero exit status from a method is treated as an unknown error. A series of unknown errors can be diagnosed as a fault by the restarter or on behalf of the restarter.
+T}
+.TE
+
+.sp
+.LP
+Use of a precise exit code allows the responsible restarter to categorize an
+error response as likely to be intermittent and worth pursuing restart or
+permanent and request administrative intervention.
+.SS "Timeouts"
+.LP
+Each method can have an independent timeout, given in seconds. The choice of a
+particular timeout should be based on site expectations for detecting a method
+failure due to non-responsiveness. Sites with replicated filesystems or other
+failover resources can elect to lengthen method timeouts from the default.
+Sites with no remote resources can elect to shorten the timeouts. Method
+timeout is specified by the \fBtimeout_seconds\fR property.
+.sp
+.LP
+If you specify \fB0 timeout_seconds\fR for a method, it declares to the
+restarter that there is no timeout for the service. This setting is not
+preferred, but is available for services that absolutely require it.
+.sp
+.LP
+\fB-1 timeout_seconds\fR is also accepted, but is a deprecated specification.
+.SS "Shell Programming Support"
+.LP
+A set of environment variables that define the above exit status values is
+provided with convenience shell functions in the file
+\fB/lib/svc/share/smf_include.sh\fR. This file is a Bourne shell script
+suitable for inclusion via the source operator in any Bourne-compatible shell.
+.sp
+.LP
+To assist in the composition of scripts that can serve as SMF methods as well
+as \fB/etc/init.d\fR scripts, the \fBsmf_present()\fR shell function is
+provided. If the \fBsmf\fR(7) facility is not available, \fBsmf_present()\fR
+returns a non-zero exit status.
+.sp
+.LP
+One possible structure for such a script follows:
+.sp
+.in +2
+.nf
+if smf_present; then
+ # Shell code to run application as managed service
+ ....
+
+ smf_clear_env
+else
+ # Shell code to run application as /etc/init.d script
+ ....
+fi
+.fi
+.in -2
+
+.sp
+.LP
+This example shows the use of both convenience functions that are provided.
+.SS "Method Context"
+.LP
+The service management facility offers a common mechanism set the context in
+which the \fBfork\fR(2)-\fBexec\fR(2) model services execute.
+.sp
+.LP
+The desired method context should be provided by the service developer. All
+service instances should run with the lowest level of privileges possible to
+limit potential security compromises.
+.sp
+.LP
+A method context can contain the following properties:
+.sp
+.ne 2
+.na
+\fB\fBuse_profile\fR\fR
+.ad
+.sp .6
+.RS 4n
+A boolean that specifies whether the profile should be used instead of the
+\fBuser\fR, \fBgroup\fR, \fBprivileges\fR, and \fBlimit_privileges\fR
+properties.
+.RE
+
+.sp
+.ne 2
+.na
+\fBenvironment\fR
+.ad
+.sp .6
+.RS 4n
+Environment variables to insert into the environment of the method, in the form
+of a number of \fBNAME=value\fR strings.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBprofile\fR\fR
+.ad
+.sp .6
+.RS 4n
+The name of an RBAC (role-based access control) profile which, along with the
+method executable, identifies an entry in \fBexec_attr\fR(5).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBuser\fR\fR
+.ad
+.sp .6
+.RS 4n
+The user ID in numeric or text form.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBgroup\fR\fR
+.ad
+.sp .6
+.RS 4n
+The group ID in numeric or text form.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsupp_groups\fR\fR
+.ad
+.sp .6
+.RS 4n
+An optional string that specifies the supplemental group memberships by ID, in
+numeric or text form.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBprivileges\fR\fR
+.ad
+.sp .6
+.RS 4n
+An optional string specifying the privilege set as defined in
+\fBprivileges\fR(7).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBlimit_privileges\fR\fR
+.ad
+.sp .6
+.RS 4n
+An optional string specifying the limit privilege set as defined in
+\fBprivileges\fR(7).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBworking_directory\fR\fR
+.ad
+.sp .6
+.RS 4n
+The home directory from which to launch the method. \fB:home\fR can be used as
+a token to indicate the home directory of the user whose \fBuid\fR is used to
+launch the method. If the property is unset, \fB:home\fR is used.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsecurity_flags\fR\fR
+.ad
+.sp .6
+.RS 4n
+The security flags to apply when launching the method. See \fBsecurity-flags\fR(7).
+.sp
+.LP
+The "default" keyword specifies those flags specified in
+\fBsvc:/system/process-security\fR. The "all" keyword enables all flags, the
+"none" keyword enables no flags. The "current" keyword specifies the current
+flags. Flags may be added by specifying their name (optionally preceded
+by '+'), and removed by preceding their name with '-').
+.sp
+.LP
+Use of "all" has associated risks, as future versions of the system may
+include further flags which may harm poorly implemented software.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcorefile_pattern\fR\fR
+.ad
+.sp .6
+.RS 4n
+An optional string that specifies the corefile pattern to use for the service,
+as per \fBcoreadm\fR(8). Most restarters supply a default. Setting this
+property overrides local customizations to the global core pattern.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBproject\fR\fR
+.ad
+.sp .6
+.RS 4n
+The project ID in numeric or text form. \fB:default\fR can be used as a token
+to indicate a project identified by \fBgetdefaultproj\fR(3PROJECT) for the user
+whose \fBuid\fR is used to launch the method.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBresource_pool\fR\fR
+.ad
+.sp .6
+.RS 4n
+The resource pool name on which to launch the method. \fB:default\fR can be
+used as a token to indicate the pool specified in the \fBproject\fR(5) entry
+given in the \fBproject\fR attribute above.
+.RE
+
+.sp
+.LP
+The method context can be set for the entire service instance by specifying a
+\fBmethod_context\fR property group for the service or instance. A method might
+override the instance method context by providing the method context properties
+on the method property group.
+.sp
+.LP
+Invalid method context settings always lead to failure of the method, with the
+exception of invalid environment variables that issue warnings.
+.sp
+.LP
+In addition to the context defined above, many \fBfork\fR(2)-\fBexec\fR(2)
+model restarters also use the following conventions when invoking executables
+as methods:
+.sp
+.ne 2
+.na
+\fBArgument array\fR
+.ad
+.sp .6
+.RS 4n
+The arguments in \fBargv[]\fR are set consistently with the result \fB/bin/sh
+-c\fR of the \fBexec\fR string.
+.RE
+
+.sp
+.ne 2
+.na
+\fBFile descriptors\fR
+.ad
+.sp .6
+.RS 4n
+File descriptor \fB0\fR is \fB/dev/null\fR. File descriptors \fB1\fR and
+\fB2\fR are recommended to be a per-service log file.
+.RE
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/lib/svc/share/smf_include.sh\fR\fR
+.ad
+.sp .6
+.RS 4n
+Definitions of exit status values.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/include/libscf.h\fR\fR
+.ad
+.sp .6
+.RS 4n
+Definitions of exit status codes.
+.RE
+
+.SH SEE ALSO
+.LP
+.BR zonename (1),
+.BR exec (2),
+.BR fork (2),
+.BR getdefaultproj (3PROJECT),
+.BR exec_attr (5),
+.BR project (5),
+.BR service_bundle (5),
+.BR attributes (7),
+.BR privileges (7),
+.BR rbac (7),
+.BR security-flags (7),
+.BR smf (7),
+.BR smf_bootstrap (7),
+.BR zones (7),
+.BR coreadm (8),
+.BR inetd (8),
+.BR svc.startd (8),
+.BR svccfg (8)
+.SH NOTES
+.LP
+The present version of \fBsmf\fR(7) does not support multiple repositories.
+.sp
+.LP
+When a service is configured to be started as root but with privileges
+different from \fBlimit_privileges\fR, the resulting process is privilege
+aware. This can be surprising to developers who expect \fBseteuid(<non-zero
+UID>)\fR to reduce privileges to basic or less.
diff --git a/usr/src/man/man7/smf_restarter.7 b/usr/src/man/man7/smf_restarter.7
new file mode 100644
index 0000000000..2b21d96f25
--- /dev/null
+++ b/usr/src/man/man7/smf_restarter.7
@@ -0,0 +1,109 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 2019 Joyent, Inc.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SMF_RESTARTER 7 "Dec 11, 2019"
+.SH NAME
+smf_restarter \- service management facility conventions for restarters
+.SH DESCRIPTION
+All service instances in the service management facility must be managed by a
+restarter. This manual page describes configuration, functionality, and
+reporting characteristics that are common to all restarters in the framework.
+Characteristics specific to a particular restarter are described in the
+restarter's man page.
+.sp
+.LP
+For each managed service, a restarter relies on retrieving properties on the
+service instance to determine configuration. The restarter manages a set of
+property groups to communicate the current disposition of a service with
+display tools such as \fBsvcs\fR(1).
+.SS "Service Configuration"
+The common restarter configuration for all services is captured in the
+\fBgeneral\fR property group. This group includes the following required and
+optional property settings.
+.sp
+.ne 2
+.na
+\fB\fBenabled\fR\fR
+.ad
+.RS 19n
+This is a required property. If set, the restarter of an instance attempts to
+maintain availability of the service.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrestarter\fR\fR
+.ad
+.RS 19n
+This is an optional property that allows the specification of an alternate
+restarter to manage the service instance. If the restarter property is empty or
+absent, the restarter defaults to \fBsvc.startd\fR(8).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsingle_instance\fR\fR
+.ad
+.RS 19n
+This is an optional property. When set, only one instance of the service is
+allowed to transition to an online or degraded status at any time. Note that no
+known implementation honours this setting, and it should be considered obsolete.
+.RE
+
+.SS "Service Reporting"
+All restarters report status using the \fBrestarter\fR property group, which
+includes the following properties:
+.sp
+.ne 2
+.na
+\fB\fBnext_state\fR\fR
+.ad
+.RS 19n
+The current state and next state, if currently in transition, for instances
+stored in these properties. See \fBsmf\fR(7) for a description of the potential
+states.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBauxiliary_state\fR\fR
+.ad
+.RS 19n
+An astring with no spaces that contains a precise term to describe the full
+restarter-specific state in combination with the restarter state property. The
+auxiliary state cannot always be set and is always cleared during transition
+out of any state. Each restarter must define the precise list of auxiliary
+states it uses.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBstate_timestamp\fR\fR
+.ad
+.RS 19n
+The time when the current state was reached.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcontract\fR\fR
+.ad
+.RS 19n
+The primary process contract ID, if any, under which the service instance is
+executing.
+.RE
+
+.SH SEE ALSO
+.BR svcs (1),
+.BR service_bundle (5),
+.BR smf (7),
+.BR smf_method (7),
+.BR svc.startd (8)
diff --git a/usr/src/man/man7/smf_security.7 b/usr/src/man/man7/smf_security.7
new file mode 100644
index 0000000000..78f03f2eb4
--- /dev/null
+++ b/usr/src/man/man7/smf_security.7
@@ -0,0 +1,234 @@
+'\" te
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
+.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SMF_SECURITY 7 "May 13, 2017"
+.SH NAME
+smf_security \- service management facility security behavior
+.SH DESCRIPTION
+.LP
+The configuration subsystem for the service management facility, \fBsmf\fR(7),
+requires privilege to modify the configuration of a service. Privileges are
+granted to a user by associating the authorizations described below to the user
+through \fBuser_attr\fR(5) and \fBprof_attr\fR(5). See \fBrbac\fR(7).
+.sp
+.LP
+The following authorization is used to manipulate services and service
+instances.
+.sp
+.ne 2
+.na
+\fB\fBsolaris.smf.modify\fR\fR
+.ad
+.RS 22n
+Authorized to add, delete, or modify services, service instances, or their
+properties, and to read protected property values.
+.RE
+
+.SS "Property Group Authorizations"
+.LP
+The \fBsmf\fR(7) configuration subsystem associates properties with each
+service and service instance. Related properties are grouped. Groups can
+represent an execution method, credential information, application data, or
+restarter state. The ability to create or modify property groups can cause
+\fBsmf\fR(7) components to perform actions that can require operating system
+privilege. Accordingly, the framework requires appropriate authorization to
+manipulate property groups.
+.sp
+.LP
+Each property group has a type corresponding to its purpose. The core property
+group types are \fBmethod\fR, \fBdependency\fR, \fBapplication\fR, and
+\fBframework\fR. Additional property group types can be introduced, provided
+they conform to the extended naming convention in \fBsmf\fR(7). The following
+basic authorizations, however, apply only to the core property group types:
+.sp
+.ne 2
+.na
+\fB\fBsolaris.smf.modify.method\fR\fR
+.ad
+.sp .6
+.RS 4n
+Authorized to change values or create, delete, or modify a property group of
+type \fBmethod\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsolaris.smf.modify.dependency\fR\fR
+.ad
+.sp .6
+.RS 4n
+Authorized to change values or create, delete, or modify a property group of
+type \fBdependency\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsolaris.smf.modify.application\fR\fR
+.ad
+.sp .6
+.RS 4n
+Authorized to change values, read protected values, and create, delete, or
+modify a property group of type application.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsolaris.smf.modify.framework\fR\fR
+.ad
+.sp .6
+.RS 4n
+Authorized to change values or create, delete, or modify a property group of
+type \fBframework\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsolaris.smf.modify\fR\fR
+.ad
+.sp .6
+.RS 4n
+Authorized to add, delete, or modify services, service instances, or their
+properties, and to read protected property values.
+.RE
+
+.sp
+.LP
+Property group-specific authorization can be specified by properties contained
+in the property group.
+.sp
+.ne 2
+.na
+\fB\fBmodify_authorization\fR\fR
+.ad
+.RS 24n
+Authorizations allow the addition, deletion, or modification of properties
+within the property group, and the retrieval of property values from the
+property group if protected.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBvalue_authorization\fR\fR
+.ad
+.RS 24n
+Authorizations allow changing the values of any property of the property group
+except \fBmodify_authorization\fR, and the retrieval of any property values
+except modify_authorization from the property group if protected.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBread_authorization\fR\fR
+.ad
+.RS 24n
+Authorizations allow the retrieval of property values within the property
+group. The presence of a string-valued property with this name identifies the
+containing property group as protected. This property has no effect on property
+groups of types other than application. See \fBProtected Property Groups\fR.
+.RE
+
+.sp
+.LP
+The above authorization properties are only used if they have type
+\fBastring\fR. If an instance property group does not have one of the
+properties, but the instance's service has a property group of the same name
+with the property, its values are used.
+.SS "Protected Property Groups"
+.LP
+Normally, all property values in the repository can be read by any user without
+explicit authorization. Property groups of non-framework types can be used to
+store properties with values that require protection. They must not be revealed
+except upon proper authorization. A property group's status as protected is
+indicated by the presence of a string-valued \fBread_authorization\fR property.
+If this property is present, the values of all properties in the property group
+is retrievable only as described in \fBProperty Group Authorizations\fR.
+.sp
+.LP
+Administrative domains with policies that prohibit backup of data considered
+sensitive should exclude the SMF repository databases from their backups. In
+the face of such a policy, non-protected property values can be backed up by
+using the \fBsvccfg\fR(8) archive command to create an archive of the
+repository without protected property values.
+.SS "Service Action Authorization"
+.LP
+Certain actions on service instances can result in service interruption or
+deactivation. These actions require an authorization to ensure that any denial
+of service is a deliberate administrative action. Such actions include a
+request for execution of the refresh or restart methods, or placement of a
+service instance in the maintenance or other non-operational state. The
+following authorization allows such actions to be requested:
+.sp
+.ne 2
+.na
+\fB\fBsolaris.smf.manage\fR\fR
+.ad
+.RS 22n
+Authorized to request restart, refresh, or other state modification of any
+service instance.
+.RE
+
+.sp
+.LP
+In addition, the \fBgeneral/action_authorization\fR property can specify
+additional authorizations that permit service actions to be requested for that
+service instance. The \fBsolaris.smf.manage\fR authorization is required to
+modify this property.
+.SS "Defined Rights Profiles"
+.LP
+Two rights profiles are included that offer grouped authorizations for
+manipulating typical \fBsmf\fR(7) operations.
+.sp
+.ne 2
+.na
+\fBService Management\fR
+.ad
+.RS 22n
+A service manager can manipulate any service in the repository in any way. It
+corresponds to the \fBsolaris.smf.manage\fR and \fBsolaris.smf.modify\fR
+authorizations.
+.RE
+
+.sp
+.ne 2
+.na
+\fBService Operator\fR
+.ad
+.RS 22n
+A service operator has the ability to enable or disable any service instance on
+the system, as well as request that its restart or refresh method be executed.
+It corresponds to the \fBsolaris.smf.manage\fR and
+\fBsolaris.smf.modify.framework\fR authorizations.
+.sp
+Sites can define additional rights profiles customized to their needs.
+.RE
+
+.SS "Remote Repository Modification"
+.LP
+Remote repository servers can deny modification attempts due to additional
+privilege checks. See NOTES.
+.SH SEE ALSO
+.LP
+.BR auths (1),
+.BR profiles (1),
+.BR prof_attr (5),
+.BR user_attr (5),
+.BR rbac (7),
+.BR smf (7),
+.BR svccfg (8)
+.SH NOTES
+.LP
+The present version of \fBsmf\fR(7) does not support remote repositories.
+.sp
+.LP
+When a service is configured to be started as root but with privileges
+different from \fBlimit_privileges\fR, the resulting process is privilege
+aware. This can be surprising to developers who expect \fBseteuid(<non-zero
+UID>)\fR to reduce privileges to basic or less.
diff --git a/usr/src/man/man7/smf_template.7 b/usr/src/man/man7/smf_template.7
new file mode 100644
index 0000000000..9f68952666
--- /dev/null
+++ b/usr/src/man/man7/smf_template.7
@@ -0,0 +1,806 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SMF_TEMPLATE 7 "Nov 10, 2008"
+.SH NAME
+smf_template \- service management framework support for service metadata
+.SH DESCRIPTION
+.sp
+.LP
+Templates are defined by service developers to describe metadata about a
+service in general or individual configuration properties on a service,
+including human-consumable descriptions as well as definitions of valid
+configuration.
+.sp
+.LP
+Administrators are provided access to templates through SMF commands that
+describe configuration values and validate configuration against templates.
+.sp
+.LP
+Tool developers can use templates to provide more helpful user interfaces for
+service configuration.
+.SS "Template Data"
+.sp
+.LP
+Service metadata is defined in the template as part of the service manifest.
+.SS "Consuming Template Data"
+.sp
+.LP
+The \fBsvcs -lv\fR and \fBsvccfg describe\fR commands can be used to access
+metadata about properties in a human-readable format.
+.sp
+.LP
+\fBsvccfg\fR(8)'s \fBvalidate\fR subcommand can be used to validate a service
+instance or manifest against template data. A set of \fBlibscf\fR(3LIB)
+interfaces is available to access template data.
+.SS "Template Definition"
+.sp
+.LP
+The sole interface to define templates is the service manifest.
+.sp
+.LP
+Service authors should provide template metadata including \fBcommon_names\fR,
+\fBdescriptions\fR, \fBchoices\fR and \fBconstraints\fR for service-specific
+property groups and properties which they introduce. At a minimum, service
+authors must provide descriptions for property groups and properties in the C
+locale. Service authors should not provide template metadata for
+framework-delivered property groups such as methods and dependencies.
+.sp
+.LP
+See the \fBEXAMPLES\fR section for an example of authoring a template
+definition for a service.
+.SS "Template Composition"
+.sp
+.LP
+All template interfaces search for template data about a property group first
+on the instance, then on the service, then on the service's restarter, and
+finally globally.
+.sp
+.LP
+A property group template is defined by its author to apply to a specific
+instance, to a service and all of its instances, to a restarter's delegates, or
+globally. A typical service author defines the template on an instance or on a
+service. A template defined on an instance is applied to that instance only,
+and can override a template for that property group defined on the service. A
+template defined on the service is applied to all instances of that service.
+.sp
+.LP
+Restarter authors can define templates in their manifest that apply to any
+service which uses their restarter, which is also known as a \fBdelegate\fR.
+SMF framework authors have defined templates for property groups with
+well-known meanings to the entire SMF framework in the manifest for
+\fBsvc:/system/svc/global\fR.
+.sp
+.LP
+Templates defined globally or by the restarter and re-defined by the service or
+instance are flagged as a validation error. Service authors can avoid these
+errors by creating templates only for property groups specific to their service
+and not consumed by the SMF framework.
+.sp
+.LP
+Property group templates can also be wildcarded by name or type. Only the most
+specific template definition applicable to a property group is honored.
+.SS "Template Details"
+.SS "Service and Instance Templates"
+.sp
+.LP
+The \fBtemplate\fR element defines the start of a template block. All further
+definitions below can be included in a template block. A \fBtemplate\fR element
+can be contained in either a \fBservice\fR or \fBinstance\fR element. If it is
+contained in the \fBservice\fR element, it applies to the service and all
+instances of that service. If it is contained in the \fBinstance\fR element, it
+applies to only that instance of the service.
+.sp
+.LP
+Whenever possible, we recommend defining the template data for the entire
+service.
+.sp
+.in +2
+.nf
+<service ... >
+ <template>
+ </template>
+</service>
+.fi
+.in -2
+
+.SS "Service and Instance Common Names"
+.sp
+.LP
+The entire service or instance can define a common name to describe the purpose
+of the service/instance.
+.sp
+.in +2
+.nf
+<template>
+ <common_name>
+ <loctext xml:lang='C'>console login</loctext>
+ </common_name>
+<template>
+.fi
+.in -2
+
+.sp
+.LP
+\fIcommon_name\fR is a free-form string, but is intended to be used as a label
+in a GUI or CLI.
+.sp
+.LP
+The following guidelines are recommended:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Be brief. A word or two is usually most appropriate. Limit the name to under 40
+characters.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Be clear. The service, property group, or property name might not be helpful
+for humans, but \fIcommon_name\fR should help clarify the purpose of the
+entity.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+No punctuation. \fIcommon_name\fR is not a sentence or a paragraph. It should
+not contain clauses or phrases. Punctuation should only be present to meet
+trademark requirements.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Capital letters must be used only for acronyms or proper names. For locales
+other than English, use appropriate capitalization for a sentence fragment.
+.RE
+.SS "Service and Instance Descriptions"
+.sp
+.LP
+The description element contains a longer description of the property group,
+suitable for a status line or a tool-tip:
+.sp
+.in +2
+.nf
+<template>
+ <description>
+ <loctext xml:lang='C'>Provide the text login prompt on console.
+ </lcotext>
+ </description>
+<template>
+.fi
+.in -2
+
+.sp
+.LP
+\fIdescription\fR Guidelines
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Use proper grammar. \fIdescription\fR is a sentence meant to be read by humans.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Be brief. A few sentences are usually most appropriate.
+.RE
+.SS "Documentation"
+.sp
+.LP
+Documentation for this service can be defined explicitly, so that when the
+service is experiencing issues, or a consumer of the service wants more
+information on it, they can find it easily.
+.sp
+.LP
+Documentation can include man pages or references to stable URLs for reference
+documentation.
+.sp
+.in +2
+.nf
+<template>
+ <documentation>
+ <manpage title='ttymon' section='8' manpath='/usr/share/man' />
+ <doc_link name='docs.sun.com' uri='http://docs.sun.com' />
+ </documentation>
+</template>
+.fi
+.in -2
+
+.SS "Property Groups"
+.sp
+.LP
+The \fBpg_pattern\fR element contains the definitions for a property group:
+.sp
+.in +2
+.nf
+<template>
+ <pg_pattern name="pgname" type="pgtype" target="this" required="true">
+ </pg_pattern>
+</template>
+.fi
+.in -2
+
+.sp
+.LP
+\fIname\fR is the property group's name, and \fItype\fR is the property group's
+type.
+.sp
+.LP
+\fItarget\fR specifies what the target of this definition is. \fB"this"\fR
+would refer to the defining service or instance. \fB"instance"\fR can only be
+used in a service's template block, and means the definition applies to all
+instances of this service. \fB"delegate"\fR can only be used in a restarter's
+template block, and applies to all instances that are delegated to that
+restarter. \fB"all"\fR, only usable by the master restarter, would refer to all
+services on the system. The default value of target is \fB"this"\fR.
+.sp
+.LP
+\fBrequired\fR indicates whether this property group is required or not. The
+default value of required is \fBfalse\fR. If \fBrequired\fR is \fBtrue\fR, both
+\fIname\fR and \fItype\fR must be specified.
+.sp
+.LP
+\fIname\fR and/or \fItype\fR can be omitted. If either of these attributes is
+omitted it is treated as a wildcard. For instance, if the name attribute is
+omitted from the \fBpg_pattern\fR definition, the \fBpg_pattern\fR is applied
+to all property groups that have the specified type.
+.SS "Property Group Names"
+.sp
+.LP
+The \fIcommon_name\fR element contains the localized, human-readable name for
+the property group:
+.sp
+.in +2
+.nf
+<pg_pattern ...>
+ <common_name>
+ <loctext xml:lang='C'>startt method</loctext>
+ </common_name>
+</pg_pattern>
+.fi
+.in -2
+
+.sp
+.LP
+\fIcommon_name\fR is a free-form string, but is intended to be used as a label
+in a GUI or CLI.
+.sp
+.LP
+The following guidelines are recommended:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Be brief. A word or two is usually most appropriate.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Be clear. The service, property group, or property name might not be helpful
+for humans, but \fIcommon_name\fR should help clarify the purpose of the
+entity.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+No punctuation. \fIcommon_name\fR is not a sentence or a paragraph. It should
+not contain clauses or phrases. Punctuation should only be present to meet
+trademark requirements.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Capital letters must be used only for acronyms or proper names. For locales
+other than English, use appropriate capitalization for a sentence fragment.
+.RE
+.SS "Property Group Description"
+.sp
+.LP
+The \fIdescription\fR element contains a longer description of the property
+group, suitable for a status line or a tool-tip:
+.sp
+.in +2
+.nf
+<pg_pattern ...>
+ <description>
+ <loctext xml:lang='C'>A required method which starts the service.
+ </loctext>
+ </description>
+</pg_pattern>
+.fi
+.in -2
+
+.sp
+.LP
+\fIdescription\fR Guidelines
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Use proper grammar. description is a sentence meant to be read by humans.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Be brief. A few sentences are usually most appropriate.
+.RE
+.SS "Properties"
+.sp
+.LP
+The \fIprop_pattern\fR element contains the definitions for a specific
+property:
+.sp
+.in +2
+.nf
+<pg_pattern ...>
+ <prop_pattern name="propname" type="proptype" required="true">
+ </prop_pattern>
+</pg_pattern>
+.fi
+.in -2
+
+.sp
+.LP
+\fIname\fR is the property's name, and \fItype\fR is the property's type.
+.sp
+.LP
+\fBrequired\fR indicates whether this property is required. The default value
+of \fBrequired\fR is \fBfalse\fR.
+.sp
+.LP
+\fIname\fR is always required. \fItype\fR is optional only if \fBrequired\fR is
+\fBfalse\fR.
+.SS "Property Names"
+.sp
+.LP
+The \fIcommon_name\fR element contains the localized, human-readable name for
+the property:
+.sp
+.in +2
+.nf
+
+.fi
+.in -2
+
+.sp
+.LP
+\fIcommon_name\fR is a free-form string field, but is intended to be used as a
+label in a GUI or CLI.
+.sp
+.in +2
+.nf
+<prop_pattern ...>
+<common_name>
+ <loctext xml:lang='C'>retry interval</loctext>
+</common_name>
+</prop_pattern>
+.fi
+.in -2
+
+.sp
+.LP
+The following guidelines are recommended:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Be brief. A word or two is usually most appropriate.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Be clear. The service, property group, or property name might not be helpful
+for humans, but \fIcommon_name\fR should help clarify the purpose of the
+entity.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+No punctuation. \fIcommon_name\fR is not a sentence or a paragraph. It should
+not contain clauses or phrases. Punctuation should only be present to meet
+trademark requirements.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Capital letters must be used only for acronyms or proper names. For locales
+other than English, use appropriate capitalization for a sentence fragment.
+.RE
+.SS "Property units"
+.sp
+.LP
+The \fIunits\fR element contains the localized, human-readable units for a
+numerical property:
+.sp
+.in +2
+.nf
+<prop_pattern ...>
+ <units>
+ <loctext xml:lang='C'>seconds</loctext>
+ </units>
+</prop_pattern>
+.fi
+.in -2
+
+.sp
+.LP
+\fIunits\fR Guidelines
+.sp
+.LP
+The following guidelines are recommended:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Be brief. Strive to use only a single word or label. The plural form is usually
+most appropriate.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+No punctuation. units is not a sentence or a paragraph. It should not contain
+clauses or phrases. Punctuation should only be present to meet trademark
+requirements.
+.RE
+.SS "Property description"
+.sp
+.LP
+The \fIdescription\fR element contains a longer description of the property,
+suitable for a status line or a tool-tip:
+.sp
+.in +2
+.nf
+<prop_pattern ...>
+ <description> <loctext xml:lang='C'>
+ The number of seconds to wait before retry.
+ </loctext> </description>
+</prop_pattern>
+.fi
+.in -2
+
+.sp
+.LP
+\fIdescription\fR Guidelines
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Use proper grammar. \fIdescription\fR is a sentence meant to be read by humans.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Be brief. A few sentences are usually most appropriate.
+.RE
+.SS "Property visibility"
+.sp
+.LP
+The \fIvisibility\fR element specifies whether simplified views in higher level
+software might want to display this property.
+.sp
+.in +2
+.nf
+<prop_pattern ...>
+ <visibility value="hidden | readonly | readwrite"/>
+</prop_pattern>
+.fi
+.in -2
+
+.sp
+.LP
+Some properties are internal implementation details and should not be presented
+as a configuration setting. Others might merely be read-only. This property is
+used to specify these restrictions. A value of hidden indicates that the
+property shouldn't be displayed, \fBreadonly\fR means that the property isn't
+intended to be modified, and \fBreadwrite\fR indicates the property is
+modifiable.
+.sp
+.LP
+This is not a security mechanism, it is solely intended to help prevent the
+user from shooting himself in the foot, and to remove unnecessary clutter from
+CLI output or a GUI display. Hidden properties is visible in full-disclosure
+modes of many commands and UIs.
+.SS "Property format"
+.sp
+.LP
+The \fIcardinality\fR and \fIinternal_separators\fR elements constrain the
+structure of a property:
+.sp
+.in +2
+.nf
+<prop_pattern ...>
+ <cardinality min="1" max="1"/>
+ <internal_separators>,<internal_separators>
+</prop_pattern>
+.fi
+.in -2
+
+.sp
+.LP
+\fIcardinality\fR indicates the acceptable number of property values. \fImin\fR
+is the minimum number, and \fImax\fR is the maximum number. Both are optional.
+If neither is specified, \fB<cardinality/>\fR is the same as the default, zero
+or more values.
+.sp
+.LP
+\fIinternal_separators\fR specify the separator characters used for those
+property values into which multiple real values are packed.
+.SS "Value constraints"
+.sp
+.LP
+The \fIconstraints\fR element specifies what values are acceptable for a
+property:
+.sp
+.in +2
+.nf
+<prop_pattern ...>
+<constraints>
+ <value name="blue" />
+ <range min="1" max="7"/>
+ <include_values type="values"/>
+</constraints>
+</prop_pattern>
+.fi
+.in -2
+
+.sp
+.LP
+The \fIvalue\fR element includes a possible property value. range includes an
+integer range.
+.sp
+.LP
+\fIvalue\fR and \fIrange\fR can be used in any combination, as restricting
+their use would prohibit many valid descriptions. If no value constraints are
+specified, the property can take on any value.
+.sp
+.LP
+\fIinclude_values\fR includes all values specified by the values block (see
+\fBValue Descriptions\fR section).
+.SS "Value choices"
+.sp
+.LP
+The choices block indicates which values a UI should offer the user:
+.sp
+.in +2
+.nf
+<prop_pattern ...>
+<choices>
+ <range min="1" max="3"/>
+ <value name="vt100" />
+ <value name="xterm" />
+ <include_values type="constraints"/>
+ <include_values type="values"/>
+</choices>
+</prop_pattern>
+.fi
+.in -2
+
+.sp
+.LP
+range and value include ranges and individual values like they do for
+constraints.
+.sp
+.LP
+\fIinclude_values\fR includes all values specified by either the constraints
+block or the values block (see next section).
+.SS "Value Descriptions"
+.sp
+.LP
+Like property names, the values a property can take on can also have
+inscrutable representations. The values element contains localized,
+human-readable descriptions for specific property values:
+.sp
+.in +2
+.nf
+<prop_pattern>
+<values>
+ <value name="blue">
+ <common_name>
+ <loctext xml:lang='C'>blueloctext xml:lang='C'>blue>
+ </common_name>
+ <description>
+ <loctext xml:lang='C>
+ The color between green and indigo.
+ </loctext>
+ </description>
+ </value>
+</values>
+</prop_pattern>
+.fi
+.in -2
+
+.sp
+.LP
+\fIcommon_name\fR is a free-form string field, but is intended to be used as a
+label in a GUI or CLI.
+.sp
+.LP
+The following guidelines are recommended:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Be brief. A word or two is usually most appropriate.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Be clear. The service, property group, or property name might not be helpful
+for humans, but \fIcommon_name\fR should help clarify the purpose of the
+entity.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+No punctuation. \fIcommon_name\fR is not a sentence or a paragraph. It should
+not contain clauses or phrases. Punctuation should only be present to meet
+trademark requirements.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Capital letters must be used only for acronyms or proper names. For locales
+other than English, use appropriate capitalization for a sentence fragment.
+.RE
+.sp
+.LP
+description Guidelines
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Use proper grammar. description is a sentence meant to be read by humans.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Be brief. A few sentences are usually most appropriate.
+.RE
+.SH EXAMPLES
+.sp
+.LP
+Assuming a basic service which wants to define basic templates data looks
+like this:
+.sp
+.in +2
+.nf
+<?xml version="1.0"?
+<!DOCTYPE service_bundle SYSTEM "/usr/share/lib/xml/dtd/service_bundle.dtd.1">
+<service_bundle type='manifest' name='FOOfoo:foo'>
+<service name='system/foo' type='service' version='1'>
+ <dependency>
+ name='multi-user'
+ type='service'
+ grouping='require_all'
+ restart_on='none'
+ <service_fmri value='svc:/milestone/multi-user' />
+ </dependency>
+ <exec_method
+ type='method'
+ name='start'
+ exec='/opt/foo/food'
+ timeout_seconds='60'>
+ </exec_method>
+ <exec_method
+ type='method'
+ name='stop'
+ exec=':kill'
+ timeout_seconds='60'>
+ </exec_method>
+ <property_group name='config' type='application'>
+ <propval name='local_only' type='boolean' value='false' />
+ <propval name='config_file' type='astring'
+ value='/opt/foo/foo.conf' />
+ <property name='modules' type='astring'>
+ <astring_list>
+ <value_node value='bar'/>
+ <value_node value='baz'/>
+ </astring_list>
+ </property>
+ </property_group>
+
+ <instance name='default' enabled='false' />
+</service_bundle>
+</service>
+.fi
+.in -2
+
+.sp
+.LP
+That service could define some basic templates data to help an administrator
+using this service inside of the \fB<service>\fR tags. The most helpful
+things are to document the purpose of the service itself and the
+service-specific configuration.
+.sp
+.in +2
+.nf
+<template>
+ <common_name> <loctext xml:lang='C'>
+ all-purpose demonstration
+ </loctext> /common_name>
+ <documentation>
+ <manpage title='food' section='8'
+ manpath='/opt/foo/man' />
+ </documentation>
+
+ <pg_pattern name='config' type='application' target='this'
+ required='true'>
+ <description> <loctext xml:lang='C'>
+ Basic configuration for foo.
+ </loctext> </description>
+ <prop_pattern name='local_only' type='boolean'
+ required='false'>
+ <description> <loctext xml:lang='C'>
+ Only listen to local connection requests.
+ </loctext> </description>
+ </prop_pattern>
+ <prop_pattern name='config_file' type='astring'
+ required='true'>
+ <cardinality min='1' max='1'/>
+ <description> <loctext xml:lang='C'>
+ Configuration file for foo.
+ </loctext> </description>
+ </prop_pattern>
+ <prop_pattern name='modules' type='astring'
+ required='false'>
+ <description> <loctext xml:lang='C'>
+ Plugin modules for foo.
+ </loctext> /description>
+ <values>
+ <value name='bar'>
+ <description> <loctext xml:lang='C'>
+ Allow foo to access the bar.
+ </loctext> </description>
+ </value>
+ <value name='baz'>
+ <description> <loctext xml:lang='C'>
+ Allow foo to access baz functions.
+ </loctext> </description>
+ </value>
+ <value name='qux'>
+ <description> <loctext xml:lang='C'>
+ Allow foo to access qux functions.
+ </loctext> </description>
+ </value>
+ </values>
+ <choices>
+ <include_values type='values'/>
+ </choices>
+ <prop_pattern>
+ </pg_pattern>
+</template>
+.fi
+.in -2
+
+.SH FILES
+.sp
+.LP
+\fB/usr/share/lib/xml/dtd/service_bundle.dtd.1\fR
+.SH SEE ALSO
+.sp
+.LP
+.BR svcs (1),
+.BR libscf (3LIB),
+.BR service_bundle (5),
+.BR smf (7),
+.BR svccfg (8)
diff --git a/usr/src/man/man7/standards.7 b/usr/src/man/man7/standards.7
new file mode 100644
index 0000000000..e52d5ea520
--- /dev/null
+++ b/usr/src/man/man7/standards.7
@@ -0,0 +1,493 @@
+'\" te
+.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH STANDARDS 7 "Nov 26, 2017"
+.SH NAME
+standards, ANSI, C, C++, ISO, POSIX, POSIX.1, POSIX.2, SUS, SUSv2, SUSv3, SVID,
+SVID3, XNS, XNS4, XNS5, XPG, XPG3, XPG4, XPG4v2 \- standards and specifications
+supported by Solaris
+.SH DESCRIPTION
+.LP
+Solaris 10 supports IEEE Std 1003.1 and IEEE Std 1003.2, commonly known as
+POSIX.1 and POSIX.2, respectively. The following table lists each version of
+these standards with a brief description and the SunOS or Solaris release that
+first conformed to it.
+.sp
+
+.sp
+.TS
+c c c
+l l l .
+POSIX Standard Description Release
+_
+POSIX.1-1988 system interfaces and headers SunOS 4.1
+_
+POSIX.1-1990 POSIX.1-1988 update Solaris 2.0
+_
+POSIX.1b-1993 realtime extensions Solaris 2.4
+_
+POSIX.1c-1996 threads extensions Solaris 2.6
+_
+POSIX.2-1992 shell and utilities Solaris 2.5
+_
+POSIX.2a-1992 interactive shell and utilities Solaris 2.5
+_
+POSIX.1-2001 T{
+POSIX.1-1990, POSIX.1b-1993, POSIX.1c-1996, POSIX.2-1992, and POSIX.2a-1992 updates
+T} Solaris 10
+.TE
+
+.sp
+.LP
+Solaris 10 also supports the X/Open Common Applications Environment (CAE)
+Portability Guide Issue 3 (XPG3) and Issue 4 (XPG4); Single UNIX Specification
+(SUS, also known as XPG4v2); Single UNIX Specification, Version 2 (SUSv2); and
+Single UNIX Specification, Version 3 (SUSv3). Both XPG4 and SUS include
+Networking Services Issue 4 (XNS4). SUSv2 includes Networking Services Issue 5
+(XNS5).
+.sp
+.LP
+The following table lists each X/Open specification with a brief description
+and the SunOS or Solaris release that first conformed to it.
+.sp
+
+.sp
+.TS
+c c c
+c c c .
+X/Open CAE
+_
+ Specification Description Release
+_
+XPG3 T{
+superset of POSIX.1-1988 containing utilities from SVID3
+T} SunOS 4.1
+_
+XPG4 T{
+superset of POSIX.1-1990, POSIX.2-1992, and POSIX.2a-1992 containing extensions to POSIX standards from XPG3
+T} Solaris 2.4
+_
+SUS (XPG4v2) T{
+superset of XPG4 containing historical BSD interfaces widely used by common application packages
+T} Solaris 2.6
+_
+XNS4 sockets and XTI interfaces Solaris 2.6
+_
+SUSv2 T{
+superset of SUS extended to support POSIX.1b-1993, POSIX.1c-1996, and ISO/IEC 9899 (C Standard) Amendment 1
+T} Solaris 7
+_
+XNS5 T{
+superset and LP64-clean derivative of XNS4.
+T} Solaris 7
+_
+SUSv3 same as POSIX.1-2001 Solaris 10
+.TE
+
+.sp
+.LP
+The XNS4 specification is safe for use only in ILP32 (32-bit) environments and
+should not be used for LP64 (64-bit) application environments. Use XNS5 or
+SUSv3, which have LP64-clean interfaces that are portable across ILP32 and LP64
+environments. Solaris releases 7 through 10 support both the ILP32 and LP64
+environments.
+.sp
+.LP
+Solaris releases 7 through 10 have been branded to conform to The Open Group's
+UNIX 98 Product Standard. Solaris 10 has been branded to conform to The Open
+Group's UNIX 03 Product Standard.
+.sp
+.LP
+Solaris releases 2.0 through 10 support the interfaces specified by the System
+V Interface Definition, Third Edition, Volumes 1 through 4 (SVID3). Note,
+however, that since the developers of this specification (UNIX Systems
+Laboratories) are no longer in business and since this specification defers to
+POSIX and X/Open CAE specifications, there is some disagreement about what is
+currently required for conformance to this specification.
+.sp
+.LP
+When \fBSun Studio C Compiler 5.6\fR is installed, Solaris releases 2.0 through
+10 support the ANSI X3.159-1989 Programming Language - C and ISO/IEC 9899:1990
+Programming Language - C (C) interfaces.
+.sp
+.LP
+When \fBSun Studio C Compiler 5.6\fR is installed, Solaris releases 7 through
+10 support ISO/IEC 9899:1990 Amendment 1:1995: C Integrity.
+.sp
+.LP
+When \fBSun Studio C Compiler 5.6\fR is installed, Solaris 10 supports ISO/IEC
+9899:1999 Programming Languages - C.
+.sp
+.LP
+When \fBSun Studio C++ Compiler 5.6\fR is installed, Solaris releases 2.5.1
+through 10 support ISO/IEC 14882:1998 Programming Languages - C++. Unsupported
+features of that standard are described in the compiler README file.
+.SS "Utilities"
+.LP
+If the behavior required by POSIX.2, POSIX.2a, XPG4, SUS, or SUSv2 conflicts
+with historical Solaris utility behavior, the original Solaris version of the
+utility is unchanged; a new version that is standard-conforming has been
+provided in \fB/usr/xpg4/bin\fR. If the behavior required by POSIX.1-2001 or
+SUSv3 conflicts with historical Solaris utility behavior, a new version that is
+standard-conforming has been provided in \fB/usr/xpg4/bin\fR or in
+\fB/usr/xpg6/bin\fR. If the behavior required by POSIX.1-2001 or SUSv3
+conflicts with POSIX.2, POSIX.2a, SUS, or SUSv2, a new version that is SUSv3
+standard-conforming has been provided in \fB/usr/xpg6/bin\fR.
+.sp
+.LP
+An application that wants to use standard-conforming utilities must set the
+\fBPATH\fR (\fBsh\fR(1) or \fBksh\fR(1)) or \fBpath\fR (\fBcsh\fR(1))
+environment variable to specify the directories listed below in the order
+specified to get the appropriate utilities:
+.sp
+.ne 2
+.na
+\fBSVID3, XPG3\fR
+.ad
+.sp .6
+.RS 4n
+.RS +4
+.TP
+1.
+\fB/usr/ccs/bin\fR
+.RE
+.RS +4
+.TP
+2.
+\fB/usr/bin\fR
+.RE
+.RS +4
+.TP
+3.
+directory containing binaries for your compiler
+.RE
+.RS +4
+.TP
+4.
+other directories containing binaries needed by the application
+.RE
+.RE
+
+.sp
+.ne 2
+.na
+\fBPOSIX.2, POSIX.2a, SUS, SUSv2, XPG4\fR
+.ad
+.sp .6
+.RS 4n
+.RS +4
+.TP
+1.
+\fB/usr/xpg4/bin\fR
+.RE
+.RS +4
+.TP
+2.
+\fB/usr/ccs/bin\fR
+.RE
+.RS +4
+.TP
+3.
+\fB/usr/bin\fR
+.RE
+.RS +4
+.TP
+4.
+directory containing binaries for your compiler
+.RE
+.RS +4
+.TP
+5.
+other directories containing binaries needed by the application
+.RE
+.RE
+
+.sp
+.ne 2
+.na
+\fBPOSIX.1-2001, SUSv3\fR
+.ad
+.sp .6
+.RS 4n
+.RS +4
+.TP
+1.
+\fB/usr/xpg6/bin\fR
+.RE
+.RS +4
+.TP
+2.
+\fB/usr/xpg4/bin\fR
+.RE
+.RS +4
+.TP
+3.
+\fB/usr/ccs/bin\fR
+.RE
+.RS +4
+.TP
+4.
+\fB/usr/bin\fR
+.RE
+.RS +4
+.TP
+5.
+directory containing binaries for your compiler
+.RE
+.RS +4
+.TP
+6.
+other directories containing binaries needed by the application
+.RE
+.RE
+
+.SS "Feature Test Macros"
+.LP
+Feature test macros are used by applications to indicate additional sets of
+features that are desired beyond those specified by the C standard. If an
+application uses only those interfaces and headers defined by a particular
+standard (such as POSIX or X/Open CAE), then it need only define the
+appropriate feature test macro specified by that standard. If the application
+is using interfaces and headers not defined by that standard, then in addition
+to defining the appropriate standard feature test macro, it must also define
+\fB__EXTENSIONS__\fR. Defining \fB__EXTENSIONS__\fR provides the application
+with access to all interfaces and headers not in conflict with the specified
+standard. The application must define \fB__EXTENSIONS__\fR either on the
+compile command line or within the application source files.
+.SS "1989 ANSI C, 1990 ISO C, 1999 ISO C"
+.LP
+No feature test macros need to be defined to indicate that an application is a
+conforming C application.
+.SS "ANSI/ISO C++"
+.LP
+ANSI/ISO C++ does not define any feature test macros. If the standard C++
+announcement macro \fB__cplusplus\fR is predefined to value 199711 or greater,
+the compiler operates in a standard-conforming mode, indicating C++ standards
+conformance. The value 199711 indicates conformance to ISO/IEC 14882:1998, as
+required by that standard. (As noted above, conformance to the standard is
+incomplete.) A standard-conforming mode is not available with compilers prior
+to Sun WorkShop C++ 5.0.
+.sp
+.LP
+C++ bindings are not defined for POSIX or X/Open CAE, so specifying feature
+test macros such as \fB_POSIX_SOURCE\fR, \fB_POSIX_C_SOURCE\fR, and
+\fB_XOPEN_SOURCE\fR can result in compilation errors due to conflicting
+requirements of standard C++ and those specifications.
+.SS "POSIX"
+.LP
+Applications that are intended to be conforming POSIX.1 applications must
+define the feature test macros specified by the standard before including any
+headers. For the standards listed below, applications must define the feature
+test macros listed. Application writers must check the corresponding standards
+for other macros that can be queried to determine if desired options are
+supported by the implementation.
+.sp
+
+.sp
+.TS
+c c
+l l .
+\fBPOSIX Standard\fR \fBFeature Test Macros\fR
+_
+POSIX.1-1990 \fB_POSIX_SOURCE\fR
+_
+T{
+POSIX.1-1990 and POSIX.2-1992 C-Language Bindings Option
+T} \fB_POSIX_SOURCE\fR and \fB_POSIX_C_SOURCE=2\fR
+POSIX.1b-1993 \fB_POSIX_C_SOURCE=199309L\fR
+_
+POSIX.1c-1996 \fB_POSIX_C_SOURCE=199506L\fR
+_
+POSIX.1-2001 \fB_POSIX_C_SOURCE=200112L\fR
+.TE
+
+.SS "SVID3"
+.LP
+The SVID3 specification does not specify any feature test macros to indicate
+that an application is written to meet SVID3 requirements. The SVID3
+specification was written before the C standard was completed.
+.SS "X/Open CAE"
+.LP
+To build or compile an application that conforms to one of the X/Open CAE
+specifications, use the following guidelines. Applications need not set the
+POSIX feature test macros if they require both CAE and POSIX functionality.
+.sp
+.ne 2
+.na
+\fBXPG3\fR
+.ad
+.RS 16n
+The application must define \fB_XOPEN_SOURCE\fR. If \fB_XOPEN_SOURCE\fR is
+defined with a value, the value must be less than 500.
+.RE
+
+.sp
+.ne 2
+.na
+\fBXPG4\fR
+.ad
+.RS 16n
+The application must define \fB_XOPEN_SOURCE\fR and set \fB_XOPEN_VERSION=4\fR.
+If \fB_XOPEN_SOURCE\fR is defined with a value, the value must be less than
+500.
+.RE
+
+.sp
+.ne 2
+.na
+\fBSUS (XPG4v2)\fR
+.ad
+.RS 16n
+The application must define \fB_XOPEN_SOURCE\fR and set
+\fB_XOPEN_SOURCE_EXTENDED=1\fR. If \fB_XOPEN_SOURCE\fR is defined with a value,
+the value must be less than 500.
+.RE
+
+.sp
+.ne 2
+.na
+\fBSUSv2\fR
+.ad
+.RS 16n
+The application must define \fB_XOPEN_SOURCE=500\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBSUSv3\fR
+.ad
+.RS 16n
+The application must define \fB_XOPEN_SOURCE=600\fR.
+.RE
+
+.SS "Compilation"
+.LP
+A POSIX.1 (1988-1996)-, XPG4-, SUS-, or SUSv2-conforming implementation must
+include an ANSI X3.159-1989 (ANSI C Language) standard-conforming compilation
+system and the \fBcc\fR and \fBc89\fR utilities. A POSIX.1-2001- or
+SUSv3-conforming implementation must include an ISO/IEC 99899:1999 (1999 ISO C
+Language) standard-conforming compilation system and the \fBc99\fR utility.
+Solaris 10 was tested with the \fBcc\fR, \fBc89\fR, and \fBc99\fR utilities and
+the compilation environment provided by \fBSun Studio C Compiler 5.6\fR.
+.sp
+.LP
+When \fBcc\fR is used to link applications, \fB/usr/lib/values-xpg4.o\fR must
+be specified on any link/load command line, unless the application is
+POSIX.1-2001- or SUSv3-conforming, in which case \fB/usr/lib/values-xpg6.o\fR
+must be specified on any link/load compile line. The preferred way to build
+applications, however, is described in the table below.
+.sp
+.LP
+An XNS4- or XNS5-conforming application must include \fB-l\fR \fBXNS\fR on any
+link/load command line in addition to defining the feature test macros
+specified for SUS or SUSv2, respectively.
+.sp
+.LP
+If the compiler supports the \fBredefine_extname\fR pragma feature (the \fBSun
+Studio C Compiler 5.6\fR compilers define the macro
+\fB__PRAGMA_REDEFINE_EXTNAME\fR to indicate that it supports this feature),
+then the standard headers use \fB#pragma\fR \fBredefine_extname\fR directives
+to properly map function names onto library entry point names. This mapping
+provides full support for ISO C, POSIX, and X/Open namespace reservations.
+.sp
+.LP
+If this pragma feature is not supported by the compiler, the headers use the
+\fB#define\fR directive to map internal function names onto appropriate library
+entry point names. In this instance, applications should avoid using the
+explicit 64-bit file offset symbols listed on the \fBlf64\fR(7) manual page,
+since these names are used by the implementation to name the alternative entry
+points.
+.sp
+.LP
+When using \fBSun Studio C Compiler 5.6\fR compilers, applications conforming
+to the specifications listed above should be compiled using the utilities and
+flags indicated in the following table:
+.sp
+.in +2
+.nf
+Specification Compiler/Flags Feature Test Macros
+_________________________________________________________________________
+1989 ANSI C and 1990 ISO C c89 none
+_________________________________________________________________________
+1999 ISO C c99 none
+_________________________________________________________________________
+2011 ISO C c11 none
+ gcc -stdc=c11
+_________________________________________________________________________
+SVID3 cc -Xt -xc99=none none
+_________________________________________________________________________
+POSIX.1-1990 c89 _POSIX_SOURCE
+_________________________________________________________________________
+POSIX.1-1990 and POSIX.2-1992 c89 _POSIX_SOURCE and
+ C-Language Bindings Option POSIX_C_SOURCE=2
+_________________________________________________________________________
+POSIX.1b-1993 c89 _POSIX_C_SOURCE=199309L
+_________________________________________________________________________
+POSIX.1c-1996 c89 _POSIX_C_SOURCE=199506L
+_________________________________________________________________________
+POSIX.1-2001 c99 _POSIX_C_SOURCE=200112L
+_________________________________________________________________________
+CAE XPG3 cc -Xa -xc99=none _XOPEN_SOURCE
+_________________________________________________________________________
+CAE XPG4 c89 _XOPEN_SOURCE and
+ _XOPEN_VERSION=4
+_________________________________________________________________________
+SUS (CAE XPG4v2) c89 _XOPEN_SOURCE and
+ (includes XNS4) _XOPEN_SOURCE_EXTENDED=1
+_________________________________________________________________________
+SUSv2 (includes XNS5) c89 _XOPEN_SOURCE=500
+_________________________________________________________________________
+SUSv3 c99 _XOPEN_SOURCE=600
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+For platforms supporting the LP64 (64-bit) programming environment,
+SUSv2-conforming LP64 applications using XNS5 library calls should be built
+with command lines of the form:
+.sp
+.in +2
+.nf
+c89 $(getconf XBS5_LP64_OFF64_CFLAGS) -D_XOPEN_SOURCE=500 \e
+ $(getconf XBS5_LP64_OFF64_LDFLAGS) foo.c -o foo \e
+ $(getconf XBS5_LP64_OFF64_LIBS) -lxnet
+.fi
+.in -2
+
+.sp
+.LP
+Similar SUSv3-conforming LP64 applications should be built with command lines
+of the form:
+.sp
+.in +2
+.nf
+c99 $(getconf POSIX_V6_LP64_OFF64_CFLAGS) -D_XOPEN_SOURCE=600 \e
+ $(getconf POSIX_V6_LP64_OFF64_LDFLAGS) foo.c -o foo \e
+ $(getconf POSIX_V6_LP64_OFF64_LIBS) -lxnet
+.fi
+.in -2
+
+.SS "SUSv3"
+.ne 2
+.na
+\fB\fBc99\fR\fR
+.ad
+.RS 28n
+\fB_XOPEN_SOURCE=600\fR
+.RE
+
+.SH SEE ALSO
+.LP
+.BR csh (1),
+.BR ksh (1),
+.BR sh (1),
+.BR exec (2),
+.BR sysconf (3C),
+.BR system (3C),
+.BR environ (7),
+.BR lf64 (7)
diff --git a/usr/src/man/man7/sticky.7 b/usr/src/man/man7/sticky.7
new file mode 100644
index 0000000000..5b35238c6a
--- /dev/null
+++ b/usr/src/man/man7/sticky.7
@@ -0,0 +1,44 @@
+'\" te
+.\" Copyright (c) 2002, Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright (c) 1983 Regents of the University of California. All rights reserved. The Berkeley software License Agreement specifies the terms and conditions for redistribution.
+.TH STICKY 7 "Aug 1, 2002"
+.SH NAME
+sticky \- mark files for special treatment
+.SH DESCRIPTION
+.sp
+.LP
+The \fIsticky bit\fR (file mode bit \fB01000\fR, see \fBchmod\fR(2)) is used
+to indicate special treatment of certain files and directories. A directory for
+which the sticky bit is set restricts deletion of files it contains. A file in
+a sticky directory can only be removed or renamed by a user who has write
+permission on the directory, and either owns the file, owns the directory, has
+write permission on the file, or is a privileged user. Setting the sticky bit
+is useful for directories such as \fB/tmp\fR, which must be publicly writable
+but should deny users permission to arbitrarily delete or rename the files of
+others.
+.sp
+.LP
+If the sticky bit is set on a regular file and no execute bits are set, the
+system's page cache will not be used to hold the file's data. This bit is
+normally set on swap files of diskless clients so that accesses to these files
+do not flush more valuable data from the system's cache. Moreover, by default
+such files are treated as swap files, whose inode modification times may not
+necessarily be correctly recorded on permanent storage.
+.sp
+.LP
+Any user may create a sticky directory. See \fBchmod\fR for details about
+modifying file modes.
+.SH SEE ALSO
+.sp
+.LP
+.BR chmod (1),
+.BR chmod (2),
+.BR chown (2),
+.BR mkdir (2),
+.BR rename (2),
+.BR unlink (2)
+.SH BUGS
+.sp
+.LP
+The \fBmkdir\fR(2) function will not create a directory with the sticky bit
+set.
diff --git a/usr/src/man/man7/swap.7 b/usr/src/man/man7/swap.7
deleted file mode 100644
index d060e993a9..0000000000
--- a/usr/src/man/man7/swap.7
+++ /dev/null
@@ -1,92 +0,0 @@
-.\"
-.\" This file and its contents are supplied under the terms of the
-.\" Common Development and Distribution License ("CDDL"), version 1.0.
-.\" You may only use this file in accordance with the terms of version
-.\" 1.0 of the CDDL.
-.\"
-.\" A full copy of the text of the CDDL should have accompanied this
-.\" source. A copy of the CDDL is also available via the Internet at
-.\" http://www.illumos.org/license/CDDL.
-.\"
-.\"
-.\" Copyright 2017, Joyent, Inc.
-.\"
-.Dd Aug 14, 2017
-.Dt SWAP 7
-.Os
-.Sh NAME
-.Nm swap
-.Nd swap space
-.Sh DESCRIPTION
-The operating system uses demand paging as the primary mechanism to implement
-virtual memory.
-The system can also use traditional swapping, wherein an entire process state
-is moved between physical memory and swap space on disk, but it is very rare
-for the system to actually swap an entire process out to disk.
-A system which is swapping does not have enough enough physical memory to
-support the workload on the machine.
-In this case, work should be reduced or more memory added.
-.Pp
-Given that the system rarely, if ever, swaps, but still has swap space
-configured, the question arises as to what this space is for?
-.Pp
-In a demand paged virtual memory system, every page mapped by a process is
-backed by some object.
-For the actual program code used by the process, the backing objects are the
-underlying files in the filesystem for the program's binary, and any
-dynamically linked libraries.
-The portions of a process that are not backed by a named file, including its
-stack and its heap, are called anonymous memory.
-The system uses the swap space as the backing store for these pages.
-When the system determines that it needs to page out one of the anonymous pages,
-the swap space is where that page is written.
-.Pp
-Unlike some other operating systems, illumos reserves the backing storage
-space for anonymous memory at the time of allocation.
-For example, if a process asks for more heap space, the total size of the
-swap allocation that may be required to store the new pages if they need to
-be paged out is reserved at that time.
-This does not mean that anything is written to the swap space, but simply that
-the space is reserved for the entire allocation.
-Thus, a process will always get a correct error from the
-.Xr sbrk 2
-system call if swap space is unavailable.
-Some other operating systems don't allocate backing store for anonymous memory
-until it is used, so the error handling when space is not available can be
-complex or problematic on those systems.
-.Pp
-The
-.Xr vmstat 1m
-command can be used to monitor swap and paging activity.
-The
-.Xr pmap 1
-command can be used to inspect all of the mappings in a process address space,
-and their backing objects.
-The
-.Xr swap 1m
-command can be used to monitor, add and remove swap space.
-.Pp
-The operating system provides the
-.Ql zone.max-swap
-resource control to limit the amount of
-anonymous memory used by all of the processes within a zone.
-This resource control can also be configured under the
-.Xr capped-memory 2
-setting for a zone.
-See the
-.Xr prctl 1
-and
-.Xr zonecfg 1m
-man pages for information on setting this limit.
-The zone's usage against this resource control can be seen using the
-.Ql swapresv_zone_{zoneid}
-kstat.
-.Sh SEE ALSO
-.Xr pmap 1 ,
-.Xr prctl 1 ,
-.Xr kstat 1m ,
-.Xr swap 1m ,
-.Xr vmstat 1m ,
-.Xr zonecfg 1m ,
-.Xr sbrk 2 ,
-.Xr resource_controls 5
diff --git a/usr/src/man/man7/tbl.7 b/usr/src/man/man7/tbl.7
new file mode 100644
index 0000000000..67b24ec019
--- /dev/null
+++ b/usr/src/man/man7/tbl.7
@@ -0,0 +1,455 @@
+.\" $Id: tbl.7,v 1.37 2021/09/18 12:34:27 schwarze Exp $
+.\"
+.\" Copyright (c) 2010, 2011 Kristaps Dzonsons <kristaps@bsd.lv>
+.\" Copyright (c) 2014,2015,2017,2018,2019 Ingo Schwarze <schwarze@openbsd.org>
+.\"
+.\" Permission to use, copy, modify, and distribute this software for any
+.\" purpose with or without fee is hereby granted, provided that the above
+.\" copyright notice and this permission notice appear in all copies.
+.\"
+.\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+.\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+.\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+.\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+.\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+.\"
+.Dd $Mdocdate: September 18 2021 $
+.Dt TBL 7
+.Os
+.Sh NAME
+.Nm tbl
+.Nd tbl language reference for mandoc
+.Sh DESCRIPTION
+The
+.Nm tbl
+language formats tables.
+It is used within
+.Xr mdoc 7
+and
+.Xr man 7
+pages.
+This manual describes the subset of the
+.Nm
+language accepted by the
+.Xr mandoc 1
+utility.
+.Pp
+Each table is started with a
+.Xr mandoc_roff 7
+.Ic \&TS
+macro, consist of at most one line of
+.Sx Options ,
+one or more
+.Sx Layout
+lines, one or more
+.Sx Data
+lines, and ends with a
+.Ic \&TE
+macro.
+All input must be 7-bit ASCII.
+.Ss Options
+If the first input line of a table ends with a semicolon, it contains
+case-insensitive options separated by spaces, tabs, or commas.
+Otherwise, it is interpreted as the first
+.Sx Layout
+line.
+.Pp
+The following options are available.
+Some of them require arguments enclosed in parentheses:
+.Bl -tag -width Ds
+.It Cm allbox
+Draw a single-line box around each table cell.
+.It Cm box
+Draw a single-line box around the table.
+For GNU compatibility, this may also be invoked with
+.Cm frame .
+.It Cm center
+Center the table instead of left-adjusting it.
+For GNU compatibility, this may also be invoked with
+.Cm centre .
+.It Cm decimalpoint
+Use the single-character argument as the decimal point with the
+.Cm n
+layout key.
+This is a GNU extension.
+.It Cm delim
+Use the two characters of the argument as
+.Xr eqn 7
+delimiters.
+Currently unsupported.
+.It Cm doublebox
+Draw a double-line box around the table.
+For GNU compatibility, this may also be invoked with
+.Cm doubleframe .
+.It Cm expand
+Increase the width of the table to the current line length.
+Currently ignored.
+.It Cm linesize
+Draw lines with the point size given by the unsigned integer argument.
+Currently ignored.
+.It Cm nokeep
+Allow page breaks within the table.
+This is a GNU extension and currently ignored.
+.It Cm nospaces
+Ignore leading and trailing spaces in data cells.
+This is a GNU extension.
+.It Cm nowarn
+Suppress warnings about tables exceeding the current line length.
+This is a GNU extension and currently ignored.
+.It Cm tab
+Use the single-character argument as a delimiter between data cells.
+By default, the horizontal tabulator character is used.
+.El
+.Ss Layout
+The table layout follows an
+.Sx Options
+line or a
+.Xr mandoc_roff 7
+.Ic \&TS
+or
+.Ic \&T&
+macro.
+Each layout line specifies how one line of
+.Sx Data
+is formatted.
+The last layout line ends with a full stop.
+It also applies to all remaining data lines.
+Multiple layout lines can be joined by commas on a single physical
+input line.
+.Pp
+Each layout line consists of one or more layout cell specifications,
+optionally separated by whitespace.
+The following case-insensitive key characters start a new cell
+specification:
+.Bl -tag -width 2n
+.It Cm c
+Center the string in this cell.
+.It Cm r
+Right-justify the string in this cell.
+.It Cm l
+Left-justify the string in this cell.
+.It Cm n
+Justify a number around its last decimal point.
+If no decimal point is found in the number,
+it is assumed to trail the number.
+.It Cm s
+Horizontally span columns from the last
+.Pf non- Cm s
+layout cell.
+It is an error if a column span follows a
+.Cm _
+or
+.Cm =
+cell, or comes first on a layout line.
+The combined cell as a whole consumes only one cell
+of the corresponding data line.
+.It Cm a
+Left-justify a string and pad with one space.
+.It Cm \(ha
+Vertically span rows from the last
+.Pf non- Cm \(ha
+layout cell.
+It is an error to invoke a vertical span on the first layout line.
+Unlike a horizontal span, a vertical span consumes a data cell
+and discards the content.
+.It Cm _
+Draw a single horizontal line in this cell.
+This consumes a data cell and discards the content.
+It may also be invoked with
+.Cm \- .
+.It Cm =
+Draw a double horizontal line in this cell.
+This consumes a data cell and discards the content.
+.El
+.Pp
+Each cell key may be followed by zero or more of the following
+case-insensitive modifiers:
+.Bl -tag -width 2n
+.It Cm b
+Use a bold font for the contents of this cell.
+.It Cm d
+Move content down to the last row of this vertical span.
+Currently ignored.
+.It Cm e
+Make this column wider to match the maximum width
+of any other column also having the
+.Cm e
+modifier.
+.It Cm f
+The next one or two characters select the font to use for this cell.
+One-character font names must be followed by a blank or period.
+See the
+.Xr mandoc_roff 7
+manual for supported font names.
+.It Cm i
+Use an italic font for the contents of this cell.
+.It Cm m
+Specify a cell start macro.
+This is a GNU extension and currently unsupported.
+.It Cm p
+Set the point size to the following unsigned argument,
+or change it by the following signed argument.
+Currently ignored.
+.It Cm v
+Set the vertical line spacing to the following unsigned argument,
+or change it by the following signed argument.
+Currently ignored.
+.It Cm t
+Do not vertically center content in this vertical span,
+leave it in the top row.
+Currently ignored.
+.It Cm u
+Move cell content up by half a table row.
+Currently ignored.
+.It Cm w
+Specify a minimum column width.
+.It Cm x
+After determining the width of all other columns, distribute the
+rest of the line length among all columns having the
+.Cm x
+modifier.
+.It Cm z
+Do not use this cell for determining the width of this column.
+.It Cm \&|
+Draw a single vertical line to the right of this cell.
+.It Cm ||
+Draw a double vertical line to the right of this cell.
+.El
+.Pp
+If a modifier consists of decimal digits,
+it specifies a minimum spacing in units of
+.Cm n
+between this column and the next column to the right.
+The default is 3.
+If there is a vertical line, it is drawn inside the spacing.
+.Ss Data
+The data section follows the last
+.Sx Layout
+line.
+Each data line consists of one or more data cells, delimited by
+.Cm tab
+characters.
+.Pp
+If a data cell contains only the two bytes
+.Ql \e\(ha ,
+the cell above spans to this row, as if the layout specification
+of this cell were
+.Cm \(ha .
+.Pp
+If a data cell contains only the single character
+.Ql _
+or
+.Ql = ,
+a single or double horizontal line is drawn across the cell,
+joining its neighbours.
+If a data cell contains only the two character sequence
+.Ql \e_
+or
+.Ql \e= ,
+a single or double horizontal line is drawn inside the cell,
+not joining its neighbours.
+If a data line contains nothing but the single character
+.Ql _
+or
+.Ql = ,
+a horizontal line across the whole table is inserted
+without consuming a layout row.
+.Pp
+In place of any data cell, a text block can be used.
+It starts with
+.Ic \&T{
+at the end of a physical input line.
+Input line breaks inside the text block
+neither end the text block nor its data cell.
+It only ends if
+.Ic \&T}
+occurs at the beginning of a physical input line and is followed
+by an end-of-cell indicator.
+If the
+.Ic \&T}
+is followed by the end of the physical input line, the text block,
+the data cell, and the data line ends at this point.
+If the
+.Ic \&T}
+is followed by the
+.Cm tab
+character, only the text block and the data cell end,
+but the data line continues with the data cell following the
+.Cm tab
+character.
+If
+.Ic \&T}
+is followed by any other character, it does not end the text block,
+which instead continues to the following physical input line.
+.Sh EXAMPLES
+String justification and font selection:
+.Bd -literal -offset indent
+\&.TS
+rb c lb
+r ci l.
+r center l
+ri ce le
+right c left
+\&.TE
+.Ed
+.Bd -filled -offset indent
+.TS
+rb c lb
+r ci l.
+r center l
+ri ce le
+right c left
+.TE
+.Ed
+.Pp
+Some ports in
+.Ox 6.1
+to show number alignment and line drawing:
+.Bd -literal -offset indent
+\&.TS
+box tab(:);
+r| l
+r n.
+software:version
+_
+AFL:2.39b
+Mutt:1.8.0
+Ruby:1.8.7.374
+TeX Live:2015
+\&.TE
+.Ed
+.Bd -filled -offset indent
+.TS
+box tab(:);
+r| l
+r n.
+software:version
+_
+AFL:2.39b
+Mutt:1.8.0
+Ruby:1.8.7.374
+TeX Live:2015
+.TE
+.Ed
+.sp 2v
+Spans and skipping width calculations:
+.Bd -literal -offset indent
+\&.TS
+box tab(:);
+lz s | rt
+lt| cb| \(ha
+\(ha | rz s.
+left:r
+l:center:
+:right
+\&.TE
+.Ed
+.Bd -filled -offset indent
+.TS
+box tab(:);
+lz s | rt
+lt| cb| ^
+^ | rz s.
+left:r
+l:center:
+:right
+.TE
+.Ed
+.sp 2v
+Text blocks, specifying spacings and specifying and equalizing
+column widths, putting lines into individual cells, and overriding
+.Cm allbox :
+.Bd -literal -offset indent
+\&.TS
+allbox tab(:);
+le le||7 lw10.
+The fourth line:_:line 1
+of this column:=:line 2
+determines:\_:line 3
+the column width.:T{
+This text is too wide to fit into a column of width 17.
+T}:line 4
+T{
+No break here.
+T}::line 5
+\&.TE
+.Ed
+.Bd -filled -offset indent
+.TS
+allbox tab(:);
+le le||7 lw10.
+The fourth line:_:line 1
+of this column:=:line 2
+determines:\_:line 3
+the column width.:T{
+This text is too wide to fit into a column of width 17.
+T}:line 4
+T{
+No break here.
+T}::line 5
+.TE
+.Ed
+.sp 2v
+These examples were constructed to demonstrate many
+.Nm
+features in a compact way.
+In real manual pages, keep tables as simple as possible.
+They usually look better, are less fragile, and are more portable.
+.Sh COMPATIBILITY
+The
+.Xr mandoc 1
+implementation of
+.Nm
+doesn't support
+.Xr mdoc 7
+and
+.Xr man 7
+macros and
+.Xr eqn 7
+equations inside tables.
+.Sh SEE ALSO
+.Xr mandoc 1 ,
+.Xr man 7 ,
+.Xr mandoc_char 7 ,
+.Xr mandoc_roff 7 ,
+.Xr mdoc 7
+.Rs
+.%A M. E. Lesk
+.%T Tbl \(em A Program to Format Tables
+.%D June 11, 1976
+.Re
+.Sh HISTORY
+The tbl utility, a preprocessor for troff, was originally written by M.
+E. Lesk at Bell Labs in 1975.
+The GNU reimplementation of tbl, part of the groff package, was released
+in 1990 by James Clark.
+A standalone tbl implementation was written by Kristaps Dzonsons in
+2010.
+This formed the basis of the implementation that first appeared in
+.Ox 4.9
+as a part of the
+.Xr mandoc 1
+utility.
+.Sh AUTHORS
+This
+.Nm
+reference was written by
+.An Kristaps Dzonsons Aq Mt kristaps@bsd.lv
+and
+.An Ingo Schwarze Aq Mt schwarze@openbsd.org .
+.Sh BUGS
+In
+.Fl T
+.Cm utf8
+output mode, heavy lines are drawn instead of double lines.
+This cannot be improved because the Unicode standard only provides
+an incomplete set of box drawing characters with double lines,
+whereas it provides a full set of box drawing characters
+with heavy lines.
+It is unlikely this can be improved in the future because the box
+drawing characters are already marked in Unicode as characters
+intended only for backward compatibility with legacy systems,
+and their use is not encouraged.
+So it seems unlikely that the missing ones might get added in the future.
diff --git a/usr/src/man/man7/tecla.7 b/usr/src/man/man7/tecla.7
new file mode 100644
index 0000000000..ba148db78f
--- /dev/null
+++ b/usr/src/man/man7/tecla.7
@@ -0,0 +1,3666 @@
+'\" te
+.\" Copyright (c) 2000, 2001, 2002, 2003, 2004 by Martin C. Shepherd. All Rights Reserved.
+.\" Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the
+.\" "Software"), to deal in the Software without restriction, including
+.\" without limitation the rights to use, copy, modify, merge, publish,
+.\" distribute, and/or sell copies of the Software, and to permit persons
+.\" to whom the Software is furnished to do so, provided that the above
+.\" copyright notice(s) and this permission notice appear in all copies of
+.\" the Software and that both the above copyright notice(s) and this
+.\" permission notice appear in supporting documentation.
+.\"
+.\" THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
+.\" OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+.\" MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
+.\" OF THIRD PARTY RIGHTS. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR
+.\" HOLDERS INCLUDED IN THIS NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL
+.\" INDIRECT OR CONSEQUENTIAL DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING
+.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
+.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
+.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+.\"
+.\" Except as contained in this notice, the name of a copyright holder
+.\" shall not be used in advertising or otherwise to promote the sale, use
+.\" or other dealings in this Software without prior written authorization
+.\" of the copyright holder.
+.\" Portions Copyright (c) 2005, Sun Microsystems, Inc. All Rights Reserved.
+.TH TECLA 7 "April 9, 2016"
+.SH NAME
+tecla, teclarc \- User interface provided by the tecla library.
+.SH DESCRIPTION
+.LP
+This man page describes the command-line editing features that are available to
+users of programs that read keyboard input via the tecla library. Users of the
+\fBtcsh\fR shell will find the default key bindings very familiar. Users of the
+\fBbash\fR shell will also find it quite familiar, but with a few minor
+differences, most notably in how forward and backward searches through the list
+of historical commands are performed. There are two major editing modes, one
+with \fBemacs\fR-like key bindings and another with \fBvi\fR-like key bindings.
+By default \fBemacs\fR mode is enabled, but \fBvi\fR(1) mode can alternatively
+be selected via the user's configuration file. This file can also be used to
+change the bindings of individual keys to suit the user's preferences. By
+default, tab completion is provided. If the application hasn't reconfigured
+this to complete other types of symbols, then tab completion completes file
+names.
+.SS "Key Sequence Notation"
+.LP
+In the rest of this man page, and also in all tecla configuration files, key
+sequences are expressed as follows.
+.sp
+.ne 2
+.na
+\fB\fB^A\fR or \fBC-a\fR\fR
+.ad
+.RS 13n
+This is a 'CONTROL-A', entered by pressing the CONTROL key at the same time as
+the 'A' key.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\eE\fR or \fBM-\fR
+.ad
+.RS 13n
+In key sequences, both of these notations can be entered either by pressing the
+ESCAPE key, then the following key, or by pressing the META key at the same
+time as the following key. Thus the key sequence \fBM-p\fR can be typed in two
+ways, by pressing the ESCAPE key, followed by pressing 'P', or by pressing the
+META key at the same time as 'P'.
+.RE
+
+.sp
+.ne 2
+.na
+\fBup\fR
+.ad
+.RS 13n
+This refers to the up-arrow key.
+.RE
+
+.sp
+.ne 2
+.na
+\fBdown\fR
+.ad
+.RS 13n
+This refers to the down-arrow key.
+.RE
+
+.sp
+.ne 2
+.na
+\fBleft\fR
+.ad
+.RS 13n
+This refers to the left-arrow key.
+.RE
+
+.sp
+.ne 2
+.na
+\fBright\fR
+.ad
+.RS 13n
+This refers to the right-arrow key.
+.RE
+
+.sp
+.ne 2
+.na
+\fBa\fR
+.ad
+.RS 13n
+This is just a normal 'A' key.
+.RE
+
+.SS "The Tecla Configuration File"
+.LP
+By default, tecla looks for a file called \fB\&.teclarc\fR in your home
+directory (ie. \fB~/.teclarc\fR). If it finds this file, it reads it,
+interpreting each line as defining a new key binding or an editing
+configuration option. Since the \fBemacs\fR key-bindings are installed by
+default, if you want to use the non-default \fBvi\fR editing mode, the most
+important item to go in this file is the following line:
+.sp
+.in +2
+.nf
+edit-mode vi
+.fi
+.in -2
+
+.sp
+.LP
+This will re-configure the default bindings for \fBvi\fR-mode. The complete set
+of arguments that this command accepts are:
+.sp
+.ne 2
+.na
+\fBvi\fR
+.ad
+.RS 9n
+Install key bindings like those of the \fBvi\fR editor.
+.RE
+
+.sp
+.ne 2
+.na
+\fBemacs\fR
+.ad
+.RS 9n
+Install key bindings like those of the \fBemacs\fR editor. This is the default.
+.RE
+
+.sp
+.ne 2
+.na
+\fBnone\fR
+.ad
+.RS 9n
+Use just the native line editing facilities provided by the terminal driver.
+.RE
+
+.sp
+.LP
+To prevent the terminal bell from being rung, such as when an unrecognized
+control-sequence is typed, place the following line in the configuration file:
+.sp
+.in +2
+.nf
+nobeep
+.fi
+.in -2
+
+.sp
+.LP
+An example of a key binding line in the configuration file is the following.
+.sp
+.in +2
+.nf
+bind M-[2~ insert-mode
+.fi
+.in -2
+
+.sp
+.LP
+On many keyboards, the above key sequence is generated when one presses the
+insert key, so with this key binding, one can toggle between the
+\fBemacs\fR-mode insert and overwrite modes by hitting one key. One could also
+do it by typing out the above sequence of characters one by one. As explained
+above, the \fBM-\fR part of this sequence can be typed either by pressing the
+ESCAPE key before the following key, or by pressing the META key at the same
+time as the following key. Thus if you had set the above key binding, and the
+insert key on your keyboard didn't generate the above key sequence, you could
+still type it in either of the following 2 ways.
+.RS +4
+.TP
+1.
+Hit the ESCAPE key momentarily, then press '[', then '2', then finally '~'.
+.RE
+.RS +4
+.TP
+2.
+Press the META key at the same time as pressing the '[' key, then press '2',
+then '~'.
+.RE
+.sp
+.LP
+If you set a key binding for a key sequence that is already bound to a
+function, the new binding overrides the old one. If in the new binding you omit
+the name of the new function to bind to the key sequence, the original binding
+becomes undefined.
+.sp
+.LP
+Starting with versions of \fBlibtecla\fR later than 1.3.3 it is now possible to
+bind key sequences that begin with a printable character. Previously key
+sequences were required to start with a CONTROL or META character.
+.sp
+.LP
+Note that the special keywords "up", "down", "left", and "right" refer to the
+arrow keys, and are thus not treated as key sequences. So, for example, to
+rebind the up and down arrow keys to use the history search mechanism instead
+of the simple history recall method, you could place the following in your
+configuration file:
+.sp
+.in +2
+.nf
+bind up history-search-backwards
+bind down history-search-backwards
+.fi
+.in -2
+
+.sp
+.LP
+To unbind an existing binding, you can do this with the bind command by
+omitting to name any action to rebind the key sequence to. For example, by not
+specifying an action function, the following command unbinds the default
+beginning-of-line action from the \fB^A\fR key sequence:
+.sp
+.in +2
+.nf
+bind ^A
+.fi
+.in -2
+
+.sp
+.LP
+If you create a \fB~/.teclarc\fR configuration file, but it appears to have no
+effect on the program, check the documentation of the program to see if the
+author chose a different name for this file.
+.SS "Filename and Tilde Completion"
+.LP
+With the default key bindings, pressing the TAB key (aka. \fB^I\fR) results in
+tecla attempting to complete the incomplete file name that precedes the cursor.
+Tecla searches backwards from the cursor, looking for the start of the file
+name, stopping when it hits either a space or the start of the line. If more
+than one file has the specified prefix, then tecla completes the file name up
+to the point at which the ambiguous matches start to differ, then lists the
+possible matches.
+.sp
+.LP
+In addition to literally written file names, tecla can complete files that
+start with \fB~/\fR and \fB~user/\fR expressions and that contain \fB$envvar\fR
+expressions. In particular, if you hit TAB within an incomplete \fB~user\fR,
+expression, tecla will attempt to complete the username, listing any ambiguous
+matches.
+.sp
+.LP
+The completion binding is implemented using the \fBcpl_complete_word()\fR
+function, which is also available separately to users of this library. See the
+\fBcpl_complete_word\fR(3TECLA) man page for more details.
+.SS "Filename Expansion"
+.LP
+With the default key bindings, pressing \fB^X*\fR causes tecla to expand the
+file name that precedes the cursor, replacing \fB~/\fR and \fB~user/\fR
+expressions with the corresponding home directories, and replacing
+\fB$envvar\fR expressions with the value of the specified environment variable,
+then if there are any wildcards, replacing the so far expanded file name with a
+space-separated list of the files which match the wild cards.
+.sp
+.LP
+The expansion binding is implemented using the \fBef_expand_file()\fR function.
+See the \fBef_expand_file\fR(3TECLA) man page for more details.
+.SS "Recalling Previously Typed Lines"
+.LP
+Every time that a new line is entered by the user, it is appended to a list of
+historical input lines maintained within the \fBGetLine\fR resource object. You
+can traverse up and down this list using the up and down arrow keys.
+Alternatively, you can do the same with the \fB^P\fR, and \fB^N\fR keys, and in
+\fBvi\fR command mode you can alternatively use the k and j characters. Thus
+pressing up-arrow once, replaces the current input line with the previously
+entered line. Pressing up-arrow again, replaces this with the line that was
+entered before it, etc.. Having gone back one or more lines into the history
+list, one can return to newer lines by pressing down-arrow one or more times.
+If you do this sufficient times, you will return to the original line that you
+were entering when you first hit up-arrow.
+.sp
+.LP
+Note that in \fBvi\fR mode, all of the history recall functions switch the
+library into command mode.
+.sp
+.LP
+In \fBemacs\fR mode the \fBM-p\fR and \fBM-n\fR keys work just like the
+\fB^P\fR and \fB^N\fR keys, except that they skip all but those historical
+lines which share the prefix that precedes the cursor. In \fBvi\fR command mode
+the upper case 'K' and 'J' characters do the same thing, except that the string
+that they search for includes the character under the cursor as well as what
+precedes it.
+.sp
+.LP
+Thus for example, suppose that you were in \fBemacs\fR mode, and you had just
+entered the following list of commands in the order shown:
+.sp
+.in +2
+.nf
+ls ~/tecla/
+cd ~/tecla
+ls -l getline.c
+\fBemacs\fR ~/tecla/getline.c
+.fi
+.in -2
+
+.sp
+.LP
+If you next typed:
+.sp
+.in +2
+.nf
+ls
+.fi
+.in -2
+
+.sp
+.LP
+and then hit \fBM-p\fR, then rather than returning the previously typed
+\fBemacs\fR line, which doesn't start with "ls", tecla would recall the "ls -l
+getline.c" line. Pressing \fBM-p\fR again would recall the "ls ~/tecla/" line.
+.sp
+.LP
+Note that if the string that you are searching for, contains any of the special
+characters, *, ?, or '[', then it is interpreted as a pattern to be matched.
+Thus, continuing with the above example, after typing in the list of commands
+shown, if you then typed:
+.sp
+.in +2
+.nf
+*tecla*
+.fi
+.in -2
+
+.sp
+.LP
+and hit \fBM-p\fR, then the "\fBemacs\fR ~/tecla/getline.c" line would be
+recalled first, since it contains the word tecla somewhere in the line,
+Similarly, hitting \fBM-p\fR again, would recall the "ls ~/tecla/" line, and
+hitting it once more would recall the "ls ~/tecla/" line. The pattern syntax is
+the same as that described for file name expansion, in the
+\fBef_expand_file\fR(3TECLA).
+.SS "History Files"
+.LP
+Authors of programs that use the tecla library have the option of saving
+historical command-lines in a file before exiting, and subsequently reading
+them back in from this file when the program is next started. There is no
+standard name for this file, since it makes sense for each application to use
+its own history file, so that commands from different applications don't get
+mixed up.
+.SS "International Character Sets"
+.LP
+Since \fBlibtecla\fR version 1.4.0, tecla has been 8-bit clean. This means that
+all 8-bit characters that are printable in the user's current locale are now
+displayed verbatim and included in the returned input line. Assuming that the
+calling program correctly contains a call like the following,
+.sp
+.in +2
+.nf
+setlocale(LC_CTYPE, "");
+.fi
+.in -2
+
+.sp
+.LP
+then the current locale is determined by the first of the environment variables
+\fBLC_CTYPE\fR, \fBLC_ALL\fR, and \fBLANG\fR, that is found to contain a valid
+locale name. If none of these variables are defined, or the program neglects to
+call \fBsetlocale\fR, then the default C locale is used, which is US 7-bit
+ASCII. On most unix-like platforms, you can get a list of valid locales by
+typing the command:
+.sp
+.in +2
+.nf
+locale -a
+.fi
+.in -2
+
+.sp
+.LP
+at the shell prompt.
+.SS "Meta Keys and Locales"
+.LP
+Beware that in most locales other than the default C locale, META characters
+become printable, and they are then no longer considered to match \fBM-c\fR
+style key bindings. This allows international characters to be entered with the
+compose key without unexpectedly triggering META key bindings. You can still
+invoke META bindings, since there are actually two ways to do this. For example
+the binding \fBM-c\fR can also be invoked by pressing the ESCAPE key
+momentarily, then pressing the c key, and this will work regardless of locale.
+Moreover, many modern terminal emulators, such as gnome's gnome-terminal's and
+KDE's konsole terminals, already generate escape pairs like this when you use
+the META key, rather than a real meta character, and other emulators usually
+have a way to request this behavior, so you can continue to use the META key on
+most systems.
+.sp
+.LP
+For example, although xterm terminal emulators generate real 8-bit meta
+characters by default when you use the META key, they can be configured to
+output the equivalent escape pair by setting their \fBEightBitInput\fR X
+resource to False. You can either do this by placing a line like the following
+in your \fB~/.Xdefaults\fR file,
+.sp
+.in +2
+.nf
+XTerm*EightBitInput: False
+.fi
+.in -2
+
+.sp
+.LP
+or by starting an \fBxterm\fR with an \fB-xrm\fR \&'*EightBitInput: False'
+command-line argument. In recent versions of xterm you can toggle this feature
+on and off with the 'Meta Sends Escape' option in the menu that is displayed
+when you press the left mouse button and the CONTROL key within an xterm
+window. In CDE, dtterms can be similarly coerced to generate escape pairs in
+place of meta characters, by setting the \fBDtterm*KshMode\fR resource to True.
+.SS "Entering International Characters"
+.LP
+If you don't have a keyboard that generates all of the international characters
+that you need, there is usually a compose key that will allow you to enter
+special characters, or a way to create one. For example, under X windows on
+unix-like systems, if your keyboard doesn't have a compose key, you can
+designate a redundant key to serve this purpose with the xmodmap command. For
+example, on many PC keyboards there is a microsoft-windows key, which is
+otherwise useless under Linux. On a laptop, for example, the \fBxev\fR program
+might report that pressing this key generates keycode 115. To turn this key
+into a COMPOSE key, do the following:
+.sp
+.in +2
+.nf
+xmodmap -e 'keycode 115 = Multi_key'
+.fi
+.in -2
+
+.sp
+.LP
+Type this key followed by a " character to enter an 'I' with a umlaut over it.
+.SS "The Available Key Binding Functions"
+.LP
+The following is a list of the editing functions provided by the tecla library.
+The names in the leftmost column of the list can be used in configuration files
+to specify which function a given key or combination of keys should invoke.
+They are also used in the next two sections to list the default key bindings in
+\fBemacs\fR and \fBvi\fR modes.
+.sp
+.ne 2
+.na
+\fBuser-interrupt\fR
+.ad
+.RS 30n
+Send a SIGINT signal to the parent process.
+.RE
+
+.sp
+.ne 2
+.na
+\fBsuspend\fR
+.ad
+.RS 30n
+Suspend the parent process.
+.RE
+
+.sp
+.ne 2
+.na
+\fBstop-output\fR
+.ad
+.RS 30n
+Pause terminal output.
+.RE
+
+.sp
+.ne 2
+.na
+\fBstart-output\fR
+.ad
+.RS 30n
+Resume paused terminal output.
+.RE
+
+.sp
+.ne 2
+.na
+\fBliteral-next\fR
+.ad
+.RS 30n
+Arrange for the next character to be treated as a normal character. This allows
+control characters to be entered.
+.RE
+
+.sp
+.ne 2
+.na
+\fBcursor-right\fR
+.ad
+.RS 30n
+Move the cursor one character right.
+.RE
+
+.sp
+.ne 2
+.na
+\fBcursor-left\fR
+.ad
+.RS 30n
+Move the cursor one character left.
+.RE
+
+.sp
+.ne 2
+.na
+\fBinsert-mode\fR
+.ad
+.RS 30n
+Toggle between insert mode and overwrite mode.
+.RE
+
+.sp
+.ne 2
+.na
+\fBbeginning-of-line\fR
+.ad
+.RS 30n
+Move the cursor to the beginning of the line.
+.RE
+
+.sp
+.ne 2
+.na
+\fBend-of-line\fR
+.ad
+.RS 30n
+Move the cursor to the end of the line.
+.RE
+
+.sp
+.ne 2
+.na
+\fBdelete-line\fR
+.ad
+.RS 30n
+Delete the contents of the current line.
+.RE
+
+.sp
+.ne 2
+.na
+\fBkill-line\fR
+.ad
+.RS 30n
+Delete everything that follows the cursor.
+.RE
+
+.sp
+.ne 2
+.na
+\fBbackward-kill-line\fR
+.ad
+.RS 30n
+Delete all characters between the cursor and the start of the line.
+.RE
+
+.sp
+.ne 2
+.na
+\fBforward-word\fR
+.ad
+.RS 30n
+Move to the end of the word which follows the cursor.
+.RE
+
+.sp
+.ne 2
+.na
+\fBforward-to-word\fR
+.ad
+.RS 30n
+Move the cursor to the start of the word that follows the cursor.
+.RE
+
+.sp
+.ne 2
+.na
+\fBbackward-word\fR
+.ad
+.RS 30n
+Move to the start of the word which precedes the cursor.
+.RE
+
+.sp
+.ne 2
+.na
+\fBgoto-column\fR
+.ad
+.RS 30n
+Move the cursor to the 1-relative column in the line specified by any preceding
+digit-argument sequences (see Entering Repeat Counts below).
+.RE
+
+.sp
+.ne 2
+.na
+\fBfind-parenthesis\fR
+.ad
+.RS 30n
+If the cursor is currently over a parenthesis character, move it to the
+matching parenthesis character. If not over a parenthesis character move right
+to the next close parenthesis.
+.RE
+
+.sp
+.ne 2
+.na
+\fBforward-delete-char\fR
+.ad
+.RS 30n
+Delete the character under the cursor.
+.RE
+
+.sp
+.ne 2
+.na
+\fBbackward-delete-char\fR
+.ad
+.RS 30n
+Delete the character which precedes the cursor.
+.RE
+
+.sp
+.ne 2
+.na
+\fBlist-or-eof\fR
+.ad
+.RS 30n
+This is intended for binding to \fB^D\fR. When invoked when the cursor is
+within the line it displays all possible completions then redisplays the line
+unchanged. When invoked on an empty line, it signals end-of-input (EOF) to the
+caller of \fBgl_get_line()\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBdel-char-or-list-or-eof\fR
+.ad
+.RS 30n
+This is intended for binding to \fB^D\fR. When invoked when the cursor is
+within the line it invokes forward-delete-char. When invoked at the end of the
+line it displays all possible completions then redisplays the line unchanged.
+When invoked on an empty line, it signals end-of-input (EOF) to the caller of
+\fBgl_get_line()\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBforward-delete-word\fR
+.ad
+.RS 30n
+Delete the word which follows the cursor.
+.RE
+
+.sp
+.ne 2
+.na
+\fBbackward-delete-word\fR
+.ad
+.RS 30n
+Delete the word which precedes the cursor.
+.RE
+
+.sp
+.ne 2
+.na
+\fBupcase-word\fR
+.ad
+.RS 30n
+Convert all of the characters of the word which follows the cursor, to upper
+case.
+.RE
+
+.sp
+.ne 2
+.na
+\fBdowncase-word\fR
+.ad
+.RS 30n
+Convert all of the characters of the word which follows the cursor, to lower
+case.
+.RE
+
+.sp
+.ne 2
+.na
+\fBcapitalize-word\fR
+.ad
+.RS 30n
+Capitalize the word which follows the cursor.
+.RE
+
+.sp
+.ne 2
+.na
+\fBchange-case\fR
+.ad
+.RS 30n
+If the next character is upper case, toggle it to lower case and vice versa.
+.RE
+
+.sp
+.ne 2
+.na
+\fBredisplay\fR
+.ad
+.RS 30n
+Redisplay the line.
+.RE
+
+.sp
+.ne 2
+.na
+\fBclear-screen\fR
+.ad
+.RS 30n
+Clear the terminal, then redisplay the current line.
+.RE
+
+.sp
+.ne 2
+.na
+\fBtranspose-chars\fR
+.ad
+.RS 30n
+Swap the character under the cursor with the character just before the cursor.
+.RE
+
+.sp
+.ne 2
+.na
+\fBset-mark\fR
+.ad
+.RS 30n
+Set a mark at the position of the cursor.
+.RE
+
+.sp
+.ne 2
+.na
+\fBexchange-point-and-mark\fR
+.ad
+.RS 30n
+Move the cursor to the last mark that was set, and move the mark to where the
+cursor used to be.
+.RE
+
+.sp
+.ne 2
+.na
+\fBkill-region\fR
+.ad
+.RS 30n
+Delete the characters that lie between the last mark that was set, and the
+cursor.
+.RE
+
+.sp
+.ne 2
+.na
+\fBcopy-region-as-kill\fR
+.ad
+.RS 30n
+Copy the text between the mark and the cursor to the cut buffer, without
+deleting the original text.
+.RE
+
+.sp
+.ne 2
+.na
+\fByank\fR
+.ad
+.RS 30n
+Insert the text that was last deleted, just before the current position of the
+cursor.
+.RE
+
+.sp
+.ne 2
+.na
+\fBappend-yank\fR
+.ad
+.RS 30n
+Paste the current contents of the cut buffer, after the cursor.
+.RE
+
+.sp
+.ne 2
+.na
+\fBup-history\fR
+.ad
+.RS 30n
+Recall the next oldest line that was entered. Note that in \fBvi\fR mode you
+are left in command mode.
+.RE
+
+.sp
+.ne 2
+.na
+\fBdown-history\fR
+.ad
+.RS 30n
+Recall the next most recent line that was entered. If no history recall session
+is currently active, the next line from a previous recall session is recalled.
+Note that in vi mode you are left in command mode.
+.RE
+
+.sp
+.ne 2
+.na
+\fBhistory-search-backward\fR
+.ad
+.RS 30n
+Recall the next oldest line who's prefix matches the string which currently
+precedes the cursor (in \fBvi\fR command-mode the character under the cursor is
+also included in the search string). Note that in \fBvi\fR mode you are left in
+command mode.
+.RE
+
+.sp
+.ne 2
+.na
+\fBhistory-search-forward\fR
+.ad
+.RS 30n
+Recall the next newest line who's prefix matches the string which currently
+precedes the cursor (in \fBvi\fR command-mode the character under the cursor is
+also included in the search string). Note that in \fBvi\fR mode you are left in
+command mode.
+.RE
+
+.sp
+.ne 2
+.na
+\fBhistory-re-search-backward\fR
+.ad
+.RS 30n
+Recall the next oldest line who's prefix matches that established by the last
+invocation of either history-search-forward or history-search-backward.
+.RE
+
+.sp
+.ne 2
+.na
+\fBhistory-re-search-forward\fR
+.ad
+.RS 30n
+Recall the next newest line who's prefix matches that established by the last
+invocation of either history-search-forward or history-search-backward.
+.RE
+
+.sp
+.ne 2
+.na
+\fBcomplete-word\fR
+.ad
+.RS 30n
+Attempt to complete the incomplete word which precedes the cursor. Unless the
+host program has customized word completion, file name completion is attempted.
+In \fBvi\fR command mode the character under the cursor is also included in
+the word being completed, and you are left in \fBvi\fR insert mode.
+.RE
+
+.sp
+.ne 2
+.na
+\fBexpand-filename\fR
+.ad
+.RS 30n
+Within the command line, expand wild cards, tilde expressions and dollar
+expressions in the file name which immediately precedes the cursor. In \fBvi\fR
+command mode the character under the cursor is also included in the file name
+being expanded, and you are left in \fBvi\fR insert mode.
+.RE
+
+.sp
+.ne 2
+.na
+\fBlist-glob\fR
+.ad
+.RS 30n
+List any file names which match the wild-card, tilde and dollar expressions in
+the file name which immediately precedes the cursor, then redraw the input line
+unchanged.
+.RE
+
+.sp
+.ne 2
+.na
+\fBlist-history\fR
+.ad
+.RS 30n
+Display the contents of the history list for the current history group. If a
+repeat count of \fB> 1\fR is specified, only that many of the most recent lines
+are displayed. See the Entering Repeat Counts section.
+.RE
+
+.sp
+.ne 2
+.na
+\fBread-from-file\fR
+.ad
+.RS 30n
+Temporarily switch to reading input from the file who's name precedes the
+cursor.
+.RE
+
+.sp
+.ne 2
+.na
+\fBread-init-files\fR
+.ad
+.RS 30n
+Re-read \fBteclarc\fR configuration files.
+.RE
+
+.sp
+.ne 2
+.na
+\fBbeginning-of-history\fR
+.ad
+.RS 30n
+Move to the oldest line in the history list. Note that in \fBvi\fR mode you are
+left in command mode.
+.RE
+
+.sp
+.ne 2
+.na
+\fBend-of-history\fR
+.ad
+.RS 30n
+Move to the newest line in the history list (ie. the current line). Note that
+in \fBvi\fR mode this leaves you in command mode.
+.RE
+
+.sp
+.ne 2
+.na
+\fBdigit-argument\fR
+.ad
+.RS 30n
+Enter a repeat count for the next key binding function. For details, see the
+Entering Repeat Counts section.
+.RE
+
+.sp
+.ne 2
+.na
+\fBnewline\fR
+.ad
+.RS 30n
+Terminate and return the current contents of the line, after appending a
+newline character. The newline character is normally '\en', but will be the
+first character of the key sequence that invoked the newline action, if this
+happens to be a printable character. If the action was invoked by the '\en'
+newline character or the '\er' carriage return character, the line is appended
+to the history buffer.
+.RE
+
+.sp
+.ne 2
+.na
+\fBrepeat-history\fR
+.ad
+.RS 30n
+Return the line that is being edited, then arrange for the next most recent
+entry in the history buffer to be recalled when tecla is next called.
+Repeatedly invoking this action causes successive historical input lines to be
+re-executed. Note that this action is equivalent to the 'Operate' action in
+ksh.
+.RE
+
+.sp
+.ne 2
+.na
+\fBring-bell\fR
+.ad
+.RS 30n
+Ring the terminal bell, unless the bell has been silenced via the nobeep
+configuration option (see The Tecla Configuration File section).
+.RE
+
+.sp
+.ne 2
+.na
+\fBforward-copy-char\fR
+.ad
+.RS 30n
+Copy the next character into the cut buffer (NB. use repeat counts to copy more
+than one).
+.RE
+
+.sp
+.ne 2
+.na
+\fBbackward-copy-char\fR
+.ad
+.RS 30n
+Copy the previous character into the cut buffer.
+.RE
+
+.sp
+.ne 2
+.na
+\fBforward-copy-word\fR
+.ad
+.RS 30n
+Copy the next word into the cut buffer.
+.RE
+
+.sp
+.ne 2
+.na
+\fBbackward-copy-word\fR
+.ad
+.RS 30n
+Copy the previous word into the cut buffer.
+.RE
+
+.sp
+.ne 2
+.na
+\fBforward-find-char\fR
+.ad
+.RS 30n
+Move the cursor to the next occurrence of the next character that you type.
+.RE
+
+.sp
+.ne 2
+.na
+\fBbackward-find-char\fR
+.ad
+.RS 30n
+Move the cursor to the last occurrence of the next character that you type.
+.RE
+
+.sp
+.ne 2
+.na
+\fBforward-to-char\fR
+.ad
+.RS 30n
+Move the cursor to the character just before the next occurrence of the next
+character that the user types.
+.RE
+
+.sp
+.ne 2
+.na
+\fBbackward-to-char\fR
+.ad
+.RS 30n
+Move the cursor to the character just after the last occurrence before the
+cursor of the next character that the user types.
+.RE
+
+.sp
+.ne 2
+.na
+\fBrepeat-find-char\fR
+.ad
+.RS 30n
+Repeat the last backward-find-char, forward-find-char, backward-to-char or
+forward-to-char.
+.RE
+
+.sp
+.ne 2
+.na
+\fBinvert-refind-char\fR
+.ad
+.RS 30n
+Repeat the last backward-find-char, forward-find-char, backward-to-char, or
+forward-to-char in the opposite direction.
+.RE
+
+.sp
+.ne 2
+.na
+\fBdelete-to-column\fR
+.ad
+.RS 30n
+Delete the characters from the cursor up to the column that is specified by the
+repeat count.
+.RE
+
+.sp
+.ne 2
+.na
+\fBdelete-to-parenthesis\fR
+.ad
+.RS 30n
+Delete the characters from the cursor up to and including the matching
+parenthesis, or next close parenthesis.
+.RE
+
+.sp
+.ne 2
+.na
+\fBforward-delete-find\fR
+.ad
+.RS 30n
+Delete the characters from the cursor up to and including the following
+occurrence of the next character typed.
+.RE
+
+.sp
+.ne 2
+.na
+\fBbackward-delete-find\fR
+.ad
+.RS 30n
+Delete the characters from the cursor up to and including the preceding
+occurrence of the next character typed.
+.RE
+
+.sp
+.ne 2
+.na
+\fBforward-delete-to\fR
+.ad
+.RS 30n
+Delete the characters from the cursor up to, but not including, the following
+occurrence of the next character typed.
+.RE
+
+.sp
+.ne 2
+.na
+\fBbackward-delete-to\fR
+.ad
+.RS 30n
+Delete the characters from the cursor up to, but not including, the preceding
+occurrence of the next character typed.
+.RE
+
+.sp
+.ne 2
+.na
+\fBdelete-refind\fR
+.ad
+.RS 30n
+Repeat the last *-delete-find or *-delete-to action.
+.RE
+
+.sp
+.ne 2
+.na
+\fBdelete-invert-refind\fR
+.ad
+.RS 30n
+Repeat the last *-delete-find or *-delete-to action, in the opposite direction.
+.RE
+
+.sp
+.ne 2
+.na
+\fBcopy-to-column\fR
+.ad
+.RS 30n
+Copy the characters from the cursor up to the column that is specified by the
+repeat count, into the cut buffer.
+.RE
+
+.sp
+.ne 2
+.na
+\fBcopy-to-parenthesis\fR
+.ad
+.RS 30n
+Copy the characters from the cursor up to and including the matching
+parenthesis, or next close parenthesis, into the cut buffer.
+.RE
+
+.sp
+.ne 2
+.na
+\fBforward-copy-find\fR
+.ad
+.RS 30n
+Copy the characters from the cursor up to and including the following occurrence
+of the next character typed, into the cut buffer.
+.RE
+
+.sp
+.ne 2
+.na
+\fBbackward-copy-find\fR
+.ad
+.RS 30n
+Copy the characters from the cursor up to and including the preceding occurrence
+of the next character typed, into the cut buffer.
+.RE
+
+.sp
+.ne 2
+.na
+\fBforward-copy-to\fR
+.ad
+.RS 30n
+Copy the characters from the cursor up to, but not including, the following
+occurrence of the next character typed, into the cut buffer.
+.RE
+
+.sp
+.ne 2
+.na
+\fBbackward-copy-to\fR
+.ad
+.RS 30n
+Copy the characters from the cursor up to, but not including, the preceding
+occurrence of the next character typed, into the cut buffer.
+.RE
+
+.sp
+.ne 2
+.na
+\fBcopy-refind\fR
+.ad
+.RS 30n
+Repeat the last *-copy-find or *-copy-to action.
+.RE
+
+.sp
+.ne 2
+.na
+\fBcopy-invert-refind\fR
+.ad
+.RS 30n
+Repeat the last *-copy-find or *-copy-to action, in the opposite direction.
+.RE
+
+.sp
+.ne 2
+.na
+\fBvi-mode\fR
+.ad
+.RS 30n
+Switch to \fBvi\fR mode from emacs mode.
+.RE
+
+.sp
+.ne 2
+.na
+\fBemacs-mode\fR
+.ad
+.RS 30n
+Switch to \fBemacs\fR mode from \fBvi\fR mode.
+.RE
+
+.sp
+.ne 2
+.na
+\fBvi-insert\fR
+.ad
+.RS 30n
+From \fBvi\fR command mode, switch to insert mode.
+.RE
+
+.sp
+.ne 2
+.na
+\fBvi-overwrite\fR
+.ad
+.RS 30n
+From \fBvi\fR command mode, switch to overwrite mode.
+.RE
+
+.sp
+.ne 2
+.na
+\fBvi-insert-at-bol\fR
+.ad
+.RS 30n
+From \fBvi\fR command mode, move the cursor to the start of the line and switch
+to insert mode.
+.RE
+
+.sp
+.ne 2
+.na
+\fBvi-append-at-eol\fR
+.ad
+.RS 30n
+From \fBvi\fR command mode, move the cursor to the end of the line and switch
+to append mode.
+.RE
+
+.sp
+.ne 2
+.na
+\fBvi-append\fR
+.ad
+.RS 30n
+From \fBvi\fR command mode, move the cursor one position right, and switch to
+insert mode.
+.RE
+
+.sp
+.ne 2
+.na
+\fBvi-replace-char\fR
+.ad
+.RS 30n
+From \fBvi\fR command mode, replace the character under the cursor with the
+next character entered.
+.RE
+
+.sp
+.ne 2
+.na
+\fBvi-forward-change-char\fR
+.ad
+.RS 30n
+From \fBvi\fR command mode, delete the next character then enter insert mode.
+.RE
+
+.sp
+.ne 2
+.na
+\fBvi-backward-change-char\fR
+.ad
+.RS 30n
+From vi command mode, delete the preceding character then enter insert mode.
+.RE
+
+.sp
+.ne 2
+.na
+\fBvi-forward-change-word\fR
+.ad
+.RS 30n
+From \fBvi\fR command mode, delete the next word then enter insert mode.
+.RE
+
+.sp
+.ne 2
+.na
+\fBvi-backward-change-word\fR
+.ad
+.RS 30n
+From vi command mode, delete the preceding word then enter insert mode.
+.RE
+
+.sp
+.ne 2
+.na
+\fBvi-change-rest-of-line\fR
+.ad
+.RS 30n
+From \fBvi\fR command mode, delete from the cursor to the end of the line, then
+enter insert mode.
+.RE
+
+.sp
+.ne 2
+.na
+\fBvi-change-line\fR
+.ad
+.RS 30n
+From \fBvi\fR command mode, delete the current line, then enter insert mode.
+.RE
+
+.sp
+.ne 2
+.na
+\fBvi-change-to-bol\fR
+.ad
+.RS 30n
+From \fBvi\fR command mode, delete all characters between the cursor and the
+beginning of the line, then enter insert mode.
+.RE
+
+.sp
+.ne 2
+.na
+\fBvi-change-to-column\fR
+.ad
+.RS 30n
+From \fBvi\fR command mode, delete the characters from the cursor up to the
+column that is specified by the repeat count, then enter insert mode.
+.RE
+
+.sp
+.ne 2
+.na
+\fBvi-change-to-parenthesis\fR
+.ad
+.RS 30n
+Delete the characters from the cursor up to and including the matching
+parenthesis, or next close parenthesis, then enter \fBvi\fR insert mode.
+.RE
+
+.sp
+.ne 2
+.na
+\fBvi-forward-change-find\fR
+.ad
+.RS 30n
+From \fBvi\fR command mode, delete the characters from the cursor up to and
+including the following occurrence of the next character typed, then enter
+insert mode.
+.RE
+
+.sp
+.ne 2
+.na
+\fBvi-backward-change-find\fR
+.ad
+.RS 30n
+From vi command mode, delete the characters from the cursor up to and including
+the preceding occurrence of the next character typed, then enter insert mode.
+.RE
+
+.sp
+.ne 2
+.na
+\fBvi-forward-change-to\fR
+.ad
+.RS 30n
+From \fBvi\fR command mode, delete the characters from the cursor up to, but
+not including, the following occurrence of the next character typed, then enter
+insert mode.
+.RE
+
+.sp
+.ne 2
+.na
+\fBvi-backward-change-to\fR
+.ad
+.RS 30n
+From \fBvi\fR command mode, delete the characters from the cursor up to, but
+not including, the preceding occurrence of the next character typed, then enter
+insert mode.
+.RE
+
+.sp
+.ne 2
+.na
+\fBvi-change-refind\fR
+.ad
+.RS 30n
+Repeat the last vi-*-change-find or vi-*-change-to action.
+.RE
+
+.sp
+.ne 2
+.na
+\fBvi-change-invert-refind\fR
+.ad
+.RS 30n
+Repeat the last vi-*-change-find or vi-*-change-to action, in the opposite
+direction.
+.RE
+
+.sp
+.ne 2
+.na
+\fBvi-undo\fR
+.ad
+.RS 30n
+In \fBvi\fR mode, undo the last editing operation.
+.RE
+
+.sp
+.ne 2
+.na
+\fBvi-repeat-change\fR
+.ad
+.RS 30n
+In \fBvi\fR command mode, repeat the last command that modified the line.
+.RE
+
+.SS "Default Key Bindings In \fBemacs\fR Mode"
+.LP
+The following default key bindings, which can be overridden by the tecla
+configuration file, are designed to mimic most of the bindings of the unix
+\fBtcsh\fR shell, when it is in \fBemacs\fR editing mode.
+.sp
+.LP
+This is the default editing mode of the tecla library.
+.sp
+.LP
+Under UNIX the terminal driver sets a number of special keys for certain
+functions. The tecla library attempts to use the same key bindings to maintain
+consistency. The key sequences shown for the following 6 bindings are thus just
+examples of what they will probably be set to. If you have used the stty
+command to change these keys, then the default bindings should match.
+.sp
+.ne 2
+.na
+\fB\fB^C\fR\fR
+.ad
+.RS 6n
+user-interrupt
+.RE
+
+.sp
+.ne 2
+.na
+\fB^\e\fR
+.ad
+.RS 6n
+abort
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB^Z\fR\fR
+.ad
+.RS 6n
+suspend
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB^Q\fR\fR
+.ad
+.RS 6n
+start-output
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB^S\fR\fR
+.ad
+.RS 6n
+stop-output
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB^V\fR\fR
+.ad
+.RS 6n
+literal-next
+.RE
+
+.sp
+.LP
+The cursor keys are referred to by name, as follows. This is necessary because
+different types of terminals generate different key sequences when their cursor
+keys are pressed.
+.sp
+.ne 2
+.na
+\fBright\fR
+.ad
+.RS 9n
+cursor-right
+.RE
+
+.sp
+.ne 2
+.na
+\fBleft\fR
+.ad
+.RS 9n
+cursor-left
+.RE
+
+.sp
+.ne 2
+.na
+\fBup\fR
+.ad
+.RS 9n
+up-history
+.RE
+
+.sp
+.ne 2
+.na
+\fBdown\fR
+.ad
+.RS 9n
+down-history
+.RE
+
+.sp
+.LP
+The remaining bindings don't depend on the terminal settings.
+.sp
+.ne 2
+.na
+\fB\fB^F\fR\fR
+.ad
+.RS 21n
+cursor-right
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB^B\fR\fR
+.ad
+.RS 21n
+cursor-left
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-i\fR\fR
+.ad
+.RS 21n
+insert-mode
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB^A\fR\fR
+.ad
+.RS 21n
+beginning-of-line
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB^E\fR\fR
+.ad
+.RS 21n
+end-of-line
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB^U\fR\fR
+.ad
+.RS 21n
+delete-line
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB^K\fR\fR
+.ad
+.RS 21n
+kill-line
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-f\fR\fR
+.ad
+.RS 21n
+forward-word
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-b\fR\fR
+.ad
+.RS 21n
+backward-word
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB^D\fR\fR
+.ad
+.RS 21n
+del-char-or-list-or-eof
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB^H\fR\fR
+.ad
+.RS 21n
+backward-delete-char
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB^?\fR\fR
+.ad
+.RS 21n
+backward-delete-char
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-d\fR\fR
+.ad
+.RS 21n
+forward-delete-word
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-^H\fR\fR
+.ad
+.RS 21n
+backward-delete-word
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-^?\fR\fR
+.ad
+.RS 21n
+backward-delete-word
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-u\fR\fR
+.ad
+.RS 21n
+upcase-word
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-l\fR\fR
+.ad
+.RS 21n
+downcase-word
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-c\fR\fR
+.ad
+.RS 21n
+capitalize-word
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB^R\fR\fR
+.ad
+.RS 21n
+redisplay
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB^L\fR\fR
+.ad
+.RS 21n
+clear-screen
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB^T\fR\fR
+.ad
+.RS 21n
+transpose-chars
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB^@\fR\fR
+.ad
+.RS 21n
+set-mark
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB^X^X\fR\fR
+.ad
+.RS 21n
+exchange-point-and-mark
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB^W\fR\fR
+.ad
+.RS 21n
+kill-region
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-w\fR\fR
+.ad
+.RS 21n
+copy-region-as-kill
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB^Y\fR\fR
+.ad
+.RS 21n
+yank
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB^P\fR\fR
+.ad
+.RS 21n
+up-history
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB^N\fR\fR
+.ad
+.RS 21n
+down-history
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-p\fR\fR
+.ad
+.RS 21n
+history-search-backward
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-n\fR\fR
+.ad
+.RS 21n
+history-search-forward
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB^I\fR\fR
+.ad
+.RS 21n
+complete-word
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB^X*\fR\fR
+.ad
+.RS 21n
+expand-filename
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB^X^F\fR\fR
+.ad
+.RS 21n
+read-from-file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB^X^R\fR\fR
+.ad
+.RS 21n
+read-init-files
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB^Xg\fR\fR
+.ad
+.RS 21n
+list-glob
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB^Xh\fR\fR
+.ad
+.RS 21n
+list-history
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-<\fR\fR
+.ad
+.RS 21n
+beginning-of-history
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM->\fR\fR
+.ad
+.RS 21n
+end-of-history
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\en\fR\fR
+.ad
+.RS 21n
+newline
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\er\fR\fR
+.ad
+.RS 21n
+newline
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-o\fR\fR
+.ad
+.RS 21n
+repeat-history
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-^V\fR\fR
+.ad
+.RS 21n
+\fBvi\fR-mode
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-0, M-1, ... M-9\fR\fR
+.ad
+.RS 21n
+digit-argument (see below)
+.RE
+
+.sp
+.LP
+Note that \fB^I\fR is what the TAB key generates, and that \fB^@\fR can be
+generated not only by pressing the CONTROL key and the @ key simultaneously,
+but also by pressing the CONTROL key and the space bar at the same time.
+.SS "Default Key Bindings in \fBvi\fR Mode"
+.LP
+The following default key bindings are designed to mimic the \fBvi\fR style of
+editing as closely as possible. This means that very few editing functions are
+provided in the initial character input mode, editing functions instead being
+provided by the \fBvi\fR command mode. The \fBvi\fR command mode is entered
+whenever the ESCAPE character is pressed, or whenever a key sequence that
+starts with a meta character is entered. In addition to mimicing \fBvi\fR,
+\fBlibtecla\fR provides bindings for tab completion, wild-card expansion of
+file names, and historical line recall.
+.sp
+.LP
+To learn how to tell the tecla library to use \fBvi\fR mode instead of the
+default \fBemacs\fR editing mode, see the earlier section entitled The Tecla
+Configuration File.
+.sp
+.LP
+Under UNIX the terminal driver sets a number of special keys for certain
+functions. The tecla library attempts to use the same key bindings to maintain
+consistency, binding them both in input mode and in command mode. The key
+sequences shown for the following 6 bindings are thus just examples of what
+they will probably be set to. If you have used the \fBstty\fR command to change
+these keys, then the default bindings should match.
+.sp
+.ne 2
+.na
+\fB\fB^C\fR\fR
+.ad
+.RS 8n
+user-interrupt
+.RE
+
+.sp
+.ne 2
+.na
+\fB^\e\fR
+.ad
+.RS 8n
+abort
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB^Z\fR\fR
+.ad
+.RS 8n
+suspend
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB^Q\fR\fR
+.ad
+.RS 8n
+start-output
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB^S\fR\fR
+.ad
+.RS 8n
+stop-output
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB^V\fR\fR
+.ad
+.RS 8n
+literal-next
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-^C\fR\fR
+.ad
+.RS 8n
+user-interrupt
+.RE
+
+.sp
+.ne 2
+.na
+\fBM-^\e\fR
+.ad
+.RS 8n
+abort
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-^Z\fR\fR
+.ad
+.RS 8n
+suspend
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-^Q\fR\fR
+.ad
+.RS 8n
+start-output
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-^S\fR\fR
+.ad
+.RS 8n
+stop-output
+.RE
+
+.sp
+.LP
+Note that above, most of the bindings are defined twice, once as a raw control
+code like \fB^C\fR and then a second time as a META character like \fBM-^C\fR.
+The former is the binding for \fBvi\fR input mode, whereas the latter is the
+binding for \fBvi\fR command mode. Once in command mode all key sequences that
+the user types that they don't explicitly start with an ESCAPE or a META key,
+have their first key secretly converted to a META character before the key
+sequence is looked up in the key binding table. Thus, once in command mode,
+when you type the letter i, for example, the tecla library actually looks up
+the binding for \fBM-i\fR.
+.sp
+.LP
+The cursor keys are referred to by name, as follows. This is necessary because
+different types of terminals generate different key sequences when their cursor
+keys are pressed.
+.sp
+.ne 2
+.na
+\fB\fBright\fR\fR
+.ad
+.RS 9n
+cursor-right
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBleft\fR\fR
+.ad
+.RS 9n
+cursor-left
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBup\fR\fR
+.ad
+.RS 9n
+up-history
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdown\fR\fR
+.ad
+.RS 9n
+down-history
+.RE
+
+.sp
+.LP
+The cursor keys normally generate a key sequence that start with an ESCAPE
+character, so beware that using the arrow keys will put you into command mode
+(if you aren't already in command mode).
+.sp
+.LP
+The following are the terminal-independent key bindings for \fBvi\fR input
+mode.
+.sp
+.ne 2
+.na
+\fB\fB^D\fR\fR
+.ad
+.RS 8n
+list-or-eof
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB^G\fR\fR
+.ad
+.RS 8n
+list-glob
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB^H\fR\fR
+.ad
+.RS 8n
+backward-delete-char
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB^I\fR\fR
+.ad
+.RS 8n
+complete-word
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\er\fR\fR
+.ad
+.RS 8n
+newline
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\en\fR\fR
+.ad
+.RS 8n
+newline
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB^L\fR\fR
+.ad
+.RS 8n
+clear-screen
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB^N\fR\fR
+.ad
+.RS 8n
+down-history
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB^P\fR\fR
+.ad
+.RS 8n
+up-history
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB^R\fR\fR
+.ad
+.RS 8n
+redisplay
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB^U\fR\fR
+.ad
+.RS 8n
+backward-kill-line
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB^W\fR\fR
+.ad
+.RS 8n
+backward-delete-word
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB^X*\fR\fR
+.ad
+.RS 8n
+expand-filename
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB^X^F\fR\fR
+.ad
+.RS 8n
+read-from-file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB^X^R\fR\fR
+.ad
+.RS 8n
+read-init-files
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB^?\fR\fR
+.ad
+.RS 8n
+backward-delete-char
+.RE
+
+.sp
+.LP
+The following are the key bindings that are defined in \fBvi\fR command mode,
+this being specified by them all starting with a META character. As mentioned
+above, once in command mode the initial meta character is optional. For
+example, you might enter command mode by typing ESCAPE, and then press 'H'
+twice to move the cursor two positions to the left. Both 'H' characters get
+quietly converted to \fBM-h\fR before being compared to the key binding table,
+the first one because ESCAPE followed by a character is always converted to the
+equivalent META character, and the second because command mode was already
+active.
+.sp
+.ne 2
+.na
+\fBM-<space>\fR
+.ad
+.RS 21n
+cursor-right (META-space)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-$\fR\fR
+.ad
+.RS 21n
+end-of-line
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-*\fR\fR
+.ad
+.RS 21n
+expand-filename
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-+\fR\fR
+.ad
+.RS 21n
+down-history
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM--\fR\fR
+.ad
+.RS 21n
+up-history
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-<\fR\fR
+.ad
+.RS 21n
+beginning-of-history
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM->\fR\fR
+.ad
+.RS 21n
+end-of-history
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-^\fR\fR
+.ad
+.RS 21n
+beginning-of-line
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-\fR\fR
+.ad
+.RS 21n
+repeat-find-char
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-,\fR\fR
+.ad
+.RS 21n
+invert-refind-char
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-|\fR\fR
+.ad
+.RS 21n
+goto-column
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-~\fR\fR
+.ad
+.RS 21n
+change-case
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-.\fR\fR
+.ad
+.RS 21n
+vi-repeat-change
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-%\fR\fR
+.ad
+.RS 21n
+find-parenthesis
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-a\fR\fR
+.ad
+.RS 21n
+vi-append
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-A\fR\fR
+.ad
+.RS 21n
+vi-append-at-eol
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-b\fR\fR
+.ad
+.RS 21n
+backward-word
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-B\fR\fR
+.ad
+.RS 21n
+backward-word
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-C\fR\fR
+.ad
+.RS 21n
+vi-change-rest-of-line
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-cb\fR\fR
+.ad
+.RS 21n
+vi-backward-change-word
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-cB\fR\fR
+.ad
+.RS 21n
+vi-backward-change-word
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-cc\fR\fR
+.ad
+.RS 21n
+vi-change-line
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-ce\fR\fR
+.ad
+.RS 21n
+vi-forward-change-word
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-cE\fR\fR
+.ad
+.RS 21n
+vi-forward-change-word
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-cw\fR\fR
+.ad
+.RS 21n
+vi-forward-change-word
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-cW\fR\fR
+.ad
+.RS 21n
+vi-forward-change-word
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-cF\fR\fR
+.ad
+.RS 21n
+vi-backward-change-find
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-cf\fR\fR
+.ad
+.RS 21n
+vi-forward-change-find
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-cT\fR\fR
+.ad
+.RS 21n
+vi-backward-change-to
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-ct\fR\fR
+.ad
+.RS 21n
+vi-forward-change-to
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-c;\fR\fR
+.ad
+.RS 21n
+vi-change-refind
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-c,\fR\fR
+.ad
+.RS 21n
+vi-change-invert-refind
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-ch\fR\fR
+.ad
+.RS 21n
+vi-backward-change-char
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-c^H\fR\fR
+.ad
+.RS 21n
+vi-backward-change-char
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-c^?\fR\fR
+.ad
+.RS 21n
+vi-backward-change-char
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-cl\fR\fR
+.ad
+.RS 21n
+vi-forward-change-char
+.RE
+
+.sp
+.ne 2
+.na
+\fBM-c<space>\fR
+.ad
+.RS 21n
+vi-forward-change-char (META-c-space)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-c^\fR\fR
+.ad
+.RS 21n
+vi-change-to-bol
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-c0\fR\fR
+.ad
+.RS 21n
+vi-change-to-bol
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-c$\fR\fR
+.ad
+.RS 21n
+vi-change-rest-of-line
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-c|\fR\fR
+.ad
+.RS 21n
+vi-change-to-column
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-c%\fR\fR
+.ad
+.RS 21n
+vi-change-to-parenthesis
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-dh\fR\fR
+.ad
+.RS 21n
+backward-delete-char
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-d^H\fR\fR
+.ad
+.RS 21n
+backward-delete-char
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-d^?\fR\fR
+.ad
+.RS 21n
+backward-delete-char
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-dl\fR\fR
+.ad
+.RS 21n
+forward-delete-char
+.RE
+
+.sp
+.ne 2
+.na
+\fBM-d<space>\fR
+.ad
+.RS 21n
+forward-delete-char (META-d-space)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-dd\fR\fR
+.ad
+.RS 21n
+delete-line
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-db\fR\fR
+.ad
+.RS 21n
+backward-delete-word
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-dB\fR\fR
+.ad
+.RS 21n
+backward-delete-word
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-de\fR\fR
+.ad
+.RS 21n
+forward-delete-word
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-dE\fR\fR
+.ad
+.RS 21n
+forward-delete-word
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-dw\fR\fR
+.ad
+.RS 21n
+forward-delete-word
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-dW\fR\fR
+.ad
+.RS 21n
+forward-delete-word
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-dF\fR\fR
+.ad
+.RS 21n
+backward-delete-find
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-df\fR\fR
+.ad
+.RS 21n
+forward-delete-find
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-dT\fR\fR
+.ad
+.RS 21n
+backward-delete-to
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-dt\fR\fR
+.ad
+.RS 21n
+forward-delete-to
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-d;\fR\fR
+.ad
+.RS 21n
+delete-refind
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-d,\fR\fR
+.ad
+.RS 21n
+delete-invert-refind
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-d^\fR\fR
+.ad
+.RS 21n
+backward-kill-line
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-d0\fR\fR
+.ad
+.RS 21n
+backward-kill-line
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-d$\fR\fR
+.ad
+.RS 21n
+kill-line
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-D\fR\fR
+.ad
+.RS 21n
+kill-line
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-d|\fR\fR
+.ad
+.RS 21n
+delete-to-column
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-d%\fR\fR
+.ad
+.RS 21n
+delete-to-parenthesis
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-e\fR\fR
+.ad
+.RS 21n
+forward-word
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-E\fR\fR
+.ad
+.RS 21n
+forward-word
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-f\fR\fR
+.ad
+.RS 21n
+forward-find-char
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-F\fR\fR
+.ad
+.RS 21n
+backward-find-char
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM--\fR\fR
+.ad
+.RS 21n
+up-history
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-h\fR\fR
+.ad
+.RS 21n
+cursor-left
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-H\fR\fR
+.ad
+.RS 21n
+beginning-of-history
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-i\fR\fR
+.ad
+.RS 21n
+vi-insert
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-I\fR\fR
+.ad
+.RS 21n
+vi-insert-at-bol
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-j\fR\fR
+.ad
+.RS 21n
+down-history
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-J\fR\fR
+.ad
+.RS 21n
+history-search-forward
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-k\fR\fR
+.ad
+.RS 21n
+up-history
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-K\fR\fR
+.ad
+.RS 21n
+history-search-backward
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-l\fR\fR
+.ad
+.RS 21n
+cursor-right
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-L\fR\fR
+.ad
+.RS 21n
+end-of-history
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-n\fR\fR
+.ad
+.RS 21n
+history-re-search-forward
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-N\fR\fR
+.ad
+.RS 21n
+history-re-search-backward
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-p\fR\fR
+.ad
+.RS 21n
+append-yank
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-P\fR\fR
+.ad
+.RS 21n
+yank
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-r\fR\fR
+.ad
+.RS 21n
+vi-replace-char
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-R\fR\fR
+.ad
+.RS 21n
+vi-overwrite
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-s\fR\fR
+.ad
+.RS 21n
+vi-forward-change-char
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-S\fR\fR
+.ad
+.RS 21n
+vi-change-line
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-t\fR\fR
+.ad
+.RS 21n
+forward-to-char
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-T\fR\fR
+.ad
+.RS 21n
+backward-to-char
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-u\fR\fR
+.ad
+.RS 21n
+vi-undo
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-w\fR\fR
+.ad
+.RS 21n
+forward-to-word
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-W\fR\fR
+.ad
+.RS 21n
+forward-to-word
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-x\fR\fR
+.ad
+.RS 21n
+forward-delete-char
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-X\fR\fR
+.ad
+.RS 21n
+backward-delete-char
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-yh\fR\fR
+.ad
+.RS 21n
+backward-copy-char
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-y^H\fR\fR
+.ad
+.RS 21n
+backward-copy-char
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-y^?\fR\fR
+.ad
+.RS 21n
+backward-copy-char
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-yl\fR\fR
+.ad
+.RS 21n
+forward-copy-char
+.RE
+
+.sp
+.ne 2
+.na
+\fBM-y<space>\fR
+.ad
+.RS 21n
+forward-copy-char (META-y-space)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-ye\fR\fR
+.ad
+.RS 21n
+forward-copy-word
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-yE\fR\fR
+.ad
+.RS 21n
+forward-copy-word
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-yw\fR\fR
+.ad
+.RS 21n
+forward-copy-word
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-yW\fR\fR
+.ad
+.RS 21n
+forward-copy-word
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-yb\fR\fR
+.ad
+.RS 21n
+backward-copy-word
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-yB\fR\fR
+.ad
+.RS 21n
+backward-copy-word
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-yf\fR\fR
+.ad
+.RS 21n
+forward-copy-find
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-yF\fR\fR
+.ad
+.RS 21n
+backward-copy-find
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-yt\fR\fR
+.ad
+.RS 21n
+forward-copy-to
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-yT\fR\fR
+.ad
+.RS 21n
+backward-copy-to
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-y;\fR\fR
+.ad
+.RS 21n
+copy-refind
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-y,\fR\fR
+.ad
+.RS 21n
+copy-invert-refind
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-y^\fR\fR
+.ad
+.RS 21n
+copy-to-bol
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-y0\fR\fR
+.ad
+.RS 21n
+copy-to-bol
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-y$\fR\fR
+.ad
+.RS 21n
+copy-rest-of-line
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-yy\fR\fR
+.ad
+.RS 21n
+copy-line
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-Y\fR\fR
+.ad
+.RS 21n
+copy-line
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-y|\fR\fR
+.ad
+.RS 21n
+copy-to-column
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-y%\fR\fR
+.ad
+.RS 21n
+copy-to-parenthesis
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-^E\fR\fR
+.ad
+.RS 21n
+emacs-mode
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-^H\fR\fR
+.ad
+.RS 21n
+cursor-left
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-^?\fR\fR
+.ad
+.RS 21n
+cursor-left
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-^L\fR\fR
+.ad
+.RS 21n
+clear-screen
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-^N\fR\fR
+.ad
+.RS 21n
+down-history
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-^P\fR\fR
+.ad
+.RS 21n
+up-history
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-^R\fR\fR
+.ad
+.RS 21n
+redisplay
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-^D\fR\fR
+.ad
+.RS 21n
+list-or-eof
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-^I\fR\fR
+.ad
+.RS 21n
+complete-word
+.RE
+
+.sp
+.ne 2
+.na
+\fBM-\er\fR
+.ad
+.RS 21n
+newline
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-\en\fR\fR
+.ad
+.RS 21n
+newline
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-^X^R\fR\fR
+.ad
+.RS 21n
+read-init-files
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-^Xh\fR\fR
+.ad
+.RS 21n
+list-history
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM-0, M-1, ... M-9\fR\fR
+.ad
+.RS 21n
+digit-argument (see below)
+.RE
+
+.sp
+.LP
+Note that \fB^I\fR is what the TAB key generates.
+.SS "Entering Repeat Counts"
+.LP
+Many of the key binding functions described previously, take an optional count,
+typed in before the target key sequence. This is interpreted as a repeat count
+by most bindings. A notable exception is the goto-column binding, which
+interprets the count as a column number.
+.sp
+.LP
+By default you can specify this count argument by pressing the META key while
+typing in the numeric count. This relies on the digit-argument action being
+bound to 'META-0', 'META-1' etc. Once any one of these bindings has been
+activated, you can optionally take your finger off the META key to type in the
+rest of the number, since every numeric digit thereafter is treated as part of
+the number, unless it is preceded by the literal-next binding. As soon as a
+non-digit, or literal digit key is pressed the repeat count is terminated and
+either causes the just typed character to be added to the line that many times,
+or causes the next key binding function to be given that argument.
+.sp
+.LP
+For example, in \fBemacs\fR mode, typing:
+.sp
+.in +2
+.nf
+M-12a
+.fi
+.in -2
+
+.sp
+.LP
+causes the letter 'a' to be added to the line 12 times, whereas
+.sp
+.in +2
+.nf
+M-4M-c
+.fi
+.in -2
+
+.sp
+.LP
+Capitalizes the next 4 words.
+.sp
+.LP
+In \fBvi\fR command mode the meta modifier is automatically added to all
+characters typed in, so to enter a count in \fBvi\fR command-mode, just
+involves typing in the number, just as it does in the \fBvi\fR editor itself.
+So for example, in vi command mode, typing:
+.sp
+.in +2
+.nf
+4w2x
+.fi
+.in -2
+
+.sp
+.LP
+moves the cursor four words to the right, then deletes two characters.
+.sp
+.LP
+You can also bind digit-argument to other key sequences. If these end in a
+numeric digit, that digit gets appended to the current repeat count. If it
+doesn't end in a numeric digit, a new repeat count is started with a value of
+zero, and can be completed by typing in the number, after letting go of the key
+which triggered the digit-argument action.
+.SH FILES
+.ne 2
+.na
+\fB\fB/usr/lib/libtecla.so\fR\fR
+.ad
+.RS 27n
+The tecla library
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/include/libtecla.h\fR\fR
+.ad
+.RS 27n
+The tecla header file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB~/.teclarc\fR\fR
+.ad
+.RS 27n
+The personal tecla customization file
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.LP
+.BR vi (1),
+.BR libtecla (3LIB),
+.BR cpl_complete_word (3TECLA),
+.BR ef_expand_file (3TECLA),
+.BR gl_get_line (3TECLA),
+.BR gl_io_mode (3TECLA),
+.BR pca_lookup_file (3TECLA),
+.BR attributes (7)
diff --git a/usr/src/man/man7/term.7 b/usr/src/man/man7/term.7
new file mode 100644
index 0000000000..f31af9d797
--- /dev/null
+++ b/usr/src/man/man7/term.7
@@ -0,0 +1,215 @@
+'\" te
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH TERM 7 "Jul 3, 1990"
+.SH NAME
+term \- conventional names for terminals
+.SH DESCRIPTION
+.sp
+.LP
+Terminal names are maintained as part of the shell environment in the
+environment variable \fB\fR\fBTERM\fR\fB\&. \fR See \fBsh\fR(1),
+\fBprofile\fR(5), and \fBenviron\fR(7). These names are used by certain
+commands (for example, \fBtabs\fR, \fBtput\fR, and \fBvi\fR) and certain
+functions (for example, see \fBcurses\fR(3CURSES)).
+.sp
+.LP
+Files under \fB/usr/share/lib/terminfo\fR are used to name terminals and
+describe their capabilities. These files are in the format described in
+\fBterminfo\fR(5). Entries in \fBterminfo\fR source files consist of a number
+of comma-separated fields. To print a description of a terminal \fIterm\fR,
+use the command \fBinfocmp\fR \fB-I\fR \fIterm\fR. See \fBinfocmp\fR(8).
+White space after each comma is ignored. The first line of each terminal
+description in the \fBterminfo\fR database gives the names by which
+\fBterminfo\fR knows the terminal, separated by bar (\fB|\fR) characters. The
+first name given is the most common abbreviation for the terminal (this is the
+one to use to set the environment variable \fBTERMINFO\fR in
+\fB$HOME/.profile\fR; see \fBprofile\fR(5)), the last name given should be a
+long name fully identifying the terminal, and all others are understood as
+synonyms for the terminal name. All names but the last should contain no blanks
+and must be unique in the first 14 characters; the last name may contain blanks
+for readability.
+.sp
+.LP
+Terminal names (except for the last, verbose entry) should be chosen using the
+following conventions. The particular piece of hardware making up the terminal
+should have a root name chosen, for example, for the AT&T 4425 terminal,
+\fBatt4425\fR. This name should not contain hyphens, except that synonyms may
+be chosen that do not conflict with other names. Up to 8 characters, chosen
+from the set \fBa\fR through \fBz\fR and \fB0\fR through \fB9\fR, make up a
+basic terminal name. Names should generally be based on original vendors rather
+than local distributors. A terminal acquired from one vendor should not have
+more than one distinct basic name. Terminal sub-models, operational modes that
+the hardware can be in, or user preferences should be indicated by appending a
+hyphen and an indicator of the mode. Thus, an AT&T 4425 terminal in 132 column
+mode is \fBatt4425\(miw\fR. The following suffixes should be used where
+possible:
+.sp
+
+.sp
+.TS
+l l l
+l l l .
+Suffix Meaning Example
+\(miw Wide mode (more than 80 columns) att4425\(miw
+\(miam With auto. margins (usually default) vt100\(miam
+\(minam Without automatic margins vt100\(minam
+\(mi\fIn\fR Number of lines on the screen aaa\(mi60
+\(mina No arrow keys (leave them in local) c100\(mina
+\(minp Number of pages of memory c100\(mi4p
+\(mirv Reverse video att4415\(mirv
+.TE
+
+.sp
+.LP
+To avoid conflicts with the naming conventions used in describing the different
+modes of a terminal (for example, \fB-w\fR), it is recommended that a
+terminal's root name not contain hyphens. Further, it is good practice to make
+all terminal names used in the \fBterminfo\fR(5) database unique. Terminal
+entries that are present only for inclusion in other entries via the \fBuse=\fR
+facilities should have a '\fB+\fR' in their name, as in \fB4415+nl\fR.
+.sp
+.LP
+Here are some of the known terminal names: (For a complete list, enter the
+command \fBls -C /usr/share/lib/terminfo/?\fR ).
+.sp
+
+.sp
+.TS
+l l
+l l .
+2621,hp2621 Hewlett-Packard 2621 series
+2631 Hewlett-Packard 2631 line printer
+2631\(mic T{
+Hewlett-Packard 2631 line printer, compressed mode
+T}
+2631\(mie T{
+Hewlett-Packard 2631 line printer, expanded mode
+T}
+2640,hp2640 Hewlett-Packard 2640 series
+2645,hp2645 Hewlett-Packard 2645 series
+3270 IBM Model 3270
+33,tty33 AT&T Teletype Model 33 KSR
+35,tty35 AT&T Teletype Model 35 KSR
+37,tty37 AT&T Teletype Model 37 KSR
+4000a Trendata 4000a
+4014,tek4014 TEKTRONIX 4014
+40,tty40 AT&T Teletype Dataspeed 40/2
+43,tty43 AT&T Teletype Model 43 KSR
+4410,5410 T{
+AT&T 4410/5410 in 80-column mode, version 2
+T}
+4410\(minfk,5410\(minfk T{
+AT&T 4410/5410 without function keys, version 1
+T}
+4410\(minsl,5410\(minsl AT&T 4410/5410 without pln defined
+4410\(miw,5410\(miw AT&T 4410/5410 in 132-column mode
+4410v1,5410v1 T{
+AT&T 4410/5410 in 80-column mode, version 1
+T}
+4410v1\(miw,5410v1\(miw T{
+AT&T 4410/5410 in 132-column mode, version 1
+T}
+4415,5420 AT&T 4415/5420 in 80-column mode
+4415\(minl,5420\(minl AT&T 4415/5420 without changing labels
+4415\(mirv,5420\(mirv T{
+AT&T 4415/5420 80 columns in reverse video
+T}
+4415\(mirv\(minl,5420\(mirv\(minl T{
+AT&T 4415/5420 reverse video without changing labels
+T}
+4415\(miw,5420\(miw AT&T 4415/5420 in 132-column mode
+4415\(miw\(minl,5420\(miw\(minl T{
+AT&T 4415/5420 in 132-column mode without changing labels
+T}
+4415\(miw\(mirv,5420\(miw\(mirv T{
+AT&T 4415/5420 132 columns in reverse video
+T}
+4418,5418 AT&T 5418 in 80-column mode
+4418\(miw,5418\(miw AT&T 5418 in 132-column mode
+4420 AT&T Teletype Model 4420
+4424 AT&T Teletype Model 4424
+4424-2 T{
+AT&T Teletype Model 4424 in display function group ii
+T}
+4425,5425 AT&T 4425/5425
+4425\(mifk,5425\(mifk AT&T 4425/5425 without function keys
+4425\(minl,5425\(minl T{
+AT&T 4425/5425 without changing labels in 80-column mode
+T}
+4425\(miw,5425\(miw AT&T 4425/5425 in 132-column mode
+4425\(miw\(mifk,5425\(miw\(mifk T{
+AT&T 4425/5425 without function keys in 132-column mode
+T}
+4425\(minl\(miw,5425\(minl\(miw T{
+AT&T 4425/5425 without changing labels in 132-column mode
+T}
+4426 AT&T Teletype Model 4426S
+450 DASI 450 (same as Diablo 1620)
+450\(mi12 DASI 450 in 12-pitch mode
+500,att500 AT&T-IS 500 terminal
+510,510a AT&T 510/510a in 80-column mode
+513bct,att513 AT&T 513 bct terminal
+5320 AT&T 5320 hardcopy terminal
+5420_2 AT&T 5420 model 2 in 80-column mode
+5420_2\(miw AT&T 5420 model 2 in 132-column mode
+5620,dmd AT&T 5620 terminal 88 columns
+5620\(mi24,dmd\(mi24 T{
+AT&T Teletype Model DMD 5620 in a 24x80 layer
+T}
+5620\(mi34,dmd\(mi34 T{
+AT&T Teletype Model DMD 5620 in a 34x80 layer
+T}
+610,610bct AT&T 610 bct terminal in 80-column mode
+610\(miw,610bct\(miw AT&T 610 bct terminal in 132-column mode
+630,630MTG AT&T 630 Multi-Tasking Graphics terminal
+7300,pc7300,unix_pc AT&T UNIX PC Model 7300
+735,ti Texas Instruments TI735 and TI725
+745 Texas Instruments TI745
+dumb T{
+generic name for terminals that lack reverse line-feed and other special escape sequences
+T}
+hp Hewlett-Packard (same as 2645)
+lp generic name for a line printer
+pt505 AT&T Personal Terminal 505 (22 lines)
+pt505\(mi24 T{
+AT&T Personal Terminal 505 (24-line mode)
+T}
+sync T{
+generic name for synchronous Teletype Model 4540-compatible terminals
+T}
+.TE
+
+.sp
+.LP
+Commands whose behavior depends on the type of terminal should accept arguments
+of the form \fB-T\fR\fIterm\fR where \fIterm\fR is one of the names given
+above; if no such argument is present, such commands should obtain the terminal
+type from the environment variable \fBTERM\fR, which, in turn, should contain
+\fIterm\fR.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/usr/share/lib/terminfo/?/*\fR\fR
+.ad
+.sp .6
+.RS 4n
+compiled terminal description database
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR sh (1),
+.BR stty (1),
+.BR tabs (1),
+.BR tput (1),
+.BR vi (1),
+.BR curses (3CURSES),
+.BR profile (5),
+.BR terminfo (5),
+.BR environ (7),
+.BR infocmp (8)
diff --git a/usr/src/man/man7/threads.7 b/usr/src/man/man7/threads.7
new file mode 100644
index 0000000000..8b6cd939b8
--- /dev/null
+++ b/usr/src/man/man7/threads.7
@@ -0,0 +1,502 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 2016 Joyent, Inc.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH THREADS 7 "Mar 27, 2016"
+.SH NAME
+threads, pthreads \- POSIX pthreads, c11, and illumos threads concepts
+.SH SYNOPSIS
+.SS "POSIX"
+.nf
+gcc -D_REENTRANT [ \fIflag\fR... ] \fIfile\fR... [ \fIlibrary\fR... ]
+.fi
+
+.LP
+.nf
+#include <pthread.h>
+.fi
+
+.SS "C11"
+.nf
+gcc -std=c11 -D_REENTRANT [ \fIflag\fR... ] \fIfile\fR... [ \fIlibrary\fR... ]
+.fi
+
+.LP
+.nf
+#include <threads.h>
+.fi
+
+.SS "illumos"
+.nf
+gcc -D_REENTRANT [ \fIflag\fR... ] \fIfile\fR... [ \fIlibrary\fR... ]
+.fi
+
+.LP
+.nf
+#include <sched.h>
+.fi
+
+.LP
+.nf
+#include <thread.h>
+.fi
+
+.SH DESCRIPTION
+A thread is an independent source of execution within a process. Every process
+is created with a single thread, which calls the
+.B main
+function. A process may have multiple threads, all of which are scheduled
+independently by the system and may run concurrently. Threads within a process
+all use the same address space and as a result can access all data in the
+process; however, each thread is created with its own attributes and its own
+stack. When a thread is created, it inherits the signal mask of the thread which
+created it, but it has no pending signals.
+.sp
+.LP
+All threads of execution have their own, independent life time, though it is
+ultimately bounded by the life time of the process. If the process terminates
+for any reason, whether due to a call to \fBexit\fR(3C), the receipt of a fatal
+signal, or some other reason, then all threads within the process are
+terminated. Threads may themselves exit and status information of them may be
+obtained, for more information, see the \fBpthread_detach\fR(3C),
+\fBpthread_join\fR(3C), and \fBpthread_exit\fR(3C) functions, and their
+equivalents as described in the tables later on in the manual.
+.sp
+.LP
+Most hardware platforms do not have any special synchronization for data objects
+which may be accessed concurrently from multiple threads of execution. To avoid
+such problems, programs may use atomic operations (see \fBatomic_ops\fR(3C)) and
+locking primitives, such as mutexes, readers/writer locks, condition variables,
+and semaphores. Note, that depending on the hardware platform, memory
+synchronization may be necessary, for more information, see \fBmembar_ops\fR(3C).
+.LP
+POSIX, C11, and illumos threads each have their own implementation within
+\fBlibc\fR(3LIB). All implementations are interoperable, their functionality
+similar, and can be used within the same application. Only POSIX threads are
+guaranteed to be fully portable to other POSIX-compliant environments. C11
+threads are an optional part of ISO C11 and may not exist on every ISO C11
+platform. POSIX, C11, and illumos threads require different source and include
+files. See \fBSYNOPSIS\fR.
+.SS "Similarities"
+Most of the POSIX and illumos threading functions have counterparts with each
+other. POSIX function names, with the exception of the semaphore names, have a
+"\fBpthread\fR" prefix. Function names for similar POSIX and illumos functions
+have similar endings. Typically, similar POSIX and illumos functions have the
+same number and use of arguments.
+.SS "Differences"
+POSIX pthreads and illumos threads differ in the following ways:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+POSIX threads are more portable.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+POSIX threads establish characteristics for each thread according to
+configurable attribute objects.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+POSIX pthreads implement thread cancellation.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+POSIX pthreads enforce scheduling algorithms.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+POSIX pthreads allow for clean-up handlers for \fBfork\fR(2) calls.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+illumos threads can be suspended and continued.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+illumos threads implement daemon threads, for whose demise the process does not
+wait.
+.RE
+.SS "Comparison to C11 Threads"
+C11 threads are not as functional as either POSIX or illumos threads. C11
+threads only support intra-process locking and do not have any form of
+readers/writer locking or semaphores. In general, POSIX threads will be more
+portable than C11 threads, all POSIX-compliant systems support pthreads;
+however, not all C environments support C11 Threads.
+.sp
+.LP
+In addition to lacking other common synchronization primitives, the ISO/IEC
+standard for C11 threads does not have rich error semantics. In an effort to not
+extend the set of error numbers standardized in ISO/IEC C11, none of the
+routines set errno and instead multiple distinguishable errors, aside from the
+equivalent to ENOMEM and EBUSY, are all squashed into one. As such, users of the
+platform are encouraged to use POSIX threads, unless a portability concern
+dictates otherwise.
+
+.SH FUNCTION COMPARISON
+The following table compares the POSIX pthreads, C11 threads, and illumos
+threads functions. When a comparable interface is not available either in POSIX
+pthreads, C11 threads or illumos threads, a hyphen (\fB-\fR) appears in the
+column.
+.SS "Functions Related to Creation"
+
+.TS
+l l l
+l l l .
+\fBPOSIX\fR \fBillumos\fR \fBC11\fR
+\fBpthread_create()\fR \fBthr_create()\fR \fBthrd_create()\fR
+\fBpthread_attr_init()\fR \fB-\fR \fB-\fR
+\fBpthread_attr_setdetachstate()\fR \fB-\fR \fB-\fR
+\fBpthread_attr_getdetachstate()\fR \fB-\fR \fB-\fR
+\fBpthread_attr_setinheritsched()\fR \fB-\fR \fB-\fR
+\fBpthread_attr_getinheritsched()\fR \fB-\fR \fB-\fR
+\fBpthread_attr_setschedparam()\fR \fB-\fR \fB-\fR
+\fBpthread_attr_getschedparam()\fR \fB-\fR \fB-\fR
+\fBpthread_attr_setschedpolicy()\fR \fB-\fR \fB-\fR
+\fBpthread_attr_getschedpolicy()\fR \fB-\fR \fB-\fR
+\fBpthread_attr_setscope()\fR \fB-\fR \fB-\fR
+\fBpthread_attr_getscope()\fR \fB-\fR \fB-\fR
+\fBpthread_attr_setstackaddr()\fR \fB-\fR \fB-\fR
+\fBpthread_attr_getstackaddr()\fR \fB-\fR \fB-\fR
+\fBpthread_attr_setstacksize()\fR \fB-\fR \fB-\fR
+\fBpthread_attr_getstacksize()\fR \fB-\fR \fB-\fR
+\fBpthread_attr_getguardsize()\fR \fB-\fR \fB-\fR
+\fBpthread_attr_setguardsize()\fR \fB-\fR \fB-\fR
+\fBpthread_attr_destroy()\fR \fB-\fR \fB-\fR
+\fB-\fR \fBthr_min_stack()\fR \fB-\fR
+.TE
+
+.SS "Functions Related to Exit"
+
+.TS
+l l l
+l l l .
+\fBPOSIX\fR \fBillumos\fR \fBC11\fR
+\fBpthread_exit()\fR \fBthr_exit()\fR \fBthrd_exit()\fR
+\fBpthread_join()\fR \fBthr_join()\fR \fBthrd_join()\fR
+\fBpthread_detach()\fR \fB-\fR \fBthrd_detach()\fR
+.TE
+
+.SS "Functions Related to Thread Specific Data"
+
+.TS
+l l l
+l l l .
+\fBPOSIX\fR \fBillumos\fR \fBC11\fR
+\fBpthread_key_create()\fR \fBthr_keycreate()\fR \fBtss_create()\fR
+\fBpthread_setspecific()\fR \fBthr_setspecific()\fR \fBtss_set()\fR
+\fBpthread_getspecific()\fR \fBthr_getspecific()\fR \fBtss_get()\fR
+\fBpthread_key_delete()\fR \fB-\fR \fBtss_delete()\fR
+.TE
+
+.SS "Functions Related to Signals"
+
+.TS
+l l l
+l l l .
+\fBPOSIX\fR \fBillumos\fR \fBC11\fR
+\fBpthread_sigmask()\fR \fBthr_sigsetmask()\fR \fB-\fR
+\fBpthread_kill()\fR \fBthr_kill()\fR \fB-\fR
+.TE
+
+.SS "Functions Related to IDs"
+
+.TS
+l l l
+l l l .
+\fBPOSIX\fR \fBillumos\fR \fBc11\fR
+\fBpthread_self()\fR \fBthr_self()\fR \fBthrd_current()\fR
+\fBpthread_equal()\fR \fB-\fR \fBthrd_equal()\fR
+\fB-\fR \fBthr_main()\fR \fB-\fR
+.TE
+
+.SS "Functions Related to Scheduling"
+
+.TS
+l l l
+l l l .
+\fBPOSIX\fR \fBillumos\fR \fBC11\fR
+\fB-\fR \fBthr_yield()\fR \fBthrd_yield()\fR
+\fB-\fR \fBthr_suspend()\fR \fB-\fR
+\fB-\fR \fBthr_continue()\fR \fB-\fR
+\fBpthread_setconcurrency()\fR \fBthr_setconcurrency()\fR \fB-\fR
+\fBpthread_getconcurrency()\fR \fBthr_getconcurrency()\fR \fB-\fR
+\fBpthread_setschedparam()\fR \fBthr_setprio()\fR \fB-\fR
+\fBpthread_setschedprio()\fR \fBthr_setprio()\fR \fB-\fR
+\fBpthread_getschedparam()\fR \fBthr_getprio()\fR \fB-\fR
+.TE
+
+.SS "Functions Related to Cancellation"
+
+.TS
+l l l
+l l l .
+\fBPOSIX\fR \fBillumos\fR \fBC11\fR
+\fBpthread_cancel()\fR \fB-\fR \fB-\fR
+\fBpthread_setcancelstate()\fR \fB-\fR \fB-\fR
+\fBpthread_setcanceltype()\fR \fB-\fR \fB-\fR
+\fBpthread_testcancel()\fR \fB-\fR \fB-\fR
+\fBpthread_cleanup_pop()\fR \fB-\fR \fB-\fR
+\fBpthread_cleanup_push()\fR \fB-\fR \fB-\fR
+.TE
+
+.SS "Functions Related to Mutexes"
+
+.TS
+l l l
+l l l .
+\fBPOSIX\fR \fBillumos\fR \fBc11\fR
+\fBpthread_mutex_init()\fR \fBmutex_init()\fR \fBmtx_init()\fR
+\fBpthread_mutexattr_init()\fR \fB-\fR \fB-\fR
+\fBpthread_mutexattr_setpshared()\fR \fB-\fR \fB-\fR
+\fBpthread_mutexattr_getpshared()\fR \fB-\fR \fB-\fR
+\fBpthread_mutexattr_setprotocol()\fR \fB-\fR \fB-\fR
+\fBpthread_mutexattr_getprotocol()\fR \fB-\fR \fB-\fR
+\fBpthread_mutexattr_setprioceiling()\fR \fB-\fR \fB-\fR
+\fBpthread_mutexattr_getprioceiling()\fR \fB-\fR \fB-\fR
+\fBpthread_mutexattr_settype()\fR \fB-\fR \fB-\fR
+\fBpthread_mutexattr_gettype()\fR \fB-\fR \fB-\fR
+\fBpthread_mutexattr_setrobust()\fR \fB-\fR \fB-\fR
+\fBpthread_mutexattr_getrobust()\fR \fB-\fR \fB-\fR
+\fBpthread_mutexattr_destroy()\fR \fB-\fR \fBmtx_destroy()\fR
+\fBpthread_mutex_setprioceiling()\fR \fB-\fR \fB-\fR
+\fBpthread_mutex_getprioceiling()\fR \fB-\fR \fB-\fR
+\fBpthread_mutex_lock()\fR \fBmutex_lock()\fR \fBmtx_lock()\fR
+\fBpthread_mutex_timedlock()\fR \fB-\fR \fBmtx_timedlock()\fR
+\fBpthread_mutex_trylock()\fR \fBmutex_trylock()\fR \fBmtx_trylock()\fR
+\fBpthread_mutex_unlock()\fR \fBmutex_unlock()\fR \fBmtx_unlock()\fR
+\fBpthread_mutex_destroy()\fR \fBmutex_destroy()\fR \fBmtx_destroy()\fR
+.TE
+
+.SS "Functions Related to Condition Variables"
+
+.TS
+l l l
+l l l .
+\fBPOSIX\fR \fBillumos\fR \fBC11\fR
+\fBpthread_cond_init()\fR \fBcond_init()\fR \fBcnd_init()\fR
+\fBpthread_condattr_init()\fR \fB-\fR \fB-\fR
+\fBpthread_condattr_setpshared()\fR \fB-\fR \fB-\fR
+\fBpthread_condattr_getpshared()\fR \fB-\fR \fB-\fR
+\fBpthread_condattr_destroy()\fR \fB-\fR \fB-\fR
+\fBpthread_cond_wait()\fR \fBcond_wait()\fR \fBcnd_wait()\fR
+\fBpthread_cond_timedwait()\fR \fBcond_timedwait()\fR \fBcond_timedwait()\fR
+\fBpthread_cond_signal()\fR \fBcond_signal()\fR \fBcnd_signal()\fR
+\fBpthread_cond_broadcast()\fR \fBcond_broadcast()\fR \fBcnd_broadcast()\fR
+\fBpthread_cond_destroy()\fR \fBcond_destroy()\fR \fBcnd_destroy()\fR
+.TE
+
+.SS "Functions Related to Reader/Writer Locking"
+
+.TS
+l l l
+l l l .
+\fBPOSIX\fR \fBillumos\fR \fBC11\fR
+\fBpthread_rwlock_init()\fR \fBrwlock_init()\fR \fB-\fR
+\fBpthread_rwlock_rdlock()\fR \fBrw_rdlock()\fR \fB-\fR
+\fBpthread_rwlock_tryrdlock()\fR \fBrw_tryrdlock()\fR \fB-\fR
+\fBpthread_rwlock_wrlock()\fR \fBrw_wrlock()\fR \fB-\fR
+\fBpthread_rwlock_trywrlock()\fR \fBrw_trywrlock()\fR \fB-\fR
+\fBpthread_rwlock_unlock()\fR \fBrw_unlock()\fR \fB-\fR
+\fBpthread_rwlock_destroy()\fR \fBrwlock_destroy()\fR \fB-\fR
+\fBpthread_rwlockattr_init()\fR \fB-\fR \fB-\fR
+\fBpthread_rwlockattr_destroy()\fR \fB-\fR \fB-\fR
+\fBpthread_rwlockattr_getpshared()\fR \fB-\fR \fB-\fR
+\fBpthread_rwlockattr_setpshared()\fR \fB-\fR \fB-\fR
+.TE
+
+.SS "Functions Related to Semaphores"
+
+.TS
+l l l
+l l l .
+\fBPOSIX\fR \fBillumos\fR \fBC11\fR
+\fBsem_init()\fR \fBsema_init()\fR \fB-\fR
+\fBsem_open()\fR \fB-\fR \fB-\fR
+\fBsem_close()\fR \fB-\fR \fB-\fR
+\fBsem_wait()\fR \fBsema_wait()\fR \fB-\fR
+\fBsem_trywait()\fR \fBsema_trywait()\fR \fB-\fR
+\fBsem_post()\fR \fBsema_post()\fR \fB-\fR
+\fBsem_getvalue()\fR \fB-\fR \fB-\fR
+\fBsem_unlink()\fR \fB-\fR \fB-\fR
+\fBsem_destroy()\fR \fBsema_destroy()\fR \fB-\fR
+.TE
+
+.SS "Functions Related to fork(\|) Clean Up"
+
+.TS
+l l l
+l l l .
+\fBPOSIX\fR \fBillumos\fR \fBC11\fR
+\fBpthread_atfork()\fR \fB-\fR \fB-\fR
+.TE
+
+.SS "Functions Related to Limits"
+
+.TS
+l l l
+l l l .
+\fBPOSIX\fR \fBillumos\fR \fBC11\fR
+\fBpthread_once()\fR \fB-\fR \fBcall_once()\fR
+.TE
+
+.SS "Functions Related to Debugging"
+
+.TS
+l l l
+l l l .
+\fBPOSIX\fR \fBillumos\fR \fBC11\fR
+\fB-\fR \fBthr_stksegment()\fR \fB-\fR
+.TE
+
+.SH LOCKING
+.SS "Synchronization"
+Multithreaded behavior is asynchronous, and therefore, optimized for
+concurrent and parallel processing. As threads, always from within the same
+process and sometimes from multiple processes, share global data with each
+other, they are not guaranteed exclusive access to the shared data at any point
+in time. Securing mutually exclusive access to shared data requires
+synchronization among the threads. Both POSIX and illumos implement four
+synchronization mechanisms: mutexes, condition variables, reader/writer locking
+(\fIoptimized frequent-read occasional-write mutex\fR), and semaphores, where as
+C11 threads only implement two mechanisms: mutexes and condition variables.
+.sp
+.LP
+Synchronizing multiple threads diminishes their concurrency. The coarser the
+grain of synchronization, that is, the larger the block of code that is locked,
+the lesser the concurrency.
+.SS "MT \fBfork()\fR"
+If a threads program calls \fBfork\fR(2), it implicitly calls \fBfork1\fR(2),
+which replicates only the calling thread. Should there be any outstanding
+mutexes throughout the process, the application should call
+\fBpthread_atfork\fR(3C) to wait for and acquire those mutexes prior to calling
+\fBfork()\fR.
+.SH SCHEDULING
+.SS "POSIX Threads"
+illumos supports the following three POSIX scheduling policies:
+.sp
+.ne 2
+.na
+\fB\fBSCHED_OTHER\fR\fR
+.ad
+.RS 15n
+Traditional Timesharing scheduling policy. It is based on the timesharing (TS)
+scheduling class.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSCHED_FIFO\fR\fR
+.ad
+.RS 15n
+First-In-First-Out scheduling policy. Threads scheduled to this policy, if not
+preempted by a higher priority, will proceed until completion. Such threads are
+in real-time (RT) scheduling class. The calling process must have a effective
+user \fBID\fR of \fB0\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSCHED_RR\fR\fR
+.ad
+.RS 15n
+Round-Robin scheduling policy. Threads scheduled to this policy, if not
+preempted by a higher priority, will execute for a time period determined by
+the system. Such threads are in real-time (RT) scheduling class and the calling
+process must have a effective user \fBID\fR of \fB0\fR.
+.RE
+
+.sp
+.LP
+In addition to the POSIX-specified scheduling policies above, illumos also
+supports these scheduling policies:
+.sp
+.ne 2
+.na
+\fB\fBSCHED_IA\fR\fR
+.ad
+.RS 13n
+Threads are scheduled according to the Inter-Active Class (IA) policy as
+described in \fBpriocntl\fR(2).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSCHED_FSS\fR\fR
+.ad
+.RS 13n
+Threads are scheduled according to the Fair-Share Class (FSS) policy as
+described in \fBpriocntl\fR(2).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSCHED_FX\fR\fR
+.ad
+.RS 13n
+Threads are scheduled according to the Fixed-Priority Class (FX) policy as
+described in \fBpriocntl\fR(2).
+.RE
+
+.SS "illumos Threads"
+Only scheduling policy supported is \fBSCHED_OTHER\fR, which is timesharing,
+based on the \fBTS\fR scheduling class.
+.SH ERRORS
+In a multithreaded application, \fBEINTR\fR can be returned from blocking
+system calls when another thread calls \fBforkall\fR(2).
+.SH USAGE
+.SS "\fB-mt\fR compiler option"
+The \fB-mt\fR compiler option compiles and links for multithreaded code. It
+compiles source files with \(mi\fBD_REENTRANT\fR and augments the set of
+support libraries properly.
+.sp
+.LP
+Users of other compilers such as gcc and clang should manually set
+\(mi\fBD_REENTRANT\fR on the compilation line. There are no other libraries or
+flags necessary.
+.SH ATTRIBUTES
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+MT-Level MT-Safe, Fork 1-Safe
+.TE
+
+.SH SEE ALSO
+.BR crle (1),
+.BR fork (2),
+.BR priocntl (2),
+.BR pthread_atfork (3C),
+.BR pthread_create (3C),
+.BR libpthread (3LIB),
+.BR librt (3LIB),
+.BR libthread (3LIB),
+.BR attributes (7),
+.BR standards (7)
+.sp
+.LP
+\fILinker and Libraries Guide\fR
diff --git a/usr/src/man/man7/timerfd.7 b/usr/src/man/man7/timerfd.7
new file mode 100644
index 0000000000..c6fd34e50d
--- /dev/null
+++ b/usr/src/man/man7/timerfd.7
@@ -0,0 +1,47 @@
+.\"
+.\" This file and its contents are supplied under the terms of the
+.\" Common Development and Distribution License ("CDDL"), version 1.0.
+.\" You may only use this file in accordance with the terms of version
+.\" 1.0 of the CDDL.
+.\"
+.\" A full copy of the text of the CDDL should have accompanied this
+.\" source. A copy of the CDDL is also available via the Internet at
+.\" http://www.illumos.org/license/CDDL.
+.\"
+.\"
+.\" Copyright (c) 2015, Joyent, Inc. All Rights Reserved.
+.\"
+.Dd Feb 23, 2015
+.Dt TIMERFD 7
+.Os
+.Sh NAME
+.Nm timerfd
+.Nd Linux-compatible timer notification facility
+.Sh SYNOPSIS
+.In sys/timerfd.h
+.Sh DESCRIPTION
+.Nm
+is a Linux-borne facility for creating POSIX timers and
+receiving their subsequent events via a file descriptor.
+The facility itself is arguably unnecessary:
+portable code can either use the timeout value present in
+.Xr poll 2 /
+.Xr port_get 3C
+or -- if this is deemed of unacceptably poor resolution -- create a POSIX timer
+via
+.Xr timer_create 3C
+and use the resulting signal to induce an
+.Sy EINTR
+to polling threads. (For code that need not be
+portable, the
+.Sy SIGEV_PORT
+signal notification allows for explicit, event-oriented timer notification to be
+sent to a specified port; see
+.Xr signal.h 3HEAD
+for details.) This facility therefore exists only to accommodate Linux-borne
+applications and binaries; it is compatible with its Linux antecedent in both
+binary interface and in semantics.
+.Sh SEE ALSO
+.Xr timerfd_create 3C ,
+.Xr timerfd_gettime 3C ,
+.Xr timerfd_settime 3C
diff --git a/usr/src/man/man7/trusted_extensions.7 b/usr/src/man/man7/trusted_extensions.7
new file mode 100644
index 0000000000..049004d1ce
--- /dev/null
+++ b/usr/src/man/man7/trusted_extensions.7
@@ -0,0 +1,42 @@
+'\" te
+.\" Copyright 2017 Peter Tribble
+.\" Copyright (c) 2007, Sun Microsystems Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH TRUSTED_EXTENSIONS 7 "Aug 3, 2017"
+.SH NAME
+trusted_extensions \- Trusted Extensions
+.SH DESCRIPTION
+.LP
+Trusted Extensions software is a specific configuration
+of the Operating System. Trusted Extensions
+provides labels for local objects and processes,
+for zones and file systems, and for network
+communications. These labels are used to implement a Multilevel Security (MLS)
+policy that restricts the flow of information based on label relationships. In
+contrast to Discretionary Access Control (DAC) based on ownership, the MLS
+policy enforced by Trusted Extensions is an example of Mandatory Access Control
+(MAC).
+.sp
+.LP
+By default, Trusted Extensions software is disabled. It is enabled and disabled
+(but not configured) by the \fBlabeld\fR(8) service, identified by the FMRI:
+.sp
+.in +2
+.nf
+svc:/system/labeld:default
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The system must be
+rebooted after enabling or disabling \fBlabeld\fR to activate or deactivate
+Trusted Extensions software.
+.SH SEE ALSO
+.LP
+.BR label_encodings (5),
+.BR labels (7),
+.BR labeld (8)
diff --git a/usr/src/man/man7/version.4th.7 b/usr/src/man/man7/version.4th.7
new file mode 100644
index 0000000000..cd234971cf
--- /dev/null
+++ b/usr/src/man/man7/version.4th.7
@@ -0,0 +1,115 @@
+.\" Copyright (c) 2011-2013 Devin Teske
+.\" All rights reserved.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\" notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\" notice, this list of conditions and the following disclaimer in the
+.\" documentation and/or other materials provided with the distribution.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+.\" SUCH DAMAGE.
+.\"
+.Dd July 20, 2018
+.Dt VERSION.4TH 7
+.Os
+.Sh NAME
+.Nm version.4th
+.Nd loader version string boot module
+.Sh DESCRIPTION
+The file that goes by the name of
+.Nm
+is a set of commands designed to draw the boot loader
+version at the bottom-right of the screen.
+The commands of
+.Nm
+by themselves are not enough for most uses.
+Please refer to the
+examples below for the most common situations, and to
+.Xr loader 7
+for additional commands.
+.Pp
+Before using any of the commands provided in
+.Nm ,
+it must be included
+through the command:
+.Pp
+.Dl include version.4th
+.Pp
+This line is present in the default
+.Pa /boot/forth/menu.rc
+file, so it is not needed (and should not be re-issued) in a normal setup.
+.Pp
+The commands provided by it are:
+.Pp
+.Bl -tag -width disable-module_module -compact -offset indent
+.It Ic print_version
+Prints the contents of the
+.Va loader_version
+environment variable right-justified at the column
+.Va loader_version_x
+and row
+.Va loader_version_y .
+.El
+.Pp
+The environment variables that effect its behavior are:
+.Bl -tag -width bootfile -offset indent
+.It Va loader_version
+Set automatically by
+.Xr loader 7 ,
+but you can override it by setting in
+.Xr loader.conf 5 .
+This should be the version of boot loader used.
+.It Va loader_version_x
+Sets the desired ending column position of
+.Va loader_version .
+Default is 80.
+.It Va loader_version_y
+Sets the desired ending row position of
+.Va loader_version .
+Default is 24.
+.It Va loader_color
+If set to
+.Dq Li NO
+(case-insensitive) or
+.Dq Li 0 ,
+causes the version to be printed without color
+.Pq default is ANSI Cyan .
+.El
+.Sh FILES
+.Bl -tag -width /boot/version.4th -compact
+.It Pa /boot/loader
+The
+.Xr loader 7 .
+.It Pa /boot/forth/version.4th
+.Nm
+itself.
+.It Pa /boot/loader.rc
+.Xr loader 7
+bootstrapping script.
+.El
+.Sh EXAMPLES
+Override
+.Xr loader 7
+version in
+.Xr loader.conf 5 :
+.Pp
+.Bd -literal -offset indent -compact
+loader_version="loader 1.1"
+.Ed
+.Sh SEE ALSO
+.Xr loader.conf 5 ,
+.Xr color.4th 7 ,
+.Xr loader 7
diff --git a/usr/src/man/man7/vgrindefs.7 b/usr/src/man/man7/vgrindefs.7
new file mode 100644
index 0000000000..4ec0ee9db7
--- /dev/null
+++ b/usr/src/man/man7/vgrindefs.7
@@ -0,0 +1,255 @@
+'\" te
+.\" Copyright (c) 1994, Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright (c) 1983 Regents of the University of California. All rights reserved. The Berkeley software License Agreement specifies the terms and conditions for redistribution.
+.TH VGRINDEFS 7 "Aug 10, 1994"
+.SH NAME
+vgrindefs \- vgrind's language definition data base
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/vgrindefs\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBvgrindefs\fR contains all language definitions for \fBvgrind\fR(1).
+Capabilities in \fBvgrindefs\fR are of two types: Boolean capabilities which
+indicate that the language has some particular feature and string capabilities
+which give a regular expression or keyword list. Entries may continue onto
+multiple lines by giving a \e as the last character of a line. Lines starting
+with # are comments.
+.SS "Capabilities"
+.sp
+.LP
+The following table names and describes each capability.
+.sp
+
+.sp
+.TS
+box;
+c | c | c
+l | l | l .
+Name Type Description
+_
+\fBab\fR \fBstr\fR T{
+Regular expression for the start of an alternate form comment
+T}
+_
+\fBae\fR \fBstr\fR T{
+Regular expression for the end of an alternate form comment
+T}
+_
+\fBbb\fR \fBstr\fR T{
+Regular expression for the start of a block
+T}
+_
+\fBbe\fR \fBstr\fR T{
+Regular expression for the end of a lexical block
+T}
+_
+\fBcb\fR \fBstr\fR T{
+Regular expression for the start of a comment
+T}
+_
+\fBce\fR \fBstr\fR T{
+Regular expression for the end of a comment
+T}
+_
+\fBid\fR \fBstr\fR T{
+String giving characters other than letters and digits that may legally occur in identifiers (default `_')
+T}
+_
+\fBkw\fR \fBstr\fR A list of keywords separated by spaces
+_
+\fBlb\fR \fBstr\fR T{
+Regular expression for the start of a character constant
+T}
+_
+\fBle\fR \fBstr\fR T{
+Regular expression for the end of a character constant
+T}
+_
+\fBoc\fR \fBbool\fR T{
+Present means upper and lower case are equivalent
+T}
+_
+\fBpb\fR \fBstr\fR T{
+Regular expression for start of a procedure
+T}
+_
+\fBpl\fR \fBbool\fR T{
+Procedure definitions are constrained to the lexical level matched by the `px' capability
+T}
+_
+\fBpx\fR \fBstr\fR T{
+A match for this regular expression indicates that procedure definitions may occur at the next lexical level. Useful for lisp-like languages in which procedure definitions occur as subexpressions of defuns.
+T}
+_
+\fBsb\fR \fBstr\fR T{
+Regular expression for the start of a string
+T}
+_
+\fBse\fR \fBstr\fR T{
+Regular expression for the end of a string
+T}
+_
+\fBtc\fR \fBstr\fR T{
+Use the named entry as a continuation of this one
+T}
+_
+\fBtl\fR \fBbool\fR T{
+Present means procedures are only defined at the top lexical level
+T}
+.TE
+
+.SS "Regular Expressions"
+.sp
+.LP
+\fBvgrindefs\fR uses regular expressions similar to those of \fBex\fR(1) and
+\fBlex\fR(1). The characters `^', `$', `:', and `\e' are reserved characters
+and must be `quoted' with a preceding \e if they are to be included as normal
+characters. The metasymbols and their meanings are:
+.sp
+.ne 2
+.na
+\fB\fB$\fR\fR
+.ad
+.RS 7n
+The end of a line
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB^\fR\fR
+.ad
+.RS 7n
+The beginning of a line
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\ed\fR\fR
+.ad
+.RS 7n
+A delimiter (space, tab, newline, start of line)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\ea\fR\fR
+.ad
+.RS 7n
+Matches any string of symbols (like `.*' in lex)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\ep\fR\fR
+.ad
+.RS 7n
+Matches any identifier. In a procedure definition (the `pb' capability) the
+string that matches this symbol is used as the procedure name.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB()\fR\fR
+.ad
+.RS 7n
+Grouping
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB|\fR\fR
+.ad
+.RS 7n
+Alternation
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB?\fR\fR
+.ad
+.RS 7n
+Last item is optional
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\ee\fR\fR
+.ad
+.RS 7n
+Preceding any string means that the string will not match an input string if
+the input string is preceded by an escape character (\e). This is typically
+used for languages (like C) that can include the string delimiter in a string
+by escaping it.
+.RE
+
+.sp
+.LP
+Unlike other regular expressions in the system, these match words and not
+characters. Hence something like `(tramp|steamer)flies?' would match `tramp',
+`steamer', `trampflies', or `steamerflies'. Contrary to some forms of regular
+expressions, \fBvgrindef\fR alternation binds very tightly. Grouping
+parentheses are likely to be necessary in expressions involving alternation.
+.SS "Keyword List"
+.sp
+.LP
+The keyword list is just a list of keywords in the language separated by
+spaces. If the `oc' boolean is specified, indicating that upper and lower case
+are equivalent, then all the keywords should be specified in lower case.
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRA sample program.
+.sp
+.LP
+The following entry, which describes the C language, is typical of a language
+entry.
+
+.sp
+.in +2
+.nf
+C|c|the C programming language:\e
+ :pb=^\ed?*?\ed?\ep\ed?(\ea?\e)(\ed|{):bb={:be=}:cb=/*:ce=*/:sb=":se=\ee":\e
+ :le=\ee':tl:\e
+ :kw=asm auto break case char continue default do double else enum\e
+ extern float for fortran goto if int long register return short\e
+ sizeof static struct switch typedef union unsigned void while #define\e
+ #else #endif #if #ifdef #ifndef #include #undef # define endif\e
+ ifdef ifndef include undef defined:
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Note that the first field is just the language name (and any variants of it).
+Thus the C language could be specified to \fBvgrind\fR(1) as `c' or `C'.
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/vgrindefs\fR\fR
+.ad
+.RS 22n
+file containing vgrind descriptions
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR ex (1),
+.BR lex (1),
+.BR troff (1),
+.BR vgrind (1)
diff --git a/usr/src/man/man7/zones.7 b/usr/src/man/man7/zones.7
new file mode 100644
index 0000000000..2151928b13
--- /dev/null
+++ b/usr/src/man/man7/zones.7
@@ -0,0 +1,257 @@
+'\" te
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.\"
+.\" Copyright 2020 Joyent, Inc.
+.TH ZONES 7 "May 23, 2021"
+.SH NAME
+zones \- Solaris application containers
+.SH DESCRIPTION
+The zones facility in Solaris provides an isolated environment for running
+applications. Processes running in a zone are prevented from monitoring or
+interfering with other activity in the system. Access to other processes,
+network interfaces, file systems, devices, and inter-process communication
+facilities are restricted to prevent interaction between processes in different
+zones.
+.sp
+.LP
+The privileges available within a zone are restricted to prevent operations
+with system-wide impact. See \fBprivileges\fR(7).
+.sp
+.LP
+You can configure and administer zones with the \fBzoneadm\fR(8) and
+\fBzonecfg\fR(8) utilities. You can specify the configuration details a zone,
+install file system contents including software packages into the zone, and
+manage the runtime state of the zone. You can use the \fBzlogin\fR(1) to run
+commands within an active zone. You can do this without logging in through a
+network-based login server such as \fBsshd\fR(8).
+.sp
+.LP
+The autobooting of zones is enabled and disabled by the zones service,
+identified by the FMRI:
+.sp
+.LP
+svc:/system/zones:default
+.sp
+.LP
+See \fBzoneadm\fR(8). Note that a zone has an \fBautoboot\fR property, which
+can be set to \fBtrue\fR (always autoboot). However, if the zones service is
+disabled, autoboot will not occur, regardless of the setting of the autoboot
+property for a given zone. See \fBzonecfg\fR(8).
+.sp
+.LP
+An alphanumeric name and numeric ID identify each active zone. Alphanumeric
+names are configured using the \fBzonecfg\fR(8) utility. Numeric IDs are
+automatically assigned when the zone is booted. The \fBzonename\fR(1) utility
+reports the current zone name, and the \fBzoneadm\fR(8) utility can be used to
+report the names and IDs of configured zones.
+.sp
+.LP
+A zone can be in one of several states:
+.sp
+.ne 2
+.na
+\fB\fBCONFIGURED\fR\fR
+.ad
+.RS 17n
+Indicates that the configuration for the zone has been completely specified and
+committed to stable storage.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBINCOMPLETE\fR\fR
+.ad
+.RS 17n
+Indicates that the zone is in the midst of being installed or uninstalled, or
+was interrupted in the midst of such a transition.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBINSTALLED\fR\fR
+.ad
+.RS 17n
+Indicates that the zone's configuration has been instantiated on the system:
+packages have been installed under the zone's root path.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBREADY\fR\fR
+.ad
+.RS 17n
+Indicates that the "virtual platform" for the zone has been established. For
+instance, file systems have been mounted, devices have been configured, but no
+processes associated with the zone have been started.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBRUNNING\fR\fR
+.ad
+.RS 17n
+Indicates that user processes associated with the zone application environment
+are running.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSHUTTING_DOWN\fR\fR
+.ad
+.br
+.na
+\fB\fBDOWN\fR\fR
+.ad
+.RS 17n
+Indicates that the zone is being halted. The zone can become stuck in one of
+these states if it is unable to tear down the application environment state
+(such as mounted file systems) or if some portion of the virtual platform
+cannot be destroyed. Such cases require operator intervention.
+.RE
+
+.SS "Process Access Restrictions"
+Processes running inside a zone (aside from the global zone) have restricted
+access to other processes. Only processes in the same zone are visible through
+\fB/proc\fR (see \fBproc\fR(5) or through system call interfaces that take
+process IDs such as \fBkill\fR(2) and \fBpriocntl\fR(2). Attempts to access
+processes that exist in other zones (including the global zone) fail with the
+same error code that would be issued if the specified process did not exist.
+.SS "Privilege Restrictions"
+Processes running within a non-global zone are restricted to a subset of
+privileges, in order to prevent one zone from being able to perform operations
+that might affect other zones. The set of privileges limits the capabilities of
+privileged users (such as the super-user or root user) within the zone. The
+list of privileges available within a zone can be displayed using the
+\fBppriv\fR(1) utility. For more information about privileges, see
+\fBprivileges\fR(7).
+.SS "Device Restrictions"
+The set of devices available within a zone is restricted, to prevent a process
+in one zone from interfering with processes in other zones. For example, a
+process in a zone should not be able to modify kernel memory using
+\fB/dev/kmem\fR, or modify the contents of the root disk. Thus, by default,
+only a few pseudo devices considered safe for use within a zone are available.
+Additional devices can be made available within specific zones using the
+\fBzonecfg\fR(8) utility.
+.sp
+.LP
+The device and privilege restrictions have a number of effects on the utilities
+that can run in a non-global zone. For example, the \fBeeprom\fR(8),
+\fBprtdiag\fR(8), and \fBprtconf\fR(8) utilities do not work in a zone since
+they rely on devices that are not normally available.
+.SS "Brands"
+A zone may be assigned a brand when it is initially created. A branded zone is
+one whose software does not match that software found in the global zone. The
+software may include Solaris software configured or laid out differently, or it
+may include non-Solaris software. The particular collection of software is
+called a "brand" (see \fBbrands\fR(7)). Once installed, a zone's brand may not
+be changed unless the zone is first uninstalled.
+.SS "File Systems"
+Each zone has its own section of the file system hierarchy, rooted at a
+directory known as the zone root. Processes inside the zone can access only
+files within that part of the hierarchy, that is, files that are located
+beneath the zone root. This prevents processes in one zone from corrupting or
+examining file system data associated with another zone. The \fBchroot\fR(8)
+utility can be used within a zone, but can only restrict the process to a root
+path accessible within the zone.
+.sp
+.LP
+In order to preserve file system space, sections of the file system can be
+mounted into one or more zones using the read-only option of the
+\fBlofs\fR(4FS) file system. This allows the same file system data to be shared
+in multiple zones, while preserving the security guarantees supplied by zones.
+.sp
+.LP
+NFS and autofs mounts established within a zone are local to that zone; they
+cannot be accessed from other zones, including the global zone. The mounts are
+removed when the zone is halted or rebooted.
+.sp
+.LP
+A zone can share filesystems using \fBnfs\fR(5) or \fBsmb\fR(5)
+subject to the restrictions earlier in this section, plus the additional
+restriction that file sharing can only be done from filesystems a zone
+completely controls. Some \fBbrands\fR(7) do not have the zone root set to a
+filesystem boundary. \fBsharefs\fR(4FS) can instantiate per-zone subject to
+the brand restrictions.
+.SS "Networking"
+A zone has its own port number space for \fBTCP\fR, \fBUDP\fR, and \fBSCTP\fR
+applications and typically one or more separate \fBIP\fR addresses (but some
+configurations of Trusted Extensions share IP address(es) between zones).
+.sp
+.LP
+For the \fBIP\fR layer (\fBIP\fR routing, \fBARP\fR, \fBIPsec\fR, \fBIP\fR
+Filter, and so on) a zone can either share the configuration and state with the
+global zone (a shared-\fBIP\fR zone), or have its distinct \fBIP\fR layer
+configuration and state (an exclusive-\fBIP\fR zone).
+.sp
+.LP
+If a zone is to be connected to the same datalink, that is, be on the same
+\fBIP\fR subnet or subnets as the global zone, then it is appropriate for the
+zone to use the shared \fBIP\fR instance.
+.sp
+.LP
+If a zone needs to be isolated at the \fBIP\fR layer on the network, for
+instance being connected to different \fBVLAN\fRs or different \fBLAN\fRs than
+the global zone and other non-global zones, then for isolation reasons the zone
+should have its exclusive \fBIP\fR.
+.sp
+.LP
+A shared-\fBIP\fR zone is prevented from doing certain things towards the
+network (such as changing its \fBIP\fR address or sending spoofed \fBIP\fR or
+Ethernet packets), but an exclusive-\fBIP\fR zone has more or less the same
+capabilities towards the network as a separate host that is connected to the
+same network interface. In particular, the superuser in such a zone can change
+its \fBIP\fR address and spoof \fBARP\fR packets.
+.sp
+.LP
+The shared-\fBIP\fR zones are assigned one or more network interface names and
+\fBIP\fR addresses in \fBzonecfg\fR(8). The network interface name(s) must
+also be configured in the global zone.
+.sp
+.LP
+The exclusive-\fBIP\fR zones are assigned one or more network interface names
+in \fBzonecfg\fR(8). The network interface names must be exclusively assigned
+to that zone, that is, it (or they) can not be assigned to some other running
+zone, nor can they be used by the global zone.
+.sp
+.LP
+The full \fBIP\fR-level functionality in the form of \fBDHCP\fR client,
+\fBIPsec\fR and \fBIP\fR Filter, is available in exclusive-\fBIP\fR zones and
+not in shared-\fBIP\fR zones.
+.SS "Host Identifiers"
+A zone is capable of emulating a 32-bit host identifier, which can be
+configured via \fBzonecfg\fR(8), for the purpose of system consolidation. If a
+zone emulates a host identifier, then commands such as \fBhostid\fR(1) and
+\fBsysdef\fR(8) as well as C interfaces such as \fBsysinfo\fR(2) and
+\fBgethostid\fR(3C) that are executed within the context of the zone will
+display or return the zone's emulated host identifier rather than the host
+machine's identifier.
+.SH SEE ALSO
+.BR hostid (1),
+.BR zlogin (1),
+.BR zonename (1),
+.BR kill (2),
+.BR priocntl (2),
+.BR sysinfo (2),
+.BR gethostid (3C),
+.BR getzoneid (3C),
+.BR ucred_get (3C),
+.BR sharefs (4FS),
+.BR nfs (5),
+.BR proc (5),
+.BR smb (5),
+.BR attributes (7),
+.BR brands (7),
+.BR privileges (7),
+.BR sshd (8),
+.BR sysdef (8),
+.BR zoneadm (8),
+.BR zonecfg (8),
+.BR crgetzoneid (9F)
diff --git a/usr/src/man/man7/zpool-features.7 b/usr/src/man/man7/zpool-features.7
new file mode 100644
index 0000000000..146bfc5262
--- /dev/null
+++ b/usr/src/man/man7/zpool-features.7
@@ -0,0 +1,835 @@
+'\" te
+.\" Copyright (c) 2013, 2017 by Delphix. All rights reserved.
+.\" Copyright (c) 2013 by Saso Kiselkov. All rights reserved.
+.\" Copyright (c) 2014, Joyent, Inc. All rights reserved.
+.\" Copyright (c) 2014 Integros [integros.com]
+.\" The contents of this file are subject to the terms of the Common Development
+.\" and Distribution License (the "License"). You may not use this file except
+.\" in compliance with the License. You can obtain a copy of the license at
+.\" usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\"
+.\" See the License for the specific language governing permissions and
+.\" limitations under the License. When distributing Covered Code, include this
+.\" CDDL HEADER in each file and include the License file at
+.\" usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this
+.\" CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your
+.\" own identifying information:
+.\" Portions Copyright [yyyy] [name of copyright owner]
+.TH ZPOOL-FEATURES 7 "May 15, 2019"
+.SH NAME
+zpool\-features \- ZFS pool feature descriptions
+.SH DESCRIPTION
+.LP
+ZFS pool on\-disk format versions are specified via "features" which replace
+the old on\-disk format numbers (the last supported on\-disk format number is
+28). To enable a feature on a pool use the \fBupgrade\fR subcommand of the
+\fBzpool\fR(8) command, or set the \fBfeature@\fR\fIfeature_name\fR property
+to \fBenabled\fR.
+.sp
+.LP
+The pool format does not affect file system version compatibility or the ability
+to send file systems between pools.
+.sp
+.LP
+Since most features can be enabled independently of each other the on\-disk
+format of the pool is specified by the set of all features marked as
+\fBactive\fR on the pool. If the pool was created by another software version
+this set may include unsupported features.
+.SS "Identifying features"
+.LP
+Every feature has a guid of the form \fIcom.example:feature_name\fR. The reverse
+DNS name ensures that the feature's guid is unique across all ZFS
+implementations. When unsupported features are encountered on a pool they will
+be identified by their guids. Refer to the documentation for the ZFS
+implementation that created the pool for information about those features.
+.sp
+.LP
+Each supported feature also has a short name. By convention a feature's short
+name is the portion of its guid which follows the ':' (e.g.
+\fIcom.example:feature_name\fR would have the short name \fIfeature_name\fR),
+however a feature's short name may differ across ZFS implementations if
+following the convention would result in name conflicts.
+.SS "Feature states"
+.LP
+Features can be in one of three states:
+.sp
+.ne 2
+.na
+\fB\fBactive\fR\fR
+.ad
+.RS 12n
+This feature's on\-disk format changes are in effect on the pool. Support for
+this feature is required to import the pool in read\-write mode. If this
+feature is not read-only compatible, support is also required to import the pool
+in read\-only mode (see "Read\-only compatibility").
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBenabled\fR\fR
+.ad
+.RS 12n
+An administrator has marked this feature as enabled on the pool, but the
+feature's on\-disk format changes have not been made yet. The pool can still be
+imported by software that does not support this feature, but changes may be made
+to the on\-disk format at any time which will move the feature to the
+\fBactive\fR state. Some features may support returning to the \fBenabled\fR
+state after becoming \fBactive\fR. See feature\-specific documentation for
+details.
+.RE
+
+.sp
+.ne 2
+.na
+\fBdisabled\fR
+.ad
+.RS 12n
+This feature's on\-disk format changes have not been made and will not be made
+unless an administrator moves the feature to the \fBenabled\fR state. Features
+cannot be disabled once they have been enabled.
+.RE
+
+.sp
+.LP
+The state of supported features is exposed through pool properties of the form
+\fIfeature@short_name\fR.
+.SS "Read\-only compatibility"
+.LP
+Some features may make on\-disk format changes that do not interfere with other
+software's ability to read from the pool. These features are referred to as
+"read\-only compatible". If all unsupported features on a pool are read\-only
+compatible, the pool can be imported in read\-only mode by setting the
+\fBreadonly\fR property during import (see \fBzpool\fR(8) for details on
+importing pools).
+.SS "Unsupported features"
+.LP
+For each unsupported feature enabled on an imported pool a pool property
+named \fIunsupported@feature_guid\fR will indicate why the import was allowed
+despite the unsupported feature. Possible values for this property are:
+
+.sp
+.ne 2
+.na
+\fB\fBinactive\fR\fR
+.ad
+.RS 12n
+The feature is in the \fBenabled\fR state and therefore the pool's on\-disk
+format is still compatible with software that does not support this feature.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBreadonly\fR\fR
+.ad
+.RS 12n
+The feature is read\-only compatible and the pool has been imported in
+read\-only mode.
+.RE
+
+.SS "Feature dependencies"
+.LP
+Some features depend on other features being enabled in order to function
+properly. Enabling a feature will automatically enable any features it
+depends on.
+.SH FEATURES
+.LP
+The following features are supported on this system:
+.sp
+.ne 2
+.na
+\fB\fBasync_destroy\fR\fR
+.ad
+.RS 4n
+.TS
+l l .
+GUID com.delphix:async_destroy
+READ\-ONLY COMPATIBLE yes
+DEPENDENCIES none
+.TE
+
+Destroying a file system requires traversing all of its data in order to
+return its used space to the pool. Without \fBasync_destroy\fR the file system
+is not fully removed until all space has been reclaimed. If the destroy
+operation is interrupted by a reboot or power outage the next attempt to open
+the pool will need to complete the destroy operation synchronously.
+
+When \fBasync_destroy\fR is enabled the file system's data will be reclaimed
+by a background process, allowing the destroy operation to complete without
+traversing the entire file system. The background process is able to resume
+interrupted destroys after the pool has been opened, eliminating the need
+to finish interrupted destroys as part of the open operation. The amount
+of space remaining to be reclaimed by the background process is available
+through the \fBfreeing\fR property.
+
+This feature is only \fBactive\fR while \fBfreeing\fR is non\-zero.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBempty_bpobj\fR\fR
+.ad
+.RS 4n
+.TS
+l l .
+GUID com.delphix:empty_bpobj
+READ\-ONLY COMPATIBLE yes
+DEPENDENCIES none
+.TE
+
+This feature increases the performance of creating and using a large
+number of snapshots of a single filesystem or volume, and also reduces
+the disk space required.
+
+When there are many snapshots, each snapshot uses many Block Pointer
+Objects (bpobj's) to track blocks associated with that snapshot.
+However, in common use cases, most of these bpobj's are empty. This
+feature allows us to create each bpobj on-demand, thus eliminating the
+empty bpobjs.
+
+This feature is \fBactive\fR while there are any filesystems, volumes,
+or snapshots which were created after enabling this feature.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfilesystem_limits\fR\fR
+.ad
+.RS 4n
+.TS
+l l .
+GUID com.joyent:filesystem_limits
+READ\-ONLY COMPATIBLE yes
+DEPENDENCIES extensible_dataset
+.TE
+
+This feature enables filesystem and snapshot limits. These limits can be used
+to control how many filesystems and/or snapshots can be created at the point in
+the tree on which the limits are set.
+
+This feature is \fBactive\fR once either of the limit properties has been
+set on a dataset. Once activated the feature is never deactivated.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBlz4_compress\fR\fR
+.ad
+.RS 4n
+.TS
+l l .
+GUID org.illumos:lz4_compress
+READ\-ONLY COMPATIBLE no
+DEPENDENCIES none
+.TE
+
+\fBlz4\fR is a high-performance real-time compression algorithm that
+features significantly faster compression and decompression as well as a
+higher compression ratio than the older \fBlzjb\fR compression.
+Typically, \fBlz4\fR compression is approximately 50% faster on
+compressible data and 200% faster on incompressible data than
+\fBlzjb\fR. It is also approximately 80% faster on decompression, while
+giving approximately 10% better compression ratio.
+
+When the \fBlz4_compress\fR feature is set to \fBenabled\fR, the
+administrator can turn on \fBlz4\fR compression on any dataset on the
+pool using the \fBzfs\fR(8) command. Also, all newly written metadata
+will be compressed with \fBlz4\fR algorithm. Since this feature is not
+read-only compatible, this operation will render the pool unimportable
+on systems without support for the \fBlz4_compress\fR feature. Booting
+off of \fBlz4\fR-compressed root pools is supported.
+
+This feature becomes \fBactive\fR as soon as it is enabled and will
+never return to being \fBenabled\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBspacemap_histogram\fR\fR
+.ad
+.RS 4n
+.TS
+l l .
+GUID com.delphix:spacemap_histogram
+READ\-ONLY COMPATIBLE yes
+DEPENDENCIES none
+.TE
+
+This features allows ZFS to maintain more information about how free space
+is organized within the pool. If this feature is \fBenabled\fR, ZFS will
+set this feature to \fBactive\fR when a new space map object is created or
+an existing space map is upgraded to the new format. Once the feature is
+\fBactive\fR, it will remain in that state until the pool is destroyed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmulti_vdev_crash_dump\fR\fR
+.ad
+.RS 4n
+.TS
+l l .
+GUID com.joyent:multi_vdev_crash_dump
+READ\-ONLY COMPATIBLE no
+DEPENDENCIES none
+.TE
+
+This feature allows a dump device to be configured with a pool comprised
+of multiple vdevs. Those vdevs may be arranged in any mirrored or raidz
+configuration.
+
+When the \fBmulti_vdev_crash_dump\fR feature is set to \fBenabled\fR,
+the administrator can use the \fBdumpadm\fR(8) command to configure a
+dump device on a pool comprised of multiple vdevs.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBextensible_dataset\fR\fR
+.ad
+.RS 4n
+.TS
+l l .
+GUID com.delphix:extensible_dataset
+READ\-ONLY COMPATIBLE no
+DEPENDENCIES none
+.TE
+
+This feature allows more flexible use of internal ZFS data structures,
+and exists for other features to depend on.
+
+This feature will be \fBactive\fR when the first dependent feature uses it,
+and will be returned to the \fBenabled\fR state when all datasets that use
+this feature are destroyed.
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBbookmarks\fR\fR
+.ad
+.RS 4n
+.TS
+l l .
+GUID com.delphix:bookmarks
+READ\-ONLY COMPATIBLE yes
+DEPENDENCIES extensible_dataset
+.TE
+
+This feature enables use of the \fBzfs bookmark\fR subcommand.
+
+This feature is \fBactive\fR while any bookmarks exist in the pool.
+All bookmarks in the pool can be listed by running
+\fBzfs list -t bookmark -r \fIpoolname\fR\fR.
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBenabled_txg\fR\fR
+.ad
+.RS 4n
+.TS
+l l .
+GUID com.delphix:enabled_txg
+READ\-ONLY COMPATIBLE yes
+DEPENDENCIES none
+.TE
+
+Once this feature is enabled ZFS records the transaction group number
+in which new features are enabled. This has no user-visible impact,
+but other features may depend on this feature.
+
+This feature becomes \fBactive\fR as soon as it is enabled and will
+never return to being \fBenabled\fR.
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBhole_birth\fR\fR
+.ad
+.RS 4n
+.TS
+l l .
+GUID com.delphix:hole_birth
+READ\-ONLY COMPATIBLE no
+DEPENDENCIES enabled_txg
+.TE
+
+This feature improves performance of incremental sends ("zfs send -i")
+and receives for objects with many holes. The most common case of
+hole-filled objects is zvols.
+
+An incremental send stream from snapshot \fBA\fR to snapshot \fBB\fR
+contains information about every block that changed between \fBA\fR and
+\fBB\fR. Blocks which did not change between those snapshots can be
+identified and omitted from the stream using a piece of metadata called
+the 'block birth time', but birth times are not recorded for holes (blocks
+filled only with zeroes). Since holes created after \fBA\fR cannot be
+distinguished from holes created before \fBA\fR, information about every
+hole in the entire filesystem or zvol is included in the send stream.
+
+For workloads where holes are rare this is not a problem. However, when
+incrementally replicating filesystems or zvols with many holes (for
+example a zvol formatted with another filesystem) a lot of time will
+be spent sending and receiving unnecessary information about holes that
+already exist on the receiving side.
+
+Once the \fBhole_birth\fR feature has been enabled the block birth times
+of all new holes will be recorded. Incremental sends between snapshots
+created after this feature is enabled will use this new metadata to avoid
+sending information about holes that already exist on the receiving side.
+
+This feature becomes \fBactive\fR as soon as it is enabled and will
+never return to being \fBenabled\fR.
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBembedded_data\fR\fR
+.ad
+.RS 4n
+.TS
+l l .
+GUID com.delphix:embedded_data
+READ\-ONLY COMPATIBLE no
+DEPENDENCIES none
+.TE
+
+This feature improves the performance and compression ratio of
+highly-compressible blocks. Blocks whose contents can compress to 112 bytes
+or smaller can take advantage of this feature.
+
+When this feature is enabled, the contents of highly-compressible blocks are
+stored in the block "pointer" itself (a misnomer in this case, as it contains
+the compresseed data, rather than a pointer to its location on disk). Thus
+the space of the block (one sector, typically 512 bytes or 4KB) is saved,
+and no additional i/o is needed to read and write the data block.
+
+This feature becomes \fBactive\fR as soon as it is enabled and will
+never return to being \fBenabled\fR.
+
+.RE
+.sp
+.ne 2
+.na
+\fB\fBdevice_removal\fR\fR
+.ad
+.RS 4n
+.TS
+l l .
+GUID com.delphix:device_removal
+READ\-ONLY COMPATIBLE no
+DEPENDENCIES none
+.TE
+
+This feature enables the "zpool remove" subcommand to remove top-level
+vdevs, evacuating them to reduce the total size of the pool.
+
+This feature becomes \fBactive\fR when the "zpool remove" command is used
+on a top-level vdev, and will never return to being \fBenabled\fR.
+
+.RE
+.sp
+.ne 2
+.na
+\fB\fBobsolete_counts\fR\fR
+.ad
+.RS 4n
+.TS
+l l .
+GUID com.delphix:obsolete_counts
+READ\-ONLY COMPATIBLE yes
+DEPENDENCIES device_removal
+.TE
+
+This feature is an enhancement of device_removal, which will over time
+reduce the memory used to track removed devices. When indirect blocks
+are freed or remapped, we note that their part of the indirect mapping
+is "obsolete", i.e. no longer needed. See also the \fBzfs remap\fR
+subcommand in \fBzfs\fR(8).
+
+This feature becomes \fBactive\fR when the "zpool remove" command is
+used on a top-level vdev, and will never return to being \fBenabled\fR.
+
+.RE
+.sp
+.ne 2
+.na
+\fB\fBzpool_checkpoint\fR\fR
+.ad
+.RS 4n
+.TS
+l l .
+GUID com.delphix:zpool_checkpoint
+READ\-ONLY COMPATIBLE yes
+DEPENDENCIES none
+.TE
+
+This feature enables the "zpool checkpoint" subcommand that can
+checkpoint the state of the pool at the time it was issued and later
+rewind back to it or discard it.
+
+This feature becomes \fBactive\fR when the "zpool checkpoint" command
+is used to checkpoint the pool.
+The feature will only return back to being \fBenabled\fR when the pool
+is rewound or the checkpoint has been discarded.
+
+.RE
+.sp
+.ne 2
+.na
+\fB\fBspacemap_v2\fR\fR
+.ad
+.RS 4n
+.TS
+l l .
+GUID com.delphix:spacemap_v2
+READ\-ONLY COMPATIBLE yes
+DEPENDENCIES none
+.TE
+
+This feature enables the use of the new space map encoding which
+consists of two words (instead of one) whenever it is advantageous.
+The new encoding allows space maps to represent large regions of
+space more efficiently on-disk while also increasing their maximum
+addressable offset.
+
+This feature becomes \fBactive\fR once it is \fBenabled\fR, and never
+returns back to being \fBenabled\fR.
+
+.RE
+.sp
+.ne 2
+.na
+\fB\fBlarge_blocks\fR\fR
+.ad
+.RS 4n
+.TS
+l l .
+GUID org.open-zfs:large_block
+READ\-ONLY COMPATIBLE no
+DEPENDENCIES extensible_dataset
+.TE
+
+The \fBlarge_block\fR feature allows the record size on a dataset to be
+set larger than 128KB.
+
+This feature becomes \fBactive\fR once a \fBrecordsize\fR property has been
+set larger than 128KB, and will return to being \fBenabled\fR once all
+filesystems that have ever had their recordsize larger than 128KB are destroyed.
+.RE
+
+.ne 2
+.na
+\fB\fBlarge_dnode\fR\fR
+.ad
+.RS 4n
+.TS
+l l .
+GUID org.zfsonlinux:large_dnode
+READ\-ONLY COMPATIBLE no
+DEPENDENCIES extensible_dataset
+.TE
+
+The \fBlarge_dnode\fR feature allows the size of dnodes in a dataset to be
+set larger than 512B.
+
+This feature becomes \fBactive\fR once a dataset contains an object with a
+dnode larger than 512B, which occurs as a result of setting the \fBdnodesize\fR
+dataset property to a value other than \fBlegacy\fR. The feature will return to
+being \fBenabled\fR once all filesystems that have ever contained a dnode larger
+than 512B are destroyed. Large dnodes allow more data to be stored in the
+bonus buffer, thus potentially improving performance by avoiding the use of
+spill blocks.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsha512\fR\fR
+.ad
+.RS 4n
+.TS
+l l .
+GUID org.illumos:sha512
+READ\-ONLY COMPATIBLE no
+DEPENDENCIES extensible_dataset
+.TE
+
+This feature enables the use of the SHA-512/256 truncated hash algorithm
+(FIPS 180-4) for checksum and dedup. The native 64-bit arithmetic of
+SHA-512 provides an approximate 50% performance boost over SHA-256 on
+64-bit hardware and is thus a good minimum-change replacement candidate
+for systems where hash performance is important, but these systems
+cannot for whatever reason utilize the faster \fBskein\fR and
+\fBedonr\fR algorithms.
+
+When the \fBsha512\fR feature is set to \fBenabled\fR, the administrator
+can turn on the \fBsha512\fR checksum on any dataset using the
+\fBzfs set checksum=sha512\fR command. This feature becomes
+\fBactive\fR once a \fBchecksum\fR property has been set to \fBsha512\fR,
+and will return to being \fBenabled\fR once all filesystems that have
+ever had their checksum set to \fBsha512\fR are destroyed.
+
+Booting off of pools utilizing SHA-512/256 is supported.
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBskein\fR\fR
+.ad
+.RS 4n
+.TS
+l l .
+GUID org.illumos:skein
+READ\-ONLY COMPATIBLE no
+DEPENDENCIES extensible_dataset
+.TE
+
+This feature enables the use of the Skein hash algorithm for checksum
+and dedup. Skein is a high-performance secure hash algorithm that was a
+finalist in the NIST SHA-3 competition. It provides a very high security
+margin and high performance on 64-bit hardware (80% faster than
+SHA-256). This implementation also utilizes the new salted checksumming
+functionality in ZFS, which means that the checksum is pre-seeded with a
+secret 256-bit random key (stored on the pool) before being fed the data
+block to be checksummed. Thus the produced checksums are unique to a
+given pool, preventing hash collision attacks on systems with dedup.
+
+When the \fBskein\fR feature is set to \fBenabled\fR, the administrator
+can turn on the \fBskein\fR checksum on any dataset using the
+\fBzfs set checksum=skein\fR command. This feature becomes
+\fBactive\fR once a \fBchecksum\fR property has been set to \fBskein\fR,
+and will return to being \fBenabled\fR once all filesystems that have
+ever had their checksum set to \fBskein\fR are destroyed.
+
+Booting off of pools using \fBskein\fR is supported.
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBbookmark_v2\fR\fR
+.ad
+.RS 4n
+.TS
+l l .
+GUID com.datto:bookmark_v2
+READ\-ONLY COMPATIBLE no
+DEPENDENCIES extensible_dataset
+.TE
+
+This feature enables the creation and management of larger bookmarks which are
+needed for other features in ZFS.
+
+This feature becomes \fBactive\fR when a v2 bookmark is created and will be
+returned to the \fBenabled\fR state when all v2 bookmarks are destroyed.
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBedonr\fR\fR
+.ad
+.RS 4n
+.TS
+l l .
+GUID org.illumos:edonr
+READ\-ONLY COMPATIBLE no
+DEPENDENCIES extensible_dataset
+.TE
+
+This feature enables the use of the Edon-R hash algorithm for checksum,
+including for nopwrite (if compression is also enabled, an overwrite of
+a block whose checksum matches the data being written will be ignored).
+In an abundance of caution, Edon-R can not be used with dedup
+(without verification).
+
+Edon-R is a very high-performance hash algorithm that was part
+of the NIST SHA-3 competition. It provides extremely high hash
+performance (over 350% faster than SHA-256), but was not selected
+because of its unsuitability as a general purpose secure hash algorithm.
+This implementation utilizes the new salted checksumming functionality
+in ZFS, which means that the checksum is pre-seeded with a secret
+256-bit random key (stored on the pool) before being fed the data block
+to be checksummed. Thus the produced checksums are unique to a given
+pool.
+
+When the \fBedonr\fR feature is set to \fBenabled\fR, the administrator
+can turn on the \fBedonr\fR checksum on any dataset using the
+\fBzfs set checksum=edonr\fR command. This feature becomes
+\fBactive\fR once a \fBchecksum\fR property has been set to \fBedonr\fR,
+and will return to being \fBenabled\fR once all filesystems that have
+ever had their checksum set to \fBedonr\fR are destroyed.
+
+Booting off of pools using \fBedonr\fR is supported.
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBallocation_classes\fR\fR
+.ad
+.RS 4n
+.TS
+l l .
+GUID com.intel:allocation_classes
+READ\-ONLY COMPATIBLE yes
+DEPENDENCIES none
+.TE
+
+This feature enables support for separate allocation classes.
+
+This feature becomes \fBactive\fR when a dedicated allocation class vdev
+(dedup or special) is created with zpool create or zpool add. With device
+removal, it can be returned to the \fBenabled\fR state if all the top-level
+vdevs from an allocation class are removed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBencryption\fR\fR
+.ad
+.RS 4n
+.TS
+l l .
+GUID com.datto:encryption
+READ\-ONLY COMPATIBLE no
+DEPENDENCIES extensible_dataset
+.TE
+
+This feature enables the creation and management of natively encrypted datasets.
+
+This feature becomes \fBactive\fR when an encrypted dataset is created
+and will be returned to the \fBenabled\fR state when all datasets that
+use this feature are destroyed.
+
+.RE
+.sp
+.ne 2
+.na
+\fB\fBresilver_defer\fR\fR
+.ad
+.RS 4n
+.TS
+l l .
+GUID com.datto:resilver_defer
+READ\-ONLY COMPATIBLE yes
+DEPENDENCIES none
+.TE
+
+This feature allows zfs to postpone new resilvers if an existing one is already
+in progress. Without this feature, any new resilvers will cause the currently
+running one to be immediately restarted from the beginning.
+
+This feature becomes \fBactive\fR once a resilver has been deferred, and
+returns to being \fBenabled\fR when the deferred resilver begins.
+.RE
+
+.sp
+.ne 2
+.na
+\fBuserobj_accounting\fR
+.ad
+.RS 4n
+.TS
+l l .
+GUID org.zfsonlinux:userobj_accounting
+READ\-ONLY COMPATIBLE yes
+DEPENDENCIES extensible_dataset
+.TE
+
+This feature allows administrators to account the object usage information
+by user and group.
+
+This feature becomes \fBactive\fR as soon as it is enabled and will never
+return to being \fBenabled\fR.
+Each filesystem will be upgraded automatically when remounted, or when new
+files are created under that filesystem.
+The upgrade can also be started manually on filesystems by running
+`zfs set version=current <pool/fs>`.
+The upgrade process runs in the background and may take a while to complete
+for filesystems containing a large number of files.
+.RE
+
+.sp
+.ne 2
+.na
+\fBproject_quota\fR
+.ad
+.RS 4n
+.TS
+l l .
+GUID org.zfsonlinux:project_quota
+READ\-ONLY COMPATIBLE yes
+DEPENDENCIES extensible_dataset
+.TE
+
+This feature allows administrators to account the space and object usage
+information against the project identifier (ID).
+
+The project ID is a new object-based attribute.
+When upgrading an existing filesystem, an object without a project ID
+attribute will be assigned a zero project ID.
+After this feature is enabled, a newly created object will inherit
+its parent directory's project ID if the parent's inherit flag is set (via
+\fBzfs project [-s|-C]\fR).
+Otherwise, the new object's project ID will be set as zero.
+An object's project ID can be changed at any time by the owner (or privileged
+user) via \fBzfs project -p $prjid\fR.
+
+This feature will become \fBactive\fR as soon as it is enabled and will never
+return to being \fBdisabled\fR.
+Each filesystem will be upgraded automatically when remounted or when a new file
+is created under that filesystem.
+The upgrade can also be triggered on filesystems via `zfs set version=current
+<pool/fs>`.
+The upgrade process runs in the background and may take a while to complete
+for the filesystems containing a large number of files.
+.RE
+
+.sp
+.ne 2
+.na
+\fBlog_spacemap\fR
+.ad
+.RS 4n
+.TS
+l l .
+GUID com.delphix:log_spacemap
+READ\-ONLY COMPATIBLE yes
+DEPENDENCIES com.delphix:spacemap_v2
+.TE
+
+This feature improves performance for heavily-fragmented pools,
+especially when workloads are heavy in random-writes.
+It does so by logging all the metaslab changes on a single spacemap every TXG
+instead of scattering multiple writes to all the metaslab spacemaps.
+
+This feature becomes \fBactive\fR as soon as it is enabled and will never
+return to being \fBenabled\fR.
+.RE
+
+.SH "SEE ALSO"
+.BR zfs (8),
+.BR zpool (8)
diff --git a/usr/src/man/man7d/Makefile b/usr/src/man/man7d/Makefile
deleted file mode 100644
index fe827d1053..0000000000
--- a/usr/src/man/man7d/Makefile
+++ /dev/null
@@ -1,300 +0,0 @@
-#
-# This file and its contents are supplied under the terms of the
-# Common Development and Distribution License ("CDDL"), version 1.0.
-# You may only use this file in accordance with the terms of version
-# 1.0 of the CDDL.
-#
-# A full copy of the text of the CDDL should have accompanied this
-# source. A copy of the CDDL is also available via the Internet
-# at http://www.illumos.org/license/CDDL.
-#
-
-#
-# Copyright 2011, Richard Lowe
-# Copyright 2016 Garrett D'Amore <garrett@damore.org>
-# Copyright 2019 Joyent, Inc.
-# Copyright 2016 Hans Rosenfeld <rosenfeld@grumpf.hope-2000.org>
-# Copyright 2018 Nexenta Systems, Inc.
-# Copyright 2020 Peter Tribble
-# Copyright 2022 Oxide Computer Company
-#
-
-include $(SRC)/Makefile.master
-
-MANSECT= 7d
-
-_MANFILES= aac.7d \
- afe.7d \
- audio.7d \
- audio1575.7d \
- audioens.7d \
- audiols.7d \
- audiop16x.7d \
- audiopci.7d \
- audiots.7d \
- av1394.7d \
- bge.7d \
- blkdev.7d \
- bnxe.7d \
- ccid.7d \
- chxge.7d \
- console.7d \
- cpuid.7d \
- dca.7d \
- dcam1394.7d \
- devinfo.7d \
- dmfe.7d \
- dtrace.7d \
- e1000g.7d \
- ehci.7d \
- ena.7d \
- fasttrap.7d \
- fbt.7d \
- fcip.7d \
- fcoe.7d \
- fcoei.7d \
- fcoet.7d \
- fcp.7d \
- fctl.7d \
- fd.7d \
- fp.7d \
- full.7d \
- gld.7d \
- hci1394.7d \
- hermon.7d \
- hid.7d \
- hme.7d \
- hubd.7d \
- hxge.7d \
- ib.7d \
- ibcm.7d \
- ibd.7d \
- ibdm.7d \
- ibdma.7d \
- ibtl.7d \
- ieee1394.7d \
- igb.7d \
- ipnet.7d \
- iscsi.7d \
- iser.7d \
- ixgbe.7d \
- kmdb.7d \
- kstat.7d \
- ksensor.7d \
- ksyms.7d \
- llc1.7d \
- lockstat.7d \
- lofi.7d \
- log.7d \
- mem.7d \
- mpt_sas.7d \
- mr_sas.7d \
- msglog.7d \
- mt.7d \
- mxfe.7d \
- myri10ge.7d \
- null.7d \
- nulldriver.7d \
- nxge.7d \
- ohci.7d \
- openprom.7d \
- pcic.7d \
- pcmcia.7d \
- physmem.7d \
- pm.7d \
- poll.7d \
- profile.7d \
- ptm.7d \
- pty.7d \
- qlc.7d \
- ramdisk.7d \
- random.7d \
- rge.7d \
- rtls.7d \
- sad.7d \
- sata.7d \
- scsa1394.7d \
- scsa2usb.7d \
- sd.7d \
- sdp.7d \
- sdt.7d \
- ses.7d \
- sfe.7d \
- sgen.7d \
- srpt.7d \
- st.7d \
- sysmsg.7d \
- systrace.7d \
- ticlts.7d \
- tty.7d \
- tzmon.7d \
- ufm.7d \
- ugen.7d \
- uhci.7d \
- usb_ac.7d \
- usb_as.7d \
- usb_ia.7d \
- usb_mid.7d \
- usba.7d \
- usbftdi.7d \
- usbprn.7d \
- usbsacm.7d \
- usbsksp.7d \
- usbsprl.7d \
- usbvc.7d \
- virtualkm.7d \
- vni.7d \
- vr.7d \
- vnd.7d \
- wscons.7d \
- xge.7d \
- yge.7d \
- zcons.7d \
- zero.7d \
- zfd.7d
-
-sparc_MANFILES= audiocs.7d \
- bbc_beep.7d \
- dad.7d \
- dm2s.7d \
- dr.7d \
- eri.7d \
- fas.7d \
- gpio_87317.7d \
- grbeep.7d \
- mc-opl.7d \
- n2rng.7d \
- ntwdt.7d \
- oplkmdrv.7d \
- oplmsu.7d \
- oplpanel.7d \
- pcicmu.7d \
- pcipsy.7d \
- pcisch.7d \
- sf.7d \
- smbus.7d \
- socal.7d \
- ssd.7d \
- su.7d \
- todopl.7d \
- tsalarm.7d \
- zs.7d \
- zsh.7d
-
-i386_MANFILES= ahci.7d \
- amd8111s.7d \
- amdnbtemp.7d \
- amdzen.7d \
- amr.7d \
- arcmsr.7d \
- arn.7d \
- asy.7d \
- ata.7d \
- atge.7d \
- ath.7d \
- atu.7d \
- audio810.7d \
- audiocmi.7d \
- audiocmihd.7d \
- audioemu10k.7d \
- audiohd.7d \
- audioixp.7d \
- audiosolo.7d \
- audiovia823x.7d \
- bcm_sata.7d \
- bfe.7d \
- cmdk.7d \
- coretemp.7d \
- cpqary3.7d \
- dnet.7d \
- ecpp.7d \
- elxl.7d \
- i40e.7d \
- imc.7d \
- imcstub.7d \
- ipmi.7d \
- iprb.7d \
- ipw.7d \
- iwh.7d \
- iwi.7d \
- iwn.7d \
- mega_sas.7d \
- mlxcx.7d \
- npe.7d \
- ntxn.7d \
- nv_sata.7d \
- nvme.7d \
- pchtemp.7d \
- pcn.7d \
- qede.7d \
- ral.7d \
- rtw.7d \
- rum.7d \
- rwd.7d \
- rwn.7d \
- sda.7d \
- sdhost.7d \
- sfxge.7d \
- si3124.7d \
- skd.7d \
- smbios.7d \
- smntemp.7d \
- uath.7d \
- ural.7d \
- urtw.7d \
- usmn.7d \
- vioblk.7d \
- vioif.7d \
- virtio.7d \
- wpi.7d \
- xhci.7d \
- zen_udf.7d \
- zyd.7d
-
-_MANLINKS= 1394.7d \
- allkmem.7d \
- fdc.7d \
- firewire.7d \
- kmem.7d \
- lo0.7d \
- pts.7d \
- ticots.7d \
- ticotsord.7d \
- urandom.7d \
- usb.7d
-
-sparc_MANLINKS= drmach.7d
-
-i386_MANLINKS= amdzen_stub.7d
-
-MANFILES = $(_MANFILES) $($(MACH)_MANFILES)
-MANLINKS = $(_MANLINKS) $($(MACH)_MANLINKS)
-
-amdzen_stub.7d := LINKSRC = amdzen.7d
-
-drmach.7d := LINKSRC = dr.7d
-
-fdc.7d := LINKSRC = fd.7d
-
-1394.7d := LINKSRC = ieee1394.7d
-firewire.7d := LINKSRC = ieee1394.7d
-
-lo0.7d := LINKSRC = ipnet.7d
-
-pts.7d := LINKSRC = ptm.7d
-
-allkmem.7d := LINKSRC = mem.7d
-kmem.7d := LINKSRC = mem.7d
-
-urandom.7d := LINKSRC = random.7d
-
-ticots.7d := LINKSRC = ticlts.7d
-ticotsord.7d := LINKSRC = ticlts.7d
-
-usb.7d := LINKSRC = usba.7d
-
-.KEEP_STATE:
-
-include $(SRC)/man/Makefile.man
-
-install: $(ROOTMANFILES) $(ROOTMANLINKS)
diff --git a/usr/src/man/man7d/aac.7d b/usr/src/man/man7d/aac.7d
deleted file mode 100644
index 15b896685d..0000000000
--- a/usr/src/man/man7d/aac.7d
+++ /dev/null
@@ -1,89 +0,0 @@
-'\" te
-.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH AAC 7D "Dec 27, 2007"
-.SH NAME
-aac \- SCSI HBA driver for Adaptec AdvancedRAID Controller
-.SH DESCRIPTION
-.sp
-.LP
-The \fBaac\fR plain SCSI host bus adapter driver is a SCSA-compliant nexus
-driver that supports the Adaptec 2200S/2120S SCSI RAID card, Dell PERC 3Di SCSI
-RAID controller, Dell PERC 3Si SCSI RAID controller, Adaptec 2820SA SATA
-RAID card, Adaptec 4800SAS, 4805SAS SAS RAID cards and SUN's STK RAID REM, STK
-RAID INT, and STK RAID EXT RAID cards.
-.sp
-.LP
-The \fBaac\fR driver is ported from FreeBSD and supports RAID disk I/O
-functions and the RAID management interface.
-.SH DRIVER CONFIGURATION
-.sp
-.LP
-There are no user configurable parameters available. Please configure your
-hardware through BIOS.
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for a description of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture T{
-x86, SPARC (Limited to systems with AAC hardware RAID cards.)
-T}
-.TE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/aac\fR\fR
-.ad
-.RS 27n
-32-bit ELF kernel module.
-.RE
-
-.sp
-.ne 2
-.na
-\fB/kernel/drv/amd64/aac\fR
-.ad
-.RS 27n
-64-bit ELF kernel module. (x86)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/sparcv9/aac\fR\fR
-.ad
-.RS 27n
-64-bit ELF kernel module. (SPARC)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/aac.conf\fR\fR
-.ad
-.RS 27n
-Configuration file. (Contains no user-configurable options).
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBprtconf\fR(1M), \fBattributes\fR(5), \fBscsi_hba_attach\fR(9F),
-\fBscsi_sync_pkt\fR(9F), \fBscsi_transport\fR(9F), \fBscsi_device\fR(9S),
-\fBscsi_inquiry\fR(9S), \fBscsi_pkt\fR(9S)
-.sp
-.LP
-\fISmall Computer System Interface-2 (SCSI-2)\fR
diff --git a/usr/src/man/man7d/afe.7d b/usr/src/man/man7d/afe.7d
deleted file mode 100644
index 3fb7991769..0000000000
--- a/usr/src/man/man7d/afe.7d
+++ /dev/null
@@ -1,67 +0,0 @@
-.\" Copyright 2014 Garrett D'Amore <garrett@damore.org>
-.\" Redistribution and use in source and binary forms, with or without
-.\" modification, are permitted provided that the following conditions
-.\" are met:
-.\" 1. Redistributions of source code must retain the above copyright
-.\" notice, this list of conditions and the following disclaimer.
-.\" 2. Redistributions in binary form must reproduce the above copyright
-.\" notice, this list of conditions and the following disclaimer in the
-.\" documentation and/or other materials provided with the distribution.
-.\"
-.\" THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER AND CONTRIBUTORS
-.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-.\" LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
-.\" FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
-.\" COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
-.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
-.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
-.\" USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
-.\" ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
-.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE
-.\"
-.Dd "Aug 3, 2014"
-.Dt AFE 7D
-.Os
-.Sh NAME
-.Nm afe
-.Nd ADMtek Fast Ethernet device driver
-.Sh SYNOPSIS
-.Pa /dev/afe
-.Sh DESCRIPTION
-The
-.Nm
-driver provides support for the Centaur and Comet families of Fast Ethernet
-PCI controllers originally produced by ADMtek and Infineon.
-.Lp
-These devices generally support the standard Fast Ethernet features, including
-10BASE-T and 100BASE-TX, both full and half duplex operation, IEEE 802.3
-autonegotiation, etc.
-They also support full size MTUs (1500 bytes), even when used with VLANs.
-Most of them also support flow control.
-.
-.Lp
-The device driver supports the
-.Xr ieee802.3 5
-properties, which can be configured with
-.Xr dladm 1M .
-.
-.\" The driver also has a "forcefiber" driver.conf setting, but this is for
-.\" very very obscure hardware, and we are not documenting this option
-.\" for now.
-.
-.Sh FILES
-.Bl -tag -width /dev/afe
-.It Pa /dev/afe
-Special character device.
-.El
-.Sh SEE ALSO
-.Xr dladm 1M ,
-.Xr ifconfig 1M ,
-.Xr pci 4 ,
-.Xr ieee802.3 5 ,
-.Xr dlpi 7P
-.Rs
-.%T IEEE 802.3: Ethernet
-.%Q IEEE Standards Association
-.Re
diff --git a/usr/src/man/man7d/ahci.7d b/usr/src/man/man7d/ahci.7d
deleted file mode 100644
index 914dbae098..0000000000
--- a/usr/src/man/man7d/ahci.7d
+++ /dev/null
@@ -1,92 +0,0 @@
-'\" te
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH AHCI 7D "Sep 10, 2009"
-.SH NAME
-ahci \- Advanced Host Controller Interface SATA controller driver
-.SH SYNOPSIS
-.LP
-.nf
-\fBsata@unit-address\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBahci\fR driver is a SATA framework-compliant HBA driver that supports
-SATA HBA controllers that are compatible with the \fIAdvanced Host Controller
-Interface 1.0\fR specification. AHCI is an Intel-developed protocol that
-describes the register-level interface for host controllers for serial ATA 1.0a
-and Serial ATA II. The \fIAHCI 1.0\fR specification describes the interface
-between the system software and the host controller hardware.
-.sp
-.LP
-The \fBahci\fR driver currently supports the Intel ICH6/7/8/9/10, VIA vt8251
-and JMicron AHCI controllers which are compliant with the Advanced Host
-Controller Interface 1.0 specification. The Intel ICH6/7/8/9 and VIA vt8251
-controllers support standard SATA features. The \fBahci\fR driver currently
-supports hard disk, ATAPI DVD, ATAPI tape, ATAPI disk (i.e. Dell RD1000),
-hotplug, NCQ (Native command queuing) and Port multipliers (Silicon Image
-3726/4726). Power management is not yet supported.
-.SH CONFIGURATION
-.sp
-.LP
-The \fBahci\fR module contains no user configurable parameters.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/ahci\fR\fR
-.ad
-.sp .6
-.RS 4n
-32-bit \fBELF\fR kernel module (x86).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/ahci\fR\fR
-.ad
-.sp .6
-.RS 4n
-64-bit \fBELF\fR kernel module (x86).
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attribute:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture x86
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBcfgadm\fR(1M), \fBcfgadm_sata\fR(1M), \fBprtconf\fR(1M), \fBsata\fR(7D)
-.sp
-.LP
-\fIAdvanced Host Controller Interface 1.0\fR
-.sp
-.LP
-\fIWriting Device Drivers\fR
-.SH NOTES
-.sp
-.LP
-To bind the \fBahci\fR driver to your controller, choose the [AHCI] BIOS
-option.
-.sp
-.LP
-Note that booting is not supported if toggle exists between the [IDE] and
-[AHCI] BIOS options
diff --git a/usr/src/man/man7d/amd8111s.7d b/usr/src/man/man7d/amd8111s.7d
deleted file mode 100644
index ce0600c117..0000000000
--- a/usr/src/man/man7d/amd8111s.7d
+++ /dev/null
@@ -1,112 +0,0 @@
-'\" te
-.\" Copyright (c) 2007 by Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH AMD8111S 7D "Jul 30, 2007"
-.SH NAME
-amd8111s \- AMD-8111 Fast Ethernet Network Adapter driver
-.SH SYNOPSIS
-.LP
-.nf
-/dev/amd8111s
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBamd8111s\fR Fast Ethernet driver is a multi-threaded, loadable,
-clonable, GLD-based STREAMS driver supporting the Data Link Provider
-Interface, \fBdlpi\fR(7P), on the AMD-8111 Fast Ethernet Network Adapter.
-.sp
-.LP
-The \fBamd8111s\fR driver functions include controller initialization, frame
-transmit and receive, promiscuous and multicast support, and error recovery and
-reporting.
-.SH APPLICATION PROGRAMMING INTERFACE
-.sp
-.LP
-The cloning, character-special device \fB/dev/amd8111\fR is used to access all
-AMD-8111 Fast Ethernet devices installed within the system.
-.sp
-.LP
-The \fBamd8111s\fR driver is managed by the \fBdladm\fR(1M) command line
-utility, which allows VLANs to be defined on top of amd8111s instances and for
-amd8111s instances to be aggregated. See \fBdladm\fR(1M) for more details.
-.SH CONFIGURATION
-.sp
-.LP
-By default, the \fBamd8111s\fR driver performs auto-negotiation to select the
-link speed and mode. Link speed and mode can be any of the following:
-.sp
-.LP
-100 Mbps, full-duplex.
-.sp
-.LP
-100 Mbps, half-duplex.
-.sp
-.LP
-10 Mbps, full-duplex.
-.sp
-.LP
-10 Mbps, half-duplex.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/dev/amd8111s*\fR \fR
-.ad
-.sp .6
-.RS 4n
-Special character device.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd8111s*\fR \fR
-.ad
-.sp .6
-.RS 4n
-32-bit ELF kernel module (x86).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/amd8111s*\fR \fR
-.ad
-.sp .6
-.RS 4n
-64-bit ELF Kernel module (x86).
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-l l
-l l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-Architecture x86
-Interface Stability Committed
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBdladm\fR(1M), \fBattributes\fR(5), \fBstreamio\fR(7I), \fBdlpi\fR(7P)
-.sp
-.LP
-\fIWriting Device Drivers\fR
-.sp
-.LP
-\fISTREAMS Programming Guide\fR
-.sp
-.LP
-\fINetwork Interfaces Programmer's Guide\fR
diff --git a/usr/src/man/man7d/amdnbtemp.7d b/usr/src/man/man7d/amdnbtemp.7d
deleted file mode 100644
index a086ebce99..0000000000
--- a/usr/src/man/man7d/amdnbtemp.7d
+++ /dev/null
@@ -1,78 +0,0 @@
-.\"
-.\" This file and its contents are supplied under the terms of the
-.\" Common Development and Distribution License ("CDDL"), version 1.0.
-.\" You may only use this file in accordance with the terms of version
-.\" 1.0 of the CDDL.
-.\"
-.\" A full copy of the text of the CDDL should have accompanied this
-.\" source. A copy of the CDDL is also available via the Internet at
-.\" http://www.illumos.org/license/CDDL.
-.\"
-.\"
-.\" Copyright 2019 Robert Mustacchi
-.\"
-.Dd December 24, 2019
-.Dt AMDNBTEMP 7D
-.Os
-.Sh NAME
-.Nm amdnbtemp
-.Nd AMD northbridge temperature sensor driver
-.Sh SYNOPSIS
-.Pa /dev/sensors/temperature/cpu/*
-.Sh DESCRIPTION
-The
-.Nm
-driver provides the system the ability to read the temperature sensor
-found in several AMD processors.
-This includes the K10 microarchitecture, and its derivatives, as well as
-the Bulldozer microarchitecture.
-The following AMD processors are supported:
-.Bl -dash
-.It
-AMD Family 10h Processors
-.Pq K10
-.It
-AMD Family 11h Processors
-.Pq Turion X2 Ultra
-.It
-AMD Family 12h Processors
-.Pq Llano APUs
-.It
-AMD Family 14h Processors
-.Pq Bobcat
-.It
-Family 15h models 0-fh, 10h-1fh, 30-3fh
-.Pq Bulldozer and Piledriver
-.It
-AMD Family 16h Processors
-.Pq Puma and Jaguar
-.El
-.Pp
-Some AMD Family 10h processors that utilize socket F and socket AM2 are
-subject to erratum 319 which indicates that the temperature sensor has
-an inaccurate measurement.
-If such a processor is detected, the system does not attach a
-temperature sensor to the device.
-.Pp
-AMD Family 15h models 60-7fh
-.Pq Steamroller and Excavator
-are not supported at this time.
-.Pp
-For AMD Family 17h
-.Pq Zen
-processors, the
-.Xr smntemp 7D
-driver provides access to the temperature sensors.
-.Sh SEE ALSO
-.Xr fmadm 1M ,
-.Xr smntemp 7D
-.Rs
-.%A AMD
-.%B BIOS and Kernel Developer’s Guide (BKDG) for AMD Family 16h Models 00h-0Fh Processors
-.%O 49125
-.Re
-.Rs
-.%A AMD
-.%B Revision Guide for AMD Family 10h Processors
-.%O 41322
-.Re
diff --git a/usr/src/man/man7d/amdzen.7d b/usr/src/man/man7d/amdzen.7d
deleted file mode 100644
index 919fba4e2a..0000000000
--- a/usr/src/man/man7d/amdzen.7d
+++ /dev/null
@@ -1,80 +0,0 @@
-.\"
-.\" This file and its contents are supplied under the terms of the
-.\" Common Development and Distribution License ("CDDL"), version 1.0.
-.\" You may only use this file in accordance with the terms of version
-.\" 1.0 of the CDDL.
-.\"
-.\" A full copy of the text of the CDDL should have accompanied this
-.\" source. A copy of the CDDL is also available via the Internet at
-.\" http://www.illumos.org/license/CDDL.
-.\"
-.\"
-.\" Copyright 2021 Oxide Computer Company
-.\"
-.Dd September 26, 2020
-.Dt AMDZEN 7D
-.Os
-.Sh NAME
-.Nm amdzen ,
-.Nm amdzen_stub
-.Nd AMD Zen Nexus Driver
-.Sh DESCRIPTION
-The
-.Nm
-driver provides access to the Northbridge, Data Fabric, and System
-Management Network
-.Pq SMN
-for a number of AMD processor lines, including AMD Ryzen CPUs and APUs,
-ThreadRipper CPUs, and EPYC CPUs from the following families:
-.Bl -bullet
-.It
-AMD Zen Naples, Summit Ridge, Whitehaven
-.Pq Family 17h
-.It
-AMD Zen+ Colfax, Picasso, and Pinnacle Ridge
-.Pq Family 17h
-.It
-AMD Zen 2 Castle Peak, Matisse, Rome, and Renoir
-.Pq Family 17h
-.It
-AMD Zen 3 Cezanne, Milan, and Vermeer
-.Pq Family 19h
-.El
-.Pp
-This driver is a nexus driver and facilitates access to the northbridge,
-data fabric, and SMN between various other devices such as
-.Xr smntemp 7D .
-The various processor devices that make up the northbridge and data
-fabric have the
-.Sy amdzen_stub
-driver attached to them.
-The different devices are all amalgamated and a single uniform view is
-provided by the
-.Sy amdzen
-driver.
-.Pp
-The
-.Nm
-driver is a nexus driver that has the following children:
-.Bl -tag -width "smntemp(7D)"
-.It Xr smntemp 7D
-Provides access to on-die temperature sensors.
-.It Xr usmn 7D
-Provides read access to the SMN.
-This driver is intended for development purposes.
-.It Xr zen_udf 7D
-Provides read access to the data fabric.
-This driver is intended for development purposes.
-.El
-.Sh ARCHITECTURE
-The
-.Sy amdzen
-and
-.Sy amdzen_stub
-drivers are limited to
-.Sy x86
-platforms with AMD Family 17h and 19h processors.
-.Sh SEE ALSO
-.Xr smntemp 7D ,
-.Xr usmn 7D ,
-.Xr zen_udf 7D
diff --git a/usr/src/man/man7d/amr.7d b/usr/src/man/man7d/amr.7d
deleted file mode 100644
index 2b58a19ec1..0000000000
--- a/usr/src/man/man7d/amr.7d
+++ /dev/null
@@ -1,76 +0,0 @@
-'\" te
-.\" Copyright (c) 2005, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH AMR 7D "Apr 20, 2005"
-.SH NAME
-amr \- SCSI HBA driver for Dell PERC 3/DC, 4/SC, 4/DC and 4/DI
-.SH DESCRIPTION
-.sp
-.LP
-The \fBamr\fR plain \fBSCSI\fR host bus adapter driver is a SCSA-compliant
-nexus driver that supports the Dell PERC 3DC/4SC/4DC/4Di RAID devices.
-.sp
-.LP
-The \fBamr\fR driver ports from FreeBSD and only supports basic RAID disk I/O
-functions.
-.SH DRIVER CONFIGURATION
-.sp
-.LP
-There are no user configurable parameters available. Please configure your
-hardware through BIOS.
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for a description of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture x86
-.TE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amr\fR\fR
-.ad
-.RS 25n
-32-bit ELF kernel module.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/amr\fR\fR
-.ad
-.RS 25n
-64-bit kernel module (x86 only).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amr.conf\fR\fR
-.ad
-.RS 25n
-Driver configuration file (contains no user-configurable options).
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBprtconf\fR(1M), \fBattributes\fR(5), \fBlsimega\fR(7D),
-\fBscsi_hba_attach_setup\fR(9F), \fBscsi_sync_pkt\fR(9F),
-\fBscsi_transport\fR(9F), \fBscsi_inquiry\fR(9S), \fBscsi_device\fR(9S),
-\fBscsi_pkt\fR(9S)
-.sp
-.LP
-\fISmall Computer System Interface-2 (SCSI-2)\fR
diff --git a/usr/src/man/man7d/arcmsr.7d b/usr/src/man/man7d/arcmsr.7d
deleted file mode 100644
index 32dea74672..0000000000
--- a/usr/src/man/man7d/arcmsr.7d
+++ /dev/null
@@ -1,114 +0,0 @@
-'\" te
-.\" Copyright 2011 Nexenta Systems, Inc. All rights reserved.
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH ARCMSR 7D "May 28, 2011"
-.SH NAME
-arcmsr \- SAS and SATA HBA driver for Areca Hardware Raid devices
-.SH DESCRIPTION
-.sp
-.LP
-The \fBarcmsr\fR host bus adapter driver is a SCSA-compliant nexus driver that
-supports Areca Technology SAS and SATA RAID devices.
-.sp
-.LP
-Supported SATA RAID cards:
-.sp
-.in +2
-.nf
-ARC-1110 pci17d3,1110
-ARC-1120 pci17d3,1120
-ARC-1130 pci17d3,1130
-ARC-1160 pci17d3,1160
-ARC-1170 pci17d3,1170
-ARC-1201 pci17d3,1201
-ARC-1210 pci17d3,1210
-ARC-1220 pci17d3,1220
-ARC-1230 pci17d3,1230
-ARC-1260 pci17d3,1260
-ARC-1270 pci17d3,1270
-ARC-1280 pci17d3,1280
-.fi
-.in -2
-
-.sp
-.LP
-Supported SAS RAID cards:
-.sp
-.in +2
-.nf
-ARC-1380 pci17d3,1380
-ARC-1381 pci17d3,1381
-ARC-1680 pci17d3,1680
-ARC-1681 pci17d3,1681
-ARC-1880 pci17d3,1880
-.fi
-.in -2
-
-.SH CONFIGURATION
-.sp
-.LP
-There are no user configurable parameters available. Please configure your
-hardware through the host system BIOS.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB/kernel/drv/arcmsr\fR
-.ad
-.RS 28n
-32-bit ELF kernel module.
-.RE
-
-.sp
-.ne 2
-.na
-\fB/kernel/drv/amd64/arcmsr\fR
-.ad
-.RS 28n
-64-bit kernel module (x64 only).
-.RE
-
-.sp
-.ne 2
-.na
-\fB/kernel/drv/arcmsr.conf\fR
-.ad
-.RS 28n
-Driver configuration file (contains no user-configurable options).
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for a description of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture x86
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBprtconf\fR(1M), \fBattributes\fR(5), \fBscsi_hba_attach_setup\fR(9F),
-\fBscsi_sync_pkt\fR(9F), \fBscsi_transport\fR(9F), \fBscsi_inquiry\fR(9S),
-\fBscsi_device\fR(9S), \fBscsi_pkt\fR(9S)
-.sp
-.LP
-\fISmall Computer System Interface-2 (SCSI-2)\fR
-.sp
-.LP
-\fIhttp://www.areca.com.tw/products/main.htm\fR
-.sp
-.LP
-\fIhttp://developer.intel.com/design/iio/index.htm\fR \(em(Intel Corp IO
-processors provide the underlying RAID engine for the supported devices).
diff --git a/usr/src/man/man7d/arn.7d b/usr/src/man/man7d/arn.7d
deleted file mode 100644
index fdf564d05f..0000000000
--- a/usr/src/man/man7d/arn.7d
+++ /dev/null
@@ -1,75 +0,0 @@
-'\" te
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH ARN 7D "Aug 24, 2009"
-.SH NAME
-arn \- Atheros AR9280/9281/9285 IEEE802.11 a/b/g/n wireless network device
-.SH DESCRIPTION
-.sp
-.LP
-The \fBarn\fR IEEE802.11 a/b/g/n wireless driver is a loadable, clonable,
-GLDv3-based STREAMS driver supporting Atheros AR9280/9281/9285 IEEE802.11
-a/b/g/n wireless network device.
-.SS "Configuration"
-.sp
-.LP
-The \fBarn\fR driver performs auto-negotiation to determine the data rate and
-mode. The driver supports only BSS networks (also known as \fBap\fR or
-\fBinfrastructure\fR networks) and \fBopen\fR(or \fBopen-system\fR) or
-\fBshared system\fR authentication. For wireless security, WEP encryption,
-WPA-PSK, and WPA2-PSK are currently supported. Configuration and administration
-tasks can be performed with the \fBdladm\fR(1M) and \fBwificonfig\fR(1M)
-utilities.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/dev/arn\fR\fR
-.ad
-.RS 25n
-Special character device
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/arn\fR\fR
-.ad
-.RS 25n
-32-bit ELF kernel module (x86)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/arn\fR\fR
-.ad
-.RS 25n
-64-bit ELF kernel driver module (x86)
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for a description of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-l | l
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture x86
-_
-Interface Stability Committed
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBdladm\fR(1M), \fBwificonfig\fR(1M), \fBattributes\fR(5), \fBdlpi\fR(7P),
-\fBgld\fR(7D)
diff --git a/usr/src/man/man7d/asy.7d b/usr/src/man/man7d/asy.7d
deleted file mode 100644
index 9de8a2f94d..0000000000
--- a/usr/src/man/man7d/asy.7d
+++ /dev/null
@@ -1,276 +0,0 @@
-'\" te
-.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH ASY 7D "Oct 9, 2004"
-.SH NAME
-asy \- asynchronous serial port driver
-.SH SYNOPSIS
-.LP
-.nf
-#include <fcntl.h>
-.fi
-
-.LP
-.nf
-#include <sys/termios.h>
-.fi
-
-.LP
-.nf
-open("/dev/term/\fIn\fR", \fImode\fR);
-.fi
-
-.LP
-.nf
-open("/dev/tty/\fIn\fR", \fImode\fR);
-.fi
-
-.LP
-.nf
-open("/dev/cua/\fIn\fR", \fImode\fR);
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBasy\fR module is a loadable STREAMS driver that provides basic support
-for Intel-8250, National Semiconductor-16450, 16550, and some 16650 and 16750
-and equivalent UARTs connected via the ISA-bus, in addition to basic
-asynchronous communication support. The \fBasy\fR module supports those
-\fBtermio\fR(7I) device control functions specified by flags in the
-\fBc_cflag\fR word of the \fBtermios\fR structure, and by the \fBIGNBRK,\fR
-\fBIGNPAR,\fR \fBPARMRK\fR, \fBINPCK\fR, \fBIXON\fR, \fBIXANY\fR, or
-\fBIXOFF\fR flags in the c_iflag word of the termios structure. All other
-\fBtermio\fR(7I) functions must be performed by \fBSTREAMS\fR modules pushed
-atop the driver. When a device is opened, the \fBldterm\fR(7M) and
-\fBttcompat\fR(7M) \fBSTREAMS\fR modules are automatically pushed on top of the
-stream, providing the standard \fBtermio\fR(7I) interface.
-.sp
-.LP
-The character-special devices \fB/dev/term/a\fR, \fB/dev/term/b\fR,
-\fB/dev/term/c\fR and \fB/dev/term/d\fR are used to access the four standard
-serial ports (COM1, COM2, COM3 and COM4 at I/O addresses 3f8, 2f8, 3e8 and 2e8
-respectively). Serial ports on non-standard ISA-bus I/O addresses are accessed
-via the character-special devices \fB/dev/term/0\fR, \fB/dev/term/1\fR, etc.
-Device names are typically used to provide a logical access point for a dial-in
-line that is used with a modem.
-.sp
-.LP
-To allow a single tty line to be connected to a modem and used for incoming and
-outgoing calls, a special feature is available that is controlled by the minor
-device number. By accessing character-special devices with names of the form
-\fB/dev/cua/\fR\fIn, \fR it is possible to open a port without the \fBCarrier
-Detect\fR signal being asserted, either through hardware or an equivalent
-software mechanism. These devices are commonly known as dial-out lines.
-.LP
-Note -
-.sp
-.RS 2
-This module is affected by the setting of certain eeprom variables,
-ttya-ignore-cd and ttya-rts-dtr-off (and similarly for ttyb-, ttyc-, and ttyd-
-parameters). For information on these parameters, see the \fBeeprom\fR(1M) man
-page.
-.RE
-.LP
-Note -
-.sp
-.RS 2
-For serial ports on the standard COM1 to COM4 I/O addresses above, the default
-setting for ttya-ignore-cd and ttya-rts-dtr-off is true. If any of these ports
-are connected to a modem, these settings should be changed to false. For serial
-ports on non-standard I/O addresses, the default setting for ttya-ignore-cd and
-ttya-rts-dtr-off is false.
-.RE
-.SH APPLICATION PROGRAMMING INTERFACE
-.sp
-.LP
-Once a \fB/dev/cua/\fR\fIn\fR line is opened, the corresponding tty line cannot
-be opened until the \fB/dev/cua/\fR\fIn\fR line is closed. A blocking open will
-wait until the \fB/dev/cua/\fR\fIn\fR line is closed (which will drop \fBData
-Terminal Ready\fR, after which \fBCarrier Detect\fR will usually drop as well)
-and carrier is detected again. A non-blocking open will return an error. If the
-\fB/dev/ttyd\fR\fIn\fR line has been opened successfully (usually only when
-carrier is recognized on the modem), the corresponding \fB/dev/cua/\fR\fIn\fR
-line cannot be opened. This allows a modem to be attached to
-\fB/dev/term/\fR[\fIn\fR] (renamed from \fB/dev/tty\fR[\fIn\fR]) and used for
-dial-in (by enabling the line for login in \fB/etc/inittab\fR) or dial-out (by
-\fBtip\fR(1) or \fBuucp\fR(1C)) as \fB/dev/cua/\fR\fIn\fR when no one is logged
-in on the line.
-.SH IOCTLS
-.sp
-.LP
-The standard set of \fBtermio\fR \fBioctl()\fR calls are supported by
-\fBasy\fR.
-.sp
-.LP
-Breaks can be generated by the \fBTCSBRK,\fR \fBTIOCSBRK,\fR and \fBTIOCCBRK\fR
-\fBioctl()\fR calls.
-.sp
-.LP
-The input and output line speeds may be set to any speed that is supported by
-\fBtermio\fR. The speeds cannot be set independently; for example, when the
-output speed is set, the input speed is automatically set to the same speed.
-.sp
-.LP
-When the \fBasy\fR module is used to service the serial console port, it
-supports a BREAK condition that allows the system to enter the debugger or the
-monitor. The BREAK condition is generated by hardware and it is usually enabled
-by default.
-.sp
-.LP
-A BREAK condition originating from erroneous electrical signals cannot be
-distinguished from one deliberately sent by remote DCE. The Alternate Break
-sequence can be used as a remedy against this. Due to a risk of incorrect
-sequence interpretation, SLIP and certain other binary protocols should not be
-run over the serial console port when Alternate Break sequence is in effect.
-Although PPP is a binary protocol, it is able to avoid these sequences using
-the ACCM feature in \fIRFC 1662\fR. For Solaris PPP 4.0, you do this by adding
-the following line to the \fB/etc/ppp/options\fR file (or other configuration
-files used for the connection; see \fBpppd\fR(1M) for details):
-.sp
-.in +2
-.nf
-asyncmap 0x00002000
-.fi
-.in -2
-
-.sp
-.LP
-By default, the Alternate Break sequence is a three character sequence:
-carriage return, tilde and control-B (CR ~ CTRL-B), but may be changed by the
-driver. For more information on breaking (entering the debugger or monitor),
-see \fBkbd\fR(1) and \fBkb\fR(7M).
-.SH ERRORS
-.sp
-.LP
-An \fBopen()\fR will fail under the following conditions:
-.sp
-.ne 2
-.na
-\fB\fBENXIO\fR\fR
-.ad
-.RS 9n
-The unit being opened does not exist.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEBUSY\fR\fR
-.ad
-.RS 9n
-The dial-out device is being opened while the dial-in device is already open,
-or the dial-in device is being opened with a no-delay open and the dial-out
-device is already open.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEBUSY\fR\fR
-.ad
-.RS 9n
-The unit has been marked as exclusive-use by another process with a
-\fBTIOCEXCL\fR \fBioctl()\fR call.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEINTR\fR\fR
-.ad
-.RS 9n
-The open was interrupted by the delivery of a signal.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/dev/term/\fR[\fIa-d\fR]\fR
-.ad
-.br
-.na
-\fB\fB/dev/term/\fR[\fI012...\fR]\fR
-.ad
-.RS 25n
-dial-in tty lines
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/cua/\fR[\fIa-d\fR]\fR
-.ad
-.br
-.na
-\fB\fB/dev/cua/\fR[\fI012...\fR]\fR
-.ad
-.RS 25n
- dial-out tty lines
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/asy\fR\fR
-.ad
-.RS 25n
-64-bit kernel module for 64-bit x86 platform
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/asy.conf\fR\fR
-.ad
-.RS 25n
-\fBasy\fR configuration file
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture x86
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBtip\fR(1), \fBkbd\fR(1), \fBuucp\fR(1C), \fBeeprom\fR(1M), \fBpppd\fR(1M),
-\fBioctl\fR(2), \fBopen\fR(2), \fBtermios\fR(3C), \fBattributes\fR(5),
-\fBldterm\fR(7M), \fBttcompat\fR(7M), \fBkb\fR(7M), \fBtermio\fR(7I)
-.SH DIAGNOSTICS
-.sp
-.ne 2
-.na
-\fB\fBasy\fR\fIn\fR\fB\|: silo overflow.\fR\fR
-.ad
-.sp .6
-.RS 4n
-The hardware overrun occurred before the input character could be serviced.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBasy\fR\fIn\fR\fB\|: ring buffer overflow.\fR\fR
-.ad
-.sp .6
-.RS 4n
-The driver's character input ring buffer overflowed before it could be
-serviced.
-.RE
-
diff --git a/usr/src/man/man7d/ata.7d b/usr/src/man/man7d/ata.7d
deleted file mode 100644
index 9a08b674bf..0000000000
--- a/usr/src/man/man7d/ata.7d
+++ /dev/null
@@ -1,384 +0,0 @@
-'\" te
-.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH ATA 7D "Aug 18, 2016"
-.SH NAME
-ata \- AT attachment disk driver
-.SH SYNOPSIS
-.LP
-.nf
-\fBide@unit-\fR\fIaddress\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBata\fR driver supports disk and ATAPI CD/DVD devices conforming to the
-AT Attachment specification including IDE interfaces. Support is provided for
-both parallel ATA (PATA) and serial ATA (SATA) interfaces.
-.sp
-.LP
-Refer to the \fISolaris x86 Hardware Compatibility List\fR for a list of
-supported controllers.
-.SH PRECONFIGURE
-.LP
-A PCI IDE controller can operate in compatibility mode or in PCI-native mode.
-If more than one controller is present in the system, only one can operate in
-compatibility mode.
-.sp
-.LP
-If two PATA drives share the same controller, you must set one to master and
-the other to slave. If both a PATA disk drive and a PATA CD-ROM drive utilize
-the same controller, you can designate the disk drive as the master with the
-CD-ROM drive as the slave, although this is not mandatory.
-.SS "Supported Settings"
-.LP
-Supported settings for the primary controller when in compatibility mode are:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-IRQ Level: 14
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-I/O Address: 0x1F0
-.RE
-.sp
-.LP
-Supported settings for the secondary controller when in compatibility mode are:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-IRQ Level: 15
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-I/O Address: 0x170
-.RE
-.LP
-Note -
-.sp
-.RS 2
-When in PCI-native mode, the IRQ and I/O address resources are configured by
-the system BIOS.
-.RE
-.SS "Known Problems and Limitations"
-.RS +4
-.TP
-.ie t \(bu
-.el o
-This driver does not support any RAID features present on a PATA/SATA
-controller. As a result, you should configure BIOS to select IDE mode rather
-than RAID mode. Some systems may require updating BIOS to allow switching
-modes.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-On some systems, the SATA controller must have option ROM enabled or BIOS will
-not consider SATA drives as bootable devices.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Panasonic LK-MC579B and the Mitsumi FX34005 IDE CD-ROM drives are not supported
-and cannot be used to install the Solaris operating environment.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-CMD-604 is unable to handle simultaneous I/O on both IDE interfaces. This
-defect causes the Solaris software to hang if both interfaces are used. Use
-only the primary IDE interface at address 0x1F0.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-NEC CDR-260/CDR-260R/CDR-273 and Sony CDU-55E ATAPI CD-ROM drives might fail
-during installation.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Sony CDU-701 CD-ROM drives must be upgraded to use firmware version 1.0r or
-later to support booting from the CD.
-.sp
-A Compact Flash(CF) card can work as an ATA disk through a CF-to-ATA adapter.
-If both card and adapter implement Compact Flash Version 2.0, DMA is supported.
-If either of them does not, you should set ata-disk-dma-enabled to '0.'
-.RE
-.SH CONFIGURATION
-.LP
-The ata driver properties are usually set in \fBata.conf\fR. However, it may be
-convenient, or in some cases necessary, for you to set some of the DMA related
-properties as a system global boot environment property. You set or modify
-properties in the boot environment immediately prior to booting the illumos
-kernel using the boot loader command line. You can also set
-boot environment properties using the \fBeeprom\fR(1M) command or by editing
-the \fBbootenv.rc\fR configuration file. If a property is set in both the
-driver's \fBata.conf\fR file and the boot environment, the \fBata.conf\fR
-property takes precedence.
-.sp
-.LP
-Property modifications other than with the boot loader command line are
-not effective until you reboot the system. Property modifications via the
-boot loader command line do not persist across future boots.
-.sp
-.LP
-Direct Memory Access is enabled for disks and atapi CD/DVD by default. If you
-want to disable DMA when booting from a CD/DVD, you must first set
-atapi-cd-dma-enabled to 0 using the boot loader command line.
-.sp
-.ne 2
-.na
-\fB\fBata-dma-enabled\fR\fR
-.ad
-.RS 27n
-This property is examined before the DMA properties discussed below. If it is
-set to '0,' DMA is disabled for all ATA/ATAPI devices, and no further property
-checks are made. If this property is absent or is set to '1,' DMA status is
-determined by further examining one of the other properties listed below.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBata-disk-dma-enabled\fR\fR
-.ad
-.RS 27n
-This property is examined only for ATA disk devices, and only if
-ata-dma-enabled is not set to '0.'
-.sp
-If ata-disk-dma-enabled set to '0,' DMA is disabled for all ATA disks in the
-system. If this property is absent or set to '1,' DMA is enabled for all ATA
-disks and no further property checks are made. If needed, this property should
-be created by the administrator using the boot loader command line or the
-\fBeeprom\fR(1M) command.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBatapi-cd-dma-enabled\fR\fR
-.ad
-.RS 27n
-This property is examined only for ATAPI CD/DVD devices, and only if
-ata-dma-enabled is not set to '0.'
-.sp
-If atapi-cd-dma-enabled is absent or set to '0,' DMA is disabled for all ATAPI
-CD/DVD's. If set to '1,' DMA is enabled and no further property checks are
-made.
-.sp
-The Solaris installation program creates this property in the boot environment
-with a value of '1.' It can be changed with the boot loader command line
-or \fBeeprom\fR(1M) as shown in the Example section of this manpage.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBatapi-other-dma-enabled\fR\fR
-.ad
-.RS 27n
-This property is examined only for non-CD/DVD ATAPI devices such as ATAPI tape
-drives, and only if ata-dma-enabled is not set to '0.'
-.sp
-If atapi-other-dma-enabled is set to '0,' DMA is disabled for all non-CD/DVD
-ATAPI devices. If this property is absent or set to '1,' DMA is enabled and no
-further property checks are made.
-.sp
-If needed, this property should be created by the administrator using the
-boot loader command line or the \fBeeprom\fR(1M) command.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdrive0_block_factor\fR\fR
-.ad
-.br
-.na
-\fB\fBdrive1_block_factor\fR\fR
-.ad
-.RS 27n
-\fBATA\fR controllers support some amount of buffering (blocking). The purpose
-is to interrupt the host when an entire buffer full of data has been read or
-written instead of using an interrupt for each sector. This reduces interrupt
-overhead and significantly increases throughput. The driver interrogates the
-controller to find the buffer size. Some controllers hang when buffering is
-used, so the values in the configuration file are used by the driver to reduce
-the effect of buffering (blocking). The values presented may be chosen from
-\fB0x1\fR, \fB0x2\fR, \fB0x4\fR, \fB0x8\fR and \fB0x10\fR.
-.sp
-The values as shipped are set to \fB0x1\fR, and they can be tuned to increase
-performance.
-.sp
-If your controller hangs when attempting to use higher block factors, you may
-be unable to reboot the system. For x86 based systems, it is recommended that
-tuning be performed using a duplicate of the \fB/platform/i86pc/kernel\fR
-directory subtree. This ensures that a bootable kernel subtree exists in the
-event of a failed test.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBata-revert-to-defaults\fR\fR
-.ad
-.br
-.na
-\fB\fBrevert\(em<diskmodel>\fR\fR
-.ad
-.RS 27n
-When rebooting or shutting down, the driver can set a feature which allows the
-drive to return to the power-on settings when the drive receives a software
-reset (SRST) sequence. If this property is present and set to 1, the driver
-will set the feature to revert to defaults during reset. Setting this property
-to 1 may prevent some systems from soft-rebooting and would require cycling the
-power to boot the system. If this property is not present the system will not
-set the feature to revert to defaults during reset.
-.sp
-To determine the string to substitute for <diskmodel>, boot your system (you
-may have to press the reset button or power-cycle) and then view
-\fB/var/adm/messages\fR. Look for the string "IDE device at targ" or "ATAPI
-device at targ." The next line will contain the word "model" followed by the
-model number and a comma. Ignore all characters except letters, digits, ".",
-"_", and "-". Change uppercase letters to lower case. If the string
-revert-<diskmodel> is longer than 31 characters, use only the first 31
-characters.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRSample ata Configuration File
-.sp
-.in +2
-.nf
-\fB# for higher performance - set block factor to 16
- drive0_block_factor=0x1 drive1_block_factor=0x1
- max_transfer=0x100
- flow_control="dmult" queue="qsort" disk="dadk" ;\fR
-.fi
-.in -2
-
-.LP
-\fBExample 2 \fRRevert to defaults property
-.sp
-.in +2
-.nf
-\fBrevert-st320420a=1;\fR
-.fi
-.in -2
-
-.sp
-.LP
-Output of \fB/var/adm/messages\fR:
-
-.sp
-.in +2
-.nf
-Aug 17 06:49:43 caesar ata:[ID 640982 kern.info] IDE device at targ 0,
- lun 0 lastlun 0x0
-Aug 17 06:49:43 caesar ata:[ID 521533 kern.info] model ST320420A, stat
-.fi
-.in -2
-
-.LP
-\fBExample 3 \fRChange DMA property using the boot loader command line
-.sp
-.LP
-To change a DMA property using the boot loader command line:
-
-.RS +4
-.TP
-1.
-Reset the system.
-.RE
-.RS +4
-.TP
-2.
-Press "Esc" to interrupt the timeout.
-.RE
-.RS +4
-.TP
-3.
-Enter: boot -B atapi-cd-dma-enabled=1
-.RE
-.LP
-\fBExample 4 \fRChange DMA Property with eeprom(1M)
-.sp
-.LP
-To enable DMA for optical devices while the Solaris kernel is running with the
-\fBeeprom\fR(1M) system command:
-
-.sp
-.in +2
-.nf
-eeprom 'atapi-cd-dma-enabled=1'
-.fi
-.in -2
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/platform/i86pc/kernel/drv/ata\fR\fR
-.ad
-.sp .6
-.RS 4n
-Device driver.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/platform/i86pc/kernel/drv/ata.conf\fR\fR
-.ad
-.sp .6
-.RS 4n
-Configuration file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/boot/solaris/bootenv.rc\fR\fR
-.ad
-.sp .6
-.RS 4n
-Boot environment variables file for Solaris x86. \fBeeprom\fR(1M) can be used
-to modify properties in this file.
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture x86
-.TE
-
-.SH SEE ALSO
-.LP
-\fBeeprom\fR(1M), \fBattributes\fR(5)
-.sp
-.LP
-\fIINCITS T13 ATA/ATAPI-7\fR specifications
diff --git a/usr/src/man/man7d/atge.7d b/usr/src/man/man7d/atge.7d
deleted file mode 100644
index 2811ba6558..0000000000
--- a/usr/src/man/man7d/atge.7d
+++ /dev/null
@@ -1,108 +0,0 @@
-'\" te
-.\" Copyright (c) 2012 Gary Mills
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH ATGE 7D "Sep 11, 2009"
-.SH NAME
-atge \- Device driver for Atheros/Attansic Ethernet chipsets
-.SH DESCRIPTION
-.sp
-.LP
-The \fBatge\fR ethernet driver supports the
-Atheros/Attansic L1, L1E, and L1C Ethernet
-(AR8121/AR8113/8114, AR8131/AR8132, and AR8151/AR8152) chipsets:
-.sp
-.in +2
-.nf
-pciex1969,1026 Atheros AR8121/8113/8114
-pciex1969,1048 Attansic L1
-pciex1969,1062 Atheros AR8132 Fast Ethernet
-pciex1969,1063 Atheros AR8131 Gigabit Ethernet
-pciex1969,1073 Atheros AR8151 v1.0 Gigabit Ethernet
-pciex1969,1083 Atheros AR8151 v2.0 Gigabit Ethernet
-pciex1969,2060 Atheros AR8152 v1.1 Fast Ethernet
-pciex1969,2062 Atheros AR8152 v2.0 Fast Ethernet
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The \fBatge\fR driver supports IEEE 802.3 auto-negotiation, flow control and
-VLAN tagging.
-.SS "Configuration"
-.sp
-.LP
-The default configuration is auto-negotiation with bi-directional flow control.
-The advertised capabilities for auto-negotiation are based on the capabilities
-of the \fBPHY\fR.
-.sp
-.LP
-You can set the capabilities advertised by the \fBatge\fR controlled device
-using \fBdladm\fR(1M). The driver supports only those parameters which begin
-with en (enabled) in the parameters listed by the command \fBdladm\fR(1M). Each
-of these boolean parameters determines if the device advertises that mode of
-operation when the hardware supports it.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/dev/atge\fR\fR
-.ad
-.RS 26n
-Special character device
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/atge\fR\fR
-.ad
-.RS 26n
-32-bit device drive (x86)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/atge\fR\fR
-.ad
-.RS 26n
-64-bit device driver (x86)
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for a description of the following attribute:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture SPARC, x86
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBdladm\fR(1M), \fBndd\fR(1M), \fBnetstat\fR(1M), \fBdriver.conf\fR(4),
-\fBattributes\fR(5), \fBieee802.3\fR(5), \fBdlpi\fR(7P), \fBstreamio\fR(7I)
-.sp
-.LP
-\fIWriting Device Drivers\fR
-.sp
-.LP
-\fINetwork Interface Guide\fR
-.sp
-.LP
-\fISTREAMS Programmer's Guide\fR
-.sp
-.LP
-\fIIEEE 802.3ae Specification, 2002\fR
diff --git a/usr/src/man/man7d/ath.7d b/usr/src/man/man7d/ath.7d
deleted file mode 100644
index 58dc94a532..0000000000
--- a/usr/src/man/man7d/ath.7d
+++ /dev/null
@@ -1,93 +0,0 @@
-'\" te
-.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH ATH 7D "Nov 14, 2006"
-.SH NAME
-ath \- Atheros AR52xx 802.11b/g wireless NIC driver
-.SH DESCRIPTION
-.sp
-.LP
-The \fBath\fR \fI802.11b/g \fR wireless NIC driver is a multi-threaded,
-loadable, clonable, GLDv3-based STREAMS driver for the Atheros AR52xx
-(AR5210/5211/5212) chipset-based wireless NIC.
-.sp
-.LP
-The \fBath\fR driver functions include controller initialization, wireless
-\fI802.11b/g\fR infrastructure network connection, WEP, frame transmit and
-receive, and promiscuous and multi-cast support.
-.SH DRIVER CONFIGURATION
-.sp
-.LP
-The \fBath\fR driver performs auto-negotiation to determine the data rates and
-mode. Supported \fI802.11b\fR data rates (Mbits/sec.) are 1, 2, 5.5 and 11.
-Supported \fI802.11g\fR data rates (Mbits/sec.) are 1, 2, 5.5, 11, 6, 9, 12,
-18, 24, 36, 48 and 54.
-.sp
-.LP
- The \fBath\fR driver supports only BSS networks (also known as "ap" or
-"infrastructure" networks) and the "open" (or "opensystem") authentication
-type. Only WEP encryption is currently supported. Configuration and
-administration can be performed through the \fBdladm\fR(1M) or
-\fBwificonfig\fR(1M) utilities.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/dev/ath*\fR \fR
-.ad
-.RS 26n
-Special character device.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/ath\fR \fR
-.ad
-.RS 26n
-32-bit ELF kernel module (x86).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/ath\fR \fR
-.ad
-.RS 26n
-64-bit ELF kernel module (x86).
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture x86
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBdladm\fR(1M), \fBwificonfig\fR(1M), \fBgld\fR(7D)
-.sp
-.LP
-\fIANSI/IEEE Std 802.11\fR- Standard for Wireless LAN Technology, 1999.
-.sp
-.LP
-\fIIEEE Std 802.11a\fR- Standard for Wireless LAN Technology-Rev. A, 2003
-.sp
-.LP
-\fIIEEE Std 802.11b\fR - Standard for Wireless LAN Technology-Rev.B, 2003
-.sp
-.LP
-\fIIEEE Std 802.11g\fR\(em Standard for Wireless LAN Technology - Rev. G, 2003
diff --git a/usr/src/man/man7d/atu.7d b/usr/src/man/man7d/atu.7d
deleted file mode 100644
index eecb895078..0000000000
--- a/usr/src/man/man7d/atu.7d
+++ /dev/null
@@ -1,82 +0,0 @@
-'\" te
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
-.TH ATU 7D "Mar 26, 2009"
-.SH NAME
-atu \- Atmel AT76C50x USB IEEE 802.11b Wireless Device Driver
-.SH DESCRIPTION
-.sp
-.LP
-The \fBatu 802.11b\fR wireless driver is a multi-threaded, loadable, clonable,
-GLDv3-based STREAMS driver supporting the Atmel AT76C50x chipset-based wireless
-devices.
-.SS "Configuration"
-.sp
-.LP
-The \fBatu\fR driver performs auto-negotiation to determine the data rate and
-mode. Supported 802.11b data rates are 1, 2, 5.5, and 11 Mbits/sec.
-.sp
-.LP
-The \fBatu\fR driver supports only BSS networks (also known as \fBap\fR or
-\fBinfrastructure\fR networks).
-.sp
-.LP
-\fBopen\fR (or \fBopen-system\fR) and \fBshared key\fR authentication modes are
-supported. Encryption types WEP40 and WEP104 are supported.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/dev/atu*\fR\fR
-.ad
-.RS 25n
-Special character device
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/atu\fR\fR
-.ad
-.RS 25n
-32-bit ELF kernel module (x86)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/atu\fR\fR
-.ad
-.RS 25n
-64-bit ELF kernel module (x86)
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for a description of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-l | l
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture x86
-_
-Interface Stability Committed
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBdladm\fR(1M), \fBwificonfig\fR(1M), \fBattributes\fR(5), \fBdlpi\fR(7P),
-\fBgld\fR(7D)
-.sp
-.LP
-\fI802.11 - Wireless LAN Media Access Control and Physical Layer Specification
-- IEEE, 2001\fR
diff --git a/usr/src/man/man7d/audio.7d b/usr/src/man/man7d/audio.7d
deleted file mode 100644
index 76aa2bdf8e..0000000000
--- a/usr/src/man/man7d/audio.7d
+++ /dev/null
@@ -1,177 +0,0 @@
-'\" te
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH AUDIO 7D "Jan 10, 2020"
-.SH NAME
-audio \- common audio framework
-.SH DESCRIPTION
-The \fBaudio\fR driver provides common support routines for audio devices in
-Solaris.
-.sp
-.LP
-The audio framework supports multiple \fBpersonalities\fR, allowing for devices
-to be accessed with different programming interfaces.
-.sp
-.LP
-The audio framework also provides a number of facilities, such as mixing of
-audio streams, and data format and sample rate conversion.
-.SS "Overview"
-The audio framework provides a software mixing engine (audio mixer) for all
-audio devices, allowing more than one process to play or record audio at the
-same time.
-.SS "Multi-Stream Codecs"
-The audio mixer supports multi-stream Codecs. These devices have DSP engines
-that provide sample rate conversion, hardware mixing, and other features. The
-use of such hardware features is opaque to applications.
-.SS "Backward Compatibility"
-It is not possible to disable the mixing function. Applications must not assume
-that they have exclusive access to the audio device.
-.SS "Audio Formats"
-Digital audio data represents a quantized approximation of an analog audio
-signal waveform. In the simplest case, these quantized numbers represent the
-amplitude of the input waveform at particular sampling intervals. To achieve
-the best approximation of an input signal, the highest possible sampling
-frequency and precision should be used. However, increased accuracy comes at a
-cost of increased data storage requirements. For instance, one minute of
-monaural audio recorded in u-Law format (pronounced \fBmew-law\fR) at 8 KHz
-requires nearly 0.5 megabytes of storage, while the standard Compact Disc audio
-format (stereo 16-bit linear PCM data sampled at 44.1 KHz) requires
-approximately 10 megabytes per minute.
-.sp
-.LP
-An audio data format is characterized in the audio driver by four parameters:
-sample Rate, encoding, precision, and channels. Refer to the device-specific
-manual pages for a list of the audio formats that each device supports. In
-addition to the formats that the audio device supports directly, other formats
-provide higher data compression. Applications can convert audio data to and
-from these formats when playing or recording.
-.SS "Sample Rate"
-Sample rate is a number that represents the sampling frequency (in samples per
-second) of the audio data.
-.sp
-.LP
-The audio mixer always configures the hardware for the highest possible sample
-rate for both play and record. This ensures that none of the audio streams
-require compute-intensive low pass filtering. The result is that high sample
-rate audio streams are not degraded by filtering.
-.sp
-.LP
-Sample rate conversion can be a compute-intensive operation, depending on the
-number of channels and a device's sample rate. For example, an 8KHz signal can
-be easily converted to 48KHz, requiring a low cost up sampling by 6. However,
-converting from 44.1KHz to 48KHz is computer intensive because it must be up
-sampled by 160 and then down sampled by 147. This is only done using integer
-multipliers.
-.sp
-.LP
-Applications can greatly reduce the impact of sample rate conversion by
-carefully picking the sample rate. Applications should always use the highest
-sample rate the device supports. An application can also do its own sample rate
-conversion (to take advantage of floating point and accelerated instructions)
-or use small integers for up and down sampling.
-.sp
-.LP
-All modern audio devices run at 48 kHz or a multiple thereof, hence just using
-48 kHz can be a reasonable compromise if the application is not prepared to
-select higher sample rates.
-.SS "Encodings"
-An encoding parameter specifies the audiodata representation. u-Law encoding
-corresponds to CCITT G.711, and is the standard for voice data used by
-telephone companies in the United States, Canada, and Japan. A-Law encoding is
-also part of CCITT G.711 and is the standard encoding for telephony elsewhere
-in the world. A-Law and u-Law audio data are sampled at a rate of 8000 samples
-per second with 12-bit precision, with the data compressed to 8-bit samples.
-The resulting audio data quality is equivalent to that of stan dard analog
-telephone service.
-.sp
-.LP
-Linear Pulse Code Modulation (PCM) is an uncompressed, signed audio format in
-which sample values are directly proportional to audio signal voltages. Each
-sample is a 2's complement number that represents a positive or negative
-amplitude.
-.SS "Precision"
-Precision indicates the number of bits used to store each audio sample. For
-instance, u-Law and A-Law data are stored with 8-bit precision. PCM data can be
-stored at various precisions, though 16-bit is the most common.
-.SS "Channels"
-Multiple channels of audio can be interleaved at sample boundaries. A sample
-frame consists of a single sample from each active channel. For example, a
-sample frame of stereo 16-bit PCM data consists of 2 16-bit samples,
-corresponding to the left and right channel data. The audio mixer sets the
-hardware to the maximum number of channels supported. If a mono signal is
-played or recorded, it is mixed on the first two (usually the left and right)
-channel only. Silence is mixed on the remaining channels.
-.SS "Supported Formats"
-The audio mixer supports the following audio formats:
-.sp
-.in +2
-.nf
-Encoding Precision Channels
-Signed Linear PCM 32-bit Mono or Stereo
-Signed Linear PCM 16-bit Mono or Stereo
-Signed Linear PCM 8-bit Mono or Stereo
-u-Law 8-bit Mono or Stereo
-A-Law 8-bit Mono or Stereo
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The audio mixer converts all audio streams to 24-bit Linear PCM before mixing.
-After mixing, conversion is made to the best possible Codec format. The
-conversion process is not compute intensive and audio applications can choose
-the encoding format that best meets their needs.
-.sp
-.LP
-The mixer discards the low order 8 bits of 32-bit Signed Linear PCM in order to
-perform mixing. (This is done to allow for possible overflows to fit into
-32-bits when mixing multiple streams together.) Hence, the maximum effective
-precision is 24-bits.
-.SH FILES
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/audio\fR\fR
-.ad
-.RS 29n
-Device driver (x86)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/sparcv9/audio\fR\fR
-.ad
-.RS 29n
-Device driver (SPARC)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/audio.conf\fR\fR
-.ad
-.RS 29n
-Driver configuration file
-.RE
-
-.SH ATTRIBUTES
-See \fBattributes\fR(5) for a description of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-l | l
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture SPARC, x86
-_
-Interface Stability Uncommitted
-.TE
-
-.SH SEE ALSO
-\fBioctl\fR(2), \fBattributes\fR(5), \fBaudio\fR(7I), \fBdsp\fR(7I)
diff --git a/usr/src/man/man7d/audio1575.7d b/usr/src/man/man7d/audio1575.7d
deleted file mode 100644
index e071e73a30..0000000000
--- a/usr/src/man/man7d/audio1575.7d
+++ /dev/null
@@ -1,99 +0,0 @@
-'\" te
-.\" Copyright (c) 2009 Sun Microsystems, Inc. All rights reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH AUDIO1575 7D "May 13, 2009"
-.SH NAME
-audio1575 \- Uli M1575 Super South Bridge audio digital controller interface
-.SH DESCRIPTION
-.sp
-.LP
-The \fBaudio1575\fR device uses the Uli M1575 AC97-compatible audio digital
-controller and an AC-97 Codec to implement the audio device interface. This
-interface allows analog only inputs and outputs.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/sparcv9/audio1575\fR\fR
-.ad
-.sp .6
-.RS 4n
-64-bit driver module
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/audio1575.conf\fR\fR
-.ad
-.sp .6
-.RS 4n
-Driver configuration file
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture SPARC, x86
-_
-Stability level Uncommitted
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBioctl\fR(2), \fBattributes\fR(5), \fBaudio\fR(7I), \fBmixer\fR(7I),
-\fBstreamio\fR(7I)
-.sp
-.LP
-\fIUli M1575 Super South Bridge Data Sheet Data Sheet\fR\(em Uli USA Inc.
-.sp
-.LP
-\fIAD1981B AC '97 SoundMAX(R) Codec Data Sheet\fR\(em Analog Devices Inc.
-.SH DIAGNOSTICS
-.sp
-.LP
-In addition to being logged, the following messages might appear on the system
-console:
-.sp
-.ne 2
-.na
-\fB\fBplay-interrupts too low\fR\fR
-.ad
-.br
-.na
-\fB\fBrecord-interrupts too low\fR\fR
-.ad
-.RS 30n
-The interrupt rate specified in \fBaudio1575.conf\fR is set too low. It has
-been reset to the rate specified in the message. Update \fBaudio1575.conf\fR to
-a higher interrupt rate.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBplay-interrupts too high\fR\fR
-.ad
-.br
-.na
-\fB\fBrecord-interrupts too high\fR\fR
-.ad
-.RS 30n
-The interrupt rate specified in \fBaudio1575.conf\fR is set too high. It has
-been reset to the rate specified in the message. Update \fBaudio1575.conf\fR to
-a lower interrupt rate.
-.RE
-
diff --git a/usr/src/man/man7d/audio810.7d b/usr/src/man/man7d/audio810.7d
deleted file mode 100644
index 53abf390d5..0000000000
--- a/usr/src/man/man7d/audio810.7d
+++ /dev/null
@@ -1,104 +0,0 @@
-'\" te
-.\" Copyright (c) 2009 Sun Microsystems, Inc. All rights reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH AUDIO810 7D "September 12, 2020"
-.SH NAME
-audio810 \- Intel ICH series, nVidia nForce series and AMD 8111 audio core
-support
-.SH DESCRIPTION
-The \fBaudio810\fR driver provides support for AC 97 audio controllers embedded
-in Intel ICH, nVidia nForce, and AMD 8111 chips.
-.SH FILES
-.ne 2
-.na
-\fB\fB/kernel/drv/audio810\fR\fR
-.ad
-.RS 30n
-32-bit kernel driver module
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/audio810\fR\fR
-.ad
-.RS 30n
-64-bit x86 kernel driver module
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/audio810.conf\fR\fR
-.ad
-.RS 30n
-\fBaudio810\fR driver configuration file
-.RE
-
-.SH ATTRIBUTES
-See \fBattributes\fR(5) for a descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture PC-based systems
-_
-Interface Stability Uncommitted
-.TE
-
-.SH SEE ALSO
-\fBioctl\fR(2), \fBattributes\fR(5), \fBaudio\fR(7I), \fBmixer\fR(7I),
-\fBstreamio\fR(7I)
-.sp
-.LP
-\fIAMD-8111 HyperTransport I/O Hub Data Sheet\fR \(em Advanced Micro Devices
-Inc.
-.sp
-.LP
-\fIALC655 Specification\fR \(em Realtek Inc.
-.SH NOTES
-Some laptops (including Sony VAIO, among others), have their on-board amplifier
-powered down by default, meaning that audio is suppressed even if hardware and
-the \fBaudio810\fR driver are working normally. To correct this, set the
-\fBac97-invert-amp=1\fR property in the \fB/kernel/drv/audio810.conf\fR to
-power-up the amplifier.
-.SH DIAGNOSTICS
-In addition to being logged, the following messages may appear on the system
-console:
-.sp
-.ne 2
-.na
-\fB\fBplay-interrupts too low\fR\fR
-.ad
-.br
-.na
-\fB\fBrecord-interrupts too low\fR\fR
-.ad
-.RS 30n
-The interrupt rate in \fBaudio810.conf\fR is set too low. It has been reset to
-the rate specified in the message. Update \fBaudio810.conf\fR to a higher
-interrupt rate.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBplay-interrupts too high\fR\fR
-.ad
-.br
-.na
-\fB\fBrecord-interrupts too high\fR\fR
-.ad
-.RS 30n
-The interrupt rate set in \fBaudio810.conf\fR is set too high. It has been
-reset to the rate specified in the message. Update \fBaudio810.conf\fR to a
-lower interrupt rate.
-.RE
-
diff --git a/usr/src/man/man7d/audiocmi.7d b/usr/src/man/man7d/audiocmi.7d
deleted file mode 100644
index a74ab6eb81..0000000000
--- a/usr/src/man/man7d/audiocmi.7d
+++ /dev/null
@@ -1,76 +0,0 @@
-'\" te
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All rights reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH AUDIOCMI 7D "Aug 17, 2009"
-.SH NAME
-audiocmi \- C-Media 8738, 8768, and 8338 driver support
-.SH DESCRIPTION
-.sp
-.LP
-The \fBaudiocmi\fR driver provides support for the C-Media 8738, 8768, and 8338
-audio controllers. These are found on some motherboards and some add-in PCI
-cards.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/audiocmi\fR\fR
-.ad
-.sp .6
-.RS 4n
-32-bit kernel driver module
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/audiocmi\fR\fR
-.ad
-.sp .6
-.RS 4n
-64-bit x86 kernel driver module
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/sparcv9/audiocmi\fR\fR
-.ad
-.sp .6
-.RS 4n
-64-bit SPARC kernel driver module
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/audiocmi.conf\fR\fR
-.ad
-.sp .6
-.RS 4n
-Driver configuration file
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for a descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture PC-based system
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBioctl\fR(2), \fBattributes\fR(5), \fBaudio\fR(7I), \fBmixer\fR(7I),
-\fBstreamio\fR(7I)
diff --git a/usr/src/man/man7d/audiocmihd.7d b/usr/src/man/man7d/audiocmihd.7d
deleted file mode 100644
index 52038cb4df..0000000000
--- a/usr/src/man/man7d/audiocmihd.7d
+++ /dev/null
@@ -1,63 +0,0 @@
-'\" t
-.\" This file and its contents are supplied under the terms of the
-.\" Common Development and Distribution License ("CDDL"), version 1.0.
-.\" You may only use this file in accordance with the terms of version
-.\" 1.0 of the CDDL.
-.\"
-.\" A full copy of the text of the CDDL should have accompanied this
-.\" source. A copy of the CDDL is also available via the Internet at
-.\" http://www.illumos.org/license/CDDL.
-.\"
-.\"
-.\" Copyright 2011 Nexenta Systems, Inc. All rights reserved.
-.\"
-.TH AUDIOCMIHD 7D "Mar 18, 2011"
-.SH NAME
-audiocmihd \- CMI8788 HD audio driver
-.SH DESCRIPTION
-.sp
-.LP
-The \fBaudiocmihd\fR driver provides support for audio devices based on
-the CMedia 8788 and similar parts. Most often these are seen in
-devices sold under the Asus Xonar brand.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB/kernel/drv/audiocmihd\fR
-.ad
-.sp .6
-.RS 4n
-32-bit kernel module
-.RE
-
-.sp
-.ne 2
-.na
-\fB/kernel/drv/amd64/audiocmihd\fR
-.ad
-.sp .6
-.RS 4n
-64-bit kernel module
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture x86
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBattributes\fR(5), \fBaudio\fR(7I), \fBdsp\fR(7I), \fBmixer\fR(7I)
diff --git a/usr/src/man/man7d/audiocs.7d b/usr/src/man/man7d/audiocs.7d
deleted file mode 100644
index ab555b8cd2..0000000000
--- a/usr/src/man/man7d/audiocs.7d
+++ /dev/null
@@ -1,104 +0,0 @@
-'\" te
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All rights reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH AUDIOCS 7D "May 12, 2009"
-.SH NAME
-audiocs \- Crystal Semiconductor 4231 Audio driver
-.SH DESCRIPTION
-.sp
-.LP
-The \fBaudiocs\fR driver supports the Crystal Semiconductor 4231 Codec to
-implement the audio device interface.
-.sp
-.LP
-The \fBaudiocs\fR device provides support for the internal speaker, headphone,
-line out, line in, microphone, and, on some platforms, internal CD-ROM audio
-in.
-.SH ERRORS
-.sp
-.LP
-\fBaudiocs\fR errors are described in the \fBaudio\fR(7I) manual page.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/sparcv9/audiocs\fR\fR
-.ad
-.sp .6
-.RS 4n
-64-bit \fBaudiocs\fR driver
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/audiocs.conf\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBaudiocs\fR driver configuration file
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture SPARC
-_
-Stability level Uncommitted
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBioctl\fR(2), \fBattributes\fR(5), \fBaudio\fR(7I), \fBmixer\fR(7I),
-\fBstreamio\fR(7I)
-.sp
-.LP
-Crystal Semiconductor, Inc. \fBCS4231\fR Data Sheet
-.SH DIAGNOSTICS
-.sp
-.LP
-In addition to being logged, the following messages can appear on the system
-console:
-.sp
-.ne 2
-.na
-\fB\fBplay-interrupts too low\fR\fR
-.ad
-.br
-.na
-\fB\fBrecord-interrupts too low\fR\fR
-.ad
-.RS 30n
-The interrupt rate specified in \fBaudiocs.conf\fR is set too low. It is being
-reset to the rate specified in the message. Update \fBaudiocs.conf\fR to a
-higher interrupt rate.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBplay-interrupts too high\fR\fR
-.ad
-.br
-.na
-\fB\fBrecord-interrupts too high\fR\fR
-.ad
-.RS 30n
-The interrupt rate specified in \fBaudiocs.conf\fR is set too high. It is being
-reset to the rate specified in the message. Update \fBaudiocs.conf\fR to a
-lower interrupt rate.
-.RE
-
diff --git a/usr/src/man/man7d/audioemu10k.7d b/usr/src/man/man7d/audioemu10k.7d
deleted file mode 100644
index a5b3d826fb..0000000000
--- a/usr/src/man/man7d/audioemu10k.7d
+++ /dev/null
@@ -1,66 +0,0 @@
-'\" t
-.\" This file and its contents are supplied under the terms of the
-.\" Common Development and Distribution License ("CDDL"), version 1.0.
-.\" You may only use this file in accordance with the terms of version
-.\" 1.0 of the CDDL.
-.\"
-.\" A full copy of the text of the CDDL should have accompanied this
-.\" source. A copy of the CDDL is also available via the Internet at
-.\" http://www.illumos.org/license/CDDL.
-.\"
-.\"
-.\" Copyright 2011 Nexenta Systems, Inc. All rights reserved.
-.\"
-.TH AUDIOEMU10K 7D "Mar 18, 2011"
-.SH NAME
-audioemu10k \- EMU10K audio driver
-.SH DESCRIPTION
-.sp
-.LP
-The \fBaudioemu10\fR driver provides support for audio devices based on
-the Creative EMU10K1 and EMU10K2 chips. Most often these are seen in
-devices sold under the Audigy or Sound Blaster Live! brand names.
-.LP
-The \fBaudioemu10k\fR driver provides support for surround sound and
-SPDIF features on devices with such capabilities.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB/kernel/drv/audioemu10k\fR
-.ad
-.sp .6
-.RS 4n
-32-bit kernel module
-.RE
-
-.sp
-.ne 2
-.na
-\fB/kernel/drv/amd64/audioemu10k\fR
-.ad
-.sp .6
-.RS 4n
-64-bit kernel module
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture x86
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBattributes\fR(5), \fBaudio\fR(7I), \fBdsp\fR(7I), \fBmixer\fR(7I)
diff --git a/usr/src/man/man7d/audioens.7d b/usr/src/man/man7d/audioens.7d
deleted file mode 100644
index bfe24ebd8c..0000000000
--- a/usr/src/man/man7d/audioens.7d
+++ /dev/null
@@ -1,67 +0,0 @@
-'\" te
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH AUDIOENS 7D "May 15, 2009"
-.SH NAME
-audioens \- Ensoniq ESS 1371 and ESS 1373 audio driver
-.SH DESCRIPTION
-.sp
-.LP
-The \fBaudioens\fR driver provides support for the Ensoniq ESS1371, ESS1373,
-and Creative 5880 AC'97 devices. These devices are commonly known by several
-different names, including the Sound Blaster PCI128 and AudioPCI '97.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/audioens\fR\fR
-.ad
-.sp .6
-.RS 4n
-32-bit kernel module
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/audioens\fR\fR
-.ad
-.sp .6
-.RS 4n
-64-bit x86 kernel module
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/sparcv9/audioens\fR\fR
-.ad
-.sp .6
-.RS 4n
-64-bit SPARC kernel module
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture SPARC, x86
-_
-Interface Stability Uncommitted
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBattributes\fR(5), \fBaudio\fR(7I), \fBdsp\fR(7I), \fBmixer\fR(7I)
diff --git a/usr/src/man/man7d/audiohd.7d b/usr/src/man/man7d/audiohd.7d
deleted file mode 100644
index 4b50c86861..0000000000
--- a/usr/src/man/man7d/audiohd.7d
+++ /dev/null
@@ -1,105 +0,0 @@
-'\" te
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All rights reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH AUDIOHD 7D "May 12, 2009"
-.SH NAME
-audiohd \- Intel High Definition Audio Controller support
-.SH DESCRIPTION
-.sp
-.LP
-The \fBaudiohd\fR driver provides support for the generic codec chips which are
-compatible with the Intel High-Definition Audio Controller 1.0 specification.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/audiohd.conf\fR\fR
-.ad
-.RS 29n
-\fBaudiohd\fR driver configuration file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/audiohd\fR\fR
-.ad
-.RS 29n
-32-bit x86 kernel driver module
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/audiohd\fR\fR
-.ad
-.RS 29n
-64-bit x86 kernel driver module
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for a descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture PC-based system
-_
-Stability level Uncommitted
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBioctl\fR(2), \fBattributes\fR(5), \fBaudio\fR(7I), \fBmixer\fR(7I),
-\fBstreamio\fR(7I)
-.sp
-.LP
-\fIIntel High-Definition Audio Specification 1.0.\fR - Intel Corporation
-.sp
-.LP
-\fIALC880 Specification\fR \(em Realtek Inc.
-.SH DIAGNOSTICS
-.sp
-.LP
-In addition to being logged, the following messages can appear on the system
-console:
-.sp
-.ne 2
-.na
-\fB\fBplay-interrupts too low\fR\fR
-.ad
-.br
-.na
-\fB\fBrecord-interrupts too low\fR\fR
-.ad
-.RS 30n
-The interrupt rate in \fBaudiohd.conf\fR is set too low. It has been reset to
-the rate specified in the message. Update \fBaudiohd.conf\fR to a higher
-interrupt rate.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBredcord-interrupts too low\fR\fR
-.ad
-.br
-.na
-\fB\fBrecord-interrupts too high\fR\fR
-.ad
-.RS 30n
-The interrupt rate in \fBaudiohd.conf\fR is set too low. It has been reset to
-the rate specified in the message. Update \fBaudiohd.conf\fR to a higher
-interrupt rate
-.RE
-
diff --git a/usr/src/man/man7d/audioixp.7d b/usr/src/man/man7d/audioixp.7d
deleted file mode 100644
index c0871fb91d..0000000000
--- a/usr/src/man/man7d/audioixp.7d
+++ /dev/null
@@ -1,106 +0,0 @@
-'\" te
-.\" Copyright (c) 2009 Sun Microsystems, Inc. All rights reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH AUDIOIXP 7D "May 12, 2009"
-.SH NAME
-audioixp \- ATI IXP400 south bridge audio digital controller interface
-.SH DESCRIPTION
-.sp
-.LP
-The \fBaudioixp\fR device uses the IXP400 south bridge audio digital controller
-and a AC-97 Codec to implement the audio device interface.
-.sp
-.LP
-The \fBaudioixp\fR device provides support for the internal speaker,
-headphone, line out, line in, and microphone.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/audioixp.conf\fR\fR
-.ad
-.RS 30n
-Driver configuration file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/audioixp\fR\fR
-.ad
-.RS 30n
-32-bit kernel driver module
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/audioixp\fR\fR
-.ad
-.RS 30n
-64-bit kernel driver module
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for a descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture PC-based system
-_
-Stability level Uncommitted
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBioctl\fR(2), \fBattributes\fR(5), \fBaudio\fR(7I), \fBmixer\fR(7I),
-\fBstreamio\fR(7I)
-.sp
-.LP
-\fIATI IXP400 South Bridge Data Sheet\fR
-.SH DIAGNOSTICS
-.sp
-.LP
-In addition to being logged, the following messages may appear on the system
-console:
-.sp
-.ne 2
-.na
-\fB\fBplay-interrupts too low\fR\fR
-.ad
-.br
-.na
-\fB\fBrecord-interrupts too low\fR\fR
-.ad
-.RS 30n
-The interrupt rate in \fBaudioixp.conf\fR is set too low. It has been reset to
-the rate specified in the message. Update \fBaudioixp.conf\fR to a higher
-interrupt rate.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBplay-interrupts too high\fR\fR
-.ad
-.br
-.na
-\fB\fBrecord-interrupts too high\fR\fR
-.ad
-.RS 30n
-The interrupt rate set in \fBaudioixp.conf\fR is set too high. It has been
-reset to the rate specified in the message. Update \fBaudioixp.conf\fR to a
-lower interrupt rate.
-.RE
-
diff --git a/usr/src/man/man7d/audiols.7d b/usr/src/man/man7d/audiols.7d
deleted file mode 100644
index a1b29e76f2..0000000000
--- a/usr/src/man/man7d/audiols.7d
+++ /dev/null
@@ -1,60 +0,0 @@
-'\" te
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All rights reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH AUDIOLS 7D "Sep 8, 2009"
-.SH NAME
-audiols \- Creative Audigy LS audio device support
-.SH DESCRIPTION
-.sp
-.LP
-The \fBaudiols\fR driver provides support for the Creative Audigy LS audio
-device.
-.sp
-.LP
-There are numerous devices marketed under the Audigy brand by Creative, but
-only Audigy LS devices are supported by this driver.
-.sp
-.LP
-This device is capable of 5.1 surround sound.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/audiols\fR\fR
-.ad
-.RS 29n
-32-bit kernel driver module
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/audiols\fR\fR
-.ad
-.RS 29n
-64-bit kernel driver module
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for a descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture x86
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBioctl\fR(2), \fBattributes\fR(5), \fBaudio\fR(7I), \fBmixer\fR(7I),
-\fBstreamio\fR(7I)
diff --git a/usr/src/man/man7d/audiop16x.7d b/usr/src/man/man7d/audiop16x.7d
deleted file mode 100644
index fc04871739..0000000000
--- a/usr/src/man/man7d/audiop16x.7d
+++ /dev/null
@@ -1,73 +0,0 @@
-'\" te
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All rights reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH AUDIOP16X 7D "Sep 8, 2009"
-.SH NAME
-audiop16x \- Creative Sound Blaster Live! OEM support
-.SH DESCRIPTION
-.sp
-.LP
-The \fBaudiop16x\fR driver provides support for the Creative Sound Blaster
-Live! products based on the P16X device. These chips are also known as the
-\fBEMU10K1X\fR device, not to be confused with the \fBEMU10K1\fR.
-.sp
-.LP
-Add-in boards known to work with this driver are Sound Blaster Live! cards with
-model numbers SB0200 or SB0213.
-.sp
-.LP
-This device is capable of 5.1 surround sound.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/audiop16x\fR\fR
-.ad
-.sp .6
-.RS 4n
-32-bit kernel driver module
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/audiop16x\fR\fR
-.ad
-.sp .6
-.RS 4n
-64-bit x86 kernel driver module
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/sparcv9/audiop16x\fR\fR
-.ad
-.sp .6
-.RS 4n
-64-bit SPARC kernel driver module
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for a descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture x86, SPARC
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBioctl\fR(2), \fBattributes\fR(5), \fBaudio\fR(7I), \fBmixer\fR(7I),
-\fBstreamio\fR(7I)
diff --git a/usr/src/man/man7d/audiopci.7d b/usr/src/man/man7d/audiopci.7d
deleted file mode 100644
index 116efce9f3..0000000000
--- a/usr/src/man/man7d/audiopci.7d
+++ /dev/null
@@ -1,71 +0,0 @@
-'\" te
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH AUDIOPCI 7D "May 13, 2017"
-.SH NAME
-audiopci \- Ensoniq 1370 driver support
-.SH DESCRIPTION
-.LP
-The \fBaudiopci\fR driver provides support for the Ensoniq 1370 audio
-controller. Ensoniq 1370 chips are found on add-in PCI cards commonly
-identified as Audio PCI and SoundBlaster PCI.
-.SH FILES
-.ne 2
-.na
-\fB\fB/kernel/drv/audiopci\fR\fR
-.ad
-.RS 30n
-32-bit kernel driver module
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/audiopci\fR\fR
-.ad
-.RS 30n
-64-bit x86 kernel driver module
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/sparcv9/audiopci\fR\fR
-.ad
-.RS 30n
-64-bit SPARC kernel driver module
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/audiopci.conf\fR\fR
-.ad
-.RS 30n
-Driver configuration file
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for a description of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-l | l
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture PCI-based systems
-.TE
-
-.SH SEE ALSO
-.LP
-\fBioctl\fR(2), \fBattributes\fR(5), \fBaudio\fR(7I), \fBmixer\fR(7I),
-\fBstreamio\fR(7I)
-.sp
-.LP
-\fICreative Technology Ltd ES1370 Specification\fR
diff --git a/usr/src/man/man7d/audiosolo.7d b/usr/src/man/man7d/audiosolo.7d
deleted file mode 100644
index cabe29ba74..0000000000
--- a/usr/src/man/man7d/audiosolo.7d
+++ /dev/null
@@ -1,56 +0,0 @@
-'\" te
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All rights reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER,
-.\" with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH AUDIOSOLO 7D "Sep 18, 2009"
-.SH NAME
-audiosolo \- ESS Solo-1 audio device support
-.SH DESCRIPTION
-.sp
-.LP
-The \fBaudiosolo\fR driver provides support for the ESS Solo-1 audio device.
-This device is found on certain motherboards and discrete audio cards. It
-supports 16-bit 48 kHZ stereo playback and capture.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/audiosolo\fR\fR
-.ad
-.sp .6
-.RS 4n
-32-bit kernel driver module
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/audiosolo\fR\fR
-.ad
-.sp .6
-.RS 4n
-64-bit kernel driver module
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for a descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture x86
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBioctl\fR(2), \fBattributes\fR(5), \fBaudio\fR(7I), \fBmixer\fR(7I),
-\fBstreamio\fR(7I)
diff --git a/usr/src/man/man7d/audiots.7d b/usr/src/man/man7d/audiots.7d
deleted file mode 100644
index 484231026b..0000000000
--- a/usr/src/man/man7d/audiots.7d
+++ /dev/null
@@ -1,99 +0,0 @@
-'\" te
-.\" Copyright (c) 2009 Sun Microsystems, Inc. All rights reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH AUDIOTS 7D "May 12, 2009"
-.SH NAME
-audiots \- Acer Laboratories Inc. M5451 audio processor interface
-.SH DESCRIPTION
-.sp
-.LP
-The \fBaudiots\fR device uses the ALI M5451 audio processor and an AC-97 Codec
-to implement the audio device interface.
-.sp
-.LP
-The \fBaudiots\fR device provides support for the internal speaker, headphone,
-line out, line in, and microphone.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/sparcv9/audiots\fR\fR
-.ad
-.sp .6
-.RS 4n
-64-bit \fBaudiots\fR driver
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/audiots.conf\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBaudiots\fR driver configuration file
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for a descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture SPARC
-_
-Stability level Uncommitted
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBioctl\fR(2), \fBattributes\fR(5), \fBaudio\fR(7I), \fBmixer\fR(7I),
-\fBstreamio\fR(7I)
-.sp
-.LP
-Acer Laboratories Inc. \fBM5451\fR PCI Audio Processor Technical Specification
-.SH DIAGNOSTICS
-.sp
-.LP
-In addition to being logged, the following messages can appear on the system
-console:
-.sp
-.ne 2
-.na
-\fB\fBplay-interrupts too low\fR\fR
-.ad
-.br
-.na
-\fB\fBrecord-interrupts too low\fR\fR
-.ad
-.RS 30n
-The interrupt rate in \fBaudiots.conf\fR is set too low. It has been reset to
-the rate specified in the message. Update \fBaudiots.conf\fR to a higher
-interrupt rate.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBplay-interrupts too high\fR\fR
-.ad
-.br
-.na
-\fB\fBrecord-interrupts too high\fR\fR
-.ad
-.RS 30n
-The interrupt rate set in \fBaudiots.conf\fR is set too high. It has been reset
-to the rate specified in the message. Update \fBaudiots.conf\fR to a lower
-interrupt rate.
-.RE
-
diff --git a/usr/src/man/man7d/audiovia823x.7d b/usr/src/man/man7d/audiovia823x.7d
deleted file mode 100644
index d4c61f09fa..0000000000
--- a/usr/src/man/man7d/audiovia823x.7d
+++ /dev/null
@@ -1,57 +0,0 @@
-'\" te
-.\" Copyright (c) 2009 Sun Microsystems, Inc. All rights reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH AUDIOVIA823X 7D "May 12, 2009"
-.SH NAME
-audiovia823x \- VIA VT8233, VT8235, and VT8237) support
-.SH DESCRIPTION
-.sp
-.LP
-The \fBaudiovia823\fR\fIx\fR driver provides support for the VIA VT8233,
-VT8235, and VT8237 AC'97 devices found on motherboards with certain VIA chip
-sets.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/audiovia823x\fR\fR
-.ad
-.sp .6
-.RS 4n
-32-bit x86 kernel module
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/audiovia823x\fR\fR
-.ad
-.sp .6
-.RS 4n
-64-bit x86 kernel module
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture x86
-_
-Interface Stability Committed
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBattributes\fR(5), \fBaudio\fR(7I), \fBdsp\fR(7I), \fBmixer\fR(7I)
diff --git a/usr/src/man/man7d/av1394.7d b/usr/src/man/man7d/av1394.7d
deleted file mode 100644
index 53ce958979..0000000000
--- a/usr/src/man/man7d/av1394.7d
+++ /dev/null
@@ -1,85 +0,0 @@
-'\" te
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
-.TH AV1394 7D "Jan 10, 2020"
-.SH NAME
-av1394 \- 1394 audio/video driver
-.SH SYNOPSIS
-.nf
-\fBunit@GUID\fR
-.fi
-
-.SH DESCRIPTION
-The \fBav1394\fR driver implements \fBiec61883\fR(7I) interfaces for IEEE 1394
-compliant devices.
-.SS "Asynchronous Transactions"
-The driver allows applications to act as FCP controllers, but not FCP targets.
-Only \fBIEC61883_FCP_CMD\fR requests can be sent with \fBwrite\fR(2). Only
-\fBIEC61883_FCP_RESP\fR requests can be received with \fBread\fR(2).
-.SS "Isochronous Transactions"
-When the read/write method of is used for transmit, the driver is capable of
-auto-detecting and transmitting SD-DVCR 525/60 and 625/50 streams. See
-\fBiec61883\fR(7I) for details.
-.SH FILES
-.ne 2
-.na
-\fB/dev/av/N/async\fR
-.ad
-.RS 29n
-device node for asynchronous data
-.RE
-
-.sp
-.ne 2
-.na
-\fB/dev/av/N/isoch\fR
-.ad
-.RS 29n
-device node for isochronous data
-.RE
-
-.sp
-.ne 2
-.na
-\fB/kernel/drv/sparcv9/av1394\fR
-.ad
-.RS 29n
-Device driver (SPARC)
-.RE
-
-.sp
-.ne 2
-.na
-\fB/kernel/drv/amd64/av1394\fR
-.ad
-.RS 29n
-Device driver (x86)
-.RE
-
-.SH ATTRIBUTES
-See \fBattributes\fR(5) for a description of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-l | l
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture All
-_
-Interface Stability Committed
-.TE
-
-.SH SEE ALSO
-\fBread\fR(2), \fBwrite\fR(2), \fBattributes\fR(5), \fBhci1394\fR(7D),
-\fBiec61883\fR(7I)
-.sp
-.LP
-\fIIEEE Std 1394-1995 Standard for a High Performance Serial Bus\fR
-.sp
-.LP
-\fIIEC 61883 Consumer audio/video equipment - Digital interface\fR
diff --git a/usr/src/man/man7d/bbc_beep.7d b/usr/src/man/man7d/bbc_beep.7d
deleted file mode 100644
index 55b50c1e03..0000000000
--- a/usr/src/man/man7d/bbc_beep.7d
+++ /dev/null
@@ -1,62 +0,0 @@
-'\" te
-.\" Copyright (c) 2001, Sun Microsystems, Inc.
-.\" All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH BBC_BEEP 7D "Dec 18, 2001"
-.SH NAME
-bbc_beep \- Platform-dependent Beep driver for BBC-based hardware.
-.SH SYNOPSIS
-.LP
-.nf
-beep@unit-address
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBbbc_beep\fR driver generates beeps on platforms (including Sun Blade
-1000) that use BBC-based registers and USB keyboards. When the \fBKIOCCMD\fR
-ioctl is issued to the USB keyboard module (see \fBusbkbm\fR(7M)) with command
-\fBKBD_CMD_BELL/KBD_CMD_NOBELL\fR, \fBusbkbm\fR(7M) passes the request to the
-\fBbbc_beep\fR driver to turn the beep on and off, respectively.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/platform/sun4u/kernel/drv/sparcv9/bbc_beep\fR\fR
-.ad
-.sp .6
-.RS 4n
- 64-bit ELF kernel driver
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See attributes(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture BBC-based SPARC
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBkbd\fR(1), \fBattributes\fR(5), \fBgrbeep\fR(7d), \fBkb\fR(7M),
-\fBusbkbm\fR(7M)
-.sp
-.LP
-\fIWriting Device Drivers\fR
-.SH DIAGNOSTICS
-.sp
-.LP
-None
diff --git a/usr/src/man/man7d/bcm_sata.7d b/usr/src/man/man7d/bcm_sata.7d
deleted file mode 100644
index a536507864..0000000000
--- a/usr/src/man/man7d/bcm_sata.7d
+++ /dev/null
@@ -1,73 +0,0 @@
-'\" te
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH BCM_SATA 7D "Aug 31, 2009"
-.SH NAME
-bcm_sata \- Broadcom HT1000 SATA controller driver
-.SH SYNOPSIS
-.sp
-.LP
-\fBsata@\fR\fIunit-address\fR
-.SH DESCRIPTION
-.sp
-.LP
-The \fBbcm_sata\fR driver is a SATA HBA driver that supports Broadcom HT1000
-SATA HBA controllers.
-.sp
-.LP
-HT1000 SATA controllers are compliant with the Serial ATA 1.0 specification and
-SATA II Phase 1.0 specification (the extension to the SATA 1.0 specification).
-These HT1000 controllers support standard SATA features including SATA-II
-disks, NCQ, hotplug, ATAPI devices and port multiplier.
-.sp
-.LP
-The driver does not currently support NCQ and port multiplier features.
-.SS "Configuration"
-.sp
-.LP
-The \fBbcm_sata\fR module contains no user configurable parameters.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/bcm_sata\fR\fR
-.ad
-.RS 30n
-32-bit ELF kernel module (x86)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/bcm_sata\fR\fR
-.ad
-.RS 30n
-64-bit ELF kernel module (x86)
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for a description of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-l | l
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture x86
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBcfgadm\fR(1M), \fBcfgadm_sata\fR(1M), \fBprtconf\fR(1M),
-\fBattributes\fR(5), \fBsata\fR(7D), \fBsd\fR(7D)
-.sp
-.LP
-\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man7d/bfe.7d b/usr/src/man/man7d/bfe.7d
deleted file mode 100644
index 65007f8999..0000000000
--- a/usr/src/man/man7d/bfe.7d
+++ /dev/null
@@ -1,91 +0,0 @@
-'\" te
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH BFE 7D "Jun 23, 2009"
-.SH NAME
-bfe \- Device driver for Broadcom BCM4401 100Base-T NIC
-.SH DESCRIPTION
-.sp
-.LP
-The \fBbfe\fR Fast Ethernet driver is GLD-based and supports the Broadcom
-BCM4401 100Base-T NIC adapters :\fBpci14e4,170c Broadcom BCM4401 100Base-T.\fR.
-.sp
-.LP
-The \fBbfe\fR driver supports IEEE 802.3 auto-negotiation, flow control and
-VLAN tagging.
-.SS "Configuration"
-.sp
-.LP
-The default configuration is auto-negotiation with bidirectional flow control.
-The advertised capabilities for auto-negotiation are based on the capabilities
-of the \fBPHY\fR.
-.sp
-.LP
-You can set the capabilities advertised by the \fBbfe\fR controlled device
-using \fBdladm\fR(1M). The driver supports only those parameters which begin
-with en (enabled) in the parameters listed by the command \fBdladm\fR(1M). Each
-of these boolean parameters determines if the device advertises that mode of
-operation when the hardware supports it.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/dev/bfe\fR\fR
-.ad
-.RS 25n
-Special character device
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/bfe\fR\fR
-.ad
-.RS 25n
-32-bit device driver (x86)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/bfe\fR\fR
-.ad
-.RS 25n
-64-bit device driver (x86)
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for a description of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-l | l
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture SPARC, x86
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBdladm\fR(1M), \fBnetstat\fR(1M), \fBdriver.conf\fR(4), \fBattributes\fR(5),
-\fBieee802.3\fR(5), \fBdlpi\fR(7P), \fBstreamio\fR(7I)
-.sp
-.LP
-\fIWriting Device Drivers\fR
-.sp
-.LP
-\fISTREAMS Programmer's Guide\fR
-.sp
-.LP
-\fINetwork Interface Guide\fR
-.sp
-.LP
-\fIIEEE 802.3ae Specification - 2002\fR
diff --git a/usr/src/man/man7d/bge.7d b/usr/src/man/man7d/bge.7d
deleted file mode 100644
index d9be2c667f..0000000000
--- a/usr/src/man/man7d/bge.7d
+++ /dev/null
@@ -1,312 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH BGE 7D "Apr 9, 2008"
-.SH NAME
-bge \- SUNW,bge Gigabit Ethernet driver for Broadcom BCM57xx
-.SH SYNOPSIS
-.LP
-.nf
-\fB/dev/bge*\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBbge\fR Gigabit Ethernet driver is a multi-threaded, loadable, clonable,
-GLD-based STREAMS driver supporting the Data Link Provider Interface,
-\fBdlpi\fR(7P), on Broadcom BCM57xx
-(BCM5700/5701/5703/5704/5705/5705M/5714/5721/5751/5751M/5782/5788 on x86)
-Gigabit Ethernet controllers fitted to the system motherboard. With the
-exception of BCM5700/BCM5701/BCM5704S, these devices incorporate both MAC and
-PHY functions and provide three-speed (copper) Ethernet operation on the RJ-45
-connectors. (BCM5700/BCM5701/BCM5704S do not have a PHY integrated into the MAC
-chipset.)
-.sp
-.LP
-The \fBbge\fR driver functions include controller initialization, frame
-transmit and receive, promiscuous and multicast support, and error recovery and
-reporting.
-.sp
-.LP
-The \fBbge\fR driver and hardware support auto-negotiation, a protocol
-specified by the 1000 Base-T standard. Auto-negotiation allows each device to
-advertise its capabilities and discover those of its peer (link partner). The
-highest common denominator supported by both link partners is automatically
-selected, yielding the greatest available throughput, while requiring no manual
-configuration. The \fBbge\fR driver also allows you to configure the advertised
-capabilities to less than the maximum (where the full speed of the interface is
-not required), or to force a specific mode of operation, irrespective of the
-link partner's advertised capabilities.
-.SH APPLICATION PROGRAMMING INTERFACE
-.sp
-.LP
-The cloning character-special device, \fB/dev/bge\fR, is used to access all
-BCM57xx devices ( (BCM5700/5701/5703/5704, 5705/5714/5721/5751/5751M/5782 on
-x86) fitted to the system motherboard.
-.sp
-.LP
-The \fBbge\fR driver is managed by the \fBdladm\fR(1M) command line utility,
-which allows VLANs to be defined on top of bge instances and for \fBbge\fR
-instances to be aggregated. See \fBdladm\fR(1M) for more details.
-.sp
-.LP
-You must send an explicit DL_ATTACH_REQ message to associate the opened stream
-with a particular device (PPA). The PPA ID is interpreted as an unsigned
-integer data type and indicates the corresponding device instance (unit)
-number. The driver returns an error (DL_ERROR_ACK) if the PPA field value does
-not correspond to a valid device instance number for the system. The device is
-initialized on first attach and de-initialized (stopped) at last detach.
-.sp
-.LP
-The values returned by the driver in the DL_INFO_ACK primitive in response to a
-DL_INFO_REQ are:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Maximum SDU (default 1500).
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Minimum SDU (default 0).
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-DLSAP address length is 8.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-MAC type is \fBDL_ETHER\fR.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBSAP\fR length value is \fI-2\fR, meaning the physical address component is
-followed immediately by a 2-byte \fBSAP\fR component within the \fBDLSAP\fR
-address.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Broadcast address value is the Ethernet/IEEE broadcast address
-(FF:FF:FF:FF:FF:FF).
-.RE
-.sp
-.LP
-Once in the DL_ATTACHED state, you must send a DL_BIND_REQ to associate a
-particular Service Access Point (SAP) with the stream.
-.SH CONFIGURATION
-.sp
-.LP
-By default, the \fBbge\fR driver performs auto-negotiation to select the link
-speed and mode. Link speed and mode can be any one of the following, (as
-described in the \fI IEEE803.2\fR standard):
-.RS +4
-.TP
-.ie t \(bu
-.el o
-1000 Mbps, full-duplex
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-1000 Mbps, half-duplex
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-100 Mbps, full-duplex
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-100 Mbps, half-duplex
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-10 Mbps, full-duplex
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-10 Mbps, half-duplex
-.RE
-.sp
-.LP
-The auto-negotiation protocol automatically selects:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Speed (1000 Mbps, 100 Mbps, or 10 Mbps)
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Operation mode (full-duplex or half-duplex)
-.RE
-.sp
-.LP
-as the highest common denominator supported by both link partners. Because the
-\fBbge\fR device supports all modes, the effect is to select the highest
-throughput mode supported by the other device.
-.sp
-.LP
-Alternatively, you can set the capabilities advertised by the \fBbge\fR device
-using \fBdladm\fR(1M). The driver supports a number of parameters whose names
-begin with \fBen_\fR (see below). Each of these parameters contains a boolean
-value that determines whether the device advertises that mode of operation. If
-\fBen_autoneg_cap\fR is set to 0, the driver forces the mode of operation
-selected by the first non-zero parameter in priority order as listed below:
-.sp
-.in +2
-.nf
- (highest priority/greatest throughput)
- en_1000fdx_cap 1000Mbps full duplex
- en_1000hdx_cap 1000Mbps half duplex
- en_100fdx_cap 100Mbps full duplex
- en_100hdx_cap 100Mbps half duplex
- en_10fdx_cap 10Mbps full duplex
- en_10hdx_cap 10Mbps half duplex
- (lowest priority/least throughput)
-.fi
-.in -2
-
-.sp
-.LP
-For example, to prevent the device 'bge2' from advertising gigabit
-capabilities, enter (as super-user):
-.sp
-.in +2
-.nf
-# dladm set-linkprop -p enable_1000hdx_cap=0 bge2
-# dladm set-linkprop -p enable_1000fdx_cap=0 bge2
-.fi
-.in -2
-
-.sp
-.LP
-All capabilities default to enabled. Note that changing any capability
-parameter causes the link to go down while the link partners renegotiate the
-link speed/duplex using the newly changed capabilities.
-.sp
-.LP
-The current settings of the parameters may be found using dladm show-ether. In
-addition, the driver exports the current state, speed, duplex setting, and
-working mode of the link via kstat parameters (these are read only and may not
-be changed). For example, to check link state of device \fBbge0\fR:
-.sp
-.in +2
-.nf
-# dladm show-ether -x bge0
-LINK PTYPE STATE AUTO SPEED-DUPLEX PAUSE
-bge0 current up yes 1G-f bi
--- capable -- yes 1G-fh,100M-fh,10M-fh bi
--- adv -- yes 1G-fh bi
--- peeradv -- yes 1G-f bi
-.fi
-.in -2
-
-.sp
-.LP
-The output above indicates that the link is up and running at 1Gbps full-duplex
-with its rx/tx direction pause capability.
-.sp
-.LP
-To extract link state information for the same link using kstat:
-.sp
-.in +2
-.nf
-# kstat bge:0:mac:link_state
-module: bge instance: 0
-name: mac class: net
-link_state
-.fi
-.in -2
-
-.sp
-.LP
-The default MTU is 1500. To enable Jumbo Frames support, you can configure the
-\fBbge\fR driver by defining the default_mtu property via \fBdladm\fR(1M) or in
-\fBdriver.conf\fR(4) to greater than 1500 bytes (for example:
-default_mtu=9000). Note that the largest jumbo size supported by bge is 9000
-bytes. Additionally, not all bge-derived devices currently support Jumbo
-Frames. The following devices support Jumbo Frames up to 9KB: BCM5700, 5701,
-5702, 5703C, 5703S, 5704C, 5704S, 5714C, 5714S, 5715C and 5715S. Other devices
-currently do not support Jumbo Frames.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/bge*\fR\fR
-.ad
-.RS 27n
-32-bit ELF kernel module. (x86)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/bge\fR\fR
-.ad
-.RS 27n
-64-bit ELF kernel module (x86).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/sparcv9/bge\fR\fR
-.ad
-.RS 27n
-64-bit ELF kernel module (SPARC).
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for a description of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture SPARC, x86
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBdladm\fR(1M), \fBdriver.conf\fR(4), \fBattributes\fR(5), \fBstreamio\fR(7I),
-\fBdlpi\fR(7P)
-.sp
-.LP
-\fIWriting Device Drivers\fR
-.sp
-.LP
-\fISTREAMS Programming Guide\fR
-.sp
-.LP
-\fINetwork Interfaces Programmer's Guide\fR
diff --git a/usr/src/man/man7d/blkdev.7d b/usr/src/man/man7d/blkdev.7d
deleted file mode 100644
index 8ff6f4745e..0000000000
--- a/usr/src/man/man7d/blkdev.7d
+++ /dev/null
@@ -1,82 +0,0 @@
-.\"
-.\" This file and its contents are supplied under the terms of the
-.\" Common Development and Distribution License ("CDDL"), version 1.0.
-.\" You may only use this file in accordance with the terms of version
-.\" 1.0 of the CDDL.
-.\"
-.\" A full copy of the text of the CDDL should have accompanied this
-.\" source. A copy of the CDDL is also available via the Internet at
-.\" http://www.illumos.org/license/CDDL.
-.\"
-.\" Copyright 2014 Garrett D'Amore <garrett@damore.org>
-.
-.Dd "Jul 30, 2014"
-.Dt BLKDEV 7D
-.Os
-.Sh NAME
-.Nm blkdev
-.Nd generic block device driver
-.Sh DESCRIPTION
-The
-.Nm
-driver supports generic block-oriented devices, such as non-volatile
-memory storage devices.
-It provides a hardware independent layer for such storage devices, allowing them
-to concentrate on the hardware-specific details, while
-.Nm
-takes care of all the other details, such as
-.Xr dkio 7I .
-.Lp
-The
-.Nm
-driver only supports block-oriented, random-access devices.
-It does not support traditional rotational media and does not support
-SCSI commands.
-.Lp
-The most typical use case for
-.Nm
-devices is to be used to host a file system, such as
-.Xr pcfs 7FS
-or
-.Xr zfs 7FS .
-.
-.Sh INTERFACE STABILITY
-.Sy Uncommitted .
-.
-.Sh FILES
-.
-.Bl -tag -compact -width Pa
-.It Pa /dev/dsk/cndnsn
-Block device minor nodes.
-.It Pa /dev/rdsk/cndnsn
-Raw block device minor nodes.
-.El
-.Lp
-In the above, the following substitutions may occur:
-.Bl -tag -offset indent -width Va
-.It Va cn
-A controller number, typically one for each instance of
-each underlying hardware dependent device driver (there can be multiple
-such drivers in the system.) Controller numbers are dynamically assigned
-by the system.
-.It Va dn
-Generally, each instance of the underlying hardware will have a
-logical unit number as well.
-.It Va sn
-This is the
-.Em slice
-number, representing a subset of the disk.
-See
-.Xr dkio 7I .
-.El
-.
-.Sh SEE ALSO
-.Xr rmformat 1 ,
-.Xr devinfo 1M ,
-.Xr fdisk 1M ,
-.Xr mount 1M ,
-.Xr umount 1M ,
-.Xr sd 7D ,
-.Xr pcfs 7FS ,
-.Xr zfs 7FS ,
-.Xr dkio 7I
diff --git a/usr/src/man/man7d/bnxe.7d b/usr/src/man/man7d/bnxe.7d
deleted file mode 100644
index 0696dc6c47..0000000000
--- a/usr/src/man/man7d/bnxe.7d
+++ /dev/null
@@ -1,153 +0,0 @@
-.\"
-.\" This file and its contents are supplied under the terms of the
-.\" Common Development and Distribution License ("CDDL"), version 1.0.
-.\" You may only use this file in accordance with the terms of version
-.\" 1.0 of the CDDL.
-.\"
-.\" A full copy of the text of the CDDL should have accompanied this
-.\" source. A copy of the CDDL is also available via the Internet at
-.\" http://www.illumos.org/license/CDDL.
-.\"
-.\"
-.\" Copyright (c) 2014 QLogic Corporation. All Rights Reserved
-.\"
-.TH BNXE 7D "Jan 10, 2020"
-.SH NAME
-bnxe \- QLogic NetXtreme II 10 Gigabit Ethernet Device Driver
-
-.SH SYNOPSIS
-.na
-/dev/bnxe*
-.ad
-
-.SH DESCRIPTION
-The
-.B bnxe
-Ethernet driver is a multi-threaded, loadable,
-clonable, GLDv3-based driver supporting the Data Link Provider Interface,
-.BR dlpi (7P),
-over QLogic NetXtreme II 10 Gigabit Ethernet controllers. Multiple
-NetXtreme II controllers installed within the system are supported by
-the driver.
-
-The
-.B bnxe
-driver provides support for the NetXtreme II 10 Gigabit line of devices.
-Functions include chip initialization, frame transmit and receive,
-multicast and promiscuous support, error recovery and reporting. These
-devices provide 10/100/1000/2500/10000 Mbps networking interfaces.
-
-.SH DRIVER CONFIGURATION
-
-The primary methods of configuration are via modification of the
-.I /kernel/drv/bnxe.conf
-file or execution of the
-.BR dladm (1M)
-utility. There are many configuration items available and all are thoroughly
-documented in the
-.I /kernel/drv/bnxe.conf
-file. Note that for
-changes to this file to take affect the driver must be reloaded or the system
-rebooted. In order to reload the driver with new configuration changes all
-.B bnxe
-interfaces must be first unplumbed and then the
-.BR update_drv (1M)
-tool must be executed. For the configuration items that do not require a
-driver reload the
-.BR dladm (1M)
-tool can be used to dynamically change the option.
-
-.SH DEBUGGING
-
-.SS kstat
-
-There are many statistics exposed via
-.B kstat
-by
-.BR bnxe .
-
-The main groups are:
-.TP
-"intr"
-for interrupts stats
-.TP
-"l2chip"
-for layer 2 chip stats,
-.TP
-"l2driver"
-for layer 2 driver stats,
-.TP
-"l2stats"
-for general layer 2 stats,
-.TP
-"link"
-for detailed link status,
-.TP
-"mac"
-for GLDv3 MAC layer stats,
-.TP
-"rxq#"
-for Rx ring stats,
-.TP
-"txq#"
-for Tx ring stats, and
-.TP
-"stats"
-for general driver stats and version info.
-.LP
-To get a list of all the individual statistics in these groups run:
-.na
-% kstat -m bnxe -i 0 -l
-.ad
-
-.SH FILES
-.ne 2
-.na
-/dev/bnxe[instance]
-.ad
-.RS 16n
-.B bnxe
-Character special device
-.RE
-
-.sp
-.ne 2
-.na
-/kernel/drv/bnxe.conf
-.ad
-.RS 16n
-Driver configuration file
-.RE
-
-.sp
-.ne 2
-.na
-/kernel/drv/amd64/bnxe
-.ad
-.RS 16n
-Device driver (x86)
-.RE
-
-.sp
-.ne 2
-.na
-/kernel/drv/sparcv9/bnxe
-.ad
-.RS 16n
-Device driver (SPARC)
-.RE
-
-.SH SEE ALSO
-.BR dladm (1M),
-.BR netstat (1M),
-.BR ifconfig (1M),
-.BR driver.conf (4),
-.BR gld (7P)
-.LP
-.I QLogic NetXtreme II 10 Gigabit Adapter Driver Installation Notes
-.LP
-.I Writing Device Drivers
-.LP
-.I STREAMS Programming Guide
-.LP
-.I Network Interfaces Guide
diff --git a/usr/src/man/man7d/ccid.7d b/usr/src/man/man7d/ccid.7d
deleted file mode 100644
index f5158b0d0d..0000000000
--- a/usr/src/man/man7d/ccid.7d
+++ /dev/null
@@ -1,558 +0,0 @@
-.\"
-.\" This file and its contents are supplied under the terms of the
-.\" Common Development and Distribution License ("CDDL"), version 1.0.
-.\" You may only use this file in accordance with the terms of version
-.\" 1.0 of the CDDL.
-.\"
-.\" A full copy of the text of the CDDL should have accompanied this
-.\" source. A copy of the CDDL is also available via the Internet at
-.\" http://www.illumos.org/license/CDDL.
-.\"
-.\"
-.\" Copyright 2019 Joyent, Inc.
-.\"
-.Dd December 20, 2019
-.Dt CCID 7D
-.Os
-.Sh NAME
-.Nm ccid
-.Nd chip card interface device USB client class driver
-.Sh SYNOPSIS
-.In sys/usb/clients/ccid/uccid.h
-.Sh INTERFACE LEVEL
-.Sy Volatile
-.Pp
-The interfaces provided by this driver are private at this time and
-subject to change.
-It should not be relied upon.
-.Sh DESCRIPTION
-The
-.Nm
-driver is a USB CCID (chip card interface device) class device driver.
-.Pp
-The driver exposes interfaces that allow consumers to send and receive
-APDUs (application protocol data unit) to a given smart card that is
-plugged into a reader.
-The driver also provides interfaces to obtain status information, the
-ATR (answer to reset), and obtain exclusive access to the device.
-In addition, the system exposes control of CCID devices through
-.Xr cfgadm 1M .
-.Ss Supported Devices
-The CCID specification allows for readers to come in different flavors.
-These different flavors support different communication protocols and
-have different levels of automation for determining the protocol and
-transfers that are required.
-.Pp
-At this time, only the short APDU protocol is supported, which also works with
-readers using the extended APDU protocol.
-TPDU and character level readers are not supported by the driver.
-Readers in this category will still attach; however,
-I/O cannot be performed to them.
-.Pp
-In addition, at this time the driver does not support devices which
-require manually setting the clock and data rates to support an ICC.
-.Ss Device Model
-Each CCID class device provides a number of slots.
-Each slot may have an independent ICC (integrated circuit card or Smart
-Card) inserted into it.
-Each device, or reader, has its own directory under
-.Pa /dev/ccid
-based on its device number.
-Inside of each directory is a character device for each slot.
-A slot exists regardless of whether or not an ICC is inserted into it.
-As long as a CCID device is present in the system, its device nodes will
-be present.
-.Pp
-Slots are enumerated using this pattern:
-.Pa /dev/ccid/ccid%instance/slot%slot .
-.Pp
-For example, all the slots that belong to CCID instance 5 will be
-enumerated under the directory
-.Pa /dev/ccid/ccid5 .
-Slots are numbered starting at zero for each reader and increment from
-there.
-For example, the second physical slot would be numbered as slot one.
-If this were on CCID instance zero, then we would find a character
-device at:
-.Pa /dev/ccid/ccid0/slot1 .
-.Pp
-To enumerate all of the ccid devices present on the system, one could
-read all of the directories under
-.Pa /dev/ccid .
-To enumerate all of the slots on a device, one could read all of the
-device nodes under a particular CCID device, such as:
-.Pa /dev/ccid/ccid0 .
-The number of slots is also obtainable through various ioctls that will
-be discussed later on.
-It's important to note that while slot numbering will always be
-consistent for a given device, the CCID numbering is based on the driver
-instance.
-Therefore, it is possible for a device to change device numbers.
-To deal with this, symlinks based on other properties will be provided
-(for example, the USB serial number).
-.Pp
-All of the CCID devices in the system can also be listed by using the
-.Xr ccidadm 1M
-command.
-.Ss I/O Model
-To send and receive responses to commands, a program must open up the
-corresponding slot's device node.
-In many of the commands that use an ICC, there is a logical notion of
-state associated with the ICC that is mutated by performing commands on
-it.
-For example, a command might be issued that uses a PIN to unlock a slot
-or that selects a particular PIV applet for use.
-Because of this, all I/O to a given device must be performed inside the
-context of a transaction.
-When a program begins a transaction, it is guaranteed that no one else
-may send commands to the ICC.
-When a program is finished, it must explicitly end the transaction,
-which may have the side effect of resetting the ICC.
-If a program with an open transaction crashes or closes the file
-descriptor without taking other actions, then the transaction will be
-automatically closed and the ICC will be reset.
-Without a transaction open, it will still be possible to issue ioctls
-that obtain the status of the slot and the reader.
-.Pp
-While in an active transaction, a program may send commands to a card.
-Sending a command and reading a response are done through the
-traditional
-.Xr read 2
-and
-.Xr write 2
-family of system calls.
-To submit a command, the program would issue a
-.Xr write 2
-family system call that contained the payload to send to the ICC.
-Once submitted, the call would return and the program would be able to
-issue a
-.Xr read 2
-system call to obtain the results.
-Once a command has been submitted, it is illegal to submit another one.
-The next command cannot be submitted until the response has been fully
-consumed.
-Similarly, if a command has not been submitted, one cannot issue a
-.Xr read 2
-system call to obtain results.
-Only a single thread may be blocked waiting to submit a command or
-read a response.
-.Pp
-To facilitate non-blocking operation, the underlying file descriptor may
-be opened with
-.Dv O_NONBLOCK .
-.Pp
-While a transaction is active,
-.Xr poll 2
-may be used to receive status information about the slot.
-The following events are used by
-.Nm :
-.Bl -tag -width POLLRDNORM
-.It Dv POLLOUT
-The device is ready to receive a command using
-.Xr write 2 .
-.It Dv POLLIN, POLLRDNORM
-The device has completed a command the results may be retrieved with
-.Xr read 2 .
-.It Dv POLLHUP
-The card has been removed from the slot.
-.It Dv POLLERR
-An hardware error has occurred, or the CCID reader has been disconnected.
-.El
-.Pp
-One important note is that readers with multiple slots often still only
-allow I/O a single command to be outstanding across all of the slots in
-the system.
-Because transactions are on a per-slot basis, it is still possible for a
-command submission to block even though one has a transaction open.
-.Pp
-While a transaction is open, various events can occur that cause a fatal
-error on the transaction.
-These include:
-.Bl -bullet -offset indent
-.It
-USB CCID reader removed
-.It
-ICC removed
-.It
-A fatal error while communicating to the device
-.It
-An administrator issued an ioctl to power off or reset the ICC
-.El
-.Pp
-Once such a fatal error has occurred, all new I/O will fail though it
-will still be possible to read any successfully completed commands.
-To clear the error state the program will need to end the transaction
-and begin a new one or close the file descriptor if the device has been
-removed.
-.Ss Opening Devices, Exclusive Access, and Performing I/O
-To perform I/O to a particular card, one must first open the slot of
-interest.
-Opening the slot requires that the process be in the global zone and
-that it have the privilege
-.Sy PRIV_SYS_DEVICES .
-The device node can be opened through the
-.Xr open 2
-or
-.Xr openat 2
-system calls.
-For programs that just want to query the slot status using the
-.Dv UCCID_CMD_STATUS
-command, opening the device node read-only is sufficient.
-All other uses require that the device be opened both for reading and
-writing
-.Po Dv O_RDWR Pc .
-.Pp
-Once the device has been opened, the program may issue ioctls to get
-status information.
-.Pp
-To perform general I/O to the card, a program must be in the context of
-a transaction as discussed in the
-.Sx I/O Model
-section.
-To open a transaction, a program must issue the
-.Dv UCCID_CMD_TXN_BEGIN
-command through the
-.Xr ioctl 2
-system call.
-.Pp
-When a program is done, it must issue the
-.Dv UCCID_CMD_TXN_END
-command to release the transaction.
-As part of issuing the command, the program must determine a disposition
-of what it would like done with the card when it has completed.
-These options include leaving the ICC alone and resetting the ICC.
-For many use cases, such as those where a pin is entered or the ICC's
-state is mutated, a reset is the recommended option.
-If the program crashes or closes the file descriptor without issuing a
-transaction end, then the ICC will be reset.
-.Pp
-Please see the ioctl listing in the
-.Sx IOCTLS
-section for more information on the command structure.
-.Pp
-If a multi-threaded application opens a slot once and shares it among multiple
-threads performing I/O to that slot, there can still only be one transaction
-active or waiting on the slot shared by all threads.
-Acquiring another transaction on the same slot minor while another thread is
-already blocked waiting for one will return
-.Dv EINPROGRESS .
-If another transaction is already active,
-.Dv EINVAL
-will be returned.
-Consequently, all threads in a multi-threaded application share the transaction
-state and may issue writes, and read the results.
-The same applies to any other method of sharing an open file descriptor of a slot
-minor, be it by sharing the fd over a socket, a child process inheriting it from
-its parent during
-.Xr fork 2 ,
-even across calls to
-.Xr exec 2 .
-.Ss Device Status and ATR
-Once a slot has been opened, any caller may issue commands to get the
-status of the slot.
-This can also be used to obtain the ATR (answer to reset) of an ICC that
-is present on the slot, if it is known.
-.Pp
-While exclusive access is not required to issue these commands, there is
-no guarantee that they will not have changed between the time that the
-program issued the command and it obtains a transaction.
-.Pp
-To obtain information about the reader, slot, and the ATR, one should
-issue the
-.Dv UCCID_CMD_STATUS
-command.
-Please see the ioctl listing in the
-.Sx IOCTLS
-section for more information.
-.Sh IOCTLS
-This section lists the different commands that may be issued to a CCID
-device through the
-.Xr ioctl 2
-system call.
-.Ss Ic UCCID_CMD_STATUS
-This command is used to obtain the status of the slot.
-It may be used regardless of whether or not the caller has exclusive access.
-.Pp
-The
-.Ic UCCID_CMD_STATUS
-command uses the structure
-.Vt uccid_cmd_status_t ,
-the fields of which have the following meanings:
-.Bl -tag -width Fa
-.It Fa uint32_t ucs_version
-Indicates the current version of the structure.
-This should be set to
-.Dv UCCID_CURRENT_VERSION .
-.It Fa uint32_t ucs_status
-This value is ignored when issuing the command.
-On return, it will be filled in with various flags that describe the
-current status of the slot and the contents returned in the
-.Vt uccid_cmd_status_t .
-The following flags are defined:
-.Bl -tag -width Dv
-.It Dv UCCID_STATUS_F_CARD_PRESENT
-A card has been inserted into the slot of the CCID class device.
-.It Dv UCCID_STATUS_F_CARD_ACTIVE
-The inserted card has been successfully activated.
-This will only be set if the
-.Dv UCCID_STATUS_F_CARD_PRESENT
-flag is also set.
-.It Dv UCCID_STATUS_F_PRODUCT_VALID
-The contents of
-.Fa ucs_product
-are valid.
-.It Dv UCCID_STATUS_F_SERIAL_VALID
-The contents of
-.Fa ucs_serial
-are valid.
-.It Dv UCCID_STATUS_F_PARAMS_VALID
-The parameters returned in
-.Fa ucs_params
-are valid.
-.El
-.It Fa int32_t ucs_instance
-The instance number of the CCID device.
-.It Fa uint32_t ucs_slot
-The slot number currently in use.
-.It Fa uint8_t ucs_atr[UCCID_ATR_MAX]
-The ATR (answer to reset) of the card.
-.It Fa uint8_t ucs_atrlen
-The actual length of the ATR data.
-A length of 0 indicates that there is no ATR data.
-.It Fa int8_t ucs_product[256]
-The product string of the CCID device.
-.It Fa int8_t ucs_serial[256]
-The serial number of the CCID device.
-.It Fa ccid_class_descr_t ucs_class
-The CCID class descriptor of the CCID device.
-.It Fa uccid_prot_t ucs_prot
-The protocol in use by the ICC.
-This can be either
-.Dv UCCID_PROT_T0
-for the TPDU T=0 protocol or
-.Dv UCCID_PROT_T1
-for the TPDU T=1 protocol.
-.It Fa ccid_params_t ucs_params
-The CCID parameters available on the card.
-.El
-.Ss Ic UCCID_CMD_TXN_BEGIN
-This command is used to begin a transaction.
-The command will block until exclusive access is available to the
-caller.
-If the caller does not wish to block, it should set the
-.Dv UCCID_TXN_DONT_BLOCK
-flag.
-.Pp
-The command uses the structure
-.Vt uccid_cmd_txn_begin_t
-with the following members:
-.Bl -tag -width Fa
-.It Fa uint32_t ucs_version
-Indicates the current version of the structure.
-This should be set to
-.Dv UCCID_CURRENT_VERSION .
-.It Fa uint32_t uct_flags
-Flags that impact the behavior of the command.
-The following flags are defined:
-.Bl -tag -width Dv
-.It Dv UCCID_TXN_DONT_BLOCK
-The command should not block for exclusive access.
-If exclusive access is not available, then the command will fail
-immediately.
-.El
-.Pp
-If an unknown flag is specified, an error will be returned.
-.El
-.Ss Ic UCCID_CMD_TXN_END
-The
-.Dv UCCID_CMD_TXN_END
-command is used to end a transaction and relinquish exclusive access
-to the ICC.
-.Pp
-The command uses the structure
-.Vt uccid_cmd_txn_end_t
-with the following members:
-.Bl -tag -width Fa
-.It Fa uint32_t uct_version
-Indicates the current version of the structure.
-This should be set to
-.Dv UCCID_CURRENT_VERSION .
-.It Fa uint32_t uct_flags
-.Bl -tag -width Dv
-.It Dv UCCID_TXN_END_RESET
-The ICC should be reset at the end of the transaction.
-.It Dv UCCID_TXN_END_RELEASE
-The ICC should be released without being reset at the end of the
-transaction.
-.El
-.Pp
-Exactly one of these two flags must be specified.
-It is an error if neither flag or both flags are specified at the same
-time.
-If the device is closed without ending a transaction first, then the ICC
-will be reset.
-.El
-.Ss Ic UCCID_CMD_ICC_MODIFY
-This command can be used to change the state of an ICC, if present.
-.Pp
-The command uses the structure
-.Vt uccid_cmd_icc_modify_t
-with the following members:
-.Bl -tag -width Fa
-.It Fa uint32_t uci_version
-Indicates the current version of the structure.
-This should be set to
-.Dv UCCID_CURRENT_VERSION .
-.It Fa uint32_t uci_action
-The action to be taken on the ICC.
-The following actions are defined:
-.Bl -tag -width Dv
-.It Dv UCCID_ICC_POWER_ON
-Power on the ICC.
-.It Dv UCCID_ICC_POWER_OFF
-Power off the ICC.
-.It Dv UCCID_ICC_WARM_RESET
-Perform a warm reset of the ICC.
-.El
-.El
-.Ss Ic FIONREAD
-This command returns the size in bytes of a command response available
-for reading with
-.Xr read 2 .
-The size is returned in an
-.Vt int
-pointed to by the argument.
-.Sh SYSTEM CALLS
-This section lists the different system calls that may be issued to a
-CCID device.
-.Ss Xr open 2
-.Nm
-slot device nodes can be opened using
-.Xr open 2 .
-Non-blocking operation can be selected by using the
-.Dv O_NONBLOCK
-flag when opening the device node.
-A device node opened for read-only operations will not allow creating
-transactions or doing I/O, but it will allow the ICC/reader status to
-be queried.
-.Ss Xr close 2
-When no longer needed by a program, a device node can be closed with
-.Xr close 2 .
-If a transaction is still active when a device node is closed, the transaction
-will be ended automatically and the ICC will be reset.
-Any unread data is discarded.
-.Ss Xr ioctl 2
-The
-.Xr ioctl 2
-system call can be used to start or end a transaction, query the reply size for
-.Xr read 2 ,
-query the ICC and CCID reader status, or change the state of an ICC in a reader.
-See section
-.Sx IOCTLS
-for details.
-.Ss Xr write 2
-Within an active transaction the
-.Xr write 2
-system call can be used to transfer an APDU (application protocol data unit) to
-an ICC, one single complete APDU at a time.
-Partial writes or writing more than one APDU at a time are not supported.
-The data returned by the ICC must be consumed by a subsequent
-.Xr read 2
-call before
-.Xr write 2
-can be called again within the same transaction.
-.Pp
-The following errors for
-.Xr write 2
-have specific meaning in
-.Nm :
-.Bl -tag -width Dv
-.It Dv E2BIG
-The number of bytes to write is larger than the maximum APDU length supported by
-.Nm ,
-currently defined as 261 bytes.
-.It Dv EACCES
-The device is opened read-only, or no transaction is active.
-.It Dv EBUSY
-There is unread data from a previous call to
-.Xr write 2 .
-.It Dv ENOTSUP
-The reader and/or ICC is unsupported for I/O.
-.It Dv ENXIO
-The ICC is inactive and can't be used for I/O.
-.It Dv ENODEV
-The CCID reader has been disconnected.
-.El
-.Ss Xr read 2
-Within an active transaction the
-.Xr read 2
-system call is used to read the reply from an ICC following sending an APDU with
-.Xr write 2 .
-The whole reply needs to be read with a single call to
-.Xr read 2 .
-The size of the reply can be queried before reading by issuing the
-.Dv FIONREAD
-ioctl.
-See section
-.Sx IOCTLS
-for details.
-.Pp
-The following errors for
-.Xr read 2
-have specific meaning in
-.Nm :
-.Bl -tag -width Dv
-.It Dv EACCES
-No transaction is active.
-.It Dv EBUSY
-Another thread is already blocked in
-.Xr read 2
-waiting for data.
-.It Dv EOVERFLOW
-The buffer size is too small to fit the reply.
-.It Dv ENODATA
-No
-.Xr write 2
-was issued before and consequently there is no reply to be read.
-.It Dv ENODEV
-The CCID reader has been disconnected.
-.El
-.Ss Xr poll 2
-Within an active transaction the
-.Xr poll 2
-system call is used to wait for status changes on a device node.
-See section
-.Sx I/O model
-for details.
-.Pp
-The following errors for
-.Xr poll 2
-have specific meaning in
-.Nm :
-.Bl -tag -width Dv
-.It Dv EACCES
-No transaction is active.
-.It Dv ENODEV
-The CCID reader has been disconnected.
-.El
-.Sh SEE ALSO
-.Xr ccidadm 1M ,
-.Xr cfgadm 1M ,
-.Xr close 2 ,
-.Xr ioctl 2 ,
-.Xr open 2 ,
-.Xr poll 2 ,
-.Xr read 2 ,
-.Xr write 2
-.Rs
-.%T Universal Serial Bus Device Class: Smart Card CCID
-.%O Revision 1.1
-.%D April 22, 2005
-.Re
-.Rs
-.%Q ISO/IEC
-.%B Identification Cards - Integrated Circuits
-.%N Part 3: Cards with contacts — Electrical interface and transmission protocols
-.%O ISO/IEC 7616-3:2006
-.%D 2006
-.Re
diff --git a/usr/src/man/man7d/chxge.7d b/usr/src/man/man7d/chxge.7d
deleted file mode 100644
index 05db2a4bde..0000000000
--- a/usr/src/man/man7d/chxge.7d
+++ /dev/null
@@ -1,130 +0,0 @@
-'\" te
-.\" Copyright (c) 2005, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH CHXGE 7D "Jan 17, 2005"
-.SH NAME
-chxge \- Chelsio Ethernet network interface controllers
-.SH SYNOPSIS
-.LP
-.nf
-/dev/chxge
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBchxge\fR Ethernet driver is a multi-threaded, loadable, clonable,
-STREAMS hardware driver supporting the connectionless Data Link Provider
-Interface, \fBdlpi\fR(7P), over Chelsio NIC controllers. Multiple (and mixed)
-NIC controllers installed within the system are supported by the driver. The
-\fBchxge\fR driver provides basic support for the NIC hardware. Functions
-include chip initialization, frame transmit and receive, and error recovery and
-reporting.
-.SH APPLICATION PROGRAMMING INTERFACE
-.sp
-.LP
-The cloning, character-special device \fB/dev/chxge\fR is used to access NIC
-devices installed within the system.
-.SH CHXGE AND DLPI
-.sp
-.LP
-The \fBchxge\fR driver is dependent on \fB/kernel/misc/gld\fR, a loadable
-kernel module that provides the \fBchxge\fR driver with the DLPI and STREAMS
-functionality required of a LAN driver. See \fBgld\fR(7D) for more details on
-the primitives supported by the driver.
-.sp
-.LP
-The values returned by the driver in the DL_INFO_ACK primitive in response to
-the DL_INFO_REQ are:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Default Maximum SDU is 1500 (ETHERMTU).
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-dlsap address length is 8.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-MAC type is DL_ETHER.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The sap length value is -2, meaning the physical address component is
-followed immediately by a 2-byte sap component within the DLSAP address.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Broadcast address value is Ethernet/IEEE broadcast address
-(FF:FF:FF:FF:FF:FF).
-.RE
-.SH FILES
-.sp
-.ne 2
-.na
-\fB/dev/chxge\fR
-.ad
-.RS 29n
-Character special device.
-.RE
-
-.sp
-.ne 2
-.na
-\fB/kernel/drv/sparcv9/chxge\fR
-.ad
-.RS 29n
-SPARC chxge driver binary.
-.RE
-
-.sp
-.ne 2
-.na
-\fB/kernel/drv/chxge\fR
-.ad
-.RS 29n
-x86 platform kernel module. (32-bit).
-.RE
-
-.sp
-.ne 2
-.na
-\fB/kernel/drv/amd64/chxge\fR
-.ad
-.RS 29n
-x86 platform kernel module. (64-bit).
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture SPARC, x86
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBnetstat\fR(1M), \fBattributes\fR(5), \fBgld\fR(7D), \fBdlpi\fR(7P),
-\fBgld\fR(9F), \fBgld_mac_info\fR(9S)
diff --git a/usr/src/man/man7d/cmdk.7d b/usr/src/man/man7d/cmdk.7d
deleted file mode 100644
index 92c90ff360..0000000000
--- a/usr/src/man/man7d/cmdk.7d
+++ /dev/null
@@ -1,143 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH CMDK 7D "Nov 4, 2008"
-.SH NAME
-cmdk \- common disk driver
-.SH SYNOPSIS
-.LP
-.nf
-cmdk@\fItarget\fR, \fIlun\fR : [ \fIpartition\fR \fB|\fR \fIslice\fR ]
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBcmdk\fR device driver is a common interface to various disk devices. The
-driver supports magnetic fixed disks and magnetic removable disks.
-.sp
-.LP
-The \fBcmdk\fR device driver supports three different disk labels: fdisk
-partition table, Solaris x86 VTOC and EFI/GPT.
-.sp
-.LP
-The block-files access the disk using the system's normal buffering mechanism
-and are read and written without regard to physical disk records. There is also
-a "raw" interface that provides for direct transmission between the disk and
-the user's read or write buffer. A single read or write call usually results in
-one I/O operation; raw I/O is therefore considerably more efficient when many
-bytes are transmitted. The names of the block files are found in
-\fB/dev/dsk\fR. Raw file names are found in \fB/dev/rdsk\fR.
-.sp
-.LP
-I/O requests to the magnetic disk must have an offset and transfer length that
-is a multiple of 512 bytes or the driver returns an \fBEINVAL\fR error.
-.sp
-.LP
-Slice 0 is normally used for the root file system on a disk, slice 1 as a
-paging area (for example, swap), and slice 2 for backing up the entire fdisk
-partition for Solaris software. Other slices may be used for \fBusr\fR file
-systems or system reserved area.
-.sp
-.LP
-The fdisk partition 0 is to access the entire disk and is generally used by the
-\fBfdisk\fR(1M) program.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/dev/dsk/c\fR\fIn\fR\fBd\fR\fIn\fR[\fBs\fR|\fBp\fR]\fIn\fR\fR
-.ad
-.RS 26n
-block device (IDE)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/rdsk/c\fR\fIn\fR\fBd\fR\fIn\fR[\fBs\fR|\fBp\fR]\fIn\fR\fR
-.ad
-.RS 26n
-raw device (IDE)
-.sp
-where:
-.sp
-.ne 2
-.na
-\fB\fBc\fR\fIn\fR\fR
-.ad
-.RS 6n
-controller \fIn\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBd\fR\fIn\fR\fR
-.ad
-.RS 6n
-lun \fIn (0-1)\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBs\fR\fIn\fR\fR
-.ad
-.RS 6n
-UNIX system slice \fIn (0-15).\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBp\fR\fIn\fR\fR
-.ad
-.RS 6n
-fdisk partition (0-36).
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/cmdk\fR\fR
-.ad
-.RS 26n
-32-bit kernel module.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/cmdk\fR\fR
-.ad
-.RS 26n
-64-bit kernel module.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture x86
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBfdisk\fR(1M), \fBmount\fR(1M), \fBlseek\fR(2), \fBread\fR(2),
-\fBwrite\fR(2), \fBreaddir\fR(3C), \fBscsi\fR(4), \fBvfstab\fR(4),
-\fBattributes\fR(5), \fBdkio\fR(7I)
diff --git a/usr/src/man/man7d/console.7d b/usr/src/man/man7d/console.7d
deleted file mode 100644
index d372831b92..0000000000
--- a/usr/src/man/man7d/console.7d
+++ /dev/null
@@ -1,52 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 1997, Sun Microsystems, Inc.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH CONSOLE 7D "Apr 23, 1999"
-.SH NAME
-console \- STREAMS-based console interface
-.SH SYNOPSIS
-.LP
-.nf
-\fB/dev/console\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The file \fB/dev/console\fR refers to the system console device.
-\fB/dev/console\fR should be used for interactive purposes only. Use of
-\fB/dev/console\fR for logging purposes is discouraged; \fBsyslog\fR(3C) or
-\fBmsglog\fR(7D) should be used instead.
-.sp
-.LP
-The identity of this device depends on the \fBEEPROM\fR or \fBNVRAM\fR settings
-in effect at the most recent system reboot; by default, it is the ``workstation
-console'' device consisting of the workstation keyboard and frame buffer acting
-in concert to emulate an \fBASCII\fR terminal (see \fBwscons\fR(7D)).
-.sp
-.LP
-Regardless of the system configuration, the console device provides
-asynchronous serial driver semantics so that, in conjunction with the
-\fBSTREAMS\fR line discipline module \fBldterm\fR(7M), it supports the
-\fBtermio\fR(7I) terminal interface.
-.SH SEE ALSO
-.sp
-.LP
-\fBsyslog\fR(3C), \fBtermios\fR(3C), \fBldterm\fR(7M), \fBtermio\fR(7I),
-\fBmsglog\fR(7D), \fBwscons\fR(7D)
-.SH NOTES
-.sp
-.LP
-In contrast to pre-SunOS 5.0 releases, it is no longer possible to redirect I/O
-intended for \fB/dev/console\fR to some other device. Instead, redirection now
-applies to the workstation console device using a revised programming interface
-(see \fBwscons\fR(7D)). Since the system console is normally configured to be
-the work station console, the overall effect is largely unchanged from previous
-releases.
-.sp
-.LP
-See \fBwscons\fR(7D) for detailed descriptions of control sequence syntax,
-\fBANSI\fR control functions, control character functions and escape sequence
-functions.
diff --git a/usr/src/man/man7d/coretemp.7d b/usr/src/man/man7d/coretemp.7d
deleted file mode 100644
index d194d02fde..0000000000
--- a/usr/src/man/man7d/coretemp.7d
+++ /dev/null
@@ -1,49 +0,0 @@
-.\"
-.\" This file and its contents are supplied under the terms of the
-.\" Common Development and Distribution License ("CDDL"), version 1.0.
-.\" You may only use this file in accordance with the terms of version
-.\" 1.0 of the CDDL.
-.\"
-.\" A full copy of the text of the CDDL should have accompanied this
-.\" source. A copy of the CDDL is also available via the Internet at
-.\" http://www.illumos.org/license/CDDL.
-.\"
-.\"
-.\" Copyright 2019, Joyent, Inc.
-.\"
-.Dd January 10, 2020
-.Dt CORETEMP 7D
-.Os
-.Sh NAME
-.Nm coretemp
-.Nd Intel core-family temperature sensor driver
-.Sh SYNOPSIS
-.Pa /dev/sensors/temperature/cpu/*
-.Sh DESCRIPTION
-The
-.Nm
-driver provides the system with a means of reading the per-core and,
-when available, per-package digital temperature sensors on Intel CPUs.
-Currently, the
-.Nm
-driver supports Intel Core family processors after Penryn
-microarchitecture and Intel Atom processors starting with the Silvermont
-microarchitecture.
-.Pp
-Temperature information is available to the system via the fault
-management architecture
-.Pq FMA .
-The file system location and programming interface to the
-.Nm
-driver are considered
-.Sy Volatile ,
-subject to change without notice, and should not be used directly.
-Raw temperature information can be dumped through the FMA developer
-utility fmtopo.
-.Sh SEE ALSO
-.Xr fmadm 1M
-.Rs
-.%A Intel Corporation
-.%B Intel 64 and IA-32 Architectures Software Developer's Manual
-.%V Volume 3 (3A, 3B, 3C & 3D): System Programming Guide
-.Re
diff --git a/usr/src/man/man7d/cpqary3.7d b/usr/src/man/man7d/cpqary3.7d
deleted file mode 100644
index 1ed77081ee..0000000000
--- a/usr/src/man/man7d/cpqary3.7d
+++ /dev/null
@@ -1,84 +0,0 @@
-.\"
-.\" This file and its contents are supplied under the terms of the
-.\" Common Development and Distribution License ("CDDL"), version 1.0.
-.\" You may only use this file in accordance with the terms of version
-.\" 1.0 of the CDDL.
-.\"
-.\" A full copy of the text of the CDDL should have accompanied this
-.\" source. A copy of the CDDL is also available via the Internet at
-.\" http://www.illumos.org/license/CDDL.
-.\"
-.\"
-.\" Copyright (C) 2013 Hewlett-Packard Development Company, L.P.
-.\"
-.TH CPQARY3 7D "December 28, 2020"
-.SH NAME
-cpqary3 - provides disk and SCSI tape support for HP Smart Array controllers
-.SH DESCRIPTION
-The cpqary3 module provides low-level interface routines between the common
-disk I/O subsystem and the HP SMART Array controllers. The cpqary3 driver
-provides disk and SCSI tape support for the HP Smart Array controllers.
-.LP
-Please refer to the cpqary3 release notes, for the supported HP Smart Array
-Controllers and Storage boxes.
-.LP
-Each controller should be the sole initiator on a SCSI bus. Auto
-configuration code determines if the adapter is present at the Configured
-address and what types of devices are attached to it.
-.SH CONFIGURATION
-Use the Array Configuration Utility to configure the controllers. Each
-controller can support up to 32 logical volumes. In addition, each controller
-supports up to a maximum of 28 connected SCSI tape drives.
-With 1.90 and later versions of cpqary3 driver, HP Smart Array SAS controllers,
-having Firmware Revision 5.10 or later, will support 64 logical drives. This
-firmware also supports Dual Domain Multipath configurations.
-.LP
-The driver attempts to initialize itself in accordance with the information
-found in the configuration file, /kernel/drv/cpqary3.conf.
-.LP
-New component - hmaeventd which logs the storage events onto console and to the
-Integrated Management Log is made a part of HPQhma 5.0.0 package, which is not
-part of the operating system. Therefore, by default, notify on event
-functionality is disabled in the driver from 2.1.0 onwards. Storage event
-logging may be enabled in the driver by modifying cpqary3.conf to set the
-cpqary3_noe property to "on". Modification of driver properties requires
-reloading the driver, which in most cases will occur only following a reboot of
-the system.
-.LP
-The target driver's configuration file shall need entries if support is needed
-for targets numbering greater than the default number of targets supported by
-the corresponding target driver.
-.LP
-By default, entries for SCSI target numbers 0 to 15 are present in sd.conf.
-Entries for target numbers 16 and above must be added to the \&'scsi' class in
-sd.conf to support additional corresponding logical volumes.
-.LP
-If SCSI tape drives are connected to the supported controllers, entries for
-target IDs from 33 to 33+N must be added in the /kernel/drv/st.conf file under
-\&'scsi' class, where N is the total number of SCSI tape drives connected to the
-controller with largest number of tape drives connected to it, in the existing
-configuration. For example, two supported controller, c1 and c2 are present in
-the system. If controller c1 has two (2) tape drives and controller c2 has five
-(5) tape drives connected, then entries for target IDs 33 thru 38 are required
-under 'scsi' class in /kernel/drv/st.conf file. The maximum number of tape
-drives that can be connected to a controller is 28. With 1.90 and later versions
-of cpqary3 driver, if tape drives are connected to Smart Array SAS controllers,
-then target ID entries for tape drives from 65 to 65+N must be added in
-/kernel/drv/st.conf file under the \&'scsi' class.
-.SH FILES
-.PD 0
-.TP 25
-.B /kernel/drv/cpqary3.conf
-- configuration file for CPQary3
-.PD
-.SH "SEE ALSO"
-.BR driver.conf (4),
-.BR sd (7D),
-.BR st (7D)
-.SH NOTES
-The Smart Array controllers supported by the current version of the
-cpqary3 driver do not support 'format unit' SCSI command. Hence, selecting
-\&'format' option under 'format' utility main menu is not supported. In addition,
-the 'repair' option under 'format' utility main menu is not supported as this
-operation is not applicable to Logical volumes connected to the supported Smart
-Array controllers.
diff --git a/usr/src/man/man7d/cpuid.7d b/usr/src/man/man7d/cpuid.7d
deleted file mode 100644
index f24f73ed40..0000000000
--- a/usr/src/man/man7d/cpuid.7d
+++ /dev/null
@@ -1,160 +0,0 @@
-'\" te
-.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 2015, Joyent, Inc.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH CPUID 7D "April 9, 2016"
-.SH NAME
-cpuid \- CPU identification driver
-.SH SYNOPSIS
-.LP
-.nf
-\fB/dev/cpu/self/cpuid\fR
-.fi
-
-.SH DESCRIPTION
-.SS "SPARC and x86 system"
-.LP
-This device provides implementation-private information via ioctls about
-various aspects of the implementation to Solaris libraries and utilities.
-.SS "x86 systems only"
-.LP
-This device also provides a file-like view of the namespace and return values
-of the x86 cpuid instruction. The cpuid instruction takes a single 32-bit
-integer function code, and returns four 32-bit integer values corresponding to
-the input value that describe various aspects of the capabilities and
-configuration of the processor.
-.LP
-The API for the character device consists of using the seek offset to set the
-function code value, and using a \fBread\fR(2) or \fBpread\fR(2) of 16 bytes to
-fetch the four 32-bit return values of the instruction in the order %\fBeax\fR,
-%\fBebx\fR, %\fBecx\fR and %\fBedx\fR.
-.LP
-No data can be written to the device. Like the \fBcpuid\fR instruction, no
-special privileges are required to use the device.
-.LP
-The device is useful to enable low-level configuration information to be
-extracted from the CPU without having to write any assembler code to invoke the
-\fBcpuid\fR instruction directly. It also allows the kernel to attempt to
-correct any erroneous data returned by the instruction (prompted by occasional
-errors in the information exported by various processor implementations over
-the years).
-.LP
-See the processor manufacturers documentation for further information about the
-syntax and semantics of the wide variety of information available from this
-instruction.
-.LP
-Some systems can be configured to limit the cpuid opcodes which are accessible.
-While illumos handles this condition, other software may malfunction when such
-limits are enabled. Those settings are typically manipulated in the BIOS.
-.SH EXAMPLE
-.LP
-This example allows you to determine if the current x86 processor supports
-"long mode," which is a necessary (but not sufficient) condition for running
-the 64-bit Solaris kernel on the processor.
-.sp
-.in +2
-.nf
-/*
-
-#include <sys/types.h>
-#include <sys/stat.h>
-#include <fcntl.h>
-#include <unistd.h>
-#include <string.h>
-#include <errno.h>
-#include <stdio.h>
-
-static const char devname[] = "/dev/cpu/self/cpuid";
-
-/*ARGSUSED*/
-int
-main(int argc, char *argv[])
-{
- struct {
- uint32_t r_eax, r_ebx, r_ecx, r_edx;
- } _r, *rp = &_r;
- int d;
- char *s;
-
- if ((d = open(devname, O_RDONLY)) == -1) {
- perror(devname);
- return (1);
- }
-
- if (pread(d, rp, sizeof (*rp), 0) != sizeof (*rp)) {
- perror(devname);
- goto fail;
- }
-
- s = (char *)&rp->r_ebx;
- if (strncmp(s, "Auth" "cAMD" "enti", 12) != 0 &&
- strncmp(s, "Genu" "ntel" "ineI", 12) != 0)
- goto fail;
-
- if (pread(d, rp, sizeof (*rp), 0x80000001) == sizeof (*rp)) {
- /*
- * Read extended feature word; check bit 29
- */
- (void) close(d);
- if ((rp->r_edx >> 29) & 1) {
- (void) printf("processor supports long mode\en");
- return (0);
- }
- }
-fail:
- (void) close(d);
- return (1);
-}
-.fi
-.in -2
-
-.SH ERRORS
-.ne 2
-.na
-\fBENXIO\fR
-.ad
-.RS 10n
-Results from attempting to read data from the device on a system that does not
-support the CPU identification interfaces
-.RE
-
-.sp
-.ne 2
-.na
-\fBEINVAL\fR
-.ad
-.RS 10n
-Results from reading from an offset larger than UINT_MAX, or attempting to read
-with a size that is not multiple of 16 bytes.
-.RE
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/dev/cpu/self/cpuid\fR\fR
-.ad
-.RS 23n
-Provides access to CPU identification data.
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-.LP
-\fBpsrinfo\fR(1M), \fBprtconf\fR(1M), \fBpread\fR(2), \fBread\fR(2),
-\fBattributes\fR(5)
diff --git a/usr/src/man/man7d/dad.7d b/usr/src/man/man7d/dad.7d
deleted file mode 100644
index 6f1d9312c4..0000000000
--- a/usr/src/man/man7d/dad.7d
+++ /dev/null
@@ -1,355 +0,0 @@
-'\" te
-.\" Copyright 2004 Sun Microsystems, Inc. All rights reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH DAD 7D "Oct 24, 2005"
-.SH NAME
-dad \- driver for IDE disk devices
-.SH SYNOPSIS
-.LP
-.nf
-\fBdad@\fR \fItarget\fR,\fIlun\fR:\fIpartition\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-This driver handles the ide disk drives on SPARC platforms. The type of disk
-drive is determined using the ATA IDE identify device command and by reading
-the volume label stored on the drive. The \fBdad\fR device driver supports the
-Solaris SPARC VTOC and the EFI/GPT disk volume labels.
-.sp
-.LP
-The block-files access the disk using the system's normal buffering mechanism
-and are read and written without regard to physical disk records. There is
-also a "raw" interface that provides for direct transmission between the disk
-and the user's read or write buffer. A single read or write call usually
-results in one I/O operation; raw I/O is therefore considerably more efficient
-when many bytes are transmitted. The names of the block files are found in
-\fB/dev/dsk\fR. Raw file names are found in \fB/dev/rdsk\fR.
-.sp
-.LP
-I/O requests to the raw device must be aligned on a 512-byte (\fBDEV_BSIZE\fR)
-boundary and must have a length that is a multiple of 512 bytes. Requests that
-do not meet the restrictions cause the driver to return an \fBEINVAL\fR error.
-I/O requests to the block device have no alignment or length restrictions.
-.SS "Device Statistics Support"
-.sp
-.LP
-Each device maintains I/O statistics both for the device and for each partition
-allocated on that device. For each device/partition, the driver accumulates
-reads, writes, bytes read, and bytes written. The driver also takes
-hi-resolution time stamps at queue entry and exit points, which facilitates
-monitoring the residence time and cumulative residence-length product for each
-queue.
-.sp
-.LP
-Each device also has error statistics associated with it. These must include
-counters for hard errors, soft errors and transport errors. Other data may be
-implemented as required.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/dev/dsk/c\fR\fIn\fR\fBt\fR\fIn\fR\fBd\fR\fIn\fR\fBs\fR\fIn\fR \fR
-.ad
-.RS 23n
-block files
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/rdsk/c\fR\fIn\fR\fBt\fR\fIn\fR\fBd\fR\fIn\fR\fBs\fR\fIn\fR \fR
-.ad
-.RS 23n
-raw files
-.RE
-
-.sp
-.LP
-where:
-.sp
-.ne 2
-.na
-\fB\fBc\fR\fIn\fR \fR
-.ad
-.RS 7n
-controller \fIn\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBt\fR\fIn\fR \fR
-.ad
-.RS 7n
-IDE target id \fIn\fR (0-3)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBd\fR\fIn\fR \fR
-.ad
-.RS 7n
-Always 0.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBs\fR\fIn\fR \fR
-.ad
-.RS 7n
-partition \fIn\fR (0-7)
-.RE
-
-.sp
-.LP
-The target ide numbers are assigned as:
-.sp
-.ne 2
-.na
-\fB0\fR
-.ad
-.RS 5n
-Master disk on Primary channel.
-.RE
-
-.sp
-.ne 2
-.na
-\fB1\fR
-.ad
-.RS 5n
-Slave disk on Primary channel.
-.RE
-
-.sp
-.ne 2
-.na
-\fB2\fR
-.ad
-.RS 5n
-Master disk on Secondary channel
-.RE
-
-.sp
-.ne 2
-.na
-\fB3\fR
-.ad
-.RS 5n
-Slave disk on Secondary channel.
-.RE
-
-.SH IOCTLS
-.sp
-.LP
-Refer to \fBdkio\fR(7I).
-.SH ERRORS
-.sp
-.ne 2
-.na
-\fB\fBEACCES\fR \fR
-.ad
-.RS 11n
-Permission denied.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEBUSY\fR \fR
-.ad
-.RS 11n
-The partition was opened exclusively by another thread.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEFAULT\fR \fR
-.ad
-.RS 11n
-Argument was a bad address.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEINVAL\fR \fR
-.ad
-.RS 11n
-Invalid argument.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEIO\fR \fR
-.ad
-.RS 11n
- I/O error occurred.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBENOTTY\fR \fR
-.ad
-.RS 11n
-The device does not support the requested ioctl function.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBENXIO\fR \fR
-.ad
-.RS 11n
-The device did not exist during opening.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEROFS\fR \fR
-.ad
-.RS 11n
-The device is a read-only device.
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBformat\fR(1M), \fBmount\fR(1M), \fBlseek\fR(2), \fBread\fR(2),
-\fBwrite\fR(2), \fBdriver.conf\fR(4), \fBvfstab\fR(4), \fBdkio\fR(7I)
-.sp
-.LP
-X3T10 ATA-4 specifications.
-.SH DIAGNOSTICS
-.sp
-.ne 2
-.na
-\fB\fBCommand:<\fInumber\fR>\fR, Error:<\fInumber\fR>, Status:<\fInumber\fR>\fR
-.ad
-.sp .6
-.RS 4n
-Indicates that the command failed with an error and provides status register
-contents. Where <\fInumber\fR> is a hexadecimal value.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBoffline\fR \fR
-.ad
-.sp .6
-.RS 4n
-The driver has decided that the target disk is no longer there.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdisk ok\fR \fR
-.ad
-.sp .6
-.RS 4n
-The target disk is now responding again.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdisk not responding to selection\fR \fR
-.ad
-.sp .6
-.RS 4n
-The target disk is not responding.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBi/o to invalid geometry\fR \fR
-.ad
-.sp .6
-.RS 4n
-The geometry of the drive could not be established.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBincomplete read/write - retrying/giving up\fR \fR
-.ad
-.sp .6
-.RS 4n
-There was a residue after the command completed normally.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBno bp for disk label\fR \fR
-.ad
-.sp .6
-.RS 4n
-A bp with consistent memory could not be allocated.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBno memory for disk label\fR \fR
-.ad
-.sp .6
-.RS 4n
-Free memory pool exhausted.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBATA transport failed: reason 'nnnn': {retrying|giving}\fR \fR
-.ad
-.sp .6
-.RS 4n
-The host adapter has failed to transport a command to the target for the reason
-stated. The driver will either retry the command or, ultimately, give up.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBno mem for property\fR \fR
-.ad
-.sp .6
-.RS 4n
-Free memory pool exhausted.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBtransport rejected (<n>)\fR \fR
-.ad
-.sp .6
-.RS 4n
-Host adapter driver was unable to accept a command.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBDevice Fault\fR \fR
-.ad
-.sp .6
-.RS 4n
-Device fault - reason for such error is vendor specific.
-.RE
-
diff --git a/usr/src/man/man7d/dca.7d b/usr/src/man/man7d/dca.7d
deleted file mode 100644
index 03651d7151..0000000000
--- a/usr/src/man/man7d/dca.7d
+++ /dev/null
@@ -1,238 +0,0 @@
-'\" te
-.\" Copyright (c) 2005, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH DCA 7D "Aug 14, 2005"
-.SH NAME
-dca \- Crypto Accelerator device driver
-.SH SYNOPSIS
-.LP
-.nf
-\fBpci108e,5454@\fIpci-slot\fR\fR
-.fi
-
-.LP
-.nf
-\fBpci108e,5455@\fIpci-slot\fR\fR
-.fi
-
-.LP
-.nf
-\fBpci108e,5456@\fIpci-slot\fR\fR
-.fi
-
-.LP
-.nf
-\fBpci14e4,5820@\fIpci-slot\fR\fR
-.fi
-
-.LP
-.nf
-\fBpci14e4,5821@\fIpci-slot\fR\fR
-.fi
-
-.LP
-.nf
-\fBpci14e4,5822@\fIpci-slot\fR\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBdca\fR device driver is a multi-threaded, loadable hardware driver
-supporting Sun PCI-based (\fBpci108e,5454\fR) cryptographic accelerators, such
-as the Sun Crypto Accelerator 1000.
-.sp
-.LP
-The \fBdca\fR driver requires the presence of Solaris Cryptographic Framework
-for applications and kernel clients to access the provided services.
-.SH EXTENDED DESCRIPTION
-.sp
-.LP
-The \fBdca\fR driver maintains the following statistics:
-.sp
-.ne 2
-.na
-\fB\fB3desjobs\fR\fR
-.ad
-.RS 16n
-Total number of jobs submitted to the device for 3DES encryption.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB3desbytes\fR\fR
-.ad
-.RS 16n
-Total number of bytes submitted to the device for 3DES encryption.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrsapublic\fR\fR
-.ad
-.RS 16n
-Total number of jobs submitted to the device for RSA public key operations.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrsaprivate\fR\fR
-.ad
-.RS 16n
-Total number of jobs submitted to the device for RSA private key operations.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdsasign\fR\fR
-.ad
-.RS 16n
-Total number of jobs submitted to the device for DSA signing.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdsaverify\fR\fR
-.ad
-.RS 16n
-Total number of jobs submitted to the device for DSA verification.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrngjobs\fR\fR
-.ad
-.RS 16n
-Total number of jobs submitted for pure entropy generation.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrngbytes\fR\fR
-.ad
-.RS 16n
-Total number of bytes of pure entropy requested from the device.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrngsha1jobs\fR\fR
-.ad
-.RS 16n
-Total number of jobs submitted for entropy generation, with SHA-1
-post-processing.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrngsha1bytes\fR\fR
-.ad
-.RS 16n
-Total number of bytes of entropy requested from the device, with SHA-1
-post-processing.
-.RE
-
-.sp
-.LP
-Additional statistics may be supplied for Sun support personnel, but are not
-useful to end users and are not documented here.
-.sp
-.LP
-The \fBdca\fR driver can be configured by defining properties in
-\fB/kernel/drv/dca.conf\fR which override the default settings. The following
-properties are supported:
-.sp
-.ne 2
-.na
-\fB\fBnostats\fR\fR
-.ad
-.RS 13n
-Disables the generation of statistics. This property may be used to help
-prevent traffic analysis, but this may inhibit support personnel.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrngdirect\fR\fR
-.ad
-.RS 13n
-Disables the SHA-1 post-processing of generated entropy. This may give "truer"
-random numbers, but it may also introduce the risk of external biases
-influencing the distribution of generated random numbers.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture SPARC
-_
-Interface Stability Unstable
-.TE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/dca.conf\fR\fR
-.ad
-.RS 27n
-\fBdca\fR configuration file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/sparcv9/dca\fR\fR
-.ad
-.RS 27n
-64-bit ELF kernel driver (SPARC)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/dca\fR\fR
-.ad
-.RS 27n
-32-bit ELF kernel driver (x86)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/dca\fR\fR
-.ad
-.RS 27n
-64-bit ELF kernel driver (AMD64)
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBcryptoadm\fR(1M), \fBkstat\fR(1M), \fBprtconf\fR(1M), \fBdriver.conf\fR(4),
-\fBattributes\fR(5)
-.sp
-.LP
-\fISolaris Cryptographic Framework.\fR
diff --git a/usr/src/man/man7d/dcam1394.7d b/usr/src/man/man7d/dcam1394.7d
deleted file mode 100644
index c1323c8a8f..0000000000
--- a/usr/src/man/man7d/dcam1394.7d
+++ /dev/null
@@ -1,946 +0,0 @@
-'\" te
-.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH DCAM1394 7D "Jan 10, 2020"
-.SH NAME
-dcam1394 \- 1394-based digital camera (IIDC) driver
-.SH SYNOPSIS
-.nf
-\fB#include <sys/dcam/dcam1394_io.h>\fR
-.fi
-
-.SH DESCRIPTION
-The \fBdcam1394\fR driver supports devices implementing the \fI1394 Trade
-Association Digital Camera Specification\fR (also referred to as the IIDC
-specification). Only a subset of the specification is supported.
-.SH READING DATA
-Isochronous data is read from the driver frame-by-frame and is maintained
-within the driver in a ring buffer.
-.sp
-.LP
-Video frames are read from the isochronous input device using \fBread\fR(2).
-.sp
-.LP
-The \fBdcam1394_frame_t\fR structure describes the frame layout and is defined
-as follows:
-.sp
-.in +2
-.nf
- struct {
- unsigned int vid_mode;
- unsigned int seq_num;
- hrtime_t timestamp;
- unsigned char *buff;
- };
-.fi
-.in -2
-
-.sp
-.LP
-The size to allocate for the structure is determined by the video mode for
-which the camera is configured. Possible values for the vid_mode field are
-listed under DCAM1394_PARAM_VID_MODE below.
-.SH IOCTL REQUESTS
-The following ioctl requests are supported:
-.sp
-.ne 2
-.na
-\fBDCAM1394_CMD_CAM_RESET\fR
-.ad
-.sp .6
-.RS 4n
-Reset the device.
-.RE
-
-.sp
-.ne 2
-.na
-\fBDCAM1394_CMD_REG_READ\fR
-.ad
-.sp .6
-.RS 4n
-Read the indicated dcam/IIDC register. The argument is a pointer to a
-\fBdcam1394_reg_io_t\fR structure, which is defined as follows:
-.sp
-.in +2
-.nf
- struct {
- unsigned int offs;
- unsigned int val;
- };
-.fi
-.in -2
-
-The offs field should be set to the offset of the register from which to read.
-Register offset values are defined in the \fI1394 Trade Association Digital
-Camera Specification\fR.
-.sp
-After the operation is completed, the camera register value is put in the
-\fBval\fR field.
-.RE
-
-.sp
-.ne 2
-.na
-\fBDCAM1394_CMD_REG_WRITE\fR
-.ad
-.sp .6
-.RS 4n
-Write the indicated dcam/IIDC register. The argument is a pointer to a
-\fBdcam1394_reg_io_t\fR structure (described above).
-.sp
-The offs field should be set to the offset of the register from which to read.
-The register offset values are defined in the \fI1394 Trade Association Digital
-Camera Specification\fR.
-.sp
-The val field should be set to the value to be written to the camera register.
-.RE
-
-.sp
-.ne 2
-.na
-\fBDCAM1394_CMD_PARAM_GET\fR
-.ad
-.sp .6
-.RS 4n
-Gets a list of parameters associated with a camera. The argument is a pointer
-to a \fBdcam1394_param_list_t\fR structure (described below). The parameter
-list is accessed through macros defined below.
-.sp
-The parameter list only supports Format 1 video formats.
-.RE
-
-.sp
-.ne 2
-.na
-\fBDCAM1394_CMD_PARAM_SET\fR
-.ad
-.sp .6
-.RS 4n
-Sets a list of parameters associated with a camera. The argument is a pointer
-to a \fBdcam1394_param_list_t structure\fR (described below). The parameter
-list is accessed through macros defined below.
-.sp
-The parameter list only supports Format 1 video formats.
-.RE
-
-.sp
-.ne 2
-.na
-\fBDCAM1394_CMD_FRAME_RCV_START\fR
-.ad
-.sp .6
-.RS 4n
-Start receiving video frames from the camera.
-.sp
-The contents of the ring buffer may be accessed by reading the isochronous
-stream device.
-.RE
-
-.sp
-.ne 2
-.na
-\fBDCAM1394_CMD_FRAME_RCV_STOP\fR
-.ad
-.sp .6
-.RS 4n
-Stop receiving frames from the camera.
-.RE
-
-.sp
-.ne 2
-.na
-\fBDCAM1394_CMD_RING_BUFF_FLUSH\fR
-.ad
-.sp .6
-.RS 4n
-Flush the frames in the ring buffer.
-.RE
-
-.sp
-.ne 2
-.na
-\fBDCAM1394_CMD_FRAME_SEQ_NUM_COUNT_RESET\fR
-.ad
-.sp .6
-.RS 4n
-Reset frame sequence number.
-.RE
-
-.SH PARAMETER LIST ACCESS
-The parameter list is initialized and access through macros. The data type for
-the parameter list is \fBdcam1394_param_list_t\fR.
-.sp
-.LP
-The following macros are used to access the parameter list:
-.sp
-.ne 2
-.na
-\fBPARAM_LIST_INIT(param_list)\fR
-.ad
-.sp .6
-.RS 4n
-Initialize the parameter list.
-.RE
-
-.sp
-.ne 2
-.na
-\fBPARAM_LIST_ADD(param_list, param, subparam)\fR
-.ad
-.sp .6
-.RS 4n
-Add a parameter to the list.
-.RE
-
-.sp
-.ne 2
-.na
-\fBPARAM_LIST_REMOVE(param_list, param, subparam)\fR
-.ad
-.sp .6
-.RS 4n
-Remove a parameter from the list.
-.RE
-
-.sp
-.ne 2
-.na
-\fBPARAM_LIST_IS_ENTRY(param_list, param, subparam)\fR
-.ad
-.sp .6
-.RS 4n
-Indicates if a specific parameter is in the list.
-.RE
-
-.sp
-.ne 2
-.na
-\fBPARAM_VAL(param_list, param, subparam)\fR
-.ad
-.sp .6
-.RS 4n
-Value of a specified parameter.
-.RE
-
-.sp
-.ne 2
-.na
-\fBPARAM_ERR(param_list, param, subparam)\fR
-.ad
-.sp .6
-.RS 4n
-Indicates if a specific parameter is successfully set.
-.RE
-
-.sp
-.LP
-When no subparam value is required, the value DCAM1394_SUBPARAM_NONE may be
-used.
-.SH PARAMETERS
-The following parameters may appear in the list:
-.sp
-.ne 2
-.na
-\fBDCAM1394_PARAM_CAP_POWER_CTRL\fR
-.ad
-.sp .6
-.RS 4n
-Queries if the camera can be turned off and on through software. The subparam
-value is ignored.
-.RE
-
-.sp
-.ne 2
-.na
-\fBDCAM1394_PARAM_POWER\fR
-.ad
-.sp .6
-.RS 4n
-Controls or queries if the camera is powered up. Verify this feature using
-DCAM1394_PARAM_CAP_POWER_CTRL before use. The subparam field is ignored.
-.RE
-
-.sp
-.ne 2
-.na
-\fBDCAM1394_PARAM_CAP_VID_MOD\fR
-.ad
-.sp .6
-.RS 4n
-Queries if a specific video mode is supported by the camera.
-.sp
-subparam is one of the following and is used to determine if a specified video
-mode is supported by the camera:
-.sp
-.in +2
-.nf
- DCAM1394_SUBPARAM_VID_MODE_0
- DCAM1394_SUBPARAM_VID_MODE_YUV_444_160_120
- Video mode is 4:4:4, YUV color space, 160x120 resolution.
-
- DCAM1394_SUBPARAM_VID_MODE_1
- DCAM1394_SUBPARAM_VID_MODE_YUV_422_320_240
- Video mode is 4:2:2, YUV color space, 320x240 resolution.
-
- DCAM1394_SUBPARAM_VID_MODE_2
- DCAM1394_SUBPARAM_VID_MODE_YUV_411_640_480
- Video mode is 4:1:1, YUV color space, 640x480 resolution.
-
- DCAM1394_SUBPARAM_VID_MODE_3
- DCAM1394_SUBPARAM_VID_MODE_YUV_422_640_480
- Video mode is 4:2:2, YUV color space, 640x480 resolution.
-
- DCAM1394_SUBPARAM_VID_MODE_4
- DCAM1394_SUBPARAM_VID_MODE_RGB_640_480
- Video mode is RGB color space, 640x480 resolution.
-
- DCAM1394_SUBPARAM_VID_MODE_5
- DCAM1394_SUBPARAM_VID_MODE_Y_640_480
- Video mode is Y color space, 640x480 resolution.
-.fi
-.in -2
-
-.RE
-
-.sp
-.ne 2
-.na
-\fBDCAM1394_PARAM_VID_MODE\fR
-.ad
-.sp .6
-.RS 4n
-Controls or queries the current video mode of the camera. The subparam field
-is ignored. When selecting the video mode, it should be compatible with the
-capability of the camera, which may be determined by checking the
-DCAM1394_PARAM_CAP_VID_MODE parameter.
-.sp
-The value of this parameter may be one of the following:
-.sp
-.in +2
-.nf
- DCAM1394_VID_MODE_0
- DCAM1394_VID_MODE_YUV_444_160_120
- Video mode is 4:4:4, YUV color space, 160x120 resolution.
-
- DCAM1394_VID_MODE_1
- DCAM1394_VID_MODE_YUV_422_320_240
- Video mode is 4:2:2, YUV color space, 320x240 resolution.
-
- DCAM1394_VID_MODE_2
- DCAM1394_VID_MODE_YUV_411_640_480
- Video mode is 4:1:1, YUV color space, 640x480 resolution.
-
- DCAM1394_VID_MODE_3
- DCAM1394_VID_MODE_YUV_422_640_480
- Video mode is 4:2:2, YUV color space, 640x480 resolution.
-
- DCAM1394_VID_MODE_4
- DCAM1394_VID_MODE_RGB_640_480
- Video mode is RGB color space, 640x480 resolution.
-
- DCAM1394_VID_MODE_5
- DCAM1394_VID_MODE_Y_640_480
- Video mode is Y color space, 640x480 resolution.
-.fi
-.in -2
-
-.RE
-
-.sp
-.ne 2
-.na
-\fBDCAM1394_PARAM_CAP_FRAME_RATE_VID_MODE_0\fR
-.ad
-.sp .6
-.RS 4n
-Queries if a specific frame rate is supported by the camera in video mode 0
-(4:4:4, YUV, 160x120).
-.sp
-subparam is one of the following and used to determine if a specified frame
-rate is supported by the camera:
-.sp
-.in +2
-.nf
- DCAM1394_SUBPARAM_FRAME_RATE_0
- DCAM1394_SUBPARAM_FRAME_RATE_3_75_FPS
- Frame rate is 3.75 frames/second.
-
- DCAM1394_SUBPARAM_FRAME_RATE_1
- DCAM1394_SUBPARAM_FRAME_RATE_7_5_FPS
- Frame rate is 7.5 frames/second.
-
- DCAM1394_SUBPARAM_FRAME_RATE_2
- DCAM1394_SUBPARAM_FRAME_RATE_15_FPS
- Frame rate is 15 frames/second.
-
- DCAM1394_SUBPARAM_FRAME_RATE_3
- DCAM1394_SUBPARAM_FRAME_RATE_30_FPS
- Frame rate is 30 frames/second.
-
- DCAM1394_SUBPARAM_FRAME_RATE_4
- DCAM1394_SUBPARAM_FRAME_RATE_60_FPS
- Frame rate is 60 frames/second.
-.fi
-.in -2
-
-.RE
-
-.sp
-.ne 2
-.na
-\fBDCAM1394_PARAM_CAP_FRAME_RATE_VID_MODE_1\fR
-.ad
-.sp .6
-.RS 4n
-Queries if a specific frame rate is supported by the camera in video mode 1
-(4:2:2, YUV, 320x240). See DCAM1394_PARAM_CAP_FRAME_RATE_VID_MODE_0 for a
-listing of valid subparam values.
-.RE
-
-.sp
-.ne 2
-.na
-\fBDCAM1394_PARAM_CAP_FRAME_RATE_VID_MODE_2\fR
-.ad
-.sp .6
-.RS 4n
-Queries if a specific frame rate is supported by the camera in video mode 2
-(4:1:1, YUV, 640x480). See DCAM1394_PARAM_CAP_FRAME_RATE_VID_MODE_0 for a
-listing of valid subparam values.
-.RE
-
-.sp
-.ne 2
-.na
-\fBDCAM1394_PARAM_CAP_FRAME_RATE_VID_MODE_3\fR
-.ad
-.sp .6
-.RS 4n
-Queries if a specific frame rate is supported by the camera in video mode 3
-(4:2:2, YUV, 640x480). See DCAM1394_PARAM_CAP_FRAME_RATE_VID_MODE_0 for a
-listing of valid subparam values.
-.RE
-
-.sp
-.ne 2
-.na
-\fBDCAM1394_PARAM_CAP_FRAME_RATE_VID_MODE_4\fR
-.ad
-.sp .6
-.RS 4n
-Queries if a specific frame rate is supported by the camera in video mode 4.
-(RGB, 640x480). See DCAM1394_PARAM_CAP_FRAME_RATE_VID_MODE_0 for a listing of
-valid subparam values.
-.RE
-
-.sp
-.ne 2
-.na
-\fBDCAM1394_PARAM_CAP_FRAME_RATE_VID_MODE_5\fR
-.ad
-.sp .6
-.RS 4n
-Queries if a specific frame rate is supported by the camera in video mode 5.
-(Y, 640x480). See DCAM1394_PARAM_CAP_FRAME_RATE_VID_MODE_0 for a listing of
-valid subparam values.
-.RE
-
-.sp
-.ne 2
-.na
-\fBDCAM1394_PARAM_FRAME_RATE\fR
-.ad
-.sp .6
-.RS 4n
-Controls or queries the current frame rate of the camera. The subparam field
-is ignored. When selecting a frame rate, it should be compatible with the
-capability of the camera, which can be determined by querying one of the frame
-rate capability parameters above.
-.sp
-The value of this parameter may be one of the following:
-.sp
-.in +2
-.nf
- DCAM1394_FRAME_RATE_0
- DCAM1394_3_75_FPS
- The frame rate is 3.75 frames per second.
-
- DCAM1394_FRAME_RATE_1
- DCAM1394_7_5_FPS
- The frame rate is 7.5 frames per second.
-
- DCAM1394_FRAME_RATE_2
- DCAM1394_15_FPS
- The frame rate is 15 frames per second.
-
- DCAM1394_FRAME_RATE_3
- DCAM1394_30_FPS
- The frame rate is 30 frames per second.
-
- DCAM1394_FRAME_RATE_4
- DCAM1394_60_FPS
- The frame rate is 60 frames per second.
-.fi
-.in -2
-
-.RE
-
-.sp
-.ne 2
-.na
-\fBDCAM1394_PARAM_RING_BUFF_CAPACITY\fR
-.ad
-.sp .6
-.RS 4n
-Controls or queries the number of frames that the ring buffer may hold. This
-value can range between 2 and 30. The subparam field is ignored.
-.RE
-
-.sp
-.ne 2
-.na
-\fBDCAM1394_PARAM_RING_BUFF_NUM_FRAMES_READY\fR
-.ad
-.sp .6
-.RS 4n
-Queries the number of frames in the ring buffer ready to be accessed. The
-subparam field is ignored.
-.RE
-
-.sp
-.ne 2
-.na
-\fBDCAM1394_PARAM_RING_BUFF_READ_PTR_INCR\fR
-.ad
-.sp .6
-.RS 4n
-Controls or queries the number of bytes to advance the read pointer as it
-consumes data from the ring buffer. The subparam field is ignored.
-.RE
-
-.sp
-.ne 2
-.na
-\fBDCAM1394_PARAM_FRAME_NUM_BYTES\fR
-.ad
-.sp .6
-.RS 4n
-Queries the number of bytes in a frame at the current video mode. The subparam
-field is ignored.
-.RE
-
-.sp
-.ne 2
-.na
-\fBDCAM1394_PARAM_STATUS\fR
-.ad
-.sp .6
-.RS 4n
-Queries the parameter status. The subparam field is ignored.
-.sp
-The values for the parameter status is a bit field with the following values
-possibly set:
-.sp
-.ne 2
-.na
-\fBDCAM1394_STATUS_FRAME_RCV_DONE\fR
-.ad
-.sp .6
-.RS 4n
-Frame successfully received.
-.RE
-
-.sp
-.ne 2
-.na
-\fBDCAM1394_STATUS_RING_BUFF_LOST_FRAME\fR
-.ad
-.sp .6
-.RS 4n
-A frame has been lost while processing the ring buffer.
-.RE
-
-.sp
-.ne 2
-.na
-\fBDCAM1394_STATUS_PARAM_CHANGE\fR
-.ad
-.sp .6
-.RS 4n
-A parameter has been changed.
-.RE
-
-.sp
-.ne 2
-.na
-\fBDCAM1394_STATUS_FRAME_SEQ_NUM_COUNT_OVERFLOW\fR
-.ad
-.sp .6
-.RS 4n
-Frame sequence number has reached its maximum possible value and has
-overflowed.
-.RE
-
-.sp
-.ne 2
-.na
-\fBDCAM1394_STATUS_CAM_UNPLUG\fR
-.ad
-.sp .6
-.RS 4n
-Camera has been unplugged.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fBDCAM1394_PARAM_BRIGHTNESS\fR
-.ad
-.sp .6
-.RS 4n
-Query or control a camera feature. This feature queries or controls the
-brightness of the camera.
-.sp
-.ne 2
-.na
-\fBDCAM1394_SUBPARAM_PRESENCE\fR
-.ad
-.sp .6
-.RS 4n
-Indicates if the feature is available.
-.RE
-
-.sp
-.ne 2
-.na
-\fBDCAM1394_SUBPARAM_CAP_ON_OFF\fR
-.ad
-.sp .6
-.RS 4n
-Indicates if the feature may be enabled and disabled. May only be queried.
-.RE
-
-.sp
-.ne 2
-.na
-\fBDCAM1394_SUBPARAM_ON_OFF\fR
-.ad
-.sp .6
-.RS 4n
-Indicates if the feature is enabled.
-.RE
-
-.sp
-.ne 2
-.na
-\fBDCAM1394_SUBPARAM_CAP_CTRL_AUTO\fR
-.ad
-.sp .6
-.RS 4n
-Indicates if the automatic control of this feature is supported by the camera.
-May only be queried.
-.RE
-
-.sp
-.ne 2
-.na
-\fBDCAM1394_SUBPARAM_CAP_CTRL_MANUAL\fR
-.ad
-.sp .6
-.RS 4n
-Indicates if the manual control of this feature is supported by the camera. May
-only be queried.
-.RE
-
-.sp
-.ne 2
-.na
-\fBDCAM1394_SUBPARAM_CTRL_MODE\fR
-.ad
-.sp .6
-.RS 4n
-Indicates if the feature is in auto or manual mode.
-.RE
-
-.sp
-.ne 2
-.na
-\fBDCAM1394_SUBPARAM_MIN_VAL\fR
-.ad
-.sp .6
-.RS 4n
-Minimum value of the feature. May only be queried.
-.RE
-
-.sp
-.ne 2
-.na
-\fBDCAM1394_SUBPARAM_MAX_VAL\fR
-.ad
-.sp .6
-.RS 4n
-Maximum value of the feature. May only be queried.
-.RE
-
-.sp
-.ne 2
-.na
-\fBDCAM1394_SUBPARAM_VALUE\fR
-.ad
-.sp .6
-.RS 4n
-Current value of the feature.
-.RE
-
-.sp
-.ne 2
-.na
-\fBDCAM1394_SUBPARAM_CAP_READ\fR
-.ad
-.sp .6
-.RS 4n
-Indicates if the feature may be read. May only be queried.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fBDCAM1394_PARAM_EXPOSURE\fR
-.ad
-.sp .6
-.RS 4n
-Query or control a camera feature. This feature queries or controls the
-exposure of the camera. The subparams supported by this feature are described
-under DCAM1394_PARAM_BRIGHTNESS.
-.RE
-
-.sp
-.ne 2
-.na
-\fBDCAM1394_PARAM_SHARPNESS\fR
-.ad
-.sp .6
-.RS 4n
-Query or control a camera feature. This feature queries or controls the
-sharpness of the camera. The subparams supported by this feature are described
-under DCAM1394_PARAM_BRIGHTNESS.
-.RE
-
-.sp
-.ne 2
-.na
-\fBDCAM1394_PARAM_WHITE_BALANCE\fR
-.ad
-.sp .6
-.RS 4n
-Query or control a camera feature. This feature queries or controls the white
-balance of the camera. The subparams supported by this feature are described
-under DCAM1394_PARAM_BRIGHTNESS, except for DCAM1394_SUBPARAM_VALUE.
-DCAM1394_SUBPARAM_VALUE is replaced by two distinct subparams.
-.sp
-.ne 2
-.na
-\fBDCAM1394_SUBPARAM_U_VALUE\fR
-.ad
-.RS 29n
-U or B component of the white balance.
-.RE
-
-.sp
-.ne 2
-.na
-\fBDCAM1394_SUBPARAM_V_VALUE\fR
-.ad
-.RS 29n
-V or R component of the white balance.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fBDCAM1394_PARAM_HUE\fR
-.ad
-.sp .6
-.RS 4n
-Query or control a camera feature. This feature queries or controls the hue of
-the camera. The subparams supported by this feature are described under
-DCAM1394_PARAM_BRIGHTNESS.
-.RE
-
-.sp
-.ne 2
-.na
-\fBDCAM1394_PARAM_SATURATION\fR
-.ad
-.sp .6
-.RS 4n
-Query or control a camera feature. This feature queries or controls the
-saturation of the camera. The subparams supported by this feature are described
-under DCAM1394_PARAM_BRIGHTNESS.
-.RE
-
-.sp
-.ne 2
-.na
-\fBDCAM1394_PARAM_GAMMA\fR
-.ad
-.sp .6
-.RS 4n
-Query or control a camera feature. This feature queries or controls the gamma
-of the camera. The subparams supported by this feature are described under
-DCAM1394_PARAM_BRIGHTNESS.
-.RE
-
-.sp
-.ne 2
-.na
-\fBDCAM1394_PARAM_SHUTTER\fR
-.ad
-.sp .6
-.RS 4n
-Query or control a camera feature. This feature queries or controls the
-sharpness of the camera. The subparams supported by this feature are described
-under DCAM1394_PARAM_BRIGHTNESS.
-.RE
-
-.sp
-.ne 2
-.na
-\fBDCAM1394_PARAM_GAIN\fR
-.ad
-.sp .6
-.RS 4n
-Query or control a camera feature. This feature queries or controls the gain of
-the camera. The subparams supported by this feature are described under
-DCAM1394_PARAM_BRIGHTNESS.
-.RE
-
-.sp
-.ne 2
-.na
-\fBDCAM1394_PARAM_IRIS\fR
-.ad
-.sp .6
-.RS 4n
-Query or control a camera feature. This feature queries or controls the iris of
-the camera. The subparams supported by this feature are described under
-DCAM1394_PARAM_BRIGHTNESS.
-.RE
-
-.sp
-.ne 2
-.na
-\fBDCAM1394_PARAM_FOCUS\fR
-.ad
-.sp .6
-.RS 4n
-Query or control a camera feature. This feature queries or controls the focus
-of the camera. The subparams supported by this feature are described under
-DCAM1394_PARAM_BRIGHTNESS.
-.RE
-
-.sp
-.ne 2
-.na
-\fBDCAM1394_PARAM_ZOOM\fR
-.ad
-.sp .6
-.RS 4n
-Query or control a camera feature. This feature queries or controls the zoom of
-the camera. The subparams supported by this feature are described under
-DCAM1394_PARAM_BRIGHTNESS.
-.RE
-
-.sp
-.ne 2
-.na
-\fBDCAM1394_PARAM_PAN\fR
-.ad
-.sp .6
-.RS 4n
-Query or control a camera feature. This feature queries or controls the pan of
-the camera. The subparams supported by this feature are described under
-DCAM1394_PARAM_BRIGHTNESS.
-.RE
-
-.sp
-.ne 2
-.na
-\fBDCAM1394_PARAM_TILT\fR
-.ad
-.sp .6
-.RS 4n
-Query or control a camera feature. This feature queries or controls the tilt of
-the camera.The subparams supported by this feature are described under
-DCAM1394_PARAM_BRIGHTNESS.
-.RE
-
-.SH DEVICE SPECIAL FILES
-.ne 2
-.na
-\fB/dev/dcam\fIN\fR\fR
-.ad
-.RS 17n
-Device node for isochronous input from camera.
-.RE
-
-.sp
-.ne 2
-.na
-\fB/dev/dcamctl\fIN\fR\fR
-.ad
-.RS 17n
-Device node for camera control.
-.RE
-
-.SH FILES
-.ne 2
-.na
-\fB/kernel/drv/sparcv9/dcam1394\fR
-.ad
-.sp .6
-.RS 4n
-Device driver (SPARC)
-.RE
-
-.sp
-.ne 2
-.na
-\fB/kernel/drv/amd64/dcam1394\fR
-.ad
-.sp .6
-.RS 4n
-Device driver (x86)
-.RE
-
-.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-\fBattributes\fR(5), \fBhci1394\fR(7D)
-.sp
-.LP
-\fI1394 Trade Association Digital Camera Specification, Version 1.04 - 1996\fR
-.sp
-.LP
-\fIIEEE Std 1394-2000 Standard for a High Performance Serial Bus - 2000\fR
diff --git a/usr/src/man/man7d/devinfo.7d b/usr/src/man/man7d/devinfo.7d
deleted file mode 100644
index 834f8528f5..0000000000
--- a/usr/src/man/man7d/devinfo.7d
+++ /dev/null
@@ -1,41 +0,0 @@
-'\" te
-.\" Copyright (c) 1998, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH DEVINFO 7D "Jan 9, 1998"
-.SH NAME
-devinfo \- device information driver
-.SH DESCRIPTION
-.sp
-.LP
-The \fBdevinfo\fR driver is a private mechanism used by the
-\fBlibdevinfo\fR(3LIB) interfaces to access kernel device configuration data
-and to guarantee data consistency.
-.SH FILES
-.sp
-.LP
-\fB/devices/pseudo/devinfo@0:devinfo\fR
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Stability Level Private
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBlibdevinfo\fR(3LIB), \fBattributes\fR(5)
-.sp
-.LP
-\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man7d/dm2s.7d b/usr/src/man/man7d/dm2s.7d
deleted file mode 100644
index 88f16fc8ac..0000000000
--- a/usr/src/man/man7d/dm2s.7d
+++ /dev/null
@@ -1,40 +0,0 @@
-'\" te
-.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH DM2S 7D "Apr 6, 2006"
-.SH NAME
-dm2s \- loadable STREAMS driver
-.SH SYNOPSIS
-.LP
-.nf
-dm2s@0
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBdm2s\fR module is a loadable STREAMS driver that provides synchronous
-serial communication support for DSCP communication. \fBdm2s\fR is specific to
-the SPARC Enterprise Server family.
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Private
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBattributes\fR(5)
diff --git a/usr/src/man/man7d/dmfe.7d b/usr/src/man/man7d/dmfe.7d
deleted file mode 100644
index a4a48cf53a..0000000000
--- a/usr/src/man/man7d/dmfe.7d
+++ /dev/null
@@ -1,197 +0,0 @@
-'\" te
-.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH DMFE 7D "Sep 17, 2007"
-.SH NAME
-dmfe \- Davicom Fast Ethernet driver for Davicom DM9102A
-.SH SYNOPSIS
-.LP
-.nf
-/kernel/drv/sparcv9/dmfe
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBdmfe\fR Ethernet device provides 100Base-TX networking interfaces using
-the Davicom DM9102A chip, which incorporates its own internal transceiver.
-.sp
-.LP
-The \fBdmfe\fR driver functions include controller initialization, frame
-transmit and receive, promiscuous and multicast support, and error recovery and
-reporting. Multiple controllers installed within the system are supported by
-the driver.
-.sp
-.LP
-The 100Base-TX standard specifies an auto-negotiation protocol to automatically
-select the mode and speed of operation. The internal transceiver is capable of
-performing auto-negotiation with the remote-end of the link (link partner) and
-receives the capabilities of the remote end. It selects the highest common
-denominator mode of operation based on the priorities. The internal transceiver
-also supports a forced-mode of operation under which the driver selects the
-operational mode.
-.SH APPLICATION PROGRAMMING INTERFACE
-.sp
-.LP
-The \fB/dev/dmfe\fR cloning character-special device is used to access all
-Davicom DM9102A devices installed in the system.
-.sp
-.LP
-You must send an explicit DL_ATTACH_REQ message to associate the opened stream
-with a particular device (ppa). The ppa ID is interpreted as an unsigned
-integer data type and indicates the corresponding device instance (unit)
-number. If the ppa field value does not correspond to a valid device instance
-number for this system, an error (DL_ERROR_ACK) is returned. The device is
-initialized on first attach and de-initialized (stopped) at last detach.
-.sp
-.LP
-The values returned by the driver in the DL_INFO_ACK primitive in response to a
-DL_INFO_REQ are as follows:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Maximum SDU is 1500 (ETHERMTU - defined in \fBsys/ethernet.h\fR).
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Minimum SDU is 0.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-DLSAP address length is 8.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-MAC type is DL_ETHER.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The sap length value is -2, meaning the physical address component is
-followed immediately by a 2-byte sap component within the DLSAP address.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The broadcast address value is the Ethernet/IEEE broadcast address
-(FF:FF:FF:FF:FF:FF).
-.RE
-.sp
-.LP
-Once in the DL_ATTACHED state, you must send a DL_BIND_REQ to associate a
-particular Service Access Point (SAP) with the stream.
-.SH CONFIGURATION
-.sp
-.LP
-By default, the \fBdmfe\fR driver performs auto-negotiation to select the speed
-and mode of the link. Link speed and mode can be 100 Mbps (full or half-duplex)
-or 10 Mbps (full or half-duplex) as described in the 100Base-TX standard.
-.sp
-.LP
-The auto-negotiation protocol automatically selects speed mode (either 100 Mbps
-or 10 Mbps) and operation mode (either full-duplex or half-duplex) as the
-highest common denominator supported by both link partners. Because the
-\fBdmfe\fR device supports all modes, this effectively selects the
-highest-throughput mode supported by the other device.
-.sp
-.LP
-Alternatively, you can explicitly specify the link parameters by adding entries
-to the \fBdmfe\fR driver configuration file (\fB/kernel/drv/dmfe.conf\fR). You
-can set the \fBspeed\fR parameter to 10 or 100 to force \fBdmfe\fR devices to
-operate at the specified speed. Additionally, you can set the full-duplex
-parameter to 0 or 1 to disable or force full-duplex operation, respectively.
-.sp
-.LP
-Note that specifying either "speed" or "full-duplex" explicitly disables
-auto-negotiation. To enable the driver to determine the appropriate setting for
-each parameter, you should always set both parameters. If it is necessary to
-force either speed or duplex setting (for example, because the \fBdmfe\fR
-device is connected to an ancient device or hub that does not support
-auto-negotiation), both parameters should be explicitly specified to match the
-requirements of the external device.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/dev/dmfe\fR\fR
-.ad
-.RS 28n
-Character special device
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/dmfe\fR\fR
-.ad
-.RS 28n
-32-bit kernel module (x86)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/sparcv9/dmfe\fR\fR
-.ad
-.RS 28n
-64-bit kernel module (SPARC)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/dmfe\fR\fR
-.ad
-.RS 28n
-64-bit kernel module (x86)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/dmfe.conf\fR\fR
-.ad
-.RS 28n
-\fBdmfe\fR configuration file
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture SPARC, x86
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBattributes\fR(5), \fBgld\fR(7D), \fBdlpi\fR(7P), \fBstreamio\fR(7I)
-.sp
-.LP
-\fIWriting Device Drivers\fR
-.sp
-.LP
-\fISTREAMS Programming Guide\fR
-.sp
-.LP
-\fINetwork Interfaces Programmer's Guide\fR
diff --git a/usr/src/man/man7d/dnet.7d b/usr/src/man/man7d/dnet.7d
deleted file mode 100644
index 348e6b9429..0000000000
--- a/usr/src/man/man7d/dnet.7d
+++ /dev/null
@@ -1,191 +0,0 @@
-'\" te
-.\" All Rights Reserved. Copyright (c) 2000, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH DNET 7D "Oct 20, 2000"
-.SH NAME
-dnet \- Ethernet driver for DEC 21040, 21041, 21140 Ethernet cards
-.SH SYNOPSIS
-.LP
-.nf
-\fB/kernel/drv/dnet\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBdnet\fR Ethernet driver is a multithreaded, loadable, clonable,
-\fBSTREAMS GLD\fR driver. Multiple controllers installed within the system are
-supported by the driver. The \fBdnet\fR driver functions include controller
-initialization, frame transmit and receive, functional addresses, promiscuous
-and multicast support, and error recovery and reporting.
-.SH APPLICATION PROGRAMMING INTERFACE
-.sp
-.LP
-The cloning character-special device, \fB/dev/dnet\fR, is used to access all
-DEC 21040/21041/21140 devices installed in the system.
-.sp
-.LP
-The \fBdnet\fR driver is dependent on \fB/kernel/misc/gld\fR, a loadable kernel
-module that provides the \fBdnet\fR driver with the \fBDLPI\fR and
-\fBSTREAMS\fR functionality required of a \fBLAN\fR driver. See \fBgld\fR(7D)
-for more details on the primitives supported by the driver.
-.sp
-.LP
-The device is initialized on the first attach and de-initialized (stopped) on
-the last detach.
-.sp
-.LP
-The values returned by the driver in the \fBDL_INFO_ACK\fR primitive in
-response to a \fBDL_INFO_REQ\fR from the user are as follows:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The maximum \fBSDU\fR is \fB1500\fR (\fBETHERMTU\fR - defined in
-<\fBsys/ethernet.h\fR>).
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The minimum \fBSDU\fR is \fB0\fR.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The \fBDLSAP\fR address length is \fB8\fR.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The \fBMAC\fR type is \fBDL_ETHER\fR.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The \fBsap\fR length value is \fB\(mi2\fR, meaning the physical address
-component is followed immediately by a 2-byte \fBsap\fR component within the
-\fBDLSAP\fR address.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The broadcast address value is the Ethernet/IEEE broadcast address
-(\fBFF:FF:FF:FF:FF:FF\fR).
-.RE
-.sp
-.LP
-Once in the \fBDL_ATTACHED\fR state, the user must send a \fBDL_BIND_REQ\fR to
-associate a particular Service Access Point (SAP) with the stream.
-.SH PRECONFIGURATION
-.sp
-.LP
-The PCI configuration process varies from system to system. Follow the
-instructions provided by the vendor.
-.SS "Known Problems and Limitations"
-.RS +4
-.TP
-.ie t \(bu
-.el o
-On multiport cards (exception: Osicom (Rockwell) RNS2340), the first port is
-the top port. (On the Osicom RNS2340, the first port is the bottom port.)
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-If the \fBdnet\fR driver fails to determine the correct speed and duplex mode
-resulting in a corresponding drop in performance, set the speed and duplex mode
-using the \fBdnet.conf\fR file.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The \fBdnet\fR driver incorrectly counts carrier lost or no carrier errors
-while in full-duplex mode. There is no carrier signal present when in
-full-duplex mode and it should not be counted as an error.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Version 4 SROM formats are not supported.
-.RE
-.SH CONFIGURATION
-.sp
-.LP
-The \fB/kernel/drv/dnet.conf\fR file supports the following options:
-.sp
-.ne 2
-.na
-\fB\fBfull-duplex\fR\fR
-.ad
-.RS 15n
-For full duplex operation use \fBfull-duplex=1\fR, for half duplex use
-\fBfull-duplex=0\fR. Half-duplex operation gives better results on older 10mbit
-networks.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBspeed\fR\fR
-.ad
-.RS 15n
-For 10mbit operation use \fBspeed=10\fR, for 100mbit operation use
-\fBspeed=100\fR. Certain 21140 based cards will operate at either speed. Use
-the speed property to override the 100mbit default in this case.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/dev/dnet\fR\fR
-.ad
-.RS 25n
-character special device
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/dnet.conf\fR\fR
-.ad
-.RS 25n
-\fBdnet\fR configuration file
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture x86
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBattributes\fR(5), \fBdlpi\fR(7P), \fBgld\fR(7D) \fBstreamio\fR(7I)
-.sp
-.LP
-\fIWriting Device Drivers\fR
-.sp
-.LP
- \fISTREAMS Programming Guide\fR
diff --git a/usr/src/man/man7d/dr.7d b/usr/src/man/man7d/dr.7d
deleted file mode 100644
index d3494d1736..0000000000
--- a/usr/src/man/man7d/dr.7d
+++ /dev/null
@@ -1,35 +0,0 @@
-'\" te
-.\" Copyright 2019 Peter Tribble.
-.\" Copyright (c) 2001 Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH DR 7D "Jun 13, 2019"
-.SH NAME
-dr, drmach \- dynamic reconfiguration driver
-.SH SYNOPSIS
-.LP
-.nf
-\fBdr\fR
-.fi
-
-.LP
-.nf
-\fBdrmach\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-The dynamic reconfiguration (DR) driver consists of a platform-independent
-driver and a platform-specific module. The DR driver uses standard features of
-the Solaris operating environment whenever possible to control DR operations
-and calls the platform specific module as needed. The DR driver creates minor
-nodes in the file system that serve as attachment points for DR operations.
-.sp
-.LP
-The DR driver provides a pseudo-driver interface to sequence attach and detach
-operations on system boards using file system entry points referred to as
-"attachment points." The attachment point form depends on the platform.
-.SH SEE ALSO
-.LP
-\fBioctl\fR(2), \fBlibcfgadm(3LIB)\fR
diff --git a/usr/src/man/man7d/dtrace.7d b/usr/src/man/man7d/dtrace.7d
deleted file mode 100644
index cefee6a2cd..0000000000
--- a/usr/src/man/man7d/dtrace.7d
+++ /dev/null
@@ -1,41 +0,0 @@
-'\" te
-.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH DTRACE 7D "Dec 10, 2017"
-.SH NAME
-dtrace \- DTrace dynamic tracing facility
-.SH DESCRIPTION
-.LP
-The \fBdtrace\fR driver provides the dynamic instrumentation and tracing
-facilities for the DTrace software, as well as the built-in \fBdtrace\fR
-provider. The \fBdtrace\fR driver is not a public interface and you access the
-instrumentation offered by this provider through DTrace tools such as
-\fBdtrace\fR(1M). Refer to the \fIDynamic Tracing Guide\fR for a
-description of the public documented interfaces available for the DTrace
-facility and dtrace provider probes.
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for a description of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Private
-.TE
-
-.SH SEE ALSO
-.LP
-\fBdtrace\fR(1M), \fBlibdtrace\fR(3LIB), \fBattributes\fR(5)
-.sp
-.LP
-\fIDynamic Tracing Guide\fR:
-.sp
-.LP
-https://illumos.org/books/dtrace/
diff --git a/usr/src/man/man7d/e1000g.7d b/usr/src/man/man7d/e1000g.7d
deleted file mode 100644
index 3582d0dc20..0000000000
--- a/usr/src/man/man7d/e1000g.7d
+++ /dev/null
@@ -1,213 +0,0 @@
-.\"
-.\" This file and its contents are supplied under the terms of the
-.\" Common Development and Distribution License ("CDDL"), version 1.0.
-.\" You may only use this file in accordance with the terms of version
-.\" 1.0 of the CDDL.
-.\"
-.\" A full copy of the text of the CDDL should have accompanied this
-.\" source. A copy of the CDDL is also available via the Internet at
-.\" http://www.illumos.org/license/CDDL.
-.\"
-.\"
-.\" Copyright 2020 Robert Mustacchi
-.\" Copyright 2022 Oxide Computer Company
-.\"
-.Dd January 17, 2022
-.Dt E1000G 7D
-.Os
-.Sh NAME
-.Nm e1000g
-.Nd Intel 1 Gigabit Client Ethernet Controller
-.Sh SYNOPSIS
-.Pa /dev/net/e1000g*
-.Sh DESCRIPTION
-The
-.Nm
-driver is a GLDv3 NIC driver for Intel 1 Gigabit Ethernet devices which
-are often found as discrete PCI and PCI expresss add-on-cards and built
-into many Intel chipsets and platforms.
-.Pp
-On most models, the device driver supports transmit and receive
-checksumming, 9000 byte jumbo frames, large send offload
-.Pq LSO ,
-LED control and Ethernet Pause frames.
-.Pp
-For each device supported by the
-.Nm
-driver, a character special-file will be created for each instance.
-The first instance would have id 0 and would be named
-.Sy e1000g0
-and found in the file system at
-.Pa /dev/net/e1000g0 .
-This device node supports the Data Link Provider Interface
-.Pq DLPI
-which is documented in
-.Xr dlpi 7P .
-.Xr libdlpi 3LIB
-provides a more usable interface on top of that.
-.Pp
-For administrative control, the device can be manipulated through the
-.Xr dladm 1M
-utility.
-.Pp
-The following Ethernet controllers are supported by this driver:
-.Bl -bullet
-.It
-82542 Gigabit Ethernet Controller
-.It
-82543GC Gigabit Ethernet Controller
-.It
-82544EI Gigabit Ethernet Controller
-.It
-82544GC Gigabit Ethernet Controller
-.It
-82540EM Gigabit Ethernet Controller
-.It
-82540EP Gigabit Ethernet Controller
-.It
-8254EM Gigabit Ethernet Controller
-.It
-82545GM Gigabit Ethernet Controller
-.It
-82546GB Gigabit Ethernet Adapter
-.It
-82541EI Gigabit Ethernet Controller
-.It
-82541ER Gigabit Ethernet Controller
-.It
-82541GI Gigabit Ethernet Controller
-.It
-82547EI Gigabit Ethernet Controller
-.It
-82547GI Gigabit Ethernet Controller
-.It
-82571EB Gigabit Ethernet Controller
-.It
-82571GB Gigabit Ethernet Controller
-.It
-82571PT Gigabit PT Quad Port Server ExpressModule
-.It
-82572EI Gigabit Ethernet Controller
-.It
-82573E Gigabit Ethernet Controller
-.It
-82573V Gigabit Ethernet Controller
-.It
-82573L Gigabit Ethernet Controller
-.It
-82574L Gigabit Ethernet Controller
-.It
-82583V Gigabit Ethernet Controller
-.It
-80003ES2LAN Gigabit Ethernet Controller
-.It
-82566MM Gigabit Network Connection
-.It
-82566DM Gigabit Network Connection v1-2
-.It
-82566DC Gigabit Network Connection v1-2
-.It
-82562V 10/100 Network Connection v1-2
-.It
-82562GT 10/100 Network Connection v1-2
-.It
-82562G 10/100 Network Connection v1-2
-.It
-82566MC Gigabit Network Connection
-.It
-82567LM v1-v4 Gigabit Network Connection
-.It
-82567LF v1-v3 Gigabit Network Connection
-.It
-82567V v1-v4 Gigabit Network Connection
-.It
-82577LM Gigabit Network Connection
-.It
-82577LC Gigabit Network Connection
-.It
-82578DM Gigabit Ethernet PHY
-.It
-82578DC Gigabit Ethernet PHY
-.It
-82579LM Gigabit Network Connection
-.It
-82579V Gigabit Network Connection
-.It
-Ethernet Connection I217-LM
-.It
-Ethernet Connection I217-V
-.It
-Ethernet Connection I218-LM v1-3
-.It
-Ethernet Connection I218-V v1-3
-.It
-Ethernet Connection I219-LM v1-23
-.It
-Ethernet Connection I219-V v1-23
-.El
-.Pp
-The following specific devices are supported by this driver:
-.Bl -bullet
-.It
-Gigabit CT2 Desktop Adapter
-.It
-PRO/1000 Gigabit Server Adapter
-.It
-PRO/1000 CT Desktop, Mobile, and Network Connection
-.It
-PRO/1000 F Server Adapter
-.It
-PRO/1000 GT Desktop, Server, and Quad Port Server Adapter
-.It
-PRO/1000 MB Server and Dual Port Server Connection
-.It
-PRO/1000 MF Server and Dual Port Server Adapter
-.It
-PRO/1000 MT Desktop, Mobile, Network, Server, Dual Port Server, and Quad
-Port Server Adapter
-.It
-PRO/1000 P Dual Port Server Adapter
-.It
-PRO/1000 PB Dual Port Server Connection
-.It
-PRO/1000 PF Server, Dual Port Server and Quad Port Server Adapter
-.It
-PRO/1000 PL Network Connection
-.It
-PRO/1000 PT Desktop, Server, Dual Port Server, Quad Port Server, and Quad Port LP Server
-Adapter
-.It
-PRO/1000 T Desktop and Server Adapter
-.It
-PRO/1000 XF Server Adapter
-.It
-PRO/1000 XT Server and Desktop Adapter
-.El
-.Pp
-The
-.Xr igb 7D
-driver supports many other Intel Gigabit parts.
-.Sh CONFIGURATION
-The
-.Pa e1000g.conf
-file contains some user configurable parameters, the format of which
-is documented in
-.Xr driver.conf 4 .
-Generally, the use of
-.Xr dladm 1M
-is recommended over editing the configuration file.
-.Sh FILES
-.Bl -tag -width Pa
-.It Pa /kernel/drv/amd64/e1000g
-Device driver (x86)
-.It Pa /kernel/drv/sparcv9/e1000g
-Device driver (SPARC)
-.It Pa /kernel/drv/e1000g.conf
-Driver configuration file
-.El
-.Sh SEE ALSO
-.Xr dladm 1M ,
-.Xr libdlpi 3LIB ,
-.Xr driver.conf 4 ,
-.Xr igb 7D ,
-.Xr dlpi 7P
diff --git a/usr/src/man/man7d/ecpp.7d b/usr/src/man/man7d/ecpp.7d
deleted file mode 100644
index dc5259dbdf..0000000000
--- a/usr/src/man/man7d/ecpp.7d
+++ /dev/null
@@ -1,465 +0,0 @@
-'\" te
-.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH ECPP 7D "May 17, 2020"
-.SH NAME
-ecpp \- IEEE 1284 compliant parallel port driver
-.SH SYNOPSIS
-.nf
-#include <sys/types.h>
-.fi
-
-.LP
-.nf
-#include <sys/ecppio.h>
-.fi
-
-.LP
-.nf
-ecpp@unit-address
-.fi
-
-.SH DESCRIPTION
-The \fBecpp\fR driver provides a bi-directional interface to \fIIEEE 1284\fR
-compliant devices as well as a forward single-directional interface to
-Centronics devices. In addition to the Centronics protocol, the \fBecpp\fR
-driver supports the \fIIEEE 1284\fR Compatibility, Nibble, and ECP protocols.
-\fBECPP_COMPAT_MODE\fR and \fBECPP_CENTRONICS\fR modes of operation have
-logically identical handshaking protocols, however devices that support
-\fBECPP_COMPAT_MODE\fR are \fIIEEE 1284\fR compliant devices. \fIIEEE 1284\fR
-compliant devices support at least \fBECPP_COMPAT_MODE\fR and
-\fBECPP_NIBBLE_MODE\fR. Centronics devices support only \fBECPP_CENTRONICS\fR
-mode.
-.sp
-.LP
-By default, \fBECPP_COMPAT_MODE\fR devices have a strobe handshaking pulse
-width of 500ns. For this mode, forward data transfers are conducted by DMA. By
-default, the strobe pulse width for \fBECPP_CENTRONICS\fR devices is two
-microseconds. Forward transfers for these devices are managed through PIO. The
-default characteristics for both \fBECPP_COMPAT_MODE\fR and
-\fBECPP_CENTRONICS\fR devices may be changed through tunable variables defined
-in \fBecpp.conf\fR.
-.sp
-.LP
-The \fBecpp\fR driver is an \fIexclusive-use\fR device, meaning that if the
-device is already open, subsequent opens fail with \fBEBUSY\fR.
-.SS "Default Operation"
-Each time the \fBecpp\fR device is opened, the device is marked as \fBEBUSY\fR
-and the configuration variables are set to their default values. The
-\fBwrite_timeout\fR period is set to 90 seconds.
-.sp
-.LP
-The driver sets the mode variable according to the following algorithm: The
-driver initially attempts to negotiate the link into \fBECPP_ECP_MODE\fR during
-\fBopen\fR(2). If it fails, the driver tries to negotiate into
-\fBECPP_NIBBLE_MODE\fR mode. If that fails, the driver operates in
-\fBECPP_CENTRONICS\fR mode. Upon successfully opening the device, \fIIEEE
-1284\fR compliant devices will be left idle in either reverse idle phase of
-\fBECPP_ECP_MODE\fR or in \fBECPP_NIBBLE_MODE\fR. Subsequent calls to
-\fBwrite\fR(2) invokes the driver to move the link into either
-\fBECPP_COMPAT_MODE\fR or the forward phase of \fBECPP_ECP_MODE\fR. After the
-transfer completes, the link returns to idle state.
-.sp
-.LP
-The application may attempt to negotiate the device into a specific mode or set
-the \fBwrite_timeout\fR values through the \fBECPPIOC_SETPARMS\fR
-\fBioctl\fR(2) call. For mode negotiation to be successful, both the host
-workstation and the peripheral must support the requested mode.
-.SS "Tunables"
-Characteristics of the \fBecpp\fR driver may be tuned by the variables
-described in \fB/kernel/drv/ecpp.conf\fR. These variables are read by the
-kernel during system startup. To tune the variables, edit the \fBecpp.conf\fR
-file and invoke \fBupdate_drv\fR(1M) to have the kernel read the file again.
-.sp
-.LP
-Some Centronics peripherals and certain \fIIEEE 1284\fR compatible peripherals
-will not operate with the parallel port operating in a fast handshaking mode.
-If printing problems occur, set "fast-centronics" and "fast-1284-compatible" to
-"false." See \fB/kernel/drv/ecpp.conf\fR for more information.
-.SS "Read/Write Operation"
-The \fBecpp\fR driver is a full duplex STREAMS device driver. While an
-application is writing to an \fIIEEE 1284\fR compliant device, another thread
-may read from it.
-.SS "Write Operation"
-A \fBwrite\fR(2) operation returns the number of bytes successfully written to
-the stream head. If a failure occurs while a Centronics device is transferring
-data, the content of the status bits will be captured at the time of the error
-and can be retrieved by the application program using the \fBBPPIOC_GETERR\fR
-\fBioctl\fR(2) call. The captured status information is overwritten each time
-an attempted transfer or a \fBBPPIOC_TESTIO\fR \fBioctl\fR(2) occurs.
-.SS "Read Operation"
-If a failure or error condition occurs during a \fBread\fR(2), the number of
-bytes successfully read is returned (short read). When attempting to read a
-port that has no data currently available, \fBread\fR(2) returns \fB0\fR if
-\fBO_NDELAY\fR is set. If \fBO_NONBLOCK\fR is set, \fBread\fR(2) returns
-\fB-1\fR and sets errno to \fBEAGAIN.\fR If \fBO_NDELAY\fR and \fBO_NONBLOCK\fR
-are clear, \fBread\fR(2) blocks until data become available.
-.SH IOCTLS
-The \fBioctl\fR(2) calls described below are supported. Note that when
-\fBecpp\fR is transferring data, the driver waits until the data has been sent
-to the device before processing the \fBioctl\fR(2) call.
-.sp
-.LP
-The ecpp driver supports \fBprnio\fR(7I) interfaces.
-.LP
-Note -
-.sp
-.RS 2
-The \fBPRNIOC_RESET\fR command toggles the \fBnInit\fR signal for 2 ms,
-followed by default negotiation.
-.RE
-.sp
-.LP
-The following \fBioctl\fR(2) calls are supported for backward compatibility and
-are not recommended for new applications:
-.sp
-.ne 2
-.na
-\fB\fBECPPIOC_GETPARMS\fR\fR
-.ad
-.RS 20n
-Get current transfer parameters. The argument is a pointer to a struct
-\fBecpp_transfer_parms\fR. See below for a description of the elements of this
-structure. If no parameters have been configured since the device was opened,
-the structure will be set to its default configuration. See Default Operation
-above for more information.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBECPPIOC_SETPARMS\fR\fR
-.ad
-.RS 20n
-Set transfer parameters. The argument is a pointer to a struct
-\fBecpp_transfer_parms\fR. If a parameter is out of range, \fBEINVAL\fR is
-returned. If the peripheral or host device cannot support the requested mode,
-\fBEPROTONOSUPPORT\fR is returned. See below for a description of
-\fBecpp_transfer_parms\fR and its valid parameters.
-.sp
-The Transfer Parameters Structure is defined in <\fBsys/ecppio.h\fR>.
-.sp
-.in +2
-.nf
-struct ecpp_transfer_parms {
- int write_timeout;
- int mode;
-};
-.fi
-.in -2
-
-The \fBwrite_timeout\fR field is set to the value of
-\fBecpp-transfer-timeout\fR specified in the \fBecpp.conf\fR. The
-\fBwrite_timeout\fR field specifies how long the driver will wait for the
-peripheral to respond to a transfer request. The value must be greater than
-\fB0\fR and less than \fBECPP_MAX_TIMEOUT.\fR All other values are out of
-range.
-.sp
-The mode field reflects the \fIIEEE 1284\fR mode to which the parallel port is
-currently configured. The mode may be set to one of the following values only:
-\fBECPP_CENTRONICS\fR, \fBECPP_COMPAT_MODE\fR, \fBECPP_NIBBLE_MODE\fR,
-\fBECPP_ECP_MODE\fR. All other values are invalid. If the requested mode is not
-supported, \fBECPPIOC_SETPARMS\fR will return \fBEPROTONOSUPPORT\fR and the
-mode will be set to \fBECPP_CENTRONICS\fR mode. Afterwards, the application may
-change the mode back to the original mode with \fBECPPIOC_SETPARMS\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBECPPIOC_GETDEVID\fR\fR
-.ad
-.RS 20n
-This ioctl gets the \fIIEEE 1284\fR device ID from the peripheral in specified
-mode. Currently, the device ID can be retrieved only in Nibble mode. A pointer
-to the structure defined in \fB<sys/ecppsys.h>\fR must be passed as an
-argument.
-.sp
-The 1284 device ID structure:
-.sp
-.in +2
-.nf
-struct ecpp_device_id {
- int mode; /* mode to use for reading device id */
- int len; /* length of buffer */
- int rlen; /* actual length of device id string */
- char *addr; /* buffer address */
-};
-.fi
-.in -2
-
-The mode is the \fIIEEE 1284\fR mode into which the port will be negotiated to
-retrieve device ID information. If the peripheral or host do not support the
-mode, \fBEPROTONOSUPPORT\fR is returned. Applications should set mode to
-\fBECPP_NIBBLE_MODE\fR. \fBlen\fR is the length of the buffer pointed to by
-\fBaddr\fR. \fBrlen\fR is the actual length of the device ID string returned
-from the peripheral. If the returned \fBrlen\fR is greater than \fBlen\fR, the
-application can call \fBECPPIOC_GETDEVID\fR again with a buffer length equal or
-greater than \fBrlen\fR. Note that the two length bytes of the \fIIEEE 1284\fR
-device ID are not taken into account and are not returned in the user buffer.
-.sp
-After \fBECPPIOC_GETDEVID\fR successfully completes, the driver returns the
-link to \fBECPP_COMPAT_MODE\fR. The application is responsible for determining
-the previous mode the link was operating in and returning the link to that
-mode.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBBPPIOC_TESTIO\fR\fR
-.ad
-.RS 20n
-Tests the forward transfer readiness of a peripheral operating in Centronics or
-Compatibility mode.
-.sp
-\fBTESTIO\fR determines if the peripheral is ready to receive data by checking
-the open flags and the Centronics status signals. If the current mode of the
-device is \fBECPP_NIBBLE_MODE\fR, the driver negotiates the link into
-\fBECPP_COMPAT_MODE\fR, check the status signals and then return the link to
-\fBECPP_NIBBLE_MODE\fR mode. If the current mode is \fBECPP_CENTRONICS\fR or
-\fBECPP_COMPAT_MODE\fR, \fBTESTIO\fR examines the Centronics status signals in
-the current mode. To receive data, the device must have the \fBnErr\fR and
-\fBSelect\fR signals asserted and must not have the \fBPE\fR and \fBBusy\fR
-signals asserted. If \fBecpp\fR is transferring data, \fBTESTIO\fR waits until
-the previous data sent to the driver is delivered before executing
-\fBTESTIO\fR. However if an error condition occurs while a \fBTESTIO\fR is
-waiting, \fBTESTIO\fR returns immediately. If \fBTESTIO\fR determines that the
-conditions are ok, \fB0\fR is returned. Otherwise, \fB-1\fR is returned, errno
-is set to \fBEIO\fR and the state of the status pins is captured. The captured
-status can be retrieved using the \fBBPPIOC_GETERR\fR \fBioctl\fR(2) call. The
-\fBtimeout_occurred\fR and \fBbus_error\fR fields will never be set by this
-\fBioctl\fR(2).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBBPPIOC_GETERR\fR\fR
-.ad
-.RS 20n
-Get last error status. The argument is a pointer to a \fBstruct
-bpp_error_status\fR defined in \fB<sys/bpp_io.h>\fR header file. The error
-status structure is:
-.sp
-.in +2
-.nf
-struct bpp_error_status {
- char timeout_occurred; /* 1=timeout */
- char bus_error; /* not used */
- uchar_t pin_status; /* status of pins which
- /* could cause error */
-};
-.fi
-.in -2
-
-The pin_status field indicates possible error conditions. The valid bits for
-pin_status are: \fBBPP_ERR_ERR\fR, \fBBPP_SLCT_ERR\fR, \fBBPP_PE_ERR\fR,
-\fBBPP_BUSY_ERR\fR. A set bit indicates that the associated pin is asserted.
-.sp
-This structure indicates the status of all the appropriate status bits at the
-time of the most recent error condition during a \fBwrite\fR(2) call, or the
-status of the bits at the most recent \fBBPPIOC_TESTIO\fR \fBioctl\fR(2)call.
-.sp
-\fBpin_status\fR indicates possible error conditions under
-\fBECPP_CENTRONICS\fR or \fBECPP_COMPAT_MODE\fR. Under these modes, the state
-of the status pins will indicate the state of the device. For instance, many
-Centronics printers lower the \fBnErr\fR signal when a paper jam occurs. The
-behavior of the status pins depends on the device. Additional status
-information may be retrieved through the backchannel.
-.sp
-The \fBtimeout_occurred\fR value is set when a timeout occurs during
-\fBwrite\fR(2). \fBbus_error\fR is not used in this interface.
-.RE
-
-.sp
-.LP
-The following ioctls are used to directly read and write the parallel port
-status and control signals. If the current mode of the device is
-\fBECPP_ECP_MODE\fR or \fBECPP_NIBBLE_MODE\fR, the driver negotiates the link
-into \fBECPP_COMPAT_MODE\fR, gets or sets the registers and then returns the
-link to \fBECPP_NIBBLE_MODE\fR. If the current mode is \fBECPP_CENTRONICS\fR or
-\fBECPP_COMPAT_MODE\fR, these ioctls will get/set the register values in the
-current mode.
-.sp
-.ne 2
-.na
-\fB\fBECPPIOC_GETREGS\fR\fR
-.ad
-.RS 19n
-Read register values. The argument is a pointer to a \fBstruct ecpp_regs\fR.
-See below for a description of this structure.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBECPPIOC_SETREGS\fR\fR
-.ad
-.RS 19n
-Set \fBecpp\fR register values. The argument is a pointer to a \fBstruct
-ecpp_regs\fR. See below for a description of this structure. If a parameter is
-out of range, \fBEINVAL\fR is returned.
-.sp
-The Port Register Structure is defined in <\fBsys/ecppio.h\fR>.
-.sp
-.in +2
-.nf
-struct ecpp_regs {
- uchar dsr; /* status reg */
- u_char dcr; /* control reg */
-};
-.fi
-.in -2
-
-The status register is read-only. The \fBECPPIOC_SETREGS\fR ioctl has no affect
-on this register. Valid bit values for dsr are: \fBECPP_nERR\fR,
-\fBECPP_SLCT\fR, \fBECPP_PE\fR, \fBECPP_nACK\fR, \fBECPP_nBUSY\fR. All other
-bits are reserved and always return \fB1\fR.
-.sp
-The control register is read/write. Valid bit values for dcr are:
-\fBECPP_STB\fR, \fBECPP_AFX\fR, \fBECPP_nINIT\fR, \fBECPP_SLCTIN\fR. All other
-bits are reserved. Reading reserved bits always return 1. An attempt to write
-0s into these bits results in \fBEINVAL\fR.
-.RE
-
-.SH DEVICE SPECIAL FILES
-.ne 2
-.na
-\fB\fB/dev/lp\fIN\fR\fR\fR
-.ad
-.RS 19n
-x86 only. (Backwards compatibility with former \fBlp\fR(7D) devices.)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/printers/\fIN\fR\fR\fR
-.ad
-.RS 19n
-1284 compliant parallel port device special files appears in both namespaces.
-.RE
-
-.SH FILES
-.ne 2
-.na
-\fB/kernel/drv/sparcv9/ecpp\fR
-.ad
-.sp .6
-.RS 4n
-Device driver (SPARC)
-.RE
-
-.sp
-.ne 2
-.na
-\fB/kernel/drv/amd64/ecpp\fR
-.ad
-.sp .6
-.RS 4n
-Device driver (x86)
-.RE
-
-.sp
-.ne 2
-.na
-\fB/kernel/drv/ecpp.conf\fR
-.ad
-.sp .6
-.RS 4n
-Driver configuration file
-.RE
-
-.SH ERRORS
-.ne 2
-.na
-\fB\fBEBADF\fR\fR
-.ad
-.RS 10n
-The device is opened for write-only access and a read is attempted, or the
-device is opened for read-only access and a write is attempted.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEBUSY\fR\fR
-.ad
-.RS 10n
-The device has been opened and another open is attempted. An attempt has been
-made to unload the driver while one of the units is open.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEINVAL\fR\fR
-.ad
-.RS 10n
-A \fBECPPIOC_SETPARMS\fR \fBioctl()\fR is attempted with an out-of-range value
-in the \fBecpp_transfer_parms\fR structure. A \fBECPPIOC_SETREGS\fR
-\fBioctl()\fR is attempted with an invalid value in the \fBecpp_regs\fR
-structure. An \fBioctl()\fR is attempted with an invalid value in the command
-argument.An invalid command argument is received during \fBmodload\fR(1M) or
-\fBmodunload\fR(1M).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEIO\fR\fR
-.ad
-.RS 10n
-The driver encountered a bus error when attempting an access. A read or write
-did not complete properly, due to a peripheral error or a transfer timeout.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBENXIO\fR\fR
-.ad
-.RS 10n
-The driver has received an open request for a unit for which the attach failed.
-The driver has received a write request for a unit which has an active
-peripheral error.
-.RE
-
-.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture PCI-based systems
-_
- ISA-based systems (x86)
-_
-Interface stability Evolving
-.TE
-
-.SH SEE ALSO
-\fBmodload\fR(1M), \fBmodunload\fR(1M), \fBupdate_drv\fR(1M), \fBioctl\fR(2),
-\fBopen\fR(2), \fBread\fR(2), \fBwrite\fR(2), \fBattributes\fR(5),
-\fBusbprn\fR(7D), \fBprnio\fR(7I), \fBstreamio\fR(7I)
-.sp
-.LP
-\fIIEEE Std 1284-1994\fR
-.SH DIAGNOSTICS
-.ne 2
-.na
-\fBParallel port controller not supported\fR
-.ad
-.sp .6
-.RS 4n
-Driver does not support parallel port controller on the given host. Attach
-failed.
-.RE
diff --git a/usr/src/man/man7d/ehci.7d b/usr/src/man/man7d/ehci.7d
deleted file mode 100644
index b9ba26cf3d..0000000000
--- a/usr/src/man/man7d/ehci.7d
+++ /dev/null
@@ -1,314 +0,0 @@
-'\" te
-.\" Copyright (c) 2006 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH EHCI 7D "Jan 10, 2020"
-.SH NAME
-ehci \- Enhanced host controller driver
-.SH SYNOPSIS
-.nf
-\fBusb@unit-address\fR
-.fi
-
-.SH DESCRIPTION
-The \fBehci\fR driver is a USBA (Solaris USB Architecture) compliant nexus
-driver that supports the Enhanced Host Controller Interface Specification 2.0,
-an industry standard developed by Intel.
-.sp
-.LP
-A USB 2.0 host controller includes one high-speed host controller and zero or
-more USB 1.1 host controllers. The high-speed host controller implements an
-EHCI (Enhanced Host Controller Interface) that is used for all high-speed
-communications to high-speed-mode devices.
-.sp
-.LP
-All USB 2.0 devices connected to the root ports of the USB 2.0 host
-controller and all devices connected to a high-speed-mode hub should be routed
-to the EHCI host controller.
-.sp
-.LP
-All full- and low-speed devices connected to the root ports of the USB 2.0 host
-controller should be routed to the companion USB 1.1 host controllers. (OHCI or
-UHCI host controller).
-.sp
-.LP
-The \fBehci\fR supports bulk, interrupt, control and isochronous transfers
-(on USB1.\fIx\fR devices behind a USB2.0 hub).
-.SH FILES
-.ne 2
-.na
-\fB\fB/kernel/drv/sparcv9/ehci\fR\fR
-.ad
-.RS 28n
-Device driver (SPARC)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/ehci\fR\fR
-.ad
-.RS 28n
-Device driver (x86)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/ehci.conf\fR\fR
-.ad
-.RS 28n
-Driver configuration file
-.RE
-
-.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture SPARC, x86, PCI-based systems
-.TE
-
-.SH SEE ALSO
-\fBadd_drv\fR(1M), \fBprtconf\fR(1M), \fBrem_drv\fR(1M), \fBupdate_drv\fR(1M),
-\fBattributes\fR(5), \fBhubd\fR(7D), \fBuhci\fR(7D), \fBohci\fR(7D),
-\fBusba\fR(7D)
-.sp
-.LP
-\fIWriting Device Drivers\fR
-.sp
-.LP
-\fIUniversal Serial Bus Specification 2.0\fR
-.sp
-.LP
-\fIEnhanced Host Controller Interface Specification 1.0\fR
-.sp
-.LP
-\fISystem Administration Guide: Basic Administration\fR
-.sp
-.LP
-\fIhttp://www.usb.org\fR
-.sp
-.LP
-\fIhttp://www.intel.com/technology/usb/ehcispec.htm\fR
-.SH DIAGNOSTICS
-In addition to being logged, the following messages may appear on the system
-console. All messages are formatted in the following manner:
-.sp
-.in +2
-.nf
-WARNING: <device path> (ehci<instance number>): Message...
-.fi
-.in -2
-.sp
-
-.sp
-.ne 2
-.na
-\fBUnrecoverable USB hardware error.\fR
-.ad
-.sp .6
-.RS 4n
-There was an unrecoverable USB hardware error reported by the \fBehci\fR
-controller. Reboot the system. If this problem persists, contact your system
-vendor.
-.RE
-
-.sp
-.ne 2
-.na
-\fBNo SOF interrupts.\fR
-.ad
-.br
-.na
-\fB\fR
-.ad
-.sp .6
-.RS 4n
-No SOF interrupts have been received. This USB EHCI controller is unusable.
-.RE
-
-.sp
-.ne 2
-.na
-\fBError recovery failure: Please hotplug the 2.0 hub at <device path>.\fR
-.ad
-.sp .6
-.RS 4n
-The driver failed to clear 2.0 hub's TT buffer. Remove and reinsert the
-external USB2.0 hub.
-.RE
-
-.sp
-.ne 2
-.na
-\fBRevision<xx> is not supported.\fR
-.ad
-.sp .6
-.RS 4n
-High speed USB devices prior to revision 0.95 are not supported.
-.RE
-
-.sp
-.LP
-The following messages may be entered into the system log. They are formatted
-in the following manner:
-.sp
-.in +2
-.nf
-<device path> (ehci<instance number>): Message...
-.fi
-.in -2
-.sp
-
-.sp
-.ne 2
-.na
-\fBUnable to take control from BIOS. Failure is ignored.\fR
-.ad
-.sp .6
-.RS 4n
-The driver was unable to take control of the EHCI hardware from the system's
-BIOS. This failure is ignored. To abort the attach on this take-over failure,
-comment out a property in ehci.conf. (x86 only).
-.RE
-
-.sp
-.ne 2
-.na
-\fBUnable to take control from BIOS.\fR
-.ad
-.sp .6
-.RS 4n
-The driver is unable to take control of the EHCI hardware from the
-system's BIOS and aborts the attach. High speed (USB 2.0) support is disabled.
-In this case, all USB devices run at full/low speed. Contact your system vendor
-or your system administrator for possible changes in BIOS settings. You can
-disable a property in \fBehci.conf\fR to ignore this failure. (x86 only.)
-.RE
-
-.sp
-.ne 2
-.na
-\fBLow speed device is not supported.\fR
-.ad
-.br
-.na
-\fBFull speed device is not supported.\fR
-.ad
-.sp .6
-.RS 4n
-The driver detected a low or full speed device on its root hub port. Per USB
-2.0 specification, the device should be routed to a companion host controller
-(OHCI or UHCI). However, no attached companion host controller appears to be
-available. Therefore, low and full speed devices are not supported.
-.RE
-
-.sp
-.ne 2
-.na
-\fBLow speed endpoint's poll interval of <n> ms is below threshold. Rounding up
-to 8 ms.\fR
-.ad
-.sp .6
-.RS 4n
-Low speed endpoints are limited to polling intervals between 8 ms and 255 ms.
-If a device reports a polling interval that is less than 8 ms, the driver uses
-8 ms instead.
-.RE
-
-.sp
-.ne 2
-.na
-\fBLow speed endpoint's poll interval is greater than 255 ms.\fR
-.ad
-.sp .6
-.RS 4n
-The low speed device's polling interval is out of range. The host controller
-does not allocate bandwidth for this device. This device is not usable.
-.RE
-
-.sp
-.ne 2
-.na
-\fBFull speed endpoint's poll interval must be between 1 and 255 ms.\fR
-.ad
-.sp .6
-.RS 4n
-The full speed device's polling interval is out of range. The host controller
-does not allocate bandwidth for this device. This device is not usable.
-.RE
-
-.sp
-.ne 2
-.na
-\fBHigh speed endpoint's poll interval must be between 1 and 16 units.\fR
-.ad
-.sp .6
-.RS 4n
-The high speed device's polling interval is out of range. The host controller
-will not allocate bandwidth for this device. This device will not be usable.
-Refer to the USB specification, revision 2.0 for the unit definition.
-.RE
-
-.sp
-.ne 2
-.na
-\fBehci_modify_qh_status_bit: Failed to halt qh=<address>.\fR
-.ad
-.sp .6
-.RS 4n
-Error recovery failed. Please disconnect and reinsert all devices or reboot.
-.RE
-
-.LP
-Note -
-.sp
-.RS 2
-Due to recently discovered incompatibilities with this USB controller,
-USB2.\fIx\fR transfer support has been disabled. However, this device continues
-to function as a USB1.\fIx\fR controller. Information on enabling USB2.x
-support is provided in this man page.
-.LP
-VIA chips may not be compatible with this driver. To bind \fBehci\fR
-specifically to the chip and eliminate the warnings, and to enable USB2.x
-support, a new, more specific driver alias (refer to \fBadd_drv\fR(1M) and
-\fBupdate_drv\fR(1M)) must be specified for \fBehci\fR. By default, the
-\fBehci\fR alias is 'pciclass,0c0320.' The compatible names in the
-\fBprtconf\fR(1M) output provides additional aliases. For example:
-.RE
-.sp
-.in +2
-.nf
- # prtconf -vp | grep pciclass,0c0320
- compatible: 'pci1106,3104.1106.3104.2063' +
-\&'pci1106,3104.1106.3104' + 'pci1106,3104' +
- pci1106,3104.2063' + 'pci1106,3104' + 'pciclass,0c0320' +
-\&'pciclass,0c03'
- ....
-
-
- A more specific alias is 'pci1106,3104.' Perform the follow-
- ing step to add this alias, then reboot the system:
-
-
- # update_drv -a -i '"pci1106,3104"' ehci
-
- # reboot
-.fi
-.in -2
-
-.sp
-.LP
-After you apply the above workaround, the following message is displayed in
-your system log:
-.sp
-.LP
-Applying VIA workarounds.
diff --git a/usr/src/man/man7d/elxl.7d b/usr/src/man/man7d/elxl.7d
deleted file mode 100644
index a6d3d3bf64..0000000000
--- a/usr/src/man/man7d/elxl.7d
+++ /dev/null
@@ -1,103 +0,0 @@
-.\" Copyright 2014 Garrett D'Amore <garrett@damore.org>
-.\" Redistribution and use in source and binary forms, with or without
-.\" modification, are permitted provided that the following conditions
-.\" are met:
-.\" 1. Redistributions of source code must retain the above copyright
-.\" notice, this list of conditions and the following disclaimer.
-.\" 2. Redistributions in binary form must reproduce the above copyright
-.\" notice, this list of conditions and the following disclaimer in the
-.\" documentation and/or other materials provided with the distribution.
-.\"
-.\" THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER AND CONTRIBUTORS
-.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-.\" LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
-.\" FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
-.\" COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
-.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
-.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
-.\" USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
-.\" ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
-.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE
-.\"
-.Dd "Jan 10, 2020"
-.Dt ELXL 7D
-.Os
-.Sh NAME
-.Nm elxl
-.Nd 3Com Etherlink XL device driver
-.Sh SYNOPSIS
-.Pa /dev/elxl
-.Sh DESCRIPTION
-The
-.Nm
-driver provides support for the 3Com Etherlink XL
-family of Ethernet and Fast Ethernet PCI controllers.
-These are often known by their part numbers, most often 3c905 or 3c900 variants.
-.Lp
-The 3c905 devices generally support some form of 100 Mbps Ethernet,
-whereas the 3c900 devices usually only support 10 Mbps.
-Some devices support legacy media such as 10BASE-15, 10BASE-2, and even
-10BASE-FL.
-.
-Where applicable, the devices support auto-negotiation, both full and
-half duplex, etc.
-They also support full size MTUs (1500 bytes), even when used with VLANs.
-.
-.Lp
-The device driver supports the
-.Xr ieee802.3 5
-properties, which can be configured with
-.Xr dladm 1M .
-.Lp
-In addition, for devices with multiple external media ports, the driver
-supports a driver-specific
-.Xr dladm 1M
-property called
-.Sy media ,
-which can take one of the following values, depending on the available
-media options on the device:
-.Lp
-.Bl -tag -compact -offset indent -width Sy
-.It Sy mii
-Media Independent Interface (MII), also 100BASE-TX
-.It Sy tp-hdx
-10 Mbps twisted pair, half-duplex
-.It Sy tp-fdx
-10 Mbps twisted pair full-duplex
-.It Sy fx-hdx
-100BASE-FX (fiber), half-duplex
-.It Sy fx-hdx
-100BASE-FX (fiber), full-duplex
-.It Sy bnc
-10BASE-2
-.Pq BNC, aka Dq thin-net
-.It Sy aui
-10BASE-15
-.Pq aka Dq thick-net
-.It Sy fl-hdx
-10BASE-FL (fiber), half-duplex
-.It Sy fl-fdx
-10BASE-FL (fiber), full-duplex
-.El
-.Lp
-The specific media options available can be queried with the
-device-specific
-.Sy available_media
-.Xr dladm 1M
-property.
-.Sh FILES
-.Bl -tag -width /dev/elxl
-.It Pa /dev/elxl
-Special character device.
-.El
-.Sh SEE ALSO
-.Xr dladm 1M ,
-.Xr ifconfig 1M ,
-.Xr pci 4 ,
-.Xr ieee802.3 5 ,
-.Xr dlpi 7P
-.Rs
-.%T IEEE 802.3: Ethernet
-.%Q IEEE Standards Association
-.Re
diff --git a/usr/src/man/man7d/ena.7d b/usr/src/man/man7d/ena.7d
deleted file mode 100644
index d4070e1745..0000000000
--- a/usr/src/man/man7d/ena.7d
+++ /dev/null
@@ -1,135 +0,0 @@
-.\"
-.\" This file and its contents are supplied under the terms of the
-.\" Common Development and Distribution License ("CDDL"), version 1.0.
-.\" You may only use this file in accordance with the terms of version
-.\" 1.0 of the CDDL.
-.\"
-.\" A full copy of the text of the CDDL should have accompanied this
-.\" source. A copy of the CDDL is also available via the Internet at
-.\" http://www.illumos.org/license/CDDL.
-.\"
-.\"
-.\" Copyright 2021 Oxide Computer Company
-.\"
-.Dd Nov 17, 2021
-.Dt ENA 7D
-.Os
-.Sh NAME
-.Nm ena
-.Nd Driver for the AWS Elastic Network Adapter
-.Sh SYNOPSIS
-.Pa /dev/net/ena*
-.Sh DESCRIPTION
-The
-.Sy ena
-driver is a GLDv3 NIC driver for the AWS Elastic Network Adapter
-family of virtual devices.
-The driver supports:
-.Bl -dash -offset indent
-.It
-Jumbo frames up to 9216 bytes.
-.It
-Multiple Rx and Tx rings.
-.El
-.Pp
-By design, this driver does not support VNICs.
-A given ENA device can only ever receive traffic for a single unicast
-MAC address and IP address combination, as determined by the AWS configuration.
-There is no support for promiscuous mode, or for receiving traffic for
-additional unicast or multicast addresses.
-.Sh CONFIGURATION
-The
-.Sy ena.conf
-file contains user configurable parameters, each of which is described
-below.
-This file is read when an ENA device is found and an instance of the
-driver is attached to it.
-Changes made to this file do not affect running instances.
-Only instances attached after the changes will see the effects of
-those changes.
-Therefore, if you want your change to take effect on a running
-instance, you must somehow reload it.
-That could be done by a manual reloading of the driver or a system
-reboot.
-.Sh PROPERTIES
-The configuration file can be found at
-.Pa /kernel/drv/ena.conf .
-.Bl -hang -width Ds
-.It Sy rx_queue_num_descs
-.Bd -filled -compact
-Minimum:
-.Sy 64 |
-Maximum:
-.Sy device dependent
-.Ed
-.Bd -filled -compact
-Default:
-.Sy device maximum
-.Ed
-.Bd -filled
-The
-.Sy rx_queue_num_descs
-property determines the number of descriptors provided by the Rx queue.
-Currently a single descriptor is equal to a single packet, but in the
-future it may be that a single packet consumes multiple descriptors.
-.Ed
-.It Sy rx_queue_intr_limit
-.Bd -filled -compact
-Minimum:
-.Sy 16 |
-Maximum:
-.Sy 4096
-.Ed
-.Bd -filled -compact
-Default:
-.Sy 256
-.Ed
-.Bd -filled
-The
-.Sy rx_queue_intr_limit
-property determines the number frames an Rx interrupt will attempt to
-process before returning and claiming the interrupt.
-This is meant to keep the ENA Rx interrupt handler from consuming too
-much system time.
-In general, when a NIC becomes saturated with packets, the
-.Sy MAC
-layer will switch the driver into polling mode to reduce interrupt
-load.
-.Ed
-.It Sy tx_queue_num_descs
-.Bd -filled -compact
-Minimum:
-.Sy 64 |
-Maximum:
-.Sy device dependent
-.Ed
-.Bd -filled -compact
-Default:
-.Sy device maximum
-.Ed
-.Bd -filled
-The
-.Sy tx_queue_num_descs
-property determines the number of descriptors provided by the Tx queue.
-Currently a single descriptor is equal to a single packet, but in the
-future it may be that a single packet consumes multiple descriptors.
-.Ed
-.El
-.Sh FILES
-.Bl -tag -width Pa
-.It Pa /kernel/drv/amd64/ena
-Device driver (x86)
-.It Pa /kernel/drv/ena.conf
-Driver configuration file containing user-configurable options
-.El
-.Sh INTERFACE STABILITY
-The tunables in
-.Pa ena.conf
-are considered
-.Sy Evolving
-and may change in the future.
-.Sh SEE ALSO
-.Xr dladm 1M ,
-.Xr snoop 1M ,
-.Xr driver.conf 4 ,
-.Xr dlpi 7P
diff --git a/usr/src/man/man7d/eri.7d b/usr/src/man/man7d/eri.7d
deleted file mode 100644
index 58b5b9aa35..0000000000
--- a/usr/src/man/man7d/eri.7d
+++ /dev/null
@@ -1,351 +0,0 @@
-'\" te
-.\" Copyright (c) 2000, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH ERI 7D "Mar 1, 2000"
-.SH NAME
-eri \- eri Fast-Ethernet device driver
-.SH SYNOPSIS
-.LP
-.nf
-\fB/dev/eri\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBeri\fR Fast Ethernet driver is a multi-threaded, loadable, clonable,
-\fBSTREAMS\fR\(embased hardware driver supporting the connectionless Data Link
-Provider Interface \fBdlpi\fR(7P) over an \fBeri\fR Fast-Ethernet controller.
-Multiple \fBeri\fR devices installed within the system are supported by the
-driver.
-.sp
-.LP
-The \fBeri\fR driver provides basic support for the \fBeri\fR hardware and
-handles the \fBeri\fR device. Functions include chip initialization, frame
-transit and receive, multicast and promiscuous support, and error recovery and
-reporting.
-.sp
-.LP
-The \fBeri\fR device provides 100Base-TX networking interfaces using the SUN
-\fBRIO\fR \fBASIC\fR and an internal transceiver. The \fBRIO\fR \fBASIC\fR
-provides the \fBPCI\fR interface and \fBMAC\fR functions. The physical layer
-functions are provided by the internal transceiver which connects to a RJ-45
-connector.
-.sp
-.LP
-The 100Base-TX standard specifies an auto-negotiation protocol to automatically
-select the mode and speed of operation. The internal transceiver is capable of
-performing auto-negotiation using the remote-end of the link (link partner) and
-receives the capabilities of the remote end. It selects the highest common
-denominator mode of operation based on the priorities. It also supports a
-forced-mode of operation under which the driver selects the mode of operation.
-.SH APPLICATION PROGRAMMING INTERFACE
-.sp
-.LP
-The cloning character-special device \fB/dev/eri\fR is used to access all
-\fBeri\fR controllers installed within the system.
-.SS "eri and DLPI"
-.sp
-.LP
-The \fBeri\fR driver is a "style 2" Data Link Service provider. All
-\fBM_PROTO\fR and \fBM_PCPROTO\fR type messages are interpreted as \fBDLPI\fR
-primitives. Valid \fBDLPI\fR primitives are defined in \fB<sys/dlpi.h>.\fR
-Refer to \fBdlpi\fR(7P) for more information.
-.sp
-.LP
-An explicit \fBDL_ATTACH_REQ\fR message by the user is required to associate
-the opened stream with a particular device (\fBppa\fR). The \fBppa\fR ID is
-interpreted as an \fBunsigned integer\fR data type and indicates the
-corresponding device instance (unit) number. An error (\fBDL_ERROR_ACK\fR) is
-returned by the driver if the \fBppa\fR field value does not correspond to a
-valid device instance number for this system. The device is initialized on
-first attach and de-initialized (stopped) at last detach.
-.sp
-.LP
-The values returned by the driver in the \fBDL_INFO_ACK\fR primitive in
-response to the \fBDL_INFO_REQ\fR from the user are as follows:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The maximum \fBSDU\fR is \fB1500\fR (\fBETHERMTU\fR - defined in
-\fB<sys/ethernet.h>\fR ).
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The minimum \fBSDU\fR is \fB0\fR.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The \fBdlsap\fR address length is \fB8\fR.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The \fBMAC\fR type is \fBDL_ETHER\fR.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The \fBsap\fR length values is \fB-2\fR, meaning the physical address component
-is followed immediately by a 2 byte \fBsap\fR component within the \fBDLSAP\fR
-address.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The service mode is \fBDL_CLDLS\fR.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Optional quality of service (\fBQOS\fR) is not currently supported so
-\fBQOS\fR fields are \fB0\fR.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The provider style is \fBDL_STYLE\fR.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The version is \fBDL_VERSION_2\fR.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The broadcast address value is Ethernet/IEEE broadcast address
-(\fB0xFFFFFF\fR).
-.RE
-.sp
-.LP
-Once in the \fBDL_ATTACHED\fR state, the user must send a \fBDL_BIND_REQ\fR to
-associate a particular \fBSAP\fR (Service Access Pointer) with the stream. The
-\fBeri\fR driver interprets the \fBsap\fR field within the \fBDL_BIND_REQ\fR as
-an Ethernet "type," therefore valid values for the \fBsap\fR field are in the
-[\fB0\fR-\fB0xFFFF\fR] range. Only one Ethernet type can be bound to the
-stream at any time.
-.sp
-.LP
-If the user selects a \fBsap\fR with a value of \fB0\fR, the receiver will be
-in IEEE 802.3 mode. All frames received from the media having a Ethernet type
-field in the range [\fB0\fR-\fB1500\fR] are assumed to be 802.3 frames and are
-routed up all open Streams which are bound to \fBsap\fR value \fB0\fR. If more
-than one Stream is in 802.3 mode, the frame will be duplicated and routed up
-multiple Streams as \fBDL_UNITDATA_IND\fR messages.
-.sp
-.LP
-In transmission, the driver checks the \fBsap\fR field of the \fBDL_BIND_REQ\fR
-to determine if the value is \fB0\fR or if the Ethernet type field is in the
-range [\fB0\fR-\fB1500\fR]. If either is true, the driver computes the length
-of the message, not including initial \fBM_PROTO\fR mblk (message block), of
-all subsequent \fBDL_UNITDATA_REQ\fR messages, and transmits 802.3 frames that
-have this value in the \fBMAC\fR frame header length field.
-.sp
-.LP
-The \fBeri\fR driver's \fBDLSAP\fR address format consists of the 6 byte
-physical (Ethernet) address component followed immediately by the 2 byte
-\fBsap\fR (type) component, producing an 8 byte \fBDLSAP\fR address.
-Applications should \fInot\fR hardcode to this particular
-implementation-specific \fBDLSAP\fR address format but use information returned
-in the \fBDL_INFO_ACK\fR primitive to compose and decompose \fBDLSAP\fR
-addresses. The \fBsap\fR length, full \fBDLSAP\fR length, and
-\fBsap\fR/physical ordering are included within the \fBDL_INFO_ACK.\fR The
-physical address length can be computed by subtracting the \fBsap\fR length
-from the full \fBDLSAP\fR address length or by issuing the
-\fBDL_PHYS_ADDR_REQ\fR to obtain the current physical address associated with
-the stream.
-.sp
-.LP
-Once in the \fBDL_BOUND\fR state, the user may transmit frames on the Ethernet
-by sending \fBDL_UNITDATA_REQ\fR messages to the \fBeri\fR driver. The
-\fBeri\fR driver will route received Ethernet frames up all open and bound
-streams having a \fBsap\fR which matches the Ethernet type as
-\fBDL_UNITDATA_IND\fR messages. Received Ethernet frames are duplicated and
-routed up multiple open streams if necessary. The \fBDLSAP\fR address contained
-within the \fBDL_UNITDATA_REQ\fR and \fBDL_UNITDATA_IND\fR messages consists of
-both the \fBsap\fR (type) and physical (Ethernet) components.
-.SS "eri Primitives"
-.sp
-.LP
-In addition to the mandatory connectionless \fBDLPI\fR message set, the driver
-also supports the following primitives:
-.sp
-.LP
-The \fBDL_ENABMULTI_REQ\fR and \fBDL_DISABMULTI_REQ\fR primitives
-enable/disable reception of individual multicast group addresses. A set of
-multicast addresses may be iteratively created and modified on a per-stream
-basis using these primitives. These primitives are accepted by the driver in
-any state following \fBDL_ATTACHED\fR.
-.sp
-.LP
-The \fBDL_PROMISCON_REQ\fR and \fBDL_PROMISCOFF_REQ\fR primitives with the
-\fBDL_PROMISC_PHYS\fR flag set in the \fBdl_level\fR field enables/disables
-reception of all promiscuous mode frames on the media, including frames
-generated by the local host. When used with the \fBDL_PROMISC_SAP\fR flag set,
-this enables/disables reception of all \fBsap\fR (Ethernet type) values. When
-used with the \fBDL_PROMISC_MULTI\fR flag set, this enables/disables reception
-of all multicast group addresses. The effect of each is always on a per-stream
-basis and independent of the other \fBsap\fR and physical level configurations
-on this stream or other streams.
-.sp
-.LP
-The \fBDL_PHYS_ADDR_REQ\fR primitive returns the 6 octet Ethernet address
-currently associated (attached) to the stream in the \fBDL_PHYS_ADDR_ACK\fR
-primitive. This primitive is valid only in states following a successful
-\fBDL_ATTACH_REQ\fR.
-.sp
-.LP
-The \fBDL_SET_PHYS_ADDR_REQ\fR primitive changes the 6 octet Ethernet address
-currently associated (attached) to this stream. The credentials of the process
-which originally opened this stream must be superuser, or \fBEPERM\fR is
-returned in the \fBDL_ERROR_ACK\fR. This primitive is destructive because it
-affects all current and future streams attached to this device. An \fB
-M_ERROR\fR is sent up all other streams attached to this device when this
-primitive is successful on this stream. Once changed, all streams subsequently
-opened and attached to this device will obtain this new physical address. Once
-changed, the physical address will remain until this primitive is used to
-change the physical address again or the system is rebooted, whichever comes
-first.
-.SS "eri DRIVER"
-.sp
-.LP
-By default, the eri driver performs auto-negotiation to select the mode and
-speed of the link, which can be in one of the following modes, as described in
-the 100Base-TX standard:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-100 Mbps, full-duplex
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-100 Mbps, half-duplex
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-10 Mbps, full-duplex
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-10 Mbps, half-duplex
-.RE
-.sp
-.LP
-The auto-negotiation protocol automatically selects:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Operation mode (half-duplex or full-duplex)
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Speed (100 Mbps or 10 Mbps)
-.RE
-.sp
-.LP
-The auto-negotiation protocol does the following:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Gets all modes of operation supported by the link partner
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Advertises its capabilities to the Link Partner
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Selects the highest common denominator mode of operation based on the
-priorities
-.RE
-.sp
-.LP
-The internal transceiver is capable of all of the operating speeds and modes
-listed above. By default, auto-negotiation is used to select the speed and the
-mode of the link and the common mode of operation with the link partner.
-.sp
-.LP
-For users who want to select the speed and mode of the link, the \fBeri\fR
-device supports programmable \fBIPG\fR (Inter-Packet Gap) parameters \fBipg1\fR
-and \fBipg2\fR. Sometimes, the user may want to alter these values depending
-on whether the driver supports 10 Mbps or 100 Mbps and accordingly, \fBIPG\fR
-will be set to 9.6 or 0.96 microseconds.
-.SS "eri Parameter List"
-.sp
-.LP
-The \fBeri\fR driver provides for setting and getting various parameters for
-the \fBeri\fR device. The parameter list includes current transceiver status,
-current link status, inter-packet gap, local transceiver capabilities and link
-partner capabilities.
-.sp
-.LP
-The local transceiver has two set of capabilities: one set reflects hardware
-capabilities, which are read-only \fB(RO)\fR parameters. The second set
-reflects the values chosen by the user and is used in speed selection and
-possess read/write \fB(RW)\fR capability. At boot time, these two sets of
-capabilities will be the same. Because the current default value of these
-parameters can only be read and not modified, the link partner capabilities are
-also read only.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/dev/eri\fR \fR
-.ad
-.RS 28n
-\fBeri\fR special character device.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/eri.conf\fR \fR
-.ad
-.RS 28n
- System wide default device driver properties
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/sparcv9/eri\fR \fR
-.ad
-.RS 28n
- 64 bit device driver
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBndd\fR(1M), \fBnetstat\fR(1M), \fBdriver.conf\fR(4), \fBhme\fR(7D),
-\fBqfe\fR(7d), \fBdlpi\fR(7P)
diff --git a/usr/src/man/man7d/fas.7d b/usr/src/man/man7d/fas.7d
deleted file mode 100644
index c993025ee3..0000000000
--- a/usr/src/man/man7d/fas.7d
+++ /dev/null
@@ -1,1007 +0,0 @@
-'\" te
-.\" Copyright (c) 1995, Sun Microsystems, Inc.
-.\" All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH FAS 7D "Jun 20, 1997"
-.SH NAME
-fas \- FAS SCSI Host Bus Adapter Driver
-.SH SYNOPSIS
-.LP
-.nf
-fas@\fIsbus-slot\fR,0x8800000
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBfas\fR Host Bus Adapter driver is a \fBSCSA\fR compliant nexus driver
-that supports the Qlogic FAS366 \fBSCSI\fR chip.
-.sp
-.LP
-The \fBfas\fR driver supports the standard functions provided by the
-\fBSCSA\fR interface. The driver supports tagged and untagged queuing, wide and
-fast \fBSCSI,\fR almost unlimited transfer size (using a moving \fBDVMA\fR
-window approach), and auto request sense; but it does not support linked
-commands.
-.SS "Driver Configuration"
-.sp
-.LP
-The \fBfas\fR driver can be configured by defining properties in
-\fBfas.conf\fR which override the global \fBSCSI\fR settings. Supported
-properties are: \fBscsi-options\fR, \fBtarget<\fIn\fR>-scsi-options\fR,
-\fBscsi-reset-delay\fR, \fBscsi-watchdog-tick\fR, \fBscsi-tag-age-limit\fR,
-\fBscsi-initiator-id\fR.
-.sp
-.LP
-\fBtarget<\fIn\fR>-scsi-options\fR overrides the \fBscsi-options\fR property
-value for \fBtarget<\fIn\fR>\fR. <\fIn\fR> can vary from decimal \fB0\fR to
-\fB15\fR. The supported \fBscsi-options\fR are: \fBSCSI_OPTIONS_DR\fR,
-\fBSCSI_OPTIONS_SYNC\fR, \fBSCSI_OPTIONS_TAG\fR, \fBSCSI_OPTIONS_FAST\fR, and
-\fBSCSI_OPTIONS_WIDE\fR.
-.sp
-.LP
-After periodic interval \fBscsi-watchdog-tick\fR, the \fBfas\fR driver searches
-all current and disconnected commands for timeouts.
-.sp
-.LP
-\fBscsi-tag-age-limit\fR is the number of times that the \fBfas\fR driver
-attempts to allocate a particular tag ID that is currently in use after going
-through all tag IDs in a circular fashion. After finding the same tag ID in
-use \fBscsi-tag-age-limit\fR times, no more commands will be submitted to this
-target until all outstanding commands complete or timeout.
-.sp
-.LP
-Refer to \fBscsi_hba_attach\fR(9F) for details.
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRA sample of fas configuration file
-.sp
-.LP
-Create a file called \fB/kernel/drv/fas.conf\fR and add this line:
-
-.sp
-.LP
-\fBscsi-options=0x78;\fR
-
-.sp
-.LP
-This disables tagged queuing, Fast \fBSCSI,\fR and Wide mode for all \fBfas\fR
-instances. The following example disables an option for one specific \fBfas\fR
-(refer to \fBdriver.conf\fR(4) for more details):
-
-.sp
-.in +2
-.nf
- name="fas" parent="/iommu@f,e0000000/sbus@f,e0001000"
- reg=3,0x8800000,0x10,3,0x8810000,0x40
- target1-scsi-options=0x58
- scsi-options=0x178 scsi-initiator-id=6;
-.fi
-.in -2
-
-.sp
-.LP
-Note that the default initiator ID in OBP is 7 and that the change to ID 6 will
-occur at attach time. It may be preferable to change the initiator ID in OBP.
-
-.sp
-.LP
-The example above sets \fBscsi-options\fR for target 1 to \fB0x58\fR and all
-other targets on this \fBSCSI\fR bus to \fB0x178\fR.
-
-.sp
-.LP
-The physical pathname of the parent can be determined using the \fB/devices\fR
-tree or following the link of the logical device name:
-
-.sp
-.in +2
-.nf
- # ls \fB-l\fR /dev/rdsk/c1t3d0s0
- lrwxrwxrwx 1 root other 78 Aug 28 16:05 /dev/rdsk/c1t3d0s0 ->
-
-\&.\|.\|/.\|.\|/devices/iommu@f,e0000000\
- sbus@f,e0001000/SUNW,fas@3,8800000/sd@3,0:a,raw
-.fi
-.in -2
-
-.sp
-.LP
-Determine the register property values using the output from \fBprtconf\fR(1M)
-(with the \fB-v\fR option):
-
-.sp
-.in +2
-.nf
-SUNW,fas, instance #0
- \|.\|.\|.\|.
- Register Specifications:
- Bus Type=0x3, Address=0x8800000, Size=10
- Bus Type=0x3, Address=0x8810000, Size=40
-.fi
-.in -2
-
-.sp
-.LP
-\fBscsi-options\fR can also be specified per device type using the device
-inquiry string. All the devices with the same inquiry string will have the same
-\fBscsi-options\fR set. This can be used to disable some \fBscsi-options\fR on
-all the devices of the same type.
-
-.sp
-.in +2
-.nf
-device-type-scsi-options-list=
- "TOSHIBA XM5701TASUN12XCD", "cd-scsi-options";
-cd-scsi-options = 0x0;
-.fi
-.in -2
-
-.sp
-.LP
-The above entry in \fB/kernel/drv/fas.conf\fR sets the \fBscsi-options\fR for
-all devices with inquiry string \fBTOSHIBA XM5701TASUN12XCD\fR to
-\fBcd-scsi-options\fR. To get the inquiry string, run the \fBprobe-scsi\fR or
-\fBprobe-scsi-all\fR command at the \fBok\fR prompt before booting the system.
-
-.sp
-.LP
-To set \fBscsi-options\fR more specifically per target:
-
-.sp
-.in +2
-.nf
-target1-scsi-options=0x78;
-device-type-scsi-options-list =
- "SEAGATE ST32550W", "seagate-scsi-options" ;
-seagate-scsi-options = 0x58;
-scsi-options=0x3f8;
-.fi
-.in -2
-
-.sp
-.LP
-The above sets \fBscsi-options\fR for target 1 to \fB0x78\fR and for all other
-targets on this \fBSCSI\fR bus to \fB0x3f8\fR except for one specific disk type
-which will have \fBscsi-options\fR set to \fB0x58\fR.
-
-.sp
-.LP
-\fBscsi-options\fR specified per target ID have the highest precedence,
-followed by \fBscsi-options\fR per device type. Global \fBfas scsi-options\fR
-(effecting all instances) per bus have the lowest precedence.
-
-.sp
-.LP
-The system needs to be rebooted before the specified \fBscsi-options\fR take
-effect.
-
-.SS "Driver Capabilities"
-.sp
-.LP
-The target driver needs to set capabilities in the \fBfas\fR driver in order to
-enable some driver features. The target driver can query and modify these
-capabilities: \fBsynchronous\fR, \fBtagged-qing\fR, \fBwide-xfer\fR,
-\fBauto-rqsense\fR, \fBqfull-retries\fR, \fBqfull-retry-interval\fR. All other
-capabilities can only be queried.
-.sp
-.LP
-By default, \fBtagged-qing\fR, \fBauto-rqsense\fR, and \fBwide-xfer\fR
-capabilities are disabled, while \fBdisconnect\fR, \fBsynchronous\fR, and
-\fBuntagged-qing\fR are enabled. These capabilities can only have binary values
-(\fB0\fR or \fB1\fR). The default value for \fBqfull-retries\fR is \fB10\fR and
-the default value for \fBqfull-retry-interval\fR is \fB100\fR. The
-\fBqfull-retries\fR capability is a \fBuchar_t\fR (\fB0\fR to \fB255\fR) while
-\fBqfull-retry-interval\fR is a \fBushort_t\fR (\fB0\fR to \fB65535\fR).
-.sp
-.LP
-The target driver needs to enable \fBtagged-qing\fR and \fBwide-xfer\fR
-explicitly. The \fBuntagged-qing\fR capability is always enabled and its value
-cannot be modified, because \fBfas\fR can queue commands even when
-\fBtagged-qing\fR is disabled.
-.sp
-.LP
-Whenever there is a conflict between the value of \fBscsi-options\fR and a
-capability, the value set in \fBscsi-options\fR prevails. Only \fBwhom != 0\fR
-is supported in the \fBscsi_ifsetcap\fR(9F) call.
-.sp
-.LP
-Refer to \fBscsi_ifsetcap\fR(9F) and \fBscsi_ifgetcap\fR(9F) for details.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/fas\fR\fR
-.ad
-.RS 24n
-\fBELF\fR Kernel Module
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/fas.conf\fR\fR
-.ad
-.RS 24n
-Optional configuration file
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture T{
-Limited to Sparc SBus-based systems with FAS366-based SCSI port and SunSWIFT SBus SCSI Host Adapter/Fast Ethernet option.
-T}
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBprtconf\fR(1M), \fBdriver.conf\fR(4), \fBattributes\fR(5),
-\fBscsi_abort\fR(9F), \fBscsi_hba_attach\fR(9F), \fBscsi_ifgetcap\fR(9F),
-\fBscsi_ifsetcap\fR(9F), \fBscsi_reset\fR(9F), \fBscsi_sync_pkt\fR(9F),
-\fBscsi_transport\fR(9F), \fBscsi_device\fR(9S), \fBscsi_extended_sense\fR(9S),
-\fBscsi_inquiry\fR(9S), \fBscsi_pkt\fR(9S)
-.sp
-.LP
-\fIWriting Device Drivers\fR
-.sp
-.LP
-\fIANSI Small Computer System Interface-2 (SCSI-2)\fR
-.sp
-.LP
-QLogic Corporation, \fIFAS366 Technical Manuals\fR.
-.SH DIAGNOSTICS
-.sp
-.LP
-The messages described below are some that may appear on the system console, as
-well as being logged.
-.sp
-.LP
-The first five messages may be displayed while the \fBfas\fR driver is trying
-to attach; these messages mean that the \fBfas\fR driver was unable to attach.
-All of these messages are preceded by "fas%d", where "%d" is the instance
-number of the \fBfas\fR controller.
-.sp
-.ne 2
-.na
-\fBDevice in slave-only slot\fR
-.ad
-.sp .6
-.RS 4n
-The SBus device has been placed in a slave-only slot and will not be
-accessible; move to non-slave-only SBus slot.
-.RE
-
-.sp
-.ne 2
-.na
-\fBDevice is using a hilevel intr\fR
-.ad
-.sp .6
-.RS 4n
-The device was configured with an interrupt level that cannot be used with this
-\fBfas\fR driver. Check the SBus device.
-.RE
-
-.sp
-.ne 2
-.na
-\fBCannot alloc dma handle\fR
-.ad
-.sp .6
-.RS 4n
-Driver was unable to allocate memory for a DMA controller.
-.RE
-
-.sp
-.ne 2
-.na
-\fBCannot alloc cmd area\fR
-.ad
-.sp .6
-.RS 4n
-Driver was unable to allocate memory for a command address.
-.RE
-
-.sp
-.ne 2
-.na
-\fBCannot create kmem_cache\fR
-.ad
-.sp .6
-.RS 4n
-Driver was unable to allocate memory for internal data structures.
-.RE
-
-.sp
-.ne 2
-.na
-\fBUnable to map FAS366 registers\fR
-.ad
-.sp .6
-.RS 4n
-Driver was unable to map device registers; check for bad hardware. Driver did
-not attach to device; \fBSCSI\fR devices will be inaccessible.
-.RE
-
-.sp
-.ne 2
-.na
-\fBCannot add intr\fR
-.ad
-.sp .6
-.RS 4n
-Driver could not add its interrupt service routine to the kernel.
-.RE
-
-.sp
-.ne 2
-.na
-\fBCannot map dma\fR
-.ad
-.sp .6
-.RS 4n
-Driver was unable to locate a \fBDMA\fR controller. This is an
-auto-configuration error.
-.RE
-
-.sp
-.ne 2
-.na
-\fBCannot bind cmdarea\fR
-.ad
-.sp .6
-.RS 4n
-Driver was unable to bind the \fBDMA\fR handle to an address.
-.RE
-
-.sp
-.ne 2
-.na
-\fBCannot create devctl minor node\fR
-.ad
-.sp .6
-.RS 4n
-Driver is unable to create a minor node for the controller.
-.RE
-
-.sp
-.ne 2
-.na
-\fBCannot attach\fR
-.ad
-.sp .6
-.RS 4n
-The driver was unable to attach; usually follows another warning that indicates
-why attach failed.
-.RE
-
-.sp
-.ne 2
-.na
-\fBDisabled TQ since disconnects are disabled\fR
-.ad
-.sp .6
-.RS 4n
-Tagged queuing was disabled because disconnects were disabled in
-\fBscsi-options\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBBad clock frequency\fR
-.ad
-.sp .6
-.RS 4n
-Check for bad hardware.
-.RE
-
-.sp
-.ne 2
-.na
-\fBSync of pkt (<address>) failed\fR
-.ad
-.sp .6
-.RS 4n
-Syncing a \fBSCSI\fR packet failed. Refer to \fBscsi_sync_pkt\fR(9F).
-.RE
-
-.sp
-.ne 2
-.na
-\fBAll tags in use!\fR
-.ad
-.sp .6
-.RS 4n
-The driver could not allocate another tag number. The target devices do not
-properly support tagged queuing.
-.RE
-
-.sp
-.ne 2
-.na
-\fBGross error in FAS366 status\fR
-.ad
-.sp .6
-.RS 4n
-The driver experienced severe \fBSCSI\fR bus problems. Check cables and
-terminator.
-.RE
-
-.sp
-.ne 2
-.na
-\fBSpurious interrupt\fR
-.ad
-.sp .6
-.RS 4n
-The driver received an interrupt while the hardware was not interrupting.
-.RE
-
-.sp
-.ne 2
-.na
-\fBLost state in phasemanage\fR
-.ad
-.sp .6
-.RS 4n
-The driver is confused about the state of the \fBSCSI\fR bus.
-.RE
-
-.sp
-.ne 2
-.na
-\fBUnrecoverable DMA \fBerror\fR \fBduring selection\fR\fR
-.ad
-.sp .6
-.RS 4n
-The \fBDMA\fR controller experienced host SBus problems. Check for bad
-hardware.
-.RE
-
-.sp
-.ne 2
-.na
-\fBBad sequence step (<step number>) in selection\fR
-.ad
-.sp .6
-.RS 4n
-The FAS366 hardware reported a bad sequence step. Check for bad hardware.
-.RE
-
-.sp
-.ne 2
-.na
-\fBUndetermined selection failure\fR
-.ad
-.sp .6
-.RS 4n
-The selection of a target failed unexpectedly. Check for bad hardware.
-.RE
-
-.sp
-.ne 2
-.na
-\fBTarget <n>: failed reselection (bad reselect bytes)\fR
-.ad
-.sp .6
-.RS 4n
-A reconnect failed, target sent incorrect number of message bytes. Check for
-bad hardware.
-.RE
-
-.sp
-.ne 2
-.na
-\fBTarget <n>: failed reselection (bad identify message)\fR
-.ad
-.sp .6
-.RS 4n
-A reconnect failed, target didn't send identify message or it got corrupted.
-Check for bad hardware.
-.RE
-
-.sp
-.ne 2
-.na
-\fBTarget <n>: failed reselection (not in msgin phase)\fR
-.ad
-.sp .6
-.RS 4n
-Incorrect \fBSCSI\fR bus phase after reconnection. Check for bad hardware.
-.RE
-
-.sp
-.ne 2
-.na
-\fBTarget <n>: failed reselection (unexpected bus free)\fR
-.ad
-.sp .6
-.RS 4n
-Incorrect \fBSCSI\fR bus phase after reconnection. Check for bad hardware.
-.RE
-
-.sp
-.ne 2
-.na
-\fBTarget <n>: failed reselection (timeout on receiving tag msg)\fR
-.ad
-.sp .6
-.RS 4n
-A reconnect failed; target failed to send tag bytes. Check for bad hardware.
-.RE
-
-.sp
-.ne 2
-.na
-\fBTarget <n>: failed reselection (botched tag)\fR
-.ad
-.sp .6
-.RS 4n
-A reconnect failed; target failed to send tag bytes. Check for bad hardware.
-.RE
-
-.sp
-.ne 2
-.na
-\fBTarget <n>: failed reselection (invalid tag)\fR
-.ad
-.sp .6
-.RS 4n
-A reconnect failed; target sent incorrect tag bytes. Check for bad hardware.
-.RE
-
-.sp
-.ne 2
-.na
-\fBTarget <n>: failed reselection (Parity error in reconnect msg's)\fR
-.ad
-.sp .6
-.RS 4n
-A reconnect failed; parity error detected. Check for bad hardware.
-.RE
-
-.sp
-.ne 2
-.na
-\fBTarget <n>: failed reselection (no command)\fR
-.ad
-.sp .6
-.RS 4n
-A reconnect failed; target accepted \fBabort\fR or \fBreset\fR, but still tries
-to reconnect. Check for bad hardware.
-.RE
-
-.sp
-.ne 2
-.na
-\fBUnexpected bus free\fR
-.ad
-.sp .6
-.RS 4n
-Target disconnected from the bus without notice. Check for bad hardware.
-.RE
-
-.sp
-.ne 2
-.na
-\fBTarget <n> didn't disconnect after sending <message>\fR
-.ad
-.sp .6
-.RS 4n
-The target unexpectedly did not disconnect after sending
-\fB<\fR\fImessage\fR\fB>.\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fBBad sequence step (0x?) in selection\fR
-.ad
-.sp .6
-.RS 4n
-The sequence step register shows an improper value. The target might be
-misbehaving.
-.RE
-
-.sp
-.ne 2
-.na
-\fBIllegal dma boundary?\fR
-.ad
-.sp .6
-.RS 4n
-An attempt was made to cross a boundary that the driver could not handle.
-.RE
-
-.sp
-.ne 2
-.na
-\fBUnwanted data xfer direction for Target <n>\fR
-.ad
-.sp .6
-.RS 4n
-The target went into an unexpected phase.
-.RE
-
-.sp
-.ne 2
-.na
-\fBUnrecoverable DMA error on dma <send/receive>\fR
-.ad
-.sp .6
-.RS 4n
-There is a \fBDMA\fR error while sending/receiving data. The host \fBDMA\fR
-controller is experiencing some problems.
-.RE
-
-.sp
-.ne 2
-.na
-\fBSCSI bus DATA IN phase parity error\fR
-.ad
-.sp .6
-.RS 4n
-The driver detected parity errors on the \fBSCSI\fR bus.
-.RE
-
-.sp
-.ne 2
-.na
-\fBSCSI bus MESSAGE IN phase parity error\fR
-.ad
-.sp .6
-.RS 4n
-The driver detected parity errors on the \fBSCSI\fR bus.
-.RE
-
-.sp
-.ne 2
-.na
-\fBSCSI bus STATUS phase parity \fBerror\fR\fR
-.ad
-.sp .6
-.RS 4n
-The driver detected parity errors on the \fBSCSI\fR bus.
-.RE
-
-.sp
-.ne 2
-.na
-\fBPremature end of extended message\fR
-.ad
-.sp .6
-.RS 4n
-An extended \fBSCSI\fR bus message did not complete. Suspect a target firmware
-problem.
-.RE
-
-.sp
-.ne 2
-.na
-\fBPremature end of input message\fR
-.ad
-.sp .6
-.RS 4n
-A multibyte input message was truncated. Suspect a target firmware problem.
-.RE
-
-.sp
-.ne 2
-.na
-\fBInput message botch\fR
-.ad
-.sp .6
-.RS 4n
-The driver is confused about messages coming from the target.
-.RE
-
-.sp
-.ne 2
-.na
-\fBExtended message <n> is too long\fR
-.ad
-.sp .6
-.RS 4n
-The extended message sent by the target is longer than expected.
-.RE
-
-.sp
-.ne 2
-.na
-\fB<name> message <n> from Target <m> garbled\fR
-.ad
-.sp .6
-.RS 4n
-Target \fB<\fR\fIm\fR\fB>\fR sent message \fB<\fR\fIname\fR\fB>\fR of value
-\fB<\fR\fIn\fR\fB>\fR which the driver did not understand.
-.RE
-
-.sp
-.ne 2
-.na
-\fBTarget <n> rejects our message <name>\fR
-.ad
-.sp .6
-.RS 4n
-Target \fB<\fR\fIn\fR\fB>\fR rejected a message sent by the driver.
-.RE
-
-.sp
-.ne 2
-.na
-\fBRejecting message <name> from Target <n>\fR
-.ad
-.sp .6
-.RS 4n
-The driver rejected a message received from target \fB<\fR\fIn\fR\fB>.\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fBCmd transmission \fBerror\fR\fR
-.ad
-.sp .6
-.RS 4n
-The driver was unable to send out command bytes.
-.RE
-
-.sp
-.ne 2
-.na
-\fBTarget <n> refused message resend\fR
-.ad
-.sp .6
-.RS 4n
-The target did not accept a message resend.
-.RE
-
-.sp
-.ne 2
-.na
-\fBMESSAGE OUT phase parity error\fR
-.ad
-.sp .6
-.RS 4n
-The driver detected parity errors on the SCSI bus.
-.RE
-
-.sp
-.ne 2
-.na
-\fBTwo byte message <name> <value> rejected\fR
-.ad
-.sp .6
-.RS 4n
-The driver does not accept this two byte message.
-.RE
-
-.sp
-.ne 2
-.na
-\fBGross error in fas status <stat>\fR
-.ad
-.sp .6
-.RS 4n
-The \fBfas\fR chip has indicated a gross error like \fBFIFO\fR overflow.
-.RE
-
-.sp
-.ne 2
-.na
-\fBPolled cmd failed (target busy)\fR
-.ad
-.sp .6
-.RS 4n
-A polled command failed because the target did not complete outstanding
-commands within a reasonable time.
-.RE
-
-.sp
-.ne 2
-.na
-\fBPolled cmd failed\fR
-.ad
-.sp .6
-.RS 4n
-A polled command failed because of timeouts or bus errors.
-.RE
-
-.sp
-.ne 2
-.na
-\fBAuto request sense failed\fR
-.ad
-.sp .6
-.RS 4n
-Driver is unable to get request sense from the target.
-.RE
-
-.sp
-.ne 2
-.na
-\fBDisconnected command timeout for Target <id>.<lun>\fR
-.ad
-.sp .6
-.RS 4n
-A timeout occurred while target \fBid\fR/\fIlun\fR was disconnected. This is
-usually a target firmware problem. For tagged queuing targets,
-\fB<\fR\fIn\fR\fB>\fR commands were outstanding when the timeout was detected.
-.RE
-
-.sp
-.ne 2
-.na
-\fBDisconnected tagged cmds (<n>) timeout for Target <id>.<lun>\fR
-.ad
-.sp .6
-.RS 4n
-A timeout occurred while target \fBid\fR/\fIlun\fR was disconnected. This is
-usually a target firmware problem. For tagged queuing targets,
-\fB<\fR\fIn\fR\fB>\fR commands were outstanding when the timeout was detected.
-.RE
-
-.sp
-.ne 2
-.na
-\fBConnected command timeout for Target <id>.<lun>\fR
-.ad
-.sp .6
-.RS 4n
-This is usually a \fBSCSI\fR bus problem. Check cables and termination.
-.RE
-
-.sp
-.ne 2
-.na
-\fBTarget <id>.<lun> reverting to async. mode\fR
-.ad
-.sp .6
-.RS 4n
-A data transfer hang was detected. The driver attempts to eliminate this
-problem by reducing the data transfer rate.
-.RE
-
-.sp
-.ne 2
-.na
-\fBTarget <id>.<lun> reducing sync. transfer rate\fR
-.ad
-.sp .6
-.RS 4n
-A data transfer hang was detected. The driver attempts to eliminate this
-problem by reducing the data transfer rate.
-.RE
-
-.sp
-.ne 2
-.na
-\fBReverting to slow SCSI cable mode\fR
-.ad
-.sp .6
-.RS 4n
-A data transfer hang was detected. The driver attempts to eliminate this
-problem by reducing the data transfer rate.
-.RE
-
-.sp
-.ne 2
-.na
-\fBTarget <id> reducing sync. transfer rate\fR
-.ad
-.sp .6
-.RS 4n
-A data transfer hang was detected. The driver attempts to eliminate this
-problem by reducing the data transfer rate.
-.RE
-
-.sp
-.ne 2
-.na
-\fBTarget <id> reverting to async. mode\fR
-.ad
-.sp .6
-.RS 4n
-A data transfer hang was detected. The driver attempts to eliminate this
-problem by reducing the data transfer rate.
-.RE
-
-.sp
-.ne 2
-.na
-\fBTarget <id> disabled wide SCSI mode\fR
-.ad
-.sp .6
-.RS 4n
-Due to problems on the \fBSCSI\fR bus, the driver goes into more conservative
-mode of operation to avoid further problems.
-.RE
-
-.sp
-.ne 2
-.na
-\fBReset SCSI bus failed\fR
-.ad
-.sp .6
-.RS 4n
-An attempt to reset the \fBSCSI\fR bus failed.
-.RE
-
-.sp
-.ne 2
-.na
-\fBExternal SCSI bus reset\fR
-.ad
-.sp .6
-.RS 4n
-Another initiator reset the \fBSCSI\fR bus.
-.RE
-
-.SH WARNINGS
-.sp
-.LP
-The \fBfas\fR hardware (FAS366) supports both Wide and Fast \fBSCSI\fR mode,
-but fast20 is not supported. The maximum \fBSCSI\fR bandwidth is 20 MB/sec.
-Initiator mode block sequence (IBS) is not supported.
-.SH NOTES
-.sp
-.LP
-The \fBfas\fR driver exports properties indicating per target the negotiated
-transfer speed (\fBtarget<n>-sync-speed\fR), whether wide bus is supported
-(\fBtarget<n>-wide\fR), \fBscsi-options\fR for that particular target
-(\fBtarget<n>-scsi-options\fR), and whether tagged queuing has been enabled
-(\fBtarget<n>-TQ\fR). The \fBsync-speed\fR property value is the data transfer
-rate in KB/sec. The \fBtarget<n>-TQ\fR and the \fBtarget<n>-wide\fR property
-have value \fB1\fR to indicate that the corresponding capability is enabled, or
-\fB0\fR to indicate that the capability is disabled for that target. Refer to
-\fBprtconf\fR(1M) (verbose option) for viewing the \fBfas\fR properties.
-.sp
-.in +2
-.nf
-SUNW,fas,instance #1
- Driver software properties:
- name <target3-TQ> length <4>
- value <0x00000001>.
- name <target3-wide> length <4>
- value <0x00000000>.
- name <target3-sync-speed> length <4>
- value <0x00002710>.
- name <target3-scsi-options> length <4>
- value <0x000003f8>.
- name <target0-TQ> length <4>
- value <0x00000001>.
- name <pm_norm_pwr> length <4>
- value <0x00000001>.
- name <pm_timestamp> length <4>
- value <0x30040346>.
- name <scsi-options> length <4>
- value <0x000003f8>.
- name <scsi-watchdog-tick> length <4>
- value <0x0000000a>.
- name <scsi-tag-age-limit> length <4>
- value <0x00000002>.
- name <scsi-reset-delay> length <4>
- value <0x00000bb8>.
- Register Specifications:
- Bus Type=0x3, Address=0x8800000, Size=10
- Bus Type=0x3, Address=0x8810000, Size=40
- Interrupt Specifications:
- Interrupt Priority=0x35 (ipl 5)
-.fi
-.in -2
-
diff --git a/usr/src/man/man7d/fasttrap.7d b/usr/src/man/man7d/fasttrap.7d
deleted file mode 100644
index 63a1335e25..0000000000
--- a/usr/src/man/man7d/fasttrap.7d
+++ /dev/null
@@ -1,56 +0,0 @@
-'\" te
-.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH FASTTRAP 7D "Dec 10, 2017"
-.SH NAME
-fasttrap \- DTrace user instruction tracing provider
-.SH DESCRIPTION
-.LP
-The \fBfasttrap\fR driver is a DTrace dynamic tracing provider that performs
-dynamic instrumentation of arbitrary instructions in illumos processes. The
-\fBfasttrap\fR driver implements the DTrace \fBfasttrap\fR and \fBpid\fR
-providers.
-.sp
-.LP
-The \fBfasttrap\fR driver is not a public interface and you access
-instrumentation offered by this provider through DTrace. Refer to the
-\fIDynamic Tracing Guide\fR for a description of the public documented
-interfaces available for the DTrace facility and the probes offered by the
-\fBfasttrap\fR provider.
-.SH SPARC ONLY
-.LP
-The \fBfasttrap\fR provider provides a DTrace probe that fires each time a user
-process executes an instruction. The \fBpid\fR provider allows for the dynamic
-creation of DTrace probes corresponding to instruction locations inside any
-user process specified using a process ID and an instruction address or symbol
-name. Together these providers permit DTrace users to perform instrumentation
-of user processes and to trace the interactions between processes and
-the operating system. See the chapter entitled "User Process Tracing" in the
-\fIDynamic Tracing Guide\fR for information on how to use these
-providers to instrument processes.
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for a description of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Private
-.TE
-
-.SH SEE ALSO
-.LP
-\fBdtrace\fR(1M), \fBattributes\fR(5), \fBdtrace\fR(7D)
-.sp
-.LP
-\fIDynamic Tracing Guide\fR:
-.sp
-.LP
-https://illumos.org/books/dtrace/
diff --git a/usr/src/man/man7d/fbt.7d b/usr/src/man/man7d/fbt.7d
deleted file mode 100644
index 3b62aa3392..0000000000
--- a/usr/src/man/man7d/fbt.7d
+++ /dev/null
@@ -1,53 +0,0 @@
-'\" te
-.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH FBT 7D "Dec 10, 2017"
-.SH NAME
-fbt \- DTrace function boundary tracing provider
-.SH DESCRIPTION
-.LP
-The \fBfbt\fR driver is a DTrace dynamic tracing provider that performs dynamic
-instrumentation at function boundaries in the kernel.
-.sp
-.LP
-The function is the fundamental unit of program text. In a well-designed
-system, the function performs a discrete and well-defined operation on a
-specified object or series of like objects. Most functions are implemented by
-themselves calling functions on encapsulated objects, but some functions
-\(emso-called "leaf functions" \(em are implemented without making further
-function calls. The Function Boundary Tracing \fBfbt\fR provider contains a
-mechanism for instrumenting the vast majority of functions in the kernel and
-offering the instrumentation as a set of DTrace probes.
-.sp
-.LP
-The \fBfbt\fR driver is not a public interface and you access the
-instrumentation offered by this provider through DTrace. Refer to the
-\fIDynamic Tracing Guide\fR for a description of the public documented
-interfaces available for the DTrace facility and the probes offered by the
-\fBfbt\fR provider.
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for a description of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Private
-.TE
-
-.SH SEE ALSO
-.LP
-\fBdtrace\fR(1M), \fBattributes\fR(5), \fBdtrace\fR(7D)
-.sp
-.LP
-\fIDynamic Tracing Guide\fR:
-.sp
-.LP
-https://illumos.org/books/dtrace/
diff --git a/usr/src/man/man7d/fcip.7d b/usr/src/man/man7d/fcip.7d
deleted file mode 100644
index 9f7d7c0093..0000000000
--- a/usr/src/man/man7d/fcip.7d
+++ /dev/null
@@ -1,246 +0,0 @@
-'\" te
-.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH FCIP 7D "Oct 18, 2004"
-.SH NAME
-fcip \- IP/ARP over Fibre Channel datagram encapsulation driver
-.SH SYNOPSIS
-.LP
-.nf
-/dev/fcip
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBfcip\fR driver is a Fibre Channel upper layer protocol module for
-encapsulating \fBIP\fR (IPv4) and \fBARP\fR datagrams over Fibre Channel. The
-\fBfcip\fR driver is a loadable, clonable, \fBSTREAMS\fR driver supporting
-the connectionless Data Link Provider Interface, \fBdlpi\fR(7P) over any Sun
-Fibre Channel transport layer-compliant host adapter.
-.sp
-.LP
-The \fBfcip\fR driver complies with the \fIRFC 2625\fR specification for
-encapsulating IP/ARP datagrams over Fibre Channel, and allows encapsulation of
-IPv4 only, as specified in \fIRFC 2625\fR. The \fBfcip\fR driver interfaces
-with the \fBfp\fR(7d) Sun Fibre Channel port driver.
-.SH APPLICATION PROGRAMMING INTERFACE
-.sp
-.LP
-The cloning character-special device \fB/dev/fcip\fR is used to access all
-Fibre Channel ports capable of supporting \fBIP\fR/\fBARP\fR traffic on the
-system.
-.SS "fcip and DLPI"
-.sp
-.LP
-The \fBfcip\fR driver is a "style 2" Data Link Service Provider. All
-\fBM_PROTO\fR and \fBM_PCPROTO\fR type messages are interpreted as \fBDLPI\fR
-primitives. Valid \fBDLPI\fR primitives are defined in \fB<sys/dlpi.h>\fR\&.
-Refer to \fBdlpi\fR(7P) for more information on \fBDLPI\fR primitives.
-.sp
-.LP
-An explicit \fBDL_ATTACH_REQ\fR message must be sent to associate the opened
-stream with a particular Fibre Channel port (ppa). The ppa ID is interpreted
-as an unsigned long data type and indicates the corresponding Fibre Channel
-port driver instance number. An error (\fBDL_ERROR_ACK\fR) is returned by the
-driver if the ppa field value does not correspond to a valid port driver
-instance number or if the Fibre Channel port is not \fBONLINE\fR. Refer to
-\fBfp\fR(7d) for more details on the Fibre Channel port driver.
-.sp
-.LP
-The values returned by the driver in the \fBDL_INFO_ACK\fR primitive in
-response to a \fBDL_INFO_REQ\fR from the user are as follows:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Maximum SDU is \fB65280\fR (defined in \fIRFC 2625\fR).
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Minimum SDU is \fB0\fR.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBDLSAP\fR address length is \fB8\fR.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-MAC type is \fBDL_ETHER\fR.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBSAP\fR length is \fB-2\fR.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Service mode is \fBDL_CLDLS\fR.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Optional quality of service (\fBQOS\fR) fields are set to \fB0\fR.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Provider style is \fBDL_STYLE2\fR.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Provider version is \fBDL_VERSION_2\fR.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Broadcast address value is \fB0xFFFFFFFF\fR.
-.RE
-.sp
-.LP
-Once in \fBDL_ATTACHED\fR state, the user must send a \fBDL_BIND_REQ\fR to
-associate a particular \fBSAP\fR (Service Access Point) with the stream. The
-\fBfcip\fR driver \fBDLSAP\fR address format consists of the 6-byte physical
-address component followed immediately by the 2-byte \fBSAP\fR component
-producing an 8-byte \fBDLSAP\fR address. Applications should not be programmed
-to use this implementation-specific \fBDLSAP\fR address format, but use
-information returned in the \fBDL_INFO_ACK\fR primitive to compose and
-decompose \fBDLSAP\fR addresses. The \fBSAP\fR length, full \fBDLSAP\fR length,
-and \fBSAP\fR/physical ordering are included within the \fBDL_INFO_ACK\fR.
-The physical address length is the full \fBDLSAP\fR address length minus the
-\fBSAP\fR length. The physical address length can also be computed by
-issuing the \fBDL_PHYS_ADDR_REQ\fR primitive to obtain the current physical
-address associated with the stream.
-.sp
-.LP
-Once in the \fBDL_BOUND\fR state, the user can transmit frames on the fibre by
-sending \fBDL_UNITDATA_REQ\fR messages to the \fBfcip\fR driver. The
-\fBfcip\fR driver will route received frames up any of the open and bound
-streams having a \fBSAP\fR which matches the received frame's \fBSAP\fR type
-as \fBDL_UNITDATA_IND\fR messages. Received Fibre Channel frames are
-duplicated and routed up multiple open streams if necessary. The \fBDLSAP\fR
-address contained within the \fBDL_UNITDATA_REQ\fR and \fBDL_UNITDATA_IND\fR
-messages consists of both the \fBSAP\fR (type) and physical address
-(WorldWideName) components.
-.SS "Other Primitives"
-.sp
-.LP
-In Fibre Channel, \fBmulticasting\fR is defined as an optional service for
-Fibre Channel classes three and six only. If required, the Fibre Channel
-broadcast service can be used for multicasting. The \fIRFC 2625\fR
-specification does not support \fBIP \fRmulticasting or promiscuous mode.
-.SS "fcip Fibre Channel ELS"
-.sp
-.LP
-The \fBfcip\fR driver will use the \fBFARP\fR Fibre Channel Extended Link
-Service (\fBELS\fR), where supported, to resolve WorldWide Names (MAC address)
-to FC Port Identifiers(Port_ID). The \fBfcip\fR driver also supports InARP to
-resolve WorldWide Name and Port_ID to an IP address.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/dev/fcip\fR\fR
-.ad
-.RS 28n
-fcip character-special device
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/fcip\fR\fR
-.ad
-.RS 28n
-32-bit ELF kernel driver (x86)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/fcip\fR\fR
-.ad
-.RS 28n
-64-bit ELF kernel driver (x86)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/sparcv9/fcip\fR\fR
-.ad
-.RS 28n
-64-bit ELF kernel driver (SPARC)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/fcip.conf\fR\fR
-.ad
-.RS 28n
-fcip driver configuration file
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture SPARC
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBnetstat\fR(1M), \fBprtconf\fR(1M), \fBdriver.conf\fR(4), \fBfp\fR(7d),
-\fBdlpi\fR(7P)
-.sp
-.LP
-\fIWriting Device Drivers\fR
-.sp
-.LP
-\fIIP and ARP over Fibre Channel, RFC 2625\fR M. Rajagopal, R. Bhagwat, W.
-Rickard. Gadzoox Networks, June 1999
-.sp
-.LP
-\fIANSI X3.230-1994, Fibre Channel Physical and Signalling Interface (FC-PH)\fR
-.sp
-.LP
-\fIANSI X3.272-1996, Fibre Channel Arbitrated Loop (FC-AL)\fR
-.SH NOTES
-.sp
-.LP
-If you use a Fibre Channel adapter with two or more ports that each share a
-common Node WorldWideName, the \fBfcip\fR driver will likely attach to the
-first port on the adapter.
-.sp
-.LP
-\fIRFC 2625\fR requires that both source and destination WorldWideNames have
-their 4 bit NAA identifiers set to binary '0001,' indicating that an IEEE
-48-bit MAC address is contained in the lower 48 bits of the network address
-fields. For additional details, see the \fIRFC 2625\fR specification.
diff --git a/usr/src/man/man7d/fcoe.7d b/usr/src/man/man7d/fcoe.7d
deleted file mode 100644
index a3354b5649..0000000000
--- a/usr/src/man/man7d/fcoe.7d
+++ /dev/null
@@ -1,57 +0,0 @@
-'\" te
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 2020 Peter Tribble.
-.TH FCOE 7D "Jan 10, 2020"
-.SH NAME
-fcoe \- fibre channel over Ethernet transport driver
-.SH DESCRIPTION
-The \fBfcoe\fR driver is a pseudo nexus driver which supports the
-transportation of FCoE encapsulated frames. FCoE Ethernet frame will
-encapsulate the raw Fibre Channel frame.
-.sp
-.LP
-The \fBfcoe\fR driver interfaces with FCoE target mode device driver,
-\fBfcoet\fR(7D).
-.SH FILES
-.ne 2
-.na
-\fB/kernel/drv/amd64/fcoe\fR
-.ad
-.RS 26n
-Device driver (x86)
-.RE
-
-.sp
-.ne 2
-.na
-\fB/kernel/drv/sparcv9/fcoe\fR
-.ad
-.RS 26n
-Device driver (SPARC)
-.RE
-
-.SH ATTRIBUTES
-See \fBattributes\fR(5) for a description of the following attribute:
-.sp
-
-.sp
-.TS
-box;
-l | l
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture SPARC, x86
-.TE
-
-.SH SEE ALSO
-\fBdriver.conf\fR(4), \fBattributes\fR(5), \fBfcoet\fR(7D)
-.sp
-.LP
-\fIWriting Device Drivers\fR
-.sp
-.LP
-\fIANSI X3.269-1996, Fibre Channel Protocol for SCSI (FCP)\fR
diff --git a/usr/src/man/man7d/fcoei.7d b/usr/src/man/man7d/fcoei.7d
deleted file mode 100644
index 2835290d9e..0000000000
--- a/usr/src/man/man7d/fcoei.7d
+++ /dev/null
@@ -1,64 +0,0 @@
-'\" te
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following
-.\" below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH FCOEI 7D "Jan 10, 2020"
-.SH NAME
-fcoei \- Fibre Channel Over Ethernet Initiator Mode Driver
-.SH SYNOPSIS
-.in +2
-.nf
-fcoei@port,0
-.fi
-.in -2
-
-.SH DESCRIPTION
-The \fBfcoei\fR driver is a pseudo device driver which encapsulates the raw
-Fibre Channel frames into FCoE ethernet frames, or decapsulates FC frames from
-FCoE ethernet frames. The supported FC frames include extended/basic link
-services, common transport frames and initiator mode FCP frames.
-.sp
-.LP
-The \fBfcoei\fR driver interfaces with the Sun Fibre Channel port driver,
-\fBfp\fR(7D), and the FCoE transport driver, \fBfcoe\fR(7D).
-.SH FILES
-.ne 2
-.na
-\fB/kernel/drv/amd64/fcoei\fR
-.ad
-.RS 27n
-Device driver (x86)
-.RE
-
-.sp
-.ne 2
-.na
-\fB/kernel/drv/sparcv9/fcoei\fR
-.ad
-.RS 27n
-Device driver (SPARC)
-.RE
-
-.SH ATTRIBUTES
-See \fBattributes\fR(5) for a description of the following attribute:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture SPARC, x86
-.TE
-
-.SH SEE ALSO
-\fBdriver.conf\fR(4), \fBattributes\fR(5), \fBfcoe\fR(7D), \fBfcoet\fR(7D),
-\fBfp\fR(7D)
-.sp
-.LP
-\fIWriting Device Drivers\fR
-.sp
-.LP
-\fIANSI X3.269-1996, Fibre Channel Protocol for SCSI (FCP)\fR
diff --git a/usr/src/man/man7d/fcoet.7d b/usr/src/man/man7d/fcoet.7d
deleted file mode 100644
index dd604f360b..0000000000
--- a/usr/src/man/man7d/fcoet.7d
+++ /dev/null
@@ -1,57 +0,0 @@
-'\" te
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
-.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
-.TH FCOET 7D "Jan 10, 2020"
-.SH NAME
-fcoet \- fibre channel over Ethernet target mode driver
-.SH DESCRIPTION
-The \fBfcoet\fR driver is a pseudo device driver which encapsulates the raw
-Fibre Channel frames into FCoE Ethernet frames, or decapsulates FC frames from
-FCoE Ethernet frames. The supported FC frames contain extended/basic link
-services, common transport frames and target mode FCP frames.
-.sp
-.LP
-The \fBfcoet\fR driver interfaces with COMSTAR FC transport driver, \fBfct\fR,
-and FCoE transport driver, \fBfcoe\fR(7D).
-.SH FILES
-.ne 2
-.na
-\fB/kernel/drv/amd64/fcoet\fR
-.ad
-.RS 29n
-Device driver (x86)
-.RE
-
-.sp
-.ne 2
-.na
-\fB/kernel/drv/sparcv9/fcoet\fR
-.ad
-.RS 29n
-Device driver (SPARC)
-.RE
-
-.SH ATTRIBUTES
-See \fBattributes\fR(5) for a description of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-l | l
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture SPARC, x86
-.TE
-
-.SH SEE ALSO
-\fBdriver.conf\fR(4), \fBattributes\fR(5), \fBfcoe\fR(7D)
-.sp
-.LP
-\fIWriting Device Drivers\fR
-.sp
-.LP
-\fIANSI X3.269-1996, Fibre Channel Protocol for SCSI (FCP)\fR
diff --git a/usr/src/man/man7d/fcp.7d b/usr/src/man/man7d/fcp.7d
deleted file mode 100644
index 0d966d4050..0000000000
--- a/usr/src/man/man7d/fcp.7d
+++ /dev/null
@@ -1,88 +0,0 @@
-'\" te
-.\" Copyright (c) 2004 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH FCP 7D "Oct 20, 2004"
-.SH NAME
-fcp \- Fibre Channel protocol driver
-.SH DESCRIPTION
-.sp
-.LP
-The \fBfcp\fR driver is the upper layer protocol that supports mechanisms for
-transporting \fBSCSI\fR-3 commands over Fibre Channel. The \fBfcp\fR driver,
-which interfaces with the Sun Fibre Channel transport library \fBfctl\fR(7D),
-supports the standard functions provided by the \fBSCSA \fRinterface.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/fcp\fR\fR
-.ad
-.RS 27n
-32-bit ELF kernel driver (x86)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/fcp\fR\fR
-.ad
-.RS 27n
-64-bit ELF kernel driver (x86)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/sparcv9/fcp\fR\fR
-.ad
-.RS 27n
-64-bit ELF kernel driver (SPARC)
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See attributes(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture SPARC
-_
-Interface stability Unknown
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBprtconf\fR(1M), \fBdriver.conf\fR(4), \fBfctl\fR(7D), \fBfp\fR(7d),
-\fBusoc\fR(7D)
-.sp
-.LP
-\fIWriting Device Drivers\fR
-.sp
-.LP
-\fIFibre Channel Physical and Signaling Interface (FC-PH) ANSI X3.230: 1994\fR
-.sp
-.LP
-\fIFibre Channel Generic Services (FC-GS-2) Project 1134-D\fR
-.sp
-.LP
-\fIFibre Channel Arbitrated Loop (FC-AL) ANSI X3.272-1996\fR
-.sp
-.LP
-\fIFibre Channel Protocol for SCSI (FCP) ANSI X3.269-1996\fR
-.sp
-.LP
-\fISCSI-3 Architecture Model (SAM) Fibre Channel Private Loop SCSI Direct
-Attach (FC-PLDA) ANSI X3.270-1996\fR
-.sp
-.LP
-\fIFabric Loop Attachment (FC-FLA), NCITS TR-20:1998\fR
diff --git a/usr/src/man/man7d/fctl.7d b/usr/src/man/man7d/fctl.7d
deleted file mode 100644
index 8a7e99442e..0000000000
--- a/usr/src/man/man7d/fctl.7d
+++ /dev/null
@@ -1,64 +0,0 @@
-'\" te
-.\" Copyright (c) 2004 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH FCTL 7D "Oct 20, 2004"
-.SH NAME
-fctl \- Sun Fibre Channel transport library
-.SH DESCRIPTION
-.sp
-.LP
-The \fBfctl\fR kernel module interfaces the Sun Fibre Channel upper layer
-protocol (ULP) mapping modules with Sun Fibre Channel adapter (FCA) drivers.
-There are no user-configurable options for this module.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/kernel/misc/fctl\fR\fR
-.ad
-.RS 29n
- 32-bit ELF kernel module (x86)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/misc/amd64/fctl\fR\fR
-.ad
-.RS 29n
-64-bit ELF kernel module (x86)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/misc/sparcv9/fctl\fR\fR
-.ad
-.RS 29n
-64-bit ELF kernel module (SPARC)
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See attributes(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture SPARC
-_
-Interface stability Unknown
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBfp\fR(7d)
diff --git a/usr/src/man/man7d/fd.7d b/usr/src/man/man7d/fd.7d
deleted file mode 100644
index ecd82a7be6..0000000000
--- a/usr/src/man/man7d/fd.7d
+++ /dev/null
@@ -1,805 +0,0 @@
-'\" te
-.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH FD 7D "Mar 2, 2007"
-.SH NAME
-fd, fdc \- drivers for floppy disks and floppy disk controllers
-.SH SYNOPSIS
-.SS "SPARC"
-.LP
-.nf
-\fB/dev/diskette0\fR
-.fi
-
-.LP
-.nf
-\fB/dev/rdiskette0\fR
-.fi
-
-.SS "x86"
-.LP
-.nf
-\fB/dev/diskette[0-1]\fR
-.fi
-
-.LP
-.nf
-\fB/dev/rdiskette[0-1]\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBfd\fR and \fBfdc\fR drivers provide the interfaces to floppy disks using
-the Intel 8272, Intel 82077, NEC 765, or compatible disk controllers on x86
-based systems.
-.sp
-.LP
-The default partitions for the floppy driver are:
-.sp
-.ne 2
-.na
-\fBa\fR
-.ad
-.RS 5n
-All cylinders except the last
-.RE
-
-.sp
-.ne 2
-.na
-\fBb\fR
-.ad
-.RS 5n
-Only the last cylinder
-.RE
-
-.sp
-.ne 2
-.na
-\fBc\fR
-.ad
-.RS 5n
-Entire diskette
-.RE
-
-.sp
-.LP
-The \fBfd\fR driver autosenses the density of the diskette.
-.sp
-.LP
-When the floppy is first opened the driver looks for a SunOS label in logical
-block 0 of the diskette. If attempts to read the SunOS label fail, the open
-will fail. If block 0 is read successfully but a SunOS label is not found,
-auto-sensed geometry and default partitioning are assumed.
-.sp
-.LP
-The \fBfd\fR driver supports both block and raw interfaces.
-.sp
-.LP
-The block files (\fB/dev/diskette*\fR) access the diskette using the system's
-normal buffering mechanism and may be read and written without regard to
-physical diskette records.
-.sp
-.LP
-There is also a raw (\fB/dev/rdiskette*\fR) interface that provides for direct
-transmission between the diskette and the user's read or write buffer. A single
-\fBread\fR(2) or \fBwrite\fR(2) call usually results in one I/O operation;
-therefore raw I/O is considerably more efficient when larger blocking factors
-are used. A blocking factor of no less than 8 Kbytes is recommended. See the
-Notes section, below, for information on the number of sectors per track.
-.SS "3.5" Diskettes"
-.sp
-.LP
-For 3.5" double-sided diskettes, the following densities are supported:
-.SS "SPARC"
-.sp
-.ne 2
-.na
-\fB1.7 Mbyte density\fR
-.ad
-.RS 21n
-80 cylinders, 21 sectors per track, 1.7 Mbyte capacity
-.RE
-
-.sp
-.ne 2
-.na
-\fBhigh density\fR
-.ad
-.RS 21n
-80 cylinders, 18 sectors per track, 1.44 Mbyte capacity
-.RE
-
-.sp
-.ne 2
-.na
-\fBdouble density\fR
-.ad
-.RS 21n
-80 cylinders, 9 sectors per track, 720 Kbyte capacity
-.RE
-
-.SS "x86"
-.sp
-.ne 2
-.na
-\fBextended density\fR
-.ad
-.RS 21n
-80 cylinders, 36 sectors per track, 2.88 Mbyte capacity
-.RE
-
-.sp
-.ne 2
-.na
-\fB1.7 Mbyte density\fR
-.ad
-.RS 21n
-80 cylinders, 21 sectors per track, 1.7 Mbyte capacity
-.RE
-
-.sp
-.ne 2
-.na
-\fBhigh density\fR
-.ad
-.RS 21n
-80 cylinders, 18 sectors per track, 1.44 Mbyte capacity
-.RE
-
-.sp
-.ne 2
-.na
-\fBdouble density\fR
-.ad
-.RS 21n
-80 cylinders, 9 sectors per track, 760 Kbyte capacity
-.RE
-
-.SS "5.25" Diskettes"
-.sp
-.LP
-For 5.25" double-sided diskettes on x86 platforms, the densities listed below
-are supported:
-.SS "SPARC"
-.sp
-.LP
-5.25" diskettes are not supported on SPARC platforms.
-.SS "x86"
-.sp
-.ne 2
-.na
-\fBhigh density\fR
-.ad
-.RS 18n
-80 cylinders, 15 sectors per track, 1.2 Mbyte capacity
-.RE
-
-.sp
-.ne 2
-.na
-\fBdouble density\fR
-.ad
-.RS 18n
-40 cylinders, 9 sectors per track, 360 Kbyte capacity
-.RE
-
-.sp
-.ne 2
-.na
-\fBdouble density\fR
-.ad
-.RS 18n
-40 cylinders, 8 sectors per track, 320 Kbyte capacity
-.RE
-
-.sp
-.ne 2
-.na
-\fBquad density\fR
-.ad
-.RS 18n
-80 cylinders, 9 sectors per track, 720 Kbyte capacity
-.RE
-
-.sp
-.ne 2
-.na
-\fBdouble density\fR
-.ad
-.RS 18n
-40 cylinders, 16 sectors per track (256 bytes per sector), 320 Kbyte capacity
-.RE
-
-.sp
-.ne 2
-.na
-\fBdouble density\fR
-.ad
-.RS 18n
-40 cylinders, 4 sectors per track (1024 bytes per sector), 320 Kbyte capacity
-.RE
-
-.SH ERRORS
-.sp
-.ne 2
-.na
-\fB\fBEBUSY\fR\fR
-.ad
-.RS 10n
-During opening, the partition has been opened for exclusive access and another
-process wants to open the partition. Once open, this error is returned if the
-floppy disk driver attempted to pass a command to the floppy disk controller
-when the controller was busy handling another command. In this case, the
-application should try the operation again.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEFAULT\fR\fR
-.ad
-.RS 10n
-An invalid address was specified in an ioctl command (see \fBfdio\fR(7I)).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEINVAL\fR\fR
-.ad
-.RS 10n
-The number of bytes read or written is not a multiple of the diskette's sector
-size. This error is also returned when an unsupported command is specified
-using the \fBFDIOCMD\fR ioctl command (see \fBfdio\fR(7I)).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEIO\fR\fR
-.ad
-.RS 10n
-During opening, the diskette does not have a label or there is no diskette in
-the drive. Once open, this error is returned if the requested I/O transfer
-could not be completed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBENOSPC\fR\fR
-.ad
-.RS 10n
-An attempt was made to write past the end of the diskette.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBENOTTY\fR\fR
-.ad
-.RS 10n
-The floppy disk driver does not support the requested ioctl functions (see
-\fBfdio\fR(7I)).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBENXIO\fR\fR
-.ad
-.RS 10n
-The floppy disk device does not exist or the device is not ready.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEROFS\fR\fR
-.ad
-.RS 10n
-The floppy disk device is opened for write access and the diskette in the drive
-is write protected.
-.RE
-
-.SS "x86 Only"
-.sp
-.ne 2
-.na
-\fB\fBENOSYS\fR\fR
-.ad
-.RS 10n
-The floppy disk device does not support the requested ioctl function (
-\fBFDEJECT\fR).
-.RE
-
-.SH X86 CONFIGURATION
-.sp
-.LP
-The driver attempts to initialize itself using the information found in the
-configuration file, \fB/platform/i86pc/kernel/drv/fd.conf\fR.
-.sp
-.in +2
-.nf
-name="fd" parent="fdc" unit=0;
-name="fd" parent="fdc" unit=1;
-.fi
-.in -2
-
-.SH FILES
-.SS "SPARC"
-.sp
-.ne 2
-.na
-\fB\fB/platform/sun4u/kernel/drv/fd\fR\fR
-.ad
-.sp .6
-.RS 4n
-driver module
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/include/sys/fdreg.h\fR\fR
-.ad
-.sp .6
-.RS 4n
-structs and definitions for Intel 82072 and 82077 controllers
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/include/sys/fdvar.h\fR\fR
-.ad
-.sp .6
-.RS 4n
-structs and definitions for floppy drivers
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/diskette\fR\fR
-.ad
-.sp .6
-.RS 4n
-device file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/diskette0\fR\fR
-.ad
-.sp .6
-.RS 4n
-device file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/rdiskette\fR\fR
-.ad
-.sp .6
-.RS 4n
-raw device file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/rdiskette0\fR\fR
-.ad
-.sp .6
-.RS 4n
-raw device file
-.RE
-
-.SS "For ucb Compatibility"
-.sp
-.ne 2
-.na
-\fB\fB/dev/fd0[a-c]\fR\fR
-.ad
-.RS 24n
-block file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/rfd0[a-c]\fR\fR
-.ad
-.RS 24n
-raw file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/diskette0\fR\fR
-.ad
-.RS 24n
-directory containing volume management character device file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/rdiskette0\fR\fR
-.ad
-.RS 24n
-directory containing the volume management raw character device file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/aliases/floppy0\fR\fR
-.ad
-.RS 24n
-symbolic link to the entry in \fB/dev/rdiskette0\fR
-.RE
-
-.SS "x86"
-.sp
-.ne 2
-.na
-\fB\fB/platform/i86pc/kernel/drv/fd\fR\fR
-.ad
-.sp .6
-.RS 4n
-driver module
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/platform/i86pc/kernel/drv/fd.conf\fR\fR
-.ad
-.sp .6
-.RS 4n
-configuration file for floppy driver
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/platform/i86pc/kernel/drv/fdc\fR\fR
-.ad
-.sp .6
-.RS 4n
-floppy-controller driver module
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/platform/i86pc/kernel/drv/fdc.con\fRf\fR
-.ad
-.sp .6
-.RS 4n
-configuration file for the floppy-controller
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/include/sys/fdc.h\fR\fR
-.ad
-.sp .6
-.RS 4n
-structs and definitions for x86 floppy devices
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/include/sys/fdmedia.h\fR\fR
-.ad
-.sp .6
-.RS 4n
-structs and definitions for x86 floppy media
-.RE
-
-.SS "x86 First Drive"
-.sp
-.ne 2
-.na
-\fB\fB/dev/diskette\fR\fR
-.ad
-.RS 19n
-device file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/diskette0\fR\fR
-.ad
-.RS 19n
-device file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/rdiskette\fR\fR
-.ad
-.RS 19n
-raw device file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/rdiskette0\fR\fR
-.ad
-.RS 19n
-raw device file
-.RE
-
-.SS "For ucb Compatibility"
-.sp
-.ne 2
-.na
-\fB\fB/dev/fd0[a-c]\fR\fR
-.ad
-.RS 24n
-block file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/rfd0[a-c]\fR\fR
-.ad
-.RS 24n
-raw file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/diskette0\fR\fR
-.ad
-.RS 24n
-directory containing volume management character device file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/rdiskette0\fR\fR
-.ad
-.RS 24n
-directory containing the volume management raw character device file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/aliases/floppy0\fR\fR
-.ad
-.RS 24n
-symbolic link to the entry in /dev/rdiskette0
-.RE
-
-.SS "x86 Second Drive"
-.sp
-.ne 2
-.na
-\fB\fB/dev/diskette1\fR\fR
-.ad
-.RS 19n
-device file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/rdiskette1\fR\fR
-.ad
-.RS 19n
-raw device file
-.RE
-
-.SS "For ucb Compatibility"
-.sp
-.ne 2
-.na
-\fB\fB/dev/fd1[a-c]\fR\fR
-.ad
-.RS 24n
-block file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/rfd1[a-c]\fR\fR
-.ad
-.RS 24n
-raw file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/diskette1\fR\fR
-.ad
-.RS 24n
-directory containing volume management character device file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/rdiskette1\fR\fR
-.ad
-.RS 24n
-directory containing the volume management raw character device file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/aliases/floppy1\fR\fR
-.ad
-.RS 24n
-symbolic link to the entry in \fB/dev/rdiskette1\fR
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBfdformat\fR(1), \fBdd\fR(1M), \fBdrvconfig\fR(1M), \fBread\fR(2),
-\fBwrite\fR(2), \fBdriver.conf\fR(4), \fBdkio\fR(7I) \fBfdio\fR(7I)
-.SH DIAGNOSTICS
-.SS "All Platforms"
-.sp
-.ne 2
-.na
-\fB\fBfd<n>: <command name> failed (<sr1> <sr2> <sr3>)\fR\fR
-.ad
-.sp .6
-.RS 4n
-The <command name> failed after several retries on drive <n>. The three hex
-values in parenthesis are the contents of status register 0, status register 1,
-and status register 2 of the Intel 8272, the Intel 82072, and the Intel 82077
-Floppy Disk Controller on completion of the command, as documented in the data
-sheet for that part. This error message is usually followed by one of the
-following, interpreting the bits of the status register:
-.sp
-.ne 2
-.na
-\fB\fBfd<\fR\fIn\fR\fB>:\fR\fR
-.ad
-.RS 10n
-\fBnot writable\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfd<\fR\fIn\fR\fB>:\fR\fR
-.ad
-.RS 10n
-\fBcrc error blk <block number>\fR
-.sp
-There was a data error on <block number>.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfd<\fR\fIn\fR\fB>:\fR\fR
-.ad
-.RS 10n
-\fBbad format\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfd<\fR\fIn\fR\fB>:\fR\fR
-.ad
-.RS 10n
-\fBtimeout\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfd<\fR\fIn\fR\fB>:\fR\fR
-.ad
-.RS 10n
-\fBdrive not ready\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfd<\fR\fIn\fR\fB>:\fR\fR
-.ad
-.RS 10n
-\fBunformatted diskette or no diskette in drive\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfd<\fR\fIn\fR\fB>:\fR\fR
-.ad
-.RS 10n
-\fBblock <block number> is past the end!\fR
-.sp
-\fB(nblk=<total number of blocks>)\fR
-.sp
-The operation tried to access a block number that is greater than the total
-number of blocks.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfd<\fR\fIn\fR\fB>:\fR\fR
-.ad
-.RS 10n
-\fBb_bcount 0x<op_size> not % 0x<sect_size>\fR
-.sp
-The size of an operation is not a multiple of the sector size.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfd<\fR\fIn\fR\fB>:\fR\fR
-.ad
-.RS 10n
-\fBoverrun/underrun\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfd<\fR\fIn\fR\fB>:\fR\fR
-.ad
-.RS 10n
-\fBhost bus error\fR. There was a hardware error on a system bus.
-.RE
-
-.RE
-
-.SS "SPARC Only"
-.sp
-.LP
-Overrun/underrun errors occur when accessing a diskette while the system is
-heavily loaded. Decrease the load on the system and retry the diskette access.
-.SH NOTES
-.sp
-.LP
-3.5" high density diskettes have 18 sectors per track and 5.25" high density
-diskettes have 15 sectors per track. They can cross a track (though not a
-cylinder) boundary without losing data, so when using \fBdd\fR(1M) or
-\fBread\fR(2)/\fBwrite\fR(2) calls to or from the raw diskette, you should
-specify \fBbs=18k\fR or multiples thereof for 3.5" diskettes, and \fBbs=15k\fR
-or multiples thereof for 5.25" diskettes.
-.sp
-.LP
-The SPARC \fBfd\fR driver is \fInot\fR an unloadable module.
-.sp
-.LP
-Under Solaris (x86 Edition), the configuration of the floppy drives is
-specified in \fBCMOS\fR configuration memory. Use the \fBBIOS\fR setup program
-for the system to define the diskette size and density/capacity for each
-installed drive. Note that \fBMS-DOS\fR may operate the floppy drives
-correctly, even though the \fBCMOS\fR configuration may be in error. Solaris
-(x86 Edition) relies on the \fBCMOS\fR configuration to be accurate.
diff --git a/usr/src/man/man7d/fp.7d b/usr/src/man/man7d/fp.7d
deleted file mode 100644
index 2cc529486d..0000000000
--- a/usr/src/man/man7d/fp.7d
+++ /dev/null
@@ -1,193 +0,0 @@
-'\" te
-.\" Copyright (c) 2008 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH FP 7D "Jan 10, 2008"
-.SH NAME
-fp \- Sun Fibre Channel port driver
-.SH DESCRIPTION
-.sp
-.LP
-The \fBfp\fR driver is a Sun fibre channel nexus driver that enables fibre
-channel topology discovery, device discovery, fibre channel adapter port
-management and other capabilities through well-defined fibre channel adapter
-driver interfaces.
-.sp
-.LP
-The \fBfp\fR driver requires the presence of a fabric name server in fabric and
-public loop topologies to discover fibre channel devices. In private loop
-topologies, the driver discovers devices by performing \fBPLOGI\fR to all valid
-\fBAL_PA\fRs, provided that devices do not participate in \fBLIRP\fR and
-\fBLILP\fR stages of loop initialization. The \fBfp\fR driver also discovers
-devices in N_Port point-to-point topologies.
-.SH CONFIGURATION
-.sp
-.LP
-The \fBfp\fR driver is configured by defining properties in the \fBfp.conf\fR
-file. Note that you must reboot the system to have any changes you make to
-\fBfp.conf\fR take effect. The \fBfp\fR driver supports the following
-properties:
-.sp
-.ne 2
-.na
-\fBmpxio-disable\fR
-.ad
-.sp .6
-.RS 4n
-Solaris I/O multipathing is enabled or disabled on fibre channel devices with
-the mpxio-disable property. Specifying mpxio-disable="no" activates I/O
-multipathing, while mpxio-disable="yes" disables the feature. Solaris I/O
-multipathing may be enabled or disabled on a per port basis. Per port settings
-override the global setting for the specified ports. The following example
-shows how to disable multipathing on port 0 whose parent is
-/pci@8,600000/SUNW,qlc@4:
-.sp
-.in +2
-.nf
-name="fp" parent="/pci@8,600000/SUNW,qlc@4" port=0
-mpxio-disable="yes";
-.fi
-.in -2
-
-.RE
-
-.sp
-.ne 2
-.na
-\fBmanual_configuration_only\fR
-.ad
-.sp .6
-.RS 4n
-Automatic configuration of SCSI devices in the fabric is enabled by default and
-thus allows all devices discovered in the SAN zone to be enumerated in the
-kernel's device tree automatically. The \fBmanual_configuration_only\fR
-property may be configured to disable the default behavior and force the
-manual configuration of the devices in the SAN. Specifying
-manual_configuration_only=1 disables the automatic configuration of devices.
-.RE
-
-.sp
-.ne 2
-.na
-\fBpwwn-lun-blacklist\fR
-.ad
-.sp .6
-.RS 4n
-Allows you to specify target port WWNs and LUN numbers you do not want
-configured. LUN numbers are interpreted as decimals. White spaces and commas
-(',') can be used in the list of LUN numbers.
-.sp
-.in +2
-.nf
- #
- # pwwn-lun-blacklist=
- # "target-port-wwn,lun-list"
- #
- # To prevent LUNs 1 and 2 from being configured for target
- # port 510000f010fd92a1 and target port 510000e012079df1, set:
- #
- # pwwn-lun-blacklist=
- # "510000f010fd92a1,1,2",
- # "510000e012079df1,1,2";
- #
-.fi
-.in -2
-
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/fp\fR\fR
-.ad
-.RS 26n
-32-bit ELF kernel driver (x86)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/fp\fR\fR
-.ad
-.RS 26n
-64-bit ELF kernel driver (x86)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/sparcv9/fp\fR\fR
-.ad
-.RS 26n
-64-bit ELF kernel driver (SPARC)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/fp.conf\fR\fR
-.ad
-.RS 26n
-\fBfp\fR driver configuration file.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-mpxio-disable Uncommitted
-_
-manual_configuration_only Obsolete
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBcfgadm_fp\fR(1M), \fBprtconf\fR(1M), \fBstmsboot\fR(1M),
-\fBdriver.conf\fR(4), \fBattributes\fR(5), \fBfcp\fR(7D), \fBfctl\fR(7D),
-\fBscsi_vhci\fR(7D)
-.sp
-.LP
-\fIWriting Device Drivers\fR
-.sp
-.LP
-\fIFibre Channel Physical and Signaling Interface (FC-PH) ANSI X3.230: 1994\fR
-.sp
-.LP
-\fIFibre Channel Generic Services (FC-GS-2) Project 1134-D\fR
-.sp
-.LP
-\fIFibre Channel Arbitrated Loop (FC-AL) ANSI X3.272-1996\fR
-.sp
-.LP
-\fIFibre Channel Protocol for SCSI (FCP) ANSI X3.269-1996\fR
-.sp
-.LP
-\fISCSI-3 Architecture Model (SAM) Fibre Channel Private Loop SCSI Direct
-Attach (FC-PLDA) ANSI X3.270-1996\fR
-.sp
-.LP
-\fISCSI Direct Attach (FC-PLDA) ANSI X3.270-1996\fR
-.sp
-.LP
-\fISCSI Direct Attach (FC-PLDA) NCITS TR-19:1998\fR
-.sp
-.LP
-\fIFabric Loop Attachment (FC-FLA), NCITS TR-20:1998\fR
-.SH NOTES
-.sp
-.LP
-In N_Port point-to-point topologies, FCP error recovery does not work across
-events such as link bounce/cable pull. I/O to devices with FCP-2/FCP-3 support
-(for example, FC tape drives) will be disrupted by such events.
diff --git a/usr/src/man/man7d/full.7d b/usr/src/man/man7d/full.7d
deleted file mode 100644
index 34d58e8e28..0000000000
--- a/usr/src/man/man7d/full.7d
+++ /dev/null
@@ -1,46 +0,0 @@
-.\"
-.\" This file and its contents are supplied under the terms of the
-.\" Common Development and Distribution License ("CDDL"), version 1.0.
-.\" You may only use this file in accordance with the terms of version
-.\" 1.0 of the CDDL.
-.\"
-.\" A full copy of the text of the CDDL should have accompanied this
-.\" source. A copy of the CDDL is also available via the Internet at
-.\" http://www.illumos.org/license/CDDL.
-.\"
-.\" Copyright 2017 James S Blachly, MD <james.blachly@gmail.com>
-.
-.Dd "Feb 7, 2017"
-.Dt FULL 7D
-.Os
-.Sh NAME
-.Nm full
-.Nd always-full device
-.Sh SYNOPSIS
-.Pa /dev/full
-.Sh DESCRIPTION
-The
-.Nm
-device is used to test program behavior in out-of-space conditions.
-.Lp
-Writes always yield the error
-.Er ENOSPC.
-.Lp
-Reads supply an endless stream of zeros, identical to
-.Xr zero 7D
-.Lp
-.Xr lseek 2
-will always return successfully.
-.Lp
-.Xr mmap 2
-is not implemented.
-.Sh FILES
-.
-.Bl -tag -width Pa
-.It Pa /dev/full
-.El
-.
-.Sh SEE ALSO
-.Xr mem 7D ,
-.Xr null 7D ,
-.Xr zero 7D
diff --git a/usr/src/man/man7d/gld.7d b/usr/src/man/man7d/gld.7d
deleted file mode 100644
index 74e1db2052..0000000000
--- a/usr/src/man/man7d/gld.7d
+++ /dev/null
@@ -1,1024 +0,0 @@
-'\" te
-.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH GLD 7D "Nov 10, 2005"
-.SH NAME
-gld \- Generic \fBLAN\fR Driver
-.SH SYNOPSIS
-.nf
-\fB#include\fR \fB<sys/stropts.h>\fR
-.fi
-
-.LP
-.nf
-\fB#include\fR \fB<sys/stream.h>\fR
-.fi
-
-.LP
-.nf
-\fB#include\fR \fB<sys/dlpi.h>\fR
-.fi
-
-.LP
-.nf
-\fB#include\fR \fB<sys/gld.h>\fR
-.fi
-
-.SH INTERFACE LEVEL
-illumos architecture specific (illumos DDI).
-.SH DESCRIPTION
-GLD is a multi-threaded, clonable, loadable kernel module providing support for
-illumos local area network (\fBLAN\fR) device drivers. \fBLAN\fR drivers in
-illumos are \fBSTREAMS\fR-based drivers that use the Data Link Provider
-Interface (\fBDLPI\fR) to communicate with network protocol stacks. These
-protocol stacks use the network drivers to send and receive packets on a local
-area network. A network device driver must implement and adhere to the
-requirements imposed by the DDI/DKI specification, \fBSTREAMS\fR specification,
-DLPI specification, and programmatic interface of the device itself.
-.sp
-.LP
-GLD implements most \fBSTREAMS\fR and DLPI functionality required of an illumos
-LAN driver. Several illumos network drivers are implemented using GLD.
-.sp
-.LP
-An illumos network driver implemented using GLD comprises two distinct parts: a
-generic component that deals with \fBSTREAMS\fR and DLPI interfaces, and a
-device-specific component that deals with the particular hardware device. The
-device-specific module indicates its dependency on the GLD module and registers
-itself with GLD from within the driver's \fBattach\fR(9E) function. Once it is
-successfully loaded, the driver is \fBDLPI\fR-compliant. The device-specific
-part of the driver calls \fBgld\fR(9F) functions when it receives data or needs
-some service from GLD. GLD makes calls into the \fBgld\fR(9E) entry points of
-the device-specific driver through pointers provided to GLD by the
-device-specific driver when it registered itself with GLD. The
-\fBgld_mac_info\fR(9S) structure is the main data interface between GLD and the
-device-specific driver.
-.sp
-.LP
-The GLD facility currently supports devices of type \fBDL_ETHER\fR,
-\fBDL_TPR\fR, and \fBDL_FDDI\fR. GLD drivers are expected to process
-fully-formed MAC-layer packets and should not perform logical link control
-(LLC) handling.
-.LP
-Note -
-.sp
-.RS 2
-Support for the DL_TPR and DL_FDDI media types in GLD is obsolete and may be
-removed in a future release of illumos.
-.RE
-.sp
-.LP
-In some cases, it may be necessary or desirable to implement a full
-DLPI-compliant driver without using the GLD facility. This is true for devices
-that are not IEEE 802-style LAN devices, or where a device type or DLPI service
-not supported by GLD is required.
-.SS "Device Naming Constraints"
-The name of the device-specific driver module must adhere to the naming
-constraints outlined in the NOTES section of \fBdlpi\fR(7P).
-.SS "Type DL_ETHER: Ethernet V2 and ISO 8802-3 (IEEE 802.3)"
-For devices designated type \fBDL_ETHER\fR, GLD provides support for both
-Ethernet V2 and ISO 8802-3 (IEEE 802.3) packet processing. Ethernet V2 enables
-a data link service user to access and use any of a variety of conforming data
-link service providers without special knowledge of the provider's protocol. A
-service access point (\fBSAP\fR) is the point through which the user
-communicates with the service provider.
-.sp
-.LP
-SAP 0 denotes that the user wishes to use \fI802.3\fR mode. In transmission,
-GLD checks the destination SAP value of the DL_UNITDATA_REQ and the SAP value
-to which the stream is bound. If both are 0, the GLD computes the length of
-the packet payload and transmits \fI802.3\fR frames having that length in the
-MAC frame header type field. Such lengths will never exceed 1500.
-.sp
-.LP
-All frames received from the media that have a type field in the range [0-1500]
-are assumed to be \fI802.3\fR frames and are routed up all open streams that
-are in \fI802.3\fR mode, (those streams bound to a SAP value in of 0. If more
-than one stream is in \fI802.3\fR mode, the incoming frame is duplicated and
-routed up each such stream.
-.sp
-.LP
-Streams bound to a SAP value of 1536 or greater receive incoming packets
-whose Ethernet MAC header type value exactly matches the value of the SAP to
-which the stream is bound. SAP values in the range [1-1535] are undefined and
-should not be used.
-.SS "Types DL_TPR and DL_FDDI: SNAP Processing"
-Note -
-.sp
-.RS 2
-Support for the DL_TPR and DL_FDDI media types in GLD is obsolete and may be
-removed in a future release of illumos.
-.RE
-.sp
-.LP
-For media types DL_TPR and DL_FDDI, GLD implements minimal SNAP (Sub-Net
-Access Protocol) processing for SAP values of 1536 or greater. A SAP value of
-0 denotes that the user wishes to use LLC mode. SAP values in the range
-[1-1535] have undefined semantics and should not be used.
-.sp
-.LP
-\fBSNAP\fR headers are carried under LLC headers with destination SAP 0xAA. For
-outgoing packets with SAP values greater than 1535, GLD creates an LLC+SNAP
-header that always looks like:
-.sp
-.LP
-``AA AA 03 00 00 00 XX XX''
-.sp
-.LP
-where ``XX XX'' represents the 16-bit SAP, corresponding to the Ethernet V2
-style ``type.'' This is the only class of SNAP header that is processed -
-non-zero OUI fields, and LLC control fields other than 03 are considered to be
-LLC packets with SAP 0xAA.
-.sp
-.LP
-A DL_UNITDATA_REQ message specifying a destination SAP value of 0, passed
-down a stream bound to SAP 0, is assumed to contain an LLC packet and
-will not undergo SNAP processing.
-.sp
-.LP
-Incoming packets are examined to ascertain whether they fall into the format
-specified above. Packets that do will be passed to streams bound to the
-packet's 16-bit SNAP type, as well as being passed to any stream in LLC mode
-(those bound to a SAP value of 0).
-.SS "Type DL_TPR: Source Routing"
-Note -
-.sp
-.RS 2
-Support for the DL_TPR media type in GLD is obsolete and may be removed in a
-future release of illumos.
-.RE
-.sp
-.LP
-For type \fBDL_TPR\fR devices, GLD implements minimal support for source
-routing. Source routing enables a station that is sending a packet across a
-bridged medium to specify (in the packet MAC header) routing information that
-determines the route that the packet will take through the network.
-.sp
-.LP
-Functionally, the source routing support provided by GLD learns routes,
-solicits and responds to requests for information about possible multiple
-routes and selects among the multiple routes that are available. It adds
-\fIRouting Information Fields\fR to the MAC headers of outgoing packets and
-recognizes such fields in incoming packets.
-.sp
-.LP
-GLD's source routing support does not implement the full \fIRoute Determination
-Entity\fR \fB(RDE)\fR specified in \fIISO 8802-2 (IEEE 802.2)\fR Section 9.
-However, it is designed to interoperate with any such implementations that may
-exist in the same (or a bridged) network.
-.SS "Style 1 and 2 Providers"
-GLD implements both Style 1 and Style 2 providers. A physical point of
-attachment (\fBPPA\fR) is the point at which a system attaches itself to a
-physical communication medium. All communication on that physical medium
-funnels through the \fBPPA\fR. The Style 1 provider attaches the stream to a
-particular \fBPPA\fR based on the major/minor device that has been opened. The
-Style 2 provider requires the DLS user to explicitly identify the desired
-\fBPPA\fR using \fBDL_ATTACH_REQ.\fR In this case, \fBopen\fR(9E) creates a
-stream between the user and GLD and \fBDL_ATTACH_REQ\fR subsequently associates
-a particular \fBPPA\fR with that stream. Style 2 is denoted by a minor number
-of zero. If a device node whose minor number is not zero is opened, Style 1 is
-indicated and the associated \fBPPA\fR is the minor number minus 1. In both
-Style 1 and Style 2 opens, the device is cloned.
-.SS "Implemented DLPI Primitives"
-GLD implements the following DLPI primitives:
-.sp
-.LP
-The \fBDL_INFO_REQ\fR primitive requests information about the DLPI stream. The
-message consists of one \fBM_PROTO\fR message block. GLD returns
-device-dependent values in the \fBDL_INFO_ACK\fR response to this request,
-based on information the GLD-based driver specified in the
-\fBgld_mac_info\fR(9S) structure passed to \fBgld_register()\fR. However GLD
-returns the following values on behalf of all GLD-based drivers:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The version is \fBDL_VERSION_2\fR.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The service mode is \fBDL_CLDLS\fR \(em GLD implements connectionless-mode
-service.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The provider style is \fBDL_STYLE1\fR or \fBDL_STYLE2,\fR depending on how the
-stream was opened.
-.RE
-.sp
-.LP
-The \fBDL_ATTACH_REQ\fR primitive is called to associate a \fBPPA\fR with a
-stream. This request is needed for Style 2 DLS providers to identify the
-physical medium over which the communication will transpire. Upon completion,
-the state changes from \fBDL_UNATTACHED\fR to \fBDL_UNBOUND.\fR The message
-consists of one \fBM_PROTO\fR message block. This request may not be issued
-when using the driver in Style 1 mode; streams opened using Style 1 are already
-attached to a \fBPPA\fR by the time the open completes.
-.sp
-.LP
-The \fBDL_DETACH_REQ\fR primitive requests to detach the \fBPPA\fR from the
-stream. This is only allowed if the stream was opened using Style 2.
-.sp
-.LP
-The \fBDL_BIND_REQ\fR and \fBDL_UNBIND_REQ\fR primitives bind and unbind a
-\fBDLSAP\fR to the stream. The \fBPPA\fR associated with each stream will have
-been initialized upon completion of the processing of the \fBDL_BIND_REQ.\fR
-Multiple streams may be bound to the same \fBSAP\fR; each such stream receives
-a copy of any packets received for that SAP.
-.sp
-.LP
-The \fBDL_ENABMULTI_REQ\fR and \fBDL_DISABMULTI_REQ\fR primitives enable and
-disable reception of individual multicast group addresses. A set of multicast
-addresses may be iteratively created and modified on a per-stream basis using
-these primitives. The stream must be attached to a \fBPPA\fR for these
-primitives to be accepted.
-.sp
-.LP
-The \fBDL_PROMISCON_REQ\fR and \fBDL_PROMISCOFF_REQ\fR primitives enable and
-disable promiscuous mode on a per-stream basis, either at a physical level or
-at the \fBSAP\fR level. The DL Provider will route all received messages on the
-media to the DLS user until either a \fBDL_DETACH_REQ\fR or a
-\fBDL_PROMISCOFF_REQ\fR is received or the stream is closed. Physical level
-promiscuous mode may be specified for all packets on the medium or for
-multicast packets only. The stream must be attached to a \fBPPA\fR for these
-primitives to be accepted.
-.sp
-.LP
-The \fBDL_UNITDATA_REQ\fR primitive is used to send data in a connectionless
-transfer. Because this is an unacknowledged service, there is no guarantee of
-delivery. The message consists of one \fBM_PROTO\fR message block followed by
-one or more \fBM_DATA\fR blocks containing at least one byte of data.
-.sp
-.LP
-The \fBDL_UNITDATA_IND\fR type is used when a packet is received and is to be
-passed upstream. The packet is put into an \fBM_PROTO\fR message with the
-primitive set to \fBDL_UNITDATA_IND\fR.
-.sp
-.LP
-The \fBDL_PHYS_ADDR_REQ\fR primitive returns the MAC address currently
-associated with the \fBPPA\fR attached to the stream, in the
-\fBDL_PHYS_ADDR_ACK\fR primitive. When using style 2, this primitive is only
-valid following a successful \fBDL_ATTACH_REQ\fR.
-.sp
-.LP
-The \fBDL_SET_PHYS_ADDR_REQ\fR primitive changes the MAC address currently
-associated with the \fBPPA\fR attached to the stream. This primitive affects
-all other current and future streams attached to this device. Once changed, all
-streams currently or subsequently opened and attached to this device will
-obtain this new physical address. The new physical address will remain in
-effect until this primitive is used to change the physical address again or the
-driver is reloaded.
-.sp
-.LP
-The \fBDL_GET_STATISTICS_REQ\fR primitive requests a
-\fBDL_GET_STATISTICS_ACK\fR response containing statistics information
-associated with the PPA attached to the stream. Style 2 streams must be
-attached to a particular \fBPPA\fR using \fBDL_ATTACH_REQ\fR before this
-primitive will be successful.
-.sp
-.LP
-GLD supports the DL_NOTE_LINK_UP, DL_NOTE_LINK_DOWN and DL_NOTE_SPEED
-notifications using the DL_NOTIFY_IND primitive. See \fBdlpi\fR(7P).
-.SS "Implemented ioctl Functions"
-GLD implements the \fBDLIOCRAW\fR ioctl described in \fBdlpi\fR(7P). For any
-other ioctl command, GLD passes it to the device-specific driver's
-\fBgldm_ioctl()\fR function as described in \fBgld\fR(9E).
-.SS "Requirements on GLD Drivers"
-GLD-based drivers must include the header file \fB<sys/gld.h>\fR\&.
-.sp
-.LP
-GLD-based drivers must also specify a link dependency on "misc/gld". (See
-the -N option in \fBld\fR(1)).
-.sp
-.LP
-GLD implements the \fBopen\fR(9E) and \fBclose\fR(9E) functions and the
-required \fBSTREAMS\fR \fBput\fR(9E) and \fBsrv\fR(9E) functions on behalf of
-the device-specific driver. GLD also implements the \fBgetinfo\fR(9E) function
-for the driver.
-.sp
-.LP
-The \fBmi_idname\fR element of the \fBmodule_info\fR(9S) structure is a string
-specifying the name of the driver. This must exactly match the name of the
-driver module as it exists in the file system.
-.sp
-.LP
-The read-side \fBqinit\fR(9S) structure should specify the following elements
-as shown below:
-.sp
-.ne 2
-.na
-\fB\fBqi_putp\fR \fR
-.ad
-.RS 14n
-\fINULL\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBqi_srvp\fR \fR
-.ad
-.RS 14n
-\fBgld_rsrv\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBqi_qopen\fR \fR
-.ad
-.RS 14n
-\fBgld_open\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBqi_qclose\fR \fR
-.ad
-.RS 14n
-\fBgld_close\fR
-.RE
-
-.sp
-.LP
-The write-side \fBqinit\fR(9S) structure should specify the following elements
-as shown below:
-.sp
-.ne 2
-.na
-\fB\fBqi_putp\fR \fR
-.ad
-.RS 14n
-\fBgld_wput\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBqi_srvp\fR \fR
-.ad
-.RS 14n
-\fBgld_wsrv\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBqi_qopen\fR \fR
-.ad
-.RS 14n
-\fINULL\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBqi_qclose\fR \fR
-.ad
-.RS 14n
-\fINULL\fR
-.RE
-
-.sp
-.LP
-The \fBdevo_getinfo\fR element of the \fBdev_ops\fR(9S) structure should
-specify \fBgld_getinfo\fR as the \fBgetinfo\fR(9E) routine.
-.sp
-.LP
-The driver's \fBattach\fR(9E) function does all the work of associating the
-hardware-specific device driver with the GLD facility and preparing the device
-and driver for use.
-.sp
-.LP
-The \fBattach\fR(9E) function allocates a \fBgld_mac_info\fR(9S) (``macinfo'')
-structure using \fBgld_mac_alloc()\fR. The driver usually needs to save more
-information per device than is defined in the macinfo structure; it should
-allocate the additional required data structure and save a pointer to it in the
-\fBgldm_private\fR member of the \fBgld_mac_info\fR(9S) structure.
-.sp
-.LP
-The \fBattach\fR(9E) routine must initialize the macinfo structure as described
-in \fBgld_mac_info\fR(9S) and then call \fBgld_register()\fR to link the driver
-with the GLD module. The driver should map registers if necessary and be fully
-initialized and prepared to accept interrupts before calling
-\fBgld_register()\fR. The \fBattach\fR(9E) function should add interrupts but
-not enable the device to generate them. The driver should reset the hardware
-before calling \fBgld_register()\fR to ensure it is quiescent; the device must
-not be started or put into a state where it may generate an interrupt before
-\fBgld_register()\fR is called. That will be done later when GLD calls the
-driver's \fBgldm_start()\fR entry point described in \fBgld\fR(9E). Once
-\fBgld_register()\fR succeeds, the \fBgld\fR(9E) entry points may be called by
-GLD at any time.
-.sp
-.LP
-The \fBattach\fR(9E) routine should return \fBDDI_SUCCESS\fR if
-\fBgld_register()\fR succeeds. If \fBgld_register()\fR fails, it returns
-\fBDDI_FAILURE\fR and the \fBattach\fR(9E) routine should deallocate any
-resources it allocated before calling \fBgld_register()\fR and then also return
-\fBDDI_FAILURE\fR. Under no circumstances should a failed macinfo structure be
-reused; it should be deallocated using \fBgld_mac_free\fR().
-.sp
-.LP
-The \fBdetach\fR(9E) function should attempt to unregister the driver from GLD.
-This is done by calling \fBgld_unregister()\fR described in \fBgld\fR(9F). The
-\fBdetach\fR(9E) routine can get a pointer to the needed \fBgld_mac_info\fR(9S)
-structure from the device's private data using
-\fBddi_get_driver_private\fR(9F). \fBgld_unregister\fR() checks certain
-conditions that could require that the driver not be detached. If the checks
-fail, \fBgld_unregister()\fR returns \fBDDI_FAILURE\fR, in which case the
-driver's \fBdetach\fR(9E) routine must leave the device operational and return
-\fBDDI_FAILURE\fR. If the checks succeed, \fBgld_unregister()\fR ensures that
-the device interrupts are stopped, calling the driver's \fBgldm_stop()\fR
-routine if necessary, unlinks the driver from the GLD framework, and returns
-\fBDDI_SUCCESS\fR. In this case, the \fBdetach\fR(9E) routine should remove
-interrupts, deallocate any data structures allocated in the \fBattach\fR(9E)
-routine, using \fBgld_mac_free()\fR to deallocate the macinfo structure, and
-return \fBDDI_SUCCESS\fR. It is important to remove the interrupt \fIbefore\fR
-calling \fBgld_mac_free()\fR.
-.SS "Network Statistics"
-illumos network drivers must implement statistics variables. GLD itself tallies
-some network statistics, but other statistics must be counted by each GLD-based
-driver. GLD provides support for GLD-based drivers to report a standard set of
-network driver statistics. Statistics are reported by GLD using the
-\fBkstat\fR(7D) and \fBkstat\fR(9S) mechanism. The \fBDL_GET_STATISTICS_REQ\fR
-DLPI command may also be used to retrieve the current statistics counters. All
-statistics are maintained as unsigned, and all are 32 bits unless otherwise
-noted.
-.sp
-.LP
-GLD maintains and reports the following statistics.
-.sp
-.ne 2
-.na
-\fB\fBrbytes64\fR \fR
-.ad
-.RS 15n
-Total bytes successfully received on the interface (64 bits).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrbytes\fR \fR
-.ad
-.RS 15n
-Total bytes successfully received on the interface.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBobytes64\fR \fR
-.ad
-.RS 15n
-Total bytes requested to be transmitted on the interface (64 bits).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBobytes\fR \fR
-.ad
-.RS 15n
-Total bytes requested to be transmitted on the interface.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBipackets64\fR \fR
-.ad
-.RS 15n
-Total packets successfully received on the interface (64 bits).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBipackets\fR \fR
-.ad
-.RS 15n
-Total packets successfully received on the interface.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBopackets64\fR \fR
-.ad
-.RS 15n
-Total packets requested to be transmitted on the interface (64 bits).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBopackets\fR \fR
-.ad
-.RS 15n
-Total packets requested to be transmitted on the interface.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmultircv\fR \fR
-.ad
-.RS 15n
-Multicast packets successfully received, including group and functional
-addresses (long).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmultixmt\fR \fR
-.ad
-.RS 15n
-Multicast packets requested to be transmitted, including group and functional
-addresses (long).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBbrdcstrcv\fR \fR
-.ad
-.RS 15n
-Broadcast packets successfully received (long).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBbrdcstxmt\fR \fR
-.ad
-.RS 15n
-Broadcast packets requested to be transmitted (long).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBunknowns\fR \fR
-.ad
-.RS 15n
-Valid received packets not accepted by any stream (long).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnoxmtbuf\fR \fR
-.ad
-.RS 15n
-Packets discarded on output because transmit buffer was busy, or no buffer
-could be allocated for transmit (long).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBblocked\fR \fR
-.ad
-.RS 15n
-Times a received packet could not be put up a stream because the queue was flow
-controlled (long).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBxmtretry\fR \fR
-.ad
-.RS 15n
-Times transmit was retried after having been delayed due to lack of resources
-(long).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpromisc\fR \fR
-.ad
-.RS 15n
-Current ``promiscuous'' state of the interface (string).
-.RE
-
-.sp
-.LP
-The device dependent driver counts the following statistics, keeping track of
-them in a private per-instance structure. When GLD is asked to report
-statistics, it calls the driver's \fBgldm_get_stats()\fR entry point, as
-described in \fBgld\fR(9E), to update the device-specific statistics in the
-\fBgld_stats\fR(9S) structure. GLD then reports the updated statistics using
-the named statistics variables below.
-.sp
-.ne 2
-.na
-\fB\fBifspeed\fR \fR
-.ad
-.RS 13n
-Current estimated bandwidth of the interface in bits per second (64 bits).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmedia\fR \fR
-.ad
-.RS 13n
-Current media type in use by the device (string).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBintr\fR \fR
-.ad
-.RS 13n
-Times interrupt handler was called and claimed the interrupt (long).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBnorcvbuf\fR \fR
-.ad
-.RS 13n
-Times a valid incoming packet was known to have been discarded because no
-buffer could be allocated for receive (long).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBierrors\fR \fR
-.ad
-.RS 13n
-Total packets received that couldn't be processed because they contained errors
-(long).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBoerrors\fR \fR
-.ad
-.RS 13n
-Total packets that weren't successfully transmitted because of errors (long).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmissed\fR \fR
-.ad
-.RS 13n
-Packets known to have been dropped by the hardware on receive (long).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBuflo\fR \fR
-.ad
-.RS 13n
-Times FIFO underflowed on transmit (long).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBoflo\fR \fR
-.ad
-.RS 13n
-Times receiver overflowed during receive (long).
-.RE
-
-.sp
-.LP
-The following group of statistics applies to networks of type \fBDL_ETHER\fR;
-these are maintained by device-specific drivers of that type, as above.
-.sp
-.ne 2
-.na
-\fB\fBalign_errors\fR \fR
-.ad
-.RS 23n
-Packets received with framing errors (not an integral number of octets) (long).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfcs_errors\fR \fR
-.ad
-.RS 23n
-Packets received with CRC errors (long).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBduplex\fR \fR
-.ad
-.RS 23n
-Current duplex mode of the interface (string).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcarrier_errors\fR \fR
-.ad
-.RS 23n
-Times carrier was lost or never detected on a transmission attempt (long).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBcollisions\fR \fR
-.ad
-.RS 23n
-Ethernet collisions during transmit (long).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBex_collisions\fR \fR
-.ad
-.RS 23n
-Frames where excess collisions occurred on transmit, causing transmit failure
-(long).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBtx_late_collisions\fR \fR
-.ad
-.RS 23n
-Times a transmit collision occurred late (after 512 bit times) (long).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBdefer_xmts\fR \fR
-.ad
-.RS 23n
-Packets without collisions where first transmit attempt was delayed because the
-medium was busy (long).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfirst_collisions\fR \fR
-.ad
-.RS 23n
-Packets successfully transmitted with exactly one collision.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmulti_collisions\fR \fR
-.ad
-.RS 23n
-Packets successfully transmitted with multiple collisions.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsqe_errors\fR \fR
-.ad
-.RS 23n
-Times SQE test error was reported.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmacxmt_errors\fR \fR
-.ad
-.RS 23n
-Packets encountering transmit MAC failures, except carrier and collision
-failures.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmacrcv_errors\fR \fR
-.ad
-.RS 23n
-Packets received with MAC errors, except align, fcs, and toolong errors.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBtoolong_errors\fR \fR
-.ad
-.RS 23n
-Packets received larger than the maximum permitted length.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBrunt_errors\fR \fR
-.ad
-.RS 23n
-Packets received smaller than the minimum permitted length (long).
-.RE
-
-.sp
-.LP
-The following group of statistics applies to networks of type \fBDL_TPR\fR;
-these are maintained by device-specific drivers of that type, as above.
-.sp
-.ne 2
-.na
-\fB\fBline_errors\fR \fR
-.ad
-.RS 24n
-Packets received with non-data bits or FCS errors.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBburst_errors\fR \fR
-.ad
-.RS 24n
-Times an absence of transitions for five half-bit timers was detected.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBsignal_losses\fR \fR
-.ad
-.RS 24n
-Times loss of signal condition on the ring was detected.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBace_errors\fR \fR
-.ad
-.RS 24n
-Times an AMP or SMP frame in which A is equal to C is equal to 0, was followed
-by another such SMP frame without an intervening AMP frame.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBinternal_errors\fR \fR
-.ad
-.RS 24n
-Times the station recognized an internal error.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBlost_frame_errors\fR \fR
-.ad
-.RS 24n
-Times the TRR timer expired during transmit.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBframe_copied_errors\fR \fR
-.ad
-.RS 24n
-Times a frame addressed to this station was received with the FS field A bit
-set to 1.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBtoken_errors\fR \fR
-.ad
-.RS 24n
-Times the station acting as the active monitor recognized an error condition
-that needed a token transmitted.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBfreq_errors\fR \fR
-.ad
-.RS 24n
-Times the frequency of the incoming signal differed from the expected
-frequency.
-.RE
-
-.sp
-.LP
-The following group of statistics applies to networks of type \fBDL_FDDI\fR;
-these are maintained by device-specific drivers of that type, as above.
-.sp
-.ne 2
-.na
-\fB\fBmac_errors\fR \fR
-.ad
-.RS 20n
-Frames detected in error by this MAC that had not been detected in error by
-another MAC.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmac_lost_errors\fR \fR
-.ad
-.RS 20n
-Frames received with format errors such that the frame was stripped.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmac_tokens\fR \fR
-.ad
-.RS 20n
-Number of tokens received (total of non-restricted and restricted).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmac_tvx_expired\fR \fR
-.ad
-.RS 20n
-Number of times that TVX has expired.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmac_late\fR \fR
-.ad
-.RS 20n
-Number of TRT expirations since this MAC was reset or a token was received.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmac_ring_ops\fR \fR
-.ad
-.RS 20n
-Number of times the ring has entered the ``Ring_Operational'' state from the
-``Ring Not Operational'' state.
-.RE
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/kernel/misc/gld\fR \fR
-.ad
-.RS 21n
-loadable kernel module
-.RE
-
-.SH SEE ALSO
-\fBld\fR(1), \fBkstat\fR(7D), \fBdlpi\fR(7P), \fBattach\fR(9E), \fBgld\fR(9E),
-\fBopen\fR(9E), \fBgld\fR(9F), \fBgld_mac_info\fR(9S), \fBgld_stats\fR(9S),
-\fBkstat\fR(9S)
-.sp
-.LP
-\fIWriting Device Drivers\fR
-.SH WARNINGS
-Contrary to the DLPI specification, GLD returns the device's correct address
-length and broadcast address in \fBDL_INFO_ACK\fR even before the stream has
-been attached to a \fBPPA\fR.
-.sp
-.LP
-Promiscuous mode may only be entered by streams that are attached to a
-\fBPPA\fR.
-.sp
-.LP
-The physical address of a \fBPPA\fR may be changed by the superuser while other
-streams are bound to the same PPA.
diff --git a/usr/src/man/man7d/gpio_87317.7d b/usr/src/man/man7d/gpio_87317.7d
deleted file mode 100644
index 6124f4fe13..0000000000
--- a/usr/src/man/man7d/gpio_87317.7d
+++ /dev/null
@@ -1,38 +0,0 @@
-'\" te
-.\" Copyright (2000 Sun Microsystems, Inc. All
-.\" Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH GPIO_87317 7D "Apr 12, 2000"
-.SH NAME
-gpio_87317 \- General purpose I/O driver for SuperIO
-.SH DESCRIPTION
-.sp
-.LP
-The \fBgpio_87317\fR driver is the general purpose I/O driver for the National
-Semiconductor SuperIO (PC87317) chipset. It supports remote system controller
-(RSC) administration via an interface to the SuperIO's general purpose I/O
-bits.
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture Limited to SPARC systems with SuperIO
-_
-Interface Stability Unstable
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fIPC87317VUL/PC97317VUL SuperI/O Data Sheet \fR\(em National Semiconductor
diff --git a/usr/src/man/man7d/grbeep.7d b/usr/src/man/man7d/grbeep.7d
deleted file mode 100644
index 86bb7f3440..0000000000
--- a/usr/src/man/man7d/grbeep.7d
+++ /dev/null
@@ -1,61 +0,0 @@
-'\" te
-.\" Copyright (c) 2001 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH GRBEEP 7D "Dec 18, 2001"
-.SH NAME
-grbeep \- Platform-dependent beep driver for SMBus-based hardware
-.SH SYNOPSIS
-.LP
-.nf
-beep@unit-address
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBgrbeep\fR driver generates beeps on platforms (including Sun Blade 100,
-150, 1500, 2500) that use SMBbus-based registers and USB keyboards. When the
-\fBKIOCCMD\fR ioctl is issued to the USB keyboard module (see \fBusbkbm\fR(7M))
-with command \fBKBD_CMD_BELL/KBD_CMD_NOBELL\fR, \fBusbkbm\fR(7M) passes the
-request to the \fBgrbeep\fR driver to turn the beep on and off, respectively.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/platform/sun4u/kernel/drv/sparcv9/grbeep\fR\fR
-.ad
-.sp .6
-.RS 4n
- 64-bit ELF kernel driver
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See attributes(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture SMBus-based SPARC
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBkbd\fR(1), \fBattributes\fR(5), \fBbbc_beep\fR(7D), \fBkb\fR(7M),
-\fBusbkbm\fR(7M)
-.sp
-.LP
-\fIWriting Device Drivers\fR
-.SH DIAGNOSTICS
-.sp
-.LP
-None
diff --git a/usr/src/man/man7d/hci1394.7d b/usr/src/man/man7d/hci1394.7d
deleted file mode 100644
index 34ac56762f..0000000000
--- a/usr/src/man/man7d/hci1394.7d
+++ /dev/null
@@ -1,64 +0,0 @@
-'\" te
-.\" Copyright (c) 2005 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH HCI1394 7D "Jan 10, 2020"
-.SH NAME
-hci1394 \- 1394 OpenHCI host controller driver
-.SH SYNOPSIS
-.nf
-\fBfirewire@unit-address\fR
-.fi
-
-.SH DESCRIPTION
-The \fBhci1394\fR host controller driver is an IEEE 1394 compliant nexus driver
-that supports the \fI1394 Open Host Controller Interface Specification 1.0\fR,
-an industry standard developed by Sun, Apple, Compaq, Intel, Microsoft,
-National Semiconductor, and Texas Instruments. The \fBhci1394\fR driver supports
-asynchronous transfers, isochronous transfers, and bus reset management. The
-\fBhci1394\fR driver also supports the nexus device control interface.
-.SH FILES
-.ne 2
-.na
-\fB\fB/kernel/drv/sparcv9/hci1394\fR\fR
-.ad
-.sp .6
-.RS 4n
-Device driver (SPARC)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/hci1394\fR\fR
-.ad
-.sp .6
-.RS 4n
-Device driver (x86)
-.RE
-
-.SH ATTRIBUTES
-See \fBattributes\fR(5) for a description of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-l | l
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture SPARC, x86, PCI-based systems
-_
-Interface Stability Unstable
-.TE
-
-.SH SEE ALSO
-\fBattributes\fR(5), \fBieee1394\fR(7D)
-.sp
-.LP
-\fIIEEE 1394 - IEEE Standard for a High Performance Serial Bus\fR
-.sp
-.LP
-\fI1394 Open Host Controller Interface Specification 1.0\fR
diff --git a/usr/src/man/man7d/hermon.7d b/usr/src/man/man7d/hermon.7d
deleted file mode 100644
index 708652966d..0000000000
--- a/usr/src/man/man7d/hermon.7d
+++ /dev/null
@@ -1,171 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH HERMON 7D "Jul 31, 2008"
-.SH NAME
-hermon \- ConnectX MT25408/MT25418/MT25428 InfiniBand (IB) Driver
-.SH DESCRIPTION
-.sp
-.LP
-The \fBhermon\fR driver is an IB Architecture-compliant implementation of an
-HCA, which operates on the Mellanox MT25408, MT25418 and MT25428 InfiniBand
-ASSPs using host memory for context storage rather than locally attached
-memory on the card. Cards based on these ASSP's utilize the PCI-Express I/O
-bus. These ASSP's support the link and physical layers of the InfiniBand
-specification while the ASSP and the driver support the transport layer.
-.sp
-.LP
-The \fBhermon\fR driver interfaces with the InfiniBand Transport Framework
-(IBTF) and provides an implementation of the Channel Interfaces that are
-defined by that framework. It also enables management applications and
-agents to access the IB fabric.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/hermon\fR\fR
-.ad
-.sp .6
-.RS 4n
-32-bit \fBELF\fR kernel module. (x86)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/hermon\fR\fR
-.ad
-.sp .6
-.RS 4n
-64-bit \fBELF\fR kernel module. (x86)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/sparcv9/hermon\fR\fR
-.ad
-.sp .6
-.RS 4n
-64-bit ELF Kernel Module. (SPARC)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/hermon.conf\fR\fR
-.ad
-.sp .6
-.RS 4n
-Driver configuration file.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attribute:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture PCIe-based systems
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBdriver.conf\fR(4), \fBprinters.conf\fR(4), \fBattributes\fR(5)
-.sp
-.LP
-\fIWriting Device Drivers\fR
-.SH DIAGNOSTICS
-.sp
-.LP
-In addition to being logged, the following messages may appear on the system
-console:
-.sp
-.ne 2
-.na
-\fBhermon\fBi\fR: driver attached for maintenance mode only.\fR
-.ad
-.sp .6
-.RS 4n
-There was a failure in the boot process of the hermon ASSP and the only
-function that can be performed is to re-flash firmware on the ASSP. (Note that
-\fBi\fR represents the instance of the hermon device number.)
-.RE
-
-.sp
-.ne 2
-.na
-\fBhermon\fBi:\fR driver failed to attach\fR
-.ad
-.sp .6
-.RS 4n
-The ASSP could not boot into either operational (HCA) mode or into
-maintenance mode. The device is inoperable. (Note that \fB i\fR represents the
-instance of the hermon device number.)
-.RE
-
-.sp
-.ne 2
-.na
-\fBUnexpected port number in port state change event.\fR
-.ad
-.sp .6
-.RS 4n
-A port state change event occurred, but the port number in the message does
-not exist on this HCA. This message also indicates the port number that was in
-the port state changed.
-.RE
-
-.sp
-.ne 2
-.na
-\fBHermon driver successfully detached.\fR
-.ad
-.sp .6
-.RS 4n
-The driver has been removed from the system and the HCA is no longer available
-for transfer operations.
-.RE
-
-.sp
-.ne 2
-.na
-\fBhermon\fBi:\fR port \fBm\fR up.\fR
-.ad
-.sp .6
-.RS 4n
-A port up asynchronous event has occurred. (Note that \fB i\fR represents the
-instance of the Hermon device number while "m" represents the port number on
-the Hermon device.
-.RE
-
-.sp
-.ne 2
-.na
-\fBhermon\fBi:\fR port \fBm\fR down.\fR
-.ad
-.sp .6
-.RS 4n
-A port up asynchronous event has occurred. Similar to port up event.
-.RE
-
-.sp
-.ne 2
-.na
-\fBhermon: <command name> command failed.\fR
-.ad
-.sp .6
-.RS 4n
-A internal firmware command failed to execute.
-.RE
-
diff --git a/usr/src/man/man7d/hid.7d b/usr/src/man/man7d/hid.7d
deleted file mode 100644
index 6601f7997b..0000000000
--- a/usr/src/man/man7d/hid.7d
+++ /dev/null
@@ -1,240 +0,0 @@
-'\" te
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH HID 7D "June 19, 2021"
-.SH NAME
-hid \- Human interface device (HID) class driver
-.SH SYNOPSIS
-.nf
-\fBkeyboard@unit-address\fR
-\fBmouse@unit-address\fR
-\fBinput@unit-address:consumer_control\fR
-\fB#include <sys/usb/clients/hid/hid.h>\fR
-\fBint ioctl(int fildes, int command, ... /*arg*/);\fR
-.fi
-
-.SH DESCRIPTION
-The \fBhid\fR driver is a USBA (Solaris USB Architecture) compliant client
-driver that supports the \fIHuman Interface Device Class (HID) 1.0\fR
-specification. The Human Interface Device (HID) class encompasses devices
-controlled by humans to operate computer systems. Typical examples of HID
-devices include keyboards, mice, trackballs, and joysticks. HID also covers
-front-panel controls such as knobs, switches, and buttons. A USB device with
-multiple interfaces may have one interface for audio and a HID interface to
-define the buttons that control the audio.
-.sp
-.LP
-The \fBhid\fR driver is general and primarily handles the USB functionality of
-the device and generic HID functionality. For example, HID interfaces are
-required to have an interrupt pipe for the device to send data packets, and the
-\fBhid\fR driver opens the pipe to the interrupt endpoint and starts polling.
-The \fBhid\fR driver is also responsible for managing the device through the
-default control pipe. In addition to being a USB client driver, the \fBhid\fR
-driver is also a STREAMS driver so that modules may be pushed on top of it.
-.sp
-.LP
-The HID specification is flexible, and HID devices dynamically describe their
-packets and other parameters through a HID report descriptor. The HID parser is
-a misc module that parses the HID report descriptor and creates a database of
-information about the device. The \fBhid\fR driver queries the HID parser to
-find out the type and characteristics of the HID device. The HID specification
-predefines packet formats for the boot protocol keyboard and mouse.
-.SH IOCTLS
-.ne 2
-.na
-\fB\fBHIDIOCKMGDIRECT\fR\fR
-.ad
-.RS 19n
-This ioctl should only be addressed to a USB keyboard or mouse device. The
-\fBhid\fR driver maintains two streams for each USB keyboard/mouse instance: an
-internal one for the use of the kernel and an external one for the use of user
-applications. This ioctl returns the information of which stream gets the input
-for the moment.
-.sp
-\fIarg\fR must point to a variable of \fBint\fR type. Upon return, \fB0\fR
-means the internal stream gets the input, \fB1\fR means the external stream
-gets the input.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBHIDIOCKMSDIRECT\fR\fR
-.ad
-.RS 19n
-This ioctl should only be addressed to a USB keyboard or mouse device. The hid
-driver maintains two streams for each USB keyboard/mouse instance: an internal
-one for the use of the kernel and an external one for the use of user
-applications. This ioctl sets which stream should get the input for the moment.
-.sp
-\fIarg\fR must point to a variable of \fBint\fR type. The argument \fB0\fR
-means the internal stream gets the input, \fB1\fR means the external stream
-gets the input.
-.RE
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/hid\fR\fR
-.ad
-.sp .6
-.RS 4n
-64-bit x86 ELF kernel hid module
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/sparcv9/hid\fR\fR
-.ad
-.sp .6
-.RS 4n
-64-bit SPARC ELF kernel hid module
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/misc/amd64/hidparser\fR\fR
-.ad
-.sp .6
-.RS 4n
-64-bit x86 ELF kernel hidparser module
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/misc/sparcv9/hidparser\fR\fR
-.ad
-.sp .6
-.RS 4n
-64-bit SPARC ELF kernel hidparser module
-.RE
-
-.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture SPARC, x86, PCI-based systems
-.TE
-
-.SH SEE ALSO
-\fBcfgadm_usb\fR(1M), \fBattributes\fR(5), \fBusba\fR(7D), \fBvirtualkm\fR(7D)
-.sp
-.LP
-\fIWriting Device Drivers\fR
-.sp
-.LP
-\fISTREAMS Programming Guide\fR
-.sp
-.LP
-\fIUniversal Serial Bus Specification 1.0 and 1.1\fR
-.sp
-.LP
-\fIDevice Class Definition for Human Interface Devices (HID) 1.1\fR
-.sp
-.LP
-\fISystem Administration Guide: Basic Administration\fR
-.SH DIAGNOSTICS
-.ne 2
-.na
-\fBhid_attach: Unsupported HID device.\fR
-.ad
-.sp .6
-.RS 4n
-The device requires a protocol not supported by the hid driver.
-.RE
-
-.sp
-.ne 2
-.na
-\fBParsing of hid descriptor failed.\fR
-.ad
-.sp .6
-.RS 4n
-The HID report descriptor cannot be parsed correctly. The device cannot be
-supported by the hid driver.
-.RE
-
-.sp
-.ne 2
-.na
-\fBInvalid report descriptor.\fR
-.ad
-.sp .6
-.RS 4n
-The HID report descriptor is invalid. The device cannot be supported by the hid
-driver.
-.RE
-
-.sp
-.LP
-The following messages may be logged into the system log. They are formatted in
-the following manner:
-.sp
-.in +2
-.nf
-<device path><hid<instance number>): message...
-.fi
-.in -2
-.sp
-
-.sp
-.ne 2
-.na
-\fBhid_attach: Unsupported HID device.\fR
-.ad
-.sp .6
-.RS 4n
-The device cannot be supported by this version of the HID driver.
-.RE
-
-.sp
-.ne 2
-.na
-\fBParsing of HID descriptor failed.\fR
-.ad
-.sp .6
-.RS 4n
-The device cannot be supported by this version of the HID driver.
-.RE
-
-.sp
-.ne 2
-.na
-\fBInvalid report descriptor.\fR
-.ad
-.sp .6
-.RS 4n
-The device cannot be supported by this version of the HID driver.
-.RE
-
-.SH NOTES
-The hid driver currently supports only keyboard, mouse and audio HID control
-devices.
-.sp
-.LP
-Normally a mouse is not power managed and consequently, screen darkening can be
-undone with a mouse movement. If power management of the mouse is required, add
-the following line to \fBhid.conf\fR then reboot the system:
-.sp
-.in +2
-.nf
-hid-mouse-pm-enable;
-.fi
-.in -2
-
-.sp
-.LP
-Modern mice that are power managed require a 'click' to wake up. Occasionally,
-this may cause unexpected results.
diff --git a/usr/src/man/man7d/hme.7d b/usr/src/man/man7d/hme.7d
deleted file mode 100644
index 79944244a2..0000000000
--- a/usr/src/man/man7d/hme.7d
+++ /dev/null
@@ -1,398 +0,0 @@
-'\" te
-.\" Copyright (c) 1995, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH HME 7D "Sep 5, 1995"
-.SH NAME
-hme \- SUNW,hme Fast-Ethernet device driver
-.SH SYNOPSIS
-.LP
-.nf
-\fB/dev/hme\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBSUNW,hme\fR Fast-Ethernet driver is a multi-threaded, loadable,
-clonable, STREAMS hardware driver supporting the connectionless Data Link
-Provider Interface, \fBdlpi\fR(7P), over a \fBSUNW,hme\fR Fast-Ethernet
-controller. The motherboard and add-in SBus \fBSUNW,hme\fR controllers of
-several varieties are supported. Multiple \fBSUNW,hme\fR controllers installed
-within the system are supported by the driver.
-.sp
-.LP
-The \fBhme\fR driver provides basic support for the \fBSUNW,hme\fR hardware. It
-is used to handle the \fBSUNW,hme\fR device. Functions include chip
-initialization, frame transit and receive, multicast and promiscuous support,
-and error recovery and reporting. \fBSUNW,hme\fR The \fBSUNW,hme\fR device
-provides 100Base-TX networking interfaces using SUN's \fBFEPS ASIC\fR and an
-Internal Transceiver. The FEPS ASIC provides the Sbus interface and MAC
-functions and the Physical layer functions are provided by the Internal
-Transceiver which connects to a \fBRJ-45\fR connector. In addition to the RJ-45
-connector, an \fBMII\fR (Media Independent Interface) connector is also
-provided on all \fBSUNW,hme\fR devices except the \fBSunSwith SBus adapter\fR
-board. The MII interface is used to connect to an External Transceiver which
-may use any physical media (copper or fiber) specified in the 100Base-TX
-standard. When an External Transceiver is connected to the MII, the driver
-selects the External Transceiver and disables the Internal Transceiver.
-.sp
-.LP
-The 100Base-TX standard specifies an "auto-negotiation" protocol to
-automatically select the mode and speed of operation. The Internal transceiver
-is capable of doing "auto-negotiation" with the remote-end of the link (Link
-Partner) and receives the capabilities of the remote end. It selects the
-\fBHighest Common Denominator\fR mode of operation based on the priorities. It
-also supports \fBforced-mode\fR of operation where the driver can select the
-mode of operation.
-.SH APPLICATION PROGRAMMING INTERFACE
-.sp
-.LP
-The cloning character-special device \fB/dev/hme\fR is used to access all
-\fBSUNW,hme\fR controllers installed within the system.
-.SS "hme and DLPI"
-.sp
-.LP
-The \fBhme\fR driver is a "style 2" Data Link Service provider. All
-\fBM_PROTO\fR and \fBM_PCPROTO\fR type messages are interpreted as \fBDLPI\fR
-primitives. Valid \fBDLPI\fR primitives are defined in \fB<sys/dlpi.h>.\fR
-Refer to \fBdlpi\fR(7P) for more information. An explicit \fBDL_ATTACH_REQ\fR
-message by the user is required to associate the opened stream with a
-particular device (\fBppa\fR). The \fBppa\fR ID is interpreted as an
-\fBunsigned long\fR data type and indicates the corresponding device instance
-(unit) number. An error (\fBDL_ERROR_ACK\fR) is returned by the driver if the
-\fBppa\fR field value does not correspond to a valid device instance number for
-this system. The device is initialized on first attach and de-initialized
-(stopped) at last detach.
-.sp
-.LP
-The values returned by the driver in the \fBDL_INFO_ACK\fR primitive in
-response to the \fBDL_INFO_REQ\fR from the user are as follows:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The maximum \fBSDU\fR is \fB1500\fR (\fBETHERMTU\fR - defined in
-<sys/ethernet.h> ).
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The minimum \fBSDU\fR is \fB0\fR.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The \fBdlsap\fR address length is \fB8.\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The \fBMAC\fR type is \fBDL_ETHER.\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The \fBsap\fR length values is \fB\(mi2\fR meaning the physical address
-component is followed immediately by a 2 byte \fBsap\fR component within the
-\fBDLSAP\fR address.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The service mode is \fBDL_CLDLS.\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-No optional quality of service (QOS) support is included at present so the
-\fBQOS\fR fields are \fB0\fR.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The provider style is \fBDL_STYLE2.\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The version is \fBDL_VERSION_2.\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The broadcast address value is Ethernet/IEEE broadcast address
-(\fB0xFFFFFF\fR).
-.RE
-.sp
-.LP
-Once in the \fBDL_ATTACHED\fR state, the user must send a \fBDL_BIND_REQ\fR to
-associate a particular \fBSAP\fR (Service Access Pointer) with the stream. The
-\fBhme\fR driver interprets the \fBsap\fR field within the \fBDL_BIND_REQ\fR as
-an Ethernet "type" therefore valid values for the \fBsap\fR field are in the
-[\fB0\fR-\fB0xFFFF\fR] range. Only one Ethernet type can be bound to the
-stream at any time.
-.sp
-.LP
-If the user selects a \fBsap\fR with a value of \fB0\fR, the receiver will be
-in "802.3 mode". All frames received from the media having a "type" field in
-the range [\fB0\fR-\fB1500\fR] are assumed to be 802.3 frames and are routed up
-all open Streams which are bound to \fBsap\fR value \fB0\fR. If more than one
-Stream is in "802.3 mode" then the frame will be duplicated and routed up
-multiple Streams as \fBDL_UNITDATA_IND\fR messages.
-.sp
-.LP
-In transmission, the driver checks the \fBsap\fR field of the \fBDL_BIND_REQ\fR
-if the \fBsap\fR value is \fB0\fR, and if the destination type field is in the
-range [\fB0\fR-\fB1500\fR]. If either is true, the driver computes the length
-of the message, not including initial \fBM_PROTO\fR mblk (message block), of
-all subsequent \fBDL_UNITDATA_REQ\fR messages and transmits 802.3 frames that
-have this value in the MAC frame header length field.
-.sp
-.LP
-The \fBhme\fR driver \fBDLSAP\fR address format consists of the 6 byte physical
-(Ethernet) address component followed immediately by the 2 byte \fBsap\fR
-(type) component producing an 8 byte \fBDLSAP\fR address. Applications should
-\fInot\fR hardcode to this particular implementation-specific \fBDLSAP\fR
-address format but use information returned in the \fBDL_INFO_ACK\fR primitive
-to compose and decompose \fBDLSAP\fR addresses. The \fBsap\fR length, full
-\fBDLSAP\fR length, and \fBsap\fR/physical ordering are included within the
-\fBDL_INFO_ACK.\fR The physical address length can be computed by subtracting
-the \fBsap\fR length from the full \fBDLSAP\fR address length or by issuing the
-\fBDL_PHYS_ADDR_REQ\fR to obtain the current physical address associated with
-the stream.
-.sp
-.LP
-Once in the \fBDL_BOUND\fR state, the user may transmit frames on the Ethernet
-by sending \fBDL_UNITDATA_REQ\fR messages to the \fBhme\fR driver. The
-\fBhme\fR driver will route received Ethernet frames up all those open and
-bound streams having a \fBsap\fR which matches the Ethernet type as
-\fBDL_UNITDATA_IND\fR messages. Received Ethernet frames are duplicated and
-routed up multiple open streams if necessary. The \fBDLSAP\fR address contained
-within the \fBDL_UNITDATA_REQ\fR and \fBDL_UNITDATA_IND\fR messages consists of
-both the \fBsap\fR (type) and physical (Ethernet) components.
-.sp
-.LP
-In addition to the mandatory connectionless \fBDLPI\fR message set the driver
-additionally supports the following primitives.
-.SS "hme Primitives"
-.sp
-.LP
-The \fBDL_ENABMULTI_REQ\fR and \fBDL_DISABMULTI_REQ\fR primitives
-enable/disable reception of individual multicast group addresses. A set of
-multicast addresses may be iteratively created and modified on a per-stream
-basis using these primitives. These primitives are accepted by the driver in
-any state following \fBDL_ATTACHED.\fR
-.sp
-.LP
-The \fBDL_PROMISCON_REQ\fR and \fBDL_PROMISCOFF_REQ\fR primitives with the
-\fBDL_PROMISC_PHYS\fR flag set in the \fBdl_level\fR field enables/disables
-reception of all ("promiscuous mode") frames on the media including frames
-generated by the local host. When used with the \fBDL_PROMISC_SAP\fR flag set
-this enables/disables reception of all \fBsap\fR (Ethernet type) values. When
-used with the \fBDL_PROMISC_MULTI\fR flag set this enables/disables reception
-of all multicast group addresses. The effect of each is always on a per-stream
-basis and independent of the other \fBsap\fR and physical level configurations
-on this stream or other streams.
-.sp
-.LP
-The \fBDL_PHYS_ADDR_REQ\fR primitive returns the 6 octet Ethernet address
-currently associated (attached) to the stream in the \fBDL_PHYS_ADDR_ACK\fR
-primitive. This primitive is valid only in states following a successful
-\fBDL_ATTACH_REQ.\fR
-.sp
-.LP
-The \fBDL_SET_PHYS_ADDR_REQ\fR primitive changes the 6 octet Ethernet address
-currently associated (attached) to this stream. The credentials of the process
-which originally opened this stream must be superuser. Otherwise \fBEPERM\fR
-is returned in the \fBDL_ERROR_ACK.\fR This primitive is destructive in that it
-affects all other current and future streams attached to this device. An
-\fBM_ERROR\fR is sent up all other streams attached to this device when this
-primitive is successful on this stream. Once changed, all streams subsequently
-opened and attached to this device will obtain this new physical address. Once
-changed, the physical address will remain until this primitive is used to
-change the physical address again or the system is rebooted, whichever comes
-first.
-.SS "hme DRIVER"
-.sp
-.LP
-By default, the hme driver performs "auto-negotiation" to select the
-\fBmode\fR and \fBspeed\fR of the link, when the Internal Transceiver is used.
-.sp
-.LP
-When an External Transceiver is connected to the \fBMII\fR interface, the
-driver selects the External Transceiver for networking operations. If the
-External Transceiver supports "auto-negotiation", the driver uses the
-auto-negotiation procedure to select the link speed and mode. If the External
-Transceiver does not support auto-negotiation, it will select the highest
-priority mode supported by the transceiver.
-.RS +4
-.TP
-.ie t \(bu
-.el o
-100 Mbps, full-duplex
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-100 Mbps, half-duplex
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-10 Mbps, full-duplex
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-10 Mbps, half-duplex
-.RE
-.sp
-.LP
-The link can be in one of the \fI4\fR following modes:
-.sp
-.LP
-These speeds and modes are described in the 100Base-TX standard.
-.sp
-.LP
-The \fIauto\(minegotiation\fR protocol automatically selects:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Operation mode (half-duplex or full-duplex)
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Speed (100 Mbps or 10 Mbps)
-.RE
-.sp
-.LP
-The auto\(minegotiation protocol does the following:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Gets all the modes of operation supported by the Link Partner
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Advertises its capabilities to the Link Partner
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Selects the highest common denominator mode of operation based on the
-priorities
-.RE
-.sp
-.LP
-The \fIinternal\fR \fItransceiver\fR is capable of all of the operating speeds
-and modes listed above. When the internal transceiver is used, by
-\fIdefault\fR, auto-negotiation is used to select the speed and the mode of the
-link and the common mode of operation with the Link Partner.
-.sp
-.LP
-When an \fIexternal\fR \fItransceiver\fR is connected to the \fBMII\fR
-interface, the driver selects the external transceiver for networking
-operations. If the external transceiver supports auto-negotiation:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The driver uses the auto-negotiation procedure to select the link speed and
-mode.
-.RE
-.sp
-.LP
-If the external transceiver \fIdoes\fR \fInot\fR support auto-negotiation
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The driver selects the highest priority mode supported by the transceiver.
-.RE
-.sp
-.LP
-Sometimes, the user may want to select the speed and mode of the link. The
-\fBSUNW,hme\fR device supports programmable \fB"IPG"\fR (Inter-Packet Gap)
-parameters \fBipg1\fR and \fBipg2\fR. By default, the driver sets \fBipg1\fR
-to 8 \fBbyte-times\fR and \fBipg2\fR to 4 \fBbyte-times\fR (which are the
-standard values). Sometimes, the user may want to alter these values depending
-on whether the driver supports 10 Mbps or 100 Mbps and accordingly, \fBIPG\fR
-will be set to 9.6 or 0.96 microseconds.
-.SS "hme Parameter List"
-.sp
-.LP
-The hme driver provides for setting and getting various parameters for the
-\fBSUNW,hme\fR device. The parameter list includes:
-.br
-.in +2
-\fBcurrent transceiver status\fR
-.in -2
-.br
-.in +2
-\fBcurrent link status\fR
-.in -2
-.br
-.in +2
-\fBinter-packet gap\fR
-.in -2
-.br
-.in +2
-\fBlocal transceiver capabilities\fR
-.in -2
-.br
-.in +2
-\fBlink partner capabilities\fR
-.in -2
-.sp
-.LP
-The local transceiver has two set of capabilities: one set reflects the
-capabilities of the \fBhardware\fR, which are \fBread-only\fR \fB(RO)\fR
-parameters and the second set reflects the values chosen by the user and is
-used in \fBspeed selection\fR. There are \fBread/write\fR \fB(RW)\fR
-capabilities. At boot time, these two sets of capabilities will be the same.
-The Link Partner capabilities are also read only parameters because the current
-default value of these parameters can only be read and cannot be modified.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/dev/hme\fR\fR
-.ad
-.RS 24n
-\fBhme\fR special character device
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/hme.conf\fR\fR
-.ad
-.RS 24n
-System-wide default device driver properties
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBndd\fR(1M), \fBnetstat\fR(1M), \fBdriver.conf\fR(4), \fBdlpi\fR(7P)
diff --git a/usr/src/man/man7d/hubd.7d b/usr/src/man/man7d/hubd.7d
deleted file mode 100644
index 881272cadb..0000000000
--- a/usr/src/man/man7d/hubd.7d
+++ /dev/null
@@ -1,314 +0,0 @@
-'\" te
-.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH HUBD 7D "May 13, 2017"
-.SH NAME
-hubd \- USB hub driver
-.SH SYNOPSIS
-.LP
-.nf
-\fBhub@unit-address\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBhubd\fR is a USBA (illumos USB Architecture) compliant client driver
-that supports USB hubs conforming to the \fIUniversal Serial Bus Specification
-3.0\fR. The \fBhubd\fR driver supports bus-powered and self-powered hubs. The
-driver supports hubs with individual port power, ganged power and no power
-switching.
-.sp
-.LP
-When a device is attached to a hub port, the \fBhubd\fR driver enumerates the
-device by determining its type and assigning an address to it. For
-multi-configuration devices, \fBhubd\fR sets the preferred configuration (refer
-to \fBcfgadm_usb\fR(1M) to select a configuration). The \fBhubd\fR driver
-attaches a driver to the device if one is available for the default or selected
-configuration. When the device is disconnected from the hub port, the
-\fBhubd\fR driver offlines any driver instance attached to the device.
-.SH FILES
-.ne 2
-.na
-\fB\fB/kernel/drv/hubd\fR\fR
-.ad
-.RS 28n
-32- bit x86 ELF kernel module
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/hubd\fR\fR
-.ad
-.RS 28n
-64- bit x86 ELF kernel module
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/sparcv9/hubd\fR\fR
-.ad
-.RS 28n
-64-bit SPARC ELF kernel module
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for a description of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture SPARC, x86, PCI-based systems
-.TE
-
-.SH SEE ALSO
-.LP
-\fBcfgadm_usb\fR(1M), \fBattributes\fR(5), \fBusba\fR(7D)
-.sp
-.LP
-\fIWriting Device Drivers\fR
-.sp
-.LP
-\fIUniversal Serial Bus Specification 2.0\fR
-.sp
-.LP
-\fISystem Administration Guide: Basic Administration\fR
-.SH DIAGNOSTICS
-.LP
-In addition to being logged, the following messages may also appear on the
-system console. Messages are formatted in the following manner:
-.sp
-.in +2
-.nf
-WARNING: <device path> <hubd<instance number>): Message...
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-where \fB<instance number>\fR is the instance number of \fBhubd\fR and
-\fB<device path>\fR is the physical path to the device in \fB/devices\fR
-directory. Messages from the root hub are displayed with a \fBusb<instance
-number>\fR prefix instead of \fBhub<instance number>\fR as the root hub is an
-integrated part of the host controller.
-.sp
-.ne 2
-.na
-\fBConnecting device on port \fI<number>\fR failed.\fR
-.ad
-.sp .6
-.RS 4n
-The driver failed to enumerate the device connected on port \fI<number>\fR of
-hub. If enumeration fails, disconnect and re-connect.
-.RE
-
-.sp
-.ne 2
-.na
-\fBUse of a USB 1.0 hub behind a high speed port may cause unexpected
-failures.\fR
-.ad
-.sp .6
-.RS 4n
-Devices connected to a USB 1.0 hub which are in turn connected to an external
-USB 2.0 hub, may misbehave unexpectedly or suddenly go offline. This is due to
-a documented incompatibility between USB 1.0 hubs and USB 2.0 hub Transaction
-Translators. Please use only USB 2.0 or USB 1.1 hubs behind high-speed ports.
-.RE
-
-.sp
-.ne 2
-.na
-\fBConnecting a high speed device to a non-high speed hub (port x) will result
-in a loss of performance. Please connect the device to a high speed port to get
-the maximum performance.\fR
-.ad
-.sp .6
-.RS 4n
-USB 2.0 devices connected to USB 1.0 or 1.1 hubs cannot run at their highest
-speed, even when the hub is in turn connected to a high-speed port. For best
-performance, reconnect without going through a USB 1.0 or 1.1 hub.
-.RE
-
-.sp
-.ne 2
-.na
-\fBCannot access <device>. Please reconnect.\fR
-.ad
-.sp .6
-.RS 4n
-This hub has been disconnected because a device other than the original one has
-been inserted. The driver informs you of this fact by displaying the name of
-the original device.
-.RE
-
-.sp
-.ne 2
-.na
-\fBPort <n> overcurrent. \fR
-.ad
-.sp .6
-.RS 4n
-An overcurrent condition was detected. Please remove the device on this port.
-.RE
-
-.sp
-.ne 2
-.na
-\fBDevices not identical to the previous one on this port. Please disconnect
-and reconnect.\fR
-.ad
-.sp .6
-.RS 4n
-Same condition as described above; however in this case, the driver is unable
-to identify the original device with a name string.
-.RE
-
-.sp
-.ne 2
-.na
-\fBHub driver supports max of \fI<n>\fR ports on hub. Hence, using the first
-\fI<number of physical ports>\fR of \fI<n>\fR ports available.\fR
-.ad
-.sp .6
-.RS 4n
-The current hub driver supports hubs that have \fI<n>\fR ports or less. A hub
-with more than \fI<n>\fR ports has been plugged in. Only the first \fI<n>\fR
-out of the total \fI<number of physical ports>\fR ports are usable.
-.RE
-
-.sp
-.ne 2
-.na
-\fBHub global over current condition, please disconnect the devices connected
-to the hub to clear the condition. You may need to re-connect the hub if the
-ports do not work.\fR
-.ad
-.sp .6
-.RS 4n
-An overcurrent condition was detected on the hub. This means that the
-aggregate current being drawn by the devices on the downstream ports exceeds a
-preset value. Refer to section 7.2.1.2 and 11.13 of the \fIUniversal Serial Bus
-Specification 2.0\fR. If this message continues to display, you may need to
-remove downstream devices to eliminate the problem. If any port does not work
-after the overcurrent condition is cleared, re-connect the hub to re-enable the
-ports.
-.RE
-
-.sp
-.ne 2
-.na
-\fBRoot hub over current condition, please check your system to clear the
-condition as soon as possible. You may need to reboot the system if the root
-hub does not recover automatically.\fR
-.ad
-.sp .6
-.RS 4n
-An overcurrent condition was detected on the root hub, indicating that
-malfunctioning devices on the downstream ports are drawing too much current.
-Please disconnect the problematic downstream devices to eliminate the problem.
-If the root hub doesn't work after the overcurrent condition is cleared, you
-may need to reboot the system.
-.RE
-
-.sp
-.LP
-The following messages may be logged into the system log. They are formatted in
-the following manner:
-.sp
-.in +2
-.nf
-<device path><hubd<instance number>): message...
-.fi
-.in -2
-.sp
-
-.sp
-.ne 2
-.na
-\fBLocal power has been lost, please disconnect hub.\fR
-.ad
-.sp .6
-.RS 4n
-A USB self-powered hub has lost external power. All USB devices connected
-down-stream from this hub will cease to function. Disconnect the hub, plug in
-the external power-supply and then plug in the hub again.
-.RE
-
-.sp
-.ne 2
-.na
-\fBLocal power has been lost, the hub could draw <x> mA power from the USB
-bus.\fR
-.ad
-.sp .6
-.RS 4n
-A USB self/bus-powered hub has lost external power. Some USB devices connected
-down-stream from this hub may cease to function. Disconnect the
-external power-supply and then plug in the hub again.
-.RE
-
-.sp
-.ne 2
-.na
-\fBTwo bus-powered hubs cannot be concatenated.\fR
-.ad
-.sp .6
-.RS 4n
-A bus-powered hub was connected to a bus powered hub port. Please remove this
-bus-powered hub and connect it to a self-powered hub or a root hub port.
-.RE
-
-.sp
-.ne 2
-.na
-\fBConfiguration <n> for device <device> at port <m> exceeds power available
-for this port. Please re-insert your device into another hub port which has
-enough power.\fR
-.ad
-.sp .6
-.RS 4n
-The device requires more power than is available on this port.
-.RE
-
-.sp
-.ne 2
-.na
-\fBPort <\fIn\fR\fB> in over current condition, please check the attached device
-to clear the condition. The system will try to recover the port, but if not
-successful, you need to re-connect the hub or reboot the system to bring the
-port back to work.\fR
-.ad
-.sp .6
-.RS 4n
-An overcurrent condition was detected on port <\fIn\fR>. This means the device
-connected to the port is drawing more current than the hub can supply. If this
-message continues to display, please disconnect the device to eliminate the
-problem. If the port doesn't work after the overcurrent condition is cleared,
-please re-connect the hub or reboot the system to enable the port again.
-.RE
-
-.sp
-.ne 2
-.na
-\fBUnable to attach USB 3.x hub <vendor> <device>. A maximum of 5 hubs
-may be cascaded.\fR
-.ad
-.sp .6
-.RS 4n
-USB 3.0 has an upper bound on the number of hubs that may be chained
-together. If this limit is exceeded, a hub may not be detected or
-attached. The hub will be functional if plugged into a different part of
-the USB topology. To determine the depth of the hub, count the number of
-devices between it and the host controller.
-.RE
diff --git a/usr/src/man/man7d/hxge.7d b/usr/src/man/man7d/hxge.7d
deleted file mode 100644
index 2574c00391..0000000000
--- a/usr/src/man/man7d/hxge.7d
+++ /dev/null
@@ -1,201 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH HXGE 7D "June 20, 2021"
-.SH NAME
-hxge \- Sun Blade 10 Gigabit Ethernet network driver
-.SH SYNOPSIS
-.nf
-/dev/hxge*
-.fi
-
-.SH DESCRIPTION
-The \fBhxge\fR Gigabit Ethernet driver is a multi-threaded, loadable, clonable,
-GLD-based STREAMS driver supporting the Data Link Provider Interface,
-\fBdlpi\fR(7P), on the Sun Blade Shared 10Gb Ethernet Interface.
-.sp
-.LP
-The Shared PCI-Express 10 Gb networking interface provides network I/O
-consolidation for up to six Constellation blades, with each blade seeing its
-own portion of the network interface.
-.sp
-.LP
-The \fBhxge\fR driver functions include chip initialization, frame transmit and
-receive, flow classification, multicast and promiscuous support and error
-recovery and reporting in the blade domain.
-.SH APPLICATION PROGRAMMING INTERFACE
-The cloning character-special device, \fB/dev/hxge\fR, is used to access Sun
-Blade Shared 10Gb Ethernet Interface devices installed within the system.
-.sp
-.LP
-The \fBhxge\fR driver is managed by the \fBdladm\fR(1M) command line utility,
-which allows VLANs to be defined on top of \fBhxge\fR instances and for
-\fBhxge\fR instances to be aggregated. See \fBdladm\fR(1M) for more details.
-.sp
-.LP
-You must send an explicit DL_ATTACH_REQ message to associate the opened stream
-with a particular device (PPA). The PPA ID is interpreted as an unsigned
-integer data type and indicates the corresponding device instance (unit)
-number. The driver returns an error (DL_ERROR_ACK) if the PPA field value does
-not correspond to a valid device instance number for the system. The device is
-initialized on first attach and de-initialized (stopped) at last detach
-.sp
-.LP
-The values returned by the driver in the DL_INFO_ACK primitive in response to a
-DL_INFO_REQ are:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Maximum SDU is 1500 (ETHERMTU - defined in <\fBsys/ethernet.h\fR>).
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Minimum SDU is 0.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-DLSAP address length is 8.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-MAC type is \fBDL_ETHER\fR.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBSAP\fR length value is \fI-2\fR, meaning the physical address component is
-followed immediately by a 2-byte \fBSAP\fR component within the \fBDLSAP\fR
-address.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Broadcast address value is the Ethernet/IEEE broadcast address
-(FF:FF:FF:FF:FF:FF).
-.sp
-Due to the nature of the link address definition for IPoIB, the
-DL_SET_PHYS_ADDR_REQ DLPI primitive is not supported.
-.sp
-In the transmit case for streams that have been put in raw mode via the
-DLIOCRAW ioctl, the \fBdlpi\fR application must prepend the 20 byte IPoIB
-destination address to the data it wants to transmit over-the-wire. In the
-receive case, applications receive the IP/ARP datagram along with the IETF
-defined 4 byte header.
-.RE
-.sp
-.LP
-Once in the DL_ATTACHED state, you must send a DL_BIND_REQ to associate a
-particular Service Access Point (SAP) with the stream.
-.SH CONFIGURATION
-The link speed and mode are fixed at 10 Gbps full-duplex.
-.sp
-.LP
-The default MTU is 1500. To enable jumbo frame support, you configure the
-\fBhxge\fR driver by defining the accept-jumbo property to 1 in the
-\fBhxge.conf\fR file. Note that the largest jumbo size is 9178 bytes.
-.sp
-.LP
-The driver may be configured to discard certain classes of traffic. By default,
-no class of traffic is allowed. You configure the \fBhxge\fR driver by defining
-the class option property to 0x20000 in \fBhxge.conf\fR to discard the
-specified class of traffic. For example, the following line in \fBhxge.conf\fR
-discards all IP Version 4 TCP traffic:
-.sp
-.in +2
-.nf
-class-opt-ipv4-tcp = 0x20000;
-.fi
-.in -2
-
-.sp
-.LP
-You can also use the \fBndd\fR(1M) command to configure the \fBhxge\fR driver
-at runtime to discard any classes of traffic.
-.sp
-.LP
-The \fBhxge\fR driver supports self-healing functionality, see \fBfmd\fR(1M). By
-default it is configured to DDI_FM_EREPORT_CAPABLE | DDI_FM_ERRCB_CAPABLE.
-You configure the \fBhxge\fR driver by defining the fm-capable property in
-\fBhxge.conf\fR to other capabilities or to 0x0 to disable it entirely.
-.sp
-.LP
-The \fBhxge\fR driver may be configured using the standard \fBifconfig\fR(1M)
-command.
-.sp
-.LP
-The \fBhxge\fR driver also reports various hardware and software statistics
-data. You can view these statistics using the \fBkstat\fR(1M) command.
-.SH FILES
-.ne 2
-.na
-\fB\fB/dev/hxge*\fR\fR
-.ad
-.RS 28n
-Special character device.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/sparcv9/hxge\fR\fR
-.ad
-.RS 28n
-64-bit device driver (SPARC).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/hxge\fR\fR
-.ad
-.RS 28n
-64-bit device driver (x86).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/hxge.conf\fR\fR
-.ad
-.RS 28n
-Configuration file.
-.RE
-
-.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture SPARC, x86
-.TE
-
-.SH SEE ALSO
-\fBdladm\fR(1M), \fBfmd\fR(1M), \fBifconfig\fR(1M), \fBkstat\fR(1M),
-\fBndd\fR(1M), \fBnetstat\fR(1M), \fBdriver.conf\fR(4), \fBattributes\fR(5),
-\fBstreamio\fR(7I), \fBdlpi\fR(7P)
-.sp
-.LP
-\fIWriting Device Drivers\fR
-.sp
-.LP
-\fISTREAMS Programming Guide\fR
-.sp
-.LP
-\fINetwork Interfaces Programmer's Guide\fR
diff --git a/usr/src/man/man7d/i40e.7d b/usr/src/man/man7d/i40e.7d
deleted file mode 100644
index 2bb840c2d7..0000000000
--- a/usr/src/man/man7d/i40e.7d
+++ /dev/null
@@ -1,335 +0,0 @@
-.\"
-.\" This file and its contents are supplied under the terms of the
-.\" Common Development and Distribution License ("CDDL"), version 1.0.
-.\" You may only use this file in accordance with the terms of version
-.\" 1.0 of the CDDL.
-.\"
-.\" A full copy of the text of the CDDL should have accompanied this
-.\" source. A copy of the CDDL is also available via the Internet at
-.\" http://www.illumos.org/license/CDDL.
-.\"
-.\"
-.\" Copyright (c) 2018 Joyent, Inc.
-.\" Copyright 2020 Ryan Zezeski
-.\" Copyright 2021 Oxide Computer Company
-.\"
-.Dd January 18, 2021
-.Dt I40E 7D
-.Os
-.Sh NAME
-.Nm i40e
-.Nd Intel 710/722 Ethernet Device Driver
-.Sh SYNOPSIS
-.Pa /dev/net/i40e*
-.Sh DESCRIPTION
-The
-.Nm
-driver is a GLDv3, multi-threaded, clonable, loadable device driver that
-supports the Data Link Provider Interface,
-.Xr dlpi 7P .
-The
-.Nm
-driver supports the Intel 710 and 722 Ethernet Controller families of
-networking interface cards which support speeds of 1 GbE, 2.5 GbE, 5 GbE, 10
-GbE, 25 GbE, and 40 GbE.
-.Pp
-In addition to basic device initialization and the sending and receiving
-of frames, it supports the following features:
-.Bl -dash -offset indent
-.It
-Jumbo frames up to 9710 bytes.
-.It
-Promiscuous access via
-.Xr snoop 1M and
-.Xr dlpi 7P
-.It
-IPv4 Checksum Offload
-.It
-TCP, UDP, and SCTP checksum offload
-.It
-IPv4 and IPv6 TCP Segmentation offload
-.El
-.Pp
-At this time, the
-.Nm
-driver does not enable the use of energy efficient Ethernet (EEE) or
-support the use of flow control through hardware pause frames.
-.Sh APPLICATION PROGRAMMING INTERFACE
-For each device supported by the
-.Nm
-installed in the system, a character-special file will be created.
-This file supports the Data Link Provider Interface (DLPI) which is documented
-in
-.Xr dlpi 7P .
-For most consumers, the use of
-.Xr libdlpi 3LIB ,
-is recommended.
-.Pp
-Each instance is assigned a unique ascending integer identifier.
-A device which has multiple ports may appear to the system as separate
-instances.
-The system does not provide a guarantee on how these will be presented.
-Using this instance identifier, one can determine the exact character-special
-file to open.
-For example, the first instance enumerated in the system, with id 0, would be
-named
-.Sy i40e0 .
-It exists in the file system at
-.Pa /dev/net/i40e0 .
-.Sh CONFIGURATION
-The
-.Nm i40e
-driver always performs auto-negotiation and depending on the model may
-negotiate to 40 Gbps, 25 Gbps, 10 Gbps, or 1 Gbps.
-At this time, the driver requires the use of auto-negotiation.
-.Pp
-The
-.Nm
-driver is managed by the
-.Xr dladm 1M
-utility.
-.Xr dladm 1M
-is the preferred interface for setting all properties.
-While
-.Xr driver.conf 4
-based configuration is possible,
-.Xr dladm 1M
-is recommended.
-The
-.Nm
-driver may be joined into an aggregation based on the link aggregation
-control protocol (LACP) through
-.Xr dladm 1M .
-.Sh PROPERTIES
-The device supports the following properties which may be tuned through
-its driver.conf file,
-.Pa /kernel/drv/i40e.conf .
-Most of these properties cannot be changed after the device has been started.
-The device is started in response to a DLPI consumer opening the device and
-binding to it.
-This happens when an IP interfaces is plumbed or another
-.Xr dlpi 7P
-consumer such as
-.Xr snoop 1M
-or an LLDP daemon is started.
-.Pp
-Some properties may be tuned at runtime with the
-.Xr dladm 1M
-utility.
-Properties that can be will have the name of the dladm property called out
-explicitly.
-.Pp
-These properties are not considered stable at this time.
-They may change and should not be relied on.
-They are considered
-.Sy Volatile .
-It is not expected that administrators of the system will have to tune
-these values.
-.Bl -hang -width Ds
-.It Sy default_mtu
-.Bd -filled -compact
-Minimum:
-.Sy 1500 |
-Maximum:
-.Sy 9710 |
-Runtime Property:
-.Sy mtu
-.Ed
-.Bd -filled
-The
-.Sy default_mtu
-property determines the starting MTU of the various device instances.
-Note that the device's MTU also determines the upper bound of the MTU of
-all VNICs created over the device.
-The default MTU is
-.Sy 1500 .
-.Ed
-.It Sy mr_enable
-.Bd -filled -compact
-Minimum:
-.Sy 0 |
-Maximum:
-.Sy 1
-.Ed
-.Bd -filled
-The
-.Sy mr_enable
-property determines whether or not support for multiple rings is enabled
-for the device.
-The default is always to enable them.
-It is not recommended to to disable them.
-.Ed
-.It Sy rx_num_groups
-.Bd -filled -compact
-Minimum:
-.Sy 1 |
-Maximum:
-.Sy 32
-.Ed
-.Bd -filled
-The
-.Sy rx_num_groups
-property determines the number of receive mac groups provided by the driver.
-Each group can handle all unicast traffic for a single MAC address, more groups
-means more unicast traffic that can be steered by hardware.
-However, more groups also means more demand for kernel memory.
-If you are not making heavy use of VNICs, or do not need the efficiency gains
-of hardware steering, then reducing this number can reduce kernel memory
-taken by
-.Nm i40e.
-.Ed
-.It Sy rx_ring_size
-.Bd -filled -compact
-Minimum:
-.Sy 64 |
-Maximum:
-.Sy 4096
-.Ed
-.Bd -filled
-The
-.Sy rx_ring_size
-property determines the number of descriptors that will be used in each
-receive ring on the card.
-Administrators should not normally need to tune this value.
-Hardware requires that the ring size be a multiple of 32.
-The system will round up the set value to the nearest multiple of 32.
-.Ed
-.It Sy tx_ring_size
-.Bd -filled -compact
-Minimum:
-.Sy 64 |
-Maximum:
-.Sy 4096
-.Ed
-.Bd -filled
-The
-.Sy tx_ring_size
-property determines the number of descriptors that will be used in each
-transmit ring on the card.
-Administrators should not normally need to tune this value.
-Hardware requires that the ring size be a multiple of 32.
-The system will round up the set value to the nearest multiple of 32.
-.Ed
-.It Sy tx_resched_threshold
-.Bd -filled -compact
-Minimum:
-.Sy 8 |
-Maximum:
-.Sy Variable
-.Ed
-.Bd -filled
-The
-.Sy tx_resched_threshold
-property determines the number of descriptors that must be available for
-a frame to be transmitted.
-The maximum is variable.
-It is dependent on the value of the
-.Sy tx_ring_size
-property.
-At least eight descriptors must be available for the device to function
-correctly.
-.Ed
-.It Sy rx_limit_per_intr
-.Bd -filled -compact
-Minimum:
-.Sy 16 |
-Maximum:
-.Sy 4096
-.Ed
-.Bd -filled
-The
-.Sy rx_limit_per_intr
-property determines the maximum number of packets that will be processed
-on a given ring during a single interrupt.
-This is done to try and guarantee some amount of liveness in the system.
-It is not expected that administrators will have to tune this value.
-.Ed
-.It Sy tx_hcksum_enable
-.Bd -filled -compact
-Minimum:
-.Sy 0 |
-Maximum:
-.Sy 1
-.Ed
-.Bd -filled
-The
-.Sy tx_hcksum_enable
-property controls whether or not the device enables support for hardware
-checksumming of outgoing packets.
-The default is to always enable support for this.
-Turning it off will increase latency and decrease throughput when transmitting
-packets, but should be done if a hardware bug is suspected.
-.Ed
-.It Sy rx_hcksum_enable
-.Bd -filled -compact
-Minimum:
-.Sy 0 |
-Maximum:
-.Sy 1
-.Ed
-.Bd -filled
-The
-.Sy rx_hcksum_enable
-property controls whether or not the device enables support for hardware
-checksumming of incoming packets.
-The default is to always enable support for this.
-Turning it off will increase latency and decrease throughput when receiving
-packets, but should be done if a hardware bug is suspected.
-.Ed
-.It Sy rx_dma_threshold
-.Bd -filled -compact
-Minimum:
-.Sy 0 |
-Maximum:
-.Sy INT32_MAX |
-Runtime Property:
-.Sy _rx_dma_threshold
-.Ed
-.Bd -filled
-The
-.Sy rx_dma_threshold
-indicates the size in bytes of a received frame, including all of its
-headers, at which the driver should not copy the frame but instead bind
-DMA memory.
-By setting this property to its minimum, all frames will be processed with DMA
-binding.
-By setting this property to its maximum, all frames will be processed by copying
-the frame.
-.Ed
-.It Sy tx_lso_enable
-.Bd -filled -compact
-Minimum:
-.Sy 0 |
-Maximum:
-.Sy 1
-.Ed
-.Bd -filled
-The
-.Sy tx_lso_enable
-property controls whether or not the device enables support for Large Segment
-Offloand (LSO) when transmitting packets.
-The default is to always enable support for this.
-Turning it off will decrease throughput when transmitting packets, but should
-be done if a hardware bug is suspected.
-.Ed
-.El
-.Sh ARCHITECTURE
-The
-.Nm
-driver is only supported on
-.Sy x86
-systems at this time.
-.Sh FILES
-.Bl -tag -width Pa
-.It Pa /dev/net/i40e*
-Per-instance character device.
-.It Pa /kernel/drv/amd64/i40e
-Device driver (x86)
-.It Pa /kernel/drv/i40e.conf
-Driver configuration file
-.El
-.Sh SEE ALSO
-.Xr dladm 1M ,
-.Xr snoop 1M ,
-.Xr driver.conf 4 ,
-.Xr dlpi 7P
diff --git a/usr/src/man/man7d/ib.7d b/usr/src/man/man7d/ib.7d
deleted file mode 100644
index 2fe714dac0..0000000000
--- a/usr/src/man/man7d/ib.7d
+++ /dev/null
@@ -1,284 +0,0 @@
-'\" te
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH IB 7D "Jan 26, 2009"
-.SH NAME
-ib \- InfiniBand Bus Nexus Driver
-.SH DESCRIPTION
-.sp
-.LP
-The \fBib\fR (IB nexus) driver is a pseudo nexus driver that supports
-enumeration of port devices, VPPA (Virtual Physical Point Attachment), HCA_SVC
-(HCA Service) devices, and I/O controllers (IOC) on the InfiniBand fabric that
-are visible to the host and provides interfaces to \fBcfgadm_ib\fR(1M) to
-manage hot-plugging of IB devices. The \fBib\fR nexus driver enumerates the
-port device, VPPA devices and HCA_SVC devices based on entries specified in the
-\fBib.conf\fR file. IOC devices are enumerated on demand. The IB nexus driver
-uses InfiniBand Device Manager services (\fBibdm\fR(7D)) to enumerate port
-devices, VPPA devices, HCA_SVC devices, and IOCs on the IB fabric.
-.SH CONFIGURATION
-.sp
-.LP
-You configure the \fBib\fR driver by defining properties in the \fBib.conf\fR
-file. The IB nexus driver supports the following properties:
-.sp
-
-.sp
-.TS
-box;
-l | l | l
-l | l | l .
-PROPERTY NAME DEFAULT POSSIBLE VALUES
-_
-port-svc-list \fB""\fR T{
-List of service names, for example: srv
-T}
-_
-vppa-svc-list \fB""\fR List of service names, for example: ipib
-_
-hca-svc-list \fB""\fR T{
-List of service names, for example: hca_nfs
-T}
-.TE
-
-.sp
-.LP
-The \fBport-svc-list\fR property defines the list of port communication service
-names per port. The IB nexus driver creates a device instance for each entry in
-this property per Host Channel Adapter (\fBHCA\fR) port. The \fBib.conf\fR file
-contains a \fBport-svc-list=""\fR entry by default. You update
-\fBport-svc-list\fR with service names you want to add to the system.
-.sp
-.LP
-The \fBvppa-svc-list\fR property defines the list of \fBVPPA\fR communication
-service names per port per partition key. The IB nexus driver creates a device
-instance for each entry in this property per Host Channel Adapter (\fBHCA\fR)
-port. The \fBib.conf\fR file contains a \fBvppa-svc-list=""\fR entry by
-default. You update \fBvppa-svc-list\fR with service names you want to add to
-the system.
-.sp
-.LP
-The \fBhca-svc-list\fR property defines the list of HCA_SVC communication
-service names per HCA. The IB nexus driver creates a device instance for each
-entry in this property per Host Channel Adapter (HCA). The \fBib.conf\fR file
-contains a \fBhca-svc-list=""\fR entry by default. You update
-\fBhca-svc-list\fR with service names you want to add to the system.
-.sp
-.LP
-The service name specified in \fBport-svc-list\fR, \fBvppa-svc-list\fR and
-\fBhca-svc-list\fR must be unique, be a maximum of four characters long, and
-is limited to digits 0-9 and letters a-z and A-Z.
-.sp
-.LP
-IOC drivers (which are parented by the IB nexus driver) may themselves
-have .conf files. To distinguish those cases from pseudo drivers parented by IB
-nexus, such drivers should include the \fB"ib-node-type"\fR property with value
-\fBmerge\fR in the IOC \fBdriver.conf\fR file. That property ensures that
-properties from the .conf file are merged with other properties found through
-hardware probing.
-.SH EXAMPLES
-.sp
-.LP
-Example 1: A sample \fBib.conf\fR file with one service name entry for PORT
-communication services.
-.sp
-.in +2
-.nf
- #
- # Copyright 2001-2003 Sun Microsystems, Inc. All rights reserved.
- # Use is subject to license terms.
- #
- port-svc-list=""
- vppa-svc-list="";
- hca-svc-list="";
-.fi
-.in -2
-
-.sp
-.LP
-In Example 1, the IB nexus driver does not create any port/vppa/hca_svc device
-instances.
-.sp
-.LP
-Example 2: A sample \fBib.conf\fR file with one entry for \fB"srv"\fR service:
-.sp
-.in +2
-.nf
-
- port-svc-list="srv"
- vppa-svc-list="";
- hca-svc-list="";
-.fi
-.in -2
-
-.sp
-.LP
-The IB nexus driver creates one \fBsrv\fR service instance for every \fBHCA\fR
-port that exists on the host. For example, if there are two \fBHCA\fRs, each
-with two ports on the host, the IB nexus driver creates four instances of the
-\fBsrv\fR service.
-.sp
-.LP
-Example 3: A sample \fBib.conf\fR file with one service name entry for
-each of Port and VPPA communication services:
-.sp
-.in +2
-.nf
-
- port-svc-list="srv"
- vppa-svc-list="ipib";
- hca-svc-list="";
-.fi
-.in -2
-
-.sp
-.LP
-If there are two \fBHCA\fRs in the system with two ports each and each port has
-two valid PKEY values, the IB nexus driver creates four instances of srv
-service (one for each port). It also creates eight instances of \fBipd\fR
-service (one per each port/PKEY combination).
-.sp
-.LP
-Example 4: A sample \fBib.conf\fR file with one service name entry for each
-of Port, VPPA and HCA_SVC communication services:
-.sp
-.in +2
-.nf
-
- port-svc-list="srv";
- vppa-svc-list="ipib";
- hca-svc-list="hca_nfs";
-.fi
-.in -2
-
-.sp
-.LP
-The IB nexus driver creates one instance of hca_nfs service for each HCA in the
-system.
-.sp
-.LP
-Example 5: IOC \fBdriver .conf\fR
-.sp
-.in +2
-.nf
- ib-node-type="merge";
- enable-special-mode="on";
-.fi
-.in -2
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/ib\fR\fR
-.ad
-.RS 26n
-32-bit x86 ELF kernel module
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/ib\fR\fR
-.ad
-.RS 26n
-64-bit x86 ELF kernel module
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/sparcv9/ib\fR\fR
-.ad
-.RS 26n
-64-bit SPARC ELF kernel module
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/ib.conf\fR\fR
-.ad
-.RS 26n
-driver configuration file
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for a description of the following attribute:
-.sp
-
-.sp
-.TS
-box;
-l | l
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture SPARC, x86
-_
-Interface Stability Consolidation Private
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBcfgadm_ib\fR(1M), \fBdriver.conf\fR(4), \fBib\fR(4), \fBattributes\fR(5),
-\fBibcm\fR(7D), \fBibdm\fR(7D), \fBibtl\fR(7D)
-.sp
-.LP
-\fIWriting Device Drivers\fR
-.sp
-.LP
-\fIInfiniBand Architecture Specification, Volume 1: Release 1.1\fR
-.sp
-.LP
-\fISystem Administration Guide: Basic Administration\fR
-.SH DIAGNOSTICS
-.sp
-.LP
-In addition to being logged, the following messages may appear on the system
-console. All messages are formatted in the following manner:
-.sp
-.in +2
-.nf
-ib: WARNING: Error message...
-.fi
-.in -2
-.sp
-
-.sp
-.ne 2
-.na
-\fBunit-address property in \fB%s.conf\fR not well-formed.\fR
-.ad
-.sp .6
-.RS 4n
-The \fBdriver.conf\fR file does not have a valid \fB"unit-addr"\fR property
-defined. This property is an array of strings.
-.RE
-
-.sp
-.ne 2
-.na
-\fBcannot find unit-address in \fB%s.conf\fR.\fR
-.ad
-.sp .6
-.RS 4n
-The \fBdriver.conf\fR file does not have a valid \fB"unit-addr"\fR property
-defined. This property is an array of strings.
-.RE
-
-.sp
-.ne 2
-.na
-\fBWaiting for Port %d initialization.\fR
-.ad
-.sp .6
-.RS 4n
-Waiting for port initialization from subnet manager.
-.RE
-
diff --git a/usr/src/man/man7d/ibcm.7d b/usr/src/man/man7d/ibcm.7d
deleted file mode 100644
index 3f0c57dab6..0000000000
--- a/usr/src/man/man7d/ibcm.7d
+++ /dev/null
@@ -1,74 +0,0 @@
-'\" te
-.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH IBCM 7D "Apr 2, 2004"
-.SH NAME
-ibcm \- Solaris InfiniBand Communication Manager
-.SH DESCRIPTION
-.sp
-.LP
-The Solaris InfiniBand Communication Manager (\fBIBCM\fR) is a Solaris kernel
-misc module that adheres to the \fIInfiniBand Architecture Specification,
-Volume 1: Release 1.1\fR for InfiniBand Communication Management Class.
-.sp
-.LP
-\fBIBCM\fR provides a transport layer abstraction to IB clients to set up
-reliable connected channels along with service, multicast, and path
-lookup-related functionality. \fBIBCM\fR implements the CM protocol as per the
-\fIInfiniBand Architecture Specification, Volume 1: Release 1.1\fR and utilizes
-the InfiniBand Management Framework module for all IB management-related
-functionality and the InfiniBand Transport Layer (see \fBibtl\fR(7D)) for all
-IB Verbs-related functionality.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/kernel/misc/ibcm\fR\fR
-.ad
-.RS 29n
-32-bit x86 ELF kernel module
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/misc/amd64/ibcm\fR\fR
-.ad
-.RS 29n
-64-bit x86 ELF kernel module
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/misc/sparcv9/ibcm\fR\fR
-.ad
-.RS 29n
-64-bit SPARC ELF kernel module
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for a description of the following attribute:
-.sp
-
-.sp
-.TS
-box;
-l | l
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Consolidation Private
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBattributes\fR(5), \fBibtl\fR(7D)
-.sp
-.LP
-\fIInfiniBand Architecture Specification, Volume 1: Release 1.1\fR
diff --git a/usr/src/man/man7d/ibd.7d b/usr/src/man/man7d/ibd.7d
deleted file mode 100644
index 90350ac5c9..0000000000
--- a/usr/src/man/man7d/ibd.7d
+++ /dev/null
@@ -1,254 +0,0 @@
-'\" te
-.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH IBD 7D "April 9, 2016"
-.SH NAME
-ibd \- Infiniband IPoIB device driver
-.SH SYNOPSIS
-.LP
-.nf
-\fB/dev/ibd*\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBibd\fR driver implements the IETF IP over Infiniband protocol and
-provides IPoIB service for all IBA ports present in the system.
-.sp
-.LP
-The \fBibd\fR driver is a multi-threaded, loadable, clonable, STREAMS hardware
-driver supporting the connectionless Data Link Provider Interface,
-\fBdlpi\fR(7P)). The \fBibd\fR driver provides basic support for the IBA
-Unreliable Datagram Queue Pair hardware. Functions include QP initialization,
-frame transmit and receive, multicast and promiscuous mode support, and
-statistics reporting.
-.sp
-.LP
-Use the cloning, character-special device \fB/dev/ibd\fR to access all
-\fBibd\fR devices installed within the system.
-.sp
-.LP
-The \fBibd\fR driver is dependent on GLD, a loadable kernel module that
-provides the \fBibd\fR driver with the DLPI and STREAMS functionality required
-of a LAN driver. Except as noted in the Application Programming Interface
-section of this manpage, see \fBgld\fR(7D) for more details on the primitives
-supported by the driver. The GLD module is located at
-\fB/kernel/misc/sparcv9/gld\fR on 64 bit systems and at \fB/kernel/misc/gld\fR
-on 32 bit systems.
-.sp
-.LP
-The \fBibd\fR driver expects certain configuration of the IBA fabric prior to
-operation (which also implies the SM must be active and managing the fabric).
-Specifically, the IBA multicast group representing the IPv4 limited broadcast
-address 255.255.255.255 (also defined as broadcast-GID in IETF documents) must
-be created prior to initializing the device. IBA properties (including mtu,
-qkey and sl) of this group is used by the driver to create any other IBA
-multicast group as instructed by higher level (IP) software. The driver probes
-for the existence of this broadcast-GID during \fBattach\fR(9E).
-.SH APPLICATION PROGRAMMING INTERFACE (DLPI)
-.LP
-The values returned by the driver in the DL_INFO_ACK primitive in response to
-your DL_INFO_REQ are:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Maximum SDU is the MTU associated with the broadcast-GID group, less the 4 byte
-IPoIB header.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Minimum SDU is 0.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-dlsap address length is 22.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-MAC type is DL_IB.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The sap length value is -2, meaning the physical address component is followed
-immediately by a 2-byte sap component within the DLSAP address.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Broadcast address value is the MAC address consisting of the 4 bytes of QPN
-00:FF:FF:FF prepended to the IBA multicast address of the broadcast-GID.
-.sp
-Due to the nature of link address definition for IPoIB, the
-DL_SET_PHYS_ADDR_REQ DLPI primitive is not supported.
-.sp
-In the transmit case for streams that have been put in raw mode via the
-DLIOCRAW ioctl, the DLPI application must prepend the 20 byte IPoIB destination
-address to the data it wants to transmit over-the-wire. In the receive case,
-applications receive the IP/ARP datagram along with the IETF defined 4 byte
-header.
-.RE
-.SH WARNING
-.LP
-This section describes warning messages that might be generated by the driver.
-Please note that while the format of these messages may be modified in future
-versions, the same general information will be provided.
-.sp
-.LP
-While joining IBA multicast groups corresponding to IP multicast groups as part
-of multicast promiscuous operations as required by IP multicast routers, or as
-part of running \fBsnoop\fR(1M), it is possible that joins to some multicast
-groups can fail due to inherent resource constraints in the IBA components. In
-such cases, warning message similar to the following appear in the system log,
-indicating the interface on which the failure occurred:
-.sp
-.in +2
-.nf
-NOTICE: ibd0: Could not get list of IBA multicast groups
-NOTICE: ibd0: IBA promiscuous mode missed multicast group
-NOTICE: ibd0: IBA promiscuous mode missed new multicast gid
-.fi
-.in -2
-
-.sp
-.LP
-Also, if the IBA SM indicates that multicast trap support is suspended or
-unavailable, the system log contains a message similar to:
-.sp
-.in +2
-.nf
-NOTICE: ibd0: IBA multicast support degraded due to
-unavailability of multicast traps
-.fi
-.in -2
-
-.sp
-.LP
-And when the SM indicates trap support is restored:
-.sp
-.in +2
-.nf
-NOTICE: ibd0: IBA multicast support restored due to
-availability of multicast traps
-.fi
-.in -2
-
-.sp
-.LP
-Additionally, if the IBA link transitions to an unavailable state (that is, the
-IBA link state becomes "Down," "Initialize" or "Armed") and then becomes active
-again, the driver tries to rejoin previously joined groups if required. Failure
-to rejoin multicast groups will trigger messages like:
-.sp
-.in +2
-.nf
-NOTICE: ibd0: Failure on port up to rejoin multicast gid
-.fi
-.in -2
-
-.sp
-.LP
-If the corresponding HCA port is in the unavailable state defined above when
-initializing an ibd interface using \fBifconfig\fR(1M), a message is emitted by
-the driver:
-.sp
-.in +2
-.nf
-NOTICE: ibd0: Port is not active
-.fi
-.in -2
-
-.sp
-.LP
-Further, as described above, if the broadcast-GID is not found, or the
-associated MTU is higher than what the HCA port can support, the following
-messages are printed to the system log:
-.sp
-.in +2
-.nf
-NOTICE: ibd0: IPoIB broadcast group absent
-NOTICE: ibd0: IPoIB broadcast group MTU 4096 greater than port's
-maximum MTU 2048
-.fi
-.in -2
-
-.sp
-.LP
-In all cases of these reported problems when running \fBifconfig\fR(1M), it
-should be checked that IBA cabling is intact, an SM is running on the fabric,
-and the broadcast-GID with appropriate properties has been created in the IBA
-partition.
-.SH CONFIGURATION
-.LP
-The IPoIB service comes preconfigured on all HCA ports in the system. To turn
-the service off, or back on after turning it off, refer to documentation in
-\fBcfgadm_ib(1M)\fR.
-.SH FILES
-.ne 2
-.na
-\fB\fB/dev/ibd*\fR\fR
-.ad
-.RS 27n
-special character device
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/ib.conf\fR\fR
-.ad
-.RS 27n
-configuration file to start IPoIB service
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/sparcv9/ibd\fR\fR
-.ad
-.RS 27n
-64-bit SPARC device driver
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/ibd\fR\fR
-.ad
-.RS 27n
-64-bit x86 device driver
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/ibd\fR\fR
-.ad
-.RS 27n
-32-bit x86 device driver
-.RE
-
-.SH SEE ALSO
-.LP
-\fBcfgadm\fR(1M), \fBcfgadm_ib(1M)\fR, \fBifconfig\fR(1M), \fBsyslogd\fR(1M),
-\fBgld\fR(7D), \fBib\fR(7D), \fBkstat\fR(7D), \fBstreamio\fR(7I),
-\fBdlpi\fR(7P), \fBattributes\fR(5), \fBattach\fR(9E)
-.SH NOTES
-.LP
-IBD is a GLD-based driver and provides the statistics described by
-\fBgld\fR(7D). Note that valid received packets not accepted by any stream
-(long) will increase when IBD transmits broadcast IP packets. This happens
-because the infiniband hardware copies and loops back the transmitted broadcast
-packets to the source. These packets are discarded by GLD and are recorded
-as 'unknowns'.
diff --git a/usr/src/man/man7d/ibdm.7d b/usr/src/man/man7d/ibdm.7d
deleted file mode 100644
index 84ce1b3e09..0000000000
--- a/usr/src/man/man7d/ibdm.7d
+++ /dev/null
@@ -1,73 +0,0 @@
-'\" te
-.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH IBDM 7D "Oct 9, 2004"
-.SH NAME
-ibdm \- Solaris InfiniBand Device Manager
-.SH DESCRIPTION
-.sp
-.LP
-The Infiniband Device Manager (\fBIBDM\fR) is an IBTF-compliant kernel misc
-module. \fBIBDM\fR adheres to the InfiniBand Device Management class as
-described in \fIInfiniBand Architecture Specification, Volume 1: Release 1.1\fR
-and enumerates all the devices which are visible from a given host and
-maintains a data base of all IB devices visible to the host. \fBIBDM\fR
-provides interfaces to the IB nexus driver that enables the driver to retrieve
-information about IB devices on the fabric.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/kernel/misc/ibdm\fR\fR
-.ad
-.RS 29n
-32-bit x86 ELF kernel module
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/misc/amd64/ibdm\fR\fR
-.ad
-.RS 29n
-64-bit x86 ELF kernel module
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/misc/sparcv9/ibdm\fR\fR
-.ad
-.RS 29n
-64-bit SPARC ELF kernel module
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for a description of the following attribute:
-.sp
-
-.sp
-.TS
-box;
-l | l
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Contract Consolidation Private
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBattributes\fR(5), \fBib\fR(7D), \fBibtl\fR(7D), \fBibcm\fR(7D)
-.sp
-.LP
-\fIInfiniBand Architecture Specification, Volume 1: Release 1.1\fR
-.SH DIAGNOSTICS
-.sp
-.LP
-None.
diff --git a/usr/src/man/man7d/ibdma.7d b/usr/src/man/man7d/ibdma.7d
deleted file mode 100644
index 7bc7185aeb..0000000000
--- a/usr/src/man/man7d/ibdma.7d
+++ /dev/null
@@ -1,60 +0,0 @@
-'\" te
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH IBDMA 7D "May 21, 2009"
-.SH NAME
-ibdma \- Solaris InfiniBand Device Manager Agent
-.SH DESCRIPTION
-.sp
-.LP
-The Infiniband Device Manager Agent (\fBibdma\fR) is an IBTF-compliant kernel
-misc module.
-.sp
-.LP
-\fBIBDMA\fR implements limited portions of the target (agent) side of the
-InfiniBand Device Management class as described in \fIInfiniBand Architecture
-Specification, Volume 1: Release 1.2.1\fR.
-.sp
-.LP
-\fBIBDMA\fR responds to incoming Device Management Datagrams (MADS) by
-enumerating available target-side Infiniband services. Initiator systems can
-use this service to discover target-side resources such as the virtual I/O
-Controllers exported by \fBsrpt\fR(7D).
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/kernel/misc/ibdma\fR\fR
-.ad
-.RS 30n
-32-bit x86 ELF kernel module
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/misc/amd64/ibdma\fR\fR
-.ad
-.RS 30n
-64-bit x86 ELF kernel module
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/misc/sparcv9/ibdma\fR\fR
-.ad
-.RS 30n
-64-bit SPARC ELF kernel module
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBattributes\fR(5), \fBib\fR(7D), \fBibdm\fR(7D), \fBibtl\fR(7D),
-\fBsrpt\fR(7D)
-.sp
-.LP
-\fIInfiniBand Architecture Specification, Volume 1: Release 1.2.1\fR
diff --git a/usr/src/man/man7d/ibtl.7d b/usr/src/man/man7d/ibtl.7d
deleted file mode 100644
index 7ebdd6ae6e..0000000000
--- a/usr/src/man/man7d/ibtl.7d
+++ /dev/null
@@ -1,83 +0,0 @@
-'\" te
-.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH IBTL 7D "Oct 9, 2004"
-.SH NAME
-ibtl \- Solaris InfiniBand Transport Layer
-.SH DESCRIPTION
-.sp
-.LP
-InfiniBand (\fBIB\fR) is an I/O technology based on switched fabrics. The
-Solaris InfiniBand Transport Layer (\fBIBTL\fR) is a Solaris kernel misc module
-and adheres to the \fIIB Architecture Version 1.1\fR specification and provides
-a transport layer abstraction to \fBIB\fR client drivers.
-.sp
-.LP
-\fBIBTL\fR implements the programming interfaces for the Solaris InfiniBand
-Transport Framework (\fBIBTF\fR), consisting of the IB Channel Interface (CI)
-and the IB Transport Interface (TI).
-.sp
-.LP
-The CI consists of Host Channel Adapters (HCAs) and HCA drivers. A host is
-attached to the IB fabric through the CI layer. The Solaris InfiniBand CI is
-Sun's API rendering of the InfiniBand Architecture (IBTA) "verbs"
-specification.
-.sp
-.LP
-The Solaris InfiniBand TI is the kernel service driver interface into the
-Solaris InfiniBand Transport Framework. It provides transport and
-communications setup programming interfaces for Unreliable Datagram (UD) and
-Reliable Connected (RC) transport types only.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/kernel/misc/ibtl\fR\fR
-.ad
-.RS 29n
-32-bit x86 ELF kernel misc module
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/misc/amd64/ibtl\fR\fR
-.ad
-.RS 29n
-64-bit x86 ELF kernel misc module
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/misc/sparcv9/ibtl\fR\fR
-.ad
-.RS 29n
-64-bit SPARC ELF kernel module
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for a description of the following attribute:
-.sp
-
-.sp
-.TS
-box;
-l | l
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Consolidation Private
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBattributes\fR(5), \fBib\fR(7D), \fBibcm\fR(7D), \fBibdm\fR(7D)
-.sp
-.LP
-\fIInfiniBand Architecture Specification, Volume 1: Release 1.1\fR
diff --git a/usr/src/man/man7d/ieee1394.7d b/usr/src/man/man7d/ieee1394.7d
deleted file mode 100644
index 07cf605b11..0000000000
--- a/usr/src/man/man7d/ieee1394.7d
+++ /dev/null
@@ -1,105 +0,0 @@
-'\" te
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 2020 Peter Tribble.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
-.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH IEEE1394 7D "Jan 10, 2020"
-.SH NAME
-ieee1394, firewire, 1394 \- illumos IEEE-1394 Architecture
-.SH DESCRIPTION
-IEEE-1394 provides a means for interconnecting devices in computer and home
-entertainment systems. (The IEEE-1394 architecture is also known as Firewire,
-an Apple Computer trademark, and i.Link, a Sony trademark). The most common
-IEEE-1394 devices are digital camcorders, mass-storage devices and cameras
-(including webcam-type devices). For more information on IEEE-1394, refer to the
-1394 Trade Association website at http://\fIwww.1394ta.org\fR.
-.sp
-.LP
-The illumos IEEE-1394 architecture supports up to 63 hot-pluggable IEEE-1394
-devices per IEEE-1394 bus. The maximum data transfer rate is 400 Mbits,
-depending on the capabilities of the attached device.
-.sp
-.LP
-The illumos IEEE-1394 architecture supports devices implementing a number of
-different specifications. The basic behavior of the IEEE-1394 bus is described
-in the \fIIEEE 1394-1995\fR and \fIIEEE 1394a-2000\fR specifications.
-.sp
-.LP
-IEEE-1394 host controllers implementing the 1394 Open Host Controller Interface
-specification are supported. Camcorders implementing the \fIIEC 61883\fR
-and 1394 Trade Association AV/C specifications are supported. Mass-storage
-devices implementing the \fIANSI SBP-2\fR specification are supported. Digital
-cameras implementing the 1394 Trade Association 1394-based Digital Camera
-(IIDC) specification are supported.
-.SH FILES
-Listed below are drivers and modules which either utilize or are utilized by
-the illumos IEEE-1394 architecture.
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-SUPPORT MODULE(S) FUNCTION
-_
-/kernel/misc/[sparcv9|amd64]/s1394 IEEE-1394 framework
-_
-/kernel/misc/[sparcv9|amd64]/sbp2 Serial Bus Protocol-2 (SBP-2)
-.TE
-
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-TARGET DRIVER DEVICE CLASS
-_
-/kernel/drv/[sparcv9|amd64]/scsa1394 mass storage class
-_
-/kernel/drv/[sparcv9|amd64]/av1394 camcorder (AV/C) class
-_
-/kernel/drv/[sparcv9|amd64]/dcam1394 digital camera (IIDC) class
-.TE
-
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-HOST CONTROLLER INTERFACE DRIVER(S) DEVICE
-_
-/kernel/drv/[sparcv9|amd64]/hci1394 Open HCI
-.TE
-
-.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture PCI-based systems
-.TE
-
-.SH SEE ALSO
-\fBattributes\fR(5), \fBav1394\fR(7D), \fBdcam1394\fR(7D), \fBhci1394\fR(7D),
-\fBscsa1394\fR(7D), \fBiec61883\fR(7I)
-.sp
-.LP
-\fIIEEE 1394a\fR Specification - 1394 Trade Association, 2000
-.sp
-.LP
-\fIIEEE 1394\fR Specification - 1394 Trade Association, 1995
-.SH NOTES
-Booting from IEEE-1394 mass-storage devices is not supported, but may be
-possible if supported by the BIOS of the computer system.
diff --git a/usr/src/man/man7d/igb.7d b/usr/src/man/man7d/igb.7d
deleted file mode 100644
index de03b084aa..0000000000
--- a/usr/src/man/man7d/igb.7d
+++ /dev/null
@@ -1,126 +0,0 @@
-.\"
-.\" This file and its contents are supplied under the terms of the
-.\" Common Development and Distribution License ("CDDL"), version 1.0.
-.\" You may only use this file in accordance with the terms of version
-.\" 1.0 of the CDDL.
-.\"
-.\" A full copy of the text of the CDDL should have accompanied this
-.\" source. A copy of the CDDL is also available via the Internet at
-.\" http://www.illumos.org/license/CDDL.
-.\"
-.\"
-.\" Copyright 2020 Oxide Computer Company
-.\"
-.Dd September 14, 2020
-.Dt IGB 7D
-.Os
-.Sh NAME
-.Nm igb
-.Nd Intel 1 GbE Server NIC Driver
-.Sh SYNOPSIS
-.Pa /dev/net/igb*
-.Sh DESCRIPTION
-The
-.Nm
-driver is a GLDv3 NIC driver for Intel 1 Gigabit Ethernet PCIe
-controllers which are built-in to motherboards and discrete PCIe
-devices.
-.Pp
-The driver supports the following device families:
-.Bl -dash
-.It
-Intel 82575 Gigabit Ethernet Controller
-.It
-Intel 82576 Gigabit Ethernet Controller
-.It
-Intel 82580 Gigabit Ethernet Controller
-.It
-Intel Ethernet Controller I210
-.It
-Intel Ethernet Controller I211
-.It
-Intel Ethernet Controller I350
-.El
-.Pp
-Many other Intel 1 GbE devices are supported by the
-.Xr e1000g 7D
-driver.
-.Pp
-The driver supports the following functionality depending on the
-controller generation:
-.Bl -dash
-.It
-Jumbo frames up to 9000 bytes.
-.It
-Checksum offload for TCP and UDP on IPv4 and IPv6.
-Checksum offload for IPv4 headers.
-.It
-TCP Segmentation Offload
-.Pq TSO
-over IPv4 and IPv6.
-.It
-Support for multiple hardware rings, enabling receive-side steering
-.Pq RSS
-and multiple MAC address filters.
-.It
-Promiscuous access via
-.Xr snoop 1M
-and
-.Xr dlpi 7P .
-.It
-LED control.
-.It
-Link auto-negotiation, manual link controls, and IEEE 802.3x flow
-control.
-.El
-.Sh APPLICATION PROGRAMMING INTERFACE
-For each supported device instance, which corresponds to a port, a
-character-special file is created.
-This device can be used with the Data Link Provider Interface
-.Pq DLPI
-through either
-.Xr libdlpi 3LIB
-or
-.Xr dlpi 7P .
-.Pp
-Each instance is assigned a unique ascending integer identifier starting
-from zero.
-The first instance in the system would be enumerated with the id 0 and
-be named
-.Sy igb0
-and be found in the file system at
-.Pa /dev/net/igb0 .
-.Sh CONFIGURATION
-The
-.Nm
-driver supports operating at 1 Gbps full-duplex, 100 Mbps full and
-half-duplex, and 10 Mbps full and half-duplex.
-By default, the device will use auto-negotiation and prefer the highest
-compatible speed.
-The advertised speeds and broader configuration can be observed and
-modified with
-.Xr dladm 1M .
-While
-.Xr driver.conf 4
-based configuration is possible, it is recommended that
-.Xr dladm 1M
-is used wherever possible.
-.Sh FILES
-.Bl -tag -width Pa
-.It Pa /dev/net/igb*
-.Nm
-special character device.
-.It Pa /kernel/drv/amd64/igb
-x86 device driver.
-.It Pa /kernel/drv/sparcv9/igb
-SPARC device driver
-.It Pa /kernel/drv/igb.conf
-Configuration file.
-.El
-.Sh SEE ALSO
-.Xr dladm 1M ,
-.Xr libdlpi 3LIB ,
-.Xr driver.conf 4 ,
-.Xr e1000g 7D ,
-.Xr dlpi 7P ,
-.Xr mac 9E
diff --git a/usr/src/man/man7d/imc.7d b/usr/src/man/man7d/imc.7d
deleted file mode 100644
index 9389afd0f1..0000000000
--- a/usr/src/man/man7d/imc.7d
+++ /dev/null
@@ -1,103 +0,0 @@
-.\"
-.\" This file and its contents are supplied under the terms of the
-.\" Common Development and Distribution License ("CDDL"), version 1.0.
-.\" You may only use this file in accordance with the terms of version
-.\" 1.0 of the CDDL.
-.\"
-.\" A full copy of the text of the CDDL should have accompanied this
-.\" source. A copy of the CDDL is also available via the Internet at
-.\" http://www.illumos.org/license/CDDL.
-.\"
-.\"
-.\" Copyright 2019 Joyent, Inc.
-.\"
-.Dd June 25, 2019
-.Dt IMC 7D
-.Os
-.Sh NAME
-.Nm imc
-.Nd Intel memory controller driver
-.Sh SYNOPSIS
-.Pa /dev/mc/mc*
-.Sh DESCRIPTION
-The
-.Nm
-driver interfaces with the memory controller found on certain
-generations of Intel CPUs and provides a means for decoding physical
-addresses to the corresponding memory device.
-The
-.Nm
-driver plugs into the operating systems fault management framework
-providing additional details to the system about the memory topology and
-the ability to decode physical addresses into the corresponding portion
-of the memory hierarchy.
-.Pp
-The
-.Nm
-driver is supported on the following Intel processors:
-.Bl -bullet -offset indent -width Sy
-.It
-Sandy Bridge E5 and E7 Xeon Processors
-.It
-Ivy Bridge E5 and E7 Xeon Processors
-.It
-Haswell E5 and E7 Xeon Processors
-.It
-Broadwell E5 and E7 Xeon Processors
-.It
-Skylake Xeon Scalable Processors
-.It
-Cascade Lake Xeon Scalable Processors
-.It
-Broadwell and Skylake Xeon-D processors
-.El
-.Pp
-Other lines involving the above microarchitectures, such as Xeon E3
-branded processors, are not supported as they do not provide the
-necessary hardware support.
-.Pp
-The
-.Nm
-driver is a pseudo-device driver that amalgamates all of the different
-.Xr imcstub 7D
-instances into a coherent view.
-The
-.Xr imcstub 7D
-driver attaches to all of the different PCI devices that the processor
-exposes.
-.Pp
-One challenge with the
-.Nm
-driver is the Intel Enhanced Machine Check Architecture v2
-.Pq EMCAv2 .
-Many vendors use EMCAv2 to hide memory errors from the operating system.
-Such systems limit the effectiveness of the
-.Nm
-driver and the fault management architecture by hiding correctable and
-uncorrectable DIMM errors from the operating system.
-.Pp
-The
-.Nm
-driver has a few limitations.
-Currently it does not always properly handle lockstep and mirroring
-mode, particularly in variants that are common on Skylake and newer
-systems.
-It also does not properly handle cases where Intel Optane NVDIMMs are in
-use on the memory bus.
-.Sh ARCHITECTURE
-The
-.Nm
-driver is only supported on specific Intel
-.Sy x86
-systems.
-.Sh FILES
-.Bl -tag -width Pa
-.It Pa /platform/i86pc/kernel/drv/amd64/imc
-64-bit device driver (x86).
-.It Pa /platform/i86pc/kernel/drv/imc.conf
-Driver configuration file.
-.El
-.Sh SEE ALSO
-.Xr fmadm 1M ,
-.Xr fmdump 1M ,
-.Xr imcstub 7D
diff --git a/usr/src/man/man7d/imcstub.7d b/usr/src/man/man7d/imcstub.7d
deleted file mode 100644
index d4f69c3b7a..0000000000
--- a/usr/src/man/man7d/imcstub.7d
+++ /dev/null
@@ -1,46 +0,0 @@
-.\"
-.\" This file and its contents are supplied under the terms of the
-.\" Common Development and Distribution License ("CDDL"), version 1.0.
-.\" You may only use this file in accordance with the terms of version
-.\" 1.0 of the CDDL.
-.\"
-.\" A full copy of the text of the CDDL should have accompanied this
-.\" source. A copy of the CDDL is also available via the Internet at
-.\" http://www.illumos.org/license/CDDL.
-.\"
-.\"
-.\" Copyright 2019 Joyent, Inc.
-.\"
-.Dd June 25, 2019
-.Dt IMCSTUB 7D
-.Os
-.Sh NAME
-.Nm imcstub
-.Nd Intel memory controller stub driver
-.Sh DESCRIPTION
-The
-.Nm
-driver is a counterpart to the
-.Xr imc 7D
-driver.
-The
-.Nm
-driver is responsible for attaching to all of the logical PCI devices
-that are exposed by Intel CPUs and providing them for use by the
-.Xr imc 7D
-driver.
-For more information on how this is used by the system, please see
-.Xr imc 7D .
-.Sh ARCHITECTURE
-The
-.Nm
-driver is only supported on certain Intel
-.Sy x86
-systems.
-.Sh FILES
-.Bl -tag -width Pa
-.It Pa /platform/i86pc/kernel/drv/amd64/imcstub
-64-bit device driver (x86).
-.El
-.Sh SEE ALSO
-.Xr imc 7D
diff --git a/usr/src/man/man7d/ipmi.7d b/usr/src/man/man7d/ipmi.7d
deleted file mode 100644
index 43a9ead9d6..0000000000
--- a/usr/src/man/man7d/ipmi.7d
+++ /dev/null
@@ -1,170 +0,0 @@
-'\"
-.\" CDDL HEADER START
-.\"
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.\"
-.\" CDDL HEADER END
-.\"
-.\" Copyright (c) 2012, Joyent, Inc. All Rights Reserved
-.\" Copyright 2013 Nexenta Systems, Inc. All rights reserved.
-.\"
-.TH IPMI 7D "Oct 31, 2013"
-.SH NAME
-ipmi \- OpenIPMI compatible IPMI interface driver
-.SH SYNOPSIS
-.nf
-\fB/dev/ipmi0\fR
-.fi
-
-.SH DESCRIPTION
-The \fBipmi\fR device is a character special file that provides access to the
-Intelligent Platform Management Interface for the system. For more
-information on \fBIPMI\fR and to obtain a copy of the \fBIPMI\fR
-specification and implementation guidelines, refer to
-http://www.intel.com/design/servers/ipmi/.
-The driver is adapted from the FreeBSD driver which is in turn adapted from
-the Linux driver, however, not all features described in the standard are
-supported. The current implementation depends on the \fBsmbios\fR(7d) to
-discover the existence of an IPMI device.
-
-.SH IOCTLS
-Sending and receiving messages through the IPMI drivers requires the use of
-\fBioctl\fR(2).
-
-The ioctl command codes below are defined in \fBsys/ipmi.h\fR.
-The third argument to ioctl should be a pointer to the type indicated.
-Currently the following ioctls are supported:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-IPMICTL_RECEIVE_MSG "struct ipmi_recv"
-.br
-Receive a message.
-.br
-Possible error values:
-.RS +8
-EAGAIN No messages are in the process queue.
-.br
-EFAULT An address supplied was invalid.
-.br
-EMSGSIZE The address could not fit in the message buffer and
-will remain in the buffer.
-.RE
-.RE
-
-.RS +4
-.TP
-.ie t \(bu
-.el o
-IPMICTL_RECEIVE_MSG_TRUNC "struct ipmi_recv"
-.br
-Like IPMICTL_RECEIVE_MSG but if the message cannot fit into the buffer, it
-will truncate the contents instead of leaving the data in the buffer.
-.RE
-
-.RS +4
-.TP
-.ie t \(bu
-.el o
-IPMICTL_SEND_COMMAND "struct ipmi_req"
-.br
-Send a message to the interface.
-.br
-Possible error values:
-.RS +8
-EFAULT An address supplied was invalid
-.br
-ENOMEM Buffers could not be allowed for the command, out of memory.
-.RE
-.RE
-
-.RS +4
-.TP
-.ie t \(bu
-.el o
-IPMICTL_SET_MY_ADDRESS_CMD "unsigned int"
-.br
-Set the slave address for source messages.
-.RE
-
-.RS +4
-.TP
-.ie t \(bu
-.el o
-IPMICTL_GET_MY_ADDRESS_CMD "unsigned int"
-.br
-Get the slave address for source messages.
-.RE
-
-.RS +4
-.TP
-.ie t \(bu
-.el o
-IPMICTL_SET_MY_LUN_CMD "unsigned int"
-.br
-Set the slave LUN for source messages.
-.RE
-
-.RS +4
-.TP
-.ie t \(bu
-.el o
-IPMICTL_GET_MY_LUN_CMD "unsigned int"
-.br
-Get the slave LUN for source messages.
-.RE
-
-Stub Only Ioctl
-
-.RS +4
-.TP
-.ie t \(bu
-.el o
-IPMICTL_SET_GETS_EVENTS_CMD int
-.br
-Set whether this interface receives events.
-.RE
-
-Unimplemented Ioctls
-
-.RS +4
-.TP
-.ie t \(bu
-.el o
-IPMICTL_REGISTER_FOR_CMD
-.br
-Register to receive a specific command
-.RE
-
-.RS +4
-.TP
-.ie t \(bu
-.el o
-IPMICTL_UNREGISTER_FOR_CMD
-.br
-Unregister to receive a specific command
-.RE
-
-.SH SEE ALSO
-\fBipmitool\fR(1), \fBioctl\fR(2), \fBsmbios\fR(7d)
-.sp
-.LP
-\fIIntelligent Platform Management Interface Specification Second
-Generation\fR, v2.0 \(em
-June 12, 2009 Markup
-.SH NOTES
-Not all systems include an \fBIPMI\fR.
diff --git a/usr/src/man/man7d/ipnet.7d b/usr/src/man/man7d/ipnet.7d
deleted file mode 100644
index eab138ec78..0000000000
--- a/usr/src/man/man7d/ipnet.7d
+++ /dev/null
@@ -1,190 +0,0 @@
-'\" te
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH IPNET 7D "Apr 8, 2009"
-.SH NAME
-ipnet, lo0 \- ipnet device driver
-.SH SYNOPSIS
-.LP
-.nf
-\fB/dev/ipnet/*, /dev/lo0\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBipnet\fR device driver creates, removes and manages nodes in the
-\fB/dev/ipnet/\fR namespace.
-.sp
-.LP
-A node is created in \fB/dev/ipnet\fR for every IP interface on the system,
-including interfaces that exist only in software and for which there is no
-hardware device. The \fBipnet\fR device also provides access to all IP traffic
-to and from the system. To provide access to packets that are internally
-looped-back in IP, the \fBipnet\fR driver creates a \fB/dev/lo0\fR DLPI device.
-.SH APPLICATION PROGRAMMING INTERFACE
-.SS "ipnet and DLPI"
-.sp
-.LP
-Device nodes created in \fB/dev/ipnet\fR are DLPI style-1 devices. All
-\fBM_PROTO\fR and \fBM_PCPROTO\fR-type messages are interpreted as DLPI
-primitives. Because the device is read-only and packets can only be observed by
-opening them, the following subset of DLPI primitives is supported:
-.sp
-.in +2
-.nf
-DL_INFO_REQ
-DL_BIND_REQ
-DL_UNBIND_REQ
-DL_PROMISCON_REQ
-DL_PROMISCOFF_REQ
-DLIOCRAW
-.fi
-.in -2
-
-.sp
-.LP
-The values returned by the driver in the \fBDL_INFO_ACK\fR primitive in
-response to the \fBDL_INFO_REQ\fR are:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Maximum \fBSDU\fR is \fBINT_MAX\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Minimum \fBSDU\fR is \fB0\fR.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBDLSAP\fR address length is \fB2.\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBMAC\fR type is \fBDL_IPNET\fR.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBSAP\fR length value is \fB2\fR.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Service mode is \fBDL_CLDLS\fR.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-No optional quality of service (QOS) support is provided. Accordingly, the QOS
-fields are 0.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Provider style is \fBDL_STYLE1\fR.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Version is \fBDL_VERSION_2\fR.
-.RE
-.sp
-.LP
-The \fB/dev/ipnet/*\fR and \fB/dev/lo0\fR devices only accept \fBDL_BIND_REQ\fR
-requests for SAPs 4 (IPv4 packets), 6 (IPv6 packets), or 0 (all IP packets).
-\fBDL_BIND_REQ\fR requests for other SAP values result in a \fBDL_ERROR_ACK\fR
-of \fBDL_BADSAP\fR.
-.SS "ipnet primitives"
-.sp
-.LP
-For \fB/dev/ipnet/*\fR devices, the \fBDL_PROMISCON_REQ\fR and
-\fBDL_PROMISCOFF_REQ\fR primitives with the \fBDL_PROMISC_PHYS\fR flag set in
-the \fBdl_level\fR field enables/disables the reception of all packets. When
-disabled, only packets with addresses matching any of the configured addresses
-on the IP interface are received. When used with the \fBDL_PROMISC_MULTI\fR
-flag set, reception of all multicast group addresses can be enabled/disabled.
-\fBDL_PROMISC_PHYS\fR and \fBDL_PROMISC_MULTI\fR have no effect for
-\fB/dev/lo0\fR. When the \fBDL_PROMISC_SAP\fR flag is set, reception of all
-IPv4/IPv6 can be enabled/disabled.
-.sp
-.LP
-The \fBDLIOCRAW\fR ioctl is supported but has no effect on the data returned
-from the device.
-.sp
-.LP
-The \fBDL_IOC_IPNET_INFO\fR ioctl enables/disables the inclusion of a
-\fBdl_ipnetinfo_t\fR structure that is prepended to the IP header when
-receiving packet data. When enabled, a non-zero integer is returned reflecting
-the current \fBDL_IOC_IPNET_INFO\fR version. The \fBdl_ipnetinfo_t\fR data
-structure is defined in \fB<sys/dlpi.h>\fR and includes the following fields:
-.sp
-.in +2
-.nf
-uint8_t dli_version; /* DL_IPNETINFO_* version */
-uint8_t dli_ipver; /* packet IP header version */
-uint16_t dli_len; /* length of dl_ipnetinfo_t */
-uint64_t dli_srczone; /* packet source zone ID (if any) */
-uint64_t dli_dstzone; /* packet dest zone ID (if any) */
-.fi
-.in -2
-
-.sp
-.LP
-The current \fBdli_version\fR is 1. To robustly support future
-\fBdl_ipnetinfo_t\fR versions, consumers should check that \fBdli_version\fR is
-a value they recognize, and must use the \fBdli_len\fR field to advance past
-the \fBdl_ipnetinfo_t\fR header.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/dev/ipnet/*, /dev/lo0\fR\fR
-.ad
-.RS 26n
-Special character devices.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/ipnet.conf\fR\fR
-.ad
-.RS 26n
-Configuration file.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-l l
-l l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-Architecture SPARC, x86
-Interface Stability Committed
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBattributes\fR(5), \fBdlpi\fR(7P)
diff --git a/usr/src/man/man7d/iprb.7d b/usr/src/man/man7d/iprb.7d
deleted file mode 100644
index 6ac7c445ac..0000000000
--- a/usr/src/man/man7d/iprb.7d
+++ /dev/null
@@ -1,66 +0,0 @@
-.\" Copyright 2014 Garrett D'Amore <garrett@damore.org>
-.\" Redistribution and use in source and binary forms, with or without
-.\" modification, are permitted provided that the following conditions
-.\" are met:
-.\" 1. Redistributions of source code must retain the above copyright
-.\" notice, this list of conditions and the following disclaimer.
-.\" 2. Redistributions in binary form must reproduce the above copyright
-.\" notice, this list of conditions and the following disclaimer in the
-.\" documentation and/or other materials provided with the distribution.
-.\"
-.\" THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER AND CONTRIBUTORS
-.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-.\" LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
-.\" FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
-.\" COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
-.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
-.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
-.\" USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
-.\" ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
-.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE
-.\"
-.Dd "Aug 3, 2014"
-.Dt IPRB 7D
-.Os
-.Sh NAME
-.Nm iprb
-.Nd Intel PRO/100 Fast Ethernet device driver
-.Sh SYNOPSIS
-.Pa /dev/iprb
-.Sh DESCRIPTION
-The
-.Nm
-driver provides support for the Intel PRO/100 family of Fast Ethernet
-PCI controllers.
-This includes support for Intel 82558, 82559, 82550, and 82551 parts, as well as
-certain controllers found on certain Intel southbridge controllers (ICH2 and
-ICH3).
-.Lp
-These devices generally support the standard Fast Ethernet features, including
-10BASE-T and 100BASE-TX, both full and half duplex operation, IEEE 802.3
-autonegotiation, etc.
-They also support full size MTUs (1500 bytes), even when used with VLANs.
-Some of them also support flow control.
-.
-.Lp
-The device driver supports the
-.Xr ieee802.3 5
-properties, which can be configured with
-.Xr dladm 1M .
-.
-.Sh FILES
-.Bl -tag -width /dev/iprb
-.It Pa /dev/iprb
-Special character device.
-.El
-.Sh SEE ALSO
-.Xr dladm 1M ,
-.Xr ifconfig 1M ,
-.Xr pci 4 ,
-.Xr ieee802.3 5 ,
-.Xr dlpi 7P
-.Rs
-.%T IEEE 802.3: Ethernet
-.%Q IEEE Standards Association
-.Re
diff --git a/usr/src/man/man7d/ipw.7d b/usr/src/man/man7d/ipw.7d
deleted file mode 100644
index 13d29efd5f..0000000000
--- a/usr/src/man/man7d/ipw.7d
+++ /dev/null
@@ -1,85 +0,0 @@
-'\" te
-.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH IPW 7D "Mar 11, 2007"
-.SH NAME
-ipw \- Intel Pro. Wireless 802.11b IPW2100B driver
-.SH DESCRIPTION
-.sp
-.LP
-The \fBipw\fR \fI802.11b\fR wireless NIC driver is a multi-threaded, loadable,
-clonable, GLDv3-based STREAMS driver supporting the Data Link Provider
-Interface, \fBdlpi\fR(7P), on Intel Pro Wireless 2100B chipset-based wireless
-NIC's. Driver functions include controller initialization, wireless
-\fI802.11b\fR infrastructure network connection, WEP, frame transmit and
-receive and promiscuous support.
-.SH DRIVER CONFIGURATION
-.sp
-.LP
-The \fBipw\fR driver performs auto-negotiation to determine the data rate and
-mode. Supported \fI802.11b\fR data rates are 1, 2, 5.5 and 11 Mbits/sec.
-.sp
-.LP
-The \fBipw\fR driver supports only BSS networks (also known as "ap" or
-"infrastructure" networks) and the "open" ("open-system") or "shared system"
-authentication. Only WEP encryption is currently supported. You perform
-configuration and administration tasks using the \fBdladm\fR(1M) and
-\fBwificonfig\fR(1M) utilities.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/dev/ipw*\fR\fR
-.ad
-.RS 25n
-Special character device.
-.RE
-
-.sp
-.ne 2
-.na
-\fB/kernel/drv/ipw\fR
-.ad
-.RS 25n
-32-bit ELF kernel module (x86).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/ipw\fR\fR
-.ad
-.RS 25n
-64-bit ELF kernel module (x86).
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for a description of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture x86
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBdladm\fR(1M), \fBwificonfig\fR(1M), \fBattributes\fR(5), \fBgld\fR(7D),
-\fBdlpi\fR(7P)
-.sp
-.LP
-\fIANSI/IEEE Std 802.11- Standard for Wireless LAN Technology\fR \(em 1999
-.sp
-.LP
-\fIIEEE Std 802.11b - Standard for Wireless LAN Technology-Rev. B \fR -
-2003
diff --git a/usr/src/man/man7d/iscsi.7d b/usr/src/man/man7d/iscsi.7d
deleted file mode 100644
index 7f4d34ab5e..0000000000
--- a/usr/src/man/man7d/iscsi.7d
+++ /dev/null
@@ -1,101 +0,0 @@
-'\" te
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH ISCSI 7D "Mar 30, 2009"
-.SH NAME
-iscsi \- iSCSI software initiator driver and service
-.SH DESCRIPTION
-.sp
-.LP
-The \fBiscsi\fR driver is a software initiator that transports SCSI commands
-over TCP/IP as described in \fIRFC 3720\fR.
-.sp
-.LP
-The initiator driver is administered through \fBiscsiadm\fR(1M). The
-\fBiscsi\fR initiator service is managed by the service management facility,
-\fBsmf\fR(5), under the following FMRI:
-.sp
-.in +2
-.nf
-svc:/network/iscsi/initiator:default
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The \fBiscsi\fR initiator acts as a host adapter driver that attaches the
-appropriate target driver, for example, \fBsd\fR(7D) for disks, or \fBst\fR(7D)
-for tapes) for devices it discovers. See the \fISystem Administration Guide:
-Devices and File Systems\fR for more information.
-.sp
-.LP
-Once enabled, the \fBiscsi\fR initiator service ensures the right timing to
-start the discovery and enumeration of iSCSI devices during boot, but it
-doesn't guarantee the success of discovery for certain iSCSI devices. If the
-service is disabled, \fBiscsi\fR driver stops the discovery and enumeration of
-iSCSI devices and also tries to offline all existing iSCSI devices.
-\fBiscsiadm\fR(1M) works only when the service is enabled.
-.sp
-.LP
-iSCSI \fBboot\fR(1M) is not affected by the status of the \fBiscsi\fR initiator
-service.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/iscsi\fR\fR
-.ad
-.RS 29n
-32-bit ELF kernel driver
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/sparcv9/iscsi\fR\fR
-.ad
-.RS 29n
-64-bit SPARC ELF kernel driver
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/iscsi\fR\fR
-.ad
-.RS 29n
-64-bit AMD64 ELF kernel driver
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/iscsi.conf\fR\fR
-.ad
-.RS 29n
-Driver configuration file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/iscsi/*\fR\fR
-.ad
-.RS 29n
-\fBiscsi\fR persistent store
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBiscsiadm\fR(1M), \fBattributes\fR(5), \fBsmf\fR(5), \fBsd\fR(7D),
-\fBst\fR(7D)
-.sp
-.LP
-\fIRFC 3720 Internet Small Computer Systems Interface (iSCSI)\fR
-.sp
-.LP
-\fISystem Administration Guide: Devices and File Systems\fR
diff --git a/usr/src/man/man7d/iser.7d b/usr/src/man/man7d/iser.7d
deleted file mode 100644
index 952775ce88..0000000000
--- a/usr/src/man/man7d/iser.7d
+++ /dev/null
@@ -1,73 +0,0 @@
-'\" te
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH ISER 7D "Mar 30, 2009"
-.SH NAME
-iser \- iSCSI Extensions for Remote DMA driver
-.SH DESCRIPTION
-.sp
-.LP
-The iSER driver accelerates the iSCSI protocol by mapping the data transfer
-phases to Remote DMA (RDMA) operations. No iSER configuration is required for
-its use, but an RDMA-capable protocol (RCaP) must be configured and enabled on
-both target and initiator endpoints.
-.sp
-.LP
-Currently, InfiniBand RC is the supported RCaP, and for discovery IP over IB
-must be configured on both the initiator and target. If Infiniband (IB)
-hardware is present and an Infiniband reliable-connected (RC) connection can be
-established then an iSER-enabled initiator uses iSER connections to
-iSER-enabled targets. Otherwise the connection is established using IP-based
-connectivity.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/iser\fR\fR
-.ad
-.RS 28n
-32-bit ELF kernel driver
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/sparcv9/iser\fR\fR
-.ad
-.RS 28n
-64-bit SPARC ELF kernel drive
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/iser\fR\fR
-.ad
-.RS 28n
-64-bit AMD64 ELF kernel driver
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/iser.conf\fR\fR
-.ad
-.RS 28n
-Driver configuration file
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBiscsiadm\fR(1M), \fBitadm\fR(1M), \fBattributes\fR(5), \fBibd\fR(7D)
-.sp
-.LP
-\fISystem Administration Guide: Devices and File Systems\fR
-.sp
-.LP
-\fIRFC 3720 Internet Small Computer Systems Interface (iSCSI)\fR
-.sp
-.LP
-\fIRFC 5046 iSCSI Extensions for RDM\fR
diff --git a/usr/src/man/man7d/iwh.7d b/usr/src/man/man7d/iwh.7d
deleted file mode 100644
index 6adc1a1c49..0000000000
--- a/usr/src/man/man7d/iwh.7d
+++ /dev/null
@@ -1,78 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH IWH 7D "Aug 26, 2008"
-.SH NAME
-iwh \- Intel(R) WiFi Link 5100/5300 Driver
-.SH DESCRIPTION
-.sp
-.LP
-The \fBiwh\fR \fI802.11a/g/n\fR wireless NIC driver is a multi-threaded,
-loadable, clonable, GLDv3-based STREAMS driver supporting the Intel Shirley
-Peak WiFi chipset-based NIC's. Driver functions include controller
-initialization, wireless \fI802.11\fR infrastructure network connection, WEP
-and frame transmit and receive.
-.SH CONFIGURATION
-.sp
-.LP
-The \fBiwh\fR driver performs auto-negotiation to determine the data rate and
-mode. Supported \fI802.11b\fR data rates are 1, 2, 5.5 and 11 Mbits/sec.
-Supported \fI802.11g\fR data rates are 1, 2, 5.5, 11, 6, 9, 12, 18, 24, 36, 48
-and 54 Mbits/sec.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/dev/iwh\fR \fR
-.ad
-.RS 26n
-Special character device.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/iwh\fR \fR
-.ad
-.RS 26n
-32-bit ELF kernel module (x86).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/iwh\fR \fR
-.ad
-.RS 26n
-64-bit ELF kernel module (x86).
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture x86
-_
-Interface Stability Committed
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBdladm\fR(1M), \fBwificonfig\fR(1M), \fBattributes\fR(5), \fBgld\fR(7D),
-\fBdlpi\fR(7P)
-.sp
-.LP
-\fI802.11 - Wireless LAN Media Access Control and Physical Layer
-Specification\fR- IEEE, 2001.
diff --git a/usr/src/man/man7d/iwi.7d b/usr/src/man/man7d/iwi.7d
deleted file mode 100644
index 9c0c9118c3..0000000000
--- a/usr/src/man/man7d/iwi.7d
+++ /dev/null
@@ -1,94 +0,0 @@
-'\" te
-.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH IWI 7D "Mar 11, 2007"
-.SH NAME
-iwi \- Intel Pro. Wireless 802.11a/b/g IPW2200B/G IPW2915A/B/G Driver
-.SH DESCRIPTION
-.sp
-.LP
-The \fBiwi\fR \fI802.11b/g \fR wireless NIC driver is a multi-threaded,
-loadable, clonable, GLDv3-based STREAMS driver supporting the Data Link
-Provider Interface, \fBdlpi\fR(7P), on Intel Pro Wireless 2200BG 2915ABG
-chipset-based wireless NIC's. Driver functions include controller
-initialization, wireless \fI802.11b \fR infrastructure network connection, WEP
-and frame transmit and receive.
-.SH DRIVER CONFIGURATION
-.sp
-.LP
-The \fBiwi\fR driver performs auto-negotiation to determine the data rate and
-mode. Supported \fI802.11b \fR data rates are 1, 2, 5.5 and 11 Mbits/sec.
-Supported \fI802.11g\fR data rates are 1, 2, 5.5, 11, 6, 9, 12, 18, 24, 36, 48
-and 54 Mbits/sec.
-.sp
-.LP
-The \fBiwi\fR driver supports only BSS networks (also known as "ap" or
-"infrastructure" networks) and "open"(or "open-system") or "shared system"
-authentication. Only WEP encryption is currently supported. You perform
-configuration and administration tasks using the \fBdladm\fR(1M) and
-\fBwificonfig\fR(1M) utilities.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/dev/iwi*\fR\fR
-.ad
-.RS 25n
-Special character device.
-.RE
-
-.sp
-.ne 2
-.na
-\fB/kernel/drv/iwi\fR
-.ad
-.RS 25n
-32-bit ELF kernel module (x86).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/iwi\fR\fR
-.ad
-.RS 25n
-64-bit ELF kernel module (x86).
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for a description of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture x86
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBdladm\fR(1M), \fBwificonfig\fR(1M), \fBattributes\fR(5), \fBgld\fR(7D),
-\fBdlpi\fR(7P)
-.sp
-.LP
-\fIANSI/IEEE Std 802.11- Standard for Wireless LAN Technology\fR \(em 1999
-.sp
-.LP
-\fIIEEE Std 802.11a- Standard for Wireless LAN Technology-Rev. A\fR\(em 2003
-.sp
-.LP
-\fIIEEE Std 802.11b - Standard for Wireless LAN Technology-Rev. B \fR\(em
-2003
-.sp
-.LP
-\fIIEEE Std 802.11g- Standard for Wireless LAN Technology -Rev. G\fR\(em
-2003
diff --git a/usr/src/man/man7d/iwn.7d b/usr/src/man/man7d/iwn.7d
deleted file mode 100644
index 3769adb11d..0000000000
--- a/usr/src/man/man7d/iwn.7d
+++ /dev/null
@@ -1,59 +0,0 @@
-.\"
-.\" This file and its contents are supplied under the terms of the
-.\" Common Development and Distribution License ("CDDL"), version 1.0.
-.\" You may only use this file in accordance with the terms of version
-.\" 1.0 of the CDDL.
-.\"
-.\" A full copy of the text of the CDDL should have accompanied this
-.\" source. A copy of the CDDL is also available via the Internet at
-.\" http://www.illumos.org/license/CDDL.
-.\"
-.\"
-.\" Copyright 2016 Hans Rosenfeld <rosenfeld@grumpf.hope-2000.org>
-.\"
-.Dd Jun 11, 2016
-.Dt IWN 7D
-.Os
-.Sh NAME
-.Nm iwn
-.Nd Intel(R) WiFi Link 4965 and 100/1000/2000/5000/6000 Series Driver
-.Sh DESCRIPTION
-The
-.Nm
-.Em 802.11a/g/n
-wireless NIC driver is a multi-threaded, loadable, clonable,
-GLDv3-based STREAMS driver supporting the Intel Wifi Link 4965, 100,
-1000, 2000, 5000, and 6000 series of NIC's.
-Driver functions include controller initialization, wireless
-.Em 802.11
-infrastructure network connection, WEP and frame transmit and receive.
-.Sh CONFIGURATION
-The
-.Nm
-driver performs auto-negotiation to determine the data rate and mode
-Supported data rates are 1, 2, 5.5, and 11 Mbit/sec for
-.Em 802.11b
-and
-.Em 802.11g ,
-as well as 6, 9, 12, 18, 24, 36, 48, and 54 Mbit/sec for
-.Em 802.11a
-and
-.Em 802.11g .
-.Sh FILES
-.Bl -tag -compact -width Pa
-.It Pa /dev/iwn
-Special character device.
-.It Pa /kernel/drv/iwn
-32-bit ELF kernel module (x86).
-.It Pa /kernel/drv/amd64/iwn
-64-bit ELF kernel module (x86).
-.It Pa /kernel/firmware/iwn/*.ucode
-.Nm
-firmware files
-.El
-.Sh SEE ALSO
-.Xr dladm 1M ,
-.Xr wificonfig 1M
-.Pp
-.Em 802.11 - Wireless LAN Media Access Control and Physical Layer
-Specification- IEEE, 2001
diff --git a/usr/src/man/man7d/ixgbe.7d b/usr/src/man/man7d/ixgbe.7d
deleted file mode 100644
index 5b7f8e25e2..0000000000
--- a/usr/src/man/man7d/ixgbe.7d
+++ /dev/null
@@ -1,193 +0,0 @@
-'\" te
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 2012, Nexenta Systems, Inc. All rights reserved.
-.\" Copyright 2016, OmniTI Computer Consulting, Inc. All rights reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
-.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH IXGBE 7D "Jan 10, 2020"
-.SH NAME
-ixgbe \- Intel 10Gb PCI Express NIC Driver
-.SH SYNOPSIS
-.nf
-\fB/dev/ixgbe*\fR
-.fi
-
-.SH DESCRIPTION
-The \fBixgbe\fR 10 Gigabit Ethernet driver is a multi-threaded, loadable,
-clonable, GLD-based STREAMS driver supporting the Data Link Provider Interface,
-\fBdlpi\fR(7P), on Intel 10-Gigabit PCI Express Ethernet controllers.
-.sp
-.LP
-The \fBixgbe\fR driver functions include controller initialization, frame
-transmit and receive, promiscuous and multicast support, and error recovery and
-reporting.
-.sp
-.LP
-The \fBixgbe\fR driver supports the following Intel 10-Gigabit PCI Express Ethernet controllers:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Intel Ethernet Controller 82598EB Family
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Intel Ethernet Controller 82599EB (X520) Family
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Intel Ethernet Controller X540 Family
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Intel Ethernet Controller X550 Family
-.RE
-.LP
-The \fBixgbe\fR driver and hardware support auto-negotiation, a protocol
-specified by the \fIIEEE 802.3ae\fR specification.
-.SH APPLICATION PROGRAMMING INTERFACE
-The cloning character-special device, \fB/dev/ixgbe\fR, is used to access all
-Intel 10-Gigabit PCI Express Ethernet devices installed within the system.
-.sp
-.LP
-The \fBixgbe\fR driver is managed by the \fBdladm\fR(1M) command line utility,
-which allows VLANs to be defined on top of \fBixgbe\fR instances and for
-\fBixgbe\fR instances to be aggregated. See \fBdladm\fR(1M) for more details.
-.sp
-.LP
-You must send an explicit DL_ATTACH_REQ message to associate the opened stream
-with a particular device (PPA). The PPA ID is interpreted as an unsigned
-integer data type and indicates the corresponding device instance (unit)
-number. The driver returns an error (DL_ERROR_ACK) if the PPA field value does
-not correspond to a valid device instance number for the system. The device is
-initialized on first attach and de-initialized (stopped) at last detach.
-.sp
-.LP
-The values returned by the driver in the DL_INFO_ACK primitive in response to
-your DL_INFO_REQ are:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Maximum SDU for Intel 82598EB is 16366.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Maximum SDU for Intel 82599EB, X540 and X550 is 15500.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Minimum SDU is 0.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-DLSAP address length is 8.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-MAC type is DL_ETHER.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-SAP (Service Access Point) length value is -2, meaning the physical address
-component is followed immediately by a 2-byte SAP component within the DLSAP
-address.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Broadcast address value is the Ethernet/IEEE broadcast address
-(FF:FF:FF:FF:FF:FF).
-.sp
-Once in the DL_ATTACHED state, you must send a DL_BIND_REQ to associate a
-particular SAP with the stream.
-.RE
-.SH CONFIGURATION
-By default, the \fBixgbe\fR driver performs auto-negotiation to select the link
-speed and mode. Link speed and mode can only be 10000 Mbps full-duplex for fiber, and only 10000, 1000, or 100 Mbps full-duplex for copper. See the
-\fIIEEE802.3\fR standard for more information.
-.SH FILES
-.ne 2
-.na
-\fB\fB/dev/ixgbe*\fR\fR
-.ad
-.RS 29n
-Special character device.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/ixgbe\fR\fR
-.ad
-.RS 29n
-Device driver (x86)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/sparcv9/ixgbe\fR\fR
-.ad
-.RS 29n
-Device driver (SPARC)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/ixgbe.conf\fR\fR
-.ad
-.RS 29n
-Driver configuration file
-.RE
-
-.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture SPARC, x86
-_
-Interface Stability Committed
-.TE
-
-.SH SEE ALSO
-\fBdladm\fR(1M), \fBnetstat\fR(1M), \fBdriver.conf\fR(4), \fBattributes\fR(5),
-\fBstreamio\fR(7I), \fBdlpi\fR(7P)
-.sp
-.LP
-\fIWriting Device Drivers\fR
-.sp
-.LP
-\fISTREAMS Programming Guide\fR
-.sp
-.LP
-\fINetwork Interfaces Programmer's Guide\fR
-.sp
-.LP
-\fIIEEE 802.3ae Specification\fR, IEEE - 2002
diff --git a/usr/src/man/man7d/kmdb.7d b/usr/src/man/man7d/kmdb.7d
deleted file mode 100644
index d181a42942..0000000000
--- a/usr/src/man/man7d/kmdb.7d
+++ /dev/null
@@ -1,43 +0,0 @@
-'\" te
-.\" Copyright (c) 2004 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH KMDB 7D "May 8, 2004"
-.SH NAME
-kmdb \- Kernel debugger
-.SH DESCRIPTION
-.sp
-.LP
-The \fBkmdb\fR driver is the mechanism used by mdb to invoke and control
-\fBkmdb\fR. This is \fBnot\fR a public interface.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB/dev/kmdb\fR
-.ad
-.RS 13n
-Kernel debugger driver.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Private
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBattributes\fR(5)
diff --git a/usr/src/man/man7d/ksensor.7d b/usr/src/man/man7d/ksensor.7d
deleted file mode 100644
index 1c3449f7a5..0000000000
--- a/usr/src/man/man7d/ksensor.7d
+++ /dev/null
@@ -1,41 +0,0 @@
-.\"
-.\" This file and its contents are supplied under the terms of the
-.\" Common Development and Distribution License ("CDDL"), version 1.0.
-.\" You may only use this file in accordance with the terms of version
-.\" 1.0 of the CDDL.
-.\"
-.\" A full copy of the text of the CDDL should have accompanied this
-.\" source. A copy of the CDDL is also available via the Internet at
-.\" http://www.illumos.org/license/CDDL.
-.\"
-.\"
-.\" Copyright 2020 Oxide Computer Company
-.\"
-.Dd June 9, 2020
-.Dt KSENSOR 7D
-.Os
-.Sh NAME
-.Nm ksensor
-.Nd kernel sensor driver
-.Sh SYNOPSIS
-.In sys/sensors.h
-.Pp
-.Pa /dev/sensors/
-.Sh DESCRIPTION
-The
-.Nm
-driver provides access to sensors that are built using the kernel sensor
-framework.
-Sensors register with the framework are automatically made available to
-the system and used with the fault management architecture
-.Pq FMA .
-.Pp
-The file system location and programming interface to the
-.Nm
-driver are considered
-.Sy Volatile ,
-subject to change without notice, and should not be used directly.
-Sensor information can be dumped through the FMA developer utility
-.Sy fmtopo .
-.Sh SEE ALSO
-.Xr fmadm 1M
diff --git a/usr/src/man/man7d/kstat.7d b/usr/src/man/man7d/kstat.7d
deleted file mode 100644
index d468e9489d..0000000000
--- a/usr/src/man/man7d/kstat.7d
+++ /dev/null
@@ -1,27 +0,0 @@
-'\" te
-.\" Copyright (c) 1994, Sun Microsystems, Inc.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH KSTAT 7D "May 26, 1994"
-.SH NAME
-kstat \- kernel statistics driver
-.SH DESCRIPTION
-.sp
-.LP
-The \fBkstat\fR driver is the mechanism used by the \fBkstat\fR(3KSTAT) library
-to extract kernel statistics. This is NOT a public interface.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/dev/kstat\fR\fR
-.ad
-.RS 14n
-kernel statistics driver
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBkstat\fR(3KSTAT), \fBkstat\fR(9S)
diff --git a/usr/src/man/man7d/ksyms.7d b/usr/src/man/man7d/ksyms.7d
deleted file mode 100644
index fe094d97b8..0000000000
--- a/usr/src/man/man7d/ksyms.7d
+++ /dev/null
@@ -1,113 +0,0 @@
-'\" te
-.\" Copyright (c) 2000 Sun Microsystems, Inc.
-.\" All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH KSYMS 7D "Dec 11, 2000"
-.SH NAME
-ksyms \- kernel symbols
-.SH SYNOPSIS
-.LP
-.nf
-\fB/dev/ksyms\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The file \fB/dev/ksyms\fR is a character special file that allows read-only
-access to an \fBELF\fR format image containing two sections: a symbol table
-and a corresponding string table. The contents of the symbol table reflect the
-symbol state of the currently running kernel. You can determine the size of
-the image with the \fBfstat\fR(\|) system call. The recommended method for
-accessing the \fB/dev/ksyms\fR file is by using the \fBELF\fR access library.
-See \fBelf\fR(3ELF) for details. If you are not familiar with \fBELF\fR
-format, see \fBa.out\fR(4).
-.sp
-.LP
-\fB/dev/ksyms\fR is an executable for the processor on which you are accessing
-it. It contains \fBELF\fR program headers which describe the text and data
-segment(s) in kernel memory. Since \fB/dev/ksyms\fR has no text or data, the
-fields specific to file attributes are initialized to \fINULL\fR. The remaining
-fields describe the text or data segment(s) in kernel memory.
-.sp
-.ne 2
-.na
-\fB\fBSymbol table\fR\fR
-.ad
-.RS 16n
-The \fBSYMTAB\fR section contains the symbol table entries present in the
-currently running kernel. This section is ordered as defined by the \fBELF\fR
-definition with locally-defined symbols first, followed by globally-defined
-symbols. Within symbol type, the symbols are ordered by kernel module load
-time. For example, the kernel file symbols are first, followed by the first
-module's symbols, and so on, ending with the symbols from the last module
-loaded.
-.sp
-The section header index (st_shndx) field of each symbol entry in the symbol
-table is set to \fBSHN_ABS,\fR because any necessary symbol relocations are
-performed by the kernel link editor at module load time.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBString table\fR\fR
-.ad
-.RS 16n
-The \fBSTRTAB\fR section contains the symbol name strings that the symbol
-table entries reference.
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBkernel\fR(1M), \fBstat\fR(2), \fBelf\fR(3ELF), \fBkvm_open\fR(3KVM),
-\fBa.out\fR(4), \fBmem\fR(7D)
-.SH WARNINGS
-.sp
-.LP
-The kernel is dynamically configured. It loads kernel modules when necessary.
-Because of this aspect of the system, the symbol information present in the
-running system can vary from time to time, as kernel modules are loaded and
-unloaded.
-.sp
-.LP
-When you open the \fB/dev/ksyms\fR file, you have access to an \fBELF\fR
-image which represents a snapshot of the state of the kernel symbol information
-at that instant in time. While the \fB/dev/ksyms\fR file remains open, kernel
-module autounloading is disabled, so that you are protected from the
-possibility of acquiring stale symbol data. Note that new modules can still be
-loaded, however. If kernel modules are loaded while you have the
-\fB/dev/ksyms\fR file open, the snapshot held by you will not be updated. In
-order to have access to the symbol information of the newly loaded modules, you
-must first close and then reopen the \fB/dev/ksyms\fR file. Be aware that the
-size of the \fB/dev/ksyms\fR file will have changed. You will need to use the
-\fBfstat()\fR function (see \fBstat\fR(2)) to determine the new size of the
-file.
-.sp
-.LP
-Avoid keeping the \fB/dev/ksyms\fR file open for extended periods of time,
-either by using \fBkvm_open\fR(3KVM) of the default namelist file or with a
-direct open. There are two reasons why you should not hold \fB/dev/ksyms\fR
-open. First, the system's ability to dynamically configure itself is partially
-disabled by the locking down of loaded modules. Second, the snapshot of symbol
-information held by you will not reflect the symbol information of modules
-loaded after your initial open of \fB/dev/ksyms\fR.
-.sp
-.LP
-Note that the \fBksyms\fR driver is a loadable module, and that the kernel
-driver modules are only loaded during an open system call. Thus it is possible
-to run \fBstat\fR(2) on the \fB/dev/ksyms\fR file without causing the
-\fBksyms\fR driver to be loaded. In this case, the file size returned is
-\fBUNKNOWN_SIZE\fR. A solution for this behavior is to first open the
-\fB/dev/ksyms\fR file, causing the \fBksyms\fR driver to be loaded (if
-necessary). You can then use the file descriptor from this open in a
-\fBfstat\fR(\|) system call to get the file's size.
-.SH NOTES
-.sp
-.LP
-The kernel virtual memory access library (\fBlibkvm\fR) routines use
-\fB/dev/ksyms\fR as the default namelist file. See \fBkvm_open\fR(3KVM) for
-details.
diff --git a/usr/src/man/man7d/llc1.7d b/usr/src/man/man7d/llc1.7d
deleted file mode 100644
index ae9c01c024..0000000000
--- a/usr/src/man/man7d/llc1.7d
+++ /dev/null
@@ -1,233 +0,0 @@
-'\" te
-.\" Copyright (c) 1997, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH LLC1 7D "Feb 13, 1997"
-.SH NAME
-llc1 \- Logical Link Control Protocol Class 1 Driver
-.SH SYNOPSIS
-.LP
-.nf
-\fB#include <sys/stropts.h>\fR
-.fi
-
-.LP
-.nf
-\fB#include <sys/ethernet.h>\fR
-.fi
-
-.LP
-.nf
-\fB#include <sys/dlpi.h>\fR
-.fi
-
-.LP
-.nf
-\fB#include <sys/llc1.h>\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBllc1\fR driver is a multi-threaded, loadable, clonable, STREAMS
-multiplexing driver supporting the connectionless Data Link Provider Interface,
-\fBdlpi\fR(7P), implementing IEEE 802.2 Logical Link Control Protocol Class 1
-over a STREAM to a MAC level driver. Multiple MAC level interfaces installed
-within the system can be supported by the driver. The \fBllc1\fR driver
-provides basic support for the LLC1 protocol. Functions provided include frame
-transmit and receive, XID, and TEST, multicast support, and error recovery and
-reporting.
-.sp
-.LP
-The cloning, character-special device, \fB/dev/llc1\fR, is used to access all
-LLC1 controllers configured under \fBllc1\fR.
-.sp
-.LP
-The \fBllc1\fR driver is a "Style 2" Data Link Service provider. All messages
-of types \fBM_PROTO\fR and \fBM_PCPROTO\fR are interpreted as DLPI primitives.
-An explicit \fBDL_ATTACH_REQ\fR message by the user is required to associate
-the opened stream with a particular device (\fBppa\fR). The \fBppa\fR ID is
-interpreted as an unsigned long and indicates the corresponding device instance
-(unit) number. An error (\fBDL_ERROR_ACK\fR) is returned by the driver if the
-\fBppa\fR field value does not correspond to a valid device instance number for
-this system.
-.sp
-.LP
-The values returned by the driver in the \fBDL_INFO_ACK\fR primitive in
-response to the \fBDL_INFO_REQ\fR from the user are as follows:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The maximum Service Data UNIT (SDU) is derived from the MAC layer linked below
-the driver. In the case of an Ethernet driver, the SDU will be 1497.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The minimum SDU is 0.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The MAC type is \fBDL_CSMACD\fR or \fBDL_TPR\fR as determined by the driver
-linked under \fBllc1.\fR If the driver reports that it is \fBDL_ETHER,\fR it
-will be changed to \fBDL_CSMACD;\fR otherwise the type is the same as the MAC
-type.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The \fBsap\fR length value is \(mi1, meaning the physical address component is
-followed immediately by a 1-octet \fBsap\fR component within the DLSAP address.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The service mode is \fBDL_CLDLS.\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The MAC type is \fBDL_CSMACD\fR or \fBDL_TPR\fR as determined by the driver
-linked under \fBllc1.\fR If the driver reports that it is \fBDL_ETHER,\fR it
-will be changed to \fBDL_CSMACD;\fR otherwise the type is the same as the MAC
-type.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The \fBdlsap\fR address length is 7.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-No optional quality of service (QOS) support is included at present, so the QOS
-fields should be initialized to 0.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The DLPI version is \fBDL_VERSION_2.\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The provider style is \fBDL_STYLE2.\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The broadcast address value is the broadcast address returned from the lower
-level driver.
-.RE
-.sp
-.LP
-Once in the \fBDL_ATTACHED\fR state, the user must send a \fBDL_BIND_REQ\fR to
-associate a particular Service Access Point (SAP) with the stream. The
-\fBllc1\fR driver interprets the \fBsap\fR field within the \fBDL_BIND_REQ\fR
-as an IEEE 802.2 "SAP," therefore valid values for the \fBsap\fR field are in
-the [0-0xFF] range with only even values being legal.
-.sp
-.LP
-The \fBllc1\fR driver DLSAP address format consists of the 6-octet physical
-(e.g., Ethernet) address component followed immediately by the 1-octet
-\fBsap\fR (type) component producing a 7-octet DLSAP address. Applications
-should \fInot\fR hard-code to this particular implementation-specific DLSAP
-address format, but use information returned in the \fBDL_INFO_ACK\fR primitive
-to compose and decompose DLSAP addresses. The \fBsap\fR length, full DLSAP
-length, and \fBsap\fR/physical ordering are included within the
-\fBDL_INFO_ACK.\fR The physical address length can be computed by subtracting
-the absolute value of the \fBsap\fR length from the full DLSAP address length
-or by issuing the \fBDL_PHYS_ADDR_REQ\fR to obtain the current physical
-address associated with the stream.
-.sp
-.LP
-Once in the \fBDL_BOUND\fR state, the user may transmit frames on the LAN by
-sending \fBDL_UNITDATA_REQ\fR messages to the \fBllc1\fR driver. The
-\fBllc1\fR driver will route received frames up all open and bound streams
-having a \fBsap\fR which matches the IEEE 802.2 DSAP as \fBDL_UNITDATA_IND\fR
-messages. Received frames are duplicated and routed up multiple open streams if
-necessary. The DLSAP address contained within the \fBDL_UNITDATA_REQ\fR and
-\fBDL_UNITDATA_IND\fR messages consists of both the \fBsap\fR (type) and
-physical (Ethernet) components.
-.sp
-.LP
-In addition to the mandatory, connectionless DLPI message set, the driver
-additionally supports the following primitives:
-.sp
-.LP
-The \fBDL_ENABMULTI_REQ\fR and \fBDL_DISABMULTI_REQ\fR primitives
-enable/disable reception of specific multicast group addresses. A set of
-multicast addresses may be iteratively created and modified on a per-stream
-basis using these primitives. These primitives are accepted by the driver in
-any driver state that is valid while still being attached to the \fBppa\fR.
-.sp
-.LP
-The \fBDL_PHYS_ADDR_REQ\fR primitive returns the 6-octet physical address
-currently associated (attached) to the stream in the \fBDL_PHYS_ADDR_ACK\fR
-primitive. This primitive is valid only in states following a successful
-\fBDL_ATTACH_REQ.\fR
-.sp
-.LP
-The \fBDL_SET_PHYS_ADDR_REQ\fR primitive changes the 6-octet physical address
-currently associated (attached) to this stream. Once changed, all streams
-subsequently opened and attached to this device will obtain this new physical
-address. Once changed, the physical address will remain set until this
-primitive is used to change the physical address again or the system is
-rebooted, whichever occurs first.
-.sp
-.LP
-The \fBDL_XID_REQ/DL_TEST_REQ\fR primitives provide the means for a user to
-issue an \fBLLC XID\fR or \fBTEST\fR request message. A response to one of
-these messages will be in the form of a \fBDL_XID_CON/DL_TEST_CON\fR message.
-.sp
-.LP
-The \fBDL_XID_RES/DL_TEST_RES\fR primitives provide a way for the user to
-respond to the receipt of an \fBXID\fR or \fBTEST\fR message that was
-received as a \fBDL_XID_IND/DL_TEST_IND\fR message.
-.sp
-.LP
-\fBXID\fR and \fBTEST\fR will be automatically processed by \fBllc1\fR if the
-\fBDL_AUTO_XID/DL_AUTO_TEST\fR bits are set in the \fBDL_BIND_REQ.\fR
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/dev/llc1\fR\fR
-.ad
-.RS 13n
-cloning, character-special device
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture x86
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBattributes\fR(5), \fBdlpi\fR(7P)
diff --git a/usr/src/man/man7d/lockstat.7d b/usr/src/man/man7d/lockstat.7d
deleted file mode 100644
index 8bd748536f..0000000000
--- a/usr/src/man/man7d/lockstat.7d
+++ /dev/null
@@ -1,50 +0,0 @@
-'\" te
-.\" Copyright (c) 2003Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH LOCKSTAT 7D "Dec 10, 2017"
-.SH NAME
-lockstat \- DTrace kernel lock instrumentation provider
-.SH DESCRIPTION
-.LP
-The \fBlockstat\fR driver is a DTrace dynamic tracing provider that performs
-dynamic instrumentation for locking primitives in the kernel.
-.sp
-.LP
-The \fBlockstat\fR provider makes probes available that you can use to discern
-lock contention statistics, or to understand virtually any aspect of locking
-behavior inside the operating system kernel. The \fBlockstat\fR(1M) command is
-implemented as a DTrace consumer that uses the lockstat provider to gather raw
-data.
-.sp
-.LP
-The \fBlockstat\fR driver is not a public interface and you access the
-instrumentation offered by this provider through DTrace. Refer to the
-\fIDynamic Tracing Guide\fR for a description of the public documented
-interfaces available for the DTrace facility and the probes offered by the
-\fBlockstat\fR provider.
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for a description of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Private
-.TE
-
-.SH SEE ALSO
-.LP
-\fBdtrace\fR(1M), \fBlockstat\fR(1M), \fBattributes\fR(5), \fBdtrace\fR(7D)
-.sp
-.LP
-\fIDynamic Tracing Guide\fR:
-.sp
-.LP
-https://illumos.org/books/dtrace/
diff --git a/usr/src/man/man7d/lofi.7d b/usr/src/man/man7d/lofi.7d
deleted file mode 100644
index 81fffc6354..0000000000
--- a/usr/src/man/man7d/lofi.7d
+++ /dev/null
@@ -1,138 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH LOFI 7D "Nov 25, 2008"
-.SH NAME
-lofi \- Loopback file driver
-.SH DESCRIPTION
-.sp
-.LP
-The \fBlofi\fR file driver exports a file as a block device, enabling system
-utilities such as \fBfstyp\fR(1M), \fBfsck\fR(1M) and \fBmount\fR(1M) to
-operate on underlying file system images (including CD-ROM and FAT floppy
-images) contained on the block device. Reads and writes to the block device are
-translated to reads and writes on the exported file. See \fBlofiadm\fR(1M) for
-examples.
-.sp
-.LP
-File block device entries are contained in \fB/dev/lofi\fR. The
-\fB/dev/rlofi\fR file contains the character (or raw) device entries. Entries
-are in the form of decimal numbers and are assigned through
-\fBlofiadm\fR(1M). When created, these device entries are owned by root, in
-group sys and have permissions of 0600. Ownership, group, and permission
-settings can be altered, however there may be ramifications. See
-\fBlofiadm\fR(1M) for more information.
-.sp
-.LP
-\fBlofi\fR devices can be compressed. See \fBlofiadm\fR(1M) for more
-information.
-.sp
-.LP
-Files exported through \fBlofi\fR can also be encrypted. See \fBlofiadm\fR(1M)
-for details on how to specify encryption keys.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/dev/lofictl\fR\fR
-.ad
-.sp .6
-.RS 4n
-Master control device
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/lofi/\fIn\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Block device for file \fIn\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/rlofi/\fIn\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Character device for file \fIn\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/lofi\fR\fR
-.ad
-.sp .6
-.RS 4n
-32-bit driver
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/sparcv9/lofi\fR\fR
-.ad
-.sp .6
-.RS 4n
-64-bit driver (SPARC)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/lofi\fR\fR
-.ad
-.sp .6
-.RS 4n
-64-bit driver (x86)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/lofi.conf\fR\fR
-.ad
-.sp .6
-.RS 4n
-Driver configuration file. (Do not alter).
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for a description of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture SPARC, x86
-_
-Interface Stability Committed
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBfstyp\fR(1M), \fBfsck\fR(1M), \fBmount\fR(1M), \fBlofiadm\fR(1M),
-\fBnewfs\fR(1M), \fBattributes\fR(5), \fBlofs\fR(7FS)
-.SH NOTES
-.sp
-.LP
-Just as you would not directly access a disk device that has mounted file
-systems, you should not access a file associated with a block device except
-through the \fBlofi\fR file driver.
-.sp
-.LP
-For compatibility purposes, a raw device is also exported with the block
-device. (For example, \fBnewfs\fR(1M)).
diff --git a/usr/src/man/man7d/log.7d b/usr/src/man/man7d/log.7d
deleted file mode 100644
index e6d7fef23d..0000000000
--- a/usr/src/man/man7d/log.7d
+++ /dev/null
@@ -1,291 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 1997, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH LOG 7D "Mar 11, 1998"
-.SH NAME
-log \- interface to STREAMS error logging and event tracing
-.SH SYNOPSIS
-.LP
-.nf
-\fB#include <sys/strlog.h>\fR
-.fi
-
-.LP
-.nf
-\fB#include <sys/log.h>\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBlog\fR is a STREAMS software device driver that provides an interface for
-console logging and for the STREAMS error logging and event tracing processes
-(see \fBstrerr\fR(1M), and \fBstrace\fR(1M)). \fBlog\fR presents two separate
-interfaces: a function call interface in the kernel through which STREAMS
-drivers and modules submit \fBlog\fR messages; and a set of \fBioctl\fR(2)
-requests and STREAMS messages for interaction with a user level console logger,
-an error logger, a trace logger, or processes that need to submit their own
-\fBlog\fR messages.
-.SS "Kernel Interface"
-.sp
-.LP
-\fBlog\fR messages are generated within the kernel by calls to the function
-\fBstrlog()\fR:
-.sp
-.in +2
-.nf
-strlog(short \fImid\fR,
- short \fIsid\fR,
- char \fIlevel\fR,
- ushort_t \fIflags\fR,
- char *\fBfmt\fR,
- unsigned \fIarg1\fR\fB\|.\|.\|.\|
-);\fR
-.fi
-.in -2
-
-.sp
-.LP
-Required definitions are contained in \fB<sys/strlog.h>\fR, \fB<sys/log.h>\fR,
-and \fB<sys/syslog.h>\fR\&. \fImid\fR is the STREAMS module id number for the
-module or driver submitting the \fBlog\fR message. \fIsid\fR is an internal
-sub-id number usually used to identify a particular minor device of a driver.
-\fIlevel\fR is a tracing level that allows for selective screening out of low
-priority messages from the tracer. \fIflags\fR are any combination of
-\fBSL_ERROR\fR (the message is for the error logger), \fBSL_TRACE\fR (the
-message is for the tracer), \fBSL_CONSOLE\fR (the message is for the console
-logger), \fBSL_FATAL\fR (advisory notification of a fatal error), and
-\fBSL_NOTIFY\fR (request that a copy of the message be mailed to the system
-administrator). \fIfmt\fR is a \fBprintf\fR(3C) style format string, except
-that \fB%s\fR, \fB%e\fR, \fB%E\fR, \fB%g\fR, and \fB%G\fR conversion
-specifications are not handled. Up to \fBNLOGARGS\fR (in this release, three)
-numeric or character arguments can be provided.
-.SS "User Interface"
-.sp
-.LP
-\fBlog\fR is implemented as a cloneable device, it clones itself without
-intervention from the system clone device. Each open of \fB/dev/log\fR obtains
-a separate stream to \fBlog\fR. In order to receive \fBlog\fR messages, a
-process must first notify \fBlog\fR whether it is an error logger, trace
-logger, or console logger using a STREAMS \fBI_STR ioctl\fR call (see below).
-For the console logger, the \fBI_STR ioctl\fR has an \fBic_cmd\fR field of
-\fBI_CONSLOG\fR, with no accompanying data. For the error logger, the \fBI_STR
-ioctl\fR has an \fBic_cmd\fR field of \fBI_ERRLOG\fR, with no accompanying
-data. For the trace logger, the \fBioctl\fR has an \fBic_cmd\fR field of
-\fBI_TRCLOG\fR, and must be accompanied by a data buffer containing an array of
-one or more struct \fBtrace_ids\fR elements.
-.sp
-.in +2
-.nf
-struct trace_ids {
- short ti_mid;
- short ti_sid;
- char ti_level;
-};
-.fi
-.in -2
-
-.sp
-.LP
-Each \fBtrace_ids\fR structure specifies a \fImid\fR, \fIsid\fR, and
-\fIlevel\fR from which messages will be accepted. \fBstrlog\fR(9F) will accept
-messages whose \fImid\fR and \fIsid\fR exactly match those in the
-\fBtrace_ids\fR structure, and whose level is less than or equal to the level
-given in the \fBtrace_ids\fR structure. A value of \(mi1 in any of the fields
-of the \fBtrace_ids\fR structure indicates that any value is accepted for that
-field.
-.sp
-.LP
-Once the logger process has identified itself using the \fBioctl\fR call,
-\fBlog\fR will begin sending up messages subject to the restrictions noted
-above. These messages are obtained using the \fBgetmsg\fR(2) function. The
-control part of this message contains a \fBlog_ctl\fR structure, which
-specifies the \fImid\fR, \fIsid\fR, \fIlevel\fR, \fIflags\fR, time in ticks
-since boot that the message was submitted, the corresponding time in seconds
-since Jan. 1, 1970, a sequence number, and a priority. The time in seconds
-since 1970 is provided so that the date and time of the message can be easily
-computed, and the time in ticks since boot is provided so that the relative
-timing of \fBlog\fR messages can be determined.
-.sp
-.in +2
-.nf
-struct log_ctl {
- short mid;
- short sid;
- char level; /* level of message for tracing */
- short flags; /* message disposition */
-#if defined(_LP64) || defined(_I32LPx)
- clock32_t ltime; /* time in machine ticks since boot */
- time32_t ttime; /* time in seconds since 1970 */
-#else
- clock_t ltime;
- time_t ttime;
-#endif
- int seq_no; /* sequence number */
- int pri; /* priority = (facility|level) */
-};
-.fi
-.in -2
-
-.sp
-.LP
-The priority consists of a priority code and a facility code, found in
-\fB<sys/syslog.h>\fR\&. If \fBSL_CONSOLE\fR is set in \fIflags\fR, the priority
-code is set as follows: If \fBSL_WARN\fR is set, the priority code is set to
-\fBLOG_WARNING\fR; If \fBSL_FATAL\fR is set, the priority code is set to
-\fBLOG_CRIT\fR; If \fBSL_ERROR\fR is set, the priority code is set to
-\fBLOG_ERR\fR; If \fBSL_NOTE\fR is set, the priority code is set to
-\fBLOG_NOTICE\fR; If \fBSL_TRACE\fR is set, the priority code is set to
-\fBLOG_DEBUG\fR; If only \fBSL_CONSOLE\fR is set, the priority code is set to
-\fBLOG_INFO\fR. Messages originating from the kernel have the facility code set
-to \fBLOG_KERN\fR. Most messages originating from user processes will have the
-facility code set to \fBLOG_USER\fR.
-.sp
-.LP
-Different sequence numbers are maintained for the error and trace logging
-streams, and are provided so that gaps in the sequence of messages can be
-determined (during times of high message traffic some messages may not be
-delivered by the logger to avoid hogging system resources). The data part of
-the message contains the unexpanded text of the format string (null
-terminated), followed by \fBNLOGARGS\fR words for the arguments to the format
-string, aligned on the first word boundary following the format string.
-.sp
-.LP
-A process may also send a message of the same structure to \fBlog\fR, even if
-it is not an error or trace logger. The only fields of the \fBlog_ctl\fR
-structure in the control part of the message that are accepted are the
-\fIlevel\fR, \fIflags\fR, and \fIpri\fR fields; all other fields are filled in
-by \fBlog\fR before being forwarded to the appropriate logger. The data portion
-must contain a null terminated format string, and any arguments (up to
-\fBNLOGARGS\fR) must be packed, 32-bits each, on the next 32-bit boundary
-following the end of the format string.
-.sp
-.LP
-\fBENXIO\fR is returned for \fBI_TRCLOG\fR ioctls without any \fBtrace_ids\fR
-structures, or for any unrecognized \fBioctl\fR calls. The driver silently
-ignores incorrectly formatted \fBlog\fR messages sent to the driver by a user
-process (no error results).
-.sp
-.LP
-Processes that wish to write a message to the console logger may direct their
-output to \fB/dev/conslog\fR, using either \fBwrite\fR(2) or \fBputmsg\fR(2).
-.SS "Driver Configuration"
-.sp
-.LP
-The following driver configuration properties may be defined in the
-\fBlog.conf\fR file.
-.sp
-.ne 2
-.na
-\fBmsgid=1\fR
-.ad
-.RS 11n
-If \fBmsgid=1\fR, each message will be preceded by a message ID as described in
-\fBsyslogd\fR(1M).
-.RE
-
-.sp
-.ne 2
-.na
-\fBmsgid=0\fR
-.ad
-.RS 11n
- If \fBmsgid=0\fR, message IDs will not be generated. This property is unstable
-and may be removed in a future release.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fR\fBI_ERRLOG\fR registration.
-.sp
-.in +2
-.nf
-struct strioctl ioc;
-ioc.ic_cmd = I_ERRLOG;
-ioc.ic_timout = 0; /* default timeout (15 secs.) */
-ioc.ic_len = 0;
-ioc.ic_dp = NULL;
-ioctl(log, I_STR, &ioc);
-.fi
-.in -2
-
-.LP
-\fBExample 2 \fR\fBI_TRCLOG\fR registration.
-.sp
-.in +2
-.nf
-struct trace_ids tid[2];
-tid[0].ti_mid = 2;
-tid[0].ti_sid = 0;
-tid[0].ti_level = 1;
-tid[1].ti_mid = 1002;
-tid[1].ti_sid = \(mi1; /* any sub-id will be allowed */
-tid[1].ti_level = \(mi1; /* any level will be allowed */
-ioc.ic_cmd = I_TRCLOG;
-ioc.ic_timout = 0;
-ioc.ic_len = 2 * sizeof(struct trace_ids);
-ioc.ic_dp = (char *)tid;
-ioctl(log, I_STR, &ioc);
-.fi
-.in -2
-
-.sp
-.LP
-Example of submitting a \fBlog\fR message (no arguments):
-
-.sp
-.in +2
-.nf
-struct strbuf ctl, dat;
-struct log_ctl lc;
-char *message = "Don't forget to pick up some milk
- on the way home";
-ctl.len = ctl.maxlen = sizeof(lc);
-ctl.buf = (char *)&lc;
-dat.len = dat.maxlen = strlen(message);
-dat.buf = message;
-lc.level = 0;
-lc.flags = SL_ERROR|SL_NOTIFY;
-putmsg(log, &ctl, &dat, 0);
-.fi
-.in -2
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/dev/log\fR\fR
-.ad
-.RS 24n
-Log driver.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/conslog\fR\fR
-.ad
-.RS 24n
-Write only instance of the log driver, for console logging.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/log.conf\fR\fR
-.ad
-.RS 24n
-Log configuration file.
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBstrace\fR(1M), \fBstrerr\fR(1M), \fBIntro\fR(3), \fBgetmsg\fR(2),
-\fBioctl\fR(2), \fBputmsg\fR(2), \fBwrite\fR(2), \fBprintf\fR(3C),
-\fBstrlog\fR(9F)
-.sp
-.LP
-\fISTREAMS Programming Guide\fR
diff --git a/usr/src/man/man7d/mc-opl.7d b/usr/src/man/man7d/mc-opl.7d
deleted file mode 100644
index 3dd7028be9..0000000000
--- a/usr/src/man/man7d/mc-opl.7d
+++ /dev/null
@@ -1,34 +0,0 @@
-'\" te
-.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH MC-OPL 7D "Apr 18, 2006"
-.SH NAME
-mc-opl \- memory controller driver for the SPARC Enterprise Server family
-.SH DESCRIPTION
-.sp
-.LP
-The \fBmc-opl\fR driver is the memory controller driver for the SPARC
-Enterprise Server family. This driver manages the hardware memory-scrubbing
-operations.
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Private
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBattributes\fR(5)
diff --git a/usr/src/man/man7d/mega_sas.7d b/usr/src/man/man7d/mega_sas.7d
deleted file mode 100644
index 6db8635a58..0000000000
--- a/usr/src/man/man7d/mega_sas.7d
+++ /dev/null
@@ -1,102 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH MEGA_SAS 7D "Aug 14, 2008"
-.SH NAME
-mega_sas \- SCSI HBA driver for LSI MegaRAID SAS controller
-.SH DESCRIPTION
-.sp
-.LP
-The \fBmega_sas\fR MegaRAID controller host bus adapter driver is a
-SCSA-compliant nexus driver that supports the Dell PERC 5/E, 5/i, 6/E and 6/i
-RAID controllers, the IBM ServeRAID-MR10k SAS/SATA controller and the LSI
-MegaRAID SAS/SATA 8308ELP, 8344ELP, 84016E, 8408ELP, 8480ELP, 8704ELP, 8704EM2,
-8708ELP, 8708EM2, 8880EM2 and 8888ELP series of controllers.
-.sp
-.LP
-Supported RAID features include RAID levels 0, 1, 5, and 6, RAID spans 10, 50
-and 60, online capacity expansion (OCE), online RAID level migration (RLM),
-auto resume after loss of system power during arrays, array rebuild or
-reconstruction (RLM) and configurable stripe size up to 1MB. Additional
-supported RAID features include check consistency for background data
-integrity, patrol read for media scanning and repairing, 64 logical drive
-support, up to 64TB LUN support, automatic rebuild and global and dedicated hot
-spare support.
-.SH CONFIGURATION
-.sp
-.LP
-The \fBmega_sas.conf\fR file contains no user configurable parameters. Please
-configure your hardware through the related BIOS utility or the MegaCli
-configuration utility. If you want to install to a drive attached to a
-mega_sas HBA, you should create the virtual drive first from the BIOS before
-running the Solaris install. You can obtain the MegaCli utility from the LSI
-website.
-.sp
-.LP
-The \fBmega_sas\fR device can support up to 64 virtual disks. Note that BIOS
-numbers the virtual disks as 1 through 64, however in the Solaris operating
-environment virtual disks are numbered from 0 to 63. Also note that SAS and
-SATA drives cannot be configured into the same virtual disk.
-.SH KNOWN PROBLEMS AND LIMITATIONS
-.sp
-.LP
-The \fBmega_sas\fR driver does not support the LSI MegaRAID SAS 8204ELP,
-8204XLP, 8208ELP, and 8208XLP controllers.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/mega_sas\fR\fR
-.ad
-.RS 30n
-32-bit ELF kernel module. (x86)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/mega_sas\fR\fR
-.ad
-.RS 30n
-64-bit kernel module. (x86)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/mega_sas.conf\fR\fR
-.ad
-.RS 30n
-Driver configuration file (contains no user-configurable options).
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture x86-based systems
-_
-Interface stability Uncommitted
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBprtconf\fR(1M), \fBattributes\fR(5), \fBsata\fR(7D),
-\fBscsi_hba_attach_setup\fR(9F), \fBscsi_sync_pkt\fR(9F),
-\fBscsi_transport\fR(9F), \fBscsi_inquiry\fR(9S), \fBscsi_device\fR(9S),
-\fBscsi_pkt\fR(9S)
-.sp
-.LP
-\fISmall Computer System Interface-2 (SCSI-2)\fR
diff --git a/usr/src/man/man7d/mem.7d b/usr/src/man/man7d/mem.7d
deleted file mode 100644
index ab430b7092..0000000000
--- a/usr/src/man/man7d/mem.7d
+++ /dev/null
@@ -1,129 +0,0 @@
-'\" te
-.\" Copyright 2002 Sun Microsystems Inc. All Rights Reserved.
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH MEM 7D "Feb 18, 2002"
-.SH NAME
-mem, kmem, allkmem \- physical or virtual memory access
-.SH SYNOPSIS
-.LP
-.nf
-/dev/mem
-.fi
-
-.LP
-.nf
-/dev/kmem
-.fi
-
-.LP
-.nf
-/dev/allkmem
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The file \fB/dev/mem\fR is a special file that provides access to the physical
-memory of the computer.
-.sp
-.LP
-The file \fB/dev/kmem\fR is a special file that provides access to the virtual
-address space of the operating system kernel, excluding memory that is
-associated with an I/O device.
-.sp
-.LP
-The file \fB/dev/allkmem\fR is a special file that provides access to the
-virtual address space of the operating system kernel, including memory that is
-associated with an I/O device. You can use any of these devices to examine and
-modify the system.
-.sp
-.LP
-Byte addresses in \fB/dev/mem\fR are interpreted as physical memory addresses.
-Byte addresses in \fB/dev/kmem\fR and \fB/dev/allkmem\fR are interpreted as
-kernel virtual memory addresses. A reference to a non-existent location returns
-an error. See ERRORS for more information.
-.sp
-.LP
-The file \fB/dev/mem\fR accesses physical memory; the size of the file is equal
-to the amount of physical memory in the computer. This size may be larger than
-4GB on a system running the 32-bit operating environment. In this case, you can
-access memory beyond 4GB using a series of \fBread\fR(2) and \fBwrite\fR(2)
-calls, a \fBpread64()\fR or \fBpwrite64()\fR call, or a combination of
-\fBllseek\fR(2) and \fBread\fR(2) or \fBwrite\fR(2).
-.SH ERRORS
-.sp
-.ne 2
-.na
-\fB\fBEFAULT\fR\fR
-.ad
-.RS 10n
-Occurs when trying to \fBwrite\fR(2) a read-only location (\fBallkmem\fR),
-\fBread\fR(2) a write-only location (\fBallkmem\fR), or \fBread\fR(2) or
-\fBwrite\fR(2) a non-existent or unimplemented location (\fBmem\fR, \fBkmem\fR,
-\fBallkmem\fR).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEIO\fR\fR
-.ad
-.RS 10n
-Occurs when trying to \fBread\fR(2) or \fBwrite\fR(2) a memory location that is
-associated with an I/O device using the \fB/dev/kmem\fR special file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBENXIO\fR\fR
-.ad
-.RS 10n
-Results from attempting to \fBmmap\fR(2) a non-existent physical (\fBmem\fR) or
-virtual (\fBkmem\fR, \fBallkmem\fR) memory address.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/dev/mem\fR\fR
-.ad
-.RS 16n
-Provides access to the computer's physical memory.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/kmem\fR\fR
-.ad
-.RS 16n
-Provides access to the virtual address space of the operating system kernel,
-excluding memory that is associated with an I/O device.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/allkmem\fR\fR
-.ad
-.RS 16n
-Provides access to the virtual address space of the operating system kernel,
-including memory that is associated with an I/O device.
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBllseek\fR(2), \fBmmap\fR(2), \fBread\fR(2), \fBwrite\fR(2)
-.SH WARNINGS
-.sp
-.LP
-Using these devices to modify (that is, write to) the address space of a live
-running operating system or to modify the state of a hardware device is
-extremely dangerous and may result in a system panic if kernel data structures
-are damaged or if device state is changed.
diff --git a/usr/src/man/man7d/mlxcx.7d b/usr/src/man/man7d/mlxcx.7d
deleted file mode 100644
index ccbc257641..0000000000
--- a/usr/src/man/man7d/mlxcx.7d
+++ /dev/null
@@ -1,367 +0,0 @@
-.\"
-.\" This file and its contents are supplied under the terms of the
-.\" Common Development and Distribution License ("CDDL"), version 1.0.
-.\" You may only use this file in accordance with the terms of version
-.\" 1.0 of the CDDL.
-.\"
-.\" A full copy of the text of the CDDL should have accompanied this
-.\" source. A copy of the CDDL is also available via the Internet at
-.\" http://www.illumos.org/license/CDDL.
-.\"
-.\"
-.\" Copyright 2020 the University of Queensland
-.\"
-.Dd August 27, 2020
-.Dt MLXCX 7D
-.Os
-.Sh NAME
-.Nm mlxcx
-.Nd Mellanox ConnectX-4/5/6 Ethernet controller driver
-.Sh SYNOPSIS
-.Pa /dev/net/mlxcx*
-.Sh DESCRIPTION
-The
-.Sy mlxcx
-driver is a GLDv3 NIC driver for the ConnectX-4, ConnectX-4 Lx, ConnectX-5 and
-ConnectX-6 families of ethernet controllers from Mellanox.
-It supports the Data Link Provider Interface,
-.Xr dlpi 7P .
-.Pp
-This driver supports:
-.Bl -dash -offset indent
-.It
-Jumbo frames up to 9000 bytes.
-.It
-Checksum offload for TCP, UDP, IPv4 and IPv6.
-.It
-Group support with VLAN and MAC steering to avoid software classification
-when using VNICs.
-.It
-Promiscuous access via
-.Xr snoop 1M and
-.Xr dlpi 7P
-.It
-LED control
-.It
-Transceiver information
-.It
-Internal temperature sensors
-.El
-.Pp
-At this time, the driver does not support Large Send Offload (LSO), energy
-efficient Ethernet (EEE), or the use of flow control through hardware pause
-frames.
-.Sh CONFIGURATION
-The
-.Sy mlxcx.conf
-file contains user configurable parameters, including the ability to set the
-number of rings and groups advertised to MAC, the sizes of rings and groups,
-and the maximum number of MAC address filters available.
-.Sh PROPERTIES
-The driver supports the following device properties which may be tuned through
-its driver.conf file,
-.Pa /kernel/drv/mlxcx.conf .
-These properties cannot be changed after the driver has been attached.
-.Pp
-These properties are not considered stable at this time, and may change.
-.Bl -hang -width Ds
-.It Sy eq_size_shift
-.Bd -filled -compact
-Minimum:
-.Sy 2 |
-Maximum:
-.Sy device dependent (up to 255)
-.Ed
-.Bd -filled
-The
-.Sy eq_size_shift
-property determines the number of entries on Event Queues for the device.
-The number of entries is calculated as
-.Dv (1 << eq_size_shift) ,
-so a value of 9 would mean 512 entries are created on each Event Queue.
-The default value is
-.Sy 9 .
-.Ed
-.It Sy cq_size_shift
-.Bd -filled -compact
-Minimum:
-.Sy 2 |
-Maximum:
-.Sy device dependent (up to 255)
-.Ed
-.Bd -filled
-The
-.Sy cq_size_shift
-property determines the number of entries on Completion Queues for the device.
-The number of entries is calculated as
-.Li (1 << cq_size_shift) ,
-so a value of 9 would mean 512 entries are created on each Event Queue.
-The default value is device dependent,
-.Sy 10
-for devices with maximum supported speed of 10Gb/s or less and
-.Sy 12
-for devices with higher supported speeds.
-This should be kept very close to the value set for
-.Sy rq_size_shift
-and
-.Sy sq_size_shift .
-.Ed
-.It Sy rq_size_shift
-.Bd -filled -compact
-Minimum:
-.Sy 2 |
-Maximum:
-.Sy device dependent (up to 255)
-.Ed
-.Bd -filled
-The
-.Sy rq_size_shift
-property determines the number of descriptors on Receive Queues for the device.
-The number of descriptors is calculated as
-.Dv (1 << rq_size_shift) ,
-so a value of 9 would mean 512 descriptors are created on each Receive Queue.
-This sets the number of packets on RX rings advertised to MAC.
-The default value is device dependent,
-.Sy 10
-for devices with maximum supported speed of 10Gb/s or less and
-.Sy 12
-for devices with higher supported speeds.
-.Ed
-.It Sy sq_size_shift
-.Bd -filled -compact
-Minimum:
-.Sy 2 |
-Maximum:
-.Sy device dependent (up to 255)
-.Ed
-.Bd -filled
-The
-.Sy sq_size_shift
-property determines the number of descriptors on Send Queues for the device.
-The number of descriptors is calculated as
-.Dv (1 << sq_size_shift) ,
-so a value of 9 would mean 512 descriptors are created on each Send Queue.
-This sets the number of packets on RX rings advertised to MAC.
-The default value is device dependent,
-.Sy 11
-for devices with maximum supported speed of 10Gb/s or less and
-.Sy 13
-for devices with higher supported speeds.
-Note that large packets often occupy more than one descriptor slot on the SQ,
-so it is sometimes a good idea to increase this if using a large MTU.
-.Ed
-.It Sy tx_ngroups
-.Bd -filled -compact
-Minimum:
-.Sy 1 |
-Maximum:
-.Sy device dependent
-.Ed
-.Bd -filled
-The
-.Sy tx_ngroups
-property determines the number of TX groups advertised to MAC.
-The default value is
-.Sy 1 .
-.Ed
-.It Sy tx_nrings_per_group
-.Bd -filled -compact
-Minimum:
-.Sy 1 |
-Maximum:
-.Sy device dependent
-.Ed
-.Bd -filled
-The
-.Sy tx_nrings_per_group
-property determines the number of rings in each TX group advertised to MAC.
-The default value is
-.Sy 64 .
-.Ed
-.It Sy rx_ngroups_large
-.Bd -filled -compact
-Minimum:
-.Sy 1 |
-Maximum:
-.Sy device dependent
-.Ed
-.Bd -filled
-The
-.Sy rx_ngroups_large
-property determines the number of "large" RX groups advertised to MAC.
-The size of "large" RX groups is set by the
-.Sy rx_nrings_per_large_group
-property.
-The default value is
-.Sy 2 .
-.Ed
-.It Sy rx_nrings_per_large_group
-.Bd -filled -compact
-Minimum:
-.Sy 1 |
-Maximum:
-.Sy device dependent
-.Ed
-.Bd -filled
-The
-.Sy rx_nrings_per_large_group
-property determines the number of rings in each "large" RX group advertised to
-MAC.
-The number of such groups is determined by the
-.Sy rx_ngroups_large
-property.
-The default value is
-.Sy 16 .
-.Ed
-.It Sy rx_ngroups_small
-.Bd -filled -compact
-Minimum:
-.Sy 1 |
-Maximum:
-.Sy device dependent
-.Ed
-.Bd -filled
-The
-.Sy rx_ngroups_small
-property determines the number of "small" RX groups advertised to MAC.
-The size of "small" RX groups is set by the
-.Sy rx_nrings_per_small_group
-property.
-It is recommended to use many small groups when using a large number of
-VNICs on top of the NIC (e.g. on a system with many zones).
-The default value is
-.Sy 256 .
-.Ed
-.It Sy rx_nrings_per_small_group
-.Bd -filled -compact
-Minimum:
-.Sy 1 |
-Maximum:
-.Sy device dependent
-.Ed
-.Bd -filled
-The
-.Sy rx_nrings_per_small_group
-property determines the number of rings in each "small" RX group advertised to
-MAC.
-The number of such groups is determined by the
-.Sy rx_ngroups_small
-property.
-The default value is
-.Sy 4 .
-.Ed
-.It Sy ftbl_root_size_shift
-.Bd -filled -compact
-Minimum:
-.Sy 4 |
-Maximum:
-.Sy device dependent
-.Ed
-.Bd -filled
-The
-.Sy ftbl_root_size_shift
-property determines the number of flow table entries on the root flow table,
-and therefore how many MAC addresses can be filtered into groups across the
-entire NIC.
-The number of flow entries is calculated as
-.Dv (1 << ftbl_root_size_shift) ,
-so a value of 9 would mean 512 entries are created in the root flow table.
-The default value is
-.Sy 12 .
-.Ed
-.It Sy cqemod_period_usec
-.Bd -filled -compact
-Minimum:
-.Sy 1 |
-Maximum:
-.Sy 65535
-.Ed
-.Bd -filled
-The
-.Sy cqemod_period_usec
-property determines the maximum delay after a completion event has occurred
-before an event queue entry (and thus an interrupt) is generated.
-The delay is measured in microseconds.
-The default value is
-.Sy 50 .
-.Ed
-.It Sy cqemod_count
-.Bd -filled -compact
-Minimum:
-.Sy 1 |
-Maximum:
-.Sy 65535
-.Ed
-.Bd -filled
-The
-.Sy cqemod_count
-property determines the maximum number of completion events that can have
-occurred before an event queue entry (and thus an interrupt) is generated.
-The default value is
-.Sy 80% of the CQ size .
-.Ed
-.It Sy intrmod_period_usec
-.Bd -filled -compact
-Minimum:
-.Sy 1 |
-Maximum:
-.Sy 65535
-.Ed
-.Bd -filled
-The
-.Sy intrmod_period_usec
-property determines the maximum delay after an event queue entry has been
-generated before an interrupt is raised.
-The delay is measured in microseconds.
-The default value is
-.Sy 10 .
-.Ed
-.It Sy tx_bind_threshold
-.Bd -filled -compact
-Minimum:
-.Sy 1 |
-Maximum:
-.Sy 65535
-.Ed
-.Bd -filled
-The
-.Sy tx_bind_threshold
-property determines the minimum number of bytes in a packet before the driver
-uses
-.Xr ddi_dma_addr_bind_handle 9F
-to bind the packet memory for DMA, rather than copying the memory as it does
-for small packets.
-DMA binds are expensive and involve taking locks in the PCI nexus driver, so it
-is seldom worth using them for small packets.
-The default value is
-.Sy 2048 .
-.Ed
-.It Sy rx_limit_per_completion
-.Bd -filled -compact
-Minimum:
-.Sy 16 |
-Maximum:
-.Sy 4096
-.Ed
-.Bd -filled
-The
-.Sy rx_limit_per_completion
-property determines the maximum number of packets that
-will be processed on a given completion ring during a single interrupt.
-This is done to try and guarantee some amount of liveness in the system.
-The default value is
-.Sy 256 .
-.Ed
-.El
-.Sh FILES
-.Bl -tag -width Pa
-.It Pa /kernel/drv/amd64/mlxcx
-Device driver (x86)
-.It Pa /kernel/drv/mlxcx.conf
-Driver configuration file containing user-configurable options
-.El
-.Sh SEE ALSO
-.Xr dladm 1M ,
-.Xr snoop 1M ,
-.Xr driver.conf 4 ,
-.Xr dlpi 7P
diff --git a/usr/src/man/man7d/mpt_sas.7d b/usr/src/man/man7d/mpt_sas.7d
deleted file mode 100644
index bdb5899ae1..0000000000
--- a/usr/src/man/man7d/mpt_sas.7d
+++ /dev/null
@@ -1,132 +0,0 @@
-'\" te
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright (c) 2017, Joyent, Inc.
-.\" Copyright 2014, Nexenta Systems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add
-.\" the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH MPT_SAS 7D "Dec 15, 2017"
-.SH NAME
-mpt_sas \- SAS-2/3 host bus adapter driver
-.SH SYNOPSIS
-.in +2
-.nf
-scsi@unit-address
-.fi
-.in -2
-
-.SH DESCRIPTION
-.LP
-The \fBmpt_sas\fR host bus adapter driver is a nexus driver that supports
-Broadcom (formerly LSI and Avago) SAS chipsets including the SAS200x/2x08/2x16
-and SAS300x/3x08/3x16/3x24 series of chips. These chips support SAS/SATA
-interfaces, including tagged and untagged queuing, SATA 3G/SAS 3G/SAS 6G/SAS
-12G.
-.SS "Configuration"
-.LP
-The \fBmpt_sas\fR driver is configured by defining properties in
-\fBmpt_sas.conf\fR. These properties override the global SCSI settings. The
-\fBmpt_sas\fR driver supports one modifiable property:
-.sp
-.ne 2
-.na
-\fB\fBmpxio-disable\fR\fR
-.ad
-.sp .6
-.RS 4n
-Solaris I/O multipathing is enabled or disabled on SAS devices with the
-\fBmpxio-disable\fR property. Specifying \fBmpxio-disable="no"\fR activates I/O
-multipathing, while \fBmpxio-disable="yes"\fR disables I/O multipathing.
-.sp
-Solaris I/O multipathing can be enabled or disabled on a per port basis. Per
-port settings override the global setting for the specified ports.
-.sp
-The following example shows how to disable multipathing on port 0 whose parent
-is \fB/pci@0,0/pci8086,2940@1c/pci1000,72@0\fR:
-.sp
-.in +2
-.nf
-name="mpt_sas" parent="/pci@0,0/pci8086,2940@1c/pci1000,72@0"
-mpxio-disable="yes";
-.fi
-.in -2
-
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRUsing the \fBmpt_sas\fR Configuration File to Disable MPXIO
-.sp
-.LP
-Create a file called \fB/kernel/drv/mpt_sas.conf\fR and add the following line:
-
-.sp
-.in +2
-.nf
-name="mpt_sas" parent="/pci@0,0/pci8086,2940@1c/pci1000,72@0"
-mpxio-disable="yes";
-.fi
-.in -2
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/kernel/drv/mpt_sas\fR\fR
-.ad
-.sp .6
-.RS 4n
-32-bit ELF kernel module
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/sparcv9/mpt_sas\fR\fR
-.ad
-.sp .6
-.RS 4n
-64-bit SPARC ELF kernel module
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/mpt_sas\fR\fR
-.ad
-.sp .6
-.RS 4n
-64-bit x86 ELF kernel module
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/mpt_sas.conf\fR\fR
-.ad
-.sp .6
-.RS 4n
-Optional configuration file
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for a description of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-l | l
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture SPARC, x86
-.TE
-
-.SH SEE ALSO
-.LP
-\fBprtconf\fR(1M), \fBdriver.conf\fR(4), \fBpci\fR(4), \fBattributes\fR(5),
-\fBscsi_abort\fR(9F), \fBscsi_device\fR(9S), \fBscsi_extended_sense\fR(9S),
-\fBscsi_inquiry\fR(9S), \fBscsi_hba_attach_setup\fR(9F),
-\fBscsi_ifgetcap\fR(9F), \fBscsi_ifsetcap\fR(9F), \fBscsi_pkt\fR(9S),
-\fBscsi_reset\fR(9F), \fBscsi_sync_pkt\fR(9F), \fBscsi_transport\fR(9F),
diff --git a/usr/src/man/man7d/mr_sas.7d b/usr/src/man/man7d/mr_sas.7d
deleted file mode 100644
index bd4913b07b..0000000000
--- a/usr/src/man/man7d/mr_sas.7d
+++ /dev/null
@@ -1,176 +0,0 @@
-'\" te
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH MR_SAS 7D "May 28, 2009"
-.SH NAME
-mr_sas \- LSI MegaRAID SAS2.0 Controller HBA driver
-.SH DESCRIPTION
-.sp
-.LP
-The \fBmr_sas\fR MegaRAID SAS2.0 controller host bus adapter driver is a
-SCSA-compliant nexus driver that supports the LSI MegaRAID SAS 92\fIxx\fR
-series of controllers and the Sun StorageTek 6Gb/s SAS RAID HBA series of
-controllers.
-.sp
-.LP
-Some of the RAID Features include the following:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-RAID levels 0, 1, 5, and 6
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-RAID spans 10, 50, and 60
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Online Capacity Expansion (OCE)
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Online RAID Level Migration (RLM)
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Auto resume after loss of system power during arrays array rebuild or
-reconstruction (RLM)
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Configurable stripe size up to 1MB
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Check Consistency for background data integrity
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Patrol read for media scanning and repairing
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-64 logical drive support
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Up to 64TB LUN support
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Automatic rebuild
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Global and dedicated Hot Spare support
-.RE
-.SS "Configuration"
-.sp
-.LP
-The \fBmr_sas.conf\fR file contains one user configurable parameter, for MSI or
-MSI-X support. Configure your hardware through the related BIOS utility or the
-MegaCli Configuration Utility. If you want to install to a drive attached to a
-\fBmr_sas\fR HBA, create the virtual drive first from the BIOS (X86) before
-running Solaris install. The \fBMegaCli\fR utility can be downloaded from the
-LSI website.
-.sp
-.LP
-The LSI MegaRAID SAS device can support up to 64 virtual SAS2.0, SAS1.0,
-SATA3.0, or SATA 6.0 disks. The BIOS numbers the virtual disks as 1 through 64,
-however in Solaris these drives are numbered from 0 to 63. Also keep in mind
-that SAS and SATA drives can not be configured into the same virtual disk.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/mr_sas\fR\fR
-.ad
-.RS 30n
-32-bit x86 ELF kernel module
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/mr_sas\fR\fR
-.ad
-.RS 30n
-64-bit kernel module x86 ELF kernel module
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/sparcv9/mr_sas\fR\fR
-.ad
-.RS 30n
-64-bit SPARC ELF kernel module
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/mr_sas.conf\fR\fR
-.ad
-.RS 30n
-Driver configuration file containing one user-configurable option
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for a description of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-l | l
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture SPARC, x86
-_
-Interface Stability Uncommitted
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBprtconf\fR(1M), \fBattributes\fR(5), \fBsata\fR(7D),
-\fBscsi_hba_attach_setup\fR(9F), \fBscsi_sync_pkt\fR(9F),
-\fBscsi_transport\fR(9F), \fBscsi_device\fR(9S), \fBscsi_inquiry\fR(9S),
-\fBscsi_pkt\fR(9S)
-.sp
-.LP
-\fISmall Computer System Interface-2 (SCSI-2)\fR
-.SH NOTES
-.sp
-.LP
-The \fBmr_sas\fR driver only supports internal and external expanders that are
-not fully SAS1.0 or fully SAS2.0 compliant.
diff --git a/usr/src/man/man7d/msglog.7d b/usr/src/man/man7d/msglog.7d
deleted file mode 100644
index a22f2f1953..0000000000
--- a/usr/src/man/man7d/msglog.7d
+++ /dev/null
@@ -1,52 +0,0 @@
-'\" te
-.\" Copyright (c) 1998, Sun Microsystems, Inc.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH MSGLOG 7D "Oct 13, 1998"
-.SH NAME
-msglog \- message output collection from system startup or background
-applications
-.SH SYNOPSIS
-.LP
-.nf
-\fB/dev/msglog\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-Output from system startup ("rc") scripts is directed to \fB/dev/msglog\fR,
-which dispatches it appropriately.
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Stable
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBsyslogd\fR(1M), \fBsyslog\fR(3C), \fBattributes\fR(5), \fBsysmsg\fR(7D)
-.SH NOTES
-.sp
-.LP
-In the current version of Solaris, \fB/dev/msglog\fR is an alias for
-\fB/dev/sysmsg\fR. In future versions of Solaris, writes to \fB/dev/msglog\fR
-may be directed into a more general logging mechanism such as
-\fBsyslogd\fR(1M).
-.sp
-.LP
-\fBsyslog\fR(3C) provides a more general logging mechanism than
-\fB/dev/msglog\fR and should be used in preference to \fB/dev/msglog\fR
-whenever possible.
diff --git a/usr/src/man/man7d/mt.7d b/usr/src/man/man7d/mt.7d
deleted file mode 100644
index 5f779b5166..0000000000
--- a/usr/src/man/man7d/mt.7d
+++ /dev/null
@@ -1,32 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T
-.\" Copyright (C) 1999, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH MT 7D "Jul 3, 1990"
-.SH NAME
-mt \- tape interface
-.SH DESCRIPTION
-.sp
-.LP
-The files \fBrmt/*\fR refer to tape controllers and associated tape drives.
-.sp
-.LP
-The \fBlabelit\fR(1M) command requires these magnetic tape file names to work
-correctly with the tape controllers. No other tape controller commands require
-these file names.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/dev/rmt/*\fR\fR
-.ad
-.RS 14n
-
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBlabelit\fR(1M)
diff --git a/usr/src/man/man7d/mxfe.7d b/usr/src/man/man7d/mxfe.7d
deleted file mode 100644
index 5b0f49fe76..0000000000
--- a/usr/src/man/man7d/mxfe.7d
+++ /dev/null
@@ -1,62 +0,0 @@
-.\" Copyright 2014 Garrett D'Amore <garrett@damore.org>
-.\" Redistribution and use in source and binary forms, with or without
-.\" modification, are permitted provided that the following conditions
-.\" are met:
-.\" 1. Redistributions of source code must retain the above copyright
-.\" notice, this list of conditions and the following disclaimer.
-.\" 2. Redistributions in binary form must reproduce the above copyright
-.\" notice, this list of conditions and the following disclaimer in the
-.\" documentation and/or other materials provided with the distribution.
-.\"
-.\" THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER AND CONTRIBUTORS
-.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-.\" LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
-.\" FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
-.\" COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
-.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
-.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
-.\" USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
-.\" ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
-.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE
-.\"
-.Dd "Aug 7, 2014"
-.Dt MXFE 7D
-.Os
-.Sh NAME
-.Nm mxfe
-.Nd Macronix Fast Ethernet device driver
-.Sh SYNOPSIS
-.Pa /dev/mxfe
-.Sh DESCRIPTION
-The
-.Nm
-driver provides support for the
-Macronix 98715 family (including the Lite-On PNIC-II) of Fast Ethernet
-PCI controllers.
-.Lp
-These devices generally support the standard Fast Ethernet features, including
-10BASE-T and 100BASE-TX, both full and half duplex operation, IEEE 802.3
-autonegotiation, etc.
-They also support full size MTUs (1500 bytes), even when used with VLANs.
-.
-.Lp
-The device driver supports the
-.Xr ieee802.3 5
-properties, which can be configured with
-.Xr dladm 1M .
-.Sh FILES
-.Bl -tag -width /dev/mxfe
-.It Pa /dev/mxfe
-Special character device.
-.El
-.Sh SEE ALSO
-.Xr dladm 1M ,
-.Xr ifconfig 1M ,
-.Xr pci 4 ,
-.Xr ieee802.3 5 ,
-.Xr dlpi 7P
-.Rs
-.%T IEEE 802.3: Ethernet
-.%Q IEEE Standards Association
-.Re
diff --git a/usr/src/man/man7d/myri10ge.7d b/usr/src/man/man7d/myri10ge.7d
deleted file mode 100644
index 682339de18..0000000000
--- a/usr/src/man/man7d/myri10ge.7d
+++ /dev/null
@@ -1,188 +0,0 @@
-'\" te
-.\" Copyright (c) 2007-2009 Myricom, Inc. All Rights Reserved. Use is subject to license terms.
-.\" Portions Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add
-.\" the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH MYRI10GE 7D "Sep 10, 2009"
-.SH NAME
-myri10ge \- Myricom Myri10GE 10Gb PCI Express NIC Driver
-.SH SYNOPSIS
-.LP
-.nf
-/dev/myri10ge*
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBmyri10ge\fR Gigabit Ethernet driver is a multi-threaded, loadable,
-clonable, GLD-based STREAMS driver that supports the Data Link Provider
-Interface, \fBdlpi\fR(7P), on Myricom Myri10GE 10-Gigabit Ethernet controllers.
-.sp
-.LP
-The \fBmyri10ge\fR driver functions include controller initialization, frame
-transmit and receive, promiscuous and multicast support, multiple transmit and
-receive queues, support for TCP Large Send Offload, support for TCP Large
-Receive Offload, and error recovery and reporting.
-.SS "Application Programming Interface"
-.sp
-.LP
-The cloning character-special device, \fB/dev/myri10ge\fR, is used to access
-all Myricom Myri10GE 10 -Gigabit Ethernet dev ices installed within the system.
-.sp
-.LP
-The \fBmyri10ge\fR driver is managed by the \fBdladm\fR(1M) command line
-utility. dladm allows VLANs to be defined on top of \fBmyri10ge\fR instances
-and for \fBmyri10ge\fR instances to be aggregated. See \fBdladm\fR(1M) for more
-details.
-.sp
-.LP
-You must send an explicit \fBDL_ATTACH_REQ\fR message to associate the opened
-stream with a particular device (\fBPPA\fR). The \fBPPA\fR ID is interpreted as
-an unsigned integer data type and indicates the corresponding device instance
-(unit) number. The driver returns an error (\fBDL_ERROR_ACK\fR) if the
-\fBPPA\fR field value does not correspond to a valid device instance number for
-the system. The device is initialized on first attach and de-initialized
-(stopped) at last detach.
-.sp
-.LP
-The values returned by the driver in the \fBDL_INFO_ACK\fR primitive in
-response to your \fBDL_INFO_REQ\fR are:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Maximum \fBSDU\fR is \fB9000\fR.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Minimum \fBSDU\fR is \fB0\fR.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBDLSAP\fR address length is \fB8\fR.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBMAC\fR type is \fBDL_ETHER\fR.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBSAP\fR (Service Access Point) length value is \fB-2\fR, meaning the physical
-address component is followed immediately by a 2-byte \fBSAP\fR component
-within the \fBDLSAP\fR address.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Broadcast address value is the Ethernet/IEEE broad- cast address
-(\fBFF:FF:FF:FF:FF:FF\fR).
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Once in the \fBDL_ATTACHED\fR state, you must send a \fBDL_BIND_REQ\fR to
-associate a particular SAP with the stream.
-.RE
-.SS "Configuration"
-.sp
-.LP
-Link speed and mode can only be 10000 Mbps full-duplex. See the \fIIEEE 802.3
-Standard\fR for more information.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/dev/myri10ge*\fR\fR
-.ad
-.sp .6
-.RS 4n
-Special character device.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/myri10ge\fR\fR
-.ad
-.sp .6
-.RS 4n
-32-bit device driver (x86)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/myri10ge\fR\fR
-.ad
-.sp .6
-.RS 4n
-64-bit device driver (x86)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/sparcv9/myri10ge\fR\fR
-.ad
-.sp .6
-.RS 4n
-64-bit device driver (SPARC)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/myri10ge.conf\fR\fR
-.ad
-.sp .6
-.RS 4n
-Configuration file
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for a description of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture SPARC, x86
-_
-Interface Stability Committed
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBdladm\fR(1M), \fBnetstat\fR(1M), \fBdriver.conf\fR(4), \fBattributes\fR(5),
-\fBdlpi\fR(7P), \fBstreamio\fR(7I)
-.sp
-.LP
-\fIWriting Device Drivers\fR
-.sp
-.LP
-\fINetwork Interface Guide\fR
-.sp
-.LP
-\fISTREAMS Programming Guide\fR
-.sp
-.LP
-\fIIEEE 802.3 Standard\fR
diff --git a/usr/src/man/man7d/n2rng.7d b/usr/src/man/man7d/n2rng.7d
deleted file mode 100644
index e851b7bd9e..0000000000
--- a/usr/src/man/man7d/n2rng.7d
+++ /dev/null
@@ -1,171 +0,0 @@
-'\" te
-.\" Copyright (c) 2009 Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright (c) 2020 Peter Tribble.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
-.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH N2RNG 7D "Jan 12, 2020"
-.SH NAME
-n2rng \- Ultra-SPARC T2 random number generator device driver
-.SH DESCRIPTION
-The \fBn2rng\fR device driver is a multi-threaded, loadable hardware driver
-supporting hardware assisted random numbers.
-This support is built into the Ultra-SPARC T2 and later processors.
-.sp
-.LP
-The \fBn2rng\fR driver requires the presence of the Solaris Cryptographic
-Framework to enable applications and kernel clients to access the provided
-services.
-.SH CONFIGURATION
-You configure the \fBn2rng\fR driver by defining properties in
-\fB/platform/sun4v/kernel/drv/n2rng.conf\fR which override the default settings.
-The following property is supported:
-.sp
-.ne 2
-.na
-\fBnostats\fR
-.ad
-.RS 28n
-Disables the generation of statistics.
-The nostats property may be used to help prevent traffic analysis, however,
-this may inhibit support personnel.
-.RE
-
-.SH CRYPTO STATISTICS
-Solaris crypto drivers must implement statistics variables.
-Statistics reported by \fBn2rng\fR may be read using the \fBkstat\fR(1M)
-utility.
-The \fBn2rng\fR driver maintains the following statistics:
-.sp
-.ne 2
-.na
-\fBstatus\fR
-.ad
-.RS 28n
-Status (online, offline, fail) of RNG device.
-.RE
-
-.sp
-.ne 2
-.na
-\fBrngjobs\fR
-.ad
-.RS 28n
-Number of requests for random data.
-.RE
-
-.sp
-.ne 2
-.na
-\fBrngbytes\fR
-.ad
-.RS 28n
-Number of bytes read from the RNG device.
-.RE
-
-.SH KERNEL STATISTICS
-The \fBn2rng\fR driver tallies a set of kernel driver statistics when in the
-Control domain.
-Statistics reported by \fBn2rng\fR may be read using the \fBkstat\fR(1M)
-utility.
-.sp
-.ne 2
-.na
-\fBrng(n)-cell0-bias\fR
-.ad
-.RS 28n
-Bias setting for noise cell 0 of RNG \fIn\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBrng(n)-cell0-entropy\fR
-.ad
-.RS 28n
-Entropy value for noise cell 0 of RNG \fIn\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBrng(n)-cell1-bias\fR
-.ad
-.RS 28n
-Bias setting for noise cell 1 of RNG \fIn\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBrng(n)-cell1-entropy\fR
-.ad
-.RS 28n
-Entropy value for noise cell 1 of RNG \fIn\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBrng(n)-cell2-bias\fR
-.ad
-.RS 28n
-Bias setting for noise cell 2 of RNG \fIn\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBrng(n)-cell2-entropy\fR
-.ad
-.RS 28n
-Entropy value for noise cell 2 of RNG \fIn\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBrng(n)-state\fR
-.ad
-.RS 28n
-State of rng number n (online, offline, error, health check).
-.RE
-
-.SH FILES
-.ne 2
-.na
-\fB/platform/sun4v/kernel/drv/sparcv9/n2rng\fR
-.ad
-.sp .6
-.RS 4n
-Device driver (SPARC)
-.RE
-
-.sp
-.ne 2
-.na
-\fB/platform/sun4v/kernel/drv/n2rng.conf\fR
-.ad
-.sp .6
-.RS 4n
-Driver configuration file
-.RE
-
-.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture SPARC
-_
-Interface stability Committed
-.TE
-
-.SH SEE ALSO
-\fBcryptoadm\fR(1M), \fBkstat\fR(1M), \fBattributes\fR(5)
diff --git a/usr/src/man/man7d/npe.7d b/usr/src/man/man7d/npe.7d
deleted file mode 100644
index e00dd4932e..0000000000
--- a/usr/src/man/man7d/npe.7d
+++ /dev/null
@@ -1,72 +0,0 @@
-'\" te
-.\" Copyright (c) 2005, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH NPE 7D "Oct 12, 2005"
-.SH NAME
-npe \- PCI Express bus nexus driver
-.SH DESCRIPTION
-.sp
-.LP
-The \fBnpe\fR nexus driver is used on X64 servers for PCI Express Root Complex
-devices that provide PCI Express interconnect. This driver is compliant to PCI
-Express base specification, Revision 1.0a.
-.sp
-.LP
-This nexus driver provides support for the following features: Access to
-extended configuration space, IEEE 1275 extensions for PCI Express, Base line
-PCI Express error handling and PCI Express MSI interrupts.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB/platform/i86pc/kernel/drv/npe\fR
-.ad
-.sp .6
-.RS 4n
-32-bit ELF kernel module.
-.RE
-
-.sp
-.ne 2
-.na
-\fB/platform/i86pc/kernel/drv/amd64/npe\fR
-.ad
-.sp .6
-.RS 4n
-64-bit ELF kernel module.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture x64 PCI Express-based systems
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBattributes\fR(5), \fBpcie\fR(4), \fBpcie_pci\fR(7D)
-.sp
-.LP
-\fIPCI Express Base Specification v1.0a\fR \(em 2003
-.sp
-.LP
-\fIWriting Device Drivers\fR
-.sp
-.LP
-\fIIEEE 1275 PCI Bus Binding\fR \(em 1998
-.sp
-.LP
-\fIhttp://playground.sun.com/1275/bindings/pci/pci-express.txt\fR
diff --git a/usr/src/man/man7d/ntwdt.7d b/usr/src/man/man7d/ntwdt.7d
deleted file mode 100644
index 553c8c7a38..0000000000
--- a/usr/src/man/man7d/ntwdt.7d
+++ /dev/null
@@ -1,99 +0,0 @@
-'\" te
-.\" Copyright (c) 2005, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH NTWDT 7D "Jan 10, 2020"
-.SH NAME
-ntwdt \- Netra\(embased application watchdog timer driver
-.SH SYNOPSIS
-.nf
-/dev/ntwdt
-.fi
-
-.SH DESCRIPTION
-The \fBntwdt\fR driver is a multithreaded, loadable, non-STREAMS pseudo driver
-that provides an application with an interface for controlling a system
-watchdog timer.
-.sp
-.LP
-The \fBntwdt\fR driver implements a \fBvirtual watchdog timer\fR that a
-privileged application (Effective UID == 0) controls via IOCTLs.
-.SH CONFIGURATION
-You configure the \fBntwdt\fR driver by modifying the contents of the
-\fBntwdt.conf\fR file.
-.SH ERRORS
-An \fBopen()\fR fails if:
-.sp
-.ne 2
-.na
-\fBEPERM\fR
-.ad
-.RS 10n
-Effective user ID is not zero.
-.RE
-
-.sp
-.ne 2
-.na
-\fBENOENT\fR
-.ad
-.RS 10n
-\fB/dev/ntwdt\fR is not present or driver is not installed.
-.RE
-
-.sp
-.ne 2
-.na
-\fBEAGAIN\fR
-.ad
-.RS 10n
-\fB/dev/ntwdt\fR has already been successfully open()'d.
-.RE
-
-.SH FILES
-.ne 2
-.na
-\fB/dev/ntwdt\fR
-.ad
-.RS 28n
-Special character device.
-.RE
-
-.sp
-.ne 2
-.na
-\fB/kernel/drv/sparcv9/ntwdt\fR
-.ad
-.RS 28n
-Device driver (SPARC)
-.RE
-
-.sp
-.ne 2
-.na
-\fB/kernel/drv/ntwdt.conf\fR
-.ad
-.RS 28n
-Driver configuration file
-.RE
-
-.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture SPARC
-.TE
-
-.SH SEE ALSO
-\fBdriver.conf\fR(4), \fBattributes\fR(5)
-.sp
-.LP
-\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man7d/ntxn.7d b/usr/src/man/man7d/ntxn.7d
deleted file mode 100644
index 6b14a1cc68..0000000000
--- a/usr/src/man/man7d/ntxn.7d
+++ /dev/null
@@ -1,153 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH NTXN 7D "Oct 13, 2008"
-.SH NAME
-ntxn \- NetXen 10/1 Gigabit Ethernet network driver
-.SH SYNOPSIS
-.LP
-.nf
-\fB/dev/ntxn*\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBntxn\fR 10/1 Gigabit Ethernet driver is a multi-threaded, loadable,
-clonable, GLD-based STREAMS driver supporting the Data Link Provider Interface,
-\fBdlpi\fR(7P), on NetXen 10/1 Gigabit Ethernet controllers.
-.sp
-.LP
-The \fBntxn\fR driver functions include chip initialization, frames transmit
-and receive, promiscuous and multicast support, TCP and UDP checksum off-load
-(IPv4) and 9600 bytes jumbo frame.
-.sp
-.LP
-The \fBntxn\fR driver and hardware support the 10GBASE CX4, 10GBASE-SR/W, LR/W,
-and 10/100/1000BASE-T physical layers.
-.SH APPLICATION PROGRAMMING INTERFACE
-.sp
-.LP
-The cloning character-special device, \fB/dev/ntxn\fR, is used to access all
-NetXen devices installed within the system.
-.sp
-.LP
-The \fBntxn\fR driver is managed by the \fBdladm\fR(1M) command line utility,
-which allows VLANs to be defined on top of \fBntxn\fR instances and for
-\fBntxn\fR instances to be aggregated. See \fBdladm\fR(1M) for more details.
-.sp
-.LP
-The values returned by the driver in the DL_INFO_ACK primitive in response to
-your DL_INFO_REQ are:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Maximum SDU is 9600.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Minimum SDU is 0.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-DLSAP address length is 8.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-MAC type is DL_ETHER.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-SAP (Service Access Point) length value is -2, meaning the physical address
-component is followed immediately by a 2-byte SAP component within the DLSAP
-address.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Broadcast address value is the Ethernet/IEEE broadcast address
-(FF:FF:FF:FF:FF:FF).
-.RE
-.SH CONFIGURATION
-.sp
-.LP
-By default, the \fBntxn\fR driver works without any configuration file.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/dev/ntxn*\fR\fR
-.ad
-.RS 26n
-Special character device.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/ntxn\fR\fR
-.ad
-.RS 26n
-32-bit device driver (x86).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/ntxn\fR\fR
-.ad
-.RS 26n
-64-bit device driver (x86).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/ntxn.conf\fR\fR
-.ad
-.RS 26n
-Configuration file.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-l l
-l l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-Architecture x86
-Interface Stability Committed
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBdladm\fR(1M), \fBndd\fR(1M), \fBnetstat\fR(1M), \fBdriver.conf\fR(4),
-\fBattributes\fR(5), \fBstreamio\fR(7I), \fBdlpi\fR(7P)
-.sp
-.LP
-\fIWriting Device Drivers\fR
-.sp
-.LP
-\fISTREAMS Programming Guide\fR
-.sp
-.LP
-\fINetwork Interfaces Programmer's Guide\fR
diff --git a/usr/src/man/man7d/null.7d b/usr/src/man/man7d/null.7d
deleted file mode 100644
index 4c8cec2277..0000000000
--- a/usr/src/man/man7d/null.7d
+++ /dev/null
@@ -1,44 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T
-.\" Copyright (C) 2001, Sun Microsystems, Inc.
-.\" All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH NULL 7D "Apr 4, 2001"
-.SH NAME
-null \- the null file, also called the null device
-.SH SYNOPSIS
-.LP
-.nf
-\fB/dev/null\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-Data written on the null special file, \fB/dev/null\fR, is discarded.
-.sp
-.LP
-Reads from a null special file always return 0 bytes.
-.sp
-.LP
-Mapping a null special file creates an address reservation of a length equal to
-the length of the mapping, and rounded up to the nearest page size as returned
-by \fBsysconf\fR(3C). No resources are consumed by the reservation. Mappings
-can be placed in the resulting address range via subsequent calls to \fBmmap\fR
-with the \fB-MAP_FIXED\fR option set.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/dev/null\fR\fR
-.ad
-.RS 13n
-
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBmmap\fR(2), \fBsysconf\fR(3C)
diff --git a/usr/src/man/man7d/nulldriver.7d b/usr/src/man/man7d/nulldriver.7d
deleted file mode 100644
index e21efee16d..0000000000
--- a/usr/src/man/man7d/nulldriver.7d
+++ /dev/null
@@ -1,22 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH NULLDRIVER 7D "Nov 8, 2008"
-.SH NAME
-nulldriver \- Null driver
-.SH DESCRIPTION
-.sp
-.LP
-This driver succeeds \fBprobe\fR(9E), \fBattach\fR(9E) and \fBdetach\fR(9E) but
-provides no namespace or functionality.
-.sp
-.LP
-In some circumstances having device nodes bound to \fBnulldriver\fR is
-expected. For example, \fBprtconf\fR(1M) might capture a nexus driver with a
-\fBnulldriver\fR bound child if the nexus is performing child discovery.
-.SH SEE ALSO
-.sp
-.LP
-\fBprtconf\fR(1M), \fBattach\fR(9E), \fBdetach\fR(9E), \fBprobe\fR(9E)
diff --git a/usr/src/man/man7d/nv_sata.7d b/usr/src/man/man7d/nv_sata.7d
deleted file mode 100644
index 29f2b145a6..0000000000
--- a/usr/src/man/man7d/nv_sata.7d
+++ /dev/null
@@ -1,71 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 2011 Nexenta Systems, Inc. All rights reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH NV_SATA 7D "Sep 25, 2011"
-.SH NAME
-nv_sata \- NVIDIA CK804/MCP04/MCP51/MCP55/MCP61 SATA controller driver
-.SH SYNOPSIS
-.LP
-.nf
-\fBsata@unit-address\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBnv_sata\fR driver is a SATA HBA driver that supports NVIDIA CK804/MCP04
-and MCP51/MCP55/MCP61 SATA HBA controllers. Note that while these controllers
-support standard SATA features including SATA-II drives, NCQ, hotplug and ATAPI
-drives, the driver currently does not support NCQ features.
-.SH CONFIGURATION
-.sp
-.LP
-The \fBnv_sata\fR module contains no user configurable parameters.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/nv_sata\fR\fR
-.ad
-.sp .6
-.RS 4n
-32-bit \fBELF\fR kernel module (x86).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/nv_sata\fR\fR
-.ad
-.sp .6
-.RS 4n
-64-bit \fBELF\fR kernel module (x86).
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attribute:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture x86
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBcfgadm\fR(1M), \fBcfgadm_sata\fR(1M), \fBprtconf\fR(1M), \fBsata\fR(7D),
-\fBsd\fR(7D)
-.sp
-.LP
-\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man7d/nvme.7d b/usr/src/man/man7d/nvme.7d
deleted file mode 100644
index e7b2dda4c4..0000000000
--- a/usr/src/man/man7d/nvme.7d
+++ /dev/null
@@ -1,141 +0,0 @@
-.\"
-.\" This file and its contents are supplied under the terms of the
-.\" Common Development and Distribution License ("CDDL"), version 1.0.
-.\" You may only use this file in accordance with the terms of version
-.\" 1.0 of the CDDL.
-.\"
-.\" A full copy of the text of the CDDL should have accompanied this
-.\" source. A copy of the CDDL is also available via the Internet at
-.\" http://www.illumos.org/license/CDDL.
-.\"
-.\"
-.\" Copyright 2016 Nexenta Systems, Inc. All rights reserved.
-.\" Copyright (c) 2018, Joyent, Inc.
-.\" Copyright 2019, Western Digital Corporation
-.\"
-.Dd January 22, 2022
-.Dt NVME 7D
-.Os
-.Sh NAME
-.Nm nvme
-.Nd Intel NVMe compliant storage driver
-.Sh DESCRIPTION
-The
-.Nm
-driver uses the
-.Xr blkdev 7D
-framework to provide access to
-NVMe compliant solid-state storage devices.
-All NVMe version 1.x devices are supported.
-.Lp
-NVMe devices supporting multiple namespaces will present each
-namespace as its own
-.Xr blkdev 7D
-instance in the system.
-.
-.Sh CONFIGURATION
-The
-.Nm
-driver can be configured by defining properties in the
-.Pa nvme.conf
-file.
-The parameters are considered an unstable interface, subject to
-change without notice.
-The following properties are currently supported:
-.Bl -tag -width Va
-.It Va strict-version
-This can be set to 0 to allow
-.Nm
-to attach to devices supporting newer version of the NVMe
-specification.
-The default value is 1, limiting
-.Nm
-to work with devices that support major version 1.
-.It Va ignore-unknown-vendor-status
-This can be set to 1 to allow
-.Nm
-to continue operating even if it receives an unknown vendor command
-status.
-.It Va admin-queue-len
-This is the number of entries in the admin command queue.
-Legal values are between 16 and 4096, the default value is 256.
-.It Va io-squeue-len
-This is the number of entries in each I/O submission queue.
-Legal values are between 16 and 65536, the default value is 1024.
-.It Va io-cqueue-len
-This is the number of entries in each I/O completion queue.
-Legal values are between 16 and 65536, the default value is 2048.
-When the number of submission and completion queues are the same,
-the queue lengths will be both set to the lesser of
-.Va io-squeue-len
-and
-.Va io-cqueue-len .
-.It Va async-event-limit
-This is the maximum number of asynchronous event requests issued by
-the driver.
-Asynchronous events are used to report error conditions.
-The driver will never use more asynchronous events than this value, or
-what the hardware supports if it is less, or 1/10th of the admin queue
-length if it is less.
-.It Va volatile-write-cache-enable
-This property can be set to 0 to disable the volatile write cache, if
-the hardware supports it.
-The default setting is 1, which enables the volatile write cache.
-.It Va min-phys-block-size
-This is the minimum physical block size that is reported to
-.Xr blkdev 7d .
-This value must be a power of 2 greater than or equal to 512.
-If the device reports a best block size larger than what is
-specified here the driver will ignore the value specified here.
-.It Va max-submission-queues
-This is the maximum number of submission queues the driver will create per
-device.
-Legal values are between 1 and 65535, the default is to
-match the number for
-.Em max-completion-queues .
-The number of queues created will not be allowed to exceed the
-drive's hardware limitation.
-If the number of submission queues is larger than
-.Em max-completion-queues
-the completion queues will be shared across the submission
-queues.
-.It Va max-completion-queues
-This is the maximum number of completion queues the driver will create per
-device.
-Legal values are between 1 and 65535, the default is to match
-the number of interrupt vectors allocated to the drive.
-The number of queues created will not exceed the number of interrupt vectors,
-.Em max-submission-queues ,
-or the drive's hardware limitation.
-.El
-.
-.Sh FILES
-.Bl -tag -compact -width Pa
-.It Pa /dev/dsk/cntnd0sn
-Block device minor nodes.
-.It Pa /dev/rdsk/cntnd0sn
-Raw block device minor nodes.
-.El
-.Lp
-In the device minor nodes, the following substitutions may occur:
-.Bl -tag -offset indent -width Va
-.It Va cn
-A controller number, typically one for each
-.Nm
-device found.
-Controller numbers are dynamically assigned by the system.
-.It Va tn
-The target number.
-This is the namespace EUI64 if available, or the namespace ID used by
-the hardware.
-Namespace ID 0 is reserved, hence target numbers start with 1.
-.It Va sn
-This is the
-.Em slice
-number, representing a subset of the disk.
-See
-.Xr dkio 7I .
-.El
-.
-.Sh SEE ALSO
-.Xr blkdev 7D
diff --git a/usr/src/man/man7d/nxge.7d b/usr/src/man/man7d/nxge.7d
deleted file mode 100644
index b940e85cae..0000000000
--- a/usr/src/man/man7d/nxge.7d
+++ /dev/null
@@ -1,239 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH NXGE 7D "Apr 12, 2008"
-.SH NAME
-nxge \- Sun 10/1 Gigabit Ethernet network driver
-.SH SYNOPSIS
-.LP
-.nf
-/dev/nxge*
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBnxge\fR Gigabit Ethernet driver is a multi-threaded, loadable, clonable,
-GLD-based STREAMS driver supporting the Data Link Provider Interface,
-\fBdlpi\fR(7P), on Sun Gigabit Ethernet hardware (NIU, Sun x8, Express Dual 10
-Gigabit Ethernet fiber XFP low profile adapter and the 10/100/1000BASE-T x8
-Express low profile adapter).
-.sp
-.LP
-The \fBnxge\fR driver functions include chip initialization, frame transmit and
-receive, flow classification, multicast and promiscuous support, and error
-recovery and reporting.
-.sp
-.LP
-The \fBnxge\fR device provides fully-compliant \fIIEEE 802.3ae\fR 10Gb/s full
-duplex operation using XFP-based 10GigE optics (NIU, dual 10 Gigabit fiber XFP
-adapter). The Sun Ethernet hardware supports the \fIIEEE 802.3x\fR frame-based
-flow control capabilities.
-.sp
-.LP
-For the 10/100/1000BASE-T adapter, the \fBnxge\fR driver and hardware support
-auto-negotiation, a protocol specified by the \fI1000 Base-T\fR standard.
-Auto-negotiation allows each device to advertise its capabilities and discover
-those of its peer (link partner). The highest common denominator supported by
-both link partners is automatically selected, yielding the greatest available
-throughput while requiring no manual configuration. The \fBnxge\fR driver also
-allows you to configure the advertised capabilities to less than the maximum
-(where the full speed of the interface is not required) or to force a specific
-mode of operation, irrespective of the link partner's advertised capabilities.
-.SH APPLICATION PROGRAMMING INTERFACE
-.sp
-.LP
-The cloning character-special device, \fB/dev/nxge\fR, is used to access all
-Sun Neptune NIU devices installed within the system.
-.sp
-.LP
-The \fBnxge\fR driver is managed by the \fBdladm\fR(1M) command line utility,
-which allows VLANs to be defined on top of \fBnxge\fR instances and for
-\fBnxge\fR instances to be aggregated. See \fBdladm\fR(1M) for more details.
-.sp
-.LP
-You must send an explicit DL_ATTACH_REQ message to associate the opened stream
-with a particular device (PPA). The PPA ID is interpreted as an unsigned
-integer data type and indicates the corresponding device instance (unit)
-number. The driver returns an error (DL_ERROR_ACK) if the PPA field value does
-not correspond to a valid device instance number for the system. The device is
-initialized on first attach and de-initialized (stopped) at last detach.
-.sp
-.LP
-The values returned by the driver in the DL_INFO_ACK primitive in response to a
-DL_INFO_REQ are:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Maximum SDU (default 1500).
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Minimum SDU (default 0). The driver pads to the mandatory 60-octet minimum
-packet size.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-DLSAP address length is 8.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-MAC type is \fBDL_ETHER\fR.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBSAP\fR length value is \fI-2\fR, meaning the physical address component is
-followed immediately by a 2-byte \fBSAP\fR component within the \fBDLSAP\fR
-address.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Broadcast address value is the Ethernet/IEEE broadcast address
-(FF:FF:FF:FF:FF:FF).
-.sp
-Due to the nature of link address definition for IPoIB, the
-DL_SET_PHYS_ADDR_REQ DLPI primitive is not supported.
-.sp
-In the transmit case for streams that have been put in raw mode via the
-DLIOCRAW ioctl, the dlpi application must prepend the 20 byte IPoIB destination
-address to the data it wants to transmit over-the-wire. In the receive case,
-applications receive the IP/ARP datagram along with the IETF defined 4 byte
-header.
-.RE
-.sp
-.LP
-Once in the DL_ATTACHED state, you must send a DL_BIND_REQ to associate a
-particular Service Access Point (SAP) with the stream.
-.SH CONFIGURATION
-.sp
-.LP
-For the \fI10/100/1000BASE-T\fR adapter, the \fBnxge\fR driver performs
-auto-negotiation to select the link speed and mode. Link speed and mode may be
-10000 Mbps full-duplex (10 Gigabit adapter), 1000 Mbps full-duplex, 100 Mbps
-full-duplex, or 10 Mbps full-duplex, depending on the hardware adapter type.
-See the \fI IEEE802.3\fR standard for more information.
-.sp
-.LP
-The auto-negotiation protocol automatically selects the 1000 Mbps, 100 Mbps, or
-10 Mbps operation modes (full-duplex only) as the highest common denominator
-supported by both link partners. Because the \fBnxge\fR device supports all
-modes, the effect is to select the highest throughput mode supported by the
-other device.
-.sp
-.LP
-You can also set the capabilities advertised by the \fBnxge\fR device using
-\fBdladm\fR(1M). The driver supports a number of parameters whose names begin
-with \fBen_\fR (see below). Each of these parameters contains a boolean value
-that determines if the device advertises that mode of operation. The
-\fBadv_autoneg_cap\fR parameter controls whether auto-negotiation is
-performed. If \fBadv_autoneg_cap\fR is set to 0, the driver forces the mode
-of operation selected by the first non-zero parameter in priority order as
-shown below:
-.sp
-.in +2
-.nf
- (highest priority/greatest throughput)
- en_1000fdx_cap 1000Mbps full duplex
- en_100fdx_cap 100Mbps full duplex
- en_10fdx_cap 10Mbps full duplex
- (lowest priority/least throughput)
-.fi
-.in -2
-
-.sp
-.LP
-All capabilities default to enabled. Note that changing any capability
-parameter causes the link to go down while the link partners renegotiate the
-link speed/duplex using the newly changed capabilities.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/dev/nxge*\fR\fR
-.ad
-.RS 28n
-Special character device.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/nxge\fR\fR
-.ad
-.RS 28n
-32-bit device driver (x86).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/sparcv9/nxge\fR\fR
-.ad
-.RS 28n
-64-bit device driver (SPARC).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/nxge\fR\fR
-.ad
-.RS 28n
-64-bit device driver (x86).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/nxge.conf\fR\fR
-.ad
-.RS 28n
-Configuration file.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture SPARC, x86
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBdladm\fR(1M), \fBnetstat\fR(1M), \fBattributes\fR(5), \fBstreamio\fR(7I),
-\fBdlpi\fR(7P), \fBdriver.conf\fR(4)
-.sp
-.LP
-\fIWriting Device Drivers\fR
-.sp
-.LP
-\fISTREAMS Programming Guide\fR
-.sp
-.LP
-\fINetwork Interfaces Programmer's Guide\fR
-.sp
-.LP
-\fIIEEE 802.3ae Specification\fR \(em 2002
diff --git a/usr/src/man/man7d/ohci.7d b/usr/src/man/man7d/ohci.7d
deleted file mode 100644
index 922cd18bfd..0000000000
--- a/usr/src/man/man7d/ohci.7d
+++ /dev/null
@@ -1,154 +0,0 @@
-'\" te
-.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH OHCI 7D "May 13, 2017"
-.SH NAME
-ohci \- OpenHCI host controller driver
-.SH SYNOPSIS
-.LP
-.nf
-\fBusb@unit-address\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBohci\fR driver is a USBA (Solaris USB Architecture) compliant nexus
-driver that supports the \fIOpen Host Controller Interface Specification
-1.1\fR, an industry standard developed by Compaq, Microsoft, and National
-Semiconductor.
-.sp
-.LP
-The \fBohci\fR driver supports bulk, interrupt, control and isochronous
-transfers.
-.SH FILES
-.ne 2
-.na
-\fB\fB/kernel/drv/ohci\fR\fR
-.ad
-.RS 28n
-32-bit x86 ELF kernel module
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/ohci\fR\fR
-.ad
-.RS 28n
-64-bit x86 ELF kernel module
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/sparcv9/ohci\fR\fR
-.ad
-.RS 28n
-64-bit SPARC ELF kernel module
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/ohci.conf\fR\fR
-.ad
-.RS 28n
-driver configuration file
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture SPARC, x86, PCI-based systems
-.TE
-
-.SH SEE ALSO
-.LP
-\fBattributes\fR(5), \fBehci\fR(7D), \fBhubd\fR(7D), \fBuhci\fR(7D),
-\fBusba\fR(7D)
-.sp
-.LP
-\fIWriting Device Drivers\fR
-.sp
-.LP
-\fIUniversal Serial Bus Specification 2.0\fR
-.sp
-.LP
-\fIOpen Host Controller Interface Specification for USB 1.0a\fR
-.sp
-.LP
-\fISystem Administration Guide: Basic Administration\fR
-.SH DIAGNOSTICS
-.LP
-All host controller errors are passed to the client drivers. Root hub errors
-are documented in \fBhubd\fR(7D).
-.sp
-.LP
-In addition to being logged, the following messages may appear on the system
-console. All messages are formatted in the following manner:
-.sp
-.in +2
-.nf
-WARNING: <device path> <ohci><instance number>>: Error message...
-.fi
-.in -2
-.sp
-
-.sp
-.ne 2
-.na
-\fBUnrecoverable USB Hardware Error.\fR
-.ad
-.sp .6
-.RS 4n
-There was an unrecoverable USB hardware error reported by the OHCI Controller.
-Please reboot the system. If this problem persists, contact your system vendor.
-.RE
-
-.sp
-.ne 2
-.na
-\fBNo SOF interrupts have been received. This OHCI USB controller is
-unusable.\fR
-.ad
-.sp .6
-.RS 4n
-The USB hardware is not generating Start Of Frame interrupts. Please reboot the
-system. If this problem persists, contact your system vendor.
-.RE
-
-.sp
-.LP
-The following messages may be entered into the system log. They are formatted
-in the following manner:
-.sp
-.in +2
-.nf
-<device path> <ohci<instance number>): Message...
-.fi
-.in -2
-.sp
-
-.sp
-.ne 2
-.na
-\fBFailed to program frame interval register.\fR
-.ad
-.sp .6
-.RS 4n
-For an unspecified reason, the frame interval register has been nulled out by
-the Uli M1575 chip. Please reboot the system. If this problem persists, contact
-your system vendor.
-.RE
-
diff --git a/usr/src/man/man7d/openprom.7d b/usr/src/man/man7d/openprom.7d
deleted file mode 100644
index bc60638cdf..0000000000
--- a/usr/src/man/man7d/openprom.7d
+++ /dev/null
@@ -1,409 +0,0 @@
-'\" te
-.\" Copyright (c) 1997, Sun Microsystems, Inc.
-.\" All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH OPENPROM 7D "Jan 13, 1997"
-.SH NAME
-openprom \- PROM monitor configuration interface
-.SH SYNOPSIS
-.LP
-.nf
-#include <sys/fcntl.h>
-.fi
-
-.LP
-.nf
-#include <sys/types.h>
-.fi
-
-.LP
-.nf
-#include <sys/openpromio.h>
-.fi
-
-.LP
-.nf
-open("/dev/openprom", \fImode\fR);
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The internal encoding of the configuration information stored in \fBEEPROM\fR
-or \fBNVRAM\fR varies from model to model, and on some systems the encoding is
-"hidden" by the firmware. The \fBopenprom\fR driver provides a consistent
-interface that allows a user or program to inspect and modify that
-configuration, using \fBioctl\fR(2) requests. These requests are defined in
-\fB<sys/openpromio.h>\fR:
-.sp
-.in +2
-.nf
-struct openpromio {
- uint_t oprom_size; /* real size of following data */
- union {
- char b[1]; /* NB: Adjacent, Null terminated */
- int i;
- } opio_u;
-};
-#define oprom_array opio_u.b /* property name/value array */
-#define oprom_node opio_u.i /* nodeid from navigation config-ops */
-#define oprom_len opio_u.i /* property len from OPROMGETPROPLEN */
-#define OPROMMAXPARAM 32768 /* max size of array (advisory) */
-.fi
-.in -2
-
-.sp
-.LP
-For all \fBioctl\fR(2) requests, the third parameter is a pointer to a
-\fBstruct openpromio\fR. All property names and values are null-terminated
-strings; the value of a numeric option is its \fBASCII\fR representation.
-.sp
-.LP
-For the raw \fBioctl\fR(2) operations shown below that explicitly or implicitly
-specify a nodeid, an error may be returned. This is due to the removal of the
-node from the firmware device tree by a Dynamic Reconfiguration operation.
-Programs should decide if the appropriate response is to restart the scanning
-operation from the beginning or terminate, informing the user that the tree has
-changed.
-.SH IOCTLS
-.sp
-.ne 2
-.na
-\fB\fBOPROMGETOPT\fR\fR
-.ad
-.RS 19n
-This ioctl takes the null-terminated name of a property in the
-\fIoprom_array\fR and returns its null-terminated value (overlaying its name).
-\fIoprom_size\fR should be set to the size of \fIoprom_array\fR; on return it
-will contain the size of the returned value. If the named property does not
-exist, or if there is not enough space to hold its value, then \fIoprom_size\fR
-will be set to zero. See \fBBUGS\fR below.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBOPROMSETOPT\fR\fR
-.ad
-.RS 19n
-This ioctl takes two adjacent strings in \fIoprom_array\fR; the null-terminated
-property name followed by the null-terminated value.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBOPROMSETOPT2\fR\fR
-.ad
-.RS 19n
-This ioctl is similar to \fBOPROMSETOPT,\fR except that it uses the difference
-between the actual user array size and the length of the property name plus its
-null terminator.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBOPROMNXTOPT\fR\fR
-.ad
-.RS 19n
-This ioctl is used to retrieve properties sequentially. The null-terminated
-name of a property is placed into \fIoprom_array\fR and on return it is
-replaced with the null-terminated name of the next property in the sequence,
-with \fIoprom_size\fR set to its length. A null string on input means return
-the name of the first property; an \fIoprom_size\fR of zero on output means
-there are no more properties.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBOPROMNXT\fR\fR
-.ad
-.br
-.na
-\fB\fBOPROMCHILD\fR\fR
-.ad
-.br
-.na
-\fB\fBOPROMGETPROP\fR\fR
-.ad
-.br
-.na
-\fB\fBOPROMNXTPROP\fR\fR
-.ad
-.RS 19n
-These ioctls provide an interface to the raw \fIconfig_ops\fR operations in the
-\fBPROM\fR monitor. One can use them to traverse the system device tree; see
-\fBprtconf\fR(1M).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBOPROMGETPROPLEN\fR\fR
-.ad
-.RS 19n
-This ioctl provides an interface to the \fIproperty length\fR raw config op. It
-takes the name of a property in the buffer, and returns an integer in the
-buffer. It returns the integer \fB-1\fR if the property does not exist; \fB0\fR
-if the property exists, but has no value (a boolean property); or a positive
-integer which is the length of the property as reported by the \fBPROM\fR
-monitor. See \fBBUGS\fR below.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBOPROMGETVERSION\fR\fR
-.ad
-.RS 19n
-This ioctl returns an arbitrary and platform-dependent NULL-terminated string
-in \fIoprom_array\fR, representing the underlying version of the firmware.
-.RE
-
-.SH ERRORS
-.sp
-.ne 2
-.na
-\fB\fBEAGAIN\fR\fR
-.ad
-.RS 10n
-There are too many opens of the \fB/dev/openprom\fR device.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEFAULT\fR\fR
-.ad
-.RS 10n
-A bad address has been passed to an \fBioctl\fR(2) routine.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEINVAL\fR\fR
-.ad
-.RS 10n
-The size value was invalid, or (for \fBOPROMSETOPT\fR) the property does
-not exist, or an invalid ioctl is being issued, or the ioctl is not supported
-by the firmware, or the nodeid specified does not exist in the firmware device
-tree.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBENOMEM\fR\fR
-.ad
-.RS 10n
-The kernel could not allocate space to copy the user's structure.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEPERM\fR\fR
-.ad
-.RS 10n
-Attempts have been made to write to a read-only entity, or read from a write
-only entity.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBENXIO\fR\fR
-.ad
-.RS 10n
-Attempting to open a non-existent device.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fR\fIoprom_array\fR Data Allocation and Reuse
-.sp
-.LP
-The following example shows how the \fIoprom_array\fR is allocated and reused
-for data returned by the driver.
-
-.sp
-.in +2
-.nf
-/*
- * This program opens the openprom device and prints the platform
- * name (root node name property) and the prom version.
- *
- * NOTE: /dev/openprom is readable only by user 'root' or group 'sys'.
- */
-#include <stdio.h>
-#include <string.h>
-#include <fcntl.h>
-#include <errno.h>
-#include <unistd.h>
-#include <stdlib.h>
-#include <sys/openpromio.h>
-#define min(a, b) (a < b ? a : b)
-#define max(a, b) (a > b ? a : b)
-#define MAXNAMESZ 32 /* Maximum property *name* size */
-#define BUFSZ 1024 /* A Handly default buffer size */
-#define MAXVALSZ (BUFSZ - sizeof (int))
-static char *promdev = "/dev/openprom";
-/*
- * Allocate an openpromio structure big enough to contain
- * a bufsize'd oprom_array. Zero out the structure and
- * set the oprom_size field to bufsize.
- */
-static struct openpromio *
-opp_zalloc(size_t bufsize)
-{
- struct openpromio *opp;
- opp = malloc(sizeof (struct openpromio) + bufsize);
- (void) memset(opp, 0, sizeof (struct openpromio) + bufsize);
- opp->oprom_size = bufsize;
- return (opp);
-}
-/*
- * Free a 'struct openpromio' allocated by opp_zalloc
- */
-static void
-opp_free(struct openpromio *opp)
-{
- free(opp);
-}
-/*
- * Get the peer node of the given node. The root node is the peer of zero.
- * After changing nodes, property lookups apply to that node. The driver
- * 'remembers' what node you are in.
- */
-static int
-peer(int nodeid, int fd)
-{
- struct openpromio *opp;
- int i;
- opp = opp_zalloc(sizeof (int));
- opp->oprom_node = nodeid;
- if (ioctl(fd, OPROMNEXT, opp) < 0) {
- perror("OPROMNEXT");
- exit(1);
- }
- i = opp->oprom_node;
- opp_free(opp);
- return(i);
-}
-int
-main(void)
-{
- struct openpromio *opp;
- int fd, proplen;
- size_t buflen;
- if ((fd = open(promdev, O_RDONLY)) < 0) {
- fprintf(stderr, "Cannot open openprom device\en");
- exit(1);
- }
- /*
- * Get and print the length and value of the
- * root node 'name' property
- */
- (void) peer(0, fd); /* Navigate to the root node */
- /*
- * Allocate an openpromio structure sized big enough to
- * take the string "name" as input and return the int-sized
- * length of the 'name' property.
- * Then, get the length of the 'name' property.
- */
- buflen = max(sizeof (int), strlen("name") + 1);
- opp = opp_zalloc(buflen);
- (void) strcpy(opp->oprom_array, "name");
- if (ioctl(fd, OPROMGETPROPLEN, opp) < 0) {
- perror("OPROMGETPROPLEN");
- /* exit(1); */
- proplen = 0; /* down-rev driver? */
- } else
- proplen = opp->oprom_len;
- opp_free(opp);
- if (proplen == -1) {
- printf("'name' property does not exist!\en");
- exit (1);
- }
- /*
- * Allocate an openpromio structure sized big enough
- * to take the string 'name' as input and to return
- * 'proplen + 1' bytes. Then, get the value of the
- * 'name' property. Note how we make sure to size the
- * array at least one byte more than the returned length
- * to guarantee NULL termination.
- */
- buflen = (proplen ? proplen + 1 : MAXVALSZ);
- buflen = max(buflen, strlen("name") + 1);
- opp = opp_zalloc(buflen);
- (void) strcpy(opp->oprom_array, "name");
- if (ioctl(fd, OPROMGETPROP, opp) < 0) {
- perror("OPROMGETPROP");
- exit(1);
- }
- if (opp->oprom_size != 0)
- printf("Platform name <%s> property len <%d>\en",
- opp->oprom_array, proplen);
- opp_free(opp);
- /*
- * Allocate an openpromio structure assumed to be
- * big enough to get the 'prom version string'.
- * Get and print the prom version.
- */
- opp_zalloc(MAXVALSZ);
- opp->oprom_size = MAXVALSZ;
- if (ioctl(fd, OPROMGETVERSION, opp) < 0) {
- perror("OPROMGETVERSION");
- exit(1);
- }
- printf("Prom version <%s>\en", opp->oprom_array);
- opp_free(opp);
- (void) close(fd);
- return (0);
-}
-.fi
-.in -2
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/dev/openprom\fR\fR
-.ad
-.RS 17n
-PROM monitor configuration interface
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBeeprom\fR(1M), \fBmonitor\fR(1M), \fBprtconf\fR(1M), \fBioctl\fR(2),
-\fBmem\fR(7D)
-.SH BUGS
-.sp
-.LP
-There should be separate return values for non-existent properties as opposed
-to not enough space for the value.
-.sp
-.LP
-An attempt to set a property to an illegal value results in the \fBPROM\fR
-setting it to some legal value, with no error being returned. An
-\fBOPROMGETOPT\fR should be performed after an \fBOPROMSETOPT\fR to verify that
-the set worked.
-.sp
-.LP
-Some \fBPROMS\fR \fIlie\fR about the property length of some string properties,
-omitting the \fBNULL\fR terminator from the property length. The
-\fBopenprom\fR driver attempts to \fItransparently\fR compensate for these bugs
-when returning property values by \fBNULL\fR terminating an extra character in
-the user buffer if space is available in the user buffer. This extra character
-is excluded from the \fIoprom_size\fR field returned from \fBOPROMGETPROP\fR
-and \fBOPROMGETOPT\fR and excluded in the \fIoprom_len\fR field returned from
-\fBOPROMGETPROPLEN\fR but is returned in the user buffer from the calls that
-return data, if the user buffer is allocated at least one byte larger than the
-property length.
diff --git a/usr/src/man/man7d/oplkmdrv.7d b/usr/src/man/man7d/oplkmdrv.7d
deleted file mode 100644
index 6c73dfdb14..0000000000
--- a/usr/src/man/man7d/oplkmdrv.7d
+++ /dev/null
@@ -1,43 +0,0 @@
-'\" te
-.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH OPLKMDRV 7D "Apr 18, 2006"
-.SH NAME
-oplkmdrv \- key management driver for the SPARC Enterprise Server family
-.SH SYNOPSIS
-.LP
-.nf
-\fBkmdrv\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBoplkmdrv\fR is a character driver that implements a framework for exchanging
-the security keys with the Service Processor on a SPARC Enterprise Server. The
-\fBoplkmdrv\fR driver is specific to the SPARC Enterprise Server family.
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Private
-.TE
-
-.sp
-.LP
-\fBattributes\fR(5)
-.SH SEE ALSO
-.sp
-.LP
-\fBattributes\fR(5)
diff --git a/usr/src/man/man7d/oplmsu.7d b/usr/src/man/man7d/oplmsu.7d
deleted file mode 100644
index 003f66cf3f..0000000000
--- a/usr/src/man/man7d/oplmsu.7d
+++ /dev/null
@@ -1,42 +0,0 @@
-'\" te
-.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH OPLMSU 7D "Apr 18, 2006"
-.SH NAME
-oplmsu \- Serial I/O multiplexing STREAMS device driver
-.SH SYNOPSIS
-.LP
-.nf
-\fB/pseudo-console\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBoplmsu\fR driver is a STREAMS multiplexer driver that connects multiple
-serial devices to the system console.
-.sp
-.LP
-Currently, this support is provided only on a SPARC Enterprise Server.
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Private
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBattributes\fR(5)
diff --git a/usr/src/man/man7d/oplpanel.7d b/usr/src/man/man7d/oplpanel.7d
deleted file mode 100644
index 21a658aa64..0000000000
--- a/usr/src/man/man7d/oplpanel.7d
+++ /dev/null
@@ -1,34 +0,0 @@
-'\" te
-.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH OPLPANEL 7D "Apr 18, 2006"
-.SH NAME
-oplpanel \- device driver for the SPARC Enterprise Server family
-.SH DESCRIPTION
-.sp
-.LP
-The \fBoplpanel\fR device driver monitors the panel reset button. If the button
-is pressed, a high-level interrupt is generated, and the \fBoplpanel\fR driver
-causes a system panic.
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Private
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBattributes\fR(5)
diff --git a/usr/src/man/man7d/pchtemp.7d b/usr/src/man/man7d/pchtemp.7d
deleted file mode 100644
index 954a7d76f3..0000000000
--- a/usr/src/man/man7d/pchtemp.7d
+++ /dev/null
@@ -1,76 +0,0 @@
-.\"
-.\" This file and its contents are supplied under the terms of the
-.\" Common Development and Distribution License ("CDDL"), version 1.0.
-.\" You may only use this file in accordance with the terms of version
-.\" 1.0 of the CDDL.
-.\"
-.\" A full copy of the text of the CDDL should have accompanied this
-.\" source. A copy of the CDDL is also available via the Internet at
-.\" http://www.illumos.org/license/CDDL.
-.\"
-.\"
-.\" Copyright 2019 Joyent, Inc.
-.\" Copyright 2021 Oxide Computer Company
-.\"
-.Dd January 21, 2021
-.Dt PCHTEMP 7D
-.Os
-.Sh NAME
-.Nm pchtemp
-.Nd Intel platform controller hub temperature sensor driver
-.Sh SYNOPSIS
-.Pa /dev/sensors/temperature/pch/*
-.Sh DESCRIPTION
-The
-.Nm
-driver provides the system the ability to read the digital temperature
-sensor found on several Intel platform controller hub (PCH) chipsets.
-The following chipsets are supported which cover most Intel Core family
-(non-Atom) CPUs starting with the Haswell generation:
-.Bl -dash
-.It
-Intel 8 Series / C220 Series Chipset Platform Controller Hub
-.It
-Intel 9 Series Chipset Family Platform Controller Hub
-.It
-Intel Mobile 5th Generation Processor Family (Broadwell-U)
-.It
-Intel C610 Series Chipset and X99 Chipset Platform Controller Hub
-.It
-Intel 100 Series Chipset Family Platform Controller Hub
-.It
-Intel C620 Series Chipset Platform Controller Hub
-.It
-Intel 200 and Z370 Series Chipset Families Platform Controller Hub
-.It
-Intel 7th/8th Generation Processor Family U/Y Platforms
-.It
-Intel 300 Series and Intel C240 Series Chipset Family Platform
-Controller Hub
-.It
-Intel 400 Series Chipset Family On-Package Platform Controller Hub
-.It
-Intel 400 Series Chipset Family Platform Controller Hub
-.El
-.Pp
-Temperature information is available to the system via the fault
-management architecture
-.Pq FMA .
-The file system location and programming interface to the
-.Nm
-driver are considered
-.Sy Volatile ,
-subject to change without notice, and should not be used directly.
-Raw temperature information can be dumped through the FMA developer
-utility
-.Sy fmtopo .
-.Sh SEE ALSO
-.Xr fmadm 1M
-.Rs
-.%A Intel Corporation
-.%B Intel 300 Series and Intel C240 Series Chipset Family Platform Controller Hub
-.%D March 2019
-.%O Document Number 337347-005
-.%V 1
-.%U https://www.intel.com/content/dam/www/public/us/en/documents/datasheets/300-series-chipset-pch-datasheet-vol-1.pdf
-.Re
diff --git a/usr/src/man/man7d/pcic.7d b/usr/src/man/man7d/pcic.7d
deleted file mode 100644
index 8d74265931..0000000000
--- a/usr/src/man/man7d/pcic.7d
+++ /dev/null
@@ -1,112 +0,0 @@
-'\" te
-.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PCIC 7D "Jun 27, 2006"
-.SH NAME
-pcic \- Intel i82365SL PC Card Interface Controller
-.SH DESCRIPTION
-.sp
-.LP
-The Intel i82365SL PC Card interface controller provides one or more \fBPCMCIA
-PC\fR card sockets. The \fBpcic\fR driver implements a \fBPCMCIA\fR bus nexus
-driver.
-.sp
-.LP
-The driver provides basic support for the Intel 82365SL and compatible chips.
-Tested chips are:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Intel \(em 82365SL.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Cirrus Logic \(em PD6710/PD6720/PD6722.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Vadem \(em VG365/VG465/VG468/VG469.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Toshiba \(em PCIC and ToPIC
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Ricoh \(em RF5C366/RL5C466/RL5C475/RL5C476/RL5C477/RL5C478.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-02Micro \(em OZ6912/6972.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Texas Instruments \(em PCI1130/PCI1131/PCI1031/PCI1221/PCI1225/PCI1520/PCI
-1410/PCI1420/PCI4520/PCI7510/PCI7621.
-.RE
-.sp
-.LP
-While most systems using one of the above chips will work, some systems are not
-supported due to hardware designs options that may not be software detectable.
-.sp
-.LP
-Direct access to the \fBPCMCIA\fR hardware is not supported. All device access
-must be through the DDI.
-.SH CONFIGURATION
-.sp
-.LP
-Configuration of PC Card interface controllers are automatically done in the
-system by leveraging ACPI on x86 (or OBP on SPARC). Configuration includes
-allocation of device memory, I/O ports, CardBus subordinary bus number and
-interrupts. There is no user-interference required. Note that the
-controller may not work when ACPI is disabled.
-.sp
-.LP
-There is one driver configuration property defined in the \fBpcic.conf\fR file:
-.sp
-.ne 2
-.na
-\fB\fBinterrupt-priorities=6;\fR\fR
-.ad
-.RS 27n
-This property must be defined and must be below 10.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/pcic\fR\fR
-.ad
-.RS 25n
-\fBpcic\fR driver.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/pcic.conf\fR\fR
-.ad
-.RS 25n
-\fBpcic\fR configuration file.
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBcardbus\fR(4), \fBstp4020\fR(7D), \fBpcmcia\fR(7D)
diff --git a/usr/src/man/man7d/pcicmu.7d b/usr/src/man/man7d/pcicmu.7d
deleted file mode 100644
index d487645c06..0000000000
--- a/usr/src/man/man7d/pcicmu.7d
+++ /dev/null
@@ -1,33 +0,0 @@
-'\" te
-.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PCICMU 7D "Apr 18, 2006"
-.SH NAME
-pcicmu \- PCI bus nexus driver for the SPARC Enterprise Server family
-.SH DESCRIPTION
-.sp
-.LP
-The \fBpcicmu\fR nexus driver is used for onboard devices for the SPARC
-Enterprise Server family.
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Private
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBattributes\fR(5)
diff --git a/usr/src/man/man7d/pcipsy.7d b/usr/src/man/man7d/pcipsy.7d
deleted file mode 100644
index 327c700827..0000000000
--- a/usr/src/man/man7d/pcipsy.7d
+++ /dev/null
@@ -1,26 +0,0 @@
-'\" te
-.\" Copyright (c) 2005, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 2019 Peter Tribble.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PCIPSY 7D "Jan 28, 2019"
-.SH NAME
-pcipsy \- PCI bus to Safari bus nexus driver
-.SH DESCRIPTION
-.LP
-The \fBpcipsy\fR nexus driver is used for certain IO assemblies for sun4u
-servers.
-.SH FILES
-.ne 2
-.na
-\fB/platform/sun4u/kernel/drv/sparcv9/pcipsy\fR
-.ad
-.sp .6
-.RS 4n
-64-bit ELF kernel module.
-.RE
-
-.SH SEE ALSO
-.LP
-\fBpcisch\fR(7D)
diff --git a/usr/src/man/man7d/pcisch.7d b/usr/src/man/man7d/pcisch.7d
deleted file mode 100644
index a484f11c0b..0000000000
--- a/usr/src/man/man7d/pcisch.7d
+++ /dev/null
@@ -1,29 +0,0 @@
-'\" te
-.\" Copyright (c) 2005, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PCISCH 7D "May 26, 2005"
-.SH NAME
-pcisch \- PCI Bus to Safari bus nexus driver
-.SH DESCRIPTION
-.sp
-.LP
-The \fBpcisch\fR nexus driver is used for Schizo and XMITS-based I/O assemblies
-for the following high-end and midrange Sun enterprise servers: Sun Fire E15K,
-Sun Fire E25K, Sun Fire E2900, Sun Fire E4900 and Sun Fire E6900.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/platform/sun4u/kernel/drv/sparcv9/pcisch\fR\fR
-.ad
-.sp .6
-.RS 4n
-64-bit ELF kernel module.
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBpcipsy\fR(7D)
diff --git a/usr/src/man/man7d/pcmcia.7d b/usr/src/man/man7d/pcmcia.7d
deleted file mode 100644
index 415b94047b..0000000000
--- a/usr/src/man/man7d/pcmcia.7d
+++ /dev/null
@@ -1,27 +0,0 @@
-'\" te
-.\" Copyright (c) 1996, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PCMCIA 7D "Feb 28, 2005"
-.SH NAME
-pcmcia \- PCMCIA nexus driver
-.SH DESCRIPTION
-.sp
-.LP
-The \fBPCMCIA\fR nexus driver supports \fBPCMCIA\fR card client device
-drivers. There are no user-configurable options for this driver.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/kernel/misc/pcmcia\fR\fR
-.ad
-.RS 23n
-\fBpcmcia\fR driver
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBpcmciad\fR(1M)
diff --git a/usr/src/man/man7d/pcn.7d b/usr/src/man/man7d/pcn.7d
deleted file mode 100644
index f78375239d..0000000000
--- a/usr/src/man/man7d/pcn.7d
+++ /dev/null
@@ -1,161 +0,0 @@
-'\" te
-.\" Copyright 2011 Jason King. All rights reserved.
-.\" Copyright (c) 2001-2007 by Garrett D'Amore.
-.\" Redistribution and use in source and binary forms, with or without
-.\" modification, are permitted provided that the following conditions are met:
-.\" 1. Redistributions of source code must retain the above copyright notice,
-.\" this list of conditions and the following disclaimer.
-.\" 2. Redistributions in binary form must reproduce the above copyright notice,
-.\" this list of conditions and the following disclaimer in the documentation
-.\" and/or other materials provided with the distribution.
-.\" 3. Neither the name of the author nor the names of any co-contributors may
-.\" be used to endorse or promote products derived from this software
-.\" without specific prior written permission.
-.\" THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER AND CONTRIBUTORS
-.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
-.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
-.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR
-.\" CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
-.\" EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-.\" PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-.\" OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-.\" WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-.\" OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-.\" ADVISED OF THE POSSIBILITY OF SUCH DAMAGE
-.\" Portions Copyright (c) 2007 by Sun Microsystems, Inc. All Rights Reserved.
-
-.TH "PCN" "7D" "Jan 10, 2020"
-.
-.SH "NAME"
-\fBpcn\fR \- PCnet Ethernet device driver
-.SH "SYNOPSIS"
-.nf
-\fB/dev/pcn\fR
-.fi
-
-.SH "DESCRIPTION"
-The \fBpcn\fR driver is a multi\-threaded, loadable, clonable GLDv3\-based
-STREAMS driver supporting the Data Link Provider Interface \fBdlpi\fR(7P) for
-the AMD PCnet family of Ethernet controllers.
-.SH "APPLICATION PROGRAMMING INTERFACE"
-The \fBpcn\fR driver can be used as either a "style 1" or a "style 2" Data Link
-Service Provider. Physical points of attachment (PPAs) are interpreted as the
-instance number of the \fBpcn\fR controller as assigned by the
-operating environment.
-.sp
-.LP
-The values returned by the driver in the \fBDL_INFO_ACK\fR response are:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Maximum SDU is 1500.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Minimum SDU is 0.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The dlsap address length is 8.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-MAC type is \fBDL_ETHER\fR.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-SAP length is \-2. The 6\-byte physical address is immediately followed by a
-2\-byte SAP.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Service mode is \fBDL_CLDLS\fR.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The broadcast address is the 6\-byte Ethernet broadcast address
-(\fBff:ff:ff:ff:ff:ff\fR).
-.SH "CONFIGURATION"
-The \fBpcn\fR driver performs auto-negotiation to select the link speed and
-mode. Link speed may be 100Mbps full\-duplex, 100Mbps half\-duplex,
-10Mbps full\-duplex, or 10Mbps half\-duplex, depending on the hardware
-adapter type. See the \fIIEEE802.3\fR standard for more information.
-.sp
-.LP
-The capabilities advertised by the \fBpcn\fR device can be set using
-\fBdladm\fR(1m). The driver supports a number of parameters whose names
-begin with \fBen_\fR (see below). Each of these parameters contains a
-boolean value that determines if the device advertises that mode of
-operations. The \fBadv_autoneg_cap\fR parameter controls whether
-auto-negotiation is performed. If \fBadv_autoneg_cap\fR is set to 0, the
-driver forces the mode of operation selected by the first non-zero
-parameter in priority order as shown below:
-.sp
-.in +2
-.nf
- (highest priority/greatest throughput)
- en_100fdx_cap 100Mbps full duplex
- en_10fdx_cap 10Mbps full duplex
- (lowest priority/least throughput)
-.fi
-.in -2
-
-.sp
-.LP
-All capabilities default to enabled. Note that changing any capability
-parameter causes the link to go down while the link partners renegotiate
-the link speed/duplex using the newly changed capabilities.
-.SH "ATTRIBUTES"
-See \fBattributes\fR(5) for a description of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture x86
-_
-Interface Stability Committed
-.TE
-
-.SH "FILES"
-.ne 2
-.na
-\fB/dev/pcn\fR
-.ad
-.sp .6
-.RS 4n
-Special character device.
-.RE
-
-.sp
-.ne 2
-.na
-\fB/kernel/drv/amd64/pcn\fR
-.ad
-.sp .6
-.RS 4n
-Device driver (x86)
-.RE
-
-.SH "SEE ALSO"
-\fBattributes\fR(5), \fBstreamio\fR(7I), \fBdlpi\fR(7p)
-.sp
-.LP
-\fIIEEE 802.3\fR \(em Institute of Electrical and Electronics Engineers, 2002
diff --git a/usr/src/man/man7d/physmem.7d b/usr/src/man/man7d/physmem.7d
deleted file mode 100644
index 5881f90aa4..0000000000
--- a/usr/src/man/man7d/physmem.7d
+++ /dev/null
@@ -1,45 +0,0 @@
-'\" te
-.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PHYSMEM 7D "Nov 15, 2006"
-.SH NAME
-physmem \- physmem driver
-.SH DESCRIPTION
-.sp
-.LP
-The \fBphysmem\fR driver is a private mechanism used by diagnostic test suites
-to test the physical memory of the system.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/dev/physmem\fR\fR
-.ad
-.sp .6
-.RS 4n
-Kernel module.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for a description of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface stability Private
-.TE
-
-.SH CAUTION
-.sp
-.LP
-This driver is used by Sun internal diagnostic programs only. Any other use may
-have a harmful impact on the system.
diff --git a/usr/src/man/man7d/pm.7d b/usr/src/man/man7d/pm.7d
deleted file mode 100644
index 60679b69f7..0000000000
--- a/usr/src/man/man7d/pm.7d
+++ /dev/null
@@ -1,404 +0,0 @@
-'\" te
-.\" Copyright (c) 2001 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PM 7D "Sep 20, 1999"
-.SH NAME
-pm \- Power Management driver
-.SH SYNOPSIS
-.LP
-.nf
-\fB/dev/pm\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The Power Management ( \fBpm\fR) driver provides an interface for applications
-to configure devices within the system for Power Management. The interface is
-provided through \fBioctl\fR(2) commands. The \fBpm\fR driver may be accessed
-using \fB/dev/pm\fR.
-.SS "Power Management Framework"
-.sp
-.LP
-The Power Management framework model allows the system to be viewed as a
-collection of devices. Each device is a collection of components that comprise
-the smallest power manageable units. The device driver controls the definition
-of a device's power manageable components.
-.sp
-.LP
-A component can either be \fBbusy\fR or \fBidle\fR at the current power level.
-Normally, the Power Management framework takes an \fBidle\fR component to the
-next lower power level. The Power Management framework uses two factors to
-determine this transition: the component must have been idle for at least the
-threshold time, and the device to which the component belongs must satisfy any
-dependency requirements. A dependency occurs when a device requires another
-device to be power managed before it can be power managed. Dependencies occur
-on a per device basis: when a dependency exists, no components of a device may
-be managed unless all the devices it depends upon are first power managed.
-.sp
-.LP
-Using the commands below, an application may take control of the Power
-Management of a device from the Power Management framework driver and manage
-the transition of device power levels directly.
-.sp
-.LP
-For this set of ioctl commands, \fIarg\fR (see \fBioctl\fR(2)) points to a
-structure of type \fBpm_req\fR defined in <\fBsys/pm.h\fR>:
-.sp
-.in +2
-.nf
-typedef struct pm_req {
- char *physpath; /* physical path of device */
- /* to configure. See libdevinfo(3LIB) */
- int component; /* device component */
- int value; /* power level, threshold value, or count */
- void *data; /* command-dependent variable-sized data */
- size_t datasize; /* size of data buffer */
- } pm_req_t;
-.fi
-.in -2
-
-.sp
-.LP
-The fields should contain the following data:
-.sp
-.ne 2
-.na
-\fB\fIphyspath\fR\fR
-.ad
-.RS 13n
-Pointer to the physical path of a device. See \fBlibdevinfo\fR(3LIB). For
-example, for the device \fB/devices/pseudo/pm@0:pm\fR the \fIphyspath\fR value
-would be \fB/pseudo/pm@0\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIcomponent\fR\fR
-.ad
-.RS 13n
-Non-negative integer specifying which component is being configured. The
-numbering starts at zero.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIvalue\fR\fR
-.ad
-.RS 13n
-Non-negative integer specifying the threshold value in seconds or the desired
-power level, or the number of levels being specified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIdata\fR\fR
-.ad
-.RS 13n
-Pointer to a buffer which contains or receives variable-sized data, such as the
-name of a device upon which this device has a dependency.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIsize\fR\fR
-.ad
-.RS 13n
-Size of the data buffer.
-.RE
-
-.sp
-.LP
-Not all fields are used in each command.
-.sp
-.ne 2
-.na
-\fB\fBPM_DIRECT_PM\fR\fR
-.ad
-.sp .6
-.RS 4n
-The device named by \fIphyspath\fR is disabled from being power managed by the
-framework. The caller will power manage the device directly using the
-\fBPM_DIRECT_NOTIFY\fR, \fBPM_GET_TIME_IDLE\fR and \fBPM_GET_CURRENT_POWER\fR,
-\fBPM_GET_FULL_POWER\fR and \fBPM_SET_CURRENT_POWER\fR commands. If the device
-needs to have its power level changed either because its driver calls
-\fBpm_raise_power\fR(9F), \fBpm_lower_power\fR(9F), or
-\fBpm_power_has_changed\fR(9F) or because the device is the parent of another
-device that is changing power level or a device that this device depends on is
-changing power level, then the power level change of the device will be blocked
-and the caller will be notified as described below for the
-\fBPM_DIRECT_NOTIFY\fR command.
-.sp
-Error codes:
-.sp
-.ne 2
-.na
-\fB\fBEBUSY\fR\fR
-.ad
-.RS 9n
-Device already disabled for Power Management by framework.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEPERM\fR\fR
-.ad
-.RS 9n
-Caller is neither superuser nor effective group ID of 0.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPM_RELEASE_DIRECT_PM\fR\fR
-.ad
-.sp .6
-.RS 4n
-The device named by \fIphyspath\fR (which must have been the target of a
-\fBPM_DIRECT_PM\fR command) is re-enabled for Power Management by the
-framework.
-.sp
-Error codes:
-.sp
-.ne 2
-.na
-\fB\fBEINVAL\fR\fR
-.ad
-.RS 10n
-Device component out of range.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPM_DIRECT_NOTIFY \fR\fBPM_DIRECT_NOTIFY_WAIT\fR\fR
-.ad
-.sp .6
-.RS 4n
-These commands allow the process that is directly power managing a device to be
-notified of events that could change the power level of the device. When such
-an event occurs, this command returns information about the event.
-.sp
- \fIarg\fR (see \fBioctl\fR(2)) points to a structure of type
-\fBpm_state_change\fR defined in \fB<sys/pm.h>\fR:
-.sp
-.in +2
-.nf
-typedef struct pm_state_change {
- char *physpath; /* device which has changed state */
- int component; /* which component changed state */
-#if defined(_BIG_ENDIAN)
- ushort_t flags; /* PSC_EVENT_LOST, PSC_ALL_LOWEST */
- ushort_t event; /* type of event */
-#else
- ushort_t event; /* type of event *
- ushort_t flags; /* PSC_EVENT_LOST, PSC_ALL_LOWEST */
-#endif
- time_t timestamp; /* time of state change */+
- int old_level; /* power level changing from */
- int new_level; /* power level changing to */
- size_t size; /* size of buffer physpath points to */
-} pm_state_change_t;
-.fi
-.in -2
-
-When an event occurs, the struct pointed to by \fIarg\fR is filled in. If the
-event type is \fBPSC_PENDING_CHANGE\fR, then the information in the rest of the
-struct describes an action that the framework would have taken if the device
-were not directly power managed by the caller. The caller is responsible for
-completing the indicated level changes using \fBPM_SET_CURRENT_POWER\fR below.
-.sp
-An event type of \fBPSC_HAS_CHANGED\fR indicates that the driver for the
-directly power managed device has called \fBpm_power_has_changed\fR(9F) due to
-the device changing power on its own. It is provided to allow the caller to
-track the power state of the device.
-.sp
-The system keeps events in a circular buffer. If the buffer overflow, the
-oldest events are lost and when the event that next follows a lost event is
-retrieved it will have PSC_EVENT_LOST set in flags.
-.sp
-\fBPM_DIRECT_NOTIFY\fR returns \fBEWOULDBLOCK\fR if no event is pending, and
-\fBPM_DIRECT_NOTIFY_WAIT\fR blocks until an event is available.
-.sp
-\fBpm\fR also supports the \fBpoll\fR(2) interface. When an event is pending a
-\fBpoll\fR(2) call that includes a file descriptor for \fB/dev/pm\fR and that
-has \fBPOLLIN \fR or \fBPOLLRDNORM \fR set in its event mask will return.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPM_SET_CURRENT_POWER\fR\fR
-.ad
-.sp .6
-.RS 4n
-Component \fIcomponent\fR of the device named by \fIphyspath\fR (which must
-contain the physical path of a device against which the process has issued a
-\fBPM_DIRECT_PM\fR command) is set to power level \fIvalue. \fRIf all
-components of the device named by \fIphyspath\fR were at level 0, \fIvalue\fR
-is non-zero and some device has a dependency on this device, then all
-components of that device will be brought to full power before this command
-returns. Similarly, if the parent of the target device is powered off, then it
-will be brought up as needed before this command returns. When
-PM_SET_CURRENT_POWER is issued against a device, the resulting power change is
-included in the event list for PM_DIRECT_NOTIFY.
-.sp
-Error codes:
-.sp
-.ne 2
-.na
-\fB\fBEINVAL\fR\fR
-.ad
-.RS 10n
-Device component out of range, or power level < 0.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEIO\fR\fR
-.ad
-.RS 10n
-Failed to power device or its ancestors or the devices on which this device has
-dependency or their ancestors. Note that this may not indicate a failure, the
-device driver may have rejected the command as inappropriate because the
-component has become busy.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEPERM\fR\fR
-.ad
-.RS 10n
-Caller has not previously issued a successful \fBPM_DIRECT_PM\fR command
-against this device.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPM_GET_FULL_POWER\fR\fR
-.ad
-.sp .6
-.RS 4n
-The highest supported power level of component \fIcomponent\fR of the device
-named by \fIphyspath\fR is returned.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPM_GET_CURRENT_POWER\fR\fR
-.ad
-.sp .6
-.RS 4n
-The current power level of component \fIcomponent\fR of the device named by
-\fIphyspath\fR is returned.
-.sp
-Error codes:
-.sp
-.ne 2
-.na
-\fB\fBEAGAIN\fR\fR
-.ad
-.RS 10n
-Device component power level is not currently known.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBPM_GET_TIME_IDLE\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBPM_GET_TIME_IDLE\fR returns the number of seconds that component
-\fIcomponent\fR of the device named by \fIphyspath\fR has been idle. If the
-device is not idle, then \fB0\fR is returned.
-.sp
-Note that because the state of the device may change between the time the
-process issues the \fBPM_GET_TIME_IDLE\fR command and the time the process
-issues a \fBPM_SET_CURRENT_POWER\fR command to reduce the power level of an
-idle component, the process must be prepared to deal with a
-\fBPM_SET_CURRENT_POWER\fR command returning failure because the driver has
-rejected the command as inappropriate because the device component has become
-busy. This can be differentiated from other types of failures by issuing the
-\fBPM_GET_TIME_IDLE\fR command again to see if the component has become busy.
-.RE
-
-.SH ERRORS
-.sp
-.LP
-Upon error, the commands will return \fB\(mi1\fR, and set \fIerrno\fR. In
-addition to the error codes listed above by command, the following error codes
-are common to all commands:
-.sp
-.ne 2
-.na
-\fB\fBEFAULT\fR\fR
-.ad
-.RS 10n
- Bad address passed in as argument.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBENODEV\fR\fR
-.ad
-.RS 10n
- Device is not power manageable, or device is not configured.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBENXIO\fR\fR
-.ad
-.RS 10n
- Too many opens attempted.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface stability Unstable
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBpmconfig\fR(1M), \fBIntro\fR(2), \fBioctl\fR(2), \fBlibdevinfo\fR(3LIB),
-\fBpower.conf\fR(4), \fBattributes\fR(5), \fBattach\fR(9E), \fBdetach\fR(9E),
-\fBpower\fR(9E), \fBpm_busy_component\fR(9F), \fBpm_idle_component\fR(9F),
-\fBpm_lower_power\fR(9F), \fBpm_power_has_changed\fR(9F),
-\fBpm_raise_power\fR(9F)
-.sp
-.LP
-\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man7d/poll.7d b/usr/src/man/man7d/poll.7d
deleted file mode 100644
index b69594d7da..0000000000
--- a/usr/src/man/man7d/poll.7d
+++ /dev/null
@@ -1,379 +0,0 @@
-'\" te
-.\" Copyright (c) 2007 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH POLL 7D "January 10, 2020"
-.SH NAME
-poll \- driver for fast poll on many file descriptors
-.SH SYNOPSIS
-.nf
-\fB#include <sys/devpoll.h>
-int fd = open("/dev/poll", O_RDWR);
-ssize_t n = write(int fd, struct pollfd buf[], int bufsize);
-int n = ioctl(int fd, DP_POLL, struct dvpoll* arg);
-int n = ioctl(int fd, DP_ISPOLLED, struct pollfd* pfd);\fR
-.fi
-
-.SH PARAMETERS
-.ne 2
-.na
-\fB\fIfd\fR \fR
-.ad
-.RS 12n
-Open file descriptor that refers to the \fB/dev/poll\fR driver.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIpath\fR \fR
-.ad
-.RS 12n
-\fB/dev/poll\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIbuf\fR \fR
-.ad
-.RS 12n
-Array of \fBpollfd\fR structures.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIbufsize\fR \fR
-.ad
-.RS 12n
-Size of \fIbuf\fR in bytes.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIarg\fR \fR
-.ad
-.RS 12n
-Pointer to \fBpollcall\fR structure.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIpfd\fR \fR
-.ad
-.RS 12n
-Pointer to \fBpollfd\fR structure.
-.RE
-
-.SH DESCRIPTION
-The \fB/dev/poll\fR driver is a special driver that enables you to monitor
-multiple sets of polled file descriptors. By using the \fB/dev/poll\fR
-driver, you can efficiently poll large numbers of file descriptors. Access to
-the \fB/dev/poll\fR driver is provided through \fBopen\fR(2), \fBwrite\fR(2),
-and \fBioctl(2)\fR system calls.
-.sp
-.LP
-Writing an array of \fBpollfd\fR struct to the \fB/dev/poll\fR driver has the
-effect of adding these file descriptors to the monitored \fBpoll\fR file
-descriptor set represented by the \fIfd\fR. To monitor multiple file
-descriptor sets, open the \fB/dev/poll\fR driver multiple times. Each \fBfd\fR
-corresponds to one set. For each \fBpollfd\fR struct entry (defined in
-\fBsys/poll.h\fR):
-.sp
-.in +2
-.nf
- struct pollfd {
- int fd;
- short events;
- short revents;
- }
-.fi
-.in -2
-
-.sp
-.LP
-The \fBfd\fR field specifies the file descriptor being polled. The
-\fBevents\fR field indicates the interested \fBpoll\fR \fBevents\fR on the file
-descriptor. If a \fBpollfd\fR array contains multiple \fBpollfd\fR entries with
-the same \fBfd\fR field, the "events" field in each \fBpollfd\fR entry is
-OR'ed. A special \fBPOLLREMOVE\fR event in the \fBevents\fR field of the
-\fBpollfd\fR structure removes the \fBfd\fR from the monitored set. The
-\fBrevents\fR field is not used. Write returns the number of bytes written
-successfully or \fB-1\fR when write fails.
-.sp
-.LP
-The \fBDP_POLL\fR ioctl is used to retrieve returned \fBpoll\fR \fBevents\fR
-occurred on the polled file descriptors in the monitored set represented by
-\fIfd\fR. \fIarg\fR \fIis\fR \fIa\fR pointer to the devpoll structures which
-are defined as follows:
-.sp
-.in +2
-.nf
- struct dvpoll {
- struct pollfd* dp_fds;
- int dp_nfds;
- int dp_timeout;
- }
-.fi
-.in -2
-
-.sp
-.LP
-The \fBdp_fds\fR points to a buffer that holds an array of returned
-\fBpollfd\fR structures. The \fBdp_nfds\fR field specifies the size of the
-buffer in terms of the number of \fBpollfd\fR entries it contains. The
-\fBdp_nfds\fR field also indicates the maximum number of file descriptors from
-which poll information can be obtained. If there is no interested \fBevents\fR
-on any of the polled file descriptors, the \fBDP_POLL\fR ioctl call will wait
-\fBdp_timeout\fR milliseconds before returning. If \fBdp_timeout\fR is
-\fB0\fR, the ioctl call returns immediately. If \fBdp_timeout\fR is \fB-1\fR,
-the call blocks until an interested \fBpoll\fR \fBevents\fR is available or the
-call is interrupted. Upon return, if the ioctl call has failed, \fB-1\fR is
-returned. The memory content pointed by \fBdp_fds\fR is not modified. A return
-value \fB0\fR means the ioctl is timed out. In this case, the memory content
-pointed by \fBdp_fds\fR is not modified. If the call is successful, it returns
-the number of valid \fBpollfd\fR entries in the array pointed by \fBdp_fds\fR;
-the contents of the rest of the buffer is undefined. For each valid
-\fBpollfd\fR entry, the \fBfd\fR field indicates the file descriptor on which
-the polled \fBevents\fR happened. The \fBevents\fR field is the user specified
-\fBpoll\fR \fBevents\fR. The \fBrevents\fR field contains the \fBevents\fR
-occurred. \fB-1\fR is returned if the call fails.
-.sp
-.LP
-\fBDP_ISPOLLED\fR ioctl allows you to query if a file descriptor is already in
-the monitored set represented by \fBfd\fR. The \fBfd\fR field of the
-\fBpollfd\fR structure indicates the file descriptor of interest. The
-\fBDP_ISPOLLED\fR ioctl returns \fB1\fR if the file descriptor is in the set.
-The \fBevents\fR field contains \fB0\fR. The \fBrevents\fR field contains the
-currently polled \fBevents\fR. The ioctl returns \fB0\fR if the file
-descriptor is not in the set. The \fBpollfd\fR structure pointed by \fIpfd\fR
-is not modified. The ioctl returns a \fB-1\fR if the call fails.
-.SH EXAMPLES
-The following example shows how \fB/dev/poll\fR may be used.
-.sp
-.in +2
-.nf
-{
- ...
- /*
- * open the driver
- */
- if ((wfd = open("/dev/poll", O_RDWR)) < 0) {
- exit(-1);
- }
- pollfd = (struct pollfd* )malloc(sizeof(struct pollfd) * MAXBUF);
- if (pollfd == NULL) {
- close(wfd);
- exit(-1);
- }
- /*
- * initialize buffer
- */
- for (i = 0; i < MAXBUF; i++) {
- pollfd[i].fd = fds[i];
- pollfd[i].events = POLLIN;
- pollfd[i].revents = 0;
- }
- if (write(wfd, &pollfd[0], sizeof(struct pollfd) * MAXBUF) !=
- sizeof(struct pollfd) * MAXBUF) {
- perror("failed to write all pollfds");
- close (wfd);
- free(pollfd);
- exit(-1);
- }
- /*
- * read from the devpoll driver
- */
- dopoll.dp_timeout = -1;
- dopoll.dp_nfds = MAXBUF;
- dopoll.dp_fds = pollfd;
- result = ioctl(wfd, DP_POLL, &dopoll);
- if (result < 0) {
- perror("/dev/poll ioctl DP_POLL failed");
- close (wfd);
- free(pollfd);
- exit(-1);
- }
- for (i = 0; i < result; i++) {
- read(dopoll.dp_fds[i].fd, rbuf, STRLEN);
- }
- ...
-}
-.fi
-.in -2
-
-.sp
-.LP
-The following example is part of a test program which shows how
-\fBDP_ISPOLLED()\fR ioctl may be used.
-.sp
-.in +2
-.nf
-{
- ...
-
- loopcnt = 0;
- while (loopcnt < ITERATION) {
- rn = random();
- rn %= RANGE;
- if (write(fds[rn], TESTSTRING, strlen(TESTSTRING)) !=
- strlen(TESTSTRING)) {
- perror("write to fifo failed.");
- close (wfd);
- free(pollfd);
- error = 1;
- goto out1;
- }
- dpfd.fd = fds[rn];
- dpfd.events = 0;
- dpfd.revents = 0;
- result = ioctl(wfd, DP_ISPOLLED, &dpfd);
- if (result < 0) {
- perror("/dev/poll ioctl DP_ISPOLLED failed");
- printf("errno = %d\en", errno);
- close (wfd);
- free(pollfd);
- error = 1;
- goto out1;
- }
- if (result != 1) {
- printf("DP_ISPOLLED returned incorrect result: %d.\en",
- result);
- close (wfd);
- free(pollfd);
- error = 1;
- goto out1;
- }
- if (dpfd.fd != fds[rn]) {
- printf("DP_ISPOLLED returned wrong fd %d, expect %d\en",
- dpfd.fd, fds[rn]);
- close (wfd);
- free(pollfd);
- error = 1;
- goto out1;
- }
- if (dpfd.revents != POLLIN) {
- printf("DP_ISPOLLED returned unexpected revents %d\en",
- dpfd.revents);
- close (wfd);
- free(pollfd);
- error = 1;
- goto out1;
- }
- if (read(dpfd.fd, rbuf, strlen(TESTSTRING)) !=
- strlen(TESTSTRING)) {
- perror("read from fifo failed");
- close (wfd);
- free(pollfd);
- error = 1;
- goto out1;
- }
- loopcnt++;
- }
-
-.fi
-.in -2
-
-.SH ERRORS
-.ne 2
-.na
-\fB\fBEACCES\fR \fR
-.ad
-.RS 11n
-A process does not have permission to access the content cached in
-\fB/dev/poll\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEINTR\fR \fR
-.ad
-.RS 11n
-A signal was caught during the execution of the \fBioctl\fR(2) function.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEFAULT\fR \fR
-.ad
-.RS 11n
-The request argument requires a data transfer to or from a buffer pointed to by
-\fIarg\fR, but \fIarg\fR points to an illegal address.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEINVAL\fR \fR
-.ad
-.RS 11n
-The request or \fIarg\fR parameter is not valid for this device, or field of
-the dvpoll struct pointed by \fIarg\fR is not valid (for example, when using
-write/pwrite dp_nfds is greater than {OPEN_MAX}, or when using the DPPOLL ioctl
-dp_nfds is greater than or equal to {OPEN_MAX}}.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBENXIO\fR \fR
-.ad
-.RS 11n
-The \fBO_NONBLOCK\fR flag is set, the named file is a FIFO, the \fBO_WRONLY\fR
-flag is set, and no process has the file open for reading; or the named file is
-a character special or block special file and the device associated with this
-special file does not exist.
-.RE
-
-.SH ATTRIBUTES
-See \fBattributes\fR(5) for a description of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-l l
-l l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-Architecture SPARC, x86
-Interface Stability Obsolete
-MT-Level Safe
-.TE
-
-.SH SEE ALSO
-\fBopen\fR(2), \fBpoll\fR(2), \fBwrite\fR(2), \fBattributes\fR(5)
-.SH NOTES
-The \fB/dev/poll\fR API is particularly beneficial to applications that poll a
-large number of file descriptors repeatedly. Applications will exhibit the
-best performance gain if the polled file descriptor list rarely change.
-.sp
-.LP
-When using the \fB/dev/poll\fR driver, you should remove a closed file
-descriptor from a monitored poll set. Failure to do so may result in a
-\fBPOLLNVAL\fR \fBrevents\fR being returned for the closed file descriptor.
-When a file descriptor is closed but not removed from the monitored set, and is
-reused in subsequent open of a different device, you will be polling the device
-associated with the reused file descriptor. In a multithreaded application,
-careful coordination among threads doing close and \fBDP_POLL\fR ioctl is
-recommended for consistent results.
-.sp
-.LP
-The \fB/dev/poll\fR driver caches a list of polled file descriptors, which are
-specific to a process. Therefore, the \fB/dev/poll\fR file descriptor of a
-process will be inherited by its child process, just like any other file
-descriptors. But the child process will have very limited access through this
-inherited \fB/dev/poll\fR file descriptor. Any attempt to write or do ioctl by
-the child process will result in an \fBEACCES\fR error. The child process
-should close the inherited \fB/dev/poll\fR file descriptor and open its own if
-desired.
-.sp
-.LP
-The \fB/dev/poll\fR driver does not yet support polling. Polling on a
-\fB/dev/poll\fR file descriptor will result in \fBPOLLERR\fR being returned in
-the \fBrevents\fR field of \fBpollfd\fR structure.
diff --git a/usr/src/man/man7d/profile.7d b/usr/src/man/man7d/profile.7d
deleted file mode 100644
index 26f6722179..0000000000
--- a/usr/src/man/man7d/profile.7d
+++ /dev/null
@@ -1,54 +0,0 @@
-'\" te
-.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PROFILE 7D "Dec 10, 2017"
-.SH NAME
-profile \- DTrace profile interrupt provider
-.SH DESCRIPTION
-.LP
-The \fBprofile\fR driver is a DTrace dynamic tracing provider that adds
-time-based interrupt event sources that can be used as DTrace probes.
-.sp
-.LP
-Each profile event source is a time-based interrupt firing every fixed,
-specified time interval. You can use these probes to sample some aspect of
-system state every unit time and the samples can then be used to infer system
-behavior. If the sampling rate is high, or the sampling time is long, an
-accurate inference is possible. By using the DTrace facility to bind arbitrary
-actions to probes, you can use the \fBprofile\fR provider to sample practically
-anything in the system. For example, you could sample the state of the current
-thread, the CPU state, or the current machine instruction each time a probe
-fires.
-.sp
-.LP
-The \fBprofile\fR driver is not a public interface and you access the
-instrumentation offered by this provider through DTrace. Refer to the
-\fIDynamic Tracing Guide\fR for a description of the public documented
-interfaces available for the DTrace facility and the probes offered by the
-profile provider.
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for a description of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Private
-.TE
-
-.SH SEE ALSO
-.LP
-\fBdtrace\fR(1M), \fBattributes\fR(5), \fBdtrace\fR(7D)
-.sp
-.LP
-\fIDynamic Tracing Guide\fR:
-.sp
-.LP
-https://illumos.org/books/dtrace/
diff --git a/usr/src/man/man7d/ptm.7d b/usr/src/man/man7d/ptm.7d
deleted file mode 100644
index adf66469bc..0000000000
--- a/usr/src/man/man7d/ptm.7d
+++ /dev/null
@@ -1,258 +0,0 @@
-'\" te
-.\" Copyright (c) 1997, Sun Microsystems, Inc.
-.\" All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.\" Copyright 2022 Oxide Computer Company
-.Dd February 5, 2022
-.Dt PTM 7D
-.Os
-.Sh NAME
-.Nm ptm ,
-.Nm pts
-.Nd STREAMS pseudo-terminal manager and subsidiary drivers
-.Sh SYNOPSIS
-.Pa /dev/ptmx
-.Pp
-.Pa /dev/pts/*
-.Sh DESCRIPTION
-The pseudo-terminal subsystem simulates a terminal connection, where the
-manager side represents the terminal and the subsidiary represents the user
-process's special device end point.
-The manager device is set up as a cloned device where its major device number
-is the major for the clone device and its minor device number is the major for
-the
-.Nm ptm
-driver; see
-.Dv CLONE_DEV
-in
-.Xr ddi_create_minor_node 9F .
-.Pp
-There are no nodes in the file system for manager devices.
-The manager pseudo driver is opened using the
-.Xr open 2
-system call with
-.Pa /dev/ptmx
-as the device parameter.
-The clone open finds the next available minor device for the
-.Nm ptm
-major device.
-.Pp
-A manager device is only available if it and its corresponding subsidiary
-device are not already open.
-Only one open is allowed on a manager device.
-Multiple opens are allowed on the subsidiary device.
-.Pp
-When the manager device is opened, the corresponding subsidiary device is
-automatically locked out.
-No user may open the subsidiary device until its permissions are adjusted and
-the device is unlocked by calling the functions
-.Xr grantpt 3C
-and
-.Xr unlockpt 3C .
-The user can then invoke the
-.Xr open 2
-system call with the device name returned by the
-.Xr ptsname 3C
-function.
-.Pp
-After both the manager and subsidiary have been opened, the user has two file
-descriptors which are the end points of a full duplex connection composed of
-two streams which are automatically connected at the manager and subsidiary
-drivers.
-The user may then push modules onto either side of the stream pair.
-Unless compiled in XPG4v2 mode
-.Po
-see
-.Sx "XPG4v2 MODE"
-.Pc ,
-the consumer needs to push the
-.Xr ptem 7M
-and
-.Xr ldterm 7M
-modules onto the subsidiary device to get terminal semantics.
-.Pp
-The manager and subsidiary drivers pass all messages to their adjacent queues.
-Only the
-.Dv M_FLUSH
-needs some processing.
-Because the read queue of one side is connected to the write queue of the
-other, the
-.Dv FLUSHR
-flag is changed to the
-.Dv FLUSHW
-flag and vice versa.
-.Pp
-When the manager device is closed, an
-.Dv M_HANGUP
-message is sent to the subsidiary device which will render the device unusable.
-The process on the subsidiary side gets an
-.Er EIO
-error when attempting to write on that stream, but it will be able to read
-any data remaining on the stream head read queue.
-When all the data has been read,
-.Xr read 2
-returns
-.Sy 0
-indicating that the stream can no longer be used.
-.Pp
-On the last close of the subsidiary device, a 0-length message is sent to the
-manager device.
-When the application on the manager side issues a
-.Xr read 2
-or
-.Xr getmsg 2
-and
-.Sy 0
-is returned, the user of the manager device decides whether to issue a
-.Xr close 2
-that dismantles the entire pseudo-terminal.
-If the manager device is not closed, the pseudo-terminal will be available to
-another user to open the subsidiary device.
-.Pp
-Since 0-length messages are used to indicate that the process on the
-subsidiary side has closed, and should be interpreted that way by the process
-on the manager side, applications on the subsidiary side should not write
-0-length messages.
-Unless the application is compiled in XPG4v2 mode
-.Po
-see
-.Sx "XPG4v2 MODE"
-.Pc ,
-then any 0-length messages written to the subsidiary device will be discarded
-by the
-.Xr ptem 7M
-module.
-.Pp
-If
-.Dv O_NONBLOCK
-or
-.Dv O_NDELAY
-is set on the manager side:
-.Bl -bullet
-.It
-Read on the manager side returns
-.Sy -1
-with
-.Va errno
-set to
-.Er EAGAIN
-if no data is available
-.It
-Write returns
-.Sy -1
-with
-.Va errno
-set to
-.Er EAGAIN
-if there is internal flow control
-.El
-.Pp
-Standard STREAMS system calls can access pseudo-terminal devices.
-The subsidiary devices support the
-.Dv O_NDELAY
-and
-.Dv O_NONBLOCK
-flags.
-.Sh XPG4v2 MODE
-.Em XPG4v2
-requires that subsidiary pseudo-terminal devices provide the process with an
-interface that is identical to the terminal interface, without needing to
-explicitly push any modules to achieve this.
-It also requires that 0-length messages written on the subsidiary device will
-be propagated to the manager device.
-.Pp
-Experience has shown that most software does not expect subsidiary
-pseudo-terminal devices to operate in this manner.
-This XPG4v2-compliant behaviour is only enabled in XPG4v2/SUS
-.Po
-see
-.Xr standards 5
-.Pc
-mode.
-.Sh IOCTLS
-The manager driver provides several ioctls to support the
-.Xr grantpt 3C ,
-.Xr unlockpt 3C ,
-and
-.Xr ptsname 3C
-functions:
-.Bl -tag -width Ds
-.It Dv ISPTM
-Determines whether the file descriptor is that of an open manager device.
-On success, it returns the value
-.Sy 0 .
-.It Dv UNLKPT
-Unlocks the manager and subsidiary devices.
-It returns
-.Sy 0
-on success.
-On failure,
-.Vt errno
-is set to
-.Vt EINVAL
-indicating that the manager device is not open.
-.El
-.Sh FILES
-.Bl -tag -width Pa
-.It Pa /dev/ptmx
-Pseudo-terminal manager clone device.
-.It Pa /dev/pts/N
-Pseudo-terminal subsidiary devices, where
-.Sy N
-is a non-negative integer.
-Located via calls to
-.Xr ptsname 3C .
-.El
-.Sh EXAMPLES
-.Sy Example 1
-Opening the manager and subsidiary device for a pseudo-terminal.
-.Bd -literal -offset Ds
-#include <stdlib.h>
-#include <sys/types.h>
-#include <sys/stat.h>
-#include <unistd.h>
-#include <stropts.h>
-#include <fcntl.h>
-#include <err.h>
-\&...
-int fdm, fds;
-char *subsidiaryname;
-\&...
-/*
- * NOTE: Portable applications should use posix_openpt(3C) here:
- */
-if ((fdm = open("/dev/ptmx", O_RDWR | O_NOCTTY)) < 0) {
- err(1, "open manager");
-}
-if (grantpt(fdm) != 0 || unlockpt(fdm) != 0 ||
- (subsidiaryname = ptsname(fdm)) == NULL) {
- close(fdm);
- err(1, "locate subsidiary");
-}
-if ((fds = open(subsidiaryname, O_RDWR | O_NOCTTY)) < 0) {
- close(fdm);
- err(1, "open subsidiary");
-}
-if (ioctl(fds, I_PUSH, "ptem") != 0 ||
- ioctl(fds, I_PUSH, "ldterm") != 0) {
- close(fds);
- close(fdm);
- err(1, "push modules");
-}
-.Ed
-.Sh SEE ALSO
-.Xr close 2 ,
-.Xr getmsg 2 ,
-.Xr open 2 ,
-.Xr read 2 ,
-.Xr grantpt 3C ,
-.Xr posix_openpt 3C ,
-.Xr ptsname 3C ,
-.Xr unlockpt 3C ,
-.Xr standards 5 ,
-.Xr ldterm 7M ,
-.Xr pckt 7M ,
-.Xr ptem 7M ,
-.Xr ddi_create_minor_node 9F
diff --git a/usr/src/man/man7d/pty.7d b/usr/src/man/man7d/pty.7d
deleted file mode 100644
index 8e14dd3ea2..0000000000
--- a/usr/src/man/man7d/pty.7d
+++ /dev/null
@@ -1,265 +0,0 @@
-'\" te
-.\" Copyright (c) 1994, Sun Microsystems, Inc.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.\" Copyright 2022 Oxide Computer Company
-.Dd February 5, 2022
-.Dt PTY 7D
-.Os
-.Sh NAME
-.Nm pty
-.Nd legacy pseudo-terminal driver
-.Sh SYNOPSIS
-.Pa /dev/pty[p-r]*
-.Pp
-.Pa /dev/tty[p-r]*
-.Sh DESCRIPTION
-This driver provides support for legacy static pseudo-terminal devices.
-Modern software does not use this driver, preferring instead the STREAMS-based
-.Xr ptm 7D
-and
-.Xr pts 7D
-pseudo-terminal drivers, consumed through the portable
-.Xr posix_openpt 3C
-interface.
-.Pp
-The
-.Nm pty
-driver provides support for a pair of devices collectively known
-as a
-.Em pseudo-terminal .
-The two devices comprising a pseudo-terminal are known as a
-.Em manager
-and a
-.Em subsidiary .
-The subsidiary device distinguishes between the
-.Dv B0 baud rate and other baud rates specified in
-the
-.Fa c_cflag
-field of the
-.Vt termios
-structure, and the
-.Dv CLOCAL
-flag in that member.
-It does not support any of the other
-.Xr termio 7I
-device control functions specified by flags in the
-.Fa c_cflag
-field of the
-.Vt termios
-structure and by the
-.Dv IGNBRK ,
-.Dv IGNPAR ,
-.Dv PARMRK ,
-or
-.Dv INPCK
-flags in the
-.Fa c_iflag
-field of the
-.Vt termios
-structure, as these functions apply only to asynchronous serial ports.
-All other
-.Xr termio 7I
-functions must be performed by STREAMS modules pushed atop the driver; when a
-subsidiary device is opened, the
-.Xr ldterm 7M
-and
-.Xr ttcompat 7M
-STREAMS modules are automatically pushed on top of the stream, providing the
-standard
-.Xr termio 7I
-interface.
-.Pp
-Instead of having a hardware interface and associated hardware that supports
-the terminal functions, the functions are implemented by another process
-manipulating the manager device of the pseudo-terminal.
-.Pp
-The manager and the subsidiary devices of the pseudo-terminal are tightly
-connected.
-Any data written on the manager device is given to the subsidiary device as
-input, as though it had been received from a hardware interface.
-Any data written on the subsidiary terminal can be read from the manager device
-.Pq "rather than being transmitted from a UAR" .
-.Pp
-The driver is statically configured to provide 48 pseudo-terminal pairs.
-Software that requires dynamic pseudo-terminal devices, or a greater number
-of devices, must be converted to use
-.Xr ptm 7D .
-.Sh IOCTLS
-The standard set of
-.Xr termio 7I
-ioctls are supported by the subsidiary device.
-None of the bits in the
-.Fa c_cflag
-field have any effect on the pseudo-terminal, except that if the baud rate is
-set to
-.Dv B0 ,
-it will appear to the process on the manager device as if the last process on
-the subsidiary device had closed the line; thus, setting the baud rate to
-.Dv B0
-has the effect of
-.Dq hanging up
-the pseudo-terminal, just as it has the effect of
-.Dq hanging up
-a real terminal.
-.Pp
-There is no notion of
-.Dq parity
-on a pseudo-terminal, so none of the flags in the
-.Fa c_iflag
-field that control the processing of parity errors have any
-effect.
-Similarly, there is no notion of a
-.Fa break ,
-so none of the flags that control the processing of breaks, and none of the
-ioctls that generate breaks, have any effect.
-.Pp
-Input flow control is automatically performed; a process that attempts to write
-to the manager device will be blocked if too much unconsumed data is buffered
-on the subsidiary device.
-The input flow control provided by the
-.Dv IXOFF
-flag in the
-.Fa c_iflag
-field is not supported.
-.Pp
-The delays specified in the
-.Fa c_oflag
-field are not supported.
-.Pp
-As there are no modems involved in a pseudo-terminal, the ioctls that return or
-alter the state of modem control lines are silently ignored.
-.Pp
-A few special ioctls are provided on the manager devices of pseudo-terminals to
-provide the functionality needed by applications programs to emulate real
-hardware interfaces:
-.Bl -tag -width Ds
-.It Dv TIOCSTOP
-The argument is ignored.
-Output to the pseudo-terminal is suspended, as if a
-.Sy STOP
-character had been typed.
-.It Dv TIOCSTART
-The argument is ignored.
-Output to the pseudo-terminal is restarted, as if a
-.Sy START
-character had been typed.
-.It Dv TIOCPKT
-The argument is a pointer to an
-.Vt int .
-If the value of the
-.Vt int
-is non-zero,
-.Em packet
-mode is enabled; if the value of the
-.Vt int
-is zero, packet mode is disabled.
-When a pseudo-terminal is in packet mode, each subsequent
-.Xr read 2
-from the manager device will return data written on the subsidiary device
-preceded by a zero byte
-.Po
-symbolically defined as
-.Dv TIOCPKT_DATA
-.Pc ,
-or a single byte reflecting control status information.
-In the latter case, the byte is an inclusive-or of zero or more of the bits:
-.Bl -tag -width Ds
-.It Dv TIOCPKT_FLUSHREAD
-Whenever the read queue for the terminal is flushed.
-.It Dv TIOCPKT_FLUSHWRITE
-Whenever the write queue for the terminal is flushed.
-.It Dv TIOCPKT_STOP
-Whenever output to the terminal is stopped using
-.Sy ^S .
-.It Dv TIOCPKT_START
-Whenever output to the terminal is restarted.
-.It Dv TIOCPKT_DOSTOP
-Whenever
-.Em XON/XOFF
-flow control is enabled after being disabled; it is
-considered
-.Dq enabled
-when the
-.Dv IXON
-flag in the
-.Fa c_iflag
-field is set, the
-.Dv VSTOP
-member of the
-.Fa c_cc
-array is
-.Sy ^S
-and the
-.Dv VSTART
-member of the
-.Fa c_cc
-array is
-.Sy ^Q.
-.It Dv TIOCPKT_NOSTOP
-Whenever
-.Em XON/XOFF
-flow control is disabled after being enabled.
-.El
-.It Dv TIOCREMOTE
-The argument is a pointer to an
-.Vt int .
-If the value of the
-.Vt int
-is non-zero,
-.Em remote
-mode is enabled; if the value of the
-.Vt int
-is zero, remote mode is disabled.
-This mode can be enabled or disabled independently of packet mode.
-When a pseudo-terminal is in remote mode, input to the subsidiary device of the
-pseudo-terminal is flow controlled and not input edited (regardless of the mode
-the subsidiary side of the pseudo-terminal).
-.Pp
-Each write to the manager device produces a record boundary for the process
-reading the subsidiary device.
-In normal usage, a write of data is like the data typed as a line on the
-terminal; a write of 0 bytes is like typing an
-.Sy EOF
-character.
-Note: this means that a process writing to a pseudo-terminal manager in remote
-mode must keep track of line boundaries, and write only one line at a time to
-the manager.
-.Pp
-If, for example, it were to buffer up several newline characters and write them
-to the manager with one
-.Xr write 2 ,
-it would appear to a process reading from the subsidiary as if a single line
-containing several newline characters had been typed
-.Po
-as if, for example, a user had typed the literal next
-.Pq Sy LNEXT
-character before typing all but the last of those newline characters
-.Pc .
-Remote mode can be used when doing remote line editing in a window manager, or
-whenever flow controlled input is required.
-.El
-.Sh FILES
-.Bl -tag -width Pa
-.It Pa /dev/pty[p-r][0-9a-f]
-Pseudo-terminal manager devices.
-.It Pa /dev/tty[p-r][0-9a-f]
-Pseudo-terminal subsidiary devices.
-.El
-.Sh SEE ALSO
-.Xr rlogin 1 ,
-.Xr rlogind 1M ,
-.Xr posix_openpty 3C ,
-.Xr ptm 7D ,
-.Xr termio 7I ,
-.Xr ldterm 7M ,
-.Xr ttcompat 7M
-.Sh NOTES
-This is a legacy device and should not be used by new software.
-.Pp
-It is apparently not possible to send an
-.Sy EOT
-by writing zero bytes in
-.Dv TIOCREMOTE
-mode.
diff --git a/usr/src/man/man7d/qede.7d b/usr/src/man/man7d/qede.7d
deleted file mode 100644
index b819e21697..0000000000
--- a/usr/src/man/man7d/qede.7d
+++ /dev/null
@@ -1,100 +0,0 @@
-.\"
-.\" This file and its contents are supplied under the terms of the
-.\" Common Development and Distribution License ("CDDL"), version 1.0.
-.\" You may only use this file in accordance with the terms of version
-.\" 1.0 of the CDDL.
-.\"
-.\" A full copy of the text of the CDDL should have accompanied this
-.\" source. A copy of the CDDL is also available via the Internet at
-.\" http://www.illumos.org/license/CDDL.
-.\"
-.\"
-.\" Copyright (c) 2014 QLogic Corporation. All Rights Reserved
-.\"
-.Dd January 10, 2020
-.Dt QEDE 7D
-.Os
-.Sh NAME
-.Nm qede
-.Nd QLogic FastLinQ QL45xxx 10/25/40/50/100 Gigabit Ethernet Driver
-.Sh SYNOPSIS
-.Pa /dev/net/qede*
-.Sh DESCRIPTION
-The
-.Nm
-Ethernet driver is a multi-threaded, loadable, clonable, GLDv3-based
-driver supporting the Data Link Provider Interface,
-.Xr dlpi 7P ,
-over QLogic FastLinQ QL45xxx 10/25/40/50/100 Gigabit Ethernet
-controllers.
-Multiple QLogic FastLinQ controllers installed within the system are
-supported by the driver.
-.Pp
-The
-.Nm
-driver provides support for the QLogic QL45xxx line of devices.
-Functions include chip initialization, frame transmit and receive,
-multicast and promiscuous support, error recovery and reporting.
-These devices provide 10000/25000/40000/50000/100000 Mbps networking
-interfaces.
-.Sh DRIVER CONFIGURATION
-The primary methods of configuration are via modification of the
-.Pa /kernel/drv/qede.conf
-file or execution of the
-.Xr dladm 1M
-utility.
-There are many configuration items available and all are thoroughly
-documented in the
-.Pa /kernel/drv/qede.conf
-file.
-Note that for changes to this file to take affect the driver must be
-reloaded or the system rebooted.
-In order to reload the driver with new configuration changes all
-.Nm qede
-interfaces must be first unplumbed and then the
-.Xr update_drv 1M
-tool must be executed.
-For the configuration items that do not require a driver reload the
-.Xr dladm 1M
-tool can be used to dynamically change the option.
-Use of
-.Xr dladm 1M
-is the preferred method.
-.Sh DEBUGGING
-.Ss kstat
-There are many statistics exposed via
-.Xr kstat 1M
-by the
-.Nm
-driver.
-The main groups are:
-.Bl -tag -width Em
-.It Em intr
-for interrupts stats
-.It Em l2chip
-for layer 2 chip stats
-.It Em l2driver
-for layer 2 driver stats
-.It Em l2stats
-for general layer 2 stats
-.It Em link
-for detailed link status
-.It Em mac
-for GLDv3 MAC layer stats
-.It Em rxq#
-for Rx ring stats
-.It Em txq#
-for Tx ring stats
-.It Em stats
-for general driver stats and version info.
-.El
-.Pp
-To get a list of all the individual statistics in these groups run:
-.Bd -literal -offset indent
-# kstat -m qede -i 0 -l
-.Ed
-.Sh SEE ALSO
-.Xr dladm 1M ,
-.Xr ifconfig 1M ,
-.Xr driver.conf 4 ,
-.Xr dlpi 7P
diff --git a/usr/src/man/man7d/qlc.7d b/usr/src/man/man7d/qlc.7d
deleted file mode 100644
index c4742f95a3..0000000000
--- a/usr/src/man/man7d/qlc.7d
+++ /dev/null
@@ -1,124 +0,0 @@
-'\" te
-.\" Copyright (c) 2005, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH QLC 7D "Feb 21, 2005"
-.SH NAME
-qlc \- ISP2200, ISP2300, and SP212 Family Fibre Channel host bus adapter
-driver.
-.SH SYNOPSIS
-.LP
-.nf
-SUNW,qlc
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBqlc\fR host bus adapter driver is a Sun Fibre Channel transport
-layer-compliant nexus driver for the Qlogic ISP2200, ISP2200A, ISP2310,
-ISP2312, and SP212 adapters. These adapters support Fibre Channel SCSI and IP
-Protocols, FC-AL public loop profile, point-to-point fabric connection and
-Fibre Channel service classes two and three (see NOTES section below).
-.sp
-.LP
-The \fBqlc\fR driver interfaces with the Sun Fibre Channel transport layer to
-support the standard functions provided by the SCSA interface. It supports
-auto request sense and tagged queueing by default. The driver requires that
-all devices have unique hard addresses in private loop configurations. Devices
-with conflicting hard addresses are not accessible.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/qlc\fR\fR
-.ad
-.RS 27n
-32-bit ELF kernel module (x86)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/qlc\fR\fR
-.ad
-.RS 27n
-64-bit ELF kernel module (x86)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/sparcv9/qlc\fR\fR
-.ad
-.RS 27n
-64-bit ELF kernel module (SPARC)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/qlc.conf\fR\fR
-.ad
-.RS 27n
- Driver configuration file
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture SPARC, x86
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBprtconf\fR(1M), \fBdriver.conf\fR(4), \fBfcp\fR(7D), \fBfp\fR(7d)
-.sp
-.LP
-\fIWriting Device Drivers\fR
-.sp
-.LP
-\fIANSI X3.230:1994, Fibre Channel Physical Signaling (FC-PH)\fR
-.sp
-.LP
-\fIProject 1134-D, Fibre Channel Generic Services (FC-GS-2)\fR
-.sp
-.LP
-\fIANSI X3.269-1996, Fibre Channel Arbitrated Loop (FC-AL)\fR
-.sp
-.LP
-\fIANSI X3.270-1996, Fibre Channel Protocol for SCSI (FCP-SCSI)\fR
-.sp
-.LP
-\fIANSI X3.270-1996, SCSI-3 Architecture Model (SAM)\fR
-.sp
-.LP
-\fIFibre Channel Private Loop SCSI Direct Attach (FC-PLDA)\fR
-.sp
-.LP
-\fIFabric Loop Attachment (FC-FLA)\fR
-.sp
-.LP
-\fIISP2200 Firmware Interface Specification, QLogic Corporation\fR
-.sp
-.LP
-\fIISP2300 Series Firmware Specification, QLogic Corporation\fR
-.SH NOTES
-.sp
-.LP
- SP-212-based host bus adapters (including QLA-210) are supported on x86
-platforms only and are limited to a maximum of 8 targets in fabric and sixteen
-targets in local loop topology. FL topology is not supported with the
-SP-212-based host bus adapter.
diff --git a/usr/src/man/man7d/ral.7d b/usr/src/man/man7d/ral.7d
deleted file mode 100644
index 4f636ee8c6..0000000000
--- a/usr/src/man/man7d/ral.7d
+++ /dev/null
@@ -1,81 +0,0 @@
-'\" te
-.\" Copyright (c) 2006 Damien Bergamini
-.\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
-.\" DAMAGES OR ANY DAMAGES * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
-.\" Portions Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved
-.TH RAL 7D "Jun 25, 2007"
-.SH NAME
-ral \- Ralink RT2500 802.11b/g Wireless driver
-.SH DESCRIPTION
-.sp
-.LP
-The \fBral\fR \fI802.11b/g\fR wireless NIC driver is a multi-threaded,
-loadable, clonable, GLDv3-based STREAMS driver supporting Ralink RT2500
-chipset-based NIC's.
-.SH CONFIGURATION
-.sp
-.LP
-The \fBral\fR driver performs auto-negotiation to determine the data rate and
-mode. Supported \fI802.11b\fR data rates are 1, 2, 5.5 and 11 Mbits/sec.
-Supported \fI802.11g\fR data rates are 1, 2, 5.5, 6, 9, 11, 12, 18, 24, 36, 48
-and 54 Mbits/sec. The \fBral\fR driver supports only BSS networks (also known
-as "ap" or "infrastructure" networks) and "open"(or "open-system") or "shared
-system" authentication.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/dev/ral*\fR\fR
-.ad
-.sp .6
-.RS 4n
-Special character device.
-.RE
-
-.sp
-.ne 2
-.na
-\fB/kernel/drv/ral\fR
-.ad
-.sp .6
-.RS 4n
-32-bit ELF kernel module (x86).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/ral\fR\fR
-.ad
-.sp .6
-.RS 4n
-64-bit ELF kernel module (x86).
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for a description of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture x86
-_
-Interface stability Committed
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBdladm\fR(1M), \fBwificonfig\fR(1M), \fBattributes\fR(5), \fBgld\fR(7D),
-\fBdlpi\fR(7P)
-.sp
-.LP
-\fI802.11 - Wireless LAN Media Access Control and Physical Layer
-Specification\fR \(em IEEE, 2001
diff --git a/usr/src/man/man7d/ramdisk.7d b/usr/src/man/man7d/ramdisk.7d
deleted file mode 100644
index b49b0b1db3..0000000000
--- a/usr/src/man/man7d/ramdisk.7d
+++ /dev/null
@@ -1,194 +0,0 @@
-'\" te
-.\" Copyright (c) 2003, Sun Microsystems, Inc.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH RAMDISK 7D "Mar 04, 2003"
-.SH NAME
-ramdisk \- RAM disk device driver
-.SH SYNOPSIS
-.LP
-.nf
-\fBramdisk@0:\fR\fIdiskname\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBramdisk\fR driver supports numerous ramdisk devices that are created by
-the system during the boot process (see \fBboot\fR(1M)) or during normal
-system operation (see \fBramdiskadm\fR(1M) for more information).
-.SH DEVICE SPECIAL FILES
-.sp
-.LP
-Each ramdisk can be accessed either as a block device or as a raw device. When
-accessed as a block device, the normal buffering mechanism is used
-when reading from and writing to the device, without regard to physical disk
-records. Accessing the ramdisk as a raw device enables direct transmission
-between the disk and the read or write buffer. A single read or write call
-usually results in a single I/O operation, meaning that raw I/O is more
-efficient when many bytes are transmitted. You can find block files names in
-\fB/dev/ramdisk\fR. Raw file names are found in \fB/dev/rramdisk\fR.
-.sp
-.LP
-There are no alignment or length restrictions on I/O requests to either block
-or character devices.
-.SH ERRORS
-.sp
-.ne 2
-.na
-\fB\fBEFAULT\fR\fR
-.ad
-.RS 10n
-The argument features a bad address.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEINVAL\fR\fR
-.ad
-.RS 10n
-Invalid argument. EIO. An I/O error occurred.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEPERM\fR\fR
-.ad
-.RS 10n
-Cannot create or delete a ramdisk without write permission on
-\fB/dev/ramdiskctl\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBENOTTY\fR\fR
-.ad
-.RS 10n
-The device does not support the requested ioctl function.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBENXIO\fR\fR
-.ad
-.RS 10n
-The device did not exist during opening.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEBUSY\fR\fR
-.ad
-.RS 10n
-Cannot exclusively open \fB/dev/ramdiskctl\fR. One or more ramdisks are still
-open.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEEXIST\fR\fR
-.ad
-.RS 10n
-A ramdisk with the indicated name already exists.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEAGAIN\fR\fR
-.ad
-.RS 10n
-Cannot allocate resource for ramdisk. Try again later.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/dev/ramdisk/diskname\fR\fR
-.ad
-.sp .6
-.RS 4n
-Block device for ramdisk named \fIdiskname\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/rramdisk/diskname\fR\fR
-.ad
-.sp .6
-.RS 4n
-Raw device for ramdisk name \fIdiskname\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/ramdisk\fR\fR
-.ad
-.sp .6
-.RS 4n
-32-bit driver
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/ramdisk.conf\fR\fR
-.ad
-.sp .6
-.RS 4n
-Driver configuration file. (Do not alter).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/sparcv9/ramdisk\fR\fR
-.ad
-.sp .6
-.RS 4n
-64-bit driver
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attribute:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBramdiskadm\fR(1M), \fBfsck\fR(1M), \fBfstyp\fR(1M), \fBmount\fR(1M),
-\fBnewfs\fR(1M), \fBdriver.conf\fR(4), \fBfilesystem\fR(5), \fBdkio\fR(7I)
-.SH NOTES
-.sp
-.LP
-The percentage of available physical memory that can be allocated to ramdisks
-is constrained by the variable \fBrd_percent_physmem\fR. You can tune the
-\fBrd_percent_physmem\fR variable in \fB/etc/system\fR. By default, the
-percentage of available physical memory that can be allocated to ramdisks is
-fixed at 25%.
-.sp
-.LP
-A ramdisk may not be the best possible use of system memory. Accordingly, use
-ramdisks only when absolutely necessary.
diff --git a/usr/src/man/man7d/random.7d b/usr/src/man/man7d/random.7d
deleted file mode 100644
index a1c312bd48..0000000000
--- a/usr/src/man/man7d/random.7d
+++ /dev/null
@@ -1,157 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH RANDOM 7D "Sep 1, 2008"
-.SH NAME
-random, urandom \- Strong random number generator device
-.SH SYNOPSIS
-.LP
-.nf
-/dev/random
-.fi
-
-.LP
-.nf
-/dev/urandom
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fB/dev/random\fR and \fB/dev/urandom\fR files are special files that are a
-source for random bytes generated by the kernel random number generator device.
-The \fB/dev/random\fR and \fB/dev/urandom\fR files are suitable for
-applications requiring high quality random numbers for cryptographic purposes.
-.sp
-.LP
-The generator device produces random numbers from data and devices available to
-the kernel and estimates the amount of randomness (or "entropy") collected
-from these sources. The entropy level determines the amount of high quality
-random numbers that are produced at a given time.
-.sp
-.LP
-Applications retrieve random bytes by reading \fB/dev/random\fR or
-\fB/dev/urandom\fR. The \fB/dev/random\fR interface returns random bytes only
-when sufficient amount of entropy has been collected. If there is no entropy to
-produce the requested number of bytes, \fB/dev/random\fR blocks until more
-entropy can be obtained. Non-blocking I/O mode can be used to disable the
-blocking behavior. The \fB/dev/random\fR interface also supports \fBpoll\fR(2).
-Note that using \fBpoll\fR(2) will not increase the speed at which random
-numbers can be read.
-.sp
-.LP
-Bytes retrieved from \fB/dev/random\fR provide the highest quality random
-numbers produced by the generator, and can be used to generate long term keys
-and other high value keying material.
-.sp
-.LP
-The \fB/dev/urandom\fR interface returns bytes regardless of the amount of
-entropy available. It does not block on a read request due to lack of entropy.
-While bytes produced by the \fB/dev/urandom\fR interface are of lower quality
-than bytes produced by \fB/dev/random\fR, they are nonetheless suitable for
-less demanding and shorter term cryptographic uses such as short term session
-keys, paddings, and challenge strings.
-.sp
-.LP
-Data can be written to \fB/dev/random\fR and \fB/dev/urandom\fR. Data written
-to either special file is added to the generator's internal state. Data that is
-difficult to predict by other users may contribute randomness to the generator
-state and help improve the quality of future generated random numbers.
-.sp
-.LP
-\fB/dev/random\fR collects entropy from providers that are registered with the
-kernel-level cryptographic framework and implement random number generation
-routines. The \fBcryptoadm\fR(1M) utility allows an administrator to configure
-which providers will be used with \fB/dev/random\fR.
-.SH ERRORS
-.sp
-.ne 2
-.na
-\fB\fBEAGAIN\fR\fR
-.ad
-.RS 11n
-\fBO_NDELAY\fR or \fBO_NONBLOCK\fR was set and no random bytes are available
-for reading from \fB/dev/random\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEINTR\fR\fR
-.ad
-.RS 11n
-A signal was caught while reading and no data was transferred.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBENOXIO \fR\fR
-.ad
-.RS 11n
-\fBopen\fR(2) request failed on \fB/dev/random\fR because no entropy provider
-is available.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/dev/random\fR\fR
-.ad
-.RS 16n
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/urandom\fR\fR
-.ad
-.RS 16n
-
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBcryptoadm\fR(1M), \fBopen\fR(2), \fBpoll\fR(2), \fBattributes\fR(5)
-.SH NOTES
-.sp
-.LP
-\fB/dev/random\fR can be configured to use only the hardware-based providers
-registered with the kernel-level cryptographic framework by disabling the
-software-based provider using \fBcryptoadm\fR(1M). You can also use
-\fBcryptoadm\fR(1M) to obtain the name of the software-based provider.
-.sp
-.LP
-Because no entropy is available, disabling all randomness providers causes
-\fBread\fR(2) and \fBpoll\fR(2) on \fB/dev/random\fR to block indefinitely and
-results in a warning message being logged and displayed on the system console.
-However, \fBread\fR(2) and \fBpoll\fR(2) on \fB/dev/urandom\fR continue to work
-in this case.
-.sp
-.LP
-An implementation of the \fB/dev/random\fR and \fB/dev/urandom\fR kernel-based
-random number generator first appeared in Linux 1.3.30.
-.sp
-.LP
-A \fB/dev/random\fR interface for Solaris first appeared as part of the
-CryptoRand implementation.
diff --git a/usr/src/man/man7d/rge.7d b/usr/src/man/man7d/rge.7d
deleted file mode 100644
index c2c050bba6..0000000000
--- a/usr/src/man/man7d/rge.7d
+++ /dev/null
@@ -1,231 +0,0 @@
-'\" te
-.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH RGE 7D "Dec 21, 2007"
-.SH NAME
-rge \- Realtek Gigabit/Fast Ethernet Network Adapter driver
-.SH SYNOPSIS
-.LP
-.nf
-/dev/rge
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBrge\fR Gigabit/Fast Ethernet driver is a multi-threaded, loadable,
-clonable, GLD-based STREAMS driver supporting the Data Link Provider
-Interface, \fBdlpi\fR(7P), on the Realtek Gigabit/Fast Ethernet Network
-Adapter.
-.sp
-.LP
-The \fBrge\fR driver functions includes controller initialization, frame
-transmit and receive, promiscuous and multicast support, and error recovery and
-reporting.
-.SH APPLICATION PROGRAMMING INTERFACE
-.sp
-.LP
-The cloning, character-special device \fB/dev/rge\fR is used to access all
-Realtek Gigabit/Fast Ethernet devices installed within the system.
-.sp
-.LP
-The \fBrge\fR driver is managed by the \fBdladm\fR(1M) command line utility,
-which allows VLANs to be defined on top of \fBrge\fR instances and for
-\fBrge\fR instances to be aggregated. See \fBdladm\fR(1M) for more details.
-.sp
-.LP
-The values returned by the driver in the DL_INFO_ACK primitive in response to
-the DL_INFO_REQ are as follows:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Maximum SDU (with jumbo frame) is \fB7000\fR.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Minimum SDU is \fB0\fR.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBDSLAP\fR address length is \fB8\fR bytes.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBMAC\fR type is \fBDL_ETHER.\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBSAP\fR length value is -2, meaning the physical address component is
-followed immediately by a 2-byte sap component within the DLSAP address.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Broadcast address value is Ethernet/IEEE broadcast address
-(FF:FF:FF:FF:FF:FF).
-.RE
-.sp
-.LP
-Once in the DL_ATTACHED state, you must send a DL_BIND_REQ to associate a
-particular Service Access Point (SAP) with the stream.
-.SH CONFIGURATION
-.sp
-.LP
-By default, the \fBrge\fR driver performs auto-negotiation to select the link
-speed and mode. Link speed and mode can be any one of the following:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-1000 Mbps, full-duplex
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-100 Mbps, full-duplex
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-100 Mbps, half-duplex
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-10 Mbps, full-duplex
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-10 Mbps, half-duplex
-.RE
-.sp
-.LP
-Alternatively, you can set the capabilities advertised by the \fBrge\fR device
-using \fBndd\fR(1M). The driver supports a number of parameters whose names
-begin with \fBadv_\fR. Each of these parameters contains a boolean value that
-determines if the device advertises that mode of operation. The
-\fIadv_pause_cap\fR indicates if half/full duplex pause is advertised to link
-partner. You can set \fIadv_asym_pause_cap\fR to advertise to the link partner
-that asymmetric pause is desired.
-.sp
-.LP
-For example, to prevent the device 'rge2' from advertising gigabit
-capabilities, enter (as super-user):
-.sp
-.in +2
-.nf
-# ndd -set /dev/rge2 adv_1000fdx_cap 0
-.fi
-.in -2
-
-.sp
-.LP
-All capabilities default to enabled. Note that changing any capability
-parameter causes the link to go down while the link partners renegotiate the
-link speed/duplex using the newly changed capabilities.
-.sp
-.LP
-You can find the current parameter settings by using \fBndd\fR \fB-get\fR. In
-addition, the driver exports the current state, speed, duplex setting, and
-working mode of the link via \fBndd\fR parameters (these are read only and may
-not be changed). For example, to check link state of device \fBrge0\fR:
-.sp
-.in +2
-.nf
-# ndd -get /dev/rge0 link_status
-1
-# ndd -get /dev/rge0 link_speed
-100
-# ndd -get /dev/rge0 link_duplex
-2
-.fi
-.in -2
-
-.sp
-.LP
-The output above indicates that the link is up and running at 100Mbps
-full-duplex. In addition, the driver exports its working mode by
-\fIloop_mode\fR. If it is set to 0, the loopback mode is disabled.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/dev/rge*\fR\fR
-.ad
-.RS 27n
-Character special device.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/rge\fR\fR
-.ad
-.RS 27n
-32-bit x86 \fBrge\fR driver binary.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/rge\fR\fR
-.ad
-.RS 27n
-64-bit x86 \fBrge\fR driver binary.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/sparcv9/rge\fR\fR
-.ad
-.RS 27n
-SPARC \fBrge\fR driver binary.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for a description of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture SPARC, x86
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBdladm\fR(1M), \fBattributes\fR(5), \fBstreamio\fR(7I), \fBdlpi\fR(7P)
-.sp
-.LP
-\fIWriting Device Drivers\fR
-.sp
-.LP
-\fISTREAMS Programming Guide\fR
-.sp
-.LP
-\fINetwork Interfaces Programmer's Guide\fR
diff --git a/usr/src/man/man7d/rtls.7d b/usr/src/man/man7d/rtls.7d
deleted file mode 100644
index f3159bb278..0000000000
--- a/usr/src/man/man7d/rtls.7d
+++ /dev/null
@@ -1,62 +0,0 @@
-.\" Copyright 2014 Garrett D'Amore <garrett@damore.org>
-.\" Redistribution and use in source and binary forms, with or without
-.\" modification, are permitted provided that the following conditions
-.\" are met:
-.\" 1. Redistributions of source code must retain the above copyright
-.\" notice, this list of conditions and the following disclaimer.
-.\" 2. Redistributions in binary form must reproduce the above copyright
-.\" notice, this list of conditions and the following disclaimer in the
-.\" documentation and/or other materials provided with the distribution.
-.\"
-.\" THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER AND CONTRIBUTORS
-.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-.\" LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
-.\" FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
-.\" COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
-.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
-.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
-.\" USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
-.\" ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
-.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE
-.\"
-.Dd "Aug 3, 2014"
-.Dt RTLS 7D
-.Os
-.Sh NAME
-.Nm rtls
-.Nd RealTek Fast Ethernet device driver
-.Sh SYNOPSIS
-.Pa /dev/rtls
-.Sh DESCRIPTION
-The
-.Nm
-driver provides support for the RealTek 8139 family of Fast Ethernet
-PCI controllers.
-.Lp
-These devices generally support the standard Fast Ethernet features, including
-10BASE-T and 100BASE-TX, both full and half duplex operation, IEEE 802.3
-autonegotiation, etc.
-They also support full size MTUs (1500 bytes), even when used with VLANs.
-.
-.Lp
-The device driver supports the
-.Xr ieee802.3 5
-properties, which can be configured with
-.Xr dladm 1M .
-.
-.Sh FILES
-.Bl -tag -width /dev/rtls
-.It Pa /dev/rtls
-Special character device.
-.El
-.Sh SEE ALSO
-.Xr dladm 1M ,
-.Xr ifconfig 1M ,
-.Xr pci 4 ,
-.Xr ieee802.3 5 ,
-.Xr dlpi 7P
-.Rs
-.%T IEEE 802.3: Ethernet
-.%Q IEEE Standards Association
-.Re
diff --git a/usr/src/man/man7d/rtw.7d b/usr/src/man/man7d/rtw.7d
deleted file mode 100644
index 6377b80b1f..0000000000
--- a/usr/src/man/man7d/rtw.7d
+++ /dev/null
@@ -1,83 +0,0 @@
-'\" te
-.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH RTW 7D "Jul 12, 2007"
-.SH NAME
-rtw \- RealTek 8180L 802.11b Wireless NIC driver
-.SH DESCRIPTION
-.sp
-.LP
-The \fBrtw\fR \fI802.11b\fR wireless NIC driver is a multi-threaded, loadable,
-clonable, GLDv3-based STREAMS driver supporting RealTek 8180L chipset-based
-NIC's.
-.SH CONFIGURATION
-.sp
-.LP
-The \fBrtw\fR driver performs auto-negotiation to determine the data rate and
-mode. Supported \fI802.11b\fR data rates are 1, 2, 5.5 and 11 Mbits/sec. The
-default is 11.
-.sp
-.LP
-The \fBrtw\fR driver supports only BSS networks (also known as "ap" or
-"infrastructure" networks) and "open"(or "open-system") or "shared system"
-authentication.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/dev/rtw*\fR\fR
-.ad
-.sp .6
-.RS 4n
-Special character device.
-.RE
-
-.sp
-.ne 2
-.na
-\fB/kernel/drv/rtw\fR
-.ad
-.sp .6
-.RS 4n
-32-bit ELF kernel module (x86).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/rtw\fR\fR
-.ad
-.sp .6
-.RS 4n
-64-bit ELF kernel module (x86).
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for a description of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture x86
-_
-Interface stability Committed
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBdladm\fR(1M), \fBwificonfig\fR(1M), \fBattributes\fR(5), \fBgld\fR(7D),
-\fBdlpi\fR(7P)
-.sp
-.LP
-\fI802.11 - Wireless LAN Media Access Control and Physical Layer
-Specification\fR \(em IEEE, 2001
diff --git a/usr/src/man/man7d/rum.7d b/usr/src/man/man7d/rum.7d
deleted file mode 100644
index aeb3c774b2..0000000000
--- a/usr/src/man/man7d/rum.7d
+++ /dev/null
@@ -1,81 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH RUM 7D "Oct 29, 2008"
-.SH NAME
-rum \- Ralink RT2501/RT2601/RT73USB 802.11b/g Wireless Driver
-.SH DESCRIPTION
-.sp
-.LP
-The \fBrum\fR \fI802.11b/g\fR wireless NIC driver is a multi-threaded,
-loadable, clonable, GLDv3-based STREAMS driver supporting the Ralink
-RT2501/RT2601/RT73USB chipset-based NIC's.
-.SH CONFIGURATION
-.sp
-.LP
-The \fBrum\fR driver performs auto-negotiation to determine the data rate and
-mode. Supported 802.11b data rates are 1, 2, 5.5 and 11 Mbits/sec.
-Supported 802.11g data rates are 1, 2, 5.5, 11, 6, 9, 12, 18, 24, 36, 48 and 54
-Mbits/sec. The \fBrum\fR driver supports only BSS networks (also known as "ap"
-or "infrastructure" networks) and "open" (or "open-system") or "shared system"
-authentication.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/dev/rum*\fR\fR
-.ad
-.sp .6
-.RS 4n
-Special character device.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/rum\fR\fR
-.ad
-.sp .6
-.RS 4n
-32-bit ELF kernel module. (x86)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/rum\fR\fR
-.ad
-.sp .6
-.RS 4n
-64-bit ELF kernel module. (x86)
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for a description of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture x86
-_
-Interface Stability Committed
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBdladm\fR(1M), \fBwificonfig\fR(1M), \fBattributes\fR(5), \fBgld\fR(7D),
-\fBdlpi\fR(7P)
-.sp
-.LP
-\fI802.11 - Wireless LAN Media Access Control and Physical Layer
-Specification\fR - IEEE, 2001
diff --git a/usr/src/man/man7d/rwd.7d b/usr/src/man/man7d/rwd.7d
deleted file mode 100644
index fbef0045c9..0000000000
--- a/usr/src/man/man7d/rwd.7d
+++ /dev/null
@@ -1,77 +0,0 @@
-'\" te
-.\" Copyright (c) 2009, Sun Microsystems Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
-.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH RWD 7D "Jun 18, 2009"
-.SH NAME
-rwd \- Ralink RT2561/RT2561S/RT2661 IEEE802.11b/g wireless network driver
-.SH DESCRIPTION
-.sp
-.LP
-The rwd IEEE802.11b/g wireless network driver is a multithreaded, loadable,
-clonable, GLDv3-based STREAMS driver supporting Ralink RT2561/RT2561S/RT2661
-IEEE802.11b/g wireless network driver.
-.SH CONFIGURATION
-.sp
-.LP
-The \fBrwd\fR driver performs auto-negotiation to determine the data rate and
-mode. The driver supports only BSS networks (also known as "ap" or
-"infrastructure" networks) and "open"(or "open-system") or "shared system"
-authentication. For wireless security, WEP encryption, WPA-PSk, and WPA2-PSK
-are currently supported. You can perform configuration and administration tasks
-using the \fBdladm\fR(1M)and \fBwificonfig\fR(1M) utilities.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/dev/rwd\fR\fR
-.ad
-.RS 25n
-Special character device
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/rwd\fR\fR
-.ad
-.RS 25n
-32-bit ELF kernel module (x86)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/rwd\fR\fR
-.ad
-.RS 25n
-64-bit ELF kernel module (x86)
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture x86
-_
-Interface Stability Committed
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBdladm\fR(1M), \fBwificonfig\fR(1M), \fBattributes\fR(5), \fBgld\fR(7D),
-\fBdlpi\fR(7P)
-.sp
-.LP
-IEEE802.11b/g - Wireless LAN Standard - IEEE, 2003
diff --git a/usr/src/man/man7d/rwn.7d b/usr/src/man/man7d/rwn.7d
deleted file mode 100644
index a0f03c595f..0000000000
--- a/usr/src/man/man7d/rwn.7d
+++ /dev/null
@@ -1,77 +0,0 @@
-'\" te
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH RWN 7D "Mar 30, 2009"
-.SH NAME
-rwn \- Ralink RT2700/2800 IEEE802.11 a/b/g/n wireless network device
-.SH DESCRIPTION
-.sp
-.LP
-The \fBrwn\fR IEEE802.11 a/b/g/n wireless driver is a multi-threaded, loadable,
-clonable, GLDv3-based STREAMS driver supporting Ralink RT2700/RT2800 IEEE802.11
-a/b/g/n wireless network device.
-.SS "Configuration"
-.sp
-.LP
-The \fBrwn\fR driver performs auto-negotiation to determine the data rate and
-mode. The driver supports only BSS networks (also known as \fBap\fR or
-\fBinfrastructure\fR networks) and \fBopen\fR (\fBopen-system\fR) or \fBshared
-system\fR authentication.
-.sp
-.LP
-For wireless security, WEP encryption, WPA-PSK, and WPA2-PSK are currently
-supported. You can perform configuration and administration tasks using the
-\fBdladm\fR(1M) and \fBwificonfig\fR(1M) utilities.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/dev/rwn\fR\fR
-.ad
-.RS 25n
-Special character device
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/rwn\fR\fR
-.ad
-.RS 25n
-32-bit ELF kernel module, x86
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/rwn\fR\fR
-.ad
-.RS 25n
-64-bit ELF kernel module, x86
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Committed
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBdladm\fR(1M), \fBwificonfig\fR(1M), \fBattributes\fR(5)
-.sp
-.LP
-\fIIEEE802.11b/g - Wireless LAN Standard - IEEE, 2003\fR
diff --git a/usr/src/man/man7d/sad.7d b/usr/src/man/man7d/sad.7d
deleted file mode 100644
index ed70b755b9..0000000000
--- a/usr/src/man/man7d/sad.7d
+++ /dev/null
@@ -1,323 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 1997, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SAD 7D "Apr 16, 1997"
-.SH NAME
-sad \- STREAMS Administrative Driver
-.SH SYNOPSIS
-.LP
-.nf
-#include <sys/types.h>
-.fi
-
-.LP
-.nf
-#include <sys/conf.h>
-.fi
-
-.LP
-.nf
-#include <sys/sad.h>
-.fi
-
-.LP
-.nf
-#include <sys/stropts.h>
-.fi
-
-.LP
-.nf
-\fBint\fR \fBioctl\fR\fB(int\fR \fIfildes\fR, \fBint\fR \fIcommand\fR, \fBint \fR\fIarg\fR);
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBSTREAMS\fR Administrative Driver provides an interface for
-applications to perform administrative operations on \fBSTREAMS\fR modules and
-drivers. The interface is provided through \fBioctl\fR(2) commands. Privileged
-operations may access the \fBsad\fR driver using \fB/dev/sad/admin\fR.
-Unprivileged operations may access the \fBsad\fR driver using
-\fB/dev/sad/user\fR.
-.sp
-.LP
-The \fIfildes\fR argument is an open file descriptor that refers to the
-\fBsad\fR driver. The \fBcommand\fR argument determines the control function
-to be performed as described below. The \fIarg\fR argument represents
-additional information that is needed by this command. The type of \fIarg\fR
-depends upon the command, but it is generally an integer or a pointer to a
-\fBcommand\fR-specific data structure.
-.SH COMMAND FUNCTIONS
-.sp
-.LP
-The autopush facility (see \fBautopush\fR(1M)) allows one to configure a list
-of modules to be automatically pushed on a stream when a driver is first
-opened. Autopush is controlled by the following commands:
-.sp
-.ne 2
-.na
-\fB\fBSAD_SAP\fR\fR
-.ad
-.RS 11n
-Allows the administrator to configure the given device's autopush information.
-\fIarg\fR points to a \fBstrapush\fR structure, which contains the following
-members:
-.sp
-.in +2
-.nf
- unit_t ap_cmd;
- major_t sap_major;
- minor_t sap_minor;
- minor_t sap_lastminor;
- unit_t sap_npush;
- unit_t sap_list [MAXAPUSH] [FMNAMESZ + 1];
-.fi
-.in -2
-
-The \fBsap_cmd\fR field indicates the type of configuration being done. It may
-take on one of the following values:
-.sp
-.ne 2
-.na
-\fB\fBSAP_ONE\fR\fR
-.ad
-.RS 13n
-Configure one minor device of a driver.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSAP_RANGE\fR\fR
-.ad
-.RS 13n
-Configure a range of minor devices of a driver.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSAP_ALL\fR\fR
-.ad
-.RS 13n
-Configure all minor devices of a driver.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSAP_CLEAR\fR\fR
-.ad
-.RS 13n
-Undo configuration information for a driver.
-.RE
-
-The \fBsap_major\fR field is the major device number of the device to be
-configured. The \fBsap_minor\fR field is the minor device number of the device
-to be configured. The \fBsap_lastminor\fR field is used only with the
-\fBSAP_RANGE\fR command, which configures a range of minor devices between
-\fBsap_minor\fR and \fBsap_lastminor\fR, inclusive. The minor fields have no
-meaning for the \fBSAP_ALL\fR command. The \fBsap_npush\fR field indicates
-the number of modules to be automatically pushed when the device is opened. It
-must be less than or equal to \fBMAXAPUSH\fR \fB,\fR defined in \fBsad.h\fR.
-It must also be less than or equal to \fBNSTRPUSH,\fR the maximum number of
-modules that can be pushed on a stream, defined in the kernel master file. The
-field \fBsap_list\fR is an array of NULL-terminated module names to be pushed
-in the order in which they appear in the list.
-.sp
-When using the \fBSAP_CLEAR\fR command, the user sets only \fBsap_major\fR
-and \fBsap_minor\fR. This will undo the configuration information for any of
-the other commands. If a previous entry was configured as \fBSAP_ALL,
-sap_minor\fR should be set to zero. If a previous entry was configured as
-\fBSAP_RANGE\fR \fB, sap_minor\fR should be set to the lowest minor device
-number in the range configured.
-.sp
-On failure, \fBerrno\fR is set to the following value:
-.sp
-.ne 2
-.na
-\fB\fBEFAULT\fR\fR
-.ad
-.RS 10n
-\fIarg\fR points outside the allocated address space.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEINVAL\fR\fR
-.ad
-.RS 10n
-The major device number is invalid, the number of modules is invalid, or the
-list of module names is invalid.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBENOSTR\fR\fR
-.ad
-.RS 10n
-The major device number does not represent a \fBSTREAMS\fR driver.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEEXIST\fR\fR
-.ad
-.RS 10n
-The major-minor device pair is already configured.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBERANGE\fR\fR
-.ad
-.RS 10n
-The command is \fBSAP_RANGE\fR and \fBsap_lastminor\fR is not greater than
-\fBsap_minor\fR, or the command is \fBSAP_CLEAR\fR and \fBsap_minor\fR is not
-equal to the first minor in the range.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBENODEV\fR\fR
-.ad
-.RS 10n
-The command is \fBSAP_CLEAR\fR and the device is not configured for autopush.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBENOSR\fR\fR
-.ad
-.RS 10n
-An internal autopush data structure cannot be allocated.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSAD_GAP\fR\fR
-.ad
-.RS 11n
-Allows any user to query the \fBsad\fR driver to get the autopush
-configuration information for a given device. \fIarg\fR points to a
-\fBstrapush\fR structure as described in the previous command.
-.sp
-The user should set the \fBsap_major\fR and \fBsap_minor\fR fields of the
-\fBstrapush\fR structure to the major and minor device numbers, respectively,
-of the device in question. On return, the \fBstrapush\fR structure will be
-filled in with the entire information used to configure the device. Unused
-entries in the module list will be zero-filled.
-.sp
-On failure, \fBerrno\fR is set to one of the following values:
-.sp
-.ne 2
-.na
-\fB\fBEFAULT\fR\fR
-.ad
-.RS 10n
-\fIarg\fR points outside the allocated address space.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEINVAL\fR\fR
-.ad
-.RS 10n
-The major device number is invalid.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBENOSTR\fR\fR
-.ad
-.RS 10n
-The major device number does not represent a \fBSTREAMS\fR driver.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBENODEV\fR\fR
-.ad
-.RS 10n
-The device is not configured for autopush.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSAD_VML\fR\fR
-.ad
-.RS 11n
-Allows any user to validate a list of modules (that is, to see if they are
-installed on the system). \fIarg\fR is a pointer to a \fBstr_list\fR structure
-with the following members:
-.sp
-.in +2
-.nf
-int sl_nmods;
- struct str_mlist *sl_modlist;
-.fi
-.in -2
-
-The \fBstr_mlist\fR structure has the following member:
-.sp
-.in +2
-.nf
-char l_name[FMNAMESZ+1];
-.fi
-.in -2
-
-\fBsl_nmods\fR indicates the number of entries the user has allocated in the
-array and \fBsl_modlist\fR points to the array of module names. The return
-value is 0 if the list is valid, 1 if the list contains an invalid module name,
-or \(mi1 on failure. On failure, \fBerrno\fR is set to one of the following
-values:
-.sp
-.ne 2
-.na
-\fB\fBEFAULT\fR\fR
-.ad
-.RS 10n
-\fIarg\fR points outside the allocated address space.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEINVAL\fR\fR
-.ad
-.RS 10n
-The \fBsl_nmods\fR field of the \fBstr_list\fR structure is less than or
-equal to zero.
-.RE
-
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBIntro\fR(2), \fBioctl\fR(2), \fBopen\fR(2)
-.sp
-.LP
-\fISTREAMS Programming Guide\fR
-.SH DIAGNOSTICS
-.sp
-.LP
-Unless otherwise specified, the return value from \fBioctl()\fR is \fB0\fR
-upon success and \fB\(mi1\fR upon failure with \fBerrno\fR set as indicated.
diff --git a/usr/src/man/man7d/sata.7d b/usr/src/man/man7d/sata.7d
deleted file mode 100644
index 558d273d6e..0000000000
--- a/usr/src/man/man7d/sata.7d
+++ /dev/null
@@ -1,334 +0,0 @@
-'\" te
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License").You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SATA 7D "May 13, 2017"
-.SH NAME
-sata \- Solaris SATA framework
-.SH DESCRIPTION
-.LP
-Serial ATA is an interconnect technology designed to replace parallel ATA
-technology. It is used to connect hard drives, optical drives, removable
-magnetic media devices and other peripherals to the host system. For complete
-information on Serial ATA technology, visit the Serial ATA web site at
-http://\fIwww.serialata.org\fR.
-.sp
-.LP
-Up to 32 SATA devices may be plugged directly to each SATA HBA and up to 15
-SATA devices may be plugged directly to each SATA port multiplier supported by
-the Solaris SATA framework. The actual number of pluggable devices may be lower,
-and is limited by the number of device ports on the SATA HBA or the SATA port
-multiplier. The maximum data rate is either 1.5Gb/sec. or 3.0Gb/sec., depending
-on the capability of a SATA device, port multiplier and SATA HBA controller.
-.sp
-.LP
-The Solaris SATA framework adheres to the \fISerial ATA 1.0a\fR specification
-and supports SATA-2 signaling speed 3.0Gb/sec. SATA devices that are connected
-to SATA HBAs controlled by a SATA framework-compliant HBA driver are treated by
-the system as SCSI devices. The Solaris SCSI disk driver (\fBsd\fR(7D)) is
-attached as a target driver for each device node created by the SATA framework.
-You can use the \fBcfgadm\fR(1M) utility to manage hot plugged and unplugged
-SATA devices.
-.SH FILES
-.ne 2
-.na
-\fB\fB/kernel/misc/sata\fR\fR
-.ad
-.RS 27n
-32-bit \fBELF\fR kernel module (x86).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/misc/amd64/sata\fR\fR
-.ad
-.RS 27n
-64-bit \fBELF\fR kernel module (x86).
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attribute:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture x86
-.TE
-
-.SH SEE ALSO
-.LP
-\fBcfgadm\fR(1M), \fBprtconf\fR(1M), \fBcfgadm_sata\fR(1M),
-\fBattributes\fR(5), \fBahci\fR(7D), \fBnv_sata\fR(7D),
-\fBsd\fR(7D), \fBsi3124\fR(7D)
-.sp
-.LP
-\fISerial ATA 1.0a Specification\fR \(em Serial ATA International Organization.
-.sp
-.LP
-\fISerial ATA II (Extension to Serial ATA 1.0.a.)\fR \(em Serial ATA
-International Organization.
-.SH DIAGNOSTICS
-.LP
-The messages described below may appear on the system console as well as being
-logged. All messages are presented in one of the following formats and are
-followed by the diagnostic message:
-.sp
-.in +2
-.nf
-sata: WARNING: <\fBcontroller/devices/.. path\fR>:
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-or:
-.sp
-.in +2
-.nf
-sata: NOTICE: <\fBcontroller/devices/.. path\fR>:
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-\&...where <\fBcontroller/devices/.. path\fR> identifies a specific SATA HBA
-issuing a diagnostic message shown below.
-.sp
-.ne 2
-.na
-\fBSATA port X: link lost.\fR
-.ad
-.sp .6
-.RS 4n
-Communication (via serial link) between the HBA and the device plugged to the
-specified SATA device port has been lost.
-.RE
-
-.sp
-.ne 2
-.na
-\fBSATA port X: link established.\fR
-.ad
-.sp .6
-.RS 4n
-Communication (via serial link) between the HBA and the device plugged to the
-specified SATA device port has been established.
-.RE
-
-.sp
-.ne 2
-.na
-\fBSATA port X: device reset.\fR
-.ad
-.sp .6
-.RS 4n
-The device plugged to the specified SATA device port has been reset. The reset
-may be due to a communication or command error, command timeout, or an explicit
-request from the host.
-.RE
-
-.sp
-.ne 2
-.na
-\fBSATA port X failed.\fR
-.ad
-.sp .6
-.RS 4n
-The specified SATA device port failed and is in an unusable state. You can
-change the port state by deactivating the port and activating it again using
-cfgadm SATA hardware-specific commands (see \fBcfgadm_sata\fR(1M)).
-.RE
-
-.sp
-.ne 2
-.na
-\fBSATA port X error.\fR
-.ad
-.sp .6
-.RS 4n
-An error was detected in specified SATA device port operations.
-.RE
-
-.sp
-.ne 2
-.na
-\fBSATA device detached at port X.\fR
-.ad
-.sp .6
-.RS 4n
-Communication (via serial link) between the HBA and the device plugged to the
-specified SATA device port has been lost and could not be re-established. The
-SATA framework assumes that the device is unplugged from the specified SATA
-device port.
-.RE
-
-.sp
-.ne 2
-.na
-\fBSATA device detected at port X.\fR
-.ad
-.sp .6
-.RS 4n
-Communication( via serial link) between the HBA and the device plugged to the
-specified empty SATA device port has been established. The SATA framework
-assumes that the new device is plugged to the specified SATA device port.
-.RE
-
-.sp
-.ne 2
-.na
-\fBSATA disk device at port X.\fR
-.ad
-.sp .6
-.RS 4n
-This message is followed by a disk description specifying the disk vendor,
-serial number, firmware revision number and the disk capabilities.
-.RE
-
-.sp
-.ne 2
-.na
-\fBSATA CD/DVD (ATAPI) device at port X.\fR
-.ad
-.sp .6
-.RS 4n
-This message is followed by a SATA CD/DVD description specifying the DVD
-vendor, serial number, firmware revision number and the DVD capabilities.
-.RE
-
-.sp
-.ne 2
-.na
-\fBSATA device at port X cannot be configured. Application(s) accessing
-previously attached device have to release it before newly inserted device can
-be made accessible.\fR
-.ad
-.sp .6
-.RS 4n
-The port cannot be configured because there is application using the previous
-attached device, so the application must release it, then the newly inserted
-device can be configured.
-.RE
-
-.sp
-.ne 2
-.na
-\fBApplication(s) accessing previously attached SATA device have to release it
-before newly inserted device can be made accessible.\fR
-.ad
-.sp .6
-.RS 4n
-The target node remained and it belongs to a previously attached device. This
-happens when the file was open or the node was waiting for resources at the
-time the associated device was removed. Instruct event daemon to retry the
-cleanup later.
-.RE
-
-.sp
-.ne 2
-.na
-\fBsata: error recovery request for non-attached device at cport X.\fR
-.ad
-.sp .6
-.RS 4n
-When error recovery is requested, the device is not yet attached.
-.RE
-
-.sp
-.ne 2
-.na
-\fBSATA device at port X is not power-managed.\fR
-.ad
-.sp .6
-.RS 4n
-When property \fBpm-capable\fR on the target device node setting fails, the
-SATA device won't be power-managed.
-.RE
-
-.sp
-.ne 2
-.na
-\fBSATA disk device at port X does not support LBA.\fR
-.ad
-.sp .6
-.RS 4n
-The disk device plugged into specified SATA device port does not support LBA
-addressing and cannot be used.
-.RE
-
-.sp
-.ne 2
-.na
-\fBCannot identify SATA device at port X - device is attached.\fR
-.ad
-.sp .6
-.RS 4n
-IDENTIFY (PACKET) DEVICE data cannot be retrieved successfully after the device
-is attached to the SATA port.
-.RE
-
-.sp
-.ne 2
-.na
-\fBsata: <HBA driver name><instance number>:hba attached failed.\fR
-.ad
-.sp .6
-.RS 4n
-The SATA HBA instance attach operation failed. This HBA instance cannot be
-configured and is not available.
-.RE
-
-.sp
-.ne 2
-.na
-\fBsata: invalid ATAPI cdb length<command cdb length>.\fR
-.ad
-.sp .6
-.RS 4n
-The length of the command cdb is greater than that the device can support.
-.RE
-
-.sp
-.ne 2
-.na
-\fBsata: invalid sata_hba_tran version X for driver <HBA driver name>.\fR
-.ad
-.sp .6
-.RS 4n
-The specified SATA HBA driver and the SATA framework are incompatible. The
-driver cannot attach and SATA HBAs controlled by this driver (and devices
-plugged to this SATA HBA ports) are not available.
-.RE
-
-.sp
-.ne 2
-.na
-\fBsata_hba_attach: cannot create SATA attachment point for port X.\fR
-.ad
-.sp .6
-.RS 4n
-The specified SATA device port cannot be configured in the system and a device
-plugged to this port could not be not be configured and used.
-.RE
-
-.sp
-.ne 2
-.na
-\fBsata_create_target_node: cannot create target node for device at port X.\fR
-.ad
-.sp .6
-.RS 4n
-The device target node for the device plugged to the specified SATA device port
-could not be created. As a result, the device cannot be configured and used.
-.RE
-
diff --git a/usr/src/man/man7d/scsa1394.7d b/usr/src/man/man7d/scsa1394.7d
deleted file mode 100644
index 239dbb0e31..0000000000
--- a/usr/src/man/man7d/scsa1394.7d
+++ /dev/null
@@ -1,197 +0,0 @@
-'\" te
-.\" Copyright (c) 2005 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SCSA1394 7D "May 13, 2017"
-.SH NAME
-scsa1394 \- SCSI to 1394 bridge driver
-.SH SYNOPSIS
-.LP
-.nf
-\fBunit@GUID\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBscsa1394\fR driver is a 1394 target and an SCSA HBA driver that supports
-1394 mass storage devices compliant with the \fISerial Bus Protocol 2
-(SBP-2\fR) specification. It supports both bus-powered and self-powered 1394
-mass storage devices.
-.sp
-.LP
-The \fBscsa1394\fR nexus driver maps SCSA target driver requests to SBP-2
-Operation Request Blocks (\fBORB\fR's).
-.sp
-.LP
-The \fBscsa1394\fR driver creates a child device info node for each logical
-unit (LUN) on the mass storage device. The standard Solaris SCSI disk driver is
-attached to those nodes. Refer to \fBsd\fR(7D).
-.sp
-.LP
-This driver supports multiple LUN devices and creates a separate child device
-info node for each LUN. All child LUN nodes attach to \fBsd\fR(7D).
-.sp
-.LP
-In previous releases, all 1394 mass storage devices were treated as removable
-media devices and managed by \fBrmformat\fR(1) and volume management software.
-In the current release, however, only mass storage devices with a removable bit
-(RMB) value of \fB1\fR are removable. (The RMB is part of the device's SCSI
-INQUIRY data.) See SCSI specifications T10/995D Revision 11a, T10/1236-D
-Revision 20 or T10/1416-D Revision 23 for more information. However, for
-backward compatibility, all 1394 mass storage devices can still be managed by
-\fBrmformat\fR(1). With or without a volume manager, you can mount, eject,
-hot remove and hot insert a 1394 mass storage device as the following sections
-explain.
-.SH USING VOLUME MANAGEMENT
-.LP
-Mass storage devices are managed by a volume manager. Software that manages
-removable media creates a device nickname that can be listed with
-\fBeject\fR(1) or \fBrmmount\fR(1). A device that is not mounted automatically
-can be mounted using \fBrmmount\fR(1) under \fB/rmdisk/\fIlabel\fR\fR. Note
-that the \fBmount\fR(1M) and \fBmount\fR(1M) commands do not accept nicknames;
-you must use explicit device names with these commands.
-.sp
-.LP
-See \fBrmmount\fR(1) to unmount the device and \fBeject\fR(1) to eject the
-media. If the device is ejected while it is mounted, volume management software
-unmounts the device before ejecting it. It also might kill any active
-applications that are accessing the device.
-.sp
-.LP
-Volume management software is hotplug-aware and normally mounts file systems on
-USB mass storage devices if the file system is recognized. Before hot removing
-the USB device, use \fBeject\fR(1) to unmount the file system.
-.sp
-.LP
-You can disable the automatic mounting and unmounting of removable devices by
-inserting a entry for a removable device in \fB/etc/vfstab\fR. In this entry,
-you must set the \fBmount at boot\fR field to \fBno\fR. See \fBvfstab\fR(4).
-.SH USING \fBmount\fR AND \fBumount\fR
-.LP
-Use \fBmount\fR(1M) to explicitly mount the device and \fBumount\fR(1M) to
-unmount the device. Use \fBeject\fR(1) to eject the media. After you have
-explicitly mounted a removable device, you cannot use a nickname as an argument
-to \fBeject\fR.
-.sp
-.LP
-Removing the storage device while it is being accessed or mounted fails with a
-console warning. To hot remove the storage device from the system, unmount the
-file system, then kill all applications accessing the device. Next, hot remove
-the device. A storage device can be hot inserted at any time.
-.SH DEVICE SPECIAL FILES
-.LP
-Block special file names are located in \fB/dev/dsk\fR. Raw file names are
-located in \fB/dev/rdsk\fR. Input/output requests to the devices must follow
-the same restrictions as those for SCSI disks. Refer to \fBsd\fR(7D).
-.SH IOCTLS
-.LP
-Refer to \fBcdio\fR(7I) and \fBdkio\fR(7I).
-.SH ERRORS
-.LP
-Refer to \fBsd\fR(7D).
-.SH FILES
-.LP
-The device special files for the 1394 mass storage device are created like
-those for a SCSI disk. Refer to \fBsd\fR(7D).
-.sp
-.ne 2
-.na
-\fB\fB/dev/dsk/c\fIn\fRt\fIn\fRd\fIn\fRs\fIn\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Block files
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/rdsk/c\fIn\fRt\fIn\fRd\fIn\fRs\fIn\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Raw files
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/vol/dev/aliases/rmdisk0\fR\fR
-.ad
-.sp .6
-.RS 4n
-Symbolic link to the character device for the media in removable drive 0. This
-is a generic removable media device.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/scsa1394\fR\fR
-.ad
-.sp .6
-.RS 4n
-32-bit x86 ELF kernel module
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/scsa1394\fR\fR
-.ad
-.sp .6
-.RS 4n
-64-bit x86 ELF kernel module
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/sparcv9/scsa1394\fR\fR
-.ad
-.sp .6
-.RS 4n
-64-bit SPARC ELF kernel module
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for a description of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture SPARC, x86, PCI-based systems
-.TE
-
-.SH SEE ALSO
-.LP
-\fBcdrw\fR(1), \fBeject\fR(1), \fBrmformat\fR(1), \fBrmmount\fR(1),
-\fBcfgadm_scsi\fR(1M), \fBfdisk\fR(1M), \fBmount\fR(1M), \fBumount\fR(1M),
-\fBscsi\fR(4), \fBvfstab\fR(4),
-\fBattributes\fR(5), \fBhci1394\fR(7D), \fBsd\fR(7D), \fBpcfs\fR(7FS),
-\fBcdio\fR(7I), \fBdkio\fR(7I)
-.sp
-.LP
-\fIIEEE Std 1394-1995 Standard for a High Performance Serial Bus\fR
-.sp
-.LP
-\fIANSI NCITS 325-1998 - Serial Bus Protocol 2 (SBP-2)\fR
-.sp
-.LP
-\fISystem Administration Guide: Devices and File Systems\fR
-.sp
-.LP
-SCSI Specification \fIT10/995D Revision 11a\fR \(em March 1997
-.sp
-.LP
-SCSI Specification \fIT10/1236-D Revision 20\fR \(em July 2001
-.sp
-.LP
-SCSI Specification \fIT10/1416-D Revision 23\fR \(em May 2005
diff --git a/usr/src/man/man7d/scsa2usb.7d b/usr/src/man/man7d/scsa2usb.7d
deleted file mode 100644
index e52a46fb26..0000000000
--- a/usr/src/man/man7d/scsa2usb.7d
+++ /dev/null
@@ -1,468 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SCSA2USB 7D "May 23, 2021"
-.SH NAME
-scsa2usb \- SCSI to USB bridge driver
-.SH SYNOPSIS
-.nf
-\fBstorage@unit-address\fR
-.fi
-
-.SH DESCRIPTION
-The \fBscsa2usb\fR driver is a \fBUSBA\fR (Solaris USB architecture) compliant
-nexus driver that supports the \fIUSB Mass Storage Bulk Only Transport
-Specification 1.0\fR and \fIUSB Control/Bulk/Interrupt (CBI) Transport
-Specification 1.0\fR. The \fBscsa2usb\fR driver also supports USB storage
-devices that implement CBI Transport without the interrupt completion for
-status (that is, Control/Bulk (CB) devices.) It supports bus-powered and
-self-powered USB mass storage devices. This nexus driver is both a USB client
-driver and a \fBSCSA\fR HBA driver. As such, the \fBscsa2usb\fR driver only
-supports storage devices that utilize the above two transports.
-.sp
-.LP
-The \fBscsa2usb\fR driver also supports a \fBugen\fR(7D) interface allowing raw
-access to the device, for example by libusb applications, bypassing
-the child \fBsd\fR(7D) or \fBst\fR(7D) driver. Because a libusb application
-might change the state of the device, you should not access the disk or tape
-concurrently.
-.sp
-.LP
-The \fBscsa2usb\fR nexus driver maps \fBSCSA\fR target driver requests to
-\fBUSBA\fR client driver requests.
-.sp
-.LP
-The \fBscsa2usb\fR driver creates a child device info node for each logical
-unit (LUN) on the mass storage device. The standard Solaris \fBSCSI\fR disk
-driver or tape driver is attached to those nodes. Refer to \fBsd\fR(7D) or
-\fBst\fR(7D).
-.sp
-.LP
-This driver supports multiple LUN devices and creates a separate child device
-info node for each LUN. All child LUN nodes attach to \fBsd\fR(7D) for disks or
-\fBst\fR(7D) for tapes.
-.sp
-.LP
-In previous releases, all USB disk storage devices were treated as removable
-media devices and managed by \fBrmformat\fR(1) and volume management software.
-In the current release, however, only disk storage devices with a removable bit
-(RMB) value of \fB1\fR are removable. (The RMB is part of the device's SCSI
-INQUIRY data.) See SCSI specifications T10/995D Revision 11a, T10/1236-D
-Revision 20 or T10/1416-D Revision 23 for more information. However, for
-backward compatibility, all USB disk storage devices can still be managed by
-\fBrmformat\fR(1). With or without a volume manager, you can mount, eject,
-hot remove and hot insert a 1394 mass storage device as the following sections
-explain.
-.sp
-.LP
-Some devices may be supported by the USB mass storage driver even though they
-do not identify themselves as compliant with the USB mass storage class.
-.sp
-.LP
-The \fBscsa2usb.conf\fR file contains an \fBattribute-override-list\fR that
-lists the vendor ID, product ID, and revision for matching mass storage
-devices, as well as fields for overriding the default device attributes. The
-entries in this list are commented out by default and may be uncommented to
-enable support of particular devices.
-.sp
-.LP
-Follow the information given in the \fBscsa2usb.conf\fR file to see if a
-particular device can be supported using the override information.
-For example, by adding the following to the
-\fBscsa2usb.conf\fR file, many USB memory sticks and card readers might operate
-more reliably:
-.sp
-.in +2
-.nf
-attribute-override-list = "vid=* reduced-cmd-support=true";
-.fi
-.in -2
-
-.sp
-.LP
-Note that this override applies to all USB mass storage devices and might be
-inappropriate for a USB CD writer. If so, you can add an entry for each device
-to the attribute override list.
-.sp
-.LP
-If USB mass storage support is considered a security risk, this driver can be
-disabled in \fB/etc/system\fR as follows:
-.sp
-.in +2
-.nf
-exclude: scsa2usb
-.fi
-.in -2
-
-.sp
-.LP
-Alternatively, you can disable automatic handling of a device as described in
-the following subsection.
-.SS "Using Volume Management"
-Disk storage devices are managed by Volume Manager. Software that manages
-removable media creates a device nickname that can be listed with
-\fBeject\fR(1) or \fBrmmount\fR(1). A device that is not mounted automatically
-can be mounted using \fBrmmount\fR(1) under \fB/rmdisk/\fIlabel\fR\fR. Note
-that the \fBmount\fR(1M) and \fBmount\fR(1M) commands do not accept nicknames;
-you must use explicit device names with these commands.
-.sp
-.LP
-See \fBrmmount\fR(1) to unmount the device and \fBeject\fR(1) to eject the
-media. If the device is ejected while it is mounted, volume management software
-unmounts the device before ejecting it. It also might kill any active
-applications that are accessing the device.
-.sp
-.LP
-Volume management software is hotplug-aware and normally mounts file systems on
-USB mass storage devices if the file system is recognized. Before hot removing
-the USB device, use \fBeject\fR(1) to unmount the file system. After the device
-is removed, a console warning, such as "The disconnected device was busy,
-please reconnect," might display. The warning is harmless and you can ignore
-it.
-.sp
-.LP
-You can disable the automatic mounting and unmounting of removable devices by
-inserting a entry for a removable device in \fB/etc/vfstab\fR. In this entry,
-you must set the \fBmount at boot\fR field to \fBno\fR. See \fBvfstab\fR(4).
-.SS "Using \fBmount\fR and \fBumount\fR"
-Use \fBmount\fR(1M) to explicitly mount the device and \fBumount\fR(1M) to
-unmount the device. Use \fBeject\fR(1) to eject the media. After you have
-explicitly mounted a removable device, you cannot use a nickname as an argument
-to \fBeject\fR.
-.sp
-.LP
-Removing the disk device while it is being accessed or mounted fails with a
-console warning. To hot remove the disk device from the system, unmount the
-file system, then kill all applications accessing the device. Next, hot remove
-the device. A storage device can be hot inserted at any time.
-.SH DEVICE SPECIAL FILES
-Disk block special file names are located in \fB/dev/dsk\fR, while raw file
-names are located in \fB/dev/rdsk\fR. Tape raw file names are located in
-\fB/dev/rmt\fR. Input/output requests to the devices must follow the same
-restrictions as those for SCSI disks or tapes. Refer to \fBsd\fR(7D) or
-\fBst\fR(7D).
-.SH IOCTLS
-Refer to \fBdkio\fR(7I) and \fBcdio\fR(7I).
-.SH ERRORS
-Refer to \fBsd\fR(7D) for disks or \fBst\fR(7D) for tapes.
-.SH FILES
-The device special files for the USB mass storage device are created like those
-for a \fBSCSI\fR disk or SCSI tape. Refer to \fBsd\fR(7D) or \fBst\fR(7D).
-.sp
-.ne 2
-.na
-\fB\fB/dev/dsk/c\fIn\fRt\fIn\fRd\fIn\fRs\fIn\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Block files for disks.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/rdsk/c\fIn\fRt\fIn\fRd\fIn\fRs\fIn\fR\fR\fR
-.ad
-.sp .6
-.RS 4n
-Raw files for disks.
-.RE
-
-.sp
-.ne 2
-.na
-\fB/dev/usb/*/*/*\fR
-.ad
-.sp .6
-.RS 4n
-ugen(7D) nodes
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/rmt/[0-127][l,m,h,u,c][b][n]\fR\fR
-.ad
-.sp .6
-.RS 4n
-Raw files for tapes.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/vol/dev/aliases/zip0\fR\fR
-.ad
-.sp .6
-.RS 4n
-Symbolic link to the character device for the media in Zip drive 0
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/vol/dev/aliases/jaz0\fR\fR
-.ad
-.sp .6
-.RS 4n
-Symbolic link to the character device for the media in Jaz drive 0.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/vol/dev/aliases/rmdisk0\fR\fR
-.ad
-.sp .6
-.RS 4n
-Symbolic link to the character device for the media in removable drive 0. This
-is a generic removable media device.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/scsa2usb\fR\fR
-.ad
-.sp .6
-.RS 4n
-64-bit x86 ELF kernel module
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/sparcv9/scsa2usb\fR\fR
-.ad
-.sp .6
-.RS 4n
-64-bit SPARC ELF kernel module
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/scsa2usb.conf\fR\fR
-.ad
-.sp .6
-.RS 4n
-Can be used to override specific characteristics.
-.RE
-
-.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture SPARC, x86, PCI-based systems
-.TE
-
-.SH SEE ALSO
-\fBcdrw\fR(1), \fBeject\fR(1), \fBrmformat\fR(1), \fBrmmount\fR(1),
-\fBcfgadm_scsi\fR(1M), \fBcfgadm_usb\fR(1M), \fBfdisk\fR(1M), \fBmount\fR(1M),
-\fBumount\fR(1M),
-\fBscsi\fR(4), \fBvfstab\fR(4), \fBattributes\fR(5),
-\fBieee1394\fR(7D), \fBsd\fR(7D), \fBst\fR(7D), \fBugen\fR(7D), \fBusba\fR(7D),
-\fBpcfs\fR(7FS), \fBcdio\fR(7I), \fBdkio\fR(7I)
-.sp
-.LP
-\fIWriting Device Drivers\fR
-.sp
-.LP
-\fISystem Administration Guide, Volume I\fR
-.sp
-.LP
-\fIUniversal Serial Bus Specification 2.0\fR
-.sp
-.LP
-\fIUniversal Serial Bus Mass Storage Class Specification Overview 1.0\fR
-.sp
-.LP
-\fIUniversal Serial Bus Mass Storage Class Bulk-Only Transport Specification
-1.0\fR
-.sp
-.LP
-\fIUniversal Serial Bus Mass Storage Class Control/Bulk/Interrupt (CBI)
-Transport Specification 1.0\fR
-.sp
-.LP
-\fISystem Administration Guide: Basic Administration\fR
-.sp
-.LP
-SCSI Specification \fIT10/995D Revision 11a\fR \(em March 1997
-.sp
-.LP
-SCSI Specification \fIT10/1236-D Revision 20\fR \(em July 2001
-.sp
-.LP
-SCSI Specification \fIT10/1416-D Revision 23\fR \(em May 2005
-.SH DIAGNOSTICS
-Refer to \fBsd\fR(7D) and \fBst\fR(7D).
-.sp
-.LP
-In addition to being logged, the following messages may appear on the system
-console. All messages are formatted in the following manner:
-.sp
-.in +2
-.nf
-Warning: <device path> (scsa2usb<instance number>): Error Message...
-.fi
-.in -2
-.sp
-
-.sp
-.ne 2
-.na
-\fBCannot access <device>. Please reconnect.\fR
-.ad
-.sp .6
-.RS 4n
-There was an error in accessing the mass-storage device during reconnect.
-Please reconnect the device.
-.RE
-
-.sp
-.ne 2
-.na
-\fBDevice is not identical to the previous one on this port. Please disconnect
-and reconnect.\fR
-.ad
-.sp .6
-.RS 4n
-Another USB device has been inserted on a port that was connected to a
-mass-storage device. Please disconnect the USB device and reconnect the
-mass-storage device back into that port.
-.RE
-
-.sp
-.ne 2
-.na
-\fBReinserted device is accessible again.\fR
-.ad
-.sp .6
-.RS 4n
-The mass-storage device that was hot-removed from its USB slot has been
-re-inserted to the same slot and is available for access.
-.RE
-
-.sp
-.ne 2
-.na
-\fBPlease disconnect and reconnect this device.\fR
-.ad
-.sp .6
-.RS 4n
-A hotplug of the device is needed before it can be restored.
-.RE
-
-.sp
-.LP
-The following messages may be logged into the system log. They are formatted in
-the following manner:
-.sp
-.in +2
-.nf
-<device path><scsa2usb<instance number>): message...
-.fi
-.in -2
-.sp
-
-.sp
-.ne 2
-.na
-\fBInvalid <record> in scsa2usb.conf file entry.\fR
-.ad
-.sp .6
-.RS 4n
-An unrecognized record was specified in the \fBscsa2usb.conf\fR file.
-.RE
-
-.sp
-.ne 2
-.na
-\fBPkt submitted with 0 timeout which may cause indefinite hangs.\fR
-.ad
-.sp .6
-.RS 4n
-An application submitted a request but did not specify a timeout.
-.RE
-
-.sp
-.ne 2
-.na
-\fBSyncing not supported.\fR
-.ad
-.sp .6
-.RS 4n
-Syncing after a panic is not supported. The filesystem may be corrupted.
-.RE
-
-.sp
-.ne 2
-.na
-\fBscsa2usb.conf override: <record>.\fR
-.ad
-.sp .6
-.RS 4n
-An override record specified in \fBscsa2usb.conf\fR was applied. Examples of an
-override record applied to a device with vendor ID 123 and product ID 456 are:
-.sp
-.in +2
-.nf
-vid=0x123 pid=0x456 reduced-cmd-support=true
-
- or
-
-vid=* reduced-cmd-support=true
-.fi
-.in -2
-
-\&...meaning that the override record is applied to this device and all other
-USB mass storage devices.
-.RE
-
-.SH NOTES
-The Zip 100 drive does not comply with \fIUniversal Serial Bus Specification
-1.0\fR and cannot be power managed. Power Management support for Zip 100 has
-been disabled.
-.sp
-.LP
-If the system panics while a UFS file system is mounted on the mass storage
-media, no syncing will take place for the disk mass-storage device. (Syncing is
-not supported by the \fBscsa2usb\fR driver.) As a result, the file system on
-the media will not be consistent on reboot.
-.sp
-.LP
-If a PCFS file system is mounted, no syncing is needed and the filesystem will
-be consistent on reboot.
-.sp
-.LP
-If a mass-storage device is busy, system suspend cannot proceed and the system
-will immediately resume again.
-.sp
-.LP
-Attempts to remove a mass-storage device from the system will fail. The failure
-will be logged to the console. An attempt to replace the removed device with
-some other USB device will also fail. To successfully remove a USB mass-storage
-device you must "close" all references to it.
-.sp
-.LP
-Concurrent I/O to devices with multiple LUNs on the same device is not
-supported.
-.sp
-.LP
-Some USB CD-RW devices may perform inadequately at their advertised speeds. To
-compensate, use USB CD-RW devices at lower speeds (2X versus 4X). See
-\fBcdrw\fR(1) for details.
-.sp
-.LP
-This driver also supports CBI devices that do not use USB interrupt pipe for
-status completion.
diff --git a/usr/src/man/man7d/sd.7d b/usr/src/man/man7d/sd.7d
deleted file mode 100644
index 733179ebd3..0000000000
--- a/usr/src/man/man7d/sd.7d
+++ /dev/null
@@ -1,840 +0,0 @@
-'\" te
-.\" Copyright (c) 2009 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER,
-.\" with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SD 7D "September 12, 2020"
-.SH NAME
-sd \- SCSI disk and ATAPI/SCSI CD-ROM device driver
-.SH SYNOPSIS
-.nf
-\fBsd@target,lun:partition\fR
-.fi
-
-.SH DESCRIPTION
-To open a device without checking if the vtoc is valid, use the O_NDELAY flag.
-When the device is opened using O_NDELAY, the first read or write to the device
-that happens after the open results in the label being read if the label is not
-currently valid. Once read, the label remains valid until the last close of the
-device. Except for reading the label, O_NDELAY has no impact on the driver.
-.SS "SPARC"
-The \fBsd\fR \fBSCSI\fR and \fBSCSI/ATAPI\fR driver supports embedded
-\fBSCSI\fR-2 and \fBCCS\fR-compatible \fBSCSI\fR disk and CD-ROM drives,
-\fBATAPI \fR 2.6 (SFF-8020i)-compliant CD-ROM drives, SFF-8090-compliant
-\fBSCSI/ATAPI\fR DVD-ROM drives, IOMEGA \fBSCSI/ATAPI\fR ZIP drives, \fBSCSI
-JAZ\fR drives, and USB mass storage devices (refer to \fBscsa2usb\fR(7D)).
-.sp
-.LP
-To determine the disk drive type, use the \fBSCSI/ATAPI\fR inquiry command and
-read the volume label stored on block 0 of the drive. (The volume label
-describes the disk geometry and partitioning and must be present for the disk
-to be mounted by the system.) A volume label is not required for removable,
-re-writable or read-only media.
-.SS "x86 Only"
-The \fBsd\fR driver supports embedded \fBSCSI\fR-2 and \fBCCS\fR-compatible
-\fBSCSI \fRdisk and CD-ROM drives, \fBATAPI \fR2.6 (SFF-8020i)-compliant CD-ROM
-drives, SFF-8090-compliant \fBSCSI/ATAPI\fR DVD-ROM drives, IOMEGA
-\fBSCSI/ATAPI\fR ZIP drives\fB, and SCSI JAZ\fR drives.
-.sp
-.LP
-The x86 BIOS legacy requires a master boot record (MBR) and \fBfdisk\fR table
-in the first physical sector of the bootable media. If the x86 hard disk
-contains a Solaris disk label, it is located in the second 512-byte sector of
-the FDISK partition.
-.SH DEVICE SPECIAL FILES
-Block-files access the disk using normal buffering mechanism and are read-from
-and written-to without regard to physical disk records. A \fBraw\fR interface
-enables direct transmission between the disk and the user's read or write
-buffer. A single \fBread\fR or \fBwrite\fR call usually results in a single I/O
-operation, therefore raw I/O is more efficient when many bytes are transmitted.
-Block files names are found in \fB/dev/dsk\fR; raw file names are found in
-\fB/dev/rdsk\fR.
-.sp
-.LP
-I/O requests to the raw device must be aligned on a 512-byte (\fBDEV_BSIZE\fR)
-boundary and all I/O request lengths must be in multiples of 512 bytes.
-Requests that do not meet these requirements will trigger an \fBEINVAL\fR
-error. There are no alignment or length restrictions on I/O requests to the
-block device.
-.SH CD-ROM DRIVE SUPPORT
-A CD-ROM disk is single-sided and contains approximately 640 megabytes of data
-or 74 minutes of audio. When the CD-ROM is opened, the eject button is disabled
-to prevent manual removal of the disk until the last \fBclose()\fR is called.
-No volume label is required for a CD-ROM. The disk geometry and partitioning
-information are constant and never change. If the CD-ROM contains data recorded
-in a Solaris-aware file system format, it can be mounted using the appropriate
-Solaris file system support.
-.SH DVD-ROM DRIVE SUPPORT
-DVD-ROM media can be single or double-sided and can be recorded upon using a
-single or double layer structure. Double-layer media provides parallel or
-opposite track paths. A DVD-ROM can hold from between 4.5 Gbytes and 17 Gbytes
-of data, depending on the layer structure used for recording and if the DVD-ROM
-is single or double-sided.
-.sp
-.LP
-When the DVD-ROM is opened, the eject button is disabled to prevent the manual
-removal of a disk until the last \fBclose()\fR is called. No volume label is
-required for a DVD-ROM. If the DVD-ROM contains data recorded in a
-Solaris-aware file system format, it can be mounted using the appropriate
-Solaris file system support.
-.SH ZIP/JAZ DRIVE SUPPORT
-\fBZIP/JAZ\fR media provide varied data capacity points; a single \fBJAZ
-\fRdrive can store up to 2 GBytes of data, while a ZIP-250 can store up to
-250MBytes of data. \fBZIP/JAZ\fR drives can be read-from or written-to using
-the appropriate drive.
-.sp
-.LP
-When a \fBZIP/JAZ\fR drive is opened, the eject button is disabled to prevent
-the manual removal of a disk until the last \fBclose()\fR is called. No volume
-label is required for a \fBZIP/JAZ\fR drive. If the \fBZIP/JAZ\fR drive
-contains data recorded in a Solaris-aware file system format, it can be mounted
-using the appropriate Solaris file system support.
-.SH DEVICE STATISTICS SUPPORT
-Each device maintains I/O statistics for the device and for partitions
-allocated for that device. For each device/partition, the driver accumulates
-reads, writes, bytes read, and bytes written. The driver also initiates
-hi-resolution time stamps at queue entry and exit points to enable monitoring
-of residence time and cumulative residence-length product for each queue.
-.sp
-.LP
-Not all device drivers make per-partition IO statistics available for
-reporting. \fBsd\fR and \fBssd\fR(7D) per-partition statistics are enabled by
-default but may be disabled in their configuration files.
-.SH IOCTLS
-Refer to \fBdkio\fR(7I), and \fBcdio\fR(7I)
-.SS "ERRORS"
-.ne 2
-.na
-\fB\fBEACCES\fR\fR
-.ad
-.RS 10n
-Permission denied
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEBUSY\fR\fR
-.ad
-.RS 10n
-The partition was opened exclusively by another thread
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEFAULT\fR\fR
-.ad
-.RS 10n
-The argument features a bad address
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEINVAL\fR\fR
-.ad
-.RS 10n
-Invalid argument
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBENOTTY\fR\fR
-.ad
-.RS 10n
-The device does not support the requested ioctl function
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBENXIO\fR\fR
-.ad
-.RS 10n
-During opening, the device did not exist. During close, the drive unlock failed
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEROFS\fR\fR
-.ad
-.RS 10n
-The device is read-only
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEAGAIN\fR\fR
-.ad
-.RS 10n
-Resource temporarily unavailable
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEINTR\fR\fR
-.ad
-.RS 10n
-A signal was caught during the execution of the \fBioctl()\fR function
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBENOMEM\fR\fR
-.ad
-.RS 10n
-Insufficient memory
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEPERM\fR\fR
-.ad
-.RS 10n
-Insufficient access permission
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEIO\fR\fR
-.ad
-.RS 10n
-An I/O error occurred. Refer to notes for details on copy-protected DVD-ROM
-media.
-.RE
-
-.SH CONFIGURATION
-The \fBsd\fR driver can be configured by defining properties in the
-\fBsd.conf\fR file. The \fBsd\fR driver supports the following properties:
-.sp
-.ne 2
-.na
-\fB\fBenable-partition-kstats\fR\fR
-.ad
-.RS 27n
-The default value is 1, which causes partition IO statistics to be maintained.
-Set this value to zero to prevent the driver from recording partition
-statistics. This slightly reduces the CPU overhead for IO, minimizes the amount
-of \fBsar\fR(1) data collected and makes these statistics unavailable for
-reporting by \fBiostat\fR(1M) even though the \fB-p\fR/\fB-P\fR option is
-specified. Regardless of this setting, disk IO statistics are always
-maintained.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBqfull-retries\fR\fR
-.ad
-.RS 27n
-The supplied value is passed as the \fBqfull-retries\fR capability value of the
-HBA driver. See \fBscsi_ifsetcap\fR(9F) for details.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBqfull-retry-interval\fR\fR
-.ad
-.RS 27n
-The supplied value is passed as the \fBqfull-retry interval\fR capability value
-of the HBA driver. See \fBscsi_ifsetcap\fR(9F) for details.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBallow-bus-device-reset\fR\fR
-.ad
-.RS 27n
-The default value is 1, which allows resetting to occur. Set this value to
-\fB0\fR (zero) to prevent the \fBsd\fR driver from calling \fBscsi_reset\fR(9F)
-with a second argument of \fBRESET_TARGET\fR when in error-recovery mode. This
-\fBscsi_reset\fR(9F) call may prompt the HBA driver to send a SCSI Bus Device
-Reset message. The \fBscsi_reset\fR(9F) call with a second argument of
-\fBRESET_TARGET\fR may result from an explicit request via the \fBUSCSICMD\fR
-\fBioctl\fR. Some high-availability multi-initiator systems may wish to
-prohibit the Bus Device Reset message; to do this, set the
-\fBallow-bus-device-reset\fR property to \fB0\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBoptical-device-bind\fR
-.ad
-.RS 27n
-Controls the binding of the driver to non self-identifying SCSI target optical
-devices. (See \fBscsi\fR(4)). The default value is 1, which causes \fBsd\fR to
-bind to DTYPE_OPTICAL devices (as noted in \fBscsi\fR(4)). Setting this value
-to 0 prevents automatic binding. The default behavior for the SPARC-based
-\fBsd\fR driver prior to Solaris 9 was not to bind to optical devices.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpower-condition\fR\fR
-.ad
-.RS 27n
-Boolean type, when set to \fBFalse\fR, it indicates that the disk does not
-support \fBpower condition\fR field in the \fBSTART STOP UNIT\fR command.
-.RE
-
-.sp
-.LP
-In addition to the above properties, some device-specific tunables can be
-configured in \fBsd.conf\fR using the \fBsd-config-list\fR global property. The
-value of this property is a list of duplets. The formal syntax is:
-.sp
-.in +2
-.nf
-sd-config-list = <duplet> [, <duplet> ]* ;
-
-where
-
-<duplet>:= "<vid+pid>" , "<tunable-list>"
-
-and
-
-<tunable-list>:= <tunable> [, <tunable> ]*;
-<tunable> = <name> : <value>
-
-The <vid+pid> is the string that is returned by the target device
-on a SCSI inquiry command.
-
-The <tunable-list> contains one or more tunables to apply to
-all target devices with the specified <vid+pid>.
-
-Each <tunable> is a <name> : <value> pair. Supported
-tunable names are:
-
- delay-busy: when busy, nsecs of delay before retry.
-
- retries-timeout: retries to perform on an IO timeout.
-.fi
-.in -2
-
-.sp
-.ne 2
-.na
-\fB\fBmmc-gesn-polling\fR\fR
-.ad
-.RS 20n
-For optical drives compliant with \fBMMC-3\fR and supporting the \fBGET EVENT
-STATUS NOTIFICATION\fR command, this command is used for periodic media state
-polling, usually initiated by the \fBDKIOCSTATE\fR \fBdkio\fR(7I) ioctl. To
-disable the use of this command, set this boolean property to \fBfalse\fR. In
-that case, either the \fBTEST UNIT READY\fR or zero-length \fBWRITE(10)\fR
-command is used instead.
-.RE
-
-.SH EXAMPLES
-.in +2
-.nf
-The following is an example of a global sd-config-list property:
-
- sd-config-list =
- "SUN T4", "delay-busy:600, retries-timeout:6",
- "SUN StorEdge_3510", "retries-timeout:3";
-.fi
-.in -2
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/kernel/drv/sd.conf\fR\fR
-.ad
-.RS 23n
-Driver configuration file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/dsk/cntndnsn\fR\fR
-.ad
-.RS 23n
-Block files
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/rdsk/cntndnsn\fR\fR
-.ad
-.RS 23n
-Raw files
-.RE
-
-.sp
-.LP
-Where:
-.sp
-.ne 2
-.na
-\fBcn\fR
-.ad
-.RS 6n
-controller n
-.RE
-
-.sp
-.ne 2
-.na
-\fBtn\fR
-.ad
-.RS 6n
-SCSI target id n (0-6)
-.RE
-
-.sp
-.ne 2
-.na
-\fBdn\fR
-.ad
-.RS 6n
-SCSI LUN n (0-7 normally; some HBAs support LUNs to 15 or 32. See the specific
-manpage for details)
-.RE
-
-.sp
-.ne 2
-.na
-\fBsn\fR
-.ad
-.RS 6n
-partition n (0-7)
-.RE
-
-.SS "x86 Only"
-.ne 2
-.na
-\fB\fB/dev/rdsk/cntndnpn\fR\fR
-.ad
-.RS 22n
-raw files
-.RE
-
-.sp
-.LP
-Where:
-.sp
-.ne 2
-.na
-\fBpn\fR
-.ad
-.RS 6n
-Where \fIn\fR=0 the node corresponds to the entire disk.
-.RE
-
-.SH SEE ALSO
-\fBsar\fR(1), \fBcfgadm_scsi\fR(1M), \fBfdisk\fR(1M), \fBformat\fR(1M),
-\fBiostat\fR(1M), \fBclose\fR(2), \fBioctl\fR(2), \fBlseek\fR(2),
-\fBread\fR(2), \fBwrite\fR(2), \fBdriver.conf\fR(4), \fBscsi\fR(4),
-\fBfilesystem\fR(5), \fBscsa2usb\fR(7D), \fBssd\fR(7D), \fBhsfs\fR(7FS),
-\fBpcfs\fR(7FS), \fBudfs\fR(7FS), \fBcdio\fR(7I), \fBdkio\fR(7I),
-\fBscsi_ifsetcap\fR(9F), \fBscsi_reset\fR(9F)
-.sp
-.LP
-\fIANSI Small Computer System Interface-2 (SCSI-2)\fR
-.sp
-.LP
-\fIATA Packet Interface for CD-ROMs, SFF-8020i\fR
-.sp
-.LP
-\fIMt.Fuji Commands for CD and DVD, SFF8090v3\fR
-.SH DIAGNOSTICS
-.in +2
-.nf
-Error for Command:\fI<command name>\fR
-Error Level: Fatal
-Requested Block: \fI<n>\fR
-Error Block: \fI<m>\fR
-Vendor:'\fI<vendorname>\fR\&'
-Serial Number:'\fI<serial number>\fR\&'
-Sense Key:\fI<sense key name>\fR
-.fi
-.in -2
-.sp
-
-.sp
-.ne 2
-.na
-\fBASC: 0x<a> (<ASC name>), ASCQ: 0x<b>, FRU: 0x<c>\fR
-.ad
-.sp .6
-.RS 4n
-The command indicated by <command name> failed. The Requested Block is the
-block where the transfer started and the Error Block is the block that caused
-the error. Sense Key, \fBASC\fR, and \fBASCQ\fR information is returned by the
-target in response to a request sense command.
-.RE
-
-.sp
-.ne 2
-.na
-\fBCaddy not inserted in drive\fR
-.ad
-.sp .6
-.RS 4n
-The drive is not ready because no caddy has been inserted.
-.RE
-
-.sp
-.ne 2
-.na
-\fBCheck Condition on REQUEST SENSE\fR
-.ad
-.sp .6
-.RS 4n
-A REQUEST SENSE command completed with a check condition. The original command
-will be retried a number of times.
-.RE
-
-.sp
-.ne 2
-.na
-\fBLabel says <m> blocks Drive says <n> blocks\fR
-.ad
-.sp .6
-.RS 4n
-There is a discrepancy between the label and what the drive returned on the
-\fBREAD CAPACITY\fR command.
-.RE
-
-.sp
-.ne 2
-.na
-\fBNot enough sense information\fR
-.ad
-.sp .6
-.RS 4n
-The request sense data was less than expected.
-.RE
-
-.sp
-.ne 2
-.na
-\fBRequest Sense couldn't get sense data\fR
-.ad
-.sp .6
-.RS 4n
-The \fBREQUEST SENSE\fR command did not transfer any data.
-.RE
-
-.sp
-.ne 2
-.na
-\fBReservation Conflict\fR
-.ad
-.sp .6
-.RS 4n
-The drive was reserved by another initiator.
-.RE
-
-.sp
-.ne 2
-.na
-\fBSCSI transport failed: reason \fB\&'xxxx'\fR: {retrying|giving up}\fR
-.ad
-.sp .6
-.RS 4n
-The host adapter has failed to transport a command to the target for the reason
-stated. The driver will either retry the command or, ultimately, give up.
-.RE
-
-.sp
-.ne 2
-.na
-\fBUnhandled Sense Key<\fIn\fR>\fR
-.ad
-.sp .6
-.RS 4n
-The REQUEST SENSE data included an invalid sense.
-.RE
-
-.sp
-.ne 2
-.na
-\fBUnit not ready. Additional sense code 0x\fR
-.ad
-.sp .6
-.RS 4n
-\fI<n>\fR The drive is not ready.
-.RE
-
-.sp
-.ne 2
-.na
-\fBCan't do switch back to mode 1\fR
-.ad
-.sp .6
-.RS 4n
-A failure to switch back to read mode 1.
-.RE
-
-.sp
-.ne 2
-.na
-\fBCorrupt label - bad geometry\fR
-.ad
-.sp .6
-.RS 4n
-The disk label is corrupted.
-.RE
-
-.sp
-.ne 2
-.na
-\fBCorrupt label - label checksum failed\fR
-.ad
-.sp .6
-.RS 4n
-The disk label is corrupted.
-.RE
-
-.sp
-.ne 2
-.na
-\fBCorrupt label - wrong magic number\fR
-.ad
-.sp .6
-.RS 4n
-The disk label is corrupted.
-.RE
-
-.sp
-.ne 2
-.na
-\fBDevice busy too long\fR
-.ad
-.sp .6
-.RS 4n
-The drive returned busy during a number of retries.
-.RE
-
-.sp
-.ne 2
-.na
-\fBDisk not responding to selection\fR
-.ad
-.sp .6
-.RS 4n
-The drive is powered down or died
-.RE
-
-.sp
-.ne 2
-.na
-\fBFailed to handle UA\fR
-.ad
-.sp .6
-.RS 4n
-A retry on a Unit Attention condition failed.
-.RE
-
-.sp
-.ne 2
-.na
-\fBI/O to invalid geometry\fR
-.ad
-.sp .6
-.RS 4n
-The geometry of the drive could not be established.
-.RE
-
-.sp
-.ne 2
-.na
-\fBIncomplete read/write - retrying/giving up\fR
-.ad
-.sp .6
-.RS 4n
-There was a residue after the command completed normally.
-.RE
-
-.sp
-.ne 2
-.na
-\fBNo bp for direct access device format geometry\fR
-.ad
-.sp .6
-.RS 4n
-A bp with consistent memory could not be allocated.
-.RE
-
-.sp
-.ne 2
-.na
-\fBNo bp for disk label\fR
-.ad
-.sp .6
-.RS 4n
-A bp with consistent memory could not be allocated.
-.RE
-
-.sp
-.ne 2
-.na
-\fBNo bp for fdisk\fR
-.ad
-.sp .6
-.RS 4n
-A bp with consistent memory could not be allocated.
-.RE
-
-.sp
-.ne 2
-.na
-\fBNo bp for rigid disk geometry\fR
-.ad
-.sp .6
-.RS 4n
-A bp with consistent memory could not be allocated.
-.RE
-
-.sp
-.ne 2
-.na
-\fBNo mem for property\fR
-.ad
-.sp .6
-.RS 4n
-Free memory pool exhausted.
-.RE
-
-.sp
-.ne 2
-.na
-\fBNo memory for direct access device format geometry\fR
-.ad
-.sp .6
-.RS 4n
-Free memory pool exhausted.
-.RE
-
-.sp
-.ne 2
-.na
-\fBNo memory for disk label\fR
-.ad
-.sp .6
-.RS 4n
-Free memory pool exhausted.
-.RE
-
-.sp
-.ne 2
-.na
-\fBNo memory for rigid disk geometry\fR
-.ad
-.sp .6
-.RS 4n
-The disk label is corrupted.
-.RE
-
-.sp
-.ne 2
-.na
-\fBNo resources for dumping\fR
-.ad
-.sp .6
-.RS 4n
-A packet could not be allocated during dumping.
-.RE
-
-.sp
-.ne 2
-.na
-\fBOffline\fR
-.ad
-.sp .6
-.RS 4n
-Drive went offline; probably powered down.
-.RE
-
-.sp
-.ne 2
-.na
-\fBRequeue of command fails\fR
-.ad
-.sp .6
-.RS 4n
-Driver attempted to retry a command and experienced a transport error.
-.RE
-
-.sp
-.ne 2
-.na
-\fBsdrestart transport failed()\fR
-.ad
-.sp .6
-.RS 4n
-Driver attempted to retry a command and experienced a transport error.
-.RE
-
-.sp
-.ne 2
-.na
-\fBTransfer length not modulo\fR
-.ad
-.sp .6
-.RS 4n
-Illegal request size.
-.RE
-
-.sp
-.ne 2
-.na
-\fBTransport of request sense fails()\fR
-.ad
-.sp .6
-.RS 4n
-Driver attempted to submit a request sense command and failed.
-.RE
-
-.sp
-.ne 2
-.na
-\fBTransport rejected()\fR
-.ad
-.sp .6
-.RS 4n
-Host adapter driver was unable to accept a command.
-.RE
-
-.sp
-.ne 2
-.na
-\fBUnable to read label\fR
-.ad
-.sp .6
-.RS 4n
-Failure to read disk label.
-.RE
-
-.sp
-.ne 2
-.na
-\fBUnit does not respond to selection\fR
-.ad
-.sp .6
-.RS 4n
-Drive went offline; probably powered down.
-.RE
-
-.SH NOTES
-DVD-ROM media containing DVD-Video data may follow/adhere to the requirements
-of content scrambling system or copy protection scheme. Reading of
-copy-protected sector will cause I/O error. Users are advised to use the
-appropriate playback software to view video contents on DVD-ROM media
-containing DVD-Video data.
diff --git a/usr/src/man/man7d/sda.7d b/usr/src/man/man7d/sda.7d
deleted file mode 100644
index 35d7e5d4b0..0000000000
--- a/usr/src/man/man7d/sda.7d
+++ /dev/null
@@ -1,59 +0,0 @@
-'\" te
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SDA 7D "Jan 8, 2009"
-.SH NAME
-sda \- SD/MMC architecture
-.SH DESCRIPTION
-.sp
-.LP
-The \fBsda\fR module provides support services for Secure Digital (SD) and
-MultiMediaCard (MMC) slot and card device drivers.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/kernel/misc/sda\fR\fR
-.ad
-.RS 28n
-32-bit ELF kernel module (x86).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/misc/amd64/sda\fR\fR
-.ad
-.RS 28n
-64-bit ELF kernel module (x86).
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for a description of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture x86
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBattributes\fR(5), \fBsdhost\fR(7D)
-.SH NOTES
-.sp
-.LP
-The \fBsda\fR module provides support only for SD/MMC devices that are
-connected via a supported slot driver. Notably, slots that are on USB busses
-are normally treated as USB mass storage devices and are serviced by the
-\fBscsa2usb\fR(7D) driver.
diff --git a/usr/src/man/man7d/sdhost.7d b/usr/src/man/man7d/sdhost.7d
deleted file mode 100644
index c1cc7aaf0b..0000000000
--- a/usr/src/man/man7d/sdhost.7d
+++ /dev/null
@@ -1,59 +0,0 @@
-'\" te
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SDHOST 7D "Jan 8, 2009"
-.SH NAME
-sdhost \- Standard-compliant Secure Digital slot driver
-.SH SYNOPSIS
-.LP
-.nf
-pciclass,080500@unit-address
-pciclass,080501@unit-address
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBsdhost\fR driver supports Secure Digital (SD) standard media slots
-commonly found on mobile computers.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/sdhost\fR\fR
-.ad
-.RS 30n
-32-bit ELF kernel module (x86).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/sdhost\fR\fR
-.ad
-.RS 30n
-64-bit ELF kernel module (x86).
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for a description of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture x86
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBattributes\fR(5), \fBsda\fR(7D)
diff --git a/usr/src/man/man7d/sdp.7d b/usr/src/man/man7d/sdp.7d
deleted file mode 100644
index 2f7411761c..0000000000
--- a/usr/src/man/man7d/sdp.7d
+++ /dev/null
@@ -1,225 +0,0 @@
-'\" te
-.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SDP 7D "June 19, 2021"
-.SH NAME
-sdp \- Sockets Direct Protocol driver
-.SH SYNOPSIS
-.nf
-#include <sys/socket.h>
-.fi
-
-.LP
-.nf
-#include <netinet/in.h>
-.fi
-
-.LP
-.nf
-\fBs = socket(AF_INET, SOCK_STREAM, PROTO_SDP);\fR
-.fi
-
-.LP
-.nf
-\fBs = socket(AF_INET6, SOCK_STREAM, PROTO_SDP);\fR
-.fi
-
-.SH DESCRIPTION
-The Sockets Direct Protocol (\fBSDP\fR) is a transport protocol layered over
-the \fIInfiniband Transport Framework\fR (\fBIBTF\fR). \fBSDP\fR is a standard
-implementation based on Annex 4 of the \fIInfiniband Architecture Specification
-Vol 1\fR and provides reliable byte-stream, flow controlled two-way data
-transmission that closely mimics the Transmission Control Protocol (\fBTCP\fR).
-.sp
-.LP
-\fBSDP\fR supports a sockets-based SOCK_STREAM interface to application
-programs. It also supports graceful close (including half-closed sockets), IP
-addressing (IPv4 or IPv6), the connecting/accepting connect model, out-of-band
-(OOB) data and common socket options. The \fBSDP\fR protocol also supports
-kernel bypass data transfers and data transfers from send-upper-layer-protocol
-(ULP) buffers to receive ULP buffers. A \fBSDP\fR message includes a BSDH
-header followed by data. (A BSDH header advertises the amount of available
-buffers on the local side).
-.sp
-.LP
-\fBSDP\fR networking functionality is broken into the \fBsdp\fR driver and a
-function call-based sockfs implementation. A new protocol family of PROTO_SDP
-is introduced to use the \fBSDP\fR transport provided by the driver.
-.sp
-.LP
-Sockets utilizing \fBSDP\fR are either active or passive. Active sockets
-initiate connections to passive sockets. Both active and passive sockets must
-have their local IP or IPv6 address and \fBSDP\fR port number bound with the
-\fBbind\fR(3SOCKET) system call after the socket is created. By default,
-\fBSDP\fR sockets are active. A passive socket is created by calling the
-\fBlisten\fR(3SOCKET) system call after binding the socket with bind(). This
-process establishes a queueing parameter for the passive socket. Connections to
-the passive socket can be received with the \fBaccept\fR(3SOCKET) system call.
-Active sockets use the \fBconnect\fR(3SOCKET) call after binding to initiate
-connections.
-.sp
-.LP
-In most cases, \fBSDP\fR sends data when it is presented. When outstanding
-data is not yet acknowledged, \fBSDP\fR gathers small amounts of output to be
-sent in a single packet once an acknowledgement is received. For a small
-number of clients this packetization may cause significant delays. To
-circumvent this problem, \fBSDP\fR provided by the driver supplies
-SDP_NODELAY, a socket-level boolean option. Note that this behavior is similar
-to the TCP_NODELAY option.
-.sp
-.LP
-\fBSDP\fR provides an urgent data mechanism that can be invoked using the
-out-of-band provisions of \fBsend\fR(3SOCKET). The out-of-band delivery
-behavior is identical to TCP. The caller may mark one byte as "urgent" with the
-MSG_OOB flag to \fBsend\fR(3SOCKET). This sets an "urgent pointer" pointing to
-the byte in the \fBSDP\fR stream. The receiver of the stream is notified of the
-urgent data by a \fBSIGURG\fR signal. The SIOCATMARK \fBioctl\fR(2) request
-returns a value indicating whether the stream is at the urgent mark. Because
-the system never returns data across the urgent mark in a single \fBread\fR(2)
-call, it is possible to advance to the urgent data in a simple loop which reads
-data, testing the socket with the \fBSIOCATMARK\fR ioctl() request until it
-reaches the mark.
-.SH ADDRESS FORMATS
-\fBSDP\fR uses IP/IPv6 addresses to refer to local and remote devices and
-opens a reliable connected IB connection between two end points. The \fBsdp\fR
-driver supports a point-to-point connection, however broadcasting and
-multicasting are not supported.
-.SH SOCKET OPTIONS
-\fBSDP\fR supports setsockopt and getsockopt to set and read socket options.
-Very few socket options affect \fBSDP\fR protocol operations. Other common
-socket options are processed but do not affect SDP protocol operation. All
-socket options are checked for validity. A getsockopt returns the values set or
-toggled by setsockopt. Socket options that affect protocol operations are
-SO_LINGER, SO_DEBUG, SO_REUSEADDR and SO_OOBINLINE.
-.SH ERRORS
-.ne 2
-.na
-\fB\fBEISCONN\fR\fR
-.ad
-.RS 28n
-A connect() operation was attempted on a socket on which a connect() operation
-had already been performed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBECONNRESET\fR\fR
-.ad
-.RS 28n
-The remote peer forced the connection to be closed. This usually occurs when
-the remote machine loses state information about the connection due to a crash.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBECONNREFUSED\fR\fR
-.ad
-.RS 28n
-The remote peer actively refused connection establishment. This usually occurs
-because no process is listening to the port.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEADDRINUSE\fR\fR
-.ad
-.RS 28n
-A bind() operation was attempted on a socket with a network address/port pair
-that has already been bound to another socket.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEADDRNOTAVAIL\fR\fR
-.ad
-.RS 28n
-A bind() operation was attempted on a socket with a network address for which
-no network interface exists.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEACCES\fR\fR
-.ad
-.RS 28n
-A bind() operation was attempted with a reserved port number and the effective
-user ID of the process was not the privileged user.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBENOBUFS\fR\fR
-.ad
-.RS 28n
-The system ran out of memory for internal data structures.
-.RE
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/sdp\fR\fR
-.ad
-.sp .6
-.RS 4n
-64-bit \fBELF\fR kernel module (x86).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/sparcv9/sdp\fR\fR
-.ad
-.sp .6
-.RS 4n
-64-bit \fBELF\fR kernel module (SPARC).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/sdpib\fR\fR
-.ad
-.sp .6
-.RS 4n
-64-bit \fBELF\fR kernel module (x86).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/sparcv9/sdpib\fR\fR
-.ad
-.sp .6
-.RS 4n
-64-bit \fBELF\fR kernel module (SPARC).
-.RE
-
-.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attribute:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture x86, SPARC
-.TE
-
-.SH SEE ALSO
-\fBread\fR(2), \fBgetsockopt\fR(3XNET), \fBsocket.h\fR(3HEAD),
-\fBaccept\fR(3SOCKET), \fBbind\fR(3SOCKET), \fBconnect\fR(3SOCKET),
-\fBsend\fR(3SOCKET), \fBattributes\fR(5), \fBstandards\fR(5)
-.sp
-.LP
-\fIInfiniband Architecture Specification Vol 1- Annex 4\fR \(em November, 2002
diff --git a/usr/src/man/man7d/sdt.7d b/usr/src/man/man7d/sdt.7d
deleted file mode 100644
index f42b6885a9..0000000000
--- a/usr/src/man/man7d/sdt.7d
+++ /dev/null
@@ -1,50 +0,0 @@
-'\" te
-.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SDT 7D "Dec 10, 2017"
-.SH NAME
-sdt \- DTrace statically defined tracing provider
-.SH DESCRIPTION
-.LP
-The \fBsdt\fR driver is a DTrace dynamic tracing provider that performs dynamic
-instrumentation at statically-defined locations in the kernel.
-.sp
-.LP
-The \fBsdt\fR provider allows kernel developers to explicitly create probes at
-formally designated locations in the operating system kernel and loadable
-modules, allowing the implementor to consciously choose the points in their
-code that are desired probe points, and to convey some semantic knowledge about
-that point with the choice of probe name and a relevant set of arguments.
-.sp
-.LP
-The \fBsdt\fR driver is not a public interface and you access instrumentation
-offered by this provider through DTrace. Refer to the \fIDynamic
-Tracing Guide\fR for a description of the public documented interfaces
-available for the DTrace facility and the probes offered by the \fBsdt\fR
-provider.
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for a description of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Private
-.TE
-
-.SH SEE ALSO
-.LP
-\fBdtrace\fR(1M), \fBattributes\fR(5), \fBdtrace\fR(7D)
-.sp
-.LP
-\fIDynamic Tracing Guide\fR:
-.sp
-.LP
-https://illumos.org/books/dtrace/
diff --git a/usr/src/man/man7d/ses.7d b/usr/src/man/man7d/ses.7d
deleted file mode 100644
index 76e92bd4cb..0000000000
--- a/usr/src/man/man7d/ses.7d
+++ /dev/null
@@ -1,162 +0,0 @@
-'\" te
-.\" Copyright (c) 20081 Sun Microsystems. Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SES 7D "May 27, 2008"
-.SH NAME
-ses \- SCSI enclosure services device driver
-.SH SYNOPSIS
-.LP
-.nf
-\fBses\fR\fI@target\fR\fB,\fR\fIlun\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBses\fR device driver is an interface to \fBSCSI\fR enclosure services
-devices. These devices sense and monitor the physical conditions in an
-enclosure as well as allow access to the status reporting and configuration
-features of the enclosure (such as indicator \fBLEDs\fR on the enclosure.)
-.sp
-.LP
-\fBioctl\fR(9E) calls may be issued to \fBses\fR to determine the state of the
-enclosure and to set parameters on the enclosure services device.
-.sp
-.LP
-No \fBses\fR driver properties are defined. Use the \fBses.conf\fR file to
-configure the \fBses\fR driver.
-.SH EXAMPLES
-.LP
-\fBExample 1 \fR\fBses.conf\fR File Format
-.sp
-.LP
-The following is an example of the \fBses.conf\fR file format:
-
-.sp
-.in +2
-.nf
-#
-# Copyright (c) 1996, by Sun Microsystems, Inc.
-# All rights reserved.
-#
-#
-#ident "@(#)ses.conf 1.1 97/02/10 SMI"
-#
-
-name="ses" parent="sf"
- target=15;
-
-name="ses" parent="SUNW,pln" port=0 target=15;
-name="ses" parent="SUNW,pln" port=1 target=15;
-name="ses" parent="SUNW,pln" port=2 target=15;
-name="ses" parent="SUNW,pln" port=3 target=15;
-name="ses" parent="SUNW,pln" port=4 target=15;
-name="ses" parent="SUNW,pln" port=5 target=15;
-
-name="ses" class="scsi"
- target=15 lun=0;
-.fi
-.in -2
-
-.SH IOCTLS
-.sp
-.LP
-The SES driver currently supports the SES, SAFTE and SEN enclosure service
-chipsets. SEN and SAFTE protocols are translated internally in the driver into
-SES compliant data structures. This enables the SES driver to work seamlessly
-with different protocols and eliminates the need to enhance user applications.
-.sp
-.ne 2
-.na
-\fB\fBSESIOC_GETNOBJ\fR\fR
-.ad
-.RS 21n
-Returns an unsigned integer that represents the number of SES data structures
-in the enclosure services chip.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSESIOC_GETOBJMAP\fR\fR
-.ad
-.RS 21n
-Returns a size array containing \fBses_object\fR elements communicated through
-\fBSESIOC_GETNOBJ()\fR. \fBses_object\fR is defined in \fBsesio.h\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSESIOC_INIT\fR\fR
-.ad
-.RS 21n
-Instructs the device to perform a self-diagnostic test. Currently SES & SEN
-devices always return success.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSESIOC_GETENCSTAT\fR\fR
-.ad
-.RS 21n
-Returns an unsigned character that represents status enclosure as defined by
-Table 25 in Section 7.1.2 of the SES specification \fINCITS 305-199\fR\fIx\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSESIOC_GETOBJSTAT\fR\fR
-.ad
-.RS 21n
-This ioctl is passed an \fBses_objarg\fR containing the \fBobj_id\fR you want
-to set, then fills in the remaining fields according to element status page of
-the SES specification.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSESIOC_SETOBJSTAT\fR\fR
-.ad
-.RS 21n
-Sets options in the control field. You set control field options by filling out
-all fields in \fBses_objarg\fR. Field definitions are presented in Section
-7.2.2 of the SES specification.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/ses.conf\fR\fR
-.ad
-.RS 24n
-Driver configuration file
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture SPARC
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBdriver.conf\fR(4), \fBscsi\fR(4), \fBattributes\fR(5), \fBesp\fR(7D),
-\fBisp\fR(7D), \fBioctl\fR(9E)
diff --git a/usr/src/man/man7d/sf.7d b/usr/src/man/man7d/sf.7d
deleted file mode 100644
index 719e43b46a..0000000000
--- a/usr/src/man/man7d/sf.7d
+++ /dev/null
@@ -1,262 +0,0 @@
-'\" te
-.\" Copyright (c) 1997, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SF 7D "Mar 27, 1997"
-.SH NAME
-sf \- SOC+ FC-AL FCP Driver
-.SH SYNOPSIS
-.LP
-.nf
-sf@\fIport\fR,0
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBsf\fR driver is a SCSA compliant nexus driver which supports the Fibre
-Channel Protocol for SCSI on Private Fibre Channel Arbitrated loops. An SBus
-card called the \fBSOC+\fR card (see \fBsocal\fR(7D)) connects the Fibre
-Channel loop to the host system.
-.sp
-.LP
-The \fBsf\fR driver interfaces with the \fBSOC+\fR device driver,
-\fBsocal\fR(7D), the SCSI disk target driver, \fBssd\fR(7D), and the SCSI-3
-Enclosure Services driver, \fBses\fR(7D). It only supports SCSI devices of
-type disk and ses.
-.sp
-.LP
-The \fBsf\fR driver supports the standard functions provided by the SCSA
-interface. The driver supports auto request sense and tagged queueing by
-default.
-.sp
-.LP
-The driver requires that all devices have unique hard addresses defined by
-switch settings in hardware. Devices with conflicting hard addresses will not
-be accessible.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB/platform/\fIarchitecture\fR/kernel/drv/sf\fR
-.ad
-.sp .6
-.RS 4n
-ELF kernel module
-.RE
-
-.sp
-.ne 2
-.na
-\fB/platform/\fIarchitecture\fR/kernel/drv/sf.conf\fR
-.ad
-.sp .6
-.RS 4n
-\fBsf\fR driver configuration file
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture SPARC
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBluxadm\fR(1M), \fBprtconf\fR(1M), \fBdriver.conf\fR(4), \fBsocal\fR(7D),
-\fBssd\fR(7D)
-.sp
-.LP
-\fIWriting Device Drivers\fR
-.sp
-.LP
-\fIANSI X3.272-1996, Fibre Channel Arbitrated Loop (FC-AL)\fR
-.sp
-.LP
-\fIANSI X3.269-1996, Fibre Channel Protocol for SCSI (FCP)\fR
-.sp
-.LP
-\fIANSI X3.270-1996, SCSI-3 Architecture Model (SAM)\fR
-.sp
-.LP
-\fIFibre Channel Private Loop SCSI Direct Attach (FC-PLDA)\fR
-.SH DIAGNOSTICS
-.sp
-.LP
-In addition to being logged, the messages below may display on the system
-console.
-.sp
-.LP
-The first set of messages indicate that the attachment was unsuccessful, and
-will only display while the \fBsf\fR driver is initially attempting to attach.
-Each message is preceded by \fBsf\fR\fI%d\fR , where \fI%d\fR is the instance
-number of the \fBsf\fR device.
-.sp
-.ne 2
-.na
-\fBFailed to alloc soft state\fR
-.ad
-.sp .6
-.RS 4n
-Driver was unable to allocate space for the internal state structure. Driver
-did not attach to device, SCSI devices will be inaccessible.
-.RE
-
-.sp
-.ne 2
-.na
-\fBBad soft state\fR
-.ad
-.sp .6
-.RS 4n
-Driver requested an invalid internal state structure. Driver did not attach to
-device, SCSI devices will be inaccessible.
-.RE
-
-.sp
-.ne 2
-.na
-\fBFailed to obtain transport handle\fR
-.ad
-.sp .6
-.RS 4n
-Driver was unable to obtain a transport handle to communicate with the socal
-driver. Driver did not attach to device, SCSI devices will be inaccessible
-.RE
-
-.sp
-.ne 2
-.na
-\fBFailed to allocate command/response pool\fR
-.ad
-.sp .6
-.RS 4n
-Driver was unable to allocate space for commands and responses. Driver did not
-attach to device, SCSI devices will be inaccessible.
-.RE
-
-.sp
-.ne 2
-.na
-\fBFailed to allocate kmem cache\fR
-.ad
-.sp .6
-.RS 4n
-Driver was unable to allocate space for the packet cache. Driver did not attach
-to device, SCSI devices will be inaccessible.
-.RE
-
-.sp
-.ne 2
-.na
-\fBFailed to allocate dma handle for\fR
-.ad
-.sp .6
-.RS 4n
-Driver was unable to allocate a dma handle for the loop map. Driver did not
-attach to device, SCSI devices will be inaccessible.
-.RE
-
-.sp
-.ne 2
-.na
-\fBFailed to allocate lilp map\fR
-.ad
-.sp .6
-.RS 4n
-Driver was unable to allocate space for the loop map. Driver did not attach to
-device, SCSI devices will be inaccessible.
-.RE
-
-.sp
-.ne 2
-.na
-\fBFailed to bind dma handle for\fR
-.ad
-.sp .6
-.RS 4n
-Driver was unable to bind a dma handle for the loop map. Driver did not attach
-to device, SCSI devices will be inaccessible.
-.RE
-
-.sp
-.ne 2
-.na
-\fBFailed to attach\fR
-.ad
-.sp .6
-.RS 4n
-Driver was unable to attach for some reason that may be printed. Driver did
-not attach to device, SCSI devices will be inaccessible.
-.RE
-
-.sp
-.LP
-The next set of messages may display at any time. The full device pathname,
-followed by the shorter form described above, will precede the message.
-.sp
-.ne 2
-.na
-\fBInvalid lilp map\fR
-.ad
-.sp .6
-.RS 4n
-The driver did not obtain a valid lilp map from the socal driver. SCSI device
-will be inaccessible.
-.RE
-
-.sp
-.ne 2
-.na
-\fBTarget t, AL-PA x and hard\fR
-.ad
-.sp .6
-.RS 4n
-The device with a switch setting t has an AL-PA x which does not match its hard
-address y. The device will not be accessible.
-.RE
-
-.sp
-.ne 2
-.na
-\fBDuplicate switch settings\fR
-.ad
-.sp .6
-.RS 4n
-The driver detected devices with the same switch setting. All such devices will
-be inaccessible.
-.RE
-
-.sp
-.ne 2
-.na
-\fBWWN changed on target t\fR
-.ad
-.sp .6
-.RS 4n
-The World Wide Name (WWN) has changed on the device with switch setting t.
-.RE
-
-.sp
-.ne 2
-.na
-\fBTarget t, unknown device type\fR
-.ad
-.sp .6
-.RS 4n
-The driver does not know the device type reported by the device with switch
-setting t.
-.RE
-
diff --git a/usr/src/man/man7d/sfe.7d b/usr/src/man/man7d/sfe.7d
deleted file mode 100644
index b1bf0b2902..0000000000
--- a/usr/src/man/man7d/sfe.7d
+++ /dev/null
@@ -1,201 +0,0 @@
-'\" te
-.\" Copyright (c) 2007 by Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SFE 7D "Dec 12, 2007"
-.SH NAME
-sfe \- SiS900 series Fast Ethernet device driver
-.SH SYNOPSIS
-.LP
-.nf
-\fB/dev/sfe\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBsfe\fR driver is a loadable, clonable, GLD-based STREAMS driver
-supporting the Data Link Provider Interface \fBdlpi\fR(7P) on Silicon
-Integrated Systems 900 series Fast Ethernet controllers.
-.SH APPLICATION PROGRAMMING INTERFACE
-.sp
-.LP
-The relevant fields returned as part of a \fBDL_INFO_ACK\fR response are:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Maximum SDU is 1500.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Minimum SDU is 0.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The dlsap address length is 8.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-MAC type is \fBDL_ETHER\fR.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-SAP length is -2. The 6-byte physical address is followed immediately by a
-2-byte SAP.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Service mode is \fBDL_CLDLS\fR.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Broadcast address is the 6-byte Ethernet broadcast address
-(\fBff:ff:ff:ff:ff:ff\fR).
-.RE
-.sp
-.LP
-If the SAP provided is zero, then \fIIEEE 802.3\fR mode is assumed and outbound
-frames will have the frame payload length written into the type field.
-Likewise, inbound frames with a SAP between zero and 1500 are interpreted as
-\fIIEEE 802.3\fR frames and delivered to any streams that are bound to SAP zero
-(the \fI802.3\fR SAP).
-.SH PROPERTIES
-.sp
-.LP
-The following properties may be configured using either \fBndd\fR(1M) or
-the \fBsfe.conf\fR configuration file as described by \fBdriver.conf\fR(4):
-.sp
-.ne 2
-.na
-\fB\fBadv_100fdx_cap\fR\fR
-.ad
-.sp .6
-.RS 4n
-Enables the 100 Base TX full-duplex link option. (This is generally the fastest
-mode if both link partners support it. Most modern equipment supports this
-mode.)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBadv_100hdx_cap\fR\fR
-.ad
-.sp .6
-.RS 4n
-Enables the 100 Base TX half-duplex link option. (Typically used when the link
-partner is a 100 Mbps hub.)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBadv_10fdx_cap\fR\fR
-.ad
-.sp .6
-.RS 4n
-Enables the 10 Base-T full-duplex link option. (This less-frequently used mode
-is typically used when the link partner is a 10 Mbps switch.)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBadv_10hdx_cap\fR\fR
-.ad
-.sp .6
-.RS 4n
-Enables the 10 Base-T half-duplex link option. (This is the fall-back when no
-other option is available. It is typically used when the link partner is a 10
-Mbps hub or is an older network card.)
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for a description of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Committed
-.TE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/dev/sfe\fR\fR
-.ad
-.sp .6
-.RS 4n
-Special character device.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/sfe\fR\fR
-.ad
-.sp .6
-.RS 4n
-32-bit driver binary (x86).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/sfe\fR\fR
-.ad
-.sp .6
-.RS 4n
-64-bit driver binary (x86).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/sparcv9/sfe\fR\fR
-.ad
-.sp .6
-.RS 4n
-64-bit driver binary (SPARC).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/sfe.conf\fR\fR
-.ad
-.sp .6
-.RS 4n
-Configuration file.
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBndd\fR(1M), \fBdriver.conf\fR(4), \fBattributes\fR(5), \fBstreamio\fR(7I),
-\fBdlpi\fR(7P)
-.sp
-.LP
-\fIIEEE 802.3\fR \(em Institute of Electrical and Electronics Engineers, 2002
diff --git a/usr/src/man/man7d/sfxge.7d b/usr/src/man/man7d/sfxge.7d
deleted file mode 100644
index ae375587f1..0000000000
--- a/usr/src/man/man7d/sfxge.7d
+++ /dev/null
@@ -1,52 +0,0 @@
-.\"
-.\" This file and its contents are supplied under the terms of the
-.\" Common Development and Distribution License ("CDDL"), version 1.0.
-.\" You may only use this file in accordance with the terms of version
-.\" 1.0 of the CDDL.
-.\"
-.\" A full copy of the text of the CDDL should have accompanied this
-.\" source. A copy of the CDDL is also available via the Internet at
-.\" http://www.illumos.org/license/CDDL.
-.\"
-.\"
-.\" Copyright 2016 Garrett D'Amore <garrett@damore.org>
-.\"
-.Dd Apr 11, 2016
-.Dt SFXGE 7D
-.Os
-.Sh NAME
-.Nm sfxge
-.Nd Solarflare Ethernet device driver
-.Sh SYNOPSIS
-.Pa /dev/sfxge
-.Sh DESCRIPTION
-The
-.Nm
-driver provides support for 10 and 40 Gbps Ethernet adapters
-based on the Solarflare SFC9000 family of controllers.
-.Lp
-These devices generally support the standard Ethernet features, including
-autonegotiation, VLANs, and hardware based flow control.
-The maximum frame size supported by these devices is 9202 bytes, including
-the tag, if present.
-.Lp
-The device driver supports the
-.Xr ieee802.3 5
-properties, which can be configured with
-.Xr dladm 1M .
-.Sh FILES
-.Bl -tag -width /dev/sfxge
-.It Pa /dev/sfxge
-Special character device.
-.El
-.
-.Sh SEE ALSO
-.Xr dladm 1M ,
-.Xr ifconfig 1M ,
-.Xr pci 4 ,
-.Xr ieee802.3 5 ,
-.Xr dlpi 7P
-.Rs
-.%T IEEE 802.3: Ethernet
-.%Q IEEE Standards Association
-.Re
diff --git a/usr/src/man/man7d/sgen.7d b/usr/src/man/man7d/sgen.7d
deleted file mode 100644
index dc2c9078f1..0000000000
--- a/usr/src/man/man7d/sgen.7d
+++ /dev/null
@@ -1,417 +0,0 @@
-'\" te
-.\" Copyright (c) 2008 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SGEN 7D "April 9, 2016"
-.SH NAME
-sgen \- Generic SCSI device driver
-.SH SYNOPSIS
-.LP
-.nf
-\fB#include <sys/scsi/targets/sgendef.h>\fR
-.fi
-
-.LP
-.nf
-\fBsgen@target,lun:<devtype>\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBsgen\fR driver exports the \fBuscsi\fR(7I) interfaces to user processes.
-The \fBsgen\fR driver can be configured to bind to \fBSCSI\fR devices for which
-no system driver is available. Examples of such devices include \fBSCSI\fR
-scanners and \fBSCSI\fR processor devices.
-.SH SECURITY
-.LP
-Typically, drivers which export the \fBuscsi\fR(7I) interface unconditionally
-require that the user present superuser credentials. The \fBsgen\fR driver does
-not, and relies on the filesystem permissions on its device special file to
-govern who may access that device. By default, access is restricted and device
-nodes created by the \fBsgen\fR driver are readable and writable by the
-superuser exclusively.
-.sp
-.LP
-It is important to understand that \fBSCSI\fR devices coexisting on the same
-\fBSCSI\fR bus may potentially interact with each other. This may result from
-firmware bugs in \fBSCSI\fR devices, or may be made to happen programmatically
-by sending appropriate \fBSCSI\fR commands to a device. Potentially, any
-application controlling a device via the \fBsgen\fR driver can introduce data
-integrity or security problems in that device or any other device sharing the
-same \fBSCSI\fR bus.
-.sp
-.LP
-Granting unprivileged users access to an \fBsgen\fR-controlled \fBSCSI\fR
-device may create other problems. It may be possible for a user to instruct a
-target device to gather data from another target device on the same bus. It may
-also be possible for malicious users to install new firmware onto a device to
-which they are granted access. In environments where security is a concern but
-user access to devices controlled by the \fBsgen\fR driver is nonetheless
-desired, it is recommended that the devices be separated onto a dedicated
-\fBSCSI\fR bus to mitigate the risk of data corruption and security violations.
-.SH CONFIGURATION
-.LP
-The \fBsgen\fR driver is configurable via the \fBsgen.conf\fR file. In addition
-to standard \fBSCSI\fR device configuration directives (see \fBscsi\fR(4)),
-administrators can set several additional properties for the \fBsgen\fR driver.
-.sp
-.LP
-By default, the \fBsgen\fR driver will not claim or bind to any devices on the
-system. To do so, it must be configured by the administrator using the
-\fBinquiry-config-list\fR and/or the \fBdevice-type-config-list\fR properties.
-.sp
-.LP
-As with other \fBSCSI\fR drivers, the \fBsgen.conf\fR configuration file
-enumerates the targets \fBsgen\fR should use. See \fBscsi\fR(4) for more
-details. For each target enumerated in the \fBsgen.conf\fR file, the
-\fBsgen\fR driver sends a \fBSCSI INQUIRY\fR command to gather information
-about the device present at that target. The \fBinquiry-config-list\fR property
-specifies that the \fBsgen\fR driver should bind to a particular device
-returning a particular set of inquiry data. The \fBdevice-type-config-list\fR
-specifies that the \fBsgen\fR driver should bind to every device that is of a
-particular \fBSCSI\fR device type. When examining the device, the \fBsgen\fR
-driver tests to see if it matches an entry in the \fBdevice-type-config-list\fR
-or the \fBinquiry-config-list\fR. For more detail on these two properties, see
-the PROPERTIES section.
-.sp
-.LP
-When a match against the \fBINQUIRY\fR data presented by a device is made, the
-\fBsgen\fR driver attaches to that device and creates a device node and link in
-the \fB/devices\fR and \fB/dev\fR hierarchies. See the FILES section for more
-information about how these files are named.
-.sp
-.LP
-It is important for the administrator to ensure that devices claimed by the
-\fBsgen\fR driver do not conflict with existing target drivers on the system.
-For example, if the \fBsgen\fR driver is configured to bind to a direct access
-device, the standard \fBsd.conf\fR file will usually cause \fBsd\fR to claim
-the device as well. This can cause unpredictable results. In general, the
-\fBuscsi\fR(7I) interface exported by \fBsd\fR(7D) or \fBst\fR(7D) should be
-used to gain access to direct access and sequential devices.
-.sp
-.LP
-The \fBsgen\fR driver is disabled by default. The \fBsgen.conf\fR file is
-shipped with all of the '\fBname="sgen" class="scsi" target=...\fR' entries
-commented out to shorten boot time and to prevent the driver from consuming
-kernel resources. To use the \fBsgen\fR driver effectively on desktop systems,
-simply uncomment all of the name="\fBsgen\fR" lines in \fBsgen.conf\fR file. On
-larger systems with many \fBSCSI\fR controllers, carefully edit the
-\fBsgen.conf\fR file so that \fBsgen\fR binds only where needed. Refer to
-\fBdriver.conf\fR(4) for further details.
-.SH PROPERTIES
-.ne 2
-.na
-\fB\fBinquiry-config-list\fR\fR
-.ad
-.RS 23n
-The \fBinquiry-config-list\fR property is a list of pairs of strings that
-enumerates a list of specific devices to which the \fBsgen\fR driver will bind.
-Each pair of strings is referred to as <\fBvendorid\fR, \fBproductid\fR> in the
-discussion below.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBvendorid\fR\fR
-.ad
-.RS 12n
- is used to match the Vendor ID reported by the device. The \fBSCSI\fR
-specification limits Vendor IDs to eight characters. Correspondingly, the
-length of this string should not exceed eight characters. As a special case,
-"\fB*\fR" may be used as a wildcard which matches any Vendor ID. This is useful
-in situations where more than one vendor produces a particular model of a
-product. \fBvendorid\fR is matched against the Vendor ID reported by the device
-in a case-insensitive manner.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBproductid\fR\fR
-.ad
-.RS 13n
- is used to match the product ID reported by the device. The \fBSCSI\fR
-specification limits product IDs to sixteen characters (unused characters are
-filled with the whitespace characters). Correspondingly, the length of
-\fBproductid\fR should not exceed sixteen characters. When examining the
-product ID of the device, \fBsgen\fR examines the length l of \fBproductid\fR
-and performs a match against only the first l characters in the device's
-product ID. \fBproductid\fR is matched against the product ID reported by the
-device in a case-insensitive manner.
-.RE
-
-.sp
-.LP
-For example, to match some fictitious devices from ACME corp, the
-\fBinquiry-config-list\fR can be configured as follows:
-.sp
-
-.sp
-.TS
-l l l
-l l l .
-\fBinquiry-config-list = \fR \fB"ACME"\fR, \fB"UltraToast 3000"\fR,
- \fB"ACME"\fR, \fB"UltraToast 4000"\fR,
- \fB"ACME"\fR, \fB"UltraToast 5000"\fR;
-.TE
-
-.sp
-.LP
-To match "UltraToast 4000" devices, regardless of vendor,
-\fBinquiry-config-list\fR is modified as follows:
-.sp
-
-.sp
-.TS
-l l l .
-\fBinquiry-config-list = \fR \fB"*",\fR \fB"UltraToast 4000"\fR;
-.TE
-
-.sp
-.LP
-To match every device from ACME in the "UltraToast" series (i.e UltraToast
-3000, 4000, 5000, ...), \fB inquiry-config-list\fR is modified as follows:
-.sp
-
-.sp
-.TS
-l l l .
-\fBinquiry-config-list = \fR \fB"ACME"\fR \fB "UltraToast";\fR
-.TE
-
-.sp
-.LP
-Whitespace characters \fBare\fR significant when specifying \fBproductid\fR.
-For example, a \fBproductid\fR of "UltraToast 1000" is fifteen characters in
-length. If a device reported its ID as "UltraToast 10000", the \fBsgen\fR
-driver would bind to it because only the first fifteen characters are
-considered significant when matching. To remedy this situation, specify
-\fBproductid\fR as "UltraToast 1000 ", (note trailing space). This forces the
-\fBsgen\fR driver to consider all sixteen characters in the product ID to be
-significant.
-.sp
-.ne 2
-.na
-\fB\fBdevice-type-config-list\fR\fR
-.ad
-.RS 27n
-The \fBdevice-type-config-list\fR property is a list of strings that enumerate
-a list of device types to which the \fBsgen\fR driver will bind. The valid
-device types correspond to those defined by the \fISCSI-3 SPC Draft Standard,
-Rev. 11a\fR. These types are:
-.RE
-
-.sp
-
-.sp
-.TS
-c | c
-l | l .
-Type Name Inquiry Type ID
-_
-direct 0x00
-sequential 0x01
-printer 0x02
-processor 0x03
-worm 0x04
-rodirect 0x05
-scanner 0x06
-optical 0x07
-changer 0x08
-comm 0x09
-prepress1 0x0a
-prepress2 0x0b
-array_ctrl 0x0c
-ses 0x0d
-rbc 0x0e
-ocrw 0x0f
-bridge 0x10
-type_unknown 0x1f
-.TE
-
-.sp
-.LP
-Alternately, you can specify device types by \fBINQUIRY\fR type ID. To do
-this, specify \fBtype_0x<typenum>\fR in the \fBsgen-config-list\fR. Case is not
-significant when specifying device type names.
-.sp
-.ne 2
-.na
-\fB\fBsgen-diag\fR\fR
-.ad
-.RS 13n
-The \fBsgen-diag\fR property sets the diagnostic output level. This property
-can be set globally and/or per target/lun pair. \fBsgen-diag\fR is an integer
-property, and can be set to 0, 1, 2 or 3. Illegal values will silently default
-to 0. The meaning of each diagnostic level is as follows:
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB0\fR\fR
-.ad
-.RS 5n
-No error reporting [default]
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB1\fR\fR
-.ad
-.RS 5n
-Report driver configuration information, unusual conditions, and indicate when
-sense data has been returned from the device.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB2\fR\fR
-.ad
-.RS 5n
-Trace the entry into and exit from routines inside the driver, and provide
-extended diagnostic data. No error reporting [default].
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB3\fR\fR
-.ad
-.RS 5n
-Provide detailed output about command characteristics, driver state, and the
-contents of each CDB passed to the driver.
-.RE
-
-.sp
-.LP
-In ascending order, each level includes the diagnostics that the previous level
-reports. See the IOCTLS section for more information on the \fBSGEN_IOC_DIAG\fR
-ioctl.
-.SH FILES
-.ne 2
-.na
-\fB\fBsgen.conf\fR\fR
-.ad
-.RS 30n
-Driver configuration file. See CONFIGURATION for more details.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/scsi/<devtype>/c\fIn\fRt\fIn\fRd\fIn\fR\fR\fR
-.ad
-.RS 30n
-The \fBsgen\fR driver categorizes each device in a separate directory by its
-\fBSCSI\fR device type. The files inside the directory are named according to
-their controller number, target ID and LUN as follows:
-.sp
-c\fIn\fR is the controller number, t\fIn\fR is the \fBSCSI\fR target id and
-d\fIn\fR is the \fBSCSI\fR LUN
-.sp
-This is analogous to the {\fBcontroller;target;device\fR} naming scheme, and
-the controller numbers correspond to the same controller numbers which are used
-for naming disks. For example, \fB/dev/dsk/c0t0d0s0\fR and
-\fB/dev/scsi/scanner/c0t5d0\fR are both connected to controller \fBc0\fR.
-.RE
-
-.SH IOCTLS
-.LP
-The \fBsgen\fR driver exports the \fBuscsi\fR(7I) interface for each device it
-manages. This allows a user process to talk directly to a \fBSCSI\fR device for
-which there is no other driver installed in the system. Additionally, the
-\fBsgen\fR driver supports the following ioctls:
-.sp
-.ne 2
-.na
-\fB\fBSGEN_IOC_READY\fR\fR
-.ad
-.RS 18n
-Send a \fBTEST UNIT READY\fR command to the device and return 0 upon success,
-non-zero upon failure. This ioctl accepts no arguments.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSGEN_IOC_DIAG\fR\fR
-.ad
-.RS 18n
-Change the level of diagnostic reporting provided by the driver. This ioctl
-accepts a single integer argument between 0 and 3. The levels have the same
-meaning as in the \fBsgen-diag\fR property discussed in PROPERTIES above.
-.RE
-
-.SH ERRORS
-.ne 2
-.na
-\fB\fBEBUSY\fR\fR
-.ad
-.RS 10n
-The device was opened by another thread or process using the O_EXCL flag, or
-the device is currently open and O_EXCL is being requested.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBENXIO\fR\fR
-.ad
-.RS 10n
-During opening, the device did not respond to a \fBTEST UNIT READY\fR
-\fBSCSI\fR command.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBENOTTY\fR\fR
-.ad
-.RS 10n
-Indicates that the device does not support the requested ioctl function.
-.RE
-
-.SH EXAMPLES
-.LP
-Here is an example of how \fBsgen\fR can be configured to bind to scanner
-devices on the system:
-.sp
-.LP
-\fBdevice-type-config-list = "scanner";\fR
-.sp
-.LP
-The administrator should subsequently uncomment the appropriate
-\fBname="sgen"...\fR lines for the \fBSCSI\fR target ID to which the scanner
-corresponds. In this example, the scanner is at target 4.
-.sp
-.LP
-\fBname= "sgen" class= "scsi" target=4 lun=0;\fR
-.sp
-.LP
-If it is expected that the scanner will be moved from target to target over
-time, or that more scanners might be added in the future, it is recommended
-that all of the \fBname="sgen"...\fR lines be uncommented, so that \fBsgen\fR
-checks all of the targets on the bus.
-.sp
-.LP
-For large systems where boot times are a concern, it is recommended that the
-\fBparent=""\fR property be used to specify which \fBSCSI\fR bus \fBsgen\fR
-should examine.
-.SH SEE ALSO
-.LP
-\fBdriver.conf\fR(4), \fBscsi\fR(4), \fBsd\fR(7D), \fBst\fR(7D),
-\fBuscsi\fR(7I)
-.sp
-.LP
-\fIWriting Device Drivers\fR
-.sp
-.LP
-\fIANSI Small Computer System Interface-2 (SCSI-2) \fR
-.sp
-.LP
-\fISCSI-3 SPC Draft Standard, Rev. 11a\fR
diff --git a/usr/src/man/man7d/si3124.7d b/usr/src/man/man7d/si3124.7d
deleted file mode 100644
index 6205e21618..0000000000
--- a/usr/src/man/man7d/si3124.7d
+++ /dev/null
@@ -1,69 +0,0 @@
-'\" te
-.\" Copyright (c) 2007 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SI3124 7D "Aug 17, 2007"
-.SH NAME
-si3124 \- SiliconImage 3124/3132/3531 SATA controller driver
-.SH SYNOPSIS
-.LP
-.nf
-\fBsata@unit-address\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBsi3124\fR driver is a \fBSATA\fR framework-compliant HBA driver that
-supports Silicon Image 3124, 3132 and 3531 \fBSATA\fR controllers. Note that while
-the Silicon Image controllers supports standard \fBSATA\fR features including
-SATA-II disks, NCQ, hotplug, port multiplier and ATAPI disks, the \fBsi3124\fR
-driver currently does not support NCQ, port multiplier or ATAPI features.
-.SH CONFIGURATION
-.sp
-.LP
-There are no tunable parameters in the \fBsi3124.conf\fR file.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/si3124\fR\fR
-.ad
-.RS 28n
-32-bit ELF kernel module (x86).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/si3124\fR\fR
-.ad
-.RS 28n
-64-bit ELF kernel module. (x86).
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture x86
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBcfgadm\fR(1M), \fBprtconf\fR(1M), \fBcfgadm_sata\fR(1M),
-\fBattributes\fR(5), \fBnv_sata\fR(7D), \fBsata\fR(7D)
-.sp
-.LP
-\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man7d/skd.7d b/usr/src/man/man7d/skd.7d
deleted file mode 100644
index 4d9488674f..0000000000
--- a/usr/src/man/man7d/skd.7d
+++ /dev/null
@@ -1,25 +0,0 @@
-.\"
-.\" This file and its contents are supplied under the terms of the
-.\" Common Development and Distribution License ("CDDL"), version 1.0.
-.\" You may only use this file in accordance with the terms of version
-.\" 1.0 of the CDDL.
-.\"
-.\" A full copy of the text of the CDDL should have accompanied this
-.\" source. A copy of the CDDL is also available via the Internet at
-.\" http://www.illumos.org/license/CDDL.
-.\"
-.\"
-.\" Copyright 2014 Nexenta Systems, Inc. All rights reserved.
-.\"
-
-.TH SKD 7D "August 10, 2013"
-.SH NAME
-skd \- sTec S112x PCIe Solid-State Disk driver
-.SH DESCRIPTION
-.LP
-The \fBskd\fR driver uses the \fBblkdev\fR framework to provide a solid-state
-disk in \fB/dev/dsk/cNt0d0*\fR from the sTec S112x series of PCIe cards.
-.LP
-The skd.conf file, in \fB/kernel/drv/skd.conf\fR, contains configuration
-parameters for the driver, and are documented there. They are considered an
-unstable interface, subject to change without notice.
diff --git a/usr/src/man/man7d/smbios.7d b/usr/src/man/man7d/smbios.7d
deleted file mode 100644
index b38a90b70b..0000000000
--- a/usr/src/man/man7d/smbios.7d
+++ /dev/null
@@ -1,66 +0,0 @@
-'\" te
-.\" Copyright (c) 2005, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SMBIOS 7D "Aug 26, 2005"
-.SH NAME
-smbios \- System Management BIOS image
-.SH SYNOPSIS
-.LP
-.nf
-\fB/dev/smbios\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBsmbios\fR device is a character special file that provides access to a
-snapshot of the System Management BIOS (\fBSMBIOS\fR) image exported by the
-current system. \fBSMBIOS\fR is an industry-standard mechanism that enables
-low-level system software to export hardware configuration information to
-higher-level system management software. The \fBSMBIOS\fR data format is
-defined by the Distributed Management Task Force (\fBDMTF\fR). For more
-information on \fBSMBIOS\fR and to obtain a copy of the \fBSMBIOS\fR
-specification and implementation guidelines, refer to
-http://\fIwww.dmtf.org\fR.
-.sp
-.LP
-The \fBSMBIOS\fR image consists of a table of structures, each describing some
-aspect of the system software or hardware configuration. The content of the
-image varies widely by platform and BIOS vendor and may not exist on some
-systems. You can use the \fBsmbios\fR(1M) utility to inspect the contents of
-the \fBSMBIOS\fR image and copy it to a file.
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for a description of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Stable
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBprtdiag\fR(1M), \fBsmbios\fR(1M), \fBattributes\fR(5)
-.sp
-.LP
-\fISystem Management BIOS Reference Specification\fR, Version 2, Release 4 \(em
-2005
-.SH NOTES
-.sp
-.LP
-The implementation of a System Management BIOS image is entirely at the
-discretion of the system and BIOS vendors. Not all systems export a
-\fBSMBIOS\fR. The \fBSMBIOS\fR structure content varies widely between systems
-and BIOS vendors and frequently does not comply with the guidelines included in
-the specification. For example, some structure fields may not be filled in by
-the BIOS, while others may be filled in with non-conforming values.
diff --git a/usr/src/man/man7d/smbus.7d b/usr/src/man/man7d/smbus.7d
deleted file mode 100644
index cbeb16a8c4..0000000000
--- a/usr/src/man/man7d/smbus.7d
+++ /dev/null
@@ -1,61 +0,0 @@
-'\" te
-.\" Copyright 2003 Sun Microsystems, Inc. All rights reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SMBUS 7D "Jul 23, 2003"
-.SH NAME
-smbus \- System Management Bus controller driver
-.SH DESCRIPTION
-.sp
-.LP
-The \fBsmbus\fR driver is a I2C (Inter IC) nexus driver that allows the system
-to communicate with various system component chips. SMBus is a two-wire
-control bus based on the I2C protocol through which systems can communicate
-with various I2C devices connected to the bus.
-.sp
-.LP
-The \fBsmbus\fR driver supports byte and block level transfer based on
-interrupt and polled mode.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/platform/sun4u/kernel/drv/sparcv9/smbus\fR \fR
-.ad
-.sp .6
-.RS 4n
-64 bit ELF kernel module
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture SPARC
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBattributes\fR(5)
-.sp
-.LP
-\fIWriting Device Drivers\fR
-.sp
-.LP
-\fISystem Management Bus (SMBus) Specification 2.0\fR \(em SBS Implementation
-Forum
-.sp
-.LP
-\fIThe I2C Bus and How To Use It\fR \(emPhilips Semiconductor Document #
-98-8080-575-01
diff --git a/usr/src/man/man7d/smntemp.7d b/usr/src/man/man7d/smntemp.7d
deleted file mode 100644
index 903d060825..0000000000
--- a/usr/src/man/man7d/smntemp.7d
+++ /dev/null
@@ -1,56 +0,0 @@
-.\"
-.\" This file and its contents are supplied under the terms of the
-.\" Common Development and Distribution License ("CDDL"), version 1.0.
-.\" You may only use this file in accordance with the terms of version
-.\" 1.0 of the CDDL.
-.\"
-.\" A full copy of the text of the CDDL should have accompanied this
-.\" source. A copy of the CDDL is also available via the Internet at
-.\" http://www.illumos.org/license/CDDL.
-.\"
-.\"
-.\" Copyright 2019, Joyent, Inc.
-.\" Copyright 2020 Oxide Computer Company
-.\"
-.Dd September 1, 2020
-.Dt SMNTEMP 7D
-.Os
-.Sh NAME
-.Nm smntemp
-.Nd AMD SMN Temperature Sensor Driver
-.Sh SYNOPSIS
-.Pa /dev/sensors/temperature/cpu/*
-.Sh DESCRIPTION
-The
-.Nm
-driver provides the system access to the temperature sensor found in the
-AMD System Management Network
-.Pq SMN
-on AMD Family 17h
-.Pq Zen, Zen+, and Zen 2
-processors.
-.Pp
-From this, the driver exposes temperature sensors.
-On Family 17h systems, temperature sensors exist for each Zeppelin die,
-of which there may be multiple in a single package.
-This means that each sensor covers more than one core.
-.Pp
-Temperature information is available to the system via the fault
-management architecture
-.Pq FMA .
-The file system location and programming interface to the
-.Nm
-driver are considered
-.Sy Volatile ,
-subject to change without notice, and should not be used directly.
-Raw temperature information can be dumped through the FMA developer
-utility fmtopo.
-.Sh SEE ALSO
-.Xr fmadm 1M ,
-.Xr amdnbtemp 7D ,
-.Xr amdzen 7D
-.Rs
-.%A AMD
-.%B Open-Source Register Reference For AMD Family 17h Processors Models 00h-2Fh
-.%D July, 2018
-.Re
diff --git a/usr/src/man/man7d/socal.7d b/usr/src/man/man7d/socal.7d
deleted file mode 100644
index 9a00167866..0000000000
--- a/usr/src/man/man7d/socal.7d
+++ /dev/null
@@ -1,225 +0,0 @@
-'\" te
-.\" Copyright (c) 1997, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SOCAL 7D "May 9, 1997"
-.SH NAME
-socal \- Serial Optical Controller for Fibre Channel Arbitrated Loop (SOC+)
-device driver
-.SH SYNOPSIS
-.LP
-.nf
-\fBsocal@\fIsbus-slot\fR,0\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The Fibre Channel Host Bus Adapter is an SBus card which implements two full
-duplex Fibre Channel interfaces. Each Fibre Channel interface can connect to a
-Fibre Channel Arbitrated Loop (FC-AL).
-.sp
-.LP
-The \fBsocal\fR device driver is a nexus driver and implements portions of the
-FC-2 and FC-4 layers of FC-AL.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/socal\fR\fR
-.ad
-.RS 21n
-ELF Kernel Module
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture SPARC
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBsbus\fR(4), \fBsf\fR(7D), \fBssd\fR(7D)
-.sp
-.LP
-\fIWriting Device Drivers\fR
-.sp
-.LP
-\fIANSI X3.230-1994, Fibre Channel Physical and Signalling Interface (FC-PH)\fR
-.sp
-.LP
-\fIANSI X3.272-1996, Fibre Channel Arbitrated Loop (FC-AL)\fR
-.sp
-.LP
-\fIFibre Channel Private Loop SCSI Direct Attach (FC-PLDA)\fR
-.SH DIAGNOSTICS
-.sp
-.LP
-The messages described below may appear on system console in addition to being
-logged.
-.sp
-.LP
-On the console, these messages are preceded by:
-.sp
-.in +2
-.nf
-\fBsocal\fR\fI%d\fR\fB: port \fR\fI%a\fR
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-where \fI%d\fR is the instance number of the \fBsocal\fR controller and
-\fI%a\fR is the port on the host adapter.
-.sp
-.ne 2
-.na
-\fBFibre Channel Loop is ONLINE\fR
-.ad
-.sp .6
-.RS 4n
-The Fibre Channel loop is now online.
-.RE
-
-.sp
-.ne 2
-.na
-\fBFibre Channel Loop is OFFLINE\fR
-.ad
-.sp .6
-.RS 4n
-The Fibre Channel loop is now offline.
-.RE
-
-.sp
-.ne 2
-.na
-\fBattach failed: device in slave-only slot.\fR
-.ad
-.sp .6
-.RS 4n
-Move soc+ card to another slot.
-.RE
-
-.sp
-.ne 2
-.na
-\fBattach failed: bad soft state.\fR
-.ad
-.sp .6
-.RS 4n
-Driver did not attach, devices will be inaccessible.
-.RE
-
-.sp
-.ne 2
-.na
-\fBattach failed: unable to alloc xport struct.\fR
-.ad
-.sp .6
-.RS 4n
-Driver did not attach, devices will be inaccessible.
-.RE
-
-.sp
-.ne 2
-.na
-\fBattach failed: unable to map eeprom\fR
-.ad
-.sp .6
-.RS 4n
-Driver was unable to map device memory; check for bad hardware. Driver did not
-attach to device, devices will be inaccessible.
-.RE
-
-.sp
-.ne 2
-.na
-\fBattach failed: unable to map XRAM\fR
-.ad
-.sp .6
-.RS 4n
-Driver was unable to map device memory; check for bad hardware. Driver did
-not attach to device, devices will be inaccessible.
-.RE
-
-.sp
-.ne 2
-.na
-\fBattach failed: unable to map registers\fR
-.ad
-.sp .6
-.RS 4n
-Driver was unable to map device registers; check for bad hardware. Driver did
-not attach to device, devices will be inaccessible.
-.RE
-
-.sp
-.ne 2
-.na
-\fBattach failed: unable to access status register\fR
-.ad
-.sp .6
-.RS 4n
-Driver was unable to map device registers; check for bad hardware. Driver did
-not attach to device, devices will be inaccessible.
-.RE
-
-.sp
-.ne 2
-.na
-\fBattach failed: unable to install interrupt handler\fR
-.ad
-.sp .6
-.RS 4n
-Driver was not able to add the interrupt routine to the kernel. Driver did
-not attach to device, devices will be inaccessible.
-.RE
-
-.sp
-.ne 2
-.na
-\fBattach failed: unable to access host adapter XRAM\fR
-.ad
-.sp .6
-.RS 4n
-Driver was unable to access device RAM; check for bad hardware. Driver did
-not attach to device, devices will be inaccessible.
-.RE
-
-.sp
-.ne 2
-.na
-\fBattach failed: unable to write host adapter XRAM\fR
-.ad
-.sp .6
-.RS 4n
-Driver was unable to write device RAM; check for bad hardware. Driver did not
-attach to device, devices will be inaccessible.
-.RE
-
-.sp
-.ne 2
-.na
-\fBattach failed: read/write mismatch in XRAM\fR
-.ad
-.sp .6
-.RS 4n
-Driver was unable to verify device RAM; check for bad hardware. Driver did
-not attach to device, devices will be inaccessible.
-.RE
-
diff --git a/usr/src/man/man7d/srpt.7d b/usr/src/man/man7d/srpt.7d
deleted file mode 100644
index ee9917112c..0000000000
--- a/usr/src/man/man7d/srpt.7d
+++ /dev/null
@@ -1,88 +0,0 @@
-'\" te
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SRPT 7D "May 21, 2009"
-.SH NAME
-srpt \- SCSI RDMA Protocol Target Driver for Infiniband (IB)
-.SH DESCRIPTION
-.sp
-.LP
-The \fBsrpt\fR kernel pseudo device driver is an IB Architecture-compliant
-implementation of the target side of the SCSI RDMA Protocol (SRP). SRP
-accelerates the SCSI protocol by mapping SCSI data transfer phases to RDMA
-operations using InfiniBand as the underlying transport.
-.sp
-.LP
-SRP target services are enabled and disabled through \fBsmf\fR(5), using the
-FMRI \fBsvc:/system/ibsrp/target\fR.
-.sp
-.LP
-When enabled, \fBsrpt\fR enumerates each IB Host Channel Adapter (HCA) on the
-system and registers each one as a SCSI target using the SCSI Target Mode
-Framework (STMF).
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/srpt\fR\fR
-.ad
-.RS 28n
-32-bit x86 ELF kernel module
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/srpt\fR\fR
-.ad
-.RS 28n
-64-bit x86 ELF kernel module
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/sparcv9/srpt\fR\fR
-.ad
-.RS 28n
-64-bit SPARC ELF kernel module
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/srpt.conf\fR\fR
-.ad
-.RS 28n
-Driver configuration file
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for a description of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-l | l
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture x86
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBstmfadm\fR(1M), \fBib\fR(7D), \fBibdma\fR(7D), \fBibtl\fR(7D),
-\fBattributes\fR(5)
-.sp
-.LP
-\fICOMSTAR Administration Guide\fR
-.sp
-.LP
-\fISCSI RDMA Protocol (SRP) T10 Project 1415-D, Revision\fR
diff --git a/usr/src/man/man7d/ssd.7d b/usr/src/man/man7d/ssd.7d
deleted file mode 100644
index 97e959b598..0000000000
--- a/usr/src/man/man7d/ssd.7d
+++ /dev/null
@@ -1,591 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SSD 7D "September 12, 2020"
-.SH NAME
-ssd \- Fibre Channel Arbitrated Loop disk device driver
-.SH SYNOPSIS
-.nf
-\fBssd@\fR\fIport\fR\fB,\fR\fItarget\fR\fB:\fR\fIpartition\fR
-.fi
-
-.SH DESCRIPTION
- The \fBssd\fR driver supports Fibre Channel disk devices.
-.sp
-.LP
-The specific type of each disk is determined by the \fBSCSI\fR inquiry command
-and reading the volume label stored on block 0 of the drive. The volume label
-describes the disk geometry and partitioning; it must be present or the disk
-cannot be mounted by the system.
-.sp
-.LP
-The block-files access the disk using the system's normal buffering mechanism
-and are read and written without regard to physical disk records. A "raw"
-interface provides for direct transmission between the disk and the read or
-write buffer. A single read or write call usually results in one I/O operation;
-raw I/O is therefore more efficient when many bytes are transmitted. Block file
-names are found in \fB/dev/dsk\fR; the names of the raw files are found in
-\fB/dev/rdsk\fR.
-.sp
-.LP
-I/O requests (such as \fBlseek\fR(2)) to the \fBSCSI\fR disk must have an
-offset that is a multiple of 512 bytes (\fBDEV_BSIZE\fR), or the driver returns
-an \fBEINVAL\fR error. If the transfer length is not a multiple of 512 bytes,
-the transfer count is rounded up by the driver.
-.sp
-.LP
-Partition 0 is normally used for the root file system on a disk, with partition
-1 as a paging area (for example, \fBswap\fR). Partition 2 is used to back up
-the entire disk. Partition 2 normally maps the entire disk and may also be used
-as the mount point for secondary disks in the system. The rest of the disk is
-normally partition 6. For the primary disk, the user file system is located
-here.
-.sp
-.LP
-The device has associated error statistics. These must include counters for
-hard errors, soft errors and transport errors. Other data may be implemented as
-required.
-.SH DEVICE STATISTICS SUPPORT
-The device maintains I/O statistics for the device and for partitions allocated
-for that device. For each device/partition, the driver accumulates reads,
-writes, bytes read, and bytes written. The driver also initiates hi-resolution
-time stamps at queue entry and exit points to enable monitoring of residence
-time and cumulative residence-length product for each queue.
-.sp
-.LP
-Not all device drivers make per-partition IO statistics available for
-reporting. \fBssd\fR and \fBsd\fR(7D) per-partition statistics are enabled by
-default but may be disabled in their configuration files.
-.SH IOCTLS
-Refer to \fBdkio\fR(7I).
-.SH ERRORS
-.ne 2
-.na
-\fB\fBEACCES\fR\fR
-.ad
-.RS 10n
-Permission denied.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEBUSY\fR\fR
-.ad
-.RS 10n
-The partition was opened exclusively by another thread.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEFAULT\fR\fR
-.ad
-.RS 10n
-The argument was a bad address.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEINVAL\fR\fR
-.ad
-.RS 10n
-Invalid argument.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEIO\fR\fR
-.ad
-.RS 10n
-An I/O error occurred.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBENOTTY\fR\fR
-.ad
-.RS 10n
-The device does not support the requested ioctl function.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBENXIO\fR\fR
-.ad
-.RS 10n
-When returned during \fBopen\fR(2), this error indicates the device does not
-exist.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEROFS\fR\fR
-.ad
-.RS 10n
-The device is a read-only device.
-.RE
-
-.SH CONFIGURATION
-You configure the \fBssd\fR driver by defining properties in the
-\fBssd.conf\fR file. The \fBssd\fR driver supports the following properties:
-.sp
-.ne 2
-.na
-\fB\fBenable-partition-kstats\fR\fR
-.ad
-.RS 27n
-The default value is 1, which causes partition IO statistics to be maintained.
-Set this value to zero to prevent the driver from recording partition
-statistics. This slightly reduces the CPU overhead for IO, minimizes the amount
-of \fBsar\fR(1) data collected and makes these statistics unavailable for
-reporting by \fBiostat\fR(1M) even though the \fB-p\fR/\fB-P\fR option is
-specified. Regardless of this setting, disk IO statistics are always
-maintained.
-.RE
-
-.sp
-.LP
-In addition to the above properties, some device-specific tunables can be
-configured in \fBssd.conf\fR using the 'ssd-config-list' global property. The
-value of this property is a list of duplets. The formal syntax is:
-.sp
-.in +2
-.nf
-ssd-config-list = <duplet> [, <duplet> ]* ;
-
-where
-
-<duplet>:= "<vid+pid>" , "<tunable-list>"
-
-and
-
-<tunable-list>:= <tunable> [, <tunable> ]*;
-<tunable> = <name> : <value>
-
-The <vid+pid> is the string that is returned by the target device
-on a SCSI inquiry command.
-
-The <tunable-list> contains one or more tunables to apply to
-all target devices with the specified <vid+pid>.
-
-Each <tunable> is a <name> : <value> pair. Supported
-tunable names are:
-
- delay-busy: when busy, nsecs of delay before retry.
-
- retries-timeout: retries to perform on an IO timeout.
-.fi
-.in -2
-
-.SH EXAMPLES
-.in +2
-.nf
-The following is an example of a global ssd-config-list property:
-
- ssd-config-list =
- "SUN T4", "delay-busy:600, retries-timeout:6",
- "SUN StorEdge_3510", "retries-timeout:3";
-.fi
-.in -2
-
-.SH FILES
-.ne 2
-.na
-\fBssd.conf\fR
-.ad
-.RS 22n
-Driver configuration file
-.RE
-
-.sp
-.ne 2
-.na
-\fB/dev/dsk/c\fIn\fR\fBt\fR\fIn\fR\fBd\fR\fIn\fR\fBs\fR\fIn\fR\fR
-.ad
-.RS 22n
-block files
-.RE
-
-.sp
-.ne 2
-.na
-\fB/dev/rdsk/c\fIn\fR\fBt\fR\fIn\fR\fBd\fR\fIn\fR\fBs\fR\fIn\fR\fR
-.ad
-.RS 22n
-raw files
-.RE
-
-.sp
-.ne 2
-.na
-\fBc\fIn\fR\fR
-.ad
-.RS 22n
-is the controller number on the system.
-.RE
-
-.sp
-.ne 2
-.na
-\fBt\fIn\fR\fR
-.ad
-.RS 22n
-7-bit disk loop identifier, such as switch setting
-.RE
-
-.sp
-.ne 2
-.na
-\fBd\fIn\fR\fR
-.ad
-.RS 22n
-SCSI lun \fIn\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBs\fR\fIn\fR\fR
-.ad
-.RS 22n
-partition \fIn\fR (0-7)
-.RE
-
-.SH SEE ALSO
-\fBsar\fR(1), \fBformat\fR(1M), \fBiostat\fR(1M), \fBioctl\fR(2),
-\fBlseek\fR(2), \fBopen\fR(2), \fBread\fR(2), \fBwrite\fR(2),
-\fBscsi\fR(4), \fBdriver.conf\fR(4), \fBcdio\fR(7I), \fBdkio\fR(7I)
-.sp
-.LP
-\fIANSI Small Computer System Interface-2 (SCSI-2)\fR
-.sp
-.LP
-\fIANSI X3.272-1996, Fibre Channel Arbitrated Loop (FC-AL)\fR
-.sp
-.LP
-\fIFibre Channel - Private Loop SCSI Direct Attach (FC-PLDA)\fR
-.SH DIAGNOSTICS
-.in +2
-.nf
-Error for command '<command name>' Error Level: Fatal Requested Block <n>,
-Error Block: <m>, Sense Key: <sense key name>, Vendor '<vendor name>':
-ASC = 0x<a> (<ASC name>), ASCQ = 0x<b>, FRU = 0x<c>
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The command indicated by <command name> failed. The Requested Block is the
-block where the transfer started and the Error Block is the block that caused
-the error. Sense Key, ASC, and ASCQ information is returned by the target in
-response to a request sense command.
-.sp
-.in +2
-.nf
-Check Condition on REQUEST SENSE
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-A REQUEST SENSE command completed with a check condition. The original command
-will be retried a number of times.
-.sp
-.in +2
-.nf
-Label says <m> blocks Drive says <\fIn\fR> blocks
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-There is a discrepancy between the label and what the drive returned on the
-READ CAPACITY command.
-.sp
-.in +2
-.nf
-Not enough sense information
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The request sense data was less than expected.
-.sp
-.in +2
-.nf
-Request Sense couldn't get sense data
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The REQUEST SENSE command did not transfer any data.
-.sp
-.in +2
-.nf
-Reservation Conflict
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The drive was reserved by another initiator.
-.sp
-.in +2
-.nf
-SCSI transport failed: reason 'xxxx' : {retrying|giving up}
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The host adapter has failed to transport a command to the target for the
-reason stated. The driver will either retry the command or, ultimately, give
-up.
-.sp
-.in +2
-.nf
-Unhandled Sense Key <\fIn\fR>
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The REQUEST SENSE data included an invalid sense key.
-.sp
-.in +2
-.nf
-Unit not Ready. Additional sense code 0x<\fIn\fR>
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The drive is not ready.
-.sp
-.in +2
-.nf
-corrupt label - bad geometry
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The disk label is corrupted.
-.sp
-.in +2
-.nf
-corrupt label - label checksum failed
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The disk label is corrupted.
-.sp
-.in +2
-.nf
-corrupt label - wrong magic number
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The disk label is corrupted.
-.sp
-.in +2
-.nf
-device busy too long
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The drive returned busy during a number of retries.
-.sp
-.in +2
-.nf
-disk not responding to selection
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The drive was probably powered down or died.
-.sp
-.in +2
-.nf
-i/o to invalid geometry
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The geometry of the drive could not be established.
-.sp
-.in +2
-.nf
-incomplete read/write - retrying/giving up
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-There was a residue after the command completed normally.
-.sp
-.in +2
-.nf
-logical unit not ready
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The drive is not ready.
-.sp
-.in +2
-.nf
-no bp for disk label
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-A bp with consistent memory could not be allocated.
-.sp
-.in +2
-.nf
-no mem for property
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Free memory pool exhausted.
-.sp
-.in +2
-.nf
-no memory for disk label
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Free memory pool exhausted.
-.sp
-.in +2
-.nf
-no resources for dumping
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-A packet could not be allocated during dumping.
-.sp
-.in +2
-.nf
-offline
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Drive went offline; probably powered down.
-.sp
-.in +2
-.nf
-requeue of command fails<\fIn\fR>
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Driver attempted to retry a command and experienced a transport error.
-.sp
-.in +2
-.nf
-ssdrestart transport failed <\fIn\fR>
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Driver attempted to retry a command and experienced a transport error.
-.sp
-.in +2
-.nf
-transfer length not modulo <\fIn\fR>
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Illegal request size.
-.sp
-.in +2
-.nf
-transport rejected <\fIn\fR>
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Host adapter driver was unable to accept a command.
-.sp
-.in +2
-.nf
-unable to read label
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Failure to read disk label.
-.sp
-.in +2
-.nf
-unit does not respond to selection
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Drive went offline; probably powered down.
diff --git a/usr/src/man/man7d/st.7d b/usr/src/man/man7d/st.7d
deleted file mode 100644
index 6d5734d97c..0000000000
--- a/usr/src/man/man7d/st.7d
+++ /dev/null
@@ -1,1397 +0,0 @@
-'\" te
-.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH ST 7D "April 9, 2016"
-.SH NAME
-st \- driver for SCSI tape devices
-.SH SYNOPSIS
-.LP
-.nf
-\fBst@\fR\fItarget\fR\fB,\fR\fIlun\fR\fB:\fR\fIl\fR\fB,\fR\fIm\fR\fB,\fR\fIh\fR\fB,\fR\fIc\fR\fB,\fR\fIu\fR\fIb\fR\fIn\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBst\fR device driver provides a standard interface to various \fBSCSI\fR
-tape devices. See \fBmtio\fR(7I) for details.
-.sp
-.LP
-To determine if the \fBst\fR device driver supports your tape device, SPARC
-users should enter the following on a command line:
-.sp
-.in +2
-.nf
-% strings /kernel/drv/sparcv9/st | grep -i <tape device name>
-.fi
-.in -2
-
-.sp
-.LP
-x86 users can do the following to determine if the \fBst\fR device driver
-supports a particular tape device:
-.sp
-.in +2
-.nf
-% strings /kernel/drv/st | grep -i <tape device name>
-.fi
-.in -2
-
-.sp
-.LP
-The driver can be opened with either rewind on close or no rewind on close
-options. It can also be opened with the \fBO_NDELAY\fR (see \fBopen\fR(2))
-option when there is no tape inserted in the drive. A maximum of four tape
-formats per device are supported (see \fBFILES\fR below). The tape format is
-specified using the device name. (Tape format is also referred to as tape
-density).
-.sp
-.LP
-Following are a list of SCSI commands that can be executed while another host
-reserves the tape drive. The commands are:
-.sp
-.in +2
-.nf
-SCMD_TEST_UNIT_READY
-SCMD_REQUEST_SENSE
-SCMD_READ_BLKLIM
-SCMD_INQUIRY
-SCMD_RESERVE
-SCMD_RELEASE
-SCMD_DOORLOCK
-SCMD_REPORT_DENSITIES
-SCMD_LOG_SENSE_G1
-SCMD_PERSISTENT_RESERVE_IN
-SCMD_PERSISTENT_RESERVE_OUT
-SCMD_REPORT_LUNS
-.fi
-.in -2
-
-.sp
-.LP
-In multi-initiator environments, the driver will not reserve the tape drive if
-above commands are issued. For other SCSI commands, the driver reserves the
-tape drive and releases the drive at close if it has been reserved. Refer to
-the MTIOCRESERVE and MTIOCRELEASE ioctls in \fBmtio\fR(7I) for information
-about how to allow a tape drive to remain reserved upon close. See the flag
-options below for information about disabling this feature.
-.sp
-.LP
-If a SCSI-3 persistent reservation is done through the driver, the driver
-disables all existing SCSI-2 reservations.
-.sp
-.LP
-If the tape drive is opened in O_NDELAY mode, no reservation occurs during the
-open, as per the POSIX standard (see \fBstandards\fR(5)). However, if a command
-not found in the above list is used, a reservation will occur to provide
-reserve/release functionality before the command is issued.
-.SS "Persistent Errors and Asynchronous Tape Operation"
-.LP
-The \fBst\fR driver now supports persistent errors (see \fBmtio\fR(7I) and
-asynchronous tape operations (see \fBmtio\fR(7I), \fBaioread\fR(3C), and
-\fBaiowrite\fR(3C)).
-.SS "Read Operation"
-.LP
-If the driver is opened for reading in a different format than the tape is
-written in, the driver overrides the user-selected format. For example, if a
-1/4" cartridge tape is written in QIC-24 format and opened for reading in
-QIC-150, the driver detects a read failure on the first read and automatically
-switches to QIC-24 to read the data.
-.sp
-.LP
-Note that if the low density format is used, no indication is given that the
-driver has overridden the format you selected. Other formats issue a warning
-message to inform you of an overridden format selection. Some devices
-automatically perform this function and do not require driver support (1/2"
-reel tape drive, for example).
-.SS "Write Operation"
-.LP
-Writing from the beginning of tape is performed in the user-specified format.
-The original tape format is used for appending onto previously written tapes.
-.SS "Tape Configuration"
-.LP
-The \fBst\fR driver has a built-in configuration table for most Sun-supported
-tape drives. For those tape drives that are not in the table, the \fBst\fR
-driver tries to read the configuration from the tape drive through optional
-SCSI-3 commands. To support the addition of third party tape devices which are
-not in the built-in configuration table or not able to report their
-configuration, device information can be supplied in \fBst.conf\fR as global
-properties that apply to each node, or as properties that are applicable to one
-node only. By supplying the information in \fBst.conf\fR, the built-in
-configuration is overridden and the \fBst\fR driver will not query the
-configuration from tape drives. The \fBst\fR driver looks for the property
-called \fBtape-config-list\fR. The value of this property is a list of
-triplets, where each triplet consists of three strings.
-.sp
-.LP
-The formal syntax is:
-.sp
-.in +2
-.nf
-tape-config-list = <triplet> [, <triplet> *];
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-where
-.sp
-.in +2
-.nf
-<triplet> := <vid+pid>, <pretty print>, <data-property-name>
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-and
-.sp
-.in +2
-.nf
-<data-property-name> = <version>, <type>, <bsize>,
- <options>, <number of densities>,
- <density> [, <density>*], <default-density>;
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-or
-.sp
-.in +2
-.nf
-<data-property-name> = <version 2>, <type>, <bsize>,
- <options>, <number of densities>,
- <density> [, <density>*], <default-density>,
- <non-motion time-out>, <I/O time-out>,
- <rewind time-out>, <space time-out>,
- <load time-out>, <unload time-out>,
- <erase time-out>;
-.fi
-.in -2
-.sp
-
-.sp
-.in +2
-.nf
-
-.fi
-.in -2
-
-.sp
-.LP
-A semicolon (\fB;\fR) is used to terminate a prototype devinfo node
-specification. Individual elements listed within the specification should not
-be separated by a semicolon. (Refer to \fBdriver.conf\fR(4) for more
-information.)
-.sp
-.LP
-\fB<vid+pid>\fR is the string that is returned by the tape device on a
-\fBSCSI\fR inquiry command. This string may contain any character in the range
-\fB0x20-0x7e\fR. Characters such as " " " (double quote) or " ' " (single
-quote), which are not permitted in property value strings, are represented by
-their octal equivalent (for example, \fB\e042\fR and \fB\e047\fR). Trailing
-spaces may be truncated.
-.sp
-.LP
-\fB<pretty print>\fR is used to report the device on the console. This string
-may have zero length, in which case the \fB<vid+pid>\fR will be used to report
-the device.
-.sp
-.LP
-\fB<data-property-name>\fR is the name of the property which contains all the
-tape configuration values (such as \fB<type>\fR, \fB<bsize>\fR, etc.)
-corresponding for the tape drive for the specified \fB<vid+pid>\fR\&.
-.sp
-.LP
-\fB<version>\fR is a version number and should be 1 or 2. In the future, higher
-version numbers may be used to allow for changes in the syntax of the
-\fB<data-property-name>\fR value list.
-.sp
-.LP
-\fB<type>\fR is a type field. Valid types are defined in
-\fB/usr/include/sys/mtio.h\fR. For third party tape configuration, the
-following generic types are recommended:
-.sp
-
-.sp
-.TS
-l l
-l l .
-\fBMT_ISQIC\fR 0x32
-\fBMT_ISREEL\fR 0x33
-\fBMT_ISDAT\fR 0x34
-\fBMT_IS8MM\fR 0x35
-\fBMT_ISOTHER\fR 0x36
-\fBMT_ISTAND25G\fR 0x37
-\fBMT_ISDLT\fR 0x38
-\fBMT_ISSTK9840\fR 0x39
-\fBMT_ISBMDLT1\fR 0x3A
-\fBMT_LTO\fR 0x3B
-.TE
-
-.sp
-.LP
-\fB<bsize>\fR is the preferred block size of the tape device. The value should
-be \fB0\fR for variable block size devices.
-.sp
-.LP
-\fB<options>\fR is a bit pattern representing the devices, as defined in
-\fB/usr/include/sys/scsi/targets/stdef.h\fR. Valid flags for tape configuration
-are shown in the following table. Note that this table does not list flags that
-are non-configurable in \fBst.conf\fR (including \fBST_KNOWS_MEDIA\fR which
-uses the media type reported from the mode select data to select the correct
-density code).
-.sp
-
-.sp
-.TS
-l l
-l l .
-\fBST_VARIABLE\fR 0x0001
-\fBST_QIC\fR 0x0002
-\fBST_REEL\fR 0x0004
-\fBST_BSF\fR 0x0008
-\fBST_BSR\fR 0x0010
-\fBST_LONG_ERASE\fR 0x0020
-\fBST_AUTODEN_OVERRIDE\fR 0x0040
-\fBST_NOBUF\fR 0x0080
-\fBST_KNOWS_EOD\fR 0x0200
-\fBST_UNLOADABLE\fR 0x0400
-\fBST_SOFT_ERROR_REPORTING\fR 0x0800
-\fBST_LONG_TIMEOUTS\fR 0x1000
-\fBST_NO_RECSIZE_LIMIT\fR 0x8000
-\fBST_MODE_SEL_COMP\fR 0x10000
-\fBST_NO_RESERVE_RELEASE\fR 0x20000
-\fBST_READ_IGNORE_ILI\fR 0x40000
-\fBST_READ_IGNORE_EOFS\fR 0x80000
-\fBST_SHORT_FILEMARKS\fR 0x100000
-\fBST_EJECT_TAPE_ON_CHANGER_FAILURE\fR 0x200000
-\fBST_RETRY_ON_RECOVERED_DEFERRED_ERROR\fR 0x400000
-\fBST_WORMABLE\fR 0x1000000
-.TE
-
-.sp
-.ne 2
-.na
-\fB\fBST_VARIABLE\fR\fR
-.ad
-.sp .6
-.RS 4n
-The flag indicates the tape device supports variable length record sizes.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBST_QIC\fR\fR
-.ad
-.sp .6
-.RS 4n
-The flag indicates a Quarter Inch Cartridge (QIC) tape device.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBST_REEL\fR\fR
-.ad
-.sp .6
-.RS 4n
-The flag indicates a 1/2\(miinch reel tape device.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBST_BSF\fR\fR
-.ad
-.sp .6
-.RS 4n
-If flag is set, the device supports backspace over EOF marks (bsf - see
-\fBmt\fR(1)).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBST_BSR\fR\fR
-.ad
-.sp .6
-.RS 4n
-If flag is set, the tape device supports the backspace record operation (bsr -
-see \fBmt\fR(1)). If the device does not support bsr, the \fBst\fR driver
-emulates the action by rewinding the tape and using the forward space record
-(fsf) operation to forward the tape to the correct file. The driver then uses
-forward space record (fsr - see \fBmt\fR(1)) to forward the tape to the correct
-record.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBST_LONG_ERASE\fR\fR
-.ad
-.sp .6
-.RS 4n
-The flag indicates the tape device needs a longer time than normal to erase.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBST_AUTODEN_OVERRIDE\fR\fR
-.ad
-.sp .6
-.RS 4n
-The auto-density override flag. The device is capable of determining the tape
-density automatically without issuing a "mode-select"/"mode-sense command."
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBST_NOBUF\fR\fR
-.ad
-.sp .6
-.RS 4n
-The flag disables the device's ability to perform buffered writes. A buffered
-write occurs when the device acknowledges the completion of a write request
-after the data has been written to the device's buffer, but before all of the
-data has been written to the tape.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBST_KNOWS_EOD\fR\fR
-.ad
-.sp .6
-.RS 4n
-If flag is set, the device can determine when EOD (End of Data) has been
-reached. When this flag is set, the \fBst\fR driver uses fast file skipping.
-Otherwise, file skipping happens one file at a time.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBST_UNLOADABLE\fR\fR
-.ad
-.sp .6
-.RS 4n
-The flag indicates the device will not complain if the \fBst\fR driver is
-unloaded and loaded again (see \fBmodload\fR(1M) and \fBmodunload\fR(1M)). That
-is, the driver will return the correct inquiry string.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBST_SOFT_ERROR_REPORTING\fR\fR
-.ad
-.sp .6
-.RS 4n
-The flag indicates the tape device will perform a "request sense" or "log
-sense" command when the device is closed. Currently, only Exabyte and \fBDAT\fR
-drives support this feature.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBST_LONG_TIMEOUTS\fR\fR
-.ad
-.sp .6
-.RS 4n
-The flag indicates the tape device requires timeouts that are five times longer
-than usual for normal operation.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBST_NO_RECSIZE_LIMIT\fR \fR
-.ad
-.sp .6
-.RS 4n
-The flag applies to variable-length tape devices. If this flag is set, the
-record size is not limited to a 64 Kbyte record size. The record size is only
-limited by the smaller of either the record size supported by the device or the
-maximum DMA transfer size of the system. (Refer to \fBLarge Record Sizes\fR and
-\fBWARNINGS\fR.) The maximum block size that will not be broken into smaller
-blocks can be determined from the mt_bf returned from the MTIOCGET ioctl().
-This number is the lesser of the upper block limit returned by the drive from
-READ BLOCK LIMITS command and the dma-max property set by the Host Bus Adapter
-(HBA) to which the drive is attached.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBST_MODE_SEL_COMP\fR\fR
-.ad
-.sp .6
-.RS 4n
-If the \fBST_MODE_SEL_COMP\fR flag is set, the driver determines which of the
-two mode pages the device supports for selecting or deselecting compression. It
-first tries the Data Compression mode page (\fB0x0F\fR); if this fails, it
-tries the Device Configuration mode page (\fB0x10\fR). Some devices, however,
-may need a specific density code for selecting or deselecting compression.
-Please refer to the device specific \fBSCSI\fR manual. When the flag is set,
-compression is enabled only if the "c" or "u" device is used. Note that when
-the lower 2 densities of a drive are identically configured and the upper 2
-densities are identically configured, but the lower and upper differ from each
-other and ST_MODE_SEL_COMP is set, the "m" node sets compression \fBon\fR for
-the lower density code (for example, 0x42) and the "c" and "u" nodes set
-compression \fBon\fR for the higher density (for example, 0x43). For any other
-device densities, compression is disabled.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBST_NO_RESERVE_RELEASE\fR\fR
-.ad
-.sp .6
-.RS 4n
-The \fBST_NO_RESERVE_RELEASE\fR flag disables the use of reserve on open and
-release on close. If an attempt to use a ioctl of \fBMTRESERVE\fR or
-\fBMTRELEASE\fR on a drive with this flag set, it will return an error of
-\fBENOTTY\fR (inappropriate ioctl for device).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBST_READ_IGNORE_ILI\fR\fR
-.ad
-.sp .6
-.RS 4n
-The \fBST_READ_IGNORE_ILI\fR flag is applicable only to variable block devices
-which support the SILI bit option. The \fBST_READ_IGNORE_ILI\fR flag indicates
-that SILI (suppress incorrect length indicator) bit will be set during reads.
-When this flag is set, short reads (requested read size is less than the record
-size on the tape) will be successful and the number of bytes transferred will
-be equal to the record size on the tape. The tape will be positioned at the
-start of the next record skipping over the extra data (the remaining data has
-been has been lost). Long reads (requested read size is more than the record
-size on the tape) will see a large performance gain when this flag is set, due
-to overhead reduction. When this flag is not set, short reads will return an
-error of \fBENOMEM\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBST_READ_IGNORE_EOFS\fR\fR
-.ad
-.sp .6
-.RS 4n
-The \fBST_READ_IGNORE_EOFS\fR flag is applicable only to 1/2" Reel Tape drives
-and when performing consecutive reads only. It should not be used for any other
-tape command. Usually End-of-recorded-media (EOM) is indicated by two EOF marks
-on 1/2" tape and application cannot read past EOM. When this flag is set, two
-EOF marks no longer indicate EOM allowing applications to read past two EOF
-marks. In this case it is the responsibility of the application to detect
-end-of-recorded-media (EOM). When this flag is set, tape operations (like
-MTEOM) which positions the tape at end-of-recorded-media will fail since
-detection of end-of-recorded-media (EOM) is to be handled by the application.
-This flag should be used when backup applications have embedded double
-filemarks between files.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBST_SHORT_FILEMARKS\fR\fR
-.ad
-.sp .6
-.RS 4n
-The \fBST_SHORT_FILEMARKS\fR flag is applicable only to EXABYTE 8mm tape drives
-which supports short filemarks. When this flag is set, short filemarks is used
-for writing filemarks. Short filemarks could lead to tape incompatible with
-some otherwise compatible device. By default long filemarks will be used for
-writing filemarks.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBST_EJECT_TAPE_ON_CHANGER_FAILURE\fR\fR
-.ad
-.sp .6
-.RS 4n
-If \fBST_EJECT_TAPE_ON_CHANGER_FAILURE\fR flag is set, the tape is ejected
-automatically if the tape cartridge is trapped in the medium due to positioning
-problems of the medium changer.
-.sp
-The following ASC/ASCQ keys are defined to the reasons for causing tape
-ejection if \fBST_EJECT_TAPE_ON_CHANGER_FAILURE\fR option is set to 0x200000:
-.sp
-Sense ASC/ASCQ Description
-.sp
-Key
-.sp
-4 15/01 Mechanical Failure
-.sp
-4 44/00 Internal Target Failure
-.sp
-2 53/00 Media Load or Eject Failed
-.sp
-4 53/00 Media Load or Eject Failed
-.sp
-4 53/01 Unload Tape Failure
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBST_RETRY_ON_RECOVERED_DEFERRED_ERROR\fR\fR
-.ad
-.sp .6
-.RS 4n
-If \fBST_RETRY_ON_RECOVERED_DEFERRED_ERROR\fR flag is set, the \fBst\fR driver
-will retry the last write if this cmd caused a check condition with error code
-0x71 and sense code 0x01. Some tape drives, notably the IBM 3090, require this
-option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBST_WORMABLE\fR\fR
-.ad
-.sp .6
-.RS 4n
-When \fBST_WORMABLE\fR is set, \fBst\fR attempts to detect the presence of WORM
-media in the device.
-.RE
-
-.sp
-.LP
-\fB<number of densities>\fR is the number of densities specified. Each tape
-drive can support up to four densities. The value entered should therefore be
-between \fB1\fR and \fB4\fR; if less than \fB4\fR, the remaining densities will
-be assigned a value of \fB0x0\fR.
-.sp
-.LP
-\fB<density>\fR is a single-byte hexadecimal number. It can either be found in
-the device specification manual or be obtained from the device vendor.
-.sp
-.LP
-\fB<default-density>\fR has a value between \fB0\fR and (<number of densities>
-- \fB1\fR).
-.sp
-.LP
-\fB<non-motion time-out>\fR Time in seconds that the drive should be able to
-perform any SCSI command that doesn't require tape to be moved. This includes
-mode sense, mode select, reserve, release, read block limits, and test unit
-ready.
-.sp
-.LP
-\fB<I/O time-out>\fR Time in seconds to perform data transfer I/O to or from
-tape including worst case error recovery.
-.sp
-.LP
-\fB<rewind time-out>\fR Time in seconds to rewind from anywhere on tape to BOT
-including worst case recovery forcing buffered write data to tape.
-.sp
-.LP
-\fB<space time-out>\fR Time in seconds to space to any file, block or end of
-data on tape. Including worst case when any form of cataloging is invalid.
-.sp
-.LP
-\fB<load time-out>\fR Time in seconds to load tape and be ready to transfer
-first block. This should include worst case recovery reading tape catalog or
-drive specific operations done at load.
-.sp
-.LP
-\fB<unload time-out>\fR Time in seconds to unload tape. Should include worst
-case time to write to catalog, unthread, and tape cartridge unloading. Also
-should include worst case time for any drive specific operations that are
-preformed at unload. Should not include rewind time as the driver rewinds tape
-before issuing the unload.
-.sp
-.LP
-\fB<erase time-out>\fR Time in seconds to preform a full (BOT to EOT) erase of
-longest medium with worst case error recovery.
-.SS "Device Statistics Support"
-.LP
-Each device maintains I/O statistics both for the device and for each partition
-allocated on that device. For each device/partition, the driver accumulates
-reads, writes, bytes read, and bytes written. The driver also takes
-hi-resolution time stamps at queue entry and exit points, which facilitates
-monitoring the residence time and cumulative residence-length product for each
-queue.
-.sp
-.LP
-Each device also has error statistics associated with it. These must include
-counters for hard errors, soft errors and transport errors. Other data may be
-implemented as required.
-.SH IOCTLS
-.LP
-The behavior of \fBSCSI\fR tape positioning ioctls is the same across all
-devices which support them. (Refer to \fBmtio\fR(7I).) However, not all devices
-support all ioctls. The driver returns an \fBENOTTY\fR error on unsupported
-ioctls.
-.sp
-.LP
-The retension ioctl only applies to 1/4" cartridge tape devices. It is used to
-restore tape tension, thus improving the tape's soft error rate after extensive
-start-stop operations or long-term storage.
-.sp
-.LP
-In order to increase performance of variable-length tape devices (particularly
-when they are used to read/write small record sizes), two operations in the
-\fBMTIOCTOP\fR ioctl, \fBMTSRSZ\fR and \fBMTGRSZ\fR, can be used to set and get
-fixed record lengths. The ioctl also works with fixed-length tape drives which
-allow multiple record sizes. The min/max limits of record size allowed on a
-driver are found by using a SCSI-2 \fBREAD\fR \fBBLOCK\fR \fBLIMITS\fR command
-to the device. If this command fails, the default min/max record sizes allowed
-are 1 byte and 63k bytes. An application that needs to use a different record
-size opens the device, sets the size with the \fBMTSRSZ\fR ioctl, and then
-continues with I/O. The scope of the change in record size remains until the
-device is closed. The next open to the device resets the record size to the
-default record size (retrieved from \fBst.conf\fR).
-.sp
-.LP
-Note that the error status is reset by the \fBMTIOCGET\fR get status ioctl call
-or by the next read, write, or other ioctl operation. If no error has occurred
-(sense key is \fB0\fR), the current file and record position is returned.
-.SH ERRORS
-.ne 2
-.na
-\fB\fBEACCES\fR\fR
-.ad
-.RS 10n
-The driver is opened for write access and the tape is write-protected or the
-tape unit is reserved by another host.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEBUSY\fR\fR
-.ad
-.RS 10n
-The tape drive is in use by another process. Only one process can use the tape
-drive at a time. The driver will allow a grace period for the other process to
-finish before reporting this error.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEINVAL\fR\fR
-.ad
-.RS 10n
-The number of bytes read or written is not a multiple of the physical record
-size (fixed-length tape devices only).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEIO\fR\fR
-.ad
-.RS 10n
-During opening, the tape device is not ready because either no tape is in the
-drive, or the drive is not on-line. Once open, this error is returned if the
-requested I/O transfer could not be completed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBENOTTY\fR\fR
-.ad
-.RS 10n
-This indicates that the tape device does not support the requested ioctl
-function.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBENXIO\fR\fR
-.ad
-.RS 10n
-During opening, the tape device does not exist.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBENOMEM\fR\fR
-.ad
-.RS 10n
-This indicates that the record size on the tape drive is more than the
-requested size during read operation.
-.RE
-
-.SH EXAMPLES
-.LP
-\fBExample 1 \fRGlobal tape-config list property
-.sp
-.LP
-The following is an example of a global \fBtape-config-list\fR property:
-
-.sp
-.in +2
-.nf
-tape-config-list =
-"Magic DAT", "Magic 4mm Helical Scan", "magic-data",
-"Major Appliance", "Major Appliance Tape", "major-tape";
-
-
-magic-data = 1,0x34,1024,0x1639,4,0,0x8c,0x8c,0x8c,3;
-major-tape = 2,0x3c,0,0x18619,4,0x0,0x0,0x0,0x0,
- 3,0,0,30,120,0,0,36000;
-
-name="st" class="scsi"
- target=0 lun=0;
-name="st" class="scsi"
- target=1 lun=0;
-name="st" class="scsi"
- target=2 lun=0;
- .
- .
- .
-name="st" class="scsi"
- target=6 lun=0;
-.fi
-.in -2
-
-.LP
-\fBExample 2 \fRTape-config-list property applicable to target 2 only
-.sp
-.LP
-The following is an example of a tape-config-list property applicable to target
-2 only:
-
-.sp
-.in +2
-.nf
-name="st" class="scsi"
- target=0 lun=0;
-name="st" class="scsi"
- target=1 lun=0;
-name="st" class="scsi"
- target=2 lun=0
- tape-config-list =
- "Magic DAT", "Magic 4mm Helical Scan", "magic-data"
- magic-data = 1,0x34,1024,0x1639,4,0,0x8c,0x8c,0x8c,3;
-name="st" class="scsi"
- target=3 lun=0;
- .
- .
- .
-name="st" class="scsi"
- target=6 lun=0;
-.fi
-.in -2
-
-.SS "Large Record Sizes"
-.LP
-To support applications such as seismic programs that require large record
-sizes, the flag \fBST_NO_RECSIZE_LIMIT\fR must be set in drive option in the
-configuration entry. A SCSI tape drive that needs to transfer large records
-should \fBOR\fR this flag with other flags in the 'options' field in
-\fBst.conf\fR. (Refer to \fBTape Configuration\fR.) By default, this flag is
-set for the built-in config entries of Archive \fBDAT\fR and Exabyte drives.
-.sp
-.LP
-If this flag is set, the \fBst\fR driver issues a SCSI-2 \fBREAD\fR \fBBLOCK\fR
-\fBLIMITS\fR command to the device to determine the maximum record size allowed
-by it. If the command fails, \fBst\fR continues to use the maximum record sizes
-mentioned in the \fBmtio\fR(7I) man page.
-.sp
-.LP
-If the command succeeds, \fBst\fR restricts the maximum transfer size of a
-variable-length device to the minimum of that record size and the maximum
-\fBDMA\fR size that the host adapter can handle. Fixed-length devices are bound
-by the maximum \fBDMA\fR size allocated by the machine. Note that tapes created
-with a large record size may not be readable by earlier releases or on other
-platforms.
-.sp
-.LP
-(Refer to the \fBWARNINGS\fR section for more information.)
-.SS "EOT Handling"
-.LP
-The Emulex drives have only a physical end of tape (PEOT); thus it is not
-possible to write past EOT. All other drives have a logical end of tape
-(\fBLEOT\fR) before \fBPEOT\fR to guarantee flushing the data onto the tape.
-The amount of storage between \fBLEOT\fR and \fBPEOT\fR varies from less than 1
-Mbyte to about 20 Mbyte, depending on the tape drive.
-.sp
-.LP
-If \fBEOT\fR is encountered while writing an Emulex, no error is reported but
-the number of bytes transferred is \fB0\fR and no further writing is allowed.
-On all other drives, the first write that encounters \fBEOT\fR will return a
-short count or \fB0\fR. If a short count is returned, then the next write will
-return \fB0\fR. After a zero count is returned, the next write returns a full
-count or short count. A following write returns \fB0\fR again. It is important
-that the number and size of trailer records be kept as small as possible to
-prevent data loss. Therefore, writing after \fBEOT\fR is not recommended.
-.sp
-.LP
-Reading past \fBEOT\fR is transparent to the user. Reading is stopped only by
-reading EOF's. For 1/2" reel devices, it is possible to read off the end of the
-reel if one reads past the two file marks which mark the end of recorded media.
-.SH FILES
-.ne 2
-.na
-\fB\fB/kernel/drv/st.conf\fR\fR
-.ad
-.sp .6
-.RS 4n
-driver configuration file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/include/sys/mtio.h\fR\fR
-.ad
-.sp .6
-.RS 4n
-structures and definitions for mag tape io control commands
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/include/sys/scsi/targets/stdef.h\fR\fR
-.ad
-.sp .6
-.RS 4n
-definitions for \fBSCSI\fR tape drives
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/rmt/[0\(mi 127][l,m,h,u,c][b][n]\fR\fR
-.ad
-.sp .6
-.RS 4n
-where \fBl,m,h,u,c\fR specifies the density (low, medium, high,
-ultra/compressed), \fBb\fR the optional BSD behavior (see \fBmtio\fR(7I)), and
-\fBn\fR the optional no rewind behavior. For example, \fB/dev/rmt/0lbn\fR
-specifies unit 0, low density, BSD behavior, and no rewind.
-.sp
-For 1/2" reel tape devices (HP-88780), the densities are:
-.sp
-
-.sp
-.TS
-l l
-l l .
-\fBl\fR 800 BPI density
-\fBm\fR 1600 BPI density
-\fBh\fR 6250 BPI density
-\fBc\fR data compression
-\fB \fR (not supported on all modules)
-.TE
-
-For 8mm tape devices (Exabyte 8200/8500/8505):
-.sp
-
-.sp
-.TS
-l l
-l l .
-\fBl\fR Standard 2 Gbyte format
-\fBm\fR 5 Gbyte format (8500, 8505 only)
-\fBh,c\fR 5 Gbyte compressed format (8505 only)
-.TE
-
-For 4mm \fBDAT\fR tape devices (Archive Python):
-.sp
-
-.sp
-.TS
-l l
-l l .
-\fBl\fR Standard format
-\fBm,h,c\fR data compression
-.TE
-
-For all QIC (other than QIC-24) tape devices:
-.sp
-
-.sp
-.TS
-l l
-l l .
-\fBl,m,h,c\fR density of the tape cartridge type
- (not all devices can read and
- write all formats)
-.TE
-
-For QIC-24 tape devices (Emulex MT\(mi02):
-.sp
-
-.sp
-.TS
-l l
-l l .
-\fBl\fR QIC-11 Format
-\fBm,h,c\fR QIC-24 Format
-.TE
-
-.RE
-
-.SH SEE ALSO
-.LP
-\fBmt\fR(1), \fBmodload\fR(1M), \fBmodunload\fR(1M), \fBopen\fR(2),
-\fBread\fR(2), \fBwrite\fR(2), \fBaioread\fR(3C), \fBaiowrite\fR(3C),
-\fBkstat\fR(3KSTAT), \fBdriver.conf\fR(4), \fBscsi\fR(4), \fBstandards\fR(5),
-\fBesp\fR(7D), \fBisp\fR(7D), \fBmtio\fR(7I), \fBioctl\fR(9E)
-.SH DIAGNOSTICS
-.LP
-The \fBst\fR driver diagnostics may be printed to the console or messages file.
-.sp
-.LP
-Each diagnostic is dependent on the value of the system variable
-\fBst_error_level\fR. \fBst_error_level\fR may be set in the \fB/etc/system\fR
-file. The default setting for \fBst_error_level\fR is 4 (SCSI_ERR_RETRYABLE)
-which is suitable for most configurations since only actual fault diagnostics
-are printed. Settings range from values 0 (SCSI_ERR_ALL) which is most verbose,
-to 6 (SCSI_ERR_NONE) which is least verbose. See \fBstdef.h\fR for the full
-list of error-levels. SCSI_ERR_ALL level the amount of diagnostic information
-is likely to be excessive and unnecessary.
-.sp
-.LP
-The st driver diagnostics are described below:
-.sp
-.in +2
-.nf
-Error for Command: <scsi_cmd_name()> Error Level:<error_class>
-Requested Block: <blkno> Error Block: <err_blkno>
-Vendor: <name>: Serial Number: <inq_serial>
-Sense Key: <es_key> ASC: 0x<es_add_code> (scsi_asc_ascq_name()>), ASCQ:
-0x<es_qual_code>, FRU: 0x<ex_fru_code>
-.fi
-.in -2
-
-.sp
-.LP
-where <error_class> may be any one of the following: "All," "Unknown,"
-"Informational," "Recovered," "Retryable," "Fatal"
-.sp
-.LP
-The command indicated by <scsi_cmd_name> failed. Requested Block represents the
-block where the transfer started. Error Block represents the block that caused
-the error. Sense Key, ASC, ASCQ and FRU information is returned by the target
-in response to a request sense command. See SCSI protocol documentation for
-description of Sense Key, ASC, ASCQ, FRU.
-.sp
-.LP
-The st driver attempts to validate entries in the \fBst.conf\fR file. Each
-field in the entry is checked for upper and lower limits and invalid bits set.
-The fields are named as follows in config string order:
-.sp
-.in +2
-.nf
- conf version
- drive type
- block size
- options
- number of densities
- density code
- default density
- non motion timeout
- I/O timeout
- space timeout
- load timeout
- unload timeout
- erase timeout
-.fi
-.in -2
-
-.sp
-.LP
-The \fBst.conf\fR diagnostics are described below:
-.sp
-.in +2
-.nf
-<con-name> <field-in-err> <problem-with-field>
-.fi
-.in -2
-
-.sp
-.LP
-where <con-name> is the name of the config string. Where <field-in-err> is the
-field containing invalid entries and where <problem-with-field> describes the
-nature of the invalid entry.
-.sp
-.in +2
-.nf
-Write/read: not modulo <n> block size
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The request size for fixed record size devices must be a multiple of the
-specified block size.
-.sp
-.in +2
-.nf
-Recovery by resets failed
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-After a transport error, the driver attempted to recover by issuing a device
-reset and then a bus reset if device reset failed. These recoveries failed.
-.sp
-.in +2
-.nf
-Periodic head cleaning required
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The driver reported that periodic head cleaning is now required. This
-diagnostic is generated either due to a threshold number of retries, or due to
-the device communicating to the driver that head cleaning is required.
-.sp
-.in +2
-.nf
-Soft error rate (<n>%) during writing/reading was too high
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The soft error rate has exceeded the threshold specified by the vendor.
-.sp
-.in +2
-.nf
-SCSI transport failed: reason 'xxxx': {retrying|giving up}
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The Host Bus Adapter (HBA) has failed to transport a command to the target for
-the reason stated. The driver will either retry the command or, ultimately,
-give up.
-.sp
-.in +2
-.nf
-Tape not inserted in drive
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-A media access command was attempted while there was no tape inserted into the
-specified drive. In this case, the drive returns sense key of DRIVE NOT READY.
-.sp
-.in +2
-.nf
-Transport rejected
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The Host Bus Adapter (HBA) driver is not accepting commands after failing to
-successfully transport a scsi packet to the target. The actual status received
-by the \fBst\fR driver from the underlying HBA driver was either
-TRAN_FATAL_ERROR or TRAN_BADPKT.
-.sp
-.in +2
-.nf
-Retrying command
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The \fBst\fR driver failed to complete a command. However the command is
-retryable and will be retried.
-.sp
-.in +2
-.nf
-Giving up
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The \fBst\fR driver has exhausted retries or otherwise is unable to retry the
-command and so is giving up.
-.sp
-.in +2
-.nf
-No target struct for st%d
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The \fBst\fR driver failed to obtain state information because the requested
-state structure was not allocated. The specified device was probably not
-attached.
-.sp
-.in +2
-.nf
-File mark detected
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The operation detected an end of file mark. (File marks signify the end of a
-file on the tape media).
-.sp
-.in +2
-.nf
-End-of-media detected
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The operation reached the end of the tape media.
-.sp
-.in +2
-.nf
-Exabyte soft error reporting failed. DAT soft error reporting failed
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The \fBst\fR driver was unable to determine if the soft error threshold had
-been exceeded because it did not successfully read the data it requires or did
-not obtain enough data. This data is retrieved using the log sense command.
-.sp
-.in +2
-.nf
-Log sense parameter code does not make sense
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The log sense command retrieves hardware statistics that are stored on the
-drive (for example, soft error counts and retries.) If the data retrieved from
-the drive is invalid, this message is printed and the data is not used.
-.sp
-.in +2
-.nf
-Restoring tape position at fileno=%x, blkno=%lx....
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The \fBst\fR driver is positioning to the specified file and block. This occurs
-on an open.
-.sp
-.in +2
-.nf
-Failed to restore the last <file/block> position:
-In this state, tape will be loaded at BOT during next open
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The \fBst\fR driver could not position to the specified location and will
-revert to the beginning of the tape when the next open is attempted.
-.sp
-.in +2
-.nf
-Device does not support compression
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The compression facility of the device was requested. However the device does
-not have a hardware compression capability.
-.sp
-.in +2
-.nf
-DAT soft error reset failed
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-After DAT soft error reporting, the counters within the device that accumulate
-this sense data need to be re-set. This operation failed.
-.sp
-.in +2
-.nf
-Errors after pkt alloc (b_flags=0x%x, b_error=0x%x)
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Memory allocation for a \fBscsi\fR packet failed.
-.sp
-.in +2
-.nf
-Incorrect length indicator set
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The drive reported the length of data requested in a READ operation, was
-incorrect. Incorrect Length Indicator (ILI) is a very commonly used facility in
-SCSI tape protocol and should not be seen as an error per-se. Applications
-typically probe a new tape with a read of any length, using the returned length
-to the read system call for future reads. Along with this operation, an
-underlying ILI error is received. ILI errors are therefore informational only
-and are masked at the default \fBst_error_level\fR.
-.sp
-.in +2
-.nf
-Data property (%s) has no value
-Data property (%s) incomplete
-Version # for data property (%s) greater than 1
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-These diagnostics indicate problems in retrieving the values of the various
-property settings. The \fBst\fR driver is in the process of setting the
-property/parameter values for the tape drive using information from either the
-built-in table within the driver or from uncommented entries in the
-\fBst.conf\fR file. The effect on the system may be that the tape drive may be
-set with default or generic driver settings which may not be appropriate for
-the actual type of tape drive being used.
-.sp
-.in +2
-.nf
-st_attach-RESUME: tape failure tape position will be lost
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-On a resume after a power management suspend, the previously known tape
-position is no longer valid. This can occur if the tape was changed while the
-system was in power management suspend. The operation will not be retried.
-.sp
-.in +2
-.nf
-Write Data Buffering has been deprecated. Your applications should
-continue to work normally. However, they should be ported to use
-Asynchronous I/O.
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Indicates that buffering has been removed from Solaris.
-.sp
-.in +2
-.nf
-Cannot detach: fileno=%x, blkno=%lx
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The \fBst\fR driver cannot unload because the tape is not positioned at BOT
-(beginning of tape). May indicate hardware problems with the tape drive.
-.sp
-.in +2
-.nf
-Variable record length I/O
-Fixed record length (%d byte blocks) I/O
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Tape-drives can use either Fixed or Variable record length. If the drive uses
-Fixed length records, then the built in property table or the st.conf file will
-contain a non-zero record-length property. Most DAT, Exabyte and DLT drives
-support Variable record lengths. Many QIC format tape drives have historically
-been of Fixed record length.
-.sp
-.in +2
-.nf
-Command will be retried
- un_ncmds: %d can't retry cmd
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-These diagnostics are only seen with tape drives with the
-ST_RETRY_ON_RECOVERED_DEFERRED_ERROR bit set. See \fBstdef.h\fR for explanation
-of the specific usage of this setting.
-.SH WARNINGS
-.LP
-Effective with Solaris 2.4, the \fBST_NO_RECSIZE_LIMIT\fR flag is set for the
-built-in config entries of the Archive \fBDAT\fR and Exabyte drivers by
-default. (Refer to \fBLarge Record Sizes\fR.) Tapes written with large block
-sizes prior to Solaris 2.4 may cause some applications to fail if the number of
-bytes returned by a read request is less than the requested block size (for
-example, asking for 128 Kbytes and receiving less than 64 Kbytes).
-.sp
-.LP
-The \fBST_NO_RECSIZE_LIMIT\fR flag can be disabled in the config entry for the
-device as a work-around. (Refer to \fBTape Configuration\fR.) This action
-disables the ability to read and write with large block sizes and allows the
-reading of tapes written prior to Solaris 2.4 with large block sizes.
-.sp
-.LP
-(Refer to \fBmtio\fR(7I) for a description of maximum record sizes.)
-.SH BUGS
-.LP
-Tape devices that do not return a \fBBUSY\fR status during tape loading prevent
-user commands from being held until the device is ready. The user must delay
-issuing any tape operations until the tape device is ready. This is not a
-problem for tape devices supplied by Sun Microsystems.
-.sp
-.LP
-Tape devices that do not report a blank check error at the end of recorded
-media may cause file positioning operations to fail. Some tape drives, for
-example, mistakenly report media error instead of blank check error.
diff --git a/usr/src/man/man7d/su.7d b/usr/src/man/man7d/su.7d
deleted file mode 100644
index 564c7e96a0..0000000000
--- a/usr/src/man/man7d/su.7d
+++ /dev/null
@@ -1,231 +0,0 @@
-'\" te
-.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SU 7D "April 9, 2016"
-.SH NAME
-su \- asynchronous serial port driver
-.SH SYNOPSIS
-.LP
-.nf
-#include <fcntl.h>
-#include <sys/termios.h>
-open("/dev/tty\fI[a-z]\fR", _\fImode\fR);
-open("/dev/term\fI[a-z]\fR", _\fImode\fR);
-open("/dev/cua\fI[a-z]\fR", _\fImode\fR);
-.fi
-
-.LP
-.nf
-
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBsu\fR module is a loadable STREAMS driver that provides basic support
-for standard \fBUARTS\fR that use Intel-8250, National
-Semiconductor-16450/16550 hardware and Southbridge 1535D (16550 compatible)
-Super I/O hardware. The module also provides keyboard and mouse I/O support for
-Sun machines using those same Intel, National Semiconductor and Southbridge
-chipsets. The \fBsu\fR driver provides basic asynchronous communication support
-for serial ports. Both the serial devices and keyboard/mouse devices will have
-streams built with appropriate modules pushed atop the \fBsu\fR driver by
-means of either the \fBautopush\fR(1M) or \fBdacf.conf\fR(4) facilities,
-depending on the OS revision and architecture in use.
-.sp
-.LP
-The \fBsu\fR module supports those \fBtermio\fR(7I) device control functions
-specified by flags in the \fBc_cflag\fR word of the \fBtermios\fR structure,
-and by the \fBIGNBRK,\fR \fBIGNPAR,\fR \fBPARMRK,\fR or \fBINPCK\fR flags in
-the \fBc_iflag\fR word of the \fBtermios\fR structure. All other
-\fBtermio\fR(7I) functions must be performed by \fBSTREAMS\fR modules pushed
-atop the driver. When a device is opened, the \fBldterm\fR(7M) and
-\fBttcompat\fR(7M) \fBSTREAMS\fR modules are automatically pushed on top of the
-stream, providing the standard \fBtermio\fR(7I) interface.
-.sp
-.LP
-The character-special devices \fB/dev/ttya\fR and \fB/dev/ttyb\fR are used to
-access the two standard serial ports. The \fBsu\fR module supports up to ten
-serial ports, including the standard ports. The \fBtty\fR\fI[a-z]\fR devices
-have minor device numbers in the range 00-03, and may be assigned names of the
-form \fB/dev/ttyd_\fR\fIn_,\fR where \fI_n_\fR denotes the line to be accessed.
-These device names are typically used to provide a logical access point for a
-\fI_dial-in_\fR line that is used with a modem.
-.sp
-.LP
-To allow a single tty line to be connected to a modem and used for incoming and
-outgoing calls, a special feature is available that is controlled by the minor
-device number. By accessing character-special devices with names of the form
-\fB/dev/cua\fR\fI_n, \fR it is possible to open a port without the \fBCarrier
-Detect\fR signal being asserted, either through hardware or an equivalent
-software mechanism. These devices are commonly known as \fI_dial-out_\fR lines.
-.SH APPLICATION PROGRAMMING INTERFACE
-.LP
-Once a \fB/dev/cua\fR\fI_n_\fR line is opened, the corresponding tty, or ttyd
-line cannot be opened until the \fB/dev/cua\fR\fI_n_\fR line is closed. A
-blocking open will wait until the \fB/dev/cua\fR\fI_n_\fR line is closed (which
-will drop \fBData Terminal Ready\fR, after which \fBCarrier Detect\fR will
-usually drop as well) and carrier is detected again. A non-blocking open will
-return an error. If the \fB/dev/ttyd\fR\fI_n_\fR line has been opened
-successfully (usually only when carrier is recognized on the modem), the
-corresponding \fB/dev/cua\fR\fI_n_\fR line cannot be opened. This allows a
-modem to be attached to a device, (for example, \fB/dev/ttyd0\fR, which is
-renamed from \fB/dev/tty00\fR) and used for dial-in (by enabling the line for
-login in \fB/etc/inittab\fR) or dial-out (by \fBtip\fR(1) or \fBuucp\fR(1C)) as
-\fB/dev/cua0\fR when no one is logged in on the line.
-.SH IOCTLS
-.LP
-The standard set of \fBtermio\fR \fBioctl()\fR calls are supported by \fBsu\fR.
-.sp
-.LP
-Breaks can be generated by the \fBTCSBRK,\fR \fBTIOCSBRK,\fR and \fBTIOCCBRK\fR
-\fBioctl()\fR calls.
-.sp
-.LP
-The input and output line speeds may be set to any of the following baud rates:
-0, 50, 75, 110, 134, 150, 200, 300, 600, 1200, 1800, 2400, 4800, 9600, 19200,
-38400, 57600 or 115200. The speeds cannot be set independently; for example,
-when the output speed is set, the input speed is automatically set to the same
-speed.
-.sp
-.LP
-When the \fBsu\fR module is used to service the serial console port, it
-supports a BREAK condition that allows the system to enter the debugger or the
-monitor. The BREAK condition is generated by hardware and it is usually enabled
-by default.
-.sp
-.LP
-A BREAK condition originating from erroneous electrical signals cannot be
-distinguished from one deliberately sent by remote DCE. The Alternate Break
-sequence can be used as a remedy against this. Due to a risk of incorrect
-sequence interpretation, SLIP and certain other binary protocols should not be
-run over the serial console port when Alternate Break sequence is in effect.
-Although PPP is a binary protocol, it is able to avoid these sequences using
-the ACCM feature in \fIRFC 1662\fR. For Solaris PPP 4.0, you do this by adding
-the following line to the \fB/etc/ppp/options\fR file (or other configuration
-files used for the connection; see \fBpppd\fR(1M) for details):
-.sp
-.in +2
-.nf
-asyncmap 0x00002000
-.fi
-.in -2
-
-.sp
-.LP
-By default, the Alternate Break sequence is a three character sequence:
-carriage return, tilde and control-B (CR ~ CTRL-B), but may be changed by the
-driver. For more information on breaking (entering the debugger or monitor),
-see \fBkbd\fR(1) and \fBkb\fR(7M).
-.SH ERRORS
-.LP
-An \fBopen()\fR will fail under the following conditions:
-.sp
-.ne 2
-.na
-\fB\fBENXIO\fR\fR
-.ad
-.RS 9n
-The unit being opened does not exist.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEBUSY\fR\fR
-.ad
-.RS 9n
-The dial-out device is being opened while the dial-in device is already open,
-or the dial-in device is being opened with a no-delay open and the dial-out
-device is already open.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEBUSY\fR\fR
-.ad
-.RS 9n
-The unit has been marked as exclusive-use by another process with a
-\fBTIOCEXCL\fR \fBioctl()\fR call.
-.RE
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/dev/cua/[a-z]\fR\fR
-.ad
-.RS 19n
-dial-out tty lines
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/term/[a-z]\fR\fR
-.ad
-.RS 19n
-dial-in tty lines
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/tty[a-z]\fR\fR
-.ad
-.RS 19n
-binary compatibility package device names
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture SPARC
-.TE
-
-.SH SEE ALSO
-.LP
-\fBstrconf\fR(1), \fBkbd\fR(1), \fBtip\fR(1), \fBuucp\fR(1C),
-\fBautopush\fR(1M), \fBkstat\fR(1M), \fBpppd\fR(1M), \fBioctl\fR(2),
-\fBopen\fR(2), \fBtermios\fR(3C), \fBdacf.conf\fR(4), \fBattributes\fR(5),
-\fBkb\fR(7M), \fBldterm\fR(7M), \fBttcompat\fR(7M), \fBtermio\fR(7I)
-.SH DIAGNOSTICS
-.LP
-The \fBsu\fR driver keeps track of various warning and error conditions using
-\fBkstat\fR counters. The output of the \fBkstat su\fR command provides
-\fBkstat\fR counters. The counters and their meaning follow:
-.sp
-.ne 2
-.na
-\fBsilo overflow\fR
-.ad
-.RS 24n
-The internal chip FIFO received more data than it could handle. This indicates
-that the Solaris operating environment was not servicing data interrupts fast
-enough possibly due to a system with too many interrupts or a data line with a
-data rate that is too high.
-.RE
-
-.sp
-.ne 2
-.na
-\fBring buffer overflow\fR
-.ad
-.RS 24n
-The \fBsu\fR module was unable to store data it removed from the chips
-internal FIFO into a software buffer. The user process is not reading data fast
-enough, possibly due to an overloaded system. If possible, the application
-should enable flow control (either CTSRTS or XONXOFF) to allow the driver to
-backpressure the remote system when the local buffers fill up.
-.RE
-
diff --git a/usr/src/man/man7d/sysmsg.7d b/usr/src/man/man7d/sysmsg.7d
deleted file mode 100644
index be7166207c..0000000000
--- a/usr/src/man/man7d/sysmsg.7d
+++ /dev/null
@@ -1,44 +0,0 @@
-'\" te
-.\" Copyright (c) 1998, Sun Microsystems, Inc.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SYSMSG 7D "Oct 13, 1998"
-.SH NAME
-sysmsg \- system message routing to console devices
-.SH SYNOPSIS
-.LP
-.nf
-\fB/dev/sysmsg\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The file \fB/dev/sysmsg\fR routes output to a variable set of console devices.
-Writes to \fB/dev/sysmsg\fR are always directed to the system console
-\fB/dev/console\fR, and are in addition directed to a set of auxiliary console
-devices managed by \fBconsadm\fR(1m).
-.sp
-.LP
-Only root has permission to write to this device.
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Stable
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBconsadm\fR(1m), \fBsyslogd\fR(1M) , \fBattributes\fR(5), \fBconsole\fR(7D)
diff --git a/usr/src/man/man7d/systrace.7d b/usr/src/man/man7d/systrace.7d
deleted file mode 100644
index aab1fa03fd..0000000000
--- a/usr/src/man/man7d/systrace.7d
+++ /dev/null
@@ -1,45 +0,0 @@
-'\" te
-.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SYSTRACE 7D "Dec 10, 2017"
-.SH NAME
-systrace \- DTrace system call tracing provider
-.SH DESCRIPTION
-.LP
-The \fBsystrace\fR driver implements the DTrace \fBsyscall\fR dynamic tracing
-provider. The syscall provider performs dynamic instrumentation to offer probes
-that fire whenever a thread enters or returns from a kernel system call entry
-point.
-.sp
-.LP
-The \fBsystrace\fR driver is not a public interface and you access the
-instrumentation offered by this provider through DTrace. Refer to the
-\fIDynamic Tracing Guide\fR for a description of the public documented
-interfaces available for the DTrace facility and the probes offered by the
-\fBsyscall\fR provider.
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for a description of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Private
-.TE
-
-.SH SEE ALSO
-.LP
-\fBdtrace\fR(1M), \fBattributes\fR(5), \fBdtrace\fR(7D)
-.sp
-.LP
-\fIDynamic Tracing Guide\fR:
-.sp
-.LP
-https://illumos.org/books/dtrace/
diff --git a/usr/src/man/man7d/ticlts.7d b/usr/src/man/man7d/ticlts.7d
deleted file mode 100644
index f05474ed85..0000000000
--- a/usr/src/man/man7d/ticlts.7d
+++ /dev/null
@@ -1,215 +0,0 @@
-'\" te
-.\" Copyright 2000, Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH TICLTS 7D "Jul 3, 1990"
-.SH NAME
-ticlts, ticots, ticotsord \- loopback transport providers
-.SH SYNOPSIS
-.LP
-.nf
-#include <sys/ticlts.h>
-.fi
-
-.LP
-.nf
-#include <sys/ticots.h>
-.fi
-
-.LP
-.nf
-#include <sys/ticotsord.h>
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The devices known as \fBticlts\fR, \fBticots\fR, and \fBticotsord\fR are
-``loopback transport providers,'' that is, stand-alone networks at the
-transport level. Loopback transport providers are transport providers in every
-sense except one: only one host (the local machine) is ``connected to'' a
-loopback network. Loopback transports present a \fBTPI\fR (STREAMS-level)
-interface to application processes and are intended to be accessed via the
-\fBTLI\fR (application-level) interface. They are implemented as clone devices
-and support address spaces consisting of ``flex-addresses,'' that is, arbitrary
-sequences of octets of length > 0, represented by a \fBnetbuf\fR structure.
-.sp
-.LP
-\fBticlts\fR is a datagram-mode transport provider. It offers (connectionless)
-service of type \fBT_CLTS\fR. Its default address size is
-\fBTCL_DEFAULTADDRSZ\fR. \fBticlts\fR prints the following error messages (see
-\fBt_rcvuderr\fR(3NSL)):
-.sp
-.ne 2
-.na
-\fBTCL_BADADDR\fR
-.ad
-.RS 20n
-bad address specification
-.RE
-
-.sp
-.ne 2
-.na
-\fBTCL_BADOPT\fR
-.ad
-.RS 20n
-bad option specification
-.RE
-
-.sp
-.ne 2
-.na
-\fBTCL_NOPEER\fR
-.ad
-.RS 20n
-bound
-.RE
-
-.sp
-.ne 2
-.na
-\fBTCL_PEERBADSTATE\fR
-.ad
-.RS 20n
-peer in wrong state
-.RE
-
-.sp
-.LP
-\fBticots\fR is a virtual circuit-mode transport provider. It offers
-(connection-oriented) service of type \fBT_COTS\fR. Its default address size is
-\fBTCO_DEFAULTADDRSZ\fR. \fBticots\fR prints the following disconnect messages
-(see \fBt_rcvdis\fR(3NSL)):
-.sp
-.ne 2
-.na
-\fBTCO_NOPEER\fR
-.ad
-.RS 25n
-no listener on destination address
-.RE
-
-.sp
-.ne 2
-.na
-\fBTCO_PEERNOROOMONQ\fR
-.ad
-.RS 25n
-peer has no room on connect queue
-.RE
-
-.sp
-.ne 2
-.na
-\fBTCO_PEERBADSTATE\fR
-.ad
-.RS 25n
-peer in wrong state
-.RE
-
-.sp
-.ne 2
-.na
-\fBTCO_PEERINITIATED\fR
-.ad
-.RS 25n
-peer-initiated disconnect
-.RE
-
-.sp
-.ne 2
-.na
-\fBTCO_PROVIDERINITIATED\fR
-.ad
-.RS 25n
-provider-initiated disconnect
-.RE
-
-.sp
-.LP
-\fBticotsord\fR is a virtual circuit-mode transport provider, offering service
-of type \fBT_COTS_ORD\fR (connection-oriented service with orderly release).
-Its default address size is \fBTCOO_DEFAULTADDRSZ\fR. \fBticotsord\fR prints
-the following disconnect messages (see \fBt_rcvdis\fR(3NSL)):
-.sp
-.ne 2
-.na
-\fBTCOO_NOPEER\fR
-.ad
-.RS 26n
-no listener on destination address
-.RE
-
-.sp
-.ne 2
-.na
-\fBTCOO_PEERNOROOMONQ\fR
-.ad
-.RS 26n
-peer has no room on connect queue
-.RE
-
-.sp
-.ne 2
-.na
-\fBTCOO_PEERBADSTATE\fR
-.ad
-.RS 26n
-peer in wrong state
-.RE
-
-.sp
-.ne 2
-.na
-\fBTCOO_PEERINITIATED\fR
-.ad
-.RS 26n
-provider-initiated disconnect
-.RE
-
-.sp
-.ne 2
-.na
-\fBTCOO_PROVIDERINITIATED\fR
-.ad
-.RS 26n
-peer-initiated disconnect
-.RE
-
-.SH USAGE
-.sp
-.LP
-Loopback transports support a local \fBIPC\fR mechanism through the \fBTLI\fR
-interface. Applications implemented in a transport provider-independent manner
-on a client-server model using this \fBIPC\fR are transparently transportable
-to networked environments.
-.sp
-.LP
-Transport provider-independent applications must not include the headers listed
-in the synopsis section above. In particular, the options are (like all
-transport provider options) provider dependent.
-.sp
-.LP
-\fBticlts\fR and \fBticots\fR support the same service types (\fBT_CLTS\fR and
-\fBT_COTS\fR) supported by the \fBOSI\fR transport-level model.
-.sp
-.LP
-\fBticotsord\fR supports the same service type (\fBT_COTSORD\fR) supported by
-the \fBTCP/IP\fR model.
-.SH FILES
-.sp
-.LP
-\fB/dev/ticlts\fR
-.sp
-.LP
-\fB/dev/ticots\fR
-.sp
-.LP
-\fB/dev/ticotsord\fR
-.SH SEE ALSO
-.sp
-.LP
-\fBt_rcvdis\fR(3NSL), \fBt_rcvuderr\fR(3NSL)
diff --git a/usr/src/man/man7d/todopl.7d b/usr/src/man/man7d/todopl.7d
deleted file mode 100644
index 14e0a001f7..0000000000
--- a/usr/src/man/man7d/todopl.7d
+++ /dev/null
@@ -1,33 +0,0 @@
-'\" te
-.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH TODOPOL 7D "Apr 18, 2006"
-.SH NAME
-todopl \- Time-Of-Day driver for SPARC Enterprise Server family
-.SH DESCRIPTION
-.sp
-.LP
-The \fBtodopl\fR driver is the Time-Of-Day (TOD) driver for the SPARC
-Enterprise Server family.
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Private
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBattributes\fR(5)
diff --git a/usr/src/man/man7d/tsalarm.7d b/usr/src/man/man7d/tsalarm.7d
deleted file mode 100644
index c2ee9ae421..0000000000
--- a/usr/src/man/man7d/tsalarm.7d
+++ /dev/null
@@ -1,294 +0,0 @@
-'\" te
-.\" Copyright (c) 2004, Sun Microsystems, Inc.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH TSALARM 7D "Sep 10, 2013"
-.SH NAME
-tsalarm \- Alarm device driver
-.SH SYNOPSIS
-.LP
-.nf
-tsalarm@0:ctl
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBtsalarm\fR driver is a Multi-threaded, loadable non-STREAMS pseudo
-driver that manages ALOM alarms. The \fBtsalarm\fR driver provides an interface
-through which alarm relays can be controlled on SUNW,Netra-240 and
-SUNW,Netra-440 platforms.
-.SH HARDWARE INTERFACE
-.sp
-.LP
-The alarm hardware differs depending on platform. The Netra 240 and 440
-platforms features four dry contact alarm relays which are controlled by
-ALOM. You can set each alarm to "on" or "off" by using ioctl interfaces
-provided from the host. The four alarms are labeled as "critical," "major,"
-"minor," and "user." The user alarm is set by a user application depending on
-system condition. LED's in front of the box provide a visual indication of the
-four alarms. The number of alarms and their meanings/labels may vary across
-platforms.
-.SH IOCTLS
-.sp
-.LP
-The interface provided by the \fBtsalarm\fR driver comprises ioctls that enable
-applications to manipulate the alarm module. The alarm module is accessed via
-two device nodes: i) \fB/dev/lom\fR and \fB/dev/tsalarm:ctl\fR.
-.sp
-.LP
-The following ioctls are supported by the \fB/dev/lom\fR and
-\fB/dev/tsalarm:ctl\fR devices:
-.sp
-.ne 2
-.na
-\fB\fBTSIOCALCTL - Turn an alarm on or off.\fR\fR
-.ad
-.sp .6
-.RS 4n
-The argument is a pointer to the \fBts_aldata_t/lom_aldata_t\fR structure. This
-structure is described below. \fBalarm_no member\fR is an integer which
-specifies the alarm to which the command is to be applied. The
-\fBalarm_state/state\fR structure member indicates the state to which the alarm
-should be set (where 0 == off). An error (\fBEINVAL\fR) is returned if either
-an invalid alarm_no or invalid alarm_state is provided.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBTSIOCALSTATE - Get the state of the alarms.\fR\fR
-.ad
-.sp .6
-.RS 4n
-The argument is a pointer to the \fBts_aldata_t/lom_aldata_t\fR structure. This
-structure is described below. \fBalarm_no member\fR is an integer which
-indicates the alarm to which the command will be applied. The
-\fBalarm_state\fR member holds the alarm's current state and is filled in by
-the driver. A zero indicates that the alarm is off. An error (\fBEINVAL\fR) is
-returned if an invalid alarm_no is provided. The structures and definitions for
-the values are defined below.
-.RE
-
-.sp
-.LP
-Alarm values:
-.sp
-.in +2
-.nf
-The following old style values are defined in <lom.io.h>
-
- #define ALARM_NUM_0 0 /* number of zero'th alarm */
-
- #define ALARM_NUM_1 1 /* number of first alarm */
-
- #define ALARM_NUM_2 2 /* number of second alarm */
-
- #define ALARM_NUM_3 3 /* number of third alarm */
-
- Alarm values defined in <lom.io.h>
-
- #define ALARM_OFF 0 /* Turn off alarm */
-
- #define ALARM_ON 1 /* Turn on alarm */
-.fi
-.in -2
-
-.sp
-.LP
-Alarm Data Structure:
-.sp
-.in +2
-.nf
-This structure is defined in <lom.io.h>
-
- typedef struct {
-
- int alarm_no; /* alarm to apply command to */
-
- int alarm_state; /* state of alarm (0 == off) */
-
- } ts_aldata_t;
-.fi
-.in -2
-
-.sp
-.LP
-Use the following LOM interfaces to get and set the alarms. These definitions
-are included in <lom_io.h>
-.sp
-.in +2
-.nf
- #define ALARM_CRITICAL 0 /* number of critical alarm */
-
- #define ALARM_MAJOR 1 /* number of major alarm */
-
- #define ALARM_MINOR 2 /* number of minor alarm */
-
- #define ALARM_USER 3 /* number of user alarm */
-.fi
-.in -2
-
-.sp
-.LP
-The following alarm data structure is provided in <lom_io.h>:
-.sp
-.in +2
-.nf
-typedef struct {
-
- int alarm_no;
-
- int state;
-
- } lom_aldata_t;
-.fi
-.in -2
-
-.SH ERRORS
-.sp
-.LP
-An \fBopen()\fR will fail if:
-.sp
-.ne 2
-.na
-\fBENXIO\fR
-.ad
-.RS 9n
-The driver is not installed in the system.
-.RE
-
-.sp
-.LP
-An \fBioctl()\fR will fail if:
-.sp
-.ne 2
-.na
-\fBEFAULT\fR
-.ad
-.RS 10n
-There was a hardware failure during the specified operation.
-.RE
-
-.sp
-.ne 2
-.na
-\fBEINVAL\fR
-.ad
-.RS 10n
-The alarm number specified is not valid or an invalid value was supplied.
-.RE
-
-.sp
-.ne 2
-.na
-\fBENXIO\fR
-.ad
-.RS 10n
-The driver is not installed in the system or the monitor callback routine could
-not be scheduled.
-.RE
-
-.SH EXAMPLES
-.sp
-.in +2
-.nf
-How to set an alarm:
-
- #include <sys/unistd.h>
- #include <fcntl.h>
- #include <stdio.h>
- #include <lom_io.h>
-
- #define LOM_DEVICE "/dev/lom"
-
- int
- main()
- {
- lom_aldata_t lld;
- int fd = open(LOM_DEVICE, O_RDWR);
-
- if (fd == -1) {
- printf("Error opening device: %s\en", LOM_DEVICE);
- exit (1);
- }
-
- lld.alarm_no = ALARM_CRITICAL; /* Set the critical alarm */
- lld.state = ALARM_ON; /* Set the alarm */
-
- if (ioctl(fd, LOMIOCALCTL, (char *)&lld) != 0)
- printf("Setting alarm failed");
- else
- printf("Alarm set successfully");
-
- close(fd);
-
- }
-.fi
-.in -2
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/dev/lom\fR\fR
-.ad
-.sp .6
-.RS 4n
-LOM device.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/tsalarm:ctl\fR\fR
-.ad
-.sp .6
-.RS 4n
-Alarm control device.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/platform/platform/kernel/drv/sparcv9/tsalarm\fR\fR
-.ad
-.sp .6
-.RS 4n
-Device driver module.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/platform/SUNW,Netra-240/kernel/drv/tsalarm.conf\fR\fR
-.ad
-.sp .6
-.RS 4n
-Driver configuration file.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture SPARC
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBattributes\fR(5)
-.sp
-.LP
-\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man7d/tty.7d b/usr/src/man/man7d/tty.7d
deleted file mode 100644
index 0a814ada28..0000000000
--- a/usr/src/man/man7d/tty.7d
+++ /dev/null
@@ -1,29 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T
-.\" Copyright (C) 1999, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH TTY 7D "Jul 3, 1990"
-.SH NAME
-tty \- controlling terminal interface
-.SH DESCRIPTION
-.sp
-.LP
-The file \fB/dev/tty\fR is, in each process, a synonym for the control terminal
-associated with the process group of that process, if any. It is useful for
-programs or shell sequences that wish to be sure of writing messages on the
-terminal no matter how output has been redirected. It can also be used for
-programs that demand the name of a file for output, when typed output is
-desired and it is tiresome to find out what terminal is currently in use.
-.SH FILES
-.sp
-.LP
-\fB/dev/tty\fR
-.sp
-.LP
-\fB/dev/tty*\fR
-.SH SEE ALSO
-.sp
-.LP
-\fBports\fR(1M), \fBconsole\fR(7D)
diff --git a/usr/src/man/man7d/tzmon.7d b/usr/src/man/man7d/tzmon.7d
deleted file mode 100644
index 388087a506..0000000000
--- a/usr/src/man/man7d/tzmon.7d
+++ /dev/null
@@ -1,57 +0,0 @@
-'\" te
-.\" Copyright (c) 2006 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH TZMON 7D "Oct 31, 2006"
-.SH NAME
-tzmon \- ACPI Thermal Zone Monitor
-.SH DESCRIPTION
-.sp
-.LP
-The \fBtzmon\fR is a pseudo driver that serves as an ACPI thermal zone monitor.
-Thermal zones are logical regions within a computer system for which ACPI
-performs temperature monitoring and control functions. The number of thermal
-zones on a system with ACPI support varies. For example, some systems may have
-one or more thermal zones, while others may have none. See the \fIAdvanced
-Configuration and Power Interface Specification, (ACPI) Version 3.0A\fR, for
-more details.
-.sp
-.LP
-The \fBtzmon\fR handles thermal Zone events from ACPI and polls the temperature
-for each zone exposed by the ACPI implementation. If threshold temperatures
-are reached, \fBtzmon\fR takes appropriate action. For example, if the
-temperature is sufficiently high and the ACPI implementation supports it,
-\fBtzmon\fR initiates system shutdown.
-.sp
-.LP
-Note that by default, system temperature control functions are usually
-performed by the BIOS and may supersede \fBtzmon\fR functions, depending on the
-BIOS implementation. Also, many ACPI implementations expose no thermal zones
-and in these cases, \fBtzmon\fR performs no functions.
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture x86/x64 only
-_
-Interface stability Private
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBattributes\fR(5)
-.sp
-.LP
-\fIAdvanced Configuration and Power Interface Specification, (ACPI), Version
-3.0A.\fR
diff --git a/usr/src/man/man7d/uath.7d b/usr/src/man/man7d/uath.7d
deleted file mode 100644
index 585e18311f..0000000000
--- a/usr/src/man/man7d/uath.7d
+++ /dev/null
@@ -1,96 +0,0 @@
-'\" te
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH UATH 7D "Sep 10, 2009"
-.SH NAME
-uath \- Atheros AR5523 USB IEEE802.11a/b/g Wireless Network Driver
-.SH DESCRIPTION
-.sp
-.LP
-The \fBuath\fR IEEE802.11a/b/g wireless network driver is a multi-threaded,
-loadable, clonable, GLDv3-based STREAMS driver supporting Atheros AR5523 USB
-IEEE802.11a/b/g wireless network driver.
-.SS "Configuration"
-.sp
-.LP
-The \fBuath\fR driver performs auto-negotiation to determine the data rate and
-mode. The driver supports only BSS networks (also known as \fBap\fR or
-\fBinfrastructure\fR networks) and \fBopen\fR (or \fBopen-system\fR) or shared
-system authentication. For wireless security, WEP encryption, WPA-PSk, and
-WPA2-PSK are currently supported. You can perform configuration and
-administration tasks using the \fBdladm\fR(1M) and \fBwificonfig\fR(1M)
-utilities.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/dev/uath\fR\fR
-.ad
-.RS 29n
-Special character device
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/uath\fR\fR
-.ad
-.RS 29n
-32-bit ELF 86 kernel module (x86)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/uat\fR\fR
-.ad
-.RS 29n
-64-bit ELF kernel module (x86)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/misc/uathfw\fR\fR
-.ad
-.RS 29n
-32-bit ELF firmware kernel module (x86)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/misc/amd64/uathfw\fR\fR
-.ad
-.RS 29n
-64-bit ELF firmware kernel module (x86)
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for a description of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-l | l
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture x86
-_
-Interface Stability Committed
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBdladm\fR(1M), \fBwificonfig\fR(1M), \fBattributes\fR(5), \fBdlpi\fR(7P),
-\fBgld\fR(7D)
-.sp
-.LP
-\fIIEEE802.11b/g - Wireless LAN Standard - IEEE, 2003\fR
diff --git a/usr/src/man/man7d/ufm.7d b/usr/src/man/man7d/ufm.7d
deleted file mode 100644
index ea3b7fa4c3..0000000000
--- a/usr/src/man/man7d/ufm.7d
+++ /dev/null
@@ -1,312 +0,0 @@
-.\"
-.\" This file and its contents are supplied under the terms of the
-.\" Common Development and Distribution License ("CDDL"), version 1.0.
-.\" You may only use this file in accordance with the terms of version
-.\" 1.0 of the CDDL.
-.\"
-.\" A full copy of the text of the CDDL should have accompanied this
-.\" source. A copy of the CDDL is also available via the Internet at
-.\" http://www.illumos.org/license/CDDL.
-.\"
-.\"
-.\" Copyright 2019 Joyent, Inc.
-.\" Copyright 2020 Oxide Computer Company
-.\"
-.Dd May 23, 2021
-.Dt UFM 7D
-.Os
-.Sh NAME
-.Nm ufm
-.Nd Upgradeable Firmware Module driver
-.Sh SYNOPSIS
-.Pa /dev/ufm
-.Lp
-.In sys/ddi_ufm.h
-.Sh DESCRIPTION
-The
-.Nm
-device is a character special file that provides access to
-Upgradeable Firmware Image information, as described in
-.Xr ddi_ufm 9E
-via a private ioctl interface.
-.Pp
-The UFM interfaces described below are used in the implementation of the
-system through tools such as
-.Xr fwflash 1M
-or as part of the fault management architecture.
-.Sh FILES
-.Bl -tag -width Pa
-.It Pa /kernel/drv/amd64/ufm
-64-bit AMD64 ELF kernel driver
-.It Pa /kernel/drv/sparcv9/ufm
-64-bit SPARC ELF kernel driver
-.El
-.Sh IOCTLS
-The
-.Nm
-driver implements a versioned ioctl interface for accessing UFM facilities.
-The ioctl interfaces are defined in sys/ddi_ufm.h.
-The following ioctl cmds are supported by DDI_UFM_VERSION_ONE:
-.Bl -tag -width Dv
-.It Dv UFM_IOC_GETCAPS
-The
-.Dv UFM_IOC_GETCAPS
-ioctl is used to retrieve the set of DDI UFM capabilities supported by this
-device instance.
-.Pp
-The ddi_ufm_cap_t type defines a bitfield enumerating the full set of DDI UFM
-capabilities.
-.Bd -literal
-typedef enum {
- DDI_UFM_CAP_REPORT = 1 << 0,
- DDI_UFM_CAP_READIMG = 1 << 1
-} ddi_ufm_cap_t;
-.Ed
-.Pp
-The capabilities mean:
-.Bl -tag -width Dv
-.It Dv DDI_UFM_CAP_REPORT
-Indicates that the device is capable of reporting UFM information and
-supports the
-.Dv UFM_IOC_REPORT
-and
-.Dv UFM_IOC_REPORTSZ
-ioctls.
-.It Dv DDI_UFM_CAP_READIMG
-Indicates that the device is capable of retrieving a firmware image from
-a slot and transferring it back to the caller.
-The
-.Dv UFM_IOC_READIMG
-ioctl is supported.
-.El
-.Pp
-The
-.Vt ufm_ioc_getcaps_t
-structure defines the input/output data for the
-.Dv UFM_IOC_GETCAPS
-ioctl.
-Callers should specify the
-.Fa ufmg_version
-and
-.Fa ufmg_devpath
-fields.
-On success the
-.Fa ufmg_caps
-field will be filled in with a value indicating the
-supported UFM capabilities of the device specified in
-.Fa ufmg_devpath .
-.Bd -literal
-typedef struct ufm_ioc_getcaps {
- uint_t ufmg_version; /* DDI_UFM_VERSION_ONE */
- uint_t ufmg_caps; /* UFM Caps */
- char ufmg_devpath[MAXPATHLEN];
-} ufm_ioc_getcaps_t;
-.Ed
-.It Dv UFM_IOC_REPORTSZ
-The
-.Dv UFM_IOC_REPORTSZ
-ioctl is used to retrieve the amount of space
-(in bytes) required to hold the UFM data for this device instance.
-This should be used to allocate a sufficiently sized buffer for the
-.Dv UFM_IOC_REPORT
-ioctl.
-.Pp
-The
-.Vt ufm_ioc_bufsz_t
-structure defines the input/output data for the
-.Dv UFM_IOC_REPORTSZ
-ioctl.
-Callers should specify the
-.Fa ufbz_version
-and
-.Fa ufbz_devpath
-fields.
-On success the
-.Fa ufbz_size
-field will be filled in with the required buffer size.
-.Bd -literal
-typedef struct ufm_ioc_bufsz {
- uint_t ufbz_version; /* DDI_UFM_VERSION_ONE */
- size_t ufbz_size; /* sz of buf to be returned by ioctl */
- char ufbz_devpath[MAXPATHLEN];
-} ufm_ioc_bufsz_t;
-.Ed
-.It Dv UFM_IOC_REPORT
-The
-.Dv UFM_IOC_REPORT
-ioctl returns UFM image and slot data in the form of a packed nvlist.
-The
-.Vt ufm_ioc_report_t
-structure defines the input/output data for the
-.Dv UFM_IOC_REPORT
-ioctl.
-Callers should specify the ufmr_version, ufmr_bufsz and ufmr_devpath fields.
-On success, the ufmr_buf field will point to a packed nvlist containing the UFM
-data for the specified device instance.
-This data can be unpacked and decoded into an nvlist using
-.Xr nvlist_unpack 3NVPAIR .
-.Bd -literal
-typedef struct ufm_ioc_report {
- uint_t ufmr_version; /* DDI_UFM_VERSIONONE */
- size_t ufmr_bufsz; /* size of caller-supplied buffer */
- caddr_t ufmr_buf; /* buf to hold packed output nvl */
- char ufmr_devpath[MAXPATHLEN];
-} ufm_ioc_report_t;
-.Ed
-.Pp
-Due to the asynchronous nature of the system, it's possible for a device to
-undergo a configuration change in between a
-.Dv UFM_IOC_REPORTSZ
-ioctl and a subsequent
-.Dv UFM_IOC_REPORT
-ioctl that would alter the size of the buffer
-required to hold the UFM data.
-.Pp
-If the size of buffer supplied in the
-.Dv UFM_IOC_REPORT
-ioctl is greater than is required to hold the UFM data, then
-the ioctl will succeed and the ufmr_bufsz field will be updated to reflect the
-actual size of the returned UFM data.
-If the size of buffer supplied in the
-.Dv UFM_IOC_REPORT
-ioctl is less than what is required to hold the UFM data,
-the ioctl will fail with errno set to
-.Er EOVERFLOW .
-.It Dv UFM_IOC_READIMG
-The
-.Dv UFM_IOC_READIMG
-ioctl retrieves a firmware image and slot from a device.
-The
-.Vt ufm_ioc_readimg_t
-structure defines the input and output data for the ioctl.
-Devices may have their own alignment and size constraints which may be
-enforced upon issuing this ioctl.
-The structure has the following form:
-.Bd -literal
-typedef struct ufm_ioc_readimg {
- uint_t ufri_version;
- uint_t ufri_imageno;
- uint_t ufri_slotno;
- uint64_t ufri_offset;
- uint64_t ufri_len;
- uint64_t ufri_nread;
- void *ufri_buf;
- char ufri_devpath[MAXPATHLEN];
-} ufm_ioc_readimg_t;
-.Ed
-.Pp
-The
-.Ft ufri_imageno
-and
-.Ft ufri_slotno
-values are used to indicate the image and slot to read.
-These indexes correspond to the same indices that are returned in the
-nvlist from the
-.Dv UFM_IOC_REPORT
-ioctl.
-The
-.Ft ufri_offset
-and
-.Ft ufri_len
-members are used to indicate how many bytes to read from the image and
-where in the image to begin.
-The
-.Fa ufri_buf
-member must be set to a valid pointer.
-Data read from the device will be placed in that pointer.
-The pointer must be at least
-.Fa ufri_len
-bytes long.
-Upon successful completion, the
-.Fa ufri_nread
-member will be filled in with the number of bytes that have been placed
-in
-.Fa ufri_buf .
-Finally, the
-.Fa ufri_version
-and
-.Fa ufri_devpath
-fields must be filled in with the version number,
-.Dv DDI_UFM_VERSION_ONE ,
-and the corresponding /devices path.
-.El
-.Sh EXAMPLES
-This example demonstrates how to use the
-.Dv UFM_IOC_GETCAPS
-ioctl to determine the UFM capabilities of a given device instance.
-.Bd -literal
-#include <stdio.h>
-#include <stdlib.h>
-#include <errno.h>
-#include <fcntl.h>
-#include <string.h>
-#include <unistd.h>
-#include <sys/ddi_ufm.h>
-#include <sys/types.h>
-
-static const char devname[] = "/pci@ce,0/pci8086,2030@0/pci15d9,808@0";
-
-int
-main(int argc, char **argv)
-{
- int fd;
- ufm_ioc_getcaps_t ioc = { 0 };
-
- if ((fd = open(DDI_UFM_DEV, O_RDWR)) < 0) {
- (void) fprintf(stderr, "failed to open %s (%s)\n", DDI_UFM_DEV,
- strerror(errno));
- return (1);
- }
-
- ioc.ufmg_version = DDI_UFM_CURRENT_VERSION;
- (void) strcpy(ioc.ufmg_devpath, devname);
-
- if (ioctl(fd, UFM_IOC_GETCAPS, &ioc) < 0) {
- (void) fprintf(stderr, "getcaps ioctl failed (%s)\n",
- strerror(errno));
- (void) close(fd);
- return (1);
- }
- if ((ioc.ufmg_caps & DDI_UFM_CAP_REPORT) == 0) {
- (void) printf("Driver does not support DDI_UFM_CAP_REPORT\n");
- } else {
- (void) printf("Driver supports DDI_UFM_CAP_REPORT\n");
- }
- (void) close(fd);
- return (0);
-}
-.Ed
-.Sh ERRORS
-On failure to open or perform ioctls to the
-.Nm
-driver,
-.Va errno
-will be set to indicate the type of error.
-A subset of the more common errors are detailed below.
-For a full list of error numbers, see
-.Xr Intro 2
-.Bl -tag -width Er
-.It Er EAGAIN
-The device driver is not currently ready to accept calls to it's DDI UFM entry
-points.
-This may be because the driver is not fully initialized or because the driver
-is in the process of detaching.
-.It Er EFAULT
-The ufm driver encountered a failure while copying data either from or to the
-address space of the calling process.
-.It Er EINVAL
-The offset or length of an image would have resulted in a read outside
-of the image's valid range or with improper alignment.
-.It Er EIO
-A failure occurred while executing a DDI UFM entry point.
-.It Er ENOTSUP
-Either the requested ioctl is not supported by the target device, the device
-does not exist or the device does not support the UFM interfaces.
-.El
-.Sh INTERFACE STABILITY
-.Sy Evolving
-.Sh SEE ALSO
-.Xr ddi_ufm 9E ,
-.Xr ddi_ufm 9F ,
-.Xr ddi_ufm_image 9F ,
-.Xr ddi_ufm_slot 9F
diff --git a/usr/src/man/man7d/ugen.7d b/usr/src/man/man7d/ugen.7d
deleted file mode 100644
index b7a3079a28..0000000000
--- a/usr/src/man/man7d/ugen.7d
+++ /dev/null
@@ -1,1720 +0,0 @@
-'\" te
-.\" Copyright 2017 Peter Tribble
-.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH UGEN 7D "May 13, 2017"
-.SH NAME
-ugen \- USB generic driver
-.SH SYNOPSIS
-.LP
-.nf
-\fBNode Name@unit-address\fR
-.fi
-
-.LP
-.nf
-\fB#include <sys/usb/clients/ugen/usb_ugen.h>\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-\fBugen\fR is a generic USBA (Solaris USB Architecture) compliant client
-character driver that presents USB devices to applications through a standard
-\fBopen\fR(2), \fBclose\fR(2), \fBread\fR(2), \fBwrite\fR(2),
-\fBaioread\fR(3C), \fBaiowrite\fR(3C) Unix interface. Uninterpreted raw data
-are transferred to and from the device via file descriptors created for each USB
-endpoint. Status is obtained by reading file descriptors created for endpoint
-and full device status.
-.sp
-.LP
-\fBugen\fR supports control, bulk, isochronous and interrupt (in and out)
-transfers. libusb uses \fBugen\fR to access devices that do not
-contain drivers (such as digital cameras and PDAs).
-.SH BINDING
-.LP
-In general, no explicit binding of the \fBugen\fR driver is necessary because
-\fBusb_mid\fR(7D) is the default driver for devices without a class or vendor
-unique driver. \fBusb_mid\fR(7D) creates the same logical device names as
-\fBugen\fR, but only if no child interfaces are explicitly bound to \fBugen\fR.
-If it is necessary to bind \fBugen\fR explicitly to a device or interface, the
-following section explains the necessary steps.
-.sp
-.LP
-\fBugen\fR can bind to a device with one or more interfaces in its entirety, or
-to a single interface of that device. The binding type depends on information
-that is passed to \fBadd_drv\fR(1M) or \fBupdate_drv\fR(1M).
-.sp
-.LP
-An \fBadd_drv\fR(1M) command binds \fBugen\fR to a list of device types it is
-to control. \fBupdate_drv\fR(1M) adds an additional device type to the list of
-device types being managed by the driver.
-.sp
-.LP
-Names used to bind drivers can be found in \fB/var/adm/messages\fR. When a
-device is on-lined after hot insertion, and no driver is found, there will be
-an entry containing:
-.sp
-.in +2
-.nf
-USB 2.0 device (usb<vid>,<pid>)...
-.fi
-.in -2
-
-.sp
-.LP
-where vid is the USB vendor identifier in hex and pid is the product
-identifier in hex supplied by the device descriptor \fBusb_dev_descr\fR(9S).
-Note, the USB device version may vary depending on the device.
-.sp
-.LP
-When using ugen for the first time, you must add the driver utilizing
-\fBadd_drv\fR(1M), using a command of the following form:
-.sp
-.in +2
-.nf
-Assuming that the vid is 472 and pid is b0b0:
-
-add_drv -n -m '* <device perms> <owner> <group>'
- -i '"usb472,b0b0"' ugen
-.fi
-.in -2
-
-.sp
-.LP
-If the command fails with:
-.sp
-.in +2
-.nf
-(ugen) already in use as a driver or alias.
-.fi
-.in -2
-
-.sp
-.LP
-\&...add the device using \fBupdate_drv\fR(1M):
-.sp
-.in +2
-.nf
-update_drv -a -m '* <device perms> <owner> <group>'
- -i '"usb472,b0b0"' ugen
-.fi
-.in -2
-
-.sp
-.LP
-This binds \fBugen\fR to the entire device.
-.sp
-.LP
-If ugen only binds to one interface of the device, use the following
-driver_alias instead of usb<vid>,<pid>:
-.sp
-.in +2
-.nf
- usbif<vid>,<pid>.config<cfg value>.<interface number>
-.fi
-.in -2
-
-.sp
-.LP
-where cfg value is the value of bConfigurationValue in the configuration
-descriptor (\fBusb_cfg_descr\fR(9S)). For example "usbif1234,4567.config1.0."
-.sp
-.LP
-Note that you can use update_drv to also remove bindings. Please see
-\fBupdate_drv\fR(1M) for more information.
-.sp
-.LP
-After a successful add_drv or update_drv, remove the device and reinsert. Check
-with the \fBprtconf\fR(1M) -D option to determine if \fBugen\fR is successfully
-bound to the device and the nodes created in /dev/usb/<vid>.<pid> (see below).
-.sp
-.LP
-An example showing how to bind a child device representing interface 0 of
-configuration 1 of a composite device follows:
-.sp
-.in +2
-.nf
-update_drv -a -m '* 0666 root sys'
- -i '"usbif472,b0b0.config1.0"' ugen
-.fi
-.in -2
-
-.sp
-.LP
-Note that if you uninstall the \fBugen\fR driver, and later reinstall it,
-any pre-existing ugen driver device-bindings will be reactivated. Likewise,
-any pre-existing ugen driver device-bindings are preserved across operating
-system updates or upgrades.
-.SH LOGICAL DEVICE NAME FORMAT
-.LP
-For each device or child device it manages, \fBugen\fR creates one logical
-device name for device-wide status and one logical device name for endpoint 0.
-\fBugen\fR also creates logical device names for all other endpoints within the
-device node's binding scope (interface or device), plus logical device names
-for their status.
-.sp
-.LP
-If separate \fBugen\fR instances control different interfaces of the same
-device, the device-wide status and endpoint logical device names created for
-each instance will share access to the same source or endpoint pipes. For
-example, a device with two interfaces, each operated by their own \fBugen\fR
-instance, will show \fBendpoint0\fR as \fBif0cntrl0\fR to the first interface,
-and will show it as \fBif1cntrl0\fR to the second interface. Both of these
-logical device names share \fBendpoint0\fR. Likewise for the same device,
-\fBugen\fR makes the device-wide status available as \fBif0devstat\fR to the
-first interface and as \fBif1devstat\fR to the second interface.
-\fBif0devstat\fR and \fBif1devstat\fR both return the same data.
-.sp
-.LP
-Any \fBugen\fR logical device name can be held open by only one user at a time,
-regardless of whether the \fBO_EXCL\fR flag passed to \fBopen\fR(2). When a
-single pipe or data source is shared by multiple logical device names, such as
-if[0,1]cntrl0 or if[0,1]devstat above, more than one logical device name
-sharing the pipe or data source can be open at a time. However, only one user
-may access the shared pipe or data source at a time, regardless of the logical
-device name used for access.
-.sp
-.LP
-When \fBugen\fR is bound to an entire device, the following logical device
-names are created (each on a single line). \fIN\fR represents the instance
-number of the device type.
-.sp
-.in +2
-.nf
-Endpoint 0 (default endpoint):
-
- /dev/usb/<vid>.<pid>/<N>/cntrl0
- /dev/usb/<vid>.<pid>/<N>/cntrl0stat
-
- For example:
-
- /dev/usb/472.b0b0/0/cntrl0
- /dev/usb/472.b0b0/0/cntrl0stat
-
-Configuration index 1, Endpoints > 0, alternate 0:
-
- /dev/usb/<vid>.<pid>/<N>/if<interface#>
- <in|out|cntrl><endpoint#>
- /dev/usb/<vid>.<pid>/<N>/if<interface#>
- <in|out|cntrl><endpoint#>stat
-
- For example:
-
- /dev/usb/472.b0b0/0/if0in1
- /dev/usb/472.b0b0/0/if0in1stat
-
-Configuration index 1, Endpoints > 0, alternate > 0:
-
- /dev/usb/<vid>.<pid>/<N>/if<interface#>.
- <alternate><in|out|cntrl><endpoint#>
- /dev/usb/<vid>.<pid>/<N>/if<interface#>.
- <alternate<in|out|cntrl><endpoint#>stat
-
- For example:
-
- /dev/usb/472.b0b0/0/if0.1in3
- /dev/usb/472.b0b0/0/if0.1in3stat
-
-Configuration index> 1, Endpoints > 0, alternate 0:
- /dev/usb/<vid>.<pid>/<N>/cfg<value>if<interface#>
- <in|out|cntrl><endpoint#>
- /dev/usb/<vid>.<pid>/<N>/cfg<value>if<interface#>
- <in|out|cntrl><endpoint#>stat
-
- For example:
-
- /dev/usb/472.b0b0/0/cfg2if0in1
- /dev/usb/472.b0b0/0/cfg2if0in1stat
-
- Note that the configuration value from the configuration
- descriptor indexed by the configuration index is used in
- the node name and not the configuration index itself.
-
-Configuration index> 1, Endpoints > 0, alternate > 0:
- /dev/usb/<vid>.<pid>/<N>/cfg<value>if<interface#>.
- <alternate<in|out|cntrl><endpoint#>
- /dev/usb/<vid>.<pid>/<N>/cfg<value>if<interface#>.
- <alternate<in|out|cntrl><endpoint#>stat
-
- For example:
-
- /dev/usb/472.b0b0/0/cfg2if0.1in1
- /dev/usb/472.b0b0/0/cfg2if0.1in1stat
-
- Device status:
-
- /dev/usb/<vid>.<pid>/<N>/devstat
-
- For example:
-
- /dev/usb/472.b0b0/0/devstat
-.fi
-.in -2
-
-.sp
-.LP
-When \fBugen\fR is bound to a single device interface, the following logical
-device nodes are created:
-.sp
-.in +2
-.nf
-Endpoint 0 (default endpoint):
-
- /dev/usb/<vid>.<pid>/<N>/if<interface#>cntrl0
- /dev/usb/<vid>.<pid>/<N>/if<interface#>cntrl0stat
-
- For example:
-
- /dev/usb/472.b0b0/0/if0cntrl0
- /dev/usb/472.b0b0/0/if0cntrl0stat
-
-Device status:
- /dev/usb/<vid>.<pid>/<N>/if<interface#>devstat
-
- For example:
- /dev/usb/472.b0b0/0/if0devstat
-.fi
-.in -2
-
-.sp
-.LP
-The format for all other logical device names is identical to the format used
-when \fBugen\fR is bound to the entire device.
-.sp
-.LP
-Opening the endpoint of a different configuration or different alternate
-interface will cause an implicit change of configuration or a switch to an
-alternate interface. A configuration change is prohibited when any non-zero
-endpoint device nodes are open. An alternate interface switch is prohibited if
-any endpoint in the same interface is open.
-.SH HOT-PLUGGING
-.LP
-A device may be hot-removed at any time. Following hot-removal, the device
-status changes to USB_DEV_STAT_DISCONNECTED, the status of open endpoints
-change to USB_LC_STAT_DISCONNECTED upon their access, and all subsequent
-transfer requests fail. Endpoints are reactivated by first reinserting the
-device and then closing and reopening all endpoints that were open when the
-device was disconnected.
-.SH CPR (CHECKPOINT/RESUME)
-.LP
-CPR (Checkpoint/Resume) may be initiated at any time and is treated similarly
-to a hot-removal. Upon successful suspend and resume, all subsequent transfer
-requests fail as an indication to the application to reinitialize. Applications
-should close and reopen all endpoints to reinstate them. All endpoint and
-device status on Resume (before close and reopen) is USB_LC_STAT_SUSPENDED. A
-system suspend will fail while \fBugen\fR is performing a transfer.
-.SH DEVICE POWER MANAGEMENT
-.LP
-Devices which support remote wakeup can be power managed when they have no open
-logical device nodes. When an application opens the first logical device node
-of a device, that application should assume that a reinitialization of device
-state is required.
-.SH DEVICE STATUS MANAGEMENT
-.LP
-Applications can monitor device status changes by reading the device status
-from the device status logical name. When opened without O_NONBLOCK and
-O_NDELAY, all reads from that file descriptor (with the exception of the
-initial read that follows the open) block until a device status change occurs.
-Calls to read will always return immediately if opened with \fBO_NONBLOCK\fR or
-\fBO_NDELAY\fR. Nonblocking calls to read which have no data to return, return
-no error and zero bytes read.
-.sp
-.LP
-Device statuses are:
-.sp
-.ne 2
-.na
-\fBUSB_DEV_STAT_ONLINE\fR
-.ad
-.RS 29n
-Device is available.
-.RE
-
-.sp
-.ne 2
-.na
-\fBUSB_DEV_STAT_DISCONNECTED\fR
-.ad
-.RS 29n
-Device has been disconnected.
-.RE
-
-.sp
-.ne 2
-.na
-\fBUSB_DEV_STAT_RESUMED\fR
-.ad
-.RS 29n
-Device has been resumed, however, endpoints which were open on suspend have not
-yet been closed and reopened.
-.RE
-
-.sp
-.ne 2
-.na
-\fBUSB_DEV_STAT_UNAVAILABLE\fR
-.ad
-.RS 29n
-Device has been reconnected, however, endpoints which were open on disconnect
-have not yet been closed and reopened.
-.RE
-
-.sp
-.LP
-The following code reads the device status device logical name:
-.sp
-.in +2
-.nf
-int fd;
-int status;
-
-if ((fd = open("/dev/usb/472.b0b0/0/devstat",
- O_RDONLY)) < 0) {
- /* handle error */
-}
-
-if (read(fd, &status, sizeof(status)) != sizeof(status)) {
- /* handle error */
-}
-
-switch (status) {
-case USB_DEV_STAT_DISCONNECTED:
- printf ("Terminating as device has been disconnected.\en");
- exit (0);
-
-case USB_DEV_STAT_RESUMED:
-case USB_DEV_STAT_UNAVAILABLE:
- /*
- * Close and reopen endpoints to reestablish device access,
- * then reset device.
- */
- break;
-
-case USB_DEV_STAT_ONLINE:
-default:
- break;
-}
-.fi
-.in -2
-
-.sp
-.LP
-Use \fBpoll\fR(2) to block on several logical names simultaneously, including
-device status logical names. Poll indicates when reading a logical name would
-return data. See \fBpoll\fR(2) for details. Calls to read may be done whether
-or not they follow calls to poll.
-.SH ENDPOINT STATUS MANAGEMENT
-.LP
-Each data endpoint has a corresponding status logical name. Use the status
-logical name to retrieve the state of the data endpoint, including detail on
-how its most recent transfer failed. Reads of the status file descriptors
-always return immediately. See the ERRORS section for more information on
-endpoint status values. All logical device name files created for returning
-status must be opened with \fBO_RDONLY\fR.
-.sp
-.LP
-The following code illustrates reading the status file descriptor of an
-endpoint which just failed a data transfer in order to get more information on
-the failure.
-.sp
-.in +2
-.nf
-int data_xfered, status;
-int ep1_data_fd, ep1_stat_fd;
-uchar_t request[8];
-
-ep1_data_fd = open ("/dev/usb/472.b0b0/0/if0out1", O_WRONLY);
-
-if (ep1_data_fd < 0) {
- /* Handle open error. */
-}
-
-ep1_stat_fd = open ("/dev/usb/472.b0b0/0/if0out1stat",
- O_RDONLY);
-if (ep1_stat_fd < 0) {
- /* Handle open error. */
-}
-
-data_xfered = write(ep1_data_fd, request, sizeof (request));
-
-/* An error occurred during the data transfer. */
-if (data_xfered != sizeof (request)) {
-
- /* Read status file descriptor for details on failure. */
- if (read(ep1_stat_fd, (int *)&status, sizeof (status)) !=
- sizeof (status)) {
- status = USB_LC_STAT_UNSPECIFIED_ERR;
- }
-
- /* Take appropriate action. */
- switch (status) {
- case USB_LC_STAT_STALL:
- printf ("Endpoint stalled.\en");
- break;
- case ...
- ...
- }
-
-}
-.fi
-.in -2
-
-.SH CONTROL TRANSFERS
-.LP
-The control endpoint is typically used to set up the device and to query device
-status or configuration.
-.sp
-.LP
-Applications requiring I/O on a control endpoint should open the corresponding
-logical device name and use regular UNIX I/O system calls. For example:
-\fBread\fR(2), \fBwrite\fR(2), \fBaioread\fR(3C) and \fBaiowrite\fR(3C).
-\fBpoll\fR(2) is not supported on control endpoints.
-.sp
-.LP
-A control endpoint must be opened with \fBO_RDWR\fR since it is bidirectional.
-It cannot be opened with \fBO_NONBLOCK\fR or \fBO_NDELAY\fR.
-.sp
-.LP
-For example:
-.sp
-.in +2
-.nf
-fd = open("/dev/usb/472.b0b0/0/cntrl0", O_RDWR);
-
-.fi
-.in -2
-
-.sp
-.in +2
-.nf
-fdstat = open("/dev/usb/472.b0b0/0/cntrl0stat", O_RDONLY);
-.fi
-.in -2
-
-.sp
-.LP
-Control endpoints can be read and written. A \fBread\fR operation receives data
-\fBfrom\fR the device and a \fBwrite\fR operation sends data \fBto\fR the
-device.
-.sp
-.LP
-To perform a control-IN transfer, perform a \fBwrite\fR(2) of USB setup data
-(see section 9.3 of the \fIUSB 1.1\fR or \fI2.0\fR specifications) followed by
-a \fBread\fR(2) on the same control endpoint to fetch the desired data. For
-example:
-.sp
-.in +2
-.nf
-void init_cntrl_req(
- uchar_t *req, uchar_t bmRequestType, uchar_t bRequest,
- ushort_t wValue, ushort_t wIndex, ushort_t wLength) {
- req[0] = bmRequestType;
- req[1] = bRequest;
- req[2] = 0xFF & wValue;
- req[3] = 0xFF & (wValue >> 8);
- req[4] = 0xFF & wIndex;
- req[5] = 0xFF & (wIndex >> 8);
- req[6] = 0xFF & wLength;
- req[7] = 0xFF & (wLength >> 8);
-}
-
- ....
-
-
- uchar_t dev_descr_req[8];
- usb_dev_descr_t descr;
-
- init_cntrl_req(dev_descr_req,
- USB_DEV_REQ_DEV_TO_HOST, USB_REQ_GET_DESCR,
- USB_DESCR_TYPE_SETUP_DEV, 0, sizeof (descr));
-
- count = write(fd, dev_descr_req, sizeof (dev_descr_req));
- if (count != sizeof (dev_descr_req)) {
- /* do some error recovery */
- ...
- }
-
- count = read(fd, &descr, sizeof (descr));
- if (count != sizeof (descr)) {
- /* do some error recovery */
- }
-.fi
-.in -2
-
-.sp
-.LP
-The application can issue any number of reads to read data received on a
-control endpoint. \fBugen\fR successfully completes all reads, returning the
-number of bytes transferred. Zero is returned when there is no data to
-transfer.
-.sp
-.LP
-If the \fBread\fR/\fBwrite\fR fails and returns \fB-1\fR, you can access the
-endpoint's status device logical name for precise error information:
-.sp
-.in +2
-.nf
- int status;
-
- count = read(fdstat, &status, sizeof (status));
- if (count == sizeof (status)) {
- switch (status) {
- case USB_LC_STAT_SUSPENDED:
- case USB_LC_STAT_DISCONNECTED:
- /* close all endpoints */
- ...
- break;
- default:
- ...
- break;
- }
- }
-.fi
-.in -2
-
-.sp
-.LP
-Refer to the ERRORS section for all possible error values.
-.sp
-.LP
-To perform a control-OUT transfer, send in a single transfer, the USB setup
-data followed by any accompanying data bytes.
-.sp
-.in +2
-.nf
- /* 1st 8 bytes of wbuf are setup. */
- init_cntrl_req(wbuf, .......);
-
- /* Data bytes begin at byte 8 of wbuf. */
- bcopy(data, &wuf[8], sizeof (data));
-
- /* Send it all in a single transfer. */
- count = write(fd, wbuf, sizeof (wbuf));
-.fi
-.in -2
-
-.sp
-.LP
-A \fBwrite\fR(2) returns the number of bytes (both setup and data) actually
-transferred, (whether or not the \fBwrite\fR is completely successful),
-provided that some data is actually transferred. When no data is transferred,
-\fBwrite\fR(2) returns \fB-1\fR. Applications can read the corresponding
-endpoint status to retrieve detailed error information. Note that it is an
-error to specify a size different than:
-.sp
-.LP
-(number of data bytes + number of setup bytes).
-.sp
-.LP
-Here is a more extensive example which gets all descriptors of a device
-configuration. For sake of brevity, uninteresting parts are omitted.
-.sp
-.in +2
-.nf
- #include <sys/usb/usba.h>
- #include <sys/usb/clients/ugen/usb_ugen.h>
-
- uchar_t *config_cloud;
- uchar_t *curr_descr;
-
- uchar_t *bytes;
-
- int curr_descr_len;
- int curr_descr_type;
-
- usb_cfg_descr_t cfg_descr;
- usb_if_descr_t if_descr;
- usb_ep_descr_t ep_descr;
-
- /* See 9.13 of USB 2.0 spec for ordering. */
- static char *pipetypes[] = {
- "Control", "Isochronous", "Bulk", "Interrupt"
- };
-
- /*
- * Setup to send a request to read just the config descriptor. The
- * size of the whole cloud, containing all cfg, interface, endpoint,
- * class and vendor-specific descriptors, will be returned as part of
- * the config descriptor.
- */
- init_cntrl_req(&setup_data, USB_DEV_REQ_DEV_TO_HOST, USB_REQ_GET_DESCR,
- USB_DESCR_TYPE_SETUP_CFG, 0, USB_CFG_DESCR_SIZE);
-
- /*
- * Write setup data. USB device will prepare to return the whole
- * config cloud as a response to this. We will read this separately.
- */
- count = write(ctrl_fd, &setup_data, sizeof (setup_data));
- if (count != sizeof (setup_data)) {
- /* Error recovery. */
- } else {
- count = read(ctrl_fd, &cfg_descr, USB_CFG_DESCR_SIZE);
- if (count != USB_CFG_DESCR_SIZE) {
- /* Error recovery. */
- }
- }
-
- /* USB data is little endian. */
- bytes = (uchar_t *)(&cfg_descr.wTotalLength);
- totalLength = bytes[0] + (bytes[1] << 8);
-
- /*
- * The size of the whole cloud is in the bLength field. Set up
- * to read this amount of data, to get the whole cloud.
- */
- config_cloud = malloc(totalLength);
-
- init_cntrl_req(&setup_data, USB_DEV_REQ_DEV_TO_HOST, USB_REQ_GET_DESCR,
- USB_DESCR_TYPE_SETUP_CFG, 0, totalLength);
-
- count = write(ctrl_fd, &setup_data, sizeof (setup_data));
- if (count != sizeof (setup_data)) {
- /* Error recovery. */
- } else {
- count = read(ctrl_fd, config_cloud, totalLength);
- if (count != totalLength) {
- /* Error recovery. */
- }
- }
-
- /* Got the data. Now loop, dumping out the descriptors found. */
-
- curr_descr = config_cloud;
- offset = 0;
- while (offset < totalLength) {
-
- /* All descr have length and type at offset 0 and 1 */
- curr_descr_len = curr_descr[0];
- curr_descr_type = curr_descr[1];
-
- switch (curr_descr_type) {
- case USB_DESCR_TYPE_CFG:
-
- /*
- * Copy data into separate structure, needed for
- * proper alignment of all non char fields. Note:
- * non-char fields of all descriptors begin on aligned
- * boundaries. The issue is that some structures may
- * be adjacent to others which have an odd-numbered
- * byte size, and may thus start on an odd-numbered
- * boundary. */
- bcopy(curr_descr, &cfg_descr, curr_descr_len);
-
- /* Remember to read any words in endian-neutral way. */
-
- (void) printf("\enConfig %d found.\en",
- cfg_descr.bConfigurationValue);
- break;
-
- case USB_DESCR_TYPE_IF:
- bcopy(curr_descr, &if_descr, curr_descr_len);
- (void) printf("\en\etInterface %d, Alt %d found.\en",
- if_descr.bInterfaceNumber,
- if_descr.bAlternateSetting);
- break;
-
- case USB_DESCR_TYPE_EP:
- bcopy(curr_descr, &ep_descr, curr_descr_len);
- (void) printf("\en\et\etEndpoint %d (%s-%s) found.\en",
- (ep_descr.bEndpointAddress & USB_EP_NUM_MASK),
- (pipetypes[
- ep_descr.bmAttributes & USB_EP_ATTR_MASK]),
- ((ep_descr.bEndpointAddress &
- USB_EP_DIR_IN) ? "IN" : "OUT"));
- break;
-
- default:
- (void) printf(
- "\en\et\et\etOther descriptor found. Type:%d\en",
- curr_descr_type);
- break;
- }
-
- offset += curr_descr_len;
- curr_descr = &config_cloud[offset];
- }
-.fi
-.in -2
-
-.SH INTERRUPT-IN TRANSFERS
-.LP
-Applications requiring data from an interrupt-IN endpoint should open the
-corresponding logical device name and use \fBread\fR(2), \fBaioread\fR(3C) and
-\fBpoll\fR(2) system calls.
-.sp
-.LP
-An interrupt-IN endpoint must be opened with \fBO_RDONLY\fR. It can also be
-opened using \fBO_NONBLOCK\fR or \fBO_NDELAY\fR if desired.
-.sp
-.in +2
-.nf
-fd = open("/dev/usb/472.b0b0/0/if0in1", O_RDONLY);
-.fi
-.in -2
-
-.sp
-.in +2
-.nf
-fdstat = open("/dev/usb/472.b0b0/0/if0in1stat", O_RDONLY);
-
-.fi
-.in -2
-
-.sp
-.LP
-\fBugen\fR starts polling interrupt\(emIN endpoints immediately upon opening
-them and stops polling them upon closure. (Polling refers to interrogation of
-the device by the driver and should not be confused with \fBpoll\fR(2), which
-is an interrogation of the driver by the application.)
-.sp
-.LP
-A \fBread\fR(2) of an endpoint opened with the \fBO_NONBLOCK\fR or
-\fBO_NDELAY\fR flags set will not block when there is insufficient data
-available to satisfy the request. The \fBread\fR simply returns what it can
-without signifying any error.
-.sp
-.LP
-Applications should continuously check for and consume interrupt data.
-\fBugen\fR enables buffering of up to one second of incoming data. In case of
-buffer overflow, \fBugen\fR stops polling the interrupt-IN endpoint until the
-application consumes all the data. In this case, a \fBread\fR(2) of an empty
-buffer returns \fB-1\fR, sets the endpoint status to
-\fBUSB_LC_STAT_INTR_BUF_FULL\fR (to indicate that the buffer had been full and
-polling had been stopped) and causes \fBugen\fR to start polling the endpoint
-again. To retrieve the status, the application can open and read the
-corresponding endpoint's status device logical name.
-.sp
-.in +2
-.nf
-for (;;) {
- count = read(fd, buf, sizeof(buf));
- if (count == -1) {
- int cnt, status;
-
- cnt = read(fdstat, &status, sizeof (status));
- if (cnt == -1) {
- /* more error recovery here */
- } else {
- switch (status) {
- case USB_LC_STAT_INTR_BUF_FULL:
- ...
- break;
- default:
- ...
- break;
- }
- }
- }
- /* process the data */
- ....
- }
-.fi
-.in -2
-
-.sp
-.LP
-\fBugen\fR will never drop data. However, the device may drop data if the
-application cannot read it at the rate that it is produced.
-.sp
-.LP
-Applications requiring unbuffered data from an interrupt-IN endpoint should
-open the associated status endpoint with O_RDWR before opening the associated
-interrupt-IN endpoint and write a control byte with USB_EP_INTR_ONE_XFER set.
-All other bits are reserved and should be 0.
-.sp
-.LP
-"One transfer" mode will persist until disabled explicitly after the associated
-interrupt-IN endpoint has been closed by writing a control byte with
-USB_EP_INTR_ONE_XFER cleared.
-.sp
-.LP
-"One transfer" mode is implicitly disabled when the status/control endpoint is
-closed.
-.sp
-.LP
-Attempts to change the "one transfer" mode while the endpoint is open will
-result in \fBEINVAL\fR.
-.sp
-.LP
-An application can open multiple interrupt-IN endpoints and can call
-\fBpoll\fR(2) to monitor the availability of new data. (Note: poll works with
-interrupt-IN data endpoints, not their status endpoints.)
-.sp
-.in +2
-.nf
- struct pollfd pfd[2];
-
- bzero(pfd, sizeof (pfd));
- pfd[0].fd = fd1; /* fd1 is one interrupt-IN endpoint. */
- pfd[0].events = POLLIN;
- pfd[1].fd = fd2; /* fd2 is another interrupt-IN endpoint. */
- pfd[1].events = POLLIN;
-
- for (;;) {
- poll(pfd, 2, -1);
-
- if (pfd[0].revents & POLLIN) {
- count = read(fd1, buf, sizeof (buf));
- ....
- }
- if (pfd[1].revents & POLLIN) {
- count = read(fd2, buf, sizeof (buf));
- ....
- }
- }
-.fi
-.in -2
-
-.sp
-.LP
-You can monitor the device status endpoint via \fBpoll\fR(2) concurrently with
-the multiple interrupt-IN endpoints. Simply add another pollfd element to the
-pfd array in the previous code example, and initialize the new element's
-\fBfd\fR field with the file descriptor of the device status endpoint (opened
-without O_NONBLOCK or O_NDELAY). Set the new element's event field to POLLIN
-like the other elements. Note that only interrupt-IN endpoints and the device
-status endpoint can be monitored using \fBpoll\fR(2).
-.SH INTERRUPT-OUT TRANSFERS
-.LP
-Applications requiring output on an interrupt-OUT endpoint can open the
-corresponding logical device name and perform regular UNIX I/O system calls
-such as \fBwrite\fR(2) and \fBaiowrite\fR(3C).
-.sp
-.LP
-An interrupt-OUT endpoint must be opened with O_WRONLY.
-.sp
-.in +2
-.nf
-fd = open("/dev/usb/472.b0b0/0/if0out3", O_WRONLY);
-
-fdstat = open("/dev/usb/472.b0b0/0/if0out3stat", O_RDONLY);
-
-
-.fi
-.in -2
-
-.sp
-.LP
-Data can be written to an interrupt-OUT endpoint as follows:
-.sp
-.in +2
-.nf
- count = write(fd, buf, sizeof (buf)):
- if (count == -1) {
- /* error recovery */
- }
-.fi
-.in -2
-
-.SH BULK TRANSFERS
-.LP
-Applications requiring I/O on a bulk endpoint can open the corresponding
-logical device name and perform regular UNIX I/O system calls. For example:
-\fBread\fR(2), \fBwrite\fR(2), \fBaioread\fR(3C) and \fBaiowrite\fR(3C).
-\fBpoll\fR(2) is not supported on bulk endpoints.
-.sp
-.LP
-A bulk endpoint must be opened with \fBO_RDONLY\fR or \fBO_WRONLY\fR and cannot
-be opened with \fBO_NONBLOCK\fR or \fBO_NDELAY:\fR
-.sp
-.in +2
-.nf
-fd = open("/dev/usb/472.b0b0/0/if0in2", O_RDONLY);
-.fi
-.in -2
-
-.sp
-.in +2
-.nf
-fdstat = open("/dev/usb/472.b0b0/0/if0in2stat", O_RDONLY);
-.fi
-.in -2
-
-.sp
-.LP
-Data can be read from a bulk-IN endpoint as follows:
-.sp
-.in +2
-.nf
- count = read(fd, buf, sizeof (buf)):
- if (count == -1) {
- /* error recovery */
- }
-
- Data can be written to a bulk-OUT endpoint as follows:
-
- count = write(fd, buf, sizeof (buf)):
- if (count == -1) {
- /* error recovery */
- }
-.fi
-.in -2
-
-.SH ISOCHRONOUS TRANSFERS
-.LP
-Applications requiring I/O on an isochronous endpoint can open the
-corresponding logical device name and perform regular UNIX I/O system calls
-such as \fBread\fR(2), \fBwrite\fR(2), \fBpoll\fR(2), \fBaioread\fR(3C) and
-\fBaiowrite\fR(3C). An isochronous endpoint must be opened with \fBO_RDWR\fR.
-.sp
-.in +2
-.nf
-fd = open("/dev/usb/472.b0b0/0/if0.3in2", O_RDWR);
-
-fdstat = open("/dev/usb/472.b0b0/0/if0.3in2stat", O_RDONLY);
-.fi
-.in -2
-
-.sp
-.LP
-Applications can use the status logical name to retrieve the state of the
-isochronous data endpoint, including details on why the most recent transfer
-failed.
-.sp
-.LP
-Applications have the flexibility to specify the number of isochronous packets
-and the size of individual packets they want to transfer. Applications should
-use the following data structures to exchange isochronous packet information
-with the \fBugen\fR driver:
-.sp
-.in +2
-.nf
-typedef struct ugen_isoc_pkt_descr {
- /*
- * Set by the application, for all isochro.
- * requests, to the num. of bytes to xfer
- * in a packet.
- */
- ushort_t dsc_isoc_pkt_len;
-
- /*
- * Set by ugen to actual num. of bytes sent/received
- * in a packet.
- */
- ushort_t dsc_isoc_pkt_actual_len;
-
- /*
- * Per pkt. status set by ugen driver both for the
- * isochronous IN and OUT requests. Application can
- * use USB_LC_STAT_* to parse the status.
- */
- int dsc_isoc_pkt_status;
- } ugen_isoc_pkt_descr_t;
-
- typedef struct ugen_isoc_req_head {
- /* pkt count of the isoc request */
- int req_isoc_pkts_count;
-
- /* pkt descriptors */
- ugen_isoc_pkt_descr_t req_isoc_pkt_descrs[1];
- } ugen_isoc_req_head_t;
-.fi
-.in -2
-
-.sp
-.LP
-\fBreq_isoc_pkts_count\fR is limited by the capability of the USB host
-controller driver. The current upper bound for the \fBuhci\fR and \fBohci\fR
-drivers is 512. The upper bound for the \fBehci\fR driver is 1024.
-.sp
-.LP
-For an isochronous-IN endpoint, applications must first use the
-\fBugen_isoc_req_head_t\fR structure followed by \fBugen_isoc_pkt_descr_t\fR to
-write packet request information to the \fBugen\fR node. The \fBugen\fR driver
-then checks the validity of the request. If it is valid, the driver immediately
-begins isochronous polling on the IN endpoint and applications can proceed with
-\fBread\fR(2) of the data on the isochronous-IN endpoint. Upon successful
-return of \fBread\fR(2), isochronous packet descriptors (whose
-\fBdsc_isoc_pkt_actual_len\fR and \fBdsc_isoc_pkt_status\fR fields were filled
-by the driver) are returned, followed by the request's device payload data.
-.sp
-.LP
-Applications should continuously check for and consume isochronous data. The
-\fBugen\fR driver enables buffering of up to eight seconds of incoming data for
-full-speed isochronous endpoint, one second of data for high-speed isochronous
-endpoints who request one transaction per microframe and 1/3 of a second of
-incoming data for high-speed high-bandwidth isochronous endpoints who request
-three transactions per microframe. In case of buffer overflow, \fBugen\fR
-discards the oldest data.
-.sp
-.LP
-The isochronous-IN polling can only be stopped by a \fBclose\fR(2) associated
-file descriptor. If applications want to change packet information, they must
-first \fBclose\fR(2) the endpoint to stop the isochronous-IN polling, then
-\fBopen\fR(2) the endpoint and \fBwrite\fR(2) new packets request.
-.sp
-.LP
-The following example shows how to read an isochronous-IN endpoint:
-.sp
-.in +2
-.nf
- #include <sys/usb/clients/ugen/usb_ugen.h>
-
- char *buf, *p;
- ushort_t pktlen;
- int pktcnt, i;
- int len;
- ugen_isoc_req_head_t *req;
- ugen_isoc_pkt_descr_t *pktdesc;
- char rdbuf[5000];
-
- pktcnt = 4; /* 4 packets in this request */
-
- len = sizeof(int) +
- sizeof(ugen_isoc_pkt_descr_t) * pktcount;
-
- buf = malloc(len);
- if (!buf) {
- /* Error recovery. */
- }
-
- req = (ugen_isoc_req_head_t *)buf;
- req->req_isoc_pkts_count = pktcnt;
-
- pktdesc = (ugen_isoc_pkt_descr_t *)
- (req->req_isoc_pkt_descrs);
-
- for (i = 0; i < pktcnt; i++) {
- /*
- * pktlen should not exceed xfer
- * capability of an endpoint
- */
- pktdesc[i].dsc_isoc_pkt_len = pktlen;
-
- pktdesc[i].dsc_isoc_pkt_actual_len = 0;
- pktdesc[i].dsc_isoc_pkt_status = 0;
- }
-
- /*
- * write request info to driver and len must
- * be exactly the sum of
- * sizeof(int) + sizeof(ugen_isoc_pkt_descr_t) * pktcnt.
- * Otherwise, an error is returned.
- */
- if (write(fd, buf, len) < 0) {
- /* Error recovery. */
- }
-
- /*
- * Read length should be sum of all pkt descriptors
- * length + payload data length of all pkts
- * (sizeof(ugen_isoc_pkt_descr_t) + pktlen) * pktcnt
- */
- if (read(fd, rdbuf, (sizeof(ugen_isoc_pkt_descr_t) +
- pktlen) * pktcnt) < 0) {
- /* Error recovery. */
- }
-
- pktdesc = (ugen_isoc_pkt_descr_t *) rdbuf;
-
- /* points to payload beginning */
- p = rdbuf + pktcnt * sizeof(ugen_isoc_pkt_descr_t);
-
- for (i = 0; i < pktcnt; i++) {
- printf("packet %d len = %d,"
- " actual_len = %d, status = 0x%x\en",
- i, pktdesc->dsc_isoc_pkt_len,
- pktdesc->dsc_isoc_pkt_actual_len,
- pktdesc->dsc_isoc_pkt_status);
-
- /* Processing data */
-
- /*
- * next packet data payload, do NOT use
- * dsc_isoc_pkt_actual_len
- */
- p += pktdesc->dsc_isoc_pkt_len;
-
- pktdesc++;
- }
-.fi
-.in -2
-
-.sp
-.LP
-For an isochronous-OUT endpoint, applications use the same packet descriptor
-and request structures to write request information to the \fBugen\fR node.
-Following the packet request head information is the packet payload data. Upon
-successful return of \fBwrite\fR(2), applications can \fBread\fR(2) the same
-\fBugen\fR file immediately to retrieve the individual packet transfer status
-of the last request. If the application isn't concerned about the status, it
-can omit it.
-.sp
-.LP
-In the following example, an application transfers data on an isochronous-OUT
-endpoint:
-.sp
-.in +2
-.nf
- #include <sys/usb/clients/ugen/usb_ugen.h>
- char *buf, *p;
- ushort_t i, pktlen;
- int len, pktcnt;
- ugen_isoc_req_head_t *req;
- ugen_isoc_pkt_descr_t *pktdesc;
- char rdbuf[4096];
-
- pktcnt = 4;
-
- /*
- * set packet length to a proper value, don't
- * exceed endpoint's capability
- */
- pktlen = 1024;
-
- len = sizeof(int) +
- sizeof(ugen_isoc_pkt_descr_t) * pktcount;
-
- len += pktlen * pktcnt;
-
- buf = malloc(len);
- if (!buf) {
- /* Error recovery. */
- }
-
- req = (ugen_isoc_req_head_t *)buf;
- req->req_isoc_pkts_count = pktcnt;
-
- pktdesc =
- (ugen_isoc_pkt_descr_t *)(req->req_isoc_pkt_descrs);
-
- for (i = 0; i < pktcnt; i++) {
- pktdesc[i].dsc_isoc_pkt_len = pktlen;
- pktdesc[i].dsc_isoc_pkt_actual_len = 0;
- pktdesc[i].dsc_isoc_pkt_status = 0;
- }
-
- /* moving to beginning of payload data */
- p = buf + sizeof(int) + sizeof(*pktdesc) * pktcnt;
- for (i = 0; i < pktcnt; i++) {
-
- /* fill in the data buffer */
-
- p += pktlen;
- }
-
- /*
- * write packet request information and data to ugen driver
- *
- * len should be the exact value of sizeof(int) +
- * sizeof(ugen_isoc_pkt_descr_t) * pktcnt + payload length
- */
- if (write(fd, buf, len) < 0) {
- /* Error recovery. */
- }
-
- /* read packet status */
- if (read(fd, rdbuf, sizeof(*pktdesc) * pktcnt) < 0) {
-
- /* Error recovery. */
-
- } else {
-
- /* Parse every packet's transfer status */
-
- }
-.fi
-.in -2
-
-.SH ERRORS
-.LP
-The following statuses are returned by endpoint status device logical names:
-.sp
-.ne 2
-.na
-\fBUSB_LC_STAT_NOERROR\fR
-.ad
-.sp .6
-.RS 4n
-No error.
-.RE
-
-.sp
-.ne 2
-.na
-\fBUSB_LC_STAT_CRC\fR
-.ad
-.sp .6
-.RS 4n
-CRC error detected.
-.RE
-
-.sp
-.ne 2
-.na
-\fBUSB_LC_STAT_BITSTUFFING\fR
-.ad
-.sp .6
-.RS 4n
-Bit stuffing error.
-.RE
-
-.sp
-.ne 2
-.na
-\fBUSB_LC_STAT_DATA_TOGGLE_MM\fR
-.ad
-.sp .6
-.RS 4n
-Data toggle did not match.
-.RE
-
-.sp
-.ne 2
-.na
-\fBUSB_LC_STAT_STALL\fR
-.ad
-.sp .6
-.RS 4n
-Endpoint returned stall.
-.RE
-
-.sp
-.ne 2
-.na
-\fBUSB_LC_STAT_DEV_NOT_RESP\fR
-.ad
-.sp .6
-.RS 4n
-Device not responding.
-.RE
-
-.sp
-.ne 2
-.na
-\fBUSB_LC_STAT_UNEXP_PID\fR
-.ad
-.sp .6
-.RS 4n
-Unexpected Packet Identifier (PID).
-.RE
-
-.sp
-.ne 2
-.na
-\fBUSB_LC_STAT_PID_CHECKFAILURE\fR
-.ad
-.sp .6
-.RS 4n
-Check bits on PID failed.
-.RE
-
-.sp
-.ne 2
-.na
-\fBUSB_LC_STAT_DATA_OVERRUN\fR
-.ad
-.sp .6
-.RS 4n
-Data overrun.
-.RE
-
-.sp
-.ne 2
-.na
-\fBUSB_LC_STAT_DATA_UNDERRUN\fR
-.ad
-.sp .6
-.RS 4n
-Data underrun.
-.RE
-
-.sp
-.ne 2
-.na
-\fBUSB_LC_STAT_BUFFER_OVERRUN\fR
-.ad
-.sp .6
-.RS 4n
-Buffer overrun.
-.RE
-
-.sp
-.ne 2
-.na
-\fBUSB_LC_STAT_BUFFER_UNDERRUN\fR
-.ad
-.sp .6
-.RS 4n
-Buffer underrun.
-.RE
-
-.sp
-.ne 2
-.na
-\fBUSB_LC_STAT_TIMEOUT\fR
-.ad
-.sp .6
-.RS 4n
-Command timed out.
-.RE
-
-.sp
-.ne 2
-.na
-\fBUSB_LC_STAT_NOT_ACCESSED\fR
-.ad
-.sp .6
-.RS 4n
-Not accessed by the hardware.
-.RE
-
-.sp
-.ne 2
-.na
-\fBUSB_LC_STAT_UNSPECIFIED_ERR\fR
-.ad
-.sp .6
-.RS 4n
-Unspecified USBA or HCD error.
-.RE
-
-.sp
-.ne 2
-.na
-\fBUSB_LC_STAT_NO_BANDWIDTH\fR
-.ad
-.sp .6
-.RS 4n
-No bandwidth available.
-.RE
-
-.sp
-.ne 2
-.na
-\fBUSB_LC_STAT_HW_ERR\fR
-.ad
-.sp .6
-.RS 4n
-Host Controller h/w error.
-.RE
-
-.sp
-.ne 2
-.na
-\fBUSB_LC_STAT_SUSPENDED\fR
-.ad
-.sp .6
-.RS 4n
-Device was suspended.
-.RE
-
-.sp
-.ne 2
-.na
-\fBUSB_LC_STAT_DISCONNECTED\fR
-.ad
-.sp .6
-.RS 4n
-Device was disconnected.
-.RE
-
-.sp
-.ne 2
-.na
-\fBUSB_LC_STAT_INTR_BUF_FULL\fR
-.ad
-.sp .6
-.RS 4n
-Polling was stopped as the interrupt-IN data buffer was full. Buffer is now
-empty and polling has been resumed.
-.RE
-
-.sp
-.ne 2
-.na
-\fBUSB_LC_STAT_INTERRUPTED\fR
-.ad
-.sp .6
-.RS 4n
-Request was interrupted.
-.RE
-
-.sp
-.ne 2
-.na
-\fBUSB_LC_STAT_NO_RESOURCES\fR
-.ad
-.sp .6
-.RS 4n
-No resources available for request.
-.RE
-
-.sp
-.ne 2
-.na
-\fBUSB_LC_STAT_INTR_POLLING_FAILED\fR
-.ad
-.sp .6
-.RS 4n
-Failed to restart polling.
-.RE
-
-.sp
-.ne 2
-.na
-\fBUSB_LC_STAT_ISOC_POLLING_FAILED\fR
-.ad
-.sp .6
-.RS 4n
-Failed to start isochronous polling.
-.RE
-
-.sp
-.ne 2
-.na
-\fBUSB_LC_STAT_ISOC_UNINITIALIZED\fR
-.ad
-.sp .6
-.RS 4n
-Isochronous packet information not initialized.
-.RE
-
-.sp
-.ne 2
-.na
-\fBUSB_LC_STAT_ISOC_PKT_ERROR\fR
-.ad
-.sp .6
-.RS 4n
-All packets in this isochronous request have errors. The polling on this
-isochronous-IN endpoint is suspended and can be resumed on next \fBread\fR(2).
-.RE
-
-.sp
-.LP
-The following system call \fBerrno\fR values are returned:
-.sp
-.ne 2
-.na
-\fB\fBEINVAL\fR\fR
-.ad
-.RS 11n
-An attempt was made to enable or disable "one transfer" mode while the
-associated endpoint was open.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEBUSY\fR\fR
-.ad
-.RS 11n
-The endpoint has been opened and another open is attempted.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEACCES\fR\fR
-.ad
-.RS 11n
-An endpoint open was attempted with incorrect flags.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBENOTSUP\fR\fR
-.ad
-.RS 11n
-Operation not supported.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBENXIO\fR\fR
-.ad
-.RS 11n
-Device associated with the file descriptor does not exist.
-.RE
-
-.sp
-.ne 2
-.na
-\fBENODEV\fR
-.ad
-.RS 11n
-Device has been hot-removed or a suspend/resume happened before this command.
-.RE
-
-.sp
-.ne 2
-.na
-\fBEIO\fR
-.ad
-.RS 11n
-An I/O error occurred. Send a read on the endpoint status minor node to get the
-exact error information.
-.RE
-
-.sp
-.ne 2
-.na
-\fBEINTR\fR
-.ad
-.RS 11n
-Interrupted system call.
-.RE
-
-.sp
-.ne 2
-.na
-\fBENOMEM\fR
-.ad
-.RS 11n
-No memory for the allocation of internal structures.
-.RE
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/kernel/drv/ugen\fR\fR
-.ad
-.sp .6
-.RS 4n
-32-bit ELF kernel module. (x86).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/ugen\fR\fR
-.ad
-.sp .6
-.RS 4n
-64-bit ELF kernel module. (x86).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/sparcv9/ugen\fR\fR
-.ad
-.sp .6
-.RS 4n
-64-bit ELF kernel module. (SPARC).
-.RE
-
-.sp
-.ne 2
-.na
-/dev/usb/<vid>.<pid>/<N>/cntrl0
-/dev/usb/<vid>.<pid>/<N>/cntrl0stat
-
-/dev/usb/<vid>.<pid>/<N>/if<interface#>
- <in|out|cntrl><endpoint#>
-/dev/usb/<vid>.<pid>/<N>/if<interface#>
- <in|out|cntrl><endpoint#>stat
-
-/dev/usb/<vid>.<pid>/<N>/if<interface#>.
- <alternate><in|out|cntrl<endpoint#>
-/dev/usb/<vid>.<pid>/<N>/if<interface#>.
- <alternate><in|out|cntrl><endpoint#>stat
-
-/dev/usb/<vid>.<pid>/<N>/cfg<value>if<interface#>
- <in|out|cntrl><endpoint#>
-/dev/usb/<vid>.<pid>/<N>/cfg<value>if<interface#>
- <in|out|cntrl<endpoint#stat>
-
-/dev/usb/<vid>.<pid>/<N>/cfg<value>if<interface#>.
- <alternate><in|out|cntrl><endpoint#>
-/dev/usb/<vid>.<pid>/<N>/cfg<value>if<interface#>.
- <alternate><in|out|cntrl><endpoint#>stat
-
-/dev/usb/<vid>.<pid>/<N>/devstat
-
-/dev/usb/<vid>.<pid>/<N>/if<interface#>cntrl0
-/dev/usb/<vid>.<pid>/<N>/if<interface#>cntrl0stat
-.ad
-.sp .6
-.RS 4n
-where \fIN\fR is an integer representing the instance number of this type of
-device. (All logical device names for a single device share the same \fIN\fR.)
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture SPARC & x86, PCI-based systems
-.TE
-
-.SH SEE ALSO
-.LP
-\fBclose\fR(2), \fBpoll\fR(2), \fBread\fR(2),
-\fBwrite\fR(2), \fBaioread\fR(3C), \fBaiowrite\fR(3C), \fBusba\fR(7D),
-\fBusb_dev_descr\fR(9S)
-.SH DIAGNOSTICS
-.LP
-In addition to being logged, the following messages may appear on the system
-console. All messages are formatted in the following manner:
-.sp
-.in +2
-.nf
-Warning: <device path> (ugen<instance num>): Error Message...
-.fi
-.in -2
-.sp
-
-.sp
-.ne 2
-.na
-\fBToo many minor nodes. \fR
-.ad
-.sp .6
-.RS 4n
-Device has too many minor nodes. Not all are available.
-.RE
-
-.sp
-.ne 2
-.na
-\fBInstance number too high (<\fInumber\fR>).\fR
-.ad
-.sp .6
-.RS 4n
-Too many devices are using this driver.
-.RE
-
-.sp
-.ne 2
-.na
-\fBCannot access <device>. Please reconnect.\fR
-.ad
-.sp .6
-.RS 4n
-This device has been disconnected because a device other than the original one
-has been inserted. The driver informs you of this fact by displaying the name
-of the original device.
-.RE
-
-.sp
-.ne 2
-.na
-\fBDevice is not identical to the previous one on this port. Please disconnect
-and reconnect.\fR
-.ad
-.sp .6
-.RS 4n
-Same condition as described above; however in this case, the driver is unable
-to identify the original device with a name string.
-.RE
-
-.SH NOTES
-.LP
-\fBugen\fR returns \fB-1\fR for all commands and sets \fBerrno\fR to
-\fBENODEV\fR when device has been hot-removed or resumed from a suspend. The
-application must close and reopen all open minor nodes to reinstate successful
-communication.
diff --git a/usr/src/man/man7d/uhci.7d b/usr/src/man/man7d/uhci.7d
deleted file mode 100644
index b291369a35..0000000000
--- a/usr/src/man/man7d/uhci.7d
+++ /dev/null
@@ -1,116 +0,0 @@
-'\" te
-.\" Copyright (c) 2005, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH UHCI 7D "May 13, 2017"
-.SH NAME
-uhci \- host controller driver
-.SH SYNOPSIS
-.LP
-.nf
-\fBpcivid,pid@unit-address\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBuhci\fR host controller driver is a \fBUSBA \fR (Solaris USB
-Architecture) compliant nexus driver that supports the \fIUniversal Host
-Controller Interface Specification 1.1\fR, an industry standard developed by
-Intel. The \fBuhci\fR driver supports all USB transfers, including interrupt,
-control, isochronous and bulk.
-.SH FILES
-.ne 2
-.na
-\fB\fB/kernel/drv/uhci\fR\fR
-.ad
-.RS 28n
-32-bit ELF kernel module. (SPARC or x86).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/uhci\fR\fR
-.ad
-.RS 28n
-64-bit ELF kernel module. (x86).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/sparcv9/uhci\fR\fR
-.ad
-.RS 28n
-64-bit SPARC ELF kernel module.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/uhci.conf\fR\fR
-.ad
-.RS 28n
-Driver configuration file.
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-l | l
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture SPARC or x86 PCI-based systems
-.TE
-
-.SH SEE ALSO
-.LP
-\fBattributes\fR(5), \fBehci\fR(7D), \fBhubd\fR(7D), \fBohci\fR(7D),
-\fBusba\fR(7D)
-.sp
-.LP
-\fIWriting Device Drivers\fR
-.sp
-.LP
-\fIUniversal Host Controller Interface Specification for USB 1.1\fR
-.sp
-.LP
-\fIUniversal Serial Bus Specification 2.0\fR
-.sp
-.LP
-\fISystem Administration Guide: Basic Administration\fR
-.SH DIAGNOSTICS
-.LP
-All host controller errors are passed to the client drivers. Root errors are
-documented in \fBhubd\fR(7D).
-.sp
-.LP
-In addition to being logged, the following messages may appear on the system
-console. All messages are formatted in the following manner:
-.sp
-.in +2
-.nf
-WARNING: <device path> <uhci><instance number>>: Error message...
-.fi
-.in -2
-.sp
-
-.sp
-.ne 2
-.na
-\fBNo SOF interrupts have been received. This USB UHCI host controller is
-unusable.\fR
-.ad
-.sp .6
-.RS 4n
-The USB hardware is not generating Start Of Frame interrupts. Please reboot the
-system. If this problem persists, contact your system vendor.
-.RE
-
diff --git a/usr/src/man/man7d/ural.7d b/usr/src/man/man7d/ural.7d
deleted file mode 100644
index b115ce96d9..0000000000
--- a/usr/src/man/man7d/ural.7d
+++ /dev/null
@@ -1,81 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH URAL 7D "May 6, 2008"
-.SH NAME
-ural \- Ralink RT2500USB 802.11b/g Wireless Driver
-.SH DESCRIPTION
-.sp
-.LP
-The \fBural\fR \fI802.11b/g\fR wireless NIC driver is a multi-threaded,
-loadable, clonable, GLDv3-based STREAMS driver supporting the Ralink
-RT2500USB chipset-based NIC's.
-.SH CONFIGURATION
-.sp
-.LP
-The \fBural\fR driver performs auto-negotiation to determine the data rate
-and mode. Supported 802.11b data rates are 1, 2, 5.5 and 11 Mbits/sec.
-Supported \fI802.11g\fR data rates are 1, 2, 5.5, 11, 6, 9, 12, 18, 24, 36, 48
-and 54 Mbits/sec. The \fBural\fR driver supports only BSS networks (also known
-as "ap" or "infrastructure" networks) and "open" (or "open-system") or "shared
-system" authentication.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/dev/ural*\fR\fR
-.ad
-.sp .6
-.RS 4n
-Special character device.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/ural\fR\fR
-.ad
-.sp .6
-.RS 4n
-32-bit ELF kernel module. (x86)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/ural\fR\fR
-.ad
-.sp .6
-.RS 4n
-64-bit ELF kernel module. (x86)
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for a description of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture x86
-_
-Interface Stability Committed
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBdladm\fR(1M), \fBwificonfig\fR(1M), \fBattributes\fR(5), \fBgld\fR(7D),
-\fBdlpi\fR(7P)
-.sp
-.LP
-\fI802.11 - Wireless LAN Media Access Control and Physical Layer
-Specification\fR - IEEE, 2001
diff --git a/usr/src/man/man7d/urtw.7d b/usr/src/man/man7d/urtw.7d
deleted file mode 100644
index 39037a6f2f..0000000000
--- a/usr/src/man/man7d/urtw.7d
+++ /dev/null
@@ -1,78 +0,0 @@
-'\" te
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH URTW 7D "Aug 20, 2009"
-.SH NAME
-urtw \- RealTek RTL8187L/RTL8187B USB 802.11b/g Wireless Driver
-.SH DESCRIPTION
-.sp
-.LP
-The \fBurtw\fR 802.11b/g wireless driver is a multi-threaded, loadable,
-clonable, GLDv3-basedSTREAMS driver supporting the RealTek RTL8187L
-chipset-based wireless devices.
-.SS "Configuration"
-.sp
-.LP
-The \fBurtw\fR driver performs auto-negotiation to determine the data rate and
-mode. Supported 802.11b data rates are 1, 2, 5.5 and 11 Mbits/sec. Supported
-802.11g data rates are 1, 2, 5.5, 11, 6, 9, 12, 8, 24, 36, 48 and 54 Mbits/sec.
-The \fBatu\fR driver supports only BSS networks (also known as\fBap\fR or
-\fBinfrastructure\fR networks) and \fBopen\fR (or \fBopen-system\fR) or
-\fBshared system\fR authentication.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/dev/urtw*\fR\fR
-.ad
-.RS 26n
-Special character device.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/urtw\fR\fR
-.ad
-.RS 26n
-32-bit ELF kernel module. (x86)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/urtw\fR\fR
-.ad
-.RS 26n
-64-bit ELF kernel module. (x86)
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for a description of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture x86
-_
-Interface Stability Committed
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBdladm\fR(1M), \fBwificonfig\fR(1M), \fBattributes\fR(5), \fBgld\fR(7D),
-\fBdlpi\fR(7P)
-.sp
-.LP
-\fI802.11 \(em Wireless LAN Media Access Control and Physical Layer
-Specification, IEEE, 2001\fR
diff --git a/usr/src/man/man7d/usb_ac.7d b/usr/src/man/man7d/usb_ac.7d
deleted file mode 100644
index d0cd3b3a51..0000000000
--- a/usr/src/man/man7d/usb_ac.7d
+++ /dev/null
@@ -1,139 +0,0 @@
-'\" te
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
-.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH USB_AC 7D "May 13, 2009"
-.SH NAME
-usb_ac \- USB audio control driver
-.SH SYNOPSIS
-.LP
-.nf
-sound-control@unit-address
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBusb_ac\fR driver is a USBA (Solaris USB Architecture) compliant client
-driver that supports the \fIUSB Audio Class 1.0\fR specification.
-.sp
-.LP
-The audio control driver is a USB class driver and offers functionality similar
-to the \fBaudiocs\fR (sun4u) and \fBaudiots\fR (Sun Blade 100) drivers which
-use the Solaris audio mixer framework (\fBmixer\fR(7I)). Unlike the
-\fBaudiocs\fR and \fBaudiots\fR drivers, the USB audio device can have
-play-only or record-only capability.
-.sp
-.LP
-Drivers corresponding to other USB audio interfaces on the device, including
-the \fBusb_as\fR(7D) audio streaming driver or the \fBhid\fR(7D) driver, are
-plumbed under the USB audio control driver and do not directly interface with
-user applications.
-.sp
-.LP
-The \fBusb_ac\fR driver supports USB audio class compliant devices with a
-feature unit.
-.SH ERRORS
-.sp
-.LP
-If a device is hot-removed while it is active, all subsequent opens returns
-EIO. All other errors are defined in the \fBaudio\fR(7I) man page.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/usb_ac\fR\fR
-.ad
-.RS 30n
-32-bit x86 ELF kernel module
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/usb_ac\fR\fR
-.ad
-.RS 30n
-64-bit x86 ELF kernel module
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/sparcv9/usb_ac\fR\fR
-.ad
-.RS 30n
-64-bit SPARC ELF kernel module.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/usb_ac.conf\fR\fR
-.ad
-.RS 30n
-USB audio driver configuration file.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture SPARC, x86, PCI-based systems
-_
-Interface Stability Uncommitted
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBcfgadm_usb\fR(1M), \fBioctl\fR(2), \fBattributes\fR(5), \fBhid\fR(7D),
-\fBusba\fR(7D), \fBusb_as\fR(7D), \fBaudio\fR(7I), \fBmixer\fR(7I),
-\fBstreamio\fR(7I), \fBusb_ah\fR(7M)
-.sp
-.LP
-\fIWriting Device Drivers\fR
-.sp
-.LP
-\fIUniversal Serial Bus Specification 1.0 and 1.1\fR
-.sp
-.LP
-\fIUniversal Serial Bus Device Class Definition for Audio Devices, Release
-1.0\fR
-.sp
-.LP
-\fISystem Administration: Basic Administration\fR
-.SH DIAGNOSTICS
-.sp
-.LP
-In addition to being logged, the following messages can appear on the system
-console. All messages are formatted in the following manner:
-.sp
-.in +2
-.nf
-Warning: <device path> (usb_ac<instance num>): Error Message...
-.fi
-.in -2
-.sp
-
-.sp
-.ne 2
-.na
-\fBFailure to plumb audio streams drivers.\fR
-.ad
-.sp .6
-.RS 4n
-The \fBusb\fR audio streaming driver or the \fBhid\fR driver could not be
-plumbed under the audio control driver and the device is not usable.
-.RE
-
diff --git a/usr/src/man/man7d/usb_as.7d b/usr/src/man/man7d/usb_as.7d
deleted file mode 100644
index 1ab1bdb569..0000000000
--- a/usr/src/man/man7d/usb_as.7d
+++ /dev/null
@@ -1,157 +0,0 @@
-'\" te
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
-.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH USB_AS 7D "May 15, 2009"
-.SH NAME
-usb_as \- USB audio streaming driver
-.SH SYNOPSIS
-.LP
-.nf
-sound@unit-address
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBusb_as\fR driver is a USBA (Solaris USB Architecture) compliant client
-driver that supports the \fIUSB Audio Class 1.0\fR specification.
-.sp
-.LP
-The \fBusb_as\fR driver processes audio data messages during play and record
-and sets sample frequency, precision, encoding and other functions on request
-from the USB audio control driver. See \fBusb_ac\fR(7D).
-.sp
-.LP
-This driver is plumbed under the USB audio control driver and does not directly
-interface with the user application.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/usb_as\fR\fR
-.ad
-.RS 30n
-32-bit x86 ELF kernel module
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/usb_as\fR\fR
-.ad
-.RS 30n
-64-bit x86 ELF kernel module
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/sparcv9/usb_as\fR\fR
-.ad
-.RS 30n
-64-bit SPARC ELF kernel module
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture SPARC, x86, PCI-based systems
-_
-Stability level Committed
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBattributes\fR(5), \fBusba\fR(7D), \fBusb_ac\fR(7D), \fBaudio\fR(7I)
-.sp
-.LP
-\fIWriting Device Drivers\fR
-.sp
-.LP
-\fIUniversal Serial Bus Specification 1.0 and 1.1\fR
-.sp
-.LP
-\fISystem Administration Guide: Basic Administration\fR
-.SH DIAGNOSTICS
-.sp
-.LP
-In addition to being logged, the following messages can appear on the system
-console. All messages are formatted in the following manner:
-.sp
-.in +2
-.nf
-Warning: <device path> (usb_as<instance num>): Error Message...
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-where \fI<device path>\fR is the physical path to the device in \fB/devices\fR
-directory.
-.sp
-.ne 2
-.na
-\fBNo bandwidth available.\fR
-.ad
-.sp .6
-.RS 4n
-There is no bandwidth available for the isochronous pipe. As a result, no data
-is transferred during play and record.
-.RE
-
-.sp
-.ne 2
-.na
-\fBOperating a full/high speed audio device on a high speed port is not
-supported.\fR
-.ad
-.sp .6
-.RS 4n
-The USB software does not currently support full or high speed audio devices
-connected to an external USB 2.0 hub that is linked to a port of a USB 2.0 host
-controller. Audio devices must be connected directly to a port of a USB 2.0
-controller or to any USB 1.1 port.
-.RE
-
-.sp
-.ne 2
-.na
-\fBCannot access device. Please reconnect <name>.\fR
-.ad
-.sp .6
-.RS 4n
-There was an error in accessing the device during reconnect. Please reconnect
-the device.
-.RE
-
-.sp
-.ne 2
-.na
-\fBDevice is not identical to the previous one on this port. Please disconnect
-and reconnect.\fR
-.ad
-.sp .6
-.RS 4n
-A USB audio streaming interface was hot-removed while open. A new device was
-hot-inserted which is not identical to the original USB audio device. Please
-disconnect the USB device and reconnect the device to the same port.
-.RE
-
-.SH NOTES
-.sp
-.LP
-The USB audio streaming interface is power managed if the device is idle.
diff --git a/usr/src/man/man7d/usb_ia.7d b/usr/src/man/man7d/usb_ia.7d
deleted file mode 100644
index 206d5c0e1e..0000000000
--- a/usr/src/man/man7d/usb_ia.7d
+++ /dev/null
@@ -1,114 +0,0 @@
-'\" te
-.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH USB_IA 7D "May 13, 2017"
-.SH NAME
-usb_ia \- USB interface association driver
-.SH SYNOPSIS
-.LP
-.nf
-interface association@unit-address
-.fi
-
-.LP
-.nf
-
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBusb_ia\fR driver is a USBA (Solaris Universal Serial Bus
-Architecture)-compliant nexus driver that binds to a device's interface
-association nodes when no vendor or class specific driver is available. To do
-this, \fBusb_ia\fR creates nodes for the internal interfaces and then attempts
-to bind drivers to each child interface.
-.sp
-.LP
-Each interface association node has a parent device node that is created by
-\fBusb_mid\fR(7D) and all \fBugen\fR(7D) interfaces are exported by
-\fBusb_mid\fR(7D). (Note: attempting to export \fBugen\fR(7D) interfaces using
-\fBusb_ia\fR is prohibited.)
-.SH FILES
-.ne 2
-.na
-\fB\fB/kernel/drv/usb_ia\fR\fR
-.ad
-.sp .6
-.RS 4n
-32-bit ELF kernel module. (x86).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/usb_ia\fR\fR
-.ad
-.sp .6
-.RS 4n
-64-bit ELF kernel module. (x86).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/sparcv9/usb_ia\fR\fR
-.ad
-.sp .6
-.RS 4n
-64-bit ELF kernel module. (SPARC).
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture SPARC & x86 PCI-based systems
-.TE
-
-.SH SEE ALSO
-.LP
-\fBattributes\fR(5), \fBugen\fR(7D), \fBusb_mid\fR(7D), \fBusba\fR(7D)
-.sp
-.LP
-\fIWriting Device Drivers\fR
-.sp
-.LP
-\fISystem Administration Guide: Basic Administration\fR
-.sp
-.LP
-\fIUniversal Serial Bus Specification 2.0\fR \(em 2000
-.sp
-.LP
-\fIInterface Association Descriptor Engineering Change Notice (ECN)\fR\(em2003
-.SH DIAGNOSTICS
-.LP
-In addition to being logged, the following messages may appear on the system
-console. All messages are formatted in the following manner:
-.sp
-.in +2
-.nf
-<device path> (usb_ia<instance num>):message...
-.fi
-.in -2
-.sp
-
-.sp
-.ne 2
-.na
-\fBNo driver found for interface <n> (nodename: <string>) of <device>.\fR
-.ad
-.sp .6
-.RS 4n
-No driver is available for this interface.
-.RE
-
diff --git a/usr/src/man/man7d/usb_mid.7d b/usr/src/man/man7d/usb_mid.7d
deleted file mode 100644
index 6baa22f718..0000000000
--- a/usr/src/man/man7d/usb_mid.7d
+++ /dev/null
@@ -1,192 +0,0 @@
-'\" te
-.\" Copyright 2006 Sun Microsystems, Inc. All rights reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH USB_MID 7D "May 13, 2017"
-.SH NAME
-usb_mid \- USB Multi Interface Driver
-.SH SYNOPSIS
-.LP
-.nf
-\fBdevice@\fR\fIunit-address\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBusb_mid\fR driver is a \fBUSBA\fR (Solaris Universal Serial Bus
-Architecture)-compliant nexus driver that binds to device level nodes of a
-composite (multi interface) device if no vendor or class-specific driver is
-available. The \fBusb_mid\fR driver creates interface nodes or interface
-association nodes and attempts to bind drivers to them. If no driver is found
-for interface association nodes, \fBusb_ia\fR(7D) is bound by default.
-.SS "UGEN (Generic USB)"
-.LP
-The \fBusb_mid\fR driver also supports a \fBugen\fR(7D) interface allowing raw
-access to the device, for example by libusb applications, by
-passing the drivers bound to each interface. Since a libusb application might
-change the state of the device, you should not access the device through the
-child interface drivers. Note that the \fBusb_mid\fR driver creates a ugen
-interface only if none of its children are explicitly bound to the
-\fBugen\fR(7D) driver. Additionally, \fBusb_mid\fR does not create children.
-.SH FILES
-.ne 2
-.na
-\fB\fB/kernel/drv/usb_mid\fR \fR
-.ad
-.sp .6
-.RS 4n
-32-bit x86 ELF kernel module
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/usb_mid\fR \fR
-.ad
-.sp .6
-.RS 4n
-64-bit x86 ELF kernel module
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/sparcv9/usb_mid\fR \fR
-.ad
-.sp .6
-.RS 4n
-64-bit SPARC ELF kernel module
-.RE
-
-.sp
-.ne 2
-.na
-\fB/dev/usb/*/*/* \fR
-.ad
-.sp .6
-.RS 4n
-ugen(7D) nodes.
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture SPARC & x86, PCI-based systems
-.TE
-
-.SH SEE ALSO
-.LP
-\fBcfgadm_usb\fR(1M), \fBattributes\fR(5), \fBusba\fR(7D),
-\fBusb_ia\fR(7D)
-.sp
-.LP
-\fIWriting Device Drivers\fR
-.sp
-.LP
-\fIUniversal Serial Bus Specification 2.0\fR\(em2000
-.sp
-.LP
-\fIInterface Association Descriptor Engineering Change Notice (ECN)\fR\(em2003
-.sp
-.LP
-\fISystem Administration Guide: Basic Administration\fR
-.SH DIAGNOSTICS
-.LP
-In addition to being logged, the following messages may appear on the system
-console. All messages are formatted in the following manner:
-.sp
-.in +2
-.nf
-Warning: <device path> (usb_mid<instance number>): Error Message...
-.fi
-.in -2
-.sp
-
-.sp
-.ne 2
-.na
-\fBCannot access <device>. Please reconnect.\fR
-.ad
-.sp .6
-.RS 4n
-This device has been disconnected because a device other than the original one
-has been inserted. The driver informs you of this fact by displaying the name
-of the original device.
-.RE
-
-.sp
-.ne 2
-.na
-\fBDevice not identical to the previous one on this port. Please disconnect and
-reconnect.\fR
-.ad
-.sp .6
-.RS 4n
-Same condition as described above; however in this case, the driver is unable
-to identify the original device with a name string.
-.RE
-
-.sp
-.ne 2
-.na
-\fBPlease disconnect and reconnect this device.\fR
-.ad
-.sp .6
-.RS 4n
-A hotplug of the device is needed before it can be restored.
-.RE
-
-.sp
-.LP
-The following messages may be logged into the system log. They are formatted in
-the following manner:
-.sp
-.in +2
-.nf
-<device path><usb_mid<instance number>): message...
-.fi
-.in -2
-.sp
-
-.sp
-.ne 2
-.na
-\fBNo driver found for interface <n> (nodename: <string>) of <device>. \fR
-.ad
-.sp .6
-.RS 4n
-No driver is available for this interface.
-.RE
-
-.sp
-.ne 2
-.na
-\fBNo driver found for device <device>. \fR
-.ad
-.sp .6
-.RS 4n
-No driver is available for this interface.
-.RE
-
-.sp
-.ne 2
-.na
-\fBCan't support ugen for multiple configuration devices that have attached
-child interface drivers.\fR
-.ad
-.sp .6
-.RS 4n
-No ugen interface is available and libusb cannot work with this
-device.
-.RE
-
diff --git a/usr/src/man/man7d/usba.7d b/usr/src/man/man7d/usba.7d
deleted file mode 100644
index 25cc63c8ea..0000000000
--- a/usr/src/man/man7d/usba.7d
+++ /dev/null
@@ -1,144 +0,0 @@
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 2016 Joyent, Inc.
-.\" Copyright 2020 Peter Tribble.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
-.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.Dd Jan 10, 2020
-.Dt USBA 7D
-.Os
-.Sh NAME
-.Nm usba ,
-.Nm usb
-.Nd illumos USB Architecture (USBA)
-.Sh DESCRIPTION
-USB provides a low-cost means for attaching peripheral devices, including
-mass-storage devices, keyboards, mice, and printers, to a system.
-For complete information on the USB architecture, visit the USB website at
-http://www.usb.org.
-.Pp
-USBA supports 126 hot-pluggable USB devices per USB bus.
-The maximum data transfer rate is 5 Gbits (SuperSpeed USB 3.0), 480 Mbits (high
-speed USB 2.0), 12 Mbits (full speed USB 1.x), or 1.5 Mbits (low speed USB 1.x).
-.Pp
-USBA adheres to the
-.Em Universal Serial Bus 3.0
-specification and provides a transport layer abstraction to USB client
-drivers.
-.Pp
-For information on how to write USB client drivers, see
-.Em Writing Device Drivers .
-For the latest information on writing USB drivers, visit
-.Em http://illumos.org/books/wdd .
-For a complete list of USBA interfaces, see
-.Xr Intro 9F
-or
-.Xr Intro 9S .
-.Pp
-Devices without a driver may be able to leverage libusb.
-.Sh FILES
-Listed below are drivers and modules which either utilize or are utilized by
-USBA.
-.Bl -column -offset indent ".Pa /kernel/drv/[sparcv9|amd64]/usbser_edge" "Edgeport USB to serial port"
-.It Em Client Driver Ta Em Function/Device
-.It Ta
-.It Pa /kernel/drv/[sparcv9|amd64]/hid Ta HID class
-.It Pa /kernel/drv/[sparcv9|amd64]/hubd Ta hub class
-.It Pa /kernel/drv/[sparcv9|amd64]/scsa2usb Ta mass storage class
-.It Pa /kernel/drv/[sparcv9|amd64]/usbprn Ta printer class
-.It Pa /kernel/drv/[sparcv9|amd64]/usb_as Ta audio streaming class
-.It Pa /kernel/drv/[sparcv9|amd64]/usb_ac Ta audio control class
-.It Pa /kernel/drv/[sparcv9|amd64]/usbvc Ta video class
-.It Pa /kernel/drv/[sparcv9|amd64]/usb_mid Ta multi-interface device
-.It Pa /kernel/drv/[sparcv9|amd64]/usb_ia Ta interface-association driver
-.It Pa /kernel/drv/[sparcv9|amd64]/usbser_edge Ta Edgeport USB to serial port
-.It Pa /kernel/drv/[sparcv9|amd64]/usbsksp Ta Keyspan USB to serial port
-.It Pa /kernel/drv/[sparcv9|amd64]/usbsprl Ta pl2303 USB to serial port
-.It Pa /kernel/drv/[sparcv9|amd64]/usbsacm Ta CDC ACM class to serial port
-.It Pa /kernel/drv/[sparcv9|amd64]/ugen Ta generic USB driver
-.El
-.Bl -column -offset indent ".Pa /kernel/strmod/[sparcv9|amd64/]usb_ah" "Function/Device"
-.It Ta
-.It Em Client Streams Modules Ta Em Function/Device
-.It Ta
-.It Pa /kernel/strmod/[sparcv9|amd64]/usbkbm Ta Keyboard
-.It Pa /kernel/strmod/[sparcv9|amd64]/usbms Ta Mouse
-.It Pa /kernel/strmod/[sparcv9|amd64]/usb_ah Ta Audio HID
-.El
-.Bl -column -offset indent ".Em Host Controller Interface Drivers" "Extensible HCI"
-.It Em Host Controller Interface Drivers Ta Em Device
-.It Ta
-.It Pa /kernel/drv/amd64/xhci Ta Extensible HCI
-.It Pa /kernel/drv/[sparcv9|amd64]/ehci Ta Enhanced HCI
-.It Pa /kernel/drv/[sparcv9|amd64]/ohci Ta Open HCI
-.It Pa /kernel/drv/[sparcv9|amd64]/uhci Ta Universal HCI
-.El
-.Sh DIAGNOSTICS
-The messages described below may appear on the system console as well as being
-logged.
-All messages are formatted in the following manner:
-.Bl -tag -width Sy -offset 2n
-.It WARNING: Error message...
-.El
-.Bl -tag -width Sy -offset 2n
-.It Sy no driver found for device <device_name> (interface <number> node
-name=<node_name>)
-The installed software does not contain a supported driver for this
-hardware.
-<number> is the interface number.
-<name> is either the device path name or the device name.
-.It Sy Draining callbacks timed out!
-An internal error occurred.
-Please reboot your system.
-If this problem persists, contact your system vendor.
-.El
-.Pp
-The following messages may be logged into the system log.
-They are formatted in the following manner:
-.Bd -literal -offset 2n
-<device path><usba<instance number>): message...
-.Ed
-.Bl -tag -width Sy -offset 2n
-.It Sy Incorrect USB driver version for <n.m> .
-Driver is incompatible with USBA framework.
-.El
-.Sh SEE ALSO
-.Xr cfgadm_usb 1M ,
-.Xr attributes 5 ,
-.Xr ehci 7D ,
-.Xr hid 7D ,
-.Xr hubd 7D ,
-.Xr ohci 7D ,
-.Xr scsa2usb 7D ,
-.Xr ugen 7D ,
-.Xr uhci 7D ,
-.Xr usb_ac 7D ,
-.Xr usb_as 7D ,
-.Xr usb_ia 7D ,
-.Xr usb_mid 7D ,
-.Xr usbprn 7D ,
-.Xr usbsacm 7D ,
-.Xr usbser_edge 7D ,
-.Xr usbsksp 7D ,
-.Xr usbsprl 7D ,
-.Xr usbvc 7D ,
-.Xr virtualkm 7D ,
-.Xr xhci 7D ,
-.Xr Intro 9F ,
-.Xr Intro 9S
-.Pp
-.Rs
-.%T Writing Device Drivers
-.Re
-.Rs
-.%T Universal Serial Bus Specification 3.0
-.Re
-.Rs
-.%T Interface Association Descriptor Engineering Change Notice (ECN)
-.Re
-.Rs
-.%T System Administration Guide: Basic Administration
-.Re
-.Sh NOTES
-Booting from USB mass-storage devices is not supported on SPARC, but is
-supported on X86.
diff --git a/usr/src/man/man7d/usbftdi.7d b/usr/src/man/man7d/usbftdi.7d
deleted file mode 100644
index 0fc49718d7..0000000000
--- a/usr/src/man/man7d/usbftdi.7d
+++ /dev/null
@@ -1,322 +0,0 @@
-'\" te
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH USBFTDI 7D "Aug 13, 2021"
-.SH NAME
-usbftdi \- FTDI USB to serial converter driver
-.SH SYNOPSIS
-.LP
-.nf
-\fB#include <fcntl.h>\fR
-\fB#include <sys/termio.h>\fR
-\fBusbftdi@unit\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBusbftdi\fR driver is a loadable STREAMS and USBA (Solaris USB
-Architecture) compliant client driver that provides basic asynchronous
-communication support for FTDI USB-to-serial converters. Serial device streams
-are built with appropriate modules that are pushed atop the \fBusbftdi\fR
-driver by the \fBautopush\fR(1M) facility.
-.SS "Application Programming Interface"
-.sp
-.LP
-The \fBusbftdi\fR module supports the \fBtermio\fR(7I) device control functions
-specified by flags in the \fBc_cflag\fR word of the \fBtermios\fR structure,
-and by the \fBIGNBRK, IGNPAR, PARMRK\fR, and \fBINPCK\fR flags in the
-\fBc_iflag\fR word of the \fBtermios\fR structure. All other \fBtermio\fR(7I)
-functions must be performed by STREAMS modules pushed atop the driver. When a
-device is opened, the , \fBldterm\fR(7M) and \fBttcompat\fR(7M) STREAMS modules
-are automatically pushed on top of the stream, providing the standard
-\fBtermio\fR(7I) interface.
-.sp
-.LP
-Use device logical names \fB/dev/term/[0-9]*\fR to access the serial ports for
-a dial-in line that is used with a modem.
-.sp
-.LP
-Use device logical names \fB/dev/cua/[0-9]*\fR to access the serial ports for
-other applications. These names are also used to provide a logical access point
-for a dial-out line.
-.sp
-.LP
-Device hot-removal is functionally equivalent to a modem disconnect event, as
-defined in \fBtermio\fR(7I).
-.sp
-.LP
-Input and output line speeds can be set to the following baud rates: 300, 600,
-1200, 2400, 4800, 9600, 19200, 38400, 57600, 115200, 230400, 460800, 921600,
-2000000, or 3000000. Input and output line speeds can not be set
-independently. For example, when the output speed is set, the input speed is
-automatically set to the same speed.
-.SS "Soft Carrier Capabilities"
-.sp
-.LP
-Many devices that use this USB serial interface component are not, in fact
-dial-in lines connected to carefully configured RS-232 modems. They are often
-intelligent peripherals whose manufacturers want to present a serial port
-interface to application software. Some applications use only three wire
-connections, or are otherwise somewhat casual about the state of the Carrier
-Detect (electrical) signal, and the other modem control lines.
-.sp
-.LP
-The configuration file delivered with this driver, \fBusbftdi.conf\fR,
-acknowledges this by setting the driver property \fBignore-cd\fR to 1. This
-enables \fBsoft carrier\fR mode where the kernel does \fBnot\fR block opens
-waiting for DCD to be asserted.
-.sp
-.LP
-This behavior also matches the default \fBignore carrier detect\fR behavior of
-the onboard serial ports of machines that have them. See \fBeeprom\fR(1M) for
-further details.
-.sp
-.LP
-The \fBhardware carrier\fR behavior (the driver's internal default) can be
-selected by either unsetting (commenting out) the \fBignore-cd\fR property, or
-by setting the value of the property to zero.
-.sp
-.LP
-More sophisticated selection of which devicesl ignore or obey the DCD signal
-can be effected using \fBport-%d-ignore-cd\fR properties.
-.SS "Dial-In and Dial-Out Support"
-.sp
-.LP
-A related feature is available for traditional usage that enables a single tty
-line to be connected to a modem and used for incoming and outgoing calls. By
-accessing through device logical name \fB/dev/cua/[0-9]*\fR, you can open a
-port without the carrier detect signal being asserted, either through hardware
-or an equivalent software mechanism. These devices are commonly known as
-dial-out lines.
-.sp
-.LP
-A dial-in line can be opened only if the corresponding dial-out line is closed.
-A blocking \fB/dev/term\fR open waits until the \fB/dev/cua\fR line is closed,
-which drops Data Terminal Ready, after which Carrier Detect usually drops as
-well. When the carrier is detected again with the \fB/dev/cua\fR device
-remaining closed, this indicates an incoming call and the blocking open seizes
-exclusive use of the line.
-.sp
-.LP
-A non-blocking \fB/dev/term\fR open returns an error if the \fB/dev/cua\fR
-device is open.
-.sp
-.LP
-If the \fB/dev/term\fR line is opened successfully (usually only when carrier
-is recognized on the modem, though see \fBSoft Carrier Capabilities\fR section
-of this manual page), the corresponding \fB/dev/cua\fR line can not be opened.
-This allows a modem and port to be used for dial-in (enabling the line for
-login in \fB/etc/inittab\fR) or dial-out (using \fBtip\fR(1) or \fBuucp\fR(1C))
-when no-one is logged in on the line.
-.SH ERRORS
-.sp
-.LP
-An \fBopen()\fR fails under the following conditions:
-.sp
-.ne 2
-.na
-\fB\fBENXIO\fR\fR
-.ad
-.RS 9n
-The unit being opened does not exist.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEBUSY\fR\fR
-.ad
-.RS 9n
-The \fB/dev/cua\fR (dial-out) device is being opened while the \fB/dev/term\fR
-(dial-in device) is open, or the dial-in device is being opened with a no-delay
-open while the dial-out device is open.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEBUSY\fR\fR
-.ad
-.RS 9n
-The unit has been marked as exclusive-use by another process with a
-\fBTIOCEXCL\fR \fBioctl()\fR call.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEIO\fR\fR
-.ad
-.RS 9n
-USB device I/O error.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/usr/kernel/drv/usbftdi\fR\fR
-.ad
-.sp .6
-.RS 4n
-32-bit x86 ELF kernel module
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/kernel/drv/usbftdi.conf\fR\fR
-.ad
-.sp .6
-.RS 4n
-Kernel module configuration file
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/kernel/drv/amd64/usbftdi\fR\fR
-.ad
-.sp .6
-.RS 4n
-64-bit x86 ELF kernel module
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/kernel/drv/sparcv9/usbftdi\fR\fR
-.ad
-.sp .6
-.RS 4n
-64-bit SPARC ELF kernel module
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/cua/[0-9]*\fR\fR
-.ad
-.sp .6
-.RS 4n
-Dial-out tty lines
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/term/[0-9]*\fR\fR
-.ad
-.sp .6
-.RS 4n
-Dial-in tty lines
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for a description of the following attribute:
-.sp
-
-.sp
-.TS
-box;
-l | l
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture SPARC, x86, PCI-based systems
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBstrconf\fR(1), \fBtip\fR(1), \fBuucp\fR(1C), \fBautopush\fR(1M),
-\fBeeprom\fR(1M), \fBioctl\fR(2), \fBopen\fR(2), \fBtermios\fR(3C),
-\fBusba\fR(7D), \fBtermio\fR(7I), \fBldterm\fR(7M), \fBttcompat\fR(7M),
-\fBeeprom\fR(1M), \fBattributes\fR(5),
-.SH DIAGNOSTICS
-.sp
-.LP
-In addition to being logged, the following messages might appear on the system
-console. All messages are formatted in the following manner:
-.sp
-.in +2
-.nf
-Warning: \fIdevice_path\fR usbftdi\fIinstance num\fR): Error Message ...
-.fi
-.in -2
-.sp
-
-.sp
-.ne 2
-.na
-\fB\fBDevice was disconnected while open. Data may have been lost.\fR\fR
-.ad
-.sp .6
-.RS 4n
-The device has been hot-removed or powered off while it was open and a possible
-data transfer was in progress. The job might be aborted.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBDevice is not identical to the previous one on this port. Please
-disconnect and reconnect.\fR\fR
-.ad
-.sp .6
-.RS 4n
-The device was hot-removed while open. A new device was hot-inserted which is
-not identical to the original device. Please disconnect the device and
-reconnect the original device to the same port.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBDevice has been reconnected, but data may have been lost.\fR\fR
-.ad
-.sp .6
-.RS 4n
-The device that was hot-removed from its USB port has been re-inserted again to
-the same port. It is available for access but data from a previous transfer
-might be lost.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBCannot access \fIdevice\fR. Please reconnect.\fR\fR
-.ad
-.sp .6
-.RS 4n
-This device has been disconnected because a device other than the original one
-has been inserted. The driver informs you of this fact by displaying the name
-of the original device.
-.RE
-
-.sp
-.LP
-The following messages might be logged into the system log. They are formatted
-in the following manner:
-.sp
-.in +2
-.nf
-\fIdevice_path\fR usbftdi\fIiinstance number\fR): message ...
-.fi
-.in -2
-.sp
-
-.sp
-.ne 2
-.na
-\fB\fBInput overrun.\fR\fR
-.ad
-.RS 18n
-Data was lost.
-.RE
-
diff --git a/usr/src/man/man7d/usbprn.7d b/usr/src/man/man7d/usbprn.7d
deleted file mode 100644
index 9f5d326917..0000000000
--- a/usr/src/man/man7d/usbprn.7d
+++ /dev/null
@@ -1,450 +0,0 @@
-'\" te
-.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH USBPRN 7D "May 17, 2020"
-.SH NAME
-usbprn \- USB printer class driver
-.SH SYNOPSIS
-.nf
-#include <sys/usb/clients/printer/usb_printer.h>
-.fi
-
-.LP
-.nf
-#include <sys/ecppio.h>
-.fi
-
-.LP
-.nf
-usbprn@unit-address
-.fi
-
-.SH DESCRIPTION
-The \fBusbprn\fR driver is a USBA (Solaris USB Architecture) compliant client
-driver that supports the \fIUSB Printer Class 1.0\fR specification. The
-\fBusbprn\fR driver supports a subset of the \fBecpp\fR(7D) parallel port
-driver functionality. However, unlike the STREAMS-based \fBecpp\fR driver,
-\fBusbprn\fR is a character driver.
-.sp
-.LP
-The \fBusbprn\fR driver supports all USB printer-class compliant printers.
-.sp
-.LP
-The \fBusbrpn\fR driver includes support for communicating with many different
-printers. To use these printers, it may be necessary to install and configure
-additional format conversion packages available in the Solaris distribution.
-Configuration of these conversion packages under the Solaris printing system
-can be simplified through the use of the \fBprintmgr\fR(1M). This tool allows
-selection of printer manufacturer/model information while creating a print
-queue. For USB connected printers, it attempts to pre-select the
-manufacturer and model information based on the 1284 device id supplied by the
-printer.
-.SS "UGEN (Generic USB)"
-The \fBusbprn\fR driver also supports a \fBugen\fR(7D) interface allowing raw
-access to the device, for example by libusb applications, by
-passing the drivers bound to each interface. Because a libusb application might
-change the state of the device, you should not access the device through the
-child interface drivers.
-.SH DEFAULT OPERATION
-With certain minor exceptions (outlined in the Notes sections below), the
-\fBusbprn\fR driver supports a subset of the \fBecpp\fR(7D) ioctl interfaces:
-.sp
-.LP
-Configuration variables are set to their default values each time the USB
-printer device is attached. The \fBwrite_timeout\fR period (defined in the
-ECPPIOC_SETPARMS ioctl description below) is set to 90 seconds. The mode is set
-to centronics mode (ECPP_CENTRONICS). Parameters can be changed through the
-ECPPIOC_SETPARMS ioctl and read through the ECPPIOC_GETPARMS ioctl. Each time
-the USB printer device is opened, the device is marked as busy and all further
-opens will return EBUSY. Once the device is open, applications can write to the
-device and the driver can send data and obtain device id and status.
-.LP
-Note -
-.sp
-.RS 2
-Unlike the \fBecpp\fR(7D) driver, \fBusbprn\fR resets configuration variables
-to their default values with each \fBattach\fR(9E). (The \fBecpp\fR(7D) driver
-resets configuration variables with each \fBopen\fR(2).)
-.RE
-.SH WRITE OPERATION
-A \fBwrite\fR(2) operation returns the number of bytes successfully written to
-the device. If a failure occurs while a driver is transferring data to printer,
-the contents of the status bits are captured at the time of the error and can
-be retrieved by the application program using the ECPPIOC_GETERR \fBioctl\fR(2)
-call. The captured status information is overwritten each time an
-ECPPIOC_TESTIO \fBioctl\fR(2) occurs.
-.SH IOCTLS
-The \fBusbprn\fR driver supports \fBprnio\fR(7I) interfaces. Note that the
-\fBPRNIOC_RESET\fR command has no effect on USB printers.
-.sp
-.LP
-The following \fBioctl\fR(2) calls are supported for backward compatibility and
-are not recommended for new applications.
-.sp
-.ne 2
-.na
-\fB\fBECPPIOC_GETPARMS\fR\fR
-.ad
-.RS 20n
-Gets current transfer parameters. The argument is a pointer to \fBstruct
-ecpp_transfer_parms\fR. If parameters are not configured after the device is
-opened, the structure will be set to its default configuration.
-.LP
-Note -
-.sp
-.RS 2
-Unlike the \fBecpp\fR(7D) driver, only the ECPP_CENTRONICS mode is currently
-supported in \fBusbprn\fR.
-.RE
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBECPPIOC_SETPARMS\fR\fR
-.ad
-.RS 20n
-Sets transfer parameters. The argument is a pointer to a \fBstruct
-ecpp_transfer_parms\fR. If a parameter is out of range, \fBEINVAL\fR is
-returned. If the peripheral or host device cannot support the requested mode,
-\fBEPROTONOSUPPORT\fR is returned.
-.sp
-The transfer parameters structure is defined in <\fBsys/ecppio.h\fR>:
-.sp
-.in +2
-.nf
-struct ecpp_transfer_parms {
- int write_timeout;
- int mode;
-};
-.fi
-.in -2
-
-The \fBwrite_timeout\fR field, which specifies how long the driver will take to
-transfer 8192 bytes of data to the device, is set to a default value of 90
-seconds. The \fBwrite_timeout\fR field must be greater than one second and less
-than 300 seconds (five minutes.)
-.LP
-Note -
-.sp
-.RS 2
-Unlike the \fBecpp\fR(7D) driver, only the ECPP_CENTRONICS mode is currently
-supported in \fBusbprn\fR. Also, the semantics of \fBwrite_timeout\fR in
-\fBusbprn\fR differ from \fBecpp\fR(7D). Refer to \fBecpp\fR(7D) for
-information.
-.RE
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBBPPIOC_TESTIO\fR\fR
-.ad
-.RS 20n
-Tests the transfer readiness of a print device and checks status bits to
-determine if a \fBwrite\fR(2) will succeed. If status bits are set, a transfer
-will fail. If a transfer will succeed, zero is returned. If a transfer fails,
-the driver returns \fBEIO\fR and the state of the status bits are captured. The
-captured status can be retrieved using the BPPIOC_GETERR \fBioctl\fR(2) call.
-.LP
-Note -
-.sp
-.RS 2
-Unlike the \fBecpp\fR(7D) driver, only the ECPP_CENTRONICS mode is currently
-supported in \fBusbprn\fR. Additionally, \fBbus_error\fR and
-\fBtimeout_occurred\fR fields are not used in the \fBusbprn\fR interface. (In
-\fBecpp\fR(7D), \fBtimeout_occurred\fR is used.)
-.RE
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBBPPIOC_GETERR\fR\fR
-.ad
-.RS 20n
-Get last error status. The argument is a pointer to a \fBstruct
-bpp_error_status\fR. This structure indicates the status of all the appropriate
-status bits at the time of the most recent error condition during a
-\fBwrite\fR(2) call, or the status of the bits at the most recent BPPIOC_TESTIO
-\fBioctl\fR(2) call.
-.sp
-.in +2
-.nf
-struct bpp_error_status {
- char timeout_occurred; /* not used */
- char bus_error; /* not used */
- uchar_t pin_status; /* status of pins which
- /* could cause error */
-};
-.fi
-.in -2
-
-The pin_status field indicates possible error conditions. The error status
-structure \fBbpp_error_status\fR is defined in the include file
-\fB<sys/bpp_io.h>\fR\&. The valid bits for \fBpin_status\fR can be
-\fBBPP_ERR_ERR\fR, \fBBPP_SLCT_ERR\fR, and \fBBPP_PE_ERR\fR. A set bit
-indicates that the associated pin is asserted.
-.LP
-Note -
-.sp
-.RS 2
-Unlike the \fBecpp\fR(7D) driver, only the ECPP_CENTRONICS mode is currently
-supported in \fBusbprn\fR. Additionally, the \fBbus_error\fR and
-\fBtimeout_occurred\fR fields are not used in the \fBusbprn\fR interface. (In
-\fBecpp\fR(7D), \fBtimeout_occurred\fR is used.) Unlike \fBecpp\fR(7D), the
-BPP_BUSY_ERR status bit is not supported by USB printers.
-.RE
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBECPPIOC_GETDEVID\fR\fR
-.ad
-.RS 20n
-Gets the IEEE 1284 device ID from the peripheral. The argument is a pointer to
-a \fBstruct ecpp_device_id\fR. Applications should set mode to ECPP_CENTRONICS.
-If another mode is used, the driver will return \fBEPROTONOSUPPORT\fR.
-\fBlen\fR is the length of the buffer pointed to by \fBaddr\fR. \fBrlen\fR is
-the actual length of the device ID string returned from the peripheral. If the
-returned \fBrlen\fR is greater than \fBlen\fR, the application should call
-ECPPIOC_GETDEVID a second time with a buffer length equal to \fBrlen\fR.
-.sp
-The 1284 device ID structure:
-.sp
-.in +2
-.nf
-struct ecpp_device_id {
- int mode; /* mode to use for reading device id */
- int len; /* length of buffer */
- int rlen; /* actual length of device id string */
- char *addr; /* buffer address */
-.fi
-.in -2
-
-.LP
-Note -
-.sp
-.RS 2
-Unlike \fBecpp\fR(7D), only the ECPP_CENTRONICS mode is currently supported in
-\fBusbprn\fR.
-.RE
-.RE
-
-.SH READ OPERATION
-The \fBread\fR operation is not supported and returns \fBEIO\fR.
-.SH ERRORS
-.ne 2
-.na
-\fB\fBEBUSY\fR\fR
-.ad
-.RS 19n
-The device has been opened and another open is attempted. An attempt has been
-made to unload the driver while one of the units is open.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEINVAL\fR\fR
-.ad
-.RS 19n
-An unsupported IOCTL has been received. A ECPPIOC_SETPARMS \fBioctl\fR(2) is
-attempted with an out of range value in the \fBecpp_transfer_parms\fR
-structure.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEIO\fR\fR
-.ad
-.RS 19n
-The driver has received an unrecoverable device error, or the device is not
-responding, or the device has stalled when attempting an access. A
-\fBwrite\fR(2) or \fBioctl\fR(2) did not complete due to a peripheral access. A
-\fBread\fR(2) system call has been issued.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBENXIO\fR\fR
-.ad
-.RS 19n
-The driver has received an \fBopen\fR(2) request for a unit for which the
-attach failed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBENODEV\fR\fR
-.ad
-.RS 19n
-The driver has received an \fBopen\fR(2) request for a device that has been
-disconnected.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEPROTONOSUPPORT\fR\fR
-.ad
-.RS 19n
-The driver has received a ECPPIOC_SETPARMS \fBioctl\fR(2) for a mode argument
-other than ECPP_CENTRONICS in the \fBecpp_transfer_parms\fR structure.
-.RE
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/kernel/drv/usbprn\fR\fR
-.ad
-.RS 30n
-32-bit x86 ELF kernel module
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/usbprn\fR\fR
-.ad
-.RS 30n
-64-bit x86 ELF kernel module
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/sparcv9/usbprn\fR\fR
-.ad
-.RS 30n
-64-bit SPARC ELF kernel module
-.RE
-
-.sp
-.ne 2
-.na
-\fB/dev/usb/*/*/* \fR
-.ad
-.RS 30n
-ugen(7D) nodes.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/printers/\fIn\fR\fR\fR
-.ad
-.RS 30n
-Character special files
-.RE
-
-.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture SPARC, x86, PCI-based systems
-.TE
-
-.SH SEE ALSO
-\fBcfgadm_usb\fR(1M), \fBprintmgr\fR(1M), \fBioctl\fR(2), \fBopen\fR(2),
-\fBread\fR(2), \fBwrite\fR(2), \fBattributes\fR(5),
-\fBecpp\fR(7D), \fBugen\fR(7D), \fBusba\fR(7D), \fBprnio\fR(7I),
-\fBattach\fR(9E)
-.sp
-.LP
-\fIWriting Device Drivers\fR
-.sp
-.LP
-\fIUniversal Serial Bus Specification 1.0 and 1.1\fR
-.sp
-.LP
-\fIUSB Device Class Definition for Printing Devices 1.0\fR
-.sp
-.LP
-\fISystem Administration Guide: Basic Administration\fR
-.SH DIAGNOSTICS
-In addition to being logged, the following messages may appear on the system
-console. All messages are formatted in the following manner:
-.sp
-.in +2
-.nf
-Warning: <device path> (usbprn<instance num>): Error Message...
-.fi
-.in -2
-.sp
-
-.sp
-.ne 2
-.na
-\fBDevice was disconnected while open. Data may have been lost.\fR
-.ad
-.sp .6
-.RS 4n
-The device has been hot-removed or powered off while it was open and a possible
-data transfer was in progress. The job may be aborted.
-.RE
-
-.sp
-.ne 2
-.na
-\fBCannot access <device>. Please reconnect.\fR
-.ad
-.sp .6
-.RS 4n
-There was an error in accessing the printer during reconnect. Please reconnect
-the device.
-.RE
-
-.sp
-.ne 2
-.na
-\fBDevice is not identical to the previous one on this port. Please disconnect
-and reconnect.\fR
-.ad
-.sp .6
-.RS 4n
-A USB printer was hot-removed while open. A new device was hot-inserted which
-is not identical to the original USB printer. Please disconnect the USB device
-and reconnect the printer to the same port.
-.RE
-
-.sp
-.ne 2
-.na
-\fBPrinter has been reconnected but data may have been lost.\fR
-.ad
-.sp .6
-.RS 4n
-The printer that was hot-removed from its USB port has been re-inserted again
-to the same port. It is available for access but the job that was running prior
-to the hot-removal may be lost.
-.RE
-
-.SH NOTES
-The USB printer will be power managed if the device is closed.
-.sp
-.LP
-If a printer is hot-removed before a job completes, the job is terminated and
-the driver will return EIO. All subsequent opens will return \fBENODEV\fR. If a
-printer is hot-removed, an LP reconfiguration may not be needed if a printer is
-re-inserted on the same port. If re-inserted on a different port, an LP
-reconfiguration may be required.
-.sp
-.LP
-The USB Parallel Printer Adapter is not hotpluggable. The printer should be
-connected to USB Parallel Printer Adapter before plugging the USB cable into
-host or hub port and should be removed only after disconnecting the USB cable
-of USB Parallel Printer Adapter from the host or hub port.
diff --git a/usr/src/man/man7d/usbsacm.7d b/usr/src/man/man7d/usbsacm.7d
deleted file mode 100644
index ac478e5c21..0000000000
--- a/usr/src/man/man7d/usbsacm.7d
+++ /dev/null
@@ -1,292 +0,0 @@
-'\" te
-.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH USBSACM 7D "Aug 13, 2021"
-.SH NAME
-usbsacm \- USB communication device class ACM driver
-.SH SYNOPSIS
-.LP
-.nf
-#include <sys/termio.h>
-
-usbsacm@unit
-.fi
-
-.LP
-.nf
-
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBusbsacm\fR driver is a loadable STREAMS and USBA (Solaris USB
-architecture)-compliant client driver that provides basic asynchronous
-communication support for USB modems and ISDN terminal adapters that conform to
-the \fIUniversal Serial Bus Communication Device Class Abstract Control Model
-(USB CDC ACM)\fR specification. You can download the \fIUSB CDC\fR
-specification from the USB website at
-\fIhttp://www.usb.org/developers/devclass_docs/usbcdc11.pdf\fR. Supported
-devices include mobile phones and PCMCIA cards which provide modem function by
-the usb cable. Serial device streams are built with appropriate modules that
-are pushed atop the usbsacm driver by the \fBautopush\fR(1M) facility.
-.sp
-.LP
-The \fBusbsacm\fR module supports the \fBtermio\fR(7I) device control functions
-specified by flags in the c_cflag word of termios structure, and by the IGNBRK,
-IGNPAR, PARMRK and INPCK flags in the c_iflag word of the termios structure.
-All other \fBtermio\fR(7I) functions must be performed by STREAMS modules
-pushed atop the driver. When a device is opened, the \fBldterm\fR(7M) and
-\fBttcompat\fR(7M) STREAMS modules are automatically pushed on top of the
-stream, providing the standard \fBtermio\fR(7I) interface.
-.sp
-.LP
-You use device logical names /dev/term/[\fI0-9\fR]* to access the serial ports.
-These names are typically used to provide a logical access point for a dial-in
-line that is used with a modem. You can use \fBpppd\fR(1M) to transmit
-datagrams over these serial ports.
-.sp
-.LP
-A special feature (controlled by the minor device number) is available that
-enables a single tty line to be connected to a modem and used for incoming and
-outgoing calls. By accessing through device logical name /dev/cua/[\fI0-9\fR]*,
-you can open a port without the carrier detect signal being asserted, either
-through hardware or an equivalent software mechanism. These devices are
-commonly known as 'dial-out' lines.
-.sp
-.LP
-Unlike onboard serial ports, the \fBusbsacm\fR ports cannot serve as a local
-serial console.
-.SH APPLICATION PROGRAMMING INTERFACE
-.sp
-.LP
-A dial-in line can be opened only if the corresponding dial-out line is
-closed. A blocking /dev/term open waits until the /dev/cua line is closed
-(which drops Data Terminal Ready, after which Carrier Detect usually drops as
-well) and carrier is detected again. A non-blocking /dev/term open returns an
-error if the /dev/cua is open.
-.sp
-.LP
-If the /dev/term line is opened successfully (usually only when carrier is
-recognized on the modem), the corresponding /dev/cua line cannot be
-opened. This allows a modem and port to be used for dial-in (by enabling the
-line for login in \fB/etc/inittab\fR) or dial-out (by \fBtip\fR(1) or
-\fBuucp\fR(1C)) as \fB/dev/cua0\fR when no one is logged in on the line.
-.sp
-.LP
-Device hot-removal is functionally equivalent to a modem disconnect event, as
-defined in \fBtermio\fR(7I).
-.SH IOCTLS
-.sp
-.LP
-The \fBusbsacm\fR driver supports the standard set of \fBtermio\fR(7I) ioctl
-calls.
-.sp
-.LP
-The input and output line speeds may be set to any of the following baud rates:
-75, 150, 300, 600, 1200, 1800, 2400, 4800, 9600, 19200, 38400, 57600, 115200,
-230400, 460800, 921600, 1000000, 1152000, 1500000, 2000000, 2500000, 3000000,
-3500000, or 4000000. The speeds cannot be set independently. For example, when
-the output speed is set, the input speed is automatically set to the same
-speed.
-.SH ERRORS
-.sp
-.LP
-An \fBopen()\fR fails under the following conditions:
-.sp
-.ne 2
-.na
-\fB\fBENXIO\fR\fR
-.ad
-.RS 9n
-The unit being opened does not exist.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEBUSY\fR\fR
-.ad
-.RS 9n
-The /dev/cua (dial-out) device is being opened while the /dev/term (dial-in
-device) is open, or the dial-in device is being opened with a no-delay open
-while the dial-out device is open.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEBUSY\fR\fR
-.ad
-.RS 9n
-The unit has been marked as exclusive-use by another process with a
-\fBTIOCEXCL\fR \fBioctl()\fR call.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEIO\fR\fR
-.ad
-.RS 9n
-USB device I/O error.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/usbsacm\fR\fR
-.ad
-.sp .6
-.RS 4n
-32-bit ELF kernel module. (x86)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/usbsacm\fR\fR
-.ad
-.sp .6
-.RS 4n
-64-bit ELF kernel module. (x86)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/sparcv9/usbsacm\fR\fR
-.ad
-.sp .6
-.RS 4n
-64-bit ELF kernel module. (SPARC)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/cua/[0-9]\fR\fR
-.ad
-.sp .6
-.RS 4n
-dial-out tty lines
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/term/[0-9]\fR\fR
-.ad
-.sp .6
-.RS 4n
-dial-in tty lines
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture SPARC, x86 PCI-based systems
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBstrconf\fR(1), \fBtip\fR(1), \fBuucp\fR(1C), \fBautopush\fR(1M),
-\fBpppd\fR(1M), \fBioctl\fR(2), \fBopen\fR(2), \fBtermios\fR(3C),
-\fBattributes\fR(5), \fBusba\fR(7D), \fBtermio\fR(7I), \fBldterm\fR(7M),
-\fBttcompat\fR(7M)
-.SH DIAGNOSTICS
-.sp
-.LP
-In addition to being logged, the following messages may appear on the system
-console. All messages are formatted in the following manner:
-.sp
-.in +2
-.nf
-Warning: <device path> (usbsacm<instance num>):Error Message...
-.fi
-.in -2
-.sp
-
-.sp
-.ne 2
-.na
-\fBDevice was disconnected while open. Data may have been lost.\fR
-.ad
-.sp .6
-.RS 4n
-The device has been hot-removed or powered off while it was open and a possible
-data transfer was in progress. The job may be aborted.
-.RE
-
-.sp
-.ne 2
-.na
-\fBDevice is not identical to the previous one on this port. Please disconnect
-and reconnect.\fR
-.ad
-.sp .6
-.RS 4n
-The device was hot-removed while open. A new device was hot-inserted which is
-not identical to the original device. Please disconnect the device and
-reconnect the original device to the same port.
-.RE
-
-.sp
-.ne 2
-.na
-\fBDevice has been reconnected, but data may have been lost.\fR
-.ad
-.sp .6
-.RS 4n
-The device that was hot-removed from its USB port has been re-inserted again
-to the same port. It is available for access but data from a previous transfer
-may be lost.
-.RE
-
-.sp
-.ne 2
-.na
-\fBCannot access <device>. Please reconnect.\fR
-.ad
-.sp .6
-.RS 4n
-This device has been disconnected because a device other than the original one
-has been inserted. The driver informs you of this fact by displaying the name
-of the original device.
-.RE
-
-.sp
-.LP
-The following messages may be logged into the system log. They are formatted in
-the following manner:
-.sp
-.in +2
-.nf
-<device path><usbsacm<instance number>): message...
-.fi
-.in -2
-.sp
-
-.sp
-.ne 2
-.na
-\fBInput overrun.\fR
-.ad
-.RS 18n
-Data was lost.
-.RE
-
diff --git a/usr/src/man/man7d/usbsksp.7d b/usr/src/man/man7d/usbsksp.7d
deleted file mode 100644
index c0a946ae97..0000000000
--- a/usr/src/man/man7d/usbsksp.7d
+++ /dev/null
@@ -1,299 +0,0 @@
-'\" te
-.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH USBSKSP 7D "May 13, 2017"
-.SH NAME
-usbsksp \- Keyspan USB to serial converter driver
-.SH SYNOPSIS
-.LP
-.nf
-#include <fcntl.h>
-.fi
-
-.LP
-.nf
-#include <sys/termio.h>
-.fi
-
-.LP
-.nf
-usbskpsp@unit
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBusbsksp\fR driver is a loadable \fBSTREAMS\fR and \fBUSBA\fR (Solaris
-USB architecture) compliant client driver that provides basic asynchronous
-communication support for Keyspan USB-to-serial converters. The \fBusbsksp\fR
-driver supports the Keyspan USA19HS, USA49WG and USA49WLC models. By default,
-the USA19HS and USA49WG models are compatible with the \fBusbsksp\fR driver and
-no configuration or installation steps are required. (The USA49WG model is a
-USB 2.0 device conforming to \fIUniversal Serial Bus Specification 2.0\fR and
-the USB 2.0 host controller is required to support the USA49WG model. Note that
-the USA49WG is not compatible with USB 1.1 host controllers). The Keyspan
-USA49WLC model requires a firmware package that is no longer publicly available.
-Serial device streams are built with appropriate modules that are pushed atop
-the \fBusbsksp\fR driver by the \fBautopush\fR(1M) facility.
-.sp
-.LP
-The \fBusbsksp\fR module supports the \fBtermio\fR(7I) device control functions
-specified by flags in the \fBc_cflag\fR word of the termios structure, and by
-the IGNBRK, IGNPAR, PARMRK and INPCK flags in the \fBc_iflag\fR word of the
-termios structure. All other \fBtermio\fR(7I) functions must be performed by
-\fBSTREAMS\fR modules pushed atop the driver. When a device is opened, the
-\fBldterm\fR(7M) and \fBttcompat\fR(7M) \fBSTREAMS\fR modules are
-automatically pushed on top of the stream, providing the standard
-\fBtermio\fR(7I) interface.
-.sp
-.LP
-Use device logical names \fB/dev/term/[0-9]\fR* to access the serial ports.
-These names are typically used to provide a logical access point for a dial-in
-line that is used with a modem.
-.sp
-.LP
-A special feature (controlled by the minor device number) is available that
-enables a single tty line to be connected to a modem and used for incoming and
-outgoing calls. By accessing through device logical name \fB/dev/cua/[0-9]\fR*,
-you can open a port without the carrier detect signal being asserted, either
-through hardware or an equivalent software mechanism. These devices are
-commonly known as 'dial-out' lines.
-.sp
-.LP
-Unlike onboard serial ports, the \fBusbsksp\fR ports cannot serve as a local
-serial console.
-.SH APPLICATION PROGRAMMING INTERFACE
-.LP
-A dial-in line can be opened only if the corresponding dial-out line is closed.
-A blocking \fB/dev/term\fR open waits until the \fB/dev/cua\fR line is closed
-(which drops Data Terminal Ready, after which Carrier Detect usually drops as
-well) and carrier is detected again. A non-blocking \fB/dev/term\fR open
-returns an error if the \fB/dev/cua\fR is open.
-.sp
-.LP
-If the \fB/dev/term\fR line is opened successfully (usually only when
-carrier is recognized on the modem), the corresponding \fB/dev/cua\fR line
-cannot be opened. This allows a modem and port to be used for dial-in (by
-enabling the line for login in \fB/etc/inittab\fR) or dial-out (by
-\fBtip\fR(1), or \fBuucp\fR(1C)) when no one is logged in on the line.
-.sp
-.LP
-Device hot-removal is functionally equivalent to a modem disconnect event, as
-defined in \fBtermio\fR(7I).
-.SH IOCTLS
-.LP
-The \fBusbsksp\fR driver supports the standard set of \fBtermio\fR(7I) ioctl
-calls.
-.sp
-.LP
-Input and output line speeds can be set to the following baud rates: 0, 50,
-75, 110, 134, 150, 200, 300, 600, 1200, 1800, 2400, 4800, 9600, 19200, 38400,
-57600, 115200, or 230400. Input and output line speeds cannot be set
-independently. For example, when the output speed is set, the input speed is
-automatically set to the same speed.
-.SH ERRORS
-.LP
-An \fBopen()\fR fails under the following conditions:
-.sp
-.ne 2
-.na
-\fB\fBENXIO\fR\fR
-.ad
-.RS 9n
-The unit being opened does not exist.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEBUSY\fR\fR
-.ad
-.RS 9n
-The \fB/dev/cua\fR (dial-out) device is being opened while the \fB/dev/term\fR
-(dial-in device) is open, or the dial-in device is being opened with a no-delay
-open while the dial-out device is open.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEBUSY\fR\fR
-.ad
-.RS 9n
-The unit has been marked as exclusive-use by another process with a TIOCEXCL
-ioctl() call.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEIO\fR\fR
-.ad
-.RS 9n
-USB device I/O error.
-.RE
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/kernel/drv/usbsksp\fR\fR
-.ad
-.sp .6
-.RS 4n
-32-bit x86 ELF kernel module.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/usbsksp\fR\fR
-.ad
-.sp .6
-.RS 4n
-64-bit x86 ELF kernel module.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/sparcv9/usbsksp\fR\fR
-.ad
-.sp .6
-.RS 4n
-64-bit SPARC ELF kernel module.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/cua/[0-9]*\fR\fR
-.ad
-.sp .6
-.RS 4n
-dial-out tty lines.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/term/[0-9]*\fR\fR
-.ad
-.sp .6
-.RS 4n
-dial-in tty lines.
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture SPARC, x86, PCI-based systems
-.TE
-
-.SH SEE ALSO
-.LP
-\fBstrconf\fR(1), \fBtip\fR(1), \fBuucp\fR(1C), \fBautopush\fR(1M),
-\fBioctl\fR(2), \fBopen\fR(2), \fBtermios\fR(3C), \fBattributes\fR(5),
-\fBusba\fR(7D), \fBtermio\fR(7I), \fBldterm\fR(7M), \fBttcompat\fR(7M)
-.SH DIAGNOSTICS
-.LP
-In addition to being logged, the following messages may appear on the system
-console. All messages are formatted in the following manner:
-.sp
-.in +2
-.nf
-Warning: <device path> (usbsksp<instance num>): Error Message...
-.fi
-.in -2
-.sp
-
-.sp
-.ne 2
-.na
-\fBDevice was disconnected while open. Data may have been lost.\fR
-.ad
-.sp .6
-.RS 4n
-The device has been hot-removed or powered off while it was open and a possible
-data transfer was in progress. The job may be aborted.
-.RE
-
-.sp
-.ne 2
-.na
-\fBDevice is not identical to the previous one on this port. Please disconnect
-and reconnect.\fR
-.ad
-.sp .6
-.RS 4n
-The device was hot-removed while open. A new device was hot-inserted which is
-not identical to the original device. Please disconnect the device and
-reconnect the original device to the same port.
-.RE
-
-.sp
-.ne 2
-.na
-\fBDevice has been reconnected, but data may have been lost.\fR
-.ad
-.sp .6
-.RS 4n
-The device that was hot-removed from its USB port has been re-inserted again to
-the same port. It is available for access but data from a previous transfer
-may be lost.
-.RE
-
-.sp
-.ne 2
-.na
-\fBCannot access <\fR\fIdevice\fR\fB>. Please reconnect.\fR
-.ad
-.sp .6
-.RS 4n
-This device has been disconnected because a device other than the original one
-has been inserted. The driver informs you of this fact by displaying the name
-of the original device.
-.RE
-
-.sp
-.ne 2
-.na
-\fBNo valid firmware available for Keyspan usa49wlc usb-to-serial adapter.
-Please download it from Keyspan website and install it.\fR
-.ad
-.sp .6
-.RS 4n
-By default, only an empty firmware package is installed for the usa49wlc model.
-You will need to obtain a copy of the SUNWukspfw package and install it.
-.RE
-
-.sp
-.LP
-The following messages may be logged into the system log. They are formatted in
-the following manner:
-.sp
-.in +2
-.nf
-<device path><usbsksp<instance number>): message...
-.fi
-.in -2
-.sp
-
-.sp
-.ne 2
-.na
-\fBInput overrun\fR
-.ad
-.RS 17n
-Data was lost.
-.RE
-
diff --git a/usr/src/man/man7d/usbsprl.7d b/usr/src/man/man7d/usbsprl.7d
deleted file mode 100644
index 6b66182f79..0000000000
--- a/usr/src/man/man7d/usbsprl.7d
+++ /dev/null
@@ -1,286 +0,0 @@
-'\" te
-.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH USBSPRL 7D "Nov 23, 2006"
-.SH NAME
-usbsprl \- Prolific PL2303 USB to serial converter driver
-.SH SYNOPSIS
-.LP
-.nf
-#include <fcntl.h>
-.fi
-
-.LP
-.nf
-#include <sys/termio.h>
-.fi
-
-.LP
-.nf
-usbsprl@unit
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBusbsprl\fR driver is a loadable \fBSTREAMS\fR and \fBUSBA\fR (Solaris
-USB architecture) compliant client driver that provides basic asynchronous
-communication support for Prolific PL2303 USB-to-serial converters. Supported
-devices include PL2303H, PL2303HX and PL2303X. Serial device streams are built
-with appropriate modules that are pushed atop the \fBusbsprl\fR driver by the
-\fBautopush\fR(1M) facility.
-.sp
-.LP
-The \fBusbsprl\fR module supports the \fBtermio\fR(7I) device control functions
-specified by flags in the \fBc_cflag\fR word of the termios structure, and by
-the IGNBRK, IGNPAR, PARMRK and INPCK flags in the \fBc_iflag\fR word of the
-termios structure. All other \fBtermio\fR(7I) functions must be performed by
-\fBSTREAMS\fR modules pushed atop the driver. When a device is opened, the
-\fBldterm\fR(7M) and \fBttcompat\fR(7M) \fBSTREAMS\fR modules are
-automatically pushed on top of the stream, providing the standard
-\fBtermio\fR(7I) interface.
-.sp
-.LP
-Use device logical names \fB/dev/term/[0-9]\fR* to access the serial ports.
-These names are typically used to provide a logical access point for a dial-in
-line that is used with a modem.
-.sp
-.LP
-A special feature (controlled by the minor device number) is available that
-enables a single tty line to be connected to a modem and used for incoming and
-outgoing calls. By accessing through device logical name \fB/dev/cua/[0-9]\fR*,
-you can open a port without the carrier detect signal being asserted, either
-through hardware or an equivalent software mechanism. These devices are
-commonly known as 'dial-out' lines.
-.SH APPLICATION PROGRAMMING INTERFACE
-.sp
-.LP
-A dial-in line can be opened only if the corresponding dial-out line is closed.
-A blocking \fB/dev/term\fR open waits until the \fB/dev/cua\fR line is closed
-(which drops Data Terminal Ready, after which Carrier Detect usually drops as
-well) and carrier is detected again. A non-blocking \fB/dev/term\fR open
-returns an error if the \fB/dev/cua\fR is open.
-.sp
-.LP
-If the \fB/dev/term\fR line is opened successfully (usually only when
-carrier is recognized on the modem), the corresponding \fB/dev/cua\fR line
-cannot be opened. This allows a modem and port to be used for dial-in (by
-enabling the line for login in \fB/etc/inittab\fR) or dial-out (by
-\fBtip\fR(1), or \fBuucp\fR(1C)) when no one is logged in on the line.
-.sp
-.LP
-Device hot-removal is functionally equivalent to a modem disconnect event, as
-defined in \fBtermio\fR(7I).
-.SH IOCTLS
-.sp
-.LP
-The \fBusbsprl\fR driver supports the standard set of \fBtermio\fR(7I) ioctl
-calls.
-.sp
-.LP
-Input and output line speeds can be set to the following baud rates: 75, 150,
-300, 600, 1200, 1800, 2400, 4800, 9600, 19200, 38400, 57600, 115200, 230400 or
-460800. Input and output line speeds cannot be set independently. For example,
-when the output speed is set, the input speed is automatically set to the same
-speed.
-.SH ERRORS
-.sp
-.LP
-An \fBopen()\fR fails under the following conditions:
-.sp
-.ne 2
-.na
-\fB\fBENXIO\fR\fR
-.ad
-.RS 9n
-The unit being opened does not exist.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEBUSY\fR\fR
-.ad
-.RS 9n
-The \fB/dev/cua\fR (dial-out) device is being opened while the \fB/dev/term\fR
-(dial-in device) is open, or the dial-in device is being opened with a no-delay
-open while the dial-out device is open.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEBUSY\fR\fR
-.ad
-.RS 9n
-The unit has been marked as exclusive-use by another process with a TIOCEXCL
-ioctl() call.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEIO\fR\fR
-.ad
-.RS 9n
-USB device I/O error.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/usbsprl\fR\fR
-.ad
-.sp .6
-.RS 4n
-32-bit x86 ELF kernel module.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/usbsprl\fR\fR
-.ad
-.sp .6
-.RS 4n
-64-bit x86 ELF kernel module.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/sparcv9/usbsprl\fR\fR
-.ad
-.sp .6
-.RS 4n
-64-bit SPARC ELF kernel module.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/cua/[0-9]*\fR\fR
-.ad
-.sp .6
-.RS 4n
-dial-out tty lines.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/term/[0-9]*\fR\fR
-.ad
-.sp .6
-.RS 4n
-dial-in tty lines.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture SPARC, x86, PCI-based systems
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBstrconf\fR(1), \fBtip\fR(1), \fBuucp\fR(1C), \fBautopush\fR(1M),
-\fBioctl\fR(2), \fBopen\fR(2), \fBtermios\fR(3C), \fBattributes\fR(5),
-\fBusba\fR(7D), \fBtermio\fR(7I), \fBldterm\fR(7M), \fBttcompat\fR(7M)
-.SH DIAGNOSTICS
-.sp
-.LP
-In addition to being logged, the following messages may appear on the system
-console. All messages are formatted in the following manner:
-.sp
-.in +2
-.nf
-Warning: <device path> (usbsprl<instance num>): Error Message...
-.fi
-.in -2
-.sp
-
-.sp
-.ne 2
-.na
-\fBDevice was disconnected while open. Data may have been lost.\fR
-.ad
-.sp .6
-.RS 4n
-The device has been hot-removed or powered off while it was open and a possible
-data transfer was in progress. The job may be aborted.
-.RE
-
-.sp
-.ne 2
-.na
-\fBDevice is not identical to the previous one on this port. Please disconnect
-and reconnect.\fR
-.ad
-.sp .6
-.RS 4n
-The device was hot-removed while open. A new device was hot-inserted which is
-not identical to the original device. Please disconnect the device and
-reconnect the original device to the same port.
-.RE
-
-.sp
-.ne 2
-.na
-\fBDevice has been reconnected, but data may have been lost.\fR
-.ad
-.sp .6
-.RS 4n
-The device that was hot-removed from its USB port has been re-inserted again to
-the same port. It is available for access but data from a previou transfer may
-be lost.
-.RE
-
-.sp
-.ne 2
-.na
-\fBCannot access <\fR\fIdevice\fR\fB>. Please reconnect.\fR
-.ad
-.sp .6
-.RS 4n
-This device has been disconnected because a device other than the original one
-has been inserted. The driver informs you of this fact by displaying the name
-of the original device.
-.RE
-
-.sp
-.LP
-The following messages may be logged into the system log. They are formatted in
-the following manner:
-.sp
-.in +2
-.nf
-<device path><usbsprl<instance number>): message...
-.fi
-.in -2
-.sp
-
-.sp
-.ne 2
-.na
-\fBInput overrun.\fR
-.ad
-.sp .6
-.RS 4n
-Data was lost.
-.RE
-
diff --git a/usr/src/man/man7d/usbvc.7d b/usr/src/man/man7d/usbvc.7d
deleted file mode 100644
index 9fe2bd332b..0000000000
--- a/usr/src/man/man7d/usbvc.7d
+++ /dev/null
@@ -1,456 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH USBVC 7D "May 13, 2017"
-.SH NAME
-usbvc \- USB video class driver
-.SH SYNOPSIS
-.LP
-.nf
-#include <sys/usb/clients/video/usbvc/usbvc.h>
-
-#include <sys/videodev2.h>
-
-usbvc@unit-address
-.fi
-
-.LP
-.nf
-
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBusbvc\fR driver is a USBA (Solaris USB Architecture)-compliant client
-driver that supports the \fIUSB Device Class Definition for Video Devices\fR
-specification, Versions 1.0 and 1.1. The \fBusbvc\fR driver supports a subset
-of the video controls and formats described in the USB specification.
-.sp
-.LP
-The \fBusbvc\fR driver also implements the Video4Linux2 API (\fIV4L2\fR),
-Version 0.20 for applications. For more information on the \fIV4L2 API\fR,
-visit \fIhttp://www.thedirks.org/v4l2\fR.
-.sp
-.LP
-Note that the \fBusbvc\fR driver supports the video capture function only and
-that video output is not supported.
-.SH READING DATA
-.LP
-The \fBusbvc\fR driver reads video data from the isochronous endpoint of the
-device. Bulk data endpoints are not supported.
-.sp
-.LP
-MJPEG and UNCOMPRESSED video formats are supported. Isochronous data are read
-from the isochronous input device frame-by-frame and are maintained in a
-buffer array within the driver. Video frames are read from the driver using the
-\fBread\fR(2) or \fBmmap\fR(2) I/O method. For \fBread\fR(2), each read returns
-a buffer of a video frame. For \fBmmap\fR(2), each \fBVIDIOC_DQBUF\fR ioctl
-returns the buffer structure v4l2_buffer. (A video frame buffer pointer is
-included in the structure). See the \fIV4L2 API\fR for buffer structure and
-other related data structure information.
-.SH IOCTLS
-.LP
-A brief overview of supported ioctl requests appears below. For more detailed
-information, refer to the \fIV4L2 API\fR document. Note: ioctl information
-presented in the \fIV4L2 API\fR document may differ slightly from the content
-of this manpage. In such cases, you should rely on the information in this
-manpage.
-.sp
-.ne 2
-.na
-\fBVIDIOC_QUERYCAP\fR
-.ad
-.sp .6
-.RS 4n
-Query the device capabilities. Besides device capabilities, the \fBusbvc\fR
-driver returns structure v4l2_capability which includes information on the
-driver, data bus and OS kernel. Please note that the "Version" structure member
-has no meaning in Solaris and is always set to 1.
-.RE
-
-.sp
-.ne 2
-.na
-\fBVIDIOC_ENUM_FMT\fR
-.ad
-.sp .6
-.RS 4n
-Enumerate the video formats supported by the device.
-.RE
-
-.sp
-.ne 2
-.na
-\fBVIDIOC_S_FMT\fR
-.ad
-.sp .6
-.RS 4n
-Set a video format.
-.RE
-
-.sp
-.ne 2
-.na
-\fBVIDIOC_G_FMT\fR
-.ad
-.sp .6
-.RS 4n
-Get a video format.
-.RE
-
-.sp
-.ne 2
-.na
-\fBVIDIOC_REQBUFS\fR
-.ad
-.sp .6
-.RS 4n
-Request the \fBusbvc\fR driver to allocate video data buffers. If a buffer is
-set to zero, the driver stops reading video data from the device and releases
-all allocated buffers. (For \fBmmap\fR(2) only).
-.RE
-
-.sp
-.ne 2
-.na
-\fBVIDIOC_QUERYBUF\fR
-.ad
-.sp .6
-.RS 4n
-Query a given buffer's status. (For \fBmmap\fR(2) only).
-.RE
-
-.sp
-.ne 2
-.na
-\fBVIDIOC_QBUF\fR
-.ad
-.sp .6
-.RS 4n
-Enqueue an empty buffer to the video data buffer array. (For \fBmmap\fR(2)
-only).
-.RE
-
-.sp
-.ne 2
-.na
-\fBVIDIOC_DQBUF\fR
-.ad
-.sp .6
-.RS 4n
-Dequeue a done buffer from the video data buffer array. (For \fBmmap\fR(2)
-only).
-.RE
-
-.sp
-.ne 2
-.na
-\fBVIDIOC_STREAMON\fR
-.ad
-.sp .6
-.RS 4n
-Start reading video data.
-.RE
-
-.sp
-.ne 2
-.na
-\fBVIDIOC_STREAMOFF\fR
-.ad
-.sp .6
-.RS 4n
-Stop reading video data.
-.RE
-
-.sp
-.ne 2
-.na
-\fBVIDIOC_ENUMINPUT\fR
-.ad
-.sp .6
-.RS 4n
-Enumerate all device inputs. Currently, the \fBusbvc\fR driver supports one
-input only.
-.RE
-
-.sp
-.ne 2
-.na
-\fBVIDIOC_G_INPUT\fR
-.ad
-.sp .6
-.RS 4n
-Get the device's current input. At this time, the \fBusbvc\fR driver supports
-one input only.
-.RE
-
-.sp
-.ne 2
-.na
-\fBVIDIOC_S_INPUT\fR
-.ad
-.sp .6
-.RS 4n
-Set the device's current input. At this time, the \fBusbvc\fR driver supports
-one input only.
-.RE
-
-.sp
-.ne 2
-.na
-\fBVIDIOC_QUERYCTRL\fR
-.ad
-.sp .6
-.RS 4n
-Query the device and driver for supported video controls. Currently, the
-\fBusbvc\fR driver supports the brightness, contrast, saturation, hue, and
-gamma video controls.
-.RE
-
-.sp
-.ne 2
-.na
-\fBVIDIOC_G_CTRL\fR
-.ad
-.sp .6
-.RS 4n
-Get the device's current video control.
-.RE
-
-.sp
-.ne 2
-.na
-\fBVIDIOC_S_CTRL\fR
-.ad
-.sp .6
-.RS 4n
-Set the device's current video control.
-.RE
-
-.sp
-.ne 2
-.na
-\fBVIDIOC_G_PARM\fR
-.ad
-.sp .6
-.RS 4n
-Get streaming parameters, the number of frames per second and number of buffers
-used internally by driver in read/write mode.
-.RE
-
-.sp
-.ne 2
-.na
-\fBVIDIOC_S_PARM\fR
-.ad
-.sp .6
-.RS 4n
-Set streaming parameters, the number of frames per second and number of buffers
-used internally by driver in read/write mode.
-.RE
-
-.SH ERRORS
-.ne 2
-.na
-\fB\fBEBUSY\fR\fR
-.ad
-.RS 10n
-An open was attempted after the device has already been opened.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEINVAL\fR\fR
-.ad
-.RS 10n
-An unsupported ioctl is received or an ioctl is attempted with an out-of-range
-value.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEIO\fR\fR
-.ad
-.RS 10n
-The driver received an unrecoverable device error or the device did not
-respond or the device stalled when attempting an access. A \fBread\fR(2) or
-\fBioctl\fR(2) did not complete due to a peripheral access.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBENXIO\fR\fR
-.ad
-.RS 10n
-The driver received an \fBopen\fR(2) request for a device for which the attach
-failed.
-.RE
-
-.sp
-.ne 2
-.na
-\fBENODEV\fR
-.ad
-.RS 10n
-The driver received an \fBopen\fR(2) request for a disconnected device.
-.RE
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/kernel/drv/usbvc\fR\fR
-.ad
-.sp .6
-.RS 4n
-32-bit ELF kernel module. (x86)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/usbvc\fR\fR
-.ad
-.sp .6
-.RS 4n
-64-bit ELF kernel module. (x86)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/sparcv9/usbvc\fR\fR
-.ad
-.sp .6
-.RS 4n
-64-bit ELF kernel module. (SPARC)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/usb/*/*/*\fR\fR
-.ad
-.sp .6
-.RS 4n
-\fBugen\fR(7D) nodes.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/videoN\fR\fR
-.ad
-.sp .6
-.RS 4n
-Device node for isochronous input from USB video device and device control.
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture SPARC, x86, PCI-based systems
-.TE
-
-.SH SEE ALSO
-.LP
-\fBcfgadm_usb\fR(1M), \fBioctl\fR(2), \fBopen\fR(2), \fBmmap\fR(2),
-\fBread\fR(2), \fBattributes\fR(5), \fBugen\fR(7D),
-\fBusba\fR(7D), \fBattach\fR(9E)
-.sp
-.LP
-\fIWriting Device Drivers\fR
-.sp
-.LP
-\fISystem Administration Guide: Basic Administration\fR
-.sp
-.LP
-\fIUniversal Serial Bus Specification 1.0, 1.1 and 2.0\fR\(em 1996, 1998, 2000
-.sp
-.LP
-\fIUSB Device Class Definition for Video Devices 1.0 and 1.1\fR\(em 2003, 2005
-.sp
-.LP
-\fIVideo4Linux2 API (V4L2), Version 0.20\fR
-.sp
-.LP
-\fIhttp://www.usb.org\fR
-.sp
-.LP
-\fIhttp://www.thedirks.org/v4l2\fR
-.SH DIAGNOSTICS
-.LP
-In addition to being logged, the following messages may appear on the system
-console. All messages are formatted in the following manner:
-.sp
-.in +2
-.nf
-Warning: <device path> (usbvc<instance num>):Error Message...
-.fi
-.in -2
-.sp
-
-.sp
-.ne 2
-.na
-\fBDevice was disconnected while open. Data may have been lost.\fR
-.ad
-.sp .6
-.RS 4n
-The device has been hot-removed or powered off while it was open and a possible
-data transfer was in progress. The job may be aborted.
-.RE
-
-.sp
-.ne 2
-.na
-\fBCannot access <device>. Please reconnect.\fR
-.ad
-.sp .6
-.RS 4n
-This device has been disconnected because a device other than the original one
-has been inserted. The driver informs you of this fact by displaying the name
-of the original device.
-.RE
-
-.sp
-.ne 2
-.na
-\fBDevice is not identical to the previous one on this port. Please disconnect
-and reconnect.\fR
-.ad
-.sp .6
-.RS 4n
-The device was hot-removed while open. A new device was hot-inserted which is
-not identical to the original device. Please disconnect the device and
-reconnect the original device to the same port.
-.RE
-
-.SH NOTES
-.LP
-The USB video device will be power-managed when the device is idle.
-.sp
-.LP
-If a USB video device is hot-removed while active, a console warning is
-displayed requesting you to put the device back in the same port and telling
-you of potential data loss. Hot-removal of an active video device is strongly
-discouraged.
-.sp
-.LP
-Always close all applications before hot-removing or hot-inserting a device.
-If an application is open when a device is hot-removed, inserting the device
-in a different port will create new \fB/dev/video\fR\fIN\fR links. Moving
-an active device to another port is not recommended.
diff --git a/usr/src/man/man7d/usmn.7d b/usr/src/man/man7d/usmn.7d
deleted file mode 100644
index 97655c0c79..0000000000
--- a/usr/src/man/man7d/usmn.7d
+++ /dev/null
@@ -1,42 +0,0 @@
-.\"
-.\" This file and its contents are supplied under the terms of the
-.\" Common Development and Distribution License ("CDDL"), version 1.0.
-.\" You may only use this file in accordance with the terms of version
-.\" 1.0 of the CDDL.
-.\"
-.\" A full copy of the text of the CDDL should have accompanied this
-.\" source. A copy of the CDDL is also available via the Internet at
-.\" http://www.illumos.org/license/CDDL.
-.\"
-.\"
-.\" Copyright 2021 Oxide Computer Company
-.\"
-.Dd July 30, 2021
-.Dt USMN 7D
-.Os
-.Sh NAME
-.Nm usmn
-.Nd AMD SMN user access driver
-.Sh SYNOPSIS
-.Pa /devices/pseudo/amdzen@0/usmn@2:usmn.*
-.Sh DESCRIPTION
-The
-.Nm
-driver provides the ability to read and write data from the AMD System
-Management Network
-.Pq SMN
-on AMD Family 17h
-.Pq Zen, Zen+, and Zen 2
-and AMD Family 19h
-.Pq Zen 3
-processors.
-.Pp
-This driver is intended strictly for facilitating platform development
-and is not recommended for systems that aren't doing kernel and platform
-development on AMD Zen platforms.
-Arbitrary writes to the SMN can severely damage and destabilize the system.
-If you do not need access to the SMN, then this driver should not be
-present on the system.
-.Sh SEE ALSO
-.Xr amdzen 7D ,
-.Xr zen_udf 7D
diff --git a/usr/src/man/man7d/vioblk.7d b/usr/src/man/man7d/vioblk.7d
deleted file mode 100644
index 26c45507bb..0000000000
--- a/usr/src/man/man7d/vioblk.7d
+++ /dev/null
@@ -1,92 +0,0 @@
-.\"
-.\" This file and its contents are supplied under the terms of the
-.\" Common Development and Distribution License ("CDDL"), version 1.0.
-.\" You may only use this file in accordance with the terms of version
-.\" 1.0 of the CDDL.
-.\"
-.\" A full copy of the text of the CDDL should have accompanied this
-.\" source. A copy of the CDDL is also available via the Internet at
-.\" http://www.illumos.org/license/CDDL.
-.\"
-.\"
-.\" Copyright 2020 Oxide Computer Company
-.\"
-.Dd August 28, 2021
-.Dt VIOBLK 7D
-.Os
-.Sh NAME
-.Nm vioblk
-.Nd virtio block device
-.Sh SYNOPSIS
-.Pa /dev/dsk/cXt0d0
-.Pa /dev/rdsk/cXt0d0
-.Sh DESCRIPTION
-The
-.Nm
-driver is a
-.Xr blkdev 7D
-based device that supports the virtio para-virtualization block device
-specification which is commonly used by many hypervisors and emulators.
-The device supports what the specification calls the more commonly found
-.Sq legacy
-interface for devices.
-.Pp
-The driver supports the following features, if offered by the device:
-.Bl -dash
-.It
-Volatile write-cache
-.It
-Discarding unused sectors
-.Pq ala TRIM, UNMAP
-.It
-Read-only device support
-.It
-Physical block sizes that are distinct from logical 512-byte blocks
-.It
-Synthesized disk geometry
-.El
-.Sh APPLICATION PROGRAMMING INTERFACE
-For each device instance, a
-.Xr blkdev 7D
-instance is created and treated as an independent controller with a
-single device, meaning that the
-.Em cX
-part of
-.Em cXt0d0
-will vary for each device.
-Because the driver leverages the
-.Xr blkdev 7D
-framework, most standard disk manipulation utilities will function such
-as
-.Xr diskinfo 1M
-for discovering devices,
-.Xr format 1M
-for manipulating partition tables,
-.Xr iostat 1M
-for seeing device I/O statistics, and a subset of the
-.Xr dkio 7I
-ioctl requests to retrieve information about the device.
-.Sh ARCHITECTURE
-The
-.Nm
-driver is only supported on
-.Sy x86 .
-.Sh FILES
-.Bl -tag -width Pa
-.It Pa /dev/dsk/cXt0d0
-Block device minor node.
-.It Pa /dev/rdsk/cXt0d0
-Character device minor node.
-.It Pa /kernel/drv/amd64/vioblk
-x86 device driver.
-.El
-.Sh SEE ALSO
-.Xr diskinfo 1M ,
-.Xr blkdev 7D ,
-.Xr virtio 7D ,
-.Xr dkio 7I
-.Rs
-.%T Virtual I/O Device (VIRTIO) Version 1.1
-.%D April, 2019
-.%U https://docs.oasis-open.org/virtio/virtio/v1.1/virtio-v1.1.html
-.Re
diff --git a/usr/src/man/man7d/vioif.7d b/usr/src/man/man7d/vioif.7d
deleted file mode 100644
index b2302cf36c..0000000000
--- a/usr/src/man/man7d/vioif.7d
+++ /dev/null
@@ -1,91 +0,0 @@
-.\"
-.\" This file and its contents are supplied under the terms of the
-.\" Common Development and Distribution License ("CDDL"), version 1.0.
-.\" You may only use this file in accordance with the terms of version
-.\" 1.0 of the CDDL.
-.\"
-.\" A full copy of the text of the CDDL should have accompanied this
-.\" source. A copy of the CDDL is also available via the Internet at
-.\" http://www.illumos.org/license/CDDL.
-.\"
-.\"
-.\" Copyright 2020 Oxide Computer Company
-.\"
-.Dd October 3, 2020
-.Dt VIOIF 7D
-.Os
-.Sh NAME
-.Nm vioif
-.Nd Virtio Networking Driver
-.Sh SYNOPSIS
-.Pa /dev/net/vioif*
-.Sh DESCRIPTION
-The
-.Nm
-driver is a GLDv3 NIC driver that supports the virtio para-virtualization
-specification which is commonly used by many hypervisors and emulators.
-The device supports what the specification calls the more commonly found
-.Sq legacy
-interface for devices.
-.Pp
-The driver supports the following networking features, if offered by the
-device:
-.Bl -dash
-.It
-Jumbo frames up to 65535 bytes
-.It
-Transmit and receive TCP and UDP checksum offload
-.It
-IPv4 and IPv6 TCP segmentation offload
-.El
-.Sh APPLICATION PROGRAMMING INTERFACE
-For each supported device instance, which corresponds to a port, a
-character-special file is created.
-This device can be used with the Data Link Provider Interface
-.Pq DLPI
-through either
-.Xr libdlpi 3LIB
-or
-.Xr dlpi 7P .
-.Pp
-Each instance is assigned a unique ascending integer identifier starting
-from zero.
-The first instance in the system would be enumerated with the id 0 and
-be named
-.Sy vioif0
-and be found in the file system at
-.Pa /dev/net/vioif0 .
-.Sh CONFIGURATION
-The networking devices created by the
-.Nm
-driver can be controlled through
-.Xr dladm 1M .
-There is no
-.Xr driver.conf 4
-file for
-.Nm
-currently.
-.Sh ARCHITECTURE
-The
-.Nm
-driver is only supported on
-.Sy x86 .
-.Sh FILES
-.Bl -tag -width Pa
-.It Pa /dev/net/vioif*
-.Nm
-special character device.
-.It Pa /kernel/drv/amd64/vioif
-x86 device driver.
-.El
-.Sh SEE ALSO
-.Xr dladm 1M ,
-.Xr libdlpi 3LIB ,
-.Xr virtio 7D ,
-.Xr dlpi 7P ,
-.Xr mac 9E
-.Rs
-.%T Virtual I/O Device (VIRTIO) Version 1.1
-.%D April, 2019
-.%U https://docs.oasis-open.org/virtio/virtio/v1.1/virtio-v1.1.html
-.Re
diff --git a/usr/src/man/man7d/virtio.7d b/usr/src/man/man7d/virtio.7d
deleted file mode 100644
index f5751f4fa7..0000000000
--- a/usr/src/man/man7d/virtio.7d
+++ /dev/null
@@ -1,47 +0,0 @@
-.\"
-.\" This file and its contents are supplied under the terms of the
-.\" Common Development and Distribution License ("CDDL"), version 1.0.
-.\" You may only use this file in accordance with the terms of version
-.\" 1.0 of the CDDL.
-.\"
-.\" A full copy of the text of the CDDL should have accompanied this
-.\" source. A copy of the CDDL is also available via the Internet at
-.\" http://www.illumos.org/license/CDDL.
-.\"
-.\"
-.\" Copyright 2020 Oxide Computer Company
-.\"
-.Dd October 3, 2020
-.Dt VIRTIO 7D
-.Os
-.Sh NAME
-.Nm virtio
-.Nd virtio framework driver
-.Sh DESCRIPTION
-The
-.Nm
-driver provides a framework for other device drivers that implement
-specific types of virtio devices
-.Pq network, block, etc. .
-The driver takes care of feature negotiation, virtqueue management,
-used and available rings, interrupts, and more.
-The driver provides support for both direct and indirect descriptors
-inside of virtqueues.
-.Sh ARCHITECTURE
-The
-.Nm
-driver is only supported on
-.Sy x86 .
-.Sh FILES
-.Bl -tag -width Pa
-.It Pa /kernel/drv/amd64/virtio
-x86 device driver.
-.El
-.Sh SEE ALSO
-.Xr vioblk 7D ,
-.Xr vioif 7D
-.Rs
-.%T Virtual I/O Device (VIRTIO) Version 1.1
-.%D April, 2019
-.%U https://docs.oasis-open.org/virtio/virtio/v1.1/virtio-v1.1.html
-.Re
diff --git a/usr/src/man/man7d/virtualkm.7d b/usr/src/man/man7d/virtualkm.7d
deleted file mode 100644
index f5eb32a428..0000000000
--- a/usr/src/man/man7d/virtualkm.7d
+++ /dev/null
@@ -1,279 +0,0 @@
-'\" te
-.\" Copyright (c) 2007, Sun Microsystems All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH VIRTUALKM 7D "May 13, 2017"
-.SH NAME
-virtualkm \- Virtual keyboard and mouse
-.SH SYNOPSIS
-.LP
-.nf
-\fB/dev/kbd\fR
-.fi
-
-.LP
-.nf
-\fB/dev/mouse\fR
-.fi
-
-.LP
-.nf
-\fB#include <sys/types.h>\fR
-.fi
-
-.LP
-.nf
-\fB#include <sys/kbio.h>\fR
-.fi
-
-.LP
-.nf
-\fBint ioctl(int fildes, int command, ... /*arg*/);\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-A virtual keyboard or mouse is an abstraction of one or more physical keyboards
-or mice (USB or PS2) connected to a system. Input streams for these physical
-devices are coalesced into a single input stream and appear as a single device
-to the upper layers.
-.sp
-.LP
-\fB/dev/kbd\fR is the virtual keyboard device file. Inputs from multiple
-keyboards are coalesced into a single input stream, meaning that all keyboards
-appear as a single keyboard to a console or window system and accordingly, are
-treated as a single device. The virtual keyboard layout is consistent with the
-layout of the first keyboard plugged into the system. Note that on x86
-platforms, the virtual keyboard layout can be overloaded by \fBeeprom\fR(1M).
-.sp
-.LP
-\fB/dev/mouse\fR is the virtual mouse device file. Inputs from multiple mice
-are coalesced into a single input stream, meaning that all mice appear as
-single mouse to the window system.
-.sp
-.LP
-Commands from applications are dispatched by the virtual keyboard/mouse
-facility to the underlying physical devices and will succeed provided that one
-of the underlying devices responds with success. For example, a single command
-issued to turn on LED's will turn on corresponding LED's for all underlying
-physical keyboards.
-.sp
-.LP
-Although physical keyboards/mice are linked to the virtual keyboard/mouse
-facility, each may be opened separately by accessing its associated device
-file. (For example, \fB/dev/usb/hid0\fR for a usb mouse). Directly accessing a
-device file can be useful for multi-seat or similar purposes.
-.sp
-.LP
-When a single physical device is opened via its associated device file, it is
-automatically removed from the single virtual input stream. When closed, it is
-automatically re- coalesced into the single virtual input stream.
-.sp
-.LP
-Under the \fBvirtualkm\fR facility, the PS/2 mouse is coalesced into a virtual
-mouse single input stream and can be accessed using the \fB/dev/mouse\fR file.
-(Note that in previous releases, the PS/2 mouse was accessed via the
-\fB/dev/kdmouse\fR physical device file). In the current release, you use the
-\fB/dev/kdmouse\fR file to directly access the physical PS/2 mouse.
-.SS "INTERFACES"
-.LP
-The virtual mouse provides the following event ID's for mouse capability
-changes:
-.sp
-.ne 2
-.na
-\fBMOUSE_CAP_CHANGE_NUM_BUT\fR
-.ad
-.RS 30n
-This event is reported when the total number of mouse buttons changes. The
-\fBFirm_event.value\fR is set to the new button total, which is the maximum
-number of all mice buttons. Other fields are ignored.
-.RE
-
-.sp
-.ne 2
-.na
-\fBMOUSE_CAP_CHANGE_NUM_WHEEL\fR
-.ad
-.RS 30n
-This event is reported when the total number of mouse wheels changes. The
-\fBFirm_event.value\fR is set to the new wheel total. Other fields are ignored.
-The event value (\fBFirm_event.value\fR) can be 0 (no wheel), 1 (vertical
-wheel), or 2 (vertical and horizontal wheel).
-.RE
-
-.sp
-.LP
-The \fBFirm_event\fR structure is described in <\fBsys/vuid_event.h\fR>. As
-with other events, firm events are received using \fBread\fR(2).
-.sp
-.LP
-Event ID's are used by applications (including certain mouse demo applications)
-that are programmed to graphically represent the actual number of buttons and
-wheels on a mouse. When an application of this type receives a \fBFirm_event\fR
-with a ID MOUSE_CAP_CHANGE_NUM_BUT or MOUSE_CAP_CHANGE_NUM_WHEEL event, it is
-instructed to update its state information using the new value. Consider, for
-example, a mouse demo application whose sole function is to display a mouse
-with buttons that graphically correspond to the actual number of buttons on the
-mouse. If, for example, the system has a single two-button USB mouse attached,
-the application, by default, will graphically display the mouse with a left and
-a right button. However, if a another three-button USB mouse is hot-plugged
-into the system, a MOUSE_CAP_CHANGE_NUM_BUT Firm event with
-\fBFirm_event.value\fR of three instructs the demo application to update the
-mouse display to indicate three buttons.
-.SH IOCTLS
-.ne 2
-.na
-\fBKIOCSETFREQ\fR
-.ad
-.RS 15n
-Sets the frequency for either keyboard beeper or console beeper. To set the
-corresponding beeper frequency, \fIarg\fR must point to a \fBfreq_request\fR
-structure:
-.sp
-.in +2
-.nf
-struct freq_request {
- enum fr_beep_type type; /* beep type */
- int16_t freq; /* frequency */
-};
-.fi
-.in -2
-
-Where \fItype\fR is the corresponding beeper type defined as:
-.sp
-.in +2
-.nf
-enum fr_beep_type { CONSOLE_BEEP =1, KBD_BEEP =2 };
-.fi
-.in -2
-
-and \fIfreq\fR is the frequency value to be set as the beeper frequency
-indicated by \fItype\fR. This value should be between 0 and 32767 with border
-inclusive.
-.RE
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/dev/kbd\fR\fR
-.ad
-.RS 18n
-Virtual Keyboard device file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/mouse\fR\fR
-.ad
-.RS 18n
-Virtual Mouse device file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/kdmouse\fR\fR
-.ad
-.RS 18n
-Physical PS/2 mouse device file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/usb/hid*\fR\fR
-.ad
-.RS 18n
-Physical USB keyboard/mouse device file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/etc/dacf.conf\fR\fR
-.ad
-.RS 18n
-Device auto-configuration file.
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-l l
-l l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-Architecture SPARC, x86
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-.LP
-\fBkbd\fR(1), \fBeeprom\fR(1M), \fBread\fR(2), \fBattributes\fR(5),
-\fBhid\fR(7D), \fBusba\fR(7D), \fBkb\fR(7M), \fBusbkbm\fR(7M), \fBusbms\fR(7M),
-\fBvuidmice\fR(7M)
-.SH DIAGNOSTICS
-.LP
-The messages described below may appear on the system console as well as
-being logged. All messages are formatted in the following manner:
-.sp
-.in +2
-.nf
-WARNING: Error message...
-.fi
-.in -2
-.sp
-
-.sp
-.ne 2
-.na
-\fBconskbd: keyboard is not available for system debugging:
-\fIdevice_path\fR.\fR
-.ad
-.sp .6
-.RS 4n
-Errors were encountered while entering kmdb during initialization for debugger
-mode. As a result, the keyboard is not available.
-.RE
-
-.sp
-.ne 2
-.na
-\fBconskbd: keyboard is not available: <\fIdevice_path\fR>\fR
-.ad
-.sp .6
-.RS 4n
-Errors were encountered while exiting kmdb during un-initialization for
-debugger mode. As a result, the keyboard is not available.
-.RE
-
-.sp
-.ne 2
-.na
-\fBFailed to relink the mouse <\fR\fIdevice_path\fR\fB> underneath virtual mouse\fR
-.ad
-.sp .6
-.RS 4n
-An error was encountered and the mouse is unavailable. (When a mouse is
-physically opened via a physical device file such as \fB/dev/usb/hid0\fR, it is
-removed from the single virtual input stream (\fB/dev/mouse\fR). When closed,
-it is re-coalesced into a single virtual input stream beneath \fB/dev/mouse\fR.
-If an error is encountered, (for example, the mouse has been physically
-removed), it is unavailable beneath \fB/dev/mouse\fR.
-.RE
-
-.SH NOTES
-.LP
-Currently, the \fBvirtualkm\fR device supports only USB and PS2 keyboards and
-mice.
-.sp
-.LP
-The \fBvirtualkm\fR device maintains complete compatibility on select legacy
-systems, (including Ultra 10's), that are equipped with serial keyboard/mouse.
diff --git a/usr/src/man/man7d/vnd.7d b/usr/src/man/man7d/vnd.7d
deleted file mode 100644
index d311c4dc08..0000000000
--- a/usr/src/man/man7d/vnd.7d
+++ /dev/null
@@ -1,118 +0,0 @@
-'\" te
-.\"
-.\" This file and its contents are supplied under the terms of the
-.\" Common Development and Distribution License ("CDDL"), version 1.0.
-.\" You may only use this file in accordance with the terms of version
-.\" 1.0 of the CDDL.
-.\"
-.\" A full copy of the text of the CDDL should have accompanied this
-.\" source. A copy of the CDDL is also available via the Internet at
-.\" http://www.illumos.org/license/CDDL.
-.\"
-.\"
-.\" Copyright (c) 2014, Joyent, Inc. All rights reserved.
-.\"
-.TH VND 7D "Feb 11, 2014"
-.SH NAME
-vnd \- virtual layer two network driver
-
-.SH SYNOPSIS
-.nf
-.LP
-/dev/vnd/ctl
-.LP
-/dev/vnd/*
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The vnd driver provides support for a layer two datapath in an
-analogous way that IP(7P) provides a support for an IP-based layer
-three datapath. Both devices operate exclusively on datalinks. A
-datalink that has been plumbed up with IP via ifconfig(1M) or
-ipadm(1M) cannot be used with vnd or vice-versa.
-.sp
-.LP
-The vnd driver supports and takes advantage of the the following
-illumos features:
-.RS
-.sp
-.LP
-Supports dld/dls feature negotation of GLDv3 features, such
-as direct calls, flow control, checksum offloading, and more.
-.sp
-.LP
-All IP and IPv6 based traffic is sent through ipfilter(5),
-allowing packet filtering.
-.sp
-.LP
-Better control over vectored reads and writes in a frame-centric manner
-through framed I/O. See libvnd(3LIB) for more information on these
-interfaces.
-.RE
-.sp
-.LP
-The vnd driver exposes two different kinds of device nodes. The first is
-a self-cloning control node which can be used to create vnd devices on
-top of datalinks. Those devices can optionally be bound into the file
-system namespace under /dev/vnd. Control operations on the control node
-or named devices are private to the implementation. Instead,
-libvnd(3LIB) provides a stable interfaces for using, creating, and
-manipulating vnd devices.
-.sp
-.SH FILES
-.sp
-.ne 2
-.na
-/dev/vnd/ctl
-.ad
-.RS 16n
-vnd self-cloning control node
-.RE
-
-.sp
-.ne 2
-.na
-/dev/vnd/%link
-.ad
-.RS 16n
-Character device that corresponds to the vnd device of the given
-name (%link). A given device will appear for each actively linked device
-in the current zone.
-.RE
-
-.sp
-.ne 2
-.na
-/dev/vnd/zone/%zone/%link
-.ad
-.RS 16n
-These are character devices that correspond to the vnd device of
-the given name (%link). They are organized based on the zone that they
-appear in. Thus if a zone named foo has a vnd device named
-bar, then the global zone will have the file
-/dev/vnd/zone/foo/bar. Note, these only occur in the global zone.
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See attributes(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-dladm(1M), ipflter(5), libvnd(3LIB), vndadm(1M),
-vndstat(1)
diff --git a/usr/src/man/man7d/vni.7d b/usr/src/man/man7d/vni.7d
deleted file mode 100644
index f97ec438d2..0000000000
--- a/usr/src/man/man7d/vni.7d
+++ /dev/null
@@ -1,61 +0,0 @@
-'\" te
-.\" Copyright (c) 2004 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH VNI 7D "Jul 18, 2004"
-.SH NAME
-vni \- STREAMS virtual network interface driver
-.SH DESCRIPTION
-.sp
-.LP
-The \fBvni\fR pseudo device is a multi-threaded, loadable, clonable, STREAMS
-pseudo-device supporting the connectionless Data Link Provider Interface
-\fBdlpi\fR(7P) Style 2. Note that DLPI is intended to interact with IP, meaning
-that DLPI access to applications is not supported. (For example, snoop fails on
-the \fBvni\fR interface.)
-.sp
-.LP
-The \fBvni\fR device is a software-only interface and does not send or receive
-data. The device provides a DLPI upper interface that identifies itself to IP
-with a private media type. It can be configured via \fBifconfig\fR(1M) and can
-have IP addresses assigned to it, making aliases possible.
-.sp
-.LP
-The \fBvni\fR pseudo device is particularly useful in hosting an IP address
-when used in conjunction with the 'usesrc' \fBifconfig\fR option (see
-\fBifconfig\fR(1M) for examples). The logical instances of the device can also
-be used to host addresses as an alternative to hosting them over the loopback
-interface.
-.sp
-.LP
-Multicast is not supported on this device. More specifically, the following
-options return an error when used with an address specified on \fBvni\fR:
-IP_MULTICAST_IF, IP_ADD_MEMBERSHIP, IP_DROP_MEMBERSHIP, IPV6_MULTICAST_IF,
-IPV6_JOIN_GROUP, IPV6_LEAVE_GROUP. In addition, broadcast is not supported.
-.sp
-.LP
-Because there is no physical hardware configured below it, no traffic can be
-received through nor transmitted on a virtual interface. All packet
-transmission and reception is accomplished with existing physical interfaces
-and tunnels. Because applications that deal with packet transmission and
-reception (such as packet filters) cannot filter traffic on virtual interfaces,
-you cannot set up a packet filter on a virtual interface. Instead, you should
-configure the policy rules to apply to the physical interfaces and tunnels, and
-if necessary, use the virtual IP addresses themselves as part of the rule
-configuration. Also, note that the virtual interface cannot be part of an IP
-multipathing (IPMP) group.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/dev/vni\fR\fR
-.ad
-.RS 12n
-64-bit ELF kernel driver
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBifconfig\fR(1M), \fBin.mpathd\fR(1M), \fBip\fR(7P), \fBip6\fR(7P)
diff --git a/usr/src/man/man7d/vr.7d b/usr/src/man/man7d/vr.7d
deleted file mode 100644
index b6f98c46a1..0000000000
--- a/usr/src/man/man7d/vr.7d
+++ /dev/null
@@ -1,137 +0,0 @@
-'\" te
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH VR 7D "May 5, 2009"
-.SH NAME
-vr \- driver for VIA Rhine fast Ethernet controllers
-.SH DESCRIPTION
-.sp
-.LP
-The \fBvr\fR Fast Ethernet driver is GLD based and supporting the VIA Rhine
-family of Fast Ethernet adapters:
-.sp
-.in +2
-.nf
-pci1106,3043 VIA VT86C100A Fast Ethernet
-pci1106,3065 VT6102 VIA Rhine II
-pci1106,3106 VT6105 VIA Rhine III
-pci1106,3053 VT6105 VIA Rhine III Management Adapter
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-The \fBvr\fR driver supports IEEE 802.3 auto-negotiation, flow control and VLAN
-tagging.
-.SS "Configuration"
-.sp
-.LP
-The default configuration is \fBautonegotiation\fR with bidirectional flow
-control. The advertised capabilities for \fBautonegotiation\fR are based on the
-capabilities of the PHY.
-.sp
-.LP
-You can set the capabilities advertised by the \fBvr\fR controlled device using
-\fBdladm\fR(1M). The driver supports a number of parameters, the names of which
-begin with \fBen_\fR (enabled). Each of these boolean parameters determines if
-the device advertises that mode of operation when the hardware supports it.
-.sp
-.LP
-The \fBadv_autoneg_cap\fR parameter controls whether auto-negotiation is
-performed. If \fBadv_autoneg_cap\fR is 0, the driver selects the speed/duplex
-combination from the first non-zero parameter from this list:
-.sp
-.in +2
-.nf
-en_100fdx_cap 100Mbps full duplex
-en_100hdx_cap 100Mbps half duplex
-en_10fdx_cap 10Mbps full duplex
-en_10hdx_cap 10Mbps half duplex
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-All capabilities default to enabled. Changing any capability parameter causes
-the link to go down while the link partners renegotiate the link using the
-newly changed capabilities.
-.SS "Limitations"
-.sp
-.LP
-The \fBvr\fR driver does not support asymmetric \fBflowcontrol\fR. VT86C100A
-and Rhine II adapters are not capable of transmitting \fBflowcontrol\fR
-messages
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/dev/vr\fR\fR
-.ad
-.RS 26n
-Special character device
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/vr\fR\fR
-.ad
-.RS 26n
-32-bit device driver (x86)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/sparcv9/vr\fR\fR
-.ad
-.RS 26n
-64-bit device driver (SPARC)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/vr\fR\fR
-.ad
-.RS 26n
-64-bit device driver (x86)
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for a description of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-l | l
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture SPARC, x86
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBdladm\fR(1M), \fBnetstat\fR(1M), \fBdriver.conf\fR(4), \fBattributes\fR(5),
-\fBieee802.3\fR(5), \fBdlpi\fR(7P), \fBstreamio\fR(7I)
-.sp
-.LP
-\fIWriting Device Drivers\fR
-.sp
-.LP
-\fISTREAMS Programmer's Guide\fR
-.sp
-.LP
-\fINetwork Interfaces Programmer's Guide\fR
-.sp
-.LP
-\fIIEEE 802.3ae Specification - 2002\fR
diff --git a/usr/src/man/man7d/wpi.7d b/usr/src/man/man7d/wpi.7d
deleted file mode 100644
index 6cf2991334..0000000000
--- a/usr/src/man/man7d/wpi.7d
+++ /dev/null
@@ -1,82 +0,0 @@
-'\" te
-.\" Copyright (c) 2006 Damien Bergamini
-.\" Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
-.\" 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 3. Neither the name of the author nor the names of any co-contributors may be used to endorse
-.\" or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER AND CONTRIBUTORS ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-.\" A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-.\" OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE
-.\" Portions Copyright (c) 2007 by Sun Microsystems, Inc. All Rights Reserved.
-.TH WPI 7D "Apr 23, 2007"
-.SH NAME
-wpi \- Intel Pro Wireless 802.11a/b/g 3945 driver
-.SH DESCRIPTION
-.sp
-.LP
-The \fBwpi\fR \fI802.11b/g\fR wireless NIC driver is a multi-threaded,
-loadable, clonable, GLDv3-based STREAMS driver supporting the Intel Pro
-Wireless 3945ABG chipset-based NIC's.
-.SH CONFIGURATION
-.sp
-.LP
-The \fBwpi\fR driver performs auto-negotiation to determine the data rate and
-mode. Supported \fI802.11b\fR data rates are 1, 2, 5.5 and 11 Mbits/sec.
-Supported \fI802.11g\fR data rates are 1, 2, 5.5, 11, 6, 9, 12, 18, 24, 36, 48
-and 54 Mbits/sec.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/dev/wpi\fR\fR
-.ad
-.sp .6
-.RS 4n
-Special character device.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/wpi\fR\fR
-.ad
-.sp .6
-.RS 4n
-32-bit \fBELF\fR kernel module (x86).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/wpi\fR\fR
-.ad
-.sp .6
-.RS 4n
-64-bit \fBELF\fR kernel module (x86).
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture x86
-_
-Interface Stability Committed
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBdladm\fR(1M), \fBwificonfig\fR(1M), \fBattributes\fR(5), \fBgld\fR(7D),
-\fBdlpi\fR(7P)
-.sp
-.LP
-\fI802.11 \(em Wireless LAN Media Access Control and Physical Layer
-Specification\fR \(em IEEE, 2001
diff --git a/usr/src/man/man7d/wscons.7d b/usr/src/man/man7d/wscons.7d
deleted file mode 100644
index cbafe66ddd..0000000000
--- a/usr/src/man/man7d/wscons.7d
+++ /dev/null
@@ -1,1039 +0,0 @@
-'\" te
-.\" Copyright (c) 2006 Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 2021 Peter Tribble.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH WSCONS 7D "August 29, 2021"
-.SH NAME
-wscons \- workstation console
-.SH SYNOPSIS
-.nf
-\fB#include <sys/strredir.h>\fR
-.fi
-
-.LP
-.nf
-\fBioctl\fR(\fIfd\fR, SRIOCSREDIR, \fItarget\fR);
-.fi
-
-.LP
-.nf
-\fBioctl\fR(\fIfd\fR, SRIOCISREDIR, \fItarget\fR);
-.fi
-
-.SH DESCRIPTION
-The \fBwscons\fR workstation console consists of a workstation keyboard and
-frame buffer that act together to emulate an \fBASCII\fR terminal. It includes
-a redirection facility that allows I/O issued to the workstation console to be
-diverted to a STREAMS device, enabling window systems to redirect output that
-would otherwise appear directly on the frame buffer in corrupted form.
-.SS "Redirection"
-The \fBwscons\fR redirection facility maintains a list of devices that are
-designated as redirection targets through the \fBSRIOCSREDIR\fR ioctl described
-below. Only the current entry is active; when the active entry is closed, the
-most recent remaining entry becomes active. The active entry acts as a proxy
-for the device being redirected and handles all \fBread\fR(2), \fBwrite\fR(2),
-\fBioctl\fR(2), and \fBpoll\fR(2) calls issued against the redirectee.
-.sp
-.LP
-The ioctls described below control the redirection facility. In both cases,
-\fIfd\fR is a descriptor for the device being redirected (or workstation
-console) and \fItarget\fR is a descriptor for a STREAMS device.
-.sp
-.ne 2
-.na
-\fB\fBSRIOCSREDIR\fR\fR
-.ad
-.RS 16n
-Designates \fItarget\fR as the source and destination of I/O ostensibly
-directed to the device denoted by \fIfd\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSRIOCISREDIR\fR\fR
-.ad
-.RS 16n
-Returns 1 if \fItarget\fR names the device currently acting as proxy for the
-device denoted by \fIfd\fR, and 0 if it is not.
-.RE
-
-.SS "ANSI Standard Terminal Emulation"
-The Solaris kernel terminal emulator provides ANSI X3.64 emulation both on
-SPARC and x86 systems.
-.sp
-.LP
-On SPARC systems, the PROM monitor is used to emulate an ANSI X3.64 terminal
-if the kernel terminal emulator is not available for emulation. See
-\fBvisual_io\fR(7I) for more details.
-.sp
-.LP
-Note: The \fBVT100\fR adheres the \fBANSI\fR X3.64 standard. However, because
-the \fBVT100\fR features nonstandard extensions to \fBANSI\fR X3.64, it is
-incompatible with Sun terminal emulators.
-.sp
-.LP
-The SPARC console displays 34 lines of 80 ASCII characters per line. The x86
-console displays 25 lines of 80 ASCII characters per line. Devices with
-smaller text capacities may display less. On SPARC systems, the \fBscreen-#rows
-screen-#columns\fR should be set to 34 or 80 respectively or text capacities
-will vary from those described above. On SPARC systems, the \fBscreen-#rows and
-screen-#columns\fR fields are stored in \fBNVRAM/EEPROM\fR. See
-\fBeeprom\fR(1M) for more information. Both SPARC and x86 consoles offer
-scrolling, (x, y) cursor addressing ability and a number of other control
-functions.
-.sp
-.LP
-The console cursor marks the current line and character position on the screen.
-\fBASCII\fR characters between \fB0x20 \fR(space) and \fB0x7E\fR (tilde)
-inclusive are printing characters. When a print character is written to the
-console (and is not part of an escape sequence), it is displayed at the current
-cursor position and the cursor moves one position to the right on the current
-line.
-.sp
-.LP
-On SPARC based systems, later \fBPROM\fR revisions have the full 8-bit ISO
-Latin-1 (\fIISO 8859-1\fR) character set. Earlier \fBPROM\fR revisions display
-characters in the range \fB0xA0 \fRthrough \fB0xFE \fRas spaces.
-.sp
-.LP
-When the cursor is at the right edge of the screen, it moves to the first
-character position on the next line. When the cursor is at the screen's
-right-bottom edge, the line-feed function is performed (see \fBCTRL-J\fR
-below). The line-feed function scrolls the screen up by one or more lines
-before moving the cursor to the first character position on the next line.
-.SS "Control Sequence Syntax"
-The \fBwscons\fR console defines a number of control sequences that may occur
-during input. When a control sequence is written to the console, it affects
-one of the control functions described below. Control sequences are not
-displayed on screen.
-.sp
-.LP
-A number of control sequences (or control character functions) are of the form:
-.sp
-.LP
-\fBCTRL-\fR\fIx\fR
-.sp
-.LP
-where \fIx\fR represents a single character, such as \fBCNTRL-J\fR for a line
-feed.
-.sp
-.LP
-Other \fBANSI\fR control sequences are of the form:
-.sp
-.in +2
-.nf
-ESC [ \fIparams char\fR
-.fi
-.in -2
-
-.LP
-Note -
-.sp
-.RS 2
-Spaces are included only for readability; these characters must occur in the
-given sequence without the intervening spaces.
-.RE
-.sp
-.ne 2
-.na
-\fBESC\fR
-.ad
-.RS 10n
-\fBASCII\fR escape character (\fBESC, CTRL-[, 0x1B\fR).
-.RE
-
-.sp
-.ne 2
-.na
-\fB[\fR
-.ad
-.RS 10n
-Left square bracket `[' (\fB0x5B)\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIparams\fR\fR
-.ad
-.RS 10n
-Sequence of zero or more decimal numbers made up of digits between 0 and 9,
-separated by semicolons. Parameters are represented by \fIn\fR in the syntax
-descriptions for escape sequence functions.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fIchar\fR\fR
-.ad
-.RS 10n
-Function character, which is different for each control sequence and it
-represented by \fIx\fR in the syntax descriptions for control character
-functions.
-.RE
-
-.sp
-.LP
-In the following examples of syntactically valid escape sequences, \fBESC
-\fRrepresent the single \fBASCII\fR character, Escape:
-.sp
-.ne 2
-.na
-\fBESC[m\fR
-.ad
-.RS 22n
-Select graphic rendition with default parameter
-.RE
-
-.sp
-.ne 2
-.na
-\fBESC[7m\fR
-.ad
-.RS 22n
-Select graphic rendition with reverse image
-.RE
-
-.sp
-.ne 2
-.na
-\fBESC[33;54H\fR
-.ad
-.RS 22n
-Set cursor position
-.RE
-
-.sp
-.ne 2
-.na
-\fBESC[123;456;0;;3;B\fR
-.ad
-.RS 22n
-Move cursor down
-.RE
-
-.sp
-.LP
-Syntactically valid control characters and \fBANSI\fR escape sequences that are
-not currently interpreted by the console are ignored.
-.sp
-.LP
-Each control function requires a specified number of parameters. If fewer
-parameters are supplied, the remaining parameters (with certain exceptions
-noted below) default to 1. If more parameters are supplied, the first \fIn\fR
-parameters are used by kernel terminal emulator. In contrast, only the last
-\fIn\fR parameters are used by PROM based emulator, where \fIn\fR is the number
-required by that particular command character.
-.sp
-.LP
-Parameters which are omitted or set to 0 are reset to the default value of 1
-(with certain exceptions). For example, the command character \fBM\fR requires
-one parameter. \fBESC[;M\fR, \fBESC[0M\fR, \fBESC[M\fR and
-\fBESC[23;15;32;1M\fR are all equivalent to \fBESC[1M\fR and provide a
-parameter value of 1. Note that \fBESC[;5M\fR (interpreted as \fB`ESC[5M\fR')
-is \fInot\fR equivalent to \fBESC[5;M\fR (interpreted as `\fBESC[5;1M\fR')
-which is ultimately interpreted as `\fBESC[1M\fR').
-.SS "ANSI Control Functions"
-The following paragraphs specify the \fBANSI\fR control functions implemented
-by the console. Each description provides:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Control sequence syntax
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Hexadecimal equivalent of control characters where applicable
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Control function name and \fBANSI\fR or Sun abbreviation (if any).
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Description of parameters required, if any
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Description of the control function
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Initial setting of the mode for functions that set a mode. To restore the
-initial settings, use the \fBSUNRESET\fR escape sequence.
-.RE
-.SS "Control Character Functions"
-The \fBwscons \fRcontrol character functions are:
-.sp
-.ne 2
-.na
-\fBBell (BEL),\fR
-.ad
-.br
-.na
-\fBCTRL-G\fR
-.ad
-.br
-.na
-\fB0x7\fR
-.ad
-.RS 22n
-Used for consoles that are not equipped with an audible bell. Current Sun
-workstation models also flash the screen if the keyboard is not the console
-input device.
-.RE
-
-.sp
-.ne 2
-.na
-\fBBackspace (BS),\fR
-.ad
-.br
-.na
-\fBCTRL-H,\fR
-.ad
-.br
-.na
-\fB0x8\fR
-.ad
-.RS 22n
-The cursor moves one position to the left on the current line. If it is
-already at the left edge of the screen, no change takes place.
-.RE
-
-.sp
-.ne 2
-.na
-\fBTab (TAB),\fR
-.ad
-.br
-.na
-\fBCTRL-I,\fR
-.ad
-.br
-.na
-\fB0x9\fR
-.ad
-.RS 22n
-The cursor moves right on the current line to the next tab stop. The tab stops
-are fixed at every multiple of eight columns. If the cursor is already at the
-right edge of the screen, nothing change takes place. Otherwise, the cursor
-moves right a minimum of one and a maximum of eight character positions.
-.RE
-
-.sp
-.ne 2
-.na
-\fBLine-feed (LF),\fR
-.ad
-.br
-.na
-\fBCTRL-J,\fR
-.ad
-.br
-.na
-\fB0xA\fR
-.ad
-.RS 22n
-The cursor, while remaining at the same character position on the line, moves
-down one line. If the cursor is at the bottom line, the screen either scrolls
-up or wraps around depending on the setting of an internal variable \fIn\fR
-(initially 1) . The internal variable can be changed using the \fBESC[r\fR
-control sequence. If \fIn\fR is greater than zero, the entire screen
-(including the cursor) is scrolled up by \fIn\fR lines before executing the
-line-feed. The top \fIn\fR lines scroll off the screen and are lost. New blank
-lines \fIn\fR scroll onto the bottom of the screen. After scrolling, move the
-cursor down one line to execute the line feed.
-.sp
-If \fIn\fR is zero, wrap-around mode is entered. The \fBESC [ 1 r\fR exits back
-to scroll mode. If a line-feed occurs on the bottom line in wrap mode, the
-cursor goes to the same character position in the top line of the screen.
-During line-feeds, the line that the cursor moves to is cleared and no
-scrolling occurs. Wrap-around mode is not implemented in the window system.
-.sp
-On SPARC based systems, the speed at which the screen scrolls is dependent on
-the amount of data waiting to be printed. Whenever a scroll occurs and the
-console is in normal scroll mode (\fBESC [ 1 r\fR), it scans the rest of the
-data awaiting printing to see how many line-feeds occur in it. This scan stops
-when the console finds a control character from the set {\fBVT\fR, \fBFF\fR,
-\fBSO\fR, \fBSI\fR, \fBDLE\fR, \fBDC1\fR, \fBDC2\fR, \fBDC3\fR, \fBDC4\fR,
-\fBNAK\fR, \fBSYN\fR, \fBETB\fR, \fBCAN\fR, \fBEM\fR, \fBSUB\fR, \fBESC\fR,
-\fBFS\fR, \fBGS\fR, \fBRS\fR, \fBUS\fR} . At that point, the screen is
-scrolled by \fIn\fR lines (\fIn\fR \(>= 1) and processing continues. The
-scanned text is processed normally and fills in the newly created lines. As
-long as escape codes or other control characters are not intermixed with the
-text, this results in faster scrolling
-.RE
-
-.sp
-.ne 2
-.na
-\fBReverse Line-feed,\fR
-.ad
-.br
-.na
-\fBCTRL-K,\fR
-.ad
-.br
-.na
-\fB0xB\fR
-.ad
-.RS 22n
-With kernel terminal emulator (while remaining at the same character position
-on the line), the cursor moves down one line. However, with PROM based
-emulator (while remaining at the same character position on the line), the
-cursor moves up one line. If the cursor is already at the top line, no
-change takes place.
-.RE
-
-.sp
-.ne 2
-.na
-\fBForm-feed (FF)\fR
-.ad
-.br
-.na
-\fBCTRL-L,\fR
-.ad
-.br
-.na
-\fB0xC\fR
-.ad
-.RS 22n
-The cursor is positioned to the home position (upper-left corner) and the
-entire screen is cleared.
-.RE
-
-.sp
-.ne 2
-.na
-\fBReturn (CR),\fR
-.ad
-.br
-.na
-\fBCTRL-M,\fR
-.ad
-.br
-.na
-\fB0xD\fR
-.ad
-.RS 22n
-The cursor moves to the leftmost character position on the current line.
-.RE
-
-.SS "Escape Sequence Functions"
-The \fBwscons \fRescape sequence functions are:
-.sp
-.ne 2
-.na
-\fBEscape (ESC),\fR
-.ad
-.br
-.na
-\fBCTRL-[,\fR
-.ad
-.br
-.na
-\fB0x1B\fR
-.ad
-.sp .6
-.RS 4n
-The escape character. Escape initiates a multi-character control sequence.
-.RE
-
-.sp
-.ne 2
-.na
-\fBInsert Character (ICH)\fR
-.ad
-.br
-.na
-\fBESC[#@\fR
-.ad
-.sp .6
-.RS 4n
-Takes one parameter, \fIn\fR (default 1). Inserts \fIn\fR spaces at the
-current cursor position. The current line, starting at the current cursor
-position inclusive, is shifted to the right by \fIn\fR character positions to
-make room for the spaces. The rightmost \fIn\fR character positions shift off
-the line and are lost. The position of the cursor is unchanged.
-.RE
-
-.sp
-.ne 2
-.na
-\fBCursor Up (CUU),\fR
-.ad
-.br
-.na
-\fBESC[#A\fR
-.ad
-.sp .6
-.RS 4n
-Takes one parameter, \fIn\fR (default 1). Moves the cursor up \fIn\fR lines.
-If the cursor is fewer than \fIn\fR lines from the top of the screen, moves
-the cursor to the topmost line on the screen. The character position of the
-cursor on the line is unchanged.
-.RE
-
-.sp
-.ne 2
-.na
-\fBCursor Down (CUD),\fR
-.ad
-.br
-.na
-\fBESC[#B\fR
-.ad
-.sp .6
-.RS 4n
-Takes one parameter, (default 1). Moves the cursor down \fIn\fR lines. If
-the cursor is fewer than \fIn\fR lines from the bottom of the screen, move the
-cursor to the last line on the screen. The character position of the cursor on
-the line is unchanged.
-.RE
-
-.sp
-.ne 2
-.na
-\fBCursor Forward (CUF),\fR
-.ad
-.br
-.na
-\fBESC[#C\fR
-.ad
-.sp .6
-.RS 4n
-Takes one parameter, \fIn\fR (default 1). Moves the cursor to the right by
-\fIn\fR character positions on the current line. If the cursor is fewer than
-\fIn\fR positions from the right edge of the screen, moves the cursor to the
-rightmost position on the current line.
-.RE
-
-.sp
-.ne 2
-.na
-\fBCursor Backward (CUB),\fR
-.ad
-.br
-.na
-\fBESC[#D\fR
-.ad
-.sp .6
-.RS 4n
-Takes one parameter, \fIn\fR (default 1). Moves the cursor to the left by
-\fIn\fR character positions on the current line. If the cursor is fewer than
-\fIn\fR positions from the left edge of the screen, moves the cursor to the
-leftmost position on the current line.
-.RE
-
-.sp
-.ne 2
-.na
-\fBCursor Next Line (CNL),\fR
-.ad
-.br
-.na
-\fBESC[#E\fR
-.ad
-.sp .6
-.RS 4n
-Takes one parameter, \fIn\fR (default 1). Positions the cursor at the
-leftmost character position on the \fIn\fR-th line below the current line. If
-the current line is less than \fIn\fR lines from the bottom of the screen,
-positions the cursor at the leftmost character position on the bottom line.
-.RE
-
-.sp
-.ne 2
-.na
-\fBHorizontal and Vertical Position (HVP),\fR
-.ad
-.br
-.na
-\fBESC[#1;#2f\fR
-.ad
-.sp .6
-.RS 4n
-or
-.RE
-
-.sp
-.ne 2
-.na
-\fBCursor Position (CUP),\fR
-.ad
-.br
-.na
-\fBESC[#1;#2H\fR
-.ad
-.sp .6
-.RS 4n
-Takes two parameters, \fIn\fR1 and \fIn\fR2 (default 1, 1). Moves the cursor
-to the \fIn\fR2-th character position on the \fIn\fR1-th line. Character
-positions are numbered from 1 at the left edge of the screen; line positions
-are numbered from 1 at the top of the screen. Hence, if both parameters are
-omitted, the default action moves the cursor to the home position (upper left
-corner). If only one parameter is supplied, the cursor moves to column 1 of
-the specified line.
-.RE
-
-.sp
-.ne 2
-.na
-\fBErase in Display (ED),\fR
-.ad
-.br
-.na
-\fBESC[J\fR
-.ad
-.sp .6
-.RS 4n
-Takes no parameters. Erases from the current cursor position inclusive to the
-end of the screen, that is, to the end of the current line and all lines below
-the current line. The cursor position is unchanged.
-.RE
-
-.sp
-.ne 2
-.na
-\fBErase in Line (EL),\fR
-.ad
-.br
-.na
-\fBESC[K\fR
-.ad
-.sp .6
-.RS 4n
-Takes no parameters. Erases from the current cursor position inclusive to the
-end of the current line. The cursor position is unchanged.
-.RE
-
-.sp
-.ne 2
-.na
-\fBInsert Line (IL),\fR
-.ad
-.br
-.na
-\fBESC[#L\fR
-.ad
-.sp .6
-.RS 4n
-Takes one parameter, \fIn\fR (default 1). Makes room for \fIn\fR new lines
-starting at the current line by scrolling down by \fIn\fR lines the portion of
-the screen from the current line inclusive to the bottom. The \fIn\fR new
-lines at the cursor are filled with spaces; the bottom \fIn\fR lines shift off
-the bottom of the screen and are lost. The position of the cursor on the
-screen is unchanged.
-.RE
-
-.sp
-.ne 2
-.na
-\fBDelete Line (DL),\fR
-.ad
-.br
-.na
-\fBESC[#M\fR
-.ad
-.sp .6
-.RS 4n
-Takes one parameter, \fIn\fR (default 1). Deletes \fIn\fR lines beginning
-with the current line. The portion of the screen from the current line
-inclusive to the bottom is scrolled upward by \fIn\fR lines. The \fIn\fR new
-lines scrolling onto the bottom of the screen are filled with spaces; the
-\fIn\fR old lines beginning at the cursor line are deleted. The position of
-the cursor on the screen is unchanged.
-.RE
-
-.sp
-.ne 2
-.na
-\fBDelete Character (DCH),\fR
-.ad
-.br
-.na
-\fBESC[#P\fR
-.ad
-.sp .6
-.RS 4n
-Takes one parameter, \fIn\fR (default 1). Deletes \fIn\fR characters
-starting with the current cursor position. Shifts the tail of the current line
-to the left by \fIn\fR character positions from the current cursor position,
-inclusive, to the end of the line. Blanks are shifted into the rightmost
-\fIn\fR character positions. The position of the cursor on the screen is
-unchanged.
-.RE
-
-.sp
-.ne 2
-.na
-\fBSelect Graphic Rendition (SGR),\fR
-.ad
-.br
-.na
-\fBESC[#m\fR
-.ad
-.sp .6
-.RS 4n
-Takes one parameter, \fIn\fR (default 0). Note that unlike most escape
-sequences, the parameter defaults to zero if omitted. Invokes the graphic
-rendition specified by the parameter. All following printing characters in the
-data stream are rendered according to the parameter until the next occurrence
-of this escape sequence in the data stream. With PROM-based emulator, only two
-graphic renditions are defined:
-.sp
-.ne 2
-.na
-\fB0\fR
-.ad
-.RS 5n
-Normal rendition
-.RE
-
-.sp
-.ne 2
-.na
-\fB7\fR
-.ad
-.RS 5n
-Negative (reverse) image
-.RE
-
-Negative image displays characters as white-on-black if the screen mode is
-currently black-on white, and vice-versa. Any non-zero value of \fIn\fR is
-currently equivalent to 7 and selects the negative image rendition.
-.sp
-In addition to the two renditions mentioned above, the following\fI ISO
-6429-1983\fR graphic rendition values support color text with kernel terminal
-emulator:
-.sp
-.ne 2
-.na
-\fB30\fR
-.ad
-.RS 6n
-black foreground
-.RE
-
-.sp
-.ne 2
-.na
-\fB31\fR
-.ad
-.RS 6n
-red foreground
-.RE
-
-.sp
-.ne 2
-.na
-\fB32\fR
-.ad
-.RS 6n
-green foreground
-.RE
-
-.sp
-.ne 2
-.na
-\fB33\fR
-.ad
-.RS 6n
-brown foreground
-.RE
-
-.sp
-.ne 2
-.na
-\fB34\fR
-.ad
-.RS 6n
-blue foreground
-.RE
-
-.sp
-.ne 2
-.na
-\fB35\fR
-.ad
-.RS 6n
-magenta foreground
-.RE
-
-.sp
-.ne 2
-.na
-\fB36\fR
-.ad
-.RS 6n
-cyan foreground
-.RE
-
-.sp
-.ne 2
-.na
-\fB37\fR
-.ad
-.RS 6n
-white foreground
-.RE
-
-.sp
-.ne 2
-.na
-\fB40\fR
-.ad
-.RS 6n
-black background
-.RE
-
-.sp
-.ne 2
-.na
-\fB41\fR
-.ad
-.RS 6n
-red background
-.RE
-
-.sp
-.ne 2
-.na
-\fB42\fR
-.ad
-.RS 6n
-green background
-.RE
-
-.sp
-.ne 2
-.na
-\fB43\fR
-.ad
-.RS 6n
-brown background
-.RE
-
-.sp
-.ne 2
-.na
-\fB44\fR
-.ad
-.RS 6n
-blue background
-.RE
-
-.sp
-.ne 2
-.na
-\fB45\fR
-.ad
-.RS 6n
-magenta background
-.RE
-
-.sp
-.ne 2
-.na
-\fB46\fR
-.ad
-.RS 6n
-cyan background
-.RE
-
-.sp
-.ne 2
-.na
-\fB47\fR
-.ad
-.RS 6n
-white background
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fBBlack On White (SUNBOW),\fR
-.ad
-.br
-.na
-\fBESC[p\fR
-.ad
-.sp .6
-.RS 4n
-Takes no parameters. On SPARC, sets the screen mode to black-on-white. If the
-screen mode is already black-on-white, has no effect. In this mode, spaces
-display as solid white, other characters as black-on-white. The cursor is a
-solid black block. Characters displayed in negative image rendition (see
-`Select Graphic Rendition' above) are white-on-black. This comprises the
-initial setting of the screen mode on reset. On x86 systems, use \fBESC[q\fR to
-set black-on-white.
-.RE
-
-.sp
-.ne 2
-.na
-\fBWhite On Black (SUNWOB),\fR
-.ad
-.br
-.na
-\fBESC[q\fR
-.ad
-.sp .6
-.RS 4n
-Takes no parameters. On SPARC, sets the screen mode to white-on-black. If the
-screen mode is already white-on-black, has no effect. In this mode spaces
-display as solid black, other characters as white-on-black. The cursor is a
-solid white block. Characters displayed in negative image rendition (see
-`Select Graphic Rendition' above) are black-on-white. Initial setting of the
-screen mode on reset is black on white. On x86 systems, use \fBESC[p\fR to set
-white-on-black.
-.RE
-
-.sp
-.ne 2
-.na
-\fBESC[#r\fR
-.ad
-.br
-.na
-\fBSet Scrolling (SUNSCRL)\fR
-.ad
-.sp .6
-.RS 4n
-Takes one parameter, \fIn\fR (default 0). Sets to \fIn\fR an internal
-register which determines how many lines the screen scrolls up when a line-feed
-function is performed with the cursor on the bottom line. A parameter of 2 or
-3 introduces a small amount of jump when a scroll occurs. A parameter of 34
-clears the screen rather than scrolling. The initial setting is 1 on reset.
-.sp
-A parameter of zero initiates wrap mode instead of scrolling. If a linefeed
-occurs on the bottom line during wrap mode, the cursor goes to the same
-character position in the top line of the screen. When a line feed occurs, the
-line that the cursor moves to is cleared and no scrolling occurs. \fBESC [ 1
-r\fR exits back to scroll mode.
-.sp
-For more information, see the description of the Line-feed (\fBCTRL-J\fR)
-control function above.
-.RE
-
-.sp
-.ne 2
-.na
-\fBESC[s\fR
-.ad
-.br
-.na
-\fBReset terminal emulator (SUNRESET)\fR
-.ad
-.sp .6
-.RS 4n
-Takes no parameters. Resets all modes to default, restores current font from
-\fBPROM.\fR Screen and cursor position are unchanged.
-.RE
-
-.SH RETURN VALUES
-When there are no errors, the redirection ioctls have return values as
-described above. Otherwise, they return \fB\(mi1\fR and set \fBerrno\fR to
-indicate the error. If the target stream is in an error state, \fBerrno \fRis
-set accordingly.
-.sp
-.LP
-If the \fItarget\fR stream is in an error state, \fBerrno\fR is set
-accordingly.
-.SH ERRORS
-.ne 2
-.na
-\fB\fBEBADF\fR\fR
-.ad
-.RS 10n
-\fItarget\fR does not denote an open file.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBENOSTR\fR\fR
-.ad
-.RS 10n
-\fItarget\fR does not denote a \fBSTREAMS\fR device.
-.RE
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/dev/wscons\fR\fR
-.ad
-.RS 16n
-Workstation console, accessed via the redirection facility
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/systty\fR\fR
-.ad
-.RS 16n
-Devices that must be opened for the \fBSRIOCSREDIR\fR and \fBSRIOCISREDIR\fR
-ioctls.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/syscon\fR\fR
-.ad
-.RS 16n
-Access system console
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/console\fR\fR
-.ad
-.RS 16n
-Access system console
-.RE
-
-.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Stable
-.TE
-
-.SH SEE ALSO
-\fBeeprom\fR(1M), \fBioctl\fR(2), \fBpoll\fR(2), \fBread\fR(2),
-\fBwrite\fR(2), \fBconsole\fR(7D), \fBvisual_io\fR(7I)
-.SH WARNINGS
-The redirection ioctls block while there is I/O outstanding on the device
-instance being redirected. If you try to redirect the workstation console while
-there is a outstanding read, the workstation console will hang until the read
-completes.
diff --git a/usr/src/man/man7d/xge.7d b/usr/src/man/man7d/xge.7d
deleted file mode 100644
index c55d8bedd4..0000000000
--- a/usr/src/man/man7d/xge.7d
+++ /dev/null
@@ -1,163 +0,0 @@
-'\" te
-.\" Copyright (c) 2005, Sun Microsystems All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH XGE 7D "Oct 3, 2005"
-.SH NAME
-xge \- Neterion Xframe 10Gigabit Ethernet Network Adapter driver
-.SH SYNOPSIS
-.LP
-.nf
-/dev/xge
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBxge\fR 10 Gigabit Ethernet driver is a multi-threaded, loadable,
-clonable, GLD-based STREAMS driver supporting the Data Link Provider
-Interface, \fBdlpi\fR(7P), on S2IO Xframe 10-Gigabit Ethernet Network Adapter.
-.sp
-.LP
-The \fBxge\fR driver functions includes controller initialization, frame
-transmit and receive, promiscuous and multicast support, TCP and UDP checksum
-offload (IPv4 and IPv6), 9622-byte jumbo frame, and error recovery and
-reporting.
-.sp
-.LP
-The \fBxge\fR driver and hardware support the 10GBase-SR/W, LR/W, and ER/W
-\fI802.3\fR physical layer.
-.SH APPLICATION PROGRAMMING INTERFACE
-.sp
-.LP
-The cloning, character-special device \fB/dev/xge\fR is used to access all
-Xframe devices installed within the system.
-.sp
-.LP
-The \fBxge\fR driver is managed by the \fBdladm\fR(1M) command line utility,
-which allows VLANs to be defined on top of xge instances and for \fBxge\fR
-instances to be aggregated. See \fBdladm\fR(1M) for more details.
-.sp
-.LP
-The values returned by the driver in the DL_INFO_ACK primitive in response to
-the DL_INFO_REQ are as follows:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Maximum SDU is \fB9600\fR.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Minimum SDU is \fB0\fR.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBDSLAP\fR address length is \fB8\fR bytes.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBMAC\fR type is \fBDL_ETHER.\fR
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBSAP\fR length value is -2 meaning the physical address component is
-followed immediately by a 2-byte sap component within the DLSAP address.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Broadcast address value is Ethernet/IEEE broadcast address
-(FF:FF:FF:FF:FF:FF).
-.RE
-.SH CONFIGURATION
-.sp
-.LP
-By default, the \fBxge\fR driver works without any configuration file.
-.sp
-.LP
-You can check the running-time status of a device instance using
-\fBndd\fR(1M). Currently, the driver provides an interface to print all
-hardware statistics.
-.sp
-.LP
-For example, to print statistics of device xge0:
-.sp
-.in +2
-.nf
- #ndd /dev/xge0 stats
- tmac_data_octets 772
- tmac_frms 15
- tmac_drop_frms 0
- tmac_bcst_frms 6
- tmac_mcst_frms 6
-
- ...
-
- rmac_vld_frms 13
- rmac_fcs_err_frms 0
- rmac_drop_frms 0
- rmac_vld_bcst_frms 7
- rmac_vld_mcst_frms 11
- rmac_out_rng_len_err_frms 0
- rmac_in_rng_len_err_frms 0
- rmac_long_frms 0
-
- ...
-
- not_traffic_intr_cnt 242673
- traffic_intr_cnt 28
-
- ...
-.fi
-.in -2
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/dev/xge\fR \fR
-.ad
-.RS 13n
-\fBxge\fR special character device
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-l l
-l l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-Architecture x86
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBdladm\fR(1M), \fBndd\fR(1M), \fBattributes\fR(5), \fBstreamio\fR(7I),
-\fBdlpi\fR(7P)
-.sp
-.LP
-\fIWriting Device Drivers\fR
-.sp
-.LP
-\fISTREAMS Programming Guide\fR
-.sp
-.LP
-\fINetwork Interfaces Programmer's Guide\fR
diff --git a/usr/src/man/man7d/xhci.7d b/usr/src/man/man7d/xhci.7d
deleted file mode 100644
index a915a099b1..0000000000
--- a/usr/src/man/man7d/xhci.7d
+++ /dev/null
@@ -1,108 +0,0 @@
-.\"
-.\" This file and its contents are supplied under the terms of the
-.\" Common Development and Distribution License ("CDDL"), version 1.0.
-.\" You may only use this file in accordance with the terms of version
-.\" 1.0 of the CDDL.
-.\"
-.\" A full copy of the text of the CDDL should have accompanied this
-.\" source. A copy of the CDDL is also available via the Internet at
-.\" http://www.illumos.org/license/CDDL.
-.\"
-.\"
-.\" Copyright 2016 Joyent, Inc.
-.\"
-.Dd January 10, 2020
-.Dt XHCI 7D
-.Os
-.Sh NAME
-.Nm xhci
-.Nd Extensible Host Controller Interface Driver
-.Sh SYNOPSIS
-.Sy usb@unit-address
-.Sh DESCRIPTION
-The
-.Nm
-driver supports PCI devices that implement versions 1.0 and 1.1 of the
-Extensible Host Controller Interface Specification.
-These devices provide support for USB 3.0, USB 2.x, and USB 1.x devices and is
-integrated into the broader illumos USB Architecture (USBA).
-.Pp
-The
-.Nm
-driver supports all four USB transfer types:
-.Sy bulk transfers ,
-.Sy control transfers ,
-.Sy interrupt transfers ,
-and
-.Sy isochronous transfers .
-.Pp
-Administrators do not interact with the
-.Nm
-driver directly.
-USB devices are managed with
-.Xr cfgadm 1M .
-See
-.Xr cfgadm_usb 1M
-for more information on how to specifically manage USB devices and how
-they are laid out in the system.
-.Xr cfgadm 1M
-is only used to manage devices at a USB level.
-For example, a USB NIC would still be managed with
-.Xr dladm 1M
-at a networking level.
-.Pp
-On some x86 systems USB ports may be routed to either an instance of the
-.Nm
-driver or an instance of the
-.Xr ehci 7D
-driver.
-By default, all such ports are routed to the
-.Nm
-driver, allowing those devices to operate at USB 3.x speed by default.
-This is most common on Intel platforms and chipsets.
-While this is controlled with the
-.Sy xhci-reroute
-property discussed below, changing it may not be sufficient to change
-the behavior.
-The BIOS or ACPI data for many x86 systems may toggle this automatically.
-.Sh PROPERTIES
-The
-.Nm
-driver supports the following properties which may be tuned in the
-.Nm
-driver's
-.Xr driver.conf 4
-file.
-.Bl -tag -width Sy
-.It Sy xhci-reroute
-The
-.Sy xhci-reroute
-property determines whether or not USB ports are re-routed to the
-.Nm
-driver.
-The default behavior is to route such ports.
-To disable this, the property should be set to
-.Sy 0 .
-Any other value, or the lack of the property, cause the default behavior
-to take place.
-.El
-.Sh ARCHITECTURE
-The
-.Nm
-driver is only supported on
-.Sy x86
-systems at this time.
-.Sh FILES
-.Bl -tag -width Pa
-.It Pa /kernel/drv/amd64/xhci
-Device driver (x86)
-.It Pa /kernel/drv/xhci.conf
-Driver configuration file
-.El
-.Sh SEE ALSO
-.Xr cfgadm 1M ,
-.Xr cfgadm_usb 1M ,
-.Xr dladm 1M ,
-.Xr driver.conf 4 ,
-.Xr ehci 7D ,
-.Xr usba 7D
diff --git a/usr/src/man/man7d/yge.7d b/usr/src/man/man7d/yge.7d
deleted file mode 100644
index 1d1d013478..0000000000
--- a/usr/src/man/man7d/yge.7d
+++ /dev/null
@@ -1,172 +0,0 @@
-'\" te
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All rights reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH YGE 7D "Sep 15, 2009"
-.SH NAME
-yge \- Marvell Yukon 2 Ethernet device driver
-.SH SYNOPSIS
-.sp
-.in +2
-.nf
-/dev/net/yge
-.fi
-.in -2
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fByge\fR driver supports Marvell Yukon 2 Fast Ethernet and Gigabit
-Ethernet controllers.
-.SS "Properties"
-.sp
-.LP
-The following properties can be configured using \fBdladm\fR(1M):
-.sp
-.ne 2
-.na
-\fB\fBadv_autoneg_cap\fR\fR
-.ad
-.RS 19n
-Enables (default) or disables IEEE 802.3 auto-negotiation of link speed and
-duplex settings. If enabled, the device negotiates among the supported (and
-configured, see below) link options with the link partner. If disabled, at
-least one of the link options below must be specified. The driver selects the
-first enabled link option according to the IEEE 802.3 specified preferences.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBadv_1000fdx_cap\fR\fR
-.ad
-.RS 19n
-Enables the 1000 Mbps full-duplex link option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBadv_1000hdx_cap\fR\fR
-.ad
-.RS 19n
-Enables the 1000 Mbps half-duplex link option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBadv_100T4_cap\fR\fR
-.ad
-.RS 19n
-Enables the 100 BaseT4 link option. (Note that most hardware does not support
-this unusual link style. Also, this uses two pairs of wires for data, rather
-than one.)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBadv_100fdx_cap\fR\fR
-.ad
-.RS 19n
-Enables the 1000 Mbps full-duplex link option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBadv_100hdx_cap\fR\fR
-.ad
-.RS 19n
-Enables the 1000 Mbps half-duplex link option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBadv_10fdx_cap\fR\fR
-.ad
-.RS 19n
-Enables the 10 Base-T full-duplex link option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBadv_10hdx_cap\fR\fR
-.ad
-.RS 19n
-Enables the 10 Base-T half-duplex link option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBmtu\fR\fR
-.ad
-.RS 19n
-On most devices, can be set between 1500 (default) and 9000. This property can
-only be changed when the device is not in use.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/dev/net/yge\fR\fR
-.ad
-.RS 27n
-Special network device
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/yge\fR\fR
-.ad
-.RS 27n
-32-bit driver binary (x86)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/yge\fR\fR
-.ad
-.RS 27n
-64-bit driver binary (x86)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/sparcv9/yge\fR\fR
-.ad
-.RS 27n
-64-bit driver binary (SPARC)
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for a descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture x86, SPARC
-_
-Interface Stability Committed
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBdladm\fR(1M), \fBattributes\fR(5), \fBdlpi\fR(7P)
diff --git a/usr/src/man/man7d/zcons.7d b/usr/src/man/man7d/zcons.7d
deleted file mode 100644
index 07df6b458e..0000000000
--- a/usr/src/man/man7d/zcons.7d
+++ /dev/null
@@ -1,64 +0,0 @@
-'\" te
-.\" Copyright 2003 Sun Microsystems, Inc. All rights reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.\" Copyright 2022 Oxide Computer Company
-.Dd February 5, 2022
-.Dt ZCONS 7D
-.Os
-.Sh NAME
-.Nm zcons
-.Nd Zone console device driver
-.Sh DESCRIPTION
-The
-.Nm zcons
-character driver exports the console for system zones.
-The driver is fundamentally similar to a pseudo-terminal device, and is thus
-comprised of two sides:
-.Bl -bullet
-.It
-a manager device, which applications in the global zone can open for
-communication
-.It
-a subsidiary device, which processes in the non-global zone can write to, to
-communicate with global zone management applications
-.El
-.Pp
-Applications must not depend on the location of
-.Pa /dev
-or
-.Pa /devices
-entries exposed by
-.Nm zcons
-in the global zone.
-Inside a non-global zone, the
-.Nm zcons
-subsidiary device is fronted by
-.Pa /dev/console
-and other console-related symbolic links, which are used by applications that
-expect to write to the system console.
-.Pp
-The
-.Nm
-driver is not a
-.Sy Committed
-interface, and may change at any time.
-.Sh FILES
-.Bl -tag -width Pa
-.It Pa /dev/zcons/ZONENAME/globalconsole
-Global zone console manager device for zone
-.Sy ZONENAME .
-.It Pa /dev/zcons/ZONENAME/zoneconsole
-Global zone console subsidiary device for zone
-.Sy ZONENAME .
-.It Pa /dev/zconsole
-Non-global zone console (subsidiary device).
-.El
-.Sh INTERFACE STABILITY
-.Sy Uncommitted
-.Sh SEE ALSO
-.Xr zoneadm 1M ,
-.Xr zonecfg 1M ,
-.Xr attributes 5 ,
-.Xr zones 5
diff --git a/usr/src/man/man7d/zen_udf.7d b/usr/src/man/man7d/zen_udf.7d
deleted file mode 100644
index a2243ef67f..0000000000
--- a/usr/src/man/man7d/zen_udf.7d
+++ /dev/null
@@ -1,36 +0,0 @@
-.\"
-.\" This file and its contents are supplied under the terms of the
-.\" Common Development and Distribution License ("CDDL"), version 1.0.
-.\" You may only use this file in accordance with the terms of version
-.\" 1.0 of the CDDL.
-.\"
-.\" A full copy of the text of the CDDL should have accompanied this
-.\" source. A copy of the CDDL is also available via the Internet at
-.\" http://www.illumos.org/license/CDDL.
-.\"
-.\"
-.\" Copyright 2020 Oxide Computer Company
-.\"
-.Dd October 7, 2020
-.Dt ZEN_UDF 7D
-.Os
-.Sh NAME
-.Nm zen_udf
-.Nd AMD data fabric user access driver
-.Sh SYNOPSIS
-.Pa /devices/pseudo/amdzen@0/zen_udf@3:zen_udf.*
-.Sh DESCRIPTION
-The
-.Nm
-driver provides the ability to read data from the AMD data fabric
-.Pq DF
-on AMD Family 17h
-.Pq Zen, Zen+, and Zen 2
-processors.
-.Pp
-This driver is intended strictly for facilitating platform development
-and is not recommended for systems that aren't doing kernel development
-on AMD Zen platforms.
-.Sh SEE ALSO
-.Xr amdzen 7D ,
-.Xr usmn 7D
diff --git a/usr/src/man/man7d/zero.7d b/usr/src/man/man7d/zero.7d
deleted file mode 100644
index 35734e6f6c..0000000000
--- a/usr/src/man/man7d/zero.7d
+++ /dev/null
@@ -1,41 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 1990, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH ZERO 7D "Jul 3, 1990"
-.SH NAME
-zero \- source of zeroes
-.SH DESCRIPTION
-.sp
-.LP
-A zero special file is a source of zeroed unnamed memory.
-.sp
-.LP
-Reads from a zero special file always return a buffer full of zeroes. The file
-is of infinite length.
-.sp
-.LP
-Writes to a zero special file are always successful, but the data written is
-ignored.
-.sp
-.LP
-Mapping a zero special file creates a zero-initialized unnamed memory object of
-a length equal to the length of the mapping and rounded up to the nearest page
-size as returned by \fBsysconf\fR. Multiple processes can share such a zero
-special file object provided a common ancestor mapped the object
-\fBMAP_SHARED\fR.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/dev/zero\fR\fR
-.ad
-.RS 13n
-
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBfork\fR(2), \fBmmap\fR(2), \fBsysconf\fR(3C)
diff --git a/usr/src/man/man7d/zfd.7d b/usr/src/man/man7d/zfd.7d
deleted file mode 100644
index cbdc869819..0000000000
--- a/usr/src/man/man7d/zfd.7d
+++ /dev/null
@@ -1,81 +0,0 @@
-.\"
-.\" This file and its contents are supplied under the terms of the
-.\" Common Development and Distribution License ("CDDL"), version 1.0.
-.\" You may only use this file in accordance with the terms of version
-.\" 1.0 of the CDDL.
-.\"
-.\" A full copy of the text of the CDDL should have accompanied this
-.\" source. A copy of the CDDL is also available via the Internet at
-.\" http://www.illumos.org/license/CDDL.
-.\"
-.\"
-.\" Copyright 2015, Joyent, Inc. All rights reserved.
-.\"
-.Dd "Oct 16, 2015"
-.Dt ZFD 7D
-.Os
-.Sh NAME
-.Nm zfd
-.Nd Zone file descriptor driver
-.Sh DESCRIPTION
-The
-.Nm zfd
-character driver exports devices into the zone which can be used by a
-a standalone process within the zone as
-.Vt stdin ,
-.Vt stdout ,
-and
-.Vt stderr .
-The
-.Nm zfd
-driver behaves in a similar manner as the
-.Nm zcons(7D)
-device.
-Inside a zone, the slave side devices appear as
-.Nm /dev/zfd/[0-4] .
-.sp
-The zone's zfd device configuration is driven by
-.Nm zoneadmd
-and a zone attribute
-.Nm zlog-mode
-which is somewhat of a misnomer since its purpose has evolved.
-The attribute can have a variety of values, but the lowest two positions
-in the value string are used to control how many zfd devices are created
-inside the zone and if the primary stream is a tty.
-.sp
-.Dl --
-.Dl -n
-.Dl t-
-.Dl tn
-.sp
-With the
-.Nm t
-flag set,
-.Vt stdin ,
-.Vt stdout ,
-and
-.Vt stderr ,
-are multiplexed onto a single full-duplex stream which is configured as a tty.
-That is,
-.Nm ptem ,
-.Nm ldterm
-and
-.Nm ttycompat
-are autopushed onto the stream when the slave side is opened.
-There is only a single zfd device (0) needed for the primary stream.
-.sp
-When the
-.Nm n
-flag is set, it is assumed that output logging will be done within the zone
-itself.
-In this configuration 1 or 2 additional zfd devices, depending on tty mode
-.Nm ( t
-flag), are created within the zone.
-An application can then configure the zfd streams driver into a multiplexer.
-Output from the stdout/stderr zfd(s) will be teed into the correspond
-logging zfd(s) within the zone.
-.Sh SEE ALSO
-.Xr zlogin 1 ,
-.Xr zoneadmd 1M ,
-.Xr zonecfg 1M ,
-.Xr zcons 7D
diff --git a/usr/src/man/man7d/zs.7d b/usr/src/man/man7d/zs.7d
deleted file mode 100644
index 690935cca8..0000000000
--- a/usr/src/man/man7d/zs.7d
+++ /dev/null
@@ -1,279 +0,0 @@
-'\" te
-.\" Copyright (c) 2009, Sun Microsystems, Inc.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
-.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH ZS 7D "April 9, 2016"
-.SH NAME
-zs \- Zilog 8530 SCC serial communications driver
-.SH SYNOPSIS
-.LP
-.nf
-#include <fcntl.h>
-.fi
-
-.LP
-.nf
-#include <sys/termios.h>
-.fi
-
-.LP
-.nf
-open("/dev/term/\fIn\fR", \fImode\fR);
-.fi
-
-.LP
-.nf
-open("/dev/tty\fIn\fR", \fImode\fR);
-.fi
-
-.LP
-.nf
-open("/dev/cua/\fIn\fR", \fImode\fR);
-.fi
-
-.SH DESCRIPTION
-.LP
-The Zilog 8530 provides two serial input/output channels capable of supporting
-a variety of communication protocols. A typical system uses two or more of
-these devices to implement essential functions, including RS-423 ports (which
-also support most RS-232 equipment), and the console keyboard and mouse
-devices.
-.sp
-.LP
-The \fBzs\fR module is a loadable STREAMS driver that provides basic support
-for the Zilog 8530 hardware and basic asynchronous communication support. The
-driver supports the \fBtermio\fR(7I) device control functions specified by
-flags in the \fBc_cflag\fR word of the \fBtermios\fR structure and by the
-\fBIGNBRK,\fR \fBIGNPAR,\fR \fBPARMRK,\fR or \fBINPCK\fR flags in the
-\fBc_iflag\fR word. All other \fBtermio\fR(7I) functions must be performed by
-\fBSTREAMS\fR modules pushed atop the driver. When a device is opened, the
-\fBldterm\fR(7M) and \fBttcompat\fR(7M) \fBSTREAMS\fR modules are automatically
-pushed on top of the stream, providing the standard \fBtermio\fR(7I) interface.
-.sp
-.LP
-The character-special devices \fB/dev/term/a\fR and \fB/dev/term/b\fR are used
-to access the two serial ports on the \fBCPU\fR board.
-.sp
-.LP
-Valid name space entries are \fB/dev/cua/\fR[\fIa-z\fR],
-\fB/dev/term/\fR[\fIa-z\fR] and \fB/dev/tty\fR[\fIa-z\fR]. The number of
-entries used in a name space are machine dependent.
-.sp
-.LP
-To allow a single tty line to be connected to a modem and used for both
-incoming and outgoing calls, a special feature is available that is controlled
-by the minor device number. By accessing character-special devices with names
-of the form \fB/dev/cua/\fR[\fIn\fR], it is possible to open a port without
-the \fBCarrier Detect\fR signal being asserted, either through hardware or an
-equivalent software mechanism. These devices are commonly known as dial-out
-lines.
-.sp
-.LP
-Once a \fB/dev/cua/\fR[\fIn\fR] line is opened, the corresponding tty line
-cannot be opened until the \fB/dev/cua/\fR\fIn\fR line is closed. A blocking
-open will wait until the \fB/dev/cua/\fR[\fIn\fR] line is closed (which will
-drop \fBData Terminal Ready\fR, and \fBCarrier Detect\fR) and carrier is
-detected again. A non-blocking open will return an error. If the tty line has
-been opened successfully (usually only when carrier is recognized on the modem)
-, the corresponding \fB/dev/cua/\fR[\fIn\fR] line cannot be opened. This allows
-a modem to be attached to \fB/dev/term/\fR[\fIn\fR] (renamed from
-\fB/dev/tty\fR[\fIn\fR]) and used for dial-in (by enabling the line for login
-in \fB/etc/inittab\fR) and also used for dial-out (by \fBtip\fR(1) or
-\fBuucp\fR(1C)) as \fB/dev/cua/\fR[\fIn\fR] when no one is logged in on the
-line.
-.LP
-Note -
-.sp
-.RS 2
-This module is affected by the setting of specific eeprom variables. For
-information on parameters that are persistent across reboots, see the
-\fBeeprom\fR(1M) man page.
-.RE
-.SH IOCTLS
-.LP
-The \fBzs\fR module supports the standard set of \fBtermio ioctl\fR(\|) calls.
-.sp
-.LP
-If the \fBCRTSCTS\fR flag in the \fBc_cflag\fR field is set, output will be
-generated only if \fBCTS\fR is high; if \fBCTS\fR is low, output will be
-frozen. If the \fBCRTSCTS\fR flag is clear, the state of \fBCTS\fR has no
-effect.
-.sp
-.LP
-If the \fBCRTSXOFF\fR flag in the \fBc_cflag\fR field is set, input will be
-received only if \fBRTS\fR is high; if \fBRTS\fR is low, input will be frozen.
-If the \fBCRTSXOFF\fR flag is clear, the state of \fBRTS\fR has no effect.
-.sp
-.LP
-The \fBtermios\fR \fBCRTSCTS\fR (respectively \fBCRTSXOFF)\fR flag and
-\fBtermiox\fR \fBCTSXON\fR (respectively \fBRTSXOFF)\fR can be used
-interchangeably.
-.sp
-.LP
-Breaks can be generated by the \fBTCSBRK,\fR \fBTIOCSBRK,\fR and \fBTIOCCBRK
-ioctl\fR(\|) calls.
-.sp
-.LP
-The state of the \fBDCD,\fR \fBCTS,\fR \fBRTS,\fR and \fBDTR\fR interface
-signals may be queried through the use of the \fBTIOCM_CAR,\fR \fBTIOCM_CTS,\fR
-\fBTIOCM_RTS,\fR and \fBTIOCM_DTR\fR arguments to the \fBTIOCMGET ioctl\fR
-command, respectively. Due to hardware limitations, only the \fBRTS\fR and
-\fBDTR\fR signals may be set through their respective arguments to the
-\fBTIOCMSET,\fR \fBTIOCMBIS,\fR and \fBTIOCMBIC ioctl\fR commands.
-.sp
-.LP
-The input and output line speeds may be set to any of the speeds supported by
-\fBtermio\fR. The input and output line speeds cannot be set independently; for
-example, when you set the output speed, the input speed is automatically
-set to the same speed.
-.sp
-.LP
-When the driver is used to service the serial console port, it supports a BREAK
-condition that allows the system to enter the debugger or the monitor. The
-BREAK condition is generated by hardware and it is usually enabled by default.
-A BREAK condition originating from erroneous electrical signals cannot be
-distinguished from one deliberately sent by remote DCE. The Alternate Break
-sequence can be used to remedy this.
-.sp
-.LP
-Due to a risk of incorrect sequence interpretation, SLIP and certain other
-binary protocols should not be run over the serial console port when Alternate
-Break sequence is in effect. Although PPP is a binary protocol, it is able to
-avoid these sequences using the ACCM feature in \fIRFC 1662\fR. For Solaris PPP
-4.0, you do this by adding the following line to the \fB/etc/ppp/options\fR
-file (or other configuration files used for the connection; see \fBpppd\fR(1M)
-for details):
-.sp
-.in +2
-.nf
-asyncmap 0x00002000
-.fi
-.in -2
-
-.sp
-.LP
-By default, the Alternate Break sequence is three characters: carriage return,
-tilde and control-B (CR ~ CTRL-B), but may be changed by the driver. For more
-information on breaking (entering the debugger or monitor), see \fBkbd\fR(1)
-and \fBkb\fR(7M).
-.SH ERRORS
-.LP
-An \fBopen\fR will fail under the following conditions:
-.sp
-.ne 2
-.na
-\fB\fBENXIO\fR\fR
-.ad
-.RS 9n
-The unit being opened does not exist.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEBUSY\fR\fR
-.ad
-.RS 9n
-The dial-out device is being opened and the dial-in device is already open, or
-the dial-in device is being opened with a no-delay open and the dial-out device
-is already open.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEBUSY\fR\fR
-.ad
-.RS 9n
-The port is in use by another serial protocol.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEBUSY\fR\fR
-.ad
-.RS 9n
-The unit has been marked as exclusive-use by another process with a \fBTIOCEXCL
-ioctl\fR(\|) call.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEINTR\fR\fR
-.ad
-.RS 9n
-The open was interrupted by the delivery of a signal.
-.RE
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/dev/cua/\fR[\fIa-z\fR]\fR
-.ad
-.RS 19n
-dial-out tty lines
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/term/\fR[\fIa-z\fR]\fR
-.ad
-.RS 19n
-dial-in tty lines
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/dev/tty\fR[\fIa-z\fR]\fR
-.ad
-.RS 19n
-binary compatibility package device names
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture SPARC
-.TE
-
-.SH SEE ALSO
-.LP
-\fBeeprom\fR(1M), \fBkadb\fR(1M), \fBtip\fR(1), \fBcu\fR(1C), \fBuucp\fR(1C),
-\fBports\fR(1M), \fBpppd\fR(1M), \fBioctl\fR(2), \fBopen\fR(2),
-\fBattributes\fR(5), \fBzsh\fR(7D), \fBtermio\fR(7I), \fBkb\fR(7M),
-\fBldterm\fR(7M), \fBttcompat\fR(7M)
-.SH DIAGNOSTICS
-.ne 2
-.na
-\fB\fBzs\fR\fIn\fR\fB\|: silo overflow.\fR\fR
-.ad
-.sp .6
-.RS 4n
-The Zilog 8530 character input silo overflowed before it could be serviced.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBzs\fR\fIn\fR\fB\|: ring buffer overflow.\fR\fR
-.ad
-.sp .6
-.RS 4n
-The driver's character input ring buffer overflowed before it could be
-serviced.
-.RE
-
diff --git a/usr/src/man/man7d/zsh.7d b/usr/src/man/man7d/zsh.7d
deleted file mode 100644
index a62707e8a2..0000000000
--- a/usr/src/man/man7d/zsh.7d
+++ /dev/null
@@ -1,360 +0,0 @@
-'\" te
-.\" Copyright (c) 1997, Sun Microsystems, Inc.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH ZSH 7D "Jan 1, 1997"
-.SH NAME
-zsh \- On-board serial HDLC/SDLC interface
-.SH SYNOPSIS
-.LP
-.nf
-#include <fcntl.h>
-.fi
-
-.LP
-.nf
-open(/dev/zsh\fIn, mode \fR\fB);\fR
-.fi
-
-.LP
-.nf
-open(/dev/zsh\fI, mode \fR\fB);\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBzsh\fR module is a loadable \fBSTREAMS\fR driver that implements the
-sending and receiving of data packets as \fBHDLC\fR frames over synchronous
-serial lines. The module is not a standalone driver, but instead depends upon
-the \fBzs\fR module for the hardware support required by all on-board serial
-devices. When loaded this module acts as an extension to the \fBzs\fR driver,
-providing access to an \fBHDLC\fR interface through character-special devices.
-.sp
-.LP
-The \fBzsh\fR\fIn\fR devices provide what is known as a \fBdata path\fR which
-supports the transfer of data via \fBread\fR(2) and \fBwrite\fR(2) system
-calls, as well as \fBioctl\fR(2) calls. Data path opens are exclusive in order
-to protect against injection or diversion of data by another process.
-.sp
-.LP
-The \fBzsh\fR device provides a separate \fBcontrol path\fR for use by programs
-that need to configure or monitor a connection independent of any exclusive
-access restrictions imposed by data path opens. Up to three control paths may
-be active on a particular serial channel at any one time. Control path
-accesses are restricted to \fBioctl\fR(2) calls only; no data transfer is
-possible.
-.sp
-.LP
-When used in synchronous modes, the \fBZ8530 SCC\fR supports several options
-for \fBclock sourcing\fR and \fBdata encoding\fR. Both the transmit and receive
-clock sources can be set to be the external \fBT\fRransmit \fBC\fRlock
-(\fBTRxC\fR), external \fBR\fReceive \fBC\fRlock (\fBRTxC\fR), the internal
-\fBB\fRaud \fBR\fRate \fBG\fRenerator (\fBBRG\fR), or the output of the
-\fBSCC\fR's \fBD\fRigital \fBP\fRhase-\fBL\fRock \fBL\fRoop (\fBDPLL\fR).
-.sp
-.LP
-The \fBB\fRaud \fBR\fRate \fBG\fRenerator is a programmable divisor that
-derives a clock frequency from the \fBPCLK\fR input signal to the \fBSCC\fR. A
-programmed baud rate is translated into a 16-bit \fBtime\fR \fBconstant\fR that
-is stored in the \fBSCC\fR. When using the \fBBRG\fR as a clock source the
-driver may answer a query of its current speed with a value different from the
-one specified. This is because baud rates translate into time constants in
-discrete steps, and reverse translation shows the change. If an exact baud
-rate is required that cannot be obtained with the \fBBRG\fR, an external clock
-source must be selected.
-.sp
-.LP
-Use of the \fBDPLL\fR option requires the selection of \fBNRZI\fR data encoding
-and the setting of a non-zero value for the baud rate, because the \fBDPLL\fR
-uses the \fBBRG\fR as its reference clock source.
-.sp
-.LP
-A \fBlocal loopback mode\fR is available, primarily for use by the
-\fBsyncloop\fR(1M) utility for testing purposes, and should not be confused
-with \fBSDLC\fR loop mode, which is not supported on this interface. Also, an
-\fBauto-echo\fR feature may be selected that causes all incoming data to be
-routed to the transmit data line, allowing the port to act as the remote end of
-a digital loop. Neither of these options should be selected casually, or left
-in use when not needed.
-.sp
-.LP
-The \fBzsh\fR driver keeps running totals of various hardware generated events
-for each channel. These include numbers of packets and characters sent and
-received, abort conditions detected by the receiver, receive \fBCRC\fR errors,
-transmit underruns, receive overruns, input errors and output errors, and
-message block allocation failures. Input errors are logged whenever an incoming
-message must be discarded, such as when an abort or \fBCRC\fR error is
-detected, a receive overrun occurs, or when no message block is available to
-store incoming data. Output errors are logged when the data must be discarded
-due to underruns, \fBCTS\fR drops during transmission, \fBCTS\fR timeouts, or
-excessive watchdog timeouts caused by a cable break.
-.SH IOCTLS
-.sp
-.LP
-The \fBzsh\fR driver supports several \fBioctl()\fR commands, including:
-.sp
-.ne 2
-.na
-\fB\fBS_IOCGETMODE\fR\fR
-.ad
-.RS 17n
-Return a \fBstruct scc_mode\fR containing parameters currently in use. These
-include the transmit and receive clock sources, boolean loopback and
-\fBNRZI\fR mode flags and the integer baud rate.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBS_IOCSETMODE\fR\fR
-.ad
-.RS 17n
-The argument is a \fBstruct scc_mode\fR from which the \fBSCC\fR channel will
-be programmed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBS_IOCGETSTATS\fR\fR
-.ad
-.RS 17n
-Return a \fBstruct sl_stats\fR containing the current totals of
-hardware-generated events. These include numbers of packets and characters sent
-and received by the driver, aborts and \fBCRC\fR errors detected, transmit
-underruns, and receive overruns.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBS_IOCCLRSTATS\fR\fR
-.ad
-.RS 17n
-Clear the hardware statistics for this channel.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBS_IOCGETSPEED\fR\fR
-.ad
-.RS 17n
-Returns the currently set baud rate as an integer. This may not reflect the
-actual data transfer rate if external clocks are used.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBS_IOCGETMCTL\fR\fR
-.ad
-.RS 17n
-Returns the current state of the \fBCTS\fR and \fBDCD\fR incoming modem
-interface signals as an integer.
-.RE
-
-.sp
-.LP
-The following structures are used with \fBzsh\fR \fBioctl()\fR commands:
-.sp
-.in +2
-.nf
-struct scc_mode {
- char sm_txclock; /* transmit clock sources */
- char sm_rxclock; /* receive clock sources */
- char sm_iflags; /* data and clock inversion flags (non-zsh) */
- uchar_t sm_config; /* boolean configuration options */
- int sm_baudrate; /* real baud rate */
- int sm_retval; /* reason codes for ioctl failures */
-};
-struct sl_stats {
- long ipack; /* input packets */
- long opack; /* output packets */
- long ichar; /* input bytes */
- long ochar; /* output bytes */
- long abort; /* abort received */
- long crc; /* CRC error */
- long cts; /* CTS timeouts */
- long dcd; /* Carrier drops */
- long overrun; /* receive overrun */
- long underrun; /* transmit underrun */
- long ierror; /* input error */
- long oerror; /* output error */
- long nobuffers; /* receive side memory allocation failure */
-};
-.fi
-.in -2
-
-.SH ERRORS
-.sp
-.LP
-An \fBopen()\fR will fail if a \fBSTREAMS\fR message block cannot be allocated,
-or:
-.sp
-.ne 2
-.na
-\fB\fBENXIO\fR\fR
-.ad
-.RS 9n
-The unit being opened does not exist.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEBUSY\fR\fR
-.ad
-.RS 9n
-The device is in use by another serial protocol.
-.RE
-
-.sp
-.LP
-An \fBioctl()\fR will fail if:
-.sp
-.ne 2
-.na
-\fB\fBEINVAL\fR\fR
-.ad
-.RS 10n
-An attempt was made to select an invalid clocking source.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEINVAL\fR\fR
-.ad
-.RS 10n
-The baud rate specified for use with the baud rate generator would translate to
-a null time constant in the \fBSCC\fR's registers.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/dev/zsh[0-1]\fR,\fB/dev/zsh\fR\fR
-.ad
-.sp .6
-.RS 4n
-character-special devices
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/usr/include/sys/ser_sync.h\fR\fR
-.ad
-.sp .6
-.RS 4n
-header file specifying synchronous serial communication definitions
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture x86
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBsyncinit\fR(1M), \fBsyncloop\fR(1M), \fBsyncstat\fR(1M), \fBioctl\fR(2),
-\fBopen\fR(2), \fBread\fR(2), \fBwrite\fR(2), \fBattributes\fR(5), \fBzs\fR(7D)
-.sp
-.LP
-Refer to the \fIZilog Z8530 SCC Serial Communications Controller Technical
-Manual\fR for details of the \fBSCC\fR's operation and capabilities.
-.SH DIAGNOSTICS
-.sp
-.ne 2
-.na
-\fB\fBzsh data open failed, no memory, rq=\fR\fInnn\fR\fR
-.ad
-.sp .6
-.RS 4n
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBzsh clone open failed, no memory, rq=\fR\fInnn\fR\fR
-.ad
-.sp .6
-.RS 4n
-A kernel memory allocation failed for one of the private data structures. The
-value of \fInnn\fR is the address of the read queue passed to \fBopen\fR(2).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBzsh_open: can't alloc message block\fR\fR
-.ad
-.sp .6
-.RS 4n
-The open could not proceed because an initial \fBSTREAMS\fR message block could
-not be made available for incoming data.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBzsh: clone device \fR\fId\fR\fB must be attached before use!\fR\fR
-.ad
-.sp .6
-.RS 4n
-An operation was attempted through a control path before that path had been
-attached to a particular serial channel.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBzsh\fR\fIn\fR\fB: invalid operation for clone dev.\fR\fR
-.ad
-.sp .6
-.RS 4n
-An inappropriate \fBSTREAMS\fR message type was passed through a control path.
-Only \fBM_IOCTL\fR and \fBM_PROTO\fR message types are permitted.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBzsh\fR\fIn\fR\fB: not initialized, can't send message\fR\fR
-.ad
-.sp .6
-.RS 4n
-An \fBM_DATA\fR message was passed to the driver for a channel that had not
-been programmed at least once since the driver was loaded. The \fBSCC\fR's
-registers were in an unknown state. The \fBS_IOCSETMODE\fR ioctl command
-performs the programming operation.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBzsh\fR\fIn\fR\fB: transmit hung\fR\fR
-.ad
-.sp .6
-.RS 4n
-The transmitter was not successfully restarted after the watchdog timer
-expired.
-.RE
-
diff --git a/usr/src/man/man7d/zyd.7d b/usr/src/man/man7d/zyd.7d
deleted file mode 100644
index 83a2912dd2..0000000000
--- a/usr/src/man/man7d/zyd.7d
+++ /dev/null
@@ -1,79 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH ZYD 7D "Dec 10, 2008"
-.SH NAME
-zyd \- ZyDAS ZD1211/ZD1211B USB 802.11b/g Wireless Driver
-.SH DESCRIPTION
-.sp
-.LP
-The \fBzyd\fR \fI802.11b/g\fR wireless driver is a multi-threaded, loadable,
-clonable, GLDv3-based STREAMS driver supporting the ZyDAS ZD1211/ZD1211B USB
-chipset-based wireless devices.
-.SH CONFIGURATION
-.sp
-.LP
-The \fBzyd\fR driver performs auto-negotiation to determine the data rate and
-mode. Supported \fI802.11b\fR data rates are 1, 2, 5.5 and 11 Mbits/sec.
-Supported \fI802.11g\fR data rates are 1, 2, 5.5, 11, 6, 9, 12, 18, 24, 36, 48
-and 54 Mbits/sec. The \fBzyd\fR driver supports only BSS networks (also known
-as "ap" or "infrastructure" networks) and open (or "open-system"), shared key
-and WPA/WPA2 authentication. Supported encryption types are WEP40, WEP104, TKIP
-and AES-CCMP.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/dev/zyd*\fR\fR
-.ad
-.RS 25n
-Special character device.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/zyd\fR\fR
-.ad
-.RS 25n
-32-bit kernel module (x86).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/drv/amd64/zyd\fR\fR
-.ad
-.RS 25n
-64-bit kernel module (x86).
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for a description of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture x86
-_
-Interface Stability Committed
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBdladm\fR(1M), \fBwificonfig\fR(1M), \fBattributes\fR(5), \fBgld\fR(7D),
-\fBdlpi\fR(7P)
-.sp
-.LP
-\fI802.11 - Wireless LAN Media Access Control and Physical Layer
-Specification\fR - IEEE, 2001
diff --git a/usr/src/man/man7fs/Makefile b/usr/src/man/man7fs/Makefile
deleted file mode 100644
index 57aa608a65..0000000000
--- a/usr/src/man/man7fs/Makefile
+++ /dev/null
@@ -1,52 +0,0 @@
-#
-# This file and its contents are supplied under the terms of the
-# Common Development and Distribution License ("CDDL"), version 1.0.
-# You may only use this file in accordance with the terms of version
-# 1.0 of the CDDL.
-#
-# A full copy of the text of the CDDL should have accompanied this
-# source. A copy of the CDDL is also available via the Internet
-# at http://www.illumos.org/license/CDDL.
-#
-
-#
-# Copyright 2011, Richard Lowe
-# Copyright 2013 Nexenta Systems, Inc. All rights reserved.
-# Copyright 2014 Joyent, Inc.
-#
-
-include $(SRC)/Makefile.master
-
-MANSECT= 7fs
-
-MANFILES= bootfs.7fs \
- ctfs.7fs \
- dcfs.7fs \
- dev.7fs \
- devfs.7fs \
- fd.7fs \
- hsfs.7fs \
- hyprlofs.7fs \
- lofs.7fs \
- lxproc.7fs \
- objfs.7fs \
- pcfs.7fs \
- sharefs.7fs \
- smbfs.7fs \
- tmpfs.7fs \
- udfs.7fs \
- ufs.7fs
-
-MANLINKS= stderr.7fs \
- stdin.7fs \
- stdout.7fs
-
-stderr.7fs := LINKSRC = fd.7fs
-stdin.7fs := LINKSRC = fd.7fs
-stdout.7fs := LINKSRC = fd.7fs
-
-.KEEP_STATE:
-
-include $(SRC)/man/Makefile.man
-
-install: $(ROOTMANFILES) $(ROOTMANLINKS)
diff --git a/usr/src/man/man7fs/bootfs.7fs b/usr/src/man/man7fs/bootfs.7fs
deleted file mode 100644
index dbe264008f..0000000000
--- a/usr/src/man/man7fs/bootfs.7fs
+++ /dev/null
@@ -1,84 +0,0 @@
-.\"
-.\" This file and its contents are supplied under the terms of the
-.\" Common Development and Distribution License ("CDDL"), version 1.0.
-.\" You may only use this file in accordance with the terms of version
-.\" 1.0 of the CDDL.
-.\"
-.\" A full copy of the text of the CDDL should have accompanied this
-.\" source. A copy of the CDDL is also available via the Internet at
-.\" http://www.illumos.org/license/CDDL.
-.\"
-.\"
-.\" Copyright (c) 2014 Joyent, Inc. All rights reserved.
-.\" Copyright 2021 Oxide Computer Company
-.\"
-.Dd May 8, 2014
-.Dt BOOTFS 7FS
-.Os
-.Sh NAME
-.Nm bootfs
-.Nd boot-time module file system
-.Sh DESCRIPTION
-The
-.Nm
-file system is a read-only file system that provides access to any
-boot-time modules that were passed in to the system loader which were
-tagged with the type
-.Em file .
-.Nm
-does not display any boot-time modules that were tagged as type
-.Em hash
-or type
-.Em rootfs .
-If modules with duplicate names and paths are specified, only the first
-such entry will be present in the file system and a counter will be
-incremented to indicate that a duplicate entry was found, but is not
-present into the file system.
-If a module's name only consists of invalid characters, such as
-.Sq . ,
-.Sq .. ,
-or
-.Sq / ,
-then the module will not be present in the file system and a counter
-will be incremented to indicate that this has occurred.
-In both cases, diagnostic information is available through the kstats
-facility.
-.Sh FILES
-.Bl -tag -width Pa
-.It Pa /system/boot
-The mount point for the
-.Nm
-file system in the global zone.
-.El
-.Sh EXAMPLES
-.Sy Example 1
-Determining if collisions or invalid names are present
-.Pp
-To determine if any boot-time modules were not created due to collisions
-or invalid names, enter the following command:
-.Bd -literal -offset indent
-# kstat -m bootfs
-module: bootfs instance: 1
-name: bootfs class: fs
- crtime 236063.651324041
- nbytes 8749355
- ndirs 3
- ndiscard 0
- ndup 0
- nfiles 2
- snaptime 236063.651324041
-.Ed
-The field
-.Fa ndiscard
-lists the number of boot-time modules that were discarded due to naming
-conflicts.
-The field
-.Fa ndup
-lists the number of duplicate entries that were found and therefore not
-displayed in the file system.
-.Pp
-This information is provided for informational purposes only, it is not
-to be construed as a stable interface.
-.Sh SEE ALSO
-.Xr kstat 1M ,
-.Xr loader 5
diff --git a/usr/src/man/man7fs/ctfs.7fs b/usr/src/man/man7fs/ctfs.7fs
deleted file mode 100644
index 49b5ebf6f2..0000000000
--- a/usr/src/man/man7fs/ctfs.7fs
+++ /dev/null
@@ -1,46 +0,0 @@
-.\"
-.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 2021 Oxide Computer Company
-.\"
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.\"
-.Dd November 18, 2004
-.Dt CTFS 7FS
-.Os
-.Sh NAME
-.Nm ctfs
-.Nd contract file system
-.Sh DESCRIPTION
-The
-.Nm
-filesystem is the interface to the contract sub-system.
-.Nm
-is mounted during boot at
-.Pa /system/contract .
-For information on contracts and the contents of this filesystem, see
-.Xr contract 4 .
-.Sh FILES
-.Bl -tag -width Pa
-.It Pa /system/contract
-Mount point for the
-.Nm
-file system
-.El
-.Sh SEE ALSO
-.Xr contract 4 ,
-.Xr vfstab 4 ,
-.Xr attributes 5 ,
-.Xr smf 5
diff --git a/usr/src/man/man7fs/dcfs.7fs b/usr/src/man/man7fs/dcfs.7fs
deleted file mode 100644
index ff238336ed..0000000000
--- a/usr/src/man/man7fs/dcfs.7fs
+++ /dev/null
@@ -1,49 +0,0 @@
-.\"
-.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 2021 Oxide Computer Company
-.\"
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.\"
-.Dd November 28, 2007
-.Dt DCFS 7FS
-.Os
-.Sh NAME
-.Nm dcfs
-.Nd Compression file system
-.Sh SYNOPSIS
-.In sys/filio.h
-.In sys/fs/decomp.h
-.Sh DESCRIPTION
-The
-.Nm
-filesystem is a layered filesystem that you use to compress data when writing to
-a file and decompress upon read.
-The primary function of the
-.Nm
-filesystem is to compress individual files when constructing a boot archive and
-when reading or booting from the archive.
-.Sh INTERFACE STABILITY
-.Sy Uncommitted
-.Sh SEE ALSO
-.Xr boot 1M ,
-.Xr bootadm 1M ,
-.Xr fiocompress 1M ,
-.Xr attributes 5 ,
-.Xr ufs 7FS
-.Sh NOTES
-The
-.Nm
-compression/decompression file system works only with UFS.
diff --git a/usr/src/man/man7fs/dev.7fs b/usr/src/man/man7fs/dev.7fs
deleted file mode 100644
index 6aa994d322..0000000000
--- a/usr/src/man/man7fs/dev.7fs
+++ /dev/null
@@ -1,83 +0,0 @@
-.\"
-.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 2021 Oxide Computer Company
-.\"
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.\"
-.Dd November 29, 2021
-.Dt DEV 7FS
-.Os
-.Sh NAME
-.Nm dev
-.Nd Device name file system
-.Sh DESCRIPTION
-The
-.Nm
-filesystem manages the name spaces of devices in the operating system.
-The global zone's instance of the
-.Nm
-filesystem is mounted during boot on
-.Pa /dev .
-This filesystem is colloqiually called
-.Sq sdev
-as a way to distinguish it from the
-.Xr devfs 7FS
-filesystem mounted at
-.Pa /devices .
-.Pp
-A subdirectory under
-.Pa /dev
-may have unique operational semantics.
-Most of the common device names under
-.Pa /dev
-are created automatically by
-.Xr devfsadm 1M
-Others, such as
-.Pa /dev/pts ,
-.Pa /dev/net ,
-and
-.Pa /dev/zvol
-are dynamic and reflect the operational state of the system.
-You can manually generate device names for newly attached hardware by invoking
-.Xr devfsadm 1M
-or implicitly, by indirectly causing a lookup or readdir operation in the
-filesystem to occur.
-For example, you can discover a disk that was attached when the system was
-powered down (and generate a name for that device) by invoking
-.Xr format 1M .
-.Pp
-In a non-global zone, the
-.Nm
-filesystem is also mounted at
-.Pa /dev ;
-however, it is generally speaking read-only.
-Unlike in the global zone, a privileged user in a non-global zone cannot create
-directories or files, directories, or other objects within the filesystem.
-.Sh FILES
-.Bl -tag -width Pa
-.It Pa /dev
-Mount point for the
-.Nm
-filesystem in the global zone and non-global zones.
-.El
-.Sh SEE ALSO
-.Xr devfsadm 1M ,
-.Xr format 1M ,
-.Xr devfs 7FS
-.Sh NOTES
-The global
-.Pa /dev
-instance cannot be unmounted.
diff --git a/usr/src/man/man7fs/devfs.7fs b/usr/src/man/man7fs/devfs.7fs
deleted file mode 100644
index 284a12d16f..0000000000
--- a/usr/src/man/man7fs/devfs.7fs
+++ /dev/null
@@ -1,110 +0,0 @@
-.\"
-.\" Copyright (c) 2004 Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 2021 Oxide compuer Company
-.\"
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.\"
-.Dd November 29, 2021
-.Dt DEVFS 7FS
-.Os
-.Sh NAME
-.Nm devfs
-.Nd Devices file system
-.Sh DESCRIPTION
-The
-.Nm
-filesystem manages a name space of all devices in the operating environment and
-is mounted during boot on the
-.Pa /devices
-name space.
-.Pp
-The
-.Pa /devices
-name space is dynamic and reflects the current state of accessible devices.
-The names of all attached device instances are present under
-.Pa /devices .
-.Pp
-The content under
-.Pa /devices
-is under the exclusive control of the
-.Nm
-filesystem and cannot be changed.
-.Pp
-The system may be configured to include a device in one of two ways:
-.Bl -enum
-.It
-By means of dynamic reconfiguration
-.Pq DR ,
-using, for example,
-.Xr cfgadm 1M .
-Several different hardware buses such as PCIe and USB automatically discover and
-enumerate devices that they encounter.
-.It
-For devices driven by
-.Xr driver.conf 4
-enumeration, edit the
-.Pa driver.conf
-file to add a new entry, then use
-.Xr update_drv 1M
-to cause the system to re-read the
-.Pa driver.conf
-file and thereby enumerate the instance.
-.El
-.Pp
-The device may be attached through a number of system calls and programs,
-including
-.Xr open 2 ,
-.Xr stat 2 ,
-and
-.Xr ls 1 .
-During device attach, the device driver typically creates minor nodes
-corresponding to the device via
-.Xr ddi_create_minor_node 9F .
-If the attach is successful, one or more minor nodes referring to the device are
-created under
-.Pa /devices .
-.Pp
-Operations like
-.Xr mknod 2 ,
-.Xr mkdir 2 ,
-and
-.Xr creat 2
-are not supported in
-.Pa /devices .
-.Pp
-This file system is not present in a non-global zone.
-.Sh FILES
-.Bl -tag -width Pa
-.It Pa /devices
-Mount point for
-.Nm
-file system in the global zone.
-.El
-.Sh SEE ALSO
-.Xr devfsadm 1M ,
-.Xr vfstab 4 ,
-.Xr attach 9E
-.Sh NOTES
-The
-.Pa /devices
-name space cannot be unmounted.
-.Pp
-All content at or below the
-.Pa /devices
-name space is an implementation
-artifact and subject to incompatible change or removal without notification.
-Generally, user programs should leverage the device name space under
-.Pa /dev .
diff --git a/usr/src/man/man7fs/fd.7fs b/usr/src/man/man7fs/fd.7fs
deleted file mode 100644
index 254021f708..0000000000
--- a/usr/src/man/man7fs/fd.7fs
+++ /dev/null
@@ -1,84 +0,0 @@
-.\"
-.\" Copyright (c) 1993, Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 1989 AT&T
-.\" Copyright 2021 Oxide Computer Company
-.\"
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.\"
-.Dd July 3, 1990
-.Dt FD 7FS
-.Os
-.Sh NAME
-.Nm fd ,
-.Nm stdin ,
-.Nm stdout ,
-.Nm stderr
-.Nd file descriptor files
-.Sh DESCRIPTION
-These files, conventionally called
-.Pa /dev/fd/0 ,
-.Pa /dev/fd/1 ,
-.Pa /dev/fd/2 ,
-and so on, refer to files accessible through file descriptors.
-If file descriptor
-.Em n
-is open, these two system calls have the same
-effect:
-.Bd -literal -offset indent
-fd = open("/dev/fd/<n>", mode);
-fd = dup(n);
-.Ed
-.Pp
-On these files
-.Xr creat 2
-is equivalent to
-.Xr open 2 ,
-and
-.Fa mode
-is
-ignored.
-As with
-.Xr dup 2 ,
-subsequent reads or writes on
-.Em fd
-fail unless the original file descriptor allows the operations.
-.Pp
-For convenience in referring to standard input, standard output, and standard
-error, an additional set of names is provided:
-.Pa /dev/stdin
-is a synonym
-for
-.Pa /dev/fd/0 ,
-.Pa /dev/stdout
-for
-.Pa /dev/fd/1 ,
-and
-.Pa /dev/stderr
-for
-.Pa /dev/fd/2 .
-.Sh DIAGNOSTICS
-.Xr open 2
-returns
-.Sy -1
-and
-.Va errno
-is set to
-.Er EBADF
-if the associated file descriptor is not open.
-.Sh SEE ALSO
-.Xr creat 2 ,
-.Xr dup 2 ,
-.Xr open 2
diff --git a/usr/src/man/man7fs/hsfs.7fs b/usr/src/man/man7fs/hsfs.7fs
deleted file mode 100644
index 61a137082f..0000000000
--- a/usr/src/man/man7fs/hsfs.7fs
+++ /dev/null
@@ -1,253 +0,0 @@
-.\"
-.\" Copyright (c) 2006, Sun Microsystems, Inc.
-.\" Copyright 2021 Oxide Computer Company
-.\"
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.\"
-.Dd November 1, 2006
-.Dt HSFS 7FS
-.Os
-.Sh NAME
-.Nm hsfs
-.Nd High Sierra & ISO 9660 CD-ROM file system
-.Sh DESCRIPTION
-.Nm
-is a file system type that allows users to access files on High Sierra or ISO
-9660 format CD-ROM disks from within the SunOS operating system.
-Once mounted, a
-.Nm
-file system provides standard read-only file system operations and semantics,
-meaning that you can read and list files in a directory on a High Sierra or ISO
-9660 CD-ROM and applications can use standard UNIX system calls on these files
-and directories.
-.Pp
-This file system contains support for Rock Ridge, ISO 9660 Version 2 and Joliet
-extensions.
-These extensions provide support for file names with a length of at least 207
-bytes, but only Rock Ridge extensions
-.Pq with the exception of writability and hard links
-can provide file system semantics and file types as they are found in UFS.
-The presence of Rock Ridge, ISO 9660 Version 2, and Joliet is autodetected and
-the best-suitable available extension is used by the HSFS driver for file name
-and attribute lookup.
-.Pp
-If your
-.Pa /etc/vfstab
-file contains a line similar to the following:
-.Bd -literal
-/dev/dsk/c0t6d0s0 - /hsfs hsfs - no ro
-.Ed
-.Pp
-and
-.Pa /hsfs
-exists, you can mount an
-.Nm
-file system with either of the following commands:
-.Bd -literal -offset indent
-mount -F hsfs -o ro device-special directory-name
-.Ed
-or
-.Bd -literal -offset indent
-mount /hsfs
-.Ed
-.Pp
-By default, Rock Ridge extensions are used if available, otherwise ISO 9660
-Version 2, then Joliet are used.
-If neither extension is present HSFS defaults to the standard capabilities of
-ISO 9660.
-Since so-called hybrid CD-ROMs that contain multiple extensions are possible,
-you can use the following mount options to deliberately disable the search for a
-specific extension or to force the use of a specific extension even if a
-preferable type is present:
-.Bd -literal
-mount -F hsfs -o ro,nrr device-special directory-name
-.Ed
-.Pp
-Mount options are:
-.Bl -tag -width Ds
-.It rr
-Request HSFS to use Rock Ridge extensions, if present.
-This is the default behavior and does not need to be explicitly specified.
-.It nrr
-Disable detection and use of Rock Ridge extensions, even if present.
-.It vers2
-Request HSFS to use ISO 9660 Version 2 extensions, even if Rock Ridge is
-available.
-.It novers2
-Disable detection and use of ISO 9660 Version 2 extensions.
-.It joliet
-Request HSFS to use Joliet extensions, even if Rock Ridge or ISO 9660 Version 2
-extensions are available.
-.It nojoliet
-Disable detection and use of Joliet extensions.
-.El
-.Pp
-Files on a High Sierra or ISO 9660 CD-ROM disk have names of the form
-.Pa filename.ext;versio ,
-where
-.Fa filename
-and the optional
-.Fa ext
-consist of a sequence of uppercase alphanumeric characters
-.Po
-including
-.Sq _
-.Pc ,
-while the
-.Fa version
-consists of a sequence of digits, representing the version number of the file.
-.Nm
-converts all the uppercase characters in a file name to lowercase, and truncates
-the
-.Sq ;
-and version information.
-If more than one version of a file is present on the CD-ROM, only the file with
-the highest version number is accessible.
-.Pp
-Conversion of uppercase to lowercase characters may be disabled by using the
-.Fl o
-.Ar nomaplcase
-option to
-.Xr mount 1M .
-See
-.Xr mount_hsfs 1M .
-.Pp
-If the CD-ROM contains Rock Ridge, ISO 9660 version 2 or Joliet extensions, the
-file names and directory names may contain any character supported under
-.Xr UFS 7FS .
-The names may also be upper and/or lower case and are case sensitive.
-File name lengths can be as long as those of
-.Xr UFS 7FS .
-.Pp
-Files accessed through
-.Nm
-have mode 555
-.Pq owner, group and world readable and executable ,
-uid 0 and gid 3. If a directory on the CD-ROM has read permission,
-.Nm
-grants execute permission to the directory, allowing it to be searched.
-.Pp
-With Rock Ridge extensions, files and directories can have any permissions that
-are supported on a
-.Xr UFS 7FS
-file system.
-However, under all write permissions, the file system is read-only, with
-.Er EROFS
-returned to any write operations.
-.Pp
-Like High Sierra and ISO 9660 CD-ROMs, HSFS supports only regular files and
-directories.
-A Rock Ridge CD-ROM can support regular files, directories, and symbolic links,
-as well as device nodes, such as block, character, and FIFO.
-.Sh EXAMPLES
-.Sy Example 1
-Sample Display of File System Files
-.Pp
-If there is a file
-.Pa BIG.BAR
-on a High Sierra or ISO 9660 format CD-ROM it will show up as
-.Pa big.bar
-when listed on a
-.Nm
-file system.
-.Pp
-If there are three files
-Pa BAR.BAZ;1 ,
-Pa BBAR.BAZ;2 ,
-and
-.Pa BAR.BAZ;3
-on a High Sierra or ISO 9660 format CD-ROM, only the file
-.Pa BAR.BAZ;3
-will be accessible.
-It will be listed as
-.Pa bar.baz .
-.Sh DIAGNOSTICS
-.Bl -tag -width Ds
-.It "hsfs: Warning: the file system... does not conform to the ISO-9660 spec"
-The specific reason appears on the following line.
-You might be attempting to mount a CD-ROM containing a different file system,
-such as
-.Xr UFS 7FS
-.It "hsfs: Warning: the file system... contains a file [with an] unsupported"
-type"
-The
-.Nm
-file system does not support the format of some file or directory on the CD-ROM,
-for example a record structured file.
-.It "hsfs: hsnode table full, %d nodes allocated"
-There are not enough
-.Nm
-internal data structure elements to handle all the files currently open.
-This problem may be overcome by adding a line of the form
-.Ql set hsfs:nhsnode=number
-to the
-.Pa /etc/system
-system configuration file and rebooting.
-See
-.Xr system 4 .
-.El
-.Sh SEE ALSO
-.Xr mount 1M ,
-.Xr mount_hsfs 1M ,
-.Xr vfstab 4
-.Pp
-.Rs
-.%A N. V. Phillips
-.%A Sony Corporation
-.%T System Description Compact Disc Digital Audio, ("Red Book")
-.Re
-.Rs
-.%A N. V. Phillips
-.%A Sony Corporation
-.%T System Description of Compact Disc Read Only Memory, ("Yellow Book")
-.Re
-.Rs
-.%T Volume and File Structure of CD-ROM for Information Interchange
-.%N ISO 9660:1988(E)
-.Re
-.Sh WARNINGS
-Do not physically eject a CD-ROM while the device is still mounted as a
-.Nm
-file system.
-.Pp
-Under MS-DOS
-.Pq for which CD-ROMs are frequently targeted ,
-files with no extension may be represented either as:
-.Pa filename\&.
-or
-.Pa filename
-that is, with or without a trailing period.
-These names are not equivalent under UNIX systems.
-For example, the names:
-.Pa BAR\&.
-and
-.Pa BAR
-are not names for the same file under the UNIX system.
-This may cause confusion if you are consulting documentation for CD-ROMs
-originally intended for MS-DOS systems.
-.Pp
-Use of the
-.Fl o
-.Ar notraildot
-option to
-.Xr mount 1M
-makes it optional to specify the trailing dot.
-See
-.Xr mount_hsfs 1M .
-.Sh NOTES
-No translation of any sort is done on the contents of High Sierra or ISO 9660
-format CD-ROMs; only directory and file names are subject to interpretation by
-.Nm .
diff --git a/usr/src/man/man7fs/hyprlofs.7fs b/usr/src/man/man7fs/hyprlofs.7fs
deleted file mode 100644
index 8655791193..0000000000
--- a/usr/src/man/man7fs/hyprlofs.7fs
+++ /dev/null
@@ -1,62 +0,0 @@
-'\" te
-.\" Copyright (c) 2012, Joyent, Inc.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH HYPRLOFS 7FS "March 7, 2012"
-.SH NAME
-hyprlofs \- fast name space virtual file system
-.SH SYNOPSIS
-.LP
-.nf
-#include <sys/fs/hyprlofs.h>
-
-\fB\fR\fBmount\fR (\fB\fR\fIspecial\fR, \fB\fR\fIdirectory\fR, \fB\fR\fIMS_DATA\fR, \fB\fR\fI"hyprlofs"\fR, \fB\fR\fINULL\fR, \fB\fR\fI0\fR);
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBhyprlofs\fR is a hybrid file system combining features from
-\fBtmpfs(7FS)\fR and \fBlofs(7FS)\fR.
-As with \fBlofs\fR, the \fBhyprlofs\fR file system allows new, virtual file
-systems to be created which provide access to existing files using alternate
-pathnames. In addition, the files themselves may have alternate names and
-paths within the mount.
-Unlike \fBlofs\fR, files cannot be created and backing files cannot be removed.
-The name space is completely managed through ioctls on the mount.
-Entries in the name space are not mounts and thus, they will not appear in the
-mnttab. The file system is designed to provide a very fast name space to the
-backing files. The name space can be modified very quickly through the ioctl
-interface.
-.sp
-.LP
-\fBhyprlofs\fR file systems can be mounted with the command:
-.sp
-.in +2
-.nf
-\fBmount \fR\fB-F\fR\fB hyprlofs swap \fR\fIdirectory\fR
-.fi
-.in -2
-
-.sp
-.LP
-The name space used by \fBhyprlofs\fR exists only in-memory so it will consume
-a small amount of the system's virtual memory. The files themselves are backed
-by the original file as with \fBlofs\fR.
-
-.SH SEE ALSO
-.sp
-.LP
-\fBdf\fR(1M), \fBmount\fR(1M), \fBswap\fR(1M),
-\fBmount\fR(2), \fBumount\fR(2)
-.sp
-.LP
-\fISystem Administration Guide: Basic Administration\fR
-.SH DIAGNOSTICS
-.sp
-.LP
-\fBdf\fR(1M) output is of limited accuracy since
-the space available to \fBhyprlofs\fR is dependent on the swap
-space demands of the entire system and the files in the name space are not
-included.
diff --git a/usr/src/man/man7fs/lofs.7fs b/usr/src/man/man7fs/lofs.7fs
deleted file mode 100644
index 7288fa82dd..0000000000
--- a/usr/src/man/man7fs/lofs.7fs
+++ /dev/null
@@ -1,137 +0,0 @@
-.\"
-.\" Copyright 2014 Nexenta Systems, Inc. All Rights Reserved.
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 2021 Oxide Computer Company
-.\"
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.\"
-.Dd November 24, 2014
-.Dt LOFS 7FS
-.Os
-.Sh NAME
-.Nm lofs
-.Nd loopback virtual file system
-.Sh SYNOPSIS
-.In sys/param.h
-.In sys/mount.h
-.Ft int
-.Fo mount
-.Fa "const char *dir"
-.Fa "const char *virtual"
-.Fa "int mflag"
-.Fa \(dqlofs\(dq ,
-.Fa NULL ,
-.Fa 0
-.Fc
-.Sh DESCRIPTION
-The loopback file system device allows new, virtual file systems to be created,
-which provide access to existing files using alternate pathnames.
-Once the virtual file system is created, other file systems can be mounted
-within it, without affecting the original file system.
-However, file systems which are subsequently mounted onto the original file
-system
-.Em are
-visible to the virtual file system, unless or until the corresponding mount
-point in the virtual file system is covered by a file system mounted there.
-.Pp
-.Fa virtual
-is the mount point for the virtual file system.
-.Fa dir
-is the pathname of the existing file system.
-.Fa mflag
-specifies the mount options; the
-.Dv MS_DATA
-bit in
-.Fa mflag
-must be set.
-If the
-.Dv MS_RDONLY
-bit in
-.Fa mflag
-is not set, accesses to the loop back file system are the same as for the
-underlying file system.
-Otherwise, all accesses in the loopback file system will be read-only.
-All other
-.Xr mount 2
-options are inherited from the underlying file systems.
-.Pp
-A loopback mount of
-.Pa /
-onto
-.Pa /tmp/newroot
-allows the entire file system hierarchy to appear as if it were duplicated under
-.Pa /tmp/newroot ,
-including any file systems mounted from remote NFS servers.
-All files would then be accessible either from a pathname relative to
-.Pa /
-or from a pathname relative to
-.Pa /tmp/newroot
-until such time as a file system is mounted in
-.Pa /tmp/newroot
-or any of its subdirectories.
-.Pp
-Loopback mounts of
-.Pa /
-can be performed in conjunction with the
-.Xr chroot 2
-system call, to provide a complete virtual file system to a process or family of
-processes.
-.Pp
-Recursive traversal of loopback mount points is not allowed.
-After the loopback mount of
-.Pa /tmp/newroot ,
-the file
-.Pa /tmp/newroot/tmp/newroot
-does not contain yet another file system hierarchy; rather, it appears just as
-.Pa /tmp/newroot
-did before the loopback mount was performed
-.Pq for example, as an empty directory .
-.Sh EXAMPLES
-.Nm
-file systems are mounted using:
-.Bd -literal -offset indent
-mount -F lofs /tmp /mnt
-.Ed
-.Sh SEE ALSO
-.Xr lofiadm 1M ,
-.Xr mount 1M ,
-.Xr chroot 2 ,
-.Xr mount 2 ,
-.Xr sysfs 2 ,
-.Xr vfstab 4 ,
-.Xr lofi 7D
-.Sh NOTES
-All access to entries in
-.Nm
-mounted file systems map to their underlying file system.
-If a mount point is made available in multiple locations via
-.Nm
-and is busy in any of those locations, an attempt to mount a file system at that
-mount point fails unless the overlay flag is specified.
-See
-.Xr mount 1M .
-Examples of a mount point being busy within a
-.Nm
-mount include having a file system mounted on it or it being a processes'
-current working directory.
-.Sh WARNINGS
-Because of the potential for confusing users and applications, you should use
-loopback mounts with care.
-A loopback mount entry in
-.Pa /etc/vfstab
-must be placed after the mount points of both directories it depends on.
-This is most easily accomplished by making the loopback mount entry the last in
-.Pa /etc/vfstab .
diff --git a/usr/src/man/man7fs/lxproc.7fs b/usr/src/man/man7fs/lxproc.7fs
deleted file mode 100644
index 7ef10ce343..0000000000
--- a/usr/src/man/man7fs/lxproc.7fs
+++ /dev/null
@@ -1,115 +0,0 @@
-'\" te
-.\" Copyright (c) 2012, Joyent, Inc.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH LXPROC 7FS "April 25, 2012"
-.SH NAME
-lxproc \- a loosely Linux-compatible /proc
-.SH SYNOPSIS
-.LP
-.nf
-\fB\fR\fBmount\fR (\fB\fR\fI"lxproc"\fR, \fB\fR\fIdirectory\fR, \fB\fR\fIMS_DATA\fR, \fB\fR\fI"lxproc"\fR, \fB\fR\fINULL\fR, \fB\fR\fI0\fR);
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBlxproc\fR is an implementation of the \fB/proc\fR filesystem that
-loosely matches the Linux semantics of providing human-readable text files
-that correspond to elements of the system.
-As with both \fBproc\fR(4) and Linux \fB/proc\fR, \fBlxproc\fR makes available
-a directory for every process, with each directory containing a number
-of files; like Linux \fB/proc\fR but unlike \fBproc\fR(4), \fBlxproc\fR also
-makes available a number of files related to system-wide information.
-To ascertain the meaning and structure of the files provided via
-\fBlxproc\fR, users should consult the Linux documentation.
-.sp
-.LP
-The \fBlxproc\fR compatibility layer is
-provided only as a best-effort for simple Linux \fB/proc\fR readers; it
-is not intended to exactly mimic Linux semantics and nor does it attempt to
-somehow fool a consumer into believing that it is operating within a Linux
-environment. As such, \fBlxproc\fR should only be used by Linux-specific
-programs that are willing to trade precision in understanding the
-system in return for Linux compatibility. To programmatically understand
-the system precisely and in terms of its native constructs,
-one should not use \fBlxproc\fR, but rather \fBproc\fR(4) or
-\fBkstat\fR(3KSTAT).
-To understand
-a process or group of processes from either a shell script or the command line,
-one should not use \fBlxproc\fR, but rather \fBproc\fR(4)-based tools like
-\fBprstat\fR(1M),
-\fBpfiles\fR(1),
-\fBpargs\fR(1),
-\fBpmap\fR(1),
-\fBptree\fR(1),
-\fBplimit\fR(1),
-\fBpflags\fR(1),
-\fBpcred\fR(1),
-\fBpstack\fR(1),
-\fBpldd\fR(1),
-\fBpsig\fR(1),
-or
-\fBpwdx\fR(1).
-To understand system-wide constructs from either a shell script or the
-command line, one should not use \fBlxproc\fR, but rather
-\fBkstat\fR(3KSTAT)-based tools like
-\fBkstat\fR(1M),
-\fBmpstat\fR(1M),
-\fBiostat\fR(1M),
-\fBnetstat\fR(1M) or
-\fBpsrinfo\fR(1M).
-.sp
-.LP
-Like \fB/proc\fR, \fBlxproc\fR can be mounted on any mount point, but the
-preferred mount point is \fB/system/lxproc\fR; if a zone brand elects to
-mount it by default, this will (or should) generally be the mount point.
-.sp
-.LP
-\fBlxproc\fR can be mounted with the command:
-.sp
-.in +2
-.nf
-\fBmount \fR\fB-F\fR\fB lxproc lxproc \fR\fIdirectory\fR
-.fi
-.in -2
-
-.SH SEE ALSO
-.sp
-.LP
-\fBdf\fR(1M),
-\fBiostat\fR(1M),
-\fBkstat\fR(1M),
-\fBmpstat\fR(1M),
-\fBmount\fR(1M),
-\fBnetstat\fR(1M),
-\fBpargs\fR(1),
-\fBpcred\fR(1),
-\fBpfiles\fR(1),
-\fBpflags\fR(1),
-\fBpldd\fR(1),
-\fBplimit\fR(1),
-\fBpmap\fR(1),
-\fBprstat\fR(1M),
-\fBpsig\fR(1),
-\fBpsrinfo\fR(1M),
-\fBpstack\fR(1),
-\fBptree\fR(1),
-\fBpwdx\fR(1),
-\fBmount\fR(2), \fBumount\fR(2), \fBkstat\fR(3KSTAT), \fBproc\fR(4),
-\fBkstat\fR(9S)
-
-.SH NOTES
-.sp
-.LP
-When choosing between offering
-Linux compatibility and telling the truth, \fBlxproc\fR emphatically picks
-the truth. A particular glaring example of this is the Linux notion of
-"tasks" (that is, threads), which -- due to historical misadventures on
-Linux -- allocate their identifiers from the process identifier space.
-(That is, each thread has in effect a pid.) Some Linux \fB/proc\fR readers
-have come to depend on this attribute, and become confused when threads
-appear with proper identifiers, so \fBlxproc\fR simply opts for the pre-2.6
-behavior, and does not present the tasks directory at all.
-
diff --git a/usr/src/man/man7fs/objfs.7fs b/usr/src/man/man7fs/objfs.7fs
deleted file mode 100644
index 850e0b725f..0000000000
--- a/usr/src/man/man7fs/objfs.7fs
+++ /dev/null
@@ -1,62 +0,0 @@
-.\"
-.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 2021 Oxide Computer Company
-.\"
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.\"
-.Dd November 29, 2021
-.Dt OBJFS 7FS
-.Os
-.Sh NAME
-.Nm objfs
-.Nd Kernel object filesystem
-.Sh DESCRIPTION
-The
-.Nm
-filesystem describes the state of all modules currently loaded
-by the kernel.
-It is mounted during boot at
-.Pa /system/object .
-.Pp
-The contents of the filesystem are dynamic and reflect the current state of the
-system.
-Each module is represented by a directory containing a single file,
-.Sq object' .
-The object file is a read only ELF file which contains information about the
-object loaded in the kernel.
-.Pp
-The kernel may load and unload modules dynamically as the system runs.
-As a result, applications may observe different directory contents in
-.Pa /system/object
-if they repeatedly rescan the directory.
-If a module is unloaded, its associated
-.Pa /system/object
-files disappear from the hierarchy and subsequent attempts to open them, or to
-read files opened before the module unloaded, elicits an error.
-.Pp
-This file system is generally not present in a non-global zone.
-.Sh FILES
-.Bl -tag -width Pa
-.It Pa /system/object
-Mount point for objfs file system in the global zone.
-.El
-.Sh Interface Stability
-.Sy Private
-.Sh SEE ALSO
-.Xr vfstab 4
-.Sh NOTES
-The content of the ELF files is private to the implementation and subject to
-change without notice.
diff --git a/usr/src/man/man7fs/pcfs.7fs b/usr/src/man/man7fs/pcfs.7fs
deleted file mode 100644
index de0a2ee73c..0000000000
--- a/usr/src/man/man7fs/pcfs.7fs
+++ /dev/null
@@ -1,540 +0,0 @@
-.\"
-.\" Copyright (c) 2007 Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 2021 Oxide Computer Company
-.\"
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.\"
-.Dd November 29, 2021
-.Dt PCFS 7FS
-.Os
-.Sh NAME
-.Nm pcfs
-.Nd FAT formatted file system
-.Sh SYNOPSIS
-.In sys/param.h
-.In sys/mount.h
-.In sys/fs/pc_fs.h
-.Ft int
-.Fo mount
-.Fa "const char *spec"
-.Fa "const char *dir"
-.Fa "int mflag"
-.Fa \(dqpcfs\(dq
-.Fa NULL
-.Fa 0
-.Fa "const char *optptr"
-.Fa "int optlen"
-.Fc
-.Sh DESCRIPTION
-.Nm
-is a file system type that enables direct access to files on FAT formatted disks
-from within the SunOS operating system.
-.Pp
-Once mounted,
-.Nm
-provides standard file operations and semantics.
-Using
-.Nm
-you can create, delete, read, and write files on a FAT formatted disk.
-You can also create and delete directories and list files in a directory.
-.Pp
-.Nm
-supports FAT12 (floppies) and FAT16 and FAT32 file systems.
-.Pp
-.Nm
-file systems can be force umounted using the
-.Fl -f
-argument to
-.Xr umount 1M .
-.Pp
-The
-.Nm
-file system contained on the block special file identified by
-.Fa spec
-is mounted on the directory identified by
-.Fa dir .
-.Fa spec
-and
-.Fa dir
-are pointers to pathnames.
-.Fa mflag
-specifies the
-.Fa mount
-options.
-The
-.Dv MS_DATA
-bit in
-.Fa mflag
-must be set.
-Mount options can be passed to
-.Nm
-using the optptr and optlen arguments.
-See
-.Xr mount_pcfs 1M
-for a list of mount options supported by
-.Nm
-.Pp
-Because FAT formatted media can record file timestamps between January 1st 1980
-and December 31st 2127, it's not possible to fully represent UNIX
-.Vt time_t
-in
-.Nm
-for 32 bit or 64 bit programs.
-In particular, if post-2038 timestamps are present on a FAT formatted medium and
-.Nm
-returns these, 32bit applications may unexpectedly fail with
-.Er EOVERFLOW
-errors.
-To prevent this, the default behaviour of
-.Nm
-has been modified to clamp
-post-2038 timestamps to the latest possible value for a 32bit
-.Vt time_t ,
-which is January 19th 2038, 03:14:06 UTC when setting and retrieving file
-timestamps.
-You can override this behavior using the
-.Ar noclamptime
-mount option, as described in
-.Xr mount_pcfs 1M .
-.Pp
-Timestamps on FAT formatted media are recorded in local time.
-If the recording and receiving systems use different timezones, the
-representation of timestamps shown on the two systems for the same medium might
-vary.
-To correct this,
-.Nm
-provides a timezone mount option to force interpretation
-of timestamps as read from a FAT formatted medium in a given timezone
-.Pq that of the recorder .
-By default, the local timezone of the receiver is used.
-See
-.Xr mount_pcfs 1M
-for details.
-.Pp
-The root directory of a FAT formatted medium has no timestamps and
-.Nm
-returns the time when the mount was done as timestamp for the root of the
-filesystem.
-.Pp
-The FAT filesystem doesn't support multiple links.
-As a result, the link count
-for all files and directories in
-.Nm
-is hard-coded as
-.Dq 1 .
-.Ss Mounting File Systems
-Use the following command to mount
-.Nm
-from diskette:
-.Bd -literal -offset indent
-mount -F pcfs device-special directory-name
-.Ed
-.Pp
-You can use:
-.Bd -literal -offset indent
-mount directory-name
-.Ed
-if the following line is in your
-.Pa /etc/vfstab
-file:
-.Bd -literal -offset indent
-device-special - directory-name pcfs - no rw
-.Ed
-.Pp
-Use the following command to mount
-.Nm
-from non-diskette media:
-.Bd -literal -offset indent
-mount -F pcfs device-special:logical-drive directory-name
-.Ed
-.Pp
-You can use:
-.Bd -literal -offset indent
-mount directory-name
-.Ed
-if the following line is in your
-.Pa /etc/vfstab
-file:
-.Bd -literal -offset indent
-device-special:logical_drive - directory-name pcfs - no rw
-.Ed
-.Pp
-.Ar device-special
-specifies the special block device file for the diskette
-.Pq Pa /dev/disketteN
-or the entire hard disk
-.Po
-Pa /dev/dsk/cNtNdNp0
-for a SCSI, SATA, NVME disk, and
-.Pa /dev/dsk/cNdNp0
-for IDE disks
-.Pc
-or the PCMCIA pseudo-floppy memory card
-.Pq Pa /dev/dsk/cNtNdNsN .
-.Pp
-.Ar logical-drive
-specifies either the DOS logical drive letter
-.Po
-.Sy c
-through
-.Sy z
-.Pc
-or a drive number
-.Pq 1 through 24 .
-Drive letter
-.Sy c
-is equivalent to drive number
-.Sy 1
-and represents the Primary DOS partition on the disk; drive letters
-.Sy d
-through
-.Sy z
-are equivalent to drive numbers
-.Sy 2
-through
-.Sy 24 ,
-and represent DOS drives within the Extended FAT partition.
-Note that
-.Ar device-special
-and
-.Ar logical-drive
-must be separated by a colon.
-.Pp
-.Ar directory-name
-specifies the location where the file system is mounted.
-.Pp
-For example, to mount the Primary DOS partition from a SCSI hard disk,
-use:
-.Bd -literal -offset indent
-mount -F pcfs /dev/dsk/cNtNdNp0:c /pcfs/c
-.Ed
-.Pp
-To mount the first logical drive in the Extended DOS partition from an IDE hard
-disk, use:
-.Bd -literal -offset indent
-mount -F pcfs /dev/dsk/cNdNp0:d /pcfs/d
-.Ed
-.Pp
-To mount a DOS diskette in the first floppy drive when volume management is not
-running use:
-.Bd -literal -offset indent
-mount -F pcfs /dev/diskette /pcfs/a
-.Ed
-.Pp
-If Volume Management is running, run
-.Xr volcheck 1
-to automatically mount the floppy and some removable disks.
-.Pp
-To mount a PCMCIA pseudo-floppy memory card, with Volume Management not running
-.Pq or not managing the PCMCIA media ,
-use:
-.Bd -literal -offset indent
-mount -F pcfs /dev/dsk/cNtNdNsN /pcfs
-.Ed
-.Ss "Conventions"
-Files and directories created through
-.Nm
-must comply with either the FAT short file name convention or the long file name
-convention introduced with Windows 95.
-The FAT short file name convention is of the form
-.Pa filename[.ext] ,
-where
-.Em filename
-generally consists of from one to eight upper-case characters, while the
-optional
-.Em ext
-consists of from one to three upper-case characters.
-.Pp
-The long file name convention is much closer to illumos file names.
-A long file name can consist of any characters valid in a short file name,
-lowercase letters, non-leading spaces, the characters
-.Sy +,;=[] ,
-any number of periods, and can be up to 255 characters long.
-Long file names have an associated short file name for systems that do not
-support long file names.
-The short file name is not visible if the system recognizes long file names.
-.Nm
-generates a unique short name automatically when creating a long file name.
-.Pp
-Given a long file name such as
-.Pa This is a really long filename.TXT ,
-the short file name will generally be of the form
-.Pa THISIS~N\&.TXT ,
-where
-.Em N
-is a number.
-The long file name will probably get the short name
-.Pa THISIS~1.TXT ,
-or
-.Pa THISIS~2.TXT
-if
-.Pa THISIS~1.TXT
-already exits
-.Po or
-.Pa THISIS~3.TXT
-if both exist, and so forth
-.Pc .
-If you use
-.Nm
-file systems on systems that do not support long file names, you may want to
-continue following the short file name conventions.
-See
-.Sx EXAMPLES .
-.Pp
-When creating a file name,
-.Nm
-creates a short file name if it fits the FAT short file name format, otherwise
-it creates a long file name.
-This is because long file names take more directory space.
-Because the root directory of a
-.Nm
-file system is fixed size, long file names in the root directory should be
-avoided if possible.
-.Pp
-When displaying file names,
-.Nm
-shows them exactly as they are on the media.
-This means that short names are displayed as uppercase and long file names
-retain their case.
-Earlier versions of
-.Nm
-folded all names to lowercase, which can be forced with the
-.Dv PCFS_MNT_FOLDCASE
-mount option.
-All file name searches within
-.Nm ,
-however, are treated as if they were uppercase, so
-.Pa readme.txt
-and
-.Pa ReAdMe.TxT
-refer to the same file.
-.Pp
-To format a diskette or a PCMCIA pseudo-floppy memory card in FAT format in the
-SunOS system, use either the
-.Xr fdformat 1
-.Fl -d
-or the DOS
-.Sy FORMAT
-command.
-.Ss Boot Partitions
-On x86 systems, hard drives may contain an fdisk partition reserved for the boot
-utilities.
-The most common case is the EFI system partition.
-These partitions are special instances of
-.Nm .
-You can mount an x86 boot partition with the command:
-.Bd -literal -offset indent
-mount -F pcfs device-special:boot directory-name
-.Ed
-or you can use:
-.Bd -literal -offset indent
-mount directory-name
-.Ed
-if the following line is in your
-.Pa /etc/vfstab
-file:
-.Bd -literal -offset indent
-device-special:boot - directory-name pcfs - no rw
-.Ed
-.Pp
-.Ar device-special
-specifies the special block device file for the entire hard disk
-.Pq Pa /dev/dsk/cNtNdNp0
-.Pp
-.Ar directory-name
-specifies the location where the file system is mounted.
-.Pp
-All files on a boot partition are owned by super-user.
-Only the super-user may create, delete, or modify files on a boot partition.
-.Sh ENVIRONMENT
-See
-.Xr environ 5
-for descriptions of the following environment variables
-for the current locale setting:
-.Ev LANG ,
-.Ev LC_ALL ,
-.Ev LC_CTYPE ,
-and
-.Ev LC_COLLATE .
-.Sh FILES
-.Bl -tag -width Pa
-.It Pa /usr/lib/fs/pcfs/mount
-.Nm
-mount command.
-.It Pa /usr/kernel/fs/amd64/pcfs
-64-bit kernel module (x86).
-.El
-.Sh EXAMPLES
-.Sy Example 1
-Sample Displays of File Names
-.Pp
-If you copy a file
-.Pa financial.data
-from a UNIX file system to
-.Nm ,
-it displays as
-.Pa financial.data
-in
-.Nm
-but may show up as
-.Pa FINANC~1.DAT
-in systems that do not support long file names.
-.Pp
-The following are legal long file names.
-They are also illegal short file names:
-.Bl -item -offset indent
-.It
-.Pa test.sh.orig
-.It
-.Pa data+
-.El
-.Pp
-Other systems that do not support long file names may see:
-.Bl -item -offset indent
-.It
-.Pa TESTSH~1.ORI
-.It
-.Pa DATA~1
-.It
-.Pa LOGIN~1
-.El
-The short file name is generated from the initial characters of the long file
-name, so differentiate names in the first few characters.
-For example, these names:
-.Bl -item -offset indent
-.It
-.Pa WorkReport.January.Data
-.It
-.Pa WorkReport.February.Data
-.It
-.Pa WorkReport.March.Data
-.El
-result in these short names, which are not distinguishable:
-.Bl -item -offset indent
-.It
-.Pa WORKRE~1.DAT
-.It
-.Pa WORKRE~2.DAT
-.It
-.Pa WORKRE~2.DAT
-.It
-.Pa WORKRE~2.DAT
-.It
-.Pa WORKRE~13.DAT
-.El
-.Pp
-These names, however:
-.Bl -item -offset indent
-.It
-.Pa January.WorkReport.Data
-.It
-.Pa February.WorkReport.Data
-.It
-.Pa March.WorkReport.Data
-.El
-result in the more descriptive short names:
-.Bl -item -offset indent
-.It
-.Pa JANUAR~1.DAT
-.It
-.Pa FEBRUA~1.DAT
-.It
-.Pa MARCHW~1.DAT
-.El
-.Sh SEE ALSO
-.Xr chgrp 1 ,
-.Xr chown 1 ,
-.Xr dos2unix 1 ,
-.Xr eject 1 ,
-.Xr fdformat 1 ,
-.Xr unix2dos 1 ,
-.Xr volcheck 1 ,
-.Xr mount 1M ,
-.Xr mount_pcfs 1M ,
-.Xr umount 1M ,
-.Xr ctime 3C ,
-.Xr vfstab 4 ,
-.Xr environ 5
-.Sh WARNINGS
-Do not physically eject a FAT floppy while the device is mounted as
-.Nm
-If Volume Management is managing a device, use the
-.Xr eject 1
-command before physically removing media.
-.Pp
-When mounting
-.Nm
-on a hard disk, make sure the first block on that device contains a valid fdisk
-partition table.
-.Pp
-Because
-.Nm
-has no provision for handling owner-IDs or group-IDs on files,
-.Xr chown 1
-or
-.Xr chgrp 1
-may generate various errors.
-This is a limitation of
-.Nm
-but it should not cause problems other than error messages.
-.Sh NOTES
-Only the following characters are allowed in
-.Nm
-short file names and extensions:
-.Bl -item -offset indent
-.It
-0-9
-.It
-A-Z
-.It
-$#&@!%()-{}<>`_^~|'
-.It
-.El
-illumos and FAT use different character sets and have different
-requirements for the text file format.
-Use the
-.Xr dos2unix 1
-and
-.Xr unix2dos 1
-commands to convert files between them.
-.Pp
-.Nm
-offers a convenient transportation vehicle for files between multiple systems.
-Because the FAT disk format was designed for use under DOS, it does not operate
-efficiently under illumos and should not be used as the format for a regular
-local storage.
-Instead, use ZFS for local storage within an illumos system.
-.Pp
-Although long file names can contain spaces
-(just as in UNIX file names) ,
-some utilities may be confused by them.
-.Pp
-When
-.Nm
-encounters long file names with non-ASCII characters, it converts such long file
-names in Unicode scalar values into UTF-8 encoded filenames so that they are
-legible and usable with any of illumos UTF-8 locales.
-In the same context, when new file names with non-ASCII characters are created,
-.Nm
-expects that such file names are in UTF-8.
-This feature increases the interoperability of
-.Nm
-on illumos with other operating
-systems.
-.Sh BUGS
-.Nm
-should handle the disk change condition in the same way that DOS does, so you do
-not need to unmount the file system to change floppies.
diff --git a/usr/src/man/man7fs/sharefs.7fs b/usr/src/man/man7fs/sharefs.7fs
deleted file mode 100644
index fc13421d48..0000000000
--- a/usr/src/man/man7fs/sharefs.7fs
+++ /dev/null
@@ -1,61 +0,0 @@
-.\"
-.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 2021 Oxide Computer Company
-.\"
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.\"
-.\" Copyright 2020 Joyent, Inc.
-.\" Copyright 2021 Oxide Computer Company
-.Dd February 4, 2020
-.Dt SHAREFS 7FS
-.Os
-.Sh NAME
-.Nm sharefs
-.Nd Kernel sharetab filesystem
-.Sh DESCRIPTION
-The
-.Nm
-filesystem describes the state of all shares currently loaded by the kernel, and
-shared by the invoking zone.
-It is mounted during boot time as a read-only file at
-.Pa /etc/dfs/sharetab .
-.Pp
-Filesystem contents are dynamic and reflect the current set of shares in the
-zone.
-File contents are described in
-.Xr sharetab 4 .
-.Pp
-File contents can be modified as a result of
-.Xr share 1M ,
-.Xr sharectl 1M ,
-.Xr sharemgr 1M ,
-and changing properties of a
-.Xr zfs 1M
-data set.
-.Pp
-The module may not be unloaded dynamically by the kernel.
-.Sh FILES
-.Bl -tag -width Pa
-.It Pa /etc/dfs/sharetab
-System record of shared file systems.
-.El
-.Sh SEE ALSO
-.Xr share 1M ,
-.Xr sharectl 1M ,
-.Xr sharemgr 1M ,
-.Xr zfs 1M ,
-.Xr sharetab 4 ,
-.Xr zones 5
diff --git a/usr/src/man/man7fs/smbfs.7fs b/usr/src/man/man7fs/smbfs.7fs
deleted file mode 100644
index eef5ef76b8..0000000000
--- a/usr/src/man/man7fs/smbfs.7fs
+++ /dev/null
@@ -1,150 +0,0 @@
-.\"
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 2021 Oxide Computer Company
-.\"
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.\"
-.Dd September 9, 2009
-.Dt SMBFS 7FS
-.Os
-.Sh NAME
-.Nm smbfs
-.Nd CIFS/SMB file system
-.Sh DESCRIPTION
-The
-.Nm
-file system allows you to mount CIFS shares that are exported from Windows or
-compatible systems.
-SMB is the historical name for the CIFS protocol, which stands for Server
-Message Block and is more commonly used in technical contexts.
-.Pp
-The
-.Nm
-file system permits ordinary UNIX applications to change directory into an
-.Nm
-mount and perform simple file and directory operations.
-Supported operations include
-.Xr open 2 ,
-.Xr close 2 ,
-.Xr read 2 ,
-.Xr write 2 ,
-.Xr rename 2 ,
-.Xr rm 1 ,
-.Xr mkdir 1 ,
-.Xr rmdir 1 ,
-and
-.Xr ls 1 .
-.Ss Limitations
-Some local UNIX file systems
-.Pq for example UFS
-have features that are not supported by
-.Nm .
-These include:
-.Bl -bullet -offset indent
-.It
-No mapped-file access because
-.Xr mmap (2)
-returns
-.Er ENOSYS .
-.It
-Locking is
-.Sy local only
-and is not sent to the server.
-.El
-.Pp
-The following are limitations in the CIFS protocol:
-.Bl -bullet -offset indent
-.It
-.Xr unlink 2
-or
-.Xr rename 2
-of open files returns
-Er EBUSY .
-.It
-.Xr rename 2
-of extended attribute files returns
-.Er EINVAL .
-.It
-Creation of files with any of the following illegal characters returns
-.Er EINVAL :
-colon
-.Pq \&: ,
-backslash
-.Pq \e ,
-slash
-.Pq / ,
-asterisk
-.Pq * ,
-question mark
-.Pq \&? ,
-double quote
-.Pq \(dq ,
-less than
-.Pq \(la ,
-greater than
-.Pq \(ra ,
-and vertical bar
-.Pq | .
-.It
-.Xr chmod 2
-and
-.Xr chown 2
-settings are silently discarded.
-.It
-Links are not supported.
-.It
-Symbolic links are not supported.
-.It
-.Xr mknod 2
-is not supported.
-.Pq Only file and directory objects are supported.
-.El
-.Pp
-The current
-.Nm
-implementation does not support multi-user mounts.
-Instead, each Unix user needs to make their own private mount points.
-.Pp
-Currently, all access through an
-.Nm
-mount point uses the Windows credentials established by the user that ran the
-.Xr mount 1
-command.
-Normally, permissions on
-.Nm
-mount points should be
-.Sy 0700
-to prevent Unix users from using each others' Windows credentials.
-See the
-.Ar dirperms
-option to
-.Xr mount_smbfs 1M
-for details regarding how to control
-.Nm
-mount point permissions.
-.Pp
-An important implication of this limitation is that system-wide mounts, such as
-those made using
-.Pa /etc/vfstab
-or automount maps are only useful in cases where access control is not a
-concern, such as for public read-only resources.
-.Sh INTERFACE STABILITY
-.Sy Uncommitted
-.Sh SEE ALSO
-.Xr smbutil 1 ,
-.Xr mount_smbfs 1M ,
-.Xr nsmbrc 4 ,
-.Xr attributes 5
diff --git a/usr/src/man/man7fs/tmpfs.7fs b/usr/src/man/man7fs/tmpfs.7fs
deleted file mode 100644
index b1dc877dd7..0000000000
--- a/usr/src/man/man7fs/tmpfs.7fs
+++ /dev/null
@@ -1,190 +0,0 @@
-.\"
-.\" Copyright (c) 1990, Sun Microsystems, Inc.
-.\" Copyright 2021 Oxide Computer Company
-.\"
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.\"
-.Dd October 9, 1990
-.Dt TMPFS 7FS
-.Os
-.Sh NAME
-.Nm tmpfs
-.Nd memory based file system
-.Sh SYNOPSIS
-.In sys/mount.h
-.Fo mount
-.Fa "const char *special"
-.Fa "const char *directory"
-.Fa IMS_DATA
-.Fa \(dqtmpfs\(dq
-.Fa NULL
-.Fa 0
-.Fc
-.Sh DESCRIPTION
-.Nm
-is a memory based file system which uses kernel resources relating to the VM
-system and page cache as a file system.
-Once mounted, a
-.Nm
-file system provides standard file operations and semantics.
-.Nm
-is so named because files and directories are not preserved across
-reboot or unmounts, all files residing on a
-.Nm
-file system that is unmounted will be lost.
-.Pp
-.Nm
-file systems can be mounted with the command:
-.Bd -literal -offset indent
-mount -F tmpfs swap directory
-.Ed
-.Pp
-Alternatively, to mount a
-.Nm
-file system on
-.Pa /tmp
-at multi-user startup time
-.Pq maximizing possible performance improvements ,
-add the following line to
-.Pa /etc/vfstab :
-.Bd -literal -offset indent
-swap \(mi/tmp tmpfs \(mi yes \(mi
-.Ed
-.Pp
-.Nm
-is designed as a performance enhancement which is achieved by caching the writes
-to files residing on a
-.Nm
-file system.
-Performance improvements are most noticeable when a large number of short lived
-files are written and accessed on a
-.Nm
-file system.
-Large compilations with
-.Nm
-mounted on
-.Pa /tmp
-are a good example of this.
-.Pp
-Users of
-.Nm
-should be aware of some constraints involved in mounting a
-.Nm
-file system.
-The resources used by
-.Nm
-are the same as those used when commands are executed
-.Pq for example, swap space allocation .
-This means that large sized
-.Nm
-files can affect the amount of space left over for programs to execute.
-Likewise, programs requiring large amounts of memory use up the space available
-to
-.Nm
-Users running into this constraint
-.Po
-for example, running out of space on
-.Nm
-.Pc
-can allocate more swap space by using the
-.Xr swap 1M
-command.
-.Pp
-Another constraint is that the number of files available in a
-.Nm
-file system is calculated based on the physical memory of the machine and not
-the size of the swap device/partition.
-If you have too many files,
-.Nm
-will print a warning message and you will be unable to create new files.
-You cannot increase this limit by adding swap space.
-.Pp
-Normal file system writes are scheduled to be written to a permanent storage
-medium along with all control information associated with the file
-.Pq for example, modification time, file permissions .
-.Nm
-control information resides only in memory and never needs to be written to
-permanent storage.
-File data remains in core until memory demands are sufficient to cause pages
-associated with
-.Nm
-to be reused at which time they are copied out to swap.
-.Pp
-An additional mount option can be specified to control the size of an individual
-.Nm
-file system.
-See
-.Xr mount_tmpfs 1M
-for more details.
-.Sh DIAGNOSTICS
-If
-.Nm
-runs out of space, one of the following messages will display in the console.
-.Bl -tag -width Ds
-.It "directory: File system full, swap space limit exceeded"
-This message appears because a page could not be allocated while writing to a
-file.
-This can occur if
-.Nm
-is attempting to write more than it is allowed, or if currently executing
-programs are using a lot of memory.
-To make more space available, remove unnecessary files, exit from some programs,
-or allocate more swap space using
-.Xr swap 1M .
-.It "directory: File system full, memory allocation failed"
-.Nm
-ran out of physical memory while attempting to create a new file or
-directory.
-Remove unnecessary files or directories or install more physical memory.
-.El
-.Sh SEE ALSO
-.Xr df 1M ,
-.Xr mount 1M ,
-.Xr mount_tmpfs 1M ,
-.Xr swap 1M ,
-.Xr mmap 2 ,
-.Xr mount 2 ,
-.Xr umount 2 ,
-.Xr vfstab 4
-.Sh WARNINGS
-Files and directories on a
-.Nm
-file system are not preserved across reboots or unmounts.
-Command scripts or programs which count on this will not work as expected.
-.Sh NOTES
-Compilers do not necessarily use
-/tmp
-to write intermediate files therefore missing some significant performance
-benefits.
-This can be remedied by setting the environment variable
-.Ev TMPDIR to
-.Pa /tmp .
-Compilers use
-the value in this environment variable as the name of the directory to store
-intermediate files.
-.Pp
-.Sy swap
-to a
-.Nm
-file is not supported.
-.Pp
-.Xr df 1M
-output is of limited accuracy since a
-.Nm
-file system size
-is not static and the space available to
-.Nm
-is dependent on the swap space demands of the entire system.
diff --git a/usr/src/man/man7fs/udfs.7fs b/usr/src/man/man7fs/udfs.7fs
deleted file mode 100644
index cb57651008..0000000000
--- a/usr/src/man/man7fs/udfs.7fs
+++ /dev/null
@@ -1,102 +0,0 @@
-.\"
-.\" Copyright (c) 1999 Sun Microsystems, Inc.
-.\" All Rights Reserved.
-.\" Copyright 2021 Oxide Computer Company
-.\"
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.\"
-.Dd June 20, 2021
-.Dt UDFS 7FS
-.Os
-.Sh NAME
-.Nm udfs
-.Nd universal disk format file system
-.Sh DESCRIPTION
-The
-.Nm
-file system is a file system type that allows user access to files on Universal
-Disk Format (UDF) disks from within illumos.
-Once mounted, a
-.Nm
-file system provides standard file system operations and semantics.
-That is, users can read files, write files, and list files in a directory on a
-UDF device and applications can use standard UNIX system calls on these files
-and directories.
-.Pp
-Because
-.Nm
-is a platform-independent file system, the same media can be written to and read
-from by any operating system or vendor.
-.Ss "Mounting File Systems"
-.Nm
-file systems are mounted using:
-.Bd -literal -offset indent
-mount -F udfs -o rw/ro device-special
-.Ed
-.Pp
-Use:
-.Bd -literal -offset indent
-mount /udfs
-.Ed
-if the
-.Nm
-and device special file
-.Pa /dev/dsk/c0t6d0s0
-are valid and the following line
-.Pq or similar line
-appears in your
-Pa /etc/vfstab
-file:
-.Bd -literal -offset indent
-/dev/dsk/c0t6d0s0 - /udfs udfs - no ro
-.Ed
-.Pp
-The
-.Nm
-file system provides read-only support for ROM, RAM, and sequentially-recordable
-media and read-write support on RAM media.
-.Pp
-The
-.Nm
-file system also supports regular files, directories, and symbolic links, as
-well as device nodes such as block, character, FIFO, and Socket.
-.Sh SEE ALSO
-.Xr mount 1M ,
-.Xr mount_udfs 1M ,
-.Xr vfstab 4
-.Sh NOTES
-Invalid characters such as
-.Dq \e0
-and
-.Dq /
-and invalid file names
-such as
-.Dq \ .
-.Dq \&.
-and
-.Dq \&.\&.
-will be translated according to the following rule:
-.Pp
-Replace the invalid character with an
-.Dq _ ,
-then append the file name with
-.Dq #
-followed by a 4 digit hex representation of the 16-bit CRC of the original
-.Sy FileIdentifier .
-For example, the file name
-.Dq \&.\&.
-will become
-.Dq __#4C05 .
diff --git a/usr/src/man/man7fs/ufs.7fs b/usr/src/man/man7fs/ufs.7fs
deleted file mode 100644
index 462f201e43..0000000000
--- a/usr/src/man/man7fs/ufs.7fs
+++ /dev/null
@@ -1,269 +0,0 @@
-.\"
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 1989 AT&T
-.\" Copyright 2021 Oxide Computer Company
-.\"
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.\"
-.Dd November 29, 2021
-.Dt UFS 7FS
-.Os
-.Sh NAME
-.Nm ufs
-.Nd UFS file system
-.Sh SYNOPSIS
-.In sys/param.h
-.In sys/types.h
-.In sys/fs/ufs_fs.h
-.In sys/fs/ufs_inode.h
-.Sh DESCRIPTION
-.Nm
-is one of the primary default disk-based file systems for illumos.
-The UFS file system is hierarchical, starting with its root directory
-.Pq Pa /
-and continuing downward through a number of directories.
-The root of a UFS file system is
-.Sy inode 2 .
-A UFS file system's root contents replace the contents of the directory upon
-which it is mounted.
-.Pp
-Subsequent sections of this manpage provide details of the UFS file systems.
-.Ss State Flags Pq Fa fs_state , Fa fs_clean
-UFS uses state flags to identify the state of the file system.
-.Fa fs_state
-is
-.Dv FSOKAY -
-.Fa fs_time .
-.Fa fs_time
-is the timestamp that indicates when the last system write occurred.
-.Fa fs_state
-is updated whenever
-.Fa fs_clean
-changes.
-Some
-.Fa fs_clean
-values are:
-.Bl -tag -width Ds
-.It Dv FSCLEAN
-Indicates an undamaged, cleanly unmounted file system.
-.It Dv FSACTIVE
-Indicates a mounted file system that has modified data in memory.
-A mounted file system with this state flag indicates that user data or metadata
-would be lost if power to the system is interrupted.
-.It Dv FSSTABLE
-Indicates an idle mounted file system.
-A mounted file system with this state flag indicates that neither user data nor
-metadata would be lost if power to the system is interrupted.
-.It Dv FSBAD
-Indicates that this file system contains inconsistent file system data.
-.It Dv FSLOG
-Indicates that the file system has logging enabled.
-A file system with this flag set is either mounted or unmounted.
-If a file system has logging enabled, the only flags that it can have are
-.Dv FSLOG
-or
-.Dv FSBAD .
-A non-logging file system can have
-.Dv FSACTIVE ,
-.Dv FSSTABLE ,
-or
-.Dv FSCLEAN .
-.Pp
-It is not necessary to run the
-.Sy fsck
-command on unmounted file systems with a state of
-.Dv FSCLEAN ,
-.Dv FSSTABLE ,
-or
-.Dv FSLOG .
-.Xr mount 2
-returns
-.Dv ENOSPC
-if an attempt is made to mount a UFS file system with a state of
-.Dv FSACTIVE
-for read/write access.
-.Pp
-As an additional safeguard,
-.Fa fs_clean
-should be trusted only if
-.Fa fs_state
-contains a value equal to
-.Dv FSOKAY -
-.Fa fs_time ,
-where
-.Dv FSOKAY
-is a constant integer defined in the
-.Pa /usr/include/sys/fs/ufs_fs.h
-file.
-Otherwise,
-.Fa fs_clean
-is treated as though it contains the value of
-.Dv FSACTIVE .
-.El
-.Ss Extended Fundamental Types (EFT)
-Extended Fundamental Types
-.Pq EFT
-provide 32-bit user ID
-.Pq UID ,
-group ID
-.Pq GID ,
-and device numbers.
-.Pp
-If a UID or GID contains an extended value, the short variable
-.Po
-.Fa ic_suid ,
-.Fa ic_sgid
-.Pc
-contains the value 65535 and the corresponding UID or GID is in
-.Fa ic_uid
-or
-.Fa ic_gid .
-Because numbers for block and character devices are stored in the first direct
-block pointer of the inode
-.Pq Fa ic_db[0]
-and the disk block addresses are already 32 bit values, no special encoding
-exists for device numbers
-.Pq unlike UID or GID fields .
-.Ss Multiterabyte File System
-A multiterabyte file system enables creation of a UFS file system up to
-approximately 16 terabytes of usable space, minus approximately one percent
-overhead.
-A sparse file can have a logical size of one terabyte.
-However, the actual amount of data that can be stored in a file is approximately
-one percent less than one terabyte because of file system overhead.
-.Pp
-On-disk format changes for a multiterabyte UFS file system include:
-.Bl -bullet -offset indent
-.It
-The magic number in the superblock changes from
-.Dv FS_MAGIC
-to
-.Dv MTB_UFS_MAGIC .
-For more information, see the
-.Pa /usr/include/sys/fs/ufs_fs.h
-file.
-.It
-The
-.Fa fs_logbno
-unit is a sector for UFS that is less than 1 terabyte in
-size and fragments for a multiterabyte UFS file system.
-.El
-.Ss UFS Logging
-UFS logging bundles the multiple metadata changes that comprise a complete UFS
-operation into a transaction.
-Sets of transactions are recorded in an on-disk log and are applied to the
-actual UFS file system's metadata.
-.Pp
-UFS logging provides two advantages:
-.Bl -enum
-.It
-A file system that is consistent with the transaction log eliminates the
-need to run
-.Sy fsck
-after a system crash or an unclean shutdown.
-.It
-UFS logging often provides a significant performance improvement.
-This is because a file system with logging enabled converts multiple updates to
-the same data into single updates, thereby reducing the number of overhead disk
-operations.
-.El
-.Pp
-The UFS log is allocated from free blocks on the file system and is sized at
-approximately 1 Mbyte per 1 Gbyte of file system, up to 256 Mbytes.
-The log size may be larger (up to a maximum of 512 Mbytes), depending upon the
-number of cylinder groups present in the file system.
-The log is continually flushed as it fills up.
-The log is also flushed when the file system is unmounted or as a result of a
-.Xr lockfs 1M
-command.
-.Ss Mounting UFS File Systems
-You can mount a UFS file system in various ways using syntax similar to the
-following:
-.Bl -enum
-.It
-Use
-.Xr mount 1M
-from the command line:
-.Bd -literal -offset indent
-# mount -F ufs /dev/dsk/c0t0d0s7 /export/home
-.Ed
-.It
-Include an entry in the
-.Pa /etc/vfstab
-file to mount the file system at boot time:
-.Bd -literal -offset indent
-/dev/dsk/c0t0d0s7 /dev/rdsk/c0t0d0s7 /export/home ufs 2 yes -
-.Ed
-.El
-.Pp
-For more information on mounting UFS file systems, see
-.Xr mount_ufs 1M .
-.Sh INTERFACE STABILITY
-.Sy Uncomitted
-.Sh SEE ALSO
-.Xr df 1M ,
-.Xr fsck 1M ,
-.Xr fsck_ufs 1M ,
-.Xr fstyp 1M ,
-.Xr lockfs 1M ,
-.Xr mkfs_ufs 1M ,
-.Xr newfs 1M ,
-.Xr tunefs 1M ,
-.Xr ufsdump 1M ,
-.Xr ufsrestore 1M ,
-.Xr mount 2 ,
-.Xr attributes 5
-.Sh NOTES
-For information about internal UFS structures, see
-.Xr newfs 1M
-and
-.Xr mkfs_ufs 1M .
-For information about dumping and restoring file systems, see
-.Xr ufsdump 1M ,
-.Xr ufsrestore 1M ,
-and
-.Pa /usr/include/protocols/dumprestore.h .
-If you experience difficulty in allocating space on the ufs filesystem, it may
-be due to fragmentation.
-Fragmentation can occur when you do not have sufficient free blocks to satisfy
-an allocation request even though
-.Xr df 1M
-indicates that enough free space is available.
-(This may occur because df only uses the available fragment count to calculate
-available space, but the file system requires contiguous sets of fragments for
-most allocations).
-If you suspect that you have exhausted contiguous fragments on your file system,
-you can use the
-.Xr fstyp 1M
-utility with the
-.Fl v
-option.
-In the fstyp output, look at the
-.Em nbfree
-.Pq number of blocks free
-and
-.Fa nffree
-.Pq (number of fragments free)
-fields.
-On unmounted filesystems, you can use
-.Xr fsck 1M
-and observe the last line of output, which reports, among other items, the
-number of fragments and the degree of fragmentation.
-To correct a fragmentation problem, run
-.Xr ufsdump 1M
-and
-.Xr ufsrestore 1M
-on the ufs filesystem.
diff --git a/usr/src/man/man7i/Makefile b/usr/src/man/man7i/Makefile
deleted file mode 100644
index 9d5267ddb2..0000000000
--- a/usr/src/man/man7i/Makefile
+++ /dev/null
@@ -1,52 +0,0 @@
-#
-# This file and its contents are supplied under the terms of the
-# Common Development and Distribution License ("CDDL"), version 1.0.
-# You may only use this file in accordance with the terms of version
-# 1.0 of the CDDL.
-#
-# A full copy of the text of the CDDL should have accompanied this
-# source. A copy of the CDDL is also available via the Internet
-# at http://www.illumos.org/license/CDDL.
-#
-
-#
-# Copyright 2011, Richard Lowe
-# Copyright 2013 Nexenta Systems, Inc. All rights reserved.
-#
-
-include $(SRC)/Makefile.master
-
-MANSECT= 7i
-
-MANFILES= audio.7i \
- cdio.7i \
- dkio.7i \
- dsp.7i \
- fbio.7i \
- fdio.7i \
- hdio.7i \
- iec61883.7i \
- ipnat.7i \
- mhd.7i \
- mixer.7i \
- mtio.7i \
- prnio.7i \
- quotactl.7i \
- sesio.7i \
- sockio.7i \
- streamio.7i \
- termio.7i \
- termiox.7i \
- uscsi.7i \
- visual_io.7i \
- vt.7i
-
-MANLINKS= uccid.7i
-
-uccid.7i := LINKSRC = ../man7d/ccid.7d
-
-.KEEP_STATE:
-
-include $(SRC)/man/Makefile.man
-
-install: $(ROOTMANFILES) $(ROOTMANLINKS)
diff --git a/usr/src/man/man7i/audio.7i b/usr/src/man/man7i/audio.7i
deleted file mode 100644
index fcee1683f8..0000000000
--- a/usr/src/man/man7i/audio.7i
+++ /dev/null
@@ -1,999 +0,0 @@
-.\" Copyright (c) 2009 Sun Microsystems, Inc. All rights reserved.
-.\" Copyright 2018, Joyent, Inc.
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.Dd July 8, 2018
-.Dt AUDIO 7I
-.Os
-.Sh NAME
-.Nm audio
-.Nd generic audio device interface
-.Sh SYNOPSIS
-.In sys/audio.h
-.Sh OVERVIEW
-An audio device is used to play and/or record a stream of audio data.
-Since a
-specific audio device may not support all functionality described below, refer
-to the device-specific manual pages for a complete description of each hardware
-device.
-An application can use the
-.Dv AUDIO_GETDEV
-.Xr ioctl 2
-to determine the current audio hardware associated with
-.Pa /dev/audio .
-.Pp
-The audio framework provides a software mixing engine (audio mixer) for all
-audio devices, allowing more than one process to play or record audio at the
-same time.
-.Ss "Backward Compatibility"
-It is no longer possible to disable the mixing function.
-Applications must not
-assume that they have exclusive access to the audio device.
-.Ss "Multi-Stream Codecs"
-The audio mixer supports multi-stream Codecs.
-These devices have DSP engines
-that provide sample rate conversion, hardware mixing, and other features.
-The use of such hardware features is opaque to applications.
-.Sh AUDIO FORMATS
-Digital audio data represents a quantized approximation of an analog audio
-signal waveform.
-In the simplest case, these quantized numbers represent the
-amplitude of the input waveform at particular sampling intervals.
-To achieve the best approximation of an input signal, the highest possible sampling
-frequency and precision should be used.
-However, increased accuracy comes at a cost of increased data storage requirements.
-For instance, one minute of
-monaural audio recorded in \(*m-Law format (pronounced
-.Em mew-law )
-at 8 KHz requires nearly 0.5 megabytes of storage, while the standard Compact Disc
-audio format (stereo 16-bit linear
-.Sy PCM
-data sampled at 44.1 KHz) requires approximately 10 megabytes per minute.
-.Pp
-Audio data may be represented in several different formats.
-An audio device's
-current audio data format can be determined by using the
-.Dv AUDIO_GETINFO
-.Xr ioctl 2
-described below.
-.Pp
-An audio data format is characterized in the audio driver by four parameters:
-Sample Rate, Encoding, Precision, and Channels.
-Refer to the device-specific
-manual pages for a list of the audio formats that each device supports.
-In addition to the formats that the audio device supports directly, other formats
-provide higher data compression.
-Applications may convert audio data to and
-from these formats when playing or recording.
-.Ss "Sample Rate"
-Sample rate is a number that represents the sampling frequency (in samples per
-second) of the audio data.
-.Pp
-The audio mixer always configures the hardware for the highest possible sample
-rate for both play and record.
-This ensures that none of the audio streams
-require compute-intensive low pass filtering.
-The result is that high sample rate audio streams are not degraded by filtering.
-.Pp
-Sample rate conversion can be a compute-intensive operation, depending on the
-number of channels and a device's sample rate.
-For example, an 8KHz signal can
-be easily converted to 48KHz, requiring a low cost up sampling by 6.
-However,
-converting from 44.1KHz to 48KHz is compute intensive because it must be up
-sampled by 160 and then down sampled by 147.
-This is only done using integer multipliers.
-.Pp
-Applications can greatly reduce the impact of sample rate conversion by
-carefully picking the sample rate.
-Applications should always use the highest
-sample rate the device supports.
-An application can also do its own sample rate
-conversion (to take advantage of floating point and accelerated instruction or
-use small integers for up and down sampling.
-.Pp
-All modern audio devices run at 48 kHz or a multiple thereof, hence just using
-48 kHz may be a reasonable compromise if the application is not prepared to
-select higher sample rates.
-.Ss "Encodings"
-An encoding parameter specifies the audio data representation.
-\(*m-Law
-encoding corresponds to
-.Em CCITT G.711 ,
-and is the standard for voice data
-used by telephone companies in the United States, Canada, and Japan.
-A-Law encoding is also part of
-.Em CCITT G.711
-and is the standard encoding for telephony elsewhere in the world.
-A-Law and \(*m-Law audio data are sampled at
-a rate of 8000 samples per second with 12-bit precision, with the data
-compressed to 8-bit samples.
-The resulting audio data quality is equivalent to
-that of standard analog telephone service.
-.Pp
-Linear Pulse Code Modulation (PCM) is an uncompressed, signed audio format in
-which sample values are directly proportional to audio signal voltages.
-Each sample is a 2's complement number that represents a positive or negative
-amplitude.
-.Ss "Precision"
-Precision indicates the number of bits used to store each audio sample.
-For instance, \(*m-Law and A-Law data are stored with 8-bit precision.
-.Sy PCM
-data may be stored at various precisions, though 16-bit is the most common.
-.Ss "Channels"
-Multiple channels of audio may be interleaved at sample boundaries.
-A sample frame consists of a single sample from each active channel.
-For example, a sample frame of stereo 16-bit
-.Sy PCM
-data consists of two 16-bit samples,
-corresponding to the left and right channel data.
-.Pp
-The audio mixer sets the hardware to the maximum number of channels supported.
-If a mono signal is played or recorded, it is mixed on the first two (usually
-the left and right) channels only.
-Silence is mixed on the remaining channels
-.Ss "Supported Formats"
-The audio mixer supports the following audio formats:
-.Bl -column "Signed Linear PCM" "Precision" "Mono or Stereo" -offset 2n
-.It Encoding Ta Precision Ta Channels
-.It "Signed Linear PCM" Ta "32-bit" Ta "Mono or Stereo"
-.It "Signed Linear PCM" Ta "16-bit" Ta "Mono or Stereo"
-.It "Signed Linear PCM" Ta "8-bit" Ta "Mono or Stereo"
-.It "\(*m-Law" Ta "8-bit" Ta "Mono or Stereo"
-.It "A-Law" Ta "8-bit" Ta "Mono or Stereo"
-.El
-.Pp
-The audio mixer converts all audio streams to 24-bit Linear PCM before mixing.
-After mixing, conversion is made to the best possible Codec format.
-The
-conversion process is not compute intensive and audio applications can choose
-the encoding format that best meets their needs.
-.Pp
-Note that the mixer discards the low order 8 bits of 32-bit Signed Linear PCM
-in order to perform mixing.
-(This is done to allow for possible overflows to
-fit into 32-bits when mixing multiple streams together.)
-Hence, the maximum effective precision is 24-bits.
-.Sh DESCRIPTION
-The device
-.Pa /dev/audio
-is a device driver that dispatches audio requests
-to the appropriate underlying audio hardware.
-The audio driver is implemented as a
-.Sy STREAMS
-driver.
-In order to record audio input, applications
-.Xr open 2
-the
-.Pa /dev/audio
-device and read data from it using the
-.Xr read 2
-system call.
-Similarly, sound data is queued to the audio output port by using the
-.Xr write 2
-system call.
-Device configuration is performed using the
-.Xr ioctl 2
-interface.
-.Pp
-Because some systems may contain more than one audio device, application
-writers are encouraged to query the
-.Ev AUDIODEV
-environment variable.
-If this variable is present in the environment, its value should identify the
-path name of the default audio device.
-.Ss "Opening the Audio Device"
-The audio device is not treated as an exclusive resource.
-Each process may open the audio device once.
-.Pp
-Each
-.Xr open 2
-completes as long as there are channels available to be allocated.
-If no channels are available to be allocated:
-.Bl -bullet -offset indent
-.It
-if either the
-.Dv O_NDELAY
-or
-.Dv O_NONBLOCK
-flags are set in the
-.Xr open 2
-.Fa oflag
-argument, then -1 is immediately returned, with
-.Va errno
-set to
-.Er EBUSY .
-.It
-if neither the
-.Dv O_NDELAY
-nor the
-.Dv O_NONBLOCK
-flag are set, then
-.Xr open 2
-hangs until the device is available or a signal is delivered to
-the process, in which case a -1 is returned with
-.Va errno
-set to
-.Er EINTR .
-.El
-.Pp
-Upon the initial
-.Xr open 2
-of the audio channel, the audio mixer sets the data
-format of the audio channel to the default state of 8-bit, 8Khz, mono \(*m-Law
-data.
-.Pp
-If the audio device does not support this configuration, it informs the
-audio mixer of the initial configuration.
-Audio applications should explicitly set the encoding characteristics to match the
-audio data requirements, and not depend on the default configuration.
-.Ss "Recording Audio Data"
-The
-.Xr read 2
-system call copies data from the system's buffers to the application.
-Ordinarily,
-.Xr read 2
-blocks until the user buffer is filled.
-The
-.Dv I_NREAD
-.Sy ioctl
-(see
-.Xr streamio 7I )
-may be used to determine the amount of data that may be read without blocking.
-The device may alternatively be set to a non-blocking mode, in which case
-.Xr read 2
-completes immediately, but may return fewer bytes than requested.
-Refer to the
-.Xr read 2
-manual page for a complete description of this behavior.
-.Pp
-When the audio device is opened with read access, the device driver immediately
-starts buffering audio input data.
-Since this consumes system resources,
-processes that do not record audio data should open the device write-only
-.Pq Dv O_WRONLY .
-.Pp
-The transfer of input data to
-.Sy STREAMS
-buffers may be paused (or resumed) by using the
-.Dv AUDIO_SETINFO
-.Sy ioctl
-to set (or clear) the
-.Fa record.pause
-flag in the audio information structure (see below).
-All unread input data in the
-.Sy STREAMS
-queue may be discarded by using the
-.Dv I_FLUSH
-.Sy STREAMS
-ioctl.
-See
-.Xr streamio 7I .
-When changing record parameters, the input stream should be paused and flushed
-before the change, and resumed afterward.
-Otherwise, subsequent reads may return samples
-in the old format followed by samples in the new format.
-This is particularly important when new parameters result in a changed sample size.
-.Pp
-Input data can accumulate in
-.Sy STREAMS
-buffers very quickly.
-At a minimum,
-it will accumulate at 8000 bytes per second for 8-bit, 8 KHz, mono, \(*m-Law data.
-If the device is configured for 16-bit linear or higher sample rates, it will
-accumulate even faster.
-If the application that consumes the data cannot keep
-up with this data rate, the
-.Sy STREAMS
-queue may become full.
-When this occurs, the
-.Fa record.error
-flag is set in the audio information structure and input sampling ceases until
-there is room in the input queue for additional data.
-In such cases, the input data stream contains a discontinuity.
-For this reason, audio recording applications should open the audio device when
-they are prepared to begin reading data, rather than at the start of extensive
-initialization.
-.Ss "Playing Audio Data"
-The
-.Xr write 2
-system call copies data from an application's buffer to the
-.Sy STREAMS
-output queue.
-Ordinarily,
-.Xr write 2
-blocks until the entire user buffer is transferred.
-The device may alternatively be set to a non-blocking mode, in which case
-.Xr write 2
-completes immediately, but may have transferred fewer bytes than requested.
-See
-.Xr write 2 .
-.Pp
-Although
-.Xr write 2
-returns when the data is successfully queued, the actual
-completion of audio output may take considerably longer.
-The
-.Dv AUDIO_DRAIN
-ioctl may be issued to allow an application to block until all of the
-queued output data has been played.
-Alternatively, a process may request
-asynchronous notification of output completion by writing a zero-length buffer
-(end-of-file record) to the output stream.
-When such a buffer has been
-processed, the
-.Fa play.eof
-flag in the audio information structure is incremented.
-.Pp
-The final
-.Xr close 2
-of the file descriptor hangs until all of the audio
-output has drained.
-If a signal interrupts the
-.Xr close 2 ,
-or if the process exits without closing the device, any remaining data queued
-for audio output is flushed and the device is closed immediately.
-.Pp
-The consumption of output data may be paused (or resumed) by using the
-.Dv AUDIO_SETINFO
-ioctl to set (or clear) the
-.Fa play.pause
-flag in the audio information structure.
-Queued output data may be discarded by using
-the
-.Dv I_FLUSH
-.Sy STREAMS
-ioctl.
-(See
-.Xr streamio 7I ) .
-.Pp
-Output data is played from the
-.Sy STREAMS
-buffers at a default rate of at
-least 8000 bytes per second for \(*m-Law, A-Law or 8-bit PCM data (faster for
-16-bit linear data or higher sampling rates).
-If the output queue becomes
-empty, the
-.Fa play.error
-flag is set in the audio information structure and
-output is stopped until additional data is written.
-If an application attempts
-to write a number of bytes that is not a multiple of the current sample frame
-size, an error is generated and the bad data is thrown away.
-Additional writes are allowed.
-.Ss "Asynchronous I/O"
-The
-.Dv I_SETSIG
-.Sy STREAMS
-ioctl
-enables asynchronous notification, through the
-.Dv SIGPOLL
-signal, of input and output ready condition changes.
-The
-.Dv O_NONBLOCK
-flag may be set using the
-.Dv F_SETFL
-.Xr fcntl 2
-to
-enable non-blocking
-.Xr read 2
-and
-.Xr write 2
-requests.
-This is normally
-sufficient for applications to maintain an audio stream in the background.
-.Ss "Audio Control Pseudo-Device"
-It is sometimes convenient to have an application, such as a volume control
-panel, modify certain characteristics of the audio device while it is being
-used by an unrelated process.
-.Pp
-The
-.Pa /dev/audioctl
-pseudo-device is provided for this purpose.
-Any number of processes may open
-.Pa /dev/audioctl
-simultaneously.
-However,
-.Xr read 2
-and
-.Xr write 2
-system calls are ignored by
-.Pa /dev/audioctl .
-The
-.Dv AUDIO_GETINFO
-and
-.Dv AUDIO_SETINFO
-ioctl commands may be issued to
-.Pa /dev/audioctl
-to determine the status or alter the behavior of
-.Pa /dev/audio .
-Note: In general, the audio control device name is
-constructed by appending the letters
-.Qq Sy ctl
-to the path name of the audio device.
-.Ss "Audio Status Change Notification"
-Applications that open the audio control pseudo-device may request asynchronous
-notification of changes in the state of the audio device by setting the
-.Dv S_MSG
-flag in an
-.Dv I_SETSIG
-.Sy STREAMS
-ioctl.
-Such processes receive a
-.Dv SIGPOLL
-signal when any of the following events occur:
-.Bl -bullet -offset indent
-.It
-An
-.Dv AUDIO_SETINFO
-ioctl has altered the device state.
-.It
-An input overflow or output underflow has occurred.
-.It
-An end-of-file record (zero-length buffer) has been processed on output.
-.It
-An
-.Xr open 2
-or
-.Xr close 2
-of
-.Pa /dev/audio
-has altered the device state.
-.It
-An external event (such as speakerbox's volume control) has altered the device
-state.
-.El
-.Sh IOCTLS
-.Ss "Audio Information Structure"
-The state of the audio device may be polled or modified using the
-.Dv AUDIO_GETINFO
-and
-.Dv AUDIO_SETINFO
-ioctl commands.
-These commands operate on the
-.Vt audio_info
-structure as defined, in
-.In sys/audio.h ,
-as follows:
-.Bd -literal -offset 2n
-/*
- * This structure contains state information for audio device
- * IO streams
- */
-
-struct audio_prinfo {
- /*
- * The following values describe the
- * audio data encoding
- */
- uint_t sample_rate; /* samples per second */
- uint_t channels; /* number of interleaved channels */
- uint_t precision; /* number of bits per sample */
- uint_t encoding; /* data encoding method */
-
- /*
- * The following values control audio device
- * configuration
- */
- uint_t gain; /* volume level */
- uint_t port; /* selected I/O port */
- uint_t buffer_size; /* I/O buffer size */
-
- /*
- * The following values describe the current device
- * state
- */
- uint_t samples; /* number of samples converted */
- uint_t eof; /* End Of File counter (play only) */
- uchar_t pause; /* non-zero if paused, zero to resume */
- uchar_t error; /* non-zero if overflow/underflow */
- uchar_t waiting; /* non-zero if a process wants access */
- uchar_t balance; /* stereo channel balance */
-
- /*
- * The following values are read-only device state
- * information
- */
- uchar_t open; /* non-zero if open access granted */
- uchar_t active; /* non-zero if I/O active */
- uint_t avail_ports; /* available I/O ports */
- uint_t mod_ports; /* modifiable I/O ports */
-};
-typedef struct audio_prinfo audio_prinfo_t;
-
-/*
- * This structure is used in AUDIO_GETINFO and AUDIO_SETINFO ioctl
- * commands
- */
-struct audio_info {
- audio_prinfo_t record;/* input status info */
- audio_prinfo_t play; /* output status info */
- uint_t monitor_gain; /* input to output mix */
- uchar_toutput_muted; /* non-zero if output muted */
- uint_t hw_features; /* supported H/W features */
- uint_t sw_features; /* supported S/W features */
- uint_t sw_features_enabled;
- /* supported S/W features enabled */
-};
-typedef struct audio_info audio_info_t;
-
-/* Audio encoding types */
-#define AUDIO_ENCODING_ULAW (1) /* u-Law encoding */
-#define AUDIO_ENCODING_ALAW (2) /* A-Law encoding */
-#define AUDIO_ENCODING_LINEAR (3) /* Signed Linear PCM encoding */
-
-/*
- * These ranges apply to record, play, and
- * monitor gain values
- */
-#define AUDIO_MIN_GAIN (0)/* minimum gain value */
-#define AUDIO_MAX_GAIN (255) /* maximum gain value */
-
-/*
- * These values apply to the balance field to adjust channel
- * gain values
- */
-#define AUDIO_LEFT_BALANCE (0) /* left channel only */
-#define AUDIO_MID_BALANCE (32) /* equal left/right balance */
-#define AUDIO_RIGHT_BALANCE (64) /* right channel only */
-
-/*
- * Define some convenient audio port names
- * (for port, avail_ports and mod_ports)
- */
-
-/* output ports (several might be enabled at once) */
-#define AUDIO_SPEAKER (0x01) /* built-in speaker */
-#define AUDIO_HEADPHONE (0x02) /* headphone jack */
-#define AUDIO_LINE_OUT (0x04) /* line out */
-#define AUDIO_SPDIF_OUT (0x08) /* SPDIF port */
-#define AUDIO_AUX1_OUT (0x10) /* aux1 out */
-#define AUDIO_AUX2_OUT (0x20) /* aux2 out */
-
-/*
- * input ports (usually only one may be enabled at a time)
- */
-#define AUDIO_MICROPHONE (0x01) /* microphone */
-#define AUDIO_LINE_IN (0x02) /* line in */
-#define AUDIO_CD (0x04) /* on-board CD inputs */
-#define AUDIO_SPDIF_IN (0x08) /* SPDIF port */
-#define AUDIO_AUX1_IN (0x10) /* aux1 in */
-#define AUDIO_AUX2_IN (0x20) /* aux2 in */
-#define AUDIO_CODEC_LOOPB_IN (0x40) /* Codec inter. loopback */
-
-/* These defines are for hardware features */
-#define AUDIO_HWFEATURE_DUPLEX (0x00000001u)
-/* simult. play & cap. supported */
-
-#define AUDIO_HWFEATURE_MSCODEC (0x00000002u)
-/* multi-stream Codec */
-
-/* These defines are for software features *
-#define AUDIO_SWFEATURE_MIXER (0x00000001u)
-/* audio mixer audio pers. mod. */
-
-/*
- * Parameter for the AUDIO_GETDEV ioctl
- * to determine current audio devices
- */
-#define MAX_AUDIO_DEV_LEN (16)
-struct audio_device {
- char name[MAX_AUDIO_DEV_LEN];
- char version[MAX_AUDIO_DEV_LEN];
- char config[MAX_AUDIO_DEV_LEN];
-};
-typedef struct audio_device audio_device_t;
-.Ed
-.Pp
-The
-.Fa play.gain
-and
-.Fa record.gain
-fields specify the output and input volume levels.
-A value of
-.Dv AUDIO_MAX_GAIN
-indicates maximum volume.
-Audio output may also be temporarily muted by setting a non-zero value in the
-.Fa output_muted
-field.
-Clearing this field restores audio output to the normal state.
-.Pp
-The
-.Va monitor_gain
-field is present for compatibility, and is no longer supported.
-See
-.Xr dsp 7I
-for more detail.
-.Pp
-Likewise, the
-.Fa play.port ,
-.Fa play.ports ,
-.Fa play.mod_ports ,
-.Fa record.port ,
-.Fa record.ports ,
-and
-.Fa record.mod_ports
-are no longer supported.
-See
-.Xr dsp 7I
-for more detail.
-.Pp
-The
-.Fa play.balance
-and
-.Fa record.balance
-fields are fixed to
-.Dv AUDIO_MID_BALANCE .
-Changes to volume levels for different channels can be
-made using the interfaces in
-.Xr dsp 7I .
-.Pp
-The
-.Fa play.pause
-and
-.Fa record.pause
-flags may be used to pause and
-resume the transfer of data between the audio device and the
-.Sy STREAMS
-buffers.
-The
-.Fa play.error
-and
-.Fa record.error
-flags indicate that data underflow or overflow has occurred.
-The
-.Fa play.active
-and
-.Fa record.active
-flags indicate that data transfer is currently active in the corresponding
-direction.
-.Pp
-The
-.Fa play.open
-and
-.Fa record.open
-flags indicate that the device is
-currently open with the corresponding access permission.
-The
-.Fa play.waiting
-and
-.Fa record.waiting
-flags provide an indication that a process may be waiting to access the device.
-These flags are set automatically when a process blocks on
-.Xr open 2 ,
-though they may also be set using the
-.Dv AUDIO_SETINFO
-ioctl command.
-They are cleared only when a process relinquishes access by closing the device.
-.Pp
-The
-.Fa play.samples
-and
-.Fa record.samples
-fields are zeroed at
-.Xr open 2
-and are incremented each time a data sample is copied to or from
-the associated
-.Sy STREAMS
-queue.
-Some audio drivers may be limited to counting
-buffers of samples, instead of single samples for their samples accounting.
-For this reason, applications should not assume that the samples fields contain a
-perfectly accurate count.
-The
-.Fa play.eof
-field increments whenever a zero-length output buffer is synchronously processed.
-Applications may use this
-field to detect the completion of particular segments of audio output.
-.Pp
-The
-.Fa record.buffer_size
-field controls the amount of input data that is
-buffered in the device driver during record operations.
-Applications that have
-particular requirements for low latency should set the value appropriately.
-Note however that smaller input buffer sizes may result in higher system
-overhead.
-The value of this field is specified in bytes and drivers will
-constrain it to be a multiple of the current sample frame size.
-Some drivers may place other requirements on the value of this field.
-Refer to the audio device-specific manual page for more details.
-If an application changes the
-format of the audio device and does not modify the
-.Fa record.buffer_size
-field, the device driver may use a default value to compensate for the new data
-rate.
-Therefore, if an application is going to modify this field, it should
-modify it during or after the format change itself, not before.
-When changing
-the
-.Fa record.buffer_size
-parameters, the input stream should be paused and
-flushed before the change, and resumed afterward.
-Otherwise, subsequent reads
-may return samples in the old format followed by samples in the new format.
-This is particularly important when new parameters result in a changed sample
-size.
-If you change the
-.Fa record.buffer_size
-for the first packet, this protocol must be followed or the first buffer will
-be the default buffer size for the device, followed by packets of the requested
-change size.
-.Pp
-The
-.Fa record.buffer_size
-field may be modified only on the
-.Pa /dev/audio
-device by processes that have it opened for reading.
-.Pp
-The
-.Fa play.buffer_size
-field is currently not supported.
-.Pp
-The audio data format is indicated by the
-.Fa sample_rate ,
-.Fa channels ,
-.Fa precision ,
-and
-.Fa encoding
-fields.
-The values of these fields correspond to the
-descriptions in the
-.Sx "AUDIO FORMATS"
-section of this man page.
-Refer to the
-audio device-specific manual pages for a list of supported data format
-combinations.
-.Pp
-The data format fields can be modified only on the
-.Pa /dev/audio
-device.
-.Pp
-If the parameter changes requested by an
-.Dv AUDIO_SETINFO
-ioctl cannot all be accommodated,
-.Xr ioctl 2
-returns with
-.Va errno
-set to
-.Er EINVAL
-and no changes are made to the device state.
-.Ss "Streamio IOCTLS"
-All of the
-.Xr streamio 7I
-.Xr ioctl 2
-commands may be issued for the
-.Pa /dev/audio
-device.
-Because the
-.Pa /dev/audioctl
-device has its own
-.Sy STREAMS
-queues, most of these commands neither modify nor report the
-state of
-.Pa /dev/audio
-if issued for the
-.Pa /dev/audioctl
-device.
-The
-.Dv I_SETSIG
-ioctl may be issued for
-.Pa /dev/audioctl
-to enable the notification of audio status changes, as described above.
-.Ss "Audio IOCTLS"
-The audio device additionally supports the following
-.Xr ioctl 2
-commands:
-.Bl -tag -width "AUDIO_GETINFO"
-.It Dv AUDIO_DRAIN
-The argument is ignored.
-This command suspends the calling process until the
-output STREAMS queue is empty and all queued samples have been played, or until
-a signal is delivered to the calling process.
-It may not be issued for the
-.Pa /dev/audioctl
-device.
-An implicit
-.Dv AUDIO_DRAIN
-is performed on the final
-.Xr close 2
-of
-.Pa /dev/audio .
-.It Dv AUDIO_GETDEV
-The argument is a pointer to an
-.Vt audio_device_t
-structure.
-This command may be issued for either
-.Pa /dev/audio
-or
-.Pa /dev/audioctl .
-The returned
-value in the name field will be a string that will identify the current
-.Pa /dev/audio
-hardware device, the value in version will be a string
-indicating the current version of the hardware, and
-.Fa config
-will be a device-specific string identifying the properties of the audio stream
-associated with that file descriptor.
-Refer to the audio device-specific manual
-pages to determine the actual strings returned by the device driver.
-.It Dv AUDIO_GETINFO
-The argument is a pointer to an
-.Vt audio_info_t
-structure.
-This command may be issued for either
-.Pa /dev/audio
-or
-.Pa /dev/audioctl .
-The current state of the
-.Pa /dev/audio
-device is returned in the structure.
-Values return pertain to a logical view of the device as seen by and private to
-the process, and do not necessarily reflect the actual hardware device itself.
-.It Dv AUDIO_SETINFO
-The argument is a pointer to an
-.Vt audio_info_t
-structure.
-This command may be issued for either the
-.Pa /dev/audio
-or the
-.Pa /dev/audioctl
-device with some restrictions.
-This command configures the audio device according to
-the supplied structure and overwrites the existing structure with the new state
-of the device.
-Note: The
-.Fa play.samples ,
-.Fa record.samples ,
-.Fa play.error ,
-.Fa record.error ,
-and
-.Fa play.eof
-fields are modified to reflect the state of the device when the
-.Dv AUDIO_SETINFO
-is issued.
-This allows programs to automatically modify these fields while retrieving the
-previous value.
-.Pp
-As with
-.Dv AUDIO_SETINFO ,
-the settings managed by this ioctl deal with a
-logical view of the device which is private to the process, and don't
-necessarily have any impact on the hardware device itself.
-.El
-.Pp
-Certain fields in the audio information structure, such as the pause flags, are
-treated as read-only when
-.Pa /dev/audio
-is not open with the corresponding access permission.
-Other fields, such as the gain levels and encoding
-information, may have a restricted set of acceptable values.
-Applications that
-attempt to modify such fields should check the returned values to be sure that
-the corresponding change took effect.
-The
-.Fa sample_rate ,
-.Fa channels ,
-.Fa precision ,
-and
-.Fa encoding
-fields treated as read-only for
-.Pa /dev/audioctl ,
-so that applications can be guaranteed that the existing
-audio format will stay in place until they relinquish the audio device.
-.Dv AUDIO_SETINFO
-will return
-.Er EINVAL
-when the desired configuration is not possible, or
-.Er EBUSY
-when another process has control of the audio device.
-.Pp
-All of the logical device state is reset when the corresponding I/O stream of
-.Pa /dev/audio
-is closed.
-.Pp
-The
-.Vt audio_info_t
-structure may be initialized through the use of the
-.Dv AUDIO_INITINFO
-macro.
-This macro sets all fields in the structure to
-values that are ignored by the
-.Dv AUDIO_SETINFO
-command.
-For instance, the following code switches the output port from the built-in
-speaker to the headphone jack without modifying any other audio parameters:
-.Bd -literal -offset 2n
-audio_info_t info;
-AUDIO_INITINFO();
-info.play.port = AUDIO_HEADPHONE;
-err = ioctl(audio_fd, AUDIO_SETINFO, );
-.Ed
-.Pp
-This technique eliminates problems associated with using a sequence of
-.Dv AUDIO_GETINFO
-followed by
-.Dv AUDIO_SETINFO .
-.Sh FILES
-The physical audio device names are system dependent and are rarely used by
-programmers.
-Programmers should use the following generic device names:
-.Bl -tag -width "/usr/share/audio/samples"
-.It Pa /dev/audio
-Symbolic link to the system's primary audio device
-.It Pa /dev/audioctl
-Symbolic link to the control device for
-.Pa /dev/audio
-.It Pa /dev/sound/0
-First audio device in the system
-.It Pa /dev/sound/0ctl
-Audio control device for
-.Pa /dev/sound/0
-.It Pa /usr/share/audio/samples
-Audio files
-.El
-.Sh ERRORS
-An
-.Xr open 2
-call will fail if:
-.Bl -tag -width "EINTR"
-.It Er EBUSY
-The requested play or record access is busy and either the
-.Dv O_NDELAY
-or
-.Dv O_NONBLOCK
-flag was set in the
-.Xr open 2
-request.
-.It Er EINTR
-The requested play or record access is busy and a signal interrupted the
-.Xr open 2
-request.
-.El
-.Pp
-An
-.Xr ioctl 2
-call will fail if:
-.Bl -tag -width "EINVAL"
-.It Er EINVAL
-The parameter changes requested in the
-.Dv AUDIO_SETINFO
-ioctl are invalid or are not supported by the device.
-.El
-.Sh ARCHITECTURE
-SPARC
-X86
-.Sh INTERFACE STABILITY
-Obsolete Uncommitted
-.Sh SEE ALSO
-.Xr close 2 ,
-.Xr fcntl 2 ,
-.Xr ioctl 2 ,
-.Xr open 2 ,
-.Xr poll 2 ,
-.Xr read 2 ,
-.Xr write 2 ,
-.Xr attributes 5 ,
-.Xr dsp 7I ,
-.Xr streamio 7I
-.Sh BUGS
-Due to a feature of the
-.Sy STREAMS
-implementation, programs that are terminated or
-exit without closing the audio device may hang for a short period while audio
-output drains.
-In general, programs that produce audio output should catch the
-.Dv SIGINT
-signal and flush the output stream before exiting.
diff --git a/usr/src/man/man7i/cdio.7i b/usr/src/man/man7i/cdio.7i
deleted file mode 100644
index 40a14ee94b..0000000000
--- a/usr/src/man/man7i/cdio.7i
+++ /dev/null
@@ -1,692 +0,0 @@
-.\" Copyright (c) 2001, Sun Microsystems, Inc. All Rights Reserved
-.\" Copryright 2017, Joyent, Inc.
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.Dd October 22, 2017
-.Dt CDIO 7I
-.Os
-.Sh NAME
-.Nm cdio
-.Nd CD-ROM control operations
-.Sh SYNOPSIS
-.In sys/cdio.h
-.Sh DESCRIPTION
-The set of
-.Xr ioctl 2
-commands described below are used to perform audio and
-.Sy CD-ROM
-specific operations.
-Basic to these
-.Sy cdio
-ioctl requests are the definitions in
-.In sys/cdio.h .
-.Pp
-Several
-.Sy CD-ROM
-specific commands can report addresses either in
-.Sy LBA
-(Logical Block Address) format or in
-.Sy MSF
-(Minute, Second, Frame) format.
-The
-.Sy READ HEADER ,
-.Sy BREAD SUBCHANNEL ,
-and
-.Sy BREAD TABLE OF CONTENTS
-commands have this feature.
-.Pp
-.Sy LBA
-format represents the logical block address for the
-.Sy CD-ROM
-absolute address field or for the offset from the beginning of the current
-track expressed as a number of logical blocks in a
-.Sy CD-ROM
-track relative address field.
-.Sy MSF
-format represents the physical address written on
-.Sy CD-ROM
-discs, expressed as a sector count relative to either the
-beginning of the medium or the beginning of the current track.
-.Sh IOCTLS
-The following
-.Sy I/O
-controls do not have any additional data passed into or received from them.
-.Bl -tag -width CDROMCLOSETRAY
-.It Dv CDROMSTART
-This
-.Xr ioctl 2
-spins up the disc and seeks to the last address requested.
-.It Dv CDROMSTOP
-This
-.Xr ioctl 2
-spins down the disc.
-.It Dv CDROMPAUSE
-This
-.Xr ioctl 2
-pauses the current audio play operation.
-.It Dv CDROMRESUME
-This
-.Xr ioctl 2
-resumes the paused audio play operation.
-.It Dv CDROMEJECT
-This
-.Xr ioctl 2
-ejects the caddy with the disc.
-.It Dv CDROMCLOSETRAY
-This
-.Xr ioctl 2
-closes the caddy with the disc.
-.El
-.Pp
-The following
-.Sy I/O
-controls require a pointer to the structure for that
-.Xr ioctl 2 ,
-with data being passed into the
-.Xr ioctl 2 .
-.Bl -tag -width CDROMPLAYTRKIND
-.It Dv CDROMPLAYMSF
-This
-.Xr ioctl 2
-command requests the drive to output the audio signals at
-the specified starting address and continue the audio play until the specified
-ending address is detected.
-The address is in
-.Sy MSF
-format.
-The third argument of this
-.Xr ioctl 2
-call is a pointer to the type
-.Vt "struct cdrom_msf" .
-.Bd -literal -offset 2n
-/*
- * definition of play audio msf structure
- */
-struct cdrom_msf {
- /* starting minute */
- unsigned char cdmsf_min0;
- /* starting second */
- unsigned char cdmsf_sec0;
- /* starting frame */
- unsigned char cdmsf_frame0;
- /* ending minute */
- unsigned char cdmsf_min1;
- /* ending second */
- unsigned char cdmsf_sec1;
- /* ending frame */
- unsigned char cdmsf_frame1;
-};
-.Ed
-.Pp
-The
-.Dv CDROMREADTOCENTRY
-ioctl request may be used to obtain the start time for a track.
-An approximation of the finish time can be obtained by using the
-.Dv CDROMREADTOCENTRY
-ioctl request to retrieve the start time of the track
-following the current track.
-.Pp
-The leadout track is the next consecutive track after the last audio track.
-Hence, the start time of the leadout track may be used as the effective finish
-time of the last audio track.
-.It Dv CDROMPLAYTRKIND
-This
-.Xr ioctl 2
-command is similar to
-.Dv CDROMPLAYMSF .
-The starting and ending address is in track/index format.
-The third argument of the
-.Xr ioctl 2
-call is a pointer to the type
-.Vt "struct cdrom_ti" .
-.Bd -literal -offset 2n
-/*
- * definition of play audio track/index structure
- */
-struct cdrom_ti {
- /* starting track */
- unsigned char cdti_trk0;
- /* starting index */
- unsigned char cdti_ind0;
- /* ending track */
- unsigned char cdti_trk1;
- /* ending index */
- unsigned char cdti_ind1;
-};
-.Ed
-.It Dv CDROMVOLCTRL
-This
-.Xr ioctl 2
-command controls the audio output level.
-The
-.Sy SCSI
-command allows the control of up to four channels.
-The current implementation of the supported
-.Sy CD-ROM
-drive only uses channel 0 and channel 1.
-The valid values of volume control are between 0x00 and 0xFF, with a value of
-0xFF indicating maximum volume.
-The third argument of the
-.Xr ioctl 2
-call is a pointer to
-.Vt "struct cdrom_volctrl"
-which contains the output volume values.
-.Bd -literal -offset 2n
-/*
- * definition of audio volume control structure
- */
-struct cdrom_volctrl {
- unsigned char channel0;
- unsigned char channel1;
- unsigned char channel2;
- unsigned char channel3;
-};
-.Ed
-.El
-.Pp
-The following
-.Sy I/O
-controls take a pointer that will have data returned to
-the user program from the
-.Sy CD-ROM
-driver.
-.Bl -tag -width CDROMREADOFFSET
-.It Dv CDROMREADTOCHDR
-This
-.Xr ioctl 2
-command returns the header of the table of contents (TOC).
-The header consists of the starting track number and the ending track number
-of the disc.
-These two numbers are returned through a pointer of
-.Vt "struct cdrom_tochdr" .
-While the disc can start at any number, all tracks between the
-first and last tracks are in contiguous ascending order.
-.Bd -literal -offset 2n
-/*
- * definition of read toc header structure
- */
-struct cdrom_tochdr {
- unsigned char cdth_trk0; /* starting track */
- unsigned char cdth_trk1; /* ending track */
-};
-.Ed
-.It Dv CDROMREADTOCENTRY
-This
-.Xr ioctl 2
-command returns the information of a specified track.
-The third argument of the function call is a pointer to the type
-.Vt "struct cdrom_tocentry" .
-The caller needs to supply the track number and the address format.
-This command will return a 4-bit
-.Sy adr
-field, a 4-bit
-.Sy ctrl
-field, the starting address in
-.Sy MSF
-format or
-.Sy LBA
-format, and the data mode if the track is a data track.
-The
-.Sy ctrl
-field specifies whether the track is data or audio.
-.Bd -literal -offset 2n
-/*
- * definition of read toc entry structure
- */
-struct cdrom_tocentry {
- unsigned char cdte_track;
- unsigned char cdte_adr :4;
- unsigned char cdte_ctrl :4;
- unsigned char cdte_format;
- union {
- struct {
- unsigned char minute;
- unsigned char second;
- unsigned char frame;
- } msf;
- int lba;
- } cdte_addr;
- unsigned char cdte_datamode;
-};
-.Ed
-.Pp
-To get the information from the leadout track, the following value is
-appropriate for the
-.Fa cdte_track
-field:
-.\" These next few lists all use the same width so they align better
-.Bl -tag -offset indent -width CDROM_DATA_TRACK
-.It Dv CDROM_LEADOUT
-Leadout track
-.El
-.Pp
-To get the information from the data track, the following value is appropriate
-for the
-.Fa cdte_ctrl
-field:
-.Bl -tag -offset indent -width CDROM_DATA_TRACK
-.It Dv CDROM_DATA_TRACK
-Data track
-.El
-.Pp
-The following values are appropriate for the
-.Fa cdte_format
-field:
-.Bl -tag -offset indent -width CDROM_DATA_TRACK
-.It Dv CDROM_LBA
-.Sy LBA
-format
-.It Dv CDROM_MSF
-.Sy MSF
-format
-.El
-.It Dv CDROMSUBCHNL
-This
-.Xr ioctl 2
-command reads the Q sub-channel data of the current block.
-The subchannel data includes track number, index number, absolute
-.Sy CD-ROM
-address, track relative
-.Sy CD-ROM
-address, control data and audio status.
-All information is returned through a pointer to
-.Vt "struct cdrom_subchnl" .
-The caller needs to supply the address format for the returned address.
-.Bd -literal -offset 2n
-struct cdrom_subchnl {
- unsigned char cdsc_format;
- unsigned char cdsc_audiostatus;
- unsigned char cdsc_adr :4;
- unsigned char cdsc_ctrl :4;
- unsigned char cdsc_trk;
- unsigned char cdsc_ind;
- union {
- struct {
- unsigned char minute;
- unsigned char second;
- unsigned char frame;
- } msf;
- int lba;
- } cdsc_absaddr;
- union {
- struct {
- unsigned char minute;
- unsigned char second;
- unsigned char frame;
- } msf;
- int lba;
- } cdsc_reladdr;
-};
-.Ed
-.Pp
-The following values are valid for the audio status field returned from
-.Sy "READ SUBCHANNEL"
-command:
-.Bl -tag -width CDROM_AUDIO_NO_STATUS
-.It Dv CDROM_AUDIO_INVALID
-Audio status not supported.
-.It Dv CDROM_AUDIO_PLAY
-Audio play operation in progress.
-.It Dv CDROM_AUDIO_PAUSED
-Audio play operation paused.
-.It Dv CDROM_AUDIO_COMPLETED
-Audio play successfully completed.
-.It Dv CDROM_AUDIO_ERROR
-Audio play stopped due to error.
-.It Dv CDROM_AUDIO_NO_STATUS
-No current audio status to return.
-.El
-.It Dv CDROMREADOFFSET
-This
-.Xr ioctl 2
-command returns the absolute
-.Sy CD-ROM
-address of the first track in the last session of a Multi-Session
-.Sy CD-ROM .
-The third argument of the
-.Xr ioctl 2
-call is a pointer to an
-.Vt int .
-.It Dv CDROMCDDA
-This
-.Xr ioctl 2
-command returns the
-.Sy CD-DA
-data or the subcode data.
-The third argument of the
-.Xr ioctl 2
-call is a pointer to the type
-.Vt "struct cdrom_cdda" .
-In addition to allocating memory and supplying its address, the
-caller needs to supply the starting address of the data, the transfer length in
-terms of the number of blocks to be transferred, and the subcode options.
-The caller also needs to issue the
-.Dv CDROMREADTOCENTRY
-.Xr ioctl 2
-to find out which tracks contain
-.Sy CD-DA
-data before issuing this
-.Xr ioctl 2 .
-.Bd -literal -offset 2n
-/*
- * Definition of CD-DA structure
- */
-struct cdrom_cdda {
- unsigned int cdda_addr;
- unsigned int cdda_length;
- caddr_t cdda_data;
- unsigned char cdda_subcode;
-};
-.Ed
-.Pp
-.Sy cdda_addr
-signifies the starting logical block address.
-.Sy cdda_length
-signifies the transfer length in blocks.
-The length of the block depends on the
-.Sy cdda_subcode
-selection, which is explained below.
-To get the subcode information related to
-.Sy CD-DA
-data, the following values are appropriate for the
-.Sy cdda_subcode
-field:
-.Bl -tag -width CDROM_DA_SUBCODE_ONLY
-.It Sy CDROM_DA_NO_SUBCODE
-.Sy CD-DA
-data with no subcode.
-.It Sy CDROM_DA_SUBQ
-.Sy CD-DA
-data with sub Q code.
-.It Sy CDROM_DA_ALL_SUBCODE
-.Sy CD-DA
-data with all subcode.
-.It Sy CDROM_DA_SUBCODE_ONLY
-All subcode only.
-.El
-.Pp
-To allocate the memory related to
-.Sy CD-DA
-and/or subcode data, the
-following values are appropriate for each data block transferred:
-.Bl -tag -width "CD-DA data with all subcode"
-.It Sy CD-DA data with no subcode
-2352 bytes
-.It Sy CD-DA data with sub Q code
-2368 bytes
-.It Sy CD-DA data with all subcode
-2448 bytes
-.It Sy "All subcode only"
-96 bytes
-.El
-.It Dv CDROMCDXA
-This
-.Xr ioctl 2
-command returns the
-.Sy "CD-ROM XA"
-(CD-ROM Extended Architecture) data according to
-.Sy "CD-ROM XA"
-format.
-The third argument of the
-.Xr ioctl 2
-call is a pointer to the type
-.Vt "struct cdrom_cdxa" .
-In addition to allocating memory and supplying its address, the
-caller needs to supply the starting address of the data, the transfer length
-in terms of number of blocks, and the format.
-The caller also needs to issue
-the
-.Sy CDROMREADTOCENTRY
-.Xr ioctl 2
-to find out which tracks contain
-.Sy "CD-ROM XA"
-data before issuing this
-.Xr ioctl 2 .
-.Bd -literal -offset 2n
-/*
- * Definition of CD-ROM XA structure
- */
-struct cdrom_cdxa {
- unsigned int cdxa_addr;
- unsigned int cdxa_length;
- caddr_t cdxa_data;
- unsigned char cdxa_format;
-};
-.Ed
-.Pp
-To get the proper
-.Sy "CD-ROM XA"
-data, the following values are appropriate for the
-.Fa cdxa_format
-field:
-.Bl -tag -width CDROM_XA_DATA_W_ERROR
-.It Dv CDROM_XA_DATA
-.Sy "CD-ROM XA"
-data only
-.It Dv CDROM_XA_SECTOR_DATA
-.Sy "CD-ROM XA"
-all sector data
-.It Dv CDROM_XA_DATA_W_ERROR
-.Sy CD-ROM \fBXA\fR
-data with error flags data
-.El
-.Pp
-To allocate the memory related to
-.Sy "CD-ROM XA"
-format, the following values are appropriate for each data block transferred:
-.Bl -tag -width "CD-ROM XA data with error flags data"
-.It Sy "CD-ROM XA" data only
-2048 bytes
-.It Sy "CD-ROM XA" all sector data
-2352 bytes
-.It Sy "CD-ROM XA" data with error flags data
-2646 bytes
-.El
-.It Dv CDROMSUBCODE
-This
-.Xr ioctl 2
-command returns raw subcode data (subcodes P ~ W are
-described in the "Red Book," see
-.Sx SEE ALSO )
-to the initiator while the target is playing audio.
-The third argument of the
-.Xr ioctl 2
-call is a pointer to the type
-.Vt "struct cdrom_subcode" .
-The caller needs to supply the transfer length in terms of number of blocks and
-allocate memory for subcode data.
-The memory allocated should be a multiple of 96 bytes depending on the
-transfer length.
-.Bd -literal -offset 2n
-/*
- * Definition of subcode structure
- */
-struct cdrom_subcode {
- unsigned int cdsc_length;
- caddr_t cdsc_addr;
-};
-.Ed
-.El
-.Pp
-The next group of
-.Sy I/O
-controls get and set various
-.Sy CD-ROM
-drive parameters.
-.Bl -tag -width CDROMGDRVSPEED
-.It Dv CDROMGBLKMODE
-This
-.Xr ioctl 2
-command returns the current block size used by the
-.Sy CD-ROM
-drive.
-The third argument of the
-.Xr ioctl 2
-call is a pointer to an integer.
-.It Dv CDROMSBLKMODE
-This
-.Xr ioctl 2
-command requests the
-.Sy CD-ROM
-drive to change from the current block size to the requested block size.
-The third argument of the
-.Xr ioctl 2
-call is an integer which contains the requested block size.
-This
-.Xr ioctl 2
-command operates in exclusive-use mode only.
-The caller must ensure that no other processes can operate on the same
-.Sy CD-ROM
-device before issuing this
-.Xr ioctl 2 .
-.Xr read 2
-behavior subsequent to this
-.Xr ioctl 2
-remains the same: the caller is still constrained to read the raw
-device on block boundaries and in block multiples.
-To set the proper block size, the following values are appropriate:
-.Bl -tag -width CDROM_BLK_1024
-.It Dv CDROM_BLK_512
-512 bytes
-.It Dv CDROM_BLK_1024
-1024 bytes
-.It Dv CDROM_BLK_2048
-2048 bytes
-.It Dv CDROM_BLK_2056
-2056 bytes
-.It Dv CDROM_BLK_2336
-2336 bytes
-.It Dv CDROM_BLK_2340
-2340 bytes
-.It Dv CDROM_BLK_2352
-2352 bytes
-.It Dv CDROM_BLK_2368
-2368 bytes
-.It Dv CDROM_BLK_2448
-2448 bytes
-.It Dv CDROM_BLK_2646
-2646 bytes
-.It Dv CDROM_BLK_2647
-2647 bytes
-.El
-.It Dv CDROMGDRVSPEED
-This
-.Xr ioctl 2
-command returns the current
-.Sy CD-ROM
-drive speed.
-The third argument of the
-.Xr ioctl 2
-call is a pointer to an integer.
-.It Dv CDROMSDRVSPEED
-This
-.Xr ioctl 2
-command requests the
-.Sy CD-ROM
-drive to change the current drive speed to the requested drive speed.
-This speed setting is only applicable when reading data areas.
-The third argument of the
-.Xr ioctl 2
-is an integer which contains the requested drive speed.
-To set the
-.Sy CD-ROM
-drive to the proper speed, the following values are appropriate:
-.Bl -tag -width CDROM_MAXIMUM_SPEED
-.It Dv CDROM_NORMAL_SPEED
-150k/second
-.It Dv CDROM_DOUBLE_SPEED
-300k/second
-.It Dv CDROM_QUAD_SPEED
-600k/second
-.It Dv CDROM_MAXIMUM_SPEED
-300k/second (2x drive)
-.Pp
-600k/second (4x drive)
-.El
-.Pp
-Note that these numbers are only accurate when reading 2048 byte blocks.
-The
-.Sy CD-ROM
-drive will automatically switch to normal speed when playing audio
-tracks and will switch back to the speed setting when accessing data.
-.El
-.Sh ARCHITECTURE
-All
-.Sh INTERFACE STABILITY
-Uncommitted
-.Sh SEE ALSO
-.Xr ioctl 2 ,
-.Xr read 2 ,
-.Xr attributes 5
-.Rs
-.%Q N. V. Phillips
-.%Q Sony Corporation
-.%B System Description Compact Disc Digital Audio
-.%O ("Red Book")
-.Re
-.Rs
-.%Q N. V. Phillips
-.%Q Sony Corporation
-.%B System Description of Compact Disc Read Only Memory
-.%O ("Yellow Book")
-.Re
-.Rs
-.%Q N. V. Phillips
-.%Q Microsoft
-.%Q Sony Corporation
-.%B System Description CD-ROM XA
-.%D 1991
-.Re
-.Rs
-.%T Volume and File Structure of CD-ROM for Information Interchange
-.%N ISO 9660:1988(E)
-.Re
-.Rs
-.%T SCSI-2 Standard
-.%N document X3T9.2/86-109
-.Re
-.Rs
-.%T SCSI Multimedia Commands, Version 2 (MMC-2)
-.Re
-.Sh NOTES
-The
-.Dv CDROMCDDA ,
-.Dv CDROMCDXA ,
-.Dv CDROMSUBCODE ,
-.Dv CDROMGDRVSPEED ,
-.Dv CDROMSDRVSPEED ,
-and some of the block sizes in
-.Dv CDROMSBLKMODE
-are designed for new Sun-supported
-.Sy CD-ROM
-drives and might not work on some of the older
-.Sy CD-ROM
-drives.
-.Pp
-.Dv CDROMCDDA ,
-.Dv CDROMCDXA ,
-and
-.Dv CDROMSUBCODE
-will return error if the transfer length exceeds valid limits as determined appropriate.
-Example: for MMC-2 drives, length can not exceed 3 bytes (i\&.e\&. 0xffffff).
-The same restriction is enforced for older, pre-MMC-2 drives, as no limit was
-published for these older drives (and 3 bytes is reasonable for all media).
-Note that enforcing this limit does not imply that values passed in below this
-limit will actually be applicable for each and every piece of media.
-.Pp
-The interface to this device is preliminary and subject to change in future
-releases.
-Programs should be written in a modular fashion so that future
-changes can be easily incorporated.
diff --git a/usr/src/man/man7i/dkio.7i b/usr/src/man/man7i/dkio.7i
deleted file mode 100644
index 4b8c26a592..0000000000
--- a/usr/src/man/man7i/dkio.7i
+++ /dev/null
@@ -1,867 +0,0 @@
-.\"
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.\"
-.\"
-.\" Copyright (c) 2009 Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 2016 Nexenta Systems, Inc.
-.\" Copyright (c) 2017, Joyent, Inc.
-.\"
-.Dd October 23, 2017
-.Dt DKIO 7I
-.Os
-.Sh NAME
-.Nm dkio
-.Nd disk control operations
-.Sh SYNOPSIS
-.In sys/dkio.h
-.In sys/vtoc.h
-.Sh DESCRIPTION
-Disk drivers support a set of
-.Xr ioctl 2
-requests for disk controller, geometry, and partition information.
-Basic to these
-.Xr ioctl 2
-requests are the definitions in
-.In sys/dkio.h .
-.Sh IOCTLS
-The following
-.Xr ioctl 2
-requests set and/or retrieve the current disk
-controller, partitions, or geometry information on all architectures:
-.Bl -tag -width 1n
-.It Dv DKIOCINFO
-.Pp
-The argument is a pointer to a
-.Vt dk_cinfo
-structure (described below).
-This structure tells the controller-type and attributes regarding bad-block
-processing done on the controller.
-.Bd -literal -offset 2n
-/*
- * Structures and definitions for disk I/O control commands
- */
-#define DK_DEVLEN 16 /* device name max length, */
- /* including unit # and NULL */
-
-/* Used for controller info */
-struct dk_cinfo {
- char dki_cname[DK_DEVLEN]; /* controller name */
- /* (no unit #) */
- ushort_t dki_ctype; /* controller type */
- ushort_t dki_flags; /* flags */
- ushort_t dki_cnum; /* controller number */
- uint_t dki_addr; /* controller address */
- uint_t dki_space; /* controller bus type */
- uint_t dki_prio; /* interrupt priority */
- uint_t dki_vec; /* interrupt vector */
- char dki_dname[DK_DEVLEN]; /* drive name (no unit #) */
- uint_t dki_unit; /* unit number */
- uint_t dki_slave; /* slave number */
- ushort_t dki_partition; /* partition number */
- ushort_t dki_maxtransfer; /* maximum transfer size */
- /* in DEV_BSIZE */
- };
-
- /*
- * Controller types
- */
- #define DKC_UNKNOWN 0
- #define DKC_CDROM 1 /* CD-ROM, SCSI or other */
- #define DKC_WDC2880 2
- #define DKC_XXX_0 3 /* unassigned */
- #define DKC_XXX_1 4 /* unassigned */
- #define DKC_DSD5215 5
- #define DKC_ACB4000 7
- #define DKC_XXX_2 9 /* unassigned */
- #define DKC_NCRFLOPPY 10
- #define DKC_SMSFLOPPY 12
- #define DKC_SCSI_CCS 13 /* SCSI CCS compatible */
- #define DKC_INTEL82072 14 /* native floppy chip */
- #define DKC_INTEL82077 19 /* 82077 floppy disk */
- /* controller */
- #define DKC_DIRECT 20 /* Intel direct attached */
- /* device (IDE) */
- #define DKC_PCMCIA_MEM 21 /* PCMCIA memory disk-like */
- /* type */
- #define DKC_PCMCIA_ATA 22 /* PCMCIA AT Attached type */
-
- /*
- * Sun reserves up through 1023
- */
-
- #define DKC_CUSTOMER_BASE 1024
-
- /*
- * Flags
- */
- #define DKI_BAD144 0x01 /* use DEC std 144 */
- /* bad sector fwding */
- #define DKI_MAPTRK 0x02 /* controller does */
- /* track mapping */
- #define DKI_FMTTRK 0x04 /* formats only full
- /* track at a time */
- #define DKI_FMTVOL 0x08 /* formats only full */
- /* volume at a time */
- #define DKI_FMTCYL 0x10 /* formats only full */
- /* cylinders at a time */
- #define DKI_HEXUNIT 0x20 /* unit number printed */
- /* as 3 hexdigits */
- #define DKI_PCMCIA_PFD 0x40 /* PCMCIA pseudo-floppy */
- /* memory card */
-.Ed
-.It Dv DKIOCGAPART
-.Pp
-The argument is a pointer to a
-.Vt dk_allmap
-structure (described below).
-This
-.Xr ioctl 2
-gets the controller's notion of the current partition table
-for disk drive.
-.It Dv DKIOCSAPART
-.Pp
-The argument is a pointer to a
-.Vt dk_allmap
-structure (described below).
-This
-.Xr ioctl 2
-sets the controller's notion of the partition table without
-changing the disk itself.
-.Bd -literal -offset 2n
-/*
- * Partition map (part of dk_label)
- */
-struct dk_map {
- daddr_t dkl_cylno; /* starting cylinder */
- daddr_t dkl_nblk; /* number of blocks */
-};
-
-/*
- * Used for all partitions
- */
-struct dk_allmap {
- struct dk_map dka_map[NDKMAP];
-};
-.Ed
-.It Dv DKIOCGGEOM
-.Pp
-The argument is a pointer to a
-.Vt dk_geom
-structure (described below).
-This
-.Xr ioctl 2
-gets the controller's notion of the current geometry of the disk drive.
-.It Dv DKIOCSGEOM
-.Pp
-The argument is a pointer to a
-.Vt dk_geom
-structure (described below).
-This
-.Xr ioctl 2
-sets the controller's notion of the geometry without changing the disk itself.
-.It Dv DKIOCGVTOC
-.Pp
-The argument is a pointer to a
-.Vt vtoc
-structure (described below).
-This
-.Xr ioctl 2
-returns the device's current volume table of contents (VTOC).
-For disks larger than 1TB,
-.Dv DKIOCGEXTVTOC
-must be used instead.
-.It Dv DKIOCSVTOC
-.Pp
-The argument is a pointer to a
-.Vt vtoc
-structure (described below).
-This
-.Xr ioctl 2
-changes the VTOC associated with the device.
-For disks larger than 1TB,
-.Dv DKIOCSEXTVTOC
-must be used instead.
-.Bd -literal -offset 2n
-struct partition {
- ushort_t p_tag; /* ID tag of partition */
- ushort_t p_flag; /* permission flags */
- daddr_t p_start; /* start sector of partition */
- long p_size; /* # of blocks in partition */
-};
-.Ed
-.Pp
-If
-.Dv DKIOCSVTOC
-is used with a floppy diskette, the
-.Fa p_start
-field must be the first sector of a cylinder.
-To compute the number of sectors per
-cylinder, multiply the number of heads by the number of sectors per track.
-.Bd -literal -offset 2n
-struct vtoc {
- unsigned long v_bootinfo[3]; /* info needed by mboot */
- /* (unsupported) */
- unsigned long v_sanity; /* to verify vtoc */
- /* sanity */
- unsigned long v_version; /* layout version */
- char v_volume[LEN_DKL_VVOL]; /* volume name */
- ushort_t v_sectorsz; /* sector size in bytes */
- ushort_t v_nparts; /* number of partitions */
- unsigned long v_reserved[10]; /* free space */
- struct partition v_part[V_NUMPAR]; /* partition headers */
- time_t timestamp[V_NUMPAR]; /* partition timestamp */
- /* (unsupported) */
- char v_asciilabel[LEN_DKL_ASCII]; /* compatibility */
-};
-
-/*
- * Partition permission flags
- */
-#define V_UNMNT 0x01 /* Unmountable partition */
-#define V_RONLY 0x10 /* Read only */
-
-/*
- * Partition identification tags
- */
-#define V_UNASSIGNED 0x00 /* unassigned partition */
-#define V_BOOT 0x01 /* Boot partition */
-#define V_ROOT 0x02 /* Root filesystem */
-#define V_SWAP 0x03 /* Swap filesystem */
-#define V_USR 0x04 /* Usr filesystem */
-#define V_BACKUP 0x05 /* full disk */
-#define V_VAR 0x07 /* Var partition */
-#define V_HOME 0x08 /* Home partition */
-#define V_ALTSCTR 0x09 /* Alternate sector partition */
-.Ed
-.It Dv DKIOCGEXTVTOC
-.Pp
-The argument is a pointer to an
-.Vt extvtoc
-structure (described below).
-This ioctl returns the device's current volume table of contents (VTOC).
-VTOC is extended to support a disk up to 2TB in size.
-For disks larger than 1TB this ioctl must be used instead of
-.Dv DKIOCGVTOC .
-.It Dv DKIOCSEXTVTOC
-.Pp
-The argument is a pointer to an
-.Vt extvtoc
-structure (described below).
-This ioctl changes the VTOC associated with the device.
-VTOC is extended to support a disk up to 2TB in size.
-For disks larger than 1TB this ioctl must be used instead of
-.Vt DKIOCSVTOC .
-.Bd -literal -offset 2n
-struct extpartition {
- ushort_t p_tag; /* ID tag of partition */
- ushort_t p_flag; /* permission flags */
- ushort_t p_pad[2]; /* reserved */
- diskaddr_t p_start; /* start sector no of partition */
- diskaddr_t p_size; /* # of blocks in partition */
-};
-
-struct extvtoc {
- uint64_t v_bootinfo[3]; /* info needed by mboot (unsupported) */
- uint64_t v_sanity; /* to verify vtoc sanity */
- uint64_t v_version; /* layout version */
- char v_volume[LEN_DKL_VVOL]; /* volume name */
- ushort_t v_sectorsz; /* sector size in bytes */
- ushort_t v_nparts; /* number of partitions */
- ushort_t pad[2];
- uint64_t v_reserved[10];
- struct extpartition v_part[V_NUMPAR]; /* partition headers */
- uint64_t timestamp[V_NUMPAR]; /* partition timestamp */
- /* (unsupported) */
- char v_asciilabel[LEN_DKL_ASCII]; /* for compatibility */
-};
-.Ed
-.Pp
-Partition permissions flags and identification tags
-are defined the same as vtoc structure.
-.It Dv DKIOCEJECT
-.Pp
-If the drive supports removable media, this
-.Xr ioctl 2
-requests the disk drive to eject its disk.
-.It Dv DKIOCREMOVABLE
-.Pp
-The argument to this
-.Xr ioctl 2
-is an integer.
-After successful completion, this
-.Xr ioctl 2
-sets that integer to a non-zero value if the drive in
-question has removable media.
-If the media is not removable, the integer is set to
-.Sy 0 .
-.It Dv DKIOCHOTPLUGGABLE
-.Pp
-The argument to this
-.Xr ioctl 2
-is an integer.
-After successful completion, this
-.Xr ioctl 2
-sets that integer to a non-zero value if the drive in question is hotpluggable.
-If the media is not hotpluggable, the integer is set to 0.
-.It Dv DKIOCSTATE
-.Pp
-This
-.Xr ioctl 2
-blocks until the state of the drive, inserted or ejected, is changed.
-The argument is a pointer to a
-.Vt dkio_state ,
-enum, whose possible enumerations are listed below.
-The initial value should be either the last
-reported state of the drive, or
-.Dv DKIO_NONE .
-Upon return, the enum pointed
-to by the argument is updated with the current state of the drive.
-.Bd -literal -offset 2n
-enum dkio_state {
- DKIO_NONE, /* Return disk's current state */
- DKIO_EJECTED, /* Disk state is 'ejected' */
- DKIO_INSERTED /* Disk state is 'inserted' */
-};
-.Ed
-.It Dv DKIOCLOCK
-.Pp
-For devices with removable media, this
-.Xr ioctl 2
-requests the disk drive to lock the door.
-.It Dv DKIOCUNLOCK
-.Pp
-For devices with removable media, this
-.Xr ioctl 2
-requests the disk drive to unlock the door.
-.It Dv DKIOCGMEDIAINFO
-.Pp
-The argument to this
-.Xr ioctl 2
-is a pointer to a
-.Vt dk_minfo
-structure.
-The structure indicates the type of media or the command set profile used by
-the drive to operate on the media.
-The
-.Vt dk_minfo
-structure also indicates the logical media block size the drive uses as the
-basic unit block size of operation and the raw formatted capacity of the media
-in number of logical blocks.
-.It Dv DKIOCGMEDIAINFOEXT
-.Pp
-The argument to this
-.Xr ioctl 2
-is a pointer to a
-.Vt dk_minfo_ext
-structure.
-The structure indicates the type of media or the command set profile
-used by the drive to operate on the media.
-The
-.Vt dk_minfo_ext
-structure
-also indicates the logical media block size the drive uses as the basic unit
-block size of operation, the raw formatted capacity of the media in number of
-logical blocks and the physical block size of the media.
-.Bd -literal -offset 2n
-/*
- * Used for media info or profile info
- */
-struct dk_minfo {
- uint_t dki_media_type; /* Media type or profile info */
- uint_t dki_lbsize; /* Logical blocksize of media */
- diskaddr_t dki_capacity; /* Capacity as # of dki_lbsize blks */
-};
-
-/*
- * Used for media info or profile info and physical blocksize
- */
-struct dk_minfo_ext {
- uint_t dki_media_type; /* Media type or profile info */
- uint_t dki_lbsize; /* Logical blocksize of media */
- diskaddr_t dki_capacity; /* Capacity as # of dki_lbsize blks */
- uint_t dki_pbsize; /* Physical blocksize of media */
-};
-
-
-/*
- * Media types or profiles known
- */
-#define DK_UNKNOWN 0x00 /* Media inserted - type unknown */
-
-/*
- * SFF 8090 Specification Version 3, media types 0x01 - 0xfffe are
- * retained to maintain compatibility with SFF8090. The following
- * define the optical media type.
- */
-#define DK_MO_ERASABLE 0x03 /* MO Erasable */
-#define DK_MO_WRITEONCE 0x04 /* MO Write once */
-#define DK_AS_MO 0x05 /* AS MO */
-#define DK_CDROM 0x08 /* CDROM */
-#define DK_CDR 0x09 /* CD-R */
-#define DK_CDRW 0x0A /* CD-RW */
-#define DK_DVDROM 0x10 /* DVD-ROM */
-#define DK_DVDR 0x11 /* DVD-R */
-#define DK_DVDRAM 0x12 /* DVD_RAM or DVD-RW */
-
-/*
- * Media types for other rewritable magnetic media
- */
-#define DK_FIXED_DISK 0x10001 /* Fixed disk SCSI or otherwise */
-#define DK_FLOPPY 0x10002 /* Floppy media */
-#define DK_ZIP 0x10003 /* IOMEGA ZIP media */
-#define DK_JAZ 0x10004 /* IOMEGA JAZ media */
-.Ed
-.Pp
-If the media exists and the host can obtain a current profile list, the command
-succeeds and returns the
-.Vt dk_minfo
-structure with data representing that media.
-.Pp
-If there is no media in the drive, the command fails and the host returns an
-.Er ENXIO
-error, indicating that it cannot gather the information requested.
-.Pp
-If the profile list is not available, the host attempts to identify the
-media-type based on the available information.
-.Pp
-If identification is not possible, the host returns media type
-.Dv DK_UNKNOWN .
-See
-.Sx NOTES
-for blocksize usage and capacity information.
-.It Dv DKIOCSMBOOT
-.Pp
-The argument is a pointer to struct
-.Vt mboot .
-.Pp
-Copies the
-.Vt mboot
-information supplied in the argument to the absolute sector 0 of the device.
-Prior to copying the information, this
-.Xr ioctl 2
-performs the following checks on the
-.Vt mboot
-data:
-.Bl -bullet -offset indent
-.It
-Ensures that the signature field is set to 0xAA55.
-.It
-Ensures that partitions do not overlap.
-.It
-On SPARC platforms, determines if the device is a removable media.
-.El
-.Pp
-If the above verification fails,
-.Va errno
-is set to
-.Er EINVAL
-and the
-.Xr ioctl 2
-command fails.
-.Pp
-x86 Platforms \(em Upon successful write of
-.Vt mboot ,
-the partition map structure maintained in the driver is updated.
-If the new Solaris partition is
-different from the previous one, the internal VTOC table maintained in the
-driver is set as follows:
-.Pp
-If
-.Dv _SUNOS_VTOC_8
-is defined:
-.Bd -unfilled -offset 4n
-Partition: 0 Start: 0 Capacity = Capacity of device.
-Partition: 2 Start: 0 Capacity = Capacity of device.
-.Ed
-.Pp
-If
-.Dv _SUNOS_VTOC_16
-is defined:
-.Bd -unfilled -offset 4n
-Partition: 2 Start: 0 Size = Size specified in mboot - 2 cylinders.
-Partition: 8 Start: 0 Size = Sectors/cylinder.
-Partition: 9 Start: Sectors/cylinder Size = 2 * sectors/cylinder
-.Ed
-.Pp
-To determine if the Solaris partition has changed:
-.Bd -offset 4n -ragged
-If either offset or the size of the Solaris partition is different from the
-previous one then it shall be deemed to have changed.
-In all other cases, the
-internal VTOC info remains as before.
-.Ed
-.Pp
-SPARC Platforms \(em The VTOC label and
-.Vt mboot
-both occupy the same location, namely sector 0.
-As a result, following the successful write of
-.Vt mboot
-info, the internal VTOC table maintained in the driver is set as follows:
-.Bd -unfilled -offset 4n
-Partition: 0 Start: 0 Size = Capacity of device.
-Partition: 2 Start: 0 Size = Capacity of device.
-.Ed
-.Pp
-See the
-.Sx NOTES
-section for usage of
-.Dv DKIOCSMBOOT
-when modifying Solaris partitions.
-.It Dv DKIOCGETVOLCAP
-.Pp
-This ioctl provides information and status of available capabilities.
-.Fa vc_info
-is a bitmap and the valid flag values are:
-.Pp
-.Bl -tag -width DKV_ABR_CAP -compact -offset 2n
-.It Dv DKV_ABR_CAP
-Capable of application-based recovery
-.It Dv DKV_DMR_CAP
-Ability to read specific copy of data when multiple copies exist.
-For example, in a two way mirror, this ioctl is used to read each
-side of the mirror.
-.El
-.Pp
-.Fa vc_set
-is a bitmap and the valid flag values are:
-.Pp
-.Bl -tag -width DKV_ABR_CAP -compact -offset 2n
-.It Dv DKV_ABR_CAP
-This flag is set if ABR has been set on a device that supports ABR functionality.
-.It Dv DKV_DMR_CAP
-Directed read has been enabled.
-.El
-.Pp
-These capabilities are not required to be persistent across a system reboot and
-their persistence depends upon the implementation.
-For example, if the ABR
-capability for a DRL mirror simply clears the dirty-region list and
-subsequently stops updating this list, there is no reason for persistence
-because the VM recovery is a no-op.
-Conversely, if the ABR capability is
-applied to a non-DRL mirror to indicate that the VM should not perform a full
-recovery of the mirror following a system crash, the capability must be
-persistent so that the VM know whether or not to perform recovery.
-.Pp
-Return Errors:
-.Pp
-.Bl -tag -width ENOTSUP -compact -offset 2n
-.It Er EINVAL
-Invalid device for this operation.
-.It Er ENOTSUP
-Functionality that is attempted to be set is not supported.
-.El
-.It Dv DKIOCSETVOLCAP
-.Pp
-This ioctl sets the available capabilities for the device.
-If a capability flag
-is not set in
-.Fa vc_set ,
-that capability is cleared.
-.Pp
-.Fa vc_info
-flags are ignored.
-.Pp
-.Fa vc_set
-valid flags are:
-.Pp
-.Bl -tag -width DKV_ABR_CAP -compact -offset 2n
-.It Dv DKV_ABR_CAP
-Flag to set application-based recovery.
-A device can successfully support ABR only if it is capable.
-.It Dv DKV_DMR_CAP
-Flag to set directed read.
-.El
-.It Dv DKIODMR
-.Pp
-.Ft int
-.Fo ioctl
-.Fa int ,
-.\" This could be .Fa as well -- but mandoc doesn't seem to allow both
-.Dv DKIODMR ,
-.Fa "vol_directed_rd *"
-.Fc
-.Pp
-This ioctl allows highly available applications to perform round-robin reads
-from the underlying devices of a replicated device.
-.Pp
-.Bl -tag -width vdr_bytesread -offset 2n -compact
-.It Fa vdr_offset
-Offset at which the read should occur.
-.It Fa vdr_nbytes
-Number of bytes to be read
-.It Fa vdr_bytesread
-Number of bytes successfully read by the kernel.
-.It Fa vdr_data
-Pointer to a user allocated buffer to return the data read
-.It Fa vdr_side
-Side to be read.
-Initialized to
-.Dv DKV_SIDE_INIT
-.It Fa vdr_side_name
-The volume name that has been read.
-.El
-.Pp
-Valid
-.Fa vdr_flags
-are:
-.Pp
-.Bl -tag -width DKV_DMR_NEXT_SIDE -offset 2n -compact
-.It Dv DKV_DMR_NEXT_SIDE
-Set by user
-.It Dv DKV_DMR_DONE
-Return value
-.It Dv DKV_DMR_ERROR
-Return value
-.It Dv DKV_DMR_SUCCESS
-Return value
-.It Dv DKV_DMR_SHORT
-Return value
-.El
-.Pp
-The calling sequence is as follows: The caller sets the
-.Fa vdr_flags
-to
-.Dv DK_DMR_NEXT_SIDE
-and
-.Fa vdr_side
-to
-.Dv DKV_SIDE_INIT
-at the start.
-Subsequent calls should be made without any changes to these values.
-If they are changed the results of the ioctl are indeterminate.
-.Pp
-When
-.Dv DKV_SIDE_INIT
-is set, the call results in the kernel reading from the first side.
-The kernel updates
-.Fa vdr_side
-to indicate the side that was read, and
-.Fa vdr_side_name
-to contain the name of that side.
-.Fa vdr_data
-contains the data that was read.
-Therefore to perform a round-robin read all of
-the valid sides, there is no need for the caller to change the contents of
-.Fa vdr_side .
-.Pp
-Subsequent
-.Xr ioctl 2
-calls result in reads from the next valid side until all valid
-sides have been read.
-On success, the kernel sets
-.Dv DKV_DMR_SUCCESS .
-The following table shows the values of
-.Fa vdr_flags
-that are returned when an error occurs:
-.Bl -column DKV_DMR_SHORT DKV_SIDE_INIT "Bytes requested cannot" -offset 2n
-.It Fa vda_flags Ta Fa vdr_side Ta Notes
-.It Dv DKV_DMR_ERROR Ta Dv DKV_SIDE_INIT Ta \&No valid side to read
-.It Dv DKV_DMR_DONE Ta Not Init side Ta All valid sides read
-.It Dv DKV_DMR_SHORT Ta Any value Ta Bytes requested cannot be read Fa vdr_bytesread No set to bytes actually read
-.El
-Typical code fragment:
-.Bd -literal -offset 2n
-enable->vc_set |= DKV_ABR_SET;
-retval = ioctl(filedes, DKIOSETVOLCAP, enable);
-if (retval != EINVAL || retval != ENOTSUP) {
- if (info->vc_set & DKV_DMR_SET) {
- dr->vdr_flags |= DKV_DMR_NEXT_SIDE;
- dr->vdr_side = DKV_SIDE_INIT;
- dr->vdr_nbytes = 1024;
- dr->vdr_offset = 0xff00;
- do {
- rval = ioctl(fildes, DKIODMR, dr);
- if (rval != EINVAL) {
- /* Process data */
- }
- } while (rval != EINVAL || dr->vdr_flags &
- (DKV_DMR_DONE | DKV_DMR_ERROR | DKV_DMR_SHORT)
- }
-}
-.Ed
-.El
-.Ss "RETURN VALUES"
-Upon successful completion, the value returned is
-.Sy 0 .
-Otherwise,
-.Sy -1
-is returned and
-.Va errno
-is set to indicate the error.
-.Ss "x86 Only"
-The following
-.Xr ioctl 2
-requests set and/or retrieve the current disk
-controller, partitions, or geometry information on the x86 architecture.
-.Bl -tag -width 1n
-.It Dv DKIOCG_PHYGEOM
-.Pp
-The argument is a pointer to a
-.Vt dk_geom
-structure (described below).
-This
-.Xr ioctl 2
-gets the driver's notion of the physical geometry of the disk drive.
-It is functionally identical to the
-.Dv DKIOCGGEOM
-.Xr ioctl 2 .
-.It Dv DKIOCG_VIRTGEOM
-.Pp
-The argument is a pointer to a
-.Vt dk_geom
-structure (described below).
-This
-.Xr ioctl 2
-gets the controller's (and hence the driver's) notion of the
-virtual geometry of the disk drive.
-Virtual geometry is a view of the disk
-geometry maintained by the firmware in a host bus adapter or disk controller.
-If the disk is larger than 8 Gbytes, this ioctl fails because a CHS-based
-geometry is not relevant or useful for this drive.
-.Bd -literal -offset 2n
-/*
- * Definition of a disk's geometry
- */
-struct dk_geom {
- unsigned shor dkg_ncyl; /* # of data cylinders */
- unsigned shor dkg_acyl; /* # of alternate cylinders */
- unsigned short dkg_bcyl; /* cyl offset (for fixed head */
- /* area) */
- unsigned short dkg_nhead; /* # of heads */
- unsigned short dkg_obs1; /* obsolete */
- unsigned short dkg_nsect; /* # of sectors per track */
- unsigned short dkg_intrlv; /* interleave factor */
- unsigned short dkg_obs2; /* obsolete */
- unsigned short dkg_obs3; /* obsolete */
- unsigned short dkg_apc; /* alternates per cylinder */
- /* (SCSI only) */
- unsigned short dkg_rpm; /* revolutions per min */
- unsigned short dkg_pcyl; /* # of physical cylinders */
- unsigned short dkg_write_reinstruct; /* # sectors to skip, */
- /* writes */
- unsigned short dkg_read_reinstruct; /* # sectors to skip ,*/
- /* reads */
- unsigned short dkg_extra[7]; /* for compatible expansion */
-};
-.Ed
-.It Dv DKIOCADDBAD
-.Pp
-This
-.Xr ioctl 2
-forces the driver to re-examine the alternates slice and
-rebuild the internal bad block map accordingly.
-It should be used whenever the
-alternates slice is changed by any method other than the
-.Xr addbadsec 1M
-or
-.Xr format 1M
-utilities.
-.Dv DKIOCADDBAD
-can only be used for software
-remapping on
-.Sy IDE
-drives;
-.Sy SCSI
-drives use hardware remapping of alternate sectors.
-.It Dv DKIOCPARTINFO
-.Pp
-The argument is a pointer to a
-.Vt part_info
-structure (described below).
-This
-.Xr ioctl 2
-gets the driver's notion of the size and extent of the
-partition or slice indicated by the file descriptor argument.
-.Bd -literal -offset 2n
-/*
- * Used by applications to get partition or slice information
- */
-struct part_info {
- daddr_t p_start;
- int p_length;
-};
-.Ed
-.It Dv DKIOCEXTPARTINFO
-.Pp
-The argument is a pointer to an
-.Vt extpart_info
-structure (described below).
-This ioctl gets the driver's notion of the size and extent of the partition or
-slice indicated by the file descriptor argument.
-On disks larger than 1TB, this ioctl must be used instead of
-.Dv DKIOCPARTINFO .
-.Bd -literal -offset 2n
-/*
- * Used by applications to get partition or slice information
- */
-struct extpart_info {
- diskkaddr_t p_start;
- diskaddr_t p_length;
-};
-.Ed
-.It Dv DKIOCSETEXTPART
-.Pp
-This ioctl is used to update the in-memory copy of the logical drive
-information maintained by the driver.
-The ioctl takes no arguments.
-It causes a re-read of the partition information and recreation of minor nodes
-if required.
-Prior to updating the data structures, the ioctl ensures that the partitions do
-not overlap.
-Device nodes are created only for valid partition entries.
-If there is any change in the partition offset, size or ID from the previous
-read, the partition is deemed to have been changed and hence the device nodes
-are recreated.
-Any modification to any of the logical partitions results in the
-recreation of all logical device nodes.
-.El
-.Sh SEE ALSO
-.Xr addbadsec 1M ,
-.Xr fdisk 1M ,
-.Xr format 1M ,
-.Xr ioctl 2 ,
-.Xr cmdk 7D ,
-.Xr sd 7D ,
-.Xr cdio 7I ,
-.Xr fdio 7I ,
-.Xr hdio 7I
-.Sh NOTES
-Blocksize information provided in
-.Dv DKIOCGMEDIAINFO
-is the size (in bytes) of the device's basic unit of operation and can differ
-from the blocksize that the Solaris operating environment exports to the user.
-Capacity information provided in the
-.Dv DKIOCGMEDIAINFO
-are for reference only and you are advised to use the values returned by
-.Dv DKIOCGGEOM
-or other appropriate
-.Xr ioctl 2
-for accessing data using the standard interfaces.
-.Pp
-For x86 only: If the
-.Dv DKIOCSMBOOT
-command is used to modify the Solaris partitions, the VTOC information should
-also be set appropriately to reflect the changes to partition.
-Failure to do so leads to unexpected results when the
-device is closed and reopened fresh at a later time.
-This is because a default VTOC is assumed by driver when a Solaris partition
-is changed.
-The default VTOC persists until the ioctl
-.Dv DKIOCSVTOC
-is called to modify VTOC or the device is closed and reopened.
-At that point, the old valid VTOC is read from
-the disk if it is still available.
diff --git a/usr/src/man/man7i/dsp.7i b/usr/src/man/man7i/dsp.7i
deleted file mode 100644
index 1c0fa9fc07..0000000000
--- a/usr/src/man/man7i/dsp.7i
+++ /dev/null
@@ -1,602 +0,0 @@
-.\" Copyright (c) 2009 Sun Microsystems, Inc. All rights reserved.
-.\" Copyright 2018, Joyent, Inc.
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.Dd July 9, 2018
-.Dt DSP 7I
-.Os
-.Sh NAME
-.Nm dsp
-.Nd generic audio device interface
-.Sh SYNOPSIS
-.In sys/soundcard.h
-.Sh DESCRIPTION
-To record audio input, applications
-.Xr open 2
-the appropriate device and
-read data from it using the
-.Xr read 2
-system call.
-Similarly, sound data is queued to the audio output port by using the
-.Xr write 2
-system call.
-Device configuration is performed using the
-.Xr ioctl 2
-interface.
-.Pp
-Because some systems can contain more than one audio device, application
-writers are encouraged to open the
-.Pa /dev/mixer
-device and determine the
-physical devices present on the system using the
-.Dv SNDCTL_SYSINFO
-and
-.Dv SNDCTL_AUDIOINFO
-ioctls.
-See
-.Xr mixer 7I .
-The user should be provided
-wth the ability to select a different audio device, or alternatively, an
-environment variable such as
-.Ev AUDIODSP
-can be used.
-In the absence of any
-specific configuration from the user, the generic device file,
-.Pa /dev/dsp ,
-can be used.
-This normally points to a reasonably appropriate default audio
-device for the system.
-.Ss "Opening the Audio Device"
-The audio device is not treated as an exclusive resource.
-.Pp
-Each
-.Xr open 2
-completes as long as there are channels available to be allocated.
-If no channels are available to be allocated, the call returns
-.Sy -1
-with the
-.Va errno
-set to
-.Er EBUSY .
-.Pp
-Audio applications should explicitly set the encoding characteristics to match
-the audio data requirements after opening the device, and not depend on any
-default configuration.
-.Ss "Recording Audio Data"
-The
-.Xr read 2
-system call copies data from the system's buffers to the application.
-Ordinarily,
-.Xr read 2
-blocks until the user buffer is filled.
-The
-.Xr poll 2
-system call can be used to determine the presence of data
-that can be read without blocking.
-The device can alternatively be set to a
-non-blocking mode, in which case
-.Xr read 2
-completes immediately, but can return fewer bytes than requested.
-Refer to the
-.Xr read 2
-manual page for a complete description of this behavior.
-.Pp
-When the audio device is opened with read access, the device driver allocates
-resources for recording.
-Since this consumes system resources, processes that
-do not record audio data should open the device write-only
-.Pq Dv O_WRONLY .
-.Pp
-The recording process can be stopped by using the
-.Dv SNDCTL_DSP_HALT_INPUT
-ioctl, which also discards all pending record data in underlying device FIFOs.
-.Pp
-Before changing record parameters, the input should be stopped using the
-.Dv SNDCTL_DSP_HALT_INPUT
-ioctl, which also flushes the any underlying device input FIFOs.
-(This is not necessary if the process never started recording by calling
-.Xr read 2 .
-Otherwise, subsequent reads can return samples in the
-old format followed by samples in the new format.
-This is particularly
-important when new parameters result in a changed sample size.
-.Pp
-Input data can accumulate in device buffers very quickly.
-At a minimum, it accumulates at 8000 bytes per second for 8-bit, 8 KHz, mono,
-.Sy \(*m-Law
-data.
-If the device is configured for more channels, higher sample resolution, or
-higher sample rates, it accumulates even faster.
-If the application that consumes the data cannot keep up with this data rate,
-the underlying FIFOs can become full.
-When this occurs, any new incoming data is lost until the
-application makes room available by consuming data.
-Additionally, a record overrun is noted, which can be retrieved using the
-.Dv SNDCTL_DSP_GETERROR
-ioctl.
-.Pp
-Record volume for a stream can be adjusted by issuing the
-.Dv SNDCTL_DSP_SETRECVOL
-ioctl.
-The volume can also be retrieved using the
-.Dv SNDCTL_DSP_GETRECVOL .
-.Ss "Playing Audio Data"
-The
-.Xr write 1
-system call copies data from an application's buffer to the device output FIFO.
-Ordinarily,
-.Xr write 2
-blocks until the entire user
-buffer is transferred.
-The device can alternatively be set to a non-blocking
-mode, in which case
-.Xr write 2
-completes immediately, but might have
-transferred fewer bytes than requested.
-See
-.Xr write 2 .
-.Pp
-Although
-.Xr write 2
-returns when the data is successfully queued, the actual
-completion of audio output might take considerably longer.
-The
-.Dv SNDCTL_DSP_SYNC
-ioctl can be issued to allow an application to block
-until all of the queued output data has been played.
-.Pp
-The final
-.Xr close 2
-of the file descriptor waits until all of the audio output has drained.
-If a signal interrupts the
-.Xr close 2 ,
-or if the process
-exits without closing the device, any remaining data queued for audio output is
-flushed and the device is closed immediately.
-.Pp
-The output of playback data can be halted entirely, by calling the
-.Dv SNDCTL_DSP_HALT_OUTPUT
-ioctl.
-This also discards any data that is queued for playback in device FIFOs.
-.Pp
-Before changing playback parameters, the output should be drained using the
-.Dv SNDCTL_DSP_SYNC
-ioctl, and then stopped using the
-.Dv SNDCTL_DSP_HALT_OUTPUT
-ioctl, which also flushes the any underlying device output FIFOs.
-This is not necessary if the process never started playback, such as by calling
-.Xr write 2 .
-This is particularly important
-when new parameters result in a changed sample size.
-.Pp
-Output data is played from the playback buffers at a default rate of at least
-8000 bytes per second for \(*m-Law, A-Law or 8-bit PCM data (faster for 16-bit
-linear data or higher sampling rates).
-If the output FIFO becomes empty, the
-framework plays silence, resulting in audible stall or click in the output,
-until more data is supplied by the application.
-The condition is also noted as
-a play underrun, which can be determined using the
-.Dv SNDCTL_DSP_GETERROR
-ioctl.
-.Pp
-Playback volume for a stream can be adjusted by issuing the
-.Dv SNDCTL_DSP_SETPLAYVOL
-ioctl.
-The volume can also be retrieved using the
-.Dv SNDCTL_DSP_GETPLAYVOL .
-.Ss "Asynchronous I/O"
-The
-.Dv O_NONBLOCK
-flag can be set using the
-.Dv F_SETFL
-.Xr fcntl 2
-to enable non-blocking
-.Xr read 2
-and
-.Xr write 2
-requests.
-This is normally
-sufficient for applications to maintain an audio stream in the background.
-.Pp
-It is also possible to determine the amount of data that can be transferred for
-playback or recording without blocking using the
-.Dv SNDCTL_DSP_GETOSPACE
-or
-.Dv SNDCTL_DSP_GETISPACE
-ioctls, respectively.
-.Ss "Mixer Pseudo-Device"
-The
-.Pa /dev/mixer
-provides access to global hardware settings such as master volume settings, etc.
-It is also the interface used for determining the
-hardware configuration on the system.
-.Pp
-Applications should
-.Xr open 2
-.Pa /dev/mixer ,
-and use the
-.Dv SNDCTL_SYSINFO
-and
-.Dv SNDCTL_AUDIOINFO
-ioctls to determine the device node names of audio devices on the system.
-See
-.Xr mixer 7I
-for additional details.
-.Sh IOCTLS
-.Ss "Information IOCTLs"
-The following ioctls are supported on the audio device, as well as the mixer
-device.
-See
-.Xr mixer 7I
-for details.
-.Bd -literal -offset 2n
-.Dv OSS_GETVERSION
-.Dv SNDCTL_SYSINFO
-.Dv SNDCTL_AUDIOINFO
-.Dv SNDCTL_MIXERINFO
-.Dv SNDCTL_CARDINFO
-.Ed
-.Ss "Audio IOCTLs"
-The
-.Nm
-device supports the following ioctl commands:
-.Pp
-.\" A compact list is used so that items with multiple tags don't have
-.\" vertical whitespace. However that means explicit .Pp statements must
-.\" be added.
-.Bl -tag -width "SNDCTL_DSP_CURRENT_IPTR" -compact
-.It Dv SNDCTL_DSP_SYNC
-The argument is ignored.
-This command suspends the calling process until the
-output FIFOs are empty and all queued samples have been played, or until a
-signal is delivered to the calling process.
-An implicit
-.Dv SNDCTL_DSP_SYNC
-is performed on the final
-.Xr close 2
-of the
-.Nm
-device.
-.Pp
-This ioctl should not be used unnecessarily, as if it is used in the middle of
-playback it causes a small click or pause, as the FIFOs are drained.
-The correct use of this ioctl is just before changing sample formats.
-.Pp
-.It Dv SNDCTL_DSP_HALT
-.It Dv SNDCTL_DSP_HALT_INPUT
-.It Dv SNDCTL_DSP_HALT_OUTPUT
-The argument is ignored.
-All input or output (or both) associated with the file
-is halted, and any pending data is discarded.
-.Pp
-.It Dv SNDCTL_DSP_SPEED
-The argument is a pointer to an integer, indicating the sample rate (in Hz) to
-be used.
-The rate applies to both input and output for the file descriptor.
-On return the actual rate, which can differ from that requested, is stored in
-the integer pointed to by the argument.
-To query the configured speed without
-changing it the value 0 can be used by the application.
-.Pp
-.It Dv SNDCTL_DSP_GETFMTS
-The argument is a pointer to an integer, which receives a bit mask of encodings
-supported by the device.
-Possible values are:
-.Pp
-.Bl -tag -width "AFMT_S24_PACKED" -compact -offset 2n
-.It Dv AFMT_MU_LAW
-8-bit unsigned \(*m-Law
-.It Dv AFMT_A_LAW
-8-bit unsigned a-Law
-.It Dv AFMT_U8
-8-bit unsigned linear PCM
-.It Dv AFMT_S16_LE
-16-bit signed little-endian linear PCM
-.It Dv AFMT_S16_BE
-16-bit signed big-endian linear PCM
-.It Dv AFMT_S16_NE
-16-bit signed native-endian linear PCM
-.It Dv AFMT_U16_LE
-16-bit unsigned little-endian linear PCM
-.It Dv AFMT_U16_BE
-16-bit unsigned big-endian linear PCM
-.It Dv AFMT_U16_NE
-16-bit unsigned native-endian linear PCM
-.It Dv AFMT_S24_LE
-24-bit signed little-endian linear PCM, 32-bit aligned
-.It Dv AFMT_S24_BE
-24-bit signed big-endian linear PCM, 32-bit aligned
-.It Dv AFMT_S24_NE
-24-bit signed native-endian linear PCM, 32-bit aligned
-.It Dv AFMT_S32_LE
-32-bit signed little-endian linear PCM
-.It Dv AFMT_S32_BE
-32-bit signed big-endian linear PCM
-.It Dv AFMT_S32_NE
-32-bit signed native-endian linear PCM
-.It Dv AFMT_S24_PACKED
-24-bit signed little-endian packed linear PCM
-.El
-.Pp
-Not all devices support all of these encodings.
-This implementation uses
-.Dv AFMT_S24_LE
-or
-.Dv AFMT_S24_BE ,
-whichever is native, internally.
-.Pp
-.It Dv SNDCTL_DSP_SETFMT
-The argument is a pointer to an integer, which indicates the encoding to be
-used.
-The same values as for
-.Dv SNDCTL_DSP_GETFMT
-can be used, but the caller can only specify a single option.
-The encoding is used for both input
-and output performed on the file descriptor.
-.Pp
-.It Dv SNDCTL_DSP_CHANNELS
-The argument is a pointer to an integer, indicating the number of channels to
-be used (1 for mono, 2 for stereo, etc.)
-The value applies to both input and output for the file descriptor.
-On return the actual channel configuration (which can differ from that
-requested) is stored in the integer pointed to by the argument.
-To query the configured channels without changing it the value 0
-can be used by the application.
-.Pp
-.It Dv SNDDCTL_DSP_GETCAPS
-The argument is a pointer to an integer bit mask, which indicates the
-capabilities of the device.
-The bits returned can include:
-.Pp
-.Bl -tag -width "PCM_CAP_DUPLEX" -compact -offset 2n
-.It Dv PCM_CAP_OUTPUT
-Device supports playback
-.It Dv PCM_CAP_INPUT
-Device supports recording
-.It Dv PCM_CAP_DUPLEX
-Device supports simultaneous playback and recording
-.El
-.Pp
-.It Dv SNDCTL_DSP_GETPLAYVOL
-.It Dv SNDCTL_DSP_GETRECVOL
-The argument is a pointer to an integer to receive the volume level for either
-playback or record.
-The value is encoded as a stereo value with the values for
-two channels in the least significant two bytes.
-The value for each channel thus has a range of 0-100.
-In this implementation, only the low order byte is
-used, as the value is treated as a monophonic value, but a stereo value (with
-both channel levels being identical) is returned for compatibility.
-.Pp
-.It Dv SNDCTL_DSP_SETPLAYVOL
-.It Dv SNDCTL_DSP_SETRECVOL
-The argument is a pointer to an integer indicating volume level for either
-playback or record.
-The value is encoded as a stereo value with the values for
-two channels in the least significant two bytes.
-The value for each channel has a range of 0-100.
-Note that in this implementation, only the low order byte is
-used, as the value is treated as a monophonic value.
-Portable applications should assign the same value to both bytes.
-.Pp
-.It Dv SNDCTL_DSP_GETISPACE
-.It Dv SNDCTL_DSP_GETOSPACE
-The argument is a pointer to a
-.Vt struct audio_buf_info ,
-which has the following structure:
-.Bd -literal -offset 2n
-typedef struct audio_buf_info {
- int fragments; /* # of available fragments */
- int fragstotal;
- /* Total # of fragments allocated */
- int fragsize;
- /* Size of a fragment in bytes */
- int bytes;
- /* Available space in bytes */
- /*
- * Note! 'bytes' could be more than
- * fragments*fragsize
- */
-} audio_buf_info;
-.Ed
-.Pp
-The fields
-.Fa fragments ,
-.Fa fragstotal ,
-and
-.Fa fragsize
-are intended for use with compatible applications (and in the future with
-.Xr mmap 2 )
-only, and need not be used by typical applications.
-On successful return the bytes member
-contains the number of bytes that can be transferred without blocking.
-.Pp
-.It Dv SNDCTL_DSP_CURRENT_IPTR
-.It Dv SNDCTL_DSP_CURRENT_OPTR
-The argument is a pointer to an
-.Vt oss_count_t ,
-which has the following definition:
-.Bd -literal -offset 2n
-typedef struct {
- long long samples;
- /* Total # of samples */
- int fifo_samples;
- /* Samples in device FIFO */
- int filler[32]; /* For future use */
-} oss_count_t;
-.Ed
-.Pp
-The
-.Fa samples
-field contains the total number of samples transferred by the
-device so far.
-The
-.Fa fifo_samples
-is the depth of any hardware FIFO.
-This structure can be useful for accurate stream positioning and latency
-calculations.
-.Pp
-.It Dv SNDCTL_DSP_GETIPTR
-.It Dv SNDCTL_DSP_GETOPTR
-The argument is a pointer to a
-.Vt struct count_info ,
-which has the following definition:
-.Bd -literal -offset 2n
-typedef struct count_info {
- unsigned int bytes;
- /* Total # of bytes processed */
- int blocks;
- /*
- * # of fragment transitions since
- * last time
- */
- int ptr; /* Current DMA pointer value */
-} count_info;
-.Ed
-.Pp
-These ioctls are primarily supplied for compatibility, and should not be used
-by most applications.
-.Pp
-.It Dv SNDCTL_DSP_GETODELAY
-The argument is a pointer to an integer.
-On return, the integer contains the
-number of bytes still to be played before the next byte written are played.
-This can be used for accurate determination of device latency.
-The result can differ from actual value by up the depth of the internal device
-FIFO, which is typically 64 bytes.
-.Pp
-.It Dv SNDCTL_DSP_GETERROR
-The argument is a pointer to a
-.Vt struct audio_errinfo ,
-defined as follows:
-.Bd -literal -offset 2n
-typedef struct audio_errinfo {
- int play_underruns;
- int rec_overruns;
- unsigned int play_ptradjust;
- unsigned int rec_ptradjust;
- int play_errorcount;
- int rec_errorcount;
- int play_lasterror;
- int rec_lasterror;
- int play_errorparm;
- int rec_errorparm;
- int filler[16];
-} audio_errinfo;
-.Ed
-.Pp
-For this implementation, only the
-.Fa play_underruns
-and
-.Fa rec_overruns
-values are significant.
-No other fields are used in this implementation.
-.Pp
-These fields are reset to zero each time their value is retrieved using this
-ioctl.
-.El
-.Ss "Compatibility IOCTLS"
-These ioctls are supplied exclusively for compatibility with existing
-applications.
-Their use is not recommended, and they are not documented here.
-Many of these are implemented as simple no-ops.
-.Pp
-.Bl -tag -width "Dv" -offset 2n -compact
-.It Dv SNDCTL_DSP_POST
-.It Dv SNDCTL_DSP_STEREO
-.It Dv SNDCTL_DSP_SETDUPLEX
-.It Dv SNDCTL_DSP_LOW_WATER
-.It Dv SNDCTL_DSP_PROFILE
-.It Dv SNDCTL_DSP_GETBLKSIZE
-.It Dv SNDCTL_DSP_SUBDIVIDE
-.It Dv SNDCTL_DSP_SETFRAGMENT
-.It Dv SNDCTL_DSP_COOKEDMODE
-.It Dv SNDCTL_DSP_READCTL
-.It Dv SNDCTL_DSP_WRITECTL
-.It Dv SNDCTL_DSP_SILENCE
-.It Dv SNDCTL_DSP_SKIP
-.It Dv SNDCTL_DSP_POST
-.It Dv SNDCTL_DSP_GET_RECSRC
-.It Dv SNDCTL_DSP_SET_RECSRC
-.It Dv SNDCTL_DSP_SET_RECSRC_NAMES
-.It Dv SNDCTL_DSP_GET_PLAYTGT
-.It Dv SNDCTL_DSP_SET_PLAYTGT
-.It Dv SNDCTL_DSP_SET_PLAYTGT_NAMES
-.It Dv SNDCTL_DSP_GETTRIGGER
-.It Dv SNDCTL_DSP_SETTRIGGER
-.It Dv SNDCTL_AUDIOINFO_EX
-.It Dv SNDCTL_ENGINEINFO
-.El
-.Sh FILES
-The physical audio device names are system dependent and are rarely used by
-programmers.
-Programmers should use the generic device names listed below.
-.Bl -tag -width "/usr/share/audio/samples"
-.It Pa /dev/dsp
-Symbolic link to the system's primary audio device
-.It Pa /dev/mixer
-Symbolic link to the pseudo mixer device for the system
-.It Pa /dev/sndstat
-Symbolic link to the pseudo mixer device for the system
-.It Pa /usr/share/audio/samples
-Audio files
-.El
-.Sh ERRORS
-An
-.Xr open 2
-call fails if:
-.Bl -tag -width "EINVAL"
-.It Er EBUSY
-The requested play or record access is busy and either the
-.Dv O_NDELAY
-or
-.Dv O_NONBLOCK
-flag was set in the
-.Xr open 2
-request.
-.It Er EINTR
-The requested play or record access is busy and a signal interrupted the
-.Xr open 2
-request.
-.It Er EINVAL
-The device cannot support the requested play or record access.
-.El
-.Pp
-An
-.Xr ioctl 2
-call fails if:
-.Bl -tag -width "EINVAL"
-.It Er EINVAL
-The parameter changes requested in the ioctl are invalid or are not supported
-by the device.
-.El
-.Sh ARCHITECTURE
-SPARC
-X86
-.Sh INTERFACE STABILITY
-Uncommitted
-.Sh SEE ALSO
-.Xr close 2 ,
-.Xr fcntl 2 ,
-.Xr ioctl 2 ,
-.Xr mmap 2 ,
-.Xr open 2 ,
-.Xr poll 2 ,
-.Xr read 2 ,
-.Xr write 2 ,
-.Xr attributes 5 ,
-.Xr audio 7D ,
-.Xr mixer 7I
diff --git a/usr/src/man/man7i/fbio.7i b/usr/src/man/man7i/fbio.7i
deleted file mode 100644
index 484e60ebec..0000000000
--- a/usr/src/man/man7i/fbio.7i
+++ /dev/null
@@ -1,160 +0,0 @@
-.\" Copyright (c) 2003, Sun Microsystems, Inc.
-.\" Copyright (c) 2017, Joyent, Inc.
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the fields
-.\" enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.Dd October 22, 2017
-.Dt FBIO 7I
-.Os
-.Sh NAME
-.Nm fbio
-.Nd frame buffer control operations
-.Sh DESCRIPTION
-The frame buffers provided with this release support the same general interface
-that is defined by
-.In sys/fbio.h .
-Each responds to an
-.Dv FBIOGTYPE
-.Xr ioctl 2
-request which returns information in a
-.Vt fbtype
-structure.
-.Pp
-Each device has an
-.\" FBTYPE isn't macro, enum, or type, just used to describe a number of
-.\" CPP-macros of the form #define FBTYPE_xxxx
-.Sy FBTYPE
-which is used by higher-level software to
-determine how to perform graphics functions.
-Each device is used by opening it, doing an
-.Dv FBIOGTYPE
-.Xr ioctl 2
-to see which frame buffer type is
-present, and thereby selecting the appropriate device-management routines.
-.Pp
-.Dv FBIOGINFO
-returns information specific to the GS accelerator.
-.Pp
-.Dv FBIOSVIDEO
-and
-.Dv FBIOGVIDEO
-are general-purpose
-.Xr ioctl 2
-requests for controlling possible video features of frame buffers.
-These
-.Xr ioctl 2
-requests either set or return the value of a flags integer.
-At this point, only the
-.Dv FBVIDEO_ON
-option is available, controlled by
-.Dv FBIOSVIDEO .
-.Dv FBIOGVIDEO
-returns the current video state.
-.Pp
-The
-.Dv FBIOSATTR
-and
-.Dv FBIOGATTR
-.Xr ioctl 2
-requests allow access to special features of newer frame buffers.
-They use the
-.Vt fbsattr
-and
-.Vt fbgattr
-structures.
-.Pp
-Some color frame buffers support the
-.Dv FBIOPUTCMAP
-and
-.Dv FBIOGETCMAP
-.Xr ioctl 2
-requests, which provide access to the colormap.
-They use the
-.Vt fbcmap
-structure.
-.Pp
-Also, some framebuffers with multiple colormaps will either encode the colormap
-identifier in the high-order bits of the
-.Dq index
-field in the
-.Vt fbcmap
-structure, or use the
-.Dv FBIOPUTCMAPI
-and
-.Dv FBIOGETCMAPI
-.Xr ioctl 2
-requests.
-.Pp
-.Dv FBIOVERTICAL
-is used to wait for the start of the next vertical retrace
-period.
-.Pp
-.Dv FBIOVRTOFFSET
-Returns the offset to a read-only
-.Dq Em vertical retrace page
-for those framebuffers that support it.
-This vertical retrace page may be mapped into user space with
-.Xr mmap 2 .
-The first word of the vertical
-retrace page (type
-.Vt "unsigned int" )
-is a counter that is incremented every time there is a vertical retrace.
-The user process can use this counter in a variety of ways.
-.Pp
-.Dv FBIOMONINFO
-returns a
-.Vt mon_info
-structure which contains information about
-the monitor attached to the framebuffer, if available.
-.Pp
-.Dv FBIOSCURSOR ,
-.Dv FBIOGCURSOR ,
-.Dv FBIOSCURPOS
-and
-.Dv FBIOGCURPOS
-are used to control the hardware cursor for those framebuffers that have this
-feature.
-.Dv FBIOGCURMAX
-returns the maximum sized cursor supported by the framebuffer.
-Attempts to create a cursor larger than this will fail.
-.Pp
-Finally
-.Dv FBIOSDEVINFO
-and
-.Dv FBIOGDEVINFO
-are used to transfer
-variable-length, device-specific information into and out of framebuffers.
-.Sh SEE ALSO
-.Xr ioctl 2 ,
-.Xr mmap 2 ,
-.Xr cgsix 7D
-.Sh BUGS
-The
-.Dv FBIOSATTR
-and
-.Dv FBIOGATTR
-.Xr ioctl 2
-requests are only
-supported by frame buffers which emulate older frame buffer types.
-If a frame buffer emulates another frame buffer,
-.Dv FBIOGTYPE
-returns the emulated type.
-To get the real type, use
-.Dv FBIOGATTR .
-.Pp
-The
-.Dv FBIOGCURPOS
-ioctl was incorrectly defined in previous operating
-systems, and older code running in binary compatibility mode may get incorrect
-results.
diff --git a/usr/src/man/man7i/fdio.7i b/usr/src/man/man7i/fdio.7i
deleted file mode 100644
index a95f84dfaa..0000000000
--- a/usr/src/man/man7i/fdio.7i
+++ /dev/null
@@ -1,277 +0,0 @@
-.\" Copyright (c) 2001, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright (c) 2017, Joyent, Inc.
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.Dd October 22, 2017
-.Dt FDIO 7I
-.Os
-.Sh NAME
-.Nm fdio
-.Nd floppy disk control operations
-.Sh SYNOPSIS
-.In sys/fdio.h
-.Sh DESCRIPTION
-The Solaris floppy driver supports a set of
-.Xr ioctl 2
-requests for getting and setting the floppy drive characteristics.
-Basic to these
-.Xr ioctl 2
-requests are the definitions in
-.In sys/fdio.h .
-.Sh IOCTLS
-The following
-.Xr ioctl 2
-requests are available on the Solaris floppy driver.
-.Bl -tag -width FDDEFGEOCHAR
-.It Dv FDDEFGEOCHAR
-x86 based systems: This
-.Xr ioctl 2
-forces the floppy driver to restore
-the diskette and drive characteristics and geometry, and partition information
-to default values based on the device configuration.
-.It Dv FDGETCHANGE
-The argument is a pointer to an
-.Vt int .
-This
-.Xr ioctl 2
-returns the status of the diskette-changed signal from the floppy interface.
-The following defines are provided for cohesion.
-.El
-.Pp
-Note: For x86 based systems, use
-.Dv FDGC_DETECTED
-(which is available only on x86 based systems) instead of
-.Dv FDGC_HISTORY .
-.Bd -literal -offset 2n
-/*
- * Used by FDGETCHANGE, returned state of the sense disk change bit.
- */
-#define FDGC_HISTORY 0x01 /*
- * disk has changed since insertion or
- * last FDGETCHANGE call
- */
-#define FDGC_CURRENT 0x02 /*
- * if set, indicates drive has floppy,
- * otherwise, drive is empty
- */
-#define FDGC_CURWPROT 0x10 /* current state of write protect */
-#define FDGC_DETECTED 0x20 /* previous state of DISK CHANGE */
-.Ed
-.Bl -tag -width FDIOGCHAR
-.It Dv FDIOGCHAR
-The argument is a pointer to an
-.Vt fd_char
-structure (described below).
-This
-.Xr ioctl 2
-gets the characteristics of the floppy diskette from the floppy controller.
-.It Dv FDIOSCHAR
-The argument is a pointer to an
-.Vt fd_char
-structure (described below).
-This
-.Xr ioctl 2
-sets the characteristics of the floppy diskette for the floppy controller.
-Typical values in the
-.Vt fd_char
-structure for a high density diskette:
-.Bl -column fdc_stransfer_rate value "{ This field doesn't apply. }"
-.It Field Ta Value Ta
-.It fdc_medium Ta 0 Ta
-.It fdc_transfer_rate Ta 500 Ta
-.It fdc_ncyl Ta 80 Ta
-.It fdc_nhead Ta 2 Ta
-.It fdc_sec_size Ta 512 Ta
-.It fdc_secptrack Ta 18 Ta
-.It fdc_steps Ta -1 Ta { This field doesn't apply. }
-.El
-.El
-.Bd -literal -offset 2n
-/*
- * Floppy characteristics
- */
-struct fd_char {
- uchar_t fdc_medium; /* equals 1 if floppy is medium density format */
- int fdc_transfer_rate; /* transfer rate */
- int fdc_ncyl; /* number of cylinders */
- int fdc_nhead; /* number of heads */
- int fdc_sec_size; /* sector size */
- int fdc_secptrack; /* sectors per track */
- int fdc_steps; /* no. of steps per data track */
-};
-.Ed
-.Bl -tag -width FDGETDRIVECHAR
-.It Dv FDGETDRIVECHAR
-The argument to this
-.Xr ioctl 2
-is a pointer to an
-.Vt fd_drive
-structure (described below).
-This
-.Xr ioctl 2
-gets the characteristics of the floppy drive from the floppy controller.
-.It Dv FDSETDRIVECHAR
-x86 based systems: The argument to this
-.Xr ioctl 2
-is a pointer to an
-.Vt fd_drive
-structure (described below).
-This
-.Xr ioctl 2
-sets the characteristics of the floppy drive for the floppy controller.
-Only
-.Fa fdd_steprate ,
-.Fa fdd_headsettle ,
-.Fa fdd_motoron ,
-and
-.Fa fdd_motoroff
-are actually used by the floppy disk driver.
-.El
-.Bd -literal -offset 2n
-/*
- * Floppy Drive characteristics
- */
-struct fd_drive {
- int fdd_ejectable; /* does the drive support eject? */
- int fdd_maxsearch; /* size of per-unit search table */
- int fdd_writeprecomp; /* cyl to start write precompensation */
- int fdd_writereduce; /* cyl to start recucing write current */
- int fdd_stepwidth; /* width of step pulse in 1 us units */
- int fdd_steprate; /* step rate in 100 us units */
- int fdd_headsettle; /* delay, in 100 us units */
- int fdd_headload; /* delay, in 100 us units */
- int fdd_headunload; /* delay, in 100 us units */
- int fdd_motoron; /* delay, in 100 ms units */
- int fdd_motoroff; /* delay, in 100 ms units */
- int fdd_precomplevel; /* bit shift, in nano-secs */
- int fdd_pins; /* defines meaning of pin 1, 2, 4 and 34 */
- int fdd_flags; /* TRUE READY, Starting Sector #, & Motor On */
-};
-.Ed
-.Bl -tag -width FDGETSEARCH
-.It Dv FDGETSEARCH
-Not available.
-.It Dv FDSETSEARCH
-Not available.
-.It Dv FDEJECT
-SPARC: This
-.Xr ioctl 2
-requests the floppy drive to eject the diskette.
-.It Dv FDIOCMD
-The argument is a pointer to an
-.Vt fd_cmd
-structure (described below).
-This
-.Xr ioctl 2
-allows access to the floppy diskette using the floppy device driver.
-Only the
-.Dv FDCMD_WRITE ,
-.Dv FDCMD_READ ,
-and
-.Dv FDCMD_FORMAT_TRACK
-commands are currently available.
-.El
-.Bd -literal -offset 2n
-struct fd_cmd {
- ushort_t fdc_cmd; /* command to be executed */
- int fdc_flags; /* execution flags (x86 only) */
- daddr_t fdc_blkno; /* disk address for command */
- int fdc_secnt; /* sector count for command */
- caddr_t fdc_bufaddr; /* user's buffer address */
- uint_t fdc_buflen; /* size of user's buffer */
-};
-.Ed
-.Pp
-Please note that the
-.Fa fdc_buflen
-field is currently unused.
-The
-.Fa fdc_secnt
-field is used to calculate the transfer size, and the buffer is
-assumed to be large enough to accommodate the transfer.
-.Bd -literal -offset 2n
-/*
- * Floppy commands
- */
-#define FDCMD_WRITE 1
-#define FDCMD_READ 2
-#define FDCMD_SEEK 3
-#define FDCMD_REZERO 4
-#define FDCMD_FORMAT_UNIT 5
-#define FDCMD_FORMAT_TRACK 6
-.Ed
-.Bl -tag -width FDRAW
-.It Dv FDRAW
-The argument is a pointer to an
-.Vt fd_raw
-structure (described below).
-This
-.Xr ioctl 2
-allows direct control of the floppy drive using the floppy controller.
-Refer to the appropriate floppy-controller data sheet for full
-details on required command bytes and returned result bytes.
-The following commands are supported.
-.El
-.Bd -literal -offset 2n
-/*
- * Floppy raw commands
- */
-#define FDRAW_SPECIFY 0x03
-#define FDRAW_READID 0x0a (x86 only)
-#define FDRAW_SENSE_DRV 0x04
-#define FDRAW_REZERO 0x07
-#define FDRAW_SEEK 0x0f
-#define FDRAW_SENSE_INT 0x08 (x86 only)
-#define FDRAW_FORMAT 0x0d
-#define FDRAW_READTRACK 0x02
-#define FDRAW_WRCMD 0x05
-#define FDRAW_RDCMD 0x06
-#define FDRAW_WRITEDEL 0x09
-#define FDRAW_READDEL 0x0c
-.Ed
-.Pp
-Please note that when using
-.Dv FDRAW_SEEK
-or
-.Dv FDRAW_REZERO ,
-the driver automatically issues a
-.Dv FDRAW_SENSE_INT
-command to clear the interrupt from the
-.Dv FDRAW_SEEK
-or the
-.Dv FDRAW_REZERO .
-The result bytes returned by these commands are the results from the
-.Dv DRAW_SENSE_INT
-command.
-Please see the floppy-controller data sheet for
-more details on
-.Dv FDRAW_SENSE_INT .
-.Bd -literal -offset 2n
-/*
- * Used by FDRAW
- */
-struct fd_raw {
- char fdr_cmd[10]; /* user-supplied command bytes */
- short fdr_cnum; /* number of command bytes */
- char fdr_result[10]; /* controller-supplied result bytes */
- ushort_t fdr_nbytes; /* number to transfer if read/write command */
- char *fdr_addr; /* where to transfer if read/write command */
-};
-.Ed
-.Sh SEE ALSO
-.Xr ioctl 2 ,
-.Xr fd 7D ,
-.Xr dkio 7I ,
-.Xr hdio 7I
diff --git a/usr/src/man/man7i/hdio.7i b/usr/src/man/man7i/hdio.7i
deleted file mode 100644
index 2e4460f66c..0000000000
--- a/usr/src/man/man7i/hdio.7i
+++ /dev/null
@@ -1,112 +0,0 @@
-.\" Copyright (c) 2002, Sun Microsystems, Inc.
-.\" Copyright (c) 2017, Joyent, Inc.
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.Dd October 23, 2017
-.Dt HDIO 7I
-.Os
-.Sh NAME
-.Nm hdio
-.Nd SMD and IPI disk control operations
-.Sh SYNOPSIS
-.In sys/hdio.h
-.Sh DESCRIPTION
-Note \(em the SMC and IPI drivers have been discontinued.
-.Xr dkio 7I
-is now the preferred method for retrieving disk information.
-.Pp
-The SMD and IPI disk drivers supplied with this release support a set of
-.Xr ioctl 2
-requests for diagnostics and bad sector information.
-Basic to these
-.Xr ioctl 2
-requests are the definitions in
-.In sys/hdio.h .
-.Sh IOCTLS
-.Bl -tag -width HDKIOCGTYPE
-.It Dv HDKIOCGTYPE
-The argument is a pointer to a
-.Vt hdk_type
-structure (described below).
-This
-.Xr ioctl 2
-gets specific information from the hard disk.
-.It Dv HDKIOCSTYPE
-The argument is a pointer to a
-.Vt hdk_type
-structure (described below).
-This
-.Xr ioctl 2
-sets specific information about the hard disk.
-.El
-.Bd -literal -offset 2n
-/*
- * Used for drive info
- */
-struct hdk_type {
- ushort_t hdkt_hsect; /* hard sector count (read only) */
- ushort_t hdkt_promrev; /* prom revision (read only) */
- uchar_t hdkt_drtype; /* drive type (ctlr specific) */
- uchar_t hdkt_drstat; /* drive status (ctlr specific, ro) */
-};
-.Ed
-.Bl -tag -width HDKIOCGBAD
-.It Dv HDKIOCGBAD
-The argument is a pointer to a
-.Vt hdk_badmap
-structure (described below).
-This
-.Xr ioctl 2
-is used to get the bad sector map from the disk.
-.It Dv HDKIOCSBAD
-The argument is a pointer to a
-.Vt hdk_badmap
-structure (described below).
-This
-.Xr ioctl 2
-is used to set the bad sector map on the disk.
-.El
-.Bd -literal -offset 2n
-/*
- * Used for bad sector map
- */
-struct hdk_badmap {
- caddr_t hdkb_bufaddr; /* address of user's map buffer */
-};
-.Ed
-.Bl -tag -width HDKIOCGDIAG
-.It Dv HDKIOCGDIAG
-The argument is a pointer to a
-.Vt hdk_diag
-structure (described below).
-This
-.Xr ioctl 2
-gets the most recent command that failed along with the
-sector and error number from the hard disk.
-.El
-.Bd -literal -offset 2n
-/*
- * Used for disk diagnostics
- */
-struct hdk_diag {
- ushort_t hdkd_errcmd; /* most recent command in error */
- daddr_t hdkd_errsect; /* most recent sector in error */
- uchar_t hdkd_errno; /* most recent error number */
- uchar_t hdkd_severe; /* severity of most recent error */
-};
-.Ed
-.Sh SEE ALSO
-.Xr ioctl 2 ,
-.Xr dkio 7I
diff --git a/usr/src/man/man7i/iec61883.7i b/usr/src/man/man7i/iec61883.7i
deleted file mode 100644
index a157a0c369..0000000000
--- a/usr/src/man/man7i/iec61883.7i
+++ /dev/null
@@ -1,674 +0,0 @@
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.Dd July 9, 2018
-.Dt IEC61883 7I
-.Os
-.Sh NAME
-.Nm iec61883
-.Nd IEC 61883 interfaces
-.Sh SYNOPSIS
-.In sys/av/iec61883.h
-.Sh DESCRIPTION
-The set of interfaces described in this man page can be used to control and
-exchange data with consumer audio/video devices using protocols specified
-in
-.%T "IIEC 61883 Consumer Electronic Audio/Video Equipment - Digital Interface"
-including Common Isochronous Packet (CIP), Connection Management
-Procedures (CMP) and Function Control Protocol (FCP).
-.Pp
-An
-.Nm
-compliant driver exports two device nodes for isochronous and
-for asynchronous transactions.
-See the
-.Sx FILES
-section of this man page for the namespace definition.
-.Ss "Isochronous Transfers"
-Two methods are provided to receive/transmit isochronous data: using
-.Xr mmap 2
-in combination with
-.Xr ioctl 2 ,
-and
-.Xr read 2
-or
-.Xr write 2 .
-.Ss "Mmap/Ioctl"
-This method provides better performance and finer-grained control than
-read/write, and is a method of choice for most applications.
-The data buffer is
-mapped into a user process address space, which means no data copying between
-the kernel and an application is necessary.
-Synchronization between user
-processes and the driver is performed using
-.Xr ioctl 2
-commands.
-.Pp
-An application allocates resources for isochronous transfer using
-.Dv IEC61883_ISOCH_INIT .
-Then the data buffer can be mapped into the process
-space using
-.Xr mmap 2 .
-.Pp
-A circular data buffer consists of one or more equal size frame buffers
-(further referred to as frames, unless to avoid ambiguity with AV frames).
-Frames are numbered starting with zero and are always transferred sequentially.
-Frames consist equal sized packets.
-Each packet contains a CIP header and one or more data blocks.
-.Pp
-A driver and an application act as a producer and a consumer: producer supplies
-.Em full
-frames (filled with data) to the consumer, and the producer is not
-allowed to access those frames until the consumer claims them
-.Em empty .
-.Pp
-A transfer can be initiated and suspended with
-.Dv IEC61883_START
-and
-.Dv IEC61883_STOP
-commands respectively.
-.Dv IEC61883_RECV
-or
-.Dv IEC61883_XMIT
-is used for producer-consumer synchronization.
-.Ss "Read/Write"
-Using this method, an application calls
-.Xr read 2
-or
-.Xr write 2
-to receive or transmit a specified amount of data.
-Bus-specific overhead, such as isochronous packet headers, is handled by the driver
-and is not exposed to applications.
-Data returned by
-.Xr read 2
-contains CIP headers and data blocks.
-Empty packets are not returned by
-.Xr read 2 .
-.Xr write 2
-data should meet the same requirements.
-.Pp
-If one or more channels have been allocated since
-.Xr open 2
-(see
-.Dv IEC61883_ISOCH_INIT ) ,
-the data is received/transmitted using channel that was created the last.
-.Pp
-If no channels were allocated, the driver uses the broadcast channel by default
-and allocates the default-size data buffer.
-During transmit, the first packet's CIP header is used to auto-detect the data format.
-If it is one of the formats supported by the driver, it is properly transmitted (with
-inserted empty packets and timestamps).
-.Pp
-For both methods, if during transmit the driver runs out of data, it transmits
-empty packets containing only a CIP header of the next to be transmitted
-packet, as defined in
-.Em IEC 61883-1 .
-.Ss "Connection Management Procedures"
-Applications wishing to follow Connection Management Procedures (CMP) in
-combination with isochronous transfers should use the
-.Xr ioctl 2
-.Dv IEC61883_PLUG_INIT ,
-.Dv IEC61883_PLUG_FINI ,
-.Dv IEC61883_PLUG_REG_READ
-and
-.Dv IEC61883_PLUG_REG_CAS
-commands.
-.Ss "Asynchronous Transactions"
-.Xr read 2 ,
-.Xr write 2 ,
-.Xr ioctl 2 ,
-and
-.Xr poll 2
-can be used
-with asynchronous nodes.
-Asynchronous data exchange between a driver and an
-application utilizes a common data structure called asynchronous request (ARQ):
-.Bd -literal -offset 2n
-typedef struct iec61883_arq {
- int arq_type;
- int arq_len;
- union {
- uint32_t quadlet;
- uint64_t octlet;
- uint8_t buf[8];
- } arq_data;
-} iec61883_arq_t;
-.Ed
-.Pp
-.Fa arq_type
-contains
-.Sy ARQ
-type:
-.Pp
-.Bl -tag -width " " -compact
-.It Dv IEC61883_ARQ_FCP_CMD
-.It Dv IEC61883_ARQ_FCP_RESP
-.Pp
-.Sy FCP
-command and response frame respectively.
-Outgoing frames are sent using
-.Xr write 2 ,
-incoming frames are received with
-.Xr read 2 .
-.Pp
-See
-.Em IIEC 61883-1
-for the FCP frame structure definition.
-.Pp
-.It Dv IEC61883_ARQ_BUS_RESET
-.Pp
-Returned by the driver when a bus reset occurs.
-There is no data associated with this request type, and \fBarq_len\fR is set to 0.
-.El
-.Pp
-If
-.Fa arq_len
-is 4 or 8, then data should be supplied in
-.Fa arq_data.quadlet
-or
-.Fa arq_data.octlet
-respectively, otherwise up to 8 bytes can be put in
-.Fa arq_data.buf ,
-with the rest of the data following immediately after.
-.Ss "write(2)"
-For a request to be sent to a target, an
-.Vt iec61883_arq_t
-structure along with associated data is passed to the driver using
-.Xr write 2 .
-.Xr write 2
-blocks until the request is completed.
-.Ss "read(2)"
-A driver collects incoming ARQs in the internal buffer.
-Buffer size can be changed using the
-.Xr ioctl 2
-command
-.Vt IEC61883_FCP_SET_IBUF_SIZE .
-.Pp
-Reading an ARQ takes one or two steps depending on data length.
-An application
-first reads
-.Ql sizeof (iec61883_arq_t)
-bytes: if
-.Fa arq_len
-is less than or equal 4, which is usually the case, no additional step is needed.
-Otherwise,
-the remaining
-.Ql arq_len - 4
-bytes should be read and concatenated.
-.Pp
-.Xr read 2
-blocks until the specified amount of data is available, unless
-.Dv O_NONBLOCK
-or
-.Dv O_NDELAY
-flag was set during
-.Xr open 2 ,
-in which case
-.Xr read 2
-returns immediately.
-.Ss "poll(2)"
-Applications can
-.Xr poll 2
-asynchronous nodes on the
-.Dv POLLIN
-event.
-.Ss "Bus Reset"
-In case of a bus reset, the driver notifies an application by generating an
-.Sy ARQ
-of type
-.Dv IEC61883_ARQ_BUS_RESET .
-.Pp
-If there were established isochronous connections before bus reset, the driver
-attempts to restore all connections as described in
-.Em IEC 61883
-and resume any active transfers that were in progress.
-.Sh IOCTLS
-The following commands only apply to isochronous nodes:
-.Bl -tag -width " "
-.It Dv IEC61883_ISOCH_INIT
-.Pp
-This command allocates a data buffer and isochronous resources (if necessary)
-for the isochronous transfer.
-The argument is a pointer to the structure:
-.Bd -literal -offset 2n
-typedef struct iec61883_isoch_init {
- int ii_version; /* interface version */
- int ii_pkt_size; /* packet size */
- int ii_frame_size; /* packets/frame */
- int ii_frame_cnt; /* # of frames */
- int ii_direction; /* xfer direction */
- int ii_bus_speed; /* bus speed */
- uint64_t ii_channel; /* channel mask */
- int ii_dbs; /* DBS */
- int ii_fn; /* FN */
- int ii_rate_n; /* rate numerator */
- int ii_rate_d; /* rate denominator */
- int ii_ts_mode; /* timestamp mode */
- int ii_flags; /* flags */
- int ii_handle; /* isoch handle */
- int ii_frame_rcnt; /* # of frames */
- off_t *ii_mmap_off /* mmap offset */
- int ii_rchannel; /* channel */
- int ii_error; /* error code */
-} iec61883_isoch_init_t;
-.Ed
-.Pp
-.Fa ii_version
-should be set to
-.Dv IEC61883_V1_0 .
-.Pp
-The driver attempts to allocate a data buffer consisting of
-.Fa ii_frame_cnt
-frames, with
-.Fa ii_frame_size
-packets in each frame.
-Packet size in bytes is specified by
-.Fa ii_pkt_size
-specifies and should be a multiple of 512 and compatible with
-.Fa ii_bus_speed .
-.Pp
-.Fa ii_direction
-can take one of the following values:
-.Bl -tag -width "IEC61883_DIR_RECV"
-.It Dv IEC61883_DIR_RECV
-Receiving isochronous data.
-.It Dv IEC61883_DIR_XMIT
-Transmitting isochronous data.
-.El
-.Pp
-.Fa ii_bus_speed
-chooses bus speed to be used and can be either
-.Dv IEC61883_S100 ,
-.Dv IEC61883_S200
-or
-.Dv IEC61883_S400 .
-.Pp
-.Fa ii_channel
-is a mask that specifies an isochronous channel number to be
-used, with the
-.Em N Ns th
-bit representing channel
-.Em N .
-When transmitting data, several bits can be set at a time, in which case the
-driver chooses one, for example,
-.Sy 0x3FF
-means a range from 0 to 9.
-In case of receive, only one bit can be set.
-.Pp
-.Fa ii_dbs
-specifies data block size in quadlets, for example, DBS value for
-.Dv SD-DVCR
-is
-.Sy 0x78 .
-Refer to
-.Em IEC 61883
-for more details on DBS.
-.Pp
-.Fa ii_fn
-specifies fraction number, which defines the number of blocks in which a
-source packet is divided.
-Allowed values are from 0 to 3.
-Refer to
-.Em IEC 61883
-for more details on FN.
-.Pp
-Data rate expected by the AV device can be lower than the bus speed, in which
-case the driver has to periodically insert empty packets into the data stream
-to avoid device buffer overflows.
-This rate is specified with a fraction N/D,
-set by
-.Fa ii_rate_n
-and
-.Fa ii_rate_d
-respectively.
-Any integer numbers can be used, or the following predefined constants:
-.Pp
-.Bl -tag -width "IEC61883_RATE_N_DV_NTSC" -compact
-.It Dv IEC61883_RATE_N_DV_NTSC
-.It Dv IEC61883_RATE_D_DV_NTSC
-Data rate expected by
-.Sy DV-NTSC
-devices.
-.Pp
-.It Dv IEC61883_RATE_N_DV_PAL
-.It Dv IEC61883_RATE_D_DV_PAL
-Data rate expected by
-.Sy DV-PAL
-devices.
-.El
-.Pp
-During data transmission, a timestamp based on the current value of the cycle
-timer is usually required.
-.Fa ii_ts_mode
-defines timestamp mode to be used:
-.Bl -tag -width IEC61883_TS_NONE
-.It Dv IEC61883_TS_SYT
-Driver puts a timestamp in the SYT field of the first CIP header of each frame.
-.It Dv IEC61883_TS_NONE
-No timestamps.
-.El
-.Pp
-.Fa ii_dbs ,
-.Fa ii_fn ,
-.Fa ii_rate_n ,
-.Fa ii_rate_d
-and
-.Fa ii_ts_mode
-are only required for transmission.
-In other case these should be set to 0.
-.Pp
-.Fa ii_flags
-should be set to 0.
-.Pp
-If command succeeds,
-.Fa ii_handle
-contains a handle that should be used with other isochronous commands.
-.Fa ii_frame_rcnt
-contains the number of allocated frames (can be less than
-.Fa ii_frame_cnt ) .
-.Fa ii_mmap_off
-contains an offset to be used in
-.Xr mmap 2 ,
-for example, to map an entire data receive buffer:
-.Bd -literal -offset 2n
-pa = mmap(NULL, init.ii_pkt_size *
- init.ii_frame_size * init.ii_frame_rcnt,
- PROT_READ, MAP_PRIVATE, fd, init.ii_mmap_off);
-.Ed
-.Pp
-.Fa ii_rchannel
-contains channel number.
-.Pp
-In case of command success,
-.Fa ii_error
-is set to 0; otherwise one of the following values can be returned:
-.Bl -tag -width IEC61883_ERR_NOCHANNEL
-.It Dv IEC61883_ERR_NOMEM
-Not enough memory for the data buffer.
-.It Dv IEC61883_ERR_NOCHANNEL
-Cannot allocate isochronous channel.
-.It Dv IEC61883_ERR_PKT_SIZE
-Packet size is not allowed at this bus speed.
-.It Dv IEC61883_ERR_VERSION
-Interface version is not supported.
-.It Dv IEC61883_ERR_INVAL
-One or more the parameters are invalid
-.It Dv IEC61883_ERR_OTHER
-Unspecified error type.
-.El
-.It Dv IEC61883_ISOCH_FINI
-.Pp
-Argument is a handle returned by
-.Dv IEC61883_ISOCH_INIT .
-This command frees any resources associated with this handle.
-There must be no active transfers
-and the data buffer must be unmapped; otherwise the command fails.
-.It Dv IEC61883_START
-.Pp
-This command starts an isochronous transfer.
-The argument is a handle returned
-by
-.Dv IEC61883_ISOCH_INIT .
-.It Dv IEC61883_STOP
-.Pp
-This command stops an isochronous transfer.
-The argument is a handle returned by
-.Dv IEC61883_ISOCH_INIT .
-.It Dv IEC61883_RECV
-.Pp
-This command is used to receive full frames and return empty frames to the driver.
-The argument is a pointer to the structure:
-.Bd -literal -offset 2n
-typedef struct iec61883_recv {
- int rx_handle; /* isoch handle */
- int rx_flags; /* flags */
- iec61883_xfer_t rx_xfer; /* xfer params */
-} iec61883_recv_t;
-
-typedef struct iec61883_xfer {
- int xf_empty_idx; /* first empty frame */
- int xf_empty_cnt; /* empty frame count */
- int xf_full_idx; /* first full frame */
- int xf_full_cnt; /* full frame count */
- int xf_error; /* error */
-} iec61883_xfer_t;
-.Ed
-.Pp
-.Fa rx_flags
-should be set to 0.
-.Pp
-An application sets
-.Fa xf_empty_idx
-and
-.Fa xf_empty_cnt
-to indicate frames it no longer needs.
-E. g. if a buffer consists of 6 frames,
-.Fa xf_empty_idx
-is 4,
-.Fa xf_empty_cnt
-is 3 - means that frames 4, 5 and 0 can now be reused by the driver.
-If there are no empty frames, for example, the
-first time this command is called,
-.Fa xf_empty_cnt
-should be set to 0.
-.Pp
-When the command returns,
-.Fa xf_full_idx
-and
-.Fa xf_full_cnt
-specifies the frames that are full.
-.Fa xf_error
-is always 0.
-.Pp
-In general, AV frame boundaries are not aligned with the frame buffer
-boundaries, because the first received packet might not be the first packet of
-an AV frame, and, in contrast with the read/write method, the driver does not
-remove empty CIP packets.
-.Pp
-Applications should detect empty packets by comparing adjacent packets'
-continuity counters (DBC field of the CIP header).
-.It Dv IEC61883_XMIT
-.Pp
-This command is used to transmit full frames and get more empty frames from the
-driver.
-The argument is a pointer to the structure:
-.Bd -literal -offset 2n
-typedef struct iec61883_xmit {
- int tx_handle; /* isoch handle */
- int tx_flags; /* flags */
- iec61883_xfer_t tx_xfer; /* xfer params */
- int tx_miss_cnt; /* missed cycles */
- } iec61883_xmit_t;
-.Ed
-.Pp
-.Fa tx_flags
-should be set to zero.
-.Pp
-The application sets
-.Fa xf_full_idx
-and
-.Fa xf_full_cnt
-to specify frames it wishes to transmit.
-If there are no frames to transmit (e. g. the first time this command is called),
-.Fa xf_full_cnt
-should be set to 0.
-.Pp
-When the command returns,
-.Fa xf_empty_idx
-and
-.Fa xf_empty_cnt
-specifies empty frames which can be to transmit more data.
-.Fa xf_error
-is always 0.
-.Pp
-.Fa tx_miss_cnt
-contains the number of isochronous cycles missed since last
-transfer due to data buffer under run.
-This can happen when an application does not supply data fast enough.
-For the purposes of time stamping, the driver considers the first packet in a
-frame buffer to be the first packet of an AV frame.
-.It Dv IEC61883_PLUG_INIT
-.Pp
-This command returns a handle for the specified plug.
-The argument is a pointer
-to the structure:
-.Bd -literal -offset 2n
-typedef struct iec61883_plug_init {
- int pi_ver; /* interface version */
- int pi_loc; /* plug location */
- int pi_type; /* plug type */
- int pi_num; /* plug number */
- int pi_flags; /* flags */
- int pi_handle; /* plug handle */
- int pi_rnum; /* plug number */
- } iec61883_plug_init_t;
-.Ed
-.Pp
-.Fa pi_ver
-should be set to
-.Dv IEC61883_V1_0 .
-.Pp
-.Fa pi_loc
-specifies plug location:
-.Bl -tag -width IEC61883_LOC_REMOTE
-.It Dv IEC61883_LOC_LOCAL
-On the local unit (local plug).
-A plug control register (PCR) is allocated.
-Command fails if the plug already exists
-.It Dv IEC61883_LOC_REMOTE
-On the remote unit (remote plug).
-The plug should exist on the remote unit,
-otherwise the command fails.
-.El
-.Pp
-.Fa pi_type
-specifies isochronous plug type:
-.Pp
-.Bl -tag -width " " -compact
-.It Dv IEC61883_PLUG_IN
-.It Dv IEC61883_PLUG_OUT
-.Pp
-Input or output plugs.
-.Pp
-.It Dv IEC61883_PLUG_MASTER_IN
-.It Dv IEC61883_PLUG_MASTER_OUT
-.Pp
-Master input or master output plug.
-These plugs always exist on the local unit.
-.El
-.Pp
-.Fa pi_num
-specifies plug number.
-This should be 0 for master plugs, and from 0 to 31 for input/output plugs.
-Alternatively, a special value
-.Dv IEC61883_PLUG_ANY
-can be used to let the driver choose a free plug
-number, create the plug and return the number in
-.Fa pi_rnum .
-.Pp
-.Fa pi_flags
-should be set to 0.
-.Pp
-If the command succeeds,
-.Fa pi_handle
-contains a handle that should be used with other plug commands.
-.It Dv IEC61883_PLUG_FINI
-.Pp
-Argument is a handle returned by
-.Dv IEC61883_PLUG_INIT .
-This command frees any resources associated with this handle, including the PCR.
-.It Dv IEC61883_PLUG_REG_READ
-.Pp
-Read plug register value.
-The argument is a pointer to the structure:
-.Bd -literal -offset 2n
-typedef struct iec61883_plug_reg_val {
- int pr_handle; /* plug handle */
- uint32_t pr_val; /* register value */
-} iec61883_plug_reg_val_t;
-.Ed
-.Pp
-.Fa pr_handle
-is a handle returned by
-.Dv IEC61883_PLUG_INIT .
-Register
-value is returned in
-.Fa pr_val .
-.It Dv IEC61883_PLUG_REG_CAS
-.Pp
-Atomically compare and swap plug register value.
-The argument is a pointer to the structure:
-.Bd -literal -offset 2n
-typedef struct iec61883_plug_reg_lock {
- int pl_handle; /* plug handle */
- uint32_t pl_arg; /* compare arg */
- uint32_t pl_data; /* write value */
- UINT32_t pl_old; /* original value */
-} iec61883_plug_reg_lock_t;
-.Ed
-.Pp
-.Fa pr_handle
-is a handle returned by IEC61883_PLUG_INIT.
-.Pp
-Original register value is compared with
-.Fa pl_arg
-and if they are equal, register value is replaced with
-.Fa pl_data .
-In any case, the original value is stored in
-.Fa pl_old .
-.El
-.Pp
-The following commands only apply to asynchronous nodes:
-.Bl -tag -width " "
-.It Dv IEC61883_ARQ_GET_IBUF_SIZE
-.Pp
-This command returns current incoming ARQ buffer size.
-The argument is a
-pointer to
-.Vt int .
-.It Dv IEC61883_ARQ_SET_IBUF_SIZE
-.Pp
-This command changes incoming ARQ buffer size.
-The argument is the new buffer
-size in bytes.
-.El
-.Sh FILES
-.Bl -tag -width /dev/av/N/async
-.It Pa /dev/av/N/async
-Device node for asynchronous data
-.It Pa /dev/av/N/isoch
-Device has been disconnected
-.El
-.Sh ERRORS
-.Bl -tag -width EFAULT
-.It Er EIO
-Bus operation failed.
-DMA failure.
-.It Er EFAULT
-.Xr ioctl 2
-argument points to an illegal address.
-.It Er EINVAL
-Invalid argument or argument combination.
-.It Er ENODEV
-Device has been disconnected.
-.El
-.Sh ARCHITECTURE
-All
-.Sh INTERFACE STABILITY
-Committed
-.Sh SEE ALSO
-.Xr ioctl 2 ,
-.Xr mmap 2 ,
-.Xr open 2 ,
-.Xr poll 2 ,
-.Xr read 2 ,
-.Xr write 2 ,
-.Xr attributes 5 ,
-.Xr av1394 7D
-.Rs
-.%B IIEC 61883 Consumer audio/video equipment - Digital interface
-.Re
-.Rs
-.%B IEEE Std 1394-1995 Standard for a High Performance Serial Bus
-.Re
diff --git a/usr/src/man/man7i/ipnat.7i b/usr/src/man/man7i/ipnat.7i
deleted file mode 100644
index 5aa277f05f..0000000000
--- a/usr/src/man/man7i/ipnat.7i
+++ /dev/null
@@ -1,436 +0,0 @@
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright (c) 2017, Joyent, Inc.
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.Dd October 23, 2017
-.Dt IPNAT 7I
-.Os
-.Sh NAME
-.Nm ipnat
-.Nd IP Filter/NAT module interface
-.Sh DESCRIPTION
-The
-.Sy ipnat
-device provides interfaction with the NAT features of the Solaris IPFilter.
-.Sh APPLICATION PROGRAMMING INTERFACE
-The NAT features programming model is a component of the Solaris IP Filter and
-is accessed via the NAT device file
-.Pa /dev/ipnat .
-Opening the device for
-reading or writing determines which ioctl calls can be successfully made.
-.Sh IOCTLS
-The caller must construct a
-.Vt ipfobj
-structure when issuing a
-.Sy SIOCGNATL
-or
-SIOCSTPUT
-ioctl.
-The
-.Vt ipfobj
-structure is then passed
-to the ioctl call and is filled out with
-.Fa ipfo_type
-set to
-.Dv IPFOBJ_ Ns value .
-.Dv IPFOBJ_ Ns value
-provides a matching name for the structure, while
-.Fa ipfo_size
-is set to the total size of the structure being passed and
-.Fa ipfo_ptr
-is set to the structure address.
-The
-.Fa ipfo_rev
-structure should be set to the current value of
-.Dv IPFILTER_VERSION ,
-while
-.Fa ipfo_offset
-and
-.Fa ipfo_xxxpad
-should be set to 0.
-.Bd -literal -offset 2n
-/*
- * Structure used with SIOCGNATL/SIOCSTPUT.
- */
-
-/*
- * Object structure description. For passing through in ioctls.
- */
-typedef struct ipfobj {
- u_32_t ipfo_rev; /* IPFilter version (IPFILTER_VERSION) */
- u_32_t ipfo_size; /* size of object at ipfo_ptr */
- void *ipfo_ptr; /* pointer to object */
- int ipfo_type; /* type of object being pointed to */
- int ipfo_offset; /* bytes from ipfo_ptr where to start */
- u_char ipfo_xxxpad[32]; /* reserved for future use */
-} ipfobj_t;
-
-#define IPFILTER_VERSION 4010901 /* IPFilter version */
-#define IPFOBJ_NATSAVE 8 /* struct nat_save */
-#define IPFOBJ_NATLOOKUP 9 /* struct natlookup */
-.Ed
-.Pp
-The following
-.Xr ioctl 2
-calls may be used to manipulate the ipnat sub-system inside of ipf.
-Note that the ipnat driver only accept calls from applications
-using the same data model as the kernel.
-In other words, 64-bit kernels can only accept calls from 64-bit applications.
-Calls from 32-bit applications fail
-with
-.Er EINVAL .
-.Bl -tag -width SIOCSTLCK
-.It Dv SIOCSTLCK
-Set or clear the NAT lock to prevent table updates attributable to packet
-flow-through.
-.It Dv SIOCGNATL
-Search the NAT table for the rdr entry that matches the fields in the natlookup
-structure.
-The caller must populate the structure with the address/port
-information of the accepted TCP connection
-.Pq Fa nl_inip , Fa nl_inport
-and the
-address/port information of the peer
-.Pq Fa nl_outip , Fa nl_outport .
-The
-.Fa nl_flags
-field must have the
-.Dv IPN_TCP
-option set.
-All other fields must be set to 0.
-If the call succeeds,
-.Fa nl_realip
-and
-.Fa nl_realport
-are set to the real destination address and port, respectively.
-The
-.Fa nl_inport
-and
-.Fa nl_outport
-fields must be in host byte order.
-If
-.Dv IPN_FINDFORWARD
-is set in
-.Fa nl_flags ,
-a check is made to see if it is
-possible to create an outgoing NAT session by checking if a packet coming from
-.Pq Fa nl_realip , Fa nl_realport
-and destined for
-.Pq Fa nl_outip , Fa nl_outport
-can be translated.
-If translation is possible, the flag remains set, otherwise it is
-cleared in the structure returned to the caller.
-.Bd -literal -offset indent
-/*
- * Structure used with SIOCGNATL.
- */
-typedef struct natlookup {
- i6addr_t nl_inipaddr;
- i6addr_t nl_outipaddr;
- i6addr_t nl_realipaddr;
- int nl_v;
- int nl_flags;
- u_short nl_inport;
- u_short nl_outport;
- u_short nl_realport;
-} natlookup_t
-
-#define nl_inip nl_inipaddr.in4
-#define nl_outip nl_outipaddr.in4
-#define nl_realip nl_realipaddr.in4
-#define nl_inip6 nl_inipaddr.in6
-#define nl_outip6 nl_outipaddr.in6
-#define nl_realip6 nl_realipaddr.in6
-
-/*
- * Accepted values for nl_flags
- */
-#define IPN_TCP 0x00001
-#define IPN_FINDFORWARD 0x400000
-.Ed
-.It Dv SIOCSTPUT
-Move a NAT mapping structure from user space into the kernel.
-This ioctl is used by
-.Xr ipfs 1M
-to restore NAT sessions saved in
-.Pa /var/db/ipf/ipnat.ipf .
-The
-.Vt nat_save
-structure must have its
-.Fa ipn_nat
-and
-.Fa ipn_ipnat
-structures filled out correctly.
-Fields not assigned a value must be initialised to 0.
-All pointer fields are adjusted, as appropriate, once the
-structure is passed into the kernel and none are preserved.
-.Pp
-To create a translation, the following fields must be set:
-.\" Force item bodies to next line using 2n width
-.Bl -tag -width 2n
-.It "Interface name"
-The interface name on which the host is to be exited must be
-set in
-.Fa nat_ifnames[0] .
-.It "Local IP address and port number"
-The connection's local IP address and port
-number are stored in network byte order using
-.Fa nat_inip Ns / Ns Fa nat_inport .
-.It "Destination address/port"
-The destination address/port are stored in
-.Fa nat_oip Ns / Ns Fa nat_oport .
-.It "Target address/port"
-The translation's target address/port is stored in
-.Fa nat_outip Ns / Ns Fa nat_outport .
-.El
-.Pp
-The caller must also precalculate the checksum adjustments necessary to
-complete the translation and store those values in
-.Fa nat_sumd
-(delta required for TCP header) and
-.Fa nat_ipsumd
-(delta required for IP header).
-.Bd -literal -offset indent
-/*
- * Structures used with SIOCSTPUT.
- */
-typedef struct nat_save {
- void *ipn_next;
- struct nat ipn_nat;
- struct ipnat ipn_ipnat;
- struct frentry ipn_fr;
- int ipn_dsize;
- char ipn_data[4];
-} nat_save_t;
-
-typedef struct nat {
- ipfmutex_t nat_lock;
- struct nat *nat_next;
- struct nat **nat_pnext;
- struct nat *nat_hnext[2];
- struct nat **nat_phnext[2];
- struct hostmap *nat_hm;
- void *nat_data;
- struct nat **nat_me;
- struct ipstate *nat_state;
- struct ap_session *nat_aps;
- frentry_t *nat_fr;
- struct ipnat *nat_ptr;
- void *nat_ifps[2];
- void *nat_sync;
- ipftqent_t nat_tqe;
- u_32_t nat_flags;
- u_32_t nat_sumd[2];
- u_32_t nat_ipsumd;
- u_32_t nat_mssclamp;
- i6addr_t nat_inip6;
- i6addr_t nat_outip6;
- i6addr_t nat_oip6;
- U_QUAD_T nat_pkts[2];
- U_QUAD_T nat_bytes[2];
- union {
- udpinfo_t nat_unu;
- tcpinfo_t nat_unt;
- icmpinfo_t nat_uni;
- greinfo_t nat_ugre;
- } nat_un;
- u_short nat_oport;
- u_short nat_use;
- u_char nat_p;
- int nat_dir;
- int nat_ref;
- int nat_hv[2];
- char nat_ifnames[2][LIFNAMSIZ];
- int nat_rev;
- int nat_v;
-} nat_t;
-
-#define nat_inip nat_inip6.in4
-#define nat_outip nat_outip6.in4
-#define nat_oip nat_oip6.in4
-#define nat_inport nat_un.nat_unt.ts_sport
-#define nat_outport nat_un.nat_unt.ts_dport
-/*
- * Values for nat_dir
- */
-#define NAT_INBOUND 0
-#define NAT_OUTBOUND 1
-/*
- * Definitions for nat_flags
- */
-#define NAT_TCP 0x0001 /* IPN_TCP */
-.Ed
-.El
-.Sh EXAMPLES
-The following example shows how to prepare and use
-.Fa SIOCSTPUT
-to insert a NAT session directly into the table.
-Note that the usual TCP/IP code is omitted is this example.
-.Pp
-In the code segment below,
-.Fa incoming_fd
-is the TCP connection file descriptor
-that is accepted as part of the redirect process, while
-.Fa remote_fd
-is the outgoing TCP connection to the remote server being translated back to the
-original IP address/port pair.
-.Pp
-Note \(em
-The following ipnat headers must be included before you can use the code shown
-in this example:
-.Bd -literal -offset 2n
-#include <netinet/in.h>
-#include <arpa/inet.h>
-#include <net/if.h>
-#include <netinet/ipl.h>
-#include <netinet/ip_compat.h>
-#include <netinet/ip_fil.h>
-#include <netinet/ip_nat.h>
-#include <string.h>
-#include <fcntl.h>
-.Ed
-.Pp
-Note \(em
-In the example below, various code fragments have been excluded to enhance
-clarity.
-.Bd -literal -offset 2n
-int
-translate_connection(int incoming_fd)
-{
- struct sockaddr_in usin;
- struct natlookup nlp;
- struct nat_save ns;
- struct ipfobj obj;
- struct nat *nat;
- int remote_fd;
- int nat_fd;
- int onoff;
-
- memset(&ns, 0, sizeof(ns));
- nat = &ns.ipn_nat
-
- namelen = sizeof(usin);
- getsockname(remote_fd, (struct sockaddr *)&usin, &namelen);
-
- namelen = sizeof(sin);
- getpeername(incoming_fd, (struct sockaddr *) &sin, &namelen);
-
- namelen = sizeof(sloc);
- getsockname(incoming_fd, (struct sockaddr *) &sloc, &namelen);
-
- bzero((char *) &obi, sizeof(obj));
- obj.ipfo_rev = IPFILTER_VERSION;
- obj.ipfo_size = sizeof(nlp);
- obj.ipfo_ptr = &nip;
- obj.ipfo_type = IPFOBJ_NATLOOKUP;
-
- /*
- * Build up the NAT natlookup structure.
- */
- bzero((char *) &nlp, sizeof(nlp));
- nlp.nl_outip = sin.sin_addr;
- nlp.nl_inip = sloc.sin_addr;
- nlp.nl_flags = IPN_TCP;
- nlp.nl_outport = ntohs(sin.sin_port);
- nlp.nl_inport = ntohs(sloc.sin_port);
-
- /*
- * Open the NAT device and lookup the mapping pair.
- */
- nat_fd = open(IPNAT_NAME, O_RDWR);
- if (ioctl(nat_fd, SIOCGNATL, &obj) != 0)
- return -1;
-
- nat->nat_inip = usin.sin_addr;
- nat->nat_outip = nlp.nl_outip;
- nat->nat_oip = nlp.nl_realip;
-
- sum1 = LONG_SUM(ntohl(usin.sin_addr.s_addr)) +
- ntohs(usin.sin_port);
- sum2 = LONG_SUM(ntohl(nat->nat_outip.s_addr)) +
- ntohs(nlp.nl_outport);
- CALC_SUMD(sum1, sum2, sumd);
- nat->nat_sumd[0] = (sumd & 0xffff) + (sumd >> 16);
- nat->nat_sumd[1] = nat->nat_sumd[0];
-
- sum1 = LONG_SUM(ntohl(usin.sin_addr.s_addr));
- sum2 = LONG_SUM(ntohl(nat->nat_outip.s_addr));
- CALC_SUMD(sum1, sum2, sumd);
- nat->nat_ipsumd = (sumd & 0xffff) + (sumd >> 16);
-
- nat->nat_inport = usin.sin_port;
- nat->nat_outport = nlp.nl_outport;
- nat->nat_oport = nlp.nl_realport;
-
- nat->nat_flags = IPN_TCPUDP;
-
- /*
- * Prepare the ipfobj structure, accordingly.
- */
- bzero((char *)&obi, sizeof(obj));
- obj.ipfo_rev = IPFILTER_VERSION;
- obj.ipfo_size = sizeof(*nsp);
- obj.ipfo_ptr = nsp;
- obj.ipfo_type = IPFOBJ_NATSAVE;
-
- onoff = 1;
- if (ioctl(nat_fd, SIOCSTPUT, &obj) != 0)
- fprintf(stderr, "Error occurred\en");
-
- return connect(rem_fd, (struct sockaddr)&usin, sizeof(usin));
-}
-.Ed
-.Sh ERRORS
-.Bl -tag -width Er
-.It Er EPERM
-The device has been opened for reading only.
-To succeed, the ioctl call must be opened for both reading and writing.
-The call may be returned if it is
-privileged and the calling process did not assert
-.Brq Sy PRIV_SYS_NET_CONFIG
-in the effective set.
-.It Er ENOMEM
-More memory was allocated than the kernel can provide.
-The call may also be returned if the application inserts a NAT entry that
-exceeds the hash bucket chain's maximum length.
-.It Er EFAULT
-The calling process specified an invalid pointer in the ipfobj structure.
-.It Er EINVAL
-The calling process detected a parameter or field set to an unacceptable value.
-.It Er EEXIST
-The calling process, via
-.Dv SIOCSTPUT ,
-attempted to add a NAT entry that already exists in the NAT table.
-.It Er ESRCH
-The calling process called
-.Dv SIOCSTPUT
-before setting the
-.Dv SI_NEWFR
-flag and providing a pointer in the
-.Fa nat_fr
-field that cannot be found in the current rule set.
-.It Er EACESS
-The calling process issued a
-.Dv SIOCSTPUT
-before issuing a
-.Dv SIOCSTLCK .
-.El
-.Sh INTERFACE STABILITY
-Committed
-.Sh SEE ALSO
-.Xr ipfs 1M ,
-.Xr ipnat 1M ,
-.Xr ioctl 2 ,
-.Xr attributes 5
diff --git a/usr/src/man/man7i/mhd.7i b/usr/src/man/man7i/mhd.7i
deleted file mode 100644
index a6eafc81be..0000000000
--- a/usr/src/man/man7i/mhd.7i
+++ /dev/null
@@ -1,386 +0,0 @@
-.\" Copyright (c) 2005 Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright (c) 2017, Joyent, Inc.
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.Dd October 23, 2017
-.Dt MHD 7I
-.Os
-.Sh NAME
-.Nm mhd
-.Nd multihost disk control operations
-.Sh SYNOPSIS
-.In sys/mhd.h
-.Sh DESCRIPTION
-The
-.Nm
-.Xr ioctl 2
-control access rights of a multihost disk, using
-disk reservations on the disk device.
-.Pp
-The stability level of this interface (see
-.Xr attributes 5 )
-is evolving.
-As a result, the interface is subject to change and you should limit your use of
-it.
-.Pp
-The mhd ioctls fall into two major categories: (1) ioctls for non-shared
-multihost disks and (2) ioctls for shared multihost disks.
-.Pp
-One ioctl,
-.Dv MHIOCENFAILFAST ,
-is applicable to both non-shared and shared multihost disks.
-It is described after the first two categories.
-.Pp
-All the ioctls require root privilege.
-.Pp
-For all of the ioctls, the caller should obtain the file descriptor for the
-device by calling
-.Xr open 2
-with the
-.Dv O_NDELAY
-flag; without the
-.Dv O_NDELAY
-flag, the open may fail due to another host already having a
-conflicting reservation on the device.
-Some of the ioctls below permit the caller to forcibly clear a conflicting
-reservation held by another host, however, in order to call the ioctl, the
-caller must first obtain the open file descriptor.
-.Ss "Non-shared multihost disks"
-Non-shared multihost disks ioctls consist of
-.Dv MHIOCTKOWN ,
-.Dv MHIOCRELEASE ,
-.Dv HIOCSTATUS ,
-and
-.Dv MHIOCQRESERVE .
-These ioctl requests control the access rights of non-shared multihost disks.
-A non-shared multihost disk is one that supports serialized, mutually exclusive
-I/O mastery by the connected hosts.
-This is in contrast to the shared-disk model, in which
-concurrent access is allowed from more than one host (see below).
-.Pp
-A non-shared multihost disk can be in one of two states:
-.Bl -bullet -width indent
-.It
-Exclusive access state, where only one connected host has I/O access
-.It
-Non-exclusive access state, where all connected hosts have I/O access.
-An external hardware reset can cause the disk to enter the non-exclusive access
-state.
-.El
-.Pp
-Each multihost disk driver views the machine on which it's running as the
-.Dq local host ;
-each views all other machines as
-.Dq remote hosts .
-For each I/O or ioctl request, the requesting host is the local host.
-.Pp
-Note that the non-shared ioctls are designed to work with SCSI-2 disks.
-The
-SCSI-2 RESERVE/RELEASE command set is the underlying hardware facility in the
-device that supports the non-shared ioctls.
-.Pp
-The function prototypes for the non-shared ioctls are:
-.Bd -literal -offset 2n
-.Fn ioctl fd MHIOCTKOWN ;
-.Fn ioctl fd MHIOCRELEASE ;
-.Fn ioctl fd MHIOCSTATUS ;
-.Fn ioctl fd MHIOCQRESERVE ;
-.Ed
-.Bl -tag -width MHIOCQRESERVE
-.It Dv MHIOCTKOWN
-Forcefully acquires exclusive access rights to the multihost disk for the local
-host.
-Revokes all access rights to the multihost disk from remote hosts.
-Causes the disk to enter the exclusive access state.
-.Pp
-Implementation Note: Reservations (exclusive access rights) broken via random
-resets should be reinstated by the driver upon their detection, for example, in
-the automatic probe function described below.
-.It Dv MHIOCRELEASE
-Relinquishes exclusive access rights to the multihost disk for the local host.
-On success, causes the disk to enter the non- exclusive access state.
-.It Dv MHIOCSTATUS
-Probes a multihost disk to determine whether the local host has access rights
-to the disk.
-Returns
-.Sy 0
-if the local host has access to the disk,
-.Sy 1
-if it doesn't, and
-.Sy -1
-with
-.Va errno
-set to
-.Er EIO
-if the probe failed for some other reason.
-.It Dv MHIOCQRESERVE
-Issues, simply and only, a SCSI-2 Reserve command.
-If the attempt to reserve
-fails due to the SCSI error Reservation Conflict (which implies that some other
-host has the device reserved), then the ioctl will return
-.Sy -1
-with
-.Va errno
-set to
-.Er EACCES .
-The
-.Dv MHIOCQRESERVE
-ioctl does NOT issue a bus device
-reset or bus reset prior to attempting the SCSI-2 reserve command.
-It also
-does not take care of re-instating reservations that disappear due to bus
-resets or bus device resets; if that behavior is desired, then the caller can
-call
-.Dv MHIOCTKOWN
-after the
-.Dv MHIOCQRESERVE
-has returned success.
-If
-the device does not support the SCSI-2 Reserve command, then the ioctl returns
-.Er -1
-with
-.Va errno
-set to
-.Er ENOTSUP .
-The
-.Dv MHIOCQRESERVE
-ioctl is intended to be used by high-availability or clustering software for a
-.Dq quorum
-disk, hence, the
-.Dq Q
-in the name of the ioctl.
-.El
-.Ss "Shared Multihost Disks"
-Shared multihost disks ioctls control access to shared multihost disks.
-The ioctls are merely a veneer on the SCSI-3 Persistent Reservation facility.
-Therefore, the underlying semantic model is not described in detail here, see
-instead the SCSI-3 standard.
-The SCSI-3 Persistent Reservations support the
-concept of a group of hosts all sharing access to a disk.
-.Pp
-The function prototypes and descriptions for the shared multihost ioctls are as
-follows:
-.Bl -tag -width 1n
-.It Fn ioctl fd MHIOCGRP_INKEYS "(mhioc_inkeys_t *)k"
-.Pp
-Issues the SCSI-3 command Persistent Reserve In Read Keys to the device.
-On input, the field
-.Fa k->li
-should be initialized by the caller with
-.Fa k->li.listsize
-reflecting how big of an array the caller has allocated for the
-.Fa k->lilist
-field and with
-.Ql k->li.listlen\& ==\& 0 .
-On return, the field
-.Fa k->li.listlen
-is updated to indicate the number of
-reservation keys the device currently has: if this value is larger than
-.Fa k->li.listsize
-then that indicates that the caller should have passed a bigger
-.Fa k->li.list
-array with a bigger
-.Fa k->li.listsize .
-The number of array elements actually written by the callee into
-.Fa k->li.list
-is the minimum of
-.Fa k->li.listlen
-and
-.Fa k->li.listsize .
-The field
-.Fa k->generation
-is updated with the generation information returned by the SCSI-3
-Read Keys query.
-If the device does not support SCSI-3 Persistent Reservations,
-then this ioctl returns
-.Sy -1
-with
-.Va errno
-set to
-.Er ENOTSUP .
-.It Fn ioctl fd MHIOCGRP_INRESV "(mhioc_inresvs_t *)r"
-.Pp
-Issues the SCSI-3 command Persistent Reserve In Read Reservations to the
-device.
-Remarks similar to
-.Dv MHIOCGRP_INKEYS
-apply to the array manipulation.
-If the device does not support SCSI-3 Persistent Reservations,
-then this ioctl returns
-.Sy -1
-with
-.Va errno
-set to
-.Er ENOTSUP .
-.It Fn ioctl fd MHIOCGRP_REGISTER "(mhioc_register_t *)r"
-.Pp
-Issues the SCSI-3 command Persistent Reserve Out Register.
-The fields of structure
-.Va r
-are all inputs; none of the fields are modified by the ioctl.
-The field
-.Fa r->aptpl
-should be set to true to specify that registrations
-and reservations should persist across device power failures, or to false to
-specify that registrations and reservations should be cleared upon device power
-failure; true is the recommended setting.
-The field
-.Fa r->oldkey
-is the key that the caller believes the device may already have for this host
-initiator; if the caller believes that that this host initiator is not already
-registered with this device, it should pass the special key of all zeros.
-To achieve the effect of unregistering with the device, the caller should pass
-its current key for the
-.Fa r->oldkey
-field and an
-.Fa r->newkey
-field containing the special key of all zeros.
-If the device returns the SCSI error code
-Reservation Conflict, this ioctl returns
-.Sy -1
-with
-.Va errno
-set to
-.Er EACCES .
-.It Fn ioctl fd MHIOCGRP_RESERVE "(mhioc_resv_desc_t *)r"
-.Pp
-Issues the SCSI-3 command Persistent Reserve Out Reserve.
-The fields of
-structure
-.Va r
-are all inputs; none of the fields are modified by the ioctl.
-If the device returns the SCSI error code Reservation Conflict, this ioctl
-returns
-.Sy -1
-with
-.Va errno
-set to
-.Er EACCES .
-.It Fn ioctl fd MHIOCGRP_PREEMPTANDABORT "(mhioc_preemptandabort_t *)r"
-.Pp
-Issues the SCSI-3 command Persistent Reserve Out Preempt-And-Abort.
-The fields
-of structure
-.Va r
-are all inputs; none of the fields are modified by the ioctl.
-The key of the victim host is specified by the field
-.Fa r->victim_key .
-The field
-.Fa r->resvdesc
-supplies the preempter's key and the reservation that it is requesting as part
-of the SCSI-3 Preempt-And-Abort command.
-If the device returns the SCSI error code
-Reservation Conflict, this ioctl returns
-.Sy -1
-with
-.Va errno
-set to
-.Er EACCES .
-.It Fn ioctl fd MHIOCGRP_PREEMPT "(mhioc_preemptandabort_t *)r"
-.Pp
-Similar to
-.Dv MHIOCGRP_PREEMPTANDABORT ,
-but instead issues the SCSI-3 command Persistent Reserve Out Preempt.
-(Note: This command is not implemented).
-.It Fn ioctl fd MHIOCGRP_CLEAR "(mhioc_resv_key_t *)r"
-Issues the SCSI-3 command Persistent Reserve Out Clear.
-The input parameter
-.Va r
-is the reservation key of the caller, which should have been already
-registered with the device, by an earlier call to
-.Dv MHIOCGRP_REGISTER .
-.El
-.Pp
-For each device, the non-shared ioctls should not be mixed with the Persistent
-Reserve Out shared ioctls, and vice-versa, otherwise, the underlying device is
-likely to return errors, because SCSI does not permit SCSI-2 reservations to be
-mixed with SCSI-3 reservations on a single device.
-It is, however, legitimate
-to call the Persistent Reserve In ioctls, because these are query only.
-Issuing the
-.Dv MHIOCGRP_INKEYS
-ioctl is the recommended way for a caller to
-determine if the device supports SCSI-3 Persistent Reservations (the ioctl
-will return
-.Sy -1
-with
-.Va errno
-set to
-.Er ENOTSUP
-if the device does not).
-.Ss "MHIOCENFAILFAST Ioctl"
-The
-.Dv MHIOCENFAILFAST
-ioctl is applicable for both non-shared and shared
-disks, and may be used with either the non-shared or shared ioctls.
-.Bl -tag -width 1n
-.It Fn ioctl fd MHIOENFAILFAST "(unsigned int *)millisecs"
-.Pp
-Enables or disables the failfast option in the multihost disk driver and
-enables or disables automatic probing of a multihost disk, described below.
-The argument is an unsigned integer specifying the number of milliseconds to
-wait between executions of the automatic probe function.
-An argument of zero disables the failfast option and disables automatic probing.
-If the
-.Dv MHIOCENFAILFAST
-ioctl is never called, the effect is defined to be that
-both the failfast option and automatic probing are disabled.
-.El
-.Ss "Automatic Probing"
-The
-.Dv MHIOCENFAILFAST
-ioctl sets up a timeout in the driver to periodically
-schedule automatic probes of the disk.
-The automatic probe function works in this manner: The driver is scheduled to
-probe the multihost disk every n milliseconds, rounded up to the next integral
-multiple of the system clock's resolution.
-If
-.Bl -enum -offset indent
-.It
-the local host no longer has access rights to the multihost disk, and
-.It
-access rights were expected to be held by the local host,
-.El
-.Pp
-the driver immediately panics the machine to comply with the failfast model.
-.Pp
-If the driver makes this discovery outside the timeout function, especially
-during a read or write operation, it is imperative that it panic the system
-then as well.
-.Sh RETURN VALUES
-Each request returns
-.Sy -1
-on failure and sets
-.Va errno
-to indicate the error.
-.Bl -tag -width Er
-.It Er EPERM
-Caller is not root.
-.It Er EACCES
-Access rights were denied.
-.It Er EIO
-The multihost disk or controller was unable to successfully complete the
-requested operation.
-.It Er EOPNOTSUP
-The multihost disk does not support the operation.
-For example, it does not support the SCSI-2 Reserve/Release command set, or the
-SCSI-3 Persistent Reservation command set.
-.El
-.Sh STABILITY
-Uncommitted
-.Sh SEE ALSO
-.Xr ioctl 2 ,
-.Xr open 2 ,
-.Xr attributes 5
diff --git a/usr/src/man/man7i/mixer.7i b/usr/src/man/man7i/mixer.7i
deleted file mode 100644
index 869b54ccfd..0000000000
--- a/usr/src/man/man7i/mixer.7i
+++ /dev/null
@@ -1,767 +0,0 @@
-.\" Copyright (c) 2009 Sun Microsystems, Inc. All rights reserved.
-.\" Copyright 2019, Joyent, Inc.
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.Dd February 1, 2019
-.Dt MIXER 7I
-.Os
-.Sh NAME
-.Nm mixer
-.Nd generic mixer device interface
-.Sh SYNOPSIS
-.In sys/soundcard.h
-.Sh DESCRIPTION
-.Ss "Mixer Pseudo-Device"
-The
-.Pa /dev/mixer
-pseudo-device is provided for two purposes:
-.Bl -bullet -offset indent
-.It
-The first purpose is for applications that wish to learn about the list of
-audio devices on the system, so that they can select (or provide for users to
-select) an appropriate audio device.
-The
-.Pa /dev/mixer
-pseudo-device
-provides interfaces to enumerate all of the audio devices on the system.
-.It
-The second purpose is for mixer panel type applications which need to control
-master settings for the audio hardware in the system, such as gain levels,
-balance, port functionality, and other device features.
-.El
-.Pp
-Ordinary audio applications should
-.Em not
-attempt to adjust their playback
-or record volumes or other device settings using this device.
-Instead, they
-should use the
-.Dv SNDCTL_DSP_SETPLAYVOL
-and
-.Dv SNDCTL_DSP_SETRECVOL
-ioctls that are documented in
-.Xr dsp 7I .
-.Ss "Sndstat Device"
-The
-.Pa /dev/sndstat
-device supports
-.Xr read 2 ,
-and can be read to
-retrieve human-readable information about the audio devices on the system.
-Software should not attempt to interpret the contents of this device.
-.Sh IOCTLS
-.Ss "Information IOCTLs"
-The following ioctls are intended to aid applications in identifying the audio
-devices available on the system.
-These ioctls can be issued against either the
-pseudo-device
-.Pa /dev/mixer ,
-or a against a file descriptor open to any
-other audio device in the system.
-.Pp
-Applications should issue
-.Dv SNDCTL_SYSINFO
-first to learn what audio
-devices and mixers are available on the system, and then use
-.Dv SNDCTL_AUDIOINFO
-or
-.Dv SNDCTL_MIXERINFO
-to obtain more information
-about the audio devices or mixers, respectively.
-.Bl -tag -width SNDCTL_AUDIOINFO
-.It Dv OSS_GETVERSION
-The argument is a pointer to an integer, which retrieves the version of the
-.Sy OSS API
-used.
-The value is encoded with the major version (currently 4)
-encoded in the most significant 16 bits, and a minor version encoded in the
-lower 16 bits.
-.It Dv SNDCTL_SYSINFO
-The argument is a pointer to an
-.Vt oss_sysinfo
-structure, which has the following definition:
-.Bd -literal -offset 2n
-typedef struct oss_sysinfo {
- char product[32]; /* E.g. SunOS Audio */
- char version[32]; /* E.g. 4.0a */
- int versionnum; /* See OSS_GETVERSION */
- char options[128]; /* NOT SUPPORTED */
-
- int numaudios; /* # of audio/dsp devices */
- int openedaudio[8]; /* Reserved, always 0 */
-
- int numsynths; /* NOT SUPPORTED, always 0 */
- int nummidis; /* NOT SUPPORTED, always 0 */
- int numtimers; /* NOT SUPPORTED, always 0 */
- int nummixers; /* # of mixer devices */
-
- /* Mask of midi devices are busy */
- int openedmidi[8];
-
- /* Number of sound cards in the system */
- int numcards;
-
- /* Number of audio engines in the system */
- int numaudioengines;
- char license[16]; /* E.g. "GPL" or "CDDL" */
- char revision_info[256]; /* Reserved */
- int filler[172]; /* Reserved */
-} oss_sysinfo;
-.Ed
-.Pp
-The important fields here are
-.Fa numaudios ,
-which is used to determine the
-number of audio devices that can be queried with
-.Dv SNDCTL_AUDIOINFO ,
-.Fa nummixers
-which provides a count of mixers on the system, and
-.Fa numcards
-which counts to total number of aggregate devices.
-A
-.Sy card
-can consist of one or more audio devices and one or more mixers, although more
-typically there is exactly one audio device and one mixer for each card.
-.It Dv SNDCTL_AUDIOINFO
-The argument is a pointer to an
-.Vt oss_audioinfo
-structure, which has the following structure:
-.Bd -literal -offset 2n
-typedef struct oss_audioinfo {
- int dev; /* Device to query */
- char name[64]; /* Human readable name */
- int busy; /* reserved */
- int pid; /* reserved */
-
- /* PCM_CAP_INPUT, PCM_CAP_OUTPUT */
- int caps;
- int iformats; /* Supported input formats */
- int oformats; /* Supported output formats */
- int magic; /* reserved */
- char cmd[64]; /* reserved */
- int card_number;
- int port_number; /* reserved */
- int mixer_dev;
-
- /* Obsolete field. Replaced by devnode */
- int legacy_device;
- int enabled; /* reserved */
- int flags; /* reserved */
- int min_rate; /* Minimum sample rate */
- int max_rate; /* Maximum sample rate */
- int min_channels; /* Minimum number of channels */
- int max_channels; /* Maximum number of channels */
- int binding; /* reserved */
- int rate_source; /* reserved */
- char handle[32]; /* reserved */
- unsigned int nrates; /* reserved */
- unsigned int rates[20]; /* reserved */
- char song_name[64]; /* reserved */
- char label[16]; /* reserved */
- int latency; /* reserved */
-
- /* Device special file name (absolute path) */
- char devnode[32];
- int next_play_engine; /* reserved */
- int next_rec_engine; /* reserved */
- int filler[184]; /* reserved */
-} oss_audioinfo;
-.Ed
-.Pp
-In the above structure, all of the fields are reserved except the following:
-.Fa dev ,
-.Fa name ,
-.Fa card_number ,
-.Fa mixer_dev ,
-.Fa caps ,
-.Fa min_rate ,
-.Fa max_rate ,
-.Fa min_channels ,
-.Fa max_channels ,
-and
-.Fa devnode .
-The reserved fields are provided for compatibility with other OSS
-implementations, and available for legacy applications.
-New applications should not attempt to use these fields.
-.Pp
-The
-.Fa dev
-field should be initialized by the application to the number of
-the device to query.
-This is a number between zero (inclusive) and value of
-.Fa numaudios
-(exclusive) returned by
-.Dv SNDCTL_SYSINFO .
-Alternatively,
-when issuing the ioctl against a real mixer or
-.Sy dsp
-device, the special
-value
-.Sy -1
-can be used to indicate that the query is being made against the device opened.
-If
-.Sy -1
-is used, the field is overwritten with the device
-number for the current device on successful return.
-.Pp
-No other fields are significant upon entry, but a successful return contains
-details of the device.
-.Pp
-The
-.Fa name
-field is a human readable name representing the device.
-Applications should not try to interpret it.
-.Pp
-The
-.Fa card_number
-field indicates the number assigned to the aggregate device.
-This can be used with the
-.Dv SNDCTL_CARDINFO
-ioctl.
-.Pp
-The
-.Fa mixer_dev
-is the mixer device number for the mixing device associated
-with the audio device.
-This can be used with the
-.Dv SNDCTL_MIXERINFO
-ioctl.
-.Pp
-The
-.Fa caps
-field contains any of the bits
-.Dv PCM_CAP_INPUT ,
-.Dv PCM_CAP_OUTPUT ,
-and
-.Dv PCM_CAP_DUPLEX .
-Indicating whether the device
-support input, output, and whether input and output can be used simultaneously.
-All other bits are reserved.
-.Pp
-The
-.Fa min_rate
-and
-.Fa max_rate
-fields indicate the minimum and maximum sample rates supported by the device.
-Most applications should try to use the maximum supported rate for the best
-audio quality and lowest system resource consumption.
-.Pp
-The
-.Fa min_channels
-and
-.Fa max_channels
-provide an indication of the number of channels (1 for mono, 2 for stereo,
-6 for 5\&.1, etc\&.) supported by the device.
-.Pp
-The
-.Fa devnode
-field contains the actual full path to the device node for this device, such as
-.Pa /dev/sound/audio810:0dsp .
-Applications should open this file to access the device.
-.It Dv SNDCTL_CARDINFO
-The argument is a pointer to a
-.Vt struct oss_card_info ,
-which has the following definition:
-.Bd -literal -offset 2n
-typedef struct oss_card_info {
- int card;
- char shortname[16];
- char longname[128];
- int flags; /* reserved */
- char hw_info[400];
- int intr_count; /* reserved */
- int ack_count; /* reserved */
- int filler[154];
-} oss_card_info;
-.Ed
-.Pp
-This ioctl is used to query for information about the aggregate audio device.
-.Pp
-The
-.Fa card
-field should be initialized by the application to the number of
-the card to query.
-This is a number between zero
-.Pq inclusive
-and value of
-.Fa numcards
-.Pq exclusive
-returned by
-.Dv SNDCTL_SYSINFO .
-Alternatively,
-when issuing the ioctl against a real mixer or
-.Sy dsp
-device, the special value
-.Sy -1
-can be used to indicate that the query is being made against the device opened.
-If
-.Sy -1
-is used, the field is overwritten with the number
-for the current hardware device on successful return.
-.Pp
-The
-.Fa shortname ,
-.Fa longname ,
-and
-.Fa hw_info
-contain
-.Sy ASCIIZ
-strings describing the device in more detail.
-The
-.Fa hw_info
-member can contain multiple lines of detail, each line ending in a NEWLINE.
-.Pp
-The
-.Fa flag ,
-.Fa intr_count ,
-and
-.Fa ack_count
-fields are not used by this implementation.
-.It Dv SNDCTL_MIXERINFO
-The argument is a pointer to a
-.Vt struct oss_mixer_info ,
-which has the following definition:
-.Bd -literal -offset 2n
-typedef struct oss_mixerinfo {
- int dev;
- char id[16]; /* Reserved */
- char name[32];
- int modify_counter;
- int card_number;
- int port_number; /* Reserved */
- char handle[32]; /* Reserved */
- int magic; /* Reserved */
- int enabled; /* Reserved */
- int caps; /* Reserved */
- int flags; /* Reserved */
- int nrext;
- int priority;
-
- /* Deice special file name (absolute path) */
- char devnode[32];
- int legacy_device; /* Reserved */
- int filler[245]; /* Reserved */
-} oss_mixerinfo;
-.Ed
-.Pp
-In the above structure, all of the fields are reserved except the following:
-.Fa dev ,
-.Fa name ,
-.Fa modify_counter ,
-.Fa card_number ,
-.Fa nrext ,
-.Fa priority ,
-and
-.Fa devnode .
-The reserved fields are provided for compatibility with other
-OSS implementations, and available for legacy applications.
-New applications should not attempt to use these fields.
-.Pp
-The
-.Fa dev
-field should be initialized by the application to the number of
-the device to query.
-This is a number between zero inclusive and value of
-.Fa nummixers
-(exclusive) returned by
-.Dv SNDCTL_SYSINFO ,
-or by
-.Dv SNDCTL_MIX_NRMIX .
-Alternatively, when issuing the ioctl against a real mixer or
-.Sy dsp
-device, the special value
-.Sy -1
-can be used to indicate
-that the query is being made against the device opened.
-If
-.Sy -1
-is used,
-the field is overwritten with the mixer number for the current open file on
-successful return.
-.Pp
-No other fields are significant upon entry, but on successful return contains
-details of the device.
-.Pp
-The
-.Fa name
-field is a human readable name representing the device.
-Applications should not try to interpret it.
-.Pp
-The
-.Fa modify_counter
-is changed by the mixer framework each time the
-settings for the various controls or extensions of the device are changed.
-Applications can poll this value to learn if any other changes need to be
-searched for.
-.Pp
-The
-.Fa card_number
-field is the number of the aggregate audio device this
-mixer is located on.
-It can be used with the
-.Dv SNDCTL_CARDINFO
-ioctl.
-.Pp
-The
-.Fa nrext
-field is the number of mixer extensions available on this mixer.
-See the
-.Dv SNDCTL_MIX_NREXT
-description.
-.Pp
-The priority is used by the framework to assign a preference that applications
-can use in choosing a device.
-Higher values are preferable.
-Mixers with priorities less than -1 should never be selected by default.
-.Pp
-The
-.Fa devnode
-field contains the actual full path to the device node for
-the physical mixer, such as
-.Pa /dev/sound/audio810:0mixer .
-Applications
-should open this file to access the mixer settings.
-.El
-.Ss "Mixer Extension IOCTLs"
-The pseudo
-.Pa /dev/mixer
-device supports ioctls that can change the
-oarious settings for the audio hardware in the system.
-.Pp
-Those ioctls should only be used by dedicated mixer applications or desktop
-olumme controls, and not by typical ordinary audio applications such as media
-players.
-Ordinary applications that wish to adjust their own volume settings
-should use the
-.Dv SNDCTL_DSP_SETPLAYVOL
-or
-.Dv SNDCTL_DSP_SETRECVOL
-ioctls for that purpose.
-See
-.Xr dsp 7I
-for more information.
-Ordinary
-applications should never attempt to change master port selection or hardware
-settings such as monitor gain settings.
-.Pp
-The ioctls in this section can only be used to access the mixer device that is
-associated with the current file descriptor.
-.Pp
-Applications should not assume that a single
-.Pa /dev/mixer
-node is able to access any physical settings.
-Instead, they should use the ioctl
-.Dv SNDCTL_MIXERINFO
-to determine the device path for the real mixer device,
-and issue ioctls on a file descriptor opened against the corresponding
-.Fa devnode
-field.
-.Pp
-When a
-.Fa dev
-member is specified in each of the following ioctls, the
-application should specify
-.Sy -1 ,
-although for compatibility the mixer
-allows the application to specify the mixer device number.
-.Pp
-.Bl -tag -width SNDCTL_MIX_ENUMINFO -compact
-.It Dv SNDCTL_MIX_NRMIX
-The argument is a pointer to an integer, which receives the number of mixer
-devices in the system.
-Each can be queried by using its number with the
-.Dv SNDCTL_MIXERINFO
-ioctl.
-The same information is available using the
-.Fa SNDCTL_SYSINFO
-ioctl.
-.Pp
-.It Dv SNDCTL_MIX_NREXT
-The argument is a pointer to an integer.
-On entry, the integer should contain
-the special value
-.Sy -1 .
-On return the argument receives the number of mixer
-extensions (or mixer controls) supported by the mixer device.
-More details
-about each extension can be obtained by
-.Fa SNDCTL_MIX_EXTINFO
-ioctl.
-.Pp
-.It Dv SNDCTL_MIX_EXTINFO
-The argument is a pointer to an
-.Vt oss_mixext
-structure which is defined as follows:
-.Bd -literal -offset 2n
-typedef struct oss_mixext {
- int dev; /* Mixer device number */
- int ctrl; /* Extension number */
- int type; /* Entry type */
- int maxvalue;
- int minvalue;
- int flags;
- char id[16]; /* Mnemonic ID (internal use) */
- int parent; /* Entry# of parent (-1 if root) */
- int dummy; /* NOT SUPPORTED */
- int timestamp;
- char data[64]; /* Reserved */
-
- /* Mask of allowed enum values */
- unsigned char enum_present[32];
- int control_no; /* Reserved */
- unsigned int desc; /* NOT SUPPORTED */
- char extname[32];
- int update_counter;
- int filler[7]; /* Reserved */
-} oss_mixext;
-.Ed
-.Pp
-On entry, the
-.Fa dev
-field should be initialized to the value
-.Sy -1 ,
-and
-the
-.Fa ctrl
-field should be initialized with the number of the extension
-being accessed.
-Between 0, inclusive, and the value returned by
-.Dv SNDCTL_MIX_NREXT ,
-exclusive.
-.Pp
-Mixer extensions are organized as a logical tree, starting with a root node.
-The root node always has a
-.Fa ctrl
-value of zero.
-The structure of the tree can be determined by looking at the parent field,
-which contains the extension number of the parent extension, or
-.Sy -1
-if the extension is the root extension.
-.Pp
-The type indicates the type of extension used.
-This implementation supports the following values:
-.Bl -column -offset 2n "MIXT_STEREOSLIDER" "Enumerated value, 0 to maxvalue"
-.It Dv MIXT_DEVROOT Ta Root node for extension tree
-.It Dv MIXT_GROUP Ta Logical grouping of controls
-.It Dv MXIT_ONOFF Ta Boolean value, 0 = off, 1 = on.
-.It Dv MIXT_ENUM Ta Enumerated value, 0 to maxvalue.
-.It Dv MIXT_MONOSLIDER Ta Monophonic slider, 0 to 255.
-.It Dv MIXT_STEREOSLIDER Ta Stereophonic slider, 0 to 255 (encoded as lower two bytes in value.)
-.It Dv MIXT_MARKER Ta Place holder, can ignore.
-.El
-.Pp
-The flags field is a bit array.
-This implementation makes use of the following
-possible bits:
-.Bl -column -offset 2n "MIXF_WRITEABLE" "Extensions value is modifiable"
-.It Dv MIXF_READABLE Ta Extension's value is readable.
-.It Dv MIXF_WRITEABLE Ta Extension's value is modifiable.
-.It Dv MIXF_POLL Ta Extension can self-update.
-.It Dv MIXF_PCMVOL Ta Extension is for master PCM playback volume.
-.It Dv MIXF_MAINVOL Ta Extension is for a typical analog volume
-.It Dv MIXF_RECVOL Ta Extension is for master record gain.
-.It Dv MIXF_MONVOL Ta Extension is for a monitor source's gain.
-.El
-.Pp
-The
-.Fa id
-field contains an
-.Sy ASCIIZ
-identifier for the extension.
-.Pp
-The timestamp field is set when the extension tree is first initialized.
-Applications must use the same timestamp value when attempting to change the
-values.
-A change in the timestamp indicates a change a in the structure of the
-extension tree.
-.Pp
-The
-.Fa enum_present
-field is a bit mask of possible enumeration values.
-If a
-bit is present in the
-.Fa enum_present
-mask, then the corresponding enumeration value is legal.
-The mask is in little endian order.
-.Pp
-The
-.Fa desc
-field provides information about scoping, which can be useful as
-layout hints to applications.
-The following hints are available:
-.Bl -column -offset 2n "MIXEXT_SCOPE_MONITOR" "No scoping hint provided."
-.It Dv MIXEXT_SCOPE_MASK Ta Mask of possible scope values.
-.It Dv MIXEXT_SCOPE_INPUT Ta Extension is an input control.
-.It Dv MIXEXT_SCOPE_OUTPUT Ta Extension is an output control.
-.It Dv MIXEXT_SCOPE_MONITOR Ta Extension relates to input monitoring.
-.It Dv MIXEXT_SCOPE_OTHER Ta No scoping hint provided.
-.El
-.Pp
-The
-.Fa extname
-is the full name of the extension.
-.Pp
-The
-.Fa update_counter
-is incremented each time the control's value is changed.
-.Pp
-.It Dv SNDCTL_MIX_ENUMINFO
-The argument is a pointer to an
-.Vt oss_mixer_enuminfo
-structure, which is defined as follows:
-.Bd -literal -offset 2n
-typedef struct oss_mixer_enuminfo {
- int dev;
- int ctrl;
- int nvalues;
- int version;
- short strindex[255];
- char strings[3000];
-} oss_mixer_enuminfo;
-.Ed
-.Pp
-On entry, the
-.Fa dev
-field should be initialized to the value
-.Sy -1 ,
-and
-the
-.Fa ctrl
-field should be initialized with the number of the extension being accessed.
-Between 0, inclusive, and the value returned by
-.Dv SNDCTL_MIX_NREXT ,
-exclusive.
-.Pp
-On return the
-.Fa nvalues
-field contains the number of values, and
-.Fa strindex
-contains an array of indices into the strings member, each index
-pointing to an
-.Sy ASCIIZ
-describing the enumeration value.
-.Pp
-.It Dv SNDCTL_MIX_READ
-.It Dv SNDCTL_MIX_WRITE
-The argument is a pointer to an
-.Vt oss_mixer_value
-structure, defined as follows:
-.Bd -literal -offset 2n
-typedef struct oss_mixer_value {
- int dev;
- int ctrl;
- int value;
-
- /* Reserved for future use. Initialize to 0 */
- int flags;
-
- /* Must be set to oss_mixext.timestamp */
- int timestamp;
-
- /* Reserved for future use. Initialize to 0 */
- int filler[8];
-} oss_mixer_value;
-.Pp
-.Ed
-On entry, the
-.Fa dev
-field should be initialized to the value
-.Sy -1 ,
-and the
-.Fa ctrl
-field should be initialized with the number of the extension
-being accessed.
-Between 0, inclusive, and the value returned by
-.Dv SNDCTL_MIX_NREXT ,
-exclusive.
-Additionally, the timestamp member must be
-initialized to the same value as was supplied in the
-.Vt oss_mixext
-structure
-used with
-.Dv SNDCTL_MIX_EXTINFO .
-.Pp
-For
-.Dv SNDCTL_MIX_WRITE ,
-the application should supply the new value for the extension.
-For
-.Dv SNDCTL_MIX_READ ,
-the mixer returns the extensions current value in value.
-.El
-.Ss "Compatibility IOCTLs"
-The following ioctls are for compatibility use only:
-.Pp
-.Bl -tag -offset 2n -width SNDCTL_MIX_ENUMINFO -compact
-.It Dv SOUND_MIXER_READ_VOLUME
-.It Dv SOUND_MIXER_READ_PCM
-.It Dv SOUND_MIXER_READ_OGAIN
-.It Dv SOUND_MIXER_READ_RECGAIN
-.It Dv SOUND_MIXER_READ_RECLEV
-.It Dv SOUND_MIXER_READ_IGAIN
-.It Dv SOUND_MIXER_READ_RECSRC
-.It Dv SOUND_MIXER_READ_RECMASK
-.It Dv SOUND_MIXER_READ_DEVMASK
-.It Dv SOUND_MIXER_READ_STEREODEVS
-.It Dv SOUND_MIXER_WRITE_VOLUME
-.It Dv SOUND_MIXER_WRITE_PCM
-.It Dv SOUND_MIXER_WRITE_OGAIN
-.It Dv SOUND_MIXER_WRITE_RECGAIN
-.It Dv SOUND_MIXER_WRITE_RECLEV
-.It Dv SOUND_MIXER_WRITE_IGAIN
-.It Dv SOUND_MIXER_WRITE_RECSRC
-.It Dv SOUND_MIXER_WRITE_RECMASK
-.It Dv SOUND_MIXER_INFO
-.It Dv SNDCTL_AUDIOINFO_EX
-.It Dv SNDCTL_ENGINEINFO
-.El
-.Pp
-These ioctls can affect the software volume levels associated with the calling
-process.
-They have no effect on the physical hardware levels or settings.
-They should not be used in new applications.
-.Sh FILES
-.Bl -tag -width /dev/sndstat
-.It Pa /dev/mixer
-Symbolic link to the pseudo mixer device for the system
-.It Pa /dev/sndstat
-Sound status device
-.El
-.Sh ERRORS
-An
-.Xr ioctl 2
-fails if:
-.Bl -tag -width EINVAL
-.It Er EINVAL
-The parameter changes requested in the ioctl are invalid or are not supported
-by the device.
-.It Er ENXIO
-The device or extension referenced does not exist.
-.El
-.Sh ARCHITECTURE
-SPARC
-x86
-.Sh INTERFACE STABILITY
-The information and mixer extension IOCTLs are Uncommitted.
-The Compatibility IOCTLs are Obsolete Uncommitted.
-The extension names are Uncommitted.
-.Sh SEE ALSO
-.Xr close 2 ,
-.Xr ioctl 2 ,
-.Xr open 2 ,
-.Xr read 2 ,
-.Xr attributes 5 ,
-.Xr dsp 7I
-.Sh BUGS
-The names of mixer extensions are not guaranteed to be predictable.
diff --git a/usr/src/man/man7i/mtio.7i b/usr/src/man/man7i/mtio.7i
deleted file mode 100644
index bea7b77ce6..0000000000
--- a/usr/src/man/man7i/mtio.7i
+++ /dev/null
@@ -1,1190 +0,0 @@
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 2018, Joyent, Inc.
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.Dd August 28, 2021
-.Dt MTIO 7I
-.Os
-.Sh NAME
-.Nm mtio
-.Nd general magnetic tape interface
-.Sh SYNOPSIS
-.In sys/types.h
-.In sys/ioctl.h
-.In sys/mtio.h
-.Sh DESCRIPTION
-1/2", 1/4", 4mm, and 8mm magnetic tape drives all share the same general
-character device interface.
-.Pp
-There are two types of tape records: data records and end-of-file (EOF)
-records.
-.Sy EOF
-records are also known as tape marks and file marks.
-A record is separated by interrecord (or tape) gaps on a tape.
-.Pp
-End-of-recorded-media (EOM) is indicated by two
-.Sy EOF
-marks on 1/2\(dq tape; by one
-.Sy EOF
-mark on 1/4\(dq, 4mm, and 8mm cartridge tapes.
-.Ss "1/2\(dq Reel Tape"
-Data bytes are recorded in parallel onto the 9-track tape.
-Since it is a
-variable-length tape device, the number of bytes in a physical record may vary.
-.Pp
-The recording formats available (check specific tape drive) are 800
-.Sy BPI ,
-1600
-.Sy BPI ,
-6250
-.Sy BPI ,
-and data compression.
-Actual storage capacity is a function of the recording format and the length of the tape reel.
-For example, using a 2400 foot tape, 20 Mbyte can be stored using 800
-.Sy BPI ,
-40 Mbyte using 1600
-.Sy BPI ,
-140 Mbyte using 6250
-.Sy BPI ,
-or up to 700 Mbyte using data compression.
-.Ss "1/4\(dq Cartridge Tape"
-Data is recorded serially onto 1/4\(dq cartridge tape.
-The number of bytes per
-record is determined by the physical record size of the device.
-The I/O request
-size must be a multiple of the physical record size of the device.
-For
-.Sy QIC-11 ,
-.Sy QIC-24 ,
-and
-.Sy QIC-150
-tape drives, the block size is 512 bytes.
-.Pp
-The records are recorded on tracks in a serpentine motion.
-As one track is
-completed, the drive switches to the next and begins writing in the opposite
-direction, eliminating the wasted motion of rewinding.
-Each file, including the last, ends with one file mark.
-.Pp
-Storage capacity is based on the number of tracks the drive is capable of
-recording.
-For example, 4-track drives can only record 20 Mbyte of data on a
-450 foot tape; 9-track drives can record up to 45 Mbyte of data on a tape of
-the same length.
-.Sy QIC-11
-is the only tape format available for 4-track
-tape drives.
-In contrast, 9-track tape drives can use either
-.Sy QIC-24
-or
-.Sy QIC-11 .
-Storage capacity is not appreciably affected by using either format.
-.Sy QIC-24
-is preferable to
-.Sy QIC-11
-because it records a
-reference signal to mark the position of the first track on the tape, and each
-block has a unique block number.
-.Pp
-The
-.Sy QIC-150
-tape drives require
-.Sy DC-6150
-(or equivalent) tape cartridges for writing.
-However, they can read other tape cartridges in
-.Sy QIC-11 ,
-.Sy QIC-24 ,
-or
-.Sy QIC-120
-tape formats.
-.Ss "8mm Cartridge Tape"
-Data is recorded serially onto 8mm helical scan cartridge tape.
-Since it is a
-variable-length tape device, the number of bytes in a physical record may
-vary.
-The recording formats available (check specific tape drive) are standard
-2Gbyte, 5Gbyte, and compressed format.
-.Ss "4mm DAT Tape"
-Data is recorded either in Digital Data Storage (DDS) tape format or in Digital
-Data Storage, Data Compressed (DDS-DC) tape format.
-Since it is a
-variable-length tape device, the number of bytes in a physical record may vary.
-The recording formats available are standard 2Gbyte and compressed format.
-.Ss "Persistent Error Handling"
-Persistent error handling is a modification of the current error handling
-behaviors, BSD and SVR4.
-With persistent error handling enabled, all tape
-operations after an error or exception will return immediately with an error.
-Persistent error handling can be most useful with asynchronous tape operations
-that use the
-.Xr aioread 3C
-and
-.Xr aiowrite 3C
-functions.
-.Pp
-To enable persistent error handling, the ioctl
-.Dv MTIOCPERSISTENT
-must be issued.
-If this ioctl succeeds, then persistent error handling is enabled and
-changes the current error behavior.
-This ioctl will fail if the device driver
-does not support persistent error handling.
-.Pp
-With persistent error handling enabled, all tape operations after an exception
-or error will return with the same error as the first command that failed; the
-operations will not be executed.
-An exception is some event that might stop
-normal tape operations, such as an End Of File (EOF) mark or an End Of Tape
-(EOT) mark.
-An example of an error is a media error.
-The
-.Dv MTIOCLRERR
-ioctl must be issued to allow normal tape operations to continue and to clear
-the error.
-.Pp
-Disabling persistent error handling returns the error behavior to normal SVR4
-error handling, and will not occur until all outstanding operations are
-completed.
-Applications should wait for all outstanding operations to complete
-before disabling persistent error handling.
-Closing the device will also
-disable persistent error handling and clear any errors or exceptions.
-.Pp
-The
-.Sx Read Operation
-and
-.Sx Write Operation
-subsections contain more pertinent information regarding persistent error handling.
-.Ss "Read Operation"
-The
-.Xr read 2
-function reads the next record on the tape.
-The record size is passed back as the number of bytes read, provided it is not
-greater than the number requested.
-When a tape mark or end of data is read, a zero byte count is
-returned; all successive reads after the zero read will return an error and
-.Va errno
-will be set to
-.Er EIO .
-To move to the next file, an
-.Dv MTFSF
-ioctl can be issued before or after the read causing the error.
-This error
-handling behavior is different from the older
-.Sy BSD
-behavior, where another read will fetch the first record of the next tape file.
-If the
-.Sy BSD
-behavior is required, device names containing the letter
-.Ql b
-(for
-.Sy BSD
-behavior) in the final component should be used.
-If persistent error handling
-was enabled with either the BSD or SVR4 tape device behavior, all operations
-after this read error will return
-.Er EIO
-errors until the
-.Dv MTIOCLRERR
-ioctl is issued.
-An
-.Dv MTFSF
-ioctl can then he issued.
-.Pp
-Two successful successive reads that both return zero byte counts indicate
-.Sy EOM
-on the tape.
-No further reading should be performed past the
-.Sy EOM .
-.Pp
-Fixed-length I/O tape devices require the number of bytes read to be a multiple
-of the physical record size.
-For example, 1/4\(dq cartridge tape devices only read
-multiples of 512 bytes.
-If the blocking factor is greater than 64,512 bytes
-(minphys limit), fixed-length I/O tape devices read multiple records.
-.Pp
-Most tape devices which support variable-length I/O operations may read a range
-of 1 to 65,535 bytes.
-If the record size exceeds 65,535 bytes, the driver reads
-multiple records to satisfy the request.
-These multiple records are limited to
-65,534 bytes.
-Newer variable-length tape drivers may relax the above limitation
-and allow applications to read record sizes larger than 65,534.
-Refer to the
-specific tape driver man page for details.
-.Pp
-Reading past logical
-.Sy EOT
-is transparent to the user.
-A read operation
-should never hit physical EOT.
-.Pp
-Read requests that are lesser than a physical tape record are not allowed.
-Appropriate error is returned.
-.Ss "Write Operation"
-The
-.Xr write 2
-function writes the next record on the tape.
-The record has
-the same length as the given buffer.
-.Pp
-Writing is allowed on 1/4" tape at either the beginning of tape or after the
-last written file on the tape.
-With the Exabyte 8200, data may be appended only
-at the beginning of tape, before a filemark, or after the last written file on
-the tape.
-.Pp
-Writing is not so restricted on 1/2\(dq, 4mm, and the other 8mm cartridge tape
-drives.
-Care should be used when appending files onto 1/2\(dq reel tape devices,
-since an extra file mark is appended after the last file to mark the
-.Sy EOM .
-This extra file mark must be overwritten to prevent the creation of a null file.
-To facilitate write append operations, a space to the
-.Sy EOM
-ioctl is provided.
-Care should be taken when overwriting records; the erase head is just
-forward of the write head and any following records will also be erased.
-.Pp
-Fixed-length I/O tape devices require the number of bytes written to be a
-multiple of the physical record size.
-For example, 1/4\(dq cartridge tape devices
-only write multiples of 512 bytes.
-.Pp
-Fixed-length I/O tape devices write multiple records if the blocking factor is
-greater than 64,512 bytes (minphys limit).
-These multiple writes are limited to
-64,512 bytes.
-For example, if a write request is issued for 65,536 bytes using
-a 1/4\(dq cartridge tape, two writes are issued; the first for 64,512 bytes and
-the second for 1024 bytes.
-.Pp
-Most tape devices which support variable-length I/O operations may write a
-range of 1 to 65,535 bytes.
-If the record size exceeds 65,535 bytes, the driver
-writes multiple records to satisfy the request.
-These multiple records are
-limited to 65,534 bytes.
-As an example, if a write request for 65,540 bytes is
-issued, two records are written; one for 65,534 bytes followed by another
-record for 6 bytes.
-Newer variable-length tape drivers may relax the above
-limitation and allow applications to write record sizes larger than 65,534.
-effer to the specific tape driver man page for details.
-.Pp
-When logical
-.Sy EOT
-is encountered during a write, that write operation
-completes and the number of bytes successfully transferred is returned (note
-that a 'short write' may have occurred and not all the requested bytes would
-have been transferred.
-The actual amount of data written will depend on the
-type of device being used).
-The next write will return a zero byte count.
-A third write will successfully transfer some bytes (as indicated by the
-returned byte count, which again could be a short write); the fourth will
-transfer zero bytes, and so on, until the physical
-.Sy EOT
-is reached and all writes will
-fail with
-.Er EIO .
-.Pp
-When logical
-.Sy EOT
-is encountered with persistent error handling enabled,
-the current write may complete or be a short write.
-The next write will return a zero byte count.
-At this point an application should act appropriately for
-end of tape cleanup or issue yet another write, which will return the error
-.Er ENOSPC .
-After clearing the exception with
-.Dv MTIOCLRERR ,
-the next write will succeed (possibly short), followed by another zero byte
-write count, and then another
-.Er ENOSPC
-error.
-.Pp
-Allowing writes after
-.Sy EOT
-has been encountered enables the flushing of buffers.
-However, it is strongly recommended to terminate the writing and close
-the file as soon as possible.
-.Pp
-Seeks are ignored in tape I/O.
-.Ss "Close Operation"
-Magnetic tapes are rewound when closed, except when the "no-rewind" devices
-have been specified.
-The names of no-rewind device files use the letter
-.Ql n
-as the end of the final component.
-The no-rewind version of
-.Pa /dev/rmt/0l
-is
-.Pa /dev/rmt/0ln .
-In case of error for a no-rewind device, the next open rewinds the device.
-.Pp
-If the driver was opened for reading and a no-rewind device has been specified,
-the close advances the tape past the next filemark (unless the current file
-position is at
-.Sy EOM ) ,
-leaving the tape correctly positioned to read the first record of the next file.
-However, if the tape is at the first record of a
-file it doesn't advance again to the first record of the next file.
-These semantics are different from the older
-.Sy BSD
-behavior.
-If
-.Sy BSD
-behavior is required where no implicit space operation is executed on close,
-the non-rewind device name containing the letter
-.Ql b
-(for
-.Sy BSD
-behavior) in the final component should be specified.
-.Pp
-If data was written, a file mark is automatically written by the driver upon
-close.
-If the rewinding device was specified, the tape will be rewound after
-the file mark is written.
-If the user wrote a file mark prior to closing, then
-no file mark is written upon close.
-If a file positioning ioctl, like rewind,
-is issued after writing, a file mark is written before repositioning the tape.
-.Pp
-All buffers are flushed on closing a tape device.
-Hence, it is strongly recommended that the application wait for all buffers to
-be flushed before closing the device.
-This can be done by writing a filemark via
-.Dv MTWEOF ,
-even with a zero count.
-.Pp
-Note that for 1/2\(dq reel tape devices, two file marks are written to mark the
-.Sy EOM
-before rewinding or performing a file positioning ioctl.
-If the user
-wrote a file mark before closing a 1/2\(dq reel tape device, the driver will
-always write a file mark before closing to insure that the end of recorded
-media is marked properly.
-If the non-rewinding device was specified, two file
-marks are written and the tape is left positioned between the two so that the
-second one is overwritten on a subsequent
-.Xr open 2
-and
-.Xr write 2 .
-.Pp
-If no data was written and the driver was opened for
-.Sy WRITE-ONLY
-access, one or two file marks are written, thus creating a null file.
-.Pp
-After closing the device, persistent error handling will be disabled and any
-error or exception will be cleared.
-.Sh IOCTLS
-Not all devices support all
-.Sy ioctls .
-The driver returns an
-.Er ENOTTY
-error on unsupported ioctls.
-.Pp
-The following structure definitions for magnetic tape
-.Xr ioctl 2
-commands are from
-.In sys/mtio.h .
-.Pp
-The minor device byte structure is:
-.Bd -literal
-15 7 6 5 4 3 2 1 0
-________________________________________________________________________
-Unit # BSD Reserved Density Density No rewind Unit #
-Bits 7-15 behavior Select Select on Close Bits 0-1
-.Ed
-.Bd -literal
-/*
- * Layout of minor device byte:
- */
-#define MTUNIT(dev) (((minor(dev) & 0xff80) >> 5) + (minor(dev) & 0x3))
-#define MT_NOREWIND (1 <<2)
-#define MT_DENSITY_MASK (3 <<3)
-#define MT_DENSITY1 (0 <<3) /* Lowest density/format */
-#define MT_DENSITY2 (1 <<3)
-#define MT_DENSITY3 (2 <<3)
-#define MT_DENSITY4 (3 <<3) /* Highest density/format */
-#define MTMINOR(unit) (((unit & 0x7fc) << 5) + (unit & 0x3))
-#define MT_BSD (1 <<6) /* BSD behavior on close */
-
-/* Structure for MTIOCTOP - magnetic tape operation command */
-
-struct mtop {
- short mt_op; /* operation */
- daddr_t mt_count; /* number of operations */
-};
-
-/* Structure for MTIOCLTOP - magnetic tape operation command */
-Works exactly like MTIOCTOP except passes 64 bit mt_count values.
-struct mtlop {
- short mt_op;
- short pad[3];
- int64_t mt_count;
-};
-.Ed
-.Pp
-The following operations of
-.Dv MTIOCTOP
-and
-.Dv MTIOCLTOP
-ioctls are supported:
-.Pp
-.Bl -tag -width MTIOCGETERROR -compact -offset 2n
-.It Dv MTWEOF
-Write an end-of-file record
-.It Dv MTFSF
-Forward space over file mark
-.It Dv MTBSF
-Backward space over file mark (1/2", 8mm only)
-.It Dv MTFSR
-Forward space to inter-record gap
-.It Dv MTBSR
-Backward space to inter-record gap
-.It Dv MTREW
-Rewind
-.It Dv MTOFFL
-Rewind and take the drive off-line
-.It Dv MTNOP
-No operation, sets status only
-.It Dv MTRETEN
-Retension the tape (cartridge tape only)
-.It Dv MTERASE
-Erase the entire tape and rewind
-.It Dv MTEOM
-Position to EOM
-.It Dv MTNBSF
-Backward space file to beginning of file
-.It Dv MTSRSZ
-Set record size
-.It Dv MTGRSZ
-Get record size
-.It Dv MTTELL
-Get current position
-.It Dv MTSEEK
-Go to requested position
-.It Dv MTFSSF
-Forward to requested number of sequential file marks
-.It Dv MTBSSF
-Backward to requested number of sequential file marks
-.It Dv MTLOCK
-Prevent media removal
-.It Dv MTUNLOCK
-Allow media removal
-.It Dv MTLOAD
-Load the next tape cartridge into the tape drive
-.It Dv MTIOCGETERROR
-Retrieve error records from the st driver
-.El
-.Bd -literal -offset 2n
-/* structure for MTIOCGET - magnetic tape get status command */
-
-struct mtget {
- short mt_type; /* type of magtape device */
-
- /* the following two registers are device dependent */
- short mt_dsreg; /* "drive status" register */
- short mt_erreg; /* "error" register */
-
- /* optional error info. */
- daddr_t mt_resid; /* residual count */
- daddr_t mt_fileno; /* file number of current position */
- daddr_t mt_blkno; /* block number of current position */
- ushort_t mt_flags;
- short mt_bf; /* optimum blocking factor */
-};
-
-/* structure for MTIOCGETDRIVETYPE - get tape config data command */
-struct mtdrivetype_request {
- int size;
- struct mtdrivetype *mtdtp;
-};
-struct mtdrivetype {
- char name[64]; /* Name, for debug */
- char vid[25]; /* Vendor id and product id */
- char type; /* Drive type for driver */
- int bsize; /* Block size */
- int options; /* Drive options */
- int max_rretries; /* Max read retries */
- int max_wretries; /* Max write retries */
- uchar_t densities[MT_NDENSITIES]; /* density codes,low->hi */
- uchar_t default_density; /* Default density chosen */
- uchar_t speeds[MT_NSPEEDS]; /* speed codes, low->hi */
- ushort_t non_motion_timeout; /* Seconds for non-motion */
- ushort_t io_timeout; /* Seconds for data to from tape */
- ushort_t rewind_timeout; /* Seconds to rewind */
- ushort_t space_timeout; /* Seconds to space anywhere */
- ushort_t load_timeout; /* Seconds to load tape and ready */
- ushort_t unload_timeout; /* Seconds to unload */
- ushort_t erase_timeout; /* Seconds to do long erase */
-};
-.Ed
-.Bd -literal -offset 2n
-/* structure for MTIOCGETPOS and MTIOCRESTPOS - get/set tape position */
-/*
- * eof/eot/eom codes.
- */
- typedef enum {
- ST_NO_EOF,
- ST_EOF_PENDING, /* filemark pending */
- ST_EOF, /* at filemark */
- ST_EOT_PENDING, /* logical eot pend. */
- ST_EOT, /* at logical eot */
- ST_EOM, /* at physical eot */
- ST_WRITE_AFTER_EOM /* flag allowing writes after EOM */
-} pstatus;
-
-typedef enum { invalid, legacy, logical } posmode;
-
-typedef struct tapepos {
- uint64_t lgclblkno; /* Blks from start of partition */
- int32_t fileno; /* Num. of current file */
- int32_t blkno; /* Blk number in current file */
- int32_t partition; /* Current partition */
- pstatus eof; /* eof states */
- posmode pmode; /* which pos. data is valid */
- char pad[4];
-} tapepos_t;
-.Ed
-.Pp
-.Bd -ragged -compact
-If the
-.Fa pmode
-is legacy,
-.Fa fileno
-and
-.Fa blkno
-fields are valid.
-.Pp
-If the
-.Fa pmode
-is logical,
-.Fa lgclblkno
-field is valid.
-.Ed
-.Pp
-The
-.Dv MTWEOF
-ioctl is used for writing file marks to tape.
-Not only does
-this signify the end of a file, but also usually has the side effect of
-flushing all buffers in the tape drive to the tape medium.
-A zero count
-.Dv MTWEOF
-will just flush all the buffers and will not write any file marks.
-Because a successful completion of this tape operation will guarantee that all
-tape data has been written to the tape medium, it is recommended that this tape
-operation be issued before closing a tape device.
-.Pp
-When spacing forward over a record (either data or
-.Sy EOF ) ,
-the tape head is
-positioned in the tape gap between the record just skipped and the next record.
-When spacing forward over file marks (EOF records), the tape head is positioned
-in the tape gap between the next
-.Sy EOF
-record and the record that follows it.
-.Pp
-When spacing backward over a record (either data or
-.Sy EOF ) ,
-the tape head is positioned in the tape gap immediately preceding the tape
-record where the tape head is currently positioned.
-When spacing backward over file marks (EOF records), the tape head is
-positioned in the tape gap preceding the
-.Sy EOF .
-Thus the next read would fetch the
-.Sy EOF .
-.Pp
-Record skipping does not go past a file mark; file skipping does not go past
-the
-.Sy EOM .
-After an
-.Dv MTFSR
-<huge number> command, the driver leaves
-the tape logically positioned
-.Em before
-the
-.Sy EOF .
-A related feature is that
-.Sy EOF Ns s
-remain pending until the tape is closed.
-For example, a program
-which first reads all the records of a file up to and including the \fBEOF\fR
-and then performs an
-.Dv MTFSF
-command will leave the tape positioned just
-after that same
-.Sy EOF ,
-rather than skipping the next file.
-.Pp
-The
-.Dv MTNBSF
-and
-.Dv MTFSF
-operations are inverses.
-Thus, an
-.Dq Dv MTFSF \(mi1
-is equivalent to an
-.Dq Dv MTNBSF 1 .
-An
-.Dq Dv MTNBSF 0
-is the same as
-.Dq Dv MTFSF 0 ;
-both position the tape device at the beginning of the current file.
-.Pp
-.Dv MTBSF
-moves the tape backwards by file marks.
-The tape position will end
-on the beginning of the tape side of the desired file mark.
-An
-.Dq Dv MTBSF 0
-will position the tape at the end of the current file, before the filemark.
-.Pp
-.Dv MTBSR
-and
-.Dv MTFSR
-operations perform much like space file operations,
-except that they move by records instead of files.
-Variable-length I/O devices
-(1/2\(dq reel, for example) space actual records; fixed-length I/O devices space
-physical records (blocks).
-1/4\(dq cartridge tape, for example, spaces 512 byte
-physical records.
-The status ioctl residual count contains the number of files
-or records not skipped.
-.Pp
-.Dv MTFSSF
-and
-.Dv MTBSSF
-space forward or backward, respectively, to the next
-occurrence of the requested number of file marks, one following another.
-If there are more sequential file marks on tape than were requested, it spaces
-over the requested number and positions after the requested file mark.
-Note that not all drives support this command and if a request is sent to a
-drive that does not,
-.Er ENOTTY
-is returned.
-.Pp
-.Dv MTOFFL
-rewinds and, if appropriate, takes the device off-line by unloading the tape.
-It is recommended that the device be closed after offlining
-and then re-opened after a tape has been inserted to facilitate portability to
-other platforms and other operating systems.
-Attempting to re-open the device
-with no tape will result in an error unless the
-.Dv O_NDELAY
-flag is used.
-.Po
-See
-.Xr open 2 .
-.Pc
-.Pp
-The
-.Dv MTRETEN
-retension ioctl applies only to 1/4\(dq cartridge tape devices.
-It is used to restore tape tension, improving the tape's soft error rate after
-extensive start-stop operations or long-term storage.
-.Pp
-.Dv MTERASE
-rewinds the tape, erases it completely, and returns to the
-beginning of tape.
-Erasing may take a long time depending on the device and/or
-tapes.
-For time details, refer to the drive specific manual.
-.Pp
-.Dv MTEOM
-positions the tape at a location just after the last file written
-on the tape.
-For 1/4\(dq cartridge and 8mm tape, this is after the last file mark
-on the tape.
-For 1/2\(dq reel tape, this is just after the first file mark but
-before the second (and last) file mark on the tape.
-Additional files can then
-be appended onto the tape from that point.
-.Pp
-Note the difference between
-.Dv MTBSF
-(backspace over file mark) and
-.Dv MTNBSF
-(backspace file to beginning of file).
-The former moves the tape
-backward until it crosses an
-.Sy EOF
-mark, leaving the tape positioned
-.Em before
-the file mark.
-The latter leaves the tape positioned
-.Em after
-the file mark.
-Hence,
-.Dq Dv MTNBSF n
-is equivalent to
-.Dq Dv MTBSF (n+1)
-followed by
-.Dq Dv MTFSF 1 .
-The 1/4\(dq cartridge tape devices do not support
-.Dv MTBSF .
-.Pp
-.Dv MTSRSZ
-and
-.Dv MTGRSZ
-are used to set and get fixed record lengths.
-The
-.Dv MTSRSZ
-ioctl allows variable length and fixed length tape drives that
-support multiple record sizes to set the record length.
-The
-.Fa mt_count
-field of the
-.Vt mtop
-struct is used to pass the record size to/from the
-.Xr st 7D
-driver.
-A value of
-.Ql 0
-indicates variable record size.
-The
-.Dv MTSRSZ
-ioctl makes a variable-length tape device behave like a
-fixed-length tape device.
-Refer to the specific tape driver man page for
-details.
-.Pp
-.Dv MTLOAD
-loads the next tape cartridge into the tape drive.
-This is generally only used with stacker and tower type tape drives which handle
-multiple tapes per tape drive.
-A tape device without a tape inserted can be
-opened with the
-.Dv O_NDELAY
-flag, in order to execute this operation.
-.Pp
-.Dv MTIOCGETERROR
-allows user-level applications to retrieve error records
-from the
-.Xr st 7D
-driver.
-An error record consists of the SCSI command cdb
-which causes the error and a
-.Xr scsi_arq_status 9S
-structure if available.
-The user-level application is responsible for allocating and releasing the
-memory for
-.Fa mtee_cdb_buf
-and
-.Fa scsi_arq_status of each
-.Vt mterror_entry .
-Before issuing the ioctl, the
-.Fa mtee_arq_status_len
-value should be at least equal to
-.Ql sizeof (struct scsi_arq_status) .
-If more sense data than the size of
-.Xr scsi_arq_status 9S
-is desired, the
-.Fa mtee_arq_status_len
-may be larger than
-.Ql sizeof (struct scsi_arq_status)
-by the amount of additional extended sense data desired.
-The
-.Fa es_add_len
-field of
-.Xr scsi_extended_sense 9S
-can be used to determine the amount of valid sense data returned by the device.
-.Pp
-The
-.Dv MTIOCGET
-get status
-.Xr ioctl 2
-call returns the drive ID
-.Pq Fa mt_type ,
-sense key error
-.Pq Fa mt_erreg ,
-file number
-.Pq Fa mt_fileno ,
-optimum blocking factor
-.Pq Fa mt_bf
-and record number
-.Pq Fa mt_blkno
-of the last error.
-The residual count
-.Pq Fa mt_resid
-is set to the number of bytes not transferred or files/records not spaced.
-The flags word
-.Pq Fa mt_flags
-contains information indicating if the device is SCSI, if the device is a reel
-device and whether the device supports absolute file positioning.
-The
-.Fa mt_flags
-also indicates if the device is requesting cleaning media be used, whether the
-device is capable of reporting the requirement of cleaning media and if the
-currently loaded media is WORM (Write Once Read Many) media.
-.Pp
-Note \(em When tape alert cleaning is managed by the st driver, the tape
-target driver may continue to return a
-.Dq drive needs cleaning
-status unless an
-.Dv MTIOCGE
-.Xr ioctl 2
-call is made while the cleaning media is in the drive.
-.Pp
-The
-.Dv MTIOCGETDRIVETYPE
-get drivetype ioctl call returns the name of the
-tape drive as defined in
-.Pa st.conf
-.Pq Fa name ,
-Vendor
-.Sy ID
-and model
-.Pq Fa product ,
-.Sy ID
-.Pq Fa vid ,
-type of tape device
-.Pq Fa type ,
-block size
-.Pq Fa size ,
-drive options
-.Pq Fa options ,
-maximum read retry count
-.Pq Fa max_rretries ,
-maximum write retry count
-.Pq Fa max_wretries ,
-densities supported by the drive
-.Pq Fa densities ,
-and default density of the tape drive
-.Pq Fa default_density .
-.Pp
-The
-.Dv MTIOCGETPOS
-ioctl returns the current tape position of the drive.
-It is returned in struct tapepos as defined in
-.Pa /usr/include/sys/scsi/targets/stdef.h .
-.Pp
-The
-.Dv MTIOCRESTPOS
-ioctl restores a saved position from the
-.Dv MTIOCGETPOS .
-.Ss "Persistent Error Handling IOCTLs and Asynchronous Tape Operations"
-.Bl -tag -width MTIOCPERSISTENTSTATUS -compact
-.It Dv MTIOCPERSISTENT
-enables/disables persistent error handling
-.It Dv MTIOCPERSISTENTSTATUS
-queries for persistent error handling
-.It Dv MTIOCLRERR
-clears persistent error handling
-.It Dv MTIOCGUARANTEEDORDER
-checks whether driver guarantees order of I/O's
-.El
-.Pp
-The
-.Dv MTIOCPERSISTENT
-ioctl enables or disables persistent error handling.
-It takes as an argument a pointer to an integer that turns it either on or off.
-If the ioctl succeeds, the desired operation was successful.
-It will wait for
-all outstanding I/O's to complete before changing the persistent error handling
-status.
-For example,
-.Bd -literal -offset 2n
-int on = 1;
-ioctl(fd, MTIOCPERSISTENT, &on);
-int off = 0;
-ioctl(fd, MTIOCPERSISTENT, &off);
-.Ed
-.Pp
-The
-.Dv MTIOCPERSISTENTSTATUS
-ioctl enables or disables persistent error
-handling.
-It takes as an argument a pointer to an integer inserted by the
-driver.
-The integer can be either 1 if persistent error handling is
-.Sq on ,
-or 0 if persistent error handling is
-.Sq off .
-It will not wait for outstanding I/O's.
-For example,
-.Bd -literal -offset 2n
-int query;
-ioctl(fd, MTIOCPERSISTENTSTATUS, &query);
-.Ed
-.Pp
-The
-.Dv MTIOCLRERR
-ioctl clears persistent error handling and allows tape
-operations to continual normally.
-This ioctl requires no argument and will
-always succeed, even if persistent error handling has not been enabled.
-It will wait for any outstanding I/O's before it clears the error.
-.Pp
-The
-.Dv MTIOCGUARANTEEDORDER
-ioctl is used to determine whether the driver
-guarantees the order of I/O's.
-It takes no argument.
-If the ioctl succeeds, the driver will support guaranteed order.
-If the driver does not support guaranteed order, then it should not be used
-for asynchronous I/O with
-.Xr libaio 3lib .
-It will wait for any outstanding I/O's before it returns.
-For example,
-.Bd -literal -offset 2n
-ioctl(fd, MTIOCGUARANTEEDORDER)
-.Ed
-.Pp
-See the
-.Sx Persistent Error Handling
-subsection above for more information on persistent error handling.
-.Ss "Asynchronous and State Change IOCTLS"
-.Bl -tag -width 1n
-.It Dv MTIOCSTATE
-This ioctl blocks until the state of the drive, inserted or ejected, is
-changed.
-The argument is a pointer to a
-.Vt enum mtio_state ,
-whose possible enumerations are listed below.
-The initial value should be either the last reported state of the drive, or
-.Dv MTIO_NONE .
-Upon return, the
-enum pointed to by the argument is updated with the current state of the drive.
-.Bd -literal -offset 2n
-enum mtio_state {
- MTIO_NONE /* Return tape's current state */
- MTIO_EJECTED /* Tape state is "ejected" */
- MTIO_INSERTED /* Tape state is "inserted" */
-};
-.Ed
-.El
-.Pp
-When using asynchronous operations, most ioctls will wait for all outstanding
-commands to complete before they are executed.
-.Ss "IOCTLS for Multi-initiator Configurations"
-.Bl -tag -width MTIOCFORCERESERVE -compact
-.It Dv MTIOCRESERVE
-reserve the tape drive
-.It Dv MTIOCRELEASE
-revert back to the default behavior of reserve on open/release on close
-.It Dv MTIOCFORCERESERVE
-reserve the tape unit by breaking reservation held by another host
-.El
-.Pp
-The
-.Dv MTIOCRESERVE
-ioctl reserves the tape drive such that it does not
-release the tape drive at close.
-This changes the default behavior of releasing the device upon close.
-Reserving the tape drive that is already reserved has no effect.
-For example,
-.Bd -literal -offset 2n
-ioctl(fd, MTIOCRESERVE);
-.Ed
-.Pp
-The
-.Dv MTIOCRELEASE
-ioctl reverts back to the default behavior of reserve on
-open/release on close operation, and a release will occur during the next
-close.
-Releasing the tape drive that is already released has no effect.
-For example,
-.Bd -literal -offset 2n
-ioctl(fd, MTIOCRELEASE);
-.Ed
-.Pp
-The
-.Dv MTIOCFORCERESERVE
-ioctl breaks a reservation held by another host, interrupting any I/O in
-progress by that other host, and then reserves the tape unit.
-This ioctl can be executed only with super-user privileges.
-It is recommended to open the tape device in
-.Dv O_NDELAY
-mode when this ioctl needs to be executed, otherwise the open will fail if
-another host indeed has it reserved.
-For example,
-.Bd -literal -offset 2n
-ioctl(fd, MTIOCFORCERESERVE);
-.Ed
-.Ss "IOCTLS for Handling Tape Configuration Options"
-.Bl -tag -width MTIOCREADIGNOREEOFS
-.It Dv MTIOCSHORTFMK
-enables/disables support for writing short filemarks.
-This is specific to Exabyte drives.
-.It Dv MTIOCREADIGNOREILI
-enables/disables suppress incorrect length indicator (SILI) support during reads
-.It Dv MTIOCREADIGNOREEOFS
-enables/disables support for reading past two EOF marks which otherwise indicate
-End-Of-recording-Media (EOM) in the case of 1/2\(dq reel tape drives
-.El
-.Pp
-The
-.Dv MTIOCSHORTFMK
-ioctl enables or disables support for short filemarks.
-This ioctl is only applicable to Exabyte drives which support short filemarks.
-As an argument, it takes a pointer to an integer.
-If 0 (zero) is the specified integer, then long filemarks will be written.
-If 1 is the specified integer, then short filemarks will be written.
-The specified tape behavior will be in effect until the device is closed.
-.Pp
-For example:
-.Bd -literal -offset 2n
-int on = 1;
-int off = 0;
-/* enable short filemarks */
-ioctl(fd, MTIOSHORTFMK, &on);
-/* disable short filemarks */
-ioctl(fd, MTIOCSHORTFMK, &off);
-.Ed
-.Pp
-Tape drives which do not support short filemarks will return an
-.Va errno
-of
-.Er ENOTTY .
-.Pp
-The
-.Dv MTIOCREADIGNOREILI
-ioctl enables or disables the suppress incorrect
-length indicator (SILI) support during reads.
-As an argument, it takes a pointer to an integer.
-If 0 (zero) is the specified integer, SILI will not be
-used during reads and incorrect length indicator will not be suppressed.
-If 1 is the specified integer, SILI will be used during reads and incorrect
-length indicator will be suppressed.
-The specified tape behavior will be in effect until the device is closed.
-.Pp
-For example:
-.Bd -literal -offset 2n
-int on = 1;
-int off = 0;
-ioctl(fd, MTIOREADIGNOREILI, &on);
-ioctl(fd, MTIOREADIGNOREILI, &off);
-.Ed
-.Pp
-The
-.Dv MTIOCREADIGNOREEOFS
-ioctl enables or disables support for reading
-past double EOF marks which otherwise indicate End-Of-recorded-media (EOM) in
-the case of 1/2\(dq reel tape drives.
-As an argument, it takes a pointer to an integer.
-If 0 (zero) is the specified integer, then double EOF marks indicate
-End-Of-recorded-media (EOM).
-If 1 is the specified integer, the double EOF marks no longer indicate EOM,
-thus allowing applications to read past two EOF marks.
-In this case it is the responsibility of the application to detect
-End-Of-recorded-media (EOM).
-The specified tape behavior will be in effect until the device is closed.
-.Pp
-For example:
-.Bd -literal -offset 2n
-int on = 1;
-int off = 0;
-ioctl(fd, MTIOREADIGNOREEOFS, &on);
-ioctl(fd, MTIOREADIGNOREEOFS, &off);
-.Ed
-.Pp
-Tape drives other than 1/2\(dq reel tapes will return an
-.Va errno
-of
-.Er ENOTTY .
-.Sh FILES
-.Pa /dev/rmt/ Ns Ao unit number Ac \
- Ns Ao density Ac \
- Ns Bo Ao BSD behavior Ac Bc \
- Ns Bo Ao no rewind Ac Bc
-.Pp
-Where
-.Aq density
-can be
-.Ql l ,
-.Ql m ,
-.Ql h ,
-.Ql u/c
-(low, medium, high, ultra/compressed, respectively), the
-.Aq BSD behavior
-option is
-.Ql b , and the
-.Aq no rewind
-option is
-.Ql n .
-.Pp
-For example,
-.Pa /dev/rmt/0hbn
-specifies unit 0, high density,
-.Sy BSD
-behavior and no rewind.
-.Sh EXAMPLES
-.Bl -inset
-.It Sy Example 1
-Tape Positioning and Tape Drives
-.Pp
-Suppose you have written three files to the non-rewinding 1/2\(dq tape device,
-.Pa /dev/rmt/0ln ,
-and that you want to go back and
-.Xr dd 1M
-the second file off the tape.
-The commands to do this are:
-.Bd -literal -offset 2n
-mt -F /dev/rmt/0lbn bsf 3
-mt -F /dev/rmt/0lbn fsf 1
-dd if=/dev/rmt/0ln
-.Ed
-.Pp
-To accomplish the same tape positioning in a C program, followed by a get
-status ioctl:
-.Bd -literal -offset 2n
-struct mtop mt_command;
-struct mtget mt_status;
-mt_command.mt_op = MTBSF;
-mt_command.mt_count = 3;
-ioctl(fd, MTIOCTOP, &mt_command);
-mt_command.mt_op = MTFSF;
-mt_command.mt_count = 1;
-ioctl(fd, MTIOCTOP, &mt_command);
-ioctl(fd, MTIOCGET, (char *)&mt_status);
-.Ed
-.Pp
-or
-.Bd -literal -offset 2n
-mt_command.mt_op = MTNBSF;
-mt_command.mt_count = 2;
-ioctl(fd, MTIOCTOP, &mt_command);
-ioctl(fd, MTIOCGET, (char *)&mt_status);
-.Ed
-.Pp
-To get information about the tape drive:
-.Bd -literal -offset 2n
-struct mtdrivetype mtdt;
-struct mtdrivetype_request mtreq;
-mtreq.size = sizeof(struct mtdrivetype);
-mtreq.mtdtp = &mtdt;
-ioctl(fd, MTIOCGETDRIVETYPE, &mtreq);
-.Ed
-.El
-.Sh SEE ALSO
-.Xr mt 1 ,
-.Xr tar 1 ,
-.Xr dd 1M ,
-.Xr open 2 ,
-.Xr read 2 ,
-.Xr write 2 ,
-.Xr aioread 3C ,
-.Xr aiowrite 3C ,
-.Xr ar.h 3HEAD ,
-.Xr st 7D
-.Pp
-.%T 1/4 Inch Tape Drive Tutorial
diff --git a/usr/src/man/man7i/prnio.7i b/usr/src/man/man7i/prnio.7i
deleted file mode 100644
index 0b794f014a..0000000000
--- a/usr/src/man/man7i/prnio.7i
+++ /dev/null
@@ -1,370 +0,0 @@
-.\" Copyright (c) 20002 Sun Microsystems, Inc.
-.\" All Rights Reserved.
-.\" Copyright 2018, Joyent, Inc.
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.Dd August 31, 2018
-.Dt PRNIO 7I
-.Os
-.Sh NAME
-.Nm prnio
-.Nd generic printer interface
-.Sh SYNOPSIS
-.In sys/prnio.h
-.Sh DESCRIPTION
-The
-.Nm
-generic printer interface defines ioctl commands and data
-structures for printer device drivers.
-.Pp
-.Nm
-defines and provides facilities for five basic phases of the printing process:
-.Bl -bullet -offset indent
-.It
-Identification \(em Retrieve device information/attributes
-.It
-Setup \(em Set device attributes
-.It
-Transfer \(em Transfer data to or from the device
-.It
-Cleanup \(em Transfer phase conclusion
-.It
-Abort \(em Transfer phase interruption
-.El
-.Pp
-During the Identification phase, the application retrieves a set of device
-capabilities and additional information using the
-.Dv PRNIOC_GET_IFCAP ,
-.Dv PRNIOC_GET_STATUS ,
-.Dv PRNIOC_GET_TIMEOUTS ,
-.Dv PRNIOC_GET_IFINFO ,
-and
-.Dv PRNIOC_GET_1284_DEVID
-commands.
-.Pp
-During the Setup phase the application sets some interface attributes and
-probably resets the printer as described in the
-.Dv PRNIOC_SET_IFCAP ,
-.Dv PRNIOC_SET_TIMEOUTS ,
-and
-.Dv PRNIOC_RESET
-sections.
-.Pp
-During the Transfer phase, data is transferred in a forward (host to
-peripheral) or reverse direction (peripheral to host).
-Transfer is accomplished
-using
-.Xr write 2
-and
-.Xr read 2
-system calls.
-For
-.Nm
-compliant
-printer drivers, forward transfer support is mandatory, while reverse transfer
-support is optional.
-Applications can also use
-.Dv PRNIOC_GET_STATUS
-and
-.Dv PRNIOC_GET_1284_STATUS
-commands during the transfer to monitor the device state.
-.Pp
-The Cleanup phase is accomplished by closing the device using
-.Xr close 2 .
-Device drivers supporting
-.Nm
-may set non-zero error code as appropriate.
-Applications should explicitly
-.Xr close 2
-a device before
-exiting and check
-.Va errno
-value.
-.Pp
-The Abort phase is accomplished by interrupting the
-.Xr write 2
-and
-.Xr read 2
-system calls.
-The application can perform some additional cleanup
-during the Abort phase as described in
-.Dv PRNIOC_GET_IFCAP
-section.
-.Sh IOCTLS
-.Bl -tag -width PRNIOC_GET_IFINFO
-.It Dv PRNIOC_GET_IFCAP
-Application can retrieve printer interface capabilities using this command.
-The
-.Xr ioctl 2
-argument is a pointer to
-.Vt uint_t ,
-a bit field representing
-a set of properties and services provided by a printer driver.
-Set bit means supported capability.
-The following values are defined:
-.Bl -tag -width PRN_1284_STATUS
-.It Dv PRN_BIDI
-When this bit is set, the interface operates in a
-bidirectional mode, instead of forward-only mode.
-.It Dv PRN_HOTPLUG
-If this bit is set, the interface allows device hot-plugging.
-.It Dv PRN_1284_DEVID
-If this bit is set, the device is capable of returning
-.Em 1284
-device ID (see
-.Dv PRNIOC_GET_1284_DEVID ) .
-.It Dv PRN_1284_STATUS
-If this bit is set, the device driver can return device
-status lines (see
-.Dv PRNIOC_GET_1284_STATUS ) .
-Some devices support this
-ioctl in unidirectional mode only.
-.It Dv PRN_TIMEOUTS
-If this bit is set the peripheral may stall during the
-transfer phase and the driver can timeout and return from the
-.Xr write 2
-and
-.Xr read 2
-returning the number of bytes that have been transferred.
-If
-.Dv PRN_TIMEOUTS
-is set, the driver supports this functionality and the
-timeout values can be retrieved and modified via the
-.Dv PRNIOC_GET_TIMEOUTS
-and
-.Dv PRNIOC_SET_TIMEOUTS
-ioctls.
-Otherwise, applications can implement
-their own timeouts and abort phase.
-.It Dv PRN_STREAMS
-This bit impacts the application abort phase behaviour.
-If the device claimed
-.Dv PRN_STREAMS
-capability, the application must issue an
-.Dv I_FLUSH
-.Xr ioctl 2
-before
-.Xr close 2
-to dismiss the untransferred
-data.
-Only STREAMS drivers can support this capability.
-.El
-.It Dv PRNIOC_SET_IFCAP
-This ioctl can be used to change interface capabilities.
-The argument is a pointer to
-.Vt uint_t
-bit field that is described in detail in the
-.Dv PRNIOC_GET_IFCAP
-section.
-Capabilities should be set one at a time;
-otherwise the command will return
-.Er EINVAL .
-The following capabilities can be changed by this ioctl:
-.Bl -tag -width PRN_BIDI
-.It Dv PRN_BIDI
-When this capability is set, the interface operates in a
-bidirectional mode, instead of forward-only mode.
-Devices that support only one
-mode will not return error; applications should use
-.Dv PRNIOC_GET_IFCAP
-to check if the mode was successfully changed.
-Because some capabilities may be
-altered as a side effect of changing other capabilities, this command should be
-followed by
-.Dv PRNIOC_GET_IFCAP .
-.El
-.It Dv PRNIOC_GET_IFINFO
-This command can be used to retrieve printer interface info string, which is an
-arbitrary format string usually describing the bus type.
-The argument is a
-pointer to
-.Vt struct prn_interface_info
-as described below.
-.Bd -literal -offset 2n
-struct prn_interface_info {
- uint_t if_len; /* length of buffer */
- uint_t if_rlen; /* actual info length */
- char *if_data; /* buffer address */
-};
-.Ed
-.Pp
-The application allocates a buffer and sets
-.Fa if_data
-and
-.Fa if_len
-values to its address and length, respectively.
-The driver returns the string
-to this buffer and sets
-.Fa if_len
-to its length.
-If
-.Fa if_len
-is less
-than
-.Fa if_rlen ,
-the driver must return the first
-.Fa if_len
-bytes of the string.
-The application may then repeat the command with a bigger buffer.
-.Pp
-Although
-.Nm
-does not limit the contents of the interface info string,
-some values are recommended and defined in
-.In sys/prnio.h
-by the following macros:
-.Pp
-.Bl -tag -width PRN_PARALLEL -compact
-.It Dv PRN_PARALLEL
-Centronics or
-.Em IEEE 1284
-compatible devices
-.It Dv PRN_SERIAL
-EIA-232/EIA-485 serial ports
-.It Dv PRN_USB
-Universal Serial Bus printers
-.It Dv PRN_1394
-.Em IEEE 1394
-peripherals
-.El
-.Pp
-Printer interface info string is for information only: no implications should
-be made from its value.
-.It Dv PRNIOC_RESET
-Some applications may want to reset the printer state during Setup and/or
-Cleanup phase using
-.Dv PRNIOC_RESET
-command.
-Reset semantics are
-device-specific, and in general, applications using this command should be
-aware of the printer type.
-.Pp
-Each
-.Nm
-compliant driver is required to accept this request, although
-performed actions are completely driver-dependent.
-More information on the
-.Dv PRNIOC_RESET
-implementation for the particular driver is available in the
-corresponding man page and printer manual.
-.It Dv PRNIOC_GET_1284_DEVID
-This command can be used to retrieve printer device ID as defined by
-.Em IEEE 1284-1994 .
-The
-.Xr ioctl 2
-argument is a pointer to
-.Vt struct prn_1284_device_id
-as described below.
-.Bd -literal -offset 2n
-struct prn_1284_device_id {
- uint_t id_len; /* length of buffer */
- uint_t id_rlen; /* actual ID length */
- char *id_data; /* buffer address */
-};
-.Ed
-.Pp
-For convenience, the two-byte length field is not considered part of device ID
-string and is not returned in the user buffer.
-Instead,
-.Fa id_rlen
-value shall be set to (length - 2) by the driver, where length is the ID
-length field value.
-If buffer length is less than
-.Fa id_rlen ,
-the driver returns the first
-.Fa id_len
-bytes of the ID.
-.Pp
-The printer driver must return the most up-to-date value of the device ID.
-.It Dv PRNIOC_GET_STATUS
-This command can be used by applications to retrieve current device status.
-The argument is a pointer to
-.Vt uint_t ,
-where the status word is returned.
-Status is a combination of the following bits:
-.Bl -tag -width PRN_ONLINE
-.It Dv PRN_ONLINE
-For devices that support
-.Dv PRN_HOTPLUG
-capability, this bit is set when the device is online, otherwise the device is
-offline.
-Devices without
-.Dv PRN_HOTPLUG
-support should always have this bit set.
-.It Dv PRN_READY
-This bit indicates if the device is ready to receive/send data.
-Applications may use this bit for an outbound flow control.
-.El
-.It Dv PRNIOC_GET_1284_STATUS
-Devices that support
-.Dv PRN_1284_STATUS
-capability accept this ioctl to
-retrieve the device status lines defined in
-.Em IEEE 1284
-for use in Compatibility mode.
-The following bits may be set by the driver:
-.Pp
-.Bl -tag -width PRN_1284_NOFAULT -compact
-.It Dv PRN_1284_NOFAULT
-Device is not in error state
-.It Dv PRN_1284_SELECT
-Device is selected
-.It Dv PRN_1284_PE
-Paper error
-.It Dv PRN_1284_BUSY
-Device is busy
-.El
-.It Dv PRNIOC_GET_TIMEOUTS
-This command retrieves current transfer timeout values for the driver.
-The argument is a pointer to
-.Vt struct prn_timeouts
-as described below.
-.Bd -literal -offset 2n
-struct prn_timeouts {
- uint_t tmo_forward; /* forward transfer timeout */
- uint_t tmo_reverse; /* reverse transfer timeout */
-};
-.Ed
-.Pp
-.Fa tmo_forward
-and
-.Fa tmo_reverse
-define forward and reverse transfer timeouts in seconds.
-This command is only valid for drivers that support
-.Dv PRN_TIMEOUTS
-capability.
-.It Dv PRNIOC_SET_TIMEOUTS
-This command sets current transfer timeout values for the driver.
-The argument is a pointer to
-.Vt struct prn_timeouts .
-See
-.Sx PRNIOC_GET_TIMEOUTS
-for description of this structure.
-This command is only valid for drivers that support
-.Dv PRN_TIMEOUTS
-capability.
-.El
-.Sh SEE ALSO
-.Xr close 2 ,
-.Xr ioctl 2 ,
-.Xr read 2 ,
-.Xr write 2 ,
-.Xr attributes 5 ,
-.Xr ecpp 7D ,
-.Xr lp 7D ,
-.Xr usbprn 7D
-.Rs
-.%T IEEE Std 1284-1994
-.Re
diff --git a/usr/src/man/man7i/quotactl.7i b/usr/src/man/man7i/quotactl.7i
deleted file mode 100644
index 30b894542c..0000000000
--- a/usr/src/man/man7i/quotactl.7i
+++ /dev/null
@@ -1,227 +0,0 @@
-.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright (c) 2017, Joyent, Inc.
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.Dd October 28, 2017
-.Dt QUOTACTL 7I
-.Os
-.Sh NAME
-.Nm quotactl
-.Nd manipulate disk quotas
-.Sh SYNOPSIS
-.In sys/fs/ufs_quota.h
-.Fn "int ioctl" "int fd" "Q_QUOTACTL" "struct quotctl *qp"
-.Sh DESCRIPTION
-This
-.Fn ioctl
-call manipulates disk quotas.
-.Fa fd
-is the file descriptor returned by the
-.Xr open 2
-system call after opening the
-.Pa quotas
-file (located in the root directory of the filesystem running quotas).
-.Dv Q_QUOTACTL
-is defined in
-.Pa /usr/include/sys/fs/ufs_quota.h .
-.Fa qp
-is the address of the
-.Vt quotctl
-structure which is defined as
-.Bd -literal -offset 2n
-struct quotctl {
- int op;
- uid_t uid;
- caddr_t addr;
-};
-.Ed
-.Pp
-.Fa op
-indicates an operation to be applied to the user
-.Sy ID
-.Fa uid .
-.Po
-See below.
-.Pc
-.Fa addr
-is the address of an optional, command specific, data
-structure which is copied in or out of the system.
-The interpretation of
-.Fa addr
-is given with each value of
-.Fa op
-below.
-.Bl -tag -width Q_GETQUOTA
-.It Sy Q_QUOTAON
-Turn on quotas for a file system.
-.Fa addr
-points to the full pathname of the
-.Pa quotas
-file.
-.Fa uid
-is ignored.
-It is recommended that
-.Fa uid
-have the value of
-.Sy 0 .
-This call is restricted to the super-user.
-.It Dv Q_QUOTAOFF
-Turn off quotas for a file system.
-.Fa addr
-and
-.Fa uid
-are ignored.
-It is
-recommended that
-.Fa addr
-have the value of
-.Sy NULL
-and
-.Fa uid
-have the value of
-.Sy 0 .
-This call is restricted to the super-user.
-.It Dv Q_GETQUOTA
-Get disk quota limits and current usage for user
-.Fa uid .
-.Fa addr
-is a pointer to a
-.Vt dqblk
-structure
-.Po
-defined in
-.In sys/fs/ufs_quota.h
-.Pc .
-Only the super-user may get the quotas of a user other than himself.
-.It Dv Q_SETQUOTA
-Set disk quota limits and current usage for user
-.Fa uid .
-.Fa addr
-is a pointer to a
-.Vt dqblk
-structure
-.Po
-defined in
-.In sys/fs/ufs_quota.h
-.Pc .
-This call is restricted to the super-user.
-.It Dv Q_SETQLIM
-Set disk quota limits for user
-.Fa uid .
-.Fa addr
-is a pointer to a
-.Vt dqblk
-structure
-.Po
-defined in
-.In sys/fs/ufs_quota.h
-.Pc .
-This call is restricted to the super-user.
-.It Dv Q_SYNC
-Update the on-disk copy of quota usages for this file system.
-.Fa addr
-and
-.Fa uid
-are ignored.
-.It Dv Q_ALLSYNC
-Update the on-disk copy of quota usages for all file systems with active
-quotas.
-.Fa addr
-and
-.Fa uid
-are ignored.
-.El
-.Sh RETURN VALUES
-This
-Fn ioctl
-returns:
-.Bl -tag -width xx
-.It Sy 0
-on success.
-.It Sy \(mi1
-on failure and sets
-.Va errno
-to indicate the error.
-.El
-.Sh FILES
-.Bl -tag -width x
-.It Pa /usr/include/sys/fs/ufs_quota.h
-quota-related structure/function definitions and defines
-.El
-.Sh ERRORS
-.Bl -tag -width EFAULT
-.It Er EFAULT
-.Fa addr
-is invalid.
-.It Er EINVAL
-The kernel has not been compiled with the
-.Sy QUOTA
-option.
-.Fa op
-is invalid.
-.It Er ENOENT
-The
-.Pa quotas
-file specified by
-.Fa addr
-does not exist.
-.It Er EPERM
-The call is privileged and the calling process did not assert
-.Brq Sy PRIV_SYS_MOUNT
-in the effective set.
-.It Er ESRCH
-No disk quota is found for the indicated user.
-Quotas have not been turned on for this file system.
-.It Er EUSERS
-The quota table is full.
-.El
-.Pp
-If
-.Fa op
-is
-.Dv Q_QUOTAON ,
-.Fn ioctl
-may set
-.Va errno
-to:
-.Bl -tag -width EACCES
-.It Er EACCES
-The quota file pointed to by
-.Fa addr
-exists but is not a regular file.
-The quota file pointed to by
-.Fa addr
-exists but is not on the file system pointed to by
-.Fa special .
-.It Er EIO
-Internal I/O error while attempting to read the
-.Pa quotas
-file pointed to by
-.Fa addr .
-.El
-.Sh SEE ALSO
-.Xr quota 1M ,
-.Xr quotacheck 1M ,
-.Xr quotaon 1M ,
-.Xr getrlimit 2 ,
-.Xr mount 2
-.Sh BUGS
-There should be some way to integrate this call with the resource limit
-interface provided by
-.Xr setrlimit 2
-and
-.Xr getrlimit 2 .
-.Pp
-This call is incompatible with Melbourne quotas.
diff --git a/usr/src/man/man7i/sesio.7i b/usr/src/man/man7i/sesio.7i
deleted file mode 100644
index 79e1329c47..0000000000
--- a/usr/src/man/man7i/sesio.7i
+++ /dev/null
@@ -1,95 +0,0 @@
-.\" Copyright (c) 1997, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright (c) 2017, Joyent, Inc.
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.Dd October 23, 2017
-.Dt SESIO 7I
-.Os
-.Sh NAME
-.Nm sesio
-.Nd enclosure services device driver interface
-.Sh SYNOPSIS
-.In sys/scsi/targets/sesio.h
-.Sh DESCRIPTION
-The
-.Nm ses
-device driver provides the following ioctls as a means to access
-SCSI enclosure services devices.
-.Sh IOCTLS
-The
-.Nm ses
-driver supports the following ioctls:
-.Bl -tag -width SES_IOCTL_GETSTATE
-.It Dv SES_IOCTL_GETSTATE
-This ioctl obtains enclosure state in the
-.Vt ses_ioctl
-structure.
-.It Dv SES_IOCTL_SETSTATE
-This ioctl is used to set parameters on the enclosure services device.
-The
-.Vt ses_ioctl
-structure is used to pass information into the driver.
-.El
-.Sh EXAMPLES
-.Bl -tag -width "Example 1"
-.It Sy "Example 1"
-Using the
-.Dv SES_IOCTL_GETSTATE
-ioctl
-.El
-.Pp
-The following example uses the
-.Dv SES_IOCTL_GETSTATE
-ioctl to recover 20 bytes of page 4 from a previously opened device.
-.Bd -literal -offset 2n
-char abuf[30];
-struct ses_ioctl *sesp;
-int status;
-
-sesp = (ses_ioctl *)abuf;
-sesp->size = 20;
-sesp->page_code = 4;
-status = ioctl(fd, SES_IOCTL_GETSTATE, abuf);
-.Ed
-.Sh ERRORS
-.Bl -tag -width ENOTTY
-.It Er EIO
-The
-.Nm ses
-driver was unable to obtain data from the enclosure services
-device or the data transfer could not be completed.
-.It Er ENOTTY
-The
-.Nm ses
-driver does not support the requested ioctl function.
-.It Er ENXIO
-The enclosure services device does not exist.
-.It Er EFAULT
-The user specified a bad data length.
-.El
-.Sh STRUCTURES
-The
-.Vt ses_ioctl
-structure has the following fields:
-.Bd -literal -offset 2n
-uint32_t page_size; /* Size of buffer that follows */
-uint8_t page_code: /* Page to be read/written */
-uint8_t reserved[3]; /* Reserved; Set to 0 */
-.Ed
-.Sh ARCHITECTURE
-SPARC
-.Sh SEE ALSO
-.Xr ses 7D ,
-.Xr ioctl 9E
diff --git a/usr/src/man/man7i/sockio.7i b/usr/src/man/man7i/sockio.7i
deleted file mode 100644
index 58594879ef..0000000000
--- a/usr/src/man/man7i/sockio.7i
+++ /dev/null
@@ -1,97 +0,0 @@
-.\" Copyright (c) 2017, Joyent, Inc.
-.\" Copyright 1989 AT&T Copyright (c) 1996, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.Dd October 29, 2017
-.Dt SOCKIO 7I
-.Os
-.Sh NAME
-.Nm sockio
-.Nd ioctls that operate directly on sockets
-.Sh SYNOPSIS
-.In sys/sockio.h
-.Sh DESCRIPTION
-The
-.Sy ioctl Ns s
-listed in this manual page apply directly to sockets,
-independent of any underlying protocol.
-The
-.Xr setsockopt 3SOCKET
-call
-.Po
-see
-.Xr getsockopt 3SOCKET
-.Pc
-is the primary method for operating on sockets,
-rather than on the underlying protocol or network interface.
-.Sy ioctl Ns s
-for a specific network interface or protocol are documented in the manual page
-for that interface or protocol.
-.Bl -tag -width SIOCCATMARK
-.It Dv SIOCSPGRP
-The argument is a pointer to an
-.Vt int .
-Set the process-group
-.Sy ID
-that will subsequently receive
-.Dv SIGIO
-or
-.Dv SIGURG
-signals for the socket
-referred to by the descriptor passed to
-.Sy ioctl
-to the value of that
-.Vt int .
-The argument must be either positive (in which case it must be a
-process
-.Sy ID )
-or negative (in which case it must be a process group).
-.It Dv SIOCGPGRP
-The argument is a pointer to an
-.Vt int .
-Get the value of that
-.Vt int
-to the process-group
-.Sy ID
-that is receiving
-.Dv SIGIO
-or
-.Dv SIGURG
-signals for the socket referred to by the descriptor passed to
-.Sy ioctl .
-.It Dv SIOCCATMARK
-The argument is a pointer to an
-.Vt int .
-Set the value of that
-.Vt int
-to
-.Sy 1
-if the read pointer for the socket referred to by the descriptor passed
-to
-.Xr ioctl 2
-points to a mark in the data stream for an out-of-band message.
-Set the value of that
-.Vt int
-to
-.Sy 0
-if the read pointer for the socket
-referred to by the descriptor passed to
-.Sy ioctl
-does not point to a mark
-in the data stream for an out-of-band message.
-.El
-.Sh SEE ALSO
-.Xr ioctl 2 ,
-.Xr getsockopt 3SOCKET
diff --git a/usr/src/man/man7i/streamio.7i b/usr/src/man/man7i/streamio.7i
deleted file mode 100644
index d291cd82c3..0000000000
--- a/usr/src/man/man7i/streamio.7i
+++ /dev/null
@@ -1,1550 +0,0 @@
-.\" Copyright (c) 2017, Joyent, Inc.
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.Dd October 29, 2017
-.Dt STREAMIO 7I
-.Os
-.Sh NAME
-.Nm streamio
-.Nd STREAMS ioctl commands
-.Sh SYNOPSIS
-.In sys/types.h
-.In stropts.h
-.In sys/conf.h
-.Ft int
-.Fo ioctl
-.Fa "int fildes"
-.Fa "int command"
-.Fa "\&... /*arg*/"
-.Fc
-.Sh DESCRIPTION
-STREAMS (see
-.Xr Intro 3 )
-.Fn ioctl
-commands are a subset of the
-.Xr ioctl 2
-commands and perform a variety of control functions on streams.
-.Pp
-The
-.Fa fildes
-argument is an open file descriptor that refers to a stream.
-The
-.Fa command
-argument determines the control function to be performed as
-described below.
-The
-.Fa arg
-argument represents additional information that
-is needed by this command.
-The type of
-.Fa arg
-depends upon the command, but
-it is generally an integer or a pointer to a command-specific data structure.
-The
-.Fa command
-and
-.Fa arg
-arguments are interpreted by the STREAM head.
-Certain combinations of these arguments may be passed to a module or driver in
-the stream.
-.Pp
-Since these STREAMS commands are
-.Sy ioctls ,
-they are subject to the errors described in
-.Xr ioctl 2 .
-In addition to those errors, the call will fail
-with
-.Va errno
-set to
-.Er EINVAL ,
-without processing a control function, if the STREAM referenced by
-.Fa fildes
-is linked below a multiplexor, or if
-.Fa command
-is not a valid value for a stream.
-.Pp
-Also, as described in
-.Xr ioctl 2 ,
-STREAMS modules and drivers can detect
-errors.
-In this case, the module or driver sends an error message to the STREAM
-head containing an error value.
-This causes subsequent calls to fail with
-.Va errno
-set to this value.
-.Sh IOCTLS
-The following
-.Fn ioctl
-commands, with error values indicated, are applicable to all STREAMS files:
-.Bl -tag -width I_SETCLTIME
-.It Dv I_PUSH
-Pushes the module whose name is pointed to by
-.Va arg
-onto the top of the current stream, just below the STREAM head.
-If the STREAM is a pipe, the module
-will be inserted between the stream heads of both ends of the pipe.
-It then calls the open routine of the newly-pushed module.
-On failure,
-.Va errno
-is set to one of the following values:
-.Bl -tag -width ENOTSUP
-.It Er EINVAL
-Invalid module name.
-.It Er EFAULT
-.Va arg
-points outside the allocated address space.
-.It Er ENXIO
-Open routine of new module failed.
-.It Er ENXIO
-Hangup received on
-.Va fildes .
-.It Er ENOTSUP
-Pushing a module is not supported on this stream.
-.El
-.It Dv I_POP
-Removes the module just below the STREAM head of the STREAM pointed to by
-.Fa fildes .
-To remove a module from a pipe requires that the module was
-pushed on the side it is being removed from.
-.Fa arg
-should be
-.Sy 0
-in an
-.Dv I_POP
-request.
-On failure,
-.Va errno
-is set to one of the following values:
-.Bl -tag -width ENOTSUP
-.It Er EINVAL
-No module present in the stream.
-.It Er ENXIO
-Hangup received on
-.Fa fildes .
-.It Er EPERM
-Attempt to pop through an anchor by an unprivileged process.
-.It Er ENOTSUP
-Removal is not supported.
-.El
-.It Dv I_ANCHOR
-Positions the stream anchor to be at the stream's module directly below the
-stream head.
-Once this has been done, only a privileged process may pop modules
-below the anchor on the stream.
-.Va arg
-must be
-.Sy 0
-in an
-.Dv I_ANCHOR
-request.
-On failure,
-.Va errno
-is set to the following value:
-.Bl -tag -width EINVAL
-.It Er EINVAL
-Request to put an anchor on a pipe.
-.El
-.It Dv I_LOOK
-Retrieves the name of the module just below the stream head of the stream
-pointed to by
-.Fa fildes ,
-and places it in a null terminated character string
-pointed at by
-.Fa arg .
-The buffer pointed to by
-.Fa arg
-should be at least
-.Dv FMNAMESZ Ns +1
-bytes long.
-This requires the declaration
-.Ql "#include <sys/conf.h>" .
-On failure,
-.Dv errno
-is set to one of the following values:
-.Bl -tag -width EFAULT
-.It Er EFAULT
-.Fa arg
-points outside the allocated address space.
-.It Er EINVAL
-No module present in stream.
-.El
-.It Dv I_FLUSH
-This request flushes all input and/or output queues, depending on the value of
-.Fa arg .
-Legal
-.Fa arg
-values are:
-.Bl -tag -width FLUSHRW
-.It Dv FLUSHR
-Flush read queues.
-.It Dv FLUSHW
-Flush write queues.
-.It Dv FLUSHRW
-Flush read and write queues.
-.El
-.Pp
-If a pipe or FIFO does not have any modules pushed, the read queue of the
-stream head on either end is flushed depending on the value of
-.Fa arg .
-.Pp
-If
-.Dv FLUSHR
-is set and
-.Fa fildes
-is a pipe, the read queue for that end
-of the pipe is flushed and the write queue for the other end is flushed.
-If
-.Fa fildes
-is a FIFO, both queues are flushed.
-.Pp
-If
-.Dv FLUSHW
-is set and
-.Fa fildes
-is a pipe and the other end of the pipe
-exists, the read queue for the other end of the pipe is flushed and the write
-queue for this end is flushed.
-If
-.Fa fildes
-is a FIFO, both queues of the
-FIFO are flushed.
-.Pp
-If
-.Dv FLUSHRW
-is set, all read queues are flushed, that is, the read queue
-for the FIFO and the read queue on both ends of the pipe are flushed.
-.Pp
-Correct flush handling of a pipe or FIFO with modules pushed is achieved via
-the
-.Sy pipemod
-module.
-This module should be the first module pushed onto a
-pipe so that it is at the midpoint of the pipe itself.
-.Pp
-On failure,
-.Va errno
-is set to one of the following values:
-.Bl -tag -width EINVAL
-.It Er ENOSR
-Unable to allocate buffers for flush message due to insufficient stream memory
-resources.
-.It Er EINVAL
-Invalid
-.Va arg
-value.
-.It Er ENXIO
-Hangup received on
-.Fa fildes .
-.El
-.It Dv I_FLUSHBAND
-Flushes a particular band of messages.
-.Fa arg
-points to a
-.Vt bandinfo
-structure that has the following members:
-.Bd -literal -offset 2n
-unsigned char bi_pri;
-int bi_flag;
-.Ed
-.Pp
-The
-.Fa bi_flag
-field may be one of
-.Dv FLUSHR ,
-.Dv FLUSHW ,
-or
-.Dv FLUSHRW
-as described earlier.
-.It Dv I_SETSIG
-Informs the stream head that the user wishes the kernel to issue the
-.Dv SIGPOLL
-signal (see
-.Xr signal 3C )
-when a particular event has occurred on the stream associated with
-.Fa fildes .
-.Dv I_SETSIG
-supports an asynchronous processing capability in streams.
-The value of
-.Fa arg
-is a bitmask that specifies the events for which the user should be signaled.
-It is the bitwise OR of any combination of the following constants:
-.Bl -tag -width S_BANDURG
-.It Dv S_INPUT
-Any message other than an
-.Dv M_PCPROTO
-has arrived on a stream head read queue.
-This event is maintained for compatibility with previous releases.
-This event is triggered even if the message is of zero length.
-.It Dv S_RDNORM
-An ordinary (non-priority) message has arrived on a stream head read queue.
-This event is triggered even if the message is of zero length.
-.It Dv S_RDBAND
-A priority band message (band > 0) has arrived on a stream head read queue.
-This event is triggered even if the message is of zero length.
-.It Dv S_HIPRI
-A high priority message is present on the stream head read queue.
-This event is triggered even if the message is of zero length.
-.It Dv S_OUTPUT
-The write queue just below the stream head is no longer full.
-This notifies the
-user that there is room on the queue for sending (or writing) data downstream.
-.It Dv S_WRNORM
-This event is the same as
-.Dv S_OUTPUT .
-.It Dv S_WRBAND
-A priority band greater than 0 of a queue downstream exists and is writable.
-This notifies the user that there is room on the queue for sending (or writing)
-priority data downstream.
-.It Dv S_MSG
-A STREAMS signal message that contains the
-.Dv SIGPOLL
-signal has reached the
-front of the stream head read queue.
-.It Dv S_ERROR
-An
-.Dv M_ERROR
-message has reached the stream head.
-.It Dv S_HANGUP
-An
-.Dv M_HANGUP
-message has reached the stream head.
-.It Dv S_BANDURG
-When used in conjunction with
-.Dv S_RDBAND ,
-.Dv SIGURG
-is generated instead of
-.Dv SIGPOLL
-when a priority message reaches the front of the stream head
-read queue.
-.El
-.Pp
-A user process may choose to be signaled only of high priority messages by
-setting the
-.Fa arg
-bitmask to the value
-.Dv S_HIPRI .
-.Pp
-Processes that wish to receive
-.Dv SIGPOLL
-signals must explicitly register
-to receive them using
-.Dv I_SETSIG .
-If several processes register to receive
-this signal for the same event on the same stream, each process will be
-signaled when the event occurs.
-.Pp
-If the value of
-.Fa arg
-is zero, the calling process will be unregistered and
-will not receive further
-.Dv SIGPOLL
-signals.
-On failure,
-.Va errno
-is set to one of the following values:
-.Bl -tag -width EINVAL
-.It Sy EINVAL
-.Fa arg
-value is invalid or
-.Fa arg
-is zero and process is not registered to receive the
-.Dv SIGPOLL
-signal.
-.It Sy EAGAIN
-Allocation of a data structure to store the signal request failed.
-.El
-.It Dv I_GETSIG
-Returns the events for which the calling process is currently registered to be
-sent a
-.Dv SIGPOLL
-signal.
-The events are returned as a bitmask pointed to by
-.Va arg ,
-where the events are those specified in the description of
-.Dv I_SETSIG
-above.
-On failure,
-.Va errno
-is set to one of the following values:
-.Bl -tag -width EINVAL
-.It Sy EINVAL
-Process not registered to receive the
-.Dv SIGPOLL
-signal.
-.It Sy EFAULT
-.Fa arg
-points outside the allocated address space.
-.El
-.It Dv I_FIND
-Compares the names of all modules currently present in the stream to the name
-pointed to by
-.Fa arg ,
-and returns 1 if the named module is present in the stream.
-It returns 0 if the named module is not present.
-On failure,
-.Va errno
-is set to one of the following values:
-.Bl -tag -width EINVAL
-.It Sy EFAULT
-.Fa arg
-points outside the allocated address space.
-.It Sy EINVAL
-.Fa arg
-does not contain a valid module name.
-.El
-.It Dv I_PEEK
-Allows a user to retrieve the information in the first message on the stream
-head read queue without taking the message off the queue.
-.Dv I_PEEK
-is analogous to
-.Xr getmsg 2
-except that it does not remove the message from the queue.
-.Fa arg
-points to a
-.Vt strpeek
-structure, which contains the following members:
-.Bd -literal -offset 2n
-struct strbuf ctlbuf;
-struct strbuf databuf;
-long flags;
-.Ed
-.Pp
-The
-.Ft maxlen
-field in the
-.Vt ctlbuf
-and
-.Vt databuf
-.Vt strbuf
-structures (see
-.Xr getmsg 2 )
-must be set to the number of bytes of control
-information and/or data information, respectively, to retrieve.
-.Fa flags
-may be set to
-.Dv RS_HIPRI
-or
-.Sy 0 .
-If
-.Dv RS_HIPRI
-is set,
-.Dv I_PEEK
-will look for a high priority message on the stream head read queue.
-Otherwise,
-.Dv I_PEEK
-will look for the first message on the stream head read queue.
-.Pp
-.Dv I_PEEK
-returns
-.Sy 1
-if a message was retrieved, and returns
-.Sy 0
-if no message was found on the stream head read queue.
-It does not wait for a message to arrive.
-On return,
-.Vt ctlbuf
-specifies information in the control buffer,
-.Vt databuf
-specifies information in the data buffer, and
-.Fa flags
-contains the value
-.Dv RS_HIPRI
-or
-.Sy 0 .
-On failure,
-.Va errno
-is set to the following value:
-.Bl -tag -width EBADMSG
-.It Er EFAULT
-.Fa arg
-points, or the buffer area specified in
-.Vt ctlbuf
-or
-.Vt databuf
-is, outside the allocated address space.
-.It Er EBADMSG
-Queued message to be read is not valid for
-.Dv I_PEEK .
-.It Er EINVAL
-Illegal value for
-.Vt flags .
-.It Er ENOSR
-Unable to allocate buffers to perform the
-.Dv I_PEEK
-due to insufficient STREAMS memory resources.
-.El
-.It Dv I_SRDOPT
-Sets the read mode (see
-.Xr read 2 )
-using the value of the argument
-.Va arg .
-Legal
-.Va arg
-values are:
-.Bl -tag -width RNORM
-.It Dv RNORM
-Byte-stream mode, the default.
-.It Dv RMSGD
-Message-discard mode.
-.It Dv RMSGN
-Message-nondiscard mode.
-.El
-.Pp
-In addition, the stream head's treatment of control messages may be changed by
-setting the following flags in
-.Va arg :
-.Bl -tag -width RPROTNORM
-.It Dv RPROTNORM
-Reject
-.Xr read 2
-with
-.Er EBADMSG
-if a control message is at the front of the stream head read queue.
-.It Dv RPROTDAT
-Deliver the control portion of a message as data when a user issues
-.Xr read 2 .
-This is the default behavior.
-.It Dv RPROTDIS
-Discard the control portion of a message, delivering any data portion, when a
-user issues a
-.Xr read 2 .
-.El
-.Pp
-On failure,
-.Va errno
-is set to the following value:
-.Bl -tag -width EINVAL
-.It Er EINVAL
-.Va arg
-is not one of the above legal values, or
-.Va arg
-is the bitwise
-inclusive
-.Sy OR
-of
-.Dv RMSGD
-and
-.Dv RMSGN .
-.El
-.It Dv I_GRDOPT
-Returns the current read mode setting in an
-.Vt int
-pointed to by the argument
-.Fa arg .
-Read modes are described in
-.Xr read 2 .
-On failure,
-.Va errno
-is set to the following value:
-.Bl -tag -width EFAULT
-.It Er EFAULT
-.Fa arg
-points outside the allocated address space.
-.El
-.It Dv I_NREAD
-Counts the number of data bytes in data blocks in the first message on the
-stream head read queue, and places this value in the location pointed to by
-.Fa arg .
-The return value for the command is the number of messages on the
-stream head read queue.
-For example, if zero is returned in
-.Fa arg ,
-but the
-.Fn ioctl
-return value is greater than zero, this indicates that a
-zero-length message is next on the queue.
-On failure,
-.Va errno
-is set to the following value:
-.Bl -tag -width EFAULT
-.It Er EFAULT
-.Fa arg
-points outside the allocated address space.
-.El
-.It Dv I_FDINSERT
-Creates a message from specified buffer(s), adds information about another
-stream and sends the message downstream.
-The message contains a control part and an optional data part.
-The data and control parts to be sent are
-distinguished by placement in separate buffers, as described below.
-.Pp
-The
-.Fa arg
-argument points to a
-.Vt strfdinsert
-structure, which contains
-the following members:
-.Bd -literal -offset 2n
-struct strbuf ctlbuf;
-struct strbuf databuf;
-t_uscalar_t flags;
-int fildes;
-int offset;
-.Ed
-.Pp
-The
-.Fa len
-member in the
-.Vt ctlbuf
-.Vt strbuf
-structure (see
-.Xr putmsg 2 )
-must be set to the size of a
-.Vt t_uscalar_t
-plus the number of bytes of
-control information to be sent with the message.
-The
-.Fa fildes
-member specifies the file descriptor of the other stream, and the
-.Fa offset
-member, which must be suitably aligned for use as a
-.Vt t_uscalar_t ,
-specifies the offset from the start of the control buffer where
-.Dv I_FDINSERT
-will store a
-.Vt t_uscalar_t
-whose interpretation is specific to the stream end.
-The
-.Fa len
-member in the
-.Vt databuf
-.Vt strbuf
-structure must be set to the number of bytes of data information to be sent with
-the message, or to 0 if no data part is to be sent.
-.Pp
-The
-.Fa flags
-member specifies the type of message to be created.
-A normal message is created if
-.Fa flags
-is set to 0, and a high-priority message is created if
-.Fa flags
-is set to
-.Dv RS_HIPRI .
-For non-priority messages,
-.Dv I_FDINSERT
-will block if the stream write queue is full due to internal
-flow control conditions.
-For priority messages,
-.Dv I_FDINSERT
-does not block on this condition.
-or non-priority messages,
-.Dv I_FDINSERT
-does not
-block when the write queue is full and
-.Dv O_NDELAY
-or
-.Dv O_NONBLOCK
-is set.
-Instead, it fails and sets
-.Va errno
-to
-.Er EAGAIN .
-.Pp
-.Dv I_FDINSERT
-also blocks, unless prevented by lack of internal resources, waiting for the
-availability of message blocks in the stream, regardless of priority or whether
-.Dv O_NDELAY
-or
-.Dv O_NONBLOCK
-has been specified.
-No partial message is sent.
-.Pp
-The
-.Fn ioctl
-function with the
-.Dv I_FDINSERT
-command will fail if:
-.Bl -tag -width EAGAIN
-.It Er EAGAIN
-A non-priority message is specified, the
-.Dv O_NDELAY
-or
-.Dv O_NONBLOCK
-flag is set, and the stream write queue is full due to internal flow control
-conditions.
-.It Er ENOSR
-Buffers can not be allocated for the message that is to be created.
-.It Er EFAULT
-The
-.Fa arg
-argument points, or the buffer area specified in
-.Vt ctlbuf
-or
-.Vt databuf
-is, outside the allocated address space.
-.It Er EINVAL
-One of the following: The
-.Fa fildes
-member of the
-.Vt strfdinsert
-structure is not a valid, open stream file descriptor; the size of a
-.Vt t_uscalar_t
-plus
-.Fa offset
-is greater than the
-.Fa len
-member for the buffer specified through
-.Fa ctlptr ;
-the
-.Fa offset
-member does not specify a properly-aligned location in the data buffer; or an
-undefined value is stored in
-.Fa flags .
-.It Er ENXIO
-Hangup received on the
-.Fa fildes
-argument of the
-.Fn ioctl
-call or the
-.Fa fildes
-member of the
-.Vt strfdinsert
-structure.
-.It Er ERANGE
-The
-.Fa len
-field for the buffer specified through
-.Vt databuf
-does not fall within the range specified by the maximum and minimum packet
-sizes of the topmost stream module; or the
-.Fa len
-member for the buffer specified through
-.Vt databuf
-is larger than the maximum configured size of the data part of a message; or the
-.Fa len
-member for the buffer specified through
-.Vt ctlbuf
-is larger than the maximum configured size of the control part of a message.
-.El
-.Pp
-.Dv I_FDINSERT
-can also fail if an error message was received by the stream
-head of the stream corresponding to the
-.Fa fildes
-member of the
-.Vt strfdinsert
-structure.
-In this case,
-.Va errno
-will be set to the value in the message.
-.It Dv I_STR
-Constructs an internal
-.Sy STREAMS
-ioctl message from the data pointed to by
-.Fa arg ,
-and sends that message downstream.
-.Pp
-This mechanism is provided to send user
-.Fn ioctl
-requests to downstream modules and drivers.
-It allows information to be sent with the
-.Fn ioctl ,
-and will return to the user any information sent upstream by the downstream
-recipient.
-.Dv I_STR
-blocks until the system responds with either a positive or negative
-acknowledgement message, or until the request times out after some period of
-time.
-If the request times out, it fails with
-.Va errno
-set to
-.Er ETIME .
-.Pp
-To send requests downstream,
-.Fa arg
-must point to a
-.Vt strioctl
-structure which contains the following members:
-.Bd -literal -offset 2n
-int ic_cmd;
-int ic_timout;
-int ic_len;
-char *ic_dp;
-.Ed
-.Pp
-.Fa ic_cmd
-is the internal
-.Fn ioctl
-command intended for a downstream module or driver and
-.Fa ic_timout
-is the number of seconds (-1 = infinite, 0 = use default, >0 = as specified) an
-.Dv I_STR
-request will wait for acknowledgement before timing out.
-.Fa ic_len
-is the number of bytes in the data argument and
-.Fa ic_dp
-is a pointer to the data argument.
-The
-.Fa ic_len
-field has two uses: on input, it contains the length of the data
-argument passed in, and on return from the command, it contains the number of
-bytes being returned to the user (the buffer pointed to by
-.Fa ic_dp
-should be large enough to contain the maximum amount of data that any module or
-the driver in the stream can return).
-.Pp
-At most one
-.Dv I_STR
-can be active on a stream.
-Further
-.Dv I_STR
-calls
-will block until the active
-.Dv I_STR
-completes via a positive or negative
-acknowlegment, a timeout, or an error condition at the stream head.
-By setting the
-.Fa ic_timout
-field to 0, the user is requesting STREAMS to provide
-the
-.Sy DEFAULT
-timeout.
-The default timeout is specific to the STREAMS
-implementation and may vary depending on which release of Solaris you are
-using.
-For Solaris 8 (and earlier versions), the default timeout is fifteen
-seconds.
-The
-.Dv O_NDELAY
-and
-.Dv O_NONBLOCK
-(see
-.Xr open 2 )
-flags have no effect on this call.
-.Pp
-The stream head will convert the information pointed to by the
-.Vt strioctl
-structure to an internal
-.Fn ioctl
-command message and send it downstream.
-On failure,
-.Va errno
-is set to one of the following values:
-.Bl -tag -width EFAULT
-.It Er ENOSR
-Unable to allocate buffers for the
-.Fn ioctl
-message due to insufficient STREAMS memory resources.
-.It Er EFAULT
-Either
-.Fa arg
-points outside the allocated address space, or the buffer area
-specified by
-.Fa ic_dp
-and
-.Fa ic_len
-(separately for data sent and data returned) is outside the allocated address
-space.
-.It Er EINVAL
-.Fa ic_len
-is less than 0 or
-.Fa ic_len
-is larger than the maximum configured size of the data part of a message or
-.Fa ic_timout
-is less than \(mi1.
-.It Er ENXIO
-Hangup received on
-.Fa fildes .
-.It Er ETIME
-A downstream
-.Fn ioctl
-timed out before acknowledgement was received.
-.El
-.Pp
-An
-.Dv I_STR
-can also fail while waiting for an acknowledgement if a message
-indicating an error or a hangup is received at the stream head.
-In addition, an
-error code can be returned in the positive or negative acknowledgement message,
-in the event the ioctl command sent downstream fails.
-For these cases,
-.Dv I_STR
-will fail with
-.Va errno
-set to the value in the message.
-.It Dv I_SWROPT
-Sets the write mode using the value of the argument
-.Fa arg .
-Legal bit settings for
-.Fa arg
-are:
-.Bl -tag -width SNDZERO
-.It Dv SNDZERO
-Send a zero-length message downstream when a write of 0 bytes occurs.
-.El
-.Pp
-To not send a zero-length message when a write of 0 bytes occurs, this bit must
-not be set in
-.Fa arg .
-.Pp
-On failure,
-.Va errno
-may be set to the following value:
-.Bl -tag -width EINVAL
-.It Sy EINVAL
-.Fa arg
-is not the above legal value.
-.El
-.It Dv I_GWROPT
-Returns the current write mode setting, as described above, in the
-.Vt int
-that is pointed to by the argument
-.Fa arg .
-.It Dv I_SENDFD
-Requests the stream associated with
-.Fa fildes
-to send a message, containing
-a file pointer, to the stream head at the other end of a stream pipe.
-The file
-pointer corresponds to
-.Fa arg ,
-which must be an open file descriptor.
-.Pp
-.Dv I_SENDFD
-converts
-.Fa arg
-into the corresponding system file pointer.
-It allocates a message block and inserts the file pointer in the block.
-The user id and group id associated with the sending process are also inserted.
-This message is placed directly on the read queue (see
-.Xr Intro 3 )
-of the stream head at the other end of the stream pipe to which it is connected.
-On failure,
-.Va errno
-is set to one of the following values:
-.Bl -tag -width EAGAIN
-.It Er EAGAIN
-The sending stream is unable to allocate a message block to contain the file
-pointer.
-.It Er EAGAIN
-The read queue of the receiving stream head is full and cannot accept the
-message sent by
-.Dv I_SENDFD .
-.It Er EBADF
-.Fa arg
-is not a valid, open file descriptor.
-.It Er EINVAL
-.Va fildes
-is not connected to a stream pipe.
-.It Er ENXIO
-Hangup received on
-.Fa fildes .
-.El
-.It Dv I_RECVFD
-Retrieves the file descriptor associated with the message sent by an
-.Dv I_SENDFD
-.Fn ioctl
-over a stream pipe.
-.Fa arg
-is a pointer to a data buffer large enough to hold an
-.Vt strrecvfd
-data structure containing the following members:
-.Bd -literal -offset 2n
-int fd;
-uid_t uid;
-gid_t gid;
-.Ed
-.Pp
-.Fa fd
-is an integer file descriptor.
-.Fa uid
-and
-.Fa gid
-are the user id and group id, respectively, of the sending stream.
-.Pp
-If
-.Dv O_NDELAY
-and
-.Dv O_NONBLOCK
-are clear (see
-.Xr open 2 ) ,
-.Dv I_RECVFD
-will block until a message is present at the stream head.
-If
-.Dv O_NDELAY
-or
-.Dv O_NONBLOCK
-is set,
-.Dv I_RECVFD
-will fail with
-.Va errno
-set to
-.Er EAGAIN
-if no message is present at the stream head.
-.Pp
-If the message at the stream head is a message sent by an
-.Dv I_SENDFD ,
-a new
-user file descriptor is allocated for the file pointer contained in the
-message.
-The new file descriptor is placed in the
-.Fa fd
-field of the
-.Vt strrecvfd
-structure.
-The structure is copied into the user data buffer pointed to by
-.Fa arg .
-On failure,
-.Va errno
-is set to one of the following values:
-.Bl -tag -width EOVERFLOW
-.It Er EAGAIN
-A message is not present at the stream head read queue, and the
-.Dv O_NDELAY
-or
-.Dv O_NONBLOCK
-flag is set.
-.It Er EBADMSG
-The message at the stream head read queue is not a message containing a passed
-file descriptor.
-.It Er EFAULT
-.Fa arg
-points outside the allocated address space.
-.It Er EMFILE
-.Dv NOFILES
-file descriptors are currently open.
-.It Er ENXIO
-Hangup received on
-.Fa fildes .
-.It Er EOVERFLOW
-.Fa uid
-or
-.Fa gid
-is too large to be stored in the structure pointed to by
-.Fa arg .
-.El
-.It Dv I_LIST
-Allows the user to list all the module names on the stream, up to and including
-the topmost driver name.
-If
-.Fa arg
-is
-.Dv NULL ,
-the return value is the number of modules, including the driver, that are on
-the stream pointed to by
-.Fa fildes .
-This allows the user to allocate enough space for the module
-names.
-If
-.Fa arg
-is non-null, it should point to an
-.Vt str_list
-structure that has the following members:
-.Bd -literal -offset 2n
-int sl_nmods;
-struct str_mlist *sl_modlist;
-.Ed
-.Pp
-The
-.Vt str_mlist
-structure has the following member:
-.Bd -literal -offset 2n
-char l_name[FMNAMESZ+1];
-.Ed
-.Pp
-The
-.Fa sl_nmods
-member indicates the number of entries the process has allocated in the array.
-Upon return, the
-.Fa sl_modlist
-member of the
-.Vt str_list
-structure contains the list of module names, and the number of
-entries that have been filled into the
-.Fa sl_modlist
-array is found in the
-.Fa sl_nmods
-member (the number includes the number of modules including the driver).
-The return value from
-.Fn ioctl
-is 0.
-The entries are filled in
-starting at the top of the stream and continuing downstream until either the
-end of the stream is reached, or the number of requested modules
-.Pq Fa sl_nmods
-is satisfied.
-On failure,
-.Va errno
-may be set to one of the following values:
-.Bl -tag -width EINVAL
-.It Er EINVAL
-The
-.Fa sl_nmods
-member is less than 1.
-.It Er EAGAIN
-Unable to allocate buffers
-.El
-.It Dv I_ATMARK
-Allows the user to see if the current message on the stream head read queue is
-.Dq marked
-by some module downstream.
-.Fa arg
-determines how the checking is
-done when there may be multiple marked messages on the stream head read queue.
-It may take the following values:
-.Bl -tag -width LASTMARK
-.It Dv ANYMARK
-Check if the message is marked.
-.It Dv LASTMARK
-Check if the message is the last one marked on the queue.
-.El
-.Pp
-The return value is
-.Sy 1
-if the mark condition is satisfied and
-.Sy 0
-otherwise.
-On failure,
-.Va errno
-is set to the following value:
-.Bl -tag -width EINVAL
-.It Er EINVAL
-Invalid
-.Fa arg
-value.
-.El
-.It Dv I_CKBAND
-Check if the message of a given priority band exists on the stream head read
-queue.
-This returns
-.Sy 1
-if a message of a given priority exists,
-.Sy 0
-if not, or
-.Sy \(mi1
-on error.
-.Fa arg
-should be an integer containing the value of the priority band in question.
-On failure,
-.Va errno
-is set to the following value:
-.Bl -tag -width EINVAL
-.It Er EINVAL
-Invalid
-.Fa arg
-value.
-.El
-.It Dv I_GETBAND
-Returns the priority band of the first message on the stream head read queue in
-the integer referenced by
-.Fa arg .
-On failure,
-.Va errno
-is set to the following value:
-.Bl -tag -width ENODATA
-.It Er ENODATA
-No message on the stream head read queue.
-.El
-.It Dv I_CANPUT
-Check if a certain band is writable.
-.Fa arg
-is set to the priority band in question.
-The return value is
-.Sy 0
-if the priority band
-.Fa arg
-is flow controlled,
-.Sy 1
-if the band is writable, or
-.Sy \(mi1
-on error.
-On failure,
-.Va errno
-is set to the following value:
-.Bl -tag -width EINVAL
-.It Sy EINVAL
-Invalid
-.Va arg
-value.
-.El
-.It Dv I_SETCLTIME
-Allows the user to set the time the stream head will delay when a stream is
-closing and there are data on the write queues.
-Before closing each module and driver, the stream head will delay for the
-specified amount of time to allow the data to drain.
-Note, however, that the module or driver may itself delay in its close routine;
-this delay is independent of the stream head's delay and is not settable.
-If, after the delay, data are still present, data will be flushed.
-.Fa arg
-is a pointer to an integer containing the number of
-milliseconds to delay, rounded up to the nearest legal value on the system.
-The default is fifteen seconds.
-On failure,
-.Va errno
-is set to the following value:
-.Bl -tag -width EINVAL
-.It Er EINVAL
-Invalid
-.Fa arg
-value.
-.El
-.It Dv I_GETCLTIME
-Returns the close time delay in the integer pointed by
-.Va arg .
-.It Dv I_SERROPT
-Sets the error mode using the value of the argument
-.Fa arg .
-.Pp
-Normally stream head errors are persistent; once they are set due to an
-.Dv M_ERROR
-or
-.Dv M_HANGUP ,
-the error condition will remain until the stream is closed.
-This option can be used to set the stream head into
-non-persistent error mode i\.e\. once the error has been returned in response
-to a
-.Xr read 2 ,
-.Xr getmsg 2 ,
-.Xr ioctl 2 ,
-.Xr write 2 ,
-or
-.Xr putmsg 2
-call the error condition will be cleared.
-The error mode can be controlled independently for read and write side errors.
-Legal
-.Fa arg
-values
-are either none or one of:
-.Bl -tag -width RERRNONPERSIST
-.It Dv RERRNORM
-Persistent read errors, the default.
-.It Dv RERRNONPERSIST
-Non-persistent read errors.
-.El
-.Pp
-.Sy OR Ns 'ed
-with either none or one of:
-.Bl -tag -width WERRNONPERSIST
-.It Dv WERRNORM
-Persistent write errors, the default.
-.It Dv WERRNONPERSIST
-Non-persistent write errors.
-.El
-.Pp
-When no value is specified e\.g\. for the read side error behavior then the
-behavior for that side will be left unchanged.
-.Pp
-On failure,
-.Va errno
-is set to the following value:
-.Bl -tag -width EINVAL
-.It Er EINVAL
-.Va arg
-is not one of the above legal values.
-.El
-.It Dv I_GERROPT
-Returns the current error mode setting in an
-.Vt int
-pointed to by the argument
-.Fa arg .
-Error modes are described above for
-.Dv I_SERROPT .
-On failure,
-.Va errno
-is set to the following value:
-.Bl -tag -width EFAULT
-.It Sy EFAULT
-.Fa arg
-points outside the allocated address space.
-.El
-.El
-.Pp
-The following four commands are used for connecting and disconnecting
-multiplexed STREAMS configurations.
-.Bl -tag -width I_PUNLINK
-.It Dv I_LINK
-Connects two streams, where
-.Fa fildes
-is the file descriptor of the stream
-connected to the multiplexing driver, and
-.Fa arg
-is the file descriptor of the stream connected to another driver.
-The stream designated by
-.Va arg
-gets
-connected below the multiplexing driver.
-.Dv I_LINK
-requires the multiplexing
-driver to send an acknowledgement message to the stream head regarding the
-linking operation.
-This call returns a multiplexor ID number (an identifier
-used to disconnect the multiplexor, see
-.Dv I_UNLINK )
-on success, and \(mi1 on failure.
-On failure,
-.Va errno
-is set to one of the following values:
-.Bl -tag -width EAGAIN
-.It Er ENXIO
-Hangup received on
-.Va fildes .
-.It Er ETIME
-Time out before acknowledgement message was received at stream head.
-.It Er EAGAIN
-Temporarily unable to allocate storage to perform the
-.Dv I_LINK .
-.It Er ENOSR
-Unable to allocate storage to perform the
-.Dv I_LINK
-due to insufficient
-.Sy STREAMS
-memory resources.
-.It Er EBADF
-.Va arg
-is not a valid, open file descriptor.
-.It Er EINVAL
-.Va fildes
-stream does not support multiplexing.
-.It Er EINVAL
-is not a stream, or is already linked under a multiplexor.
-.It Er EINVAL
-The specified link operation would cause a
-.Dq cycle
-in the resulting configuration; that is, a driver would be linked into the
-multiplexing configuration in more than one place.
-.It Er EINVAL
-.Va fildes
-is the file descriptor of a pipe or FIFO.
-.It Er EINVAL
-Either the upper or lower stream has a major number \(>= the maximum major
-number on the system.
-.El
-.Pp
-An
-.Dv I_LINK
-can also fail while waiting for the multiplexing driver to
-acknowledge the link request, if a message indicating an error or a hangup is
-received at the stream head of
-.Fa fildes .
-In addition, an error code can be
-returned in the positive or negative acknowledgement message.
-For these cases,
-.Dv I_LINK
-will fail with
-.Va errno
-set to the value in the message.
-.It Dv I_UNLINK
-Disconnects the two streams specified by
-.Fa fildes
-and
-.Fa arg .
-.Fa fildes
-is the file descriptor of the stream connected to the multiplexing
-driver.
-.Fa arg
-is the multiplexor ID number that was returned by the
-.Dv I_LINK .
-If
-.Fa arg
-is \(mi1, then all streams that were linked to
-.Fa fildes
-are disconnected.
-As in
-.Dv I_LINK ,
-this command requires the multiplexing driver to acknowledge the unlink.
-On failure,
-.Va errno
-is set to one of the following values:
-.Bl -tag -width EINVAL
-.It Er ENXIO
-Hangup received on
-.Va fildes .
-.It Er ETIME
-Time out before acknowledgement message was received at stream head.
-.It Er ENOSR
-Unable to allocate storage to perform the
-.Dv I_UNLINK
-due to insufficient
-STREAMS memory resources.
-.It Er EINVAL
-.Fa arg
-is an invalid multiplexor ID number or
-.Fa fildes
-is not the stream on which the
-.Dv I_LINK
-that returned
-.Fa arg
-was performed.
-.It Er EINVAL
-.Fa fildes
-is the file descriptor of a pipe or FIFO.
-.El
-.Pp
-An
-.Dv I_UNLINK
-can also fail while waiting for the multiplexing driver to
-acknowledge the link request, if a message indicating an error or a hangup is
-received at the stream head of
-.Fa fildes .
-In addition, an error code can be
-returned in the positive or negative acknowledgement message.
-For these cases,
-.Dv I_UNLINK
-will fail with
-.Va errno
-set to the value in the message.
-.It Dv I_PLINK
-Connects two streams, where
-.Fa fildes
-is the file descriptor of the stream
-connected to the multiplexing driver, and
-.Fa arg
-is the file descriptor of
-the stream connected to another driver.
-The stream designated by
-.Fa arg
-gets
-connected via a persistent link below the multiplexing driver.
-.Dv I_PLINK
-requires the multiplexing driver to send an acknowledgement message to the
-stream head regarding the linking operation.
-This call creates a persistent
-link that continues to exist even if the file descriptor
-.Fa fildes
-associated with the upper stream to the multiplexing driver is closed.
-This
-call returns a multiplexor ID number (an identifier that may be used to
-disconnect the multiplexor, see
-.Dv I_PUNLINK )
-on success, and \(mi1 on failure.
-On failure,
-.Va errno
-is set to one of the following values:
-.Bl -tag -width EAGAIN
-.It Er ENXIO
-Hangup received on
-.Fa fildes .
-.It Er ETIME
-Time out before acknowledgement message was received at the stream head.
-.It Er EAGAIN
-Unable to allocate STREAMS storage to perform the
-.Dv I_PLINK .
-.It Er EBADF
-.Va arg
-is not a valid, open file descriptor.
-.It Er EINVAL
-.Va fildes
-does not support multiplexing.
-.It Er EINVAL
-.Va arg
-is not a stream or is already linked under a multiplexor.
-.It Er EINVAL
-The specified link operation would cause a
-.Dq cycle
-in the resulting configuration; that is, if a driver would be linked into the
-multiplexing configuration in more than one place.
-.It Er EINVAL
-.Fa fildes
-is the file descriptor of a pipe or FIFO.
-.El
-.Pp
-An
-.Dv I_PLINK
-can also fail while waiting for the multiplexing driver to
-acknowledge the link request, if a message indicating an error on a hangup is
-received at the stream head of
-.Fa fildes .
-In addition, an error code can be
-returned in the positive or negative acknowledgement message.
-For these cases,
-.Dv I_PLINK
-will fail with
-.Va errno
-set to the value in the message.
-.It Dv I_PUNLINK
-Disconnects the two streams specified by
-.Fa fildes
-and
-.Fa arg
-that are
-connected with a persistent link.
-.Fa fildes
-is the file descriptor of the
-stream connected to the multiplexing driver.
-.Fa arg
-is the multiplexor ID number that was returned by
-.Dv I_PLINK
-when a stream was linked below the multiplexing driver.
-If
-.Fa arg
-is
-.Dv MUXID_ALL
-then all streams that are persistent links to
-.Fa fildes
-are disconnected.
-As in
-.Dv I_PLINK ,
-this command requires the multiplexing driver to acknowledge the unlink.
-On failure,
-.Va errno
-is set to one of the following values:
-.Bl -tag -width EAGAIN
-.It Sy ENXIO
-Hangup received on
-.Fa fildes .
-.It Er ETIME
-Time out before acknowledgement message was received at the stream head.
-.It Er EAGAIN
-Unable to allocate buffers for the acknowledgement message.
-.It Er EINVAL
-Invalid multiplexor ID number.
-.It Er EINVAL
-.Fa fildes
-is the file descriptor of a pipe or FIFO.
-.El
-.Pp
-An
-.Dv I_PUNLINK
-can also fail while waiting for the multiplexing driver to
-acknowledge the link request if a message indicating an error or a hangup is
-received at the stream head of
-.Fa fildes .
-In addition, an error code can be
-returned in the positive or negative acknowledgement message.
-For these cases,
-.Dv I_PUNLINK
-will fail with
-.Va errno
-set to the value in the message.
-.El
-.Sh RETURN VALUES
-Unless specified otherwise above, the return value from
-.Xr ioctl 2
-is
-.Sy 0
-upon success and
-.Sy \(mi1
-upon failure, with
-.Va errno
-set as indicated.
-.Sh SEE ALSO
-.Xr close 2 ,
-.Xr fcntl 2 ,
-.Xr getmsg 2 ,
-.Xr ioctl 2 ,
-.Xr open 2 ,
-.Xr poll 2 ,
-.Xr putmsg 2 ,
-.Xr read 2 ,
-.Xr write 2 ,
-.Xr Intro 3 ,
-.Xr signal 3C ,
-.Xr signal.h 3HEAD
-.Pp
-.%B STREAMS Programming Guide
diff --git a/usr/src/man/man7i/termio.7i b/usr/src/man/man7i/termio.7i
deleted file mode 100644
index ed4bbff5c4..0000000000
--- a/usr/src/man/man7i/termio.7i
+++ /dev/null
@@ -1,2193 +0,0 @@
-.\" Copyright (c) 2005, Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 2019, Joyent, Inc. All Rights Reserved.
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.Dd August 13, 2021
-.Dt TERMIO 7I
-.Os
-.Sh NAME
-.Nm termio
-.Nd general terminal interface
-.Sh SYNOPSIS
-.In termio.h
-.Fn ioctl "int fildes" "int request" "struct termio *arg"
-.Fn ioctl "int fildes" "int request" "int arg"
-.Pp
-.In termios.h
-.Fn ioctl "int fildes" "int request" "struct termios *arg"
-.Sh DESCRIPTION
-This release supports a general interface for asynchronous communications ports
-that is hardware-independent.
-The user interface to this functionality is using
-function calls (the preferred interface) described in
-.Xr termios 3C
-or
-.Fn ioctl
-commands described in this section.
-This section also discusses the
-common features of the terminal subsystem which are relevant with both user
-interfaces.
-.Pp
-When a terminal file is opened, it normally causes the process to wait until a
-connection is established.
-In practice, user programs seldom open terminal
-files; they are opened by the system and become a user's standard input,
-output, and error files.
-The first terminal file opened by the session leader
-that is not already associated with a session becomes the controlling terminal
-for that session.
-The controlling terminal plays a special role in handling
-quit and interrupt signals, as discussed below.
-The controlling terminal is
-inherited by a child process during a
-.Xr fork 2 .
-A process can break this
-association by changing its session using
-.Xr setsid 2 .
-.Pp
-A terminal associated with one of these files ordinarily operates in
-full-duplex mode.
-Characters may be typed at any time, even while output is
-occurring, and are only lost when the character input buffers of the system
-become completely full, which is rare.
-For example, the number of characters in
-the line discipline buffer may exceed
-.Brq Dv MAX_CANON
-and
-.Dv IMAXBEL
-(see below) is not set, or the user may accumulate
-.Brq Dv MAX_INPUT
-number of input characters that have not yet been read by some program.
-When the input
-limit is reached, all the characters saved in the buffer up to that point are
-thrown away without notice.
-.Ss "Session Management (Job Control)"
-A control terminal will distinguish one of the process groups in the session
-associated with it to be the foreground process group.
-All other process
-groups in the session are designated as background process groups.
-This foreground process group plays a special role in handling signal-generating
-input characters, as discussed below.
-By default, when a controlling terminal
-is allocated, the controlling process's process group is assigned as
-foreground process group.
-.Pp
-Background process groups in the controlling process's session are subject to a
-job control line discipline when they attempt to access their controlling
-terminal.
-Process groups can be sent signals that will cause them to stop,
-unless they have made other arrangements.
-An exception is made for members of
-orphaned process groups.
-.Pp
-An orphaned process group is one where the process group (see
-.Xr getpgid 2 )
-has no members with a parent in a different process group but sharing the same
-controlling terminal.
-When a member of an orphaned process group attempts to
-access its controlling terminal, EIO is returned because there would be no way
-to restart the process if it were stopped on one of these signals.
-.Pp
-If a member of a background process group attempts to read its controlling
-terminal, its process group will be sent a
-.Dv SIGTTIN
-signal, which will
-normally cause the members of that process group to stop.
-If, however, the
-process is ignoring or holding
-.Dv SIGTTIN ,
-or is a member of an orphaned
-process group, the read will fail with
-.Va errno
-set to
-.Er EIO ,
-and no signal is sent.
-.Pp
-If a member of a background process group attempts to write its controlling
-terminal and the
-.Dv TOSTOP
-bit is set in the
-.Fa c_lflag
-field, its process group is sent a
-.Dv SIGTTOU
-signal, which will normally cause the
-members of that process group to stop.
-If, however, the process is ignoring or
-holding
-.Dv SIGTTOU ,
-the write will succeed.
-If the process is not ignoring
-or holding
-.Dv SIGTTOU
-and is a member of an orphaned process group, the
-write will fail with
-.Va errno
-set to
-.Er EIO ,
-and no signal will be sent.
-.Pp
-If
-.Dv TOSTOP
-is set and a member of a background process group attempts to
-.Fn ioctl
-its controlling terminal, and that
-.Fn ioctl
-will modify terminal parameters (for example,
-.Dv TCSETA ,
-.Dv TCSETAW ,
-.Dv TCSETAF ,
-or
-.Dv TIOCSPGRP ) ,
-its process group will be sent a
-.Dv SIGTTOU
-signal, which will normally cause the members of that process group to stop.
-If, however, the process is ignoring or holding
-.Dv SIGTTOU ,
-the ioctl will succeed.
-If the process is not ignoring or holding
-.Dv SIGTTOU
-and is a member of an orphaned
-process group, the write will fail with
-.Va errno
-set to
-.Er EIO ,
-and no signal will be sent.
-.Ss "Canonical Mode Input Processing"
-Normally, terminal input is processed in units of lines.
-A line is delimited by
-a newline
-.Po
-.Sy ASCII LF
-.Pc
-character, an end-of-file
-.Po
-.Sy ASCII EOT
-.Pc
-character, or an end-of-line character.
-This means that a program attempting to
-read will block until an entire line has been typed.
-Also, no matter how many
-characters are requested in the read call, at most one line will be returned.
-It is not necessary, however, to read a whole line at once; any number of
-characters may be requested in a read, even one, without losing information.
-.Pp
-During input, erase, erase2, and kill processing is normally done.
-The
-.Sy ERASE
-and
-.Sy ERASE2
-character (by default, the character
-.Sy DEL
-for
-.Sy ERASE
-and
-.Sy Control-h
-for
-.Sy ERASE2 )
-erases the last character typed.
-The
-.Sy WERASE
-character (the character
-.Sy Control-w )
-erases the
-last "word" typed in the current input line (but not any preceding spaces or
-tabs).
-A
-.Dq word
-is defined as a sequence of non-blank characters, with tabs counted as blanks.
-None of
-.Sy ERASE
-or
-.Sy ERASE2
-or
-.Sy WERASE
-will erase beyond the beginning of the line.
-The
-.Sy KILL
-character (by default,
-the character
-.Sy NAK )
-kills (deletes) the entire input line, and optionally
-outputs a newline character.
-All these characters operate on a key stroke basis,
-independent of any backspacing or tabbing that may have been done.
-The
-.Sy REPRINT
-character (the character
-.Sy Control-r )
-prints a newline followed by all characters that have not been read.
-Reprinting also occurs automatically if
-characters that would normally be erased from the screen are fouled by program
-output.
-The characters are reprinted as if they were being echoed;
-consequencely, if
-.Dv ECHO
-is not set, they are not printed.
-.Pp
-The
-.Sy ERASE ,
-.Sy ERASE2 ,
-and
-.Sy KILL
-characters may be entered literally by preceding them with the escape character.
-In this case, the escape character is not read.
-The erase, erase2, and kill characters may be changed.
-.Ss "Non-canonical Mode Input Processing"
-In non-canonical mode input processing, input characters are not assembled into
-lines, and erase and kill processing does not occur.
-The
-.Sy MIN
-and
-.Sy TIME
-values are used to determine how to process the characters received.
-.Pp
-.Sy MIN
-represents the minimum number of characters that should be received
-when the read is satisfied (that is, when the characters are returned to the
-user).
-.Sy TIME
-is a timer of 0\&.10-second granularity that is used to timeout
-bursty and short-term data transmissions.
-The four possible values for
-.Sy MIN
-and
-.Sy TIME
-and their interactions are described below.
-.Bl -tag -width "Case A: Min > 0, Time > 0"
-.It Sy Case A: MIN > 0, TIME > 0
-In this case,
-.Sy TIME
-serves as an intercharacter timer and is activated
-after the first character is received.
-Since it is an intercharacter timer, it
-is reset after a character is received.
-The interaction between
-.Sy MIN
-and
-.Sy TIME
-is as follows: as soon as one character is received, the
-intercharacter timer is started.
-If
-.Sy MIN
-characters are received before
-the intercharacter timer expires (note that the timer is reset upon receipt of
-each character), the read is satisfied.
-If the timer expires before
-.Sy MIN
-characters are received, the characters received to that point are returned to
-the user.
-Note that if
-.Sy TIME
-expires, at least one character will be
-returned because the timer would not have been enabled unless a character was
-received.
-In this case (MIN > 0, TIME > 0), the read sleeps until the
-.Sy MIN
-and
-.Sy TIME
-mechanisms are activated by the receipt of the first character.
-If the number of characters read is less than the number of characters
-available, the timer is not reactivated and the subsequent read is satisfied
-immediately.
-.It Sy Case B: MIN > 0, TIME = 0
-In this case, since the value of
-.Sy TIME
-is zero, the timer plays no role
-and only
-.Sy MIN
-is significant.
-A pending read is not satisfied until
-.Sy MIN
-characters are received (the pending read sleeps until
-.Sy MIN
-characters are received).
-A program that uses this case to read record based
-terminal
-.Sy I/O
-may block indefinitely in the read operation.
-.It Sy Case C: MIN = 0, TIME > 0
-In this case, since
-.Sy MIN
-0,
-.Sy TIME
-no longer represents an
-intercharacter timer: it now serves as a read timer that is activated as soon
-as a
-.Xr read 2
-is done.
-A read is satisfied as soon as a single character is
-received or the read timer expires.
-Note that, in this case, if the timer
-expires, no character is returned.
-If the timer does not expire, the only way
-the read can be satisfied is if a character is received.
-In this case, the
-read will not block indefinitely waiting for a character; if no character is
-received within
-.Sy TIME
-*\&.10 seconds after the read is initiated, the read
-returns with zero characters.
-.It Sy Case D: MIN = 0, TIME = 0
-In this case, return is immediate.
-The minimum of either the number of
-characters requested or the number of characters currently available is
-returned without waiting for more characters to be input.
-.El
-.Ss "Comparing Different Cases of MIN, TIME Interaction"
-Some points to note about
-.Sy MIN
-and
-.Sy TIME :
-.Bl -bullet -offset 2n
-.It
-In the following explanations, note that the interactions of
-.Sy MIN
-and
-.Sy TIME
-are not symmetric.
-For example, when
-.Sy MIN
-> 0 and
-.Sy TIME
-= 0,
-.Sy TIME
-has no effect.
-However, in the opposite case, where
-.Sy MIN
-= 0 and
-.Sy TIME
-> 0, both
-.Sy MIN
-and
-.Sy TIME
-play a role in that
-.Sy MIN
-is satisfied with the receipt of a single character.
-.It
-Also note that in case A
-.Po
-.Sy MIN
-> 0,
-.Sy TIME
-> 0
-.Pc ,
-.Sy TIME
-represents
-an intercharacter timer, whereas in case C
-.Po
-.Sy MIN
-= 0,
-.Sy TIME
-> 0
-.Pc ,
-.Sy TIME
-represents a read timer.
-.El
-.Pp
-These two points highlight the dual purpose of the
-.Sy MIN/TIME
-feature.
-Cases A and B, where
-.Sy MIN
-> 0, exist to handle burst mode activity (for
-example, file transfer programs), where a program would like to process at
-least
-.Sy MIN
-characters at a time.
-In case A, the inteercharacter timer is
-activated by a user as a safety measure; in case B, the timer is turned off.
-.Pp
-Cases C and D exist to handle single character, timed transfers.
-These cases
-are readily adaptable to screen-based applications that need to know if a
-character is present in the input queue before refreshing the screen.
-In case
-C, the read is timed, whereas in case D, it is not.
-.Pp
-Another important note is that
-.Sy MIN
-is always just a minimum.
-It does not
-denote a record length.
-For example, if a program does a read of 20 bytes,
-.Sy MIN
-is 10, and 25 characters are present, then 20 characters will be
-returned to the user.
-.Ss "Writing Characters"
-When one or more characters are written, they are transmitted to the terminal
-as soon as previously written characters have finished typing.
-nputt characters
-are echoed as they are typed if echoing has been enabled.
-If a process produces
-characters more rapidly than they can be typed, it will be suspended when its
-output queue exceeds some limit.
-When the queue is drained down to some
-threshold, the program is resumed.
-.Ss "Special Characters"
-Certain characters have special functions on input.
-These functions and their default character values are summarized as follows:
-.Bl -tag -width REPRINT
-.It Sy INTR
-(Control-c or
-.Sy ASCII ETX )
-generates a
-.Dv SIGINT
-signal.
-.Dv SIGINT
-is sent to all foreground processes associated with the controlling terminal.
-Normally, each such process is forced to terminate, but arrangements may be
-made either to ignore the signal or to receive a trap to an agreed upon
-location.
-(See
-.Xr signal.h 3HEAD ) .
-.It Sy QUIT
-(Control-| or
-.Sy ASCII FS )
-generates a
-.Dv SIGQUIT
-signal.
-Its treatment
-is identical to the interrupt signal except that, unless a receiving process
-has made other arrangements, it will not only be terminated but a core image
-file (called
-.Pa core )
-will be created in the current working directory.
-.It Sy ERASE
-(DEL) erases the preceding character.
-It does not erase beyond
-the start of a line, as delimited by a
-.Sy NL ,
-.Sy EOF ,
-.Sy EOL ,
-or
-.Sy EOL2
-character.
-.It Sy ERASE2
-(Control-h or
-.Sy ASCII BS )
-erases the preceding character, with behaviour identical to that of ERASE.
-.It Sy WERASE
-(Control-w or
-.Sy ASCII ETX )
-erases the preceding
-.Dq word .
-It does not erase beyond the start of a line, as delimited by a
-.Sy NL ,
-.Sy EOF ,
-.Sy EOL ,
-or
-.Sy EOL2
-character.
-.It Sy KILL
-(Control-u or
-.Sy ASCII NAK )
-deletes the entire line, as delimited by a
-.Sy NL ,
-.Sy EOF ,
-.Sy EOL ,
-or
-.Sy EOL2
-character.
-.It Sy REPRINT
-(Control-r or
-.Sy ASCII DC2 )
-reprints all characters, preceded by a newline, that have not been read.
-.It Sy EOF
-(Control-d or
-.Sy ASCII EOT )
-may be used to generate an end-of-file from a terminal.
-When received, all the characters waiting to be read are immediately
-passed to the program, without waiting for a newline, and the
-.Sy EOF
-is discarded.
-Thus, if no characters are waiting (that is, the
-.Sy EOF
-occurred
-at the beginning of a line) zero characters are passed back, which is the
-standard end-of-file indication.
-Unless escaped, the
-.Sy EOF
-character is not
-echoed.
-Because
-.Sy EOT
-is the default
-.Sy EOF
-character, this prevents
-terminals that respond to
-.Sy EOT
-from hanging up.
-.It Sy NL
-.Pq Sy ASCII LF
-is the normal line delimiter.
-It cannot be changed or escaped.
-.It Sy EOL
-.Pq Sy ASCII NULL
-is an additional line delimiter, like
-.Sy NL .
-It is not normally used.
-.It Sy EOL2
-is another additional line delimiter.
-.It Sy SWTCH
-(Control-z or
-.Sy ASCII EM )
-Header file symbols related to this special
-character are present for compatibility purposes only and the kernel takes no
-special action on matching SWTCH (except to discard the character).
-.It Sy SUSP
-(Control-z or
-.Sy ASCII SUB )
-generates a
-.Dv SIGTSTP
-signal.
-.Dv SIGTSTP
-stops all processes in the foreground process group for that terminal.
-.It Sy DSUSP
-(Control-y or
-.Sy ASCII EM ) .
-It generates a
-.Dv SIGTSTP
-signal as
-.Sy SUSP
-does, but the signal is sent when a process in the foreground
-process group attempts to read the
-.Sy DSUSP
-character, rather than when it is typed.
-.It Sy STOP
-(Control-s or
-.Sy ASCII DC3 )
-can be used to suspend output temporarily.
-It is useful with
-.Sy CRT
-terminals to prevent output from disappearing before it can be read.
-While output is suspended,
-.Sy STOP
-characters are ignored and
-not read.
-.It Sy START
-(Control-q or
-.Sy ASCII DC1 )
-is used to resume output.
-Output has been suspended by a
-.Sy STOP
-character.
-While output is not suspended,
-.Sy START
-characters are ignored and not read.
-.It Sy DISCARD
-(Control-o or
-.Sy ASCII SI )
-causes subsequent output to be discarded.
-Output is discarded until another
-.Sy DISCARD
-character is typed, more input
-arrives, or the condition is cleared by a program.
-.It Sy STATUS
-(Control-t or
-.Sy ASCII DC4 )
-generates a
-.Dv SIGINFO
-signal.
-Processes with a handler will output status information when they receive
-.Dv SIGINFO ,
-for
-example,
-.Xr dd 1M .
-If a process does not have a
-.Dv SIGINFO
-handler, the
-signal will be ignored.
-.It Sy LNEXT
-(Control-v or
-.Sy ASCII SYN )
-causes the special meaning of the next character to be ignored.
-This works for all the special characters mentioned above.
-It
-allows characters to be input that would otherwise be interpreted by the system
-(for example
-.Sy KILL ,
-.Sy QUIT ) .
-The character values for
-.Sy INTR ,
-.Sy QUIT ,
-.Sy ERASE ,
-.Sy ERASE2 ,
-.Sy WERASE ,
-.Sy KILL ,
-.Sy REPRINT ,
-.Sy EOF ,
-.Sy EOL ,
-.Sy EOL2 ,
-.Sy SWTCH ,
-.Sy SUSP ,
-.Sy DSUSP ,
-.Sy STOP ,
-.Sy START ,
-.Sy DISCARD ,
-.Sy STATUS ,
-and
-.Sy LNEXT
-may be changed to suit individual tastes.
-If the value of a special control character
-is
-.Dv _POSIX_VDISABLE
-(0), the function of that special control character is disabled.
-The
-.Sy ERASE ,
-.Sy ERASE2 ,
-.Sy KILL ,
-and
-.Sy EOF
-characters may be
-escaped by a preceding backslash (\e) character, in which case no special
-function is done.
-Any of the special characters may be preceded by the
-.Sy LNEXT
-character, in
-which case no special function is done.
-.El
-.Ss "Modem Disconnect"
-When a modem disconnect is detected, a
-.Dv SIGHUP
-signal is sent to the
-terminal's controlling process.
-Unless other arrangements have been made, these
-signals cause the process to terminate.
-If
-.Dv SIGHUP
-is ignored or caught,
-any subsequent read returns with an end-of-file indication until the terminal
-is closed.
-.Pp
-If the controlling process is not in the foreground process group of the
-terminal, a
-.Dv SIGTSTP
-is sent to the terminal's foreground process group.
-Unless other arrangements have been made, these signals cause the processes to
-stop.
-.Pp
-Processes in background process groups that attempt to access the controlling
-terminal after modem disconnect while the terminal is still allocated to the
-session will receive appropriate
-.Dv SIGTTOU
-and
-.Dv SIGTTIN
-signals.
-Unless other arrangements have been made, this signal causes the processes to
-stop.
-.Pp
-The controlling terminal will remain in this state until it is reinitialized
-ithh a successful open by the controlling process, or deallocated by the
-controlling process.
-.Ss "Terminal Parameters"
-The parameters that control the behavior of devices and modules providing the
-.Vt termios
-interface are specified by the
-.Vt termios
-structure defined by
-.In termios.h .
-Several
-.Xr ioctl 2
-system calls that fetch or change
-these parameters use this structure that contains the following members:
-.Bd -literal -offset 2n
-tcflag_t c_iflag; /* input modes */
-tcflag_t c_oflag; /* output modes */
-tcflag_t c_cflag; /* control modes */
-tcflag_t c_lflag; /* local modes */
-cc_t c_cc[NCCS]; /* control chars */
-.Ed
-.Pp
-The special control characters are defined by the array
-.Fa c_cc .
-The symbolic name
-.Dv NCCS
-is the size of the Control-character array and is also
-defined by
-.In termios.h .
-The relative positions, subscript names, and
-typical default values for each function are as follows:
-.Bl -column "Relative Position" "Subscript Name" "Typical Default Value"
-.It Relative Position Ta Subscript Name Ta Typical Default Value
-.It 0 Ta Dv VINTR Ta Sy ETX
-.It 1 Ta Dv VQUIT Ta Sy FS
-.It 2 Ta Dv VERASE Ta Sy DEL
-.It 3 Ta Dv VKILL Ta Sy NAK
-.It 4 Ta Dv VEOF Ta Sy EOT
-.It 5 Ta Dv VEOL Ta Sy NUL
-.It 6 Ta Dv VEOL2 Ta Sy NUL
-.It 7 Ta Dv VWSTCH Ta Sy NUL
-.It 8 Ta Dv VSTART Ta Sy NUL
-.It 9 Ta Dv VSTOP Ta Sy DC3
-.It 10 Ta Dv VSUSP Ta Sy SUB
-.It 11 Ta Dv VDSUSP Ta Sy EM
-.It 12 Ta Dv VREPRINT Ta Sy DC2
-.It 13 Ta Dv VDISCARD Ta Sy SI
-.It 14 Ta Dv VWERASE Ta Sy ETB
-.It 15 Ta Dv VLNEXT Ta Sy SYN
-.It 16 Ta Dv VSTATUS Ta Sy DC4
-.It 17 Ta Dv VERASE2 Ta Sy BS
-.It 18-19 Ta Reserved Ta
-.El
-.Ss "Input Modes"
-The
-.Fa c_iflag
-field describes the basic terminal input control:
-.Pp
-.Bl -tag -width "IMAXBEL" -offset 2n -compact
-.It Dv IGNBRK
-Ignore break condition.
-.It Dv BRKINT
-Signal interrupt on break.
-.It Dv IGNPAR
-Ignore characters with parity errors.
-.It Dv PARMRK
-Mark parity errors.
-.It Dv INPCK
-Enable input parity check.
-.It Dv ISTRIP
-Strip character.
-.It Dv INLCR
-Map NL to CR on input.
-.It Dv IGNCR
-Ignore CR.
-.It Dv ICRNL
-Map CR to NL on input.
-.It Dv IUCLC
-Map upper-case to lower-case on input.
-.It Dv IXON
-Enable start/stop output control.
-.It Dv IXANY
-Enable any character to restart output.
-.It Dv IXOFF
-Enable start/stop input control.
-.It Dv IMAXBEL
-Echo
-.Sy BEL
-on input line too long.
-.El
-.Pp
-If
-.Dv IGNBRK
-is set, a break condition (a character framing error with data
-all zeros) detected on input is ignored, that is, not put on the input queue
-and therefore not read by any process.
-If
-.Dv IGNBRK
-is not set and
-.Dv BRKINT
-is set, the break condition shall flush the input and output
-queues and if the terminal is the controlling terminal of a foreground process
-group, the break condition generates a single
-.Dv SIGINT
-signal to that
-foreground process group.
-If neither
-.Dv IGNBRK
-nor
-.Dv BRKINT
-is set, a
-break condition is read as a single
-.Ql \e0
-.Pq Sy ASCII NULL
-character, or if
-.Dv PARMRK
-is set, as
-.Ql \e377 ,
-.Ql \e0 ,
-.Em c ,
-where
-.Ql \e377
-is a single character
-with value 377 octal (0xff hex, 255 decimal),
-.Ql \e0
-is a single character with value
-.Sy 0 ,
-and
-.Em c
-is the errored character received.
-.Pp
-If
-.Dv IGNPAR
-is set, a byte with framing or parity errors (other than
-break) is ignored.
-.Pp
-If
-.Dv PARMRK
-is set, and
-.Dv IGNPAR
-is not set, a byte with a framing or
-parity error (other than break) is given to the application as the
-three-character sequence:
-.Ql \e377 ,
-.Ql \e0 ,
-c, where
-.Ql \e377
-is a single character with value 377 octal (0xff hex, 255 decimal),
-.Ql \e0
-is a single character with value 0, and c is the errored character received.
-To avoid ambiguity in this case, if
-.Dv ISTRIP
-is not set, a valid character
-of
-.Ql \e377
-is given to the application as
-.Ql \e377 .
-If neither
-.Dv IGNPAR
-nor
-.Dv PARMRK
-is set, a framing or parity error (other than break) is given to
-the application as a single
-.Ql \e0
-.Po
-.Sy ASCII NULL
-.Pc
-character.
-.Pp
-If
-.Dv INPCK
-is set, input parity checking is enabled.
-If
-.Dv INPCK
-is not
-set, input parity checking is disabled.
-This allows output parity generation
-without input parity errors.
-Note that whether input parity checking is
-enabled or disabled is independent of whether parity detection is enabled or
-disabled.
-If parity detection is enabled but input parity checking is
-disabled, the hardware to which the terminal is connected will recognize the
-parity bit, but the terminal special file will not check whether this is set
-correctly or not.
-.Pp
-If
-.Dv ISTRIP
-is set, valid input characters are first stripped to seven
-bits, otherwise all eight bits are processed.
-.Pp
-If
-.Dv INLCR
-is set, a received
-.Sy NL
-character is translated into a
-.Sy CR
-character.
-If
-.Dv IGNCR
-is set, a received
-.Sy CR
-character is ignored (not read).
-Otherwise, if
-.Dv ICRNL
-is set, a received
-.Sy CR
-character is translated into a
-.Sy NL
-character.
-.Pp
-If
-.Dv IUCLC
-is set, a received upper case, alphabetic character is
-translated into the corresponding lower case character.
-.Pp
-If
-.Dv IXON
-is set, start/stop output control is enabled.
-A received
-.Sy STOP
-character suspends output and a received
-.Sy START
-character
-restarts output.
-The
-.Sy STOP
-and
-.Sy START
-characters will not be read,
-but will merely perform flow control functions.
-If
-.Dv IXANY
-is set, any
-input character restarts output that has been suspended.
-.Pp
-If
-.Dv IXOFF
-is set, the system transmits a
-.Sy STOP
-character when the
-input queue is nearly full, and a
-.Sy START
-character when enough input has
-been read so that the input queue is nearly empty again.
-.Pp
-If
-.Dv IMAXBEL
-is set, the
-.Sy ASCII BEL
-character is echoed if the input stream overflows.
-Further input is not stored, but any input already present in
-the input stream is not disturbed.
-If
-.Dv IMAXBEL
-is not set, no
-.Sy BEL
-character is echoed, and all input present in the input queue is discarded if
-the input stream overflows.
-.Ss "Output Modes"
-The
-.Fa c_oflag
-field specifies the system treatment of output:
-.Pp
-.Bl -tag -width ONLRET -offset 2n -compact
-.It Dv OPOST
-Post-process output.
-.It Dv OLCUC
-Map lower case to upper on output.
-.It Dv ONLCR
-Map NL to CR-NL on output.
-.It Dv OCRNL
-Map CR to NL on output.
-.It Dv ONOCR
-No
-.Sy CR
-output at column 0.
-.It Dv ONLRET
-.Sy NL
-performs
-.Sy CR
-function.
-.It Dv OFILL
-Use fill characters for delay.
-.It Dv OFDEL
-Fill is
-.Sy DEL ,
-else
-.Sy INULL .
-.It Dv NLDLY
-Select newline delays:
-.Bl -tag -width NL0 -compact -offset 2n
-.It Sy NL0
-.It Sy NL1
-.El
-.It Dv CRDLY
-Select carriage-return delays:
-.Bl -tag -width CR0 -compact -offset 2n
-.It Dv CR0
-.It Dv CR1
-.It Dv CR2
-.It Dv CR3
-.El
-.It Dv TABDLY
-Select horizontal tab delays or tab expansion:
-.Bl -tag -width XTABS -compact -offset 2n
-.It Dv TAB0
-.It Dv TAB1
-.It Dv TAB2
-.It Dv TAB3
-Expand tabs to spaces
-.It Dv XTABS
-Expand tabs to spaces
-.El
-.It Dv BSDLY
-Select backspace delays:
-.Bl -tag -width BS0 -offset 2n -compact
-.It Dv BS0
-.It Dv BS1
-.El
-.It Dv VTDLY
-Select vertical tab delays:
-.Bl -tag -width VT0 -offset 2n -compact
-.It Dv VT0
-.It Dv VT1
-.El
-.It Dv FFDLY
-Select form feed delays:
-.Bl -tag -width FF0 -offset 2n -compact
-.It Dv FF0
-.It Dv FF1
-.El
-.El
-.Pp
-If
-.Dv OPOST
-is set, output characters are post-processed as indicated by the
-remaining flags; otherwise, characters are transmitted without change.
-.Pp
-If
-.Dv OLCUC
-is set, a lower case alphabetic character is transmitted as the
-corresponding upper case character.
-This function is often used in conjunction
-with
-.Dv IUCLC .
-.Pp
-If
-.Dv ONLCR
-is set, the
-.Sy NL
-character is transmitted as the
-.Sy CR-NL
-character pair.
-If
-.Dv OCRNL
-is set, the
-.Sy CR
-character is transmitted as the
-.Sy NL
-character.
-If
-.Dv ONOCR
-is set, no
-.Sy CR
-character is transmitted when at column 0 (first position).
-If
-.Dv ONRET
-is set, the
-.Sy NL
-character is assumed to do the carriage-return function; the column
-pointer is set to 0 and the delays specified for
-.Sy CR
-are used.
-Otherwise, the
-.Sy NL
-character is assumed to do just the line-feed function; the column
-pointer remains unchanged.
-The column pointer is also set to 0 if the
-.Sy CR
-character is actually transmitted.
-.Pp
-The delay bits specify how long transmission stops to allow for mechanical or
-other movement when certain characters are sent to the terminal.
-In all cases, a value of 0 indicates no delay.
-If
-.Dv OFILL
-is set, fill characters are transmitted for delay instead of a timed delay.
-This is useful for high baud rate terminals that need only a minimal delay.
-If
-.Dv OFDEL
-is set, the
-fill character is
-.Sy DEL ;
-otherwise it is
-.Sy NULL .
-.Pp
-If a form-feed or vertical-tab delay is specified, it lasts for about 2
-seconds.
-.Pp
-Newline delay lasts about 0\&.10 seconds.
-If
-.Dv ONLRET
-is set, the carriage-return delays are used instead of the newline delays.
-If
-.Dv OFILL
-is set, two fill characters are transmitted.
-.Pp
-Carriage-return delay type 1 is dependent on the current column position, type
-2 is about 0\&.10 seconds, and type 3 is about 0\&.15 seconds.
-If
-.Dv OFILL
-is set, delay type 1 transmits two fill characters, and type 2 transmits four
-fill characters.
-.Pp
-Horizontal-tab delay type 1 is dependent on the current column position.
-Type 2 is about 0\&.10 seconds.
-Type 3 specifies that tabs are to be expanded into spaces.
-If
-.Dv OFILL
-is set, two fill characters are transmitted for any delay.
-.Pp
-Backspace delay lasts about 0\&.05 seconds.
-If
-.Dv OFILL
-is set, one fill character is transmitted.
-.Pp
-The actual delays depend on line speed and system load.
-.Ss "Control Modes"
-The
-.Fa c_cflag
-field describes the hardware control of the terminal:
-.Bl -tag -width CIBAUDEXT -offset 2n
-.It Dv CBAUD
-Baud rate:
-.Bl -tag -width B4000000 -compact
-.It Dv B0
-Hang up
-.It Dv B50
-50 baud
-.It Dv B75
-75 baud
-.It Dv B110
-110 baud
-.It Dv B134
-134 baud
-.It Dv B150
-150 baud
-.It Dv B200
-200 baud
-.It Dv B300
-300 baud
-.It Dv B600
-600 baud
-.It Dv B1200
-1200 baud
-.It Dv B1800
-1800 baud
-.It Dv B2400
-2400 baud
-.It Dv B4800
-4800 baud
-.It Dv B9600
-9600 baud
-.It Dv B19200
-19200 baud
-.It Dv B38400
-38400 baud
-.It Dv B57600
-57600 baud
-.It Dv B76800
-76800 baud
-.It Dv B115200
-115200 baud
-.It Dv B153600
-153600 baud
-.It Dv B230400
-230400 baud
-.It Dv B307200
-307200 baud
-.It Dv B460800
-460800 baud
-.It Dv B921600
-921600 baud
-.It Dv B1000000
-1000000 baud
-.It Dv B1152000
-1152000 baud
-.It Dv B1500000
-1500000 baud
-.It Dv B2000000
-2000000 baud
-.It Dv B2500000
-2500000 baud
-.It Dv B3000000
-3000000 baud
-.It Dv B3500000
-3500000 baud
-.It Dv B4000000
-4000000 baud
-.El
-.It Dv CSIZE
-Character size:
-.Bl -tag -width CIBAUDEXT -compact
-.It Dv CS5
-5 bits
-.It Dv CS6
-6 bits
-.It Dv CS7
-7 bits
-.It Dv CS8
-8 bits
-.It Dv CSTOPB
-Send two stop bits, else one
-.It Dv CREAD
-Enable receiver
-.It Dv PARENB
-Parity enable
-.It Dv PARODD
-Odd parity, else even
-.It Dv HUPCL
-Hang up on last close
-.It Dv CLOCAL
-Local line, else dial-up
-.It Dv CIBAUD
-Input baud rate, if different from output rate
-.It Dv PAREXT
-Extended parity for mark and space parity
-.It Dv CRTSXOFF
-Enable inbound hardware flow control
-.It Dv CRTSCTS
-Enable outbound hardware flow control
-.It Dv CBAUDEXT
-Bit to indicate output speed > B38400
-.It Dv CIBAUDEXT
-Bit to indicate input speed > B38400
-.El
-.El
-.Pp
-The
-.Dv CBAUD
-bits together with the
-.Dv CBAUDEXT
-bit specify the output baud rate.
-To retrieve the output speed from the
-.Vt termios
-structure pointed to by
-.Fa termios_p
-see the following code segment.
-.Bd -literal -offset 2n
-speed_t ospeed;
-if (termios_p->c_cflag & CBAUDEXT)
- ospeed = (termios_p->c_cflag & CBAUD) + CBAUD + 1;
-else
- ospeed = termios_p->c_cflag & CBAUD;
-.Ed
-.Pp
-To store the output speed in the termios structure pointed to by
-.Fa termios_p
-see the following code segment.
-.Bd -literal -offset 2n
-speed_t ospeed;
-if (ospeed > CBAUD) {
- termios_p->c_cflag |= CBAUDEXT;
- ospeed -= (CBAUD + 1);
-} else {
- termios_p->c_cflag &= ~CBAUDEXT;
-}
-termios_p->c_cflag =
- (termios_p->c_cflag & ~CBAUD) | (ospeed & CBAUD);
-.Ed
-.Pp
-The zero baud rate,
-.Dv B0 ,
-is used to hang up the connection.
-If
-.Dv B0
-is specified, the data-terminal-ready signal is not asserted.
-Normally, this disconnects the line.
-.Pp
-If the
-.Dv CIBAUDEXT
-or
-.Dv CIBAUD
-bits are not zero, they specify the input baud rate, with the
-.Dv CBAUDEXT
-and
-.Dv CBAUD
-bits specifying the output baud rate; otherwise, the output and input baud
-rates are both specified by the
-.Dv CBAUDEXT
-and
-.Dv CBAUD
-bits.
-The values for the
-.Dv CIBAUD
-bits are the same as the values for the
-.Dv CBAUD
-bits, shifted left
-.Dv IBSHIFT
-bits.
-For any particular hardware, impossible speed changes are
-ignored.
-To retrieve the input speed in the
-.Vt termios
-structure pointed to
-by
-.Fa termios_p
-see the following code segment.
-.Bd -literal -offset 2n
-speed_t ispeed;
-if (termios_p->c_cflag & CIBAUDEXT) {
- ispeed = ((termios_p->c_cflag & CIBAUD) >> IBSHIFT)
- + (CIBAUD >> IBSHIFT) + 1;
-} else {
- ispeed = (termios_p->c_cflag & CIBAUD) >> IBSHIFT;
-}
-.Ed
-.Pp
-To store the input speed in the
-.Vt termios
-structure pointed to by
-.Fa termios_p
-see the following code segment.
-.Bd -literal -offset 2n
-speed_t ispeed;
-if (ispeed == 0) {
- ispeed = termios_p->c_cflag & CBAUD;
- if (termios_p->c_cflag & CBAUDEXT)
- ispeed += (CBAUD + 1);
-}
-if ((ispeed << IBSHIFT) > CIBAUD) {
- termios_p->c_cflag |= CIBAUDEXT;
- ispeed -= ((CIBAUD >> IBSHIFT) + 1);
-} else {
- termios_p->c_cflag &= ~CIBAUDEXT;
-}
-termios_p->c_cflag =
- (termios_p->c_cflag & ~CIBAUD) | ((ispeed << IBSHIFT) & CIBAUD);
-.Ed
-.Pp
-The
-.Dv CSIZE
-bits specify the character size in bits for both transmission and reception.
-This size does not include the parity bit, if any.
-If
-.Dv CSTOPB
-is set, two stop bits are used; otherwise, one stop bit is used.
-For example, at 110 baud, two stops bits are required.
-.Pp
-If
-.Dv PARENB
-is set, parity generation and detection is enabled, and a
-parity bit is added to each character.
-If parity is enabled, the
-.Dv PARODD
-flag specifies odd parity if set; otherwise, even parity is used.
-.Pp
-If
-.Dv CREAD
-is set, the receiver is enabled.
-Otherwise, no characters are received.
-.Pp
-If
-.Dv HUPCL
-is set, the line is disconnected when the last process with the
-line open closes it or terminates.
-That is, the data-terminal-ready signal is not asserted.
-.Pp
-If
-.Dv CLOCAL
-is set, the line is assumed to be a local, direct connection
-with no modem control; otherwise, modem control is assumed.
-.Pp
-If
-.Dv CRTSXOFF
-is set, inbound hardware flow control is enabled.
-.Pp
-If
-.Dv CRTSCTS
-is set, outbound hardware flow control is enabled.
-.Pp
-The four possible combinations for the state of
-.Dv CRTSCTS
-and
-.Dv CRTSXOFF
-bits and their interactions are described below.
-.Bl -tag -width "Case C:"
-.It Sy Case A :
-.Dv CRTSCTS
-off,
-.Dv CRTSXOFF
-off.
-In this case the hardware flow control is disabled.
-.It Sy Case B :
-.Dv CRTSCTS
-on,
-.Dv CRTSXOFF
-off.
-In this case only outbound hardware flow control is enabled.
-The state of CTS signal is used to do outbound flow control.
-It is expected that output will be suspended if CTS is low and resumed
-when CTS is high.
-.It Sy Case C :
-.Dv CRTSCTS
-off,
-.Dv CRTSXOFF
-on.
-In this case only inbound hardware flow control is enabled.
-The state of RTS signal is used to do inbound flow control.
-It is expected that input will be suspended if RTS is low and resumed when RTS
-is high.
-.It Sy Case D :
-.Dv CRTSCTS
-on,
-.Dv CRTSXOFF
-on.
-In this case both inbound and outbound hardware flow control are enabled.
-Uses the state of CTS signal to do outbound
-flow control and RTS signal to do inbound flow control.
-.El
-.Ss "Local Modes"
-The
-.Fa c_lflag
-field of the argument structure is used by the line
-discipline to control terminal functions.
-The basic line discipline provides the following:
-.Pp
-.Bl -tag -offset 2n -width SIGTTOU -compact
-.It Dv ISIG
-Enable signals.
-.It Dv ICANON
-Canonical input (erase and kill processing).
-.It Dv XCASE
-Canonical upper/lower presentation.
-.It Dv ECHO
-Enable echo.
-.It Dv ECHOE
-Echo erase character as
-.Sy BS Ns - Ns Sy SP Ns - Ns Sy BS
-&.
-.It Dv ECHOK
-Echo
-.Sy NL
-after kill character.
-.It Dv ECHONL
-Echo
-.Sy NL .
-.It Dv NOFLSH
-Disable flush after interrupt or quit.
-.It Dv TOSTOP
-Send
-.It Dv SIGTTOU
-for background output.
-.It Dv ECHOCTL
-Echo control characters as
-.Em char ,
-delete as ^?.
-.It Dv ECHOPRT
-Echo erase character as character erased.
-.It Dv ECHOKE
-.Sy BS Ns - Ns Sy SP Ns - Ns Sy BS
-erase entire line on line kill.
-.It Dv FLUSHO
-Output is being flushed.
-.It Dv PENDIN
-Retype pending input at next read or input character.
-.It Dv IEXTEN
-Enable extended (implementation-defined) functions.
-.El
-.Pp
-If
-.Dv ISIG
-is set, each input character is checked against the special
-control characters
-.Sy INTR ,
-.Sy QUIT ,
-.Sy SWTCH ,
-.Sy SUSP ,
-.Sy STATUS ,
-and
-.Sy DSUSP .
-If an input character matches one of these control characters, the function
-associated with that character is performed.
-.Po
-Note: If
-.Sy SWTCH
-is set and the character matches, the character is simply discarded.
-No other action is taken.
-.Pc
-If
-.Dv ISIG
-is not set, no checking is done.
-Thus, these special
-input functions are possible only if
-.Dv ISIG
-is set.
-.Pp
-If
-.Dv ICANON
-is set, canonical processing is enabled.
-This enables the erase
-and kill edit functions, and the assembly of input characters into lines
-delimited by
-.Sy NL-c ,
-.Sy EOF ,
-.Sy EOL ,
-and
-.Sy EOL .
-If
-.Dv ICANON
-is not set, read requests are satisfied directly from the input queue.
-A read is not satisfied until at least
-.Sy MIN
-characters have been received or the timeout value
-.Sy TIME
-has expired between characters.
-This allows fast bursts of input to be read efficiently while still allowing
-single character input.
-The time value represents tenths of seconds.
-.Pp
-If
-.Dv XCASE
-is set and
-.Dv ICANON
-is set, an upper case letter is
-accepted on input if preceded by a backslash
-.Ql \e
-character, and is output preceded by a backslash
-.Ql \e
-character.
-In this mode, the
-following escape sequences are generated on output and accepted on input:
-.Bl -column "FOR:" "USE:" -offset 2n
-.It FOR: Ta USE:
-.It ` Ta \e'
-.It | Ta \e!
-.It \(ap Ta \e^
-.It { Ta \e(
-.It } Ta \e)
-.It \e Ta \e\e
-.El
-.Pp
-For example, input A as \ea, \en as \e\en, and \eN as \e\e\en.
-.Pp
-If
-.Dv ECHO
-is set, characters are echoed as received.
-.Pp
-When
-.Dv ICANON
-is set, the following echo functions are possible.
-.Bl -bullet -offset indent
-.It
-If
-.Dv ECHO
-and
-.Dv ECHOE
-are set, and
-.Dv ECHOPRT
-is not set, the
-.Sy ERASE ,
-.Sy ERASE2 ,
-and
-.Sy WERASE
-characters are echoed as one or
-more ASCII BS SP BS, which clears the last character(s) from a
-.Sy CRT
-screen.
-.It
-If
-.Dv ECHO ,
-.Dv ECHOPRT ,
-and
-.Dv IEXTEN
-are set, the first
-.Sy ERASE ,
-.Sy ERASE2 ,
-and
-.Sy WERASE
-character in a sequence echoes as a backslash
-.Ql \e ,
-followed by the characters being erased.
-Subsequent
-.Sy ERASE
-and
-.Sy WERASE
-characters echo the characters being erased, in reverse order.
-The
-next non-erase character causes a
-.Ql /
-(slash) to be typed before it is echoed.
-.Dv ECHOPRT
-should be used for hard copy terminals.
-.It
-If
-.Dv ECHOKE
-and
-.Dv IEXTEN
-are set, the kill character is echoed by
-erasing each character on the line from the screen (using the mechanism
-selected by
-.Dv ECHOE
-and
-.Dv ECHOPR ) .
-.It
-If
-.Dv ECHOK
-is set, and
-.Dv ECHOKE
-is not set, the
-.Sy NL
-character is
-echoed after the kill character to emphasize that the line is deleted.
-Note
-that a
-.Ql \e
-(escape) character or an
-.Sy LNEXT
-character preceding the erase
-or kill character removes any special function.
-.It
-If
-.Dv ECHONL
-is set, the
-.Sy NL
-character is echoed even if
-.Dv ECHO
-is not set.
-This is useful for terminals set to local echo (so called
-half-duplex).
-.El
-.Pp
-If
-.Dv ECHOCTL
-and
-.Dv IEXTEN
-are set, all control characters (characters
-with codes between 0 and 37 octal) other than
-.Sy ASCII TAB ,
-.Sy ASCII NL ,
-the
-.Sy START
-character, and the
-.Sy STOP
-character,
-.Sy ASCII CR ,
-and
-.Sy ASCII BS
-are echoed as
-.No ^ Ns Em X ,
-where
-.Em X
-is the character given by adding
-.Ql 100
-octal to the code of the control character (so
-that the character with octal code
-.Ql 1
-is echoed as
-.No ^ Ns Sy A ) ,
-and the
-.Sy ASCII DEL
-character,
-with code
-.Ql 177
-octal, is echoed as
-.No ^ Ns Sy \&? .
-.Pp
-If
-.Dv NOFLSH
-is set, the normal flush of the input and output queues
-associated with the
-.Sy INTR ,
-.Sy QUIT ,
-.Sy STATUS ,
-and
-.Sy SUSP
-characters is not done.
-This bit should be set when restarting system calls
-that read from or write to a terminal
-.Po
-see
-.Xr sigaction 2
-.Pc .
-.Pp
-If
-.Dv TOSTOP
-and
-.Dv IEXTEN
-are set, the signal
-.Dv SIGTTOU
-is sent to
-a process that tries to write to its controlling terminal if it is not in the
-foreground process group for that terminal.
-This signal normally stops the process.
-Otherwise, the output generated by that process is output to the
-current output stream.
-Processes that are blocking or ignoring
-.Dv SIGTTOU
-signals are excepted and allowed to produce output, if any.
-.Pp
-If
-.Dv FLUSHO
-and
-.Dv IEXTEN
-are set, data written to the terminal is
-discarded.
-This bit is set when the
-.Sy FLUSH
-character is typed.
-A program can cancel the effect of typing the
-.Sy FLUSH
-character by clearing
-.Dv FLUSHO .
-.Pp
-If
-.Dv PENDIN
-and
-.Dv IEXTEN
-are set, any input that has not yet been read
-is reprinted when the next character arrives as input.
-.Dv PENDIN
-is then
-automatically cleared.
-.Pp
-If
-.Dv IEXTEN
-is set, the following implementation-defined functions are
-enabled: special characters (
-.Sy WERASE ,
-.Sy REPRINT ,
-.Sy DISCARD ,
-and
-.Sy LNEXT )
-and local flags (
-.Dv TOSTOP ,
-.Dv ECHOCTL ,
-.Dv ECHOPRT ,
-.Dv ECHOKE ,
-.Dv FLUSHO ,
-and
-.Dv PENDIN ) .
-.Ss "Minimum and Timeout"
-The
-.Sy MIN
-and
-.Sy TIME
-values were described previously, in the
-subsection,
-.Sy Non-canonical Mode Input Processing .
-The initial value of
-.Sy MIN
-is 1, and the initial value of
-.Sy TIME
-is 0.
-.Ss "Terminal Size"
-The number of lines and columns on the terminal's display is specified in the
-.Vt winsize
-structure defined by
-.In sys/termios.h
-and includes the following members:
-.Bd -literal -offset 2n
-unsigned short ws_row; /* rows, in characters */
-unsigned short ws_col; /* columns, in characters */
-unsigned short ws_xpixel; /* horizontal size, in pixels */
-unsigned short ws_ypixel; /* vertical size, in pixels */
-.Ed
-.Ss "Termio Structure"
-The SunOS/SVR4
-.Vt termio
-structure is used by some
-.Fn ioctl Ns s ;
-it is defined by
-.In sys/termio.h
-and includes the following members:
-.Bd -literal -offset 2n
-unsigned short c_iflag; /* input modes */
-unsigned short c_oflag; /* output modes */
-unsigned short c_cflag; /* control modes */
-unsigned short c_lflag; /* local modes */
-char c_line; /* line discipline */
-unsigned char c_cc[NCC]; /* control chars */
-.Ed
-.Pp
-The special control characters are defined by the array
-.Fa c_cc .
-The symbolic name
-.Dv NCC
-is the size of the Control-character array and is also
-defined by
-.In termio.h .
-The relative positions, subscript names, and typical
-default values for each function are as follows:
-.Bl -column "Relative Positions" "Subscript Names" "Typical Default Values"
-.It Relative Positions Ta Subscript Names Ta Typical Default Values
-.It 0 Ta VINTR Ta EXT
-.It 1 Ta VQUIT Ta FS
-.It 2 Ta VERASE Ta DEL
-.It 3 Ta VKILL Ta NAK
-.It 4 Ta VEOF Ta EOT
-.It 5 Ta VEOL Ta NUL
-.It 6 Ta VEOL2 Ta NUL
-.It 7 Ta Reserved Ta
-.El
-.Pp
-The
-.Sy MIN
-values is stored in the
-.Dv VMIN
-element of the
-.Fa c_cc
-array; the
-.Sy TIME
-value is stored in the
-.Dv VTIME
-element of the
-.Fa c_cc
-array.
-The
-.Dv VMIN
-element is the same element as the
-.Dv VEOF
-element; the
-.Dv VTIME
-element is the same element as the
-.Dv VEOL
-element.
-.Pp
-The calls that use the
-.Va termio
-structure only affect the flags and control
-characters that can be stored in the
-.Vt termio
-structure; all other flags and control characters are unaffected.
-.Ss "Modem Lines"
-On special files representing serial ports, modem control lines can be read.
-Control lines (if the underlying hardware supports it) may also be changed.
-Status lines are read-only.
-The following modem control and status lines may be
-supported by a device; they are defined by
-.In sys/termios.h :
-.Pp
-.Bl -tag -width "TIOCM_DTR" -compact -offset 2n
-.It Dv TIOCM_LE
-line enable
-.It Dv TIOCM_DTR
-data terminal ready
-.It Dv TIOCM_RTS
-request to send
-.It Dv TIOCM_ST
-secondary transmit
-.It Dv TIOCM_SR
-secondary receive
-.It Dv TIOCM_CTS
-clear to send
-.It Dv TIOCM_CAR
-carrier detect
-.It Dv TIOCM_RNG
-ring
-.It Dv TIOCM_DSR
-data set ready
-.El
-.Pp
-.Dv TIOCM_CD
-is a synonym for
-.Dv TIOCM_CAR ,
-and
-.Dv TIOCM_RI
-is a synonym for
-.Dv TIOCM_RNG .
-Not all of these are necessarily supported by any
-particular device; check the manual page for the device in question.
-.Pp
-The software carrier mode can be enabled or disabled using the
-.Dv TIOCSSOFTCAR
-.Fn ioctl .
-If the software carrier flag for a line is off,
-the line pays attention to the hardware carrier detect (DCD) signal.
-The
-.Sy tty
-device associated with the line cannot be opened until
-.Sy DCD
-is asserted.
-If the software carrier flag is on, the line behaves as if
-.Sy DCD
-is always asserted.
-.Pp
-The software carrier flag is usually turned on for locally connected terminals
-or other devices, and is off for lines with modems.
-.Pp
-To be able to issue the
-.Dv TIOCGSOFTCAR
-and
-.Dv TIOCSSOFTCAR
-.Fn ioctl
-calls, the
-.Sy tty
-line should be opened with
-.Dv O_NDELAY
-so that the
-.Xr open 2
-will not wait for the carrier.
-.Ss "Default Values"
-The initial
-.Vt termios
-values upon driver open is configurable.
-This is accomplished by setting the "ttymodes" property in the file
-.Pa /kernel/drv/options.conf .
-Since this property is assigned during system
-initialization, any change to the "ttymodes" property will not take effect
-until the next reboot.
-The string value assigned to this property should be in
-the same format as the output of the
-.Xr stty 1
-command with the -g option.
-.Pp
-If this property is undefined, the following
-.Vt termios
-modes are in effect.
-The initial input control value is
-.Dv BRKINT ,
-.Dv ICRNL ,
-.Dv IXON ,
-.Dv IMAXBEL .
-The initial output control value is
-.Dv OPOST ,
-.Dv ONLCR ,
-.Dv TAB3 .
-The initial hardware control value is
-.Dv B9600 ,
-.Dv CS8 ,
-.Dv CREAD .
-The initial line-discipline control value is
-.Dv ISIG ,
-.Dv ICANON ,
-.Dv IEXTEN ,
-.Dv ECHO ,
-.Dv ECHOK ,
-.Dv ECHOE ,
-.Dv ECHOKE ,
-.Dv ECHOCTL .
-.Sh IOCTLS
-The
-.Fn ioctl Ns s
-supported by devices and
-.Sy STREAMS
-modules providing the
-.Xr termios 3C
-interface are listed below.
-Some calls may not be supported by all devices or modules.
-The functionality provided by these calls is also
-available through the preferred function call interface specified on
-.Nm termios .
-.Bl -tag -width TIOCSSOFTCAR
-.It Dv TCGETS
-The argument is a pointer to a
-.Vt termios
-structure.
-The current terminal parameters are fetched and stored into that structure.
-.It Dv TCSETS
-The argument is a pointer to a
-.Vt termios
-structure.
-The current terminal parameters are set from the values stored in that structure.
-The change is immediate.
-.It Dv TCSETSW
-The argument is a pointer to a
-.Vt termios
-structure.
-The current terminal parameters are set from the values stored in that structure.
-The change occurs after all characters queued for output have been transmitted.
-This form should be used when changing parameters that affect output.
-.It Dv TCSETSF
-The argument is a pointer to a
-.Vt termios
-structure.
-The current terminal parameters are set from the values stored in that structure.
-The change occurs after all characters queued for output have been transmitted;
-all characters queued for input are discarded and then the change occurs.
-.It Dv TCGETA
-The argument is a pointer to a
-.Vt termio
-structure.
-The current terminal parameters are fetched, and those parameters that can be
-stored in a
-.Vt termio
-structure are stored into that structure.
-.It Dv TCSETA
-The argument is a pointer to a
-.Vt termio
-structure.
-Those terminal parameters that can be stored in a
-.Vt termio
-structure are set from the values stored in that structure.
-The change is immediate.
-.It Dv TCSETAW
-The argument is a pointer to a
-.Vt termio
-structure.
-Those terminal parameters that can be stored in a
-.Vt termio
-structure are set from
-the values stored in that structure.
-The change occurs after all characters queued for output have been transmitted.
-This form should be used when changing parameters that affect output.
-.It Dv TCSETAF
-The argument is a pointer to a
-.Vt termio
-structure.
-Those terminal parameters that can be stored in a
-.Vt termio
-structure are set from the values stored in that structure.
-The change occurs after all characters queued
-for output have been transmitted; all characters queued for input are discarded
-and then the change occurs.
-.It Dv TCSBRK
-The argument is an
-.Vt int
-value.
-Wait for the output to drain.
-If the argument is
-.Sy 0 ,
-then send a break (zero valued bits for 0\&.25 seconds).
-.It Dv TCXONC
-Start/stop control.
-The argument is an
-.Vt int
-value.
-If the argument is
-.Sy 0 ,
-suspend output; if
-.Sy 1 ,
-restart suspended output; if
-.Sy 2 ,
-suspend input; if
-.Sy 3 ,
-restart suspended input.
-.It Dv TCFLSH
-The argument is an
-.Vt int
-value.
-If the argument is
-.Sy 0 ,
-flush the input queue; if
-.Sy 1 ,
-flush the output queue; if
-.Sy 2 ,
-flush both the input and output queues.
-.It Dv TIOCGPGRP
-The argument is a pointer to a
-.Vt pid_t .
-Set the value of that
-.Vt pid_t
-to the process group
-.Sy ID
-of the foreground process group associated with the terminal.
-See
-.Xr termios 3C
-for a description of
-.Dv TCGETPGRP .
-.It Dv TIOCSPGRP
-The argument is a pointer to a
-.Vt pid_t .
-Associate the process group whose
-process group
-.Sy ID
-is specified by the value of that
-.Vt pid_t
-with the terminal.
-The new process group value must be in the range of valid process
-group
-.Sy ID
-values.
-Otherwise, the error
-.Er EPERM
-is returned.
-.It Dv TIOCGSID
-The argument is a pointer to a
-.Vt pid_t .
-The session ID of the terminal is fetched and stored in the
-.Vt pid_t .
-.It Dv TIOCGWINSZ
-The argument is a pointer to a
-.Vt winsize
-structure.
-The terminal driver's
-notion of the terminal size is stored into that structure.
-.It Dv TIOCSWINSZ
-The argument is a pointer to a
-.Vt winsize
-structure.
-The terminal driver's
-notion of the terminal size is set from the values specified in that structure.
-If the new sizes are different from the old sizes, a
-.Dv SIGWINCH
-signal is set to the process group of the terminal.
-.It Dv TIOCMBIS
-The argument is a pointer to an
-.Vt int
-whose value is a mask containing modem control lines to be turned on.
-The control lines whose bits are set in
-the argument are turned on; no other control lines are affected.
-.It Dv TIOCMBIC
-The argument is a pointer to an
-.Vt int
-whose value is a mask containing modem control lines to be turned off.
-The control lines whose bits are set in
-the argument are turned off; no other control lines are affected.
-.It Dv TIOCMGET
-The argument is a pointer to an
-.Vt int .
-The current state of the modem
-status lines is fetched and stored in the
-.Vt int
-pointed to by the argument.
-.It Dv TIOCMSET
-The argument is a pointer to an
-.Vt int
-containing a new set of modem control lines.
-The modem control lines are turned on or off, depending on
-whether the bit for that mode is set or clear.
-.It Dv TIOCSPPS
-The argument is a pointer to an
-.Vt int
-that determines whether pulse-per-second event handling is to be enabled
-(non-zero) or disabled (zero).
-If a one-pulse-per-second reference clock is attached to the serial line's data
-carrier detect input, the local system clock will be calibrated to it.
-A clock with a high error, that is, a deviation of more than 25 microseconds
-per tick, is ignored.
-.It Dv TIOCGPPS
-The argument is a pointer to an
-.Vt int ,
-in which the state of the even handling is returned.
-The
-.Vt int
-is set to a non-zero value if pulse-per-second (PPS) handling has been enabled.
-Otherwise, it is set to zero.
-.It Dv TIOCGSOFTCAR
-The argument is a pointer to an
-.Vt int
-whose value is
-.Sy 1
-or
-.Sy 0 ,
-depending on whether the software carrier detect is turned on or off.
-.It Dv TIOCSSOFTCAR
-The argument is a pointer to an
-.Vt int
-whose value is
-.Sy 1
-or
-.Sy 0 .
-The value of the integer should be
-.Sy 0
-to turn off software carrier, or
-.Sy 1
-to turn it on.
-.It Dv TIOCGPPSEV
-The argument is a pointer to a
-.Vt "struct ppsclockev" .
-This structure contains the following members:
-.Bd -literal -offset 2n
-struct timeval tv;
-uint32_t serial;
-.Ed
-.Pp
-.Fa tv
-is the system clock timestamp when the event (pulse on the
-.Sy DCD
-pin) occurred.
-.Fa serial
-is the ordinal of the event, which each consecutive event
-being assigned the next ordinal.
-The first event registered gets a
-.Fa serial
-value of
-.Sy 1 .
-The
-.Dv TIOCGPPSEV
-returns the last event registered; multiple calls will persistently return the
-same event until a new one is registered.
-In addition to time stamping and saving the event, if it is of
-one-second period and of consistently high accuracy, the local system clock
-will automatically calibrate to it.
-.El
-.Sh FILES
-Files in or under
-.Pa /dev
-.Sh SEE ALSO
-.Xr stty 1 ,
-.Xr fork 2 ,
-.Xr getpgid 2 ,
-.Xr getsid 2 ,
-.Xr ioctl 2 ,
-.Xr setsid 2 ,
-.Xr sigaction 2 ,
-.Xr signal 3C ,
-.Xr tcsetpgrp 3C ,
-.Xr termios 3C ,
-.Xr signal.h 3HEAD ,
-.Xr streamio 7I
diff --git a/usr/src/man/man7i/termiox.7i b/usr/src/man/man7i/termiox.7i
deleted file mode 100644
index 9fa7597d56..0000000000
--- a/usr/src/man/man7i/termiox.7i
+++ /dev/null
@@ -1,413 +0,0 @@
-.\" Copyright 1989 AT&T
-.\" Copyright (C) 1999, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright (c) 2017, Joyent, Inc.
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.Dd October 29, 2017
-.Dt TERMIOX 7I
-.Os
-.Sh NAME
-.Nm termiox
-.Nd extended general terminal interface
-.Sh DESCRIPTION
-The extended general terminal interface supplements the
-.Xr termio 7I
-general terminal interface by adding support for asynchronous hardware flow
-control, isochronous flow control and clock modes, and local implementations of
-additional asynchronous features.
-Some systems may not support all of these
-capabilities because of either hardware or software limitations.
-Other systems may not permit certain functions to be disabled.
-In these cases the appropriate bits will be ignored.
-See
-.In sys/termiox.h
-for your system to find out which capabilities are supported.
-.Ss "Hardware Flow Control Modes"
-Hardware flow control supplements the
-.Xr termio 7I
-.Dv IXON ,
-.Dv IXOFF ,
-and
-.Dv IXANY
-character flow control.
-Character flow control occurs when one
-device controls the data transfer of another device by the insertion of control
-characters in the data stream between devices.
-Hardware flow control occurs
-when one device controls the data transfer of another device using electrical
-control signals on wires (circuits) of the asynchronous interface.
-Isochronous
-hardware flow control occurs when one device controls the data transfer of
-another device by asserting or removing the transmit clock signals of that
-device.
-Character flow control and hardware flow control may be simultaneously
-set.
-.Pp
-In asynchronous, full duplex applications, the use of the Electronic Industries
-Association's EIA-232-D Request To Send (RTS) and Clear To Send (CTS) circuits
-is the preferred method of hardware flow control.
-An interface to other
-hardware flow control methods is included to provide a standard interface to
-these existing methods.
-.Pp
-The EIA-232-D standard specified only unidirectional hardware flow control \(em
-the Data Circuit-terminating Equipment or Data Communications Equipment (DCE)
-indicates to the Data Terminal Equipment (DTE) to stop transmitting data.
-The
-.Nm
-interface allows both unidirectional and bidirectional hardware
-flow control; when bidirectional flow control is enabled, either the DCE or DTE
-can indicate to each other to stop transmitting data across the interface.
-Note: It is assumed that the asynchronous port is configured as a DTE.
-If the
-connected device is also a DTE and not a DCE, then DTE to DTE (for example,
-terminal or printer connected to computer) hardware flow control is possible by
-using a null modem to interconnect the appropriate data and control circuits.
-.Ss "Clock Modes"
-Isochronous communication is a variation of asynchronous communication whereby
-two communicating devices may provide transmit and/or receive clock signals to
-one another.
-Incoming clock signals can be taken from the baud rate generator
-on the local isochronous port controller, from CCITT V\.24 circuit 114,
-Transmitter Signal Element Timing - DCE source (EIA-232-D pin 15), or from
-CITT V\.24 circuit 115, Receiver Signal Element Timing - DCE source (EIA-232-D
-pin 17).
-Outgoing clock signals can be sent on CCITT V\.24 circuit 113,
-Transmitter Signal Element Timing - DTE source (EIA-232-D pin 24), on CCITT
-V\.24 circuit 128, Receiver Signal Element Timing - DTE source (no EIA-232-D
-pin), or not sent at all.
-.Pp
-In terms of clock modes, traditional asynchronous communication is implemented
-simply by using the local baud rate generator as the incoming transmit and
-receive clock source and not outputting any clock signals.
-.Ss "Terminal Parameters"
-The parameters that control the behavior of devices providing the
-.Nm
-interface are specified by the
-.Vt termiox
-structure defined in the
-.In sys/termiox.h
-header.
-Several
-.Xr ioctl 2
-system calls that fetch
-or change these parameters use this structure:
-.Bd -literal -offset 2n
-#define NFF 5
-struct termiox {
- unsigned short x_hflag; /* hardware flow control modes */
- unsigned short x_cflag; /* clock modes */
- unsigned short x_rflag[NFF]; /* reserved modes */
- unsigned short x_sflag; /* spare local modes */
-};
-.Ed
-.Pp
-The
-.Fa x_hflag
-field describes hardware flow control modes:
-.Bl -column xxxxxxx xxxxxxx x
-.It Dv RTSXOFF Ta 0000001 Ta "Enable RTS hardware flow control on input."
-.It Dv CTSXON Ta 0000002 Ta "Enable CTS hardware flow control on output."
-.It Dv DTRXOFF Ta 0000004 Ta "Enable DTR hardware flow control on input."
-.It Dv CDXON Ta 0000010 Ta "Enable CD hardware flow control on output."
-.It Dv ISXOFF Ta 0000020 Ta "Enable isochronous hardware flow control on input."
-.El
-.Pp
-The EIA-232-D DTR and CD circuits are used to establish a connection between
-two systems.
-The RTS circuit is also used to establish a connection with a modem.
-Thus, both DTR and RTS are activated when an asynchronous port is opened.
-If DTR is used for hardware flow control, then RTS must be used for
-connectivity.
-If CD is used for hardware flow control, then CTS must be used
-for connectivity.
-Thus, RTS and DTR (or CTS and CD) cannot both be used for
-hardware flow control at the same time.
-Other mutual exclusions may apply, such as the simultaneous setting of the
-.Xr termio 7I
-.Dv HUPCL
-and the
-.Vt termiox
-.Dv DTRXOFF
-bits, which use the DTE ready line for different functions.
-.Pp
-Variations of different hardware flow control methods may be selected by
-setting the appropriate bits.
-For example, bidirectional RTS/CTS flow control is selected by setting both the
-.Dv RTSXOFF
-and
-.Dv CTSXON
-bits and bidirectional DTR/CTS flow control is selected by setting both the
-.Dv DTRXOFF
-and
-.Dv CTSXON .
-Modem control or unidirectional CTS hardware
-flow control is selected by setting only the
-.Dv CTSXON
-bit.
-.Pp
-As previously mentioned, it is assumed that the local asynchronous port (for
-example, computer) is configured as a DTE.
-If the connected device (for example, printer) is also a DTE, it is assumed
-that the device is connected to the computer's asynchronous port using a null
-modem that swaps control circuits (typically RTS and CTS).
-The connected DTE drives RTS and the null modem swaps
-RTS and CTS so that the remote RTS is received as CTS by the local DTE.
-In the case that
-.Dv CTSXON
-is set for hardware flow control, printer's lowering
-of its RTS would cause CTS seen by the computer to be lowered.
-Output to the printer is suspended until the printer's raising of its RTS,
-which would cause CTS seen by the computer to be raised.
-.Pp
-If
-.Dv RTSXOFF
-is set, the Request To Send (RTS) circuit (line) will be
-raised, and if the asynchronous port needs to have its input stopped, it will
-lower the Request To Send (RTS) line.
-If the RTS line is lowered, it is assumed
-that the connected device will stop its output until RTS is raised.
-.Pp
-If
-.Dv CTSXON
-is set, output will occur only if the Clear To Send (CTS)
-circuit (line) is raised by the connected device.
-If the CTS line is lowered by
-the connected device, output is suspended until CTS is raised.
-.Pp
-If
-.Dv DTRXOFF
-is set, the DTE Ready (DTR) circuit (line) will be raised, and
-if the asynchronous port needs to have its input stopped, it will lower the DTE
-Ready (DTR) line.
-If the DTR line is lowered, it is assumed that the connected
-device will stop its output until DTR is raised.
-.Pp
-If
-.Dv CDXON
-is set, output will occur only if the Received Line Signal
-Detector (CD) circuit (line) is raised by the connected device.
-If the CD line
-is lowered by the connected device, output is suspended until CD is raised.
-.Pp
-If
-.Dv ISXOFF
-is set, and if the isochronous port needs to have its input
-stopped, it will stop the outgoing clock signal.
-It is assumed that the
-connected device is using this clock signal to create its output.
-Transit and receive clock sources are programmed using the
-.Fa x_cflag
-fields.
-If the port is not programmed for external clock generation,
-.Dv ISXOFF
-is ignored.
-Output isochronous flow control is supported by appropriate clock source
-programming using the
-.Fa x_cflag
-field and enabled at the remote connected device.
-.Pp
-The
-.Fa x_cflag
-field specifies the system treatment of clock modes.
-.Bl -column xxxxxxxxx xxxxxxxx l
-.It Dv XMTCLK Ta 0000007 Ta "Transmit clock source:"
-.It Dv XCIBRG Ta 0000000 Ta "Get transmit clock from internal baud rate generator."
-.It Dv XCTSET Ta 0000001 Ta "Get transmit clock from transmitter signal element timing (DCE source) lead, CCITT V\.24 circuit 114, EIA-232-D pin 15."
-.It Dv XCRSET Ta 0000002 Ta Get transmit clock from receiver signal element timing (DCE source) lead, CCITT V\.4 circuit 115, EIA-232-D pin 17."
-.It Dv RCVCLK Ta 0000070 Ta "Receive clock source:"
-.It Dv RCIBRG Ta 0000000 Ta "Get receive clock from internal baud rate generator."
-.It Dv RCTSET Ta 0000010 Ta "Get receive clock from transmitter signal element timing (DCE source) lead, CCITT V\.24 circuit 114, EIA-232-D pin 15."
-.It Dv RCRSET Ta 0000020 Ta "Get receive clock from receiver signal element timing (DCE source) lead, CCITT V\.24 circuit 115, EIA-232-D pin 17."
-.It Dv TSETCLK Ta 0000700 Ta "Transmitter signal element timing (DTE source) lead, CCITT V\.24 circuit 113, EIA-232-D pin 24, clock source:"
-.It Dv TSETCOFF Ta 0000000 Ta "TSET clock not provided."
-.It Dv TSETCRBRG Ta 0000100 Ta "Output receive baud rate generator on circuit 113."
-.It Dv TSETCTBRG Ta 0000200 Ta "Output transmit baud rate generator on circuit 113"
-.It Dv TSETCTSET Ta 0000300 Ta "Output transmitter signal element timing (DCE source) on circuit 113."
-.It Dv TSETCRSET Ta 0000400 Ta "Output receiver signal element timing (DCE source) on circuit 113."
-.It Dv RSETCLK Ta 0007000 Ta "Receiver signal element timing (DTE source) lead, CCITT V\.24 circuit 128, no EIA-232-D pin, clock source:"
-.It Dv RSETCOFF Ta 0000000 Ta "RSET clock not provided."
-.It Dv RSETCRBRG Ta 0001000 Ta "Output receive baud rate generator on circuit 128."
-.It Dv RSETCTBRG Ta 0002000 Ta "Output transmit baud rate generator on circuit 128."
-.It Dv RSETCTSET Ta 0003000 Ta "Output transmitter signal element timing (DCE source) on circuit 128."
-.It Dv RSETCRSET Ta 0004000 Ta "Output receiver signal element timing (DCE) on circuit 128."
-.El
-.Pp
-If the
-.Fa XMTCLK
-field has a value of
-.Dv XCIBRG
-the transmit clock is taken from the hardware internal baud rate generator, as
-in normal asynchronous transmission.
-If
-.Fa XMTCLK
-=
-.Dv XCTSET
-the transmit clock is taken from
-the Transmitter Signal Element Timing (DCE source) circuit.
-If
-.Fa XMTCLK
-=
-.Dv XCRSET
-the transmit clock is taken from the Receiver Signal Element
-Timing (DCE source) circuit.
-.Pp
-If the
-.Fa RCVCLK
-field has a value of
-.Dv RCIBRG ,
-the receive clock is
-taken from the hardware Internal Baud Rate Generator, as in normal asynchronous
-transmission.
-If
-.Fa RCVCLK
-=
-.Dv RCTSET
-the receive clock is taken from
-the Transmitter Signal Element Timing (DCE source) circuit.
-If
-.Fa RCVCLK
-=
-.Dv RCRSET
-the receive clock is taken from the Receiver Signal Element Timing
-(DCE source) circuit.
-.Pp
-If the
-.Fa TSETCLK
-field has a value of
-.Dv TSETCOFF
-the Transmitter Signal Element Timing (DTE source) circuit is not driven.
-If
-.Fa TSETCLK
-=
-.Dv TSETCRBRG
-the Transmitter Signal Element Timing (DTE source) circuit is
-driven by the Receive Baud Rate Generator.
-If
-.Fa TSETCLK
-=
-.Dv TSETCTBRG
-the Transmitter Signal Element Timing (DTE source) circuit is driven by the
-Transmit Baud Rate Generator.
-If
-.Fa TSETCLK
-=
-.Dv TSETCTSET
-the Transmitter Signal Element Timing (DTE source) circuit is driven by the
-Transmitter Signal Element Timing (DCE source).
-If
-.Fa TSETCLK
-=
-.Dv TSETCRBRG
-the Transmitter Signal Element Timing (DTE source) circuit is
-driven by the Receiver Signal Element Timing (DCE source).
-.Pp
-If the
-.Fa RSETCLK
-field has a value of
-.Dv RSETCOFF
-the Receiver Signal Element Timing (DTE source) circuit is not driven.
-If
-.Fa RSETCLK
-=
-.Dv RSETCRBRG
-the Receiver Signal Element Timing (DTE source) circuit is
-driven by the Receive Baud Rate Generator.
-If
-.Fa RSETCLK
-=
-.Dv RSETCTBRG
-the Receiver Signal Element Timing (DTE source) circuit is driven by the
-Transmit Baud Rate Generator.
-If
-.Fa RSETCLK
-=
-.Dv RSETCTSET
-the Receiver
-Signal Element Timing (DTE source) circuit is driven by the Transmitter Signal
-Element Timing (DCE source).
-If
-.Fa RSETCLK
-=
-.Dv RSETCRBRG
-the Receiver
-Signal Element Timing (DTE source) circuit is driven by the Receiver Signal
-Element Timing (DCE source).
-.Pp
-The
-.Fa x_rflag
-is reserved for future interface definitions and should not
-be used by any implementations.
-The
-.Fa x_sflag
-may be used by local
-implementations wishing to customize their terminal interface using the
-.Nm
-ioctl system calls.
-.Sh IOCTLS
-The
-.Xr ioctl 2
-system calls have the form:
-.Bd -literal -offset 2n
-struct termiox *arg;
-ioctl(fildes, command, arg);
-.Ed
-.Pp
-The commands using this form are:
-.Bl -tag -width TCSETXW
-.It Dv TCGETX
-The argument is a pointer to a
-.Vt termiox
-structure.
-The current terminal parameters are fetched and stored into that structure.
-.It Dv TCSETX
-The argument is a pointer to a
-.Vt termiox
-structure.
-The current terminal parameters are set from the values stored in that structure.
-The change is immediate.
-.It Dv TCSETXW
-The argument is a pointer to a
-.Vt termiox
-structure.
-The current terminal parameters are set from the values stored in that structure.
-The change occurs after all characters queued for output have been transmitted.
-This form should be used when changing parameters that will affect output.
-.It Dv TCSETXF
-The argument is a pointer to a
-.Vt termiox
-structure.
-The current terminal parameters are set from the values stored in that structure.
-The change occurs
-after all characters queued for output have been transmitted; all characters
-queued for input are discarded and then the change occurs.
-.El
-.Sh FILES
-.Pa /dev/*
-.Sh SEE ALSO
-.Xr stty 1 ,
-.Xr ioctl 2 ,
-.Xr termio 7I
-.Sh NOTES
-The
-.Nm termiox Ns Pq 7I
-system call is provided for compatibility with previous
-releases and its use is discouraged.
-Instead, the
-.Xr termio 7I
-system call is recommended.
-See
-.Xr termio 7I
-for usage information.
diff --git a/usr/src/man/man7i/uscsi.7i b/usr/src/man/man7i/uscsi.7i
deleted file mode 100644
index 874b07e7e0..0000000000
--- a/usr/src/man/man7i/uscsi.7i
+++ /dev/null
@@ -1,395 +0,0 @@
-.\" Copyright (c) 2007 by Sun Microsystems, Inc. All rights reserved.
-.\" Copyright 2017 Joyent, Inc.
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.Dd October 23, 2017
-.Dt USCSI 7I
-.Os
-.Sh NAME
-.Nm uscsi
-.Nd user SCSI command interface
-.Sh SYNOPSIS
-.In sys/scsi/impl/uscsi.h
-.Fo ioctl
-.Fa "int filedes"
-.Fa "int request"
-.Fa "struct uscsi_cmd *cmd"
-.Fc
-.Sh DESCRIPTION
-The
-.Nm
-command is very powerful and somewhat dangerous; therefore it
-has some permission restrictions.
-See
-.Sx WARNINGS
-for more details.
-.Pp
-Drivers supporting this
-.Xr ioctl 2
-provide a general interface allowing user-level applications to cause individual
-.Sy SCSI
-commands to be directed to a particular
-.Sy SCSI
-or
-.Sy ATAPI
-device under control of that driver.
-The
-.Nm
-command is supported by the
-.Xr sd 7D
-driver for
-.Sy SCSI
-disks and
-.Sy ATAPI
-CD-ROM drives, and by the
-.Xr st 7D
-driver for
-.Sy SCSI
-tape drives.
-.Nm
-may also be supported by other device drivers; see the
-specific device driver manual page for complete information.
-.Pp
-Applications must not assume that all Solaris disk device drivers support the
-.Nm
-ioctl command.
-The
-.Sy SCSI
-command may include a data transfer
-to or from that device, if appropriate for that command.
-Upon completion of the command, the user application can determine how many
-bytes were transferred and the status returned by the device.
-Also, optionally, if the command returns a
-Check Condition status, the driver will automatically issue a Request Sense
-command and return the sense data along with the original status.
-See the
-.Sy USCSI_RQENABLE
-flag below for this Request Sense processing.
-The
-.Vt uscsi_cmd
-structure is defined in
-.In sys/scsi/impl/uscsi.h
-and includes the following members:
-.Bd -literal -offset 2n
-int uscsi_flags; /* read, write, etc. see below */
-short uscsi_status; /* resulting status */
-short uscsi_timeout; /* Command Timeout */
-caddr_t uscsi_cdb /* CDB to send to target */
-caddr_t uscsi_bufaddr; /* i/o source/destination */
-size_t uscsi_buflen; /* size of i/o to take place*/
-size_t uscsi_resid; /* resid from i/o operation */
-uchar_t uscsi_cdblen; /* # of valid CDB bytes */
-uchar_t uscsi_rqlen; /* size of uscsi_rqbuf */
-uchar_t uscsi_rqstatus; /* status of request sense cmd */
-uchar_t uscsi_rqresid; /* resid of request sense cmd */
-caddr_t uscsi_rqbuf; /* request sense buffer */
-void *uscsi_reserved_5; /* Reserved for future use */
-.Ed
-.Pp
-The fields of the
-.Vt uscsi_cmd
-structure have the following meanings:
-.Bl -tag -width uscsi_reserved_5
-.It Sy uscsi_flags
-The
-.Sy I/O
-direction and other details of how to carry out the
-.Sy SCSI
-command.
-Possible values are described below.
-.It Fa uscsi_status
-The
-.Sy SCSI
-status byte returned by the device is returned in this field.
-.It Fa uscsi_timeout
-Time in seconds to allow for completion of the command.
-.It Fa uscsi_cdb
-A pointer to the
-.Sy SCSI
-CDB (command descriptor block) to be transferred to the device in command phase.
-.It Fa uscsi_bufaddr
-The user buffer containing the data to be read from or written to the device.
-.It Sy uscsi_buflen
-The length of
-.Fa uscsi_bufaddr .
-.It Fa uscsi_resid
-If a data transfer terminates without transferring the entire requested amount,
-the remainder, or residue, is returned in this field.
-.It Fa uscsi_cdblen
-The length of the
-.Sy SCSI
-CDB to be transferred to the device in command phase.
-.It Fa uscsi_rqlen
-The length of
-.Fa uscsi_rqbuf ,
-the application's Request Sense buffer.
-.It Fa uscsi_rqstatus
-The
-.Sy SCSI
-status byte returned for the Request Sense command executed
-automatically by the driver in response to a Check Condition status return.
-.It Fa uscsi_rqresid
-The residue, or untransferred data length, of the Request Sense data transfer
-(the number of bytes, less than or equal to
-.Fa uscsi_rqlen ,
-which were not filled with sense data).
-.It Fa uscsi_rqbuf
-Points to a buffer in application address space to which the results of an
-automatic Request Sense command are written.
-.It Fa uscsi_reserved_5
-Reserved for future use.
-.El
-.Pp
-The
-.Fa uscsi_flags
-field defines the following:
-.Bd -literal -offset 2n
-USCSI_WRITE /* send data to device */
-USCSI_SILENT /* no error messages */
-USCSI_DIAGNOSE /* fail if any error occurs */
-USCSI_ISOLATE /* isolate from normal commands */
-USCSI_READ /* get data from device */
-USCSI_ASYNC /* set bus to asynchronous mode */
-USCSI_SYNC /* return bus to sync mode if possible */
-USCSI_RESET /* reset target */
-USCSI_RESET_TARGET /* reset target */
-USCSI_RESET_LUN /* reset logical unit */
-USCSI_RESET_ALL /* reset all targets */
-USCSI_RQENABLE /* enable request sense extensions */
-USCSI_RENEGOT /* renegotiate wide/sync on next I/O */
-.Ed
-.Pp
-The
-.Fa uscsi_flags
-bits have the following interpretation:
-.Bl -tag -width USCSI_RESET_TARGET
-.It Dv USCSI_WRITE
-Data will be written from the initiator to the target.
-.It Dv USCSI_SILENT
-The driver should not print any console error messages or warnings regarding
-failures associated with this
-.Sy SCSI
-command.
-.It Dv USCSI_DIAGNOSE
-The driver should not attempt any retries or other recovery mechanisms if this
-.Sy SCSI
-command terminates abnormally in any way.
-.It Dv USCSI_ISOLATE
-This
-.Sy SCSI
-command should not be executed with other commands.
-.It Dv USCSI_READ
-Data will be read from the target to the initiator.
-.It Dv USCSI_ASYNC
-Set the
-.Sy SCSI
-bus to asynchronous mode before running this command.
-.It Dv USCSI_SYNC
-Set the
-.Sy SCSI
-bus to synchronous mode before running this command.
-.It Dv USCSI_RESET
-Send a
-.Sy SCSI
-bus device reset message to this target.
-.It Dv USCSI_RESET_TARGET
-Same as USCSI_RESET.
-Use this flag to request TARGET RESET.
-.Po
-.Dv USCSI_RESET
-is maintained only for compatibility with old applications
-.Pc .
-.It Dv USCSI_RESET_LUN
-Send a
-.Sy SCSI
-logical unit reset message to this target.
-.It Dv USCSI_RESET_ALL
-.Dv USCSI_RESET_ALL ,
-.Dv USCSI_RESET/USCSI_RESET_TARGET ,
-and
-.Dv USCSI_RESET_LUN
-are
-mutually exclusive options and issuing them in any simultaneous combination
-will result in implementation-dependent behavior
-When a USCSI reset request is combined with other
-.Sy SCSI
-commands, the following semantics take effect:
-If the
-.Dv USCSI RESET
-flag is specified, the other fields (other than
-.Fa uscsi_flags )
-in the
-.Vt uscsi_cmd
-are ignored.
-The
-.Fa uscsi_cdblen
-field
-.Em must
-be set to zero.
-.It Dv USCSI_RQENABLE
-Enable Request Sense extensions.
-If the user application is prepared to receive
-sense data, this bit must be set, the fields
-.Fa uscsi_rqbuf
-and
-.Fa uscsi_rqbuflen
-must be non-zero, and the
-.Fa uscsi_rqbuf
-must point to memory writable by the application.
-.It Dv USCSI_RENEGOT
-Tells USCSI to renegotiate wide mode and synchronous transfer speed before the
-transmitted SCSI command is executed.
-This flag in effects tells the target driver to pass the
-.Dv FLAG_RENEGOTIATE_WIDE_SYNC
-flag in the SCSI packet
-before passing the command to an adapter driver for transport.
-See the
-.Xr scsi_pkt 9S
-flag
-.Dv FLAG_RENEGOTIATE_WIDE_SYNC
-for more information.
-.El
-.Pp
-The
-.Vt uscsi_xfer_t
-is a type definition that corresponds to a 64-bit unsigned integer.
-It should be used for the
-.Dv USCSIMAXXFER
-ioctls.
-This is
-used for determining the maximum transfer size that can be performed in a single
-.Dv USCSICMD
-ioctl.
-If the SCSI request is larger than the specified size,
-then it may not work, depending on the hardware platform.
-.Sh IOCTLS
-The
-.Fn ioctl
-supported by drivers providing the
-.Nm
-interface is:
-.Bl -tag -width USCSIMAXXFER
-.It Dv USCSICMD
-The argument is a pointer to a
-.Vt uscsi_cmd
-structure.
-The
-.Sy SCSI
-device addressed by that driver is selected, and given the
-.Sy SCSI
-command addressed by
-.Fa uscsi_cdb .
-If this command requires a data phase, the
-.Fa uscsi_buflen
-and
-.Fa uscsi_bufaddr
-fields must be set appropriately; if data phase occurs, the
-.Fa uscsi_resid
-is returned as the number of bytes not transferred.
-The status of the command, as returned by the device, is returned in the
-.Fa uscsi_status
-field.
-If the command terminates with Check Condition
-status, and Request Sense is enabled, the sense data itself is returned in
-.Fa uscsi_rqbuf .
-The
-.Fa uscsi_rqresid
-provides the residue of the Request Sense data transfer.
-.It Dv USCSIMAXXFER
-The argument is a pointer to a
-.Vt uscsi_xfer_t
-value.
-The maximum transfer size that can be used with the
-.Dv USCSICMD
-ioctl for the current device will be returned in the
-.Vt uscsi_xfer_t .
-.Pp
-Not all devices which support the
-.Dv USCSICMD
-ioctl also support the
-.Dv USCSIMAXXFER
-ioctl.
-.El
-.Sh ERRORS
-.Bl -tag -width EINVAL
-.It Er EINVAL
-A parameter has an incorrect, or unsupported, value.
-.It Er EIO
-An error occurred during the execution of the command.
-.It Er EPERM
-A process without root credentials tried to execute the
-.Dv USCSICMD
-or
-.Dv USCSIMAXXFER
-ioctl.
-.It Er EFAULT
-The
-.Vt uscsi_cmd
-itself, the
-.Fa uscsi_cdb ,
-the
-.Fa uscsi_buf ,
-the
-.Fa uscsi_rqbuf ,
-or the
-.Vt uscsi_xfer_t
-point to an invalid address.
-.El
-.Sh STABILITY
-Committed
-.Sh SEE ALSO
-.Xr ioctl 2 ,
-.Xr attributes 5 ,
-.Xr sd 7D ,
-.Xr st 7D
-.Rs
-.%T ANSI Small Computer System Interface-2 (SCSI-2)
-.Re
-.Sh WARNINGS
-The
-.Nm
-command is very powerful, but somewhat dangerous, and so its
-use is restricted to processes running as root, regardless of the file
-permissions on the device node.
-The device driver code expects to own the device state, and
-.Nm
-commands can change the state of the device and confuse the device driver.
-It is best to use
-.Nm
-commands only with no side effects, and avoid commands such as Mode Select, as
-they may cause damage to data stored on the drive or system panics.
-Also, as the commands are not checked in any way by the device driver, any block
-may be overwritten, and the block numbers are absolute block numbers on the
-drive regardless of which slice number is used to send the command.
-.Pp
-The
-.Nm
-interface is not recommended for very large data transfers
-(typically more than 16MB).
-If the requested transfer size exceeds the maximum transfer size of the DMA
-engine, it will not be broken up into multiple transfers and DMA errors may
-result.
-The
-.Dv USCSIMAXXFER
-ioctl can be used to determine the maximum transfer size.
-.Pp
-The
-.Dv USCSICMD
-ioctl associates a
-.Vt struct uscsi_cmd
-with a device by using an open file descriptor to the device.
-Other APIs might provide the same
-.Vt struct uscsi_cmd
-programming interface, but perform device association in some other manner.
diff --git a/usr/src/man/man7i/visual_io.7i b/usr/src/man/man7i/visual_io.7i
deleted file mode 100644
index 56cb1da663..0000000000
--- a/usr/src/man/man7i/visual_io.7i
+++ /dev/null
@@ -1,738 +0,0 @@
-.\" Copyright (c) 2005, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 2018, Joyent, Inc.
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.Dd August 31, 2018
-.Dt VISUAL_IO 7I
-.Os
-.Sh NAME
-.Nm visual_io
-.Nd illumos VISUAL I/O control operations
-.Sh SYNOPSIS
-.In sys/visual_io.h
-.Sh DESCRIPTION
-The illumos VISUAL environment defines a small set of ioctls for controlling
-graphics and imaging devices.
-.Pp
-The
-.Dv VIS_GETIDENTIFIER
-ioctl is mandatory and must be implemented in
-device drivers for graphics devices using the illumos VISUAL environment.
-The
-.Dv VIS_GETIDENTIFIER
-ioctl is defined to return a device identifier from the device driver.
-This identifier must be a uniquely-defined string.
-.Pp
-There are two additional sets of ioctls.
-One supports mouse tracking via hardware cursor operations.
-Use of this set is optional, however, if a graphics
-device has hardware cursor support and implements these ioctls, the mouse
-tracking performance is improved.
-The remaining set supports the device acting
-as the system console device.
-Use of this set is optional, but if a graphics device is to be used as the
-system console device, it must implement these ioctls.
-.Pp
-The VISUAL environment also defines interfaces for non-ioctl entry points into
-the driver that the illumos operating environment calls when it is running in
-standalone mode (for example, when using a stand-alone debugger, entering
-the PROM monitor, or when the system panicking).
-These are also known as
-.Dq Polled I/O
-entry points, which operate under an an explicit set of restrictions, described below.
-.Sh IOCTLS
-.Bl -tag -width VIS_GETIDENTIFIER -compact
-.It Dv VIS_GETIDENTIFIER
-This
-.Xr ioctl 2
-returns an identifier string to uniquely identify a device
-used in the illumos VISUAL environment.
-This is a mandatory ioctl and must return a unique string.
-We suggest that the name be formed as
-.Ao companysymbol Ac Ns Ao devicetype Ac .
-For example, the
-.Xr cgsix 7D
-driver
-returns
-.Sy SUNWcg6 .
-.Pp
-.Dv VIS_GETIDENTIFIER
-takes a
-.Vt vis_identifier
-structure as its parameter.
-This structure has the form:
-.Bd -literal -offset 2n
-#define VIS_MAXNAMELEN 128
-struct vis_identifier {
- char name[VIS_MAXNAMELEN];
-};
-.Ed
-.Pp
-.It Dv VIS_GETCURSOR
-.It Dv VIS_SETCURSOR
-These ioctls fetch and set various cursor attributes, using the
-.Vt vis_cursor
-structure.
-.Bd -literal -offset 2n
-struct vis_cursorpos {
- short x; /* cursor x coordinate */
- short y; /* cursor y coordinate */
-};
-
-struct vis_cursorcmap {
- int version; /* version */
- int reserved;
- /* red color map elements */
- unsigned char *red;
- /* green color map elements */
- unsigned char *green;
- /* blue color map elements */
- unsigned char *blue;
-};
-
-#define VIS_CURSOR_SETCURSOR 0x01 /* set cursor */
- /* set cursor position */
-#define VIS_CURSOR_SETPOSITION 0x02
- /* set cursur hot spot */
-#define VIS_CURSOR_SETHOTSPOT 0x04
- /* set cursor colormap */
-#define VIS_CURSOR_SETCOLORMAP 0x08
- /* set cursor shape */
-#define VIS_CURSOR_SETSHAPE 0x10
-#define VIS_CURSOR_SETALL \e
- (VIS_CURSOR_SETCURSOR | VIS_CURSOR_SETPOSITION | \e
- VIS_CURSOR_SETHOTSPOT | VIS_CURSOR_SETCOLORMAP | \e
- VIS_CURSOR_SETSHAPE)
-
-struct vis_cursor {
- short set; /* what to set */
- short enable; /* cursor on/off */
- struct vis_cursorpos pos; /* cursor position */
- struct vis_cursorpos hot; /* cursor hot spot */
- struct vis_cursorcmap cmap; /* color map info */
- /* cursor bitmap size */
- struct vis_cursorpos size;
- char *image; /* cursor image bits */
- char *mask; /* cursor mask bits */
-};
-.Ed
-.Pp
-The
-.Vt vis_cursorcmap
-structure should contain pointers to two elements,
-specifying the red, green, and blue values for foreground and background.
-.Pp
-.It Dv VIS_SETCURSORPOS
-.It Dv VIS_MOVECURSOR
-These ioctls fetch and move the current cursor position, using the
-.Vt vis_cursorpos
-structure.
-.El
-.Ss "Console Optional Ioctls"
-The following ioctl sets are used by graphics drivers that are part of the
-system console device.
-All of the ioctls must be implemented to be a console device.
-In addition, if the system does not have a prom or the prom goes away
-during boot, the special standalone ioctls (listed below) must also be
-implemented.
-.Pp
-The coordinate system for the console device places 0,0 at the upper left
-corner of the device, with rows increasing toward the bottom of the device and
-columns increasing from left to right.
-.Pp
-.Bl -tag -width VIS_CONSDISPLAY -compact -offset 2n
-.It Dv VIS_PUTCMAP
-.It Dv VIS_GETCMAP
-Set or get color map entries.
-.Pp
-The argument is a pointer to a
-.Vt vis_cmap
-structure, which contains the
-following fields:
-.Bd -literal -offset 2n
-struct vis_cmap {
- int index;
- int count;
- uchar_t *red;
- uchar_t *green;
- uchar_t *blue;
-}
-.Ed
-.Pp
-.Fa index
-is the starting index in the color map where you want to start
-setting or getting color map entries.
-.Pp
-.Fa count
-is the number of color map entries to set or get.
-It also is the
-size of the
-.Fa red ,
-.Fa green ,
-and
-.Fa blue
-color arrays.
-.Pp
-.Fa *red ,
-.Fa *green ,
-and
-.Fa *blue
-are pointers to unsigned character arrays which contain the color map info to
-set or where the color map info is placed on a get.
-.Pp
-.It Dv VIS_DEVINIT
-Initializes the graphics driver as a console device.
-.Pp
-The argument is a pointer to a
-.Vt vis_devinit
-structure.
-The graphics driver
-is expected to allocate any local state information needed to be a console
-device and fill in this structure.
-.Bd -literal -offset 2n
-struct vis_devinit {
- int version;
- screen_size_t width;
- screen_size_t height;
- screen_size_t linebytes;
- unit_t size;
- int depth;
- short mode;
- struct vis_polledio *polledio;
- vis_modechg_cb_t modechg_cb;
- struct vis_modechg_arg *modechg_arg;
-};
-.Ed
-.Pp
-.Fa version
-is the version of this structure and should be set to
-.Dv VIS_CONS_REV .
-.Pp
-.Fa width
-and
-.Fa height
-are the width and height of the device.
-If
-.Fa mode
-(see below) is
-.Dv VIS_TEXT
-then
-.Fa width
-and
-.Fa height
-are the number of characters wide and high of the device.
-If
-.Fa mode
-is
-.Dv VIS_PIXEL
-then
-.Fa width
-and
-.Fa height
-are the number of pixels wide and high of the device.
-.Pp
-.Fa linebytes
-is the number of bytes per line of the device.
-.Pp
-.Fa size
-is the total size of the device in pixels.
-.Pp
-.Fa depth
-is the pixel depth in device bits.
-Currently supported depths are:
-.Sy 1 ,
-.Sy 4 ,
-.Sy 8
-and
-.Sy 24 .
-.Pp
-.Fa mode
-is the mode of the device.
-Either
-.Dv VIS_PIXEL
-(data to be displayed is in bitmap format) or
-.Dv VIS_TEXT
-(data to be displayed is in ascii format).
-.Pp
-.Fa polledio
-is used to pass the address of the structure containing the
-standalone mode polled I/O entry points to the device driver back to the
-terminal emulator.
-The
-.Vt vis_polledio
-interfaces are described in the
-Console Standalone Entry Points section of this manpage.
-These entry points are where the operating system enters the driver when the
-system is running in standalone mode.
-These functions perform identically to the
-.Dv VIS_CONSDISPLAY ,
-.Dv VIS_CONSCURSOR ,
-and
-.Dv VIS_CONSCOPY
-ioctls, but are called directly by the illumos
-operating environment and must operate under a very strict set of assumptions.
-.Pp
-.Fa modechg_cb
-is a callback function passed from the terminal emulator to
-the framebuffer driver which the frame-buffer driver must call whenever a video
-mode change event occurs that changes the screen height, width or depth.
-The callback takes two arguments, an opaque handle,
-.Fa modechg_arg ,
-and the address of a
-.Vt vis_devinit
-struct containing the new video mode information.
-.Pp
-.Fa modechg_arg
-is an opaque handle passed from the terminal emulator to the
-driver, which the driver must pass back to the terminal emulator as an argument
-to the
-.Fa modechg_cb
-function when the driver notifies the terminal emulator of a video mode change.
-.Pp
-.It Dv VIS_DEVFINI
-Tells the graphics driver that it is no longer the system console device.
-There is no argument to this ioctl.
-The driver is expected to free any locally kept
-state information related to the console.
-.Pp
-.It Dv VIS_CONSCURSOR
-Describes the size and placement of the cursor on the screen.
-The graphics
-driver is expected to display or hide the cursor at the indicated position.
-.Pp
-The argument is a pointer to a
-.Vt vis_conscursor
-structure which contains
-the following fields:
-.Bd -literal -offset 2n
-struct vis_conscursor {
- screen_pos_t row;
- screen_pos_t col;
- screen_size_t width;
- screen_size_t height
- color_t fg_color;
- color_t bg_color;
- short action;
-};
-.Ed
-.Pp
-.Fa row
-and
-.Fa col
-are the first row and column (upper left corner of the cursor).
-.Pp
-.Fa width
-and
-.Fa height
-are the width and height of the cursor.
-.Pp
-If
-.Fa mode
-in the
-.Dv VIS_DEVINIT
-ioctl is set to
-.Dv VIS_PIXEL ,
-then
-.Fa col ,
-.Fa row ,
-.Fa width
-and
-.Fa height
-are in pixels.
-If
-.Fa mode
-in the
-.Dv VIS_DEVINIT
-ioctl was set to
-.Dv VIS_TEXT ,
-then
-.Fa col ,
-.Fa row ,
-.Fa width
-and
-.Fa height
-are in characters.
-.Pp
-.Fa fg_color
-and
-.Fa bg_color
-are the foreground and background color map
-indexes to use when the
-.Fa action
-(see below) is set to
-.Dv VIS_DISPLAY_CURSOR .
-.Pp
-.Fa action
-indicates whether to display or hide the cursor.
-It is set to either
-.Dv VIS_HIDE_CURSOR
-or
-.Dv VIS_DISPLAY_CURSOR .
-.Pp
-.It Dv VIS_CONSDISPLAY
-Display data on the graphics device.
-The graphics driver is expected to display the data contained in the
-.Vt vis_display
-structure at the specified position on the console.
-.Pp
-The
-.Vt vis_display
-structure contains the following fields:
-.Bd -literal -offset 2n
-struct vis_display {
- screen_pos_t row;
- screen_pos_t col;
- screen_size_t width;
- screen_size_t height;
- uchar_t *data;
- color_t fg_color;
- color_t bg_color;
-};
-.Ed
-.Pp
-.Fa row
-and
-.Fa col
-specify at which starting row and column the date is to be displayed.
-If
-.Fa mode
-in the
-.Dv VIS_DEVINIT
-ioctl was set to
-.Dv VIS_TEXT ,
-.Fa row
-and
-.Fa col
-are defined to be a character offset
-from the starting position of the console device.
-If
-.Fa mode
-in the
-.Dv VIS_DEVINIT
-ioctl was set to
-.Dv VIS_PIXEL ,
-.Fa row
-and
-.Fa col
-are defined to be a pixel offset from the starting position of the console
-device.
-.Pp
-.Fa width
-and
-.Fa height
-specify the size of the
-.Fa data
-to be displayed.
-If
-.Fa mode
-in the
-.Dv VIS_DEVINIT
-ioctl was set to
-.Dv VIS_TEXT ,
-.Fa width
-and
-.Fa height
-define the size of
-.Fa data
-as rectangle that is
-.Fa width
-characters wide and
-.Fa height
-characters high.
-If
-.Fa mode
-in the
-.Dv VIS_DEVINIT
-ioctl was set to
-.Dv VIS_PIXEL ,
-.Fa width
-and
-.Fa height
-define the size of
-.Fa data
-as a rectangle that is
-.Fa width
-pixels wide and
-.Fa height
-pixels high.
-.Pp
-.Fa *data
-is a pointer to the data to be displayed on the console device.
-If
-.Fa mode
-in the
-.Dv VIS_DEVINIT
-ioctl was set to
-.Dv VIS_TEXT ,
-.Fa data
-is an array of
-.Sy ASCII
-characters to be displayed on the console device.
-The driver must break these characters up appropriately and display it in the
-rectangle defined by
-.Fa row ,
-.Fa col ,
-.Fa width ,
-and
-.Fa height .
-If
-.Fa mode
-in the
-.Dv VIS_DEVINIT
-ioctl was set to
-.Dv VIS_PIXEL ,
-.Fa data
-is an array of bitmap data to be displayed on the console device.
-The driver must break this data up appropriately and display it in the retangle
-defined by
-.Fa row ,
-.Fa col ,
-.Fa width ,
-and
-.Fa height .
-.Pp
-The
-.Fa fg_color
-and
-.Fa bg_color
-fields define the foreground and
-background color map indexes to use when displaying the data.
-.Fa fb_color
-is used for
-.Dq on
-pixels and
-.Fa bg_color
-is used for
-.Dq off
-pixels.
-.Pp
-.It Dv VIS_CONSCOPY
-Copy data from one location on the device to another.
-The driver is expected to copy the specified data.
-The source data should not be modified.
-Any modifications to the source data should be as a side effect of the copy
-destination overlapping the copy source.
-.Pp
-The argument is a pointer to a
-.Vt vis_copy
-structure which contains the following fields:
-.Bd -literal -offset 2n
-struct vis_copy {
- screen_pos_t s_row;
- screen_pos_t s_col;
- screen_pos_t e_row;
- screen_pos_t e_col;
- screen_pos_t t_row;
- screen_pos_t t_col;
- short direction;
-};
-.Ed
-.Pp
-.Fa s_row ,
-.Fa s_col ,
-.Fa e_row ,
-and
-.Fa e_col
-define the source rectangle of the copy.
-.Fa s_row
-and
-.Fa s_col
-are the upper left corner of the source rectangle.
-.Fa e_row
-and
-.Fa e_col
-are the lower right corner of the source rectangle.
-If
-.Fa mode
-in the
-.Dv VIS_DEVINIT
-.Fn ioctl
-was set to
-.Dv VIS_TEXT ,
-.Fa s_row ,
-.Fa s_col ,
-.Fa e_row ,
-and
-.Fa e_col
-are defined to be character offsets from the starting position of the console
-device.
-If
-.Fa mode
-in the
-.Dv VIS_DEVINIT
-.Fn ioctl
-was set to
-.Dv VIS_PIXEL ,
-.Fa s_row ,
-.Fa s_col ,
-.Fa e_row ,
-and
-.Fa e_col
-are
-defined to be pixel offsets from the starting position of the console device.
-.Pp
-.Fa t_row
-and
-.Fa t_col
-define the upper left corner of the destination rectangle of the copy.
-The entire rectangle is copied to this location.
-If
-.Fa mode
-in the
-.Dv VIS_DEVINIT
-ioctl was set to
-.Dv VIS_TEXT ,
-.Fa t_row ,
-and
-.Fa t_col
-are defined to be character offsets from the
-starting position of the console device.
-If
-.Fa mode
-in the
-.Dv VIS_DEVINIT
-ioctl was set to
-.Dv VIS_PIXEL ,
-.Fa t_row ,
-and
-.Fa t_col
-are defined to be pixel offsets from the starting position of the
-onssole device.
-.Pp
-.Fa direction
-specifies which way to do the copy.
-If direction is
-.Dv VIS_COPY_FORWARD
-the graphics driver should copy data from position
-.Po
-.Fa s_row ,
-.Fa s_col
-.Pc
-in the source rectangle to position
-.Po
-.Fa t_row ,
-.Fa t_col
-.Pc
-in the destination rectangle.
-If direction is
-.Dv VIS_COPY_BACKWARDS
-the graphics driver should copy data from position
-.Po
-.Fa e_row ,
-.Fa e_col
-.Pc
-in the source rectangle to position
-.Po
-.Fa t_row Ns + Ns
-.Po
-.Fa e_row Ns \- Ns
-.Fa s_row
-.Pc ,
-.Fa t_col Ns + Ns
-.Po
-.Fa e_col Ns \- Ns
-.Fa s_col
-.Pc
-.Pc
-in the destination rectangle.
-.El
-.Ss "Console Standalone Entry Points (Polled I/O Interfaces)"
-Console standalone entry points are necessary only if the driver is
-implementing console-compatible extensions.
-All console vectored standalone
-entry points must be implemented along with all console-related ioctls if the
-console extension is implemented.
-.Bd -literal -offset 2n
-struct vis_polledio {
- struct vis_polledio_arg *arg;
- void (*display)(vis_polledio_arg *, struct vis_consdisplay *);
- void (*copy)(vis_polledio_arg *, struct vis_conscopy *);
- void (*cursor)(vis_polledio_arg *, struct vis_conscursor *);
-};
-.Ed
-.Pp
-The
-.Vt vis_polledio
-structure is passed from the driver to the illumos
-operating environment, conveying the entry point addresses of three functions
-which perform the same operations of their similarly named ioctl counterparts.
-The rendering parameters for each entry point are derived from the same
-structure passed as the respective ioctl.
-See the
-.Sx "Console Optional Ioctls"
-section of this manpage for an explanation of the specific function each of the
-entry points,
-.Fn display ,
-.Fn copy ,
-and
-.Fn cursor
-are required to implement.
-In
-addition to performing the prescribed function of their ioctl counterparts, the
-standalone vectors operate in a special context and must adhere to a strict set
-of rules.
-The polled I/O vectors are called directly whenever the system is
-quisced (running in a limited context) and must send output to the display.
-Standalone mode describes the state in which the system is running in
-single-threaded mode and only one processor is active.
-illumos operating
-environment services are stopped, along with all other threads on the system,
-prior to entering any of the polled I/O interfaces.
-The polled I/O vectors are
-called when the system is running in a standalone debugger, when executing the
-PROM monitor (OBP) or when panicking.
-.Pp
-The following restrictions must be observed in the polled I/O functions:
-.Bl -enum -offset indent
-.It
-The driver must not allocate memory.
-.It
-The driver must not wait on mutexes.
-.It
-The driver must not wait for interrupts.
-.It
-The driver must not call any DDI or LDI services.
-.It
-The driver must not call any system services.
-.El
-.Pp
-The system is single-threaded when calling these functions, meaning that all
-other threads are effectively halted.
-Single-threading makes mutexes (which
-cannot be held) easier to deal with, so long as the driver does not disturb any
-shared state.
-See
-.%T Writing Device Drivers
-for more information about implementing polled I/O entry points.
-.Sh SEE ALSO
-.Xr ioctl 2
-.Rs
-.%T Writing Device Drivers
-.Re
-.Sh NOTES
-On SPARC systems, compatible drivers supporting the kernel terminal emulator
-should export the
-.Sy tem-support
-DDI property.
-.Sy tem-support
-indicates that the driver supports the kernel terminal emulator.
-By exporting
-.Sy tem-support
-it's possible to avoid premature handling of an incompatible driver.
-.Bl -tag -width tem-support
-.It Sy tem-support
-This DDI property, set to 1, means driver is compatible with the console
-kernel framebuffer interface.
-.El
diff --git a/usr/src/man/man7i/vt.7i b/usr/src/man/man7i/vt.7i
deleted file mode 100644
index 67659e830b..0000000000
--- a/usr/src/man/man7i/vt.7i
+++ /dev/null
@@ -1,329 +0,0 @@
-.\" Copyright (c) 2017, Joyent, Inc.
-.\" Copyright (c) 2008 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.Dd December 28, 2020
-.Dt VT 7I
-.Os
-.Sh NAME
-.Nm vt
-.Nd Solaris virtual console interface
-.Sh SYNOPSIS
-.In sys/kd.h
-.In sys/vt.h
-.Sh DESCRIPTION
-The virtual console device driver \(em also known as virtual terminal
-.Pq Sy VT
-\(em is a layer of management functions that provides facilities to
-support and switch between multiple screen faces on a single physical device.
-.Pp
-VT's are accessed in the same way as other devices.
-The
-.Xr open 2
-system
-call is used to open the virtual console and
-.Xr read 2 ,
-.Xr write 2
-and
-.Xr ioctl 2
-are used in the normal way and support the functionality of the
-underlying device.
-In addition, some virtual console-specific ioctls are
-provided and described below.
-.Pp
-The VT provides a link between different screen faces and the device.
-The
-.Sy "active virtual console"
-corresponds to the currently visible screen face.
-Device input is directed to the active console and any device-specific modes
-that change on a per virtual terminal basis are set to the characteristics
-associated with the active console.
-.Pp
-You manage VT's by intercepting keyboard sequences
-.Pq Dq "hot key" .
-To maintain consistency with Xserver, the virtual console device driver
-supports the Ctrl, Alt, F# and arrow keys.
-.Pp
-The sequence
-.Sy "AltL + F#"
-(where AltL represents the left Alt key and F# represents function keys 1
-through 12) is used to select virtual console 1-12.
-The sequence
-.Sy "AltGraph + F#"
-(where AltGraph represents the right Alt key and F# represent function keys 1
-through 12) is for virtual console 13-24.
-.Sy "Alt + F1"
-chooses the system console (also known as virtual console 1).
-The sequence
-.Sy "Alt + \(->"
-(where "\(->" represents the right directional arrow)
-selects the next VT in a circular ring fashion and
-.Sy "Alt + \(<-"
-(where "\(<-" represents the left directional arrow) changes to the previous
-console in a circular fashion.
-The sequence
-.Sy "Alt + \(ua"
-(where "\(ua" represents the up directional arrow) is for the last used console.
-.Pp
-Virtual console switching can be done automatically
-.Pq Dv VT_AUTO
-on receipt of a
-.Dq hot-key
-or by the process owning the VT
-.Pq Dv VT_PROCESS .
-When performed automatically, the process associated with the virtual console is
-unaware of the switch.
-Saving and restoring the device are handled by the
-underlying device driver and the virtual console manager.
-Note that automatic switching is the default mode.
-.Pp
-When a
-.Dq hot-key
-is sent when in process-controlled switch mode, the process
-owning the VT is sent a signal (relsig) it has specified to the virtual console
-manager (see
-.Xr signal 3C )
-requesting the process to release the physical device.
-At this point, the virtual console manager awaits the
-.Dv VT_RELDISP
-ioctl from the process.
-If the process refuses to release the device (meaning
-the switch does not occur), it performs a
-.Dv VT_RELDISP
-ioctl with an argument of 0 (zero).
-If the process desires to release the device, it saves
-the device state (keyboard, display, and I/O registers) and then performs a
-.Dv VT_RELDISP
-with an argument of 1 to complete the switch.
-.Pp
-A ring of VT's can contain intermixed auto mode and process control mode
-consoles.
-When an auto mode process becomes active, the underlying device
-driver and the virtual console manager handle the restoring of the device.
-Process control mode processes are sent a specified signal (acqsig) when they
-become the active console.
-The process then restores the device state
-(keyboard, display, and I/O registers) and performs
-.Dv VT_RELDISP
-ioctl with an argument of
-.Dv VT_ACKACQ
-to complete the switching protocol.
-.Pp
-The modify-operations ioctls
-.Po
-.Dv VT_SETMODE ,
-.Dv VT_RELDISP ,
-.Dv VT_WAITACTIVE ,
-.Dv KDSETMODE
-.Pc
-check if the VT is the controlling tty of
-the calling process.
-If not, the sys_devices privilege is enforced.
-.Dv VT_ACTIVATE
-requires the sys_devices privilege.
-Note that there is no
-controlling tty and privilege check for query/view operations.
-.Sh IOCTLS
-The following ioctls apply to devices that support virtual consoles:
-.Bl -tag -width VT_ENABLED
-.It Dv VT_ENABLED
-Queries to determine if VT functionality is available on the system.
-The argument is a pointer to an integer.
-If VT functionality is available, the
-integer is 1, otherwise it is 0.
-.It Dv VT_OPENQRY
-Finds an available VT.
-The argument is a pointer to an integer.
-The integer is
-filled in with the number of the first available console that no other process
-has open (and hence, is available to be opened).
-If there are no available
-VT's, -1 is filled in.
-.It Dv VT_GETMODE
-Determines the VT's current mode, either
-.Dv VT_AUTO
-or
-.Dv VT_PROCESS .
-The
-argument is the address of the following structure, as defined in
-.In sys/vt.h
-.Bd -literal -offset 2n
-struct vt_mode {
- char mode; /* VT mode */
- char waitv; /* not used */
- short relsig; /* signal to use for release request */
- short acqsig; /* signal to use for display acquired */
- short frsig; /* not used */
-}
-
-/* Virtual console Modes */
-#define VT_AUTO 0 /* automatic VT switching */
-#define VT_PROCESS 1 /* process controls switching */
-.Ed
-.Pp
-The structure will be filled in with the current value for each field.
-.It Dv VT_SETMODE
-Sets the VT mode.
-The argument is a pointer to a vt_mode structure as defined above.
-The structure should be filled in with the desired mode.
-If process-control mode is specified, the signals used to communicate with the
-process should be specified.
-If any signals are not specified (value is zero), the signal default is
-.Dv SIGUSR1
-(for relsig and acqsig).
-.It Dv VT_RELDISP
-Tells the VT manager if the process releases (or refuses to release) the
-display.
-An argument of 1 indicates the VT is released.
-An argument of 0 indicates refusal to release.
-The
-.Dv VT_ACKACQ
-argument indicates if acquisition of the VT has been completed.
-.It Dv VT_ACTIVATE
-Makes the VT specified in the argument the active VT (in the same manner as if
-a hotkey initiated the switch).
-If the specified VT is not open or does not exist, the call fails and errno is
-set to
-.Er ENXIO .
-.It Dv VT_WAITACTIVE
-If the specified VT is currently active, this call returns immediately.
-Otherwise, it sleeps until the specified VT becomes active, at which point it
-returns.
-.It Dv VT_GETSTATE
-Obtains the active VT number and a list of open VTs.
-The argument is an address to the following structure:
-.Bd -literal -offset 2n
-struct vt_stat {
- unsigned short v_active, /* number of the active VT */
- v_signal, /* not used */
- /*
- * count of open VTs. For every 1 in this
- * field, there is an open VT
- */
- v_state;
-}
-.Ed
-.Pp
-With
-.Dv VT_GETSTATE ,
-the VT manager first gets the number of the active VT,
-then determines the number of open VTs in the system and sets a 1 for each open
-VT in v_state.
-Next, the VT manager transfers the information in structure
-.Vt vt_stat
-passed by the user process.
-.It Dv KDGETMODE
-Obtains the text/graphics mode associated with the VT.
-.Bd -literal -offset 2n
-#define KD_TEXT 0
-#define KD_GRAPHICS 1
-.Ed
-.It Dv KDSETMODE
-Sets the text/graphics mode to the VT.
-.It Dv KD_TEXT
-indicates that console text is displayed on the screen.
-Normally
-.Dv KD_TEXT
-is combined with
-.Dv VT_AUTO
-mode for text console terminals,
-so that the console text display automatically is saved and restored on the hot
-key screen switches.
-.Pp
-.Dv KD_GRAPHICS
-indicates that the user/application (usually Xserver) has
-direct control of the display for this VT in graphics mode.
-Normally
-.Dv KD_GRAPHICS
-is combined with
-.Dv VT_PROCESS
-mode for this VT indicating
-direct control of the display in graphics mode.
-In this mode, all writes to the
-VT using the write system call are ignored, and you must save and restore the
-display on the hot key screen switches.
-.Pp
-When the mode of the active VT is changed from
-.Dv KD_TEXT
-to
-.Dv KD_GRAPHICS
-or a VT of
-.Dv KD_GRAPHICS
-mode is made active from a
-previous active VT of
-.Dv KD_TEXT
-mode, the virtual console manager initiates a
-.Dv KDSETMODE
-ioctl with
-.Dv KD_GRAPHICS
-as the argument to the underlying console frame buffer device indicating that
-current display is running into graphics mode.
-.Pp
-When the mode of the active VT is changed from
-.Dv KD_GRAPHICS
-to
-.Dv KD_TEXT
-or a VT of
-.Dv KD_TEXT
-mode is activated from a previous active VT of
-.Dv KD_GRAPHICS
-mode, the virtual console manager initiates a
-.Dv KDSETMODE
-ioctl with
-.Dv KD_TEXT
-as the argument to the underlying console frame buffer device indicating that
-current display is running into console text mode.
-.El
-.Sh FILES
-.Bl -tag -width xxxxxxxxx
-.It Pa /dev/vt/#
-VT devices.
-.El
-.Sh SEE ALSO
-.Xr ioctl 2 ,
-.Xr signal 3C ,
-.Xr wscons 7D
-.Sh NOTES
-By default, there are only five virtual console instance login prompts running
-on
-.Pa /dev/vt/#
-(where "#" represents 2 to 6) in addition to the system
-console running on
-.Pa /dev/console .
-Normally Xorg uses the seventh virtual console
-.Pq Pa /dev/vt/7 .
-To switch from consoles to Xserver (which normally
-picks up the first available virtual console), use [ Ctrl + ] Alt + F7 .
-.Bd -literal -offset indent
-# svcs | grep login
-online 17:49:11 svc:/system/console-login:default
-online 17:49:11 svc:/system/console-login:vt2
-online 17:49:11 svc:/system/console-login:vt3
-online 17:49:11 svc:/system/console-login:vt4
-online 17:49:11 svc:/system/console-login:vt5
-online 17:49:11 svc:/system/console-login:vt6
-.Ed
-.Pp
-.Sy console-login:default
-is for the system console, others for virtual consoles.
-.Pp
-You can modify properties/disable/enable and remove/add virtual consoles using
-.Xr smf 5 :
-.Bd -literal -offset indent
-# svccfg -s console-login add vt8
-# svccfg -s console-login:vt8 setprop \e
- ttymon/device=astring: "/dev/vt/8"
-# svcadm enable console-login:vt8
-.Ed
diff --git a/usr/src/man/man7ipp/Makefile b/usr/src/man/man7ipp/Makefile
deleted file mode 100644
index e51c7646f2..0000000000
--- a/usr/src/man/man7ipp/Makefile
+++ /dev/null
@@ -1,33 +0,0 @@
-#
-# This file and its contents are supplied under the terms of the
-# Common Development and Distribution License ("CDDL"), version 1.0.
-# You may only use this file in accordance with the terms of version
-# 1.0 of the CDDL.
-#
-# A full copy of the text of the CDDL should have accompanied this
-# source. A copy of the CDDL is also available via the Internet
-# at http://www.illumos.org/license/CDDL.
-#
-
-#
-# Copyright 2011, Richard Lowe
-# Copyright 2013 Nexenta Systems, Inc. All rights reserved.
-#
-
-include $(SRC)/Makefile.master
-
-MANSECT= 7ipp
-
-MANFILES= dlcosmk.7ipp \
- dscpmk.7ipp \
- flowacct.7ipp \
- ipgpc.7ipp \
- ipqos.7ipp \
- tokenmt.7ipp \
- tswtclmt.7ipp
-
-.KEEP_STATE:
-
-include $(SRC)/man/Makefile.man
-
-install: $(ROOTMANFILES)
diff --git a/usr/src/man/man7ipp/dlcosmk.7ipp b/usr/src/man/man7ipp/dlcosmk.7ipp
deleted file mode 100644
index 4f6a6797fa..0000000000
--- a/usr/src/man/man7ipp/dlcosmk.7ipp
+++ /dev/null
@@ -1,58 +0,0 @@
-'\" te
-.\" Copyright (c) 2004, Sun Microsystems Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH DLCOSMK 7IPP "Sep 29, 2004"
-.SH NAME
-dlcosmk \- Data Layer Class of Service Marker
-.SH DESCRIPTION
-.sp
-.LP
-The \fBdlcosmk\fR marker is an action module that is executed as a result of
-classifying or metering packets. It marks the packet with a user priority
-defined by the\fI IEEE 801.D\fR standard. This feature is only possible on a
-\fBVLAN\fR device.
-.sp
-.LP
-The 3-bit user priority is part of the \fI802.1Q\fR \fBVLAN\fR header tag that
-is part of the ethernet header (carrying the IP packet).
-.SH STATISTICS
-.sp
-.LP
-The \fBdlcosmk\fR module exports the following statistics through \fBkstat\fR:
-.sp
-.LP
-Global statistics:
-.sp
-.in +2
-.nf
-module: dlcosmk instance: <action id>
- name: dlcosmk statistics class <action name>
- crtime
- snaptime
- b_band <b_band value>
- dl_max <dl_max value>
- usr_pri <configured CoS>
- npackets <number of packets>
- epackets <number of packets in error>
- ipackets <number of packets not processed>
-.fi
-.in -2
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/kernel/ipp/sparcv9/dlcosmk\fR\fR
-.ad
-.sp .6
-.RS 4n
-64-bit module (SPARC only.)
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBipqosconf\fR(1M), \fBdscpmk\fR(7ipp), \fBflowacct\fR(7ipp),
-\fBipqos\fR(7ipp), \fBipgpc\fR(7ipp), \fBtokenmt\fR(7ipp), \fBtswtclmt\fR(7ipp)
diff --git a/usr/src/man/man7ipp/dscpmk.7ipp b/usr/src/man/man7ipp/dscpmk.7ipp
deleted file mode 100644
index 83be192be1..0000000000
--- a/usr/src/man/man7ipp/dscpmk.7ipp
+++ /dev/null
@@ -1,64 +0,0 @@
-'\" te
-.\" Copyright (c) 2003, Sun Microsystems Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH DSCPMK 7IPP "Sep 29, 2004"
-.SH NAME
-dscpmk \- Differentiated Services Code Point Marker
-.SH DESCRIPTION
-.sp
-.LP
-The \fBdscpmk\fR marker is an action module that is executed as a result of
-classifying or metering packets. It sets a codepoint in the IP header as
-defined in \fIRFC-2474: Definition of the Differentiated Services Field (DS
-Field) in the IPv4 and IPv6 Headers\fR.
-.SH STATISTICS
-.sp
-.LP
-The \fBdscpmk\fR module exports the following statistics available through
-\fBkstat\fR:
-.sp
-.LP
-Global statistics:
-.sp
-.in +2
-.nf
-module: dscpmk instance: <action id>
- name: dscpmk stats class <action name>
- crtime
- snaptime
- npackets <number of packets>
- epackets <number of packets in error>
- ipackets <number of packets not processed>
- dscp_unchanged <number of packets with DSCP unchanged>
- dscp_changed <number of packets with DSCP changed>
-
-Also, for each DSCP the following is exported:
- module: dscpmk instance: <action id>
- name: dscpmk_dscp0x<DSCP> value class: <action name>
- dscp <DSCP value>
- npackets <number of packets for this DSCP>
-.fi
-.in -2
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/kernel/ipp/sparcv9/dscpmk\fR\fR
-.ad
-.RS 30n
-64-bit module (SPARC only.)
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBipqosconf\fR(1M), \fBdlcosmk\fR(7ipp), \fBflowacct\fR(7ipp),
-\fBipqos\fR(7ipp), \fBipgpc\fR(7ipp), \fBtokenmt\fR(7ipp), \fBtswtclmt\fR(7ipp)
-.sp
-.LP
-\fIRFC 2474, Definition of the Differentiated Services Field (DS Field) in the
-IPv4 and IPv6 Headers\fR K. Nichols, S. Blake, F. Baker, D. Black \(em The
-Internet Society, 1998
diff --git a/usr/src/man/man7ipp/flowacct.7ipp b/usr/src/man/man7ipp/flowacct.7ipp
deleted file mode 100644
index 8e8983df95..0000000000
--- a/usr/src/man/man7ipp/flowacct.7ipp
+++ /dev/null
@@ -1,67 +0,0 @@
-'\" te
-.\" Copyright (c) 2004, Sun Microsystems Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH FLOWACCT 7IPP "Sep 29, 2004"
-.SH NAME
-flowacct \- Flow Accouting module
-.SH DESCRIPTION
-.sp
-.LP
-The flow accounting module \fBflowacct\fR enables you to record flow details.
-You use flow details to gather statistics and/or for billing purposes.
-Accounting consists of recording flow details in a location you designate and
-in a format that you can retrieve at a later stage. IPQoS accounting relies on
-the exacct mechanism to store and retrieve flow information.
-.sp
-.LP
-A flow is defined by the 5-tuple - saddr, sport, daddr, dport and protocol.
-.sp
-.LP
-Typically, the accounting module is the last datapath element in a sequence of
-actions. Flow attributes include ToS/DS, user id, project id, creation time
-(time the flow was created), last seen (when pkts for the flow were last seen),
-action name (instance that recorded the flow information), nbytes and npackets.
-Attributes are split into groups entitled \fBbasic\fR and \fBextended\fR. The
-basic group records only the nbytes, npackets and action name, while the
-extended group is a superset of the basic group and records all attributes. The
-attributes to be recorded, in addition to the accounting file that contains
-flow details, are selected using \fBacctadm\fR(1M). The \fBflowacct\fR module
-does not provide a mechanism to retrieve flow information from the accounting
-file nor to interpret the retrieved information.
-.SH STATISTICS
-.sp
-.LP
-The flowacct module exports the following statistics available through kstat:
-.sp
-.in +2
-.nf
-module: flowacct instance: <action id>
- name: Flowacct statistics class <action name>
- bytes_in_tbl <bytes in the flow table>
- epackets <packets in error>
- flows_in_tbl <flow records in the flow table>
- nbytes <number of bytes through this instance>
- npackets <number of packets>
- usedmem <memory, in bytes, used by the flow table>
-.fi
-.in -2
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/kernel/ipp/sparcv9/flowacct\fR\fR
-.ad
-.sp .6
-.RS 4n
-64-bit module (SPARC only.)
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBipqosconf\fR(1M), \fBacctadm\fR(1M), \fBlibexacct3LIB\fR,
-\fBdlcosmk\fR(7ipp), \fBdscpmk\fR(7ipp), \fBipqos\fR(7ipp), \fBipgpc\fR(7ipp),
-\fBtokenmt\fR(7ipp), \fBtswtclmt\fR(7ipp)
diff --git a/usr/src/man/man7ipp/ipgpc.7ipp b/usr/src/man/man7ipp/ipgpc.7ipp
deleted file mode 100644
index 367b971118..0000000000
--- a/usr/src/man/man7ipp/ipgpc.7ipp
+++ /dev/null
@@ -1,92 +0,0 @@
-'\" te
-.\" Copyright (c) 2004, Sun Microsystems Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH IPGPC 7IPP "Sep 29, 2004"
-.SH NAME
-ipgpc \- IP Generic Packet Classifier
-.SH DESCRIPTION
-.sp
-.LP
-The IP Generic Packet Classifier (\fBipgpc\fR) module provides packet
-classification at the Solaris IP layer. \fBipgpc\fR is an implementation of the
-Multi-Field (MF) classifier as described in \fIRFC2475: An Architecture for
-Differentiated Services\fR.
-.sp
-.LP
-The classifier is configured, at startup or dynamically, using a set of
-"filters." Filters describe selectors that are matched against input packets
-that are processed by the classifier. Some selectors feature exact matching
-data points, while others utilize non-exact or wildcard data points.
-.sp
-.LP
-Each filter is associated with a class describing the next actions to process a
-packet. There is a many-to-one (M-to-1) mapping relationship between filters
-and a class. Additionally, each class is aware of which filters are associated
-with it. A class is configured with a class name and a next action.
-.sp
-.LP
-Unlike traditional classifiers used in edge routers, \fBipgpc\fR is designed
-for a host or server device. A host-based classifier provides access to more
-resources and data than edge routers. User, project, and interface information
-are available at the host.
-.SH STATISTICS
-.sp
-.LP
-The \fBipgpc\fR module exports global and per-class statistics (available
-through kstat:)
-.sp
-.LP
-Global statistics:
-.sp
-.in +2
-.nf
-module: ipgpc instance:<action id>
-name: ipgpc global stats class: <action name>
- crtime
- snaptime
- nbytes <number of classified bytes>
- nclasses <number of classes>
- nfilters <number of filters>
- npackets <number of classified packets>
- epackets <number of packets in error>
-.fi
-.in -2
-
-.sp
-.LP
-Per-class statistics:
-.sp
-.in +2
-.nf
-module: ipgpc instance:<action id>
-name: <class name> class: <action name>
- crtime
- snaptime
- last match <time of last match>
- nbytes <number of classified bytes>
- npackets <number of classified packets>
-.fi
-.in -2
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/kernel/ipp/sparcv9/ipgpc\fR\fR
-.ad
-.RS 29n
-64-bit module (SPARC only.)
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBipqosconf\fR(1M), \fBdlcosmk\fR(7ipp), \fBdscpmk\fR(7ipp),
-\fBflowacct\fR(7ipp), \fBipqos\fR(7ipp), \fBtokenmt\fR(7ipp),
-\fBtswtclmt\fR(7ipp)
-.sp
-.LP
-\fIRFC 2475, An Architecture for Differentiated Services\fR S. Blake, D. Black,
-M. Carlson, E. Davies, Z. Wang, W. Weiss \(em The Internet Society, 1998
diff --git a/usr/src/man/man7ipp/ipqos.7ipp b/usr/src/man/man7ipp/ipqos.7ipp
deleted file mode 100644
index 610816a29d..0000000000
--- a/usr/src/man/man7ipp/ipqos.7ipp
+++ /dev/null
@@ -1,171 +0,0 @@
-'\" te
-.\" Copyright (c) 2002, Sun Microsystems Inc.
-.\" All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH IPQOS 7IPP "Feb 25, 2002"
-.SH NAME
-ipqos \- IP Quality of Service
-.SH DESCRIPTION
-.sp
-.LP
-\fBipqos\fR is an implementation of the Differentiated Services model defined
-in \fIRFC2475: An Architecture for Differentiated Services\fR, which defines
-the following entities: multi-field classifier, meter, marker, and dropper. The
-Solaris implementation of \fBipqos\fR adds a flow accounting entity.
-.sp
-.LP
-These entities can be combined into processing paths that constitute a series
-of actions that are performed on groups of flows. The classifier groups
-together flows and directs them in a given processing path. Classifier
-configuration and path construction are achieved using the \fBipqosconf\fR(1M)
-command.
-.sp
-.LP
-A summary of the \fBipqos\fR entities follows. For more information, refer to
-the corresponding man page for each entity.
-.sp
-.ne 2
-.na
-\fBipgpc\fR
-.ad
-.RS 21n
-An implementation of the classifier defined in the model. \fBipgpc\fR has been
-extended and is able to select traffic based on IP header parameters, user id,
-project id, interface name, interface group and direction.
-.RE
-
-.sp
-.ne 2
-.na
-\fBtokenmt, tswtclmt\fR
-.ad
-.RS 21n
-These modules implement different metering algorithms. \fBtokenmt\fR implements
-both \fIRFC2697: A Single Rate Three Color Marker \fR and \fIRFC 2698: A Two
-Rate Three Color Marker\fR. \fItswtclmt\fR implements \fIRFC2859: A Time
-Sliding Window Three Color Marker\fR. These modules only implement the metering
-functions defined in the RFCs.
-.RE
-
-.sp
-.ne 2
-.na
-\fBdlcosmk\fR
-.ad
-.RS 21n
-A marker entity that allows the setting of the user priority field of Ethernet
-frames as defined in the \fIIEEE 802.1D\fR specification. \fBdlcosmk\fR is only
-available with VLAN capable network interfaces.
-.RE
-
-.sp
-.ne 2
-.na
-\fBdscpmk\fR
-.ad
-.RS 21n
-A marker entity that enables the setting of the Differentiated Services Code
-Point Value in the IP header as defined in \fIRFC 2474: Definition of the
-Differentiated Services Field (DS Field)\fR in the IPv4 and IPv6 headers.
-.RE
-
-.sp
-.ne 2
-.na
-\fBflowacct\fR
-.ad
-.RS 21n
-An accounting module that utilizes the Solaris extended accounting facility.
-\fBflowacct\fR logs all flows with parameters used to build a charge back
-mechanism.
-.RE
-
-.SH STATISTICS
-.sp
-.LP
-\fBipqos\fR modules export statistics through the \fBkstat\fR facility.
-Exported statistics contain the following common parameters:
-.sp
-.ne 2
-.na
-\fBmodule\fR
-.ad
-.RS 12n
-module name
-.RE
-
-.sp
-.ne 2
-.na
-\fBinstance\fR
-.ad
-.RS 12n
-dynamic parameter identifying a specific instance
-.RE
-
-.sp
-.ne 2
-.na
-\fBname\fR
-.ad
-.RS 12n
-a string for global statistics (for example, ipgpc global stat) or a class
-name for per-class statistics for a classifier action
-.RE
-
-.sp
-.LP
-To verify classifier configuration, generate traffic for each of the configured
-classes and check that the statistic counters for the expected class are
-increased. If you're unsure about the parameters for your traffic, you can use
-\fBsnoop\fR(1M) to determine them.
-.sp
-.LP
-Some actions have the instance id of the next configured action in their
-statistics. This instance id can be used to follow the action processing path.
-Instance id's -1 and -2 are the built-in actions continue and drop,
-respectively.
-.sp
-.LP
-Examples:
-.sp
-.LP
-To retrieve all statistics for ipgpc:
-.sp
-.LP
- \fBkstat -m ipgpc\fR
-.sp
-.LP
-To retrieve statistics for the class http:
-.sp
-.LP
- \fBkstat -m ipgpc -c http\fR
-.SH SEE ALSO
-.sp
-.LP
-\fBipqosconf\fR(1M), \fBdlcosmk\fR(7ipp), \fBdscpmk\fR(7ipp),
-\fBflowacct\fR(7ipp), \fBipgpc\fR(7ipp), \fBtokenmt\fR(7ipp),
-\fBtswtclmt\fR(7ipp)
-.sp
-.LP
-\fIRFC 2475, An Architecture for Differentiated Services\fR S. Blake, D. Black,
-M. Carlson, E. Davies, Z. Wang, W. Weiss \(em The Internet Society, 1998
-.sp
-.LP
-\fIRFC 2474, Definition of the Differentiated Services Field (DS Field) in the
-IPv4 and IPv6 Headers\fR K. Nichols, S. Blake, F. Baker, D. Black \(em The
-Internet Society, 1998
-.sp
-.LP
-\fIRFC 2697, A Single Rate Three Color Marker\fR J. Heinanen, R. Guerin \(em
-The Internet Society, 1999
-.sp
-.LP
-\fIRFC 2698, A Two Rate Three Color Marker\fR J. Heinanen, R. Guerin \(em The
-Internet Society, 1999
-.sp
-.LP
-\fIRFC 2859, A Time Sliding Window Three Colour Marker (TSWTCM)\fR W. Fang, N.
-Seddigh, B. Nandy \(em The Internet Society, 2000
diff --git a/usr/src/man/man7ipp/tokenmt.7ipp b/usr/src/man/man7ipp/tokenmt.7ipp
deleted file mode 100644
index 8b2f3e22bc..0000000000
--- a/usr/src/man/man7ipp/tokenmt.7ipp
+++ /dev/null
@@ -1,167 +0,0 @@
-'\" te
-.\" Copyright (c) 2004, Sun Microsystems Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH TOKENMT 7IPP "April 9, 2016"
-.SH NAME
-tokenmt \- Single and Two Rate Three Conformance Level Meter
-.SH DESCRIPTION
-.LP
-The \fBtokenmt\fR module can be configured as a Single or a Two Rate meter.
-Packets are deemed to belong to one of the three levels - Red, Yellow or Green
-- depending on the configured rate(s) and the burst sizes. When configured as a
-Single Rate meter, \fBtokenmt\fR can operate with just the Green and Red
-levels.
-.sp
-.LP
-Configuration parameters for \fBtokenmt\fR correspond to definitions in \fIRFC-
-2697\fR and \fIRFC- 2698\fR as follows:
-.sp
-.LP
-Configuring \fBtokenmt\fR as a Single Rate meter (from \fIRFC- 2697\fR):
-.br
-.in +2
-committed_rate - CIR
-.in -2
-.br
-.in +2
-committed_burst - CBS
-.in -2
-.br
-.in +2
-peak_burst - EBS
-.in -2
-.sp
-.LP
-(thus 'peak_burst' for a single rate meter is actually the 'excess burst' in
-the RFC. However, throughout the text the parameter name "peak burst" is used.)
-.sp
-.LP
-Configuring tokenmt as a Two Rate meter (from \fIRFC- 2698\fR):
-.br
-.in +2
-committed_rate - CIR
-.in -2
-.br
-.in +2
-peak_rate - PIR
-.in -2
-.br
-.in +2
-committed_burst - CBS
-.in -2
-.br
-.in +2
-peak_burst - PBS
-.in -2
-.sp
-.LP
-The meter is implemented using token buckets C and P, which initially hold
-tokens equivalent to committed and peak burst sizes (bits) respectively. When a
-packet of size \fI B\fR bits arrive at time \fI t\fR, the following occurs:
-.sp
-.in +2
-.nf
-When operating as a Single Rate meter, the outcome (level)
-is decided as follows:
- - Update tokens in C and P
- o Compute no. of tokens accumulated since the
- last time packet was seen at the committed rate as
- T(t) = committed rate * (t - t')
- (where t' is the time the last packet was seen)
- o Add T tokens to C up to a maximum of committed burst
- size. Add remaining tokens ((C+T) - Committed Burst),
- if any, to P, to a maximum of peak burst size.
- - Decide outcome
- o If not color aware
- o If B <= C, outcome is GREEN and C -= B.
- o Else, if B <= P, outcome is YELLOW and P -= B.
- o Else, outcome is Red.
- o Else,
- o obtain DSCP from packet
- o obtain color from color_map, color_map[DSCP]
- o if (color is GREEN) and (B <= C), outcome is
- GREEN and C -= B.
- o Else, if (color is GREEN or YELLOW) and
- (B <= P), outcome is YELLOW and P -= B.
- o Else, outcome is RED.
- Note that if peak_burst and yellow_next_actions are
- not specified (that is, a single rate meter with two
- outcomes), the outcome is never YELLOW.
-.fi
-.in -2
-
-.sp
-.LP
-When operating as a Two Rate meter, the outcome (level) is decided as follows:
-.sp
-.in +2
-.nf
-- Update tokens in C and P
- o Compute no. of tokens accumulated since the last time a
- packet was seen at the committed and peak rates as
- Tc(t) = committed rate * (t - t')
- Tp(t) = peak rate * (t - t')
- (where t' is the time the last packet was seen)
- o Add Tc to C up to a maximum of committed burst size
- o Add Tp to P up to a maximum of peak burst size
- - Decide outcome
- o If not color aware
- o If B > P, outcome is RED.
- o Else, if B > C, outcome is YELLOW and P -= B
- o Else, outcome is GREEN and C -= B & P -= B
- o Else,
- o obtain DSCP from packet
- o obtain color from color_map, color_map[DSCP]
- o if (color is RED) or (B > P), outcome is RED
- o Else, if (color is YELLOW) or (B > C),
- outcome is YELLOW and P -= B
- o Else, outcome is GREEN and C -= B & P -= B
-.fi
-.in -2
-
-.SH STATISTICS
-.LP
-The \fBtokenmt\fR module exports the following statistics through \fBkstat\fR:
-.sp
-.LP
-Global statistics:
-.sp
-.in +2
-.nf
-module: tokenmt instance: <action id>
- name: tokenmt statistics class <action name>
- epackets <number of packets in error>
- green_bits <number of bits in green>
- green_packets <number of packets in green>
- red_bits <number of bits in red>
- red_packets <number of packets in red>
- yellow_bits <number of bits in yellow>
- yellow packets <number of packets in yellow>
-.fi
-.in -2
-
-.SH FILES
-.ne 2
-.na
-\fB\fB/kernel/ipp/sparcv9/tokenmt\fR\fR
-.ad
-.sp .6
-.RS 4n
-64-bit module (SPARC only.)
-.RE
-
-.SH SEE ALSO
-.LP
-\fBipqosconf\fR(1M), \fBdlcosmk\fR(7ipp), \fBdscpmk\fR(7ipp),
-\fBflowacct\fR(7ipp), \fBipqos\fR(7ipp), \fBipgpc\fR(7ipp),
-\fBtswtclmt\fR(7ipp)
-.sp
-.LP
-\fIRFC 2697, A Single Rate Three Color Marker\fR J. Heinanen, R. Guerin \(em
-The Internet Society, 1999
-.sp
-.LP
-\fIRFC 2698, A Two Rate Three Color Marker\fR J. Heinanen, R. Guerin \(em The
-Internet Society, 1999
diff --git a/usr/src/man/man7ipp/tswtclmt.7ipp b/usr/src/man/man7ipp/tswtclmt.7ipp
deleted file mode 100644
index 92c6169b19..0000000000
--- a/usr/src/man/man7ipp/tswtclmt.7ipp
+++ /dev/null
@@ -1,75 +0,0 @@
-'\" te
-.\" Copyright (c) 2004, Sun Microsystems Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH TSWTCLMT 7IPP "Sep 29, 2004"
-.SH NAME
-tswtclmt \- Time Sliding Window Three Conformance Level Meter
-.SH DESCRIPTION
-.sp
-.LP
-The Time Sliding Window Three Conformance level meter (\fBtswtcl\fR) meters a
-traffic stream and determines the conformance level of its packets.
-.sp
-.LP
-Packets are deemed to belong to one of the three levels, Red, Yellow or Green,
-depending on the committed and peak rate.
-.sp
-.LP
-The meter provides an estimate of the running average bandwidth. It takes into
-account burstiness and smoothes out its estimate to approximate the
-longer-term measured sending rate of the traffic stream.
-.sp
-.LP
-The estimated bandwidth approximates the running average bandwidth of the
-traffic stream over a specific window (time interval). \fBtswtcl\fR estimates
-the average bandwidth using a time-based estimator. When a packet arrives for a
-class, \fBtswtcl\fR re-computes the average rate by using the rate in the last
-window (time interval) and the size of the arriving packet. The window is then
-slid to start at the current time (the packet arrival time). If the computed
-rate is less than the committed configuration parameter, the packet is deemed
-Green; else if the rate is less than the peak rate, it is Yellow; else Red. To
-avoid dropping multiple packets within a TCP window, \fBtswtcl\fR
-probabilistically assigns one of the three conformance level to the packet.
-.SH STATISTICS
-.sp
-.LP
-The \fBtswtcl\fR module exports global and per-class statistics through kstat:
-.sp
-.LP
-Global statistics:
-.sp
-.in +2
-.nf
-module: tswtclmt instance: <action id>
- name: tswtclmt statistics class <action name>
- green_bits <number of bit in green>
- green_packets <number of packets in green>
- red_bits <number of bits in red>
- red_packets <number of packets in red>
- yellow_bits <number of bits in yellow>
- yellow_packets <number of packets in yellow>
-.fi
-.in -2
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/kernel/ipp/sparcv9/tswtclmt\fR\fR
-.ad
-.sp .6
-.RS 4n
-64-bit module (SPARC only.)
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBipqosconf\fR(1M), \fBdlcosmk\fR(7ipp), \fBdscpmk\fR(7ipp),
-\fBflowacct\fR(7ipp), \fBipqos\fR(7ipp), \fBipgpc\fR(7ipp), \fBtokenmt\fR(7ipp)
-.sp
-.LP
-\fIRFC 2859, A Time Sliding Window Three Colour Marker (TSWTCM)\fR W. Fang, N.
-Seddigh, B. Nandy \(em The Internet Society, 2000
diff --git a/usr/src/man/man7m/Makefile b/usr/src/man/man7m/Makefile
deleted file mode 100644
index 42ba9d33af..0000000000
--- a/usr/src/man/man7m/Makefile
+++ /dev/null
@@ -1,59 +0,0 @@
-#
-# This file and its contents are supplied under the terms of the
-# Common Development and Distribution License ("CDDL"), version 1.0.
-# You may only use this file in accordance with the terms of version
-# 1.0 of the CDDL.
-#
-# A full copy of the text of the CDDL should have accompanied this
-# source. A copy of the CDDL is also available via the Internet
-# at http://www.illumos.org/license/CDDL.
-#
-
-#
-# Copyright 2011, Richard Lowe
-# Copyright 2013 Nexenta Systems, Inc. All rights reserved.
-# Copyright 2015 Joyent, Inc.
-#
-
-include $(SRC)/Makefile.master
-
-MANSECT= 7m
-
-_MANFILES = bufmod.7m \
- connld.7m \
- datafilt.7m \
- ldterm.7m \
- pckt.7m \
- pfmod.7m \
- pipemod.7m \
- ptem.7m \
- sppptun.7m \
- timod.7m \
- tirdwr.7m \
- ttcompat.7m \
- usb_ah.7m \
- usbkbm.7m \
- usbms.7m \
- vuidmice.7m
-
-sparc_MANFILES=
-
-MANLINKS= vuid2ps2.7m \
- vuid3ps2.7m \
- vuidm3p.7m \
- vuidm4p.7m \
- vuidm5p.7m
-
-MANFILES= $(_MANFILES) $($(MACH)_MANFILES)
-
-vuid2ps2.7m := LINKSRC = vuidmice.7m
-vuid3ps2.7m := LINKSRC = vuidmice.7m
-vuidm3p.7m := LINKSRC = vuidmice.7m
-vuidm4p.7m := LINKSRC = vuidmice.7m
-vuidm5p.7m := LINKSRC = vuidmice.7m
-
-.KEEP_STATE:
-
-include $(SRC)/man/Makefile.man
-
-install: $(ROOTMANFILES) $(ROOTMANLINKS)
diff --git a/usr/src/man/man7m/bufmod.7m b/usr/src/man/man7m/bufmod.7m
deleted file mode 100644
index fdf5b972dd..0000000000
--- a/usr/src/man/man7m/bufmod.7m
+++ /dev/null
@@ -1,321 +0,0 @@
-'\" te
-.\" Copyright (c) 1999, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH BUFMOD 7M "Nov 11, 1997"
-.SH NAME
-bufmod \- STREAMS Buffer Module
-.SH SYNOPSIS
-.LP
-.nf
-\fB#include <sys/bufmod.h>\fR
-.fi
-
-.LP
-.nf
-\fBioctl(fd, I_PUSH, "bufmod");\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBbufmod\fR is a \fBSTREAMS\fR module that buffers incoming messages, reducing
-the number of system calls and the associated overhead required to read and
-process them. Although \fBbufmod\fR was originally designed to be used in
-conjunction with \fBSTREAMS-based\fR networking device drivers, the version
-described here is general purpose so that it can be used anywhere \fBSTREAMS\fR
-input buffering is required.
-.SS "Read-side Behavior"
-.sp
-.LP
-The behavior of \fBbufmod\fR depends on various parameters and flags that can
-be set and queried as described below under \fBIOCTLS\fR. \fBbufmod\fR collects
-incoming \fBM_DATA\fR messages into chunks, passing each chunk upstream when
-the chunk becomes full or the current read timeout expires. It optionally
-converts \fBM_PROTO\fR messages to \fBM_DATA\fR and adds them to chunks as
-well. It also optionally adds to each message a header containing a timestamp,
-and a cumulative count of messages dropped on the stream read side due to
-resource exhaustion or flow control. Thedefault settings of \fBbufmod\fR allow
-it to drop messages when flow control sets in or resources are exhausted;
-disabling headers and explicitly requesting no drops makes \fBbufmod\fR pass
-all messages through. Finally, \fBbufmod\fR is capable of truncating upstream
-messages to a fixed, programmable length.
-.sp
-.LP
-When a message arrives, \fBbufmod\fR processes it in several steps. The
-following paragraphs discuss each step in turn.
-.sp
-.LP
-Upon receiving a message from below, if the \fBSB_NO_HEADER\fR flag is not set,
-\fBbufmod\fR immediately timestamps it and saves the current time value for
-later insertion in the header described below.
-.sp
-.LP
-Next, if \fBSB_NO_PROTO_CVT\fR is not set, \fBbufmod\fR converts all leading
-\fBM_PROTO\fR blocks in the message to \fBM_DATA\fR blocks, altering only the
-message type field and leaving the contents alone.
-.sp
-.LP
-It then truncates the message to the current \fIsnapshot length\fR, which is
-set with the \fBSBIOCSSNAP\fR \fBioctl\fR described below.
-.sp
-.LP
-Afterwards, if \fBSB_NO_HEADER\fR is not set, \fBbufmod\fR prepends a header to
-the converted message. This header is defined as follows.
-.sp
-.in +2
-.nf
-struct sb_hdr {
- uint_t sbh_origlen;
- uint_t sbh_msglen;
- uint_t sbh_totlen;
- uint_t sbh_drops;
-#if defined(_LP64) || defined(_I32LPx)
- struct timeval32 sbh_timestamp;
-#else
- struct timeval sbh_timestamp;
-#endif /* !_LP64 */
-};
-.fi
-.in -2
-
-.sp
-.LP
-The \fBsbh_origlen\fR field gives the message's original length before
-truncation in bytes. The \fBsbh_msglen\fR field gives the length in bytes of
-the message after the truncation has been done. \fBsbh_totlen\fR gives the
-distance in bytes from the start of the truncated message in the current chunk
-(described below) to the start of the next message in the chunk; the value
-reflects any padding necessary to insure correct data alignment for the host
-machine and includes the length of the header itself. \fBsbh_drops\fR reports
-the cumulative number of input messages that this instance of \fBbufmod\fR has
-dropped due to flow control or resource exhaustion. In the current
-implementation message dropping due to flow control can occur only if the
-\fBSB_NO_DROPS\fR flag is not set. (Note: this accounts only for events
-occurring within \fBbufmod\fR, and does not count messages dropped by
-downstream or by upstream modules.) The \fBsbh_timestamp\fR field contains the
-message arrival time expressed as a \fBstruct timeval\fR.
-.sp
-.LP
-After preparing a message, \fBbufmod\fR attempts to add it to the end of the
-current chunk, using the chunk size and timeout values to govern the addition.
-The chunk size and timeout values are set and inspected using the \fBioctl()\fR
-calls described below. If adding the new message would make the current chunk
-grow larger than the chunk size, \fBbufmod\fR closes off the current chunk,
-passing it up to the next module in line, and starts a new chunk. If adding the
-message would still make the new chunk overflow, the module passes it upward in
-an over-size chunk of its own. Otherwise, the module concatenates the message
-to the end of the current chunk.
-.sp
-.LP
-To ensure that messages do not languish forever in an accumulating chunk,
-\fBbufmod\fR maintains a read timeout. Whenever this timeout expires, the
-module closes off the current chunk and passes it upward. The module restarts
-the timeout period when it receives a read side data message and a timeout is
-not currently active. These two rules insure that \fBbufmod\fR minimizes the
-number of chunks it produces during periods of intense message activity and
-that it periodically disposes of all messages during slack intervals, but
-avoids any timeout overhead when there is no activity.
-.sp
-.LP
-\fBbufmod\fR handles other message types as follows. Upon receiving an
-\fBM_FLUSH\fR message specifying that the read queue be flushed, the module
-clears the currently accumulating chunk and passes the message on to the module
-or driver above. (Note: \fBbufmod\fR uses zero length \fBM_CTL\fR messages for
-internal synchronization and does not pass them through.) \fBbufmod\fR passes
-all other messages through unaltered to its upper neighbor, maintaining message
-order for non high priority messages by passing up any accumulated chunk first.
-.sp
-.LP
-If the \fBSB_DEFER_CHUNK\fR flag is set, buffering does not begin until the
-second message is received within the timeout window.
-.sp
-.LP
-If the \fBSB_SEND_ON_WRITE\fR flag is set, \fBbufmod\fR passes up the read side
-any buffered data when a message is received on the write side.
-\fBSB_SEND_ON_WRITE\fR and \fBSB_DEFER_CHUNK\fR are often used together.
-.SS "Write-side Behavior"
-.sp
-.LP
-\fBbufmod\fR intercepts \fBM_IOCTL\fR messages for the \fBioctl\fRs described
-below. The module passes all other messages through unaltered to its lower
-neighbor. If \fBSB_SEND_ON_WRITE\fR is set, message arrival on the writer side
-suffices to close and transmit the current read side chunk.
-.SH IOCTLS
-.sp
-.LP
-\fBbufmod\fR responds to the following \fBioctl\fRs.
-.sp
-.ne 2
-.na
-\fB\fBSBIOCSTIME\fR \fR
-.ad
-.RS 16n
-Set the read timeout value to the value referred to by the \fBstruct timeval\fR
-pointer given as argument. Setting the timeout value to zero has the
-side-effect of forcing the chunk size to zero as well, so that the module will
-pass all incoming messages upward immediately upon arrival. Negative values are
-rejected with an \fBEINVAL\fR error.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSBIOCGTIME\fR \fR
-.ad
-.RS 16n
-Return the read timeout in the \fBstruct timeval\fR pointed to by the argument.
-If the timeout has been cleared with the \fBSBIOCCTIME\fR \fBioctl\fR, return
-with an \fBERANGE\fR error.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSBIOCCTIME\fR \fR
-.ad
-.RS 16n
-Clear the read timeout, effectively setting its value to infinity. This results
-in no timeouts being active and the chunk being delivered when it is full.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSBIOCSCHUNK\fR \fR
-.ad
-.RS 16n
-Set the chunk size to the value referred to by the \fIuint_t\fR pointer given
-as argument. See Notes for a description of effect on stream head high water
-mark.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSBIOCGCHUNK\fR \fR
-.ad
-.RS 16n
-Return the chunk size in the \fIuint_t\fR pointed to by the argument.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSBIOCSSNAP\fR \fR
-.ad
-.RS 16n
-Set the current snapshot length to the value given in the \fBuint_t\fR pointed
-to by the \fBioctl\fR's final argument. \fBbufmod\fR interprets a snapshot
-length value of zero as meaning infinity, so it will not alter the message. See
-Notes for a description of effect on stream head high water mark.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSBIOCGSNAP\fR \fR
-.ad
-.RS 16n
-Returns the current snapshot length in the \fBuint_t\fR pointed to by the
-\fBioctl\fR's final argument.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSBIOCSFLAGS\fR \fR
-.ad
-.RS 16n
-Set the current flags to the value given in the \fBuint_t\fR pointed to by the
-\fBioctl\fR's final argument. Possible values are a combination of the
-following.
-.sp
-.ne 2
-.na
-\fB\fBSB_SEND_ON_WRITE\fR \fR
-.ad
-.RS 21n
-Transmit the read side chunk on arrival of a message on the write side.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSB_NO_HEADER\fR \fR
-.ad
-.RS 21n
-Do not add headers to read side messages.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSB_NO_DROPS\fR \fR
-.ad
-.RS 21n
-Do not drop messages due to flow control upstream.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSB_NO_PROTO_CVT\fR \fR
-.ad
-.RS 21n
-Do not convert \fBM_PROTO\fR messages into \fBM_DATA\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSB_DEFER_CHUNK\fR \fR
-.ad
-.RS 21n
-Begin buffering on arrival of the second read side message in a timeout
-interval.
-.RE
-
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSBIOCGFLAGS\fR \fR
-.ad
-.RS 16n
-Returns the current flags in the \fBuint_t\fR pointed to by the \fBioctl\fR's
-final argument.
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBdlpi\fR(7P), \fBpfmod\fR(7M)
-.SH NOTES
-.sp
-.LP
-Older versions of \fBbufmod\fR did not support the behavioral flexibility
-controlled by the \fBSBIOCSFLAGS\fR \fBioctl\fR. Applications that wish to take
-advantage of this flexibility can guard themselves against old versions of the
-module by invoking the \fBSBIOCGFLAGS\fR ioctl and checking for an \fBEINVAL\fR
-error return.
-.sp
-.LP
-When buffering is enabled by issuing an \fBSBIOCSCHUNK\fR ioctl to set the
-chunk size to a non zero value, \fBbufmod\fR sends a \fBSETOPTS\fR message to
-adjust the stream head high and low water marks to accommodate the chunked
-messages.
-.sp
-.LP
-When buffering is disabled by setting the chunk size to zero, message
-truncation can have a significant influence on data traffic at the stream head
-and therefore the stream head high and low water marks are adjusted to new
-values appropriate for the smaller truncated message sizes.
-.SH BUGS
-.sp
-.LP
-\fBbufmod\fR does not defend itself against allocation failures, so that it is
-possible, although very unlikely, for the stream head to use inappropriate high
-and low water marks after the chunk size or snapshot length have changed.
diff --git a/usr/src/man/man7m/connld.7m b/usr/src/man/man7m/connld.7m
deleted file mode 100644
index 0dd38f1c0a..0000000000
--- a/usr/src/man/man7m/connld.7m
+++ /dev/null
@@ -1,119 +0,0 @@
-'\" te
-.\" Copyright 2004 AT&T
-.\" Copyright (C) 2004, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH CONNLD 7M "June 19, 2021"
-.SH NAME
-connld \- line discipline for unique stream connections
-.SH SYNOPSIS
-.nf
-\fBint ioctl(\fIfd\fR, I_PUSH, "connld");\fR
-.fi
-
-.SH DESCRIPTION
-\fBconnld\fR is a STREAMS-based module that provides unique connections between
-server and client processes. It can only be pushed (see \fBstreamio\fR(7I))
-onto one end of a STREAMS-based pipe that may subsequently be attached to a
-name in the file system name space with \fBfattach\fR(3C). After the pipe end
-is attached, a new pipe is created internally when an originating process
-attempts to \fBopen\fR(2) or \fBcreat\fR(2) the file system name. A file
-descriptor for one end of the new pipe is packaged into a message identical to
-that for the ioctl \fBI_SENDFD\fR (see \fBstreamio\fR(7I)) and is transmitted
-along the stream to the server process on the other end. The originating
-process is blocked until the server responds.
-.sp
-.LP
-The server responds to the \fBI_SENDFD\fR request by accepting the file
-descriptor through the \fBI_RECVFD\fR ioctl message. When this happens, the
-file descriptor associated with the other end of the new pipe is transmitted to
-the originating process as the file descriptor returned from \fBopen\fR(2) or
-\fBcreat\fR(2).
-.sp
-.LP
-If the server does not respond to the \fBI_SENDFD\fR request, the stream that
-the \fBconnld\fR module is pushed on becomes uni-directional because the server
-will not be able to retrieve any data off the stream until the \fBI_RECVFD\fR
-request is issued. If the server process exits before issuing the
-\fBI_RECVFD\fR request, the \fBopen\fR(2) or the \fBcreat\fR(2) invocation will
-fail and return -1 to the originating process.
-.sp
-.LP
-When the \fBconnld\fR module is pushed onto a pipe, it ignores messages going
-back and forth through the pipe.
-.SH ERRORS
-On success, an open of \fBconnld\fR returns 0. On failure, \fBerrno\fR is set
-to the following values:
-.sp
-.ne 2
-.na
-\fB\fBEINVAL\fR \fR
-.ad
-.RS 11n
-A stream onto which \fBconnld\fR is being pushed is not a pipe or the pipe does
-not have a write queue pointer pointing to a stream head read queue.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEINVAL\fR \fR
-.ad
-.RS 11n
-The other end of the pipe onto which \fBconnld\fR is being pushed is linked
-under a multiplexor.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEPIPE\fR \fR
-.ad
-.RS 11n
-\fBconnld\fR is being pushed onto a pipe end whose other end is no longer
-there.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBENOMEM\fR \fR
-.ad
-.RS 11n
-An internal pipe could not be created.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBENXIO\fR \fR
-.ad
-.RS 11n
-An \fBM_HANGUP\fR message is at the stream head of the pipe onto which
-\fBconnld\fR is being pushed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEAGAIN\fR \fR
-.ad
-.RS 11n
-Internal data structures could not be allocated.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBENFILE\fR \fR
-.ad
-.RS 11n
-A file table entry could not be allocated.
-.RE
-
-.SH SEE ALSO
-\fBcreat\fR(2), \fBopen\fR(2), \fBfattach\fR(3C), \fBstreamio\fR(7I)
-.sp
-.LP
-\fISTREAMS Programming Guide\fR
diff --git a/usr/src/man/man7m/datafilt.7m b/usr/src/man/man7m/datafilt.7m
deleted file mode 100644
index f840e389c8..0000000000
--- a/usr/src/man/man7m/datafilt.7m
+++ /dev/null
@@ -1,48 +0,0 @@
-.\"
-.\" This file and its contents are supplied under the terms of the
-.\" Common Development and Distribution License ("CDDL"), version 1.0.
-.\" You may only use this file in accordance with the terms of version
-.\" 1.0 of the CDDL.
-.\"
-.\" A full copy of the text of the CDDL should have accompanied this
-.\" source. A copy of the CDDL is also available via the Internet at
-.\" http://www.illumos.org/license/CDDL.
-.\"
-.\"
-.\" Copyright 2014 Ryan Zezeski
-.\" Copyright 2015 Joyent, Inc.
-.\"
-.Dd Apr 21, 2015
-.Dt DATAFILT 7M
-.Os
-.Sh NAME
-.Nm datafilt
-.Nd socket filter module for deferred TCP connections
-.Sh DESCRIPTION
-The
-.Nm datafilt
-socket filter provides deferment of
-.Xr accept 3SOCKET
-for TCP connections.
-The accept call will not return until at least one byte has been
-buffered by the kernel.
-Deferment assures the application that the first call to
-.Xr read 2
-or
-.Xr recv 3SOCKET
-will not block.
-It reduces unnecessary switching between user and kernel.
-.Sh EXAMPLES
-.Ss Example 1
-Enable deferment on the listening socket.
-.Bd -literal
- setsockopt(lsock, SOL_FILTER, FIL_ATTACH, "datafilt", 8);
-.Ed
-.Ss Example 2
-Disable deferment on the listening socket.
-.Bd -literal
- char filt[] = "datafilt";
- setsockopt(lsock, SOL_FILTER, FIL_DETACH, filt, strlen(filt) + 1);
-.Ed
-.Sh SEE ALSO
-.Xr setsockopt 3SOCKET
diff --git a/usr/src/man/man7m/ldterm.7m b/usr/src/man/man7m/ldterm.7m
deleted file mode 100644
index cdeaf893e5..0000000000
--- a/usr/src/man/man7m/ldterm.7m
+++ /dev/null
@@ -1,280 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T
-.\" Copyright (C) 1999, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH LDTERM 7M "June 20, 2021"
-.SH NAME
-ldterm \- standard STREAMS terminal line discipline module
-.SH SYNOPSIS
-.nf
-#include <sys/stream.h>
-.fi
-
-.LP
-.nf
-#include <sys/termios.h>
-.fi
-
-.LP
-.nf
-int ioctl(\fIfd\fR,I_PUSH,"ldterm");
-.fi
-
-.SH DESCRIPTION
-The \fBldterm\fR STREAMS module provides most of the \fBtermio\fR(7I) terminal
-interface. The \fBvis \fRmodule does not perform the low-level device control
-functions specified by flags in the \fBc_cflag\fR word of the
-\fBtermio/termios\fR structure, or by the \fBIGNBRK\fR, \fBIGNPAR\fR,
-\fBPARMRK\fR, or \fBINPCK\fR flags in the \fBc_iflag\fR word of the
-\fBtermio/termios\fR structure. Those functions must be performed by the
-driver or by modules pushed below the \fBldterm\fR module. \fBThe \fR\fBldterm
-module\fR performs all other \fBtermio/termios\fR functions, though some may
-require the cooperation of the driver or modules pushed below \fBldterm\fR and
-may not be performed in some cases. These include the \fBIXOFF\fR flag in the
-\fBc_iflag\fR word and the delays specified in the \fBc_oflag\fR word.
-.sp
-.LP
-\fBThe \fR\fBldterm module\fR also handles single and multi-byte characters
-from various codesets including both Extended Unix Code (\fBEUC\fR) and non-EUC
-codesets.
-.sp
-.LP
-The remainder of this section describes the processing of various \fBSTREAMS\fR
-messages on the read- and write-side.
-.SS "Read-side Behavior"
-Various types of STREAMS messages are processed as follows:
-.sp
-.ne 2
-.na
-\fB\fBM_BREAK\fR \fR
-.ad
-.RS 12n
-Depending on the state of the \fBBRKINT\fR flag, either an interrupt signal is
-generated or the message is treated as if it were an \fBM_DATA\fR message
-containing a single \fBASCII NUL\fR character when this message is received.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM_DATA\fR \fR
-.ad
-.RS 12n
-This message is normally processed using the standard \fBtermio\fR input
-processing. If the \fBICANON\fR flag is set, a single input record (``line'')
-is accumulated in an internal buffer and sent upstream when a line-terminating
-character is received. If the \fBICANON\fR flag is not set, other input
-processing is performed and the processed data are passed upstream.
-.sp
-If output is to be stopped or started as a result of the arrival of characters
-(usually \fBCNTRL-Q\fR and \fBCNTRL-S),\fR \fBM_STOP\fR and \fBM_START\fR
-messages are sent downstream. If the \fBIXOFF\fR flag is set and input is to be
-stopped or started as a result of flow-control considerations, \fBM_STOPI\fR
-and \fBM_STARTI\fR messages are sent downstream.
-.sp
-\fBM_DATA\fR messages are sent downstream, as necessary, to perform echoing.
-.sp
-If a signal is to be generated, an \fBM_FLUSH\fR message with a flag byte of
-\fBFLUSHR\fR is placed on the read queue. If the signal is also to flush
-output, an \fBM_FLUSH\fR message with a flag byte of \fBFLUSHW\fR is sent
-downstream.
-.RE
-
-.sp
-.LP
-All other messages are passed upstream unchanged.
-.SS "Write-side Behavior"
-Various types of \fBSTREAMS\fR messages are processed as follows:
-.sp
-.ne 2
-.na
-\fB\fBM_FLUSH\fR \fR
-.ad
-.RS 13n
-The write queue of the module is flushed of all its data messages and the
-message is passed downstream.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM_IOCTL\fR \fR
-.ad
-.RS 13n
-The function of this \fBioctl\fR is performed and the message is passed
-downstream in most cases. The \fBTCFLSH\fR and \fBTCXONC\fR \fBioctls\fR can
-be performed entirely in the \fBldterm\fR module, so the reply is sent
-upstream and the message is not passed downstream.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM_DATA\fR \fR
-.ad
-.RS 13n
-If the \fBOPOST\fR flag is set, or both the \fBXCASE\fR and \fBICANON\fR flags
-are set, output processing is performed and the processed message is passed
-downstream along with any \fBM_DELAY\fR messages generated. Otherwise, the
-message is passed downstream without change.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM_CTL\fR \fR
-.ad
-.RS 13n
-If the size of the data buffer associated with the message is the size of
-\fBstruct iocblk\fR, \fBldterm\fR will perform functional negotiation to
-determine where the \fBtermio\fR(7I) processing is to be done. If the command
-field of the \fBiocblk\fR structure (\fBioc_cmd\fR) is set to
-\fBMC_NO_CANON\fR, the input canonical processing normally performed on
-\fBM_DATA\fR messages is disabled and those messages are passed upstream
-unmodified. (This is for the use of modules or drivers that perform their own
-input processing, such as a pseudo-terminal in \fBTIOCREMOTE\fR mode connected
-to a program that performs this processing). If the command is
-\fBMC_DO_CANON\fR, all input processing is enabled. If the command is
-\fBMC_PART_CANON\fR, then an \fBM_DATA\fR message containing a \fBtermios\fR
-structure is expected to be attached to the original \fBM_CTL\fR message. The
-\fBldterm\fR module will examine the \fBiflag\fR, \fBoflag\fR, and
-\fB\fR\fBlflag\fR fields of the \fBtermios\fR structure and from that point on,
-will process only those flags that have not been turned \fBON.\fR If none of
-the above commands are found, the message is ignored. In any case, the message
-is passed upstream.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM_FLUSH\fR \fR
-.ad
-.RS 13n
-The read queue of the module is flushed of all its data messages and all data
-in the record being accumulated are also flushed. The message is passed
-upstream.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM_IOCACK\fR \fR
-.ad
-.RS 13n
-The data contained within the message, which is to be returned to the process,
-are augmented if necessary, and the message is passed upstream.
-.RE
-
-.sp
-.LP
-All other messages are passed downstream unchanged.
-.SH IOCTLS
-\fBThe \fR\fBldterm module\fR processes the following \fBTRANSPARENT\fR
-ioctls. All others are passed downstream.
-.sp
-.ne 2
-.na
-\fB\fBTCGETS/TCGETA\fR \fR
-.ad
-.sp .6
-.RS 4n
-The message is passed downstream. If an acknowledgment is seen, the data
-provided by the driver and modules downstream are augmented and the
-acknowledgement is passed upstream.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBTCSETS/TCSETSW/TCSETSF/TCSETA/TCSETAW/TCSETAF\fR \fR
-.ad
-.sp .6
-.RS 4n
-The parameters that control the behavior of the \fBldterm\fR module are
-changed. If a mode change requires options at the stream head to be changed, an
-\fBM_SETOPTS\fR message is sent upstream. If the \fBICANON\fR flag is turned
-on or off, the read mode at the stream head is changed to message-nondiscard or
-byte-stream mode, respectively. If the \fBTOSTOP\fR flag is turned on or off,
-the tostop mode at the stream head is turned on or off, respectively. In any
-case, \fBldterm\fR passes the \fBioctl\fR on downstream for possible
-additional processing.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBTCFLSH\fR \fR
-.ad
-.sp .6
-.RS 4n
-If the argument is 0, an \fBM_FLUSH\fR message with a flag byte of \fBFLUSHR\fR
-is sent downstream and placed on the read queue. If the argument is 1, the
-write queue is flushed of all its data messages and an \fBM_FLUSH\fR message
-with a flag byte of \fBFLUSHW\fR is sent upstream and downstream. If the
-argument is 2, the write queue is flushed of all its data messages and an
-\fBM_FLUSH\fR message with a flag byte of \fBFLUSHRW\fR is sent downstream and
-placed on the read queue.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBTCXONC\fR \fR
-.ad
-.sp .6
-.RS 4n
-If the argument is 0 and output is not already stopped, an \fBM_STOP\fR message
-is sent downstream. If the argument is 1 and output is stopped, an
-\fBM_START\fR message is sent downstream. If the argument is 2 and input is
-not already stopped, an \fBM_STOPI\fR message is sent downstream. If the
-argument is 3 and input is stopped, an \fBM_STARTI\fR message is sent
-downstream.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBTCSBRK\fR \fR
-.ad
-.sp .6
-.RS 4n
-The message is passed downstream, so the driver has a chance to drain the data
-and then send an \fBM_IOCACK\fR message upstream.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEUC_WSET\fR \fR
-.ad
-.sp .6
-.RS 4n
-This call takes a pointer to an \fBeucioc\fR structure, and uses it to set the
-\fBEUC\fR line discipline's local definition for the code set widths to be used
-for subsequent operations. Within the stream, the line discipline may
-optionally notify other modules of this setting using \fBM_CTL\fR messages.
-When this call is received and the \fBeucioc\fR structure contains valid data,
-the line discipline changes into \fBEUC \fRhandling mode once the
-\fBeucioc\fR data is completely transferred to an internal data structure.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEUC_WGET\fR \fR
-.ad
-.sp .6
-.RS 4n
-This call takes a pointer to an \fBeucioc\fR structure, and returns in it the
-\fBEUC\fR code set widths currently in use by the \fBEUC\fR line discipline. If
-the current codeset of the line discipline is not an \fBEUC\fR one, the result
-is meaningless.
-.RE
-
-.SH SEE ALSO
-\fBtermios\fR(3C), \fBconsole\fR(7D), \fBtermio\fR(7I)
-.sp
-.LP
-\fISTREAMS Programming Guide\fR
diff --git a/usr/src/man/man7m/pckt.7m b/usr/src/man/man7m/pckt.7m
deleted file mode 100644
index 909e1e0367..0000000000
--- a/usr/src/man/man7m/pckt.7m
+++ /dev/null
@@ -1,48 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T Copyright (c) 1990, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PCKT 7M "Feb 5, 2022"
-.SH NAME
-pckt \- STREAMS Packet Mode module
-.SH SYNOPSIS
-.nf
-int ioctl(\fI fd, \fRI_PUSH, "pckt");
-.fi
-
-.SH DESCRIPTION
-\fBpckt\fR is a STREAMS module that may be used with a pseudo terminal to
-packetize certain messages. The \fBpckt\fR module should be pushed (see
-\fBI_PUSH\fR on \fBstreamio\fR(7I)) onto the manager side of a pseudo terminal.
-.sp
-.LP
-Packetizing is performed by prefixing a message with an \fBM_PROTO\fR message.
-The original message type is stored in the 1 byte data portion of the
-\fBM_PROTO\fR message.
-.sp
-.LP
-On the read-side, only the \fBM_PROTO\fR, \fBM_PCPROTO\fR, \fBM_STOP\fR,
-\fBM_START\fR, \fBM_STOPI\fR, \fBM_STARTI\fR, \fBM_IOCTL\fR, \fBM_DATA\fR,
-\fBM_FLUSH\fR, and \fBM_READ\fR messages are packetized. All other message
-types are passed upstream unmodified.
-.sp
-.LP
-Since all unread state information is held in the manager's stream head read
-queue, flushing of this queue is disabled.
-.sp
-.LP
-On the write-side, all messages are sent down unmodified.
-.sp
-.LP
-With this module in place, all reads from the manager side of the pseudo
-terminal should be performed with the \fBgetmsg\fR(2) or \fBgetpmsg\fR()
-function. The control part of the message contains the message type. The data
-part contains the actual data associated with that message type. The onus is on
-the application to separate the data into its component parts.
-.SH SEE ALSO
-\fBgetmsg\fR(2), \fBioctl\fR(2), \fBldterm\fR(7M), \fBptem\fR(7M),
-\fBstreamio\fR(7I), \fBtermio\fR(7I)
-.sp
-.LP
-\fISTREAMS Programming Guide\fR
diff --git a/usr/src/man/man7m/pfmod.7m b/usr/src/man/man7m/pfmod.7m
deleted file mode 100644
index 79a74775e2..0000000000
--- a/usr/src/man/man7m/pfmod.7m
+++ /dev/null
@@ -1,253 +0,0 @@
-'\" te
-.\" Copyright (C) 2006, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PFMOD 7M "Jun 18, 2006"
-.SH NAME
-pfmod \- STREAMS Packet Filter Module
-.SH SYNOPSIS
-.LP
-.nf
-#include <sys/pfmod.h>
-.fi
-
-.LP
-.nf
-ioctl(\fIfd\fR, IPUSH, "pfmod");
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBpfmod\fR is a \fBSTREAMS\fR module that subjects messages arriving on its
-read queue to a packet filter and passes only those messages that the filter
-accepts on to its upstream neighbor. Such filtering can be very useful for
-user-level protocol implementations and for networking monitoring programs that
-wish to view only specific types of events.
-.SS "Read-side Behavior"
-.sp
-.LP
-\fBpfmod\fR applies the current packet filter to all \fBM_DATA\fR and
-\fBM_PROTO\fR messages arriving on its read queue. The module prepares these
-messages for examination by first skipping over all leading \fBM_PROTO\fR
-message blocks to arrive at the beginning of the message's data portion. If
-there is no data portion, \fBpfmod\fR accepts the message and passes it along
-to its upstream neighbor. Otherwise, the module ensures that the part of the
-message's data that the packet filter might examine lies in contiguous memory,
-calling the \fBpullupmsg\fR(9F) utility routine if necessary to force
-contiguity. (Note: this action destroys any sharing relationships that the
-subject message might have had with other messages.) Finally, it applies the
-packet filter to the message's data, passing the entire message upstream to the
-next module if the filter accepts, and discarding the message otherwise. See
-PACKET FILTERS below for details on how the filter works.
-.sp
-.LP
-If there is no packet filter yet in effect, the module acts as if the filter
-exists but does nothing, implying that all incoming messages are accepted. The
-ioctls section below describes how to associate a packet filter with an
-instance of \fBpfmod\fR.
-.sp
-.LP
-\fBpfmod\fR passes all other messages through unaltered to its upper neighbor.
-.SS "Write-side Behavior"
-.sp
-.LP
-\fBpfmod\fR intercepts \fBM_IOCTL\fR messages for the \fIioctl\fR described
-below. The module passes all other messages through unaltered to its lower
-neighbor.
-.SH IOCTLS
-.sp
-.LP
-\fBpfmod\fR responds to the following \fIioctl\fR.
-.sp
-.ne 2
-.na
-\fB\fBPFIOCSETF\fR \fR
-.ad
-.RS 14n
-This \fIioctl\fR directs the module to replace its current packet filter, if
-any, with the filter specified by the \fBstruct packetfilt\fR pointer named by
-its final argument. This structure is defined in \fB<sys/pfmod.h>\fR as:
-.RE
-
-.sp
-.in +2
-.nf
-struct packetfilt {
- uchar_t Pf_Priority; /* priority of filter */
- uchar_t Pf_FilterLen; /* length of filter cmd list */
- ushort_t Pf_Filter[ENMAXFILTERS]; /* filter command list */
-};
-.fi
-.in -2
-
-.sp
-.LP
-The \fBPf_Priority\fR field is included only for compatibility with other
-packet filter implementations and is otherwise ignored. The packet filter
-itself is specified in the \fBPf_Filter\fR array as a sequence of two-byte
-commands, with the \fBPf_FilterLen\fR field giving the number of commands in
-the sequence. This implementation restricts the maximum number of commands in a
-filter (\fBENMAXFILTERS\fR) to 255. The next section describes the available
-commands and their semantics.
-.SH PACKET FILTERS
-.sp
-.LP
-A packet filter consists of the filter command list length (in units of
-\fBushort_t\fRs), and the filter command list itself. (The priority field
-mentioned above is ignored in this implementation.) Each filter command list
-specifies a sequence of actions that operate on an internal stack of ushort_ts
-("shortwords") or an offset register. The offset register is initially zero.
-Each shortword of the command list specifies an action and a binary operator.
-Using _n_ as shorthand for the next shortword of the instruction stream and
-_%oreg_ for the offset register, the list of actions is:
-.sp
-.in +2
-.nf
- COMMAND SHORTWORDS ACTION
- ENF_PUSHLIT 2 Push _n_ on the stack.
- ENF_PUSHZERO 1 Push zero on the stack.
- ENF_PUSHONE 1 Push one on the stack.
- ENF_PUSHFFFF 1 Push 0xFFFF on the stack.
- ENF_PUSHFF00 1 Push 0xFF00 on the stack.
- ENF_PUSH00FF 1 Push 0x00FF on the stack.
- ENF_LOAD_OFFSET 2 Load _n_ into _%oreg_.
- ENF_BRTR 2 Branch forward _n_ shortwords if
- the top element of the stack is
- non-zero.
- ENF_BRFL 2 Branch forward _n_ shortwords if
- the top element of the stack is zero.
- ENF_POP 1 Pop the top element from the stack.
- ENF_PUSHWORD+m 1 Push the value of shortword (_m_ +
- _%oreg_) of the packet onto the stack.
-.fi
-.in -2
-
-.sp
-.LP
-The binary operators can be from the set {\fBENF_EQ\fR, \fBENF_NEQ\fR,
-\fBENF_LT\fR, \fBENF_LE\fR, \fBENF_GT\fR,\fBENF_GE\fR, \fBENF_AND\fR,
-\fBENF_OR\fR, \fBENF_XOR\fR} which operate on the top two elements of the stack
-and replace them with its result.
-.sp
-.LP
-When both an action and operator are specified in the same shortword, the
-action is performed followed by the operation.
-.sp
-.LP
-The binary operator can also be from the set {\fBENF_COR\fR, \fBENF_CAND\fR,
-\fBENF_CNOR\fR, \fBENF_CNAND\fR}. These are "short-circuit" operators, in that
-they terminate the execution of the filter immediately if the condition they
-are checking for is found, and continue otherwise. All pop two elements from
-the stack and compare them for equality; \fBENF_CAND\fR returns false if the
-result is false; \fBENF_COR\fR returns true if the result is true;
-\fBENF_CNAND\fR returns true if the result is false; \fBENF_CNOR\fR returns
-false if the result is true. Unlike the other binary operators, these four do
-not leave a result on the stack, even if they continue.
-.sp
-.LP
-The short-circuit operators should be used when possible, to reduce the amount
-of time spent evaluating filters. When they are used, you should also arrange
-the order of the tests so that the filter will succeed or fail as soon as
-possible; for example, checking the \fBIP\fR destination field of a \fBUDP\fR
-packet is more likely to indicate failure than the packet type field.
-.sp
-.LP
-The special action \fBENF_NOPUSH\fR and the special operator \fBENF_NOP\fR can
-be used to only perform the binary operation or to only push a value on the
-stack. Since both are (conveniently) defined to be zero, indicating only an
-action actually specifies the action followed by \fBENF_NOP\fR, and indicating
-only an operation actually specifies \fBENF_NOPUSH\fR followed by the
-operation.
-.sp
-.LP
-After executing the filter command list, a non-zero value (true) left on top of
-the stack (or an empty stack) causes the incoming packet to be accepted and a
-zero value (false) causes the packet to be rejected. (If the filter exits as
-the result of a short-circuit operator, the top-of-stack value is ignored.)
-Specifying an undefined operation or action in the command list or performing
-an illegal operation or action (such as pushing a shortword offset past the end
-of the packet or executing a binary operator with fewer than two shortwords on
-the stack) causes a filter to reject the packet.
-.SH EXAMPLES
-.sp
-.LP
-The packet filter module is not dependent on any particular device driver or
-module but is commonly used with datalink drivers such as the Ethernet driver.
-If the underlying datalink driver supports the Data Link Provider Interface
-(DLPI) message set, the appropriate \fBSTREAMS DLPI\fR messages must be issued
-to attach the stream to a particular hardware device and bind a datalink
-address to the stream before the underlying driver will route received packets
-upstream. Refer to the \fBDLPI\fR Version 2 specification for details on this
-interface.
-.sp
-.LP
-The reverse \fBARP\fR daemon program may use code similar to the following
-fragment to construct a filter that rejects all but \fBRARP\fR packets. That
-is, it accepts only packets whose Ethernet type field has the value
-\fBETHERTYPE_REVARP\fR. The filter works whether a VLAN is configured or not.
-.sp
-.in +2
-.nf
-struct ether_header eh; /* used only for offset values */
-struct packetfilt pf;
-register ushort_t *fwp = pf.Pf_Filter;
-ushort_t offset;
-int fd;
-/*
- * Push packet filter streams module.
- */
-if (ioctl(fd, I_PUSH, "pfmod") < 0)
- syserr("pfmod");
-
-/*
- * Set up filter. Offset is the displacement of the Ethernet
- * type field from the beginning of the packet in units of
- * ushort_ts.
- */
-offset = ((uint_t) &eh.ether_type - (uint_t) &eh.ether_dhost) /
- sizeof (us_short);
- *fwp++ = ENF_PUSHWORD + offset;
- *fwp++ = ENF_PUSHLIT;
- *fwp++ = htons(ETHERTYPE_VLAN);
- *fwp++ = ENF_EQ;
- *fwp++ = ENF_BRFL;
- *fwp++ = 3; /* If this isn't ethertype VLAN, don't change oreg */
- *fwp++ = ENF_LOAD_OFFSET;
- *fwp++ = 2; /* size of the VLAN tag in words */
- *fwp++ = ENF_POP;
- *fwp++ = ENF_PUSHWORD + offset;
- *fwp++ = ENF_PUSHLIT;
- *fwp++ = htons(ETHERTYPE_REVARP);
- *fwp++ = ENF_EQ;
- pf.Pf_FilterLen = fwp - &pf.PF_Filter[0];
-.fi
-.in -2
-
-.sp
-.LP
-This filter can be abbreviated by taking advantage of the ability to combine
-actions and operations:
-.sp
-.in +2
-.nf
- *fwp++ = ENF_PUSHWORD + offset;
- *fwp++ = ENF_PUSHLIT | ENF_EQ;
- *fwp++ = htons(ETHERTYPE_REVARP);
- *fwp++ = htons(ETHERTYPE_VLAN);
- *fwp++ = ENF_BRFL | ENF_NOP;
- *fwp++ = 3;
- *fwp++ = ENF_LOAD_OFFSET | ENF_NOP;
- *fwp++ = 2;
- *fwp++ = ENF_POP | ENF_NOP;
- *fwp++ = ENF_PUSHWORD + offset;
- *fwp++ = ENF_PUSHLIT | ENF_EQ;
- *fwp++ = htons(ETHERTYPE_REVARP);
-.fi
-.in -2
-
-.SH SEE ALSO
-.sp
-.LP
-\fBbufmod\fR(7M), \fBdlpi\fR(7P), \fBpullupmsg\fR(9F)
diff --git a/usr/src/man/man7m/pipemod.7m b/usr/src/man/man7m/pipemod.7m
deleted file mode 100644
index 3d7a9268ed..0000000000
--- a/usr/src/man/man7m/pipemod.7m
+++ /dev/null
@@ -1,56 +0,0 @@
-'\" te
-.\" Copyright (C) 1992 Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PIPEMOD 7M "Aug 21, 1992"
-.SH NAME
-pipemod \- STREAMS pipe flushing module
-.SH DESCRIPTION
-.sp
-.LP
-The typical stream is composed of a stream head connected to modules and
-terminated by a driver. Some stream configurations such as pipes and
-\fBFIFOs\fR do not have a driver and hence certain features commonly supported
-by the driver need to be provided by other means. Flushing is one such feature,
-and it is provided by the \fBpipemod\fR module.
-.sp
-.LP
-Pipes and \fBFIFOs\fR in their simplest configurations only have stream heads.
-A write side is connected to a read side. This remains true when modules are
-pushed. The twist occurs at a point known as the mid-point. When an
-\fBM_FLUSH\fR message is passed from a write queue to a read queue the
-\fBFLUSHR\fR and/or \fBFLUSHW\fR bits have to be switched. The mid-point of a
-pipe is not always easily detectable, especially if there are numerous modules
-pushed on either end of the pipe. In that case there needs to be a mechanism to
-intercept all message passing through the stream. If the message is an
-\fBM_FLUSH\fR message and it is at the mid-point, the flush bits need to be
-switched. This bit switching is handled by the \fBpipemod\fR module.
-.sp
-.LP
-\fBpipemod\fR should be pushed onto a pipe or \fBFIFO\fR where flushing of any
-kind will take place. The \fBpipemod\fR module can be pushed on either end of
-the pipe. The only requirement is that it is pushed onto an end that previously
-did not have modules on it. That is, pipemod must be the first module pushed
-onto a pipe so that it is at the mid-point of the pipe itself.
-.sp
-.LP
-The \fBpipemod\fR module handles only \fBM_FLUSH\fR messages. All other
-messages are passed on to the next module using the \fBputnext()\fR utility
-routine. If an \fBM_FLUSH\fR message is passed to \fBpipemod\fR and the
-\fBFLUSHR\fR and \fBFLUSHW\fR bits are set, the message is not processed but is
-passed to the next module using the \fBputnext()\fR routine. If only the
-\fBFLUSHR\fR bit is set, the \fBFLUSHR\fR bit is turned off and the
-\fBFLUSHW\fR bit is set. The message is then passed on to the next module using
-\fBputnext()\fR. Similarly, if the \fBFLUSHW\fR bit is the only bit set in the
-\fBM_FLUSH\fR message, the \fBFLUSHW\fR bit is turned off and the \fBFLUSHR\fR
-bit is turned on. The message is then passed to the next module on the stream.
-.sp
-.LP
-The \fBpipemod\fR module can be pushed on any stream that desires the bit
-switching. It must be pushed onto a pipe or \fBFIFO\fR if any form of flushing
-must take place.
-.SH SEE ALSO
-.sp
-.LP
-\fISTREAMS Programming Guide\fR
diff --git a/usr/src/man/man7m/ptem.7m b/usr/src/man/man7m/ptem.7m
deleted file mode 100644
index 0a5354b222..0000000000
--- a/usr/src/man/man7m/ptem.7m
+++ /dev/null
@@ -1,130 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T
-.\" Copyright (C) 1999, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.\" Copyright 2022 Oxide Computer Company
-.Dd February 5, 2022
-.Dt PTEM 7M
-.Os
-.Sh NAME
-.Nm ptem
-.Nd STREAMS Pseudo-Terminal Emulation module
-.Sh SYNOPSIS
-.In unistd.h
-.In stropts.h
-.Ft int
-.Fo ioctl
-.Fa "int fildes" ,
-.Dv I_PUSH ,
-.Qq ptem
-.Fc
-.Sh DESCRIPTION
-.Nm ptem
-is a STREAMS module that emulates a terminal device when used in conjunction
-with the line discipline,
-.Xr ldterm 7M ,
-and the pseudo terminal driver,
-.Xr ptm 7D .
-.Pp
-The
-.Nm ptem
-module must be pushed
-.Po
-see
-.Dv I_PUSH
-in
-.Xr streamio 7I
-.Pc
-onto the subsidiary device of a pseudo-terminal STREAM, before the
-.Xr ldterm 7M
-module is pushed.
-.Ss Write-side Behaviour
-The
-.Dv TCSETA ,
-.Dv TCSETAF ,
-.Dv TCSETAW ,
-.Dv TCGETA ,
-.Dv TCSETS ,
-.Dv TCSETSW ,
-.Dv TCSETSF ,
-.Dv TCGETS ,
-.Dv TCSBRK ,
-.Dv JWINSIZE ,
-.Dv TIOCGWINSZ ,
-and
-.Dv TIOCSWINSZ
-.Xr termio 7I
-.Xr ioctl 2
-messages are processed and acknowledged.
-.Pp
-If
-.Em remote mode
-is not in effect,
-.Nm ptem
-handles the
-.Dv TIOCSTI
-ioctl by copying the argument bytes into an
-.Dv M_DATA
-message and passing it back up the read side.
-Regardless of the
-.Em remote mode
-setting,
-.Nm ptem
-acknowledges the ioctl and passes a copy of it downstream for possible further
-processing.
-.Pp
-A hang up
-.Po
-e.g.,
-.Ic stty 0
-.Pc
-is converted to a zero length
-.Dv M_DATA
-message and passed downstream.
-.Xr termio 7I
-.Sy cflags
-and window row and column information are stored locally, one per stream.
-.Dv M_DELAY
-messages are discarded.
-.Pp
-All other messages are passed downstream unmodified.
-.Ss Read-side Behaviour
-All messages are passed upstream unmodified with the following exceptions:
-.Bl -bullet
-.It
-All
-.Dv M_READ
-and
-.Dv M_DELAY
-messages are freed in both directions.
-.It
-A
-.Dv TCSBRK
-ioctl is converted to an
-.Dv M_BREAK
-message and passed upstream and an acknowledgement is returned downstream.
-.It
-A
-.Dv TIOCSIGNAL
-ioctl is converted into an
-.Dv M_PCSIG
-message, passed upstream, and an acknowledgement is returned downstream.
-.It
-A
-.Dv TIOCREMOTE
-ioctl is converted into an
-.Dv M_CTL
-message, acknowledged, and passed upstream; the resulting mode is retained for
-use in subsequent
-.Dv TIOCSTI
-parsing.
-.El
-.Sh SEE ALSO
-.Xr stty 1 ,
-.Xr ioctl 2 ,
-.Xr streamio 7I ,
-.Xr termio 7I ,
-.Xr ldterm 7M ,
-.Xr pckt 7M
diff --git a/usr/src/man/man7m/sppptun.7m b/usr/src/man/man7m/sppptun.7m
deleted file mode 100644
index c2b83973a9..0000000000
--- a/usr/src/man/man7m/sppptun.7m
+++ /dev/null
@@ -1,39 +0,0 @@
-'\" te
-.\" Copyright (c) 2001 by Sun Microsystems, Inc.
-.\" All rights reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SPPPTUN 7M "Jan 1, 2001"
-.SH NAME
-sppptun \- PPP tunneling pseudo-driver
-.SH SYNOPSIS
-.LP
-.nf
-\fB/dev/sppptun\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fB/dev/sppptun\fR pseudo-driver provides an interface for tunneling PPP
-sessions. This interface provides PPP over Ethernet (PPPoE) service with
-Solaris PPP.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/dev/sppptun\fR \fR
-.ad
-.RS 17n
-Solaris PPP tunneling device driver.
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBpppoec\fR(1M), \fBpppoed\fR(1M), \fBsppptun\fR(1M)
-.sp
-.LP
-\fIRFC 2516 \(em A Method for Transmitting PPP Over Ethernet (PPPoE).\fR
-Mamakos, et. al. February 1999.
diff --git a/usr/src/man/man7m/timod.7m b/usr/src/man/man7m/timod.7m
deleted file mode 100644
index aef50e882e..0000000000
--- a/usr/src/man/man7m/timod.7m
+++ /dev/null
@@ -1,168 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T
-.\" Copyright (C) 1999, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH TIMOD 7M "Mar 26, 1993"
-.SH NAME
-timod \- Transport Interface cooperating STREAMS module
-.SH SYNOPSIS
-.LP
-.nf
-#include <sys/stropts.h>
-.fi
-
-.LP
-.nf
-ioctl(\fIfildes\fR, I_STR, &\fImy_strioctl\fR);
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBtimod\fR is a STREAMS module for use with the Transport Interface
-("\fBTI\fR") functions of the Network Services library. The \fBtimod\fR module
-converts a set of \fBioctl\fR(2) calls into STREAMS messages that may be
-consumed by a transport protocol provider that supports the Transport
-Interface. This allows a user to initiate certain TI functions as atomic
-operations.
-.sp
-.LP
-The \fBtimod\fR module must be pushed onto only a stream terminated by a
-transport protocol provider that supports the \fBTI\fR.
-.sp
-.LP
-All STREAMS messages, with the exception of the message types generated from
-the \fBioctl\fR commands described below, will be transparently passed to the
-neighboring module or driver. The messages generated from the following
-\fBioctl\fR commands are recognized and processed by the \fBtimod\fR module.
-The format of the \fBioctl\fR call is:
-.sp
-.in +2
-.nf
-\fB#include <sys/stropts.h>
- -
- -
-struct strioctl my_strioctl;
- -
- -
-strioctl.ic_cmd = \fR\fIcmd\fR;
-strioctl.ic_timout = INFTIM;
-strioctl.ic_len = \fBsize\fR;
-strioctl.ic_dp = (char *)\fIbuf\fR
-ioctl(\fIfildes\fR, I_STR, &\fImy_strioctl\fR);
-.fi
-.in -2
-
-.sp
-.LP
-On issuance, \fBsize\fR is the size of the appropriate \fBTI\fR message to be
-sent to the transport provider and on return \fBsize\fR is the size of the
-appropriate \fBTI\fR message from the transport provider in response to the
-issued \fBTI \fRmessage. \fIbuf\fR is a pointer to a buffer large enough to
-hold the contents of the appropriate \fBTI\fR messages. The \fBTI\fR message
-types are defined in <\fBsys/tihdr.h\fR>. The possible values for the \fIcmd\fR
-field are:
-.sp
-.ne 2
-.na
-\fB\fBTI_BIND\fR \fR
-.ad
-.RS 15n
-Bind an address to the underlying transport protocol provider. The message
-issued to the \fBTI_BIND\fR ioctl is equivalent to the \fBTI\fR message type
-\fBT_BIND_REQ\fR and the message returned by the successful completion of the
-\fBioctl\fR is equivalent to the \fBTI\fR message type \fBT_BIND_ACK.\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBTI_UNBIND\fR \fR
-.ad
-.RS 15n
-Unbind an address from the underlying transport protocol provider. The message
-issued to the \fBTI_UNBIND\fR ioctl is equivalent to the \fBTI\fR message type
-\fBT_UNBIND_REQ\fR and the message returned by the successful completion of the
-\fBioctl\fR is equivalent to the \fBTI\fR message type \fBT_OK_ACK.\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBTI_GETINFO\fR \fR
-.ad
-.RS 15n
-Get the \fBTI\fR protocol specific information from the transport protocol
-provider. The message issued to the \fBTI_GETINFO\fR ioctl is equivalent to
-the \fBTI\fR message type \fBT_INFO_REQ\fR and the message returned by the
-successful completion of the \fBioctl\fR is equivalent to the \fBTI\fR message
-type \fBT_INFO_ACK.\fR
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBTI_OPTMGMT\fR \fR
-.ad
-.RS 15n
-Get, set, or negotiate protocol specific options with the transport protocol
-provider. The message issued to the \fBTI_OPTMGMT\fR ioctl is equivalent to
-the TI message type \fBT_OPTMGMT_REQ\fR and the message returned by the
-successful completion of the \fBioctl\fR is equivalent to the \fBTI\fR message
-type \fBT_OPTMGMT_ACK.\fR
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB<\fBsys/timod.h\fR> \fR
-.ad
-.RS 19n
-ioctl definitions
-.RE
-
-.sp
-.ne 2
-.na
-\fB<\fBsys/tiuser.h\fR> \fR
-.ad
-.RS 19n
-\fBTLI\fR interface declaration and structure file
-.RE
-
-.sp
-.ne 2
-.na
-\fB<\fBsys/tihdr.h\fR> \fR
-.ad
-.RS 19n
-\fBTPI\fR declarations and user-level code
-.RE
-
-.sp
-.ne 2
-.na
-\fB<\fBsys/errno.h\fR> \fR
-.ad
-.RS 19n
-system error messages file. Please see \fBerrno\fR(3C).
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBIntro\fR(3), \fBioctl\fR(2), \fBerrno\fR(3C), \fBtirdwr\fR(7M)
-.sp
-.LP
-\fISTREAMS Programming Guide\fR
-.SH DIAGNOSTICS
-.sp
-.LP
-If the \fBioctl\fR returns with a value greater than 0, the lower 8 bits of the
-return value will be one of the \fBTI \fRerror codes as defined in
-<\fBsys/tiuser.h\fR>. If the \fBTI\fR error is of type \fBTSYSERR\fR, then the
-next 8 bits of the return value will contain an error as defined in
-<\fBsys/errno.h\fR> (see \fBIntro\fR(3)).
diff --git a/usr/src/man/man7m/tirdwr.7m b/usr/src/man/man7m/tirdwr.7m
deleted file mode 100644
index 863710c34a..0000000000
--- a/usr/src/man/man7m/tirdwr.7m
+++ /dev/null
@@ -1,162 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T
-.\" Copyright (C) 1999, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH TIRDWR 7M "Jul 3, 1990"
-.SH NAME
-tirdwr \- Transport Interface read/write interface STREAMS module
-.SH SYNOPSIS
-.LP
-.nf
-\fBint ioctl( \fR\fIfd, \fR\fBI_PUSH\fR\fI, \fR\fB"tirdwr");\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBtirdwr\fR is a STREAMS module that provides an alternate interface to a
-transport provider which supports the Transport Interface ("\fBTI\fR")
-functions of the Network Services library (see Section 3N). This alternate
-interface allows a user to communicate with the transport protocol provider
-using the \fBread\fR(2) and \fBwrite\fR(2) system calls. The \fBputmsg\fR(2)
-and \fBgetmsg\fR(2) system calls may also be used. However, \fBputmsg\fR and
-\fBgetmsg\fR can only transfer data messages between user and stream; control
-portions are disallowed.
-.sp
-.LP
-The \fBtirdwr\fR module must only be pushed (see \fBI_PUSH\fR in
-\fBstreamio\fR(7I)) onto a stream terminated by a transport protocol provider
-which supports the \fBTI\fR. After the \fBtirdwr\fR module has been pushed onto
-a stream, none of the \fBTI\fR functions can be used. Subsequent calls to
-\fBTI\fR functions cause an error on the stream. Once the error is detected,
-subsequent system calls on the stream return an error with \fBerrno\fR set to
-\fBEPROTO\fR.
-.sp
-.LP
-The following are the actions taken by the \fBtirdwr\fR module when pushed on
-the stream, popped (see \fBI_POP\fR in \fBstreamio\fR(7I)) off the stream, or
-when data passes through it.
-.sp
-.ne 2
-.na
-\fB\fBpush\fR\fR
-.ad
-.RS 9n
-When the module is pushed onto a stream, it checks any existing data destined
-for the user to ensure that only regular data messages are present. It ignores
-any messages on the stream that relate to process management, such as messages
-that generate signals to the user processes associated with the stream. If any
-other messages are present, the \fBI_PUSH\fR will return an error with
-\fBerrno\fR set to \fBEPROTO\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBwrite\fR\fR
-.ad
-.RS 9n
-The module takes the following actions on data that originated from a
-\fBwrite\fR system call:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-All messages with the exception of messages that contain control portions (see
-the \fBputmsg\fR and \fBgetmsg\fR system calls) are transparently passed onto
-the module's downstream neighbor.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Any zero length data messages are freed by the module and they will not be
-passed onto the module's downstream neighbor.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Any messages with control portions generate an error, and any further system
-calls associated with the stream fails with \fBerrno\fR set to \fBEPROTO\fR.
-.RE
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBread\fR\fR
-.ad
-.RS 9n
-The module takes the following actions on data that originated from the
-transport protocol provider.
-.sp
-All messages with the exception of those that contain control portions (see the
-\fBputmsg\fR and \fBgetmsg\fR system calls) are transparently passed onto the
-module's upstream neighbor. The action taken on messages with control portions
-will be as follows:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Any data messages with control portions have the control portions removed from
-the message before to passing the message on to the upstream neighbor.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Messages that represent an orderly release indication from the transport
-provider generate a zero length data message, indicating the end of file, which
-will be sent to the reader of the stream. The orderly release message itself is
-freed by the module.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Messages that represent an abortive disconnect indication from the transport
-provider cause all further \fBwrite\fR and \fBputmsg\fR system calls to fail
-with \fBerrno\fR set to \fBENXIO\fR. All further \fBread\fR and \fBgetmsg\fR
-system calls return zero length data (indicating end of file) once all previous
-data has been read.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-With the exception of the above rules, all other messages with control portions
-generate an error and all further system calls associated with the stream will
-fail with \fBerrno\fR set to \fBEPROTO\fR.
-.RE
-Any zero length data messages are freed by the module and they are not passed
-onto the module's upstream neighbor.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBpop\fR\fR
-.ad
-.RS 9n
-When the module is popped off the stream or the stream is closed, the module
-takes the following action:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-If an orderly release indication has been previously received, then an orderly
-release request will be sent to the remote side of the transport connection.
-.RE
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBIntro\fR(3), \fBgetmsg\fR(2), \fBputmsg\fR(2), \fBread\fR(2),
-\fBwrite\fR(2), \fBIntro\fR(3), \fBstreamio\fR(7I), \fBtimod\fR(7M)
-.sp
-.LP
-\fISTREAMS Programming Guide\fR
diff --git a/usr/src/man/man7m/ttcompat.7m b/usr/src/man/man7m/ttcompat.7m
deleted file mode 100644
index bb25a01d1e..0000000000
--- a/usr/src/man/man7m/ttcompat.7m
+++ /dev/null
@@ -1,677 +0,0 @@
-'\" te
-.\" Copyright (c) 2001, Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 2001 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH TTCOMPAT 7M "Oct 2, 2001"
-.SH NAME
-ttcompat \- V7, 4BSD and XENIX STREAMS compatibility module
-.SH SYNOPSIS
-.LP
-.nf
-#define BSD_COMP
-#include <sys/stropts.h>
-#include <sys/ioctl.h>
-ioctl(\fIfd\fR, I_PUSH, "ttcompat");
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBttcompat\fR is a STREAMS module that translates the \fBioctl\fR calls
-supported by the older \fBVersion\fR \fB7,\fR \fB4BSD,\fR and \fBXENIX\fR
-terminal drivers into the \fBioctl\fR calls supported by the \fBtermio\fR
-interface (see \fBtermio\fR(7I)). All other messages pass through this module
-unchanged; the behavior of \fBread\fR and \fBwrite\fR calls is unchanged, as is
-the behavior of \fBioctl\fR calls other than the ones supported by
-\fBttcompat\fR.
-.sp
-.LP
-This module can be automatically pushed onto a stream using the \fBautopush\fR
-mechanism when a terminal device is opened; it does not have to be explicitly
-pushed onto a stream. This module requires that the \fBtermios\fR interface be
-supported by the modules and the application can push the driver downstream.
-The \fBTCGETS,\fR \fBTCSETS,\fR and \fBTCSETSF\fR \fBioctl\fR calls must be
-supported. If any information set or fetched by those \fBioctl\fR calls is not
-supported by the modules and driver downstream, some of the \fBV7/4BSD/XENIX\fR
-functions may not be supported. For example, if the \fBCBAUD\fR bits in the
-\fBc_cflag\fR field are not supported, the functions provided by the
-\fBsg_ispeed\fR and \fBsg_ospeed\fR fields of the \fBsgttyb\fR structure (see
-below) will not be supported. If the \fBTCFLSH\fR \fBioctl\fR is not supported,
-the function provided by the \fBTIOCFLUSH\fR \fBioctl\fR will not be supported.
-If the \fBTCXONC\fR \fBioctl\fR is not supported, the functions provided by the
-\fBTIOCSTOP\fR and \fBTIOCSTART\fR \fBioctl\fR calls will not be supported. If
-the \fBTIOCMBIS\fR and \fBTIOCMBIC\fR \fBioctl\fR calls are not supported, the
-functions provided by the \fBTIOCSDTR\fR and \fBTIOCCDTR\fR \fBioctl\fR calls
-will not be supported.
-.sp
-.LP
-The basic \fBioctl\fR calls use the \fBsgttyb\fR structure defined by
-<\fBsys/ttold.h\fR> (included by <\fBsys/ioctl.h\fR>):
-.sp
-.in +2
-.nf
-struct sgttyb {
- char sg_ispeed;
- char sg_ospeed;
- char sg_erase;
- char sg_kill;
- int sg_flags;
-};
-.fi
-.in -2
-
-.sp
-.LP
-The \fBsg_ispeed\fR and \fBsg_ospeed\fR fields describe the input and output
-speeds of the device. If the speed set on the device is over B38400, then it
-is reported as B38400 for compatibility reasons. If it is set to B38400 and
-the current speed is over B38400, the change is ignored. See TIOCGETP and
-TIOCSETP below. The \fBsg_erase\fR and \fBsg_kill fields\fR of the argument
-structure specify the erase and kill characters respectively, and reflect the
-values in the VERASE and VKILL members of the \fBc_cc field\fR of the
-\fBtermios\fR structure.
-.sp
-.LP
-The \fBsg_flags\fR field of the argument structure contains several flags that
-determine the system's treatment of the terminal. They are mapped into flags in
-fields of the terminal state, represented by the \fBtermios\fR structure.
-.sp
-.LP
-Delay type \fB0\fR (NL0, TAB0, CR0, FF0, BS0) is always mapped into the
-equivalent delay type \fB0\fR in the \fBc_oflag\fR field of the \fBtermios\fR
-structure. Other delay mappings are performed as follows:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-sg_flags c_oflag
-_
-BS1 BS1
-_
-FF1 VT1
-_
-CR1 CR2
-_
-CR2 CR3
-_
-CR3 CR0 (not supported)
-_
-TAB1 TAB1
-_
-TAB2 TAB2
-_
-XTABS TAB3
-_
-NL1 ONLRET|CR1
-_
-NL2 NL1
-_
-NL3 NL0 (not supported)
-.TE
-
-.sp
-.LP
-If previous \fBTIOCLSET\fR or \fBTIOCLBIS\fR \fBioctl\fR calls have not
-selected \fBLITOUT\fR or \fBPASS8\fR mode, and if \fBRAW\fR mode is not
-selected, the \fBISTRIP\fR flag is set in the \fBc_iflag\fR field of the
-\fBtermios\fR structure, and the \fBEVENP\fR and \fBODDP\fR flags control the
-parity of characters sent to the terminal and accepted from the terminal, as
-follows:
-.sp
-.ne 2
-.na
-\fB0 (neither EVENP nor ODDP)\fR
-.ad
-.RS 30n
-Parity is not to be generated on output or checked on input. The character
-size is set to \fBCS8\fR and the \fBPARENB\fR flag is cleared in the
-\fBc_cflag\fR field of the \fBtermios\fR structure.
-.RE
-
-.sp
-.ne 2
-.na
-\fBEVENP\fR
-.ad
-.RS 30n
-Even parity characters are to be generated on output and accepted on input. The
-INPCK flag is set in the \fBc_iflag\fR field of the \fBtermios\fR structure,
-the character size is set to \fBCS7\fR and the \fBPARENB\fR flag is set in the
-\fBc_iflag\fR field of the \fBtermios\fR structure.
-.RE
-
-.sp
-.ne 2
-.na
-\fBODDP\fR
-.ad
-.RS 30n
-Odd parity characters are to be generated on output and accepted on input. The
-\fBINPCK\fR flag is set in the \fBc_iflag\fR, the character size is set to
-\fBCS7\fR and the \fBPARENB\fR and \fBPARODD\fR flags are set in the
-\fBc_iflag\fR field of the \fBtermios\fR structure.
-.RE
-
-.sp
-.ne 2
-.na
-\fBEVENP|ODDP or ANYP\fR
-.ad
-.RS 30n
-Even parity characters are to be generated on output and characters of
-either parity are to be accepted on input. The \fBINPCK\fR flag is cleared in
-the \fBc_iflag\fR field, the character size is set to \fBCS7\fR and the
-\fBPARENB\fR flag is set in the \fBc_iflag\fR field of the \fBtermios\fR
-structure.
-.RE
-
-.sp
-.LP
-The \fBRAW\fR flag disables all output processing (the \fBOPOST\fR flag in the
-\fBc_oflag\fR field, and the \fBXCASE\fR and \fBIEXTEN\fR flags in the
-\fBc_iflag\fR field are cleared in the termios structure) and input processing
-(all flags in the \fBc_iflag\fR field other than the \fBIXOFF\fR and
-\fBIXANY\fR flags are cleared in the \fBtermios\fR structure). Eight bits of
-data, with no parity bit are accepted on input and generated on output; the
-character size is set to \fBCS8\fR and the \fBPARENB\fR and \fBPARODD\fR flags
-are cleared in the \fBc_cflag\fR field of the \fBtermios\fR structure. The
-signal-generating and line-editing control characters are disabled by clearing
-the \fBISIG\fR and \fBICANON\fR flags in the \fBc_iflag\fR field of the termios
-structure.
-.sp
-.LP
-The \fBCRMOD\fR flag turns input carriage return characters into linefeed
-characters, and output linefeed characters to be sent as a carriage return
-followed by a linefeed. The \fBICRNL\fR flag in the \fBc_iflag\fR field, and
-the \fBOPOST\fR and \fBONLCR\fR flags in the \fBc_oflag field\fR, are set in
-the termios structure.
-.sp
-.LP
-The \fBLCASE\fR flag maps upper-case letters in the \fBASCII\fR character set
-to their lower-case equivalents on input (the \fBIUCLC\fR flag is set in the
-\fBc_iflag\fR field), and maps lower-case letters in the \fBASCII\fR character
-set to their upper-case equivalents on output (the \fBOLCUC\fR flag is set in
-the \fBc_oflag\fR field). Escape sequences are accepted on input, and generated
-on output, to handle certain \fBASCII\fR characters not supported by older
-terminals (the \fBXCASE\fR flag is set in the \fBc_lflag\fR field).
-.sp
-.LP
-Other flags are directly mapped to flags in the \fBtermios\fR structure:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-sg_flags Flags in termios structure
-_
-CBREAK Complement of ICANON in c_lflag field
-_
-ECHO ECHO in c_lflag field
-_
-TANDEM IXOFF in c_iflag field
-.TE
-
-.sp
-.LP
-Another structure associated with each terminal specifies characters that are
-special in both the old Version 7 and the newer \fB4BSD\fR terminal interfaces.
-The following structure is defined by \fB<sys/ttold.h>\fR:
-.sp
-.in +2
-.nf
-struct tchars {
- char t_intrc; /* interrupt */
- char t_quitc; /* quit */
- char t_startc; /* start output */
- char t_stopc; /* stop output */
- char t_eofc; /* end-of-file */
- char t_brkc; /* input delimiter (like nl) */
- };
-.fi
-.in -2
-
-.sp
-.LP
-\fBXENIX\fR defines the \fBtchar\fR structure as \fBtc\fR. The characters are
-mapped to members of the \fBc_cc\fR field of the \fBtermios\fR structure as
-follows:
-.sp
-.in +2
-.nf
- tchars c_cc index
- t_intrc VINTR
- t_quitc VQUIT
- t_startc VSTART
- t_stopc VSTOP
- t_eofc VEOF
- t_brkc VEOL
-.fi
-.in -2
-
-.sp
-.LP
-Also associated with each terminal is a local flag word (\fBTIOCLSET\fR and
-\fBTIOCLGET\fR), specifying flags supported by the new 4BSD terminal
-interface. Most of these flags are directly mapped to flags in the
-\fBtermios\fR structure:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-Local flags Flags in termios structure
-_
-LCRTBS Not supported
-_
-LPRTERA ECHOPRT in the c_lflag field
-_
-LCRTERA ECHOE in the c_lflag field
-_
-LTILDE Not supported
-_
-LMDMBUF Not supported
-_
-LTOSTOP TOSTOP in the c_lflag field
-_
-LFLUSHO FLUSHO in the c_lflag field
-_
-LNOHANG CLOCAL in the c_cflag field
-_
-LCRTKIL ECHOKE in the c_lflag field
-_
-LPASS8 CS8 in the c_cflag field
-_
-LCTLECH CTLECH in the c_lflag field
-_
-LPENDIN PENDIN in the c_lflag field
-_
-LDECCTQ Complement of IXANY in the c_iflag field
-_
-LNOFLSH NOFLSH in the c_lflag field
-.TE
-
-.sp
-.LP
-Each flag has a corresponding equivalent \fBsg_flags\fR value. The
-\fBsg_flags\fR definitions omit the leading "L"; for example, TIOCSETP with
-\fBsg_flags\fR set to TOSTOP is equivalent to TIOCLSET with LTOSTOP.
-.sp
-.LP
-Another structure associated with each terminal is the \fBltchars\fR structure
-which defines control characters for the new \fB4BSD\fR terminal interface. Its
-structure is:
-.sp
-.in +2
-.nf
-struct ltchars {
- char t_suspc; /* stop process signal */
- char t_dsuspc; /* delayed stop process signal */
- char t_rprntc; /* reprint line */
- char t_flushc; /*flush output (toggles) */
- char t_werasc; /* word erase */
- char t_lnextc; /* literal next character */
-};
-.fi
-.in -2
-
-.sp
-.LP
-The characters are mapped to members of the \fBc_cc\fR field of the
-\fBtermios\fR structure as follows:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ltchars c_cc index
-_
-t_suspc VSUS
-_
-t_dsuspc VDSUSP
-_
-t_rprntc VREPRINT
-_
-t_flushc VDISCARD
-_
-t_werasc VWERASE
-_
-t_lnextc VLNEXT
-.TE
-
-.SH IOCTLS
-.sp
-.LP
-\fBttcompat\fR responds to the following \fBioctl\fR calls. All others are
-passed to the module below.
-.sp
-.ne 2
-.na
-\fB\fBTIOCGETP\fR \fR
-.ad
-.RS 14n
-The argument is a pointer to an \fBsgttyb\fR structure. The current terminal
-state is fetched; the appropriate characters in the terminal state are
-stored in that structure, as are the input and output speeds. If the speed is
-over B38400, then B38400 is returned. The values of the flags in the
-\fBsg_flags\fR field are derived from the flags in the terminal state and
-stored in the structure.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBTIOCEXCL\fR \fR
-.ad
-.RS 14n
-Set ``exclusive-use'' mode; no further opens are permitted until the file has
-been closed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBTIOCNXCL\fR \fR
-.ad
-.RS 14n
-Turn off ``exclusive-use'' mode.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBTIOCSETP\fR \fR
-.ad
-.RS 14n
-The argument is a pointer to an \fBsgttyb\fR structure. The appropriate
-characters and input and output speeds in the terminal state are set from the
-values in that structure, and the flags in the terminal state are set to match
-the values of the flags in the \fBsg_flags\fR field of that structure. The
-state is changed with a \fBTCSETSF\fR \fBioctl\fR so that the interface delays
-until output is quiescent, then throws away any unread characters, before
-changing the modes. If the current device speed is over B38400 for either input
-or output speed, and B38400 is specified through this interface for that speed,
-the actual device speed is not changed. If the device speed is B38400 or lower
-or if some speed other than B38400 is specified, then the actual speed
-specified is set.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBTIOCSETN\fR \fR
-.ad
-.RS 14n
-The argument is a pointer to an \fBsgttyb\fR structure. The terminal state is
-changed as \fBTIOCSETP\fR would change it, but a \fBTCSETS\fR \fBioctl\fR is
-used, so that the interface neither delays nor discards input.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBTIOCHPCL\fR \fR
-.ad
-.RS 14n
-The argument is ignored. The \fBHUPCL\fR flag is set in the \fBc_cflag\fR word
-of the terminal state.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBTIOCFLUSH\fR \fR
-.ad
-.RS 14n
-The argument is a pointer to an \fBint\fR variable. If its value is zero, all
-characters waiting in input or output queues are flushed. Otherwise, the value
-of the \fBint\fR is treated as the logical \fBOR\fR of the \fBFREAD\fR and
-\fBFWRITE\fR flags defined by \fB<sys/file.h>\fR\&. If the \fBFREAD\fR bit is
-set, all characters waiting in input queues are flushed, and if the
-\fBFWRITE\fR bit is set, all characters waiting in output queues are flushed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBTIOCSBRK\fR \fR
-.ad
-.RS 14n
-The argument is ignored. The break bit is set for the device. (This is not
-supported by \fBttcompat\fR. The underlying driver must support TIOCSBRK.)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBTIOCCBRK\fR \fR
-.ad
-.RS 14n
-The argument is ignored. The break bit is cleared for the device. (This is not
-supported by \fBttcompat\fR. The underlying driver must support TIOCCBRK.)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBTIOCSDTR\fR \fR
-.ad
-.RS 14n
-The argument is ignored. The Data Terminal Ready bit is set for the device.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBTIOCCDTR\fR \fR
-.ad
-.RS 14n
-The argument is ignored. The Data Terminal Ready bit is cleared for the device.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBTIOCSTOP\fR \fR
-.ad
-.RS 14n
-The argument is ignored. Output is stopped as if the \fBSTOP\fR character had
-been typed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBTIOCSTART\fR \fR
-.ad
-.RS 14n
-The argument is ignored. Output is restarted as if the \fBSTART\fR character
-had been typed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBTIOCGETC\fR \fR
-.ad
-.RS 14n
-The argument is a pointer to a \fBtchars\fR structure. The current terminal
-state is fetched, and the appropriate characters in the terminal state are
-stored in that structure.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBTIOCSETC\fR \fR
-.ad
-.RS 14n
-The argument is a pointer to a \fBtchars\fR structure. The values of the
-appropriate characters in the terminal state are set from the characters in
-that structure.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBTIOCLGET\fR \fR
-.ad
-.RS 14n
-The argument is a pointer to an \fBint\fR. The current terminal state is
-fetched, and the values of the local flags are derived from the flags in the
-terminal state and stored in the \fBint\fR pointed to by the argument.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBTIOCLBIS\fR \fR
-.ad
-.RS 14n
-The argument is a pointer to an \fBint\fR whose value is a mask containing
-flags to be set in the local flags word. The current terminal state is fetched,
-and the values of the local flags are derived from the flags in the terminal
-state; the specified flags are set, and the flags in the terminal state are set
-to match the new value of the local flags word.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBTIOCLBIC\fR \fR
-.ad
-.RS 14n
-The argument is a pointer to an \fBint\fR whose value is a mask containing
-flags to be cleared in the local flags word. The current terminal state is
-fetched, and the values of the local flags are derived from the flags in the
-terminal state; the specified flags are cleared, and the flags in the terminal
-state are set to match the new value of the local flags word.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBTIOCLSET\fR \fR
-.ad
-.RS 14n
-The argument is a pointer to an int containing a new set of local flags. The
-flags in the terminal state are set to match the new value of the local flags
-word. (This \fBioctl\fR was added because \fBsg_flags\fR was once a 16 bit
-value. The local modes controlled by TIOCLSET are equivalent to the modes
-controlled by TIOCSETP and \fBsg_flags\fR.)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBTIOCGLTC\fR \fR
-.ad
-.RS 14n
-The argument is a pointer to an \fBltchars\fR structure. The values of the
-appropriate characters in the terminal state are stored in that structure.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBTIOCSLTC\fR \fR
-.ad
-.RS 14n
-The argument is a pointer to an \fBltchars\fR structure. The values of the
-appropriate characters in the terminal state are set from the characters in
-that structure.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBFIORDCHK\fR \fR
-.ad
-.RS 14n
-Returns the number of immediately readable characters. The argument is ignored.
-(This ioctl is handled in the stream head, not in the \fBttcompat\fR module.)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBFIONREAD\fR \fR
-.ad
-.RS 14n
-Returns the number of immediately readable characters in the int pointed to by
-the argument. (This ioctl is handled in the stream head, not in the
-\fBttcompat\fR module.)
-.RE
-
-.sp
-.LP
-The following ioctls are returned as successful for the sake of compatibility.
-However, nothing significant is done (that is, the state of the terminal is not
-changed in any way, and no message is passed through to the underlying
-\fBtty\fR driver).
-.sp
-.in +2
-.nf
-
-DIOCSETP
-DIOCSETP
-DIOCGETP
-LDCLOSE
-LDCHG
-LDOPEN
-LDGETT
-LDSETT
-TIOCGETD
-TIOCSETD
-.fi
-.in -2
-
-.sp
-.LP
-The following old \fBioctl\fRs are not supported by \fBttcompat\fR, but are
-supported by Solaris \fBtty\fR drivers. As with all ioctl not otherwise listed
-in this documentation, these are passed through to the underlying driver and
-are handled there.
-.sp
-.in +2
-.nf
-TIOCREMOTE
-TIOCGWINSZ
-TIOCSWINSZ
-.fi
-.in -2
-
-.sp
-.LP
-The following \fBioctls\fR are not supported by \fBttcompat\fR, and are
-generally not supported by Solaris \fBtty\fR drivers. They are passed through,
-and the \fBtty\fR drivers return EINVAL.
-.sp
-.in +2
-.nf
-LDSMAP
-LDGMAP
-LDNMAP
-TIOCNOTTY
-TIOCOUTQ
-.fi
-.in -2
-
-.sp
-.LP
-(Note: LDSMAP, LDGMAP, and LDNMAP are defined in
-<\fBsys/termios.h\fR>.)
-.SH SEE ALSO
-.sp
-.LP
-\fBioctl\fR(2), \fBtermios\fR(3C), \fBldterm\fR(7M), \fBtermio\fR(7I)
diff --git a/usr/src/man/man7m/usb_ah.7m b/usr/src/man/man7m/usb_ah.7m
deleted file mode 100644
index be4a4c95de..0000000000
--- a/usr/src/man/man7m/usb_ah.7m
+++ /dev/null
@@ -1,91 +0,0 @@
-'\" te
-.\" Copyright (c) 2009 by Sun Microsystems, Inc. All rights reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH USB_AH 7M "May 15, 2009"
-.SH NAME
-usb_ah \- USB audio HID STREAMS module
-.SH DESCRIPTION
-.sp
-.LP
-The \fBusb_ah\fR STREAMS module enables the USB input control device which is a
-member of the Human Interface Device (HID) class and provides support for
-volume change and mute button. The \fBusb_ah\fR module is pushed on top of a
-HID class driver instance (see \fBhid\fR(7D)) and below an Audio Control class
-driver instance (see \fBusb_ac\fR(7D)). It translates the HID specific events
-to the events that are supported by the Solaris audio mixer framework.
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/kernel/strmod/usb_ah\fR\fR
-.ad
-.sp .6
-.RS 4n
-32-bit ELF kernel STREAMS module. (x86 platform only.)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/strmod/sparcv9/usb_ah\fR\fR
-.ad
-.sp .6
-.RS 4n
-SPARC 64-bit ELF kernel STREAMS module
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fB/kernel/strmod/amd64/usb_ah\fR\fR
-.ad
-.sp .6
-.RS 4n
-x8664-bit ELF kernel STREAMS module
-.RE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture PCI-based systems
-_
-Interface Stability Committed
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBhid\fR(7D), \fBusba\fR(7D), \fBusb_ac\fR(7D), \fBusb_as\fR(7D),
-\fBusb_mid\fR(7D), \fBaudio\fR(7I),
-.sp
-.LP
-\fISTREAMS Programming Guide\fR
-.sp
-.LP
-\fISystem Administration Guide: Basic Administration\fR
-.sp
-.LP
-\fIUniversal Serial Bus Specification 1.0 and 1.1\fR
-.sp
-.LP
-\fIDevice Class Definition for Human Interface Devices (HID) 1.1\fR
-.SH DIAGNOSTICS
-.sp
-.LP
-None
-.SH NOTES
-.sp
-.LP
-If USB audio drivers are not loaded, buttons are not active.
diff --git a/usr/src/man/man7m/usbkbm.7m b/usr/src/man/man7m/usbkbm.7m
deleted file mode 100644
index 12a3414b13..0000000000
--- a/usr/src/man/man7m/usbkbm.7m
+++ /dev/null
@@ -1,186 +0,0 @@
-'\" te
-.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH USBKBM 7M "May 13, 2017"
-.SH NAME
-usbkbm \- keyboard STREAMS module for Sun USB Keyboard
-.SH SYNOPSIS
-.LP
-.nf
-\fB\fR
-.fi
-
-.LP
-.nf
-open("/dev/kbd", O_RDWR)
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBusbkbm\fR \fBSTREAMS\fR module processes byte streams generated by a
-keyboard attached to a \fBUSB\fR port. \fBUSB\fR keyboard is a member of
-Human Interface Device (HID) Class, and \fBusbkbm\fR only supports the keyboard
-protocol defined in the specification. Definitions for altering keyboard
-translation and reading events from the keyboard are in \fB<sys/kbio.h>\fR and
-\fB<sys/kbd.h>\fR\&.
-.sp
-.LP
-The \fBusbkbm\fR \fBSTREAMS\fR module adheres to the interfaces exported by
-\fBkb\fR(7M). Refer to the \fBDESCRIPTION\fR section of \fBkb\fR(7M) for a
-discussion of the keyboard translation modes and the \fBIOCTL\fR section for
-the supported \fBioctl\fR(2) requests.
-.SS "IOCTLS"
-.LP
-\fBUSB\fR Keyboard \fBusbkbm\fR returns different values for the following
-ioctls than \fBkb\fR(7M):
-.sp
-.ne 2
-.na
-\fB\fBKIOCTYPE\fR \fR
-.ad
-.RS 13n
-This \fBioctl()\fR returns a new keyboard type defined for the \fBUSB\fR
-keyboard. All types are listed below:
-.RE
-
-.sp
-.in +2
-.nf
-KB_SUN3 Sun Type 3 keyboard
-KB_SUN4 Sun Type 4 keyboard
-KB_ASCII ASCII terminal masquerading as keyboard
-KB_PC Type 101 PC keyboard
-KB_USB USB keyboard
-.fi
-.in -2
-
-.sp
-.LP
-The \fBUSB\fR keyboard type is \fBKB_USB\fR; \fBusbkbm\fR will return
-\fBKB_USB\fR in response to the \fBKIOCTYPE\fR ioctl.
-.sp
-.ne 2
-.na
-\fB\fBKIOCLAYOUT\fR \fR
-.ad
-.RS 15n
-The argument is a pointer to an \fBint\fR. The layout code specified by the
-\fBbCountryCode\fR value returned in the \fBHID\fR descriptor is returned in
-the int pointed to by the argument. The \fBcountrycodes\fR are defined in 6.2.1
-of the \fBHID\fR 1.0 specifications.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBKIOCCMD\fR \fR
-.ad
-.RS 15n
-.sp
-.ne 2
-.na
-\fB\fBKBD_CMD_CLICK/KBD_CMD_NOCLICK\fR \fR
-.ad
-.sp .6
-.RS 4n
-The \fBkb\fR(7M) indicates that inappropriate commands for particular keyboards
-are ignored. Because clicking is not supported on the \fBUSB\fR keyboard,
-\fBusbkbm\fR ignores this command
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBKBD_CMD_SETLED\fR \fR
-.ad
-.sp .6
-.RS 4n
-Set keyboard LEDs. Same as \fBkb\fR(7M).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBKBD_CMD_GETLAYOUT\fR \fR
-.ad
-.sp .6
-.RS 4n
-The country codes defined in 6.2.1 of the \fBHID\fR 1.0 specification are
-returned.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBKBD_CMD_BELL/KBD_CMD_NOBELL\fR \fR
-.ad
-.sp .6
-.RS 4n
-This command is supported although the \fBUSB\fR keyboard does not have a
-buzzer. The request for the bell is rerouted.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBKBD_CMD_RESET\fR \fR
-.ad
-.sp .6
-.RS 4n
-There is no notion of resetting the keyboard as there is for the type4
-keyboard. \fBusbkbm\fR ignores this command and does not return an error.
-.RE
-
-.RE
-
-.SH FILES
-.ne 2
-.na
-\fB/kernel/strmod/usbkbm\fR
-.ad
-.sp .6
-.RS 4n
-32-bit ELF kernel STREAMS module (x86 platform only)
-.RE
-
-.sp
-.ne 2
-.na
-\fB/kernel/strmod/sparcv9/usbkbm\fR
-.ad
-.sp .6
-.RS 4n
-SPARC 64-bit ELF kernel STREAMS module
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for a description of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture PCI-based systems
-.TE
-
-.SH SEE ALSO
-.LP
-\fBdumpkeys\fR(1), \fBkbd\fR(1), \fBloadkeys\fR(1), \fBioctl\fR(2),
-\fBkeytables\fR(4), \fBattributes\fR(5), \fBhid\fR(7D), \fBusba\fR(7D),
-\fBvirtualkm\fR(7D), \fBkb\fR(7M)
-.sp
-.LP
-\fISTREAMS Programming Guide\fR
-.sp
-.LP
-\fISystem Administration Guide: Basic Administration\fR
-.SH DIAGN0STICS
-.LP
-None
diff --git a/usr/src/man/man7m/usbms.7m b/usr/src/man/man7m/usbms.7m
deleted file mode 100644
index ae2e980ac1..0000000000
--- a/usr/src/man/man7m/usbms.7m
+++ /dev/null
@@ -1,329 +0,0 @@
-'\" te
-.\" Copyright (c) 2005, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH USBMS 7M "May 13, 2017"
-.SH NAME
-usbms \- USB mouse STREAMS module
-.SH SYNOPSIS
-.LP
-.nf
-#include <sys/vuid_event.h>
-.fi
-
-.LP
-.nf
-#include <sys/vuid_wheel.h>
-.fi
-
-.LP
-.nf
-#include <sys/msio.h>
-.fi
-
-.LP
-.nf
-#include <sys/msreg.h>
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBusbms\fR \fBSTREAMS\fR module processes byte streams generated by a
-\fBUSB\fR mouse. A \fBUSB\fR mouse is a member of the Human Interface Device
-(HID) class and the \fBusbms\fR module supports only the mouse boot protocol
-defined in the \fBHID\fR specification.
-.sp
-.LP
-The \fBusbms\fR module must be pushed on top of the \fBHID\fR class driver (see
-\fBhid\fR(7D)). In the \fBVUID_FIRM_EVENT\fR mode, the \fBusbms\fR module
-translates packets from the \fBUSB\fR mouse into Firm events. The Firm event
-structure is defined in \fB<sys/vuid_event.h>\fR\&. The \fBSTREAMS\fR module
-state is initially set to raw or \fBVUID_NATIVE\fR mode which performs no
-message processing. See the \fIHID 1.0\fR specification for the raw format of
-the mouse packets. To initiate mouse protocol conversion to Firm events, change
-the state to \fBVUID_FIRM_EVENT\fR.
-.sp
-.LP
-When the usb mouse is opened or hot plugged in, the MOUSE_TYPE_ABSOLUTE event
-(Firm event) is sent to the upper level to notify the VUID application that it
-is the absolute mouse.
-.SH IOCTLS
-.ne 2
-.na
-\fB\fBVUIDGFORMAT\fR \fR
-.ad
-.RS 16n
-This option returns the current state of the \fBSTREAMS\fR module. The state
-of the \fBusbms\fR \fBSTREAMS\fR module may be either \fBVUID_NATIVE\fR (no
-message processing) or \fBVUID_FIRM_EVENT\fR (convert to Firm events).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBVUIDSFORMAT\fR \fR
-.ad
-.RS 16n
-The argument is a pointer to an \fBint\fR. Set the state of the \fBSTREAMS\fR
-module to the \fBint\fR pointed to by the argument.
-.RE
-
-.sp
-.in +2
-.nf
-typedef struct vuid_addr_probe {
- short base; /* default vuid device addr directed too */
- union {
- short next; /* next addr for default when VUIDSADDR */
- short current; /* current addr of default when VUIDGADDR */
- } data;
-} Vuid_addr_probe;
-.fi
-.in -2
-
-.sp
-.ne 2
-.na
-\fB\fBVUIDSADDR\fR \fR
-.ad
-.RS 14n
-The argument is a pointer to a \fBVuid_addr_probe\fR structure.
-\fBVUIDSADDR\fR sets the virtual input device segment address indicated by base
-to next.
-.RE
-
-.sp
-.LP
-If base does not equal \fBVKEY_FIRST\fR, \fBENODEV\fR is returned.
-.sp
-.ne 2
-.na
-\fB\fBVUIDGADDR\fR \fR
-.ad
-.RS 14n
-The argument is a pointer to a \fBVuid_addr_probe\fR structure. Return the
-address of the virtual input device segment indicated by base to current.
-.RE
-
-.sp
-.LP
-If base does not equal \fBVKEY_FIRST\fR, \fBENODEV\fR is returned.
-.sp
-.ne 2
-.na
-\fBVUIDGWHEELCOUNT\fR
-.ad
-.sp .6
-.RS 4n
-This ioctl takes a pointer to an integer as argument and sets the value of the
-integer to the number of wheels available on this device. This ioctl returns 1
-if wheel(s) are present and zero if no wheels are present.
-.RE
-
-.sp
-.ne 2
-.na
-\fBVUIDGWHEELINFO\fR
-.ad
-.sp .6
-.RS 4n
-This command returns static information about the wheel that does not change
-while a device is in use. Currently the only information defined is the
-wheel orientation which is either VUID_WHEEL_FORMAT_VERTICAL or
-VUID_WHEEL_FORMAT_HORIZONTAL. If the module cannot distinguish the orientation
-of the wheel or the wheel is of some other format, the format is set to
-VUID_WHEEL_FORMAT_UNKNOWN.
-.sp
-.in +2
-.nf
- typedef struct {
- int vers;
- int id;
- int format;
- } wheel_info;
-.fi
-.in -2
-
-The ioctl takes a pointer to "wheel_info" structure with the "vers" set to
-the current version of the "wheel_info" structure and "id" set to the id of the
-wheel for which the information is desired.
-.RE
-
-.sp
-.ne 2
-.na
-\fBVUIDSWHEELSTATE/VUIDGWHEELSTATE\fR
-.ad
-.sp .6
-.RS 4n
-VUIDSWHEELSTATE sets the state of the wheel to that specified in the
-stateflags. VUIDGWHEELSTATE returns the current state settings in the
-stateflags field.
-.sp
-stateflags is an OR'ed set of flag bits. The only flag currently defined is
-VUID_WHEEL_STATE_ENABLED.
-.sp
-When stateflags is set to VUID_WHEEL_STATE_ENABLED the module converts motion
-of the specified wheel into VUID events and sends those up stream.
-.sp
-Wheel events are enabled by default.
-.sp
-Applications that want to change the stateflags should first get the current
-stateflags and then change only the bit they want.
-.sp
-.in +2
-.nf
- typedef struct {
- int vers;
- int id;
- uint32_t stateflags;
- } wheel_state;
-.fi
-.in -2
-
-These ioctls take a pointer to "wheel_state" as an argument with the "vers"
-and "id" members filled in. These members have the same meaning as that
-for 'VUIDGWHEEL INFO' ioctl.
-.RE
-
-.sp
-.LP
-\fBioctl()\fR requests for changing and retrieving mouse parameters use the
-\fBMs_parms\fR structure:
-.sp
-.in +2
-.nf
- typedef struct {
- int jitter_thresh;
- int speed_law;
- int speed_limit;
- } Ms_parms;
-.fi
-.in -2
-
-.sp
-.LP
-\fBjitter_thresh\fR is the "jitter threshold" of the mouse. Motions fewer than
-\fBjitter_thresh\fR units along both axes are accumulated and then sent up the
-stream after 1/12 second.
-.sp
-.LP
-\fBspeed_law\fR indicates whether extremely large motions are to be ignored. If
-it is \fB1,\fR a "speed limit" is applied to mouse motions. Motions along
-either axis of more than \fBspeed_limit\fR units are discarded.
-.sp
-.ne 2
-.na
-\fB\fBMSIOGETPARMS\fR \fR
-.ad
-.RS 19n
-The argument is a pointer to a \fBMs_params\fR structure. The \fBusbms\fR
-module parameters are returned in the structure.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBMSIOSETPARMS\fR\fR
-.ad
-.RS 19n
-The argument is a pointer to a \fBMs_params\fR structure. The \fBusbms\fR
-module parameters are set according to the values in the structure.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBMSIOSRESOLUTION\fR\fR
-.ad
-.RS 19n
-Used by the absolute mouse to get the current screen resolution. The parameter
-is a pointer to the \fBMs_screen_resolution\fR structure:
-.sp
-.in +2
-.nf
-int height; /* height of the screen */
-int width; /* width of the screen */
-}Ms_screen_resolution;
-.fi
-.in -2
-
-The \fBusbms\fR module parameters are set according to the values in the
-structure and used to calculate the correct coordinates.
-.RE
-
-.SH FILES
-.ne 2
-.na
-\fB/kernel/strmod/usbms\fR
-.ad
-.sp .6
-.RS 4n
-32-bit ELF kernel STREAMS module (x86 platform only.)
-.RE
-
-.sp
-.ne 2
-.na
-\fB/kernel/strmod/sparcv9/usbms\fR
-.ad
-.sp .6
-.RS 4n
-SPARC 64-bit ELF kernel STREAMS module
-.RE
-
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for a description of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture PCI-based systems
-.TE
-
-.SH SEE ALSO
-.LP
-\fBioctl\fR(2), \fBattributes\fR(5), \fBhid\fR(7D), \fBvirtualkm\fR(7D),
-\fBusba\fR(7D)
-.sp
-.LP
-\fISystem Administration Guide: Basic Administration\fR
-.SH DIAGNOSTICS
-.LP
-The following messages may be logged into the system log. They are formatted in
-the following manner:
-.sp
-.in +2
-.nf
-<device path><usbms<instance number>): message...
-.fi
-.in -2
-.sp
-
-.sp
-.ne 2
-.na
-\fBInvalid Hid descriptor tree. Set to default value (3 buttons).\fR
-.ad
-.sp .6
-.RS 4n
-The mouse supplied incorrect information in its HID report.
-.RE
-
-.sp
-.ne 2
-.na
-\fBMouse buffer flushed when overrun.\fR
-.ad
-.sp .6
-.RS 4n
-Mouse data was lost.
-.RE
-
diff --git a/usr/src/man/man7m/vuidmice.7m b/usr/src/man/man7m/vuidmice.7m
deleted file mode 100644
index 3b0ef6db5d..0000000000
--- a/usr/src/man/man7m/vuidmice.7m
+++ /dev/null
@@ -1,296 +0,0 @@
-'\" te
-.\" Copyright (c) 2004, Sun Microsystems, Inc.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH VUIDMICE 7M "Jun 21, 2005"
-.SH NAME
-vuidmice, vuidm3p, vuidm4p, vuidm5p, vuid2ps2, vuid3ps2 \- converts mouse
-protocol to Firm Events
-.SH SYNOPSIS
-.LP
-.nf
-#include <sys/stream.h>
-.fi
-
-.LP
-.nf
-#include <sys/vuid_event.h>
-.fi
-
-.LP
-.nf
-#include <sys/vuid_wheel.h>
-.fi
-
-.LP
-.nf
-int ioctl(\fIfd\fR, I_PUSH, vuidm3p);
-.fi
-
-.LP
-.nf
-int ioctl(\fIfd\fR, I_PUSH, vuidm4p);
-.fi
-
-.LP
-.nf
-int ioctl(\fIfd\fR, I_PUSH, vuidm5p);
-.fi
-
-.LP
-.nf
-int ioctl(\fIfd\fR, I_PUSH, vuid2ps2);
-.fi
-
-.LP
-.nf
-int ioctl(\fIfd\fR, I_PUSH, vuid3ps2);
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The STREAMS modules \fBvuidm3p\fR, \fBvuidm4p\fR, \fBvuidm5p\fR,
-\fBvuid2ps2\fR, and \fBvuid3ps2\fR convert mouse protocols to Firm events. The
-Firm event structure is described in <\fBsys/vuid_event.h\fR>. Pushing a
-STREAMS module does not automatically enable mouse protocol conversion to Firm
-events. The STREAMS module state is initially set to raw or \fBVUID_NATIVE\fR
-mode which performs no message processing. You must change the state to
-\fBVUID_FIRM_EVENT\fR mode to initiate mouse protocol conversion to Firm
-events. This can be accomplished by the following code:
-.sp
-.in +2
-.nf
-int format;
-format = VUID_FIRM_EVENT;
-ioctl(fd, VUIDSFORMAT, &format);
-.fi
-.in -2
-
-.sp
-.LP
-You can also query the state of the STREAMS module by using the
-\fBVUIDGFORMAT\fR option.
-.sp
-.in +2
-.nf
-int format;
-int fd; /* file descriptor */
-ioctl(fd, VUIDGFORMAT, &format);
-if ( format == VUID_NATIVE );
- /* The state of the module is in raw mode.
- * Message processing is not enabled.
- */
-if ( format == VUID_FIRM_EVENT );
- /* Message processing is enabled.
- * Mouse protocol conversion to Firm events
- * are performed.
-.fi
-.in -2
-
-.sp
-.LP
-The remainder of this section describes the processing of STREAMS messages on
-the read- and write-side.
-.SS "Read Side Behavior"
-.sp
-.ne 2
-.na
-\fB\fBM_DATA\fR \fR
-.ad
-.RS 12n
-Incoming messages are queued and converted to Firm events.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM_FLUSH\fR \fR
-.ad
-.RS 12n
-The read queue of the module is flushed of all its data messages and all data
-in the record being accumulated are also flushed. The message is passed
-upstream.
-.RE
-
-.SS "Write Side Behavior"
-.sp
-.ne 2
-.na
-\fB\fBM_IOCTL\fR \fR
-.ad
-.RS 16n
-Messages sent downstream as a result of an \fBioctl\fR(2) system call. The two
-valid \fBioctl\fR options processed by the \fBvuidmice\fR modules are
-\fBVUIDGFORMAT\fR and \fBVUIDSFORMAT\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBM_FLUSH\fR \fR
-.ad
-.RS 16n
-The write queue of the module is flushed of all its data messages and the
-message is passed downstream.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBVUIDGFORMAT\fR \fR
-.ad
-.RS 16n
-This option returns the current state of the STREAMS module. The state of the
-\fBvuidmice\fR STREAMS module may either be \fBVUID_NATIVE\fR (no message
-processing) or \fBVUID_FIRM_EVENT\fR (convert to Firm events).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBVUIDSFORMAT\fR \fR
-.ad
-.RS 16n
-This option sets the state of the STREAMS module to \fBVUID_FIRM_EVENT.\fR If
-the state of the STREAMS module is already in \fBVUID_FIRM_EVENT\fR, this
-option is non-operational. It is not possible to set the state back to
-\fBVUID_NATIVE\fR once the state becomes \fBVUID_FIRM_EVENT.\fR To disable
-message processing, pop the STREAMS module out by calling \fBioctl(fd, 1I_POP,
-vuid*)\fR.
-.RE
-
-.sp
-.LP
-The following wheel support ioctls are defined for PS/2 mouse only:
-.sp
-.ne 2
-.na
-\fBVUIDGWHEELCOUNT\fR
-.ad
-.RS 19n
-This ioctl takes a pointer to an integer as argument and sets the value of the
-integer to the number of wheels available on this device.
-.RE
-
-.sp
-.ne 2
-.na
-\fBVUIDGWHEELINFO\fR
-.ad
-.RS 19n
-This command returns static information about the wheel that does not
-change while a device is in use. Currently the only information defined is
-the wheel orientation which is either
-VUID_WHEEL_FORMAT_VERTICAL or VUID_WHEEL_FORMAT_HORIZONTAL.
-.sp
-.in +2
-.nf
- typedef struct {
- int vers;
- int id;
- int format;
- } wheel_info;
-.fi
-.in -2
-
-The ioctl takes a pointer to "wheel_info" structure with the "vers" set to
-the current version of the "wheel_info" structure and "id" set to the id of the
-wheel for which the information is desired.
-.RE
-
-.sp
-.ne 2
-.na
-\fBVUIDSWHEELSTATE\fR
-.ad
-.br
-.na
-\fBVUIDGWHEELSTATE\fR
-.ad
-.RS 19n
-VUIDSWHEELSTATE sets the state of the wheel to that specified in the
-stateflags. VUIDGWHEELSTATE returns the current state settings in the
-stateflags field.
-.sp
-stateflags is an OR'ed set of flag bits. The only flag currently defined is
-VUID_WHEEL_STATE_ENABLED.
-.sp
-When stateflags is set to VUID_WHEEL_STATE_ENABLED the module converts motion
-of the specified wheel into VUID events and sends those up stream.
-.sp
-Wheel events are disabled by default.
-.sp
-Applications that want to change a flag should first get the current flags
-and then change only the bit they want.
-.sp
-.in +2
-.nf
- typedef struct {
- int vers;
- int id;
- uint32_t stateflags;
- } wheel_state;
-.fi
-.in -2
-
-These ioctls take pointer to 'wheel_state' as an argument with the 'vers'
-and 'id' members filled up. These members have the same meaning as that
-for 'VUIDGWHEELINFO' ioctl.
-.RE
-
-.SS "Mouse Configurations"
-.sp
-
-.sp
-.TS
-box;
-c | c | c
-l | l | l .
-Module Protocol Type Device
-_
-vuidm3p T{
-3-Byte Protocol Microsoft 2 Button Serial Mouse
-T} /dev/tty*
-_
-vuidm4p T{
-4-Byte Protocol Logitech 3 Button Mouseman
-T} /dev/tty*
-_
-vuidm5p T{
-Logitech 3 Button Bus Mouse Microsoft Bus Mouse
-T} /dev/logi/ dev/msm
-_
-vuid2ps2 T{
-PS/2 Protocol 2 Button PS/2 Compatible Mouse
-T} /dev/kdmouse
-_
-vuid3ps2 T{
-PS/2 Protocol 3 Button PS/2 Compatible Mouse
-T} /dev/kdmouse
-.TE
-
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Architecture x86
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBattributes\fR(5), \fBvirtualkm\fR(7D)
-.sp
-.LP
-\fISTREAMS Programming Guide\fR
diff --git a/usr/src/man/man7p/Makefile b/usr/src/man/man7p/Makefile
deleted file mode 100644
index 9186b1ac20..0000000000
--- a/usr/src/man/man7p/Makefile
+++ /dev/null
@@ -1,86 +0,0 @@
-#
-# This file and its contents are supplied under the terms of the
-# Common Development and Distribution License ("CDDL"), version 1.0.
-# You may only use this file in accordance with the terms of version
-# 1.0 of the CDDL.
-#
-# A full copy of the text of the CDDL should have accompanied this
-# source. A copy of the CDDL is also available via the Internet
-# at http://www.illumos.org/license/CDDL.
-#
-
-#
-# Copyright 2011, Richard Lowe
-# Copyright 2013 Nexenta Systems, Inc. All rights reserved.
-#
-
-include $(SRC)/Makefile.master
-
-MANSECT= 7p
-
-MANFILES= arp.7p \
- dlpi.7p \
- icmp.7p \
- icmp6.7p \
- if_tcp.7p \
- inet.7p \
- inet6.7p \
- ip.7p \
- ip6.7p \
- ipsec.7p \
- ipsecah.7p \
- ipsecesp.7p \
- ndp.7p \
- pf_key.7p \
- rarp.7p \
- route.7p \
- routing.7p \
- sctp.7p \
- sip.7p \
- slp.7p \
- tcp.7p \
- udp.7p \
- vxlan.7p
-
-MANLINKS= AH.7p \
- ARP.7p \
- ESP.7p \
- ICMP.7p \
- IP.7p \
- NDP.7p \
- RARP.7p \
- SCTP.7p \
- TCP.7p \
- UDP.7p \
- VXLAN.7p \
- if.7p
-
-ARP.7p := LINKSRC = arp.7p
-
-ICMP.7p := LINKSRC = icmp.7p
-
-if.7p := LINKSRC = if_tcp.7p
-
-IP.7p := LINKSRC = ip.7p
-
-AH.7p := LINKSRC = ipsecah.7p
-
-ESP.7p := LINKSRC = ipsecesp.7p
-
-NDP.7p := LINKSRC = ndp.7p
-
-RARP.7p := LINKSRC = rarp.7p
-
-SCTP.7p := LINKSRC = sctp.7p
-
-TCP.7p := LINKSRC = tcp.7p
-
-UDP.7p := LINKSRC = udp.7p
-
-VXLAN.7p := LINKSRC = vxlan.7p
-
-.KEEP_STATE:
-
-include $(SRC)/man/Makefile.man
-
-install: $(ROOTMANFILES) $(ROOTMANLINKS)
diff --git a/usr/src/man/man7p/arp.7p b/usr/src/man/man7p/arp.7p
deleted file mode 100644
index d7055fcb0a..0000000000
--- a/usr/src/man/man7p/arp.7p
+++ /dev/null
@@ -1,421 +0,0 @@
-'\" te
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 2008 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH ARP 7P "Sep 02, 2015"
-.SH NAME
-arp, ARP \- Address Resolution Protocol
-.SH SYNOPSIS
-.LP
-.nf
-\fB#include <sys/fcntl.h>\fR
-\fB#include <sys/socket.h>\fR
-\fB#include <net/if_arp.h>\fR
-\fB#include <netinet/in.h>\fR
-.fi
-.LP
-.nf
-\fBs = socket(PF_INET, SOCK_DGRAM, 0);\fR
-.fi
-.LP
-.nf
-\fBd = open ("/dev/arp", \fIoflag\fR);\fR
-.fi
-.SH DESCRIPTION
-.LP
-ARP is a protocol used to map dynamically between Internet Protocol (IP) and
-Ethernet addresses. It is used by all Ethernet datalink providers (network
-drivers) and can be used by other datalink providers that support broadcast,
-including FDDI and Token Ring. The only network layer supported in this
-implementation is the Internet Protocol, although ARP is not specific to that
-protocol.
-.sp
-.LP
-\fBARP\fR caches \fBIP-to-link-layer\fR address mappings. When an interface
-requests a mapping for an address not in the cache, \fBARP\fR queues the
-message that requires the mapping and broadcasts a message on the associated
-network requesting the address mapping. If a response is provided, \fBARP\fR
-caches the new mapping and transmits any pending message. \fBARP\fR will queue
-a maximum of four packets while awaiting a response to a mapping request. ARP
-keeps only the first four transmitted packets.
-.SH APPLICATION PROGRAMMING INTERFACE
-.LP
-The STREAMS device \fB/dev/arp\fR is not a Transport Level Interface
-(\fBTLI\fR) transport provider and may not be used with the \fBTLI\fR
-interface.
-.sp
-.LP
-To facilitate communications with systems that do not use ARP, ioctl()
-requests are provided to enter and delete entries in the IP-to-link
-address tables. Ioctls that change the table contents require the
-\fBPRIV_SYS_NET_CONFIG\fR privilege. See \fBprivileges\fR(5).
-.sp
-.in +2
-.nf
-#include <sys/sockio.h>
-#include <sys/socket.h>
-#include <net/if.h>
-#include <net/if_arp.h>
-struct arpreq arpreq;
-ioctl(s, SIOCSARP, (caddr_t)&arpreq);
-ioctl(s, SIOCGARP, (caddr_t)&arpreq);
-ioctl(s, SIOCDARP, (caddr_t)&arpreq);
-.fi
-.in -2
-
-.sp
-.LP
-\fBSIOCSARP\fR, \fBSIOCGARP\fR and \fBSIOCDARP\fR are BSD compatible ioctls.
-These ioctls do not communicate the mac address length between the user and the
-kernel (and thus only work for 6 byte wide Ethernet addresses). To manage the
-ARP cache for media that has different sized mac addresses, use
-\fBSIOCSXARP\fR, \fBSIOCGXARP\fR and \fBSIOCDXARP\fR ioctls.
-.sp
-.in +2
-.nf
-#include <sys/sockio.h>
-#include <sys/socket.h>
-#include <net/if.h>
-#include <net/if_dl.h>
-#include <net/if_arp.h>
-struct xarpreq xarpreq;
-ioctl(s, SIOCSXARP, (caddr_t)&xarpreq);
-ioctl(s, SIOCGXARP, (caddr_t)&xarpreq);
-ioctl(s, SIOCDXARP, (caddr_t)&xarpreq);
-.fi
-.in -2
-
-.sp
-.LP
-Each \fBioctl()\fR request takes the same structure as an argument.
-\fBSIOCS[X]ARP\fR sets an \fBARP\fR entry, \fBSIOCG[X]ARP\fR gets an \fBARP\fR
-entry, and \fBSIOCD[X]ARP\fR deletes an \fBARP\fR entry. These \fBioctl()\fR
-requests may be applied to any Internet family socket descriptor\fIs\fR, or to
-a descriptor for the \fBARP\fR device. Note that \fBSIOCS[X]ARP\fR and
-\fBSIOCD[X]ARP\fR require the user to have the \fBPRIV_SYS_NET_CONFIG\fR
-privilege, while \fBSIOCG[X]ARP\fR does not.
-.sp
-.LP
-The \fBarpreq\fR structure contains
-.sp
-.in +2
-.nf
-/*
-* ARP ioctl request
-*/
-struct arpreq {
- struct sockaddr arp_pa; /* protocol address */
- struct sockaddr arp_ha; /* hardware address */
- int arp_flags; /* flags */
-};
-.fi
-.in -2
-
-.sp
-.LP
-The \fBxarpreq\fR structure contains:
-.sp
-.in +2
-.nf
-/*
-* Extended ARP ioctl request
-*/
-struct xarpreq {
- struct sockaddr_storage xarp_pa; /* protocol address */
- struct sockaddr_dl xarp_ha; /* hardware address */
- int xarp_flags; /* arp_flags field values */
-};
-#define ATF_COM 0x2 /* completed entry (arp_ha valid) */
-#define ATF_PERM 0x4 /* permanent (non-aging) entry */
-#define ATF_PUBL 0x8 /* publish (respond for other host) */
-#define ATF_USETRAILERS 0x10 /* send trailer pckts to host */
-#define ATF_AUTHORITY 0x20 /* hardware address is authoritative */
-.fi
-.in -2
-
-.sp
-.LP
-The address family for the [x]arp_pa sockaddr must be \fBAF_INET\fR. The
-\fBATF_COM\fR flag bits ([x]arp_flags) cannot be altered. \fBATF_USETRAILERS\fR
-is not implemented by the operating system and is retained for
-compatibility only. \fBATF_PERM\fR makes the entry permanent (disables aging)
-if the \fBioctl()\fR request succeeds. \fBATF_PUBL\fR specifies that the system
-should respond to ARP requests for the indicated protocol address coming from
-other machines. This allows a host to act as an ARP server, which may be useful
-in convincing an ARP-only machine to talk to a non-ARP machine.
-\fBATF_AUTHORITY\fR indicates that this machine owns the address. ARP does not
-update the entry based on received packets.
-.sp
-.LP
-The address family for the arp_ha sockaddr must be \fBAF_UNSPEC\fR.
-.sp
-.LP
-Before invoking any of the \fBSIOC*XARP\fR ioctls, user code must fill in the
-\fBxarp_pa\fR field with the protocol (IP) address information, similar to the
-BSD variant. The \fBSIOC*XARP\fR ioctls come in two (legal) varieties,
-depending on \fBxarp_ha.sdl_nlen\fR:
-.RS +4
-.TP
-1.
-if \fBsdl_nlen\fR = 0, it behaves as an extended BSD ioctl. The kernel uses
-the IP address to determine the network interface.
-.RE
-.RS +4
-.TP
-2.
-if (\fBsdl_nlen\fR > 0) and (\fBsdl_nlen\fR < \fBLIFNAMSIZ\fR), the kernel
-uses the interface name in sdl_data[0] to determine the network interface;
-\fBsdl_nlen\fR represents the length of the string (excluding terminating null
-character).
-.RE
-.RS +4
-.TP
-3.
-if (\fBsdl_nlen\fR >= \fBLIFNAMSIZ\fR), an error (\fBEINVAL\fR) is flagged
-from the ioctl.
-.RE
-.sp
-.LP
-Other than the above, the \fBxarp_ha\fR structure should be 0-filled except for
-\fBSIOCSXARP\fR, where the \fBsdl_alen\fR field must be set to the size of
-hardware address length and the hardware address itself must be placed in the
-\fB\fR\fBLLADDR/sdl_data[]\fR area. (\fBEINVAL\fR will be returned if user
-specified \fBsdl_alen\fR does not match the address length of the identified
-interface).
-.sp
-.LP
-On return from the kernel on a \fBSIOCGXARP\fR ioctl, the kernel fills in the
-name of the interface (excluding terminating NULL) and its hardware address,
-one after another, in the \fBsdl_data/LLADDR\fR area; if the two are larger
-than can be held in the 244 byte \fBsdl_data[\fR] area, an \fBEINVAL\fR error
-is returned. Assuming it fits, the kernel will also set \fBsdl_alen\fR with the
-length of the hardware address, \fBsdl_nlen\fR with the length of the name of the
-interface (excluding terminating NULL), \fBsdl_type\fR with an IFT_* value to
-indicate the type of the media, \fBsdl_slen\fR with 0, \fBsdl_family\fR with
-\fBAF_LINK\fR and \fBsdl_index\fR (which if not 0) with system given index for
-the interface. The information returned is very similar to that returned via
-routing sockets on an \fBRTM_IFINFO\fR message.
-.sp
-.LP
-The ARP ioctls have several additional restrictions and enhancements when
-used in conjunction with IPMP:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-ARP mappings for IPMP data and test addresses are managed by the kernel and
-cannot be changed through ARP ioctls, though they may be retrieved using
-\fBSIOCGARP\fR or \fBSIOCGXARP\fR.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-ARP mappings for a given IPMP group must be consistent across the group. As a
-result, ARP mappings cannot be associated with individual underlying IP
-interfaces in an IPMP group and must instead be associated with the
-corresponding IPMP IP interface.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Proxy ARP mappings for an IPMP group are automatically managed by the kernel.
-Specifically, if the hardware address in a \fBSIOCSARP\fR or \fBSIOCSXARP\fR
-request matches the hardware address of an IP interface in an IPMP group and
-the IP address is not local to the system, the kernel regards this as a IPMP
-Proxy ARP entry. This IPMP Proxy ARP entry will have its hardware address
-automatically adjusted in order to keep the IP address reachable (provided
-the IPMP group has not entirely failed).
-.RE
-.sp
-.LP
-\fBARP\fR performs duplicate address detection for local addresses. When a
-logical interface is brought up (\fBIFF_UP\fR) or any time the hardware link
-goes up (\fBIFF_RUNNING\fR), ARP sends probes (ar$spa == 0) for the assigned
-address. If a conflict is found, the interface is torn down. See
-\fBifconfig\fR(1M) for more details.
-.sp
-.LP
-\fBARP\fR watches for hosts impersonating the local host, that is, any host
-that responds to an ARP request for the local host's address, and any address
-for which the local host is an authority. ARP defends local addresses and logs
-those with \fBATF_AUTHORITY\fR set, and can tear down local addresses on an
-excess of conflicts.
-.sp
-.LP
-ARP also handles UNARP messages received from other nodes. It does not
-generate these messages.
-.SH PACKET EVENTS
-.LP
-The \fBarp\fR driver registers itself with the netinfo interface. To gain
-access to these events, a handle from net_protocol_lookup must be acquired by
-passing it the value \fBNHF_ARP\fR. Through this interface, two packet events
-are supported:
-.sp
-.LP
-Physical in - ARP packets received via a network interface
-.sp
-.LP
-Physical out - ARP packets to be sent out via a network interface
-.sp
-.LP
-For ARP packets, the hook_pkt_event structure is filled out as follows:
-.sp
-.ne 2
-.na
-\fBhpe_ifp\fR
-.ad
-.sp .6
-.RS 4n
-Identifier indicating the inbound interface for packets received with the
-\fBphysical in\fR event.
-.RE
-
-.sp
-.ne 2
-.na
-\fBhpe_ofp\fR
-.ad
-.sp .6
-.RS 4n
-Identifier indicating the outbound interface for packets received with the
-\fBphysical out\fR event.
-.RE
-
-.sp
-.ne 2
-.na
-\fBhpe_hdr\fR
-.ad
-.sp .6
-.RS 4n
-Pointer to the start of the ARP header (not the Ethernet header).
-.RE
-
-.sp
-.ne 2
-.na
-\fBhpe_mp\fR
-.ad
-.sp .6
-.RS 4n
-Pointer to the start of the mblk_t chain containing the ARP packet.
-.RE
-
-.sp
-.ne 2
-.na
-\fBhpe_mb\fR
-.ad
-.sp .6
-.RS 4n
-Pointer to the mblk_t with the ARP header in it.
-.RE
-
-.SH NETWORK INTERFACE EVENTS
-.LP
-In addition to events describing packets as they move through the system, it
-is also possible to receive notification of events relating to network
-interfaces. These events are all reported back through the same callback. The
-list of events is as follows:
-.sp
-.ne 2
-.na
-\fBplumb\fR
-.ad
-.sp .6
-.RS 4n
-A new network interface has been instantiated.
-.RE
-
-.sp
-.ne 2
-.na
-\fBunplumb\fR
-.ad
-.sp .6
-.RS 4n
-A network interface is no longer associated with ARP.
-.RE
-
-.SH SEE ALSO
-.LP
-\fBarp\fR(1M), \fBifconfig\fR(1M), \fBsockaddr\fR(3SOCKET), \fBprivileges\fR(5),
-\fBif_tcp\fR(7P), \fBinet\fR(7P), \fBnetinfo\fR(9F)
-.sp
-.LP
-Plummer, Dave, \fIAn Ethernet Address Resolution Protocol\fR or \fIConverting
-Network Protocol Addresses to 48 .bit Ethernet Addresses for Transmission on
-Ethernet Hardware\fR, RFC 826, STD 0037, November 1982.
-.sp
-.LP
-Malkin, Gary, \fIARP Extension - UNARP, RFC 1868\fR, November, 1995
-.SH DIAGNOSTICS
-.LP
-Several messages can be written to the system logs (by the IP module) when
-errors occur. In the following examples, the hardware address strings include
-colon (:) separated ASCII representations of the link layer addresses, whose
-lengths depend on the underlying media (for example, 6 bytes for Ethernet).
-.sp
-.ne 2
-.na
-\fBNode %x:%x ... %x:%x is using our IP address %d.%d.%d.%d on %s.\fR
-.ad
-.sp .6
-.RS 4n
-Duplicate IP address warning. ARP has discovered another host on a local
-network that responds to mapping requests for the Internet address of this
-system, and has defended the system against this node by re-announcing the ARP
-entry.
-.RE
-
-.sp
-.ne 2
-.na
-\fB%s has duplicate address %d.%d.%d.%d (in use by %x:%x ... %x:%x);
-disabled.\fR
-.ad
-.sp .6
-.RS 4n
-Duplicate IP address detected while performing initial probing. The
-newly-configured interface has been shut down.
-.RE
-
-.sp
-.ne 2
-.na
-\fB%s has duplicate address %d.%d.%d.%d (claimed by %x:%x ... %x:%x);
-disabled.\fR
-.ad
-.sp .6
-.RS 4n
-Duplicate IP address detected on a running IP interface. The conflict cannot be
-resolved, and the interface has been disabled to protect the network.
-.RE
-
-.sp
-.ne 2
-.na
-\fBRecovered address %d.%d.%d.%d on %s.\fR
-.ad
-.sp .6
-.RS 4n
-An interface with a previously-conflicting IP address has been recovered
-automatically and reenabled. The conflict has been resolved.
-.RE
-
-.sp
-.ne 2
-.na
-\fBProxy ARP problem? Node '%x:%x ... %x:%x' is using %d.%d.%d.%d on %s\fR
-.ad
-.sp .6
-.RS 4n
-This message appears if \fBarp\fR(1M) has been used to create a published
-permanent (\fBATF_AUTHORITY\fR) entry, and some other host on the local network
-responds to mapping requests for the published ARP entry.
-.RE
-
diff --git a/usr/src/man/man7p/dlpi.7p b/usr/src/man/man7p/dlpi.7p
deleted file mode 100644
index c2ffdc6889..0000000000
--- a/usr/src/man/man7p/dlpi.7p
+++ /dev/null
@@ -1,407 +0,0 @@
-'\" te
-.\" Copyright (c) 2009, Sun Microsystems, Inc.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH DLPI 7P "April 9, 2016"
-.SH NAME
-dlpi \- Data Link Provider Interface
-.SH SYNOPSIS
-.LP
-.nf
-\fB#include <sys/dlpi.h>\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-SunOS STREAMS-based device drivers wishing to support the STREAMS \fB TCP/IP\fR
-and other STREAMS-based networking protocol suite implementations support
-Version 2 of the Data Link Provider Interface (\fBDLPI\fR). \fBDLPI V2\fR
-enables a data link service user to access and use any of a variety of
-conforming data link service providers without special knowledge of the
-provider's protocol. Specifically, the interface is intended to support
-Ethernet, \fBX.25 LAPB,\fR \fBSDLC,\fR \fBISDN LAPD,\fR \fBCSMA/CD,\fR
-\fBFDDI,\fR token ring, token bus, Bisync, and other datalink-level protocols.
-.sp
-.LP
-The interface specifies access to the data link service provider in the form of
-\fBM_PROTO\fR and \fBM_PCPROTO\fR type STREAMS messages and does not define a
-specific protocol implementation. The interface defines the syntax and
-semantics of primitives exchanged between the data link user and the data link
-provider to attach a physical device with physical-level address to a stream,
-bind a datalink-level address to the stream, get implementation-specific
-information from the data link provider, exchange data with a peer data link
-user in one of three communication modes (connection, connectionless,
-acknowledged connectionless), enable/disable multicast group and promiscuous
-mode reception of datalink frames, get and set the physical address associated
-with a stream, and several other operations.
-.sp
-.LP
-Solaris conforms to The Open Group Technical Standard for \fIDLPI, Version
-2\fR. For free access to this specification, point your browser to
-\fIwww.opengroup.org/pubs/catalog/c811.htm\fR. Solaris also provides extensions
-to the DLPI standard, as detailed in this man page.
-.SH SOLARIS-SPECIFIC DLPI EXTENSIONS
-.ne 2
-.na
-\fBNotification Support\fR
-.ad
-.sp .6
-.RS 4n
-Enables \fBDLPI\fR consumers to register for notification when events of
-interest occur at the \fBDLPI\fR provider. The negotiation can be performed on
-any attached DLPI stream, and begins with the \fBDLPI\fR consumer, sending a
-DL_NOTIFY_REQ to the provider, which is an M_PROTO message with the following
-payload:
-.sp
-.in +2
-.nf
- typedef struct {
- t_uscalar_t dl_primitive;
- uint32_t dl_notifications;
- uint32_t dl_timelimit;
- } dl_notify_req_t;
-.fi
-.in -2
-
-The dl_primitive field must be set to DL_NOTIFY_REQ; the dl_timelimit field is
-reserved for future use and must be set to zero. The dl_notifications field is
-a bitmask containing the event types the consumer is interested in receiving,
-and must be zero or more of:
-.sp
-.in +2
-.nf
-DL_NOTE_LINK_DOWN Notify when link has gone down
-DL_NOTE_LINK_UP Notify when link has come up
-DL_NOTE_PHYS_ADDR Notify when address changes
-DL_NOTE_SDU_SIZE Notify when MTU changes
-DL_NOTE_SPEED Notify when speed changes
-DL_NOTE_PROMISC_ON_PHYS Notify when DL_PROMISC_PHYS is set
-DL_NOTE_PROMISC_OFF_PHYS Notify when DL_PROMISC_PHYS is cleared
-.fi
-.in -2
-
-Consumers might find it useful to send a DL_NOTIFY_REQ message with no
-requested types to check if the \fBDLPI\fR provider supports the extension.
-.sp
-Upon receiving the DL_NOTIFY_REQ, the \fBDLPI\fR provider must generate a
-DL_NOTIFY_ACK, which is an M_PROTO message with the following payload:
-.sp
-.in +2
-.nf
- typedef struct {
- t_uscalar_t dl_primitive;
- uint32_t dl_notifications;
- } dl_notify_ack_t;
-.fi
-.in -2
-
-The \fBdl_primitive\fR field must be set to DL_NOTIFY_ACK. The
-\fBdl_notifications\fR field must include any notifications that the provider
-supports, along with any other unrequested notifications that the provider
-supports. However, regardless of the notifications the provider supports, it is
-restricted to sending only DL_NOTIFY_IND messages (see below) that were
-requested in the DL_NOTIFY_REQ.
-.sp
-Since there are additional notification types which are not yet available for
-public use, \fBDLPI\fR consumers and providers must take care when inspecting
-and setting the \fBdl_notifications\fR field. Specifically, consumers must be
-careful to only request the above notification types, and providers must be
-careful to not include any unrecognized notification types in the
-\fBdl_notifications\fR field when constructing the DL_NOTIFY_ACK. In addition,
-DL_NOTIFY_IND's that are received with undocumented dl_notification or dl_data
-values must be ignored.
-.sp
-DLPI consumers might receive a DL_ERROR_ACK message (with dl_error_primitive
-set to DL_NOTIFY_REQ) in response to the initial DL_NOTIFY_REQ message. This
-message indicates that the DLPI provider does not support the DLPI notification
-extension. Otherwise, the DLPI consumer receives a DL_NOTIFY_ACK and should
-expect to receive DL_NOTIFY_IND messages for any types that it requested that
-were still set in it. The DL_NOTIFY_IND is an M_PROTO message with the
-following payload:
-.sp
-.in +2
-.nf
- typedef struct {
- t_uscalar_t dl_primitive;
- uint32_t dl_notification;
- uint32_t dl_data;
- t_uscalar_t dl_addr_length;
- t_uscalar_t dl_addr_offset;
- } dl_notify_ind_t;
-.fi
-.in -2
-
-The \fBdl_primitive\fR field must be set to DL_NOTIFY_IND, and the
-\fBdl_notification\fR field must be set to the event type that has occurred
-(for example, DL_NOTE_LINK_DOWN). Only a single event type can be set in each
-DL_NOTIFY_IND.
-.sp
-For the DL_NOTE_SPEED event type, \fBdl_data\fR must be set to the current
-interface speed in kilobits per second. For the DL_NOTE_PHYS_ADDR event type,
-dl_data must be set to DL_CURR_PHYS_ADDR. For the DL_NOTE_SDU_SIZE event type,
-\fBdl_data\fR must be set to the current MTU in bytes. Otherwise, \fBdl_data\fR
-must be set to zero.
-.sp
-For the DL_NOTE_PHYS_ADDR event type, the \fBdl_addr_length\fR field must be
-set to the length of the address, and the \fBdl_addr_offset\fR field must be
-set to offset of the first byte of the address, relative to b_rptr (for
-example, if the address immediately follows the \fBdl_notify_ind\fR structure,
-\fBdl_addr_offset\fR is set to 'sizeof (\fBdl_notify_ind\fR)'). For all other
-event types, the \fBdl_addr_length\fR and \fBdl_addr_offset\fR fields must be
-set to zero by DLPI providers and ignored by DLPI consumers.
-.sp
-In addition to generating DL_NOTIFY_IND messages when a requested event has
-occurred, the \fBDLPI\fR provider must initially generate one or more
-DL_NOTIFY_IND messages to notify the \fBDLPI\fR consumer of the current
-state of the interface. For instance, if the consumer has requested
-DL_NOTE_LINK_UP | DL_NOTE_LINK_DOWN, the provider must send a DL_NOTIFY_IND
-containing the current state of the link (either DL_NOTE_LINK_UP or
-DL_NOTE_LINK_DOWN) after sending the DL_NOTIFY_ACK.
-.sp
-For the initial DL_NOTIFY_IND message, the DLPI provider is strongly
-recommended against sending DL_NOTE_LINK_DOWN, even if the interface is still
-initializing and is not yet ready to send or receive packets. Instead, either
-delaying the DL_NOTIFY_IND message until the interface is ready or
-optimistically reporting DL_NOTIFY_LINK_UP and subsequently reporting
-DL_NOTE_LINK_DOWN if the negotiation fails is strongly preferred. This
-prevents DL_NOTIFY_IND consumers from needlessly triggering network failover
-operations and logging error messages during network interface initialization.
-.sp
-The DLPI provider must continue to generate DL_NOTIFY_IND messages until it
-receives a new DL_NOTIFY_REQ message or the \fBDLPI\fR stream is detached (or
-closed). Further, a DLPI style 2 provider must keep track of the requested
-events after a DL_DETACH_REQ operation, and if a subsequent DL_ATTACH_REQ is
-received, it must send gratuitous DL_NOTIFY_IND messages to notify the
-consumer of the current state of the device, since the state might have
-changed while detached (or the consumer might have simply discarded its
-previous state).
-.RE
-
-.sp
-.ne 2
-.na
-\fBPassive Consumers of Aggregated Links\fR
-.ad
-.sp .6
-.RS 4n
-Solaris link aggregations as configured by \fBdladm\fR(1M) export DLPI nodes
-for both the link aggregation, and individual links that comprises the
-aggregation, to allow observability of the aggregated links. To allow
-applications such as \fBsnoop\fR(1M) to open those individual aggregated links
-while disallowing other consumers such as \fBip\fR(7P), DL_PASSIVE_REQ (a DLPI
-primitive), must be issued by \fBsnoop\fR(1M) and similar applications.
-.sp
-The DL_PASSIVE_REQ primitive is an M_PROTO message containing the following
-payload:
-.sp
-.in +2
-.nf
-typedef struct {
- t_uscalar_t dl_primitive;
-} dl_passive_req_t;
-.fi
-.in -2
-
-Issuing this primitive allows the consumer of a DLPI link to coexist with a
-link aggregation that also uses the link. Such a consumer is considered
-\fBpassive\fR.
-.sp
-Consumers that don't use this primitive while an aggregation is using the link
-receive DL_SYSERR/EBUSY when issuing the following DLPI primitives:
-.sp
-.in +2
-.nf
-DL_BIND_REQ
-DL_ENABMULTI_REQ
-DL_PROMISCON_REQ
-DL_AGGR_REQ
-DL_UNAGGR_REQ
-DL_CONTROL_REQ
-DL_SET_PHYS_ADDR_REQ
-.fi
-.in -2
-
-A consumer that has not issued a DL_PASSIVE_REQ and has successfully issued one
-of the above primitives is considered \fBactive\fR.
-.sp
-The creation of a link aggregation using \fBdladm\fR(1M) fails if one of the
-links included in the aggregation has an \fBactive\fR consumer, but succeeds if
-the links do not have any DLPI consumers or only \fBpassive\fR consumers.
-.RE
-
-.sp
-.ne 2
-.na
-\fBRaw Mode\fR
-.ad
-.sp .6
-.RS 4n
-The \fBDLIOCRAW\fR ioctl function is used by some DLPI applications, most
-notably the \fBsnoop\fR(1M) command. The \fBDLIOCRAW\fR command puts the stream
-into a raw mode, which, upon receive, causes the full MAC-level packet to
-be sent upstream in an \fBM_DATA\fR message instead of it being transformed
-into the \fBDL_UNITDATA_IND\fR form normally used for reporting incoming
-packets. Packet \fBSAP\fR filtering is still performed on streams that are in
-raw mode. If a stream user wants to receive all incoming packets it must also
-select the appropriate promiscuous modes. After successfully selecting raw
-mode, the application is also allowed to send fully formatted packets to the
-provider as \fBM_DATA\fR messages for transmission. \fBDLIOCRAW\fR takes no
-arguments. Once enabled, the stream remains in this mode until closed.
-.RE
-
-.sp
-.ne 2
-.na
-\fBNative Mode\fR
-.ad
-.sp .6
-.RS 4n
-Some DLPI providers are able to represent their link layer using more than one
-link-layer format. In this case, the default link-layer format can minimize
-impact to applications, but might not allow truly \fBnative\fR link-layer
-headers to be sent or received. DLPI consumers who wish to use the native
-link-layer format can use DLIOCNATIVE to transition the stream. DLIOCNATIVE
-takes no arguments and returns the DLPI mac type associated with the new
-link-layer format upon success. Once enabled, the stream remains in
-this mode until closed. Note that DLIOCNATIVE does not enable transition
-between dissimilar DLPI mac types and (aside from the link-layer format), the
-new DLPI mac type is guaranteed to be semantically identical. In particular,
-the SAP space and addressing format are not affected and the effect of
-DLIOCNATIVE is only visible when in raw mode, though any subsequent DL_INFO_REQ
-requests generate responses with dl_mac_type set to the native DLPI type.
-.RE
-
-.sp
-.ne 2
-.na
-\fBMargin\fR
-.ad
-.sp .6
-.RS 4n
-While a DLPI provider provides its maximum SDU via dl_max_sdu in DL_INFO_ACK
-messages, this value typically represents a standard maximum SDU for the
-provider's media (1500 for Ethernet for example), and not necessarily the
-absolute maximum amount of data that the provider is able to transmit in a
-given data unit. The \fBmargin\fR "is the extra amount of data in bytes that
-the provider can transmit beyond its advertised maximum SDU. For example, if a
-DL_ETHER provider can handle packets whose payload section is no greater than
-1522 bytes and its dl_max_sdu is set to 1500 (as is typical for Ethernet), then
-the margin would be 22. If a provider supports a non-zero margin, it implements
-the DLIOCMARGININFO ioctl, whose data is a t_uscalar_t representing the margin
-size.
-.RE
-
-.SH DL_ETHER-SPECIFIC DLPI SEMANTICS
-.SS "VLAN Support"
-.SS "Traditional VLAN Access"
-.LP
-Some \fBDL_ETHER DLPI\fR providers support \fIIEEE 802.1Q\fR Virtual LANs
-(VLAN). For these providers, traffic for a particular VLAN can be accessed by
-opening a VLAN data-link.
-.sp
-.LP
-Unless raw mode is enabled, a DLPI stream bound to a VLAN data-link behaves
-no differently than a traditional DLPI stream. As with non-VLAN data-link
-access, data must be sent to a DLPI provider without link-layer headers (which
-are added by the provider) and received data is passed to interested DLPI
-consumers without link-layer headers. As a result, DLPI consumers not require
-special-case logic to implement VLAN access.
-.SS "SAP-Based VLAN Access"
-.LP
-As per \fIIEEE 802.1Q\fR, all VLAN traffic is sent using Ether- Type 0x8100,
-meaning that in addition to directly opening a VLAN data-link, all VLAN
-traffic for a given underline data-link can also be accessed by opening the
-underlying data-link and binding to SAP 0x8100. Accordingly, all VLAN traffic
-(regardless of VLAN ID) can be sent and received by the DLPI consumer.
-However, even when raw mode is disabled, packets are received starting with
-their VLAN headers and must be sent to the DLPI provider with their VLAN
-headers already pre-pended (but without Ethernet headers). Because adhering to
-these semantics requires each DLPI consumer to have specialized knowledge of
-VLANs, VLANs should only be accessed in this way when the traditional VLAN
-access method is insufficient (for example, because access to all VLAN
-traffic, regardless of VLAN ID, is needed).
-.sp
-.LP
-Because all VLAN traffic is sent with SAP 0x8100, VLAN traffic not filtered at
-the physical (\fBDL_PROMISC_PHYS\fR) level is also visible if a DLPI consumer
-enables promiscuous mode of a stream at the \fBDL_PROMISC_SAP\fR level. As
-mentioned earlier, these packets are received starting with their VLAN headers
-if raw mode is not enabled.
-.SS "QoS Support"
-.LP
-The \fIIEEE 802.1Q\fR standard defines eight classes of priority values used by
-QoS traffic control of Ethernet packets. Although the priority values are
-encoded in the\fI 802.1Q\fR tags, they can be used independently from VLANs.
-In particular, a special priority tagged packet (with VLAN ID zero but
-priority bits non-zero) does not belong to any VLAN.
-.sp
-.LP
-The priority value can be set on either a per-stream or per-packet basis. DLPI
-consumers can specify the per-stream priority using the \fBDL_UDQOS_REQ\fR
-request (the priority value remains unchanged until the next DL_UDQOS_REQ) and
-also specify the per-packet priority value using the b_band field of a M_DATA
-message or the \fBdl_priority\fR field of a \fBDL_UNITDATA_REQ\fR.
-.SS "Raw Mode"
-.SS "SAP-Based VLAN Access"
-.LP
-When raw mode is enabled, the complete, unmodified MAC- level packet (including
-Ethernet and VLAN headers) is passed to interested DLPI consumers. Similarly,
-the entire MAC-level packet (including Ethernet and VLAN headers) must be sent
-to the DLPI provider for transmission. Note that the priority value specified
-in the b_band field can be overridden by encoding the priority value (if any)
-into the VLAN header.
-.SS "Traditional VLAN Access"
-.LP
-When raw mode is enabled, only packets with the correct VLAN ID are passed up
-to interested DLPI consumers. With the exception of priority-tagged packets,
-DLPI providers must strip off the VLAN headers (while retaining the preceding
-Ethernet headers) before sending up the packets. For priority-tagged packets,
-DLPI providers must use the reserved tag 0 to encode the VLAN TCI and send up
-the packets.
-.sp
-.LP
-On the transmit-side, DLPI consumers must send the packets down to the DLPI
-providers without the VLAN headers (but with the Ethernet headers) unless
-certain QoS support is required. If QoS support is needed, the packet can have
-the VLAN header to indicate the priority value, however its VLAN ID must be
-zero. The DLPI providers then insert the VLAN tags or encode the VLAN tags
-using the priority value specified in the VLAN headers and send the packets.
-.SH FILES
-.LP
-Files in or under \fB/dev\fR.
-.SH ATTRIBUTES
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-T{
-Interface Stability (Notification support/Passive mode behavior)
-T} Committed
-.TE
-
-.SH SEE ALSO
-.LP
-\fBdladm\fR(1M), \fBsnoop\fR(1M), \fBlibdlpi\fR(3LIB), \fBgld\fR(7D),
-\fBip\fR(7P)
-.SH NOTES
-.LP
-A Solaris DLPI link name consists of a \fBDLPI provider name\fR followed by a
-numeric \fBPPA\fR (physical point of attachment).
-.sp
-.LP
-The DLPI provider name must be between 1 and 16 characters in length, though
-names between 3 and 8 characters are preferred. The DLPI provider name can
-consist of any alphanumeric character (a-z, A-Z, 0-9), and the underscore (_).
-The first and last character of the DLPI provider name cannot be a digit.
-.sp
-.LP
-The PPA must be a number between \fB0\fR and \fB4294967294\fR inclusive.
-Leading zeroes are not permitted.
diff --git a/usr/src/man/man7p/icmp.7p b/usr/src/man/man7p/icmp.7p
deleted file mode 100644
index 21a9fc164b..0000000000
--- a/usr/src/man/man7p/icmp.7p
+++ /dev/null
@@ -1,108 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T
-.\" Copyright (C) 1999, Sun Microsystems, Inc.
-.\" All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH ICMP 7P "Dec 03, 2015"
-.SH NAME
-icmp, ICMP \- Internet Control Message Protocol
-.SH SYNOPSIS
-.LP
-.nf
-#include <sys/socket.h>
-#include <netinet/in.h>
-#include <netinet/ip_icmp.h>
-s = socket(AF_INET, SOCK_RAW, proto);
-t = t_open("/dev/icmp", O_RDWR);
-.fi
-
-.SH DESCRIPTION
-.LP
-\fBICMP\fR is the error and control message protocol used by the Internet
-protocol family. It is used by the kernel to handle and report errors in
-protocol processing. It may also be accessed by programs using the socket
-interface or the Transport Level Interface (\fBTLI\fR) for network monitoring
-and diagnostic functions. When used with the socket interface, a "raw socket"
-type is used. The protocol number for \fBICMP,\fR used in the \fIproto\fR
-parameter to the socket call, can be obtained from
-\fBgetprotobyname\fR(3SOCKET). \fBICMP\fR file descriptors and sockets are
-connectionless, and are normally used with the \fBt_sndudata\fR /
-\fBt_rcvudata\fR and the \fBsendto()\fR / \fBrecvfrom()\fR calls. In order to
-send \fBICMP\fR packets, a process needs the \fBPRIV_NET_ICMPACCESS\fR
-privilege. (See \fBprivileges\fR(5) for more information on privileges.)
-.sp
-.LP
-Outgoing packets automatically have an Internet Protocol (\fBIP\fR) header
-prepended to them. Incoming packets are provided to the user with the \fBIP\fR
-header and options intact.
-.sp
-.LP
-\fBICMP\fR is an datagram protocol layered above \fBIP.\fR It is used
-internally by the protocol code for various purposes including routing, fault
-isolation, and congestion control. Receipt of an \fBICMP\fR "redirect" message
-will add a new entry in the routing table, or modify an existing one.
-\fBICMP\fR messages are routinely sent by the protocol code. Received
-\fBICMP\fR messages may be reflected back to users of higher-level protocols
-such as \fBTCP\fR or \fBUDP\fR as error returns from system calls. A copy of
-all \fBICMP\fR message received by the system is provided to every holder of an
-open \fBICMP\fR socket or \fBTLI\fR descriptor.
-.SH SEE ALSO
-.LP
-\fBgetprotobyname\fR(3SOCKET), \fBrecv\fR(3SOCKET), \fBsend\fR(3SOCKET),
-\fBt_rcvudata\fR(3NSL), \fBt_sndudata\fR(3NSL), \fBprivileges\fR(5),
-\fBinet\fR(7P), \fBip\fR(7P), \fBrouting\fR(7P)
-.sp
-.LP
-Postel, Jon, \fIInternet Control Message Protocol \(em DARPA Internet Program
-Protocol Specification\fR, \fBRFC\fR 792, Network Information Center, \fBSRI\fR
-International, Menlo Park, Calif., September 1981.
-.SH DIAGNOSTICS
-.LP
-A socket operation may fail with one of the following errors returned:
-.sp
-.ne 2
-.na
-\fB\fBEISCONN\fR\fR
-.ad
-.RS 17n
-An attempt was made to establish a connection on a socket which already has
-one, or when trying to send a datagram with the destination address specified
-and the socket is already connected.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBENOTCONN\fR\fR
-.ad
-.RS 17n
-An attempt was made to send a datagram, but no destination address is
-specified, and the socket has not been connected.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBENOBUFS\fR\fR
-.ad
-.RS 17n
-The system ran out of memory for an internal data structure.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEADDRNOTAVAIL\fR\fR
-.ad
-.RS 17n
-An attempt was made to create a socket with a network address for which no
-network interface exists.
-.RE
-
-.SH NOTES
-.LP
-Replies to \fBICMP\fR "echo" messages which are source routed are not sent back
-using inverted source routes, but rather go back through the normal routing
-mechanisms.
diff --git a/usr/src/man/man7p/icmp6.7p b/usr/src/man/man7p/icmp6.7p
deleted file mode 100644
index d00493040d..0000000000
--- a/usr/src/man/man7p/icmp6.7p
+++ /dev/null
@@ -1,159 +0,0 @@
-'\" te
-.\" Copyright (C) 1999, Sun Microsystems,
-.\" Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH ICMP6 7P "Dec 03, 2015"
-.SH NAME
-icmp6 \- Internet Control Message Protocol for Internet Protocol Version 6
-.SH SYNOPSIS
-.LP
-.nf
-#include <sys/socket.h>
-#include <netinet/in.h>
-#include <netinet/ip_icmp.h>
-#include <netinet/icmp6.h>
-.fi
-
-.LP
-.nf
-s = socket(AF_INET6, SOCK_RAW, proto);
-.fi
-
-.LP
-.nf
-t = t_open("/dev/icmp6", O_RDWR);
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBICMP6\fR protocol is the error and control message protocol used with
-Version 6 of the Internet Protocol. It is used by the kernel to handle and
-report errors in protocol processing. It is also used for \fBIPv6\fR neighbor
-and router discovery, and for multicast group membership queries and reports.
-It may also be accessed by programs using the socket interface or the Transport
-Level Interface (\fBTLI\fR) for network monitoring and diagnostic functions.
-When used with the socket interface, a "raw socket" type is used. The protocol
-number for \fBICMP6\fR, used in the \fIproto\fR parameter to the socket call,
-can be obtained from \fBgetprotobyname\fR(3SOCKET). \fBICMP6\fR file
-descriptors and sockets are connectionless and are normally used with the
-\fBt_sndudata\fR / \fBt_rcvudata\fR and the \fBsendto()\fR / \fBrecvfrom()\fR
-calls. They may also be used with the \fBsendmsg()\fR/\fBrecvgmsg()\fR calls
-when sending or receiving ancillary data. In order to send \fBICMP6\fR packets,
-a process needs the \fBPRIV_NET_ICMPACCESS\fR privilege. (See
-\fBprivileges\fR(5) for more information on privileges.)
-.sp
-.LP
-Outgoing packets automatically have an Internet Protocol Version 6 (\fBIPv6\fR)
-header and zero or more \fBIPv6\fR extension headers prepended. These headers
-are prepended by the kernel. Unlike \fBICMP\fR for \fBIPv4\fR, the
-\fBIP_HDRINCL\fR option is not supported for \fBICMP6\fR, so \fBICMP6\fR
-applications neither build their own outbound \fBIPv6\fR headers, nor do they
-receive the inbound \fBIPv6\fR headers with received data. \fBIPv6\fR extension
-headers and relevant fields of the \fBIPv6\fR header may be set or received as
-ancillary data to a \fBsendmsg\fR(3SOCKET) or \fBrecvmsg\fR(3SOCKET) system
-call. Each of these fields and extension headers may also be set on a per
-socket basis with the \fBsetsockopt\fR(3SOCKET) system call. Such "sticky"
-options are used on all outgoing packets unless overridden by ancillary data.
-When any ancillary data is present with a \fBsendmsg\fR(3SOCKET) system call,
-all sticky options are ignored for that system call, but subsequently remain
-configured.
-.sp
-.LP
-\fBICMP6\fR is a datagram protocol layered above \fBIPv6\fR. Received
-\fBICMP6\fR messages may be reflected back to users of higher-level protocols
-such as \fBTCP\fR or \fBUDP\fR as error returns from system calls. A copy of
-each \fBICMP6\fR error message received by the system is provided to every
-holder of an open \fBICMP6\fR socket or \fBTLI\fR descriptor.
-.SH SEE ALSO
-.LP
-\fBgetprotobyname\fR(3SOCKET), \fBrecv\fR(3SOCKET), \fBrecvmsg\fR(3SOCKET),
-\fBsend\fR(3SOCKET), \fBsendmsg\fR(3SOCKET), \fBsetsockopt\fR(3SOCKET),
-\fBt_rcvudata\fR(3NSL), \fBt_sndudata\fR(3NSL), \fBprivileges\fR(5),
-\fBinet6\fR(7P), \fBip6\fR(7P), \fBrouting\fR(7P)
-.sp
-.LP
-Conta, A. and Deering, S., \fIRFC 2463, Internet Control Message Protocol
-(ICMPv6) for the Internet Protocol Version 6 (IPv6) Specification\fR, The
-Internet Society, December 1998.
-.SH DIAGNOSTICS
-.LP
-A socket operation may fail with one of the following errors returned:
-.sp
-.ne 2
-.na
-\fB\fBEISCONN\fR\fR
-.ad
-.RS 17n
-An attempt was made to establish a connection on a socket which already has
-one, or when trying to send a datagram with the destination address specified
-and the socket is already connected.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBENOTCONN\fR\fR
-.ad
-.RS 17n
-An attempt was made to send a datagram, but no destination address is
-specified, and the socket has not been connected.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBENOBUFS\fR\fR
-.ad
-.RS 17n
-The system ran out of memory for an internal data structure.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEADDRNOTAVAIL\fR\fR
-.ad
-.RS 17n
-An attempt was made to create a socket with a network address for which no
-network interface exists.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBENOMEM\fR\fR
-.ad
-.RS 17n
-The system was unable to allocate memory for an internal data structure.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBENOPROTOOPT\fR\fR
-.ad
-.RS 17n
-An attempt was made to set an \fBIPv4\fR socket option on an \fBIPv6\fR socket.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEINVAL\fR\fR
-.ad
-.RS 17n
-An attempt was made to set an invalid or malformed socket option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEAFNOSUPPORT\fR\fR
-.ad
-.RS 17n
-An attempt was made to bind or connect to an \fBIPv4\fR or mapped address, or
-to specify an \fBIPv4\fR or mapped address as the next hop.
-.RE
-
diff --git a/usr/src/man/man7p/if_tcp.7p b/usr/src/man/man7p/if_tcp.7p
deleted file mode 100644
index acba34c8ae..0000000000
--- a/usr/src/man/man7p/if_tcp.7p
+++ /dev/null
@@ -1,872 +0,0 @@
-'\" te
-.\" Copyright (C) 2009, Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 1989 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
-.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH IF_TCP 7P "Sep 02, 2015"
-.SH NAME
-if_tcp, if \- general properties of Internet Protocol network interfaces
-.SH DESCRIPTION
-.LP
-A network interface is a device for sending and receiving packets on a network.
-It is usually a hardware device, although it can be implemented in software.
-Network interfaces used by the Internet Protocol (IPv4 or IPv6) must be STREAMS
-devices conforming to the Data Link Provider Interface (\fBDLPI\fR). See
-\fBdlpi\fR(7P).
-.SH APPLICATION PROGRAMMING INTERFACE
-.LP
-An interface becomes available to \fBIP\fR when it is opened and the \fBIP\fR
-module is pushed onto the stream with the \fBI_PUSH\fR \fBioctl\fR(2) command.
-(See \fBstreamio\fR(7I)). The \fBSIOCSLIFNAME\fR \fBioctl\fR(2) is issued to
-specify the name of the interface and to indicate whether it is IPv4 or IPv6.
-This may be initiated by the kernel at boot time or by a user program after the
-system is running. Each interface must be assigned an \fBIP\fR address with the
-\fBSIOCSLIFADDR\fR \fBioctl()\fR before it can be used. On interfaces where the
-network-to-link layer address mapping is static, only the network number is
-taken from the \fBioctl()\fR request; the remainder is found in a hardware
-specific manner. On interfaces which provide dynamic network-to-link layer
-address mapping facilities (for example, Ethernets using \fBarp\fR(7P)), the
-entire address specified in the \fBioctl()\fR is used. A routing table entry
-for destinations on the network of the interface is installed automatically
-when an interface's address is set.
-.sp
-.LP
-You cannot create IPMP IP interfaces using the procedure described above.
-Instead, use \fBifconfig\fR(1M).
-.SH IOCTLS
-.LP
-The following \fBioctl()\fR calls may be used to manipulate \fBIP\fR network
-interfaces. Unless specified otherwise, the request takes an \fBlifreq\fR
-structure as its parameter. This structure has the form:
-.sp
-.in +2
-.nf
-struct lifreq {
-#define LIFNAMSIZ 32
- char lifr_name[LIFNAMSIZ]; /* if name, e.g. "le1" */
- union {
- int lifru_addrlen; /* for subnet/token etc */
- uint_t lifru_ppa; /* SIOCSLIFNAME */
- } lifr_lifru1;
- union {
- struct sockaddr_storage lifru_addr;
- struct sockaddr_storage lifru_dstaddr;
- struct sockaddr_storage lifru_broadaddr;
- struct sockaddr_storage lifru_token; /* With lifr_addrlen */
- struct sockaddr_storage lifru_subnet; /* With lifr_addrlen */
- int lifru_index; /* interface index */
- uint64_t lifru_flags; /* SIOC?LIFFLAGS */
- int lifru_metric;
- uint_t lifru_mtu;
- int lif_muxid[2]; /* mux id's for arp & ip */
- struct lif_nd_req lifru_nd_req; /* SIOCLIF*ND */
- struct lif_ifinfo_req lifru_ifinfo_req;
- zoneid_t lifru_zone; /* SIOC[GS]LIFZONE */
- } lifr_lifru;
-
-#define lifr_addrlen lifr_lifru1.lifru_addrlen
-#define lifr_ppa lifr_lifru1.lifru_ppa /* Driver's ppa */
-#define lifr_addr lifr_lifru.lifru_addr /* address */
-#define lifr_dstaddr lifr_lifru.lifru_dstaddr
-#define lifr_broadaddr lifr_lifru.lifru_broadaddr /* broadcast addr. */
-#define lifr_token lifr_lifru.lifru_token /* address token */
-#define lifr_subnet lifr_lifru.lifru_subnet /* subnet prefix */
-#define lifr_index lifr_lifru.lifru_index /* interface index */
-#define lifr_flags lifr_lifru.lifru_flags /* flags */
-#define lifr_metric lifr_lifru.lifru_metric /* metric */
-#define lifr_mtu lifr_lifru.lifru_mtu /* mtu */
-#define lifr_ip_muxid lifr_lifru.lif_muxid[0]
-#define lifr_arp_muxid lifr_lifru.lif_muxid[1]
-#define lifr_nd lifr_lifru.lifru_nd_req /* SIOCLIF*ND */
-#define lifr_ifinfo lifr_lifru.lifru_ifinfo_req /* SIOC[GS]LIFLNKINFO */
-#define lifr_zone lifr_lifru.lifru_zone /* SIOC[GS]LIFZONE */
-};
-.fi
-.in -2
-
-.sp
-.ne 2
-.na
-\fB\fBSIOCSLIFADDR\fR\fR
-.ad
-.RS 19n
-Set interface address.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSIOCGLIFADDR\fR\fR
-.ad
-.RS 19n
-Get interface address.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSIOCSLIFDSTADDR\fR\fR
-.ad
-.RS 19n
-Set point to point address for interface.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSIOCGLIFDSTADDR\fR\fR
-.ad
-.RS 19n
-Get point to point address for interface.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSIOCSLIFFLAGS\fR\fR
-.ad
-.RS 19n
-Set interface flags field. If the interface is marked down, any processes
-currently routing packets through the interface are notified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSIOCGLIFFLAGS\fR\fR
-.ad
-.RS 19n
-Get interface flags.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSIOCGLIFCONF\fR\fR
-.ad
-.RS 19n
-Get interface configuration list. This request takes a \fBlifconf\fR structure
-(see below) as a value-result parameter. The \fBlifc_family\fR field can be
-set to \fBAF_UNSPEC\fR to retrieve both \fBAF_INET\fR and \fBAF_INET6\fR
-interfaces. The \fBlifc_len\fR field should be set to the size of the buffer
-pointed to by \fBlifc_buf\fR.
-.sp
-The \fBlifc_flags\fR field should usually be set to zero, but callers that need
-low-level knowledge of the underlying IP interfaces that comprise an IPMP
-group can set it to \fBLIFC_UNDER_IPMP\fR to request that those interfaces be
-included in the result. Upon success, \fBlifc_len\fR contains the length, in
-bytes, of the array of \fBlifreq\fR structures pointed to by \fBlifc_req\fR.
-For each \fBlifreq\fR structure, the \fBlifr_name\fR and \fBlifr_addr\fR fields
-are valid.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSIOCGLIFNUM\fR\fR
-.ad
-.RS 19n
-Get number of interfaces. This request returns an integer which is the number
-of interface descriptions (\fBstruct lifreq\fR) returned by the
-\fBSIOCGLIFCONF\fR ioctl (in other words, indicates how large \fBlifc_len\fR
-must be).
-.sp
-This request takes a \fBstruct lifnum\fR (see below) as a value-result
-parameter. The \fBlifn_family\fR field can be set to \fBAF_UNSPEC\fR to count
-both \fBAF_INET\fR and \fBAF_INET6\fR interfaces. The \fBlifn_flags\fR field
-should usually be set to zero, but callers that need low-level knowledge of the
-underlying IP interfaces that comprise an IPMP group can set it to
-\fBLIFC_UNDER_IPMP\fR to request that those interfaces be included in the
-count.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSIOCSLIFMTU\fR\fR
-.ad
-.RS 19n
-Set the maximum transmission unit (MTU) size for interface. Place the request
-in the \fBlifru_mtu\fR field. The \fBMTU\fR can not exceed the physical
-\fBMTU\fR limitation (which is reported in the \fBDLPI\fR \fBDL_INFO_ACK\fR
-message).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSIOCGLIFMTU\fR\fR
-.ad
-.RS 19n
-Get the maximum transmission unit size for interface.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSIOCSLIFMETRIC\fR\fR
-.ad
-.RS 19n
-Set the metric associated with the interface. The metric is used by routing
-daemons such as \fBin.routed\fR(1M).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSIOCGLIFMETRIC\fR\fR
-.ad
-.RS 19n
-Get the metric associated with the interface.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSIOCGLIFMUXID\fR\fR
-.ad
-.RS 19n
-Get the \fBip\fR and \fBarp\fR \fBmuxid\fR associated with the interface.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSIOCSLIFMUXID\fR\fR
-.ad
-.RS 19n
-Set the \fBip\fR and \fBarp\fR \fBmuxid\fR associated with the interface.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSIOCGLIFINDEX\fR\fR
-.ad
-.RS 19n
-Get the interface index associated with the interface.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSIOCSLIFINDEX\fR\fR
-.ad
-.RS 19n
-Set the interface index associated with the interface.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSIOCGLIFZONE\fR\fR
-.ad
-.RS 19n
-Get the zone associated with the interface.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSIOCSLIFZONE\fR\fR
-.ad
-.RS 19n
-Set the zone associated with the interface. Only applies for zones that use the
-shared-IP instance.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSIOCLIFADDIF\fR\fR
-.ad
-.RS 19n
-Add a new logical interface on a physical interface using an unused logical
-interface number.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSIOCLIFREMOVEIF\fR\fR
-.ad
-.RS 19n
-Remove a logical interface by specifying its \fBIP\fR address or logical
-interface name.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSIOCSLIFTOKEN\fR\fR
-.ad
-.RS 19n
-Set the address token used to form IPv6 link-local addresses and for stateless
-address autoconfiguration.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSIOCGLIFTOKEN\fR\fR
-.ad
-.RS 19n
-Get the address token used to form IPv6 link-local addresses and for stateless
-address autoconfiguration.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSIOCSLIFSUBNET\fR\fR
-.ad
-.RS 19n
-Set the subnet prefix associated with the interface.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSIOCGLIFSUBNET\fR\fR
-.ad
-.RS 19n
-Get the subnet prefix associated with the interface.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSIOCSLIFLNKINFO\fR\fR
-.ad
-.RS 19n
-Set link specific parameters for the interface.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSIOCGLIFLNKINFO\fR\fR
-.ad
-.RS 19n
-Get link specific parameters for the interface.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSIOCLIFDELND\fR\fR
-.ad
-.RS 19n
-Delete a neighbor cache entry for IPv6.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSIOCLIFGETND\fR\fR
-.ad
-.RS 19n
-Get a neighbor cache entry for IPv6.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSIOCLIFSETND\fR\fR
-.ad
-.RS 19n
-Set a neighbor cache entry for IPv6.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSIOCSLIFUSESRC\fR\fR
-.ad
-.RS 19n
-Set the interface from which to choose a source address. The \fBlifr_index\fR
-field has the interface index corresponding to the interface whose address is
-to be used as the source address for packets going out on the interface whose
-name is provided by \fBlifr_name\fR. If the \fBlifr_index\fR field is set to
-zero, the previous setting is cleared. See \fBifconfig\fR(1M) for examples of
-the \fBusesrc\fR option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSIOCGLIFUSESRC\fR\fR
-.ad
-.RS 19n
-Get the interface index of the interface whose address is used as the source
-address for packets going out on the interface provided by \fBlifr_name\fR
-field. The value is retrieved in the \fBlifr_index\fR field. See
-\fBifconfig\fR(1M) for examples of the \fBusesrc\fR option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSIOCGLIFSRCOF\fR\fR
-.ad
-.RS 19n
-Get the interface configuration list for interfaces that use an address hosted
-on the interface provided by the \fBlifs_ifindex\fR field in the \fBlifsrcof\fR
-struct (see below), as a source address. The application sets \fBlifs_maxlen\fR
-to the size (in bytes) of the buffer it has allocated for the data. On return,
-the kernel sets \fBlifs_len\fR to the actual size required. Note, the
-application could set \fBlifs_maxlen\fR to zero to query the kernel of the
-required buffer size instead of estimating a buffer size. The application tests
-\fBlifs_len\fR <= \fBlifs_maxlen\fR -- if that's true, the buffer was big
-enough and the application has an accurate list. If it is false, it needs to
-allocate a bigger buffer and try again, and \fBlifs_len\fR provides a hint of
-how big to make the next trial. See \fBifconfig\fR(1M) for examples of the
-\fBusesrc\fR option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSIOCTONLINK\fR\fR
-.ad
-.RS 19n
-Test if the address is directly reachable, for example, that it can be reached
-without going through a router. This request takes an \fBsioc_addrreq\fR
-structure (see below) as a value-result parameter. The \fBsa_addr\fR field
-should be set to the address to test. The \fBsa_res\fR field will contain a
-non-zero value if the address is onlink.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSIOCTMYADDR\fR\fR
-.ad
-.RS 19n
-Test if the address is assigned to this node. This request takes an
-\fBsioc_addrreq\fR structure (see below) as a value-result parameter. The
-\fBsa_addr\fR field should be set to the address to test. The \fBsa_res\fR
-field will contain a non-zero value if the address is assigned to this node.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSIOCTMYSITE\fR\fR
-.ad
-.RS 19n
-Test if the address is part of the same site as this node. This request takes
-an \fBsioc_addrreq\fR structure (see below) as a value-result parameter. The
-\fBsa_addr\fR field should be set to the address to test. The \fBsa_res\fR
-field will contain a non-zero value if the address is in the same site.
-.RE
-
-.sp
-.LP
-The structure used by \fBSIOCGLIFCONF\fR has the form:
-.sp
-.in +2
-.nf
-struct lifconf {
- sa_family_t lifc_family;
- int lifc_flags; /* request specific
- /* interfaces */
- int lifc_len; /* size of assoc. buffer */
- union {
- caddr_t lifcu_buf;
- struct lifreq *lifcu_req;
- } lifc_lifcu;
-
-#define lifc_buf lifc_lifcu.lifcu_buf /* buffer address */
-#define lifc_req lifc_lifcu.lifcu_req /* array of structs returned */
-};
-.fi
-.in -2
-
-.sp
-.LP
-The structure used by \fBSIOCGLIFNUM\fR has the form:
-.sp
-.in +2
-.nf
-struct lifnum {
- sa_family_t lifn_family;
- int lifn_flags; /* req. specf. interfaces */
- int lifn_count; /* Result */
-};
-.fi
-.in -2
-
-.sp
-.LP
-The structure used by \fBSIOCTONLINK\fR, \fBSIOCTMYADDR\fR and
-\fBSIOCTMYSITE\fR has the form:
-.sp
-.in +2
-.nf
-struct sioc_addrreq {
- struct sockaddr_storage sa_addr; /* Address to test */
- int sa_res; /* Result - 0/1 */
-};
-.fi
-.in -2
-
-.sp
-.LP
-The structure used by \fBSIOCGLIFSRCOF\fR has the form:
-.sp
-.in +2
-.nf
- struct lifsrcof {
- uint_t lifs_ifindex; /* addr on this interface */
- /* used as the src addr */
- size_t lifs_maxlen; /* size of buffer: input */
- size_t lifs_len; /* size of buffer: output */
- union {
- caddr_t lifsu_buf;
- struct lifreq *lifsu_req;
- } lifs_lifsu;
-#define lifs_buf lifs_lifsu.lifsu_buf /* buffer addr. */
-#define lifs_req lifs_lifsu.lifsu_req /* array returned */
-};
-.fi
-.in -2
-
-.sp
-.LP
-The following \fBioctl()\fR calls are maintained for compatibility but only
-apply to IPv4 network interfaces, since the data structures are too small to
-hold an IPv6 address. Unless specified otherwise, the request takes an
-\fBifreq\fR structure as its parameter. This structure has the form:
-.sp
-.in +2
-.nf
-struct ifreq {
-#define IFNAMSIZ 16
- char ifr_name[IFNAMSIZ]; /* interface name - e.g. "hme0" */
- union {
- struct sockaddr ifru_addr;
- struct sockaddr ifru_dstaddr;
- struct sockaddr ifru_broadaddr;
- short ifru_flags;
- int ifru_metric;
- int if_muxid[2]; /* mux id's for arp and ip */
- int ifru_index; /* interface index */
- } ifr_ifru;
-
-#define ifr_addr ifr_ifru.ifru_addr /* address */
-#define ifr_dstaddr ifr_ifru.ifru_dstaddr /* other end of p-to-p link */
-#define ifr_broadaddr ifr_ifru.ifru_broadaddr /* broadcast address */
-#define ifr_flags ifr_ifru.ifru_flags /* flags */
-#define ifr_index ifr_ifru.ifru_index /* interface index */
-#define ifr_metric ifr_ifru.ifru_metric /* metric */
-};
-.fi
-.in -2
-
-.sp
-.ne 2
-.na
-\fB\fBSIOCSIFADDR\fR\fR
-.ad
-.RS 18n
-Set interface address.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSIOCGIFADDR\fR\fR
-.ad
-.RS 18n
-Get interface address.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSIOCSIFDSTADDR\fR\fR
-.ad
-.RS 18n
-Set point to point address for interface.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSIOCGIFDSTADDR\fR\fR
-.ad
-.RS 18n
-Get point to point address for interface.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSIOCSIFFLAGS\fR\fR
-.ad
-.RS 18n
-Set interface flags field. If the interface is marked down, any processes
-currently routing packets through the interface are notified.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSIOCGIFFLAGS\fR\fR
-.ad
-.RS 18n
-Get interface flags.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSIOCGIFCONF\fR\fR
-.ad
-.RS 18n
-Get interface configuration list. This request takes an \fBifconf\fR structure
-(see below) as a value-result parameter. The \fBifc_len\fR field should be set
-to the size of the buffer pointed to by \fBifc_buf\fR. Upon success,
-\fBifc_len\fR will contain the length, in bytes, of the array of \fBifreq\fR
-structures pointed to by \fBifc_req\fR. For each \fBifreq\fR structure, the
-\fBifr_name\fR and \fBifr_addr\fR fields are valid. Though IPMP IP interfaces
-are included in the array, underlying IP interfaces that comprise those IPMP
-groups are not.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSIOCGIFNUM\fR\fR
-.ad
-.RS 18n
-Get number of interfaces. This request returns an integer which is the number
-of interface descriptions (\fBstruct ifreq\fR) returned by the
-\fBSIOCGIFCONF\fR ioctl (in other words, indicates how large \fBifc_len\fR must
-be). Though IPMP IP interfaces are included in the array, underlying IP
-interfaces that comprise those IPMP groups are not.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSIOCSIFMTU\fR\fR
-.ad
-.RS 18n
-Set the maximum transmission unit (\fBMTU\fR) size for interface. Place the
-request in the \fBifr_metric\fR field. The \fBMTU\fR has to be smaller than
-physical \fBMTU\fR limitation (which is reported in the \fBDLPI\fR
-\fBDL_INFO_ACK\fR message).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSIOCGIFMTU\fR\fR
-.ad
-.RS 18n
-Get the maximum transmission unit size for interface. Upon success, the request
-is placed in the \fBifr_metric\fR field.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSIOCSIFMETRIC\fR\fR
-.ad
-.RS 18n
-Set the metric associated with the interface. The metric is used by routine
-daemons such as \fBin.routed\fR(1M).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSIOCGIFMETRIC\fR\fR
-.ad
-.RS 18n
-Get the metric associated with the interface.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSIOCGIFMUXID\fR\fR
-.ad
-.RS 18n
-Get the \fBip\fR and \fBarp\fR \fBmuxid\fR associated with the interface.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSIOCSIFMUXID\fR\fR
-.ad
-.RS 18n
-Set the \fBip\fR and \fBarp\fR \fBmuxid\fR associated with the interface.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSIOCGIFINDEX\fR\fR
-.ad
-.RS 18n
-Get the interface index associated with the interface.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSIOCSIFINDEX\fR\fR
-.ad
-.RS 18n
-Set the interface index associated with the interface.
-.RE
-
-.sp
-.LP
-The \fBifconf\fR structure has the form:
-.sp
-.in +2
-.nf
-struct ifconf {
- int ifc_len; /* size of assoc. buffer */
- union {
- caddr_t ifcu_buf;
- struct ifreq *ifcu_req;
- } ifc_ifcu;
-
-#define ifc_buf ifc_ifcu.ifcu_buf /* buffer address */
-#define ifc_req ifc_ifcu.ifcu_req /* array of structs returned */
-};
-.fi
-.in -2
-
-.SS "IFF_ Flags"
-.LP
-You can use the \fBifconfig\fR(1M) command to display the \fBIFF\fR_ flags
-listed below (with the leading \fBIFF\fR_ prefix removed). See the
-\fBifconfig\fR(1M) manpage for a definition of each flag.
-.sp
-.in +2
-.nf
-#define IFF_UP 0x0000000001 /* Address is up */
-#define IFF_BROADCAST 0x0000000002 /* Broadcast address valid */
-#define IFF_DEBUG 0x0000000004 /* Turn on debugging */
-#define IFF_LOOPBACK 0x0000000008 /* Loopback net */
-
-#define IFF_POINTOPOINT 0x0000000010 /* Interface is p-to-p */
-#define IFF_NOTRAILERS 0x0000000020 /* Avoid use of trailers */
-#define IFF_RUNNING 0x0000000040 /* Resources allocated */
-#define IFF_NOARP 0x0000000080 /* No address res. protocol */
-
-#define IFF_PROMISC 0x0000000100 /* Receive all packets */
-#define IFF_ALLMULTI 0x0000000200 /* Receive all multicast pkts */
-#define IFF_INTELLIGENT 0x0000000400 /* Protocol code on board */
-#define IFF_MULTICAST 0x0000000800 /* Supports multicast */
-
-#define IFF_MULTI_BCAST 0x0000001000 /* Multicast using broadcst. add. */
-#define IFF_UNNUMBERED 0x0000002000 /* Non-unique address */
-#define IFF_DHCPRUNNING 0x0000004000 /* DHCP controls interface */
-#define IFF_PRIVATE 0x0000008000 /* Do not advertise */
-
-#define IFF_NOXMIT 0x0000010000 /* Do not transmit pkts */
-#define IFF_NOLOCAL 0x0000020000 /* No address - just on-link subnet */
-#define IFF_DEPRECATED 0x0000040000 /* Address is deprecated */
-#define IFF_ADDRCONF 0x0000080000 /* Addr. from stateless addrconf */
-
-#define IFF_ROUTER 0x0000100000 /* Router on interface */
-#define IFF_NONUD 0x0000200000 /* No NUD on interface */
-#define IFF_ANYCAST 0x0000400000 /* Anycast address */
-#define IFF_NORTEXCH 0x0000800000 /* Don't xchange rout. info */
-
-#define IFF_IPV4 0x0001000000 /* IPv4 interface */
-#define IFF_IPV6 0x0002000000 /* IPv6 interface */
-#define IFF_NOFAILOVER 0x0008000000 /* in.mpathd test address */
-#define IFF_FAILED 0x0010000000 /* Interface has failed */
-
-#define IFF_STANDBY 0x0020000000 /* Interface is a hot-spare */
-#define IFF_INACTIVE 0x0040000000 /* Functioning but not used */
-#define IFF_OFFLINE 0x0080000000 /* Interface is offline */
-#define IFF_XRESOLV 0x0100000000 /* IPv6 external resolver */
-
-#define IFF_COS_ENABLED 0x0200000000 /* If CoS marking is supported */
-#define IFF_PREFERRED 0x0400000000 /* Prefer as source address */
-#define IFF_TEMPORARY 0x0800000000 /* RFC3041 */
-#define IFF_FIXEDMTU 0x1000000000 /* MTU set with SIOCSLIFMTU */
-
-#define IFF_VIRTUAL 0x2000000000 /* Cannot send/receive pkts */
-#define IFF_DUPLICATE 0x4000000000 /* Local address in use */
-#define IFF_IPMP 0x8000000000 /* IPMP IP interface */
-.fi
-.in -2
-
-.SH ERRORS
-.ne 2
-.na
-\fB\fBEPERM\fR\fR
-.ad
-.RS 12n
-Calling process has insufficient privileges.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBENXIO\fR\fR
-.ad
-.RS 12n
-The \fBlifr_name\fR member of the \fBlifreq\fR structure contains an invalid
-value.
-.sp
-For \fBSIOCGLIFSRCOF\fR, the \fBlifs_ifindex\fR member of the \fBlifsrcof\fR
-structure contains an invalid value.
-.sp
-For \fBSIOCSLIFUSESRC\fR, this error is returned if the \fBlifr_index\fR is set
-to an invalid value.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEBADADDR\fR\fR
-.ad
-.RS 12n
-Wrong address family or malformed address.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEINVAL\fR\fR
-.ad
-.RS 12n
-For \fBSIOCSLIFMTU\fR, this error is returned when the requested \fBMTU\fR size
-is invalid. This error indicates the \fBMTU\fR size is greater than the
-\fBMTU\fR size supported by the \fBDLPI\fR provider or less than \fB68\fR (for
-IPv4) or less than \fB1280\fR (for IPv6).
-.sp
-For \fBSIOCSLIFUSESRC\fR, this error is returned if either the \fBlifr_index\fR
-or \fBlifr_name\fR identify interfaces that are already part of an existing
-IPMP group.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEEXIST\fR\fR
-.ad
-.RS 12n
-For \fBSIOCLIFADDIF\fR, this error is returned if the \fBlifr_name\fR member in
-the \fBlifreq\fR structure corresponds to an interface that already has the PPA
-specified by \fBlifr_ppa\fR plumbed.
-.RE
-
-.SH SEE ALSO
-.LP
-\fBifconfig\fR(1M), \fBin.routed\fR(1M), \fBioctl\fR(2),
-\fBsockaddr\fR(3SOCKET), \fBstreamio\fR(7I), \fBarp\fR(7P), \fBdlpi\fR(7P),
-\fBip\fR(7P), \fBip6\fR(7P), \fBndp\fR(7P)
diff --git a/usr/src/man/man7p/inet.7p b/usr/src/man/man7p/inet.7p
deleted file mode 100644
index 541892768b..0000000000
--- a/usr/src/man/man7p/inet.7p
+++ /dev/null
@@ -1,170 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T
-.\" Copyright (C) 2000, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH INET 7P "Aug 3, 2000"
-.SH NAME
-inet \- Internet protocol family
-.SH SYNOPSIS
-.LP
-.nf
-\fB#include <sys/types.h>\fR
-.fi
-
-.LP
-.nf
-\fB#include <netinet/in.h>\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-The Internet protocol family implements a collection of protocols which are
-centered around the Internet Protocol ("\fBIP\fR") and which share a common
-address format. The Internet family protocols can be accessed using the socket
-interface, where they support the \fBSOCK_STREAM\fR, \fBSOCK_DGRAM\fR, and
-\fBSOCK_RAW\fR socket types, or the Transport Level Interface (TLI), where they
-support the connectionless (\fBT_CLTS\fR) and connection oriented
-(\fBT_COTS_ORD\fR) service types.
-.SH PROTOCOLS
-.LP
-The Internet protocol family is comprised of the Internet Protocol
-("\fBIP\fR"), the Address Resolution Protocol ("\fBARP\fR"), the Internet
-Control Message Protocol ("\fBICMP\fR"), the Transmission Control Protocol
-("\fBTCP\fR"), and the User Datagram Protocol ("\fBUDP\fR").
-.sp
-.LP
-\fBTCP\fR supports the socket interface's \fBSOCK_STREAM\fR abstraction and
-\fBTLI\fR's \fBT_COTS_ORD\fR service type. \fBUDP\fR supports the
-\fBSOCK_DGRAM\fR socket abstraction and the \fBTLI\fR \fBT_CLTS\fR service
-type. See \fBtcp\fR(7P) and \fBudp\fR(7P). A direct interface to \fBIP\fR is
-available using both \fBTLI\fR and the socket interface (see \fBip\fR(7P)).
-\fBICMP\fR is used by the kernel to handle and report errors in protocol
-processing. It is also accessible to user programs (see \fBicmp\fR(7P)).
-\fBARP\fR is used to translate 32-bit \fBIP\fR addresses into 48-bit Ethernet
-addresses. See \fBarp\fR(7P).
-.sp
-.LP
-The 32-bit \fBIP\fR address is divided into network number and host number
-parts. It is frequency-encoded. The most-significant bit is zero in Class A
-addresses, in which the high-order 8 bits represent the network number. Class B
-addresses have their high order two bits set to 10 and use the high-order 16
-bits as the network number field. Class C addresses have a 24-bit network
-number part of which the high order three bits are 110. Sites with a cluster of
-\fBIP\fR networks may chose to use a single network number for the cluster;
-this is done by using subnet addressing. The host number portion of the address
-is further subdivided into subnet number and host number parts. Within a
-subnet, each subnet appears to be an individual network. Externally, the entire
-cluster appears to be a single, uniform network requiring only a single routing
-entry. Subnet addressing is enabled and examined by the following
-\fBioctl\fR(2) commands. They have the same form as the \fBSIOCSIFADDR\fR
-command.
-.sp
-.ne 2
-.na
-\fB\fBSIOCSIFNETMASK\fR\fR
-.ad
-.RS 18n
-Set interface network mask. The network mask defines the network part of the
-address; if it contains more of the address than the address type would
-indicate, then subnets are in use.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSIOCGIFNETMASK\fR\fR
-.ad
-.RS 18n
-Get interface network mask.
-.RE
-
-.SH ADDRESSING
-.LP
-\fBIP\fR addresses are four byte quantities, stored in network byte order.
-\fBIP\fR addresses should be manipulated using the byte order conversion
-routines. See \fBbyteorder\fR(3C).
-.sp
-.LP
-Addresses in the Internet protocol family use the \fBsockaddr_in\fR structure,
-which has that following members:
-.sp
-.in +2
-.nf
-short sin_family;
-ushort_t sin_port;
-struct in_addr sin_addr;
-char sin_zero[8];
-.fi
-.in -2
-
-.sp
-.LP
-Library routines are provided to manipulate structures of this form; See
-\fBinet\fR(3SOCKET).
-.sp
-.LP
-The \fBsin_addr\fR field of the \fBsockaddr_in\fR structure specifies a local
-or remote \fBIP\fR address. Each network interface has its own unique \fBIP\fR
-address. The special value \fBINADDR_ANY\fR may be used in this field to
-effect "wildcard" matching. Given in a \fBbind\fR(3SOCKET) call, this value
-leaves the local \fBIP\fR address of the socket unspecified, so that the socket
-will receive connections or messages directed at any of the valid \fBIP\fR
-addresses of the system. This can prove useful when a process neither knows nor
-cares what the local \fBIP\fR address is or when a process wishes to receive
-requests using all of its network interfaces. The \fBsockaddr_in\fR structure
-given in the \fBbind\fR(3SOCKET) call must specify an \fBin_addr\fR value of
-either \fBINADDR_ANY\fR or one of the system's valid \fBIP\fR addresses.
-Requests to bind any other address will elicit the error \fBEADDRNOTAVAIL\fR.
-When a \fBconnect\fR(3SOCKET) call is made for a socket that has a wildcard
-local address, the system sets the \fBsin_addr\fR field of the socket to the
-\fBIP\fR address of the network interface that the packets for that connection
-are routed through.
-.sp
-.LP
-The \fBsin_port\fR field of the \fBsockaddr_in\fR structure specifies a port
-number used by \fBTCP\fR or \fBUDP.\fR The local port address specified in a
-\fBbind\fR(3SOCKET) call is restricted to be greater than \fBIPPORT_RESERVED\fR
-(defined in <\fB<netinet/in.h>\fR>) unless the creating process is running as
-the superuser, providing a space of protected port numbers. In addition, the
-local port address must not be in use by any socket of same address family and
-type. Requests to bind sockets to port numbers being used by other sockets
-return the error \fBEADDRINUSE\fR. If the local port address is specified as 0,
-then the system picks a unique port address greater than \fBIPPORT_RESERVED\fR.
-A unique local port address is also picked when a socket which is not bound is
-used in a \fBconnect\fR(3SOCKET) or \fBsendto\fR (see \fBsend\fR(3SOCKET))
-call. This allows programs which do not care which local port number is used to
-set up \fBTCP\fR connections by simply calling \fBsocket\fR(3SOCKET) and then
-\fBconnect\fR(3SOCKET), and to send \fBUDP\fR datagrams with a
-\fBsocket\fR(3SOCKET) call followed by a \fBsendto()\fR call.
-.sp
-.LP
-Although this implementation restricts sockets to unique local port numbers,
-\fBTCP\fR allows multiple simultaneous connections involving the same local
-port number so long as the remote \fBIP\fR addresses or port numbers are
-different for each connection. Programs may explicitly override the socket
-restriction by setting the \fBSO_REUSEADDR\fR socket option with
-\fBsetsockopt\fR (see \fBgetsockopt\fR(3SOCKET)).
-.sp
-.LP
-\fBTLI\fR applies somewhat different semantics to the binding of local port
-numbers. These semantics apply when Internet family protocols are used using
-the \fBTLI\fR.
-.SH SEE ALSO
-.LP
-\fBioctl\fR(2), \fBbind\fR(3SOCKET), \fBbyteorder\fR(3C),
-\fBconnect\fR(3SOCKET), \fBgethostbyname\fR(3NSL), \fBgetnetbyname\fR(3SOCKET),
-\fBgetprotobyname\fR(3SOCKET), \fBgetservbyname\fR(3SOCKET),
-\fBgetsockopt\fR(3SOCKET), \fBsend\fR(3SOCKET), \fBsockaddr\fR(3SOCKET),
-\fBsocket\fR(3SOCKET), \fBarp\fR(7P), \fBicmp\fR(7P), \fBip\fR(7P),
-\fBtcp\fR(7P), \fBudp\fR(7P)
-.sp
-.LP
-Network Information Center, \fIDDN Protocol Handbook\fR (3 vols.), Network
-Information Center, \fBSRI\fR International, Menlo Park, Calif., 1985.
-.SH NOTES
-.LP
-The Internet protocol support is subject to change as the Internet protocols
-develop. Users should not depend on details of the current implementation, but
-rather the services exported.
diff --git a/usr/src/man/man7p/inet6.7p b/usr/src/man/man7p/inet6.7p
deleted file mode 100644
index 9acffed9d7..0000000000
--- a/usr/src/man/man7p/inet6.7p
+++ /dev/null
@@ -1,404 +0,0 @@
-'\" te
-.\" Copyright (C) 2002, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH INET6 7P "Oct 3, 2002"
-.SH NAME
-inet6 \- Internet protocol family for Internet Protocol version 6
-.SH SYNOPSIS
-.LP
-.nf
-\fB#include <sys/types.h>
-#include <netinet/in.h>\fR
-.fi
-
-.SH DESCRIPTION
-.LP
-The \fBinet6\fR protocol family implements a collection of protocols that are
-centered around the Internet Protocol version 6 (\fBIPv6\fR) and share a common
-address format. The \fBinet6\fR protocol family can be accessed using the
-socket interface, where it supports the \fBSOCK_STREAM\fR, \fBSOCK_DGRAM\fR,
-and \fBSOCK_RAW\fR socket types, or the Transport Level Interface (\fBTLI\fR),
-where it supports the connectionless (\fBT_CLTS\fR) and connection oriented
-(\fBT_COTS_ORD\fR) service types.
-.SH PROTOCOLS
-.LP
-The Internet protocol family for \fBIPv6\fR included the Internet Protocol
-Version 6 (\fBIPv6\fR), the Neighbor Discovery Protocol (\fBNDP\fR), the
-Internet Control Message Protocol (\fBICMPv6\fR), the Transmission Control
-Protocol (\fBTCP\fR), and the User Datagram Protocol (\fBUDP\fR).
-.sp
-.LP
-\fBTCP\fR supports the socket interface's \fBSOCK_STREAM\fR abstraction and
-\fBTLI\fR's \fBT_COTS_ORD\fR service type. \fBUDP\fR supports the
-\fBSOCK_DGRAM\fR socket abstraction and the \fBTLI\fR \fBT_CLTS\fR service
-type. See \fBtcp\fR(7P) and \fBudp\fR(7P). A direct interface to \fBIPv6\fR is
-available using the socket interface. See \fBip6\fR(7P). \fBICMPv6\fR is used
-by the kernel to handle and report errors in protocol processing. It is also
-accessible to user programs. See \fBicmp6\fR(7P). \fBNDP\fR is used to
-translate 128-bit \fBIPv6\fR addresses into 48-bit Ethernet addresses.
-.sp
-.LP
-\fBIPv6\fR addresses come in three types: unicast, anycast, and multicast. A
-unicast address is an identifier for a single network interface. An anycast
-address is an identifier for a set of interfaces; a packet sent to an anycast
-address is delivered to the "nearest" interface identified by that address,
-pursuant to the routing protocol's measure of distance. A multicast address is
-an identifier for a set of interfaces; a packet sent to a multicast address is
-delivered to all interfaces identified by that address. There are no broadcast
-addresses as such in \fBIPv6\fR; their functionality is superseded by multicast
-addresses.
-.sp
-.LP
-For \fBIPv6\fR addresses, there are three scopes within which unicast addresses
-are guaranteed to be unique. The scope is indicated by the address prefix. The
-three varieties are link-local (the address is unique on that physical link),
-site-local (the address is unique within that site), and global (the address is
-globally unique).
-.sp
-.LP
-The three highest order bits for global unicast addresses are set to
-\fB001\fR. The ten highest order bits for site-local addresses are set to
-\fB1111 1110 11\fR. The ten highest order bits for link-local addresses are set
-to \fB1111 1110 11\fR. For multicast addresses, the eight highest order bits
-are set to \fB1111 1111\fR. Anycast addresses have the same format as unicast
-addresses.
-.sp
-.LP
-\fBIPv6\fR addresses do not follow the concept of "address class" seen in
-\fBIP\fR.
-.sp
-.LP
-A global unicast address is divided into the following segments:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The first three bits are the Format Prefix identifying a unicast address.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The next 13 bits are the Top-Level Aggregation (\fBTLA\fR) identifier. For
-example, the identifier could specify the \fBISP\fR.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The next eight bits are reserved for future use.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The next 24 bits are the Next-Level Aggregation (\fBNLA\fR) identifier.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The next 16 bits are the Site-Level Aggregation (\fBSLA\fR) identifier.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The last 64 bits are the interface \fBID\fR. This will most often be the
-hardware address of the link in \fBIEEE EUI-64\fR format.
-.RE
-.sp
-.LP
-Link-local unicast addresses are divided in this manner:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The first ten bits are the Format Prefix identifying a link-local address.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The next 54 bits are zero.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The last 64 bits are the interface \fBID\fR. This will most often be the
-hardware address of the link in \fBIEEE EUI-64\fR format.
-.RE
-.sp
-.LP
-Site-local unicast addresses are divided in this manner:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The first ten bits are the Format Prefix identifying a site-local address.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The next 38 bits are zero.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The next 16 bits are the subnet \fBID\fR.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-The last 64 bits are the interface \fBID\fR. This will most often be the
-hardware address of the link in \fBIEEE EUI-64\fR format.
-.RE
-.SH ADDRESSING
-.LP
-\fBIPv6\fR addresses are sixteen byte quantities, stored in network byte order.
-The socket \fBAPI\fR uses the \fBsockaddr_in6\fR structure when passing
-\fBIPv6\fR addresses between an application and the kernel. The
-\fBsockaddr_in6\fR structure has the following members:
-.sp
-.in +2
-.nf
-sa_familty_t sin6_family;
-in_port_t sin6_port;
-uint32_t sin6_flowinfo;
-struct in6_addr sin6_addr;
-uint32_t sin6_scope_id;
-uint32_t __sin6_src_id;
-.fi
-.in -2
-
-.sp
-.LP
-Library routines are provided to manipulate structures of this form. See
-\fBinet\fR(3SOCKET).
-.sp
-.LP
-The \fBsin6_addr\fR field of the \fBsockaddr_in6\fR structure specifies a local
-or remote \fBIPv6\fR address. Each network interface has one or more \fBIPv6\fR
-addresses configured, that is, a link-local address, a site-local address, and
-one or more global unicast \fBIPv6\fR addresses. The special value of all zeros
-may be used on this field to test for "wildcard" matching. Given in a
-\fBbind\fR(3SOCKET) call, this value leaves the local \fBIPv6\fR address of the
-socket unspecified, so that the socket will receive connections or messages
-directed at any of the valid \fBIPv6\fR addresses of the system. This can prove
-useful when a process neither knows nor cares what the local \fBIPv6\fR address
-is, or when a process wishes to receive requests using all of its network
-interfaces.
-.sp
-.LP
-The \fBsockaddr_in6\fR structure given in the \fBbind()\fR call must specify
-an \fIin6_addr\fR value of either all zeros or one of the system's valid
-\fBIPv6\fR addresses. Requests to bind any other address will elicit the error
-\fBEADDRNOTAVAI\fR. When a \fBconnect\fR(3SOCKET) call is made for a socket
-that has a wildcard local address, the system sets the \fBsin6_addr\fR field of
-the socket to the \fBIPv6\fR address of the network interface through which the
-packets for that connection are routed.
-.sp
-.LP
-The \fBsin6_port\fR field of the \fBsockaddr_in6\fR structure specifies a port
-number used by \fBTCP\fR or \fBUDP\fR. The local port address specified in a
-\fBbind()\fR call is restricted to be greater than \fBIPPORT_RESERVED\fR
-(defined in <\fBnetinet/in.h\fR>) unless the creating process is running as the
-super-user, providing a space of protected port numbers. In addition, the
-local port address cannot be in use by any socket of the same address family
-and type. Requests to bind sockets to port numbers being used by other sockets
-return the error \fBEADDRINUSE\fR. If the local port address is specified as
-\fB0\fR, the system picks a unique port address greater than
-\fBIPPORT_RESERVED\fR. A unique local port address is also selected when a
-socket which is not bound is used in a \fBconnect\fR(3SOCKET) or \fBsendto()\fR
-call. See \fBsend\fR(3SOCKET). This allows programs that do not care which
-local port number is used to set up \fBTCP\fR connections by simply calling
-\fBsocket\fR(3SOCKET) and then \fBconnect\fR(3SOCKET), and then sending
-\fBUDP\fR datagrams with a \fBsocket()\fR call followed by a \fBsendto()\fR
-call.
-.sp
-.LP
-Although this implementation restricts sockets to unique local port numbers,
-\fBTCP\fR allows multiple simultaneous connections involving the same local
-port number so long as the remote \fBIPv6\fR addresses or port numbers are
-different for each connection. Programs may explicitly override the socket
-restriction by setting the \fBSO_REUSEADDR\fR socket option with
-\fBsetsockopt()\fR. See \fBgetsockopt\fR(3SOCKET).
-.sp
-.LP
-In addition, the same port may be bound by two separate sockets if one is an
-\fBIP\fR socket and the other an \fBIPv6\fR socket.
-.sp
-.LP
-\fBTLI\fR applies somewhat different semantics to the binding of local port
-numbers. These semantics apply when Internet family protocols are used using
-the \fBTLI\fR.
-.SH SOURCE ADDRESS SELECTION
-.LP
-IPv6 source address selection is done on a per destination basis, and utilizes
-a list of rules from which the best source address is selected from candidate
-addresses. The candidate set comprises a set of local addresses assigned on the
-system which are up and not anycast. If just one candidate exists in the
-candidate set, it is selected.
-.sp
-.LP
-Conceptually, each selection rule prefers one address over another, or
-determines their equivalence. If a rule produces a tie, a subsequent rule is
-used to break the tie.
-.sp
-.LP
-The sense of some rules may be reversed on a per-socket basis using the
-IPV6_SRC_PREFERENCES socket option (see \fBip6\fR(7P)). The flag values for
-this option are defined in <\fBnetinet/in.h\fR> and are referenced in the
-description of the appropriate rules below.
-.sp
-.LP
-As the selection rules indicate, the candidate addresses are SA and SB and the
-destination is D.
-.sp
-.ne 2
-.na
-\fBPrefer the same address\fR
-.ad
-.RS 30n
-If SA == D, prefer SA. If SB == D, prefer SB.
-.RE
-
-.sp
-.ne 2
-.na
-\fBPrefer appropriate scope\fR
-.ad
-.RS 30n
-Here, Scope(X) is the scope of X according to the IPv6 Addressing Architecture.
-.sp
-If Scope(SA) < Scope(SB): If Scope(SA) < Scope(D), then prefer SB and otherwise
-prefer SA.
-.sp
-If Scope(SB) < Scope(SA): If Scope(SB) < Scope(D), then prefer SA and otherwise
-prefer SB.
-.RE
-
-.sp
-.ne 2
-.na
-\fBAvoid deprecated addresses\fR
-.ad
-.RS 30n
-If one of the addresses is deprecated (IFF_DEPRECATED) and the other is not,
-prefer the one that isn't deprecated.
-.RE
-
-.sp
-.ne 2
-.na
-\fBPrefer preferred addresses\fR
-.ad
-.RS 30n
-If one of the addresses is preferred (IFF_PREFERRED) and the other is not,
-prefer the one that is preferred.
-.RE
-
-.sp
-.ne 2
-.na
-\fBPrefer outgoing interface\fR
-.ad
-.RS 30n
-If one of the addresses is assigned to the interface that will be used to send
-packets to D and the other is not, then prefer the former.
-.RE
-
-.sp
-.ne 2
-.na
-\fBPrefer matching label\fR
-.ad
-.RS 30n
-This rule uses labels which are obtained through the IPv6 default address
-selection policy table. See \fBipaddrsel\fR(1M) for a description of the
-default contents of the table and how the table is configured.
-.sp
-If Label(SA) == Label(D) and Label(SB) != Label(D), then prefer SA.
-.sp
-If Label(SB) == Label(D) and Label(SA) != Label(D), then prefer SB.
-.RE
-
-.sp
-.ne 2
-.na
-\fBPrefer public addresses\fR
-.ad
-.RS 30n
-This rule prefers public addresses over temporary addresses, as defined in
-\fIRFC 3041\fR. Temporary addresses are disabled by default and may be enabled
-by appropriate settings in \fBndpd.conf\fR(4).
-.sp
-The sense of this rule may be set on a per-socket basis using the
-IPV6_SRC_PREFERENCES socket option. Passing the flag IPV6_PREFER_SRC_TMP or
-IPV6_PREFER_SRC_PUBLIC will cause temporary or public addresses to be
-preferred, respectively, for that particular socket. See \fBip6\fR(7P) for
-more information about IPv6 socket options.
-.RE
-
-.sp
-.ne 2
-.na
-\fBUse longest matching prefix.\fR
-.ad
-.sp .6
-.RS 4n
-This rule prefers the source address that has the longer matching prefix with
-the destination. Because this is the last rule and because both source
-addresses could have equal matching prefixes, this rule does an \fBxor\fR of
-each source address with the destination, then selects the source address with
-the smaller \fBxor\fR value in order to break any potential tie.
-.sp
-If SA ^ D < SB ^ D, then prefer SA.
-.sp
-If SB ^ D < SA ^ D, then prefer SB.
-.RE
-
-.sp
-.LP
-Applications can override this algorithm by calling \fBbind\fR(3SOCKET) and
-specifying an address.
-.SH SEE ALSO
-.LP
-\fBioctl\fR(2), \fBbind\fR(3SOCKET), \fBconnect\fR(3SOCKET),
-\fBgetipnodebyaddr\fR(3SOCKET),
-\fBgetipnodebyname\fR(3SOCKET), \fBgetprotobyname\fR(3SOCKET),
-\fBgetservbyname\fR(3SOCKET), \fBgetsockopt\fR(3SOCKET), \fBinet\fR(3SOCKET),
-\fBsend\fR(3SOCKET), \fBsockaddr\fR(3SOCKET),
-\fBicmp6\fR(7P), \fBip6\fR(7P), \fBtcp\fR(7P), \fBudp\fR(7P)
-.sp
-.LP
-Conta, A. and Deering, S., \fIInternet Control Message Protocol (ICMPv6) for
-the Internet Protocol Version 6 (IPv6) Specification\fR, RFC 1885, December
-1995.
-.sp
-.LP
-Deering, S. and Hinden, B., \fIInternet Protocol, Version 6 (IPv6)
-Specification\fR, RFC 1883, December 1995.
-.sp
-.LP
-Hinden, B. and Deering, S., \fIIP Version 6 Addressing Architecture\fR, RFC
-1884, December 1995.
-.sp
-.LP
-Draves, R., \fIRFC 3484, Default Address Selection for IPv6.\fR The Internet
-Society. February 2003.
-.sp
-.LP
-Narten, T., and Draves, R. \fIRFC 3041, Privacy Extensions for Stateless
-Address Autoconfiguration in IPv6.\fR The Internet Society. January 2001.
-.SH NOTES
-.LP
-The \fBIPv6\fR support is subject to change as the Internet protocols develop.
-Users should not depend on details of the current implementation, but rather
-the services exported.
diff --git a/usr/src/man/man7p/ip.7p b/usr/src/man/man7p/ip.7p
deleted file mode 100644
index b8c8d9a44d..0000000000
--- a/usr/src/man/man7p/ip.7p
+++ /dev/null
@@ -1,934 +0,0 @@
-'\" te
-.\" Copyright 2020 OmniOS Community Edition (OmniOSce) Association.
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 2008 AT&T
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH IP 7P "Sep 18, 2020"
-.SH NAME
-ip, IP \- Internet Protocol
-.SH SYNOPSIS
-.nf
-\fB#include <sys/socket.h>\fR
-.fi
-
-.LP
-.nf
-\fB#include <netinet/in.h>\fR
-.fi
-
-.LP
-.nf
-\fBs = socket(AF_INET, SOCK_RAW, proto);\fR
-.fi
-
-.LP
-.nf
-\fBt = t_open ("/dev/rawip", O_RDWR);\fR
-.fi
-
-.SH DESCRIPTION
-IP is the internetwork datagram delivery protocol that is central to the
-Internet protocol family. Programs may use \fBIP\fR through higher-level
-protocols such as the Transmission Control Protocol (TCP) or the User Datagram
-Protocol (UDP), or may interface directly to IP. See \fBtcp\fR(7P) and
-\fBudp\fR(7P). Direct access may be by means of the socket interface, using a
-"raw socket," or by means of the Transport Level Interface (TLI). The protocol
-options defined in the IP specification may be set in outgoing datagrams.
-.sp
-.LP
-Packets sent to or from this system may be subject to IPsec policy. See
-\fBipsec\fR(7P) for more information.
-.SH APPLICATION PROGRAMMING INTERFACE
-The STREAMS driver \fB/dev/rawip\fR is the TLI transport provider that provides
-raw access to IP.
-.sp
-.LP
-Raw IP sockets are connectionless and are normally used with the \fBsendto()\fR
-and \fBrecvfrom()\fR calls (see \fBsend\fR(3SOCKET) and \fBrecv\fR(3SOCKET)),
-although the \fBconnect\fR(3SOCKET) call may also be used to fix the
-destination for future datagram. In this case, the \fBread\fR(2) or
-\fBrecv\fR(3SOCKET) and \fBwrite\fR(2) or \fBsend\fR(3SOCKET) calls may be
-used. If \fIproto\fR is \fBIPPROTO_RAW\fR or \fBIPPROTO_IGMP\fR, the
-application is expected to include a complete IP header when sending.
-Otherwise, that protocol number will be set in outgoing datagrams and used to
-filter incoming datagrams and an IP header will be generated and prepended to
-each outgoing datagram. In either case, received datagrams are returned with
-the IP header and options intact.
-.sp
-.LP
-If an application uses \fBIP_HDRINCL\fR and provides the IP header contents,
-the IP stack does not modify the following supplied fields under any
-conditions: Type of Service, DF Flag, Protocol, and Destination Address. The IP
-Options and IHL fields are set by use of \fBIP_OPTIONS\fR, and \fBTotal
-Length\fR is updated to include any options. Version is set to the default.
-Identification is chosen by the normal IP ID selection logic. The source
-address is updated if none was specified and the TTL is changed if the packet
-has a broadcast destination address. Since an applicaton cannot send down
-fragments (as IP assigns the IP ID), Fragment Offset is always 0. The IP
-Checksum field is computed by IP. None of the data beyond the IP header are
-changed, including the application-provided transport header.
-.sp
-.LP
-The socket options supported at the IP level are:
-.sp
-.ne 2
-.na
-\fBIP_OPTIONS\fR
-.ad
-.RS 22n
-IP options for outgoing datagrams. This socket option may be used to set IP
-options to be included in each outgoing datagram. IP options to be sent are set
-with \fBsetsockopt()\fR (see \fBgetsockopt\fR(3SOCKET)). The
-\fBgetsockopt\fR(3SOCKET) call returns the IP options set in the last
-\fBsetsockopt()\fR call. IP options on received datagrams are visible to user
-programs only using raw IP sockets. The format of IP options given in
-\fBsetsockopt()\fR matches those defined in the IP specification with one
-exception: the list of addresses for the source routing options must include
-the first-hop gateway at the beginning of the list of gateways. The first-hop
-gateway address will be extracted from the option list and the size adjusted
-accordingly before use. IP options may be used with any socket type in the
-Internet family.
-.RE
-
-.sp
-.ne 2
-.na
-\fBIP_SEC_OPT\fR
-.ad
-.RS 22n
-Enable or obtain IPsec security settings for this socket. For more details on
-the protection services of IPsec, see \fBipsec\fR(7P).
-.RE
-
-.sp
-.ne 2
-.na
-\fBIP_ADD_MEMBERSHIP\fR
-.ad
-.RS 22n
-Join a multicast group.
-.RE
-
-.sp
-.ne 2
-.na
-\fBIP_DROP_MEMBERSHIP\fR
-.ad
-.RS 22n
-Leave a multicast group.
-.RE
-
-.sp
-.ne 2
-.na
-\fBIP_BOUND_IF\fR
-.ad
-.RS 22n
-Limit reception and transmission of packets to this interface. Takes an
-integer as an argument. The integer is the selected interface index.
-.RE
-
-.sp
-.LP
-The following option takes \fBin_pktinfo_t\fR as the parameter:
-.sp
-.ne 2
-.na
-\fBIP_PKTINFO\fR
-.ad
-.sp .6
-.RS 4n
-Set the source address and/or transmit interface of the packet(s). Note that
-the IP_BOUND_IF socket option takes precedence over the interface index passed
-in IP_PKTINFO.
-.sp
-.in +2
-.nf
-struct in_pktinfo {
- unsigned int ipi_ifindex;/* send/recv interface index */
- struct in_addr ipi_spec_dst;/* matched source addr. */
- struct in_addr ipi_addr;/* src/dst addr. in IP hdr */
-} in_pktinfo_t;
-.fi
-.in -2
-
-When passed in (on transmit) via ancillary data with IP_PKTINFO, ipi_spec_dst
-is used as the source address and ipi_ifindex is used as the interface index to
-send the packet out.
-.RE
-
-.sp
-.LP
-The following options are boolean switches controlling the reception of
-ancillary data. The option value is type \fBint\fR; a non-zero value
-enables the option whilst a zero value disables it.
-
-.sp
-.ne 2
-.na
-\fBIP_RECVDSTADDR\fR
-.ad
-.RS 22n
-When enabled on a SOCK_DGRAM socket, enables receipt of the destination
-IP address of the incoming packet. Returns \fBinaddr_t\fR as ancillary
-data.
-.RE
-
-.sp
-.ne 2
-.na
-\fBIP_RECVIF\fR
-.ad
-.RS 22n
-Enable/disable receipt of the inbound interface index. Returns \fBuint_t\fR as
-ancillary data.
-.RE
-
-.sp
-.ne 2
-.na
-\fBIP_RECVOPTS\fR
-.ad
-.RS 22n
-When enabled on a SOCK_DGRAM socket, enables receipt of the IP options
-from the incoming packet. Returns variable-length IP options, up to 40
-bytes, as ancillary data.
-.RE
-
-.sp
-.ne 2
-.na
-\fBIP_RECVPKTINFO\fR
-.ad
-.RS 22n
-Enable/disable receipt of the index of the interface the packet arrived on, the
-local address that was matched for reception, and the inbound packet's actual
-destination address. Takes boolean as the parameter. Returns
-\fBin_pktinfo_t\fR as ancillary data.
-.RE
-
-.sp
-.ne 2
-.na
-\fBIP_RECVSLLA\fR
-.ad
-.RS 22n
-When enabled on a SOCK_DGRAM socket, enables receipt of the source link-layer
-address for the incoming packet. Returns \fBstruct sockaddr_dl\fR as
-ancillary data.
-.RE
-
-.sp
-.ne 2
-.na
-\fBIP_RECVTTL\fR
-.ad
-.RS 22n
-When enabled on a SOCK_DGRAM socket, the IP TTL (time to live) field for an
-incoming datagram is returned as \fBuint8_t\fR in ancillary data.
-.RE
-
-.sp
-.ne 2
-.na
-\fBIP_RECVTOS\fR
-.ad
-.RS 22n
-When enabled, the IP TOS (type of service) field is returned as \fBuint8_t\fR
-in ancillary data. For \fBSOCK_DGRAM\fR sockets, the ancillary data item is
-included for every call to \fBrecvmsg()\fR. For \fBSOCK_STREAM\fR sockets,
-where there is no direct mapping between received TCP segments and receive
-operations, the ancillary data item will only be present when this option
-is first enabled, and subsequently only if the value changes.
-.RE
-
-.sp
-.LP
-The following options take a \fBstruct ip_mreq\fR as the parameter. The
-structure contains a multicast address which must be set to the \fBCLASS-D\fR
-\fBIP\fR multicast address and an interface address. Normally the interface
-address is set to \fBINADDR_ANY\fR which causes the kernel to choose the
-interface on which to join.
-.sp
-.ne 2
-.na
-\fBIP_BLOCK_SOURCE\fR
-.ad
-.RS 29n
-Block multicast packets whose source address matches the given source address.
-The specified group must be joined previously using IP_ADD_MEMBERSHIP or
-MCAST_JOIN_GROUP.
-.RE
-
-.sp
-.ne 2
-.na
-\fBIP_UNBLOCK_SOURCE\fR
-.ad
-.RS 29n
-Unblock (begin receiving) multicast packets which were previously blocked using
-IP_BLOCK_SOURCE.
-.RE
-
-.sp
-.ne 2
-.na
-\fBIP_ADD_SOURCE_MEMBERSHIP\fR
-.ad
-.RS 29n
-Begin receiving packets for the given multicast group whose source address
-matches the specified address.
-.RE
-
-.sp
-.ne 2
-.na
-\fBIP_DROP_SOURCE_MEMBERSHIP\fR
-.ad
-.RS 29n
-Stop receiving packets for the given multicast group whose source address
-matches the specified address.
-.RE
-
-.sp
-.LP
-The following options take a \fBstruct ip_mreq_source\fR as the parameter. The
-structure contains a multicast address (which must be set to the CLASS-D IP
-multicast address), an interface address, and a source address.
-.sp
-.ne 2
-.na
-\fBMCAST_JOIN_GROUP\fR
-.ad
-.RS 28n
-Join a multicast group. Functionally equivalent to IP_ADD_MEMBERSHIP.
-.RE
-
-.sp
-.ne 2
-.na
-\fBMCAST_BLOCK_SOURCE\fR
-.ad
-.RS 28n
-Block multicast packets whose source address matches the given source address.
-The specified group must be joined previously using IP_ADD_MEMBERSHIP or
-MCAST_JOIN_GROUP.
-.RE
-
-.sp
-.ne 2
-.na
-\fBMCAST_UNBLOCK_SOURCE\fR
-.ad
-.RS 28n
-Unblock (begin receiving) multicast packets which were previously blocked using
-MCAST_BLOCK_SOURCE.
-.RE
-
-.sp
-.ne 2
-.na
-\fBMCAST_LEAVE_GROUP\fR
-.ad
-.RS 28n
-Leave a multicast group. Functionally equivalent to IP_DROP_MEMBERSHIP.
-.RE
-
-.sp
-.ne 2
-.na
-\fBMCAST_JOIN_SOURCE_GROUP\fR
-.ad
-.RS 28n
-Begin receiving packets for the given multicast group whose source address
-matches the specified address.
-.RE
-
-.sp
-.ne 2
-.na
-\fBMCAST_LEAVE_SOURCE_GROUP\fR
-.ad
-.RS 28n
-Stop receiving packets for the given multicast group whose source address
-matches the specified address.
-.RE
-
-.sp
-.LP
-The following options take a struct \fBgroup_req\fR or struct
-\fBgroup_source_req\fR as the parameter. The `\fBgroup_req\fR structure
-contains an interface index and a multicast address which must be set to the
-CLASS-D multicast address. The \fBgroup_source_req\fR structure is used for
-those options which include a source address. It contains an interface index,
-multicast address, and source address.
-.sp
-.ne 2
-.na
-\fBIP_MULTICAST_IF\fR
-.ad
-.RS 21n
-The outgoing interface for multicast packets. This option takes a \fBstruct\fR
-\fBin_addr\fR as an argument, and it selects that interface for outgoing IP
-multicast packets. If the address specified is \fBINADDR_ANY\fR, it uses the
-unicast routing table to select the outgoing interface (which is the default
-behavior).
-.RE
-
-.sp
-.ne 2
-.na
-\fBIP_MULTICAST_TTL\fR
-.ad
-.RS 21n
-Time to live for multicast datagrams. This option takes an unsigned character
-as an argument. Its value is the TTL that IP uses on outgoing multicast
-datagrams. The default is \fB1\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBIP_MULTICAST_LOOP\fR
-.ad
-.RS 21n
-Loopback for multicast datagrams. Normally multicast datagrams are delivered
-to members on the sending host (or sending zone). Setting the unsigned
-character argument to 0 causes the opposite behavior, meaning that when
-multiple zones are present, the datagrams are delivered to all zones except the
-sending zone.
-.RE
-
-.sp
-.ne 2
-.na
-\fBIP_TOS\fR
-.ad
-.RS 21n
-This option takes an integer argument as its input value. The least significant
-8 bits of the value are used to set the Type Of Service field in the IP header
-of the outgoing packets.
-.RE
-
-.sp
-.ne 2
-.na
-\fBIP_NEXTHOP\fR
-.ad
-.RS 21n
-This option specifies the address of the onlink nexthop for traffic originating
-from that socket. It causes the routing table to be bypassed and outgoing
-traffic is sent directly to the specified nexthop. This option takes an
-ipaddr_t argument representing the IPv4 address of the nexthop as the input
-value. The IP_NEXTHOP option takes precedence over IPOPT_LSRR. IP_BOUND_IF and
-SO_DONTROUTE take precedence over IP_NEXTHOP. This option has no meaning for
-broadcast and multicast packets. The application must ensure that the specified
-nexthop is alive. An application may want to specify the IP_NEXTHOP option on a
-TCP listener socket only for incoming requests to a particular IP address. In
-this case, it must avoid binding the socket to INADDR_ANY and instead must bind
-the listener socket to the specific IP address. In addition, typically the
-application may want the incoming and outgoing interface to be the same. In
-this case, the application must select a suitable nexthop that is onlink and
-reachable via the desired interface and do a setsockopt (IP_NEXTHOP) on it.
-Then it must bind to the IP address of the desired interface. Setting the
-IP_NEXTHOP option requires the PRIV_SYS_NET_CONFIG privilege.
-.RE
-
-.sp
-.LP
-The multicast socket options (IP_MULTICAST_IF, IP_MULTICAST_TTL,
-IP_MULTICAST_LOOP and IP_RECVIF) can be used with any datagram socket type in
-the Internet family.
-.sp
-.LP
-At the socket level, the socket option \fBSO_DONTROUTE\fR may be applied. This
-option forces datagrams being sent to bypass routing and forwarding by forcing
-the IP Time To Live field to \fB1\fR, meaning that the packet will not be
-forwarded by routers.
-.sp
-.LP
-Raw IP datagrams can also be sent and received using the TLI connectionless
-primitives.
-.sp
-.LP
-Datagrams flow through the IP layer in two directions: from the network
-\fIup\fR to user processes and from user processes \fIdown\fR to the network.
-Using this orientation, IP is layered \fIabove\fR the network interface drivers
-and \fIbelow\fR the transport protocols such as UDP and TCP. The Internet
-Control Message Protocol (ICMP) is logically a part of IP. See \fBicmp\fR(7P).
-.sp
-.LP
-IP provides for a checksum of the header part, but not the data part, of the
-datagram. The checksum value is computed and set in the process of sending
-datagrams and checked when receiving datagrams.
-.sp
-.LP
-IP options in received datagrams are processed in the IP layer according to the
-protocol specification. Currently recognized IP options include: security,
-loose source and record route (LSRR), strict source and record route (SSRR),
-record route, and internet timestamp.
-.sp
-.LP
-By default, the IP layer will not forward IPv4 packets that are not addressed
-to it. This behavior can be overridden by using \fBrouteadm\fR(1M) to enable
-the ipv4-forwarding option. IPv4 forwarding is configured at boot time based on
-the setting of \fBrouteadm\fR(1M)'s ipv4-forwarding option.
-.sp
-.LP
-For backwards compatibility, IPv4 forwarding can be enabled or disabled using
-\fBndd\fR(1M)'s ip_forwarding variable. It is set to 1 if IPv4 forwarding is
-enabled, or 0 if it is disabled.
-.sp
-.LP
-Additionally, finer-grained forwarding can be configured in IP. Each interface
-can be configured to forward IP packets by setting the IFF_ROUTER interface
-flag. This flag can be set and cleared using \fBifconfig\fR(1M)'s router and
-router options. If an interface's IFF_ROUTER flag is set, packets can be
-forwarded to or from the interface. If it is clear, packets will neither be
-forwarded from this interface to others, nor forwarded to this interface.
-Setting the ip_forwarding variable sets all of the IPv4 interfaces' IFF_ROUTER
-flags.
-.sp
-.LP
-For backwards compatibility, each interface creates an
-\fB<ifname>:ip_forwarding /dev/ip\fR variable that can be modified using
-\fBndd\fR(1M). An interface's \fB:ip_forwarding ndd\fR variable is a boolean
-variable that mirrors the status of its IFF_ROUTER interface flag. It is set to
-1 if the flag is set, or 0 if it is clear. This interface specific \fB<ifname>
-:ip_forwarding ndd\fR variable is obsolete and may be removed in a future
-release of Solaris. The \fBifconfig\fR(1M) router and -router interfaces are
-preferred.
-.sp
-.LP
-The IP layer sends an ICMP message back to the source host in many cases when
-it receives a datagram that can not be handled. A "time exceeded" ICMP message
-is sent if the "time to live" field in the IP header drops to zero in the
-process of forwarding a datagram. A "destination unreachable" message is sent
-if a datagram can not be forwarded because there is no route to the final
-destination, or if it can not be fragmented. If the datagram is addressed to
-the local host but is destined for a protocol that is not supported or a port
-that is not in use, a destination unreachable message is also sent. The IP
-layer may send an ICMP "source quench" message if it is receiving datagrams too
-quickly. ICMP messages are only sent for the first fragment of a fragmented
-datagram and are never returned in response to errors in other ICMP messages.
-.sp
-.LP
-The IP layer supports fragmentation and reassembly. Datagrams are fragmented on
-output if the datagram is larger than the maximum transmission unit (MTU) of
-the network interface. Fragments of received datagrams are dropped from the
-reassembly queues if the complete datagram is not reconstructed within a short
-time period.
-.sp
-.LP
-Errors in sending discovered at the network interface driver layer are passed
-by IP back up to the user process.
-.sp
-.LP
-Multi-Data Transmit allows more than one packet to be sent from the IP module
-to another in a given call, thereby reducing the per-packet processing costs.
-The behavior of Multi-Data Transmit can be overrideen by using \fBndd\fR(1M) to
-set the \fB/dev/ip\fR variable, ip_multidata_outbound to 0. Note, the IP module
-will only initiate Multi-Data Transmit if the network interface driver supports
-it.
-.SH PACKET EVENTS
-Through the netinfo framework, this driver provides the following packet
-events:
-.sp
-.ne 2
-.na
-\fBPhysical in\fR
-.ad
-.RS 16n
-Packets received on a network interface from an external source.
-.RE
-
-.sp
-.ne 2
-.na
-\fBPhysical out\fR
-.ad
-.RS 16n
-Packets to be sent out a network interface.
-.RE
-
-.sp
-.ne 2
-.na
-\fBForwarding\fR
-.ad
-.RS 16n
-Packets being forwarded through this host to another network.
-.RE
-
-.sp
-.ne 2
-.na
-\fBloopback in\fR
-.ad
-.RS 16n
-Packets that have been sent by a local application to another.
-.RE
-
-.sp
-.ne 2
-.na
-\fBloopback out\fR
-.ad
-.RS 16n
-Packets about to be received by a local application from another.
-.RE
-
-.sp
-.LP
-Currently, only a single function may be registered for each event. As a
-result, if the slot for an event is already occupied by someone else, a second
-attempt to register a callback fails.
-.sp
-.LP
-To receive packet events in a kernel module, it is first necessary to obtain a
-handle for either IPv4 or IPv6 traffic. This is achieved by passing NHF_INET
-or NHF_INET6 through to a net_protocol_lookup() call. The value returned from
-this call must then be passed into a call to net_register_hook(), along with
-a description of the hook to add. For a description of the structure passed
-through to the callback, please see \fBhook_pkt_event\fR(9S). For IP
-packets, this structure is filled out as follows:
-.sp
-.ne 2
-.na
-\fBhpe_ifp\fR
-.ad
-.RS 11n
-Identifier indicating the inbound interface for packets received with the
-"physical in" event.
-.RE
-
-.sp
-.ne 2
-.na
-\fBhpe_ofp\fR
-.ad
-.RS 11n
-Identifier indicating the outbound interface for packets received with the
-"physical out" event.
-.RE
-
-.sp
-.ne 2
-.na
-\fBhpe_hdr\fR
-.ad
-.RS 11n
-Pointer to the start of the IP header (not the ethernet header).
-.RE
-
-.sp
-.ne 2
-.na
-\fBhpe_mp\fR
-.ad
-.RS 11n
-Pointer to the start of the mblk_t chain containing the IP packet.
-.RE
-
-.sp
-.ne 2
-.na
-\fBhpe_mb\fR
-.ad
-.RS 11n
-Pointer to the mblk_t with the IP header in it.
-.RE
-
-.SH NETWORK INTERFACE EVENTS
-In addition to events describing packets as they move through the system, it is
-also possible to receive notification of events relating to network interfaces.
-These events are all reported back through the same callback. The list of
-events is as follows:
-.sp
-.ne 2
-.na
-\fBplumb\fR
-.ad
-.RS 18n
-A new network interface has been instantiated.
-.RE
-
-.sp
-.ne 2
-.na
-\fBunplumb\fR
-.ad
-.RS 18n
-A network interface is no longer associated with this protocol.
-.RE
-
-.sp
-.ne 2
-.na
-\fBup\fR
-.ad
-.RS 18n
-At least one logical interface is now ready to receive packets.
-.RE
-
-.sp
-.ne 2
-.na
-\fBdown\fR
-.ad
-.RS 18n
-There are no logical interfaces expecting to receive packets.
-.RE
-
-.sp
-.ne 2
-.na
-\fBaddress change\fR
-.ad
-.RS 18n
-An address has changed on a logical interface.
-.RE
-
-.SH SEE ALSO
-\fBifconfig\fR(1M), \fBrouteadm\fR(1M), \fBndd\fR(1M), \fBread\fR(2),
-\fBwrite\fR(2), \fBsocket.h\fR(3HEAD), \fBbind\fR(3SOCKET),
-\fBconnect\fR(3SOCKET), \fBgetsockopt\fR(3SOCKET), \fBrecv\fR(3SOCKET),
-\fBsend\fR(3SOCKET), \fBsetsockopt\fR(3SOCKET), \fBdefaultrouter\fR(4),
-\fBicmp\fR(7P), \fBif_tcp\fR(7P), \fBinet\fR(7P), \fBip\fR(7P), \fBip6\fR(7P),
-\fBipsec\fR(7P), \fBrouting\fR(7P), \fBtcp\fR(7P), \fBudp\fR(7P),
-\fBnet_hook_register\fR(9F), \fBhook_pkt_event\fR(9S)
-.sp
-.LP
-Braden, R., \fIRFC 1122, Requirements for Internet Hosts \(mi Communication
-Layers\fR, Information Sciences Institute, University of Southern California,
-October 1989.
-.sp
-.LP
-Postel, J., \fIRFC 791, Internet Protocol \(mi DARPA Internet Program Protocol
-Specification\fR, Information Sciences Institute, University of Southern
-California, September 1981.
-.SH DIAGNOSTICS
-A socket operation may fail with one of the following errors returned:
-.sp
-.ne 2
-.na
-\fBEACCES\fR
-.ad
-.RS 17n
-A \fBbind()\fR operation was attempted with a "reserved" port number and the
-effective user ID of the process was not the privileged user.
-.sp
-Setting the IP_NEXTHOP was attempted by a process lacking the
-PRIV_SYS_NET_CONFIG privilege.
-.RE
-
-.sp
-.ne 2
-.na
-\fBEADDRINUSE\fR
-.ad
-.RS 17n
-A \fBbind()\fR operation was attempted on a socket with a network address/port
-pair that has already been bound to another socket.
-.RE
-
-.sp
-.ne 2
-.na
-\fBEADDRNOTAVAIL\fR
-.ad
-.RS 17n
-A \fBbind()\fR operation was attempted for an address that is not configured on
-this machine.
-.RE
-
-.sp
-.ne 2
-.na
-\fBEINVAL\fR
-.ad
-.RS 17n
-A \fBsendmsg()\fR operation with a non-NULL \fBmsg_accrights\fR was attempted.
-.RE
-
-.sp
-.ne 2
-.na
-\fBEINVAL\fR
-.ad
-.RS 17n
-A \fBgetsockopt()\fR or \fBsetsockopt()\fR operation with an unknown socket
-option name was given.
-.RE
-
-.sp
-.ne 2
-.na
-\fBEINVAL\fR
-.ad
-.RS 17n
-A \fBgetsockopt()\fR or \fBsetsockopt()\fR operation was attempted with the
-\fBIP\fR option field improperly formed; an option field was shorter than the
-minimum value or longer than the option buffer provided.
-.RE
-
-.sp
-.ne 2
-.na
-\fBEISCONN\fR
-.ad
-.RS 17n
-A \fBconnect()\fR operation was attempted on a socket on which a
-\fBconnect()\fR operation had already been performed, and the socket could not
-be successfully disconnected before making the new connection.
-.RE
-
-.sp
-.ne 2
-.na
-\fBEISCONN\fR
-.ad
-.RS 17n
-A \fBsendto()\fR or \fBsendmsg()\fR operation specifying an address to which
-the message should be sent was attempted on a socket on which a \fBconnect()\fR
-operation had already been performed.
-.RE
-
-.sp
-.ne 2
-.na
-\fBEMSGSIZE\fR
-.ad
-.RS 17n
-A \fBsend()\fR, \fBsendto()\fR, or \fBsendmsg()\fR operation was attempted to
-send a datagram that was too large for an interface, but was not allowed to be
-fragmented (such as broadcasts).
-.RE
-
-.sp
-.ne 2
-.na
-\fBENETUNREACH\fR
-.ad
-.RS 17n
-An attempt was made to establish a connection by means of \fBconnect()\fR, or
-to send a datagram by means of \fBsendto()\fR or \fBsendmsg()\fR, where there
-was no matching entry in the routing table; or if an ICMP "destination
-unreachable" message was received.
-.RE
-
-.sp
-.ne 2
-.na
-\fBENOTCONN\fR
-.ad
-.RS 17n
-A \fBsend()\fR or \fBwrite()\fR operation, or a \fBsendto()\fR or
-\fBsendmsg()\fR operation not specifying an address to which the message should
-be sent, was attempted on a socket on which a \fBconnect()\fR operation had not
-already been performed.
-.RE
-
-.sp
-.ne 2
-.na
-\fBENOBUFS\fR
-.ad
-.RS 17n
-The system ran out of memory for fragmentation buffers or other internal data
-structures.
-.RE
-
-.sp
-.ne 2
-.na
-\fBENOBUFS\fR
-.ad
-.RS 17n
-\fBSO_SNDBUF\fR or \fBSO_RCVBUF\fR exceeds a system limit.
-.RE
-
-.sp
-.ne 2
-.na
-\fBEINVAL\fR
-.ad
-.RS 17n
-Invalid length for \fBIP_OPTIONS\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBEHOSTUNREACH\fR
-.ad
-.RS 17n
-Invalid address for \fBIP_MULTICAST_IF\fR.
-.sp
-Invalid (offlink) nexthop address for IP_NEXTHOP.
-.RE
-
-.sp
-.ne 2
-.na
-\fBEINVAL\fR
-.ad
-.RS 17n
-Not a multicast address for \fBIP_ADD_MEMBERSHIP\fR and
-\fBIP_DROP_MEMBERSHIP\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBEADDRNOTAVAIL\fR
-.ad
-.RS 17n
-Bad interface address for \fBIP_ADD_MEMBERSHIP\fR and \fBIP_DROP_MEMBERSHIP\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBEADDRINUSE\fR
-.ad
-.RS 17n
-Address already joined for \fBIP_ADD_MEMBERSHIP\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBENOENT\fR
-.ad
-.RS 17n
-Address not joined for \fBIP_DROP_MEMBERSHIP\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBENOPROTOOPT\fR
-.ad
-.RS 17n
-Invalid socket type.
-.RE
-
-.sp
-.ne 2
-.na
-\fBEPERM\fR
-.ad
-.RS 17n
-No permissions.
-.RE
-
-.SH NOTES
-Raw sockets should receive \fBICMP\fR error packets relating to the protocol;
-currently such packets are simply discarded.
-.sp
-.LP
-Users of higher-level protocols such as \fBTCP\fR and \fBUDP\fR should be able
-to see received IP options.
diff --git a/usr/src/man/man7p/ip6.7p b/usr/src/man/man7p/ip6.7p
deleted file mode 100644
index c88233ed39..0000000000
--- a/usr/src/man/man7p/ip6.7p
+++ /dev/null
@@ -1,779 +0,0 @@
-'\" te
-.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH IP6 7P "December 28, 2020"
-.SH NAME
-ip6 \- Internet Protocol Version 6
-.SH SYNOPSIS
-.nf
-#include <sys/socket.h>
-#include <netinet/in.h>
-#include <netinet/ip6.h>
-.fi
-
-.LP
-.nf
-s = socket(AF_INET6, SOCK_RAW, proto);
-.fi
-
-.LP
-.nf
-t = t_open ("/dev/rawip6", O_RDWR);
-.fi
-
-.SH DESCRIPTION
-The \fBIPv6\fR protocol is the next generation of the internetwork datagram
-delivery protocol of the Internet protocol family. Programs may use \fBIPv6\fR
-through higher-level protocols such as the Transmission Control Protocol
-(\fBTCP\fR) or the User Datagram Protocol (\fBUDP\fR), or may interface
-directly to \fBIPv6\fR. See \fBtcp\fR(7P) and \fBudp\fR(7P). Direct access may
-be by means of the socket interface, using a "raw socket," or by means of the
-Transport Level Interface (\fBTLI\fR). The protocol options and \fBIPv6\fR
-extension headers defined in the \fBIPv6\fR specification may be set in
-outgoing datagrams.
-.SH APPLICATION PROGRAMMING INTERFACE
-The \fBSTREAMS\fR driver \fB/dev/rawip6\fR is the \fBTLI\fR transport provider
-that provides raw access to \fBIPv6\fR.
-.sp
-.LP
-Raw \fBIPv6\fR sockets are connectionless and are normally used with the
-\fBsendto()\fR and \fBrecvfrom()\fR calls (see \fBsend\fR(3SOCKET) and
-\fBrecv\fR(3SOCKET)), although the \fBconnect\fR(3SOCKET) call may also be used
-to fix the destination for future datagrams. In this case, the \fBread\fR(2) or
-\fBrecv\fR(3SOCKET) and \fBwrite\fR(2) or \fBsend\fR(3SOCKET) calls may be
-used. Ancillary data may also be sent or received over raw \fBIPv6\fR sockets
-using the \fBsendmsg\fR(3SOCKET) and \fBrecvmsg\fR(3SOCKET) system calls.
-.sp
-.LP
-Unlike raw \fBIP\fR, \fBIPv6\fR applications do not include a complete
-\fBIPv6\fR header when sending; there is no \fBIPv6\fR analog to the \fBIP\fR
-\fBIP_HDRINCL\fR socket option. \fBIPv6\fR header values may be specified or
-received as ancillary data to a \fBsendmsg\fR(3SOCKET) or
-\fBrecvmsg\fR(3SOCKET) system call, or may be specified as "sticky" options on
-a per-socket basis by using the \fBsetsockopt\fR(3SOCKET) system call. Such
-sticky options are applied to all outbound packets unless overridden by
-ancillary data. If any ancillary data is specified in a \fBsendmsg\fR(3SOCKET)
-call, all sticky options not explicitly overridden revert to default values for
-that datagram only; the sticky options persist as set for subsequent datagrams.
-.sp
-.LP
-Since \fBsendmsg\fR(3SOCKET) is not supported for \fBSOCK_STREAM\fR upper level
-protocols such as \fBTCP\fR, ancillary data is unsupported for \fBTCP\fR.
-Sticky options, however, are supported.
-.sp
-.LP
-Since \fBsendmsg\fR(3SOCKET) is supported for \fBSOCK_DGRAM\fR upper level
-protocols, both ancillary data and sticky options are supported for \fBUDP\fR,
-\fBICMP6\fR, and raw \fBIPv6\fR sockets.
-.sp
-.LP
-The socket options supported at the \fBIPv6\fR level are:
-.sp
-.ne 2
-.na
-\fB\fBIPV6_BOUND_IF\fR\fR
-.ad
-.RS 24n
-Limit reception and transmission of packets to this interface. Takes an integer
-as an argument; the integer is the selected interface index.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBIPV6_UNSPEC_SRC\fR\fR
-.ad
-.RS 24n
-Boolean. Allow/disallow sending with a zero source address.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBIPV6_UNICAST_HOPS\fR\fR
-.ad
-.RS 24n
-Default hop limit for unicast datagrams. This option takes an integer as an
-argument. Its value becomes the new default value for \fBip6_hops\fR that
-\fBIPv6\fR will use on outgoing unicast datagrams sent from that socket. The
-initial default is \fB60\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBIPV6_CHECKSUM\fR\fR
-.ad
-.RS 24n
-Specify the integer offset in bytes into the user data of the checksum
-location. Does not apply to the \fBICMP6\fR protocol. Note: checksums are
-required for all \fBIPv6\fR datagrams; this is different from \fBIP\fR, in
-which datagram checksums were optional. \fBIPv6\fR will compute the \fBULP\fR
-checksum if the value in the checksum field is zero.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBIPV6_SEC_OPT\fR\fR
-.ad
-.RS 24n
-Enable or obtain IPsec security settings for this socket. For more details on
-the protection services of IPsec, see \fBipsec\fR(7P).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBIPV6_DONTFRAG\fR\fR
-.ad
-.RS 24n
-Boolean. Control fragmentation.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBIPV6_USE_MIN_MTU\fR\fR
-.ad
-.RS 24n
-Controls whether path MTU discovery is used. If set to 1, path MTU discovery is
-never used and IPv6 packets are sent with the IPv6 minimum MTU. If set to -1,
-path MTU discovery is not used for multicast and multicast packets are sent
-with the IPv6 minimum MTU. If set to 0, path MTU is always performed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBIPV6_V6ONLY\fR\fR
-.ad
-.RS 24n
-Boolean. If set, only V6 packets can be sent or received
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBIPV6_SRC_PREFERENCES\fR\fR
-.ad
-.RS 24n
-Enable or obtain Source Address Selection rule settings for this socket. For
-more details on the Source Address Selection rules, see \fBinet6\fR(7P).
-.RE
-
-.sp
-.LP
-The following options are boolean switches controlling the reception of
-ancillary data:
-.sp
-.ne 2
-.na
-\fB\fBIPV6_RECVPKTINFO\fR\fR
-.ad
-.RS 25n
-Enable/disable receipt of the index of the interface the packet arrived on, and
-of the inbound packet's destination address.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBIPV6_RECVHOPLIMIT\fR\fR
-.ad
-.RS 25n
-Enable/disable receipt of the inbound packet's current hoplimit.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBIPV6_RECVHOPOPTS\fR\fR
-.ad
-.RS 25n
-Enable/disable receipt of the inbound packet's \fBIPv6\fR hop-by-hop extension
-header.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBIPV6_RECVDSTOPTS\fR\fR
-.ad
-.RS 25n
-Enable/disable receipt of the inbound packet's \fBIPv6\fR destination options
-extension header.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBIPV6_RECVRTHDR\fR\fR
-.ad
-.RS 25n
-Enable/disable receipt of the inbound packet's \fBIPv6\fR routing header.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBIPV6_RECVRTHDRDSTOPTS\fR\fR
-.ad
-.RS 25n
-Enable/disable receipt of the inbound packet's intermediate-hops options
-extension header. This option is obsolete. IPV6_RECVDSTOPTS turns on receipt of
-both destination option headers.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBIPV6_RECVTCLASS\fR\fR
-.ad
-.RS 25n
-Enable/disable receipt of the traffic class of the inbound packet.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBIPV6_RECVPATHMTU\fR\fR
-.ad
-.RS 25n
-Enable/disable receipt of the path mtu of the inbound packet.
-.RE
-
-.sp
-.LP
-The following options may be set as sticky options with
-\fBsetsockopt\fR(3SOCKET) or as ancillary data to a \fBsendmsg\fR(3SOCKET)
-system call:
-.sp
-.ne 2
-.na
-\fB\fBIPV6_PKTINFO\fR\fR
-.ad
-.RS 21n
-Set the source address and/or interface out which the packet(s) will be sent.
-Takes a \fBstruct\fR \fBin6_pktinfo\fR as the parameter.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBIPV6_HOPLIMIT\fR\fR
-.ad
-.RS 21n
-Set the initial hoplimit for outbound datagrams. Takes an integer as the
-parameter. Note: This option sets the hoplimit only for ancillary data or
-sticky options and does not change the default hoplimit for the socket; see
-\fBIPV6_UNICAST_HOPS\fR and \fBIPV6_MULTICAST_HOPS\fR to change the socket's
-default hoplimit.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBIPV6_NEXTHOP\fR\fR
-.ad
-.RS 21n
-Specify the \fBIPv6\fR address of the first hop, which must be a neighbor of
-the sending host. Takes a \fBstruct\fR \fBsockaddr_in6\fR as the parameter.
-When this option specifies the same address as the destination \fBIPv6\fR
-address of the datagram, this is equivalent to the existing \fBSO_DONTROUTE\fR
-option.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBIPV6_HOPOPTS\fR\fR
-.ad
-.RS 21n
-Specify one or more hop-by-hop options. Variable length. Takes a complete
-\fBIPv6\fR hop-by-hop options extension header as the parameter.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBIPV6_DSTOPTS\fR\fR
-.ad
-.RS 21n
-Specify one or more destination options. Variable length. Takes a complete
-\fBIPv6\fR destination options extension header as the parameter.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBIPV6_RTHDR\fR\fR
-.ad
-.RS 21n
-Specify the \fBIPv6\fR routing header. Variable length. Takes a complete
-\fBIPv6\fR routing header as the parameter. Currently, only type 0 routing
-headers are supported.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBIPV6_RTHDRDSTOPTS\fR\fR
-.ad
-.RS 21n
-Specify one or more destination options for all intermediate hops. May be
-configured, but will not be applied unless an \fBIPv6\fR routing header is also
-configured. Variable length. Takes a complete \fBIPv6\fR destination options
-extension header as the parameter.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBIPV6_PATHMTU\fR\fR
-.ad
-.RS 21n
-Get the path MTU associated with a connected socket. Takes a ip6_mtuinfo as the
-parameter.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBIPV6_TCLASS\fR\fR
-.ad
-.RS 21n
-Set the traffic class associated with outgoing packets. The parameter is an
-integer. If the parameter is less then -1 or greater then 256, EINVAL is
-returned. If the parameter is equal to -1, use the default. If the parameter is
-between 0 and 255 inclusive, use that value.
-.RE
-
-.sp
-.LP
-The following options affect the socket's multicast behavior:
-.sp
-.ne 2
-.na
-\fB\fBIPV6_JOIN_GROUP\fR\fR
-.ad
-.RS 28n
-Join a multicast group. Takes a \fBstruct\fR \fBipv6_mreq\fR as the parameter;
-the structure contains a multicast address and an interface index.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBIPV6_LEAVE_GROUP\fR\fR
-.ad
-.RS 28n
-Leave a multicast group. Takes a \fBstruct\fR \fBipv6_mreq\fR as the parameter;
-the structure contains a multicast address and an interface index.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBMCAST_JOIN_GROUP\fR\fR
-.ad
-.RS 28n
-Functionally equivalent to IPV6_JOIN_GROUP. Takes a \fBstruct\fR
-\fBgroup_req\fR as the parameter. The structure contains a multicast address
-and an interface index.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBMCAST_BLOCK_SOURCE\fR\fR
-.ad
-.RS 28n
-Block multicast packets on a particular multicast group whose source address
-matches the given source address. The specified group must be joined previously
-using IPV6_JOIN_GROUP or MCAST_JOIN_GROUP. Takes a \fBstruct\fR
-\fBgroup_source_req\fR as the parameter. The structure contains an interface
-index, a multicast address, and a source address.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBMCAST_UNBLOCK_SOURCE\fR\fR
-.ad
-.RS 28n
-Unblock multicast packets which were previously blocked using
-MCAST_BLOCK_SOURCE. Takes a \fBstruct\fR \fBgroup_source_req\fR as the
-parameter. The structure contains an interface index, a multicast address, and
-a source address.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBMCAST_LEAVE_GROUP\fR\fR
-.ad
-.RS 28n
-Functionally equivalent to IPV6_LEAVE_GROUP. Takes a \fBstruct\fR
-\fBgroup_req\fR as the parameter. The structure contains a multicast address
-and an interface index.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBMCAST_JOIN_SOURCE_GROUP\fR\fR
-.ad
-.RS 28n
-Begin receiving packets for the given multicast group whose source address
-matches the specified address. Takes a \fBstruct\fR \fBgroup_source_req\fR as
-the parameter. The structure contains an interface index, a multicast address,
-and a source address.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBMCAST_LEAVE_SOURCE_GROUP\fR\fR
-.ad
-.RS 28n
-Stop receiving packets for the given multicast group whose source address
-matches the specified address. Takes a \fBstruct\fR \fBgroup_source_req\fR as
-the parameter. The structure contains an interface index, a multicast address,
-and a source address.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBIPV6_MULTICAST_IF\fR\fR
-.ad
-.RS 28n
-The outgoing interface for multicast packets. This option takes an integer as
-an argument; the integer is the interface index of the selected interface.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBIPV6_MULTICAST_HOPS\fR\fR
-.ad
-.RS 28n
-Default hop limit for multicast datagrams. This option takes an integer as an
-argument. Its value becomes the new default value for \fBip6_hops\fR that
-\fBIPv6\fR will use on outgoing multicast datagrams sent from that socket. The
-initial default is \fB1\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBIPV6_MULTICAST_LOOP\fR\fR
-.ad
-.RS 28n
-Loopback for multicast datagrams. Normally multicast datagrams are delivered to
-members on the sending host. Setting the unsigned character argument to 0 will
-cause the opposite behavior.
-.RE
-
-.sp
-.LP
-The multicast socket options can be used with any datagram socket type in the
-\fBIPv6\fR family.
-.sp
-.LP
-At the socket level, the socket option \fBSO_DONTROUTE\fR may be applied. This
-option forces datagrams being sent to bypass routing and forwarding by forcing
-the \fBIPv6\fR hoplimit field to \fB1\fR, meaning that the packet will not be
-forwarded by routers.
-.sp
-.LP
-Raw \fBIPv6\fR datagrams can also be sent and received using the \fBTLI\fR
-connectionless primitives.
-.sp
-.LP
-Datagrams flow through the \fBIPv6\fR layer in two directions: from the network
-\fIup\fR to user processes and from user processes \fIdown\fR to the network.
-Using this orientation, \fBIPv6\fR is layered \fIabove\fR the network interface
-drivers and \fIbelow\fR the transport protocols such as \fBUDP\fR and
-\fBTCP\fR. The Internet Control Message Protocol (\fBICMPv6\fR) for the
-Internet Protocol Version 6 (\fBIPv6\fR) is logically a part of \fBIPv6\fR. See
-\fBicmp6\fR(7P).
-.sp
-.LP
-Unlike \fBIP\fR, \fBIPv6\fR provides no checksum of the \fBIPv6\fR header. Also
-unlike \fBIP\fR, upper level protocol checksums are required. \fBIPv6\fR will
-compute the \fBULP\fR/data portion checksum if the checksum field contains a
-zero (see \fBIPV6_CHECKSUM\fR option above).
-.sp
-.LP
-\fBIPv6\fR extension headers in received datagrams are processed in the
-\fBIPv6\fR layer according to the protocol specification. Currently recognized
-\fBIPv6\fR extension headers include hop-by-hop options header, destination
-options header, routing header (currently, only type 0 routing headers are
-supported), and fragment header.
-.sp
-.LP
-By default, the IPv6 layer will not forward IPv6 packets that are not addressed
-to it. This behavior can be overridden by using \fBrouteadm\fR(1M) to enable
-the ipv6-forwarding option. IPv6 forwarding is configured at boot time based on
-the setting of \fBrouteadm\fR(1M)'s ipv6-forwarding option.
-.sp
-.LP
-For backwards compatibility, IPv6 forwarding can be enabled or disabled using
-\fBndd\fR(1M)'s ip_forwarding variable. It is set to 1 if IPv6 forwarding is
-enabled, or 0 if it is disabled.
-.sp
-.LP
-Additionally, finer-grained forwarding can be configured in IPv6. Each
-interface can be configured to forward IPv6 packets by setting the IFF_ROUTER
-interface flag. This flag can be set and cleared using \fBifconfig\fR(1M)'s
-router and -router options. If an interface's IFF_ROUTER flag is set, packets
-can be forwarded to or from the interface. If it is clear, packets will neither
-be forwarded from this interface to others, nor forwarded to this interface.
-Setting the ip6_forwarding variable sets all of the IPv6 interfaces' IFF_ROUTER
-flags.
-.sp
-.LP
-For backwards compatibility, each interface creates an
-\fB<ifname>ip6_forwarding /dev/ip6\fR variable that can be modified using
-\fBndd\fR(1M). An interface's \fB:ip6_forwarding ndd\fR variable is a boolean
-variable that mirrors the status of its IFF_ROUTER interface flag. It is set to
-1 if the flag is set, or 0 if it is clear. This interface specific
-\fB<ifname>:ip6_forwarding ndd\fR variable is obsolete and may be removed in a
-future release of Solaris. The \fBifconfig\fR(1M) router and -router interfaces
-are preferred.
-.sp
-.LP
-The \fBIPv6\fR layer will send an \fBICMP6\fR message back to the source host
-in many cases when it receives a datagram that can not be handled. A
-"\fBtime\fR \fBexceeded\fR" \fBICMP6\fR message will be sent if the
-\fBip6_hops\fR field in the \fBIPv6\fR header drops to zero in the process of
-forwarding a datagram. A "\fBdestination\fR \fBunreachable\fR" message will be
-sent by a router or by the originating host if a datagram can not be sent on
-because there is no route to the final destination; it will be sent by a router
-when it encounters a firewall prohibition; it will be sent by a destination
-node when the transport protocol (that is, \fBTCP\fR) has no listener. A
-"\fBpacket\fR \fBtoo\fR \fBbig\fR" message will be sent by a router if the
-packet is larger than the \fBMTU\fR of the outgoing link (this is used for Path
-\fBMTU\fR Discovery). A "\fBparameter\fR \fBproblem\fR" message will be sent if
-there is a problem with a field in the \fBIPv6\fR header or any of the
-\fBIPv6\fR extension headers such that the packet cannot be fully processed.
-.sp
-.LP
-The \fBIPv6\fR layer supports fragmentation and reassembly. Datagrams are
-fragmented on output if the datagram is larger than the maximum transmission
-unit (\fBMTU\fR) of the network interface. Fragments of received datagrams are
-dropped from the reassembly queues if the complete datagram is not
-reconstructed within a short time period.
-.sp
-.LP
-Errors in sending discovered at the network interface driver layer are passed
-by IPv6 back up to the user process.
-.SH SEE ALSO
-\fBsvcs\fR(1), \fBndd\fR(1M), \fBrouteadm\fR(1M), \fBsvcadm\fR(1M),
-\fBread\fR(2), \fBwrite\fR(2), \fBbind\fR(3SOCKET), \fBconnect\fR(3SOCKET),
-\fBgetsockopt\fR(3SOCKET), \fBrecv\fR(3SOCKET), \fBrecvmsg\fR(3SOCKET),
-\fBsend\fR(3SOCKET), \fBsendmsg\fR(3SOCKET), \fBsetsockopt\fR(3SOCKET),
-\fBdefaultrouter\fR(4), \fBsmf\fR(5), \fBicmp6\fR(7P), \fBif_tcp\fR(7P),
-\fBipsec\fR(7P), \fBinet6\fR(7P), \fBrouting\fR(7P), \fBtcp\fR(7P),
-\fBudp\fR(7P)
-.sp
-.LP
-Deering, S. and Hinden, B. \fI RFC 2460, Internet Protocol, Version 6 (IPv6)
-Specification\fR. The Internet Society. December, 1998.
-.sp
-.LP
-Stevens, W., and Thomas, M. \fIRFC 2292, Advanced Sockets API for IPv6\fR.
-Network Working Group. February 1998.
-.SH DIAGNOSTICS
-A socket operation may fail with one of the following errors returned:
-.sp
-.ne 2
-.na
-\fB\fBEPROTONOSUPPORT\fR\fR
-.ad
-.RS 19n
-Unsupported protocol (for example, IPPROTO_RAW.)
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEACCES\fR\fR
-.ad
-.RS 19n
-A \fBbind()\fR operation was attempted with a "reserved" port number and the
-effective user ID of the process was not the privileged user.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEADDRINUSE\fR\fR
-.ad
-.RS 19n
-A \fBbind()\fR operation was attempted on a socket with a network address/port
-pair that has already been bound to another socket.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEADDRNOTAVAIL\fR\fR
-.ad
-.RS 19n
-A \fBbind()\fR operation was attempted for an address that is not configured on
-this machine.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEINVAL\fR\fR
-.ad
-.RS 19n
-A \fBsendmsg()\fR operation with a non-NULL \fBmsg_accrights\fR was attempted.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEINVAL\fR\fR
-.ad
-.RS 19n
-A \fBgetsockopt()\fR or \fBsetsockopt()\fR operation with an unknown socket
-option name was given.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEINVAL\fR\fR
-.ad
-.RS 19n
-A \fBgetsockopt()\fR or \fBsetsockopt()\fR operation was attempted with the
-\fBIPv6\fR option field improperly formed; an option field was shorter than the
-minimum value or longer than the option buffer provided; the value in the
-option field was invalid.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEISCONN\fR\fR
-.ad
-.RS 19n
-A \fBconnect()\fR operation was attempted on a socket on which a
-\fBconnect()\fR operation had already been performed, and the socket could not
-be successfully disconnected before making the new connection.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEISCONN\fR\fR
-.ad
-.RS 19n
-A \fBsendto()\fR or \fBsendmsg()\fR operation specifying an address to which
-the message should be sent was attempted on a socket on which a \fBconnect()\fR
-operation had already been performed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEMSGSIZE\fR\fR
-.ad
-.RS 19n
-A \fBsend()\fR, \fBsendto()\fR, or \fBsendmsg()\fR operation was attempted to
-send a datagram that was too large for an interface, but was not allowed to be
-fragmented (such as broadcasts).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBENETUNREACH\fR\fR
-.ad
-.RS 19n
-An attempt was made to establish a connection via \fBconnect()\fR, or to send a
-datagram by means of \fBsendto()\fR or \fBsendmsg()\fR, where there was no
-matching entry in the routing table; or if an \fBICMP\fR "\fBdestination
-unreachable\fR" message was received.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBENOTCONN\fR\fR
-.ad
-.RS 19n
-A \fBsend()\fR or \fBwrite()\fR operation, or a \fBsendto()\fR or
-\fBsendmsg()\fR operation not specifying an address to which the message should
-be sent, was attempted on a socket on which a \fBconnect()\fR operation had not
-already been performed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBENOBUFS\fR\fR
-.ad
-.RS 19n
-The system ran out of memory for fragmentation buffers or other internal data
-structures.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBENOMEM\fR\fR
-.ad
-.RS 19n
-The system was unable to allocate memory for an \fBIPv6\fR socket option or
-other internal data structures.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBENOPROTOOPT\fR\fR
-.ad
-.RS 19n
-An \fBIP\fR socket option was attempted on an \fBIPv6\fR socket, or an
-\fBIPv6\fR socket option was attempted on an \fBIP\fR socket.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBENOPROTOOPT\fR\fR
-.ad
-.RS 19n
-Invalid socket type for the option.
-.RE
-
-.SH NOTES
-Applications using the sockets \fBAPI\fR must use the Advanced Sockets
-\fBAPI\fR for \fBIPv6\fR (\fIRFC 2292\fR) to see elements of the inbound
-packet's \fBIPv6\fR header or extension headers.
-.sp
-.LP
-The \fBip6\fR service is managed by the service management facility,
-\fBsmf\fR(5), under the service identifier:
-.sp
-.in +2
-.nf
-svc:/network/initial:default
-.fi
-.in -2
-.sp
-
-.sp
-.LP
-Administrative actions on this service, such as enabling, disabling, or
-requesting restart, can be performed using \fBsvcadm\fR(1M). The service's
-status can be queried using the \fBsvcs\fR(1) command.
diff --git a/usr/src/man/man7p/ipsec.7p b/usr/src/man/man7p/ipsec.7p
deleted file mode 100644
index 75fe2f259e..0000000000
--- a/usr/src/man/man7p/ipsec.7p
+++ /dev/null
@@ -1,361 +0,0 @@
-'\" te
-.\" Copyright (C) 2009, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
-.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH IPSEC 7P "Sep 25, 2009"
-.SH NAME
-ipsec \- Internet Protocol Security Architecture
-.SH DESCRIPTION
-.sp
-.LP
-The \fBIP\fR Security Architecture (IPsec) provides protection for \fBIP\fR
-datagrams. The protection can include confidentiality, strong integrity of the
-data, partial sequence integrity (replay protection), and data authentication.
-\fBIPsec\fR is performed inside the \fBIP\fR processing, and it can be applied
-with or without the knowledge of an Internet application.
-.sp
-.LP
-IPsec applies to both IPv4 and IPv6. See \fBip\fR(7P) and \fBip6\fR(7P).
-.SS "Protection Mechanisms"
-.sp
-.LP
-IPsec provides two mechanisms for protecting data. The Authentication Header
-(\fBAH\fR) provides strong integrity, replay protection, and data
-authentication. \fBAH\fR protects as much of the \fBIP\fR datagram as it can.
-\fBAH\fR cannot protect fields that change nondeterministically between sender
-and receiver.
-.sp
-.LP
-The Encapsulating Security Payload (\fBESP\fR) provides confidentiality over
-what it encapsulates, as well as the services that \fBAH\fR provides, but only
-over that which it encapsulates. \fBESP\fR's authentication services are
-optional, which allow \fBESP\fR and \fBAH\fR to be used together on the same
-datagram without redundancy.
-.sp
-.LP
-Authentication and encryption algorithms are used for IPsec. Authentication
-algorithms produce an integrity checksum value or "digest"based on the data and
-a key. Encryption algorithms operate on data in units of a "block size".
-.SS "NAT Traversal"
-.sp
-.LP
-IPsec's ESP can also encapsulate itself in UDP if IKE (see \fBin.iked\fR(1M))
-discovers a Network Address Translator (NAT) between two communicating
-endpoints.
-.sp
-.LP
-A UDP socket can be specified as a NAT-Traversal endpoint. See \fBudp\fR(7P)
-for details.
-.SS "Security Associations"
-.sp
-.LP
-\fBAH\fR and \fBESP\fR use Security Associations (\fBSA\fR). SA's are entities
-that specify security properties from one host to another. Two communicating
-machines require two \fBSA\fRs (at a minimum) to communicate securely. However,
-communicating machines that use multicast can share the same multicast
-\fBSA\fR. \fBSA\fRs are managed through the \fBpf_key\fR(7P) interface. For
-IPv4, automatic \fBSA\fR management is available through the Internet Key
-Exchange (IKE), as implemented by \fBin.iked\fR(1M). A command-line front-end
-is available by means of \fBipseckey\fR(1M). An IPsec \fBSA\fR is identified by
-a tuple of <\fBAH\fR or \fBESP\fR, destination \fBIP\fR address, and
-\fBSPI\fR>. The Security Parameters Index (\fBSPI\fR) is an arbitrary 32-bit
-value that is transmitted on the wire with an \fBAH\fR or \fBESP\fR packet. See
-\fBipsecah\fR(7P) or \fBipsecesp\fR(7P) for an explanation about where the
-\fBSPI\fR falls in a protected packet.
-.SS "Protection Policy and Enforcement Mechanisms"
-.sp
-.LP
-Mechanism and policy are separate. The policy for applying IPsec is enforced on
-a system-wide or per-socket level. Configuring system-wide policy and
-per-tunnel policy (see Transport Mode and Tunnel Mode sections) is done via the
-\fBipsecconf\fR(1M) command. Configuring per-socket policy is discussed later
-in this section.
-.sp
-.LP
-System-wide IPsec policy is applied to incoming and outgoing datagrams. Some
-additional rules can be applied to outgoing datagrams because of the additional
-data known by the system. Inbound datagrams can be accepted or dropped. The
-decision to drop or accept an inbound datagram is based on several criteria
-which sometimes overlap or conflict. Conflict resolution is resolved by which
-rule is parsed first, with one exception: if a policy entry states that traffic
-should bypass all other policy, it is automatically be accepted. Outbound
-datagrams are sent with or without protection. Protection may (or may not)
-indicate specific algorithms. If policy normally would protect a datagram, it
-can be bypassed either by an exception in system-wide policy or by requesting a
-bypass in per-socket policy.
-.sp
-.LP
-Intra-machine traffic policies are enforced, but actual security mechanisms are
-not applied. Instead, the outbound policy on an intra-machine packet translates
-into an inbound packet with those mechanisms applied.
-.sp
-.LP
-IPsec policy is enforced in the \fBip\fR(7P) driver. Several \fBndd\fR tunables
-for \fB/dev/ip\fR affect policy enforcement, including:
-.sp
-.ne 2
-.na
-\fBicmp_accept_clear_messages\fR
-.ad
-.RS 30n
-If equal to 1 (the default), allow certain cleartext icmp messages to bypass
-policy. For ICMP echo requests ("ping"messages), protect the response like the
-request. If zero, treat icmp messages like other IP traffic.
-.RE
-
-.sp
-.ne 2
-.na
-\fBigmp_accept_clear_messages\fR
-.ad
-.RS 30n
-If 1, allow inbound cleartext IGMP messages to bypass IPsec policy.
-.RE
-
-.sp
-.ne 2
-.na
-\fBpim_accept_clear_messages\fR
-.ad
-.RS 30n
-If 1, allow inbound cleartext PIM messages to bypass IPsec policy.
-.RE
-
-.sp
-.ne 2
-.na
-\fBipsec_policy_log_interval\fR
-.ad
-.RS 30n
-IPsec logs policy failures and errors to \fB/var/adm/messages\fR. To prevent
-syslog from being overloaded, the IPsec kernel modules limit the rate at which
-errors can be logged. You can query/set ipsec_policy_log_interval using
-\fBndd\fR(1M). The value is in milliseconds. Only one message can be logged per
-interval.
-.RE
-
-.SS "Transport Mode and Tunnel Mode"
-.sp
-.LP
-If IPsec is used on a tunnel, Tunnel Mode IPsec can be used to protect distinct
-flows within a tunnel or to cause packets that do not match per-tunnel policy
-to drop. System-wide policy is always Transport Mode. A tunnel can use
-Transport Mode IPsec or Tunnel Mode IPsec.
-.SS "Per-Socket Policy"
-.sp
-.LP
-The \fBIP_SEC_OPT\fR or \fBIPV6_SEC_OPT\fR socket option is used to set
-per-socket IPsec policy. The structure used for an \fBIP_SEC_OPT\fR request
-is:
-.sp
-.in +2
-.nf
-typedef struct ipsec_req {
- uint_t ipsr_ah_req; /* AH request */
- uint_t ipsr_esp_req; /* ESP request */
- uint_t ipsr_self_encap_req; /* Self-Encap request */
- uint8_t ipsr_auth_alg; /* Auth algs for AH */
- uint8_t ipsr_esp_alg; /* Encr algs for ESP */
- uint8_t ipsr_esp_auth_alg; /* Auth algs for ESP */
-} ipsec_req_t;
-.fi
-.in -2
-
-.sp
-.LP
-The IPsec request has fields for both \fBAH\fR and \fBESP\fR. Algorithms may or
-may not be specified. The actual request for \fBAH\fR or \fBESP\fR services can
-take one of the following values:
-.sp
-.ne 2
-.na
-\fB\fBIPSEC_PREF_NEVER\fR\fR
-.ad
-.RS 23n
-Bypass all policy. Only the superuser may request this service.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBIPSEC_PREF_REQUIRED\fR\fR
-.ad
-.RS 23n
-Regardless of other policy, require the use of the IPsec service.
-.RE
-
-.sp
-.LP
-The following value can be logically ORed to an \fBIPSEC_PREF_REQUIRED\fR
-value:
-.sp
-.ne 2
-.na
-\fB\fBIPSEC_PREF_UNIQUE\fR\fR
-.ad
-.RS 21n
-Regardless of other policy, enforce a unique \fBSA\fR for traffic originating
-from this socket.
-.RE
-
-.sp
-.LP
-In the event \fBIP\fR options not normally encapsulated by \fBESP\fR need to
-be, the \fBipsec_self_encap_req\fR is used to add an additional \fBIP\fR header
-outside the original one. Algorithm values from <\fBnet/pfkeyv2.h\fR> are as
-follows:
-.sp
-.ne 2
-.na
-\fB\fBSADB_AALG_MD5HMAC\fR\fR
-.ad
-.RS 24n
-Uses the MD5-HMAC (\fIRFC 2403\fR) algorithm for authentication.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSADB_AALG_SHA1HMAC\fR\fR
-.ad
-.RS 24n
-Uses the SHA1-HMAC (\fIRFC 2404)\fR algorithm for authentication.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSADB_EALG_DESCBC\fR\fR
-.ad
-.RS 24n
-Uses the \fBDES\fR (\fIRFC 2405\fR) algorithm for encryption.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSADB_EALG_3DESCBC\fR\fR
-.ad
-.RS 24n
-Uses the Triple \fBDES \fR (\fIRFC 2451\fR) algorithm for encryption.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSADB_EALG_BLOWFISH\fR\fR
-.ad
-.RS 24n
-Uses the Blowfish (\fIRFC 2451\fR) algorithm for encryption.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSADB_EALG_AES\fR\fR
-.ad
-.RS 24n
-Uses the Advanced Encryption Standard algorithm for encryption.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSADB_AALG_SHA256HMAC\fR\fR
-.ad
-.br
-.na
-\fB\fBSADB_AALG_SHA384HMAC\fR\fR
-.ad
-.br
-.na
-\fB\fBSADB_AALG_SHA512HMAC\fR\fR
-.ad
-.RS 24n
-Uses the SHA2 hash algorithms with HMAC (\fIRFC 4868\fR)for authentication.
-.RE
-
-.sp
-.LP
-An application should use either the \fBgetsockopt\fR(3SOCKET) or the
-\fBsetsockopt\fR(3SOCKET) call to manipulate IPsec requests. For example:
-.sp
-.in +2
-.nf
-#include <sys/socket.h>
-#include <netinet/in.h>
-#include <net/pfkeyv2.h> /* For SADB_*ALG_* */
-/* .... socket setup skipped */
-rc = setsockopt(s, IPPROTO_IP, IP_SEC_OPT,
- (const char *)&ipsec_req, sizeof (ipsec_req_t));
-.fi
-.in -2
-
-.SH SECURITY
-.sp
-.LP
-While IPsec is an effective tool in securing network traffic, it will not make
-security problems disappear. Security issues beyond the mechanisms that IPsec
-offers may be discussed in similar "Security" or "Security Consideration"
-sections within individual reference manual pages.
-.sp
-.LP
-While a non-root user cannot bypass IPsec, a non-root user can set policy to be
-different from the system-wide policy. For ways to prevent this, consult the
-\fBndd\fR(1M) variables in \fB/dev/ip\fR.
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability Committed
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBin.iked\fR(1M), \fBipsecconf\fR(1M), \fBipseckey\fR(1M), \fBndd\fR(1M),
-\fBgetsockopt\fR(3SOCKET), \fBsetsockopt\fR(3SOCKET), \fBattributes\fR(5),
-\fBinet\fR(7P), \fBip\fR(7P), \fBip6\fR(7P), \fBipsecah\fR(7P),
-\fBipsecesp\fR(7P), \fBpf_key\fR(7P), \fBudp\fR(7P)
-.sp
-.LP
-Kent, S., and Atkinson, R., \fIRFC 2401, Security Architecture for the Internet
-Protocol\fR, The Internet Society, 1998.
-.sp
-.LP
-Kent, S. and Atkinson, R., \fIRFC 2406, IP Encapsulating Security Payload
-(ESP)\fR, The Internet Society, 1998.
-.sp
-.LP
-Madson, C., and Doraswamy, N., \fIRFC 2405, The ESP DES-CBC Cipher Algorithm
-with Explicit IV\fR, The Internet Society, 1998.
-.sp
-.LP
-Madsen, C. and Glenn, R., \fIRFC 2403, The Use of HMAC-MD5-96 within ESP and
-AH\fR, The Internet Society, 1998.
-.sp
-.LP
-Madsen, C. and Glenn, R., \fIRFC 2404, The Use of HMAC-SHA-1-96 within ESP and
-AH\fR, The Internet Society, 1998.
-.sp
-.LP
-Pereira, R. and Adams, R., \fIRFC 2451, The ESP CBC-Mode Cipher Algorithms\fR,
-The Internet Society, 1998.
-.sp
-.LP
-Kelly, S. and Frankel, S., \fIRFC 4868, Using HMAC-SHA-256, HMAC-SHA-384, and
-HMAC-SHA-512 with IPsec\fR, 2007.
-.sp
-.LP
-Huttunen, A., Swander, B., Volpe, V., DiBurro, L., Stenberg, \fIM., RFC 3948,
-UDP Encapsulation of IPsec ESP Packets\fR, The Internet Society, 2005.
diff --git a/usr/src/man/man7p/ipsecah.7p b/usr/src/man/man7p/ipsecah.7p
deleted file mode 100644
index 428cc3ea90..0000000000
--- a/usr/src/man/man7p/ipsecah.7p
+++ /dev/null
@@ -1,72 +0,0 @@
-'\" te
-.\" Copyright (C) 2009, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
-.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH IPSECAH 7P "Sep 25, 2009"
-.SH NAME
-ipsecah, AH \- IPsec Authentication Header
-.SH SYNOPSIS
-.LP
-.nf
-\fBdrv/ipsecah\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBipsecah\fR module (\fBAH\fR) provides strong integrity, authentication,
-and partial sequence integrity (replay protection) to \fBIP\fR datagrams.
-\fBAH\fR protects the parts of the \fBIP\fR datagram that can be predicted by
-the sender as it will be received by the receiver. For example, the \fBIP\fR
-\fBTTL\fR field is not a predictable field, and is not protected by \fBAH\fR.
-.sp
-.LP
-\fBAH\fR is inserted between the \fBIP\fR header and the transport header. The
-transport header can be \fBTCP\fR, \fBUDP\fR, \fBICMP\fR, or another \fBIP\fR
-header, if tunnels are being used.
-.SS "AH Device"
-.sp
-.LP
-AH is implemented as a module that is auto-pushed on top of IP. The entry
-\fB/dev/ipsecah\fR is used for tuning AH with \fBndd\fR(1M).
-.SS "Authentication Algorithms"
-.sp
-.LP
-Current authentication algorithms supported include HMAC-MD5 and HMAC-SHA-1.
-Each authentication algorithm has its own key size and key format properties.
-You can obtain a list of authentication algorithms and their properties by
-using the \fBipsecalgs\fR(1M) command. You can also use the functions described
-in the \fBgetipsecalgbyname\fR(3NSL) man page to retrieve the properties of
-algorithms.
-.SS "Security Considerations"
-.sp
-.LP
-Without replay protection enabled, \fBAH\fR is vulnerable to replay attacks.
-\fBAH\fR does not protect against eavesdropping. Data protected with \fBAH\fR
-can still be seen by an adversary.
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-Interface Stability Committed
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBipsecalgs\fR(1M), \fBipsecconf\fR(1M), \fBndd\fR(1M), \fBattributes\fR(5),
-\fBgetipsecalgbyname\fR(3NSL), \fBip\fR(7P), \fBipsec\fR(7P),
-\fBipsecesp\fR(7P)
-.sp
-.LP
-Kent, S. and Atkinson, R. \fIRFC 2402, IP Authentication Header\fR, The
-Internet Society, 1998.
diff --git a/usr/src/man/man7p/ipsecesp.7p b/usr/src/man/man7p/ipsecesp.7p
deleted file mode 100644
index 9123e58bc9..0000000000
--- a/usr/src/man/man7p/ipsecesp.7p
+++ /dev/null
@@ -1,81 +0,0 @@
-'\" te
-.\" Copyright (C) 2003, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH IPSECESP 7P "May 18, 2003"
-.SH NAME
-ipsecesp, ESP \- IPsec Encapsulating Security Payload
-.SH SYNOPSIS
-.LP
-.nf
-\fBdrv/ipsecesp\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-The \fBipsecesp\fR module provides confidentiality, integrity, authentication,
-and partial sequence integrity (replay protection) to \fBIP\fR datagrams. The
-encapsulating security payload (\fBESP\fR) encapsulates its data, enabling it
-to protect data that follows in the datagram. For \fBTCP\fR packets, \fBESP\fR
-encapsulates the \fBTCP\fR header and its data only. If the packet is an
-\fBIP\fR in \fBIP\fR datagram, \fBESP\fR protects the inner \fBIP\fR datagram.
-Per-socket policy allows "self-encapsulation" so \fBESP\fR can encapsulate
-\fBIP\fR options when necessary. See \fBipsec\fR(7P).
-.sp
-.LP
-Unlike the authentication header (\fBAH\fR), \fBESP\fR allows multiple
-varieties of datagram protection. (Using a single datagram protection form can
-expose vulnerabilities.) For example, only \fBESP\fR can be used to provide
-confidentiality. But protecting confidentiality alone exposes vulnerabilities
-in both replay attacks and cut-and-paste attacks. Similarly, if \fBESP\fR
-protects only integrity and does not fully protect against eavesdropping, it
-may provide weaker protection than \fBAH\fR. See \fBipsecah\fR(7P).
-.SS "ESP Device"
-.sp
-.LP
-\fBESP\fR is implemented as a module that is auto-pushed on top of \fBIP\fR.
-Use the \fB/dev/ipsecesp\fR entry to tune \fBESP\fR with \fBndd\fR(1M).
-.SS "Algorithms"
-.sp
-.LP
-\fBESP\fRuses encryption and authentication algorithms. Authentication
-algorithms include HMAC-MD5 and HMAC-SHA-1. Encryption algorithms include DES,
-Triple-DES, Blowfish and AES. Each authentication and encryption algorithm
-contain key size and key format properties. You can obtain a list of
-authentication and encryption algorithms and their properties by using the
-\fBipsecalgs\fR(1M) command. You can also use the functions described in the
-\fBgetipsecalgbyname\fR(3NSL) man page to retrieve the properties of
-algorithms. Because of export laws in the United States, not all encryption
-algorithms are available outside of the United States.
-.SS "Security Considerations"
-.sp
-.LP
-\fBESP\fR without authentication exposes vulnerabilities to cut-and-paste
-cryptographic attacks as well as eavesdropping attacks. Like AH, \fBESP\fR is
-vulnerable to eavesdropping when used without confidentiality.
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBipsecalgs\fR(1M), \fBipsecconf\fR(1M), \fBndd\fR(1M), \fBattributes\fR(5),
-\fBgetipsecalgbyname\fR(3NSL), \fBip\fR(7P), \fBipsec\fR(7P), \fBipsecah\fR(7P)
-.sp
-.LP
-Kent, S. and Atkinson, R. \fIRFC 2406, IP Encapsulating Security Payload
-(ESP)\fR, The Internet Society, 1998.
diff --git a/usr/src/man/man7p/ndp.7p b/usr/src/man/man7p/ndp.7p
deleted file mode 100644
index 28d4d2a1d4..0000000000
--- a/usr/src/man/man7p/ndp.7p
+++ /dev/null
@@ -1,355 +0,0 @@
-.\"
-.\" This file and its contents are supplied under the terms of the
-.\" Common Development and Distribution License ("CDDL"), version 1.0.
-.\" You may only use this file in accordance with the terms of version
-.\" 1.0 of the CDDL.
-.\"
-.\" A full copy of the text of the CDDL should have accompanied this
-.\" source. A copy of the CDDL is also available via the Internet at
-.\" http://www.illumos.org/license/CDDL.
-.\"
-.\"
-.\" Copyright (c) 2015, Joyent, Inc. All rights reserved.
-.\"
-.Dd Sep 02, 2015
-.Dt NDP 7P
-.Os
-.Sh NAME
-.Nm ndp ,
-.Nm NDP
-.Nd Neighbor Discovery Protocol
-.Sh SYNOPSIS
-.In sys/socket.h
-.In sys/sockio.h
-.In netinet/in.h
-.In net/if.h
-.Bd -literal
-s = socket(PF_INET6, SOCK_DGRAM, 0);
-
-struct lifreq lifr;
-ioctl(s, SIOCLIFGETND, &lifr);
-ioctl(s, SIOCLIFSETND, &lifr);
-ioctl(s, SIOCLIFDELND, &lifr);
-.Ed
-.Sh DESCRIPTION
-The Neighbor Discovery Protocol (NDP) is a protocol used to distribute and
-request information about neighboring IPv6 systems on the local network, much
-like
-.Xr ARP 7P
-for IPv4.
-NDP is also responsible for spreading information about the network gateway and
-how hosts should configure themselves
-.Pq see Xr in.ndpd 1M for more on how this happens .
-.Sh APPLICATION PROGRAMMING INTERFACE
-The operating system provides several ioctls to help manipulate the mappings
-obtained through NDP.
-They are
-.Sy SIOCLIFGETND ,
-.Sy SIOCLIFSETND ,
-and
-.Sy SIOCLIFDELND ,
-for getting, setting, and deleting respectively.
-Each of these ioctls takes a
-.Vt struct lifreq
-.Pq see Xr if 7P for details ,
-where the
-.Fa lifr_lifru
-field is of type
-.Vt struct lif_nd_req :
-.Bd -literal -offset 2m
-typedef struct lif_nd_req {
- struct sockaddr_storage lnr_addr;
- uint8_t lnr_state_create;
- uint8_t lnr_state_same_lla;
- uint8_t lnr_state_diff_lla;
- int lnr_hdw_len;
- int lnr_flags;
- int lnr_pad0;
- char lnr_hdw_addr[ND_MAX_HDW_LEN];
-} lif_nd_req_t;
-.Ed
-.Pp
-The
-.Fa lnr_addr
-field should be filled in with an IPv6 address
-.Pq see Xr sockaddr_in6 3SOCKET ,
-and the
-.Fa lnr_hdw_addr
-is the link-layer address of length
-.Fa lnr_hdw_len .
-.Pp
-State flags for
-.Fa lnr_state_create ,
-.Fa lnr_state_same_lla ,
-and
-.Fa lnr_state_diff_lla
-can be set to one of the following values:
-.Bl -tag -offset indent -width 16m
-.It Sy ND_UNCHANGED
-For ioctls that don't modify state
-.It Sy ND_INCOMPLETE
-Address resolution is currently in progress
-.It Sy ND_REACHABLE
-The link-layer address has recently been reachable
-.It Sy ND_STALE
-The link-layer address may be unreachable, and the system shouldn't do anything
-.It Sy ND_DELAY
-This entry hasn't yet started sending Neighbor Solicitations
-.It Sy ND_PROBE
-The operating system is currently sending out Neighbor Solicitations for the address
-.It Sy ND_UNREACHABLE
-The link-layer address is unreachable, and this entry is going to be deleted.
-.El
-.sp
-When creating a new entry, the only valid values for
-.Fa lnr_state_create
-are
-.Sy ND_REACHABLE
-and
-.Sy ND_STALE .
-Any other value will return
-.Sy EINVAL .
-The
-.Fa lnr_state_same_lla
-and
-.Fa lnr_state_diff_lla
-fields are reserved for future use and can be safely set to
-.Sy ND_UNCHANGED
-and
-.Sy ND_STALE
-respectively.
-.Pp
-Flags that can be placed in
-.Fa lnr_flags
-are:
-.Bl -tag -offset indent -width 16m
-.It Sy NDF_ISROUTER_ON
-Mark this entry as being a router.
-This will cause Neighbor Advertisements for this address to be sent with the
-R-bit (Router).
-.It Sy NDF_ISROUTER_OFF
-If this entry was flagged as being a router, remove the flag.
-.It Sy NDF_ANYCAST_ON
-Mark this entry as being for an anycast address.
-This prevents sending Neighbor Advertisements with the O-bit (Override).
-.It Sy NDF_ANYCAST_OFF
-If this entry was flagged as an anycast address, remove the flag.
-.It Sy NDF_STATIC
-Prevent this entry from being deleted by the system.
-.El
-.sp
-When using
-.Sy SIOCLIFGETND ,
-these flags represent the current state of the corresponding Neighbor Cache
-Entry.
-When using
-.Sy SIOCLIFSETND ,
-these flags represent what changes should be applied to the underlying entry.
-.Pp
-The only fields that need to be set for the
-.Sy SIOCLIFGETND
-or
-.Sy SIOCLIFDELND
-ioctls are
-.Fa lifr_name
-and
-.Fa lnr_addr .
-All other fields should be zeroed out.
-After successfully getting an entry, the other fields will be filled in.
-When using
-.Sy SIOCLIFSETND ,
-all fields should be set to an appropriate value, as described above, with the
-exception of
-.Fa lnr_pad0 ,
-which is unused and only exists for padding purposes.
-.Pp
-After performing the ioctl, the following errors may be returned through the
-global
-.Sy errno
-variable:
-.Bl -tag -offset indent -width 16m
-.It Sy EAFNOSUPPORT
-A non-IPv6 socket was used to perform the ioctl.
-.It Sy EINVAL
-The request contents were bad.
-This could be because conflicting flags were used, the specified interface
-wasn't logical unit zero, or another reason.
-.It Sy ENOMEM
-The system ran out of memory for internal data structures.
-.It Sy ENXIO
-The specified interface does not exist.
-.It Sy EPERM
-The caller does not have permission to modify the Neighbor Cache Entries
-associated with this interface.
-They may be lacking the
-.Sy PRIV_SYS_NET_CONFIG
-privilege
-.Po see Xr privileges 5 Pc ,
-or the interface is managed by IPMP (IP Network Multipathing).
-.It Sy ESRCH
-There is no entry matching the specified address.
-.El
-.Sh EXAMPLES
-The following examples demonstrate how to get and set NDP mappings using the
-provided ioctls.
-They can be compiled by using a C compiler and linking against the sockets
-library.
-.Ss Example 1: Getting a mapping
-.Bd -literal -offset indent
-$ gcc -Wall -lsocket -o get get.c
-$ cat get.c
-/*
- * Example of getting a mapping for a node name.
- */
-#include <strings.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <sys/socket.h>
-#include <sys/sockio.h>
-#include <unistd.h>
-#include <netdb.h>
-#include <net/if.h>
-
-int get(char *host) {
- struct lifreq lifr;
- struct addrinfo hints, *serverinfo, *p;
- int err, s;
-
- bzero(&hints, sizeof (struct addrinfo));
- hints.ai_family = PF_INET6;
- hints.ai_protocol = IPPROTO_IPV6;
-
- if ((err = getaddrinfo(host, NULL, &hints, &serverinfo)) != 0) {
- (void) fprintf(stderr, "Unable to lookup %s: %s\\n", host,
- gai_strerror(err));
- return (1);
- }
-
- s = socket(AF_INET6, SOCK_DGRAM, 0);
- if (s < 0) {
- perror("Failed to open IPv6 socket");
- return (1);
- }
-
- for (p = serverinfo; p != NULL; p = p->ai_next) {
- /* Zero out structure */
- bzero(&lifr, sizeof (struct lifreq));
- (void) strlcpy(lifr.lifr_name, "net0",
- sizeof (lifr.lifr_name));
- (void) memcpy(&lifr.lifr_nd.lnr_addr, p->ai_addr,
- sizeof (struct sockaddr_storage));
-
- /* Get mapping */
- if (ioctl(s, SIOCLIFGETND, &lifr) < 0) {
- perror("Unable to get NDP mapping");
- continue;
- }
-
- /*
- * lifr.lifr_nd.lnr_hdw_addr now contains the MAC address,
- * and can be used as desired.
- */
- }
-
- /*
- * Clean up linked list.
- */
- freeaddrinfo(serverinfo);
- return (0);
-}
-
-int main(int argc, char *argv[]) {
- if (argc < 2)
- exit(1);
- return (get(argv[1]));
-}
-.Ed
-.sp
-Deleting a mapping would work similarly, except that instead of using
-.Sy SIOCLIFGETND ,
-you would instead use the
-.Sy SIOCLIFDELND
-ioctl.
-.Ss Example 2: Adding a mapping
-.Bd -literal -offset indent
-$ gcc -Wall -lsocket -o set set.c
-$ cat set.c
-/*
- * Example of setting a mapping to an all-zero Ethernet address.
- */
-#include <strings.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <sys/socket.h>
-#include <sys/sockio.h>
-#include <unistd.h>
-#include <netdb.h>
-#include <net/if.h>
-
-int set(char *host) {
- struct lifreq lifr;
- struct addrinfo hints, *serverinfo, *p;
- int err, s;
-
- bzero(&hints, sizeof (struct addrinfo));
- hints.ai_family = PF_INET6;
- hints.ai_protocol = IPPROTO_IPV6;
-
- if ((err = getaddrinfo(host, NULL, &hints, &serverinfo)) != 0) {
- (void) fprintf(stderr, "Unable to lookup %s: %s\\n", host,
- gai_strerror(err));
- return (1);
- }
-
- s = socket(AF_INET6, SOCK_DGRAM, 0);
- if (s < 0) {
- perror("Failed to open IPv6 socket");
- return (1);
- }
-
- for (p = serverinfo; p != NULL; p = p->ai_next) {
- /* Zero out structure */
- bzero(&lifr, sizeof (struct lifreq));
- (void) strlcpy(lifr.lifr_name, "net0",
- sizeof (lifr.lifr_name));
- (void) memcpy(&lifr.lifr_nd.lnr_addr, p->ai_addr,
- sizeof (struct sockaddr_storage));
-
- lifr.lifr_nd.lnr_state_create = ND_REACHABLE;
- lifr.lifr_nd.lnr_flags = NDF_STATIC;
-
- /* Get mapping */
- if (ioctl(s, SIOCLIFSETND, &lifr) < 0) {
- perror("Unable to set NDP mapping");
- continue;
- }
- }
-
- /*
- * Clean up linked list.
- */
- freeaddrinfo(serverinfo);
- return (0);
-}
-
-int main(int argc, char *argv[]) {
- if (argc < 2)
- exit(1);
- return (set(argv[1]));
-}
-.Ed
-.Sh SEE ALSO
-.Xr ifconfig 1M ,
-.Xr in.ndpd 1M ,
-.Xr ndp 1M ,
-.Xr sockaddr_in6 3SOCKET ,
-.Xr privileges 5
-.Rs
-.%A Narten, T.
-.%A Nordmark, E.
-.%A Simpson, W.
-.%A Soliman, H.
-.%R Neighbor Discovery for IP version 6
-.%T RFC 4861
-.%D September 2007
-.Re
diff --git a/usr/src/man/man7p/pf_key.7p b/usr/src/man/man7p/pf_key.7p
deleted file mode 100644
index 1c904048f4..0000000000
--- a/usr/src/man/man7p/pf_key.7p
+++ /dev/null
@@ -1,946 +0,0 @@
-'\" te
-.\" Copyright (C) 2008, Sun Microsystems, Inc. All Rights Reserved
-.\" Copyright 2018, Joyent, Inc.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH PF_KEY 7P "December 28, 2020"
-.SH NAME
-pf_key \- Security association database interface
-.SH SYNOPSIS
-.nf
-#include <sys/types.h>
-#include <sys/socket.h>
-#include <net/pfkeyv2.h>
-
-
-
-\fBint\fR \fBsocket\fR(\fB\fR\fIPF_KEY\fR,SOCK_RAW,\fIPF_KEY_V2\fR);
-.fi
-
-.SH DESCRIPTION
-Keying information for IPsec security services is maintained in security
-association databases (\fBSADB\fRs). The security associations (\fBSA\fRs) are
-used to protect both inbound and outbound packets.
-.sp
-.LP
-A user process (or possibly multiple co-operating processes) maintains
-\fBSADB\fRs by sending messages over a special kind of socket. This is
-analogous to the method described in \fBroute\fR(7P). Only a superuser may
-access an \fBSADB\fR.
-.sp
-.LP
-SunOS applications that use PF_KEY include \fBipseckey\fR(1M) and
-\fBin.iked\fR(1M).
-.sp
-.LP
-The operating system may spontaneously send pf_key messages to listening
-processes, such as a request for a new \fBSA\fR for an outbound datagram or to
-report the expiration of an existing \fBSA\fR.
-.sp
-.LP
-One opens the channel for passing \fBSADB\fR control messages by using the
-socket call shown in the section above. More than one key socket can be open
-per system.
-.sp
-.LP
-Messages are formed by a small base header, followed by zero or more extension
-messages, some of which require additional data following them. The base
-message and all extensions must be eight-byte aligned. An example message is
-the \fBGET\fR message, which requires the base header, the \fBSA \fRextension,
-and the \fBADDRESS_DST\fR extension.
-.SS "Messages"
-Messages include:
-.sp
-.in +2
-.nf
-#define SADB_GETSPI /* Get a new SPI value from the system. */
-#define SADB_UPDATE /* Update an SA. */
-#define SADB_ADD /* Add a fully-formed SA. */
-#define SADB_DELETE /* Delete an SA. */
-#define SADB_GET /* Get an SA */
-#define SADB_ACQUIRE /* Kernel needs a new SA. */
-#define SADB_REGISTER /* Regis. to receive ACQUIRE msgs. */
-#define SADB_EXPIRE /* SA has expired. */
-#define SADB_FLUSH /* Flush all SAs. */
-#define SADB_DUMP /* Get all SAs. (Unreliable) */
-#define SADB_X_PROMISC /* Listen promiscuously */
-#define SADB_X_INVERSE_ACQUIRE /* Query kernel policy,
- get an ACQUIRE in return. */
-#define SADB_X_UPDATEPAIR /* Update an SA and its pair SA */
-#define SADB_X_DELPAIR /* Delete an SA pair. */
-.fi
-.in -2
-
-.sp
-.LP
-The base message header consists of:
-.sp
-.in +2
-.nf
-struct sadb_msg {
- uint8_t sadb_msg_version; /* Set to PF_KEY_V2, for compat. */
- uint8_t sadb_msg_type; /* Msg. type */
- uint8_t sadb_msg_errno; /* Why message failed */
- uint8_t sadb_msg_satype; /* Which security service */
- uint16_t sadb_msg_len; /* Length in 8-byte units */
- uint16_t sadb_msg_reserved; /* Zero out */
- #define sadb_x_msg_diagnostic sadb_msg_reserved
- /* Extended diagnostics for errors */
- uint32_t sadb_msg_seq; /* For msg. originator */
- uint32_t sadb_msg_pid; /* ID originator */
-};
-.fi
-.in -2
-
-.sp
-.LP
-Extension types include:
-.sp
-.in +2
-.nf
-#define SADB_EXT_SA /* SA info */
-#define SADB_EXT_LIFETIME_HARD /* Hard lifetime */
-#define SADB_EXT_LIFETIME_SOFT /* Soft lifetime */
-#define SADB_EXT_ADDRESS_SRC /* Source address */
-#define SADB_EXT_ADDRESS_DST /* Destination address */
-#define SADB_EXT_ADDRESS_PROXY /* Proxy address - DEPRECATED */
-#define SADB_EXT_KEY_AUTH /* Authen. key */
-#define SADB_EXT_KEY_ENCRYPT /* Encryption key */
-#define SADB_EXT_IDENTITY_SRC /* Source certif. ID */
-#define SADB_EXT_IDENTITY_DST /* Destination certif. ID */
-#define SADB_EXT_SENSITIVITY /* Sensitivity info */
-#define SADB_EXT_PROPOSAL /* Security proposal */
-#define SADB_EXT_SUPPORTED_AUTH /* Supported authen. algo's */
-#define SADB_EXT_SUPPORTED_ENCRYPT /* Supported encryption algo's */
-#define SADB_EXT_SPIRANGE /* Range of possible SPIs *
-#define SADB_X_EXT_EREG /* Reg. for extended ACQUIRE */
-#define SADB_X_EXT_EPROP /* Extended ACQUIRE proposals */
-#define SADB_X_EXT_KM_COOKIE /* Indicates which KM derived SA. */
-#define SADB_X_EXT_ADDRESS_NATT_LOC /* NAT-Traversal local (my public) */
-#define SADB_X_EXT_ADDRESS_NATT_REM /* NAT-T remote (peer's private) */
-#define SADB_X_EXT_ADDRESS_INNER_SRC /* Tunnel-mode inner source */
-#define SADB_X_EXT_ADDRESS_INNER_DST /* Tunnel-mode inner dest */
-#define SADB_X_EXT_PAIR /* SA pair extension.
-.fi
-.in -2
-
-.sp
-.LP
-Security Association Information Extension flags:
-.sp
-.in +2
-.nf
-#define SADB_SAFLAGS_PFS 0x1 /* Perfect forward secrecy? */
-#define SADB_SAFLAGS_NOREPLAY 0x2 /* Replay field NOT PRESENT. */
-#define SADB_X_SAFLAGS_USED 0x80000000 /* SA used/not used */
-#define SADB_X_SAFLAGS_UNIQUE 0x40000000 /* SA unique/reusable */
-#define SADB_X_SAFLAGS_AALG1 0x20000000 /* Auth-alg specif. flag 1 */
-#define SADB_X_SAFLAGS_AALG2 0x10000000 /* Auth-alg specif. flag 2 */
-#define SADB_X_SAFLAGS_EALG1 0x8000000 /* Encr-alg specif. flag 1 */
-#define SADB_X_SAFLAGS_EALG2 0x4000000 /* Encr-alg specif. flag 2 */
-#define SADB_X_SAFLAGS_KM1 0x2000000 /* Key mgmt. specif. flag 1 */
-#define SADB_X_SAFLAGS_KM2 0x1000000 /* Key mgmt. specif. flag 2 */
-#define SADB_X_SAFLAGS_KM3 0x800000 /* Key mgmt. specif. flag 3 */
-#define SADB_X_SAFLAGS_KM4 0x400000 /* Key mgmt. specif. flag 4 */
-#define SADB_X_SAFLAGS_KRES1 0x200000 /* Reserved by the kernel */
-#define SADB_X_SAFLAGS_NATT_LOC 0x100000 /* this has a natted srcSA */
-#define SADB_X_SAFLAGS_NATT_REM 0x80000 /* this has a natted dstSA */
-#define SADB_X_SAFLAGS_KRES2 0x40000 /* Reserved by the kernel */
-#define SADB_X_SAFLAGS_TUNNEL 0x20000 /* tunnel mode */
-#define SADB_X_SAFLAGS_PAIRED 0x10000 /* inbound/outbound pair*/
-#define SADB_X_SAFLAGS_OUTBOUND 0x8000 /* SA direction bit */
-#define SADB_X_SAFLAGS_INBOUND 0x4000 /* SA direction bit */
-.fi
-.in -2
-
-.sp
-.LP
-Extension headers include:
-.SS "Generic Extension Header"
-.in +2
-.nf
-struct sadb_ext {
- uint16_t sadb_ext_len; /* In 64-bit words, inclusive */
- uint16_t sadb_ext_type; /* 0 is reserved */
-};
-.fi
-.in -2
-
-.SS "Security Association Information Extension"
-.in +2
-.nf
-struct sadb_sa {
- uint16_t sadb_sa_len;
- uint16_t sadb_sa_exttype; /* ASSOCIATION */
- uint32_t sadb_sa_spi;
- uint8_t sadb_sa_replay;
- uint8_t sadb_sa_state;
- uint8_t sadb_sa_auth;
- uint8_t sadb_sa_encrypt;
- uint32_t sadb_sa_flags;
-};
-.fi
-.in -2
-
-.SS "Lifetime Extension"
-.in +2
-.nf
-struct sadb_lifetime {
- uint16_t sadb_lifetime_len;
- uint16_t sadb_lifetime_exttype; /* SOFT, HARD, CURRENT */
- uint32_t sadb_lifetime_allocations;
- uint64_t sadb_lifetime_bytes;
- uint64_t sadb_lifetime_addtime;
- uint64_t sadb_lifetime_usetime;
-};
-.fi
-.in -2
-
-.SS "Address Extension"
-.in +2
-.nf
-struct sadb_address {
- uint16_t sadb_address_len;
- uint16_t sadb_address_exttype; /* SRC, DST, NATT_*, INNER_* */
- uint8_t sadb_address_proto; /* Proto for ports... */
- uint8_t sadb_address_prefixlen; /* Prefix length for INNER_*. */
- uint16_t sadb_address_reserved; /* Padding */
- /* Followed by a sockaddr
- structure.*/
-};
-.fi
-.in -2
-
-.SS "Keying Material Extension"
-.in +2
-.nf
-struct sadb_key {
- uint16_t sadb_key_len;
- uint16_t sadb_key_exttype; /* AUTH, ENCRYPT */
- uint16_t sadb_key_bits;
- uint16_t sadb_key_reserved;
- /* Followed by actual key(s) in
- canonical (outbound proc.) order. */
-};
-.fi
-.in -2
-
-.SS "Identity Extension"
-.in +2
-.nf
-struct sadb_ident {
- uint16_t sadb_ident_len;
- uint16_t sadb_ident_exttype; /* SRC, DST, PROXY */
- uint16_t sadb_ident_type; /* FQDN, USER_FQDN, etc. */
- uint16_t sadb_ident_reserved; /* Padding */
- uint64_t sadb_ident_id; /* For userid, etc. */
- /* Followed by an identity null-terminate C string if present. */
-};
-.fi
-.in -2
-
-.SS "Sensitivity/Integrity Extension"
-.in +2
-.nf
-struct sadb_sens {
- uint16_t sadb_sens_len;
- uint16_t sadb_sens_exttype; /* SENSITIVITY */
- uint32_t sadb_sens_dpd;
- uint8_t sadb_sens_sens_level;
- uint8_t sadb_sens_sens_len; /* 64-bit words */
- uint8_t sadb_sens_integ_level;
- uint8_t sadb_sens_integ_len; /* 64-bit words */
- uint32_t sadb_sens_reserved;
- /*
- * followed by two uint64_t arrays
- * uint64_t sadb_sens_bitmap[sens_bitmap_len];
- * uint64_t integ_bitmap[integ_bitmap_len];
- */
-};
-.fi
-.in -2
-
-.SS "Proposal Extension"
-.in +2
-.nf
-struct sadb_prop {
- uint16_t sadb_prop_len;
- uint16_t sadb_prop_exttype; /* PROPOSAL, X_EPROP */
- uint8_t sadb_prop_replay;
- uint8_t sadb_X_prop_ereserved;
- uint16_t sadb_x_prop_numecombs;
-/* Followed by sadb_comb[] array or sadb_ecomb[] array. */
-};
-.fi
-.in -2
-
-.SS "Combination Instance for a Proposal"
-.in +2
-.nf
-struct sadb_comb {
- uint8_t sadb_comb_auth;
- uint8_t sadb_comb_encrypt;
- uint16_t sadb_comb_flags;
- uint16_t sadb_comb_auth_minbits;
- uint16_t sadb_comb_auth_maxbits;
- uint16_t sadb_comb_encrypt_minbits;
- uint16_t sadb_comb_encrypt_maxbits;
- uint8_t sadb_x_comb_encrypt_saltbits;
- uint8_t sadb_x_comb_reserved;
- uint16_t sadb_comb_reserved;
- uint32_t sadb_comb_soft_allocations;
- uint32_t sadb_comb_hard_allocations;
- uint64_t sadb_comb_soft_bytes;
- uint64_t sadb_comb_hard_bytes;
- uint64_t sadb_comb_soft_addtime;
- uint64_t sadb_comb_hard_addtime;
- uint64_t sadb_comb_soft_usetime;
- uint64_t sadb_comb_hard_usetime;
-};
-.fi
-.in -2
-
-.SS "Extended Combination"
-.in +2
-.nf
-struct sadb_x_ecomb {
- uint8_t sadb_x_ecomb_numalgs;
- uint8_t sadb_x_ecomb_reserved;
- uint16_t sadb_x_ecomb_flags; /* E.g. PFS? */
- uint32_t sadb_x_ecomb_reserved2;
- uint32_t sadb_x_ecomb_soft_allocations;
- uint32_t sadb_x_ecomb_hard_allocations;
- uint64_t sadb_x_ecomb_soft_bytes;
- uint64_t sadb_x_ecomb_hard_bytes;
- uint64_t sadb_x_ecomb_soft_addtime;
- uint64_t sadb_x_ecomb_hard_addtime;
- uint64_t sadb_x_ecomb_soft_usetime;
- uint64_t sadb_x_ecomb_hard_usetime;
-};
-.fi
-.in -2
-
-.SS "Extended Combination Algorithm Descriptors"
-.in +2
-.nf
-struct sadb_x_algdesc {
- uint8_t sadb_x_algdesc_satype; /* ESP, AH, etc. */
- uint8_t sadb_x_algdesc_algtype; /* AUTH, CRYPT, COMPRESS */
- uint8_t sadb_x_algdesc_alg; /* DES, 3DES, MD5, etc. */
- uint8_t sadb_x_algdesc_saltbits;
- uint16_t sadb_x_algdesc_minbits; /* Bit strengths. */
- uint16_t sadb_x_algdesc_maxbits;
- };
-.fi
-.in -2
-
-.SS "Extended Register"
-.in +2
-.nf
-struct sadb_x_ereg {
- uint16_t sadb_x_ereg_len;
- uint16_t sadb_x_ereg_exttype; /* X_EREG */
- uint8_t sadb_x_ereg_satypes[4]; /* Array of SA types, 0-terminated.
-|};
-.fi
-.in -2
-
-.SS "Key Management Cookie"
-.in +2
-.nf
-struct sadb_x_kmc {
- uint16_t sadb_x_kmc_len;
- uint16_t sadb_x_kmc_exttype; /* X_KM_COOKIE */
- uint32_t sadb_x_kmc_proto; /* KM protocol */
- uint32_t sadb_x_kmc_cookie; /* KMP-specific */
- uint32_t sadb_x_kmc_reserved; /* Reserved; must be zero */
- };
-.fi
-.in -2
-
-.SS "Supported Algorithms Extension"
-.in +2
-.nf
-struct sadb_supported {
- uint16_t sadb_supported_len;
- uint16_t sadb_supported_exttype;
- uint32_t sadb_supported_reserved;
-};
-.fi
-.in -2
-
-.SS "Algorithm Instance"
-.in +2
-.nf
-struct sadb_alg {
- uint8_t sadb_alg_id; /* Algorithm type. */
- uint8_t sadb_alg_ivlen; /* IV len, in bits */
- uint16_t sadb_alg_minbits; /* Min. key len (in bits) */
- uint16_t sadb_alg_maxbits; /* Max. key length */
- uint16_t sadb_alg_reserved;
-};
-.fi
-.in -2
-
-.SS "SPI Extension Range"
-.in +2
-.nf
-struct sadb_spirange {
- uint16_t sadb_spirange_len;
- uint16_t sadb_spirange_exttype; /* SPI_RANGE */
- uint32_t sadb_spirange_min
- uint32_t sadb_spirange_max;
- uint32_t sadb_spirange_reserved;
-};
-.fi
-.in -2
-
-.SS "Security Association Pair Extension"
-.in +2
-.nf
-struct sadb_x_pair {
- uint16_t sadb_x_pair_len;
- uint16_t sadb_x_pair_exttype; /* SADB_X_EXT_PAIR */
- uint32_t sadb_x_pair_spi; /* SPI of paired SA */
-};
-.fi
-.in -2
-
-.SS "Message Use and Behavior"
-Each message has a behavior. A behavior is defined as where the initial message
-travels, for example, user to kernel, and what subsequent actions are expected
-to take place. Contents of messages are illustrated as:
-.sp
-.in +2
-.nf
-<base, REQUIRED EXTENSION, REQ., (OPTIONAL EXTENSION,) (OPT)>
-.fi
-.in -2
-
-.sp
-.LP
-The \fBSA\fR extension is sometimes used only for its \fBSPI\fR field. If all
-other fields must be ignored, this is represented by \fBSA\fR(*).
-.sp
-.LP
-The lifetime extensions are represented with one to three letters after the
-word lifetime, representing (H)ARD, (S)OFT, and (C)URRENT.
-.sp
-.LP
-The address extensions are represented with one to three letters after the word
-"address," representing (S)RC, (D)ST, (Nl)NAT-T local, (Nr)NAT-T remote,
-(Is)Inner source, and (Id)Inner destination.
-.sp
-.LP
-Source and destination address extensions reflect outer-header selectors for an
-IPsec SA. An SA is inbound or outbound depending on which of the source or
-destination address is local to the node. Inner-source and inner-destination
-selectors represent inner-header selectors for Tunnel Mode SAs. A Tunnel Mode
-SA \fBmust\fR have either IPPROTO_ENCAP or IPPROTO_IPV6 in its outer-headers as
-protocol selector, in addition to filled-in Inner-address extensions.
-.sp
-.LP
-NAT-T local and NAT-T remote addresses store local and remote ports used for
-ESP-in-UDP encapsulation. A non-zero local NAT-T address extension represents
-the local node's external IP address if it is not equivalent to the SA's local
-address. A non-zero remote NAT-T address represents a peer's behind-a-NAT
-address if it is not equivalent to the SA's remote address. An SA with NAT-T
-extensions will protect-and-transmit outbound traffic. Processing of inbound
-NAT-T traffic requires a UDP socket bound to the appropriate local port and it
-\fBmust\fR have the UDP_NAT_T_ENDPOINT (see \fBudp\fR(7P)) socket option
-enabled.
-.sp
-.LP
-Note that when an error occurs, only the base header is sent. In the event of
-an error, an extended diagnostic may be set (see DIAGNOSTICS). Typical errors
-include:
-.sp
-.ne 2
-.na
-\fB\fBEINVAL\fR\fR
-.ad
-.RS 11n
-Various message improprieties, including \fBSPI\fR ranges that are malformed,
-weak keys, and others. If EINVAL is returned, an application should look at the
-\fBsadb_x_msg_diagnostic\fR field of the sadb_msg structure. It contains one of
-many possible causes for EINVAL. See \fBnet/pfkeyv2.h\fR for values, all of the
-form SADB_X_DIAGNOSTIC_.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBENOMEM\fR\fR
-.ad
-.RS 11n
-Needed memory was not available.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBENSGSIZ\fR\fR
-.ad
-.RS 11n
-Message exceeds the maximum length allowed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEEXIST\fR\fR
-.ad
-.RS 11n
-\fBSA\fR (that is being added or created with \fBGETSPI\fR) already exists.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBESRCH\fR\fR
-.ad
-.RS 11n
-\fBSA\fR could not be found.
-.RE
-
-.sp
-.LP
-The following are examples of message use and behavior:
-.SS "\fBSADB_GETSPI\fR"
-Send a \fBSADB_GETSPI\fR message from a user process to the kernel.
-.sp
-.in +2
-.nf
-<base, address, SPI range>
-.fi
-.in -2
-
-.sp
-.LP
-The kernel returns the \fBSADB_GETSPI\fR message to all listening processes.
-.sp
-.in +2
-.nf
-<base, SA(*), address (SD)>
-.fi
-.in -2
-
-.SS "\fBSADB_UPDATE\fR"
-Send a \fBSADB_UPDATE\fR message from a user process to the kernel.
-.sp
-.in +2
-.nf
-<base, SA, (lifetime(HS),) address(SD), (address(Is,Id),
- address(Nl,Nr), key (AE), (identity(SD),) (sensitivity)>
-.fi
-.in -2
-
-.sp
-.LP
-The kernel returns the \fBSADB_UPDATE\fR message to all listening processes.
-.sp
-.in +2
-.nf
-<base, SA(*), address (SD), (pair)>
-.fi
-.in -2
-
-.sp
-.LP
-Adding a sadb_x_pair extension to an \fBSADB_UPDATE\fR or \fBSADB_ADD\fR
-message will update the security association pair linkage with the SPI of the
-security association contained in that extension. The resulting security
-association "pair" can be updated or as a single entity using the
-\fBSADB_X_UPDATEPAIR\fR or \fBSADB_X_DELPAIR\fR message types.
-.SS "\fBSADB_ADD\fR"
-Send a \fBSADB_ADD\fR message from a user process to the kernel.
-.sp
-.in +2
-.nf
-<base, SA, (lifetime(HS),) address(SD), (address(Is,Id),)
- (address(Nl,Nr),) key (AE), (identity(SD),) (sensitivity) (pair)>
-.fi
-.in -2
-
-.sp
-.LP
-The kernel returns the \fBSADB_ADD\fR message to all listening processes.
-.sp
-.in +2
-.nf
-<base, SA, (lifetime(HS),) address (SD), (address(Is,Id),)
- (address(Nl,Nr),) (identity (SD),) (sensitivity)>
-.fi
-.in -2
-
-.SS "\fBSADB_X_UPDATEPAIR\fR"
-Send a \fBSADB_X_UPDATEPAIR\fR message from a user process to the kernel.
-This message type is used to update the lifetime values of a security
-association and the lifetime values of the security association it is paired
-with.
-.sp
-.in +2
-.nf
-<base, SA, lifetime(HS), address(SD)>
-.fi
-.in -2
-
-.SS "\fBSADB_DELETE | SADB_X_DELPAIR\fR"
-Send a \fBSADB_DELETE\fR message from a user process to the kernel. The
-\fBSADB_X_DELPAIR\fR message type will request deletion of the security
-association and the security association it is paired with.
-.sp
-.in +2
-.nf
-<base, SA (*), address (SD)>
-.fi
-.in -2
-
-.sp
-.LP
-The kernel returns the \fBSADB_DELETE\fR message to all listening processes.
-.sp
-.in +2
-.nf
-<base, SA (*), address (SD)>
-.fi
-.in -2
-
-.SS "\fBSADB_GET\fR"
-Send a \fBSADB_GET\fR message from a user process to the kernel.
-.sp
-.in +2
-.nf
-<base, SA (*), address (SD)>
-.fi
-.in -2
-
-.sp
-.LP
-The kernel returns the \fBSADB_GET\fR message to the socket that sent the
-\fBSADB_GET\fR message.
-.sp
-.in +2
-.nf
-<base, SA , (lifetime (HSC),) address SD), (address (P),) key (AE),
- (identity (SD),) (sensitivity)>
-.fi
-.in -2
-
-.SS "\fBSADB_ACQUIRE\fR"
-The kernel sends a \fBSADB_ACQUIRE\fR message to registered sockets. Note that
-any \fBGETSPI\fR, \fBADD\fR, or \fBUPDATE\fR calls in reaction to an
-\fBACQUIRE\fR must fill in the \fBsadb_msg_seq\fR of those messages with the
-one in the \fBACQUIRE\fR message. The address (\fBSD\fR) extensions must have
-the port fields filled in with the port numbers of the session requiring keys
-if appropriate.
-.sp
-.in +2
-.nf
-<base, address (SD), (address(Is,Id)), (identity(SD),)
- (sensitivity,) proposal>
-.fi
-.in -2
-
-.sp
-.LP
-Extended ACQUIRE will have a slightly different format. The
-\fBsadb_msg_satype\fR field is 0, and the extension contains the desired
-combination(s) of security protocols.
-.sp
-.in +2
-.nf
-<base, address (SD), (address(Is,Id)), (identity(SD),)
- (sensitivity,) eprop>
-.fi
-.in -2
-
-.sp
-.LP
-If key management fails, send an \fBSADB_ACQUIRE\fR to indicate failure.
-.sp
-.in +2
-.nf
-<base>
-.fi
-.in -2
-
-.SS "\fBSADB_X_INVERSE_ACQUIRE\fR"
-For inbound Key Management processing, a Key Management application may wish to
-consult the kernel for its policy. The application should send to the kernel:
-.sp
-.in +2
-.nf
-<base, address (SD), (address(Is,Id))>
-.fi
-.in -2
-
-.sp
-.LP
-The kernel returns a message similar to a kernel-generated extended ACQUIRE:
-.sp
-.in +2
-.nf
-<base, address (SD), (address(Is,Id)), (identity(SD),)
- (sensitivity,) eprop>
-.fi
-.in -2
-
-.SS "\fBSADB_REGISTER\fR"
-Send a \fBSADB_REGISTER\fR message from a user process to the kernel.
-.sp
-.in +2
-.nf
-<base>
-.fi
-.in -2
-
-.sp
-.LP
-The kernel returns the \fBSADB_REGISTER\fR message to registered sockets, with
-algorithm types supported by the kernel being indicated in the supported
-algorithms field. Note that this message may arrive asynchronously due to an
-algorithm being loaded or unloaded into a dynamically linked kernel.
-.sp
-.in +2
-.nf
-<base, supported>
-.fi
-.in -2
-
-.sp
-.LP
-There is also the extended REGISTER, which will allow this process to receive
-extended ACQUIREs.
-.sp
-.in +2
-.nf
-<base, ereg>
-.fi
-.in -2
-
-.sp
-.LP
-Which returns a series of SADB_REGISTER replies (one for each security protocol
-registered) from the kernel.
-.SS "\fBSADB_EXPIRE\fR"
-The kernel sends a \fBSADB_EXPIRE\fR message to all listeners when the soft
-limit of a security association has been expired.
-.sp
-.in +2
-.nf
-<base, SA, lifetime (C and one of HS), address (SD)>
-.fi
-.in -2
-
-.SS "\fBSADB_FLUSH\fR"
-Send a \fBSADB_FLUSH\fR message from a user process to the kernel.
-.sp
-.in +2
-.nf
-<base>
-.fi
-.in -2
-
-.sp
-.LP
-The kernel returns the \fBSADB_FLUSH\fR message to all listening sockets.
-.sp
-.in +2
-.nf
-<base>
-.fi
-.in -2
-
-.SS "\fBSADB_DUMP\fR"
-Send a \fBSADB_DUMP\fR message from a user process to the kernel.
-.sp
-.in +2
-.nf
-<base>
-.fi
-.in -2
-
-.sp
-.LP
-Several \fBSADB_DUMP\fR messages will return from the kernel to the sending
-socket.
-.sp
-.in +2
-.nf
-<base, SA, (lifetime (HSC),) address (SD), (address (Is,Id),)
- (address (Nl,Nr),) key (AE), (identity (SD),) sensitivity)>
-.fi
-.in -2
-
-.sp
-.LP
-To mark the end of a dump a single base header arrives with its
-\fBsadb_mdg_seq\fR set to 0.
-.sp
-.in +2
-.nf
-<base>
-.fi
-.in -2
-
-.SS "\fBSADB_X_PROMISC\fR"
-Send a \fBSADB_X_PROMISC\fR message from a user process to the kernel.
-.sp
-.in +2
-.nf
-<base>
-.fi
-.in -2
-
-.sp
-.LP
-The kernel returns the \fBSADB_X_PROMISC\fR message to all listening processes.
-.sp
-.in +2
-.nf
-<base>
-.fi
-.in -2
-
-.SH DIAGNOSTICS
-The message returning from the kernel will contain a diagnostic value in the
-base message header, the diagnostic value will indicate if action requested by
-the original message was a success.
-.sp
-.LP
-Diagnostic Values:
-.sp
-.in +2
-.nf
-#define SADB_X_DIAGNOSTIC_NONE 0
-#define SADB_X_DIAGNOSTIC_UNKNOWN_MSG 1
-#define SADB_X_DIAGNOSTIC_UNKNOWN_EXT 2
-#define SADB_X_DIAGNOSTIC_BAD_EXTLEN 3
-#define SADB_X_DIAGNOSTIC_UNKNOWN_SATYPE 4
-#define SADB_X_DIAGNOSTIC_SATYPE_NEEDED 5
-#define SADB_X_DIAGNOSTIC_NO_SADBS 6
-#define SADB_X_DIAGNOSTIC_NO_EXT 7
- /* Bad address family value */
-#define SADB_X_DIAGNOSTIC_BAD_SRC_AF 8
- /* in sockaddr->sa_family. */
-#define SADB_X_DIAGNOSTIC_BAD_DST_AF 9
- /* These two are synonyms. */
-#define SADB_X_DIAGNOSTIC_BAD_PROXY_AF 10
-#define SADB_X_DIAGNOSTIC_BAD_INNER_SRC_AF 10
-
-#define SADB_X_DIAGNOSTIC_AF_MISMATCH 11
-
-#define SADB_X_DIAGNOSTIC_BAD_SRC 12
-#define SADB_X_DIAGNOSTIC_BAD_DST 13
-
-#define SADB_X_DIAGNOSTIC_ALLOC_HSERR 14
-#define SADB_X_DIAGNOSTIC_BYTES_HSERR 15
-#define SADB_X_DIAGNOSTIC_ADDTIME_HSERR 16
-#define SADB_X_DIAGNOSTIC_USETIME_HSERR 17
-
-#define SADB_X_DIAGNOSTIC_MISSING_SRC 18
-#define SADB_X_DIAGNOSTIC_MISSING_DST 19
-#define SADB_X_DIAGNOSTIC_MISSING_SA 20
-#define SADB_X_DIAGNOSTIC_MISSING_EKEY 21
-#define SADB_X_DIAGNOSTIC_MISSING_AKEY 22
-#define SADB_X_DIAGNOSTIC_MISSING_RANGE 23
-
-#define SADB_X_DIAGNOSTIC_DUPLICATE_SRC 24
-#define SADB_X_DIAGNOSTIC_DUPLICATE_DST 25
-#define SADB_X_DIAGNOSTIC_DUPLICATE_SA 26
-#define SADB_X_DIAGNOSTIC_DUPLICATE_EKEY 27
-#define SADB_X_DIAGNOSTIC_DUPLICATE_AKEY 28
-#define SADB_X_DIAGNOSTIC_DUPLICATE_RANGE 29
-
-#define SADB_X_DIAGNOSTIC_MALFORMED_SRC 30
-#define SADB_X_DIAGNOSTIC_MALFORMED_DST 31
-#define SADB_X_DIAGNOSTIC_MALFORMED_SA 32
-#define SADB_X_DIAGNOSTIC_MALFORMED_EKEY 33
-#define SADB_X_DIAGNOSTIC_MALFORMED_AKEY 34
-#define SADB_X_DIAGNOSTIC_MALFORMED_RANGE 35
-
-#define SADB_X_DIAGNOSTIC_AKEY_PRESENT 36
-#define SADB_X_DIAGNOSTIC_EKEY_PRESENT 37
-#define SADB_X_DIAGNOSTIC_PROP_PRESENT 38
-#define SADB_X_DIAGNOSTIC_SUPP_PRESENT 39
-#define SADB_X_DIAGNOSTIC_BAD_AALG 40
-#define SADB_X_DIAGNOSTIC_BAD_EALG 41
-#define SADB_X_DIAGNOSTIC_BAD_SAFLAGS 42
-#define SADB_X_DIAGNOSTIC_BAD_SASTATE 43
-
-#define SADB_X_DIAGNOSTIC_BAD_AKEYBITS 44
-#define SADB_X_DIAGNOSTIC_BAD_EKEYBITS 45
-
-#define SADB_X_DIAGNOSTIC_ENCR_NOTSUPP 46
-
-#define SADB_X_DIAGNOSTIC_WEAK_EKEY 47
-#define SADB_X_DIAGNOSTIC_WEAK_AKEY 48
-
-#define SADB_X_DIAGNOSTIC_DUPLICATE_KMP 49
-#define SADB_X_DIAGNOSTIC_DUPLICATE_KMC 50
-
-#define SADB_X_DIAGNOSTIC_MISSING_NATT_LOC 51
-#define SADB_X_DIAGNOSTIC_MISSING_NATT_REM 52
-#define SADB_X_DIAGNOSTIC_DUPLICATE_NATT_LOC 53
-#define SADB_X_DIAGNOSTIC_DUPLICATE_NATT_REM 54
-#define SADB_X_DIAGNOSTIC_MALFORMED_NATT_LOC 55
-#define SADB_X_DIAGNOSTIC_MALFORMED_NATT_REM 56
-#define SADB_X_DIAGNOSTIC_DUPLICATE_NATT_PORTS 57
-
-#define SADB_X_DIAGNOSTIC_MISSING_INNER_SRC 58
-#define SADB_X_DIAGNOSTIC_MISSING_INNER_DST 59
-#define SADB_X_DIAGNOSTIC_DUPLICATE_INNER_SRC 60
-#define SADB_X_DIAGNOSTIC_DUPLICATE_INNER_DST 61
-#define SADB_X_DIAGNOSTIC_MALFORMED_INNER_SRC 62
-#define SADB_X_DIAGNOSTIC_MALFORMED_INNER_DST 63
-
-#define SADB_X_DIAGNOSTIC_PREFIX_INNER_SRC 64
-#define SADB_X_DIAGNOSTIC_PREFIX_INNER_DST 65
-#define SADB_X_DIAGNOSTIC_BAD_INNER_DST_AF 66
-#define SADB_X_DIAGNOSTIC_INNER_AF_MISMATCH 67
-
-#define SADB_X_DIAGNOSTIC_BAD_NATT_REM_AF 68
-#define SADB_X_DIAGNOSTIC_BAD_NATT_LOC_AF 69
-
-#define SADB_X_DIAGNOSTIC_PROTO_MISMATCH 70
-#define SADB_X_DIAGNOSTIC_INNER_PROTO_MISMATCH 71
-
-#define SADB_X_DIAGNOSTIC_DUAL_PORT_SETS 72
-
-#define SADB_X_DIAGNOSTIC_PAIR_INAPPROPRIATE 73
-#define SADB_X_DIAGNOSTIC_PAIR_ADD_MISMATCH 74
-#define SADB_X_DIAGNOSTIC_PAIR_ALREADY 75
-#define SADB_X_DIAGNOSTIC_PAIR_SA_NOTFOUND 76
-#define SADB_X_DIAGNOSTIC_BAD_SA_DIRECTION 77
-
-#define SADB_X_DIAGNOSTIC_SA_NOTFOUND 78
-#define SADB_X_DIAGNOSTIC_SA_EXPIRED 79
-.fi
-.in -2
-
-.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-Interface Stability Evolving
-.TE
-
-.SH SEE ALSO
-\fBin.iked\fR(1M), \fBipseckey\fR(1M), \fBsockaddr\fR(3SOCKET),
-\fBipsec\fR(7P), \fBipsecah\fR(7P),
-\fBipsecesp\fR(7P), \fBroute\fR(7P), \fBudp\fR(7P)
-.sp
-.LP
-McDonald, D.L., Metz, C.W., and Phan, B.G., \fIRFC 2367, PF_KEY Key Management
-API, Version 2\fR, The Internet Society, July 1998.
-.SH NOTES
-Time-based lifetimes may not expire with exact precision in seconds because
-kernel load may affect the aging of \fBSA\fR's.
diff --git a/usr/src/man/man7p/rarp.7p b/usr/src/man/man7p/rarp.7p
deleted file mode 100644
index 4ab51cf38b..0000000000
--- a/usr/src/man/man7p/rarp.7p
+++ /dev/null
@@ -1,56 +0,0 @@
-'\" te
-.\" Copyright (c) 2001, Sun Microsystems, Inc.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH RARP 7P "May 28, 2005"
-.SH NAME
-rarp, RARP \- Reverse address resolution protocol
-.SH DESCRIPTION
-.sp
-.LP
-You use the RARP protocol to map dynamically between the Internet Protocol (IP)
-and network interface MAC addresses. RARP is often used to boot a Solaris
-client. RARP clients include the SPARC boot PROM, x86 boot floppy, SunOS
-kernel, and \fBifconfig\fR(1M). \fBin.rarpd\fR(1M) provides the server-side
-implementation.
-.sp
-.LP
-RARP request timeout behavior in application-layer clients is governed by the
-\fB/etc/inet/rarp\fR default file. To tune the number of retries an application
-attempts before giving up, set the \fBRARP_RETRIES\fR variable in
-\fB/etc/inet/rarp\fR. If the file is not present or \fBRARP_RETRIES\fR is not
-initialized within it, applications retry a maximum of five times with a eight
-second wait between retries.
-.SH FILES
-.sp
-.LP
-\fB/etc/inet/rarp\fR
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-Interface Stability (protocol) Standard
-_
-Interface Stability (defaults file) Unstable
-_
-Interface Stability (RARP_RETRIES) Unstable
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBifconfig\fR(1M), \fBin.rarpd\fR(1M), \fBarp\fR(7P)
-.sp
-.LP
-\fIReverse Address Resolution Protocol RFC 903. June, 1984\fR R. Finlayson, T.
-Mann, J.C. Mogul, M. Theimer
diff --git a/usr/src/man/man7p/route.7p b/usr/src/man/man7p/route.7p
deleted file mode 100644
index 22d4f4c735..0000000000
--- a/usr/src/man/man7p/route.7p
+++ /dev/null
@@ -1,330 +0,0 @@
-'\" te
-.\" Copyright (c) 1990, 1991, 1993 The Regents of the University of California. All rights reserved.
-.\" Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
-.\" 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 3. All advertising materials mentioning features or use of this software must display
-.\" the following acknowledgement: This product includes software developed by the University of California, Berkeley and its contributors. 4. Neither the name of the University nor the names of its contributors may be used to endorse or promote products derived from this software without
-.\" specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS
-.\" OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
-.\" IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-.\" Portions Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved.
-.TH ROUTE 7P "April 9, 2016"
-.SH NAME
-route \- kernel packet forwarding database
-.SH SYNOPSIS
-.LP
-.nf
-#include <sys/types.h>
-#include <sys/socket.h>
-#include <net/if.h>
-#include <net/route.h>
-
-\fBint\fR \fBsocket\fR(\fB\fR\fIPF_ROUTE\fR, \fB\fR\fISOCK_RAW\fR, \fBint\fR \fIprotocol\fR);
-.fi
-
-.SH DESCRIPTION
-.LP
-UNIX provides some packet routing facilities. The kernel maintains a routing
-information database, which is used in selecting the appropriate network
-interface when transmitting packets.
-.sp
-.LP
-A user process (or possibly multiple co-operating processes) maintains this
-database by sending messages over a special kind of socket. This supplants
-fixed size \fBioctl\fR(2)'s specified in \fBrouting\fR(7P). Routing table
-changes can only be carried out by the superuser.
-.sp
-.LP
-The operating system might spontaneously emit routing messages in response to
-external events, such as receipt of a re-direct, or failure to locate a
-suitable route for a request. The message types are described in greater detail
-below.
-.sp
-.LP
-Routing database entries come in two flavors: entries for a specific host, or
-entries for all hosts on a generic subnetwork (as specified by a bit mask and
-value under the mask). The effect of wildcard or default route can be achieved
-by using a mask of all zeros, and there can be hierarchical routes.
-.sp
-.LP
-When the system is booted and addresses are assigned to the network interfaces,
-the internet protocol family installs a routing table entry for each interface
-when it is ready for traffic. Normally the protocol specifies the route through
-each interface as a \fIdirect\fR connection to the destination host or network.
-If the route is direct, the transport layer of a protocol family usually
-requests the packet be sent to the same host specified in the packet.
-Otherwise, the interface is requested to address the packet to the gateway
-listed in the routing entry, that is, the packet is forwarded.
-.sp
-.LP
-When routing a packet, the kernel attempts to find the most specific route
-matching the destination. If no entry is found, the destination is declared to
-be unreachable, and a routing-miss message is generated if there are any
-listeners on the routing control socket (described below). If there are two
-different mask and value-under-the-mask pairs that match, the more specific is
-the one with more bits in the mask. A route to a host is regarded as being
-supplied with a mask of as many ones as there are bits in the destination.
-.sp
-.LP
-A wildcard routing entry is specified with a zero destination address value,
-and a mask of all zeroes. Wildcard routes are used when the system fails to
-find other routes matching the destination. The combination of wildcard routes
-and routing redirects can provide an economical mechanism for routing traffic.
-.sp
-.LP
-One opens the channel for passing routing control messages by using the socket
-call. There can be more than one routing socket open per system.
-.sp
-.LP
-Messages are formed by a header followed by a small number of \fBsockaddrs\fR,
-whose length depend on the address family. \fBsockaddrs\fR are interpreted by
-position. An example of a type of message with three addresses might be a
-\fBCIDR\fR prefix route: Destination, Netmask, and Gateway. The interpretation
-of which addresses are present is given by a bit mask within the header, and
-the sequence is least significant to most significant bit within the vector.
-.sp
-.LP
-Any messages sent to the kernel are returned, and copies are sent to all
-interested listeners. The kernel provides the process \fBID\fR of the sender,
-and the sender can use an additional sequence field to distinguish between
-outstanding messages. However, message replies can be lost when kernel buffers
-are exhausted.
-.sp
-.LP
-The \fIprotocol\fR parameter specifies which messages an application listening
-on the routing socket is interested in seeing, based on the address family
-of the \fBsockaddrs\fR present. Currently, you can specify \fBAF_INET\fR and
-\fBAF_INET6\fR to filter the messages seen by the listener, or alternatively,
-you can specify \fBAF_UNSPEC\fR to indicate that the listener is interested in
-all routing messages.
-.sp
-.LP
-The kernel might reject certain messages, and indicates this by filling in the
-\fBrtm_errno\fR field of the \fBrt_msghdr\fR struct (see below). The following
-codes are returned:
-.sp
-.ne 2
-.na
-\fB\fBEEXIST\fR\fR
-.ad
-.RS 11n
-If requested to duplicate an existing entry
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBESRCH\fR\fR
-.ad
-.RS 11n
-If requested to delete a non-existent entry
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBENOBUFS\fR\fR
-.ad
-.RS 11n
-If insufficient resources were available to install a new route.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEPERM\fR\fR
-.ad
-.RS 11n
-If the calling process does not have appropriate privileges to alter the
-routing table.
-.RE
-
-.sp
-.LP
-In the current implementation, all routing processes run locally, and the
-values for \fBrtm_errno\fR are available through the normal \fBerrno\fR
-mechanism, even if the routing reply message is lost.
-.sp
-.LP
-A process can avoid the expense of reading replies to its own messages by
-issuing a \fBsetsockopt\fR(3SOCKET) call indicating that the
-\fBSO_USELOOPBACK\fR option at the \fBSOL_SOCKET\fR level is to be turned off.
-A process can ignore all messages from the routing socket by doing a
-\fBshutdown\fR(3SOCKET) system call for further input.
-.sp
-.LP
-By default, underlying IP interfaces in an IPMP group are not visible to
-routing sockets. As such, routing sockets do not receive events related to
-underlying IP interface in an IPMP group. For consistency, when an IP interface
-is placed into an IPMP group, \fBRTM_DELADDR\fR messages are generated for each
-\fBIFF_UP\fR address that is not migrated to the corresponding IPMP IP
-interface and an \fBRTM_IFINFO\fR message is sent indicating the interface is
-down. Similarly, when an underlying interface is removed from an IPMP group, an
-\fBRTM_IFINFO\fR message is sent indicating the interface is again up and
-\fBRTM_NEWADDR\fR messages are generated for each \fBIFF_UP\fR address found on
-the interface.
-.sp
-.LP
-The \fBRT_AWARE\fR socket option at the \fBSOL_ROUTE\fR level allows an
-application to indicate its awareness of certain features, which control
-routing socket behavior. The supported values are:
-.sp
-.ne 2
-.na
-\fB\fBRTAW_DEFAULT\fR\fR
-.ad
-.RS 20n
-Default awareness.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBRTAW_UNDER_IPMP\fR\fR
-.ad
-.RS 20n
-IPMP underlying interface awareness. When enabled, underlying IP interfaces in
-an IPMP group remain visible to the routing socket and events related to them
-continue to be generated.
-.RE
-
-.sp
-.LP
-An \fBRTM_ADD\fR request tied to an underlying IP interface in an IPMP group is
-translated to an \fBRTM_ADD\fR request for its corresponding IPMP IP interface.
-All routing socket requests other than \fBRTM_ADD\fR and \fBRTM_GET\fR fail
-when issued on an underlying IP interface in an IPMP group.
-.sp
-.LP
-If a route is in use when it is deleted, the routing entry is marked down and
-removed from the routing table, but the resources associated with it are not
-reclaimed until all references to it are released.
-.sp
-.LP
-The \fBRTM_IFINFO\fR, \fBRTM_NEWADDR\fR, and \fBRTM_ADD\fR messages associated
-with interface configuration (setting the \fBIFF_UP\fR bit) are normally
-delayed until after Duplicate Address Detection completes. Thus, applications
-that configure interfaces and wish to wait until the interface is ready can
-wait until \fBRTM_IFINFO\fR is returned and \fBSIOCGLIFFLAGS\fR shows that
-\fBIFF_DUPLICATE\fR is not set.
-.SS "Messages"
-.LP
-User processes can obtain information about the routing entry to a specific
-destination by using a \fBRTM_GET\fR message.
-.sp
-.LP
-Messages include:
-.sp
-.in +2
-.nf
-#define RTM_ADD 0x1 /* Add Route */
-#define RTM_DELETE 0x2 /* Delete Route */
-#define RTM_CHANGE 0x3 /* Change Metrics, Flags, or Gateway */
-#define RTM_GET 0x4 /* Report Information */
-#define RTM_LOSING 0x5 /* Kernel Suspects Partitioning */
-#define RTM_REDIRECT 0x6 /* Told to use different route */
-#define RTM_MISS 0x7 /* Lookup failed on this address */
-#define RTM_LOCK 0x8 /* fix specified metrics */
-#define RTM_OLDADD 0x9 /* caused by SIOCADDRT */
-#define RTM_OLDDEL 0xa /* caused by SIOCDELRT */
-#define RTM_RESOLVE 0xb /* request to resolve dst to LL addr */
-#define RTM_NEWADDR 0xc /* address being added to iface */
-#define RTM_DELADDR 0xd /* address being removed from iface */
-#define RTM_IFINFO 0xe /* iface going up/down etc. */
-.fi
-.in -2
-
-.sp
-.LP
-A message header consists of:
-.sp
-.in +2
-.nf
-struct rt_msghdr {
- ushort_t rtm_msglen; /* to skip over non-understood messages */
- uchar_t rtm_version; /* future binary compatibility */
- uchar_t rtm_type; /* message type */
- ushort_t rtm_index; /* index for associated ifp */
- pid_t rtm_pid; /* identify sender */
- int rtm_addrs; /* bitmask identifying sockaddrs in msg */
- int rtm_seq; /* for sender to identify action */
- int rtm_errno; /* why failed */
- int rtm_flags; /* flags, incl kern & message, e.g., DONE */
- int rtm_use; /* from rtentry */
- uint_t rtm_inits; /* which values we are initializing */
-
- struct rt_metrics rtm_rmx; /* metrics themselves */
-};
-.fi
-.in -2
-
-.sp
-.LP
-where
-.sp
-.in +2
-.nf
-struct rt_metrics {
- uint32_t rmx_locks; /* Kernel must leave these values alone */
- uint32_t rmx_mtu; /* MTU for this path */
- uint32_t rmx_hopcount; /* max hops expected */
- uint32_t rmx_expire; /* lifetime for route, e.g., redirect */
- uint32_t rmx_recvpipe; /* inbound delay-bandwidth product */
- uint32_t rmx_sendpipe; /* outbound delay-bandwidth product */
- uint32_t rmx_ssthresh; /* outbound gateway buffer limit */
- uint32_t rmx_rtt; /* estimated round trip time */
- uint32_t rmx_rttvar; /* estimated rtt variance */
- uint32_t rmx_pksent; /* packets sent using this route */
-};
-
-/* Flags include the values */
-
-
-#define RTF_UP 0x1 /* route usable */
-#define RTF_GATEWAY 0x2 /* destination is a gateway */
-#define RTF_HOST 0x4 /* host entry (net otherwise) */
-#define RTF_REJECT 0x8 /* host or net unreachable */
-#define RTF_DYNAMIC 0x10 /* created dynamically(by redirect) */
-#define RTF_MODIFIED 0x20 /* modified dynamically(by redirect) */
-#define RTF_DONE 0x40 /* message confirmed */
-#define RTF_MASK 0x80 /* subnet mask present */
-#define RTF_CLONING 0x100 /* generate new routes on use */
-#define RTF_XRESOLVE 0x200 /* external daemon resolves name */
-#define RTF_LLINFO 0x400 /* generated by ARP */
-#define RTF_STATIC 0x800 /* manually added */
-#define RTF_BLACKHOLE 0x1000 /* just discard pkts (during updates) */
-#define RTF_PRIVATE 0x2000 /* do not advertise this route */
-#define RTF_PROTO2 0x4000 /* protocol specific routing flag #2 */
-#define RTF_PROTO1 0x8000 /* protocol specific routing flag #1 */
-
-/* Specifiers for metric values in rmx_locks and rtm_inits are */
-
-#define RTV_MTU 0x1 /* init or lock _mtu */
-#define RTV_HOPCOUNT 0x2 /* init or lock _hopcount */
-#define RTV_EXPIRE 0x4 /* init or lock _expire */
-#define RTV_RPIPE 0x8 /* init or lock _recvpipe */
-#define RTV_SPIPE 0x10 /* init or lock _sendpipe */
-#define RTV_SSTHRESH 0x20 /* init or lock _ssthresh */
-#define RTV_RTT 0x40 /* init or lock _rtt */
-#define RTV_RTTVAR 0x80 /* init or lock _rttvar */
-
-/* Specifiers for which addresses are present in the messages are */
-
-#define RTA_DST 0x1 /* destination sockaddr present */
-#define RTA_GATEWAY 0x2 /* gateway sockaddr present */
-#define RTA_NETMASK 0x4 /* netmask sockaddr present */
-#define RTA_GENMASK 0x8 /* cloning mask sockaddr present */
-#define RTA_IFP 0x10 /* interface name sockaddr present */
-#define RTA_IFA 0x20 /* interface addr sockaddr present */
-#define RTA_AUTHOR 0x40 /* sockaddr for author of redirect */
-#define RTA_BRD 0x80 /* for NEWADDR, broadcast or p-p dest addr */
-.fi
-.in -2
-
-.SH SEE ALSO
-.LP
-\fBioctl\fR(2), \fBsetsockopt\fR(3SOCKET), \fBshutdown\fR(3SOCKET),
-\fBsockaddr\fR(3SOCKET), \fBrouting\fR(7P)
-.SH NOTES
-.LP
-Some of the metrics might not be implemented and return zero. The implemented
-metrics are set in \fBrtm_inits\fR.
diff --git a/usr/src/man/man7p/routing.7p b/usr/src/man/man7p/routing.7p
deleted file mode 100644
index be5d0d832c..0000000000
--- a/usr/src/man/man7p/routing.7p
+++ /dev/null
@@ -1,163 +0,0 @@
-'\" te
-.\" Copyright 1989 AT&T
-.\" Copyright (C) 1999, Sun Microsystems,
-.\" Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH ROUTING 7P "Nov 9, 1999"
-.SH NAME
-routing \- system support for packet network routing
-.SH DESCRIPTION
-.sp
-.LP
-The network facilities provide general packet routing. The \fBrouting\fR
-interface described here can be used to maintain the system's IPv4 routing
-table. It has been maintained for compatibility with older applications. The
-recommended interface for maintaining the system's routing tables is the
-routing socket, described at \fBroute\fR(7P). The routing socket can be used to
-manipulate both the IPv4 and IPv6 routing tables of the system. Routing table
-maintenance may be implemented in applications processes.
-.sp
-.LP
-A simple set of data structures compose a "routing table" used in selecting the
-appropriate network interface when transmitting packets. This table contains a
-single entry for each route to a specific network or host. The routing table
-was designed to support routing for the Internet Protocol (IP), but its
-implementation is protocol independent and thus it may serve other protocols as
-well. User programs may manipulate this data base with the aid of two
-\fBioctl\fR(2) commands, \fBSIOCADDRT\fR and \fBSIOCDELRT\fR. These commands
-allow the addition and deletion of a single routing table entry, respectively.
-Routing table manipulations may only be carried out by privileged user.
-.sp
-.LP
-A routing table entry has the following form, as defined in
-\fB/usr/include/net/route.h\fR:
-.sp
-.in +2
-.nf
-struct rtentry {
- unit_t rt_hash; /* to speed lookups */
- struct sockaddr rt_dst; /* key */
- struct sockaddr rt_gateway; /* value */
- short rt_flags; /* up/down?, host/net */
- short rt_refcnt; /* # held references */
- unit_t rt_use; /* raw # packets forwarded */
-/*
- * The kernel does not use this field, and without it the structure is
- * datamodel independent.
- */
-#if !defined(_KERNEL)
- struct ifnet *rt_ifp; /* the answer: interface to use */
-#endif /* !defined(_KERNEL) */
-};
-.fi
-.in -2
-
-.sp
-.LP
-with \fIrt_flags\fR defined from:
-.sp
-.in +2
-.nf
-#define RTF_UP 0x1 /* route usable */
-#define RTF_GATEWAY 0x2 /* destination is a gateway */
-#define RTF_HOST 0x4 /* host entry (net otherwise) */
-.fi
-.in -2
-
-.sp
-.LP
-There are three types of routing table entries: those for a specific host,
-those for all hosts on a specific network, and those for any destination not
-matched by entries of the first two types, called a wildcard route. Each
-network interface installs a routing table entry when it is initialized.
-Normally the interface specifies if the route through it is a "direct"
-connection to the destination host or network. If the route is direct, the
-transport layer of a protocol family usually requests the packet be sent to the
-same host specified in the packet. Otherwise, the interface may be requested to
-address the packet to an entity different from the eventual recipient;
-essentially, the packet is forwarded.
-.sp
-.LP
-Routing table entries installed by a user process may not specify the hash,
-reference count, use, or interface fields; these are filled in by the routing
-routines. If a route is in use when it is deleted, meaning its \fBrt_refcnt\fR
-is non-zero, the resources associated with it will not be reclaimed until all
-references to it are removed.
-.sp
-.LP
-User processes read the routing tables through the \fB/dev/ip\fR device.
-.sp
-.LP
-The \fIrt_use\fR field contains the number of packets sent along the route.
-This value is used to select among multiple routes to the same destination.
-When multiple routes to the same destination exist, the least used route is
-selected.
-.sp
-.LP
-A wildcard routing entry is specified with a \fBzero\fR destination address
-value. Wildcard routes are used only when the system fails to find a route to
-the destination host and network. The combination of wildcard routes and
-routing redirects can provide an economical mechanism for routing traffic.
-.SH ERRORS
-.sp
-.ne 2
-.na
-\fB\fBEEXIST\fR\fR
-.ad
-.RS 15n
-A request was made to duplicate an existing entry.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBESRCH\fR\fR
-.ad
-.RS 15n
-A request was made to delete a non-existent entry.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBENOBUFS\fR\fR
-.ad
-.RS 15n
-Insufficient resources were available to install a new route.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBENOMEM\fR\fR
-.ad
-.RS 15n
-Insufficient resources were available to install a new route.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBENETUNREACH\fR\fR
-.ad
-.RS 15n
-The gateway is not directly reachable. For example, it does not match the
-destination/subnet on any of the network interfaces.
-.RE
-
-.SH FILES
-.sp
-.ne 2
-.na
-\fB\fB/dev/ip\fR\fR
-.ad
-.RS 11n
-\fBIP\fR device driver
-.RE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBroute\fR(1M), \fBioctl\fR(2), \fBroute\fR(7P)
diff --git a/usr/src/man/man7p/sctp.7p b/usr/src/man/man7p/sctp.7p
deleted file mode 100644
index 9af1cf66fa..0000000000
--- a/usr/src/man/man7p/sctp.7p
+++ /dev/null
@@ -1,412 +0,0 @@
-'\" te
-.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
-.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SCTP 7P "Jul 30, 2009"
-.SH NAME
-sctp, SCTP \- Stream Control Transmission Protocol
-.SH SYNOPSIS
-.LP
-.nf
-#include <sys/socket.h>
-#include <netinet/in.h>
-
-s = socket(AF_INET, SOCK_STREAM, IPPROTO_SCTP);
-.fi
-
-.LP
-.nf
-\fBs = socket(AF_INET, SOCK_SEQPACKET, IPPROTO_SCTP);\fR
-.fi
-
-.LP
-.nf
-\fBs = socket(AF_INET6, SOCK_STREAM, IPPROTO_SCTP);\fR
-.fi
-
-.LP
-.nf
-\fBs = socket(AF_INET6, SOCK_SEQPACKET, IPPROTO_SCTP);\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-SCTP is a transport protocol layered above the Internet Protocol (IP), or the
-Internet Protocol Version 6 (IPv6). SCTP provides a reliable, session oriented,
-flow-controlled, two-way transmission of data. It is a message- oriented
-protocol and supports framing of individual messages boundaries. An SCTP
-association is created between two endpoints for data transfer which is
-maintained during the lifetime of the transfer. An SCTP association is setup
-between two endpoints using a four-way handshake mechanism with the use of a
-cookie to guard against some types of denial of service (DoS) attacks. These
-endpoints may be represented by multiple IP addresses.
-.sp
-.LP
-An SCTP message includes a common SCTP header followed by one or more chunks.
-Included in the common header is a 32-bit field which contains the checksum
-(computed using CRC-32c polynomial) of the entire SCTP packet.
-.sp
-.LP
-SCTP transfers data payloads in the form of DATA chunks. Each DATA chunk
-contains a Transmission Sequence Number (TSN), which governs the transmission
-of messages and detection of loss. DATA chunk exchanges follow the Transmission
-Control Protocol's (TCP) Selective ACK (SACK) mechanism. The receiver
-acknowledges data by sending SACK chunks, which not only indicate the
-cumulative TSN range received, but also non-cumulative TSNs received, implying
-gaps in the received TSN sequence. SACKs are sent using the delayed
-acknowledgment method similar to TCP, that is, one SCTP per every other
-received packet with an upper bound on the delay (when there are gaps detected
-the frequency is increased to one every received packet). Flow and congestion
-control follow TCP algorithms: Slow Start, Congestion Avoidance, Fast Recovery
-and Fast retransmit. But unlike TCP, SCTP does not support half-close
-connection and "urgent" data.
-.sp
-.LP
-SCTP is designed to support a number of functions that are critical for
-telephony signalling transport, including multi-streaming. SCTP allows data to
-be partitioned into multiple streams that have the property of independent
-sequenced delivery so that message loss in any one stream only affects delivery
-within that stream. In many applications (particularly telephony signalling),
-it is only necessary to maintain sequencing of messages that affect some
-resource. Other messages may be delivered without having to maintain overall
-sequence integrity. A DATA chunk on an SCTP association contains the Stream
-Id/Stream Sequence Number pair, in addition to the TSN, which is used for
-sequenced delivery within a stream.
-.sp
-.LP
-SCTP uses IP's host level addressing and adds its own per-host collection of
-port addresses. The endpoints of an SCTP association are identified by the
-combination of IP address(es) and an SCTP port number. By providing the ability
-for an endpoint to have multiple IP addresses, SCTP supports multi-homing,
-which makes an SCTP association more resilient in the presence of network
-failures (assuming the network is constructed to provided redundancy). For a
-multi-homed SCTP association, a single address is used as the primary address,
-which is used as the destination address for normal DATA chunk transfers.
-Retransmitted DATA chunks are sent over alternate address(es) to increase the
-probability of reaching the remote endpoint. Continued failure to send DATA
-chunks over the primary address results in selecting an alternate address as
-the primary address. Additionally, SCTP monitors the accessibility of all
-alternate addresses by sending periodic "heartbeats" chunks. An SCTP
-association supports multi-homing by exchanging the available list of addresses
-during association setup (as part of its four-way handshake mechanism). An SCTP
-endpoint is associated with a local address using the \fBbind\fR(3SOCKET) call.
-Subsequently, the endpoint can be associated with additional addresses using
-\fBsctp_bindx\fR(3SOCKET). By using a special value of \fBINADDR_ANY\fR with IP
-or the unspecified address (all zeros) with IPv6 in the \fBbind()\fR or
-\fBsctp_bindx()\fR calls, an endpoint can be bound to all available IP or IPv6
-addresses on the system.
-.sp
-.LP
-SCTP uses a three-way mechanism to allow graceful shutdown, where each endpoint
-has confirmation of the DATA chunks received by the remote endpoint prior to
-completion of the shutdown. An Abort is provided for error cases when an
-immediate shutdown is needed.
-.sp
-.LP
-Applications can access SCTP using the socket interface as a \fBSOCK_STREAM\fR
-(one-to-one style) or \fBSOCK_SEQPACKET\fR (one-to-many style) socket type.
-.sp
-.LP
-One-to-one style socket interface supports similar semantics as sockets for
-connection oriented protocols, such as TCP. Thus, a passive socket is created
-by calling the \fBlisten\fR(3SOCKET) function after binding the socket using
-\fBbind()\fR. Associations to this passive socket can be received using
-\fBaccept\fR(3SOCKET) function. Active sockets use the \fBconnect\fR(3SOCKET)
-function after binding to initiate an association. If an active socket is not
-explicitly bound, an implicit binding is performed. If an application wants to
-exchange data during the association setup phase, it should not call
-\fBconnect()\fR, but use \fBsendto\fR(3SOCKET)/\fBsendmsg\fR(3SOCKET) to
-implicitly initiate an association. Once an association has been established,
-\fBread\fR(2) and \fBwrite\fR(2) can used to exchange data. Additionally,
-\fBsend\fR(3SOCKET), \fBrecv\fR(3SOCKET), \fBsendto()\fR,
-\fBrecvfrom\fR(3SOCKET), \fBsendmsg()\fR, and \fBrecvmsg\fR(3SOCKET) can be
-used.
-.sp
-.LP
-One-to-many socket interface supports similar semantics as sockets for
-connection less protocols, such as UDP (however, unlike UDP, it does not
-support broadcast or multicast communications). A passive socket is created
-using the \fBlisten()\fR function after binding the socket using \fBbind()\fR.
-An \fBaccept()\fR call is not needed to receive associations to this passive
-socket (in fact, an \fBaccept()\fR on a one-to-many socket will fail).
-Associations are accepted automatically and notifications of new associations
-are delivered in \fBrecvmsg()\fR provided notifications are enabled. Active
-sockets after binding (implicitly or explicitly) need not call \fBconnect()\fR
-to establish an association, implicit associations can be created using
-\fBsendmsg()\fR/\fBrecvmsg()\fR or \fBsendto()\fR/\fBrecvfrom()\fR calls. Such
-implicit associations cannot be created using \fBsend()\fR and \fBrecv()\fR
-calls. On an SCTP socket (one-to-one or one-to-many), an association may be
-established using \fBsendmsg()\fR. However, if an association already exists
-for the destination address specified in the \fImsg_name\fR member of the
-\fImsg\fR parameter, \fBsendmsg()\fR must include the association id in
-\fImsg_iov\fR member of the \fImsg\fR parameter (using \fBsctp_sndrcvinfo\fR
-structure) for a one-to-many SCTP socket. If the association id is not
-provided, \fBsendmsg()\fR fails with \fBEADDRINUSE\fR. On a one-to-one socket
-the destination information in the \fImsg\fR parameter is ignored for an
-established association.
-.sp
-.LP
-A one-to-one style association can be created from a one-to-many association by
-branching it off using the \fBsctp_peeloff\fR(3SOCKET) call; \fBsend()\fR and
-\fBrecv()\fR can be used on such peeled off associations. Calling
-\fBclose\fR(2) on a one-to-many socket will gracefully shutdown all the
-associations represented by that one-to-many socket.
-.sp
-.LP
-The \fBsctp_sendmsg\fR(3SOCKET) and \fBsctp_recvmsg\fR(3SOCKET) functions can
-be used to access advanced features provided by SCTP.
-.sp
-.LP
-SCTP provides the following socket options which are set using
-\fBsetsockopt\fR(3SOCKET) and read using \fBgetsockopt\fR(3SOCKET). The option
-level is the protocol number for SCTP, available from
-\fBgetprotobyname\fR(3SOCKET).
-.sp
-.ne 2
-.na
-\fB\fBSCTP_NODELAY\fR\fR
-.ad
-.sp .6
-.RS 4n
-Turn on/off any Nagle-like algorithm (similar to \fBTCP_NODELAY\fR).
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSO_RCVBUF\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set the receive buffer.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSO_SNDBUF\fR\fR
-.ad
-.sp .6
-.RS 4n
-Set the send buffer.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSCTP_AUTOCLOSE\fR\fR
-.ad
-.sp .6
-.RS 4n
-For one-to-many style socket, automatically close any association that has been
-idle for more than the specified number of seconds. A value of '0' indicates
-that no associations should be closed automatically.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSCTP_EVENTS\fR\fR
-.ad
-.sp .6
-.RS 4n
-Specify various notifications and ancillary data the user wants to receive.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSCTP_STATUS\fR\fR
-.ad
-.sp .6
-.RS 4n
-Retrieve current status information about an SCTP association.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBSCTP_GET_ASSOC_STATS\fR\fR
-.ad
-.sp .6
-.RS 4n
-Gather and reset per endpoint association statistics.
-.RE
-
-.sp
-.LP
-Example Usage:
-.sp
-.in +2
-.nf
-#include <netinet/sctp.h>
-
-struct sctp_assoc_stats stat;
-int rc;
-
-int32_t len = sizeof (stat);
-
-/*
- * Per endpoint stats use the socket descriptor for sctp association.
- */
-
-/* Gather per endpoint association statistics */
-rc = getsockopt(sd, IPPROTO_SCTP, SCTP_GET_ASSOC_STATS, &stat, &len);
-.fi
-.in -2
-
-.sp
-.LP
-Extract from the modified header file:
-.sp
-.in +2
-.nf
-sctp.h
-
- /*
- * SCTP socket option used to read per endpoint association statistics.
- */
- #define SCTP_GET_ASSOC_STATS 24
-
- /*
- * A socket user request reads local per endpoint association stats.
- * All stats are counts except sas_maxrto, which is the max value
- * since the last user request for stats on this endpoint.
- */
- typedef struct sctp_assoc_stats {
- uint64_t sas_rtxchunks; /* Retransmitted Chunks */
- uint64_t sas_gapcnt; /* Gap Acknowledgements Received */
- uint64_t sas_maxrto; /* Maximum Observed RTO this period */
- uint64_t sas_outseqtsns; /* TSN received > next expected */
- uint64_t sas_osacks; /* SACKs sent */
- uint64_t sas_isacks; /* SACKs received */
- uint64_t sas_octrlchunks; /* Control chunks sent - no dups */
- uint64_t sas_ictrlchunks; /* Control chunks received - no dups */
- uint64_t sas_oodchunks; /* Ordered data chunks sent */
- uint64_t sas_iodchunks; /* Ordered data chunks received */
- uint64_t sas_ouodchunks; /* Unordered data chunks sent */
- uint64_t sas_iuodchunks; /* Unordered data chunks received */
- uint64_t sas_idupchunks; /* Dups received (ordered+unordered) */
-} sctp_assoc_stats_t;
-.fi
-.in -2
-
-.SH MULTIHOMING
-.sp
-.LP
-The ability of SCTP to use multiple addresses in an association can create
-issues with some network utilities. This requires a system administrator to be
-careful in setting up the system.
-.sp
-.LP
-For example, the \fBtcpd\fR allows an administrator to use a simple form of
-address/hostname access control. While \fBtcpd\fR can work with SCTP, the
-access control part can have some problems. The \fBtcpd\fR access control is
-only based on one of the addresses at association setup time. Once as
-association is allowed, no more checking is performed. This means that during
-the life time of the association, SCTP packets from different addresses of the
-peer host can be received in the system. This may not be what the system
-administrator wants as some of the peer's addresses are supposed to be blocked.
-.sp
-.LP
-Another example is the use of IP Filter, which provides several functions such
-as IP packet filtering (\fBipf\fR(1M)) and NAT \fBipnat\fR(1M)). For packet
-filtering, one issue is that a filter policy can block packets from some of the
-addresses of an association while allowing packets from other addresses to go
-through. This can degrade SCTP's performance when failure occurs. There is a
-more serious issue with IP address rewrite by NAT. At association setup time,
-SCTP endpoints exchange IP addresses. But IP Filter is not aware of this. So
-when NAT is done on a packet, it may change the address to an unacceptable one.
-Thus the SCTP association setup may succeed but packets cannot go through
-afterwards when a different IP address is used for the association.
-.SH SEE ALSO
-.sp
-.LP
-\fBipf\fR(1M), \fBipnat\fR(1M), \fBndd\fR(1M), \fBioctl\fR(2), \fBclose\fR(2),
-\fBread\fR(2), \fBwrite\fR(2), \fBaccept\fR(3SOCKET), \fBbind\fR(3SOCKET),
-\fBconnect\fR(3SOCKET), \fBgetprotobyname\fR(3SOCKET),
-\fBgetsockopt\fR(3SOCKET), \fBlibsctp\fR(3LIB), \fBlisten\fR(3SOCKET),
-\fBrecv\fR(3SOCKET), \fBrecvfrom\fR(3SOCKET), \fBrecvmsg\fR(3SOCKET),
-\fBsctp_bindx\fR(3SOCKET), \fBsctp_getladdrs\fR(3SOCKET),
-\fBsctp_getpaddrs\fR(3SOCKET), \fBsctp_freepaddrs\fR(3SOCKET),
-\fBsctp_opt_info\fR(3SOCKET), \fBsctp_peeloff\fR(3SOCKET),
-\fBsctp_recvmsg\fR(3SOCKET), \fBsctp_sendmsg\fR(3SOCKET), \fBsend\fR(3SOCKET),
-\fBsendmsg\fR(3SOCKET), \fBsendto\fR(3SOCKET), \fBsocket\fR(3SOCKET),
-\fBipfilter\fR(5), \fBtcp\fR(7P), \fBudp\fR(7P), \fBinet\fR(7P),
-\fBinet6\fR(7P), \fBip\fR(7P), \fBip6\fR(7P)
-.sp
-.LP
-R. Stewart, Q. Xie, K. Morneault, C. Sharp, H. Schwarzbauer, T. Taylor, I.
-Rytina, M. Kalla, L. Zang, V. Paxson, \fIRFC 2960, Stream Control Transmission
-Protocol\fR, October 2000
-.sp
-.LP
-L. Ong, J. Yoakum, \fIRFC 3286, An Introduction to Stream Control Transmission
-Protocol (SCTP)\fR, May 2002
-.sp
-.LP
-J. Stone, R. Stewart, D. Otis, \fIRFC 3309, Stream Control Transmission
-Protocol (SCTP) Checksum Change\fR, September 2002.
-.SH DIAGNOSTICS
-.sp
-.LP
-A socket operation may fail if:
-.sp
-.ne 2
-.na
-\fB\fBEPROTONOSUPPORT\fR\fR
-.ad
-.RS 19n
-The socket type is other than \fBSOCK_STREAM\fR and \fBSOCK_SEQPACKET\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBETIMEDOUT\fR\fR
-.ad
-.RS 19n
-An association was dropped due to excessive retransmissions.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBECONNREFUSED\fR\fR
-.ad
-.RS 19n
-The remote peer refused establishing an association.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEADDRINUSE\fR\fR
-.ad
-.RS 19n
-A \fBbind()\fR operation was attempted on a socket with a network address/port
-pair that has already been bound to another socket.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEINVAL\fR\fR
-.ad
-.RS 19n
-A \fBbind()\fR operation was attempted on a socket with an invalid network
-address.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEPERM\fR\fR
-.ad
-.RS 19n
-A \fBbind()\fR operation was attempted on a socket with a "reserved" port
-number and the effective user ID of the process was not the privileged user.
-.RE
-
diff --git a/usr/src/man/man7p/sip.7p b/usr/src/man/man7p/sip.7p
deleted file mode 100644
index 2a60163606..0000000000
--- a/usr/src/man/man7p/sip.7p
+++ /dev/null
@@ -1,27 +0,0 @@
-'\" te
-.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SIP 7P "Jul 29, 2004"
-.SH NAME
-sip \- SIP Proxy/registrar/redirect server
-.SH DESCRIPTION
-.sp
-.LP
-Solaris supports deployment of VoIP/SIP services by providing an \fIRFC
-3261\fR-compliant SIP proxy/registrar/redirect server called SER from
-\fIiptel.org\fR.
-.sp
-.LP
-See the \fBser(8)\fR man page under \fB/usr/sfw/man\fR.
-.SH FILES
-.sp
-.LP
-\fB/etc/sfw/ser/ser.cfg\fR
-.sp
-.LP
-\fB/etc/sfw/ser/README.solaris.ser\fR
-.sp
-.LP
-\fB/usr/sfw/share/doc/ser/README\fR
diff --git a/usr/src/man/man7p/slp.7p b/usr/src/man/man7p/slp.7p
deleted file mode 100644
index 1f45c63317..0000000000
--- a/usr/src/man/man7p/slp.7p
+++ /dev/null
@@ -1,127 +0,0 @@
-'\" te
-.\" Copyright (C) 1999, Sun Microsystems, Inc.
-.\" All Rights Reserved.
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SLP 7P "Nov 17, 1999"
-.SH NAME
-slp \- Service Location Protocol
-.SH DESCRIPTION
-.sp
-.LP
-The Service Location Protocol (\fBSLP\fR) is a dynamic service discovery
-protocol that runs on top of the Internet Protocol (\fBIP\fR). The protocol is
-specified by the \fBIETF\fR standard-track documents \fIRFC 2165\fR, \fIRFC
-2608\fR, \fIRFC 2609\fR; the \fBAPI\fR is documented in \fIRFC 2614\fR. .
-.sp
-.LP
-There are two components to the \fBSLP\fR technology. The first is a daemon,
-\fBslpd\fR(1M), which coordinates \fBSLP\fR operations. The second is a
-software library, \fBslp_api\fR(3SLP), through which processes access a public
-\fBAPI\fR. Both components are configured by means of the \fBSLP\fR
-configuration file, \fBslp.conf\fR(4).
-.sp
-.LP
-The \fBSLP\fR \fBAPI\fR is useful for two types of processes:
-.sp
-.ne 2
-.na
-\fBClient Applications\fR
-.ad
-.RS 23n
-Services and service information can be requested from the \fBAPI\fR. Clients
-do not need to know the location of a required service, only the type of
-service, and optionally, the service characteristics. \fBSLP\fR will supply
-the location and other information to the client through the \fBAPI\fR.
-.RE
-
-.sp
-.ne 2
-.na
-\fBServer Processes\fR
-.ad
-.RS 23n
-Programs that offer network services use the \fBSLP\fR \fBAPI\fR to advertise
-their location as well as other service information. The advertisement can
-optionally include attributes describing the service. Advertisements are
-accompanied by a lifetime; when the lifetime expires, the advertisement is
-flushed, unless it is refreshed prior to expiration.
-.RE
-
-.sp
-.LP
-\fBAPI\fR libraries are available for both the C and Java languages.
-.sp
-.LP
-\fBSLP\fR provides the following additional features:
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBslpd\fR(1M) can be configured to function as a transparent directory agent.
-This feature makes \fBSLP\fR scalable to the enterprise. System administrators
-can configure directory agents to achieve a number of different strategies for
-scalability.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-\fBSLP\fR service advertising and discovery is performed in scopes. Unless
-otherwise configured, all discovery and all advertisements are in the scope
-\fIdefault\fR. In the case of a larger network, scopes can be used to group
-services and client systems so that users will only find those services which
-are physically near them, belong to their department, or satisfy the specified
-criteria. Administrators can configure these scopes to achieve different
-service provider strategies.
-.RE
-.RS +4
-.TP
-.ie t \(bu
-.el o
-Services may be registered by proxy through a serialized registration file.
-This is an alternative to registering services through the \fBAPI\fR. See
-\fBslpd.reg\fR(4) for more information.
-.RE
-.SH ATTRIBUTES
-.sp
-.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
-.sp
-
-.sp
-.TS
-box;
-c | c
-l | l .
-ATTRIBUTE TYPE ATTRIBUTE VALUE
-_
-CSI CSI-enabled
-_
-Interface Stability Standard
-_
-MT-Level MT-Safe
-.TE
-
-.SH SEE ALSO
-.sp
-.LP
-\fBslpd\fR(1M), \fBslp_api\fR(3SLP), \fBslp.conf\fR(4), \fBslpd.reg\fR(4),
-\fBattributes\fR(5)
-.sp
-.LP
-Guttman, E., Perkins, C., Veizades, J., and Day, M., \fIRFC 2608, Service
-Location Protocol, Version 2\fR, The Internet Society, June 1999.
-.sp
-.LP
-Guttman, E., Perkins, C., and Kempf, J., \fIRFC 2609, Service Templates and
-Service: Schemes\fR, The Internet Society, June 1999.
-.sp
-.LP
-Kempf, J. and Guttman, E., \fIRFC 2614, An API for Service Location\fR, The
-Internet Society, June 1999.
-.sp
-.LP
-Veizades, J., Guttman, E., Perkins, C., and Kaplan, S., \fIRFC 2165, Service
-Location Protocol\fR, Network Working Group, 1997.
diff --git a/usr/src/man/man7p/tcp.7p b/usr/src/man/man7p/tcp.7p
deleted file mode 100644
index 6dc5413c42..0000000000
--- a/usr/src/man/man7p/tcp.7p
+++ /dev/null
@@ -1,898 +0,0 @@
-'\"
-.\" This file and its contents are supplied under the terms of the
-.\" Common Development and Distribution License ("CDDL"), version 1.0.
-.\" You may only use this file in accordance with the terms of version
-.\" 1.0 of the CDDL.
-.\"
-.\" A full copy of the text of the CDDL should have accompanied this
-.\" source. A copy of the CDDL is also available via the Internet at
-.\" http://www.illumos.org/license/CDDL.
-.\"
-.\"
-.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright (c) 2011 Nexenta Systems, Inc. All rights reserved.
-.\" Copyright 2019 Joyent, Inc.
-.\" Copyright 2022 Oxide Computer Company
-.\" Copyright 1989 AT&T
-.\"
-.Dd "Jan 07, 2019"
-.Dt TCP 7P
-.Os
-.Sh NAME
-.Nm tcp ,
-.Nm TCP
-.Nd Internet Transmission Control Protocol
-.Sh SYNOPSIS
-.In sys/socket.h
-.In netinet/in.h
-.In netinet/tcp.h
-.Bd -literal
-s = socket(AF_INET, SOCK_STREAM, 0);
-s = socket(AF_INET6, SOCK_STREAM, 0);
-t = t_open("/dev/tcp", O_RDWR);
-t = t_open("/dev/tcp6", O_RDWR);
-.Ed
-.Sh DESCRIPTION
-TCP is the virtual circuit protocol of the Internet protocol family.
-It provides reliable, flow-controlled, in-order, two-way transmission of data.
-It is a byte-stream protocol layered above the Internet Protocol
-.Po Sy IP Pc ,
-or the Internet Protocol Version 6
-.Po Sy IPv6 Pc ,
-the Internet protocol family's
-internetwork datagram delivery protocol.
-.Pp
-Programs can access TCP using the socket interface as a
-.Dv SOCK_STREAM
-socket type, or using the Transport Level Interface
-.Po Sy TLI Pc
-where it supports the connection-oriented
-.Po Dv BT_COTS_ORD Pc
-service type.
-.Pp
-A checksum over all data helps TCP provide reliable communication.
-Using a window-based flow control mechanism that makes use of positive
-acknowledgements, sequence numbers, and a retransmission strategy, TCP can
-usually recover when datagrams are damaged, delayed, duplicated or delivered
-out of order by the underlying medium.
-.Pp
-TCP provides several socket options, defined in
-.In netinet/tcp.h
-and described throughout this document,
-which may be set using
-.Xr setsockopt 3SOCKET
-and read using
-.Xr getsockopt 3SOCKET .
-The
-.Fa level
-argument for these calls is the protocol number for TCP, available from
-.Xr getprotobyname 3SOCKET .
-IP level options may also be used with TCP.
-See
-.Xr ip 7P
-and
-.Xr ip6 7P .
-.Ss "Listening And Connecting"
-TCP uses IP's host-level addressing and adds its own per-host
-collection of
-.Dq port addresses .
-The endpoints of a TCP connection are
-identified by the combination of an IPv4 or IPv6 address and a TCP
-port number.
-Although other protocols, such as the User Datagram Protocol
-.Po Sy UDP Pc ,
-may use the same host and port address format, the port space of these
-protocols is distinct.
-See
-.Xr inet 7P
-and
-.Xr inet6 7P
-for details on
-the common aspects of addressing in the Internet protocol family.
-.Pp
-Sockets utilizing TCP are either
-.Dq active
-or
-.Dq passive .
-Active sockets
-initiate connections to passive sockets.
-Passive sockets must have their local IPv4 or IPv6 address and TCP port number
-bound with the
-.Xr bind 3SOCKET
-system call after the socket is created.
-If an active socket has not been bound by the time
-.Xr connect 3SOCKET
-is called, then the operating system will choose a local address and port for
-the application.
-By default, TCP sockets are active.
-A passive socket is created by calling the
-.Xr listen 3SOCKET
-system call after binding, which establishes a queueing parameter for the
-passive socket.
-Connections to the passive socket can then be received using the
-.Xr accept 3SOCKET
-system call.
-Active sockets use the
-.Xr connect 3SOCKET
-call after binding to initiate connections.
-.Pp
-If incoming connection requests include an IP source route option, then the
-reverse source route will be used when responding.
-.Pp
-By using the special value
-.Dv INADDR_ANY
-with IPv4, or the unspecified
-address (all zeroes) with IPv6, the local IP address can be left
-unspecified in the
-.Fn bind
-call by either active or passive TCP
-sockets.
-This feature is usually used if the local address is either unknown or
-irrelevant.
-If left unspecified, the local IP address will be bound at connection time to
-the address of the network interface used to service the connection.
-For passive sockets, this is the destination address used by the connecting
-peer.
-For active sockets, this is usually an address on the same subnet as the
-destination or default gateway address, although the rules can be more complex.
-See
-.Sy "Source Address Selection"
-in
-.Xr inet6 7P
-for a detailed discussion of how this works in IPv6.
-.Pp
-Note that no two TCP sockets can be bound to the same port unless the bound IP
-addresses are different.
-IPv4
-.Dv INADDR_ANY
-and IPv6 unspecified addresses compare as equal to any IPv4 or IPv6 address.
-For example, if a socket is bound to
-.Dv INADDR_ANY
-or the unspecified address and port
-.Em N ,
-no other socket can bind to port
-.Em N ,
-regardless of the binding address.
-This special consideration of
-.Dv INADDR_ANY
-and the unspecified address can be changed using the socket option
-.Dv SO_REUSEADDR .
-If
-.Dv SO_REUSEADDR
-is set on a socket doing a bind, IPv4
-.Dv INADDR_ANY
-and the IPv6 unspecified address do not compare as equal to any IP address.
-This means that as long as the two sockets are not both bound to
-.Dv INADDR_ANY ,
-the unspecified address, or the same IP address, then the two sockets can be
-bound to the same port.
-.Pp
-If an application does not want to allow another socket using the
-.Dv SO_REUSEADDR
-option to bind to a port its socket is bound to, the
-application can set the socket-level
-.Po Dv SOL_SOCKET Pc
-option
-.Dv SO_EXCLBIND
-on a socket.
-The
-option values of 0 and 1 mean enabling and disabling the option respectively.
-Once this option is enabled on a socket, no other socket can be bound to the
-same port.
-.Ss "Sending And Receiving Data"
-Once a connection has been established, data can be exchanged using the
-.Xr read 2
-and
-.Xr write 2
-system calls.
-If, after sending data, the local TCP receives no acknowledgements from its
-peer for a period of time (for example, if the remote machine crashes), the
-connection is closed and an error is returned.
-.Pp
-When a peer is sending data, it will only send up to the advertised
-.Dq receive window ,
-which is determined by how much more data the recipient can fit in its buffer.
-Applications can use the socket-level option
-.Dv SO_RCVBUF
-to increase or decrease the receive buffer size.
-Similarly, the socket-level option
-.Dv SO_SNDBUF
-can be used to allow TCP to buffer more unacknowledged and unsent data locally.
-.Pp
-Under most circumstances, TCP will send data when it is written by the
-application.
-When outstanding data has not yet been acknowledged, though, TCP will gather
-small amounts of output to be sent as a single packet once an acknowledgement
-has been received.
-Usually referred to as Nagle's Algorithm (RFC 896), this behavior helps prevent
-flooding the network with many small packets.
-.Pp
-However, for some highly interactive clients (such as remote shells or
-windowing systems that send a stream of keypresses or mouse events), this
-batching may cause significant delays.
-To disable this behavior, TCP provides a boolean socket option,
-.Dv TCP_NODELAY .
-.Pp
-Conversely, for other applications, it may be desirable for TCP not to send out
-any data until a full TCP segment can be sent.
-To enable this behavior, an application can use the TCP-level socket option
-.Dv TCP_CORK .
-When set to a non-zero value, TCP will only send out a full TCP segment.
-When
-.Dv TCP_CORK
-is set to zero after it has been enabled, all currently buffered data is sent
-out (as permitted by the peer's receive window and the current congestion
-window).
-.Pp
-Still other latency-sensitive applications rely on receiving a quick
-notification that their packets have been successfully received.
-To satisfy the requirements of those applications, setting the
-.Dv TCP_QUICKACK
-option to a non-zero value will instruct the TCP stack to send an acknowlegment
-immediately upon receipt of a packet, rather than waiting to acknowledge
-multiple packets at once.
-.Pp
-TCP provides an urgent data mechanism, which may be invoked using the
-out-of-band provisions of
-.Xr send 3SOCKET .
-The caller may mark one byte as
-.Dq urgent
-with the
-.Dv MSG_OOB
-flag to
-.Xr send 3SOCKET .
-This sets an
-.Dq urgent pointer
-pointing to this byte in the TCP stream.
-The receiver on the other side of the stream is notified of the urgent data by a
-.Dv SIGURG
-signal.
-The
-.Dv SIOCATMARK
-.Xr ioctl 2
-request returns a value indicating whether the stream is at the urgent mark.
-Because the system never returns data across the urgent mark in a single
-.Xr read 2
-call, it is possible to
-advance to the urgent data in a simple loop which reads data, testing the
-socket with the
-.Dv SIOCATMARK
-.Fn ioctl
-request, until it reaches the mark.
-.Ss "Congestion Control"
-TCP follows the congestion control algorithm described in RFC 2581, and
-also supports the initial congestion window (cwnd) changes in RFC 3390.
-The initial cwnd calculation can be overridden by the socket option
-.Dv TCP_INIT_CWND .
-An application can use this option to set the initial cwnd to a
-specified number of TCP segments.
-This applies to the cases when the connection
-first starts and restarts after an idle period.
-The process must have the
-.Dv PRIV_SYS_NET_CONFIG
-privilege if it wants to specify a number greater than that
-calculated by RFC 3390.
-.Pp
-The operating system also provides alternative algorithms that may be more
-appropriate for your application, including the CUBIC congestion control
-algorithm described in RFC 8312.
-These can be configured system-wide using
-.Xr ipadm 1M ,
-or on a per-connection basis with the TCP-level socket option
-.Dv TCP_CONGESTION ,
-whose argument is the name of the algorithm to use
-.Pq for example Dq cubic .
-If the requested algorithm does not exist, then
-.Fn setsockopt
-will fail, and
-.Va errno
-will be set to
-.Er ENOENT .
-.Ss "TCP Keep-Alive"
-Since TCP determines whether a remote peer is no longer reachable by timing out
-waiting for acknowledgements, a host that never sends any new data may never
-notice a peer that has gone away.
-While consumers can avoid this problem by sending their own periodic heartbeat
-messages (Transport Layer Security does this, for example),
-TCP describes an optional keep-alive mechanism in RFC 1122.
-Applications can enable it using the socket-level option
-.Dv SO_KEEPALIVE .
-When enabled, the first keep-alive probe is sent out after a TCP connection is
-idle for two hours.
-If the peer does not respond to the probe within eight minutes, the TCP
-connection is aborted.
-An application can alter the probe behavior using the following TCP-level
-socket options:
-.Bl -tag -offset indent -width 16m
-.It Dv TCP_KEEPALIVE_THRESHOLD
-Determines the interval for sending the first probe.
-The option value is specified as an unsigned integer in milliseconds.
-The system default is controlled by the TCP
-.Nm ndd
-parameter
-.Cm tcp_keepalive_interval .
-The minimum value is ten seconds.
-The maximum is ten days, while the default is two hours.
-.It Dv TCP_KEEPALIVE_ABORT_THRESHOLD
-If TCP does not receive a response to the probe, then this option determines
-how long to wait before aborting a TCP connection.
-The option value is an unsigned integer in milliseconds.
-The value zero indicates that TCP should never time
-out and abort the connection when probing.
-The system default is controlled by the TCP
-.Nm ndd
-parameter
-.Sy tcp_keepalive_abort_interval .
-The default is eight minutes.
-.It Dv TCP_KEEPIDLE
-This option, like
-.Dv TCP_KEEPALIVE_THRESHOLD ,
-determines the interval for sending the first probe, except that
-the option value is an unsigned integer in
-.Sy seconds .
-It is provided primarily for compatibility with other Unix flavors.
-.It Dv TCP_KEEPCNT
-This option specifies the number of keep-alive probes that should be sent
-without any response from the peer before aborting the connection.
-.It Dv TCP_KEEPINTVL
-This option specifies the interval in seconds between successive,
-unacknowledged keep-alive probes.
-.El
-.Ss "Additional Configuration"
-illumos supports TCP Extensions for High Performance (RFC 7323)
-which includes the window scale and timestamp options, and Protection Against
-Wrap Around Sequence Numbers
-.Po Sy PAWS Pc .
-Note that if timestamps are negotiated on
-a connection, received segments without timestamps on that connection are
-silently dropped per the suggestion in the RFC. illumos also supports Selective
-Acknowledgment
-.Po Sy SACK Pc
-capabilities (RFC 2018) and Explicit Congestion
-Notification
-.Po Sy ECN Pc
-mechanism (RFC 3168).
-.Pp
-Turn on the window scale option in one of the following ways:
-.Bl -bullet -offset indent -width 4m
-.It
-An application can set
-.Dv SO_SNDBUF
-or
-.Dv SO_RCVBUF
-size in the
-.Fn setsockopt
-option to be larger than 64K.
-This must be done
-.Em before
-the program calls
-.Fn listen
-or
-.Fn connect ,
-because the window scale
-option is negotiated when the connection is established.
-Once the connection
-has been made, it is too late to increase the send or receive window beyond the
-default TCP limit of 64K.
-.It
-For all applications, use
-.Xr ndd 1M
-to modify the configuration parameter
-.Cm tcp_wscale_always .
-If
-.Cm tcp_wscale_always
-is set to
-.Sy 1 ,
-the
-window scale option will always be set when connecting to a remote system.
-If
-.Cm tcp_wscale_always
-is
-.Sy 0 ,
-the window scale option will be set only if
-the user has requested a send or receive window larger than 64K.
-The default value of
-.Cm tcp_wscale_always
-is
-.Sy 1 .
-.It
-Regardless of the value of
-.Cm tcp_wscale_always ,
-the window scale option
-will always be included in a connect acknowledgement if the connecting system
-has used the option.
-.El
-.Pp
-Turn on SACK capabilities in the following way:
-.Bl -bullet -offset indent -width 4m
-.It
-Use
-.Nm ndd
-to modify the configuration parameter
-.Cm tcp_sack_permitted .
-If
-.Cm tcp_sack_permitted
-is set to
-.Sy 0 ,
-TCP will not accept SACK or send out SACK information.
-If
-.Cm tcp_sack_permitted
-is
-set to
-.Sy 1 ,
-TCP will not initiate a connection with SACK permitted option in the
-.Sy SYN
-segment, but will respond with SACK permitted option in the
-.Sy SYN|ACK
-segment if an incoming connection request has the SACK permitted option.
-This means that TCP will only accept SACK information if the other side of the
-connection also accepts SACK information.
-If
-.Cm tcp_sack_permitted
-is set to
-.Sy 2 ,
-it will both initiate and accept connections with SACK information.
-The default for
-.Cm tcp_sack_permitted
-is
-.Sy 2
-.Pq active enabled .
-.El
-.Pp
-Turn on the TCP ECN mechanism in the following way:
-.Bl -bullet -offset indent -width 4m
-.It
-Use
-.Nm ndd
-to modify the configuration parameter
-.Cm tcp_ecn_permitted .
-If
-.Cm tcp_ecn_permitted
-is set to
-.Sy 0 ,
-then TCP will not negotiate with a peer that supports ECN mechanism.
-If
-.Cm tcp_ecn_permitted
-is set to
-.Sy 1
-when initiating a connection, TCP will not tell a peer that it supports
-.Sy ECN
-mechanism.
-However, it will tell a peer that it supports
-.Sy ECN
-mechanism when accepting a new incoming connection request if the peer
-indicates that it supports
-.Sy ECN
-mechanism in the
-.Sy SYN
-segment.
-If
-.Cm tcp_ecn_permitted
-is set to 2, in addition to negotiating with a peer on
-.Sy ECN
-mechanism when accepting connections, TCP will indicate in the outgoing
-.Sy SYN
-segment that it supports
-.Sy ECN
-mechanism when TCP makes active outgoing connections.
-The default for
-.Cm tcp_ecn_permitted
-is 1.
-.El
-.Pp
-Turn on the timestamp option in the following way:
-.Bl -bullet -offset indent -width 4m
-.It
-Use
-.Nm ndd
-to modify the configuration parameter
-.Cm tcp_tstamp_always .
-If
-.Cm tcp_tstamp_always
-is
-.Sy 1 ,
-the timestamp option will always be set
-when connecting to a remote machine.
-If
-.Cm tcp_tstamp_always
-is
-.Sy 0 ,
-the timestamp option will not be set when connecting to a remote system.
-The
-default for
-.Cm tcp_tstamp_always
-is
-.Sy 0 .
-.It
-Regardless of the value of
-.Cm tcp_tstamp_always ,
-the timestamp option will
-always be included in a connect acknowledgement (and all succeeding packets) if
-the connecting system has used the timestamp option.
-.El
-.Pp
-Use the following procedure to turn on the timestamp option only when the
-window scale option is in effect:
-.Bl -bullet -offset indent -width 4m
-.It
-Use
-.Nm ndd
-to modify the configuration parameter
-.Cm tcp_tstamp_if_wscale .
-Setting
-.Cm tcp_tstamp_if_wscale
-to
-.Sy 1
-will cause the timestamp option
-to be set when connecting to a remote system, if the window scale option has
-been set.
-If
-.Cm tcp_tstamp_if_wscale
-is
-.Sy 0 ,
-the timestamp option will
-not be set when connecting to a remote system.
-The default for
-.Cm tcp_tstamp_if_wscale
-is
-.Sy 1 .
-.El
-.Pp
-Protection Against Wrap Around Sequence Numbers
-.Po Sy PAWS Pc
-is always used when the
-timestamp option is set.
-.Pp
-The operating system also supports multiple methods of generating initial sequence numbers.
-One of these methods is the improved technique suggested in RFC 1948.
-We
-.Em HIGHLY
-recommend that you set sequence number generation parameters as
-close to boot time as possible.
-This prevents sequence number problems on
-connections that use the same connection-ID as ones that used a different
-sequence number generation.
-The
-.Sy svc:/network/initial:default
-service configures the initial sequence number generation.
-The service reads the value contained in the configuration file
-.Pa /etc/default/inetinit
-to determine which method to use.
-.Pp
-The
-.Pa /etc/default/inetinit
-file is an unstable interface, and may change in future releases.
-.Sh EXAMPLES
-.Ss Example 1: Connecting to a server
-.Bd -literal
-$ gcc -std=c99 -Wall -lsocket -o client client.c
-$ cat client.c
-#include <sys/socket.h>
-#include <netinet/in.h>
-#include <netinet/tcp.h>
-#include <netdb.h>
-#include <stdio.h>
-#include <string.h>
-#include <unistd.h>
-
-int
-main(int argc, char *argv[])
-{
- struct addrinfo hints, *gair, *p;
- int fd, rv, rlen;
- char buf[1024];
- int y = 1;
-
- if (argc != 3) {
- fprintf(stderr, "%s <host> <port>\\n", argv[0]);
- return (1);
- }
-
- memset(&hints, 0, sizeof (hints));
- hints.ai_family = PF_UNSPEC;
- hints.ai_socktype = SOCK_STREAM;
-
- if ((rv = getaddrinfo(argv[1], argv[2], &hints, &gair)) != 0) {
- fprintf(stderr, "getaddrinfo() failed: %s\\n",
- gai_strerror(rv));
- return (1);
- }
-
- for (p = gair; p != NULL; p = p->ai_next) {
- if ((fd = socket(
- p->ai_family,
- p->ai_socktype,
- p->ai_protocol)) == -1) {
- perror("socket() failed");
- continue;
- }
-
- if (connect(fd, p->ai_addr, p->ai_addrlen) == -1) {
- close(fd);
- perror("connect() failed");
- continue;
- }
-
- break;
- }
-
- if (p == NULL) {
- fprintf(stderr, "failed to connect to server\\n");
- return (1);
- }
-
- freeaddrinfo(gair);
-
- if (setsockopt(fd, SOL_SOCKET, SO_KEEPALIVE, &y,
- sizeof (y)) == -1) {
- perror("setsockopt(SO_KEEPALIVE) failed");
- return (1);
- }
-
- while ((rlen = read(fd, buf, sizeof (buf))) > 0) {
- fwrite(buf, rlen, 1, stdout);
- }
-
- if (rlen == -1) {
- perror("read() failed");
- }
-
- fflush(stdout);
-
- if (close(fd) == -1) {
- perror("close() failed");
- }
-
- return (0);
-}
-$ ./client 127.0.0.1 8080
-hello
-$ ./client ::1 8080
-hello
-.Ed
-.Ss Example 2: Accepting client connections
-.Bd -literal
-$ gcc -std=c99 -Wall -lsocket -o server server.c
-$ cat server.c
-#include <sys/socket.h>
-#include <netinet/in.h>
-#include <netinet/tcp.h>
-#include <netdb.h>
-#include <stdio.h>
-#include <string.h>
-#include <unistd.h>
-#include <arpa/inet.h>
-
-void
-logmsg(struct sockaddr *s, int bytes)
-{
- char dq[INET6_ADDRSTRLEN];
-
- switch (s->sa_family) {
- case AF_INET: {
- struct sockaddr_in *s4 = (struct sockaddr_in *)s;
- inet_ntop(AF_INET, &s4->sin_addr, dq, sizeof (dq));
- fprintf(stdout, "sent %d bytes to %s:%d\\n",
- bytes, dq, ntohs(s4->sin_port));
- break;
- }
- case AF_INET6: {
- struct sockaddr_in6 *s6 = (struct sockaddr_in6 *)s;
- inet_ntop(AF_INET6, &s6->sin6_addr, dq, sizeof (dq));
- fprintf(stdout, "sent %d bytes to [%s]:%d\\n",
- bytes, dq, ntohs(s6->sin6_port));
- break;
- }
- default:
- fprintf(stdout, "sent %d bytes to unknown client\\n",
- bytes);
- break;
- }
-}
-
-int
-main(int argc, char *argv[])
-{
- struct addrinfo hints, *gair, *p;
- int sfd, cfd;
- int slen, wlen, rv;
-
- if (argc != 3) {
- fprintf(stderr, "%s <port> <message>\\n", argv[0]);
- return (1);
- }
-
- slen = strlen(argv[2]);
-
- memset(&hints, 0, sizeof (hints));
- hints.ai_family = PF_UNSPEC;
- hints.ai_socktype = SOCK_STREAM;
- hints.ai_flags = AI_PASSIVE;
-
- if ((rv = getaddrinfo(NULL, argv[1], &hints, &gair)) != 0) {
- fprintf(stderr, "getaddrinfo() failed: %s\\n",
- gai_strerror(rv));
- return (1);
- }
-
- for (p = gair; p != NULL; p = p->ai_next) {
- if ((sfd = socket(
- p->ai_family,
- p->ai_socktype,
- p->ai_protocol)) == -1) {
- perror("socket() failed");
- continue;
- }
-
- if (bind(sfd, p->ai_addr, p->ai_addrlen) == -1) {
- close(sfd);
- perror("bind() failed");
- continue;
- }
-
- break;
- }
-
- if (p == NULL) {
- fprintf(stderr, "server failed to bind()\\n");
- return (1);
- }
-
- freeaddrinfo(gair);
-
- if (listen(sfd, 1024) != 0) {
- perror("listen() failed");
- return (1);
- }
-
- fprintf(stdout, "waiting for clients...\\n");
-
- for (int times = 0; times < 5; times++) {
- struct sockaddr_storage stor;
- socklen_t alen = sizeof (stor);
- struct sockaddr *addr = (struct sockaddr *)&stor;
-
- if ((cfd = accept(sfd, addr, &alen)) == -1) {
- perror("accept() failed");
- continue;
- }
-
- wlen = 0;
-
- do {
- wlen += write(cfd, argv[2] + wlen, slen - wlen);
- } while (wlen < slen);
-
- logmsg(addr, wlen);
-
- if (close(cfd) == -1) {
- perror("close(cfd) failed");
- }
- }
-
- if (close(sfd) == -1) {
- perror("close(sfd) failed");
- }
-
- fprintf(stdout, "finished.\\n");
-
- return (0);
-}
-$ ./server 8080 $'hello\\n'
-waiting for clients...
-sent 6 bytes to [::ffff:127.0.0.1]:59059
-sent 6 bytes to [::ffff:127.0.0.1]:47448
-sent 6 bytes to [::ffff:127.0.0.1]:54949
-sent 6 bytes to [::ffff:127.0.0.1]:55186
-sent 6 bytes to [::1]:62256
-finished.
-.Ed
-.Sh DIAGNOSTICS
-A socket operation may fail if:
-.Bl -tag -offset indent -width 16m
-.It Er EISCONN
-A
-.Fn connect
-operation was attempted on a socket on which a
-.Fn connect
-operation had already been performed.
-.It Er ETIMEDOUT
-A connection was dropped due to excessive retransmissions.
-.It Er ECONNRESET
-The remote peer forced the connection to be closed (usually because the remote
-machine has lost state information about the connection due to a crash).
-.It Er ECONNREFUSED
-The remote peer actively refused connection establishment (usually because no
-process is listening to the port).
-.It Er EADDRINUSE
-A
-.Fn bind
-operation was attempted on a socket with a network address/port pair that has
-already been bound to another socket.
-.It Er EADDRNOTAVAIL
-A
-.Fn bind
-operation was attempted on a socket with a network address for which no network
-interface exists.
-.It Er EACCES
-A
-.Fn bind
-operation was attempted with a
-.Dq reserved
-port number and the effective user ID of the process was not the privileged user.
-.It Er ENOBUFS
-The system ran out of memory for internal data structures.
-.El
-.Sh SEE ALSO
-.Xr svcs 1 ,
-.Xr ndd 1M ,
-.Xr svcadm 1M ,
-.Xr ioctl 2 ,
-.Xr read 2 ,
-.Xr write 2 ,
-.Xr accept 3SOCKET ,
-.Xr bind 3SOCKET ,
-.Xr connect 3SOCKET ,
-.Xr getprotobyname 3SOCKET ,
-.Xr getsockopt 3SOCKET ,
-.Xr listen 3SOCKET ,
-.Xr send 3SOCKET ,
-.Xr smf 5 ,
-.Xr inet 7P ,
-.Xr inet6 7P ,
-.Xr ip 7P ,
-.Xr ip6 7P
-.Rs
-.%A "K. Ramakrishnan"
-.%A "S. Floyd"
-.%A "D. Black"
-.%T "The Addition of Explicit Congestion Notification (ECN) to IP"
-.%R "RFC 3168"
-.%D "September 2001"
-.Re
-.Rs
-.%A "M. Mathias"
-.%A "J. Mahdavi"
-.%A "S. Ford"
-.%A "A. Romanow"
-.%T "TCP Selective Acknowledgement Options"
-.%R "RFC 2018"
-.%D "October 1996"
-.Re
-.Rs
-.%A "S. Bellovin"
-.%T "Defending Against Sequence Number Attacks"
-.%R "RFC 1948"
-.%D "May 1996"
-.Re
-.Rs
-.%A "D. Borman"
-.%A "B. Braden"
-.%A "V. Jacobson"
-.%A "R. Scheffenegger, Ed."
-.%T "TCP Extensions for High Performance"
-.%R "RFC 7323"
-.%D "September 2014"
-.Re
-.Rs
-.%A "Jon Postel"
-.%T "Transmission Control Protocol - DARPA Internet Program Protocol Specification"
-.%R "RFC 793"
-.%C "Network Information Center, SRI International, Menlo Park, CA."
-.%D "September 1981"
-.Re
-.Sh NOTES
-The
-.Sy tcp
-service is managed by the service management facility,
-.Xr smf 5 ,
-under the service identifier
-.Sy svc:/network/initial:default .
-.Pp
-Administrative actions on this service, such as enabling, disabling, or
-requesting restart, can be performed using
-.Xr svcadm 1M .
-The service's
-status can be queried using the
-.Xr svcs 1
-command.
diff --git a/usr/src/man/man7p/udp.7p b/usr/src/man/man7p/udp.7p
deleted file mode 100644
index 723cbb8e6b..0000000000
--- a/usr/src/man/man7p/udp.7p
+++ /dev/null
@@ -1,248 +0,0 @@
-'\" te
-.\" Copyright 2006 AT&T
-.\" Copyright (C) 2006, Sun Microsystems, Inc. All Rights Reserved
-.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
-.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH UDP 7P "Jul 4, 2006"
-.SH NAME
-udp, UDP \- Internet User Datagram Protocol
-.SH SYNOPSIS
-.LP
-.nf
-\fB#include <sys/socket.h>\fR
-.fi
-
-.LP
-.nf
-\fB#include <netinet/in.h>\fR
-.fi
-
-.LP
-.nf
-\fBs = socket(AF_INET, SOCK_DGRAM, 0);\fR
-.fi
-
-.LP
-.nf
-\fBs = socket(AF_INET6, SOCK_DGRAM, 0);\fR
-.fi
-
-.LP
-.nf
-\fBt = t_open("/dev/udp", O_RDWR);\fR
-.fi
-
-.LP
-.nf
-\fBt = t_open("/dev/udp6", O_RDWR);\fR
-.fi
-
-.SH DESCRIPTION
-.sp
-.LP
-\fBUDP\fR is a simple datagram protocol which is layered directly above the
-Internet Protocol ("\fBIP\fR") or the Internet Protocol Version 6 ("IPv6").
-Programs may access \fBUDP\fR using the socket interface, where it supports
-the \fB\fR\fBSOCK_DGRAM\fR\fB\fR socket type, or using the Transport Level
-Interface ("\fBTLI\fR"), where it supports the connectionless (\fBT_CLTS\fR)
-service type.
-.sp
-.LP
-Within the socket interface, \fBUDP\fR is normally used with the
-\fBsendto()\fR, \fBsendmsg()\fR, \fBrecvfrom()\fR, and \fBrecvmsg()\fR calls
-(see \fBsend\fR(3SOCKET) and \fBrecv\fR(3SOCKET)). If the
-\fBconnect\fR(3SOCKET) call is used to fix the destination for future packets,
-then the \fBrecv\fR(3SOCKET) or \fBread\fR(2) and \fBsend\fR(3SOCKET) or
-\fBwrite\fR(2) calls may be used.
-.sp
-.LP
-\fBUDP\fR address formats are identical to those used by the Transmission
-Control Protocol ("\fBTCP\fR"). Like \fBTCP,\fR \fBUDP\fR uses a port number
-along with an \fBIP\fRor IPv6 address to identify the endpoint of
-communication. The \fBUDP\fR port number space is separate from the \fBTCP\fR
-port number space, that is, a \fBUDP\fR port may not be "connected" to a
-\fBTCP\fR port. The \fBbind\fR(3SOCKET) call can be used to set the local
-address and port number of a \fBUDP\fR socket. The local \fBIP\fR or IPv6
-address may be left unspecified in the \fBbind()\fR call by using the special
-value \fBINADDR_ANY\fR for \fBIP\fR, or the unspecified address (all zeroes)
-for IPv6. If the \fBbind()\fR call is not done, a local \fBIP\fR or IPv6
-address and port number will be assigned to the endpoint when the first packet
-is sent. Broadcast packets may be sent, assuming the underlying network
-supports this, by using a reserved "broadcast address" This address is network
-interface dependent. Broadcasts may only be sent by the privileged user.
-.sp
-.LP
-Note that no two UDP sockets can be bound to the same port unless the bound IP
-addresses are different. IPv4 \fBINADDR_ANY\fR and IPv6 unspecified addresses
-compare as equal to any IPv4 or IPv6 address. For example, if a socket is bound
-to \fBINADDR_ANY\fR or unspecified address and port X, no other socket can bind
-to port X, regardless of the binding address. This special consideration of
-\fBINADDR_ANY\fR and unspecified address can be changed using the
-\fBSO_REUSEADDR\fR socket option. If \fBSO_REUSEADDR\fR is set on a socket
-doing a bind, IPv4 \fBINADDR_ANY\fR and IPv6 unspecified address do not compare
-as equal to any IP address. This means that as long as the two sockets are not
-both bound to \fBINADDR_ANY\fR/unspecified address or the same IP address, the
-two sockets can be bound to the same port.
-.sp
-.LP
-If an application does not want to allow another socket using the
-\fBSO_REUSEADDR\fR option to bind to a port its socket is bound to, the
-application can set the socket level option \fBSO_EXCLBIND\fR on a socket. The
-option values of 0 and 1 represent enabling and disabling the option,
-respectively. Once this option is enabled on a socket, no other socket can be
-bound to the same port.
-.sp
-.LP
-IPv6 does not support broadcast addresses; their function is supported by IPv6
-multicast addresses.
-.sp
-.LP
-Options at the \fBIP\fR level may be used with \fBUDP\fR. See \fBip\fR(7P) or
-\fBip6\fR(7P). Additionally, there is one UDP-level option of interest to IPsec
-Key Management applications (see \fBipsec\fR(7P)and \fBpf_key\fR(7P)):
-.sp
-.ne 2
-.na
-\fBUDP_NAT_T_ENDPOINT\fR
-.ad
-.sp .6
-.RS 4n
-If this boolean option is set, datagrams sent via this socket will have a
-non-ESP marker inserted between the UDP header and the data. Likewise, inbound
-packets that match the endpoint's local-port will be demultiplexed between ESP
-or the endpoint itself if a non-ESP marker is present. This option is only
-available on IPv4 sockets (AF_INET), and the application must have sufficient
-privilege to use PF_KEY sockets to also enable this option.
-.RE
-
-.sp
-.LP
-There are a variety of ways that a \fBUDP\fR packet can be lost or corrupted,
-including a failure of the underlying communication mechanism. \fBUDP\fR
-implements a checksum over the data portion of the packet. If the checksum of a
-received packet is in error, the packet will be dropped with no indication
-given to the user. A queue of received packets is provided for each \fBUDP\fR
-socket. This queue has a limited capacity. Arriving datagrams which will not
-fit within its \fIhigh-water\fR capacity are silently discarded.
-.sp
-.LP
-\fBUDP\fR processes Internet Control Message Protocol ("\fBICMP\fR") and
-Internet Control Message Protocol Version 6 ("\fBICMP6\fR") error messages
-received in response to \fBUDP\fR packets it has sent. See \fBicmp\fR(7P) and
-\fBicmp6\fR(7P).
-.sp
-.LP
-\fBICMP\fR "source quench" messages are ignored. \fBICMP\fR "destination
-unreachable," "time exceeded" and "parameter problem" messages disconnect the
-socket from its peer so that subsequent attempts to send packets using that
-socket will return an error. \fBUDP\fR will not guarantee that packets are
-delivered in the order they were sent. As well, duplicate packets may be
-generated in the communication process.
-.sp
-.LP
-\fBICMP6\fR "destination unreachable" packets are ignored unless the enclosed
-code indicates that the port is not in use on the target host, in which case,
-the application is notified. \fBICMP6\fR "parameter problem" notifications are
-similarly passed upstream. All other \fBICMP6\fR messages are ignored.
-.SH SEE ALSO
-.sp
-.LP
-\fBread\fR(2), \fBwrite\fR(2), \fBbind\fR(3SOCKET), \fBconnect\fR(3SOCKET),
-\fBrecv\fR(3SOCKET), \fBsend\fR(3SOCKET), \fBicmp\fR(7P), \fBicmp6\fR(7P),
-\fBinet\fR(7P), \fBinet6\fR(7P), \fBip\fR(7P), \fBipsec\fR(7P), \fBip6\fR(7P),
-\fBpf_key\fR(7P), \fBtcp\fR(7P)
-.sp
-.LP
-Postel, Jon, \fIRFC 768, User Datagram Protocol\fR, Network Information Center,
-SRI International, Menlo Park, Calif., August 1980
-.sp
-.LP
-Huttunen, A., Swander, B., Volpe, V., DiBurro, L., Stenberg, \fIM., RFC 3948,
-UDP Encapsulation of IPsec ESP Packets\fR, The Internet Society, 2005.
-.SH DIAGNOSTICS
-.sp
-.LP
-A socket operation may fail if:
-.sp
-.ne 2
-.na
-\fB\fBEISCONN\fR\fR
-.ad
-.RS 17n
-A \fBconnect()\fR operation was attempted on a socket on which a
-\fBconnect()\fR operation had already been performed, and the socket could not
-be successfully disconnected before making the new connection.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEISCONN\fR\fR
-.ad
-.RS 17n
-A \fBsendto()\fR or \fBsendmsg()\fR operation specifying an address to which
-the message should be sent was attempted on a socket on which a \fBconnect()\fR
-operation had already been performed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBENOTCONN\fR\fR
-.ad
-.RS 17n
-A \fBsend()\fR or \fBwrite()\fR operation, or a \fBsendto()\fR or
-\fBsendmsg()\fR operation not specifying an address to which the message should
-be sent, was attempted on a socket on which a \fBconnect()\fR operation had not
-already been performed.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEADDRINUSE\fR\fR
-.ad
-.RS 17n
-A \fBbind()\fR operation was attempted on a socket with a network address/port
-pair that has already been bound to another socket.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEADDRNOTAVAIL\fR\fR
-.ad
-.RS 17n
-A \fBbind()\fR operation was attempted on a socket with a network address for
-which no network interface exists.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEINVAL\fR\fR
-.ad
-.RS 17n
-A \fBsendmsg()\fR operation with a non-NULL \fBmsg_accrights\fR was attempted.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBEACCES\fR\fR
-.ad
-.RS 17n
-A \fBbind()\fR operation was attempted with a "reserved" port number and the
-effective user \fBID\fR of the process was not the privileged user.
-.RE
-
-.sp
-.ne 2
-.na
-\fB\fBENOBUFS\fR\fR
-.ad
-.RS 17n
-The system ran out of memory for internal data structures.
-.RE
-
diff --git a/usr/src/man/man7p/vxlan.7p b/usr/src/man/man7p/vxlan.7p
deleted file mode 100644
index 59c1d3d9d8..0000000000
--- a/usr/src/man/man7p/vxlan.7p
+++ /dev/null
@@ -1,137 +0,0 @@
-.\"
-.\" This file and its contents are supplied under the terms of the
-.\" Common Development and Distribution License ("CDDL"), version 1.0.
-.\" You may only use this file in accordance with the terms of version
-.\" 1.0 of the CDDL.
-.\"
-.\" A full copy of the text of the CDDL should have accompanied this
-.\" source. A copy of the CDDL is also available via the Internet at
-.\" http://www.illumos.org/license/CDDL.
-.\"
-.\"
-.\" Copyright 2018 Joyent, Inc.
-.\"
-.Dd December 20, 2018
-.Dt VXLAN 7P
-.Os
-.Sh NAME
-.Nm VXLAN ,
-.Nm vxlan
-.Nd Virtual eXtensible Local Area Network
-.Sh SYNOPSIS
-.In sys/vxlan.h
-.Sh DESCRIPTION
-.Nm
-(RFC 7348) is a network encapsulation protocol that is used by
-.Xr overlay 5
-devices.
-A payload, commonly an Ethernet frame, is placed inside of a
-UDP packet and prepended with an 8-byte
-.Nm
-header.
-.Pp
-The
-.Nm
-header contains two 32-bit words.
-The first word is an 8-bit flags field followed by 24 reserved bits.
-The second word is a 24-bit virtual network identifier followed by 8
-reserved bits.
-The virtual network identifier identifies a unique
-.Nm
-and
-is similar in concept to an IEEE 802.1Q VLAN identifier.
-.Pp
-The system provides access to
-.Nm
-through dladm overlays.
-See
-.Xr dladm 1M
-and
-.Xr overlay 5
-for more information.
-.Pp
-The
-.In sys/vxlan.h
-header provides information for working with the
-.Nm
-protocol.
-The contents of this header are
-.Sy uncommitted .
-The header defines a structure that may be used to encode and decode a VXLAN
-header.
-It defines a packed structure type
-.Sy vxlan_hdr_t
-which represents the
-.Nm
-frame header and has the following members:
-.Bd -literal
- uint32_t vxlan_flags; /* flags in upper 8 bits */
- uint32_t vxlan_id; /* VXLAN ID in upper 24 bits */
-.Ed
-.Sh EXAMPLES
-.Sy Example 1
-Decoding a
-.Nm
-header
-.Pp
-The following example shows how to validate a
-.Nm header.
-For more information on this process, see RFC 7348.
-.Bd -literal -offset indent
-#include <sys/types.h>
-#include <netinet/in.h>
-#include <inttypes.h>
-#include <sys/vxlan.h>
-
-\&...
-
-/*
- * Validate the following bytes as a VXLAN header. If valid, return
- * 0 and store the VXLAN identifier in *vidp. Otherwise, return an
- * error.
- */
-int
-validate_vxlan(void *buf, int len, uint32_t *vidp)
-{
- vxlan_hdr_t *hdr;
-
- if (len < sizeof (vxlan_hdr_t))
- return (EINVAL);
-
- hdr = buf;
-
- /*
- * This verifies that the required flag is set; however, it does
- * not look at any of the other bist that are reserved in the
- * header. Software needs to evaluate how it should handle other
- * bits being set in the vxlan_flags member.
- */
- if ((ntohl(hdr->vxlan_flags) & VXLAN_F_VDI) == 0)
- return (EINVAL);
-
- *vidp = ntohl(vxlan->vxlan_id) >> VXLAN_ID_SHIFT;
-
- return (0);
-}
-.Ed
-.Sh STABILITY
-The contents of
-.In sys/vxlan.h
-are
-.Sy Uncommitted .
-.Sh SEE ALSO
-.Xr dladm 1M ,
-.Xr overlay 5
-.Rs
-.%A Mahalingam, M.
-.%A Dutt, D.
-.%A Duda, K.
-.%A Agarwal, P.
-.%A Kreeger L.
-.%A Sridhar, T.
-.%A Bursell, M.
-.%A C. Wright
-.%T RFC 7348, Virtual eXtensible Local Area Network (VXLAN): A Framework
-.%T for Overlaying Virtualized Layer 2 Networks over Layer 3 Networks
-.%D August 2014
-.Re
diff --git a/usr/src/man/man8/6to4relay.8 b/usr/src/man/man8/6to4relay.8
new file mode 100644
index 0000000000..34e991115d
--- /dev/null
+++ b/usr/src/man/man8/6to4relay.8
@@ -0,0 +1,350 @@
+'\" te
+.\" Copyright (C) 2002, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH 6TO4RELAY 8 "Nov 19, 2002"
+.SH NAME
+6to4relay \- administer configuration for 6to4 relay router communication
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/6to4relay\fR
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/6to4relay\fR [\fB-e\fR] [\fB-a\fR \fIaddr\fR]
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/6to4relay\fR [\fB-d\fR]
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/6to4relay\fR [\fB-h\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fB6to4relay\fR command is used to configure 6to4 relay router
+communication. Relay router communication support is enabled by setting the
+value of a variable that stores an IPv4 address within the \fBtun\fR module.
+This variable is global to all tunnels and defines the policy for communication
+with relay routers. By default, the address is set to \fBINADDR_ANY\fR
+(\fB0.0.0.0\fR), and the kernel interprets the value to indicate that support
+for relay router communication is disabled. Otherwise, support is enabled, and
+the specified address is used as the IPv4 destination address when packets
+destined for native IPv6 (non-6to4) hosts are sent through the 6to4 tunnel
+interface. The \fB6to4relay\fR command uses a project private ioctl to set the
+variable.
+.sp
+.LP
+\fB6to4relay\fR used without any options outputs the current, in-kernel,
+configuration status. Use the \fB-a\fR option to send packets to a specific
+relay router's \fBunicast\fR address instead of the default \fBanycast\fR
+address. The address specified with the \fB-a\fR option does not specify the
+policy for receiving traffic from relay routers. The source relay router on a
+received packet is non-deterministic, since a different relay router may be
+chosen for each sending native IPv6 end-point.
+.sp
+.LP
+Configuration changes made by using the \fB6to4relay\fR are not persistent
+across reboot. The changes will persist in the kernel only until you take the
+tunnel down
+.SH OPTIONS
+.sp
+.LP
+The \fB6to4relay\fR command supports the following options:
+.sp
+.ne 2
+.na
+\fB\fB-a\fR \fIaddr\fR\fR
+.ad
+.RS 11n
+Use the specified address, \fIaddr\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-e\fR\fR
+.ad
+.RS 11n
+Enable support for relay router. Use \fB-a\fR \fIaddr\fR if it is specified.
+Otherwise, use the default \fBanycast\fR address, 192.88.99.1.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-d\fR\fR
+.ad
+.RS 11n
+Disable support for the relay router.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-h\fR\fR
+.ad
+.RS 11n
+Help
+.RE
+
+.SH OPERANDS
+.sp
+.LP
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fB\fIaddr\fR\fR
+.ad
+.RS 8n
+A specific relay router's unicast address. \fIaddr\fR must be specified as a
+dotted decimal representation of an IPv4 address. Otherwise, an error will
+occur, and the command will fail.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRPrinting the In-Kernel Configuration Status
+.sp
+.LP
+Use \fB/usr/sbin/6to4relay\fR without any options to print the in-kernel
+configuration status.
+
+.sp
+.in +2
+.nf
+example# \fB/usr/sbin/6to4relay\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+If 6to4 relay router communication is disabled, the administrator will see the
+following message:
+
+.sp
+.in +2
+.nf
+6to4relay: 6to4 Relay Router communication support is disabled.
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+If 6to4 router communication is enabled, the user will see this message:
+.sp
+.in +2
+.nf
+6to4relay: 6to4 Relay Router communication support is enabled.
+IPv4 destination address of Relay Router = 192.88.99.1
+.fi
+.in -2
+.sp
+
+.SH EXIT STATUS
+.sp
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR \fR
+.ad
+.RS 6n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB>\fB0\fR\fR
+.ad
+.RS 6n
+An error occurred.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/usr/sbin/6to4relay\fR \fR
+.ad
+.RS 24n
+The default installation root
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7),
+.BR ifconfig (8)
+.sp
+.LP
+Huitema, C. \fIRFC 3068, An Anycast Prefix for 6to4 Relay Routers\fR. Network
+Working Group. June, 2001.
+.sp
+.LP
+Carpenter, B. and Moore, K. \fIRFC 3056, Connection of IPv6 Domains via IPv4
+Clouds\fR. Network Working Group. February, 2001.
+.SH DIAGNOSTICS
+.sp
+.LP
+The \fB6to4relay\fR reports the following messages:
+.sp
+.in +2
+.nf
+6to4relay: input (0.0.0.0) is not a valid IPv4 unicast address
+.fi
+.in -2
+.sp
+
+.RS +4
+\fBExample: \fR
+.sp
+.LP
+The following example provides an incorrect unicast address.
+.sp
+.in +2
+.nf
+example# \fB6to4relay -e -a 0.0.0.0\fR
+.fi
+.in -2
+.sp
+\fBDescription: \fR
+.sp
+.LP
+The address specified with the \fB-a\fR option must be a valid unicast address.
+.RE
+
+.sp
+.in +2
+.nf
+6to4relay: option requires an argument -a
+usage:
+ 6to4relay
+ 6to4relay -e [-a <addr>]
+ 6to4relay -d
+ 6to4relay -h
+.fi
+.in -2
+.sp
+
+.RS +4
+\fBExample: \fR
+.sp
+.LP
+The following example does not include an argument for the \fB-a\fR option.
+.sp
+.in +2
+.nf
+example# \fB6to4relay -e -a \fR
+.fi
+.in -2
+.sp
+\fBDescription: \fR
+.sp
+.LP
+The \fB-a\fR option requires an argument.
+.RE
+
+.sp
+.in +2
+.nf
+usage:
+ 6to4relay
+ 6to4relay -e [-a <addr>]
+ 6to4relay -d
+ 6to4relay -h
+.fi
+.in -2
+.sp
+
+.RS +4
+\fBExample: \fR
+.sp
+.LP
+The following example specifies options that are not permitted.
+.sp
+.in +2
+.nf
+example# \fB6to4relay -e -d\fR
+.fi
+.in -2
+.sp
+\fBDescription: \fR
+.sp
+.LP
+The options specified are not permitted. A usage message is output to the
+screen.
+.RE
+
+.sp
+.in +2
+.nf
+usage:
+ 6to4relay
+ 6to4relay -e [-a <addr>]
+ 6to4relay -d
+ 6to4relay -h
+.fi
+.in -2
+.sp
+
+.RS +4
+\fBExample: \fR
+.sp
+.LP
+The following example specifies the \fB-a\fR option without specifying the
+\fB-e\fR option.
+.sp
+.in +2
+.nf
+example# \fB6to4relay -a 1.2.3.4\fR
+.fi
+.in -2
+.sp
+\fBDescription: \fR
+.sp
+.LP
+The \fB-e\fR option is required in conjunction with the \fB-a\fR option. A
+usage message is output to the screen.
+.RE
+
+.sp
+.in +2
+.nf
+6to4relay: ioctl (I_STR) : Invalid argument
+.fi
+.in -2
+.sp
+
+.RS +4
+\fBExample: \fR
+.sp
+.LP
+The following example specifies an invalid address.
+.sp
+.in +2
+.nf
+example# \fB6to4relay -e -a 239.255.255.255\fR
+.fi
+.in -2
+.sp
+\fBDescription: \fR
+.sp
+.LP
+The address specified with the \fB-a\fR option must not be a class d
+\fIaddr\fR.
+.RE
+
diff --git a/usr/src/man/man8/Intro.8 b/usr/src/man/man8/Intro.8
new file mode 100644
index 0000000000..6cd9102d74
--- /dev/null
+++ b/usr/src/man/man8/Intro.8
@@ -0,0 +1,144 @@
+'\" te
+.\" Copyright 2008, Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 2015 Nexenta Systems, Inc. All rights reserved.
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH INTRO 8 "Sep 8, 2015"
+.SH NAME
+Intro, intro \- introduction to maintenance commands and application programs
+.SH DESCRIPTION
+.LP
+This section describes, in alphabetical order, commands that are used chiefly
+for system maintenance and administration purposes.
+.LP
+Because of command restructuring for the Virtual File System architecture,
+there are several instances of multiple manual pages that begin with the same
+name. For example, the \fBmount\fR, pages \(mi \fBmount\fR(8),
+\fBmount_hsfs\fR(8), \fBmount_nfs\fR(8), \fBmount_tmpfs\fR(8),
+and \fBmount_ufs\fR(8). In each such case the first of the
+multiple pages describes the syntax and options of the generic command, that
+is, those options applicable to all FSTypes (file system types). The succeeding
+pages describe the functionality of the FSType-specific modules of the command.
+These pages list the command followed by an underscore ( _ ) and the FSType to
+which they pertain. Note that the administrator should not attempt to call
+these modules directly. The generic command provides a common interface to all
+of them. Thus the FSType-specific manual pages should not be viewed as
+describing distinct commands, but rather as detailing those aspects of a
+command that are specific to a particular FSType.
+.SH COMMAND SYNTAX
+.LP
+Unless otherwise noted, commands described in this section accept options and
+other arguments according to the following syntax:
+.sp
+.in +2
+.nf
+\fIname\fR [\fIoption\fR(\fIs\fR)] [\fIcmdarg\fR(\fIs\fR)]
+.fi
+.in -2
+
+.LP
+where:
+.sp
+.ne 2
+.na
+\fB\fIname\fR\fR
+.ad
+.RS 15n
+The name of an executable file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIoption\fR\fR
+.ad
+.RS 15n
+\fB\(mi\fR \fInoargletter\fR(\fIs\fR) or,
+.sp
+\fB\(mi\fR \fIargletter\fR<\|>\fIoptarg\fR
+.sp
+where <\|> is optional white space.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fInoargletter\fR\fR
+.ad
+.RS 15n
+A single letter representing an option without an argument.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIargletter\fR\fR
+.ad
+.RS 15n
+A single letter representing an option requiring an argument.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIoptarg\fR\fR
+.ad
+.RS 15n
+Argument (character string) satisfying preceding \fIargletter\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIcmdarg\fR\fR
+.ad
+.RS 15n
+Pathname (or other command argument) \fInot\fR beginning with \fB\(mi\fR or,
+\fB\(mi\fR by itself indicating the standard input.
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for a discussion of the attributes listed in this
+section.
+.SH ACKNOWLEDGMENTS
+.LP
+Sun Microsystems, Inc. gratefully acknowledges The Open Group for permission to
+reproduce portions of its copyrighted documentation. Original documentation
+from The Open Group can be obtained online at
+http://www.opengroup.org/bookstore/\&.
+.LP
+The Institute of Electrical and Electronics Engineers and The Open Group, have
+given us permission to reprint portions of their documentation.
+.LP
+In the following statement, the phrase ``this text'' refers to portions of the
+system documentation.
+.LP
+Portions of this text are reprinted and reproduced in electronic form in the
+SunOS Reference Manual, from IEEE Std 1003.1, 2004 Edition, Standard for
+Information Technology -- Portable Operating System Interface (POSIX), The Open
+Group Base Specifications Issue 6, Copyright (C) 2001-2004 by the Institute of
+Electrical and Electronics Engineers, Inc and The Open Group. In the event of
+any discrepancy between these versions and the original IEEE and The Open Group
+Standard, the original IEEE and The Open Group Standard is the referee
+document. The original Standard can be obtained online at
+http://www.opengroup.org/unix/online.html\&.
+.LP
+This notice shall appear on any product containing this material.
+.SH SEE ALSO
+.LP
+.BR getopt (1),
+.BR getopt (3C),
+.BR attributes (7)
+.SH DIAGNOSTICS
+.LP
+Upon termination, each command returns 0 for normal termination and non-zero to
+indicate troubles such as erroneous parameters, bad or inaccessible data, or
+other inability to cope with the task at hand. It is called variously ``exit
+code,'' ``exit status,'' or ``return code,'' and is described only where
+special conventions are involved.
+.SH NOTES
+.LP
+Unfortunately, not all commands adhere to the standard syntax.
diff --git a/usr/src/man/man8/Makefile b/usr/src/man/man8/Makefile
new file mode 100644
index 0000000000..3f7e3dc598
--- /dev/null
+++ b/usr/src/man/man8/Makefile
@@ -0,0 +1,753 @@
+#
+# This file and its contents are supplied under the terms of the
+# Common Development and Distribution License ("CDDL"), version 1.0.
+# You may only use this file in accordance with the terms of version
+# 1.0 of the CDDL.
+#
+# A full copy of the text of the CDDL should have accompanied this
+# source. A copy of the CDDL is also available via the Internet
+# at http://www.illumos.org/license/CDDL.
+#
+
+#
+# Copyright 2011, Richard Lowe
+# Copyright 2015 Nexenta Systems, Inc. All rights reserved.
+# Copyright (c) 2013, 2016 by Delphix. All rights reserved.
+# Copyright 2016 Toomas Soome <tsoome@me.com>
+# Copyright (c) 2017, Chris Fraire <cfraire@me.com>.
+# Copyright 2018 Nexenta Systems, Inc.
+# Copyright 2020 Joyent, Inc.
+# Copyright 2020 Peter Tribble
+# Copyright 2021 OmniOS Community Edition (OmniOSce) Association.
+#
+
+include $(SRC)/Makefile.master
+
+MANSECT= 8
+
+_MANFILES= 6to4relay.8 \
+ Intro.8 \
+ Uutry.8 \
+ accept.8 \
+ acct.8 \
+ acctadm.8 \
+ acctcms.8 \
+ acctcon.8 \
+ acctmerg.8 \
+ acctprc.8 \
+ acctsh.8 \
+ adbgen.8 \
+ add_allocatable.8 \
+ add_drv.8 \
+ addbadsec.8 \
+ arcstat.8 \
+ arp.8 \
+ atohexlabel.8 \
+ audit.8 \
+ audit_warn.8 \
+ auditconfig.8 \
+ auditd.8 \
+ auditrecord.8 \
+ auditreduce.8 \
+ auditstat.8 \
+ automount.8 \
+ automountd.8 \
+ autopush.8 \
+ bart.8 \
+ beadm.8 \
+ boot.8 \
+ bootadm.8 \
+ busstat.8 \
+ captoinfo.8 \
+ catman.8 \
+ ccidadm.8 \
+ cfgadm.8 \
+ cfgadm_cardbus.8 \
+ cfgadm_fp.8 \
+ cfgadm_ib.8 \
+ cfgadm_pci.8 \
+ cfgadm_sata.8 \
+ cfgadm_sbd.8 \
+ cfgadm_scsi.8 \
+ cfgadm_usb.8 \
+ chat.8 \
+ check-hostname.8 \
+ check-permissions.8 \
+ chroot.8 \
+ clear_locks.8 \
+ clinfo.8 \
+ clri.8 \
+ connstat.8 \
+ consadm.8 \
+ conv_lp.8 \
+ conv_lpd.8 \
+ coreadm.8 \
+ cpustat.8 \
+ cron.8 \
+ cryptoadm.8 \
+ datadm.8 \
+ dd.8 \
+ devattr.8 \
+ devfree.8 \
+ devfsadm.8 \
+ device_remap.8 \
+ devinfo.8 \
+ devlinks.8 \
+ devnm.8 \
+ devprop.8 \
+ devreserv.8 \
+ df.8 \
+ df_ufs.8 \
+ dfmounts.8 \
+ dfmounts_nfs.8 \
+ dfshares.8 \
+ dfshares_nfs.8 \
+ dhcpagent.8 \
+ diskinfo.8 \
+ disks.8 \
+ diskscan.8 \
+ dispadmin.8 \
+ dladm.8 \
+ dlmgmtd.8 \
+ dmesg.8 \
+ dminfo.8 \
+ dns-sd.8 \
+ domainname.8 \
+ drvconfig.8 \
+ dtrace.8 \
+ dumpadm.8 \
+ editmap.8 \
+ edquota.8 \
+ eeprom.8 \
+ embedded_su.8 \
+ etrn.8 \
+ fcinfo.8 \
+ fdetach.8 \
+ fdisk.8 \
+ ff.8 \
+ ff_ufs.8 \
+ fiocompress.8 \
+ flowadm.8 \
+ fmadm.8 \
+ fmd.8 \
+ fmdump.8 \
+ fmstat.8 \
+ fmthard.8 \
+ format.8 \
+ fruadm.8 \
+ fsck.8 \
+ fsck_pcfs.8 \
+ fsck_udfs.8 \
+ fsck_ufs.8 \
+ fsdb.8 \
+ fsdb_udfs.8 \
+ fsdb_ufs.8 \
+ fsirand.8 \
+ fssnap.8 \
+ fssnap_ufs.8 \
+ fsstat.8 \
+ fstyp.8 \
+ fuser.8 \
+ fwflash.8 \
+ fwtmp.8 \
+ getdev.8 \
+ getdevpolicy.8 \
+ getdgrp.8 \
+ getent.8 \
+ getty.8 \
+ getvol.8 \
+ groupadd.8 \
+ groupdel.8 \
+ groupmod.8 \
+ growfs.8 \
+ gsscred.8 \
+ gssd.8 \
+ hal-device.8 \
+ hal-fdi-validate.8 \
+ hal-find.8 \
+ hal-get-property.8 \
+ hald.8 \
+ halt.8 \
+ hextoalabel.8 \
+ hostconfig.8 \
+ hotplug.8 \
+ id.8 \
+ idmap.8 \
+ idmapd.8 \
+ idsconfig.8 \
+ if_mpadm.8 \
+ ifconfig.8 \
+ ifparse.8 \
+ ikeadm.8 \
+ ikecert.8 \
+ in.chargend.8 \
+ in.comsat.8 \
+ in.daytimed.8 \
+ in.discardd.8 \
+ in.echod.8 \
+ in.fingerd.8 \
+ in.iked.8 \
+ in.lpd.8 \
+ in.mpathd.8 \
+ in.ndpd.8 \
+ in.rarpd.8 \
+ in.rdisc.8 \
+ in.rexecd.8 \
+ in.ripngd.8 \
+ in.rlogind.8 \
+ in.routed.8 \
+ in.rshd.8 \
+ in.rwhod.8 \
+ in.talkd.8 \
+ in.telnetd.8 \
+ in.tftpd.8 \
+ in.timed.8 \
+ in.uucpd.8 \
+ inetadm.8 \
+ inetconv.8 \
+ inetd.8 \
+ infocmp.8 \
+ init.8 \
+ inityp2l.8 \
+ install.8 \
+ installboot.8 \
+ installf.8 \
+ installgrub.8 \
+ intrd.8 \
+ intrstat.8 \
+ iostat.8 \
+ ipaddrsel.8 \
+ ipadm.8 \
+ ipdadm.8 \
+ ipf.8 \
+ ipfs.8 \
+ ipfstat.8 \
+ ipmon.8 \
+ ipmpstat.8 \
+ ipnat.8 \
+ ippool.8 \
+ ipqosconf.8 \
+ ipsecalgs.8 \
+ ipsecconf.8 \
+ ipseckey.8 \
+ iscsiadm.8 \
+ isns.8 \
+ isnsadm.8 \
+ itadm.8 \
+ k5srvutil.8 \
+ kadb.8 \
+ kadmin.8 \
+ kadmind.8 \
+ kclient.8 \
+ kdb5_ldap_util.8 \
+ kdb5_util.8 \
+ kdcmgr.8 \
+ kernel.8 \
+ keyserv.8 \
+ killall.8 \
+ kprop.8 \
+ kpropd.8 \
+ kproplog.8 \
+ krb5kdc.8 \
+ ksslcfg.8 \
+ kstat.8 \
+ ktkt_warnd.8 \
+ labelit.8 \
+ labelit_hsfs.8 \
+ labelit_udfs.8 \
+ labelit_ufs.8 \
+ latencytop.8 \
+ ldap_cachemgr.8 \
+ ldapaddent.8 \
+ ldapclient.8 \
+ link.8 \
+ listdgrp.8 \
+ listen.8 \
+ locator.8 \
+ lockfs.8 \
+ lockstat.8 \
+ lofiadm.8 \
+ logadm.8 \
+ logins.8 \
+ lpadmin.8 \
+ lpfilter.8 \
+ lpforms.8 \
+ lpget.8 \
+ lpmove.8 \
+ lpsched.8 \
+ lpset.8 \
+ lpshut.8 \
+ lpsystem.8 \
+ lpusers.8 \
+ luxadm.8 \
+ mail.local.8 \
+ mailwrapper.8 \
+ makedbm.8 \
+ makemap.8 \
+ mdnsd.8 \
+ mkdevalloc.8 \
+ mkdevmaps.8 \
+ mkfifo.8 \
+ mkfile.8 \
+ mkfs.8 \
+ mkfs_pcfs.8 \
+ mkfs_udfs.8 \
+ mkfs_ufs.8 \
+ mknod.8 \
+ mkpwdict.8 \
+ modinfo.8 \
+ modload.8 \
+ modunload.8 \
+ mount.8 \
+ mount_hsfs.8 \
+ mount_nfs.8 \
+ mount_pcfs.8 \
+ mount_smbfs.8 \
+ mount_tmpfs.8 \
+ mount_udfs.8 \
+ mount_ufs.8 \
+ mountall.8 \
+ mountd.8 \
+ mpathadm.8 \
+ mpstat.8 \
+ msgid.8 \
+ mvdir.8 \
+ ncaconfd.8 \
+ ncheck.8 \
+ ncheck_ufs.8 \
+ ndd.8 \
+ ndp.8 \
+ ndmpadm.8 \
+ ndmpd.8 \
+ ndmpstat.8 \
+ netstat.8 \
+ netstrategy.8 \
+ newaliases.8 \
+ newfs.8 \
+ newkey.8 \
+ nfs4cbd.8 \
+ nfsd.8 \
+ nfslogd.8 \
+ nfsmapid.8 \
+ nfsstat.8 \
+ nlsadmin.8 \
+ nscd.8 \
+ nwamd.8 \
+ passmgmt.8 \
+ pbind.8 \
+ pcitool.8 \
+ picld.8 \
+ ping.8 \
+ pkgadd.8 \
+ pkgadm.8 \
+ pkgask.8 \
+ pkgchk.8 \
+ pkgrm.8 \
+ plockstat.8 \
+ pmadm.8 \
+ pmconfig.8 \
+ polkit-is-privileged.8 \
+ pooladm.8 \
+ poolbind.8 \
+ poolcfg.8 \
+ poold.8 \
+ poolstat.8 \
+ ports.8 \
+ powerd.8 \
+ powertop.8 \
+ ppdmgr.8 \
+ pppd.8 \
+ pppdump.8 \
+ pppoec.8 \
+ pppoed.8 \
+ pppstats.8 \
+ praudit.8 \
+ print-service.8 \
+ printmgr.8 \
+ projadd.8 \
+ projdel.8 \
+ projmod.8 \
+ prstat.8 \
+ prtconf.8 \
+ prtdiag.8 \
+ prtfru.8 \
+ prtpicl.8 \
+ prtvtoc.8 \
+ psradm.8 \
+ psrinfo.8 \
+ psrset.8 \
+ putdev.8 \
+ putdgrp.8 \
+ pwck.8 \
+ pwconv.8 \
+ quot.8 \
+ quota.8 \
+ quotacheck.8 \
+ quotaon.8 \
+ raidctl.8 \
+ ramdiskadm.8 \
+ rcapadm.8 \
+ rcapd.8 \
+ rctladm.8 \
+ rdate.8 \
+ reboot.8 \
+ rem_drv.8 \
+ remove_allocatable.8 \
+ removef.8 \
+ repquota.8 \
+ rmmount.8 \
+ rmt.8 \
+ rmvolmgr.8 \
+ roleadd.8 \
+ roledel.8 \
+ rolemod.8 \
+ root_archive.8 \
+ route.8 \
+ routeadm.8 \
+ rpc.bootparamd.8 \
+ rpc.rstatd.8 \
+ rpc.rusersd.8 \
+ rpc.rwalld.8 \
+ rpc.smserverd.8 \
+ rpc.sprayd.8 \
+ rpc.yppasswdd.8 \
+ rpc.ypupdated.8 \
+ rpcbind.8 \
+ rpcinfo.8 \
+ rquotad.8 \
+ rsh.8 \
+ rtc.8 \
+ rtquery.8 \
+ runacct.8 \
+ rwall.8 \
+ sac.8 \
+ sacadm.8 \
+ saf.8 \
+ sar.8 \
+ sasinfo.8 \
+ savecore.8 \
+ sbdadm.8 \
+ scadm.8 \
+ sdpadm.8 \
+ sendmail.8 \
+ setuname.8 \
+ share.8 \
+ share_nfs.8 \
+ shareall.8 \
+ sharectl.8 \
+ sharemgr.8 \
+ showmount.8 \
+ shutdown.8 \
+ slpd.8 \
+ smbadm.8 \
+ smbd.8 \
+ smbiod.8 \
+ smbios.8 \
+ smbstat.8 \
+ smrsh.8 \
+ snoop.8 \
+ soconfig.8 \
+ sppptun.8 \
+ spray.8 \
+ statd.8 \
+ stmfadm.8 \
+ stmsboot.8 \
+ strace.8 \
+ strclean.8 \
+ strerr.8 \
+ sttydefs.8 \
+ su.8 \
+ sulogin.8 \
+ svc.configd.8 \
+ svc.ipfd.8 \
+ svc.startd.8 \
+ svcadm.8 \
+ svccfg.8 \
+ swap.8 \
+ sync.8 \
+ syncinit.8 \
+ syncloop.8 \
+ syncstat.8 \
+ sysdef.8 \
+ syseventadm.8 \
+ syseventconfd.8 \
+ syseventd.8 \
+ syslogd.8 \
+ tapes.8 \
+ tcpd.8 \
+ tcpdchk.8 \
+ tcpdmatch.8 \
+ th_define.8 \
+ th_manage.8 \
+ tic.8 \
+ tnchkdb.8 \
+ tnctl.8 \
+ tnd.8 \
+ tninfo.8 \
+ tpmadm.8 \
+ traceroute.8 \
+ trapstat.8 \
+ ttyadm.8 \
+ ttymon.8 \
+ tunefs.8 \
+ txzonemgr.8 \
+ tzreload.8 \
+ tzselect.8 \
+ uadmin.8 \
+ ucodeadm.8 \
+ ufsdump.8 \
+ ufsrestore.8 \
+ unshare.8 \
+ unshare_nfs.8 \
+ update_drv.8 \
+ updatehome.8 \
+ useradd.8 \
+ userdel.8 \
+ usermod.8 \
+ utmpd.8 \
+ uucheck.8 \
+ uucico.8 \
+ uucleanup.8 \
+ uusched.8 \
+ uuxqt.8 \
+ vfsstat.8 \
+ vmstat.8 \
+ vndadm.8 \
+ vndstat.8 \
+ volcopy.8 \
+ volcopy_ufs.8 \
+ vscanadm.8 \
+ vscand.8 \
+ wall.8 \
+ whodo.8 \
+ wificonfig.8 \
+ wpad.8 \
+ wracct.8 \
+ ypbind.8 \
+ ypinit.8 \
+ ypmake.8 \
+ ypmap2src.8 \
+ yppoll.8 \
+ yppush.8 \
+ ypserv.8 \
+ ypset.8 \
+ ypstart.8 \
+ ypxfr.8 \
+ zdb.8 \
+ zdump.8 \
+ zfs.8 \
+ zfs-program.8 \
+ zic.8 \
+ zoneadm.8 \
+ zoneadmd.8 \
+ zonecfg.8 \
+ zonestatd.8 \
+ zpool.8 \
+ zstreamdump.8 \
+ ztest.8
+
+i386_MANFILES= \
+ acpidump.8 \
+ acpixtract.8 \
+ bhyve.8 \
+ bhyvectl.8 \
+ nvmeadm.8 \
+ pptadm.8 \
+ rdmsr.8
+
+sparc_MANFILES= dcs.8 \
+ drd.8 \
+ efdaemon.8 \
+ ldmad.8 \
+ monitor.8 \
+ obpsym.8 \
+ oplhpd.8 \
+ prtdscp.8 \
+ sckmd.8 \
+ sf880drd.8 \
+ vntsd.8
+
+MANLINKS= acctcon1.8 \
+ acctcon2.8 \
+ acctdisk.8 \
+ acctdusg.8 \
+ accton.8 \
+ acctprc1.8 \
+ acctprc2.8 \
+ acctwtmp.8 \
+ audlinks.8 \
+ bootparamd.8 \
+ chargefee.8 \
+ ckpacct.8 \
+ closewtmp.8 \
+ comsat.8 \
+ dcopy.8 \
+ devfsadmd.8 \
+ dodisk.8 \
+ fcadm.8 \
+ fingerd.8 \
+ grpck.8 \
+ hal-find-by-capability.8 \
+ hal-find-by-property.8 \
+ hal-set-property.8 \
+ intro.8 \
+ kadmin.local.8 \
+ lastlogin.8 \
+ monacct.8 \
+ nulladm.8 \
+ poweroff.8 \
+ prctmp.8 \
+ prdaily.8 \
+ prtacct.8 \
+ quotaoff.8 \
+ rarpd.8 \
+ rdisc.8 \
+ reject.8 \
+ restricted_shell.8 \
+ rexecd.8 \
+ rlogind.8 \
+ routed.8 \
+ rshd.8 \
+ rstatd.8 \
+ rusersd.8 \
+ rwalld.8 \
+ rwhod.8 \
+ sa1.8 \
+ sa2.8 \
+ sadc.8 \
+ shutacct.8 \
+ sprayd.8 \
+ startup.8 \
+ talkd.8 \
+ telinit.8 \
+ telnetd.8 \
+ tftpd.8 \
+ turnacct.8 \
+ umount.8 \
+ umount_smbfs.8 \
+ umountall.8 \
+ unlink.8 \
+ unshareall.8 \
+ utmp2wtmp.8 \
+ uucpd.8 \
+ uutry.8 \
+ wtmpfix.8 \
+ yppasswdd.8 \
+ ypstop.8 \
+ ypupdated.8 \
+ ypxfr_1perday.8 \
+ ypxfr_1perhour.8 \
+ ypxfr_2perday.8 \
+ ypxfrd.8
+
+MANFILES= $(_MANFILES) $($(MACH)_MANFILES)
+
+intro.8 := LINKSRC = Intro.8
+
+uutry.8 := LINKSRC = Uutry.8
+
+reject.8 := LINKSRC = accept.8
+
+acctdisk.8 := LINKSRC = acct.8
+acctdusg.8 := LINKSRC = acct.8
+accton.8 := LINKSRC = acct.8
+acctwtmp.8 := LINKSRC = acct.8
+closewtmp.8 := LINKSRC = acct.8
+utmp2wtmp.8 := LINKSRC = acct.8
+
+acctcon1.8 := LINKSRC = acctcon.8
+acctcon2.8 := LINKSRC = acctcon.8
+
+acctprc1.8 := LINKSRC = acctprc.8
+acctprc2.8 := LINKSRC = acctprc.8
+
+chargefee.8 := LINKSRC = acctsh.8
+ckpacct.8 := LINKSRC = acctsh.8
+dodisk.8 := LINKSRC = acctsh.8
+lastlogin.8 := LINKSRC = acctsh.8
+monacct.8 := LINKSRC = acctsh.8
+nulladm.8 := LINKSRC = acctsh.8
+prctmp.8 := LINKSRC = acctsh.8
+prdaily.8 := LINKSRC = acctsh.8
+prtacct.8 := LINKSRC = acctsh.8
+shutacct.8 := LINKSRC = acctsh.8
+startup.8 := LINKSRC = acctsh.8
+turnacct.8 := LINKSRC = acctsh.8
+
+dcopy.8 := LINKSRC = clri.8
+
+audlinks.8 := LINKSRC = devfsadm.8
+devfsadmd.8 := LINKSRC = devfsadm.8
+
+fcadm.8 := LINKSRC = fcinfo.8
+
+wtmpfix.8 := LINKSRC = fwtmp.8
+
+hal-find-by-capability.8 := LINKSRC = hal-find.8
+hal-find-by-property.8 := LINKSRC = hal-find.8
+
+hal-set-property.8 := LINKSRC = hal-get-property.8
+
+poweroff.8 := LINKSRC = halt.8
+
+
+comsat.8 := LINKSRC = in.comsat.8
+fingerd.8 := LINKSRC = in.fingerd.8
+rarpd.8 := LINKSRC = in.rarpd.8
+rdisc.8 := LINKSRC = in.rdisc.8
+rexecd.8 := LINKSRC = in.rexecd.8
+rlogind.8 := LINKSRC = in.rlogind.8
+routed.8 := LINKSRC = in.routed.8
+rshd.8 := LINKSRC = in.rshd.8
+rwhod.8 := LINKSRC = in.rwhod.8
+talkd.8 := LINKSRC = in.talkd.8
+telnetd.8 := LINKSRC = in.telnetd.8
+tftpd.8 := LINKSRC = in.tftpd.8
+uucpd.8 := LINKSRC = in.uucpd.8
+
+telinit.8 := LINKSRC = init.8
+
+kadmin.local.8 := LINKSRC = kadmin.8
+
+unlink.8 := LINKSRC = link.8
+
+umount.8 := LINKSRC = mount.8
+
+umount_smbfs.8 := LINKSRC = mount_smbfs.8
+
+umountall.8 := LINKSRC = mountall.8
+
+grpck.8 := LINKSRC = pwck.8
+
+quotaoff.8 := LINKSRC = quotaon.8
+
+bootparamd.8 := LINKSRC = rpc.bootparamd.8
+rstatd.8 := LINKSRC = rpc.rstatd.8
+rusersd.8 := LINKSRC = rpc.rusersd.8
+rwalld.8 := LINKSRC = rpc.rwalld.8
+sprayd.8 := LINKSRC = rpc.sprayd.8
+yppasswdd.8 := LINKSRC = rpc.yppasswdd.8
+ypupdated.8 := LINKSRC = rpc.ypupdated.8
+
+restricted_shell.8 := LINKSRC = rsh.8
+
+sa1.8 := LINKSRC = sar.8
+sa2.8 := LINKSRC = sar.8
+sadc.8 := LINKSRC = sar.8
+
+unshareall.8 := LINKSRC = shareall.8
+
+ypxfrd.8 := LINKSRC = ypserv.8
+
+ypstop.8 := LINKSRC = ypstart.8
+
+ypxfr_1perday.8 := LINKSRC = ypxfr.8
+ypxfr_1perhour.8 := LINKSRC = ypxfr.8
+ypxfr_2perday.8 := LINKSRC = ypxfr.8
+
+
+.KEEP_STATE:
+
+include $(SRC)/man/Makefile.man
+
+install: $(ROOTMANFILES) $(ROOTMANLINKS)
diff --git a/usr/src/man/man8/Uutry.8 b/usr/src/man/man8/Uutry.8
new file mode 100644
index 0000000000..5c92c12edb
--- /dev/null
+++ b/usr/src/man/man8/Uutry.8
@@ -0,0 +1,136 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 1997 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH UUTRY 8 "May 18, 1993"
+.SH NAME
+Uutry, uutry \- attempt to contact remote system with debugging on
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/uucp/Uutry\fR [\fB-r\fR] [\fB-c\fR \fItype\fR] [\fB-x\fR \fIdebug-level\fR] \fIsystem-name\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBUutry\fR is a shell script that is used to invoke \fBuucico\fR(8) to call a
+remote site. Debugging is initially turned on and is set to the default value
+of \fB5\fR. The debugging output is put in file \fB/tmp/\fR\fIsystem-name.\fR
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-r\fR \fR
+.ad
+.RS 19n
+This option overrides the retry time that is set in file
+\fB/var/uucp/.Status/\fR\fIsystem-name.\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-c\fR\fI type\fR \fR
+.ad
+.RS 19n
+The first field in the \fBDevices\fR file is the "Type" field. The \fB-c\fR
+option forces \fBuucico\fR to use only entries in the "Type" field that match
+the user-specified \fBtype\fR. The specified \fBtype\fR is usually the name of
+a local area network.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-x\fR\fI debug-level\fR \fR
+.ad
+.RS 19n
+\fIdebug-level\fR is a number from \fB0\fR to \fB9\fR. Higher numbers give
+more detailed debugging information.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/uucp/Devices\fR \fR
+.ad
+.RS 28n
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/uucp/Limits\fR \fR
+.ad
+.RS 28n
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/uucp/Permissions\fR \fR
+.ad
+.RS 28n
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/uucp/Systems\fR \fR
+.ad
+.RS 28n
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/tmp/\fR\fIsystem-name\fR \fR
+.ad
+.RS 28n
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/spool/locks/*\fR \fR
+.ad
+.RS 28n
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/spool/uucp/*\fR \fR
+.ad
+.RS 28n
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/spool/uucppublic/*\fR \fR
+.ad
+.RS 28n
+
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR uucp (1C),
+.BR uux (1C),
+.BR attributes (7),
+.BR uucico (8)
diff --git a/usr/src/man/man8/accept.8 b/usr/src/man/man8/accept.8
new file mode 100644
index 0000000000..47a521af1d
--- /dev/null
+++ b/usr/src/man/man8/accept.8
@@ -0,0 +1,165 @@
+'\" te
+.\" Copyright (c) 2006 Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH ACCEPT 8 "Feb 25, 2017"
+.SH NAME
+accept, reject \- accept or reject print requests
+.SH SYNOPSIS
+.LP
+.nf
+\fBaccept\fR \fIdestination\fR...
+.fi
+
+.LP
+.nf
+\fBreject\fR [\fB-r\fR \fIreason\fR] \fIdestination\fR...
+.fi
+
+.SH DESCRIPTION
+.LP
+\fBaccept\fR allows the queueing of print requests for the named destinations.
+.sp
+.LP
+\fBreject\fR prevents queueing of print requests for the named destinations.
+.sp
+.LP
+Use \fBlpstat\fR \fB-a\fR to check if destinations are accepting or rejecting
+print requests.
+.sp
+.LP
+Generally, \fBaccept\fR and \fBreject\fR are run on the print server to control
+local print queues. Under some configurations, \fBaccept\fR and \fBreject\fR
+are run on client systems when IPP is being used to communicate between client
+and server.
+.SH OPTIONS
+.LP
+The following options are supported for \fBreject\fR:
+.sp
+.ne 2
+.na
+\fB\fB-r\fR \fIreason\fR\fR
+.ad
+.RS 13n
+Assigns a reason for rejection of print requests for \fIdestination.\fR
+.sp
+\fIreason\fR is reported by \fBlpstat\fR \fB-a\fR. By default, \fIreason\fR is
+\fBunknown reason\fR for existing destinations, and \fBnew\fR \fBprinter\fR for
+destinations added to the system but not yet accepting requests. Enclose
+\fIreason\fR in quotes if it contains blanks.
+.RE
+
+.SH OPERANDS
+.LP
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fB\fIdestination\fR\fR
+.ad
+.RS 15n
+The name of the destination accepting or rejecting print requests. Destination
+specifies the name of a printer or class of printers (see \fBlpadmin\fR(8)).
+Specify \fIdestination\fR using atomic name or URI-style (scheme://endpoint)
+names. See \fBprinters.conf\fR(5) for information regarding the naming
+conventions for destinations.
+.RE
+
+.SH EXIT STATUS
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 12n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fBnon-zero\fR
+.ad
+.RS 12n
+An error occurred.
+.RE
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/etc/printers.conf\fR\fR
+.ad
+.RS 24n
+System printer configuration database
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB$HOME/.printers\fR\fR
+.ad
+.RS 24n
+User-configurable printer database
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBou=printers\fR\fR
+.ad
+.RS 24n
+LDAP version of \fB/etc/printers.conf\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBprinters.conf.byname\fR\fR
+.ad
+.RS 24n
+\fBNIS\fR version of \fB/etc/printers.conf\fR
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+CSI Enabled. See \fBNOTES\fR.
+_
+Interface Stability Obsolete
+.TE
+
+.SH SEE ALSO
+.LP
+.BR enable (1),
+.BR lp (1),
+.BR lpstat (1),
+.BR printers.conf (5),
+.BR attributes (7),
+.BR lpadmin (8),
+.BR lpsched (8)
+.SH NOTES
+.LP
+\fBaccept\fR and \fBreject\fR affect only queueing on the print server's
+spooling system. Requests made from a client system remain queued in the client
+system's queueing mechanism until they are cancelled or accepted by the print
+server's spooling system.
+.sp
+.LP
+\fBaccept\fR is CSI-enabled except for the \fIdestination\fR name.
+.sp
+.LP
+When IPP is in use, the user is prompted for a passphrase if the remote print
+service is configured to require authentication.
diff --git a/usr/src/man/man8/acct.8 b/usr/src/man/man8/acct.8
new file mode 100644
index 0000000000..f5e034cb72
--- /dev/null
+++ b/usr/src/man/man8/acct.8
@@ -0,0 +1,219 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 2000, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH ACCT 8 "August 29, 2021"
+.SH NAME
+acct, acctdisk, acctdusg, accton, acctwtmp, closewtmp, utmp2wtmp \- overview of
+accounting and miscellaneous accounting commands
+.SH SYNOPSIS
+.nf
+\fB/usr/lib/acct/acctdisk\fR
+.fi
+
+.LP
+.nf
+\fB/usr/lib/acct/acctdusg\fR [\fB-u\fR \fIfilename\fR] [\fB-p\fR \fIfilename\fR]
+.fi
+
+.LP
+.nf
+\fB/usr/lib/acct/accton\fR [\fIfilename\fR]
+.fi
+
+.LP
+.nf
+\fB/usr/lib/acct/acctwtmp\fR \fIreason\fR \fIfilename\fR
+.fi
+
+.LP
+.nf
+\fB/usr/lib/acct/closewtmp\fR
+.fi
+
+.LP
+.nf
+\fB/usr/lib/acct/utmp2wtmp\fR
+.fi
+
+.SH DESCRIPTION
+Accounting software is structured as a set of tools (consisting of both C
+programs and shell procedures) that can be used to build accounting systems.
+\fBacctsh\fR(8) describes the set of shell procedures built on top of the C
+programs.
+.sp
+.LP
+Connect time accounting is handled by various programs that write records into
+\fB/var/adm/wtmpx\fR, as described in \fButmpx\fR(5). The programs described in
+\fBacctcon\fR(8) convert this file into session and charging records, which
+are then summarized by \fBacctmerg\fR(8).
+.sp
+.LP
+Process accounting is performed by the system kernel. Upon termination of a
+process, one record per process is written to a file (normally
+\fB/var/adm/pacct\fR). The programs in \fBacctprc\fR(8) summarize this data
+for charging purposes; \fBacctcms\fR(8) is used to summarize command usage.
+Current process data may be examined using \fBacctcom\fR(1).
+.sp
+.LP
+Process accounting records and connect time accounting records (or any
+accounting records in the \fBtacct\fR format described in \fBacct.h\fR(3HEAD))
+can be merged and summarized into total accounting records by \fBacctmerg\fR
+(see \fBtacct\fR format in \fBacct.h\fR(3HEAD)). \fBprtacct\fR (see
+\fBacctsh\fR(8)) is used to format any or all accounting records.
+.sp
+.LP
+\fBacctdisk\fR reads lines that contain user \fBID\fR, login name, and number
+of disk blocks and converts them to total accounting records that can be merged
+with other accounting records. \fBacctdisk\fR returns an error if the input
+file is corrupt or improperly formatted.
+.sp
+.LP
+\fBacctdusg\fR reads its standard input (usually from \fBfind\fR \fB/\fR
+\fB-\fR\fBprint\fR) and computes disk resource consumption (including indirect
+blocks) by login.
+.sp
+.LP
+\fBaccton\fR without arguments turns process accounting off. If \fIfilename\fR
+is given, it must be the name of an existing file, to which the kernel appends
+process accounting records (see \fBacct\fR(2) and \fBacct.h\fR(3HEAD)).
+.sp
+.LP
+\fBacctwtmp\fR writes a \fButmpx\fR(5) record to \fIfilename\fR. The record
+contains the current time and a string of characters that describe the
+\fIreason\fR. A record type of \fBACCOUNTING\fR is assigned (see
+\fButmpx\fR(5)) \fIreason\fR must be a string of 11 or fewer characters,
+numbers, \fB$\fR, or spaces. For example, the following are suggestions for use
+in reboot and shutdown procedures, respectively:
+.sp
+.in +2
+.nf
+acctwtmp "acctg on" /var/adm/wtmpx
+acctwtmp "acctg off" /var/adm/wtmpx
+.fi
+.in -2
+
+.sp
+.LP
+For each user currently logged on, \fBclosewtmp\fR puts a false
+\fBDEAD_PROCESS\fR record in the \fB/var/adm/wtmpx\fR file. \fBrunacct\fR (see
+\fBrunacct\fR(8)) uses this false \fBDEAD_PROCESS\fR record so that the
+connect accounting procedures can track the time used by users logged on before
+\fBrunacct\fR was invoked.
+.sp
+.LP
+For each user currently logged on, \fBrunacct\fR uses \fButmp2wtmp\fR to create
+an entry in the file \fB/var/adm/wtmpx\fR, created by \fBrunacct\fR. Entries in
+\fB/var/adm/wtmpx\fR enable subsequent invocations of \fBrunacct\fR to account
+for connect times of users currently logged in.
+.SH OPTIONS
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-u\fR \fIfilename\fR\fR
+.ad
+.RS 15n
+Places in \fIfilename\fR records consisting of those filenames for which
+\fBacctdusg\fR charges no one (a potential source for finding users trying to
+avoid disk charges).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR \fIfilename\fR\fR
+.ad
+.RS 15n
+Specifies a password file, \fIfilename\fR. This option is not needed if the
+password file is \fB/etc/passwd\fR.
+.RE
+
+.SH ENVIRONMENT VARIABLES
+If any of the \fBLC_*\fR variables (\fBLC_TYPE\fR, \fBLC_MESSAGES\fR,
+\fBLC_TIME\fR, \fBLC_COLLATE\fR, \fBLC_NUMERIC\fR, and \fBLC_MONETARY\fR) (see
+\fBenviron\fR(7)) are not set in the environment, the operational behavior of
+\fBacct\fR for each corresponding locale category is determined by the value of
+the \fBLANG\fR environment variable. If \fBLC_ALL\fR is set, its contents are
+used to override both the \fBLANG\fR and the other \fBLC_*\fR variables. If
+none of the above variables are set in the environment, the "C" (U.S. style)
+locale determines how \fBacct\fR behaves.
+.sp
+.ne 2
+.na
+\fB\fBLC_CTYPE\fR\fR
+.ad
+.RS 12n
+Determines how \fBacct\fR handles characters. When \fBLC_CTYPE\fR is set to a
+valid value, \fBacct\fR can display and handle text and filenames containing
+valid characters for that locale. \fBacct\fR can display and handle Extended
+Unix Code (EUC) characters where any character can be 1, 2, or 3 bytes wide.
+\fBacct\fR can also handle EUC characters of 1, 2, or more column widths. In
+the "C" locale, only characters from ISO 8859-1 are valid.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBLC_TIME\fR\fR
+.ad
+.RS 12n
+Determines how \fBacct\fR handles date and time formats. In the "C" locale,
+date and time handling follows the U.S. rules.
+.RE
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/etc/passwd\fR\fR
+.ad
+.RS 18n
+Used for login name to user \fBID\fR conversions.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/acct\fR\fR
+.ad
+.RS 18n
+Holds all accounting commands listed in section 8 of this manual.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/adm/pacct\fR\fR
+.ad
+.RS 18n
+Current process accounting file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/adm/wtmpx\fR\fR
+.ad
+.RS 18n
+History of user access and administration information.
+.RE
+
+.SH SEE ALSO
+.BR acctcom (1),
+.BR acct (2),
+.BR acct.h (3HEAD),
+.BR passwd (5),
+.BR utmpx (5),
+.BR attributes (7),
+.BR environ (7),
+.BR acctcms (8),
+.BR acctcon (8),
+.BR acctmerg (8),
+.BR acctprc (8),
+.BR acctsh (8),
+.BR fwtmp (8),
+.BR runacct (8)
+.sp
+.LP
+\fI\fR
diff --git a/usr/src/man/man8/acctadm.8 b/usr/src/man/man8/acctadm.8
new file mode 100644
index 0000000000..cb6119b421
--- /dev/null
+++ b/usr/src/man/man8/acctadm.8
@@ -0,0 +1,429 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH ACCTADM 8 "April 9, 2016"
+.SH NAME
+acctadm \- configure extended accounting facility
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/acctadm\fR [\fB-DEsrux\fR] [\fB-d\fR \fIresource_list\fR]
+ [\fB-e\fR \fIresource_list\fR] [\fB-f\fR \fIfilename\fR]
+ [task | process | flow | net]
+.fi
+
+.SH DESCRIPTION
+.LP
+\fBacctadm\fR configures various attributes of the extended accounting
+facility. Without arguments, \fBacctadm\fR displays the current status of the
+extended accounting facility.
+.SH OPTIONS
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-d\fR \fIresource_list\fR\fR
+.ad
+.sp .6
+.RS 4n
+Disable reporting of resource usage for resource. Specify \fIresource_list\fR
+as a comma-separated list of resources or resource groups.
+.sp
+This option requires an operand. See \fBOPERANDS\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-D\fR\fR
+.ad
+.sp .6
+.RS 4n
+Disable accounting of the given operand type without closing the accounting
+file. This option can be used to temporarily stop writing accounting records to
+the accounting file without closing it. To close the file use the \fB-x\fR
+option. See \fB-x\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-e\fR \fIresource_list\fR\fR
+.ad
+.sp .6
+.RS 4n
+Enable reporting of resource usage for resource. Specify \fIresource_list\fR as
+a comma-separated list of resources or resource groups.
+.sp
+This option requires an operand. See \fBOPERANDS\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-E\fR\fR
+.ad
+.sp .6
+.RS 4n
+Enable accounting of the given operand type without sending the accounting
+output to a file. This option requires an operand. See \fBOPERANDS\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR \fIfilename\fR\fR
+.ad
+.sp .6
+.RS 4n
+Send the accounting output for the given operand type to \fIfilename\fR. If
+\fIfilename\fR exists, its contents must be of the given accounting type.
+.sp
+This option requires an operand. See \fBOPERANDS\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-r\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display available resource groups.
+.sp
+When this option is used with an operand, it displays resource groups available
+for a given accounting type. When no operand is specified, this option displays
+resource groups for all available accounting types. See OPERANDS.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR\fR
+.ad
+.sp .6
+.RS 4n
+Start method for the \fBsmf\fR(7) instance. This option is used to restore the
+extended accounting configuration at boot.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-x\fR\fR
+.ad
+.sp .6
+.RS 4n
+Deactivate accounting of the given operand type. This option also closes the
+accounting file for the given accounting type if it is currently open.
+.sp
+This option requires an operand. See \fBOPERANDS\fR.
+.RE
+
+.SH OPERANDS
+.LP
+The \fB-d\fR, \fB-D\fR, \fB-e\fR, \fB-E\fR, \fB-f\fR, and \fB-x\fR options
+require an operand.
+.sp
+.LP
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fB\fBprocess\fR\fR
+.ad
+.sp .6
+.RS 4n
+Run \fBacctadm\fR on the process accounting components of the extended
+accounting facility.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBtask\fR\fR
+.ad
+.sp .6
+.RS 4n
+Run \fBacctadm\fR on the task accounting components of the extended accounting
+facility.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBflow\fR\fR
+.ad
+.sp .6
+.RS 4n
+Run \fBacctadm\fR on the IPQoS accounting components of the extended accounting
+facility.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnet\fR\fR
+.ad
+.sp .6
+.RS 4n
+Run \fBacctadm\fR on links and flows administered by \fBdladm\fR(8) and
+\fBflowadm\fR(8), respectively. Basic network accounting relates only to
+links, while extended network accounting includes both link and flow
+accounting.
+.RE
+
+.sp
+.LP
+The optional final parameter to \fBacctadm\fR represents whether the command
+should act on the process, system task, IPQoS, or network accounting components
+of the extended accounting facility.
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRDisplaying the Current Status
+.sp
+.LP
+The following command displays the current status. In this example, system task
+accounting is active and tracking only \fBCPU\fR resources. Process and flow
+accounting are not active.
+
+.sp
+.in +2
+.nf
+$ \fBacctadm\fR
+ Task accounting: active
+ Task accounting file: /var/adm/exacct/task
+ Tracked task resources: extended
+ Untracked task resources: host
+ Process accounting: inactive
+ Process accounting file: none
+ Tracked process resources: none
+Untracked process resources: extended,host
+ Flow accounting: inactive
+ Flow accounting file: none
+ Tracked flow resources: none
+ Untracked flow resources: extended
+ Net accounting: inactive
+ Net accounting file: none
+ Tracked Net resources: none
+ Untracked Net resources: extended
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRActivating Basic Process Accounting
+.sp
+.LP
+The following command activates basic process accounting:
+
+.sp
+.in +2
+.nf
+$ \fBacctadm -e basic -f /var/adm/exacct/proc process\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRDisplaying Available Resource Groups
+.sp
+.LP
+The following command displays available resource groups:
+
+.sp
+.in +2
+.nf
+$ \fBacctadm -r\fR
+ process:
+ extended pid,uid,gid,cpu,time,command,tty,projid, \e
+ taskid,ancpid,wait-status,zone,flag,memory,mstate
+ basic pid,uid,gid,cpu,time,command,tty,flag
+ task:
+ extended taskid,projid,cpu,time,host,mstate,anctaskid,zone
+ basic taskid,projid,cpu,time
+ flow:
+ extended saddr,daddr,sport,dport,proto,dsfield,nbytes,npkts, \e
+ action,ctime,lseen,projid,uid
+ basic saddr,daddr,sport,dport,proto,nbytes,npkts,action
+ net:
+ extended name,devname,edest,vlan_tpid,vlan_tci,sap,cpuid, \e
+ priority,bwlimit,curtime,ibytes,obytes,ipkts,opks,ierrpkts \e
+ oerrpkts,saddr,daddr,sport,dport,protocol,dsfield
+ basic name,devname,edest,vlan_tpid,vlan_tci,sap,cpuid, \e
+ priority,bwlimit,curtime,ibytes,obytes,ipkts,opks,ierrpkts \e
+ oerrpkts
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+In the output above, the lines beginning with \fBextended\fR are shown with a
+backslash character. In actual \fBacctadm\fR output, these lines are displayed
+as unbroken, long lines.
+
+.LP
+\fBExample 4 \fRDisplaying Resource Groups for Task Accounting
+.sp
+.LP
+The following command displays resource groups for task accounting:
+
+.sp
+.in +2
+.nf
+$ \fBacctadm -r task\fR
+ extended taskid,projid,cpu,time,host,mstate,anctaskid,zone
+ basic taskid,projid,cpu,time
+.fi
+.in -2
+.sp
+
+.SH EXIT STATUS
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.sp .6
+.RS 4n
+Successful completion.
+.sp
+The modifications to the current configuration were valid and made
+successfully.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB1\fR\fR
+.ad
+.sp .6
+.RS 4n
+An error occurred.
+.sp
+A fatal error occurred either in obtaining or modifying the accounting
+configuration.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB2\fR\fR
+.ad
+.sp .6
+.RS 4n
+Invalid command line options were specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB95\fR\fR
+.ad
+.sp .6
+.RS 4n
+A fatal, non-configuration error occurred during the start of the \fBsmf\fR(7)
+service instance.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB96\fR\fR
+.ad
+.sp .6
+.RS 4n
+A fatal configuration error occurred during the start of the \fBsmf\fR(7)
+service instance.
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Committed
+.TE
+
+.SH SEE ALSO
+.LP
+.BR acct (2),
+.BR ipqos (4IPP),
+.BR attributes (7),
+.BR smf (7),
+.BR dladm (8),
+.BR flowadm (8)
+.SH NOTES
+.LP
+Both extended accounting and regular accounting can be active.
+.sp
+.LP
+Available resources can vary from system to system, and from platform to
+platform.
+.sp
+.LP
+Extended accounting configuration is stored in the service management facility
+(\fBsmf\fR(7)) repository. The configuration is restored at boot by a transient
+service instance, one per accounting type:
+.sp
+.in +2
+.nf
+svc:/system/extended-accounting:flow Flow accounting
+svc:/system/extended-accounting:process Process accounting
+svc:/system/extended-accounting:task Task accounting
+svc:/system/extended-accounting:net Network accounting
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The instances are enabled or disabled by \fBacctadm\fR as needed. Configuration
+changes are made using \fBacctadm\fR; service properties should not be modified
+directly using \fBsvccfg\fR(8).
+.sp
+.LP
+Users can manage extended accounting (start accounting, stop accounting, change
+accounting configuration parameters) if they have the appropriate RBAC Rights
+profile for the accounting type to be managed:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Extended Accounting Flow Management
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Extended Accounting Process Management
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Extended Accounting Task Management
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Extended Accounting Network Management
+.RE
+.sp
+.LP
+The preceding profiles are for, respectively, flow accounting, process
+accounting, task accounting, and network accounting.
diff --git a/usr/src/man/man8/acctcms.8 b/usr/src/man/man8/acctcms.8
new file mode 100644
index 0000000000..c101a801ee
--- /dev/null
+++ b/usr/src/man/man8/acctcms.8
@@ -0,0 +1,150 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 1999, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH ACCTCMS 8 "Feb 22, 1999"
+.SH NAME
+acctcms \- command summary from process accounting records
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/acct/acctcms\fR [\fB-a\fR [\fB-o\fR] [\fB-p\fR]] [\fB-c\fR] [\fB-j\fR] [\fB-n\fR] [\fB-s\fR]
+ [\fB-t\fR] \fIfilename\fR...
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBacctcms\fR reads one or more \fIfilename\fRs, normally in the form described
+in \fBacct.h\fR(3HEAD). It adds all records for processes that executed
+identically named commands, sorts them, and writes them to the standard output,
+normally using an internal summary format.
+.SH OPTIONS
+.sp
+.ne 2
+.na
+\fB\fB-a\fR\fR
+.ad
+.RS 6n
+Print output in \fBASCII\fR rather than in the internal summary format. The
+output includes command name, number of times executed, total kcore-minutes,
+total \fBCPU\fR minutes, total real minutes, mean size (in K), mean \fBCPU\fR
+minutes per invocation, "hog factor," characters transferred, and blocks read
+and written, as in \fBacctcom\fR(1). Output is normally sorted by total
+kcore-minutes.
+.sp
+Use the following options only with the \fB-a\fR option:
+.sp
+.ne 2
+.na
+\fB\fB-o\fR\fR
+.ad
+.RS 6n
+Output a (non-prime) offshift-time-only command summary.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR\fR
+.ad
+.RS 6n
+Output a prime-time-only command summary.
+.RE
+
+When \fB-o\fR and \fB-p\fR are used together, a combination prime-time and
+non-prime-time report is produced. All the output summaries are total usage
+except number of times executed, CPU minutes, and real minutes, which are split
+into prime and non-prime.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-c\fR\fR
+.ad
+.RS 6n
+Sort by total \fBCPU\fR time, rather than total kcore-minutes.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-j\fR\fR
+.ad
+.RS 6n
+Combine all commands invoked only once under "***other".
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR\fR
+.ad
+.RS 6n
+Sort by number of command invocations.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR\fR
+.ad
+.RS 6n
+Any file names encountered hereafter are already in internal summary format.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-t\fR\fR
+.ad
+.RS 6n
+Process all records as total accounting records. The default internal summary
+format splits each field into prime and non-prime-time parts. This option
+combines the prime and non-prime time parts into a single field that is the
+total of both, and provides upward compatibility with old style \fBacctcms\fR
+internal summary format records.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRUsing the \fBacctcms\fR command.
+.sp
+.LP
+A typical sequence for performing daily command accounting and for maintaining
+a running total is:
+
+.sp
+.in +2
+.nf
+example%\fB acctcms filename ... > today\fR
+example% \fBcp total previoustotal\fR
+example% \fBacctcms \fR\fB-s\fR\fB today previoustotal > total\fR
+example% \fBacctcms \fR\fB-a\fR\fB \fR\fB-s\fR\fB today\fR
+.fi
+.in -2
+.sp
+
+.SH SEE ALSO
+.sp
+.LP
+.BR acctcom (1),
+.BR acct (2),
+.BR acct.h (3HEAD),
+.BR utmpx (5),
+.BR attributes (7),
+.BR acct (8),
+.BR acctcon (8),
+.BR acctmerg (8),
+.BR acctprc (8),
+.BR acctsh (8),
+.BR fwtmp (8),
+.BR runacct (8)
+.SH NOTES
+.sp
+.LP
+Unpredictable output results if \fB-t\fR is used on new style internal summary
+format files, or if it is not used with old style internal summary format
+files.
diff --git a/usr/src/man/man8/acctcon.8 b/usr/src/man/man8/acctcon.8
new file mode 100644
index 0000000000..6ed6841e3d
--- /dev/null
+++ b/usr/src/man/man8/acctcon.8
@@ -0,0 +1,184 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 1999 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH ACCTCON 8 "Feb 22, 1999"
+.SH NAME
+acctcon, acctcon1, acctcon2 \- connect-time accounting
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/acct/acctcon\fR [\fB-l\fR \fIlineuse\fR] [\fB-o\fR \fIreboot\fR]
+.fi
+
+.LP
+.nf
+\fB/usr/lib/acct/acctcon1\fR [\fB-p\fR] [\fB-t\fR] [\fB-l\fR \fIlineuse\fR] [\fB-o\fR \fIreboot\fR]
+.fi
+
+.LP
+.nf
+\fB/usr/lib/acct/acctcon2\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBacctcon\fR converts a sequence of login/logoff records to total accounting
+records (see the \fBtacct\fR format in \fBacct.h\fR(3HEAD)). The login/logoff
+records are read from standard input. The file \fB/var/adm/wtmpx\fR is usually
+the source of the login/logoff records; however, because it might contain
+corrupted records or system date changes, it should first be fixed using
+\fBwtmpfix\fR. The fixed version of file \fB/var/adm/wtmpx\fR can then be
+redirected to \fBacctcon\fR. The \fBtacct\fR records are written to standard
+output.
+.sp
+.LP
+\fBacctcon\fR is a combination of the programs \fBacctcon1\fR and
+\fBacctcon2\fR. \fBacctcon1\fR converts login/logoff records, taken from the
+fixed \fB/var/adm/wtmpx\fR file, to ASCII output. \fBacctcon2\fR reads the
+ASCII records produced by \fBacctcon1\fR and converts them to \fBtacct\fR
+records. \fBacctcon1\fR can be used with the \fB-l\fR and \fB-o\fR options,
+described below, as well as with the \fB-p\fR and \fB-t\fR options.
+.SH OPTIONS
+.sp
+.ne 2
+.na
+\fB\fB-p\fR\fR
+.ad
+.RS 14n
+Print input only, showing line name, login name, and time (in both numeric and
+date/time formats).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-t\fR\fR
+.ad
+.RS 14n
+\fBacctcon1\fR maintains a list of lines on which users are logged in. When it
+reaches the end of its input, it emits a session record for each line that
+still appears to be active. It normally assumes that its input is a current
+file, so that it uses the current time as the ending time for each session
+still in progress. The \fB-t\fR flag causes it to use, instead, the last time
+found in its input, thus assuring reasonable and repeatable numbers for
+non-current files.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR \fIlineuse\fR\fR
+.ad
+.RS 14n
+\fIlineuse\fR is created to contain a summary of line usage showing line name,
+number of minutes used, percentage of total elapsed time used, number of
+sessions charged, number of logins, and number of logoffs. This file helps
+track line usage, identify bad lines, and find software and hardware oddities.
+Hangup, termination of \fBlogin\fR(1) and termination of the login shell each
+generate logoff records, so that the number of logoffs is often three to four
+times the number of sessions. See \fBinit\fR(8) and \fButmpx\fR(5).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-o\fR \fIreboot\fR\fR
+.ad
+.RS 14n
+\fBreboot\fR is filled with an overall record for the accounting period, giving
+starting time, ending time, number of reboots, and number of date changes.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRUsing the \fBacctcon\fR command.
+.sp
+.LP
+The \fBacctcon\fR command is typically used as follows:
+
+.sp
+.in +2
+.nf
+example% acctcon \fB-l\fR lineuse \fB-o\fR reboots < tmpwtmp > ctacct
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The \fBacctcon1\fR and \fBacctcon2\fR commands are typically used as follows:
+
+.sp
+.in +2
+.nf
+example% acctcon1 \fB-l\fR lineuse \fB-o\fR reboots < tmpwtmp | sort +1n +2 > ctmp
+example% acctcon2 < ctmp > ctacct
+.fi
+.in -2
+.sp
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/var/adm/wtmpx\fR\fR
+.ad
+.RS 18n
+History of user access and administration information
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR acctcom (1),
+.BR login (1),
+.BR acct (2),
+.BR acct.h (3HEAD),
+.BR utmpx (5),
+.BR attributes (7),
+.BR acct (8),
+.BR acctcms (8),
+.BR acctmerg (8),
+.BR acctprc (8),
+.BR acctsh (8),
+.BR fwtmp (8),
+.BR init (8),
+.BR runacct (8)
+.sp
+.LP
+\fI\fR
+.SH NOTES
+.sp
+.LP
+The line usage report is confused by date changes. Use \fBwtmpfix\fR (see
+\fBfwtmp\fR(8)), with the \fB/var/adm/wtmpx\fR file as an argument, to correct
+this situation.
+.sp
+.LP
+During a single invocation of any given command, the \fBacctcon\fR,
+\fBacctcon1\fR, and \fBacctcon2\fR commands can process a maximum of:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+6000 distinct session
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+1000 distinct terminal lines
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+2000 distinct login names
+.RE
+.sp
+.LP
+If at some point the actual number of any one of these items exceeds the
+maximum, the command will not succeed.
diff --git a/usr/src/man/man8/acctmerg.8 b/usr/src/man/man8/acctmerg.8
new file mode 100644
index 0000000000..095d15eae2
--- /dev/null
+++ b/usr/src/man/man8/acctmerg.8
@@ -0,0 +1,125 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 1999 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH ACCTMERG 8 "Feb 22, 1999"
+.SH NAME
+acctmerg \- merge or add total accounting files
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/acct/acctmerg\fR [\fB-a\fR] [\fB-i\fR] [\fB-p\fR] [\fB-t\fR] [\fB-u\fR] [\fB-v\fR]
+ [\fIfilename\fR] ...
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBacctmerg\fR reads its standard input and up to nine additional files, all in
+the \fBtacct\fR format (see \fBacct.h\fR(3HEAD)) or an \fBASCII\fR version
+thereof. It merges these inputs by adding records whose keys (normally user
+\fBID\fR and name) are identical, and expects the inputs to be sorted on those
+keys.
+.SH OPTIONS
+.sp
+.ne 2
+.na
+\fB\fB-a\fR\fR
+.ad
+.RS 6n
+Produce output in \fBASCII\fR version of \fBtacct\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-i\fR\fR
+.ad
+.RS 6n
+Produce input in \fBASCII\fR version of \fBtacct\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR\fR
+.ad
+.RS 6n
+Print input with no processing.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-t\fR\fR
+.ad
+.RS 6n
+Produce a single record that totals all input.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-u\fR\fR
+.ad
+.RS 6n
+Summarize by user \fBID,\fR rather than by user \fBID\fR and name.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.RS 6n
+Produce output in verbose \fBASCII\fR format, with more precise notation for
+floating-point numbers.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRUsing the \fBacctmerg\fR command.
+.sp
+.LP
+The following sequence is useful for making "repairs" to any file kept in this
+format:
+
+.sp
+.in +2
+.nf
+example% acctmerg \|\|\fB-v\fR \|<\fIfilename1\fR\fB\|>\fR\fIfilename2\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Edit \fIfilename2\fR as you want:
+
+.sp
+.in +2
+.nf
+\fBexample% acctmerg \|\|\fR\fB-i\fR\fB \|\fR\fI<filename2\fR\fB\|>\fR\fIfilename1\fR
+.fi
+.in -2
+.sp
+
+.SH SEE ALSO
+.sp
+.LP
+.BR acctcom (1),
+.BR acct (2),
+.BR acct.h (3HEAD),
+.BR utmpx (5),
+.BR attributes (7),
+.BR acct (8),
+.BR acctcms (8),
+.BR acctcon (8),
+.BR acctprc (8),
+.BR acctsh (8),
+.BR fwtmp (8),
+.BR runacct (8)
+.sp
+.LP
+\fI\fR
diff --git a/usr/src/man/man8/acctprc.8 b/usr/src/man/man8/acctprc.8
new file mode 100644
index 0000000000..20b384f5ee
--- /dev/null
+++ b/usr/src/man/man8/acctprc.8
@@ -0,0 +1,143 @@
+'\" te
+.\" Copyright (c) 1996, Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH ACCTPRC 8 "Jul 15, 2004"
+.SH NAME
+acctprc, acctprc1, acctprc2 \- process accounting
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/acct/acctprc\fR
+.fi
+
+.LP
+.nf
+\fB/usr/lib/acct/acctprc1\fR [\fIctmp\fR]
+.fi
+
+.LP
+.nf
+\fB/usr/lib/acct/acctprc2\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBacctprc\fR reads the standard input and converts it to total accounting
+records (see the \fBtacct\fR record in \fBacct.h\fR(3HEAD)). \fBacctprc\fR
+divides CPU time into prime time and non-prime time and determines mean memory
+size (in memory segment units). \fBacctprc\fR then summarizes the \fBtacct\fR
+records, according to user IDs, and adds login names corresponding to the user
+IDs. The summarized records are then written to the standard output.
+\fBacctprc1\fR reads input in the form described by \fBacct.h\fR(3HEAD), adds
+login names corresponding to user \fBIDs,\fR then writes for each process an
+\fBASCII\fR line giving user \fBID,\fR login name, prime \fBCPU\fR time (tics),
+non-prime \fBCPU\fR time (tics), and mean memory size (in memory segment
+units). If \fIctmp\fR is given, it should contain a list of login sessions
+sorted by user \fBID\fR and login name. If this file is not supplied, it
+obtains login names from the password file, just as \fBacctprc\fR does. The
+information in \fIctmp\fR helps it distinguish between different login names
+that share the same user \fBID.\fR
+.sp
+.LP
+From the standard input, \fBacctprc2\fR reads records in the form written by
+\fBacctprc1\fR, summarizes them according to user \fBID\fR and name, then
+writes the sorted summaries to the standard output as total accounting records.
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRExamples of \fBacctprc\fR.
+.sp
+.LP
+The \fBacctprc\fR command is typically used as shown below:
+
+.sp
+.in +2
+.nf
+example% acctprc \|< /var/adm/pacct \|> ptacct
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The \fBacctprc1\fR and \fBacctprc2s\fR commands are typically used as shown
+below:
+
+.sp
+.in +2
+.nf
+example% acctprc1 \|ctmp \|</var/adm/pacct
+example% acctprc2 > ptacct
+.fi
+.in -2
+.sp
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/passwd\fR\fR
+.ad
+.RS 15n
+system password file
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR acctcom (1),
+.BR acct (2),
+.BR acct.h (3HEAD),
+.BR utmpx (5),
+.BR attributes (7),
+.BR acct (8),
+.BR acctcms (8),
+.BR acctcon (8),
+.BR acctmerg (8),
+.BR acctsh (8),
+.BR cron (8),
+.BR fwtmp (8),
+.BR runacct (8)
+.SH NOTES
+.sp
+.LP
+Although it is possible for \fBacctprc1\fR to distinguish among login names
+that share user \fBIDs\fR for commands run from a command line, it is difficult
+for \fBacctprc1\fR to make this distinction for commands invoked in other ways.
+A command run from \fBcron\fR(8) is an example of where \fBacctprc1\fR might
+have difficulty. A more precise conversion can be done using the \fBacctwtmp\fR
+program in \fBacct\fR(8). \fBacctprc\fR does not distinguish between users
+with identical user IDs.
+.sp
+.LP
+A memory segment of the mean memory size is a unit of measure for the number of
+bytes in a logical memory segment on a particular processor.
+.sp
+.LP
+During a single invocation of any given command, the \fBacctprc\fR,
+\fBacctprc1\fR, and \fBacctprc2\fR commands can process a maximum of
+.RS +4
+.TP
+.ie t \(bu
+.el o
+6000 distinct sessions
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+1000 distinct terminal lines
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+2000 distinct login names
+.RE
+.sp
+.LP
+If at some point the actual number of any one of these items exceeds the
+maximum, the command will not succeed.
diff --git a/usr/src/man/man8/acctsh.8 b/usr/src/man/man8/acctsh.8
new file mode 100644
index 0000000000..223e9da409
--- /dev/null
+++ b/usr/src/man/man8/acctsh.8
@@ -0,0 +1,333 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 2002 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH ACCTSH 8 "Mar 15, 2002"
+.SH NAME
+acctsh, chargefee, ckpacct, dodisk, lastlogin, monacct, nulladm, prctmp,
+prdaily, prtacct, shutacct, startup, turnacct \- shell procedures for
+accounting
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/acct/chargefee\fR \fIlogin-name\fR \fInumber\fR
+.fi
+
+.LP
+.nf
+\fB/usr/lib/acct/ckpacct\fR [\fIblocks\fR]
+.fi
+
+.LP
+.nf
+\fB/usr/lib/acct/dodisk\fR [\fB-o\fR] [\fIfilename\fR]...
+.fi
+
+.LP
+.nf
+\fB/usr/lib/acct/lastlogin\fR
+.fi
+
+.LP
+.nf
+\fB/usr/lib/acct/monacct\fR \fInumber\fR
+.fi
+
+.LP
+.nf
+\fB/usr/lib/acct/nulladm\fR \fIfilename\fR...
+.fi
+
+.LP
+.nf
+\fB/usr/lib/acct/prctmp\fR \fIfilename\fR
+.fi
+
+.LP
+.nf
+\fB/usr/lib/acct/prdaily\fR [\fB-c\fR] [\fB-l\fR] [\fImmdd\fR]
+.fi
+
+.LP
+.nf
+\fB/usr/lib/acct/prtacct\fR \fIfilename\fR ['' \fIheading\fR '']
+.fi
+
+.LP
+.nf
+\fB/usr/lib/acct/shutacct\fR ['' \fIreason\fR '']
+.fi
+
+.LP
+.nf
+\fB/usr/lib/acct/startup\fR
+.fi
+
+.LP
+.nf
+\fB/usr/lib/acct/turnacct\fR on | off | switch
+.fi
+
+.SH DESCRIPTION
+.SS "chargefee Command"
+.sp
+.LP
+\fBchargefee\fR can be invoked to charge a \fInumber\fR of units to
+\fIlogin-name\fR. A record is written to \fB/var/adm/fee\fR, to be merged with
+other accounting records by \fBrunacct\fR(8).
+.SS "ckpacct Command"
+.sp
+.LP
+\fBckpacct\fR should be initiated using \fBcron\fR(8) to periodically check
+the size of \fB/var/adm/pacct\fR. If the size exceeds \fIblocks\fR, \fB500\fR
+by default, \fBturnacct\fR will be invoked with argument \fBswitch\fR. To avoid
+a conflict with \fBturnacct switch\fR execution in \fBrunacct\fR, do not run
+\fBckpacct\fR and \fBrunacct\fR simultaneously. If the number of free disk
+blocks in the \fB/var\fR file system falls below \fB500\fR, \fBckpacct\fR will
+automatically turn off the collection of process accounting records via the
+\fBoff\fR argument to \fBturnacct\fR. When at least \fB500\fR blocks are
+restored, the accounting will be activated again on the next invocation of
+\fBckpacct\fR. This feature is sensitive to the frequency at which
+\fBckpacct\fR is executed, usually by the \fBcron\fR(8) command.
+.SS "dodisk Command"
+.sp
+.LP
+\fBdodisk\fR should be invoked by \fBcron\fR(8) to perform the disk accounting
+functions.
+.SS "lastlogin Command"
+.sp
+.LP
+\fBlastlogin\fR is invoked by \fBrunacct\fR(8) to update
+\fB/var/adm/acct/sum/loginlog\fR, which shows the last date on which each
+person logged in.
+.SS "monacct Command"
+.sp
+.LP
+\fBmonacct\fR should be invoked once each month or each accounting period.
+\fInumber\fR indicates which month or period it is. If \fInumber\fR is not
+given, it defaults to the current month (01\(mi12). This default is useful if
+\fBmonacct\fR is to executed using \fBcron\fR(8) on the first day of each
+month. \fBmonacct\fR creates summary files in \fB/var/adm/acct/fiscal\fR and
+restarts the summary files in \fB/var/adm/acct/sum\fR.
+.SS "nulladm Command"
+.sp
+.LP
+\fBnulladm\fR creates \fIfilename\fR with mode 664 and ensures that owner and
+group are \fBadm\fR. It is called by various accounting shell procedures.
+.SS "prctmp Command"
+.sp
+.LP
+\fBprctmp\fR can be used to print the session record file (normally
+\fB/var/adm/acct/nite/ctmp\fR created by \fBacctcon1\fR (see
+\fBacctcon\fR(8)).
+.SS "prdaily Command"
+.sp
+.LP
+\fBprdaily\fR is invoked by \fBrunacct\fR(8) to format a report of the
+previous day's accounting data. The report resides in
+\fB/var/adm/acct/sum/rprt/mmdd\fR where \fImmdd\fR is the month and day of the
+report. The current daily accounting reports may be printed by typing
+\fBprdaily\fR. Previous days' accounting reports can be printed by using the
+\fImmdd\fR option and specifying the exact report date desired.
+.SS "prtacct Command"
+.sp
+.LP
+\fBprtacct\fR can be used to format and print any total accounting
+(\fBtacct\fR)file.
+.SS "shutacct Command"
+.sp
+.LP
+\fBshutacct\fR is invoked during a system shutdown to turn process accounting
+off and append a \fIreason\fR record to \fB/var/adm/wtmpx\fR.
+.SS "startup Command"
+.sp
+.LP
+\fBstartup\fR can be invoked when the system is brought to a multi-user state
+to turn process accounting on.
+.SS "turnacct Command"
+.sp
+.LP
+\fBturnacct\fR is an interface to \fBaccton\fR (see \fBacct\fR(8)) to turn
+process accounting \fBon\fR or \fBoff\fR. The \fBswitch\fR argument moves the
+current \fB/var/adm/pacct\fR to the next free name in
+\fB/var/adm/pacct.\fIincr\fR\fR (where \fIincr\fR is a number starting with
+\fB0\fR and incrementing by one for each additional \fBpacct\fR file), then
+turns accounting back on again. This procedure is called by \fBckpacct\fR and
+thus can be taken care of by the \fBcron\fR(8) command and used to keep \fB
+pacct\fR to a reasonable size. \fBshutacct\fR uses \fBturnacct\fR to stop
+process accounting. \fBstartup\fR uses \fBturnacct\fR to start process
+accounting.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-c\fR\fR
+.ad
+.RS 6n
+This option prints a report of exceptional resource usage by command, and may
+be used on current day's accounting data only.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR\fR
+.ad
+.RS 6n
+This option prints a report of exceptional usage by login id for the specified
+date. Previous daily reports are cleaned up and therefore inaccessible after
+each invocation of \fBmonacct\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-o\fR\fR
+.ad
+.RS 6n
+This option uses \fBacctdusg\fR (see \fBacct\fR(8)) to do a slower version of
+disk accounting by login directory. \fIfilename\fRs specifies the one or more
+filesystem names where disk accounting will be done. If \fIfilename\fRs are
+used, disk accounting will be done on these filesystems only. If the \fB-o\fR
+option is used, \fIfilename\fRs should be mount points of mounted filesystems.
+If the \fB-o\fR option is omitted, \fIfilename\fRs should be the special file
+names of mountable filesystems.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/logadm.conf\fR\fR
+.ad
+.RS 30n
+Configuration file for the \fBlogadm\fR(8) command
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/acct\fR\fR
+.ad
+.RS 30n
+Holds all accounting commands listed in section \fB8\fR of this manual
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/acct/ptecms.awk\fR\fR
+.ad
+.RS 30n
+Contains the limits for exceptional usage by command name
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/acct/ptelus.awk\fR\fR
+.ad
+.RS 30n
+Contains the limits for exceptional usage by login \fBID\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/adm/acct/fiscal\fR\fR
+.ad
+.RS 30n
+Fiscal reports directory
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/adm/acct/nite\fR\fR
+.ad
+.RS 30n
+Working directory
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/adm/acct/sum\fR\fR
+.ad
+.RS 30n
+Summary directory that contains information for \fBmonacct\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/adm/acct/sum/loginlog\fR\fR
+.ad
+.RS 30n
+File updated by last login
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/adm/fee\fR\fR
+.ad
+.RS 30n
+Accumulator for fees
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/adm/pacct\fR\fR
+.ad
+.RS 30n
+Current file for per-process accounting
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/adm/pacct\fR\fIincr\fR\fR
+.ad
+.RS 30n
+Used if \fBpacct\fR gets large and during execution of daily accounting
+procedure
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/adm/wtmpx\fR\fR
+.ad
+.RS 30n
+History of user access and administration information
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR acctcom (1),
+.BR acct (2),
+.BR acct.h (3HEAD),
+.BR utmpx (5),
+.BR attributes (7),
+.BR acct (8),
+.BR acctcms (8),
+.BR acctcon (8),
+.BR acctmerg (8),
+.BR acctprc (8),
+.BR cron (8),
+.BR fwtmp (8),
+.BR logadm (8),
+.BR runacct (8)
+.SH NOTES
+.sp
+.LP
+See \fBrunacct\fR(8) for the main daily accounting shell script, which
+performs the accumulation of connect, process, fee, and disk accounting on a
+daily basis. It also creates summaries of command usage.
diff --git a/usr/src/man/man8/acpidump.8 b/usr/src/man/man8/acpidump.8
new file mode 100644
index 0000000000..627c3de42a
--- /dev/null
+++ b/usr/src/man/man8/acpidump.8
@@ -0,0 +1,83 @@
+.\" This file and its contents are supplied under the terms of the
+.\" Common Development and Distribution License ("CDDL"), version 1.0.
+.\" You may only use this file in accordance with the terms of version
+.\" 1.0 of the CDDL.
+.\"
+.\" A full copy of the text of the CDDL should have accompanied this
+.\" source. A copy of the CDDL is also available via the Internet at
+.\" http://www.illumos.org/license/CDDL.
+.\"
+.\"
+.\" Copyright (c) 2017, Joyent, Inc.
+.\"
+.Dd May 12, 2017
+.Dt ACPIDUMP 8
+.Os
+.Sh NAME
+.Nm acpidump
+.Nd dump ACPI tables
+.Sh SYNOPSIS
+.Nm
+.Op Fl bhsvxz
+.Op Fl a Ar address
+.Op Fl c Ar on|off
+.Op Fl f Ar file
+.Op Fl n Ar signature
+.Op Fl o Ar file
+.Op Fl r Ar address
+.Sh DESCRIPTION
+The
+.Nm
+utility is used to dump the system's Advanced Configuration and Power Interface
+(ACPI) tables that are provided by system firmware.
+The dumped tables can be used by other utilities, such as
+.Xr acpixtract 8
+or
+.Sy iasl .
+.Sh OPTIONS
+The following options are supported:
+.Bl -tag -width Ds
+.It Fl a Ar address
+Get the table at the given physical address.
+.It Fl b
+Dump all tables to binary files.
+.It Fl c Ar on|off
+Enable dumping customized tables.
+The default is off.
+.It Fl f Ar file
+Read the table from the given binary file.
+.It Fl h
+Display the usage message and exit.
+.It Fl n Ar signature
+Get the table with the specified signature.
+.It Fl o Ar file
+Write output to the given file.
+.It Fl r Ar address
+Dump tables from the
+.Sy RSDP
+at the given address.
+.It Fl s
+Only print table summaries.
+.It Fl v
+Print the version.
+.It Fl x
+Do not use the
+.Sy XSDT.
+.It Fl z
+Verbose.
+.El
+.Sh EXAMPLES
+.Sy Example 1
+Dump all ACPI Tables
+.Pp
+The following example dumps all of the ACPI tables from the system.
+This can then be used with
+.Xr acpixtract 8
+and the iasl utility to decode the ACPI tables from the system.
+In this example, all of the tables are written to the file
+.Pa acpi.out .
+.Bd -literal -offset width
+# acpidump -o acpi.dat
+.Ed
+.Sh SEE ALSO
+.Xr acpixtract 8
diff --git a/usr/src/man/man8/acpixtract.8 b/usr/src/man/man8/acpixtract.8
new file mode 100644
index 0000000000..76fd0150e7
--- /dev/null
+++ b/usr/src/man/man8/acpixtract.8
@@ -0,0 +1,113 @@
+.\" This file and its contents are supplied under the terms of the
+.\" Common Development and Distribution License ("CDDL"), version 1.0.
+.\" You may only use this file in accordance with the terms of version
+.\" 1.0 of the CDDL.
+.\"
+.\" A full copy of the text of the CDDL should have accompanied this
+.\" source. A copy of the CDDL is also available via the Internet at
+.\" http://www.illumos.org/license/CDDL.
+.\"
+.\"
+.\" Copyright (c) 2017, Joyent, Inc.
+.\"
+.Dd May 12, 2017
+.Dt ACPIXTRACT 8
+.Os
+.Sh NAME
+.Nm acpixtract
+.Nd extract binary ACPI tables from a dump file
+.Sh SYNOPSIS
+.Nm
+.Op Fl ahlmv
+.Op Fl s Ar signature
+.Ar file
+.Sh DESCRIPTION
+The
+.Nm
+utility extracts the binary data from a dump of the system's Advanced
+Configuration and Power Interface (ACPI) tables.
+The dump is usually obtained via the
+.Xr acpidump 8
+command.
+The resulting binary file(s) are represented in the ACPI
+.Sy ASL
+assembly language.
+For each table extracted, a corresponding
+.Em table.dat
+file will be created.
+.Sh OPTIONS
+The following options are supported:
+.Bl -tag -width Ds
+.It Fl a
+Extract all of the tables found.
+By default only the
+.Sy DSDT
+and
+.Sy SSDT
+tables will be extracted.
+.It Fl h
+Display the usage message and exit.
+.It Fl l
+List tables only, do not extract.
+.It Fl m
+Make a single file for all of the
+.Sy DSDT
+and
+.Sy SSDT
+tables.
+.It Fl s Ar signature
+Get the table with the specified signature.
+.It Fl v
+Print the version.
+.El
+.Sh EXAMPLES
+.Sy Example 1
+Extract all ACPI tables
+.Pp
+The following example extracts all of the individual ACPI tables from a
+previously created dump of the ACPI tables from a running system.
+Such a dump can be created with the
+.Xr acpidump 8
+utility.
+Extracted tables can then be inspected or disassembled by the
+iasl utility on any platform.
+.Bd -literal -offset width
+# acpixtract -a acpi.dat
+
+Intel ACPI Component Architecture
+ACPI Binary Table Extraction Utility version 20160527-32
+Copyright (c) 2000 - 2016 Intel Corporation
+
+Acpi table [RSDP] - 36 bytes written to rsdp.dat
+Acpi table [RSDT] - 128 bytes written to rsdt.dat
+Acpi table [XSDT] - 220 bytes written to xsdt.dat
+Acpi table [DSDT] - 213221 bytes written to dsdt.dat
+Acpi table [FACS] - 64 bytes written to facs.dat
+Acpi table [FACP] - 268 bytes written to facp.dat
+Acpi table [APIC] - 884 bytes written to apic.dat
+Acpi table [FPDT] - 68 bytes written to fpdt.dat
+Acpi table [FIDT] - 156 bytes written to fidt.dat
+Acpi table [SPMI] - 65 bytes written to spmi.dat
+Acpi table [MCFG] - 60 bytes written to mcfg.dat
+Acpi table [UEFI] - 66 bytes written to uefi.dat
+Acpi table [MCEJ] - 304 bytes written to mcej.dat
+Acpi table [HPET] - 56 bytes written to hpet.dat
+Acpi table [MSCT] - 144 bytes written to msct.dat
+Acpi table [SLIT] - 48 bytes written to slit.dat
+Acpi table [SRAT] - 4440 bytes written to srat.dat
+Acpi table [WDDT] - 64 bytes written to wddt.dat
+Acpi table [SSDT] - 94529 bytes written to ssdt1.dat
+Acpi table [NITR] - 113 bytes written to nitr.dat
+Acpi table [SSDT] - 9802 bytes written to ssdt2.dat
+Acpi table [SSDT] - 100 bytes written to ssdt3.dat
+Acpi table [PRAD] - 191 bytes written to prad.dat
+Acpi table [DMAR] - 328 bytes written to dmar.dat
+Acpi table [HEST] - 168 bytes written to hest.dat
+Acpi table [BERT] - 48 bytes written to bert.dat
+Acpi table [ERST] - 560 bytes written to erst.dat
+Acpi table [EINJ] - 336 bytes written to einj.dat
+
+28 binary ACPI tables extracted
+.Ed
+.Sh SEE ALSO
+.Xr acpidump 8
diff --git a/usr/src/man/man8/adbgen.8 b/usr/src/man/man8/adbgen.8
new file mode 100644
index 0000000000..3976cfdd79
--- /dev/null
+++ b/usr/src/man/man8/adbgen.8
@@ -0,0 +1,365 @@
+'\" te
+.\" Copyright (c) 1998 Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH ADBGEN 8 "Feb 20, 1998"
+.SH NAME
+adbgen \- generate adb script
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/adb/adbgen\fR [\fB-m\fR \fImodel\fR] \fIfilename\fR.adb .\|.\|.
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBadbgen\fR makes it possible to write \fBadb\fR(1) scripts that do not
+contain hard-coded dependencies on structure member offsets. The input to
+\fBadbgen\fR is a file named \fIfilename\fR\fB\&.adb\fR that contains header
+information, then a null line, then the name of a structure, and finally an
+\fBadb\fR script. \fBadbgen\fR only deals with one structure per file; all
+member names are assumed to be in this structure. The output of \fBadbgen\fR is
+an \fBadb\fR script in \fIfilename\fR. \fBadbgen\fR operates by generating a C
+program which determines structure member offsets and sizes, which in turn
+generate the \fBadb\fR script.
+.sp
+.LP
+The header lines, up to the null line, are copied verbatim into the generated C
+program. Typically, these are \fB#include\fR statements, which include the
+headers containing the relevant structure declarations.
+.sp
+.LP
+The \fBadb\fR script part may contain any valid \fBadb\fR commands (see
+\fBadb\fR(1)), and may also contain \fBadbgen\fR requests, each enclosed in
+braces (\fB\|{\|}\fR\|). Request types are:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Print a structure member. The request form is
+\fB{\fR\fImember\fR\fB,\fR\fI\|format\fR\fB}.\fR \fImember\fR is a member name
+of the \fIstructure\fR given earlier, and \fBformat\fR is any valid \fBadb\fR
+format request or any of the \fBadbgen\fR format specifiers (such as
+\fB{POINTER}\fR) listed below. For example, to print the \fBp_pid\fR field of
+the \fIproc\fR structure as a decimal number, you would write \fB{p_pid,d}\fR.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Print the appropriate \fBadb\fR format character for the given \fBadbgen\fR
+format specifier. This action takes the data model into consideration. The
+request form is \fB{\fR\fIformat specifier\fR\fB}.\fR The valid \fBadbgen\fR
+format specifiers are:
+.RS
+
+.sp
+.ne 2
+.na
+\fB\fB{POINTER}\fR\fR
+.ad
+.RS 14n
+pointer value in hexadecimal
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB{LONGDEC}\fR\fR
+.ad
+.RS 14n
+long value in decimal
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB{ULONGDEC}\fR\fR
+.ad
+.RS 14n
+unsigned long value in decimal
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB{ULONGHEX}\fR\fR
+.ad
+.RS 14n
+unsigned long value in hexadecimal
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB{LONGOCT}\fR\fR
+.ad
+.RS 14n
+long value in octal
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB{ULONGOCT}\fR\fR
+.ad
+.RS 14n
+unsigned long value in octal
+.RE
+
+.RE
+
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Reference a structure member. The request form is
+\fB{*\fR\fImember\fR\fB,\fR\fI\|base\fR\fB}.\fR \fImember\fR is the member name
+whose value is desired, and \fIbase\fR is an \fBadb\fR register name which
+contains the base address of the structure. For example, to get the \fBp_pid\fR
+field of the \fIproc\fR structure, you would get the \fIproc\fR structure
+address in an \fBadb\fR register, for example \fB<f\fR, and write
+\fB{*p_pid,<f}\fR.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Tell \fBadbgen\fR that the offset is valid. The request form is
+\fB{OFFSETOK}\fR. This is useful after invoking another \fBadb\fR script which
+moves the \fBadb\fR \fIdot\fR.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Get the size of the \fIstructure\fR. The request form is \fB{SIZEOF}\fR.
+\fBadbgen\fR replaces this request with the size of the structure. This is
+useful in incrementing a pointer to step through an array of structures.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Calculate an arbitrary C expression. The request form is
+\fB{EXPR,\fR\fI\|expression\fR\fB}.\fR \fBadbgen\fR replaces this request with
+the value of the expression. This is useful when more than one structure is
+involved in the script.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Get the offset to the end of the structure. The request form is \fB{END}\fR.
+This is useful at the end of the structure to get \fBadb\fR to align the
+\fIdot\fR for printing the next structure member.
+.RE
+.sp
+.LP
+\fBadbgen\fR keeps track of the movement of the \fBadb\fR \fIdot\fR and
+generates \fBadb\fR code to move forward or backward as necessary before
+printing any structure member in a script. \fBadbgen\fR's model of the behavior
+of \fBadb\fR's \fIdot\fR is simple: it is assumed that the first line of the
+script is of the form \fIstruct_address\fR/\fIadb text\fR and that subsequent
+lines are of the form +/\fIadb text\fR. The \fBadb\fR \fIdot\fR then moves in a
+sane fashion. \fBadbgen\fR does not check the script to ensure that these
+limitations are met. \fBadbgen\fR also checks the size of the structure member
+against the size of the \fBadb\fR format code and warns if they are not equal.
+.SH OPTIONS
+.sp
+.LP
+The following option is supported:
+.sp
+.ne 2
+.na
+\fB\fB-m\fR \fImodel\fR\fR
+.ad
+.RS 12n
+Specifies the data type model to be used by \fBadbgen\fR for the macro. This
+affects the outcome of the \fB{\fR\fIformat specifier\fR\fB}\fR requests
+described under \fBDESCRIPTION\fR and the offsets and sizes of data types.
+\fImodel\fR can be \fBilp32\fR or \fBlp64\fR. If the \fB-m\fR option is not
+given, the data type model defaults to \fBilp32\fR.
+.RE
+
+.SH OPERANDS
+.sp
+.LP
+The following operand is supported:
+.sp
+.ne 2
+.na
+\fB\fIfilename\fR\fB\&.adb\fR\fR
+.ad
+.RS 18n
+Input file that contains header information, followed by a null line, the name
+of the structure, and finally an \fBadb\fR script.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRA sample \fBadbgen\fR file.
+.sp
+.LP
+For an include file \fBx.h\fR which contained
+
+.sp
+.in +2
+.nf
+struct x {
+ char *x_cp;
+ char x_c;
+ int x_i;
+};
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+then , an \fBadbgen\fR file (call it \fBscript.adb\fR) to print the file
+\fBx.h\fR would be:
+
+.sp
+.in +2
+.nf
+#include "x.h"
+x
+\&./"x_cp"16t"x_c"8t"x_i"n{x_cp,{POINTER}}{x_c,C}{x_i,D}
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+After running \fBadbgen\fR as follows,
+
+.sp
+.in +2
+.nf
+% /usr/lib/adb/adbgen \|script.adb
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+the output file \fBscript\fR contains:
+
+.sp
+.in +2
+.nf
+\&./"x_cp"16t"x_c"8t"x_i"nXC3+D
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+For a macro generated for a 64-bit program using the \fBlp64\fR data model as
+follows,
+
+.sp
+.in +2
+.nf
+\fB% /usr/lib/adb/adbgen/ \fR\fB-m\fR\fB lp64 \|script.adb\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+the output file \fBscript\fR would contain:
+
+.sp
+.in +2
+.nf
+\&./"x_cp"16t"x_c"8t"x_i"nJC3+D
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+To invoke the script, type:
+
+.sp
+.in +2
+.nf
+example% adb program
+x$<script
+.fi
+.in -2
+.sp
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/usr/platform/\fR\fIplatform-name\fR\fB/lib/adb/*\fR\fR
+.ad
+.sp .6
+.RS 4n
+platform-specific \fBadb\fR scripts for debugging the 32-bit kernel
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/platform/\fR\fIplatform-name\fR\fB/lib/adb/sparcv9/*\fR\fR
+.ad
+.sp .6
+.RS 4n
+platform-specific \fBadb\fR scripts for debugging the 64-bit SPARC V9 kernel
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/adb/*\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBadb\fR scripts for debugging the 32-bit kernel
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/adb/sparcv9/*\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBadb\fR scripts for debugging the 64-bit SPARC V9 kernel
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR adb (1),
+.BR uname (1),
+.BR attributes (7),
+.BR kadb (8)
+.SH DIAGNOSTICS
+.sp
+.LP
+Warnings are given about structure member sizes not equal to \fBadb\fR format
+items and about badly formatted requests. The C compiler complains if a
+structure member that does not exist is referenced. It also complains about an
+ampersand before array names; these complaints may be ignored.
+.SH NOTES
+.sp
+.LP
+\fIplatform-name\fR can be found using the \fB-i\fR option of \fBuname\fR(1).
+.SH BUGS
+.sp
+.LP
+\fBadb\fR syntax is ugly; there should be a higher level interface for
+generating scripts.
+.sp
+.LP
+Structure members which are bit fields cannot be handled because C will not
+give the address of a bit field. The address is needed to determine the offset.
diff --git a/usr/src/man/man8/add_allocatable.8 b/usr/src/man/man8/add_allocatable.8
new file mode 100644
index 0000000000..5cd944fe4d
--- /dev/null
+++ b/usr/src/man/man8/add_allocatable.8
@@ -0,0 +1,252 @@
+'\" te
+.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH ADD_ALLOCATABLE 8 "Jul 20, 2007"
+.SH NAME
+add_allocatable \- add entries to allocation databases
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/add_allocatable\fR [\fB-f\fR] [\fB-s\fR] [\fB-d\fR] \fB-n\fR \fIname\fR \fB-t\fR \fItype\fR \fB-l\fR \fIdevice-list\fR
+ [\fB-a\fR \fIauthorization\fR] [\fB-c\fR \fIclean\fR] [\fB-o\fR \fIkey\fR=\fIvalue\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBadd_allocatable\fR creates new entries for user allocatable devices that are
+to be managed by the device allocation mechanism. \fBadd_allocatable\fR can
+also be used to update existing entries of such devices.
+.sp
+.LP
+\fBadd_allocatable\fR can also create and update entries for non-allocatable
+devices, such as printers, whose label range is managed by the device
+allocation mechanism.
+.sp
+.LP
+\fBadd_allocatable\fR can be used in shell scripts, such as installation
+scripts for driver packages, to automate the administrative work of setting up
+a new device.
+.sp
+.LP
+Use \fBlist_devices\fR(1) to see the names and types of allocatable devices,
+their attributes, and device paths.
+.SH OPTIONS
+.sp
+.ne 2
+.na
+\fB\fB-f\fR\fR
+.ad
+.RS 20n
+Force an update of an already-existing entry with the specified information.
+\fBadd_allocatable\fR exits with an error if this option is not specified when
+an entry with the specified device name already exists.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR\fR
+.ad
+.RS 20n
+Turn on silent mode. \fBadd_allocatable\fR does not print any error or warning
+messages.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-d\fR\fR
+.ad
+.RS 20n
+If this option is present, \fBadd_allocatable\fR updates the system-supplied
+default attributes of the device type specified with \fB-t\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR \fIname\fR\fR
+.ad
+.RS 20n
+Adds or updates an entry for device that is specified by \fIname\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-t\fR \fItype\fR\fR
+.ad
+.RS 20n
+Adds or updates device entries that are of a type that are specified by
+\fItype\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR \fIdevice-list\fR\fR
+.ad
+.RS 20n
+Adds or updates device paths to the device that is specified with \fB-n\fR.
+Multiple paths in \fIdevice-list\fR must be separated by white spaces and the
+list must be quoted.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-a\fR \fIauthorization\fR\fR
+.ad
+.RS 20n
+Adds or updates the authorization that is associated with either the device
+that is specified with \fB-n\fR or with devices of the type that is specified
+with \fB-t\fR. When more than one authorization is specified, the list must be
+separated by commas and must be quoted. When the device is not allocatable,
+\fIauthorization\fR is specified with an asterisk (*) and must be quoted. When
+the device is allocatable by any user, \fIauthorization\fR is specified with
+the at sign (@) and must be quoted. Default authorization is '@'.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-c\fR \fIclean\fR\fR
+.ad
+.RS 20n
+Specifies the \fBdevice_clean\fR(7) program \fIclean\fR to be used with the
+device that is specified with \fB-n\fR or with devices of the type that is
+specified with \fB-t\fR. The default clean program is \fB/bin/true\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-o\fR \fIkey\fR=\fIvalue\fR\fR
+.ad
+.RS 20n
+Accepts a string of colon-separated \fB\fIkey\fR=\fIvalue\fR\fR pairs for a
+device that is specified with \fB-n\fR or with devices of the type that is
+specified with \fB-t\fR. The following keys are currently interpreted by the
+system:
+.sp
+.ne 2
+.na
+\fB\fBminlabel\fR\fR
+.ad
+.RS 12n
+The minimum label at which the device can be used.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmaxlabel\fR\fR
+.ad
+.RS 12n
+The maximum label at which the device can be used.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBclass\fR\fR
+.ad
+.RS 12n
+Specifies a logical grouping of devices. For example, all Sun
+Ray\u\s-2TM\s+2\d devices of all device types is a logical grouping. The
+\fBclass\fR keyword has no default value.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBxdpy\fR\fR
+.ad
+.RS 12n
+Specifies the display name of the X session. This keyword is used to identify
+devices that are associated with the X session. The \fBxdpy\fR keyword has no
+default value.
+.RE
+
+.RE
+
+.SH EXIT STATUS
+.sp
+.LP
+When successful, \fBadd_allocate\fR returns an exit status of \fB0\fR (true).
+\fBadd_allocate\fR returns a nonzero exit status in the event of an error. The
+exit codes are as follows:
+.sp
+.ne 2
+.na
+\fB\fB1\fR\fR
+.ad
+.RS 5n
+Invocation syntax error
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB2\fR\fR
+.ad
+.RS 5n
+Unknown system error
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB3\fR\fR
+.ad
+.RS 5n
+An entry already exists for the specified device. This error occurs only when
+the \fB-f\fR option is not specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB4\fR\fR
+.ad
+.RS 5n
+Permission denied. User does not have DAC or MAC access record updates.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability See below.
+.TE
+
+.sp
+.LP
+The invocation is Uncommitted. The options are Uncommitted. The output is
+Not-an-Interface.
+.SH SEE ALSO
+.sp
+.LP
+.BR allocate (1),
+.BR deallocate (1),
+.BR list_devices (1),
+.BR attributes (7),
+.BR device_clean (7),
+.BR remove_allocatable (8)
+.SH NOTES
+.sp
+.LP
+The functionality described on this manual page is available only if the system
+is configured with Trusted Extensions.
diff --git a/usr/src/man/man8/add_drv.8 b/usr/src/man/man8/add_drv.8
new file mode 100644
index 0000000000..5660305cac
--- /dev/null
+++ b/usr/src/man/man8/add_drv.8
@@ -0,0 +1,645 @@
+'\" te
+.\" Copyright (c) 2005 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH ADD_DRV 8 "May 13, 2017"
+.SH NAME
+add_drv \- add a new device driver to the system
+.SH SYNOPSIS
+.LP
+.nf
+\fBadd_drv\fR [\fB-b\fR \fIbasedir\fR] [\fB-c\fR \fIclass_name\fR]
+ [\fB-i\fR '\fIidentify_name\fR...'] [\fB-m\fR '\fIpermission\fR','...']
+ [\fB-p\fR '\fIpolicy\fR'] [\fB-P\fR \fIprivilege\fR] [\fB-n\fR] [\fB-f\fR] [\fB-v\fR] \fIdevice_driver\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBadd_drv\fR command is used to inform the system about newly installed
+device drivers.
+.sp
+.LP
+Each device on the system has a name associated with it. This name is
+represented by the \fBname\fR property for the device. Similarly, the device
+may also have a list of driver names associated with it. This list is
+represented by the \fBcompatible\fR property for the device.
+.sp
+.LP
+The system determines which devices will be managed by the driver being added
+by examining the contents of the \fBname\fR property and the \fBcompatible\fR
+property (if it exists) on each device. If the value in the \fBname\fR property
+does not match the driver being added, each entry in the \fBcompatible\fR
+property is tried, in order, until either a match occurs or there are no more
+entries in the \fBcompatible\fR property.
+.sp
+.LP
+In some cases, adding a new driver may require a reconfiguration boot. See the
+\fBNOTES\fR section.
+.sp
+.LP
+Aliases might require quoting (with double-quotes) if they contain numbers. See
+\fBEXAMPLES\fR.
+.SS "The \fB/etc/minor_perm\fR File"
+.LP
+\fBadd_drv\fR and \fBupdate_drv\fR(8) read the \fB/etc/minor_perm\fR file to
+obtain permission information. The permission specified is applied to matching
+minor nodes created when a device bound to the driver is attached. A minor
+node's permission may be manually changed by \fBchmod\fR(1). For such nodes,
+the specified permissions apply, overriding the default permissions specified
+via \fBadd_drv\fR or \fBupdate_drv\fR(8).
+.sp
+.LP
+The format of the \fB/etc/minor_perm\fR file is as follows:
+.sp
+.in +2
+.nf
+\fIname\fR\fB:\fR\fIminor_name permissions owner group\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+\fIminor_name\fR may be the actual name of the minor node, or contain shell
+metacharacters to represent several minor nodes (see \fBsh\fR(1)).
+.sp
+.LP
+For example:
+.sp
+.in +2
+.nf
+sd:* 0640 root sys
+zs:[a-z],cu 0600 uucp uucp
+mm:kmem 0640 root bin
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The first line sets all devices exported by the \fBsd\fR node to \fB0640\fR
+permissions, owned by \fBroot\fR, with group \fBsys\fR. In the second line,
+devices such as \fBa,cu\fR \fBand\fR \fBz,cu\fR exported by the \fBzs\fR driver
+are set to \fB0600\fR permission, owned by \fBuucp\fR, with group \fBuucp\fR.
+In the third line the \fBkmem\fR device exported by the \fBmm\fR driver is set
+to \fB0640\fR permission, owned by \fBroot\fR, with group \fBbin\fR.
+.SS "Running \fBadd_drv\fR from a \fBpostinstall\fR Script"
+.LP
+When running \fBadd_drv\fR from within the context of a legacy SVR4
+package's postinstall
+script, you must consider whether the package is being added to a system image
+or to a running system. When a package is being installed on a system image,
+the \fBBASEDIR\fR variable refers to the image's base directory. In this
+situation, \fBadd_drv\fR should be invoked with \fB-b\fR \fB$BASEDIR\fR. This
+causes \fBadd_drv\fR only to update the image's system files; a reboot of the
+system or client would be required to make the driver operational.
+.sp
+.LP
+When a package is being installed on the running system itself, the system
+files need to be updated, as in the case above. However, the running kernel can
+be informed of the existence of the new driver without requiring a reboot. To
+accomplish this, the postinstall script must invoke \fBadd_drv\fR without the
+\fB-b\fR option. Accordingly, \fBpostinstall\fR scripts invoking \fBadd_drv\fR
+should be written thusly:
+.sp
+.in +2
+.nf
+if [ "${BASEDIR:=/}" = "/" ]
+then
+ ADD_DRV="add_drv"
+else
+ ADD_DRV="add_drv -b ${BASEDIR}"
+fi
+$ADD_DRV [<options>] \fI<driver>\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+\&...or, alternatively:
+.sp
+.in +2
+.nf
+if [ "${BASEDIR:=/}" != "/" ]
+then
+ BASEDIR_OPT="-b $BASEDIR"
+fi
+ add_drv $BASEDIR_OPT [<options>] \fI<driver>\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The \fB-b\fR option is described below.
+.SH OPTIONS
+.ne 2
+.na
+\fB\fB-b\fR \fIbasedir\fR\fR
+.ad
+.RS 26n
+Installs the driver on the system with a root directory of \fIbasedir\fR rather
+than installing on the system executing \fBadd_drv\fR. This option was typically
+used in package post-installation scripts. The system using
+\fIbasedir\fR as its root directory must reboot to complete the driver
+installation.
+.LP
+Note -
+.sp
+.RS 2
+The root file system of any non-global zones must not be referenced with the
+\fB-b\fR option. Doing so might damage the global zone's file system, might
+compromise the security of the global zone, and might damage the non-global
+zone's file system. See \fBzones\fR(7).
+.RE
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-c\fR \fIclass_name\fR\fR
+.ad
+.RS 26n
+The driver being added to the system exports the class \fIclass_name\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR\fR
+.ad
+.RS 26n
+Normally if a reconfiguration boot is required to complete the configuration of
+the driver into the system, \fBadd_drv\fR will not add the driver. The force
+flag forces \fBadd_drv\fR to add the driver even if a reconfiguration boot is
+required. See the \fB-v\fR flag.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-i\fR \fB\&'\fR\fIidentify_name\fR\fB\&'\fR\fR
+.ad
+.RS 26n
+A white-space separated list of aliases for the driver \fIdevice_driver\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-m\fR \fB\&'\fR\fIpermission\fR\fB\&'\fR\fR
+.ad
+.RS 26n
+Specify the file system permissions for device nodes created by the system on
+behalf of \fIdevice_driver\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR\fR
+.ad
+.RS 26n
+Do not try to load and attach \fIdevice_driver\fR, just modify the system
+configuration files for the \fIdevice_driver\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR '\fIpolicy\fR\fB\&'\fR\fR
+.ad
+.RS 26n
+Specify an additional device security policy.
+.sp
+The device security policy constists of several whitespace separated tokens:
+.sp
+.in +2
+.nf
+{\fIminorspec\fR {token=value}+}+
+.fi
+.in -2
+.sp
+
+\fIminorspec\fR is a simple wildcard pattern for a minor device. A single
+\fB*\fR matches all minor devices. Only one \fB*\fR is allowed in the pattern.
+.sp
+Patterns are matched in the following order:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+entries without a wildcard
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+entries with wildcards, longest wildcard first
+.RE
+The following tokens are defined: \fBread_priv_set\fR and \fBwrite_priv_set\fR.
+\fBread_priv_set\fR defines the privileges that need to be asserted in the
+effective set of the calling process when opening a device for reading.
+\fBwrite_priv_set\fR defines the privileges that need to be asserted in the
+effective set of the calling process when opening a device for writing. See
+\fBprivileges\fR(7).
+.sp
+A missing minor spec is interpreted as a \fB*\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-P\fR '\fIprivilege\fR\fB\&'\fR\fI\fR\fR
+.ad
+.RS 26n
+Specify additional, comma separated, privileges used by the driver. You can
+also use specific privileges in the device's policy.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.RS 26n
+The verbose flag causes \fBadd_drv\fR to provide additional information
+regarding the success or failure of a driver's configuration into the system.
+See the \fBEXAMPLES\fR section.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRAdding SUNW Example Driver to the System
+.sp
+.LP
+The following example adds the \fBSUNW,example\fR driver to a 32-bit system,
+with an alias name of \fBSUNW,alias\fR. It assumes the driver has already been
+copied to \fB/usr/kernel/drv\fR.
+
+.sp
+.in +2
+.nf
+example# add_drv \fB-m\fR '* 0666 bin bin','a 0644 root sys' \e
+ \fB-p\fR 'a write_priv_set=sys_config * write_priv_set=none' \e
+ \fB-i\fR 'SUNW,alias' SUNW,example
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Every minor node created by the system for the \fBSUNW,example\fR driver will
+have the permission \fB0666\fR, and be owned by user \fBbin\fR in the group
+\fBbin\fR, except for the minor device \fBa\fR, which will be owned by
+\fBroot\fR, group \fBsys\fR, and have a permission of \fB0644\fR. The specified
+device policy requires no additional privileges to open all minor nodes, except
+minor device \fBa\fR, which requires the \fBsys_config\fR privilege when
+opening the device for writing.
+
+.LP
+\fBExample 2 \fRAdding Driver to the Client \fB/export/root/sun1\fR
+.sp
+.LP
+The following example adds the driver to the client \fB/export/root/sun1\fR.
+The driver is installed and loaded when the client machine, \fBsun1\fR, is
+rebooted. This second example produces the same result as the first, except the
+changes are on the diskless client, \fBsun1\fR, and the client must be
+rebooted for the driver to be installed.
+
+.sp
+.in +2
+.nf
+example# add_drv \fB-m\fR '* 0666 bin bin','a 0644 root sys' \e
+ \fB-i\fR 'SUNW,alias' -b /export/root/sun1 \e
+ SUNW,example
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+See the note in the description of the \fB-b\fR option, above, specifying the
+caveat regarding the use of this option with the Solaris zones feature.
+
+.LP
+\fBExample 3 \fRAdding Driver for a Device Already Managed by an Existing
+Driver
+.sp
+.LP
+The following example illustrates the case where a new driver is added for a
+device that is already managed by an existing driver. Consider a device that is
+currently managed by the driver \fBdumb_framebuffer\fR. The \fBname\fR and
+\fBcompatible\fR properties for this device are as follows:
+
+.sp
+.in +2
+.nf
+name="display"
+compatible="whizzy_framebuffer", "dumb_framebuffer"
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+If \fBadd_drv\fR is used to add the \fBwhizzy_framebuffer\fR driver, the
+following will result.
+
+.sp
+.in +2
+.nf
+example# add_drv whizzy_framebuffer
+Error: Could not install driver (whizzy_framebuffer)
+Device managed by another driver.
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+If the \fB-v\fR flag is specified, the following will result.
+
+.sp
+.in +2
+.nf
+example# add_drv -v whizzy_framebuffer
+Error: Could not install driver (whizzy_framebuffer)
+Device managed by another driver.
+Driver installation failed because the following
+entries in /devices would be affected:
+
+ /devices/iommu@f,e0000000/sbus@f,e0001000/display[:*]
+ (Device currently managed by driver "dumb_framebuffer")
+
+The following entries in /dev would be affected:
+
+ /dev/fbs/dumb_framebuffer0
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+If the \fB-v\fR and \fB-f\fR flags are specified, the driver will be added
+resulting in the following.
+
+.sp
+.in +2
+.nf
+example# add_drv -vf whizzy_framebuffer
+A reconfiguration boot must be performed to complete the
+installation of this driver.
+
+The following entries in /devices will be affected:
+
+ /devices/iommu@f,e0000000/sbus@f,e0001000/display[:*]
+ (Device currently managed by driver "dumb_framebuffer"
+
+The following entries in /dev will be affected:
+
+ /dev/fbs/dumb_framebuffer0
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The above example is currently only relevant to devices exporting a generic
+device name.
+
+.LP
+\fBExample 4 \fRUse of Double Quotes in Specifying Driver Alias
+.sp
+.LP
+The following example shows the use of double quotes in specifying a driver
+alias that contains numbers.
+
+.sp
+.in +2
+.nf
+example# add_drv -i '"pci10c5,25"' smc
+.fi
+.in -2
+.sp
+
+.SH EXIT STATUS
+.LP
+\fBadd_drv\fR returns \fB0\fR on success and \fB1\fR on failure.
+.SH FILES
+.ne 2
+.na
+\fB\fB/kernel/drv\fR\fR
+.ad
+.sp .6
+.RS 4n
+32-bit boot device drivers
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/sparcv9\fR\fR
+.ad
+.sp .6
+.RS 4n
+64-bit SPARC boot device drivers
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/kernel/drv/amd64\fR\fR
+.ad
+.sp .6
+.RS 4n
+64-bit x86 boot device drivers
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/kernel/drv\fR\fR
+.ad
+.sp .6
+.RS 4n
+other 32-bit drivers that could potentially be shared between platforms
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/kernel/drv/sparcv9\fR\fR
+.ad
+.sp .6
+.RS 4n
+other 64-bit SPARC drivers that could potentially be shared between platforms
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/kernel/drv/amd64\fR\fR
+.ad
+.sp .6
+.RS 4n
+other 64-bit x86 drivers that could potentially be shared between platforms
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/platform/`uname\fR \fB-i`/kernel/drv\fR\fR
+.ad
+.sp .6
+.RS 4n
+32-bit platform-dependent drivers
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/platform/`uname\fR \fB-i`/kernel/drv/sparcv9\fR\fR
+.ad
+.sp .6
+.RS 4n
+64-bit SPARC platform-dependent drivers
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/platform/`uname\fR \fB-i`/kernel/drv/amd64\fR\fR
+.ad
+.sp .6
+.RS 4n
+64-bit x86 platform-dependent drivers
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/driver_aliases\fR\fR
+.ad
+.sp .6
+.RS 4n
+driver aliases file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/driver_classes\fR\fR
+.ad
+.sp .6
+.RS 4n
+driver classes file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/minor_perm\fR\fR
+.ad
+.sp .6
+.RS 4n
+minor node permissions
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/name_to_major\fR\fR
+.ad
+.sp .6
+.RS 4n
+major number binding
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/security/device_policy\fR\fR
+.ad
+.sp .6
+.RS 4n
+device policy
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/security/extra_privs\fR\fR
+.ad
+.sp .6
+.RS 4n
+device privileges
+.RE
+
+.SH SEE ALSO
+.LP
+.BR chmod (1),
+.BR devfs (4FS),
+.BR driver.conf (5),
+.BR system (5),
+.BR attributes (7),
+.BR privileges (7),
+.BR boot (8),
+.BR devfsadm (8),
+.BR kernel (8),
+.BR modinfo (8),
+.BR rem_drv (8),
+.BR update_drv (8),
+.BR ddi_create_minor_node (9F)
+.sp
+.LP
+\fI\fR
+.SH NOTES
+.LP
+It is possible to add a driver for a device already being managed by a
+different driver, where the driver being added appears in the device's
+\fBcompatible\fR list before the current driver. In such cases, a
+reconfiguration boot is required (see \fBboot\fR(8) and \fBkernel\fR(8)).
+After the reconfiguration boot, device links in \fB/dev\fR and references to
+these files may no longer be valid (see the \fB-v\fR flag). If a
+reconfiguration boot would be required to complete the driver installation,
+\fBadd_drv\fR will fail unless the \fB-f\fR option is specified. See
+\fBExample\fR \fB3\fR in the \fBEXAMPLES\fR section.
+.sp
+.LP
+With the introduction of the device policy several drivers have had their minor
+permissions changed and a device policy instated. The typical network driver
+should use the following device policy:
+.sp
+.in +2
+.nf
+add_drv -p 'read_priv_set=net_rawaccess\e
+ write_priv_set=net_rawaccess' -m '* 666 root sys'\e
+ mynet
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+This document does not constitute an API. \fB/etc/minor_perm\fR,
+\fB/etc/name_to_major\fR, \fB/etc/driver_classes\fR, and \fB/devices\fR may not
+exist or may have different contents or interpretations in a future release.
+The existence of this notice does not imply that any other documentation that
+lacks this notice constitutes an API.
+.sp
+.LP
+\fB/etc/minor_perm\fR can only be updated by \fBadd_drv\fR(8),
+\fBrem_drv\fR(8) or \fBupdate_drv\fR(8).
+.sp
+.LP
+In the current version of \fBadd_drv\fR, the use of double quotes to specify an
+alias is optional when used from the command line. However, when using
+\fBadd_drv\fR from packaging scripts, you should continue to use double quotes
+to specify an alias.
+.SH BUGS
+.LP
+Previous versions of \fBadd_drv\fR accepted a pathname for \fIdevice_driver\fR.
+This feature is no longer supported and results in failure.
diff --git a/usr/src/man/man8/addbadsec.8 b/usr/src/man/man8/addbadsec.8
new file mode 100644
index 0000000000..974d9ef459
--- /dev/null
+++ b/usr/src/man/man8/addbadsec.8
@@ -0,0 +1,104 @@
+'\" te
+.\" Copyright (c) 1998, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH ADDBADSEC 8 "Feb 24, 1998"
+.SH NAME
+addbadsec \- map out defective disk blocks
+.SH SYNOPSIS
+.LP
+.nf
+\fBaddbadsec\fR [\fB-p\fR] [\fB-a\fR \fIblkno\fR [\fIblkno\fR]...] [\fB-f\fR \fIfilename\fR] \fIraw_device\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBaddbadsec\fR is used by the system administrator to map out bad disk blocks.
+Normally, these blocks are identified during surface analysis, but occasionally
+the disk subsystem reports unrecoverable data errors indicating a bad block. A
+block number reported in this way can be fed directly into \fBaddbadsec\fR, and
+the block will be remapped. \fBaddbadsec\fR will first attempt hardware
+remapping. This is supported on \fBSCSI\fR drives and takes place at the disk
+hardware level. If the target is an \fBIDE\fR drive, then software remapping is
+used. In order for software remapping to succeed, the partition must contain an
+alternate slice and there must be room in this slice to perform the mapping.
+.sp
+.LP
+It should be understood that bad blocks lead to data loss. Remapping a
+defective block does not repair a damaged file. If a bad block occurs to a
+disk-resident file system structure such as a superblock, the entire slice
+might have to be recovered from a backup.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-a\fR\fR
+.ad
+.RS 6n
+Adds the specified blocks to the hardware or software map. If more than one
+block number is specified, the entire list should be quoted and block numbers
+should be separated by white space.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR\fR
+.ad
+.RS 6n
+Adds the specified blocks to the hardware or software map. The bad blocks are
+listed, one per line, in the specified file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR\fR
+.ad
+.RS 6n
+Causes \fBaddbadsec\fR to print the current software map. The output shows the
+defective block and the assigned alternate. This option cannot be used to print
+the hardware map.
+.RE
+
+.SH OPERANDS
+.sp
+.LP
+The following operand is supported:
+.sp
+.ne 2
+.na
+\fB\fIraw_device\fR\fR
+.ad
+.RS 14n
+The address of the disk drive (see \fBFILES\fR).
+.RE
+
+.SH FILES
+.sp
+.LP
+The raw device should be \fB/dev/rdsk/c?[t?]d?p0\fR. See \fBdisks\fR(8) for an
+explanation of \fBSCSI\fR and \fBIDE\fR device naming conventions.
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7),
+.BR disks (8),
+.BR diskscan (8),
+.BR fdisk (8),
+.BR fmthard (8),
+.BR format (8)
+.SH NOTES
+.sp
+.LP
+The \fBformat\fR(8) utility is available to format, label, analyze, and repair
+\fBSCSI\fR disks. This utility is included with the \fBaddbadsec\fR,
+\fBdiskscan\fR(8), \fBfdisk\fR(8), and \fBfmthard\fR(8) commands available
+for x86. To format an \fBIDE\fR disk, use the \fB DOS\fR "format" utility;
+however, to label, analyze, or repair \fBIDE\fR disks on x86 systems, use the
+Solaris \fBformat\fR(8) utility.
diff --git a/usr/src/man/man8/arcstat.8 b/usr/src/man/man8/arcstat.8
new file mode 100644
index 0000000000..dc09ee588f
--- /dev/null
+++ b/usr/src/man/man8/arcstat.8
@@ -0,0 +1,540 @@
+.\"
+.\" This file and its contents are supplied under the terms of the
+.\" Common Development and Distribution License ("CDDL"), version 1.0.
+.\" You may only use this file in accordance with the terms of version
+.\" 1.0 of the CDDL.
+.\"
+.\" A full copy of the text of the CDDL should have accompanied this
+.\" source. A copy of the CDDL is also available via the Internet at
+.\" http://www.illumos.org/license/CDDL.
+.\"
+.\"
+.\" Copyright 2014 Adam Stevko. All rights reserved.
+.\" Copyright (c) 2015 by Delphix. All rights reserved.
+.\"
+.TH ARCSTAT 8 "Feb 4, 2014"
+.SH NAME
+arcstat \- report ZFS ARC and L2ARC statistics
+.SH SYNOPSIS
+.nf
+\fBarcstat\fR [\fB-hvxr\fR] [\fB-f field[,field]...\fR] [\fB-o file\fR] [\fB-s string\fR]
+ [\fBinterval\fR [\fBcount\fR]]
+.fi
+
+.SH DESCRIPTION
+The \fBarcstat\fR utility print various ZFS ARC and L2ARC statistics in
+vmstat-like fashion.
+.sp
+
+.sp
+.LP
+The \fBarcstat\fR command reports the following information:
+.sp
+.ne 2
+
+.\"
+.sp
+.ne 1
+.na
+\fBc \fR
+.ad
+.RS 14n
+ARC Target Size
+.RE
+
+.sp
+.ne 2
+.na
+\fBdh% \fR
+.ad
+.RS 14n
+Demand Data hit percentage
+.RE
+
+.sp
+.ne 2
+.na
+\fBdm% \fR
+.ad
+.RS 14n
+Demand Data miss percentage
+.RE
+
+.sp
+.ne 2
+.na
+\fBmfu \fR
+.ad
+.RS 14n
+MFU List hits per second
+.RE
+
+.sp
+.ne 2
+.na
+\fBmh% \fR
+.ad
+.RS 14n
+Metadata hit percentage
+.RE
+
+.sp
+.ne 2
+.na
+\fBmm% \fR
+.ad
+.RS 14n
+Metadata miss percentage
+.RE
+
+.sp
+.ne 2
+.na
+\fBmru \fR
+.ad
+.RS 14n
+MRU List hits per second
+.RE
+
+.sp
+.ne 2
+.na
+\fBph% \fR
+.ad
+.RS 14n
+Prefetch hits percentage
+.RE
+
+.sp
+.ne 2
+.na
+\fBpm% \fR
+.ad
+.RS 14n
+Prefetch miss percentage
+.RE
+
+.sp
+.ne 2
+.na
+\fBdhit \fR
+.ad
+.RS 14n
+Demand Data hits per second
+.RE
+
+.sp
+.ne 2
+.na
+\fBdmis \fR
+.ad
+.RS 14n
+Demand Data misses per second
+.RE
+
+.sp
+.ne 2
+.na
+\fBhit% \fR
+.ad
+.RS 14n
+ARC Hit percentage
+.RE
+
+.sp
+.ne 2
+.na
+\fBhits \fR
+.ad
+.RS 14n
+ARC reads per second
+.RE
+
+.sp
+.ne 2
+.na
+\fBmfug \fR
+.ad
+.RS 14n
+MFU Ghost List hits per second
+.RE
+
+.sp
+.ne 2
+.na
+\fBmhit \fR
+.ad
+.RS 14n
+Metadata hits per second
+.RE
+
+.sp
+.ne 2
+.na
+\fBmiss \fR
+.ad
+.RS 14n
+ARC misses per second
+.RE
+
+.sp
+.ne 2
+.na
+\fBmmis \fR
+.ad
+.RS 14n
+Metadata misses per second
+.RE
+
+.sp
+.ne 2
+.na
+\fBmrug \fR
+.ad
+.RS 14n
+MRU Ghost List hits per second
+.RE
+
+.sp
+.ne 2
+.na
+\fBphit \fR
+.ad
+.RS 14n
+Prefetch hits per second
+.RE
+
+.sp
+.ne 2
+.na
+\fBpmis \fR
+.ad
+.RS 14n
+Prefetch misses per second
+.RE
+
+.sp
+.ne 2
+.na
+\fBread \fR
+.ad
+.RS 14n
+Total ARC accesses per second
+.RE
+
+.sp
+.ne 2
+.na
+\fBtime \fR
+.ad
+.RS 14n
+Time
+.RE
+
+.sp
+.ne 2
+.na
+\fBarcsz \fR
+.ad
+.RS 14n
+ARC Size
+.RE
+
+.sp
+.ne 2
+.na
+\fBdread \fR
+.ad
+.RS 14n
+Demand data accesses per second
+.RE
+
+.sp
+.ne 2
+.na
+\fBeskip \fR
+.ad
+.RS 14n
+evict_skip per second
+.RE
+
+.sp
+.ne 2
+.na
+\fBmiss% \fR
+.ad
+.RS 14n
+ARC miss percentage
+.RE
+
+.sp
+.ne 2
+.na
+\fBmread \fR
+.ad
+.RS 14n
+Metadata accesses per second
+.RE
+
+.sp
+.ne 2
+.na
+\fBpread \fR
+.ad
+.RS 14n
+Prefetch accesses per second
+.RE
+
+.sp
+.ne 2
+.na
+\fBl2hit% \fR
+.ad
+.RS 14n
+L2ARC access hit percentage
+.RE
+
+.sp
+.ne 2
+.na
+\fBl2hits \fR
+.ad
+.RS 14n
+L2ARC hits per second
+.RE
+
+.sp
+.ne 2
+.na
+\fBl2miss \fR
+.ad
+.RS 14n
+L2ARC misses per second
+.RE
+
+.sp
+.ne 2
+.na
+\fBl2read \fR
+.ad
+.RS 14n
+Total L2ARC accesses per second
+.RE
+
+.sp
+.ne 2
+.na
+\fBl2pref \fR
+.ad
+.RS 14n
+L2ARC prefetch allocated size per second
+.RE
+
+.sp
+.ne 2
+.na
+\fBl2pref% \fR
+.ad
+.RS 14n
+L2ARC prefetch allocated size percentage
+.RE
+
+.sp
+.ne 2
+.na
+\fBl2mfu \fR
+.ad
+.RS 14n
+L2ARC MFU allocated size per second
+.RE
+
+.sp
+.ne 2
+.na
+\fBl2mfu% \fR
+.ad
+.RS 14n
+L2ARC MFU allocated size percentage
+.RE
+
+.sp
+.ne 2
+.na
+\fBl2mru \fR
+.ad
+.RS 14n
+L2ARC MRU allocated size per second
+.RE
+
+.sp
+.ne 2
+.na
+\fBl2mru% \fR
+.ad
+.RS 14n
+L2ARC MRU allocated size percentage
+.RE
+
+.sp
+.ne 2
+.na
+\fBl2data \fR
+.ad
+.RS 14n
+L2ARC data (buf content) allocated size per second
+.RE
+
+.sp
+.ne 2
+.na
+\fBl2data% \fR
+.ad
+.RS 14n
+L2ARC data (buf content) allocated size percentage
+.RE
+
+.sp
+.ne 2
+.na
+\fBl2meta \fR
+.ad
+.RS 14n
+L2ARC metadata (buf content) allocated size per second
+.RE
+
+.sp
+.ne 2
+.na
+\fBl2meta% \fR
+.ad
+.RS 14n
+L2ARC metadata (buf content) allocated size percentage
+.RE
+
+.sp
+.ne 2
+.na
+\fBl2size \fR
+.ad
+.RS 14n
+Size of the L2ARC
+.RE
+
+.sp
+.ne 2
+.na
+\fBmtxmis \fR
+.ad
+.RS 14n
+mutex_miss per second
+.RE
+
+.sp
+.ne 2
+.na
+\fBl2bytes \fR
+.ad
+.RS 14n
+bytes read per second from the L2ARC
+.RE
+
+.sp
+.ne 2
+.na
+\fBl2miss% \fR
+.ad
+.RS 14n
+L2ARC access miss percentage
+.RE
+
+.sp
+.ne 2
+.na
+\fBl2asize \fR
+.ad
+.RS 14n
+Actual (compressed) size of the L2ARC
+.RE
+.\"
+
+.SH OPTIONS
+The following options are supported:
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR\fR
+.ad
+.RS 12n
+Display only specific fields. See \fBDESCRIPTION\fR for supported statistics.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-h\fR\fR
+.ad
+.RS 12n
+Display help message.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-o\fR\fR
+.ad
+.RS 12n
+Report statistics to a file instead of the standard output.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR\fR
+.ad
+.RS 12n
+Display data with a specified separator (default: 2 spaces).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-x\fR\fR
+
+.ad
+.RS 12n
+Print extended stats (same as -f time,mfu,mru,mfug,mrug,eskip,mtxmis,dread,pread,read).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.RS 12n
+Show field headers and definitions
+.RE
+
+.SH OPERANDS
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fB\fIcount\fR\fR
+.ad
+.RS 12n
+Display only \fIcount\fR reports.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIinterval\fR\fR
+.ad
+.RS 12n
+Specify the sampling interval in seconds.
+.RE
+
+.SH AUTHORS
+arcstat was originally written by Neelakanth Nadgir and supported only ZFS ARC statistics.
+Mike Harsch updated it to support L2ARC statistics.
diff --git a/usr/src/man/man8/arp.8 b/usr/src/man/man8/arp.8
new file mode 100644
index 0000000000..9961d9fb10
--- /dev/null
+++ b/usr/src/man/man8/arp.8
@@ -0,0 +1,251 @@
+'\" te
+.\" Copyright (c) 2009 Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH ARP 8 "Sep 02, 2015"
+.SH NAME
+arp \- address resolution display and control
+.SH SYNOPSIS
+.LP
+.nf
+\fBarp\fR \fIhostname\fR
+.fi
+
+.LP
+.nf
+\fBarp\fR \fB-a\fR [\fB-n\fR]
+.fi
+
+.LP
+.nf
+\fBarp\fR \fB-d\fR \fIhostname\fR
+.fi
+
+.LP
+.nf
+\fBarp\fR \fB-f\fR \fIfilename\fR
+.fi
+
+.LP
+.nf
+\fBarp\fR \fB-s\fR \fIhostname\fR \fIether_address\fR [temp] [pub] [trail]
+ [permanent]
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBarp\fR program displays and modifies the Internet-to-MAC address
+translation tables used by the address resolution protocol (see \fBarp\fR(4P)).
+.sp
+.LP
+With no flags, the program displays the current \fBARP\fR entry for
+\fIhostname\fR. The host may be specified by name or by number, using Internet
+dot notation.
+.sp
+.LP
+Options that modify the ARP translation tables (\fB-d\fR, \fB-f\fR, and
+\fB-s\fR) can be used only when the invoked command is granted the
+\fBPRIV_SYS_NET_CONFIG\fR privilege. See \fBprivileges\fR(7).
+.SH OPTIONS
+.ne 2
+.na
+\fB\fB-a\fR\fR
+.ad
+.RS 6n
+Display all of the current \fBARP\fR entries. The definition for the flags in
+the table are:
+.sp
+.ne 2
+.na
+\fB\fBd\fR\fR
+.ad
+.RS 5n
+Unverified; this is a local IP address that is currently undergoing Duplicate
+Address Detection. ARP will not respond to requests for this address until
+Duplicate Address Detection completes.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBo\fR\fR
+.ad
+.RS 5n
+Old; this entry is aging away. If IP requests it again, a new ARP query will be
+generated. This state is used for detecting peer address changes.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBy\fR\fR
+.ad
+.RS 5n
+Delayed; periodic address defense and conflict detection was unable to send a
+packet due to internal network use limits for non-traffic-related messages (100
+packets per hour per interface). This occurs only on interfaces with very large
+numbers of aliases.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBA\fR\fR
+.ad
+.RS 5n
+Authority; this machine is authoritative for this IP address. ARP will not
+accept updates from other machines for this entry.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBL\fR\fR
+.ad
+.RS 5n
+Local; this is a local IP address configured on one of the machine's logical
+interfaces. ARP will defend this address if another node attempts to claim it.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM\fR\fR
+.ad
+.RS 5n
+Mapping; only used for the multicast entry for \fB224.0.0.0\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBP\fR\fR
+.ad
+.RS 5n
+Publish; includes IP address for the machine and the addresses that have
+explicitly been added by the \fB-s\fR option. ARP will respond to ARP requests
+for this address.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBS\fR\fR
+.ad
+.RS 5n
+Static; entry cannot be changed by learned information. This indicates that the
+\fBpermanent\fR flag was used when creating the entry.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBU\fR\fR
+.ad
+.RS 5n
+Unresolved; waiting for ARP response.
+.RE
+
+You can use the \fB-n\fR option with the \fB-a\fR option to disable the
+automatic numeric IP address-to-name translation. Use \fBarp\fR \fB-an\fR or
+\fBarp\fR \fB-na\fR to display numeric IP addresses. The \fBarp\fR \fB-a\fR
+option is equivalent to:
+.sp
+.in +2
+.nf
+# \fBnetstat -p -f inet\fR
+.fi
+.in -2
+.sp
+
+\&...and \fB-an\fR and \fB-na\fR are equivalent to:
+.sp
+.in +2
+.nf
+# \fBnetstat -pn -f inet\fR
+.fi
+.in -2
+.sp
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-d\fR\fR
+.ad
+.RS 6n
+Delete an entry for the host called \fIhostname\fR.
+.sp
+Note that ARP entries for IPMP (IP Network Multipathing) data and test
+addresses are managed by the kernel and thus cannot be deleted.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR\fR
+.ad
+.RS 6n
+Read the file named \fIfilename\fR and set multiple entries in the \fBARP\fR
+tables. Entries in the file should be of the form:
+.sp
+.in +2
+.nf
+\fIhostname\fR \fIMACaddress\fR [temp] [pub] [trail] [permanent]
+.fi
+.in -2
+.sp
+
+See the \fB-s\fR option for argument definitions.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR\fR
+.ad
+.RS 6n
+Create an \fBARP\fR entry for the host called \fIhostname\fR with the MAC
+address \fIMACaddress\fR. For example, an Ethernet address is given as six
+hexadecimal bytes separated by colons. The entry will not be subject to
+deletion by aging unless the word \fBtemp\fR is specified in the command. If
+the word \fBpub\fR is specified, the entry will be published, which means that
+this system will respond to ARP requests for \fIhostname\fR even though the
+\fIhostname\fR is not its own. The word \fBpermanent\fR indicates that the
+system will not accept MAC address changes for \fIhostname\fR from the network.
+.sp
+Solaris does not implement trailer encapsulation, and the word \fBtrail\fR is
+accepted on entries for compatibility only.
+.sp
+\fBarp\fR \fB-s\fR can be used for a limited form of proxy ARP when a host on
+one of the directly attached networks is not physically present on a subnet.
+Another machine can then be configured to respond to ARP requests using
+\fBarp\fR \fB-s\fR. This is useful in certain SLIP configurations.
+.sp
+Non-temporary proxy ARP entries for an IPMP (IP Network Multipathing) group are
+automatically managed by the kernel. Specifically, if the hardware address in
+an entry matches the hardware address of an IP interface in an IPMP group, and
+the IP address is not local to the system, this will be regarded as an IPMP
+proxy ARP entry. This entry will have its hardware address automatically
+adjusted in order to keep the IP address reachable so long as the IPMP group
+has not entirely failed.
+.sp
+ARP entries must be consistent across an IPMP group. Therefore, ARP entries
+cannot be associated with individual underlying IP interfaces in an IPMP group,
+and must instead be associated with the corresponding IPMP IP interface.
+.sp
+Note that ARP entries for IPMP data and test addresses are managed by the
+kernel and thus cannot be changed.
+.RE
+
+.SH SEE ALSO
+.LP
+.BR arp (4P),
+.BR attributes (7),
+.BR privileges (7),
+.BR ifconfig (8),
+.BR ndp (8),
+.BR netstat (8)
diff --git a/usr/src/man/man8/atohexlabel.8 b/usr/src/man/man8/atohexlabel.8
new file mode 100644
index 0000000000..a8b4adb433
--- /dev/null
+++ b/usr/src/man/man8/atohexlabel.8
@@ -0,0 +1,120 @@
+'\" te
+.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH ATOHEXLABEL 8 "Jul 20, 2007"
+.SH NAME
+atohexlabel \- convert a human readable label to its internal text equivalent
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/atohexlabel\fR [\fIhuman-readable-sensitivity-label\fR]
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/atohexlabel\fR \fB-c\fR [\fIhuman-readable-clearance\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBatohexlabel\fR converts a human readable label into an internal text
+representation that is safe for storing in a public object. If no option is
+supplied, the label is assumed to be a sensitivity label.
+.sp
+.LP
+Internal conversions can later be parsed to their same value. This internal
+form is often hexadecimal. The converted label is written to the standard
+output file. If no human readable label is specified, the label is read from
+the standard input file. The expected use of this command is emergency repair
+of labels that are stored in internal databases.
+.SH OPTIONS
+.sp
+.ne 2
+.na
+\fB\fB-c\fR\fR
+.ad
+.RS 6n
+Identifies the human readable label as a clearance.
+.RE
+
+.SH EXIT STATUS
+.sp
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 13n
+On success.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB1\fR\fR
+.ad
+.RS 13n
+On failure, and writes diagnostics to the standard error file.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/security/tsol/label_encodings\fR\fR
+.ad
+.sp .6
+.RS 4n
+The label encodings file contains the classification names, words, constraints,
+and values for the defined labels of this system.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability See below.
+.TE
+
+.sp
+.LP
+The command output is Committed for systems with the same \fBlabel_encodings\fR
+file. The command invocation is Committed for systems that implement the DIA
+MAC policy.
+.SH SEE ALSO
+.sp
+.LP
+.BR label_to_str (3TSOL),
+.BR str_to_label (3TSOL),
+.BR label_encodings (5),
+.BR attributes (7),
+.BR hextoalabel (8)
+.sp
+.LP
+\fIHow to Get the Hexadecimal Equivalent for a Label\fR in \fISolaris Trusted
+Extensions Administrator\&'s Procedures\fR
+.SH NOTES
+.sp
+.LP
+The functionality described on this manual page is available only if the system
+is configured with Trusted Extensions.
+.sp
+.LP
+This file is part of the Defense Intelligence Agency (DIA) Mandatory Access
+Control (MAC) policy. This file might not be applicable to other MAC policies
+that might be developed for future releases of Solaris Trusted Extensions
+software.
diff --git a/usr/src/man/man8/audit.8 b/usr/src/man/man8/audit.8
new file mode 100644
index 0000000000..273b0b1b5b
--- /dev/null
+++ b/usr/src/man/man8/audit.8
@@ -0,0 +1,97 @@
+'\" te
+.\" Copyright (c) 2017 Peter Tribble
+.\" Copyright (c) 1993, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH AUDIT 8 "Mar 6, 2017"
+.SH NAME
+audit \- control the behavior of the audit daemon
+.SH SYNOPSIS
+.LP
+.nf
+\fBaudit\fR \fB-n\fR | \fB-s\fR | \fB-t\fR | \fB-v\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBaudit\fR command is the system administrator's interface to maintaining
+the audit daemon \fBauditd\fR(8). The audit daemon can be stopped, started, or
+notified to reread the configuration, stored in \fBsmf\fR(7) and managed using
+the \fBauditconfig\fR(8) command.
+.SH OPTIONS
+.ne 2
+.na
+\fB\fB-n\fR\fR
+.ad
+.RS 11n
+Notify the audit daemon to close the current audit file and open a new audit
+file in the current audit directory.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR\fR
+.ad
+.RS 11n
+Validates the audit service configuration and, if correct, notify the audit
+daemon to reread the audit configuration. If the audit daemon is not running,
+the audit daemon is started.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-t\fR\fR
+.ad
+.RS 11n
+Direct the audit daemon to close the current audit trail file, disable
+auditing, and die. Use \fB-s\fR to restart auditing.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR
+.ad
+.RS 11n
+Validate the audit service configuration. At least one plugin must be active;
+if that plugin is \fBaudit_binfile\fR then its \fBp_dir\fR attribute must
+contain at least one valid directory, and its \fBp_minfree\fR attribute must
+be between 0 and 100.
+.RE
+
+.SH DIAGNOSTICS
+.LP
+The \fBaudit\fR command will exit with \fB0\fR upon success and a positive
+integer upon failure.
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Stability Evolving
+.TE
+
+.SH SEE ALSO
+.LP
+.BR audit (2),
+.BR attributes (7),
+.BR smf (7),
+.BR auditconfig (8),
+.BR praudit (8)
+.SH NOTES
+.LP
+The \fB-v\fR option can be used in any zone, but the \fB-t\fR, \fB-s\fR, and
+\fB-n\fR options are valid only in local zones and, then, only if the
+\fBperzone\fR audit policy is set. See \fBauditd\fR(8) and
+\fBauditconfig\fR(8) for per-zone audit configuration.
diff --git a/usr/src/man/man8/audit_warn.8 b/usr/src/man/man8/audit_warn.8
new file mode 100644
index 0000000000..6ede6c07cd
--- /dev/null
+++ b/usr/src/man/man8/audit_warn.8
@@ -0,0 +1,234 @@
+'\" te
+.\" Copyright (c) 2017 Peter Tribble
+.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH AUDIT_WARN 8 "Mar 6, 2017"
+.SH NAME
+audit_warn \- audit daemon warning script
+.SH SYNOPSIS
+.LP
+.nf
+\fB/etc/security/audit_warn\fR [\fIoption\fR [\fIarguments\fR]]
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBaudit_warn\fR utility processes warning or error messages from the audit
+daemon. When a problem is encountered, the audit daemon, \fBauditd\fR(8) calls
+\fBaudit_warn\fR with the appropriate arguments. The \fIoption\fR argument
+specifies the error type.
+.sp
+.LP
+The system administrator can specify a list of mail recipients to be notified
+when an audit_warn situation arises by defining a mail alias called
+\fBaudit_warn\fR in \fBaliases\fR(5). The users that make up the
+\fBaudit_warn\fR alias are typically the \fBaudit\fR and \fBroot\fR users.
+.SH OPTIONS
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fBallhard\fR \fIcount\fR\fR
+.ad
+.sp .6
+.RS 4n
+Indicates that the hard limit for all filesystems has been exceeded \fIcount\fR
+times. The default action for this option is to send mail to the
+\fBaudit_warn\fR alias only if the \fIcount\fR is \fB1\fR, and to write a
+message to the machine console every time. It is recommended that mail
+\fInot\fR be sent every time as this could result in a the saturation of the
+file system that contains the mail spool directory.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBallsoft\fR\fR
+.ad
+.sp .6
+.RS 4n
+Indicates that the soft limit for all filesystems has been exceeded. The
+default action for this option is to send mail to the \fBaudit_warn\fR alias
+and to write a message to the machine console.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBauditoff\fR\fR
+.ad
+.sp .6
+.RS 4n
+Indicates that someone other than the audit daemon changed the system audit
+state to something other than \fB\fR\fBAUC_AUDITING\fR\fB\&. \fR The audit
+daemon will have exited in this case. The default action for this option is to
+send mail to the \fBaudit_warn\fR alias and to write a message to the machine
+console.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBhard\fR \fIfilename\fR\fR
+.ad
+.sp .6
+.RS 4n
+Indicates that the hard limit for the file has been exceeded. The default
+action for this option is to send mail to the \fBaudit_warn\fR alias and to
+write a message to the machine console.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnostart\fR\fR
+.ad
+.sp .6
+.RS 4n
+Indicates that auditing could not be started. The default action for this
+option is to send mail to the \fBaudit_warn\fR alias and to write a message to
+the machine console. Some administrators may prefer to modify \fBaudit_warn\fR
+to reboot the system when this error occurs.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBplugin\fR \fIname\fR \fIerror\fR \fIcount\fR \fItext\fR\fR
+.ad
+.sp .6
+.RS 4n
+Indicates that an error occurred during execution of the \fBauditd\fR plugin
+\fIname\fR. The default action for this option is to send mail to the
+\fBaudit_warn\fR alias only if \fIcount\fR is 1, and to write a message to the
+machine console every time. (Separate counts are kept for each error type.) It
+is recommended that mail not be sent every time as this could result in the
+saturation of the file system that contains the mail spool directory. The
+\fItext\fR field provides the detailed error message passed from the plugin.
+The \fIerror\fR field is one of the following strings:
+.sp
+.ne 2
+.na
+\fB\fBload_error\fR\fR
+.ad
+.RS 16n
+Unable to load the plugin \fIname\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsys_error\fR\fR
+.ad
+.RS 16n
+The plugin \fIname\fR is not executing due to a system error such as a lack of
+resources.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBconfig_error\fR\fR
+.ad
+.RS 16n
+No plugins loaded (including the binary file plugin, \fBaudit_binfile\fR(7))
+due to configuration errors. The name string is
+\fB--\fR to indicate that no plugin name applies.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBretry\fR\fR
+.ad
+.RS 16n
+The plugin \fIname\fR reports it has encountered a temporary failure.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBno_memory\fR\fR
+.ad
+.RS 16n
+The plugin \fIname\fR reports a failure due to lack of memory.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBinvalid\fR\fR
+.ad
+.RS 16n
+The plugin \fIname\fR reports it received an invalid input.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfailure\fR\fR
+.ad
+.RS 16n
+The plugin \fIname\fR has reported an error as described in \fItext\fR.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsoft\fR \fIfilename\fR\fR
+.ad
+.sp .6
+.RS 4n
+Indicates that the soft limit for \fIfilename\fR has been exceeded. The default
+action for this option is to send mail to the \fBaudit_warn\fR alias and to
+write a message to the machine console.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBtmpfile\fR\fR
+.ad
+.sp .6
+.RS 4n
+Indicates that there was a problem creating a symlink from
+\fB/var/run/.audit.log\fR to the current audit log file..
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+.TE
+
+.sp
+.LP
+The interface stability is evolving. The file content is unstable.
+.SH SEE ALSO
+.LP
+.BR aliases (5),
+.BR audit.log (5),
+.BR attributes (7),
+.BR audit (8),
+.BR auditd (8)
+.SH NOTES
+.LP
+If the audit policy \fBperzone\fR is set, the \fB/etc/security/audit_warn\fR
+script for the local zone is used for notifications from the local zone's
+instance of \fBauditd\fR. If the \fBperzone\fR policy is not set, all
+\fBauditd\fR errors are generated by the global zone's copy of
+\fB/etc/security/audit_warn\fR.
diff --git a/usr/src/man/man8/auditconfig.8 b/usr/src/man/man8/auditconfig.8
new file mode 100644
index 0000000000..4117007fe1
--- /dev/null
+++ b/usr/src/man/man8/auditconfig.8
@@ -0,0 +1,1093 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 2015, Joyent, Inc. All Rights Reserved
+.\" Copyright (c) 2017 Peter Tribble
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH AUDITCONFIG 8 "Mar 6, 2017"
+.SH NAME
+auditconfig \- configure auditing
+.SH SYNOPSIS
+.LP
+.nf
+\fBauditconfig\fR \fIoption\fR...
+.fi
+
+.SH DESCRIPTION
+.LP
+\fBauditconfig\fR provides a command line interface to get and set kernel audit
+parameters.
+.sp
+.LP
+The setting of the \fBperzone\fR policy determines the scope of the audit
+setting controlled by \fBauditconfig\fR. If \fBperzone\fR is set, then the
+values reflect the local zone except as noted. Otherwise, the settings are for
+the entire system. Any restriction based on the \fBperzone\fR setting is noted
+for each option to which it applies.
+.sp
+.LP
+A non-global zone administrator can set all audit policy options except
+\fBperzone\fR and \fBahlt\fR. \fBperzone\fR and \fBahlt\fR apply only to the
+global zone; setting these policies requires the privileges of a global zone
+administrator. \fBperzone\fR and \fBahlt\fR are described under the
+\fB-setpolicy\fR option, below.
+.SH OPTIONS
+.ne 2
+.na
+\fB\fB-aconf\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set the non-attributable audit mask to the value set using the
+\fB-setnaflags\fR option. For example:
+.sp
+.in +2
+.nf
+# auditconfig -aconf
+Configured non-attributable event mask.
+.fi
+.in -2
+.sp
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-audit\fR \fIevent\fR \fIsorf\fR \fIretval\fR \fIstring\fR\fR
+.ad
+.sp .6
+.RS 4n
+This command constructs an audit record for audit event \fIevent\fR using the
+process's audit characteristics containing a text token \fIstring\fR. The
+return token is constructed from the \fIsorf\fR (success/failure flag) and the
+\fIretval\fR (return value). The event is type \fBchar*\fR, the \fIsorf\fR is
+0/1 for success/failure, \fIretval\fR is an errno value, \fIstring\fR is type
+\fB*char\fR. This command is useful for constructing an audit record with a
+shell script. An example of this option:
+.sp
+.in +2
+.nf
+# auditconfig -audit AUE_ftpd 0 0 "test string"
+#
+
+audit record from audit trail:
+ header,76,2,ftp access,,Fri Dec 08 08:44:02 2000, + 669 msec
+ subject,abc,root,other,root,other,104449,102336,235 197121 elbow
+ text,test string
+ return,success,0
+.fi
+.in -2
+.sp
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-chkaconf\fR\fR
+.ad
+.sp .6
+.RS 4n
+Checks that the current non-attributable event flags set in the kernel
+matches the configuration. If the runtime class mask of a
+kernel audit event does not match the configured class mask, a mismatch is
+reported.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-chkconf\fR\fR
+.ad
+.sp .6
+.RS 4n
+Check the configuration of kernel audit event to class mappings. If the runtime
+class mask of a kernel audit event does not match the configured class mask, a
+mismatch is reported.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-conf\fR\fR
+.ad
+.sp .6
+.RS 4n
+Configure kernel audit event to class mappings. Runtime class mappings are
+changed to match those in the audit event to class database file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-getasid\fR\fR
+.ad
+.sp .6
+.RS 4n
+Prints the audit session ID of the current process. For example:
+.sp
+.in +2
+.nf
+# auditconfig -getasid
+audit session id = 102336
+.fi
+.in -2
+.sp
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-getaudit\fR\fR
+.ad
+.sp .6
+.RS 4n
+Returns the audit characteristics of the current process.
+.sp
+.in +2
+.nf
+# auditconfig -getaudit
+audit id = abc(666)
+process preselection mask = lo(0x1000,0x1000)
+terminal id (maj,min,host) = 235,197121,elbow(172.146.89.77)
+audit session id = 102336
+.fi
+.in -2
+.sp
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-getauid\fR\fR
+.ad
+.sp .6
+.RS 4n
+Prints the audit ID of the current process. For example:
+.sp
+.in +2
+.nf
+# auditconfig -getauid
+audit id = abc(666)
+.fi
+.in -2
+.sp
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-getcar\fR\fR
+.ad
+.sp .6
+.RS 4n
+Prints current active root location (anchored from root [or local zone root] at
+system boot). For example:
+.sp
+.in +2
+.nf
+# auditconfig -getcar
+current active root = /
+.fi
+.in -2
+.sp
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-getclass\fR \fIevent\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display the preselection mask associated with the specified kernel audit event.
+\fIevent\fR is the kernel event number or event name.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-getcond\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display the kernel audit condition. The condition displayed is the literal
+string \fBauditing\fR meaning auditing is enabled and turned on (the kernel
+audit module is constructing and queuing audit records); \fBnoaudit\fR, meaning
+auditing is enabled but turned off (the kernel audit module is not constructing
+and queuing audit records); or \fBnospace\fR, meaning there is no space for
+saving audit records. See \fBauditon\fR(2) and \fBauditd\fR(8) for further
+information.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-getcwd\fR\fR
+.ad
+.sp .6
+.RS 4n
+Prints current working directory (anchored from zone root at system boot). For
+example:
+.sp
+.in +2
+.nf
+# cd /usr/tmp
+# auditconfig -getcwd
+current working directory = /var/tmp
+.fi
+.in -2
+.sp
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-getestate\fR \fIevent\fR\fR
+.ad
+.sp .6
+.RS 4n
+For the specified event (string or event number), print out classes \fIevent\fR
+has been assigned. For example:
+.sp
+.in +2
+.nf
+# auditconfig -getestate 20
+audit class mask for event AUE_REBOOT(20) = 0x800
+# auditconfig -getestate AUE_RENAME
+audit class mask for event AUE_RENAME(42) = 0x30
+.fi
+.in -2
+.sp
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-getflags\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display the current active and configured user default audit flags. For
+example:
+.sp
+.in +2
+.nf
+# auditconfig -getflags
+active user default audit flags = no(0x0,0x0)
+configured user default audit flags = ex,lo(0x40001000,0x40001000)
+.fi
+.in -2
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-getkaudit\fR\fR
+.ad
+.sp .6
+.RS 4n
+Get audit characteristics of the current zone. For example:
+.sp
+.in +2
+.nf
+# auditconfig -getkaudit
+audit id = unknown(-2)
+process preselection mask = lo,na(0x1400,0x1400)
+terminal id (maj,min,host) = 0,0,(0.0.0.0)
+audit session id = 0
+.fi
+.in -2
+.sp
+
+If the audit policy \fBperzone\fR is not set, the terminal id is that of the
+global zone. Otherwise, it is the terminal id of the local zone.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-getkmask\fR\fR
+.ad
+.sp .6
+.RS 4n
+Get non-attributable pre-selection mask for the current zone. For example:
+.sp
+.in +2
+.nf
+# auditconfig -getkmask
+audit flags for non-attributable events = lo,na(0x1400,0x1400)
+.fi
+.in -2
+.sp
+
+If the audit policy \fBperzone\fR is not set, the kernel mask is that of the
+global zone. Otherwise, it is that of the local zone.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-getnaflags\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display the current active and configured non-attributable audit flags. For
+example:
+.sp
+.in +2
+.nf
+# auditconfig -getnaflags
+active non-attributable audit flags = no(0x0,0x0)
+configured non-attributable audit flags = lo(0x1000,0x1000)
+.fi
+.in -2
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-getpinfo\fR \fIpid\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display the audit ID, preselection mask, terminal ID, and audit session ID for
+the specified process.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-getplugin\fR [\fIplugin\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Display the currently installed plugins and their attributes. If \fIplugin\fR is
+specified, \fB-getplugin\fR only shows information for that \fIplugin\fR. For
+example:
+.sp
+.in +2
+.nf
+# auditconfig -getplugin
+Plugin: audit_binfile (active)
+ Attributes: p_dir=/var/audit;p_fsize=0;p_minfree=0;
+
+Plugin: audit_syslog (inactive)
+ Attributes: p_flags=;
+
+Plugin: audit_remote (inactive)
+ Attributes: p_hosts=;p_retries=3;p_timeout=5;
+.fi
+.in -2
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-getpolicy\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display the kernel audit policy. The \fBahlt\fR and \fBperzone\fR policies
+reflect the settings from the global zone. If \fBperzone\fR is set, all other
+policies reflect the local zone's settings. If \fBperzone\fR is not set, the
+policies are machine-wide.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-getqbufsz\fR\fR
+.ad
+.sp .6
+.RS 4n
+Get audit queue write buffer size. For example:
+.sp
+.in +2
+.nf
+# auditconfig -getqbufsz
+ audit queue buffer size (bytes) = 1024
+.fi
+.in -2
+.sp
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-getqctrl\fR\fR
+.ad
+.sp .6
+.RS 4n
+Get audit queue write buffer size, audit queue \fBhiwater\fR mark, audit queue
+\fBlowater\fR mark, audit queue \fBprod\fR interval (ticks).
+.sp
+.in +2
+.nf
+# auditconfig -getqctrl
+audit queue hiwater mark (records) = 100
+audit queue lowater mark (records) = 10
+audit queue buffer size (bytes) = 1024
+audit queue delay (ticks) = 20
+.fi
+.in -2
+.sp
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-getqdelay\fR\fR
+.ad
+.sp .6
+.RS 4n
+Get interval at which audit queue is prodded to start output. For example:
+.sp
+.in +2
+.nf
+# auditconfig -getqdelay
+audit queue delay (ticks) = 20
+.fi
+.in -2
+.sp
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-getqhiwater\fR\fR
+.ad
+.sp .6
+.RS 4n
+Get high water point in undelivered audit records when audit generation will
+block. For example:
+.sp
+.in +2
+.nf
+# auditconfig -getqhiwater
+audit queue hiwater mark (records) = 100
+.fi
+.in -2
+.sp
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-getqlowater\fR\fR
+.ad
+.sp .6
+.RS 4n
+Get low water point in undelivered audit records where blocked processes will
+resume. For example:
+.sp
+.in +2
+.nf
+# auditconfig -getqlowater
+audit queue lowater mark (records) = 10
+.fi
+.in -2
+.sp
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-getstat\fR\fR
+.ad
+.sp .6
+.RS 4n
+Print current audit statistics information. For example:
+.sp
+.in +2
+.nf
+# auditconfig -getstat
+gen nona kern aud ctl enq wrtn wblk rblk drop tot mem
+910 1 725 184 0 910 910 0 231 0 88 48
+.fi
+.in -2
+.sp
+
+See \fBauditstat\fR(8) for a description of the headings in \fB-getstat\fR
+output.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-gettid\fR\fR
+.ad
+.sp .6
+.RS 4n
+Print audit terminal ID for current process. For example:
+.sp
+.in +2
+.nf
+# auditconfig -gettid
+terminal id (maj,min,host) = 235,197121,elbow(172.146.89.77)
+.fi
+.in -2
+.sp
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-lsevent\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display the currently configured (runtime) kernel and user level audit event
+information.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-lspolicy\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display the kernel audit policies with a description of each policy.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-setasid\fR \fIsession-ID\fR [\fIcmd\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Execute shell or \fIcmd\fR with specified \fIsession-ID\fR. For example:
+.sp
+.in +2
+.nf
+# auditconfig -setasid 2000 /bin/ksh
+#
+# auditconfig -getpinfo 104485
+audit id = abc(666)
+process preselection mask = lo(0x1000,0x1000)
+terminal id (maj,min,host) = 235,197121,elbow(172.146.89.77)
+audit session id = 2000
+.fi
+.in -2
+.sp
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-setaudit\fR \fIaudit-ID\fR \fIpreselect_flags\fR \fIterm-ID\fR
+\fIsession-ID\fR [\fIcmd\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Execute shell or \fIcmd\fR with the specified audit characteristics.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-setauid\fR \fIaudit-ID\fR [\fIcmd\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Execute shell or \fIcmd\fR with the specified \fIaudit-ID\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-setclass\fR \fIevent audit_flag\fR[\fI,audit_flag .\|.\|.\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Map the kernel event \fIevent\fR to the classes specified by \fIaudit_flags\fR.
+\fIevent\fR is an event number or name. An \fIaudit_flag\fR is a two character
+string representing an audit class. If \fBperzone\fR is not set, this option
+is valid only in the global zone.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-setflags\fR \fIaudit_flags\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets the user default audit flags. For example, to set execute and login
+auditing for all users:
+.sp
+.in +2
+.nf
+# auditconfig -setflags ex,lo
+user default audit flags = ex,lo(0x40001000,0x40001000)
+.fi
+.in -2
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-setkaudit\fR \fIIP-address_type\fR \fIIP_address\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set IP address of machine to specified values. \fIIP-address_type\fR is
+\fBipv6\fR or \fBipv4\fR.
+.sp
+If \fBperzone\fR is not set, this option is valid only in the global zone.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-setkmask\fR \fIaudit_flags\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set non-attributes selection flags of machine.
+.sp
+If \fBperzone\fR is not set, this option is valid only in the global zone.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-setnaflags\fR \fIaudit_flags\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets the non-attributable audit flags. For example:
+.sp
+.in +2
+.nf
+# auditconfig -setnaflags lo
+non-attributable audit flags = lo(0x1000,0x1000)
+.fi
+.in -2
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-setplugin\fR \fIname active\fR|\fIinactive\fR [\fIattributes\fR [\fIqsize\fR]]\fR
+.ad
+.sp .6
+.RS 4n
+Configures a plugin's attributes. For example:
+.sp
+.in +2
+.nf
+# auditconfig -setplugin audit_syslog active
+.fi
+.in -2
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-setpmask\fR \fIpid flags\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set the preselection mask of the specified process.
+.sp
+If \fBperzone\fR is not set, this option is valid only in the global zone.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-setpolicy\fR
+[\fI+\fR|\fI-\fR]\fIpolicy_flag\fR[\fI,policy_flag ...\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Set the kernel audit policy. A policy \fIpolicy_flag\fR is literal strings that
+denotes an audit policy. A prefix of \fB+\fR adds the policies specified to the
+current audit policies. A prefix of \fB-\fR removes the policies specified from
+the current audit policies. No policies can be set from a local zone unless the
+\fBperzone\fR policy is first set from the global zone. The following are the
+valid policy flag strings (\fBauditconfig\fR \fB-lspolicy\fR also lists the
+current valid audit policy flag strings):
+.sp
+.ne 2
+.na
+\fB\fBall\fR\fR
+.ad
+.RS 16n
+Include all policies that apply to the current zone.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBahlt\fR\fR
+.ad
+.RS 16n
+Panic is called and the system dumps core if an asynchronous audit event occurs
+that cannot be delivered because the audit queue has reached the high-water
+mark or because there are insufficient resources to construct an audit record.
+By default, records are dropped and a count is kept of the number of dropped
+records.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBarge\fR\fR
+.ad
+.RS 16n
+Include the \fBexecv\fR(2) system call environment arguments to the audit
+record. This information is not included by default.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBargv\fR\fR
+.ad
+.RS 16n
+Include the \fBexecv\fR(2) system call parameter arguments to the audit record.
+This information is not included by default.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcnt\fR\fR
+.ad
+.RS 16n
+Do not suspend processes when audit resources are exhausted. Instead, drop
+audit records and keep a count of the number of records dropped. By default,
+process are suspended until audit resources become available.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBgroup\fR\fR
+.ad
+.RS 16n
+Include the supplementary group token in audit records. By default, the group
+token is not included.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnone\fR\fR
+.ad
+.RS 16n
+Include no policies. If used in other than the global zone, the \fBahlt\fR and
+\fBperzone\fR policies are not changed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpath\fR\fR
+.ad
+.RS 16n
+Add secondary path tokens to audit record. These are typically the pathnames of
+dynamically linked shared libraries or command interpreters for shell scripts.
+By default, they are not included.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBperzone\fR\fR
+.ad
+.RS 16n
+Maintain separate configuration, queues, and logs for each zone and execute a
+separate version of \fBauditd\fR(8) for each zone.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpublic\fR\fR
+.ad
+.RS 16n
+Audit public files. By default, read-type operations are not audited for
+certain files which meet \fBpublic\fR characteristics: owned by root, readable
+by all, and not writable by all.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBtrail\fR\fR
+.ad
+.RS 16n
+Include the trailer token in every audit record. By default, the trailer token
+is not included.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBseq\fR\fR
+.ad
+.RS 16n
+Include the sequence token as part of every audit record. By default, the
+sequence token is not included. The sequence token attaches a sequence number
+to every audit record.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBwindata_down\fR\fR
+.ad
+.RS 16n
+Include in an audit record any downgraded data moved between windows. This
+policy is available only if the system is configured with Trusted Extensions.
+By default, this information is not included.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBwindata_up\fR\fR
+.ad
+.RS 16n
+Include in an audit record any upgraded data moved between windows. This policy
+is available only if the system is configured with Trusted Extensions. By
+default, this information is not included.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBzonename\fR\fR
+.ad
+.RS 16n
+Include the \fBzonename\fR token as part of every audit record. By default, the
+\fBzonename\fR token is not included. The \fBzonename\fR token gives the name
+of the zone from which the audit record was generated.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-setqbufsz\fR \fIbuffer_size\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set the audit queue write buffer size (bytes).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-setqctrl\fR \fIhiwater\fR \fIlowater\fR \fIbufsz\fR \fIinterval\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set the audit queue write buffer size (bytes), hiwater audit record count,
+lowater audit record count, and wakeup interval (ticks). Valid within a local
+zone only if \fBperzone\fR is set.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-setqdelay\fR \fIinterval\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set the audit queue wakeup interval (ticks). This determines the interval at
+which the kernel pokes the audit queue, to write audit records to the audit
+trail. Valid within a local zone only if \fBperzone\fR is set.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-setqhiwater\fR \fIhiwater\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set the number of undelivered audit records in the audit queue at which audit
+record generation blocks. Valid within a local zone only if \fBperzone\fR is
+set.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-setqlowater\fR \fIlowater\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set the number of undelivered audit records in the audit queue at which blocked
+auditing processes unblock. Valid within a local zone only if \fBperzone\fR is
+set.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-setsmask\fR \fIasid flags\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set the preselection mask of all processes with the specified audit session ID.
+Valid within a local zone only if \fBperzone\fR is set.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-setstat\fR\fR
+.ad
+.sp .6
+.RS 4n
+Reset audit statistics counters. Valid within a local zone only if
+\fBperzone\fR is set.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-setumask\fR \fIauid flags\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set the preselection mask of all processes with the specified audit ID. Valid
+within a local zone only if \fBperzone\fR is set.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRUsing \fBauditconfig\fR
+.sp
+.LP
+The following is an example of an \fBauditconfig\fR program:
+
+.sp
+.in +2
+.nf
+#
+# map kernel audit event number 10 to the "fr" audit class
+#
+% auditconfig -setclass 10 fr
+
+#
+# turn on inclusion of exec arguments in exec audit records
+#
+% auditconfig -setpolicy +argv
+.fi
+.in -2
+.sp
+
+.SH EXIT STATUS
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 5n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB1\fR\fR
+.ad
+.RS 5n
+An error occurred.
+.RE
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/etc/security/audit_event\fR\fR
+.ad
+.RS 29n
+Stores event definitions used in the audit system.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/security/audit_class\fR\fR
+.ad
+.RS 29n
+Stores class definitions used in the audit system.
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Committed
+.TE
+
+.SH SEE ALSO
+.LP
+.BR auditon (2),
+.BR execv (2),
+.BR audit_class (5),
+.BR audit_event (5),
+.BR attributes (7),
+.BR audit_binfile (7),
+.BR audit_remote (7),
+.BR audit_syslog (7),
+.BR audit (8),
+.BR auditd (8),
+.BR auditstat (8),
+.BR praudit (8)
+.SH NOTES
+.LP
+If the \fBaudit_remote\fR or \fBaudit_syslog\fR plugins are active, the
+behavior of the system with respect to the \fB-setpolicy\fR \fB+cnt\fR and the
+\fB-setqhiwater\fR options is modified slightly. If \fB-setpolicy\fR \fB+cnt\fR
+is set, data will continue to be sent to the selected plugin, even though
+output to the binary audit log is stopped, pending the freeing of disk space.
+If \fB-setpolicy\fR \fB-cnt\fR is used, the blocking behavior is as described
+under OPTIONS, above. The value set for the queue high water mark is used
+within \fBauditd\fR as the default value for its queue limits unless overridden
+by means of the \fBqsize\fR attribute.
+.sp
+.LP
+The \fBauditconfig\fR options that modify or display process-based information
+are not affected by the \fBperzone\fR policy. Those that modify system audit
+data such as the terminal id and audit queue parameters are valid only in the
+global zone, unless the \fBperzone\fR policy is set. The display of a system
+audit reflects the local zone if \fBperzone\fR is set. Otherwise, it reflects
+the settings of the global zone.
+.sp
+.LP
+The \fB-setcond\fR option has been removed. Use \fBaudit\fR(8) to enable or
+disable auditing.
+.sp
+.LP
+The \fB-getfsize\fR and \fB-setfsize\fR options have been removed. Use
+\fBaudit_binfile\fR(7) \fBp_fsize\fR to set the audit file size.
diff --git a/usr/src/man/man8/auditd.8 b/usr/src/man/man8/auditd.8
new file mode 100644
index 0000000000..55146f6af2
--- /dev/null
+++ b/usr/src/man/man8/auditd.8
@@ -0,0 +1,191 @@
+'\" te
+.\" Copyright (c) 2017 Peter Tribble
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH AUDITD 8 "Mar 6, 2017"
+.SH NAME
+auditd \- audit daemon
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/auditd\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+The audit daemon, \fBauditd\fR, controls the generation and location of audit
+trail files and the generation of syslog messages based on its configuration,
+stored in \fBsmf\fR(7) and managed using the \fBauditconfig\fR(8) command.
+.sp
+.LP
+\fBaudit\fR(8) is used to control \fBauditd\fR. It can cause \fBauditd\fR to:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+close the current audit file and open a new one;
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+close the current audit file, reread its configuration and
+open a new audit file;
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+close the audit trail and terminate auditing.
+.RE
+.SS "Auditing Conditions"
+.LP
+The audit daemon invokes the program \fBaudit_warn\fR(8) under the following
+conditions with the indicated options:
+.sp
+.ne 2
+.na
+\fB\fBaudit_warn soft\fR \fIpathname\fR\fR
+.ad
+.sp .6
+.RS 4n
+The file system upon which \fIpathname\fR resides has exceeded the minimum free
+space limit defined by the \fBp_minfree\fR attribute of the \fBaudit_binfile\fR
+plugin. A new audit trail has been opened on another file system.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBaudit_warn allsoft\fR\fR
+.ad
+.sp .6
+.RS 4n
+All available file systems have been filled beyond the minimum free space
+limit. A new audit trail has been opened anyway.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBaudit_warn hard\fR \fIpathname\fR\fR
+.ad
+.sp .6
+.RS 4n
+The file system upon which \fIpathname\fR resides has filled or for some reason
+become unavailable. A new audit trail has been opened on another file system.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBaudit_warn allhard\fR \fIcount\fR\fR
+.ad
+.sp .6
+.RS 4n
+All available file systems have been filled or for some reason become
+unavailable. The audit daemon will repeat this call to \fBaudit_warn\fR at
+intervals of at least twenty seconds until space becomes available. \fIcount\fR
+is the number of times that \fBaudit_warn\fR has been called since the problem
+arose.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBaudit_warn tmpfile\fR\fR
+.ad
+.sp .6
+.RS 4n
+There was a problem creating a symlink from \fB/var/run/.audit.log\fR to the
+current audit log file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBaudit_warn nostart\fR\fR
+.ad
+.sp .6
+.RS 4n
+There was an internal error starting auditing.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBaudit_warn auditoff\fR\fR
+.ad
+.sp .6
+.RS 4n
+The internal system audit condition has been changed to not be
+\fBAUC_AUDITING\fR by someone other than the audit daemon. This causes the
+audit daemon to exit.
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Committed
+.TE
+
+.SH SEE ALSO
+.LP
+.BR auditon (2),
+.BR audit.log (5),
+.BR attributes (7),
+.BR audit_binfile (7),
+.BR audit (8),
+.BR audit_warn (8),
+.BR auditconfig (8),
+.BR praudit (8)
+.SH NOTES
+.LP
+If the audit policy \fBperzone\fR is set, \fBauditd\fR runs in each zone,
+starting automatically when the local zone boots. If a zone is running when the
+\fBperzone\fR policy is set, auditing must be started manually in local zones.
+It is not necessary to reboot the system or the local zone to start auditing in
+a local zone. \fBauditd\fR can be started with "\fB/usr/sbin/audit\fR \fB-s\fR"
+and will start automatically with future boots of the zone.
+.sp
+.LP
+When \fBauditd\fR runs in a local zone, the configuration is taken from the
+local zone's \fB/etc/security\fR directory's files:
+\fBaudit_class\fR, and \fBaudit_event\fR.
+.sp
+.LP
+Configuration changes do not affect audit sessions that are currently running,
+as the changes do not modify a process's preselection mask. To change the
+preselection mask on a running process, use the \fB-setpmask\fR option of the
+\fBauditconfig\fR command (see \fBauditconfig\fR(8)). If the user logs out and
+logs back in, the new configuration changes will be reflected in the next audit
+session.
+.sp
+.LP
+The \fBauditd\fR service is managed by the service management facility,
+\fBsmf\fR(7), under the service identifier:
+.sp
+.in +2
+.nf
+svc:/system/auditd
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The service's status can be queried using the \fBsvcs\fR(1) command. While
+administrative actions on this service, such as enabling, disabling, or
+requesting restart, can be performed using \fBsvcadm\fR(8), the \fBaudit\fR(8)
+command is the preferred administrative interface.
diff --git a/usr/src/man/man8/auditrecord.8 b/usr/src/man/man8/auditrecord.8
new file mode 100644
index 0000000000..69e013dca5
--- /dev/null
+++ b/usr/src/man/man8/auditrecord.8
@@ -0,0 +1,334 @@
+'\" te
+.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH AUDITRECORD 8 "Mar 6, 2017"
+.SH NAME
+auditrecord \- display audit record formats
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/auditrecord\fR [\fB-d\fR] [ [\fB-a\fR] | [\fB-e\fR \fIstring\fR] | [\fB-c\fR \fIclass\fR] |
+ [\fB-i\fR \fIid\fR] | [\fB-p\fR \fIprogramname\fR] | [\fB-s\fR \fIsystemcall\fR] | [\fB-h\fR]]
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBauditrecord\fR utility displays the event ID, audit class and selection
+mask, and record format for audit record event types defined in
+\fBaudit_event\fR(5). You can use \fBauditrecord\fR to generate a list of all
+audit record formats, or to select audit record formats based on event class,
+event name, generating program name, system call name, or event ID.
+.sp
+.LP
+There are two output formats. The default format is intended for display in a
+terminal window; the optional HTML format is intended for viewing with a web
+browser.
+.sp
+.LP
+Tokens contained in square brackets ( \fB[ ]\fR ) are optional and might not be
+present in every record.
+.SH OPTIONS
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-a\fR\fR
+.ad
+.sp .6
+.RS 4n
+List all audit records.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-c\fR \fIclass\fR\fR
+.ad
+.sp .6
+.RS 4n
+List all audit records selected by \fIclass\fR. \fIclass\fR is one of the
+two-character class codes from the file \fB/etc/security/audit_class\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-d\fR\fR
+.ad
+.sp .6
+.RS 4n
+Debug mode. Display number of audit records that are defined in
+\fBaudit_event\fR, the number of classes defined in \fBaudit_class\fR, any
+mismatches between the two files, and report which defined events do not have
+format information available to \fBauditrecord\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-e\fR \fIstring\fR\fR
+.ad
+.sp .6
+.RS 4n
+List all audit records for which the event ID label contains the string
+\fIstring\fR. The match is case insensitive.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-h\fR\fR
+.ad
+.sp .6
+.RS 4n
+Generate the output in HTML format.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-i\fR \fIid\fR\fR
+.ad
+.sp .6
+.RS 4n
+List the audit records having the numeric event ID \fIid\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR \fIprogramname\fR\fR
+.ad
+.sp .6
+.RS 4n
+List all audit records generated by the program \fIprogramname\fR, for example,
+audit records generated by a user-space program.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR \fIsystemcall\fR\fR
+.ad
+.sp .6
+.RS 4n
+List all audit records generated by the system call \fIsystemcall\fR, for
+example, audit records generated by a system call.
+.RE
+
+.sp
+.LP
+The \fB-p\fR and \fB-s\fR options are different names for the same thing and
+are mutually exclusive. The \fB-a\fR option is ignored if any of \fB-c\fR,
+\fB-e\fR, \fB-i\fR, \fB-p\fR, or \fB-s\fR are given. Combinations of \fB-c\fR,
+\fB-e\fR, \fB-i\fR, and either \fB-p\fR or \fB-s\fR are ANDed together.
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRDisplaying an Audit Record with a Specified Event ID
+.sp
+.LP
+The following example shows how to display the contents of a specified audit
+record.
+
+.sp
+.in +2
+.nf
+% auditrecord -i 6152
+ terminal login
+ program /usr/sbin/login see login(1)
+ /usr/dt/bin/dtlogin See dtlogin
+ event ID 6152 AUE_login
+ class lo (0x00001000)
+ header
+ subject
+ [text] error message
+ return
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRDisplaying an Audit Record with an Event ID Label that Contains
+a Specified String
+.sp
+.LP
+The following example shows how to display the contents of a audit record with
+an event ID label that contains the string \fBlogin\fR.
+
+.sp
+.in +2
+.nf
+# auditrecord -e login
+terminal login
+ program /usr/sbin/login see login(1)
+ /usr/dt/bin/dtlogin See dtlogin
+ event ID 6152 AUE_login
+ class lo (0x00001000)
+ header
+ subject
+ [text] error message
+ return
+
+rlogin
+ program /usr/sbin/login see login(1) - rlogin
+ event ID 6155 AUE_rlogin
+ class lo (0x00001000)
+ header
+ subject
+ [text] error message
+ return
+.fi
+.in -2
+.sp
+
+.SH EXIT STATUS
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.sp .6
+.RS 4n
+Successful operation
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnon-zero\fR\fR
+.ad
+.sp .6
+.RS 4n
+Error
+.RE
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/etc/security/audit_class\fR\fR
+.ad
+.sp .6
+.RS 4n
+Provides the list of valid classes and the associated audit mask.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/security/audit_event\fR\fR
+.ad
+.sp .6
+.RS 4n
+Provides the numeric event ID, the literal event name, and the name of the
+associated system call or program.
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+CSI Enabled
+_
+Interface Stability Obsolete Uncommitted
+.TE
+
+.SH SEE ALSO
+.LP
+.BR audit.log (5),
+.BR audit_class (5),
+.BR audit_event (5),
+.BR attributes (7),
+.BR auditconfig (8),
+.BR praudit (8)
+.SH DIAGNOSTICS
+.LP
+If unable to read either of its input files or to write its output file,
+\fBauditrecord\fR shows the name of the file on which it failed and exits with
+a non-zero return.
+.sp
+.LP
+If no options are provided, if an invalid option is provided, or if both
+\fB-s\fR and \fB-p\fR are provided, an error message is displayed and
+\fBauditrecord\fR displays a usage message then exits with a non-zero return.
+.SH NOTES
+.LP
+This command is Obsolete and may be removed and replaced with equivalent
+functionality in the future. This command was formerly known as \fBbsmrecord\fR.
+.sp
+.LP
+If \fB/etc/security/audit_event\fR has been modified to add user-defined audit
+events, \fBauditrecord\fR displays the record format as \fBundefined\fR.
+.sp
+.LP
+The audit records displayed by \fBauditrecord\fR are the core of the record that
+can be produced. Various audit policies and optional tokens, such as those
+shown below, might also be present.
+.sp
+.LP
+The following is a list of \fBpraudit\fR(8) token names with their
+descriptions.
+.sp
+.ne 2
+.na
+\fB\fBgroup\fR\fR
+.ad
+.sp .6
+.RS 4n
+Present if the \fBgroup\fR audit policy is set.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsensitivity label\fR\fR
+.ad
+.sp .6
+.RS 4n
+Present when Trusted Extensions is enabled and represents the label of the
+subject or object with which it is associated. The \fBmandatory_label\fR token
+is noted in the basic audit record where a label is explicitly part of the
+record.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsequence\fR\fR
+.ad
+.sp .6
+.RS 4n
+Present when the \fBseq\fR audit policy is set.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBtrailer\fR\fR
+.ad
+.sp .6
+.RS 4n
+Present when the \fBtrail\fR audit policy is set.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBzone\fR\fR
+.ad
+.sp .6
+.RS 4n
+The name of the zone generating the record when the \fBzonename\fR audit policy
+is set. The \fBzonename\fR token is noted in the basic audit record where a
+zone name is explicitly part of the record.
+.RE
+
diff --git a/usr/src/man/man8/auditreduce.8 b/usr/src/man/man8/auditreduce.8
new file mode 100644
index 0000000000..5eec9312db
--- /dev/null
+++ b/usr/src/man/man8/auditreduce.8
@@ -0,0 +1,916 @@
+'\" te
+.\" Copyright (c) 2006 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH AUDITREDUCE 8 "Mar 6, 2017"
+.SH NAME
+auditreduce \- merge and select audit records from audit trail files
+.SH SYNOPSIS
+.LP
+.nf
+\fBauditreduce\fR [\fIoptions\fR] [\fIaudit-trail-file\fR]...
+.fi
+
+.SH DESCRIPTION
+.LP
+\fBauditreduce\fR allows you to select or merge records from audit trail files.
+Audit files can be from one or more machines.
+.sp
+.LP
+The merge function merges together audit records from one or more input audit
+trail files into a single output file. The records in an audit trail file are
+assumed to be sorted in chronological order (oldest first) and this order is
+maintained by \fBauditreduce\fR in the output file.
+.sp
+.LP
+Unless instructed otherwise, \fBauditreduce\fR will merge the entire audit
+trail, which consists of all the audit trail files in the directory structure
+\fIaudit_root_dir\fR/*/files. Unless specified with the -\fBR\fR or -\fBS\fR
+option, \fIaudit_root_dir\fR defaults to \fB/etc/security/audit\fR. By using
+the file selection options it is possible to select some subset of these files,
+or files from another directory, or files named explicitly on the command line.
+.sp
+.LP
+The select function allows audit records to be selected on the basis of
+numerous criteria relating to the record's content (see \fBaudit.log\fR(5) for
+details of record content). A record must meet all of the
+\fIrecord-selection-option\fR criteria to be selected.
+.SS "Audit Trail Filename Format"
+.LP
+Any audit trail file not named on the command line must conform to the audit
+trail filename format. Files produced by the audit system already have this
+format. Output file names produced by \fBauditreduce\fR are in this format. It
+is:
+.sp
+.in +2
+.nf
+\fIstart-time\fR\fB\&.\fR\fI\|end-time\fR\fB\&.\fR\fI\|suffix\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+where \fIstart-time\fR is the 14-character timestamp of when the file was
+opened, \fIend-time\fR is the 14-character timestamp of when the file was
+closed, and \fIsuffix\fR is the name of the machine which generated the audit
+trail file, or some other meaningful suffix (for example, \fBall\fR, if the
+file contains a combined group of records from many machines). The
+\fIend-time\fR can be the literal string \fBnot_terminated\fR, to indicate that
+the file is still being written to by the audit system. Timestamps are of the
+form \fIyyyymmddhhmmss\fR (year, month, day, hour, minute, second). The
+timestamps are in Greenwich Mean Time (GMT).
+.SH OPTIONS
+.SS "File Selection Options"
+.LP
+The file selection options indicate which files are to be processed and certain
+types of special treatment.
+.sp
+.ne 2
+.na
+\fB\fB-A\fR\fR
+.ad
+.sp .6
+.RS 4n
+All of the records from the input files will be selected regardless of their
+timestamp. This option effectively disables the \fB-a\fR, \fB-b\fR, and
+\fB-d\fR options. This is useful in preventing the loss of records if the
+\fB-D\fR option is used to delete the input files after they are processed.
+Note, however, that if a record is \fInot\fR selected due to another option,
+then \fB-A\fR will not override that.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-C\fR\fR
+.ad
+.sp .6
+.RS 4n
+Only process complete files. Files whose filename \fIend-time\fR timestamp is
+\fBnot_terminated\fR are not processed (such a file is currently being written
+to by the audit system). This is useful in preventing the loss of records if
+\fB-D\fR is used to delete the input files after they are processed. It does
+not apply to files specified on the command line.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-D\fR \fIsuffix\fR\fR
+.ad
+.sp .6
+.RS 4n
+Delete input files after they are read if the entire run is successful. If
+\fBauditreduce\fR detects an error while reading a file, then that file is not
+deleted. If \fB-D\fR is specified, \fB-A\fR, \fB-C\fR and \fB-O\fR are also
+implied. \fIsuffix\fR is given to the \fB-O\fR option. This helps prevent the
+loss of audit records by ensuring that all of the records are written, only
+complete files are processed, and the records are written to a file before
+being deleted. Note that if both \fB-D\fR and \fB-O\fR are specified in the
+command line, the order of specification is significant. The \fIsuffix\fR
+associated with the latter specification is in effect.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-M\fR \fImachine\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allows selection of records from files with \fImachine\fR as the filename
+suffix. If \fB-M\fR is not specified, all files are processed regardless of
+suffix. \fB-M\fR can also be used to allow selection of records from files that
+contain combined records from many machines and have a common suffix (such as
+\fBall\fR).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-N\fR\fR
+.ad
+.sp .6
+.RS 4n
+Select objects in \fBnew mode\fR.This flag is off by default, thus retaining
+backward compatibility. In the existing, \fBold mode\fR, specifying the
+\fB-e\fR, \fB-f\fR, \fB-g\fR, \fB-r\fR, or \fB-u\fR flags would select not only
+actions taken with those \fBID\fRs, but also certain objects owned by those
+\fBID\fRs. When running in \fBnew mode\fR, only actions are selected. In order
+to select objects, the \fB-o\fR option must be used.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-O\fR \fIsuffix\fR\fR
+.ad
+.sp .6
+.RS 4n
+Direct output stream to a file in the current \fBaudit_root_dir\fR with the
+indicated suffix. \fIsuffix\fR can alternatively contain a full pathname, in
+which case the last component is taken as the suffix, ahead of which the
+timestamps will be placed, ahead of which the remainder of the pathname will be
+placed. If the \fB-O\fR option is not specified, the output is sent to the
+standard output. When \fBauditreduce\fR places timestamps in the filename, it
+uses the times of the first and last records in the merge as the
+\fIstart-time\fR and \fIend-time\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-Q\fR\fR
+.ad
+.sp .6
+.RS 4n
+Quiet. Suppress notification about errors with input files.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-R\fR \fIpathname\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify the pathname of an alternate audit root directory \fIaudit_root_dir\fR
+to be \fIpathname\fR. Therefore, rather than using
+\fB/etc/security/audit\fR/*/files by default, \fIpathname\fR/*/files will be
+examined instead.
+.LP
+Note -
+.sp
+.RS 2
+The root file system of any non-global zones must not be referenced with the
+\fB-R\fR option. Doing so might damage the global zone's file system, might
+compromise the security of the global zone, and might damage the non-global
+zone's file system. See \fBzones\fR(7).
+.RE
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-S\fR \fIserver\fR\fR
+.ad
+.sp .6
+.RS 4n
+This option causes \fBauditreduce\fR to read audit trail files from a specific
+location (server directory). \fIserver\fR is normally interpreted as the name
+of a subdirectory of the audit root, therefore \fBauditreduce\fR will look in
+\fIaudit_root_dir\fR/\fIserver\fR/files for the audit trail files. But if
+\fIserver\fR contains any `\fB/\fR' characters, it is the name of a specific
+directory not necessarily contained in the audit root. In this case,
+\fIserver\fR/files will be consulted. This option allows archived files to be
+manipulated easily, without requiring that they be physically located in a
+directory structure like that of \fB/etc/security/audit\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-V\fR\fR
+.ad
+.sp .6
+.RS 4n
+Verbose. Display the name of each file as it is opened, and how many records
+total were written to the output stream.
+.RE
+
+.SS "Record Selection Options"
+.LP
+The record selection options listed below are used to indicate which records
+are written to the output file produced by \fBauditreduce\fR.
+.sp
+.LP
+Multiple arguments of the same type are not permitted.
+.sp
+.ne 2
+.na
+\fB\fB-a\fR \fIdate-time\fR\fR
+.ad
+.sp .6
+.RS 4n
+Select records that occurred at or after \fIdate-time\fR. The \fIdate-time\fR
+argument is described under \fBOption Arguments\fR, below. \fIdate-time\fR is
+in local time. The \fB-a\fR and \fB-b\fR options can be used together to form a
+range.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-b\fR \fIdate-time\fR\fR
+.ad
+.sp .6
+.RS 4n
+Select records that occurred before \fIdate-time\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-c\fR \fIaudit-classes\fR\fR
+.ad
+.sp .6
+.RS 4n
+Select records by audit class. Records with events that are mapped to the audit
+classes specified by \fIaudit-classes\fR are selected. Audit class names are
+defined in \fBaudit_class\fR(5). Using the \fBaudit\fR \fIflags,\fR one can
+select records based upon success and failure criteria.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-d\fR \fIdate-time\fR\fR
+.ad
+.sp .6
+.RS 4n
+Select records that occurred on a specific day (a 24-hour period beginning at
+00:00:00 of the day specified and ending at 23:59:59). The day specified is in
+local time. The time portion of the argument, if supplied, is ignored. Any
+records with timestamps during that day are selected. If any hours, minutes, or
+seconds are given in \fItime,\fR they are ignored. \fB-d\fR can not be used
+with \fB-a\fR or \fB\fR\fB-b\fR\fB\&.\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-e\fR \fIeffective-user\fR\fR
+.ad
+.sp .6
+.RS 4n
+Select records with the specified \fIeffective-user.\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR \fIeffective-group\fR\fR
+.ad
+.sp .6
+.RS 4n
+Select records with the specified \fIeffective-group.\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-g\fR \fIreal-group\fR\fR
+.ad
+.sp .6
+.RS 4n
+Select records with the specified \fIreal-group.\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-j\fR \fIsubject-ID\fR\fR
+.ad
+.sp .6
+.RS 4n
+Select records with the specified \fIsubject-ID\fR where \fIsubject-ID\fR is a
+process ID.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR \fIlabel\fR\fR
+.ad
+.sp .6
+.RS 4n
+Select records with the specified label (or label range), as explained under
+"Option Arguments," below. This option is available only if the system is
+configured with Trusted Extensions.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-m\fR \fIevent\fR\fR
+.ad
+.sp .6
+.RS 4n
+Select records with the indicated \fIevent\fR. The \fIevent\fR is the literal
+string or the \fIevent\fR number.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-o\fR \fIobject_type=objectID_value\fR\fR
+.ad
+.sp .6
+.RS 4n
+Select records by object type. A match occurs when the record contains the
+information describing the specified \fIobject_type\fR and the object ID equals
+the value specified by \fIobjectID_value.\fR The allowable object types and
+values are as follows:
+.sp
+.ne 2
+.na
+\fBfile=\fIpathname\fR\fR
+.ad
+.sp .6
+.RS 4n
+Select records containing file system objects with the specified pathname,
+where pathname is a comma separated list of regular expressions. If a regular
+expression is preceded by a tilde (\fB~\fR), files matching the expression are
+excluded from the output. For example, the option
+\fBfile=~/usr/openwin,/usr,/etc\fR would select all files in \fB/usr\fR or
+\fB/etc\fR except those in \fB/usr/openwin\fR. The order of the regular
+expressions is important because auditreduce processes them from left to right,
+and stops when a file is known to be either selected or excluded. Thus the
+option \fBfile=\fR \fB/usr\fR, \fB/etc\fR, \fB~/usr/openwin\fR would select all
+files in \fB/usr\fR and all files in \fB/etc\fR. Files in \fB/usr/openwin\fR
+are not excluded because the regular expression \fB/usr\fR is matched first.
+Care should be given in surrounding the \fIpathname\fR with quotes so as to
+prevent the shell from expanding any tildes.
+.RE
+
+.sp
+.ne 2
+.na
+\fBfilegroup\fI=group\fR\fR
+.ad
+.sp .6
+.RS 4n
+Select records containing file system objects with \fIgroup\fR as the owning
+group.
+.RE
+
+.sp
+.ne 2
+.na
+\fBfileowner=\fIuser\fR\fR
+.ad
+.sp .6
+.RS 4n
+Select records containing file system objects with \fIuser\fR as the owning
+user.
+.RE
+
+.sp
+.ne 2
+.na
+\fBmsgqid=\fIID\fR\fR
+.ad
+.sp .6
+.RS 4n
+Select records containing message queue objects with the specified \fIID\fR
+where \fIID\fR is a message queue \fBID\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBmsgqgroup=\fIgroup\fR\fR
+.ad
+.sp .6
+.RS 4n
+Select records containing message queue objects with \fIgroup\fR as the owning
+or creating group.
+.RE
+
+.sp
+.ne 2
+.na
+\fBmsgqowner=\fIuser\fR\fR
+.ad
+.sp .6
+.RS 4n
+Select records containing message queue objects with \fIuser\fR as the owning
+or creating user.
+.RE
+
+.sp
+.ne 2
+.na
+\fBpid=\fIID\fR\fR
+.ad
+.sp .6
+.RS 4n
+Select records containing process objects with the specified \fIID\fR where
+\fIID\fR is a process \fBID\fR. Process are objects when they are receivers of
+signals.
+.RE
+
+.sp
+.ne 2
+.na
+\fBprocgroup=\fIgroup\fR\fR
+.ad
+.sp .6
+.RS 4n
+Select records containing process objects with \fIgroup\fR as the real or
+effective group.
+.RE
+
+.sp
+.ne 2
+.na
+\fBprocowner=\fIuser\fR\fR
+.ad
+.sp .6
+.RS 4n
+Select records containing process objects with \fIuser\fR as the real or
+effective user.
+.RE
+
+.sp
+.ne 2
+.na
+\fBsemid=\fIID\fR\fR
+.ad
+.sp .6
+.RS 4n
+Select records containing semaphore objects with the specified \fIID\fR where
+\fIID\fR is a semaphore \fBID\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBsemgroup=\fIgroup\fR\fR
+.ad
+.sp .6
+.RS 4n
+Select records containing semaphore objects with \fIgroup\fR as the owning or
+creating group.
+.RE
+
+.sp
+.ne 2
+.na
+\fBsemowner=\fIuser\fR\fR
+.ad
+.sp .6
+.RS 4n
+Select records containing semaphore objects with \fIuser\fR as the owning or
+creating user.
+.RE
+
+.sp
+.ne 2
+.na
+\fBshmid=\fIID\fR\fR
+.ad
+.sp .6
+.RS 4n
+Select records containing shared memory objects with the specified \fIID\fR
+where \fIID\fR is a shared memory \fBID\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBshmgroup=\fIgroup\fR\fR
+.ad
+.sp .6
+.RS 4n
+Select records containing shared memory objects with \fIgroup\fR as the owning
+or creating group.
+.RE
+
+.sp
+.ne 2
+.na
+\fBshmowner=\fIuser\fR\fR
+.ad
+.sp .6
+.RS 4n
+Select records containing shared memory objects with \fIuser\fR as the owning
+or creating user.
+.RE
+
+.sp
+.ne 2
+.na
+\fBsock=\fIport_number|machine\fR\fR
+.ad
+.sp .6
+.RS 4n
+Select records containing socket objects with the specified \fIport_number\fR
+or the specified \fImachine\fR where \fImachine\fR is a machine name as defined
+in \fBhosts\fR(5).
+.RE
+
+.sp
+.ne 2
+.na
+\fBfmri=\fIservice instance\fR\fR
+.ad
+.sp .6
+.RS 4n
+Select records containing fault management resource identifier (FMRI) objects
+with the specified \fIservice instance\fR. See \fBsmf\fR(7).
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-r\fR \fIreal-user\fR\fR
+.ad
+.sp .6
+.RS 4n
+Select records with the specified \fIreal-user\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR \fIsession-id\fR\fR
+.ad
+.sp .6
+.RS 4n
+Select audit records with the specified \fIsession-id\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-u\fR \fIaudit-user\fR\fR
+.ad
+.sp .6
+.RS 4n
+Select records with the specified \fIaudit-user\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-z\fR \fIzone-name\fR\fR
+.ad
+.sp .6
+.RS 4n
+Select records from the specified zone name. The zone name selection is
+case-sensitive.
+.RE
+
+.sp
+.LP
+When one or more \fIfilename\fR arguments appear on the command line, only the
+named files are processed. Files specified in this way need not conform to the
+audit trail filename format. However, \fB-M\fR, \fB-S\fR, and \fB-R\fR must not
+be used when processing named files. If the \fIfilename\fR is ``\(mi'' then the
+input is taken from the standard input.
+.SS "Option Arguments"
+.ne 2
+.na
+\fB\fIaudit-trail-file\fR\fR
+.ad
+.sp .6
+.RS 4n
+An audit trail file as defined in \fBaudit.log\fR(5). An audit trail file not
+named on the command line must conform to the audit trail file name format.
+Audit trail files produced as output of \fBauditreduce\fR are in this format as
+well. The format is:
+.sp
+\fIstart-time . \|end-time . \|suffix\fR
+.sp
+\fIstart-time\fR is the 14 character time stamp denoting when the file was
+opened. \fIend-time\fR is the 14 character time stamp denoting when the file
+was closed. \fIend-time\fR can also be the literal string \fBnot_terminated\fR,
+indicating the file is still be written to by the audit daemon or the file was
+not closed properly (a system crash or abrupt halt occurred). \fIsuffix\fR is
+the name of the machine that generated the audit trail file (or some other
+meaningful suffix; for example, \fBall\fR would be a good suffix if the audit
+trail file contains a combined group of records from many machines).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIdate-time\fR\fR
+.ad
+.sp .6
+.RS 4n
+The \fIdate-time\fR argument to \fB-a\fR, \fB-b\fR, and \fB-d\fR can be of two
+forms: An absolute \fIdate-time\fR takes the form:
+.sp
+\fI\fR yyyymmdd [ \fIhh\fR [ \fImm\fR [ \fIss\fR ]]]
+.sp
+where \fIyyyy\fR specifies a year (with 1970 as the earliest value), \fImm\fR
+is the month (01-12), \fBdd\fR is the day (01-31), \fIhh\fR is the hour
+(00-23), \fImm\fR is the minute (00-59), and \fIss\fR is the second (00-59).
+The default is 00 for \fIhh\fR, \fImm\fR and \fIss\fR.
+.sp
+An offset can be specified as: \fB+\fR\fIn\fR \fBd\fR|\fBh\fR|\fBm\fR| \fBs\fR
+where \fIn\fR is a number of units, and the tags \fBd\fR, \fBh\fR, \fBm\fR, and
+\fBs\fR stand for days, hours, minutes and seconds, respectively. An offset is
+relative to the starting time. Thus, this form can only be used with the
+\fB-b\fR option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIevent\fR\fR
+.ad
+.sp .6
+.RS 4n
+The literal string or ordinal event number as found in \fBaudit_event\fR(5). If
+\fIevent\fR is not found in the \fBaudit_event\fR file it is considered
+invalid.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIgroup\fR\fR
+.ad
+.sp .6
+.RS 4n
+The literal string or ordinal group ID number as found in \fBgroup\fR(5). If
+\fIgroup\fR is not found in the \fBgroup\fR file it is considered invalid.
+\fIgroup\fR can be negative.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIlabel\fR\fR
+.ad
+.sp .6
+.RS 4n
+The literal string representation of a MAC label or a range of two valid MAC
+labels. To specify a range, use \fBx;y\fR where \fBx\fR and \fBy\fR are valid
+MAC labels. Only those records that are fully bounded by \fBx\fR and \fBy\fR
+will be selected. If \fBx\fR or \fBy\fR is omitted, the default uses
+\fBADMIN_LOW\fR or \fBADMIN_HIGH\fR respectively. Notice that quotes must be
+used when specifying a range.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIpathname\fR\fR
+.ad
+.sp .6
+.RS 4n
+A regular expression describing a pathname.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIuser\fR\fR
+.ad
+.sp .6
+.RS 4n
+The literal username or ordinal user ID number as found in \fBpasswd\fR(5). If
+the username is not found in the \fBpasswd\fR file it is considered invalid.
+\fIuser\fR can be negative.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRThe auditreduce command
+.sp
+.LP
+\fBpraudit\fR(8) is available to display audit records in a human-readable
+form.
+
+.sp
+.LP
+This will display the entire audit trail in a human-readable form:
+
+.sp
+.in +2
+.nf
+% auditreduce | praudit
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+If all the audit trail files are being combined into one large file, then
+deleting the original files could be desirable to prevent the records from
+appearing twice:
+
+.sp
+.in +2
+.nf
+% auditreduce -V -D /etc/security/audit/combined/all
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+This displays what user \fBmilner\fR did on April 13, 1988. The output is
+displayed in a human-readable form to the standard output:
+
+.sp
+.in +2
+.nf
+% auditreduce -d 19880413 -u milner | praudit
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The above example might produce a large volume of data if \fBmilner\fR has been
+busy. Perhaps looking at only login and logout times would be simpler. The
+\fB-c\fR option will select records from a specified class:
+
+.sp
+.in +2
+.nf
+% auditreduce -d 19880413 -u milner -c lo | praudit
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+To see \fBmilner\fR's login/logout activity for April 13, 14, and 15, the
+following is used. The results are saved to a file in the current working
+directory. Notice that the name of the output file will have \fBmilnerlo\fR as
+the \fIsuffix\fR, with the appropriate timestamp prefixes. Notice also that the
+long form of the name is used for the \fB-c\fR option:
+
+.sp
+.in +2
+.nf
+% auditreduce -a 19880413 -b +3d -u milner -c login_logout -O milnerlo
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+To follow \fBmilner\fR's movement about the file system on April 13, 14, and 15
+the \fBchdir\fR record types could be viewed. Notice that in order to get the
+same time range as the above example we needed to specify the \fB-b\fR time as
+the day \fBafter\fR our range. This is because \fB19880416\fR defaults to
+midnight of that day, and records before that fall on \fB0415\fR, the end-day
+of the range.
+
+.sp
+.in +2
+.nf
+% auditreduce -a 19880413 -b 19880416 -u milner -m AUE_CHDIR | praudit
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+In this example, the audit records are being collected in summary form (the
+login/logout records only). The records are being written to a summary file in
+a different directory than the normal audit root to prevent the selected
+records from existing twice in the audit root.
+
+.sp
+.in +2
+.nf
+% auditreduce -d 19880330 -c lo -O /etc/security/audit_summary/logins
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+If activity for user \fBID\fR 9944 has been observed, but that user is not
+known to the system administrator, then the command in the following example
+searches the entire audit trail for any records generated by that user.
+\fBauditreduce\fR queries the system about the current validity of \fBID\fR
+9944 and displays a warning message if it is not currently active:
+
+.sp
+.in +2
+.nf
+% auditreduce -O /etc/security/audit_suspect/user9944 -u 9944
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+To get an audit log of only the global zone:
+
+.sp
+.in +2
+.nf
+% auditreduce -z global
+.fi
+.in -2
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/etc/security/audit/\fR\fIserver\fR\fB/files/*\fR\fR
+.ad
+.sp .6
+.RS 4n
+location of audit trails, when stored
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability See below.
+.TE
+
+.sp
+.LP
+The command invocation is Stable. The binary file format is Stable. The binary
+file contents is Unstable.
+.SH SEE ALSO
+.LP
+.BR audit.log (5),
+.BR audit_class (5),
+.BR group (5),
+.BR hosts (5),
+.BR passwd (5),
+.BR attributes (7),
+.BR smf (7),
+.BR praudit (8)
+.SH DIAGNOSTICS
+.LP
+\fBauditreduce\fR displays error messages if there are command line errors and
+then exits. If there are fatal errors during the run, \fBauditreduce\fR
+displays an explanatory message and exits. In this case, the output file might
+be in an inconsistent state (no trailer or partially written record) and
+\fBauditreduce\fR displays a warning message before exiting. Successful
+invocation returns \fB0\fR and unsuccessful invocation returns \fB1\fR.
+.sp
+.LP
+Since \fBauditreduce\fR might be processing a large number of input files, it
+is possible that the machine-wide limit on open files will be exceeded. If this
+happens, \fBauditreduce\fR displays a message to that effect, give information
+on how many file there are, and exit.
+.sp
+.LP
+If \fBauditreduce\fR displays a record's timestamp in a diagnostic message,
+that time is in local time. However, when filenames are displayed, their
+timestamps are in \fBGMT\fR.
+.SH BUGS
+.LP
+Conjunction, disjunction, negation, and grouping of record selection options
+should be allowed.
+.SH NOTES
+.LP
+The \fB-z\fR option should be used only if the audit policy \fBzonename\fR is
+set. If there is no zonename token, then no records will be selected.
diff --git a/usr/src/man/man8/auditstat.8 b/usr/src/man/man8/auditstat.8
new file mode 100644
index 0000000000..7f4a901a32
--- /dev/null
+++ b/usr/src/man/man8/auditstat.8
@@ -0,0 +1,209 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH AUDITSTAT 8 "Mar 6, 2017"
+.SH NAME
+auditstat \- display kernel audit statistics
+.SH SYNOPSIS
+.LP
+.nf
+\fBauditstat\fR [\fB-c\fR \fIcount\fR] [\fB-h\fR \fInumlines\fR] [\fB-i\fR \fIinterval\fR] [\fB-n\fR]
+ [\fB-T\fR u | d ] [\fB-v\fR]
+.fi
+
+.SH DESCRIPTION
+.LP
+\fBauditstat\fR displays kernel audit statistics. The fields displayed are as
+follows:
+.sp
+.ne 2
+.na
+\fB\fBaud\fR\fR
+.ad
+.RS 8n
+The total number of audit records processed by the \fBaudit\fR(2) system call.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBctl\fR\fR
+.ad
+.RS 8n
+This field is obsolete.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdrop\fR\fR
+.ad
+.RS 8n
+The total number of audit records that have been dropped. Records are dropped
+according to the kernel audit policy. See \fBauditon\fR(2), \fBAUDIT_CNT\fR
+policy for details.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBenq\fR\fR
+.ad
+.RS 8n
+The total number of audit records put on the kernel audit queue.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBgen\fR\fR
+.ad
+.RS 8n
+The total number of audit records that have been constructed (not the number
+written).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBkern\fR\fR
+.ad
+.RS 8n
+The total number of audit records produced by user processes (as a result of
+system calls).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmem\fR\fR
+.ad
+.RS 8n
+The total number of Kbytes of memory currently in use by the kernel audit
+module.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnona\fR\fR
+.ad
+.RS 8n
+The total number of non-attributable audit records that have been constructed.
+These are audit records that are not attributable to any particular user.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrblk\fR\fR
+.ad
+.RS 8n
+The total number of times that the audit queue has blocked waiting to process
+audit data.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBtot\fR\fR
+.ad
+.RS 8n
+The total number of Kbytes of audit data written to the audit trail.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBwblk\fR\fR
+.ad
+.RS 8n
+The total number of times that user processes blocked on the audit queue at the
+high water mark.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBwrtn\fR\fR
+.ad
+.RS 8n
+The total number of audit records written. The difference between \fBenq\fR and
+\fBwrtn\fR is the number of outstanding audit records on the audit queue that
+have not been written.
+.RE
+
+.SH OPTIONS
+.ne 2
+.na
+\fB\fB-c\fR \fIcount\fR\fR
+.ad
+.RS 15n
+Display the statistics a total of \fIcount\fR times. If \fIcount\fR is equal to
+zero, statistics are displayed indefinitely. A time interval must be specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-h\fR \fInumlines\fR\fR
+.ad
+.RS 15n
+Display a header for every \fInumlines\fR of statistics printed. The default is
+to display the header every 20 lines. If \fInumlines\fR is equal to zero, the
+header is never displayed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-i\fR \fIinterval\fR\fR
+.ad
+.RS 15n
+Display the statistics every \fIinterval\fR where \fIinterval\fR is the number
+of seconds to sleep between each collection.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR\fR
+.ad
+.RS 15n
+Display the number of kernel audit events currently configured.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-T\fR \fBu\fR | \fBd\fR\fR
+.ad
+.RS 15n
+Display a time stamp.
+.sp
+Specify \fBu\fR for a printed representation of the internal representation of
+time. See \fBtime\fR(2). Specify \fBd\fR for standard date format. See
+\fBdate\fR(1).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.RS 15n
+Display the version number of the kernel audit module software.
+.RE
+
+.SH EXIT STATUS
+.LP
+\fBauditstat\fR returns \fB0\fR upon success and \fB1\fR upon failure.
+.SH SEE ALSO
+.LP
+.BR audit (2),
+.BR auditon (2),
+.BR attributes (7),
+.BR auditconfig (8),
+.BR praudit (8)
diff --git a/usr/src/man/man8/automount.8 b/usr/src/man/man8/automount.8
new file mode 100644
index 0000000000..3fba7f8651
--- /dev/null
+++ b/usr/src/man/man8/automount.8
@@ -0,0 +1,728 @@
+.\"
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.\"
+.\"
+.\" Copyright 1989 AT&T
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 2017 Nexenta Systems, Inc.
+.\"
+.Dd February 25, 2017
+.Dt AUTOMOUNT 8
+.Os
+.Sh NAME
+.Nm automount
+.Nd install automatic mount points
+.Sh SYNOPSIS
+.Nm
+.Op Fl v
+.Op Fl t Ar duration
+.Sh DESCRIPTION
+The
+.Nm
+utility installs
+.Nm autofs
+mount points and associates an automount map with each mount point.
+It starts the
+.Xr automountd 8
+daemon if it finds any non-trivial entries in either local or distributed
+automount maps and if the daemon is not already running.
+The
+.Nm autofs
+file system monitors attempts to access directories within it and notifies the
+.Xr automountd 8
+daemon.
+The daemon uses the map to locate a file system, which it then mounts at the
+point of reference within the
+.Nm autofs
+file system.
+A map can be assigned to an
+.Nm autofs
+mount using an entry in the
+.Pa /etc/auto_master
+map or a direct map.
+.Pp
+If the file system is not accessed within an appropriate interval
+.Pq 10 minutes by default ,
+the
+.Nm automountd
+daemon unmounts the file system.
+.Pp
+The file
+.Pa /etc/auto_master
+determines the locations of all
+.Nm autofs
+mount points.
+By default, this file contains three entries:
+.Bd -literal -offset indent
+# Master map for automounter
+#
++auto_master
+/net -hosts -nosuid
+/home auto_home
+.Ed
+.Pp
+The
+.Sy +auto_master
+entry is a reference to an external NIS master map.
+If one exists, then its entries are read as if they occurred in place of the
+.Sy +auto_master
+entry.
+The remaining entries in the master file specify a directory on which an
+.Nm autofs
+mount will be made followed by the automounter map to be associated with it.
+Optional mount options may be supplied as an optional third field in the each
+entry.
+These options are used for any entries in the map that do not specify mount
+options explicitly.
+The
+.Nm
+command is usually run without arguments.
+It compares the entries
+.Pa /etc/auto_master
+with the current list of
+.Nm autofs
+mounts in
+.Pa /etc/mnttab
+and adds, removes or updates
+.Nm autofs
+mounts to bring the
+.Pa /etc/mnttab
+up to date with the
+.Pa /etc/auto_master .
+At boot time it installs all
+.Nm autofs
+mounts from the master map.
+Subsequently, it may be run to install
+.Nm autofs
+mounts for new entries in the master map or the direct map, or to perform
+unmounts for entries that have been removed from these maps.
+.Ss Automount with Solaris Trusted Extensions
+If a system is configured with Solaris Trusted Extensions, additional
+processing is performed to facilitate multilevel home directory access.
+A list of zones whose labels are dominated by the current zone is generated and
+default
+.Sy auto_home
+automount maps are generated if they do not currently exist.
+These automount maps are named
+.Sy auto_home_ Ns Ar zonename ,
+where
+.Ar zonename
+is the name of each zone's lower-level zone.
+An
+.Nm autofs
+mount of each such
+.Sy auto_home
+map is then performed, regardless of whether it is explicitly or implicitly
+listed in the master map.
+Instead of
+.Nm autofs
+mounting the standard
+.Sy auto_home
+map, the zone uses an
+.Pa auto_home
+file appended with its own zone name.
+Each zone's
+.Sy auto_home
+map is uniquely named so that it can be maintained and shared by all zones using
+a common name server.
+.Pp
+By default, the home directories of lower-level zones are mounted read-only
+under
+.Pa /zone/ Ns Ar zonename Ns Pa /export/home
+when each zone is booted.
+The default
+.Sy auto_home_ Ns Ar zonename
+automount map specifies that path as the source directory for an
+.Nm lofs
+remount onto
+.Pa /zone/ Ns Ar zonename Ns Pa /home/ Ns Ar username .
+For example, the file
+.Pa auto_home_public ,
+as generated from a higher level zone would contain:
+.Bd -literal -offset indent
++auto_home_public
+* -fstype=lofs :/zone/public/export/home/&
+.Ed
+.Pp
+When a home directory is referenced and the name does not match any other keys
+in the
+.Sy auto_home_public
+map, it will match this loopback mount specification.
+If this loopback match occurs and the name corresponds to a valid user whose
+home directory does not exist in the public zone, the directory is automatically
+created on behalf of the user.
+.Sh OPTIONS
+The following options are supported:
+.Bl -tag -width Ds
+.It Fl v
+Verbose mode.
+Notifies of
+.Nm autofs
+mounts, unmounts, or other non-essential information.
+.It Fl t Ar duration
+Specifies a
+.Ar duration ,
+in seconds, that a file system is to remain mounted when not in use.
+The default is
+.Sy 10
+minutes.
+.El
+.Sh USAGE
+.Ss Map Entry Format
+A simple map entry
+.Pq mapping
+takes the form:
+.Bd -literal -offset indent
+.Ar key Oo Fl Ns Ar mount-options Oc Ar location Ns ...
+.Ed
+.Pp
+where
+.Ar key
+is the full pathname of the directory to mount when used in a direct map, or the
+simple name of a subdirectory in an indirect map.
+.Ar mount-options
+is a comma-separated list of
+.Nm mount
+options, and
+.Ar location
+specifies a file system from which the directory may be mounted.
+In the case of a simple NFS mount, the options that can be used are specified in
+.Xr mount_nfs 8 ,
+and
+.Ar location
+takes the form:
+.Pp
+.Dl Ar host Ns \&: Ns Ar pathname
+.Pp
+.Ar host
+is the name of the host from which to mount the file system, and
+.Ar pathname
+is the absolute pathname of the directory to mount.
+.Pp
+Options to other file systems are documented in the other
+.Nm mount_*
+reference manual pages.
+.Ss Replicated File Systems
+Multiple
+.Ar location
+fields can be specified for replicated NFS file systems, in which case
+.Nm
+and the kernel will each try to use that information to increase availability.
+If the read-only flag is set in the map entry,
+.Nm automountd
+mounts a list of locations that the kernel may use, sorted by several criteria.
+Only locations available at mount time will be mounted, and thus be available to
+the kernel.
+When a server does not respond, the kernel will switch to an alternate server.
+The sort ordering of
+.Nm
+is used to determine how the next server is chosen.
+If the read-only flag is not set,
+.Nm
+will mount the best single location, chosen by the same sort ordering, and new
+servers will only be chosen when an unmount has been possible, and a remount is
+done.
+Servers on the same local subnet are given the strongest preference, and servers
+on the local net are given the second strongest preference.
+Among servers equally far away, response times will determine the order if no
+weighting factors
+.Pq see below
+are used.
+.Pp
+If the list includes server locations using both the NFS Version 2 Protocol and
+the NFS Version 3 Protocol,
+.Nm
+will choose only a subset of the server locations on the list, so that all
+entries will be the same protocol.
+It will choose servers with the NFS Version 3 Protocol so long as an NFS Version
+2 Protocol server on a local subnet will not be ignored.
+See the FIXME for additional details.
+.Pp
+If each
+.Ar location
+in the list shares the same
+.Ar pathname
+then a single
+.Ar location
+may be used with a comma-separated list of hostnames:
+.Bd -literal -offset indent
+.Ar hostname Ns \&, Ns Ar hostname Ns ...: Ns Ar pathname
+.Ed
+.Pp
+Requests for a server may be weighted, with the weighting factor appended to
+the server name as an integer in parentheses.
+Servers without a weighting are assumed to have a value of zero
+.Pq most likely to be selected .
+Progressively higher values decrease the chance of being selected.
+In the example,
+.Bd -literal -offset indent
+man -ro alpha,bravo,charlie(1),delta(4):/usr/man
+.Ed
+.Pp
+hosts
+.Sy alpha
+and
+.Sy bravo
+have the highest priority; host
+.Sy delta
+has the lowest.
+.Pp
+Server proximity takes priority in the selection process.
+In the example above, if the server
+.Sy delta
+is on the same network segment as the client, but the others are on different
+network segments, then
+.Sy delta
+will be selected; the weighting value is ignored.
+The weighting has effect only when selecting between servers with the same
+network proximity.
+The automounter always selects the localhost over other servers on the same
+network segment, regardless of weighting.
+.Pp
+In cases where each server has a different export point, the weighting can
+still be applied.
+For example:
+.Bd -literal -offset indent
+man -ro alpha:/usr/man bravo,charlie(1):/usr/share/man \e
+ delta(3):/export/man
+.Ed
+.Pp
+A mapping can be continued across input lines by escaping the NEWLINE with a
+backslash
+.Pq Qq Sy \e .
+Comments begin with a number sign
+.Pq Qq Sy #
+and end at the subsequent NEWLINE.
+.Ss Map Key Substitution
+The ampersand
+.Pq Qq Sy \*(Am
+character is expanded to the value of the
+.Ar key
+field for the entry in which it occurs.
+In this case:
+.Bd -literal -offset indent
+jane sparcserver:/home/&
+.Ed
+.Pp
+the
+.Sy \*(Am
+expands to
+.Sy jane .
+.Ss Wildcard Key
+The asterisk
+.Pq Qq Sy *
+character, when supplied as the
+.Ar key
+field, is recognized as the catch-all entry.
+Such an entry will match any key not previously matched.
+For instance, if the following entry appeared in the indirect map for
+.Pa /config :
+.Bd -literal -offset indent
+* &:/export/config/&
+.Ed
+.Pp
+this would allow automatic mounts in
+.Pa /config
+of any remote file system whose location could be specified as:
+.Bd -literal -offset indent
+.Ar hostname Ns \&: Ns Pa /export/config/ Ns Ar hostname
+.Ed
+.Pp
+Note that the wildcard key does not work in conjunction with the
+.Fl browse
+option.
+.Ss Variable Substitution
+Client specific variables can be used within an
+.Nm
+map.
+For instance, if
+.Sy $HOST
+appeared within a map,
+.Nm
+would expand it to its current value for the client's host name.
+Supported variables are:
+.Bl -column "PLATFORM" "arch -k or uname -m"
+.It Sy NAME Ta Sy OUTPUT OF Ta Sy DESCRIPTION (EXAMPLE)
+.It Ev ARCH Ta Nm arch Ta architecture name Pq Qq Sy sun4
+.It Ev CPU Ta Nm uname Fl p Ta processor type Pq Qq Sy sparc
+.It Ev HOST Ta Nm uname Fl n Ta host name Pq Qq Sy myhost
+.It Ev KARCH Ta Nm arch Fl k No or Nm uname Fl m Ta kernel architecture name or
+machine hardware name
+.Pq Qq Sy sun4u
+.It Ev OSNAME Ta Nm uname Fl s Ta OS name Pq Qq Sy SunOS
+.It Ev OSREL Ta Nm name Fl r Ta OS release name Pq Qq Sy 5.3
+.It Ev OSVERS Ta Nm uname Fl v Ta OS version Pq Qq Sy beta1.0
+.It Ev NATISA Ta Nm isainfo Fl n Ta native instruction set architecture for the
+system
+.Pq Qq Sy sparcv9
+.It Ev PLATFORM Ta Nm uname Fl i Ta platform name Pq Qq Sy SUNW,Sun-Fire-V240
+.El
+.Pp
+If a reference needs to be protected from affixed characters, you can surround
+the variable name with curly braces
+.Pq Qq Sy \(lC Ns Sy \(rC .
+.Ss Multiple Mounts
+A multiple mount entry takes the form:
+.Bd -literal -offset indent
+.Ar key Oo Fl Ns Ar mount-options Oc Oo Oo Ar mountpoint Oc
+.Oo Fl Ns Ar mount-options Oc Ar location Ns ... Oc Ns ...
+.Ed
+.Pp
+The initial
+.Ar mountpoint
+is optional for the first mount and mandatory for all subsequent mounts.
+The optional
+.Ar mountpoint
+is taken as a pathname relative to the directory named by
+.Ar key .
+If
+.Ar mountpoint
+is omitted in the first occurrence, a
+.Ar mountpoint
+of
+.Pa /
+.Pq root
+is implied.
+.Pp
+Given an entry in the indirect map for
+.Pa /src :
+.Bd -literal -offset indent
+beta -ro \e
+ / svr1,svr2:/export/src/beta \e
+ /1.0 svr1,svr2:/export/src/beta/1.0 \e
+ /1.0/man svr1,svr2:/export/src/beta/1.0/man
+.Ed
+.Pp
+All offsets must exist on the server under
+.Sy beta .
+.Nm
+will automatically mount
+.Pa /src/beta ,
+.Pa /src/beta/1.0 ,
+and
+.Pa /src/beta/1.0/man ,
+as needed, from either
+.Sy svr1
+or
+.Sy svr2 ,
+whichever host is nearest and responds first.
+.Ss Other File System Types
+The automounter assumes NFS mounts as a default file system type.
+Other file system types can be described using the
+.Sy fstype
+mount option.
+Other mount options specific to this file system type can be combined with the
+.Sy fstype
+option.
+The location field must contain information specific to the file system type.
+If the location field begins with a slash, a colon character must be prepended,
+for instance, to mount a CD file system:
+.Bd -literal -offset indent
+cdrom -fstype=hsfs,ro :/dev/sr0
+.Ed
+.Pp
+or to perform an
+.Nm autofs
+mount:
+.Bd -literal -offset indent
+src -fstype=autofs auto_src
+.Ed
+.Pp
+Use this procedure only if you are not using Volume Manager.
+.Pp
+See the
+.Sx NOTES
+section for information on option inheritance.
+.Ss Indirect Maps
+An indirect map allows you to specify mappings for the subdirectories you wish
+to mount under the
+.Ar directory
+indicated on the command line.
+In an indirect map, each
+.Ar key
+consists of a simple name that refers to one or more file systems that are to be
+mounted as needed.
+.Ss Direct Maps
+Entries in a direct map are associated directly with
+.Nm autofs
+mount points.
+Each
+.Ar key
+is the full pathname of an
+.Nm autofs
+mount point.
+The direct map as a whole is not associated with any single directory.
+.Pp
+Direct maps are distinguished from indirect maps by the
+.Sy \-
+key.
+For example:
+.Bd -literal -offset indent
+# Master map for automounter
+#
++auto_master
+/net -hosts -nosuid,nobrowse
+/home auto_home -nobrowse
+/- auto_direct
+.Ed
+.Ss Included Maps
+The contents of another map can be included within a map with an entry of the
+form
+.Bd -literal -offset indent
+.No + Ns Ar mapname
+.Ed
+.Pp
+If
+.Ar mapname
+begins with a slash, it is assumed to be the pathname of a local file.
+Otherwise, the location of the map is determined by the policy of the name
+service switch according to the entry for the automounter in
+.Pa /etc/nsswitch.conf ,
+such as
+.Bd -literal -offset indent
+automount: files nis
+.Ed
+.Pp
+If the name service is
+.Sy files ,
+then the name is assumed to be that of a local file in
+.Pa /etc .
+If the key being searched for is not found in the included map, the search
+continues with the next entry.
+.Ss Special Maps
+There are two special maps available:
+.Sy -hosts
+and
+.Sy -null .
+The
+.Sy -hosts
+map is used with the
+.Pa /net
+directory and assumes that the map key is the hostname of an NFS server.
+The
+.Nm automountd
+daemon dynamically constructs a map entry from the server's list of exported
+file systems.
+References to a directory under
+.Pa /net/hermes
+will refer to the corresponding directory relative to
+.Sy hermes
+root.
+.Pp
+The
+.Sy -null
+map cancels a previous map for the directory indicated.
+This is most useful in the
+.Pa /etc/auto_master
+for cancelling entries that would otherwise be inherited from the
+.Sy +auto_master
+include entry.
+To be effective, the
+.Sy -null
+entries must be inserted before the included map entry.
+.Ss Executable Maps
+Local maps that have the execute bit set in their file permissions will be
+executed by the automounter and provided with a key to be looked up as an
+argument.
+The executable map is expected to return the content of an automounter map entry
+on its stdout or no output if the entry cannot be determined.
+A direct map cannot be made executable.
+.Ss Configuration and the auto_master Map
+When initiated without arguments,
+.Nm
+consults the master map for a list of
+.Nm autofs
+mount points and their maps.
+It mounts any
+.Nm autofs
+mounts that are not already mounted, and unmounts
+.Nm autofs
+mounts that have been removed from the master map or direct map.
+.Pp
+The master map is assumed to be called
+.Sy auto_master
+and its location is determined by the name service switch policy.
+Normally the master map is located initially as a local file
+.Pa /etc/auto_master .
+.Ss Browsing
+The
+.Nm automountd
+daemon supports browsability of indirect maps.
+This allows all of the potential mount points to be visible, whether or not they
+are mounted.
+The
+.Sy -nobrowse
+option can be added to any indirect
+.Nm autofs
+map to disable browsing.
+For example:
+.Bd -literal -offset indent
+/net -hosts -nosuid,nobrowse
+/home auto_home
+.Ed
+.Pp
+In this case, any
+.Ar hostname Ns s
+would only be visible in
+.Pa /net
+after they are mounted, but all potential mount points would be visible under
+.Pa /home .
+The
+.Sy -browse
+option enables browsability of
+.Nm autofs
+file systems.
+This is the default for all indirect maps.
+.Pp
+The
+.Sy -browse
+option does not work in conjunction with the wildcard key.
+.Ss Restricting Mount Maps
+Options specified for a map are used as the default options for all the entries
+in that map.
+They are ignored when map entries specify their own mount options.
+.Pp
+In some cases, however, it is desirable to force
+.Sy nosuid , nodevices , nosetuid ,
+or
+.Sy noexec
+for a complete mount map and its submounts.
+This can be done by specifying the additional mount option,
+.Sy -restrict .
+.Bd -literal -offset indent
+/home auto_home -restrict,nosuid,hard
+.Ed
+.Pp
+The
+.Sy -restrict
+option forces the inheritance of all the restrictive options
+.Sy nosuid , nodevices , nosetuid ,
+and
+.Sy noexec
+as well as the restrict option itself.
+In this particular example, the
+.Sy nosuid
+and
+.Sy restrict
+option are inherited but the
+.Sy hard
+option is not.
+The
+.Sy restrict
+option also prevents the execution of
+.Qq executable maps
+and is enforced for auto mounts established by programs with fewer than all
+privileges available in their zone.
+.Sh FILES
+.Bl -tag -width Ds
+.It Pa /etc/auto_master
+Master automount map.
+.It Pa /etc/auto_home
+Map to support automounted home directories.
+.It Pa /etc/nsswitch.conf
+Name service switch configuration file.
+See
+.Xr nsswitch.conf 5 .
+.El
+.Sh EXIT STATUS
+.Ex -std
+.Sh SEE ALSO
+.Xr isainfo 1 ,
+.Xr ls 1 ,
+.Xr svcs 1 ,
+.Xr uname 1 ,
+.Xr autofs 5 ,
+.Xr attributes 7 ,
+.Xr nfssec 7 ,
+.Xr smf 7 ,
+.Xr automountd 8 ,
+.Xr mount 8 ,
+.Xr mount_nfs 8 ,
+.Xr svcadm 8
+.Sh NOTES
+.Nm autofs
+mount points must not be hierarchically related.
+.Nm
+does not allow an
+.Nm autofs
+mount point to be created within another
+.Nm autofs
+mount.
+.Pp
+Since each direct map entry results in a new
+.Nm autofs
+mount such maps should be kept short.
+.Pp
+Entries in both direct and indirect maps can be modified at any time.
+The new information is used when
+.Nm automountd
+next uses the map entry to do a mount.
+.Pp
+New entries added to a master map or direct map will not be useful until the
+automount command is run to install them as new
+.Nm autofs
+mount points.
+New entries added to an indirect map may be used immediately.
+.Pp
+As of the Solaris 2.6 release, a listing
+.Po see
+.Xr ls 1
+.Pc
+of the
+.Nm autofs
+directory associated with an indirect map shows all potential mountable
+entries.
+The attributes associated with the potential mountable entries are temporary.
+The real file system attributes will only be shown once the file system has been
+mounted.
+.Pp
+Default mount options can be assigned to an entire map when specified as an
+optional third field in the master map.
+These options apply only to map entries that have no mount options.
+Note that map entities with options override the default options, as at this
+time, the options do not concatenate.
+The concatenation feature is planned for a future release.
+.Pp
+When operating on a map that invokes an NFS mount, the default number of
+retries for the automounter is 0, that is, a single mount attempt, with no
+retries.
+Note that this is significantly different from the default
+.Pq 10000
+for the
+.Xr mount_nfs 8
+utility.
+.Pp
+The Network Information Service
+.Pq NIS
+was formerly known as Sun Yellow Pages
+.Pq YP .
+The functionality of the two remains the same.
+.Pp
+The
+.Nm
+service is managed by the service management facility,
+.Xr smf 7 ,
+under the service identifier:
+.Bd -literal -offset indent
+svc:/system/filesystem/autofs:default
+.Ed
+.Pp
+Administrative actions on this service, such as enabling, disabling, or
+requesting restart, can be performed using
+.Xr svcadm 8 .
+The service's status can be queried using the
+.Xr svcs 1
+command.
diff --git a/usr/src/man/man8/automountd.8 b/usr/src/man/man8/automountd.8
new file mode 100644
index 0000000000..af0ffe7cf6
--- /dev/null
+++ b/usr/src/man/man8/automountd.8
@@ -0,0 +1,121 @@
+.\"
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.\"
+.\"
+.\" Copyright 1989 AT&T
+.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 2016 Nexenta Systems, Inc.
+.\"
+.Dd March 1, 2016
+.Dt AUTOMOUNTD 8
+.Os
+.Sh NAME
+.Nm automountd
+.Nd autofs mount/unmount daemon
+.Sh SYNOPSIS
+.Nm
+.Op Fl nTv
+.Op Fl D Ar name Ns = Ns Ar value
+.Sh DESCRIPTION
+.Nm
+is an RPC server that answers file system mount and unmount requests from the
+.Nm autofs
+file system.
+It uses local files or name service maps to locate file systems to be mounted.
+These maps are described with the
+.Xr automount 8
+command.
+.Pp
+If
+.Nm automount
+finds any non-trivial entries in either the local or distributed automount maps
+and if the daemon is not running already, the
+.Nm
+daemon is automatically invoked by
+.Xr automount 8 .
+.Nm
+enables the svc:/network/nfs/nlockmgr service
+.Pq Xr lockd 8 ,
+and the svc:/network/nfs/status service
+.Pq Xr statd 8 ,
+if NFS mounts need to be done.
+.Sh OPTIONS
+The following options are supported:
+.Bl -tag -width Ds
+.It Fl D Ar name Ns = Ns Ar value
+Assign
+.Ar value
+to the indicated
+.Nm automount
+map substitution variable.
+These assignments cannot be used to substitute variables in the master map
+.Sy auto_master .
+.It Fl n
+Turn off browsing for all
+.Nm autofs
+mount points.
+This option overrides the
+.Sy -browse
+.Nm autofs
+map option on the local host.
+.It Fl T
+Trace.
+Expand each RPC call and display it on the standard output.
+.It Fl v
+Verbose.
+Log status messages to the console.
+.El
+.Sh USAGE
+See
+.Xr largefile 7
+for the description of the behavior of
+.Nm
+when encountering files greater than or equal to 2 Gbyte
+.Pq 2^31 bytes .
+.Sh FILES
+.Bl -tag -width Ds
+.It Pa /etc/auto_master
+Master map for automounter.
+.El
+.Sh SEE ALSO
+.Xr svcs 1 ,
+.Xr autofs 5 ,
+.Xr attributes 7 ,
+.Xr largefile 7 ,
+.Xr smf 7 ,
+.Xr automount 8 ,
+.Xr svcadm 8
+.Sh NOTES
+The
+.Nm
+service is managed by the service management facility,
+.Xr smf 7 ,
+under the service identifier:
+.Bd -literal -offset indent
+svc:/system/filesystem/autofs
+.Ed
+.Pp
+Administrative actions on this service, such as enabling, disabling, or
+requesting restart, can be performed using
+.Xr svcadm 8 .
+The service's status can be queried using
+.Xr svcs 1 .
+If it is disabled, it is enabled by
+.Xr automount 8
+unless the
+.Sy application Ns / Ns Sy auto_enable
+property is set to
+.Sy false .
diff --git a/usr/src/man/man8/autopush.8 b/usr/src/man/man8/autopush.8
new file mode 100644
index 0000000000..0b7b213605
--- /dev/null
+++ b/usr/src/man/man8/autopush.8
@@ -0,0 +1,200 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 2008 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH AUTOPUSH 8 "Feb 15, 2008"
+.SH NAME
+autopush \- configures lists of automatically pushed STREAMS modules
+.SH SYNOPSIS
+.LP
+.nf
+\fBautopush\fR \fB-f\fR \fIfilename\fR
+.fi
+
+.LP
+.nf
+\fBautopush\fR \fB-g\fR \fB-M\fR \fImajor\fR \fB-m\fR \fIminor\fR
+.fi
+
+.LP
+.nf
+\fBautopush\fR \fB-r\fR \fB-M\fR \fImajor\fR \fB-m\fR \fIminor\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBautopush\fR command configures the list of modules to be automatically
+pushed onto the stream when a device is opened. It can also be used to remove a
+previous setting or get information on a setting.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-f\fR \fIfilename\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets up the \fBautopush\fR configuration for each driver according to the
+information stored in \fIfilename\fR. An \fBautopush\fR file consists of lines
+of four or more fields, separated by spaces as shown below:
+.sp
+.in +2
+.nf
+\fImajor minor last-minor module1 module2 \|.\|.\|. module8\fR
+.fi
+.in -2
+.sp
+
+The first field is a string that specifies the \fImajor\fR device name, as
+listed in the \fB/kernel/drv\fR directory. The next two fields are integers
+that specify the \fIminor\fR device number and \fIlast-minor\fR device number.
+The fields following represent the names of modules. If \fIminor\fR is
+\fB\(mi1\fR, then all minor devices of a major driver specified by \fImajor\fR
+are configured, and the value for \fIlast-minor\fR is ignored. If
+\fIlast-minor\fR is \fB0\fR, then only a single minor device is configured. To
+configure a range of minor devices for a particular major, \fIminor\fR must be
+less than \fIlast-minor\fR.
+.sp
+The remaining fields list the names of modules to be automatically pushed onto
+the stream when opened, along with the position of an optional anchor. The
+maximum number of modules that can be pushed is eight. The modules are pushed
+in the order they are specified. The optional special character sequence
+\fB[anchor]\fR indicates that a STREAMS anchor should be placed on the stream
+at the module previously specified in the list; it is an error to specify more
+than one anchor or to have an anchor first in the list.
+.sp
+A nonzero exit status indicates that one or more of the lines in the specified
+file failed to complete successfully.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-g\fR\fR
+.ad
+.sp .6
+.RS 4n
+Gets the current configuration setting of a particular \fImajor\fR and
+\fIminor\fR device number specified with the \fB-M\fR and \fB-m\fR options
+respectively and displays the autopush modules associated with it. It will also
+return the starting minor device number if the request corresponds to a setting
+of a range (as described with the \fB-f\fR option).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-m\fR \fIminor\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the minor device number.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-M\fR \fImajor\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the major device number.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-r\fR\fR
+.ad
+.sp .6
+.RS 4n
+Removes the previous configuration setting of the particular \fImajor\fR and
+\fIminor\fR device number specified with the \fB-M\fR and \fB-m\fR options
+respectively. If the values of \fImajor\fR and \fIminor\fR correspond to a
+previously established setting of a range of minor devices, where \fIminor\fR
+matches the first minor device number in the range, the configuration would be
+removed for the entire range.
+.RE
+
+.SH EXIT STATUS
+.sp
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB0\fR
+.ad
+.sp .6
+.RS 4n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fBnon-zero\fR
+.ad
+.sp .6
+.RS 4n
+An error occurred.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRUsing the \fBautopush\fR command.
+.sp
+.LP
+The following example gets the current configuration settings for the
+\fImajor\fR and \fIminor\fR device numbers as indicated and displays the
+\fBautopush\fR modules associated with them for the character-special device
+\fB/dev/term/a:\fR
+
+.sp
+.in +2
+.nf
+example# autopush \fB-g\fR \fB-M\fR 29 \fB-m\fR 0
+Major Minor Lastminor Modules
+ 29 0 1 ldterm ttcompat
+.fi
+.in -2
+.sp
+
+.SH FILES
+.sp
+.LP
+\fB/etc/iu.ap\fR
+.SH SEE ALSO
+.sp
+.LP
+.BR sad (4D),
+.BR streamio (4I),
+.BR ldterm (4M),
+.BR ttcompat (4M),
+.BR attributes (7),
+.BR dladm (8),
+.BR ttymon (8)
+.sp
+.LP
+\fI\fR
+.SH NOTES
+.sp
+.LP
+The use of the \fBautopush\fR command is obsolete for networking data-links.
+The preferred method of configuring a list of automatically pushed STREAMS
+modules on a given networking data-link interface is the \fBdladm\fR(8)
+\fBautopush\fR link property.
+.sp
+.LP
+Because network devices are self-cloning, the \fBautopush\fR command is
+inadequate for networking devices. The granularity of the \fBautopush\fR
+command's configuration is driver-wide, and not per-interface as one might
+expect. Another reason not to use \fBautopush\fR is that administrators are
+more familiar with the names of their network interfaces than with device major
+and minor numbers. The \fBdladm\fR(8) command allows the configuration using
+data-link interface names.
diff --git a/usr/src/man/man8/bart.8 b/usr/src/man/man8/bart.8
new file mode 100644
index 0000000000..bee027f9b0
--- /dev/null
+++ b/usr/src/man/man8/bart.8
@@ -0,0 +1,643 @@
+'\" te
+.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH BART 8 "Oct 26, 2005"
+.SH NAME
+bart \- basic audit reporting tool
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/bin/bart\fR create [ \fB-n\fR] [\fB-R\fR \fIroot_directory\fR]
+ [\fB-r\fR \fIrules_file\fR | -]
+.fi
+
+.LP
+.nf
+\fB/usr/bin/bart\fR create [\fB-n\fR] [\fB-R\fR \fIroot_directory\fR] \fB-I\fR
+ [\fIfile_name\fR]...
+.fi
+
+.LP
+.nf
+\fB/usr/bin/bart\fR compare [\fB-i\fR \fIattribute\fR ] [\fB-p\fR]
+ [\fB-r\fR \fIrules_file\fR | -] \fIcontrol-manifest\fR \fItest-manifest\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBbart\fR(8) is a tool that performs a file-level check of the software
+contents of a system.
+.sp
+.LP
+You can also specify the files to track and the types of discrepancies to flag
+by means of a rules file, \fBbart_rules\fR. See \fBbart_rules\fR(5).
+.sp
+.LP
+The \fBbart\fR utility performs two basic functions:
+.sp
+.ne 2
+.na
+\fB\fBbart create\fR\fR
+.ad
+.RS 16n
+The manifest generator tool takes a file-level \fBsnapshot\fR of a system. The
+output is a catalog of file attributes referred to as a \fBmanifest\fR. See
+\fBbart_manifest\fR(5).
+.sp
+You can specify that the list of files be cataloged in three ways. Use \fBbart
+create\fR with no options, specify the files by name on the command line, or
+create a rules file with directives that specify which the files to monitor.
+See \fBbart_rules\fR(5).
+.sp
+By default, the manifest generator catalogs all attributes of all files in the
+root (\fB/\fR) file system. File systems mounted on the root file system are
+cataloged only if they are of the same type as the root file system.
+.sp
+For example, \fB/\fR, \fB/usr\fR, and \fB/opt\fR are separate UFS file systems.
+\fB/usr\fR and \fB/opt\fR are mounted on \fB/\fR. Therefore, all three file
+systems are cataloged. However, \fB/tmp\fR, also mounted on \fB/\fR, is not
+cataloged because it is a TMPFS file system. Mounted CD-ROMs are not cataloged
+since they are HSFS file systems.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBbart compare\fR\fR
+.ad
+.RS 16n
+The report tool compares two manifests. The output is a list of per-file
+attribute discrepancies. These discrepancies are the differences between two
+manifests: a control manifest and a test manifest.
+.sp
+A discrepancy is a change to any attribute for a given file cataloged by both
+manifests. A new file or a deleted file in a manifest is reported as a
+discrepancy.
+.sp
+The reporting mechanism provides two types of output: verbose and programmatic.
+Verbose output is localized and presented on multiple lines, while programmatic
+output is more easily parsable by other programs. See \fBOUTPUT\fR.
+.sp
+By default, the report tool generates verbose output where all discrepancies
+are reported except for modified directory timestamps (\fBdirmtime\fR
+attribute).
+.sp
+To ensure consistent and accurate comparison results, \fIcontrol-manifest\fR
+and \fItest-manifest\fR must be built with the same rules file.
+.RE
+
+.sp
+.LP
+Use the rules file to ignore specified files or subtrees when you generate a
+manifest or compare two manifests. Users can compare manifests from different
+perspectives by re-running the \fBbart compare\fR command with different rules
+files.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-i\fR \fIattribute\fR ...\fR
+.ad
+.RS 21n
+Specify the file attributes to be ignored globally. Specify attributes as a
+comma separated list.
+.sp
+This option produces the same behavior as supplying the file attributes to a
+global \fBIGNORE\fR keyword in the rules file. See \fBbart_rules\fR(5).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-I\fR [\fIfile_name\fR...]\fR
+.ad
+.RS 21n
+Specify the input list of files. The file list can be specified at the command
+line or read from standard input.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR\fR
+.ad
+.RS 21n
+Prevent computation of content signatures for all regular files in the file
+list.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR\fR
+.ad
+.RS 21n
+Display manifest comparison output in ``programmatic mode,'' which is suitable
+for programmatic parsing. The output is not localized.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-r\fR \fIrules_file\fR\fR
+.ad
+.RS 21n
+Use \fIrules_file\fR to specify which files and directories to catalog, and to
+define which file attribute discrepancies to flag. If \fIrules_file\fR is
+\fB-\fR, then the rules are read from standard input. See \fBbart_rules\fR(5)
+for the definition of the syntax.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-R\fR \fIroot_directory\fR\fR
+.ad
+.RS 21n
+Specify the root directory for the manifest. All paths specified by the rules,
+and all paths reported in the manifest, are relative to \fIroot_directory\fR.
+.LP
+Note -
+.sp
+.RS 2
+The root file system of any non-global zones must not be referenced with the
+\fB-R\fR option. Doing so might damage the global zone's file system, might
+compromise the security of the global zone, and might damage the non-global
+zone's file system. See \fBzones\fR(7).
+.RE
+.RE
+
+.SH OPERANDS
+.sp
+.LP
+bart allows quoting of operands. This is particularly important for white-space
+appearing in subtree and subtree modifier specifications.
+.sp
+.LP
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fB\fIcontrol-manifest\fR\fR
+.ad
+.RS 20n
+Specify the manifest created by \fBbart create\fR on the control system.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fItest-manifest\fR\fR
+.ad
+.RS 20n
+Specify the manifest created by \fBbart create\fR on the test system.
+.RE
+
+.SH OUTPUT
+.sp
+.LP
+The \fBbart create\fR and \fBbart compare\fR commands write output to standard
+output, and write error messages to standard error.
+.sp
+.LP
+The \fBbart create\fR command generates a system manifest. See
+\fBbart_manifest\fR(5).
+.sp
+.LP
+When the \fBbart compare\fR command compares two system manifests, it generates
+a list of file differences. By default, the comparison output is localized.
+However, if the \fB-p\fR option is specified, the output is generated in a form
+that is suitable for programmatic manipulation.
+.SS "Default Format"
+.sp
+.in +2
+.nf
+\fIfilename\fR
+\fIattribute\fR control:\fIxxxx\fR test:\fIyyyy\fR
+.fi
+.in -2
+.sp
+
+.sp
+.ne 2
+.na
+\fB\fIfilename\fR\fR
+.ad
+.RS 13n
+Name of the file that differs between \fIcontrol-manifest\fR and
+\fItest-manifest\fR. For file names that contain embedded whitespace or newline
+characters, see \fBbart_manifest\fR(5).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIattribute\fR\fR
+.ad
+.RS 13n
+The name of the file attribute that differs between the manifests that are
+compared. \fIxxxx\fR is the attribute value from \fIcontrol-manifest\fR, and
+\fIyyyy\fR is the attribute value from \fItest-manifest\fR. When discrepancies
+for multiple attributes occur for the same file, each difference is noted on a
+separate line.
+.sp
+The following attributes are supported:
+.sp
+.ne 2
+.na
+\fBacl\fR
+.ad
+.RS 12n
+ACL attributes for the file. For a file with ACL attributes, this field
+contains the output from \fBacltotext()\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBall\fR
+.ad
+.RS 12n
+All attributes.
+.RE
+
+.sp
+.ne 2
+.na
+\fBcontents\fR
+.ad
+.RS 12n
+Checksum value of the file. This attribute is only specified for regular files.
+If you turn off context checking or if checksums cannot be computed, the value
+of this field is \fB-\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBdest\fR
+.ad
+.RS 12n
+Destination of a symbolic link.
+.RE
+
+.sp
+.ne 2
+.na
+\fBdevnode\fR
+.ad
+.RS 12n
+Value of the device node. This attribute is for character device files and
+block device files only.
+.RE
+
+.sp
+.ne 2
+.na
+\fBdirmtime\fR
+.ad
+.RS 12n
+Modification time in seconds since 00:00:00 UTC, January 1, 1970 for
+directories.
+.RE
+
+.sp
+.ne 2
+.na
+\fBgid\fR
+.ad
+.RS 12n
+Numerical group ID of the owner of this entry.
+.RE
+
+.sp
+.ne 2
+.na
+\fBlnmtime\fR
+.ad
+.RS 12n
+Creation time for links.
+.RE
+
+.sp
+.ne 2
+.na
+\fBmode\fR
+.ad
+.RS 12n
+Octal number that represents the permissions of the file.
+.RE
+
+.sp
+.ne 2
+.na
+\fBmtime\fR
+.ad
+.RS 12n
+Modification time in seconds since 00:00:00 UTC, January 1, 1970 for files.
+.RE
+
+.sp
+.ne 2
+.na
+\fBsize\fR
+.ad
+.RS 12n
+File size in bytes.
+.RE
+
+.sp
+.ne 2
+.na
+\fBtype\fR
+.ad
+.RS 12n
+Type of file.
+.RE
+
+.sp
+.ne 2
+.na
+\fBuid\fR
+.ad
+.RS 12n
+Numerical user ID of the owner of this entry.
+.RE
+
+.RE
+
+.sp
+.LP
+The following default output shows the attribute differences for the
+\fB/etc/passwd\fR file. The output indicates that the \fBsize\fR, \fBmtime\fR,
+and \fBcontents\fR attributes have changed.
+.sp
+.in +2
+.nf
+/etc/passwd:
+ size control:74 test:81
+ mtime control:3c165879 test:3c165979
+ contents control:daca28ae0de97afd7a6b91fde8d57afa
+test:84b2b32c4165887355317207b48a6ec7
+.fi
+.in -2
+.sp
+
+.SS "Programmatic Format"
+.sp
+.in +2
+.nf
+\fIfilename\fR \fIattribute\fR \fIcontrol-val\fR \fItest-val\fR [\fIattribute\fR \fIcontrol-val\fR \fItest-val\fR]*
+.fi
+.in -2
+.sp
+
+.sp
+.ne 2
+.na
+\fB\fIfilename\fR\fR
+.ad
+.sp .6
+.RS 4n
+Same as \fIfilename\fR in the default format.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIattribute\fR \fIcontrol-val\fR \fItest-val\fR\fR
+.ad
+.sp .6
+.RS 4n
+A description of the file attributes that differ between the control and test
+manifests for each file. Each entry includes the attribute value from each
+manifest. See \fBbart_manifest\fR(5) for the definition of the attributes.
+.RE
+
+.sp
+.LP
+Each line of the programmatic output describes all attribute differences for a
+single file.
+.sp
+.LP
+The following programmatic output shows the attribute differences for the
+\fB/etc/passwd\fR file. The output indicates that the \fBsize\fR, \fBmtime\fR,
+and \fBcontents\fR attributes have changed.
+.sp
+.in +2
+.nf
+/etc/passwd size 74 81 mtime 3c165879 3c165979
+contents daca28ae0de97afd7a6b91fde8d57afa 84b2b32c4165887355317207b48a6ec7
+.fi
+.in -2
+.sp
+
+.SH EXIT STATUS
+.SS "Manifest Generator"
+.sp
+.LP
+The manifest generator returns the following exit values:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 6n
+Success
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB1\fR\fR
+.ad
+.RS 6n
+Non-fatal error when processing files; for example, permission problems
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB>1\fR\fR
+.ad
+.RS 6n
+Fatal error; for example, invalid command-line options
+.RE
+
+.SS "Report Tool"
+.sp
+.LP
+The report tool returns the following exit values:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 6n
+No discrepancies reported
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB1\fR\fR
+.ad
+.RS 6n
+Discrepancies found
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB>1\fR\fR
+.ad
+.RS 6n
+Fatal error executing comparison
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRCreating a Default Manifest Without Computing Checksums
+.sp
+.LP
+The following command line creates a default manifest, which consists of all
+files in the \fB/\fR file system. The \fB-n\fR option prevents computation of
+checksums, which causes the manifest to be generated more quickly.
+
+.sp
+.in +2
+.nf
+bart create -n
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRCreating a Manifest for a Specified Subtree
+.sp
+.LP
+The following command line creates a manifest that contains all files in the
+\fB/home/nickiso\fR subtree.
+
+.sp
+.in +2
+.nf
+bart create -R /home/nickiso
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRCreating a Manifest by Using Standard Input
+.sp
+.LP
+The following command line uses output from the \fBfind\fR(1) command to
+generate the list of files to be cataloged. The \fBfind\fR output is used as
+input to the \fBbart create\fR command that specifies the \fB-I\fR option.
+
+.sp
+.in +2
+.nf
+find /home/nickiso -print | bart create -I
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 4 \fRCreating a Manifest by Using a Rules File
+.sp
+.LP
+The following command line uses a rules file, \fBrules\fR, to specify the files
+to be cataloged.
+
+.sp
+.in +2
+.nf
+bart create -r rules
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 5 \fRComparing Two Manifests and Generating Programmatic Output
+.sp
+.LP
+The following command line compares two manifests and produces output suitable
+for parsing by a program.
+
+.sp
+.in +2
+.nf
+bart compare -p manifest1 manifest2
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 6 \fRComparing Two Manifests and Specifying Attributes to Ignore
+.sp
+.LP
+The following command line compares two manifests. The \fBdirmtime\fR,
+\fBlnmtime\fR, and \fBmtime\fR attributes are not compared.
+
+.sp
+.in +2
+.nf
+bart compare -i dirmtime,lnmtime,mtime manifest1 manifest2
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 7 \fRComparing Two Manifests by Using a Rules File
+.sp
+.LP
+The following command line uses a rules file, \fBrules\fR, to compare two
+manifests.
+
+.sp
+.in +2
+.nf
+bart compare -r rules manifest1 manifest2
+.fi
+.in -2
+.sp
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR cksum (1),
+.BR digest (1),
+.BR find (1),
+.BR bart_manifest (5),
+.BR bart_rules (5),
+.BR attributes (7)
+.SH NOTES
+.sp
+.LP
+The file attributes of certain system libraries can be temporarily altered by
+the system as it boots. To avoid triggering false warnings, you should compare
+manifests only if they were both created with the system in the same state;
+that is, if both were created in single-user or both in multi-user.
diff --git a/usr/src/man/man8/beadm.8 b/usr/src/man/man8/beadm.8
new file mode 100644
index 0000000000..be6efedd98
--- /dev/null
+++ b/usr/src/man/man8/beadm.8
@@ -0,0 +1,932 @@
+'\" te
+.\" Copyright 2013 Nexenta Systems, Inc. All rights reserved.
+.\" Copyright 2016 Toomas Soome <tsoome@me.com>
+.\" Copyright 2021 OmniOS Community Edition (OmniOSce) Association.
+.TH BEADM 8 "Oct 20, 2021"
+.SH NAME
+beadm \- utility for managing zfs boot environments
+.SH SYNOPSIS
+.nf
+\fBbeadm\fR \fBcreate\fR [\fB-a\fR | \fB-t\fR] [\fB-d\fR \fIdescription\fR]
+ [\fB-e\fR \fInon-activeBeName\fR | \fIbeName@snapshot\fR]
+ [\fB-o\fR \fIproperty=value\fR] ... [\fB-p\fR \fIzpool\fR]
+ [\fB-v\fR] \fIbeName\fR
+.fi
+
+.LP
+.nf
+\fBbeadm\fR \fBcreate\fR [\fB-v\fR] \fIbeName@snapshot\fR
+.fi
+
+.LP
+.nf
+\fBbeadm\fR \fBdestroy\fR [\fB-fFsv\fR] \fIbeName\fR | \fIbeName@snapshot\fR
+.fi
+
+.LP
+.nf
+\fBbeadm\fR \fBlist\fR [\fB-a\fR | \fB-ds\fR] [\fB-H\fR]
+ [\fB-k\fR|\fB-K\fR \fBdate\fR | \fBname\fR | \fBspace\fR] [\fB-v\fR] [\fIbeName\fR]
+.fi
+
+.LP
+.nf
+\fBbeadm\fR \fBmount\fR [\fB-s\fR \fBro\fR|\fBrw\fR] [\fB-v\fR] \fIbeName\fR \fImountpoint\fR
+.fi
+
+.LP
+.nf
+\fBbeadm\fR \fBunmount\fR [\fB-fv\fR] \fIbeName\fR | \fImountpoint\fR
+.fi
+
+.LP
+.nf
+\fBbeadm\fR \fBrename\fR [\fB-v\fR] \fIbeName\fR \fInewBeName\fR
+.fi
+
+.LP
+.nf
+\fBbeadm\fR \fBactivate\fR [\fB-v\fR] [\fB-t\fR | \fB-T\fR] \fIbeName\fR
+.fi
+
+.LP
+.nf
+\fBbeadm\fR \fBrollback\fR [\fB-v\fR] \fIbeName\fR \fIsnapshot\fR
+.fi
+
+.LP
+.nf
+\fBbeadm\fR \fBrollback\fR [\fB-v\fR] \fIbeName@snapshot\fR
+.fi
+
+.SH DESCRIPTION
+The \fBbeadm\fR command is the user interface for managing zfs Boot
+Environments (BEs). This utility is intended to be used by System
+Administrators who want to manage multiple Solaris Instances on a single
+system.
+.sp
+The \fBbeadm\fR command supports the following operations:
+.RS +4
+.TP
+.ie t \(bu
+.el -
+Create a new BE, based on the active BE.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el -
+Create a new BE, based on an inactive BE.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el -
+Create a snapshot of an existing BE.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el -
+Create a new BE, based on an existing snapshot.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el -
+Create a new BE, and copy it to a different zpool.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el -
+Activate an existing, inactive BE.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el -
+Mount a BE.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el -
+Unmount a BE.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el -
+Destroy a BE.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el -
+Destroy a snapshot of a BE.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el -
+Rename an existing, inactive BE.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el -
+Roll back a BE to an existing snapshot of a BE.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el -
+Display information about your snapshots and datasets.
+.RE
+
+.SH SUBCOMMANDS
+The \fBbeadm\fR command has the subcommands and options listed
+below. Also see
+EXAMPLES below.
+.sp
+.ne 2
+.na
+\fBbeadm\fR
+.ad
+.sp .6
+.RS 4n
+Lists information for all boot environments. See \fBbeadm\fR \fBlist\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBbeadm\fR \fBcreate\fR [\fB-a\fR | \fB-t\fR] [\fB-d\fR \fIdescription\fR]
+ [\fB-e\fR \fInon-activeBeName\fR | \fIbeName@snapshot\fR]
+ [\fB-o\fR \fIproperty=value\fR] ... [\fB-p\fR \fIzpool\fR]
+ [\fB-v\fR] \fIbeName\fR
+
+.ad
+.sp .6
+.RS 4n
+Creates a new boot environment named \fIbeName\fR. If the \fB-e\fR option is
+not
+provided, the new boot environment will be created as a clone of the
+currently
+running boot environment. If the \fB-d\fR option is provided then the
+description is
+also used as the title for the BE's entry in the boot menu. If the \fB-d\fR
+option is not provided, \fIbeName\fR will be used as the title.
+.sp
+.ne 2
+.na
+\fB-a\fR
+.ad
+.sp .6
+.RS 4n
+Activate the newly created BE. The default is to not activate
+the newly created BE. See also \fB-t\fR.
+.RE
+.sp
+.ne 2
+.na
+\fB-d\fR \fIdescription\fR
+.ad
+.sp .6
+.RS 4n
+Create a new BE with a description associated with it.
+.RE
+.sp
+.ne 2
+.na
+\fB-e\fR \fInon-activeBeName\fR
+.ad
+.sp .6
+.RS 4n
+Create a new BE from an existing inactive BE.
+.RE
+.sp
+.ne 2
+.na
+\fB-e\fR \fIbeName@snapshot\fR
+.ad
+.sp .6
+.RS 4n
+Create a new BE from an existing snapshot of the BE named beName.
+.RE
+.sp
+.ne 2
+.na
+\fB-o\fR \fIproperty=value\fR
+.ad
+.sp .6
+.RS 4n
+Create the datasets for new BE with specific ZFS properties. Multiple
+\fB-o\fR
+options can be specified. See \fBzfs\fR(8) for more information on
+the
+\fB-o\fR option.
+.RE
+.sp
+.ne 2
+.na
+\fB-p\fR \fIzpool\fR
+.ad
+.sp .6
+.RS 4n
+Create the new BE in the specified zpool. If this is not provided, the
+default
+behavior is to create the new BE in the same pool as as the origin BE.
+This option is not supported in non-global zone.
+.RE
+.ne 2
+.na
+\fB-t\fR
+.ad
+.sp .6
+.RS 4n
+Temporarily activate the newly created BE. The new BE will be
+used for the next boot only and the temporary activation will be automatically
+removed. The default is to not activate the newly created BE. See also
+\fB-a\fR.
+.RE
+.sp
+.ne 2
+.na
+\fB-v\fR
+.ad
+.sp .6
+.RS 4n
+Verbose mode. Displays verbose error messages from \fBbeadm\fR.
+.RE
+.RE
+
+.sp
+.ne 2
+.na
+\fBbeadm\fR \fBcreate\fR [\fB-v\fR] \fIbeName@snapshot\fR
+.ad
+.sp .6
+.RS 4n
+Creates a snapshot of the existing BE named beName.
+.sp
+.ne 2
+.na
+\fB-v\fR
+.ad
+.sp .6
+.RS 4n
+Verbose mode. Displays verbose error messages from \fBbeadm\fR.
+.RE
+.RE
+
+.sp
+.ne 2
+.na
+\fBbeadm\fR \fBdestroy\fR [\fB-fFsv\fR] \fIbeName\fR | \fIbeName@snapshot\fR
+.ad
+.sp .6
+.RS 4n
+Destroys the boot environment named \fIbeName\fR or destroys an existing
+snapshot of
+the boot environment named \fIbeName@snapshot\fR. Destroying a
+boot environment
+will also destroy all snapshots of that boot environment. Use
+this command
+with caution.
+.sp
+.ne 2
+.na
+\fB-f\fR
+.ad
+.sp .6
+.RS 4n
+Forcefully unmount the boot environment if it is currently mounted.
+.RE
+.sp
+.ne 2
+.na
+\fB-F\fR
+.ad
+.sp .6
+.RS 4n
+Force the action without prompting to verify the destruction of the boot
+environment.
+.RE
+.sp
+.ne 2
+.na
+\fB-s\fR
+.ad
+.sp .6
+.RS 4n
+Destroy all snapshots of the boot
+environment.
+.RE
+.sp
+.ne 2
+.na
+\fB-v\fR
+.ad
+.sp .6
+.RS 4n
+Verbose mode. Displays verbose error messages from \fBbeadm\fR.
+.RE
+.RE
+
+.sp
+.ne 2
+.na
+\fBbeadm\fR \fBlist\fR [\fB-a\fR | \fB-ds\fR] [\fB-H\fR]
+ [\fB-k\fR|\fB-K\fR \fBdate\fR | \fBname\fR | \fBspace\fR] [\fB-v\fR] [\fIbeName\fR]
+.ad
+.sp .6
+.RS 4n
+Lists information about the existing boot environment named \fIbeName\fR, or
+lists
+information for all boot environments if \fIbeName\fR is not provided.
+The 'Active'
+field indicates whether the boot environment is active now,
+represented
+by 'N'; active on reboot, represented by 'R'; or both, represented
+by 'NR'. If temporary next boot configuration is used, the boot environment
+is marked with 'T'.
+In non-global zone the 'Active' field also indicates whether the
+boot environment has a non-active parent BE, represented by 'x'; is active
+on boot in a non-active parent BE, represented by 'b'. Activate, rollback
+and snapshot operations for boot environments from non-active global parent
+BE aren't supported, destroy is allowed if these boot environments aren't
+active on boot.
+.sp
+Each line in the machine parsable output has the boot environment name as the
+first field. The 'Space' field is displayed in bytes and the 'Created' field
+is displayed in UTC format. The \fB-H\fR option used with no other options
+gives
+the boot environment's uuid in the second field. This field will be
+blank if
+the boot environment does not have a uuid. See the EXAMPLES section.
+In non-global zones, this field shows the uuid of the parent BE.
+.sp
+.ne 2
+.na
+\fB-a\fR
+.ad
+.sp .6
+.RS 4n
+Lists all available information about the boot environment. This includes
+subordinate file systems and snapshots.
+.RE
+.sp
+.ne 2
+.na
+\fB-d\fR
+.ad
+.sp .6
+.RS 4n
+Lists information about all subordinate file systems belonging to the boot
+environment.
+.RE
+.sp
+.ne 2
+.na
+\fB-s\fR
+.ad
+.sp .6
+.RS 4n
+Lists information about the snapshots of the boot environment.
+.RE
+.sp
+.ne 2
+.na
+\fB-H\fR
+.ad
+.sp .6
+.RS 4n
+Do not list header information. Each field in the list information is
+separated by a semicolon.
+.RE
+.sp
+.ne 2
+.na
+\fB-k\fR \fBdate\fR
+.ad
+.sp .6
+.RS 4n
+Sort BEs by date of creation in ascending order. This is default.
+.RE
+.sp
+.ne 2
+.na
+\fB-k\fR \fBname\fR
+.ad
+.sp .6
+.RS 4n
+Lexical sort of BEs by name in ascending order.
+.RE
+.sp
+.ne 2
+.na
+\fB-k\fR \fBspace\fR
+.ad
+.sp .6
+.RS 4n
+Sort BEs by space in ascending order.
+.RE
+.sp
+.ne 2
+.na
+\fB-K date\fR | \fBname\fR | \fBspace\fR
+.ad
+.sp .6
+.RS 4n
+Same as the \fB-k\fR option, but sorts in descending order.
+.RE
+.sp
+.ne 2
+.na
+\fB-v\fR
+.ad
+.sp .6
+.RS 4n
+Verbose mode. Displays verbose error messages from \fBbeadm\fR.
+.RE
+.RE
+
+.sp
+.ne 2
+.na
+\fBbeadm\fR \fBmount\fR [\fB-s\fR \fBro\fR|\fBrw\fR] [\fB-v\fR] \fIbeName\fR \fImountpoint\fR
+.ad
+.sp .6
+.RS 4n
+Mounts a boot environment named beName at mountpoint. mountpoint must be an
+already existing empty directory.
+.sp
+.ne 2
+.na
+\fB-s\fR \fBro\fR|\fBrw\fR
+.ad
+.sp .6
+.RS 4n
+Mount the shared filesystems of the BE in read-only or read-write mode.
+.RE
+.sp
+.ne 2
+.na
+\fB-v\fR
+.ad
+.sp .6
+.RS 4n
+Verbose mode. Displays verbose error messages from \fBbeadm\fR.
+.RE
+.RE
+
+.sp
+.ne 2
+.na
+\fBbeadm\fR \fBunmount\fR [\fB-fv\fR] \fIbeName\fR | \fImountpoint\fR
+.ad
+.sp .6
+.RS 4n
+Unmounts the boot environment named beName. The command can also be given a path to a
+beName mount point on the system.
+.sp
+.ne 2
+.na
+\fB-f\fR
+.ad
+.sp .6
+.RS 4n
+Forcefully unmount the boot environment even if its currently busy.
+.RE
+.sp
+.ne 2
+.na
+\fB-v\fR
+.ad
+.sp .6
+.RS 4n
+Verbose mode. Displays verbose error messages from \fBbeadm\fR.
+.RE
+.RE
+
+.sp
+.ne 2
+.na
+\fBbeadm\fR \fBrename\fR [\fB-v\fR] \fIbeName\fR \fInewBeName\fR
+.ad
+.sp .6
+.RS 4n
+Renames the boot environment named \fIbeName\fR to \fInewBeName\fR.
+.sp
+.ne 2
+.na
+\fB-v\fR
+.ad
+.sp .6
+.RS 4n
+Verbose mode. Displays verbose error messages from \fBbeadm\fR.
+.RE
+.RE
+
+.sp
+.ne 2
+.na
+\fBbeadm\fR \fBrollback\fR [\fB-v\fR] \fIbeName\fR \fIsnapshot\fR | \fIbeName@snapshot\fR
+.ad
+.sp .6
+.RS 4n
+Roll back the boot environment named \fIbeName\fR to existing snapshot
+of the boot environment named \fIbeName@snapshot\fR.
+.sp
+.ne 2
+.na
+\fB-v\fR
+.ad
+.sp .6
+.RS 4n
+Verbose mode. Displays verbose error messages from \fBbeadm\fR.
+.RE
+.RE
+
+.sp
+.ne 2
+.na
+\fBbeadm\fR \fBactivate\fR [\fB-v\fR] [\fB-t\fR | \fB-T\fR] \fIbeName\fR
+.ad
+.sp .6
+.RS 4n
+Makes beName the active BE on next reboot.
+.sp
+.ne 2
+.na
+\fB-t\fR
+.ad
+.sp .6
+.RS 4n
+Sets temporary, one time activation. For next boot, the \fIbeName\fR
+is used for boot, and the temporary activation is removed.
+When temporary activation is removed, the next boot will use zfs dataset
+specified in boot pool \fIbootfs\fR property.
+.RE
+
+.sp
+.ne 2
+.na
+\fB-T\fR
+.ad
+.sp .6
+.RS 4n
+Removes temporary next boot configuration of \fIbeName\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB-v\fR
+.ad
+.sp .6
+.RS 4n
+Verbose mode. Displays verbose error messages from \fBbeadm\fR.
+.RE
+.RE
+
+.SH ALTERNATE BE LOCATION
+The alternate BE location outside rpool/ROOT can be configured
+by modifying the BENAME_STARTS_WITH parameter in /etc/default/be.
+For example: BENAME_STARTS_WITH=rootfs
+
+.SH EXAMPLES
+\fBExample 1\fR: Create a new BE named BE1, by cloning the current live BE.
+.sp
+.in +2
+.nf
+\fB# beadm create BE1\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2\fR: Create a new BE named BE2, by cloning the existing inactive
+BE
+named BE1.
+.sp
+.in +2
+.nf
+\fB# beadm create -e BE1 BE2\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3\fR: Create a snapshot named now of the existing BE named BE1.
+.sp
+.in +2
+.nf
+\fB# beadm create BE1@now\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 4\fR: Create a new BE named BE3, by cloning an existing snapshot of
+BE1.
+.sp
+.in +2
+.nf
+\fB# beadm create -e BE1@now BE3\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 5\fR: Create a new BE named BE4 based on the currently running BE.
+Create the new BE in rpool2.
+.sp
+.in +2
+.nf
+\fB# beadm create -p rpool2 BE4\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 6\fR: Create a new BE named BE5 based on the currently running BE.
+Create the new BE in rpool2, and create its datasets with compression turned
+on.
+.sp
+.in +2
+.nf
+\fB# beadm create -p rpool2 -o compression=on BE5\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 7\fR: Create a new BE named BE6 based on the currently running BE
+and provide a description for it.
+.sp
+.in +2
+.nf
+\fB# beadm create -d "BE6 used as test environment" BE6\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 8\fR: Activate an existing, inactive BE named BE3.
+.sp
+.in +2
+.nf
+\fB# beadm activate BE3\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 9\fR: Mount the BE named BE3 at /mnt.
+.sp
+.in +2
+.nf
+\fB# beadm mount BE3 /mnt\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 10\fR: Unmount the mounted BE named BE3.
+.sp
+.in +2
+.nf
+\fB# beadm unmount BE3\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 11\fR: Destroy the BE named BE3 without verification.
+.sp
+.in +2
+.nf
+\fB# beadm destroy -f BE3\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 12\fR: Destroy the snapshot named now of BE1.
+.sp
+.in +2
+.nf
+\fB# beadm destroy BE1@now\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 13\fR: Rename the existing, inactive BE named BE1 to BE3.
+.sp
+.in +2
+.nf
+\fB# beadm rename BE1 BE3\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 14\fR: Roll back the BE named BE1 to snapshot BE1@now.
+.sp
+.in +2
+.nf
+\fB# beadm rollback BE1 BE1@now\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 15\fR: List all existing boot environments.
+
+.sp
+.in +2
+.nf
+\fB# beadm list\fR
+BE Active Mountpoint Space Policy Created
+-- ------ ---------- ----- ------ -------
+BE2 - - 72.0K static 2008-05-21 12:26
+BE3 - - 332.0K static 2008-08-26 10:28
+BE4 - - 15.78M static 2008-09-05 18:20
+BE5 NR / 7.25G static 2008-09-09 16:53
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 16\fR: List all existing boot environmets and list all dataset and
+snapshot information about those bootenvironments.
+
+.sp
+.in +2
+.nf
+\fB# beadm list -d -s\fR
+
+BE/Dataset/Snapshot Active Mountpoint Space Policy Created
+------------------- ------ ---------- ----- ------ -------
+BE2
+ p/ROOT/BE2 - - 36.0K static 2008-05-21 12:26
+ p/ROOT/BE2/opt - - 18.0K static 2008-05-21 16:26
+ p/ROOT/BE2/opt@now - - 0 static 2008-09-08 22:43
+ p/ROOT/BE2@now - - 0 static 2008-09-08 22:43
+BE3
+ p/ROOT/BE3 - - 192.0K static 2008-08-26 10:28
+ p/ROOT/BE3/opt - - 86.0K static 2008-08-26 10:28
+ p/ROOT/BE3/opt/local - - 36.0K static 2008-08-28 10:58
+BE4
+ p/ROOT/BE4 - - 15.78M static 2008-09-05 18:20
+BE5
+ p/ROOT/BE5 NR / 6.10G static 2008-09-09 16:53
+ p/ROOT/BE5/opt - /opt 24.55M static 2008-09-09 16:53
+ p/ROOT/BE5/opt@bar - - 18.38M static 2008-09-10 00:59
+ p/ROOT/BE5/opt@foo - - 18.38M static 2008-06-10 16:37
+ p/ROOT/BE5@bar - - 139.44M static 2008-09-10 00:59
+ p/ROOT/BE5@foo - - 912.85M static 2008-06-10 16:37
+.fi
+.in -2
+.sp
+
+\fBExample 17\fR: List all dataset and snapshot information about BE5
+
+.sp
+.in +2
+.nf
+\fB# beadm list -a BE5\fR
+
+BE/Dataset/Snapshot Active Mountpoint Space Policy Created
+------------------- ------ ---------- ----- ------ -------
+BE5
+ p/ROOT/BE5 NR / 6.10G static 2008-09-09 16:53
+ p/ROOT/BE5/opt - /opt 24.55M static 2008-09-09 16:53
+ p/ROOT/BE5/opt@bar - - 18.38M static 2008-09-10 00:59
+ p/ROOT/BE5/opt@foo - - 18.38M static 2008-06-10 16:37
+ p/ROOT/BE5@bar - - 139.44M static 2008-09-10 00:59
+ p/ROOT/BE5@foo - - 912.85M static 2008-06-10 16:37
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 18\fR: List machine parsable information about all boot
+environments.
+
+.sp
+.in +2
+.nf
+\fB# beadm list -H\fR
+
+BE2;;;;55296;static;1211397974
+BE3;;;;339968;static;1219771706
+BE4;;;;16541696;static;1220664051
+BE5;215b8387-4968-627c-d2d0-f4a011414bab;NR;/;7786206208;static;1221004384
+.fi
+.in -2
+.sp
+.LP
+\fBExample 19\fR: Create and list temporary activation.
+
+.sp
+.in +2
+.nf
+\fB# beadm list\fR
+BE Active Mountpoint Space Policy Created
+-- ------ ---------- ----- ------ -------
+BE2 - - 4,85M static 2016-10-30 14:29
+BE3 - - 4,84M static 2016-10-30 18:53
+BE4 - - 5,54M static 2016-10-30 23:53
+BE5 NR / 12,6G static 2016-11-06 01:46
+\fB# beadm create BE6\fR
+\fB# beadm activate -t BE6\fR
+\fB# beadm list\fR
+BE Active Mountpoint Space Policy Created
+-- ------ ---------- ----- ------ -------
+BE2 - - 4,85M static 2016-10-30 14:29
+BE3 - - 4,84M static 2016-10-30 18:53
+BE4 - - 5,54M static 2016-10-30 23:53
+BE5 NR / 60,0K static 2016-11-06 01:46
+BE6 T - 12,6G static 2016-11-06 12:56
+.fi
+.in -2
+.sp
+
+.SH EXIT STATUS
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB0\fR
+.ad
+.sp .6
+.RS 4n
+Successful completion
+.RE
+
+.sp
+.ne 2
+.na
+\fB>0\fR
+.ad
+.sp .6
+.RS 4n
+Failure
+.RE
+
+
+.SH FILES
+.ne 2
+.na
+\fB/var/log/beadm/<beName>/create.log.<yyyymmdd_hhmmss>\fR
+.ad
+.sp .6
+.RS 4n
+Log used for capturing beadm create output
+.sp
+.nf
+\fIyyyymmdd_hhmmss\fR - 20071130_140558
+\fIyy\fR - year; 2007
+\fImm\fR - month; 11
+\fIdd\fR - day; 30
+\fIhh\fR - hour; 14
+\fImm\fR - minute; 05
+\fIss\fR - second; 58
+.fi
+.in -2
+.sp
+.RE
+.sp
+.LP
+.ne 2
+.na
+\fB/etc/default/be\fR
+.ad
+.sp .6
+.RS 4n
+Contains default value for BENAME_STARTS_WITH parameter
+.sp
+.RE
+
+.SH ATTRIBUTES
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Uncommitted
+.TE
+
+
+.SH SEE ALSO
+.BR zfs (8)
diff --git a/usr/src/man/man8/bhyve.8 b/usr/src/man/man8/bhyve.8
new file mode 100644
index 0000000000..9e4e3b68bb
--- /dev/null
+++ b/usr/src/man/man8/bhyve.8
@@ -0,0 +1,837 @@
+.\" Copyright (c) 2013 Peter Grehan
+.\" All rights reserved.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\" notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\" notice, this list of conditions and the following disclaimer in the
+.\" documentation and/or other materials provided with the distribution.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE AUTHORS AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHORS OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+.\" SUCH DAMAGE.
+.\"
+.\" Portions Copyright 2022 OmniOS Community Edition (OmniOSce) Association.
+.\"
+.Dd February 26, 2022
+.Dt BHYVE 8
+.Os
+.Sh NAME
+.Nm bhyve
+.Nd "run a guest operating system inside a virtual machine"
+.Sh SYNOPSIS
+.Nm
+.Op Fl aCDdeHhPSuWwxY
+.Oo
+.Sm off
+.Fl c\~
+.Oo
+.Op Cm cpus=
+.Ar numcpus
+.Oc
+.Op Cm ,sockets= Ar n
+.Op Cm ,cores= Ar n
+.Op Cm ,threads= Ar n
+.Oc
+.Sm on
+.Oo
+.Sm off
+.Fl G\~
+.Oo Ar w Oc
+.Oo Ar bind_address Cm \&: Oc
+.Ar port
+.Oc
+.Sm on
+.Oo Fl B
+.Sm off
+.Ar type Ns \&,
+.Op Ar key Ns = Ns Ar value
+.Oo \&, Ns Ar key Ns = Ns Ar value Ns Oc \&...
+.Oc
+.Sm on
+.Op Fl k Ar config_file
+.Oo Fl l
+.Sm off
+.Ar lpcdev Op Cm \&, Ar conf
+.Sm on
+.Oc
+.Sm off
+.Oo Fl m\~
+.Ar memsize
+.Oo
+.Cm K | k | M | m | G | g | T | t
+.Oc
+.Sm on
+.Oc
+.Op Fl o Ar var Ns Cm = Ns Ar value
+.Op Fl r Ar file
+.Sm off
+.Oo Fl s\~
+.Ar slot Cm \&, Ar emulation Op Cm \&, Ar conf
+.Sm on
+.Oc
+.Op Fl U Ar uuid
+.Ar vmname
+.Nm
+.Fl l Cm help
+.Nm
+.Fl s Cm help
+.Sh DESCRIPTION
+.Nm
+is a hypervisor that runs guest operating systems inside a
+virtual machine.
+.Pp
+Parameters such as the number of virtual CPUs, amount of guest memory, and
+I/O connectivity can be specified with command-line parameters.
+.Pp
+.Nm
+runs until the guest operating system reboots or an unhandled hypervisor
+exit is detected.
+.Sh OPTIONS
+.Bl -tag -width 10n
+.It Fl a
+The guest's local APIC is configured in xAPIC mode.
+The xAPIC mode is the default setting so this option is redundant.
+It will be deprecated in a future version.
+.It Xo
+.Fl B
+.Sm off
+.Ar type Ns \&,
+.Op Ar key Ns = Ns Ar value
+.Oo \&, Ns Ar key Ns = Ns Ar value Ns Oc \&...
+.Sm on
+.Xc
+Configure smbios data.
+.Ar type
+must be set to
+.Sy 1 .
+Supported keys are:
+.Sy manufacturer ,
+.Sy product ,
+.Sy version ,
+.Sy serial ,
+.Sy sku ,
+.Sy family
+and
+.Sy uuid .
+.It Xo Fl c
+.Sm off
+.Op Oo Cm cpus= Oc Ar numcpus
+.Op Cm ,sockets= Ar n
+.Op Cm ,cores= Ar n
+.Op Cm ,threads= Ar n
+.Xc
+.Sm on
+Number of guest virtual CPUs
+and/or the CPU topology.
+The default value for each of
+.Ar numcpus ,
+.Ar sockets ,
+.Ar cores ,
+and
+.Ar threads
+is 1.
+The current maximum number of guest virtual CPUs is 32.
+If
+.Ar numcpus
+is not specified then it will be calculated from the other arguments.
+The topology must be consistent in that the
+.Ar numcpus
+must equal the product of
+.Ar sockets ,
+.Ar cores ,
+and
+.Ar threads .
+If a
+.Ar setting
+is specified more than once the last one has precedence.
+.It Fl C
+Include guest memory in core file.
+.It Fl D
+Destroy the VM on guest initiated power-off.
+.It Fl d
+Suspend CPUs at boot.
+.It Fl e
+Force
+.Nm
+to exit when a guest issues an access to an I/O port that is not emulated.
+This is intended for debug purposes.
+.It Fl G Xo
+.Sm off
+.Oo Ar w Oc
+.Oo Ar bind_address Cm \&: Oc
+.Ar port
+.Sm on
+.Xc
+Start a debug server that uses the GDB protocol to export guest state to a
+debugger.
+An IPv4 TCP socket will be bound to the supplied
+.Ar bind_address
+and
+.Ar port
+to listen for debugger connections.
+Only a single debugger may be attached to the debug server at a time.
+If the option begins with
+.Sq w ,
+.Nm
+will pause execution at the first instruction waiting for a debugger to attach.
+.It Fl H
+Yield the virtual CPU thread when a HLT instruction is detected.
+If this option is not specified, virtual CPUs will use 100% of a host CPU.
+.It Fl h
+Print help message and exit.
+.It Fl k Ar config_file
+Set configuration variables from a simple, key-value config file.
+Each line of the config file is expected to consist of a config variable
+name, an equals sign
+.Pq Sq = ,
+and a value.
+No spaces are permitted between the variable name, equals sign, or
+value.
+Blank lines and lines starting with
+.Sq #
+are ignored.
+See
+.Xr bhyve_config 5
+for more details.
+.It Fl l Cm help
+Print a list of supported LPC devices.
+.It Fl l Ar lpcdev Ns Op \&, Ns Ar conf
+Allow devices behind the LPC PCI-ISA bridge to be configured.
+The only supported devices are the TTY-class devices
+.Cm com1 , com2 , com3
+and
+.Cm com4 ,
+the boot ROM device
+.Cm bootrom ,
+and the debug/test device
+.Cm pc-testdev .
+.Pp
+The possible values for the
+.Ar conf
+argument are listed in the
+.Fl s
+flag description.
+.It Xo
+.Fl m Ar memsize Ns Oo
+.Sm off
+.Cm K | k | M | m | G | g | T | t
+.Sm on
+.Oc
+.Xc
+Set the guest physical memory size.
+The size argument may be suffixed with one of
+.Cm K , M , G
+or
+.Cm T
+.Pq either upper or lower case
+to indicate a multiple of kibibytes, mebibytes, gibibytes, or tebibytes.
+If no suffix is given, the value is assumed to be in mebibytes.
+.Pp
+The default is 256MiB.
+.It Fl o Ar var Ns Cm = Ns Ar value
+Set the configuration variable
+.Ar var
+to
+.Ar value .
+.It Fl P
+Force the guest virtual CPU to exit when a PAUSE instruction is detected.
+.It Fl S
+Wire guest memory.
+.It Fl s Cm help
+Print a list of supported PCI devices.
+.It Fl s Ar slot Ns Cm \&, Ns Ar emulation Ns Op Cm \&, Ns Ar conf
+Configure a virtual PCI slot and function.
+.Pp
+.Nm
+provides PCI bus emulation and virtual devices that can be attached to
+slots on the bus.
+There are 32 available slots, with the option of providing up to 8 functions
+per slot.
+.Pp
+The
+.Ar slot
+can be specified in one of the following formats:
+.Pp
+.Bl -bullet -compact
+.It
+.Ar pcislot
+.It
+.Sm off
+.Ar pcislot Cm \&: Ar function
+.Sm on
+.It
+.Sm off
+.Ar bus Cm \&: Ar pcislot Cm \&: Ar function
+.Sm on
+.El
+.Pp
+The
+.Ar pcislot
+value is 0 to 31.
+The optional
+.Ar function
+value is 0 to 7.
+The optional
+.Ar bus
+value is 0 to 255.
+If not specified, the
+.Ar function
+value defaults to 0.
+If not specified, the
+.Ar bus
+value defaults to 0.
+.Pp
+The
+.Ar emulation
+argument can be one of the following:
+.Bl -tag -width "amd_hostbridge"
+.It Cm hostbridge
+A simple host bridge.
+This is usually configured at slot 0, and is required by most guest
+operating systems.
+.It Cm amd_hostbridge
+Emulation identical to
+.Cm hostbridge
+but using a PCI vendor ID of AMD.
+.It Cm passthru
+PCI pass-through device.
+.It Cm virtio-net-viona
+Accelerated Virtio network interface.
+.It Cm virtio-net
+Legacy Virtio network interface.
+.It Cm virtio-blk
+Virtio block storage interface.
+.It Cm virtio-9p
+Virtio 9p (VirtFS) interface.
+.It Cm virtio-rnd
+Virtio random number generator interface.
+.It Cm virtio-console
+Virtio console interface, which exposes multiple ports
+to the guest in the form of simple char devices for simple IO
+between the guest and host userspaces.
+.It Cm ahci
+AHCI controller attached to arbitrary devices.
+.It Cm ahci-cd
+AHCI controller attached to an ATAPI CD/DVD.
+.It Cm ahci-hd
+AHCI controller attached to a SATA hard drive.
+.It Cm e1000
+Intel e82545 network interface.
+.It Cm uart
+PCI 16550 serial device.
+.It Cm lpc
+LPC PCI-ISA bridge with COM1, COM2, COM3, and COM4 16550 serial ports,
+a boot ROM, and, optionally, the debug/test device.
+The LPC bridge emulation can only be configured on bus 0.
+.It Cm fbuf
+Raw framebuffer device attached to VNC server.
+.It Cm xhci
+eXtensible Host Controller Interface (xHCI) USB controller.
+.It Cm nvme
+NVM Express (NVMe) controller.
+.El
+.Pp
+The optional parameter
+.Ar conf
+describes the backend for device emulations.
+If
+.Ar conf
+is not specified, the device emulation has no backend and can be
+considered unconnected.
+.Pp
+.Sy Host Bridge Devices
+.Bl -tag -width 10n
+.It Cm model Ns = Ns Ar model
+Specify a hostbridge model to emulate.
+Valid model strings, and their associated vendor and device IDs are:
+.Sy amd Pq 0x1022/0x7432 ,
+.Sy netapp Pq 0x1275/0x1275 ,
+.Sy i440fx Pq 0x8086/0x1237
+and
+.Sy q35 Pq 0x8086/0x29b0 .
+The default value of
+.Ar model
+is
+.Cm netapp .
+.It Cm vendor Ns = Ns Ar vendor
+PCI vendor ID.
+.It Cm devid Ns = Ns Ar devid
+PCI device ID.
+.El
+.Pp
+Providing extra configuration parameters for a host bridge is optional, but if
+parameters are provided then either
+.Va model
+by itself, or both of
+.Va vendor
+and
+.Va devid
+must be specified.
+.Pp
+.Sy Accelerated Virtio Network Backends :
+.Bl -tag -width 10n
+.It Oo Cm vnic Ns = Oc Ns Ar vnic Ns Oo , Ns Cm feature_mask Ns = Ns Ar mask Oc
+.Pp
+.Ar vnic
+is the name of a configured virtual NIC on the system.
+.Ar mask
+is applied to the virtio feature flags which are advertised to the guest.
+Bits set in the
+.Ar mask
+value are removed from the advertised features.
+.El
+.Pp
+.Sy Other Network Backends :
+.Bl -tag -width 10n
+.It Oo Cm vnic Ns = Oc Ns Ar vnic Ns Oo , Ns Ar network-backend-options Oc
+.Pp
+.Ar vnic
+is the name of a configured virtual NIC on the system.
+.El
+.Pp
+The
+.Ar network-backend-options
+are:
+.Bl -tag -width 8n
+.It Cm promiscphys
+Enable promiscuous mode at the physical level (default: false)
+.It Cm promiscsap
+Enable promiscuous mode at the SAP level (default: true)
+.It Cm promiscmulti
+Enable promiscuous mode for all multicast addresses (default: true)
+.It Cm promiscrxonly
+The selected promiscuous modes are only enabled for received traffic
+(default: true).
+.El
+.Pp
+.Sy Block storage device backends :
+.Sm off
+.Bl -bullet
+.It
+.Pa /filename Op Cm \&, Ar block-device-options
+.It
+.Pa /dev/xxx Op Cm \&, Ar block-device-options
+.El
+.Sm on
+.Pp
+The
+.Ar block-device-options
+are:
+.Bl -tag -width 10n
+.It Cm nocache
+Open the file with
+.Dv O_DIRECT .
+.It Cm direct
+Open the file using
+.Dv O_SYNC .
+.It Cm ro
+Force the file to be opened read-only.
+.It Cm sectorsize= Ns Ar logical Ns Oo Cm \&/ Ns Ar physical Oc
+Specify the logical and physical sector sizes of the emulated disk.
+The physical sector size is optional and is equal to the logical sector size
+if not explicitly specified.
+.It Cm nodelete
+Disable emulation of guest trim requests via
+.Dv DIOCGDELETE
+requests.
+.El
+.Pp
+.Sy 9P device backends :
+.Sm off
+.Bl -bullet
+.It
+.Ar sharename Cm = Ar /path/to/share Op Cm \&, Ar 9p-device-options
+.El
+.Sm on
+.Pp
+The
+.Ar 9p-device-options
+are:
+.Bl -tag -width 10n
+.It Cm ro
+Expose the share in read-only mode.
+.El
+.Pp
+.Sy TTY device backends :
+.Bl -tag -width 10n
+.It Cm stdio
+Connect the serial port to the standard input and output of
+the
+.Nm
+process.
+.It Pa /dev/xxx
+Use the host TTY device for serial port I/O.
+.El
+.Pp
+.Sy Boot ROM device backends :
+.Bl -tag -width 10n
+.It Pa romfile Ns Op Cm \&, Ns Ar varfile
+Map
+.Ar romfile
+in the guest address space reserved for boot firmware.
+If
+.Ar varfile
+is provided, that file is also mapped in the boot firmware guest
+address space, and any modifications the guest makes will be saved
+to that file.
+.El
+.Pp
+.Sy Pass-through device backends :
+.Bl -tag -width 10n
+.It Pa /dev/ppt Ns Ar N
+Connect to a PCI device on the host identified by the specified path.
+.El
+.Pp
+Guest memory must be wired using the
+.Fl S
+option when a pass-through device is configured.
+.Pp
+The host device must have been previously attached to the
+.Sy ppt
+driver.
+.Pp
+.Sy Virtio console device backends :
+.Bl -bullet
+.Sm off
+.It
+.Cm port1= Ns Ar /path/to/port1.sock Ns
+.Op Cm ,port Ns Ar N Cm \&= Ns Ar /path/to/port2.sock No \~ Ar ...
+.Sm on
+.El
+.Pp
+A maximum of 16 ports per device can be created.
+Every port is named and corresponds to a UNIX domain socket created by
+.Nm .
+.Nm
+accepts at most one connection per port at a time.
+.Pp
+Limitations:
+.Bl -bullet
+.It
+Due to lack of destructors in
+.Nm ,
+sockets on the filesystem must be cleaned up manually after
+.Nm
+exits.
+.It
+There is no way to use the
+.Dq console port
+feature, nor the console port resize at present.
+.It
+Emergency write is advertised, but no-op at present.
+.El
+.Pp
+.Sy Framebuffer device backends :
+.Bl -bullet
+.Sm off
+.It
+.Op Cm rfb= Ar ip-and-port
+.Op Cm ,w= Ar width
+.Op Cm ,h= Ar height
+.Op Cm ,vga= Ar vgaconf
+.Op Cm ,wait
+.Op Cm ,password= Ar password
+.Sm on
+.El
+.Pp
+Configuration options are defined as follows:
+.Bl -tag -width 10n
+.It Cm rfb= Ns Ar ip-and-port Pq or Cm tcp= Ns Ar ip-and-port
+An IP address and a port VNC should listen on.
+There are two formats:
+.Pp
+.Bl -bullet -compact
+.It
+.Sm off
+.Op Ar IPv4 Cm \&:
+.Ar port
+.Sm on
+.It
+.Sm off
+.Cm \&[ Ar IPv6 Cm \&] Cm \&: Ar port
+.Sm on
+.El
+.Pp
+The default is to listen on localhost IPv4 address and default VNC port 5900.
+An IPv6 address must be enclosed in square brackets.
+.It Cm unix Ns = Ns Ar path
+The path to a UNIX socket which will be created and where
+.Nm
+will accept VNC connections.
+.It Cm w= Ns Ar width No and Cm h= Ns Ar height
+A display resolution, width and height, respectively.
+If not specified, a default resolution of 1024x768 pixels will be used.
+Minimal supported resolution is 640x480 pixels,
+and maximum is 1920x1200 pixels.
+.It Cm vga= Ns Ar vgaconf
+Possible values for this option are
+.Cm io
+(default),
+.Cm on
+, and
+.Cm off .
+PCI graphics cards have a dual personality in that they are
+standard PCI devices with BAR addressing, but may also
+implicitly decode legacy VGA I/O space
+.Pq Ad 0x3c0-3df
+and memory space
+.Pq 64KB at Ad 0xA0000 .
+The default
+.Cm io
+option should be used for guests that attempt to issue BIOS calls which result
+in I/O port queries, and fail to boot if I/O decode is disabled.
+.Pp
+The
+.Cm on
+option should be used along with the CSM BIOS capability in UEFI
+to boot traditional BIOS guests that require the legacy VGA I/O and
+memory regions to be available.
+.Pp
+The
+.Cm off
+option should be used for the UEFI guests that assume that
+VGA adapter is present if they detect the I/O ports.
+An example of such a guest is
+.Ox
+in UEFI mode.
+.It Cm wait
+Instruct
+.Nm
+to only boot upon the initiation of a VNC connection, simplifying the
+installation of operating systems that require immediate keyboard input.
+This can be removed for post-installation use.
+.It Cm password= Ns Ar password
+This type of authentication is known to be cryptographically weak and is not
+intended for use on untrusted networks.
+Many implementations will want to use stronger security, such as running
+the session over an encrypted channel provided by IPsec or SSH.
+.El
+.Pp
+.Sy xHCI USB device backends :
+.Bl -tag -width 10n
+.It Cm tablet
+A USB tablet device which provides precise cursor synchronization
+when using VNC.
+.El
+.Pp
+.Sy NVMe device backends :
+.Bl -bullet
+.Sm off
+.It
+.Ar devpath
+.Op Cm ,maxq= Ar #
+.Op Cm ,qsz= Ar #
+.Op Cm ,ioslots= Ar #
+.Op Cm ,sectsz= Ar #
+.Op Cm ,ser= Ar #
+.Op Cm ,eui64= Ar #
+.Op Cm ,dsm= Ar opt
+.Sm on
+.El
+.Pp
+Configuration options are defined as follows:
+.Bl -tag -width 10n
+.It Ar devpath
+Accepted device paths are:
+.Ar /dev/blockdev
+or
+.Ar /path/to/image
+or
+.Cm ram= Ns Ar size_in_MiB .
+.It Cm maxq
+Max number of queues.
+.It Cm qsz
+Max elements in each queue.
+.It Cm ioslots
+Max number of concurrent I/O requests.
+.It Cm sectsz
+Sector size (defaults to blockif sector size).
+.It Cm ser
+Serial number with maximum 20 characters.
+.It Cm eui64
+IEEE Extended Unique Identifier (8 byte value).
+.It Cm dsm
+DataSet Management support.
+Supported values are:
+.Cm auto , enable ,
+and
+.Cm disable .
+.El
+.Pp
+.Sy AHCI device backends :
+.Bl -bullet
+.It
+.Sm off
+.Op Oo Cm hd\&: | cd\&: Oc Ar path
+.Op Cm ,nmrr= Ar nmrr
+.Op Cm ,ser= Ar #
+.Op Cm ,rev= Ar #
+.Op Cm ,model= Ar #
+.Sm on
+.El
+.Pp
+Configuration options are defined as follows:
+.Bl -tag -width 10n
+.It Cm nmrr
+Nominal Media Rotation Rate, known as RPM.
+Value 1 will indicate device as Solid State Disk.
+Default value is 0, not report.
+.It Cm ser
+Serial Number with maximum 20 characters.
+.It Cm rev
+Revision Number with maximum 8 characters.
+.It Cm model
+Model Number with maximum 40 characters.
+.El
+.It Fl U Ar uuid
+Set the universally unique identifier
+.Pq UUID
+in the guest's System Management BIOS System Information structure.
+By default a UUID is generated from the host's hostname and
+.Ar vmname .
+.It Fl u
+RTC keeps UTC time.
+.It Fl W
+Force virtio PCI device emulations to use MSI interrupts instead of MSI-X
+interrupts.
+.It Fl w
+Ignore accesses to unimplemented Model Specific Registers (MSRs).
+This is intended for debug purposes.
+.It Fl x
+The guest's local APIC is configured in x2APIC mode.
+.It Fl Y
+Disable MPtable generation.
+.It Ar vmname
+Alphanumeric name of the guest.
+.El
+.Sh CONFIGURATION VARIABLES
+.Nm
+uses an internal tree of configuration variables to describe global and
+per-device settings.
+When
+.Nm
+starts,
+it parses command line options (including config files) in the order given
+on the command line.
+Each command line option sets one or more configuration variables.
+For example,
+the
+.Fl s
+option creates a new tree node for a PCI device and sets one or more variables
+under that node including the device model and device model-specific variables.
+Variables may be set multiple times during this parsing stage with the final
+value overriding previous values.
+.Pp
+Once all of the command line options have been processed,
+the configuration values are frozen.
+.Nm
+then uses the value of configuration values to initialize device models
+and global settings.
+.Pp
+More details on configuration variables can be found in
+.Xr bhyve_config 5 .
+.Sh SIGNAL HANDLING
+.Nm
+deals with the following signals:
+.Pp
+.Bl -tag -width SIGTERM -compact
+.It SIGTERM
+Trigger ACPI poweroff for a VM
+.El
+.Sh EXIT STATUS
+Exit status indicates how the VM was terminated:
+.Pp
+.Bl -tag -width indent -compact
+.It 0
+rebooted
+.It 1
+powered off
+.It 2
+halted
+.It 3
+triple fault
+.It 4
+exited due to an error
+.El
+.Sh EXAMPLES
+To run a virtual machine with 1GB of memory, two virtual CPUs, a virtio
+block device backed by the
+.Pa /my/image
+filesystem image, and a serial port for the console:
+.Bd -literal -offset indent
+bhyve -c 2 -s 0,hostbridge -s 1,lpc -s 2,virtio-blk,/my/image \e
+ -l com1,stdio -H -P -m 1G vm1
+.Ed
+.Pp
+Run a 24GB single-CPU virtual machine with three network ports.
+.Bd -literal -offset indent
+bhyve -s 0,hostbridge -s 1,lpc -s 2:0,virtio-net-viona,vmvnic0 \e
+ -s 2:1,virtio-net-viona,vmvnic1 -s 2:2,virtio-net-viona,vmvnic2 \e
+ -s 3,virtio-blk,/my/image -l com1,stdio \e
+ -H -P -m 24G bigvm
+.Ed
+.Pp
+Run an 8GB virtual machine with 2 quad core CPUs, 2 NVMe disks and one other
+disk attached as a Virtio block device, an AHCI ATAPI CD-ROM, a single viona
+network port, an i440fx hostbridge, and the console port connected to a socket.
+.Bd -literal -offset indent
+bhyve -c sockets=2,cores=4,threads=2 \e
+ -s 0,hostbridge,model=i440fx -s 1,lpc \e
+ -s 1:0,nvme,/dev/zvol/rdsk/tank/hdd0 \e
+ -s 1:1,nvme,/dev/zvol/rdsk/tank/hdd1 \e
+ -s 1:2,virtio-blk,/dev/zvol/rdsk/tank/hdd1 \e
+ -s 2:0,ahci,cd:/images/install.iso \e
+ -s 3,virtio-net-viona,vnic=vmvnic0 \e
+ -l com1,socket,/tmp/vm.com1,wait \e
+ -H -P -m 8G
+.Ed
+.Pp
+Run a UEFI virtual machine with a display resolution of 800 by 600 pixels
+that can be accessed via VNC at: 0.0.0.0:5900.
+.Bd -literal -offset indent
+bhyve -c 2 -m 4G -w -H \e
+ -s 0,hostbridge \e
+ -s 3,ahci-cd,/path/to/uefi-OS-install.iso \e
+ -s 4,nvme,/dev/zvol/rdsk/tank/hdd0 \e
+ -s 5,virtio-net-viona,vnic=vnmic0 \e
+ -s 29,fbuf,vga=off,rfb=0.0.0.0:5900,w=800,h=600,wait \e
+ -s 30,xhci,tablet \e
+ -s 31,lpc -l com1,stdio \e
+ -l bootrom,/usr/share/bhyve/firmware/BHYVE_UEFI.fd \e
+ uefivm
+.Ed
+.Pp
+Run a UEFI virtual machine with a VARS file to save EFI variables.
+Note that
+.Nm
+will write guest modifications to the given VARS file.
+Be sure to create a per-guest copy of the template VARS file from
+.Pa /usr/share/bhyve/firmware .
+.Bd -literal -offset indent
+bhyve -c 2 -m 4g -w -H \e
+ -s 0,hostbridge \e
+ -s 31,lpc -p com1,stdio \e
+ -l bootrom,/usr/share/bhyve/firmware/BHYVE_UEFI.fd,BHYVE_UEFI_VARS.fd \e
+ uefivm
+.Ed
+.Sh SEE ALSO
+.Xr bhyve_config 5 ,
+.Xr bhyvectl 8
+.Pp
+.Rs
+.%A Intel
+.%B 64 and IA-32 Architectures Software Developers' Manual
+.%V Volume 3
+.Re
diff --git a/usr/src/man/man8/bhyvectl.8 b/usr/src/man/man8/bhyvectl.8
new file mode 100644
index 0000000000..730f46109b
--- /dev/null
+++ b/usr/src/man/man8/bhyvectl.8
@@ -0,0 +1,85 @@
+.\" Copyright (c) 2015 Christian Brueffer
+.\" All rights reserved.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\" notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\" notice, this list of conditions and the following disclaimer in the
+.\" documentation and/or other materials provided with the distribution.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+.\" SUCH DAMAGE.
+.\"
+.\" Portions Copyright 2021 OmniOS Community Edition (OmniOSce) Association.
+.\"
+.Dd May 4, 2020
+.Dt BHYVECTL 8
+.Os
+.Sh NAME
+.Nm bhyvectl
+.Nd "control utility for bhyve instances"
+.Sh SYNOPSIS
+.Nm
+.Fl -vm= Ns Ar <vmname>
+.Op Fl -create
+.Op Fl -destroy
+.Op Fl -get-stats
+.Op Fl -inject-nmi
+.Op Fl -force-reset
+.Op Fl -force-poweroff
+.Op Fl -checkpoint= Ns Ar <filename>
+.Op Fl -suspend= Ns Ar <filename>
+.Sh DESCRIPTION
+The
+.Nm
+command is a control utility for active
+.Xr bhyve 8
+virtual machine instances.
+.Pp
+.Em Note :
+Most
+.Nm
+flags are intended for querying and setting the state of an active instance.
+These commands are intended for development purposes, and are not documented here.
+A complete list can be obtained by executing
+.Nm
+without any arguments.
+.Pp
+The user-facing options are as follows:
+.Bl -tag -width ".Fl d Ar argument"
+.It Fl -vm= Ns Ar <vmname>
+Operate on the virtual machine
+.Ar <vmname> .
+.It Fl -create
+Create the specified VM.
+.It Fl -destroy
+Destroy the specified VM.
+.It Fl -get-stats
+Retrieve statistics for the specified VM.
+.It Fl -inject-nmi
+Inject a non-maskable interrupt (NMI) into the VM.
+.It Fl -force-reset
+Force the VM to reset.
+.It Fl -force-poweroff
+Force the VM to power off.
+.El
+.Sh EXIT STATUS
+.Ex -std
+.Sh EXAMPLES
+Destroy the VM called fbsd10:
+.Pp
+.Dl "bhyvectl --vm=fbsd10 --destroy"
+.Sh SEE ALSO
+.Xr bhyve 8
diff --git a/usr/src/man/man8/boot.8 b/usr/src/man/man8/boot.8
new file mode 100644
index 0000000000..646f9e4f24
--- /dev/null
+++ b/usr/src/man/man8/boot.8
@@ -0,0 +1,1154 @@
+'\" te
+.\" Copyright 2018 OmniOS Community Edition (OmniOSce) Association.
+.\" Copyright 2015 Nexenta Systems Inc.
+.\" Copyright (c) 2008 Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH BOOT 8 "Jul 20, 2018"
+.SH NAME
+boot \- start the system kernel or a standalone program
+.SH SYNOPSIS
+.SS "SPARC"
+.LP
+.nf
+\fBboot\fR [\fIOBP\fR \fInames\fR] [\fIfile\fR] [\fB-aLV\fR] [\fB-F\fR \fIobject\fR] [\fB-D\fR \fIdefault-file\fR]
+ [\fB-Z\fR \fIdataset\fR] [\fIboot-flags\fR] [\fB\(mi\(mi\fR] [\fIclient-program-args\fR]
+.fi
+
+.SS "x86"
+.LP
+.nf
+\fBboot\fR [\fIboot-flags\fR] [\fB-B\fR \fIprop\fR=\fIval\fR [,\fIval\fR...]]
+.fi
+
+.SH DESCRIPTION
+.LP
+Bootstrapping is the process of loading and executing a standalone program. For
+the purpose of this discussion, bootstrapping means the process of loading and
+executing the bootable operating system. Typically, the standalone program is
+the operating system kernel (see \fBkernel\fR(8)), but any standalone program
+can be booted instead. On a SPARC-based system, the diagnostic monitor for a
+machine is a good example of a standalone program other than the operating
+system that can be booted.
+.sp
+.LP
+If the standalone is identified as a dynamically-linked executable, \fBboot\fR
+will load the interpreter (linker/loader) as indicated by the executable format
+and then transfer control to the interpreter. If the standalone is
+statically-linked, it will jump directly to the standalone.
+.sp
+.LP
+Once the kernel is loaded, it starts the UNIX system, mounts the necessary file
+systems (see \fBvfstab\fR(5)), and runs \fB/sbin/init\fR to bring the system to
+the "initdefault" state specified in \fB/etc/inittab\fR. See \fBinittab\fR(5).
+.SS "SPARC Bootstrap Procedure"
+.LP
+On SPARC based systems, the bootstrap procedure on most machines consists of
+the following basic phases.
+.sp
+.LP
+After the machine is turned on, the system firmware (in PROM) executes power-on
+self-test (POST). The form and scope of these tests depends on the version of
+the firmware in your system.
+.sp
+.LP
+After the tests have been completed successfully, the firmware attempts to
+autoboot if the appropriate flag has been set in the non-volatile storage area
+used by the firmware. The name of the file to load, and the device to load it
+from can also be manipulated.
+.sp
+.LP
+These flags and names can be set using the \fBeeprom\fR(8) command from the
+shell, or by using \fBPROM\fR commands from the \fBok\fR prompt after the
+system has been halted.
+.sp
+.LP
+The second level program is either a filesystem-specific boot block (when
+booting from a disk), or \fBinetboot\fR (when booting across
+the network).
+.sp
+.LP
+Network Booting
+.sp
+.LP
+Network booting occurs in two steps: the client first obtains an IP address and
+any other parameters necessary to permit it to load the second-stage booter.
+The second-stage booter in turn loads the boot archive from the boot device.
+.sp
+.LP
+An IP address can be obtained in one of three ways: RARP, DHCP, or manual
+configuration, depending on the functions available in and configuration of the
+PROM. Machines of the \fBsun4u\fR and \fBsun4v\fR kernel architectures have
+DHCP-capable PROMs.
+.sp
+.LP
+The boot command syntax for specifying the two methods of network booting are:
+.sp
+.in +2
+.nf
+boot net:rarp
+boot net:dhcp
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The command:
+.sp
+.in +2
+.nf
+boot net
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+without a \fBrarp\fR or \fBdhcp\fR specifier, invokes the default method for
+network booting over the network interface for which \fBnet\fR is an alias.
+.sp
+.LP
+The sequence of events for network booting using RARP/\fBbootparams\fR is
+described in the following paragraphs. The sequence for DHCP follows the
+RARP/\fBbootparams\fR description.
+.sp
+.LP
+When booting over the network using RARP/\fBbootparams\fR, the PROM begins by
+broadcasting a reverse ARP request until it receives a reply. When a reply is
+received, the PROM then broadcasts a TFTP request to fetch the first block of
+\fBinetboot\fR. Subsequent requests will be sent to the server that initially
+answered the first block request. After loading, \fBinetboot\fR will also use
+reverse ARP to fetch its IP address, then broadcast \fBbootparams\fR RPC calls
+(see \fBbootparams\fR(5)) to locate configuration information and its root file
+system. \fBinetboot\fR then loads the boot archive by means of NFS and
+transfers control to that archive.
+.sp
+.LP
+When booting over the network using DHCP, the PROM broadcasts the hardware
+address and kernel architecture and requests an IP address, boot parameters,
+and network configuration information. After a DHCP server responds and is
+selected (from among potentially multiple servers), that server sends to the
+client an IP address and all other information needed to boot the client. After
+receipt of this information, the client PROM examines the name of the file to
+be loaded, and will behave in one of two ways, depending on whether the file's
+name appears to be an HTTP URL. If it does not, the PROM downloads
+\fBinetboot\fR, loads that file into memory, and executes it. \fBinetboot\fR
+loads the boot archive, which takes over the machine and releases
+\fBinetboot\fR. Startup scripts then initiate the DHCP agent (see
+\fBdhcpagent\fR(8)), which implements further DHCP activities.
+
+.SS "iSCSI Boot"
+.LP
+iSCSI boot is currently supported only on x86. The host being booted must be
+equipped with NIC(s) capable of iBFT (iSCSI Boot Firmware Table) or have the
+mainboard's BIOS be iBFT-capable. iBFT, defined in the Advanced Configuration
+and Power Interface (ACPI) 3.0b specification, specifies a block of information
+that contains various parameters that are useful to the iSCSI Boot process.
+.sp
+.LP
+Firmware implementing iBFT presents an iSCSI disk in the BIOS during startup as
+a bootable device by establishing the connection to the iSCSI target. The rest
+of the process of iSCSI booting is the same as booting from a local disk.
+.sp
+.LP
+To configure the iBFT properly, users need to refer to the documentation from
+their hardware vendors.
+.SS "Booting from Disk"
+.LP
+When booting from disk, the OpenBoot PROM firmware reads the boot blocks from
+blocks 1 to 15 of the partition specified as the boot device. This standalone
+booter usually contains a file system-specific reader capable of reading the
+boot archive.
+.sp
+.LP
+If the pathname to the standalone is relative (does not begin with a slash),
+the second level boot will look for the standalone in a platform-dependent
+search path. This path is guaranteed to contain
+\fB/platform/\fR\fIplatform-name\fR. Many SPARC platforms next search the
+platform-specific path entry \fB/platform/\fR\fIhardware-class-name\fR. See
+\fBfilesystem\fR(7). If the pathname is absolute, \fBboot\fR will use the
+specified path. The \fBboot\fR program then loads the standalone at the
+appropriate address, and then transfers control.
+.sp
+.LP
+Once the boot archive has been transferred from the boot device, Solaris can
+initialize and take over control of the machine. This process is further
+described in the "Boot Archive Phase," below, and is identical on all
+platforms.
+.sp
+.LP
+If the filename is not given on the command line or otherwise specified, for
+example, by the \fBboot-file\fR NVRAM variable, \fBboot\fR chooses an
+appropriate default file to load based on what software is installed on the
+system and the capabilities of the hardware and firmware.
+.sp
+.LP
+The path to the kernel must not contain any whitespace.
+.SS "Booting from ZFS"
+.LP
+Booting from ZFS differs from booting from UFS in that, with ZFS, a device
+specifier identifies a storage pool, not a single root file system. A storage
+pool can contain multiple bootable datasets (that is, root file systems).
+Therefore, when booting from ZFS, it is not sufficient to specify a boot
+device. One must also identify a root file system within the pool that was
+identified by the boot device. By default, the dataset selected for booting is
+the one identified by the pool's \fBbootfs\fR property. This default selection
+can be overridden by specifying an alternate bootable dataset with the \fB-Z\fR
+option.
+.SS "Boot Archive Phase"
+.LP
+The boot archive contains a file system image that is mounted using an
+in-memory disk. The image is self-describing, specifically containing a file
+system reader in the boot block. This file system reader mounts and opens the
+RAM disk image, then reads and executes the kernel contained within it. By
+default, this kernel is in:
+.sp
+.in +2
+.nf
+/platform/`uname -i`/kernel/unix
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+If booting from ZFS, the pathnames of both the archive and the kernel file are
+resolved in the root file system (that is, dataset) selected for booting as
+described in the previous section.
+.sp
+.LP
+The initialization of the kernel continues by loading necessary drivers and
+modules from the in-memory filesystem until I/O can be turned on and the root
+filesystem mounted. Once the root filesystem is mounted, the in-memory
+filesystem is no longer needed and is discarded.
+.SS "OpenBoot PROM \fBboot\fR Command Behavior"
+.LP
+The OpenBoot \fBboot\fR command takes arguments of the following form:
+.sp
+.in +2
+.nf
+ok boot [\fIdevice-specifier\fR] [\fIarguments\fR]
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The default \fBboot\fR command has no arguments:
+.sp
+.in +2
+.nf
+ok boot
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+If no \fIdevice-specifier\fR is given on the \fBboot\fR command line, OpenBoot
+typically uses the \fIboot-device\fR or \fIdiag-device\fR \fBNVRAM\fR variable.
+If no optional \fIarguments\fR are given on the command line, OpenBoot
+typically uses the \fIboot-file\fR or \fIdiag-file\fR \fBNVRAM\fR variable as
+default \fBboot\fR arguments. (If the system is in diagnostics mode,
+\fIdiag-device\fR and \fIdiag-file\fR are used instead of \fIboot-device\fR and
+\fIboot-file\fR).
+.sp
+.LP
+\fIarguments\fR may include more than one string. All \fIargument\fR strings
+are passed to the secondary booter; they are not interpreted by OpenBoot.
+.sp
+.LP
+If any \fIarguments\fR are specified on the \fBboot\fR command line, then
+neither the \fIboot-file\fR nor the \fIdiag-file\fR \fBNVRAM\fR variable is
+used. The contents of the \fBNVRAM\fR variables are not merged with command
+line arguments. For example, the command:
+.sp
+.in +2
+.nf
+ok \fBboot\fR \fB-s\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+ignores the settings in both \fIboot-file\fR and \fIdiag-file\fR; it interprets
+the string \fB"-s"\fR as \fIarguments\fR. \fBboot\fR will not use the contents
+of \fIboot-file\fR or \fIdiag-file\fR.
+.sp
+.LP
+With older PROMs, the command:
+.sp
+.in +2
+.nf
+ok \fBboot net\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+took no arguments, using instead the settings in \fIboot-file\fR or
+\fIdiag-file\fR (if set) as the default file name and arguments to pass to
+boot. In most cases, it is best to allow the \fBboot\fR command to choose an
+appropriate default based upon the system type, system hardware and firmware,
+and upon what is installed on the root file system. Changing \fIboot-file\fR or
+\fIdiag-file\fR can generate unexpected results in certain circumstances.
+.sp
+.LP
+This behavior is found on most OpenBoot 2.x and 3.x based systems. Note that
+differences may occur on some platforms.
+.sp
+.LP
+The command:
+.sp
+.LP
+ok \fBboot cdrom\fR
+.sp
+.LP
+\&...also normally takes no arguments. Accordingly, if \fIboot-file\fR is set
+to the 64-bit kernel filename and you attempt to boot the installation CD or
+DVD with \fBboot cdrom\fR, boot will fail if the installation media contains
+only a 32-bit kernel.
+.sp
+.LP
+Because the contents of \fIboot-file\fR or \fIdiag-file\fR can be ignored
+depending on the form of the \fBboot\fR command used, reliance upon
+\fIboot-file\fR should be discouraged for most production systems.
+.sp
+.LP
+Modern PROMs have enhanced the network boot support package to support the
+following syntax for arguments to be processed by the package:
+.sp
+.LP
+[\fIprotocol\fR,] [\fIkey\fR=\fIvalue\fR,]*
+.sp
+.LP
+All arguments are optional and can appear in any order. Commas are required
+unless the argument is at the end of the list. If specified, an argument takes
+precedence over any default values, or, if booting using DHCP, over
+configuration information provided by a DHCP server for those parameters.
+.sp
+.LP
+\fIprotocol\fR, above, specifies the address discovery protocol to be used.
+.sp
+.LP
+Configuration parameters, listed below, are specified as \fIkey\fR=\fIvalue\fR
+attribute pairs.
+.sp
+.ne 2
+.na
+\fB\fBtftp-server\fR\fR
+.ad
+.sp .6
+.RS 4n
+IP address of the TFTP server
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfile\fR\fR
+.ad
+.sp .6
+.RS 4n
+file to download using TFTP
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBhost-ip\fR\fR
+.ad
+.sp .6
+.RS 4n
+IP address of the client (in dotted-decimal notation)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrouter-ip\fR\fR
+.ad
+.sp .6
+.RS 4n
+IP address of the default router
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsubnet-mask\fR\fR
+.ad
+.sp .6
+.RS 4n
+subnet mask (in dotted-decimal notation)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBclient-id\fR\fR
+.ad
+.sp .6
+.RS 4n
+DHCP client identifier
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBhostname\fR\fR
+.ad
+.sp .6
+.RS 4n
+hostname to use in DHCP transactions
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBhttp-proxy\fR\fR
+.ad
+.sp .6
+.RS 4n
+HTTP proxy server specification (IPADDR[:PORT])
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBtftp-retries\fR\fR
+.ad
+.sp .6
+.RS 4n
+maximum number of TFTP retries
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdhcp-retries\fR\fR
+.ad
+.sp .6
+.RS 4n
+maximum number of DHCP retries
+.RE
+
+.sp
+.LP
+The list of arguments to be processed by the network boot support package is
+specified in one of two ways:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+As arguments passed to the package's \fBopen\fR method, or
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+arguments listed in the NVRAM variable \fBnetwork-boot-arguments\fR.
+.RE
+.sp
+.LP
+Arguments specified in \fBnetwork-boot-arguments\fR will be processed only if
+there are no arguments passed to the package's \fBopen\fR method.
+.sp
+.LP
+Argument Values
+.sp
+.LP
+\fIprotocol\fR specifies the address discovery protocol to be used. If present,
+the possible values are \fBrarp\fR or \fBdhcp\fR.
+.sp
+.LP
+If other configuration parameters are specified in the new syntax and style
+specified by this document, absence of the \fIprotocol\fR parameter implies
+manual configuration.
+.sp
+.LP
+If no other configuration parameters are specified, or if those arguments are
+specified in the positional parameter syntax currently supported, the absence
+of the \fIprotocol\fR parameter causes the network boot support package to use
+the platform-specific default address discovery protocol.
+.sp
+.LP
+Manual configuration requires that the client be provided its IP address, the
+name of the boot file, and the address of the server providing the boot file
+image. Depending on the network configuration, it might be required that
+\fBsubnet-mask\fR and \fBrouter-ip\fR also be specified.
+.sp
+.LP
+If the \fIprotocol\fR argument is not specified, the network boot support
+package uses the platform-specific default address discovery protocol.
+.sp
+.LP
+\fBtftp-server\fR is the IP address (in standard IPv4 dotted-decimal notation)
+of the TFTP server that provides the file to download if using TFTP.
+.sp
+.LP
+When using DHCP, the value, if specified, overrides the value of the TFTP
+server specified in the DHCP response.
+.sp
+.LP
+The TFTP RRQ is unicast to the server if one is specified as an argument or in
+the DHCP response. Otherwise, the TFTP RRQ is broadcast.
+.sp
+.LP
+\fIfile\fR specifies the file to be loaded by TFTP from the TFTP server.
+.sp
+.LP
+When using RARP and TFTP, the default file name is the ASCII hexadecimal
+representation of the IP address of the client, as documented in a preceding
+section of this document.
+.sp
+.LP
+When using DHCP, this argument, if specified, overrides the name of the boot
+file specified in the DHCP response.
+.sp
+.LP
+When using DHCP and TFTP, the default file name is constructed from the root
+node's \fBname\fR property, with commas (,) replaced by periods (.).
+.sp
+.LP
+When specified on the command line, the filename must not contain slashes
+(\fB/\fR).
+.sp
+.LP
+\fBhost-ip\fR specifies the IP address (in standard IPv4 dotted-decimal
+notation) of the client, the system being booted. If using RARP as the address
+discovery protocol, specifying this argument makes use of RARP unnecessary.
+.sp
+.LP
+If DHCP is used, specifying the \fBhost-ip\fR argument causes the client to
+follow the steps required of a client with an "Externally Configured Network
+Address", as specified in RFC 2131.
+.sp
+.LP
+\fBrouter-ip\fR is the IP address (in standard IPv4 dotted-decimal notation) of
+a router on a directly connected network. The router will be used as the first
+hop for communications spanning networks. If this argument is supplied, the
+router specified here takes precedence over the preferred router specified in
+the DHCP response.
+.sp
+.LP
+\fBsubnet-mask\fR (specified in standard IPv4 dotted-decimal notation) is the
+subnet mask on the client's network. If the subnet mask is not provided (either
+by means of this argument or in the DHCP response), the default mask
+appropriate to the network class (Class A, B, or C) of the address assigned to
+the booting client will be assumed.
+.sp
+.LP
+\fBclient-id\fR specifies the unique identifier for the client. The DHCP client
+identifier is derived from this value. Client identifiers can be specified as:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The ASCII hexadecimal representation of the identifier, or
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+a quoted string
+.RE
+.sp
+.LP
+Thus, \fBclient-id="openboot"\fR and \fBclient-id=6f70656e626f6f74\fR both
+represent a DHCP client identifier of 6F70656E626F6F74.
+.sp
+.LP
+Identifiers specified on the command line must must not include slash (\fB/\fR)
+or spaces.
+.sp
+.LP
+The maximum length of the DHCP client identifier is 32 bytes, or 64 characters
+representing 32 bytes if using the ASCII hexadecimal form. If the latter form
+is used, the number of characters in the identifier must be an even number.
+Valid characters are 0-9, a-f, and A-F.
+.sp
+.LP
+For correct identification of clients, the client identifier must be unique
+among the client identifiers used on the subnet to which the client is
+attached. System administrators are responsible for choosing identifiers that
+meet this requirement.
+.sp
+.LP
+Specifying a client identifier on a command line takes precedence over any
+other DHCP mechanism of specifying identifiers.
+.sp
+.LP
+\fBhostname\fR (specified as a string) specifies the hostname to be used in
+DHCP transactions. The name might or might not be qualified with the local
+domain name. The maximum length of the hostname is 255 characters.
+.LP
+Note -
+.sp
+.RS 2
+The \fBhostname\fR parameter can be used in service environments that require
+that the client provide the desired hostname to the DHCP server. Clients
+provide the desired hostname to the DHCP server, which can then register the
+hostname and IP address assigned to the client with DNS.
+.RE
+.sp
+.LP
+\fBhttp-proxy\fR is specified in the following standard notation for a host:
+.sp
+.in +2
+.nf
+\fIhost\fR [":"" \fIport\fR]
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+\&...where \fIhost\fR is specified as an IP ddress (in standard IPv4
+dotted-decimal notation) and the optional \fIport\fR is specified in decimal.
+If a port is not specified, port 8080 (decimal) is implied.
+.sp
+.LP
+\fBtftp-retries\fR is the maximum number of retries (specified in decimal)
+attempted before the TFTP process is determined to have failed. Defaults to
+using infinite retries.
+.sp
+.LP
+\fBdhcp-retries\fR is the maximum number of retries (specified in decimal)
+attempted before the DHCP process is determined to have failed. Defaults to of
+using infinite retries.
+.SS "x86 Bootstrap Procedure"
+.LP
+On x86 based systems, the bootstrapping process consists of two conceptually
+distinct phases, kernel loading and kernel initialization. Kernel loading is
+implemented in the boot loader using the BIOS ROM on the system
+board, and BIOS extensions in ROMs on peripheral boards. The BIOS loads boot
+loader, starting with the first physical sector from a hard disk, DVD, or CD. If
+supported by the ROM on the network adapter, the BIOS can also download the
+\fBpxeboot\fR binary from a network boot server. Once the boot loader is
+loaded, it in turn will load the \fBunix\fR kernel, a pre-constructed boot
+archive containing kernel modules and data, and any additional files specified
+in the boot loader configuration. Once specified files are loaded, the boot
+loader will start the kernel to complete boot.
+.sp
+.LP
+If the device identified by the boot loader as the boot device contains a ZFS
+storage pool, the \fBmenu.lst\fR file used to create the Boot Environment menu
+will be found in the dataset at the root of the pool's dataset hierarchy.
+This is the dataset with the same name as the pool itself. There is always
+exactly one such dataset in a pool, and so this dataset is well-suited for
+pool-wide data such as the \fBmenu.lst\fR file. After the system is booted,
+this dataset is mounted at /\fIpoolname\fR in the root file system.
+.sp
+.LP
+There can be multiple bootable datasets (that is, root file systems) within a
+pool. The default file system to load the kernel is identified by the boot
+pool \fBbootfs\fR property (see \fBzpool\fR(8)). All bootable datasets are
+listed in the \fBmenu.lst\fR file, which is used by the boot loader to compose
+the Boot Environment menu, to implement support to load a kernel and boot from
+an alternate Boot Environment.
+.sp
+.LP
+Kernel initialization starts when the boot loader finishes loading the files
+specified in the boot loader configuration and hands control over to the
+\fBunix\fR binary. The Unix operating system initializes, links in the
+necessary modules from the boot archive and mounts the root file system on
+the real root device. At this point, the kernel regains
+storage I/O, mounts additional file systems (see \fBvfstab\fR(5)), and starts
+various operating system services (see \fBsmf\fR(7)).
+
+.SH OPTIONS
+.SS "SPARC"
+.LP
+The following SPARC options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-a\fR\fR
+.ad
+.sp .6
+.RS 4n
+The boot program interprets this flag to mean \fBask me\fR, and so it prompts
+for the name of the standalone. The \fB\&'\fR\fB-a\fR\fB\&'\fR flag is then
+passed to the standalone program.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-D\fR \fIdefault-file\fR\fR
+.ad
+.sp .6
+.RS 4n
+Explicitly specify the \fIdefault-file\fR. On some systems, \fBboot\fR chooses
+a dynamic default file, used when none is otherwise specified. This option
+allows the \fIdefault-file\fR to be explicitly set and can be useful when
+booting \fBkmdb\fR(1) since, by default, \fBkmdb\fR loads the default-file as
+exported by the \fBboot\fR program.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-F\fR \fIobject\fR\fR
+.ad
+.sp .6
+.RS 4n
+Boot using the named object. The object must be either an ELF executable or
+bootable object containing a boot block. The primary use is to boot the
+failsafe boot archive.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-L\fR\fR
+.ad
+.sp .6
+.RS 4n
+List the bootable datasets within a ZFS pool. You can select one of the
+bootable datasets in the list, after which detailed instructions for booting
+that dataset are displayed. Boot the selected dataset by following the
+instructions. This option is supported only when the boot device contains a ZFS
+storage pool.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-V\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display verbose debugging information.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIboot-flags\fR\fR
+.ad
+.sp .6
+.RS 4n
+The boot program passes all \fIboot-flags\fR to \fBfile\fR. They are not
+interpreted by \fBboot\fR. See the \fBkernel\fR(8) and \fBkmdb\fR(1) manual
+pages for information about the options available with the default standalone
+program.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIclient-program-args\fR\fR
+.ad
+.sp .6
+.RS 4n
+The \fBboot\fR program passes all \fIclient-program-args\fR to \fIfile\fR. They
+are not interpreted by \fBboot\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIfile\fR\fR
+.ad
+.sp .6
+.RS 4n
+Name of a standalone program to \fBboot\fR. If a filename is not explicitly
+specified, either on the \fBboot\fR command line or in the \fIboot-file\fR
+NVRAM variable, \fBboot\fR chooses an appropriate default filename.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIOBP\fR \fInames\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify the open boot prom designations. For example, on Desktop SPARC based
+systems, the designation \fB/sbus/esp@0,800000/sd@3,0:a\fR indicates a
+\fBSCSI\fR disk (sd) at target 3, lun0 on the \fBSCSI\fR bus, with the esp host
+adapter plugged into slot 0.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-Z\fR \fIdataset\fR\fR
+.ad
+.sp .6
+.RS 4n
+Boot from the root file system in the specified ZFS dataset.
+.RE
+
+.SS "x86"
+.LP
+The following x86 options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-B\fR \fIprop\fR=\fIval\fR...\fR
+.ad
+.sp .6
+.RS 4n
+One or more property-value pairs to be passed to the kernel. Multiple
+property-value pairs must be separated by a comma. Use of this option is the
+equivalent of the command: \fBeeprom\fR \fIprop\fR=\fIval\fR. See
+\fBeeprom\fR(8) for available properties and valid values.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIboot-flags\fR\fR
+.ad
+.sp .6
+.RS 4n
+The boot program passes all \fIboot-flags\fR to \fBfile\fR. They are not
+interpreted by \fBboot\fR. See \fBkernel\fR(8) and \fBkmdb\fR(1) for
+information about the options available with the kernel.
+.RE
+
+.SH X86 BOOT SEQUENCE DETAILS
+.LP
+After a PC-compatible machine is turned on, the system firmware in the \fBBIOS
+ROM\fR executes a power-on self test (POST), runs \fBBIOS\fR extensions in
+peripheral board \fBROMs,\fR and invokes software interrupt INT 19h, Bootstrap.
+The INT 19h handler typically performs the standard PC-compatible boot, which
+consists of trying to read the first physical sector from the first diskette
+drive, or, if that fails, from the first hard disk. The processor then jumps to
+the first byte of the sector image in memory.
+.SH X86 PRIMARY BOOT
+.LP
+The first sector on a hard disk contains the master boot block (first stage of
+the boot program), which contains the master boot program and the Master Boot
+Record (\fBMBR\fR) table. The master boot program has recorded the location of
+the secondary stage of the boot program and using this location, master boot
+will load and start the secondary stage of the boot program.
+
+To support booting multiple operating systems, the master boot program is also
+installed as the first sector of the partition with the illumos root file
+system. This will allow configuring third party boot programs to use the
+chainload technique to boot illumos system.
+
+If the first stage is installed on the master boot block (see the \fB-m\fR
+option of \fBinstallboot\fR(8)), then \fBstage2\fR is loaded directly
+from the Solaris partition regardless of the active partition.
+.sp
+.LP
+A similar sequence occurs for DVD or CD boot, but the master boot block location
+and contents are dictated by the El Torito specification. The El Torito boot
+will then continue in the same way as with the hard disk.
+.sp
+.LP
+Floppy booting is not longer supported. Booting from USB devices follows the
+same procedure as with hard disks.
+.sp
+.LP
+An x86 \fBMBR\fR partition for the Solaris software begins with a
+one-cylinder boot slice, which contains the boot loader \fBstage1\fR in the
+first sector, the standard Solaris disk label and volume table of contents
+(VTOC) in the second and third sectors, and in case the UFS file system is
+used for the root file system, \fBstage2\fR in the fiftieth and subsequent
+sectors.
+
+If the zfs boot is used, \fBstage2\fR is always stored in the zfs pool
+boot program area.
+.sp
+.LP
+The behavior is slightly different when a disk is using \fBEFI\fR
+partitioning.
+
+To support a UFS root file system in the \fBEFI\fR partition, the \fBstage2\fR
+must be stored on separate dedicated partition, as there is no space in UFS
+file system boot program area to store the current \fBstage2\fR. This separate
+dedicated partition is used as raw disk space, and must have enough space
+for both \fBstage1\fR and \fBstage2\fR. The type (tag) of this partition
+must be \fBboot\fR, \fBEFI\fR UUID:
+.sp
+.in +2
+.nf
+\fB6a82cb45-1dd2-11b2-99a6-080020736631\fR
+.fi
+.in -2
+.sp
+For the UUID reference, please see \fB/usr/include/sys/efi_partition.h\fR.
+
+In case of a whole disk zfs pool configuration, the \fBstage1\fR is always
+installed in the first sector of the disk, and it always loads \fBstage2\fR
+from the partition specified at the boot loader installation time.
+.sp
+.LP
+Once \fBstage2\fR is running, it will load and start the third stage boot
+program from root file system. Boot loader supports loading from the ZFS,
+UFS and PCFS file systems. The stage3 boot program defaults to be
+\fB/boot/loader\fR, and implements a user interface to load and boot the
+unix kernel.
+.sp
+.LP
+For network booting, the supported method is Intel's Preboot eXecution
+Environment (PXE) standard. When booting from the network using PXE, the system
+or network adapter BIOS uses DHCP to locate a network bootstrap program
+(\fBpxeboot\fR) on a boot server and reads it using Trivial File Transfer
+Protocol (TFTP). The BIOS executes the \fBpxeboot\fR by jumping to its first
+byte in memory. The \fBpxeboot\fR program is combined stage2 and stage2 boot
+program and implements user interface to load and boot unix kernel.
+.SH X86 KERNEL STARTUP
+.LP
+The kernel startup process is independent of the kernel loading process. During
+kernel startup, console I/O goes to the device specified by the \fBconsole\fR
+property.
+.sp
+.LP
+When booting from UFS, the root device is specified by the \fBbootpath\fR
+property, and the root file system type is specified by the \fBfstype\fR
+property. These properties should be setup by the Solaris Install/Upgrade
+process in \fB/boot/solaris/bootenv.rc\fR and can be overridden with the
+\fB-B\fR option, described above (see the \fBeeprom\fR(8) man page).
+.sp
+.LP
+When booting from ZFS, the root device is automatically passed by the boot
+loader to the kernel as a boot parameter \fB-B\fR \fBzfs-bootfs\fR. The actual
+value used by the boot loader can be observed with the \fBeeprom bootcmd\fR
+command.
+.sp
+.LP
+If the console properties are not present, console I/O defaults to \fBscreen\fR
+and \fBkeyboard\fR. The root device defaults to \fBramdisk\fR and the file
+system defaults to \fBufs\fR.
+.SH EXAMPLES
+.SS "SPARC"
+.LP
+\fBExample 1 \fRTo Boot the Default Kernel In Single-User Interactive Mode
+.sp
+.LP
+To boot the default kernel in single-user interactive mode, respond to the
+\fBok\fR prompt with one of the following:
+
+.sp
+.in +2
+.nf
+\fBboot\fR \fB\fR\fB-as\fR
+
+\fBboot\fR \fBdisk3\fR \fB-as\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRNetwork Booting
+.sp
+.LP
+To illustrate some of the subtle repercussions of various boot command line
+invocations, assume that the \fBnetwork-boot-arguments\fR are set and that
+\fBnet\fR is devaliased as shown in the commands below.
+
+.sp
+.LP
+In the following command, device arguments in the device alias are processed by
+the device driver. The network boot support package processes arguments in
+\fBnetwork-boot-arguments\fR.
+
+.sp
+.in +2
+.nf
+\fBboot net\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The command below results in no device arguments. The network boot support
+package processes arguments in \fBnetwork-boot-arguments\fR.
+
+.sp
+.in +2
+.nf
+\fBboot net:\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The command below results in no device arguments. \fBrarp\fR is the only
+network boot support package argument. \fBnetwork-boot-arguments\fR is ignored.
+
+.sp
+.in +2
+.nf
+\fBboot net:rarp\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+In the command below, the specified device arguments are honored. The network
+boot support package processes arguments in \fBnetwork-boot-arguments\fR.
+
+.sp
+.in +2
+.nf
+\fBboot net:speed=100,duplex=full\fR
+.fi
+.in -2
+.sp
+
+.SS "x86"
+.LP
+\fBExample 3 \fRTo Boot the Default Kernel In 64-bit Single-User Interactive
+Mode
+.sp
+.LP
+To boot the default kernel in single-user interactive mode, press the ESC key
+to get the boot loader \fBok\fR prompt and enter:
+
+.sp
+.in +2
+.nf
+boot -as
+.fi
+.in -2
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/etc/inittab\fR\fR
+.ad
+.sp .6
+.RS 4n
+Table in which the \fBinitdefault\fR state is specified
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/sbin/init\fR\fR
+.ad
+.sp .6
+.RS 4n
+Program that brings the system to the \fBinitdefault\fR state
+.RE
+
+.SS "64-bit SPARC Only"
+.ne 2
+.na
+\fB\fB/platform/\fR\fIplatform-name\fR\fB/kernel/sparcv9/unix\fR\fR
+.ad
+.sp .6
+.RS 4n
+Default program to boot system.
+.RE
+
+.SS "x86 Only"
+.ne 2
+.na
+\fB\fB/boot\fR\fR
+.ad
+.sp .6
+.RS 4n
+Directory containing boot-related files.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/rpool/boot/menu.lst\fR\fR
+.ad
+.sp .6
+.RS 4n
+Menu index file of bootable operating systems displayed by the boot loader.
+.sp
+\fBNote:\fR this file is located on the root ZFS pool. While many installs
+often name their root zpool 'rpool', this is not required and the
+/rpool in the path above should be substituted with the name of
+the root pool of your current system.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/platform/i86pc/kernel/unix\fR\fR
+.ad
+.sp .6
+.RS 4n
+32-bit kernel.
+.RE
+
+.SS "64-bit x86 Only"
+.ne 2
+.na
+\fB\fB/platform/i86pc/kernel/amd64/unix\fR\fR
+.ad
+.sp .6
+.RS 4n
+64-bit kernel.
+.RE
+
+.SH SEE ALSO
+.LP
+.BR kmdb (1),
+.BR uname (1),
+.BR uadmin (2),
+.BR bootparams (5),
+.BR inittab (5),
+.BR vfstab (5),
+.BR filesystem (7),
+.BR bootadm (8),
+.BR eeprom (8),
+.BR init (8),
+.BR installboot (8),
+.BR kernel (8),
+.BR monitor (8),
+.BR shutdown (8),
+.BR svcadm (8),
+.BR umountall (8),
+.BR zpool (8)
+.sp
+.LP
+RFC 903, \fIA Reverse Address Resolution Protocol\fR,
+\fBhttp://www.ietf.org/rfc/rfc903.txt\fR
+.sp
+.LP
+RFC 2131, \fIDynamic Host Configuration Protocol\fR,
+\fBhttp://www.ietf.org/rfc/rfc2131.txt\fR
+.sp
+.LP
+RFC 2132, \fIDHCP Options and BOOTP Vendor Extensions\fR,
+\fBhttp://www.ietf.org/rfc/rfc2132.txt\fR
+.sp
+.LP
+RFC 2396, \fIUniform Resource Identifiers (URI): Generic Syntax\fR,
+\fBhttp://www.ietf.org/rfc/rfc2396.txt\fR
+.sp
+.LP
+\fI\fR
+.sp
+.LP
+\fISun Hardware Platform Guide\fR
+.sp
+.LP
+\fIOpenBoot Command Reference Manual\fR
+.SH WARNINGS
+.LP
+The \fBboot\fR utility is unable to determine which files can be used as
+bootable programs. If the booting of a file that is not bootable is requested,
+the \fBboot\fR utility loads it and branches to it. What happens after that is
+unpredictable.
+.SH NOTES
+.LP
+\fIplatform-name\fR can be found using the \fB-i\fR option of \fBuname\fR(1).
+\fIhardware-class-name\fR can be found using the \fB-m\fR option of
+\fBuname\fR(1).
+.sp
+.LP
+The current release of the Solaris operating system does not support machines
+running an UltraSPARC-I CPU.
diff --git a/usr/src/man/man8/bootadm.8 b/usr/src/man/man8/bootadm.8
new file mode 100644
index 0000000000..c68644e9c1
--- /dev/null
+++ b/usr/src/man/man8/bootadm.8
@@ -0,0 +1,546 @@
+'\" te
+.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.\" Copyright 2016 Toomas Soome <tsoome@me.com>
+.\" Copyright 2018 OmniOS Community Edition (OmniOSce) Association.
+.TH BOOTADM 8 "Jul 05, 2018"
+.SH NAME
+bootadm \- manage bootability of the operating system
+.SH SYNOPSIS
+.LP
+.nf
+\fB/sbin/bootadm\fR update-archive [\fB-vnf\fR] [\fB-R\fR \fIaltroot\fR [\fB-p\fR \fIplatform\fR]]
+ [\fB-F \fIformat\fR]
+.fi
+
+.LP
+.nf
+\fB/sbin/bootadm\fR list-archive [\fB-vn\fR] [\fB-R\fR \fIaltroot\fR [\fB-p\fR \fIplatform\fR]]
+.fi
+
+.LP
+.nf
+\fB/sbin/bootadm\fR install-bootloader [\fB-Mfv\fR] [\fB-R\fR \fIaltroot\fR] [\fB-P\fR \fIpool\fR]
+.fi
+
+.LP
+.nf
+ x86 only
+.fi
+
+.LP
+.nf
+\fB/sbin/bootadm\fR set-menu [\fB-R\fR \fIaltroot\fR] \fIkey\fR=\fIvalue\fR
+.fi
+
+.LP
+.nf
+\fB/sbin/bootadm\fR list-menu [\fB-R\fR \fIaltroot\fR] [\fB-o\fR \fIkey\fR=\fIvalue\fR\fR]
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBbootadm\fR command manages the boot archive and, with x86 boot
+environments, the boot loader menu. The
+\fBupdate-archive\fR option provides a way for user to update the boot archive
+as a preventative measure or as part of a recovery procedure. The
+\fBset-menu\fR subcommand allows you to switch the \fBauto-boot\fR timeout and
+default boot entry in the boot menu.
+.sp
+.LP
+The \fBinstall-bootloader\fR subcommand installs the system boot loader on a
+ZFS pool. If ZFS pool was not specified with the \fB-P\fR option, then the boot
+loader is installed on the ZFS pool that the system booted from. If the
+system did not boot from a ZFS pool (for example, it booted an installer via PXE
+or CD-ROM) then the \fB-P\fR option is required.
+.sp
+This subcommand can be used to install, update, and repair the boot loader on a
+ZFS pool intended for booting. When disks in the ZFS pool used for booting the
+system have been replaced, one should run \fBbootadm install-bootloader\fR to
+ensure that all disks in that pool have the system boot loader installed.
+.sp
+.LP
+The \fBlist-menu\fR subcommand displays the location of the boot menu and the
+current boot menu entries. The location of the boot menu list is
+\fB/<boot pool root dataset mountpoint>/boot/menu.lst\fR.
+Use the \fBlist-menu\fR subcommand to
+locate the boot menu. See the EXAMPLES section for typical output from
+the \fBlist-menu\fR option.
+.sp
+.LP
+Note that OpenBoot PROM (OBP)-based machines, such as SPARC systems, use
+PROM variables to set boot behavior and are managed by the \fBeeprom\fR(8)
+command.
+.sp
+.LP
+The \fBbootadm\fR command determines dynamically the options supported by the
+image to be managed, so that \fBbootadm\fR invoked on one platform can be used
+to manage diskless clients of a different platform type.
+.SH SUBCOMMANDS
+.LP
+The \fBbootadm\fR command has the following subcommands:
+.sp
+.ne 2
+.na
+\fB\fBupdate-archive\fR\fR
+.ad
+.sp .6
+.RS 4n
+Updates current boot archive if required. Applies to both SPARC and x86
+platforms. The boot archive can be created in a number of different formats;
+the default format is an IEEE/P1003 Data Interchange Standard cpio archive.
+The format is configured through the following service management facility
+(\fBsmf\fR(7)) property:
+.sp
+.in +2
+.nf
+svc:/system/boot-archive:default/config/format
+.fi
+.in -2
+
+.sp
+.LP
+This property takes one of the following values:
+.RS 8n
+
+.sp
+.ne 2
+.na
+\fBcpio\fR
+.ad
+.sp .6
+.RS 4n
+IEEE/P1003 Data Interchange Standard cpio archive (default).
+.RE
+
+.sp
+.ne 2
+.na
+\fBhsfs\fR
+.ad
+.sp .6
+.RS 4n
+ISO 9660 filesystem image (only supported if \fI/usr/bin/mkisofs\fR is
+available).
+.RE
+
+.sp
+.ne 2
+.na
+\fBufs\fR
+.ad
+.sp .6
+.RS 4n
+UFS filesystem in which the files within are compressed using gzip if
+\fI/usr/bin/gzip\fR is available.
+.RE
+
+.sp
+.ne 2
+.na
+\fBufs-nocompress\fR
+.ad
+.sp .6
+.RS 4n
+UFS filesystem. The files within are not compressed but the resulting overall
+boot archive will still be compressed if \fI/usr/bin/gzip\fR is available.
+.RE
+.RE
+
+See \fBEXAMPLES\fR for how to change this value.
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBlist-archive\fR\fR
+.ad
+.sp .6
+.RS 4n
+Lists the files and directories to be included in the boot archive. Applies to
+both SPARC and x86 platforms.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBinstall-bootloader\fR\fR
+.ad
+.sp .6
+.RS 4n
+Applies platform specific method to install the system boot loader to the disks
+that are part of the selected ZFS pool (either specified with \fB-P\fR or
+the default).
+.sp
+On SPARC, the boot loader is installed in the boot area of the disk partition
+used by the ZFS pool.
+.sp
+On x86, disks are formatted using either \fBMBR Partitioning\fR (Master Boot
+Record) or using \fBGPT Partitioning\fR (GUID Partition Tables). The first
+sector on the disk that is used by the \fBBIOS\fR to find a boot loader
+is referred to as the \fBMBR\fR (Master Boot Record) and is always used
+regardless of the partition scheme.
+.sp
+On x86, disks in a ZFS pool may be a combination of either type of partitioning
+scheme. If an entire disk was added to a ZFS pool (e.g. c0t0d0), then it was
+formatted with \fBGPT\fR partitioning and the fact is recorded. The
+\fBinstall-bootloader\fR subcommand will always update the system boot loader on
+the disks. However, unless the entire disk was given a ZFS pool or the \fB-M\fR
+option is specified, the \fBMBR\fR of the disk will not updated, as the system
+cannot guarantee that the \fBMBR\fR belongs to it. If, for example, the system
+was being dual booted, a different initial boot loader may be installed there.
+.sp
+To reinstall the boot loader on some or all of the disks, the \fB-f\fR option
+must be passed to the \fBinstall-bootloader\fR subcommand to override boot
+program version checks.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBset-menu\fR\fR
+.ad
+.sp .6
+.RS 4n
+Maintain the menu configuration. The index of menu entries is listed in the
+\fBmenu.lst\fR file, and the actual configuration of the menu entry is located
+in the boot environment \fB/boot\fR directory.
+Applies to x86 platforms only.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBlist-menu\fR\fR
+.ad
+.sp .6
+.RS 4n
+Lists the location of the \fBmenu.lst\fR, as well as the current menu
+entries. This listing includes the default entry, dataset name, and the
+title of each entry. Applies to x86 platforms only.
+.RE
+
+.SH OPTIONS
+.LP
+The \fBbootadm\fR command has the following options:
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR\fR
+.ad
+.sp .6
+.RS 4n
+In an \fBupdate-archive\fR operation, force re-generation of the boot-archive
+even if no files have changed.
+
+In an \fBinstall-bootloader\fR operation, override the boot loader versioning
+constraints.
+.RE
+
+.sp
+.ne 2
+.na
+\fB-F \fIformat\fR\fR
+.ad
+.sp .6
+.RS 4n
+In an \fBupdate-archive\fR operation, select the desired archive format. The
+format can be any of the values shown above for the
+svc:/system/boot-archive:default/config/format property.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR\fR
+.ad
+.sp .6
+.RS 4n
+In an \fBupdate-archive\fR operation, archive content is checked but not
+updated.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-o\fR\fR \fIkey\fR=\fIvalue\fR
+.ad
+.sp .6
+.RS 4n
+In a \fBlist-menu\fR operation, specify the menu entry for detailed inspection.
+Possible keys are \fBentry\fR and \fBtitle\fR, taking either entry number or
+title name as values.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR \fIplatform\fR\fR
+.ad
+.sp .6
+.RS 4n
+The platform, or machine hardware class, of the client. The platform type can
+only be specified together with \fB-R\fR, and is generally useful only for
+managing a diskless client where the client is of a different platform class
+than the server. Platform must be one of \fBi86pc\fR, \fBsun4u\fR, or
+\fBsun4v\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.sp .6
+.RS 4n
+In an \fBupdate-archive\fR operation, stale files are displayed on stderr.
+.sp
+In an \fBinstall-bootloader\fR operation, display any output from tasks
+performed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-M\fR\fR
+.ad
+.sp .6
+.RS 4n
+On x86 systems, in an \fBinstall-bootloader\fR operation, additionally installs
+the system boot loader to the \fBMBR\fR (master boot record). For more
+information, see the discussion of \fBinstall-bootloader\fR in the
+\fBSUBCOMMANDS\fR section.
+.sp
+This option is not supported on non-x86 systems, and it is an error to specify
+it.
+.RE
+
+.sp
+.ne 2
+.na
+\fB-P\fR\ \fIpool\fR
+.ad
+.sp .6
+.RS 4n
+In an \fBinstall-bootloader\fR operation, the boot loader is installed on
+the disks in the ZFS pool \fIpool\fR. If the \fB-P\fR option is not specified,
+then the boot loader is installed on the ZFS pool that the system booted from.
+If the system did not boot from a ZFS pool then the \fB-P\fR option is required.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-R\fR\ \fIaltroot\fR\fR
+.ad
+.sp .6
+.RS 4n
+Operation is applied to an alternate root path. In an \fBinstall-bootloader\fR
+operation, the boot loader is still installed on the specified pool; however,
+the boot loader itself will come from the alternate root.
+.LP
+Note -
+.sp
+.RS 2
+The root file system of any non-global zones must not be referenced with the
+\fB-R\fR option. Doing so might damage the global zone's file system, might
+compromise the security of the global zone, and might damage the non-global
+zone's file system. See \fBzones\fR(7).
+.RE
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIkey\fR=\fIvalue\fR\fR
+.ad
+.sp .6
+.RS 4n
+Possible values are:
+.sp
+.ne 2
+.na
+\fB\fBdefault=\fR\fIentrynum\fR\fR
+.ad
+.sp .6
+.RS 4n
+The item number (for example, 0, 1, or 2) in the boot menu designating the
+operating system to boot when the timer expires.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBtimeout=\fR\fIseconds\fR\fR
+.ad
+.sp .6
+.RS 4n
+The number of seconds before the operating system designated by the default
+item number is booted. If the value is -1, auto boot is disabled.
+.RE
+
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRUpdating the Current Boot Archive
+.sp
+.LP
+The following command updates the current boot archive:
+
+.sp
+.in +2
+.nf
+# bootadm update-archive
+.fi
+.in -2
+
+.LP
+\fBExample 2 \fRUpdating the Boot Archive on an Alternate Root
+.sp
+.LP
+The following command updates the boot archive on an alternate root:
+
+.sp
+.in +2
+.nf
+# bootadm update-archive -R /a
+.fi
+.in -2
+
+.LP
+\fBExample 3 \fRListing Boot Menu Entries and Location of Boot Menu
+.sp
+.LP
+The following command lists the boot environments and the location of the
+\fBmenu.lst\fR:
+
+.sp
+.in +2
+.nf
+# bootadm list-menu
+the location for the active menu is: /raid/boot/menu.lst
+Index Default Dataset Menu
+0 - raid/ROOT/test-182 test-182
+1 - raid/ROOT/test-183 test-183
+2 * raid/ROOT/test-184 test-184
+.fi
+.in -2
+
+.LP
+\fBExample 4 \fRSwitching Default Boot Entry
+.sp
+.LP
+The following command refers to the menu displayed in the previous example. The
+user selects test-183 (item 1).
+
+.sp
+.in +2
+.nf
+# bootadm set-menu default=1
+.fi
+.in -2
+
+.LP
+\fBExample 5 \fRChanging archive format
+.sp
+.LP
+The following command changes the boot archive format to \fIufs\fR
+
+.sp
+.in +2
+.nf
+# svccfg -s system/boot-archive:default setprop config/format = ufs
+# svcadm refresh system/boot-archive:default
+# bootadm update-archive -f
+.fi
+.in -2
+
+.LP
+\fBExample 6 \fRDetailed information about menu entry.
+.sp
+.LP
+The following command lists more detailed information about a boot menu entry:
+
+.sp
+.in +2
+.nf
+# bootadm list-menu -o entry=2
+the location for the active menu is: /raid/boot/menu.lst
+
+Title: test-184
+Timeout: 10
+Console: text
+Bootfs: raid/ROOT/test-184
+Kernel: /platform/i86pc/kernel/amd64/unix
+Boot-args: "-v"
+
+Modules:
+Name: boot_archive
+Path: /platform/i86pc/${ISADIR}/boot_archive
+Type: rootfs
+Status: Load
+
+Name: boot_archive.hash
+Path: /platform/i86pc/${ISADIR}/boot_archive.hash
+Type: hash
+Status: Load
+
+Name: system
+Path: /boot/modules/etc/system
+Type: file
+Hash: 4f4fe2d2dfae393a2a87ce29e3c71b803938c5fb
+Flags: name=etc/system
+Status: Load
+
+.fi
+.in -2
+
+.SH EXIT STATUS
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.sp .6
+.RS 4n
+The command completed successfully.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB1\fR\fR
+.ad
+.sp .6
+.RS 4n
+The command exited due to an error.
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Committed
+.TE
+
+.SH SEE ALSO
+.LP
+.BR attributes (7),
+.BR beadm (8),
+.BR boot (8),
+.BR installboot (8)
diff --git a/usr/src/man/man8/busstat.8 b/usr/src/man/man8/busstat.8
new file mode 100644
index 0000000000..7a30929a8c
--- /dev/null
+++ b/usr/src/man/man8/busstat.8
@@ -0,0 +1,324 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 1999 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH BUSSTAT 8 "Nov 1, 1999"
+.SH NAME
+busstat \- report bus-related performance statistics
+.SH SYNOPSIS
+.LP
+.nf
+\fBbusstat\fR \fB-e\fR \fIdevice-inst\fR | \fB-h\fR | \fB-l\fR
+.fi
+
+.LP
+.nf
+\fBbusstat\fR [\fB-a\fR] [\fB-n\fR]
+ [\fB-w \fR \fIdevice-inst\fR [,pic0=\fIevent\fR,pic\fIn\fR=\fIevent\fR ]]...
+ [\fB-r\fR \fIdevice-inst\fR]... [\fIinterval \fR [\fIcount\fR]]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBbusstat\fR provides access to the bus-related performance counters in the
+system. These performance counters allow for the measurement of statistics like
+hardware clock cycles, bus statistics including \fBDMA\fR and cache coherency
+transactions on a multiprocessor system. Each bus device that supports these
+counters can be programmed to count a number of events from a specified list.
+Each device supports one or more Performance Instrumentation Counters
+(\fBPIC\fR) that are capable of counting events independently of each other.
+.sp
+.LP
+Separate events can be selected for each \fBPIC\fR on each instance of these
+devices. \fBbusstat\fR summarizes the counts over the last interval seconds,
+repeating forever. If a count is given, the statistics are repeated count
+times.
+.sp
+.LP
+ Only root users can program these counters. Non-root users have the option of
+reading the counters that have been programmed by a root user.
+.sp
+.LP
+The default value for the \fIinterval\fR argument is 1 second, and the default
+\fIcount\fR is unlimited.
+.sp
+.LP
+The devices that export these counters are highly platform-dependent and the
+data may be difficult to interpret without an in-depth understanding of the
+operation of the components that are being measured and of the system they
+reside in.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-a\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display absolute counter values. The default is \fBdelta\fR values.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-e\fR \fIdevice-inst\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display the list of events that the specified device supports for each pic.
+.sp
+Specify \fIdevice-inst\fR as device (\fBname\fR) followed by an optional
+instance number. If an instance number is specified, the events for that
+instance are displayed. If no instance number is specified, the events for the
+first instance of the specified device are displayed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-h\fR\fR
+.ad
+.sp .6
+.RS 4n
+Print a usage message.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR\fR
+.ad
+.sp .6
+.RS 4n
+List the devices in the system which support performance counters.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR\fR
+.ad
+.sp .6
+.RS 4n
+Do not display a title in the output. The default is to display titles.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-r\fR \fIdevice-inst\fR\fR
+.ad
+.sp .6
+.RS 4n
+Read and display all \fBpic\fR values for the specified device
+.sp
+Specify \fIdevice-inst\fR as \fIdevice\fR (\fBname\fR) followed by \fIinstance
+number\fR, if specifying an instance number of a device whose counters are to
+be read and displayed. If all instances of this device are to be read, use
+\fIdevice\fR (\fBname\fR) without an instance number. All \fBpic\fR values will
+be sampled when using the \fB-r\fR option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-w\fR \fIdevice-inst\fR [,pic0=\fIevent\fR] [,pic\fIn\fR=\fIevent\fR] \fR
+.ad
+.sp .6
+.RS 4n
+Program (write) the specified devices to count the specified events. Write
+access to the counters is restricted to root users only. Non-root users can use
+\fB-r\fR option.
+.sp
+Specify \fIdevice-inst\fR as \fIdevice\fR (\fBname\fR) followed by an optional
+\fIinstance number\fR. If specifying an instance number of a device to program
+these events on. If all instances of this device are to be programmed the same,
+then use \fIdevice\fR without an instance number. Specify an event to be
+counted for a specified \fBpic\fR by providing a comma separated list of
+\fBpic\fIn\fR=\fR\fIevent\fR values.
+.sp
+The \fB-e\fR option displays all valid event names for each device. Any devices
+that are programmed will be sampled every interval seconds and repeated count
+times. It is recommended that the interval specified is small enough to ensure
+that counter wraparound will be detected. The rate at which counters
+wraparound varies from device to device. If a user is programming events using
+the \fB-w\fR option and \fBbusstat\fR detects that another user has changed the
+events that are being counted, the tool will terminate as the programmed
+devices are now being controlled by another user. Only one user can be
+programming a device instance at any one time. Extra devices can be sampled
+using the \fB-r\fR option. Using multiple instances of the \fB-w\fR option on
+the same command line, with the same \fIdevice-inst\fR specifying a different
+list of events for the \fBpic\fRs will give the effect of multiplexing for that
+device. \fBbusstat\fR will switch between the list of events for that device
+every interval seconds. Event can be a string representing the event name, or
+even a number representing the bit pattern to be programmed into the
+Performance Control Register (\fBPCR\fR). This assumes explicit knowledge of
+the meaning of the control register bits for a device. The number can be
+specified in hexadecimal, decimal, or octal, using the usual conventions of
+\fBstrtol\fR(3C).
+.RE
+
+.SH EXIT STATUS
+.sp
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB0\fR
+.ad
+.RS 5n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB1\fR
+.ad
+.RS 5n
+An error occurred.
+.RE
+
+.sp
+.ne 2
+.na
+\fB2\fR
+.ad
+.RS 5n
+Another user is writing to the same devices.
+.RE
+
+.SH EXAMPLES
+.SS "SPARC Only"
+.LP
+\fBExample 1 \fRProgramming and monitoring the Address Controller counters
+.sp
+.LP
+In this example, \fBac0\fR refers to the Address Controller instance 0. The
+counters are programmed to count Memory Bank stalls on an Ultra Enterprise
+system at 10 second intervals with the values displayed in absolute form
+instead of deltas.
+
+.sp
+.in +2
+.nf
+# busstat -a -w ac0,pic0=mem_bank0_stall,pic1=mem_bank1_stall 10
+time dev event0 pic0 event1 pic1
+10 ac0 mem_bank0_stall 1234 mem_bank1_stall 5678
+20 ac0 mem_bank0_stall 5678 mem_bank1_stall 12345
+30 ac0 mem_bank0_stall 12345 mem_bank1_stall 56789
+\&...
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+For a complete list of the supported events for a device, use the \fB-e\fR
+option.
+
+.LP
+\fBExample 2 \fRProgramming and monitoring the counters on all instances of the
+Address Controller
+.sp
+.LP
+In this example, \fBac\fR refers to all \fBac\fR instances. This example
+programs all instances of the Address Controller counters to \fBcount_clock\fR
+cycles and \fBmem_bank0_rds\fR at 2 second intervals, 100 times, displaying the
+values as deltas.
+
+.sp
+.in +2
+.nf
+# busstat -w ac,pic0=clock_cycles,pic1=mem_bank0_rds 2 100
+time dev event0 pic0 event1 pic1
+2 ac0 clock_cycles 167242902 mem_bank0_rds 3144
+2 ac1 clock_cycles 167254476 mem_bank0_rds 1392
+4 ac0 clock_cycles 168025190 mem_bank0_rds 40302
+4 ac1 clock_cycles 168024056 mem_bank0_rds 40580
+\&...
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRMonitoring the events being counted
+.sp
+.LP
+This example monitors the events that are being counted on the sbus1 device,
+100 times at 1 second intervals. It suggests that a root user has changed the
+events that \fBsbus1\fR was counting to be \fBdvma_tlb_misses\fR and interrupts
+instead of \fBpio_cycles\fR.
+
+.sp
+.in +2
+.nf
+% busstat -r sbus0 1 100
+
+time dev event0 pic0 event1 pic1
+1 sbus1 pio_cycles 2321 pio_cycles 2321
+2 sbus1 pio_cycles 48 pio_cycles 48
+3 sbus1 pio_cycles 49 pio_cycles 49
+4 sbus1 pio_cycles 2281 pio_cycles 2281
+5 sbus1 dvma_tlb_misses 0 interrupts 0
+6 sbus1 dvma_tlb_misses 6 interrupts 2
+7 sbus1 dvma_tlb_misses 8 interrupts 11
+\&...
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 4 \fREvent Multiplexing
+.sp
+.LP
+This example programs \fBac0\fR to alternate between counting (clock cycles,
+\fBmem_bank0_rds\fR) and (\fBaddr_pkts\fR, \fBdata_pkts\fR) at 2 second
+intervals while also monitoring what \fBac1\fR is counting :
+
+.sp
+.LP
+It shows the expected output of the above \fBbusstat\fR command. Another root
+user on the machine has changed the events that this user had programmed and
+\fBbusstat\fR has detected this and terminates the command with a message.
+
+.sp
+.in +2
+.nf
+# busstat -w ac0,pic0=clock_cycles,pic1=mem_bank0_rds \e
+ -w ac0,pic0=addr_pkts,pic1=data_pkts \e
+ -r ac1 2
+
+time dev event0 pic0 event1 pic1
+2 ac0 addr_pkts 12866 data_pkts 17015
+2 ac1 rio_pkts 385 rio_pkts 385
+4 ac0 clock_cycles 168018914 mem_bank0_rds 2865
+4 ac1 rio_pkts 506 rio_pkts 506
+6 ac0 addr_pkts 144236 data_pkts 149223
+6 ac1 rio_pkts 522 rio_pkts 522
+8 ac0 clock_cycles 168021245 mem_bank0_rds 2564
+8 ac1 rio_pkts 387 rio_pkts 387
+10 ac0 addr_pkts 144292 data_pkts 159645
+10 ac1 rio_pkts 506 rio_pkts 506
+12 ac0 clock_cycles 168020364 mem_bank0_rds 2665
+12 ac1 rio_pkts 522 rio_pkts 522
+busstat: events changed (possibly by another busstat).
+#
+.fi
+.in -2
+.sp
+
+.SH SEE ALSO
+.sp
+.LP
+.BR strtol (3C),
+.BR attributes (7),
+.BR iostat (8),
+.BR mpstat (8),
+.BR vmstat (8)
diff --git a/usr/src/man/man8/captoinfo.8 b/usr/src/man/man8/captoinfo.8
new file mode 100644
index 0000000000..4f4861d1f2
--- /dev/null
+++ b/usr/src/man/man8/captoinfo.8
@@ -0,0 +1,104 @@
+'\" te
+.\" Copyright (c) 1996, Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH CAPTOINFO 8 "May 18, 1993"
+.SH NAME
+captoinfo \- convert a termcap description into a terminfo description
+.SH SYNOPSIS
+.LP
+.nf
+\fBcaptoinfo\fR [\fB-1\fR] [\fB-v\fR]... [\fB-V\fR] [\fB-w\fR \fIwidth\fR] \fIfilename\fR...
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBcaptoinfo\fR looks in \fIfilename\fR for \fBtermcap\fR descriptions. For
+each one found, an equivalent \fBterminfo\fR description is written to
+standard output, along with any comments found. A description which is
+expressed as relative to another description (as specified in the \fBtermcap\fR
+\fBtc = field\fR) is reduced to the minimum superset before being displayed.
+.sp
+.LP
+If no \fIfilename\fR is given, then the environment variable
+\fB\fR\fBTERM\fR\fBCAP \fR is used for the filename or entry. If
+\fB\fR\fBTERM\fR\fBCAP \fR is a full pathname to a file, only the terminal
+whose name is specified in the environment variable \fBTERM\fR is extracted
+from that file. If the environment variable \fB\fR\fBTERM\fR\fBCAP \fR is not
+set, then the file \fB/usr/share/lib/termcap\fR is read.
+.SH OPTIONS
+.sp
+.ne 2
+.na
+\fB\fB\(mi1\fR\fR
+.ad
+.RS 12n
+Display the fields one to a line. Otherwise, the fields are printed several to
+a line, with a maximum width of 60 characters.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.RS 12n
+Display tracing information on the standard error as the program runs.
+Specifying additional \fB-v\fR options displays more detailed information.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-V\fR\fR
+.ad
+.RS 12n
+Display the version of the program in use on the standard error and then exit.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-w\fR\fI width\fR\fR
+.ad
+.RS 12n
+Change the output to \fIwidth\fR characters.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/usr/share/lib/terminfo/?/*\fR\fR
+.ad
+.sp .6
+.RS 4n
+compiled terminal description database
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/share/lib/termcap\fR\fR
+.ad
+.sp .6
+.RS 4n
+
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR curses (3CURSES),
+.BR terminfo (5),
+.BR attributes (7),
+.BR infocmp (8)
+.SH NOTES
+.sp
+.LP
+\fBcaptoinfo\fR should be used to convert \fBtermcap\fR entries to
+\fBterminfo\fR entries because the \fBtermcap\fR database may not be supplied
+in future releases.
diff --git a/usr/src/man/man8/catman.8 b/usr/src/man/man8/catman.8
new file mode 100644
index 0000000000..393e4b94bb
--- /dev/null
+++ b/usr/src/man/man8/catman.8
@@ -0,0 +1,72 @@
+.\"
+.\" This file and its contents are supplied under the terms of the
+.\" Common Development and Distribution License ("CDDL"), version 1.0.
+.\" You may only use this file in accordance with the terms of version
+.\" 1.0 of the CDDL.
+.\"
+.\" A full copy of the text of the CDDL should have accompanied this
+.\" source. A copy of the CDDL is also available via the Internet at
+.\" http://www.illumos.org/license/CDDL.
+.\"
+.\"
+.\" Copyright 2014 Garrett D'Amore <garrett@damore.org>
+.\"
+.Dd April 9, 2016
+.Dt CATMAN 8
+.Os
+.Sh NAME
+.Nm catman
+.Nd generate
+.Nm whatis
+database files
+.Sh SYNOPSIS
+.Nm
+.Op Fl M Ar path
+.Op Fl w
+.Sh DESCRIPTION
+The
+.Nm
+utility generates a set of
+.Nm whatis
+database files suitable for use with
+.Xr apropos 1
+and
+.Xr whatis 1 .
+It is supplied for compatibility reasons.
+The same databases can be generated using the
+.Fl w
+option with
+.Xr man 1 ,
+and that command should be used instead.
+.Sh OPTIONS
+.Bl -tag -width ".Fl d"
+.It Fl M Ar path
+Generate the
+.Nm whatis
+database files within the specified colon separated manual paths.
+Overrides the
+.Ev MANPATH
+environment variable.
+.It Fl w
+This option is present for backwards compatibility, and is ignored.
+.El
+.Sh ENVIRONMENT
+The following environment variables affect the execution of
+.Nm :
+.Bl -tag -width ".Ev MANPATH"
+.It Ev MANPATH
+Used to specify a colon separated list of manual paths within
+which to generate
+.Nm whatis
+database files.
+.El
+.Sh EXIT STATUS
+.Ex -std
+.Sh INTERFACE STABILITY
+.Nm "Obsolete Committed" .
+.Sh CODE SET INDEPENDENCE
+Enabled.
+.Sh SEE ALSO
+.Xr apropos 1 ,
+.Xr man 1 ,
+.Xr whatis 1
diff --git a/usr/src/man/man8/ccidadm.8 b/usr/src/man/man8/ccidadm.8
new file mode 100644
index 0000000000..eafbeeab96
--- /dev/null
+++ b/usr/src/man/man8/ccidadm.8
@@ -0,0 +1,190 @@
+.\"
+.\" This file and its contents are supplied under the terms of the
+.\" Common Development and Distribution License ("CDDL"), version 1.0.
+.\" You may only use this file in accordance with the terms of version
+.\" 1.0 of the CDDL.
+.\"
+.\" A full copy of the text of the CDDL should have accompanied this
+.\" source. A copy of the CDDL is also available via the Internet at
+.\" http://www.illumos.org/license/CDDL.
+.\"
+.\"
+.\" Copyright 2019 Joyent, Inc.
+.\"
+.Dd September 12, 2020
+.Dt CCIDADM 8
+.Os
+.Sh NAME
+.Nm ccidadm
+.Nd CCID administration utility
+.Sh SYNOPSIS
+.Nm
+.Cm list
+.Nm
+.Cm atr
+.Op Fl pvx
+.Op Ar device
+.Nm
+.Cm reader
+.Op Ar device
+.Sh DESCRIPTION
+The
+.Nm
+utility can be used to list the CCID controllers and their slots known to the
+.Xr ccid 4D
+driver, query the features and capabilities of a CCID controller, and print
+the ATR of an ICC (integrated circuit card) that is inserted in a slot on an
+CCID controller.
+.Pp
+The information returned by the hardware is printed by
+.Nm
+in a human-readable form where applicable.
+.Sh ARGUMENTS
+.Nm
+expects the following kinds of arguments:
+.Bl -tag -width "device"
+.It Ar command
+Any command
+.Nm
+understands.
+See section
+.Sx COMMANDS
+for more information.
+.It Ar device
+Specifies a CCID reader or a slot, either as absolute path to the device node
+or in a short-hand form.
+The short-hand form consists of the reader instance, specified by the driver
+name
+.Qq ccid
+followed by the instance number of the reader, and optionally a slot instance
+separated by a
+.Qq / ,
+consisting of the word
+.Qq slot
+followed by the slot number.
+Here's an example for slot 1 on ccid reader 5:
+.Qq ccid5/slot1
+.El
+.Sh COMMANDS
+.Bl -tag -width ""
+.It Xo
+.Nm
+.Cm list
+.Xc
+Lists the CCID controllers and their slots known to the system and prints their
+product name, device node, card state, and the transport protocol in use.
+.It Xo
+.Nm
+.Cm atr
+.Op Fl pvx
+.Op Ar device
+.Xc
+Prints the ATR of an ICC that is inserted in the specified slot.
+If a device is specified it must refer to a certain slot.
+If no device is specified the command will print the ATR of all inserted slots
+in the system.
+A human-readable summary of the ATR data is printed when no flags are given.
+The following options can be used to alter the output of the
+.Cm atr
+command:
+.Bl -tag -width Ds
+.It Fl v
+Verbose output, the individual bytes of the ATR are printed and decoded
+in a human-readable form.
+Additionally the historic data in the ATR is printed as a hexadecimal dump.
+.It Fl x
+The complete ATR is printed as a hexadecimal dump.
+.El
+.It Xo
+.Nm
+.Cm reader
+.Op Ar device
+.Xc
+Print the capabilities of the specified CCID reader.
+Specifying slot number is not required but can optionally be specified.
+If no device is given, the command will print the capabilities of all attached
+CCID readers.
+.El
+.Sh EXIT STATUS
+The
+.Nm
+utility exits 0 on success, 1 on any error opening or accessing the device, and
+2 if no command or an unknown command are given.
+.Sh EXAMPLES
+.Bl -tag -width ""
+.It Sy Example 1: List all CCID devices
+.Bd -literal
+# ccidadm list
+PRODUCT DEVICE CARD STATE TRANSPORT SUPPORTED
+Yubikey 4 OTP+U2F+CCID ccid0/slot0 activated APDU (T=1) supported
+Yubikey 4 OTP+U2F+CCID ccid1/slot0 unactivated APDU supported
+Smart Card Reader USB ccid2/slot0 missing TPDU unsupported
+Smart Card Reader USB ccid3/slot0 unactivated TPDU unsupported
+.Ed
+.It Sy Example 2: Get the ATR of a Yubikey
+.Bd -literal
+# ccidadm atr ccid0/slot0
+ATR for ccid0/slot0 (18 bytes):
+ICC supports protocol(s): T=1
+Card protocol is negotiable; starts with default T=1 parameters
+Reader will run ICC at ICC's Di/Fi values
+T=1 properties that would be negotiated:
+ + Fi/Fmax Index: 1 (Fi 372/Fmax 5 MHz)
+ + Di Index: 3 (Di 4)
+ + Checksum: LRC
+ + Extra Guardtime: 0
+ + BWI: 1
+ + CWI: 5
+ + Clock Stop: 0 (disallowed)
+ + IFSC: 254
+ + CCID Supports NAD: no
+.Ed
+.It Sy Example 2: Get capabilities of a Smart Card Reader
+.Bd -literal
+# ccidadm reader ccid3
+Reader ccid3, CCID class v1.0 device:
+ Product: Smart Card Reader USB
+ Serial: <unknown>
+ Slots Present: 1
+ Maximum Busy Slots: 1
+ Supported Voltages:
+ + 5.0 V
+ + 3.0 V
+ + 1.8 V
+ Supported Protocols:
+ + T=0
+ + T=1
+ Default Clock: 3.69 MHz
+ Maximum Clock: 3.69 MHz
+ Supported Clock Rates: 1
+ Default Data Rate: 9.92 Kbps
+ Maximum Data Rate: 318 Kbps
+ Supported Data Rates: 19
+ Maximum IFSD (T=1 only): 254
+ Synchronous Protocols Supported:
+ + 2-Wire Support
+ + 3-Wire Support
+ + I2C Support
+ Device Features:
+ + Automatic ICC clock frequency change
+ + Automatic baud rate change
+ + Automatic PPS made by CCID
+ + CCID can set ICC in clock stop mode
+ + NAD value other than zero accepted
+ + TPDU support
+ Maximum Message Length: 271 bytes
+.Ed
+.El
+.Sh INTERFACE STABILITY
+The command line interface of
+.Nm
+is
+.Sy Evolving .
+The output of
+.Nm
+is
+.Sy Not-an-Interface
+and may change any time.
+.Sh SEE ALSO
+.Xr ccid 4D ,
+.Xr cfgadm 8
diff --git a/usr/src/man/man8/cfgadm.8 b/usr/src/man/man8/cfgadm.8
new file mode 100644
index 0000000000..be7c6b8c44
--- /dev/null
+++ b/usr/src/man/man8/cfgadm.8
@@ -0,0 +1,950 @@
+'\" te
+.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH CFGADM 8 "September 12, 2020"
+.SH NAME
+cfgadm \- configuration administration
+.SH SYNOPSIS
+.nf
+\fB/usr/sbin/cfgadm\fR [\fB-f\fR] [\fB-y\fR | \fB-n\fR] [\fB-v\fR] [\fB-o\fR \fIhardware_options\fR]
+ \fB-c\fR \fIfunction\fR \fIap_id\fR...
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/cfgadm\fR [\fB-f\fR] [\fB-y\fR | \fB-n\fR] [\fB-v\fR] [\fB-o\fR \fIhardware_options\fR]
+ \fB-x\fR \fIhardware_function\fR \fIap_id\fR...
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/cfgadm\fR [\fB-v\fR] [\fB-a\fR] [\fB-s\fR \fIlisting_options\fR]
+ [\fB-o\fR \fIhardware_options\fR] [\fB-l\fR [\fIap_id\fR | \fIap_type\fR]]
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/cfgadm\fR [\fB-v\fR] [\fB-o\fR \fIhardware_options\fR] \fB-t\fR \fIap_id\fR...
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/cfgadm\fR [\fB-v\fR] [\fB-o\fR \fIhardware_options\fR] \fB-h\fR
+ [\fIap_id\fR | \fIap_type\fR]
+.fi
+
+.SH DESCRIPTION
+The \fBcfgadm\fR command provides configuration administration operations on
+dynamically reconfigurable hardware resources. These operations include
+displaying status, (\fB-l\fR), initiating testing, (\fB-t\fR), invoking
+configuration state changes, (\fB-c\fR), invoking hardware specific functions,
+(\fB-x\fR), and obtaining configuration administration help messages
+(\fB-h\fR). Configuration administration is performed at \fBattachment
+points\fR, which are places where system software supports dynamic
+reconfiguration of hardware resources during continued operation of Solaris.
+.sp
+.LP
+Configuration administration makes a distinction between hardware resources
+that are physically present in the machine and hardware resources that are
+configured and visible to Solaris. The nature of configuration administration
+functions are hardware specific, and are performed by calling hardware specific
+libraries.
+.sp
+.LP
+Configuration administration operates on an \fBattachment point\fR. Hardware
+resources located at attachment points can or can not be physically replaceable
+during system operation, but are dynamically reconfigurable by way of the
+configuration administration interfaces.
+.sp
+.LP
+An attachment point defines two unique elements, which are distinct from the
+hardware resources that exist beyond the attachment point. The two elements of
+an attachment point are a \fBreceptacle\fR and an \fBoccupant\fR. Physical
+insertion or removal of hardware resources occurs at attachment points and
+results in a receptacle gaining or losing an occupant. Configuration
+administration supports the physical insertion and removal operations as well
+as other configuration administration functions at an attachment point.
+.sp
+.LP
+Attachment points have associated state and condition information. The
+configuration administration interfaces provide control for transitioning
+attachment point states. A receptacle can exist in one of three states:
+\fBempty\fR, \fBdisconnected\fR or \fBconnected\fR, while an occupant can exist
+in one of two states: \fBconfigured\fR or \fBunconfigured\fR.
+.sp
+.LP
+A receptacle can provide the \fBempty\fR state, which is the normal state of a
+receptacle when the attachment point has no occupants. A receptacle can also
+provide the \fBdisconnected\fR state if it has the capability of isolating its
+occupants from normal system access. Typically this state is used for various
+hardware specific testing prior to bringing the occupant's resources into full
+use by the system, or as a step in preparing an occupant for physical removal
+or reconfiguration. A receptacle in the disconnected state isolates its
+occupant from the system as much as its hardware allows, but can provide access
+for testing and setup. A receptacle must provide the \fBconnected\fR state,
+which allows normal access to hardware resources contained on any occupants.
+The connected state is the normal state of a receptacle that contains an
+occupant and that is not currently undergoing configuration administration
+operations.
+.sp
+.LP
+The hardware resources contained on an occupant in the \fBunconfigured\fR state
+are not represented by normal Solaris data structures and are thus not
+available for use by Solaris. Operations allowed on an unconfigured occupant
+are limited to configuration administration operations. The hardware resources
+of an occupant in the \fBconfigured\fR state are represented by normal Solaris
+data structures and thus some or all of those hardware resources can be in use
+by Solaris. All occupants provide both the \fBconfigured\fR and
+\fBunconfigured\fR states.
+.sp
+.LP
+An attachment point can be in one of five conditions: \fBunknown\fR, \fBok\fR,
+\fBfailing\fR, \fBfailed\fR, or \fBunusable\fR. An attachment point can enter
+the system in any condition depending upon results of power-on tests and
+non-volatile record keeping.
+.sp
+.LP
+An attachment point with an occupant in the \fBconfigured\fR state is in one of
+four conditions: \fBunknown\fR, \fBok\fR, \fBfailing\fR, or \fBfailed\fR. If
+the condition is not \fBfailing\fR or \fBfailed\fR an attachment point can
+change to \fBfailing\fR during the course of operation if a hardware dependent
+recoverable error threshold is exceeded. If the condition is not \fBfailed\fR
+an attachment point can change to \fBfailed\fR during operation as a result of
+an unrecoverable error.
+.sp
+.LP
+An attachment point with an occupant in the \fBunconfigured\fR state can be in
+any of the defined conditions. The condition of an attachment point with an
+\fBunconfigured\fR occupant can decay from \fBok\fR to \fBunknown\fR after a
+machine dependent time threshold. Initiating a test function changes the
+attachment point's condition to \fBok\fR, \fBfailing\fR or \fBfailed\fR
+depending on the outcome of the test. An attachment point that does not provide
+a test function can leave the attachment point in the \fBunknown\fR condition.
+If a test is interrupted, the attachment point's condition can be set to the
+previous condition, \fBunknown\fR or \fBfailed\fR. An attachment point in the
+\fBunknown\fR, \fBok\fR, \fBfailing\fR, or \fBfailed\fR conditions can be
+re-tested.
+.sp
+.LP
+An attachment point can exist in the \fBunusable\fR condition for a variety of
+reasons, such as inadequate power or cooling for the receptacle, an occupant
+that is unidentifiable, unsupported, incorrectly configured, etc. An attachment
+point in the \fBunusable\fR condition can never be used by the system. It
+typically remains in this condition until the physical cause is remedied.
+.sp
+.LP
+An attachment point also maintains busy information that indicates when a state
+change is in progress or the condition is being reevaluated.
+.sp
+.LP
+Attachment points are referred to using hardware specific identifiers
+(\fIap_id\fRs) that are related to the type and location of the attachment
+points in the system device hierarchy. An \fIap_id\fR can not be ambiguous, it
+must identify a single attachment point. Two types of \fIap_id\fR
+specifications are supported: physical and logical. A physical \fIap_id\fR
+contains a fully specified pathname, while a logical \fIap_id\fR contains a
+shorthand notation that identifies an attachment point in a more user-friendly
+way.
+.sp
+.LP
+For example, an attachment point representing a system's backplane slot number
+\fB7\fR could have a physical \fIap_id\fR of
+\fB/devices/central/fhc/sysctrl:slot7\fR while the logical \fIap_id\fR could be
+\fBsystem:slot7\fR. Another example, the third receptacle on the second \fBPCI
+I/O\fR bus on a system could have a logical \fIap_id\fR of \fBpci2:plug3\fR.
+.sp
+.LP
+Attachment points may also be created dynamically. A dynamic attachment point
+is named relative to a base attachment point which is present in the system.
+\fBap_id\fRs for dynamic attachment points consist of a base component followed
+by two colons (\fB::\fR) and a dynamic component. The base component is the
+base attachment point \fBap_id\fR. The dynamic component is hardware specific
+and generated by the corresponding hardware specific library.
+.sp
+.LP
+For example, consider a base attachment point, which represents a \fBSCSI
+HBA\fR, with the physical \fBap_id\fR
+\fB/devices/sbus@1f,0/SUNW,fas@e,8800000:scsi\fR and logical \fBap_id c0\fR. A
+disk attached to this \fBSCSI HBA\fR could be represented by a dynamic
+attachment point with logical \fBap_id\fR \fBc0::dsk/c0t0d0\fR where \fBc0\fR
+is the base component and \fBdsk/c0t0d0\fR is the hardware specific dynamic
+component. Similarly the physical \fBap_id\fR for this dynamic attachment point
+would be: \fB/devices/sbus@1f,0/SUNW,fas@e,8800000:scsi::dsk/c0t0d0\fR.
+.sp
+.LP
+An \fIap_type\fR is a partial form of a logical \fBap_id\fR that can be
+ambiguous and not specify a particular attachment point. An \fIap_type\fR is a
+substring of the portion of the logical \fBap_id\fR up to but not including the
+colon (\fB:\fR) separator. For example, an \fIap_type\fR of \fBpci\fR would
+show all attachment points whose logical \fIap_id\fRs begin with \fBpci\fR.
+.sp
+.LP
+The use of \fIap_types\fR is discouraged. The new select sub-option to the
+\fB-s\fR option provides a more general and flexible mechanism for selecting
+attachment points. See \fBOPTIONS\fR.
+.sp
+.LP
+The \fBcfgadm\fR command interacts primarily with hardware dependent functions
+contained in hardware specific libraries and thus its behavior is hardware
+dependent.
+.sp
+.LP
+For each configuration administration operation a service interruption can be
+required. Should the completion of the function requested require a noticeable
+service interruption to interactive users, a prompt is output on the standard
+error output for confirmation on the standard input before the function is
+started. Confirmation can be overridden using the \fB-y\fR or \fB-n\fR options
+to always answer yes or no respectively. Hardware specific options, such as
+test level, are supplied as sub-options using the \fB-o\fR option.
+.sp
+.LP
+Operations that change the state of the system configuration are audited by the
+system log daemon \fBsyslogd\fR(8).
+.sp
+.LP
+The arguments for this command conform to the \fBgetopt\fR(3C) and
+\fBgetsubopt\fR(3C) syntax convention.
+.SH OPTIONS
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-a\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies that the \fB-l\fR option must also list dynamic attachment points.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-c\fR\fIfunction\fR\fR
+.ad
+.sp .6
+.RS 4n
+Performs the state change \fIfunction\fR on the attachment point specified by
+\fIap_id.\fR
+.sp
+Specify \fIfunction\fR as \fBinsert\fR, \fBremove\fR, \fBdisconnect\fR,
+\fBconnect\fR, \fBconfigure\fR or \fBunconfigure\fR. These functions cause
+state transitions at the attachment point by calling hardware specific library
+routines and are defined in the following list.
+.sp
+.ne 2
+.na
+\fB\fBinsert\fR\fR
+.ad
+.RS 15n
+Performs operations that allows the user to manually insert an occupant or to
+activate a hardware supplied mechanism that performs the physical insertion.
+\fBinsert\fR can have hardware specific side effects that temporarily suspend
+activity in portions of the system. In such cases the hardware specific library
+generates appropriate warning messages and informs the user of any special
+considerations or procedures unique to that hardware. Various hardware specific
+errors can cause this function to fail and set the receptacle condition to
+\fBunusable\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBremove\fR\fR
+.ad
+.RS 15n
+Performs operations that allow the user to manually remove an occupant or to
+activate a hardware supplied mechanism to perform the physical removal.
+\fBremove\fR can have hardware specific side effects that temporarily suspend
+activity in portions of the system. In such cases the hardware specific library
+generates appropriate warning messages and informs the user of any special
+considerations or procedures unique to that hardware. Various hardware specific
+errors can cause this function to fail and set the receptacle condition to
+unusable.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdisconnect\fR\fR
+.ad
+.RS 15n
+Performs hardware specific operations to put a receptacle in the disconnected
+state, which can prevent an occupant from operating in a normal fashion through
+the receptacle.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBconnect\fR\fR
+.ad
+.RS 15n
+Performs hardware specific operations to put the receptacle in the
+\fBconnected\fR state, which allows an occupant to operate in a normal fashion
+through the receptacle.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBconfigure\fR\fR
+.ad
+.RS 15n
+Performs hardware specific operations that allow an occupant's hardware
+resources to be usable by Solaris. Occupants that are configured are part of
+the system configuration and are available for manipulation by Solaris device
+manipulation maintenance commands (eg: \fBpsradm\fR(8), \fBmount\fR(8),
+\fBifconfig\fR(8)).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBunconfigure\fR\fR
+.ad
+.RS 15n
+Performs hardware specific operations that logically remove an occupant's
+hardware resources from the system. The occupant must currently be configured
+and its hardware resources must not be in use by Solaris.
+.RE
+
+State transition functions can fail due to the condition of the attachment
+point or other hardware dependent considerations. All state change
+\fIfunction\fRs in the direction of adding resources, \fB(insert,\fR
+\fBconnect\fR and \fBconfigure)\fR are passed onto the hardware specific
+library when the attachment point is in the \fBok\fR or \fBunknown\fR
+condition. All other conditions require the use of the force option to allow
+these \fIfunction\fRs to be passed on to the hardware specific library.
+Attachment point condition does not prevent a hardware specific library being
+called for related to the removal (\fBremove,\fR \fBdisconnect\fR and
+\fBunconfigure\fR), of hardware resources from the system. Hardware specific
+libraries can reject state change \fIfunction\fRs if the attachment point is in
+the \fBunknown\fR condition.
+.sp
+The condition of an attachment point is not necessarily changed by the state
+change functions, however errors during state change operations can change the
+attachment point condition. An attempt to override a condition and force a
+state change that would otherwise fail can be made by specifying the force
+option (\fB-f\fR). Hardware specific safety and integrity checks can prevent
+the force option from having any effect.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR\fR
+.ad
+.sp .6
+.RS 4n
+Forces the specified action to occur. Typically, this is a hardware dependent
+override of a safety feature. Forcing a state change operation can allow use of
+the hardware resources of occupant that is not in the \fBok\fR or \fBunknown\fR
+conditions, at the discretion of any hardware dependent safety checks.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\fR\fB-h\fR [\fIap_id\fR | \fIap_type\fR \|.\|.\|. ]\fR
+.ad
+.sp .6
+.RS 4n
+Prints out the help message text. If \fIap_id\fR or \fIap_type\fR is specified,
+the help routine of the hardware specific library for the attachment point
+indicated by the argument is called.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\fR\fB-l\fR [\fIap_id\fR | \fIap_type\fR \|.\|.\|. ]\fR
+.ad
+.sp .6
+.RS 4n
+Lists the state and condition of attachment points specified. Attachment points
+can be filtered by using the \fB-s\fR option and \fBselect\fR sub-option.
+Invoking \fBcfgadm\fR without one of the action options is equivalent to
+\fB-l\fR without an argument. The format of the list display is controlled by
+the \fB-v\fR and \fB-s\fR options. When the \fB-a\fR option is specified
+attachment points are dynamically expanded.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR\fR
+.ad
+.sp .6
+.RS 4n
+Suppress any interactive confirmation and assume that the answer is \fIno\fR.
+If neither \fB-n\fR or \fB-y\fR is specified, interactive confirmation is
+obtained through the standard error output and the standard input. If either of
+these standard channels does not correspond to a terminal (as determined by
+\fBisatty\fR(3C)) then the \fB-n\fR option is assumed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-o\fR\fIhardware_options\fR\fR
+.ad
+.sp .6
+.RS 4n
+Supplies hardware specific options to the main command option. The format and
+content of the hardware option string is completely hardware specific. The
+option string \fIhardware_options\fR conforms to the \fBgetsubopt\fR(3C) syntax
+convention.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR\fIlisting_options\fR\fR
+.ad
+.sp .6
+.RS 4n
+Supplies listing options to the list (\fB-l\fR) command. \fIlisting_options\fR
+conforms to the \fBgetsubopt\fR(3C) syntax convention. The sub-options are used
+to specify the attachment point selection criteria (
+\fBselect\fR=\fIselect_string\fR), the type of matching desired
+(\fBmatch\fR=\fImatch_type\fR), order of listing (\fBsort\fR=\fIfield_spec\fR),
+the data that is displayed (\fBcols=\fR\fIfield_spec\fR and
+\fBcols2=\fR\fIfield_spec\fR), the column delimiter (\fBdelim=\fR\fIstring\fR)
+and whether to suppress column headings (\fBnoheadings\fR).
+.sp
+When the \fBselect\fR sub-option is specified, only attachment points which
+match the specified criteria will be listed. The \fBselect\fR sub-option has
+the following syntax:
+.sp
+.in +2
+.nf
+cfgadm \fB-s\fR select=attr1(value1):attr2(value2)...
+.fi
+.in -2
+.sp
+
+where an \fIattr\fR is one of \fBap_id\fR, \fBclass\fR or \fBtype\fR.
+\fBap_id\fR refers to the logical \fIap_id\fR field, \fBclass\fR refers to
+attachment point class and \fBtype\fR refers to the type field. \fIvalue1\fR,
+\fIvalue2\fR, etc. are the corresponding values to be matched. The type of
+match can be specified by the \fBmatch\fR sub-option as follows:
+.sp
+.in +2
+.nf
+cfgadm \fB-s\fR match=\fImatch_type\fR,select=attr1(value1)...
+.fi
+.in -2
+.sp
+
+where \fImatch_type\fR can be either \fBexact\fR or \fBpartial\fR. The default
+value is \fBexact\fR.
+.sp
+Arguments to the \fBselect\fR sub-option can be quoted to protect them from the
+shell.
+.sp
+A \fIfield_spec\fR is one or more \fIdata-field\fRs concatenated using colon
+(\fB:\fR), as in \fIdata-field\fR:\fIdata-field\fR:\fIdata-field\fR. A
+\fIdata-field\fR is one of \fBap_id\fR, \fBphysid\fR, \fBr_state\fR,
+\fBo_state\fR, \fBcondition\fR, \fBtype\fR, \fBbusy\fR, \fBstatus_time\fR,
+\fBstatus_time_p\fR, \fBclass\fR, and \fBinfo\fR. The \fBap_id\fR field output
+is the logical name for the attachment point, while the \fBphysid\fR field
+contains the physical name. The \fBr_state\fR field can be \fBempty\fR,
+\fBdisconnected\fR or \fBconnected\fR. The \fBo_state\fR field can be
+\fBconfigured\fR or \fBunconfigured\fR. The \fBbusy\fR field can be either
+\fBy\fR if the attachment point is busy, or \fBn\fR if it is not. The
+\fBtype\fR and \fBinfo\fR fields are hardware specific. The \fBstatus_time\fR
+field provides the time at which either the \fBr_state\fR, \fBo_state\fR, or
+condition of the attachment point last changed. The \fBstatus_time_p\fR field
+is a parsable version of the \fBstatus_time\fR field. If an attachment point
+has an associated class, the \fBclass\fR field lists the class name. If an
+attachment point does not have an associated class, the \fBclass\fR field lists
+\fBnone\fR.
+.sp
+The order of the fields in \fIfield_spec\fR is significant: For the \fBsort\fR
+sub-option, the first field given is the primary sort key. For the \fBcols\fR
+and \fBcols2\fR sub-options, the fields are printed in the order requested. The
+order of sorting on a \fIdata-field\fR can be reversed by placing a minus
+(\fB\(mi\fR) before the \fIdata-field\fR name within the \fIfield_sec\fR for
+the \fBsort\fR sub-option. The default value for \fBsort\fR is \fBap_id\fR. The
+defaults values for \fBcols\fR and \fBcols2\fR depend on whether the \fB-v\fR
+option is given: Without it \fBcols\fR is \fBap_id:r_state:o_state:condition\fR
+and \fBcols2\fR is not set. With \fB-v\fR \fBcols\fR is
+\fBap_id:r_state:o_state:condition:info\fR and \fBcols2\fR is
+\fBstatus_time:type:busy:physid:\fR. The default value for \fBdelim\fR is a
+single space. The value of \fBdelim\fR can be a string of arbitrary length. The
+delimiter cannot include comma (\fB,\fR) character, see \fBgetsubopt\fR(3C).
+These listing options can be used to create parsable output. See \fBNOTES\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-t\fR\fR
+.ad
+.sp .6
+.RS 4n
+Performs a test of one or more attachment points. The test function is used to
+re-evaluate the condition of the attachment point. Without a test level
+specifier in \fIhardware_options\fR, the fastest test that identifies hard
+faults is used.
+.sp
+More comprehensive tests are hardware specific and are selected using the
+\fIhardware_options\fR.
+.sp
+The results of the test is used to update the condition of the specified
+occupant to either \fBok\fR if no faults are found, \fBfailing\fR if
+recoverable faults are found or \fBfailed\fR if any unrecoverable faults are
+found.
+.sp
+If a test is interrupted, the attachment point's condition can be restored to
+its previous value or set to \fBunknown\fR if no errors were found or
+\fBfailing\fR if only recoverable errors were found or to \fBfailed\fR if any
+unrecoverable errors were found. The attachment point should only be set to
+\fBok\fR upon normal completion of testing with no errors.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.sp .6
+.RS 4n
+Executes in verbose mode. For the \fB-c\fR, \fB-t\fR and \fB-x\fR options
+outputs a message giving the results of each attempted operation. Outputs
+detailed help information for the \fB-h\fR option. Outputs verbose information
+for each attachment point for the \fB-l\fR option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-x\fR\fIhardware_function\fR\fR
+.ad
+.sp .6
+.RS 4n
+Performs hardware specific functions. Private hardware specific functions can
+change the state of a receptacle or occupant. Attachment point conditions can
+change as the result of errors encountered during private hardware specific
+functions. The format and content of the \fIhardware_function\fR string is
+completely hardware specific. The option string \fIhardware_function\fR
+conforms to the \fBgetsubopt\fR(3C) syntax convention.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-y\fR\fR
+.ad
+.sp .6
+.RS 4n
+Suppresses any interactive confirmation and assume that the answer is
+\fByes\fR.
+.RE
+
+.SH USAGE
+The required privileges to use this command are hardware dependent. Typically,
+a default system configuration restricts all but the list option to the
+superuser.
+.SH EXAMPLES
+\fBExample 1 \fRListing Attachment Points in the Device Tree
+.sp
+.LP
+The following example lists all attachment points except dynamic attachment
+points.
+
+.sp
+.in +2
+.nf
+example# cfgadm
+
+ Ap_Id Type Receptacle Occupant Cond
+system:slot0 cpu/mem connected configured ok
+system:slot1 sbus-upa connected configured ok
+system:slot2 cpu/mem connected configured ok
+system:slot3 unknown connected unconfigured unknown
+system:slot4 dual-sbus connected configured failing
+system:slot5 cpu/mem connected configured ok
+system:slot6 unknown disconnected unconfigured unusable
+system:slot7 unknown empty unconfigured ok
+c0 scsi-bus connected configured unknown
+c1 scsi-bus connected configured unknown
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRListing All Configurable Hardware Information
+.sp
+.LP
+The following example lists all current configurable hardware information,
+including those represented by dynamic attachment points:
+
+.sp
+.in +2
+.nf
+example# cfgadm -al
+
+ Ap_Id Type Receptacle Occupant Cond
+system:slot0 cpu/mem connected configured ok
+system:slot1 sbus-upa connected configured ok
+system:slot2 cpu/mem connected configured ok
+system:slot3 unknown connected unconfigured unknown
+system:slot4 dual-sbus connected configured failing
+system:slot5 cpu/mem connected configured ok
+system:slot6 unknown disconnected unconfigured unusable
+system:slot7 unknown empty unconfigured ok
+c0 scsi-bus connected configured unknown
+c0::dsk/c0t14d0 disk connected configured unknown
+c0::dsk/c0t11d0 disk connected configured unknown
+c0::dsk/c0t8d0 disk connected configured unknown
+c0::rmt/0 tape connected configured unknown
+c1 scsi-bus connected configured unknown
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRListing Selectively, Based on Attachment Point Attributes
+.sp
+.LP
+The following example lists all attachment points whose class begins with
+\fBscsi\fR, \fBap_id\fR begins with \fBc\fR and \fBtype\fR field begins with
+\fBscsi\fR. The argument to the \fB-s\fR option is quoted to protect it from
+the shell.
+
+.sp
+.in +2
+.nf
+example# cfgadm -s "match=partial,select=class(scsi):ap_id(c):type(scsi)"
+
+Ap_Id Type Receptacle Occupant Cond
+ c0 scsi-bus connected configured unknown
+ c1 scsi-bus connected configured unknown
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 4 \fRListing Current Configurable Hardware Information in Verbose
+Mode
+.sp
+.LP
+The following example lists current configurable hardware information for
+\fIap-type\fR \fBsystem\fR in verbose mode:
+
+.sp
+.in +2
+.nf
+example# cfgadm -v -l system
+Ap_Id Receptacle Occupant Condition Information
+When Type Busy Phys_Id
+system:slot1 connected configured ok
+Apr 4 23:50 sbus-upa n /devices/central/fhc/sysctrl:slot1
+system:slot3 connected configured ok non-detachable
+Apr 17 11:20 cpu/mem n /devices/central/fhc/sysctrl:slot3
+system:slot5 connected configured ok
+Apr 4 23:50 cpu/mem n /devices/central/fhc/sysctrl:slot5
+system:slot7 connected configured ok
+Apr 4 23:50 dual-sbus n /devices/central/fhc/sysctrl:slot7
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The \fBWhen\fR column represents the \fBstatus_time\fR field.
+.LP
+\fBExample 5 \fRTesting Two Occupants Using the Hardware Specific
+\fBExtended\fR Test
+.sp
+.LP
+The following example tests two occupants using the hardware specific
+\fBextended\fR test:
+
+.sp
+.in +2
+.nf
+example# cfgadm -v -o extended -t system:slot3 system:slot5
+Testing attachment point system:slot3 ... ok
+Testing attachment point system:slot5 ... ok
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 6 \fRConfiguring an Occupant Using the Force Option
+.sp
+.LP
+The following example configures an occupant in the \fBfailing\fR state to the
+system using the force option:
+
+.sp
+.in +2
+.nf
+example# cfgadm -f -c configure system:slot3
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 7 \fRUnconfiguring an Occupant From the System
+.sp
+.LP
+The following example unconfigures an occupant from the system:
+
+.sp
+.in +2
+.nf
+example# cfgadm -c unconfigure system:slot4
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 8 \fRConfiguring an Occupant at an Attachment Point
+.sp
+.LP
+The following example configures an occupant:
+
+.sp
+.in +2
+.nf
+example# cfgadm -c configure c0::dsk/c0t0d0
+.fi
+.in -2
+.sp
+
+.SH ENVIRONMENT VARIABLES
+See \fBenviron\fR(7) for descriptions of the following environment variables
+that affect the execution of \fBcfgadm\fR: \fBLC_TIME\fR, \fBLC_MESSAGES\fR,
+\fBNLSPATH\fR and \fBTZ\fR.
+.sp
+.ne 2
+.na
+\fB\fBLC_MESSAGES\fR\fR
+.ad
+.RS 15n
+Determines how \fBcfgadm\fR displays column headings and error messages.
+Listing output data is not affected by the setting of this variable.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBLC_TIME\fR\fR
+.ad
+.RS 15n
+Determines how \fBcfgadm\fR displays human readable status changed time
+(\fBstatus_time\fR).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBTZ\fR\fR
+.ad
+.RS 15n
+Specifies the timezone used when converting the status changed time. This
+applies to both the human readable (\fBstatus_time\fR) and parsable
+(\fBstatus_time_p\fR) formats.
+.RE
+
+.SH EXIT STATUS
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 5n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB1\fR\fR
+.ad
+.RS 5n
+An error occurred.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB2\fR\fR
+.ad
+.RS 5n
+Configuration administration not supported on specified target.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB3\fR\fR
+.ad
+.RS 5n
+Usage error.
+.RE
+
+.SH SEE ALSO
+.BR getopt (3C),
+.BR getsubopt (3C),
+.BR isatty (3C),
+.BR config_admin (3CFGADM),
+.BR attributes (7),
+.BR environ (7),
+.BR cfgadm_fp (8),
+.BR cfgadm_ib (8),
+.BR cfgadm_pci (8),
+.BR cfgadm_sbd (8),
+.BR cfgadm_scsi (8),
+.BR cfgadm_usb (8),
+.BR ifconfig (8),
+.BR mount (8),
+.BR prtdiag (8),
+.BR psradm (8),
+.BR syslogd (8)
+.SH DIAGNOSTICS
+Diagnostic messages appear on the standard error output. Other than options and
+usage errors, the following are diagnostic messages produced by this utility:
+.sp
+.in +2
+.nf
+cfgadm: Configuration administration not supported on \fIap_id\fR
+.fi
+.in -2
+.sp
+
+.sp
+.in +2
+.nf
+cfgadm: No library found for \fIap_id\fR
+.fi
+.in -2
+.sp
+
+.sp
+.in +2
+.nf
+cfgadm: \fIap_id\fR is ambiguous
+.fi
+.in -2
+.sp
+
+.sp
+.in +2
+.nf
+cfgadm: \fIoperation\fR: Insufficient privileges
+.fi
+.in -2
+.sp
+
+.sp
+.in +2
+.nf
+cfgadm: Attachment point is busy, try again
+.fi
+.in -2
+.sp
+
+.sp
+.in +2
+.nf
+cfgadm: No attachment points with specified attributes found
+.fi
+.in -2
+.sp
+
+.sp
+.in +2
+.nf
+cfgadm: System is busy, try again
+.fi
+.in -2
+.sp
+
+.sp
+.in +2
+.nf
+cfgadm: \fIoperation\fR: Operation requires a service interruption
+.fi
+.in -2
+.sp
+
+.sp
+.in +2
+.nf
+cfgadm: \fIoperation\fR: Data error: \fIerror_text\fR
+.fi
+.in -2
+.sp
+
+.sp
+.in +2
+.nf
+cfgadm: \fIoperation\fR: Hardware specific failure: \fIerror_text\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+See \fBconfig_admin\fR(3CFGADM) for additional details regarding error
+messages.
+.SH NOTES
+Hardware resources enter the unconfigured pool in a hardware specific manner.
+This can occur at various times such as: system initialization or as a result
+of an unconfigure operation. An occupant that is in the \fBunconfigured\fR
+state is not available for use by the system until specific intervention
+occurs. This intervention can be manifested as an operator initiated command or
+it can be by way of an automatic configuring mechanism.
+.sp
+.LP
+The listing option of the \fBcfgadm\fR command can be used to provide parsable
+input for another command, for example within a shell script. For parsable
+output, the \fB-s\fR option must be used to select the fields required. The
+\fB-s\fR option can also be used to suppress the column headings. The following
+fields always produce parsable output: \fBap_id\fR, \fBphysid\fR,
+\fBr_state\fR, \fBo_state\fR, \fBcondition\fR, \fBbusy\fR, \fBstatus_time_p\fR,
+\fBclass\fR, and \fBtype\fR. Parsable output never has white-space characters
+embedded in the field value.
+.sp
+.LP
+The following shell script fragment finds the first good \fBunconfigured\fR
+occupant of type \fBCPU.\fR
+.sp
+.in +2
+.nf
+found=
+cfgadm -l -s "noheadings,cols=ap_id:r_state:condition:type" | \e
+while read ap_id r_state cond type
+do
+ if [ "$r_state" = unconfigured -a "$cond" = ok -a "$type" = CPU ]
+ then
+ if [ -z "$found" ]
+ then
+ found=$ap_id
+ fi
+ fi
+done
+if [ -n "$found" ]
+then
+ echo "Found CPU $found"
+fi
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The format of the parsable time field (\fBstatus_time_p\fR) is
+\fIYYYYMMDDhhmmss\fR, giving the year, month, day, hour, minute and second in a
+form suitable for string comparison.
+.sp
+.LP
+Reference should be made to the hardware specific documentation for details of
+System Configuration Administration support.
diff --git a/usr/src/man/man8/cfgadm_cardbus.8 b/usr/src/man/man8/cfgadm_cardbus.8
new file mode 100644
index 0000000000..5a58f1c13f
--- /dev/null
+++ b/usr/src/man/man8/cfgadm_cardbus.8
@@ -0,0 +1,60 @@
+'\" te
+.\" Copyright (c) 2003 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH CFGADM_CARDBUS 8 "Jul 11, 2006"
+.SH NAME
+cfgadm_cardbus \- cardbus hardware specific commands for cfgadm
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/cfgadm\fR [\fB-f \fR] [\fB-y \fR | \fB-n \fR] [\fB-v\fR]
+ [\fB-o\fR \fIhardware_options\fR] \fB-c\fR\fI function\fR \fIap_id\fR [\fIap_id\fR]
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/cfgadm\fR [\fB-f \fR] [\fB-y \fR | \fB-n \fR] [\fB-v\fR]
+ [\fB-o\fR \fIhardware_options\fR] \fB-x\fR\fI hardware_function\fR \fIap_id\fR
+ [\fIap_id\fR]
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/cfgadm\fR [\fB-v\fR] [\fB-s\fR \fIlisting_options\fR]
+ [\fB-o\fR \fIhardware_options\fR] [\fB-l\fR [\fIap_id\fR | \fIap_type\fR]]
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/cfgadm\fR [\fB-v\fR] [\fB-o\fR \fIharware_options\fR] \fB-t\fR \fIap_id\fR [\fIap_id\fR]
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/cfgadm\fR [\fB-v\fR] [\fB-o\fR \fIhardware_function\fR] \fB-h\fR
+ [\fIap_id\fR| \fI ap_type\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The CardBus slots in Solaris are hot plug capable. This capability is supported
+by the \fBPCI\fR hardware specific library \fB/usr/lib/cfgadm/pci.so.1\fR
+through the \fBcfgadm\fR command (see \fBcfgadm\fR(8)).
+.sp
+.LP
+The hot plug administrative models between CardBus, PCI, CompactPCI, and PCI
+Express operate the same fashion. Please refer to \fBcfgadm_pci\fR(8) for the
+usage information.
+.SH SEE ALSO
+.sp
+.LP
+.BR config_admin (3CFGADM),
+.BR libcfgadm (3LIB),
+.BR attributes (7),
+.BR cfgadm (8)
+.sp
+.LP
+\fI\fR
diff --git a/usr/src/man/man8/cfgadm_fp.8 b/usr/src/man/man8/cfgadm_fp.8
new file mode 100644
index 0000000000..1aff5b34d1
--- /dev/null
+++ b/usr/src/man/man8/cfgadm_fp.8
@@ -0,0 +1,750 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH CFGADM_FP 8 "Jan 10, 2008"
+.SH NAME
+cfgadm_fp \- driver specific commands for cfgadm
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/cfgadm\fR [\fB-f\fR] [\fB-n\fR | \fB-y\fR] [\fB-v\fR] [\fB-o\fR \fIhardware_options\fR]
+ \fB-c\fR \fIfunction\fR \fIap_id\fR [\fIap_id\fR]
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/cfgadm\fR [\fB-v\fR] [\fB-a\fR] [\fB-s\fR \fIlisting_options\fR]
+ [\fB-o\fR \fIhardware_options\fR] [\fB-l\fR [\fIap_id\fR]]
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/cfgadm\fR [\fB-v\fR] [\fB-o\fR \fIhardware_options\fR] \fB-h\fR [\fIap_id\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBfp\fR port driver plug-in \fB/usr/lib/cfgadm/fp.so.1\fR provides the
+functionality for Fibre Channel Fabric device node management through
+\fBcfgadm\fR(8). \fBcfgadm\fR operates on attachment points. Attachment points
+are locations in the system where hardware resources can be dynamically
+reconfigured. Refer to \fBcfgadm\fR(8) for additional details on attachment
+points.
+.sp
+.LP
+For Fibre Channel Fabric device node management, each \fBfp\fR port node is
+represented by an attachment point in the device tree. In addition, each Fibre
+Channel device is represented by a dynamic attachment point. Attachment points
+are named through \fBap_ids\fR. Two types of \fBap_ids\fR are defined: logical
+and physical. The physical \fBap_id\fR is based on the physical pathname. The
+logical \fBap_id\fR is a shorter, more user-friendly name. For \fBfp\fR port
+nodes, the logical \fBap_id\fR is the corresponding disk controller number. For
+example, \fBc0\fR is a typical logical \fBap_id\fR.
+.sp
+.LP
+Fibre Channel devices are named with a port World Wide Name (WWN). If a disk
+device is connected to controller \fBc0\fR, its \fBap_id\fR can be:
+.sp
+.in +2
+.nf
+c0::50020f2300006077
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+where \fB50020f2300006077\fR identifies the port WWN of a specific Fibre
+Channel device.
+.sp
+.LP
+Each device on the Fibre Channel private loop port, Fabric port or public loop
+port is probed and made available to Solaris by default. Devices connected to
+the Fibre Channel Fabric port or public loop port can be made unavailable to
+Solaris by initiating an application or an end user operation. The operation is
+similar to the hot unplugging of devices by way of management user interfaces.
+Applications or users can use the \fB/usr/lib/cfgadm/fp.so.1\fR library to
+enable \fBlibcfgadm\fR to provide interfaces to accomplish this task.
+.sp
+.LP
+The list of currently connected Fabric devices is generated in the form of the
+attachment point.
+.sp
+.LP
+A simple listing of attachment points in the system includes attachment points
+at \fBfp\fR port nodes but not Fibre Channel devices. The following example
+uses the \fB-a\fR flag to the list option (\fB-l\fR) to list Fibre Channel
+devices:
+.sp
+.in +2
+.nf
+# \fBcfgadm -l\fR
+ Ap_Id Type Receptacle Occupant Condition
+ c0 fc-fabric connected configured unknown
+ c1 fc-private connected configured unknown
+ c2 fc-pt_to_pt connected configured unknown
+ c3 fc connected unconfigured unknown
+ sysctrl0:slot0 cpu/mem connected configured ok
+ sysctrl0:slot1 sbus-upa connected configured ok
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The following example lists Fibre Channel devices connected to \fBfp\fR ports.
+.sp
+.in +2
+.nf
+# \fBcfgadm -al\fR
+ Ap_Id Type Receptacle Occupant Condition
+ c0 fc-fabric connected configured unknown
+ c0::50020f2300006077 disk connected configured unknown
+ c0::50020f23000063a9 disk connected configured unknown
+ c0::50020f2300005f24 disk connected configured unknown
+ c0::50020f2300006107 disk connected configured unknown
+ c1 fc-private connected configured unknown
+ c1::220000203708b69c disk connected configured unknown
+ c1::220000203708ba7d disk connected configured unknown
+ c1::220000203708b8d4 disk connected configured unknown
+ c1::220000203708b9b2 disk connected configured unknown
+ c2 fc-pt_to_pt connected configured unknown
+ c2::500104f000937528 tape connected configured unknown
+ c3 fc connected unconfigured unknown
+ sysctrl0:slot0 cpu/mem connected configured ok
+ sysctrl0:slot1 sbus-upa connected configured ok
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+In this example, the \fBfc-fabric\fR type of \fBap_id\fR \fBc0\fR indicates
+that the \fBfp\fR port is connected to Fabric. For an \fBfp\fR port with a
+Fabric-related type such as \fBfc-fabric\fR and \fBfc-public\fR, device node
+creation happens by default at the boot time and can be managed by the
+\fBcfgadm\fR configure and unconfigure operations. The \fBfc-private\fR type
+of \fBap_id c1\fR indicates that \fBfp\fR port is connected to private-loop and
+device node creation happens by default as well. The \fBfc-pt_to_pt\fR type of
+\fBap_id c2\fR indicates that the \fBfp\fR port is directly connected to
+another \fBN_port\fR and device node creation also happens by default. The
+\fBfc\fR type of \fBap_id c3\fR indicates that nothing is attached to \fBfp\fR
+port \fBc2\fR. The Type field of a Fibre Channel device \fBap_id\fR shows the
+SCSI device type of LUN 0 in the device.
+.sp
+.LP
+A Fibre Channel device with multiple FCP SCSI LUNs is configured into Solaris
+and each \fBFCP SCSI LUN\fR is available as a Solaris device. Suppose that
+ap_ids \fBc0::50020f2300006077\fR and \fBc0::50020f23000063a9\fR represent
+Fibre Channel devices with multiple \fBFCP SCSI LUN\fRs.
+.sp
+.LP
+The following example shows how to list ap_ids with \fBFCP\fR \fBSCSI\fR
+\fBLUN\fR information:
+.sp
+.in +2
+.nf
+# \fBcfgadm -al -o show_SCSI_LUN\fR
+ Ap_Id Type Receptacle Occupant Condition
+ c0 fc-fabric connected configured unknown
+ c0::50020f2300006077,0 disk connected configured unknown
+ c0::50020f2300006077,1 disk connected configured unknown
+ c0::50020f2300006077,2 disk connected configured unknown
+ c0::50020f2300006077,3 disk connected configured unknown
+ c0::50020f23000063a9,0 disk connected configured unknown
+ c0::50020f23000063a9,1 disk connected configured unknown
+ c0::50020f23000063a9,2 disk connected configured unknown
+ c0::50020f23000063a9,3 disk connected configured unknown
+ c0::50020f2300005f24,0 disk connected unconfigured unknown
+ c0::50020f2300005f24,1 disk connected unconfigured unknown
+ c0::50020f2300006107,0 disk connected unconfigured unknown
+ c0::50020f2300006107,1 disk connected unconfigured unknown
+ c1 fc-private connected configured unknown
+ c1::220000203708b69c,0 disk connected configured unknown
+ c1::220000203708ba7d,0 disk connected configured unknown
+ c1::220000203708b8d4,0 disk connected configured unknown
+ c1::220000203708b9b2,0 disk connected configured unknown
+ c2 fc-pt_to_pt connected configured unknown
+ c2::500104f000937528,0 tape connected configured unknown
+ c3 fc connected unconfigured unknown
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+In this example, the \fBap_id c0::50020f2300006077,0\fR identifies the \fBFCP
+SCSI LUN 0\fR of the Fibre Channel device which is represented by port \fBWWN
+50020f2300006077\fR. The Fibre Channel device is reported to have 4 \fBFCP SCSI
+LUN\fRs and they are all configured. \fB4 FCP SCSI LUN\fR level ap_ids
+associated with port \fBWWN 50020f2300006077\fR are listed. The listing also
+displays \fBFCP SCSI LUN\fRs for unconfigured Fibre Channel devices. The Fibre
+Channel device represented by \fBc0::50020f2300005f24\fR is reported to have
+two \fBFCP SCSI LUN\fRs. The configure operation \fBon c0::50020f2300005f24\fR
+creates two Solaris devices. The \fBType\fR field of \fBFCP\fR \fBSCSI\fR
+\fBLUN\fR level ap_ids show the \fBSCSI\fR device type of each \fBLUN\fR. When
+a Fibre Channel device has different device type \fBLUN\fRs, the \fBType\fR
+field reflects that.
+.sp
+.LP
+The receptacle and occupant state for attachment points at the \fBfp\fR port
+have the following meanings:
+.sp
+.ne 2
+.na
+\fBconfigured\fR
+.ad
+.sp .6
+.RS 4n
+One or more devices configured on the \fBfp\fR port
+.RE
+
+.sp
+.ne 2
+.na
+\fBconnected\fR
+.ad
+.sp .6
+.RS 4n
+\fBfp\fR port active
+.RE
+
+.sp
+.ne 2
+.na
+\fBdisconnected\fR
+.ad
+.sp .6
+.RS 4n
+\fBfp\fR port quiesced (IO activity is suspended)
+.RE
+
+.sp
+.ne 2
+.na
+\fBempty\fR
+.ad
+.sp .6
+.RS 4n
+Not applicable
+.RE
+
+.sp
+.ne 2
+.na
+\fBunconfigured\fR
+.ad
+.sp .6
+.RS 4n
+No devices configured on the \fBfp\fR port
+.RE
+
+.sp
+.LP
+The state for individual Fibre Channel devices on an \fBfp\fR port:
+.sp
+.ne 2
+.na
+\fBconfigured\fR
+.ad
+.sp .6
+.RS 4n
+Device is configured into Solaris and is available for use
+.RE
+
+.sp
+.ne 2
+.na
+\fBconnected\fR
+.ad
+.sp .6
+.RS 4n
+\fBfp\fR port to which the device is connected to is active
+.RE
+
+.sp
+.ne 2
+.na
+\fBdisconnected\fR
+.ad
+.sp .6
+.RS 4n
+\fBfp\fR port to which the device is attached is quiesced
+.RE
+
+.sp
+.ne 2
+.na
+\fBunconfigured\fR
+.ad
+.sp .6
+.RS 4n
+Device is available to be configured
+.RE
+
+.sp
+.LP
+The \fBcondition\fR field for attachment points at the \fBfp\fR port has the
+following meanings:
+.sp
+.ne 2
+.na
+\fBfailed\fR
+.ad
+.sp .6
+.RS 4n
+An error condition has prevented the \fBfp\fR port from being able to detect
+the presence or type of a Fibre Channel connection.
+.RE
+
+.sp
+.LP
+The \fBcondition\fR field for individual Fibre Channel devices on an \fBfp\fR
+port has the following meanings:
+.sp
+.ne 2
+.na
+\fBfailed\fR
+.ad
+.sp .6
+.RS 4n
+An error is encountered while probing a device on Fabric.
+.RE
+
+.sp
+.ne 2
+.na
+\fBfailing\fR
+.ad
+.sp .6
+.RS 4n
+A device was configured on a host and its state as seen by Solaris appears to
+be normal (i.e., online) but it is either not currently present or visible in
+the fabric or its presence could not be verified due to an error condition on
+the local port through which the device was configured.
+.RE
+
+.sp
+.ne 2
+.na
+\fBunusable\fR
+.ad
+.sp .6
+.RS 4n
+A device has been configured on the host, but is currently offline or failed.
+.RE
+
+.sp
+.LP
+The unknown \fBcondition\fR indicates that probing a device on Fabric completed
+without an error and the device state within Solaris host is normal if the
+device was configured previously. The internal condition of the device cannot
+be guaranteed.
+.SH OPTIONS
+.sp
+.LP
+\fBcfgadm\fR defines several types of operations in addition to listing
+(\fB-l\fR). These operations include invoking configuration state changes and
+obtaining configuration administration help messages (\fB-h\fR).
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-c\fR \fIfunction\fR\fR
+.ad
+.sp .6
+.RS 4n
+The following generic commands are defined for the \fBfp\fR-transport-specific
+library:
+.sp
+For Fibre Channel device attachment points on the \fBfc-fabric\fR type \fBfp\fR
+port attachment point, the following configuration state change operations are
+supported:
+.sp
+.ne 2
+.na
+\fB\fBconfigure\fR\fR
+.ad
+.sp .6
+.RS 4n
+Configure a connected Fibre Channel Fabric device to a host. When a Fibre
+Channel device is listed as an unknown type in the output of the list operation
+the device might not be configurable. No attempt is made to configure devices
+with unknown types. The force option (\fB-f\fR) can be used to force the
+\fBfp\fR port driver plug-in to make an attempt to configure any devices. Any
+errors in the process are reported. By default, each FCP SCSI LUN that is
+discovered on a Fibre channel Fabric device is configured. However, FCP SCSI
+LUNs that are specified in the "pwwn-lun-blacklist" property in the
+\fBfp.conf\fR file will remain unconfigured. The FCP SCSI LUN level listing
+reflects the state of such FCP SCSI LUNs. They stay in the "unconfigured" state
+after reboot or Solaris Dynamic Reconfiguration on the controller that they are
+connected through. Refer to \fBfp\fR(4D) for additional details on the
+"pwwn-lun-blacklist" property.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBunconfigure\fR\fR
+.ad
+.sp .6
+.RS 4n
+Unconfigure a Fibre Channel Fabric device from a host. This device stays
+unconfigured until the next reboot or Solaris Dynamic Reconfiguration on the
+controller that the device is connected, at which time all fabric devices are
+automatically enumerated. The default behavior may be changed through the use
+of the "manual_configuration_only" property in the \fBfp.conf\fR file. If the
+property is set, the device remains unconfigured after reboot. Refer to
+\fBfp\fR(4D) for additional details on the "manual_configuration_only"
+property.
+.RE
+
+For Fibre Channel private loop devices and \fBN_Port\fR point-to-point devices,
+the \fBconfigure\fR command returns success without doing any operation. The
+\fBunconfigure\fR command is not supported on the private loop devices and
+\fBN_Port\fR point-to-point devices. The private loop devices and \fBN_Port\fR
+point-to-point devices are configured by Solaris Fibre Channel drivers by
+default and are not managed through end user- or application-initiated
+operations. The \fBpwwn-lun-blacklist\fR property in the \fBfp.conf\fR file
+is applied to the private loop device and \fBN_Port\fR point-to-point device in
+the same way it is applied to a Fabric device.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR\fR
+.ad
+.sp .6
+.RS 4n
+Force the \fBconfigure\fR change state operation to occur irrespective of the
+\fBcondition\fR or \fBtype\fR. Refer to the above description of the
+\fBconfigure\fR change state operation.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-h\fR \fIap_id\fR\fR
+.ad
+.sp .6
+.RS 4n
+Obtain \fBfp\fR\(emtransport-specific help. Specify any \fBfp\fR attachment
+point.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-o\fR \fIhardware_options\fR\fR
+.ad
+.sp .6
+.RS 4n
+The following hardware options are supported.
+.sp
+.ne 2
+.na
+\fBshow_SCSI_LUN\fR
+.ad
+.sp .6
+.RS 4n
+Lists ap_ids associated with each FCP SCSI LUN for discovered Fibre Channel
+devices when specified with the \fBlist\fR option \fB-al\fR. Refer to the
+previously mentioned description and example of FCP SCSI LUN level listing.
+Device node creation is not supported on the FCP SCSI LUN level. See
+\fBNOTES\fR.
+.RE
+
+All Fibre Channel devices are available to Solaris by default. Enabling only a
+subset of Fabric devices available to Solaris by default can be accomplished by
+setting the property "manual_configuration_only" in \fB/kernel/drv/fp.conf\fR
+file. When "manual_configuration_only" in \fBfp.conf\fR is set, all Fabric
+devices are not available to Solaris unless an application or an end user had
+previously requested the device be configured into Solaris. The \fBconfigure\fR
+state-change command makes the device available to Solaris. After a successful
+\fBconfigure\fR operation on a Fabric device, the associated links are added to
+the \fB/dev\fR namespace. The \fBunconfigure\fR state-change command makes a
+device unavailable to Solaris.
+.sp
+When a Fibre Channel Fabric device is configured successfully to a host using
+the \fB-c\fR \fBconfigure\fR operation, its physical \fBap_id\fR is stored in a
+repository. When a Fibre Channel Fabric device is unconfigured using the
+\fB-c\fR \fBunconfigure\fR operation, its physical \fBap_id\fR is deleted from
+the same repository. All fabric devices are automatically enumerated by default
+and the repository is used only if the \fBfp.conf\fR
+"manual_configuration_only" property is set. Refer to \fBfp\fR(4D) for
+additional details on the "manual_configuration_only" property.
+.sp
+You can specify the following commands with the \fB-c\fR option to control the
+update behavior of the repository:
+.sp
+.ne 2
+.na
+\fB\fBforce_update\fR\fR
+.ad
+.sp .6
+.RS 4n
+For \fBconfigure\fR, the attachment point is unconditionally added to the
+repository; for \fBunconfigure\fR, the attachment point is unconditionally
+deleted.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBno_update\fR\fR
+.ad
+.sp .6
+.RS 4n
+No update is made to the repository regardless of the operation.
+.RE
+
+These options should not be used for normal \fBconfigure\fR and
+\fBunconfigure\fR operations. See \fBWARNINGS\fR.
+.sp
+When a Fibre Channel device has multiple \fBFCP SCSI LUN\fRs configured and any
+Solaris device associated with its \fBFCP SCSI LUN\fR is in the unusable
+condition, the whole Fibre Channel device is reported as unusable. The
+following option with the \fB-c\fR unconfigure command removes only Solaris
+devices with the unusable condition for a Fibre Channel device.
+.sp
+.ne 2
+.na
+\fB\fBunusable_SCSI_LUN\fR\fR
+.ad
+.sp .6
+.RS 4n
+For \fBunconfigure\fR operation, any offlined device nodes for a target device
+is removed.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR \fIlisting_options\fR\fR
+.ad
+.sp .6
+.RS 4n
+Refer to \fBcfgadm\fR(8) for usage information.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-t\fR \fIap_id\fR\fR
+.ad
+.sp .6
+.RS 4n
+No test commands are available at present.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-x\fR \fIhardware_function\fR\fR
+.ad
+.sp .6
+.RS 4n
+No hardware specific functions are available at present.
+.RE
+
+.sp
+.LP
+All other options have the same meaning as defined in the \fBcfgadm\fR(8) man
+page.
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRUnconfiguring a Disk
+.sp
+.LP
+The following command unconfigures a disk:
+
+.sp
+.in +2
+.nf
+# cfgadm -c unconfigure c0::210000203708b606
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRUnconfigure all the Configured Disks under Single Attachment
+Point
+.sp
+.LP
+The following command unconfigures all configured disks under the attachment
+point \fBc0\fR.
+
+.sp
+.in +2
+.nf
+# cfgadm -c unconfigure c0
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRConfiguring a Disk
+.sp
+.LP
+The following command configures a disk:
+
+.sp
+.in +2
+.nf
+# cfgadm -c configure c0::210000203708b606
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 4 \fRConfigure all the Unconfigured Disks under Single Attachment
+Point
+.sp
+.LP
+The following command configures all unconfigured disks under the attachment
+point \fBc0\fR.
+
+.sp
+.in +2
+.nf
+# cfgadm -c configure c0
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 5 \fRRemoving the Fibre Channel Fabric Device Attachment Point from
+Repository
+.sp
+.LP
+The following command unconditionally removes the fibre channel fabric device
+attachment point from the Fabric device repository.
+
+.sp
+.in +2
+.nf
+# cfgadm -c unconfigure -o force_update c0::210000203708b606
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 6 \fRRemoving Offlined Solaris Device Nodes for a Target Device
+.sp
+.LP
+The following command removes offlined Solaris device nodes for a target
+device:
+
+.sp
+.in +2
+.nf
+# cfgadm -c unconfigure -o unusable_SCSI_LUN c0::210000203708b606
+.fi
+.in -2
+.sp
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/cfgadm/fp.so.1\fR\fR
+.ad
+.sp .6
+.RS 4n
+Hardware-specific library for Fibre Channel Fabric device node management.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/cfg/fp/fabric_WWN_map\fR\fR
+.ad
+.sp .6
+.RS 4n
+Repository of physical \fBap_id\fRs of Fabric devices currently configured. It
+is used only to reconfigure those Fabric devices at boot time. This repository
+is only used when the "manual_configuration_only" \fB/kernel/drv/fp.conf\fR
+file is set.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/rcS.d/fdevattach\fR\fR
+.ad
+.sp .6
+.RS 4n
+Reconfigures Fabric device(s) of which physical \fBap_id\fR is listed in
+\fB/etc/cfg/fp/fabric_WWN_map\fR on boot time.
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR svcs (1),
+.BR config_admin (3CFGADM),
+.BR libcfgadm (3LIB),
+.BR fp (4D),
+.BR attributes (7),
+.BR smf (7),
+.BR cfgadm (8),
+.BR svcadm (8)
+.SH WARNINGS
+.sp
+.LP
+Do not use hardware-specific options for the repository update under normal
+\fBconfigure\fR/\fBunconfigure\fR operations. The hardware-specific options are
+expected to be used when the node creation of a Fabric device fails at boot
+time and the error condition is considered to be permanent. The
+\fBunconfigure\fR command with \fBforce_update\fR hardware-specific option
+unconditionally removes the attachment point of a failing Fabric device from
+the repository.
+.SH NOTES
+.sp
+.LP
+For devices with unknown or no SCSI device type (for example, a Fibre Channel
+Host Bus Adapter), the \fBconfigure\fR operation might not be applicable.
+.sp
+.LP
+The \fBconfigure\fR and \fBunconfigure\fR commands operate on the Fibre Channel
+device level which is represented by port WWN ap_id. If a Fibre Channel device
+has multiple FCP SCSI LUNs configured, the \fBconfigure\fR command on the
+associated port WWN ap_id results in creating a Solaris device for each \fBFCP
+SCSI LUN\fR unless it is specified in the "pwwn-lun-blacklist" property in the
+\fBfp.conf\fR file. The \fBunconfigure\fR command removes all Solaris devices
+associated with the port WWN ap_id. The \fBFCP SCSI LUN\fR level ap_id is not
+valid for the \fBconfigure\fR and \fBunconfigure\fR commands.
+.sp
+.LP
+The deprecated \fBshow_FCP_dev\fR option has been replaced by the new
+\fBshow_SCSI_LUN\fR option, and the deprecated \fBunusable_FCP_dev\fR option
+has been replaced by the new \fBunusable_SCSI_LUN\fR option.
+.sp
+.LP
+The \fBcfgadm_fp\fR service is managed by the service management facility,
+\fBsmf\fR(7), under the service identifier:
+.sp
+.in +2
+.nf
+svc:/system/device/fc-fabric:default
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Administrative actions on this service, such as enabling, disabling, or
+requesting restart, can be performed using \fBsvcadm\fR(8). The service's
+status can be queried using the \fBsvcs\fR(1) command.
+.sp
+.LP
+No administrative actions on this service are required for Fabric device
+configuration once this service is started on boot time.
diff --git a/usr/src/man/man8/cfgadm_ib.8 b/usr/src/man/man8/cfgadm_ib.8
new file mode 100644
index 0000000000..bf344ee8df
--- /dev/null
+++ b/usr/src/man/man8/cfgadm_ib.8
@@ -0,0 +1,867 @@
+'\" te
+.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH CFGADM_IB 8 "Jul 2, 2008"
+.SH NAME
+cfgadm_ib \- InfiniBand hardware specific commands for cfgadm
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/cfgadm\fR \fB-f\fR [\fB-y\fR | \fB-n\fR] [\fB-v\fR] \fB-c\fR \fIfunction\fR \fIap_id\fR...
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/cfgadm\fR [\fB-f\fR] [\fB-y\fR | \fB-n\fR] [\fB-v\fR] [\fB-o\fR \fIhardware_options\fR]
+ \fB-x\fR \fIhardware_function\fR \fIap_id\fR...
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/cfgadm\fR \fB-v\fR [\fB-a\fR] [\fB-s\fR \fIlisting_option\fR] [-] [\fIap_id\fR | \fIap_type...\fR]
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/cfgadm\fR \fB-v\fR \fB-h\fR [\fIap_id\fR]...
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The InfiniBand hardware specific library \fB/usr/lib/cfgadm/ib.so.1\fR provides
+the functionality for administering its fabric through the \fBcfgadm\fR(8)
+utility. \fBcfgadm\fR operates on attachment points. See \fBcfgadm\fR(8).
+.sp
+.LP
+An InfiniBand (\fBIB\fR) device is enumerated by the IB nexus driver,
+\fBib\fR(4D), based on the services from the IB Device Manager (IBDM).
+.sp
+.LP
+The IB nexus driver creates and initializes five types of child device nodes:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+IB Port devices
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+IB HCA service (HCA_SVC) devices
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+IB Virtual Physical Point of Attachment (VPPA) devices
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+I/O Controller (IOC)
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+IB Pseudo devices
+.RE
+.sp
+.LP
+See \fBib\fR(4D) for details on enumeration of IB Port, IB VPPA, and IB HCA_SVC
+devices. For additional information on IBDM, see \fBibdm\fR(4D). See
+\fBib\fR(5) for details on IB Pseudo devices.
+.sp
+.LP
+For IB administration, two types of static attachment point are created for the
+fabric administration as seen by the given host. There is one static attachment
+point \fBib\fR and all IB devices (either an IOC, Port, VPPA, HCA_SVC, or a
+Pseudo device) in the fabric are represented as dynamic attachment points based
+off of it. There is another static attachment point for each Host Channel
+Adapter (HCA) in the host based on its node Globally Unique Identifier (GUID)
+value.
+.sp
+.LP
+Attachment points are named through ap_ids. There are two types of ap_ids:
+logical and physical. The physical ap_id is based on the physical path name.
+For the IB fabric it is \fB/devices/ib:fabric\fR. The logical ap_id is a
+shorter, and has a more user friendly name.
+.sp
+.LP
+The static ap_id for the IB fabric is \fBib\fR. The IB devices are dynamic
+attachment points and have no physical ap_id. The logical ap_id of an IOC
+contains its GUID, \fBib::\fR\fIIOC-GUID\fR. An example of an IOC ap_id is
+\fBib::80020123456789a\fR. The logical ap_id of a Pseudo device, see ib(5) for
+details, is of the format \fBib::\fR\fIdriver_name\fR\fB,\fR\fIunit-address\fR.
+An example of a pseudo ap_id would be \fBib::sdp,0\fR where "\fBsdp\fR" is the
+driver name and "\fB0\fR" is its \fIunit-address\fR property. The logical ap_id
+of Port, VPPA and HCA_SVC device contains its Partition Key (\fIP_Key\fR),
+\fIPort GUID\fR / \fINode GUID\fR and a communication service-name. The format
+of ap_id is as below:
+.sp
+.ne 2
+.na
+\fBPort device\fR
+.ad
+.sp .6
+.RS 4n
+\fBib::\fR\fIPORT_GUID\fR\fB,\fR\fI0\fR\fB,\fR\fIservice-name\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fBVPPA device\fR
+.ad
+.sp .6
+.RS 4n
+\fBib::\fR\fIPORT_GUID\fR\fB,\fR\fIP_Key\fR\fB,\fR\fIservice-name\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fBHCA_SVC device\fR
+.ad
+.sp .6
+.RS 4n
+\fBib::\fR\fIHCA_GUID\fR\fB,\fR0\fB,\fR\fIservicename\fR
+.RE
+
+.sp
+.LP
+The Partition Key (\fIP_Key\fR) is \fB0\fR for Port and HCA_SVC devices. The
+\fIP_Key\fR helps determine the partition to which this port belongs for a VPPA
+device node. A port might have more than one \fIP_Key\fR. An example of a VPPA
+device logical ap_id point is \fBib::80245678,ffff,ipib\fR. The
+\fIport-GUID\fR is \fB80245678\fR, the \fIP_Key\fR is \fB0xffff\fR, and the
+service name is \fBipib\fR. The service-name information is obtained from the
+file \fB/kernel/drv/ib.conf\fR which contains service-name strings. The HCA's
+logical ap_id contains its node GUID value, hca:HCA-GUID. An example is
+\fBhca:21346543210a987\fR.
+.sp
+.LP
+A listing of the IB attachment points includes information on all IB devices
+(IOC, VPPA, HCA_SVC, Pseudo, and Port devices seen by the IBDM and the IB nexus
+driver) in the fabric even if they are not seen by the host and configured for
+use.
+.sp
+.LP
+The following shows a listing of five IB devices (two IOC, one VPPA, one Port,
+one HCA_SVC) and one HCA:
+.sp
+.in +2
+.nf
+example# cfgadm -al
+Ap_Id Type Receptacle Occupant Condition
+hca:21346543210a987 IB-HCA connected configured ok
+ib IB-FABRIC connected configured ok
+ib::80020123456789a IB-IOC connected configured ok
+ib::802abc9876543 IB-IOC connected unconfigured unknown
+ib::80245678,ffff,ipib IB-VPPA connected configured ok
+ib::12245678,0,nfs IB-PORT connected configured ok
+ib::21346543,0,hnfs IB-HCA_SVC connected configured ok
+ib::sdp,0 IB-PSEUDO connected configured ok
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The ap_id \fBib::802abc9876543\fR shows an IOC device that is not yet
+configured by the host for use or had been previously offlined by an explicit
+.sp
+.in +2
+.nf
+cfgadm \fB-c\fR unconfigure
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+operation. The distinction was made by the information displayed under the
+\fBCondition\fR column. The IB device with a zero P_Key and HCA GUID is a
+HCA_SVC device. Refer to \fBcfgadm\fR(8) for more information regarding
+listing attachment points.
+.sp
+.LP
+The receptacle state for attachment points have the following meanings:
+.sp
+.ne 2
+.na
+\fBconnected\fR
+.ad
+.sp .6
+.RS 4n
+For an IOC/VPPA/Port/Pseudo/HCA_SVC device, \fBconnected\fR implies that it has
+been seen by the host. The device might not have been configured for use by
+Solaris.
+.sp
+For a HCA attachment point, \fBconnected\fR implies that it has been configured
+and is in use.
+.sp
+All IB ap_ids are always shown as connected.
+.RE
+
+.sp
+.LP
+The occupant state for attachment points have the following meanings:
+.sp
+.ne 2
+.na
+\fBconfigured\fR
+.ad
+.sp .6
+.RS 4n
+The IB device, and the HCA ap_id, are configured and usable by Solaris.
+.RE
+
+.sp
+.ne 2
+.na
+\fBunconfigured\fR
+.ad
+.sp .6
+.RS 4n
+The IB device at the ap_id was explicitly offlined using \fBcfgadm\fR \fB-c\fR
+\fBunconfigure\fR, was not successfully configured. This could be because it
+wasn not successfully configuref for use with Solaris (no driver, or a device
+problem), or because it was never configured for use by the IB nexus driver.
+.sp
+The \fBunconfigured\fR operation is not supported for the HCA attachment point.
+The IB static apid, \fBib\fR, is shown unconfigured if the system has no IB
+hardware.
+.RE
+
+.sp
+.LP
+The attachment point conditions are:
+.sp
+.ne 2
+.na
+\fBfailed\fR
+.ad
+.sp .6
+.RS 4n
+Not used.
+.RE
+
+.sp
+.ne 2
+.na
+\fBfailing\fR
+.ad
+.sp .6
+.RS 4n
+Not used.
+.RE
+
+.sp
+.ne 2
+.na
+\fBok\fR
+.ad
+.sp .6
+.RS 4n
+Normal state. Ready for use.
+.RE
+
+.sp
+.ne 2
+.na
+\fBunknown\fR
+.ad
+.sp .6
+.RS 4n
+This state is only valid for IB device that have been probed by IBDM but not
+yet configured for use by Solaris. It is also shown for devices that have been
+explicitly offlined by a \fBcfgadm\fR \fB-c\fR \fBunconfigure\fR operation.
+This condition does not apply to a HCA attachment point.
+.RE
+
+.sp
+.ne 2
+.na
+\fBunusable\fR
+.ad
+.sp .6
+.RS 4n
+Not used.
+.RE
+
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-c\fR \fIfunction\fR\fR
+.ad
+.sp .6
+.RS 4n
+The IB hardware specific library supports two generic commands
+(\fIfunction\fRs). These commands are not supported on the static attachment
+points (that is, the HCA ap_ids and the IB static \fBib\fR ap_id).
+.sp
+The following generic commands are supported:
+.sp
+.ne 2
+.na
+\fBconfigure\fR
+.ad
+.sp .6
+.RS 4n
+Configure the IB device to be used by Solaris.
+.RE
+
+.sp
+.ne 2
+.na
+\fBunconfigure\fR
+.ad
+.sp .6
+.RS 4n
+Unconfigure the IB device. If successful, \fBcfgadm\fR reports the
+\fBcondition\fR of this \fBap_id\fR as \fBunknown\fR.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR\fR
+.ad
+.sp .6
+.RS 4n
+Not supported.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-h\fR \fIap_id\fR\fR
+.ad
+.sp .6
+.RS 4n
+Obtain IB specific help for an IB attachment point.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR\fR
+.ad
+.sp .6
+.RS 4n
+List the state and condition of IB attachment points. The \fB-l\fR option works
+as described in \fBcfgadm\fR(8).
+.sp
+When paired with the \fB-a\fR option, displays the dynamic attachment points as
+well (IOC, VPPA, Port, Pseudo, and HCA_SVC devices).
+.sp
+When paired with \fB-v\fR option, displays verbose data about the ap_ids. For
+an IOC, the \fBInfo\fR field in the
+.sp
+.in +2
+.nf
+cfgadm \fB-avl\fR
+.fi
+.in -2
+.sp
+
+output displays the following information: VendorID, IOCDeviceID,
+DeviceVersion, SubsystemVendorID, SubsystemID, Class, Subclass, Protocol,
+ProtocolVersion and IDString from the IOCControllerProfile. If the ID string
+isn't provided then nothing is displayed in its place. These fields are defined
+in the InfiniBand Specification Volume 1 (http://www.infinibandta.org).
+.sp
+For a VPPA, Port, or HCA_SVC device the \fBInfo\fR field in the \fBcfgadm
+-lav\fR display shows the service name information to which this device is
+bound. If no such information exists, nothing is displayed.
+.sp
+For a Pseudo device \fBcfgadm -alv\fR displays the driver name and its
+\fBunit-address\fR information. For a HCA the verbose listing displays the
+VendorID, ProductID of the HCA, number of ports it has, and the PortGUID value
+of its ports. See \fBEXAMPLES\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-o\fR \fIhardware_option\fR\fR
+.ad
+.sp .6
+.RS 4n
+This option is not currently defined.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR \fIlisting_option\fR\fR
+.ad
+.sp .6
+.RS 4n
+Attachment points of class ib can be listed by using the select sub-option.
+Refer to the \fBcfgadm\fR(8) man page for more information.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-x\fR \fIhardware_function\fR\fR
+.ad
+.sp .6
+.RS 4n
+Perform a hardware specific function. Note that the \fIname\fR can not be more
+than 4 characters long.
+.sp
+The following hardware specific functions are supported:
+.sp
+.ne 2
+.na
+\fB\fBadd_service\fR
+\fB-ocomm\fR\fB=[port|vppa|hca_svc],service=\fR\fIname\fR\fR
+.ad
+.sp .6
+.RS 4n
+This hardware specific function is supported on the static \fBIB\fR attachment
+point. It can be used to add a new service to \fB/kernel/drv/ib.conf\fR file
+and to update the \fBib\fR(4D) driver.
+.sp
+You must use the \fBservice=\fR\fIname\fR option to indicate the new service to
+be added. You must use the option \fBcomm=[port|vppa|hca_svc]\fR option to add
+the \fBname\fR service to either \fBport-svc-list\fR or to the
+\fBhca-svc-list\fR in the \fB/kernel/drv/ib.conf\fR file. See \fBEXAMPLES\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdelete_service\fR
+\fB-ocomm\fR\fB=[port|vppa|hca_svc],service=\fR\fIname\fR\fR
+.ad
+.sp .6
+.RS 4n
+This hardware specific function is supported on the static \fBIB\fR attachment
+point only. It can be used to delete an existing service from the
+\fB/kernel/drv/ib.conf\fR file and also from the \fBib\fR(4D) driver's data
+base. You must use the \fBservice=name\fR option to indicate which service to
+delete. You must use the \fBcomm=[port|vppa|hca_svc]\fR option to delete this
+service from the \fBport-svc-list\fR, \fBvppa-svc-list\fR, or
+\fBvppa-svc-list\fR of the \fB/kernel/drv/ib.conf\fR file. See \fBEXAMPLES\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBlist_clients\fR\fR
+.ad
+.sp .6
+.RS 4n
+Supported on \fBHCA\fR attachment points. Displays all the kernel IB clients
+using this \fBHCA\fR. It also displays the respective ap_ids of these kernel IB
+clients and if they have opened an alternate \fBHCA\fR device. See
+\fBEXAMPLES\fR.
+.sp
+\&.
+.sp
+If a given kernel IB client does not have a valid ap_id then a \fB-\fR is
+displayed in that column.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBlist_services\fR\fR
+.ad
+.sp .6
+.RS 4n
+This hardware specific function is supported on the static \fBIB\fR attachment
+point only. It lists all the Port and VPPA services as read from the
+\fB/kernel/drv/ib.conf\fR file. See \fBEXAMPLES\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBunconfig_clients\fR\fR
+.ad
+.sp .6
+.RS 4n
+This hardware specific function is supported on the static HCA attachment point
+only. It can be used to unconfigure all IB kernel clients of this given HCA.
+Only IB kernel clients that do not have an alternate HCA are unconfigured. See
+\fBEXAMPLES\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBupdate_ioc_config\fR\fR
+.ad
+.sp .6
+.RS 4n
+This hardware specific function is supported on static ib attachment point and
+the IOC attachment points. For the \fBib\fR APID, this function updates
+properties of all the IOC device nodes. For the IOC APID, this function updates
+the properties of specified IOC device node. This command updates the
+\fBport-list\fR, \fBport-entries\fR, \fBservice-id\fR, and \fBservice-name\fR
+IOC node properties .
+.sp
+See \fBib\fR(4D).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBupdate_pkey_tbls\fR\fR
+.ad
+.sp .6
+.RS 4n
+Supported on the static \fBib\fR attachment point. Updates the \fBPKEY\fR
+information inside \fBIBTL\fR. \fBIBTL\fR re-reads the \fBP_Key\fR tables for
+all the ports on each \fBHCA\fR present on the host.
+.sp
+See \fBibtl\fR(4D).
+.RE
+
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRListing the State and Condition of IB Devices
+.sp
+.LP
+The following command lists the state and condition of IB devices on the
+system. It only shows the static attachment points.
+
+.sp
+.in +2
+.nf
+example# cfgadm
+hca:21346543210a987 IB-HCA connected configured ok
+ib IB-FABRIC connected configured ok
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The \fB-a\fR option lists all attachment points. The following example uses the
+\fB-a\fR option and lists all attachment points:
+
+.sp
+.in +2
+.nf
+example# cfgadm -a
+hca:21346543210a987 IB-HCA connected configured ok
+ib IB-FABRIC connected configured ok
+ib::80020123456789a IB-IOC connected unconfigured ok
+ib::80245678,ffff,ipib IB-VPPA connected configured ok
+ib::21346543,0,hnfs IB-HCA_SVC connected configured ok
+ib::12245678,0,nfs IB-PORT connected configured ok
+ib::sdp,0 IB-PSEUDO connected configured ok
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRListing the Verbose Status of a IB VPPA Device
+.sp
+.LP
+The following command lists the verbose status of a IB VPPA device:
+
+.sp
+.in +2
+.nf
+example# cfgadm -alv ib::80245678,ffff,ipib
+Ap_Id Receptacle Occupant Condition Information
+When Type Busy Phys_Id
+ib::80245678,ffff,ipib connected configured ok ipib
+unavailable IB-VPPA n /devices/ib:fabric::80245678,ffff,ipib
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+A verbose listing of an IOC shows additional information. The following command
+shows a verbose listing:
+
+.sp
+.in +2
+.nf
+example# cfgadm -alv ib::80020123456789a
+Ap_Id Receptacle Occupant Condition Information
+When Type Busy Phys_Id
+ib::80020123456789a connected configured ok VID: 0xeaea
+DEVID: 0xeaea VER: 0x5 SUBSYS_VID: 0x0 SUBSYS_ID: 0x0 CLASS: 0xffff
+SUBCLASS: 0xff PROTO: 0xff PROTOVER: 0x1 ID_STRING: Sample Host Adapter
+unavailable IB-IOC n /devices/ib:fabric::80020123456789a
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+A verbose listing of a Pseudo device shows:
+
+.sp
+.in +2
+.nf
+example# cfgadm -alv ib::sdp,0
+Ap_Id Receptacle Occupant Condition Information
+When Type Busy Phys_Id
+ib::sdp,0 connected configured ok Driver = "sd
+p" Unit-address = "0"
+unavailable IB-PSEUDO n /devices/ib:fabric::sdp,0
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+A verbose listing of a HCA shows:
+
+.sp
+.in +2
+.nf
+example# cfgadm -alv hca:21346543210a987
+Ap_Id Receptacle Occupant Condition Information
+When Type Busy Phys_Id
+hca:21346543210a987 connected configured ok VID: 0x15b3,
+PID: 0x5a44, #ports: 0x2, port1 GUID: 0x80245678, port2 GUID: 0x80245679
+unavailable IB-HCA n /devices/ib:21346543210a987
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+You can obtain more user-friendly output if you specify these following
+\fBcfgadm\fR class and field selection options: \fB\fR\fB-s\fR
+\fB"select=class(ib),cols=ap_id:info"\fR
+
+.sp
+.LP
+The following command displays only IB ap_ids. The output only includes the
+\fBap_id\fR and \fBInformation\fR fields.
+
+.sp
+.in +2
+.nf
+
+# cfgadm -al -s "cols=ap_id:info" ib::80245678,ffff,ipib
+Ap_Id Information
+ib::80245678,ffff,ipib ipib
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRUnconfiguring an Existing IB IOC
+.sp
+.LP
+The following command unconfigures the IB IOC attached to
+\fBib::80020123456789a\fR, then displays the status of the \fBap_id\fR:
+
+.sp
+.in +2
+.nf
+# cfgadm -c unconfigure ib::80020123456789a
+Unconfigure the device: /devices/ib:fabric::80020123456789a
+This operation will suspend activity on the IB device
+Continue (yes/no)?
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Enter: \fBy\fR
+
+.sp
+.in +2
+.nf
+IB device unconfigured successfully.
+# cfgadm -al ib::80020123456789a
+Ap_Id Type Receptacle Occupant Condition
+ib::80020123456789 IB-IOC connected unconfigured unknown
+#
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The condition unknown implies that the device node doesn't exist anymore and
+this IB device's existence is known only to the IB Device Manager.
+
+.LP
+\fBExample 4 \fRConfiguring an IB IOC
+.sp
+.LP
+The following series of commands configures an IB device attached to
+\fBib::80020123456789a\fR:
+
+.sp
+.in +2
+.nf
+# cfgadm -yc configure ib::80020123456789a
+# cfgadm -al ib::80020123456789a
+Ap_Id Type Receptacle Occupant Condition
+ib::80020123456789a IB-IOC connected configured ok
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 5 \fRListing All Kernel IB Clients of a HCA
+.sp
+.LP
+The following command lists all kernel IB clients of an HCA attached to
+\fBhca:21346543210a987\fR:
+
+.sp
+.in +2
+.nf
+# cfgadm -x list_clients hca:21346543210a987
+Attachment Point Clients Alternate HCA
+ib::80020123456789a ioc1 Yes
+ib::80245678,ffff,ipib ipib No
+ib::21346543,0,hnfs hnfs No
+- ibdm No
+- ibmf No
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 6 \fRAdding a Port Service
+.sp
+.LP
+The following command adds a new Port service called \fBsrp\fR:
+
+.sp
+.in +2
+.nf
+ # cfgadm -o comm=port,service=srp -x add_service ib
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 7 \fRDeleting a VPPA Service
+.sp
+.LP
+The following command deletes the \fBibd\fR VPPA service \fBibd\fR:
+
+.sp
+.in +2
+.nf
+# cfgadm -o comm=vppa,service=ipib -x delete_service ib
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 8 \fRListing Port, VPPA, HCA_SVC Services
+.sp
+.LP
+The following command lists all Port, VPPA, and HCA_SVC services:
+
+.sp
+.in +2
+.nf
+# cfgadm -x list_services ib
+Port communication services:
+ srp
+
+VPPA communication services:
+ ipib
+ nfs
+
+HCA_SVC communication services:
+ hnfs
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 9 \fRReprobing IOC Devices
+.sp
+.LP
+The following command reprobes all IOC device nodes.
+
+.sp
+.in +2
+.nf
+# cfgadm -x update_ioc_config ib
+This operation can update properties of IOC devices.
+Continue (yes/no)?
+
+Enter: y
+
+#
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 10 \fRUnconfiguring All Kernel Clients of a HCA
+.sp
+.LP
+The following command unconfigures all kernel clients of a HCA
+
+.sp
+.in +2
+.nf
+# cfgadm -x unconfig_clients hca:21346543
+ This operation will unconfigure clients of this HCA.
+ Continue (yes/no)?
+
+ Enter: y
+.fi
+.in -2
+.sp
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/cfgadm/ib.so.1\fR\fR
+.ad
+.sp .6
+.RS 4n
+Hardware-specific library for generic InfiniBand device administration
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR config_admin (3CFGADM),
+.BR libcfgadm (3LIB),
+.BR ib (4D),
+.BR ibdm (4D),
+.BR ibtl (4D),
+.BR ib (5),
+.BR attributes (7),
+.BR cfgadm (8)
+.sp
+.LP
+InfiniBand Specification Volume 1 (http://www.infinibandta.org)
+.SH NOTES
+.sp
+.LP
+Apart from the listing (\fBcfgadm\fR \fB-l\fR or \fBcfgadm\fR \fB-x\fR
+\fBlist_clients\fR), only the superuser can execute any functions on an
+attachment point.
diff --git a/usr/src/man/man8/cfgadm_pci.8 b/usr/src/man/man8/cfgadm_pci.8
new file mode 100644
index 0000000000..bd5ce7a0d2
--- /dev/null
+++ b/usr/src/man/man8/cfgadm_pci.8
@@ -0,0 +1,946 @@
+'\" te
+.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH CFGADM_PCI 8 "June 20, 2021"
+.SH NAME
+cfgadm_pci \- PCI, CompactPCI, and PCI Express Hotplug hardware specific
+commands for cfgadm
+.SH SYNOPSIS
+.nf
+\fB/usr/sbin/cfgadm\fR [\fB-f\fR] [\fB-y\fR | \fB-n\fR] [\fB-v\fR]
+ [\fB-o\fR \fIhardware_options\fR] \fB-c\fR \fIfunction\fR \fIap_id\fR [\fIap_id\fR]
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/cfgadm\fR [\fB-f\fR] [\fB-y\fR | \fB-n\fR] [\fB-v\fR]
+ [\fB-o\fR \fIhardware_options\fR] \fB-x\fR \fIhardware_function\fR \fIap_id\fR
+ [\fIap_id\fR]
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/cfgadm\fR [\fB-v\fR] [\fB-s\fR \fIlisting_options\fR]
+ [\fB-o\fR \fIhardware_options\fR] [\fB-l\fR [\fIap_id\fR | \fIap_type\fR]]
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/cfgadm\fR [\fB-v\fR] [\fB-o\fR \fIharware_options\fR] \fB-t\fR \fIap_id\fR [\fIap_id\fR]
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/cfgadm\fR [\fB-v\fR] [\fB-o\fR \fIhardware_function\fR] \fB-h\fR
+ [\fIap_id\fR| \fIap_type\fR]
+.fi
+
+.SH DESCRIPTION
+The PCI hardware specific library, \fB/usr/lib/cfgadm/pci.so.1\fR, provides the
+support for hot plugging PCI, CompactPCI, and PCI Express adapter cards into
+the respective hot pluggable slots in a system that is hot plug capable,
+through the \fBcfgadm\fR command (see \fBcfgadm\fR(8)). Hot plug
+administrative models between PCI, CompactPCI, and PCI Express remain the same
+except where noted in this document.
+.sp
+.LP
+For PCI Hot Plug, each hot plug slot on a specific PCI bus is represented by an
+attachment point of that specific PCI bus.
+.sp
+.LP
+An attachment point consist of two parts: a receptacle and an occupant. The
+\fBreceptacle\fR under PCI hot plug is usually referred to as the physical hot
+pluggable slot; and the \fBoccupant\fR is usually referred to as the PCI
+adapter card that plugs into the slot.
+.sp
+.LP
+Attachment points are named through \fBap_id\fRs. There are two types of
+\fBap_id\fRs: logical and physical. The physical \fBap_id\fR is based on the
+physical pathname, that is, \fB/devices/pci@1/hpc0_slot3\fR, whereas the
+logical \fBap_id\fR is a shorter, and more user-friendly name. For PCI hot
+pluggable slots, the logical \fBap_id\fR is usually the corresponding hot plug
+controller driver name plus the logical slot number, that is,
+\fBpci0:hpc0slot1\fR; PCI nexus driver, with hot plug controller driver named
+\fBhpc\fR and slot number \fB1\fR. The \fBap_type\fR for Hot plug PCI is
+\fBpci\fR.
+.sp
+.LP
+Note that the \fBap_type\fR is not the same as the information in the
+\fBType\fR field.
+.sp
+.LP
+See the \fI\fR for a detailed description of the hot plug procedure.
+.SS "PCI Express ap_id naming"
+For attachment points located in a PCI Express hierarchy (that is, the parent
+or an ancestor is a PCI Express device), including attachment points which are
+not PCI Express devices themselves, the following naming scheme is used:
+.sp
+.in +2
+.nf
+Grammar:
+ APID : absolute-slot-path
+
+ absolute-slot-path : \fIslot-path\fR[\fI:slot-path\fR[\fI:slotpath\fR ...]]
+
+ slot-path : [\fIfru-id\fR.]\fIslot-id\fR
+ where \fIfru-id\fR indicates the chassis FRU, if any,
+ containing the \fIslot-id\fR
+
+ fru-id : \fIfru-type\fR[\fIserialid#\fR]
+ where \fIfru-type\fR is "iob" for PCI Express expansion
+ chassis, followed by its serial number \fIserialid#\fR,
+ if available
+
+ slot-id: \fIslot-name\fR | \fIdevice-type\fR \fIphysical-slot#\fR |\e
+ \fInexus-driver-name\fR \fInexus-driver-instance\fR.\e
+ \fIdevice-type\fR \fIpci-device-number\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+where \fIslot-name\fR is a name assigned by the platform or hardware itself;
+\fIdevice-type\fR is either "pcie"for PCI Express devices or "pci" for PCI
+devices; \fInexus-driver-name\fR is the driver name for the device component;
+\fIphysical-slot#\fR is the hardware slot number; and \fIpci-device-number\fR
+is the PCI device number in standard PCI nomenclature.
+.sp
+.LP
+First, an \fIabsolute-slot-path\fR is constructed that attempts to describe the
+attachment point's topological location in more physically identifiable terms
+for the user. This \fIabsolute-slot-path\fR consists of \fIslot-path\fR
+components each separated by a ":" (colon). The leaf or left-most
+\fIslot-path\fR component describes the device of the attachment point itself
+while its right adjacent \fIslot-path\fR component up to the right or top-most
+\fIslot-path\fR component describes the parent up to the root devices,
+respectively.
+.sp
+.LP
+Each \fIslot-path\fR consists of a \fIslot-id\fR optionally preceded by an
+\fIfru-id\fR, which indicates an expansion chassis containing the device
+described by \fIslot-id\fR (detailed below). \fIfru-id\fR consists of
+\fIfru-type\fR followed by an optional \fIserialid#\fR. \fIfru-type\fR is "iob"
+for PCI Express expansion chassis types, while \fIserialid#\fR is either a
+64-bit hexadecimal number indicating a raw serial number obtained from the
+expansion chassis hardware, or a 4 upper-case ASCII character sequence for Sun
+branded expansion chassis.
+.sp
+.LP
+Each \fIslot-id\fR consists of one of three possible forms:
+.sp
+.ne 2
+.na
+\fBslot-id form (1)\fR
+.ad
+.sp .6
+.RS 4n
+\fIslot-names\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fBslot-id form (2)\fR
+.ad
+.sp .6
+.RS 4n
+\fIdevice-type\fR \fIphysical-slot#\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fBslot-id form (3)\fR
+.ad
+.sp .6
+.RS 4n
+\fInexus-driver-name\fR \fInexus-driver-instance\fR. \fIdevice-type\fR
+\fIpci-device-number\fR
+.RE
+
+.sp
+.LP
+The precedence of which form to select flows from the lowest form number to the
+highest form number, or from top to bottom as described above. If a form
+cannot be successfully constructed, then the next numerically higher form is
+attempted.
+.sp
+.LP
+The \fIslot-names\fR in "slot-id form (1)" is taken from the "slot-names"
+property of the corresponding node in the device tree and is a name assigned by
+hardware or the platform. This format is not predefined or established.
+.sp
+.LP
+In "slot-id form (2)", \fIdevice-type\fR indicates the device type of the
+component's slot, and is either "pcie" for PCI Express or "pci" for PCI, while
+\fIphysical-slot#\fR, take from the "physical-slot#" property of its
+corresponding device node, indicates the hardware slot number of the component.
+.sp
+.LP
+"slot-id form (3)" is used when all other forms cannot successfully be
+constructed, and is considered to be the default form. \fInexus-driver-name\fR
+is the component's driver name; \fInexus-driver-instance\fR is such driver's
+instance; \fIdevice-type\fR is the same as described in form (2);
+\fIpci-device-type\fR is the PCI device number as described and used for device
+configuration cycles in standard PCI nomenclature.
+.sp
+.LP
+In summary of the \fIslot-path\fR component, expanding the optional FRU
+component that may precede it, \fIslot-path\fR will consist one of the
+following forms in order:
+.sp
+.in +2
+.nf
+(1) [ iob[serialid#]. ] slot-names
+(2) [ iob[serialid#]. ] device_type physical_slot#
+(2) [ iob[serialid#]. ]
+ nexus-driver-name nexus-driver-instance.
+ device_type pci-device-number
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Lastly, the final form of the actual \fIap_id\fR name used in \fBcfgadm\fR is
+decided as follows, specified in order of precedence:
+.sp
+.ne 2
+.na
+\fBap_id form (1)\fR
+.ad
+.sp .6
+.RS 4n
+if the \fIabsolute-slot-path\fR can fit within the fixed length limit of
+\fBcfgadm\fR's \fIap_id\fR field, then \fIabsolute-slot-path\fR itself is used
+.RE
+
+.sp
+.ne 2
+.na
+\fBap_id form (2)\fR
+.ad
+.sp .6
+.RS 4n
+(\fIabsolute-slot-path\fR exceeds the \fIap_id\fR length limit) if the last
+\fIslot_path\fR component is contained within an expansion chassis, and it
+contains a \fIserialid#\fR, then the last \fIslot_path\fR component is used.
+The requirement for a \fIserialid#\fR in this form is to ensure a globally
+unique \fIap_id\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBap_id form (3)\fR
+.ad
+.sp .6
+.RS 4n
+(\fIabsolute-slot-path\fR exceeds the \fIap_id\fR length limit) the default
+form, "slot-id form (3)", of the last \fIslot_path\fR component is used
+.RE
+
+.sp
+.LP
+Whichever final \fIap_id\fR name is used, the \fIabsolute-slot-path\fR is
+stored in the Information ("info") field which can be displayed using the
+\fB-s\fR or \fB-v\fR options. This information can be used to physically locate
+any \fIap_id\fRs named using "ap_id form (2)" or "ap_id form (3)". The
+\fIabsolute-slot-path\fR is transformed slightly when stored in the information
+field, by the replacement of a colon (":") with forward slashes ("/") to more
+closely denote a topological context. The \fIabsolute-slot-path\fR can include
+\fIslot-path\fR components that are not hotpluggable above the leaf or
+right-most \fIslot-path\fR component up to the onboard host slot.
+.sp
+.LP
+See the EXAMPLES section for a list of hotpluggable examples.
+.SH OPTIONS
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-c\fR \fIfunction\fR\fR
+.ad
+.sp .6
+.RS 4n
+The following \fIfunction\fRs are supported for PCI hot pluggable slots:
+.sp
+.ne 2
+.na
+\fBconfigure\fR
+.ad
+.sp .6
+.RS 4n
+Configure the PCI device in the slot to be used by Solaris.
+.RE
+
+.sp
+.ne 2
+.na
+\fBconnect\fR
+.ad
+.sp .6
+.RS 4n
+Connect the slot to PCI bus.
+.RE
+
+.sp
+.ne 2
+.na
+\fBdisconnect\fR
+.ad
+.sp .6
+.RS 4n
+Disconnect the slot from the PCI bus.
+.RE
+
+.sp
+.ne 2
+.na
+\fBinsert\fR
+.ad
+.sp .6
+.RS 4n
+Not supported.
+.RE
+
+.sp
+.ne 2
+.na
+\fBremove\fR
+.ad
+.sp .6
+.RS 4n
+Not supported.
+.RE
+
+.sp
+.ne 2
+.na
+\fBunconfigure\fR
+.ad
+.sp .6
+.RS 4n
+Logically remove the PCI device's resources from the system.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR\fR
+.ad
+.sp .6
+.RS 4n
+Not supported.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-h\fR \fIap_id\fR | \fIap_type\fR\fR
+.ad
+.sp .6
+.RS 4n
+Print out PCI hot plug specific help message.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR \fIlist\fR\fR
+.ad
+.sp .6
+.RS 4n
+List the values of PCI Hot Plug slots.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-o\fR \fIhardware_options\fR\fR
+.ad
+.sp .6
+.RS 4n
+No hardware specific options are currently defined.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR \fIlisting_options\fR\fR
+.ad
+.sp .6
+.RS 4n
+Same as the generic \fBcfgadm\fR(8).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-t\fR \fIap_id\fR\fR
+.ad
+.sp .6
+.RS 4n
+This command is only supported on platforms which support testing capability on
+the slot.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.sp .6
+.RS 4n
+Execute in verbose mode.
+.sp
+When the \fB-v\fR option is used with the \fB-l\fR option, the \fBcfgadm\fR
+command outputs information about the attachment point. For attachment points
+located in a PCI Express hierarhcy, the Information field will contain the
+attachment point's absolute slot path location, including any hardware or
+platform specific labeling information for each component in the slot path.
+Each component in the slot path will be separated by a "/" (forward slash). See
+the PCI Express ap_id naming section. For PCI Hot Plug attachment points not
+located in a PCI Express hierarchy, the \fBInformation\fR field will be the
+slot's system label, if any. This string will be obtained from the
+\fBslot-name\fR property of the slot's bus node. The information in the Type
+field is printed with or without the \fB-v\fR option. The occupant \fBType\fR
+field will describe the contents of the slot. There are 2 possible values:
+.sp
+.ne 2
+.na
+\fBunknown\fR
+.ad
+.sp .6
+.RS 4n
+The slot is empty. If a card is in the slot, the card is not configured or
+there is no driver for the device on the card.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIsubclass\fR/\fIboard\fR\fR
+.ad
+.sp .6
+.RS 4n
+The card in the slot is either a single-function or multi-function device.
+.sp
+\fIsubclass\fR is a string representing the subclass code of the device, for
+example, SCSI, \fBethernet\fR, \fBpci-isa\fR, and so forth. If the card is a
+multi-functional device, \fBMULT\fR will get printed instead.
+.sp
+\fIboard\fR is a string representing the board type of the device. For example,
+hp is the string used for a PCI Hot Plug adapter, hs is used for a Hot Swap
+Board, nhs for a Non\(emHot Swap cPCI Board, bhs for a Basic Hot Swap cPCI
+Board, and fhs for a Full Hot Swap cPCI Board.
+.sp
+Most PCI cards with more than one device are not multi-function devices, but
+are implemented as a PCI bridge with arbitrary devices behind them. In those
+cases, the subclass displayed is that of the PCI bridge. Most commonly, the
+bridges are \fBpci-pci,\fR a generic PCI to PCI bridge or \fBstpci\fR, a
+semi-transparent PCI bridge.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-x\fR \fIhardware_function\fR\fR
+.ad
+.sp .6
+.RS 4n
+Perform hardware specific function. These hardware specific functions should
+not normally change the state of a receptacle or occupant.
+.sp
+The following \fIhardware_functions\fR are supported:
+.sp
+.ne 2
+.na
+\fBenable_slot | disable_slot\fR
+.ad
+.sp .6
+.RS 4n
+Change the state of the slot and preserve the state of slot across reboot.
+Preservation of state across reboot is only supported on select platforms.
+.sp
+\fBenable_slot\fR enables the addition of hardware to this slot for hot
+plugging and at boot time.
+.sp
+\fBdisable_slot\fR disables the addition of hardware to this slot for hot
+plugging and at boot time. When a slot is disabled its condition is shown as
+unusable.
+.RE
+
+.sp
+.ne 2
+.na
+\fBenable_autoconfig | disable_autoconfig\fR
+.ad
+.sp .6
+.RS 4n
+Change the ability to autoconfigure the occupant of the slot. Only platforms
+that support auto configuration support this feature.
+.sp
+\fBenable_autoconfig\fR enables the ability to autoconfigure the slot.
+.sp
+\fBdiable_autoconfig\fR disables the ability to autoconfigure the slot.
+.sp
+Autoconfiguration is done through the attention button on the PCI Express
+platforms and through the injector/ejector latch on the CompactPCI platforms.
+When autoconfiguration is disabled, the attention button or latch mechanism
+cannot be used to configure the occupant of the slot.
+.RE
+
+.sp
+.ne 2
+.na
+\fBled=[\fIled_sub_arg\fR],mode=[\fImode_sub_arg\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Without sub-arguments, print a list of the current LED settings. With
+sub-arguments, set the mode of a specific LED for a slot.
+.sp
+Specify \fIled_sub_arg\fR as \fBfault\fR, \fBpower\fR, \fBattn\fR, or
+\fBactive\fR.
+.sp
+Specify \fImode_sub_arg\fR as \fBon\fR, \fBoff\fR or \fBblink\fR.
+.sp
+For PCI Express, only the power and attn LEDs are valid and only the state of
+the \fBattn\fR LED can be changed.
+.sp
+Changing the state of the LED does not change the state of the receptacle or
+occupant. Normally, the LEDs are controlled by the hot plug controller, no user
+intervention is necessary. Use this command for testing purposes.
+.sp
+\fBCaution:\fR Changing the state of the LED can misrepresent the state of
+occupant or receptacle.
+.sp
+The following command prints the values of LEDs:
+.sp
+.in +2
+.nf
+example# \fBcfgadm -x led pci0:hpc0_slot1\fR
+Ap_Id Led
+pci0:hpc0_slot1 power=on,fault=off,active=off,attn=off
+.fi
+.in -2
+.sp
+
+The following command turns on the Fault LED:
+.sp
+.in +2
+.nf
+example# \fBcfgadm -x led=fault,mode=on pci0:hpc0_slot1\fR
+.fi
+.in -2
+.sp
+
+The following command turns off the Power LED:
+.sp
+.in +2
+.nf
+example# \fBcfgadm -x led=power,mode=off pci0:hpc0_slot0\fR
+.fi
+.in -2
+.sp
+
+The following command sets the \fBactive\fR LED to blink to indicate the
+location of the slot:
+.sp
+.in +2
+.nf
+example# \fBcfgadm -x led=active,mode=on pci0:hpc0_slot3\fR
+.fi
+.in -2
+.sp
+
+.RE
+
+.RE
+
+.SH EXAMPLES
+\fBExample 1 \fRPrinting out the Value of Each Slot
+.sp
+.LP
+The following command prints out the values of each slot:
+
+.sp
+.in +2
+.nf
+example# \fBcfgadm -l\fR
+Ap_Id Type Receptacle Occupant Condition
+c0 scsi-bus connected configured unknown
+c1 scsi-bus connected unconfigured unknown
+c2 scsi-bus connected unconfigured unknown
+cpci_slot1 stpci/fhs connected configured ok
+cpci_slot2 unknown empty unconfigured unknown
+cpci_slot4 stpci/fhs connected configured ok
+cpci_slot5 stpci/fhs connected configured ok
+pcie7 etherne/hp connected configured ok
+pcie8 unknown empty unconfigured unknown
+pcie9 fibre/hp connected configured ok
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRReplacing a Card
+.sp
+.LP
+The following command lists all DR-capable attachment points:
+
+.sp
+.in +2
+.nf
+example# \fBcfgadm\fR
+
+
+Type Receptacle Occupant Condition
+c0 scsi-bus connected configured unknown
+c1 scsi-bus connected unconfigured unknown
+c2 scsi-bus connected unconfigured unknown
+cpci_slot1 stpci/fhs connected configured ok
+cpci_slot2 unknown empty unconfigured unknown
+cpci_slot4 stpci/fhs connected configured ok
+cpci_slot5 stpci/fhs connected configured ok
+pcie7 etherne/hp connected configured ok
+pcie8 unknown empty unconfigured unknown
+pcie9 fibre/hp connected configured ok
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The following command unconfigures and electrically disconnects the card:
+
+.sp
+.in +2
+.nf
+example# \fBcfgadm -c disconnect cpci_slot4\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The change can be verified by entering the following command:
+
+.sp
+.in +2
+.nf
+example# \fBcfgadm cpci_slot4\fR
+
+
+Ap_Id Type Receptacle Occupant Condition
+cpci_slot4 unknown disconnected unconfigured unknown
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Now the card can be swapped. The following command electrically connects and
+configures the card:
+
+.sp
+.in +2
+.nf
+example# \fBcfgadm -c configure cpci_slot4\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The change can be verified by entering the following command:
+
+.sp
+.in +2
+.nf
+example# \fBcfgadm cpci_slot4\fR
+
+
+Ap_Id Type Receptacle Occupant Condition
+cpci_slot4 stpcipci/fhs connected configured ok
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRInterpreting ApIds for devices in a PCI Express topology
+.sp
+.LP
+The following command shows a listing for a topology with both PCI Express and
+PCI attachment points in I/O expansion chassis connected to hotpluggable slots
+at the host level:
+
+.sp
+.in +2
+.nf
+example# \fBcfgadm -s cols=ap_id:info\fR
+
+
+Ap_Id Information
+iou#0-pci#0 Location: iou#0-pci#0
+iou#0-pci#1 Location: iou#0-pci#1
+iou#0-pci#1:iob.pci3 Location: iou#0-pci#1/iob.pci3
+iou#0-pci#1:iob.pci4 Location: iou#0-pci#1/iob.pci4
+iou#0-pci#2 Location: iou#0-pci#2
+iou#0-pci#2:iob58071.pcie1 Location: iou#0-pci#2/iob58071.pcie1
+iou#0-pci#2:iob58071.special Location: iou#0-pci#2/iob58071.special
+iou#0-pci#3 Location: iou#0-pci#3
+iou#0-pci#3:iobBADF.pcie1 Location: iou#0-pci#3/iobBADF.pcie1
+iou#0-pci#3:iobBADF.pcie2 Location: iou#0-pci#3/iobBADF.pcie2
+iou#0-pci#3:iobBADF.pcie3 Location: iou#0-pci#3/iobBADF.pcie3
+iou#0-pci#3:iobBADF.pci1 Location: iou#0-pci#3/iobBADF.pci1
+iou#0-pci#3:iobBADF.pci2 Location: iou#0-pci#3/iobBADF.pci2
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+In this example, the "iou#0-pci#[0-3]" represents the top-most hotpluggable
+slots in the system. Since the "iou#<n>-pci#<n>" form does not match any of the
+forms stated in the grammar specification section described earlier, we can
+infer that such a name for the base component in this hotplug topology is
+derived from the platform through the "slot-names" property.
+
+.sp
+.ne 2
+.na
+\fBSlot iou#0-pci#0\fR
+.ad
+.sp .6
+.RS 4n
+this slot is empty or its occupant is unconfigured
+.RE
+
+.sp
+.ne 2
+.na
+\fBSlot iou#0-pci#1\fR
+.ad
+.sp .6
+.RS 4n
+this slot contains an expansion chassis with two hotpluggable slots, "pci3" and
+"pci4". "pci3" and "pci4" represent two PCI slots contained within that
+expansion chassis with physical slot numbers 3 and 4 respectively. The
+expansion chassis in this case does not have or exports a \fIserial-id\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBSlot iou#0-pci#2\fR
+.ad
+.sp .6
+.RS 4n
+this slot contains a third party expansion chassis with a hexadecimal
+\fIserial-id\fR of 58071. Within that expansion chassis are two hotpluggable
+slots, "pcie1" and "special". "pcie1" represents a PCI Express slot with
+physical slot number 1. The slot "special" has a label which is derived from
+the platform, hardware or firmware.
+.RE
+
+.sp
+.ne 2
+.na
+\fBSlot iou#0-pci#3\fR
+.ad
+.sp .6
+.RS 4n
+this slot contains a Sun expansion chassis with an FRU identifier of "BADF".
+This expansion chassis contains three PCI Express slots, "pcie1", "pcie2", and
+"pcie3" with physical slot numbers 1, 2, and 3 respectively; and two PCI slots,
+"pci1" and "pci2" with physical slot numbers 1 and 2, respectively.
+.RE
+
+.sp
+.LP
+The following command shows a listing for a topology with both PCI Express and
+PCI attachment points in I/O expansion chassis connected hotpluggable and
+non-hotpluggable host slots:
+
+.sp
+.in +2
+.nf
+example# \fBcfgadm -s cols=ap_id:info\fR
+
+
+Ap_Id Information
+Slot1 Location: Slot1
+Slot2:iob4ffa56.pcie1 Location: Slot2/iob4ffa56.pcie1
+Slot2:iob4ffa56.pcie2 Location: Slot2/iob4ffa56.pcie2
+Slot5:iob3901.pci1 Location: Slot2/iob3901.pci1
+Slot5:iob3901.pci2 Location: Slot2/iob3901.pci2
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+In this example, the host system only has one hotpluggable slot, "Slot1". We
+can infer that "Slot2" and "Slot5" are not hotpluggable slots because they do
+not appear as attachment points themselves in \fBcfgadm\fR. However, "Slot2"
+and "Slot5" each contains a third party expansion chassis with hotpluggable
+slots.
+
+.sp
+.LP
+The following command shows a listing for a topology with attachment points
+that are lacking in certain device properties:
+
+.sp
+.in +2
+.nf
+example# \fBcfgadm -s cols=ap_id:info\fR
+
+Ap_Id Information
+px_pci7.pcie0 Location: px_pci7.pcie0
+px_pci11.pcie0 Location: px_pci11.pcie0
+px_pci11.pcie0:iob.pcie1 Location: px_pci11.pcie0/iob.pcie1
+px_pci11.pcie0:iob.pcie2 Location: px_pci11.pcie0/iob.pcie2
+px_pci11.pcie0:iob.pcie3 Location: px_pci11.pcie0/iob.pcie3
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+In this example, the host system contains two hotpluggable slots,
+"px_pci7.pcie0" and "px_pci11.pcie0". In this case, it uses "slot-id form (3)"
+( the default form) for the base \fIslot-path\fR component in the
+\fIabsolute-slot-path\fR because the framework could not obtain enough
+information to produce other more descriptive forms of higher precedence.
+
+.sp
+.LP
+Interpreting right-to-left, attachment point "px_pci7.pcie0" represents a PCI
+Express slot with PCI device number 0 (which does not imply a physical slot
+number of the same), bound to nexus driver "px_pci", instance 7. Likewise,
+attachment point "px_pci11.pcie0" represents a PCI Express slot with PCI device
+number 0 bound to driver instance 11 of px_pci.
+
+.sp
+.LP
+Under "px_pci11.pcie0" is a third party expansion chassis without a
+\fIserial-id\fR and with three hotpluggable PCI Express slots.
+
+.sp
+.LP
+The following command shows a listing for a topology with attachment point
+paths exceeding the \fIApId\fR field length limit:
+
+.sp
+.in +2
+.nf
+example# \fBcfgadm -s cols=ap_id:info\fR
+
+Ap_Id Information
+pcie4 Location: pcie4
+pcie4:iobSUNW.pcie1 Location: pcie4/iobSUNW.pcie1
+pcie4:iobSUNW.pcie2 Location: pcie4/iobSUNW.pcie2
+iob8879c3f3.pci1
+ Location: pcie4/iobSUNW.pcie2/iob8879c3f3.pci1
+iob8879c3f3.pci2
+ Location: pcie4/iobSUNW.pcie2/iob8879c3f3.pci2
+iob8879c3f3.pci3
+ Location: pcie4/iobSUNW.pcie2/iob8879c3f3.pci3
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+In this example, there is only one hotpluggable slot, "pcie4" in the host.
+Connected under "pcie4" is a SUN expansion chassis with FRU identifier "SUNW".
+Nested under PCI Express slot "pcie2" of that expansion chassis (ApId
+pcie4:iobSUNW.pcie2) lies another expansion chassis with three hotpluggable PCI
+slots.
+
+.sp
+.LP
+Because the length of the \fIabsolute-slot-path\fR form of
+"pcie4/iobSUNW.pcie2/iob8879c3f3.pci1...3" exceeds the \fIApId\fR field length
+limit, and the leaf \fIslot-path\fR component is globally unique, "ap_id form
+(2)" is used, where the leaf \fIslot-path\fR component in the
+\fIabsolute-slot-path\fR is used as the final \fIApId\fR.
+
+.sp
+.LP
+The following command shows a listing for a topology with attachment point
+paths exceeding the \fIApId\fR field length limit and lacking enough
+information to uniquely identify the leaf \fIslot-id\fR on its own (for
+instance, missing the \fIserial-id\fR):
+
+.sp
+.in +2
+.nf
+example# \fBcfgadm -s cols=ap_id:info\fR
+
+
+Ap_Id Information
+pcie4 Location: pcie4
+pcie4:iob4567812345678.pcie3 Location: pcie4/iob4567812345678.pcie3
+px_pci20.pcie0
+ Location: pcie4/iob4567812345678.pcie3/iob.pcie1
+px_pci21.pcie0
+ Location: pcie4/iob4567812345678.pcie3/iob.pcie2
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+In this example, there is only one hotpluggable slot, "pcie4" in the host.
+Connected under "pcie4" is a third party expansion chassis with hexadecimal
+\fIserial-id\fR 4567812345678. Nested under the PCI Express slot "pcie3" of
+that expansion chassis (ApId pcie4:iob4567812345678.pcie3), lies another third
+part expansion chassis without a \fIserial-id\fR and with two hotpluggable PCI
+Express slots.
+
+.sp
+.LP
+Because the length of the \fIabsolute-slot-path\fR form of
+"pcie4/iob4567812345678.pcie3/iob.pcie1...2" exceeds the \fIApId\fR field
+length limit, and the leaf \fIslot-path\fR component is not globally unique,
+"ap_id form (3)" is used. "ap_id form (2)" is where \fIslot-id\fR form (3)
+(default form) of the leaf \fIslot-path\fR component in the
+\fIabsolute-slot-path\fR is used as the final \fIApId\fR.
+
+.sp
+.LP
+The default form or "slot-id form (3)" of the leaf component
+".../iob.pcie1"represents a PCI Express slot with device number 0, bound to
+driver instance 20 of "px_pci". Likewise, the default form of the leaf
+component ".../iob.pcie2" represents a PCI Express slot with device number 0,
+bound to driver instance 21 of "px_pci"
+
+.SH FILES
+.ne 2
+.na
+\fB/usr/lib/cfgadm/pci.so.1\fR
+.ad
+.sp .6
+.RS 4n
+Hardware specific library for PCI hot plugging.
+.RE
+
+.SH SEE ALSO
+.BR config_admin (3CFGADM),
+.BR libcfgadm (3LIB),
+.BR attributes (7),
+.BR cfgadm (8)
+.sp
+.LP
+\fI\fR
diff --git a/usr/src/man/man8/cfgadm_sata.8 b/usr/src/man/man8/cfgadm_sata.8
new file mode 100644
index 0000000000..f877aab74b
--- /dev/null
+++ b/usr/src/man/man8/cfgadm_sata.8
@@ -0,0 +1,835 @@
+'\" te
+.\" Copyright (c) 2007 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH CFGADM_SATA 8 "Aug 27, 2007"
+.SH NAME
+cfgadm_sata \- SATA hardware-specific commands for cfgadm
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/cfgadm\fR [\fB-f\fR] [\fB-y\fR | \fB-n\fR] [\fB-v\fR] [\fB-o\fR \fIhardware_options\fR]
+ \fB-c\fR \fIfunction\fR \fIap_id\fR...
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/cfgadm\fR [\fB-f\fR] [\fB-y\fR | \fB-n\fR] [\fB-v\fR] [\fB-o\fR \fIhardware_options\fR]
+ \fB-x\fR \fIhardware_function\fR \fIap_id\fR...
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/cfgadm\fR [\fB-v\fR] [\fB-a\fR] [\fB-s\fR \fIlisting_options\fR]
+ [\fB-o\fR \fIhardware_options\fR] [\fB-l\fR [\fIap_id\fR | \fIap_type\fR]...]
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/cfgadm\fR [\fB-v\fR] [\fB-o\fR \fIharware_options\fR] \fB-t\fR \fIap_id\fR...
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/cfgadm\fR [\fB-v\fR] [\fB-o\fR \fIhardware_options\fR] \fB-h\fR [\fIap_id\fR]...
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBSATA\fR hardware specific library, \fB/usr/lib/cfgadm/sata.so.1\fR,
+provides the functionality for \fBSATA\fR hot plugging through the \fBcfgadm\fR
+command. \fBcfgadm\fR operates on attachment points, which are locations in the
+system where hardware resources can be dynamically reconfigured. See
+\fBcfgadm\fR(8) for information regarding attachment points.
+.sp
+.LP
+Each \fBSATA\fR controller's and port multiplier's device port is represented
+by an attachment point in the device tree. \fBSATA\fR devices, connected and
+configured in the system are shown as the attachment point name extension. The
+terms "attachment point" and "\fBSATA\fR port" are used interchangeably in the
+following description.
+.sp
+.LP
+Attachment points are named through \fBap_id\fRs. All the \fBSATA\fR attachment
+points \fBap_id\fR consist of a string in the following form:
+.sp
+.in +2
+.nf
+sataX/P[.M][::dsk/cXtYd0]
+.fi
+.in -2
+
+.sp
+.LP
+where
+.sp
+.ne 2
+.na
+\fBX\fR
+.ad
+.RS 14n
+is the \fBSATA\fR controller number
+.RE
+
+.sp
+.ne 2
+.na
+\fBP\fR
+.ad
+.RS 14n
+is the \fBSATA\fR controller's device port number (0 to 31)
+.RE
+
+.sp
+.ne 2
+.na
+\fBM\fR
+.ad
+.RS 14n
+is the port multiplier's device port number (0 to 14) the port multiplier host
+port number (15). It is used only when the port multiplier is attached to the
+\fBSATA\fR controller's device port.
+.RE
+
+.sp
+.ne 2
+.na
+\fBdev/cXtYd0\fR
+.ad
+.RS 14n
+identifies the attached \fBSATA\fR device
+.RE
+
+.sp
+.ne 2
+.na
+\fBY\fR
+.ad
+.RS 14n
+is a target number
+.RE
+
+.sp
+.LP
+In general, the device identifier is derived from the corresponding logical
+link for the device in /\fIdev\fR. Because only one \fBLUN\fR (\fBLUN\fR 0) is
+supported by the \fBSATA\fR device, the "d" component of the device string will
+always have number 0 (zero).
+.sp
+.LP
+For example, the logical \fBap_id\fR of the device port 4 of the port
+multiplier connected to the device port 5 of the \fBSATA\fR controller 2 would
+be:
+.sp
+.in +2
+.nf
+sata2/5.4
+.fi
+.in -2
+
+.sp
+.LP
+If the \fBSATA\fR disk or \fBCD\fR/\fBDVD\fR device is connected to this
+attachment point, and the device is configured, the \fIap_id\fR would be:
+.sp
+.in +2
+.nf
+sata2/5.4::dsk/c2t645d0
+.fi
+.in -2
+
+.sp
+.LP
+The \fIcXtYd0\fR string identifying a device has one-to-one correspondence to
+the device attachment point.
+.sp
+.LP
+A simple listing of attachment points in the system will include all \fBSATA\fR
+device ports and attached devices. For example:
+.sp
+.in +2
+.nf
+#\fBcfgadm -l\fR
+Ap_Id Type Receptacle Occupant Condition
+ sata0/0::dev/c0t0d0 disk connected configured ok
+ sata0/1::dev/c0t1d0 disk connected configured ok
+ sata0/2::dev/c0t2d0 cd-dvd connected configured ok
+ sata0/3 sata-port empty unconfigured ok
+ sata1/0 sata-port disconnected unconfigured unknown
+ sata1/1 sata port disconnected unconfigured unknown
+ sata1/2 sata port empty unconfigured ok
+ sata1/3.15 sata-pmult connected configured ok
+ sata1/3.0::dev/c0t512d0 disk connected configured ok
+ sata1/3.1 sata-port empty unconfigured ok
+ sata1/3.2 sata-port empty unconfigured ok
+ sata1/3.3 sata-port empty unconfigured ok
+ usb0/1 unknown empty unconfigured ok
+ usb0/2 unknown empty unconfigured ok
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+See \fBcfgadm\fR(8)for more information regarding listing of attachment
+points.
+.sp
+.LP
+The receptacle state for attachment point at the \fBSATA\fR port have the
+following meanings:
+.sp
+.ne 2
+.na
+\fBempty\fR
+.ad
+.RS 16n
+The \fBSATA\fR port is powered-on and enabled. No device presence was detected
+on this port.
+.RE
+
+.sp
+.ne 2
+.na
+\fBdisconnected\fR
+.ad
+.RS 16n
+The \fBSATA\fR port is not enabled or the \fBSATA\fR device presence was
+detected but no communication with the device was established, or the port has
+failed.
+.RE
+
+.sp
+.ne 2
+.na
+\fBconnected\fR
+.ad
+.RS 16n
+The \fBSATA\fR device is detected on the port the communication with the device
+is established.
+.RE
+
+.sp
+.LP
+The occupant (device attached to the \fBSATA\fR port) state have the following
+meanings:
+.sp
+.ne 2
+.na
+\fBconfigured\fR
+.ad
+.RS 16n
+The attached \fBSATA\fR device is configured and ready to use by the operating
+system.
+.RE
+
+.sp
+.ne 2
+.na
+\fBunconfigured\fR
+.ad
+.RS 16n
+No device is attached, or the \fBSATA\fR device attached to the \fBSATA\fR port
+was not yet configured. To configure it, run the command "\fBcfgadm -c
+configure ap_id\fR".
+.RE
+
+.sp
+.LP
+The attachment point (\fBSATA\fR port) condition have the following meanings:
+.sp
+.ne 2
+.na
+\fBok\fR
+.ad
+.RS 11n
+The \fBSATA\fR port is powered-on and enabled, and is ready for use.
+.RE
+
+.sp
+.ne 2
+.na
+\fBfailed\fR
+.ad
+.RS 11n
+The \fBSATA\fR port failed. It may be disabled and/or powered-off by the
+system. It is unusable and its condition is unknown. It may be due to the
+device plugged-in.
+.RE
+
+.sp
+.ne 2
+.na
+\fBunknown\fR
+.ad
+.RS 11n
+The \fBSATA\fR port is disabled and its condition is unknown.
+.RE
+
+.sp
+.LP
+A "state table" is the combination of an attachment point receptacle state, an
+occupant state, and an attachment point (\fBSATA\fR port) condition. The valid
+states are:
+.sp
+.ne 2
+.na
+\fBempty/unconfigured/ok\fR
+.ad
+.sp .6
+.RS 4n
+The \fBSATA\fR port is enabled and active. No device presence was detected.
+.RE
+
+.sp
+.ne 2
+.na
+\fBdisconnected/unconfigured/ok\fR
+.ad
+.sp .6
+.RS 4n
+The \fBSATA\fR port is enabled and a device presence was detected but no
+communications with the device was established.
+.RE
+
+.sp
+.ne 2
+.na
+\fBdisconnected/unconfigured/unknown\fR
+.ad
+.sp .6
+.RS 4n
+The \fBSATA\fR Port is disabled and its condition is unknown.
+.RE
+
+.sp
+.ne 2
+.na
+\fBdisconnected/unconfigured/failed\fR
+.ad
+.sp .6
+.RS 4n
+The \fBSATA\fR Port is disabled and unusable. The port was disabled by the
+system due to a system-detected failure.
+.RE
+
+.sp
+.ne 2
+.na
+\fBconnected/unconfigured/ok\fR
+.ad
+.sp .6
+.RS 4n
+The \fBSATA\fR Port is enabled and active. A device presence was detected and
+the communication with a device was established. The device is not configured
+to be used by the \fBOS\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBconnected/configured/ok\fR
+.ad
+.sp .6
+.RS 4n
+The device is present and configured, and is ready to use by the \fBOS\fR.
+.RE
+
+.SH OPTIONS
+.sp
+.LP
+\fBcfgadm\fR defines several types of operations besides listing (\fB-l\fR).
+These operations include testing, (\fB-t\fR), invoking configuration state
+changes, (\fB-c\fR), invoking hardware specific functions (\fB-x\fR), and
+obtaining configuration administration help messages (\fB-h\fR).
+.sp
+.ne 2
+.na
+\fB\fB-c\fR \fIfunction\fR\fR
+.ad
+.sp .6
+.RS 4n
+The following generic \fIfunction\fRs are defined for the \fBSATA\fR hardware
+specific library. For \fBSATA\fR port attachment point, the following
+configuration state change operations are supported:
+.sp
+.ne 2
+.na
+\fBconnect\fR
+.ad
+.sp .6
+.RS 4n
+Enable (activate) the \fBSATA\fR port and establish the communication with an
+attached device. This operation implies powering-on the port if necessary.
+.RE
+
+.sp
+.ne 2
+.na
+\fBdisconnect\fR
+.ad
+.sp .6
+.RS 4n
+Unconfigure the attached device, if it is not already unconfigured, and disable
+(deactivate) the \fBSATA\fR port. A subsequent "\fBconnect\fR" command enables
+\fBSATA\fR port operation but does not bring a device to the "configured"
+state.
+.RE
+
+For a \fBSATA\fR device attached to the \fBSATA\fR port following state change
+operations are supported:
+.sp
+.ne 2
+.na
+\fBconfigure\fR
+.ad
+.RS 15n
+Configure new device for use by the operating system if it is not already
+configured. This command also implies connect operation, if necessary.
+.RE
+
+.sp
+.ne 2
+.na
+\fBunconfigure\fR
+.ad
+.RS 15n
+Unconfigure the device connected to the \fBSATA\fR port if it is not already
+unconfigured.
+.RE
+
+The \fBconfigure\fR and \fBunconfigure\fR operations cannot be used for an
+attachment point where the port multiplier is connected. Port multipliers are
+configured and unconfigured automatically by the system. However, configure and
+unconfigure operations apply to all \fBSATA\fR devices connected to the port
+multiplier's device ports.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR\fR
+.ad
+.sp .6
+.RS 4n
+Not supported.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-h\fR \fIap_id\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBSATA\fR specific help can be obtained by using the help option with any
+\fBSATA\fR attachment point.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR [\fB-v\fR]\fR
+.ad
+.sp .6
+.RS 4n
+The \fB-l\fR option works as described in \fBcfgadm\fR(8). When paired with
+the \fB-v\fR option, the "Information" field contains the following
+\fBSATA\fR-specific information:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Mfg: manufacturer string
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Product: product string
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+No: product Serial Number
+.RE
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-o\fR \fIhardware_options\fR\fR
+.ad
+.sp .6
+.RS 4n
+No hardware specific options are currently defined.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR \fIlisting_options\fR\fR
+.ad
+.sp .6
+.RS 4n
+Attachment points of class \fBSATA\fR can be listed by using the select
+suboption. See \fBcfgadm\fR(8).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-t\fR \fIap_id\fR\fR
+.ad
+.sp .6
+.RS 4n
+Perform self-test of the \fBSATA\fR port, if supported by the \fBSATA\fR
+controller. If a port self-test operation is not supported by the \fBSATA\fR
+controller, an error message is issued.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-x\fR \fIhardware_function\fR\fR
+.ad
+.sp .6
+.RS 4n
+Perform hardware specific function.
+.sp
+Some of the following commands used on the \fBSATA\fR ports or the \fBSATA\fR
+controller may affect any \fBSATA\fR devices that have been attached, as noted.
+\fBap_id\fR refers to \fBSATA\fR port or the entire \fBSATA\fR controller, as
+noted. If the operation implies unconfiguring a device, but it cannot be
+unconfigured (that is, the device contains a mounted filesystem), an error
+message is issued and the operation is not performed. An error message will be
+also issued if the \fBSATA\fR controller does not support specified operation.
+.sp
+.ne 2
+.na
+\fBsata_reset_device ap_id\fR
+.ad
+.sp .6
+.RS 4n
+Reset the \fBSATA\fR device attached to \fBap_id\fR \fBSATA\fR port. The
+\fBSATA\fR port state does not change.
+.RE
+
+.sp
+.ne 2
+.na
+\fBsata_reset_port ap_id\fR
+.ad
+.sp .6
+.RS 4n
+Reset the \fBSATA\fR port specified by \fBap_id\fR. If a \fBSATA\fR device is
+attached to the port, it is also reset. This operation may be also performed on
+the port to which a port multiplier is connected. If a port multiplier is
+connected to the \fBSATA\fR controller port, the \fBSATA\fR devices attached to
+the port multiplier may not be reset
+.RE
+
+.sp
+.ne 2
+.na
+\fBsata_reset_all ap_id\fR
+.ad
+.sp .6
+.RS 4n
+Reset \fBSATA\fR controller specified by the controller number part in
+\fBap_id\fR and all attached devices and re-enumerate all connected devices,
+including port multipliers and devices connected to port multipliers' device
+ports.
+.sp
+This operations implies unconfiguring all attached devices prior to the
+operation. Any newly enumerated devices will be left unconfigured.
+.RE
+
+.sp
+.ne 2
+.na
+\fBsata_port_deactivate ap_id\fR
+.ad
+.sp .6
+.RS 4n
+Force the deactivation of the port when all else fails. This is meant as an
+emergency step; use with caution.
+.RE
+
+.sp
+.ne 2
+.na
+\fBsata_port_activate ap_id\fR
+.ad
+.sp .6
+.RS 4n
+Force the activation of a port. This is meant for emergency situations on a
+port which was deactivated to recover from errors.
+.RE
+
+.sp
+.ne 2
+.na
+\fBsata_port_self_test ap_id\fR
+.ad
+.sp .6
+.RS 4n
+Perform self-test operation on the \fBSATA\fR controller. This operation
+implies unconfiguring all devices and resetting the \fBSATA\fR controller.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.sp .6
+.RS 4n
+Execute in verbose mode.
+.sp
+The following Transitions table reports the state transitions resulting from
+the \fB-c\fR operations and hotplugging actions:
+.sp
+.in +2
+.nf
+current state operation possible new state
+------------- --------- ------------------
+empty/
+unconfigured/ok device plug-in connected/unconfigured/ok, or
+ disconnected/unconfigured/ok, or
+ disconnected/unconfigured/failed
+
+empty/
+unconfigured/ok -c unconfigure error message, no state change
+
+empty/
+unconfigured/ok -c configure error message, no state change
+
+empty/
+unconfigured/ok -c connect error message, no state change
+
+empty/
+unconfigured/ok -c disconnect disconnected/unconfigured/unknown, or
+ disconnected/unconfigured/failed
+
+disconnected/
+unconfigured/ok device unplug no state change
+
+disconnected/
+unconfigured/ok -c unconfigure error message, no state change
+
+disconnected/
+unconfigured/ok -c configure error message, no state change
+
+disconnected/
+unconfigured/ok -c connect error message, no state change
+
+disconnected/
+unconfigured/ok -c disconnect error message, no state change
+
+disconnected/
+unconfigured/
+unknown
+(no disk plugged) -c configure error message, state change to
+ empty/unconfigured/ok, or
+ disconnected/unconfigured/failed
+
+disconnected/
+unconfigured/
+unknown -c configure state change to
+(disk plugged) connected/configured/ok or,
+ connected/unconfigured/ok, or
+ disconnected/unconfigured/failed and
+ possible error message
+
+disconnected/
+unconfigured/
+unknown -c connect empty/unconfigured/ok, or
+ connected/unconfigured/ok, or
+ disconnected/unconfigured/ok, or
+ disconnected/unconfigured/unknown, or
+ disconnected/unconfigured/failed
+
+disconnected/
+unconfigured/
+unknown -c disconnect error message, no state change
+
+disconnected/
+unconfigured/
+failed any command error message, no state change
+ other than
+ -x commands
+
+connected/
+unconfigured/ok disk unplug error message and state:
+ empty/unconfigured/ok, or
+ disconnected/unconfigured/failed
+
+connected/
+unconfigured/ok -c configure connected/unconfigured/ok, or
+ connected/configured/ok, or
+ disconnected/unconfigured/ok, or
+ disconnected/unconfigured/failed
+
+connected/
+unconfigured/ok -c unconfigure error message, no state change
+
+connected/
+unconfigured/ok -c connect error message, no state change
+
+connected/
+unconfigured/ok -c disconnect disconnected/unconfigured/unknown, or
+ disconnected/unconfigured/failed
+
+connected/
+configured/ok disk unplug error message and state:
+ empty/unconfigured/ok, or
+ disconnected/unconfigured/failed
+
+connected/
+configured/ok -c configure error message, no state change
+
+connected/
+configured/ok -c unconfigure error message, if device cannot be
+ unconfigured, no state change, or
+ connected/unconfigured/ok, or
+ disconnected/unconfigured/ok, or
+ disconnected/unconfigured/failed
+
+connected/
+configured/ok -c connect error message, no state change
+
+connected/
+configured/ok -c disconnect error message, if device cannot be
+ unconfigured, no state change, or
+ disconnected/unconfigured/unknown, or
+ disconnected/unconfigured/failed
+.fi
+.in -2
+.sp
+
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRConfiguring a Disk
+.sp
+.LP
+The following command configures a disk attached to \fBSATA\fR controller 0,
+port 0:
+
+.sp
+.in +2
+.nf
+example# \fBcfgadm -c configure sata0/0\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+This command should be issued only when there is a device connected to the
+\fBSATA\fR port.
+
+.LP
+\fBExample 2 \fRUnconfiguring a Disk
+.sp
+.LP
+The following command unconfigures a disk attached to \fBSATA\fR controller 0,
+port 3:
+
+.sp
+.in +2
+.nf
+example# \fBcfgadm -c unconfigure sata0/3::dsk/c0t3d0\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The device identifying string is shown when the attachment point receptacle
+state is "connected" and occupant state is "configured".
+
+.LP
+\fBExample 3 \fREncountering a Mounted File System While Unconfiguring a Disk
+.sp
+.LP
+The following command illustrates encountering a mounted file system while
+unconfiguring a disk:
+
+.sp
+.in +2
+.nf
+example# \fBcfgadm -c unconfigure sata1/5::dsk/c01t35d0\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The system responds with the following:
+
+.sp
+.in +2
+.nf
+cfgadm: Component system is busy, try again: failed to offline:
+/devices/pci@0,0/pci8086,244e@1e/pci1095,3124@1/sd@5,0
+ Resource Information
+------------------ --------------------------
+/dev/dsk/c1t5d0s0 mounted filesystem "/mnt"
+.fi
+.in -2
+.sp
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB/usr/lib/cfgadm/sata.so.1\fR
+.ad
+.RS 29n
+Hardware specific library for generic \fBSATA\fR hot plugging.
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR config_admin (3CFGADM),
+.BR libcfgadm (3LIB),
+.BR attributes (7),
+.BR cfgadm (8)
+.SH NOTES
+.sp
+.LP
+The emergency "sata_port_deactivate" operation is not supported on ports with
+attached disks containing critical partitions such as root (/), /usr, swap, or
+/var. The deactivate operation should not be attempted on such ports. Incorrect
+usage can result in a system hang and require a reboot.
+.sp
+.LP
+Hotplugging operations are not supported by all \fBSATA\fR controllers.
+.sp
+.LP
+If \fBSATA\fR connectors are the hot-pluggable type and the \fBSATA\fR
+controller supports hotplugging, a \fBSATA\fR device can be hotplugged at any
+time. The system detects the event and establishes the communication with the
+device. The device has to be configured by the explicit "\fBcfgadm -c configure
+ap_id\fR" command.
+.sp
+.LP
+If the \fBSATA\fR connectors are the hot-pluggable type and the \fBSATA\fR
+controller supports hotplugging, unplugging a device without unconfiguring it
+may result in system hang or data loss. If a device is unconfigured but
+receptacle state is not in a disconnected state, unplugging a device from the
+\fBSATA\fR port will result in error message.
+.SH WARNINGS
+.sp
+.LP
+The connectors on some \fBSATA\fR devices do not conform to \fBSATA\fR hotplug
+specifications. Performing hotplug operations on such devices can cause damage
+to the \fBSATA\fR controller and/or the \fBSATA\fR device.
diff --git a/usr/src/man/man8/cfgadm_sbd.8 b/usr/src/man/man8/cfgadm_sbd.8
new file mode 100644
index 0000000000..e8ff871d0e
--- /dev/null
+++ b/usr/src/man/man8/cfgadm_sbd.8
@@ -0,0 +1,1330 @@
+'\" te
+.\" Copyright 2003 (c), Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH CFGADM_SBD 8 "Oct 13, 2003"
+.SH NAME
+cfgadm_sbd \- \fBcfgadm\fR commands for system board administration
+.SH SYNOPSIS
+.LP
+.nf
+\fBcfgadm \fR \fB-l\fR [\fB-a\fR] [\fB-o\fR parsable] \fI ap_id\fR...
+.fi
+
+.LP
+.nf
+\fBcfgadm \fR \fB-c \fR \fIfunction\fR [\fB-f\fR] [\fB-y\fR | \fB-n\fR]
+ [\fB-o\fR unassign | nopoweroff] [\fB-v\fR] \fI ap_id\fR...
+.fi
+
+.LP
+.nf
+\fBcfgadm \fR \fB-t\fR [\fB-v\fR] \fI ap_id\fR...
+.fi
+
+.LP
+.nf
+\fBcfgadm \fR \fB-x \fR [\fB-f\fR] [\fB-v\fR] \fIfunction\fR \fI ap_id\fR...
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBcfgadm_sbd\fR plugin provides dynamic reconfiguration functionality for
+connecting, configuring, unconfiguring, and disconnecting class \fBsbd\fR
+system boards. It also enables you to connect or disconnect a system board from
+a running system without having to reboot the system.
+.sp
+.LP
+The \fBcfgadm\fR command resides in \fB/usr/sbin\fR. See \fBcfgadm\fR(8). The
+\fBcfgadm_sbd\fR plugin resides \fB/usr/platform/sun4u/lib/cfgadm\fR.
+.sp
+.LP
+Each board slot appears as a single attachment point in the device tree. Each
+component appears as a dynamic attachment point. You can view the type, state,
+and condition of each component, and the states and condition of each board
+slot by using the \fB-a\fR option.
+.sp
+.LP
+The \fBcfgadm\fR options perform differently depending on the platform.
+Additionally, the form of the attachment points is different depending on the
+platform. See the \fBPlatform Notes\fR section for more information.
+.SS "Component Conditions"
+.sp
+.LP
+The following are the names and descriptions of the component conditions:
+.sp
+.ne 2
+.na
+\fBfailed\fR
+.ad
+.RS 11n
+The component failed testing.
+.RE
+
+.sp
+.ne 2
+.na
+\fBok\fR
+.ad
+.RS 11n
+The component is operational.
+.RE
+
+.sp
+.ne 2
+.na
+\fBunknown\fR
+.ad
+.RS 11n
+The component has not been tested.
+.RE
+
+.SS "Component States"
+.sp
+.LP
+The following is the name and description of the receptacle state for
+components:
+.sp
+.ne 2
+.na
+\fBconnected\fR
+.ad
+.RS 13n
+The component is connected to the board slot.
+.RE
+
+.sp
+.LP
+The following are the names and descriptions of the occupant states for
+components:
+.sp
+.ne 2
+.na
+\fBconfigured\fR
+.ad
+.RS 16n
+The component is available for use by the Solaris operating environment.
+.RE
+
+.sp
+.ne 2
+.na
+\fBunconfigured\fR
+.ad
+.RS 16n
+The component is not available for use by the Solaris operating environment.
+.RE
+
+.SS "Board Conditions"
+.sp
+.LP
+The following are the names and descriptions of the board conditions.
+.sp
+.ne 2
+.na
+\fBfailed\fR
+.ad
+.RS 12n
+The board failed testing.
+.RE
+
+.sp
+.ne 2
+.na
+\fBok\fR
+.ad
+.RS 12n
+The board is operational.
+.RE
+
+.sp
+.ne 2
+.na
+\fBunknown\fR
+.ad
+.RS 12n
+The board has not been tested.
+.RE
+
+.sp
+.ne 2
+.na
+\fBunusable\fR
+.ad
+.RS 12n
+The board slot is unusable.
+.RE
+
+.SS "Board States"
+.sp
+.LP
+Inserting a board changes the receptacle state from empty to disconnected.
+Removing a board changes the receptacle state from disconnected to empty.
+.sp
+.LP
+\fBCaution:\fR Removing a board that is in the connected state or that is
+powered on and in the disconnected state crashes the operating system and can
+result in permanent damage to the system.
+.sp
+.LP
+The following are the names and descriptions of the receptacle states for
+boards:
+.sp
+.ne 2
+.na
+\fBconnected\fR
+.ad
+.RS 16n
+The board is powered on and connected to the system bus. You can view the
+components on a board only after it is in the connected state.
+.RE
+
+.sp
+.ne 2
+.na
+\fBdisconnected\fR
+.ad
+.RS 16n
+The board is disconnected from the system bus. A board can be in the
+disconnected state without being powered off. However, a board must be powered
+off and in the disconnected state before you remove it from the slot.
+.RE
+
+.sp
+.ne 2
+.na
+\fBempty\fR
+.ad
+.RS 16n
+A board is not present.
+.RE
+
+.sp
+.LP
+The occupant state of a disconnected board is always unconfigured. The
+following table contains the names and descriptions of the occupant states for
+boards:
+.sp
+.ne 2
+.na
+\fBconfigured\fR
+.ad
+.RS 16n
+At least one component on the board is configured.
+.RE
+
+.sp
+.ne 2
+.na
+\fBunconfigured\fR
+.ad
+.RS 16n
+All of the components on the board are unconfigured.
+.RE
+
+.SS "Dynamic System Domains"
+.sp
+.LP
+Platforms based on dynamic system domains (DSDs, referred to as domains in this
+document) divide the slots in the chassis into electrically isolated hardware
+partitions (that is, DSDs). Platforms that are not based on DSDs assign all
+slots to the system permanently.
+.sp
+.LP
+A slot can be empty or populated, and it can be assigned or available to any
+number of domains. The number of slots available to a given domain is
+controlled by an available component list (\fBACL\fR) that is maintained on the
+system controller. The \fBACL\fR is not the access control list provided by the
+Solaris operating environment.
+.sp
+.LP
+A slot is visible to a domain only if the slot is in the domain's \fBACL\fR and
+if it is not assigned to another domain. An unassigned slot is visible to all
+domains that have the slot in their \fBACL\fR. After a slot has been assigned
+to a domain, the slot is no longer visible to any other domain.
+.sp
+.LP
+A slot that is visible to a domain, but not assigned, must first be assigned to
+the domain before any other state changing commands are applied. The assign can
+be done explicitly using \fB\fR\fB-x\fR\fB assign\fR or implicitly as part of a
+connect. A slot must be unassigned from a domain before it can be used by
+another domain. The unassign is always explicit, either directly using
+\fB\fR\fB-x\fR\fB unassign\fR or as an option to disconnect using
+\fB\fR\fB-o\fR\fB unassign\fR.
+.SS "State Change Functions"
+.sp
+.LP
+Functions that change the state of a board slot or a component on the board can
+be issued concurrently against any attachment point. Only one state changing
+operation is permitted at a given time. A \fBY\fR in the Busy field in the
+state changing information indicates an operation is in progress.
+.sp
+.LP
+The following list contains the functions that change the state:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+configure
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+unconfigure
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+connect
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+disconnect
+.RE
+.SS "Availability Change Functions"
+.sp
+.LP
+Commands that change the availability of a board can be issued concurrently
+against any attachment point. Only one availability change operation is
+permitted at a given time. These functions also change the information string
+in the \fBcfgadm\fR \fB-l\fR output. A \fBY\fR in the Busy field indicates that
+an operation is in progress.
+.sp
+.LP
+The following list contains the functions that change the availability:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBassign\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBunassign\fR
+.RE
+.SS "Condition Change Functions"
+.sp
+.LP
+Functions that change the condition of a board slot or a component on the board
+can be issued concurrently against any attachment point. Only one condition
+change operation is permitted at a given time. These functions also change the
+information string in the \fBcfgadm\fR \fB-l\fR output. A \fBY\fR in the Busy
+field indicates an operation is in progress.
+.sp
+.LP
+The following list contains the functions that change the condition:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBpoweron\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBpoweroff\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBtest\fR
+.RE
+.SS "Unconfigure Process"
+.sp
+.LP
+This section contains a description of the unconfigure process, and illustrates
+the states of source and target boards at different stages during the process
+of moving permanent memory.
+.sp
+.LP
+In the following code examples, the permanent memory on board 0 must be moved
+to another board in the domain. Thus, board 0 is the source, and board 1 is the
+target.
+.sp
+.LP
+A status change operation cannot be initiated on a board while it is marked as
+busy. For brevity, the \fBCPU\fR information has been removed from the code
+examples.
+.sp
+.LP
+The process is started with the following command:
+.sp
+.in +2
+.nf
+# \fBcfgadm -c unconfigure -y SB0::memory &\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+First, the memory on board 1 in the same address range as the permanent memory
+on board 0 must be deleted. During this phase, the source board, the target
+board, and the memory attachment points are marked as busy. You can display the
+status with the following command:
+.sp
+.in +2
+.nf
+# \fBcfgadm -a -s cols=ap_id:type:r_state:o_state:busy SB0 SB1\fR
+
+Ap_Id Type Receptacle Occupant Busy
+SB0 CPU connected configured y
+SB0::memory memory connected configured y
+SB1 CPU connected configured y
+SB1::memory memory connected configured y
+
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+After the memory has been deleted on board 1, it is marked as unconfigured. The
+memory on board 0 remains configured, but it is still marked as busy, as in the
+following example.
+.sp
+.in +2
+.nf
+Ap_Id Type Receptacle Occupant Busy
+SB0 CPU connected configured y
+SB0::memory memory connected configured y
+SB1 CPU connected configured y
+SB1::memory memory connected unconfigured n
+
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The memory from board 0 is then copied to board 1. After it has been copied,
+the occupant state for the memory is switched. The memory on board 0 becomes
+unconfigured, and the memory on board 1 becomes configured. At this point in
+the process, only board 0 remains busy, as in the following example.
+.sp
+.in +2
+.nf
+Ap_Id Type Receptacle Occupant Busy
+SB0 CPU connected configured y
+SB0::memory memory connected unconfigured n
+SB1 CPU connected configured n
+SB1::memory memory connected configured n
+
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+After the entire process has been completed, the memory on board 0 remains
+unconfigured, and the attachment points are not busy, as in the following
+example.
+.sp
+.in +2
+.nf
+Ap_Id Type Receptacle Occupant Busy
+SB0 CPU connected configured n
+SB0::memory memory connected unconfigured n
+SB1 CPU connected configured n
+SB1::memory memory connected configured n
+
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The permanent memory has been moved, and the memory on board 0 has been
+unconfigured. At this point, you can initiate a new state changing operation on
+either board.
+.SS "Platform-Specific Options"
+.sp
+.LP
+You can specify platform-specific options that follow the options interpreted
+by the system board plugin. All platform-specific options must be preceded by
+the \fBplatform\fR keyword. The following example contains the general format
+of a command with platform-specific options:
+.sp
+.LP
+\fB\fIcommand\fR -o \fIsbd_options\fR,platform=\fIplatform_options\fR\fR
+.SH OPTIONS
+.sp
+.LP
+This man page does not include the \fB-v\fR, \fB-a\fR, \fB-s\fR, or \fB-h\fR
+options for the \fBcfgadm\fR command. See \fBcfgadm\fR(8) for descriptions of
+those options. The following options are supported by the \fBcfgadm_sbd\fR
+plugin:
+.sp
+.ne 2
+.na
+\fB\fB-c \fR\fIfunction\fR\fR
+.ad
+.RS 15n
+Performs a state change function. You can use the following functions:
+.sp
+.ne 2
+.na
+\fBunconfigure\fR
+.ad
+.RS 15n
+Changes the occupant state to unconfigured. This function applies to system
+board slots and to all of the components on the system board.
+.sp
+The \fBunconfigure\fR function removes the \fBCPU\fRs from the \fBCPU\fR list
+and deletes the physical memory from the system memory pool. If any device is
+still in use, the \fBcfgadm\fR command fails and reports the failure to the
+user. You can retry the command as soon as the device is no longer busy. If a
+\fBCPU\fR is in use, you must ensure that it is off line before you proceed.
+See \fBpbind\fR(8), \fBpsradm\fR(8) and \fBpsrinfo\fR(8).
+.sp
+The \fBunconfigure\fR function moves the physical memory to another system
+board before it deletes the memory from the board you want to unconfigure.
+Depending of the type of memory being moved, the command fails if it cannot
+find enough memory on another board or if it cannot find an appropriate
+physical memory range.
+.sp
+For permanent memory, the operating system must be suspended (that is,
+quiesced) while the memory is moved and the memory controllers are
+reprogrammed. If the operating system must be suspended, you will be prompted
+to proceed with the operation. You can use the \fB-y\fR or \fB-n\fR options to
+always answer yes or no respectively.
+.sp
+Moving memory can take several minutes to complete, depending on the amount of
+memory and the system load. You can monitor the progress of the operation by
+issuing a status command against the memory attachment point. You can also
+interrupt the memory operation by stopping the \fBcfgadm\fR command. The
+deleted memory is returned to the system memory pool.
+.RE
+
+.sp
+.ne 2
+.na
+\fBdisconnect\fR
+.ad
+.RS 15n
+Changes the receptacle state to disconnected. This function applies only to
+system board slots.
+.sp
+If the occupant state is configured, the \fBdisconnect\fR function attempts to
+unconfigure the occupant. It then powers off the system board. At this point,
+the board can be removed from the slot.
+.sp
+This function leaves the board in the assigned state on platforms that support
+dynamic system domains.
+.sp
+If you specify \fB-o nopoweroff\fR, the \fBdisconnect\fR function leaves the
+board powered on. If you specify \fB-o unassign\fR, the \fBdisconnect\fR
+function unassigns the board from the domain.
+.sp
+If you unassign a board from a domain, you can assign it to another domain.
+However, if it is assigned to another domain, it is not available to the domain
+from which is was unassigned.
+.RE
+
+.sp
+.ne 2
+.na
+\fBconfigure\fR
+.ad
+.RS 15n
+Changes the occupant state to configured. This function applies to system board
+slots and to any components on the system board.
+.sp
+If the receptacle state is disconnected, the \fBconfigure\fR function attempts
+to connect the receptacle. It then walks the tree of devices that is created by
+the \fBconnect\fR function, and attaches the devices if necessary. Running this
+function configures all of the components on the board, except those that have
+already been configured.
+.sp
+For \fBCPU\fRs, the \fBconfigure\fR function adds the \fBCPU\fRs to the
+\fBCPU\fR list. For memory, the \fBconfigure\fR function ensures that the
+memory is initialized then adds the memory to the system memory pool. The
+\fBCPU\fRs and the memory are ready for use after the \fBconfigure\fR function
+has been completed successfully.
+.sp
+For I/O devices, you must use the \fBmount\fR and the \fBifconfig\fR commands
+before the devices can be used. See \fBifconfig\fR(8) and \fBmount\fR(8).
+.RE
+
+.sp
+.ne 2
+.na
+\fBconnect\fR
+.ad
+.RS 15n
+Changes the receptacle state to connected. This function applies only to system
+board slots.
+.sp
+If the board slot is not assigned to the domain, the \fBconnect\fR function
+attempts to assign the slot to the domain. Next, it powers on and tests the
+board, then it connects the board electronically to the system bus and probes
+the components.
+.sp
+After the \fBconnect\fR function is completed successfully, you can use the
+\fB-a\fR option to view the status of the components on the board. The
+\fBconnect\fR function leaves all of the components in the unconfigured state.
+.sp
+The assignment step applies only to platforms that support dynamic system
+domains.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR\fR
+.ad
+.RS 15n
+Overrides software state changing constraints.
+.sp
+The \fB-f\fR option never overrides fundamental safety and availability
+constraints of the hardware and operating system.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR\fR
+.ad
+.RS 15n
+Lists the state and condition of attachment points specified in the format
+controlled by the \fB-s\fR, \fB-v\fR, and \fB-a\fR options as specified in
+\fBcfgadm\fR(8). The \fBcfgadm_sbd\fR plugin provides specific information in
+the info field as described below. The format of this information might be
+altered by the \fB\fR\fB-o\fR\fB parsable\fR option.
+.sp
+The parsable \fBinfo\fR field is composed of the following:
+.sp
+.ne 2
+.na
+\fBcpu\fR
+.ad
+.RS 10n
+The \fBcpu\fR type displays the following information:
+.sp
+.ne 2
+.na
+\fB\fBcpuid=\fR\fI#\fR\fB[,\fR\fI#\fR\fB\&.\|.\|.]\fR\fR
+.ad
+.RS 24n
+Where \fI#\fR is a number, and represents the \fBID\fR of the \fBCPU\fR. If
+more than one \fI#\fR is present, this \fBCPU\fR has multiple active virtual
+processors.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBspeed=\fR\fI#\fR\fR
+.ad
+.RS 24n
+Where \fI#\fR is a number and represents the speed of the \fBCPU\fR in
+\fBMHz\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBecache=\fR\fI#\fR\fR
+.ad
+.RS 24n
+Where \fI#\fR is a number and represents the size of the ecache in MBytes. If
+the \fBCPU\fR has multiple active virtual processors, the ecache could either
+be shared among the virtual processors, or divided between them.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fBmemory\fR
+.ad
+.RS 10n
+The \fBmemory\fR type displays the following information, as appropriate:
+.sp
+.ne 2
+.na
+\fBaddress=\fI#\fR\fR
+.ad
+.RS 26n
+Where \fI#\fR is a number, representing the base physical address.
+.RE
+
+.sp
+.ne 2
+.na
+\fBsize=\fI#\fR\fR
+.ad
+.RS 26n
+Where \fI#\fR is a number, representing the size of the memory in \fBKBytes\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBpermanent=\fI#\fR\fR
+.ad
+.RS 26n
+Where \fI#\fR is a number, representing the size of permanent memory in
+\fBKBytes\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBunconfigurable\fR
+.ad
+.RS 26n
+An operating system setting that prevents the memory from being unconfigured.
+.RE
+
+.sp
+.ne 2
+.na
+\fBinter-board-interleave\fR
+.ad
+.RS 26n
+The board is participating in interleaving with other boards.
+.RE
+
+.sp
+.ne 2
+.na
+\fBsource=\fIap_id\fR\fR
+.ad
+.RS 26n
+Represents the source attachment point.
+.RE
+
+.sp
+.ne 2
+.na
+\fBtarget=\fIap_id\fR\fR
+.ad
+.RS 26n
+Represents the target attachment point.
+.RE
+
+.sp
+.ne 2
+.na
+\fBdeleted=\fI#\fR\fR
+.ad
+.RS 26n
+Where \fI#\fR is a number, representing the amount of memory that has already
+been deleted in \fBKBytes\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBremaining=\fI#\fR\fR
+.ad
+.RS 26n
+Where \fI#\fR is a number, representing the amount of memory to be deleted in
+\fBKBytes\fR.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fBio\fR
+.ad
+.RS 10n
+The \fBio\fR type displays the following information:
+.sp
+.ne 2
+.na
+\fBdevice=\fIpath\fR\fR
+.ad
+.RS 15n
+Represents the physical path to the I/O component.
+.RE
+
+.sp
+.ne 2
+.na
+\fBreferenced\fR
+.ad
+.RS 15n
+The I/O component is referenced.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fBboard\fR
+.ad
+.RS 10n
+The \fBboard\fR type displays the following boolean names. If they are not
+present, then the opposite applies.
+.sp
+.ne 2
+.na
+\fBassigned\fR
+.ad
+.RS 14n
+The board is assigned to the domain.
+.RE
+
+.sp
+.ne 2
+.na
+\fBpowered-on\fR
+.ad
+.RS 14n
+The board is powered on.
+.RE
+
+The same items appear in the \fBinfo\fR field in a more readable format if the
+\fB-o\fR \fBparsable\fR option is not specified.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-o\fR parsable\fR
+.ad
+.RS 15n
+Returns the information in the \fBinfo\fR field as a boolean \fIname\fR or a
+set of \fBname=value\fR pairs, separated by a space character.
+.sp
+The \fB-o parsable\fR option can be used in conjunction with the \fB-s\fR
+option. See the \fBcfgadm\fR(8) man page for more information about the
+\fB-s\fR option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-t\fR\fR
+.ad
+.RS 15n
+Tests the board.
+.sp
+Before a board can be connected, it must pass the appropriate level of testing.
+.sp
+Use of this option always attempts to test the board, even if it has already
+passed the appropriate level of testing. Testing is also performed when a
+\fB\fR\fB-c\fR\fB connect\fR state change function is issued, in which case the
+test step can be skipped if the board already shows an appropriate level of
+testing. Thus the \fB-t\fR option can be used to explicitly request that the
+board be tested.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-x\fR\fI function\fR\fR
+.ad
+.RS 15n
+Performs an sbd-class function. You can use the following functions:
+.sp
+.ne 2
+.na
+\fBassign\fR
+.ad
+.RS 12n
+Assigns a board to a domain.
+.sp
+The receptacle state must be disconnected or empty. The board must also be
+listed in the domain available component list. See Dynamic System Domains.
+.RE
+
+.sp
+.ne 2
+.na
+\fBunassign\fR
+.ad
+.RS 12n
+Unassigns a board from a domain.
+.sp
+The receptacle state must be disconnected or empty. The board must also be
+listed in the domain available component list. See Dynamic System Domains.
+.RE
+
+.sp
+.ne 2
+.na
+\fBpoweron\fR
+.ad
+.RS 12n
+Powers the system board on.
+.sp
+The receptacle state must be disconnected.
+.RE
+
+.sp
+.ne 2
+.na
+\fBpoweroff\fR
+.ad
+.RS 12n
+Powers the system board off.
+.sp
+The receptacle state must be disconnected.
+.RE
+
+.RE
+
+.SH OPERANDS
+.sp
+.LP
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fBReceptacle \fIap_id\fR\fR
+.ad
+.RS 20n
+For the Sun Fire high-end systems such as the Sun Fire 15K , the receptacle
+attachment point \fBID\fR takes the form \fBSB\fIX\fR\fR or \fBIO\fIX\fR\fR,
+where \fIX\fR equals the slot number.
+.sp
+The exact format depends on the platform and typically corresponds to the
+physical labelling on the machine. See the platform specific information in the
+\fBNOTES\fR section.
+.RE
+
+.sp
+.ne 2
+.na
+\fBComponent \fIap_id\fR\fR
+.ad
+.RS 20n
+The component attachment point \fBID\fR takes the form \fIcomponent_typeX\fR,
+where \fIcomponent_type\fR equals one of the component types described in
+"Component Types" and \fIX\fR equals the component number. The component number
+is a board-relative unit number.
+.sp
+The above convention does not apply to memory compontents. Any DR action on a
+memory attachment point affects all of the memory on the system board.
+.RE
+
+.SH EXAMPLES
+.sp
+.LP
+The following examples show user input and system output on a Sun Fire 15K
+system. User input, specifically references to attachment points and system
+output might differ on other Sun Fire systems, such as the Sun Fire midrange
+systems such as the 6800. Refer to the Platform Notes for specific information
+about using the \fBcfgadm_sbd\fR plugin on non-Sun Fire high-end models.
+.LP
+\fBExample 1 \fRListing All of the System Board
+.sp
+.in +2
+.nf
+# \fBcfgadm -a -s "select=class(sbd)"\fR
+
+Ap_Id Type Receptacle Occupant Condition
+SB0 CPU connected configured ok
+SB0::cpu0 cpu connected configured ok
+SB0::memory memory connected configured ok
+IO1 HPCI connected configured ok
+IO1::pci0 io connected configured ok
+IO1::pci1 io connected configured ok
+SB2 CPU disconnected unconfigured failed
+SB3 CPU disconnected unconfigured unusable
+SB4 unknown empty unconfigured unknown
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+This example demonstrates the mapping of the following conditions:
+
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The board in Slot 2 failed testing.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Slot 3 is unusable; thus, you cannot hot plug a board into that slot.
+.RE
+.LP
+\fBExample 2 \fRListing All of the \fBCPU\fRs on the System Board
+.sp
+.in +2
+.nf
+# \fBcfgadm -a -s "select=class(sbd):type(cpu)"\fR
+
+Ap_Id Type Receptacle Occupant Condition
+SB0::cpu0 cpu connected configured ok
+SB0::cpu1 cpu connected configured ok
+SB0::cpu2 cpu connected configured ok
+SB0::cpu3 cpu connected configured ok
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRDisplaying the \fBCPU\fR Information Field
+.sp
+.in +2
+.nf
+# \fBcfgadm -l -s noheadings,cols=info SB0::cpu0\fR
+
+cpuid 16, speed 400 MHz, ecache 8 Mbytes
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 4 \fRDisplaying the \fBCPU\fR Information Field in Parsable Format
+.sp
+.in +2
+.nf
+# \fBcfgadm -l -s noheadings,cols=info -o parsable SB0::cpu0\fR
+
+cpuid=16 speed=400 ecache=8
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 5 \fRDisplaying the Devices on an I/O Board
+.sp
+.in +2
+.nf
+# \fBcfgadm -a -s noheadings,cols=ap_id:info -o parsable IO1\fR
+
+IO1 powered-on assigned
+IO1::pci0 device=/devices/saf@0/pci@0,2000 referenced
+IO1::pci1 device=/devices/saf@0/pci@1,2000 referenced
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 6 \fRMonitoring an Unconfigure Operation
+.sp
+.LP
+In the following example, the memory sizes are displayed in Kbytes.
+
+.sp
+.in +2
+.nf
+# \fBcfgadm -c unconfigure -y SB0::memory &\fR
+# \fBcfgadm -l -s noheadings,cols=info -o parsable SB0::memory SB1::memory\fR
+
+address=0x0 size=2097152 permanent=752592 target=SB1::memory
+ deleted=1273680 remaining=823472
+address=0x1000000 size=2097152 source=SB0::memory
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 7 \fRAssigning a Slot to a Domain
+.sp
+.in +2
+.nf
+# \fBcfgadm -x assign SB2\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 8 \fRUnassigning a Slot from a Domain
+.sp
+.in +2
+.nf
+# \fBcfgadm -x unassign SB3\fR
+.fi
+.in -2
+.sp
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for a description of the following attribute:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Stability See below.
+.TE
+
+.sp
+.LP
+The interface stability is evolving. The output stability is unstable.
+.SH SEE ALSO
+.sp
+.LP
+.BR config_admin (3CFGADM),
+.BR attributes (7),
+.BR cfgadm (8),
+.BR devfsadm (8),
+.BR ifconfig (8),
+.BR mount (8),
+.BR pbind (8),
+.BR psradm (8),
+.BR psrinfo (8)
+.SH NOTES
+.sp
+.LP
+This section contains information on how to monitor the progress of a memory
+delete operation. It also contains platform specific information.
+.SS "Memory Delete Monitoring"
+.sp
+.LP
+The following shell script can be used to monitor the progress of a memory
+delete operation.
+.sp
+.in +2
+.nf
+# \fBcfgadm -c unconfigure -y SB0::memory &\fR
+# \fBwatch_memdel SB0\fR
+
+#!/bin/sh
+# This is the watch_memdel script.
+
+if [ -z "$1" ]; then
+ printf "usage: %s board_id\en" `basename $0`
+ exit 1
+fi
+
+board_id=$1
+
+cfgadm_info='cfgadm -s noheadings,cols=info -o parsable'
+
+eval `$cfgadm_info $board_id::memory`
+
+if [ -z "$remaining" ]; then
+ echo no memory delete in progress involving $board_id
+ exit 0
+fi
+
+echo deleting target $target
+
+while true
+do
+ eval `$cfgadm_info $board_id::memory`
+
+ if [ -n "$remaining" -a "$remaining" -ne 0 ]
+ then
+ echo $deleted KBytes deleted, $remaining KBytes remaining
+ remaining=
+ else
+ echo memory delete is done
+ exit 0
+ fi
+ sleep 1
+done
+exit 0
+.fi
+.in -2
+.sp
+
+.SS "Sun Enterprise 10000 Platform Notes"
+.sp
+.LP
+The following syntax is used to refer to Platform Notes attachment points on
+the Sun Enterprise 10000 system:
+.sp
+.in +2
+.nf
+\fIboard\fR::\fIcomponent\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+ where \fIboard\fR refers to the system board; and \fIcomponent\fR refers to
+the individual component. System boards can range from \fBSB0\fR (zero) to
+\fBSB15\fR. A maximum of sixteen system boards are available.
+.sp
+.LP
+The DR 3.0 model running on a Sun Enterprise 10000 domain supports a limited
+subset of the functionality provided by the \fBcfgadm_sbd\fR plugin. The only
+supported operation is to view the status of attachment points in the domain.
+This corresponds to the \fB-l\fR option and all of its associated options.
+.sp
+.LP
+Attempting to perform any other operation from the domain will result in an
+error that states that the operation is not supported. All operations to add or
+remove a system board must be initiated from the System Service Processor.
+.SS "Sun Fire High-End System Platform Notes"
+.sp
+.LP
+The following syntax is used to refer to attachment points on the Sun Fire
+high-end systems:
+.sp
+.in +2
+.nf
+\fIboard\fR::\fIcomponent\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+where \fIboard\fR refers to the system board or I/O board; and \fIcomponent\fR
+refers to the individual component.
+.sp
+.LP
+Depending on the system's configuration, system boards can range from \fBSB0\fR
+(zero) through \fBSB17\fR, and I/O boards can range from \fBIO0\fR (IO zero)
+through \fBIO17\fR. (A maximum of eighteen system and I/O boards are
+available).
+.sp
+.LP
+The \fB-t\fR and \fB-x\fR options behave differently on the Sun Fire high-end
+system platforms. The following list describes their behavior:
+.sp
+.ne 2
+.na
+\fB\fB-t\fR\fR
+.ad
+.RS 24n
+The system controller uses a CPU to test system boards by running \fBLPOST\fR,
+sequenced by the \fBhpost\fR command. To test I/O boards, the driver starts the
+testing in response to the \fB-t\fR option, and the test runs automatically
+without user intervention. The driver unconfigures a CPU and a stretch of
+contiguous physical memory. Then, it sends a command to the system controller
+to test the board. The system controller uses the CPU and memory to test the
+I/O board from inside of a transaction/error cage. You can only use CPUs from
+system boards (not MCPU boards) to test I/O boards.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-x\fR \fBassign | unassign\fR\fR
+.ad
+.RS 24n
+In the Sun Fire high-end system administration model, the platform
+administrator controls the platform hardware through the use of an available
+component list for each domain. This information is maintained on the system
+controller. Only the platform administrator can modify the available component
+list for a domain.
+.sp
+The domain administrator is only allowed to assign or unassign a board if it is
+in the available component list for that domain. The platform administrator
+does not have this restriction, and can assign or unassign a board even if it
+is not in the available component list for a domain.
+.RE
+
+.SS "Sun Fire 15K Component Types"
+.sp
+.LP
+The following are the names and descriptions of the component types:
+.sp
+.ne 2
+.na
+\fB\fBcpu\fR\fR
+.ad
+.RS 10n
+\fBCPU\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBio\fR\fR
+.ad
+.RS 10n
+\fBI/O\fR device
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmemory\fR\fR
+.ad
+.RS 10n
+Memory
+.RE
+
+.sp
+.LP
+\fBNote:\fR An operation on a memory component affects all of the memory
+components on the board.
+.SS "Sun Fire Midrange Systems Platform Notes"
+.sp
+.LP
+References to attachment points are slightly different on Sun Fire midrange
+servers such as the 6800, 4810, 4800, and 3800 systems than on the Sun Fire
+high-end systems. The following syntax is used to refer to attachment points on
+Sun Fire systems other than the Sun Fire 15K:
+.sp
+.in +2
+.nf
+N#.\fIboard\fR::\fIcomponent\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+where \fBN#\fR refers to the node; \fIboard\fR refers to the system board or
+I/O board; and \fIcomponent\fR refers to the individual component.
+.sp
+.LP
+Depending on the system's configuration, system boards can range from \fBSB0\fR
+through \fBSB5\fR, and I/O boards can range from \fBIB6\fR through \fBIB9\fR.
+(A maximum of six system and four I/O boards are available).
+.SS "Sun Fire Midrange System Component Types"
+.sp
+.LP
+The following are the names and descriptions of the component types:
+.sp
+.ne 2
+.na
+\fB\fBcpu\fR\fR
+.ad
+.RS 10n
+\fBCPU\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpci\fR\fR
+.ad
+.RS 10n
+\fBI/O\fR device
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmemory\fR\fR
+.ad
+.RS 10n
+Memory
+.RE
+
+.sp
+.LP
+\fBNote:\fR An operation on a memory component affects all of the memory
+components on the board.
diff --git a/usr/src/man/man8/cfgadm_scsi.8 b/usr/src/man/man8/cfgadm_scsi.8
new file mode 100644
index 0000000000..064bb03bf8
--- /dev/null
+++ b/usr/src/man/man8/cfgadm_scsi.8
@@ -0,0 +1,747 @@
+'\" te
+.\" Copyright (c) 2003 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH CFGADM_SCSI 8 "Jun 6, 2006"
+.SH NAME
+cfgadm_scsi \- SCSI hardware specific commands for cfgadm
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/cfgadm\fR [\fB-f\fR] [\fB-y\fR | \fB-n\fR] [\fB-v\fR] [\fB-o\fR \fIhardware_option\fR]
+ \fB-c\fR \fIfunction\fR \fIap_id\fR...
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/cfgadm\fR [\fB-f\fR] [\fB-y\fR | \fB-n\fR] [\fB-v\fR] [\fB-o\fR \fIhardware_option\fR]
+ \fB-x\fR \fIhardware_function\fR \fIap_id\fR...
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/cfgadm\fR [\fB-v\fR] [\fB-a\fR] [\fB-s\fR\fI listing_option\fR] [\fB-o\fR \fIhardware_option\fR]
+ [\fB-l\fR [\fIap_id\fR | \fIap_type ...\fR ]]
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/cfgadm\fR [\fB-v\fR] [\fB-o\fR\fI hardware_option\fR] \fB-t\fR \fIap_id\fR...
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/cfgadm\fR [\fB-v\fR] [\fB-o\fR\fI hardware_option\fR] \fB-h\fR [\fIap_id\fR]...
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBSCSI\fR hardware specific library \fB/usr/lib/cfgadm/scsi.so.1\fR
+provides the functionality for \fBSCSI\fR hot-plugging through the
+\fBcfgadm\fR(8) command. \fBcfgadm\fR operates on attachment points, which are
+locations in the system where hardware resources can be dynamically
+reconfigured. Refer to \fBcfgadm\fR(8) for information regarding attachment
+points.
+.sp
+.LP
+For \fBSCSI\fR hot-plugging, each \fBSCSI\fR controller is represented by an
+attachment point in the device tree. In addition, each \fBSCSI \fRdevice is
+represented by a dynamic attachment point. Attachment points are named through
+\fBap_ids\fR. Two types of \fBap_ids\fR are defined: logical and physical. The
+physical \fBap_id\fR is based on the physical pathname, whereas the logical
+\fBap_id\fR is a shorter more user-friendly name. For \fBSCSI \fRcontrollers,
+the logical \fBap_id\fR is usually the corresponding disk controller number.
+For example, a typical logical \fBap_id\fR would be \fBc0\fR.
+.sp
+.LP
+\fBSCSI\fR devices are named relative to the controller \fBap_id\fR. Thus if a
+disk device is attached to controller \fBc0\fR, its \fBap_id\fR can be:
+.sp
+.in +2
+.nf
+c0::dsk/c0t0d0
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+where \fBdsk/c0t0d0\fR identifies the specific device. In general, the device
+identifier is derived from the corresponding logical link for the device in
+\fB/dev\fR. For example, a \fBSCSI\fR tape drive logical \fBap_id\fR could be
+\fBc0::rmt/0\fR. Here \fBc0\fR is the logical \fBap_id\fR for the \fBSCSI\fR
+controller and \fBrmt/0\fR is derived from the logical link for the tape drive
+in \fB/dev/rmt\fR. If an identifier can not be derived from the link in
+\fB/dev\fR, a unique identifier will be assigned to it. For example, if the
+tape device has no link in \fB/dev\fR, it can be assigned an \fBap_id\fR of the
+form \fBc0::st3\fR where \fBst3\fR is a unique internally generated identifier.
+.sp
+.LP
+A simple listing of attachment points in the system will include attachment
+points at \fBSCSI \fRcontrollers but not \fBSCSI\fR devices. Use the \fB-a\fR
+flag to the list option (\fB-l\fR) to list \fBSCSI\fR devices as well. For
+example:
+.sp
+.in +2
+.nf
+# cfgadm -l
+ Ap_Id Type Receptacle Occupant Condition
+ c0 scsi-bus connected configured unknown
+ sysctrl0:slot0 cpu/mem connected configured ok
+ sysctrl0:slot1 sbus-upa connected configured ok
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+To list \fBSCSI\fR devices in addition to \fBSCSI\fR controllers:
+.sp
+.in +2
+.nf
+# cfgadm -al
+
+Ap_Id Type Receptacle Occupant Condition
+c0 scsi-bus connected configured unknown
+c0::dsk/c0t14d0 disk connected configured unknown
+c0::dsk/c0t11d0 disk connected configured unknown
+c0::dsk/c0t8d0 disk connected configured unknown
+c0::dsk/c0t0d0 disk connected configured unknown
+c0::rmt/0 tape connected configured unknown
+sysctrl0:slot0 cpu/mem connected configured ok
+sysctrl0:slot1 sbus-upa connected configured ok
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Refer to \fBcfgadm\fR(8) for more information regarding listing attachment
+points. The receptacle and occupant state for attachment points at the
+\fBSCSI\fR controller have the following meanings:
+.sp
+.ne 2
+.na
+\fBempty\fR
+.ad
+.RS 16n
+not applicable
+.RE
+
+.sp
+.ne 2
+.na
+\fBdisconnected\fR
+.ad
+.RS 16n
+bus quiesced (\fBI/O\fR activity on bus is suspended)
+.RE
+
+.sp
+.ne 2
+.na
+\fBconnected\fR
+.ad
+.RS 16n
+bus active
+.RE
+
+.sp
+.ne 2
+.na
+\fBconfigured\fR
+.ad
+.RS 16n
+one or more devices on the bus is configured
+.RE
+
+.sp
+.ne 2
+.na
+\fBunconfigured\fR
+.ad
+.RS 16n
+no device on the bus is configured
+.RE
+
+.sp
+.LP
+The corresponding states for individual \fBSCSI\fR devices are:
+.sp
+.ne 2
+.na
+\fBempty\fR
+.ad
+.RS 16n
+not applicable
+.RE
+
+.sp
+.ne 2
+.na
+\fBdisconnected\fR
+.ad
+.RS 16n
+bus to which the device is attached is quiesced
+.RE
+
+.sp
+.ne 2
+.na
+\fBconnected\fR
+.ad
+.RS 16n
+bus to which device is attached is active
+.RE
+
+.sp
+.ne 2
+.na
+\fBconfigured\fR
+.ad
+.RS 16n
+device is configured
+.RE
+
+.sp
+.ne 2
+.na
+\fBunconfigured\fR
+.ad
+.RS 16n
+device is not configured
+.RE
+
+.SH OPTIONS
+.sp
+.LP
+\fBcfgadm\fR defines several types of operations besides listing
+(\fB-l\fR).These operations include testing, (\fB-t\fR), invoking configuration
+state changes, (\fB-c\fR), invoking hardware specific functions (\fB-x\fR), and
+obtaining configuration administration help messages (\fB-h\fR).
+.sp
+.ne 2
+.na
+\fB\fB-c\fR \fIfunction\fR\fR
+.ad
+.RS 24n
+The following generic commands are defined for the \fBSCSI \fRhardware specific
+library:
+.sp
+For \fBSCSI\fR controller attachment points, the following configuration state
+change operations are supported:
+.sp
+.ne 2
+.na
+\fBconnect\fR
+.ad
+.RS 15n
+Unquiesce the \fBSCSI\fR bus.
+.RE
+
+.sp
+.ne 2
+.na
+\fBdisconnect\fR
+.ad
+.RS 15n
+Quiesce the bus (suspend \fBI/O\fR activity on bus).
+.sp
+Incorrect use of this command can cause the system to hang. See \fBNOTES\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBconfigure\fR
+.ad
+.RS 15n
+Configure new devices on \fBSCSI\fR bus.
+.RE
+
+.sp
+.ne 2
+.na
+\fBunconfigure\fR
+.ad
+.RS 15n
+Unconfigure all devices connected to bus.
+.RE
+
+The following generic commands are defined for \fBSCSI\fR devices:
+.sp
+.ne 2
+.na
+\fBconfigure\fR
+.ad
+.RS 15n
+configure a specific device
+.RE
+
+.sp
+.ne 2
+.na
+\fBunconfigure\fR
+.ad
+.RS 15n
+unconfigure a specific device
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR\fR
+.ad
+.RS 24n
+When used with the \fBdisconnect\fR command, forces a quiesce of the \fBSCSI\fR
+bus, if supported by hardware.
+.sp
+Incorrect use of this command can cause the system to hang. See \fBNOTES\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-h\fR \fIap_id\fR\fR
+.ad
+.RS 24n
+SCSI specific help can be obtained by using the help option with any SCSI
+attachment point.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-o\fR \fIhardware_option\fR\fR
+.ad
+.RS 24n
+No hardware specific options are currently defined.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR \fIlisting_option\fR\fR
+.ad
+.RS 24n
+Attachment points of class \fBscsi\fR can be listed by using the \fBselect\fR
+sub-option. Refer to the \fBcfgadm\fR(8) man page for additional information.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-t\fR \fIap_id\fR\fR
+.ad
+.RS 24n
+No test commands are available at present.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-x\fR \fIhardware_function\fR\fR
+.ad
+.RS 24n
+Some of the following commands can only be used with SCSI controllers and some
+only with SCSI devices.
+.sp
+In the following, \fIcontroller_ap_id\fR refers to an \fBap_id\fR for a SCSI
+controller, for example, \fBc0\fR. \fIdevice_ap_id\fR refers to an \fBap_id\fR
+for a \fBSCSI\fR device, for example: \fBc0::dsk/c0dt3d0\fR.
+.sp
+The following hardware specific functions are defined:
+.sp
+.ne 2
+.na
+\fBinsert_device \fIcontroller_ap_id\fR\fR
+.ad
+.sp .6
+.RS 4n
+Add a new device to the SCSI controller, \fIcontroller_ap_id\fR.
+.sp
+This command is intended for interactive use only.
+.RE
+
+.sp
+.ne 2
+.na
+\fBremove_device \fIdevice_ap_id\fR\fR
+.ad
+.sp .6
+.RS 4n
+Remove device \fIdevice_ap_id\fR.
+.sp
+This command is intended for interactive use only.
+.RE
+
+.sp
+.ne 2
+.na
+\fBreplace_device \fIdevice_ap_id\fR\fR
+.ad
+.sp .6
+.RS 4n
+Remove device \fIdevice_ap_id\fR and replace it with another device of the same
+kind.
+.sp
+This command is intended for interactive use only.
+.RE
+
+.sp
+.ne 2
+.na
+\fBreset_device \fIdevice_ap_id\fR\fR
+.ad
+.sp .6
+.RS 4n
+Reset \fIdevice_ap_id\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBreset_bus \fIcontroller_ap_id\fR\fR
+.ad
+.sp .6
+.RS 4n
+Reset bus \fIcontroller_ap_id\fR without resetting any devices attached to the
+bus.
+.RE
+
+.sp
+.ne 2
+.na
+\fBreset_all \fIcontroller_ap_id\fR\fR
+.ad
+.sp .6
+.RS 4n
+Reset bus \fIcontroller_ap_id\fR and all devices on the bus.
+.RE
+
+.sp
+.ne 2
+.na
+\fBlocator [=on|off] \fIdevice_ap_id\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets or gets the hard disk locator \fBLED\fR, if it is provided by the
+platform. If the [on|off] suboption is not set, the state of the hard disk
+locator is printed.
+.RE
+
+.sp
+.ne 2
+.na
+\fBled[=LED,mode=on|off|blink] \fIdevice_ap_id\fR\fR
+.ad
+.sp .6
+.RS 4n
+If no sub-arguments are set, this function print a list of the current
+\fBLED\fR settings. If sub-arguments are set, this function sets the mode of a
+specific \fBLED\fR for a slot.
+.RE
+
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRConfiguring a Disk
+.sp
+.LP
+The following command configures a disk attached to controller \fBc0\fR:
+
+.sp
+.in +2
+.nf
+# \fBcfgadm -c configure c0::dsk/c0t3d0\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRUnconfiguring a Disk
+.sp
+.LP
+The following command unconfigures a disk attached to controller \fBc0\fR:
+
+.sp
+.in +2
+.nf
+# \fBcfgadm -c unconfigure c0::dsk/c0t3d0\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRAdding a New Device
+.sp
+.LP
+The following command adds a new device to controller \fBc0\fR:
+
+.sp
+.in +2
+.nf
+# \fBcfgadm -x insert_device c0\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The system responds with the following:
+
+.sp
+.in +2
+.nf
+Adding device to SCSI HBA: /devices/sbus@1f,0/SUNW,fas@e,8800000
+This operation will suspend activity on SCSI bus c0
+Continue (yes/no)?
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Enter:
+
+.sp
+.in +2
+.nf
+\fBy\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The system responds with the following:
+
+.sp
+.in +2
+.nf
+SCSI bus quiesced successfully.
+It is now safe to proceed with hotplug operation.
+Enter y if operation is complete or n to abort (yes/no)?
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Enter:
+
+.sp
+.in +2
+.nf
+\fBy\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 4 \fRReplacing a Device
+.sp
+.LP
+The following command replaces a device attached to controller \fBc0\fR:
+
+.sp
+.in +2
+.nf
+# \fBcfgadm \fR\fB-x\fR\fB replace_device c0::dsk/c0t3d0\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The system responds with the following:
+
+.sp
+.in +2
+.nf
+Replacing SCSI device: /devices/sbus@1f,0/SUNW,fas@e,8800000/sd@3,0
+This operation will suspend activity on SCSI bus: c0
+Continue (yes/no)?
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Enter:
+
+.sp
+.in +2
+.nf
+\fBy\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The system responds with the following:
+
+.sp
+.in +2
+.nf
+SCSI bus quiesced successfully.
+It is now safe to proceed with hotplug operation.
+Enter y if operation is complete or n to abort (yes/no)?
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Enter:
+
+.sp
+.in +2
+.nf
+\fBy\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 5 \fREncountering a Mounted File System While Unconfiguring a Disk
+.sp
+.LP
+The following command illustrates encountering a mounted file system while
+unconfiguring a disk:
+
+.sp
+.in +2
+.nf
+# \fBcfgadm -c unconfigure c1::dsk/c1t0d0\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The system responds with the following:
+
+.sp
+.in +2
+.nf
+cfgadm: Component system is busy, try again: failed to offline:
+/devices/pci@1f,4000/scsi@3,1/sd@1,0
+ Resource Information
+------------------ --------------------------
+/dev/dsk/c1t0d0s0 mounted filesystem "/mnt"
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 6 \fRDisplay the Value of the Locator for a Disk
+.sp
+.LP
+The following command displays the value of the locator for a disk. This
+example is specific to the \fBSPARC\fR Enterprise Server family:
+
+.sp
+.in +2
+.nf
+# \fBcfgadm -x locator c0::dsk/c0t6d0\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The system responds with the following:
+
+.sp
+.in +2
+.nf
+Disk Led
+c0t6d0 locator=on
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 7 \fRSet the Value of the Locator for a Disk
+.sp
+.LP
+The following command sets the value of the locator for a disk. This example is
+specific to the \fBSPARC\fR Enterprise Server family:
+
+.sp
+.in +2
+.nf
+# \fBcfgadm -x locator=off c0::dsk/c0t6d0\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The system does not print anything in response.
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/cfgadm/scsi.so.1\fR\fR
+.ad
+.sp .6
+.RS 4n
+hardware-specific library for generic \fBSCSI\fR hot-plugging
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/platform/SPARC-Enterprise/lib/cfgadm/scsi.so.1\fR\fR
+.ad
+.sp .6
+.RS 4n
+platform-specific library for generic \fBSCSI\fR hot-plugging
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR config_admin (3CFGADM),
+.BR libcfgadm (3LIB),
+.BR attributes (7),
+.BR cfgadm (8),
+.BR luxadm (8)
+.SH NOTES
+.sp
+.LP
+The \fBdisconnect\fR (quiesce) operation is not supported on controllers which
+control disks containing critical partitions such as \fBroot\fR (\fB/\fR),
+\fB/usr\fR, \fBswap\fR, or \fB/var\fR. The \fBdisconnect\fR operation should
+not be attempted on such controllers. Incorrect usage can result in a system
+hang and require a reboot.
+.sp
+.LP
+When a controller is in the disconnected (quiesced) state, there is a potential
+for deadlocks occurring in the system. The \fBdisconnect\fR operation should be
+used with caution. A controller should be kept in the disconnected state for
+the minimum period of time required to accomplish the \fBDR\fR operation. The
+\fBdisconnect\fR command is provided only to allow the replacement of the
+\fBSCSI\fR cables while the system is running. It should not be used for any
+other purpose. The only fix for a deadlock (if it occurs) is to reboot the
+system.
+.sp
+.LP
+Hotplugging operations are not supported by all \fBSCSI\fR controllers.
+.SH WARNINGS
+.sp
+.LP
+The connectors on some \fBSCSI\fR devices do not conform to \fBSCSI\fR hotplug
+specifications. Performing hotplug operations on such devices can cause damage
+to the hardware on the \fBSCSI\fR bus. Refer to your hardware manual for
+additional information.
diff --git a/usr/src/man/man8/cfgadm_usb.8 b/usr/src/man/man8/cfgadm_usb.8
new file mode 100644
index 0000000000..885025a8fc
--- /dev/null
+++ b/usr/src/man/man8/cfgadm_usb.8
@@ -0,0 +1,990 @@
+'\" te
+.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH CFGADM_USB 8 "Mar 1, 2007"
+.SH NAME
+cfgadm_usb \- USB hardware-specific commands for cfgadm
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/cfgadm\fR [\fB-f\fR] [\fB-y\fR | \fB-n\fR] [\fB-v\fR] \fB-c\fR \fIfunction\fR \fIap_id\fR...
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/cfgadm\fR \fB-f\fR [\fB-y\fR | \fB-n\fR] [\fB-v\fR] [\fB-o\fR \fIhardware_options\fR]
+ \fB-x\fR \fIhardware_function\fR \fIap_id\fR...
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/cfgadm\fR \fB-v\fR [\fB-a\fR] [\fB-s\fR \fIlisting_option\fR]
+ [\fB-l\fR [\fIap_id\fR | \fIap_type\fR...]]
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/cfgadm\fR \fB-v\fR \fB-h\fR [\fIap_id\fR]...
+.fi
+
+.SH DESCRIPTION
+.LP
+The Universal Serial Bus (\fBUSB\fR) hardware-specific library
+\fB/usr/lib/cfgadm/usb.so.1\fR provides the functionality for administering
+\fBUSB\fR devices via the \fBcfgadm\fR(8) command. \fBcfgadm\fR operates on
+attachment points. For details regarding attachment points, refer to
+\fBcfgadm\fR(8).
+.sp
+.LP
+For \fBUSB\fR administration, the only attachment points supported are the
+ports of hubs attached to the \fBUSB\fR bus.
+.sp
+.LP
+Attachment points are named through attachment point IDs (\fIap_ids\fR). The
+\fBUSB\fR bus is hierarchical, so the \fIap_ids\fR are as well. \fBUSB\fR hubs
+have ports, numbered from \fB1\fR to \fIn\fR. All \fBUSB\fR \fIap_ids\fR
+consist of a string of the following form:
+.sp
+.in +2
+.nf
+usb\fIN\fR/\fIA\fR[.\fIB\fR[.\fIC\fR[...]]]
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+where
+.br
+.in +2
+\fIN\fR is the \fIN\fRth \fBUSB\fR host controller on the system,
+.in -2
+.br
+.in +2
+\fIA\fR is port #\fIA\fR on the root (top) hub.
+.in -2
+.br
+.in +2
+\fIB\fR is port #\fIB\fR of the hub plugged into port #\fIA\fR of the hub above
+it.
+.in -2
+.br
+.in +2
+\fIC\fR is port #\fIC\fR of the hub plugged into port #\fIB \fRof the hub above
+it, and so forth.
+.in -2
+.sp
+.LP
+For example, the first port on the root hub of USB controller \fB0\fR (the only
+controller), has a logical \fIap_id\fR:
+.sp
+.in +2
+.nf
+usb0/1
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Similarly, the second port on the first external hub plugged into the first
+port on the root hub of the first \fBUSB\fR controller has a logical
+\fIap_id\fR:
+.sp
+.in +2
+.nf
+usb0/1.2
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+For example, if the \fIap_id\fR is \fBusb0/1.4.3.4\fR, it represents port
+\fB4\fR of the hub plugged into port \fB3\fR of the hub plugged into port
+\fB4\fR of the hub plugged into port \fB1\fR of the root hub of the first
+\fBUSB\fR host controller on the system.
+.sp
+.in +2
+.nf
+example# \fBcfgadm -l\fR
+Ap_Id Type Receptacle Occupant Condition
+usb0/1 USB-hub connected configured ok
+usb0/2 unknown empty unconfigured ok
+usb0/1.1 USB-storage connected configured ok
+usb0/1.2 unknown empty unconfigured ok
+usb0/1.3 unknown empty unconfigured ok
+usb0/1.4 USB-device connected configured ok
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+\fBUSB 2.0\fR chips have one \fBEHCI\fR host \fBUSB 2.0\fR host controller and a
+number of companion \fBUSB 1.\fR\fIx\fR host controllers (either \fBOHCI\fR or
+\fBUHCI\fR host controllers).
+.sp
+.LP
+When a \fBUSB 2.0\fR device has been plugged in, it shows up on the \fBEHCI\fR
+logical ports which might not have a \fB1\fR to \fB1\fR mapping to external
+physical port numbers on the system. When a \fBUSB 1.\fR\fIx\fR device is
+plugged in, the \fBEHCI\fR host controller reroutes the device to a companion
+host controller and the device shows up on the companion's logical port
+number.
+.sp
+.LP
+The mapping of logical port numbers to physical port numbers can get quite
+complicated. For example:
+.sp
+.in +2
+.nf
+% cfgadm
+Ap_Id Type Receptacle Occupant Condition
+c0 scsi-bus connected configured unknown
+usb0/1 usb-mouse connected configured ok
+usb0/2 usb-kbd connected configured ok
+usb0/3 unknown empty unconfigured ok
+usb0/4 usb-hub connected configured ok
+usb0/4.1 unknown empty unconfigured ok
+usb0/4.2 unknown empty unconfigured ok
+usb0/4.3 unknown empty unconfigured ok
+usb0/4.4 usb-storage connected configured ok
+usb1/1 unknown empty unconfigured ok
+usb1/2 unknown empty unconfigured ok
+usb1/3 unknown empty unconfigured ok
+usb2/1 unknown empty unconfigured ok
+usb2/2 usb-device connected configured ok
+usb3/1 unknown empty unconfigured ok
+usb3/2 unknown empty unconfigured ok
+usb3/3 unknown empty unconfigured ok
+usb3/4 unknown empty unconfigured ok
+usb3/5 unknown empty unconfigured ok
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+In this example \fBusb0\fR is the onboard USB 1.\fIx\fR host controller.
+\fBusb1\fR and \fBusb2\fR are companion \fBOHCI USB 1.\fR\fIx\fR host
+controllers and \fBusb3\fR is an \fBEHCI USB 2.0\fR host controller.
+.sp
+.LP
+The following table shows the somewhat confusing routing for this USB 2.0 chip:
+.sp
+.in +2
+.nf
+logical port number physical port number
+------------------- --------------------
+ usb1/1 internal port 1
+ usb1/2 external port 1
+ usb1/3 external port 3
+
+ usb2/1 internal port 2
+ usb2/2 external port 2
+
+ usb3/1 internal port 1
+ usb3/2 internal port 2
+ usb3/3 external port 1
+ usb3/4 external port 2
+ usb3/5 external port 3
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Unfortunately, the exact routing can often only be determined by
+experimentation.
+.sp
+.LP
+The receptacle states for attachment points at the \fBUSB\fR port have the
+following meanings:
+.sp
+.ne 2
+.na
+\fB\fBconnected\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBUSB\fR port is powered on and enabled. A USB device is plugged in to the
+port. The device is logically connected to the USB bus.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdisconnected\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBUSB\fR port is powered on and enabled. A \fBUSB\fR device is plugged into
+the port. The device has been logically disconnected from the \fBUSB\fR bus
+(using the \fBcfgadm\fR \fB-c\fR \fBdisconnect\fR command).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBempty\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBUSB\fR port is powered on, but no device is plugged in to it.
+.RE
+
+.sp
+.LP
+The occupant states for devices at \fBUSB\fR port attachment points at the
+\fBUSB\fR port have the following meanings:
+.sp
+.ne 2
+.na
+\fB\fBconfigured\fR\fR
+.ad
+.sp .6
+.RS 4n
+The \fBUSB\fR device at the \fBUSB\fR port is configured and usable by Solaris.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBunconfigured\fR\fR
+.ad
+.sp .6
+.RS 4n
+The \fBUSB\fR device at the \fBUSB\fR port was explicitly off-lined using
+\fBcfgadm\fR \fB-c\fR \fBunconfigure\fR, or was not successfully configured for
+use with Solaris, for example, having no driver or a device problem.
+.RE
+
+.sp
+.LP
+The attachment point conditions are:
+.sp
+.ne 2
+.na
+\fB\fBok\fR\fB\fR\fR
+.ad
+.sp .6
+.RS 4n
+Normal state - ready for use.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfailing\fR\fR
+.ad
+.sp .6
+.RS 4n
+Not used.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfailed\fR\fR
+.ad
+.sp .6
+.RS 4n
+Not used.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBunusable\fR\fR
+.ad
+.sp .6
+.RS 4n
+The user has physically removed a device while an application had the device
+open (there might be outstanding \fBI/O\fR). Users need to reinsert the same
+physical device and close the application properly before removing the device
+again. The port cannot configure other inserted devices until this is done.
+.sp
+If the original device cannot be reinserted into the port, see the \fI\fR for
+instructions for clearing this attachment point condition.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBunknown\fR\fR
+.ad
+.sp .6
+.RS 4n
+Not used.
+.RE
+
+.sp
+.LP
+A \fBUSB\fR device can be hotplugged or hotunplugged at any time, and the
+system detects the event and takes the appropriate action.
+.sp
+.LP
+It is not necessary to transition a receptacle to the \fBdisconnected\fR state
+before removing its device from the \fBUSB\fR. However, it is not recommended
+to hot-remove devices currently in use (such as removable disks currently
+opened by a volume manager or some other application).
+.SH OPTIONS
+.LP
+\fBcfgadm\fR defines several types of operations. These operations include
+invoking configuration state changes (\fB-c\fR), invoking hardware-specific
+functions (\fB-x\fR), and obtaining configuration administration help messages
+(\fB-h\fR).
+.sp
+.LP
+If any of these operations fail, the device and attachment point might not be
+in the expected state. Use the \fBcfgadm\fR \fB-l\fR command to display the
+device's current status.
+.sp
+.LP
+All other options have the same meaning as defined in \fBcfgadm\fR(8).
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-c\fR \fIfunction\fR\fR
+.ad
+.sp .6
+.RS 4n
+The following generic commands are defined for the \fBUSB\fR hardware specific
+library. The following configuration state change operations are supported:
+.sp
+.ne 2
+.na
+\fB\fBconfigure\fR\fR
+.ad
+.sp .6
+.RS 4n
+If there is a \fBUSB\fR device plugged into the port, this command attempts to
+configure it and set everything up so that it is usable by Solaris. This
+command does an implied \fBconnect\fR (reverse of \fBdisconnect\fR) if
+necessary. This command accomplishes nothing, and returns an error message, if
+the device at that port is already configured. After successful execution of
+this command, the device is ready for use under Solaris.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdisconnect\fR\fR
+.ad
+.sp .6
+.RS 4n
+Performs an \fBunconfigure\fR on the \fIap_id\fR (if it is not already
+\fBunconfigured\fR), and then transitions the receptacle to the
+\fBdisconnected\fR state, even though a device is still be plugged into the
+port. Issuing a \fBcfgadm\fR \fB-c\fR \fBconfigure\fR, or physically
+hotplugging the device, brings the device back to the \fBconnected\fR
+receptacle state, and to the \fBconfigured\fR occupant state, assuming a driver
+can be found and there are no problems enumerating and configuring the device.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBunconfigure\fR\fR
+.ad
+.sp .6
+.RS 4n
+Makes the device plugged into the port unusable by Solaris (offline it). If
+successful, \fBcfgadm\fR reports this \fIap_id\fR's occupant state as
+\fBunconfigured\fR. Issuing a \fBconfigure\fR to the \fIap_id\fR (if
+successful) brings its occupant back to the \fBconfigured\fR (online)
+condition, as it physically hotplugging the device on the port.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR\fR
+.ad
+.sp .6
+.RS 4n
+Not supported.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-h\fR \fIap_id\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBUSB\fR specific help can be obtained by using the help option with any
+\fBUSB\fR attachment point.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR[\fBv\fR]\fR
+.ad
+.sp .6
+.RS 4n
+The \fB-l\fR option works as described in \fBcfgadm\fR(8). When paired with
+the \fB-v\fR option, the \fBInformation\fR field contains the following
+\fBUSB\fR-specific information:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBMfg\fR: manufacturer string (\fBiManufacturer\fR)
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBProduct\fR: product string (\fBiProduct\fR)
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBNConfigs\fR: total number of configurations the device supports
+(\fBbNumConfigurations\fR).
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBConfig\fR: current configuration setting in decimal (configuration index,
+not configuration value).
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The configuration string descriptor for the current configuration
+(\fBiConfiguration\fR)
+.RE
+See the Universal Serial Bus specification for a description of these fields.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-o\fR \fIhardware_options\fR\fR
+.ad
+.sp .6
+.RS 4n
+Hardware options are only supported for the hardware-specific command, \fB-x\fR
+\fBusb_config\fR. See the description of that command below for an explanation
+of the options available.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR \fIlisting_options\fR\fR
+.ad
+.sp .6
+.RS 4n
+Attachment points of class \fBUSB\fR can be listed by using the \fBselect\fR
+sub-option. See \fBcfgadm\fR(8).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-x\fR \fIhardware_function\fR\fR
+.ad
+.sp .6
+.RS 4n
+The following hardware-specific functions are defined:
+.sp
+.ne 2
+.na
+\fB\fBusb_config\fR \fB-o\fR \fBconfig=\fR\fIn\fR\fR
+.ad
+.sp .6
+.RS 4n
+This command requires the mandatory \fBconfig\fR value to be specified using
+the \fB-o\fR option.
+.sp
+Sets the \fBUSB\fR configuration of a multi-configuration \fBUSB\fR device at
+\fIap_id\fR to configuration index \fIn\fR. The device is set to this
+configuration henceforth and this setting persists across reboots, hot-removes,
+and unconfigure/configure of the device.
+.sp
+Valid values of \fIn\fR range from \fB0\fR to (\fBNconfigs -1\fR). The device
+is reset by a \fBdisconnect\fR followed by a \fBconfigure\fR. The
+\fBconfigure\fR causes the device to be configured to the new configuration
+setting.
+.sp
+If any of these steps fail, the configuration file and the device are restored
+to their previous state and an error message is issued.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBusb_reset\fR\fR
+.ad
+.sp .6
+.RS 4n
+Performs a software reset (re-enumeration) of the device. This is the
+equivalent of removing the device and inserting it back again. The port on the
+hub is power cycled if the hub supports power cycling of individual ports.
+.sp
+If the connected device is a hub, this function has the effect of resetting
+that hub and any devices down the tree of which it is the root.
+.sp
+If any of these steps fail, the device is restored to its previous state and an
+error message is issued.
+.RE
+
+.RE
+
+.sp
+.LP
+State table: attachment points state versus commands:
+.sp
+.in +2
+.nf
+Valid states:
+ empty/unconfigured \(-> no device connected
+
+ disconnected/unconfigured \(-> logically disconnected,
+ unavailable,
+ devinfo node removed,
+ device physically connected
+
+ connected/unconfigured \(-> logically connected,
+ unavailable,
+ devinfo node present
+
+ connected/configured \(-> connected, available
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The table below clarifies the state transitions resulting from actions or
+commands:
+.sp
+.in +2
+.nf
+current state operation new state
+------------- --------- ---------
+empty/
+unconfigured:
+ device plugged in: connected/configured or
+ connected/unconfigured
+ (if enumeration failed)
+ device removed: n/a
+ cfgadm -c unconfigure: empty/unconfigured
+ cfgadm -c configure: empty/unconfigured
+ cfgadm -c disconnect: empty/unconfigured
+ (no-op and error)
+
+disconnected/
+unconfigured:
+ device plugged in: n/a
+ device removed: empty/unconfigured
+ cfgadm -c unconfigure: disconnected/unconfigured
+ cfgadm -c configure: connected/configured, or
+ connected/unconfigured
+ (if reenumeration failed)
+ cfgadm -c disconnect: disconnected/unconfigured
+
+connected/unconfigured:
+ device plugged in: n/a
+ device removed: empty/unconfigured
+ cfgadm -c unconfigure: connected/unconfigured
+ cfgadm -c configure: connected/configured, or
+ connected/unconfigured
+ (if reenumeration failed)
+ cfgadm -c disconnect: disconnected/unconfigured
+
+connected/configured:
+ device plugged in: n/a
+ device removed: empty/unconfigured or
+ connected/configured,
+ but with ap condition
+ 'unusable' if device
+ was open when removed
+ cfgadm -c unconfigure: connected/unconfigured
+ cfgadm -c configure: connected/configured
+ cfgadm -c disconnect: disconnected/unconfigured
+.fi
+.in -2
+.sp
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRListing the Status of All USB Devices
+.sp
+.LP
+The following command lists the status of all \fBUSB\fR devices on the system:
+
+.sp
+.in +2
+.nf
+# cfgadm
+Ap_Id Type Receptacle Occupant Condition
+usb0/1 USB-hub connected configured ok
+usb0/2 unknown empty unconfigured ok
+usb0/1.1 USB-storage connected configured ok
+usb0/1.2 unknown empty unconfigured ok
+usb0/1.3 unknown empty unconfigured ok
+usb0/1.4 USB-device connected configured ok
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Notice that \fBcfgadm\fR treats the \fBUSB-device\fR device at \fBap_id
+usb0/1.4\fR as a single unit, since it cannot currently control individual
+interfaces.
+
+.LP
+\fBExample 2 \fRListing the Status of a Port with No Device Plugged In
+.sp
+.LP
+The following command lists the status of a port with no device plugged in:
+
+.sp
+.in +2
+.nf
+example# \fBcfgadm -l usb0/1.3\fR
+Ap_Id Type Receptacle Occupant Condition
+usb0/1.3 unknown empty unconfigured ok
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRListing the Status of the Same Port with a Device Plugged In
+.sp
+.LP
+The following command lists the status of the same port after physically
+plugging in a device that configures without problems:
+
+.sp
+.in +2
+.nf
+example# \fBcfgadm -l usb0/1.3\fR
+Ap_Id Type Receptacle Occupant Condition
+usb0/1.3 USB-hub connected configured ok
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 4 \fRUnconfiguring an Existing USB Device
+.sp
+.LP
+The following command unconfigures the \fBUSB\fR device attached to
+\fBusb0/1.3\fR, then displays the status of the \fBap_id\fR:
+
+.sp
+.in +2
+.nf
+example# \fBcfgadm -c unconfigure usb0/1.3\fR
+Unconfigure the device: /devices/pci@0,0/pci8086,7112@7,2/hub@2:2.3
+This operation suspends activity on the USB device
+Continue (yes/no)?
+
+Enter:
+
+\fBy\fR
+
+example# \fBcfgadm -l usb0/1.3\fR
+Ap_Id Type Receptacle Occupant Condition
+usb0/1.3 unknown connected unconfigured ok
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 5 \fRUnconfiguring and Logically Disconnecting an Existing USB
+Device
+.sp
+.LP
+The following command unconfigures and logically disconnects a \fBUSB\fR device
+attached to \fBusb0/1.3\fR:
+
+.sp
+.in +2
+.nf
+example# \fBcfgadm -c disconnect usb0/1.3\fR
+Disconnect the device: /devices/pci@0,0/pci8086,7112@7,2/hub@2:2.3
+This operation suspends activity on the USB device
+Continue (yes/no)?
+
+Enter:
+
+\fBy\fR
+
+example# \fBcfgadm -l usb0/1.3\fR
+Ap_Id Type Receptacle Occupant Condition
+usb0/1.3 unknown disconnected unconfigured ok
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+A \fBdisconnect\fR implies that \fBcfgadm\fR does an \fBunconfigure\fR first.
+The receptacle status now shows \fBdisconnected\fR, even though the device is
+still physically connected. In this case, a physical hotplug or using the
+\fBcfgadm \fR\fB-c\fR \fBconfigure\fR on the \fBap_id\fR brings it back
+on-line.
+
+.LP
+\fBExample 6 \fRConfiguring a Previously Unconfigured USB Device
+.sp
+.LP
+The following command configures a \fBUSB\fR device that was previously
+attached to \fBusb0/1.3\fR:
+
+.sp
+.in +2
+.nf
+example # \fBcfgadm -yc configure usb0/1.3\fR
+example# \fBcfgadm -l usb0/1.3\fR
+Ap_Id Type Receptacle Occupant Condition
+usb0/1.3 unknown connected configured ok
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 7 \fRResetting a USB Device
+.sp
+.LP
+The following command resets a \fBUSB\fR device:
+
+.sp
+.in +2
+.nf
+example# \fBcfgadm -x usb_reset usb0/1.3\fR
+Reset the device: /devices/pci@0,0/pci8086,7112@7,2/hub@2:2.3
+This operation suspends activity on the USB device
+Continue (yes/no)?
+
+Enter:
+
+\fBy\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 8 \fRDisplaying Detailed Information About a USB Device
+.sp
+.LP
+The following command displays detailed information about a \fBUSB\fR device.
+This device shows the following \fBUSB\fR-specific information in
+the '\fBInformation\fR' field:
+
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Manufacturer string: Iomega
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Product string: \fBUSB Zip 250\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Number of configurations supported: 1
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Configuration currently active: 0
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Configuration string descriptor for configuration 0: Default
+.RE
+.sp
+.in +2
+.nf
+example# \fBcfgadm -lv usb0/1.5\fR
+Ap_Id Receptacle Occupant Condition Information
+When Type Busy Phys_Id
+usb0/1.5 connected configured ok Mfg:"Io
+mega" Product:"USB Zip 250" NConfigs:1 Config:0 : Default
+.fi
+.in -2
+.sp
+
+.sp
+.in +2
+.nf
+example# \fBcfgadm -l -s "cols=ap_id:info" usb0/1.5\fR
+Ap_Id Information
+usb0/1.5 Mfg:"Iomega" Product:"USB Zip 250"
+NConfigs:1 Config:0 : Default
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 9 \fRDisplaying Detailed Information About All USB Devices
+.sp
+.LP
+The following command displays detailed information about all \fBUSB\fR devices
+on the system:
+
+.sp
+.in +2
+.nf
+example# \fBcfgadm -l -s "select=class(usb),cols=ap_id:info"\fR
+Ap_Id Information
+usb0/1 Mfg:<undefined> Product:<undefined>
+NConfigs:1 Config:0 <no cfg str descr>
+usb0/2
+usb0/1.1 Mfg:<undefined> Product:<undefined>
+NConfigs:1 Config:0 <no cfg str descr>
+usb0/1.2
+usb0/1.3
+usb0/1.4 Mfg:"Wizard" Product:"Modem/ISDN"
+NConfigs:3 Config:1 : V.90 Analog Modem
+usb0/1.5 Mfg:"Iomega" Product:"USB Zip 250"
+NConfigs:1 Config:0 : Default
+usb0/1.6 Mfg:"SOLID YEAR" Product:"SOLID YEAR
+USB"NConfigs:1 Config:0 <no cfg str descr>
+usb0/1.7
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Lines containing only an \fBap_id\fR are empty ports. These can be filtered
+out. This example only lists \fBUSB\fR \fBap_id\fRs with connected devices, and
+information about those devices.
+
+.sp
+.in +2
+.nf
+example# \fBcfgadm -l -s "select=class(usb),cols=ap_id:info" | grep Mfg\fR
+usb0/1 Mfg:<undefined> Product:<undefined>
+NConfigs:1 Config:0 <no cfg str descr>
+usb0/1.1 Mfg:<undefined> Product:<undefined>
+NConfigs:1 Config:0 <no cfg str descr>
+usb0/1.4 Mfg:"Wizard" Product:"Modem/ISDN"
+NConfigs:3 Config:1 : V.90 Analog Modem
+usb0/1.5 Mfg:"Iomega" Product:"USB Zip 250"
+NConfigs:1 Config:0 : Default
+usb0/1.6 Mfg:"SOLID YEAR" Product:"SOLID YEAR USB"
+Config:0 <no cfg str descr>
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 10 \fRListing Information About a Multi-configuration USB Device
+.sp
+.LP
+The following example lists information about a multi-configuration \fBUSB\fR
+device.
+
+.sp
+.LP
+Notice the \fBNConfigs\fR field: the configurations available for this device
+are \fB0\fR, \fB1\fR, and \fB2\fR (\fB0\fR to (\fIN\fR\fBConfigs-1\fR)).
+
+.sp
+.in +2
+.nf
+example# \fBcfgadm -l -s "cols=ap_id:info" usb0/1.4\fR
+Ap_Id Information
+usb0/1.4 Mfg:"Wizard" Product:"Modem/ISDN"
+NConfigs:3 Config:1 V.90 Analog Modem"
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 11 \fRSetting the Current Configuration of a Multi-configuration USB
+Device
+.sp
+.LP
+The following example sets the current configuration of a multi-configuration
+USB device:
+
+.sp
+.in +2
+.nf
+example# \fBcfgadm -o config=2 -x usb_config usb0/1.4\fR
+Setting the device: /devices/pci@1f,2000/usb@1/device@3
+to USB configuration 2
+This operation suspends activity on the USB device
+Continue (yes/no)?
+
+Enter:
+
+\fBy\fR
+
+USB configuration changed successfully.
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The device path should be checked to ensure that the right instance of a device
+is being referred to, in the case where multiple devices of the exact same type
+are on the same bus. This information is available in the '\fBInformation\fR'
+field.
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/usr/lib/cfgadm/usb.so.1\fR\fR
+.ad
+.sp .6
+.RS 4n
+Hardware specific library for generic USB device administration
+.RE
+
+.SH SEE ALSO
+.LP
+.BR config_admin (3CFGADM),
+.BR scsa2usb (4D),
+.BR usba (4D),
+.BR attributes (7),
+.BR cfgadm (8)
+.sp
+.LP
+Universal Serial Bus 1.1 Specification (\fBwww.usb.org\fR)
+.sp
+.LP
+\fI\fR
+.SH NOTES
+.LP
+\fBcfgadm\fR(8) can not unconfigure, disconnect, reset, or change the
+configuration of any \fBUSB\fR device currently opened by any application.
+These operations also fail on a hub if a device in its hierarchy is opened by
+an application. See \fBscsa2usb\fR(4D) for unconfiguring a \fBUSB\fR
+mass-storage device that is currently in use.
+.sp
+.LP
+Only super-users can execute any functions on an attachment point. However, one
+need not be a super-user to list the attachment points.
diff --git a/usr/src/man/man8/chat.8 b/usr/src/man/man8/chat.8
new file mode 100644
index 0000000000..465c18860a
--- /dev/null
+++ b/usr/src/man/man8/chat.8
@@ -0,0 +1,749 @@
+'\" te
+.\" This manual page is based on documentation obtained from Karl Fox.
+.\" Portions Copyright (C) 2008, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH CHAT 8 "August 29, 2021"
+.SH NAME
+chat \- automated conversational exchange tool
+.SH SYNOPSIS
+.nf
+\fBchat\fR [\fIoptions\fR] \fIscript\fR
+.fi
+
+.SH DESCRIPTION
+The \fBchat\fR program implements a conversational text-based exchange between
+the computer and any serial device, including (but not limited to) a modem, an
+ISDN TA, and the remote peer itself, establishing a connection between the
+Point-To-Point Protocol daemon (\fBpppd\fR) and the remote \fBpppd\fR process.
+.SH OPTIONS
+The \fBchat\fR command supports the following options:
+.sp
+.ne 2
+.na
+\fB\fB-f\fR \fI<chat file>\fR\fR
+.ad
+.RS 23n
+Read the \fBchat\fR script from the \fBchat\fR file. This option is mutually
+exclusive with the \fBchat\fR script parameters. You must have \fBread\fR
+access to use the file. Multiple lines are permitted in the file. Use the space
+or horizontal tab characters to separate the strings.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-t\fR \fB\fI<timeout>\fR\fR \fR
+.ad
+.RS 23n
+Set the timeout for the expected string to be received. If the string is not
+received within the time limit, the reply string is not sent. If specified,
+a 'subexpect' (alternate reply) string can be sent. Otherwise, if no alternate
+reply strings remain, the \fBchat\fR script fails. A failed script will cause
+the \fBchat\fR program to terminate with a non-zero error code.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-r\fR \fB\fI<report file> \fR\fR \fR
+.ad
+.RS 23n
+Set the file for output of the report strings. If you use the keyword
+\fBREPORT\fR, the resulting strings are written to this file. If the \fB-r\fR
+option is not used and you use the \fBREPORT\fR keyword, the \fBstderr\fR file
+is used for the report strings.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-e\fR \fR
+.ad
+.RS 23n
+Start with the echo option turned on. You turn echo on or off at specific
+points in the \fBchat\fR script using the \fBECHO\fR keyword. When echoing is
+enabled, all output from the modem is echoed to \fBstderr\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-E\fR \fR
+.ad
+.RS 23n
+Enables environment variable substitution within \fBchat\fR scripts using the
+standard \fI$xxx\fR syntax.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR \fR
+.ad
+.RS 23n
+Request that the \fBchat\fR script execute in a verbose mode. The \fBchat\fR
+program logs the execution state of the \fBchat\fR script as well as all text
+received from the modem and output strings sent to the modem. The default is to
+log through \fBsyslog\fR(3C) with facility \fBlocal\fR2; the logging method is
+alterable using the \fB-S\fR and \fB-s\fR options.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-V\fR \fR
+.ad
+.RS 23n
+Request that the \fBchat\fR script be executed in a \fBstderr\fR verbose mode.
+The \fBchat\fR program logs all text received from the modem and output strings
+sent to the modem to \fBstderr\fR. \fBstderr\fR is usually the local console at
+the station running the \fBchat\fR or \fBpppd\fR program.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR\fR
+.ad
+.RS 23n
+Use \fBstderr\fR. Log messages from \fB-v\fR and error messages are sent to
+\fBstderr\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-S\fR\fR
+.ad
+.RS 23n
+Do not use syslog. By default, error messages are set to syslog. This option
+prevents log messages from \fB-v\fR and error messages from being sent to
+syslog.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-T\fR \fB\fI<phone number>\fR\fR\fR
+.ad
+.RS 23n
+Pass in an arbitrary string (usually a telephone number) that will be
+substituted for the \fB\eT\fR substitution metacharacter in a send string.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-U\fR \fB\fI<phone number 2>\fR\fR\fR
+.ad
+.RS 23n
+Pass in a second string (usually a telephone number) that will be substituted
+for the \fB\eU\fR substitution metacharacter in a send string. This is useful
+when dialing an ISDN terminal adapter that requires two numbers.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBscript\fR \fR
+.ad
+.RS 23n
+If the script is not specified in a file with the \fB-f\fR option, the script
+is included as parameters to the \fBchat\fR program.
+.RE
+
+.SH EXTENDED DESCRIPTION
+.SS "Chat Script"
+The \fBchat\fR script defines communications. A script consists of one or more
+"expect-send" pairs of strings separated by spaces, with an optional
+"subexpect-subsend" string pair, separated by a dash (as in the following
+example:)
+.sp
+.LP
+ogin:-BREAK-ogin: ppp ssword: hello2u2
+.sp
+.LP
+The example indicates that the \fBchat\fR program should expect the string
+"ogin:". If it fails to receive a login prompt within the time interval
+allotted, it sends a break sequence to the remote and then expects the string
+"ogin:". If the first "ogin:" is received, the break sequence is not generated.
+.sp
+.LP
+Upon receiving the login prompt, the \fBchat\fR program sends the string "ppp"
+and then expects the prompt "ssword:". When the password prompt is received, it
+sends the password hello2u2.
+.sp
+.LP
+A carriage return is normally sent following the reply string. It is not
+expected in the "expect" string unless it is specifically requested by using
+the \fB\er\fR character sequence.
+.sp
+.LP
+The expect sequence should contain only what is needed to identify the received
+data. Because it's stored on a disk file, it should not contain variable
+information. Generally it is not acceptable to look for time strings, network
+identification strings, or other variable pieces of data as an expect string.
+.sp
+.LP
+To correct for characters that are corrupted during the initial sequence, look
+for the string "ogin:" rather than "login:". The leading "l" character may be
+received in error, creating problems in finding the string. For this reason,
+scripts look for "ogin:" rather than "login:" and "ssword:" rather than
+"password:".
+.sp
+.LP
+An example of a simple script follows:
+.sp
+.in +2
+.nf
+ogin: ppp ssword: hello2u2
+.fi
+.in -2
+
+.sp
+.LP
+The example can be interpreted as: expect ogin:, send ppp, expect ...ssword:,
+send hello2u2.
+.sp
+.LP
+When login to a remote peer is necessary, simple scripts are rare. At minimum,
+you should include sub-expect sequences in case the original string is not
+received. For example, consider the following script:
+.sp
+.in +2
+.nf
+ogin:--ogin: ppp ssword: hello2u2
+.fi
+.in -2
+
+.sp
+.LP
+This script is more effective than the simple one used earlier. The string
+looks for the same login prompt; however, if one is not received, a single
+return sequence is sent and then the script looks for login: again. If line
+noise obscures the first login prompt, send the empty line to generate a login
+prompt again.
+.SS "Comments"
+Comments can be embedded in the \fBchat\fR script. Comment lines are ignored by
+the chat program. A comment starts with the hash ("#") character in column one.
+If a \fB#\fR character is expected as the first character of the expect
+sequence, quote the expect string. If you want to wait for a prompt that starts
+with a \fB#\fR character, write something like this:
+.sp
+.in +2
+.nf
+# Now wait for the prompt and send logout string
+\&'# ' logout
+.fi
+.in -2
+
+.SS "Sending Data From A File"
+If the string to send begins with an at sign ("@"), the remainder of the string
+is interpreted as the name of the file that contains the string. If the last
+character of the data read is a newline, it is removed. The file can be a named
+pipe (or fifo) instead of a regular file. This enables \fBchat\fR to
+communicate with another program, for example, a program to prompt the user and
+receive a password typed in.
+.SS "Abort "
+Many modems report the status of a call as a string. These status strings are
+often "CONNECTED" or "NO CARRIER" or "BUSY." If the modem fails to connect to
+the remote, you can terminate the script. Abort strings may be specified in the
+script using the ABORT sequence. For example:
+.sp
+.in +2
+.nf
+ABORT BUSY ABORT 'NO CARRIER' '' ATZ OK ATDT5551212 CONNECT
+.fi
+.in -2
+
+.sp
+.LP
+This sequence expects nothing and sends the string ATZ. The expected response
+is the string OK. When OK is received, the string ATDT5551212 dials the
+telephone. The expected string is CONNECT. If CONNECT is received, the
+remainder of the script is executed. When the modem finds a busy telephone, it
+sends the string BUSY, causing the string to match the abort character
+sequence. The script fails because it found a match to the abort string. If the
+NO CARRIER string is received, it aborts for the same reason.
+.SS "Clr_Abort "
+The CLR_ABORT sequence clears previously set ABORT strings. ABORT strings are
+kept in an array of a pre-determined size; CLR_ABORT reclaims the space for
+cleared entries, enabling new strings to use that space.
+.SS "Say "
+The SAY string enables the script to send strings to a user at a terminal via
+standard error. If \fBchat\fR is being run by \fBpppd\fR and \fBpppd\fR is
+running as a daemon (detached from its controlling terminal), standard error is
+normally redirected to the \fB/etc/ppp/connect-errors\fR file.
+.sp
+.LP
+SAY strings must be enclosed in single or double quotes. If carriage return and
+line feed are required for the output, you must explicitly add them to your
+string.
+.sp
+.LP
+The SAY string can provide progress messages to users even with "ECHO OFF." For
+example, add a line similar to the following to the script:
+.sp
+.in +2
+.nf
+ABORT BUSY
+ECHO OFF
+SAY "Dialing your ISP...\en"
+\&'' ATDT5551212
+TIMEOUT 120
+SAY "Waiting up to 2 minutes for connection ..."
+CONNECT ''
+SAY "Connected, now logging in ...\en"
+ogin: account
+ssword: pass
+$ \ec
+SAY "Logged in OK ... \en"
+.fi
+.in -2
+
+.sp
+.LP
+This sequence hides script detail while presenting the SAY string to the user.
+In this case, you will see:
+.sp
+.in +2
+.nf
+Dialing your ISP...
+Waiting up to 2 minutes for connection...Connected, now logging in...
+Logged in OK ...
+.fi
+.in -2
+
+.SS "Report"
+REPORT is similar to the ABORT string. With REPORT, however, strings and all
+characters to the next control character (such as a carriage return), are
+written to the report file.
+.sp
+.LP
+REPORT strings can be used to isolate a modem's transmission rate from its
+CONNECT string and return the value to the \fBchat\fR user. Analysis of the
+REPORT string logic occurs in conjunction with other string processing, such as
+looking for the expect string. It's possible to use the same string for a
+REPORT and ABORT sequence, but probably not useful.
+.sp
+.LP
+Report strings may be specified in the script using the REPORT sequence. For
+example:
+.sp
+.in +2
+.nf
+REPORT CONNECT
+ABORT BUSY
+ATDT5551212 CONNECT
+ogin: account
+.fi
+.in -2
+
+.sp
+.LP
+The above sequence expects nothing, then sends the string ATDT5551212 to dial
+the telephone. The expected string is CONNECT. If CONNECT is received, the
+remainder of the script is executed. In addition, the program writes the string
+CONNECT to the report file (specified by \fB-r\fR) in addition to any
+characters that follow.
+.SS "Clr_Report"
+CLR_REPORT clears previously set REPORT strings. REPORT strings are kept in an
+array of a pre-determined size; CLR_REPORT reclaims the space for cleared
+entries so that new strings can use that space.
+.SS "Echo"
+ECHO determines if modem output is echoed to \fBstderr\fR. This option may be
+set with the \fB-e\fR option, but can also be controlled by the ECHO keyword.
+The "expect-send" pair ECHO ON enables echoing, and ECHO OFF disables it. With
+ECHO, you can select which parts of the conversation should be visible. In the
+following script:
+.sp
+.in +2
+.nf
+ABORT 'BUSY'
+ABORT 'NO CARRIER'
+"" AT&F
+OK\er\en ATD1234567
+\er\en \ec
+ECHO ON
+CONNECT \ec
+ogin: account
+.fi
+.in -2
+
+.sp
+.LP
+All output resulting from modem configuration and dialing is not visible, but
+output is echoed beginning with the CONNECT (or BUSY) message.
+.SS "Hangup"
+The HANGUP option determines if a modem hangup is considered as an error.
+HANGUP is useful for dialing systems that hang up and call your system back.
+HANGUP can be ON or OFF. When HANGUP is set to OFF and the modem hangs up (for
+example, following the first stage of logging in to a callback system),
+\fBchat\fR continues running the script (for example, waiting for the incoming
+call and second stage login prompt). When the incoming call is connected, use
+the HANGUP ON string to reinstall normal hang up signal behavior. An example of
+a simple script follows:
+.sp
+.in +2
+.nf
+ABORT 'BUSY'
+ "" AT&F
+ OK\er\en ATD1234567
+ \er\en \ec
+ CONNECT \ec
+ 'Callback login:' call_back_ID
+ HANGUP OFF
+ ABORT "Bad Login"
+ 'Callback Password:' Call_back_password
+ TIMEOUT 120
+ CONNECT \ec
+ HANGUP ON
+ ABORT "NO CARRIER"
+ ogin:--BREAK--ogin: real_account
+.fi
+.in -2
+
+.SS "Timeout"
+The initial timeout value is 45 seconds. Use the \fB-t\fR parameter to change
+the initial timeout value.
+.sp
+.LP
+To change the timeout value for the next expect string, the following example
+can be used:
+.sp
+.in +2
+.nf
+\&''"AT&F
+ OK ATDT5551212
+ CONNECT \ec
+ TIMEOUT 10
+ ogin:--ogin: username
+ TIMEOUT 5
+ assword: hello2u2
+.fi
+.in -2
+
+.sp
+.LP
+The example changes the timeout to ten seconds when it expects the login:
+prompt. The timeout is changed to five seconds when it looks for the password
+prompt.
+.sp
+.LP
+Once changed, the timeout value remains in effect until it is changed again.
+.SS " EOT"
+The EOT special reply string instructs the \fBchat\fR program to send an EOT
+character to the remote. This is equivalent to using ^D\ec as the reply string.
+The EOT string normally indicates the end-of-file character sequence. A return
+character is not sent following the EOT. The EOT sequence can embedded into the
+send string using the sequence ^D.
+.SS " BREAK"
+The BREAK special reply string sends a break condition. The break is a special
+transmitter signal. Many UNIX systems handle break by cycling through available
+bit rates, and sending break is often needed when the remote system does not
+support autobaud. BREAK is equivalent to using \eK\ec as the reply string.
+You embed the break sequence into the send string using the \eK sequence.
+.SS "Escape Sequences"
+Expect and reply strings can contain escape sequences. Reply strings accept all
+escape sequences, while expect strings accept most sequences. A list of escape
+sequences is presented below. Sequences that are not accepted by expect strings
+are indicated.
+.sp
+.ne 2
+.na
+\fB\fB\&''\fR \fR
+.ad
+.RS 10n
+Expects or sends a null string. If you send a null string, \fBchat\fR sends
+the return character. If you expect a null string, \fBchat\fR proceeds to the
+reply string without waiting. This sequence can be a pair of apostrophes or
+quote mark characters.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\eb\fR \fR
+.ad
+.RS 10n
+Represents a backspace character.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\ec\fR \fR
+.ad
+.RS 10n
+Suppresses the newline at the end of the reply string. This is the only method
+to send a string without a trailing return character. This sequence must be at
+the end of the send string. For example, the sequence hello\ec will simply send
+the characters h, e, l, l, o. (Not valid in expect.)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\ed\fR \fR
+.ad
+.RS 10n
+Delay for one second. The program uses \fBsleep\fR(1) which delays to a maximum
+of one second. (Not valid in expect.)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\eK\fR \fR
+.ad
+.RS 10n
+Insert a BREAK. (Not valid in expect.)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\en\fR \fR
+.ad
+.RS 10n
+Send a newline or linefeed character.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\eN\fR \fR
+.ad
+.RS 10n
+Send a null character. The same sequence may be represented by \e0. (Not valid
+in expect.)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\ep\fR \fR
+.ad
+.RS 10n
+Pause for 1/10th of a second. (Not valid in expect.)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\eq\fR \fR
+.ad
+.RS 10n
+Suppress writing the string to syslog. The string ?????? is written to the log
+in its place. (Not valid in expect.)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\er\fR \fR
+.ad
+.RS 10n
+Send or expect a carriage return.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\es\fR \fR
+.ad
+.RS 10n
+Represents a space character in the string. Can be used when it is not
+desirable to quote the strings which contains spaces. The sequence 'HI\ TIM'
+and HI\esTIM are the same.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\et\fR \fR
+.ad
+.RS 10n
+Send or expect a tab character.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\eT\fR \fR
+.ad
+.RS 10n
+Send the phone number string as specified with the \fB-T\fR option. (Not valid
+in expect.)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\eU\fR \fR
+.ad
+.RS 10n
+Send the phone number 2 string as specified with the \fB-U\fR option. (Not
+valid in expect.)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\e\e\fR \fR
+.ad
+.RS 10n
+Send or expect a backslash character.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\eddd\fR \fR
+.ad
+.RS 10n
+Collapse the octal digits (ddd) into a single ASCII character and send that
+character. (\e000 is not valid in an expect string.)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB^C\fR \fR
+.ad
+.RS 10n
+Substitute the sequence with the control character represented by C. For
+example, the character DC1 (17) is shown as ^Q. (Some characters are not valid
+in expect.)
+.RE
+
+.SH ENVIRONMENT VARIABLES
+Environment variables are available within \fBchat\fR scripts if the \fB-E\fR
+option is specified on the command line. The metacharacter \fB$\fR introduces
+the name of the environment variable to substitute. If the substitution fails
+because the requested environment variable is not set, nothing is replaced for
+the variable.
+.SH EXIT STATUS
+The \fBchat\fR program terminates with the following completion codes:
+.sp
+.ne 2
+.na
+\fB\fB0\fR \fR
+.ad
+.RS 10n
+Normal program termination. Indicates that the script was executed without
+error to normal conclusion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB1\fR \fR
+.ad
+.RS 10n
+One or more of the parameters are invalid or an expect string was too large for
+the internal buffers. Indicates that the program was not properly executed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB2\fR \fR
+.ad
+.RS 10n
+An error occurred during the execution of the program. This may be due to a
+read or write operation failing or \fBchat\fR receiving a signal such as
+SIGINT.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB3\fR \fR
+.ad
+.RS 10n
+A timeout event occurred when there was an expect string without having a
+"-subsend" string. This indicates that you may not have programmed the script
+correctly for the condition or that an unexpected event occurred and the
+expected string could not be found.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB4\fR \fR
+.ad
+.RS 10n
+The first string marked as an ABORT condition occurred.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB5\fR \fR
+.ad
+.RS 10n
+The second string marked as an ABORT condition occurred.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB6\fR \fR
+.ad
+.RS 10n
+The third string marked as an ABORT condition occurred.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB7\fR \fR
+.ad
+.RS 10n
+The fourth string marked as an ABORT condition occurred.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\&...\fR \fR
+.ad
+.RS 10n
+The other termination codes are also strings marked as an ABORT condition.
+.RE
+
+.sp
+.LP
+To determine which event terminated the script, use the termination code. It is
+possible to decide if the string "BUSY" was received from the modem versus "NO
+DIALTONE." While the first event may be retried, the second probably will not
+succeed during a retry.
+.SH ATTRIBUTES
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.BR sleep (1),
+.BR uucp (1C),
+.BR syslog (3C),
+.BR attributes (7),
+.BR pppd (8),
+.BR uucico (8)
+.sp
+.LP
+Additional information on \fBchat\fR scripts are available with UUCP
+documentation. The \fBchat\fR script format was taken from scripts used by the
+\fBuucico\fR program.
diff --git a/usr/src/man/man8/check-hostname.8 b/usr/src/man/man8/check-hostname.8
new file mode 100644
index 0000000000..ff4757d517
--- /dev/null
+++ b/usr/src/man/man8/check-hostname.8
@@ -0,0 +1,75 @@
+'\" te
+.\" Copyright (c) 2006 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH CHECK-HOSTNAME 8 "Mar 8, 2006"
+.SH NAME
+check-hostname \- check if sendmail can determine the system's fully-qualified
+host name
+.SH SYNOPSIS
+.LP
+.nf
+\fB /usr/sbin/check-hostname\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBcheck-hostname\fR script is a migration aid for \fBsendmail\fR(8). This
+script tries to determine the local host's fully-qualified host name (FQHN) in
+a manner similar to \fBsendmail\fR(8). If \fBcheck-hostname\fR is able to
+determine the \fBFQHN\fR of the local host, it reports success. Otherwise,
+\fBcheck-hostname\fR reports how to reconfigure the system so that the
+\fBFQHN\fR can be properly determined.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/hosts\fR\fR
+.ad
+.RS 22n
+Host name database
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/nsswitch.conf\fR\fR
+.ad
+.RS 22n
+Name service switch configuration file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/resolv.conf\fR\fR
+.ad
+.RS 22n
+Configuration file for name server routines
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR hosts (5),
+.BR attributes (7),
+.BR domainname (8),
+.BR sendmail (8)
diff --git a/usr/src/man/man8/check-permissions.8 b/usr/src/man/man8/check-permissions.8
new file mode 100644
index 0000000000..8f5bfb0150
--- /dev/null
+++ b/usr/src/man/man8/check-permissions.8
@@ -0,0 +1,102 @@
+'\" te
+.\" Copyright (c) 2003 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH CHECK-PERMISSIONS 8 "Nov 10, 2003"
+.SH NAME
+check-permissions \- check permissions on mail rerouting files
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/check-permissions\fR [\fIlogin\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBcheck-permissions\fR script is intended as a migration aid for
+\fBsendmail\fR(8). It checks the \fB/etc/mail/sendmail.cf\fR file for all
+configured alias files, and checks the alias files for \fB:include:\fR files.
+It also checks for certain \fB\&.forward\fR files. For each file that
+\fBcheck-permissions\fR checks, it verifies that none of the parent directories
+are group- or world-writable. If any directories are overly permissive, it is
+reported. Otherwise it reports that no unsafe directories were found.
+.sp
+.LP
+As to which \fB\&.forward\fR files are checked, it depends on the arguments
+included on the command line. If no argument is given, the current user's home
+directory is checked for the presence of a \fB\&.forward\fR file. If any
+arguments are given, they are assumed to be valid logins, and the home
+directory of each one is checked.
+.sp
+.LP
+If the special argument \fBALL\fR is given, the \fBpasswd\fR entry in the
+\fB/etc/nsswitch.conf\fR file is checked, and all password entries that can be
+obtained through the switch file are checked. In large domains, this can be
+time-consuming.
+.SH OPERANDS
+.sp
+.LP
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fB\fIlogin\fR\fR
+.ad
+.RS 9n
+Where \fIlogin\fR is a valid user name, checks the home directory for
+\fIlogin\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBALL\fR\fR
+.ad
+.RS 9n
+Checks the home directory of \fBall\fR users.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/mail/sendmail.cf\fR\fR
+.ad
+.RS 25n
+Defines environment for \fBsendmail\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/mail/aliases\fR\fR
+.ad
+.RS 25n
+Ascii mail aliases file
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR aliases (5),
+.BR attributes (7),
+.BR getent (8),
+.BR sendmail (8)
diff --git a/usr/src/man/man8/chroot.8 b/usr/src/man/man8/chroot.8
new file mode 100644
index 0000000000..2e5c21b78b
--- /dev/null
+++ b/usr/src/man/man8/chroot.8
@@ -0,0 +1,133 @@
+'\" te
+.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 1989 AT&T
+.\"
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.\"
+.\" Portions Copyright 2021 OmniOS Community Edition (OmniOSce) Association.
+.\"
+.Dd March 18, 2021
+.Dt CHROOT 8
+.Os
+.Sh NAME
+.Nm chroot
+.Nd change root directory for a command
+.Sh SYNOPSIS
+.Nm
+.Ar newroot
+.Ar command
+.Sh DESCRIPTION
+The
+.Nm
+utility causes
+.Ar command
+to be executed relative to
+.Ar newroot .
+The meaning of any initial slash
+.Pq /
+in the path names is changed to
+.Ar newroot
+for
+.Ar command
+and any of its child processes.
+Upon execution, the initial working directory is
+.Ar newroot .
+.Pp
+Notice that redirecting the output of
+.Ar command
+to a file, such as in:
+.Pp
+.D1 Nm chroot Ar newroot Ar command Sy > Pa xyz
+.Pp
+will create the file
+.Pa xyz
+relative to the original root of
+.Ar command ,
+not the new one.
+.Pp
+The new root path name is always relative to the current root.
+Even if a
+.Nm
+is currently in effect, the
+.Ar newroot
+argument is relative to the current root of the running process.
+.Pp
+This command can be run only by the super-user.
+.Sh EXIT STATUS
+The exit status of
+.Nm
+is the exit status of
+.Ar command .
+.Sh OPERANDS
+The following operands are supported:
+.Bl -tag -width Ar
+.It Ar newroot
+The new root directory.
+.It Ar command
+The command to be executed relative to
+.Ar newroot .
+.El
+.Sh EXAMPLES
+.Sy Example 1
+Using the
+.Nm
+Utility
+.Pp
+The
+.Nm
+utility provides an easy way to extract
+.Sy tar
+files
+.Pq see Xr tar 1
+written with absolute filenames to a different location.
+It is necessary to copy the shared libraries used by
+.Sy tar
+.Pq see Xr ldd 1
+to the
+.Ar newroot
+filesystem.
+.Bd -literal -offset indent
+example# mkdir -p /tmp/lib /tmp/usr/lib
+example# cd /lib && cp ld.so.1 \e
+ libavl.so.1 libc.so.1 libcmdutils.so.1 libcustr.so.1 \e
+ libm.so.2 libmd.so.1 libmp.so.2 libnsl.so.1 \e
+ libnvpair.so.1 libsec.so.1 libsecdb.so.1 libtsol.so.2 \e
+ libuutil.so.1 /tmp/lib/
+example# cp /usr/lib/libidmap.so.1 /tmp/usr/lib/
+example# cp /usr/bin/tar /tmp
+example# dd if=/dev/rmt/0 | chroot /tmp tar xvf -
+.Ed
+.Sh SEE ALSO
+.Xr cd 1 ,
+.Xr ldd 1 ,
+.Xr tar 1 ,
+.Xr chroot 2 ,
+.Xr ttyname 3C ,
+.Xr attributes 7
+.Sh NOTES
+Exercise extreme caution when referencing device files in the new root file
+system.
+.Pp
+References by routines such as
+.Xr ttyname 3C
+to
+.Dv stdin ,
+.Dv stdout ,
+and
+.Dv stderr
+will find that the device associated with the file descriptor is unknown after
+.Nm
+is run.
diff --git a/usr/src/man/man8/clear_locks.8 b/usr/src/man/man8/clear_locks.8
new file mode 100644
index 0000000000..833754605c
--- /dev/null
+++ b/usr/src/man/man8/clear_locks.8
@@ -0,0 +1,95 @@
+'\" te
+.\" Copyright (c) 1996, Sun Microsystems, Inc.
+.\" All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH CLEAR_LOCKS 8 "Oct 6, 2004"
+.SH NAME
+clear_locks \- clear locks held on behalf of an NFS client
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/clear_locks\fR [\fB-s\fR] \fIhostname\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBclear_locks\fR command removes all file, record, and share locks created
+by the \fIhostname\fR and held on the current host, regardless of which process
+created or owns the locks.
+.sp
+.LP
+This command can be run only by the super-user.
+.sp
+.LP
+This command should only be used to repair the rare case of a client crashing
+and failing to clear held locks. Clearing locks held by an active client may
+cause applications to fail in an unexpected manner.
+.SH OPTIONS
+.sp
+.ne 2
+.na
+\fB\fB-s\fR\fR
+.ad
+.RS 6n
+Remove all locks created by the current machine and held by the server
+\fIhostname\fR.
+.RE
+
+.SH OPERANDS
+.sp
+.LP
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fB\fIhostname\fR\fR
+.ad
+.RS 12n
+name of host server
+.RE
+
+.SH EXIT STATUS
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 5n
+Successful operation.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB1\fR\fR
+.ad
+.RS 5n
+If not root.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB2\fR\fR
+.ad
+.RS 5n
+Usage error.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB3\fR\fR
+.ad
+.RS 5n
+If unable to contact server (\fBRPC\fR).
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR fcntl (2),
+.BR attributes (7)
diff --git a/usr/src/man/man8/clinfo.8 b/usr/src/man/man8/clinfo.8
new file mode 100644
index 0000000000..09b74385e8
--- /dev/null
+++ b/usr/src/man/man8/clinfo.8
@@ -0,0 +1,83 @@
+'\" te
+.\" Copyright (c) 2002, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH CLINFO 8 "Mar 12, 2002"
+.SH NAME
+clinfo \- display cluster information
+.SH SYNOPSIS
+.LP
+.nf
+\fBclinfo\fR [\fB-nh\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBclinfo\fR command displays cluster configuration information about the
+node from which the command is executed.
+.sp
+.LP
+Without arguments, \fBclinfo\fR returns an exit status of \fB0\fR if the node
+is configured and booted as part of a cluster. Otherwise, \fBclinfo\fR returns
+an exit status of \fB1\fR.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-h\fR\fR
+.ad
+.RS 6n
+Displays the highest node number allowed to be configured. This is different
+from the maximum number of nodes supported in a given cluster. The current
+highest configured node number can change immediately after the command returns
+since new nodes can be dynamically added to a running cluster.
+.sp
+For example, \fBclinfo\fR \fB-h\fR might return \fB64\fR, meaning that the
+highest number you can use to identify a node is \fB64\fR. See the \fISun
+Cluster 3.0 System Administration Guide\fR for a description of utilities you
+can use to determine the number of nodes in a cluster.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR\fR
+.ad
+.RS 6n
+Prints the number of the node from which \fBclinfo\fR is executed.
+.RE
+
+.SH EXIT STATUS
+.sp
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 5n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB1\fR\fR
+.ad
+.RS 5n
+An error occurred.
+.sp
+This is usually because the node is not configured or booted as part of a
+cluster.
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7)
diff --git a/usr/src/man/man8/clri.8 b/usr/src/man/man8/clri.8
new file mode 100644
index 0000000000..0d68789457
--- /dev/null
+++ b/usr/src/man/man8/clri.8
@@ -0,0 +1,102 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 1996, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH CLRI 8 "Sep 16, 1996"
+.SH NAME
+clri, dcopy \- clear inode
+.SH SYNOPSIS
+.LP
+.nf
+\fBclri\fR [\fB-F\fR \fIFSType\fR] [\fB-V\fR] \fIspecial\fR \fIi-number\fR
+.fi
+
+.LP
+.nf
+\fBdcopy\fR [\fB-F\fR \fIFSType\fR] [\fB-V\fR] \fIspecial\fR \fIi-number\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBclri\fR writes zeros on the inodes with the decimal \fIi-number\fR on the
+file system stored on \fIspecial\fR. After \fBclri\fR, any blocks in the
+affected file show up as missing in an \fBfsck\fR(8) of \fIspecial\fR.
+.sp
+.LP
+Read and write permission is required on the specified file system device. The
+inode becomes allocatable.
+.sp
+.LP
+The primary purpose of this routine is to remove a file that for some reason
+appears in no directory. If it is used to zap an inode that does appear in a
+directory, care should be taken to track down the entry and remove it.
+Otherwise, when the inode is reallocated to some new file, the old entry will
+still point to that file. At that point, removing the old entry will destroy
+the new file. The new entry will again point to an unallocated inode, so the
+whole cycle is likely to be repeated again and again.
+.sp
+.LP
+\fBdcopy\fR is a symbolic link to \fBclri\fR.
+.SH OPTIONS
+.sp
+.ne 2
+.na
+\fB\fB-F\fR\fI FSType\fR\fR
+.ad
+.RS 13n
+Specify the \fIFSType\fR on which to operate. The \fIFSType\fR should either
+be specified here or be determinable from \fB/etc/vfstab\fR by matching
+\fIspecial\fR with an entry in the table, or by consulting
+\fB/etc/default/fs\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-V\fR\fR
+.ad
+.RS 13n
+Echo the complete command line, but do not execute the command. The command
+line is generated by using the options and arguments provided by the user and
+adding to them information derived from \fB/etc/vfstab\fR. This option should
+be used to verify and validate the command line.
+.RE
+
+.SH USAGE
+.sp
+.LP
+See \fBlargefile\fR(7) for the description of the behavior of \fBclri\fR and
+\fBdcopy\fR when encountering files greater than or equal to 2 Gbyte ( 2^31
+bytes).
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/default/fs\fR\fR
+.ad
+.RS 19n
+Default local file system type
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/vfstab\fR\fR
+.ad
+.RS 19n
+List of default parameters for each file system
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR vfstab (5),
+.BR attributes (7),
+.BR largefile (7),
+.BR fsck (8)
+.SH NOTES
+.sp
+.LP
+This command might not be supported for all \fIFSTypes\fR.
diff --git a/usr/src/man/man8/connstat.8 b/usr/src/man/man8/connstat.8
new file mode 100644
index 0000000000..cffc654e02
--- /dev/null
+++ b/usr/src/man/man8/connstat.8
@@ -0,0 +1,399 @@
+.\"
+.\" CDDL HEADER START
+.\"
+.\" This file and its contents are supplied under the terms of the
+.\" Common Development and Distribution License ("CDDL"), version 1.0.
+.\" You may only use this file in accordance with the terms of version
+.\" 1.0 of the CDDL.
+.\"
+.\" A full copy of the text of the CDDL should have accompanied this
+.\" source. A copy of the CDDL is also available via the Internet at
+.\" http://www.illumos.org/license/CDDL.
+.\"
+.\" CDDL HEADER END
+.\"
+.\"
+.\" Copyright (c) 2016 by Delphix. All rights reserved.
+.\" Copyright 2019 Joyent, Inc.
+.\"
+.Dd August 15, 2019
+.Dt CONNSTAT 8
+.Os
+.Sh NAME
+.Nm connstat
+.Nd report TCP connection statistics
+.Sh SYNOPSIS
+.Nm
+.Op Fl eLP
+.Op Fl 4 Ns | Ns Fl 6
+.Op Fl T Sy d Ns | Ns Sy u
+.Op Fl F Ar filter
+.Op Fl i Ar interval
+.Op Fl c Ar count
+.Op Fl o Ar field Ns Oo , Ns Ar field Oc Ns ...
+.Sh DESCRIPTION
+The
+.Nm
+command reports TCP connection statistics in tabular form.
+Each row of the table represents the activity of one connection.
+The
+.Nm
+command adds virtually no overhead to run as it is aggregating statistics that
+are always collected in the kernel.
+.Pp
+With no arguments,
+.Nm
+prints a single report containing all TCP connections, and includes a basic
+set of fields representing IP address and port information, as well as connection
+state.
+The
+.Fl o
+flag can be used to specify which fields to display, and other arguments to
+filter the set of connections included in the output.
+.Sh OPTIONS
+The arguments are as follows:
+.Bl -tag -width ""
+.It Fl 4 , Fl -ipv4
+Only displays IPv4 connections.
+.It Fl 6 , Fl -ipv6
+Only displays IPv6 connections
+.It Fl c Ar count , Fl -count Ns = Ns Ar count
+Print a specified number of reports before exiting.
+This is used in conjunction with
+.Fl i .
+.It Fl e , Fl -established
+Only display connections that are in state ESTABLISHED.
+This is equivalent to including
+.Sy state=ESTABLISHED
+in the filter argument to the
+.Fl F
+option.
+.It Fl F Ar filter , Fl -filter Ns = Ns Ar filter
+Only display connections that match the filter argument provided.
+The format of the filter is:
+.Pp
+.Ar field Ns = Ns Ar value Ns Oo , Ns Ar field Ns = Ns Ar value Oc Ns ...
+.Pp
+Fields that can currently be filtered are
+.Ar laddr , Ar lport , Ar raddr , Ar rport , and Ar state .
+See the
+.Sx Fields
+section for a description of these fields.
+The filter matches a connection if all of the filter elements match, and a
+field must only appears once in the filter.
+.It Fl i Ar interval , Fl -interval Ns = Ns Ar interval
+Specify an output interval in seconds.
+For each interval, a report containing all connections appropriate given other
+command-line options is printed.
+.It Fl L , Fl -no-loopback
+Exclude connections to the loopback address.
+.It Fl o Ar fields , Fl -output Ns = Ns Ar fields
+Restrict the output to the specified comma-delimited list of field names.
+See the
+.Sx Fields
+section for information about possible fields.
+.It Fl P , Fl -parsable
+Display using a stable, machine-parsable output format.
+The
+.Fl o
+flag must also be given to specify which fields to output and their order.
+Each line of output will consist of comma-delimited (,) fields,
+and no header will be emittted.
+When also using the
+.Fl T
+option, lines indicating the current time will begin with
+.Dq "= " .
+See
+.Sx Example 4
+for an example of how to process parsable output.
+.It Fl T Sy d Ns | Ns Sy u , Fl -timestamp Ns = Ns Sy d Ns | Ns Sy u
+Print a timestamp before each block of output.
+.Pp
+Specify
+.Sy u
+for a printed representation of the internal representation of time (see
+.Xr time 2 Ns ).
+Specify
+.Sy d
+for standard date format (see
+.Xr date 1 Ns ).
+.El
+.Ss Fields
+The following fields are supported.
+Field names are case insensitive.
+Unless otherwise indicated, the values of fields that represent a count (e.g.
+bytes or segments) are cumulative since the connection was established.
+Some of these fields refer to data segments, which are segments that contain
+non-zero amount of data.
+All sizes are in bytes.
+.Bl -tag -width "inunorderbytes"
+.It Sy cwnd
+The size of the local TCP congestion window at this instant.
+.It Sy inbytes
+The number of data bytes received.
+This does not include duplicate bytes received.
+.It Sy insegs
+The number of data segments received.
+This does not include duplicate segments received.
+.It Sy inunorderbytes
+The number of data bytes that were received out of order.
+.It Sy inunordersegs
+The number of data segments that were received out of order.
+.It Sy laddr
+The local IP address.
+.It Sy lport
+The local TCP port.
+.It Sy mss
+The maximum TCP segment size for this connection.
+.It Sy outbytes
+The number of data bytes sent.
+This does not include retransmitted bytes counted by
+.Sy retransbytes .
+.It Sy outsegs
+The number of data segments sent.
+This does not include segments containing retransmitted bytes counted by
+.Sy retranssegs .
+.It Sy raddr
+The remote IP address.
+.It Sy retransbytes
+The number of data bytes retransmitted.
+.It Sy retranssegs
+The number of data segments sent that contained retransmitted bytes.
+.It Sy rport
+The remote TCP port.
+.It Sy rto
+The current retransmission timeout in milliseconds.
+.It Sy rtt
+The current smoothed round-trip time to the peer in microseconds.
+The smoothed RTT average algorithm used is as described in RFC 6298.
+.It Sy rttvar
+The current smoothed variation of the round-trip time to the peer in
+microseconds.
+.It Sy rttc
+The number of times that a round-trip sample was added to
+.Sy rtts .
+See
+.Sy rtts
+for a description of how these two fields can be used together to calculate the
+average round-trip over a given period.
+.It Sy rtts
+The sum of all round-trip samples taken over the lifetime of the connection in
+microseconds.
+Each time TCP updates the value of
+.Sy rtt
+with a new sample, that sample's value is added to
+.Sy rtts .
+To calculate the average round-trip over a given period (e.g. between T1 and T2),
+take samples of
+.Sy rtts
+and
+.Sy rttc
+at T1 and T2, and calculate
+.br
+((
+.Sy rtts Ns
+_T2 -
+.Sy rtts Ns
+_T1 ) / (
+.Sy rttc Ns
+_T2 -
+.Sy rttc Ns
+_T1 )).
+.br
+See
+.Sx Example 4
+for an example of how this can be done programmatically from a shell script.
+.It Sy rwnd
+The size of the local TCP receive window at this instant.
+.It Sy state
+The TCP connection state.
+Possible values are:
+.Bl -tag -width "SYN_RECEIVED"
+.It Sy BOUND
+Bound, ready to connect or listen.
+.It Sy CLOSED
+Closed.
+The local endpoint (e.g. socket) is not being used.
+.It Sy CLOSING
+Closed, but still waiting for a termination acknowledgment from the peer.
+.It Sy CLOSE_WAIT
+The peer has shutdown; waiting for the local endpoint to close.
+.It Sy ESTABLISHED
+Connection has been established and data can be transferred.
+.It Sy FIN_WAIT_1
+Local endpoint is closed, but waiting for termination acknowledgment from the
+peer.
+.It Sy FIN_WAIT_2
+Local endpoint is closed, but waiting for a termination request from the peer.
+.It Sy IDLE
+The local endpoint (e.g. socket) has been opened, but is not bound.
+.It Sy LAST_ACK
+The remote endpoint has terminated, and the local endpoint has sent a termination
+request.
+The acknowledgment for this request has not been received.
+.It Sy LISTEN
+Listening for incoming connections.
+.It Sy SYN_RECEIVED
+Initial connection request has been received and acknowledged, and a connection
+request has been sent but not yet acknowledged.
+.It Sy SYN_SENT
+A connection establishment request has been sent but not yet acknowledged.
+.It Sy TIME_WAIT
+Waiting for time to pass after having sent an acknowledgment for the peer's
+connection termination request.
+.El
+.Pp
+See RFC 793 for a more complete understanding of the TCP protocol and TCP
+connection states.
+.It Sy suna
+The number of unacknowledged bytes outstanding at this instant.
+.It Sy swnd
+The size of the local TCP send window (the peer's receive window) at this
+instant.
+.It Sy unsent
+The number of unsent bytes in the local TCP transmit queue at this instant.
+.El
+.Sh EXIT STATUS
+The
+.Nm
+utility exits 0 on success, or 1 if an error occurs.
+.Sh EXAMPLES
+.Bl -tag -width ""
+.It Sy Example 1 List established connections.
+By default, connstat lists basic connection details.
+Using the
+.Fl e
+option allows the user to get a quick glance of established connections.
+.Bd -literal
+$ connstat -e
+ LADDR LPORT RADDR RPORT STATE
+ 10.43.37.172 51275 172.16.105.4 389 ESTABLISHED
+ 10.43.37.172 22 172.16.98.16 62270 ESTABLISHED
+ 10.43.37.172 1020 172.16.100.162 2049 ESTABLISHED
+ 10.43.37.172 1019 10.43.11.64 2049 ESTABLISHED
+ 10.43.37.172 22 172.16.98.16 61520 ESTABLISHED
+ 10.43.37.172 80 10.43.16.132 59467 ESTABLISHED
+.Ed
+.It Sy Example 2 Show one connection's I/O stats every second
+The
+.Fl F
+option is used to filter a specific connection,
+.Fl o
+is used to output specific fields, and
+.Fl i
+to provide the output interval in seconds.
+.Bd -literal
+$ connstat -F lport=22,rport=49675,raddr=172.16.168.30 \e
+ -o inbytes,outbytes -i 1
+ INBYTES OUTBYTES
+ 9589 18101
+ INBYTES OUTBYTES
+ 9589 18341
+ INBYTES OUTBYTES
+ 9589 18501
+ INBYTES OUTBYTES
+ 9589 18661
+ ...
+.Ed
+.It Sy Example 3 Understanding the bottleneck for a given connection
+Understanding the transmit bottleneck for a connection requires knowing the
+size of the congestion window, whether the window is full, and the round-trip
+time to the peer.
+The congestion window is full when
+.Sy suna
+is equal to
+.Sy cwnd .
+If the window is full, then the throughput is limited by the size of the window
+and the round-trip time.
+In that case, knowing these two values is critical.
+Either the window is small because of retransmissions, or the round-trip
+latency is high, or both.
+In the example below, the window is small due to high congestion or an
+unreliable network.
+.Bd -literal
+$ connstat -F lport=41934,rport=50001 \e
+ -o outbytes,suna,cwnd,unsent,retransbytes,rtt -T d -i 1
+July 7, 2016 11:04:40 AM EDT
+ OUTBYTES SUNA CWND UNSENT RETRANSBYTES RTT
+ 1647048093 47784 47784 3017352 3701844 495
+July 7, 2016 11:04:41 AM EDT
+ OUTBYTES SUNA CWND UNSENT RETRANSBYTES RTT
+ 1660720109 41992 41992 1535032 3765556 673
+July 7, 2016 11:04:42 AM EDT
+ OUTBYTES SUNA CWND UNSENT RETRANSBYTES RTT
+ 1661875613 26064 26064 4311688 3829268 571
+July 7, 2016 11:04:43 AM EDT
+ OUTBYTES SUNA CWND UNSENT RETRANSBYTES RTT
+ 1681478637 41992 41992 437304 3932076 1471
+July 7, 2016 11:04:44 AM EDT
+ OUTBYTES SUNA CWND UNSENT RETRANSBYTES RTT
+ 1692028765 44888 44888 1945800 4014612 921
+\&...
+.Ed
+.It Sy Example 4 Calculating average RTT over intervals
+As described in the
+.Sx Fields
+section, the
+.Sy rtts
+and
+.Sy rttc
+fields can be used to calculate average RTT over a period of time.
+The following example combines machine parsable output with these fields to do
+this programmatically.
+The script:
+.Bd -literal
+#!/bin/bash
+
+i=0
+connstat -P -F lport=41934,rport=50001 -o rttc,rtts -i 1 | \e
+ while IFS=, read rttc[$i] rtts[$i]; do
+ if [[ $i != 0 ]]; then
+ let rtt="(${rtts[$i]} - ${rtts[$i - 1]}) / \e
+ (${rttc[$i]} - ${rttc[$i - 1]})"
+ print "avg rtt = ${rtt}us"
+ fi
+ ((i++))
+done
+.Ed
+.Pp
+The output:
+.Bd -literal
+\&...
+avg rtt = 992us
+avg rtt = 829us
+avg rtt = 712us
+avg rtt = 869us
+\&...
+.Ed
+.It Sy Example 5 Show HTTP server connections in TIME_WAIT state
+Connections accumulating in TIME_WAIT state can sometimes be an issue, as these
+connections linger and take up port number space while their time wait timer
+is ticking.
+.Bd -literal
+$ connstat -F state=time_wait,lport=80
+ LADDR LPORT RADDR RPORT STATE
+ 10.43.37.172 80 172.16.168.30 56067 TIME_WAIT
+ 10.43.37.172 80 172.16.168.30 56068 TIME_WAIT
+ 10.43.37.172 80 172.16.168.30 56070 TIME_WAIT
+.Ed
+.El
+.Sh INTERFACE STABILITY
+The command line options for this command are stable, but the output format
+when not using the
+.Fl P
+option and diagnostic messages are not.
+.Sh SEE ALSO
+.Xr netstat 8
+.Rs
+.%A J. Postel
+.%B Transmission Control Protocol, STD 7, RFC 793
+.%D September 1981
+.Re
+.Rs
+.%A V. Paxson
+.%A M. Allman
+.%A J. Chu
+.%A M. Sargent
+.%B Computing TCP's Retransmission Timer, RFC 6298
+.%D June 2011
+.Re
diff --git a/usr/src/man/man8/consadm.8 b/usr/src/man/man8/consadm.8
new file mode 100644
index 0000000000..5f749d462f
--- /dev/null
+++ b/usr/src/man/man8/consadm.8
@@ -0,0 +1,232 @@
+'\" te
+.\" Copyright (c) 2004 Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH CONSADM 8 "Oct 27, 2004"
+.SH NAME
+consadm \- select or display devices used as auxiliary console devices
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/consadm\fR
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/consadm\fR [\fB-a\fR \fIdevice\fR.\|.\|.] [\fB-p\fR]
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/consadm\fR [\fB-d\fR \fIdevice\fR.\|.\|.] [\fB-p\fR]
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/consadm\fR [\fB-p\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBconsadm\fR selects the hardware \fIdevice\fR or devices to be used as
+auxiliary console devices, or displays the current device. Only superusers are
+allowed to make or display auxiliary console device selections.
+.sp
+.LP
+Auxiliary console devices receive copies of \fBconsole\fR messages, and can be
+used as the console during \fBsingle user\fR mode. In particular, they receive
+kernel messages and messages directed to \fB/dev/sysmsg\fR. On Solaris x86
+based systems they can also be used for interaction with the bootstrap.
+.sp
+.LP
+By default, selecting a display device to be used as an auxiliary console
+device selects that device for the duration the system remains up. If the
+administrator needs the selection to persist across reboots the \fB-p\fR option
+can be specified.
+.sp
+.LP
+\fBconsadm\fR runs a daemon in the background, monitoring auxiliary console
+devices. Any devices that are disconnected (hang up, lose carrier) are removed
+from the auxiliary console device list, though not from the persistent list.
+While auxiliary console devices may have been removed from the device list
+receiving copies of \fBconsole\fR messages, those messages will always continue
+to be displayed by the default console device.
+.sp
+.LP
+The daemon will not run if it finds there are not any auxiliary devices
+configured to monitor. Likewise, after the last auxiliary console is removed,
+the daemon will shut itself down. Therefore the daemon persists for only as
+long as auxiliary console devices remain active.
+.sp
+.LP
+See \fBeeprom\fR(8) for instructions on assigning an auxiliary console device
+as the system console.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-a\fR \fIdevice\fR\fR
+.ad
+.RS 13n
+Adds \fIdevice\fR to the list of auxiliary console devices. Specify
+\fIdevice\fR as the path name to the device or devices to be added to the
+auxiliary console device list.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-d\fR \fIdevice\fR\fR
+.ad
+.RS 13n
+Removes \fIdevice\fR from the list of auxiliary console devices. Specify
+\fIdevice\fR as the path name to the device or devices to be removed from the
+auxiliary console device list.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR\fR
+.ad
+.RS 13n
+Prints the list of auxiliary consoles that will be auxiliary across reboots.
+.sp
+When invoked with the \fB-a\fR or \fB-d\fR options , tells the application to
+make the change persist across reboot.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRAdding to the list of devices that will receive console
+messages
+.sp
+.LP
+The following command adds \fB/dev/term/a\fR to the list of devices that will
+receive console messages.
+
+.sp
+.in +2
+.nf
+example# \fBconsadm -a /dev/term/a\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRRemoving from the list of devices that will receive console
+messages
+.sp
+.LP
+The following command removes \fB/dev/term/a\fR from the list of devices that
+will receive console messages. This includes removal from the persistent list.
+
+.sp
+.in +2
+.nf
+example# \fBconsadm -d -p /dev/term/a\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRPrinting the list of devices selected as auxiliary console
+devices
+.sp
+.LP
+The following command prints the name or names of the device or devices
+currently selected as auxiliary console devices.
+
+.sp
+.in +2
+.nf
+example# \fBconsadm\fR
+.fi
+.in -2
+.sp
+
+.SH ENVIRONMENT VARIABLES
+.sp
+.LP
+See \fBenviron\fR(7) for descriptions of the following environment variables
+that affect the execution of \fBconsadm\fR: \fBLC_CTYPE\fR, \fBLC_MESSAGES\fR,
+and \fBNLSPATH\fR.
+.SH EXIT STATUS
+.sp
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 6n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB>\fB0\fR\fR
+.ad
+.RS 6n
+An error occurred.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Stability Level Evolving
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR svcs (1),
+.BR console (4D),
+.BR sysmsg (4D),
+.BR attributes (7),
+.BR environ (7),
+.BR smf (7),
+.BR eeprom (8),
+.BR kadb (8),
+.BR svcadm (8),
+.BR syslogd (8)
+.SH NOTES
+.sp
+.LP
+Auxiliary console devices are not usable for \fBkadb\fR or firmware \fBI/O\fR,
+do not receive panic messages, and do not receive output directed to
+\fB/dev/console\fR.
+.sp
+.LP
+The \fBconsadm\fR service is managed by the service management facility,
+\fBsmf\fR(7), under the service identifier:
+.sp
+.in +2
+.nf
+svc:/system/consadm
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Administrative actions on this service, such as enabling, disabling, or
+requesting restart, can be performed using \fBsvcadm\fR(8). The service's
+status can be queried using the \fBsvcs\fR(1) command.
diff --git a/usr/src/man/man8/conv_lp.8 b/usr/src/man/man8/conv_lp.8
new file mode 100644
index 0000000000..dbf260b2a8
--- /dev/null
+++ b/usr/src/man/man8/conv_lp.8
@@ -0,0 +1,116 @@
+'\" te
+.\" Copyright (c) 1996 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH CONV_LP 8 "Sep 9, 1996"
+.SH NAME
+conv_lp \- convert LP configuration
+.SH SYNOPSIS
+.LP
+.nf
+\fBconv_lp\fR [\fB-d\fR \fIdir\fR] [\fB-f\fR \fIfile\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBconv_lp\fR reads \fBLP\fR printer configuration information from a
+directory and converts it to an output file for use with print client software.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-d\fR\fI dir\fR\fR
+.ad
+.RS 11n
+The root (`\fB / \fR') directory from which \fBLP\fR configuration information
+is read. The default is root (`\fB / \fR').
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR\fI file\fR\fR
+.ad
+.RS 11n
+The output file to which \fBconv_lp\fR writes the converted \fBLP\fR
+configuration information. The default is \fB/etc/printers.conf\fR.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRConverting \fBLP\fR Configuration Information from the Default
+Directory and File
+.sp
+.LP
+The following example converts \fBLP\fR configuration information from
+directory root (\fB/\fR) to file \fB/etc/printers.conf\fR.
+
+.sp
+.in +2
+.nf
+% \fBconv_lp\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRConverting \fBLP\fR Configuration Information From a Specified
+Directory and File
+.sp
+.LP
+The following example converts \fBLP\fR configuration information from
+directory \fB/export/root/client\fR to file
+\fB/export/root/client/etc/printers.conf\fR.
+
+.sp
+.in +2
+.nf
+% \fBconv_lp -d /export/root/client -f\e
+ /export/root/client/etc/printers.conf\fR
+.fi
+.in -2
+.sp
+
+.SH EXIT STATUS
+.sp
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 12n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fBnon-zero\fR
+.ad
+.RS 12n
+An error occurred.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/printers.conf\fR\fR
+.ad
+.RS 22n
+System printer configuration database.
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR printers.conf (5),
+.BR attributes (7),
+.BR lpset (8)
diff --git a/usr/src/man/man8/conv_lpd.8 b/usr/src/man/man8/conv_lpd.8
new file mode 100644
index 0000000000..691c5f8213
--- /dev/null
+++ b/usr/src/man/man8/conv_lpd.8
@@ -0,0 +1,157 @@
+'\" te
+.\" Copyright (c) 1996 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH CONV_LPD 8 "Sep 9, 1996"
+.SH NAME
+conv_lpd \- convert LPD configuration
+.SH SYNOPSIS
+.LP
+.nf
+\fBconv_lpd\fR [\fB-c\fR printers | \fB-c\fR printcap] [\fB-n\fR] \fIfile\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBconv_lpd\fR converts \fBLPD\fR printer configuration information from
+\fIfile\fR to a \fBprinters.conf\fR or a \fBprintcap\fR file (see
+\fBprinters.conf\fR(5)). \fIfile\fR specifies the name of the input file, and
+can be either in \fBprinters.conf\fR or \fBprintcap\fR format. If \fIfile\fR
+is in \fBprinters.conf\fR format, it converts it to a \fBprintcap\fR file. If
+\fIfile\fR is in \fBprintcap\fR format, it converts it to a
+\fBprinters.conf\fR file.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB\fR\fB-c\fR\fB printers \fR|\fB \fR\fB-c\fR\fB printcap\fR\fR
+.ad
+.RS 29n
+Specifies the type of output file produced by the conversion. \fB-c\fR
+\fBprinters\fR converts to a \fBprinters.conf\fR file. \fB-c\fR \fBprintcap\fR
+converts to a \fBprintcap\fR file. \fB-c\fR \fBprinters\fR is the default.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR\fR
+.ad
+.RS 29n
+Preserves the namelist during the conversion.
+.RE
+
+.SH OPERANDS
+.sp
+.LP
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fB\fIfile\fR\fR
+.ad
+.RS 8n
+The file to be converted.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRConverting a \fBprintcap\fR file to a \fBprinters.conf\fR
+file.
+.sp
+.LP
+The following example converts a \fBprintcap\fR file to a \fBprinters.conf\fR
+file.
+
+.sp
+.in +2
+.nf
+\fBexample% conv_lpd /etc/printcap\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRConverting a \fBprintcap\fR file to a \fBprinters.conf\fR file
+and preserving the namelist.
+.sp
+.LP
+The following example converts a \fBprintcap\fR file to a \fBprinters.conf\fR
+file and preserves the namelist.
+
+.sp
+.in +2
+.nf
+\fBexample% conv_lpd -c printers -n /etc/printcap\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRConverting a \fBprinters.conf\fR file to a \fBprintcap\fR
+file and preserving the namelist.
+.sp
+.LP
+The following example converts a \fBprinters.conf\fR file to a \fBprintcap\fR
+file and preserves the namelist.
+
+.sp
+.in +2
+.nf
+\fBexample% conv_lpd -c printcap -n /etc/printers.conf\fR
+.fi
+.in -2
+.sp
+
+.SH EXIT STATUS
+.sp
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 12n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fBnon-zero\fR
+.ad
+.RS 12n
+An error occurred.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/printers.conf\fR\fR
+.ad
+.RS 22n
+System printer configuration database.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/printcap\fR\fR
+.ad
+.RS 22n
+SunOS 4.\fIx\fR printer capability database.
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR printers.conf (5),
+.BR attributes (7),
+.BR lpset (8)
diff --git a/usr/src/man/man8/coreadm.8 b/usr/src/man/man8/coreadm.8
new file mode 100644
index 0000000000..3c21ef1c3c
--- /dev/null
+++ b/usr/src/man/man8/coreadm.8
@@ -0,0 +1,732 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 2008 Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 2021 Oxide Computer Company
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH COREADM 8 "August 3, 2021"
+.SH NAME
+coreadm \- core file administration
+.SH SYNOPSIS
+.nf
+\fBcoreadm\fR [\fB-g\fR \fIpattern\fR] [\fB-G\fR \fIcontent\fR] [\fB-i\fR \fIpattern\fR] [\fB-I\fR \fIcontent\fR]
+ [\fB-d\fR \fIoption\fR]... [\fB-e\fR \fIoption\fR]...
+.fi
+
+.LP
+.nf
+\fBcoreadm\fR [\fB-p\fR \fIpattern\fR] [\fB-P\fR \fIcontent\fR] [\fIpid\fR]...
+.fi
+
+.SH DESCRIPTION
+\fBcoreadm\fR specifies the name and location of core files produced by
+abnormally-terminating processes. See \fBcore\fR(5).
+.sp
+.LP
+Only users and roles that belong to the "Maintenance and Repair" RBAC profile
+can execute the first form of the \fBSYNOPSIS\fR. This form configures
+system-wide core file options, including a global core file name pattern and a
+core file name pattern for the \fBinit\fR(8) process. All settings are saved
+persistently and will be applied at boot.
+.sp
+.LP
+Non-privileged users can execute the second form of the \fBSYNOPSIS\fR. This
+form specifies the file name pattern and core file content that the operating
+system uses to generate a per-process core file.
+.sp
+.LP
+A core file name pattern is a normal file system path name with embedded
+variables, specified with a leading \fB%\fR character. The variables are
+expanded from values that are effective when a core file is generated by the
+operating system. The possible embedded variables are as follows:
+.sp
+.ne 2
+.na
+\fB\fB%d\fR\fR
+.ad
+.sp .6
+.RS 4n
+Executable file directory name, up to a maximum of \fBMAXPATHLEN\fR characters
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB%f\fR\fR
+.ad
+.sp .6
+.RS 4n
+Executable file name, up to a maximum of \fBMAXCOMLEN\fR characters
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB%g\fR\fR
+.ad
+.sp .6
+.RS 4n
+Effective group-\fBID\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB%m\fR\fR
+.ad
+.sp .6
+.RS 4n
+Machine name (\fBuname\fR \fB-m\fR)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB%n\fR\fR
+.ad
+.sp .6
+.RS 4n
+System node name (\fBuname\fR \fB-n\fR)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB%p\fR\fR
+.ad
+.sp .6
+.RS 4n
+Process-\fBID\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB%t\fR\fR
+.ad
+.sp .6
+.RS 4n
+Decimal value of \fBtime\fR(2)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB%u\fR\fR
+.ad
+.sp .6
+.RS 4n
+Effective user-\fBID\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB%z\fR\fR
+.ad
+.sp .6
+.RS 4n
+Name of the zone in which process executed (\fBzonename\fR)
+.RE
+
+.sp
+.ne 2
+.na
+.B %Z
+.ad
+.sp .6
+.RS 4n
+The path to the root of the zone in which process executed
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB%%\fR\fR
+.ad
+.sp .6
+.RS 4n
+Literal \fB%\fR
+.RE
+
+.sp
+.LP
+For example, the core file name pattern \fB/var/cores/core.%f.%p\fR would
+result, for command \fBfoo\fR with process-\fBID\fR \fB1234\fR, in the core
+file name \fB/var/cores/core.foo.1234\fR.
+.sp
+.LP
+A core file content description is specified using a series of tokens to
+identify parts of a process's binary image:
+.sp
+.ne 2
+.na
+\fB\fBanon\fR\fR
+.ad
+.sp .6
+.RS 4n
+Anonymous private mappings, including thread stacks that are not main thread
+stacks
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBctf\fR\fR
+.ad
+.sp .6
+.RS 4n
+CTF type information sections for loaded object files
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdata\fR\fR
+.ad
+.sp .6
+.RS 4n
+Writable private file mappings
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdebug\fR\fR
+.ad
+.sp .6
+.RS 4n
+Debug sections, commonly DWARF. All sections that begin with '.debug_'.
+Note, this does capture non-DWARF related sections that begin with the
+string pattern; however, at this time other debug formats such as STABS
+are not included. Other debug formats would be included here in the
+future.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdism\fR\fR
+.ad
+.sp .6
+.RS 4n
+DISM mappings
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBheap\fR\fR
+.ad
+.sp .6
+.RS 4n
+Process heap
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBism\fR\fR
+.ad
+.sp .6
+.RS 4n
+ISM mappings
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrodata\fR\fR
+.ad
+.sp .6
+.RS 4n
+Read-only private file mappings
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBshanon\fR\fR
+.ad
+.sp .6
+.RS 4n
+Anonymous shared mappings
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBshfile\fR\fR
+.ad
+.sp .6
+.RS 4n
+Shared mappings that are backed by files
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBshm\fR\fR
+.ad
+.sp .6
+.RS 4n
+System V shared memory
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBstack\fR\fR
+.ad
+.sp .6
+.RS 4n
+Process stack
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsymtab\fR\fR
+.ad
+.sp .6
+.RS 4n
+Symbol table sections for loaded object files
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBtext\fR\fR
+.ad
+.sp .6
+.RS 4n
+Readable and executable private file mappings
+.RE
+
+.sp
+.LP
+In addition, you can use the token \fBall\fR to indicate that core files should
+include all of these parts of the process's binary image. You can use the token
+\fBnone\fR to indicate that no mappings are to be included. The \fBdefault\fR
+token indicates inclusion of the system default content
+(\fBstack+heap+shm+ism+dism+text+data+rodata+anon+shanon+ctf+symtab\fR). The
+\fB/proc\fR file system data structures are always present in core files
+regardless of the mapping content.
+.sp
+.LP
+You can use \fB+\fR and \fB-\fR to concatenate tokens. For example, the core
+file content \fBdefault-ism\fR would produce a core file with the default set
+of mappings without any intimate shared memory mappings.
+.sp
+.LP
+The \fBcoreadm\fR command with no arguments reports the current system
+configuration, for example:
+.sp
+.in +2
+.nf
+$ coreadm
+ global core file pattern: /var/cores/core.%f.%p
+ global core file content: all
+ init core file pattern: core
+ init core file content: default
+ global core dumps: enabled
+ per-process core dumps: enabled
+ global setid core dumps: enabled
+per-process setid core dumps: disabled
+ global core dump logging: disabled
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The \fBcoreadm\fR command with only a list of process-\fBID\fRs reports each
+process's per-process core file name pattern, for example:
+.sp
+.in +2
+.nf
+$ coreadm 278 5678
+ 278: core.%f.%p default
+ 5678: /home/george/cores/%f.%p.%t all-ism
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Only the owner of a process or a user with the \fBproc_owner\fR privilege can
+interrogate a process in this manner.
+.sp
+.LP
+When a process is dumping core, up to three core files can be produced: one in
+the per-process location, one in the system-wide global location, and, if the
+process was running in a local (non-global) zone, one in the global location
+for the zone in which that process was running. Each core file is generated
+according to the effective options for the corresponding location.
+.sp
+.LP
+When generated, a global core file is created in mode \fB600\fR and owned by
+the superuser. Nonprivileged users cannot examine such files.
+.sp
+.LP
+Ordinary per-process core files are created in mode \fB600\fR under the
+credentials of the process. The owner of the process can examine such files.
+.sp
+.LP
+A process that is or ever has been \fBsetuid\fR or \fBsetgid\fR since its last
+\fBexec\fR(2) presents security issues that relate to dumping core. Similarly,
+a process that initially had superuser privileges and lost those privileges
+through \fBsetuid\fR(2) also presents security issues that are related to
+dumping core. A process of either type can contain sensitive information in its
+address space to which the current nonprivileged owner of the process should
+not have access. If \fBsetid\fR core files are enabled, they are created mode
+\fB600\fR and owned by the superuser.
+.SH OPTIONS
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-d\fR \fIoption\fR...\fR
+.ad
+.sp .6
+.RS 4n
+Disable the specified core file option. See the \fB-e\fR \fIoption\fR for
+descriptions of possible options.
+.sp
+Multiple \fB-e\fR and \fB-d\fR options can be specified on the command line.
+Only users and roles belonging to the "Maintenance and Repair" RBAC profile can
+use this option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-e\fR \fIoption\fR...\fR
+.ad
+.sp .6
+.RS 4n
+Enable the specified core file option. Specify \fIoption\fR as one of the
+following:
+.sp
+.ne 2
+.na
+\fBglobal\fR
+.ad
+.sp .6
+.RS 4n
+Allow core dumps that use global core pattern.
+.RE
+
+.sp
+.ne 2
+.na
+\fBglobal-setid\fR
+.ad
+.sp .6
+.RS 4n
+Allow set-id core dumps that use global core pattern.
+.RE
+
+.sp
+.ne 2
+.na
+\fBlog\fR
+.ad
+.sp .6
+.RS 4n
+Generate a \fBsyslog\fR(3C) message when generation of a global core file is
+attempted.
+.RE
+
+.sp
+.ne 2
+.na
+\fBprocess\fR
+.ad
+.sp .6
+.RS 4n
+Allow core dumps that use per-process core pattern.
+.RE
+
+.sp
+.ne 2
+.na
+\fBproc-setid\fR
+.ad
+.sp .6
+.RS 4n
+Allow set-id core dumps that use per-process core pattern.
+.sp
+Multiple \fB-e\fR and \fB-d\fR options can be specified on the command line.
+Only users and roles belonging to the "Maintenance and Repair" RBAC profile can
+use this option.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-g\fR \fIpattern\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set the global core file name pattern to \fIpattern\fR. The pattern must start
+with a \fB/\fR and can contain any of the special \fB%\fR variables that are
+described in the \fBDESCRIPTION\fR.
+.sp
+Only users and roles belonging to the "Maintenance and Repair" RBAC profile can
+use this option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-G\fR \fIcontent\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set the global core file content to content. You must specify content by using
+the tokens that are described in the \fBDESCRIPTION\fR.
+.sp
+Only users and roles belonging to the "Maintenance and Repair" RBAC profile can
+use this option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-i\fR \fIpattern\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set the default per-process core file name to \fIpattern\fR. This changes the
+per-process pattern for any process whose per-process pattern is still set to
+the default. Processes that have had their per-process pattern set or are
+descended from a process that had its per-process pattern set (using the
+\fB-p\fR option) are unaffected. This default persists across reboot.
+.sp
+Only users and roles belonging to the "Maintenance and Repair" RBAC profile can
+use this option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-I\fR \fIcontent\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set the default per-process core file content to \fIcontent\fR. This changes
+the per-process content for any process whose per-process content is still set
+to the default. Processes that have had their per-process content set or are
+descended from a process that had its per-process content set (using the
+\fB-P\fR option) are unaffected. This default persists across reboot.
+.sp
+Only users and roles belonging to the "Maintenance and Repair" RBAC profile can
+use this option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR \fIpattern\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set the per-process core file name pattern to \fIpattern\fR for each of the
+specified process-\fBID\fRs. The pattern can contain any of the special \fB%\fR
+variables described in the \fBDESCRIPTION\fR and need not begin with \fB/\fR.
+If the pattern does not begin with \fB/\fR, it is evaluated relative to the
+directory that is current when the process generates a core file.
+.sp
+A nonprivileged user can apply the \fB-p\fR option only to processes that are
+owned by that user. A user with the \fBproc_owner\fR privilege can apply the
+option to any process. The per-process core file name pattern is inherited by
+future child processes of the affected processes. See \fBfork\fR(2).
+.sp
+If no process-\fBID\fRs are specified, the \fB-p\fR option sets the per-process
+core file name pattern to \fIpattern\fR on the parent process (usually the
+shell that ran \fBcoreadm\fR).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-P\fR \fIcontent\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set the per-process core file content to \fIcontent\fR for each of the
+specified process-IDs. The content must be specified by using the tokens that
+are described in the \fBDESCRIPTION\fR.
+.sp
+A nonprivileged user can apply the \fB-p\fR option only to processes that are
+owned by that user. A user with the \fBproc_owner\fR privilege can apply the
+option to any process. The per-process core file name pattern is inherited by
+future child processes of the affected processes. See \fBfork\fR(2).
+.sp
+If no process-\fBID\fRs are specified, the \fB-P\fR option sets the per-process
+file content to \fIcontent\fR on the parent process (usually the shell that ran
+\fBcoreadm\fR).
+.RE
+
+.SH OPERANDS
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fB\fIpid\fR\fR
+.ad
+.sp .6
+.RS 4n
+process-\fBID\fR
+.RE
+
+.SH EXAMPLES
+\fBExample 1 \fRSetting the Core File Name Pattern
+.sp
+.LP
+When executed from a user's \fB$HOME/.profile\fR or \fB$HOME/.login\fR, the
+following command sets the core file name pattern for all processes that are
+run during the login session:
+
+.sp
+.in +2
+.nf
+example$ coreadm -p core.%f.%p
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Note that since the process-\fBID\fR is omitted, the per-process core file name
+pattern will be set in the shell that is currently running and is inherited by
+all child processes.
+
+.LP
+\fBExample 2 \fRDumping a User's Files Into a Subdirectory
+.sp
+.LP
+The following command dumps all of a user's core dumps into the \fBcorefiles\fR
+subdirectory of the home directory, discriminated by the system node name. This
+command is useful for users who use many different machines but have a shared
+home directory.
+
+.sp
+.in +2
+.nf
+example$ coreadm -p $HOME/corefiles/%n.%f.%p 1234
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRCulling the Global Core File Repository
+.sp
+.LP
+The following commands set up the system to produce core files in the global
+repository only if the executables were run from \fB/usr/bin\fR or
+\fB/usr/sbin\fR.
+
+.sp
+.in +2
+.nf
+example# mkdir -p /var/cores/usr/bin
+example# mkdir -p /var/cores/usr/sbin
+example# coreadm -G all -g /var/cores/%d/%f.%p.%n
+.fi
+.in -2
+.sp
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/var/cores\fR\fR
+.ad
+.sp .6
+.RS 4n
+Directory provided for global core file storage.
+.RE
+
+.SH EXIT STATUS
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB0\fR
+.ad
+.sp .6
+.RS 4n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB1\fR
+.ad
+.sp .6
+.RS 4n
+A fatal error occurred while either obtaining or modifying the system core file
+configuration.
+.RE
+
+.sp
+.ne 2
+.na
+\fB2\fR
+.ad
+.sp .6
+.RS 4n
+Invalid command-line options were specified.
+.RE
+
+.SH SEE ALSO
+.BR gcore (1),
+.BR pfexec (1),
+.BR svcs (1),
+.BR exec (2),
+.BR fork (2),
+.BR setuid (2),
+.BR time (2),
+.BR syslog (3C),
+.BR core (5),
+.BR prof_attr (5),
+.BR user_attr (5),
+.BR attributes (7),
+.BR smf (7),
+.BR init (8),
+.BR svcadm (8)
+.SH NOTES
+In a local (non-global) zone, the global settings apply to processes running in
+that zone. In addition, the global zone's apply to processes run in any zone.
+.sp
+.LP
+The term \fBglobal settings\fR refers to settings which are applied to the
+system or zone as a whole, and does not necessarily imply that the settings are
+to take effect in the global zone.
+.sp
+.LP
+The \fBcoreadm\fR service is managed by the service management facility,
+\fBsmf\fR(7), under the service identifier:
+.sp
+.in +2
+.nf
+svc:/system/coreadm:default
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Administrative actions on this service, such as enabling, disabling, or
+requesting restart, can be performed using \fBsvcadm\fR(8). The service's
+status can be queried using the \fBsvcs\fR(1) command.
+.sp
+.LP
+The \fB-g\fR, \fB-G\fR, \fB-i\fR, \fB-I\fR, \fB-e\fR, and \fB-d\fR options can
+be also used by a user, role, or profile that has been granted both the
+\fBsolaris.smf.manage.coreadm\fR and \fBsolaris.smf.value.coreadm\fR
+authorizations.
diff --git a/usr/src/man/man8/cpustat.8 b/usr/src/man/man8/cpustat.8
new file mode 100644
index 0000000000..0cf367ae1a
--- /dev/null
+++ b/usr/src/man/man8/cpustat.8
@@ -0,0 +1,356 @@
+'\" te
+.\" Copyright (c) 2005, Sun Microsystems, Inc.
+.TH CPUSTAT 8 "April 9, 2016"
+.SH NAME
+cpustat \- monitor system behavior using CPU performance counters
+.SH SYNOPSIS
+.LP
+.nf
+\fBcpustat\fR \fB-c\fR \fIeventspec\fR [\fB-c\fR \fIeventspec\fR]... [\fB-p\fR \fIperiod\fR] [\fB-T\fR u | d ]
+ [\fB-sntD\fR] [\fIinterval\fR [\fIcount\fR]]
+.fi
+
+.LP
+.nf
+\fBcpustat\fR \fB-h\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBcpustat\fR utility allows \fBCPU\fR performance counters to be used to
+monitor the overall behavior of the \fBCPU\fRs in the system.
+.sp
+.LP
+If \fIinterval\fR is specified, \fBcpustat\fR samples activity every
+\fIinterval\fR seconds, repeating forever. If a \fIcount\fR is specified, the
+statistics are repeated \fIcount\fR times. If neither are specified, an
+interval of five seconds is used, and there is no limit to the number of
+samples that are taken.
+.SH OPTIONS
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-c\fR \fIeventspec\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies a set of events for the \fBCPU\fR performance counters to monitor.
+The syntax of these event specifications is:
+.sp
+.in +2
+.nf
+[picn=]\fIeventn\fR[,attr[\fIn\fR][=\fIval\fR]][,[picn=]\fIeventn\fR
+ [,attr[n][=\fIval\fR]],...,]
+.fi
+.in -2
+.sp
+
+You can use the \fB-h\fR option to obtain a list of available events and
+attributes. This causes generation of the usage message. You can omit an
+explicit counter assignment, in which case \fBcpustat\fR attempts to choose a
+capable counter automatically.
+.sp
+Attribute values can be expressed in hexadecimal, octal, or decimal notation,
+in a format suitable for \fBstrtoll\fR(3C). An attribute present in the event
+specification without an explicit value receives a default value of \fB1\fR. An
+attribute without a corresponding counter number is applied to all counters in
+the specification.
+.sp
+The semantics of these event specifications can be determined by reading the
+\fBCPU\fR manufacturer's documentation for the events.
+.sp
+Multiple \fB-c\fR options can be specified, in which case the command cycles
+between the different event settings on each sample.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-D\fR\fR
+.ad
+.sp .6
+.RS 4n
+Enables debug mode.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-h\fR\fR
+.ad
+.sp .6
+.RS 4n
+Prints an extensive help message on how to use the utility and how to program
+the processor-dependent counters.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR\fR
+.ad
+.sp .6
+.RS 4n
+Omits all header output (useful if \fBcpustat\fR is the beginning of a
+pipeline).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR \fIperiod\fR\fR
+.ad
+.sp .6
+.RS 4n
+Causes \fBcpustat\fR to cycle through the list of \fIeventspec\fRs every
+\fIperiod\fR seconds. The tool sleeps after each cycle until \fIperiod\fR
+seconds have elapsed since the first \fIeventspec\fR was measured.
+.sp
+When this option is present, the optional \fIcount\fR parameter specifies the
+number of total cycles to make (instead of the number of total samples to
+take). If \fIperiod\fR is less than the number of \fIeventspec\fRs times
+\fIinterval\fR, the tool acts as it period is \fB0\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR\fR
+.ad
+.sp .6
+.RS 4n
+Creates an idle soaker thread to spin while system-only \fIeventspec\fRs are
+bound. One idle soaker thread is bound to each CPU in the current processor
+set. System-only \fIeventspec\fRs contain both the \fBnouser\fR and the
+\fBsys\fR tokens and measure events that occur while the CPU is operating in
+privileged mode. This option prevents the kernel's idle loop from running and
+triggering system-mode events.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-T\fR \fBu\fR | \fBd\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display a time stamp.
+.sp
+Specify \fBu\fR for a printed representation of the internal representation of
+time. See \fBtime\fR(2). Specify \fBd\fR for standard date format. See
+\fBdate\fR(1).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-t\fR\fR
+.ad
+.sp .6
+.RS 4n
+Prints an additional column of processor cycle counts, if available on the
+current architecture.
+.RE
+
+.SH USAGE
+.LP
+A closely related utility, \fBcputrack\fR(1), can be used to monitor the
+behavior of individual applications with little or no interference from other
+activities on the system.
+.sp
+.LP
+The \fBcpustat\fR utility must be run by the super-user, as there is an
+intrinsic conflict between the use of the \fBCPU\fR performance counters
+system-wide by \fBcpustat\fR and the use of the \fBCPU\fR performance counters
+to monitor an individual process (for example, by \fBcputrack\fR.)
+.sp
+.LP
+Once any instance of this utility has started, no further per-process or
+per-\fBLWP\fR use of the counters is allowed until the last instance of the
+utility terminates.
+.sp
+.LP
+The times printed by the command correspond to the wallclock time when the
+hardware counters were actually sampled, instead of when the program told the
+kernel to sample them. The time is derived from the same timebase as
+\fBgethrtime\fR(3C).
+.sp
+.LP
+The processor cycle counts enabled by the \fB-t\fR option always apply to both
+user and system modes, regardless of the settings applied to the performance
+counter registers.
+.sp
+.LP
+On some hardware platforms running in system mode using the "sys" token, the
+counters are implemented using 32-bit registers. While the kernel attempts to
+catch all overflows to synthesize 64-bit counters, because of hardware
+implementation restrictions, overflows can be lost unless the sampling interval
+is kept short enough. The events most prone to wrap are those that count
+processor clock cycles. If such an event is of interest, sampling should occur
+frequently so that less than 4 billion clock cycles can occur between samples.
+.sp
+.LP
+The output of cpustat is designed to be readily parsable by \fBnawk\fR(1) and
+\fBperl\fR(1), thereby allowing performance tools to be composed by embedding
+\fBcpustat\fR in scripts. Alternatively, tools can be constructed directly
+using the same \fBAPI\fRs that \fBcpustat\fR is built upon using the facilities
+of \fBlibcpc\fR(3LIB). See \fBcpc\fR(3CPC).
+.sp
+.LP
+The \fBcpustat\fR utility only monitors the \fBCPU\fRs that are accessible to
+it in the current processor set. Thus, several instances of the utility can be
+running on the \fBCPU\fRs in different processor sets. See \fBpsrset\fR(8) for
+more information about processor sets.
+.sp
+.LP
+Because \fBcpustat\fR uses \fBLWP\fRs bound to \fBCPU\fRs, the utility might
+have to be terminated before the configuration of the relevant processor can be
+changed.
+.SH EXAMPLES
+.SS "SPARC"
+.LP
+\fBExample 1 \fRMeasuring External Cache References and Misses
+.sp
+.LP
+The following example measures misses and references in the external cache.
+These occur while the processor is operating in user mode on an UltraSPARC
+machine.
+
+.sp
+.in +2
+.nf
+example% cpustat -c EC_ref,EC_misses 1 3
+
+ time cpu event pic0 pic1
+ 1.008 0 tick 69284 1647
+ 1.008 1 tick 43284 1175
+ 2.008 0 tick 179576 1834
+ 2.008 1 tick 202022 12046
+ 3.008 0 tick 93262 384
+ 3.008 1 tick 63649 1118
+ 3.008 2 total 651077 18204
+.fi
+.in -2
+.sp
+
+.SS "x86"
+.LP
+\fBExample 2 \fRMeasuring Branch Prediction Success on Pentium 4
+.sp
+.LP
+The following example measures branch mispredictions and total branch
+instructions in user and system mode on a Pentium 4 machine.
+
+.sp
+.in +2
+.nf
+ example% cpustat -c \e
+ pic12=branch_retired,emask12=0x4,pic14=branch_retired,\e
+ emask14=0xf,sys 1 3
+
+ time cpu event pic12 pic14
+ 1.010 1 tick 458 684
+ 1.010 0 tick 305 511
+ 2.010 0 tick 181 269
+ 2.010 1 tick 469 684
+ 3.010 0 tick 182 269
+ 3.010 1 tick 468 684
+ 3.010 2 total 2063 3101
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRCounting Memory Accesses on Opteron
+.sp
+.LP
+The following example determines the number of memory accesses made through
+each memory controller on an Opteron, broken down by internal memory latency:
+
+.sp
+.in +2
+.nf
+cpustat -c \e
+ pic0=NB_mem_ctrlr_page_access,umask0=0x01, \e
+ pic1=NB_mem_ctrlr_page_access,umask1=0x02, \e
+ pic2=NB_mem_ctrlr_page_access,umask2=0x04,sys \e
+ 1
+
+ time cpu event pic0 pic1 pic2
+ 1.003 0 tick 41976 53519 7720
+ 1.003 1 tick 5589 19402 731
+ 2.003 1 tick 6011 17005 658
+ 2.003 0 tick 43944 45473 7338
+ 3.003 1 tick 7105 20177 762
+ 3.003 0 tick 47045 48025 7119
+ 4.003 0 tick 43224 46296 6694
+ 4.003 1 tick 5366 19114 652
+.fi
+.in -2
+.sp
+
+.SH WARNINGS
+.LP
+By running the \fBcpustat\fR command, the super-user forcibly invalidates all
+existing performance counter context. This can in turn cause all invocations of
+the \fBcputrack\fR command, and other users of performance counter context, to
+exit prematurely with unspecified errors.
+.sp
+.LP
+If \fBcpustat\fR is invoked on a system that has \fBCPU\fR performance counters
+which are not supported by Solaris, the following message appears:
+.sp
+.in +2
+.nf
+cpustat: cannot access performance counters - Operation not applicable
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+This error message implies that \fBcpc_open()\fR has failed and is documented
+in \fBcpc_open\fR(3CPC). Review this documentation for more information about
+the problem and possible solutions.
+.sp
+.LP
+If a short interval is requested, \fBcpustat\fR might not be able to keep up
+with the desired sample rate. In this case, some samples might be dropped.
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.LP
+.BR cputrack (1),
+.BR nawk (1),
+.BR perl (1),
+.BR gethrtime (3C),
+.BR strtoll (3C),
+.BR cpc (3CPC),
+.BR cpc_bind_cpu (3CPC),
+.BR cpc_open (3CPC),
+.BR libcpc (3LIB),
+.BR attributes (7),
+.BR iostat (8),
+.BR prstat (8),
+.BR psrset (8),
+.BR vmstat (8)
+.SH NOTES
+.LP
+When \fBcpustat\fR is run on a Pentium 4 with HyperThreading enabled, a CPC set
+is bound to only one logical CPU of each physical CPU. See
+\fBcpc_bind_cpu\fR(3CPC).
diff --git a/usr/src/man/man8/cron.8 b/usr/src/man/man8/cron.8
new file mode 100644
index 0000000000..1b2862a3e2
--- /dev/null
+++ b/usr/src/man/man8/cron.8
@@ -0,0 +1,193 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 2009 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH CRON 8 "Mar 30, 2017"
+.SH NAME
+cron \- clock daemon
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/cron\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+\fBcron\fR starts a process that executes commands at specified dates and
+times.
+.sp
+.LP
+You can specify regularly scheduled commands to \fBcron\fR according to
+instructions found in \fBcrontab\fR files in the directory
+\fB/var/spool/cron/crontabs\fR. Users can submit their own \fBcrontab\fR file
+using the \fBcrontab\fR(1) command. Commands which are to be executed only once
+can be submitted using the \fBat\fR(1) command.
+.sp
+.LP
+\fBcron\fR only examines \fBcrontab\fR or \fBat\fR command files during its own
+process initialization phase and when the \fBcrontab\fR or \fBat\fR command is
+run. This reduces the overhead of checking for new or changed files at
+regularly scheduled intervals.
+.sp
+.LP
+As \fBcron\fR never exits, it should be executed only once. This is done
+routinely by way of the \fBsvc:/system/cron:default\fR service. The file
+\fB/etc/cron.d/FIFO\fR file is used as a lock file to prevent the execution of
+more than one instance of \fBcron\fR.
+.sp
+.LP
+\fBcron\fR captures the output of the job's \fBstdout\fR and \fBstderr\fR
+streams, and, if it is not empty, mails the output to the user. If the job does
+not produce output, no mail is sent to the user. An exception is if the job is
+an \fBat\fR(1) job and the \fB-m\fR option was specified when the job was
+submitted.
+.sp
+.LP
+\fBcron\fR and \fBat\fR jobs are not executed if your account is locked.
+The \fBshadow\fR(5) file defines which accounts are not
+locked and will have their jobs executed.
+.SS "Setting cron Jobs Across Timezones"
+.LP
+The timezone of the \fBcron\fR daemon sets the system-wide timezone for
+\fBcron\fR entries. This, in turn, is by set by default system-wide using
+\fB/etc/default/init\fR. The timezone for \fBcron\fR entries can be overridden
+in a user's crontab file; see \fBcrontab\fR(1).
+.sp
+.LP
+If some form of \fBdaylight savings\fR or \fBsummer/winter time\fR is in
+effect, then jobs scheduled during the switchover period could be executed
+once, twice, or not at all.
+.SS "Setting cron Defaults"
+.LP
+To keep a log of all actions taken by \fBcron\fR, you must specify
+\fBCRONLOG=YES\fR in the \fB/etc/default/cron\fR file. If you specify
+\fBCRONLOG=NO\fR, no logging is done. Keeping the log is a user configurable
+option since \fBcron\fR usually creates huge log files.
+.sp
+.LP
+You can specify the \fBPATH\fR for \fBuser\fR cron jobs by using
+\fBPATH\fR\fB=\fR in \fB/etc/default/cron\fR. You can set the \fBPATH\fR for
+\fBroot\fR cron jobs using \fBSU\fR\fBPATH\fR\fB=\fR in
+\fB/etc/default/cron\fR. Carefully consider the security implications of
+setting \fBPATH\fR and \fBSUPATH\fR.
+.sp
+.LP
+Example \fB/etc/default/cron\fR file:
+.sp
+.in +2
+.nf
+CRONLOG=YES
+PATH=/usr/bin:/usr/ucb:
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+This example enables logging and sets the default \fBPATH\fR used by non-root
+jobs to \fB/usr/bin:/usr/ucb:\fR. Root jobs continue to use
+\fB/usr/sbin:/usr/bin\fR.
+.sp
+.LP
+The \fBcron\fR log file is periodically rotated by \fBlogadm\fR(8).
+.SH FILES
+.ne 2
+.na
+\fB\fB/etc/cron.d\fR\fR
+.ad
+.RS 25n
+Main \fBcron\fR directory
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/cron.d/FIFO\fR\fR
+.ad
+.RS 25n
+Lock file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/default/cron\fR\fR
+.ad
+.RS 25n
+\fBcron\fR default settings file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/cron/log\fR\fR
+.ad
+.RS 25n
+\fBcron\fR history information
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/spool/cron\fR\fR
+.ad
+.RS 25n
+Spool area
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/cron.d/queuedefs\fR\fR
+.ad
+.RS 25n
+Queue description file for \fBat\fR, \fBbatch\fR, and \fBcron\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/logadm.conf\fR\fR
+.ad
+.RS 25n
+Configuration file for \fBlogadm\fR
+.RE
+
+.SH SEE ALSO
+.LP
+.BR at (1),
+.BR crontab (1),
+.BR sh (1),
+.BR svcs (1),
+.BR queuedefs (5),
+.BR shadow (5),
+.BR attributes (7),
+.BR rbac (7),
+.BR smf (7),
+.BR smf_security (7),
+.BR logadm (8),
+.BR svcadm (8)
+.SH NOTES
+.LP
+The \fBcron\fR service is managed by the service management facility,
+\fBsmf\fR(7), under the service identifier:
+.sp
+.in +2
+.nf
+svc:/system/cron:default
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Administrative actions on this service, such as enabling, disabling, or
+requesting restart, can be performed using \fBsvcadm\fR(8). The service's
+status can be queried using the \fBsvcs\fR(1) command. Most administrative
+actions may be delegated to users with the \fBsolaris.smf.manage.cron\fR
+authorization (see \fBrbac\fR(7) and \fBsmf_security\fR(7)).
+.SH DIAGNOSTICS
+.LP
+A history of all actions taken by \fBcron\fR is stored in \fB/var/cron/log\fR
+and possibly in \fB/var/cron/olog\fR.
diff --git a/usr/src/man/man8/cryptoadm.8 b/usr/src/man/man8/cryptoadm.8
new file mode 100644
index 0000000000..b1979f6fcc
--- /dev/null
+++ b/usr/src/man/man8/cryptoadm.8
@@ -0,0 +1,821 @@
+'\" te
+.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH CRYPTOADM 8 "Sep 1, 2009"
+.SH NAME
+cryptoadm \- cryptographic framework administration
+.SH SYNOPSIS
+.nf
+\fBcryptoadm\fR list [\fB-mpv\fR] [provider=\fIprovider-name\fR]
+ [mechanism=\fImechanism-list\fR]
+.fi
+
+.LP
+.nf
+\fBcryptoadm\fR disable
+ provider=\fIprovider-name\fR mechanism=\fImechanism-list\fR | random | all
+.fi
+
+.LP
+.nf
+\fBcryptoadm\fR enable
+ provider=\fIprovider-name\fR mechanism=\fImechanism-list\fR | random | all
+.fi
+
+.LP
+.nf
+\fBcryptoadm\fR install provider=\fIprovider-name\fR
+.fi
+
+.LP
+.nf
+\fBcryptoadm\fR install provider=\fIprovider-name\fR
+ [mechanism=\fImechanism-list\fR]
+.fi
+
+.LP
+.nf
+\fBcryptoadm\fR uninstall provider=\fIprovider-name\fR
+.fi
+
+.LP
+.nf
+\fBcryptoadm\fR unload provider=\fIprovider-name\fR
+.fi
+
+.LP
+.nf
+\fBcryptoadm\fR disable fips-140
+.fi
+
+.LP
+.nf
+\fBcryptoadm\fR enable fips-140
+.fi
+
+.LP
+.nf
+\fBcryptoadm\fR list fips-140
+.fi
+
+.LP
+.nf
+\fBcryptoadm\fR refresh
+.fi
+
+.LP
+.nf
+\fBcryptoadm\fR start
+.fi
+
+.LP
+.nf
+\fBcryptoadm\fR stop
+.fi
+
+.LP
+.nf
+\fBcryptoadm\fR \fB-\fR\fB-help\fR
+.fi
+
+.SH DESCRIPTION
+The \fBcryptoadm\fR utility displays cryptographic provider information for a
+system, configures the mechanism policy for each provider, and installs or
+uninstalls a cryptographic provider. The cryptographic framework supports three
+types of providers: a user-level provider (a PKCS11 shared library), a kernel
+software provider (a loadable kernel software module), and a kernel hardware
+provider (a cryptographic hardware device).
+.sp
+.LP
+For kernel software providers, the \fBcryptoadm\fR utility provides the
+\fBunload\fR subcommand. This subcommand instructs the kernel to unload a
+kernel software providers.
+.sp
+.LP
+For the cryptographic framework's metaslot, the \fBcryptoadm\fR utility
+provides subcommands to enable and disable the metaslot's features, list
+metaslot's configuration, specify alternate persistent object storage, and
+configure the metaslot's mechanism policy.
+.sp
+.LP
+The \fBcryptoadm\fR utility provides subcommands to enable and disable FIPS-140
+mode in the Cryptographic Framework. It also provides a \fBlist\fR subcommand
+to display the current status of FIPS-140 mode.
+.sp
+.LP
+Administrators will find it useful to use \fBsyslog\fR facilities (see
+\fBsyslogd\fR(8) and \fBlogadm\fR(8)) to maintain the cryptographic
+subsystem. Logging can be especially useful under the following circumstances:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+If kernel-level daemon is dead, all applications fail. You can learn this from
+syslog and use \fBsvcadm\fR(8) to restart the \fBsvc:/system/cryptosvc\fR
+service.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+If there are bad providers plugged into the framework, you can learn this from
+syslog and remove the bad providers from the framework.
+.RE
+.sp
+.LP
+With the exception of the subcommands or options listed below, the
+\fBcryptoadm\fR command needs to be run by a privileged user.
+.RS +4
+.TP
+.ie t \(bu
+.el o
+subcommand \fBlist\fR, any options
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+subcommand \fB-\fR\fB-help\fR
+.RE
+.SH OPTIONS
+The \fBcryptoadm\fR utility has the various combinations of subcommands and
+options shown below.
+.sp
+.ne 2
+.na
+\fB\fBcryptoadm\fR \fBlist\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display the list of installed providers.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcryptoadm\fR \fBlist metaslot\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display the system-wide configuration for metaslot.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcryptoadm\fR \fBlist\fR \fB-m\fR \fB[ provider=\fIprovider-name\fR |
+metaslot ]\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display a list of mechanisms that can be used with the installed providers or
+metaslot. If a provider is specified, display the name of the specified
+provider and the mechanism list that can be used with that provider. If the
+metaslot keyword is specified, display the list of mechanisms that can be used
+with metaslot.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcryptoadm\fR \fBlist\fR \fB-p\fR \fB[ provider=\fIprovider-name\fR |
+metaslot ]\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display the mechanism policy (that is, which mechanisms are available and which
+are not) for the installed providers. Also display the provider feature policy
+or metaslot. If a provider is specified, display the name of the provider with
+the mechanism policy enforced on it only. If the metaslot keyword is specified,
+display the mechanism policy enforced on the metaslot.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcryptoadm\fR \fBlist\fR \fB-v\fR \fBprovider=\fIprovider-name\fR |
+metaslot\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display details about the specified provider if a provider is specified. If the
+metaslot keyword is specified, display details about the metaslot.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.sp .6
+.RS 4n
+For the various \fBlist\fR subcommands described above (except for \fBlist\fR
+\fB-p\fR), the \fB-v\fR (verbose) option provides details about providers,
+mechanisms and slots.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcryptoadm\fR \fBdisable provider=\fIprovider-name\fR\fR\fR
+.ad
+.br
+.na
+\fB[ mechanism=\fImechanism-list\fR | \fIprovider-feature\fR \fB\&... |\fR
+\fBall\fR ]\fR
+.ad
+.sp .6
+.RS 4n
+Disable the mechanisms or provider features specified for the provider. See
+OPERANDS for a description of \fImechanism\fR, \fIprovider-feature\fR, and the
+\fBall\fR keyword.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcryptoadm\fR \fB[ mechanism=\fImechanism-list\fR ] [ auto-key-migrate
+]\fR\fR
+.ad
+.sp .6
+.RS 4n
+Disable the metaslot feature in the cryptographic framework or disable some of
+metaslot's features. If no operand is specified, this command disables the
+metaslot feature in the cryptographic framework. If a list of mechanisms is
+specified, disable mechanisms specified for metaslot. If all mechanisms are
+disabled for metaslot, the metaslot will be disabled. See OPERANDS for a
+description of mechanism. If the \fBauto-key-migrate\fR keyword is specified,
+it disables the migration of sensitive token objects to other slots even if it
+is necessary for performing crypto operations. See OPERANDS for a description
+of \fBauto-key-migrate\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcryptoadm\fR \fBenable provider=\fIprovider-name\fR\fR\fR
+.ad
+.br
+.na
+\fB[ mechanism=\fImechanism-list\fR | \fIprovider-feature\fR \fB\&... |\fR
+\fBall\fR ]\fR
+.ad
+.sp .6
+.RS 4n
+Enable the mechanisms or provider features specified for the provider. See
+OPERANDS for a description of \fImechanism\fR, \fIprovider-feature\fR, and the
+\fBall\fR keyword.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcryptoadm\fR \fBenable metaslot [ mechanism=\fImechanism-list\fR ]
+|\fR\fR
+.ad
+.br
+.na
+\fB\fB[ [ token=\fItoken-label\fR] [ slot=\fIslot-description\fR] |\fR\fR
+.ad
+.br
+.na
+\fB\fBdefault-keystore ] | [ auto-key-migrate ]\fR\fR
+.ad
+.sp .6
+.RS 4n
+If no operand is specified, this command enables the metaslot feature in the
+cryptographic framework. If a list of mechanisms is specified, it enables only
+the list of specified mechanisms for metaslot. If \fItoken-label\fR is
+specified, the specified token will be used as the persistent object store. If
+the \fIslot-description\fR is specified, the specified slot will be used as the
+persistent object store. If both the \fItoken-label\fR and the
+\fIslot-description\fR are specified, the provider with the matching token
+label and slot description is used as the persistent object store. If the
+\fBdefault-keystore\fR keyword is specified, metaslot will use the default
+persistent object store. If the \fBauto-key-migrate\fR keyword is specified,
+sensitive token objects will automatically migrate to other slots as needed to
+complete certain crypto operations. See OPERANDS for a description of
+mechanism, token, slot, \fBdefault-keystore\fR, and \fBauto-key-migrate\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcryptoadm\fR \fBinstall provider=\fIprovider-name\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Install a user-level provider into the system. The \fIprovider\fR operand must
+be an absolute pathname of the corresponding shared library. If there are both
+32-bit and 64-bit versions for a library, this command should be run once only
+with the path name containing \fB$ISA\fR. Note that \fB$ISA\fR is not a
+reference to an environment variable. Note also that \fB$ISA\fR must be quoted
+(with single quotes [for example, \fB\&'$ISA'\fR]) or the \fB$\fR must be
+escaped to keep it from being incorrectly expanded by the shell. The user-level
+framework expands \fB$ISA\fR to an empty string or an architecture-specific
+directory, for example, \fBsparcv9\fR.
+.sp
+The preferred way of installing a user-level provider is to build a package for
+the provider. For more information, see the \fISolaris Security for Developer's
+Guide\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcryptoadm\fR \fBinstall provider=\fIprovider-name\fR\fR\fR
+.ad
+.br
+.na
+\fBmechanism=\fImechanism-list\fR\fR
+.ad
+.sp .6
+.RS 4n
+Install a kernel software provider into the system. The provider should contain
+the base name only. The \fImechanism-list\fR operand specifies the complete
+list of mechanisms to be supported by this provider.
+.sp
+The preferred way of installing a kernel software provider is to build a
+package for providers. For more information, see the \fISolaris Security for
+Developer's Guide\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcryptoadm\fR \fBuninstall provider=\fIprovider-name\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Uninstall the specified \fIprovider\fR and the associated mechanism policy from
+the system. This subcommand applies only to a user-level provider or a kernel
+software provider.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcryptoadm\fR \fBunload provider=\fIprovider-name\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Unload the kernel software module specified by \fIprovider\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcryptoadm\fR \fBdisable fips-140\fR\fR
+.ad
+.sp .6
+.RS 4n
+Disable FIPS-140 mode in the Cryptographic Framework.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcryptoadm\fR \fBenable fips-140\fR\fR
+.ad
+.sp .6
+.RS 4n
+Enable FIPS-140 mode in the Cryptographic Framework. This subcommand does not
+disable the non-FIPS approved algorithms from the user-level
+\fBpkcs11_softtoken\fR library and the kernel software providers. It is the
+consumers of the framework that are responsible for using only FIPS-approved
+algorithms.
+.sp
+Upon completion of this subcommand, a message is issued to inform the
+administrator that any plugins added that are not within the boundary might
+invalidate FIPS compliance and to check the Security Policies for those
+plugins. In addition, a warning message is issued to indicate that, in this
+release, the Cryptographic Framework has not been FIPS 140-2 certified.
+.sp
+The system will require a reboot to perform Power-Up Self Tests that include a
+cryptographic algorithm test and a software integrity test.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcryptoadm\fR \fBlist fips-140\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display the current setting of FIPS-140 mode in the Cryptographic Framework.
+The status of FIPS-140 mode is \fBenabled\fR or \fBdisabled\fR. The default
+FIPS-140 mode is \fBdisabled\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcryptoadm\fR \fBrefresh\fR\fR
+.ad
+.br
+.na
+\fB\fBcryptoadm\fR \fBstart\fR\fR
+.ad
+.br
+.na
+\fB\fBcryptoadm\fR \fBstop\fR\fR
+.ad
+.sp .6
+.RS 4n
+Private interfaces for use by \fBsmf\fR(7), these must not be used directly.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcryptoadm\fR \fB-help\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display the command usage.
+.RE
+
+.SH OPERANDS
+.ne 2
+.na
+\fBprovider=\fIprovider-name\fR\fR
+.ad
+.sp .6
+.RS 4n
+A user-level provider (a PKCS11 shared library), a kernel software provider (a
+loadable kernel software module), or a kernel hardware provider (a
+cryptographic hardware device).
+.sp
+A valid value of the \fIprovider\fR operand is one entry from the output of a
+command of the form: \fBcryptoadm\fR \fIlist\fR. A \fIprovider\fR operand for a
+user-level provider is an absolute pathname of the corresponding shared
+library. A \fIprovider\fR operand for a kernel software provider contains a
+base name only. A \fIprovider\fR operand for a kernel hardware provider is in a
+"\fIname\fR/\fInumber\fR" form.
+.RE
+
+.sp
+.ne 2
+.na
+\fBmechanism=\fImechanism-list\fR\fR
+.ad
+.sp .6
+.RS 4n
+A comma separated list of one or more PKCS #11 mechanisms. A process for
+implementing a cryptographic operation as defined in PKCS #11 specification.
+You can substitute \fBall\fR for \fImechanism-list\fR, to specify all
+mechanisms on a provider. See the discussion of the \fBall\fR keyword, below.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIprovider-feature\fR\fR
+.ad
+.sp .6
+.RS 4n
+A cryptographic framework feature for the given provider. Currently only
+\fBrandom\fR is accepted as a feature. For a user-level provider, disabling the
+random feature makes the PKCS #11 routines \fBC_GenerateRandom\fR and
+\fBC_SeedRandom\fR unavailable from the provider. For a kernel provider,
+disabling the random feature prevents \fB/dev/random\fR from gathering random
+numbers from the provider.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBall\fR\fR
+.ad
+.sp .6
+.RS 4n
+The keyword all can be used with with the \fBdisable\fR and \fBenable\fR
+subcommands to operate on all provider features.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBtoken=\fR\fItoken-label\fR\fR
+.ad
+.sp .6
+.RS 4n
+The label of a token in one of the providers in the cryptographic framework.
+.sp
+A valid value of the token operand is an item displayed under "Token Label"
+from the output of the command \fBcryptoadm list\fR \fB-v\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBslot=\fR\fIslot-description\fR\fR
+.ad
+.sp .6
+.RS 4n
+The description of a slot in one of the providers in the cryptographic
+framework.
+.sp
+A valid value of the slot operand is an item displayed under "Description" from
+the output of the command \fBcryptoadm list\fR \fB-v\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdefault-keystore\fR\fR
+.ad
+.sp .6
+.RS 4n
+The keyword \fBdefault-keystore\fR is valid only for metaslot. Specify this
+keyword to set the persistent object store for metaslot back to using the
+default store.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBauto-key-migrate\fR\fR
+.ad
+.sp .6
+.RS 4n
+The keyword auto-key-migrate is valid only for metaslot. Specify this keyword
+to configure whether metaslot is allowed to move sensitive token objects from
+the token object slot to other slots for performing cryptographic operations.
+.RE
+
+.sp
+.LP
+The keyword \fBall\fR can be used in two ways with the \fBdisable\fR and
+\fBenable\fR subcommands:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+You can substitute \fBall\fR for \fBmechanism\fR=\fImechanism-list\fR, as in:
+.sp
+.in +2
+.nf
+# \fBcryptoadm enable provider=dca/0 all\fR
+.fi
+.in -2
+.sp
+
+This command enables the mechanisms on the provider \fBand\fR any other
+provider-features, such as \fBrandom\fR.
+.sp
+.in +2
+.nf
+# \fBcryptoadm enable provider=des mechanism=all\fR
+.fi
+.in -2
+.sp
+
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+You can also use \fBall\fR as an argument to \fBmechanism\fR, as in:
+.sp
+.in +2
+.nf
+# \fBcryptoadm enable provider=des mechanism=all\fR
+.fi
+.in -2
+.sp
+
+\&...which enables all mechanisms on the provider, but enables no other
+provider-features, such as \fBrandom\fR.
+.RE
+.SH EXAMPLES
+\fBExample 1 \fRDisplay List of Providers Installed in System
+.sp
+.LP
+The following command displays a list of all installed providers:
+
+.sp
+.in +2
+.nf
+example% \fBcryptoadm list\fR
+user-level providers:
+/usr/lib/security/$ISA/pkcs11_kernel.so
+/usr/lib/security/$ISA/pkcs11_softtoken.so
+/opt/lib/libcryptoki.so.1
+/opt/SUNWconn/lib/$ISA/libpkcs11.so.1
+
+kernel software providers:
+ des
+ aes
+ bfish
+ sha1
+ md5
+
+kernel hardware providers:
+ dca/0
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRDisplay Mechanism List for \fBmd5\fR Provider
+.sp
+.LP
+The following command is a variation of the \fBlist\fR subcommand:
+
+.sp
+.in +2
+.nf
+example% \fBcryptoadm list -m provider=md5\fR
+md5: CKM_MD5,CKM_MD5_HMAC,CKM_MD5_HMAC_GENERAL
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRDisable Specific Mechanisms for Kernel Software Provider
+.sp
+.LP
+The following command disables mechanisms \fBCKM_DES3_ECB\fR and
+\fBCKM_DES3_CBC\fR for the kernel software provider \fBdes\fR:
+
+.sp
+.in +2
+.nf
+example# \fBcryptoadm disable provider=des\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 4 \fRDisplay Mechanism Policy for a Provider
+.sp
+.LP
+The following command displays the mechanism policy for the \fBdes\fR provider:
+
+.sp
+.in +2
+.nf
+example% \fBcryptoadm list -p provider=des\fR
+des: All mechanisms are enabled, except CKM_DES3_ECB, CKM_DES3_CBC
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 5 \fREnable Specific Mechanism for a Provider
+.sp
+.LP
+The following command enables the \fBCKM_DES3_ECB\fR mechanism for the kernel
+software provider \fBdes\fR:
+
+.sp
+.in +2
+.nf
+example# \fBcryptoadm enable provider=des mechanism=CKM_DES3_ECB\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 6 \fRInstall User-Level Provider
+.sp
+.LP
+The following command installs a user-level provider:
+
+.sp
+.in +2
+.nf
+example# \fBcryptoadm install provider=/opt/lib/libcryptoki.so.1\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 7 \fRInstall User-Level Provider That Contains 32- and 64-bit
+Versions
+.sp
+.LP
+The following command installs a user-level provider that contains both 32-bit
+and 64-bit versions:
+
+.sp
+.in +2
+.nf
+example# \fBcryptoadm install \e\fR
+provider=/opt/SUNWconn/lib/'$ISA'/libpkcs11.so.1
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 8 \fRUninstall a Provider
+.sp
+.LP
+The following command uninstalls the \fBmd5\fR provider:
+
+.sp
+.in +2
+.nf
+example# \fBcryptoadm uninstall provider=md5\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 9 \fRDisable metaslot
+.sp
+.LP
+The following command disables the metaslot feature in the cryptographic
+framework.
+
+.sp
+.in +2
+.nf
+example# \fBcryptoadm disable metaslot\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 10 \fRSpecify metaslot to Use Specified Token as Persistent Object
+Store
+.sp
+.LP
+The following command specifies that metaslot use the Venus token as the
+persistent object store.
+
+.sp
+.in +2
+.nf
+example# \fBcryptoadm enable metaslot token="SUNW,venus"\fR
+.fi
+.in -2
+.sp
+
+.SH EXIT STATUS
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.sp .6
+.RS 4n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB>0\fR\fR
+.ad
+.sp .6
+.RS 4n
+An error occurred.
+.RE
+
+.SH ATTRIBUTES
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability See below
+.TE
+
+.sp
+.LP
+The \fBstart\fR, \fBstop\fR, and \fBrefresh\fR options are Private interfaces.
+All other options are Evolving. The utility name is Stable.
+.SH SEE ALSO
+.BR libpkcs11 (3LIB),
+.BR random (4D),
+.BR exec_attr (5),
+.BR prof_attr (5),
+.BR attributes (7),
+.BR smf (7),
+.BR logadm (8),
+.BR svcadm (8),
+.BR syslogd (8)
+
+.sp
+.LP
+\fISolaris Security for Developer's Guide\fR
+.SH NOTES
+If a hardware provider's policy was made explicitly (that is, some of its
+mechanisms were disabled) and the hardware provider has been detached, the
+policy of this hardware provider is still listed.
+.sp
+.LP
+\fBcryptoadm\fR assumes that, minimally, a 32-bit shared object is delivered
+for each user-level provider. If both a 32-bit and 64-bit shared object are
+delivered, the two versions must provide the same functionality. The same
+mechanism policy applies to both.
diff --git a/usr/src/man/man8/datadm.8 b/usr/src/man/man8/datadm.8
new file mode 100644
index 0000000000..ae9071fc87
--- /dev/null
+++ b/usr/src/man/man8/datadm.8
@@ -0,0 +1,197 @@
+'\" te
+.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH DATADM 8 "June 20, 2021"
+.SH NAME
+datadm \- maintain DAT static registry file
+.SH SYNOPSIS
+.nf
+\fB/usr/bin/datadm\fR [\fB-v\fR] [\fB-u\fR] [\fB-a\fR service_provider.conf]
+ [\fB-r\fR service_provider.conf]
+.fi
+
+.SH DESCRIPTION
+The \fBdatadm\fR utility maintains the DAT static registry file,
+\fBdat.conf\fR(5).
+.sp
+.LP
+This administrative configuration program allows uDAPL service providers to add
+and remove themselves to the \fBdat.conf\fR file.
+.sp
+.LP
+You can add or remove interface adapters that a service provider supports from
+a system after its installation. You can use \fBdatadm\fR to update the
+\fBdat.conf\fR file to reflect the current state of the system. A new set of
+interface adapters for all the service providers currently installed is
+regenerated.
+.SH OPTIONS
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-a\fR \fBservice_provider.conf\fR\fR
+.ad
+.RS 28n
+Enumerate each device entry in the \fBservice_provider.conf\fR(5) file into a
+list of interface adapters, that is, interfaces to external network that are
+available to uDAPL consumers.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-r\fR \fBservice_provider.conf\fR\fR
+.ad
+.RS 28n
+Remove the list of interface adapters that corresponds to the device entry in
+the \fBservice_provider.conf\fR(5) file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-u\fR\fR
+.ad
+.RS 28n
+Update the \fBdat.conf\fR to reflect the current state of the system with an up
+to date set of interface adapters for the service providers that are currently
+listed in the DAT static registry.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.RS 28n
+Display the DAT static registry file, \fBdat.conf\fR.
+.RE
+
+.SH EXAMPLES
+\fBExample 1 \fREnumerating a Device Entry
+.sp
+.LP
+The following example enumerates a device entry in the
+\fBservice_provider.conf\fR(5) file into interface adapters in the
+\fBdat.conf\fR(5) file.
+
+.sp
+.LP
+Assume that \fBSUNW\fR has a service provider library that supports the device
+\fBtavor\fR. It has a \fBservice_provider.conf\fR(5) file installed in the
+directory \fB/usr/share/dat/SUNWudaplt.conf\fR with a single entry as follows:
+
+.sp
+.in +2
+.nf
+driver_name=tavor u1.2 nonthreadsafe default\e
+ udapl_tavor.so.1 SUNW.1.0 ""
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+\fBtavor\fR is an Infiniband Host Channel Adapter with two ports. Both IB ports
+exist in a single IB partition, \fB0x8001\fR. If an IP interface is plumbed to
+each port, there are two IPoIB device instances, \fBibd0\fR and \fBibd1\fR:
+
+.sp
+.in +2
+.nf
+# ls -l /dev/ibd*
+/dev/ibd0 -> /devices/pci@1/pci15b3,5a44@0/ibport@1,8001,ipib:ibd0
+/dev/ibd1 -> /devices/pci@1/pci15b3,5a44@0/ibport@2,8001,ipib:ibd1
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Running the command, \fBdatadm -a /usr/share/dat/SUNWudaplt.conf\fR appends two
+new entries (if they do not already exist) in the
+\fB/etc/dat/dat.conf\fR file:
+
+.sp
+.in +2
+.nf
+ibd0 u1.2 nonthreadsafe default udapl_tavor.so.1 SUNW.1.0 ""
+"driver_name=tavor"
+ibd1 u1.2 nonthreadsafe default udapl_tavor.so.1 SUNW.1.0 ""
+"driver_name=tavor"
+.fi
+.in -2
+
+.LP
+\fBExample 2 \fRUpdating the \fBdat.conf\fR to Reflect the Current State of the
+System
+.sp
+.LP
+A new IB partition, 0x8002 is added to the above example covering port 1 of the
+Host Channel Adapter. If a new IP interface is plumbed to \fBport 1/partition
+0x8002\fR, there is a third IPoIB device instance: \fBibd2\fR.
+
+.sp
+.in +2
+.nf
+# ls -l /dev/ibd*
+ /dev/ibd0 -> /devices/pci@1/pci15b3,5a44@0/ibport@1,8001,ipib:ibd0
+ /dev/ibd1 -> /devices/pci@1/pci15b3,5a44@0/ibport@2,8001,ipib:ibd1
+ /dev/ibd2 -> /devices/pci@1/pci15b3,5a44@0/ibport@1,8002,ipib:ibd2
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Running \fBdatadm -u\fR command, updates the \fB/etc/dat/dat.conf\fR file with
+a new entry added reflecting the current state of the system.
+
+.sp
+.LP
+\fBdatadm -v\fR shows that there are now three entries in the
+\fB/etc/dat/dat.conf\fR file:
+
+.sp
+.in +2
+.nf
+ibd0 u1.2 nonthreadsafe default udapl_tavor.so.1 SUNW.1.0 ""
+"driver_name=tavor"
+ibd1 u1.2 nonthreadsafe default udapl_tavor.so.1 SUNW.1.0 ""
+"driver_name=tavor"
+ibd2 u1.2 nonthreadsafe default udapl_tavor.so.1 SUNW.1.0 ""
+"driver_name=tavor"
+.fi
+.in -2
+.sp
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/etc/dat/dat.conf\fR\fR
+.ad
+.RS 21n
+DAT static registry file
+.RE
+
+.SH ATTRIBUTES
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.BR libdat (3LIB),
+.BR dat.conf (5),
+.BR service_provider.conf (5),
+.BR attributes (7)
diff --git a/usr/src/man/man8/dcs.8 b/usr/src/man/man8/dcs.8
new file mode 100644
index 0000000000..8bc470f973
--- /dev/null
+++ b/usr/src/man/man8/dcs.8
@@ -0,0 +1,125 @@
+'\" te
+.\" Copyright 2005 (c), Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 2019 Peter Tribble.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH DCS 8 "Apr 3, 2019"
+.SH NAME
+dcs \- domain configuration server
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/dcs\fR [\fB-s\fR \fIsessions\fR] [\fB-l\fR]
+.fi
+
+.SH DESCRIPTION
+.LP
+The Domain Configuration Server (DCS) is a daemon process that runs on Sun
+servers that support remote Dynamic Reconfiguration (DR) clients. It is started
+by the Service Management Facility (see \fBsmf\fR(7)) when the first DR request
+is received from a client connecting to the network service \fBsun-dr\fR. After
+the DCS accepts a DR request, it uses the \fBlibcfgadm\fR(3LIB) interface to
+execute the DR operation. After the operation is performed, the results are
+returned to the client.
+.sp
+.LP
+The DCS listens on the network service labeled \fBsun-dr\fR. Its underlying
+protocol is TCP. It is invoked as a server program by SMF using the TCP
+transport. The fault management resource identifier (FMRI) for DCS is:
+.sp
+.in +2
+.nf
+svc:/platform/sun4u/dcs:default
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+If you disable this service, DR operations initiated from a remote host fail.
+There is no negative impact on the server.
+.sp
+.LP
+Security on SPARC Enterprise Servers is not configurable. The DCS daemon uses a
+platform-specific library to configure its security options when running on
+such systems. The \fB-l\fR option is provided by SMF when invoking the DCS
+daemon on SPARC Enterprise Servers. No other security options to the DCS daemon
+should be used on SPARC Enterprise Servers.
+.SH OPTIONS
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-l\fR\fR
+.ad
+.RS 15n
+Enables the use of platform-specific security options on SPARC Enterprise
+Servers.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR \fIsessions\fR\fR
+.ad
+.RS 15n
+Sets the number of active sessions that the DCS allows at any one time. When
+the limit is reached, the DCS stops accepting connections until active sessions
+complete the execution of their DR operation. If this option is not specified,
+a default value of 128 is used.
+.RE
+
+.SH ERRORS
+.LP
+The DCS uses \fBsyslog\fR(3C) to report status and error messages. All of the
+messages are logged with the \fBLOG_DAEMON\fR facility. Error messages are
+logged with the \fBLOG_ERR\fR and \fBLOG_NOTICE\fR priorities, and
+informational messages are logged with the \fBLOG_INFO\fR priority. The default
+entries in the \fB/etc/syslog.conf\fR file log all of the DCS error messages to
+the \fB/var/adm/messages\fR log.
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.LP
+.BR svcs (1),
+.BR syslog (3C),
+.BR config_admin (3CFGADM),
+.BR libcfgadm (3LIB),
+.BR dr (4D),
+.BR syslog.conf (5),
+.BR attributes (7),
+.BR smf (7),
+.BR cfgadm_sbd (8),
+.BR svcadm (8)
+.SH NOTES
+.LP
+The \fBdcs\fR service is managed by the service management facility,
+\fBsmf\fR(7), under the fault management resource identifier (FMRI):
+.sp
+.in +2
+.nf
+svc:/platform/sun4u/dcs:default
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Administrative actions on this service, such as enabling, disabling, or
+requesting restart, can be performed using \fBsvcadm\fR(8). The service's
+status can be queried using the \fBsvcs\fR(1) command.
diff --git a/usr/src/man/man8/dd.8 b/usr/src/man/man8/dd.8
new file mode 100644
index 0000000000..637ab37380
--- /dev/null
+++ b/usr/src/man/man8/dd.8
@@ -0,0 +1,774 @@
+.\"
+.\" Sun Microsystems, Inc. gratefully acknowledges The Open Group for
+.\" permission to reproduce portions of its copyrighted documentation.
+.\" Original documentation from The Open Group can be obtained online at
+.\" http://www.opengroup.org/bookstore/.
+.\"
+.\" The Institute of Electrical and Electronics Engineers and The Open
+.\" Group, have given us permission to reprint portions of their
+.\" documentation.
+.\"
+.\" In the following statement, the phrase ``this text'' refers to portions
+.\" of the system documentation.
+.\"
+.\" Portions of this text are reprinted and reproduced in electronic form
+.\" in the SunOS Reference Manual, from IEEE Std 1003.1, 2004 Edition,
+.\" Standard for Information Technology -- Portable Operating System
+.\" Interface (POSIX), The Open Group Base Specifications Issue 6,
+.\" Copyright (C) 2001-2004 by the Institute of Electrical and Electronics
+.\" Engineers, Inc and The Open Group. In the event of any discrepancy
+.\" between these versions and the original IEEE and The Open Group
+.\" Standard, the original IEEE and The Open Group Standard is the referee
+.\" document. The original Standard can be obtained online at
+.\" http://www.opengroup.org/unix/online.html.
+.\"
+.\" This notice shall appear on any product containing this material.
+.\"
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.\"
+.\"
+.\" Copyright 1989 AT&T
+.\" Copyright (c) 1992, X/Open Company Limited All Rights Reserved
+.\" Portions Copyright (c) 1995, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright (c) 2014, Joyent, Inc. All rights Reserved.
+.\" Copyright (c) 2014 by Delphix. All rights reserved.
+.\" Copyright 2021 Oxide Computer Company
+.\"
+.Dd October 24, 2021
+.Dt DD 8
+.Os
+.Sh NAME
+.Nm dd
+.Nd convert and copy a file
+.Sh SYNOPSIS
+.Nm
+.Op Ar operand Ns = Ns Ar value
+.Ar ...
+.Sh DESCRIPTION
+The
+.Nm
+utility copies the specified input file to the specified output
+with possible conversions.
+The standard input and output are used by default.
+The input and output block sizes may be specified to take advantage of raw
+physical I/O.
+Sizes are specified in bytes; a number may end with
+.Sy k ,
+.Sy b ,
+or
+.Sy w
+to specify multiplication by 1024, 512, or 2, respectively.
+Numbers may also be separated by
+.Sy x
+to indicate multiplication.
+.Pp
+The
+.Nm
+utility reads the input one block at a time, using the specified
+input block size.
+.Nm
+then processes the block of data actually returned,
+which could be smaller than the requested block size unless the input flag
+.Ar fullblock
+is used.
+.Nm
+applies any conversions that have been specified and writes the resulting data
+to the output in blocks of the specified output block size.
+.Pp
+.Cm cbs
+is used only if
+.Cm ascii ,
+.Cm asciib ,
+.Cm unblock ,
+.Cm ebcdic ,
+.Cm ebcdicb ,
+.Cm ibm ,
+.Cm ibmb ,
+or
+.Cm block
+conversion is specified.
+In the first two cases,
+.Cm cbs
+characters are copied into the conversion buffer, any specified character
+mapping is done, trailing blanks are trimmed, and a
+.Cm NEWLINE
+is added before sending the line to output.
+In the last three cases, characters up to
+.Cm NEWLINE
+are read into the conversion buffer and blanks are added to make up an output
+record of size
+.Cm cbs .
+.Cm ASCII
+files are presumed to contain
+.Cm NEWLINE
+characters.
+If
+.Cm cbs
+is unspecified or
+.Cm 0 ,
+the
+.Cm ascii ,
+.Cm asciib ,
+.Cm ebcdic ,
+.Cm ebcdicb ,
+.Cm ibm ,
+and
+.Cm ibmb
+options convert the character set without changing the input file's block
+structure.
+The
+.Cm unblock
+and
+.Cm block
+options become a simple file copy.
+.Pp
+After completion,
+.Nm
+reports the number of whole and partial input and output blocks.
+.Sh OPERANDS
+The following operands are supported:
+.Bl -tag -width "if=file"
+.It Cm if= Ns Ar file
+.Pp
+Specifies the input path.
+Standard input is the default.
+.It Cm of= Ns Ar file
+.Pp
+Specifies the output path.
+Standard output is the default.
+If the
+.Cm seek Ns = Ns Ar expr
+conversion is not also specified, the output file will be truncated before
+the copy begins, unless
+.Cm conv Ns = Ns Ar notrunc
+is specified.
+If
+.Cm seek Ns = Ns Ar expr
+is specified, but
+.Cm conv Ns = Ns Ar notrunc
+is not, the effect of the copy will be to preserve the blocks in the output
+file over which
+.Nm
+seeks, but no other portion of the output file will be preserved.
+(If the size of the seek plus the size of the input file is less than the
+previous size of the output file, the output file is shortened by the copy.)
+.It Cm ibs Ns = Ns Ar n
+.Pp
+Specifies the input block size in
+.Ar n
+bytes (default is 512).
+.It Cm obs Ns = Ns Ar n
+.Pp
+Specifies the output block size in
+.Ar n
+bytes (default is 512).
+.It Cm bs Ns = Ns Ar n
+.Pp
+Sets both input and output block sizes to
+.Ar n
+bytes, superseding
+.Cm ibs Ns =
+and
+.Cm obs Ns = .
+If no conversion other than
+.Cm sync ,
+.Cm noerror ,
+and
+.Cm notrunc
+is specified, each input block is copied to the output as a
+single block without aggregating short blocks.
+.It Cm cbs Ns = Ns Ar n
+.Pp
+Specifies the conversion block size for
+.Cm block
+and
+.Cm unblock
+in bytes by
+.Ar n
+(default is
+.Cm 0 Ns ).
+If
+.Cm cbs Ns =
+is omitted or given a value of
+.Cm 0 ,
+using
+.Cm block
+or
+.Cm unblock
+produces unspecified results.
+.Pp
+This option is used only if
+.Cm ASCII
+or
+.Cm EBCDIC
+conversion is specified.
+For the
+.Cm ascii
+and
+.Cm asciib
+operands, the input is handled as described for the
+.Cm unblock
+operand except that characters are converted to
+.Cm ASCII
+before the trailing
+.Cm SPACE
+characters are deleted.
+For the
+.Cm ebcdic ,
+.Cm ebcdicb ,
+.Cm ibm ,
+and
+.Cm ibmb
+operands, the input is handled as described for the
+.Cm block
+operand except that the characters are converted to
+.Cm EBCDIC
+or IBM
+.Cm EBCDIC
+after the trailing
+.Cm SPACE
+characters are added.
+.It Cm files Ns = Ns Ar n
+.Pp
+Copies and concatenates
+.Ar n
+input files before terminating (makes sense
+only where input is a magnetic tape or similar device).
+.It Cm skip Ns = Ns Ar n
+.Pp
+Skips
+.Ar n
+input blocks (using the specified input block size) before starting to copy.
+On seekable files, the implementation reads the blocks or seeks past them.
+On non-seekable files, the blocks are read and the data is discarded.
+.It Cm iseek Ns = Ns Ar n
+.Pp
+Seeks
+.Ar n
+blocks from beginning of input file before copying (appropriate
+for disk files, where
+.Cm skip
+can be incredibly slow).
+.It Cm oseek Ns = Ns Ar n
+.Pp
+Seeks
+.Ar n
+blocks from beginning of output file before copying.
+.It Cm seek Ns = Ns Ar n
+.Pp
+Skips
+.Ar n
+blocks (using the specified output block size) from beginning of
+output file before copying.
+On non-seekable files, existing blocks are read and space from the current
+end-of-file to the specified offset, if any, is filled with null bytes.
+On seekable files, the implementation seeks to the specified
+offset or reads the blocks as described for non-seekable files.
+.It Cm ostride Ns = Ns Ar n
+.Pp
+Writes every
+.Ar n Ns
+th block (using the specified output block size) when writing output.
+Skips
+.Ar n
+- 1 blocks after writing each record.
+.It Cm istride Ns = Ns Ar n
+.Pp
+Reads every
+.Ar n Ns
+th block (using the specified input block size) when reading input.
+Skips
+.Ar n
+- 1 blocks after reading each record.
+.It Cm stride Ns = Ns Ar n
+.Pp
+Reads every
+.Ar n Ns
+th block (using the specified input block size) when reading input.
+Skips
+.Ar n
+- 1 blocks after reading each record.
+Also writes every
+.Ar n Ns
+th block (using the specified output block size) when writing output.
+Skips
+.Ar n
+- 1 blocks after writing each record.
+.It Cm count Ns = Ns Ar n
+.Pp
+Copies only
+.Ar n
+input blocks.
+.It Cm conv Ns = Ns Ar value Ns Op , Ns Ar value Ns ...
+.Pp
+Where
+.Ar value Ns
+s are comma-separated symbols from the following list:
+.Bl -hang
+.It Cm ascii
+Converts
+.Cm EBCDIC
+to
+.Cm ASCII .
+.sp
+.It Cm asciib
+Converts
+.Cm EBCDIC
+to
+.Cm ASCII
+using
+.Cm BSD Ns
+-compatible character translations.
+.It Cm ebcdic
+Converts
+.Cm ASCII
+to
+.Cm EBCDIC .
+If converting fixed-length
+.Cm ASCII
+records without
+.Cm NEWLINE Ns
+s, sets up a pipeline with
+.Nm
+.Cm conv Ns = Ns Ar unblock
+beforehand.
+.It Cm ebcdicb
+Converts
+.Cm ASCII
+to
+.Cm EBCDIC
+using
+.Cm BSD Ns
+-compatible character translations.
+If converting fixed-length
+.Cm ASCII
+records without
+.Cm NEWLINE Ns
+s, sets up a pipeline with
+.Nm
+.Cm conv Ns = Ns Ar unblock
+beforehand.
+.It Cm ibm
+Slightly different map of
+.Cm ASCII
+to
+.Cm EBCDIC .
+If converting fixed-length
+.Cm ASCII
+records without
+.Cm NEWLINE Ns
+s, sets up a pipeline with
+.Nm
+.Cm conv Ns = Ns Ar unblock
+beforehand.
+.It Cm ibmb
+Slightly different map of
+.Cm ASCII
+to
+.Cm EBCDIC
+using
+.Cm BSD Ns
+-compatible character translations.
+If converting fixed-length
+.Cm ASCII
+records without
+.Cm NEWLINE Ns
+s, sets up a pipeline with
+.Nm
+.Cm conv Ns = Ns Ar unblock
+beforehand.
+.El
+.Pp
+The
+.Cm ascii
+(or
+.Cm asciib Ns ),
+.Cm ebcdic
+(or
+.Cm ebcdicb Ns ),
+and
+.Cm ibm
+(or
+.Cm ibmb )
+values are mutually exclusive.
+.Bl -hang
+.It Cm block
+Treats the input as a sequence of
+.Cm NEWLINE Ns
+-terminated or
+.Cm EOF Ns
+-terminated variable-length records independent of the input block boundaries.
+Each record is converted to a record with a fixed length specified
+by the conversion block size.
+Any
+.Cm NEWLINE
+character is removed from the input line.
+.Cm SPACE
+characters are appended to lines that are shorter than their conversion block
+size to fill the block.
+Lines that are longer than the conversion block size are truncated to the
+largest number of characters that will fit into that size.
+The number of truncated lines is reported.
+.It Cm unblock
+Converts fixed-length records to variable length.
+Reads a number of bytes equal to the conversion block size (or the number of
+bytes remaining in the input, if less than the conversion block size),
+delete all trailing
+.Cm SPACE
+characters, and append a
+.Cm NEWLINE
+character.
+.El
+.Pp
+The
+.Cm block
+and
+.Cm unblock
+values are mutually exclusive.
+.Bl -hang
+.It Cm lcase
+Maps upper-case characters specified by the
+.Cm LC_CTYPE
+keyword
+.Cm tolower
+to the corresponding lower-case character.
+Characters for which no mapping is specified are not modified by this
+conversion.
+.It Cm ucase
+Maps lower-case characters specified by the
+.Cm LC_CTYPE
+keyword
+.Cm toupper
+to the corresponding upper-case character.
+Characters for which no mapping is specified are not modified by this
+conversion.
+.El
+.Pp
+The
+.Cm lcase
+and
+.Cm ucase
+symbols are mutually exclusive.
+.Bl -hang
+.It Cm swab
+Swaps every pair of input bytes.
+If the current input record is an odd number of bytes, the last byte in the
+input record is ignored.
+.It Cm noerror
+Does not stop processing on an input error.
+When an input error occurs, a diagnostic message is written on standard error,
+followed by the current input and output block counts in the same format as
+used at completion.
+If the
+.Cm sync
+conversion is specified, the missing input is replaced with null
+bytes and processed normally.
+Otherwise, the input block will be omitted from the output.
+.It Cm notrunc
+Does not truncate the output file.
+Preserves blocks in the output file not explicitly written by this invocation
+of
+.Nm .
+(See also the preceding
+.Cm of Ns = Ns Ar file
+operand.)
+.It Cm sync
+Pads every input block to the size of the
+.Cm ibs Ns =
+buffer, appending null bytes.
+(If either
+.Cm block
+or
+.Cm unblock
+is also specified, appends
+.Cm SPACE
+characters, rather than null bytes.)
+.El
+.It Cm iflag Ns = Ns Ar value Ns Op , Ns Ar value ...
+.Pp
+Where
+.Ar value Ns
+s are comma-separated symbols from the following list which
+affect the behavior of reading from the input file:
+.Bl -hang
+.It Cm fullblock
+Accumulate full blocks of input.
+.El
+.It Cm oflag Ns = Ns Ar value Ns Op , Ns Ar value ...
+.ad
+.sp .6
+Where
+.Ar value Ns
+s are comma-separated symbols from the following list which
+affect the behavior of writing the output file:
+.Bl -hang
+.It Cm dsync
+The output file is opened with the
+.Cm O_DSYNC
+flag set.
+All data writes will be synchronous.
+For more information on
+.Cm O_DSYNC
+see
+.Xr fcntl.h 3HEAD .
+.It Cm sync
+The output file is opened with the
+.Cm O_SYNC .
+All data and metadata writes will be synchronous.
+For more information on
+.Cm O_SYNC
+see
+.Xr fcntl.h 3HEAD .
+.El
+.It Cm status Ns = Ns Ar type
+Changes the way that
+.Nm
+outputs information about transfers.
+Only one
+.Ar type may be specified.
+The following are valid values for
+.Ar type :
+.Bl -hang
+.It Cm none
+The program will not output any information and statistics about the transfer.
+This includes when
+.Nm
+receives a signal such as
+.Dv SIGINFO
+and
+.Dv SIGUSR1 .
+Only errors will be emitted.
+.It Cm noxfer
+When printing statistical information such as when the program terminates or in
+response to a signal, only print information about the number of records and
+none of the statistics about the transfer
+.Pq total bytes, total time, and throughput .
+.It Cm progress
+Once a second, output the normal
+.Nm
+transfer statistics that include the total number of bytes transferred, time
+elapsed, and average throughput.
+.El
+.El
+.Pp
+If operands other than
+.Cm conv Ns =
+and
+.Cm oflag Ns =
+are specified more than once, the last specified
+.Cm operand Ns = Ns Ar value
+is used.
+.Pp
+For the
+.Cm bs Ns = ,
+.Cm cbs Ns = ,
+.Cm ibs Ns = ,
+and
+.Cm obs Ns =
+operands, the application must supply an expression specifying a size in bytes.
+The expression,
+.Cm expr ,
+can be:
+.Bl -enum -offset indent -compact
+.It
+a positive decimal number
+.Pp
+.It
+a positive decimal number followed by
+.Sy k ,
+specifying multiplication by 1024
+.Pp
+.It
+a positive decimal number followed by
+.Sy M ,
+specifying multiplication by 1024*1024
+.Pp
+.It
+a positive decimal number followed by
+.Sy G ,
+specifying multiplication by 1024*1024*1024
+.Pp
+.It
+a positive decimal number followed by
+.Sy T ,
+specifying multiplication by 1024*1024*1024*1024
+.Pp
+.It
+a positive decimal number followed by
+.Sy P ,
+specifying multiplication by 1024*1024*1024*1024*1024
+.Pp
+.It
+a positive decimal number followed by
+.Sy E ,
+specifying multiplication by 1024*1024*1024*1024*1024*1024
+.Pp
+.It
+a positive decimal number followed by
+.Sy Z ,
+specifying multiplication by 1024*1024*1024*1024*1024*1024*1024
+.Pp
+.It
+a positive decimal number followed by
+.Sy b ,
+specifying multiplication by 512
+.Pp
+.It
+two or more positive decimal numbers (with or without
+.Sy k
+or
+.Sy b )
+separated by
+.Sy x ,
+specifying the product of the indicated values.
+.El
+.Pp
+All of the operands will be processed before any input is read.
+.Sh SIGNALS
+When
+.Nm
+receives either SIGINFO or SIGUSR1,
+.Nm
+will emit the current input and output block counts, total bytes written,
+total time elapsed, and the number of bytes per second to standard error.
+This is the same information format that
+.Nm
+emits when it successfully completes.
+Users may send SIGINFO via their terminal.
+The default character is ^T, see
+.Xr stty 1
+for more information.
+.Pp
+For
+.Sy SIGINT ,
+.Nm
+writes status information to standard error before exiting.
+.Nm
+takes the standard action for all other signals.
+.Sh USAGE
+See
+.Xr largefile 7
+for the description of the behavior of
+.Nm
+when encountering files greater than or equal to 2 Gbyte (2^31 bytes).
+.Sh EXIT STATUS
+The following exit values are returned:
+.Bl -tag -width ".It Cm >0"
+.It Cm 0
+The input file was copied successfully.
+.It Cm >0
+An error occurred.
+.El
+.Pp
+If an input error is detected and the
+.Cm noerror
+conversion has not been specified, any partial output block will be written
+to the output file, a diagnostic message will be written, and the copy
+operation will be discontinued.
+If some other error is detected, a diagnostic message will be
+written and the copy operation will be discontinued.
+.Sh EXAMPLES
+.Bl -ohang
+.It Sy Example 1 No Copying from one tape drive to another
+.Pp
+The following example copies from tape drive
+.Sy 0
+to tape drive
+.Sy 1 ,
+using a common historical device naming convention.
+.Pp
+.Dl % dd if=/dev/rmt/0h of=/dev/rmt/1h
+.It Sy Example 2 No Stripping the first 10 bytes from standard input
+.Pp
+The following example strips the first 10 bytes from standard input:
+.Pp
+.Dl % dd ibs=10 skip=1
+.It Sy Example 3 No Reading a tape into an ASCII file
+.Pp
+This example reads an
+.Cm EBCDIC
+tape blocked ten 80-byte
+.Cm EBCDIC
+card images per block into the
+.Cm ASCII
+file
+.Sy x :
+.Pp
+.Dl % dd if=/dev/tape of=x ibs=800 cbs=80 conv=ascii,lcase
+.It Sy Example 4 No Using conv=sync to write to tape
+.Pp
+The following example uses
+.Cm conv Ns = Ns Ar sync
+when writing to a tape:
+.Pp
+.Dl % tar cvf - . | compress | dd obs=1024k of=/dev/rmt/0 conv=sync
+.El
+.Sh DIAGNOSTICS
+.Bl -hang
+.It Sy f+p records in(out)
+numbers of full and partial blocks read(written)
+.El
+.Sh ENVIRONMENT VARIABLES
+See
+.Xr environ 7
+for descriptions of the following environment variables
+that affect the execution of
+.Nm :
+.Ev LANG ,
+.Ev LC_ALL ,
+.Ev LC_CTYPE ,
+.Ev LC_MESSAGES ,
+and
+.Ev NLSPATH .
+.Sh INTERFACE STABILITY
+Standard
+.Sh SEE ALSO
+.Xr cp 1 ,
+.Xr sed 1 ,
+.Xr tr 1 ,
+.Xr fcntl.h 3HEAD ,
+.Xr attributes 7 ,
+.Xr environ 7 ,
+.Xr largefile 7 ,
+.Xr standards 7
+.Sh NOTES
+Do not use
+.Nm
+to copy files between file systems having different block sizes.
+.Pp
+Using a blocked device to copy a file will result in extra nulls being added
+to the file to pad the final block to the block boundary.
+.Pp
+When
+.Nm
+reads from a pipe, using the
+.Cm ibs Ns = Ns Ar X
+and
+.Cm obs Ns = Ns Ar Y
+operands, the output will always be blocked in chunks of size Y.
+When
+.Cm bs Ns = Ns Ar Z
+is used, the output blocks will be whatever was available to be read
+from the pipe at the time.
+.Pp
+When using
+.Nm
+to copy files to a tape device, the file size must be a multiple of the
+device sector size (for example, 512 Kbyte).
+To copy files of arbitrary size to a tape device, use
+.Xr tar 1
+or
+.Xr cpio 1 .
diff --git a/usr/src/man/man8/devattr.8 b/usr/src/man/man8/devattr.8
new file mode 100644
index 0000000000..6a3af19642
--- /dev/null
+++ b/usr/src/man/man8/devattr.8
@@ -0,0 +1,123 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 1997 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH DEVATTR 8 "Jul 5, 1990"
+.SH NAME
+devattr \- display device attributes
+.SH SYNOPSIS
+.LP
+.nf
+\fBdevattr\fR [\fB-v\fR] \fIdevice\fR [\fIattribute\fR]...
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBdevattr\fR displays the values for a device's attributes. The display can be
+presented in two formats. Used without the \fB-v\fR option, only the attribute
+values are shown. Used with the \fB-v\fR option, the attributes are shown in
+an \fIattribute\fR\fB=\fR\fIvalue\fR format. When no attributes are given on
+the command line, all attributes for the specified device are displayed in
+alphabetical order by attribute name. If attributes are given on the command
+line, only those attributes are shown, displayed in command line order.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.RS 6n
+Specifies verbose format. Attribute values are displayed in an
+\fIattribute\fR\fB=\fR\fIvalue\fR format.
+.RE
+
+.SH OPERANDS
+.sp
+.LP
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fB\fIattribute\fR\fR
+.ad
+.RS 13n
+Defines which attribute, or attributes, should be shown. Default is to show all
+attributes for a device. See the \fBputdev\fR(8) manual page for a complete
+listing and description of available attributes.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIdevice\fR\fR
+.ad
+.RS 13n
+Defines the device whose attributes should be displayed. Can be the pathname of
+the device or the device alias.
+.RE
+
+.SH EXIT STATUS
+.sp
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 5n
+successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB1\fR\fR
+.ad
+.RS 5n
+Command syntax was incorrect, invalid option was used, or an internal error
+occurred.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB2\fR\fR
+.ad
+.RS 5n
+Device table could not be opened for reading.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB3\fR\fR
+.ad
+.RS 5n
+Requested device could not be found in the device table.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB4\fR\fR
+.ad
+.RS 5n
+Requested attribute was not defined for the specified device.
+.RE
+
+.SH FILES
+.sp
+.LP
+\fB/etc/device.tab\fR
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7),
+.BR getdev (8),
+.BR putdev (8)
diff --git a/usr/src/man/man8/devfree.8 b/usr/src/man/man8/devfree.8
new file mode 100644
index 0000000000..cc500b7142
--- /dev/null
+++ b/usr/src/man/man8/devfree.8
@@ -0,0 +1,123 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 1997 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH DEVFREE 8 "Jul 5, 1990"
+.SH NAME
+devfree \- release devices from exclusive use
+.SH SYNOPSIS
+.LP
+.nf
+\fBdevfree\fR \fIkey\fR [\fIdevice\fR]...
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBdevfree\fR releases devices from exclusive use. Exclusive use is requested
+with the command \fBdevreserv\fR.
+.sp
+.LP
+When \fBdevfree\fR is invoked with only the \fIkey\fR argument, it releases
+all devices that have been reserved for that \fIkey\fR. When called with
+\fIkey\fR and \fIdevice\fR arguments, \fBdevfree\fR releases the specified
+devices that have been reserved with that \fIkey\fR.
+.SH OPERANDS
+.sp
+.LP
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fB\fIdevice\fR\fR
+.ad
+.RS 10n
+Defines device that this command will release from exclusive use. \fIdevice\fR
+can be the pathname of the device or the device alias.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIkey\fR\fR
+.ad
+.RS 10n
+Designates the unique key on which the device was reserved.
+.RE
+
+.SH EXIT STATUS
+.sp
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 5n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB1\fR\fR
+.ad
+.RS 5n
+Command syntax was incorrect, an invalid option was used, or an internal error
+occurred.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB2\fR\fR
+.ad
+.RS 5n
+Device table or device reservation table could not be opened for reading.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB3\fR\fR
+.ad
+.RS 5n
+Reservation release could not be completely fulfilled because one or more of
+the devices was not reserved or was not reserved on the specified key.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/device.tab\fR\fR
+.ad
+.RS 19n
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/devlkfile\fR\fR
+.ad
+.RS 19n
+
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7),
+.BR devreserv (8)
+.SH NOTES
+.sp
+.LP
+The commands \fBdevreserv\fR and \fBdevfree\fR are used to manage the
+availability of devices on a system. These commands do not place any
+constraints on the access to the device. They serve only as a centralized
+bookkeeping point for those who wish to use them. Processes that do not use
+\fBdevreserv\fR may concurrently use a device with a process that has reserved
+that device.
diff --git a/usr/src/man/man8/devfsadm.8 b/usr/src/man/man8/devfsadm.8
new file mode 100644
index 0000000000..02bd3c805d
--- /dev/null
+++ b/usr/src/man/man8/devfsadm.8
@@ -0,0 +1,282 @@
+'\" te
+.\" Copyright (c) 20088888888 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH DEVFSADM 8 "Jun 23, 2008"
+.SH NAME
+devfsadm, devfsadmd \- administration command for /dev
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/devfsadm\fR [\fB-C\fR] [\fB-c\fR \fIdevice_class\fR] [\fB-i\fR \fIdriver_name\fR]
+ [ \fB-n\fR] [\fB-r\fR \fIroot_dir\fR] [\fB-s\fR] [\fB-t\fR \fItable_file\fR] [\fB-v\fR]
+.fi
+
+.LP
+.nf
+\fB/usr/lib/devfsadm/devfsadmd\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBdevfsadm\fR(8) maintains the \fB/dev\fR namespace. It replaces the previous
+suite of \fBdevfs\fR administration tools including \fBdrvconfig\fR(8),
+\fBdisks\fR(8), \fBtapes\fR(8), \fBports\fR(8), \fBaudlinks\fR(8), and
+\fBdevlinks\fR(8).
+.sp
+.LP
+The default operation is to attempt to load every driver in the system and
+attach to all possible device instances. Next, \fBdevfsadm\fR creates logical
+links to device nodes in \fB/dev\fR and \fB/devices\fR and loads the device
+policy.
+.sp
+.LP
+\fBdevfsadmd\fR(8) is the daemon version of \fBdevfsadm\fR(8). The daemon is
+started during system startup and is responsible for handling both
+reconfiguration boot processing and updating \fB/dev\fR and \fB/devices\fR in
+response to dynamic reconfiguration event notifications from the kernel.
+.sp
+.LP
+For compatibility purposes, \fBdrvconfig\fR(8), \fBdisks\fR(8),
+\fBtapes\fR(8), \fBports\fR(8), \fBaudlinks\fR(8), and \fBdevlinks\fR(8)
+are implemented as links to \fBdevfsadm\fR.
+.sp
+.LP
+In addition to managing \fB/dev\fR, \fBdevfsadm\fR also maintains the
+\fBpath_to_inst\fR(5) database.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-C\fR\fR
+.ad
+.RS 19n
+Cleanup mode. Prompt \fBdevfsadm\fR to cleanup dangling \fB/dev\fR links that
+are not normally removed. If the \fB-c\fR option is also used, \fBdevfsadm\fR
+only cleans up for the listed devices' classes.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-c\fR \fIdevice_class\fR\fR
+.ad
+.RS 19n
+Restrict operations to devices of class \fIdevice_class\fR. Solaris defines the
+following values for \fIdevice_class\fR: \fBdisk\fR, \fBtape\fR, \fBport\fR,
+\fBaudio\fR, and \fBpseudo\fR. This option might be specified more than once to
+specify multiple device classes.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-i\fR \fIdriver_name\fR\fR
+.ad
+.RS 19n
+Configure only the devices for the named driver, \fIdriver_name\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR\fR
+.ad
+.RS 19n
+Do not attempt to load drivers or add new nodes to the kernel device tree.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR\fR
+.ad
+.RS 19n
+Suppress any changes to \fB/dev\fR. This is useful with the \fB-v\fR option for
+debugging.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-t\fR \fItable_file\fR\fR
+.ad
+.RS 19n
+Read an alternate \fBdevlink.tab\fR file. \fBdevfsadm\fR normally reads
+\fB/etc/devlink.tab\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-r\fR \fIroot_dir\fR\fR
+.ad
+.RS 19n
+Presume that the \fB/dev\fR directory trees are found under \fIroot_dir\fR, not
+directly under \fBroot\fR (\fB/\fR). No other use or assumptions are made about
+\fIroot_dir\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.RS 19n
+Print changes to \fB/dev\fR in verbose mode.
+.RE
+
+.SH EXIT STATUS
+.sp
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 5n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB1\fR\fR
+.ad
+.RS 5n
+An error occurred.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/devices\fR\fR
+.ad
+.sp .6
+.RS 4n
+device nodes directory
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev\fR\fR
+.ad
+.sp .6
+.RS 4n
+logical symbolic links to /devices
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/devfsadm/devfsadmd\fR\fR
+.ad
+.sp .6
+.RS 4n
+devfsadm daemon
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/.devfsadm_dev.lock\fR\fR
+.ad
+.sp .6
+.RS 4n
+update lock file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/.devfsadm_daemon.lock\fR\fR
+.ad
+.sp .6
+.RS 4n
+daemon lock file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/security/device_policy\fR\fR
+.ad
+.sp .6
+.RS 4n
+device policy file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/security/extra_privs\fR\fR
+.ad
+.sp .6
+.RS 4n
+additional device privileges
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR svcs (1),
+.BR devfs (4FS),
+.BR path_to_inst (5),
+.BR attributes (7),
+.BR privileges (7),
+.BR smf (7),
+.BR add_drv (8),
+.BR modinfo (8),
+.BR modload (8),
+.BR modunload (8),
+.BR rem_drv (8),
+.BR svcadm (8),
+.BR tapes (8)
+.SH NOTES
+.sp
+.LP
+This document does not constitute an \fBAPI\fR. The \fB/devices\fR directory
+might not exist or might have different contents or interpretations in a future
+release. The existence of this notice does not imply that any other
+documentation that lacks this notice constitutes an \fBAPI\fR.
+.sp
+.LP
+\fBdevfsadm\fR no longer manages the \fB/devices\fR name space. See
+\fBdevfs\fR(4FS).
+.sp
+.LP
+The device configuration service is managed by the service management facility,
+\fBsmf\fR(7), under the service identifier, and can be used to start
+\fBdevfsadm\fR during reconfiguration boot by:
+.sp
+.in +2
+.nf
+svc:/system/device/local:default
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Otherwise, \fBdevfsadm\fR is started by:
+.sp
+.in +2
+.nf
+svc:/system/sysevent:default
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Administrative actions on this service, such as enabling, disabling, or
+requesting restart, can be performed using \fBsvcadm\fR(8). The service's
+status can be queried using the \fBsvcs\fR(1) command.
diff --git a/usr/src/man/man8/device_remap.8 b/usr/src/man/man8/device_remap.8
new file mode 100644
index 0000000000..e8a4c8b8e5
--- /dev/null
+++ b/usr/src/man/man8/device_remap.8
@@ -0,0 +1,156 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH DEVICE_REMAP 8 "Dec 24, 2008"
+.SH NAME
+device_remap \- administer the Solaris I/O remapping feature
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/platform/sun4v/sbin/device_remap\fR [\fB-v\fR | \fB-R\fR \fIdir\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+Certain multi-node sun4v platforms, such as T5440 and T5240 servers, have an
+integrated PCI topology that cause the I/O device paths to change in a CPU node
+failover condition. The device remapping script, \fBdevice_remap\fR, remaps the
+device paths in \fB/etc/path_to_inst\fR file and the symlinks under \fB/dev\fR
+to match the hardware.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.sp .6
+.RS 4n
+Displays the \fB/etc/path_to_inst\fR and \fB/dev\fR symlink changes.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-R\fR \fIdir\fR\fR
+.ad
+.sp .6
+.RS 4n
+Perform remapping on the \fB/etc/path_to_inst\fR and \fB/etc/path_to_inst\fR
+files in the root image at \fIdir\fR.
+.RE
+
+.SH USAGE
+.sp
+.LP
+The primary function of \fBdevice_remap\fR is to remap the device paths in the
+\fB/etc/path_to_inst\fR file and the symlinks under \fB/dev\fR in a CPU node
+failover condition to match the hardware.
+.sp
+.LP
+After adding CPU node(s) or removing CPU node(s), boot the system to the OBP
+prompt and use the following procedure:
+.RS +4
+.TP
+1.
+Boot either the failsafe miniroot using: \fBboot\fR \fB-F\fR \fBfailsafe\fR
+, or an install miniroot using \fBboot net\fR \fB-s\fR or similar command.
+.RE
+.RS +4
+.TP
+2.
+Mount the root disk as \fB/mnt\fR.
+.RE
+.RS +4
+.TP
+3.
+Change directory to the mounted root disk:
+.sp
+.in +2
+.nf
+# \fBcd /mnt\fR
+.fi
+.in -2
+.sp
+
+.RE
+.RS +4
+.TP
+4.
+Run \fBdevice_remap\fR script:
+.sp
+.in +2
+.nf
+# \fB/mnt/usr/platform/sun4v/sbin/device_remap\fR
+.fi
+.in -2
+.sp
+
+.RE
+.RS +4
+.TP
+5.
+Boot the system from disk.
+.RE
+.sp
+.LP
+All the error messages are self-explanatory, except for the error message
+"missing ioaliases node" which means the firmware on the system does not
+support device remapping.
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRDisplaying Changes Following Failover
+.sp
+.LP
+The following command displays the \fBpath_to_inst\fR and \fB/dev\fR changes
+following a CPU node failover.
+
+.sp
+.in +2
+.nf
+# \fBdevice_remap -v\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRChanging Directory Prior to Any Changes
+.sp
+.LP
+The following command changes the directory on which the boot image is mounted
+prior to making any changes.
+
+.sp
+.in +2
+.nf
+# \fBdevice_remap -R /newroot\fR
+.fi
+.in -2
+.sp
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Unstable
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7),
+.BR boot (8)
diff --git a/usr/src/man/man8/devinfo.8 b/usr/src/man/man8/devinfo.8
new file mode 100644
index 0000000000..db229c1fc6
--- /dev/null
+++ b/usr/src/man/man8/devinfo.8
@@ -0,0 +1,154 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 1997, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH DEVINFO 8 "May 8, 1997"
+.SH NAME
+devinfo \- print device specific information
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/devinfo\fR \fB-i\fR \fIdevice\fR
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/devinfo\fR \fB-p\fR \fIdevice\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBdevinfo\fR command is used to print device specific information about
+disk devices on standard out. The command can only be used by the superuser.
+.SH OPTIONS
+.sp
+.ne 2
+.na
+\fB\fB-i\fR\fR
+.ad
+.RS 6n
+Prints the following device information:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Device name
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Software version (not supported and prints as \fB0\fR)
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Drive id number (not supported and prints as \fB0\fR)
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Device blocks per cylinder
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Device bytes per block
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Number of device partitions with a block size greater than zero
+.RE
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR\fR
+.ad
+.RS 6n
+Prints the following device partition information:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Device name
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Device major and minor numbers (in hexadecimal)
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Partition start block
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Number of blocks allocated to the partition
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Partition flag
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Partition tag
+.RE
+.RE
+
+.sp
+.LP
+This command is used by various other commands to obtain device specific
+information for the making of file systems and determining partition
+information. If the device cannot be opened, an error message is reported.
+.SH OPERANDS
+.sp
+.ne 2
+.na
+\fB\fIdevice\fR\fR
+.ad
+.RS 10n
+Device name.
+.RE
+
+.SH EXIT STATUS
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 5n
+Successful operation.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB2\fR\fR
+.ad
+.RS 5n
+Operation failed.
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7),
+.BR prtvtoc (8)
diff --git a/usr/src/man/man8/devlinks.8 b/usr/src/man/man8/devlinks.8
new file mode 100644
index 0000000000..e8249c9bf4
--- /dev/null
+++ b/usr/src/man/man8/devlinks.8
@@ -0,0 +1,309 @@
+'\" te
+.\" Copyright (c) 2002 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH DEVLINKS 8 "Jul 15, 2002"
+.SH NAME
+devlinks \- adds /dev entries for miscellaneous devices and pseudo-devices
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/devlinks\fR [\fB-d\fR] [\fB-r\fR \fIrootdir\fR] [\fB-t\fR \fItable-file\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBdevfsadm\fR(8) is now the preferred command for \fB/dev\fR and
+\fB/devices\fR and should be used instead of \fBdevlinks\fR.
+.sp
+.LP
+\fBdevlinks\fR creates symbolic links from the \fB/dev\fR directory tree to the
+actual block- and character-special device nodes under the \fB/devices\fR
+directory tree. The links are created according to specifications found in the
+\fItable-file\fR (by default \fB/etc/devlink.tab\fR).
+.sp
+.LP
+\fBdevlinks\fR is called each time the system is reconfiguration-booted, and
+can only be run after \fBdrvconfig\fR(8) is run.
+.sp
+.LP
+The \fItable-file\fR (normally \fB/etc/devlink.tab\fR) is an ASCII file, with
+one line per record. Comment lines, which must contain a hash character
+(`\fB#\fR') as their first character, are allowed. Each entry must contain at
+least two fields, but may contain three fields. Fields are separated by single
+TAB characters.
+.sp
+.LP
+The fields are:
+.sp
+.ne 2
+.na
+\fB\fIdevfs-spec\fR\fR
+.ad
+.RS 18n
+Specification of devinfo nodes that will have links created for them. This
+specification consists of one or more keyword-value pairs, where the keyword is
+separated from the value by an equal-sign (`\fB=\fR'), and keyword-value pairs
+are separated from one another by semicolons.
+.sp
+The possible keywords are:
+.sp
+.ne 2
+.na
+\fB\fItype\fR\fR
+.ad
+.RS 12n
+The devinfo device type. Possible values are specified in
+.BR ddi_create_minor_node (9F)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIname\fR\fR
+.ad
+.RS 12n
+The name of the node. This is the portion of the \fB/devices\fR tree entry name
+that occurs before the first `\fB@\fR' or `\fB:\fR' character.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIaddr\fR[\fIn\fR]\fR
+.ad
+.RS 12n
+The address portion of a node name. This is the portion of a node name that
+occurs between the `\fB@\fR' and the `\fB:\fR' characters. It is possible that
+a node may have a name without an address part, which is the case for many of
+the pseudo-device nodes. If a number is given after the \fIaddr\fR it specifies
+a match of a particular comma-separated subfield of the address field:
+\fIaddr1\fR matches the first subfield, \fIaddr2\fR matches the second, and so
+on. \fIaddr0\fR is the same as \fIaddr\fR and matches the whole field.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIminor\fR[\fIn\fR]\fR
+.ad
+.RS 12n
+The minor portion of a node name \(mi the portion of the name after the
+`\fB:\fR'. As with \fIaddr\fR above, a number after the \fIminor\fR keyword
+specifies a subfield to match.
+.RE
+
+Of these four specifications, only the \fItype\fR specification must always be
+present.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIname\fR\fR
+.ad
+.RS 18n
+Specification of the \fB/dev\fR links that correspond to the devinfo nodes.
+This field allows \fBdevlinks\fR to determine matching \fB/dev\fR names for the
+\fB/devices\fR nodes it has found. The specification of this field uses
+escape-sequences to allow portions of the \fB/devices\fR name to be included in
+the \fB/dev\fR name, \fIor\fR to allow a counter to be used in creating node
+names. If a counter is used to create a name, the portion of the name before
+the counter must be specified absolutely, and all names in the
+\fB/dev/\fR-subdirectory that match (up to and including the counter) are
+considered to be subdevices of the same device. This means that they should all
+point to the same directory, \fBname\fR and \fBaddress\fR under the
+\fB/devices/\fR-tree
+.sp
+The possible escape-sequences are:
+.sp
+.ne 2
+.na
+\fB\fB\eD\fR\fR
+.ad
+.RS 8n
+Substitute the \fBdevice-name\fR (name) portion of the corresponding devinfo
+node-name.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\eA\fR\fIn\fR\fR
+.ad
+.RS 8n
+Substitute the \fIn\fRth component of the \fBaddress\fR component of the
+corresponding devinfo node name. Sub-components are separated by commas, and
+sub-component \fB0\fR is the whole \fBaddress\fR component.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\eM\fR\fIn\fR\fR
+.ad
+.RS 8n
+Substitute the \fIn\fRth sub-component of the \fBminor\fR component of the
+corresponding devinfo node name. Sub-components are separated by commas, and
+sub-component \fB0\fR is the whole \fBminor\fR component.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\eN\fR\fIn\fR\fR
+.ad
+.RS 8n
+Substitute the value of a 'counter' starting at \fIn\fR. There can be only one
+counter for each dev-spec, and counter-values will be selected so they are as
+low as possible while not colliding with already-existing link names.
+.sp
+In a dev-spec the \fBcounter\fR sequence should not be followed by a digit,
+either explicitly or as a result of another escape-sequence expansion. If this
+occurs, it would not be possible to correctly match already-existing links to
+their counter entries, since it would not be possible to unambiguously parse
+the already-existing \fB/dev\fR-name.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIextra-dev-link\fR\fR
+.ad
+.RS 18n
+Optional specification of an extra \fB/dev\fR link that points to the initial
+\fB/dev\fR link (specified in field 2). This field may contain a \fBcounter\fR
+escape-sequence (as described for the \fIdev-spec\fR field) but may not contain
+any of the other escape-sequences. It provides a way to specify an alias of a
+particular \fB/dev\fR name.
+.RE
+
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-d\fR\fR
+.ad
+.RS 17n
+Debugging mode \(mi print out all \fBdevinfo\fR nodes found, and indicate what
+links would be created, but do not do anything.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-r\fR \fIrootdir\fR\fR
+.ad
+.RS 17n
+Use \fIrootdir\fR as the root of the \fB/dev\fR and \fB/devices\fR directories
+under which the device nodes and links are created. Changing the root directory
+does not change the location of the \fB/etc/devlink.tab\fR default table, nor
+is the root directory applied to the filename supplied to the \fB-t\fR option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-t\fR \fItable-file\fR\fR
+.ad
+.RS 17n
+Set the table file used by \fBdevlinks\fR to specify the links that must be
+created. If this option is not given, \fB/etc/devlink.tab\fR is used. This
+option gives a way to instruct \fBdevlinks\fR just to perform a particular
+piece of work, since just the links-types that \fBdevlinks\fR is supposed to
+create can be specified in a command-file and fed to \fBdevlinks\fR.
+.RE
+
+.SH ERRORS
+.sp
+.LP
+If \fBdevlinks\fR finds an error in a line of the \fItable-file\fR it prints a
+warning message on its standard output and goes on to the next line in the
+\fItable-file\fR without performing any of the actions specified by the
+erroneous rule.
+.sp
+.LP
+If it cannot create a link for some filesystem-related reason it prints an
+error-message and continues with the current rule.
+.sp
+.LP
+If it cannot read necessary data it prints an error message and continues with
+the next \fItable-file\fR line.
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRUsing the \fB/etc/devlink.tab\fR Fields
+.sp
+.LP
+The following are examples of the \fB/etc/devlink.tab\fR fields:
+
+.sp
+.in +2
+.nf
+type=pseudo;name=win win\eM0
+type=ddi_display framebuffer/\eM0 fb\eN0
+.fi
+.in -2
+
+.sp
+.LP
+The first example states that all devices of type \fBpseudo\fR with a name
+component of \fBwin\fR will be linked to \fB/dev/win\fR\fIx,\fR where \fIx\fR
+is the minor-component of the \fIdevinfo-name\fR (this is always a single-digit
+number for the \fBwin\fR driver).
+
+.sp
+.LP
+The second example states that all devinfo nodes of type \fBddi_display\fR will
+be linked to entries under the \fB/dev/framebuffer\fR directory, with names
+identical to the entire minor component of the \fB/devices\fR name. In addition
+an extra link will be created pointing from \fB/dev/fb\fR\fIn\fR to the entry
+under \fB/dev/framebuffer\fR. This entry will use a counter to end the name.
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/dev\fR\fR
+.ad
+.RS 20n
+entries for the miscellaneous devices for general use
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/devices\fR\fR
+.ad
+.RS 20n
+device nodes
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/devlink.tab\fR\fR
+.ad
+.RS 20n
+the default rule-file
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR devfs (4FS),
+.BR attributes (7),
+.BR devfsadm (8),
+.BR ddi_create_minor_node (9F)
+.SH BUGS
+.sp
+.LP
+It is very easy to construct mutually-contradictory link specifications, or
+specifications that can never be matched. The program does not check for these
+conditions.
diff --git a/usr/src/man/man8/devnm.8 b/usr/src/man/man8/devnm.8
new file mode 100644
index 0000000000..09003b5aef
--- /dev/null
+++ b/usr/src/man/man8/devnm.8
@@ -0,0 +1,72 @@
+'\" te
+.\" Copyright (c) 1996, Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH DEVNM 8 "Sep 14, 1992"
+.SH NAME
+devnm \- device name
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/devnm\fR \fIname\fR [\fIname\fR]...
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBdevnm\fR command identifies the special file associated with the mounted
+file system where the argument \fIname\fR resides. One or more \fIname\fR can
+be specified.
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRUsing the devnm Command
+.sp
+.LP
+Assuming that \fB/usr\fR is mounted on \fB/dev/dsk/c0t3d0s6\fR, the following
+command :
+
+.sp
+.in +2
+.nf
+/usr/sbin/devnm /usr
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+produces:
+.sp
+.in +2
+.nf
+/dev/dsk/c0t3d0s6 /usr
+.fi
+.in -2
+.sp
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/dev/dsk/*\fR\fR
+.ad
+.RS 15n
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/mnttab\fR\fR
+.ad
+.RS 15n
+
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR mnttab (5),
+.BR attributes (7)
diff --git a/usr/src/man/man8/devprop.8 b/usr/src/man/man8/devprop.8
new file mode 100644
index 0000000000..09d54b2404
--- /dev/null
+++ b/usr/src/man/man8/devprop.8
@@ -0,0 +1,169 @@
+'\" te
+.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH DEVPROP 8 "Sep 26, 2007"
+.SH NAME
+devprop \- display device properties
+.SH SYNOPSIS
+.LP
+.nf
+\fB/sbin/devprop\fR [\fB-n\fR \fIdevice-path\fR] [\fB-vq\fR] [-\fB{b|i|l|s}\fR] [\fIproperty\fR[...]]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBdevprop\fR command displays named device properties from the device
+tree.
+.sp
+.LP
+If a device path is specified on the command line, \fBdevprop\fR displays
+device properties for that device node.
+.sp
+.LP
+The output formats, while Volatile, are patterned after those of
+\fBprtconf\fR(8).
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-b\fR\fR
+.ad
+.sp .6
+.RS 4n
+The properties to be output are sequences of bytes (\fBDI_PROP_TYPE_BYTES\fR).
+\fB-b\fR, \fB-i\fR, \fB-l\fR, and \fB-s\fR are mutually exclusive of one
+another.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-i\fR\fR
+.ad
+.sp .6
+.RS 4n
+The properties to be output are integers (\fBDI_PROP_TYPE_INT\fR).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR\fR
+.ad
+.sp .6
+.RS 4n
+The properties to be output are 64-bit integers (\fBDI_PROP_TYPE_INT64\fR).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR\fR
+.ad
+.sp .6
+.RS 4n
+The properties to be output are strings (\fBDI_PROP_TYPE_STRING\fR) (the
+default).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR \fIdevice-path\fR\fR
+.ad
+.sp .6
+.RS 4n
+The path to a target device node for which properties are displayed. The
+default path is that of the root node (equivalent to specifying \fB-n\fR
+\fB/\fR).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-q\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies quoted output mode, in which string properties are output surrounded
+by double quotation marks (\fB"\fR).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies verbose mode, in which the name of the property is output before its
+value.
+.RE
+
+.SH OPERANDS
+.sp
+.LP
+The following operand is supported:
+.sp
+.ne 2
+.na
+\fB\fIproperty\fR...\fR
+.ad
+.sp .6
+.RS 4n
+Name of the property to be displayed.
+.RE
+
+.SH EXIT STATUS
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.sp .6
+.RS 4n
+No error occurred.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnon-zero\fR\fR
+.ad
+.sp .6
+.RS 4n
+An error occurred.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability See below.
+.TE
+
+.sp
+.LP
+The command invocation and output are both Volatile. The location of the
+utility is Committed.
+.SH SEE ALSO
+.sp
+.LP
+.BR libdevinfo (3LIB),
+.BR attributes (7),
+.BR prtconf (8)
diff --git a/usr/src/man/man8/devreserv.8 b/usr/src/man/man8/devreserv.8
new file mode 100644
index 0000000000..46ab4f3564
--- /dev/null
+++ b/usr/src/man/man8/devreserv.8
@@ -0,0 +1,182 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 1997 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH DEVRESERV 8 "Jul 5, 1990"
+.SH NAME
+devreserv \- reserve devices for exclusive use
+.SH SYNOPSIS
+.LP
+.nf
+\fBdevreserv\fR [\fIkey\fR [\fIdevice-list\fR]...]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBdevreserv\fR reserves devices for exclusive use. When the device is no
+longer required, use \fBdevfree\fR to release it.
+.sp
+.LP
+\fBdevreserv\fR reserves at most one device per \fIdevice-list\fR. Each list
+is searched in linear order until the first available device is found. If a
+device cannot be reserved from each list, the entire reservation fails.
+.sp
+.LP
+When \fBdevreserv\fR is invoked without arguments, it lists the devices that
+are currently reserved and shows to which key it was reserved. When
+\fBdevreserv\fR is invoked with only the \fIkey\fR argument, it lists the
+devices that are currently reserved to that key.
+.SH OPERANDS
+.sp
+.LP
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fB\fIdevice-list\fR\fR
+.ad
+.RS 15n
+Defines a list of devices that \fBdevreserv\fR will search to find an available
+device. The list must be formatted as a single argument to the shell.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIkey\fR\fR
+.ad
+.RS 15n
+Designates a unique key on which the device will be reserved. The key must be a
+positive integer.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRReserving a Floppy Disk and a Cartridge Tape
+.sp
+.LP
+The following example reserves a floppy disk and a cartridge tape:
+
+.sp
+.in +2
+.nf
+$ key=$$
+$ echo "The current Process ID is equal to: $key"
+ The Current Process ID is equal to: 10658
+$ devreserv $key diskette1 ctape1
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRListing All Devices Currently Reserved
+.sp
+.LP
+The following example lists all devices currently reserved:
+
+.sp
+.in +2
+.nf
+$ devreserv
+ disk1 2423
+ diskette1 10658
+ ctape1 10658
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRListing All Devices Currently Reserved to a Particular Key
+.sp
+.LP
+The following example lists all devices currently reserved to a particular key:
+
+.sp
+.in +2
+.nf
+$ devreserv $key
+ diskette1
+ ctape1
+.fi
+.in -2
+.sp
+
+.SH EXIT STATUS
+.sp
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 5n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB1\fR\fR
+.ad
+.RS 5n
+Command syntax was incorrect, an invalid was option used, or an internal error
+occurred.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB2\fR\fR
+.ad
+.RS 5n
+Device table or device reservation table could not be opened for reading.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB3\fR\fR
+.ad
+.RS 5n
+Device reservation request could not be fulfilled.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/device.tab\fR\fR
+.ad
+.RS 19n
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/devlkfile\fR\fR
+.ad
+.RS 19n
+
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7),
+.BR devfree (8)
+.SH NOTES
+.sp
+.LP
+The commands \fBdevreserv\fR and \fBdevfree\fR are used to manage the
+availability of devices on a system. Their use is on a participatory basis and
+they do not place any constraints on the actual access to the device. They
+serve as a centralized bookkeeping point for those who wish to use them.
+Devices which have been reserved cannot be used by processes which utilize the
+device reservation functions until the reservation has been canceled. However,
+processes that do not use device reservation may use a device that has been
+reserved since such a process would not have checked for its reservation
+status.
diff --git a/usr/src/man/man8/df.8 b/usr/src/man/man8/df.8
new file mode 100644
index 0000000000..bdded96125
--- /dev/null
+++ b/usr/src/man/man8/df.8
@@ -0,0 +1,550 @@
+.\"
+.\" Sun Microsystems, Inc. gratefully acknowledges The Open Group for
+.\" permission to reproduce portions of its copyrighted documentation.
+.\" Original documentation from The Open Group can be obtained online at
+.\" http://www.opengroup.org/bookstore/.
+.\"
+.\" The Institute of Electrical and Electronics Engineers and The Open
+.\" Group, have given us permission to reprint portions of their
+.\" documentation.
+.\"
+.\" In the following statement, the phrase ``this text'' refers to portions
+.\" of the system documentation.
+.\"
+.\" Portions of this text are reprinted and reproduced in electronic form
+.\" in the SunOS Reference Manual, from IEEE Std 1003.1, 2004 Edition,
+.\" Standard for Information Technology -- Portable Operating System
+.\" Interface (POSIX), The Open Group Base Specifications Issue 6,
+.\" Copyright (C) 2001-2004 by the Institute of Electrical and Electronics
+.\" Engineers, Inc and The Open Group. In the event of any discrepancy
+.\" between these versions and the original IEEE and The Open Group
+.\" Standard, the original IEEE and The Open Group Standard is the referee
+.\" document. The original Standard can be obtained online at
+.\" http://www.opengroup.org/unix/online.html.
+.\"
+.\" This notice shall appear on any product containing this material.
+.\"
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.\"
+.\"
+.\" Copyright 1989 AT&T
+.\" Portions Copyright (c) 1992, X/Open Company Limited All. Rights Reserved.
+.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved.
+.\"
+.TH DF 8 "Apr 14, 2016"
+.SH NAME
+df \- displays number of free disk blocks and free files
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/bin/df\fR [\fB-F\fR \fIFSType\fR] [\fB-abeghklmnPtVvZ\fR]
+ [\fB-o\fR \fIFSType-specific_options\fR]
+ [\fIblock_device\fR | \fIdirectory\fR | \fIfile\fR | \fIresource\fR ...]
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBdf\fR utility displays the amount of disk space occupied by mounted or
+unmounted file systems, the amount of used and available space, and how much of
+the file system's total capacity has been used. The file system is specified by
+device, or by referring to a file or directory on the specified file system.
+.sp
+.LP
+Used without operands or options, \fBdf\fR reports on all mounted file systems.
+.sp
+.LP
+\fBdf\fR may not be supported for all \fIFSTypes\fR.
+.sp
+.LP
+If \fBdf\fR is run on a networked mount point that the automounter has not yet
+mounted, the file system size will be reported as zero. As soon as the
+automounter mounts the file system, the sizes will be reported correctly.
+.SH OPTIONS
+.ne 2
+.na
+\fB\fB-a\fR\fR
+.ad
+.sp .6
+.RS 4n
+Reports on all file systems including ones whose entries in \fB/etc/mnttab\fR
+(see \fBmnttab\fR(5)) have the \fBignore\fR option set.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-b\fR\fR
+.ad
+.sp .6
+.RS 4n
+Prints the total number of kilobytes free.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-e\fR\fR
+.ad
+.sp .6
+.RS 4n
+Prints only the number of files free.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-F\fR \fIFSType\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the \fIFSType\fR on which to operate. The \fB-F\fR option is intended
+for use with unmounted file systems. The \fIFSType\fR should be specified here
+or be determinable from \fB/etc/vfstab\fR (see \fBvfstab\fR(5)) by matching the
+\fIdirectory\fR, \fIblock_device\fR, or \fIresource\fR with an entry in the
+table, or by consulting \fB/etc/default/fs\fR. See \fBdefault_fs\fR(5).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-g\fR\fR
+.ad
+.sp .6
+.RS 4n
+Prints the entire \fBstatvfs\fR(2) structure. This option is used only for
+mounted file systems. It can not be used with the \fB-o\fR option. This option
+overrides the \fB-b\fR, \fB-e\fR, \fB-k\fR, \fB-n\fR, \fB-P\fR, and \fB-t\fR
+options.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-h\fR\fR
+.ad
+.sp .6
+.RS 4n
+Like \fB-k\fR, except that sizes are in a more human readable format. The
+output consists of one line of information for each specified file system. This
+information includes the file system name, the total space allocated in the
+file system, the amount of space allocated to existing files, the total amount
+of space available for the creation of new files by unprivileged users, and the
+percentage of normally available space that is currently allocated to all files
+on the file system. All sizes are scaled to a human readable format, for
+example, \fB14K\fR, \fB234M\fR, \fB2.7G\fR, or \fB3.0T\fR. Scaling is done by
+repetitively dividing by \fB1024\fR.
+.sp
+This option overrides the \fB-b\fR, \fB-e\fR, \fB-g\fR, \fB-k\fR, \fB-n\fR,
+\fB-t\fR, and \fB-V\fR options. This option only works on mounted filesystems
+and can not be used together with \fB-o\fR option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-k\fR\fR
+.ad
+.sp .6
+.RS 4n
+Prints the allocation in kbytes. The output consists of one line of information
+for each specified file system. This information includes the file system name,
+the total space allocated in the file system, the amount of space allocated to
+existing files, the total amount of space available for the creation of new
+files by unprivileged users, and the percentage of normally available space
+that is currently allocated to all files on the file system. This option
+overrides the \fB-b\fR, \fB-e\fR, \fB-n\fR, and \fB-t\fR options.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR\fR
+.ad
+.sp .6
+.RS 4n
+Reports on local file systems only. This option is used only for mounted file
+systems. It can not be used with the \fB-o\fR option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-m\fR\fR
+.ad
+.sp .6
+.RS 4n
+Like -k, except prints the allocation in mbytes.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR\fR
+.ad
+.sp .6
+.RS 4n
+Prints only the \fIFSType\fR name. Invoked with no operands, this option prints
+a list of mounted file system types. This option is used only for mounted file
+systems. It can not be used with the \fB-o\fR option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-o\fR \fIFSType-specific_options\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies \fIFSType-specific\fR options. These options are comma-separated,
+with no intervening spaces. See the manual page for the \fIFSType-specific\fR
+command for details.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-t\fR\fR
+.ad
+.sp .6
+.RS 4n
+Prints full listings with totals. This option overrides the \fB-b\fR, \fB-e\fR,
+and \fB-n\fR options.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-V\fR\fR
+.ad
+.sp .6
+.RS 4n
+Echoes the complete set of file system specific command lines, but does not
+execute them. The command line is generated by using the options and operands
+provided by the user and adding to them information derived from
+\fB/etc/mnttab\fR, \fB/etc/vfstab\fR, or \fB/etc/default/fs\fR. This option may
+be used to verify and validate the command line.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-Z\fR\fR
+.ad
+.sp .6
+.RS 4n
+Displays mounts in all visible zones. By default, \fBdf\fR only displays mounts
+located within the current zone. This option has no effect in a non-global
+zone.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.sp .6
+.RS 4n
+Like \fB-k\fR, except that sizes are displayed in multiples of the smallest
+block size supported by each specified file system.
+.sp
+The output consists of one line of information for each file system. This one
+line of information includes the following:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+the file system's mount point
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+the file system's name
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+the total number of blocks allocated to the file system
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+the number of blocks allocated to existing files
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+the number of blocks available for the creation of new files by unprivileged
+users
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+the percentage of blocks in use by files
+.RE
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-P\fR\fR
+.ad
+.sp .6
+.RS 4n
+Same as \fB-h\fR except in 512-byte units.
+.RE
+
+.SH OPERANDS
+.LP
+The \fBdf\fR utility interprets operands according to the following precedence:
+\fIblock_device\fR, \fIdirectory\fR, \fIfile\fR. The following operands are
+supported:
+.sp
+.ne 2
+.na
+\fB\fIblock_device\fR\fR
+.ad
+.sp .6
+.RS 4n
+Represents a block special device (for example, \fB/dev/dsk/c1d0s7\fR).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIdirectory\fR\fR
+.ad
+.sp .6
+.RS 4n
+Represents a valid directory name. \fBdf\fR reports on the file system that
+contains \fIdirectory\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIfile\fR\fR
+.ad
+.sp .6
+.RS 4n
+Represents a valid file name. \fBdf\fR reports on the file system that contains
+\fIfile\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIresource\fR\fR
+.ad
+.sp .6
+.RS 4n
+Represents an \fBNFS\fR resource name.
+.RE
+
+.SH USAGE
+.LP
+See \fBlargefile\fR(7) for the description of the behavior of \fBdf\fR when
+encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRExecuting the \fBdf\fR command
+.sp
+.LP
+The following example shows the \fBdf\fR command and its output:
+
+.sp
+.in +2
+.nf
+example% \fB/usr/bin/df\fR
+
+/ (/dev/dsk/c0t0d0s0 ): 287530 blocks 92028 files
+/system/contract (ctfs ): 0 blocks 2147483572 files
+/system/object (objfs ): 0 blocks 2147483511 files
+/usr (/dev/dsk/c0t0d0s6 ): 1020214 blocks 268550 files
+/proc (/proc ): 0 blocks 878 files
+/dev/fd (fd ): 0 blocks 0 files
+/etc/mnttab (mnttab ): 0 blocks 0 files
+/var/run (swap ): 396016 blocks 9375 files
+/tmp (swap ): 396016 blocks 9375 files
+/opt (/dev/dsk/c0t0d0s5 ): 381552 blocks 96649 files
+/export/home (/dev/dsk/c0t0d0s7 ): 434364 blocks 108220 files
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+where the columns represent the mount point, device (or "filesystem", according
+to \fBdf\fR \fB-k\fR), free blocks, and free files, respectively. For contract
+file systems, \fB/system/contract\fR is the mount point, \fBctfs\fR is the
+contract file system (used by \fBSMF\fR) with 0 free blocks and
+2147483582(\fBINTMAX\fR-1) free files. For object file systems,
+\fB/system/object\fR is the mount point, \fBobjfs\fR is the object file system
+(see \fBobjfs\fR(4FS)) with 0 free blocks and 2147483511 free files.
+.LP
+\fBExample 2 \fRWriting Portable Information About the \fB/usr\fR File System
+.sp
+.LP
+The following example writes portable information about the \fB/usr\fR file
+system:
+
+.sp
+.in +2
+.nf
+example% \fB/usr/bin/df -P /usr\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRWriting Portable Information About the \fB/usr/src\fR file
+System
+.sp
+.LP
+Assuming that \fB/usr/src\fR is part of the \fB/usr\fR file system, the
+following example writes portable information :
+
+.sp
+.in +2
+.nf
+example% \fB/usr/bin/df -P /usr/src\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 4 \fRUsing \fBdf\fR to Display Inode Usage
+.sp
+.LP
+The following example displays inode usage on all \fBufs\fR file systems:
+
+.sp
+.in +2
+.nf
+example%\fB/usr/bin/df -F ufs -o i\fR
+.fi
+.in -2
+.sp
+
+.SH ENVIRONMENT VARIABLES
+.LP
+See \fBenviron\fR(7) for descriptions of the following environment variables
+that affect the execution of \fBdf\fR: \fBLANG\fR, \fBLC_ALL\fR,
+\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
+.SH EXIT STATUS
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.sp .6
+.RS 4n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB>0\fR\fR
+.ad
+.sp .6
+.RS 4n
+An error occurred.
+.RE
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/dev/dsk/*\fR\fR
+.ad
+.sp .6
+.RS 4n
+Disk devices
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/default/fs\fR\fR
+.ad
+.sp .6
+.RS 4n
+Default local file system type. Default values can be set for the following
+flags in \fB/etc/default/fs\fR. For example: \fBLOCAL=ufs\fR, where \fBLOCAL\fR
+is the default partition for a command if no FSType is specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/mnttab\fR\fR
+.ad
+.sp .6
+.RS 4n
+Mount table
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/vfstab\fR\fR
+.ad
+.sp .6
+.RS 4n
+List of default parameters for each file system
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Standard
+.TE
+
+.SH SEE ALSO
+.LP
+.BR find (1),
+.BR statvfs (2),
+.BR objfs (4FS),
+.BR default_fs (5),
+.BR mnttab (5),
+.BR vfstab (5),
+.BR attributes (7),
+.BR environ (7),
+.BR largefile (7),
+.BR standards (7),
+.BR df_ufs (8),
+.BR mount (8)
+.SH NOTES
+.LP
+If \fBUFS\fR logging is enabled on a file system, the disk space used for the
+log is reflected in the \fBdf\fR report. The log is allocated from free blocks
+on the file system, and it is sized approximately \fB1\fR Mbyte per \fB1\fR
+Gbyte of file system, up to 256 Mbytes. The log size may be larger (up to a
+maximum of 512 Mbytes) depending on the number of cylinder groups present in
+the file system.
diff --git a/usr/src/man/man8/df_ufs.8 b/usr/src/man/man8/df_ufs.8
new file mode 100644
index 0000000000..0f13233fd8
--- /dev/null
+++ b/usr/src/man/man8/df_ufs.8
@@ -0,0 +1,100 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 2003 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH DF_UFS 8 "Feb 25, 2005"
+.SH NAME
+df_ufs \- report free disk space on ufs file systems
+.SH SYNOPSIS
+.LP
+.nf
+\fBdf\fR \fB-F\fR ufs [\fIgeneric_options\fR] [\fB-o\fR i] [\fIdirectory\fR | \fIspecial\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBdf\fR displays the amount of disk space occupied by \fBufs\fR file systems,
+the amount of used and available space, and how much of the file system's total
+capacity has been used.The amount of space reported as used and available is
+less than the amount of space in the file system; this is because the system
+reserves a fraction of the space in the file system to allow its file system
+allocation routines to work well. The amount reserved is typically about 10%;
+this can be adjusted using \fBtunefs\fR(8). When all the space on the file
+system except for this reserve is in use, only the superuser can allocate new
+files and data blocks to existing files. When the file system is overallocated
+in this way, \fBdf\fR might report that the file system is more than 100%
+utilized.If neither \fIdirectory\fR nor \fIspecial\fR is specified, \fBdf\fR
+displays information for all mounted ufs file systems.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fIgeneric_options\fR\fR
+.ad
+.RS 19n
+Options supported by the generic \fBdf\fR command. See \fBdf\fR(8) for a
+description of these options.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-o\fR\fR
+.ad
+.RS 19n
+Specify \fBufs\fR file system specific options. The available option is:
+.sp
+.ne 2
+.na
+\fB\fBi\fR\fR
+.ad
+.RS 5n
+Report the number of used and free inodes. This option can not be used with
+\fIgeneric_options\fR.
+.RE
+
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/mnttab\fR\fR
+.ad
+.RS 15n
+list of file systems currently mounted
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+\fBdf\fR(8), \fBfsck\fR(8), \fBfstyp\fR(8), \fBtunefs\fR(8),
+\fBmnttab\fR(5), \fBattributes\fR(7), \fBufs\fR(4FS),
+.SH NOTES
+.sp
+.LP
+\fBdf\fR calculates its results differently for mounted and unmounted file
+systems. For unmounted systems, the numbers reflect the 10% reservation. This
+reservation is not reflected in \fBdf\fR output for mounted file systems. For
+this reason, the available space reported by the generic command can differ
+from the available space reported by this module.
+.sp
+.LP
+\fBdf\fR might report remaining capacity even though \fBsyslog\fR warns
+\fBfilesystem full\fR. This issue can occur because \fBdf\fR only uses the
+available fragment count to calculate available space, but the file system
+requires contiguous sets of fragments for most allocations.
+.sp
+.LP
+If you suspect that you have exhausted contiguous fragments on your file
+system, you can use the \fBfstyp\fR(8) utility with the \fB-v\fR option. In
+the \fBfstyp\fR output, look at the \fBnbfree\fR (number of blocks free) and
+\fBnffree\fR (number of fragments free) fields. On unmounted filesystems, you
+can use \fBfsck\fR(8) and observe the last line of output, which reports,
+among other items, the number of fragments and the degree of fragmentation. See
+\fBfsck\fR(8).
diff --git a/usr/src/man/man8/dfmounts.8 b/usr/src/man/man8/dfmounts.8
new file mode 100644
index 0000000000..c59c924461
--- /dev/null
+++ b/usr/src/man/man8/dfmounts.8
@@ -0,0 +1,140 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 1995, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH DFMOUNTS 8 "May 24, 2005"
+.SH NAME
+dfmounts \- display mounted resource information
+.SH SYNOPSIS
+.LP
+.nf
+\fBdfmounts\fR [\fB-F\fR \fIFSType\fR] [\fB-h\fR] [\fB-o\fR \fIspecific_options\fR]
+ [\fIrestriction\fR]...
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBdfmounts\fR shows the local resources shared through a distributed file
+system \fIFSType\fR along with a list of clients that have the resource
+mounted. If \fIrestriction\fR is not specified, \fBdfmounts\fR shows file
+systems that are currently shared on any \fBNFS\fR server.
+\fIspecific_options\fR as well as the availability and semantics of
+\fIrestriction\fR are specific to particular distributed file system types.
+.sp
+.LP
+If \fBdfmounts\fR is entered without arguments, remote resources currently
+mounted on the local system are displayed, regardless of file system type.
+However, the \fBdfmounts\fR command does not display the names of NFS Version 4
+clients.
+.SS "\fBdfmounts\fR Output"
+.sp
+.LP
+The output of \fBdfmounts\fR consists of an optional header line (suppressed
+with the \fB-h\fR flag) followed by a list of lines containing
+whitespace-separated fields. For each resource, the fields are:
+.sp
+.in +2
+.nf
+\fIresource server pathname clients ...\fR
+.fi
+.in -2
+
+.sp
+.LP
+where:
+.sp
+.ne 2
+.na
+\fB\fIresource\fR\fR
+.ad
+.RS 12n
+Specifies the resource name that must be given to the \fBmount\fR(8) command.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIserver\fR\fR
+.ad
+.RS 12n
+Specifies the system from which the resource was mounted.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIpathname\fR\fR
+.ad
+.RS 12n
+Specifies the pathname that must be given to the \fBshare\fR(8) command.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIclients\fR\fR
+.ad
+.RS 12n
+Is a comma-separated list of systems that have mounted the resource. Clients
+are listed in the form \fIdomain.\fR, \fIdomain.system\fR, or \fIsystem\fR,
+depending on the file system type.
+.RE
+
+.sp
+.LP
+A field can be null. Each null field is indicated by a hyphen (\(mi) unless the
+remainder of the fields on the line are also null, in which case the hyphen can
+be omitted.
+.sp
+.LP
+Fields with whitespace are enclosed in quotation marks (\fB"\|"\fR).
+.SH OPTIONS
+.sp
+.ne 2
+.na
+\fB\fB-F\fR \fIFSType\fR\fR
+.ad
+.RS 23n
+Specify filesystem type. Defaults to the first entry in \fB/etc/dfs/fstypes\fR.
+\fBNote\fR: currently the only valid \fIFSType\fR is \fBnfs\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-h\fR\fR
+.ad
+.RS 23n
+Suppress header line in output.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-o\fR \fIspecific_options\fR\fR
+.ad
+.RS 23n
+Specify options specific to the filesystem provided by the \fB-F\fR option.
+\fBNote\fR: currently no options are supported.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/dfs/fstypes\fR\fR
+.ad
+.RS 20n
+file system types
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7),
+.BR dfshares (8),
+.BR mount (8),
+.BR share (8),
+.BR unshare (8)
diff --git a/usr/src/man/man8/dfmounts_nfs.8 b/usr/src/man/man8/dfmounts_nfs.8
new file mode 100644
index 0000000000..7571e3fc42
--- /dev/null
+++ b/usr/src/man/man8/dfmounts_nfs.8
@@ -0,0 +1,123 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 1995, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH DFMOUNTS_NFS 8 "Nov 6, 2000"
+.SH NAME
+dfmounts_nfs \- display mounted NFS resource information
+.SH SYNOPSIS
+.LP
+.nf
+\fBdfmounts\fR [\fB-F\fR nfs] [\fB-h\fR] [\fIserver\fR]...
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBdfmounts\fR shows the local resources shared through \fBNFS,\fR along with
+the list of clients that have mounted the resource. The \fB-F\fR flag may be
+omitted if \fBNFS\fR is the only file system type listed in the file
+\fB/etc/dfs/fstypes\fR.
+.sp
+.LP
+\fBdfmounts\fR without options, displays all remote resources mounted on the
+local system, regardless of file system type.
+.sp
+.LP
+The output of \fBdfmounts\fR consists of an optional header line (suppressed
+with the \fB-h\fR flag) followed by a list of lines containing
+whitespace-separated fields. For each resource, the fields are:
+.sp
+.in +2
+.nf
+\fIresource server pathname clients ...\fR
+.fi
+.in -2
+
+.sp
+.LP
+where
+.sp
+.ne 2
+.na
+\fB\fIresource\fR\fR
+.ad
+.RS 12n
+Does not apply to \fBNFS.\fR Printed as a hyphen (-).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIserver\fR\fR
+.ad
+.RS 12n
+Specifies the system from which the resource was mounted.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIpathname\fR\fR
+.ad
+.RS 12n
+Specifies the pathname that must be given to the \fBshare\fR(8) command.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIclients\fR\fR
+.ad
+.RS 12n
+Is a comma-separated list of systems that have mounted the resource.
+.RE
+
+.SH OPTIONS
+.sp
+.ne 2
+.na
+\fB\fB-F\fR \fBnfs\fR\fR
+.ad
+.RS 10n
+Specifies the \fBnfs\fR-FSType.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-h\fR\fR
+.ad
+.RS 10n
+Suppress header line in output.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIserver\fR\fR
+.ad
+.RS 10n
+Displays information about the resources mounted from each server, where
+\fIserver\fR can be any system on the network. If no server is specified, the
+\fIserver\fR is assumed to be the local system.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/dfs/fstypes\fR\fR
+.ad
+.RS 20n
+
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7),
+.BR mount (8),
+.BR share (8),
+.BR unshare (8)
diff --git a/usr/src/man/man8/dfshares.8 b/usr/src/man/man8/dfshares.8
new file mode 100644
index 0000000000..3c1a153ea7
--- /dev/null
+++ b/usr/src/man/man8/dfshares.8
@@ -0,0 +1,130 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 1995, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH DFSHARES 8 "Nov 6, 2000"
+.SH NAME
+dfshares \- list available resources from remote or local systems
+.SH SYNOPSIS
+.LP
+.nf
+\fBdfshares\fR [\fB-F\fR \fIFSType\fR] [\fB-h\fR] [\fB-o\fR \fIspecific_options\fR] [\fIserver\fR]...
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBdfshares\fR provides information about resources available to the host
+through a distributed file system of type \fIFSType\fR. \fIspecific_options\fR
+as well as the semantics of \fIserver\fR are specific to particular distributed
+file systems.
+.sp
+.LP
+If \fBdfshares\fR is entered without arguments, all resources currently shared
+on the local system are displayed, regardless of file system type.
+.sp
+.LP
+The output of \fBdfshares\fR consists of an optional header line (suppressed
+with the \fB-h\fR flag) followed by a list of lines containing
+whitespace-separated fields. For each resource, the fields are:
+.sp
+.in +2
+.nf
+\fIresource server access transport\fR
+.fi
+.in -2
+
+.sp
+.LP
+where
+.sp
+.ne 2
+.na
+\fB\fIresource\fR\fR
+.ad
+.RS 13n
+Specifies the resource name that must be given to the \fBmount\fR(8) command.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIserver\fR\fR
+.ad
+.RS 13n
+Specifies the name of the system that is making the resource available.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIaccess\fR\fR
+.ad
+.RS 13n
+Specifies the access permissions granted to the client systems, either \fBro\fR
+(for read-only) or \fBrw\fR (for read/write). If \fBdfshares\fR cannot
+determine access permissions, a hyphen (\fB\(mi\fR) is displayed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fItransport\fR\fR
+.ad
+.RS 13n
+Specifies the transport provider over which the resource is shared.
+.RE
+
+.sp
+.LP
+A field may be null. Each null field is indicated by a hyphen (\(mi) unless the
+remainder of the fields on the line are also null; in which case, the hyphen
+may be omitted.
+.SH OPTIONS
+.sp
+.ne 2
+.na
+\fB\fB-F\fR \fIFSType\fR\fR
+.ad
+.RS 23n
+Specify filesystem type. Defaults to the first entry in
+\fB/etc/dfs/fstypes\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-h\fR\fR
+.ad
+.RS 23n
+Suppress header line in output.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-o\fR \fIspecific_options\fR\fR
+.ad
+.RS 23n
+Specify options specific to the filesystem provided by the \fB-F\fR option.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/dfs/fstypes\fR\fR
+.ad
+.RS 20n
+
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7),
+.BR dfmounts (8),
+.BR mount (8),
+.BR share (8),
+.BR unshare (8)
diff --git a/usr/src/man/man8/dfshares_nfs.8 b/usr/src/man/man8/dfshares_nfs.8
new file mode 100644
index 0000000000..4ee6a28b2a
--- /dev/null
+++ b/usr/src/man/man8/dfshares_nfs.8
@@ -0,0 +1,129 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 1995, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH DFSHARES_NFS 8 "Nov 6, 2000"
+.SH NAME
+dfshares_nfs \- list available NFS resources from remote systems
+.SH SYNOPSIS
+.LP
+.nf
+\fBdfshares\fR [\fB-F\fR nfs] [\fB-h\fR] [\fIserver\fR]...
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBdfshares\fR provides information about resources available to the host
+through \fBNFS.\fR The \fB-F\fR flag may be omitted if \fBNFS\fR is the first
+file system type listed in the file \fB/etc/dfs/fstypes\fR.
+.sp
+.LP
+The query may be restricted to the output of resources available from one or
+more servers.
+.sp
+.LP
+\fBdfshares\fR without arguments displays all resources shared on the local
+system, regardless of file system type.
+.sp
+.LP
+Specifying \fIserver\fR displays information about the resources shared by
+each server. \fIServer\fR can be any system on the network. If no server is
+specified, then \fIserver\fR is assumed to be the local system.
+.sp
+.LP
+The output of \fBdfshares\fR consists of an optional header line (suppressed
+with the \fB-h\fR flag) followed by a list of lines containing
+whitespace-separated fields. For each resource, the fields are:
+.sp
+.in +2
+.nf
+\fIresource server access transport\fR
+.fi
+.in -2
+
+.sp
+.LP
+where
+.sp
+.ne 2
+.na
+\fB\fIresource\fR\fR
+.ad
+.RS 13n
+Specifies the resource name that must be given to the \fBmount\fR(8) command.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIserver\fR\fR
+.ad
+.RS 13n
+Specifies the system that is making the resource available.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIaccess\fR\fR
+.ad
+.RS 13n
+Specifies the access permissions granted to the client systems; however,
+\fBdfshares\fR cannot determine this information for an \fBNFS\fR resource and
+populates the field with a hyphen (-).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fItransport\fR\fR
+.ad
+.RS 13n
+Specifies the transport provider over which the \fIresource\fR is shared;
+however, \fBdfshares\fR cannot determine this information for an \fBNFS\fR
+resource and populates the field with a hyphen (-).
+.RE
+
+.sp
+.LP
+A field may be null. Each null field is indicated by a hyphen (-) unless the
+remainder of the fields on the line are also null; in which case, the hyphen
+may be omitted.
+.SH OPTIONS
+.sp
+.ne 2
+.na
+\fB\fB-F\fR \fBnfs\fR\fR
+.ad
+.RS 10n
+Specify the \fBNFS\fR file system type
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-h\fR\fR
+.ad
+.RS 10n
+Suppress header line in output.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/dfs/fstypes\fR\fR
+.ad
+.RS 20n
+
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7),
+.BR mount (8),
+.BR share (8),
+.BR unshare (8)
diff --git a/usr/src/man/man8/dhcpagent.8 b/usr/src/man/man8/dhcpagent.8
new file mode 100644
index 0000000000..fac4011edf
--- /dev/null
+++ b/usr/src/man/man8/dhcpagent.8
@@ -0,0 +1,904 @@
+'\" te
+.\" Copyright (c) 1992-1996 Competitive Automation, Inc. Copyright (c) 2009 Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright (c) 2016-2017, Chris Fraire <cfraire@me.com>.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH DHCPAGENT 8 "Feb 13, 2020"
+.SH NAME
+dhcpagent \- Dynamic Host Configuration Protocol (DHCP) client daemon
+.SH SYNOPSIS
+.nf
+\fBdhcpagent\fR [\fB-a\fR] [ \fB-d\fR \fIn\fR] [\fB-f\fR] [\fB-v\fR]
+.fi
+
+.SH DESCRIPTION
+\fBdhcpagent\fR implements the client half of the Dynamic Host Configuration
+Protocol \fB(DHCP)\fR for machines running illumos software.
+.sp
+.LP
+The \fBdhcpagent\fR daemon obtains configuration parameters for the client
+(local) machine's network interfaces from a \fBDHCP\fR server. These parameters
+may include a lease on an \fBIP\fR address, which gives the client machine use
+of the address for the period of the lease, which may be infinite. If the
+client wishes to use the \fBIP\fR address for a period longer than the lease,
+it must negotiate an extension using \fBDHCP\fR. For this reason,
+\fBdhcpagent\fR must run as a daemon, terminating only when the client machine
+powers down.
+.sp
+.LP
+For IPv4, the \fBdhcpagent\fR daemon is controlled through \fBipadm\fR(8),
+\fBnwamcfg\fR(8), or \fBifconfig\fR(8) in much the same way that the
+\fBinit\fR(8) daemon is controlled by \fBtelinit\fR(8). \fBdhcpagent\fR can
+be invoked as a user process, albeit one requiring root privileges, but this is
+not necessary, as \fBipadm\fR(8), \fBnwamcfg\fR(8), or \fBifconfig\fR(8)
+will start \fBdhcpagent\fR automatically.
+.sp
+.LP
+For IPv6, the \fBdhcpagent\fR daemon is invoked automatically by
+\fBin.ndpd\fR(8). It can also be controlled through \fBifconfig\fR(8), if
+necessary.
+.sp
+.LP
+When invoked, \fBdhcpagent\fR enters a passive state while it awaits
+instructions from \fBipadm\fR(8), \fBnwamcfg\fR(8), \fBifconfig\fR(8), or
+\fBin.ndpd\fR(8). When \fBdhcpagent\fR receives a command to configure an
+interface, \fBdhcpagent\fR brings up the interface (if necessary) and starts
+DHCP. Once DHCP is complete, \fBdhcpagent\fR can be queried for the values of
+the various network parameters. In addition, if DHCP was used to obtain a lease
+on an address for an interface, \fBdhcpagent\fR configures the address for use.
+When a lease is obtained, it is automatically renewed as necessary. If the
+lease cannot be renewed, \fBdhcpagent\fR will unconfigure the address, but the
+interface will be left up, and \fBdhcpagent\fR will attempt to acquire a new
+address lease.
+.sp
+.LP
+\fBdhcpagent\fR monitors system suspend/resume events and will validate any
+non-permanent leases with the DHCP server upon resume. Similarly,
+\fBdhcpagent\fR monitors link up/down events and will validate any
+non-permanent leases with the DHCP server when the downed link is brought back
+up. The lease validation mechanism will restart DHCP if the server indicates
+that the existing lease is no longer valid. If the server cannot be contacted,
+then the existing lease will continue. This behavior can be modified with the
+\fBVERIFIED_LEASE_ONLY\fR parameter in the \fB/etc/default/dhcpagent\fR file.
+See the description of this parameter below.
+.sp
+.LP
+For IPv4, if the configured interface is found to be unplumbed, or to have a
+different IP address, subnet mask, or broadcast address from those obtained
+from DHCP, the interface is abandoned from DHCP control.
+.sp
+.LP
+For IPv6, \fBdhcpagent\fR automatically plumbs and unplumbs logical interfaces
+as necessary for the IPv6 addresses supplied by the server. The IPv6 prefix
+length (netmask) is not set by the DHCPv6 protocol, but is instead set by
+\fBin.ndpd\fR(8) using prefix information obtained by Router Advertisements.
+If any of the logical interfaces created by \fBdhcpagent\fR is unplumbed, or
+configured with a different IP address, it will be abandoned from DHCP control.
+If the link-local interface is unplumbed, then all addresses configured by DHCP
+on that physical interface will be removed.
+.sp
+.LP
+In addition to \fBDHCP\fR, \fBdhcpagent\fR also supports \fBBOOTP\fR (IPv4
+only). See \fIRFC 951, Bootstrap Protocol\fR. Configuration parameters obtained
+from a \fBBOOTP\fR server are treated identically to those received from a
+\fBDHCP\fR server, except that the \fBIP\fR address received from a \fBBOOTP\fR
+server always has an infinite lease.
+.sp
+.LP
+\fBDHCP\fR also acts as a mechanism to configure other information needed by
+the client, for example, the domain name and addresses of routers. Aside from
+the IP address, and for IPv4 alone, the netmask, broadcast address, and default
+router, the agent does not directly configure the workstation, but instead acts
+as a database which may be interrogated by other programs, and in particular by
+\fBdhcpinfo\fR(1).
+.sp
+.LP
+On clients with a single interface, this is quite straightforward. Clients with
+multiple interfaces may present difficulties, as it is possible that some
+information arriving on different interfaces may need to be merged, or may be
+inconsistent. Furthermore, the configuration of the interfaces is asynchronous,
+so requests may arrive while some or all of the interfaces are still
+unconfigured. To handle these cases, one interface may be designated as
+primary, which makes it the authoritative source for the values of \fBDHCP\fR
+parameters in the case where no specific interface is requested. See
+\fBdhcpinfo\fR(1) and \fBifconfig\fR(8) for details.
+.sp
+.LP
+For IPv4, the \fBdhcpagent\fR daemon can be configured to request a particular
+Fully Qualified Domain Name (FQDN) or host name. See the \fBREQUEST_FQDN\fR or
+\fBREQUEST_HOSTNAME\fR description in the \fBFILES\fR section. When first
+configuring a client to request an FQDN or host name, you must perform the
+following steps as root to ensure that the full DHCP negotiation takes place:
+.sp
+.in +2
+.nf
+# pkill dhcpagent
+# rm /etc/dhcp/\fIinterface\fR.dhc
+# reboot
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+All DHCP packets sent by \fBdhcpagent\fR include a vendor class identifier (RFC
+2132, option code 60; RFC 3315, option code 16). This identifier is the same as
+the platform name returned by the \fBuname\fR \fB-i\fR command, except:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Any commas in the platform name are changed to periods.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+If the name does not start with a stock symbol and a comma, it is automatically
+prefixed with \fBSUNW\fR.
+.RE
+.SS "Messages"
+The \fBdhcpagent\fR daemon writes information and error messages in five
+categories:
+.sp
+.ne 2
+.na
+\fBcritical\fR
+.ad
+.sp .6
+.RS 4n
+Critical messages indicate severe conditions that prevent proper operation.
+.RE
+
+.sp
+.ne 2
+.na
+\fBerrors\fR
+.ad
+.sp .6
+.RS 4n
+Error messages are important, sometimes unrecoverable events due to resource
+exhaustion and other unexpected failure of system calls; ignoring errors may
+lead to degraded functionality.
+.RE
+
+.sp
+.ne 2
+.na
+\fBwarnings\fR
+.ad
+.sp .6
+.RS 4n
+Warnings indicate less severe problems, and in most cases, describe unusual or
+incorrect datagrams received from servers, or requests for service that cannot
+be provided.
+.RE
+
+.sp
+.ne 2
+.na
+\fBinformational\fR
+.ad
+.sp .6
+.RS 4n
+Informational messages provide key pieces of information that can be useful to
+debugging a \fBDHCP\fR configuration at a site. Informational messages are
+generally controlled by the \fB-v\fR option. However, certain critical pieces
+of information, such as the IP address obtained, are always provided.
+.RE
+
+.sp
+.ne 2
+.na
+\fBdebug\fR
+.ad
+.sp .6
+.RS 4n
+Debugging messages, which may be generated at two different levels of
+verbosity, are chiefly of benefit to persons having access to source code, but
+may be useful as well in debugging difficult DHCP configuration problems.
+Debugging messages are only generated when using the \fB-d\fR option.
+.RE
+
+.sp
+.LP
+When \fBdhcpagent\fR is run without the \fB-f\fR option, all messages are sent
+to the system logger \fBsyslog\fR(3C) at the appropriate matching priority and
+with a facility identifier \fBLOG_DAEMON\fR. When \fBdhcpagent\fR is run with
+the \fB-f\fR option, all messages are directed to standard error.
+.SS "DHCP Events and User-Defined Actions"
+If an executable (binary or script) is placed at \fB/etc/dhcp/eventhook\fR, the
+\fBdhcpagent\fR daemon will automatically run that program when any of the
+following events occur:
+.sp
+.ne 2
+.na
+\fB\fBBOUND\fR and \fBBOUND6\fR\fR
+.ad
+.sp .6
+.RS 4n
+These events occur during interface configuration. The event program is invoked
+when \fBdhcpagent\fR receives the DHCPv4 ACK or DHCPv6 Reply message from the
+DHCP server for the lease request of an address, indicating successful initial
+configuration of the interface. (See also the \fBINFORM\fR and \fBINFORM6\fR
+events, which occur when configuration parameters are obtained without address
+leases.)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEXTEND\fR and \fBEXTEND6\fR\fR
+.ad
+.sp .6
+.RS 4n
+These events occur during lease extension. The event program is invoked just
+after \fBdhcpagent\fR receives the DHCPv4 ACK or DHCPv6 Reply from the DHCP
+server for the DHCPv4 REQUEST (renew) message or the DHCPv6 Renew or Rebind
+message.
+.sp
+Note that with DHCPv6, the server might choose to remove some addresses, add
+new address leases, and ignore (allow to expire) still other addresses in a
+given Reply message. The \fBEXTEND6\fR event occurs when a Reply is received
+that leaves one or more address leases still valid, even if the Reply message
+does not extend the lease for any address. The event program is invoked just
+before any addresses are removed, but just after any new addresses are added.
+Those to be removed will be marked with the \fBIFF_DEPRECATED\fR flag.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEXPIRE\fR and \fBEXPIRE6\fR\fR
+.ad
+.sp .6
+.RS 4n
+These events occur during lease expiration. For DHCPv4, the event program is
+invoked just before the leased address is removed from an interface. For
+DHCPv6, the event program is invoked just before the last remaining leased
+addresses are removed from the interface.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBDROP\fR and \fBDROP6\fR\fR
+.ad
+.sp .6
+.RS 4n
+These events occur during the period when an interface is dropped. The event
+program is invoked just before the interface is removed from DHCP control. If
+the interface has been abandoned due the user unplumbing the interface, then
+this event will occur after the user's action has taken place. The interface
+might not be present.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBINFORM\fR and \fBINFORM6\fR\fR
+.ad
+.sp .6
+.RS 4n
+These events occur when an interface acquires new or updated configuration
+information from a DHCP server by means of the DHCPv4 \fBINFORM\fR or the
+DHCPv6 Information-Request message. These messages are sent using an
+\fBifconfig\fR(8) \fBdhcp inform\fR command or when the DHCPv6 Router
+Advertisement \fBO\fR (letter 0) bit is set and the \fBM\fR bit is not set.
+Thus, these events occur when the DHCP client does not obtain an IP address
+lease from the server, and instead obtains only configuration parameters.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBLOSS6\fR\fR
+.ad
+.sp .6
+.RS 4n
+This event occurs during lease expiration when one or more valid leases still
+remain. The event program is invoked just before expired addresses are removed.
+Those being removed will be marked with the \fBIFF_DEPRECATED\fR flag.
+.sp
+Note that this event is not associated with the receipt of the Reply message,
+which occurs only when one or more valid leases remain, and occurs only with
+DHCPv6. If all leases have expired, then the EXPIRE6 event occurs instead.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBRELEASE\fR and \fBRELEASE6\fR\fR
+.ad
+.sp .6
+.RS 4n
+This event occurs during the period when a leased address is released. The
+event program is invoked just before \fBdhcpagent\fR relinquishes the address
+on an interface and sends the DHCPv4 \fBRELEASE\fR or DHCPv6 Release packet to
+the DHCP server.
+.RE
+
+.sp
+.LP
+The system does not provide a default event program. The file
+\fB/etc/dhcp/eventhook\fR is expected to be owned by root and have a mode of
+755.
+.sp
+.LP
+The event program will be passed two arguments, the interface name and the
+event name, respectively. For DHCPv6, the interface name is the name of the
+physical interface.
+.sp
+.LP
+The event program can use the \fBdhcpinfo\fR(1) utility to fetch additional
+information about the interface. While the event program is invoked on every
+event defined above, it can ignore those events in which it is not interested.
+The event program runs with the same privileges and environment as
+\fBdhcpagent\fR itself, except that \fBstdin\fR, \fBstdout\fR, and \fBstderr\fR
+are redirected to \fB/dev/null\fR. Note that this means that the event program
+runs with root privileges.
+.sp
+.LP
+If an invocation of the event program does not exit after 55 seconds, it is
+sent a \fBSIGTERM\fR signal. If does not exit within the next three seconds, it
+is terminated by a \fBSIGKILL\fR signal.
+.sp
+.LP
+See EXAMPLES for an example event program.
+.SH OPTIONS
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-a\fR\fR
+.ad
+.sp .6
+.RS 4n
+Adopt a configured IPv4 interface. This option is for use with diskless
+\fBDHCP\fR clients. In the case of diskless \fBDHCP\fR, \fBDHCP\fR has already
+been performed on the network interface providing the operating system image
+prior to running \fBdhcpagent\fR. This option instructs the agent to take over
+control of the interface. It is intended primarily for use in boot scripts.
+.sp
+The effect of this option depends on whether the interface is being adopted.
+.sp
+If the interface is being adopted, the following conditions apply:
+.sp
+\fBdhcpagent\fR uses the client id specified in
+\fB/chosen\fR:\fI<client_id>\fR, as published by the PROM or as specified on a
+\fBboot\fR(8) command line. If this value is not present, the client id is
+undefined. The DHCP server then determines what to use as a client id. It is an
+error condition if the interface is an Infiniband interface and the PROM value
+is not present.
+.sp
+If the interface is not being adopted:
+.sp
+\fBdhcpagent\fR uses the value stored in \fB/etc/default/dhcpagent\fR. If this
+value is not present, the client id is undefined. If the interface is
+Infiniband and there is no value in \fB/etc/default/dhcpagent\fR, a client id
+is generated as described by the draft document on DHCP over Infiniband,
+available at:
+.sp
+.in +2
+.nf
+http://www.ietf.org
+.fi
+.in -2
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-d\fR \fIn\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set debug level to \fIn\fR. Two levels of debugging are currently available, 1
+and 2; the latter is more verbose.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR\fR
+.ad
+.sp .6
+.RS 4n
+Run in the foreground instead of as a daemon process. When this option is used,
+messages are sent to standard error instead of to \fBsyslog\fR(3C).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.sp .6
+.RS 4n
+Provide verbose output useful for debugging site configuration problems.
+.RE
+
+.SH EXAMPLES
+\fBExample 1 \fRExample Event Program
+.sp
+.LP
+The following script is stored in the file \fB/etc/dhcp/eventhook\fR, owned by
+root with a mode of 755. It is invoked upon the occurrence of the events listed
+in the file.
+
+.sp
+.in +2
+.nf
+#!/bin/sh
+
+(
+echo "Interface name: " $1
+echo "Event: " $2
+
+case $2 in
+"BOUND")
+ echo "Address acquired from server "\e
+ `/sbin/dhcpinfo -i $1 ServerID`
+ ;;
+"BOUND6")
+ echo "Addresses acquired from server " \e
+ `/sbin/dhcpinfo -v6 -i $1 ServerID`
+ ;;
+"EXTEND")
+ echo "Lease extended for " \e
+ `/sbin/dhcpinfo -i $1 LeaseTim`" seconds"
+ ;;
+"EXTEND6")
+ echo "New lease information obtained on $i"
+ ;;
+"EXPIRE" | "DROP" | "RELEASE")
+ ;;
+
+esac
+) >/var/run/dhcp_eventhook_output 2>&1
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Note the redirection of stdout and stderr to a file.
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/etc/dhcp/\fIif\fR.dhc\fR\fR
+.ad
+.br
+.na
+\fB\fB/etc/dhcp/\fIif\fR.dh6\fR\fR
+.ad
+.sp .6
+.RS 4n
+Contains the configuration for interface. The mere existence of this file does
+not imply that the configuration is correct, since the lease might have
+expired. On start-up, \fBdhcpagent\fR confirms the validity of the address
+using REQUEST (for DHCPv4) or Confirm (DHCPv6).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/dhcp/duid\fR\fR
+.ad
+.br
+.na
+\fB\fB/etc/dhcp/iaid\fR\fR
+.ad
+.sp .6
+.RS 4n
+Contains persistent storage for system-generated DUID (DHCP Unique Identifier)
+and interface-specific IAID (Identity Association Identifier) values which are
+used if no \fBCLIENT_ID\fR is defined (see below). The format of these files is
+undocumented, and applications should not read from or write to them. Instead,
+\fBdhcpinfo\fR(1) can be used to query the \fBdhcpagent\fR for \fIClientID\fR.
+For DHCPv6 interfaces, the result will contain the DUID. For DHCPv4 interfaces
+with \fBV4_DEFAULT_IAID_DUID\fR enabled (see below), the result will contain
+the IAID and DUID.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/default/dhcpagent\fR\fR
+.ad
+.sp .6
+.RS 4n
+Contains default values for tunable parameters. All values may be qualified
+with the interface they apply to by prepending the interface name and a period
+(".") to the interface parameter name. The parameters include: the interface
+parameter name.
+.sp
+To configure IPv6 parameters, place the string \fB\&.v6\fR between the
+interface name (if any) and the parameter name. For example, to set the global
+IPv6 parameter request list, use \fB\&.v6.PARAM_REQUEST_LIST\fR. To set the
+\fBCLIENT_ID\fR (\fBDUID\fR) on \fBhme0\fR, use \fBhme0.v6.CLIENT_ID\fR.
+.sp
+The parameters include:
+.sp
+.ne 2
+.na
+\fB\fBVERIFIED_LEASE_ONLY\fR\fR
+.ad
+.sp .6
+.RS 4n
+Indicates that a \fBRELEASE\fR rather than a \fBDROP\fR should be performed on
+managed interfaces when the agent terminates. Release causes the client to
+discard the lease, and the server to make the address available again. Drop
+causes the client to record the lease in \fB/etc/dhcp/\fIinterface\fR.dhc\fR or
+\fB/etc/dhcp/\fIinterface\fR.dh6\fR for later use. In addition, when the link
+status changes to \fBup\fR or when the system is resumed after a suspend, the
+client will verify the lease with the server. If the server is unreachable for
+verification, then the old lease will be discarded (even if it has time
+remaining) and a new one obtained.
+.sp
+Enabling this option is often desirable on mobile systems, such as laptops, to
+allow the system to recover quickly from moves.
+.sp
+Default value of this option is \fIno\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBOFFER_WAIT\fR\fR
+.ad
+.sp .6
+.RS 4n
+Indicates how long to wait in seconds between checking for valid
+\fBOFFER\fRs after sending a \fBDISCOVER\fR. For DHCPv6, sets the time to
+wait between checking for valid Advertisements after sending a Solicit.
+.sp
+Default value of this option is \fI3\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBCLIENT_ID\fR\fR
+.ad
+.sp .6
+.RS 4n
+Indicates the value that should be used to uniquely identify the client to the
+server. This value can take one of three basic forms:
+.sp
+.in +2
+.nf
+\fIdecimal\fR,\fIdata\fR...
+0xHHHHH...
+"\fIstring\fR...."
+.fi
+.in -2
+.sp
+
+The first form is an RFC 3315 DUID. This is legal for both IPv4 DHCP and
+DHCPv6. For IPv4, an RFC 4361 Client ID is constructed from this value. In this
+first form, the format of \fIdata\fR... depends on the decimal value. The
+following formats are defined for this first form:
+.sp
+.ne 2
+.na
+\fB1,\fIhwtype\fR,\fItime\fR,\fIlla\fR\fR
+.ad
+.sp .6
+.RS 4n
+Type 1, DUID-LLT. The \fIhwtype\fR value is an integer in the range 0-65535,
+and indicates the type of hardware. The \fItime\fR value is the number of
+seconds since midnight, January 1st, 2000 UTC, and can be omitted to use the
+current system time. The \fIlla\fR value is either a colon-separated MAC
+address or the name of a physical interface. If the name of an interface is
+used, the \fIhwtype\fR value can be omitted. For example: \fB1,,,hme0\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB2,\fIenterprise\fR,\fIhex\fR...\fR
+.ad
+.sp .6
+.RS 4n
+Type 2, DUID-EN. The \fIenterprise\fR value is an integer in the range
+0-4294967295 and represents the SMI Enterprise number for an organization. The
+\fIhex\fR string is an even-length sequence of hexadecimal digits.
+.RE
+
+.sp
+.ne 2
+.na
+\fB3,\fIhwtype\fR,\fIlla\fR\fR
+.ad
+.sp .6
+.RS 4n
+Type 3, DUID-LL. This is the same as DUID-LLT (type 1), except that a time
+stamp is not used.
+.RE
+
+.sp
+.ne 2
+.na
+\fB*,\fIhex\fR\fR
+.ad
+.sp .6
+.RS 4n
+Any other type value (0 or 4-65535) can be used with an even-length hexadecimal
+string.
+.RE
+
+The second and third forms of \fBCLIENT_ID\fR are legal for IPv4 only. These
+both represent raw Client ID (without RFC 4361), in hex, or NVT ASCII string
+format. Thus, "\fBSun\fR" and \fB0x53756E\fR are equivalent.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBV4_DEFAULT_IAID_DUID\fR\fR
+.ad
+.sp .6
+.RS 4n
+Indicates whether to use, when CLIENT_ID is not defined, a system-managed,
+RFC 3315-style (i.e., DHCPv6-style) binding identifier as documented in
+RFC 4361, "Node-specific Client Identifiers for DHCPv4," for IPv4
+interfaces which for purposes of backward compatibility do not normally get
+default binding identifiers.
+.sp
+An IPv4 interface that is not in an IP network multipathing (IPMP) group,
+that is not IP over InfiniBand (IPoIB), and that is not a logical interface
+does not normally get a default binding identifier.
+.sp
+Default value of this option is \fIno\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPARAM_REQUEST_LIST\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies a list of comma-separated integer values of options for which the
+client would like values, or symbolic \fBSite\fR or \fBOption\fR option names.
+Symbolic option names for IPv4 are resolved through \fB/etc/dhcp/inittab\fR.
+Option names for IPv6 are resolved by means of \fB/etc/dhcp/inittab6\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPARAM_IGNORE_LIST\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies a list of options (constructed in the same manner as
+\fBPARAM_REQUEST_LIST\fR) that the DHCP client will ignore. Ignored options are
+treated as though the server did not return the options specified. Ignored
+options are not visible using \fBdhcpinfo\fR(1) or acted on by the client. This
+parameter can be used, for example, to disable an unwanted client name or
+default router.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBREQUEST_FQDN\fR\fR
+.ad
+.sp .6
+.RS 4n
+Indicates the client requests the DHCP server to map the client's leased
+IPv4 address to the Fully Qualified Domain Name (FQDN) associated with the
+network interface that performs DHCP on the client and to collaborate with
+a compatible DNS server to manage A and PTR resource records for the FQDN
+for the life of the lease.
+.sp .6
+The \fIhostname\fR in the FQDN is determined from the following possible
+configurations:
+.sp
+.ne 2
+.na
+1. \fBipadm\fR(8): include the \fB-1,--primary\fR flag when creating an
+address that uses DHCP so that \fBnodename\fR(5) is used as the
+\fIhostname\fR.
+.ad
+.sp
+.ne 2
+.na
+2. \fBipadm\fR(8): include the \fB-h,--reqhost\fR \fIhostname\fR switch
+when executing the \fBcreate-addr -T dhcp\fR subcommand, or use the
+\fBset-addrprop -p reqhost=\fR\fIhostname\fR subcommand for any existing
+DHCP address.
+.ad
+.sp
+.ne 2
+.na
+3. \fBnwamcfg\fR(8): set a property,
+\fBip-primary=\fR\fIon\fR, for an ncu ip that uses DHCP so that
+\fBnodename\fR(5) is used as the \fIhostname\fR.
+.ad
+.sp
+.ne 2
+.na
+4. \fBnwamcfg\fR(8): set a property,
+\fBip-reqhost=\fR\fIhostname\fR, for an ncu ip that uses DHCP.
+.ad
+.sp
+The \fIhostname\fR value is either a Partially Qualified Domain Name (PQDN)
+or an FQDN (i.e., a "rooted" domain name ending with a '.' or one inferred
+to be an FQDN if it contains at least three DNS labels such as
+srv.example.com). If a PQDN is specified, then an FQDN is constructed if
+\fBDNS_DOMAINNAME\fR is defined or if \fBADOPT_DOMAINNAME\fR is set to
+\fIyes\fR and an eligible domain name (as described below) is available.
+.sp
+If an FQDN is sent, \fBREQUEST_HOSTNAME\fR processing will not be done,
+per RFC 4702 (3.1): "clients that send the Client FQDN option in their
+messages MUST NOT also send the Host Name."
+.sp
+Default value of this option is \fIyes\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBDNS_DOMAINNAME\fR\fR
+.ad
+.sp .6
+.RS 4n
+Indicates the value that should be appended to a PQDN specified by the
+\fB-h,--reqhost\fR option of \fBipadm\fR(8), by the ncu \fBip-reqhost\fR
+property of \fBnwamcfg\fR(8), or by \fBnodename\fR(5) to construct an FQDN
+for \fBREQUEST_FQDN\fR processing.
+If the \fIhostname\fR value is already an FQDN, then the value of this
+option is not used.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBADOPT_DOMAINNAME\fR\fR
+.ad
+.sp .6
+.RS 4n
+Indicates that a domain name returned by the DHCP server or the \fBdomain\fR
+from \fBresolv.conf\fR(5) should be adopted if needed to construct an FQDN
+from a PQDN specified by the \fB-h,--reqhost\fR option of \fBipadm\fR(8),
+by the ncu \fBip-reqhost\fR property of \fBnwamcfg\fR(8), or by
+\fBnodename\fR(5).
+If the \fIhostname\fR value is already an FQDN, then the value of this
+option is not applicable.
+The eligible DHCP option for domain name is DHCPv4 \fBDNSdmain\fR.
+.sp
+Default value of this option is \fIno\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBREQUEST_HOSTNAME\fR\fR
+.ad
+.sp .6
+.RS 4n
+Indicates the client requests the DHCP server to map the client's leased IPv4
+address to the host name associated with the network interface that performs
+DHCP on the client. The host name must be specified as documented for a
+PQDN in \fBREQUEST_FQDN\fR above or specified in the
+\fB/etc/hostname.\fIinterface\fR\fR file for the relevant interface on a line
+of the form
+.sp
+.in +2
+.nf
+inet \fIhostname\fR
+.fi
+.in -2
+.sp
+
+where \fIhostname\fR is the host name requested.
+.sp
+This option works with DHCPv4 only.
+.sp
+Default value of this option is \fIyes\fR.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/dhcp/eventhook\fR\fR
+.ad
+.sp .6
+.RS 4n
+Location of a DHCP event program.
+.RE
+
+.SH ATTRIBUTES
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Committed
+.TE
+
+.SH SEE ALSO
+.BR dhcpinfo (1),
+.BR syslog (3C),
+.BR nodename (5),
+.BR resolv.conf (5),
+.BR attributes (7),
+.BR dhcp (7),
+.BR ifconfig (8),
+.BR in.mpathd (8),
+.BR in.ndpd (8),
+.BR init (8),
+.BR ipadm (8),
+.BR nwamcfg (8)
+.sp
+.LP
+\fI\fR
+.sp
+.LP
+Croft, B. and Gilmore, J. \fIRFC 951, Bootstrap Protocol (BOOTP)\fR, Network
+Working Group, September 1985.
+.sp
+.LP
+Droms, R. \fIRFC 2131, Dynamic Host Configuration Protocol\fR, Network Working
+Group, March 1997.
+.sp
+.LP
+Lemon, T. and B. Sommerfeld. \fIRFC 4361, Node-specific Client Identifiers for
+Dynamic Host Configuration Protocol Version Four (DHCPv4)\fR. Nominum and Sun
+Microsystems. February 2006.
+.sp
+.LP
+Droms, R. \fIRFC 3315, Dynamic Host Configuration Protocol for IPv6
+(DHCPv6)\fR. Cisco Systems. July 2003.
+.SH NOTES
+The \fBdhcpagent\fR daemon can be used on IPv4 logical interfaces, just as with
+physical interfaces. When used on a logical interface, the daemon automatically
+constructs a Client ID value based on the DUID and IAID values, according to
+RFC 4361. The \fB/etc/default/dhcpagent\fR \fBCLIENT_ID\fR value, if any,
+overrides this automatic identifier.
+.sp
+.LP
+As with physical IPv4 interfaces, the \fB/etc/hostname.hme0:1\fR and
+\fB/etc/dhcp.hme0:1\fR files must also be created in order for \fBhme0:1\fR to
+be automatically plumbed and configured at boot. In addition, unlike physical
+IPv4 interfaces, \fBdhcpagent\fR does not add or remove default routes
+associated with logical interfaces.
+.sp
+.LP
+DHCP can be performed on IPMP IP interfaces to acquire and maintain IPMP data
+addresses. Because an IPMP IP interface has no hardware address, the daemon
+automatically constructs a Client ID using the same approach described above
+for IPv4 logical interfaces. In addition, the lack of a hardware address means
+the daemon must set the "broadcast" flag in all \fBDISCOVER\fR and
+\fBREQUEST\fR messages on IPMP IP interfaces. Some DHCP servers may refuse such
+requests.
+.sp
+.LP
+DHCP can be performed on IP interfaces that are part of an IPMP group (to
+acquire and maintain test addresses). The daemon will automatically set the
+\fBNOFAILOVER\fR and \fBDEPRECATED\fR flags on each test address. Additionally,
+the daemon will not add or remove default routes in this case. Note that the
+actual DHCP packet exchange may be performed over any active IP interface in
+the IPMP group. It is strongly recommended that test addresses have infinite
+leases. Otherwise, an extended network outage detectable only by probes may
+cause test address leases to expire, causing \fBin.mpathd\fR(8) to revert to
+link-based failure detection and trigger an erroneous repair.
+.sp
+.LP
+With DHCPv6, the link-local interface must be configured using
+\fB/etc/hostname6.hme0\fR in order for DHCPv6 to run on \fBhme0\fR at boot
+time. The logical interfaces for each address are plumbed by \fBdhcpagent\fR
+automatically.
diff --git a/usr/src/man/man8/diskinfo.8 b/usr/src/man/man8/diskinfo.8
new file mode 100644
index 0000000000..9ce17b94aa
--- /dev/null
+++ b/usr/src/man/man8/diskinfo.8
@@ -0,0 +1,191 @@
+.\"
+.\" This file and its contents are supplied under the terms of the
+.\" Common Development and Distribution License ("CDDL"), version 1.0.
+.\" You may only use this file in accordance with the terms of version
+.\" 1.0 of the CDDL.
+.\"
+.\" A full copy of the text of the CDDL should have accompanied this
+.\" source. A copy of the CDDL is also available via the Internet at
+.\" http://www.illumos.org/license/CDDL.
+.\"
+.\" Copyright 2014 Joyent, Inc.
+.\" Copyright 2016 Nexenta Systems, Inc.
+.\"
+.Dd July 20, 2016
+.Dt DISKINFO 8
+.Os
+.Sh NAME
+.Nm diskinfo
+.Nd provide disk device inventory and status
+.Sh SYNOPSIS
+.Nm
+.Op Fl Hp
+.Op Fl c Ns | Ns Fl P
+.Sh DESCRIPTION
+The diskinfo tool provides information about the disk devices in the system.
+Because it interacts with the kernel's device management subsystem, this tool
+can be used only from the global zone.
+If run in any other zone, its output will be incomplete and unreliable.
+.Pp
+There are three main modes.
+The default mode, when neither the
+.Fl c
+nor
+.Fl P
+option is specified, provides a basic inventory of the disk devices in the
+system.
+Each line describes a single device and contains the device's attachment bus or
+fabric type, the base name of the device in the
+.Pa /dev/dsk
+directory, the disk's vendor and product identification strings, the size
+.Pq storage capacity
+of the device, whether the device is removable, and whether it is solid-state.
+.Pp
+The
+.Fl P
+option selects physical mode.
+In this mode, each line of output likewise describes one disk device; however,
+the fields provided indicate the base name of the device in the
+.Pa /dev/dsk
+directory, the disk's vendor and product identification strings, the serial
+number of the device, whether the device is faulty as diagnosed by
+.Xr fmd 8 ,
+whether the locate or identification indicator is on for the device
+.Pq if one is present ,
+and the chassis and bay number containing the disk if known.
+.Pp
+The
+.Fl c
+option selects compact mode.
+This mode provides all of the information provided by both the default mode and
+physical mode in a compact format.
+.Pp
+See
+.Sx OUTPUT FIELDS
+below for a detailed description of each column.
+.Sh OPTIONS
+.Bl -tag -width Ds
+.It Fl c
+Select compact mode output.
+At most one of
+.Fl c
+and
+.Fl P
+may be present on the command line.
+.It Fl H
+Do not print a header.
+This provides output suitable for passing into text processing tools.
+.It Fl P
+Select physical mode output.
+At most one of
+.Fl P
+and
+.Fl c
+may be present on the command line.
+.It Fl p
+Parsable output.
+When
+.Fl p
+is selected, the size
+.Pq storage capacity
+is output in bytes instead of in human-readable units, and the device's location
+.Pq if known
+is provided as a comma-separated chassis and bay number instead of a
+human-readable location.
+This option may be used in any output mode and is intended for use by scripts or
+other robotic tooling.
+.El
+.Sh OUTPUT FIELDS
+.Bl -tag -width "LOCATION"
+.It Sy DISK
+The base name of the device node within the
+.Pa /dev/dsk
+directory.
+The names of partitions and/or slices, if any, are derived from this name as
+described by
+.Xr prtvtoc 8 .
+.Pp
+This field is available in all output modes.
+.It Sy FLRS
+A condensed field incorporating the same information as the
+.Sy FLT , LOC , RMV ,
+and
+.Sy SSD
+fields.
+Each field is condensed to a single character.
+If the field is true, the first letter of the field name will appear in its
+position in the string; otherwise, the
+.Qq Sy -
+character will appear instead.
+.Pp
+This field is available only in compact output mode.
+.It Sy FLT
+A boolean field indicating whether the device is faulty; specifically, whether
+the fault indicator
+.Pq if one is present
+is active.
+.Pp
+This field is available only in physical output mode.
+.It Sy LOC
+A boolean field indicating whether the locate or identify indicator, if any,
+associated with the device's bay, is active.
+.Pp
+This field is available only in physical output mode.
+.It Sy LOCATION
+The physical chassis and bay name
+.Po or chassis and bay numbers, if
+.Fl p
+is given
+.Pc
+in which the device is located.
+The chassis number is identified in human-readable output within
+.Bq square brackets ;
+chassis 0 is the host chassis itself.
+The bay name, if any, is provided by the enclosure, typically via a SCSI
+Enclosure Services processor.
+.Pp
+This field is available in compact and physical output modes.
+.It Sy PID
+The product identification string reported by the device.
+.Pp
+This field is available in all output modes.
+.It Sy RMV
+A boolean field indicating whether the device is removable.
+USB storage devices, most optical drives and changers, and certain other devices
+that report themselves as removable will be identified as such.
+.Pp
+This field is available only in default output mode.
+.It Sy SERIAL
+The serial number of the device.
+The entire serial number is reported if the device and its drivers provide it.
+.Pp
+This field is available in compact and physical output modes.
+.It Sy SIZE
+The device's storage capacity.
+If the
+.Fl p
+option is given, this is reported in bytes; otherwise, it is reported in a
+human-readable format with units specified.
+All units are based on powers of 2 and are expressed in SI standard notation.
+.Pp
+This field is available in compact and default output modes.
+.It Sy SSD
+A boolean field indicating whether the device is solid-state.
+.Pp
+This field is available only in default output mode.
+.It Sy TYPE
+The transport
+.Pq fabric or bus
+type by which the storage device is attached to the host, if known.
+Typical transports include SCSI and USB.
+.Pp
+This field is available in compact and default output modes.
+.It Sy VID
+The vendor identification string reported by the device.
+.Pp
+This field is available in all output modes.
+.El
+.Sh SEE ALSO
+.Xr sd 4D ,
+.Xr fmd 8 ,
+.Xr prtvtoc 8
diff --git a/usr/src/man/man8/disks.8 b/usr/src/man/man8/disks.8
new file mode 100644
index 0000000000..a80f482f1a
--- /dev/null
+++ b/usr/src/man/man8/disks.8
@@ -0,0 +1,322 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH DISKS 8 "Jul 2, 2009"
+.SH NAME
+disks \- creates /dev entries for hard disks attached to the system
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/disks\fR [\fB-C\fR] [\fB-r\fR \fIrootdir\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBdevfsadm\fR(8) is now the preferred command for \fB/dev\fR and should be
+used instead of \fBdisks\fR.
+.sp
+.LP
+\fBdisks\fR creates symbolic links in the \fB/dev/dsk\fR and \fB/dev/rdsk\fR
+directories pointing to the actual disk device special files under the
+\fB/devices\fR directory tree. It performs the following steps:
+.RS +4
+.TP
+1.
+\fBdisks\fR searches the kernel device tree to see what hard disks are
+attached to the system. It notes the \fB/devices\fR pathnames for the slices on
+the drive and determines the physical component of the corresponding
+\fB/dev/dsk\fR or \fB/dev/rdsk\fR name.
+.RE
+.RS +4
+.TP
+2.
+The \fB/dev/dsk\fR and \fB/dev/rdsk\fR directories are checked for disk
+entries \(mi that is, symbolic links with names of the form
+\fBc\fR\fIN\fR[\fBt\fR\fIN\fR]\fBd\fR\fIN\fR\fBs\fR\fIN\fR, or
+\fBc\fR\fIN\fR[\fBt\fR\fIN\fR]\fBd\fRN\fBp\fR\fIN\fR, where \fIN\fR represents
+a decimal number. \fBc\fR\fIN\fR is the logical controller number, an arbitrary
+number assigned by this program to designate a particular disk controller. The
+first controller found on the first occasion this program is run on a system,
+is assigned number \fB0\fR. \fBt\fR\fIN\fR is the bus-address number of a
+subsidiary controller attached to a peripheral bus such as \fBSCSI\fR or
+\fBIPI\fR (the \fBtarget\fR number for \fBSCSI,\fR and the \fBfacility\fR
+number for \fBIPI\fR controllers). \fBd\fR\fIN\fR is the number of the disk
+attached to the controller. \fBs\fR\fIN\fR is the \fIslice\fR number on the
+disk. \fBp\fR\fIN\fR is the FDISK partition number used by \fBfdisk\fR(8).
+(x86 Only)
+.RE
+.RS +4
+.TP
+3.
+If only some of the disk entries are found in \fB/dev/dsk\fR for a disk that
+has been found under the \fB/devices\fR directory tree, disks creates the
+missing symbolic links. If none of the entries for a particular disk are found
+in \fB/dev/dsk\fR, \fBdisks\fR checks to see if any entries exist for other
+disks attached to the same controller, and if so, creates new entries using the
+same controller number as used for other disks on the same controller. If no
+other \fB/dev/dsk\fR entries are found for slices of disks belonging to the
+same physical controller as the current disk, \fBdisks\fR assigns the
+lowest-unused controller number and creates entries for the disk slices using
+this newly-assigned controller number.
+.RE
+.sp
+.LP
+\fBdisks\fR is run automatically each time a reconfiguration-boot is performed
+or when \fBadd_drv\fR(8) is executed. When invoking \fBdisks\fR manually,
+first run \fBdrvconfig\fR(8) to ensure \fB/devices\fR is consistent with the
+current device configuration.
+.SS "Notice to Driver Writers"
+.sp
+.LP
+\fBdisks\fR considers all devices with a node type of \fBDDI_NT_BLOCK,\fR
+\fBDDI_NT_BLOCK_CHAN,\fR \fBDDI_NT_CD,\fR \fBDDI_NT_BLOCK_WWN\fR or
+\fBDDI_NT_CD_CHAN\fR to be disk devices. \fBdisks\fR requires the minor name of
+disk devices obey the following format conventions.
+.sp
+.LP
+The minor name for block interfaces consists of a single lowercase ASCII
+character, \fBa\fR through \fBu\fR, representing the slices and the primary
+partitions. The minor name for logical drive block interfaces consists of the
+strings \fBp5\fR through \fBp36\fR. The minor name for character (raw)
+interfaces consists of a single lowercase ASCII character, \fBa\fR through
+\fBa\fR, followed by the string \fB,raw\fR, representing the slices and the
+primary partitions. The minor name for logical drive character (raw) interfaces
+consists of the string \fBp5\fR through \fBp36\fR followed by \fB,raw\fR.
+.sp
+.LP
+\fBdisks\fR performs the following translations:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBa\fR through \fBp\fR to \fBs0\fR through \fBs15\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBq\fR through \fBu\fR to \fBp0\fR through \fBp4\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBp5\fR through \fBp36\fR to \fBp5\fR through \fBp36\fR
+.RE
+.sp
+.LP
+SPARC drivers should only use the first eight slices: \fBa\fR through \fBh\fR,
+while x86 drivers can use \fBa\fR through \fBu\fR, with \fBq\fR through \fBu\fR
+corresponding to \fBfdisk\fR(8) primary partitions. \fBq\fR represents the
+entire disk, while \fBr\fR, \fBs\fR, \fBt\fR, and \fBu\fR represent up to four
+additional primary partitions. For logical drives, \fBp5\fR to \fBp36\fR
+correspond to the 32 logical drives that are supported. The device nodes for
+logical drives change dynamically as and when they are created or deleted.
+.sp
+.LP
+To prevent \fBdisks\fR from attempting to automatically generate links for a
+device, drivers must specify a private node type and refrain from using a node
+type: \fBDDI_NT_BLOCK,\fR \fBDDI_NT_BLOCK_CHAN,\fR \fBDDI_NT_CD,\fR or
+\fBDDI_NT_CD_CHAN\fR when calling \fBddi_create_minor_node\fR(9F).
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-C\fR\fR
+.ad
+.RS 14n
+Causes disks to remove any invalid links after adding any new entries to
+\fB/dev/dsk\fR and \fB/dev/rdsk\fR. Invalid links are links which refer to
+non-existent disk nodes that have been removed, powered off, or are otherwise
+inaccessible.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-r\fR \fIrootdir\fR\fR
+.ad
+.RS 14n
+Causes \fBdisks\fR to presume that the \fB/dev/dsk\fR, \fB/dev/rdsk\fR and
+\fB/devices\fR directory trees are found under \fIrootdir\fR, not directly
+under \fB/\fR.
+.RE
+
+.SH ERRORS
+.sp
+.LP
+If disks finds entries of a particular logical controller linked to different
+physical controllers, it prints an error message and exits without making any
+changes to the \fB/dev\fR directory, since it cannot determine which of the two
+alternative logical-to-physical mappings is correct. The links should be
+manually corrected or removed before another reconfiguration-boot is performed.
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRCreating Block and Character Minor Devices
+.sp
+.LP
+The following example demonstrates creating the block and character minor
+devices from within the \fBxkdisk\fR driver's \fBattach\fR(9E) function.
+
+.sp
+.in +2
+.nf
+#include <sys/dkio.h>
+/*
+ * Create the minor number by combining the instance number
+ * with the slice number.
+ */
+#define MINOR_NUM(i, s) ((i) << 4 | (s))
+
+int
+xkdiskattach(dev_info_t *dip, ddi_attach_cmd_t cmd)
+{
+ int instance, slice;
+ char name[8];
+
+ /* other stuff in attach... */
+
+ instance = ddi_get_instance(dip);
+ for (slice = 0; slice < V_NUMPAR; slice++) {
+ /*
+ * create block device interface
+ */
+ sprintf(name, "%c", slice + 'a');
+ ddi_create_minor_node(dip, name, S_IFBLK,
+ MINOR_NUM(instance, slice), DDI_NT_BLOCK_CHAN, 0);
+
+ /*
+ * create the raw (character) device interface
+ */
+ sprintf(name,"%c,raw", slice + 'a');
+ ddi_create_minor_node(dip, name, S_IFCHR,
+ MINOR_NUM(instance, slice), DDI_NT_BLOCK_CHAN, 0);
+ }
+}
+.fi
+.in -2
+
+.sp
+.LP
+Installing the \fBxkdisk\fR disk driver on a Sun Fire 4800, with the driver
+controlling a \fBSCSI\fR disk (target 3 attached to an \fBisp\fR(4D) \fBSCSI
+HBA)\fR and performing a reconfiguration-boot (causing disks to be run) creates
+the following special files in \fB/devices\fR.
+
+.sp
+.in +2
+.nf
+# ls -l /devices/ssm@0,0/pci@18,700000/pci@1/SUNW,isptwo@4/
+brw-r----- 1 root sys 32, 16 Aug 29 00:02 xkdisk@3,0:a
+crw-r----- 1 root sys 32, 16 Aug 29 00:02 xkdisk@3,0:a,raw
+brw-r----- 1 root sys 32, 17 Aug 29 00:02 xkdisk@3,0:b
+crw-r----- 1 root sys 32, 17 Aug 29 00:02 xkdisk@3,0:b,raw
+brw-r----- 1 root sys 32, 18 Aug 29 00:02 xkdisk@3,0:c
+crw-r----- 1 root sys 32, 18 Aug 29 00:02 xkdisk@3,0:c,raw
+brw-r----- 1 root sys 32, 19 Aug 29 00:02 xkdisk@3,0:d
+crw-r----- 1 root sys 32, 19 Aug 29 00:02 xkdisk@3,0:d,raw
+brw-r----- 1 root sys 32, 20 Aug 29 00:02 xkdisk@3,0:e
+crw-r----- 1 root sys 32, 20 Aug 29 00:02 xkdisk@3,0:e,raw
+brw-r----- 1 root sys 32, 21 Aug 29 00:02 xkdisk@3,0:f
+crw-r----- 1 root sys 32, 21 Aug 29 00:02 xkdisk@3,0:f,raw
+brw-r----- 1 root sys 32, 22 Aug 29 00:02 xkdisk@3,0:g
+crw-r----- 1 root sys 32, 22 Aug 29 00:02 xkdisk@3,0:g,raw
+brw-r----- 1 root sys 32, 23 Aug 29 00:02 xkdisk@3,0:h
+crw-r----- 1 root sys 32, 23 Aug 29 00:02 xkdisk@3,0:h,raw
+.fi
+.in -2
+
+.sp
+.LP
+/dev/dsk will contain the disk entries to the block device nodes in
+\fB/devices\fR
+
+.sp
+.in +2
+.nf
+# ls -l /dev/dsk
+/dev/dsk/c0t3d0s0 -> ../../devices/[...]/xkdisk@3,0:a
+/dev/dsk/c0t3d0s1 -> ../../devices/[...]/xkdisk@3,0:b
+/dev/dsk/c0t3d0s2 -> ../../devices/[...]/xkdisk@3,0:c
+/dev/dsk/c0t3d0s3 -> ../../devices/[...]/xkdisk@3,0:d
+/dev/dsk/c0t3d0s4 -> ../../devices/[...]/xkdisk@3,0:e
+/dev/dsk/c0t3d0s5 -> ../../devices/[...]/xkdisk@3,0:f
+/dev/dsk/c0t3d0s6 -> ../../devices/[...]/xkdisk@3,0:g
+/dev/dsk/c0t3d0s7 -> ../../devices/[...]/xkdisk@3,0:h
+.fi
+.in -2
+
+.sp
+.LP
+and /dev/rdsk will contain the disk entries for the character device nodes in
+\fB/devices\fR
+
+.sp
+.in +2
+.nf
+# ls -l /dev/rdsk
+/dev/rdsk/c0t3d0s0 -> ../../devices/[...]/xkdisk@3,0:a,raw
+/dev/rdsk/c0t3d0s1 -> ../../devices/[...]/xkdisk@3,0:b,raw
+/dev/rdsk/c0t3d0s2 -> ../../devices/[...]/xkdisk@3,0:c,raw
+/dev/rdsk/c0t3d0s3 -> ../../devices/[...]/xkdisk@3,0:d,raw
+/dev/rdsk/c0t3d0s4 -> ../../devices/[...]/xkdisk@3,0:e,raw
+/dev/rdsk/c0t3d0s5 -> ../../devices/[...]/xkdisk@3,0:f,raw
+/dev/rdsk/c0t3d0s6 -> ../../devices/[...]/xkdisk@3,0:g,raw
+/dev/rdsk/c0t3d0s7 -> ../../devices/[...]/xkdisk@3,0:h,raw
+.fi
+.in -2
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/dev/dsk/*\fR\fR
+.ad
+.RS 15n
+Disk entries (block device interface)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/rdsk/*\fR\fR
+.ad
+.RS 15n
+Disk entries (character device interface)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/devices/*\fR\fR
+.ad
+.RS 15n
+Device special files (minor device nodes)
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR isp (4D),
+.BR devfs (4FS),
+.BR dkio (4I),
+.BR attributes (7),
+.BR add_drv (8),
+.BR devfsadm (8),
+.BR fdisk (8),
+.BR attach (9E),
+.BR ddi_create_minor_node (9F)
+.sp
+.LP
+\fI\fR
+.SH BUGS
+.sp
+.LP
+\fBdisks\fR silently ignores malformed minor device names.
diff --git a/usr/src/man/man8/diskscan.8 b/usr/src/man/man8/diskscan.8
new file mode 100644
index 0000000000..8a7da093e1
--- /dev/null
+++ b/usr/src/man/man8/diskscan.8
@@ -0,0 +1,110 @@
+'\" te
+.\" Copyright (c) 1998, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH DISKSCAN 8 "Feb 24, 1998"
+.SH NAME
+diskscan \- perform surface analysis
+.SH SYNOPSIS
+.LP
+.nf
+\fBdiskscan\fR [\fB-W\fR] [\fB-n\fR] [\fB-y\fR] \fIraw_device\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBdiskscan\fR is used by the system administrator to perform surface analysis
+on a portion of a hard disk. The disk portion may be a raw partition or slice;
+it is identified using its raw device name. By default, the specified portion
+of the disk is read (non-destructive) and errors reported on standard error. In
+addition, a progress report is printed on standard out. The list of bad blocks
+should be saved in a file and later fed into \fBaddbadsec\fR(8), which will
+remap them.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-n\fR\fR
+.ad
+.RS 6n
+Causes \fBdiskscan\fR to suppress linefeeds when printing progress information
+on standard out.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-W\fR\fR
+.ad
+.RS 6n
+Causes \fBdiskscan\fR to perform write and read surface analysis. This type of
+surface analysis is destructive and should be invoked with caution.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-y\fR\fR
+.ad
+.RS 6n
+Causes \fBdiskscan\fR to suppress the warning regarding destruction of
+existing data that is issued when \fB-W\fR is used.
+.RE
+
+.SH OPERANDS
+.sp
+.LP
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fB\fIraw_device\fR\fR
+.ad
+.RS 14n
+The address of the disk drive (see \fBFILES\fR).
+.RE
+
+.SH FILES
+.sp
+.LP
+The raw device should be \fB/dev/rdsk/c?[t?]d?[ps]?\fR. See \fBdisks\fR(8) for
+an explanation of \fBSCSI\fR and \fBIDE\fR device naming conventions.
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture x86
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7),
+.BR addbadsec (8),
+.BR disks (8),
+.BR fdisk (8),
+.BR fmthard (8),
+.BR format (8)
+.SH NOTES
+.sp
+.LP
+The \fBformat\fR(8) utility is available to format, label, analyze, and repair
+\fBSCSI\fR disks. This utility is included with the \fBdiskscan\fR,
+\fBaddbadsec\fR(8), \fBfdisk\fR(8), and \fBfmthard\fR(8) commands available
+for x86. To format an \fBIDE\fR disk, use the \fB DOS\fR \fBformat\fR utility;
+however, to label, analyze, or repair \fBIDE\fR disks on x86 systems, use the
+Solaris \fBformat\fR(8) utility.
diff --git a/usr/src/man/man8/dispadmin.8 b/usr/src/man/man8/dispadmin.8
new file mode 100644
index 0000000000..7164c007f2
--- /dev/null
+++ b/usr/src/man/man8/dispadmin.8
@@ -0,0 +1,249 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 2008 Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 2020 (c) Sergio Aguayo, All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH DISPADMIN 8 "Oct 7, 2008"
+.SH NAME
+dispadmin \- process scheduler administration
+.SH SYNOPSIS
+.nf
+\fBdispadmin\fR \fB-l\fR
+.fi
+
+.LP
+.nf
+\fBdispadmin\fR \fB-c\fR \fIclass\fR {\fB-g\fR [\fB-r\fR \fIres\fR] | \fB-s\fR \fIfile\fR}
+.fi
+
+.LP
+.nf
+\fBdispadmin\fR \fB-d\fR [\fIclass\fR]
+.fi
+
+.SH DESCRIPTION
+The \fBdispadmin\fR command displays or changes process scheduler parameters
+while the system is running.
+.sp
+.LP
+\fBdispadmin\fR does limited checking on the values supplied in \fIfile\fR to
+verify that they are within their required bounds. The checking, however, does
+not attempt to analyze the effect that the new values have on the performance
+of the system. Inappropriate values can have a negative effect on system
+performance. (See \fISystem Administration Guide: Advanced Administration\fR.)
+.SH OPTIONS
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-c\fR \fIclass\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the class whose parameters are to be displayed or changed. Valid
+\fIclass\fR values are: \fBRT\fR for the real-time class, \fBTS\fR for the
+time-sharing class, \fBIA\fR for the inter-active class, \fBFSS\fR for the
+fair-share class, and \fBFX\fR for the fixed-priority class. The time-sharing
+and inter-active classes share the same scheduler, so changes to the
+scheduling parameters of one will change those of the other.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-d\fR [\fIclass\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Sets or displays the name of the default scheduling class to be used on reboot
+when starting \fBsvc:/system/scheduler:default\fR. If class name is not
+specified, the name and description of the current default scheduling class is
+displayed. If class name is specified and is a valid scheduling class name,
+then it is saved in \fBdispadmin\fR's private configuration file
+\fB/etc/dispadmin.conf\fR. Only super-users can set the default scheduling
+class.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-g\fR\fR
+.ad
+.sp .6
+.RS 4n
+Gets the parameters for the specified class and writes them to the standard
+output. Parameters for the real-time class are described in \fBrt_dptbl\fR(5).
+Parameters for the time-sharing and inter-active classes are described in
+\fBts_dptbl\fR(5). Parameters for the fair-share class are described in
+\fBFSS\fR(4). Parameters for the fixed-priority class are described in
+\fBfx_dptbl\fR(5).
+.sp
+The \fB-g\fR and \fB-s\fR options are mutually exclusive: you may not retrieve
+the table at the same time you are overwriting it.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR\fR
+.ad
+.sp .6
+.RS 4n
+Lists the scheduler classes currently configured in the system.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-r\fR \fIres\fR\fR
+.ad
+.sp .6
+.RS 4n
+When using the \fB-g\fR option you may also use the \fB-r\fR option to specify
+a resolution to be used for outputting the time quantum values. If no
+resolution is specified, time quantum values are in milliseconds. If \fIres\fR
+is specified it must be a positive integer between 1 and 1000000000 inclusive,
+and the resolution used is the reciprocal of \fIres\fR in seconds. For example,
+a \fIres\fR value of 10 yields time quantum values expressed in tenths of a
+second; a \fIres\fR value of 1000000 yields time quantum values expressed in
+microseconds. If the time quantum cannot be expressed as an integer in the
+specified resolution, it is rounded up to the next integral multiple of the
+specified resolution.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR \fIfile\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets scheduler parameters for the specified class using the values in
+\fIfile\fR. These values overwrite the current values in memory\(emthey become
+the parameters that control scheduling of processes in the specified class. The
+values in \fIfile\fR must be in the format output by the \fB-g\fR option.
+Moreover, the values must describe a table that is the same size (has same
+number of priority levels) as the table being overwritten. Super-user
+privileges are required in order to use the \fB-s\fR option.
+.sp
+Time quantum values for scheduling classes are specified in system clock ticks
+rather than constant-time units. These values are based on the value of the
+kernel's \fBhz\fR variable. By default, the system operates at 1000 Hz and
+thus with a quantum of 1 millisecond. If the kernel tunable \fBhires_tick\fR
+is set to 0, this drops to 100 Hz for a larger quantum of 10 milliseconds.
+.sp
+The \fB-g\fR and \fB-s\fR options are mutually exclusive: you may not retrieve
+the table at the same time you are overwriting it.
+.RE
+
+.SH EXAMPLES
+\fBExample 1 \fRRetrieving the Current Scheduler Parameters for the real-time
+class
+.sp
+.LP
+The following command retrieves the current scheduler parameters for the
+real-time class from kernel memory and writes them to the standard output. Time
+quantum values are in microseconds.
+
+.sp
+.in +2
+.nf
+dispadmin \fB-c\fR RT \fB-g\fR \fB-r\fR 1000000
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fROverwriting the Current Scheduler Parameters for the Real-time
+Class
+.sp
+.LP
+The following command overwrites the current scheduler parameters for the
+real-time class with the values specified in \fBrt.config\fR.
+
+.sp
+.in +2
+.nf
+dispadmin \fB-c\fR RT \fB-s\fR rt.config
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRRetrieving the Current Scheduler Parameters for the
+Time-sharing Class
+.sp
+.LP
+The following command retrieves the current scheduler parameters for the
+time-sharing class from kernel memory and writes them to the standard output.
+Time quantum values are in nanoseconds.
+
+.sp
+.in +2
+.nf
+dispadmin \fB-c\fR TS \fB-g\fR \fB-r\fR 1000000000
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 4 \fROverwriting the Current Scheduler Parameters for the
+Time-sharing Class
+.sp
+.LP
+The following command overwrites the current scheduler parameters for the
+time-sharing class with the values specified in \fBts.config\fR.
+
+.sp
+.in +2
+.nf
+dispadmin \fB-c\fR TS \fB-s\fR ts.config
+.fi
+.in -2
+.sp
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/etc/dispadmin.conf\fR\fR
+.ad
+.sp .6
+.RS 4n
+Possible location for argument to \fB-s\fR option.
+.RE
+
+.SH SEE ALSO
+.BR priocntl (1),
+.BR svcs (1),
+.BR priocntl (2),
+.BR FSS (4),
+.BR fx_dptbl (5),
+.BR rt_dptbl (5),
+.BR ts_dptbl (5),
+.BR attributes (7),
+.BR smf (7),
+.BR svcadm (8)
+.sp
+.LP
+\fI\fR \fI\fR
+.SH DIAGNOSTICS
+\fBdispadmin\fR prints an appropriate diagnostic message if it fails to
+overwrite the current scheduler parameters due to lack of required permissions
+or a problem with the specified input file.
+.SH NOTES
+The default scheduling class setting facility is managed by the service
+management facility, \fBsmf\fR(7), under the service identifier:
+.sp
+.in +2
+.nf
+svc:/system/scheduler:default
+.fi
+.in -2
+
+.sp
+.LP
+Administrative actions on this service, such as enabling, disabling, or
+requesting restart, can be performed using \fBsvcadm\fR(8). Note that
+disabling the service while it is running will not change anything. The
+service's status can be queried using the \fBsvcs\fR(1) command.
diff --git a/usr/src/man/man8/dladm.8 b/usr/src/man/man8/dladm.8
new file mode 100644
index 0000000000..694ff6fd9d
--- /dev/null
+++ b/usr/src/man/man8/dladm.8
@@ -0,0 +1,6184 @@
+.\"
+.\" Sun Microsystems, Inc. gratefully acknowledges The Open Group for
+.\" permission to reproduce portions of its copyrighted documentation.
+.\" Original documentation from The Open Group can be obtained online at
+.\" http://www.opengroup.org/bookstore/.
+.\"
+.\" The Institute of Electrical and Electronics Engineers and The Open
+.\" Group, have given us permission to reprint portions of their
+.\" documentation.
+.\"
+.\" In the following statement, the phrase ``this text'' refers to portions
+.\" of the system documentation.
+.\"
+.\" Portions of this text are reprinted and reproduced in electronic form
+.\" in the SunOS Reference Manual, from IEEE Std 1003.1, 2004 Edition,
+.\" Standard for Information Technology -- Portable Operating System
+.\" Interface (POSIX), The Open Group Base Specifications Issue 6,
+.\" Copyright (C) 2001-2004 by the Institute of Electrical and Electronics
+.\" Engineers, Inc and The Open Group. In the event of any discrepancy
+.\" between these versions and the original IEEE and The Open Group
+.\" Standard, the original IEEE and The Open Group Standard is the referee
+.\" document. The original Standard can be obtained online at
+.\" http://www.opengroup.org/unix/online.html.
+.\"
+.\" This notice shall appear on any product containing this material.
+.\"
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.\"
+.\"
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 2017 Joyent, Inc.
+.\" Copyright 2020 RackTop Systems, Inc.
+.\" Copyright 2021 OmniOS Community Edition (OmniOSce) Association.
+.\"
+.TH DLADM 8 "October 20, 2021"
+.SH NAME
+dladm \- administer data links
+.SH SYNOPSIS
+\fBdladm help\fR
+
+.LP
+.nf
+\fBdladm show-link\fR [\fB-P\fR] [\fB-s\fR [\fB-i\fR \fIinterval\fR]] [[\fB-p\fR] \fB-o\fR \fIfield\fR[,...]] [\fIlink\fR]
+\fBdladm rename-link\fR [\fB-R\fR \fIroot-dir\fR] [\fB-z\fR \fIzonename\fR] \fIlink\fR \fInew-link\fR
+.fi
+
+.LP
+.nf
+\fBdladm delete-phys\fR \fIphys-link\fR
+\fBdladm show-phys\fR [\fB-m\fR | \fB-H\fR | \fB-P\fR] [[\fB-p\fR] \fB-o\fR \fIfield\fR[,...]] [\fIphys-link\fR]
+.fi
+
+.LP
+.nf
+\fBdladm create-aggr\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] [\fB-P\fR \fIpolicy\fR] [\fB-L\fR \fImode\fR]
+ [\fB-T\fR \fItime\fR] [\fB-u\fR \fIaddress\fR] \fB-l\fR \fIether-link1\fR [\fB-l\fR \fIether-link2\fR...] \fIaggr-link\fR
+\fBdladm modify-aggr\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] [\fB-P\fR \fIpolicy\fR] [\fB-L\fR \fImode\fR]
+ [\fB-T\fR \fItime\fR] [\fB-u\fR \fIaddress\fR] \fIaggr-link\fR
+\fBdladm delete-aggr\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] \fIaggr-link\fR
+\fBdladm add-aggr\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] \fB-l\fR \fIether-link1\fR [\fB-l\fR \fIether-link2\fR...]
+ \fIaggr-link\fR
+\fBdladm remove-aggr\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] \fB-l\fR \fIether-link1\fR [\fB-l\fR \fIether-link2\fR...]
+ \fIaggr-link\fR
+\fBdladm show-aggr\fR [\fB-PLx\fR] [\fB-s\fR [\fB-i\fR \fIinterval\fR]] [[\fB-p\fR] \fB-o\fR \fIfield\fR[,...]]
+ [\fIaggr-link\fR]
+.fi
+
+.LP
+.nf
+\fBdladm create-bridge\fR [\fB-P\fR \fIprotect\fR] [\fB-R\fR \fIroot-dir\fR] [\fB-p\fR \fIpriority\fR]
+ [\fB-m\fR \fImax-age\fR] [\fB-h\fR \fIhello-time\fR] [\fB-d\fR \fIforward-delay\fR] [\fB-f\fR \fIforce-protocol\fR]
+ [\fB-l\fR \fIlink\fR...] \fIbridge-name\fR
+.fi
+
+.LP
+.nf
+\fBdladm modify-bridge\fR [\fB-P\fR \fIprotect\fR] [\fB-R\fR \fIroot-dir\fR] [\fB-p\fR \fIpriority\fR]
+ [\fB-m\fR \fImax-age\fR] [\fB-h\fR \fIhello-time\fR] [\fB-d\fR \fIforward-delay\fR] [\fB-f\fR \fIforce-protocol\fR]
+ \fIbridge-name\fR
+.fi
+
+.LP
+.nf
+\fBdladm delete-bridge\fR [\fB-R\fR \fIroot-dir\fR] \fIbridge-name\fR
+.fi
+
+.LP
+.nf
+\fBdladm add-bridge\fR [\fB-R\fR \fIroot-dir\fR] \fB-l\fR \fIlink\fR [\fB-l\fR \fIlink\fR...]\fIbridge-name\fR
+.fi
+
+.LP
+.nf
+\fBdladm remove-bridge\fR [\fB-R\fR \fIroot-dir\fR] \fB-l\fR \fIlink\fR [\fB-l\fR \fIlink\fR...] \fIbridge-name\fR
+.fi
+
+.LP
+.nf
+\fBdladm show-bridge\fR [\fB-flt\fR] [\fB-s\fR [\fB-i\fR \fIinterval\fR]] [[\fB-p\fR] \fB-o\fR \fIfield\fR,...]
+ [\fIbridge-name\fR]
+.fi
+
+.LP
+.nf
+\fBdladm create-vlan\fR [\fB-ft\fR] [\fB-R\fR \fIroot-dir\fR] \fB-l\fR \fIether-link\fR \fB-v\fR \fIvid\fR [\fIvlan-link\fR]
+\fBdladm delete-vlan\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] \fIvlan-link\fR
+\fBdladm show-vlan\fR [\fB-P\fR] [[\fB-p\fR] \fB-o\fR \fIfield\fR[,...]] [\fIvlan-link\fR]
+.fi
+
+.LP
+.nf
+\fBdladm scan-wifi\fR [[\fB-p\fR] \fB-o\fR \fIfield\fR[,...]] [\fIwifi-link\fR]
+\fBdladm connect-wifi\fR [\fB-e\fR \fIessid\fR] [\fB-i\fR \fIbssid\fR] [\fB-k\fR \fIkey\fR,...]
+ [\fB-s\fR none | wep | wpa ] [\fB-a\fR open | shared] [\fB-b\fR bss | ibss] [\fB-c\fR]
+ [\fB-m\fR a | b | g] [\fB-T\fR \fItime\fR] [\fIwifi-link\fR]
+\fBdladm disconnect-wifi\fR [\fB-a\fR] [\fIwifi-link\fR]
+\fBdladm show-wifi\fR [[\fB-p\fR] \fB-o\fR \fIfield\fR[,...]] [\fIwifi-link\fR]
+.fi
+
+.LP
+.nf
+\fBdladm show-ether\fR [\fB-x\fR] [[\fB-p\fR] \fB-o\fR \fIfield\fR[,...]] [\fIether-link\fR]
+.fi
+
+.LP
+.nf
+\fBdladm set-linkprop\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] [\fB-z\fR \fIzonename\fR] \fB-p\fR \fIprop\fR=\fIvalue\fR[,...]
+ \fIlink\fR
+\fBdladm reset-linkprop\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] [\fB-z\fR \fIzonename\fR] [\fB-p\fR \fIprop\fR[,...]] \fIlink\fR
+\fBdladm show-linkprop\fR [\fB-P\fR] [\fB-z\fR \fIzonename\fR] [[\fB-c\fR] \fB-o\fR \fIfield\fR[,...]]
+ [\fB-p\fR \fIprop\fR[,...]] [\fIlink\fR]
+.fi
+
+.LP
+.nf
+\fBdladm create-secobj\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] [\fB-f\fR \fIfile\fR] \fB-c\fR \fIclass\fR \fIsecobj\fR
+\fBdladm delete-secobj\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] \fIsecobj\fR[,...]
+\fBdladm show-secobj\fR [\fB-P\fR] [[\fB-p\fR] \fB-o\fR \fIfield\fR[,...]] [\fIsecobj\fR,...]
+.fi
+
+.LP
+.nf
+\fBdladm create-vnic\fR [\fB-t\fR] \fB-l\fR \fIlink\fR [\fB-R\fR \fIroot-dir\fR] [\fB-m\fR \fIvalue\fR | auto |
+ {factory \fB-n\fR \fIslot-identifier\fR]} | {random [\fB-r\fR \fIprefix\fR]}]
+ [\fB-v\fR \fIvlan-id\fR] [\fB-p\fR \fIprop\fR=\fIvalue\fR[,...]] \fIvnic-link\fR
+\fBdladm delete-vnic\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] [\fB-z\fR \fIzonename\fR] \fIvnic-link\fR
+\fBdladm show-vnic\fR [\fB-pP\fR] [\fB-s\fR [\fB-i\fR \fIinterval\fR]] [\fB-o\fR \fIfield\fR[,...]]
+ [\fB-l\fR \fIlink\fR] [\fB-z\fR \fIzonename\fR] [\fIvnic-link\fR]
+.fi
+
+.LP
+.nf
+\fBdladm create-etherstub\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] \fIetherstub\fR
+\fBdladm delete-etherstub\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] \fIetherstub\fR
+\fBdladm show-etherstub\fR [\fIetherstub\fR]
+.fi
+
+.LP
+.nf
+\fBdladm create-iptun\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] \fB-T\fR \fItype\fR
+ [-a {local|remote}=<addr>[,...]] \fIiptun-link\fR
+\fBdladm modify-iptun\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] [-a {local|remote}=<addr>[,...]]
+ \fIiptun-link\fR
+\fBdladm delete-iptun\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] \fIiptun-link\fR
+\fBdladm show-iptun\fR [\fB-P\fR] [[\fB-p\fR] \fB-o\fR \fIfield\fR[,...]] [\fIiptun-link\fR]
+.fi
+
+.LP
+.nf
+\fBdladm create-overlay\fR [\fB-t\fR] \fB-e\fR \fIencap\fR \fB-s\fR \fIsearch\fR \fB-v\fR \fIvnetid\fR [\fB-p\fR \fIprop\fR=\fIvalue\fR[,...]] \fIoverlay\fR
+\fBdladm delete-overlay\fR \fIoverlay\fR
+\fBdladm modify-overlay\fR \fB-d\fR \fImac\fR | \fB-f\fR | \fB-s\fR \fImac=ip:port\fR \fIoverlay\fR
+\fBdladm show-overlay\fR [ \fB-f\fR | \fB-t\fR ] [[\fB-p\fR] \fB-o\fR \fIfield\fR[,...]] [\fIoverlay\fR]
+.fi
+
+.LP
+.nf
+\fBdladm show-usage\fR [\fB-a\fR] \fB-f\fR \fIfilename\fR [\fB-p\fR \fIplotfile\fR \fB-F\fR \fIformat\fR] [\fB-s\fR \fItime\fR]
+ [\fB-e\fR \fItime\fR] [\fIlink\fR]
+.fi
+
+.SH DESCRIPTION
+The \fBdladm\fR command is used to administer data-links. A data-link is
+represented in the system as a \fBSTREAMS DLPI\fR (v2) interface which can be
+plumbed under protocol stacks such as \fBTCP/IP\fR. Each data-link relies on
+either a single network device or an aggregation of devices to send packets to
+or receive packets from a network.
+.sp
+.LP
+Each \fBdladm\fR subcommand operates on one of the following objects:
+.sp
+.ne 2
+.na
+\fB\fBlink\fR\fR
+.ad
+.sp .6
+.RS 4n
+A datalink, identified by a name. In general, the name can use any alphanumeric
+characters (or the underscore, \fB_\fR), but must start with an alphabetic
+character and end with a number. A datalink name can be at most 31 characters,
+and the ending number must be between 0 and 4294967294 (inclusive). The ending
+number must not begin with a zero. Datalink names between 3 and 8 characters
+are recommended.
+.sp
+Some subcommands operate only on certain types or classes of datalinks. For
+those cases, the following object names are used:
+.sp
+.ne 2
+.na
+\fB\fBphys-link\fR\fR
+.ad
+.sp .6
+.RS 4n
+A physical datalink.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBvlan-link\fR\fR
+.ad
+.sp .6
+.RS 4n
+A VLAN datalink.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBaggr-link\fR\fR
+.ad
+.sp .6
+.RS 4n
+An aggregation datalink (or a key; see NOTES).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBether-link\fR\fR
+.ad
+.sp .6
+.RS 4n
+A physical Ethernet datalink.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBwifi-link\fR\fR
+.ad
+.sp .6
+.RS 4n
+A WiFi datalink.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBvnic-link\fR\fR
+.ad
+.sp .6
+.RS 4n
+A virtual network interface created on a link, an \fBetherstub\fR, or \fBan
+overlay\fR. It is a pseudo device that can be treated as if it were an network
+interface card on a machine.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBiptun-link\fR\fR
+.ad
+.sp .6
+.RS 4n
+An IP tunnel link.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdev\fR\fR
+.ad
+.sp .6
+.RS 4n
+A network device, identified by concatenation of a driver name and an instance
+number.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBetherstub\fR\fR
+.ad
+.sp .6
+.RS 4n
+An Ethernet stub can be used instead of a physical NIC to create VNICs. VNICs
+created on an \fBetherstub\fR will appear to be connected through a virtual
+switch, allowing complete virtual networks to be built without physical
+hardware.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBbridge\fR\fR
+.ad
+.sp .6
+.RS 4n
+A bridge instance, identified by an administratively-chosen name. The name may
+use any alphanumeric characters or the underscore, \fB_\fR, but must start and
+end with an alphabetic character. A bridge name can be at most 31 characters.
+The name \fBdefault\fR is reserved, as are all names starting with \fBSUNW\fR.
+.sp
+Note that appending a zero (\fB0\fR) to a bridge name produces a valid link
+name, used for observability.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsecobj\fR\fR
+.ad
+.sp .6
+.RS 4n
+A secure object, identified by an administratively-chosen name. The name can
+use any alphanumeric characters, as well as underscore (\fB_\fR), period
+(\fB\&.\fR), and hyphen (\fB-\fR). A secure object name can be at most 32
+characters.
+.RE
+
+.sp
+.ne 2
+.na
+.B overlay
+.ad
+.sp .6
+.RS 4n
+An overlay instance, identified by an administratively-chosen name. An overlay
+can be used to create or join an existing software defined network.
+VNICs created on an overlay will appear to be connected by a local virtual
+switch and will also be connected to interfaces on matching overlays provided by
+other hosts. For more information on overlay devices, see \fBoverlay\fR(5).
+.RE
+
+.SS "Options"
+Each \fBdladm\fR subcommand has its own set of options. However, many of the
+subcommands have the following as a common option:
+.sp
+.ne 2
+.na
+\fB\fB-R\fR \fIroot-dir\fR, \fB--root-dir\fR=\fIroot-dir\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies an alternate root directory where the operation-such as creation,
+deletion, or renaming-should apply.
+.RE
+
+.SS "SUBCOMMANDS"
+When invoked with no arguments,
+\fBdladm\fR
+shows the link configuration information, in the same way as
+\fBdladm show-link\fR.
+.sp
+The following subcommands are supported:
+.sp
+.ne 2
+.na
+\fBdladm help\fR
+.ad
+.sp .6
+.RS 4n
+Display brief command usage.
+.RE
+.sp
+.ne 2
+.na
+\fB\fBdladm show-link\fR [\fB-P\fR] [\fB-s\fR [\fB-i\fR \fIinterval\fR]]
+[[\fB-p\fR] \fB-o\fR \fIfield\fR[,...]][\fIlink\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Show link configuration information (the default) or statistics, either for all
+datalinks or for the specified link \fIlink\fR. By default, the system is
+configured with one datalink for each known network device.
+.sp
+.ne 2
+.na
+\fB\fB-o\fR \fIfield\fR[,...], \fB--output\fR=\fIfield\fR[,...]\fR
+.ad
+.sp .6
+.RS 4n
+A case-insensitive, comma-separated list of output fields to display. When not
+modified by the \fB-s\fR option (described below), the field name must be one
+of the fields listed below, or the special value \fBall\fR to display all
+fields. By default (without \fB-o\fR), \fBshow-link\fR displays all fields.
+.sp
+.ne 2
+.na
+\fB\fBLINK\fR\fR
+.ad
+.sp .6
+.RS 4n
+The name of the datalink.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBCLASS\fR\fR
+.ad
+.sp .6
+.RS 4n
+The class of the datalink. \fBdladm\fR distinguishes between the following
+classes:
+.sp
+.ne 2
+.na
+\fB\fBphys\fR\fR
+.ad
+.sp .6
+.RS 4n
+A physical datalink. The \fBshow-phys\fR subcommand displays more detail for
+this class of datalink.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBaggr\fR\fR
+.ad
+.sp .6
+.RS 4n
+An IEEE 802.3ad link aggregation. The \fBshow-aggr\fR subcommand displays more
+detail for this class of datalink.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBvlan\fR\fR
+.ad
+.sp .6
+.RS 4n
+A VLAN datalink. The \fBshow-vlan\fR subcommand displays more detail for this
+class of datalink.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBvnic\fR\fR
+.ad
+.sp .6
+.RS 4n
+A virtual network interface. The \fBshow-vnic\fR subcommand displays more
+detail for this class of datalink.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBoverlay\fR\fR
+.ad
+.sp .6
+.RS 4n
+A virtual device that is used to create or join a software defined
+network. The \fBshow-overlay\fR subcommand displays more detail for this
+class of datalink.
+.RE
+
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBMTU\fR\fR
+.ad
+.sp .6
+.RS 4n
+The maximum transmission unit size for the datalink being displayed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSTATE\fR\fR
+.ad
+.sp .6
+.RS 4n
+The link state of the datalink. The state can be \fBup\fR, \fBdown\fR, or
+\fBunknown\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBBRIDGE\fR\fR
+.ad
+.sp .6
+.RS 4n
+The name of the bridge to which this link is assigned, if any.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBOVER\fR\fR
+.ad
+.sp .6
+.RS 4n
+The physical datalink(s) over which the datalink is operating. This applies to
+\fBaggr\fR, \fBbridge\fR, and \fBvlan\fR classes of datalinks. A VLAN is
+created over a single physical datalink, a bridge has multiple attached links,
+and an aggregation is comprised of one or more physical datalinks.
+.RE
+
+When the \fB-o\fR option is used in conjunction with the \fB-s\fR option, used
+to display link statistics, the field name must be one of the fields listed
+below, or the special value \fBall\fR to display all fields
+.sp
+.ne 2
+.na
+\fB\fBLINK\fR\fR
+.ad
+.sp .6
+.RS 4n
+The name of the datalink.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBIPACKETS\fR\fR
+.ad
+.sp .6
+.RS 4n
+Number of packets received on this link.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBRBYTES\fR\fR
+.ad
+.sp .6
+.RS 4n
+Number of bytes received on this link.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBIERRORS\fR\fR
+.ad
+.sp .6
+.RS 4n
+Number of input errors.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBOPACKETS\fR\fR
+.ad
+.sp .6
+.RS 4n
+Number of packets sent on this link.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBOBYTES\fR\fR
+.ad
+.sp .6
+.RS 4n
+Number of bytes sent on this link.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBOERRORS\fR\fR
+.ad
+.sp .6
+.RS 4n
+Number of output errors.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR, \fB--parsable\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display using a stable machine-parsable format. The \fB-o\fR option is
+required with \fB-p\fR. See "Parsable Output Format", below.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-P\fR, \fB--persistent\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display the persistent link configuration.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR, \fB--statistics\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display link statistics.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-i\fR \fIinterval\fR, \fB--interval\fR=\fIinterval\fR\fR
+.ad
+.sp .6
+.RS 4n
+Used with the \fB-s\fR option to specify an interval, in seconds, at which
+statistics should be displayed. If this option is not specified, statistics
+will be displayed only once.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdladm rename-link\fR [\fB-R\fR \fIroot-dir\fR] [\fB-z\fR \fIzonename\fR] \fIlink\fR \fInew-link\fR\fR
+.ad
+.sp .6
+.RS 4n
+Rename \fIlink\fR to \fInew-link\fR. This is used to give a link a meaningful
+name, or to associate existing link configuration such as link properties of a
+removed device with a new device. See the \fBEXAMPLES\fR section for specific
+examples of how this subcommand is used.
+.sp
+.ne 2
+.na
+\fB\fB-R\fR \fIroot-dir\fR, \fB--root-dir\fR=\fIroot-dir\fR\fR
+.ad
+.sp .6
+.RS 4n
+See "Options," above.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-z\fR \fIzonename\fR
+.ad
+.sp .6
+.RS 4n
+A link assigned to a zone can only be renamed while the zone is in the ready state.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdladm delete-phys\fR \fIphys-link\fR\fR
+.ad
+.sp .6
+.RS 4n
+This command is used to delete the persistent configuration of a link
+associated with physical hardware which has been removed from the system. See
+the \fBEXAMPLES\fR section.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdladm show-phys\fR [\fB-m\fR | \fB-H\fR | \fB-P\fR] [[\fB-p\fR] \fB-o\fR \fIfield\fR[,...]]
+[\fIphys-link\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Show the physical device and attributes of all physical links, or of the named
+physical link. Without \fB-P\fR, only physical links that are available on the
+running system are displayed.
+.sp
+.ne 2
+.na
+\fB\fB-H\fR\fR
+.ad
+.sp .6
+.RS 4n
+Show hardware resource usage, as returned by the NIC driver. Output from
+\fB-H\fR displays the following elements:
+.sp
+.ne 2
+.na
+\fB\fBLINK\fR\fR
+.ad
+.sp .6
+.RS 4n
+A physical device corresponding to a NIC driver.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBGROUP\fR\fR
+.ad
+.sp .6
+.RS 4n
+A collection of rings.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBGROUPTYPE\fR\fR
+.ad
+.sp .6
+.RS 4n
+RX or TX. All rings in a group are of the same group type.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBRINGS\fR\fR
+.ad
+.sp .6
+.RS 4n
+A hardware resource used by a data link, subject to assignment by a driver to
+different groups.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBCLIENTS\fR\fR
+.ad
+.sp .6
+.RS 4n
+MAC clients that are using the rings within a group.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-m\fR\fR
+.ad
+.sp .6
+.RS 4n
+Show MAC addresses and related information. Output from \fB-m\fR
+displays the following elements:
+.sp
+.ne 2
+.na
+\fB\fBLINK\fR\fR
+.ad
+.sp .6
+.RS 4n
+A physical device corresponding to a NIC driver.
+.RE
+.sp
+.ne 2
+.na
+\fB\fBSLOT\fR\fR
+.ad
+.sp .6
+.RS 4n
+When a given physical device has multiple factory MAC addresses, this
+indicates the slot of the corresponding MAC address which can be used as
+part of a call to \fBcreate-vnic\fR.
+.RE
+.sp
+.ne 2
+.na
+\fB\fBADDRESS\fR\fR
+.ad
+.sp .6
+.RS 4n
+Displays the MAC address of the device.
+.RE
+.sp
+.ne 2
+.na
+\fB\fBINUSE\fR\fR
+.ad
+.sp .6
+.RS 4n
+Displays whether or not a MAC Address is actively being used.
+.RE
+.sp
+.ne 2
+.na
+\fB\fBCLIENT\fR\fR
+.ad
+.sp .6
+.RS 4n
+MAC clients that are using the address.
+.RE
+.RE
+.sp
+.ne 2
+.na
+\fB\fB-o\fR \fIfield\fR, \fB--output\fR=\fIfield\fR\fR
+.ad
+.sp .6
+.RS 4n
+A case-insensitive, comma-separated list of output fields to display. The field
+name must be one of the fields listed below, or the special value \fBall\fR, to
+display all fields. Note that if either \fB-H\fR or \fB-m\fR are specified, then
+the valid options are those described in their respective sections. For each
+link, the following fields can be displayed:
+.sp
+.ne 2
+.na
+\fB\fBLINK\fR\fR
+.ad
+.sp .6
+.RS 4n
+The name of the datalink.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBMEDIA\fR\fR
+.ad
+.sp .6
+.RS 4n
+The media type provided by the physical datalink.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSTATE\fR\fR
+.ad
+.sp .6
+.RS 4n
+The state of the link. This can be \fBup\fR, \fBdown\fR, or \fBunknown\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSPEED\fR\fR
+.ad
+.sp .6
+.RS 4n
+The current speed of the link, in megabits per second.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBDUPLEX\fR\fR
+.ad
+.sp .6
+.RS 4n
+For Ethernet links, the full/half duplex status of the link is displayed if the
+link state is \fBup\fR. The duplex is displayed as \fBunknown\fR in all other
+cases.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBDEVICE\fR\fR
+.ad
+.sp .6
+.RS 4n
+The name of the physical device under this link.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR, \fB--parsable\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display using a stable machine-parsable format. The \fB-o\fR option is
+required with \fB-p\fR. See "Parsable Output Format", below.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-P\fR, \fB--persistent\fR\fR
+.ad
+.sp .6
+.RS 4n
+This option displays persistent configuration for all links, including those
+that have been removed from the system. The output provides a \fBFLAGS\fR
+column in which the \fBr\fR flag indicates that the physical device associated
+with a physical link has been removed. For such links, \fBdelete-phys\fR can be
+used to purge the link's configuration from the system.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdladm create-aggr\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] [\fB-P\fR
+\fIpolicy\fR] [\fB-L\fR \fImode\fR] [\fB-T\fR \fItime\fR] [\fB-u\fR
+\fIaddress\fR] \fB-l\fR \fIether-link1\fR [\fB-l\fR \fIether-link2\fR...]
+\fIaggr-link\fR\fR
+.ad
+.sp .6
+.RS 4n
+Combine a set of links into a single IEEE 802.3ad link aggregation named
+\fIaggr-link\fR. The use of an integer \fIkey\fR to generate a link name for
+the aggregation is also supported for backward compatibility. Many of the
+\fB*\fR\fB-aggr\fR subcommands below also support the use of a \fIkey\fR to
+refer to a given aggregation, but use of the aggregation link name is
+preferred. See the \fBNOTES\fR section for more information on keys.
+.sp
+\fBdladm\fR supports a number of port selection policies for an aggregation of
+ports. (See the description of the \fB-P\fR option, below.) If you do not
+specify a policy, \fBcreate-aggr\fR uses the default, the L4 policy, described
+under the \fB-P\fR option.
+.sp
+.ne 2
+.na
+\fB\fB-l\fR \fIether-link\fR, \fB--link\fR=\fIether-link\fR\fR
+.ad
+.sp .6
+.RS 4n
+Each Ethernet link (or port) in the aggregation is specified using an \fB-l\fR
+option followed by the name of the link to be included in the aggregation.
+Multiple links are included in the aggregation by specifying multiple \fB-l\fR
+options. For backward compatibility with previous versions of Solaris, the
+\fBdladm\fR command also supports the using the \fB-d\fR option (or
+\fB--dev\fR) with a device name to specify links by their underlying device
+name. The other \fB*\fR\fB-aggr\fR subcommands that take \fB-l\fR options also
+accept \fB-d\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-t\fR, \fB--temporary\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies that the aggregation is temporary. Temporary aggregations last until
+the next reboot.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-R\fR \fIroot-dir\fR, \fB--root-dir\fR=\fIroot-dir\fR\fR
+.ad
+.sp .6
+.RS 4n
+See "Options," above.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-P\fR \fIpolicy\fR, \fB--policy\fR=\fIpolicy\fR\fR
+.ad
+.br
+.na
+\fB\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the port selection policy to use for load spreading of outbound
+traffic. The policy specifies which \fIdev\fR object is used to send packets. A
+policy is a list of one or more layers specifiers separated by commas. A layer
+specifier is one of the following:
+.sp
+.ne 2
+.na
+\fB\fBL2\fR\fR
+.ad
+.sp .6
+.RS 4n
+Select outbound device according to source and destination \fBMAC\fR addresses
+of the packet.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBL3\fR\fR
+.ad
+.sp .6
+.RS 4n
+Select outbound device according to source and destination \fBIP\fR addresses
+of the packet.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBL4\fR\fR
+.ad
+.sp .6
+.RS 4n
+Select outbound device according to the upper layer protocol information
+contained in the packet. For \fBTCP\fR and \fBUDP\fR, this includes source and
+destination ports. For IPsec, this includes the \fBSPI\fR (Security Parameters
+Index).
+.RE
+
+For example, to use upper layer protocol information, the following policy can
+be used:
+.sp
+.in +2
+.nf
+-P L4
+.fi
+.in -2
+.sp
+
+Note that policy L4 is the default.
+.sp
+To use the source and destination \fBMAC\fR addresses as well as the source and
+destination \fBIP\fR addresses, the following policy can be used:
+.sp
+.in +2
+.nf
+-P L2,L3
+.fi
+.in -2
+.sp
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-L\fR \fImode\fR, \fB--lacp-mode\fR=\fImode\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies whether \fBLACP\fR should be used and, if used, the mode in which it
+should operate. Supported values are \fBoff\fR, \fBactive\fR or \fBpassive\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-T\fR \fItime\fR, \fB--lacp-timer\fR=\fItime\fR\fR
+.ad
+.br
+.na
+\fB\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the \fBLACP\fR timer value. The supported values are \fBshort\fR or
+\fBlong\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-u\fR \fIaddress\fR, \fB--unicast\fR=\fIaddress\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies a fixed unicast hardware address to be used for the aggregation. If
+this option is not specified, then an address is automatically chosen from the
+set of addresses of the component devices.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdladm modify-aggr\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] [\fB-P\fR
+\fIpolicy\fR] [\fB-L\fR \fImode\fR] [\fB-T\fR \fItime\fR] [\fB-u\fR
+\fIaddress\fR] \fIaggr-link\fR\fR
+.ad
+.sp .6
+.RS 4n
+Modify the parameters of the specified aggregation.
+.sp
+.ne 2
+.na
+\fB\fB-t\fR, \fB--temporary\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies that the modification is temporary. Temporary aggregations last until
+the next reboot.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-R\fR \fIroot-dir\fR, \fB--root-dir\fR=\fIroot-dir\fR\fR
+.ad
+.sp .6
+.RS 4n
+See "Options," above.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-P\fR \fIpolicy\fR, \fB--policy\fR=\fIpolicy\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the port selection policy to use for load spreading of outbound
+traffic. See \fBdladm create-aggr\fR for a description of valid policy values.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-L\fR \fImode\fR, \fB--lacp-mode\fR=\fImode\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies whether \fBLACP\fR should be used and, if used, the mode in which it
+should operate. Supported values are \fBoff\fR, \fBactive\fR, or \fBpassive\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-T\fR \fItime\fR, \fB--lacp-timer\fR=\fItime\fR\fR
+.ad
+.br
+.na
+\fB\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the \fBLACP\fR timer value. The supported values are \fBshort\fR or
+\fBlong\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-u\fR \fIaddress\fR, \fB--unicast\fR=\fIaddress\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies a fixed unicast hardware address to be used for the aggregation. If
+this option is not specified, then an address is automatically chosen from the
+set of addresses of the component devices.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdladm delete-aggr\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR]
+\fIaggr-link\fR\fR
+.ad
+.sp .6
+.RS 4n
+Deletes the specified aggregation.
+.sp
+.ne 2
+.na
+\fB\fB-t\fR, \fB--temporary\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies that the deletion is temporary. Temporary deletions last until the
+next reboot.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-R\fR \fIroot-dir\fR, \fB--root-dir\fR=\fIroot-dir\fR\fR
+.ad
+.sp .6
+.RS 4n
+See "Options," above.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdladm add-aggr\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] \fB-l\fR
+\fIether-link1\fR [\fB--link\fR=\fIether-link2\fR...] \fIaggr-link\fR\fR
+.ad
+.sp .6
+.RS 4n
+Adds links to the specified aggregation.
+.sp
+.ne 2
+.na
+\fB\fB-l\fR \fIether-link\fR, \fB--link\fR=\fIether-link\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies an Ethernet link to add to the aggregation. Multiple links can be
+added by supplying multiple \fB-l\fR options.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-t\fR, \fB--temporary\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies that the additions are temporary. Temporary additions last until the
+next reboot.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-R\fR \fIroot-dir\fR, \fB--root-dir\fR=\fIroot-dir\fR\fR
+.ad
+.sp .6
+.RS 4n
+See "Options," above.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdladm remove-aggr\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] \fB-l\fR
+\fIether-link1\fR [\fB--l\fR=\fIether-link2\fR...] \fIaggr-link\fR\fR
+.ad
+.sp .6
+.RS 4n
+Removes links from the specified aggregation.
+.sp
+.ne 2
+.na
+\fB\fB-l\fR \fIether-link\fR, \fB--link\fR=\fIether-link\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies an Ethernet link to remove from the aggregation. Multiple links can
+be added by supplying multiple \fB-l\fR options.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-t\fR, \fB--temporary\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies that the removals are temporary. Temporary removal last until the
+next reboot.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-R\fR \fIroot-dir\fR, \fB--root-dir\fR=\fIroot-dir\fR\fR
+.ad
+.sp .6
+.RS 4n
+See "Options," above.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdladm show-aggr\fR [\fB-PLx\fR] [\fB-s\fR [\fB-i\fR \fIinterval\fR]]
+[[\fB-p\fR] \fB-o\fR \fIfield\fR[,...]] [\fIaggr-link\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Show aggregation configuration (the default), \fBLACP\fR information, or
+statistics, either for all aggregations or for the specified aggregation.
+.sp
+By default (with no options), the following fields can be displayed:
+.sp
+.ne 2
+.na
+\fB\fBLINK\fR\fR
+.ad
+.sp .6
+.RS 4n
+The name of the aggregation link.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPOLICY\fR\fR
+.ad
+.sp .6
+.RS 4n
+The LACP policy of the aggregation. See the \fBcreate-aggr\fR \fB-P\fR option
+for a description of the possible values.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBADDRPOLICY\fR\fR
+.ad
+.sp .6
+.RS 4n
+Either \fBauto\fR, if the aggregation is configured to automatically configure
+its unicast MAC address (the default if the \fB-u\fR option was not used to
+create or modify the aggregation), or \fBfixed\fR, if \fB-u\fR was used to set
+a fixed MAC address.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBLACPACTIVITY\fR\fR
+.ad
+.sp .6
+.RS 4n
+The LACP mode of the aggregation. Possible values are \fBoff\fR, \fBactive\fR,
+or \fBpassive\fR, as set by the \fB-l\fR option to \fBcreate-aggr\fR or
+\fBmodify-aggr\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBLACPTIMER\fR\fR
+.ad
+.sp .6
+.RS 4n
+The LACP timer value of the aggregation as set by the \fB-T\fR option of
+\fBcreate-aggr\fR or \fBmodify-aggr\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBFLAGS\fR\fR
+.ad
+.sp .6
+.RS 4n
+A set of state flags associated with the aggregation. The only possible flag is
+\fBf\fR, which is displayed if the administrator forced the creation the
+aggregation using the \fB-f\fR option to \fBcreate-aggr\fR. Other flags might
+be defined in the future.
+.RE
+
+The \fBshow-aggr\fR command accepts the following options:
+.sp
+.ne 2
+.na
+\fB\fB-L\fR, \fB--lacp\fR\fR
+.ad
+.sp .6
+.RS 4n
+Displays detailed \fBLACP\fR information for the aggregation link and each
+underlying port. Most of the state information displayed by this option is
+defined by IEEE 802.3. With this option, the following fields can be displayed:
+.sp
+.ne 2
+.na
+\fB\fBLINK\fR\fR
+.ad
+.sp .6
+.RS 4n
+The name of the aggregation link.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPORT\fR\fR
+.ad
+.sp .6
+.RS 4n
+The name of one of the underlying aggregation ports.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBAGGREGATABLE\fR\fR
+.ad
+.sp .6
+.RS 4n
+Whether the port can be added to the aggregation.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSYNC\fR\fR
+.ad
+.sp .6
+.RS 4n
+If \fByes\fR, the system considers the port to be synchronized and part of the
+aggregation.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBCOLL\fR\fR
+.ad
+.sp .6
+.RS 4n
+If \fByes\fR, collection of incoming frames is enabled on the associated port.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBDIST\fR\fR
+.ad
+.sp .6
+.RS 4n
+If \fByes\fR, distribution of outgoing frames is enabled on the associated
+port.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBDEFAULTED\fR\fR
+.ad
+.sp .6
+.RS 4n
+If \fByes\fR, the port is using defaulted partner information (that is, has not
+received LACP data from the LACP partner).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEXPIRED\fR\fR
+.ad
+.sp .6
+.RS 4n
+If \fByes\fR, the receive state of the port is in the \fBEXPIRED\fR state.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-x\fR, \fB--extended\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display additional aggregation information including detailed information on
+each underlying port. With \fB-x\fR, the following fields can be displayed:
+.sp
+.ne 2
+.na
+\fB\fBLINK\fR\fR
+.ad
+.sp .6
+.RS 4n
+The name of the aggregation link.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPORT\fR\fR
+.ad
+.sp .6
+.RS 4n
+The name of one of the underlying aggregation ports.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSPEED\fR\fR
+.ad
+.sp .6
+.RS 4n
+The speed of the link or port in megabits per second.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBDUPLEX\fR\fR
+.ad
+.sp .6
+.RS 4n
+The full/half duplex status of the link or port is displayed if the link state
+is \fBup\fR. The duplex status is displayed as \fBunknown\fR in all other
+cases.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSTATE\fR\fR
+.ad
+.sp .6
+.RS 4n
+The link state. This can be \fBup\fR, \fBdown\fR, or \fBunknown\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBADDRESS\fR\fR
+.ad
+.sp .6
+.RS 4n
+The MAC address of the link or port.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPORTSTATE\fR\fR
+.ad
+.sp .6
+.RS 4n
+This indicates whether the individual aggregation port is in the \fBstandby\fR
+or \fBattached\fR state.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-o\fR \fIfield\fR[,...], \fB--output\fR=\fIfield\fR[,...]\fR
+.ad
+.sp .6
+.RS 4n
+A case-insensitive, comma-separated list of output fields to display. The field
+name must be one of the fields listed above, or the special value \fBall\fR, to
+display all fields. The fields applicable to the \fB-o\fR option are limited to
+those listed under each output mode. For example, if using \fB-L\fR, only the
+fields listed under \fB-L\fR, above, can be used with \fB-o\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR, \fB--parsable\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display using a stable machine-parsable format. The \fB-o\fR option is
+required with \fB-p\fR. See "Parsable Output Format", below.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-P\fR, \fB--persistent\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display the persistent aggregation configuration rather than the state of the
+running system.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR, \fB--statistics\fR\fR
+.ad
+.sp .6
+.RS 4n
+Displays aggregation statistics.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-i\fR \fIinterval\fR, \fB--interval\fR=\fIinterval\fR\fR
+.ad
+.sp .6
+.RS 4n
+Used with the \fB-s\fR option to specify an interval, in seconds, at which
+statistics should be displayed. If this option is not specified, statistics
+will be displayed only once.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdladm create-bridge\fR [ \fB-P\fR \fIprotect\fR] [\fB-R\fR
+\fIroot-dir\fR] [ \fB-p\fR \fIpriority\fR] [ \fB-m\fR \fImax-age\fR] [ \fB-h\fR
+\fIhello-time\fR] [ \fB-d\fR \fIforward-delay\fR] [ \fB-f\fR
+\fIforce-protocol\fR] [\fB-l\fR \fIlink\fR...] \fIbridge-name\fR\fR
+.ad
+.sp .6
+.RS 4n
+Create an 802.1D bridge instance and optionally assign one or more network
+links to the new bridge. By default, no bridge instances are present on the
+system.
+.sp
+In order to bridge between links, you must create at least one bridge instance.
+Each bridge instance is separate, and there is no forwarding connection between
+bridges.
+.sp
+.ne 2
+.na
+\fB\fB-P\fR \fIprotect\fR, \fB--protect\fR=\fIprotect\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies a protection method. The defined protection methods are \fBstp\fR for
+the Spanning Tree Protocol and trill for \fBTRILL\fR, which is used on
+RBridges. The default value is \fBstp\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-R\fR \fIroot-dir\fR, \fB--root-dir\fR=\fIroot-dir\fR\fR
+.ad
+.sp .6
+.RS 4n
+See "Options," above.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR \fIpriority\fR, \fB--priority\fR=\fIpriority\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the Bridge Priority. This sets the IEEE STP priority value for
+determining the root bridge node in the network. The default value is
+\fB32768\fR. Valid values are \fB0\fR (highest priority) to \fB61440\fR (lowest
+priority), in increments of 4096.
+.sp
+If a value not evenly divisible by 4096 is used, the system silently rounds
+downward to the next lower value that is divisible by 4096.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-m\fR \fImax-age\fR, \fB--max-age\fR=\fImax-age\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the maximum age for configuration information in seconds. This sets
+the STP Bridge Max Age parameter. This value is used for all nodes in the
+network if this node is the root bridge. Bridge link information older than
+this time is discarded. It defaults to 20 seconds. Valid values are from 6 to
+40 seconds. See the \fB-d\fR \fIforward-delay\fR parameter for additional
+constraints.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-h\fR \fIhello-time\fR, \fB--hello-time\fR=\fIhello-time\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the STP Bridge Hello Time parameter. When this node is the root node,
+it sends Configuration BPDUs at this interval throughout the network. The
+default value is 2 seconds. Valid values are from 1 to 10 seconds. See the
+\fB-d\fR \fIforward-delay\fR parameter for additional constraints.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-d\fR \fIforward-delay\fR, \fB--forward-delay\fR=\fIforward-delay\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the STP Bridge Forward Delay parameter. When this node is the root
+node, then all bridges in the network use this timer to sequence the link
+states when a port is enabled. The default value is 15 seconds. Valid values
+are from 4 to 30 seconds.
+.sp
+Bridges must obey the following two constraints:
+.sp
+.in +2
+.nf
+2 * (\fIforward-delay\fR - 1.0) >= \fImax-age\fR
+
+\fImax-age\fR >= 2 * (\fIhello-time\fR + 1.0)
+.fi
+.in -2
+.sp
+
+Any parameter setting that would violate those constraints is treated as an
+error and causes the command to fail with a diagnostic message. The message
+provides valid alternatives to the supplied values.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR \fIforce-protocol\fR,
+\fB--force-protocol\fR=\fIforce-protocol\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the MSTP forced maximum supported protocol. The default value is 3.
+Valid values are non-negative integers. The current implementation does not
+support RSTP or MSTP, so this currently has no effect. However, to prevent MSTP
+from being used in the future, the parameter may be set to \fB0\fR for STP only
+or \fB2\fR for STP and RSTP.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR \fIlink\fR, \fB--link\fR=\fIlink\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies one or more links to add to the newly-created bridge. This is similar
+to creating the bridge and then adding one or more links, as with the
+\fBadd-bridge\fR subcommand. However, if any of the links cannot be added, the
+entire command fails, and the new bridge itself is not created. To add multiple
+links on the same command line, repeat this option for each link. You are
+permitted to create bridges without links. For more information about link
+assignments, see the \fBadd-bridge\fR subcommand.
+.RE
+
+Bridge creation and link assignment require the \fBPRIV_SYS_DL_CONFIG\fR
+privilege. Bridge creation might fail if the optional bridging feature is not
+installed on the system.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdladm modify-bridge\fR [ \fB-P\fR \fIprotect\fR] [\fB-R\fR
+\fIroot-dir\fR] [ \fB-p\fR \fIpriority\fR] [ \fB-m\fR \fImax-age\fR] [ \fB-h\fR
+\fIhello-time\fR] [ \fB-d\fR \fIforward-delay\fR] [ \fB-f\fR
+\fIforce-protocol\fR] [\fB-l\fR \fIlink\fR...] \fIbridge-name\fR\fR
+.ad
+.sp .6
+.RS 4n
+Modify the operational parameters of an existing bridge. The options are the
+same as for the \fBcreate-bridge\fR subcommand, except that the \fB-l\fR option
+is not permitted. To add links to an existing bridge, use the \fBadd-bridge\fR
+subcommand.
+.sp
+Bridge parameter modification requires the \fBPRIV_SYS_DL_CONFIG\fR privilege.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdladm delete-bridge\fR [\fB-R\fR \fIroot-dir\fR] \fIbridge-name\fR\fR
+.ad
+.sp .6
+.RS 4n
+Delete a bridge instance. The bridge being deleted must not have any attached
+links. Use the \fBremove-bridge\fR subcommand to deactivate links before
+deleting a bridge.
+.sp
+Bridge deletion requires the \fBPRIV_SYS_DL_CONFIG\fR privilege.
+.sp
+The \fB-R\fR (\fB--root-dir\fR) option is the same as for the
+\fBcreate-bridge\fR subcommand.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdladm add-bridge\fR [\fB-R\fR \fIroot-dir\fR] \fB-l\fR \fIlink\fR
+[\fB-l\fR \fIlink\fR...] \fIbridge-name\fR\fR
+.ad
+.sp .6
+.RS 4n
+Add one or more links to an existing bridge. If multiple links are specified,
+and adding any one of them results in an error, the command fails and no
+changes are made to the system.
+.sp
+Link addition to a bridge requires the \fBPRIV_SYS_DL_CONFIG\fR privilege.
+.sp
+A link may be a member of at most one bridge. An error occurs when you attempt
+to add a link that already belongs to another bridge. To move a link from one
+bridge instance to another, remove it from the current bridge before adding it
+to a new one.
+.sp
+The links assigned to a bridge must not also be VLANs, VNICs, or tunnels. Only
+physical Ethernet datalinks, aggregation datalinks, wireless links, and
+Ethernet stubs are permitted to be assigned to a bridge.
+.sp
+Links assigned to a bridge must all have the same MTU. This is checked when the
+link is assigned. The link is added to the bridge in a deactivated form if it
+is not the first link on the bridge and it has a differing MTU.
+.sp
+Note that systems using bridging should not set the \fBeeprom\fR(8)
+\fBlocal-mac-address?\fR variable to false.
+.sp
+The options are the same as for the \fBcreate-bridge\fR subcommand.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdladm remove-bridge\fR [\fB-R\fR \fIroot-dir\fR] \fB-l\fR \fIlink\fR
+[\fB-l\fR \fIlink\fR...] \fIbridge-name\fR\fR
+.ad
+.sp .6
+.RS 4n
+Remove one or more links from a bridge instance. If multiple links are
+specified, and removing any one of them would result in an error, the command
+fails and none are removed.
+.sp
+Link removal from a bridge requires the \fBPRIV_SYS_DL_CONFIG\fR privilege.
+.sp
+The options are the same as for the \fBcreate-bridge\fR subcommand.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdladm show-bridge\fR [\fB-flt\fR] [\fB-s\fR [\fB-i\fR \fIinterval\fR]]
+[[\fB-p\fR] \fB-o\fR \fIfield\fR,...] [\fIbridge-name\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Show the running status and configuration of bridges, their attached links,
+learned forwarding entries, and \fBTRILL\fR nickname databases. When showing
+overall bridge status and configuration, the bridge name can be omitted to show
+all bridges. The other forms require a specified bridge.
+.sp
+The show-bridge subcommand accepts the following options:
+.sp
+.ne 2
+.na
+\fB\fB-i\fR \fIinterval\fR, \fB--interval\fR=\fIinterval\fR\fR
+.ad
+.sp .6
+.RS 4n
+Used with the \fB-s\fR option to specify an interval, in seconds, at which
+statistics should be displayed. If this option is not specified, statistics
+will be displayed only once.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR, \fB--statistics\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display statistics for the specified bridges or for a given bridge's attached
+links. This option cannot be used with the \fB-f\fR and \fB-t\fR options.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR, \fB--parsable\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display using a stable machine-parsable format. See "Parsable Output Format,"
+below.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-o\fR \fIfield\fR[,...], \fB--output\fR=\fIfield\fR[,...]\fR
+.ad
+.sp .6
+.RS 4n
+A case-insensitive, comma-separated list of output fields to display. The field
+names are described below. The special value all displays all fields. Each set
+of fields has its own default set to display when \fB-o\fR is not specified.
+.RE
+
+By default, the \fBshow-bridge\fR subcommand shows bridge configuration. The
+following fields can be shown:
+.sp
+.ne 2
+.na
+\fB\fBBRIDGE\fR\fR
+.ad
+.sp .6
+.RS 4n
+The name of the bridge.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBADDRESS\fR\fR
+.ad
+.sp .6
+.RS 4n
+The Bridge Unique Identifier value (MAC address).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIORITY\fR\fR
+.ad
+.sp .6
+.RS 4n
+Configured priority value; set by \fB-p\fR with \fBcreate-bridge\fR and
+\fBmodify-bridge\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBBMAXAGE\fR\fR
+.ad
+.sp .6
+.RS 4n
+Configured bridge maximum age; set by \fB-m\fR with \fBcreate-bridge\fR and
+\fBmodify-bridge\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBBHELLOTIME\fR\fR
+.ad
+.sp .6
+.RS 4n
+Configured bridge hello time; set by \fB-h\fR with \fBcreate-bridge\fR and
+\fBmodify-bridge\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBBFWDDELAY\fR\fR
+.ad
+.sp .6
+.RS 4n
+Configured forwarding delay; set by \fB-d\fR with \fBcreate-bridge\fR and
+\fBmodify-bridge\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBFORCEPROTO\fR\fR
+.ad
+.sp .6
+.RS 4n
+Configured forced maximum protocol; set by \fB-f\fR with \fBcreate-bridge\fR
+and \fBmodify-bridge\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBTCTIME\fR\fR
+.ad
+.sp .6
+.RS 4n
+Time, in seconds, since last topology change.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBTCCOUNT\fR\fR
+.ad
+.sp .6
+.RS 4n
+Count of the number of topology changes.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBTCHANGE\fR\fR
+.ad
+.sp .6
+.RS 4n
+This indicates that a topology change was detected.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBDESROOT\fR\fR
+.ad
+.sp .6
+.RS 4n
+Bridge Identifier of the root node.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBROOTCOST\fR\fR
+.ad
+.sp .6
+.RS 4n
+Cost of the path to the root node.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBROOTPORT\fR\fR
+.ad
+.sp .6
+.RS 4n
+Port number used to reach the root node.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBMAXAGE\fR\fR
+.ad
+.sp .6
+.RS 4n
+Maximum age value from the root node.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBHELLOTIME\fR\fR
+.ad
+.sp .6
+.RS 4n
+Hello time value from the root node.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBFWDDELAY\fR\fR
+.ad
+.sp .6
+.RS 4n
+Forward delay value from the root node.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBHOLDTIME\fR\fR
+.ad
+.sp .6
+.RS 4n
+Minimum BPDU interval.
+.RE
+
+By default, when the \fB-o\fR option is not specified, only the \fBBRIDGE\fR,
+\fBADDRESS\fR, \fBPRIORITY\fR, and \fBDESROOT\fR fields are shown.
+.sp
+When the \fB-s\fR option is specified, the \fBshow-bridge\fR subcommand shows
+bridge statistics. The following fields can be shown:
+.sp
+.ne 2
+.na
+\fB\fBBRIDGE\fR\fR
+.ad
+.sp .6
+.RS 4n
+Bridge name.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBDROPS\fR\fR
+.ad
+.sp .6
+.RS 4n
+Number of packets dropped due to resource problems.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBFORWARDS\fR\fR
+.ad
+.sp .6
+.RS 4n
+Number of packets forwarded from one link to another.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBMBCAST\fR\fR
+.ad
+.sp .6
+.RS 4n
+Number of multicast and broadcast packets handled by the bridge.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBRECV\fR\fR
+.ad
+.sp .6
+.RS 4n
+Number of packets received on all attached links.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSENT\fR\fR
+.ad
+.sp .6
+.RS 4n
+Number of packets sent on all attached links.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBUNKNOWN\fR\fR
+.ad
+.sp .6
+.RS 4n
+Number of packets handled that have an unknown destination. Such packets are
+sent to all links.
+.RE
+
+By default, when the \fB-o\fR option is not specified, only the \fBBRIDGE\fR,
+\fBDROPS\fR, and \fBFORWARDS\fR fields are shown.
+.sp
+The \fBshow-bridge\fR subcommand also accepts the following options:
+.sp
+.ne 2
+.na
+\fB\fB-l\fR, \fB--link\fR\fR
+.ad
+.sp .6
+.RS 4n
+Displays link-related status and statistics information for all links attached
+to a single bridge instance. By using this option and without the \fB-s\fR
+option, the following fields can be displayed for each link:
+.sp
+.ne 2
+.na
+\fB\fBLINK\fR\fR
+.ad
+.sp .6
+.RS 4n
+The link name.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBINDEX\fR\fR
+.ad
+.sp .6
+.RS 4n
+Port (link) index number on the bridge.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSTATE\fR\fR
+.ad
+.sp .6
+.RS 4n
+State of the link. The state can be \fBdisabled\fR, \fBdiscarding\fR,
+\fBlearning\fR, \fBforwarding\fR, \fBnon-stp\fR, or \fBbad-mtu\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBUPTIME\fR\fR
+.ad
+.sp .6
+.RS 4n
+Number of seconds since the last reset or initialization.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBOPERCOST\fR\fR
+.ad
+.sp .6
+.RS 4n
+Actual cost in use (1-65535).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBOPERP2P\fR\fR
+.ad
+.sp .6
+.RS 4n
+This indicates whether point-to-point (\fBP2P\fR) mode been detected.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBOPEREDGE\fR\fR
+.ad
+.sp .6
+.RS 4n
+This indicates whether edge mode has been detected.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBDESROOT\fR\fR
+.ad
+.sp .6
+.RS 4n
+The Root Bridge Identifier that has been seen on this port.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBDESCOST\fR\fR
+.ad
+.sp .6
+.RS 4n
+Path cost to the network root node through the designated port.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBDESBRIDGE\fR\fR
+.ad
+.sp .6
+.RS 4n
+Bridge Identifier for this port.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBDESPORT\fR\fR
+.ad
+.sp .6
+.RS 4n
+The ID and priority of the port used to transmit configuration messages for
+this port.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBTCACK\fR\fR
+.ad
+.sp .6
+.RS 4n
+This indicates whether Topology Change Acknowledge has been seen.
+.RE
+
+When the \fB-l\fR option is specified without the \fB-o\fR option, only the
+\fBLINK\fR, \fBSTATE\fR, \fBUPTIME\fR, and \fBDESROOT\fR fields are shown.
+.sp
+When the \fB-l\fR option is specified, the \fB-s\fR option can be used to
+display the following fields for each link:
+.sp
+.ne 2
+.na
+\fB\fBLINK\fR\fR
+.ad
+.sp .6
+.RS 4n
+Link name.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBCFGBPDU\fR\fR
+.ad
+.sp .6
+.RS 4n
+Number of configuration BPDUs received.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBTCNBPDU\fR\fR
+.ad
+.sp .6
+.RS 4n
+Number of topology change BPDUs received.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBRSTPBPDU\fR\fR
+.ad
+.sp .6
+.RS 4n
+Number of Rapid Spanning Tree BPDUs received.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBTXBPDU\fR\fR
+.ad
+.sp .6
+.RS 4n
+Number of BPDUs transmitted.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBDROPS\fR\fR
+.ad
+.sp .6
+.RS 4n
+Number of packets dropped due to resource problems.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBRECV\fR\fR
+.ad
+.sp .6
+.RS 4n
+Number of packets received by the bridge.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBXMIT\fR\fR
+.ad
+.sp .6
+.RS 4n
+Number of packets sent by the bridge.
+.RE
+
+When the \fB-o\fR option is not specified, only the \fBLINK\fR, \fBDROPS\fR,
+\fBRECV\fR, and \fBXMIT\fR fields are shown.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR, \fB--forwarding\fR\fR
+.ad
+.sp .6
+.RS 4n
+Displays forwarding entries for a single bridge instance. With this option, the
+following fields can be shown for each forwarding entry:
+.sp
+.ne 2
+.na
+\fB\fBDEST\fR\fR
+.ad
+.sp .6
+.RS 4n
+Destination MAC address.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBAGE\fR\fR
+.ad
+.sp .6
+.RS 4n
+Age of entry in seconds and milliseconds. Omitted for local entries.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBFLAGS\fR\fR
+.ad
+.sp .6
+.RS 4n
+The \fBL\fR (local) flag is shown if the MAC address belongs to an attached
+link or to a VNIC on one of the attached links.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBOUTPUT\fR\fR
+.ad
+.sp .6
+.RS 4n
+For local entries, this is the name of the attached link that has the MAC
+address. Otherwise, for bridges that use Spanning Tree Protocol, this is the
+output interface name. For RBridges, this is the output \fBTRILL\fR nickname.
+.RE
+
+When the \fB-o\fR option is not specified, the \fBDEST\fR, \fBAGE\fR,
+\fBFLAGS\fR, and \fBOUTPUT\fR fields are shown.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-t\fR, \fB--trill\fR\fR
+.ad
+.sp .6
+.RS 4n
+Displays \fBTRILL\fR nickname entries for a single bridge instance. With this
+option, the following fields can be shown for each \fBTRILL\fR nickname entry:
+.sp
+.ne 2
+.na
+\fB\fBNICK\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBTRILL\fR nickname for this RBridge, which is a number from 1 to 65535.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBFLAGS\fR\fR
+.ad
+.sp .6
+.RS 4n
+The \fBL\fR flag is shown if the nickname identifies the local system.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBLINK\fR\fR
+.ad
+.sp .6
+.RS 4n
+Link name for output when sending messages to this RBridge.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBNEXTHOP\fR\fR
+.ad
+.sp .6
+.RS 4n
+MAC address of the next hop RBridge that is used to reach the RBridge with this
+nickname.
+.RE
+
+When the \fB-o\fR option is not specified, the \fBNICK\fR, \fBFLAGS\fR,
+\fBLINK\fR, and \fBNEXTHOP\fR fields are shown.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdladm create-vlan\fR [\fB-ft\fR] [\fB-R\fR \fIroot-dir\fR] \fB-l\fR
+\fIether-link\fR \fB-v\fR \fIvid\fR [\fIvlan-link\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Create a tagged VLAN link with an ID of \fIvid\fR over Ethernet link
+\fIether-link\fR. The name of the VLAN link can be specified as
+\fIvlan\fR-\fIlink\fR. If the name is not specified, a name will be
+automatically generated (assuming that \fIether-link\fR is \fIname\fR\fIPPA\fR)
+as:
+.sp
+.in +2
+.nf
+<\fIname\fR><1000 * \fIvlan-tag\fR + \fIPPA\fR>
+.fi
+.in -2
+.sp
+
+For example, if \fIether-link\fR is \fBbge1\fR and \fIvid\fR is 2, the name
+generated is \fBbge2001\fR.
+.sp
+.ne 2
+.na
+\fB\fB-f\fR, \fB--force\fR\fR
+.ad
+.sp .6
+.RS 4n
+Force the creation of the VLAN link. Some devices do not allow frame sizes
+large enough to include a VLAN header. When creating a VLAN link over such a
+device, the \fB-f\fR option is needed, and the MTU of the IP interfaces on the
+resulting VLAN must be set to 1496 instead of 1500.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR \fIether-link\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies Ethernet link over which VLAN is created.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-t\fR, \fB--temporary\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies that the VLAN link is temporary. Temporary VLAN links last until the
+next reboot.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-R\fR \fIroot-dir\fR, \fB--root-dir\fR=\fIroot-dir\fR\fR
+.ad
+.sp .6
+.RS 4n
+See "Options," above.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdladm delete-vlan\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR]
+\fIvlan-link\fR\fR
+.ad
+.sp .6
+.RS 4n
+Delete the VLAN link specified.
+.sp
+The \fBdelete-vlan\fR subcommand accepts the following options:
+.sp
+.ne 2
+.na
+\fB\fB-t\fR, \fB--temporary\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies that the deletion is temporary. Temporary deletions last until the
+next reboot.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-R\fR \fIroot-dir\fR, \fB--root-dir\fR=\fIroot-dir\fR\fR
+.ad
+.sp .6
+.RS 4n
+See "Options," above.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdladm show-vlan\fR [\fB-P\fR] [[\fB-p\fR] \fB-o\fR \fIfield\fR[,...]]
+[\fIvlan-link\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Display VLAN configuration for all VLAN links or for the specified VLAN link.
+.sp
+The \fBshow-vlan\fR subcommand accepts the following options:
+.sp
+.ne 2
+.na
+\fB\fB-o\fR \fIfield\fR[,...], \fB--output\fR=\fIfield\fR[,...]\fR
+.ad
+.sp .6
+.RS 4n
+A case-insensitive, comma-separated list of output fields to display. The field
+name must be one of the fields listed below, or the special value \fBall\fR, to
+display all fields. For each VLAN link, the following fields can be displayed:
+.sp
+.ne 2
+.na
+\fB\fBLINK\fR\fR
+.ad
+.sp .6
+.RS 4n
+The name of the VLAN link.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBVID\fR\fR
+.ad
+.sp .6
+.RS 4n
+The ID associated with the VLAN.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBOVER\fR\fR
+.ad
+.sp .6
+.RS 4n
+The name of the physical link over which this VLAN is configured.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBFLAGS\fR\fR
+.ad
+.sp .6
+.RS 4n
+A set of flags associated with the VLAN link. Possible flags are:
+.sp
+.ne 2
+.na
+\fB\fBf\fR\fR
+.ad
+.sp .6
+.RS 4n
+The VLAN was created using the \fB-f\fR option to \fBcreate-vlan\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBi\fR\fR
+.ad
+.sp .6
+.RS 4n
+The VLAN was implicitly created when the DLPI link was opened. These VLAN links
+are automatically deleted on last close of the DLPI link (for example, when the
+IP interface associated with the VLAN link is unplumbed).
+.RE
+
+Additional flags might be defined in the future.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR, \fB--parsable\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display using a stable machine-parsable format. The \fB-o\fR option is
+required with \fB-p\fR. See "Parsable Output Format", below.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-P\fR, \fB--persistent\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display the persistent VLAN configuration rather than the state of the running
+system.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdladm scan-wifi\fR [[\fB-p\fR] \fB-o\fR \fIfield\fR[,...]]
+[\fIwifi-link\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Scans for \fBWiFi\fR networks, either on all \fBWiFi\fR links, or just on the
+specified \fIwifi-link\fR.
+.sp
+By default, currently all fields but \fBBSSTYPE\fR are displayed.
+.sp
+.ne 2
+.na
+\fB\fB-o\fR \fIfield\fR[,...], \fB--output\fR=\fIfield\fR[,...]\fR
+.ad
+.sp .6
+.RS 4n
+A case-insensitive, comma-separated list of output fields to display. The field
+name must be one of the fields listed below, or the special value \fBall\fR to
+display all fields. For each \fBWiFi\fR network found, the following fields can
+be displayed:
+.sp
+.ne 2
+.na
+\fB\fBLINK\fR\fR
+.ad
+.sp .6
+.RS 4n
+The name of the link the \fBWiFi\fR network is on.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBESSID\fR\fR
+.ad
+.sp .6
+.RS 4n
+The \fBESSID\fR (name) of the \fBWiFi\fR network.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBBSSID\fR\fR
+.ad
+.sp .6
+.RS 4n
+Either the hardware address of the \fBWiFi\fR network's Access Point (for
+\fBBSS\fR networks), or the \fBWiFi\fR network's randomly generated unique
+token (for \fBIBSS\fR networks).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSEC\fR\fR
+.ad
+.sp .6
+.RS 4n
+Either \fBnone\fR for a \fBWiFi\fR network that uses no security, \fBwep\fR for
+a \fBWiFi\fR network that requires WEP (Wired Equivalent Privacy), or \fBwpa\fR
+for a WiFi network that requires WPA (Wi-Fi Protected Access).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBMODE\fR\fR
+.ad
+.sp .6
+.RS 4n
+The supported connection modes: one or more of \fBa\fR, \fBb\fR, or \fBg\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSTRENGTH\fR\fR
+.ad
+.sp .6
+.RS 4n
+The strength of the signal: one of \fBexcellent\fR, \fBvery good\fR,
+\fBgood\fR, \fBweak\fR, or \fBvery weak\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSPEED\fR\fR
+.ad
+.sp .6
+.RS 4n
+The maximum speed of the \fBWiFi\fR network, in megabits per second.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBBSSTYPE\fR\fR
+.ad
+.sp .6
+.RS 4n
+Either \fBbss\fR for \fBBSS\fR (infrastructure) networks, or \fBibss\fR for
+\fBIBSS\fR (ad-hoc) networks.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR, \fB--parsable\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display using a stable machine-parsable format. The \fB-o\fR option is
+required with \fB-p\fR. See "Parsable Output Format", below.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdladm connect-wifi\fR [\fB-e\fR \fIessid\fR] [\fB-i\fR \fIbssid\fR]
+[\fB-k\fR \fIkey\fR,...] [\fB-s\fR \fBnone\fR | \fBwep\fR | \fBwpa\fR]
+[\fB-a\fR \fBopen\fR|\fBshared\fR] [\fB-b\fR \fBbss\fR|\fBibss\fR] [\fB-c\fR]
+[\fB-m\fR \fBa\fR|\fBb\fR|\fBg\fR] [\fB-T\fR \fItime\fR] [\fIwifi-link\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Connects to a \fBWiFi\fR network. This consists of four steps: \fIdiscovery\fR,
+\fIfiltration\fR, \fIprioritization\fR, and \fIassociation\fR. However, to
+enable connections to non-broadcast \fBWiFi\fR networks and to improve
+performance, if a \fBBSSID\fR or \fBESSID\fR is specified using the \fB-e\fR or
+\fB-i\fR options, then the first three steps are skipped and \fBconnect-wifi\fR
+immediately attempts to associate with a \fBBSSID\fR or \fBESSID\fR that
+matches the rest of the provided parameters. If this association fails, but
+there is a possibility that other networks matching the specified criteria
+exist, then the traditional discovery process begins as specified below.
+.sp
+The discovery step finds all available \fBWiFi\fR networks on the specified
+WiFi link, which must not yet be connected. For administrative convenience, if
+there is only one \fBWiFi\fR link on the system, \fIwifi-link\fR can be
+omitted.
+.sp
+Once discovery is complete, the list of networks is filtered according to the
+value of the following options:
+.sp
+.ne 2
+.na
+\fB\fB-e\fR \fIessid,\fR \fB--essid\fR=\fIessid\fR\fR
+.ad
+.sp .6
+.RS 4n
+Networks that do not have the same \fIessid\fR are filtered out.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-b\fR \fBbss\fR|\fBibss\fR, \fB--bsstype\fR=\fBbss\fR|\fBibss\fR\fR
+.ad
+.sp .6
+.RS 4n
+Networks that do not have the same \fBbsstype\fR are filtered out.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-m\fR \fBa\fR|\fBb\fR|\fBg\fR, \fB--mode\fR=\fBa\fR|\fBb\fR|\fBg\fR\fR
+.ad
+.sp .6
+.RS 4n
+Networks not appropriate for the specified 802.11 mode are filtered out.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-k\fR \fIkey,...\fR, \fB--key\fR=\fIkey, ...\fR\fR
+.ad
+.sp .6
+.RS 4n
+Use the specified \fBsecobj\fR named by the key to connect to the network.
+Networks not appropriate for the specified keys are filtered out.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR \fBnone\fR|\fBwep\fR|\fBwpa\fR,
+\fB--sec\fR=\fBnone\fR|\fBwep\fR|\fBwpa\fR\fR
+.ad
+.sp .6
+.RS 4n
+Networks not appropriate for the specified security mode are filtered out.
+.RE
+
+Next, the remaining networks are prioritized, first by signal strength, and
+then by maximum speed. Finally, an attempt is made to associate with each
+network in the list, in order, until one succeeds or no networks remain.
+.sp
+In addition to the options described above, the following options also control
+the behavior of \fBconnect-wifi\fR:
+.sp
+.ne 2
+.na
+\fB\fB-a\fR \fBopen\fR|\fBshared\fR, \fB--auth\fR=\fBopen\fR|\fBshared\fR\fR
+.ad
+.sp .6
+.RS 4n
+Connect using the specified authentication mode. By default, \fBopen\fR and
+\fBshared\fR are tried in order.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-c\fR, \fB--create-ibss\fR\fR
+.ad
+.sp .6
+.RS 4n
+Used with \fB-b ibss\fR to create a new ad-hoc network if one matching the
+specified \fBESSID\fR cannot be found. If no \fBESSID\fR is specified, then
+\fB-c -b ibss\fR always triggers the creation of a new ad-hoc network.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-T\fR \fItime\fR, \fB--timeout\fR=\fItime\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the number of seconds to wait for association to succeed. If
+\fItime\fR is \fBforever\fR, then the associate will wait indefinitely. The
+current default is ten seconds, but this might change in the future. Timeouts
+shorter than the default might not succeed reliably.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-k\fR \fIkey,...\fR, \fB--key\fR=\fIkey,...\fR\fR
+.ad
+.sp .6
+.RS 4n
+In addition to the filtering previously described, the specified keys will be
+used to secure the association. The security mode to use will be based on the
+key class; if a security mode was explicitly specified, it must be compatible
+with the key class. All keys must be of the same class.
+.sp
+For security modes that support multiple key slots, the slot to place the key
+will be specified by a colon followed by an index. Therefore, \fB-k mykey:3\fR
+places \fBmykey\fR in slot 3. By default, slot 1 is assumed. For security modes
+that support multiple keys, a comma-separated list can be specified, with the
+first key being the active key.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdladm disconnect-wifi\fR [\fB-a\fR] [\fIwifi-link\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Disconnect from one or more \fBWiFi\fR networks. If \fIwifi-link\fR specifies a
+connected \fBWiFi\fR link, then it is disconnected. For administrative
+convenience, if only one \fBWiFi\fR link is connected, \fIwifi-link\fR can be
+omitted.
+.sp
+.ne 2
+.na
+\fB\fB-a\fR, \fB--all-links\fR\fR
+.ad
+.sp .6
+.RS 4n
+Disconnects from all connected links. This is primarily intended for use by
+scripts.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdladm show-wifi\fR [[\fB-p\fR] \fB-o\fR \fIfield\fR,...]
+[\fIwifi-link\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Shows \fBWiFi\fR configuration information either for all \fBWiFi\fR links or
+for the specified link \fIwifi-link\fR.
+.sp
+.ne 2
+.na
+\fB\fB-o\fR \fIfield,...\fR, \fB--output\fR=\fIfield\fR\fR
+.ad
+.sp .6
+.RS 4n
+A case-insensitive, comma-separated list of output fields to display. The field
+name must be one of the fields listed below, or the special value \fBall\fR, to
+display all fields. For each \fBWiFi\fR link, the following fields can be
+displayed:
+.sp
+.ne 2
+.na
+\fB\fBLINK\fR\fR
+.ad
+.sp .6
+.RS 4n
+The name of the link being displayed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSTATUS\fR\fR
+.ad
+.sp .6
+.RS 4n
+Either \fBconnected\fR if the link is connected, or \fBdisconnected\fR if it is
+not connected. If the link is disconnected, all remaining fields have the value
+\fB--\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBESSID\fR\fR
+.ad
+.sp .6
+.RS 4n
+The \fBESSID\fR (name) of the connected \fBWiFi\fR network.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBBSSID\fR\fR
+.ad
+.sp .6
+.RS 4n
+Either the hardware address of the \fBWiFi\fR network's Access Point (for
+\fBBSS\fR networks), or the \fBWiFi\fR network's randomly generated unique
+token (for \fBIBSS\fR networks).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSEC\fR\fR
+.ad
+.sp .6
+.RS 4n
+Either \fBnone\fR for a \fBWiFi\fR network that uses no security, \fBwep\fR for
+a \fBWiFi\fR network that requires WEP, or \fBwpa\fR for a WiFi network that
+requires WPA.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBMODE\fR\fR
+.ad
+.sp .6
+.RS 4n
+The supported connection modes: one or more of \fBa\fR, \fBb\fR, or \fBg\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSTRENGTH\fR\fR
+.ad
+.sp .6
+.RS 4n
+The connection strength: one of \fBexcellent\fR, \fBvery good\fR, \fBgood\fR,
+\fBweak\fR, or \fBvery weak\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSPEED\fR\fR
+.ad
+.sp .6
+.RS 4n
+The connection speed, in megabits per second.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBAUTH\fR\fR
+.ad
+.sp .6
+.RS 4n
+Either \fBopen\fR or \fBshared\fR (see \fBconnect-wifi\fR).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBBSSTYPE\fR\fR
+.ad
+.sp .6
+.RS 4n
+Either \fBbss\fR for \fBBSS\fR (infrastructure) networks, or \fBibss\fR for
+\fBIBSS\fR (ad-hoc) networks.
+.RE
+
+By default, currently all fields but \fBAUTH\fR, \fBBSSID\fR, \fBBSSTYPE\fR are
+displayed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR, \fB--parsable\fR\fR
+.ad
+.sp .6
+.RS 4n
+Displays using a stable machine-parsable format. The \fB-o\fR option is
+required with \fB-p\fR. See "Parsable Output Format", below.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdladm show-ether\fR [\fB-x\fR] [[\fB-p\fR] \fB-o\fR \fIfield\fR,...]
+[\fIether-link\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Shows state information either for all physical Ethernet links or for a
+specified physical Ethernet link.
+.sp
+The \fBshow-ether\fR subcommand accepts the following options:
+.sp
+.ne 2
+.na
+\fB\fB-o\fR \fIfield\fR,..., \fB--output\fR=\fIfield\fR\fR
+.ad
+.sp .6
+.RS 4n
+A case-insensitive, comma-separated list of output fields to display. The field
+name must be one of the fields listed below, or the special value \fBall\fR to
+display all fields. For each link, the following fields can be displayed:
+.sp
+.ne 2
+.na
+\fB\fBLINK\fR\fR
+.ad
+.sp .6
+.RS 4n
+The name of the link being displayed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPTYPE\fR\fR
+.ad
+.sp .6
+.RS 4n
+Parameter type, where \fBcurrent\fR indicates the negotiated state of the link,
+\fBcapable\fR indicates capabilities supported by the device, \fBadv\fR
+indicates the advertised capabilities, and \fBpeeradv\fR indicates the
+capabilities advertised by the link-partner.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSTATE\fR\fR
+.ad
+.sp .6
+.RS 4n
+The state of the link.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBAUTO\fR\fR
+.ad
+.sp .6
+.RS 4n
+A \fByes\fR/\fBno\fR value indicating whether auto-negotiation is advertised.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSPEED-DUPLEX\fR\fR
+.ad
+.sp .6
+.RS 4n
+Combinations of speed and duplex values available. The units of speed are
+encoded with a trailing suffix of \fBG\fR (Gigabits/s) or \fBM\fR (Mb/s).
+Duplex values are encoded as \fBf\fR (full-duplex) or \fBh\fR (half-duplex).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAUSE\fR\fR
+.ad
+.sp .6
+.RS 4n
+Flow control information. Can be \fBno\fR, indicating no flow control is
+available; \fBtx\fR, indicating that the end-point can transmit pause frames,
+but ignores any received pause frames; \fBrx\fR, indicating that the end-point
+receives and acts upon received pause frames; or \fBbi\fR, indicating
+bi-directional flow-control.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBREM_FAULT\fR\fR
+.ad
+.sp .6
+.RS 4n
+Fault detection information. Valid values are \fBnone\fR or \fBfault\fR.
+.RE
+
+By default, all fields except \fBREM_FAULT\fR are displayed for the "current"
+\fBPTYPE\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR, \fB--parsable\fR\fR
+.ad
+.sp .6
+.RS 4n
+Displays using a stable machine-parsable format. The \fB-o\fR option is
+required with \fB-p\fR. See "Parsable Output Format", below.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-x\fR, \fB--extended\fR\fR
+.ad
+.sp .6
+.RS 4n
+Extended output is displayed for \fBPTYPE\fR values of \fBcurrent\fR,
+\fBcapable\fR, \fBadv\fR and \fBpeeradv\fR.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdladm set-linkprop\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] [\fB-z\fR \fIzonename\fR] \fB-p\fR \fIprop\fR=\fIvalue\fR[,...] \fIlink\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets the values of one or more properties on the link specified. The list of
+properties and their possible values depend on the link type, the network
+device driver, and networking hardware. These properties can be retrieved using
+\fBshow-linkprop\fR.
+.sp
+.ne 2
+.na
+\fB\fB-t\fR, \fB--temporary\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies that the changes are temporary. Temporary changes last until the next
+reboot.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-R\fR \fIroot-dir\fR, \fB--root-dir\fR=\fIroot-dir\fR\fR
+.ad
+.sp .6
+.RS 4n
+See "Options," above.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-z\fR \fIzonename\fR
+.ad
+.sp .6
+.RS 4n
+Operate on a link that has been delegated to the specified zone.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR \fIprop\fR=\fIvalue\fR[,...], \fB--prop\fR
+\fIprop\fR=\fIvalue\fR[,...]\fR
+.ad
+.br
+.na
+\fB\fR
+.ad
+.sp .6
+.RS 4n
+A comma-separated list of properties to set to the specified values.
+.RE
+
+Note that when the persistent value is set, the temporary value changes to the
+same value.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdladm reset-linkprop\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] [\fB-z\fR \fIzonename\fR] [\fB-p\fR \fIprop\fR,...] \fIlink\fR\fR
+.ad
+.sp .6
+.RS 4n
+Resets one or more properties to their values on the link specified. Properties
+are reset to the values they had at startup. If no properties are specified,
+all properties are reset. See \fBshow-linkprop\fR for a description of
+properties.
+.sp
+.ne 2
+.na
+\fB\fB-t\fR, \fB--temporary\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies that the resets are temporary. Values are reset to default values.
+Temporary resets last until the next reboot.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-R\fR \fIroot-dir\fR, \fB--root-dir\fR=\fIroot-dir\fR\fR
+.ad
+.sp .6
+.RS 4n
+See "Options," above.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-z\fR \fIzonename\fR
+.ad
+.sp .6
+.RS 4n
+Operate on a link that has been delegated to the specified zone.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR \fIprop, ...\fR, \fB--prop\fR=\fIprop, ...\fR\fR
+.ad
+.sp .6
+.RS 4n
+A comma-separated list of properties to reset.
+.RE
+
+Note that when the persistent value is reset, the temporary value changes to
+the same value.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdladm show-linkprop\fR [\fB-P\fR] [\fB-z\fR \fIzonename\fR] [[\fB-c\fR] \fB-o\fR \fIfield\fR[,...]][\fB-p\fR \fIprop\fR[,...]] [\fIlink\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Show the current or persistent values of one or more properties, either for all
+datalinks or for the specified link. By default, current values are shown. If
+no properties are specified, all available link properties are displayed. For
+each property, the following fields are displayed:
+.sp
+.ne 2
+.na
+\fB\fB-o\fR \fIfield\fR[,...], \fB--output\fR=\fIfield\fR\fR
+.ad
+.sp .6
+.RS 4n
+A case-insensitive, comma-separated list of output fields to display. The field
+name must be one of the fields listed below, or the special value \fBall\fR to
+display all fields. For each link, the following fields can be displayed:
+.sp
+.ne 2
+.na
+\fB\fBLINK\fR\fR
+.ad
+.sp .6
+.RS 4n
+The name of the datalink.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPROPERTY\fR\fR
+.ad
+.sp .6
+.RS 4n
+The name of the property.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPERM\fR\fR
+.ad
+.sp .6
+.RS 4n
+The read/write permissions of the property. The value shown is one of \fBro\fR
+or \fBrw\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBVALUE\fR\fR
+.ad
+.sp .6
+.RS 4n
+The current (or persistent) property value. If the value is not set, it is
+shown as \fB--\fR. If it is unknown, the value is shown as \fB?\fR. Persistent
+values that are not set or have been reset will be shown as \fB--\fR and will
+use the system \fBDEFAULT\fR value (if any).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBDEFAULT\fR\fR
+.ad
+.sp .6
+.RS 4n
+The default value of the property. If the property has no default value,
+\fB--\fR is shown.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPOSSIBLE\fR\fR
+.ad
+.sp .6
+.RS 4n
+A comma-separated list of the values the property can have. If the values span
+a numeric range, \fImin\fR - \fImax\fR might be shown as shorthand. If the
+possible values are unknown or unbounded, \fB--\fR is shown.
+.RE
+
+The list of properties depends on the link type and network device driver, and
+the available values for a given property further depends on the underlying
+network hardware and its state. General link properties are documented in the
+\fBLINK PROPERTIES\fR section. However, link properties that begin with
+"\fB_\fR" (underbar) are specific to a given link or its underlying network
+device and subject to change or removal. See the appropriate network device
+driver man page for details.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-c\fR, \fB--parsable\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display using a stable machine-parsable format. The \fB-o\fR option is
+required with this option. See "Parsable Output Format", below.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-P\fR, \fB--persistent\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display persistent link property information
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-z\fR \fIzonename\fR
+.ad
+.sp .6
+.RS 4n
+Operate on a link that has been delegated to the specified zone.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR \fIprop, ...\fR, \fB--prop\fR=\fIprop, ...\fR\fR
+.ad
+.sp .6
+.RS 4n
+A comma-separated list of properties to show. See the sections on link
+properties following subcommand descriptions.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdladm create-secobj\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] [\fB-f\fR
+\fIfile\fR] \fB-c\fR \fIclass\fR \fIsecobj\fR\fR
+.ad
+.sp .6
+.RS 4n
+Create a secure object named \fIsecobj\fR in the specified \fIclass\fR to be
+later used as a WEP or WPA key in connecting to an encrypted network. The value
+of the secure object can either be provided interactively or read from a file.
+The sequence of interactive prompts and the file format depends on the class of
+the secure object.
+.sp
+Currently, the classes \fBwep\fR and \fBwpa\fR are supported. The \fBWEP\fR
+(Wired Equivalent Privacy) key can be either 5 or 13 bytes long. It can be
+provided either as an \fBASCII\fR or hexadecimal string -- thus, \fB12345\fR
+and \fB0x3132333435\fR are equivalent 5-byte keys (the \fB0x\fR prefix can be
+omitted). A file containing a \fBWEP\fR key must consist of a single line using
+either \fBWEP\fR key format. The WPA (Wi-Fi Protected Access) key must be
+provided as an ASCII string with a length between 8 and 63 bytes.
+.sp
+This subcommand is only usable by users or roles that belong to the "Network
+Link Security" \fBRBAC\fR profile.
+.sp
+.ne 2
+.na
+\fB\fB-c\fR \fIclass\fR, \fB--class\fR=\fIclass\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fIclass\fR can be \fBwep\fR or \fBwpa\fR. See preceding discussion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-t\fR, \fB--temporary\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies that the creation is temporary. Temporary creation last until the
+next reboot.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-R\fR \fIroot-dir\fR, \fB--root-dir\fR=\fIroot-dir\fR\fR
+.ad
+.sp .6
+.RS 4n
+See "Options," above.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR \fIfile\fR, \fB--file\fR=\fIfile\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies a file that should be used to obtain the secure object's value. The
+format of this file depends on the secure object class. See the \fBEXAMPLES\fR
+section for an example of using this option to set a \fBWEP\fR key.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdladm delete-secobj\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR]
+\fIsecobj\fR[,...]\fR
+.ad
+.sp .6
+.RS 4n
+Delete one or more specified secure objects. This subcommand is only usable by
+users or roles that belong to the "Network Link Security" \fBRBAC\fR profile.
+.sp
+.ne 2
+.na
+\fB\fB-t\fR, \fB--temporary\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies that the deletions are temporary. Temporary deletions last until the
+next reboot.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-R\fR \fIroot-dir\fR, \fB--root-dir\fR=\fIroot-dir\fR\fR
+.ad
+.sp .6
+.RS 4n
+See "Options," above.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdladm show-secobj\fR [\fB-P\fR] [[\fB-p\fR] \fB-o\fR \fIfield\fR[,...]]
+[\fIsecobj\fR,...]\fR
+.ad
+.sp .6
+.RS 4n
+Show current or persistent secure object information. If one or more secure
+objects are specified, then information for each is displayed. Otherwise, all
+current or persistent secure objects are displayed.
+.sp
+By default, current secure objects are displayed, which are all secure objects
+that have either been persistently created and not temporarily deleted, or
+temporarily created.
+.sp
+For security reasons, it is not possible to show the value of a secure object.
+.sp
+.ne 2
+.na
+\fB\fB-o\fR \fIfield\fR[,...] , \fB--output\fR=\fIfield\fR[,...]\fR
+.ad
+.sp .6
+.RS 4n
+A case-insensitive, comma-separated list of output fields to display. The field
+name must be one of the fields listed below. For displayed secure object, the
+following fields can be shown:
+.sp
+.ne 2
+.na
+\fB\fBOBJECT\fR\fR
+.ad
+.sp .6
+.RS 4n
+The name of the secure object.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBCLASS\fR\fR
+.ad
+.sp .6
+.RS 4n
+The class of the secure object.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR, \fB--parsable\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display using a stable machine-parsable format. The \fB-o\fR option is
+required with \fB-p\fR. See "Parsable Output Format", below.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-P\fR, \fB--persistent\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display persistent secure object information
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdladm create-vnic\fR [\fB-t\fR] \fB-l\fR \fIlink\fR [\fB-R\fR
+\fIroot-dir\fR] [\fB-m\fR \fIvalue\fR | auto | {factory [\fB-n\fR
+\fIslot-identifier\fR]} | {random [\fB-r\fR \fIprefix\fR]}] [\fB-v\fR
+\fIvlan-id\fR] [\fB-p\fR \fIprop\fR=\fIvalue\fR[,...]] \fIvnic-link\fR\fR
+.ad
+.sp .6
+.RS 4n
+Create a VNIC with name \fIvnic-link\fR over the specified link.
+.sp
+.ne 2
+.na
+\fB\fB-t\fR, \fB--temporary\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies that the VNIC is temporary. Temporary VNICs last until the next
+reboot.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-R\fR \fIroot-dir\fR, \fB--root-dir\fR=\fIroot-dir\fR\fR
+.ad
+.sp .6
+.RS 4n
+See "Options," above.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR \fIlink\fR, \fB--link\fR=\fIlink\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fIlink\fR can be a physical link or an \fBetherstub\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-m\fR \fIvalue\fR | \fIkeyword\fR, \fB--mac-address\fR=\fIvalue\fR |
+\fIkeyword\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets the VNIC's MAC address based on the specified value or keyword. If
+\fIvalue\fR is not a keyword, it is interpreted as a unicast MAC address, which
+must be valid for the underlying NIC. The following special keywords can be
+used:
+.sp
+.ne 2
+.na
+\fBfactory [\fB-n\fR \fIslot-identifier\fR],\fR
+.ad
+.br
+.na
+\fBfactory [\fB--slot\fR=\fIslot-identifier\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Assign a factory MAC address to the VNIC. When a factory MAC address is
+requested, \fB-m\fR can be combined with the \fB-n\fR option to specify a MAC
+address slot to be used. If \fB-n\fR is not specified, the system will choose
+the next available factory MAC address. The \fB-m\fR option of the
+\fBshow-phys\fR subcommand can be used to display the list of factory MAC
+addresses, their slot identifiers, and their availability.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fR
+.ad
+.br
+.na
+\fBrandom [\fB-r\fR \fIprefix\fR],\fR
+.ad
+.br
+.na
+\fBrandom [\fB--mac-prefix\fR=\fIprefix\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Assign a random MAC address to the VNIC. A default prefix consisting of a valid
+IEEE OUI with the local bit set will be used. That prefix can be overridden
+with the \fB-r\fR option.
+.RE
+
+.sp
+.ne 2
+.na
+\fBauto\fR
+.ad
+.sp .6
+.RS 4n
+Try and use a factory MAC address first. If none is available, assign a random
+MAC address. \fBauto\fR is the default action if the \fB-m\fR option is not
+specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR \fIvlan-id\fR\fR
+.ad
+.sp .6
+.RS 4n
+Enable VLAN tagging for this VNIC. The VLAN tag will have id \fIvlan-id\fR.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR \fIprop\fR=\fIvalue\fR,..., \fB--prop\fR
+\fIprop\fR=\fIvalue\fR,...\fR
+.ad
+.sp .6
+.RS 4n
+A comma-separated list of properties to set to the specified values.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdladm delete-vnic\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] [\fB-z\fR \fIzonename\fR] \fIvnic-link\fR\fR
+.ad
+.sp .6
+.RS 4n
+Deletes the specified VNIC.
+.sp
+.ne 2
+.na
+\fB\fB-t\fR, \fB--temporary\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies that the deletion is temporary. Temporary deletions last until the
+next reboot.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-R\fR \fIroot-dir\fR, \fB--root-dir\fR=\fIroot-dir\fR\fR
+.ad
+.sp .6
+.RS 4n
+See "Options," above.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-z\fR \fIzonename\fR
+.ad
+.sp .6
+.RS 4n
+Operate on a link that has been delegated to the specified zone.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdladm show-vnic\fR [\fB-pP\fR] [\fB-s\fR [\fB-i\fR \fIinterval\fR]] [\fB-o\fR \fIfield\fR[,...]] [\fB-l\fR \fIlink\fR] [\fB-z\fR \fIzonename\fR] [\fIvnic-link\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Show VNIC configuration information (the default) or statistics, for all VNICs,
+all VNICs on a link, or only the specified \fIvnic-link\fR.
+.sp
+.ne 2
+.na
+\fB\fB-o\fR \fIfield\fR[,...] , \fB--output\fR=\fIfield\fR[,...]\fR
+.ad
+.sp .6
+.RS 4n
+A case-insensitive, comma-separated list of output fields to display. The field
+name must be one of the fields listed below. The field name must be one of the
+fields listed below, or the special value \fBall\fR to display all fields. By
+default (without \fB-o\fR), \fBshow-vnic\fR displays all fields.
+.sp
+.ne 2
+.na
+\fB\fBLINK\fR\fR
+.ad
+.sp .6
+.RS 4n
+The name of the VNIC.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBOVER\fR\fR
+.ad
+.sp .6
+.RS 4n
+The name of the physical link over which this VNIC is configured.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSPEED\fR\fR
+.ad
+.sp .6
+.RS 4n
+The maximum speed of the VNIC, in megabits per second.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBMACADDRESS\fR\fR
+.ad
+.sp .6
+.RS 4n
+MAC address of the VNIC.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBMACADDRTYPE\fR\fR
+.ad
+.sp .6
+.RS 4n
+MAC address type of the VNIC. \fBdladm\fR distinguishes among the following MAC
+address types:
+.sp
+.ne 2
+.na
+\fB\fBrandom\fR\fR
+.ad
+.sp .6
+.RS 4n
+A random address assigned to the VNIC.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfactory\fR\fR
+.ad
+.sp .6
+.RS 4n
+A factory MAC address used by the VNIC.
+.RE
+
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR, \fB--parsable\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display using a stable machine-parsable format. The \fB-o\fR option is
+required with \fB-p\fR. See "Parsable Output Format", below.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-P\fR, \fB--persistent\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display the persistent VNIC configuration.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR, \fB--statistics\fR\fR
+.ad
+.sp .6
+.RS 4n
+Displays VNIC statistics.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-i\fR \fIinterval\fR, \fB--interval\fR=\fIinterval\fR\fR
+.ad
+.sp .6
+.RS 4n
+Used with the \fB-s\fR option to specify an interval, in seconds, at which
+statistics should be displayed. If this option is not specified, statistics
+will be displayed only once.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR \fIlink\fR, \fB--link\fR=\fIlink\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display information for all VNICs on the named link.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-z\fR \fIzonename\fR
+.ad
+.sp .6
+.RS 4n
+Operate on a link that has been delegated to the specified zone.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fR
+.ad
+.br
+.na
+\fB\fBdladm create-etherstub\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR]
+\fIetherstub\fR\fR
+.ad
+.sp .6
+.RS 4n
+Create an etherstub with the specified name.
+.sp
+.ne 2
+.na
+\fB\fB-t\fR, \fB--temporary\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies that the etherstub is temporary. Temporary etherstubs do not persist
+across reboots.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-R\fR \fIroot-dir\fR, \fB--root-dir\fR=\fIroot-dir\fR\fR
+.ad
+.sp .6
+.RS 4n
+See "Options," above.
+.RE
+
+VNICs can be created on top of etherstubs instead of physical NICs. As with
+physical NICs, such a creation causes the stack to implicitly create a virtual
+switch between the VNICs created on top of the same etherstub.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fR
+.ad
+.br
+.na
+\fB\fBdladm delete-etherstub\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR]
+\fIetherstub\fR\fR
+.ad
+.sp .6
+.RS 4n
+Delete the specified etherstub.
+.sp
+.ne 2
+.na
+\fB\fB-t\fR, \fB--temporary\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies that the deletion is temporary. Temporary deletions last until the
+next reboot.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-R\fR \fIroot-dir\fR, \fB--root-dir\fR=\fIroot-dir\fR\fR
+.ad
+.sp .6
+.RS 4n
+See "Options," above.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdladm show-etherstub\fR [\fIetherstub\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Show all configured etherstubs by default, or the specified etherstub if
+\fIetherstub\fR is specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdladm create-iptun\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] \fB-T\fR
+\fItype\fR [-a {local|remote}=<addr>[,...]] \fIiptun-link\fR\fR
+.ad
+.sp .6
+.RS 4n
+Create an IP tunnel link named \fIiptun-link\fR. Such links can additionally be
+protected with IPsec using \fBipsecconf\fR(8).
+.sp
+An IP tunnel is conceptually comprised of two parts: a virtual link between two
+or more IP nodes, and an IP interface above this link that allows the system to
+transmit and receive IP packets encapsulated by the underlying link. This
+subcommand creates a virtual link. The \fBifconfig\fR(8) command is used to
+configure IP interfaces above the link.
+.sp
+.ne 2
+.na
+\fB\fB-t\fR, \fB--temporary\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies that the IP tunnel link is temporary. Temporary tunnels last until
+the next reboot.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-R\fR \fIroot-dir\fR, \fB--root-dir\fR=\fIroot-dir\fR\fR
+.ad
+.sp .6
+.RS 4n
+See "Options," above.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-T\fR \fItype\fR, \fB--tunnel-type\fR=\fItype\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the type of tunnel to be created. The type must be one of the
+following:
+.sp
+.ne 2
+.na
+\fB\fBipv4\fR\fR
+.ad
+.sp .6
+.RS 4n
+A point-to-point, IP-over-IP tunnel between two IPv4 nodes. This type of tunnel
+requires IPv4 source and destination addresses to function. IPv4 and IPv6
+interfaces can be plumbed above such a tunnel to create IPv4-over-IPv4 and
+IPv6-over-IPv4 tunneling configurations.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBipv6\fR\fR
+.ad
+.sp .6
+.RS 4n
+A point-to-point, IP-over-IP tunnel between two IPv6 nodes as defined in IETF
+RFC 2473. This type of tunnel requires IPv6 source and destination addresses to
+function. IPv4 and IPv6 interfaces can be plumbed above such a tunnel to create
+IPv4-over-IPv6 and IPv6-over-IPv6 tunneling configurations.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB6to4\fR\fR
+.ad
+.sp .6
+.RS 4n
+A 6to4, point-to-multipoint tunnel as defined in IETF RFC 3056. This type of
+tunnel requires an IPv4 source address to function. An IPv6 interface is
+plumbed on such a tunnel link to configure a 6to4 router.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-a\fR \fBlocal=\fR\fIaddr\fR
+.ad
+.sp .6
+.RS 4n
+Literal IP address or hostname corresponding to the tunnel source. If a
+hostname is specified, it will be resolved to IP addresses, and one of those IP
+addresses will be used as the tunnel source. Because IP tunnels are created
+before naming services have been brought online during the boot process, it is
+important that any hostname used be included in \fB/etc/hosts\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-a\fR \fBremote=\fR\fIaddr\fR
+.ad
+.sp .6
+.RS 4n
+Literal IP address or hostname corresponding to the tunnel destination.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdladm modify-iptun\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR]
+[-a {local|remote}=<addr>[,...]] \fIiptun-link\fR\fR
+.ad
+.sp .6
+.RS 4n
+Modify the parameters of the specified IP tunnel.
+.sp
+.ne 2
+.na
+\fB\fB-t\fR, \fB--temporary\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies that the modification is temporary. Temporary modifications last
+until the next reboot.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-R\fR \fIroot-dir\fR, \fB--root-dir\fR=\fIroot-dir\fR\fR
+.ad
+.sp .6
+.RS 4n
+See "Options," above.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-a\fR \fBlocal=\fR\fIaddr\fR
+.ad
+.sp .6
+.RS 4n
+Specifies a new tunnel source address. See \fBcreate-iptun\fR for a
+description.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-a\fR \fBremote=\fR\fIaddr\fR
+.ad
+.sp .6
+.RS 4n
+Specifies a new tunnel destination address. See \fBcreate-iptun\fR for a
+description.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdladm delete-iptun\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR]
+\fIiptun-link\fR\fR
+.ad
+.sp .6
+.RS 4n
+Delete the specified IP tunnel link.
+.sp
+.ne 2
+.na
+\fB\fB-t\fR, \fB--temporary\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies that the deletion is temporary. Temporary deletions last until the
+next reboot.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-R\fR \fIroot-dir\fR, \fB--root-dir\fR=\fIroot-dir\fR\fR
+.ad
+.sp .6
+.RS 4n
+See "Options," above.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdladm show-iptun\fR [\fB-P\fR] [[\fB-p\fR] \fB-o\fR \fIfield\fR[,...]]
+[\fIiptun-link\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Show IP tunnel link configuration for a single IP tunnel or all IP tunnels.
+.sp
+.ne 2
+.na
+\fB\fB-P\fR, \fB--persistent\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display the persistent IP tunnel configuration.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR, \fB--parsable\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display using a stable machine-parsable format. The -o option is required with
+-p. See "Parsable Output Format", below.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-o\fR \fIfield\fR[,...], \fB--output\fR=\fIfield\fR[,...]\fR
+.ad
+.sp .6
+.RS 4n
+A case-insensitive, comma-separated list of output fields to display. The field
+name must be one of the fields listed below, or the special value \fBall\fR, to
+display all fields. By default (without \fB-o\fR), \fBshow-iptun\fR displays
+all fields.
+.sp
+.ne 2
+.na
+\fB\fBLINK\fR\fR
+.ad
+.sp .6
+.RS 4n
+The name of the IP tunnel link.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBTYPE\fR\fR
+.ad
+.sp .6
+.RS 4n
+Type of tunnel as specified by the \fB-T\fR option of \fBcreate-iptun\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBFLAGS\fR\fR
+.ad
+.sp .6
+.RS 4n
+A set of flags associated with the IP tunnel link. Possible flags are:
+.sp
+.ne 2
+.na
+\fB\fBs\fR\fR
+.ad
+.sp .6
+.RS 4n
+The IP tunnel link is protected by IPsec policy. To display the IPsec policy
+associated with the tunnel link, enter:
+.sp
+.in +2
+.nf
+# \fBipsecconf -ln -i \fItunnel-link\fR\fR
+.fi
+.in -2
+.sp
+
+See \fBipsecconf\fR(8) for more details on how to configure IPsec policy.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBi\fR\fR
+.ad
+.sp .6
+.RS 4n
+The IP tunnel link was implicitly created with \fBifconfig\fR(8), and will be
+automatically deleted when it is no longer referenced (that is, when the last
+IP interface over the tunnel is unplumbed). See \fBifconfig\fR(8) for details
+on implicit tunnel creation.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSOURCE\fR\fR
+.ad
+.sp .6
+.RS 4n
+The tunnel source address.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBDESTINATION\fR\fR
+.ad
+.sp .6
+.RS 4n
+The tunnel destination address.
+.RE
+
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fBdladm create-overlay\fR \fB-e\fR \fIencap\fR \fB-s\fR \fIsearch\fR
+\fB-v\fR \fIvnetid\fR [\fB-p\fR \fIprop\fR=\fIvalue\fR[,...]] \fIoverlay\fR
+.ad
+.sp .6
+.RS 4n
+Create an overlay device named \fIoverlay\fR.
+.sp
+Overlay devices are similar to etherstubs. VNICs can be created on top
+of them. However, unlike an etherstub which is local to the system, an
+overlay device can be configured to communicate to remote hosts,
+providing a means for network virtualization. The way in which it does
+this is described by the encapsulation module and the search plugin. For
+more information on these, see \fBoverlay\fR(5).
+.sp
+An overlay device has a series of required and optional properties. These
+properties vary based upon the search and encapsulation modules and are fully
+specified in \fBoverlay\fR(5). Not every property needs to be specified - some
+have default values which will be used if nothing specific is specified. For
+example, the default port for VXLAN comes from its IANA standard. If a
+required property is missing, the command will fail and inform you of the
+missing properties.
+.sp
+.ne 2
+.na
+\fB\fB-t\fR, \fB--temporary\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies that the overlay is temporary. Temporary overlays last until
+the next reboot.
+.RE
+
+.sp
+.ne 2
+.na
+\fB-e\fR \fIencap\fR, \fB--encap\fR=\fIencap\fR
+.ad
+.sp .6
+.RS 4n
+Use \fIencap\fR as the encapsulation plugin for the overlay device
+\fIoverlay\fR. The encapsulation plugin determines how packets are transformed
+before being put on the wire.
+.RE
+
+.sp
+.ne 2
+.na
+\fB-s\fR \fIsearch\fR, \fB--search\fR=\fIsearch\fR
+.ad
+.sp .6
+.RS 4n
+Use \fIsearch\fR as the search plugin for \fIoverlay\fR. The search plugin
+determines how non-local targets are found and where packets are directed to.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR \fIprop\fR=\fIvalue\fR,..., \fB--prop\fR
+\fIprop\fR=\fIvalue\fR,...\fR
+.ad
+.sp .6
+.RS 4n
+A comma-separated list of properties to set to the specified values.
+.RE
+
+.sp
+.ne 2
+.na
+\fB-v\fR \fIvnetid\fR, \fB--vnetid\fR=\fIvnetid\fR
+.ad
+.sp .6
+.RS 4n
+Sets the virtual networking identifier to \fIvnetid\fR. A virtual network
+identifier determines is similar to a VLAN identifier, in that it identifies a
+unique virtual network. All overlay devices on the system share the same space
+for the virtual network identifier. However, the valid range of identifiers is
+determined by the encapsulation plugin specified by \fB-e\fR.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fBdladm delete-overlay\fR \fIoverlay\fR
+.ad
+.sp .6
+.RS 4n
+Delete the specified overlay. This will fail if there are VNICs on top of the
+device.
+.RE
+
+.sp
+.ne 2
+.na
+\fBdladm modify-overlay\fR \fB-d\fR \fImac\fR | \fB-f\fR | \fB-s\fR \fImac=ip:port\fR \fIoverlay\fR
+.ad
+.sp .6
+.RS 4n
+Modifies the target tables for the specified overlay.
+.sp
+The different options allow for different ways of modifying the target table.
+One of \fB-d\fR, \fB-f\fR, and \fB-s\fR is required. This is not applicable for
+all kinds of overlay devices. For more information, see \fBoverlay\fR(5).
+.sp
+.ne 2
+.na
+\fB-d\fR \fImac\fR, \fB--delete-entry\fR=\fImac\fR
+.ad
+.sp .6
+.RS 4n
+Deletes the entry for \fImac\fR from the target table for \fIoverlay\fR. Note,
+if a lookup is pending or outstanding, this does not cancel it or stop it from
+updating the value.
+.RE
+
+.sp
+.ne 2
+.na
+\fB-f\fR, \fB--flush-table\fR
+.ad
+.sp .6
+.RS 4n
+Flushes all values in the target table for \fIoverlay\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB-s\fR \fImac\fR=\fIvalue\fR, \fB--set-entry\fR=\fImac\fR=\fIvalue\fR
+.ad
+.sp .6
+.RS 4n
+Sets the value of \fIoverlay\fR's target table entry for \fImac\fR to the
+specified value. The specified value varies upon the encapsulation plugin. The
+value may be a combination of a MAC address, IP address, and port. Generally,
+this looks like [\fImac\fR,][\fIIP\fR:][\fIport\fR]. If a component is the last
+one, then there is no need for a separator. eg. if just the MAC address or IP
+is needed, it would look like \fImac\fR and \fIIP\fR respectively.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fBdladm show-overlay\fR [ \fB-f\fR | \fB-t\fR ] [[\fB-p\fR] \fB-o\fR \fIfield\fR[,...]] [\fIoverlay\fR]
+.ad
+.sp .6
+.RS 4n
+Shows overlay configuration (the default), internal target tables (\fB-t\fR), or
+the FMA state (\fB-f\fR), either for all overlays or the specified overlay.
+.sp
+By default (with neither \fB-f\fR or \fB-t\fR specified), the following fields
+will be displayed:
+.sp
+.ne 2
+.na
+\fB\fBLINK\fR\fR
+.ad
+.sp .6
+.RS 4n
+The name of the overlay.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPROPERTY\fR\fR
+.ad
+.sp .6
+.RS 4n
+The name of the property.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPERM\fR\fR
+.ad
+.sp .6
+.RS 4n
+The read/write permissions of the property. The value shown is one of \fBr-\fR
+or \fBrw\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBVALUE\fR\fR
+.ad
+.sp .6
+.RS 4n
+The current property value. If the value is not set, it is shown as \fB--\fR.
+If it is unknown, the value is shown as \fB?\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBDEFAULT\fR\fR
+.ad
+.sp .6
+.RS 4n
+The default value of the property. If the property has no default value,
+\fB--\fR is shown.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPOSSIBLE\fR\fR
+.ad
+.sp .6
+.RS 4n
+A comma-separated list of the values the property can have. If the values span
+a numeric range, \fImin\fR - \fImax\fR might be shown as shorthand. If the
+possible values are unknown or unbounded, \fB--\fR is shown.
+.RE
+
+.sp
+When the \fB-f\fR option is displayed, the following fields will be displayed:
+.sp
+.ne 2
+.na
+\fB\fBLINK\fR\fR
+.ad
+.sp .6
+.RS 4n
+The name of the overlay.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSTATUS\fR\fR
+.ad
+.sp .6
+.RS 4n
+Either \fBONLINE\fR or \fBDEGRADED\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBDETAILS\fR\fR
+.ad
+.sp .6
+.RS 4n
+When the \fBoverlay\fR's status is \fBONLINE\fR, then this has the value
+\fB--\fR. Otherwise, when it is \fBDEGRADED\fR, this field provides a more
+detailed explanation as to why it's degraded.
+.RE
+
+.sp
+When the \fB-t\fR option is displayed, the following fields will be displayed:
+.sp
+.ne 2
+.na
+\fB\fBLINK\fR\fR
+.ad
+.sp .6
+.RS 4n
+The name of the overlay.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBTARGET\fR\fR
+.ad
+.sp .6
+.RS 4n
+The target MAC address of a table entry.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBDESTINATION\fR\fR
+.ad
+.sp .6
+.RS 4n
+The address that an encapsulated packet will be sent to when a packet has the
+address specified by \fBTARGET\fR.
+.RE
+
+The \fBshow-overlay\fR command supports the following options:
+
+.sp
+.ne 2
+.na
+\fB-f\fR, \fB--fma\fR
+.ad
+.sp .6
+.RS 4n
+Displays information about an overlay device's FMA state. For more
+information on the target table, see \fBoverlay\fR(5).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-o\fR \fIfield\fR[,...], \fB--output\fR=\fIfield\fR\fR
+.ad
+.sp .6
+.RS 4n
+A case-insensitive, comma-separated list of output fields to display. The field
+name must be one of the fields listed above, or the special value \fBall\fR, to
+display all fields. The fields applicable to the \fB-o\fR option are limited to
+those listed under each output mode. For example, if using \fB-L\fR, only the
+fields listed under \fB-L\fR, above, can be used with \fB-o\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR, \fB--parsable\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display using a stable machine-parsable format. The \fB-o\fR option is
+required with \fB-p\fR. See "Parsable Output Format", below.
+.RE
+
+.sp
+.ne 2
+.na
+\fB-t\fR, \fB--target\fR
+.ad
+.sp .6
+.RS 4n
+Displays information about an overlay device's target table. For more
+information on the target table, see \fBoverlay\fR(5).
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdladm show-usage\fR [\fB-a\fR] \fB-f\fR \fIfilename\fR [\fB-p\fR
+\fIplotfile\fR \fB-F\fR \fIformat\fR] [\fB-s\fR \fItime\fR] [\fB-e\fR
+\fItime\fR] [\fIlink\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Show the historical network usage from a stored extended accounting file.
+Configuration and enabling of network accounting through \fBacctadm\fR(8) is
+required. The default output will be the summary of network usage for the
+entire period of time in which extended accounting was enabled.
+.sp
+.ne 2
+.na
+\fB\fB-a\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display all historical network usage for the specified period of time during
+which extended accounting is enabled. This includes the usage information for
+the links that have already been deleted.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR \fIfilename\fR, \fB--file\fR=\fIfilename\fR\fR
+.ad
+.sp .6
+.RS 4n
+Read extended accounting records of network usage from \fIfilename\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-F\fR \fIformat\fR, \fB--format\fR=\fIformat\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the format of \fIplotfile\fR that is specified by the \fB-p\fR
+option. As of this release, \fBgnuplot\fR is the only supported format.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR \fIplotfile\fR, \fB--plot\fR=\fIplotfile\fR\fR
+.ad
+.sp .6
+.RS 4n
+Write network usage data to a file of the format specified by the \fB-F\fR
+option, which is required.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR \fItime\fR, \fB--start\fR=\fItime\fR\fR
+.ad
+.br
+.na
+\fB\fB-e\fR \fItime\fR, \fB--stop\fR=\fItime\fR\fR
+.ad
+.sp .6
+.RS 4n
+Start and stop times for data display. Time is in the format
+\fIMM\fR/\fIDD\fR/\fIYYYY\fR,\fIhh\fR:\fImm\fR:\fIss\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIlink\fR\fR
+.ad
+.sp .6
+.RS 4n
+If specified, display the network usage only for the named link. Otherwise,
+display network usage for all links.
+.RE
+
+.RE
+
+.SS "Parsable Output Format"
+Many \fBdladm\fR subcommands have an option that displays output in a
+machine-parsable format. The output format is one or more lines of colon
+(\fB:\fR) delimited fields. The fields displayed are specific to the subcommand
+used and are listed under the entry for the \fB-o\fR option for a given
+subcommand. Output includes only those fields requested by means of the
+\fB-o\fR option, in the order requested.
+.sp
+.LP
+When you request multiple fields, any literal colon characters are escaped by a
+backslash (\fB\e\fR) before being output. Similarly, literal backslash
+characters will also be escaped (\fB\e\e\fR). This escape format is parsable
+by using shell \fBread\fR(1) functions with the environment variable
+\fBIFS=:\fR (see \fBEXAMPLES\fR, below). Note that escaping is not done when
+you request only a single field.
+.SS "General Link Properties"
+The following general link properties are supported:
+.sp
+.ne 2
+.na
+\fB\fBallow-all-dhcp-cids\fR\fR
+.ad
+.sp .6
+.RS 4n
+One of \fBtrue\fR or \fBfalse\fR, to indicate whether or not all DHCP Client
+Identifiers should be permitted on this interface when DHCP spoofing protection
+is being used. This can be useful in cases where a DHCP client is using RFC
+4361-style Client Identifiers, which are based on a value that is opaque to the
+Global Zone, but enforcement of MAC addresses in DHCP packets is still desired.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBallowed-dhcp-cids\fR\fR
+.ad
+.sp .6
+.RS 4n
+A comma-separated list of DHCP Client Identifiers that are allowed on the
+interface.
+.sp
+Client identifiers can be written in three different formats: a string of
+hexadecimal characters prefixed by \fB0x\fR, indicating the exact bytes used in
+the Client Identifier; an RFC 3315 DUID of the form
+"1.<hardware\ type>.<time>.<link-layer\ address>" (DUID-LLT),
+"2.<enterprise\ number>.<hex\ string>" (DUID-EN), or
+"3.<hardware\ type>.<link-layer\ address>" (DUID-LL); or a string of characters
+whose byte values should be used as the Client Identifier.
+.sp
+When specifying a string of hexadecimal characters prefixed by \fB0x\fR or as
+part of a DUID-EN string, an even number of hexadecimal characters must be
+provided in order to fully specify each byte.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBallowed-ips\fR\fR
+.ad
+.sp .6
+.RS 4n
+A comma-separated list of IP addresses that are allowed on the interface.
+.sp
+An address in CIDR format with no host address specified is used to indicate
+that any address on that subnet is allowed (e.g. 192.168.10.0/24 means any
+address in the range 192.168.10.0 - 192.168.10.255 is allowed).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBautopush\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the set of STREAMS modules to push on the stream associated with a
+link when its DLPI device is opened. It is a space-delimited list of modules.
+.sp
+The optional special character sequence \fB[anchor]\fR indicates that a STREAMS
+anchor should be placed on the stream at the module previously specified in the
+list. It is an error to specify more than one anchor or to have an anchor first
+in the list.
+.sp
+The \fBautopush\fR property is preferred over the more general
+\fBautopush\fR(8) command.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcpus\fR\fR
+.ad
+.sp .6
+.RS 4n
+Bind the processing of packets for a given data link to a processor or a set of
+processors. The value can be a comma-separated list of one or more processor
+ids. If the list consists of more than one processor, the processing will
+spread out to all the processors. Connection to processor affinity and packet
+ordering for any individual connection will be maintained.
+.sp
+The processor or set of processors are not exclusively reserved for the link.
+Only the kernel threads and interrupts associated with processing of the link
+are bound to the processor or the set of processors specified. In case it is
+desired that processors be dedicated to the link, \fBpsrset\fR(8) can be used
+to create a processor set and then specifying the processors from the processor
+set to bind the link to.
+.sp
+If the link was already bound to processor or set of processors due to a
+previous operation, the binding will be removed and the new set of processors
+will be used instead.
+.sp
+The default is no CPU binding, which is to say that the processing of packets
+is not bound to any specific processor or processor set.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdynamic-methods\fR\fR
+.ad
+.sp .6
+.RS 4n
+When using IP spoofing protection (see \fBprotection\fR), addresses can be
+learned dynamically by monitoring certain network traffic, like DHCP
+transactions or IPv6 Stateless Address Autoconfiguration (SLAAC). By default,
+all learning methods are permitted, but if \fBallowed-ips\fR contains any
+addresses, then all methods are disabled, and any packets sent from addresses
+previously learned will be dropped. This property allows selecting which ones
+are re-enabled, where valid options are \fBdhcpv4\fR, \fBdhcpv6\fR, and
+\fBslaac\fR. \fBaddrconf\fR is available as an alias for enabling both
+\fBdhcpv6\fR and \fBslaac\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBlearn_limit\fR\fR
+.ad
+.sp .6
+.RS 4n
+Limits the number of new or changed MAC sources to be learned over a bridge
+link. When the number exceeds this value, learning on that link is temporarily
+disabled. Only non-VLAN, non-VNIC type links have this property.
+.sp
+The default value is \fB1000\fR. Valid values are greater or equal to 0.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBlearn_decay\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the decay rate for source changes limited by \fBlearn_limit\fR. This
+number is subtracted from the counter for a bridge link every 5 seconds. Only
+non-VLAN, non-VNIC type links have this property.
+.sp
+The default value is \fB200\fR. Valid values are greater or equal to 0.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmaxbw\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets the full duplex bandwidth for the link. The bandwidth is specified as an
+integer with one of the scale suffixes (\fBK\fR, \fBM\fR, or \fBG\fR for Kbps,
+Mbps, and Gbps). If no units are specified, the input value will be read as
+Mbps. The default is no bandwidth limit.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpriority\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets the relative priority for the link. The value can be given as one of the
+tokens \fBhigh\fR, \fBmedium\fR, or \fBlow\fR. The default is \fBhigh\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBprotection\fR\fR
+.ad
+.sp .6
+.RS 4n
+This property enables various forms of link protections, which prevent sending
+applicable traffic out of this link. Note that since this enforcement happens
+late in the networking stack, some observability tools like \fBsnoop\fR(1M) may
+still see dropped outbound packets.
+
+This property should be set to a comma-separated list of protections to enable
+on this link, where available protections are:
+.sp
+.ne 2
+.na
+\fBip-nospoof\fR
+.ad
+.sp .6
+.RS 4n
+Prevents sending from IPv4 and IPv6 addresses that have not been permitted
+over the NIC. Addresses can be learned dynamically (see \fBdynamic-methods\fR)
+or specified explicitly (see \fBallowed-ips\fR).
+.RE
+.sp
+.ne 2
+.na
+\fBdhcp-nospoof\fR
+.ad
+.sp .6
+.RS 4n
+Prevents sending DHCP packets whose client hardware address
+(CHADDR) field differs from the link-layer address, or from using a Client
+Identifier whose value cannot be confirmed to be derived from the link-layer
+address. Additional Client Identifiers can be permitted through the
+\fBallowed-dhcp-cids\fR and \fBallow-all-dhcp-cids\fR link properties.
+.RE
+.sp
+.ne 2
+.na
+\fBmac-nospoof\fR
+.ad
+.sp .6
+.RS 4n
+Prevents sending packets with a link-layer address that differs from the one
+associated with the NIC. Additional addresses to allow can be added using the
+\fBseconday-macs\fR property.
+.RE
+.sp
+.ne 2
+.na
+\fBrestricted\fR
+.ad
+.sp .6
+.RS 4n
+Prevents using a VLAN ID not associated with the NIC and sending packets that
+are not IPv4, IPv6 or ARP.
+.RE
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBstp\fR\fR
+.ad
+.sp .6
+.RS 4n
+Enables or disables Spanning Tree Protocol on a bridge link. Setting this value
+to \fB0\fR disables Spanning Tree, and puts the link into forwarding mode with
+BPDU guarding enabled. This mode is appropriate for point-to-point links
+connected only to end nodes. Only non-VLAN, non-VNIC type links have this
+property. The default value is \fB1\fR, to enable STP.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBforward\fR\fR
+.ad
+.sp .6
+.RS 4n
+Enables or disables forwarding for a VLAN. Setting this value to \fB0\fR
+disables bridge forwarding for a VLAN link. Disabling bridge forwarding removes
+that VLAN from the "allowed set" for the bridge. The default value is \fB1\fR,
+to enable bridge forwarding for configured VLANs.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdefault_tag\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets the default VLAN ID that is assumed for untagged packets sent to and
+received from this link. Only non-VLAN, non-VNIC type links have this property.
+Setting this value to \fB0\fR disables the bridge forwarding of untagged
+packets to and from the port. The default value is \fBVLAN ID 1\fR. Valid
+values values are from 0 to 4094.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpromisc-filtered\fR\fR
+.ad
+.sp .6
+.RS 4n
+Enables or disables the default filtering of promiscuous mode for certain
+classes of links. By default, VNICs will only see unicast traffic destined for it
+in promiscuous mode. Not all the unicast traffic from the underlying device
+makes it to the VNIC. Disabling this would cause a VNIC, for example, to be able
+to see all unicast traffic from the device it is created over. The default value
+is on.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBstp_priority\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets the STP and RSTP Port Priority value, which is used to determine the
+preferred root port on a bridge. Lower numerical values are higher priority.
+The default value is \fB128\fR. Valid values range from 0 to 255.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBstp_cost\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets the STP and RSTP cost for using the link. The default value is \fBauto\fR,
+which sets the cost based on link speed, using \fB100\fR for 10Mbps, \fB19\fR
+for 100Mbps, \fB4\fR for 1Gbps, and \fB2\fR for 10Gbps. Valid values range from
+1 to 65535.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBstp_edge\fR\fR
+.ad
+.sp .6
+.RS 4n
+Enables or disables bridge edge port detection. If set to \fB0\fR (false), the
+system assumes that the port is connected to other bridges even if no bridge
+PDUs of any type are seen. The default value is \fB1\fR, which detects edge
+ports automatically.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBstp_p2p\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets bridge point-to-point operation mode. Possible values are \fBtrue\fR,
+\fBfalse\fR, and \fBauto\fR. When set to \fBauto\fR, point-to-point connections
+are automatically discovered. When set to \fBtrue\fR, the port mode is forced
+to use point-to-point. When set to \fBfalse\fR, the port mode is forced to use
+normal multipoint mode. The default value is \fBauto\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBstp_mcheck\fR\fR
+.ad
+.sp .6
+.RS 4n
+Triggers the system to run the RSTP \fBForce BPDU Migration Check\fR procedure
+on this link. The procedure is triggered by setting the property value to
+\fB1\fR. The property is automatically reset back to \fB0\fR. This value cannot
+be set unless the following are true:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The link is bridged
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The bridge is protected by Spanning Tree
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The bridge \fBforce-protocol\fR value is at least 2 (RSTP)
+.RE
+The default value is 0.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBzone\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the zone to which the link belongs. This property can be modified
+only temporarily through \fBdladm\fR, and thus the \fB-t\fR option must be
+specified. To modify the zone assignment such that it persists across reboots,
+please use \fBzonecfg\fR(8). Possible values consist of any exclusive-IP zone
+currently running on the system. By default, the zone binding is as per
+\fBzonecfg\fR(8).
+.RE
+
+.SS "Wifi Link Properties"
+The following \fBWiFi\fR link properties are supported. Note that the ability
+to set a given property to a given value depends on the driver and hardware.
+.sp
+.ne 2
+.na
+\fB\fBchannel\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the channel to use. This property can be modified only by certain
+\fBWiFi\fR links when in \fBIBSS\fR mode. The default value and allowed range
+of values varies by regulatory domain.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpowermode\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the power management mode of the \fBWiFi\fR link. Possible values are
+\fBoff\fR (disable power management), \fBmax\fR (maximum power savings), and
+\fBfast\fR (performance-sensitive power management). Default is \fBoff\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBradio\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the radio mode of the \fBWiFi\fR link. Possible values are \fBon\fR
+or \fBoff\fR. Default is \fBon\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBspeed\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies a fixed speed for the \fBWiFi\fR link, in megabits per second. The
+set of possible values depends on the driver and hardware (but is shown by
+\fBshow-linkprop\fR); common speeds include 1, 2, 11, and 54. By default, there
+is no fixed speed.
+.RE
+
+.SS "Ethernet Link Properties"
+The following MII Properties, as documented in \fBieee802.3\fR(7), are
+supported in read-only mode:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBduplex\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBstate\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBadv_autoneg_cap\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBadv_10gfdx_cap\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBadv_1000fdx_cap\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBadv_1000hdx_cap\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBadv_100fdx_cap\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBadv_100hdx_cap\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBadv_10fdx_cap\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBadv_10hdx_cap\fR
+.RE
+.sp
+.LP
+Each \fBadv_\fR property (for example, \fBadv_10fdx_cap\fR) also has a
+read/write counterpart \fBen_\fR property (for example, \fBen_10fdx_cap\fR)
+controlling parameters used at auto-negotiation. In the absence of Power
+Management, the \fBadv\fR* speed/duplex parameters provide the values that are
+both negotiated and currently effective in hardware. However, with Power
+Management enabled, the speed/duplex capabilities currently exposed in hardware
+might be a subset of the set of bits that were used in initial link parameter
+negotiation. Thus the MII \fBadv_\fR* parameters are marked read-only, with an
+additional set of \fBen_\fR* parameters for configuring speed and duplex
+properties at initial negotiation.
+.sp
+.LP
+Note that the \fBadv_autoneg_cap\fR does not have an \fBen_autoneg_cap\fR
+counterpart: the \fBadv_autoneg_cap\fR is a 0/1 switch that turns off/on
+auto-negotiation itself, and therefore cannot be impacted by Power Management.
+.sp
+.LP
+In addition, the following Ethernet properties are reported:
+.sp
+.ne 2
+.na
+\fB\fBspeed\fR\fR
+.ad
+.sp .6
+.RS 4n
+(read-only) The operating speed of the device, in Mbps.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmtu\fR\fR
+.ad
+.sp .6
+.RS 4n
+The maximum client SDU (Send Data Unit) supported by the device. Valid range is
+68-65536.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBflowctrl\fR\fR
+.ad
+.sp .6
+.RS 4n
+Establishes flow-control modes that will be advertised by the device. Valid
+input is one of:
+.sp
+.ne 2
+.na
+\fB\fBno\fR\fR
+.ad
+.sp .6
+.RS 4n
+No flow control enabled.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrx\fR\fR
+.ad
+.sp .6
+.RS 4n
+Receive, and act upon incoming pause frames.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBtx\fR\fR
+.ad
+.sp .6
+.RS 4n
+Transmit pause frames to the peer when congestion occurs, but ignore received
+pause frames.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBbi\fR\fR
+.ad
+.sp .6
+.RS 4n
+Bidirectional flow control.
+.RE
+
+Note that the actual settings for this value are constrained by the
+capabilities allowed by the device and the link partner.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBen_fec_cap\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets the Forward Error Correct (FEC) code(s) to be advertised by the
+device.
+Valid values are:
+.sp
+.ne 2
+.na
+\fB\fBnone\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow the device not to use FEC.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBauto\fR\fR
+.ad
+.sp .6
+.RS 4n
+The device will automatically decide which FEC code to use.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrs\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow Reed-Solomon FEC code.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBbase-r\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow Base-R (also known as FireCode) code.
+.RE
+
+Valid input is either \fBauto\fR as a single value, or a comma separated
+combination of \fBnone\fR, \fBrs\fR and \fBbase-r\fR.
+The default value is \fBauto\fR.
+.sp
+.LP
+Note the actual FEC settings and combinations are constrained by the
+capabilities allowed by the device and the link partner.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBadv_fec_cap\fR\fR
+.ad
+.sp .6
+.RS 4n
+(read only) The current negotiated Forward Error Correction code.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsecondary-macs\fR\fR
+.ad
+.sp .6
+.RS 4n
+A comma-separated list of additional MAC addresses that are allowed on the
+interface.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBtagmode\fR\fR
+.ad
+.sp .6
+.RS 4n
+This link property controls the conditions in which 802.1Q VLAN tags will be
+inserted in packets being transmitted on the link. Two mode values can be
+assigned to this property:
+.sp
+.ne 2
+.na
+\fB\fBnormal\fR\fR
+.ad
+.RS 12n
+Insert a VLAN tag in outgoing packets under the following conditions:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The packet belongs to a VLAN.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The user requested priority tagging.
+.RE
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBvlanonly\fR\fR
+.ad
+.RS 12n
+Insert a VLAN tag only when the outgoing packet belongs to a VLAN. If a tag is
+being inserted in this mode and the user has also requested a non-zero
+priority, the priority is honored and included in the VLAN tag.
+.RE
+
+The default value is \fBvlanonly\fR.
+.RE
+
+.SS "IP Tunnel Link Properties"
+The following IP tunnel link properties are supported.
+.sp
+.ne 2
+.na
+\fB\fBhoplimit\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the IPv4 TTL or IPv6 hop limit for the encapsulating outer IP header
+of a tunnel link. This property exists for all tunnel types. The default value
+is 64.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBencaplimit\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the IPv6 encapsulation limit for an IPv6 tunnel as defined in RFC
+2473. This value is the tunnel nesting limit for a given tunneled packet. The
+default value is 4. A value of 0 disables the encapsulation limit.
+.RE
+
+.SH EXAMPLES
+\fBExample 1 \fRConfiguring an Aggregation
+.sp
+.LP
+To configure a data-link over an aggregation of devices \fBbge0\fR and
+\fBbge1\fR with key 1, enter the following command:
+
+.sp
+.in +2
+.nf
+# \fBdladm create-aggr -d bge0 -d bge1 1\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRConnecting to a WiFi Link
+.sp
+.LP
+To connect to the most optimal available unsecured network on a system with a
+single \fBWiFi\fR link (as per the prioritization rules specified for
+\fBconnect-wifi\fR), enter the following command:
+
+.sp
+.in +2
+.nf
+# \fBdladm connect-wifi\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRCreating a WiFi Key
+.sp
+.LP
+To interactively create the \fBWEP\fR key \fBmykey\fR, enter the following
+command:
+
+.sp
+.in +2
+.nf
+# \fBdladm create-secobj -c wep mykey\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Alternatively, to non-interactively create the \fBWEP\fR key \fBmykey\fR using
+the contents of a file:
+
+.sp
+.in +2
+.nf
+# \fBumask 077\fR
+ # \fBcat >/tmp/mykey.$$ <<EOF\fR
+ \fB12345\fR
+ \fBEOF\fR
+ # \fBdladm create-secobj -c wep -f /tmp/mykey.$$ mykey\fR
+ # \fBrm /tmp/mykey.$$\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 4 \fRConnecting to a Specified Encrypted WiFi Link
+.sp
+.LP
+To use key \fBmykey\fR to connect to \fBESSID\fR \fBwlan\fR on link \fBath0\fR,
+enter the following command:
+
+.sp
+.in +2
+.nf
+# \fBdladm connect-wifi -k mykey -e wlan ath0\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 5 \fRChanging a Link Property
+.sp
+.LP
+To set \fBpowermode\fR to the value \fBfast\fR on link \fBpcwl0\fR, enter the
+following command:
+
+.sp
+.in +2
+.nf
+# \fBdladm set-linkprop -p powermode=fast pcwl0\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 6 \fRConnecting to a WPA-Protected WiFi Link
+.sp
+.LP
+Create a WPA key \fBpsk\fR and enter the following command:
+
+.sp
+.in +2
+.nf
+# \fBdladm create-secobj -c wpa psk\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+To then use key \fBpsk\fR to connect to ESSID \fBwlan\fR on link \fBath0\fR,
+enter the following command:
+
+.sp
+.in +2
+.nf
+# \fBdladm connect-wifi -k psk -e wlan ath0\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 7 \fRRenaming a Link
+.sp
+.LP
+To rename the \fBbge0\fR link to \fBmgmt0\fR, enter the following command:
+
+.sp
+.in +2
+.nf
+# \fBdladm rename-link bge0 mgmt0\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 8 \fRReplacing a Network Card
+.sp
+.LP
+Consider that the \fBbge0\fR device, whose link was named \fBmgmt0\fR as shown
+in the previous example, needs to be replaced with a \fBce0\fR device because
+of a hardware failure. The \fBbge0\fR NIC is physically removed, and replaced
+with a new \fBce0\fR NIC. To associate the newly added \fBce0\fR device with
+the \fBmgmt0\fR configuration previously associated with \fBbge0\fR, enter the
+following command:
+
+.sp
+.in +2
+.nf
+# \fBdladm rename-link ce0 mgmt0\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 9 \fRRemoving a Network Card
+.sp
+.LP
+Suppose that in the previous example, the intent is not to replace the
+\fBbge0\fR NIC with another NIC, but rather to remove and not replace the
+hardware. In that case, the \fBmgmt0\fR datalink configuration is not slated to
+be associated with a different physical device as shown in the previous
+example, but needs to be deleted. Enter the following command to delete the
+datalink configuration associated with the \fBmgmt0\fR datalink, whose physical
+hardware (\fBbge0\fR in this case) has been removed:
+
+.sp
+.in +2
+.nf
+# \fBdladm delete-phys mgmt0\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 10 \fRUsing Parsable Output to Capture a Single Field
+.sp
+.LP
+The following assignment saves the MTU of link \fBnet0\fR to a variable named
+\fBmtu\fR.
+
+.sp
+.in +2
+.nf
+# \fBmtu=`dladm show-link -p -o mtu net0`\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 11 \fRUsing Parsable Output to Iterate over Links
+.sp
+.LP
+The following script displays the state of each link on the system.
+
+.sp
+.in +2
+.nf
+# \fBdladm show-link -p -o link,state | while IFS=: read link state; do
+ print "Link $link is in state $state"
+ done\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 12 \fRConfiguring VNICs
+.sp
+.LP
+Create two VNICs with names \fBhello0\fR and \fBtest1\fR over a single physical
+link \fBbge0\fR:
+
+.sp
+.in +2
+.nf
+# \fBdladm create-vnic -l bge0 hello0\fR
+# \fBdladm create-vnic -l bge0 test1\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 13 \fRConfiguring VNICs and Allocating Bandwidth and Priority
+.sp
+.LP
+Create two VNICs with names \fBhello0\fR and \fBtest1\fR over a single physical
+link \fBbge0\fR and make \fBhello0\fR a high priority VNIC with a
+factory-assigned MAC address with a maximum bandwidth of 50 Mbps. Make
+\fBtest1\fR a low priority VNIC with a random MAC address and a maximum
+bandwidth of 100Mbps.
+
+.sp
+.in +2
+.nf
+# \fBdladm create-vnic -l bge0 -m factory -p maxbw=50,priority=high hello0\fR
+# \fBdladm create-vnic -l bge0 -m random -p maxbw=100M,priority=low test1\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 14 \fRConfiguring a VNIC with a Factory MAC Address
+.sp
+.LP
+First, list the available factory MAC addresses and choose one of them:
+
+.sp
+.in +2
+.nf
+# \fBdladm show-phys -m bge0\fR
+LINK SLOT ADDRESS INUSE CLIENT
+bge0 primary 0:e0:81:27:d4:47 yes bge0
+bge0 1 8:0:20:fe:4e:a5 no
+bge0 2 8:0:20:fe:4e:a6 no
+bge0 3 8:0:20:fe:4e:a7 no
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Create a VNIC named \fBhello0\fR and use slot 1's address:
+
+.sp
+.in +2
+.nf
+# \fBdladm create-vnic -l bge0 -m factory -n 1 hello0\fR
+# \fBdladm show-phys -m bge0\fR
+LINK SLOT ADDRESS INUSE CLIENT
+bge0 primary 0:e0:81:27:d4:47 yes bge0
+bge0 1 8:0:20:fe:4e:a5 yes hello0
+bge0 2 8:0:20:fe:4e:a6 no
+bge0 3 8:0:20:fe:4e:a7 no
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 15 \fRCreating a VNIC with User-Specified MAC Address, Binding it to
+Set of Processors
+.sp
+.LP
+Create a VNIC with name \fBhello0\fR, with a user specified MAC address, and a
+processor binding \fB0, 1, 2, 3\fR.
+
+.sp
+.in +2
+.nf
+# \fBdladm create-vnic -l bge0 -m 8:0:20:fe:4e:b8 -p cpus=0,1,2,3 hello0\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 16 \fRCreating a Virtual Network Without a Physical NIC
+.sp
+.LP
+First, create an etherstub with name \fBstub1\fR:
+
+.sp
+.in +2
+.nf
+# \fBdladm create-etherstub stub1\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Create two VNICs with names \fBhello0\fR and \fBtest1\fR on the etherstub. This
+operation implicitly creates a virtual switch connecting \fBhello0\fR and
+\fBtest1\fR.
+
+.sp
+.in +2
+.nf
+# \fBdladm create-vnic -l stub1 hello0\fR
+# \fBdladm create-vnic -l stub1 test1\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 17 \fRShowing Network Usage
+.sp
+.LP
+Network usage statistics can be stored using the extended accounting facility,
+\fBacctadm\fR(8).
+
+.sp
+.in +2
+.nf
+# \fBacctadm -e basic -f /var/log/net.log net\fR
+# \fBacctadm net\fR
+ Network accounting: active
+ Network accounting file: /var/log/net.log
+ Tracked Network resources: basic
+ Untracked Network resources: src_ip,dst_ip,src_port,dst_port,protocol,
+ dsfield
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The saved historical data can be retrieved in summary form using the
+\fBshow-usage\fR subcommand:
+
+.sp
+.in +2
+.nf
+# \fBdladm show-usage -f /var/log/net.log\fR
+LINK DURATION IPACKETS RBYTES OPACKETS OBYTES BANDWIDTH
+e1000g0 80 1031 546908 0 0 2.44 Kbps
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 18 \fRDisplaying Bridge Information
+.sp
+.LP
+The following commands use the \fBshow-bridge\fR subcommand with no and various
+options.
+
+.sp
+.in +2
+.nf
+# \fBdladm show-bridge\fR
+BRIDGE PROTECT ADDRESS PRIORITY DESROOT
+foo stp 32768/8:0:20:bf:f 32768 8192/0:d0:0:76:14:38
+bar stp 32768/8:0:20:e5:8 32768 8192/0:d0:0:76:14:38
+
+# \fBdladm show-bridge -l foo\fR
+LINK STATE UPTIME DESROOT
+hme0 forwarding 117 8192/0:d0:0:76:14:38
+qfe1 forwarding 117 8192/0:d0:0:76:14:38
+
+# \fBdladm show-bridge -s foo\fR
+BRIDGE DROPS FORWARDS
+foo 0 302
+
+# \fBdladm show-bridge -ls foo\fR
+LINK DROPS RECV XMIT
+hme0 0 360832 31797
+qfe1 0 322311 356852
+
+# \fBdladm show-bridge -f foo\fR
+DEST AGE FLAGS OUTPUT
+8:0:20:bc:a7:dc 10.860 -- hme0
+8:0:20:bf:f9:69 -- L hme0
+8:0:20:c0:20:26 17.420 -- hme0
+8:0:20:e5:86:11 -- L qfe1
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 19 \fRCreating an IPv4 Tunnel
+.sp
+.LP
+The following sequence of commands creates and then displays a persistent IPv4
+tunnel link named \fBmytunnel0\fR between 66.1.2.3 and 192.4.5.6:
+
+.sp
+.in +2
+.nf
+# \fBdladm create-iptun -T ipv4 -s 66.1.2.3 -d 192.4.5.6 mytunnel0\fR
+# \fBdladm show-iptun mytunnel0\fR
+LINK TYPE FLAGS SOURCE DESTINATION
+mytunnel0 ipv4 -- 66.1.2.3 192.4.5.6
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+A point-to-point IP interface can then be created over this tunnel link:
+
+.sp
+.in +2
+.nf
+# \fBifconfig mytunnel0 plumb 10.1.0.1 10.1.0.2 up\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+As with any other IP interface, configuration persistence for this IP interface
+is achieved by placing the desired \fBifconfig\fR commands (in this case, the
+command for "\fB10.1.0.1 10.1.0.2\fR") into \fB/etc/hostname.mytunnel0\fR.
+
+.LP
+\fBExample 20 \fRCreating a 6to4 Tunnel
+.sp
+.LP
+The following command creates a 6to4 tunnel link. The IPv4 address of the 6to4
+router is 75.10.11.12.
+
+.sp
+.in +2
+.nf
+# \fBdladm create-iptun -T 6to4 -s 75.10.11.12 sitetunnel0\fR
+# \fBdladm show-iptun sitetunnel0\fR
+LINK TYPE FLAGS SOURCE DESTINATION
+sitetunnel0 6to4 -- 75.10.11.12 --
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The following command plumbs an IPv6 interface on this tunnel:
+
+.sp
+.in +2
+.nf
+# \fBifconfig sitetunnel0 inet6 plumb up\fR
+# \fBifconfig sitetunnel0 inet6\fR
+sitetunnel0: flags=2200041 <UP,RUNNING,NONUD,IPv6> mtu 65515 index 3
+ inet tunnel src 75.10.11.12
+ tunnel hop limit 64
+ inet6 2002:4b0a:b0c::1/16
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Note that the system automatically configures the IPv6 address on the 6to4 IP
+interface. See \fBifconfig\fR(8) for a description of how IPv6 addresses are
+configured on 6to4 tunnel links.
+
+.SH ATTRIBUTES
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+.LP
+\fB/usr/sbin\fR
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Committed
+.TE
+
+.sp
+.LP
+\fB/sbin\fR
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Committed
+.TE
+
+.SH SEE ALSO
+.BR dlpi (4P),
+.BR attributes (7),
+.BR ieee802.3 (7),
+.BR overlay (7),
+.BR acctadm (8),
+.BR autopush (8),
+.BR ifconfig (8),
+.BR ipsecconf (8),
+.BR ndd (8),
+.BR psrset (8),
+.BR wpad (8),
+.BR zonecfg (8)
+.sp
+.LP
+R. Droms, Ed., J. Bound, B. Volz, T. Lemon, C. Perkins, M. Carney. \fIRFC 3315:
+Dynamic Host Configuration Protocol for IPv6 (DHCPv6)\fR. The Internet Society.
+July 2003.
+.sp
+.LP
+T. Lemon, B. Sommerfeld. February 2006. \fIRFC 4361: Node-specific Client
+Identifiers for Dynamic Host Configuration Protocol Version Four (DHCPv4)\fR.
+The Internet Society. January 2006.
+.SH NOTES
+The preferred method of referring to an aggregation in the aggregation
+subcommands is by its link name. Referring to an aggregation by its integer
+\fIkey\fR is supported for backward compatibility, but is not necessary. When
+creating an aggregation, if a \fIkey\fR is specified instead of a link name,
+the aggregation's link name will be automatically generated by \fBdladm\fR as
+\fBaggr\fR\fIkey\fR.
diff --git a/usr/src/man/man8/dlmgmtd.8 b/usr/src/man/man8/dlmgmtd.8
new file mode 100644
index 0000000000..58d1bd0b4d
--- /dev/null
+++ b/usr/src/man/man8/dlmgmtd.8
@@ -0,0 +1,63 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH DLMGMTD 8 "Jul 30, 2008"
+.SH NAME
+dlmgmtd \- datalink management daemon
+.SH SYNOPSIS
+.LP
+.nf
+\fB/sbin/dlmgmtd\fR
+.fi
+
+.LP
+.nf
+svc:/network/datalink-management:default
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBdlmgmtd\fR is a system daemon that handles administrative events for network
+datalink interfaces. It is controlled through the service management facility
+(SMF) service instance:
+.sp
+.in +2
+.nf
+svc:/network/datalink-management:default
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The daemon should not be invoked directly. It does not constitute an
+administrative nor a programming interface. The administrative interface for
+managing datalinks is \fBdladm\fR(8).
+.SH OPTIONS
+.sp
+.LP
+The daemon has no options.
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Private
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7),
+.BR dladm (8)
diff --git a/usr/src/man/man8/dmesg.8 b/usr/src/man/man8/dmesg.8
new file mode 100644
index 0000000000..3c7e94debd
--- /dev/null
+++ b/usr/src/man/man8/dmesg.8
@@ -0,0 +1,31 @@
+'\" te
+.\" Copyright (c) 1980 Regents of the University of California. All rights reserved. The Berkeley software License Agreement specifies the terms and conditions for redistribution.
+.\" Copyright (c) 1999 Sun Microsystems, Inc. All Rights Reserved.
+.TH DMESG 8 "Jul 9, 2003"
+.SH NAME
+dmesg \- collect system diagnostic messages to form error log
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/bin/dmesg\fR
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/dmesg\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBdmesg\fR is made obsolete by \fBsyslogd\fR(8) for maintenance of the system
+error log.
+.sp
+.LP
+\fBdmesg\fR looks in a system buffer for recently printed diagnostic messages
+and prints them on the standard output.
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7),
+.BR syslogd (8)
diff --git a/usr/src/man/man8/dminfo.8 b/usr/src/man/man8/dminfo.8
new file mode 100644
index 0000000000..0894b94b08
--- /dev/null
+++ b/usr/src/man/man8/dminfo.8
@@ -0,0 +1,153 @@
+'\" te
+.\" Copyright (c) 1993, Sun Microsystems, Inc.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH DMINFO 8 "Mar 6, 2017"
+.SH NAME
+dminfo \- report information about a device entry in a device maps file
+.SH SYNOPSIS
+.LP
+.nf
+\fBdminfo\fR [\fB-v\fR] [\fB-a\fR] [\fB-f\fR \fIpathname\fR]
+.fi
+
+.LP
+.nf
+\fBdminfo\fR [\fB-v\fR] [\fB-a\fR] [\fB-f\fR \fIpathname\fR] \fB-n\fR \fIdev\fR \fB-\fIname\fR\fR...
+.fi
+
+.LP
+.nf
+\fBdminfo\fR [\fB-v\fR] [\fB-a\fR] [\fB-f\fR \fIpathname\fR] \fB-d\fR \fIdev\fR \fB-\fIpath\fR\fR...
+.fi
+
+.LP
+.nf
+\fBdminfo\fR [\fB-v\fR] [\fB-a\fR] [\fB-f\fR \fIpathname\fR] \fB-t\fR \fIdev\fR \fB-\fItype\fR\fR...
+.fi
+
+.LP
+.nf
+\fBdminfo\fR [\fB-v\fR] [\fB-f\fR \fIpathname\fR] \fB-u\fR \fIdm\fR -\fIentry\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+\fBdminfo\fR reports and updates information about the \fBdevice_maps\fR(5)
+file.
+.SH OPTIONS
+.LP
+The following options are supported
+.sp
+.ne 2
+.na
+\fB\fB-a\fR\fR
+.ad
+.RS 18n
+Succeed if any of the requested entries are found. If used with \fB-v\fR, all
+entries that match the requested case(s) are printed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-d\fR \fIdev\(mipath\fR\fR
+.ad
+.RS 18n
+Search by \fIdev\(mipath\fR. Search \fBdevice_maps\fR(5) for a device special
+pathname in the \fIdevice_list\fR field matching the \fIdev\(mipath\fR
+argument. This option cannot be used with \fB-n\fR, \fB-t\fR or \fB-u\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR \fIpathname\fR\fR
+.ad
+.RS 18n
+Use a device_maps file with \fIpathname\fR instead of
+\fB/etc/security/device_maps\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR \fIdev\(miname\fR\fR
+.ad
+.RS 18n
+Search by \fIdev\(miname\fR. Search \fBdevice_maps\fR(5) for a
+\fIdevice_name\fR field matching \fIdev\(miname\fR. This option cannot be used
+with \fB-d\fR, \fB-t\fR or \fB-u\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-t\fR \fIdev\(mitype\fR\fR
+.ad
+.RS 18n
+Search by \fIdev\(mitype\fR. Search \fBdevice_maps\fR(5) for a
+\fIdevice_type\fR field matching the given \fIdev\(mitype\fR. This option
+cannot be used with \fB-d\fR, \fB-n\fR or \fB-u\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-u\fR \fIdm\(mientry\fR\fR
+.ad
+.RS 18n
+Update the \fBdevice_maps\fR(5) file. This option is provided to add entries to
+the \fBdevice_maps\fR(5) file. The \fIdm\(mientry\fR must be a complete
+\fBdevice_maps\fR(5) file entry. The \fIdm\(mientry\fR has fields, as in the
+\fBdevice_maps\fR file. It uses the colon (\fB:\fR) as a field separator, and
+white space as the \fIdevice_list\fR subfield separators. The \fIdm\(mientry\fR
+is not made if any fields are missing, or if the \fIdm\(mientry\fR would be a
+duplicate. The default device maps file can be updated only by the super user.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.RS 18n
+Verbose. Print the requested entry or entries, one line per entry, on the
+standard output. If no entries are specified, all are printed.
+.RE
+
+.SH EXIT STATUS
+.ne 2
+.na
+\fB0\fR
+.ad
+.RS 5n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB1\fR
+.ad
+.RS 5n
+Request failed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB2\fR
+.ad
+.RS 5n
+Incorrect syntax.
+.RE
+
+.SH FILES
+.LP
+\fB/etc/security/device_maps\fR
+.SH SEE ALSO
+.LP
+.BR device_maps (5),
+.BR attributes (7)
diff --git a/usr/src/man/man8/dns-sd.8 b/usr/src/man/man8/dns-sd.8
new file mode 100644
index 0000000000..db4ffc9277
--- /dev/null
+++ b/usr/src/man/man8/dns-sd.8
@@ -0,0 +1,275 @@
+.\" -*- tab-width: 4 -*-
+.\"
+.\" Copyright (c) 2004 Apple Computer, Inc. All Rights Reserved.
+.\"
+.\" Licensed under the Apache License, Version 2.0 (the "License");
+.\" you may not use this file except in compliance with the License.
+.\" You may obtain a copy of the License at
+.\"
+.\" http://www.apache.org/licenses/LICENSE-2.0
+.\"
+.\" Unless required by applicable law or agreed to in writing, software
+.\" distributed under the License is distributed on an "AS IS" BASIS,
+.\" WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+.\" See the License for the specific language governing permissions and
+.\" limitations under the License.
+.\"
+.\" Copyright 2016 Toomas Soome <tsoome@me.com>
+.\"
+.Dd Jan 28, 2016 \" Date
+.Dt DNS-SD 8 \" Document Title
+.Os illumos \" Operating System
+.\"
+.Sh NAME
+.Nm dns-sd
+.Nd Multicast DNS (mDNS) & DNS Service Discovery (DNS-SD) Test Tool \" For whatis
+.\"
+.Sh SYNOPSIS
+.Nm
+.Op Fl E
+.Pp
+.Nm
+.Op Fl F
+.Pp
+.Nm
+.Op Fl R Ar name type domain port Op Ar key=value ...
+.Pp
+.Nm
+.Op Fl B Ar type domain
+.Pp
+.Nm
+.Op Fl L Ar name type domain
+.Pp
+.Nm
+.Op Fl P Ar name type domain port host IP Op Ar key=value ...
+.Pp
+.Nm
+.Op Fl q Ar name rrtype rrclass
+.Pp
+.Nm
+.Op Fl Z Ar type domain
+.Pp
+.Nm
+.Op Fl G Ns \ v4/v6/v4v6 Ar name
+.Pp
+.Nm
+.Op Fl V
+.\"
+.Sh DESCRIPTION
+The
+.Nm
+command is a network diagnostic tool, much like
+.Xr ping 8
+or
+.Xr traceroute 8 .
+However, unlike those tools, most of its functionality is not implemented in the
+.Nm
+executable itself, but in library code that is available to any application.
+The library API that
+.Nm
+uses is documented in
+.Pa /usr/include/dns_sd.h .
+The
+.Nm
+command replaces the older
+mDNS
+command.
+.Pp
+The
+.Nm
+command is primarily intended for interactive use.
+Because its command-line arguments and output format are subject to change,
+invoking it from a shell script will generally be fragile.
+Additionally, the asynchronous nature of DNS Service Discovery does
+not lend itself easily to script-oriented programming.
+For example, calls like "browse" never complete; the action of performing a
+"browse" sets in motion machinery to notify the client whenever instances of
+that service type appear or disappear from the network.
+These notifications continue to be delivered indefinitely, for minutes,
+hours, or even days, as services come and go, until the client
+explicitly terminates the call.
+This style of asynchronous interaction works best with applications that are
+either multi-threaded, or use a main event-handling loop to receive keystrokes,
+network data, and other asynchronous event notifications as they happen.
+.br
+If you wish to perform DNS Service Discovery operations from a
+scripting language, then the best way to do this is not to execute the
+.Nm
+command and then attempt to decipher the textual output, but instead to
+directly call the DNS-SD APIs using a binding for your chosen language.
+.br
+For example, if you are programming in Ruby, then you can
+directly call DNS-SD APIs using the dnssd package documented at
+.Pa <http://rubyforge.org/projects/dnssd/> .
+.br
+Similar bindings for other languages are also in development.
+.Bl -tag -width E
+.It Nm Fl E
+return a list of domains recommended for registering(advertising) services.
+.It Nm Fl F
+return a list of domains recommended for browsing services.
+.Pp
+Normally, on your home network, the only domain you are likely to see is
+"local".
+However if your network administrator has created Domain Enumeration records,
+then you may also see other recommended domains for registering and browsing.
+.It Nm Fl R Ar name type domain port Op Ar key=value ...
+register (advertise) a service in the specified
+.Ar domain
+with the given
+.Ar name
+and
+.Ar type
+as listening (on the current machine) on
+.Ar port.
+.Pp
+.Ar name
+can be arbitrary unicode text, containing any legal unicode characters
+(including dots, spaces, slashes, colons, etc. without restriction),
+up to 63 UTF-8 bytes long.
+.Ar type
+must be of the form "_app-proto._tcp" or "_app-proto._udp", where
+"app-proto" is an application protocol name registered at
+.Pa http://www.iana.org/assignments/service-names-port-numbers/service-names-port-numbers.xml .
+.Pp
+.Ar domain
+is the domain in which to register the service.
+In current implementations, only the local multicast domain "local" is
+supported.
+In the future, registering will be supported in any arbitrary domain that has a
+working DNS Update server [RFC 2136].
+The
+.Ar domain
+"." is a synonym for "pick a sensible default" which today
+means "local".
+.Pp
+.Ar port
+is a number from 0 to 65535, and is the TCP or UDP port number upon
+which the service is listening.
+.Pp
+Additional attributes of the service may optionally be described by
+key/value pairs, which are stored in the advertised service's DNS TXT
+record.
+Allowable keys and values are listed with the service registration at
+.Pa http://www.iana.org/assignments/service-names-port-numbers/service-names-port-numbers.xml .
+.It Nm Fl B Ar type domain
+browse for instances of service
+.Ar type
+in
+.Ar domain .
+.Pp
+For valid
+.Ar type Ns s
+see
+.Pa http://www.iana.org/assignments/service-names-port-numbers/service-names-port-numbers.xml .
+as described above.
+Omitting the
+.Ar domain
+or using "." means "pick a sensible default."
+.It Nm Fl L Ar name type domain
+look up and display the information necessary to contact and use the
+named service: the hostname of the machine where that service is
+available, the port number on which the service is listening, and (if
+present) TXT record attributes describing properties of the service.
+.Pp
+Note that in a typical application, browsing may only happen rarely, while
+lookup (or "resolving") happens every time the service is used.
+For example, a user browses the network to pick a default printer fairly rarely,
+but once a default printer has been picked, that named service is resolved to
+its current IP address and port number every time the user presses Cmd-P to
+print.
+.It Nm Fl P Ar name type domain port host IP Op Ar key=value ...
+create a proxy advertisement for a service running on(offered by) some other
+machine.
+The two new options are Host, a name for the device and IP, the address of it.
+.Pp
+The service for which you create a proxy advertisement does not necessarily have
+to be on your local network.
+You can set up a local proxy for a website on the Internet.
+.It Nm Fl q Ar name rrtype rrclass
+look up any DNS name, resource record type, and resource record class,
+not necessarily DNS-SD names and record types.
+If rrtype is not specified, it queries for the IPv4 address of the name,
+if rrclass is not specified, IN class is assumed.
+If the name is not a fully qualified domain name, then search domains may be
+appended.
+.It Nm Fl Z Ar type domain
+browse for service instances and display output in zone file format.
+.It Nm Fl G Ns \ v4/v6/v4v6 Ar name
+look up the IP address information of the name.
+If v4 is specified, the IPv4 address of the name is looked up,
+if v6 is specified the IPv6 address is looked up.
+If v4v6 is specified both the IPv4 and IPv6 address is looked up.
+If the name is not a fully qualified domain name, then search domains may be
+appended.
+.It Nm Fl V
+return the version of the currently running daemon/system service.
+.El
+.Sh FILES
+.Pa /usr/bin/dns-sd \" Pathname
+.\"
+.Sh EXAMPLES
+To advertise the existence of LPR printing service on port 515 on this
+machine, such that it will be discovered by the Mac OS X printing software
+and other DNS-SD compatible printing clients, use:
+.Pp
+.Dl Nm Fl R Ns \ \&"My Test\&" _printer._tcp. \&. 515 pdl=application/postscript
+.Pp
+For this registration to be useful, you need to actually have LPR service
+available on port 515.
+Advertising a service that does not exist is not very useful, and will be
+confusing and annoying to other people on the network.
+.Pp
+Similarly, to advertise a web page being served by an HTTP
+server on port 80 on this machine, such that it will show up in the
+Bonjour list in Safari and other DNS-SD compatible Web clients, use:
+.Pp
+.Dl Nm Fl R Ns \ \&"My Test\&" _http._tcp \&. 80 path=/path-to-page.html
+.Pp
+To find the advertised web pages on the local network (the same list that
+Safari shows), use:
+.Pp
+.Dl Nm Fl B Ns \ _http._tcp
+.Pp
+While that command is running, in another window, try the
+.Nm Fl R
+example given above to advertise a web page, and you should see the
+"Add" event reported to the
+.Nm Fl B
+window.
+Now press Ctrl-C in the
+.Nm Fl R
+window and you should see the "Remove" event reported to the
+.Nm Fl B
+window.
+.Pp
+In the example below, the www.apple.com web page is advertised as a service
+called "apple",
+running on a target host called apple.local, which resolves to 17.149.160.49.
+.Pp
+.Dl Nm Fl P Ns \ apple _http._tcp \&"\&"\& 80 apple.local 17.149.160.49
+.Pp
+The Bonjour menu in the Safari web browser will now show "apple".
+The same IP address can be reached by entering apple.local in the web browser.
+In either case, the request will be resolved to the IP address and browser will
+show contents associated with www.apple.com.
+.Pp
+If a client wants to be notified of changes in server state, it can
+initiate a query for the service's particular record and leave it running.
+For example, to monitor the status of an iChat user you can use:
+.Pp
+.Dl Nm Fl q Ns \ someone@ex1._presence._tcp.local txt
+.Pp
+Everytime status of that user(someone) changes, you will see a new TXT record
+result reported.
+.Pp
+You can also query for a unicast name like www.apple.com and monitor its status.
+.Pp
+.Dl Nm Fl q Ns \ www.apple.com
+.Sh INTERFACE STABILITY
+.Sy Volatile .
+.Sh SEE ALSO
+.Xr resolv.conf 5 ,
+.Xr mdnsd 8 ,
+.Xr ping 8 ,
+.Xr traceroute 8
diff --git a/usr/src/man/man8/domainname.8 b/usr/src/man/man8/domainname.8
new file mode 100644
index 0000000000..e40e2cb54a
--- /dev/null
+++ b/usr/src/man/man8/domainname.8
@@ -0,0 +1,121 @@
+'\" te
+.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH DOMAINNAME 8 "May 13, 2017"
+.SH NAME
+domainname \- set or display name of the current domain
+.SH SYNOPSIS
+.LP
+.nf
+\fBdomainname\fR [\fIname-of-domain\fR]
+.fi
+
+.SH DESCRIPTION
+.LP
+Without an argument, \fBdomainname\fR displays the name of the current domain
+name used in RPC exchanges, usually referred to as the NIS domain name.
+This name typically encompasses a group of \fBhosts\fR or \fBpasswd\fR entries
+under the same administration. The \fBdomainname\fR command is used by various
+components of Solaris to resolve names for entries such as are found in
+\fBpasswd\fR, \fBhosts\fR and \fBaliases\fR. By default, naming services such
+as \fBNIS\fR use \fBdomainname\fR to resolve names.
+.sp
+.LP
+With appropriate privileges (root or an equivalent role [see \fBrbac\fR(7)]),
+you can set the name of the domain by specifying the name as an argument to the
+\fBdomainname\fR command.
+.sp
+.LP
+The domain name for various naming services can also be set by other means. For
+example, \fBypinit\fR can be used to specify a different domain for all
+\fBNIS\fR calls. The domain name of the machine is usually set during boot time
+through the \fBdomainname\fR command by the \fBsvc:/system/identity:domain\fR
+service. If the new domain name is not saved in the \fB/etc/defaultdomain\fR
+file, the machine reverts to the old domain after it reboots.
+.sp
+.LP
+The \fBsendmail\fR(8) daemon, as shipped with Solaris, and the \fBsendmail\fR
+implementation provided by \fBsendmail.org\fR (formerly referred to as
+"Berkeley 8.x sendmail") both attempt to determine a local host's fully
+qualified host name at startup and both pursue follow-up actions if the initial
+search fails. It is in these follow-up actions that the two implementations
+differ.
+.sp
+.LP
+Both implementations use a standard Solaris or Unix system call to determine
+its fully qualified host name at startup, following the name service priorities
+specified in \fBnsswitch.conf\fR(5). To this point, the Solaris and
+\fBsendmail.org\fR versions behave identically.
+.sp
+.LP
+If the request for a fully qualified host name fails, the \fBsendmail.org\fR
+\fBsendmail\fR sleeps for 60 seconds, tries again, and, upon continuing
+failure, resorts to a short name. The Solaris version of \fBsendmail\fR makes
+the same initial request, but then, following initial failure, calls
+\fBdomainname\fR. If successful, the sleep is avoided.
+.sp
+.LP
+On a Solaris machine, if you run the \fBsendmail.org\fR version of sendmail,
+you get the startup behavior (omitting the \fBdomainname\fR call) described
+above. If you run the Solaris \fBsendmail\fR, the \fBdomainname\fR call is made
+if needed.
+.sp
+.LP
+If the Solaris \fBsendmail\fR cannot determine the fully qualified host name,
+use \fBcheck-hostname\fR(8) as a troubleshooting aid. This script can offer
+guidance as to appropriate corrective action.
+.SH FILES
+.ne 2
+.na
+\fB\fB/etc/defaultdomain\fR\fR
+.ad
+.RS 22n
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/nsswitch.conf\fR\fR
+.ad
+.RS 22n
+
+.RE
+
+.SH SEE ALSO
+.LP
+.BR svcs (1),
+.BR aliases (5),
+.BR defaultdomain (5),
+.BR hosts (5),
+.BR nsswitch.conf (5),
+.BR passwd (5),
+.BR attributes (7),
+.BR rbac (7),
+.BR smf (7),
+.BR check-hostname (8),
+.BR hostconfig (8),
+.BR named (8),
+.BR sendmail (8),
+.BR svcadm (8),
+.BR ypinit (8)
+.SH NOTES
+.LP
+The \fBdomainname\fR service is managed by the service management facility,
+\fBsmf\fR(7), under the service identifier:
+.sp
+.in +2
+.nf
+svc:/system/identity:domain
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Administrative actions on this service, such as enabling, disabling, or
+requesting restart, can be performed using \fBsvcadm\fR(8). The service's
+status can be queried using the \fBsvcs\fR(1) command.
diff --git a/usr/src/man/man8/drd.8 b/usr/src/man/man8/drd.8
new file mode 100644
index 0000000000..4c83c34204
--- /dev/null
+++ b/usr/src/man/man8/drd.8
@@ -0,0 +1,76 @@
+'\" te
+.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH DRD 8 "Jul 10, 2006"
+.SH NAME
+drd \- Logical Domain Dynamic Reconfiguration daemon
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/ldoms/drd\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBdrd\fR daemon is part of the framework that enables the addition and
+removal of resources from a Logical Domain. This framework is collectively
+called Dynamic Reconfiguration (DR).
+.sp
+.LP
+\fBdrd\fR is responsible for various aspects of DR on a Logical Domain and must
+be enabled to ensure proper DR functionality. It is started at boot time and
+has no configuration options.
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Unstable
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR svcs (1),
+.BR syslog (3C),
+.BR syslog.conf (5),
+.BR attributes (7),
+.BR smf (7),
+.BR svcadm (8)
+.SH ERRORS
+.sp
+.LP
+\fBdrd\fR uses \fBsyslog\fR(3C) to report status and error messages. All of the
+messages are logged with the \fBLOG_DAEMON\fR facility. Error messages are
+logged with the \fBLOG_ERR\fR and \fBLOG_NOTICE\fR priorities, and
+informational messages are logged with the \fBLOG_INFO\fR priority. The default
+entries in the \fB/etc/syslog.conf\fR file log all the \fBdrd\fR error messages
+to the \fB/var/adm/messages\fR log.
+.SH NOTES
+.sp
+.LP
+The \fBdrd\fR service is managed by the service management facility,
+\fBsmf\fR(7), under the service identifier:
+.sp
+.in +2
+.nf
+svc:/platform/sun4v/drd:default
+.fi
+.in -2
+
+.sp
+.LP
+Administrative actions on this service, such as enabling, disabling, or
+requesting restart, can be performed using \fBsvcadm\fR(8). The service's
+status can be queried using the \fBsvcs\fR(1) command.
diff --git a/usr/src/man/man8/drvconfig.8 b/usr/src/man/man8/drvconfig.8
new file mode 100644
index 0000000000..e77354dab4
--- /dev/null
+++ b/usr/src/man/man8/drvconfig.8
@@ -0,0 +1,175 @@
+'\" te
+.\" Copyright (c) 2002 Sun Microsystems, Inc. All
+.\" Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH DRVCONFIG 8 "Aug 9, 2004"
+.SH NAME
+drvconfig \- apply permission and ownership changes to devices
+.SH SYNOPSIS
+.LP
+.nf
+\fBdrvconfig\fR [\fB-bn\fR] [\fB-a\fR \fIalias_name\fR] [\fB-c\fR \fIclass_name\fR]
+ [\fB-i\fR \fIdrivername\fR] [\fB-m\fR \fImajor_num\fR] [\fB-r\fR \fIroot_dir\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBdevfsadm\fR(8) is now the preferred command and should be used instead of
+\fBdrvconfig\fR.
+.sp
+.LP
+The default operation of \fBdrvconfig\fR is to apply permission and ownership
+changes to devices. Normally, this command is run automatically after a new
+driver has been installed (with \fBadd_drv\fR(8)) and the system has been
+rebooted.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-a\fR\fIalias_name\fR\fR
+.ad
+.RS 16n
+Add the name \fIalias_name\fR to the list of aliases that this driver is known
+by. This option, if used, must be used with the \fB-m\fR \fImajor_num\fR, the
+\fB-b\fR and the \fB-i\fR \fIdrivername\fR options.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-b\fR\fR
+.ad
+.RS 16n
+Add a new major number to name binding into the kernel's internal
+\fBname_to_major\fR tables. This option is not normally used directly, but is
+used by other utilities such as \fBadd_drv\fR(8). Use of the \fB-b\fR option
+requires that \fB-i\fR and \fB-m\fR be used also. No \fB/devices\fR entries are
+created.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-c\fR\fIclass_name\fR\fR
+.ad
+.RS 16n
+The driver being added to the system exports the class \fIclass_name\fR. This
+option is not normally used directly, but is used by other utilities. It is
+only effective when used with the \fB-b\fR option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-i\fR\fIdrivername\fR\fR
+.ad
+.RS 16n
+Only configure the devices for the named driver. The following options are used
+by the implementation of \fBadd_drv\fR(8) and \fBrem_drv\fR(8), and may not
+be supported in future versions of Solaris:
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-m\fR\fImajor_num\fR\fR
+.ad
+.RS 16n
+Specify the major number \fImajor_num\fR for this driver to add to the kernel's
+\fBname_to_major\fR binding tables.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR\fR
+.ad
+.RS 16n
+Do not try to load and attach any drivers, or if the \fB-i\fR option is given,
+do not try to attach the driver named \fIdrivername\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-r\fR\fIroot_dir\fR\fR
+.ad
+.RS 16n
+Perform operations under \fIroot_dir\fR, rather than directly under \fBroot\fR.
+.RE
+
+.SH EXIT STATUS
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 12n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fBnon-zero\fR
+.ad
+.RS 12n
+An error occurred.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/devices\fR\fR
+.ad
+.RS 23n
+Device nodes directory
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/minor_perm\fR\fR
+.ad
+.RS 23n
+Minor mode permissions
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/name_to_major\fR\fR
+.ad
+.RS 23n
+Major number binding
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/driver_classes\fR\fR
+.ad
+.RS 23n
+Driver class binding file
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR sh (1),
+.BR devfs (4FS),
+.BR path_to_inst (5),
+.BR attributes (7),
+.BR add_drv (8),
+.BR modinfo (8),
+.BR modload (8),
+.BR modunload (8),
+.BR rem_drv (8),
+.BR update_drv (8)
diff --git a/usr/src/man/man8/dtrace.8 b/usr/src/man/man8/dtrace.8
new file mode 100644
index 0000000000..57e23462f9
--- /dev/null
+++ b/usr/src/man/man8/dtrace.8
@@ -0,0 +1,770 @@
+'\" te
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH DTRACE 8 "Dec 10, 2017"
+.SH NAME
+dtrace \- DTrace dynamic tracing compiler and tracing utility
+.SH SYNOPSIS
+.LP
+.nf
+\fBdtrace\fR [\fB-32\fR | \fB-64\fR] [\fB-aACeFGHhlqSvVwZ\fR] [\fB-b\fR \fIbufsz\fR] [\fB-c\fR \fIcmd\fR]
+ [\fB-D\fR \fIname\fR [\fI=value\fR]] [\fB-I\fR \fIpath\fR] [\fB-L\fR \fIpath\fR] [\fB-o\fR \fIoutput\fR]
+ [\fB-s\fR \fIscript\fR] [\fB-U\fR \fIname\fR] [\fB-x\fR \fIarg\fR [\fI=val\fR]]
+ [\fB-X\fR a | c | s | t] [\fB-p\fR \fIpid\fR]
+ [\fB-P\fR \fIprovider\fR [[\fIpredicate\fR] \fIaction\fR]]
+ [\fB-m\fR [\fIprovider:\fR] \fImodule\fR [[\fIpredicate\fR] \fIaction\fR]]
+ [\fB-f\fR [[\fIprovider:\fR] \fImodule:\fR] \fIfunction\fR [[\fIpredicate\fR] \fIaction\fR]]
+ [\fB-n\fR [[[\fIprovider:\fR] \fImodule:\fR] \fIfunction:\fR] \fIname\fR [[\fIpredicate\fR] \fIaction\fR]]
+ [\fB-i\fR \fIprobe-id\fR [[\fIpredicate\fR] \fIaction\fR]]
+.fi
+
+.SH DESCRIPTION
+.LP
+DTrace is a comprehensive dynamic tracing framework.
+DTrace provides a powerful infrastructure that permits administrators,
+developers, and service personnel to concisely answer arbitrary questions about
+the behavior of the operating system and user programs.
+.sp
+.LP
+The \fIDynamic Tracing Guide\fR describes how to use DTrace to observe,
+debug, and tune system behavior. Refer to this book for a detailed description
+of DTrace features, including the bundled DTrace observability tools,
+instrumentation providers, and the D programming language.
+.sp
+.LP
+The \fBdtrace\fR command provides a generic interface to the essential services
+provided by the DTrace facility, including:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Options that list the set of probes and providers currently published by DTrace
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Options that enable probes directly using any of the probe description
+specifiers (provider, module, function, name)
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Options that run the D compiler and compile one or more D program files or
+programs written directly on the command line
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Options that generate anonymous tracing programs
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Options that generate program stability reports
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Options that modify DTrace tracing and buffering behavior and enable additional
+D compiler features
+.RE
+.sp
+.LP
+You can use \fBdtrace\fR to create D scripts by using it in a \fB#!\fR
+declaration to create an interpreter file. You can also use \fBdtrace\fR to
+attempt to compile D programs and determine their properties without actually
+enabling tracing using the \fB-e\fR option. See \fBOPTIONS\fR. See the
+\fIDynamic Tracing Guide\fR for detailed examples of how to use the
+\fBdtrace\fR utility to perform these tasks.
+.SH OPTIONS
+.LP
+The arguments accepted by the \fB-P\fR, \fB-m\fR, \fB-f\fR, \fB-n\fR, and
+\fB-i\fR options can include an optional D language \fIpredicate\fR enclosed in
+slashes \fB//\fR and optional D language \fIaction\fR statement list enclosed
+in braces \fB{}\fR. D program code specified on the command line must be
+appropriately quoted to avoid interpretation of meta-characters by the shell.
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-32\fR | \fB-64\fR\fR
+.ad
+.sp .6
+.RS 4n
+The D compiler produces programs using the native data model of the operating
+system kernel. You can use the \fBisainfo\fR \fB-b\fR command to determine the
+current operating system data model. If the \fB-32\fR option is specified,
+\fBdtrace\fR forces the D compiler to compile a D program using the 32-bit data
+model. If the \fB-64\fR option is specified, \fBdtrace\fR forces the D compiler
+to compile a D program using the 64-bit data model. These options are typically
+not required as \fBdtrace\fR selects the native data model as the default. The
+data model affects the sizes of integer types and other language properties. D
+programs compiled for either data model can be executed on both 32-bit and
+64-bit kernels. The \fB-32\fR and \fB-64\fR options also determine the ELF file
+format (ELF32 or ELF64) produced by the \fB-G\fR option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-a\fR\fR
+.ad
+.sp .6
+.RS 4n
+Claim anonymous tracing state and display the traced data. You can combine the
+\fB-a\fR option with the \fB-e\fR option to force \fBdtrace\fR to exit
+immediately after consuming the anonymous tracing state rather than continuing
+to wait for new data. See the \fIDynamic Tracing Guide\fR for more
+information about anonymous tracing.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-A\fR\fR
+.ad
+.sp .6
+.RS 4n
+Generate \fBdriver.conf\fR(5) directives for anonymous tracing. This option
+constructs a set of \fBdtrace\fR(4D) configuration file directives to enable
+the specified probes for anonymous tracing and then exits. By default,
+\fBdtrace\fR attempts to store the directives to the file
+\fB/kernel/drv/dtrace.conf\fR. You can modify this behavior if you use the
+\fB-o\fR option to specify an alternate output file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-b\fR \fIbufsz\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set principal trace buffer size (\fIbufsz\fR). The trace buffer size can
+include any of the size suffixes \fBk\fR, \fBm\fR, \fBg\fR, or \fBt\fR. If the
+buffer space cannot be allocated, \fBdtrace\fR attempts to reduce the buffer
+size or exit depending on the setting of the \fBbufresize\fR property.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-c\fR \fIcmd\fR\fR
+.ad
+.sp .6
+.RS 4n
+Run the specified command \fIcmd\fR and exit upon its completion. If more than
+one \fB-c\fR option is present on the command line, \fBdtrace\fR exits when all
+commands have exited, reporting the exit status for each child process as it
+terminates. The process-ID of the first command is made available to any D
+programs specified on the command line or using the \fB-s\fR option through the
+\fB$target\fR macro variable. Refer to the \fIDynamic Tracing Guide\fR
+for more information on macro variables.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-C\fR\fR
+.ad
+.sp .6
+.RS 4n
+Run the C preprocessor \fBcpp\fR(1) over D programs before compiling them. You
+can pass options to the C preprocessor using the \fB-D\fR, \fB-U\fR, \fB-I\fR,
+and \fB-H\fR options. You can select the degree of C standard conformance if
+you use the \fB-X\fR option. For a description of the set of tokens defined by
+the D compiler when invoking the C preprocessor, see \fB-X\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-D\fR \fIname\fR \fB[=\fR\fIvalue\fR\fB]\fR\fR
+.ad
+.sp .6
+.RS 4n
+Define \fIname\fR when invoking \fBcpp\fR(1) (enabled using the \fB-C\fR
+option). If you specify the equals sign (\fB=\fR) and additional \fIvalue\fR,
+the name is assigned the corresponding value. This option passes the \fB-D\fR
+option to each \fBcpp\fR invocation.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-e\fR\fR
+.ad
+.sp .6
+.RS 4n
+Exit after compiling any requests and consuming anonymous tracing state
+(\fB-a\fR option) but prior to enabling any probes. You can combine this option
+with the \fB-a\fR option to print anonymous tracing data and exit. You can also
+combine this option with D compiler options. This combination verifies that the
+programs compile without actually executing them and enabling the corresponding
+instrumentation.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR\fB[[\fR\fIprovider\fR\fB:]\fR\fImodule\fR\fB:]\fR\fIfunction\fR\fB[
+[\fR\fIpredicate\fR\fB]\fR\fIaction\fR\fB]]\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify function name to trace or list (\fB-l\fR option). The corresponding
+argument can include any of the probe description forms
+\fIprovider:module:function\fR, \fImodule:function\fR, or \fIfunction\fR.
+Unspecified probe description fields are left blank and match any probes
+regardless of the values in those fields. If no qualifiers other than
+\fIfunction\fR are specified in the description, all probes with the
+corresponding \fIfunction\fR are matched. The \fB-f\fR argument can be suffixed
+with an optional D probe clause. You can specify more than one \fB-f\fR option
+on the command line at a time.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-F\fR\fR
+.ad
+.sp .6
+.RS 4n
+Coalesce trace output by identifying function entry and return. Function entry
+probe reports are indented and their output is prefixed with \fB->\fR. Function
+return probe reports are unindented and their output is prefixed with
+\fB<-\fR\&. System call entry probe reports are indented and their output is
+prefixed with \fB=>\fR. System call return probe reports are unindented and
+their output is prefixed with \fB<=\fR\&.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-G\fR\fR
+.ad
+.sp .6
+.RS 4n
+Generate an ELF file containing an embedded DTrace program. The DTrace probes
+specified in the program are saved inside of a relocatable ELF object which can
+be linked into another program. If the \fB-o\fR option is present, the ELF file
+is saved using the pathname specified as the argument for this operand. If the
+\fB-o\fR option is not present and the DTrace program is contained with a file
+whose name is \fB\fIfilename\fR.d\fR, then the ELF file is saved using the name
+\fB\fIfilename\fR.o\fR. Otherwise the ELF file is saved using the name
+\fBd.out\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-H\fR\fR
+.ad
+.sp .6
+.RS 4n
+Print the pathnames of included files when invoking \fBcpp\fR(1) (enabled using
+the \fB-C\fR option). This option passes the \fB-H\fR option to each \fBcpp\fR
+invocation, causing it to display the list of pathnames, one for each line, to
+\fBstderr\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-h\fR\fR
+.ad
+.sp .6
+.RS 4n
+Generate a header file containing macros that correspond to probes in the
+specified provider definitions. This option should be used to generate a header
+file that is included by other source files for later use with the \fB-G\fR
+option. If the \fB-o\fR option is present, the header file is saved using the
+pathname specified as the argument for that option. If the \fB-o\fR option is
+not present and the DTrace program is contained with a file whose name is
+\fIfilename\fR\fB\&.d\fR, then the header file is saved using the name
+\fIfilename\fR\fB\&.h\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-i\fR \fIprobe-id\fR\fB[[\fR\fIpredicate\fR] \fIaction\fR\fB]\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify probe identifier (\fIprobe-id\fR) to trace or list (\fB-l\fR option).
+You can specify probe IDs using decimal integers as shown by \fBdtrace\fR
+\fB-l\fR. The \fB-i\fR argument can be suffixed with an optional D probe
+clause. You can specify more than one \fB-i\fR option at a time.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-I\fR \fIpath\fR\fR
+.ad
+.sp .6
+.RS 4n
+Add the specified directory \fIpath\fR to the search path for \fB#include\fR
+files when invoking \fBcpp\fR(1) (enabled using the \fB-C\fR option). This
+option passes the \fB-I\fR option to each \fBcpp\fR invocation. The specified
+\fIpath\fR is inserted into the search path ahead of the default directory
+list.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-L\fR \fIpath\fR\fR
+.ad
+.sp .6
+.RS 4n
+Add the specified directory \fIpath\fR to the search path for DTrace libraries.
+DTrace libraries are used to contain common definitions that can be used when
+writing D programs. The specified \fIpath\fR is added after the default library
+search path.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR\fR
+.ad
+.sp .6
+.RS 4n
+List probes instead of enabling them. If the \fB-l\fR option is specified,
+\fBdtrace\fR produces a report of the probes matching the descriptions given
+using the \fB-P\fR, \fB-m\fR, \fB-f\fR, \fB-n\fR, \fB-i\fR, and \fB-s\fR
+options. If none of these options are specified, this option lists all probes.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-m\fR [[\fIprovider:\fR] \fImodule:\fR [[\fIpredicate\fR]
+\fIaction\fR]]\fR
+.ad
+.sp .6
+.RS 4n
+Specify module name to trace or list (\fB-l\fR option). The corresponding
+argument can include any of the probe description forms \fIprovider:module\fR
+or \fImodule\fR. Unspecified probe description fields are left blank and match
+any probes regardless of the values in those fields. If no qualifiers other
+than \fImodule\fR are specified in the description, all probes with a
+corresponding \fImodule\fR are matched. The \fB-m\fR argument can be suffixed
+with an optional D probe clause. More than one \fB-m\fR option can be specified
+on the command line at a time.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR [[[\fIprovider:\fR] \fImodule:\fR] \fIfunction:\fR] \fIname\fR
+[[\fIpredicate\fR] \fIaction\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Specify probe name to trace or list (\fB-l\fR option). The corresponding
+argument can include any of the probe description forms
+\fIprovider:module:function:name\fR, \fImodule:function:name\fR,
+\fIfunction:name\fR, or \fIname\fR. Unspecified probe description fields are
+left blank and match any probes regardless of the values in those fields. If no
+qualifiers other than \fIname\fR are specified in the description, all probes
+with a corresponding \fIname\fR are matched. The \fB-n\fR argument can be
+suffixed with an optional D probe clause. More than one \fB-n\fR option can be
+specified on the command line at a time.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-o\fR \fIoutput\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify the \fIoutput\fR file for the \fB-A\fR, \fB-G\fR, \fB-h\fR, and
+\fB-l\fR options, or for the traced data itself. If the \fB-A\fR option is
+present and \fB-o\fR is not present, the default output file is
+\fB/kernel/drv/dtrace.conf\fR. If the \fB-G\fR option is present and the
+\fB-s\fR option's argument is of the form \fB\fIfilename\fR.d\fR and \fB-o\fR
+is not present, the default output file is \fB\fIfilename\fR.o\fR. Otherwise
+the default output file is \fBd.out\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR \fIpid\fR\fR
+.ad
+.sp .6
+.RS 4n
+Grab the specified process-ID \fIpid\fR, cache its symbol tables, and exit upon
+its completion. If more than one \fB-p\fR option is present on the command
+line, \fBdtrace\fR exits when all commands have exited, reporting the exit
+status for each process as it terminates. The first process-ID is made
+available to any D programs specified on the command line or using the \fB-s\fR
+option through the \fB$target\fR macro variable. Refer to the \fIDynamic
+Tracing Guide\fR for more information on macro variables.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-P\fR \fIprovider\fR \fB[[\fR\fIpredicate\fR\fB]\fR \fIaction\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Specify provider name to trace or list (\fB-l\fR option). The remaining probe
+description fields module, function, and name are left blank and match any
+probes regardless of the values in those fields. The \fB-P\fR argument can be
+suffixed with an optional D probe clause. You can specify more than one
+\fB-P\fR option on the command line at a time.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-q\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set quiet mode. \fBdtrace\fR suppresses messages such as the number of probes
+matched by the specified options and D programs and does not print column
+headers, the CPU ID, the probe ID, or insert newlines into the output. Only
+data traced and formatted by D program statements such as \fBtrace()\fR and
+\fBprintf()\fR is displayed to \fBstdout\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR\fR
+.ad
+.sp .6
+.RS 4n
+Compile the specified D program source file. If the \fB-e\fR option is present,
+the program is compiled but instrumentation is not enabled. If the \fB-l\fR
+option is present, the program is compiled and the set of probes matched by it
+is listed, but instrumentation is not enabled. If none of \fB-e\fR, \fB-l\fR,
+\fB-G\fR, or \fB-A\fR are present, the instrumentation specified by the D
+program is enabled and tracing begins.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-S\fR\fR
+.ad
+.sp .6
+.RS 4n
+Show D compiler intermediate code. The D compiler produces a report of the
+intermediate code generated for each D program to \fBstderr\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-U\fR \fIname\fR\fR
+.ad
+.sp .6
+.RS 4n
+Undefine the specified \fIname\fR when invoking \fBcpp\fR(1) (enabled using the
+\fB-C\fR option). This option passes the \fB-U\fR option to each \fBcpp\fR
+invocation.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set verbose mode. If the \fB-v\fR option is specified, \fBdtrace\fR produces a
+program stability report showing the minimum interface stability and dependency
+level for the specified D programs. DTrace stability levels are explained in
+further detail in the \fIDynamic Tracing Guide\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-V\fR\fR
+.ad
+.sp .6
+.RS 4n
+Report the highest D programming interface version supported by \fBdtrace\fR.
+The version information is printed to \fBstdout\fR and the \fBdtrace\fR command
+exits. Refer to the \fIDynamic Tracing Guide\fR for more information
+about DTrace versioning features.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-w\fR\fR
+.ad
+.sp .6
+.RS 4n
+Permit destructive actions in D programs specified using the \fB-s\fR,
+\fB-P\fR, \fB-m\fR, \fB-f\fR, \fB-n\fR, or \fB-i\fR options. If the \fB-w\fR
+option is not specified, \fBdtrace\fR does not permit the compilation or
+enabling of a D program that contains destructive actions.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-x\fR \fIarg\fR [\fI=val\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Enable or modify a DTrace runtime option or D compiler option. The list of
+options is found in the \fIDynamic Tracing Guide\fR. Boolean options
+are enabled by specifying their name. Options with values are set by separating
+the option name and value with an equals sign (\fB=\fR).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-X\fR \fBa | c | s | t\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify the degree of conformance to the ISO C standard that should be selected
+when invoking \fBcpp\fR(1) (enabled using the \fB-C\fR option). The \fB-X\fR
+option argument affects the value and presence of the \fB__STDC__\fR macro
+depending upon the value of the argument letter.
+.sp
+The \fB-X\fR option supports the following arguments:
+.sp
+.ne 2
+.na
+\fB\fBa\fR\fR
+.ad
+.RS 5n
+Default. ISO C plus K&R compatibility extensions, with semantic changes
+required by ISO C. This is the default mode if \fB-X\fR is not specified. The
+predefined macro \fB__STDC__\fR has a value of 0 when \fBcpp\fR is invoked in
+conjunction with the \fB-Xa\fR option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBc\fR\fR
+.ad
+.RS 5n
+Conformance. Strictly conformant ISO C, without K&R C compatibility extensions.
+The predefined macro \fB__STDC__\fR has a value of 1 when \fBcpp\fR is invoked
+in conjunction with the \fB-Xc\fR option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBs\fR\fR
+.ad
+.RS 5n
+K&R C only. The macro \fB__STDC__\fR is not defined when \fBcpp\fR is invoked
+in conjunction with the \fB-Xs\fR option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBt\fR\fR
+.ad
+.RS 5n
+Transition. ISO C plus K&R C compatibility extensions, without semantic changes
+required by ISO C. The predefined macro \fB__STDC__\fR has a value of 0 when
+\fBcpp\fR is invoked in conjunction with the \fB-Xt\fR option.
+.RE
+
+As the \fB-X\fR option only affects how the D compiler invokes the C
+preprocessor, the \fB-Xa\fR and \fB-Xt\fR options are equivalent from the
+perspective of D and both are provided only to ease re-use of settings from a C
+build environment.
+.sp
+Regardless of the \fB-X\fR mode, the following additional C preprocessor
+definitions are always specified and valid in all modes:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fB__sun\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fB__unix\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fB__SVR4\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fB__sparc\fR (on SPARC systems only)
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fB__sparcv9\fR (on SPARC systems only when 64-bit programs are compiled)
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fB__i386\fR (on x86 systems only when 32-bit programs are compiled)
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fB__amd64\fR (on x86 systems only when 64-bit programs are compiled)
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fB__\fI`uname -s`\fR_\fI`uname -r`\fR\fR (for example, \fB__SunOS_5_10\fR)
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fB__SUNW_D=1\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fB__SUNW_D_VERSION=0x\fIMMmmmuuu\fR\fR
+.sp
+Where \fIMM\fR is the major release value in hexadecimal, \fImmm\fR is the
+minor release value in hexadecimal, and \fIuuu\fR is the micro release value in
+hexadecimal. Refer to the \fIDynamic Tracing Guide\fR for more
+information about DTrace versioning.
+.RE
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-Z\fR\fR
+.ad
+.sp .6
+.RS 4n
+Permit probe descriptions that match zero probes. If the \fB-Z\fR option is not
+specified, \fBdtrace\fR reports an error and exits if any probe descriptions
+specified in D program files (\fB-s\fR option) or on the command line
+(\fB-P\fR, \fB-m\fR, \fB-f\fR, \fB-n\fR, or \fB-i\fR options) contain
+descriptions that do not match any known probes.
+.RE
+
+.SH OPERANDS
+.LP
+You can specify zero or more additional arguments on the \fBdtrace\fR command
+line to define a set of macro variables (\fB$1\fR, \fB$2\fR, and so forth). The
+additional arguments can be used in D programs specified using the \fB-s\fR
+option or on the command line. The use of macro variables is described further
+in the \fIDynamic Tracing Guide\fR.
+.SH EXIT STATUS
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB0\fR
+.ad
+.RS 5n
+Successful completion.
+.sp
+For D program requests, an exit status of \fB0\fR indicates that programs were
+successfully compiled, probes were successfully enabled, or anonymous state was
+successfully retrieved. \fBdtrace\fR returns \fB0\fR even if the specified
+tracing requests encountered errors or drops.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB1\fR\fR
+.ad
+.RS 5n
+An error occurred.
+.sp
+For D program requests, an exit status of \fB1\fR indicates that program
+compilation failed or that the specified request could not be satisfied.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB2\fR\fR
+.ad
+.RS 5n
+Invalid command line options or arguments were specified.
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability See below.
+.TE
+
+.sp
+.LP
+The command-line syntax is Committed. The human-readable output is Uncommitted.
+.SH SEE ALSO
+.LP
+.BR cpp (1),
+.BR isainfo (1),
+.BR ssh (1),
+.BR libdtrace (3LIB),
+.BR dtrace (4D),
+.BR driver.conf (5),
+.BR attributes (7)
+.sp
+.LP
+\fIDynamic Tracing Guide\fR:
+.sp
+.LP
+https://illumos.org/books/dtrace/
+
+.SH NOTES
+.LP
+When using the \fB-p\fR flag, \fBdtrace\fR stops the target processes while it
+is inspecting them and reporting results. A process can do nothing while it is
+stopped. This means that, if, for example, the X server is inspected by
+\fBdtrace\fR running in a window under the X server's control, the whole window
+system can become deadlocked, because the \fBproc\fR tool would be attempting
+to display its results to a window that cannot be refreshed. In such a case,
+logging in from another system using \fBssh\fR(1) and killing the offending
+\fBproc\fR tool clears the deadlock.
diff --git a/usr/src/man/man8/dumpadm.8 b/usr/src/man/man8/dumpadm.8
new file mode 100644
index 0000000000..52270045bd
--- /dev/null
+++ b/usr/src/man/man8/dumpadm.8
@@ -0,0 +1,529 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 2015 Nexenta Systems, Inc. All Rights Reserved.
+.\" Copyright (c) 2013 by Delphix. All rights reserved.
+.\" Copyright 2019 Joyent, Inc.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH DUMPADM 8 "Jun 15, 2019"
+.SH NAME
+dumpadm \- configure operating system crash dump
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/dumpadm\fR [\fB-enuy\fR] [\fB-c\fR \fIcontent-type\fR] [\fB-d\fR \fIdump-device\fR]
+ [\fB-k\fR \fIkey-file\fR] [\fB-m\fR \fImin\fRk | \fImin\fRm | \fImin\fR%] [\fB-s\fR \fIsavecore-dir\fR]
+ [\fB-r\fR \fIroot-dir\fR] [\fB-z\fR on | off]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBdumpadm\fR program is an administrative command that manages the
+configuration of the operating system crash dump facility. A crash dump is a
+disk copy of the physical memory of the computer at the time of a fatal system
+error. When a fatal operating system error occurs, a message describing the
+error is printed to the console. The operating system then generates a crash
+dump by writing the contents of physical memory to a predetermined dump device,
+which is typically a local disk partition. The dump device can be configured by
+way of \fBdumpadm\fR. Once the crash dump has been written to the dump device,
+the system will reboot.
+.sp
+.LP
+Fatal operating system errors can be caused by bugs in the operating system,
+its associated device drivers and loadable modules, or by faulty hardware.
+Whatever the cause, the crash dump itself provides invaluable information to
+your support engineer to aid in diagnosing the problem. As such, it is vital
+that the crash dump be retrieved and given to your support provider. Following
+an operating system crash, the \fBsavecore\fR(8) utility is executed
+automatically during boot to retrieve the crash dump from the dump device, and
+write it to the file system. The directory in which the crash
+dump is saved on reboot can also be configured using \fBdumpadm\fR.
+.sp
+.LP
+A crash dump is always compressed on the dump device. The dump is decompressed
+by the \fBsavecore\fR(8) utility, which can optionally store the dump in its
+compressed state, thereby deferring decompression to a subsequent invocation
+of \fBsavecore\fR. This behavior is controlled by the \fB-z\fR option.
+When compression is turned on, the \fBsavecore\fR(8) utility writes one file
+to the file system named \fIvmdump.X\fR. If compression is disabled, it instead
+writes two files named \fIunix.X\fR and \fIvmcore.X\fR. In the uncompressed
+case, both data files form the \fIsaved crash dump\fR. In both cases X is an
+integer identifying the dump.
+.sp
+.LP
+Crash dump encryption may be optionally enabled via the \fB-k\fR option, which
+specifies a file that contains an encryption key. When crash dump encryption
+is enabled, the contents of kernel memory as stored in the dump device will be
+encrypted. Decryption of a kernel crash dump must occur when the dump is
+extracted via \fBsavecore\fR (to which the encryption key must be separately
+provided). Decompression can only occur on a decrypted dump; when dump
+encryption is enabled, \fBsavecore\fR must store the dump in its compressed
+state. Note that \fBsavecore\fR cannot extract an encrypted dump without also
+decrypting it; when dump encryption is enabled, the operator should be sure
+to only operate \fBsavecore\fR on a directory that is separately encrypted
+or otherwise secured. Finally, note that \fBdumpadm\fR does not store the
+crash dump encryption key persistently: upon system reset, crash dump
+encryption is always disabled.
+.sp
+.LP
+For systems with a UFS root file system, the default dump device is configured
+to be an appropriate swap partition. Swap partitions are disk partitions
+reserved as virtual memory backing store for the operating system. Thus, no
+permanent information resides in swap to be overwritten by the dump. See
+\fBswap\fR(8). For systems with a ZFS root file system, dedicated ZFS volumes
+are used for swap and dump areas. For further information about setting up a
+dump area with ZFS, see the \fIZFS Administration Guide\fR. To view the
+current dump configuration, use the \fBdumpadm\fR command with no arguments:
+.sp
+.in +2
+.nf
+example# \fBdumpadm\fR
+
+ Dump content: kernel pages
+ Dump device: /dev/dsk/c0t0d0s1 (swap)
+Savecore directory: /var/crash/saturn
+ Savecore enabled: yes
+ Save compressed: on
+ Dump encrypted: no
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+When no options are specified, \fBdumpadm\fR prints the current crash dump
+configuration. The example shows the set of default values: the dump content is
+set to kernel memory pages only, the dump device is a swap disk partition, the
+directory for \fBsavecore\fR files is set to
+\fB/var/crash/\fR\fIhostname\fR\fB,\fR \fBsavecore\fR is set to run
+automatically on reboot, and compression is turned on.
+.sp
+.LP
+When one or more options are specified, \fBdumpadm\fR verifies that your
+changes are valid, and if so, reconfigures the crash dump parameters and
+displays the resulting configuration. You must be \fBroot\fR to view or change
+dump parameters.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-c\fR \fIcontent-type\fR\fR
+.ad
+.sp .6
+.RS 4n
+Modify the dump configuration so that the crash dump consists of the specified
+dump content. The content should be one of the following:
+.sp
+.ne 2
+.na
+\fB\fBkernel\fR\fR
+.ad
+.sp .6
+.RS 4n
+Kernel memory pages only.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBall\fR\fR
+.ad
+.sp .6
+.RS 4n
+All memory pages.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcurproc\fR\fR
+.ad
+.sp .6
+.RS 4n
+Kernel memory pages, and the memory pages of the process whose thread was
+currently executing on the CPU on which the crash dump was initiated. If the
+thread executing on that CPU is a kernel thread not associated with any user
+process, only kernel pages will be dumped.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-d\fR \fIdump-device\fR\fR
+.ad
+.sp .6
+.RS 4n
+Modify the dump configuration to use the specified dump device. The dump device
+may be one of the following:
+.sp
+.ne 2
+.na
+\fB\fIdump-device\fR\fR
+.ad
+.sp .6
+.RS 4n
+A specific dump device specified as an absolute pathname, such as
+\fB/dev/dsk/\fR\fIcNtNdNsN\fR when the system is running a UFS root file
+system. Or, specify a ZFS volume, such as \fB/dev/zvol/dsk/rpool/dump\fR, when
+the system is running a ZFS root file system.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBswap\fR\fR
+.ad
+.sp .6
+.RS 4n
+If the special token \fBswap\fR is specified as the dump device, \fBdumpadm\fR
+examines the active swap entries and selects the most appropriate entry to
+configure as the dump device. See \fBswap\fR(8). Refer to the \fBNOTES\fR
+below for details of the algorithm used to select an appropriate swap entry.
+When the system is first installed with a UFS root file system, \fBdumpadm\fR
+uses the value for \fBswap\fR to determine the initial dump device setting. A
+given ZFS volume cannot be configured for both the swap area and the dump
+device.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnone\fR\fR
+.ad
+.sp .6
+.RS 4n
+If the special token \fBnone\fR is specified, the active dump device is removed
+and crash dumps are disabled.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-e\fR\fR
+.ad
+.sp .6
+.RS 4n
+Estimates the size of the dump for the current running system.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-k\fR \fIkey-file\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies that the dump should be encrypted based on the key found in
+\fIkey-file\fR. Note that any invocations of \fBsavecore\fR will need to
+specify the same key to be able to correctly retrieve the dump.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-m\fR \fImin\fR\fBk\fR | \fImin\fR\fBm\fR | \fImin\fR\fB%\fR\fR
+.ad
+.sp .6
+.RS 4n
+Create a \fBminfree\fR file in the current savecore directory indicating that
+\fBsavecore\fR should maintain at least the specified amount of free space in
+the file system where the savecore directory is located. The \fBmin\fR argument
+can be one of the following:
+.sp
+.ne 2
+.na
+\fB\fBk\fR\fR
+.ad
+.sp .6
+.RS 4n
+A positive integer suffixed with the unit \fBk\fR specifying kilobytes.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBm\fR\fR
+.ad
+.sp .6
+.RS 4n
+A positive integer suffixed with the unit \fBm\fR specifying megabytes.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB%\fR\fR
+.ad
+.sp .6
+.RS 4n
+A % symbol, indicating that the \fBminfree\fR value should be computed as the
+specified percentage of the total current size of the file system containing
+the savecore directory.
+.RE
+
+The \fBsavecore\fR command will consult the \fBminfree\fR file, if present,
+prior to writing the dump files. If the size of these files would decrease the
+amount of free disk space below the \fBminfree\fR threshold, no dump files are
+written and an error message is logged. The administrator should immediately
+clean up the savecore directory to provide adequate free space, and re-execute
+the \fBsavecore\fR command manually. The administrator can also specify an
+alternate directory on the \fBsavecore\fR command-line.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR\fR
+.ad
+.sp .6
+.RS 4n
+Modify the dump configuration to not run \fBsavecore\fR automatically on
+reboot. This is not the recommended system configuration; if the dump device is
+a swap partition, the dump data will be overwritten as the system begins to
+swap. If \fBsavecore\fR is not executed shortly after boot, crash dump
+retrieval may not be possible.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-r\fR \fIroot-dir\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify an alternate root directory relative to which \fBdumpadm\fR should
+create files. If no \fB-r\fR argument is specified, the default root directory
+\fB/\fR is used.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR \fIsavecore-dir\fR\fR
+.ad
+.sp .6
+.RS 4n
+Modify the dump configuration to use the specified directory to save files
+written by \fBsavecore\fR. The directory should be an absolute path and exist
+on the system. If upon reboot the directory does not exist, it will be created
+prior to the execution of \fBsavecore\fR. See the \fBNOTES\fR section below for
+a discussion of security issues relating to access to the savecore directory.
+The default savecore directory is \fB/var/crash/\fIhostname\fR\fR where
+\fIhostname\fR is the output of the \fB-n\fR option to the \fBuname\fR(1)
+command.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-u\fR\fR
+.ad
+.sp .6
+.RS 4n
+Forcibly update the kernel dump configuration based on the contents of
+\fB/etc/dumpadm.conf\fR. Normally this option is used only on reboot when
+starting \fBsvc:/system/dumpadm:default\fR, when the \fBdumpadm\fR settings
+from the previous boot must be restored. Your dump configuration is saved in
+the configuration file for this purpose. If the configuration file is missing
+or contains invalid values for any dump properties, the default values are
+substituted. Following the update, the configuration file is resynchronized
+with the kernel dump configuration.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-y\fR\fR
+.ad
+.sp .6
+.RS 4n
+Modify the dump configuration to automatically run \fBsavecore\fR on reboot.
+This is the default for this dump setting.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-z on | off\fR\fR
+.ad
+.sp .6
+.RS 4n
+Turns crash dump compression \fBon\fR or \fBoff\fR.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRReconfiguring The Dump Device To A Dedicated Dump Device:
+.sp
+.LP
+The following command reconfigures the dump device to a dedicated dump device:
+
+.sp
+.in +2
+.nf
+example# dumpadm -d /dev/dsk/c0t2d0s2
+
+ Dump content: kernel pages
+ Dump device: /dev/dsk/c0t2d0s2 (dedicated)
+ Savecore directory: /var/crash/saturn
+ Savecore enabled: yes
+ Save compressed: on
+ Dump encrypted: no
+.fi
+.in -2
+.sp
+
+.SH EXIT STATUS
+.sp
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.sp .6
+.RS 4n
+Dump configuration is valid and the specified modifications, if any, were made
+successfully.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB1\fR\fR
+.ad
+.sp .6
+.RS 4n
+A fatal error occurred in either obtaining or modifying the dump configuration.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB2\fR\fR
+.ad
+.sp .6
+.RS 4n
+Invalid command line options were specified.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/dev/dump\fR\fR
+.ad
+.sp .6
+.RS 4n
+Dump device.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/dumpadm.conf\fR\fR
+.ad
+.sp .6
+.RS 4n
+Contains configuration parameters for \fBdumpadm\fR. Modifiable only through
+that command.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIsavecore-directory\fR\fB/minfree\fR\fR
+.ad
+.sp .6
+.RS 4n
+Contains minimum amount of free space for \fIsavecore-directory\fR. See
+\fBsavecore\fR(8).
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR svcs (1),
+.BR uname (1),
+.BR attributes (7),
+.BR smf (7),
+.BR savecore (8),
+.BR svcadm (8),
+.BR swap (8)
+.SH NOTES
+.sp
+.LP
+The system crash dump service is managed by the service management facility,
+\fBsmf\fR(7), under the service identifier:
+.sp
+.in +2
+.nf
+svc:/system/dumpadm:default
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Administrative actions on this service, such as enabling, disabling, or
+requesting restart, can be performed using \fBsvcadm\fR(8). The service's
+status can be queried using the \fBsvcs\fR(1) command.
+.SS "Dump Device Selection"
+.sp
+.LP
+When the special \fBswap\fR token is specified as the argument to \fBdumpadm\fR
+\fB-d\fR the utility will attempt to configure the most appropriate swap device
+as the dump device. \fBdumpadm\fR configures the largest swap block device as
+the dump device; if no block devices are available for swap, the largest swap
+entry is configured as the dump device. If no swap entries are present, or none
+can be configured as the dump device, a warning message will be displayed.
+While local and remote swap files can be configured as the dump device, this is
+not recommended.
+.SS "Dump Device/Swap Device Interaction (UFS File Systems Only)"
+.sp
+.LP
+In the event that the dump device is also a swap device, and the swap device is
+deleted by the administrator using the \fBswap\fR \fB-d\fR command, the
+\fBswap\fR command will automatically invoke \fBdumpadm\fR \fB-d\fR \fBswap\fR
+in order to attempt to configure another appropriate swap device as the dump
+device. If no swap devices remain or none can be configured as the dump device,
+the crash dump will be disabled and a warning message will be displayed.
+Similarly, if the crash dump is disabled and the administrator adds a new swap
+device using the \fBswap\fR \fB-a\fR command, \fBdumpadm\fR \fB-d\fR \fBswap\fR
+will be invoked to re-enable the crash dump using the new swap device.
+.sp
+.LP
+Once \fBdumpadm\fR \fB-d\fR \fBswap\fR has been issued, the new dump device is
+stored in the configuration file for subsequent reboots. If a larger or more
+appropriate swap device is added by the administrator, the dump device is not
+changed; the administrator must re-execute \fBdumpadm\fR \fB-d\fR \fBswap\fR to
+reselect the most appropriate device fom the new list of swap devices.
+.SS "Minimum Free Space"
+.sp
+.LP
+If the \fBdumpadm\fR \fB-m\fR option is used to create a \fBminfree\fR file
+based on a percentage of the total size of the file system containing the
+savecore directory, this value is not automatically recomputed if the file
+system subsequently changes size. In this case, the administrator must
+re-execute \fBdumpadm\fR \fB-m\fR to recompute the \fBminfree\fR value. If no
+such file exists in the savecore directory, \fBsavecore\fR will default to a
+free space threshold of one megabyte. If no free space threshold is desired, a
+minfree file containing size 0 can be created.
+.SS "Security Issues"
+.sp
+.LP
+If, upon reboot, the specified savecore directory is not present, it will be
+created prior to the execution of \fBsavecore\fR with permissions 0700 (read,
+write, execute by owner only) and owner \fBroot\fR. It is recommended that
+alternate savecore directories also be created with similar permissions, as the
+operating system crash dump files themselves may contain secure information.
diff --git a/usr/src/man/man8/editmap.8 b/usr/src/man/man8/editmap.8
new file mode 100644
index 0000000000..03a1473a7d
--- /dev/null
+++ b/usr/src/man/man8/editmap.8
@@ -0,0 +1,211 @@
+'\" te
+.\" Copyright (c) 1983 Eric P. Allman
+.\" Copyright (c) 1988, 1993 The Regents of the University of California. All rights reserved.
+.\" Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 3. All advertising materials mentioning features or use of this software must display
+.\" the following acknowledgement: This product includes software developed by the University of California, Berkeley and its contributors. 4. Neither the name of the University nor the names of its contributors may be used to endorse or promote products derived from this software without specific
+.\" prior written permission. THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR
+.\" CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
+.\" IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+.\" Copyright (c) 1998-2006, 2008 Sendmail, Inc. and its suppliers. All rights reserved.
+.\" The following license terms and conditions apply, unless a different license is obtained from Sendmail, Inc., 6425 Christie Ave, Fourth Floor, Emeryville, CA 94608, USA, or by electronic mail at license@sendmail.com. License Terms: Use, Modification and Redistribution
+.\" (including distribution of any modified or derived work) in source and binary forms is permitted only if each of the following conditions is met: 1. Redistributions qualify as "freeware" or "Open Source Software" under one of the following terms: (a) Redistributions are made at no charge
+.\" beyond the reasonable cost of materials and delivery. (b) Redistributions are accompanied by a copy of the Source Code or by an irrevocable offer to provide a copy of the Source Code for up to three years at the cost of materials and delivery. Such redistributions
+.\" must allow further use, modification, and redistribution of the Source Code under substantially the same terms as this license. For the purposes of redistribution "Source Code" means the complete compilable and linkable source code of sendmail including all modifications.
+.\" 2. Redistributions of source code must retain the copyright notices as they appear in each source code file, these license terms, and the disclaimer/limitation of liability set forth as paragraph 6 below. 3. Redistributions in binary form must reproduce the Copyright Notice, these license
+.\" terms, and the disclaimer/limitation of liability set forth as paragraph 6 below, in the documentation and/or other materials provided with the distribution. For the purposes of binary distribution the "Copyright Notice" refers to the following language: "Copyright (c) 1998-2004 Sendmail,
+.\" Inc. All rights reserved." 4. Neither the name of Sendmail, Inc. nor the University of California nor the names of their contributors may be used to endorse or promote products derived from this software without specific prior written permission. The name "sendmail" is a trademark
+.\" of Sendmail, Inc. 5. All redistributions must comply with the conditions imposed by the University of California on certain embedded code, whose copyright notice and conditions for redistribution are as follows: (a) Copyright (c) 1988, 1993 The Regents of the University of California.
+.\" All rights reserved. (b) Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: (i) Redistributions of source code must retain the above copyright notice, this list of
+.\" conditions and the following disclaimer. (ii) Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
+.\" (iii) Neither the name of the University nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. 6. Disclaimer/Limitation of Liability: THIS SOFTWARE IS PROVIDED BY SENDMAIL,
+.\" INC. AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL SENDMAIL, INC., THE REGENTS OF THE UNIVERSITY OF CALIFORNIA OR CONTRIBUTORS
+.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
+.\" IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
+.\" Portions Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright (c) 2019 Peter Tribble.
+.TH EDITMAP 8 "Jan 21, 2019"
+.SH NAME
+editmap \- query and edit single records in database maps for sendmail
+.SH SYNOPSIS
+.LP
+.nf
+\fBeditmap\fR \fB-C\fR \fIfile\fR [\fB-N\fR] [\fB-f\fR] [\fB-q\fR | \fB-u\fR | \fB-x\fR] \fImaptype\fR \fImapname\fR \fIkey\fR
+ ["\fIvalue\fR"]...
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBeditmap\fR command queries or edits one record in a database maps used
+by the keyed map lookups in \fBsendmail\fR(8). Arguments are passed on the
+command line and output (for queries) is directed to standard output.
+.sp
+.LP
+Depending on how it is compiled, \fBeditmap\fR handles up to three different
+database formats, selected using the \fImaptype\fR parameter. See
+\fBOPERANDS\fR.
+.sp
+.LP
+If the \fBTrustedUser\fR option is set in the \fBsendmail\fR configuration
+file and \fBeditmap\fR is invoked as root, the generated files are owned by the
+specified \fBTrustedUser\fR.
+.SH OPTIONS
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB-C\fR \fIfile\fR
+.ad
+.RS 11n
+Use the specified \fBsendmail\fR configuration file (\fIfile\fR) to look up the
+\fBTrustedUser\fR option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB-f\fR
+.ad
+.RS 11n
+Disable the folding of all upper case letters in the key to lower case.
+Normally, all upper case letters in the key are folded to lower case. This is
+intended to mesh with the \fB-f\fR flag in the \fBK\fR line in
+\fBsendmail.cf\fR. The value is never case folded.
+.RE
+
+.sp
+.ne 2
+.na
+\fB-N\fR
+.ad
+.RS 11n
+Include the null byte that terminates strings in the map (for alias maps).
+.RE
+
+.sp
+.ne 2
+.na
+\fB-q\fR
+.ad
+.RS 11n
+Query the map for the specified key. If found, print value to standard output
+and exit with \fB0\fR. If not found then print an error message to \fBstdout\fR
+and exit with \fBEX_UNAVAILABLE\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB-u\fR
+.ad
+.RS 11n
+Update the record for the specified key with the specified value or inserts a
+new record if one doesn't exist. Exits with \fB0\fR on success or
+\fBEX_IOERR\fR on failure.
+.RE
+
+.sp
+.ne 2
+.na
+\fB-x\fR
+.ad
+.RS 11n
+Delete the specified key from the map. Exits with \fB0\fR on success or
+\fBEX_IOERR\fR on failure.
+.RE
+
+.SH OPERANDS
+.LP
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fIkey\fR
+.ad
+.RS 12n
+The left hand side of a record.
+.sp
+Each record is of the form:
+.sp
+.in +2
+.nf
+\fIkey\fR \fIvalue\fR
+.fi
+.in -2
+.sp
+
+\fIkey\fR and \fIvalue\fR are separated by white space.
+.RE
+
+.sp
+.ne 2
+.na
+\fImapname\fR
+.ad
+.RS 12n
+File name of the database map being created.
+.RE
+
+.sp
+.ne 2
+.na
+\fImaptype\fR
+.ad
+.RS 12n
+Specifies the database format. The following \fImaptype\fR parameters are
+available:
+.sp
+.ne 2
+.na
+\fBdbm\fR
+.ad
+.RS 10n
+Specifies \fBDBM\fR format maps.
+.RE
+
+.sp
+.ne 2
+.na
+\fBbtree\fR
+.ad
+.RS 10n
+Specifies B-Tree format maps.
+.RE
+
+.sp
+.ne 2
+.na
+\fBhash\fR
+.ad
+.RS 10n
+Specifies hash format maps.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fIvalue\fR
+.ad
+.RS 12n
+The right hand side of a record.
+.sp
+Each record is of the form:
+.sp
+.in +2
+.nf
+\fIkey\fR \fIvalue\fR
+.fi
+.in -2
+.sp
+
+\fIkey\fR and \fIvalue\fR are separated by white space.
+.RE
+
+.SH SEE ALSO
+.LP
+.BR attributes (7),
+.BR makemap (8),
+.BR sendmail (8)
diff --git a/usr/src/man/man8/edquota.8 b/usr/src/man/man8/edquota.8
new file mode 100644
index 0000000000..1618b22f06
--- /dev/null
+++ b/usr/src/man/man8/edquota.8
@@ -0,0 +1,138 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 2003 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH EDQUOTA 8 "Feb 14, 2003"
+.SH NAME
+edquota \- edit user quotas for ufs file system
+.SH SYNOPSIS
+.LP
+.nf
+\fBedquota\fR [\fB-p\fR \fIproto_user\fR] \fIusername\fR...
+.fi
+
+.LP
+.nf
+\fBedquota\fR \fB-t\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBedquota\fR is a quota editor. One or more users may be specified on the
+command line. For each user a temporary file is created with an \fBASCII\fR
+representation of the current disk quotas for that user for each mounted ufs
+file system that has a \fBquotas\fR file, and an editor is then invoked on the
+file. The quotas may then be modified, new quotas added, etc. Upon leaving the
+editor, \fBedquota\fR reads the temporary file and modifies the binary quota
+files to reflect the changes made.
+.sp
+.LP
+The editor invoked is \fBvi\fR(1) unless the \fBEDITOR\fR environment variable
+specifies otherwise.
+.sp
+.LP
+Only the super-user may edit quotas. In order for quotas to be established on
+a file system, the root directory of the file system must contain a file, owned
+by root, called \fBquotas\fR. (See \fBquotaon\fR(8).)
+.sp
+.LP
+\fIproto_user\fR and \fIusername\fR can be numeric, corresponding to the
+\fBUID\fR of a user. Unassigned UIDs may be specified; unassigned names may
+not. In this way, default quotas can be established for users who are later
+assigned a UID.
+.sp
+.LP
+If no options are specified, the temporary file created will have one or more
+lines of the format, where a block is considered to be a 1024 byte (1K) block:
+.sp
+.in +2
+.nf
+fs\fI mount_point\fR blocks (soft =\fInumber\fR, \e
+ hard =\fInumber\fR ) inodes (soft =\fInumber\fR, \e
+ hard =\fInumber\fR)
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The \fInumber\fR fields may be modified to reflect desired values.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-p\fR\fR
+.ad
+.RS 6n
+Duplicate the quotas of the \fIproto_user\fR specified for each \fIusername\fR
+specified. This is the normal mechanism used to initialize quotas for groups of
+users.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-t\fR\fR
+.ad
+.RS 6n
+Edit the soft time limits for each file system. If the time limits are zero,
+the default time limits in \fB/usr/include/sys/fs/ufs_quota.h\fR are used. The
+temporary file created will have one or more lines of the form
+.sp
+fs \fImount_point\fR blocks time limit = \fInumber tmunit\fR, files time limit
+= \fInumber tmunit\fR
+.RE
+
+.sp
+.LP
+\fItmunit\fR may be one of ``month'', ``week'', ``day'', ``hour'', ``min'' or
+``sec''; characters appended to these keywords are ignored, so you may write
+``months'' or ``minutes'' if you prefer. The \fInumber\fR and\fI tmunit\fR
+fields may be modified to set desired values. Time limits are printed in the
+greatest possible time unit such that the value is greater than or equal to
+one. If ``default'' is printed after the \fItmunit\fR, this indicates that the
+value shown is zero (the default).
+.SH USAGE
+.sp
+.LP
+See \fBlargefile\fR(7) for the description of the behavior of \fBedquota\fR
+when encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fBquotas\fR\fR
+.ad
+.RS 15n
+quota file at the file system root
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/mnttab\fR\fR
+.ad
+.RS 15n
+table of mounted file systems
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR vi (1),
+.BR quotactl (4I),
+.BR attributes (7),
+.BR largefile (7),
+.BR quota (8),
+.BR quotacheck (8),
+.BR quotaon (8),
+.BR repquota (8)
+.SH NOTES
+.sp
+.LP
+All \fBUID\fRs can be assigned quotas.
diff --git a/usr/src/man/man8/eeprom.8 b/usr/src/man/man8/eeprom.8
new file mode 100644
index 0000000000..5926a86a92
--- /dev/null
+++ b/usr/src/man/man8/eeprom.8
@@ -0,0 +1,1314 @@
+'\" te
+.\" Copyright 2019 Peter Tribble.
+.\" Copyright 2020 Carlos Neira <cneirabustos@gmail.com>.
+.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH EEPROM 8 "Jun 13, 2019"
+.SH NAME
+eeprom \- EEPROM display and load utility
+.SH SYNOPSIS
+.nf
+\fB/usr/sbin/eeprom\fR [\fB-\fR] [\fB-f\fR \fIdevice\fR] [\fIparameter\fR[=\fIvalue\fR]]
+.fi
+
+.SH DESCRIPTION
+\fBeeprom\fR displays or changes the values of parameters in the \fBEEPROM.\fR
+It processes parameters in the order given. When processing a \fIparameter\fR
+accompanied by a \fIvalue\fR, \fBeeprom\fR makes the indicated alteration to
+the \fBEEPROM;\fR otherwise, it displays the \fIparameter\fR's value. When
+given no parameter specifiers, \fBeeprom\fR displays the values of all
+\fBEEPROM\fR parameters. A `\|\(mi\fB\&'\fR (hyphen) flag specifies that
+parameters and values are to be read from the standard input (one
+\fIparameter\fR or \fIparameter\fR\fB=\fR\fIvalue\fR per line).
+.sp
+.LP
+Only the super-user may alter the \fBEEPROM\fR contents.
+.sp
+.LP
+\fBeeprom\fR verifies the \fBEEPROM\fR checksums and complains if they are
+incorrect.
+.sp
+.LP
+\fIplatform-name\fR is the name of the platform implementation and can be found
+using the \fB-i\fR option of \fBuname\fR(1).
+.SS "SPARC"
+\fBSPARC\fR based systems implement firmware password protection with
+\fBeeprom\fR, using the \fBsecurity-mode\fR, \fBsecurity-password\fR and
+\fBsecurity-#badlogins\fR properties.
+.SS "x86"
+\fBEEPROM\fR storage is simulated using a file residing in the
+platform-specific boot area. The \fB/boot/solaris/bootenv.rc\fR file simulates
+\fBEEPROM\fR storage.
+.sp
+.LP
+Because x86 based systems typically implement password protection in the system
+\fBBIOS,\fR there is no support for password protection in the \fBeeprom\fR
+program. While it is possible to set the \fBsecurity-mode\fR,
+\fBsecurity-password\fR and \fBsecurity-#badlogins\fR properties on x86 based
+systems, these properties have no special meaning or behavior on x86 based
+systems.
+.SH OPTIONS
+.ne 2
+.na
+\fB\fB-f\fR \fIdevice\fR\fR
+.ad
+.sp .6
+.RS 4n
+Use \fIdevice\fR as the \fBEEPROM\fR device.
+.RE
+
+.SH OPERANDS
+.SS "x86 Only"
+.ne 2
+.na
+\fB\fIacpi-user-options\fR\fR
+.ad
+.sp .6
+.RS 4n
+A configuration variable that controls the use of Advanced Configuration and
+Power Interface (ACPI), a power management specification. The acceptable values
+for this variable depend on the release of the Solaris operating system you are
+using.
+.sp
+For all releases of Solaris 10 and Solaris 11, a value of of \fB0x0\fR means
+that there will be an attempt to use ACPI if it is available on the system. A
+value of \fB0x2\fR disables the use of ACPI.
+.sp
+For the Solaris 10 1/06 release, a value of \fB0x8\fR means that there will be
+an attempt to use ACPI in a mode compatible with previous releases of Solaris
+10 if it is available on the system. The default for Solaris 10 1/06 is
+\fB0x8\fR.
+.sp
+For releases of Solaris 10 after the 1/06 release and for Solaris 11, the
+default is \fB0x0\fR.
+.sp
+Most users can safely accept the default value, which enables ACPI if
+available. If issues related to the use of ACPI are suspected on releases of
+Solaris after Solaris 1/06, it is suggested to first try a value of \fB0x8\fR
+and then, if you do not obtain satisfactory results, \fB0x02\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIconsole\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the console device.
+Possible values are \fBttya\fR, \fBttyb\fR, \fBttyc\fR, \fBttyd\fR, and
+\fBtext\fR. In \fBtext\fR mode, console output goes to the frame buffer and
+input comes from the keyboard. For SPARC, when this property is not present,
+the console device falls back to the device specified by \fBinput-device\fR and
+\fBoutput-device\fR. When neither the console property or the
+\fBinput-device\fR and \fBoutput-device\fR property pair are present, the
+console defaults to the frame buffer and keyboard.
+.RE
+
+.ne 2
+.na
+\fB\fIos_console\fR\fR
+.ad
+.sp .6
+.RS 4n
+While \fBconsole\fR controls both boot loader and kernel console, setting
+\fBos_console\fR allows setting console device only for kernel. Values
+are the same as for \fBconsole\fR.
+.RE
+
+.ne 2
+.na
+\fB\fIdiag-device\fR\fR
+.ad
+.sp .6
+.RS 4n
+The \fBdiag-device\fR is currently implemented to support serial port
+as output for system early boot diagnostic messages and input and output
+for \fBkmdb\fR debugger. For early boot, all the console messages are mirrored
+to \fBdiag-device\fR, until the console drivers are loaded.
+After that, only \fBkmdb\fR will continue to use the \fBdiag-device\fR.
+.RE
+
+.ne 2
+.na
+\fB\fIsegkpsize\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the amount in \fBbytes\fR of kernel pageable memory available.
+Increasing this variable allows either larger stacks for the same number
+of kernel threads or more kernel threads, by default this value is \fB0x80000000 (2GiB)\fR.
+If the value specified exceeds the size of physical memory it will be automatically capped to
+that.
+
+Valid Ranges: 0xC800000 - 0x200000000(200MiB - 8GiB)
+
+
+.RE
+
+
+.SH NVRAM CONFIGURATION PARAMETERS
+Not all OpenBoot systems support all parameters. Defaults vary depending on the
+system and the \fBPROM\fR revision. See the output in the "Default Value"
+column of the \fBprintenv\fR command, as entered at the \fBok\fR (OpenBoot)
+prompt, to determine the default for your system.
+.sp
+.ne 2
+.na
+\fBauto-boot?\fR
+.ad
+.sp .6
+.RS 4n
+If \fBtrue\fR, boots automatically after power-on or reset. Defaults to
+\fBtrue\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBansi-terminal?\fR
+.ad
+.sp .6
+.RS 4n
+Configuration variable used to control the behavior of the terminal emulator.
+The value \fBfalse\fR makes the terminal emulator stop interpreting \fBANSI\fR
+escape sequences; instead, echoes them to the output device. Defaults to
+\fBtrue\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBboot-args\fR
+.ad
+.sp .6
+.RS 4n
+Holds a string of arguments that are passed to the boot subsystem. For example,
+you can use \fBboot-args=' - install dhcp'\fR to request a customer jumpstart
+installation. See \fBboot\fR(8), \fBkadb\fR(8) and \fBkernel\fR(8).
+.RE
+
+.sp
+.ne 2
+.na
+\fBboot-command\fR
+.ad
+.sp .6
+.RS 4n
+Command executed if \fBauto-boot?\fR is \fBtrue\fR. Defaults to \fBboot\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBboot-device\fR
+.ad
+.sp .6
+.RS 4n
+Device from which to boot. \fIboot-device\fR may contain 0 or more device
+specifiers separated by spaces. Each device specifier may be either a prom
+device alias or a prom device path. The boot prom will attempt to open each
+successive device specifier in the list beginning with the first device
+specifier. The first device specifier that opens successfully will be used as
+the device to boot from. Defaults to \fBdisk net\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBboot-file\fR
+.ad
+.sp .6
+.RS 4n
+File to boot (an empty string lets the secondary booter choose default).
+Defaults to empty string.
+.RE
+
+.sp
+.ne 2
+.na
+\fBboot-from\fR
+.ad
+.sp .6
+.RS 4n
+Boot device and file (OpenBoot PROM version 1.\fIx\fR only). Defaults to
+\fBvmunix\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBboot-from-diag\fR
+.ad
+.sp .6
+.RS 4n
+Diagnostic boot device and file (OpenBoot PROM version 1.\fIx\fR only).
+Defaults to \fBle(\|)unix\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBboot-ncpus\fR
+.ad
+.sp .6
+.RS 4n
+Configuration variable that controls the number of processors with which the
+system should boot. By default, the system boots with maximum supported number
+of processors.
+.RE
+
+.sp
+.ne 2
+.na
+\fBcom\fIX\fR-noprobe\fR
+.ad
+.sp .6
+.RS 4n
+Where \fIX\fR is the number of the serial port, prevents device probe on serial
+port \fIX.\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fBdiag-device\fR
+.ad
+.sp .6
+.RS 4n
+Diagnostic boot source device. Defaults to \fBnet\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBdiag-file\fR
+.ad
+.sp .6
+.RS 4n
+File from which to boot in diagnostic mode. Defaults to empty string.
+.RE
+
+.sp
+.ne 2
+.na
+\fBdiag-level\fR
+.ad
+.sp .6
+.RS 4n
+Diagnostics level. Values include \fBoff\fR, \fBmin\fR, \fBmax\fR and
+\fBmenus\fR. There may be additional platform-specific values. When set to
+\fBoff\fR, \fBPOST\fR is not called. If \fBPOST\fR is called, the value is made
+available as an argument to, and is interpreted by \fBPOST.\fR Defaults to
+\fBplatform-dependent\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBdiag-switch?\fR
+.ad
+.sp .6
+.RS 4n
+If \fBtrue\fR, run in diagnostic mode. Defaults to \fBfalse\fR on most desktop
+systems, \fBtrue\fR on most servers.
+.RE
+
+.sp
+.ne 2
+.na
+\fBerror-reset-recovery\fR
+.ad
+.sp .6
+.RS 4n
+Recover after an error reset trap. Defaults to platform-specific setting.
+.sp
+On platforms supporting this variable, it replaces the \fBwatchdog-reboot?\fR,
+\fBwatchdog-sync?\fR, \fBredmode-reboot?\fR, \fBredmode-sync?\fR,
+\fBsir-sync?\fR, and \fBxir-sync?\fR parameters.
+.sp
+The options are:
+.sp
+.ne 2
+.na
+\fBnone\fR
+.ad
+.sp .6
+.RS 4n
+Print a message describing the reset trap and go to OpenBoot PROM's user
+interface, \fBaka\fR \fBOK\fR prompt.
+.RE
+
+.sp
+.ne 2
+.na
+\fBsync\fR
+.ad
+.sp .6
+.RS 4n
+Invoke OpenBoot PROM's \fBsync\fR word after the reset trap. Some platforms may
+treat this as \fBnone\fR after an externally initiated reset (\fBXIR\fR) trap.
+.RE
+
+.sp
+.ne 2
+.na
+\fBboot\fR
+.ad
+.sp .6
+.RS 4n
+Reboot after the reset trap. Some platforms may treat this as \fBnone\fR after
+an \fBXIR\fR trap.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fBfcode-debug?\fR
+.ad
+.sp .6
+.RS 4n
+If \fBtrue\fR, include name parameter for plug-in device FCodes. Defaults to
+\fBfalse\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBhardware-revision\fR
+.ad
+.sp .6
+.RS 4n
+System version information.
+.RE
+
+.sp
+.ne 2
+.na
+\fBinput-device\fR
+.ad
+.sp .6
+.RS 4n
+Input device used at power-on (usually \fBkeyboard\fR, \fBttya\fR,
+\fBttyb\fR, \fBttyc\fR, or \fBttyd\fR). Defaults to \fBkeyboard\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBkeyboard-click?\fR
+.ad
+.sp .6
+.RS 4n
+If \fBtrue\fR, enable keyboard click. Defaults to \fBfalse\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBkeyboard-layout\fR
+.ad
+.sp .6
+.RS 4n
+A string that specifies the layout name for non-self-identifying keyboards
+(type 7c). Invoke \fBkbd\fR \fB-s\fR to obtain a list of acceptable layout
+names. See \fBkbd\fR(1).
+.RE
+
+.sp
+.ne 2
+.na
+\fBkeymap\fR
+.ad
+.sp .6
+.RS 4n
+Keymap for custom keyboard.
+.RE
+
+.sp
+.ne 2
+.na
+\fBlast-hardware-update\fR
+.ad
+.sp .6
+.RS 4n
+System update information.
+.RE
+
+.sp
+.ne 2
+.na
+\fBload-base\fR
+.ad
+.sp .6
+.RS 4n
+Default load address for client programs. Default value is \fB16384\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBlocal-mac-address?\fR
+.ad
+.sp .6
+.RS 4n
+If true, network drivers use their own MAC address, not the system's. Defaults
+to \fBfalse\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBmfg-mode\fR
+.ad
+.sp .6
+.RS 4n
+Manufacturing mode argument for \fBPOST.\fR Possible values include \fBoff\fR
+or \fBchamber\fR. The value is passed as an argument to \fBPOST.\fR Defaults to
+\fBoff\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBmfg-switch?\fR
+.ad
+.sp .6
+.RS 4n
+If true, repeat system self-tests until interrupted with STOP-A. Defaults to
+\fBfalse\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBnvramrc\fR
+.ad
+.sp .6
+.RS 4n
+Contents of NVRAMRC. Defaults to empty.
+.RE
+
+.sp
+.ne 2
+.na
+\fBnetwork-boot-arguments\fR
+.ad
+.sp .6
+.RS 4n
+Arguments to be used by the PROM for network booting. Defaults to an empty
+string. \fBnetwork-boot-arguments\fR can be used to specify the boot protocol
+(RARP/DHCP) to be used and a range of system knowledge to be used in the
+process.
+.sp
+The syntax for arguments supported for network booting is:
+.sp
+.in +2
+.nf
+[\fIprotocol\fR,] [\fIkey\fR=\fIvalue\fR,]*
+.fi
+.in -2
+.sp
+
+All arguments are optional and can appear in any order. Commas are required
+unless the argument is at the end of the list. If specified, an argument takes
+precedence over any default values, or, if booting using DHCP, over
+configuration information provided by a DHCP server for those parameters.
+.sp
+\fIprotocol\fR, above, specifies the address discovery protocol to be used.
+.sp
+Configuration parameters, listed below, are specified as \fIkey\fR=\fIvalue\fR
+attribute pairs.
+.sp
+.ne 2
+.na
+\fB\fBtftp-server\fR\fR
+.ad
+.sp .6
+.RS 4n
+IP address of the TFTP server
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfile\fR\fR
+.ad
+.sp .6
+.RS 4n
+file to download using TFTP or URL for WAN boot
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBhost-ip\fR\fR
+.ad
+.sp .6
+.RS 4n
+IP address of the client (in dotted-decimal notation)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrouter-ip\fR\fR
+.ad
+.sp .6
+.RS 4n
+IP address of the default router (in dotted-decimal notation)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsubnet-mask\fR\fR
+.ad
+.sp .6
+.RS 4n
+subnet mask (in dotted-decimal notation)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBclient-id\fR\fR
+.ad
+.sp .6
+.RS 4n
+DHCP client identifier
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBhostname\fR\fR
+.ad
+.sp .6
+.RS 4n
+hostname to use in DHCP transactions
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBhttp-proxy\fR\fR
+.ad
+.sp .6
+.RS 4n
+HTTP proxy server specification (IPADDR[:PORT])
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBtftp-retries\fR\fR
+.ad
+.sp .6
+.RS 4n
+maximum number of TFTP retries
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdhcp-retries\fR\fR
+.ad
+.sp .6
+.RS 4n
+maximum number of DHCP retries
+.RE
+
+If no parameters are specified (that is, \fBnetwork-boot-arguments\fR is an
+empty string), the PROM will use the platform-specific default address
+discovery protocol.
+.sp
+Absence of the protocol parameter when other configuration parameters are
+specified implies manual configuration.
+.sp
+Manual configuration requires that the client be provided with all the
+information necessary for boot. If using manual configuration, information
+required by the PROM to load the second-stage boot program must be provided in
+\fBnetwork-boot-arguments\fR while information required for the second-stage
+boot program can be specified either as arguments to the \fBboot\fR program or
+by means of the \fBboot\fR program's interactive command interpreter.
+.sp
+Information required by the PROM when using manual configuration includes the
+booting client's IP address, name of the boot file, and the address of the
+server providing the boot file image. Depending on network configuration, it
+might be required that the subnet mask and address of the default router to use
+also be specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fBoem-banner\fR
+.ad
+.sp .6
+.RS 4n
+Custom OEM banner (enabled by setting \fBoem-banner?\fR to \fBtrue\fR).
+Defaults to empty string.
+.RE
+
+.sp
+.ne 2
+.na
+\fBoem-banner?\fR
+.ad
+.sp .6
+.RS 4n
+If \fBtrue\fR, use custom \fBOEM\fR banner. Defaults to \fBfalse\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBoem-logo\fR
+.ad
+.sp .6
+.RS 4n
+Byte array custom OEM logo (enabled by setting \fBoem-logo?\fR to \fBtrue\fR).
+Displayed in hexadecimal.
+.RE
+
+.sp
+.ne 2
+.na
+\fBoem-logo?\fR
+.ad
+.sp .6
+.RS 4n
+If \fBtrue\fR, use custom OEM logo (else, use Sun logo). Defaults to
+\fBfalse\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBpci-mem64?\fR
+.ad
+.sp .6
+.RS 4n
+If true, the OpenBoot PROM allocates 64-bit PCI memory addresses to a PCI
+device that can support 64-bit addresses.
+.sp
+This variable is available on SPARC platforms only and is optional. Some
+versions of SunOS do not support PCI \fBMEM64\fR addresses and will fail in
+unexpected ways if the OpenBoot PROM allocates PCI \fBMEM64\fR addresses.
+.sp
+The default value is system-dependent. If the variable exists, the default
+value is appropriate to the lowest version of the SunOS that shipped with a
+specific platform.
+.RE
+
+.sp
+.ne 2
+.na
+\fBoutput-device\fR
+.ad
+.sp .6
+.RS 4n
+Output device used at power-on (usually \fBscreen\fR, \fBttya\fR,
+\fBttyb\fR, \fBttyc\fR, or \fBttyd\fR). Defaults to \fBscreen\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBrootpath\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the root device of the operating system.
+.RE
+
+.sp
+.ne 2
+.na
+\fBsbus-probe-list\fR
+.ad
+.sp .6
+.RS 4n
+Designate which SBus slots are probed and in what order. Defaults to
+\fB0123\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBscreen-#columns\fR
+.ad
+.sp .6
+.RS 4n
+Number of on-screen columns (characters/line). Defaults to \fB80\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBscreen-#rows\fR
+.ad
+.sp .6
+.RS 4n
+Number of on-screen rows (lines). Defaults to \fB34\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBscsi-initiator-id\fR
+.ad
+.sp .6
+.RS 4n
+\fBSCSI\fR bus address of host adapter, range 0-7. Defaults to \fB7\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBsd-targets\fR
+.ad
+.sp .6
+.RS 4n
+Map \fBSCSI\fR disk units (OpenBoot PROM version 1.\fIx\fR only). Defaults to
+\fB31204567\fR, which means that unit 0 maps to target \fB3\fR, unit 1 maps to
+target \fB1\fR, and so on.
+.RE
+
+.sp
+.ne 2
+.na
+\fBsecurity-#badlogins\fR
+.ad
+.sp .6
+.RS 4n
+Number of incorrect security password attempts.This property has no special
+meaning or behavior on x86 based systems.
+.RE
+
+.sp
+.ne 2
+.na
+\fBsecurity-mode\fR
+.ad
+.sp .6
+.RS 4n
+Firmware security level (options: \fBnone\fR, \fBcommand\fR, or \fBfull\fR). If
+set to \fBcommand\fR or \fBfull\fR, system will prompt for \fBPROM\fR security
+password. Defaults to \fBnone\fR.This property has no special meaning or
+behavior on x86 based systems.
+.RE
+
+.sp
+.ne 2
+.na
+\fBsecurity-password\fR
+.ad
+.sp .6
+.RS 4n
+Firmware security password (never displayed). Can be set only when
+\fBsecurity-mode\fR is set to \fBcommand\fR or \fBfull\fR.This property has no
+special meaning or behavior on x86 based systems.
+.sp
+.in +2
+.nf
+example# eeprom security-password=
+Changing PROM password:
+New password:
+Retype new password:
+.fi
+.in -2
+.sp
+
+.RE
+
+.sp
+.ne 2
+.na
+\fBselftest-#megs\fR
+.ad
+.sp .6
+.RS 4n
+Megabytes of \fBRAM\fR to test. Ignored if \fBdiag-switch?\fR is \fBtrue\fR.
+Defaults to \fB1\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBskip-vme-loopback?\fR
+.ad
+.sp .6
+.RS 4n
+If \fBtrue\fR, POST does not do VMEbus loopback tests. Defaults to \fBfalse\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBst-targets\fR
+.ad
+.sp .6
+.RS 4n
+Map \fBSCSI\fR tape units (OpenBoot PROM version 1.\fIx\fR only). Defaults to
+\fB45670123\fR, which means that unit 0 maps to target \fB4\fR, unit 1 maps to
+target \fB5\fR, and so on.
+.RE
+
+.sp
+.ne 2
+.na
+\fBsunmon-compat?\fR
+.ad
+.sp .6
+.RS 4n
+If \fBtrue\fR, display Restricted Monitor prompt (\|>). Defaults to
+\fBfalse\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBtestarea\fR
+.ad
+.sp .6
+.RS 4n
+One-byte scratch field, available for read/write test. Defaults to \fB0\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBtpe-link-test?\fR
+.ad
+.sp .6
+.RS 4n
+Enable 10baseT link test for built-in twisted pair Ethernet. Defaults to
+\fBtrue\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBttya-mode\fR
+.ad
+.sp .6
+.RS 4n
+\fBTTYA\fR (baud rate, #bits, parity, #stop, handshake). Defaults to
+\fB9600,8,n,1,\(mi\fR.
+.sp
+Fields, in left-to-right order, are:
+.sp
+.ne 2
+.na
+\fBBaud rate:\fR
+.ad
+.sp .6
+.RS 4n
+110, 300, 1200, 4800, 9600\|.\|.\|.
+.RE
+
+.sp
+.ne 2
+.na
+\fBData bits:\fR
+.ad
+.sp .6
+.RS 4n
+5, 6, 7, 8
+.RE
+
+.sp
+.ne 2
+.na
+\fBParity:\fR
+.ad
+.sp .6
+.RS 4n
+n(none), e(even), o(odd), m(mark), s(space)
+.RE
+
+.sp
+.ne 2
+.na
+\fBStop bits:\fR
+.ad
+.sp .6
+.RS 4n
+1, 1.5, 2
+.RE
+
+.sp
+.ne 2
+.na
+\fBHandshake:\fR
+.ad
+.sp .6
+.RS 4n
+\(mi(none), h(hardware:rts/cts), s(software:xon/xoff)
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fBtty\fIX\fR-mode\fR
+.ad
+.sp .6
+.RS 4n
+\fBTTYB, TTYC, or TTYD\fR (baud rate, #bits, parity, #stop, handshake). Defaults to
+\fB9600,8,n,1,\(mi\fR.
+.sp
+Fields, in left-to-right order, are:
+.sp
+.ne 2
+.na
+\fBBaud rate:\fR
+.ad
+.sp .6
+.RS 4n
+110, 300, 1200, 4800, 9600\|.\|.\|.
+.RE
+
+.sp
+.ne 2
+.na
+\fBData bits:\fR
+.ad
+.sp .6
+.RS 4n
+5, 6, 7, 8
+.RE
+
+.sp
+.ne 2
+.na
+\fBStop bits:\fR
+.ad
+.sp .6
+.RS 4n
+1, 1.5, 2
+.RE
+
+.sp
+.ne 2
+.na
+\fBParity:\fR
+.ad
+.sp .6
+.RS 4n
+n(none), e(even), o(odd), m(mark), s(space)
+.RE
+
+.sp
+.ne 2
+.na
+\fBHandshake:\fR
+.ad
+.sp .6
+.RS 4n
+\(mi(none), h(hardware:rts/cts), s(software:xon/xoff)
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fBttya-ignore-cd\fR
+.ad
+.sp .6
+.RS 4n
+If \fBtrue\fR, operating system ignores carrier-detect on TTYA. Defaults to
+\fBtrue\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBtty\fIX\fR-ignore-cd\fR
+.ad
+.sp .6
+.RS 4n
+If \fBtrue\fR, operating system ignores carrier-detect on TTYB, TTYC, or TTYD.
+Defaults to \fBtrue\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBttya-rts-dtr-off\fR
+.ad
+.sp .6
+.RS 4n
+If \fBtrue\fR, operating system does not assert DTR and RTS on TTYA. Defaults
+to \fBfalse\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBtty\fIX\fR-rts-dtr-off\fR
+.ad
+.sp .6
+.RS 4n
+If \fBtrue\fR, operating system does not assert DTR and RTS on TTYB, TTYC,
+or TTYD. Defaults to \fBfalse\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBuse-nvramrc?\fR
+.ad
+.sp .6
+.RS 4n
+If \fBtrue\fR, execute commands in \fBNVRAMRC\fR during system start-up.
+Defaults to \fBfalse\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBverbosity\fR
+.ad
+.sp .6
+.RS 4n
+Controls the level of verbosity of PROM messages. Can be one of \fBdebug\fR,
+\fBmax\fR, \fBnormal\fR, \fBmin\fR, or \fBnone\fR. Defaults to \fBnormal\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBversion2?\fR
+.ad
+.sp .6
+.RS 4n
+If \fBtrue\fR, hybrid (1.\fIx\fR/2.\fIx\fR) PROM comes up in version 2.\fIx\fR.
+Defaults to \fBtrue\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBwatchdog-reboot?\fR
+.ad
+.sp .6
+.RS 4n
+If \fBtrue\fR, reboot after watchdog reset. Defaults to \fBfalse\fR.
+.RE
+
+.SH EXAMPLES
+\fBExample 1 \fRChanging the Number of Megabytes of RAM.
+.sp
+.LP
+The following example demonstrates the method for changing from one to two the
+number of megabytes of \fBRAM\fR that the system will test.
+
+.sp
+.in +2
+.nf
+example# \fBeeprom selftest-#megs\fR
+selftest-#megs=1
+
+example# eeprom selftest-#megs=2
+
+example# \fBeeprom selftest-#megs\fR
+selftest-#megs=2
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRSetting the \fBauto-boot?\fR Parameter to \fBtrue\fR.
+.sp
+.LP
+The following example demonstrates the method for setting the \fBauto-boot?\fR
+parameter to \fBtrue\fR.
+
+.sp
+.in +2
+.nf
+example# \fBeeprom auto-boot?=true\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+When the \fBeeprom\fR command is executed in user mode, the parameters with a
+trailing question mark (?) need to be enclosed in double quotation marks (" ")
+to prevent the shell from interpreting the question mark. Preceding the
+question mark with an escape character (\fB\e\fR) will also prevent the shell
+from interpreting the question mark.
+
+.sp
+.in +2
+.nf
+\fBexample% eeprom "auto-boot?"=true\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRUsing \fBnetwork-boot-arguments\fR
+.sp
+.LP
+To use DHCP as the boot protocol and a hostname of \fBabcd.example.com\fR for
+network booting, set these values in \fBnetwork-boot-arguments\fR as:
+
+.sp
+.in +2
+.nf
+example# \fBeeprom network-boot-arguments="dhcp,hostname=abcd.example.com"\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+\&...then boot using the command:
+
+.sp
+.in +2
+.nf
+ok \fBboot net\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Note that network boot arguments specified from the PROM command line cause the
+contents of \fBnetwork-boot-arguments\fR to be ignored. For example, with
+\fBnetwork-boot-arguments\fR set as shown above, the \fBboot\fR command:
+
+.sp
+.in +2
+.nf
+ok \fBboot net:dhcp\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+\&...causes DHCP to be used, but the \fBhostname\fR specified in
+\fBnetwork-boot-arguments\fR will not be used during network boot.
+
+.LP
+\fBExample 4 \fRSetting System Console to Auxiliary Device
+.sp
+.LP
+The command below assigns the device \fB/dev/term/a\fR as the system console
+device. You would make such an assignment prior to using \fBtip\fR(1) to
+establish a \fBtip\fR connection to a host.
+
+.sp
+.LP
+On a SPARC machine:
+
+.sp
+.in +2
+.nf
+# \fBeeprom output-device=/dev/term/a\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+On an x86 machine:
+
+.sp
+.in +2
+.nf
+# \fBeeprom console=ttya\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+On a SPARC machine, the preceding command would be sufficient for assigning the
+console to an auxiliary device. For an x86 machine, you might, in addition,
+need to set the characteristics of the serial line, for which you would have to
+consult the BIOS documentation for that machine. Also, on some x86 machines,
+you might use a device other than device \fBa\fR, as shown above. For example,
+you could set console to \fBttyb\fR if the second serial port is present.
+
+\fBExample 5 \fRChanging segkpsize.
+.sp
+.LP
+The following example demonstrates the method for changing the
+number of bytes that will be used for kernel pageable memory.
+Running the following command will set segkpsize to 3GiB.
+.sp
+.in +2
+.nf
+# \fBeeprom segkpsize=0xC0000000\fR
+
+.fi
+.in -2
+.sp
+
+
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/boot/solaris/bootenv.rc\fR\fR
+.ad
+.sp .6
+.RS 4n
+File storing \fBeeprom\fR values on x86 machines.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/openprom\fR\fR
+.ad
+.sp .6
+.RS 4n
+Device file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/platform/\fR\fIplatform-name\fR\fB/sbin/eeprom\fR\fR
+.ad
+.sp .6
+.RS 4n
+Platform-specific version of \fBeeprom\fR. Use \fBuname\fR \fB-i\fR to obtain
+\fIplatform-name\fR.
+.RE
+
+
+.SH SEE ALSO
+.BR passwd (1),
+.BR sh (1),
+.BR svcs (1),
+.BR tip (1),
+.BR uname (1),
+.BR attributes (7),
+.BR smf (7),
+.BR boot (8),
+.BR init (8),
+.BR kadb (8),
+.BR kernel (8),
+.BR svcadm (8)
+.sp
+.LP
+\fIOpenBoot 3.x Command Reference Manual\fR
+.sp
+.LP
+\fI\fR
diff --git a/usr/src/man/man8/efdaemon.8 b/usr/src/man/man8/efdaemon.8
new file mode 100644
index 0000000000..70d14dab98
--- /dev/null
+++ b/usr/src/man/man8/efdaemon.8
@@ -0,0 +1,108 @@
+'\" te
+.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH EFDAEMON 8 "Aug 10, 2004"
+.SH NAME
+efdaemon \- embedded FCode interpreter daemon
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/efcode/sparcv9/efdaemon\fR [\fB-d\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBefdaemon\fR, the embedded \fBFCode\fR interpreter daemon, invokes the
+embedded \fBFCode\fR interpreter when the daemon receives an interpretation
+request. A new session of the interpreter is started for each unique request by
+invoking the script \fB/usr/lib/efcode/efcode\fR.
+.sp
+.LP
+\fBefdaemon\fR is used on selected platforms as part of the processing of some
+dynamic reconfiguration events.
+.SH OPTIONS
+.sp
+.LP
+The following option is supported:
+.sp
+.ne 2
+.na
+\fB\fB-d\fR\fR
+.ad
+.RS 6n
+Set debug output. Log debug messages as \fBLOG_DEBUG\fR level messages by using
+\fBsyslog()\fR. See \fBsyslog\fR(3C).
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/dev/fcode\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBFCode\fR interpreter pseudo device, which is a portal for receipt of
+\fBFCode\fR interpretation requests
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/efcode/efcode\fR\fR
+.ad
+.sp .6
+.RS 4n
+Shell script that invokes the embedded \fBFCode\fR interpreter
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/efcode/interpreter\fR\fR
+.ad
+.sp .6
+.RS 4n
+Embedded \fBFCode\fR interpreter
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/efcode/sparcv9/interpreter\fR\fR
+.ad
+.sp .6
+.RS 4n
+Embedded \fBFCode\fR interpreter
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR svcs (1),
+.BR syslog (3C),
+.BR attributes (7),
+.BR smf (7),
+.BR prtconf (8),
+.BR svcadm (8)
+.SH NOTES
+.sp
+.LP
+The \fBefdaemon\fR service is managed by the service management facility,
+\fBsmf\fR(7), under the service identifier:
+.sp
+.in +2
+.nf
+svc:/platform/sun4u/efdaemon:default
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Administrative actions on this service, such as enabling, disabling, or
+requesting restart, can be performed using \fBsvcadm\fR(8). The service's
+status can be queried using the \fBsvcs\fR(1) command.
diff --git a/usr/src/man/man8/embedded_su.8 b/usr/src/man/man8/embedded_su.8
new file mode 100644
index 0000000000..2f9e098b7e
--- /dev/null
+++ b/usr/src/man/man8/embedded_su.8
@@ -0,0 +1,329 @@
+'\" te
+.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH EMBEDDED_SU 8 "Feb 10, 2005"
+.SH NAME
+embedded_su \- allow an application to prompt for credentials and execute
+commands as the super user or another user
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/embedded_su\fR [\fB-\fR] [\fIusername\fR [arg...]]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBembedded_su\fR command allows an application to prompt the user for
+security credentials and then use those credentials to execute a program as
+another user or role (see \fBrbac\fR(7) for information on role-based access
+control). The default \fIusername\fR is \fBroot\fR (super user).
+.sp
+.LP
+\fBembedded_su\fR is identical to \fBsu\fR(8), except that the user
+interaction is packaged in a form suitable for another program to interpret and
+display. Typically, \fBembedded_su\fR would be used to allow a graphical
+program to prompt for the super user password and execute a command as the
+super user, without requiring that the requesting program be run as the super
+user.
+.SS "PROTOCOL"
+.sp
+.LP
+\fBembedded_su\fR implements a simple protocol over standard input, standard
+output, and standard error. This protocol consists of three phases, roughly
+corresponding to \fBPAM\fR initialization, the \fBPAM\fR dialog, and \fBPAM\fR
+completion.
+.SS "Phase 1: Initialization"
+.sp
+.LP
+After starting \fBembedded_su\fR, the application must send an initialization
+block on \fBembedded_su\fR's standard input. This block is a text block, as
+described under "Text Blocks". There are currently no initialization parameters
+defined; the application should send an empty block by sending a line
+consisting solely of a period (.).
+.SS "Phase 2: Conversation"
+.sp
+.LP
+\fBembedded_su\fR then emits zero or more conversation blocks on its standard
+output. Each conversation block may require zero or more responses.
+.sp
+.LP
+A conversation block starts with a line consisting of the word \fBCONV\fR,
+followed by whitespace, followed by the number of messages in the conversation
+block as a decimal integer. The number of messages may be followed by
+whitespace and additional data. This data, if present, must be ignored.
+.sp
+.LP
+Each message consists of a line containing a header followed by a text block,
+as described under "Text Blocks". A single newline is appended to each message,
+allowing the message to end with a line that does not end with a newline.
+.sp
+.LP
+A message header line consists of a \fBPAM\fR message style name, as described
+in \fBpam_start\fR(3PAM). The message header values are:
+.sp
+.ne 2
+.na
+\fB\fBPAM_PROMPT_ECHO_OFF\fR\fR
+.ad
+.RS 23n
+The application is to prompt the user for a value, with echoing disabled.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_PROMPT_ECHO_ON\fR\fR
+.ad
+.RS 23n
+The application is to prompt the user for a value, with echoing enabled.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_ERROR_MSG\fR\fR
+.ad
+.RS 23n
+The application is to display the message in a form appropriate for displaying
+an error.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPAM_TEXT_INFO\fR\fR
+.ad
+.RS 23n
+The application is to display the message in a form appropriate for general
+information.
+.RE
+
+.sp
+.LP
+The \fBPAM\fR message style may be followed by whitespace and additional data.
+This data, if present, must be ignored.
+.sp
+.LP
+After writing all of the messages in the conversation block, if any of them
+were \fBPAM_PROMPT_ECHO_OFF\fR or \fBPAM_PROMPT_ECHO_ON\fR, \fBembedded_su\fR
+waits for the response values. It expects the response values one per line, in
+the order the messages were given.
+.SS "Phase 3: Completion"
+.sp
+.LP
+After zero or more conversation blocks, \fBembedded_su\fR emits a result block
+instead of a conversation block.
+.sp
+.LP
+Upon success, \fBembedded_su\fR emits a single line containing the word
+"\fBSUCCESS\fR". The word \fBSUCCESS\fR may be followed by whitespace and
+additional data. This data, if present, must be ignored.
+.sp
+.LP
+Upon failure, \fBembedded_su\fR emits a single line containing the word
+"\fBERROR\fR", followed by a text block as described under "Text Bocks". The
+text block gives an error message. The word \fBERROR\fR may be followed by
+whitespace and additional data. This data, if present, must be ignored.
+.SS "Text Blocks"
+.sp
+.LP
+Initialization blocks, message blocks, and error blocks are all text blocks.
+These are blocks of text that are terminated by a line containing a single
+period (.). Lines in the block that begin with a "." have an extra "."
+prepended to them.
+.SS "Internationalization"
+.sp
+.LP
+All messages are localized to the current locale; no further localization is
+required.
+.SS "SECURITY"
+.sp
+.LP
+\fBembedded_su\fR uses \fBpam\fR(3PAM) for authentication, account management,
+and session management. Its primary function is to export the \fBPAM\fR
+conversation mechanism to an unprivileged program. Like \fBsu\fR(8), the
+\fBPAM\fR configuration policy can be used to control \fBembedded_su\fR. The
+\fBPAM\fR service name used is "embedded_su".
+.sp
+.LP
+\fBembedded_su\fR is almost exactly equivalent to \fBsu\fR(8) for security
+purposes. The only exception is that it is slightly easier to use
+\fBembedded_su\fR in writing a malicious program that might trick a user into
+providing secret data. For those sites needing maximum security, potentially at
+the expense of application functionality, the EXAMPLES section shows how to
+disable \fBembedded_su\fR.
+.SH EXAMPLES
+.sp
+.LP
+In the following examples, left angle brackets (<<<) indicate a line written by
+\fBembedded_su\fR and read by the invoking application. Right angle brackets
+(>>>) indicate a line written by the application and read by \fBembedded_su\fR.
+.LP
+\fBExample 1 \fRExecuting a command with the Correct Password
+.sp
+.LP
+The following example shows an attempt to execute "somecommand" as "someuser",
+with the correct password supplied:
+
+.sp
+.in +2
+.nf
+ /usr/lib/embedded_su someuser -c somecommand
+ >>>.
+ <<<CONV 1
+ <<<PAM_PROMPT_ECHO_OFF
+ <<<Password:
+ <<<.
+ >>>[ correct password ]
+ <<<SUCCESS
+ [ somecommand executes ]
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRExecuting a command with the Incorrect Password
+.sp
+.LP
+The following example shows an attempt to execute "somecommand" as "someuser",
+with the incorrect password supplied:
+
+.sp
+.in +2
+.nf
+ /usr/lib/embedded_su someuser -c somecommand
+ >>>.
+ <<<CONV 1
+ <<<PAM_PROMPT_ECHO_OFF
+ <<<Password:
+ <<<.
+ >>>[ incorrect password ]
+ [ delay ]
+ <<<ERROR
+ <<<embedded_su:Sorry
+ <<<.
+ [ exit ]
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRMessage Examples
+.sp
+.LP
+A \fBpam_message\fR structure with \fImsg_style\fR equal to \fBPAM_TEXT_INFO\fR
+and \fBmsg\fR equal to "foo" produces:
+
+.sp
+.in +2
+.nf
+PAM_TEXT_INFO
+foo
+\&.
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+A \fBpam_message\fR structure with \fImsg_style\fR equal to
+\fBPAM_ERROR_MESSAGE\fR and \fBmsg\fR equal to "bar\en" produces:
+
+.sp
+.in +2
+.nf
+PAM_ERROR_MESSAGE
+bar
+[ blank line ]
+\&.
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+A \fBpam_message\fR structure with \fImsg_style\fR equal to
+\fBPAM_ERROR_MESSAGE\fR and \fBmsg\fR equal to "aaa\enbbb" produces:
+
+.sp
+.in +2
+.nf
+PAM_ERROR_MESSAGE
+aaa
+bbb
+\&.
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+A \fBpam_message\fR structure with \fImsg_style\fR equal to \fBPAM_TEXT_INFO\fR
+and \fBmsg\fR equal to "" produces:
+
+.sp
+.in +2
+.nf
+PAM_TEXT_INFO
+[ blank line ]
+\&.
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+A \fBpam_message\fR structure with \fImsg_style\fR equal to \fBPAM_TEXT_INFO\fR
+and \fBmsg\fR equal to NULL produces:
+
+.sp
+.in +2
+.nf
+PAM_TEXT_INFO
+\&.
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 4 \fRDisabling embedded_su
+.sp
+.LP
+To disable \fBembedded_su\fR, add a line to the \fB/etc/pam.conf\fR file
+similar to:
+
+.sp
+.in +2
+.nf
+embedded_su auth requisite pam_deny.so.1
+.fi
+.in -2
+.sp
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Stable
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR pam (3PAM),
+.BR pam_start (3PAM),
+.BR attributes (7),
+.BR rbac (7),
+.BR su (8)
diff --git a/usr/src/man/man8/etrn.8 b/usr/src/man/man8/etrn.8
new file mode 100644
index 0000000000..e4f2b3a750
--- /dev/null
+++ b/usr/src/man/man8/etrn.8
@@ -0,0 +1,184 @@
+'\" te
+.\" Copyright (c) 2004, Sun Microsystems, Inc.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH ETRN 8 "November 22, 2021"
+.SH NAME
+etrn \- start mail queue run
+.SH SYNOPSIS
+.nf
+\fBetrn\fR [\fB-b\fR] [\fB-v\fR] \fIserver-host\fR [\fIclient-hosts\fR]
+.fi
+
+.SH DESCRIPTION
+SMTP's \fBETRN\fR command allows an SMTP client and server to interact, giving
+the server an opportunity to start the processing of its queues for messages to
+go to a given host. This is meant to be used in start-up conditions, as well as
+for mail nodes that have transient connections to their service providers.
+.sp
+.LP
+The \fBetrn\fR utility initiates an SMTP session with the host
+\fIserver-host\fR and sends one or more \fBETRN\fR commands as follows: If no
+\fIclient-hosts\fR are specified, \fBetrn\fR looks up every host name for which
+\fBsendmail\fR(8) accepts email and, for each name, sends an \fBETRN\fR
+command with that name as the argument. If any \fIclient-hosts\fR are
+specified, \fBetrn\fR uses each of these as arguments for successive \fBETRN\fR
+commands.
+.SH OPTIONS
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-b\fR\fR
+.ad
+.RS 6n
+System boot special case. Make sure localhost is accepting SMTP connections
+before initiating the SMTP session with server-host.
+.sp
+This option is useful because it prevents race conditions between
+\fBsendmail\fR(8) accepting connections and \fIserver-host\fR attempting to
+deliver queued mail. This check is performed automatically if no
+\fIclient-hosts\fR are specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.RS 6n
+The normal mode of operation for \fBetrn\fR is to do all of its work silently.
+The \fB-v\fR option makes it verbose, which causes \fBetrn\fR to display its
+conversations with the remote SMTP server.
+.RE
+
+.SH ENVIRONMENT VARIABLES
+No environment variables are used. However, at system start-up,
+\fBsvc:/network/smtp:sendmail\fR reads \fB/etc/default/sendmail\fR. In this
+file, if the variable \fBETRN_HOSTS\fR is set, \fBsvc:/network/smtp:sendmail\fR
+parses this variable and invokes \fBetrn\fR appropriately. \fBETRN_HOSTS\fR
+should be of the form:
+.sp
+.in +2
+.nf
+"s1:c1.1,c1.2 s2:c2.1 s3:c3.1,c3.2,c3.3"
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+That is, white-space separated groups of \fIserver:client\fR where \fIclient\fR
+can be one or more comma-separated names. The \fI:client\fR part is optional.
+\fIserver\fR is the name of the server to prod; a mail queue run is requested
+for each \fIclient\fR name. This is comparable to running:
+.sp
+.in +2
+.nf
+/usr/lib/sendmail -qR \fIclient\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+on the host \fIserver\fR.
+.SH EXAMPLES
+\fBExample 1 \fRUsing \fBetrn\fR
+.sp
+.LP
+Inserting the line:
+
+.sp
+.in +2
+.nf
+ETRN_HOSTS="s1.example.com:clnt.example.com s2.example.com:clnt.example.com"
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+in \fB/etc/default/sendmail\fR results in \fBsvc:/network/smtp:sendmail\fR
+invoking \fBetrn\fR such that \fBETRN\fR commands are sent to both
+\fBs1.example.com\fR and \fBs2.example.com\fR, with both having
+\fBclnt.example.com\fR as the \fBETRN\fR argument.
+
+.sp
+.LP
+The line:
+
+.sp
+.in +2
+.nf
+ETRN_HOSTS="server.example.com:client1.example.com,client2.example.com"
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+results in two \fBETRN\fR commands being sent to \fBserver.example.com\fR, one
+with the argument \fBclient1.example.com\fR, the other with the argument
+\fBclient2.example.com\fR.
+
+.sp
+.LP
+The line:
+
+.sp
+.in +2
+.nf
+ETRN_HOSTS="server1.example.com server2.example.com"
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+results in set of a \fBETRN\fR commands being sent to both
+\fBserver1.example.com\fR and \fBserver2.example.com\fR; each set contains one
+\fBETRN\fR command for each host name for which \fBsendmail\fR(8) accepts
+email, with that host name as the argument.
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/etc/mail/sendmail.cf\fR\fR
+.ad
+.RS 25n
+\fBsendmail\fR configuration file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/default/sendmail\fR\fR
+.ad
+.RS 25n
+Variables used by \fBsvc:/network/smtp:sendmail\fR
+.RE
+
+.SH ATTRIBUTES
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Stable
+.TE
+
+.SH SEE ALSO
+.BR attributes (7),
+.BR sendmail (8)
+.sp
+.LP
+RFC 1985
+.SH NOTES
+Not all SMTP servers support \fBETRN\fR.
diff --git a/usr/src/man/man8/fcinfo.8 b/usr/src/man/man8/fcinfo.8
new file mode 100644
index 0000000000..05c7f7c528
--- /dev/null
+++ b/usr/src/man/man8/fcinfo.8
@@ -0,0 +1,1258 @@
+'\" te
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
+.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH FCINFO 8 "Jul 26, 2009"
+.SH NAME
+fcinfo, fcadm \- Fibre Channel HBA Port Command Line Interface
+.SH SYNOPSIS
+.LP
+.nf
+\fBfcinfo\fR hba-port [\fB-lite\fR] [\fIHBA_port_WWN\fR]...
+.fi
+
+.LP
+.nf
+\fBfcadm\fR hba-port [\fB-lite\fR] [\fIHBA_port_WWN\fR]...
+.fi
+
+.LP
+.nf
+\fBfcinfo\fR remote-port [\fB-ls\fR] [\fB-p\fR \fIHBA_port_WWN\fR]
+ [\fIREMOTE_port_WWN\fR]...
+.fi
+
+.LP
+.nf
+\fBfcadm\fR remote-port [\fB-ls\fR] [\fB-p\fR \fIHBA_port_WWN\fR]
+ [\fIREMOTE_port_WWN\fR]...
+.fi
+
+.LP
+.nf
+\fBfcinfo\fR logical-unit | lu [\fB-v\fR] [OS \fIdevice_path\fR]
+.fi
+
+.LP
+.nf
+\fBfcadm\fR logical-unit | lu [\fB-v\fR] [OS \fIdevice_path\fR]
+.fi
+
+.LP
+.nf
+\fBfcadm\fR create-npiv-port \fB-p\fR \fIVirtual_Port_WWN\fR [\fB-n\fR \fIVirtual_Node_WWN\fR]
+ \fIPhysicalPort_port_WWN\fR
+.fi
+
+.LP
+.nf
+\fBfcadm\fR delete-npiv-port \fB-p\fR \fIVirtual_Port_WWN\fR [\fB-n\fR \fIVirtual_Node_WWN\fR]
+ \fIPhysicalPort_port_WWN\fR
+.fi
+
+.LP
+.nf
+\fBfcadm\fR create-fcoe-port [\fB-tf\fR] \fB-p\fR \fIPort_WWN\fR [\fB-n\fR \fINode_WWN\fR]
+ \fIMAC_Interface\fR
+.fi
+
+.LP
+.nf
+\fBfcadm\fR delete-fcoe-port \fIMAC_Interface\fR
+.fi
+
+.LP
+.nf
+\fBfcadm\fR list-fcoe-ports \fIMAC_Interface\fR
+.fi
+
+.LP
+.nf
+\fBfcadm\fR force-lip \fIPort_WWN\fR
+.fi
+
+.LP
+.nf
+\fBfcinfo\fR [\fB-V\fR]
+.fi
+
+.LP
+.nf
+\fBfcadm\fR [\fB-V\fR]
+.fi
+
+.LP
+.nf
+\fBfcinfo\fR [\fB-?\fR]
+.fi
+
+.LP
+.nf
+\fBfcadm\fR [\fB-?\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBfcinfo\fR and \fBfcadm\fR are command line interfaces that collect
+administrative information on fibre channel host bus adapter (\fBHBA\fR) ports
+on a host. They also collect data on any fibre channel targets that might be
+connected to those ports in a Storage Area Network (\fBSAN\fR).
+.sp
+.LP
+A port can be either in initiator mode or target mode. The same FC attribute
+information and remote port information are applied to both the initiator and
+the target modes port except that SCSI-related operations described below do
+not apply for the target mode port.
+.SS "SUBCOMMANDS"
+.sp
+.LP
+The following subcommands are supported by both \fBfcinfo\fR and \fBfcadm\fR:
+.sp
+.ne 2
+.na
+\fB\fBhba-port\fR\fR
+.ad
+.RS 21n
+Lists information for the \fBHBA\fR port referenced by the specified
+\fIHBA_port_WWN\fR. If \fIHBA_port_WWN\fR is not specified, all initiator mode
+and target mode fibre channel \fBHBA\fR ports on the host will be listed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBremote-port\fR\fR
+.ad
+.RS 21n
+Lists the \fIremote-port\fR information for those remote ports that are
+specified. If no \fIREMOTE_port_WWN\fR is specified, all remote ports that are
+visible through \fIHBA_port_WWN\fR are listed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBlogical-unit\fR | \fBlu\fR\fR
+.ad
+.RS 21n
+Lists the logical unit referenced by the specified \fIdevice_path\fR. If
+\fIdevice_path\fR is not specified, all fibre channel logical units will be
+listed. This subcommand applies only to the initiator mode.
+.RE
+
+.sp
+.LP
+The following subcommands, which administer N_Port ID Virtualization (NPIV) HBA
+ports, are supported only by \fBfcadm\fR:
+.sp
+.ne 2
+.na
+\fB\fBcreate-npiv-port\fR\fR
+.ad
+.sp .6
+.RS 4n
+Create an NPIV virtual port on the specified adapter.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdelete-npiv-port\fR\fR
+.ad
+.sp .6
+.RS 4n
+Delete an NPIV virtual port. This delete only ports create by \fBfcadm\fR.
+.RE
+
+.sp
+.LP
+The following subcommands, which administer Fibre Channel over Ethernet (FCoE)
+ports, are supported only by \fBfcadm\fR:
+.sp
+.ne 2
+.na
+\fB\fBcreate-fcoe-port\fR\fR
+.ad
+.sp .6
+.RS 4n
+Creates a FCoE port associated with the given MAC interface and the given
+\fIPort_WWN\fR/\fINode_WWN\fR. If \fB-p\fR or \fB-n\fR is not specified, the
+Port WWN or Node WWN will be generated automatically. If the specified MAC
+interface does not support multiple unicast address, no FCoE port will be
+created and you receive a message indicating that you can add an \fB-f\fR
+option to force enabling promiscuous mode on the specified MAC interface to
+enable FCoE.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdelete-fcoe-port\fR\fR
+.ad
+.sp .6
+.RS 4n
+Deletes the FCoE port associated with the specified MAC interface.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBlist-fcoe-ports\fR\fR
+.ad
+.sp .6
+.RS 4n
+List information of FCoE ports.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBforce-lip\fR\fR
+.ad
+.sp .6
+.RS 4n
+Force the link to reinitialize. When issuing this subcommand on the target
+port side, causes a reset of the target port. When issuing it from the host
+port side, resets the host port. When an FC switch is connected, other FC ports
+in the SAN will get a RSCN (Remote State Change Notification). Furthermore,
+other initiators will always rediscover the port after this, and the FC login
+session will be established or reused. Also, I/Os will be continued. This
+command is disruptive to I/Os, but it is not destructive, as it does not cause
+any data loss.
+.RE
+
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-e\fR, \fB--fcoe\fR\fR
+.ad
+.sp .6
+.RS 4n
+Lists the information for all FCoE ports.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR, \fB--fcoe-promiscuous\fR\fR
+.ad
+.sp .6
+.RS 4n
+Used with \fBcreate-fcoe-port\fR to create an FCoE port on a MAC interface
+associated with a NIC that does not support multiple unicast address.
+Promiscuous mode will be enabled for the specified MAC interface.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR, \fB--linkstat\fR\fR
+.ad
+.sp .6
+.RS 4n
+Lists the link error statistics information for the port referenced by the
+specified \fIHBA_port_WWN\fR or \fIREMOTE_port_WWN\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR \fIHBA_node_WWN\fR, \fB--node\fR \fIHBA_node_WWN\fR\fR
+.ad
+.sp .6
+.RS 4n
+When used with NPIV options, specify a virtual node WWN. If used with
+\fBcreate-npiv-port\fR, it can be omitted, and a random based WWN will be used.
+It is mandatory for \fBdelete-npiv-port\fR.
+.sp
+When used with \fBcreate-fcoe-port\fR subcommand, specify the node WWN for the
+FCoE port. It can be omitted, in which case a WWN will be generated based on
+the MAC address of the specified MAC interface.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR \fIHBA_port_WWN\fR, \fB--port\fR \fIHBA_port_WWN\fR\fR
+.ad
+.sp .6
+.RS 4n
+Retrieve remote port information from the \fIHBA_port_WWN\fR of the local
+\fBHBA\fR port on the host. When used with the \fBremote-port\fR subcommand,
+the \fB-p\fR option is mandatory.
+.sp
+When used with NPIV options, specify a virtual port WWN. If used with
+\fBcreate-npiv-port\fR, it can be omitted, and a random based WWN will be used.
+It is mandatory for \fBdelete-npiv-port\fR.
+.sp
+When used with \fBcreate-fcoe-port\fR subcommand, specify the port WWN for the
+FCoE port. It can be omitted, in which case a WWN will be generated based on
+the MAC address of the specified MAC interface.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR, \fB--scsi-target\fR\fR
+.ad
+.sp .6
+.RS 4n
+Lists the \fBSCSI\fR target information for all remote ports the user has asked
+for. The \fB-p\fR, \fB--port\fR option must always be specified and must be a
+valid \fBHBA\fR port on the host. This \fBHBA\fR port will be used as the
+initiator for which to retrieve the \fBSCSI\fR level target information. Note
+that this will only function on remote port fibre channel World-Wide Names that
+support an FC4 type of \fBSCSI\fR. This option applies only to an initiator
+mode port.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-t\fR [\fIHBA_node_WWN\fR], \fB-target\fR [\fIHBA_node_WWN\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Lists the information for the port with the target mode referenced by the
+specified \fIHBA_node_WWN\fR or all target mode ports discovered in the host.
+.sp
+When used with \fBcreate-fcoe-port\fR, create a FCoE target mode port.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR, \fB--verbose\fR\fR
+.ad
+.sp .6
+.RS 4n
+When used with the \fBlogical-unit\fR subcommand, the \fB-v\fR displays
+additional information for the logical unit, including \fBSCSI\fR vendor and
+product information and device type as well as the \fBFC\fR World-Wide names
+for the local and remote fibre channel ports to which this device is attached.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-V\fR, \fB--version\fR\fR
+.ad
+.sp .6
+.RS 4n
+Displays the version information.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-?\fR, \fB--help\fR\fR
+.ad
+.sp .6
+.RS 4n
+Displays the usage information.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRListing All HBA Ports
+.sp
+.LP
+The following command lists all initiator mode fibre channel \fBHBA\fR ports on
+the host:
+
+.sp
+.in +2
+.nf
+# \fBfcinfo hba-port\fR
+
+HBA Port WWN: 210000e08b074cb5
+ Port Mode: Initiator
+ OS Device Name: /dev/cfg/c1
+ Manufacturer: QLogic Corp.
+ Model: 375-3108-xx
+ Firmware Version: 3.3.116
+ FCode/BIOS Version: 1.13.08
+ Serial Number: not available
+ Driver Name: qlc
+ Driver Version: 20070212-2.19
+ Type: N-port
+ State: online
+ Supported Speeds: 1Gb 2Gb
+ Current Speed: 2Gb
+ Node WWN: 200000e08b074cb5
+NPIV Port List:
+ Virtual Port 1:
+ Port WWN: 200000e08b074cb1
+ Node WWN: 200000e08b074cb3
+HBA Port WWN: 210100e08b274cb5
+ Port Mode: Initiator
+ OS Device Name: /dev/cfg/c2
+ Manufacturer: QLogic Corp.
+ Model: 375-3108-xx
+ Firmware Version: 3.3.116
+ FCode/BIOS Version: 1.13.08
+ Serial Number: not available
+ Driver Name: qlc
+ Driver Version: 20070212-2.19
+ Type: N-port
+ State: online
+ Supported Speeds: 1Gb 2Gb
+ Current Speed: 2Gb
+ Node WWN: 200100e08b274cb5
+HBA Port WWN: 210000e08b072ab5
+ Port Mode: Initiator
+ OS Device Name: /dev/cfg/c3
+ Manufacturer: QLogic Corp.
+ Firmware Version: 3.3.116
+ FCode/BIOS Version: 1.13.08
+ Model: 375-3108-xx
+ Serial Number: not available
+ Driver Name: qlc
+ Driver Version: 20070212-2.19
+ Type: L-port
+ State: online
+ Supported Speeds: 1Gb 2Gb
+ Current Speed: 2Gb
+ Node WWN: 200000e08b072ab5
+HBA Port WWN: 210100e08b272ab5
+ Port Mode: Initiator
+ OS Device Name: /dev/cfg/c4
+ Manufacturer: QLogic Corp.
+ Model: 375-3108-xx
+ Firmware Version: 3.3.116
+ FCode/BIOS Version: 1.13.08
+ Serial Number: 0402F00-0549112808
+ Driver Name: qlc
+ Driver Version: 20070212-2.19
+ Type: N-port
+ State: online
+ Supported Speeds: 1Gb 2Gb
+ Current Speed: 2Gb
+ Node WWN: 200100e08b272ab5
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRListing Target Mode HBA Ports
+.sp
+.LP
+The following command lists all target mode fibre channel HBA ports on the
+host:
+
+.sp
+.in +2
+.nf
+# \fBfcinfo hba-port -t\fR
+ HBA Port WWN: 210100e08bb09221
+ Port Mode: Target
+ Port ID: 10700
+ OS Device Name: Not Applicable
+ Manufacturer: QLogic Corp.
+ Model: d30ac7e0
+ Firmware Version: 4.0.109
+ FCode/BIOS Version: N/A
+ Type: F-port
+ State: online
+ Supported Speeds: not established
+ Current Speed: 2Gb
+ Node WWN: 200100e08bb09221
+ HBA Port WWN: 210000e08b909221
+ Port Mode: Target
+ Port ID: 10900
+ OS Device Name: Not Applicable
+ Manufacturer: QLogic Corp.
+ Model: d37ad1e0
+ Firmware Version: 4.0.109
+ FCode/BIOS Version: N/A
+ Type: F-port
+ State: online
+ Supported Speeds: not established
+ Current Speed: 2Gb
+ Node WWN: 200000e08b909221
+ HBA Port WWN: 200000144fc2d508
+ Port Mode: Target
+ Port ID: 9a0025
+ OS Device Name: Not Applicable
+ Manufacturer: Sun Microsystems, Inc.
+ Model: FCoE Virtual FC HBA
+ Firmware Version: N/A
+ FCode/BIOS Version: N/A
+ Serial Number: N/A
+ Driver Name: COMSTAR FCOET
+ Driver Version: 1.0
+ Type: F-port
+ State: online
+ Supported Speeds: 1Gb 10Gb
+ Current Speed: 10Gb
+ Node WWN: 100000144fc2d508
+ HBA Port WWN: 200000144fc2d509
+ Port Mode: Target
+ Port ID: 9a0023
+ OS Device Name: Not Applicable
+ Manufacturer: Sun Microsystems, Inc.
+ Model: FCoE Virtual FC HBA
+ Firmware Version: N/A
+ FCode/BIOS Version: N/A
+ Serial Number: N/A
+ Driver Name: COMSTAR FCOET
+ Driver Version: 1.0
+ Type: F-port
+ State: online
+ Supported Speeds: 1Gb 10Gb
+ Current Speed: 10Gb
+ Node WWN: 100000144fc2d509
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRListing HBA Ports and Link Statistics
+.sp
+.LP
+The following command lists information for the \fBHBA\fR ports and the link
+statistics for those ports:
+
+.sp
+.in +2
+.nf
+# \fBfcinfo hba-port -l 210000e08b074cb5 210100e08b274cb5\fR
+
+HBA Port WWN: 210000e08b074cb5
+ Port Mode: Initiator
+ OS Device Name: /dev/cfg/c1
+ Manufacturer: QLogic Corp.
+ Model: 375-3108-xx
+ Firmware Version: 3.3.116
+ FCode/BIOS Version: 1.13.08
+ Serial Number: 0402F00-0549112808
+ Driver Name: qlc
+ Driver Version: 20070212-2.19
+ Type: N-port
+ State: online
+ Supported Speeds: 1Gb 2Gb
+ Current Speed: 2Gb
+ Node WWN: 200000e08b074cb5
+ Link Error Statistics:
+ Link Failure Count: 0
+ Loss of Sync Count: 0
+ Loss of Signal Count: 0
+ Primitive Seq Protocol Error Count: 0
+ Invalid Tx Word Count: 0
+ Invalid CRC Count: 0
+HBA Port WWN: 210100e08b274cb5
+ Port Mode: Initiator
+ OS Device Name: /dev/cfg/c2
+ Manufacturer: QLogic Corp.
+ Model: 375-3108-xx
+ Firmware Version: 3.3.116
+ FCode/BIOS Version: 1.13.08
+ Serial Number: 0402F00-0549112808
+ Driver Name: qlc
+ Driver Version: 20070212-2.19
+ Type: N-port
+ State: online
+ Supported Speeds: 1Gb 2Gb
+ Current Speed: 2Gb
+ Node WWN: 200100e08b274cb5
+ Link Error Statistics:
+ Link Failure Count: 0
+ Loss of Sync Count: 0
+ Loss of Signal Count: 0
+ Primitive Seq Protocol Error Count: 0
+ Invalid Tx Word Count: 0
+ Invalid CRC Count: 0
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 4 \fRListing All Remote Ports
+.sp
+.LP
+The following command lists all remote ports that are visible through the given
+\fBHBA\fR port:
+
+.sp
+.in +2
+.nf
+# \fBfcinfo remote-port -p 210100e08b274cb5\fR
+
+Remote Port WWN: 50020f230000b4af
+ Active FC4 Types: SCSI
+ SCSI Target: yes
+ Port Symbolic Name: unknown
+ Node WWN: 50020f200000b4af
+Remote Port WWN: 210000e08b07daa6
+ Active FC4 Types: SCSI
+ SCSI Target: no
+ Port Symbolic Name: unknown
+ Node WWN: 200000e08b07daa6
+Remote Port WWN: 20030003ba27c788
+ Active FC4 Types: SCSI
+ SCSI Target: yes
+ Port Symbolic Name: unknown
+ Node WWN: 10000003ba27c788
+Remote Port WWN: 210000e08b096a60
+ Active FC4 Types: SCSI,IP
+ SCSI Target: no
+ Port Symbolic Name: unknown
+ Node WWN: 200000e08b096a60
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 5 \fRListing Remote Ports and Link Statistics
+.sp
+.LP
+The following command lists information for the remote ports and the link
+statistics for those ports:
+
+.sp
+.in +2
+.nf
+# \fBfcinfo remote-port -l -p 210100e08b272ab5\fR
+
+Remote Port WWN: 210100e08b296a60
+ Active FC4 Types: SCSI,IP
+ SCSI Target: no
+ Port Symbolic Name: unknown
+ Node WWN: 200100e08b296a60
+ Link Error Statistics:
+ Link Failure Count: 0
+ Loss of Sync Count: 0
+ Loss of Signal Count: 0
+ Primitive Seq Protocol Error Count: 0
+ Invalid Tx Word Count: 0
+ Invalid CRC Count: 0
+Remote Port WWN: 20030003ba27d56d
+ Active FC4 Types: SCSI
+ SCSI Target: yes
+ Port Symbolic Name: unknown
+ Node WWN: 10000003ba27d56d
+ Link Error Statistics:
+ Link Failure Count: 0
+ Loss of Sync Count: 4765165
+ Loss of Signal Count: 4765165
+ Primitive Seq Protocol Error Count: 0
+ Invalid Tx Word Count: 0
+ Invalid CRC Count: 0
+Remote Port WWN: 210100e08b27f7a6
+ Active FC4 Types: SCSI
+ SCSI Target: no
+ Port Symbolic Name: unknown
+ Node WWN: 200100e08b27f7a6
+ Link Error Statistics:
+ Link Failure Count: 0
+ Loss of Sync Count: 0
+ Loss of Signal Count: 0
+ Primitive Seq Protocol Error Count: 0
+ Invalid Tx Word Count: 0
+ Invalid CRC Count: 0
+Remote Port WWN: 50020f230000b897
+ Active FC4 Types: SCSI
+ SCSI Target: yes
+ Port Symbolic Name: unknown
+ Node WWN: 50020f200000b897
+ Link Error Statistics:
+ Link Failure Count: 0
+ Loss of Sync Count: 7
+ Loss of Signal Count: 7
+ Primitive Seq Protocol Error Count: 0
+ Invalid Tx Word Count: 0
+ Invalid CRC Count: 0
+Remote Port WWN: 210100e08b27daa6
+ Active FC4 Types: SCSI
+ SCSI Target: no
+ Port Symbolic Name: unknown
+ Node WWN: 200100e08b27daa6
+ Link Error Statistics:
+ Link Failure Count: 0
+ Loss of Sync Count: 0
+ Loss of Signal Count: 0
+ Primitive Seq Protocol Error Count: 0
+ Invalid Tx Word Count: 0
+ Invalid CRC Count: 0
+Remote Port WWN: 210000e08b074cb5
+ Active FC4 Types: SCSI,IP
+ SCSI Target: no
+ Port Symbolic Name: unknown
+ Node WWN: 200000e08b074cb5
+ Link Error Statistics:
+ Link Failure Count: 0
+ Loss of Sync Count: 0
+ Loss of Signal Count: 0
+ Primitive Seq Protocol Error Count: 0
+ Invalid Tx Word Count: 0
+ Invalid CRC Count: 0
+Remote Port WWN: 210100e08b296060
+ Active FC4 Types: SCSI
+ SCSI Target: no
+ Port Symbolic Name: unknown
+ Node WWN: 200100e08b296060
+ Link Error Statistics:
+ Link Failure Count: 0
+ Loss of Sync Count: 0
+ Loss of Signal Count: 0
+ Primitive Seq Protocol Error Count: 0
+ Invalid Tx Word Count: 0
+ Invalid CRC Count: 0
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 6 \fRListing All SCSI Targets and Link Statistics
+.sp
+.LP
+The following command lists all remote ports as well as the link statistics and
+\fIscsi-target\fR information:
+
+.sp
+.in +2
+.nf
+# \fBfcinfo remote-port -sl -p 210100e08b272ab5\fR
+
+Remote Port WWN: 210100e08b296a60
+ Active FC4 Types: SCSI,IP
+ SCSI Target: no
+ Port Symbolic Name: unknown
+ Node WWN: 200100e08b296a60
+ Link Error Statistics:
+ Link Failure Count: 0
+ Loss of Sync Count: 0
+ Loss of Signal Count: 0
+ Primitive Seq Protocol Error Count: 0
+ Invalid Tx Word Count: 0
+ Invalid CRC Count: 0
+Remote Port WWN: 20030003ba27d56d
+ Active FC4 Types: SCSI
+ SCSI Target: yes
+ Port Symbolic Name: unknown
+ Node WWN: 10000003ba27d56d
+ Link Error Statistics:
+ Link Failure Count: 0
+ Loss of Sync Count: 4765165
+ Loss of Signal Count: 4765165
+ Primitive Seq Protocol Error Count: 0
+ Invalid Tx Word Count: 0
+ Invalid CRC Count: 0
+ LUN: 0
+ Vendor: SUN
+ Product: T4
+ OS Device Name: /dev/rdsk/c4t20030003BA27D56Dd0s2
+ LUN: 1
+ Vendor: SUN
+ Product: T4
+ OS Device Name: /dev/rdsk/c4t20030003BA27D56Dd1s2
+Remote Port WWN: 210100e08b27f7a6
+ Active FC4 Types: SCSI
+ SCSI Target: no
+ Port Symbolic Name: unknown
+ Node WWN: 200100e08b27f7a6
+ Link Error Statistics:
+ Link Failure Count: 0
+ Loss of Sync Count: 0
+ Loss of Signal Count: 0
+ Primitive Seq Protocol Error Count: 0
+ Invalid Tx Word Count: 0
+ Invalid CRC Count: 0
+Remote Port WWN: 50020f230000b897
+ Active FC4 Types: SCSI
+ SCSI Target: yes
+ Port Symbolic Name: unknown
+ Node WWN: 50020f200000b897
+ Link Error Statistics:
+ Link Failure Count: 0
+ Loss of Sync Count: 7
+ Loss of Signal Count: 7
+ Primitive Seq Protocol Error Count: 0
+ Invalid Tx Word Count: 0
+ Invalid CRC Count: 0
+ LUN: 0
+ Vendor: SUN
+ Product: T300
+ OS Device Name: Unknown
+ LUN: 1
+ Vendor: SUN
+ Product: T300
+ OS Device Name: /dev/rdsk/c4t50020F230000B897d1s2
+ LUN: 2
+ Vendor: SUN
+ Product: T300
+ OS Device Name: /dev/rdsk/c4t50020F230000B897d2s2
+ LUN: 3
+ Vendor: SUN
+ Product: T300
+ OS Device Name: /dev/rdsk/c4t50020F230000B897d3s2
+ LUN: 4
+ Vendor: SUN
+ Product: T300
+ OS Device Name: /dev/rdsk/c4t50020F230000B897d4s2
+ LUN: 5
+ Vendor: SUN
+ Product: T300
+ OS Device Name: /dev/rdsk/c4t50020F230000B897d5s2
+ LUN: 6
+ Vendor: SUN
+ Product: T300
+ OS Device Name: /dev/rdsk/c4t50020F230000B897d6s2
+ LUN: 7
+ Vendor: SUN
+ Product: T300
+ OS Device Name: /dev/rdsk/c4t50020F230000B897d7s2
+ LUN: 8
+ Vendor: SUN
+ Product: T300
+ OS Device Name: /dev/rdsk/c4t50020F230000B897d8s2
+ LUN: 9
+ Vendor: SUN
+ Product: T300
+ OS Device Name: /dev/rdsk/c4t50020F230000B897d9s2
+ LUN: 10
+ Vendor: SUN
+ Product: T300
+ OS Device Name: /dev/rdsk/c4t50020F230000B897d10s2
+ LUN: 11
+ Vendor: SUN
+ Product: T300
+ OS Device Name: /dev/rdsk/c4t50020F230000B897d11s2
+ LUN: 12
+ Vendor: SUN
+ Product: T300
+ OS Device Name: /dev/rdsk/c4t50020F230000B897d12s2
+ LUN: 13
+ Vendor: SUN
+ Product: T300
+ OS Device Name: /dev/rdsk/c4t50020F230000B897d13s2
+ LUN: 14
+ Vendor: SUN
+ Product: T300
+ OS Device Name: /dev/rdsk/c4t50020F230000B897d14s2
+ LUN: 15
+ Vendor: SUN
+ Product: T300
+ OS Device Name: /dev/rdsk/c4t50020F230000B897d15s2
+Remote Port WWN: 210100e08b27daa6
+ Active FC4 Types: SCSI
+ SCSI Target: no
+ Port Symbolic Name: unknown
+ Node WWN: 200100e08b27daa6
+ Link Error Statistics:
+ Link Failure Count: 0
+ Loss of Sync Count: 0
+ Loss of Signal Count: 0
+ Primitive Seq Protocol Error Count: 0
+ Invalid Tx Word Count: 0
+ Invalid CRC Count: 0
+Remote Port WWN: 210000e08b074cb5
+ Active FC4 Types: SCSI,IP
+ SCSI Target: no
+ Port Symbolic Name: unknown
+ Node WWN: 200000e08b074cb5
+ Link Error Statistics:
+ Link Failure Count: 0
+ Loss of Sync Count: 0
+ Loss of Signal Count: 0
+ Primitive Seq Protocol Error Count: 0
+ Invalid Tx Word Count: 0
+ Invalid CRC Count: 0
+Remote Port WWN: 210100e08b296060
+ Active FC4 Types: SCSI
+ SCSI Target: no
+ Port Symbolic Name: unknown
+ Node WWN: 200100e08b296060
+ Link Error Statistics:
+ Link Failure Count: 0
+ Loss of Sync Count: 0
+ Loss of Signal Count: 0
+ Primitive Seq Protocol Error Count: 0
+ Invalid Tx Word Count: 0
+ Invalid CRC Count: 0
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 7 \fRListing SCSI Target Information
+.sp
+.LP
+The following command lists all remote ports as well as the \fIscsi-target\fR
+information:
+
+.sp
+.in +2
+.nf
+# \fBfcinfo remote-port -s -p 210100e08b272ab5\fR
+
+Remote Port WWN: 210100e08b296a60
+ Active FC4 Types: SCSI,IP
+ SCSI Target: no
+ Port Symbolic Name: unknown
+ Node WWN: 200100e08b296060
+Remote Port WWN: 20030003ba27d56d
+ Active FC4 Types: SCSI
+ SCSI Target: yes
+ Port Symbolic Name: unknown
+ Node WWN: 10000003ba27d56d
+ LUN: 0
+ Vendor: SUN
+ Product: T4
+ OS Device Name: /dev/rdsk/c4t20030003BA27D56Dd0s2
+ LUN: 1
+ Vendor: SUN
+ Product: T4
+ OS Device Name: /dev/rdsk/c4t20030003BA27D56Dd1s2
+Remote Port WWN: 210100e08b27f7a6
+ Active FC4 Types: SCSI
+ SCSI Target: no
+ Port Symbolic Name: unknown
+ Node WWN: 200100e08b27f7a6
+Remote Port WWN: 50020f230000b897
+ Active FC4 Types: SCSI
+ SCSI Target: yes
+ Port Symbolic Name: unknown
+ Node WWN: 50020f200000b897
+ LUN: 0
+ Vendor: SUN
+ Product: T300
+ OS Device Name: Unknown
+ LUN: 1
+ Vendor: SUN
+ Product: T300
+ OS Device Name: /dev/rdsk/c4t50020F230000B897d1s2
+ LUN: 2
+ Vendor: SUN
+ Product: T300
+ OS Device Name: /dev/rdsk/c4t50020F230000B897d2s2
+ LUN: 3
+ Vendor: SUN
+ Product: T300
+ OS Device Name: /dev/rdsk/c4t50020F230000B897d3s2
+ LUN: 4
+ Vendor: SUN
+ Product: T300
+ OS Device Name: /dev/rdsk/c4t50020F230000B897d4s2
+ LUN: 5
+ Vendor: SUN
+ Product: T300
+ OS Device Name: /dev/rdsk/c4t50020F230000B897d5s2
+ LUN: 6
+ Vendor: SUN
+ Product: T300
+ OS Device Name: /dev/rdsk/c4t50020F230000B897d6s2
+ LUN: 7
+ Vendor: SUN
+ Product: T300
+ OS Device Name: /dev/rdsk/c4t50020F230000B897d7s2
+ LUN: 8
+ Vendor: SUN
+ Product: T300
+ OS Device Name: /dev/rdsk/c4t50020F230000B897d8s2
+ LUN: 9
+ Vendor: SUN
+ Product: T300
+ OS Device Name: /dev/rdsk/c4t50020F230000B897d9s2
+ LUN: 10
+ Vendor: SUN
+ Product: T300
+ OS Device Name: /dev/rdsk/c4t50020F230000B897d10s2
+ LUN: 11
+ Vendor: SUN
+ Product: T300
+ OS Device Name: /dev/rdsk/c4t50020F230000B897d11s2
+ LUN: 12
+ Vendor: SUN
+ Product: T300
+ OS Device Name: /dev/rdsk/c4t50020F230000B897d12s2
+ LUN: 13
+ Vendor: SUN
+ Product: T300
+ OS Device Name: /dev/rdsk/c4t50020F230000B897d13s2
+ LUN: 14
+ Vendor: SUN
+ Product: T300
+ OS Device Name: /dev/rdsk/c4t50020F230000B897d14s2
+ LUN: 15
+ Vendor: SUN
+ Product: T300
+ OS Device Name: /dev/rdsk/c4t50020F230000B897d15s2
+Remote Port WWN: 210100e08b27daa6
+ Active FC4 Types: SCSI
+ SCSI Target: no
+ Port Symbolic Name: unknown
+ Node WWN: 200100e08b27daa6
+Remote Port WWN: 210000e08b074cb5
+ Active FC4 Types: SCSI,IP
+ SCSI Target: no
+ Port Symbolic Name: unknown
+ Node WWN: 200000e08b074cb5
+Remote Port WWN: 210100e08b296060
+ Active FC4 Types: SCSI
+ SCSI Target: no
+ Port Symbolic Name: unknown
+ Node WWN: 200100e08b296060
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 8 \fRListing the Logical Unit
+.sp
+.LP
+The following command lists the logical unit:
+
+.sp
+.in +2
+.nf
+# \fBfcinfo logical-unit\fR
+
+/dev/rdsk/c0t600C0FF0000000000036223AE73EB705d0s2
+/dev/rdsk/c0t600C0FF00000000000362272539E5B03d0s2
+/dev/rmt/0n
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 9 \fRDisplaying Additional Information for the Logical Unit
+.sp
+.LP
+The following command displays additional information about the logical unit
+using the \fB-v\fR option for device \fB/dev/rmt/On\fR:
+
+.sp
+.in +2
+.nf
+# \fBfcinfo lu -v /dev/rmt/On\fR
+
+ OS Device Name: /dev/rmt/0n
+ HBA Port WWN: 210000e07c030b91
+ Remote Port WWN: 21010003b7830a6
+ LUN: 0
+ Vendor: STK
+ Product: 9940A
+ Device Type: Tape device
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The following command displays additional information about the logical unit
+using the \fB-v\fR option for device
+\fB/dev/rdsk/c0t600C0FF0000000000036223AE73EB705d0s2\fR
+
+.sp
+.in +2
+.nf
+# \fBfcinfo logical-unit -v \e\fR
+ \fB/dev/rdsk/c0t600C0FF0000000000036223AE73EB705d0s2\fR
+
+ OS Device Name: /dev/rdsk/c0t600C0FF0000000000036223AE73EB705d0s2
+ HBA Port WWN: 210100e08b27a8a1
+ Remote Port WWN: 256000c0ffc03622
+ LUN: 0
+ Remote Port WWN: 216000c0ff803622
+ LUN: 0
+ HBA Port WWN: 210000e08b07a8a1
+ Remote Port WWN: 256000c0ffc03622
+ LUN: 0
+ Remote Port WWN: 216000c0ff803622
+ LUN: 0
+ Vendor: SUN
+ Product: StorEdge 3510
+ Device Type: Disk device
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 10 \fRAdding an NIPV Port
+.sp
+.LP
+The following command adds an NPIV port to the HBA with a port name:
+
+.sp
+.in +2
+.nf
+210000e08b170f1c
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The NPIV port has a port name of \fB2000000000000001\fR and a node name of
+\fB2100000000000001\fR.
+
+.sp
+.in +2
+.nf
+# \fBfcadm create-npiv-port -p 2000000000000001 -n 2100000000000001 \e
+210000e08b170f1c\fR
+
+Created NPIV Port:
+ HBA Port WWN: 2000000000000001
+ Node WWN: 2100000000000001
+ Physical HBA Port WWN: 210000e08b170f1c
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 11 \fRAdding an NIPV Port with Random WWN
+.sp
+.LP
+The following command adds an NPIV port to the HBA with a randomly assigned
+port name of \fB210000e08b170f1c\fR.
+
+.sp
+.in +2
+.nf
+# \fBfcadm create-npiv-port 210000e08b170f1c\fR
+
+Created NPIV Port:
+ HBA Port WWN: 2038295824942801
+ Node WWN: 2100392849248001
+ Physical HBA Port WWN: 210000e08b170f1c
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 12 \fRDeleting an NIPV Port
+.sp
+.LP
+The following command deletes an NPIV port.
+
+.sp
+.in +2
+.nf
+# \fBfcadm delete-npiv-port -p 2000000000000001 -w 2100000000000001 \e
+210000e08b170f1c\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 13 \fRCreating an FCoE Target Port
+.sp
+.LP
+The following command creates an FCoE port associated with the MAC interface
+\fBnxge0\fR.
+
+.sp
+.in +2
+.nf
+# \fBfcadm create-fcoe-port -t nxge0\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 14 \fRDeleting an FCoE Port
+.sp
+.LP
+The following command deletes the FCoE port associated with the MAC interface
+\fBnxge0\fR.
+
+.sp
+.in +2
+.nf
+# \fBfcadm delete-fcoe-port -t nxge0\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 15 \fRListing Information for an FCoE Port
+.sp
+.LP
+The following command lists information for FCoE ports.
+
+.sp
+.in +2
+.nf
+# \fBfcadm list-fcoe-ports\fR
+HBA Port WWN: 200000144fc2d508
+ Port Type: Target
+ MAC Name: nxge0
+ MTU Size: 9194
+ MAC Factory Address: 00144fc2d508
+ MAC Current Address: 00144fc2d508
+HBA Port WWN: 200000144fc2d509
+ Port Type: Target
+ MAC Name: nxge1
+ MTU Size: 9194
+ MAC Factory Address: 00144fc2d509
+ MAC Current Address: 00144fc2d509
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 16 \fRReinitializing the Link of an FC Port
+.sp
+.LP
+The following command forces the link connected with the port
+\fB200000144fc2d508\fR to reinitialize.
+
+.sp
+.in +2
+.nf
+# \fBfcadm force-lip 200000144fc2d508\fR
+.fi
+.in -2
+.sp
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Committed
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7)
+.SH ERROR MESSAGES
+.sp
+.LP
+Errors that can occur in addition to the errors normally associated with system
+administration commands:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fB\fIHBA_port_WWN\fR: not found\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fB\fIRemote_port_WWN\fR: not found\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fB\fIHBA_port_WWN\fR: NPIV not supported on this HBA\fR
+.RE
diff --git a/usr/src/man/man8/fdetach.8 b/usr/src/man/man8/fdetach.8
new file mode 100644
index 0000000000..e1abf5cf40
--- /dev/null
+++ b/usr/src/man/man8/fdetach.8
@@ -0,0 +1,52 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 1997 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH FDETACH 8 "Jul 5, 1990"
+.SH NAME
+fdetach \- detach a name from a STREAMS-based file descriptor
+.SH SYNOPSIS
+.LP
+.nf
+\fBfdetach\fR \fIpath\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBfdetach\fR command detaches a \fBSTREAMS-based\fR file descriptor from a
+name in the file system. Use the \fIpath\fR operand to specify the path name of
+the object in the file system name space, which was previously attached. See
+\fBfattach\fR(3C).
+.sp
+.LP
+The user must be the owner of the file or a user with the appropriate
+privileges. All subsequent operations on \fIpath\fR will operate on the
+underlying file system entry and not on the \fBSTREAMS\fR file. The permissions
+and status of the entry are restored to the state they were in before the
+\fBSTREAMS\fR file was attached to the entry.
+.SH OPERANDS
+.sp
+.LP
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fB\fIpath\fR\fR
+.ad
+.RS 8n
+Specifies the path name of the object in the file system name space, which was
+previously attached.
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR fattach (3C),
+.BR fdetach (3C),
+.BR streamio (4I),
+.BR attributes (7)
+.sp
+.LP
+\fI\fR
diff --git a/usr/src/man/man8/fdisk.8 b/usr/src/man/man8/fdisk.8
new file mode 100644
index 0000000000..0bb88d91ca
--- /dev/null
+++ b/usr/src/man/man8/fdisk.8
@@ -0,0 +1,860 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 2018 OmniOS Community Edition (OmniOSce) Association.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
+.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH FDISK 8 "Dec 06, 2018"
+.SH NAME
+fdisk \- create or modify fixed disk partition table
+.SH SYNOPSIS
+.LP
+.nf
+\fBfdisk\fR [\fB-o\fR \fIoffset\fR] [\fB-s\fR \fIsize\fR] [\fB-P\fR \fIfill_patt\fR] [\fB-S\fR \fIgeom_file\fR]
+ [\fB-w\fR | \fB-r\fR | \fB-d\fR | \fB-n\fR | \fB-I\fR | \fB-B\fR | \fB-t\fR | \fB-T\fR | \fB-g\fR | \fB-G\fR | \fB-R\fR]
+ [-\fB-F\fR \fIfdisk_file\fR] [ [\fB-v\fR] \fB-W\fR {\fIfdisk_file\fR | \(mi}]
+ [\fB-h\fR] [\fB-b\fR \fImasterboot\fR]
+ [\fB-A\fR \fIid\fR : \fIact\fR : \fIbhead\fR : \fIbsect\fR : \fIbcyl\fR : \fIehead\fR : \fIesect\fR :
+ \fIecyl\fR : \fIrsect\fR : \fInumsect\fR]
+ [\fB-D\fR \fIid\fR : \fIact\fR : \fIbhead:\fR \fIbsect\fR : \fIbcyl\fR : \fIehead:\fR \fIesect\fR :
+ \fIecyl\fR : \fIrsect\fR : \fInumsect\fR] \fIrdevice\fR
+ [\fB-E\fR [\fIslot\fR : \fIactive\fR]]
+ \fIrdevice\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+This command is used to do the following:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Create and modify an \fBfdisk\fR partition table on x86 systems
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Create and modify an \fBfdisk\fR partition table on removable media on SPARC or
+x86 systems
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Install the master boot record that is put in the first sector of the fixed
+disk on x86 systems only
+.RE
+.sp
+.LP
+This table is used by the first-stage bootstrap (or firmware) to identify parts
+of the disk reserved for different operating systems, and to identify the
+partition containing the second-stage bootstrap (the \fIactive\fR Solaris
+partition). The \fIrdevice\fR argument must be used to specify the raw device
+associated with the fixed disk, for example, \fB/dev/rdsk/c0t0d0p0\fR.
+.sp
+.LP
+The program can operate in three different modes. The first is interactive
+mode. In interactive mode, the program displays the partition table as it
+exists on the disk, and then presents a menu allowing the user to modify the
+table. The menu, questions, warnings, and error messages are intended to be
+self-explanatory.
+.sp
+.LP
+In interactive mode, if there is no partition table on the disk, the user is
+given the options of creating a default partitioning or specifying the initial
+table values. The default partitioning allocates the entire disk for the
+Solaris system and makes the Solaris system partition active. In either case,
+when the initial table is created, \fBfdisk\fR also writes out the first-stage
+bootstrap (x86 only) code along with the partition table. In this mode, (x86
+only) when creating an entry for a non-EFI partition on a disk that is larger
+than 2 TB (terabytes), \fBfdisk\fR warns that the maximum size of the partition
+is 2 TB. Under these conditions percentages displayed by \fBfdisk\fR are based
+on 2 TB.
+.sp
+.LP
+The second mode of operation is used for automated entry addition, entry
+deletion, or replacement of the entire \fBfdisk\fR table. This mode can add or
+delete an entry described on the command line. In this mode the entire
+\fBfdisk\fR table can be read in from a file replacing the original table.
+\fBfdisk\fR can also be used to create this file. There is a command line
+option that will cause \fBfdisk\fR to replace any \fBfdisk\fR table with the
+default of the whole disk for the Solaris system.
+.sp
+.LP
+The third mode of operation is used for disk diagnostics. In this mode, a
+section of the disk can be filled with a user-specified pattern and mode
+sections of the disk can also be read or written.
+.LP
+Note -
+.sp
+.RS 2
+The third mode of operation is not currently supported for extended partitions
+.RE
+.sp
+.LP
+When \fBfdisk\fR creates a partition, the space is allocated in the \fBfdisk\fR
+partition table, but the allocated disk space is not initialized.
+\fBnewfs\fR(8) is required to create and write file system metadata to the new
+partition, and \fBformat\fR(8) is required to write the VTOC or EFI/GPT
+metadata.
+.SS "Menu Options"
+.LP
+The menu options for interactive mode given by the \fBfdisk\fR program are:
+.sp
+.ne 2
+.na
+\fB\fBCreate a partition\fR\fR
+.ad
+.sp .6
+.RS 4n
+This option allows the user to create a new partition. The maximum number of
+partitions is 4. The program will ask for the type of the partition (SOLARIS,
+MS-DOS, UNIX, or other). It will then ask for the size of the partition as a
+percentage of the disk. The user may also enter the letter \fBc\fR at this
+point, in which case the program will ask for the starting cylinder number and
+size of the partition in cylinders. If a \fBc\fR is not entered, the program
+will determine the starting cylinder number where the partition will fit. In
+either case, if the partition would overlap an existing partition or will not
+fit, a message is displayed and the program returns to the original menu.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBChange Active (Boot from) partition\fR\fR
+.ad
+.sp .6
+.RS 4n
+This option allows the user to specify the partition where the first-stage
+bootstrap will look for the second-stage bootstrap, otherwise known as the
+\fIactive\fR partition.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBDelete a partition\fR\fR
+.ad
+.sp .6
+.RS 4n
+This option allows the user to delete a previously created partition. Note that
+this will destroy all data in that partition.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBChange between Solaris and Solaris2 Partition IDs\fR\fR
+.ad
+.sp .6
+.RS 4n
+This option allows the user to switch between the current \fBfdisk\fR operating
+system partition identifier and the previous one. This does not affect any data
+in the disk partition and is provided for compatibility with older software.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEdit/View extended partitions\fR\fR
+.ad
+.sp .6
+.RS 4n
+This option provides the extended partition menu to the user. Use the extended
+partition menu to add and delete logical drives, change the sysid of the
+logical drives, and display logical drive information. To commit the changes
+made in the extended partition, you must return to the main menu using the
+extended partition submenu option \fBr\fR. There is also an option to display
+the list of options that the extended partition submenu supports. Given below
+is the list:
+.sp
+.ne 2
+.na
+\fB\fBa\fR\fR
+.ad
+.RS 5n
+Add a logical drive.
+.sp
+Use this submenu option to add a logical drive. There are three pieces of
+information that are required: The beginning cylinder, the size (in cylinders
+or in human readable form - KB, MB, or GB), and the partition ID. While
+specifying the partition ID, there is an option (\fBI\fR) that you can use to
+list the supported partitions.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBd\fR\fR
+.ad
+.RS 5n
+Delete a logical drive.
+.sp
+Use this submenu option to delete a logical drive. The only input required is
+the number of the logical drive that is to be deleted.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBh\fR\fR
+.ad
+.RS 5n
+Display the help menu.
+.sp
+This submenu option displays the supported operations in the extended partition
+submenu.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBi\fR\fR
+.ad
+.RS 5n
+Change the id of the logical drive.
+.sp
+Use this submenu option to change the system ID of the existing logical drives.
+A list of supported system IDs is displayed when you use the \fBI\fR option
+when in this submenu.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBp\fR\fR
+.ad
+.RS 5n
+Display the logical drive layout.
+.sp
+Displays the logical drive information to stdout. This output reflects any
+changes made during the current run of the \fBfdisk\fR program. The changes are
+not committed to the disk until return to the main menu (using the submenu
+\fBr\fR) and choose the option to commit the changes to the disk.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBr\fR\fR
+.ad
+.RS 5n
+Return to the main \fBfdisk\fR menu.
+.sp
+Exit the extended partition submenu and return to the main menu.
+.RE
+
+.RE
+
+.sp
+.LP
+Use the following options to include your modifications to the partition table
+at this time or to cancel the session without modifying the table:
+.sp
+.ne 2
+.na
+\fB\fBExit\fR\fR
+.ad
+.RS 10n
+This option writes the new version of the table created during this session
+with \fBfdisk\fR out to the fixed disk, and exits the program.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBCancel\fR\fR
+.ad
+.RS 10n
+This option exits without modifying the partition table.
+.RE
+
+.SH OPTIONS
+.LP
+The following options apply to \fBfdisk\fR:
+.sp
+.ne 2
+.na
+\fB\fB-A\fR \fIid:act:bhead:bsect:bcyl:ehead:esect:ecyl:rsect:numsect\fR\fR
+.ad
+.sp .6
+.RS 4n
+Add a partition as described by the argument (see the \fB-F\fR option below for
+the format). Use of this option will zero out the \fBVTOC\fR on the Solaris
+partition if the \fBfdisk\fR table changes.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-b\fR \fImaster_boot\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify the file \fImaster_boot\fR as the master boot program. The default
+master boot program is \fB/boot/pmbr\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-B\fR\fR
+.ad
+.sp .6
+.RS 4n
+Default to one Solaris partition that uses the whole disk. On an x86 machine,
+if the disk is larger than 2 TB (terabytes), the default size of the Solaris
+partition will be limited to 2 TB.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-d\fR\fR
+.ad
+.sp .6
+.RS 4n
+Turn on verbose \fIdebug\fR mode. This will cause \fBfdisk\fR to print its
+state on stderr as it is used. The output from this option should not be used
+with \fB-F\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-D\fR \fIid:act:bhead:bsect:bcyl:ehead:esect:ecyl:rsect:numsect\fR\fR
+.ad
+.sp .6
+.RS 4n
+Delete a partition as described by the argument (see the \fB-F\fR option below
+for the format). Note that the argument must be an exact match or the entry
+will not be deleted! Use of this option will zero out the \fBVTOC\fR on the
+Solaris partition if the \fBfdisk\fR table changes.
+.RE
+
+.sp
+.ne 2
+.na
+\fB-E\fR [\fIslot\fR:\fIactive\fR]
+.ad
+.sp .6
+.RS 4n
+Create an \fBEFI\fR partition that uses the entire disk.
+.sp
+By default this partition entry will be placed into the first slot within the
+partition table and will not be marked active. The remaining slots within the
+table will be zeroed out.
+.sp
+Some broken firmware implementations have issues booting in CSM/Legacy/BIOS
+mode from EFI partitions that are not set active. Others have issues with
+booting from EFI partitions without UEFI if the protective partition table
+entry is in the first slot. To work around these problems, the \fB-E\fR
+option takes an optional argument which can be used to override the defaults
+described above.
+
+.sp
+.ne 2
+.na
+\fB\fIslot\fR\fR
+.ad
+.RS 11n
+Specify the MBR slot into which the EFI partition should be placed. This accepts a value in the range 0 to 3 with the default being 0.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIactive\fR\fR
+.ad
+.RS 11n
+Specify whether the EFI partition entry should be marked active; \fB0\fR specifies not active (the default) and \fB1\fR means active.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-F\fR \fIfdisk_file\fR\fR
+.ad
+.sp .6
+.RS 4n
+Use fdisk file \fIfdisk_file\fR to initialize table. Use of this option will
+zero out the \fBVTOC\fR on the Solaris partition if the \fBfdisk\fR table
+changes.
+.sp
+The \fIfdisk_file\fR contains four specification lines for the primary
+partitions followed by specification lines for the logical drives. You must
+have four lines for the primary partitions if there is at least one logical
+drive. In this case, if the number of primary partitions to be configured is
+less than four, the remaining lines should be filled with zeros.
+.sp
+Each line is composed of entries that are position-dependent, are separated by
+whitespace or colons, and have the following format:
+.sp
+\fIid act bhead bsect bcyl ehead esect ecyl rsect numsect\fR
+.sp
+\&...where the entries have the following values:
+.sp
+.ne 2
+.na
+\fB\fIid\fR\fR
+.ad
+.RS 11n
+This is the type of partition and the correct numeric values may be found in
+\fBfdisk.h\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIact\fR\fR
+.ad
+.RS 11n
+This is the active partition flag; \fB0\fR means not active and \fB128\fR means
+active. For logical drives, this flag will always be set to 0 even if specified
+as 128 by the user.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIbhead\fR\fR
+.ad
+.RS 11n
+This is the head where the partition starts. If this is set to \fB0\fR,
+\fBfdisk\fR will correctly fill this in from other information.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIbsect\fR\fR
+.ad
+.RS 11n
+This is the sector where the partition starts. If this is set to \fB0\fR,
+\fBfdisk\fR will correctly fill this in from other information.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIbcyl\fR\fR
+.ad
+.RS 11n
+This is the cylinder where the partition starts. If this is set to \fB0\fR,
+\fBfdisk\fR will correctly fill this in from other information.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIehead\fR\fR
+.ad
+.RS 11n
+This is the head where the partition ends. If this is set to \fB0\fR,
+\fBfdisk\fR will correctly fill this in from other information.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIesect\fR\fR
+.ad
+.RS 11n
+This is the sector where the partition ends. If this is set to \fB0\fR,
+\fBfdisk\fR will correctly fill this in from other information.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIecyl\fR\fR
+.ad
+.RS 11n
+This is the cylinder where the partition ends. If this is set to \fB0\fR,
+\fBfdisk\fR will correctly fill this in from other information.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIrsect\fR\fR
+.ad
+.RS 11n
+The relative sector from the beginning of the disk where the partition starts.
+This must be specified and can be used by \fBfdisk\fR to fill in other fields.
+For logical drives, you must make sure that there are at least 63 free sectors
+before the \fIrsect\fR specified for a logical drive.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fInumsect\fR\fR
+.ad
+.RS 11n
+The size in sectors of this disk partition. This must be specified and can be
+used by \fBfdisk\fR to fill in other fields.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-g\fR\fR
+.ad
+.sp .6
+.RS 4n
+Get the label geometry for disk and display on stdout (see the \fB-S\fR option
+for the format).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-G\fR\fR
+.ad
+.sp .6
+.RS 4n
+Get the physical geometry for disk and display on stdout (see the \fB-S\fR
+option for the format).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-h\fR\fR
+.ad
+.sp .6
+.RS 4n
+Issue verbose message; message will list all options and supply an explanation
+for each.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-I\fR\fR
+.ad
+.sp .6
+.RS 4n
+Forgo device checks. This is used to generate a file image of what would go on
+a disk without using the device. Note that you must use \fB-S\fR with this
+option (see above).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR\fR
+.ad
+.sp .6
+.RS 4n
+Don't update \fBfdisk\fR table unless explicitly specified by another option.
+If no other options are used, \fB-n\fR will only write the master boot record
+to the disk. In addition, note that \fBfdisk\fR will not come up in interactive
+mode if the \fB-n\fR option is specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-o\fR \fIoffset\fR\fR
+.ad
+.sp .6
+.RS 4n
+Block offset from start of disk. This option is used for \fB-P\fR, \fB-r\fR,
+and \fB-w\fR. Zero is assumed when this option is not used.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-P\fR \fIfill_patt\fR\fR
+.ad
+.sp .6
+.RS 4n
+Fill disk with pattern \fIfill_patt\fR. \fIfill_patt\fR can be decimal or hex
+and is used as number for constant long word pattern. If \fIfill_patt\fR is
+\fB#\fR, then pattern is block # for each block. Pattern is put in each block
+as long words and fills each block (see \fB-o\fR and \fB-s\fR).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-r\fR\fR
+.ad
+.sp .6
+.RS 4n
+Read from disk and write to stdout. See \fB-o\fR and \fB-s\fR, which specify
+the starting point and size of the operation.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-R\fR\fR
+.ad
+.sp .6
+.RS 4n
+Treat disk as read-only. This is for testing purposes.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR \fIsize\fR\fR
+.ad
+.sp .6
+.RS 4n
+Number of blocks to perform operation on (see \fB-o\fR).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-S\fR \fIgeom_file\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set the label geometry to the content of the \fIgeom_file\fR. The
+\fIgeom_file\fR contains one specification line. Each line is delimited by a
+new-line character (\fB\en\fR). If the first character of a line is an asterisk
+(*), the line is treated as a comment. Each line is composed of entries that
+are position-dependent, are separated by white space, and have the following
+format:
+.sp
+.in +2
+.nf
+\fIpcyl ncyl acyl bcyl nheads nsectors sectsiz\fR
+.fi
+.in -2
+.sp
+
+where the entries have the following values:
+.sp
+.ne 2
+.na
+\fB\fIpcyl\fR\fR
+.ad
+.RS 12n
+This is the number of physical cylinders for the drive.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIncyl\fR\fR
+.ad
+.RS 12n
+This is the number of usable cylinders for the drive.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIacyl\fR\fR
+.ad
+.RS 12n
+This is the number of alt cylinders for the drive.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIbcyl\fR\fR
+.ad
+.RS 12n
+This is the number of offset cylinders for the drive (should be zero).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fInheads\fR\fR
+.ad
+.RS 12n
+The number of heads for this drive.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fInsectors\fR\fR
+.ad
+.RS 12n
+The number of sectors per track.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIsectsiz\fR\fR
+.ad
+.RS 12n
+The size in bytes of a sector.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-t\fR\fR
+.ad
+.sp .6
+.RS 4n
+Adjust incorrect slice table entries so that they will not cross partition
+table boundaries.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-T\fR\fR
+.ad
+.sp .6
+.RS 4n
+Remove incorrect slice table entries that span partition table boundaries.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.sp .6
+.RS 4n
+Output the HBA (virtual) geometry dimensions. This option must be used in
+conjunction with the \fB-W\fR flag. This option will work for platforms which
+support virtual geometry. (x86 only)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-w\fR\fR
+.ad
+.sp .6
+.RS 4n
+Write to disk and read from stdin. See \fB-o\fR and \fB-s\fR, which specify the
+starting point and size of the operation.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-W\fR \fB\(mi\fR\fR
+.ad
+.sp .6
+.RS 4n
+Output the disk table to \fBstdout\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-W\fR \fIfdisk_file\fR\fR
+.ad
+.sp .6
+.RS 4n
+Create an \fBfdisk\fR file \fIfdisk_file\fR from disk table. This can be used
+with the \fB-F\fR option below.
+.RE
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/dev/rdsk/c0t0d0p0\fR\fR
+.ad
+.RS 25n
+Raw device associated with the fixed disk.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/boot/pmbr\fR\fR
+.ad
+.RS 25n
+Default master boot program.
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture x86 and SPARC
+.TE
+
+.SH SEE ALSO
+.LP
+.BR uname (1),
+.BR attributes (7),
+.BR fmthard (8),
+.BR format (8),
+.BR newfs (8),
+.BR prtvtoc (8)
+.SH DIAGNOSTICS
+.LP
+Most messages will be self-explanatory. The following may appear immediately
+after starting the program:
+.sp
+.ne 2
+.na
+\fB\fBFdisk\fR: \fBcannot open\fR <\fBdevice\fR>\fR
+.ad
+.sp .6
+.RS 4n
+This indicates that the device name argument is not valid.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBFdisk\fR: \fBunable to get device parameters for device\fR
+<\fBdevice\fR>\fR
+.ad
+.sp .6
+.RS 4n
+This indicates a problem with the configuration of the fixed disk, or an error
+in the fixed disk driver.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBFdisk\fR: \fBerror reading partition table\fR\fR
+.ad
+.sp .6
+.RS 4n
+This indicates that some error occurred when trying initially to read the fixed
+disk. This could be a problem with the fixed disk controller or driver, or with
+the configuration of the fixed disk.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBFdisk\fR: \fBerror writing boot record\fR\fR
+.ad
+.sp .6
+.RS 4n
+This indicates that some error occurred when trying to write the new partition
+table out to the fixed disk. This could be a problem with the fixed disk
+controller, the disk itself, the driver, or the configuration of the fixed
+disk.
+.RE
+
diff --git a/usr/src/man/man8/ff.8 b/usr/src/man/man8/ff.8
new file mode 100644
index 0000000000..38c83f7d76
--- /dev/null
+++ b/usr/src/man/man8/ff.8
@@ -0,0 +1,236 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 1997, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH FF 8 "Feb 10, 1997"
+.SH NAME
+ff \- list file names and statistics for a file system
+.SH SYNOPSIS
+.LP
+.nf
+\fBff\fR [\fB-F\fR \fIFSType\fR] [\fB-V\fR] [\fIgeneric_options\fR] [\fB-o\fR \fIspecific_options\fR] \fIspecial\fR...
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBff\fR prints the pathnames and inode numbers of files in the file system
+which resides on the special device \fIspecial\fR. Other information about the
+files may be printed using options described below. Selection criteria may be
+used to instruct \fBff\fR to only print information for certain files. If no
+selection criteria are specified, information for all files considered will be
+printed (the default); the \fB-i\fR option may be used to limit files to those
+whose inodes are specified.
+.sp
+.LP
+Output is sorted in ascending inode number order. The default line produced
+by \fBff\fR is:
+.sp
+.LP
+\fIpath-name\fR \|i-number
+.sp
+.LP
+The maximum information the command will provide is:
+.sp
+.LP
+\fIpath-name\fR \|i-number \|size \|uid
+.SH OPTIONS
+.sp
+.ne 2
+.na
+\fB\fB-F\fR\fR
+.ad
+.RS 19n
+Specify the \fIFSType\fR on which to operate. The \fIFSType\fR should either
+be specified here or be determinable from \fB/etc/vfstab\fR by matching the
+\fIspecial\fR with an entry in the table, or by consulting
+\fB/etc/default/fs\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-V\fR\fR
+.ad
+.RS 19n
+Echo the complete command line, but do not execute the command. The command
+line is generated by using the options and arguments provided by the user and
+adding to them information derived from \fB/etc/vfstab\fR. This option may be
+used to verify and validate the command line.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIgeneric_options\fR\fR
+.ad
+.RS 19n
+Options that are supported by most FSType-specific modules of the command. The
+following options are available:
+.sp
+.ne 2
+.na
+\fB\fB-I\fR\fR
+.ad
+.RS 18n
+Do not print the i-node number after each path name.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR\fR
+.ad
+.RS 18n
+Generate a supplementary list of all path names for multiply-linked files.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR\fI prefix\fR\fR
+.ad
+.RS 18n
+The specified \fIprefix\fR will be added to each generated path name. The
+default is `.' (dot).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR\fR
+.ad
+.RS 18n
+Print the file size, in bytes, after each path name.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-u\fR\fR
+.ad
+.RS 18n
+Print the owner's login name after each path name.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-a\fR \fB-\fR\fIn\fR\fR
+.ad
+.RS 18n
+Select if the file has been accessed in \fIn\fR days.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-m\fR \fB-\fR\fIn\fR\fR
+.ad
+.RS 18n
+Select if the file has been written or created in \fIn\fR days.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-c\fR \fB-\fR\fIn\fR\fR
+.ad
+.RS 18n
+Select if file's status has been changed in \fIn\fR days.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR\fI file\fR\fR
+.ad
+.RS 18n
+Select if the file has been modified more recently than the argument
+\fBfile\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-i\fR\fI i-node-list\fR\fR
+.ad
+.RS 18n
+Generate names for only those i-nodes specified in \fIi-node-list\fR.
+\fIi-node-list\fR is a list of numbers separated by commas (with no intervening
+spaces).
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-o\fR\fR
+.ad
+.RS 19n
+Specify \fIFSType\fR-specific options in a comma separated (without spaces)
+list of suboptions and keyword-attribute pairs for interpretation by the
+\fIFSType\fR-specific module of the command.
+.RE
+
+.SH OPERANDS
+.sp
+.ne 2
+.na
+\fB\fIspecial\fR\fR
+.ad
+.RS 11n
+A special device.
+.RE
+
+.SH USAGE
+.sp
+.LP
+See \fBlargefile\fR(7) for the description of the behavior of \fBff\fR when
+encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/default/fs\fR\fR
+.ad
+.RS 19n
+default local file system type. Default values can be set for the following
+flags in \fB/etc/default/fs\fR. For example: \fBLOCAL=ufs\fR
+.sp
+.ne 2
+.na
+\fB\fBLOCAL\fR\fR
+.ad
+.RS 9n
+The default partition for a command if no FSType is specified.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/vfstab\fR\fR
+.ad
+.RS 19n
+list of default parameters for each file system
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+\fBfind\fR(1), \fBncheck\fR(8), \fBstat\fR(2), \fBvfstab\fR(5),
+\fBattributes\fR(7), \fBlargefile\fR(7) Manual pages for the
+\fIFSType\fR-specific modules of \fBff\fR.
+.SH NOTES
+.sp
+.LP
+This command may not be supported for all \fIFSTypes\fR.
+.sp
+.LP
+The \fB-a\fR, \fB-m\fR, and \fB-c\fR flags examine the \fBst_atime\fR,
+\fBst_mtime\fR, and \fBst_ctime\fR fields of the \fBstat\fR structure
+respectively. (See \fBstat\fR(2).)
diff --git a/usr/src/man/man8/ff_ufs.8 b/usr/src/man/man8/ff_ufs.8
new file mode 100644
index 0000000000..adaef0bcd1
--- /dev/null
+++ b/usr/src/man/man8/ff_ufs.8
@@ -0,0 +1,72 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 1997, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH FF_UFS 8 "Feb 10, 1997"
+.SH NAME
+ff_ufs \- list file names and statistics for a ufs file system
+.SH SYNOPSIS
+.LP
+.nf
+\fBff\fR \fB-F\fR ufs [\fIgeneric_options\fR] [\fB-o\fR a,m,s] \fIspecial\fR...
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBff\fR prints the pathnames and inode numbers of files in the file system
+which resides on the special device \fIspecial\fR.
+.sp
+.LP
+See \fBff\fR(8) for information regarding the \fBff\fR command. See
+\fBOPTIONS\fR for information regarding the ufs-specific options.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-o\fR\fR
+.ad
+.RS 6n
+Specify \fBufs\fR file system specific options. The following options available
+are:
+.sp
+.ne 2
+.na
+\fB\fBa\fR\fR
+.ad
+.RS 5n
+Print the `\fI\&.\fR' and `\fI\&.\|.\fR' directory entries.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBm\fR\fR
+.ad
+.RS 5n
+Print mode information. This option must be specified in conjunction with the
+\fB\fR\fB-i\fR\fB \fR\fIi-node-list\fR option (see \fBff\fR(8)).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBs\fR\fR
+.ad
+.RS 5n
+Print only special files and files with set-user-ID mode.
+.RE
+
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR find (1),
+.BR attributes (7),
+.BR ff (8),
+.BR ncheck (8)
diff --git a/usr/src/man/man8/fiocompress.8 b/usr/src/man/man8/fiocompress.8
new file mode 100644
index 0000000000..7df9e8c6bd
--- /dev/null
+++ b/usr/src/man/man8/fiocompress.8
@@ -0,0 +1,130 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH FIOCOMPRESS 8 "Dec 10, 2008"
+.SH NAME
+fiocompress \- file compression utility
+.SH SYNOPSIS
+.LP
+.nf
+\fB/sbin/fiocompress\fR \fB-c\fR [\fB-m\fR] [\fB-b\fR \fIblock_size\fR] \fIinput_file\fR \fIoutput_file\fR
+.fi
+
+.LP
+.nf
+\fB/sbin/fiocompress\fR \fB-d\fR \fIinput_file\fR \fIoutput_file\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBfiocompress\fR utility is a file compression tool that works together
+with the \fBdcfs\fR(4FS) file system to perform per-file compression. You can
+use \fBfiocompress\fR to decompress a compressed file or mark a compressed file
+as compressed, causing automatic decompression on read. The primary use of
+\fBfiocompress\fR is to compress files in the boot archive.
+.sp
+.LP
+Note that this utility is not a Committed interface. See \fBattributes\fR(7).
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-b\fR \fIblock_size\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify a block size for compression. The default block size is 8192.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-c\fR\fR
+.ad
+.sp .6
+.RS 4n
+Compress the specified file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-d\fR\fR
+.ad
+.sp .6
+.RS 4n
+Decompress the specified file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-m\fR\fR
+.ad
+.sp .6
+.RS 4n
+Mark the compressed file for automatic decompression on read. Can be used only
+in conjunction with \fB-c\fR.
+.RE
+
+.SH EXIT STATUS
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.sp .6
+.RS 4n
+The command completed successfully.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-1\fR\fR
+.ad
+.sp .6
+.RS 4n
+The command exited due to an error.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Private
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR dcfs (4FS),
+.BR ufs (4FS),
+.BR attributes (7),
+.BR boot (8),
+.BR bootadm (8)
+.SH NOTES
+.sp
+.LP
+This compression/decompression utility works only with files stored in a UFS
+file system.
+.sp
+.LP
+There is no obvious way to determine whether a given file is compressed, other
+than copying the file and comparing the number of disk blocks of the copy
+against the original.
diff --git a/usr/src/man/man8/flowadm.8 b/usr/src/man/man8/flowadm.8
new file mode 100644
index 0000000000..b9de942c0b
--- /dev/null
+++ b/usr/src/man/man8/flowadm.8
@@ -0,0 +1,850 @@
+'\" te
+.\" Copyright 2020 Peter Tribble
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright (c) 2011, Joyent, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH FLOWADM 8 "February 5, 2022"
+.SH NAME
+flowadm \- administer bandwidth resource control and priority for protocols,
+services, containers, and virtual machines
+.SH SYNOPSIS
+.LP
+.nf
+\fBflowadm show-flow\fR [\fB-pP\fR] [\fB-S\fR] [\fB-s\fR [\fB-i\fR \fIinterval\fR]] [\fB-l\fR \fIlink\fR]
+ [\fB-o\fR \fIfield\fR[,...]] [\fB-z\fR \fIzonename\fR] [\fIflow\fR]
+.fi
+
+.LP
+.nf
+\fBflowadm add-flow\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] [\fB-z\fR \fIzonename\fR] \fB-l\fR \fIlink\fR
+ \fB-a\fR \fIattr\fR=\fIvalue\fR[,...] \fB-p\fR \fIprop\fR=\fIvalue\fR[,...] \fIflow\fR
+\fBflowadm remove-flow\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] [\fB-z\fR \fIzonename\fR] {\fB-l\fR \fIlink\fR | \fIflow\fR}
+.fi
+
+.LP
+.nf
+\fBflowadm set-flowprop\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] \fB-p\fR \fIprop\fR=\fIvalue\fR[,...] \fIflow\fR
+\fBflowadm reset-flowprop\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] [\fB-p\fR \fIprop\fR[,...]] \fIflow\fR
+\fBflowadm show-flowprop\fR [\fB-cP\fR] [\fB-l\fR \fIlink\fR] [\fB-o\fR \fIfield\fR[,...]]
+ [\fB-p\fR \fIprop\fR[,...]] [\fIflow\fR]
+.fi
+
+.SH DESCRIPTION
+The \fBflowadm\fR command is used to create, modify, remove, and show
+networking bandwidth and associated resources for a type of traffic on a
+particular link.
+.sp
+.LP
+The \fBflowadm\fR command allows users to manage networking bandwidth resources
+for a transport, service, or a subnet. The service is specified as a
+combination of transport and local port. The subnet is specified by its IP
+address and subnet mask. The command can be used on any type of data link,
+including physical links, virtual NICs, and link aggregations.
+.sp
+.LP
+A flow is defined as a set of attributes based on Layer 3 and Layer 4 headers,
+which can be used to identify a protocol, service, or a virtual machine. When a
+flow is identified based on flow attributes, separate kernel resources
+including layer 2, 3, and 4 queues, their processing threads, and other
+resources are uniquely created for it, such that other traffic has minimal or
+zero impact on it.
+.sp
+.LP
+Inbound and outbound packet are matched to flows in a very fast and scalable
+way, so that limits can be enforced with minimal performance impact.
+.sp
+.LP
+The \fBflowadm\fR command can be used to define a flow without imposing any
+bandwidth resource control. This would result in the traffic type getting its
+own resources and queues so that it is isolated from rest of the networking
+traffic for more observable and deterministic behavior.
+.sp
+.LP
+\fBflowadm\fR is implemented as a set of subcommands with corresponding
+options. Options are described in the context of each subcommand.
+.SH SUBCOMMANDS
+The following subcommands are supported:
+.sp
+.ne 2
+.na
+\fB\fBflowadm show-flow\fR [\fB-pP\fR] [\fB-s\fR [\fB-i\fR \fIinterval\fR]] [\fB-o\fR \fIfield\fR[,...]] [\fB-l\fR \fIlink\fR] [\fB-z\fR \fIzonename\fR] [\fIflow\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Adds a flow to the system. The flow is identified by its flow attributes and
+properties.
+.sp
+As part of identifying a particular flow, its bandwidth resource can be limited
+and its relative priority to other traffic can be specified. If no bandwidth
+limit or priority is specified, the traffic still gets its unique layer 2, 3,
+and 4 queues and processing threads, including NIC hardware resources (when
+supported), so that the selected traffic can be separated from others and can
+flow with minimal impact from other traffic.
+.sp
+.ne 2
+.na
+\fB\fB-t\fR, \fB--temporary\fR\fR
+.ad
+.sp .6
+.RS 4n
+The changes are temporary and will not persist across reboots. Persistence is
+the default.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-R\fR \fIroot-dir\fR, \fB--root-dir\fR=\fIroot-dir\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies an alternate root directory where \fBflowadm\fR should apply
+persistent creation.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR \fIlink\fR, \fB--link\fR=\fIlink\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify the link to which the flow will be added.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-a\fR \fIattr\fR=\fIvalue\fR[,...], \fB--attr\fR=\fIvalue\fR\fR
+.ad
+.sp .6
+.RS 4n
+A mandatory comma-separated list of attributes to be set to the specified
+values.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR \fIprop\fR=\fIvalue\fR[,...], \fB--prop\fR=\fIvalue\fR[,...]\fR
+.ad
+.sp .6
+.RS 4n
+An optional comma-separated list of properties to be set to the specified
+values. Flow properties are documented in the "Flow Properties" section, below.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBflowadm remove-flow\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] \fB-l\fR
+{\fIlink\fR | \fIflow\fR}\fR
+.ad
+.sp .6
+.RS 4n
+Remove an existing flow identified by its link or name.
+.sp
+.ne 2
+.na
+\fB\fB-t\fR, \fB--temporary\fR\fR
+.ad
+.sp .6
+.RS 4n
+The changes are temporary and will not persist across reboots. Persistence is
+the default.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-R\fR \fIroot-dir\fR, \fB--root-dir\fR=\fIroot-dir\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies an alternate root directory where \fBflowadm\fR should apply
+persistent removal.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR \fIlink\fR | \fIflow\fR, \fB--link\fR=\fIlink\fR | \fIflow\fR\fR
+.ad
+.sp .6
+.RS 4n
+If a link is specified, remove all flows from that link. If a single flow is
+specified, remove only that flow.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBflowadm show-flow\fR [\fB-pP\fR] [\fB-s\fR [\fB-i\fR \fIinterval\fR]]
+[\fB-o\fR \fIfield\fR[,...]] [\fB-l\fR \fIlink\fR] [\fIflow\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Show flow configuration information, either for all
+flows, all flows on a link, or for the specified \fIflow\fR.
+.sp
+.ne 2
+.na
+\fB\fB-o\fR \fIfield\fR[,...]\fR
+.ad
+.sp .6
+.RS 4n
+A case-insensitive, comma-separated list of output fields to display. The field
+name must be one of the fields listed below, or a special value \fBall\fR, to
+display all fields. For each flow found, the following fields can be displayed:
+.sp
+.ne 2
+.na
+\fB\fBflow\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display information for all flows on the named link or information for the
+named flow.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-z\fR \fIzonename\fR
+.ad
+.sp .6
+.RS 4n
+Operate on a link that has been delegated to the specified zone.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBflowadm add-flow\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] [\fB-z\fR \fIzonename\fR] \fB-l\fR \fIlink\fR \fB-a\fR \fIattr\fR=\fIvalue\fR[,...] \fB-p\fR \fIprop\fR=\fIvalue\fR[,...] \fIflow\fR\fR
+.ad
+.sp .6
+.RS 4n
+The name of the link the flow is on.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBipaddr\fR\fR
+.ad
+.sp .6
+.RS 4n
+IP address of the flow. This can be either local or remote depending on how the
+flow was defined.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBproto\fR\fR
+.ad
+.sp .6
+.RS 4n
+The name of the layer for protocol to be used.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-z\fR \fIzonename\fR
+.ad
+.sp .6
+.RS 4n
+Operate on a link that has been delegated to the specified zone.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR \fIlink\fR, \fB--link\fR=\fIlink\fR\fR
+.ad
+.sp .6
+.RS 4n
+Local port of service for flow.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrport\fR\fR
+.ad
+.sp .6
+.RS 4n
+Remote port of service for flow.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdsfld\fR\fR
+.ad
+.sp .6
+.RS 4n
+Differentiated services value for flow and mask used with \fBDSFIELD\fR value
+to state the bits of interest in the differentiated services field of the IP
+header.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBflowadm remove-flow\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] [\fB-z\fR \fIzonename\fR] \fB-l\fR {\fIlink\fR | \fIflow\fR}\fR
+.ad
+.sp .6
+.RS 4n
+Remove an existing flow identified by its link or name.
+.sp
+.ne 2
+.na
+\fB\fB-t\fR, \fB--temporary\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display using a stable machine-parsable format.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-P\fR, \fB--persistent\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display persistent flow property information.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-z\fR \fIzonename\fR
+.ad
+.sp .6
+.RS 4n
+Operate on a link that has been delegated to the specified zone.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR \fIlink\fR | \fIflow\fR, \fB--link\fR=\fIlink\fR | \fIflow\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display information for all flows on the named link or information for the
+named flow.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBflowadm set-flowprop\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] \fB-p\fR
+\fIprop\fR=\fIvalue\fR[,...] \fIflow\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set values of one or more properties on the flow specified by name. The
+complete list of properties can be retrieved using the \fBshow-flowprop\fR
+subcommand.
+.sp
+.ne 2
+.na
+\fB\fB-t\fR, \fB--temporary\fR\fR
+.ad
+.sp .6
+.RS 4n
+The changes are temporary and will not persist across reboots. Persistence is
+the default.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-R\fR \fIroot-dir\fR, \fB--root-dir\fR=\fIroot-dir\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies an alternate root directory where \fBflowadm\fR should apply
+persistent setting of properties.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR \fIprop\fR=\fIvalue\fR[,...], \fB--prop\fR=\fIvalue\fR[,...]\fR
+.ad
+.sp .6
+.RS 4n
+A comma-separated list of properties to be set to the specified values.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBflowadm reset-flowprop\fR [\fB-t\fR] [\fB-R\fR \fIroot-dir\fR] \fB-p\fR
+[\fIprop\fR=\fIvalue\fR[,...]] \fIflow\fR\fR
+.ad
+.sp .6
+.RS 4n
+Resets one or more properties to their default values on the specified flow. If
+no properties are specified, all properties are reset. See the
+\fBshow-flowprop\fR subcommand for a description of properties, which includes
+their default values.
+.sp
+.ne 2
+.na
+\fB\fB-t\fR, \fB--temporary\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies that the resets are temporary. Temporary resets last until the next
+reboot.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-R\fR \fIroot-dir\fR, \fB--root-dir\fR=\fIroot-dir\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies an alternate root directory where \fBflowadm\fR should apply
+persistent setting of properties.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR \fIprop\fR=\fIvalue\fR[,...], \fB--prop\fR=\fIvalue\fR[,...]\fR
+.ad
+.sp .6
+.RS 4n
+A comma-separated list of properties to be reset.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBflowadm show-flowprop\fR [\fB-cP\fR] [\fB-l\fR \fIlink\fR] [\fB-p\fR
+\fIprop\fR[,...]] [\fIflow\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Show the current or persistent values of one or more properties, either for all
+flows, flows on a specified link, or for the specified flow.
+.sp
+By default, current values are shown. If no properties are specified, all
+available flow properties are displayed. For each property, the following
+fields are displayed:
+.sp
+.ne 2
+.na
+\fB\fBFLOW\fR\fR
+.ad
+.sp .6
+.RS 4n
+The name of the flow.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPROPERTY\fR\fR
+.ad
+.sp .6
+.RS 4n
+The name of the property.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBVALUE\fR\fR
+.ad
+.sp .6
+.RS 4n
+The current (or persistent) property value. The value is shown as \fB--\fR
+(double hyphen), if it is not set, and \fB?\fR (question mark), if the value is
+unknown. Persistent values that are not set or have been reset will be shown as
+\fB--\fR and will use the system \fBDEFAULT\fR value (if any).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBDEFAULT\fR\fR
+.ad
+.sp .6
+.RS 4n
+The default value of the property. If the property has no default value,
+\fB--\fR (double hyphen), is shown.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPOSSIBLE\fR\fR
+.ad
+.sp .6
+.RS 4n
+A comma-separated list of the values the property can have. If the values span
+a numeric range, the minimum and maximum values might be shown as shorthand. If
+the possible values are unknown or unbounded, \fB--\fR (double hyphen), is
+shown.
+.RE
+
+Flow properties are documented in the "Flow Properties" section, below.
+.sp
+.ne 2
+.na
+\fB\fB-c\fR
+.ad
+.sp .6
+.RS 4n
+Display using a stable machine-parsable format.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-P\fR, \fB--persistent\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display persistent flow property information.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR \fIprop\fR[,...], \fB--prop\fR=\fIprop\fR[,...]\fR
+.ad
+.sp .6
+.RS 4n
+A comma-separated list of properties to show.
+.RE
+
+.RE
+
+.SS "Flow Attributes"
+The flow operand that identifies a flow in a \fBflowadm\fR command is a
+comma-separated list of one or more keyword, value pairs from the list below.
+.sp
+.ne 2
+.na
+\fB\fBlocal_ip\fR=\fIvalue\fR[\fB/\fR\fIprefix_len\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Identifies a network flow by the local IP address. \fIvalue\fR must be a IPv4
+address in dotted-decimal notation or an IPv6 address in colon-separated
+notation. \fIprefix_len\fR is optional.
+.sp
+If \fIprefix_len\fR is specified, it describes the netmask for a subnet
+address, following the same notation convention of \fBifconfig\fR(8) and
+\fBroute\fR(8) addresses. If unspecified, the given IP address will be
+considered as a host address for which the default prefix length for a IPv4
+address is \fB/32\fR and for IPv6 is \fB/128\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBremote_ip\fR=\fIvalue\fR[\fB/\fR\fIprefix_len\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Identifies a network flow by the remote IP address. The syntax is the same as
+the \fBlocal_ip\fR attribute.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBtransport\fR={\fBtcp\fR|\fBudp\fR|\fBsctp\fR|\fBicmp\fR|\fBicmpv6\fR}\fR
+.ad
+.sp .6
+.RS 4n
+Identifies a layer 4 protocol to be used. It is typically used in combination
+with local_port to identify the service that needs special attention.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBlocal_port\fR=\fIport\fR\fR
+.ad
+.sp .6
+.RS 4n
+Identifies a service specified by the local port.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBremote_port\fR=\fIport\fR\fR
+.ad
+.sp .6
+.RS 4n
+Identifies a service specified by the remote port.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdsfield\fR=\fIvalue\fR[\fB:\fR\fIdsfield_mask\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Identifies the 8-bit differentiated services field (as defined in RFC 2474).
+.sp
+The optional \fIdsfield_mask\fR is used to state the bits of interest in the
+differentiated services field when comparing with the \fBdsfield\fR value. A
+\fB0\fR in a bit position indicates that the bit value needs to be ignored and
+a \fB1\fR indicates otherwise. The mask can range from \fB0x01\fR to
+\fB0xff\fR. If \fIdsfield_mask\fR is not specified, the default mask \fB0xff\fR
+is used. Both the \fBdsfield\fR value and mask must be in hexadecimal.
+.RE
+
+.sp
+.LP
+The following six types of combinations of attributes are supported:
+.sp
+.in +2
+.nf
+local_ip=\fIaddress\fR[/\fIprefixlen\fR]
+remote_ip=\fIaddress\fR[/\fIprefixlen\fR]
+transport={tcp|udp|sctp|icmp|icmpv6}
+transport={tcp|udp|sctp},local_port=\fIport\fR
+transport={tcp|udp|sctp},remote_port=\fIport\fR
+dsfield=\fIval\fR[:\fIdsfield_mask\fR]
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+On a given link, the types of combinations above are mutually exclusive. An
+attempt to create flows of different types on a given link will fail.
+.SS "Restrictions"
+There are individual flow restrictions and flow restrictions per zone.
+.SS "Individual Flow Restrictions"
+Restrictions on individual flows do not require knowledge of other flows that
+have been added to the link.
+.sp
+.LP
+An attribute can be listed only once for each flow. For example, the following
+command is not valid:
+.sp
+.in +2
+.nf
+# \fBflowadm add-flow -l vnic1 -a local_port=80,local_port=8080 httpflow\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+\fBtransport\fR and \fBlocal_port\fR:
+.sp
+.LP
+TCP, UDP, or SCTP flows can be specified with a local port. An ICMP or ICMPv6
+flow that specifies a port is not allowed. The following commands are valid:
+.sp
+.in +2
+.nf
+# \fBflowadm add-flow -l e1000g0 -a transport=udp udpflow\fR
+# \fBflowadm add-flow -l e1000g0 -a transport=tcp,local_port=80 \e
+udp80flow\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The following commands are not valid:
+.sp
+.in +2
+.nf
+# \fBflowadm add-flow -l e1000g0 -a local_port=25 flow25\fR
+# \fBflowadm add-flow -l e1000g0 -a transport=icmpv6,local_port=16 \e
+flow16\fR
+.fi
+.in -2
+.sp
+
+.SS "Flow Restrictions Per Zone"
+Within a zone, no two flows can have the same name. After adding a flow with
+the link specified, the link will not be required for display, modification, or
+deletion of the flow.
+.SS "Flow Properties"
+The following flow properties are supported. Note that the ability to set a
+given property to a given value depends on the driver and hardware.
+.sp
+.ne 2
+.na
+\fB\fBmaxbw\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets the full duplex bandwidth for the flow. The bandwidth is specified as an
+integer with one of the scale suffixes(\fBK\fR, \fBM\fR, or \fBG\fR for Kbps,
+Mbps, and Gbps). If no units are specified, the input value will be read as
+Mbps. The default is no bandwidth limit.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpriority\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets the relative priority for the flow. The value can be given as one of the
+tokens \fBhigh\fR, \fBmedium\fR, or \fBlow\fR. The default is \fBmedium\fR.
+.RE
+
+.SH EXAMPLES
+\fBExample 1 \fRCreating a Policy Around a Mission-Critical Port
+.sp
+.LP
+The command below creates a policy around inbound HTTPS traffic on an HTTPS
+server so that HTTPS obtains dedicated NIC hardware and kernel TCP/IP
+resources. The name specified, \fBhttps-1\fR, can be used later to modify or
+delete the policy.
+
+.sp
+.in +2
+.nf
+# \fBflowadm add-flow -l bge0 -a transport=TCP,local_port=443 https-1\fR
+# \fBflowadm show-flow -l bge0\fR
+FLOW LINK IPADDR PROTO LPORT RPORT DSFLD
+https1 bge0 -- tcp 443 -- --
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRModifying an Existing Policy to Add Bandwidth Resource Control
+.sp
+.LP
+The following command modifies the \fBhttps-1\fR policy from the preceding
+example. The command adds bandwidth control and give the policy a high
+priority.
+
+.sp
+.in +2
+.nf
+# \fBflowadm set-flowprop -p maxbw=500M,priority=high https-1\fR
+# \fBflowadm show-flow https-1\fR
+FLOW LINK IPADDR PROTO LPORT RPORT DSFLD
+https-1 bge0 -- tcp 443 -- --
+
+# \fBflowadm show-flowprop https-1\fR
+FLOW PROPERTY VALUE DEFAULT POSSIBLE
+https-1 maxbw 500 -- --
+https-1 priority high -- low,medium,high
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRLimiting the UDP Bandwidth Usage
+.sp
+.LP
+The following command creates a policy for UDP protocol so that it cannot
+consume more than 100Mbps of available bandwidth. The flow is named
+\fBlimit-udp-1\fR.
+
+.sp
+.in +2
+.nf
+# \fBflowadm add-flow -l bge0 -a transport=UDP -p maxbw=100M, \e
+priority=low limit-udp-1\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 4 \fRSetting Policy, Making Use of \fBdsfield\fR Attribute
+.sp
+.LP
+The following command sets a policy for EF PHB (DSCP value of 101110 from RFC
+2598) with a bandwidth of 500 Mbps and a high priority. The \fBdsfield\fR value
+for this flow will be \fB0x2e\fR (101110) with the \fBdsfield_mask\fR being
+\fB0xfc\fR (because we want to ignore the 2 least significant bits).
+
+.sp
+.in +2
+.nf
+# \fBflowadm add-flow -l bge0 -a dsfield=0x2e:0xfc \e
+-p maxbw=500M,priority=high efphb-flow\fR
+.fi
+.in -2
+.sp
+
+.SH EXIT STATUS
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.sp .6
+.RS 4n
+All actions were performed successfully.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB>0\fR\fR
+.ad
+.sp .6
+.RS 4n
+An error occurred.
+.RE
+
+.SH ATTRIBUTES
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Committed
+.TE
+
+.SH SEE ALSO
+.BR attributes (7),
+.BR dladm (8),
+.BR flowstat (8),
+.BR ifconfig (8),
+.BR route (8)
+
+.SH NOTES
+The display of statistics by the \fBshow-flow\fR subcommand, and the
+\fBshow-usage\fR subcommand, have been removed. This functionality can
+now be accessed using the \fBflowstat\fR(8) utility.
diff --git a/usr/src/man/man8/fmadm.8 b/usr/src/man/man8/fmadm.8
new file mode 100644
index 0000000000..4d06f57998
--- /dev/null
+++ b/usr/src/man/man8/fmadm.8
@@ -0,0 +1,473 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 2012 Joshua M. Clulow <josh@sysmgr.org>
+.\" Copyright 2019 Peter Tribble
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH FMADM 8 "Jan 14, 2020"
+.SH NAME
+fmadm \- fault management configuration tool
+.SH SYNOPSIS
+.nf
+\fBfmadm\fR [\fB-q\fR] [\fIsubcommand\fR [\fIarguments\fR]]
+.fi
+
+.SH DESCRIPTION
+The \fBfmadm\fR utility can be used by administrators and service personnel to
+view and modify system configuration parameters maintained by the Fault
+Manager, \fBfmd\fR(8). \fBfmd\fR receives telemetry information relating to
+problems detected by the system software, diagnoses these problems, and
+initiates proactive self-healing activities such as disabling faulty
+components.
+.sp
+.LP
+\fBfmadm\fR can be used to:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+view the set of diagnosis engines and agents that are currently participating
+in fault management,
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+view the list of system components that have been diagnosed as faulty, and
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+perform administrative tasks related to these entities.
+.RE
+.sp
+.LP
+The Fault Manager attempts to automate as many activities as possible, so use
+of \fBfmadm\fR is typically not required. When the Fault Manager needs help
+from a human administrator, it produces a message indicating its needs. It also
+refers you to a knowledge article on http://illumos.org/msg/. This web site
+might ask you to use \fBfmadm\fR or one of the other fault management utilities
+to gather more information or perform additional tasks. The documentation for
+\fBfmd\fR(8), \fBfmdump\fR(8), and \fBfmstat\fR(8) describe more about tools
+to observe fault management activities.
+.sp
+.LP
+The \fBfmadm\fR utility requires the user to possess the \fBPRIV_SYS_ADMIN\fR
+privilege. See \fBprivileges\fR(7). The \fBfmadm\fR \fBload\fR subcommand
+requires that the user possess all privileges.
+.SS "SUBCOMMANDS"
+\fBfmadm\fR accepts the following subcommands. Some of the subcommands accept
+or require additional options and operands:
+.sp
+.ne 2
+.na
+\fB\fBfmadm acquit\fR \fIfmri\fR \fB|\fR \fIlabel\fR [\fIuuid\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Notify the Fault Manager that the specified resource is not to be considered to
+be a suspect in the fault event identified by \fIuuid\fR, or if no UUID is
+specified, then in any fault or faults that have been detected. The \fBfmadm
+acquit\fR subcommand should be used only at the direction of a documented
+repair procedure. Administrators might need to apply additional commands to
+re-enable a previously faulted resource.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfmadm acquit\fR \fIuuid\fR\fR
+.ad
+.sp .6
+.RS 4n
+Notify the Fault Manager that the fault event identified by \fIuuid\fR can be
+safely ignored. The \fBfmadm acquit\fR subcommand should be used only at the
+direction of a documented repair procedure. Administrators might need to
+apply additional commands to re-enable any previously faulted resources.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfmadm config\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display the configuration of the Fault Manager itself, including the module
+name, version, and description of each component module. Fault Manager modules
+provide services such as automated diagnosis, self-healing, and messaging for
+hardware and software present on the system.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfmadm faulty\fR [\fB-afgiprsv\fR] [\fB-n\fR \fImax\fR] [\fB-u\fR
+\fIuuid\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Display status information for resources that the Fault Manager currently
+believes to be faulty.
+.sp
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-a\fR\fR
+.ad
+.RS 10n
+Display all faults. By default, the \fBfmadm faulty\fR command only lists
+output for resources that are currently present and faulty. If you specify the
+\fB-a\fR option, all resource information cached by the Fault Manager is
+listed, including faults which have been automatically corrected or where no
+recovery action is needed. The listing includes information for resources that
+might no longer be present in the system.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR\fR
+.ad
+.RS 10n
+Display faulty \fBfru's\fR (Field replaceable units).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-g\fR\fR
+.ad
+.RS 10n
+Group together faults which have the same fru, class and fault message.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-i\fR\fR
+.ad
+.RS 10n
+Display persistent cache identifier for each resource in the Fault Manager.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR \fImax\fR\fR
+.ad
+.RS 10n
+If faults or resources are grouped together with the \fB-a\fR or \fB-g\fR
+options, limit the output to \fImax\fR entries.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR\fR
+.ad
+.RS 10n
+Pipe output through pager with form feed between each fault.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-r\fR\fR
+.ad
+.RS 10n
+Display Fault Management Resource with their Identifier (FMRI) and their fault
+management state.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR\fR
+.ad
+.RS 10n
+Display 1 line fault summary for each fault event.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-u\fR \fIuuid\fR\fR
+.ad
+.RS 10n
+Only display fault with given \fBuuid\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.RS 10n
+Display full output.
+.RE
+
+The percentage certainty is displayed if a fault has multiple suspects, either
+of different classes or on different \fBfru\fR's. If more than one resource is
+on the same \fBfru\fR and it is not 100% certain that the fault is associated
+with the \fBfru\fR, the maximum percentage certainty of the possible suspects
+on the \fBfru\fR is displayed.
+.RE
+
+.sp
+.LP
+The Fault Manager associates the following states with every resource for which
+telemetry information has been received:
+.sp
+.ne 2
+.na
+\fB\fBok\fR\fR
+.ad
+.sp .6
+.RS 4n
+The resource is present and in use and has no known problems so far as the
+Fault Manager is concerned.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBunknown\fR\fR
+.ad
+.sp .6
+.RS 4n
+The resource is not present or not usable but has no known problems. This might
+indicate the resource has been disabled or deconfigured by an administrator.
+Consult appropriate management tools for more information.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfaulted\fR\fR
+.ad
+.sp .6
+.RS 4n
+The resource is present but is not usable because one or more problems have
+been diagnosed by the Fault Manager. The resource has been disabled to prevent
+further damage to the system.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdegraded\fR\fR
+.ad
+.sp .6
+.RS 4n
+The resource is present and usable, but one or more problems have been
+diagnosed in the resource by the Fault Manager.
+.sp
+If all affected resources are in the same state, this is reflected in the
+message at the end of the list. Otherwise the state is given after each
+affected resource.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfmadm flush\fR \fIfmri\fR\fR
+.ad
+.sp .6
+.RS 4n
+Flush the information cached by the Fault Manager for the specified resource,
+named by its FMRI. This subcommand should only be used when indicated by a
+documented repair procedure. Typically, the use of this command is not
+necessary as the Fault Manager keeps its cache up-to-date automatically. If a
+faulty resource is flushed from the cache, administrators might need to apply
+additional commands to enable the specified resource.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfmadm load\fR \fIpath\fR\fR
+.ad
+.sp .6
+.RS 4n
+Load the specified Fault Manager module. \fIpath\fR must be an absolute path
+and must refer to a module present in one of the defined directories for
+modules. Typically, the use of this command is not necessary as the Fault
+Manager loads modules automatically when the operating system initially boots
+or as needed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfmadm unload\fR \fImodule\fR\fR
+.ad
+.sp .6
+.RS 4n
+Unload the specified Fault Manager module. Specify \fImodule\fR using the
+basename listed in the \fBfmadm config\fR output. Typically, the use of this
+command is not necessary as the Fault Manager loads and unloads modules
+automatically based on the system configuration
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfmadm repaired\fR \fIfmri\fR \fB|\fR \fIlabel\fR\fR
+.ad
+.sp .6
+.RS 4n
+Notify the Fault Manager that a repair procedure has been carried out on the
+specified resource. The \fBfmadm repaired\fR subcommand should be used only at
+the direction of a documented repair procedure. Administrators might need
+to apply additional commands to re-enable a previously faulted resource.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfmadm replaced\fR \fIfmri\fR \fB|\fR \fIlabel\fR\fR
+.ad
+.sp .6
+.RS 4n
+Notify the Fault Manager that the specified resource has been replaced. This
+command should be used in those cases where the Fault Manager is unable to
+automatically detect the replacement. The \fBfmadm replaced\fR subcommand
+should be used only at the direction of a documented repair procedure.
+Administrators might need to apply additional commands to re-enable a
+previously faulted resource.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfmadm reset\fR [\fB-s\fR \fIserd\fR\fB]\fR \fImodule\fR\fR
+.ad
+.sp .6
+.RS 4n
+Reset the specified Fault Manager module or module subcomponent. If the
+\fB-s\fR option is present, the specified Soft Error Rate Discrimination (SERD)
+engine is reset within the module. If the \fB-s\fR option is not present, the
+entire module is reset and all persistent state associated with the module is
+deleted. The \fBfmadm reset\fR subcommand should only be used at the direction
+of a documented repair procedure. The use of this command is typically not
+necessary as the Fault Manager manages its modules automatically.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfmadm rotate\fR \fBerrlog | fltlog\fR\fR
+.ad
+.sp .6
+.RS 4n
+The \fBrotate\fR subcommand is a helper command for \fBlogadm\fR(8), so that
+\fBlogadm\fR can rotate live log files correctly. It is not intended to be
+invoked directly. Use one of the following commands to cause the appropriate
+logfile to be rotated, if the current one is not zero in size:
+.sp
+.in +2
+.nf
+# \fBlogadm -p now -s 1b /var/fm/fmd/errlog\fR
+# \fBlogadm -p now -s 1b /var/fm/fmd/fltlog\fR
+.fi
+.in -2
+.sp
+
+.RE
+
+.SH OPTIONS
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-q\fR\fR
+.ad
+.RS 6n
+Set quiet mode. \fBfmadm\fR does not produce messages indicating the result of
+successful operations to standard output.
+.RE
+
+.SH OPERANDS
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fB\fIcmd\fR\fR
+.ad
+.RS 8n
+The name of a subcommand listed in \fBSUBCOMMANDS\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIargs\fR\fR
+.ad
+.RS 8n
+One or more options or arguments appropriate for the selected \fIsubcommand\fR,
+as described in \fBSUBCOMMANDS\fR.
+.RE
+
+.SH EXIT STATUS
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 5n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB1\fR\fR
+.ad
+.RS 5n
+An error occurred. Errors include a failure to communicate with \fBfmd\fR or
+insufficient privileges to perform the requested operation.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB2\fR\fR
+.ad
+.RS 5n
+Invalid command-line options were specified.
+.RE
+
+.SH ATTRIBUTES
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability See below.
+.TE
+
+.sp
+.LP
+The command-line options are Committed. The human-readable output is
+not-an-interface.
+.SH SEE ALSO
+.BR attributes (7),
+.BR privileges (7),
+.BR fmd (8),
+.BR fmdump (8),
+.BR fmstat (8),
+.BR logadm (8),
+.BR syslogd (8)
+.sp
+.LP
+http://illumos.org/msg/
diff --git a/usr/src/man/man8/fmd.8 b/usr/src/man/man8/fmd.8
new file mode 100644
index 0000000000..c3aaebb817
--- /dev/null
+++ b/usr/src/man/man8/fmd.8
@@ -0,0 +1,180 @@
+'\" te
+.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 2012 Joshua M. Clulow <josh@sysmgr.org>
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH FMD 8 "Nov 26, 2017"
+.SH NAME
+fmd \- fault manager daemon
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/fm/fmd/fmd\fR [\fB-V\fR] [\fB-f\fR \fIfile\fR] [\fB-o\fR \fIopt\fR=\fIval\fR] [\fB-R\fR \fIdir\fR]
+.fi
+
+.SH DESCRIPTION
+.LP
+\fBfmd\fR is a daemon that runs in the background on each system.
+\fBfmd\fR receives telemetry information relating to problems detected by the
+system software, diagnoses these problems, and initiates proactive self-healing
+activities such as disabling faulty components. When appropriate, the fault
+manager also sends a message to the \fBsyslogd\fR(8) service to notify an
+administrator that a problem has been detected. The message directs
+administrators to a knowledge article on http://illumos.org/msg/, which
+explains more about the problem impact and appropriate responses.
+.sp
+.LP
+Each problem diagnosed by the fault manager is assigned a Universal Unique
+Identifier (\fBUUID\fR). The \fBUUID\fR uniquely identifies this particular
+problem across any set of systems. The \fBfmdump\fR(8) utility can be used to
+view the list of problems diagnosed by the fault manager, along with their
+\fBUUID\fRs and knowledge article message identifiers. The \fBfmadm\fR(8)
+utility can be used to view the resources on the system believed to be faulty.
+The \fBfmstat\fR(8) utility can be used to report statistics kept by the fault
+manager. The fault manager is started automatically when the operating system
+boots, so it is not necessary to use the \fBfmd\fR command directly.
+.SH OPTIONS
+.LP
+The following options are supported
+.sp
+.ne 2
+.na
+\fB\fB-f\fR \fIfile\fR\fR
+.ad
+.RS 16n
+Read the specified configuration \fIfile\fR prior to searching for any of the
+default fault manager configuration files.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-o\fR \fIopt\fR\fB=\fR\fIvalue\fR\fR
+.ad
+.RS 16n
+Set the specified fault manager option to the specified value. Fault manager
+options are currently a Private interface; see \fBattributes\fR(7) for
+information about Private interfaces.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-R\fR \fIdir\fR\fR
+.ad
+.RS 16n
+Use the specified root directory for all pathnames evaluated by the fault
+manager, instead of the default root (\fB/\fR).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-V\fR\fR
+.ad
+.RS 16n
+Print the fault manager's version to stdout and exit.
+.RE
+
+.SH EXIT STATUS
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR \fR
+.ad
+.RS 6n
+Successful completion
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB1\fR\fR
+.ad
+.RS 6n
+An error occurred which prevented the fault manager from initializing, such as
+failure to open the telemetry transport.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB2\fR\fR
+.ad
+.RS 6n
+Invalid command-line options were specified.
+.RE
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/etc/fm/fmd\fR \fR
+.ad
+.RS 20n
+Fault manager configuration directory
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/fm/fmd\fR \fR
+.ad
+.RS 20n
+Fault manager library directory
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/fm/fmd\fR\fR
+.ad
+.RS 20n
+Fault manager log directory
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.LP
+.BR svcs (1),
+.BR attributes (7),
+.BR smf (7),
+.BR fmadm (8),
+.BR fmdump (8),
+.BR fmstat (8),
+.BR syslogd (8)
+.sp
+.LP
+http://illumos.org/msg/
+.SH NOTES
+.LP
+The Fault Manager is managed by the service management facility, \fBsmf\fR(7),
+under the service identifier:
+.sp
+.in +2
+.nf
+ svc:/system/fmd:default
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The service's status can be queried using the \fBsvcs\fR(1) command.
+Administrators should not disable the Fault Manager service.
diff --git a/usr/src/man/man8/fmdump.8 b/usr/src/man/man8/fmdump.8
new file mode 100644
index 0000000000..4b48391ddf
--- /dev/null
+++ b/usr/src/man/man8/fmdump.8
@@ -0,0 +1,650 @@
+'\" te
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 2012 Joshua M. Clulow <josh@sysmgr.org>
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH FMDUMP 8 "Jan 14, 2020"
+.SH NAME
+fmdump \- fault management log viewer
+.SH SYNOPSIS
+.nf
+\fBfmdump\fR [\fB-efmvV\fR] [\fB-c\fR \fIclass\fR] [\fB-R\fR \fIdir\fR] [\fB-t\fR \fItime\fR] [\fB-T\fR \fItime\fR]
+ [\fB-u\fR \fIuuid\fR] [\fB-n\fR \fIname\fR[.\fIname\fR]*[=\fIvalue\fR]] [\fIfile\fR]
+.fi
+
+.SH DESCRIPTION
+The \fBfmdump\fR utility can be used to display the contents of any of the log
+files associated with the Fault Manager, \fBfmd\fR(8). The Fault
+Manager runs in the background on each system. It receives telemetry
+information relating to problems detected by the system software, diagnoses
+these problems, and initiates proactive self-healing activities such as
+disabling faulty components.
+.sp
+.LP
+The Fault Manager maintains two sets of log files for use by administrators and
+service personnel:
+.sp
+.ne 2
+.na
+\fBerror log\fR
+.ad
+.RS 13n
+A log which records error telemetry, the symptoms of problems detected by the
+system.
+.RE
+
+.sp
+.ne 2
+.na
+\fBfault log\fR
+.ad
+.RS 13n
+A log which records fault diagnosis information, the problems believed to
+explain these symptoms.
+.RE
+
+.sp
+.LP
+By default, \fBfmdump\fR displays the contents of the fault log, which records
+the result of each diagnosis made by the fault manager or one of its component
+modules.
+.sp
+.LP
+An example of a default \fBfmdump\fR display follows:
+.sp
+.in +2
+.nf
+# fmdump
+TIME UUID SUNW-MSG-ID
+Dec 28 13:01:27.3919 bf36f0ea-9e47-42b5-fc6f-c0d979c4c8f4 FMD-8000-11
+Dec 28 13:01:49.3765 3a186292-3402-40ff-b5ae-810601be337d FMD-8000-11
+Dec 28 13:02:59.4448 58107381-1985-48a4-b56f-91d8a617ad83 FMD-8000-OW
+\&...
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Each problem recorded in the fault log is identified by:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The time of its diagnosis
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+A Universal Unique Identifier (UUID) that can be used to uniquely identify this
+particular problem across any set of systems
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+A message identifier that can be used to access a corresponding knowledge
+article located on http://illumos.org/msg/
+.RE
+.sp
+.LP
+If a problem requires action by a human administrator or service technician or
+affects system behavior, the Fault Manager also issues a human-readable message
+to \fBsyslogd\fR(8). This message provides a summary of the problem and a
+reference to the knowledge article on http://illumos.org/msg/.
+.sp
+.LP
+You can use the \fB-v\fR and \fB-V\fR options to expand the display from a
+single-line summary to increased levels of detail for each event recorded in
+the log. The \fB-c\fR, \fB-t\fR, \fB-T\fR, and \fB-u\fR options can be used to
+filter the output by selecting only those events that match the specified
+\fIclass\fR, range of times, or \fIuuid\fR.
+.sp
+.LP
+If more than one filter option is present on the command-line, the options
+combine to display only those events that are selected by the logical \fBAND\fR
+of the options. If more than one instance of the same filter option is present
+on the command-line, the like options combine to display any events selected by
+the logical \fBOR\fR of the options. For example, the command:
+.sp
+.in +2
+.nf
+# fmdump -u uuid1 -u uuid2 -t 02Dec03
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+selects events whose attributes are \fB(uuid1 OR uuid2\fR) \fBAND\fR (time on
+or after 02Dec03).
+.SH OPTIONS
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-c\fR \fIclass\fR\fR
+.ad
+.sp .6
+.RS 4n
+Select events that match the specified class. The class argument can use the
+glob pattern matching syntax described in \fBsh\fR(1). The class represents a
+hierarchical classification string indicating the type of telemetry event.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-e\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display events from the fault management error log instead of the fault log.
+This option is shorthand for specifying the pathname of the error log file.
+.sp
+The error log file contains Private telemetry information. This information is
+recorded to facilitate post-mortem analysis of problems and event replay, and
+should not be parsed or relied upon for the development of scripts or other
+tools.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR\fR
+.ad
+.sp .6
+.RS 4n
+Follow the growth of the log file by waiting for additional data. \fBfmdump\fR
+enters an infinite loop where it will sleep for a second, attempt to read and
+format new data from the log file, and then go back to sleep. This loop can be
+terminated at any time by sending an interrupt (\fBControl-C\fR).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-m\fR\fR
+.ad
+.sp .6
+.RS 4n
+Print the localized diagnosis message associated with each entry in the fault
+log.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR \fIname\fR[.\fIname\fR]*[=\fIvalue\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Select fault log or error log events, depending on the \fB-e\fR option, that
+have properties with a matching name (and optionally a matching value). For
+string properties the value can be a regular expression match. Regular
+expression syntax is described in the EXTENDED REGULAR EXPRESSIONS section of
+the \fBregex\fR(7) manual page. Be careful when using the characters:
+.sp
+.in +2
+.nf
+$ * { ^ | ( ) \e
+.fi
+.in -2
+.sp
+
+\&...or a regular expression, because these are meaningful to the shell. It is
+safest to enclose any of these in single quotes. For numeric properties, the
+value can be octal, hex, or decimal.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-R\fR \fIdir\fR\fR
+.ad
+.sp .6
+.RS 4n
+Use the specified root directory for the log files accessed by \fBfmdump\fR,
+instead of the default root (\fB/\fR).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-t\fR \fItime\fR\fR
+.ad
+.sp .6
+.RS 4n
+Select events that occurred at or after the specified time. The time can be
+specified using any of the following forms:
+.sp
+.ne 2
+.na
+\fB\fB\fImm\fR/\fIdd\fR/\fIyy hh\fR:\fImm\fR:\fIss\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Month, day, year, hour in 24-hour format, minute, and second. Any amount of
+whitespace can separate the date and time. The argument should be quoted so
+that the shell interprets the two strings as a single argument.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\fImm\fR/\fIdd\fR/\fIyy hh\fR:\fImm\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Month, day, year, hour in 24-hour format, and minute. Any amount of whitespace
+can separate the date and time. The argument should be quoted so that the shell
+interprets the two strings as a single argument.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\fImm\fR/\fIdd\fR/\fIyy\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+12:00:00AM on the specified month, day, and year.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\fIddMonyy hh\fR:\fImm\fR:\fIss\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Day, month name, year, hour in 24-hour format, minute, and second. Any amount
+of whitespace can separate the date and time. The argument should be quoted so
+that the shell interprets the two strings as a single argument.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\fIddMonyy hh\fR:\fImm\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Day, month name, year, hour in 24-hour format, and minute. Any amount of
+whitespace can separate the date and time. The argument should be quoted so
+that the shell interprets the two strings as a single argument.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\fIMon\fR \fIdd\fR \fIhh\fR:\fImm\fR:\fIss\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Month, day, hour in 24-hour format, minute, and second of the current year.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\fIyyyy\fR-\fImm\fR-\fIdd\fR [T \fIhh\fR:\fImm\fR[:\fIss\fR]]\fR\fR
+.ad
+.sp .6
+.RS 4n
+Year, month, day, and optional hour in 24-hour format, minute, and second. The
+second, or hour, minute, and second, can be optionally omitted.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIddMonyy\fR\fR
+.ad
+.sp .6
+.RS 4n
+12:00:00AM on the specified day, month name, and year.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\fIhh\fR:\fImm\fR:\fIss\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Hour in 24-hour format, minute, and second of the current day.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\fIhh\fR:\fImm\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Hour in 24-hour format and minute of the current day.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIT\fR\fBns\fR | \fIT\fR\fBnsec\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fIT\fR nanoseconds ago where T is an integer value specified in base 10.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\fIT\fRus |\fIT\fRusec\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fIT\fR microseconds ago where T is an integer value specified in base 10.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIT\fR\fBms\fR | \fIT\fR\fBmsec\fR\fR
+.ad
+.sp .6
+.RS 4n
+T milliseconds ago where T is an integer value specified in base 10.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\fIT\fRs | \fIT\fRsec\fR\fR
+.ad
+.sp .6
+.RS 4n
+T seconds ago where \fIT\fR is an integer value specified in base 10.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\fIT\fRm |\fIT\fRmin\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fIT\fR minutes ago where \fIT\fR is an integer value specified in base 10.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\fIT\fRh |\fIT\fRhour\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fIT\fR hours ago where \fIT\fR is an integer value specified in base 10.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\fIT\fRd |\fIT\fRday\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fIT\fR days ago where \fIT\fR is an integer value specified in base 10.
+.RE
+
+You can append a decimal fraction of the form \fB\&.\fR\fIn\fR to any \fB-t\fR
+option argument to indicate a fractional number of seconds beyond the specified
+time.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-T\fR \fItime\fR\fR
+.ad
+.sp .6
+.RS 4n
+Select events that occurred at or before the specified time. \fItime\fR can be
+specified using any of the time formats described for the \fB-t\fR option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-u\fR \fIuuid\fR\fR
+.ad
+.sp .6
+.RS 4n
+Select fault diagnosis events that exactly match the specified \fIuuid\fR. Each
+diagnosis is associated with a Universal Unique Identifier (UUID) for
+identification purposes. The \fB-u\fR option can be combined with other options
+such as \fB-v\fR to show all of the details associated with a particular
+diagnosis.
+.sp
+If the \fB-e\fR option and \fB-u\fR option are both present, the error events
+that are cross-referenced by the specified diagnosis are displayed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display verbose event detail. The event display is enlarged to show additional
+common members of the selected events.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-V\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display very verbose event detail. The event display is enlarged to show every
+member of the name-value pair list associated with each event. In addition, for
+fault logs, the event display includes a list of cross-references to the
+corresponding errors that were associated with the diagnosis.
+.RE
+
+.SH OPERANDS
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fB\fIfile\fR\fR
+.ad
+.RS 8n
+Specifies an alternate log file to display instead of the system fault log. The
+\fBfmdump\fR utility determines the type of the specified log automatically and
+produces appropriate output for the selected log.
+.RE
+
+.SH EXAMPLES
+\fBExample 1 \fRRetrieving Given Class from \fBfmd\fR Log
+.sp
+.LP
+Use any of the following commands to retrieve information about a specified
+class from the \fBfmd\fR log. The complete class name is
+\fBereport.io.ddi.context\fR.
+
+.sp
+.in +2
+.nf
+# \fBfmdump -Ve -c 'ereport.io.ddi.context'\fR
+# \fBfmdump -Ve -c 'ereport.*.context'\fR
+# \fBfmdump -Ve -n 'class=ereport.io.ddi.context'\fR
+# \fBfmdump -Ve -n 'class=ereport.*.context'\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Any of the preceding commands produces the following output:
+
+.sp
+.in +2
+.nf
+Oct 06 2007 11:53:20.975021712 ereport.io.ddi.context
+ nvlist version: 0
+ class = ereport.io.ddi.context
+ ena = 0x1b03a15ecf00001
+ detector = (embedded nvlist)
+ nvlist version: 0
+ version = 0x0
+ scheme = dev
+ device-path = /
+ (end detector)
+
+ __ttl = 0x1
+ __tod = 0x470706b0 0x3a1da690
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRRetrieving Specific Detector Device Path from \fBfmd\fR Log
+.sp
+.LP
+The following command retrieves a detector device path from the \fBfmd\fR log.
+
+.sp
+.in +2
+.nf
+# \fBfmdump -Ve -n 'detector.device-path=.*/disk@1,0$'\fR
+Oct 06 2007 12:04:28.065660760 ereport.io.scsi.disk.rqs
+nvlist version: 0
+ class = ereport.io.scsi.disk.rqs
+ ena = 0x453ff3732400401
+ detector = (embedded nvlist)
+ nvlist version: 0
+ version = 0x0
+ scheme = dev
+ device-path = /pci@0,0/pci1000,3060@3/disk@1,0
+ (end detector)
+
+ __ttl = 0x1
+ __tod = 0x4707094c 0x3e9e758
+.fi
+.in -2
+.sp
+
+.SH EXIT STATUS
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 5n
+Successful completion. All records in the log file were examined successfully.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB1\fR\fR
+.ad
+.RS 5n
+A fatal error occurred. This prevented any log file data from being examined,
+such as failure to open the specified file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB2\fR\fR
+.ad
+.RS 5n
+Invalid command-line options were specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB3\fR\fR
+.ad
+.RS 5n
+The log file was opened successfully, but one or more log file records were not
+displayed, either due to an I/O error or because the records themselves were
+malformed. \fBfmdump\fR issues a warning message for each record that could not
+be displayed, and then continues on and attempts to display other records.
+.RE
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/var/fm/fmd\fR\fR
+.ad
+.RS 22n
+Fault management log directory
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/fm/fmd/errlog\fR\fR
+.ad
+.RS 22n
+Fault management error log
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/fm/fmd/fltlog\fR\fR
+.ad
+.RS 22n
+Fault management fault log
+.RE
+
+.SH ATTRIBUTES
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability See below.
+.TE
+
+.sp
+.LP
+The command-line options are Evolving. The human-readable error log output is
+Private. The human-readable fault log output is Evolving.
+.SH SEE ALSO
+.BR sh (1),
+.BR libexacct (3LIB),
+.BR attributes (7),
+.BR regex (7),
+.BR fmadm (8),
+.BR fmd (8),
+.BR fmstat (8),
+.BR syslogd (8)
+.sp
+.LP
+\fI\fR
+.sp
+.LP
+http://illumos.org/msg/
+.SH NOTES
+Fault logs contain references to records stored in error logs that can be
+displayed using \fBfmdump\fR \fB-V\fR to understand the errors that were used
+in the diagnosis of a particular fault. These links are preserved if an error
+log is renamed as part of log rotation. They can be broken by removing an error
+log file, or by moving it to another filesystem directory. \fBfmdump\fR can not
+display error information for such broken links. It continues to display any
+and all information present in the fault log.
diff --git a/usr/src/man/man8/fmstat.8 b/usr/src/man/man8/fmstat.8
new file mode 100644
index 0000000000..71099d861f
--- /dev/null
+++ b/usr/src/man/man8/fmstat.8
@@ -0,0 +1,311 @@
+'\" te
+.\" Copyright (c) 2005, Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 2019 Peter Tribble
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
+.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH FMSTAT 8 "Aug 26, 2019"
+.SH NAME
+fmstat \- report fault management module statistics
+.SH SYNOPSIS
+.nf
+\fBfmstat\fR [\fB-astTz\fR] [\fB-d\fR u | d ] [\fB-m\fR \fImodule\fR] [\fIinterval\fR [\fIcount\fR]]
+.fi
+
+.SH DESCRIPTION
+The \fBfmstat\fR utility can be used by administrators and service personnel to
+report statistics associated with the Fault Manager, \fBfmd\fR(8) and
+its associated set of modules. The Fault Manager runs in the background on each
+system. It receives telemetry information relating to problems detected
+by the system software, diagnoses these problems, and initiates proactive
+self-healing activities such as disabling faulty components.
+.sp
+.LP
+You can use \fBfmstat\fR to view statistics for diagnosis engines and agents
+that are currently participating in fault management. The documentation for
+\fBfmd\fR(8), \fBfmadm\fR(8), and \fBfmdump\fR(8) describes more about tools
+to observe fault management activities.
+.sp
+.LP
+If the \fB-m\fR option is present or the \fB-t\fR option is present,
+\fBfmstat\fR reports any statistics kept by the specified fault management
+module. The module list can be obtained using \fBfmadm config\fR.
+.sp
+.LP
+If the \fB-m\fR option is not present, \fBfmstat\fR reports the following
+statistics for each of its client modules:
+.sp
+.ne 2
+.na
+\fB\fBmodule\fR\fR
+.ad
+.RS 11n
+The name of the fault management module, as reported by \fBfmadm config\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBev_recv\fR\fR
+.ad
+.RS 11n
+The number of telemetry events received by the module.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBev_acpt\fR\fR
+.ad
+.RS 11n
+The number of events accepted by the module as relevant to a diagnosis.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBwait\fR\fR
+.ad
+.RS 11n
+The average number of telemetry events waiting to be examined by the module.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsvc_t\fR\fR
+.ad
+.RS 11n
+The average service time for telemetry events received by the module, in
+milliseconds.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB%w\fR\fR
+.ad
+.RS 11n
+The percentage of time that there were telemetry events waiting to be examined
+by the module.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB%b\fR\fR
+.ad
+.RS 11n
+The percentage of time that the module was busy processing telemetry events.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBopen\fR\fR
+.ad
+.RS 11n
+The number of active cases (open problem investigations) owned by the module.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsolve\fR\fR
+.ad
+.RS 11n
+The total number of cases solved by this module since it was loaded.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmemsz\fR\fR
+.ad
+.RS 11n
+The amount of dynamic memory currently allocated by this module.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBbufsz\fR\fR
+.ad
+.RS 11n
+The amount of persistent buffer space currently allocated by this module.
+.RE
+
+.sp
+.LP
+The \fBfmstat\fR utility requires the user to possess the \fBPRIV_SYS_ADMIN\fR
+privilege. See \fBprivileges\fR(7).
+.SH OPTIONS
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-a\fR\fR
+.ad
+.RS 13n
+Print all statistics for a module, including those kept on its behalf by
+\fBfmd\fR. If the \fB-a\fR option is not present, only those statistics kept by
+the module are reported. If the \fB-a\fR option is used without the \fB-m\fR
+\fImodule\fR, a set of global statistics associated with \fBfmd\fR are
+displayed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-d\fR \fBu\fR | \fBd\fR\fR
+.ad
+.RS 13n
+Display a time stamp.
+.sp
+Specify \fBu\fR for a printed representation of the internal representation of
+time. See \fBtime\fR(2). Specify \fBd\fR for standard date format. See
+\fBdate\fR(1).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-m\fR \fImodule\fR\fR
+.ad
+.RS 13n
+Print a report on the statistics associated with the specified fault management
+module, instead of the default statistics report. Modules can publish an
+arbitrary set of statistics to help Sun service the fault management software
+itself. The module statistics constitute a Private interface. See
+\fBattributes\fR(7) for information on Sun's rules for Private interfaces.
+Scripts should not be written that depend upon the values of fault management
+module statistics as they can change without notice.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR\fR
+.ad
+.RS 13n
+Print a report on Soft Error Rate Discrimination (SERD) engines associated with
+the module instead of the default module statistics report. A SERD engine is a
+construct used by fault management software to determine if a statistical
+threshold measured as \fIN\fR events in some time \fIT\fR has been exceeded.
+The \fB-s\fR option can only be used in combination with the \fB-m\fR option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-t\fR\fR
+.ad
+.RS 13n
+Print a report on the statistics associated with each fault management event
+transport. Each fault management module can provide the implementation of one
+or more event transports.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-T\fR\fR
+.ad
+.RS 13n
+Print a table of the authority information associated with each fault
+management event transport. If the \fB-m\fR option is present, only transports
+associated with the specified module are displayed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-z\fR\fR
+.ad
+.RS 13n
+Omit statistics with a zero value from the report associated with the specified
+fault management module. The \fB-z\fR option can only be used in combination
+with the \fB-m\fR option.
+.RE
+
+.SH OPERANDS
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fB\fIcount\fR\fR
+.ad
+.RS 12n
+Print only count reports, and then exit.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIinterval\fR\fR
+.ad
+.RS 12n
+Print a new report every \fIinterval\fR seconds.
+.RE
+
+.sp
+.LP
+If no \fIinterval\fR and no \fIcount\fR are specified, a single report is
+printed and \fBfmstat\fR exits. If an \fIinterval\fR is specified but no
+\fIcount\fR is specified, \fBfmstat\fR prints reports every \fIinterval\fR
+seconds indefinitely until the command is interrupted.
+.SH EXIT STATUS
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 5n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB1\fR\fR
+.ad
+.RS 5n
+A fatal error occurred. A fatal error could be the failure to communicate with
+\fBfmd\fR(8). It could also be that insufficient privileges were available to
+perform the requested operation.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB2\fR\fR
+.ad
+.RS 5n
+Invalid command-line options were specified.
+.RE
+
+.SH ATTRIBUTES
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability See below.
+.TE
+
+.sp
+.LP
+The command-line options are Evolving. The human-readable default report is
+Unstable. The human-readable module report is Private.
+.SH SEE ALSO
+.BR attributes (7),
+.BR privileges (7),
+.BR fmadm (8),
+.BR fmd (8),
+.BR fmdump (8)
diff --git a/usr/src/man/man8/fmthard.8 b/usr/src/man/man8/fmthard.8
new file mode 100644
index 0000000000..5bf261a348
--- /dev/null
+++ b/usr/src/man/man8/fmthard.8
@@ -0,0 +1,227 @@
+.\"
+.\" CDDL HEADER START
+.\"
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.\"
+.\" CDDL HEADER END
+.\"
+.\" Copyright 1989 AT&T
+.\" Copyright (c) 2002, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 2022 Toomas Soome <tsoome@me.com>
+.\"
+.Dd January 31, 2022
+.Dt FMTHARD 8
+.Os
+.Sh NAME
+.Nm fmthard
+.Nd populate label on hard disks
+.Sh SYNOPSIS
+.Nm
+.Fl d Ar data | Fl n Ar volume_name | Fl s Ar datafile Op Fl i
+.Sm off
+.Ar /dev/rdsk/c? Oo t? Oc d?s2
+.Sm on
+.Sh DESCRIPTION
+The
+.Nm
+command updates the
+.Sy VTOC
+.Pq Volume Table of Contents
+on hard disks.
+One or more of the options
+.Fl s Ar datafile ,
+.Fl d Ar data ,
+or
+.Fl n Ar volume_name
+must be used to request modifications to the disk label.
+To print disk label contents, see
+.Xr prtvtoc 8 .
+The
+.Sm off
+.Ar /dev/rdsk/c? Oo t? Oc d?s2
+.Sm on
+file must be the character special file of the device where the new label
+is to be installed.
+On x86 systems,
+.Xr fdisk 8
+must be run on the drive before
+.Nm .
+.Pp
+If you are using an x86 system, note that the term
+.Sq partition
+in this page refers to
+.Em slices
+within the x86
+.Sy fdisk
+partition on x86 machines.
+Do not confuse the partitions created by
+.Nm
+with the partitions created by
+.Xr fdisk 8 .
+.Sh OPTIONS
+The following options are supported:
+.Bl -tag -width Ds
+.It Fl d Ar data
+The
+.Ar data
+argument of this option is a string representing the information
+for a particular partition in the current
+.Sy VTOC .
+The string must be of the format
+.Em part:tag:flag:start:size
+where
+.Em part
+is the partition number,
+.Em tag
+is the
+.Sy ID
+TAG of the partition,
+.Em flag
+is the set of permission flags,
+.Em start
+is the starting sector number of the partition, and
+.Em size
+is the number of sectors in the partition.
+See the description of the
+.Ar datafile
+below for more information on these fields.
+.It Fl i
+This option allows the command to create the desired
+.Sy VTOC
+table, but prints the information to standard output instead of modifying the
+.Sy VTOC
+on the disk.
+.It Fl n Ar volume_name
+This option is used to give the disk a
+.Ar volume_name
+up to 8 characters long.
+.It Fl s Ar datafile
+This option is used to populate the
+.Sy VTOC
+according to a
+.Ar datafile
+created by the user.
+If the
+.Ar datafile
+is
+.Sy \(mi Pq a hyphen ,
+.Nm
+reads from standard input.
+The
+.Ar datafile
+format is described below.
+This option causes all of the disk partition timestamp fields to be set
+to zero.
+.sp
+Every
+.Sy VTOC
+generated by
+.Nm
+will also have partition 2, by convention, that corresponds to the whole disk.
+If the input in
+.Ar datafile
+does not specify an entry for partition 2, a default partition 2 entry will be
+created automatically in
+.Sy VTOC
+with the tag
+.Sy V_BACKUP
+and size equal to the full size of the disk.
+.sp
+The
+.Ar datafile
+contains one specification line for each partition, starting with partition 0.
+Each line is delimited by a new-line character
+.Pq Sy \en .
+If the first character of a line is an asterisk
+.Pq \&* ,
+the line is treated as a comment.
+Each line is composed of entries that are position-dependent,
+separated by white space and having the following format:
+.sp
+.Em partition tag flag starting_sector size_in_sectors
+.sp
+where the entries have the following values:
+.Bl -tag -width Ds
+.It Em partition
+The partition number.
+Currently, for Solaris SPARC, a disk can have up to 8 partitions,
+.Sy 0\(mi7 .
+Even though the
+.Em partition
+field has 4 bits, only 3 bits are currently used.
+For x86, all 4 bits are used to allow slices
+.Sy 0\(mi15 .
+Each Solaris
+.Sy fdisk
+partition can have up to 16 slices.
+.It Em tag
+The partition tag: a decimal number.
+The following are reserved codes:
+.Sy 0 Pq Sy V_UNASSIGNED ,
+.Sy 1 Pq Sy V_BOOT ,
+.Sy 2 Pq Sy V_ROOT ,
+.Sy 3 Pq Sy V_SWAP ,
+.Sy 4 Pq Sy V_USR ,
+.Sy 5 Pq Sy V_BACKUP ,
+.Sy 6 Pq Sy V_STAND ,
+.Sy 7 Pq Sy V_VAR ,
+and
+.Sy 8 Pq Sy V_HOME .
+.It Em flag
+The flag allows a partition to be flagged as unmountable or read only, the
+masks being:
+.Sy V_UNMNT 0x01 ,
+and
+.Sy V_RONLY 0x10 .
+For mountable partitions use
+.Sy 0x00 .
+.It Em starting_sector
+The sector number (decimal) on which the partition starts.
+.It Em size_in_sectors
+The number (decimal) of sectors occupied by the partition.
+.El
+.sp
+You can save the output of a
+.Xr prtvtoc 8
+command to a file, edit the file, and use it as the
+.Ar datafile
+argument to the
+.Fl s
+option.
+.El
+.Sh SEE ALSO
+.Xr uname 1 ,
+.Xr attributes 7 ,
+.Xr format 8 ,
+.Xr installboot 8 ,
+.Xr prtvtoc 8
+.Ss "x86 Only"
+.Xr fdisk 8
+.Sh NOTES
+Special care should be exercised when overwriting an existing
+.Sy VTOC ,
+as incorrect entries could result in current data being inaccessible.
+As a precaution, save the old
+.Sy VTOC .
+.sp
+For disks under two terabytes,
+.Nm
+cannot write a
+.Sy VTOC
+on an unlabeled disk.
+Use
+.Xr format 1M
+for this purpose.
diff --git a/usr/src/man/man8/format.8 b/usr/src/man/man8/format.8
new file mode 100644
index 0000000000..f4d848bca3
--- /dev/null
+++ b/usr/src/man/man8/format.8
@@ -0,0 +1,445 @@
+'\" te
+.\" Copyright (c) 2002, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH FORMAT 8 "August 29, 2021"
+.SH NAME
+format \- disk partitioning and maintenance utility
+.SH SYNOPSIS
+.nf
+\fBformat\fR [\fB-f\fR \fIcommand-file\fR] [\fB-l\fR \fIlog-file\fR] [\fB-x\fR \fIdata-file\fR]
+ [\fB-d\fR \fIdisk-name\fR] [\fB-t\fR \fIdisk-type\fR] [\fB-p\fR \fIpartition-name\fR]
+ [\fB-s\fR] [\fB-m\fR] [\fB-M\fR] [\fB-e\fR] [\fIdisk-list\fR]
+.fi
+
+.SH DESCRIPTION
+\fBformat\fR enables you to format, label, repair, and analyze disks on your
+system. Unlike previous disk maintenance programs, \fBformat\fR runs under
+SunOS. Because there are limitations to what can be done to the system disk
+while the system is running, \fBformat\fR is also supported within the
+memory-resident system environment. For most applications, however, running
+\fBformat\fR under SunOS is the more convenient approach.
+.sp
+.LP
+\fBformat\fR first uses the disk list defined in \fIdata-file\fR if the
+\fB-x\fR option is used. \fBformat\fR then checks for the \fBFORMAT_PATH\fR
+environment variable, a colon-separated list of filenames and/or directories.
+In the case of a directory, \fBformat\fR searches for a file named
+\fBformat.dat\fR in that directory; a filename should be an absolute pathname,
+and is used without change. \fBformat\fR adds all disk and partition
+definitions in each specified file to the working set. Multiple identical
+definitions are silently ignored. If \fBFORMAT_PATH\fR is not set, the path
+defaults to \fB/etc/format.dat\fR.
+.sp
+.LP
+\fIdisk-list\fR is a list of disks in the form \fBc?t?d?\fR or
+\fB/dev/rdsk/c?t?d?s?\fR. With the latter form, shell wildcard specifications
+are supported. For example, specifying \fB/dev/rdsk/c2*\fR causes \fBformat\fR
+to work on all drives connected to controller \fBc2\fR only. If no
+\fIdisk-list\fR is specified, \fBformat\fR lists all the disks present in the
+system that can be administered by \fBformat\fR.
+.sp
+.LP
+Removable media devices are listed only when users execute \fBformat\fR in
+expert mode (option \fB-e\fR). This feature is provided for backward
+compatibility. Use \fBrmformat\fR(1) for rewritable removable media devices.
+.SH OPTIONS
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-d\fR \fIdisk-name\fR\fR
+.ad
+.RS 21n
+Specify which disk should be made current upon entry into the program. The disk
+is specified by its logical name (for instance, \fB-d\fR \fBc0t1d0\fR). This
+can also be accomplished by specifying a single disk in the disk list.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-e\fR\fR
+.ad
+.RS 21n
+Enable \fBSCSI\fR expert menu. Note this option is not recommended for casual
+use.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR \fIcommand-file\fR\fR
+.ad
+.RS 21n
+Take command input from \fIcommand-file\fR rather than the standard input. The
+file must contain commands that appear just as they would if they had been
+entered from the keyboard. With this option, \fBformat\fR does not issue
+\fBcontinue?\fR prompts; there is no need to specify y(es) or n(o) answers in
+the \fIcommand-file\fR. In non-interactive mode, \fBformat\fR does not
+initially expect the input of a disk selection number. The user must specify
+the current working disk with the \fB-d\fR \fIdisk-name\fR option when format
+is invoked, or specify \fBdisk\fR and the disk selection number in the
+\fIcommand-file\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR \fIlog-file\fR\fR
+.ad
+.RS 21n
+Log a transcript of the \fBformat\fR session to the indicated \fIlog-file\fR,
+including the standard input, the standard output and the standard error.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-m\fR\fR
+.ad
+.RS 21n
+Enable extended messages. Provides more detailed information in the event of an
+error.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-M\fR\fR
+.ad
+.RS 21n
+Enable extended and diagnostic messages. Provides extensive information on the
+state of a \fBSCSI\fR device's mode pages, during formatting.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR \fIpartition-name\fR\fR
+.ad
+.RS 21n
+Specify the partition table for the disk which is current upon entry into the
+program. The table is specified by its name as defined in the data file. This
+option can be used only if a disk is being made current, and its type is either
+specified or available from the disk label.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR\fR
+.ad
+.RS 21n
+Silent. Suppress all of the standard output. Error messages are still
+displayed. This is generally used in conjunction with the \fB-f\fR option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-t\fR \fIdisk-type\fR\fR
+.ad
+.RS 21n
+Specify the type of disk which is current upon entry into the program. A disk's
+type is specified by name in the data file. This option can only be used if a
+disk is being made current as described above.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-x\fR \fIdata-file\fR\fR
+.ad
+.RS 21n
+Use the list of disks contained in \fIdata-file\fR.
+.RE
+
+.SH USAGE
+When you invoke format with no options or with the \fB-e\fR, \fB-l\fR,
+\fB-m\fR, \fB-M\fR, or \fB-s\fR options, the program displays a numbered list
+of available disks and prompts you to specify a disk by list number. If the
+machine has more than 10 disks, press SPACE to see the next screenful of disks.
+.sp
+.LP
+You can specify a disk by list number even if the disk is not displayed in the
+current screenful. For example, if the current screen shows disks 11-20, you
+can enter \fB25\fR to specify the twenty-fifth disk on the list. If you enter a
+number for a disk that is not currently displayed, \fBformat\fR prompts you to
+verify your selection. If you enter a number from the displayed list,
+\fBformat\fR silently accepts your selection.
+.sp
+.LP
+After you specify a disk, \fBformat\fR displays its main menu. This menu
+enables you to perform the following tasks:
+.sp
+.ne 2
+.na
+\fBanalyze\fR
+.ad
+.RS 13n
+Run read, write, compare tests, and data purge. The data purge function
+implements the National Computer Security Center Guide to Understanding Data
+Remnance (\fBNCSC-TG-025\fR version 2) Overwriting Algorithm. See NOTES.
+.RE
+
+.sp
+.ne 2
+.na
+\fBbackup\fR
+.ad
+.RS 13n
+Search for backup labels.
+.RE
+
+.sp
+.ne 2
+.na
+\fBcache\fR
+.ad
+.RS 13n
+Enable, disable, and query the state of the write cache and read cache. This
+menu item only appears when \fBformat\fR is invoked with the \fB-e\fR option,
+and is only supported on \fBSCSI\fR devices.
+.RE
+
+.sp
+.ne 2
+.na
+\fBcurrent\fR
+.ad
+.RS 13n
+Display the device name, the disk geometry, and the pathname to the disk
+device.
+.RE
+
+.sp
+.ne 2
+.na
+\fBdefect\fR
+.ad
+.RS 13n
+Retrieve and print defect lists. This option is supported only on \fBSCSI\fR
+devices. \fBIDE\fR disks perform automatic defect management. Upon using the
+\fBdefect\fR option on an \fBIDE\fR disk, you receive the message:
+.sp
+.in +2
+.nf
+Controller does not support defect management
+or disk supports automatic defect management.
+.fi
+.in -2
+.sp
+
+.RE
+
+.sp
+.ne 2
+.na
+\fBdisk\fR
+.ad
+.RS 13n
+Choose the disk that will be used in subsequent operations (known as the
+current disk.)
+.RE
+
+.sp
+.ne 2
+.na
+\fBfdisk\fR
+.ad
+.RS 13n
+Run the \fBfdisk\fR(8) program to create a \fBfdisk\fR partition for Solaris
+software (x86 based systems only).
+.RE
+
+.sp
+.ne 2
+.na
+\fBformat\fR
+.ad
+.RS 13n
+Format and verify the current disk. This option is supported only on \fBSCSI\fR
+devices. \fBIDE\fR disks are pre-formatted by the manufacturer. Upon using the
+\fBformat\fR option on an \fBIDE\fR disk, you receive the message:
+.sp
+.in +2
+.nf
+Cannot format this drive. Please use your
+manufacturer-supplied formatting utility.
+.fi
+.in -2
+.sp
+
+.RE
+
+.sp
+.ne 2
+.na
+\fBinquiry\fR
+.ad
+.RS 13n
+Display the vendor, product name, and revision level of the current drive.
+.RE
+
+.sp
+.ne 2
+.na
+\fBlabel\fR
+.ad
+.RS 13n
+Write a new label to the current disk.
+.RE
+
+.sp
+.ne 2
+.na
+\fBpartition\fR
+.ad
+.RS 13n
+Create and modify slices.
+.RE
+
+.sp
+.ne 2
+.na
+\fBquit\fR
+.ad
+.RS 13n
+Exit the format menu.
+.RE
+
+.sp
+.ne 2
+.na
+\fBrepair\fR
+.ad
+.RS 13n
+Repair a specific block on the disk.
+.RE
+
+.sp
+.ne 2
+.na
+\fBsave\fR
+.ad
+.RS 13n
+Save new disk and slice information.
+.RE
+
+.sp
+.ne 2
+.na
+\fBtype\fR
+.ad
+.RS 13n
+Select (define) a disk type.
+.RE
+
+.sp
+.ne 2
+.na
+\fBverify\fR
+.ad
+.RS 13n
+Read and display labels. Print information such as the number of cylinders,
+alternate cylinders, heads, sectors, and the partition table.
+.RE
+
+.sp
+.ne 2
+.na
+\fBvolname\fR
+.ad
+.RS 13n
+Label the disk with a new eight character volume name.
+.RE
+
+.SH ENVIRONMENT VARIABLES
+.ne 2
+.na
+\fB\fBFORMAT_PATH\fR\fR
+.ad
+.RS 15n
+a colon-separated list of filenames and/or directories of disk and partition
+definitions. If a directory is specified, \fBformat\fR searches for the file
+\fBformat.dat\fR in that directory.
+.RE
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/etc/format.dat\fR\fR
+.ad
+.RS 19n
+default data file
+.RE
+
+.SH SEE ALSO
+.BR rmformat (1),
+.BR sd (4D),
+.BR format.dat (5),
+.BR attributes (7),
+.BR fmthard (8),
+.BR prtvtoc (8)
+.sp
+.LP
+\fI\fR
+.SS "x86 Only"
+.BR fdisk (8)
+.SH WARNINGS
+When the \fBformat\fR function is selected to format the Maxtor 207MB disk, the
+following message displays:
+.sp
+.in +2
+.nf
+Mode sense page(4) reports rpm value as 0, adjusting it to 3600
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+This is a drive bug that may also occur with older third party drives. The
+above message is not an error; the drive will still function correctly.
+.sp
+.LP
+Cylinder 0 contains the partition table (disk label), which can be overwritten
+if used in a raw disk partition by third party software.
+.sp
+.LP
+\fBformat\fR supports writing \fBEFI\fR-compliant disk labels in order to
+support disks or \fBLUN\fRs with capacities greater than one terabyte. However,
+care should be exercised since many software components, such as filesystems
+and volume managers, are still restricted to capacities of one terabyte or
+less. See the \fISystem Administration Guide: Basic Administration\fR for
+additional information.
+.sp
+.LP
+By default, on an unlabeled disk, EFI labels will be written on disks larger
+than 2 TB. When \fBformat\fR is invoked with the \fB-e\fR option, on writing
+the label, the label type can be chosen. Booting is not currently supported on
+a disk with an EFI label.
+.SH NOTES
+\fBformat\fR provides a help facility you can use whenever format is expecting
+input. You can request help about what information is expected by simply
+entering a question mark (\fB?\fR) and \fBformat\fR prints a brief description
+of what type of input is needed. If you enter a \fB?\fR at the menu prompt, a
+list of available commands is displayed.
+.sp
+.LP
+For \fBSCSI\fR disks, formatting is done with both Primary and Grown defects
+list by default. However, if only Primary list is extracted in defect menu
+before formatting, formatting will be done with Primary list only.
+.sp
+.LP
+Changing the state of the caches is only supported on \fBSCSI\fR devices, and
+not all \fBSCSI\fR devices support changing or saving the state of the caches.
+.sp
+.LP
+The \fBNCSC-TG-025\fR algorithm for overwriting meets the \fBDoD\fR 5200.28-M
+(\fBADP\fR Security Manual) Eraser Procedures specification. The \fBNIST\fR
+Guidelines for Media Sanitization (\fBNIST\fR \fBSP\fR 800-88) also reference
+this algorithm.
diff --git a/usr/src/man/man8/fruadm.8 b/usr/src/man/man8/fruadm.8
new file mode 100644
index 0000000000..d4eb85c836
--- /dev/null
+++ b/usr/src/man/man8/fruadm.8
@@ -0,0 +1,215 @@
+'\" te
+.\" Copyright (c) 2002, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH FRUADM 8 "Feb 22, 2002"
+.SH NAME
+fruadm \- prints and updates customer data associated with FRUs
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/platform/sun4u/sbin/fruadm\fR
+.fi
+
+.LP
+.nf
+\fB/usr/platform/sun4u/sbin/fruadm\fR \fB-l\fR
+.fi
+
+.LP
+.nf
+\fB/usr/platform/sun4u/sbin/fruadm\fR [\fB-r\fR] \fIpath\fR [\fItext\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBfruadm\fR prints or sets the customer data for Field-Replaceable Units
+(\fBFRU\fRs).
+.sp
+.LP
+Without arguments, \fBfruadm\fR prints the paths of all \fBFRU ID\fR-capable
+\fBFRU\fRs (containers) in the system, along with the contents of the customer
+data record, if present, for each such \fBFRU\fR; for \fBFRU\fRs without
+customer data, \fBfruadm\fR prints only the container's path.
+.sp
+.LP
+ Only a privileged user can create or update data in containers. The privileges
+required to perform these write operations are hardware dependent. Typically, a
+default system configuration restricts write operations to the superuser or to
+the platform-administrator user.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-l\fR\fR
+.ad
+.RS 6n
+List the system's frutree paths.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-r\fR\fR
+.ad
+.RS 6n
+Recursively display or update the data for all containers rooted at the
+argument \fIpath\fR.
+.RE
+
+.SH OPERANDS
+.sp
+.LP
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fB\fIpath\fR\fR
+.ad
+.RS 8n
+A full or partial system frutree path for or under which to print or set the
+customer data. The first field of each line of output of \fBfruadm \fR\fB-l\fR
+gives the valid full \fBfrutree\fR paths for the system.
+.sp
+Paths can include shell meta-characters; such paths should be quoted
+appropriately for the user's shell. For partial paths, the first matching full
+path is selected for display or update. Without the \fB-r\fR option, the path
+must be that of a container; with the \fB-r\fR option, all containers (if any)
+under \fIpath\fR will be selected.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fItext\fR\fR
+.ad
+.RS 8n
+Up to 80 characters of text set as the customer data. If the text contains
+white space or shell metacharacters, it should be quoted appropriately for the
+user's shell.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRDisplaying All Customer Data
+.sp
+.LP
+The following example prints all customer data available from \fBFRU\fRs on the
+system. For containers with no customer data, only the containers' paths will
+be listed.
+
+.sp
+.in +2
+.nf
+example% fruadm
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRDisplaying Customer Data For a Single FRU
+.sp
+.LP
+The following command prints the customer data, if present, for the specified
+\fBFRU\fR:
+
+.sp
+.in +2
+.nf
+example% fruadm /frutree/chassis/system-board
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRDisplaying Customer Data For a Single FRU
+.sp
+.LP
+The following command prints the customer data, if present, for the first
+\fBmem-module\fR found:
+
+.sp
+.in +2
+.nf
+example% fruadm mem-module
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 4 \fR Setting Customer Data
+.sp
+.LP
+The following example sets the customer data for a \fBFRU\fR:
+
+.sp
+.in +2
+.nf
+example# fruadm system-board 'Asset Tag 123456'
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 5 \fRSetting Customer Data
+.sp
+.LP
+The following command sets the customer data for all \fBFRU\fRs under
+\fBchassis\fR:
+
+.sp
+.in +2
+.nf
+example# fruadm -r /frutree/chassis "Property of XYZ, Inc."
+.fi
+.in -2
+.sp
+
+.SH EXIT STATUS
+.sp
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR \fR
+.ad
+.RS 6n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB>\fB0\fR\fR
+.ad
+.RS 6n
+An error occurred.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Unstable
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7),
+.BR prtfru (8)
diff --git a/usr/src/man/man8/fsck.8 b/usr/src/man/man8/fsck.8
new file mode 100644
index 0000000000..e09132b4d2
--- /dev/null
+++ b/usr/src/man/man8/fsck.8
@@ -0,0 +1,404 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 2015 Nexenta Systems, Inc. All rights reserved.
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH FSCK 8 "Sep 8, 2015"
+.SH NAME
+fsck \- check and repair file systems
+.SH SYNOPSIS
+.LP
+.nf
+\fBfsck\fR [\fB-F\fR \fIFSType\fR] [\fB-m\fR] [\fB-V\fR] [\fB-v\fR] [\fIspecial\fR]...
+.fi
+
+.LP
+.nf
+\fBfsck\fR [\fB-F\fR \fIFSType\fR] [\fB-n\fR | N | y | Y] [\fB-V\fR] [\fB-v\fR]
+ [\fB-o\fR \fIFSType-specific-options\fR] [\fIspecial\fR]...
+.fi
+
+.SH DESCRIPTION
+.LP
+\fBfsck\fR audits and interactively repairs inconsistent file system
+conditions. If the file system is inconsistent the default action for each
+correction is to wait for the user to respond \fByes\fR or \fBno\fR. If the
+user does not have write permission \fBfsck\fR defaults to a \fBno\fR action.
+Some corrective actions will result in loss of data. The amount and severity of
+data loss can be determined from the diagnostic output.
+.sp
+.LP
+\fIFSType-specific-options\fR are options specified in a comma-separated (with
+no intervening spaces) list of options or keyword-attribute pairs for
+interpretation by the \fIFSType-\fRspecific module of the command.
+.sp
+.LP
+\fIspecial\fR represents the character special device on which the file system
+resides, for example, \fB/dev/rdsk/c1t0d0s7\fR. Note: the character special
+device, not the block special device, should be used. \fBfsck\fR will not work
+if the block device is mounted.
+.sp
+.LP
+If no \fIspecial\fR device is specified \fBfsck\fR checks the file systems
+listed in \fB/etc/vfstab\fR. Those entries in \fB/etc/vfstab\fR which have a
+character special device entry in the \fBfsckdev\fR field and have a non-zero
+numeric entry in the \fBfsckpass\fR field will be checked. Specifying \fB-F\fR
+\fIFSType\fR limits the file systems to be checked to those of the type
+indicated.
+.sp
+.LP
+If \fIspecial\fR is specified, but \fB-F\fR is not, the file system type will
+be determined by looking for a matching entry in \fB/etc/vfstab\fR. If no entry
+is found, the default local file system type specified in \fB/etc/default/fs\fR
+will be used.
+.sp
+.LP
+If a file system type supports parallel checking, for example, \fBufs,\fR some
+file systems eligible for checking may be checked in parallel. Consult the file
+system-specific man page (for example, \fBfsck_ufs\fR(8)) for more
+information.
+.SH OPTIONS
+.LP
+The following generic options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-F\fR \fIFSType\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify the file system type on which to operate.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-m\fR\fR
+.ad
+.sp .6
+.RS 4n
+Check but do not repair. This option checks that the file system is suitable
+for mounting, returning the appropriate exit status. If the file system is
+ready for mounting, \fBfsck\fR displays a message such as:
+.sp
+.in +2
+.nf
+ufs fsck: sanity check: /dev/rdsk/c0t3d0s1 okay
+.fi
+.in -2
+.sp
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR | \fB-N\fR\fR
+.ad
+.sp .6
+.RS 4n
+Assume a \fBno\fR response to all questions asked by \fBfsck\fR; do not open
+the file system for writing.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-V\fR\fR
+.ad
+.sp .6
+.RS 4n
+Echo the expanded command line but do not execute the command. This option may
+be used to verify and to validate the command line.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.sp .6
+.RS 4n
+Enables verbose output. Might not be supported by all filesystem-specific
+\fBfsck\fR implementations.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-y\fR | \fBY\fR\fR
+.ad
+.sp .6
+.RS 4n
+Assume a \fByes\fR response to all questions asked by \fBfsck\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-o\fR \fIspecific-options\fR\fR
+.ad
+.sp .6
+.RS 4n
+These \fIspecific-options\fR can be any combination of the following separated
+by commas (with no intervening spaces).
+.sp
+.ne 2
+.na
+\fB\fBb=\fR\fIn\fR\fR
+.ad
+.sp .6
+.RS 4n
+Use block \fIn\fR as the super block for the file system. Block 32 is always
+one of the alternate super blocks. Determine the location of other super blocks
+by running \fBnewfs\fR(8) with the \fB-Nv\fR options specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBc\fR\fR
+.ad
+.sp .6
+.RS 4n
+If the file system is in the old (static table) format, convert it to the new
+(dynamic table) format. If the file system is in the new format, convert it to
+the old format provided the old format can support the file system
+configuration. In interactive mode, \fBfsck\fR will list the direction the
+conversion is to be made and ask whether the conversion should be done. If a
+negative answer is given, no further operations are done on the file system. In
+preen mode, the direction of the conversion is listed and done if possible
+without user interaction. Conversion in preen mode is best used when all the
+file systems are being converted at once. The format of a file system can be
+determined from the first line of output from \fBfstyp\fR(8). Note: the
+\fBc\fR option is seldom used and is included only for compatibility with
+pre-4.1 releases. There is no guarantee that this option will be included in
+future releases.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBf\fR\fR
+.ad
+.sp .6
+.RS 4n
+Force checking of file systems regardless of the state of their super block
+clean flag.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBp\fR\fR
+.ad
+.sp .6
+.RS 4n
+Check and fix the file system non-interactively ("preen"). Exit immediately if
+there is a problem requiring intervention. This option is required to enable
+parallel file system checking.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBw\fR\fR
+.ad
+.sp .6
+.RS 4n
+Check writable file systems only.
+.RE
+
+.RE
+
+.SH EXIT STATUS
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.sp .6
+.RS 4n
+file system is unmounted and OK
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB1\fR\fR
+.ad
+.sp .6
+.RS 4n
+erroneous parameters are specified
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB32\fR\fR
+.ad
+.sp .6
+.RS 4n
+file system is unmounted and needs checking (\fBfsck\fR \fB-m\fR only)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB33\fR\fR
+.ad
+.sp .6
+.RS 4n
+file system is already mounted
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB34\fR\fR
+.ad
+.sp .6
+.RS 4n
+cannot stat device
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB35\fR\fR
+.ad
+.sp .6
+.RS 4n
+a filesystem that is mounted read/write was modified - reboot
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB36\fR\fR
+.ad
+.sp .6
+.RS 4n
+uncorrectable errors detected - terminate normally
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB37\fR\fR
+.ad
+.sp .6
+.RS 4n
+a signal was caught during processing
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB39\fR\fR
+.ad
+.sp .6
+.RS 4n
+uncorrectable errors detected - terminate immediately
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB40\fR\fR
+.ad
+.sp .6
+.RS 4n
+file system is mounted read-only and is OK
+.RE
+
+.SH USAGE
+.LP
+The \fBfsck\fR command is \fBlarge file aware\fR for UFS file systems, per the
+\fBlargefile\fR(7) man page.
+.SH FILES
+.ne 2
+.na
+\fB\fB/etc/default/fs\fR\fR
+.ad
+.sp .6
+.RS 4n
+default local file system type. Default values can be set for the following
+flags in \fB/etc/default/fs\fR. For example: \fBLOCAL=ufs.\fR
+.sp
+.ne 2
+.na
+\fB\fBLOCAL\fR\fR
+.ad
+.sp .6
+.RS 4n
+The default partition for a command if no FSType is specified.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/vfstab\fR\fR
+.ad
+.sp .6
+.RS 4n
+list of default parameters for each file system
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Committed
+.TE
+
+.SH SEE ALSO
+.LP
+.BR ufs (4FS),
+.BR vfstab (5),
+.BR attributes (7),
+.BR largefile (7),
+.BR clri (8),
+.BR fsck_ufs (8),
+.BR fsdb_ufs (8),
+.BR fsirand (8),
+.BR fstyp (8),
+.BR mkfs (8),
+.BR mkfs_ufs (8),
+.BR mountall (8),
+.BR newfs (8),
+.BR reboot (8)
+.SH WARNINGS
+.LP
+The operating system buffers file system data. Running \fBfsck\fR on a mounted
+file system can cause the operating system's buffers to become out of date with
+respect to the disk. For this reason, the file system should be \fIunmounted\fR
+when \fBfsck\fR is used. If this is not possible, care should be taken that the
+system is quiescent and that it is rebooted immediately after \fBfsck\fR is
+run. Quite often, however, this will not be sufficient. A panic will probably
+occur if running \fBfsck\fR on a file system modifies the file system.
+.SH NOTES
+.LP
+This command may not be supported for all \fIFSTypes\fR.
+.LP
+Starting with Solaris 9, \fBfsck\fR manages extended attribute data on the
+disk. (See \fBfsattr\fR(7) for a description of extended file attributes.) A
+file system with extended attributes can be mounted on versions of Solaris that
+are not attribute-aware (versions prior to Solaris 9), but the attributes will
+not be accessible and \fBfsck\fR will strip them from the files and place them
+in \fBlost+found\fR. Once the attributes have been stripped, the file system is
+completely stable on versions of Solaris that are not attribute-aware, but
+would be considered corrupted on attribute-aware versions. In the latter
+circumstance, run the attribute-aware \fBfsck\fR to stabilize the file system
+before using it in an attribute-aware environment.
diff --git a/usr/src/man/man8/fsck_pcfs.8 b/usr/src/man/man8/fsck_pcfs.8
new file mode 100644
index 0000000000..0f3d18c5e2
--- /dev/null
+++ b/usr/src/man/man8/fsck_pcfs.8
@@ -0,0 +1,207 @@
+'\" te
+.\" Copyright (c) 2000, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH FSCK_PCFS 8 "Jan 28, 2000"
+.SH NAME
+fsck_pcfs \- file system consistency check and interactive repair
+.SH SYNOPSIS
+.LP
+.nf
+\fBfsck\fR \fB-F\fR pcfs [\fIgeneric_options\fR] \fIspecial\fR
+.fi
+
+.LP
+.nf
+\fBfsck\fR \fB-F\fR pcfs [\fIgeneric_options\fR] [\fB-o\fR \fIspecific_options\fR] \fIspecial\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBfsck\fR utility audits and interactively repairs inconsistent conditions
+on file systems. \fIspecial\fR represents the character special device on which
+the file system resides, for example \fB/dev/rdiskette\fR. The character
+special device, not the block special device, should be used.
+.sp
+.LP
+In the case of correcting serious inconsistencies, by default, \fBfsck\fR asks
+for confirmation before making a repair and waits for the operator to respond
+either \fByes\fR or \fBno\fR. If the operator does not have write permission on
+the file system, \fBfsck\fR defaults to a \fB-n\fR (no corrections) action. See
+\fBfsck\fR(8).
+.sp
+.LP
+Repairing some file system inconsistencies may result in loss of data. The
+amount and severity of data loss may be determined from the diagnostic output.
+.sp
+.LP
+When executed with the verify option (\fB\fR\fB-o\fR\fB v\fR), \fBfsck_pcfs\fR
+automatically scans the entire file system to verify that all of its allocation
+units are accessible. If it finds any units inaccessible, it updates the file
+allocation table (\fBFAT\fR) appropriately. It also updates any effected
+directory entries to reflect the problem. This directory update includes
+truncating the file at the point in its allocation chain where the file data is
+no longer accessible. Any remaining accessible allocation units become
+orphaned.
+.sp
+.LP
+Orphaned chains of accessible allocation units are, with the operator's
+concurrence, linked back into the file system as files in the root directory.
+These files are assigned names of the form file\fINNNN\fR.chk, where the
+\fIN\fRs are digits in the integral range from \fB0\fR through \fB9\fR.
+.sp
+.LP
+After successfully scanning and correcting any errors in the file system,
+\fBfsck\fR displays a summary of information about the file system. This
+summary includes the size of the file system in bytes, the number of bytes used
+in directories and individual files, and the number of available allocation
+units remaining in the file system.
+.SH OPTIONS
+.sp
+.ne 2
+.na
+\fB\fIgeneric_options\fR\fR
+.ad
+.RS 23n
+The following generic options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-m\fR\fR
+.ad
+.RS 11n
+Check but do not repair. This option checks that the file system is suitable
+for mounting, returning the appropriate exit status. If the file system is
+ready for mounting, \fBfsck\fR displays a message such as:
+.sp
+.in +2
+.nf
+pcfs fsck: sanity check:
+\fB/dev/rdiskette\fR okay
+.fi
+.in -2
+.sp
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR | \fB-N\fR\fR
+.ad
+.RS 11n
+ Assume a no response to all questions asked by \fBfsck\fR; do not open the
+file system for writing.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-V\fR\fR
+.ad
+.RS 11n
+Echo the expanded command line, but do not execute the command. This option
+may be used to verify and to validate the command line.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-y\fR | \fB-Y\fR\fR
+.ad
+.RS 11n
+Assume a \fByes\fR response to all questions asked by \fBfsck\fR.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-o\fR \fIspecific_options\fR\fR
+.ad
+.RS 23n
+Specify \fBpcfs\fR file system specific options in a comma-separated list, in
+any combination, with no intervening spaces.
+.sp
+.ne 2
+.na
+\fBv\fR
+.ad
+.RS 5n
+Verify all allocation units are accessible prior to correcting inconsistencies
+in the metadata.
+.RE
+
+.sp
+.ne 2
+.na
+\fBp\fR
+.ad
+.RS 5n
+Check and fix the file system non-interactively (\fBpreen\fR). Exit
+immediately if there is a problem requiring intervention.
+.RE
+
+.sp
+.ne 2
+.na
+\fBw\fR
+.ad
+.RS 5n
+Check writable file systems only.
+.RE
+
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fIspecial\fR\fR
+.ad
+.RS 11n
+The device which contains the pcfs. The device name for a diskette is specified
+as \fB/dev/rdiskette0\fR for the first diskette drive, or \fB/dev/rdiskette1\fR
+for a second diskette drive. A hard disk device or high-capacity removable
+device name much be qualified with a suffix to indicate the proper \fBFDISK\fR
+partition.
+.sp
+For example, in the names: \fB/dev/rdsk/c0t0d0p0:c\fR and
+\fB/dev/rdsk/c0t4d0s2:c\fR, the \fB:c\fR suffix indicates the first partition
+on the disk contains the \fBpcfs\fR.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Stable
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+\fBfsck\fR(8), \fBfstyp\fR(8), \fBfdisk\fR(8), \fBmkfs\fR(8),
+\fBmkfs_pcfs\fR(8), \fBmountall\fR(8), \fBattributes\fR(7), \fBpcfs\fR(4FS),
+.SH WARNINGS
+.sp
+.LP
+The operating system buffers file system data. Running \fBfsck\fR on a mounted
+file system can cause the operating system's buffers to become out of date with
+respect to the disk. For this reason, the file system should be unmounted when
+\fBfsck\fR is used. If this is not possible, care should be taken that the
+system is quiescent and that it is rebooted immediately after \fBfsck\fR is
+run. Quite often, however, this is not sufficient. A panic will probably occur
+if running \fBfsck\fR on a file system modifies the file system.
diff --git a/usr/src/man/man8/fsck_udfs.8 b/usr/src/man/man8/fsck_udfs.8
new file mode 100644
index 0000000000..fa2b3469b1
--- /dev/null
+++ b/usr/src/man/man8/fsck_udfs.8
@@ -0,0 +1,335 @@
+'\" te
+.\" Copyright (c) 2000 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH FSCK_UDFS 8 "Nov 26, 2017"
+.SH NAME
+fsck_udfs \- file system consistency check and interactive repair
+.SH SYNOPSIS
+.LP
+.nf
+\fBfsck\fR \fB-F\fR udfs [\fIgeneric_options\fR] [\fIspecial \|.\|.\|.\fR]
+.fi
+
+.LP
+.nf
+\fBfsck\fR \fB-F\fR udfs [\fIgeneric_options\fR] [\fB-o\fR \fIspecific_options\fR]
+ [\fIspecial \|.\|.\|.\fR]
+.fi
+
+.SH DESCRIPTION
+.LP
+\fBfsck\fR audits and interactively repairs inconsistent conditions on file
+systems. A file system to be checked can be specified by giving the name of the
+block or character special device or by giving the name of its mount point if a
+matching entry exists in \fB/etc/vfstab\fR.
+.sp
+.LP
+\fIspecial\fR represents the character special device, for example,
+\fB/dev/rdsk/c0t2d0s0\fR, on which the file system resides. The character
+special device, not the block special device should be used. \fBfsck\fR does
+not work on a mounted block device.
+.sp
+.LP
+If no special device is specified, all \fBudfs\fR file systems specified in the
+\fBvfstab\fR file with a \fBfsckdev\fR entry are checked. If the \fB-p\fR
+(\fBpreen\fR) option is specified, \fBudfs\fR file systems with an
+\fBfsckpass\fR number greater than \fB1\fR are checked in parallel. See
+\fBfsck\fR(8).
+.sp
+.LP
+In the case of correcting serious inconsistencies, by default, \fBfsck\fR asks
+for confirmation before making a repair and waits for the operator to respond
+with either \fByes\fR or \fBno\fR. If the operator does not have write
+permission on the file system, \fBfsck\fR defaults to the \fB-n\fR (no
+corrections) option. See \fBfsck\fR(8).
+.sp
+.LP
+Repairing some file system inconsistencies can result in loss of data. The
+amount and severity of data loss can be determined from the diagnostic output.
+.sp
+.LP
+\fBfsck\fR automatically corrects innocuous inconsistencies. It displays a
+message for each corrected inconsistency that identifies the nature of the
+correction which took place on the file system. After successfully correcting a
+file system, \fBfsck\fR prints the number of files on that file system and the
+number of used and free blocks.
+.sp
+.LP
+Inconsistencies checked are as follows:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Blocks claimed by more than one file or the free list
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Blocks claimed by a file or the free list outside the range of the file system
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Incorrect link counts in file entries
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Incorrect directory sizes
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Bad file entry format
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Blocks not accounted for anywhere
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Directory checks, file pointing to unallocated file entry and absence of a
+parent directory entry
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Descriptor checks, more blocks for files than there are in the file system
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Bad free block list format
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Total free block count incorrect
+.RE
+.SH OPTIONS
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fIgeneric_options\fR\fR
+.ad
+.RS 23n
+The following \fIgeneric_options\fR are supported:
+.sp
+.ne 2
+.na
+\fB\fB-m\fR\fR
+.ad
+.RS 11n
+Check but do not repair. This option checks to be sure that the file system is
+suitable for mounting, and returns the appropriate exit status. If the file
+system is ready for mounting, \fBfsck \fRdisplays a message such as:
+.sp
+.in +2
+.nf
+udfs fsck: sanity check: /dev/rdsk/c0t2d0s0 okay
+.fi
+.in -2
+.sp
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR | \fB-N\fR\fR
+.ad
+.RS 11n
+Assume a \fBno\fR response to all questions asked by \fBfsck\fR; do not open
+the file system for writing.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-V\fR\fR
+.ad
+.RS 11n
+Echo the expanded command line, but do not execute the command. This option can
+be used to verify and to validate the command line.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-y\fR | \fB-Y\fR\fR
+.ad
+.RS 11n
+Assume a \fByes\fR response to all questions asked by \fBfsck\fR.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-o\fR \fIspecific_options\fR\fR
+.ad
+.RS 23n
+Specify \fBudfs\fR file system specific options in a comma-separated list with
+no intervening spaces. The following \fIspecific_options\fR are available:
+.sp
+.ne 2
+.na
+\fB\fBf\fR\fR
+.ad
+.RS 5n
+Force checking of file systems regardless of the state of their logical volume
+integrity state.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBp\fR\fR
+.ad
+.RS 5n
+Check and fix the file system non-interactively (\fBpreen\fR). Exit immediately
+if there is a problem that requires intervention. This option is required to
+enable parallel file system checking.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBw\fR\fR
+.ad
+.RS 5n
+Check writable file systems only.
+.RE
+
+.RE
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/etc/vfstab\fR\fR
+.ad
+.RS 15n
+List of default parameters for each file system.
+.RE
+
+.SH SEE ALSO
+.LP
+.BR vfstab (5),
+.BR attributes (7),
+.BR fsck (8),
+.BR fsdb_udfs (8),
+.BR fstyp (8),
+.BR mkfs (8),
+.BR mkfs_udfs (8),
+.BR mountall (8),
+.BR reboot (8)
+.SH WARNINGS
+.LP
+The operating system buffers file system data. Running \fBfsck\fR on a mounted
+file system can cause the operating system's buffers to become out of date with
+respect to the disk. For this reason, use \fBfsck\fR only when the file system
+is unmounted. If this is not possible, take care that the system is quiescent
+and that it is rebooted immediately after running \fBfsck\fR. A panic will
+probably occur if running \fBfsck\fR on a file system that modifies the file
+system while it is mounted.
+.sp
+.LP
+If an unmount of the file system is not done before the system is shut down,
+the file system might become corrupted. In this case, a file system check needs
+to be completed before the next mount operation.
+.SH DIAGNOSTICS
+.ne 2
+.na
+\fBnot writable\fR
+.ad
+.sp .6
+.RS 4n
+You cannot write to the device.
+.RE
+
+.sp
+.ne 2
+.na
+\fBCurrently Mounted on\fR
+.ad
+.sp .6
+.RS 4n
+The device is already mounted and cannot run \fBfsck\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBFILE SYSTEM WAS MODIFIED\fR
+.ad
+.sp .6
+.RS 4n
+File system has been modified to bring it to a consistent state.
+.RE
+
+.sp
+.ne 2
+.na
+\fBCan't read allocation extent\fR
+.ad
+.sp .6
+.RS 4n
+Cannot read the block containing allocation extent.
+.RE
+
+.sp
+.ne 2
+.na
+\fBBad tag on alloc extent\fR
+.ad
+.sp .6
+.RS 4n
+Invalid tag detected when expecting an allocation extent.
+.RE
+
+.sp
+.ne 2
+.na
+\fBVolume sequence tag error\fR
+.ad
+.sp .6
+.RS 4n
+Invalid tag detected in the volume sequence.
+.RE
+
+.sp
+.ne 2
+.na
+\fBSpace bitmap tag error\fR
+.ad
+.sp .6
+.RS 4n
+Invalid tag detected in the space bitmap.
+.RE
+
+.sp
+.ne 2
+.na
+\fBUNEXPECTED INCONSISTENCY; RUN fsck MANUALLY\fR
+.ad
+.sp .6
+.RS 4n
+Use \fBfsck\fR in interactive mode.
+.RE
+
diff --git a/usr/src/man/man8/fsck_ufs.8 b/usr/src/man/man8/fsck_ufs.8
new file mode 100644
index 0000000000..c0c8ed886c
--- /dev/null
+++ b/usr/src/man/man8/fsck_ufs.8
@@ -0,0 +1,331 @@
+'\" te
+.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH FSCK_UFS 8 "Aug 2, 2005"
+.SH NAME
+fsck_ufs \- file system consistency check and interactive repair
+.SH SYNOPSIS
+.LP
+.nf
+\fBfsck\fR \fB-F\fR ufs [\fIgeneric-options\fR] [\fIspecial\fR]...
+.fi
+
+.LP
+.nf
+\fBfsck\fR \fB-F\fR ufs [\fIgeneric-options\fR] [\fB-o\fR \fIspecific-options\fR]
+ [\fIspecial\fR]...
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBfsck\fR utility audits and interactively repairs inconsistent conditions
+on file systems. A file system to be checked may be specified by giving the
+name of the block or character \fIspecial\fR device or by giving the name of
+its mount point if a matching entry exists in \fB/etc/vfstab\fR.
+.sp
+.LP
+The \fIspecial\fR parameter represents the character special device, for
+example, \fB/dev/rdsk/c1t0d0s7\fR, on which the file system resides. The
+character special device, not the block special device should be used. The
+\fBfsck\fR utility will not work if the block device is mounted, unless the
+file system is error-locked.
+.sp
+.LP
+If no \fIspecial\fR device is specified, all \fBufs\fR file systems specified
+in the \fBvfstab\fR with a \fBfsckdev\fR entry will be checked. If the \fB-p\fR
+(``preen'') option is specified, \fBufs\fR file systems with an \fBfsckpass\fR
+number greater than \fB1\fR are checked in parallel. See \fBfsck\fR(8).
+.sp
+.LP
+In the case of correcting serious inconsistencies, by default, \fBfsck\fR asks
+for confirmation before making a repair and waits for the operator to respond
+either \fByes\fR or \fBno\fR. If the operator does not have write permission on
+the file system, \fBfsck\fR will default to a \fB-n\fR (no corrections) action.
+See \fBfsck\fR(8).
+.sp
+.LP
+Repairing some file system inconsistencies can result in loss of data. The
+amount and severity of data loss can be determined from the diagnostic output.
+.sp
+.LP
+The \fBfsck\fR utility automatically corrects innocuous inconsistencies such as
+unreferenced inodes, too-large link counts in inodes, missing blocks in the
+free list, blocks appearing in the free list and also in files, or incorrect
+counts in the super block. It displays a message for each inconsistency
+corrected that identifies the nature of the correction on the file system which
+took place. After successfully correcting a file system, \fBfsck\fR prints the
+number of files on that file system, the number of used and free blocks, and
+the percentage of fragmentation.
+.sp
+.LP
+Inconsistencies checked include:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Blocks claimed by more than one inode or the free list.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Blocks claimed by an inode or the free list outside the range of the file
+system.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Incorrect link counts.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Incorrect directory sizes.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Bad inode format.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Blocks not accounted for anywhere.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Directory checks, file pointing to unallocated inode, inode number out of
+range, and absence of `\fB\&.\fR' and `\fB\&.\|.\fR' as the first two entries
+in each directory.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Super Block checks: more blocks for inodes than there are in the file system.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Bad free block list format.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Total free block and/or free inode count incorrect.
+.RE
+.sp
+.LP
+Orphaned files and directories (allocated but unreferenced) are, with the
+operator's concurrence, reconnected by placing them in the \fBlost+found\fR
+directory. The name assigned is the inode number. If the \fBlost+found\fR
+directory does not exist, it is created. If there is insufficient space in the
+\fBlost+found\fR directory, its size is increased.
+.sp
+.LP
+An attempt to mount a \fBufs\fR file system with the \fB\fR\fB-o\fR\fB
+nolargefiles\fR option will fail if the file system has ever contained a large
+file (a file whose size is greater than or equal to 2 Gbyte). Invoking
+\fBfsck\fR resets the file system state if no large files are present in the
+file system. A successful mount of the file system after invoking \fBfsck\fR
+indicates the absence of large files in the file system. An unsuccessful mount
+attempt indicates the presence of at least one large file. See
+\fBmount_ufs\fR(8).
+.SH OPTIONS
+.sp
+.LP
+The \fIgeneric-options\fR consist of the following options:
+.sp
+.ne 2
+.na
+\fB\fB-m\fR\fR
+.ad
+.RS 12n
+Check but do not repair. This option checks that the file system is suitable
+for mounting, returning the appropriate exit status. If the file system is
+ready for mounting, \fBfsck\fR displays a message such as:
+.sp
+.ne 2
+.na
+\fB\fR
+.ad
+.sp .6
+.RS 4n
+\fBufs fsck: sanity check: /dev/rdsk/c0t3d0s1 okay\fR
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR\||\|\fBN\fR\fR
+.ad
+.RS 12n
+Assume a \fBno\fR response to all questions asked by \fBfsck\fR; do not open
+the file system for writing.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-V\fR\fR
+.ad
+.RS 12n
+Echo the expanded command line, but do not execute the command. This option may
+be used to verify and to validate the command line.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.RS 12n
+Enables verbose output. Might not be supported by all filesystem-specific
+\fBfsck\fR implementations.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-y\fR\||\|\fBY\fR\fR
+.ad
+.RS 12n
+Assume a \fByes\fR response to all questions asked by \fBfsck\fR.
+.RE
+
+.sp
+.LP
+See generic \fBfsck\fR(8) for the details for specifying \fIspecial\fR.
+.sp
+.ne 2
+.na
+\fB\fB-o\fR \fIspecific-options\fR\fR
+.ad
+.RS 23n
+Specify \fBufs\fR file system specific options. These options can be any
+combination of the following separated by commas (with no intervening spaces).
+.sp
+.ne 2
+.na
+\fB\fBb=\fR\fIn\fR\fR
+.ad
+.RS 7n
+Use block \fIn\fR as the super block for the file system. Block 32 is always
+one of the alternate super blocks. Determine the location of other super blocks
+by running \fBnewfs\fR(8) with the \fB-Nv\fR options specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBf\fR\fR
+.ad
+.RS 7n
+Force checking of file systems regardless of the state of their super block
+clean flag.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBp\fR\fR
+.ad
+.RS 7n
+Check and fix the file system non-interactively ("preen"). Exit immediately if
+there is a problem requiring intervention. This option is required to enable
+parallel file system checking.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBw\fR\fR
+.ad
+.RS 7n
+Check writable file systems only.
+.RE
+
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/vfstab\fR\fR
+.ad
+.RS 15n
+list of default parameters for each file system
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR ufs (4FS),
+.BR vfstab (5),
+.BR attributes (7),
+.BR largefile (7),
+.BR clri (8),
+.BR fsck (8),
+.BR fsdb_ufs (8),
+.BR fsirand (8),
+.BR fstyp (8),
+.BR mkfs (8),
+.BR mkfs_ufs (8),
+.BR mount_ufs (8),
+.BR mountall (8),
+.BR newfs (8),
+.BR reboot (8)
+.SH WARNINGS
+.sp
+.LP
+The operating system buffers file system data. Running \fBfsck\fR on a mounted
+file system can cause the operating system's buffers to become out of date with
+respect to the disk. For this reason, the file system should be \fIunmounted\fR
+when \fBfsck\fR is used. If this is not possible, care should be taken that the
+system is quiescent and that it is rebooted immediately after \fBfsck\fR is
+run. Quite often, however, this will not be sufficient. A panic will probably
+occur if running \fBfsck\fR on a file system modifies the file system.
+.SH NOTES
+.sp
+.LP
+It is usually faster to check the character special device than the block
+special device.
+.sp
+.LP
+Running \fBfsck\fR on file systems larger than 2 Gb fails if the user chooses
+to use the block interface to the device:
+.sp
+.ne 2
+.na
+\fB\fBfsck\fR \fB/dev/dsk/c?t?d?s?\fR\fR
+.ad
+.RS 26n
+
+.RE
+
+.sp
+.LP
+rather than the raw (character special) device:
+.sp
+.ne 2
+.na
+\fB\fBfsck\fR \fB/dev/rdsk/c?t?d?s?\fR\fR
+.ad
+.RS 27n
+
+.RE
+
diff --git a/usr/src/man/man8/fsdb.8 b/usr/src/man/man8/fsdb.8
new file mode 100644
index 0000000000..debe46454f
--- /dev/null
+++ b/usr/src/man/man8/fsdb.8
@@ -0,0 +1,101 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 1996, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH FSDB 8 "Sep 16, 1996"
+.SH NAME
+fsdb \- file system debugger
+.SH SYNOPSIS
+.LP
+.nf
+\fBfsdb\fR [\fB-F\fR \fIFSType\fR] [\fB-V\fR] [\fB-o\fR \fIFSType-specific_options\fR] \fIspecial\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBfsdb\fR is a file system debugger that allows for the manual repair of a
+file system after a crash. \fIspecial\fR is a special device used to
+indicate the file system to be debugged. \fBfsdb\fR is intended for experienced
+users only. \fIFSType\fR is the file system type to be debugged. Since
+different \fIFSTypes\fR have different structures and hence different debugging
+capabilities, the manual pages for the \fIFSType-\fRspecific \fBfsdb\fR should
+be consulted for a more detailed description of the debugging capabilities.
+.SH OPTIONS
+.sp
+.ne 2
+.na
+\fB\fB-F\fR\fR
+.ad
+.RS 6n
+Specify the \fIFSType\fR on which to operate. The \fIFSType\fR should either
+be specified here or be determinable from \fB/etc/vfstab\fR by matching the
+\fIspecial\fR with an entry in the table, or by consulting
+\fB/etc/default/fs\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-V\fR\fR
+.ad
+.RS 6n
+Echo the complete command line, but do not execute the command. The command
+line is generated by using the options and arguments provided by the user and
+adding to them information derived from \fB/etc/vfstab\fR. This option may be
+used to verify and validate the command line.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-o\fR\fR
+.ad
+.RS 6n
+Specify \fIFSType-\fRspecific options.
+.RE
+
+.SH USAGE
+.sp
+.LP
+See \fBlargefile\fR(7) for the description of the behavior of \fBfsdb\fR when
+encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/default/fs\fR\fR
+.ad
+.RS 19n
+default local file system type. Default values can be set for the following
+flags in \fB/etc/default/fs\fR. For example: \fBLOCAL=ufs\fR
+.sp
+.ne 2
+.na
+\fB\fBLOCAL:\fR\fR
+.ad
+.RS 10n
+The default partition for a command if no FSType is specified.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/vfstab\fR\fR
+.ad
+.RS 19n
+list of default parameters for each file system
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+\fBvfstab\fR(5), \fBattributes\fR(7), \fBlargefile\fR(7) Manual pages for the
+\fIFSType\fR-specific modules of \fBfsdb\fR.
+.SH NOTES
+.sp
+.LP
+This command may not be supported for all \fIFSTypes\fR.
diff --git a/usr/src/man/man8/fsdb_udfs.8 b/usr/src/man/man8/fsdb_udfs.8
new file mode 100644
index 0000000000..8a9fe49921
--- /dev/null
+++ b/usr/src/man/man8/fsdb_udfs.8
@@ -0,0 +1,1006 @@
+'\" te
+.\" Copyright (c) 1999 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH FSDB_UDFS 8 "August 29, 2021"
+.SH NAME
+fsdb_udfs \- udfs file system debugger
+.SH SYNOPSIS
+.nf
+\fBfsdb \fR [\fB-F\fR] udfs [\fIgeneric_option\fR] [\fB-o \fR\fIspecific_option\fR] \fIspecial\fR
+.fi
+
+.SH DESCRIPTION
+The \fBfsdb_udfs\fR command is an interactive tool that can be used to patch up
+a damaged \fBudfs\fR file system. \fBfsdb_udfs\fR has conversions to translate
+block and i-numbers into their corresponding disk addresses. Mnemonic offsets
+to access different parts of an inode are also included. Mnemonic offsets
+greatly simplify the process of correcting control block entries or descending
+the file system tree.
+.sp
+.LP
+\fBfsdb\fR contains several error-checking routines to verify inode and block
+addresses. These can be disabled if necessary by invoking \fBfsdb\fR with the
+\fB-o\fR option or by using the \fBo\fR command.
+.sp
+.LP
+\fBfsdb\fR reads one block at a time, and therefore works with raw as well as
+block \fBI/O\fR devices. A buffer management routine is used to retain commonly
+used blocks of data in order to reduce the number of read system calls. All
+assignment operations result in an immediate write-through of the corresponding
+block. In order to modify any portion of the disk, \fBfsdb\fR must be invoked
+with the \fB-w\fR option.
+.sp
+.LP
+Wherever possible, \fBadb\fR-like syntax has been adopted to promote the use of
+\fBfsdb\fR through familiarity.
+.SH OPTIONS
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-o\fR \fIspecific_option\fR\fR
+.ad
+.RS 22n
+Specify \fBudfs\fR file system specific options in a comma-separated list with
+no intervening spaces. The following specific options are supported:
+.sp
+.ne 2
+.na
+\fBo\fR
+.ad
+.RS 12n
+Override some error conditions.
+.RE
+
+.sp
+.ne 2
+.na
+\fBp=\fIstring\fR\fR
+.ad
+.RS 12n
+Set prompt to \fIstring\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBw\fR
+.ad
+.RS 12n
+Open for write.
+.RE
+
+.sp
+.ne 2
+.na
+\fB?\fR
+.ad
+.RS 12n
+Display usage.
+.RE
+
+.RE
+
+.SH USAGE
+Numbers are considered hexadecimal by default. The user has control over how
+data is to be displayed or accepted. The \fBbase\fR command displays or sets
+the input and output base. Once set, all input defaults to this base and all
+output displays in this base. The base can be overridden temporarily for input
+by preceding hexadecimal numbers by \fB0x\fR, preceding decimal numbers with a
+\fB0t\fR, or octal numbers with a \fB0\fR. Hexadecimal numbers beginning with
+\fBa\fR-\fBf\fR or \fBA\fR-\fBF\fR must be preceded with a \fB0x\fR to
+distinguish them from commands.
+.sp
+.LP
+Disk addressing by \fBfsdb\fR is at the byte level. However, \fBfsdb\fR offers
+many commands to convert a desired inode, directory entry, block, and so forth,
+to a byte address. After the address has been calculated, \fBfsdb\fR records
+the result in the current address (\fBdot\fR).
+.sp
+.LP
+Several global values are maintained by \fBfsdb\fR\fB\fR:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Current base (referred to as \fBbase\fR)
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Current address (referred to as \fBdot\fR)
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Current inode (referred to as \fBinode\fR)
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Current count (referred to as \fBcount\fR)
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Current type (referred to as \fBtype\fR)
+.RE
+.sp
+.LP
+Most commands use the preset value of \fBdot\fR in their execution. For
+example,
+.sp
+.in +2
+.nf
+ > 2:inode
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+first sets the value of dot (\fB\&.\fR) to \fB2\fR, colon (\fB:\fR), signifies
+the start of a command, and the \fBinode\fR command sets \fBinode\fR to
+\fB2\fR. A count is specified after a comma (\fB,\fR). Once set, count remains
+at this value until a new command is encountered that resets the value back to
+\fB1\fR (the default).
+.sp
+.LP
+So, if
+.sp
+.in +2
+.nf
+> 2000,400/X
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+is entered, \fB400\fR hex longs are listed from \fB2000\fR, and when completed,
+the value of dot is \fB 2000 + 400 * sizeof\fR (long). If a RETURN is then
+entered, the output routine uses the current values of \fBdot\fR, \fBcount\fR,
+and \fBtype\fR and displays \fB400 \fRmore hex longs. An asterisk (\fB*\fR)
+causes the entire block to be displayed. An example showing several commands
+and the use of RETURN would be:
+.sp
+.in +2
+.nf
+> 2:ino; 0:dir?d
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+or
+.sp
+.in +2
+.nf
+> 2:ino; 0:db:block?d
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The two examples are synonymous for getting to the first directory entry of the
+root of the file system. Once there, subsequently entering a RETURN, plus
+(\fB+\fR), or minus (\fB-\fR) advances to subsequent entries. Notice that
+.sp
+.in +2
+.nf
+> 2:inode; :ls
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+or
+.sp
+.in +2
+.nf
+> :ls /
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+is again synonymous.
+.SS "Expressions"
+The following symbols are recognized by \fBfsdb\fR:
+.sp
+.ne 2
+.na
+\fBRETURN\fR
+.ad
+.RS 13n
+Update the value of dot by the current value of \fItype\fR and \fIdisplay\fR
+using the current value of \fIcount\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fI#\fR\fR
+.ad
+.RS 13n
+Update the value of dot by specifying a numeric expression. Specify numeric
+expressions using addition, subtraction, multiplication, and division
+operators ( \fB+\fR, \fB-\fR, \fB*\fR, and \fB%\fR). Numeric expressions are
+evaluated from left to right and can use parentheses. After evaluation, the
+value of dot is updated.
+.RE
+
+.sp
+.ne 2
+.na
+\fB, \fIcount\fR\fR
+.ad
+.RS 13n
+Update the count indicator. The global value of \fIcount\fR is updated to
+\fIcount\fR. The value of \fIcount\fR remains until a new command is run. A
+\fIcount\fR specifier of \fB*\fR attempts to show a blocks's worth of
+information. The default for \fIcount\fR is \fB1\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB? \fI f\fR\fR
+.ad
+.RS 13n
+Display in structured style with format specifier \fBf\fR. See \fBFormatted
+Output\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB/ \fIf\fR\fR
+.ad
+.RS 13n
+Display in unstructured style with format specifier \fBf\fR. See \fBFormatted
+Output\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\&.\fR
+.ad
+.RS 13n
+Display the value of dot.
+.RE
+
+.sp
+.ne 2
+.na
+\fB+\fIe\fR\fR
+.ad
+.RS 13n
+Increment the value of dot by the expression \fIe\fR. The amount actually
+incremented is dependent on the size of type: \fBdot = dot + \fR\fIe \fR\fB*
+\fR\fBsizeof\fR (\fItype\fR) The default for \fIe\fR is \fB1\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\(mi\fIe\fR\fR
+.ad
+.RS 13n
+Decrement the value of dot by the expression \fIe \fR. See \fB+\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB*\fIe\fR\fR
+.ad
+.RS 13n
+Multiply the value of dot by the expression \fIe\fR. Multiplication and
+division don't use \fItype\fR. In the above calculation of dot, consider the
+\fBsizeof\fR (\fItype\fR) to be \fB1\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB%\fIe\fR\fR
+.ad
+.RS 13n
+Divide the value of dot by the expression \fIe\fR. See \fB*\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB< \fIname\fR\fR
+.ad
+.RS 13n
+Restore an address saved in register \fIname\fR. \fIname\fR must be a single
+letter or digit.
+.RE
+
+.sp
+.ne 2
+.na
+\fB> \fIname\fR\fR
+.ad
+.RS 13n
+Save an address in register \fIname\fR. \fIname\fR must be a single letter or
+digit.
+.RE
+
+.sp
+.ne 2
+.na
+\fB= \fIf\fR\fR
+.ad
+.RS 13n
+Display indicator. If \fIf\fR is a legitimate format specifier (see
+\fBFormatted Output\fR), then the value of dot is displayed using format
+specifier \fIf\fR. Otherwise, assignment is assumed. See \fB= [s] [e]\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB= [\fIs\fR] [\fIe\fR]\fR
+.ad
+.RS 13n
+Change the value of dot using an assignment indicator. The address pointed to
+by dot has its contents changed to the value of the expression \fIe\fR or to
+the \fBASCII\fR representation of the quoted (\fB"\fR) string \fIs\fR. This can
+be useful for changing directory names or \fBASCII\fR file information.
+.RE
+
+.sp
+.ne 2
+.na
+\fB=+ \fIe\fR\fR
+.ad
+.RS 13n
+Change the value of dot using an incremental assignment. The address pointed to
+by dot has its contents incremented by expression \fIe\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB=- e\fR
+.ad
+.RS 13n
+Change the value of dot using a decremental assignment. Decrement the contents
+of the address pointed to by dot by expression \fIe\fR.
+.RE
+
+.SS "Commands"
+A command must be prefixed by a colon (\fB:\fR). Only enough letters of the
+command to uniquely distinguish it are needed. Multiple commands can be entered
+on one line by separating them by a SPACE, TAB, or semicolon (\fB;\fR).
+.sp
+.LP
+To view a potentially unmounted disk in a reasonable manner, \fBfsdb\fR
+supports the \fBcd\fR, \fBpwd\fR, \fBls\fR, and \fBfind\fR commands. The
+functionality of each of these commands basically matches that of its UNIX
+counterpart. See \fBcd\fR(1), \fBpwd\fR(1), \fBls\fR(1), and \fBfind\fR(1) for
+details. The \fB*\fR, \fB,\fR, \fB?\fR, and \fB-\fR wildcard characters are
+also supported.
+.sp
+.LP
+The following commands are supported:
+.sp
+.ne 2
+.na
+\fBbase[=\fIb\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Display or set the base. All input and output is governed by the current base.
+Without the \fB=\fR \fIb\fR, displays the current base. Otherwise, sets the
+current base to \fIb\fR. Base is interpreted using the old value of base, so to
+ensure correctness use the \fB0\fR, \fB0t\fR, or \fB0x\fR prefix when changing
+the base. The default for base is hexadecimal.
+.RE
+
+.sp
+.ne 2
+.na
+\fBblock\fR
+.ad
+.sp .6
+.RS 4n
+Convert the value of dot to a block address.
+.RE
+
+.sp
+.ne 2
+.na
+\fBcd [\fIdir\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Change the current directory to directory \fIdir\fR. The current values of
+inode and dot are also updated. If \fBdir\fR is not specified, changes
+directories to inode 2, root (\fB/\fR).
+.RE
+
+.sp
+.ne 2
+.na
+\fBdirectory\fR
+.ad
+.sp .6
+.RS 4n
+If the current inode is a directory, converts the value of dot to a directory
+slot offset in that directory, and dot now points to this entry.
+.RE
+
+.sp
+.ne 2
+.na
+\fBfile\fR
+.ad
+.sp .6
+.RS 4n
+Set the value of dot as a relative block count from the beginning of the file.
+The value of dot is updated to the first byte of this block.
+.RE
+
+.sp
+.ne 2
+.na
+\fBfind \fIdir\fR [\fB-name\fR \fIn\fR] | [\fB-inum\fR\fI i\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Find files by name or i-number. Recursively searches directory \fIdir\fR and
+below for file names whose i-number matches \fBi\fR or whose name matches
+pattern \fIn\fR. Only one of the two options (\fB-name\fR or \fB-inum\fR) can
+be used at one time. The find \fB-print\fR is not necessary or accepted.
+.RE
+
+.sp
+.ne 2
+.na
+\fBfill=\fIp\fR\fR
+.ad
+.sp .6
+.RS 4n
+Fill an area of disk with pattern \fIp\fR. The area of disk is delimited by dot
+and count.
+.RE
+
+.sp
+.ne 2
+.na
+\fBinode\fR
+.ad
+.sp .6
+.RS 4n
+Convert the value of dot to an inode address. If successful, the current value
+of inode is updated as well as the value of dot. As a convenient shorthand, if
+\fB:inode\fR appears at the beginning of the line, the value of dot is set to
+the current inode and that inode is displayed in inode format.
+.RE
+
+.sp
+.ne 2
+.na
+\fBls [ \fB-R\fR ] [\fB-l\fR ] \fIpat1\fR \fIpat2\fR...\fR
+.ad
+.sp .6
+.RS 4n
+List directories or files. If no file is specified, the current directory is
+assumed. Either or both of the options can be used (but, if used, must be
+specified before the filename specifiers). Wild card characters are available
+and multiple arguments are acceptable. The long listing shows only the i-number
+and the name; use the inode command with \fB?i\fR to get more information.
+.RE
+
+.sp
+.ne 2
+.na
+\fBoverride\fR
+.ad
+.sp .6
+.RS 4n
+Toggle the value of override. Some error conditions might be overridden if
+override is toggled to \fBon\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBprompt "\fIp\fR"\fR
+.ad
+.sp .6
+.RS 4n
+Change the \fBfsdb\fR prompt to \fIp\fR. \fIp\fR must be enclosed in quotes.
+.RE
+
+.sp
+.ne 2
+.na
+\fBpwd\fR
+.ad
+.sp .6
+.RS 4n
+Display the current working directory.
+.RE
+
+.sp
+.ne 2
+.na
+\fBquit\fR
+.ad
+.sp .6
+.RS 4n
+Quit \fBfsdb\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBtag\fR
+.ad
+.sp .6
+.RS 4n
+Convert the value of dot and if this is a valid tag, print the volume structure
+according to the tag.
+.RE
+
+.sp
+.ne 2
+.na
+\fB!\fR
+.ad
+.sp .6
+.RS 4n
+Escape to the shell.
+.RE
+
+.SS "Inode Commands"
+In addition to the above commands, several other commands deal with inode
+fields and operate directly on the current inode (they still require the colon
+(\fB:\fR). They can be used to more easily display or change the particular
+fields. The value of dot is only used by the \fB:db\fR and \fB:ib\fR commands.
+Upon completion of the command, the value of dot is changed so that it points
+to that particular field. For example,
+.sp
+.in +2
+.nf
+> :ln=+1
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+increments the link count of the current inode and sets the value of dot to the
+address of the link count field.
+.sp
+.LP
+The following inode commands are supported:
+.sp
+.ne 2
+.na
+\fBat\fR
+.ad
+.RS 8n
+Access time
+.RE
+
+.sp
+.ne 2
+.na
+\fBbs\fR
+.ad
+.RS 8n
+Block size
+.RE
+
+.sp
+.ne 2
+.na
+\fBct\fR
+.ad
+.RS 8n
+Creation time
+.RE
+
+.sp
+.ne 2
+.na
+\fBgid\fR
+.ad
+.RS 8n
+Group id
+.RE
+
+.sp
+.ne 2
+.na
+\fBln\fR
+.ad
+.RS 8n
+Link number
+.RE
+
+.sp
+.ne 2
+.na
+\fBmt\fR
+.ad
+.RS 8n
+Modification time
+.RE
+
+.sp
+.ne 2
+.na
+\fBmd\fR
+.ad
+.RS 8n
+Mode
+.RE
+
+.sp
+.ne 2
+.na
+\fBmaj\fR
+.ad
+.RS 8n
+Major device number
+.RE
+
+.sp
+.ne 2
+.na
+\fBmin\fR
+.ad
+.RS 8n
+Minor device number
+.RE
+
+.sp
+.ne 2
+.na
+\fBnm\fR
+.ad
+.RS 8n
+This command actually operates on the directory name field. Once poised at
+the desired directory entry (using the \fBdirectory\fR command), this command
+allows you to change or display the directory name. For example,
+.sp
+.in +2
+.nf
+ > 7:dir:nm="foo"
+.fi
+.in -2
+.sp
+
+gets the \fB7\fRth directory entry of the current inode and changes its name to
+\fBfoo\fR. Directory names cannot be made larger than the field allows. If an
+attempt is made to make a directory name larger than the field allows, the
+string is truncated to fit and a warning message is displayed.
+.RE
+
+.sp
+.ne 2
+.na
+\fBsz\fR
+.ad
+.RS 8n
+File size
+.RE
+
+.sp
+.ne 2
+.na
+\fBuid\fR
+.ad
+.RS 8n
+User \fBID\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fBuniq\fR
+.ad
+.RS 8n
+Unique \fBID\fR
+.RE
+
+.SS "Formatted Output"
+Formatted output comes in two styles and many format types. The two styles of
+formatted output are: structured and unstructured. Structured output is used to
+display inodes, directories, and so forth. Unstructured output displays raw
+data.
+.sp
+.LP
+Format specifiers are preceded by the slash (\fB/\fR) or question mark
+(\fB?\fR) character. \fItype\fR is updated as necessary upon completion.
+.sp
+.LP
+The following format specifiers are preceded by the \fB?\fR character:
+.sp
+.ne 2
+.na
+\fBi\fR
+.ad
+.RS 5n
+Display as inodes in the current base.
+.RE
+
+.sp
+.ne 2
+.na
+\fBd\fR
+.ad
+.RS 5n
+Display as directories in the current base.
+.RE
+
+.sp
+.LP
+The following format specifiers are preceded by the \fB/\fR character:
+.sp
+.ne 2
+.na
+\fBb\fR
+.ad
+.RS 9n
+Display as bytes in the current base.
+.RE
+
+.sp
+.ne 2
+.na
+\fBc\fR
+.ad
+.RS 9n
+Display as characters.
+.RE
+
+.sp
+.ne 2
+.na
+\fBo | O\fR
+.ad
+.RS 9n
+Display as octal shorts or longs.
+.RE
+
+.sp
+.ne 2
+.na
+\fBd | D\fR
+.ad
+.RS 9n
+Display as decimal shorts or longs.
+.RE
+
+.sp
+.ne 2
+.na
+\fBx | X\fR
+.ad
+.RS 9n
+Display as hexadecimal shorts or longs.
+.RE
+
+.SH EXAMPLES
+\fBExample 1 \fRUsing fsdb as a calculator for complex arithmetic
+.sp
+.LP
+The following command displays \fB2010\fR in decimal format, and is an example
+of using \fBfsdb\fR as a calculator for complex arithmetic.
+
+.sp
+.in +2
+.nf
+> 2000+400%(20+20)=D
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRUsing fsdb to display an i-number in inode format
+.sp
+.LP
+The following command displays the i-number \fB386\fR in inode format.\fB386\fR
+becomes the current inode.
+
+.sp
+.in +2
+.nf
+> 386:ino?i
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRUsing fsdb to change the link count
+.sp
+.LP
+The following command changes the link count for the current inode to \fB4\fR.
+
+.sp
+.in +2
+.nf
+> :ln=4
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 4 \fRUsing fsdb to increment the link count
+.sp
+.LP
+The following command increments the link count by \fB1\fR.
+
+.sp
+.in +2
+.nf
+> :ln=+1
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 5 \fRUsing fsdb to display the creation time as a hexadecimal long
+.sp
+.LP
+The following command displays the creation time as a hexadecimal long.
+
+.sp
+.in +2
+.nf
+> :ct=X
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 6 \fRUsing fsdb to display the modification time in time format
+.sp
+.LP
+The following command displays the modification time in time format.
+
+.sp
+.in +2
+.nf
+> :mt=t
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 7 \fRUsing fsdb to display in ASCII
+.sp
+.LP
+The following command displays, in \fBASCII\fR, block \fB0\fR of the file
+associated with the current inode.
+
+.sp
+.in +2
+.nf
+> 0:file/c
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 8 \fRUsing fsdb to display the directory entries for the root inode
+.sp
+.LP
+The following command displays the first block's directory entries for the root
+inode of this file system. This command stops prematurely if the \fBEOF\fR is
+reached.
+
+.sp
+.in +2
+.nf
+> 2:ino,*?d
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 9 \fRUsing fsdb to change the current inode
+.sp
+.LP
+ The following command changes the current inode to that associated with the
+\fB5\fRth directory entry (numbered from \fB0\fR) of the current inode. The
+first logical block of the file is then displayed in \fBASCII\fR.
+
+.sp
+.in +2
+.nf
+> 5:dir:inode; 0:file,*/c
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 10 \fRUsing fsdb to change the i-number
+.sp
+.LP
+ The following command changes the i-number for the \fB7\fRth directory slot in
+the root directory to \fB3\fR.
+
+.sp
+.in +2
+.nf
+> 2:inode; 7:dir=3
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 11 \fRUsing fsdb to change the name field
+.sp
+.LP
+The following command changes the \fIname\fR field in the directory slot to
+\fBname\fR.
+
+.sp
+.in +2
+.nf
+ > 7:dir:nm="name"
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 12 \fRUsing fsdb to display the a block
+.sp
+.LP
+The following command displays the \fB3\fRrd block of the current inode as
+directory entries.
+
+.LP
+\fBExample 13 \fRUsing fsdb to set the contents of address
+.sp
+.LP
+The following command sets the contents of address \fB2050\fR to
+\fB0xffffffff\fR. \fB0xffffffff\fR can be truncated, depending on the current
+type.
+
+.sp
+.in +2
+.nf
+> 2050=0xffff
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 14 \fRUsing fsdb to place an ASCII string at an address
+.sp
+.LP
+The following command places the \fBASCII\fR string \fBthis is some text\fR at
+address \fB1c92434\fR.
+
+.sp
+.in +2
+.nf
+> 1c92434="this is some text"
+.fi
+.in -2
+.sp
+
+.SH SEE ALSO
+\fBclri\fR(8), \fBfsck_udfs\fR(8), \fBdir\fR(5), \fBattributes\fR(7)
diff --git a/usr/src/man/man8/fsdb_ufs.8 b/usr/src/man/man8/fsdb_ufs.8
new file mode 100644
index 0000000000..7851091298
--- /dev/null
+++ b/usr/src/man/man8/fsdb_ufs.8
@@ -0,0 +1,1229 @@
+'\" te
+.\" Copyright (c) 1988 Regents of the University
+.\" of California. All rights reserved. Copyright (c) 2003 Sun Microsystems,
+.\" Inc. All Rights Reserved.
+.TH FSDB_UFS 8 "Apr 14, 2003"
+.SH NAME
+fsdb_ufs \- ufs file system debugger
+.SH SYNOPSIS
+.LP
+.nf
+\fBfsdb\fR \fB-F\fR ufs [\fIgeneric_options\fR] [\fIspecific_options\fR] \fIspecial\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBfsdb_ufs\fR command is an interactive tool that can be used to patch up
+a damaged \fBUFS\fR file system. It has conversions to translate block and
+i-numbers into their corresponding disk addresses. Also included are mnemonic
+offsets to access different parts of an inode. These greatly simplify the
+process of correcting control block entries or descending the file system tree.
+.sp
+.LP
+\fBfsdb\fR contains several error-checking routines to verify inode and block
+addresses. These can be disabled if necessary by invoking \fBfsdb\fR with the
+\fB-o\fR option or by the use of the \fBo\fR command.
+.sp
+.LP
+\fBfsdb\fR reads a block at a time and will therefore work with raw as well as
+block \fBI/O\fR devices. A buffer management routine is used to retain commonly
+used blocks of data in order to reduce the number of read system calls. All
+assignment operations result in an immediate write-through of the corresponding
+block. Note that in order to modify any portion of the disk, \fBfsdb\fR must be
+invoked with the \fBw\fR option.
+.sp
+.LP
+Wherever possible, \fBadb-\fRlike syntax was adopted to promote the use of
+\fBfsdb\fR through familiarity.
+.SH OPTIONS
+.LP
+The following option is supported:
+.sp
+.ne 2
+.na
+\fB\fB-o\fR\fR
+.ad
+.RS 6n
+Specify \fBUFS\fR file system specific options. These options can be any
+combination of the following separated by commas (with no intervening spaces).
+The options available are:
+.sp
+.ne 2
+.na
+\fB\fB?\fR\fR
+.ad
+.RS 14n
+Display usage
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBo\fR\fR
+.ad
+.RS 14n
+Override some error conditions
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBp='string'\fR\fR
+.ad
+.RS 14n
+set prompt to string
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBw\fR\fR
+.ad
+.RS 14n
+open for write
+.RE
+
+.RE
+
+.SH USAGE
+.LP
+Numbers are considered hexadecimal by default. However, the user has control
+over how data is to be displayed or accepted. The \fBbase\fR command will
+display or set the input/output base. Once set, all input will default to this
+base and all output will be shown in this base. The base can be overridden
+temporarily for input by preceding hexadecimal numbers with \&'\fB0x\fR',
+preceding decimal numbers with '\fB0t\fR', or octal numbers with '\fB0\fR'.
+Hexadecimal numbers beginning with \fBa-f\fR or \fBA-F\fR must be preceded with
+\&'\fB0x\fR' to distinguish them from commands.
+.sp
+.LP
+Disk addressing by \fBfsdb\fR is at the byte level. However, \fBfsdb\fR offers
+many commands to convert a desired inode, directory entry, block, superblock
+and so forth to a byte address. Once the address has been calculated,
+\fBfsdb\fR will record the result in dot (\fB\&.\fR).
+.sp
+.LP
+Several global values are maintained by \fBfsdb\fR:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+the current base (referred to as \fBbase\fR),
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+the current address (referred to as \fBdot\fR),
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+the current inode (referred to as \fBinode\fR),
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+the current count (referred to as \fBcount\fR),
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+and the current type (referred to as \fBtype\fR).
+.RE
+.sp
+.LP
+Most commands use the preset value of \fBdot\fR in their execution. For
+example,
+.sp
+.LP
+\fB> 2:inode\fR
+.sp
+.LP
+will first set the value of \fBdot\fR to 2, ':', will alert the start of a
+command, and the \fBinode\fR command will set \fBinode\fR to 2. A count is
+specified after a ','. Once set, \fBcount\fR will remain at this value until a
+new command is encountered which will then reset the value back to 1 (the
+default). So, if
+.sp
+.LP
+\fB> 2000,400/X\fR
+.sp
+.LP
+is typed, 400 hex longs are listed from 2000, and when completed, the value of
+\fBdot\fR will be \fB2000 + 400 * sizeof (long)\fR. If a \fBRETURN\fR is then
+typed, the output routine will use the current values of \fBdot\fR,
+\fBcount\fR, and \fBtype\fR and display 400 more hex longs. A '*' will cause
+the entire block to be displayed.
+.sp
+.LP
+End of fragment, block and file are maintained by \fBfsdb\fR. When displaying
+data as fragments or blocks, an error message will be displayed when the end of
+fragment or block is reached. When displaying data using the \fBdb\fR,
+\fBib\fR, \fBdirectory\fR, or \fBfile\fR commands an error message is displayed
+if the end of file is reached. This is mainly needed to avoid passing the end
+of a directory or file and getting unknown and unwanted results.
+.sp
+.LP
+An example showing several commands and the use of \fBRETURN\fR would be:
+.sp
+.in +2
+.nf
+\fB> 2:ino; 0:dir?d\fR
+ or
+\fB> 2:ino; 0:db:block?d\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The two examples are synonymous for getting to the first directory entry of the
+root of the file system. Once there, any subsequent \fBRETURN\fR (or +, -)
+will advance to subsequent entries. Note that
+.sp
+.in +2
+.nf
+\fB> 2:inode; :ls\fR
+ or
+\fB> :ls /\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+is again synonymous.
+.SS "Expressions"
+.LP
+The symbols recognized by \fBfsdb\fR are:
+.sp
+.ne 2
+.na
+\fB\fBRETURN\fR\fR
+.ad
+.RS 13n
+update the value of \fBdot\fR by the current value of \fBtype\fR and display
+using the current value of \fBcount\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB#\fR\fR
+.ad
+.RS 13n
+numeric expressions may be composed of +, -, *, and % operators (evaluated left
+to right) and may use parentheses. Once evaluated, the value of \fBdot\fR is
+updated.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB,\fR\fI count\fR\fR
+.ad
+.RS 13n
+count indicator. The global value of \fBcount\fR will be updated to
+\fBcount\fR. The value of \fBcount\fR will remain until a new command is run. A
+count specifier of '*' will attempt to show a \fIblocks's\fR worth of
+information. The default for \fBcount\fR is 1.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB?\fR\fI f\fR\fR
+.ad
+.RS 13n
+display in structured style with format specifier \fIf\fR. See
+\fBFormatted Output\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/\fR\fI f\fR\fR
+.ad
+.RS 13n
+display in unstructured style with format specifier \fIf\fR. See
+\fBFormatted Output\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\&.\fR\fR
+.ad
+.RS 13n
+the value of \fBdot\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB+\fR\fIe\fR\fR
+.ad
+.RS 13n
+increment the value of \fBdot\fR by the expression \fIe.\fR The amount actually
+incremented is dependent on the size of \fBtype\fR:
+.sp
+\fBdot = dot + e * sizeof (type)\fR
+.sp
+The default for \fIe\fR is \fB1\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-\fR\fIe\fR\fR
+.ad
+.RS 13n
+decrement the value of \fBdot\fR by the expression \fIe\fR. See \fB+\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB*\fR\fIe\fR\fR
+.ad
+.RS 13n
+multiply the value of \fBdot\fR by the expression \fIe.\fR Multiplication and
+division don't use \fBtype\fR. In the above calculation of \fBdot\fR, consider
+the \fBsizeof(type)\fR to be \fB1\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB%\fR\fIe\fR\fR
+.ad
+.RS 13n
+divide the value of \fBdot\fR by the expression \fIe\fR. See \fB*\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB<\fR\fI name\fR\fR
+.ad
+.RS 13n
+restore an address saved in register \fIname\fR. \fIname\fR must be a single
+letter or digit.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB>\fR\fI name\fR\fR
+.ad
+.RS 13n
+save an address in register \fIname\fR. \fIname\fR must be a single letter or
+digit.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB=\fR\fI f\fR\fR
+.ad
+.RS 13n
+display indicator. If \fIf\fR is a legitimate format specifier, then the value
+of \fBdot\fR is displayed using the format specifier \fIf\fR. See
+\fBFormatted Output\fR. Otherwise, assignment is assumed. See \fB=\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB= [\fR\fIs\fR\fB] [\fR\fIe\fR\fB]\fR\fR
+.ad
+.RS 13n
+assignment indicator. The address pointed to by \fBdot\fR has its contents
+changed to the value of the expression \fIe\fR or to the \fBASCII\fR
+representation of the quoted (") string \fIs\fR. This may be useful for
+changing directory names or \fBASCII\fR file information.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB=+\fR\fI e\fR\fR
+.ad
+.RS 13n
+incremental assignment. The address pointed to by \fBdot\fR has its contents
+incremented by expression \fIe\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB=-\fR\fI e\fR\fR
+.ad
+.RS 13n
+decremental assignment. The address pointed to by \fBdot\fR has its contents
+decremented by expression \fIe\fR.
+.RE
+
+.SS "Commands"
+.LP
+A command must be prefixed by a ':' character. Only enough letters of the
+command to uniquely distinguish it are needed. Multiple commands may be entered
+on one line by separating them by a \fBSPACE,\fR \fBTAB\fR or ';'.
+.sp
+.LP
+In order to view a potentially unmounted disk in a reasonable manner,
+\fBfsdb\fR offers the \fBcd\fR, \fBpwd\fR, \fBls\fR and \fBfind\fR commands.
+The functionality of these commands substantially matches those of its UNIX
+counterparts. See individual commands for details. The '*', '?', and '[-]' wild
+card characters are available.
+.sp
+.ne 2
+.na
+\fB\fBbase=b\fR\fR
+.ad
+.sp .6
+.RS 4n
+display or set base. As stated above, all input and output is governed by the
+current \fBbase\fR. If the \fB=b\fR is omitted, the current \fBbase\fR is
+displayed. Otherwise, the current \fBbase\fR is set to \fIb.\fR Note that this
+is interpreted using the old value of \fBbase\fR, so to ensure correctness use
+the '0', '0t', or '0x' prefix when changing the \fBbase\fR. The default for
+\fBbase\fR is hexadecimal.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBblock\fR\fR
+.ad
+.sp .6
+.RS 4n
+convert the value of \fBdot\fR to a block address.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcd \fR\fIdir\fR\fR
+.ad
+.sp .6
+.RS 4n
+change the current directory to directory \fIdir\fR. The current values of
+\fBinode\fR and \fBdot\fR are also updated. If no \fIdir\fR is specified, then
+change directories to inode \fB2\fR ("/").
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcg\fR\fR
+.ad
+.sp .6
+.RS 4n
+convert the value of \fBdot\fR to a cylinder group.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdirectory\fR\fR
+.ad
+.sp .6
+.RS 4n
+If the current \fBinode\fR is a directory, then the value of \fBdot\fR is
+converted to a directory slot offset in that directory and \fBdot\fR now points
+to this entry.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfile\fR\fR
+.ad
+.sp .6
+.RS 4n
+the value of \fBdot\fR is taken as a relative block count from the beginning of
+the file. The value of \fBdot\fR is updated to the first byte of this block.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfind\fR \fIdir\fR [ \fB-name\fR \fIn\fR] [\fB-inum\fR \fIi\fR]\fR
+.ad
+.sp .6
+.RS 4n
+find files by name or i-number. \fBfind\fR recursively searches directory
+\fBdir\fR and below for filenames whose i-number matches \fIi\fR or whose name
+matches pattern \fIn\fR. Note that only one of the two options (-name or -inum)
+may be used at one time. Also, the -print is not needed or accepted.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfill\fR\fI=p\fR\fR
+.ad
+.sp .6
+.RS 4n
+fill an area of disk with pattern \fIp\fR. The area of disk is delimited by
+\fBdot\fR and \fBcount\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfragment\fR\fR
+.ad
+.sp .6
+.RS 4n
+convert the value of \fIdot\fR to a fragment address. The only difference
+between the \fBfragment\fR command and the \fBblock\fR command is the amount
+that is able to be displayed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBinode\fR\fR
+.ad
+.sp .6
+.RS 4n
+convert the value of \fIdot\fR to an inode address. If successful, the current
+value of \fBinode\fR will be updated as well as the value of \fIdot\fR. As a
+convenient shorthand, if ':inode' appears at the beginning of the line, the
+value of \fIdot\fR is set to the current \fBinode\fR and that inode is
+displayed in inode format.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBlog_chk\fR\fR
+.ad
+.sp .6
+.RS 4n
+run through the valid log entries without printing any information and verify
+the layout.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBlog_delta\fR\fR
+.ad
+.sp .6
+.RS 4n
+count the number of deltas into the log, using the value of dot as an offset
+into the log. No checking is done to make sure that offset is within the
+head/tail offsets.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBlog_head\fR\fR
+.ad
+.sp .6
+.RS 4n
+display the header information about the file system logging. This shows the
+block allocation for the log and the data structures on the disk.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBlog_otodb\fR\fR
+.ad
+.sp .6
+.RS 4n
+return the physical disk block number, using the value of dot as an offset into
+the log.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBlog_show\fR\fR
+.ad
+.sp .6
+.RS 4n
+display all deltas between the beginning of the log (BOL) and the end of the
+log (EOL).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBls\fR\fR
+.ad
+.sp .6
+.RS 4n
+[ \fB-R\fR ] [ \fB-l\fR ] \fIpat1 pat2\fR\|.\|.\|. list directories or files.
+If no file is specified, the current directory is assumed. Either or both of
+the options may be used (but, if used, \fImust\fR be specified before the
+filename specifiers). Also, as stated above, wild card characters are available
+and multiple arguments may be given. The long listing shows only the i-number
+and the name; use the \fBinode\fR command with '?i' to get more information.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBoverride\fR\fR
+.ad
+.sp .6
+.RS 4n
+toggle the value of override. Some error conditions may be overridden if
+override is toggled on.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBprompt\fR\fI p\fR\fR
+.ad
+.sp .6
+.RS 4n
+change the \fBfsdb\fR prompt to \fIp\fR. \fIp\fR must be surrounded by (")s.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpwd\fR\fR
+.ad
+.sp .6
+.RS 4n
+display the current working directory.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBquit\fR\fR
+.ad
+.sp .6
+.RS 4n
+quit \fBfsdb\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsb\fR\fR
+.ad
+.sp .6
+.RS 4n
+the value of \fIdot\fR is taken as a cylinder group number and then converted
+to the address of the superblock in that cylinder group. As a shorthand, ':sb'
+at the beginning of a line will set the value of \fIdot\fR to \fIthe\fR
+superblock and display it in superblock format.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBshadow\fR\fR
+.ad
+.sp .6
+.RS 4n
+if the current inode is a shadow inode, then the value of \fIdot\fR is set to
+the beginning of the shadow inode data.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB!\fR\fR
+.ad
+.sp .6
+.RS 4n
+escape to shell
+.RE
+
+.SS "Inode Commands"
+.LP
+In addition to the above commands, there are several commands that deal with
+inode fields and operate directly on the current \fBinode\fR (they still
+require the ':'). They may be used to more easily display or change the
+particular fields. The value of \fIdot\fR is only used by the '\fB:db\fR'
+and '\fB:ib\fR' commands. Upon completion of the command, the value of \fIdot\fR is
+changed to point to that particular field. For example,
+.sp
+.LP
+\fB> :ln=+1\fR
+.sp
+.LP
+would increment the link count of the current \fBinode\fR and set the value of
+\fIdot\fR to the address of the link count field.
+.sp
+.ne 2
+.na
+\fB\fBat\fR\fR
+.ad
+.RS 7n
+access time.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBbs\fR\fR
+.ad
+.RS 7n
+block size.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBct\fR\fR
+.ad
+.RS 7n
+creation time.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdb\fR\fR
+.ad
+.RS 7n
+use the current value of \fIdot\fR as a direct block index, where direct blocks
+number from 0 - 11. In order to display the block itself, you need to 'pipe'
+this result into the \fBblock\fR or \fBfragment\fR command. For example,
+.sp
+.in +2
+.nf
+\fB > 1:db:block,20/X\fR
+.fi
+.in -2
+.sp
+
+would get the contents of data block field 1 from the inode and convert it to a
+block address. 20 longs are then displayed in hexadecimal. See
+\fBFormatted Output\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBgid\fR\fR
+.ad
+.RS 7n
+group id.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBib\fR\fR
+.ad
+.RS 7n
+use the current value of \fIdot\fR as an indirect block index where indirect
+blocks number from 0 - 2. This will only get the indirect block itself (the
+block containing the pointers to the actual blocks). Use the \fBfile\fR command
+and start at block 12 to get to the actual blocks.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBln\fR\fR
+.ad
+.RS 7n
+link count.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmt\fR\fR
+.ad
+.RS 7n
+modification time.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmd\fR\fR
+.ad
+.RS 7n
+mode.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmaj\fR\fR
+.ad
+.RS 7n
+major device number.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmin\fR\fR
+.ad
+.RS 7n
+minor device number.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnm\fR\fR
+.ad
+.RS 7n
+although listed here, this command actually operates on the directory name
+field. Once poised at the desired directory entry (using the \fIdirectory\fR
+command), this command will allow you to change or display the directory name.
+For example,
+.sp
+\fB> 7:dir:nm="foo"\fR
+.sp
+will get the \fB7\fRth directory entry of the current \fBinode\fR and change
+its name to foo. Note that names cannot be made larger than the field is set up
+for. If an attempt is made, the string is truncated to fit and a warning
+message to this effect is displayed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsi\fR\fR
+.ad
+.RS 7n
+shadow inode.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsz\fR\fR
+.ad
+.RS 7n
+file size.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBuid\fR\fR
+.ad
+.RS 7n
+user id.
+.RE
+
+.SS "Formatted Output"
+.LP
+There are two styles and many format types. The two styles are structured and
+unstructured. Structured output is used to display inodes, directories,
+superblocks and the like. Unstructured displays raw data. The following shows
+the different ways of displaying:
+.sp
+.ne 2
+.na
+\fB\fB?\fR\fR
+.ad
+.RS 5n
+.sp
+.ne 2
+.na
+\fB\fBc\fR\fR
+.ad
+.RS 5n
+display as cylinder groups
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBi\fR\fR
+.ad
+.RS 5n
+display as inodes
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBd\fR\fR
+.ad
+.RS 5n
+display as directories
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBs\fR\fR
+.ad
+.RS 5n
+display as superblocks
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBS\fR\fR
+.ad
+.RS 5n
+display as shadow inode data
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/\fR\fR
+.ad
+.RS 5n
+.sp
+.ne 2
+.na
+\fB\fBb\fR\fR
+.ad
+.RS 7n
+display as bytes
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBc\fR\fR
+.ad
+.RS 7n
+display as characters
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBo O\fR\fR
+.ad
+.RS 7n
+display as octal shorts or longs
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBd D\fR\fR
+.ad
+.RS 7n
+display as decimal shorts or longs
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBx X\fR\fR
+.ad
+.RS 7n
+display as hexadecimal shorts or longs
+.RE
+
+The format specifier immediately follows the '/' or '?' character. The values
+displayed by '/b' and all '?' formats are displayed in the current \fBbase\fR.
+Also, \fBtype\fR is appropriately updated upon completion.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRDisplaying in Decimal
+.sp
+.LP
+The following command displays \fB2010\fR in decimal (use of \fBfsdb\fR as a
+calculator for complex arithmetic):
+
+.sp
+.in +2
+.nf
+> 2000+400%(20+20)=D
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRDisplaying an i-number in Inode Format
+.sp
+.LP
+The following command displays i-number \fB386\fR in an inode format. This now
+becomes the current \fBinode\fR:
+
+.sp
+.in +2
+.nf
+> 386:ino?i
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRChanging the Link Count
+.sp
+.LP
+The following command changes the link count for the current \fBinode\fR to
+\fB4\fR:
+
+.sp
+.in +2
+.nf
+> :ln=4
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 4 \fRIncrementing the Link Count
+.sp
+.LP
+The following command increments the link count by \fB1\fR:
+
+.sp
+.in +2
+.nf
+> :ln=+1
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 5 \fRDisplaying the Creation Time
+.sp
+.LP
+The following command displays the creation time as a hexadecimal long:
+
+.sp
+.in +2
+.nf
+> :ct=X
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 6 \fRDisplaying the Modification Time
+.sp
+.LP
+The following command displays the modification time in time format:
+
+.sp
+.in +2
+.nf
+> :mt=t
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 7 \fRDisplaying in ASCII
+.sp
+.LP
+The following command displays in \fBASCII,\fR block zero of the file
+associated with the current \fBinode\fR:
+
+.sp
+.in +2
+.nf
+> 0:file/c
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 8 \fRDisplaying the First Block's Worth of Directorty Entries
+.sp
+.LP
+The following command displays the first block's worth of directory entries for
+the root inode of this file system. It will stop prematurely if the \fBEOF\fR
+is reached:
+
+.sp
+.in +2
+.nf
+> 2:ino,*?d
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 9 \fRDisplaying Changes to the Current Inode
+.sp
+.LP
+The following command displays changes the current inode to that associated
+with the \fB5\fRth directory entry (numbered from zero) of the current
+\fBinode\fR. The first logical block of the file is then displayed in
+\fBASCII\fR:
+
+.sp
+.in +2
+.nf
+> 5:dir:inode; 0:file,*/c
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 10 \fRDisplaying the Superblock
+.sp
+.LP
+The following command displays the superblock of this file system:
+
+.sp
+.in +2
+.nf
+> :sb
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 11 \fRDisplaying the Cylinder Group
+.sp
+.LP
+The following command displays cylinder group information and summary for
+cylinder group \fB1\fR:
+
+.sp
+.in +2
+.nf
+> 1:cg?c
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 12 \fRChanging the i-number
+.sp
+.LP
+The following command changes the i-number for the seventh directory slot in
+the root directory to \fB3\fR:
+
+.sp
+.in +2
+.nf
+> 2:inode; 7:dir=3
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 13 \fRDisplaying as Directory Entries
+.sp
+.LP
+The following command displays the third block of the current \fBinode\fR as
+directory entries:
+
+.sp
+.in +2
+.nf
+> 2:db:block,*?d
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 14 \fRChanging the Name Field
+.sp
+.LP
+The following command changes the name field in the directory slot to
+\fIname\fR:
+
+.sp
+.in +2
+.nf
+> 7:dir:nm="name"
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 15 \fRGetting and Filling Elements
+.sp
+.LP
+The following command gets fragment \fB3c3\fR and fill \fB20\fR \fBtype\fR
+elements with \fB0x20\fR:
+
+.sp
+.in +2
+.nf
+> 3c3:fragment,20:fill=0x20
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 16 \fRSetting the Contents of an Address
+.sp
+.LP
+The following command sets the contents of address \fB2050\fR to
+\fB0xffffffff\fR. \fB0xffffffff\fR may be truncated depending on the current
+\fBtype\fR:
+
+.sp
+.in +2
+.nf
+> 2050=0xffff
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 17 \fRPlacing ASCII
+.sp
+.LP
+The following command places the \fBASCII\fR for the string at \fB1c92434\fR:
+
+.sp
+.in +2
+.nf
+> 1c92434="this is some text"
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 18 \fRDisplaying Shadow Inode Data
+.sp
+.LP
+The following command displays all of the shadow inode data in the shadow inode
+associated with the root inode of this file system:
+
+.sp
+.in +2
+.nf
+> 2:ino:si:ino;0:shadow,*?S
+.fi
+.in -2
+.sp
+
+.SH SEE ALSO
+.LP
+.BR ufs (4FS),
+.BR dir_ufs (5),
+.BR attributes (7),
+.BR clri (8),
+.BR fsck_ufs (8)
+.SH WARNINGS
+.LP
+Since \fBfsdb\fR reads the disk raw, extreme caution is advised in determining
+its availability of \fBfsdb\fR on the system. Suggested permissions are 600 and
+owned by bin.
+.SH NOTES
+.LP
+The old command line syntax for clearing i-nodes using the ufs-specific
+\fB\&'-z i-number'\fR option is still supported by the new debugger, though it
+is obsolete and will be removed in a future release. Use of this flag will
+result in correct operation, but an error message will be printed warning of
+the impending obsolesence of this option to the command. The equivalent
+functionality is available using the more flexible \fBclri\fR(8) command.
diff --git a/usr/src/man/man8/fsirand.8 b/usr/src/man/man8/fsirand.8
new file mode 100644
index 0000000000..a81f9c2694
--- /dev/null
+++ b/usr/src/man/man8/fsirand.8
@@ -0,0 +1,49 @@
+'\" te
+.\" Copyright (c) 1996, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH FSIRAND 8 "Sep 16, 1996"
+.SH NAME
+fsirand \- install random inode generation numbers
+.SH SYNOPSIS
+.LP
+.nf
+\fBfsirand\fR [\fB-p\fR] \fIspecial\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBfsirand\fR installs random inode generation numbers on all the inodes on
+device \fIspecial\fR, and also installs a file system \fBID\fR in the
+superblock. This helps increase the security of file systems exported by
+\fBNFS.\fR
+.sp
+.LP
+\fBfsirand\fR must be used only on an unmounted file system that has been
+checked with \fBfsck\fR(8) The only exception is that it can be used on the
+root file system in single-user mode, if the system is immediately re-booted
+afterwards.
+.SH OPTIONS
+.sp
+.ne 2
+.na
+\fB\fB-p\fR\fR
+.ad
+.RS 6n
+Print out the generation numbers for all the inodes, but do not change the
+generation numbers.
+.RE
+
+.SH USAGE
+.sp
+.LP
+See \fBlargefile\fR(7) for the description of the behavior of \fBfsirand\fR
+when encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7),
+.BR largefile (7),
+.BR fsck (8)
diff --git a/usr/src/man/man8/fssnap.8 b/usr/src/man/man8/fssnap.8
new file mode 100644
index 0000000000..7cba86abee
--- /dev/null
+++ b/usr/src/man/man8/fssnap.8
@@ -0,0 +1,170 @@
+'\" te
+.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH FSSNAP 8 "Aug 11, 2004"
+.SH NAME
+fssnap \- create temporary snapshots of a file system
+.SH SYNOPSIS
+.LP
+.nf
+\fBfssnap\fR [\fB-F\fR \fIFSType\fR] [\fB-V\fR] \fB-o\fR \fIspecial_options\fR \fI/mount/point\fR
+.fi
+
+.LP
+.nf
+\fBfssnap \fR \fB-d\fR [\fB-F\fR \fI FSType\fR] [\fB-V\fR] \fI/mount/point\fR | \fIdev\fR
+.fi
+
+.LP
+.nf
+\fBfssnap\fR \fB-i\fR [\fB-F\fR \fIFSType\fR] [\fB-V\fR] [\fB-o\fR \fIspecial_options\fR]
+ [\fI/mount/point\fR | \fIdev\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBfssnap\fR command creates a stable, read-only snapshot of a file system
+when given either an active mount point or a special device containing a
+mounted file system, as in the first form of the synopsis. A snapshot is a
+temporary image of a file system intended for backup operations.
+.sp
+.LP
+While the snapshot file system is stable and consistent, an application
+updating files when the snapshot is created might leave these files in an
+internally inconsistent, truncated, or otherwise unusable state. In such a
+case, the snapshot will contain these partially written or corrupted files. It
+is a good idea to ensure active applications are suspended or checkpointed and
+their associated files are also consistent during snapshot creation.
+.sp
+.LP
+File access times are not updated while the snapshot is being created.
+.sp
+.LP
+A path to the virtual device that contains this snapshot is printed to standard
+output when a snapshot is created.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-d\fR\fR
+.ad
+.RS 22n
+Deletes the snapshot associated with the given file system.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-F\fR \fIFSType\fR\fR
+.ad
+.RS 22n
+Specifies the file system type to be used. The \fBFSType\fR should either be
+specified here or be determined by matching the block special device with an
+entry in the \fB/etc/vfstab\fR table, or by consulting \fB/etc/default/fs\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-i\fR\fR
+.ad
+.RS 22n
+Displays the state of any given \fBFSType\fR snapshot. If a mount-point or
+device is not given, a list of all snapshots on the system is displayed. When a
+mount-point or device is specified, detailed information is provided for the
+specified file system snapshot by default. The format and meaning of this
+information is file-system dependent. See the \fBFSType\fR-specific
+\fBfssnap\fR man page for details.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-o\fR \fIspecial_options\fR\fR
+.ad
+.RS 22n
+See the \fBFSType\fR-specific man page for \fBfssnap\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-V\fR\fR
+.ad
+.RS 22n
+Echoes the complete command line, but does not execute the command.
+.RE
+
+.SH OPERANDS
+.sp
+.LP
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fB\fI/mount/point\fR\fR
+.ad
+.RS 16n
+The directory where the file system resides.
+.RE
+
+.SH EXAMPLES
+.sp
+.LP
+See \fBFSType\fR-specific man pages for examples.
+.SH EXIT STATUS
+.sp
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 6n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB>\fB0\fR\fR
+.ad
+.RS 6n
+An error occurred.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/vfstab\fR\fR
+.ad
+.RS 19n
+Specifies file system type.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/default/fs\fR\fR
+.ad
+.RS 19n
+Specifies the default local file system type.
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7),
+.BR fssnap_ufs (8)
+.SH NOTES
+.sp
+.LP
+This command might not be supported for all \fBFSTypes\fR.
diff --git a/usr/src/man/man8/fssnap_ufs.8 b/usr/src/man/man8/fssnap_ufs.8
new file mode 100644
index 0000000000..0dfbf57c5d
--- /dev/null
+++ b/usr/src/man/man8/fssnap_ufs.8
@@ -0,0 +1,538 @@
+'\" te
+.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
+.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH FSSNAP_UFS 8 "May 13, 2017"
+.SH NAME
+fssnap_ufs \- create a temporary snapshot of a UFS file system
+.SH SYNOPSIS
+.LP
+.nf
+\fBfssnap\fR [\fB-F\fR ufs] [\fB-V\fR] \fB-o\fR \fIbacking-store\fR=\fIpath\fR,
+ [\fIspecific-options\fR] \fI/mount/point\fR
+.fi
+
+.LP
+.nf
+\fBfssnap\fR \fB-d\fR [\fB-F\fR ufs] [\fB-V\fR] \fI/mount/point\fR | \fIdev\fR
+.fi
+
+.LP
+.nf
+\fBfssnap\fR \fB-i\fR [\fB-F\fR ufs] [\fB-V\fR] [\fB-o\fR \fIspecific-options\fR] \fI/mount/point\fR | \fIdev\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBfssnap\fR command queries, creates, or deletes a temporary snapshot of a
+\fBUFS\fR file system. A snapshot is a point-in-time image of a file system
+that provides a stable and unchanging device interface for backups.
+.sp
+.LP
+When creating a file system snapshot, you must specify the file system to be
+captured and the backing-store file. The backing-store file(s) are where the
+snapshot subsystem saves old file system data before it is overwritten. Beyond
+the first backing-store file, \fBfssnap\fR automatically creates additional
+backing-store files on an as-needed basis.
+.sp
+.LP
+The number and size of the backing store files varies with the amount of
+activity in the file system. The destination path must have enough free space
+to hold the backing-store file(s). This location must be different from the
+file system that is being captured in a snapshot. The backing-store file(s) can
+reside on any type of file system, including another \fBUFS\fR file system or
+an \fBNFS\fR-mounted file system.
+.SH OPTIONS
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-d\fR\fR
+.ad
+.sp .6
+.RS 4n
+Deletes the snapshot associated with the given file system.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-i\fR\fR
+.ad
+.sp .6
+.RS 4n
+Displays the state of one or all \fBUFS\fR snapshots. If a mount-point or
+device is not specified, a list of all snapshots on the system is displayed.
+When a mount-point or device is specified, detailed information is provided for
+the specified file system snapshot by default.
+.sp
+Use the \fB-o\fR options with the \fB-i\fR option to specify what snapshot
+information is displayed. Since this feature is provided primarily for use in
+scripts and on the command line, no labels are displayed for the data. Sizes
+are all in bytes, and the output is not internationalized or localized. The
+information is displayed on one line per option. Unrecognized options display a
+single \fB?\fR on the line. One line per option guarantees that there are the
+same number of lines as options specified and there is a one-to-one
+correspondence between an output line and an option.
+.sp
+The following \fB-o\fR options display specific information for a given
+snapshot. See the EXAMPLES section for examples of how to use these options.
+.sp
+.ne 2
+.na
+\fB\fBsnapnumber\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display the snapshot number.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBblockdevname\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display the block device path.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrawdevname\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display the raw device path.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmountpoint\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display the mount point of the master file system.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBstate\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display the state of the snapshot device.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBbacking-store\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display the location of the first backing-store file for this snapshot. If
+there are multiple backing-store files, subsequent files have the same name as
+the first file, with the suffixes \fB\&.2\fR, \fB\&.3\fR, and so forth.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBbacking-store-len\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display the sum of the sizes of the backing-store files.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmaxsize\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display the \fBmaxsize\fR value specified for the backing-store file(s).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcreatetime\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display the time that the snapshot was created.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBchunksize\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display the copy-on-write granularity.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-o\fR \fIspecific-options\fR\fR
+.ad
+.sp .6
+.RS 4n
+Without \fB-d\fR or \fB-i\fR, the default action is to create a snapshot.
+Specify the following options when creating a snapshot. All of these options
+are discretionary, except for the backing-store file, which is required.
+.sp
+.ne 2
+.na
+\fB\fBbacking-store=\fR\fIpath\fR\fR
+.ad
+.sp .6
+.RS 4n
+Uses \fIpath\fR in the creation of the backing-store file(s). \fIpath\fR must
+not reside on the file system that is being captured in a snapshot and must not
+be the name of an existing file. If \fIpath\fR is a directory, then a
+backing-store file is created within it using a name that is generated
+automatically. If \fIpath\fR is not a directory and does not already exist,
+then a backing-store file with that name is created. If more than one
+backing-store file is required, \fBfssnap\fR creates subsequent files
+automatically. The second and subsequent files have the same name as the first
+file, with suffixes of \fB\&.2\fR, \fB\&.3\fR, and so forth.
+.sp
+This option can be abbreviated as \fBbf=\fR\fIpath\fR or \fBbs=\fR\fIpath\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBunlink\fR\fR
+.ad
+.sp .6
+.RS 4n
+Unlinks the backing-store file after the snapshot is created. This option
+specifies that the backing-store file does not need to be removed manually when
+the snapshot is deleted. This might make administration more difficult since
+the file is not visible in the file system. If this option is not specified,
+the backing-store files should be removed manually after the snapshot is
+deleted.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBchunksize=\fR\fIn\fR [\fBk\fR,\fBm\fR,\fBg\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Uses \fIn\fR for the chunk size. Chunk size is the granularity of the data that
+is sent to the backing store.
+.sp
+Specify \fBchunksize\fR in the following units: \fBk\fR for kilobytes, \fBm\fR
+for megabytes, or \fBg\fR for gigabytes. By default, chunk size is four times
+the block size of the file system (typically \fB32k\fR).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmaxsize=\fR\fIn\fR[\fBk\fR,\fBm\fR,\fBg\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Does not allow the sum of the sizes of the backing-store file(s) to exceed
+\fIn\fR, where \fIn\fR is the unit specified. The snapshot is deleted
+automatically when the sum of the sizes of the backing-store file(s) exceeds
+\fBmaxsize\fR.
+.sp
+Specify \fBmaxsize\fR in the following units: \fBk\fR for kilobytes, \fBm\fR
+for megabytes, or \fBg\fR for gigabytes.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBraw\fR\fR
+.ad
+.sp .6
+.RS 4n
+Displays to standard output the name of the raw device instead of the block
+device when a snapshot is created. The block device is printed by default (when
+\fBraw\fR is not specified). This option makes it easier to embed \fBfssnap\fR
+commands in the command line for commands that require the raw device instead.
+Both devices are always created. This option affects only the output.
+.RE
+
+.RE
+
+.SH OPERANDS
+.LP
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fB\fImount-point\fR\fR
+.ad
+.sp .6
+.RS 4n
+The directory where the file system resides.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIspecial\fR\fR
+.ad
+.sp .6
+.RS 4n
+The physical device for the file system, such as \fB/dev/dsk/c0t0d0s7\fR.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRCreating a Snapshot of a File System
+.sp
+.LP
+The following example creates a snapshot of a file system. The block special
+device created for the snapshot is \fB/dev/fssnap/0\fR.
+
+.sp
+.in +2
+.nf
+# fssnap -F ufs -o backing-store=/var/tmp /export/home
+/dev/fssnap/0
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRBacking Up a File System Snapshot Without Having To Unmount the
+File System
+.sp
+.LP
+The following example backs up a file system snapshot without having to unmount
+the file system. Since \fBufsdump\fR requires the path to a raw device, the
+\fBraw\fR option is used. The \fB/export/home\fR file system snapshot is
+removed in the second command.
+
+.sp
+.in +2
+.nf
+# ufsdump 0uf /dev/rmt/0 `fssnap -F ufs
+ -o raw,bs=/export/snap /export/home`
+\fI<output from ufsdump>\fR
+# fssnap -F ufs -d /export/home
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRBacking Up a File System
+.sp
+.LP
+When backing up a file system, do not let the backing-store file(s) exceed
+\fB400\fR \fBMbytes\fR. The second command removes the \fB/export/home\fR file
+system snapshot.
+
+.sp
+.in +2
+.nf
+# ufsdump 0uf /dev/rmt/0 `fssnap -F ufs
+ -o maxsize=400m,backing-store=/export/snap,raw
+ /export/home`
+# fssnap -F ufs -d /export/home
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 4 \fRPerforming an Incremental Dump of a Snapshot
+.sp
+.LP
+The following example uses \fBufsdump\fR to back up a snapshot of \fB/var\fR.
+Note the use of the \fBN\fR option to \fBufsdump\fR, which writes the name of
+the device being dumped, rather than the name of the snapshot device, to
+\fB/etc/dumpdates\fR file. See \fBufsdump\fR(8) for details on the \fBN\fR
+flag.
+
+.sp
+.in +2
+.nf
+# ufsdump lfNu /dev/rmt/0 /dev/rdsk/c0t3d0s2 `fssnap -F ufs
+-o raw,bs=/export/scratch,unlink /var`
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 5 \fRFinding Out What Snapshots Currently Exist
+.sp
+.LP
+The following command displays the currently existing snapshots.
+
+.sp
+.in +2
+.nf
+# fssnap -i
+0 /src
+1 /export/home
+\fI<output continues>\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 6 \fRMounting a File System Snapshot
+.sp
+.LP
+The following example creates a file system snapshot. After you create a file
+system snapshot, mount it on \fB/tmp/mount\fR for temporary read-only access.
+
+.sp
+.in +2
+.nf
+# fssnap -F ufs -o backing-store=/nfs/server/scratch /export/home
+/dev/fssnap/1
+# mkdir /tmp/mount
+# mount -F ufs -o ro /dev/fssnap/1 /tmp/mount
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 7 \fRCreating a File System Snapshot and Unlinking the Backing-store
+File
+.sp
+.LP
+The following example creates a file system snapshot and unlinks the
+backing-store file. After creating a file system snapshot and unlinking the
+backing-store file, check the state of the snapshot.
+
+.sp
+.in +2
+.nf
+# fssnap -o bs=/scratch,unlink /src
+/dev/fssnap/0
+# fssnap -i /src
+Snapshot number : 0
+Block Device : /dev/fssnap/0
+Raw Device : /dev/rfssnap/0
+Mount point : /src
+Device state : active
+Backing store path : /scratch/snapshot2 <UNLINKED>
+Backing store size : 192 KB
+Maximum backing store size : Unlimited
+Snapshot create time : Sat May 06 10:55:11 2000
+Copy-on-write granularity : 32 KB
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 8 \fRDisplaying the Size and Location of the Backing-store File(s)
+and the Creation Time for the Snapshot
+.sp
+.LP
+The following example displays the size of the backing-store file(s) in bytes,
+the location of the backing store, and the creation time for the snapshot of
+the \fB/test\fR file system.
+
+.sp
+.in +2
+.nf
+# fssnap -i -o backing-store-len,backing-store,createtime /test
+196608
+/snapshot2
+Sat May 6 10:55:11 2000
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Note that if there are multiple backing-store files stored in \fB/snapshot2\fR,
+they will have names of the form \fIfile\fR (for the first file), \fIfile\fR.1,
+\fIfile\fR.2, and so forth.
+
+.SH EXIT STATUS
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.sp .6
+.RS 4n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB>\fB0\fR\fR
+.ad
+.sp .6
+.RS 4n
+An error occurred.
+.RE
+
+.sp
+.LP
+The script-readable output mode is a stable interface that can be added to, but
+will not change. All other interfaces are subject to change.
+.SH SEE ALSO
+.LP
+.BR mlock (3C),
+.BR attributes (7)
+.SH NOTES
+.LP
+The \fBfssnap\fR device files should be treated like a regular disk block or
+character device.
+.sp
+.LP
+The association between a file system and the snapshot is lost when the
+snapshot is deleted or the system reboots. Snapshot persistence across reboots
+is not supported.
+.sp
+.LP
+To avoid unnecessary performance impacts, perform the snapshot and system
+backup when the system is least active.
+.sp
+.LP
+It is not possible to perform a snapshot of a file system if any of the
+following conditions are true:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The file system is in use by system accounting
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The file system contains a local swap file
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The file system is used as backing store by an application that uses
+\fBmlock\fR(3C) to lock its pages. Typically, these are real time applications,
+such as \fBntpd\fR.
+.RE
+.sp
+.LP
+These conditions result in \fBfssnap\fR being unable to write lock the file
+system prior to performing the snapshot.
diff --git a/usr/src/man/man8/fsstat.8 b/usr/src/man/man8/fsstat.8
new file mode 100644
index 0000000000..9225f9a159
--- /dev/null
+++ b/usr/src/man/man8/fsstat.8
@@ -0,0 +1,852 @@
+'\" te
+.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH FSSTAT 8 "Jan 5, 2007"
+.SH NAME
+fsstat \- report file system statistics
+.SH SYNOPSIS
+.LP
+.nf
+\fBfsstat\fR [\fB-a|f|i|n|v\fR] [\fB-T\fR | u|d] {\fB-F\fR | {\fIfstype\fR|\fIpath\fR}...}
+ [\fIinterval\fR [\fIcount\fR]]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBfsstat\fR reports kernel file operation activity by the file system type
+(\fIfstype\fR) or by the path name, which is converted to a mount point. The
+first set of lines of output reports all activity since:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The file system module was loaded (in the case of \fIfstype\fR)
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The file system was mounted (in the case of mount point)
+.RE
+.sp
+.LP
+Statistics are gathered at the file system independent layer at both the
+\fIfstype\fR and the mount point levels. However, not all file system types are
+represented in the gathering of statistics. (See the NOTES section of this man
+page.)
+.sp
+.LP
+The output of \fBfsstat\fR is dependent on the mode (option) requested. All
+statistic fields are displayed using "smart numbers" which automatically scale
+the units in a human readable form that fits in a maximum of 5 characters. For
+example:
+.sp
+.ne 2
+.na
+\fB100\fR
+.ad
+.RS 11n
+is displayed as 100
+.RE
+
+.sp
+.ne 2
+.na
+\fB2048\fR
+.ad
+.RS 11n
+is displayed as 2K
+.RE
+
+.sp
+.ne 2
+.na
+\fB3000000\fR
+.ad
+.RS 11n
+is displayed as 2.86M
+.RE
+
+.sp
+.LP
+The unit modifiers are: K (Kbyte), M (Mbyte), G (Gbyte), T (terabyte), P
+(petabyte), and E (exabyte).
+.sp
+.LP
+During the execution of \fBfsstat\fR, the state of the system can change. If
+relevant, a state change message is included in the \fBfsstat\fR output in one
+of the following forms:
+.sp
+.in +2
+.nf
+<<mount point no longer available: {path}>>
+<<file system module no longer loaded: {fstype}>>
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+After the state change messages are displayed, \fBfsstat\fR continues to
+display the statistics as directed. If all of the \fIfstypes\fR and mount
+points that \fBfsstat\fR was reporting on are no longer available, then
+\fBfsstat\fR exits.
+.sp
+.LP
+The user is required to specify the \fB-F\fR option (all available file system
+types) or a list of one or more \fIfstypes\fR and/or mount points.
+.sp
+.LP
+The default report shows general file system activity. This display combines
+similar operations into general categories as follows:
+.sp
+.ne 2
+.na
+\fBnew file\fR
+.ad
+.RS 15n
+Number of creation operations for file system objects (for example, files,
+directories, symlinks, etc.)
+.RE
+
+.sp
+.ne 2
+.na
+\fBname remov\fR
+.ad
+.RS 15n
+Number of name removal operations
+.RE
+
+.sp
+.ne 2
+.na
+\fBname chng\fR
+.ad
+.RS 15n
+Number of name change operations
+.RE
+
+.sp
+.ne 2
+.na
+\fBattr get\fR
+.ad
+.RS 15n
+Number of object attribute retrieval operations
+.RE
+
+.sp
+.ne 2
+.na
+\fBattr set\fR
+.ad
+.RS 15n
+Number of object attribute change operations
+.RE
+
+.sp
+.ne 2
+.na
+\fBlookup ops\fR
+.ad
+.RS 15n
+Number of object lookup operations
+.RE
+
+.sp
+.ne 2
+.na
+\fBrddir ops\fR
+.ad
+.RS 15n
+Number of read directory operations
+.RE
+
+.sp
+.ne 2
+.na
+\fBread ops\fR
+.ad
+.RS 15n
+Number of data read operations
+.RE
+
+.sp
+.ne 2
+.na
+\fBread bytes\fR
+.ad
+.RS 15n
+Bytes transferred by data read operations
+.RE
+
+.sp
+.ne 2
+.na
+\fBwrite ops\fR
+.ad
+.RS 15n
+Number of data write operations
+.RE
+
+.sp
+.ne 2
+.na
+\fBwrite bytes\fR
+.ad
+.RS 15n
+Bytes transferred by data write operations
+.RE
+
+.sp
+.LP
+The entity being reported on (\fIfstype\fR or mount point) is displayed in the
+last column.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-a\fR\fR
+.ad
+.RS 10n
+Report the activity for kernel attribute operations. The following statistics
+are reported:
+.sp
+.ne 2
+.na
+\fBgetattr\fR
+.ad
+.RS 11n
+Number of file attribute retrieval calls
+.RE
+
+.sp
+.ne 2
+.na
+\fBsetattr\fR
+.ad
+.RS 11n
+Number of file attribute modification calls
+.RE
+
+.sp
+.ne 2
+.na
+\fBgetsec\fR
+.ad
+.RS 11n
+Number of file security attribute retrieval calls
+.RE
+
+.sp
+.ne 2
+.na
+\fBsetsec\fR
+.ad
+.RS 11n
+Number of file security attribute modification calls
+.RE
+
+The entity being reported on (\fIfstype\fR or mount point) is displayed in the
+last column.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR\fR
+.ad
+.RS 10n
+Report the full activity for all kernel file operations. Each file operation is
+listed in the left column. The following statistics are reported for each
+operation:
+.sp
+.ne 2
+.na
+\fB#ops\fR
+.ad
+.RS 9n
+Number of calls for this operation
+.RE
+
+.sp
+.ne 2
+.na
+\fBbytes\fR
+.ad
+.RS 9n
+Average transfer size in bytes (only applies to read, write, readdir)
+.RE
+
+The entity being reported on (\fIfstype\fR or mount point) is displayed in the
+first row.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-i\fR\fR
+.ad
+.RS 10n
+Reports the activity for kernel I/O operations. The following statistics are
+reported:
+.sp
+.ne 2
+.na
+\fBread ops\fR
+.ad
+.RS 15n
+Number of data read calls
+.RE
+
+.sp
+.ne 2
+.na
+\fBread bytes\fR
+.ad
+.RS 15n
+Number of bytes read
+.RE
+
+.sp
+.ne 2
+.na
+\fBwrite ops\fR
+.ad
+.RS 15n
+Number of data write calls
+.RE
+
+.sp
+.ne 2
+.na
+\fBwrite bytes\fR
+.ad
+.RS 15n
+Number of bytes written
+.RE
+
+.sp
+.ne 2
+.na
+\fBrddir ops\fR
+.ad
+.RS 15n
+Number of read directory calls
+.RE
+
+.sp
+.ne 2
+.na
+\fBrddir bytes\fR
+.ad
+.RS 15n
+Number of bytes read by reading directories
+.RE
+
+.sp
+.ne 2
+.na
+\fBrwlock ops\fR
+.ad
+.RS 15n
+Number of internal file system lock operations
+.RE
+
+.sp
+.ne 2
+.na
+\fBrwulock ops\fR
+.ad
+.RS 15n
+Number of internal file system unlock operations
+.RE
+
+The entity being reported on (\fIfstype\fR or mount point) is displayed in the
+last column.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR\fR
+.ad
+.RS 10n
+Reports the activity for kernel naming operations. The following statistics are
+reported:
+.sp
+.ne 2
+.na
+\fBlookup\fR
+.ad
+.RS 11n
+Number of file name retrieval calls
+.RE
+
+.sp
+.ne 2
+.na
+\fBcreat\fR
+.ad
+.RS 11n
+Number of file creation calls
+.RE
+
+.sp
+.ne 2
+.na
+\fBremov\fR
+.ad
+.RS 11n
+Number of file remove calls
+.RE
+
+.sp
+.ne 2
+.na
+\fBlink\fR
+.ad
+.RS 11n
+Number of link calls
+.RE
+
+.sp
+.ne 2
+.na
+\fBrenam\fR
+.ad
+.RS 11n
+Number of file renaming calls
+.RE
+
+.sp
+.ne 2
+.na
+\fBmkdir\fR
+.ad
+.RS 11n
+Number of directory creation calls
+.RE
+
+.sp
+.ne 2
+.na
+\fBrmdir\fR
+.ad
+.RS 11n
+Number of directory removal calls
+.RE
+
+.sp
+.ne 2
+.na
+\fBrddir\fR
+.ad
+.RS 11n
+Number of directory read calls
+.RE
+
+.sp
+.ne 2
+.na
+\fBsymlink\fR
+.ad
+.RS 11n
+Number of symlink creation calls
+.RE
+
+.sp
+.ne 2
+.na
+\fBrdlink\fR
+.ad
+.RS 11n
+Number of symlink read calls
+.RE
+
+The entity being reported on (\fIfstype\fR or mount point) is displayed in the
+last column.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.RS 10n
+Reports the activity for calls to the virtual memory operations. The following
+statistics are reported.
+.sp
+.ne 2
+.na
+\fBmap\fR
+.ad
+.RS 10n
+Number of calls mapping a file
+.RE
+
+.sp
+.ne 2
+.na
+\fBaddmap\fR
+.ad
+.RS 10n
+Number of calls setting additional mapping to a mapped file
+.RE
+
+.sp
+.ne 2
+.na
+\fBdelmap\fR
+.ad
+.RS 10n
+Number of calls deleting mapping to a file
+.RE
+
+.sp
+.ne 2
+.na
+\fBgetpag\fR
+.ad
+.RS 10n
+Number of calls retrieving a page of data from a file
+.RE
+
+.sp
+.ne 2
+.na
+\fBputpag\fR
+.ad
+.RS 10n
+Number of calls writing a page of data to a file
+.RE
+
+.sp
+.ne 2
+.na
+\fBpagio\fR
+.ad
+.RS 10n
+Number of calls to transfer pages in file system swap files
+.RE
+
+The entity being reported on (fstype or mount point) is displayed in the last
+column.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-F\fR\fR
+.ad
+.RS 10n
+Report on all available file system types.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-T\fR \fIu\fR|\fId\fR\fR
+.ad
+.RS 10n
+Display a time stamp.
+.sp
+Specify \fIu\fR for a printed representation of the internal representation of
+time (see \fBtime\fR(2)) Specify \fId\fR for the standard date format. (See
+\fBdate\fR(1)). The time stamp is only used when an interval is set.
+.RE
+
+.SH OPERANDS
+.sp
+.LP
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fB\fIcount\fR\fR
+.ad
+.RS 12n
+Display only \fIcount\fR reports.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIfstype\fR\fR
+.ad
+.RS 12n
+Explicitly specify the file system type(s) to be reported. The file system
+module must be loaded.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIinterval\fR\fR
+.ad
+.RS 12n
+Report once each \fIinterval\fR seconds.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIpath\fR\fR
+.ad
+.RS 12n
+Specify the path(s) of the mount point(s) to be reported. If path is not a
+mount point, the mount point containing path will be determined and displayed
+in the output.
+.RE
+
+.sp
+.LP
+If no \fIinterval\fR and no \fIcount\fR are specified, a single report is
+printed and \fBfsstat\fR exits. If an \fIinterval\fR is specified but no
+\fIcount\fR is specified, \fBfsstat\fR prints reports every \fIinterval\fR
+seconds indefinitely until the command is interrupted.
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRDisplaying General Activity
+.sp
+.LP
+The following example shows general activity for all file system types.
+
+.sp
+.in +2
+.nf
+\fB$ fsstat -F\fR
+ new name name attr attr lookup rddir read read write write
+ file remov chng get set ops ops ops bytes ops bytes
+ 313K 214K 38.5K 2.16M 56.2K 8.36M 52.8K 19.7M 39.9G 18.8M 39.1G ufs
+ 0 0 0 2.95K 0 3.81K 282 2.52K 466K 0 0 proc
+ 0 0 0 0 0 0 0 0 0 0 0 nfs
+ 10 8 2 86 9 98 15 413 103M 8.43K 1.05G zfs
+ 13 14 4 98 16 125 10 1.01K 258M 15.9K 127M lofs
+8.73K 3.29K 5.25K 55.3K 37 1.20M 44 37.9K 38.3M 47.2K 35.9M tmpfs
+ 0 0 0 4.93K 0 0 0 1.08K 913K 0 0 mntfs
+ 3 2 1 503 3 897 13 122 25.8K 128 272K nfs3
+ 10 8 0 615 10 10.1K 18 61 45.6K 292 2.26M nfs4
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRDisplaying Naming Activity
+.sp
+.LP
+The following example shows the naming activity for ufs, nfs, nfs3, nfs4, and
+tmpfs:
+
+.sp
+.in +2
+.nf
+\fB$ fsstat -n ufs nfs nfs3 nfs4 tmpfs\fR
+lookup creat remov link renam mkdir rmdir rddir symlnk rdlnk
+3.57M 3.10K 586 6 24 115 100 30.2K 5 330K ufs
+ 0 0 0 0 0 0 0 0 0 0 nfs
+18.3K 3 5 0 0 0 0 1.03K 2 346 nfs3
+ 535 0 0 0 0 0 0 46 0 4 nfs4
+ 146 24 15 0 0 4 0 4 0 0 tmpfs
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRDisplaying Attribute Activity
+.sp
+.LP
+The following example shows the attribute activity for the FS type ufs and the
+mounted file systems "/" and "/export/home" every three seconds for every third
+iteration:
+
+.sp
+.in +2
+.nf
+\fB# fsstat -a ufs / /export/home 3 3\fR
+getattr setattr getsec setsec
+ 378K 91.9K 11.8K 0 ufs
+ 367K 82.3K 11.6K 0 /
+ 11.3K 9.6K 198 0 /export/home
+ 4.97K 2.27K 163 0 ufs
+ 3.94K 1.36K 162 0 /
+ 1.03K 927 1 0 /export/home
+ 2.30K 1.06K 73 0 ufs
+ 1.95K 766 71 0 /
+ 361 317 2 0 /export/home
+ 2.33K 1.06K 78 0 ufs
+ 1.64K 451 77 0 /
+ 711 631 1 0 /export/home
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 4 \fRDisplaying File Operation Statistics
+.sp
+.LP
+The following example shows the statistics for each file operation for "/"
+(using the \fB-f\fR option):
+
+.sp
+.in +2
+.nf
+\fB$ fsstat -f /\fR
+Mountpoint: /
+ operation #ops bytes
+ open 8.54K
+ close 9.8K
+ read 43.6K 65.9M
+ write 1.57K 2.99M
+ ioctl 2.06K
+ setfl 4
+ getattr 40.3K
+ setattr 38
+ access 9.19K
+ lookup 203K
+ create 595
+ remove 56
+ link 0
+ rename 9
+ mkdir 19
+ rmdir 0
+ readdir 2.02K 2.27M
+ symlink 4
+ readlink 8.31K
+ fsync 199
+ inactive 2.96K
+ fid 0
+ rwlock 47.2K
+ rwunlock 47.2K
+ seek 29.1K
+ cmp 42.9K
+ frlock 4.45K
+ space 8
+ realvp 3.25K
+ getpage 104K
+ putpage 2.69K
+ map 13.2K
+ addmap 34.4K
+ delmap 33.4K
+ poll 287
+ dump 0
+ pathconf 54
+ pageio 0
+ dumpctl 0
+ dispose 23.8K
+getsecattr 697
+setsecattr 0
+ shrlock 0
+ vnevent 0
+.fi
+.in -2
+.sp
+
+.SH ENVIRONMENT VARIABLES
+.sp
+.LP
+See \fBenviron\fR(7) for descriptions of the following environment variables
+that affect the execution of \fBfsstat\fR: \fBLANG\fR, \fBLC_ALL\fR,
+\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, \fBLC_TIME\fR, and \fBNLSPATH\fR.
+.SH EXIT STATUS
+.sp
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 5n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB1\fR\fR
+.ad
+.RS 5n
+A fatal error occurred. A fatal error could be a failed system call or another
+internal error.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB2\fR\fR
+.ad
+.RS 5n
+Invalid command-line options were specified.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+CSI Enabled
+_
+Interface Stability See below.
+.TE
+
+.sp
+.LP
+The command-line options are Unstable. The human-readable output is not
+considered an interface.
+.SH SEE ALSO
+.sp
+.LP
+.BR date (1),
+.BR time (2),
+.BR attributes (7)
+.SH NOTES
+.sp
+.LP
+All display options (\fB-a\fR, \fB-f\fR, \fB-i\fR, \fB-n\fR, \fB-v\fR) are
+mutually exclusive. Entering more than one of these options will result in an
+error.
+.sp
+.LP
+The \fIfstype\fR and \fIpath\fR operands must appear after the option, but
+before the \fIinterval\fR or \fIcount\fR on the command line. For example,
+"\fBfsstat\fR \fB-a\fR \fIfstype\fR \fIinterval\fR". Preference is given to
+\fIfstype\fR so that if a user wishes to see the statistics for a directory
+that has the same name as an \fIfstype\fR (for example, ufs), then the path
+must be specified unambiguously (for example, ./ufs). Similarly, in order to
+define a file with a numeric name (for example, "10") from an interval or count
+operand, the name should be prefixed accordingly (for example, ./10).
+.sp
+.LP
+When an interval is used, headers repeat after more than 12 lines of statistics
+have been displayed and the set of lines to be displayed in the current
+interval have completed.
+.sp
+.LP
+Statistics are not displayed for all pseudo-filesystems. The output displayed
+with the \fB-F\fR option shows which of the loaded filesystem types are
+supported.
+.sp
+.LP
+Unbundled file systems may not be recognized by \fBfsstat\fR.
+.sp
+.LP
+The command-line options are classified as Unstable and could change. The
+output is not considered to be an interface. The construction of higher level
+software tools depend on either the command-line options or the output of
+\fBfsstat\fR is not recommended.
diff --git a/usr/src/man/man8/fstyp.8 b/usr/src/man/man8/fstyp.8
new file mode 100644
index 0000000000..0b2d9c03bb
--- /dev/null
+++ b/usr/src/man/man8/fstyp.8
@@ -0,0 +1,167 @@
+'\" te
+.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH FSTYP 8 "June 20, 2021"
+.SH NAME
+fstyp \- determine file system type
+.SH SYNOPSIS
+.nf
+\fBfstyp\fR [\fB-a\fR | \fB-v\fR] \fIspecial\fR [:\fIlogical-drive\fR]
+.fi
+
+.SH DESCRIPTION
+\fBfstyp\fR allows the user to determine the file system type of unmounted file
+systems using heuristic programs.
+.sp
+.LP
+An \fBfstyp\fR module for each file system type to be checked is executed; each
+of these modules applies an appropriate heuristic to determine whether the
+supplied \fIspecial\fR file is of the type for which it checks. If it is, the
+program prints on standard output the usual file system identifier for that
+type (for example, ``ufs'') and exits with a return code of \fB0\fR; if none of
+the modules succeed, the error message \fBunknown_fstyp (no matches)\fR is
+returned and the exit status is \fB1\fR. If more than one module succeeds, the
+error message \fBunknown_fstyp (multiple matches)\fR is returned and the exit
+status is \fB2\fR. Other errors are printed in the same format.
+.sp
+.LP
+This command is unreliable and its results should not be used to make any
+decisions about subsequent use of a storage device or disk partition.
+.SH OPTIONS
+.ne 2
+.na
+\fB\fB-a\fR\fR
+.ad
+.RS 6n
+Output all available file system attributes. If a file system has been
+successfully identified, and this option is specified, the \fIFSType\fR
+identifier is followed by one or more "name-value" pairs, one per line, in the
+format:
+.sp
+.in +2
+.nf
+name: value
+.fi
+.in -2
+.sp
+
+The following conventions are recognized for the file system attributes:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+String values are put in single quotes.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Nested "name-value" list increases the indentation of its values by four
+whitespaces.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+For an array of "name-value" pairs, one array entry is printed per line, with
+the index following the name in square brackets.
+.RE
+For instance, in the following example, "\fItop_list\fR" is a "name-value"
+list, consisting of a string array "\fIstring_array\fR" and a "name-value" list
+array "\fIlist_array\fR". The second "list_array" element is an integer array
+"\fIint_array\fR" containing three elements.
+.sp
+.in +2
+.nf
+top_string: 'String'
+top_list:
+ string_array[0]: 'S0'
+ string_array[1]: 'S1'
+ list_array[0]:
+ int_one: 1
+ string_two: 'S2'
+ list_array[1]:
+ int_array[0]: 1
+ int_array[1]: 2
+ int_array[2]: 3
+.fi
+.in -2
+.sp
+
+In addition to the \fIFSType\fR-specific attributes, the following generic
+attributes may be present:
+.sp
+.ne 2
+.na
+\fB\fIgen_clean\fR\fR
+.ad
+.RS 13n
+Allowable values are "true" or "false". If the value is "false", the file
+system is damaged or was not unmounted cleanly and the \fBfsck\fR(8) command
+must be run before this file system can be mounted.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIgen_guid\fR\fR
+.ad
+.RS 12n
+Globally unique identifier. This string uniquely identifies the file system.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIgen_version\fR\fR
+.ad
+.RS 15n
+A string describing the file system version.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIgen_volume_label\fR\fR
+.ad
+.RS 20n
+Volume label, a human-readable string used to either describe or identify the
+file system.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.RS 6n
+Produce verbose output. This is usually information about the file systems
+superblock and varies across different \fIFSTypes\fR. See \fBufs\fR(4FS),
+\fBmkfs_ufs\fR(8), and \fBtunefs\fR(8) for details.
+.RE
+
+.SH USAGE
+See \fBlargefile\fR(7) for the description of the behavior of \fBfstyp\fR when
+encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
+.SH SEE ALSO
+.BR libfstyp (3LIB),
+.BR hsfs (4FS),
+.BR pcfs (4FS),
+.BR ufs (4FS),
+.BR attributes (7),
+.BR largefile (7),
+.BR fsck (8),
+.BR mkfs_ufs (8),
+.BR tunefs (8)
+.SH NOTES
+The use of heuristics implies that the result of \fBfstyp\fR is not guaranteed
+to be accurate.
+.sp
+.LP
+This command is unreliable and its results should not be used to make any
+decisions about subsequent use of a storage device or disk partition.
diff --git a/usr/src/man/man8/fuser.8 b/usr/src/man/man8/fuser.8
new file mode 100644
index 0000000000..cbb1a9a190
--- /dev/null
+++ b/usr/src/man/man8/fuser.8
@@ -0,0 +1,290 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 2003 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH FUSER 8 "Oct 21, 2003"
+.SH NAME
+fuser \- identify users of files and devices
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/fuser\fR [\fB-c\fR | \fB-d\fR | \fB-f\fR] [\fB-nu\fR] [\fB-k\fR | \fB-s\fR \fIsig\fR] \fIfiles\fR
+ [ [\fB- \fR] [\fB-c\fR | \fB-d\fR | \fB-f\fR] [\fB-nu\fR] [\fB-k\fR | \fB-s\fR \fIsig\fR] \fIfiles\fR] ...
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBfuser\fR utility displays the process \fBID\fRs of the processes that
+are using the \fIfiles\fR specified as arguments.
+.sp
+.LP
+Each process \fBID\fR is followed by a letter code. These letter codes are
+interpreted as follows. If the process is using the file as
+.sp
+.ne 2
+.na
+\fB\fBc\fR\fR
+.ad
+.RS 5n
+Indicates that the process is using the file as its current directory.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBm\fR\fR
+.ad
+.RS 5n
+Indicates that the process is using a file mapped with \fBmmap\fR(2). See
+\fBmmap\fR(2) for details.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBn\fR\fR
+.ad
+.RS 5n
+Indicates that the process is holding a non-blocking mandatory lock on the
+file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBo\fR\fR
+.ad
+.RS 5n
+Indicates that the process is using the file as an open file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBr\fR\fR
+.ad
+.RS 5n
+Indicates that the process is using the file as its root directory.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBt\fR\fR
+.ad
+.RS 5n
+Indicates that the process is using the file as its text file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBy\fR\fR
+.ad
+.RS 5n
+Indicates that the process is using the file as its controlling terminal.
+.RE
+
+.sp
+.LP
+For block special devices with mounted file systems, all processes using any
+file on that device are listed. For all types of files (text files,
+executables, directories, devices, and so forth), only the processes using that
+file are reported.
+.sp
+.LP
+For all types of devices, \fBfuser\fR also displays any known kernel consumers
+that have the device open. Kernel consumers are displayed in one of the
+following formats:
+.sp
+.in +2
+.nf
+[\fImodule_name\fR]
+[\fImodule_name\fR,dev_path=\fIpath\fR]
+[\fImodule_name\fR,dev=(\fImajor\fR,\fIminor\fR)]
+[\fImodule_name\fR,dev=(\fImajor\fR,\fIminor\fR),dev_path=\fIpath\fR]
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+If more than one group of files are specified, the options may be respecified
+for each additional group of files. A lone dash cancels the options currently
+in force.
+.sp
+.LP
+The process IDs are printed as a single line on the standard output, separated
+by spaces and terminated with a single new line. All other output is written on
+standard error.
+.sp
+.LP
+Any user can run fuser, but only the superuser can terminate another user's
+process.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-c\fR\fR
+.ad
+.RS 10n
+Reports on files that are mount points for file systems, and any files within
+that mounted file system.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-d\fR\fR
+.ad
+.RS 10n
+Report device usage information for all minor nodes bound to the same device
+node as the specified minor node. This option does not report file usage for
+files within a mounted file system.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR\fR
+.ad
+.RS 10n
+Prints a report for the named file, not for files within a mounted file system.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-k\fR\fR
+.ad
+.RS 10n
+Sends the \fBSIGKILL\fR signal to each process. Since this option spawns kills
+for each process, the kill messages may not show up immediately (see
+\fBkill\fR(2)). No signals will be sent to kernel file consumers.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR\fR
+.ad
+.RS 10n
+Lists only processes with non-blocking mandatory locks on a file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR \fIsig\fR\fR
+.ad
+.RS 10n
+Sends a signal to each process. The \fIsig\fR option argument specifies one of
+the symbolic names defined in the \fB<signal.h>\fR header, or a decimal integer
+signal number. If \fIsig\fR is a symbolic name, it is recognized in a
+case-independent fashion, without the \fBSIG\fR prefix. The \fB-k\fR option is
+equivalent to \fB-s\fR \fBKILL\fR or \fB-s\fR \fB9\fR. No signals will be sent
+to kernel file consumers.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-u\fR\fR
+.ad
+.RS 10n
+Displays the user login name in parentheses following the process \fBID\fR.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRReporting on the Mount Point and Files
+.sp
+.LP
+The following example reports on the mount point and files within the mounted
+file system.
+
+.sp
+.in +2
+.nf
+example% \fBfuser -c /export/foo\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRRestricting Output when Reporting on the Mount Point and Files
+.sp
+.LP
+The following example reports on the mount point and files within the mounted
+file system, but the output is restricted to processes that hold non-blocking
+mandatory locks.
+
+.sp
+.in +2
+.nf
+example% \fBfuser -cn /export/foo\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRSending SIGTERM to Processes Holding a Non-blocking Mandatory
+Lock
+.sp
+.LP
+The following command sends \fBSIGTERM\fR to any processes that hold a
+non-blocking mandatory lock on file \fB/export/foo/my_file\fR.
+
+.sp
+.in +2
+.nf
+example% \fBfuser -fn -s term /export/foo/my_file\fR
+.fi
+.in -2
+.sp
+
+.SH ENVIRONMENT VARIABLES
+.sp
+.LP
+See \fBenviron\fR(7) for descriptions of the following environment variables
+that affect the execution of \fBfuser\fR: \fBLANG\fR, \fBLC_ALL\fR
+\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Standard
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR ps (1),
+.BR kill (2),
+.BR mmap (2),
+.BR signal (3C),
+.BR attributes (7),
+.BR environ (7),
+.BR standards (7),
+.BR mount (8)
+.SH NOTES
+.sp
+.LP
+Because \fBfuser\fR works with a snapshot of the system image, it may miss
+processes that begin using a file while \fBfuser\fR is running. Also, processes
+reported as using a file may have stopped using it while \fBfuser\fR was
+running. These factors should discourage the use of the \fB-k\fR option.
diff --git a/usr/src/man/man8/fwflash.8 b/usr/src/man/man8/fwflash.8
new file mode 100644
index 0000000000..5a32c29a35
--- /dev/null
+++ b/usr/src/man/man8/fwflash.8
@@ -0,0 +1,431 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 2020 Oxide Computer Company
+.\" Copyright 2021 Peter Tribble
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH FWFLASH 8 "June 20, 2021"
+.SH NAME
+fwflash \- firmware query and update utility
+.SH SYNOPSIS
+.nf
+\fB/usr/sbin/fwflash\fR [\fB-l\fR [\fB-c\fR \fIdevice_class\fR | \fBALL\fR ]]
+ | [\fB-v\fR] | [\fB-h\fR]
+.fi
+
+.LP
+.nf
+\fBfwflash\fR [\fB-f\fR \fIfile1\fR,\fIfile2\fR,\fIfile3\fR,... | \fB-r\fR \fIfile\fR]
+ [\fB-y\fR] [\fB-d\fR \fIdevice_path\fR]
+.fi
+
+.SH DESCRIPTION
+The \fBfwflash\fR command writes a binary image file to supported flashable
+devices attached to a Solaris host. It also provides the ability to read
+firmware to a file if supported by the device. Because changing the firmware in
+a device can have significant impact on the stability of a system, only users
+with the privilege \fBAll\fR are allowed to execute this command. Users
+authorized to run \fBfwflash\fR can be granted the "Firmware Flash Update"
+Rights Profile.
+.sp
+.LP
+The first form of the command, above, provides information about devices. It
+lists all devices currently available on the system that are supported by
+\fBfwflash\fR for firmware upgrade. You can filter the list operation, to
+display only specified classes of devices. The second form of the command
+provides the operations to read or write the firmware images to specific
+devices.
+.SH OPTIONS
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-c\fR \fIdevice_class\fR\fR
+.ad
+.sp .6
+.RS 4n
+An optional parameter, valid only when used with the \fB-l\fR option. This
+option causes the command to list only devices of a specific class type.
+Currently supported classes are \fBIB\fR, \fBses\fR, \fBsd\fR, \fBufm\fR, or
+\fBALL\fR. If \fB-c\fR is not specified for the \fB-l\fR option, the class
+defaults to \fBALL\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-d\fR \fIdev_path\fR\fR
+.ad
+.sp .6
+.RS 4n
+The \fIdev_path\fR is the absolute path name of the device that the user wants
+to modify with the \fB-f\fR or \fB-r\fR option. If the device cannot be found,
+the command fails. If the \fB-d\fR option is specified, then either \fB-f\fR or
+\fB-r\fR must also be specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR \fIfile1\fR,\fIfile2\fR,\fIfile3\fR,...\fR
+.ad
+.sp .6
+.RS 4n
+Specify the path to one or more binary firmware image files you want to write
+to the device. \fBfwflash\fR will verify that each file is a valid firmware
+image for the specified device. If it is not, the command fails with an
+appropriate error message.
+.sp
+If multiple firmware image files are specified, each image is verified and
+flashed to the device in the order given on the command line. If any of the
+specified files cannot be successfully flashed, then an appropriate message is
+displayed.
+.sp
+After a new firmware image is flashed to a device, a reboot is required to
+correctly activate the new firmware.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-h\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display the command line usage message for \fBfwflash\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR\fR
+.ad
+.sp .6
+.RS 4n
+List the devices on a system available for firmware upgrade and display
+information specific to each device or device class.
+.sp
+For InfiniBand (IB) devices, the list operation displays the \fBguid\fRs
+(Globally Unique Identifier) currently set for the HCA, as well as the current
+firmware revision installed. There are four separate \fBguid\fRs on the HCA;
+two of them can be set with the same value.
+.sp
+For SCSI Enclosure Services (\fBses\fR or \fBsgen\fR) devices, an identifying
+target-port worldwide name is displayed, if available.
+.sp
+For \fBufm\fR(4D) based devices, identifying information such as PCI
+identifiers and supported capabilities such as the ability to read
+firmware images or slot information is reported. For each firmware image
+on the device, each slot is displayed along with information about the
+slot's version and attributes.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-r\fR \fIfile\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify the path to a file to create when reading the firmware from the device.
+The \fB-f\fR and \fB-r\fR options are mutually exclusive.
+.sp
+Not all flashable devices support reading firmware images back from the device.
+A message will be displayed if the selected device does not support this
+operation.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display \fBfwflash\fR version information and exit.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-y\fR\fR
+.ad
+.sp .6
+.RS 4n
+Valid only when a flash read (\fB-r\fR) or write (\fB-f\fR) option is
+specified. This option causes \fBfwflash\fR not to prompt for confirmation
+during operation and operate non-interactively. Note that there is no option
+that allows you to forcibly flash an incompatible firmware image onto a device.
+.RE
+
+.SH EXAMPLES
+\fBExample 1 \fREntering Command Without Arguments
+.sp
+.LP
+The following command shows \fBfwflash\fR output when the command is entered
+without arguments.
+
+.sp
+.in +2
+.nf
+example# \fBfwflash\fR
+Usage:
+ fwflash [-l [-c device_class | ALL]] | [-v] | [-h]
+ fwflash [-f file1,file2,file3,... | -r file] [-y] -d device_path
+
+ -l list flashable devices in this system
+ -c device_class limit search to a specific class
+ eg IB for InfiniBand, ses for SCSI Enclosures
+ -v print version number of fwflash utility
+ -h print this usage message
+
+ -f file1,file2,file3,...
+ firmware image file list to flash
+ -r file file to dump device firmware to
+ -y answer Yes/Y/y to prompts
+ -d device_path pathname of device to be flashed
+
+ If -d device_path is specified, then one of -f <files>
+ or -r <file> must also be specified
+
+ If multiple firmware images are required to be flashed
+ they must be listed together, separated by commas. The
+ images will be flashed in the order specified.
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRListing Devices Available to Flash
+.sp
+.LP
+The following command lists the devices available to be flashed.
+
+.sp
+.in +2
+.nf
+example# \fBfwflash -l\fR
+List of available devices:
+Device[0], /devices/pci@0,0/pci8086,3595@2/pci8086,32a@0,2/\e
+ pci15b3,5a46@c/pci15b3,5a44@0:devctl
+ Class [IB]
+ GUID: System Image - 0002c901081e33b3
+ Node - 0000000000003446
+ Port 1 - 0002c901081e33b1
+ Port 2 - 0002c901081e33b2
+ Firmware revision: 3.3.0002
+ No hardware information available for this device
+
+Device[1], /devices/pci@0,0/pci8086,3597@4/pci15b3,6278@0:devctl
+ Class [IB]
+ GUID: System Image - 0002c9010a99e3b3
+ Node - 0002c9010a99e3b0
+ Port 1 - 0002c9010a99e3b1
+ Port 2 - 0002c9010a99e3b2
+ Firmware revision: 4.8.00c8
+ Product : MTLP25208-CF256T (Lion cub)
+ PSID : MT_00B0000001
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Alternatively, for a SAS Expander presented as a SCSI Enclosure Services device,
+we might see output such as this:
+
+.sp
+.in +2
+.nf
+example# \fBfwflash -l\fR
+List of available devices:
+Device[0] /devices/pci@0/pci@0/pci@2/scsi@0/ses@3,0:ses
+ Class [sgen]
+ Target port WWN : 500605b00002453d
+ Vendor : SUN
+ Product : 16Disk Backplane
+ Firmware revision: 5021
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Finally, for devices that support the system's upgradeable firmware
+module APIs (see \fBufm\fR(4D)), one might see output like:
+
+.sp
+.in +2
+.nf
+example# \fBfwflash -l\fR
+List of available devices:
+Device[0] /devices/pci@0,0/pci1022,1483@3,2/pci8086,390d@0
+Class [ufm]
+ Vendor: Intel Corporation
+ Device: SSD 660P Series
+ Capabilities: Report
+ Image 0: Firmware
+ Slot 0 (-|w|a): 002C
+ Slot 1 (-|w|-): 002C
+
+
+Device[1] /devices/pci@3d,0/pci1022,1483@3,1/pci1849,1521@0
+Class [ufm]
+ Vendor: Intel Corporation
+ Device: I350 Gigabit Network Connection
+ Capabilities: Report, Read Image
+ Image 0: NVM
+ Slot 0 (r|w|a): 1.69
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRFlash Upgrading an IB HCA Device
+.sp
+.LP
+The following command flash upgrades an IB HCA device.
+
+.sp
+.in +2
+.nf
+example# \fBfwflash -f ./version.3.2.0000 \e
+ -d /devices/pci@0,0/pci8086,3597@4/pci15b3,6278@0:devctl\fR
+About to update firmware on:
+ /devices/pci@0,0/pci8086,3597@4/pci15b3,6278@0:devctl
+Continue (Y/N): \fBY\fR
+
+Updating . . . . . . . . . . . .
+Done. New image will be active after the system is rebooted.
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Note that you are prompted before the upgrading proceeds and that it is
+mandatory that you reboot your host to activate the new firmware image.
+
+.sp
+.LP
+The following command adds the \fB-y\fR option to the command.
+
+.sp
+.in +2
+.nf
+example# \fBfwflash -y -f ./version.3.2.0000 \e
+ -d /devices/pci@0,0/pci8086,3597@4/pci15b3,6278@0:devctl\fR
+About to update firmware on:
+ /devices/pci@0,0/pci8086,3597@4/pci15b3,6278@0:devctl
+
+Updating . . . . . . . . . . . .
+Done. New image will be active after the system is rebooted.
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 4 \fRReading Device Firmware to File
+.sp
+.LP
+The command shown below reads the device firmware to a file. The command uses
+the \fB-y\fR option so that read occurs without prompting.
+
+.sp
+.in +2
+.nf
+example# \fBfwflash -y -r ./firmware.bin \e
+ -d /devices/pci@1d,700000/pci@1/pci15b3,5a44@0:devctl\fR
+About to read firmware on:
+ /devices/pci@1d,700000/pci@1/pci15b3,5a44@0:devctl
+to filename: ./firmware.bin
+
+Reading . . .
+Done.
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 5 \fRWhen No Flashable Devices Are Found
+.sp
+.LP
+The command output shown below informs the user that there are no supported
+flashable devices found in the system:
+
+.sp
+.in +2
+.nf
+example# \fBfwflash -l\fR
+fwflash: No flashable devices attached with the ses driver in this system
+fwflash: No flashable devices attached with the sgen driver in this system
+fwflash: No flashable devices attached with the tavor driver in this system
+fwflash: No flashable devices in this system
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Each plugin found in \fB/usr/lib/fwflash/identify\fR is loaded in turn, and
+walks the system device tree, determining whether any currently-attached
+devices can be flashed.
+
+.SH RETURN VALUES
+The \fBfwflash\fR command returns the following values:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.sp .6
+.RS 4n
+Success
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB1\fR\fR
+.ad
+.sp .6
+.RS 4n
+Failure
+.RE
+
+.SH ATTRIBUTES
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Committed
+.TE
+
+.SH SEE ALSO
+.BR hermon (4D),
+.BR ses (4D),
+.BR tavor (4D),
+.BR ufm (4D),
+.BR attributes (7)
+.sp
+.LP
+The InfiniBand Trade Association website, http://www.infinibandta.org
+.sp
+.LP
+The SCSI Storage Interfaces committee website, http://www.t10.org
+.sp
+.LP
+\fISCSI Primary Commands-4, SPC4\fR
+.sp
+.LP
+\fISCSI Enclosure Services-2, SES2\fR
+.sp
+.LP
+\fISerial Attached SCSI-2, SAS2\fR
diff --git a/usr/src/man/man8/fwtmp.8 b/usr/src/man/man8/fwtmp.8
new file mode 100644
index 0000000000..55c044153a
--- /dev/null
+++ b/usr/src/man/man8/fwtmp.8
@@ -0,0 +1,91 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 1999 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH FWTMP 8 "Feb 22, 1999"
+.SH NAME
+fwtmp, wtmpfix \- manipulate connect accounting records
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/acct/fwtmp\fR [\fB-ic\fR]
+.fi
+
+.LP
+.nf
+\fB/usr/lib/acct/wtmpfix\fR [\fIfile\fR]...
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBfwtmp\fR reads from the standard input and writes to the standard output,
+converting binary records of the type found in \fB/var/adm/wtmpx\fR to
+formatted ASCII records. The ASCII version is useful when it is necessary to
+edit bad records.
+.sp
+.LP
+\fBwtmpfix\fR examines the standard input or named files in \fButmpx\fR format,
+corrects the time/date stamps to make the entries consistent, and writes to the
+standard output. A hyphen (\fB\(mi\fR) can be used in place of \fIfile\fR to
+indicate the standard input. If time/date corrections are not performed,
+\fBacctcon\fR(8) will fault when it encounters certain date-change records.
+.sp
+.LP
+Each time the date is set, a pair of date change records are written to
+\fB/var/adm/wtmpx\fR. The first record is the old date denoted by the string
+"\fBold time\fR" placed in the \fBline\fR field and the flag
+\fB\fR\fBOLD_TIME\fR\fB\fR placed in the \fBtype\fR field of the \fButmpx\fR
+structure. The second record specifies the new date and is denoted by the
+string \fBnew time\fR placed in the \fBline\fR field and the flag
+\fB\fR\fBNEW_TIME\fR\fB\fR placed in the \fBtype\fR field. \fBwtmpfix\fR uses
+these records to synchronize all time stamps in the file.
+.sp
+.LP
+In addition to correcting time/date stamps, \fBwtmpfix\fR will check the
+validity of the \fBname\fR field to ensure that it consists solely of
+alphanumeric characters or spaces. If it encounters a name that is considered
+invalid, it will change the login name to \fB\fR\fBINVALID\fR\fB\fR and write a
+diagnostic to the standard error. In this way, \fBwtmpfix\fR reduces the chance
+that \fBacctcon\fR will fail when processing connect accounting records.
+.SH OPTIONS
+.sp
+.ne 2
+.na
+\fB\fB-ic\fR\fR
+.ad
+.RS 7n
+Denotes that input is in ASCII form, and output is to be written in binary
+form.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/var/adm/wtmpx\fR\fR
+.ad
+.RS 18n
+history of user access and administration information
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR acctcom (1),
+.BR ed (1),
+.BR acct (2),
+.BR acct.h (3HEAD),
+.BR utmpx (5),
+.BR attributes (7),
+.BR acct (8),
+.BR acctcms (8),
+.BR acctcon (8),
+.BR acctmerg (8),
+.BR acctprc (8),
+.BR acctsh (8),
+.BR runacct (8)
+.sp
+.LP
+\fI\fR
diff --git a/usr/src/man/man8/getdev.8 b/usr/src/man/man8/getdev.8
new file mode 100644
index 0000000000..5d367fda91
--- /dev/null
+++ b/usr/src/man/man8/getdev.8
@@ -0,0 +1,174 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 1997 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH GETDEV 8 "Jul 5, 1990"
+.SH NAME
+getdev \- lists devices based on criteria
+.SH SYNOPSIS
+.LP
+.nf
+\fBgetdev\fR [\fB-ae\fR] [\fIcriteria\fR]... [\fIdevice\fR]...
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBgetdev\fR generates a list of devices that match certain criteria. The
+criteria includes a list of attributes (given in expressions) and a list of
+devices. If no criteria are given, all devices are included in the list.
+.sp
+.LP
+Devices must satisfy at least one of the criteria in the list unless the
+\fB-a\fR option is used. Then, only those devices which match all of the
+criteria in a list will be included.
+.sp
+.LP
+Devices which are defined on the command line and which match the criteria are
+included in the generated list. However, if the \fB-e\fR option is used, the
+list becomes a set of devices to be \fIexcluded\fR from the list. See
+\fBOPTIONS\fR and \fBOPERANDS\fR.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-a\fR\fR
+.ad
+.RS 6n
+Specifies that a device must match all criteria to be included in the list
+generated by this command. The option has no effect if no criteria are defined.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-e\fR\fR
+.ad
+.RS 6n
+Specifies that the list of devices which follows on the command line should be
+\fIexcluded\fR from the list generated by this command. Without the \fB-e\fR
+the named devices are \fIincluded\fR in the generated list. The flag has no
+effect if no devices are defined.
+.RE
+
+.SH OPERANDS
+.sp
+.LP
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fB\fIcriteria\fR\fR
+.ad
+.RS 12n
+Defines the criteria that a device must match to be included in the generated
+list. \fIcriteria\fR is specified by expressions.
+.sp
+There are four possible expression types which the criteria specified in the
+\fIcriteria\fR argument may follow:
+.sp
+.ne 2
+.na
+\fB\fIattribute\fR\fB=\fR\fIvalue\fR\fR
+.ad
+.RS 20n
+Selects all devices whose attribute \fIattribute\fR is defined and is equal to
+\fIvalue\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIattribute\fR\fB!=\fR\fIvalue\fR\fR
+.ad
+.RS 20n
+Selects all devices whose attribute \fIattribute\fR is defined and does not
+equal \fIvalue\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIattribute\fR\fB:*\fR\fR
+.ad
+.RS 20n
+Selects all devices which have the attribute \fIattribute\fR defined.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIattribute\fR\fB!:*\fR\fR
+.ad
+.RS 20n
+Selects all devices which do not have the attribute \fIattribute\fR defined.
+.RE
+
+See the \fBputdev\fR(8) manual page for a complete listing and description of
+available attributes.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIdevice\fR\fR
+.ad
+.RS 12n
+Defines the devices which should be included in the generated list. This can be
+the pathname of the device or the device alias.
+.RE
+
+.SH EXIT STATUS
+.sp
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 5n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB1\fR\fR
+.ad
+.RS 5n
+Command syntax was incorrect, invalid option was used, or an internal error
+occurred.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB2\fR\fR
+.ad
+.RS 5n
+Device table could not be opened for reading.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/device.tab\fR\fR
+.ad
+.RS 19n
+
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7),
+.BR devattr (8),
+.BR getdgrp (8),
+.BR putdev (8),
+.BR putdgrp (8)
diff --git a/usr/src/man/man8/getdevpolicy.8 b/usr/src/man/man8/getdevpolicy.8
new file mode 100644
index 0000000000..498dce0b7f
--- /dev/null
+++ b/usr/src/man/man8/getdevpolicy.8
@@ -0,0 +1,74 @@
+'\" te
+.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH GETDEVPOLICY 8 "April 9, 2016"
+.SH NAME
+getdevpolicy \- inspect the system's device policy
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/getdevpolicy\fR [\fIdevice\fR\&.\|.\|.]
+.fi
+
+.SH DESCRIPTION
+.LP
+Without arguments, \fBgetdevpolicy\fR outputs the device policy in effect to
+standard output.
+.sp
+.LP
+With arguments, each argument is treated as a pathname to a device and the
+device policy in effect for that specific device is printed preceded by the
+supplied pathname.
+.SH USAGE
+.LP
+ The device policy adds access restrictions over and above the file
+permissions.
+.SH EXIT STATUS
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR \fR
+.ad
+.RS 12n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnon-zero\fR\fR
+.ad
+.RS 12n
+An error occurred.
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability See below
+.TE
+
+.sp
+.LP
+The invocation is evolving. The output is unstable.
+.SH SEE ALSO
+.LP
+.BR devfs (4FS),
+.BR attributes (7),
+.BR privileges (7),
+.BR add_drv (8),
+.BR rem_drv (8),
+.BR update_drv (8)
diff --git a/usr/src/man/man8/getdgrp.8 b/usr/src/man/man8/getdgrp.8
new file mode 100644
index 0000000000..24696181dc
--- /dev/null
+++ b/usr/src/man/man8/getdgrp.8
@@ -0,0 +1,200 @@
+'\" te
+.\" Copyright (c) 1996, Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH GETDGRP 8 "Jul 5, 1990"
+.SH NAME
+getdgrp \- lists device groups which contain devices that match criteria
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/getdgrp\fR [\fB-ael\fR] [\fIcriteria\fR]... [\fIdgroup\fR]...
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBgetdgrp\fR generates a list of device groups that contain devices matching
+the given criteria. The criteria is given in the form of expressions.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-a\fR\fR
+.ad
+.RS 6n
+Specifies that a device must match all criteria to be included in the list
+generated by this command. The option has no effect if no criteria are defined.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-e\fR\fR
+.ad
+.RS 6n
+Specifies that the list of device groups on the command line should be
+\fIexcluded\fR from the list generated by this command. Without the \fB-e\fR
+option the named device groups are \fIincluded\fR in the generated list. The
+flag has no effect if no devices are defined.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR\fR
+.ad
+.RS 6n
+Specifies that all device groups (subject to the \fB-e\fR option and the
+\fIdgroup\fR list) should be listed even if they contain no valid device
+members. This option has no affect if \fIcriteria\fR is specified on the
+command line.
+.RE
+
+.SH OPERANDS
+.sp
+.LP
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fB\fIcriteria\fR\fR
+.ad
+.RS 12n
+Defines criteria that a device must match before a device group to which it
+belongs can be included in the generated list. Specify \fIcriteria\fR as an
+expression or a list of expressions which a device must meet for its group to
+be included in the list generated by \fBgetdgrp\fR. If no criteria are given,
+all device groups are included in the list.
+.sp
+Devices must satisfy at least one of the criteria in the list. However, the
+\fB-a\fR option can be used to define that a "logical and" operation should be
+performed. Then, only those groups containing devices which match all of the
+criteria in a list will be included.
+.sp
+There are four possible expressions types which the criteria specified in the
+\fIcriteria\fR argument may follow:
+.sp
+.ne 2
+.na
+\fB\fIattribute\fR\fB=\fR\fIvalue\fR\fR
+.ad
+.RS 20n
+Selects all device groups with a member whose attribute \fIattribute\fR is
+defined and is equal to \fIvalue\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIattribute\fR\fB!=\fR\fIvalue\fR\fR
+.ad
+.RS 20n
+Selects all device groups with a member whose attribute \fIattribute\fR is
+defined and does not equal \fIvalue\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIattribute\fR\fB:*\fR\fR
+.ad
+.RS 20n
+Selects all device groups with a member which has the attribute
+\fIattribute\fR defined.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIattribute\fR\fB!:*\fR\fR
+.ad
+.RS 20n
+Selects all device groups with a member which does not have the attribute
+\fIattribute\fR defined.
+.RE
+
+See \fBputdev\fR(8) for a complete listing and description of available
+attributes.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIdgroup\fR\fR
+.ad
+.RS 12n
+Defines a set of device groups which should be included in or excluded from the
+generated list. Device groups that are defined and which contain devices
+matching the criteria are included.
+.sp
+If the \fB-e\fR option is used, this list defines a set of device groups to be
+excluded. When the \fB-e\fR option is used and \fIcriteria\fR is also
+defined, the generated list will include device groups containing devices
+which match the criteria and are not in the command line list.
+.RE
+
+.SH EXIT STATUS
+.sp
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 5n
+Successful completion of the task.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB1\fR\fR
+.ad
+.RS 5n
+Command syntax was incorrect, invalid option was used, or an internal error
+occurred.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB2\fR\fR
+.ad
+.RS 5n
+Device table or device group table could not be opened for reading.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/device.tab\fR\fR
+.ad
+.RS 19n
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/dgroup.tab\fR\fR
+.ad
+.RS 19n
+
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7),
+.BR devattr (8),
+.BR getdev (8),
+.BR putdev (8),
+.BR putdgrp (8)
diff --git a/usr/src/man/man8/getent.8 b/usr/src/man/man8/getent.8
new file mode 100644
index 0000000000..20dc16bd7b
--- /dev/null
+++ b/usr/src/man/man8/getent.8
@@ -0,0 +1,322 @@
+.\"
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.\"
+.\"
+.\" Copyright (C) 1999, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright (c) 2014 Gary Mills
+.\" Copyright (c) 2018 Peter Tribble
+.\"
+.Dd June 17, 2021
+.Dt GETENT 8
+.Os
+.Sh NAME
+.Nm getent
+.Nd get entries from administrative database
+.Sh SYNOPSIS
+.Nm
+.Ar database
+.Oo Ar key Oc Ns ...
+.Sh DESCRIPTION
+.Nm
+gets a list of entries from the administrative database specified by
+.Ar database .
+The information generally comes from one or more of the sources that are
+specified for the
+.Ar database
+in
+.Pa /etc/nsswitch.conf .
+.Pp
+.Ar database
+is the name of the database to be examined.
+This can be
+.Cm passwd ,
+.Cm shadow ,
+.Cm group ,
+.Cm hosts ,
+.Cm ipnodes ,
+.Cm services ,
+.Cm protocols ,
+.Cm ethers ,
+.Cm project ,
+.Cm networks ,
+.Cm netmasks ,
+.Cm auth_attr ,
+.Cm exec_attr ,
+.Cm prof_attr ,
+.Cm user_attr ,
+or
+.Cm netgroup .
+For each of these databases,
+.Nm
+uses the appropriate library routines described in
+.Xr getpwnam 3C ,
+.Xr getspnam 3C ,
+.Xr getgrnam 3C ,
+.Xr getnetgrent 3C ,
+.Xr gethostbyaddr 3NSL ,
+.Xr gethostbyname 3NSL ,
+.Xr getipnodebyaddr 3SOCKET ,
+.Xr getipnodebyname 3SOCKET ,
+.Xr getservbyname 3SOCKET ,
+.Xr getprotobyname 3SOCKET ,
+.Xr ethers 3SOCKET ,
+.Xr getprojbyname 3PROJECT ,
+.Xr getnetbyname 3SOCKET ,
+.Xr getauthattr 3SECDB ,
+.Xr getexecattr 3SECDB ,
+.Xr getprofattr 3SECDB ,
+and
+.Xr getuserattr 3SECDB
+respectively.
+.Pp
+Each
+.Ar key
+must be in a format appropriate for searching on the respective database.
+For example, it can be a username or numeric-uid for
+.Cm passwd ;
+hostname or IP address for
+.Cm hosts ;
+or service, service/protocol, port, or port/proto for
+.Cm services .
+.Pp
+.Nm
+prints out the database entries that match each of the supplied keys, one per
+line, in the format of the matching administrative file:
+.Xr passwd 5 ,
+.Xr shadow 5 ,
+.Xr group 5 ,
+.Xr project 5 ,
+.Xr hosts 5 ,
+.Xr services 5 ,
+.Xr protocols 5 ,
+.Xr ethers 5 ,
+.Xr netgroup 5 ,
+.Xr networks 5 ,
+.Xr netmasks 5 ,
+.Xr auth_attr 5 ,
+.Xr exec_attr 5 ,
+.Xr prof_attr 5 ,
+or
+.Xr user_attr 5 .
+If no key is given, all entries returned by the corresponding enumeration
+library routine, for example,
+.Xr getpwent 3C
+or
+.Xr gethostent 3NSL ,
+are printed.
+Enumeration is not supported on
+.Cm ipnodes ,
+.Cm ethers ,
+.Cm netgroup ,
+or
+.Cm netmasks .
+.Ss Key Interpretation for passwd, group, netgroup, and user_attr Databases
+When
+.Nm
+is invoked with
+.Ar database
+set to
+.Cm passwd ,
+each key value is processed as follows:
+.Bl -bullet
+.It
+If the key value consists only of numeric characters,
+.Nm
+assumes that the key value is a numeric user ID and searches the
+.Cm passwd
+database for a matching user ID.
+.It
+If the user ID is not found in the
+.Cm passwd
+database or if the key value contains any non-numeric characters,
+.Nm
+assumes the key value is a user name and searches the
+.Cm passwd
+database for a matching user name.
+.El
+.Pp
+When
+.Nm
+is invoked with
+.Ar database
+set to
+.Cm group ,
+each key value is processed as follows:
+.Bl -bullet
+.It
+If the key value consists only of numeric characters,
+.Nm
+assumes that the key value is a numeric group ID and searches the
+.Cm group
+database for a matching group ID.
+.It
+If the group ID is not found in the
+.Cm group
+database or if the key value contains any non-numeric characters,
+.Nm
+assumes the key value is a group name and searches the
+.Cm group
+database for a matching group name.
+.El
+.Pp
+When
+.Nm
+is invoked with
+.Ar database
+set to
+.Cm netgroup ,
+only a single lookup key is supported, which must be in the following format:
+.Bd -ragged -offset Ds
+.Ar netgroup Oo Ar host Ar user Ar domain Oc
+.Ed
+.Pp
+Specifying only the
+.Ar netgroup
+name will result in entries from the selected netgroup being displayed as
+string triples
+.Pq hostname, username, domain ,
+in a format compatible with
+.Xr netgroup 5 .
+.Pp
+Specifying the
+.Ar netgroup
+along with
+.Ar host ,
+.Ar user
+and
+.Ar domain
+will filter the netgroup display based on these entries.
+An asterisk
+.Pq \&*
+can be used as a wildcard for the
+.Ar host ,
+.Ar user
+or
+.Ar domain
+fields.
+.Pp
+Since the
+.Cm netgroup
+database does not support enumeration, a lookup key must always be specified.
+.Pp
+When
+.Nm
+is invoked with
+.Ar database
+set to
+.Cm user_attr ,
+each key value is processed as follows:
+.Bl -bullet
+.It
+If the key value consists only of numeric characters,
+.Nm
+assumes that the key value is a numeric user ID and searches the
+.Cm passwd
+database for a matching user name, which is then used as the key for
+.Cm user_attr .
+.It
+If the user ID is not found in the
+.Cm passwd
+database or if the key value contains any non-numeric characters,
+.Nm
+assumes the key value is a user name and searches the
+.Cm user_attr
+database for a matching entry.
+.El
+.Sh FILES
+.Bl -tag -width Pa
+.It Pa /etc/nsswitch.conf
+name service switch configuration file
+.It Pa /etc/passwd
+password file
+.It Pa /etc/shadow
+shadowed password file
+.It Pa /etc/group
+group file
+.It Pa /etc/inet/hosts
+IPv4 and IPv6 host name database
+.It Pa /etc/services
+Internet services and aliases
+.It Pa /etc/project
+project file
+.It Pa /etc/protocols
+protocol name database
+.It Pa /etc/ethers
+Ethernet address to hostname database or domain
+.It Pa /etc/networks
+network name database
+.It Pa /etc/netmasks
+network mask database
+.It Pa /etc/netgroup
+network group database
+.It Pa /etc/user_attr
+extended user attributes database
+.It Pa /etc/security/auth_attr
+authorization description database
+.It Pa /etc/security/exec_attr
+execution profiles database
+.It Pa /etc/security/prof_attr
+profile description database
+.El
+.Sh EXIT STATUS
+The following exit values are returned:
+.Pp
+.Bl -tag -width Ds -compact
+.It Sy 0
+Successful completion.
+.It Sy 1
+Command syntax was incorrect, an invalid option was used, or an internal error
+occurred.
+.It Sy 2
+At least one of the specified entry names was not found in the database.
+.It Sy 3
+There is no support for enumeration on this database.
+.El
+.Sh SEE ALSO
+.Xr getgrnam 3C ,
+.Xr getnetgrent 3C ,
+.Xr getpwnam 3C ,
+.Xr getspnam 3C ,
+.Xr gethostbyaddr 3NSL ,
+.Xr gethostbyname 3NSL ,
+.Xr gethostent 3NSL ,
+.Xr getprojbyname 3PROJECT ,
+.Xr getauthattr 3SECDB ,
+.Xr getexecattr 3SECDB ,
+.Xr getprofattr 3SECDB ,
+.Xr getuserattr 3SECDB ,
+.Xr ethers 3SOCKET ,
+.Xr getipnodebyaddr 3SOCKET ,
+.Xr getipnodebyname 3SOCKET ,
+.Xr getnetbyname 3SOCKET ,
+.Xr getprotobyname 3SOCKET ,
+.Xr getservbyname 3SOCKET ,
+.Xr auth_attr 5 ,
+.Xr ethers 5 ,
+.Xr exec_attr 5 ,
+.Xr group 5 ,
+.Xr hosts 5 ,
+.Xr netmasks 5 ,
+.Xr networks 5 ,
+.Xr nsswitch.conf 5 ,
+.Xr passwd 5 ,
+.Xr prof_attr 5 ,
+.Xr project 5 ,
+.Xr protocols 5 ,
+.Xr services 5 ,
+.Xr shadow 5 ,
+.Xr user_attr 5 ,
+.Xr attributes 7
diff --git a/usr/src/man/man8/getty.8 b/usr/src/man/man8/getty.8
new file mode 100644
index 0000000000..c390023cc1
--- /dev/null
+++ b/usr/src/man/man8/getty.8
@@ -0,0 +1,137 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 1997 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH GETTY 8 "Sep 14, 1992"
+.SH NAME
+getty \- set terminal type, modes, speed, and line discipline
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/saf/ttymon\fR [\fB-h\fR] [\fB-t\fR \fItimeout\fR] \fIline\fR
+ [\fIspeed\fR [\fItype\fR [\fIlinedisc\fR]]]
+.fi
+
+.LP
+.nf
+\fB/usr/lib/saf/ttymon\fR \fB-c\fR \fIfile\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBgetty\fR sets terminal type, modes, speed, and line discipline. \fBgetty\fR
+is a symbolic link to \fB/usr/lib/saf/ttymon\fR. It is included for
+compatibility with previous releases for the few applications that still call
+\fBgetty\fR directly.
+.sp
+.LP
+\fBgetty\fR can only be executed by the super-user, (a process with the user
+\fBID\fR \fBroot\fR). Initially \fBgetty\fR prints the login prompt, waits for
+the user's login name, and then invokes the \fBlogin\fR command. \fBgetty\fR
+attempts to adapt the system to the terminal speed by using the options and
+arguments specified on the command line.
+.sp
+.LP
+Without optional arguments, \fBgetty\fR specifies the following: The
+\fIspeed\fR of the interface is set to 300 baud, either parity is allowed,
+\fBNEWLINE\fR characters are converted to carriage return-line feed, and tab
+expansion is performed on the standard output. \fBgetty\fR types the login
+prompt before reading the user's name a character at a time. If a null
+character (or framing error) is received, it is assumed to be the result of
+the user pressing the \fBBREAK\fR key. This will cause \fBgetty\fR to attempt
+the next \fIspeed\fR in the series. The series that \fBgetty\fR tries is
+determined by what it finds in \fB/etc/ttydefs \fR.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-h\fR\fR
+.ad
+.RS 14n
+If the \fB-h\fR flag is not set, a hangup will be forced by setting the speed
+to zero before setting the speed to the default or a specified speed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-t\fR\fI timeout\fR\fR
+.ad
+.RS 14n
+Specifies that \fBgetty\fR should exit if the open on the line succeeds and no
+one types anything in \fItimeout\fR seconds.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-c\fR\fI file\fR\fR
+.ad
+.RS 14n
+The \fB-c\fR option is no longer supported. Instead use
+\fB/usr/sbin/sttydefs\fR \fB-l\fR to list the contents of the
+\fB/etc/ttydefs\fR file and perform a validity check on the file.
+.RE
+
+.SH OPERANDS
+.sp
+.LP
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fB\fIline\fR\fR
+.ad
+.RS 21n
+The name of a \fBTTY\fR line in \fB/dev\fR to which \fBgetty\fR is to attach
+itself. \fBgetty\fR uses this string as the name of a file in the \fB/dev\fR
+directory to open for reading and writing.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIspeed\fR\fR
+.ad
+.RS 21n
+The \fIspeed\fR argument is a label to a speed and \fBTTY\fR definition in
+the file \fB/etc/ttydefs\fR. This definition tells \fBgetty\fR at what speed to
+run initially, what the initial \fBTTY\fR settings are, and what speed to try
+next, (should the user press the \fBBREAK\fR key to indicate that the speed is
+inappropriate). The default \fIspeed\fR is 300 baud.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fItype\fR and \fIlinedisc\fR\fR
+.ad
+.RS 21n
+These options are obsolete and will be ignored.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/ttydefs\fR\fR
+.ad
+.RS 16n
+
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR login (1),
+.BR ct (1C),
+.BR ioctl (2),
+.BR tty (4D),
+.BR attributes (7),
+.BR sttydefs (8),
+.BR ttymon (8)
diff --git a/usr/src/man/man8/getvol.8 b/usr/src/man/man8/getvol.8
new file mode 100644
index 0000000000..0436b23a4f
--- /dev/null
+++ b/usr/src/man/man8/getvol.8
@@ -0,0 +1,167 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 1997 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH GETVOL 8 "Jul 5, 1990"
+.SH NAME
+getvol \- verifies device accessibility
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/bin/getvol\fR \fB-n\fR [\fB-l\fR \fIlabel\fR] \fIdevice\fR
+.fi
+
+.LP
+.nf
+\fB/usr/bin/getvol\fR [\fB-f\fR | \fB-F\fR] [\fB-ow\fR] [\fB-l\fR \fIlabel\fR | \fB-x\fR \fIlabel\fR] \fIdevice\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBgetvol\fR verifies that the specified device is accessible and that a volume
+of the appropriate medium has been inserted. The command is interactive and
+displays instructional prompts, describes errors, and shows required label
+information.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-n\fR\fR
+.ad
+.RS 12n
+Runs the command in non-interactive mode. The volume is assumed to be inserted
+upon command invocation.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR\fI label\fR\fR
+.ad
+.RS 12n
+Specifies that the label \fIlabel\fR must exist on the inserted volume (can be
+overridden by the \fB-o\fR option).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR\fR
+.ad
+.RS 12n
+Formats the volume after insertion, using the format command defined for this
+device in the device table.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-F\fR\fR
+.ad
+.RS 12n
+Formats the volume after insertion and places a file system on the device. Also
+uses the format command defined for this device in the device table.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-o\fR\fR
+.ad
+.RS 12n
+Allows the administrator to override a label check.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-w\fR\fR
+.ad
+.RS 12n
+Allows administrator to write a new label on the device. User is prompted to
+supply the label text. This option is ineffective if the \fB-n\fR option is
+enabled.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-x\fR\fI label\fR\fR
+.ad
+.RS 12n
+Specifies that the label \fIlabel\fR must exist on the device. This option
+should be used in place of the \fB-l\fR option when the label can only be
+verified by visual means. Use of the option causes a message to be displayed
+asking the administrator to visually verify that the label is indeed
+\fIlabel\fR.
+.RE
+
+.SH OPERANDS
+.sp
+.LP
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fB\fIdevice\fR\fR
+.ad
+.RS 10n
+Specifies the device to be verified for accessibility.
+.RE
+
+.SH EXIT STATUS
+.sp
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 5n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB1\fR\fR
+.ad
+.RS 5n
+Command syntax was incorrect, invalid option was used, or an internal error
+occurred.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB3\fR\fR
+.ad
+.RS 5n
+Device table could not be opened for reading.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/device.tab\fR\fR
+.ad
+.RS 19n
+
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7)
+.SH NOTES
+.sp
+.LP
+This command uses the device table to determine the characteristics of the
+device when performing the volume label checking.
diff --git a/usr/src/man/man8/groupadd.8 b/usr/src/man/man8/groupadd.8
new file mode 100644
index 0000000000..7efa8e6a7d
--- /dev/null
+++ b/usr/src/man/man8/groupadd.8
@@ -0,0 +1,158 @@
+'\" te
+.\" Copyright (c) 2018 Peter Tribble.
+.\" Copyright 1989 AT&T Copyright (c) 1998 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH GROUPADD 8 "Jan 7, 2018"
+.SH NAME
+groupadd \- add (create) a new group definition on the system
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/groupadd\fR [\fB-g\fR \fIgid\fR [\fB-o\fR]] \fIgroup\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBgroupadd\fR command creates a new group definition on the system by
+adding the appropriate entry to the \fB/etc/group\fR file.
+.SH OPTIONS
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-g\fR \fIgid\fR\fR
+.ad
+.RS 10n
+Assigns the group id \fIgid\fR for the new group. This group id must be a
+non-negative decimal integer below \fBMAXUID\fR as defined in
+\fB<sys/param.h>\fR. The group \fBID\fR defaults to the next
+available (unique) number above the highest number currently assigned. For
+example, if groups \fB100\fR, \fB105\fR, and \fB200\fR are assigned as
+groups, the next default group number will be \fB201\fR. (Group \fBIDs\fR from
+\fB0\fR\(mi\fB99\fR are reserved for future applications.)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-o\fR\fR
+.ad
+.RS 10n
+Allows the \fIgid\fR to be duplicated (non-unique).
+.RE
+
+.SH OPERANDS
+.LP
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fB\fIgroup\fR\fR
+.ad
+.RS 9n
+A string consisting of characters from the set of lower case alphabetic
+characters and numeric characters. A warning message will be written if the
+string exceeds \fBMAXGLEN,\fR which is usually set at eight characters. The
+\fIgroup\fR field must contain at least one character; it accepts lower case or
+numeric characters or a combination of both, and must not contain a colon
+(\fB:\fR) or \fBNEWLINE.\fR
+.RE
+
+.SH EXIT STATUS
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 6n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB2\fR\fR
+.ad
+.RS 6n
+Invalid command syntax. A usage message for the \fBgroupadd\fR command is
+displayed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB3\fR\fR
+.ad
+.RS 6n
+An invalid argument was provided to an option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB4\fR\fR
+.ad
+.RS 6n
+The \fIgid\fR is not unique (when \fB-o\fR option is not used).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB9\fR\fR
+.ad
+.RS 6n
+The \fIgroup\fR is not unique.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB10\fR\fR
+.ad
+.RS 6n
+The \fB/etc/group\fR file cannot be updated.
+.RE
+
+.SH FILES
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fB/etc/group\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fB/usr/include/userdefs.h\fR
+.RE
+.SH SEE ALSO
+.LP
+.BR group (5),
+.BR attributes (7),
+.BR groupdel (8),
+.BR groupmod (8),
+.BR grpck (8),
+.BR logins (8),
+.BR pwck (8),
+.BR useradd (8),
+.BR userdel (8),
+.BR usermod (8)
+.SH NOTES
+.LP
+\fBgroupadd\fR only adds a group definition to the local system. If a network
+name service is being used to supplement the
+local \fB/etc/group\fR file with additional entries, \fBgroupadd\fR cannot
+change information supplied by the network name service. However,
+\fBgroupadd\fR will verify the uniqueness of group name and group \fBID\fR
+against the external name service.
+.sp
+.LP
+If the number of characters in a \fBgroup\fR entry exceeds 2047, group
+maintenance commands, such as \fBgroupdel\fR(8) and \fBgroupmod\fR(8), fail.
diff --git a/usr/src/man/man8/groupdel.8 b/usr/src/man/man8/groupdel.8
new file mode 100644
index 0000000000..395e178baa
--- /dev/null
+++ b/usr/src/man/man8/groupdel.8
@@ -0,0 +1,96 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 1997, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH GROUPDEL 8 "Jan 7, 2018"
+.SH NAME
+groupdel \- delete a group definition from the system
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/groupdel\fR \fIgroup\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBgroupdel\fR utility deletes a group definition from the system. It
+deletes the appropriate entry from the \fB/etc/group\fR file.
+.SH OPERANDS
+.ne 2
+.na
+\fB\fIgroup\fR\fR
+.ad
+.RS 9n
+An existing group name to be deleted.
+.RE
+
+.SH EXIT STATUS
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 6n
+Success.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB2\fR\fR
+.ad
+.RS 6n
+Invalid command syntax. A usage message for the \fBgroupdel\fR command is
+displayed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB6\fR\fR
+.ad
+.RS 6n
+\fIgroup\fR does not exist.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB10\fR\fR
+.ad
+.RS 6n
+Cannot update the \fB/etc/group\fR file.
+.RE
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/etc/group\fR\fR
+.ad
+.RS 14n
+system file containing group definitions
+.RE
+
+.SH SEE ALSO
+.LP
+.BR attributes (7),
+.BR groupadd (8),
+.BR groupmod (8),
+.BR logins (8),
+.BR useradd (8),
+.BR userdel (8),
+.BR usermod (8)
+.SH NOTES
+.LP
+The \fBgroupdel\fR utility only deletes a group definition that is in the local
+\fB/etc/group\fR file. If a network nameservice
+is being used to supplement the local \fB/etc/group\fR file with additional
+entries, \fBgroupdel\fR cannot change information supplied by the network
+nameservice.
+.sp
+.LP
+\fBgroupdel\fR fails if a group entry (a single line in \fB/etc/group\fR)
+exceeds 2047 characters.
diff --git a/usr/src/man/man8/groupmod.8 b/usr/src/man/man8/groupmod.8
new file mode 100644
index 0000000000..3601c7f7d8
--- /dev/null
+++ b/usr/src/man/man8/groupmod.8
@@ -0,0 +1,169 @@
+'\" te
+.\" Copyright (c) 2018 Peter Tribble.
+.\" Copyright 1989 AT&T Copyright (c) 1997, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH GROUPMOD 8 "Jan 7, 2018"
+.SH NAME
+groupmod \- modify a group definition on the system
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/groupmod\fR [\fB-g\fR \fIgid\fR [\fB-o\fR]] [\fB-n\fR \fIname\fR] \fIgroup\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBgroupmod\fR command modifies the definition of the specified group by
+modifying the appropriate entry in the \fB/etc/group\fR file.
+.SH OPTIONS
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-g\fR \fIgid\fR\fR
+.ad
+.RS 11n
+Specify the new group \fBID\fR for the group. This group \fBID\fR must be a
+non-negative decimal integer less than \fBMAXUID\fR, as defined in
+\fB<sys/param.h>\fR\&. The group \fBID\fR defaults to the next available
+(unique) number above 99. (Group IDs from 0-99 are reserved for future
+applications.)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR \fIname\fR\fR
+.ad
+.RS 11n
+Specify the new name for the group. The \fIname\fR argument is a string of no
+more than eight bytes consisting of characters from the set of lower case
+alphabetic characters and numeric characters. A warning message will be
+written if these restrictions are not met. A future release may refuse
+to accept group fields that do not meet these requirements. The \fIname\fR
+argument must contain at least one character and must not include a colon
+(\fB:\fR) or \fBNEWLINE\fR (\fB\en\fR).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-o\fR\fR
+.ad
+.RS 11n
+Allow the \fIgid\fR to be duplicated (non-unique).
+.RE
+
+.SH OPERANDS
+.LP
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fB\fIgroup\fR\fR
+.ad
+.RS 9n
+An existing group name to be modified.
+.RE
+
+.SH EXIT STATUS
+.LP
+The \fBgroupmod\fR utility exits with one of the following values:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 6n
+Success.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB2\fR\fR
+.ad
+.RS 6n
+Invalid command syntax. A usage message for the \fBgroupmod\fR command is
+displayed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB3\fR\fR
+.ad
+.RS 6n
+An invalid argument was provided to an option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB4\fR\fR
+.ad
+.RS 6n
+\fIgid\fR is not unique (when the \fB-o\fR option is not used).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB6\fR\fR
+.ad
+.RS 6n
+\fIgroup\fR does not exist.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB9\fR\fR
+.ad
+.RS 6n
+\fIname\fR already exists as a group name.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB10\fR\fR
+.ad
+.RS 6n
+Cannot update the \fB/etc/group\fR file.
+.RE
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/etc/group\fR\fR
+.ad
+.RS 14n
+group file
+.RE
+
+.SH SEE ALSO
+.LP
+.BR group (5),
+.BR attributes (7),
+.BR groupadd (8),
+.BR groupdel (8),
+.BR logins (8),
+.BR useradd (8),
+.BR userdel (8),
+.BR usermod (8)
+.SH NOTES
+.LP
+The \fBgroupmod\fR utility only modifies group definitions in the
+\fB/etc/group\fR file. If a network name service
+is being used to supplement the local \fB/etc/group\fR file with
+additional entries, \fBgroupmod\fR cannot change information supplied by the
+network name service. The \fBgroupmod\fR utility will, however, verify the
+uniqueness of group name and group \fBID\fR against the external name service.
+.sp
+.LP
+\fBgroupmod\fR fails if a group entry (a single line in \fB/etc/group\fR)
+exceeds 2047 characters.
diff --git a/usr/src/man/man8/growfs.8 b/usr/src/man/man8/growfs.8
new file mode 100644
index 0000000000..94c0ba3e9b
--- /dev/null
+++ b/usr/src/man/man8/growfs.8
@@ -0,0 +1,121 @@
+'\" te
+.\" Copyright (c) 2009, Sun Microsystems, Inc.
+.\" All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH GROWFS 8 "Apr 20, 2009"
+.SH NAME
+growfs \- non-destructively expand a UFS file system
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/growfs\fR [\fB-M\fR \fImount-point\fR] [\fInewfs-options\fR]
+ [\fIraw-device\fR]
+.fi
+
+.SH DESCRIPTION
+.LP
+\fBgrowfs\fR non-destructively expands a mounted or unmounted UNIX file system
+(UFS) to the size of the file system's slice(s).
+.sp
+.LP
+Typically, disk space is expanded by first adding a slice to a metadevice, then
+running the \fBgrowfs\fR command. When adding space to a mirror, you expand
+each submirror before expanding the file system.
+.sp
+.LP
+\fBgrowfs\fR will ``write-lock'' (see \fBlockfs\fR(8)) a mounted file system
+when expanding. The length of time the file system is write-locked can be
+shortened by expanding the file system in stages. For instance, to expand a 1
+Gbyte file system to 2 Gbytes, the file system can be grown in 16 Mbyte stages
+using the \fB-s\fR option to specify the total size of the new file system at
+each stage. The argument for \fB-s\fR is the number of sectors, and must be a
+multiple of the cylinder size. Note: The file system cannot be grown if a
+cylinder size of less than 2 is specified. Refer to the \fBnewfs\fR(8) man
+page for information on the options available when growing a file system.
+.sp
+.LP
+\fBgrowfs\fR displays the same information as \fBmkfs\fR during the expansion
+of the file system.
+.sp
+.LP
+If \fBgrowfs\fR is aborted, recover any lost free space by unmounting the file
+system and running the \fBfsck\fR command, or run the \fBgrowfs\fR command
+again.
+.sp
+.LP
+\fBNote:\fR If \fBgrowfs\fR is aborted and the file system is used before
+\fBfsck\fR is run on it, UFS metadata might be left in an incomplete state,
+with the result that the file system would be corrupted. In such a
+circumstance, you would have to restore the file system from backups.
+.SH OPTIONS
+.LP
+Root privileges are required for all of the following options.
+.sp
+.ne 2
+.na
+\fB\fB-M\fR \fImount-point\fR\fR
+.ad
+.RS 18n
+The file system to be expanded is mounted on \fImount-point\fR. File system
+locking (\fBlockfs\fR) will be used.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fInewfs-options\fR\fR
+.ad
+.RS 18n
+The options are documented in the \fBnewfs\fR man page.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIraw-device\fR\fR
+.ad
+.RS 18n
+Specifies the name of a raw metadevice or raw special device, residing in
+\fB/dev/md/rdsk\fR, or \fB/dev/rdsk\fR, respectively, including the disk slice,
+where you want the file system to be grown.
+.RE
+
+.SH EXIT STATUS
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 6n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB>0\fR\fR
+.ad
+.RS 6n
+An error occurred.
+.RE
+
+.SH SEE ALSO
+.LP
+.BR attributes (7),
+.BR fsck (8),
+.BR lockfs (8),
+.BR mkfs (8),
+.BR newfs (8)
+.SH LIMITATIONS
+.LP
+Only UFS file systems (either mounted or unmounted) can be expanded using the
+\fBgrowfs\fR command. Once a file system is expanded, it cannot be decreased in
+size. The following conditions prevent you from expanding file systems: When
+\fBacct\fR is activated and the accounting file is on the target device. When
+C2 security is activated and the logging file is on the target file system.
+When there is a local \fBswap\fR file in the target file system. When the file
+system is root (\fB/\fR), \fB/usr\fR, or \fBswap\fR.
diff --git a/usr/src/man/man8/gsscred.8 b/usr/src/man/man8/gsscred.8
new file mode 100644
index 0000000000..460d3c14fa
--- /dev/null
+++ b/usr/src/man/man8/gsscred.8
@@ -0,0 +1,248 @@
+'\" te
+.\" Copyright (c) 1998, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH GSSCRED 8 "Feb 11, 2004"
+.SH NAME
+gsscred \- add, remove, and list gsscred table entries
+.SH SYNOPSIS
+.LP
+.nf
+\fBgsscred\fR [\fB-n\fR \fIuser\fR [\fB-o\fR \fIoid\fR] [\fB-u\fR \fIuid\fR]] [\fB-c\fR \fIcomment\fR] \fB-m\fR \fImech\fR \fB-a\fR
+.fi
+
+.LP
+.nf
+\fBgsscred\fR [\fB-n\fR \fIuser\fR [\fB-o\fR \fIoid\fR]] [\fB-u\fR \fIuid\fR] [\fB-m\fR \fImech\fR] \fB-r\fR
+.fi
+
+.LP
+.nf
+\fBgsscred\fR [\fB-n\fR \fIuser\fR [\fB-o\fR \fIoid\fR]] [\fB-u\fR \fIuid\fR] [\fB-m\fR \fImech\fR] \fB-l\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBgsscred\fR utility is used to create and maintain a mapping between a
+security principal name and a local UNIX \fIuid\fR. The format of the user name
+is assumed to be \fBGSS_C_NT_USER_NAME\fR. You can use the \fB-o\fR option to
+specify the object identifier of the \fIname\fR type. The \fBOID\fR must be
+specified in dot-separated notation, for example: \fB1.2.3.45464.3.1\fR
+.sp
+.LP
+The \fBgsscred\fR table is used on server machines to lookup the \fIuid\fR of
+incoming clients connected using \fBRPCSEC_GSS\fR.
+.sp
+.LP
+When adding users, if no \fIuser\fR name is specified, an entry is created in
+the table for each user from the \fBpasswd\fR table. If no \fIcomment\fR is
+specified, the \fBgsscred\fR utility inserts a comment that specifies the user
+name as an \fBASCII\fR string and the \fBGSS-API\fRsecurity mechanism that
+applies to it. The security mechanism will be in string representation as
+defined in the \fB/etc/gss/mech\fR file.
+.sp
+.LP
+The parameters are interpreted the same way by the \fBgsscred\fR utility to
+delete users as they are to create users. At least one of the following options
+must be specified: \fB-n\fR, \fB-u\fR, or \fB-m\fR. If no security mechanism is
+specified, then all entries will be deleted for the user identified by either
+the \fIuid\fR or \fIuser\fR name. If only the security mechanism is specified,
+then all \fIuser\fR entries for that security mechanism will be deleted.
+.sp
+.LP
+Again, the parameters are interpreted the same way by the \fBgsscred\fR utility
+to search for users as they are to create users. If no options are specified,
+then the entire table is returned. If the \fIuser\fR name or \fIuid\fR is
+specified, then all entries for that \fIuser\fR are returned. If a security
+mechanism is specified, then all \fIuser\fR entries for that security mechanism
+are returned.
+.SH OPTIONS
+.sp
+.ne 2
+.na
+\fB\fB-a\fR\fR
+.ad
+.RS 14n
+Add a table entry.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-c\fR \fIcomment\fR\fR
+.ad
+.RS 14n
+Insert comment about this table entry.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR\fR
+.ad
+.RS 14n
+Search table for entry.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-m\fR \fImech\fR\fR
+.ad
+.RS 14n
+Specify the mechanism for which this name is to be translated.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR \fIuser\fR\fR
+.ad
+.RS 14n
+Specify the optional principal name.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-o\fR \fIoid\fR\fR
+.ad
+.RS 14n
+Specify the OID indicating the name type of the user.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-r\fR\fR
+.ad
+.RS 14n
+Remove the entry from the table.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-u\fR \fIuid\fR\fR
+.ad
+.RS 14n
+Specify the \fIuid\fR for the \fIuser\fR if the \fIuser\fR is not local.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRCreating a \fBgsscred\fR Table for the Kerberos v5 Security
+Mechanism
+.sp
+.LP
+The following shows how to create a \fBgsscred\fR table for the kerberos v5
+security mechanism. \fBgsscred\fR obtains \fIuser\fR names and \fIuid\fR's from
+the \fBpasswd\fR table to populate the table.
+
+.sp
+.in +2
+.nf
+example% \fBgsscred -m kerberos_v5 -a\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRAdding an Entry for \fBroot/host1\fR for the Kerberos v5
+Security Mechanism
+.sp
+.LP
+The following shows how to add an entry for \fBroot/host1\fR with a specified
+\fIuid\fR of \fB0\fR for the kerberos v5 security mechanism.
+
+.sp
+.in +2
+.nf
+example% \fBgsscred -m kerberos_v5 -n root/host1 -u 0 -a\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRListing All User Mappings for the Kerberos v5 Security
+Mechanism
+.sp
+.LP
+The following lists all user mappings for the kerberos v5 security mechanism.
+
+.sp
+.in +2
+.nf
+example% \fBgsscred -m kerberos_v5 -l\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 4 \fRListing All Mappings for All Security Mechanism for a Specified
+User
+.sp
+.LP
+The following lists all mappings for all security mechanisms for the user
+\fBbsimpson\fR.
+
+.sp
+.in +2
+.nf
+example% \fBgsscred -n bsimpson -l\fR
+.fi
+.in -2
+.sp
+
+.SH EXIT STATUS
+.sp
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 6n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB>\fB0\fR\fR
+.ad
+.RS 6n
+An error occurred.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR gsscred.conf (5),
+.BR attributes (7),
+.BR gssd (8)
+.SH NOTES
+.sp
+.LP
+Some GSS mechanisms, such as \fBkerberos_v5\fR, provide their own
+authenticated-name-to-local-name (uid) mapping and thus do not usually have to
+be mapped using \fBgsscred\fR. See \fBgsscred.conf\fR(5) for more information.
diff --git a/usr/src/man/man8/gssd.8 b/usr/src/man/man8/gssd.8
new file mode 100644
index 0000000000..8da77a5276
--- /dev/null
+++ b/usr/src/man/man8/gssd.8
@@ -0,0 +1,118 @@
+'\" te
+.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH GSSD 8 "Apr 25, 2007"
+.SH NAME
+gssd \- generates and validates GSS-API tokens for kernel RPC
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/gss/gssd\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fB\fR\fBgssd\fR is the user mode daemon that operates between the kernel rpc
+and the Generic Security Service Application Program Interface (\fBGSS-API\fR)
+to generate and validate \fBGSS-API\fR security tokens. In addition, \fBgssd\fR
+maps the \fBGSS-API\fR principal names to the local user and group ids. By
+default, all groups that the requested user belongs to will be included in the
+grouplist credential. \fBgssd\fR is invoked by the Internet daemon
+\fBinetd\fR(8) the first time that the kernel \fBRPC\fR requests \fBGSS-API\fR
+services.
+.SH EXIT STATUS
+.sp
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 6n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB>\fB0\fR\fR
+.ad
+.RS 6n
+An error occurred.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR kill (1),
+.BR pkill (1),
+.BR svcs (1),
+.BR gsscred.conf (5),
+.BR resolv.conf (5),
+.BR attributes (7),
+.BR smf (7),
+.BR gsscred (8),
+.BR inetadm (8),
+.BR inetd (8),
+.BR svcadm (8)
+.sp
+.LP
+\fIRFC 2078\fR
+.SH NOTES
+.sp
+.LP
+The following signal has the specified effect when sent to the server process
+using the \fBkill\fR(1) command:
+.sp
+.ne 2
+.na
+\fB\fBSIGHUP\fR\fR
+.ad
+.RS 10n
+\fBgssd\fR rereads the \fBgsscred.conf\fR(5) options.
+.RE
+
+.sp
+.LP
+When one of the mechanisms being used is Kerberos, then the \fBgssd\fR process
+must be restarted after adding or changing the \fBresolv.conf\fR(5) file.
+.sp
+.LP
+The \fBgssd\fR service is managed by the service management facility,
+\fBsmf\fR(7), under the service identifier:
+.sp
+.in +2
+.nf
+svc:/network/rpc/gss:default
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Administrative actions on this service, such as enabling, disabling, or
+requesting restart, can be performed using \fBsvcadm\fR(8). Responsibility for
+initiating and restarting this service is delegated to \fBinetd\fR(8). Use
+\fBinetadm\fR(8) to make configuration changes and to view configuration
+information for this service. The service's status can be queried using the
+\fBsvcs\fR(1) command.
diff --git a/usr/src/man/man8/hal-device.8 b/usr/src/man/man8/hal-device.8
new file mode 100644
index 0000000000..6b0d829abc
--- /dev/null
+++ b/usr/src/man/man8/hal-device.8
@@ -0,0 +1,77 @@
+'\" te
+.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH HAL-DEVICE 8 "Aug 25, 2006"
+.SH NAME
+hal-device \- manage HAL devices
+.SH SYNOPSIS
+.LP
+.nf
+\fBhal-device\fR [\fB-h\fR] [\fB--a\fR \fIudi\fR | \fB--r\fR \fIudi\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The Hardware Abstraction Layer (HAL) provides a view of the various hardware
+attached to a system. The \fBhal-device\fR command enables you to manage
+devices that conform to the HAL standard. Specifically, \fBhal-device\fR lets
+you add or remove a device to or from the HAL global device list. Device
+properties are read from stdin in \fBlshal(8)\fR syntax.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-a\fR, \fB--add\fR \fIudi\fR\fR
+.ad
+.RS 20n
+Add device specified by Universal Device Identifier \fIudi\fR to HAL's global
+device list.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-h\fR\fR
+.ad
+.RS 20n
+Display usage information.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-r\fR, \fB--remove\fR \fIudi\fR\fR
+.ad
+.RS 20n
+Remove device specified by Universal Device Identifier \fIudi\fR from HAL's
+global device list.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Volatile
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7),
+.BR hal (7),
+.BR hald (8)
diff --git a/usr/src/man/man8/hal-fdi-validate.8 b/usr/src/man/man8/hal-fdi-validate.8
new file mode 100644
index 0000000000..01dac02c24
--- /dev/null
+++ b/usr/src/man/man8/hal-fdi-validate.8
@@ -0,0 +1,69 @@
+'\" te
+.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH HAL-FDI-VALIDATE 8 "Aug 28, 2006"
+.SH NAME
+hal-fdi-validate \- validate HAL device information files
+.SH SYNOPSIS
+.LP
+.nf
+\fBhal-fdi-validate\fR [\fB-f\fR \fIdtd\fR] \fIfile\fR [\fIfile\fR]...
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBhal-fdi-validate\fR command validates one or more device information
+files. See \fBfdi\fR(5). The standard DTD file will be used unless the \fB-f\fR
+option is used to specify a different file.
+.SH OPTIONS
+.sp
+.LP
+The following option is supported:
+.sp
+.ne 2
+.na
+\fB\fB-f\fR \fIdtd\fR\fR
+.ad
+.RS 10n
+Specify path to a DTD file.
+.RE
+
+.SH OPERANDS
+.sp
+.LP
+The \fBhal-fdi-validate\fR command accepts the following operand(s):
+.sp
+.ne 2
+.na
+\fB\fIfile\fR [\fIfile\fR...]\fR
+.ad
+.RS 18n
+One or more DTD files to be validated.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Volatile
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR fdi (5),
+.BR attributes (7),
+.BR hal (7),
+.BR hald (8)
diff --git a/usr/src/man/man8/hal-find.8 b/usr/src/man/man8/hal-find.8
new file mode 100644
index 0000000000..2c935e61e5
--- /dev/null
+++ b/usr/src/man/man8/hal-find.8
@@ -0,0 +1,112 @@
+'\" te
+.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH HAL-FIND 8 "Aug 22, 2006"
+.SH NAME
+hal-find, hal-find-by-capability, hal-find-by-property \- search HAL global
+device list
+.SH SYNOPSIS
+.LP
+.nf
+\fBhal-find-by-capability\fR \fB--capability\fR \fIcapability\fR [\fB--help\fR]
+ [\fB--verbose\fR] [\fB--version\fR]
+.fi
+
+.LP
+.nf
+\fBhal-find-by-property\fR \fB--key\fR \fIkey\fR \fB--string\fR \fIvalue\fR [\fB--help\fR]
+ [\fB--verbose\fR] [\fB--version\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBhal-find\fR commands, \fBhal-find-by-capability\fR and
+\fBhal-find-by-property\fR, search the Hardware Abstraction Layer (HAL) device
+list by specified criteria and displays results on the standard output.
+\fBhal-find-by-capability\fR searches by capability, such as \fBvolume\fR or
+\fBblock\fR. \fBhal-find-by-property\fR searches by property, such as
+\fBblock.is_volume\fR or \fBvolume.disc.has_audio\fR.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB--capability\fR \fIcapability\fR\fR
+.ad
+.RS 27n
+HAL device capability to search for.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB--help\fR\fR
+.ad
+.RS 27n
+Display list of options.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB--key\fR \fIkey\fR\fR
+.ad
+.RS 27n
+The \fIkey\fR to the property that is the basis of the search.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB--string\fR \fIvalue\fR\fR
+.ad
+.RS 27n
+The string \fIvalue\fR associated with the property that is the basis of the
+search.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB--verbose\fR\fR
+.ad
+.RS 27n
+Verbose mode.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB--version\fR\fR
+.ad
+.RS 27n
+Display version and exit.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Volatile
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7),
+.BR hal (7),
+.BR hald (8)
diff --git a/usr/src/man/man8/hal-get-property.8 b/usr/src/man/man8/hal-get-property.8
new file mode 100644
index 0000000000..a7f4adcf97
--- /dev/null
+++ b/usr/src/man/man8/hal-get-property.8
@@ -0,0 +1,202 @@
+'\" te
+.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH HAL-GET-PROPERTY 8 "Sep 7, 2018"
+.SH NAME
+hal-get-property, hal-set-property \- get and set HAL device properties
+.SH SYNOPSIS
+.LP
+.nf
+\fBhal-get-property\fR \fB--udi\fR \fIudi\fR \fB--key\fR \fIkey\fR [\fB--help\fR] [\fB--verbose\fR]
+ [\fB--version\fR]
+.fi
+
+.LP
+.nf
+\fBhal-set-property\fR \fB--udi\fR \fIudi\fR \fB--key\fR \fIkey\fR {\fB--int\fR \fIvalue\fR | \fB--uint64\fR \fIvalue\fR
+ | \fB--string\fR \fIvalue\fR | \fB--bool\fR \fIvalue\fR | \fB--strlist-pre\fR \fIvalue\fR
+ | \fB--strlist-post\fR \fIvalue\fR | \fB--strlist-rem\fR \fIvalue\fR | \fB--double\fR \fIvalue\fR
+ | \fB--remove\fR \fIvalue\fR} [\fB--direct\fR] [\fB--help\fR] [\fB--version\fR]
+.fi
+
+.SH DESCRIPTION
+.LP
+The Hardware Abstraction Layer (HAL) provides a view of the various hardware
+attached to a system. This view is updated dynamically as hardware
+configuration changes by means of hotplug or other mechanisms. HAL represents a
+piece of hardware as a device object. A device object is identified by a unique
+identifier and carries a set of key/value pairs, referred to as device
+properties. Some properties are derived from the actual hardware, some are
+merged from device information files (\fB\&.fdi\fR files), and some are related
+to the actual device configuration.
+.sp
+.LP
+The \fBhal-get-property\fR and \fBhal-set-property\fR commands allow you to get
+and set properties of hardware that conforms to HAL specifications.
+.SH OPTIONS
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB--udi\fR \fIudi\fR\fR
+.ad
+.sp .6
+.RS 4n
+Unique device ID.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB--key\fR \fIkey\fR\fR
+.ad
+.sp .6
+.RS 4n
+Key of the property to set.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB--int\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set value to an integer. Accepts decimal or hexadecimal value prefixed with
+\fB0x\fR or \fBx\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB--uint64\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set value to an integer. Accepts decimal or hexadecimal value prefixed with
+\fB0x\fR or \fBx\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB--string\fR \fIvalue\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set value to a string.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB--double\fR \fIvalue\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set value to a floating point number.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB--boolean\fR \fIvalue\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set value to a boolean, that is, true or false
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB--strlist-pre\fR \fIvalue\fR\fR
+.ad
+.sp .6
+.RS 4n
+Prepend a string to a list.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB--strlist-post\fR \fIvalue\fR\fR
+.ad
+.sp .6
+.RS 4n
+Append a string to a list.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB--strlist-rem\fR \fIvalue\fR\fR
+.ad
+.sp .6
+.RS 4n
+Remove a string from a list.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB--remove\fR \fIvalue\fR\fR
+.ad
+.sp .6
+.RS 4n
+Indicates that the property should be removed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB--direct\fR\fR
+.ad
+.sp .6
+.RS 4n
+Use direct HAL connection
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB--version\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display version and exit.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB--help\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display list of options and exit
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Volatile
+.TE
+
+.SH SEE ALSO
+.LP
+.BR attributes (7),
+.BR hal (7),
+.BR hald (8)
diff --git a/usr/src/man/man8/hald.8 b/usr/src/man/man8/hald.8
new file mode 100644
index 0000000000..95859bcc7f
--- /dev/null
+++ b/usr/src/man/man8/hald.8
@@ -0,0 +1,139 @@
+'\" te
+.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH HALD 8 "Jul 2, 2008"
+.SH NAME
+hald \- daemon that supports hardware abstraction layer
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/hal/hald\fR [\fB--daemon\fR={\fByes\fR | \fBno\fR}]] [\fB--help\fR] [\fB--use-syslog\fR]
+ [\fB--verbose\fR={\fByes\fR | \fBno\fR}] [\fB--version\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBhald\fR daemon supports the recognition of hardware changes for devices
+that conform to the Hardware Abstraction Layer (HAL) specification.
+.sp
+.LP
+The enabling and disabling of \fBhald\fR can be performed through the service
+management facility (SMF) (see \fBsmf\fR(7)). \fBhald\fR is managed using the
+fault management resource identifier (FMRI) \fBsvc:/system/hal\fR. Options can
+be specified as SMF properties. See EXAMPLES.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB--daemon\fR\fR
+.ad
+.RS 16n
+Run as a daemon.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB--help\fR\fR
+.ad
+.RS 16n
+Display usage information and exit.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB--use-syslog\fR\fR
+.ad
+.RS 16n
+Display debug messages to \fBsyslog\fR instead of \fBstderr\fR. Use this option
+to record debug messages if HAL runs as daemon.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB--verbose\fR\fR
+.ad
+.RS 16n
+Display debug information.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB--version\fR\fR
+.ad
+.RS 16n
+Display version information and exit.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRSpecifying a Property
+.sp
+.LP
+The following \fBsvccfg\fR(8) command specifies the \fB--verbose\fR option.
+
+.sp
+.in +2
+.nf
+example# \fBsvccfg\fR
+svc:> \fBselect hal\fR
+svc:/system/hal> \fBlistprop hal/*\fR
+hal/verbose boolean false
+hal/use_syslog boolean false
+svc:/system/hal> \fBsetprop hal/verbose=true\fR
+svc:/system/hal> \fBexit\fR
+.fi
+.in -2
+.sp
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/hal\fR\fR
+.ad
+.RS 16n
+HAL-related files
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/hal/fdi\fR\fR
+.ad
+.RS 16n
+Device information files
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Volatile
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7),
+.BR hal (7),
+.BR smf (7),
+.BR svccfg (8)
diff --git a/usr/src/man/man8/halt.8 b/usr/src/man/man8/halt.8
new file mode 100644
index 0000000000..2a68ffe889
--- /dev/null
+++ b/usr/src/man/man8/halt.8
@@ -0,0 +1,112 @@
+'\" te
+.\" Copyright (c) 2004 Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright (c) 2013, Joyent, Inc. All rights reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH HALT 8 "Jul 26, 2013"
+.SH NAME
+halt, poweroff \- stop the processor
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/halt\fR [\fB-dlnqy\fR]
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/poweroff\fR [\fB-dlnqy\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBhalt\fR and \fBpoweroff\fR utilities write any pending information to
+the disks and then stop the processor. The \fBpoweroff\fR utility has the
+machine remove power, if possible.
+.sp
+.LP
+The \fBhalt\fR and \fBpoweroff\fR utilities normally log the system shutdown to
+the system log daemon, \fBsyslogd\fR(8), and place a shutdown record in the
+login accounting file \fB/var/adm/wtmpx\fR. These actions are inhibited if the
+\fB-n\fR or \fB-q\fR options are present.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-d\fR\fR
+.ad
+.RS 6n
+Force a system crash dump before rebooting. See \fBdumpadm\fR(8) for
+information on configuring system crash dumps.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR\fR
+.ad
+.RS 6n
+Suppress sending a message to the system log daemon, \fBsyslogd\fR(8), about
+who executed \fBhalt\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR\fR
+.ad
+.RS 6n
+Prevent the \fBsync\fR(8) before stopping.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-q\fR\fR
+.ad
+.RS 6n
+Quick halt. No graceful shutdown is attempted.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-y\fR\fR
+.ad
+.RS 6n
+This option is ignored for backwards compatibility.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/var/adm/wtmpx\fR\fR
+.ad
+.RS 18n
+History of user access and administration information.
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR inittab (5),
+.BR attributes (7),
+.BR smf (7),
+.BR dumpadm (8),
+.BR init (8),
+.BR reboot (8),
+.BR shutdown (8),
+.BR sync (8),
+.BR syslogd (8)
+.SH NOTES
+.sp
+.LP
+The \fBhalt\fR and \fBpoweroff\fR utilities do not cleanly shutdown
+\fBsmf\fR(7) services. Execute the scripts in \fB/etc/rcnum.d\fR or execute
+shutdown actions in \fBinittab\fR(5). To ensure a complete shutdown of system
+services, use \fBshutdown\fR(8) or \fBinit\fR(8) to reboot a Solaris system.
diff --git a/usr/src/man/man8/hextoalabel.8 b/usr/src/man/man8/hextoalabel.8
new file mode 100644
index 0000000000..0903dc97c2
--- /dev/null
+++ b/usr/src/man/man8/hextoalabel.8
@@ -0,0 +1,119 @@
+'\" te
+.\" Copyright (c) 2007, Sun Microsystems Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH HEXTOALABEL 8 "Jul 20, 2007"
+.SH NAME
+hextoalabel \- convert an internal text label to its human readable equivalent
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/hextoalabel\fR [\fIinternal-text-sensitivity-label\fR]
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/hextoalabel\fR \fB-c\fR [\fIinternal-text-clearance\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBhextoalabel\fR converts an internal text label into its human readable
+equivalent and writes the result to the standard output file. This internal
+form is often hexadecimal. If no option is supplied, the label is assumed to be
+a sensitivity label.
+.sp
+.LP
+If no internal text label is specified, the label is read from the standard
+input file. The expected use of this command is emergency repair of labels that
+are stored in internal databases.
+.SH OPTIONS
+.sp
+.ne 2
+.na
+\fB\fB-c\fR\fR
+.ad
+.RS 6n
+Identifies the internal text label as a clearance.
+.RE
+
+.SH EXIT STATUS
+.sp
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 5n
+On success.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB1\fR\fR
+.ad
+.RS 5n
+On failure, and writes diagnostics to the standard error file.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability See below.
+.TE
+
+.sp
+.LP
+The command output is Committed for systems with the same \fBlabel_encodings\fR
+file. The command invocation is Committed for systems that implement the DIA
+MAC policy.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/security/tsol/label_encodings\fR\fR
+.ad
+.sp .6
+.RS 4n
+The label encodings file contains the classification names, words, constraints,
+and values for the defined labels of this system.
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR label_to_str (3TSOL),
+.BR str_to_label (3TSOL),
+.BR label_encodings (5),
+.BR attributes (7),
+.BR atohexlabel (8)
+.sp
+.LP
+\fIHow to Get a Readable Label From Its Hexadecimal Form\fR in \fISolaris
+Trusted Extensions Administrator\&'s Procedures\fR
+.SH NOTES
+.sp
+.LP
+The functionality described on this manual page is available only if the system
+is configured with Trusted Extensions.
+.sp
+.LP
+This file is part of the Defense Intelligence Agency (DIA) Mandatory Access
+Control (MAC) policy. This file might not be applicable to other MAC policies
+that might be developed for future releases of Solaris Trusted Extensions
+software.
diff --git a/usr/src/man/man8/hostconfig.8 b/usr/src/man/man8/hostconfig.8
new file mode 100644
index 0000000000..115dc80bdd
--- /dev/null
+++ b/usr/src/man/man8/hostconfig.8
@@ -0,0 +1,152 @@
+'\" te
+.\" Copyright (c) 1999, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH HOSTCONFIG 8 "Nov 6, 2000"
+.SH NAME
+hostconfig \- configure a system's host parameters
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/hostconfig\fR \fB-p\fR \fIprotocol\fR [\fB-d\fR] [ \fB-h\fR] [\fB-n\fR] [\fB-v\fR]
+ [\fB-i\fR \fIinterface\fR] [\fB-f\fR \fIhostname\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBhostconfig\fR program uses a network protocol to acquire a machine's
+\fBhost parameters\fR and set these parameters on the system.
+.sp
+.LP
+The program selects which protocol to use based on the argument to the required
+\fB-p\fR flag. Different protocols may set different host parameters.
+Currently, only one protocol (\fBbootparams\fR) is defined.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-d\fR\fR
+.ad
+.RS 16n
+Enable \fBdebug\fR output.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR\fI hostname\fR\fR
+.ad
+.RS 16n
+Run the protocol as if this machine were named \fBhostname\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-h\fR\fR
+.ad
+.RS 16n
+Echo the received \fBhostname\fR to \fBstdout\fR, rather than setting
+\fBhostname\fR using the system name directly.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-i\fR\fI interface\fR\fR
+.ad
+.RS 16n
+Use only the named network interface to run the protocol.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR\fR
+.ad
+.RS 16n
+Run the network protocol, but do not set the acquired parameters into the
+system.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR \fIprotocol\fR\fR
+.ad
+.RS 16n
+Run \fBhostconfig\fR using \fIprotocol\fR. Currently, only one protocol
+(\fBbootparams\fR) is available. This option is required.
+.sp
+Specifying the \fB-p\fR \fBbootparams\fR option uses the \fBwhoami\fR call of
+the RPC \fBbootparams\fR protocol. This sets the system's \fBhostname\fR,
+\fBdomainname\fR, and default IP router parameters.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.RS 16n
+Enable verbose output.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRConfiguring Host Parameters with Verbose Output
+.sp
+.LP
+The following command configures a machine's host parameters using the
+\fBwhoami\fR call of the RPC \fBbootparams\fR protocol with a verbose output.
+
+.sp
+.in +2
+.nf
+example# hostconfig \fB-p\fR bootparams \fB-v\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRDisplaying Host Parameters
+.sp
+.LP
+The following command displays the parameters that would be set using the
+\fBwhoami\fR call of the RPC \fBbootparams\fR protocol.
+
+.sp
+.in +2
+.nf
+example# hostconfig \fB-p\fR bootparams \fB-n\fR \fB-v\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRConfiguring Host Parameters Less the System Name
+.sp
+.LP
+The following command configures a machine's host parameters, less the system
+name, using the \fBwhoami\fR call of the RPC \fBbootparams\fR protocol.
+
+.sp
+.in +2
+.nf
+example# hostconfig='hostconfig \fB-p\fR bootparams \fB-h\fR'
+.fi
+.in -2
+.sp
+
+.SH SEE ALSO
+.sp
+.LP
+.BR hostname (1),
+.BR attributes (7),
+.BR domainname (8),
+.BR route (8)
diff --git a/usr/src/man/man8/hotplug.8 b/usr/src/man/man8/hotplug.8
new file mode 100644
index 0000000000..bea295ecf5
--- /dev/null
+++ b/usr/src/man/man8/hotplug.8
@@ -0,0 +1,330 @@
+.\"
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.\"
+.\"
+.\" Copyright (c) 2010, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 2020 Joyent, Inc.
+.\"
+.Dd March 2, 2020
+.Dt HOTPLUG 8
+.Os
+.Sh NAME
+.Nm hotplug
+.Nd configure hotplug connectors and ports
+.Sh SYNOPSIS
+.Nm
+.Fl \&?
+.Nm
+.Cm list
+.Op Fl lv
+.Op Ar path
+.Op Ar connection
+.Nm
+.Cm online
+.Ar path
+.Ar port
+.Nm
+.Cm offline
+.Op Fl fq
+.Ar path
+.Ar port
+.Nm
+.Cm enable
+.Ar path
+.Ar connector
+.Nm
+.Cm disable
+.Op Fl fq
+.Ar path
+.Ar connector
+.Nm
+.Cm poweron
+.Ar path
+.Ar connector
+.Nm
+.Cm poweroff
+.Op Fl fq
+.Ar path
+.Ar connector
+.Nm
+.Cm set
+.Fl o Ar options
+.Ar path
+.Ar connector
+.Nm
+.Cm get
+.Fl o Ar options
+.Ar path
+.Ar connector
+.Sh DESCRIPTION
+The
+.Nm
+command is used to manage hotplug connections.
+A connection can be a connector or port.
+A hotplug connector is a representation of a physical point in the system where
+components can be inserted or removed.
+A hotplug port is a representation of a logical point in the system device tree
+where the connection of a device to the system is managed.
+.Pp
+The
+.Nm
+command only supports hotplug operations on hotplug connectors for PCI Express
+buses and PCI buses that implement the Standard PCI Hotplug feature.
+Hotplug ports on PCI Express and PCI buses in systems with PCI Express fabrics
+are also supported.
+Additional buses may be supported in the future.
+.Pp
+The
+.Nm
+command operates on the following kinds of objects:
+.Bl -tag -width "connection"
+.It Cm path
+Hotplug connectors and ports are integrated into the system device tree.
+The names of connectors and ports are unique relative only to their bus
+controller.
+A device path is required to uniquely reference a connector or port.
+.It Cm connector
+If a hardware component supports being physically inserted or removed, then a
+hotplug connector represents the location where this action may occur.
+When a connector exists, it has a hierarchy of ports and device nodes that
+depend upon it.
+.It Cm port
+All device nodes can be virtually hotplugged, even if their hardware does not
+support physical hotplugging.
+A hotplug port exists between a device node and its parent node in the system
+device tree.
+It represents the location where the device node and its dependents can be
+managed.
+.It Cm connection
+A hotplug connection is a generic term to refer to either a hotplug connector or
+a hotplug port.
+.El
+.Pp
+Hotplug connectors and ports are managed according to a state model.
+The
+.Nm
+command can list information about the hotplug connections in a system, or it
+can initiate change of state operations on specific hotplug connections.
+.Pp
+Hotplug connectors can be in the following states:
+.Bl -tag -width "present"
+.It Cm empty
+A component is not physically inserted in the connector.
+.It Cm present
+A component is physically inserted in the connector, but the component is
+powered off.
+The component is not in use.
+.It Cm powered
+A component is physically inserted in the connector, and the component is
+powered on.
+The component is disabled and is not in use.
+.It Cm enabled
+A component is physically inserted in the connector.
+The component is powered on and has been probed and tested.
+The component is enabled and devices that represent its functions can be used.
+.El
+.Pp
+Hotplug ports can be in the following states:
+.Bl -tag -width "port-present"
+.It Cm port-empty
+No device exists for the hotplug port.
+.It Cm port-present
+A device exists for the hotplug port, but the device has not been probed and it
+has no attached device driver.
+The device is not in use.
+.It Cm offline
+A device exists for the hotplug port, and the device has been probed.
+A device driver is not attached, and the device is not in use.
+.It Cm online
+A device exists for the hotplug port, and its device driver is fully attached.
+The device is in use.
+.It Cm maintenance
+A device exists for the hotplug port, and its device driver is fully attached.
+The device is in use, but not fully operational.
+A maintenance or fault management operation is affecting the device.
+.El
+.Pp
+The
+.Nm
+command can also access bus private properties for each hotplug connector.
+The current values of bus private properties can be displayed.
+New values for each bus private property can be set directly.
+.Sh EXIT STATUS
+.Bl -diag
+.It 0
+Successful completion.
+.It 1
+Invalid command line options were specified.
+.It 2
+The specified path or connection does not exist.
+.It 3
+A fatal error occurred.
+One or more error messages are displayed on standard error.
+.It 4
+The hotplug service is not available.
+.El
+.Sh EXAMPLES
+.Bl -tag -width 0n
+.It Sy Example 1 No Showing All Hotplug Connections
+The following command shows all hotplug connections:
+.Bd -literal
+# hotplug list -v
+pci@0,0
+ <pci.2,1> (ONLINE)
+ pci108e,534a@2,1
+ [pci30] (EMPTY)
+ <pci.e,0> (ONLINE)
+ pci10de,5d@e
+ <pci.b,0> (ONLINE)
+ display@b
+ [NEM0] (ENABLED)
+ <pci.a,0> (ONLINE)
+ pci108e,534a@a,0
+ { Network interface nge0 }
+ { nge0: hosts IP addresses: 10.0.0.1 }
+ <pci.a,1> (MAINTENANCE)
+ pci108e,534a@a,1
+ [NEM1] (EMPTY)
+ <pci.c,0> (OFFLINE)
+ pci108e,534a@4
+.Ed
+.Pp
+To show the full paths of hotplug connections and devices, enter the following
+command:
+.Bd -literal
+# hotplug list -l
+/pci@0,0 <pci.2,1> (ONLINE)
+/pci@0,0/pci108e,534a@2,1 [pci30] (EMPTY)
+/pci@0,0 pci.e,0> (ONLINE)
+/pci@0,0/pci10de,5d@e <pci.b,0> (ONLINE)
+/pci@0,0/pci10de,5d@e/display@b
+/pci@0,0/pci10de,5d@e [NEM0] (ENABLED)
+/pci@0,0/pci10de,5d@e <pci.a,0> (ONLINE)
+/pci@0,0/pci10de,5d@e/pci108e,534a@a,0
+/pci@0,0/pci10de,5d@e <pci.a,1> (MAINTENANCE)
+/pci@0,0/pci10de,5d@e/pci108e,534a@a,0
+/pci@0,0/pci10de,5d@e [NEM1] (EMPTY)
+/pci@0,0 pci.c,0> (OFFLINE)
+/pci@0,0/pci108e,534a@4
+.Ed
+.It Sy Example 2 No Reporting Failure During State Change Operation
+If a change of state operation fails, an explanation is displayed to describe
+the failure.
+An attempt to offline a hotplug port with dependent devices that are currently
+in use by the system might fail as follows:
+.Bd -literal
+# hotplug offline /pci@0,0/pci10de,5d@e pci.a,0
+ERROR: devices or resources are busy.
+pci108e,534a@a,0:
+ { Network interface nge0 }
+ { nge0: hosts IP addresses: 10.0.0.1 }
+ { Plumbed IP Address }
+.Ed
+.It Sy Example 3 No Displaying Bus-Specific Properties and Values
+The following command displays all supported bus-specific properties and their
+possible values:
+.Bd -literal
+# hotplug get -o help /pci@0,0 pci.2,1
+power_led=<on|off|blink>
+fault_led=<on|off|blink>
+active_led=<on|off|blink>
+attn_led=<on|off|blink>
+card_type=<type description>
+board_type=<type description>
+.Ed
+.It Sy Example 4 Displaying Bus-Specific Options
+The following command displays the card type and the current state of the Power
+LED of a PCI hotplug connector:
+.Bd -literal
+# hotplug get -o card_type,power_led /pci@0,0 pci.2,1
+card_type=fibre
+power_led=on
+.Ed
+.It Sy Example 5 No Setting a Bus-Specific Property
+The following command turns on the attention LED of a PCI hotplug connector:
+.Bd -literal
+# hotplug set -o attn_led=on /pci@0,0 pci.2,1
+.Ed
+.El
+.Sh DIAGNOSTICS
+The following error message is displayed on systems that do not have any
+supported I/O buses:
+.Bd -literal
+ERROR: there are no connections to display.
+(See hotplug(8) for more information.)
+.Ed
+.Pp
+If this error message is seen, note that the system might still have other I/O
+devices that support hotplugging, through the
+.Xr cfgadm 8
+command instead of
+.Nm .
+.Sh INTERFACE STABILITY
+.Sy Committed
+.Sh SEE ALSO
+.Xr getsubopt 3C ,
+.Xr rcmscript 5 ,
+.Xr attributes 7 ,
+.Xr cfgadm 8 ,
+.Xr hotplugd 8
+.Sh NOTES
+The
+.Nm
+service
+.Po FMRI
+.Pa svc:/system/hotplug
+.Pc
+must be enabled as a prerequisite for using the
+.Nm
+command.
+See
+.Xr hotplugd 8 .
+.Pp
+The authorization
+.Pa solaris.hotplug.modify
+must be granted in order to perform change-of-state operations.
+Alternatively, the rights profile
+.Qq Hotplug Management
+can be granted, which includes that authorization.
+.Pp
+Verbose usage information is gathered from the RCM framework.
+Its format and content is subject to change.
+.Pp
+The following bus specific properties are supported in PCI bus controllers:
+.Bl -tag -width Ds
+.It Cm power_led No \&| Cm fault_led No \&| Cm attn_led No \&| Cm active_led
+States of a specific LED of a slot.
+The value could be
+.Cm on , off ,
+or
+.Cm blink .
+.Pp
+They can all be used with
+.Cm get
+subcommand, but only property
+.Cm attn_led
+can be used with
+.Cm set
+subcommand.
+.It Cm card_type No \&| Cm board_type
+Type of a card or board of a slot.
+.Pp
+They can all be used with
+.Cm get
+subcommand, but neither can be used with
+.Cm set
+subcommand.
+.El
diff --git a/usr/src/man/man8/id.8 b/usr/src/man/man8/id.8
new file mode 100644
index 0000000000..87f198eea8
--- /dev/null
+++ b/usr/src/man/man8/id.8
@@ -0,0 +1,423 @@
+.\"
+.\" Sun Microsystems, Inc. gratefully acknowledges The Open Group for
+.\" permission to reproduce portions of its copyrighted documentation.
+.\" Original documentation from The Open Group can be obtained online at
+.\" http://www.opengroup.org/bookstore/.
+.\"
+.\" The Institute of Electrical and Electronics Engineers and The Open
+.\" Group, have given us permission to reprint portions of their
+.\" documentation.
+.\"
+.\" In the following statement, the phrase ``this text'' refers to portions
+.\" of the system documentation.
+.\"
+.\" Portions of this text are reprinted and reproduced in electronic form
+.\" in the SunOS Reference Manual, from IEEE Std 1003.1, 2004 Edition,
+.\" Standard for Information Technology -- Portable Operating System
+.\" Interface (POSIX), The Open Group Base Specifications Issue 6,
+.\" Copyright (C) 2001-2004 by the Institute of Electrical and Electronics
+.\" Engineers, Inc and The Open Group. In the event of any discrepancy
+.\" between these versions and the original IEEE and The Open Group
+.\" Standard, the original IEEE and The Open Group Standard is the referee
+.\" document. The original Standard can be obtained online at
+.\" http://www.opengroup.org/unix/online.html.
+.\"
+.\" This notice shall appear on any product containing this material.
+.\"
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.\"
+.\"
+.\" Copyright (c) 1992, X/Open Company Limited. All Rights Reserved.
+.\" Portions Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved.
+.\"
+.TH ID 8 "Sep 10, 2013"
+.SH NAME
+id \- return user identity
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/bin/id\fR [\fB-p\fR] [\fIuser\fR]
+.fi
+
+.LP
+.nf
+\fB/usr/bin/id\fR \fB-a\fR [\fB-p\fR] [\fIuser\fR]
+.fi
+
+.LP
+.nf
+\fB/usr/bin/id\fR \fB-G\fR [\fB-n\fR] [\fIuser\fR]
+.fi
+
+.LP
+.nf
+\fB/usr/bin/id\fR \fB-g\fR [\fB-nr\fR] [\fIuser\fR]
+.fi
+
+.LP
+.nf
+\fB/usr/bin/id\fR \fB-u\fR [\fB-nr\fR] [\fIuser\fR]
+.fi
+
+.LP
+.nf
+\fB/usr/xpg4/bin/id\fR [\fB-p\fR] [\fIuser\fR]
+.fi
+
+.LP
+.nf
+\fB/usr/xpg4/bin/id\fR \fB-a\fR [\fB-p\fR] [\fIuser\fR]
+.fi
+
+.LP
+.nf
+\fB/usr/xpg4/bin/id\fR \fB-G\fR [\fB-n\fR] [\fIuser\fR]
+.fi
+
+.LP
+.nf
+\fB/usr/xpg4/bin/id\fR \fB-g\fR [\fB-nr\fR] [\fIuser\fR]
+.fi
+
+.LP
+.nf
+\fB/usr/xpg4/bin/id\fR \fB-u\fR [\fB-nr\fR] [\fIuser\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+If no \fIuser\fR operand is provided, the \fBid\fR utility writes the user and
+group \fBID\fRs and the corresponding user and group names of the invoking
+process to standard output. If the effective and real \fBID\fRs do not match,
+both are written. If multiple groups are supported by the underlying system,
+\fB/usr/xpg4/bin/id\fR also writes the supplementary group affiliations of the
+invoking process.
+.sp
+.LP
+If a \fIuser\fR operand is provided and the process has the appropriate
+privileges, the user and group \fBID\fRs of the selected user are written. In
+this case, effective \fBID\fRs are assumed to be identical to real \fBID\fRs.
+If the selected user has more than one allowable group membership listed in the
+group database, \fB/usr/xpg4/bin/id\fR writes them in the same manner as the
+supplementary groups described in the preceding paragraph.
+.SS "Formats"
+.sp
+.LP
+The following formats are used when the \fBLC_MESSAGES\fR locale category
+specifies the "C" locale. In other locales, the strings \fBuid\fR, \fBgid\fR,
+\fBeuid\fR, \fBegid\fR, and \fBgroups\fR may be replaced with more appropriate
+strings corresponding to the locale.
+.sp
+.in +2
+.nf
+"uid=%u(%s) gid=%u(%s)\en" <\fIreal user ID\fR>, <\fIuser-name\fR>,
+ <\fIreal group ID\fR>, <\fIgroup-name\fR>
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+If the effective and real user \fBID\fRs do not match, the following are
+inserted immediately before the \fB\en\fR character in the previous format:
+.sp
+.in +2
+.nf
+" euid=%u(%s)"
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+with the following arguments added at the end of the argument list:
+.sp
+.in +2
+.nf
+<\fIeffective user ID\fR>, <\fIeffective user-name\fR>
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+If the effective and real group \fBID\fRs do not match, the following is
+inserted directly before the \fB\en\fR character in the format string (and
+after any addition resulting from the effective and real user \fBID\fRs not
+matching):
+.sp
+.in +2
+.nf
+" egid=%u(%s)"
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+with the following arguments added at the end of the argument list:
+.sp
+.in +2
+.nf
+<\fIeffectivegroup-ID\fR>, <\fIeffectivegroupname\fR>
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+If the process has supplementary group affiliations or the selected user is
+allowed to belong to multiple groups, the first is added directly before the
+\fBNEWLINE\fR character in the format string:
+.sp
+.in +2
+.nf
+" groups=%u(%s)"
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+with the following arguments added at the end of the argument list:
+.sp
+.in +2
+.nf
+<\fIsupplementary group ID\fR>, <\fIsupplementary group name\fR>
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+and the necessary number of the following added after that for any remaining
+supplementary group \fBID\fRs:
+.sp
+.in +2
+.nf
+",%u(%s)"
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+and the necessary number of the following arguments added at the end of the
+argument list:
+.sp
+.in +2
+.nf
+<\fIsupplementary group ID\fR>, <\fIsupplementary group name\fR>
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+If any of the user \fBID\fR, group \fBID\fR, effective user \fBID\fR, effective
+group \fBID\fR or supplementary/multiple group \fBID\fRs cannot be mapped by
+the system into printable user or group names, the corresponding (\fB%s\fR) and
+name argument is omitted from the corresponding format string.
+.sp
+.LP
+When any of the options are specified, the output format is as described under
+OPTIONS.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported by both \fB/usr/bin/id\fR and
+\fB/usr/xpg4/bin/id\fR. The \fB-p\fR and \fB-a\fR options are invalid if
+specified with any of the \fB-G\fR, \fB-g\fR, or \fB-u\fR options.
+.sp
+.ne 2
+.na
+\fB\fB-p\fR\fR
+.ad
+.RS 6n
+Reports additionally the current project membership of the invoking process.
+The project is reported using the format:
+.sp
+.in +2
+.nf
+"projid=%u(%s)"
+.fi
+.in -2
+.sp
+
+which is inserted prior to the \fB\en\fR character of the default format
+described in the \fBFormats\fR section. The arguments
+.sp
+.in +2
+.nf
+<\fIproject ID\fR>,<\fIproject name\fR>
+.fi
+.in -2
+.sp
+
+are appended to the end of the argument list. If the project \fBID\fR cannot
+be mapped by the system into a printable project name, the corresponding
+\fB(%s)\fR and name argument is omitted from the corresponding format string.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-a\fR\fR
+.ad
+.RS 6n
+Reports user name, user \fBID\fR and all the groups to which the user belongs.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-G\fR\fR
+.ad
+.RS 6n
+Outputs all different group \fBID\fRs (effective, real and supplementary) only,
+using the format \fB"%u\en"\fR. If there is more than one distinct group
+affiliation, output each such affiliation, using the format \fB" %u"\fR, before
+the \fBNEWLINE\fR character is output.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-g\fR\fR
+.ad
+.RS 6n
+Outputs only the effective group \fBID\fR, using the format \fB"%u\en"\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR\fR
+.ad
+.RS 6n
+Outputs the name in the format \fB"%s"\fR instead of the numeric \fBID\fR using
+the format \fB"%u"\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-r\fR\fR
+.ad
+.RS 6n
+Outputs the real \fBID\fR instead of the effective \fBID\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-u\fR\fR
+.ad
+.RS 6n
+Outputs only the effective user \fBID\fR, using the format \fB"%u\en"\fR.
+.RE
+
+.SH OPERANDS
+.sp
+.LP
+The following operand is supported:
+.sp
+.ne 2
+.na
+\fB\fIuser\fR\fR
+.ad
+.RS 8n
+The user (login) name for which information is to be written.
+.RE
+
+.SH ENVIRONMENT VARIABLES
+.sp
+.LP
+See \fBenviron\fR(7) for descriptions of the following environment variables
+that affect the execution of \fBid\fR: \fBLANG\fR, \fBLC_ALL\fR,
+\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
+.SH EXIT STATUS
+.sp
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 6n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB>0\fR\fR
+.ad
+.RS 6n
+An error occurred.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.SS "/usr/bin/id"
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Stable
+.TE
+
+.SS "/usr/xpg4/bin/id"
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Standard
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR fold (1),
+.BR logname (1),
+.BR who (1),
+.BR getgid (2),
+.BR getgroups (2),
+.BR getprojid (2),
+.BR getuid (2),
+.BR attributes (7),
+.BR environ (7),
+.BR standards (7)
+.SH NOTES
+.sp
+.LP
+Output produced by the \fB-G\fR option and by the default case could
+potentially produce very long lines on systems that support large numbers of
+supplementary groups.
diff --git a/usr/src/man/man8/idmap.8 b/usr/src/man/man8/idmap.8
new file mode 100644
index 0000000000..360b01b472
--- /dev/null
+++ b/usr/src/man/man8/idmap.8
@@ -0,0 +1,1312 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH IDMAP 8 "November 22, 2021"
+.SH NAME
+idmap \- configure and manage the Native Identity Mapping service
+.SH SYNOPSIS
+.nf
+\fBidmap\fR
+.fi
+
+.LP
+.nf
+\fBidmap\fR \fB-f\fR \fIcommand-file\fR
+.fi
+
+.LP
+.nf
+\fBidmap\fR add [\fB-d\fR] \fIname1\fR \fIname2\fR
+.fi
+
+.LP
+.nf
+\fBidmap\fR dump [\fB-n\fR] [\fB-v\fR]
+.fi
+
+.LP
+.nf
+\fBidmap\fR export [\fB-f\fR \fIfile\fR] \fIformat\fR
+.fi
+
+.LP
+.nf
+\fBidmap\fR get-namemap \fIname\fR
+.fi
+
+.LP
+.nf
+\fBidmap\fR help
+.fi
+
+.LP
+.nf
+\fBidmap\fR import [\fB-F\fR] [\fB-f\fR \fIfile\fR] \fIformat\fR
+.fi
+
+.LP
+.nf
+\fBidmap\fR list
+.fi
+
+.LP
+.nf
+\fBidmap\fR remove [\fB-t\fR|\fB-f\fR] \fIname\fR
+.fi
+
+.LP
+.nf
+\fBidmap\fR remove \fB-a\fR
+.fi
+
+.LP
+.nf
+\fBidmap\fR remove [\fB-d\fR] \fIname1\fR \fIname2\fR
+.fi
+
+.LP
+.nf
+\fBidmap\fR set-namemap [\fB-a\fR \fIauthenticationMethod\fR] [\fB-D\fR \fIbindDN\fR]
+ [\fB-j\fR \fIpasswdfile\fR] \fIname1\fR \fIname2\fR
+.fi
+
+.LP
+.nf
+\fBidmap\fR show [\fB-c\fR] [\fB-v\fR] \fIidentity\fR [\fItarget-type\fR]
+.fi
+
+.LP
+.nf
+\fBidmap\fR unset-namemap [\fB-a\fR \fIauthenticationMethod\fR] [\fB-D\fR \fIbindDN\fR]
+ [\fB-j\fR \fIpasswdfile\fR] \fIname\fR [\fItarget-type\fR]
+.fi
+
+.SH DESCRIPTION
+The \fBidmap\fR utility is used to configure and manage the Native Identity
+Mapping service.
+.sp
+.LP
+The Native Identity Mapping service supports the following types of mappings
+between Windows security identities (SIDs) and POSIX user IDs and group IDs
+(UIDs and GIDs):
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBName-based mapping.\fR An administrator maps Windows and UNIX users and
+groups by name.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBEphemeral ID mapping.\fR A UID or GID is dynamically allocated for every SID
+that is not already mapped by name.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBLocal-SID mapping.\fR A non-ephemeral UID or GID is mapped to an
+algorithmically generated local SID.
+.RE
+.sp
+.LP
+The \fBidmap\fR utility can be used to create and manage the name-based
+mappings and to monitor the mappings in effect.
+.sp
+.LP
+If the \fBidmap\fR utility is invoked without a subcommand or option, it reads
+the subcommands from standard input. When standard input is a TTY, the
+\fBidmap\fR command prints the usage message and exits.
+.SS "Mapping Mechanisms"
+The \fBidmapd\fR(8) daemon maps Windows user and group SIDs to UNIX UIDs and
+GIDs as follows:
+.RS +4
+.TP
+1.
+SIDs are mapped by name.
+.sp
+This mapping uses the name-based mappings that are manually set up by the
+system administrator.
+.RE
+.RS +4
+.TP
+2.
+If no name-based mapping is found, the SID is mapped to a dynamically
+allocated ephemeral ID.
+.sp
+This allocation uses the next available UID or GID from 2^31 to 2^32 - 2.
+.RE
+.sp
+.LP
+Local SID mappings are used to map from UNIX to Windows.
+.sp
+.LP
+To prevent aliasing problems, all file systems, archive and backup formats, and
+protocols must store SIDs or map all UIDs and GIDs in the 2^31 to 2^32 - 2
+range to the \fBnobody\fR user and group.
+.sp
+.LP
+It is possible to create also diagonal mappings. They are the mappings between
+Windows groups and Solaris users and between Solaris groups and Windows users.
+They are needed when Windows uses a group identity as a file owner or vice
+versa.
+.SS "Name-based Mappings"
+Name-based mappings establish name equivalence between Windows users and groups
+and their counterparts in the UNIX name service. These mappings persist across
+reboots. For example, the following command maps Windows users to UNIX users
+with the same name:
+.sp
+.in +2
+.nf
+# \fBidmap add "winuser:*@example.com" "unixuser:*"\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+If configured to use a directory service, \fBidmapd\fR(8) will first try to
+use the mapping information that is stored in user or group objects in the
+Active Directory (AD) and/or the native LDAP directory service. For example, an
+AD object for a given Windows user or group can be augmented to include the
+corresponding Solaris user or group name or numeric id. Similarly, the native
+LDAP object for a given Solaris user or group can be augmented to include the
+corresponding Windows user or group name.
+.sp
+.LP
+\fBidmapd\fR(8) can be configured to use AD and/or native LDAP directory-based
+name mappings by setting the appropriate service management facility (SMF)
+properties of the \fBidmap\fR service. See "Service Properties," below, for
+more details.
+.sp
+.LP
+If directory-based name mapping is not configured or if configured but not
+found, then \fBidmapd\fR(8) will process locally stored name-based mapping
+rules.
+.sp
+.LP
+\fBidmap\fR supports the mapping of Windows well-known names. A few of these
+are listed below:
+.sp
+.in +2
+.nf
+Administrator
+Guest
+KRBTGT
+Domain Admins
+Domain Users
+Domain Guest
+Domain Computers
+Domain Controllers
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+When \fBidmap\fR rules are added, these well-known names will be expanded to
+canonical form. That is, either the default domain name will be added (for
+names that are not well-known) or an appropriate built-in domain name will be
+added. Depending on the particular well-known name, this domain name might be
+null, \fBBUILTIN\fR, or the local host name.
+.sp
+.LP
+The following sequence of \fBidmap\fR commands illustrate the treatment of the
+non-well-known name \fBfred\fR and the well-known names \fBadministrator\fR and
+\fBguest\fR.
+.sp
+.in +2
+.nf
+# \fBidmap add winname:fred unixuser:fredf\fR
+add winname:fred unixuser:fredf
+
+# \fBidmap add winname:administrator unixuser:root\fR
+add winname:administrator unixuser:root
+
+# \fBidmap add winname:guest unixuser:nobody\fR
+add winname:guest unixuser:nobody
+
+# \fBidmap add wingroup:administrators sysadmin\fR
+add wingroup:administrators unixgroup:sysadmin
+
+# \fBidmap list\fR
+add winname:Administrator@examplehost unixuser:root
+add winname:Guest@examplehost unixuser:nobody
+add wingroup:Administrators@BUILTIN unixgroup:sysadmin
+add winname:fred@example.com unixuser:fredf
+.fi
+.in -2
+.sp
+
+.SS "Ephemeral Mappings"
+The \fBidmapd\fR daemon attempts to preserve ephemeral ID mappings across
+daemon restarts. However, when IDs cannot be preserved, the daemon maps each
+previously mapped SID to a new ephemeral UID or GID value. The daemon will
+never re-use ephemeral UIDs or GIDs. If the \fBidmapd\fR daemon runs out of
+ephemeral UIDs and GIDs, it returns an error as well as a default UID or GID
+for SIDs that cannot be mapped by name.
+.sp
+.LP
+The dynamic ID mappings are not retained across reboots. So, any SIDs that are
+dynamically mapped to UNIX UIDs or GIDs are most likely mapped to different IDs
+after rebooting the system.
+.SS "Local SID Mappings"
+If no name-based mapping is found, a non-ephemeral UID or GID is mapped to an
+algorithmically generated local SID. The mapping is generated as follows:
+.sp
+.in +2
+.nf
+local SID for UID = \fI<machine SID>\fR - \fI<1000 + UID>\fR
+local SID for GID = \fI<machine SID>\fR - \fI<2^31 + GID>\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+\fI<machine SID>\fR is a unique SID generated by the \fBidmap\fR service for
+the host on which it runs.
+.SS "Rule Lookup Order"
+When mapping a Windows name to a UNIX name, lookup for name-based mapping rules
+is performed in the following order:
+.RS +4
+.TP
+1.
+\fIwindows-name\fR\fB@\fR\fIdomain\fR to \fB""\fR
+.RE
+.RS +4
+.TP
+2.
+\fIwindows-name\fR\fB@\fR\fIdomain\fR to \fIunix-name\fR
+.RE
+.RS +4
+.TP
+3.
+\fIwindows-name\fR\fB@*\fR to \fB""\fR
+.RE
+.RS +4
+.TP
+4.
+\fIwindows-name\fR\fB@*\fR to \fIunix-name\fR
+.RE
+.RS +4
+.TP
+5.
+\fB*@\fR\fIdomain\fR to \fB*\fR
+.RE
+.RS +4
+.TP
+6.
+\fB*@\fR\fIdomain\fR to \fB""\fR
+.RE
+.RS +4
+.TP
+7.
+\fB*@\fR\fIdomain\fR to \fIunix-name\fR
+.RE
+.RS +4
+.TP
+8.
+\fB*@*\fR to \fB*\fR
+.RE
+.RS +4
+.TP
+9.
+\fB*@*\fR to \fB""\fR
+.RE
+.RS +4
+.TP
+10.
+\fB*@*\fR to \fIunix-name\fR
+.RE
+.sp
+.LP
+When mapping a UNIX name to a Windows name, lookup for name-based mapping rules
+is performed in the following order:
+.RS +4
+.TP
+1.
+\fIunix-name\fR to \fB""\fR
+.RE
+.RS +4
+.TP
+2.
+\fIunix-name\fR to \fIwindows-name\fR\fB@\fR\fIdomain\fR
+.RE
+.RS +4
+.TP
+3.
+\fB*\fR to \fB*@\fR\fIdomain\fR
+.RE
+.RS +4
+.TP
+4.
+\fB*\fR to \fB""\fR
+.RE
+.RS +4
+.TP
+5.
+\fB*\fR to \fIwindows-name\fR\fB@\fR\fIdomain\fR
+.RE
+.SS "Service Properties"
+The service properties determine the behavior of the \fBidmapd\fR(8) daemon.
+These properties are stored in the SMF repository (see \fBsmf\fR(7)) under
+property group \fBconfig\fR. They can be accessed and modified using
+\fBsvccfg\fR(8), which requires \fBsolaris.smf.value.idmap\fR authorization.
+The service properties for the \fBidmap\fR service are:
+.sp
+.ne 2
+.na
+\fB\fBconfig/ad_unixuser_attr\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify the name of the AD attribute that contains the UNIX user name. There is
+no default.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBconfig/ad_unixgroup_attr\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify the name of the AD attribute that contains the UNIX group name. There
+is no default.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBconfig/nldap_winname_attr\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify the name of the Native LDAP attribute that contains the Windows
+user/group name. There is no default.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBconfig/directory_based_mapping\fR\fR
+.ad
+.sp .6
+.RS 4n
+Controls support for identity mapping using data stored in a directory service.
+.sp
+\fBnone\fR disables directory-based mapping.
+.sp
+\fBname\fR enables name-based mapping using the properties described above.
+.sp
+\fBidmu\fR enables mapping using Microsoft's Identity Management for UNIX
+(IDMU). This Windows component allows the administrator to specify a UNIX user
+ID for each Windows user, mapping the Windows identity to the corresponding
+UNIX identity. Only IDMU data from the domain the Solaris system is a member of
+is used.
+.RE
+
+.sp
+.LP
+Changes to service properties do not affect a running \fBidmap\fR service. The
+service must be refreshed (with \fBsvcadm\fR(8)) for the changes to take
+effect.
+.SH OPERANDS
+The \fBidmap\fR command uses the following operands:
+.sp
+.ne 2
+.na
+\fB\fIformat\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the format in which user name mappings are described for the
+\fBexport\fR and \fBimport\fR subcommands. The Netapp \fBusermap.cfg\fR and
+Samba \fBsmbusers\fR external formats are supported. These external formats are
+\fBonly\fR for users, not groups.
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The \fBusermap.cfg\fR rule-mapping format is as follows:
+.sp
+.in +2
+.nf
+\fIwindows-username\fR [\fIdirection\fR] \fIunix-username\fR
+.fi
+.in -2
+.sp
+
+\fIwindows-username\fR is a Windows user name in either the
+\fIdomain\fR\e\fIusername\fR or \fIusername\fR\fB@\fR\fIdomain\fR format.
+.sp
+\fIunix-username\fR is a UNIX user name.
+.sp
+.LP
+\fIdirection\fR is one of the following:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fB==\fR means a bidirectional mapping, which is the default.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fB=>\fR or \fB<=\fR means a unidirectional mapping.
+.RE
+The IP qualifier is not supported.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The \fBsmbusers\fR rule-mapping format is as follows:
+.sp
+.in +2
+.nf
+\fIunixname\fR = \fIwinname1\fR \fIwinname2\fR ...
+.fi
+.in -2
+.sp
+
+If \fIwinname\fR includes whitespace, escape the whitespace by enclosing the
+value in double quotes. For example, the following file shows how to specify
+whitespace in a valid format for the \fBidmap\fR command:
+.sp
+.in +2
+.nf
+$ \fBcat myusermap\fR
+terry="Terry Maddox"
+pat="Pat Flynn"
+cal=cbrown
+.fi
+.in -2
+.sp
+
+The mappings are imported as unidirectional mappings from Windows names to UNIX
+names.
+.sp
+The format is based on the "username map" entry of the \fBsmb.conf\fR man page,
+which is available on the \fBsamba.org\fR web site. The use of an asterisk
+(\fB*\fR) for \fIwindows-name\fR is supported. However, the \fB@group\fR
+directive and the chaining of mappings are not supported.
+.sp
+By default, if no mapping entries are in the \fBsmbusers\fR file, Samba maps a
+\fIwindows-name\fR to the equivalent \fIunix-name\fR, if any. If you want to
+set up the same mapping as Samba does, use the following \fBidmap\fR command:
+.sp
+.in +2
+.nf
+idmap add -d "winuser:*@*" "unixuser:*"
+.fi
+.in -2
+.sp
+
+.RE
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIidentity\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies a user name, user ID, group name, or group ID. \fIidentity\fR is
+specified as \fItype\fR\fB:\fR\fIvalue\fR. \fItype\fR is one of the following:
+.sp
+.ne 2
+.na
+\fB\fBusid\fR\fR
+.ad
+.RS 13n
+Windows user SID in text format
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBgsid\fR\fR
+.ad
+.RS 13n
+Windows group SID in text format
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsid\fR\fR
+.ad
+.RS 13n
+Windows group SID in text format that can belong either to a user or to a group
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBuid\fR\fR
+.ad
+.RS 13n
+Numeric POSIX UID
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBgid\fR\fR
+.ad
+.RS 13n
+Numeric POSIX GID
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBunixuser\fR\fR
+.ad
+.RS 13n
+UNIX user name
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBunixgroup\fR\fR
+.ad
+.RS 13n
+UNIX group name
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBwinuser\fR\fR
+.ad
+.RS 13n
+Windows user name
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBwingroup\fR\fR
+.ad
+.RS 13n
+Windows group name
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBwinname\fR\fR
+.ad
+.RS 13n
+Windows user or group name
+.RE
+
+\fIvalue\fR is a number or string that is appropriate to the specified
+\fItype\fR. For instance, \fBunixgroup:staff\fR specifies the UNIX group name,
+\fBstaff\fR. The identity \fBgid:10\fR represents GID 10, which corresponds to
+the UNIX group \fBstaff\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIname\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies a UNIX name (\fBunixuser\fR, \fBunixgroup\fR) or a Windows name
+(\fBwinuser\fR, \fBwingroup\fR) that can be used for name-based mapping rules.
+.sp
+.LP
+A Windows security entity name can be specified in one of these ways:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fIdomain\fR\e\fIname\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fIname\fR\fB@\fR\fIdomain\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fIname\fR, which uses the default mapping domain
+.RE
+If \fIname\fR is the empty string (\fB""\fR), mapping is inhibited. Note that a
+name of \fB""\fR should not be used to preclude logins by unmapped Windows
+users.
+.sp
+If \fIname\fR uses the wildcard (\fB*\fR), it matches all names that are not
+matched by other mappings. Similarly, if \fIname\fR is the wildcard Windows
+name (\fB*@*\fR), it matches all names in all domains that are not matched by
+other mappings.
+.sp
+If \fIname\fR uses the wildcard on both sides of the mapping rule, the name is
+the same for both Windows and Solaris users. For example, if the rule is
+\fB"*@domain" == "*"\fR, the \fBjp@domain\fR Windows user name matches this
+rule and maps to the \fBjp\fR Solaris user name.
+.sp
+Specifying the type of \fIname\fR is optional if the type can be deduced from
+other arguments or types specified on the command line.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fItarget-type\fR\fR
+.ad
+.sp .6
+.RS 4n
+Used with the \fBshow\fR and \fBunset-namemap\fR subcommands. For \fBshow\fR,
+specifies the mapping type that should be shown. For example, if
+\fItarget-type\fR is \fBsid\fR, \fBidmap show\fR returns the SID mapped to the
+identity specified on the command line. For \fBunset-namemap\fR, identifies an
+attribute within the object specified by the \fIname\fR operand.
+.RE
+
+.SH OPTIONS
+The \fBidmap\fR command supports one option and a set of subcommands. The
+subcommands also have options.
+.SS "Command-Line Option"
+.ne 2
+.na
+\fB\fB-f\fR \fIcommand-file\fR\fR
+.ad
+.sp .6
+.RS 4n
+Reads and executes \fBidmap\fR subcommands from \fIcommand-file\fR. The
+\fBidmap\fR \fB-f\fR \fB-\fR command reads from standard input. This option is
+not used by any subcommands.
+.RE
+
+.SS "Subcommands"
+The following subcommands are supported:
+.sp
+.ne 2
+.na
+\fB\fBadd\fR [\fB-d\fR] \fIname1\fR \fIname2\fR\fR
+.ad
+.sp .6
+.RS 4n
+Adds a name-based mapping rule. By default, the name mapping is bidirectional.
+If the \fB-d\fR option is used, a unidirectional mapping is created from
+\fIname1\fR to \fIname2\fR.
+.sp
+Either \fIname1\fR or \fIname2\fR must be a Windows name, and the other must be
+a UNIX name. For the Windows name, the \fBwinname\fR identity type must not be
+used. Instead, specify one of the \fBwinuser\fR or \fBwingroup\fR types. See
+"Operands" for information about the \fIname\fR operand.
+.sp
+Note that two unidirectional mappings between the same two names in two
+opposite directions are equivalent to one bidirectional mapping.
+.sp
+This subcommand requires the \fBsolaris.admin.idmap.rules\fR authorization.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdump\fR [\fB-n\fR] [\fB-v\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Dumps all the mappings cached since the last system boot. The \fB-n\fR option
+shows the names, as well. By default, only \fBsid\fRs, \fBuid\fRs, and
+\fBgid\fRs are shown. The \fB-v\fR option shows how the mappings were
+generated.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBexport\fR [\fB-f\fR \fIfile\fR] \fIformat\fR\fR
+.ad
+.sp .6
+.RS 4n
+Exports name-based mapping rules to standard output in the specified
+\fIformat\fR. The \fB-f\fR \fIfile\fR option writes the rules to the specified
+output file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBget-namemap\fR \fIname\fR\fR
+.ad
+.sp .6
+.RS 4n
+Get the directory-based name mapping information from the AD or native LDAP
+user or group object represented by the specified name.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBhelp\fR\fR
+.ad
+.sp .6
+.RS 4n
+Displays the usage message.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBimport\fR [\fB-F\fR] [\fB-f\fR \fIfile\fR] \fIformat\fR\fR
+.ad
+.sp .6
+.RS 4n
+Imports name-based mapping rules from standard input by using the specified
+\fIformat\fR. The \fB-f\fR \fIfile\fR option reads the rules from the specified
+file. The \fB-F\fR option flushes existing name-based mapping rules before
+adding new ones.
+.sp
+Regardless of the external format used, the imported rules are processed by
+using the semantics and order described in the section "Rule Lookup Order,"
+above.
+.sp
+This subcommand requires the \fBsolaris.admin.idmap.rules\fR authorization.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBlist\fR\fR
+.ad
+.sp .6
+.RS 4n
+Lists all name-based mapping rules. Each rule appears in its \fBidmap add\fR
+form.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBremove\fR [\fB-t\fR|\fB-f\fR] \fIname\fR\fR
+.ad
+.sp .6
+.RS 4n
+Removes any name-based mapping rule that involves the specified name.
+\fIname\fR can be either a UNIX or Windows user name or group name.
+.sp
+The \fB-f\fR option removes rules that use \fIname\fR as the source. The
+\fB-t\fR option removes rules that use \fIname\fR as the destination. These
+options are mutually exclusive.
+.sp
+This subcommand requires the \fBsolaris.admin.idmap.rules\fR authorization.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBremove\fR \fB-a\fR\fR
+.ad
+.sp .6
+.RS 4n
+Removes all name-based mapping rules.
+.sp
+This subcommand requires the \fBsolaris.admin.idmap.rules\fR authorization.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBremove\fR [\fB-d\fR] \fIname1\fR \fIname2\fR\fR
+.ad
+.sp .6
+.RS 4n
+Removes name-based mapping rules between \fIname1\fR and \fIname2\fR. If the
+\fB-d\fR option is specified, rules from \fIname1\fR to \fIname2\fR are
+removed.
+.sp
+Either \fIname1\fR or \fIname2\fR must be a Windows name, and the other must be
+a UNIX name.
+.sp
+This subcommand requires the \fBsolaris.admin.idmap.rules\fR authorization.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBset-namemap\fR [\fB-a\fR \fIauthenticationMethod\fR] [\fB-D\fR
+\fIbindDN\fR] [\fB-j\fR \fIpasswdfile\fR] \fIname1\fR \fIname2\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets name mapping information in the AD or native LDAP user or group object.
+Either \fIname1\fR or \fIname2\fR must be a Windows name, and the other must be
+a UNIX name.
+.sp
+If \fIname1\fR is a Windows name, then the UNIX name \fIname2\fR is added to
+the AD object represented by \fIname1\fR. Similarly, if \fIname1\fR is a UNIX
+name then the Windows name \fIname2\fR is added to the native LDAP entry
+represented by \fIname1\fR.
+.sp
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-a\fR \fIauthenticationMethod\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify authentication method when modifying native LDAP entry. See
+\fBldapaddent\fR(8) for details. Default value is \fBsasl/GSSAPI\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-D\fR \fIbindDN\fR\fR
+.ad
+.sp .6
+.RS 4n
+Uses the distinguished name \fIbindDN\fR to bind to the directory.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-j\fR \fIpasswdfile\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify a file containing the password for authentication to the directory.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBshow\fR [\fB-c\fR] [\fB-v\fR] \fIname\fR [\fItarget-type\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Shows the identity of type, \fItarget-type\fR, that the specified \fIname\fR
+maps to. If the optional \fItarget-type\fR is omitted, the non-diagonal mapping
+is shown.
+.sp
+By default, this subcommand shows only mappings that have been established
+already. The \fB-c\fR option forces the evaluation of name-based mapping
+configurations or the dynamic allocation of IDs.
+.sp
+The \fB-v\fR option shows how the mapping was generated and also whether the
+mapping was just generated or was retrieved from the cache.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBunset-namemap\fR [\fB-a\fR \fIauthenticationMethod\fR] [\fB-D\fR
+\fIbindDN\fR] [\fB-j\fR \fIpasswdfile\fR] \fIname\fR [\fItarget-type\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Unsets directory-based name mapping information from the AD or native LDAP user
+or group object represented by the specified name and optional target type.
+.sp
+See the \fBset-namemap\fR subcommand for options.
+.RE
+
+.SH EXAMPLES
+\fBExample 1 \fRUsing a Wildcard on Both Sides of a Name-Based Mapping Rule
+.sp
+.LP
+The following command maps all Windows user names in the \fBexample.com\fR domain
+to the UNIX users with the same names provided that one exists and is not
+otherwise mapped. If such a rule is matched but the UNIX user name does not
+exist, an ephemeral ID mapping is used.
+
+.sp
+.in +2
+.nf
+# \fBidmap add "winuser:*@example.com" "unixuser:*"\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRUsing a Wildcard on One Side of a Name-Based Mapping Rule
+.sp
+.LP
+The following command maps all unmapped Windows users in the \fBexample.com\fR
+domain to the \fBguest\fR UNIX user. The \fB-d\fR option specifies a
+unidirectional mapping from \fB*@example.com\fR users to the \fBguest\fR user.
+
+.sp
+.in +2
+.nf
+# \fBidmap add -d "winuser:*@example.com" unixuser:guest\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRAdding a Bidirectional Name-Based Mapping Rule
+.sp
+.LP
+The following command maps Windows user, \fBfoobar@example.com\fR, to UNIX
+user, \fBfoo\fR, and conversely:
+
+.sp
+.in +2
+.nf
+# \fBidmap add winuser:foobar@example.com unixuser:foo\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+This command shows how to remove the mapping added by the previous command:
+
+.sp
+.in +2
+.nf
+# \fBidmap remove winuser:foobar@example.com unixuser:foo\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 4 \fRShowing a UID-to-SID Mapping
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The following command shows the SID that the specified UID, \fBuid:50000\fR,
+maps to:
+.sp
+.in +2
+.nf
+# \fBidmap show uid:50000 sid\fR
+uid:50000 -> usid:S-1-5-21-3223191800-2000
+.fi
+.in -2
+.sp
+
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The following command shows the UNIX user name that the specified Windows user
+name, \fBjoe@example.com\fR, maps to:
+.sp
+.in +2
+.nf
+# \fBidmap show joe@example.com unixuser\fR
+winuser:joe@example.com -> unixuser:joes
+.fi
+.in -2
+.sp
+
+.RE
+.LP
+\fBExample 5 \fRListing the Cached SID-to-UID Mappings
+.sp
+.LP
+The following command shows all of the SID-to-UID mappings that are in the
+cache:
+
+.sp
+.in +2
+.nf
+# \fBidmap dump | grep "uid:"\fR
+usid:S-1-5-21-3223191800-2000 == uid:50000
+usid:S-1-5-21-3223191800-2001 == uid:50001
+usid:S-1-5-21-3223191800-2006 == uid:50010
+usid:S-1-5-21-3223191900-3000 == uid:2147491840
+usid:S-1-5-21-3223191700-4000 => uid:60001
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 6 \fRBatching \fBidmap\fR Requests
+.sp
+.LP
+The following commands show how to batch \fBidmap\fR requests. This particular
+command sequence does the following:
+
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Removes any previous rules for \fBfoobar@example.com\fR.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Maps Windows user \fBfoobar@example.com\fR to UNIX user \fBbar\fR and
+vice-versa.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Maps Windows group \fBmembers\fR to UNIX group \fBstaff\fR and vice-versa.
+.RE
+.sp
+.in +2
+.nf
+# \fBidmap <<EOF\fR
+ \fBremove winuser:foobar@example.com\fR
+ \fBadd winuser:foobar@example.com unixuser:bar\fR
+ \fBadd wingroup:members unixgroup:staff\fR
+\fBEOF\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 7 \fRListing Name-Based Mapping Rules
+.sp
+.LP
+The following command shows how to list the name-based mapping rules:
+
+.sp
+.in +2
+.nf
+# \fBidmap list\fR
+add winuser:foobar@example.com unixuser:bar
+add wingroup:members unixgroup:staff
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 8 \fRImporting Name-Based Mapping Rules From the \fBusermap.cfg\fR
+File
+.sp
+.LP
+The \fBusermap.cfg\fR file can be used to configure name-based mapping rules.
+The following \fBusermap.cfg\fR file shows mapping rules that map Windows user
+\fBfoo@example.com\fR to UNIX user \fBfoo\fR, and that map
+\fBfoobar@example.com\fR to the UNIX user \fBfoo\fR.
+
+.sp
+.in +2
+.nf
+# \fBcat usermap.cfg\fR
+foo@example.com == foo
+foobar@example.com => foo
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The following \fBidmap\fR command imports \fBusermap.cfg\fR information to the
+\fBidmapd\fR database:
+
+.sp
+.in +2
+.nf
+# \fBcat usermap.cfg | idmap import usermap.cfg\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+This command does the same as the previous command:
+
+.sp
+.in +2
+.nf
+# \fBidmap import -f usermap.cfg usermap.cfg\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The following commands are equivalent to the previous \fBidmap import\fR
+commands:
+
+.sp
+.in +2
+.nf
+# \fBidmap <<EOF\fR
+ \fBadd winuser:foo@example.com unixuser:foo\fR
+ \fBadd -d winuser:foobar@example.com unixuser:foo\fR
+\fBEOF\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 9 \fRUsing Name-Based and Ephemeral ID Mapping With Identity
+Function Mapping and Exceptions
+.sp
+.LP
+The following commands map all users in the \fBexample.com\fR Windows domain to
+UNIX user accounts of the same name. The command also specifies mappings for
+the following Windows users: \fBjoe@example.com\fR, \fBjane.doe@example.com\fR,
+\fBadministrator@example.com\fR. The \fBadministrator\fR from all domains is
+mapped to \fBnobody\fR. Any Windows users without corresponding UNIX accounts
+are mapped dynamically to available ephemeral UIDs.
+
+.sp
+.in +2
+.nf
+# \fBidmap import usermap.cfg <<EOF\fR
+ \fBjoe@example.com == joes\fR
+ \fBjane.doe@example.com == janed\fR
+ \fBadministrator@* => nobody\fR
+ \fB*@example.com == *\fR
+ \fB*@example.com => nobody\fR
+\fBEOF\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 10 \fRAdding Directory-based Name Mapping to AD User Object
+.sp
+.LP
+The following command maps Windows user \fBjoe@example.com\fR to UNIX user
+\fBjoe\fR by adding the UNIX name to AD object for \fBjoe@example.com\fR.
+
+.sp
+.in +2
+.nf
+# \fBidmap set-namemap winuser:joe@example.com joes\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 11 \fRAdding Directory-based Name Mapping to Native LDAP User Object
+.sp
+.LP
+The following command maps UNIX user \fBfoo\fR to Windows user
+\fBfoobar@example.com\fR by adding the Windows name to native LDAP object for
+\fBfoo\fR.
+
+.sp
+.in +2
+.nf
+# \fBidmap set-namemap unixuser:foo foobar@example.com\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 12 \fRRemoving Directory-based Name Mapping from AD User Object
+.sp
+.LP
+The following command removes the UNIX username \fBunixuser\fR from the AD
+object representing \fBjoe@example.com\fR.
+
+.sp
+.in +2
+.nf
+# \fBidmap unset-namemap winuser:joe@example.com unixuser\fR
+.fi
+.in -2
+.sp
+
+.SH EXIT STATUS
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 6n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB>0\fR\fR
+.ad
+.RS 6n
+An error occurred. A diagnostic message is written to standard error.
+.RE
+
+.SH ATTRIBUTES
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Uncommitted
+.TE
+
+.SH SEE ALSO
+.BR svcs (1),
+.BR attributes (7),
+.BR smf (7),
+.BR idmapd (8),
+.BR ldapaddent (8),
+.BR svcadm (8),
+.BR svccfg (8)
+.SH NOTES
+The \fBidmapd\fR service is managed by the service management facility,
+\fBsmf\fR(7). The service identifier for the \fBidmapd\fR service is
+\fBsvc:/system/idmap\fR.
+.sp
+.LP
+Use the \fBsvcadm\fR command to perform administrative actions on this service,
+such as enabling, disabling, or restarting the service. These actions require
+the \fBsolaris.smf.manage.idmap\fR authorization. Use the \fBsvcs\fR command to
+query the service's status.
+.sp
+.LP
+Windows user names are case-insensitive, while UNIX user names are
+case-sensitive. The case of Windows names as they appear in \fBidmap\fR
+name-rules and \fBidmap show\fR command lines is irrelevant.
+.sp
+.LP
+Because common practice in UNIX environments is to use all-lowercase user
+names, wildcard name-rules map Windows names to UNIX user/group names as
+follows: first, the canonical Windows name (that is, in the case as it appears
+in the directory) is used as a UNIX user or group name. If there is no such
+UNIX entity, then the Windows name's case is folded to lowercase and the result
+is used as the UNIX user or group name.
+.sp
+.LP
+As a result of this differing treatment of case, user names that appear to be
+alike might not be recognized as matches. You must create rules to handle such
+pairings of strings that differ only in case. For example, to map the Windows
+user \fBsam@example\fR to the Solaris user \fBSam\fR, you must create the
+following rules:
+.sp
+.in +2
+.nf
+# \fBidmap add "winuser:*@example" "unixuser:*"\fR
+# \fBidmap add winuser:sam@example unixuser:Sam\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+For guidance on modifying an Active Directory schema, consult the Microsoft
+document, \fIStep-by-Step Guide to Using Active Directory Schema and Display
+Specifiers\fR, which you can find at their \fBtechnet\fR web site,
+http://technet.microsoft.com/\&.
diff --git a/usr/src/man/man8/idmapd.8 b/usr/src/man/man8/idmapd.8
new file mode 100644
index 0000000000..cb1a55bace
--- /dev/null
+++ b/usr/src/man/man8/idmapd.8
@@ -0,0 +1,121 @@
+'\" te
+.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH IDMAPD 8 "Jun 5, 2007"
+.SH NAME
+idmapd \- Native Identity Mapping service daemon
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/idmapd\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBidmapd\fR daemon maps Windows Security Identifiers (SIDs) to POSIX
+Identifiers (UIDs/GIDs) and conversely.
+.sp
+.LP
+The \fBidmap\fR(8) utility provides a front end to the \fBidmapd\fR daemon.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/var/idmap/idmap.db\fR\fR
+.ad
+.sp .6
+.RS 4n
+Database in which to store local name-based ID mapping rules. The contents of
+the database are private. The database should not be accessed or modified
+directly.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/run/idmap/idmap.db\fR\fR
+.ad
+.sp .6
+.RS 4n
+Database in which to cache ID mappings that are generated by ephemeral ID
+mapping and by name-based mapping. The contents of the database are private.
+The database should not be accessed or modified directly.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability See below.
+.TE
+
+.sp
+.LP
+Interface stability for these components is as follows:
+.sp
+.ne 2
+.na
+\fB\fBsvc:/system/idmap\fR\fR
+.ad
+.sp .6
+.RS 4n
+Committed
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/idmap/idmap.db\fR\fR
+.ad
+.sp .6
+.RS 4n
+Project Private
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/run/idmap/idmap.db\fR\fR
+.ad
+.sp .6
+.RS 4n
+Project Private
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR svcs (1),
+.BR defaultdomain (5),
+.BR attributes (7),
+.BR smf (7),
+.BR idmap (8),
+.BR svcadm (8),
+.BR svccfg (8)
+.SH NOTES
+.sp
+.LP
+The \fBidmapd\fR service is managed by the service management facility (SMF).
+The service identifier for the \fBidmapd\fR service is \fBsvc:/system/idmap\fR.
+.sp
+.LP
+Use the \fBsvcadm\fR command to perform administrative actions on this service,
+such as enabling, disabling, or restarting the service. These actions require
+the \fBsolaris.smf.manage.idmap\fR authorization. Use the \fBsvcs\fR command to
+query the service's status.
+.sp
+.LP
+The functionality of this daemon might change in a future release of the
+Solaris operating system.
diff --git a/usr/src/man/man8/idsconfig.8 b/usr/src/man/man8/idsconfig.8
new file mode 100644
index 0000000000..7eea39ed04
--- /dev/null
+++ b/usr/src/man/man8/idsconfig.8
@@ -0,0 +1,188 @@
+'\" te
+.\" Copyright (C) 2001, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH IDSCONFIG 8 "May 13, 2017"
+.SH NAME
+idsconfig \- prepare an iPlanet Directory Server (iDS) to be populated with
+data and serve LDAP clients
+.SH SYNOPSIS
+.LP
+.nf
+\fB /usr/lib/ldap/idsconfig\fR [\fB-v\fR] [\fB-i\fR \fIinput_configfile\fR]
+ [\fB-o\fR \fIoutput_configfile\fR]
+.fi
+
+.SH DESCRIPTION
+.LP
+Use the \fBidsconfig\fR tool to set up an iPlanet Directory Server (iDS). You
+can specify the input configuration file with the \fB-i\fR option on the
+command line. Alternatively, the tool will prompt the user for configuration
+information. The input configuration file is created by \fBidsconfig\fR with
+the \fB-o\fR option on a previous run.
+.sp
+.LP
+The first time a server is set up, the user is prompted for all the required
+information. Future installations on that machine can use the configuration
+file previously generated by \fBidsconfig\fR using the \fB-o\fR option.
+.sp
+.LP
+The output configuration file contains the directory administrator's password
+in clear text. Thus, if you are creating an output configuration file, take
+appropriate security precautions.
+.sp
+.LP
+You should back up the directory server's configuration and data prior to
+running this command.
+.SH OPTIONS
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-i\fR \fIinput_configfile\fR\fR
+.ad
+.RS 24n
+Specify the file name for \fBidsconfig\fR to use as a configuration file. This
+file will be read by \fBidsconfig\fR, and the values in the file will be used
+to configure the server. Do not manually edit \fIinput_configfile\fR. The
+\fIinput_configfile\fR is only partially validated, as \fBidsconfig\fR assumes
+that the file was created by a previous invocation of the command.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-o\fR \fIoutput_configfile\fR\fR
+.ad
+.RS 24n
+Create a configuration file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.RS 24n
+Verbose output.
+.RE
+
+.SH OPERANDS
+.LP
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fB\fIinput_configfile\fR\fR
+.ad
+.RS 21n
+Name of configuration file for \fBidsconfig\fR to use.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIoutput_configfile\fR\fR
+.ad
+.RS 21n
+Configuration file created by \fBidsconfig\fR.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRPrompting the User for Input
+.sp
+.LP
+In the following example, the user is prompted for information to set up iDS.
+
+.sp
+.in +2
+.nf
+example# \fBidsconfig\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRCreating an Output Configuration File
+.sp
+.LP
+In the following example, the user is prompted for information to set up iDS,
+and an output configuration file, \fBconfig.1\fR, is created when completed.
+
+.sp
+.in +2
+.nf
+example# \fBidsconfig -o config.1\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRSetting up iDS Using the Specified Configuration File
+.sp
+.LP
+In the following example, iDS is set up by using the values specified in the
+configuration file, \fBconfig.1\fR. The verbose mode is specified, so detailed
+information will print to the screen.
+
+.sp
+.in +2
+.nf
+example# \fBidsconfig -v -i config.1\fR
+.fi
+.in -2
+.sp
+
+.SH EXIT STATUS
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR \fR
+.ad
+.RS 6n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB>\fB0\fR\fR
+.ad
+.RS 6n
+An error occurred.
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.LP
+.BR ldap (1),
+.BR ldapadd (1),
+.BR ldapdelete (1),
+.BR ldaplist (1),
+.BR ldapmodify (1),
+.BR ldapmodrdn (1),
+.BR ldapsearch (1),
+.BR resolv.conf (5),
+.BR attributes (7),
+.BR ldap_cachemgr (8),
+.BR ldapaddent (8),
+.BR ldapclient (8)
diff --git a/usr/src/man/man8/if_mpadm.8 b/usr/src/man/man8/if_mpadm.8
new file mode 100644
index 0000000000..5c69c33533
--- /dev/null
+++ b/usr/src/man/man8/if_mpadm.8
@@ -0,0 +1,135 @@
+'\" te
+.\" Copyright (C) 2009, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH IF_MPADM 8 "Sep 02, 2015"
+.SH NAME
+if_mpadm \- administer interfaces in an IP multipathing group
+.SH SYNOPSIS
+.LP
+.nf
+\fBif_mpadm\fR \fB-d\fR | \fB-r\fR \fIifname\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBif_mpadm\fR utility administers IP interfaces that are part of an IP
+Multipathing (IPMP) group. Currently, administration is limited to offlining IP
+interfaces and undoing previous offline operations.
+.LP
+When an IP interface is taken offline, all IP data traffic that was flowing
+over the IP interface is moved to another IP interface in the IPMP group. In
+addition, all \fBUP\fR IP addresses hosted on the IP interface are brought
+down, causing \fBin.mpathd\fR(8) to stop probe-based failure detection on the
+IP interface. As a result, an offline IP interface will not be used for any
+inbound or outbound IP traffic. Only IP interfaces that are in an IPMP group
+may be brought offline. If the IP interface is the last functioning interface
+in the IPMP group, the offline operation will fail.
+.LP
+When an offline operation is undone, any IP addresses hosted on that IP
+interface are brought \fBUP\fR and will be considered by \fBin.mpathd\fR for
+probe-based failure detection. In addition, provided the IP interface is
+otherwise active (see \fBin.mpathd\fR(8)), it will again be used to send and
+receive IP data traffic for the IPMP group. Note that not all offline
+operations can be undone. For instance, \fBin.mpathd\fR may have offlined an IP
+interface because its hardware address was not unique within its IPMP group.
+The \fBipmpstat\fR utility can be used to determine why an IP interface is
+offline, identify which IP interfaces in a group are being used for inbound and
+outbound IP traffic, and more; see \fBipmpstat\fR(8).
+.SH OPTIONS
+.LP
+The \fBif_mpadm\fR utility supports the following options:
+.sp
+.ne 2
+.na
+\fB\fB-d\fR \fIifname\fR\fR
+.ad
+.RS 13n
+Offline the IP interface specified by \fIifname\fR. If \fIifname\fR is not in
+an IPMP group, or the offline would cause the IPMP group to lose network
+connectivity, the operation will fail.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-r\fR \fIifname\fR\fR
+.ad
+.RS 13n
+Undo a previous offline of the IP interface specified by \fIifname\fR. If
+\fIifname\fR is not offline, the operation will fail.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fROfflining an IP Interface
+.LP
+The following command offlines the IP interface \fBunder0\fR, causing any IP
+packets that were being sent and received through it to be handled by another
+IP interface in its group.
+
+.sp
+.in +2
+.nf
+example% \fBif_mpadm -d under0\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRUndoing a Previous Offline Operation
+.LP
+Use the following command to undo the operation in the previous example:
+
+.sp
+.in +2
+.nf
+example% \fBif_mpadm -r under0\fR
+.fi
+.in -2
+.sp
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Unstable
+.TE
+
+.SH SEE ALSO
+.LP
+.BR attributes (7),
+.BR ifconfig (8),
+.BR in.mpathd (8),
+.BR ipmpstat (8)
+.SH DIAGNOSTICS
+.LP
+cannot offline: no other functioning interfaces are in its IPMP group.
+.RS +4
+\fBDescription: \fR
+.sp
+.LP
+This message means that offlining the IP interface would leave the IPMP group
+without network connectivity.
+.RE
+
+.sp
+.LP
+cannot offline: not a physical interface or not in an IPMP group
+.RS +4
+\fBDescription: \fR
+.sp
+.LP
+This means that the IP interface is not an underlying interface in an IPMP
+group, and therefore is not eligible to be offlined.
+.RE
+
diff --git a/usr/src/man/man8/ifconfig.8 b/usr/src/man/man8/ifconfig.8
new file mode 100644
index 0000000000..ac371deb46
--- /dev/null
+++ b/usr/src/man/man8/ifconfig.8
@@ -0,0 +1,2548 @@
+'\" te
+.\" Copyright (C) 2012, Darren Reed. All rights reserved
+.\" Copyright (C) 2009, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 1989 AT&T
+.\" Copyright (c) 1983 Regents of the University of California. All rights reserved. The Berkeley software License Agreement specifies the terms and conditions for redistribution.
+.TH IFCONFIG 8 "June 13, 2021"
+.SH NAME
+ifconfig \- configure network interface parameters
+.SH SYNOPSIS
+.nf
+\fBifconfig\fR \fIinterface\fR [\fIaddress_family\fR] [\fIaddress\fR [\fI/prefix_length\fR]
+ [\fIdest_address\fR]] [\fBaddif\fR \fIaddress\fR [\fI/prefix_length\fR]]
+ [\fBremoveif\fR \fIaddress\fR [\fI/prefix_length\fR]] [\fBarp\fR | \fB-arp\fR]
+ [\fBauth_algs\fR \fIauthentication algorithm\fR] [\fBencr_algs\fR \fIencryption algorithm\fR]
+ [\fBencr_auth_algs\fR \fIauthentication algorithm\fR] [\fBauto-revarp\fR]
+ [\fBbroadcast\fR \fIaddress\fR] [\fBdeprecated\fR | \fB-deprecated\fR]
+ [\fBpreferred\fR | \fB-preferred\fR] [\fBdestination\fR \fIdest_address\fR]
+ [ether [\fIaddress\fR]] [\fBfailover\fR | \fB-failover\fR] [\fBgroup\fR
+ [\fIname\fR | ""\fB\fR]] [\fBindex\fR \fIif_index\fR] [ipmp] [\fBmetric\fR \fIn\fR] [modlist]
+ [modinsert \fImod_name@pos\fR] [modremove \fImod_name@pos\fR]
+ [\fBmtu\fR \fIn\fR] [\fBnetmask\fR \fImask\fR] [\fBplumb\fR] [\fBunplumb\fR] [\fBprivate\fR
+ | \fB-private\fR] [\fBnud\fR | \fB-nud\fR] [\fBset\fR [\fIaddress\fR] [\fI/netmask\fR]]
+ [\fBstandby\fR | \fB-standby\fR] [\fBsubnet\fR \fIsubnet_address\fR] [\fBtdst\fR
+ \fItunnel_dest_address\fR] [\fBtoken\fR \fIaddress\fR/\fIprefix_length\fR]
+ [\fBtsrc\fR \fItunnel_src_address\fR] [\fBtrailers\fR | \fB-trailers\fR]
+ [\fBup\fR] [\fBdown\fR] [\fBusesrc\fR [\fIname\fR | none]] [\fBxmit\fR | \fB-xmit\fR]
+ [\fBencaplimit\fR \fIn\fR | \fB-encaplimit\fR] [\fBthoplimit\fR \fIn\fR] [\fBrouter\fR
+ | \fB-router\fR] [zone \fIzonename\fR | \fB-zone\fR | \fB-all-zones\fR]
+.fi
+
+.LP
+.nf
+\fBifconfig\fR [\fIaddress_family\fR] \fIinterface\fR {\fBauto-dhcp\fR | \fBdhcp\fR} [\fBprimary\fR]
+ [\fBwait\fR \fIseconds\fR] \fBdrop\fR | \fBextend\fR | \fBinform\fR | \fBping\fR
+ | \fBrelease\fR | \fBstart\fR | \fBstatus\fR
+.fi
+
+.SH DESCRIPTION
+The command \fBifconfig\fR is used to assign an address to a network interface
+and to configure network interface parameters. The \fBifconfig\fR command must
+be used at boot time to define the network address of each interface present on
+a machine; it may also be used at a later time to redefine an interface's
+address or other operating parameters. If no option is specified,
+\fBifconfig\fR displays the current configuration for a network interface. If
+an address family is specified, \fBifconfig\fR reports only the details
+specific to that address family. Only privileged users may modify the
+configuration of a network interface. Options appearing within braces
+(\fB{\|}\fR) indicate that one of the options must be specified.
+.SS Network Interface Observability
+Network interface observability with \fBifconfig\fR is limited to those
+network interfaces that have been prepared for use with the IP
+protocol suite. The preferred method for configuring a network
+interface for use with TCP/IP is with \fBipadm\fR and alternatively
+with the use of the \fBplumb\fR option as documented below. Network
+interfaces that have not been configured for use with the IP
+protocol suite can only be observed by using the \fBdladm\fR command.
+.SS DHCP Configuration
+The forms of \fBifconfig\fR that use the \fBauto-dhcp\fR or \fBdhcp\fR
+arguments are used to control the Dynamic Host Configuration Protocol
+("\fBDHCP\fR") configuration of the interface. In this mode, \fBifconfig\fR is
+used to control operation of \fBdhcpagent\fR(8), the \fBDHCP\fR client daemon.
+Once an interface is placed under \fBDHCP\fR control by using the \fBstart\fR
+operand, \fBifconfig\fR should not, in normal operation, be used to modify the
+address or characteristics of the interface. If the address of an interface
+under \fBDHCP\fR is changed, \fBdhcpagent\fR will remove the interface from its
+control.
+.SH OPTIONS
+When the \fBifconfig\fR command is executed without any options
+its behavior is the same as when the \fB\-a\fR option is supplied
+with no other options or arguments.
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fBaddif\fR \fIaddress\fR\fR
+.ad
+.sp .6
+.RS 4n
+Create the next unused logical interface on the specified physical interface.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBall-zones\fR\fR
+.ad
+.sp .6
+.RS 4n
+Make the interface available to every shared-IP zone on the system. The
+appropriate zone to which to deliver data is determined using the
+\fBtnzonecfg\fR database. This option is available only if the system is
+configured with the Solaris Trusted Extensions feature.
+.sp
+The \fBtnzonecfg\fR database is described in the \fBtnzonecfg(5)\fR man page,
+which is part of the \fISolaris Trusted Extensions Reference Manual\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBanycast\fR\fR
+.ad
+.sp .6
+.RS 4n
+Marks the logical interface as an anycast address by setting the \fBANYCAST\fR
+flag. See "INTERFACE FLAGS," below, for more information on anycast.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-anycast\fR\fR
+.ad
+.sp .6
+.RS 4n
+Marks the logical interface as not an anycast address by clearing the
+\fBANYCAST\fR flag.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBarp\fR\fR
+.ad
+.sp .6
+.RS 4n
+Enable the use of the Address Resolution Protocol ("\fBARP\fR") in mapping
+between network level addresses and link level addresses (default). This is
+currently implemented for mapping between IPv4 addresses and MAC addresses.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-arp\fR\fR
+.ad
+.sp .6
+.RS 4n
+Disable the use of the \fBARP\fR on a physical interface. ARP cannot be
+disabled on an IPMP IP interface.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBauth_algs\fR \fIauthentication algorithm\fR\fR
+.ad
+.sp .6
+.RS 4n
+For a tunnel, enable IPsec \fBAH\fR with the authentication algorithm
+specified. The algorithm can be either a number or an algorithm name, including
+\fIany\fR to express no preference in algorithm. All IPsec tunnel properties
+must be specified on the same command line. To disable tunnel security, specify
+an \fBauth_alg\fR of \fBnone\fR.
+.sp
+It is now preferable to use the \fBipsecconf\fR(8) command when configuring a
+tunnel's security properties. If \fBipsecconf\fR was used to set a tunnel's
+security properties, this keyword will not affect the tunnel.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBauto-dhcp\fR\fR
+.ad
+.sp .6
+.RS 4n
+Use DHCP to automatically acquire an address for this interface. This option
+has a completely equivalent alias called \fBdhcp\fR.
+.sp
+For IPv6, the interface specified must be the zeroth logical interface (the
+physical interface name), which has the link-local address.
+.sp
+.ne 2
+.na
+\fBprimary\fR
+.ad
+.sp .6
+.RS 4n
+Defines the interface as the \fBprimary\fR. The interface is defined as the
+preferred one for the delivery of client-wide configuration data. Only one
+interface can be the primary at any given time. If another interface is
+subsequently selected as the primary, it replaces the previous one. Nominating
+an interface as the primary one will not have much significance once the client
+work station has booted, as many applications will already have started and
+been configured with data read from the previous primary interface.
+.RE
+
+.sp
+.ne 2
+.na
+\fBwait \fIseconds\fR\fR
+.ad
+.sp .6
+.RS 4n
+The \fBifconfig\fR command will wait until the operation either completes or
+for the interval specified, whichever is the sooner. If no wait interval is
+given, and the operation is one that cannot complete immediately,
+\fBifconfig\fR will wait 30 seconds for the requested operation to complete.
+The symbolic value \fBforever\fR may be used as well, with obvious meaning.
+.RE
+
+.sp
+.ne 2
+.na
+\fBdrop\fR
+.ad
+.sp .6
+.RS 4n
+Remove the specified interface from \fBDHCP\fR control without notifying the
+DHCP server, and record the current lease for later use. Additionally, for
+IPv4, set the IP address to zero. For IPv6, unplumb all logical interfaces
+plumbed by \fBdhcpagent\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBextend\fR
+.ad
+.sp .6
+.RS 4n
+Attempt to extend the lease on the interface's IP address. This is not
+required, as the agent will automatically extend the lease well before it
+expires.
+.RE
+
+.sp
+.ne 2
+.na
+\fBinform\fR
+.ad
+.sp .6
+.RS 4n
+Obtain network configuration parameters from \fBDHCP\fR without obtaining a
+lease on \fBIP\fR addresses. This is useful in situations where an \fBIP\fR
+address is obtained through mechanisms other than \fBDHCP\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBping\fR
+.ad
+.sp .6
+.RS 4n
+Check whether the interface given is under \fBDHCP\fR control, which means that
+the interface is managed by the \fBDHCP\fR agent and is working properly. An
+exit status of \fB0\fR means success.
+.RE
+
+.sp
+.ne 2
+.na
+\fBrelease\fR
+.ad
+.sp .6
+.RS 4n
+Relinquish the IP addresses on the interface by notifying the server and
+discard the current lease. For IPv4, set the IP address to zero. For IPv6, all
+logical interfaces plumbed by \fBdhcpagent\fR are unplumbed.
+.RE
+
+.sp
+.ne 2
+.na
+\fBstart\fR
+.ad
+.sp .6
+.RS 4n
+Start \fBDHCP\fR on the interface.
+.RE
+
+.sp
+.ne 2
+.na
+\fBstatus\fR
+.ad
+.sp .6
+.RS 4n
+Display the \fBDHCP\fR configuration status of the interface.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBauto-revarp\fR\fR
+.ad
+.sp .6
+.RS 4n
+Use the Reverse Address Resolution Protocol (RARP) to automatically acquire an
+address for this interface. This will fail if the interface does not support
+RARP; for example, IPoIB (IP over InfiniBand), and on IPv6 interfaces.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBbroadcast\fR \fIaddress\fR\fR
+.ad
+.sp .6
+.RS 4n
+For IPv4 only. Specify the address to use to represent broadcasts to the
+network. The default broadcast address is the address with a host part of all
+\fB1\fR's. A "\fB+\fR" (plus sign) given for the broadcast value causes the
+broadcast address to be reset to a default appropriate for the (possibly new)
+address and netmask. The arguments of \fBifconfig\fR are interpreted left to
+right. Therefore
+.sp
+.in +2
+.nf
+example% ifconfig -a netmask + broadcast +
+.fi
+.in -2
+.sp
+
+and
+.sp
+.in +2
+.nf
+example% ifconfig -a broadcast + netmask +
+.fi
+.in -2
+.sp
+
+may result in different values being assigned for the broadcast addresses of
+the interfaces.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdeprecated\fR\fR
+.ad
+.sp .6
+.RS 4n
+Marks the logical interface as deprecated. An address associated with a
+deprecated interface will not be used as source address for outbound packets
+unless either there are no other addresses available on the interface or the
+application has bound to this address explicitly. The status display shows
+\fBDEPRECATED\fR as part of flags. See for information on the flags supported
+by \fBifconfig\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-deprecated\fR\fR
+.ad
+.sp .6
+.RS 4n
+Marks a logical interface as not deprecated. An address associated with such an
+interface could be used as a source address for outbound packets.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpreferred\fR\fR
+.ad
+.sp .6
+.RS 4n
+Marks the logical interface as preferred. This option is only valid for IPv6
+addresses. Addresses assigned to preferred logical interfaces are preferred as
+source addresses over all other addresses configured on the system, unless the
+address is of an inappropriate scope relative to the destination address.
+Preferred addresses are used as source addresses regardless of which physical
+interface they are assigned to. For example, you can configure a preferred
+source address on the loopback interface and advertise reachability of this
+address by using a routing protocol.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-preferred\fR\fR
+.ad
+.sp .6
+.RS 4n
+Marks the logical interface as not preferred.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdestination\fR \fIdest_address\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set the destination address for a point-to point interface.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdhcp\fR\fR
+.ad
+.sp .6
+.RS 4n
+This option is an alias for option \fBauto-dhcp\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdown\fR\fR
+.ad
+.sp .6
+.RS 4n
+Mark a logical interface as "down". (That is, turn off the \fBIFF_UP\fR bit.)
+When a logical interface is marked "down," the system does not attempt to use
+the address assigned to that interface as a source address for outbound packets
+and will not recognize inbound packets destined to that address as being
+addressed to this host. Additionally, when all logical interfaces on a given
+physical interface are "down," the physical interface itself is disabled.
+.sp
+When a logical interface is down, all routes that specify that interface as the
+output (using the \fB-ifp\fR option in the \fBroute\fR(8) command or
+\fBRTA_IFP\fR in a \fBroute\fR(4P) socket) are removed from the forwarding
+table. Routes marked with \fBRTF_STATIC\fR are returned to the table if the
+interface is brought back up, while routes not marked with \fBRTF_STATIC\fR are
+simply deleted.
+.sp
+When all logical interfaces that could possibly be used to reach a particular
+gateway address are brought down (specified without the interface option as in
+the previous paragraph), the affected gateway routes are treated as though they
+had the \fBRTF_BLACKHOLE\fR flag set. All matching packets are discarded
+because the gateway is unreachable.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBencaplimit\fR \fIn\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set the tunnel encapsulation limit for the interface to n. This option applies
+to IPv4-in-IPv6 and IPv6-in-IPv6 tunnels only, and it simply modifies the
+\fBencaplimit\fR link property of the underlying IPv6 tunnel link (see
+\fBdladm\fR(8)). The tunnel encapsulation limit controls how many more tunnels
+a packet can enter before it leaves any tunnel, that is, the tunnel nesting
+level.
+.sp
+This option is obsolete, superseded by the \fBdladm\fR(8) \fBencaplimit\fR
+link property.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-encaplimit\fR\fR
+.ad
+.sp .6
+.RS 4n
+Disable generation of the tunnel encapsulation limit. This option applies only
+to IPv4-in-IPv6 and IPv6-in-IPv6 tunnels. This simply sets the \fBencaplimit\fR
+link property of the underlying IPv6 tunnel link to 0 (see \fBdladm\fR(8)
+\fBencaplimit\fR).
+.sp
+This option is obsolete, superseded by the \fBdladm\fR(8) \fBencaplimit\fR
+link property.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBencr_auth_algs\fR \fIauthentication algorithm\fR\fR
+.ad
+.sp .6
+.RS 4n
+For a tunnel, enable IPsec \fBESP\fR with the authentication algorithm
+specified. It can be either a number or an algorithm name, including \fBany\fR
+or \fBnone\fR, to indicate no algorithm preference. If an \fBESP\fR encryption
+algorithm is specified but the authentication algorithm is not, the default
+value for the \fBESP\fR authentication algorithm will be \fBany\fR.
+.sp
+It is now preferable to use the \fBipsecconf\fR(8) command when configuring a
+tunnel's security properties. If \fBipsecconf\fR was used to set a tunnel's
+security properties, this keyword will not affect the tunnel.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBencr_algs\fR \fIencryption algorithm\fR\fR
+.ad
+.sp .6
+.RS 4n
+For a tunnel, enable IPsec \fBESP\fR with the encryption algorithm specified.
+It can be either a number or an algorithm name. Note that all IPsec tunnel
+properties must be specified on the same command line. To disable tunnel
+security, specify the value of \fBencr_alg\fR as \fBnone\fR. If an \fBESP\fR
+authentication algorithm is specified, but the encryption algorithm is not, the
+default value for the \fBESP\fR encryption will be \fBnull\fR.
+.sp
+It is now preferable to use the \fBipsecconf\fR(8) command when configuring a
+tunnel's security properties. If \fBipsecconf\fR was used to set a tunnel's
+security properties, this keyword will not affect the tunnel.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBether\fR [ \fIaddress\fR ]\fR
+.ad
+.sp .6
+.RS 4n
+If no address is given and the user is root or has sufficient privileges to
+open the underlying datalink, then display the current Ethernet address
+information.
+.sp
+Otherwise, if the user is root or has sufficient privileges, set the Ethernet
+address of the interfaces to \fIaddress\fR. The address is an Ethernet address
+represented as \fIx:x:x:x:x:x\fR where \fIx\fR is a hexadecimal number between
+0 and FF. Similarly, for the IPoIB (IP over InfiniBand) interfaces, the address
+will be 20 bytes of colon-separated hex numbers between \fB0\fR and \fBFF\fR.
+.sp
+Some, though not all, Ethernet interface cards have their own addresses. To use
+cards that do not have their own addresses, refer to section 3.2.3(4) of the
+IEEE 802.3 specification for a definition of the locally administered address
+space. Note that all IP interfaces in an IPMP group must have unique hardware
+addresses; see \fBin.mpathd\fR(8).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-failover\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set \fBNOFAILOVER\fR on the logical interface. This makes the associated
+address available for use by \fBin.mpathd\fR to perform probe-based failure
+detection for the associated physical IP interface. As a side effect,
+\fBDEPRECATED\fR will also be set on the logical interface. This operation is
+not permitted on an IPMP IP interface.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfailover\fR\fR
+.ad
+.sp .6
+.RS 4n
+Clear \fBNOFAILOVER\fR on the logical interface. This is the default. These
+logical interfaces are subject to migration when brought up (see \fBIP
+MULTIPATHING GROUPS\fR).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBgroup\fR [ \fIname\fR |\fB""\fR]\fR
+.ad
+.sp .6
+.RS 4n
+When applied to a physical interface, it places the interface into the named
+group. If the group does not exist, it will be created, along with one or more
+IPMP IP interfaces (for IPv4, IPv6, or both). Any \fBUP\fR addresses that are
+not also marked \fBNOFAILOVER\fR are subject to migration to the IPMP IP
+interface (see \fBIP MULTIPATHING GROUPS\fR). Specifying a group name of
+\fB""\fR removes the physical IP interface from the group.
+.sp
+When applied to a physical IPMP IP interface, it renames the IPMP group to have
+the new name. If the name already exists, or a name of \fB""\fR is specified,
+it fails. Renaming IPMP groups is discouraged. Instead, the IPMP IP interface
+should be given a meaningful name when it is created by means of the \fBipmp\fR
+subcommand, which the system will also use as the IPMP group name.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBindex\fR \fIn\fR\fR
+.ad
+.sp .6
+.RS 4n
+Change the interface index for the interface. The value of \fIn\fR must be an
+interface index (\fIif_index\fR) that is not used on another interface.
+\fIif_index\fR will be a non-zero positive number that uniquely identifies the
+network interface on the system.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBipmp\fR\fR
+.ad
+.sp .6
+.RS 4n
+Create an IPMP IP interface with the specified name. An interface must be
+separately created for use by IPv4 and IPv6. The \fIaddress_family\fR parameter
+controls whether the command applies to IPv4 or IPv6 (IPv4 if unspecified). All
+IPMP IP interfaces have the \fBIPMP\fR flag set.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmetric\fR \fIn\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set the routing metric of the interface to \fIn\fR; if no value is specified,
+the default is \fB0\fR. The routing metric is used by the routing protocol.
+Higher metrics have the effect of making a route less favorable. Metrics are
+counted as addition hops to the destination network or host.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmodinsert\fR \fImod_name@pos\fR\fR
+.ad
+.sp .6
+.RS 4n
+Insert a module with name \fImod_name\fR to the stream of the device at
+position \fIpos\fR. The position is relative to the stream head. Position
+\fB0\fR means directly under stream head.
+.sp
+Based upon the example in the \fBmodlist\fR option, use the following command
+to insert a module with name \fBipqos\fR under the \fBip\fR module and above
+the firewall module:
+.sp
+.in +2
+.nf
+example% ifconfig eri0 modinsert ipqos@2
+.fi
+.in -2
+.sp
+
+A subsequent listing of all the modules in the stream of the device follows:
+.sp
+.in +2
+.nf
+example% ifconfig eri0 modlist
+0 arp
+1 ip
+2 ipqos
+3 firewall
+4 eri
+.fi
+.in -2
+.sp
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmodlist\fR\fR
+.ad
+.sp .6
+.RS 4n
+List all the modules in the stream of the device.
+.sp
+The following example lists all the modules in the stream of the device:
+.sp
+.in +2
+.nf
+example% ifconfig eri0 modlist
+0 arp
+1 ip
+2 firewall
+4 eri
+.fi
+.in -2
+.sp
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmodremove\fR \fImod_name@pos\fR\fR
+.ad
+.sp .6
+.RS 4n
+Remove a module with name \fImod_name\fR from the stream of the device at
+position \fIpos\fR. The position is relative to the stream head.
+.sp
+Based upon the example in the \fBmodinsert\fR option, use the following command
+to remove the firewall module from the stream after inserting the \fBipqos\fR
+module:
+.sp
+.in +2
+.nf
+example% ifconfig eri0 modremove firewall@3
+.fi
+.in -2
+.sp
+
+A subsequent listing of all the modules in the stream of the device follows:
+.sp
+.in +2
+.nf
+example% ifconfig eri0 modlist
+0 arp
+1 ip
+2 ipqos
+3 eri
+.fi
+.in -2
+.sp
+
+Note that the core IP stack modules, for example, \fBip\fR and \fBtun\fR
+modules, cannot be removed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmtu\fR \fIn\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set the maximum transmission unit of the interface to \fIn\fR. For many types
+of networks, the \fBmtu\fR has an upper limit, for example, \fB1500\fR for
+Ethernet. This option sets the \fBFIXEDMTU\fR flag on the affected interface.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnetmask\fR \fImask\fR\fR
+.ad
+.sp .6
+.RS 4n
+For IPv4 only. Specify how much of the address to reserve for subdividing
+networks into subnetworks. The mask includes the network part of the local
+address and the subnet part, which is taken from the host field of the address.
+The mask contains 1's for the bit positions in the 32-bit address which are to
+be used for the network and subnet parts, and 0's for the host part. The mask
+should contain at least the standard network portion, and the subnet field
+should be contiguous with the network portion. The mask can be specified in one
+of four ways:
+.RS +4
+.TP
+1.
+with a single hexadecimal number with a leading 0x,
+.RE
+.RS +4
+.TP
+2.
+with a dot-notation address,
+.RE
+.RS +4
+.TP
+3.
+with a "\fB+\fR" (plus sign) address, or
+.RE
+.RS +4
+.TP
+4.
+with a pseudo host name/pseudo network name found in the network database
+\fBnetworks\fR(5).
+.RE
+If a "\fB+\fR" (plus sign) is given for the netmask value, the mask is looked
+up in the \fBnetmasks\fR(5) database. This lookup finds the longest matching
+netmask in the database by starting with the interface's IPv4 address as the
+key and iteratively masking off more and more low order bits of the address.
+This iterative lookup ensures that the \fBnetmasks\fR(5) database can be used
+to specify the netmasks when variable length subnetmasks are used within a
+network number.
+.sp
+If a pseudo host name/pseudo network name is supplied as the netmask value,
+netmask data may be located in the \fBhosts\fR or \fBnetworks\fR database.
+Names are looked up by first using \fBgethostbyname\fR(3NSL). If not found
+there, the names are looked up in \fBgetnetbyname\fR(3SOCKET). These interfaces
+may in turn use \fBnsswitch.conf\fR(5) to determine what data store(s) to use
+to fetch the actual value.
+.sp
+For both \fBinet\fR and \fBinet6\fR, the same information conveyed by
+\fImask\fR can be specified as a \fIprefix_length\fR attached to the
+\fIaddress\fR parameter.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnud\fR\fR
+.ad
+.sp .6
+.RS 4n
+Enables the neighbor unreachability detection mechanism on a point-to-point
+physical interface.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-nud\fR\fR
+.ad
+.sp .6
+.RS 4n
+Disables the neighbor unreachability detection mechanism on a point-to-point
+physical interface.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBplumb\fR\fR
+.ad
+.sp .6
+.RS 4n
+For a physical IP interface, open the datalink associated with the physical
+interface name and set up the plumbing needed for IP to use the datalink. When
+used with a logical interface name, this command is used to create a specific
+named logical interface on an existing physical IP interface.
+.sp
+An interface must be separately plumbed for IPv4 and IPv6 according to the
+\fIaddress_family\fR parameter (IPv4 if unspecified). Before an interface has
+been plumbed, it will not be shown by \fBifconfig\fR \fB-a\fR.
+.sp
+Note that IPMP IP interfaces are not tied to a specific datalink and are
+instead created with the \fBipmp\fR subcommand.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBprivate\fR\fR
+.ad
+.sp .6
+.RS 4n
+Tells the \fBin.routed\fR routing daemon that a specified logical interface
+should not be advertised.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-private\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify unadvertised interfaces.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBremoveif\fR \fIaddress\fR\fR
+.ad
+.sp .6
+.RS 4n
+Remove the logical interface on the physical interface specified that matches
+the \fIaddress\fR specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrouter\fR\fR
+.ad
+.sp .6
+.RS 4n
+Enable IP forwarding on the interface. When enabled, the interface is marked
+\fBROUTER\fR, and IP packets can be forwarded to and from the interface.
+Enabling \fBROUTER\fR on any IP interface in an IPMP group enables it on all IP
+interfaces in that IPMP group.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-router\fR\fR
+.ad
+.sp .6
+.RS 4n
+Disable IP forwarding on the interface. IP packets are not forwarded to and
+from the interface. Disabling \fBROUTER\fR on any IP interface in an IPMP group
+disables it on all IP interfaces in that IPMP group.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBset\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set the \fIaddress\fR, \fIprefix_length\fR or both, for a logical interface.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBstandby\fR\fR
+.ad
+.sp .6
+.RS 4n
+Mark the physical IP interface as a \fBSTANDBY\fR interface. If an interface is
+marked \fBSTANDBY\fR and is part of an IPMP group, the interface will not be
+used for data traffic unless another interface in the IPMP group becomes
+unusable. When a \fBSTANDBY\fR interface is functional but not being used for
+data traffic, it will also be marked \fBINACTIVE\fR. This operation is not
+permitted on an IPMP IP interface.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-standby\fR\fR
+.ad
+.sp .6
+.RS 4n
+Clear \fBSTANDBY\fR on the interface. This is the default.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsubnet\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set the subnet \fIaddress\fR for an interface.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBtdst\fR \fItunnel_dest_address\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set the destination address of a tunnel. The address should not be the same as
+the \fBdest_address\fR of the tunnel, because no packets leave the system over
+such a tunnel.
+.sp
+This option is obsolete, superseded by the \fBdladm\fR(8) \fBcreate-iptun\fR
+and \fBmodify-iptun\fR subcommands.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBthoplimit\fR \fIn\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set the hop limit for a tunnel interface. The hop limit value is used as the
+\fBTTL\fR in the IPv4 header for the IPv6-in-IPv4 and IPv4-in-IPv4 tunnels. For
+IPv6-in-IPv6 and IPv4-in-IPv6 tunnels, the hop limit value is used as the hop
+limit in the IPv6 header. This option simply modifies the \fBhoplimit\fR link
+property of the underlying IP tunnel link (see \fBdladm\fR(8)).
+.sp
+This option is obsolete, superseded by the \fBdladm\fR(8) \fBhoplimit\fR link
+property.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBtoken\fR \fIaddress\fR/\fIprefix_length\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set the IPv6 token of an interface to be used for address autoconfiguration.
+.sp
+.in +2
+.nf
+example% \fBifconfig eri0 inet6 token ::1/64\fR
+.fi
+.in -2
+.sp
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBtrailers\fR\fR
+.ad
+.sp .6
+.RS 4n
+This flag previously caused a nonstandard encapsulation of IPv4 packets on
+certain link levels. Drivers supplied with this release no longer use this
+flag. It is provided for compatibility, but is ignored.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-trailers\fR\fR
+.ad
+.sp .6
+.RS 4n
+Disable the use of a "trailer" link level encapsulation.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBtsrc\fR \fItunnel_src_address\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set the source address of a tunnel. This is the source address on an outer
+encapsulating \fBIP\fR header. It must be an address of another interface
+already configured using \fBifconfig\fR.
+.sp
+This option is obsolete, superseded by the \fBdladm\fR(8) \fBcreate-iptun\fR
+and \fBmodify-iptun\fR subcommands.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBunplumb\fR\fR
+.ad
+.sp .6
+.RS 4n
+For a physical or IPMP interface, remove all associated logical IP interfaces
+and tear down any plumbing needed for IP to use the interface. For an IPMP IP
+interface, this command will fail if the group is not empty. For a logical
+interface, the logical interface is removed.
+.sp
+An interface must be separately unplumbed for IPv4 and IPv6 according to the
+\fIaddress_family\fR parameter (IPv4 if unspecified). Upon success, the
+interface name will no longer appear in the output of \fBifconfig\fR \fB-a\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBup\fR\fR
+.ad
+.sp .6
+.RS 4n
+Mark a logical interface \fBUP\fR. As a result, the IP module will accept
+packets destined to the associated address (unless the address is zero), along
+with any associated multicast and broadcast IP addresses. Similarly, the IP
+module will allow packets to be sent with the associated address as a source
+address. At least one logical interface must be \fBUP\fR for the associated
+physical interface to send or receive packets
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBusesrc\fR [ \fIname\fR | \fBnone\fR ]\fR
+.ad
+.sp .6
+.RS 4n
+Specify a physical interface to be used for source address selection. If the
+keyword \fBnone\fR is used, then any previous selection is cleared.
+.sp
+When an application does not choose a non-zero source address using
+\fBbind\fR(3SOCKET), the system will select an appropriate source address based
+on the outbound interface and the address selection rules (see
+\fBipaddrsel\fR(8)).
+.sp
+When \fBusesrc\fR is specified and the specified interface is selected in the
+forwarding table for output, the system looks first to the specified physical
+interface and its associated logical interfaces when selecting a source
+address. If no usable address is listed in the forwarding table, the ordinary
+selection rules apply. For example, if you enter:
+.sp
+.in +2
+.nf
+# \fBifconfig eri0 usesrc vni0\fR
+.fi
+.in -2
+.sp
+
+\&...and \fBvni0\fR has address 10.0.0.1 assigned to it, the system will prefer
+10.0.0.1 as the source address for any packets originated by local connections
+that are sent through \fBeri0\fR. Further examples are provided in the
+\fBEXAMPLES\fR section.
+.sp
+While you can specify any physical interface (or even loopback), be aware that
+you can also specify the virtual IP interface (see \fBvni\fR(4D)). The virtual
+IP interface is not associated with any physical hardware and is thus immune to
+hardware failures. You can specify any number of physical interfaces to use the
+source address hosted on a single virtual interface. This simplifies the
+configuration of routing-based multipathing. If one of the physical interfaces
+were to fail, communication would continue through one of the remaining,
+functioning physical interfaces. This scenario assumes that the reachability of
+the address hosted on the virtual interface is advertised in some manner, for
+example, through a routing protocol.
+.sp
+Because the \fBifconfig\fR \fBpreferred\fR option is applied to all interfaces,
+it is coarser-grained than the \fBusesrc\fR option. It will be overridden by
+\fBusesrc\fR and \fBsetsrc\fR (route subcommand), in that order.
+.sp
+IPMP and the \fBusesrc\fR option are mutually exclusive. That is, if an
+interface is part of an IPMP group or marked \fBSTANDBY\fR, then it cannot be
+specified by means of \fBusesrc\fR, and vice-versa.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBxmit\fR\fR
+.ad
+.sp .6
+.RS 4n
+Enable a logical interface to transmit packets. This is the default behavior
+when the logical interface is up.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-xmit\fR\fR
+.ad
+.sp .6
+.RS 4n
+Disable transmission of packets on an interface. The interface will continue to
+receive packets.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBzone\fR \fIzonename\fR\fR
+.ad
+.sp .6
+.RS 4n
+Place the logical interface in zone \fIzonename\fR. The named zone must be
+active in the kernel in the ready or running state. The interface is unplumbed
+when the zone is halted or rebooted. The zone must be configured to be an
+shared-IP zone. \fBzonecfg\fR(8) is used to assign network interface names to
+exclusive-IP zones.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-zone\fR\fR
+.ad
+.sp .6
+.RS 4n
+Place IP interface in the global zone. This is the default.
+.RE
+
+.SH OPERANDS
+The \fIinterface\fR operand, as well as address parameters that affect it, are
+described below.
+.sp
+.ne 2
+.na
+\fB\fIinterface\fR\fR
+.ad
+.sp .6
+.RS 4n
+A string of one of the following forms:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fIname physical-unit\fR, for example, \fBeri0\fR or \fBce1\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fIname physical-unit\fR\fB:\fR\fIlogical-unit\fR, for example, \fBeri0:1\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBip.tun\fR\fIN\fR, \fBip6.tun\fR\fIN\fR, or \fBip6to4.tun\fR\fIN\fR for
+implicit IP tunnel links
+.RE
+If the interface name starts with a dash (-), it is interpreted as a set of
+options which specify a set of interfaces. In such a case, \fB-a\fR must be
+part of the options and any of the additional options below can be added in any
+order. If one of these interface names is given, the commands following it are
+applied to all of the interfaces that match.
+.sp
+.ne 2
+.na
+\fB\fB-a\fR\fR
+.ad
+.sp .6
+.RS 4n
+Apply the command to all interfaces of the specified address family. If no
+address family is supplied, either on the command line or by means of
+\fB/etc/default/inet_type\fR, then all address families will be selected.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-d\fR\fR
+.ad
+.sp .6
+.RS 4n
+Apply the commands to all "down" interfaces in the system.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-D\fR\fR
+.ad
+.sp .6
+.RS 4n
+Apply the commands to all interfaces not under \fBDHCP\fR (Dynamic Host
+Configuration Protocol) control.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-u\fR\fR
+.ad
+.sp .6
+.RS 4n
+Apply the commands to all "up" interfaces in the system.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-Z\fR\fR
+.ad
+.sp .6
+.RS 4n
+Apply the commands to all interfaces in the user's zone.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-4\fR\fR
+.ad
+.sp .6
+.RS 4n
+Apply the commands to all IPv4 interfaces.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-6\fR\fR
+.ad
+.sp .6
+.RS 4n
+Apply the commands to all IPv6 interfaces.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIaddress_family\fR\fR
+.ad
+.sp .6
+.RS 4n
+The address family is specified by the \fIaddress_family\fR parameter. The
+\fBifconfig\fR command currently supports the following families: \fBinet\fR
+and \fBinet6\fR. If no address family is specified, the default is \fBinet\fR.
+.sp
+\fBifconfig\fR honors the \fBDEFAULT_IP\fR setting in the
+\fB/etc/default/inet_type\fR file when it displays interface information . If
+\fBDEFAULT_IP\fR is set to \fBIP_VERSION4\fR, then \fBifconfig\fR will omit
+information that relates to IPv6 interfaces. However, when you explicitly
+specify an address family (\fBinet\fR or \fBinet6\fR) on the \fBifconfig\fR
+command line, the command line overrides the \fBDEFAULT_IP\fR settings.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIaddress\fR\fR
+.ad
+.sp .6
+.RS 4n
+For the IPv4 family (\fBinet\fR), the \fIaddress\fR is either a host name
+present in the host name data base (see \fBhosts\fR(5)) or in the Network
+Information Service (NIS) map \fBhosts\fR, or an IPv4 address expressed in the
+Internet standard "dot notation".
+.sp
+For the IPv6 family (\fBinet6\fR), the \fIaddress\fR is either a host name
+present in the host name data base (see \fBhosts\fR(5)) or in the Network
+Information Service (\fBNIS\fR) map \fBipnode\fR, or an IPv6 address expressed
+in the Internet standard colon-separated hexadecimal format represented as
+\fIx:x:x:x:x:x:x:x\fR where \fIx\fR is a hexadecimal number between \fB0\fR and
+\fBFFFF\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIprefix_length\fR\fR
+.ad
+.sp .6
+.RS 4n
+For the IPv4 and IPv6 families (\fBinet\fR and \fBinet6\fR), the
+\fIprefix_length\fR is a number between 0 and the number of bits in the
+address. For \fBinet\fR, the number of bits in the address is 32; for
+\fBinet6\fR, the number of bits in the address is 128. The \fIprefix_length\fR
+denotes the number of leading set bits in the netmask.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIdest_address\fR\fR
+.ad
+.sp .6
+.RS 4n
+If the \fIdest_address\fR parameter is supplied in addition to the
+\fIaddress\fR parameter, it specifies the address of the correspondent on the
+other end of a point-to-point link.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fItunnel_dest_address\fR\fR
+.ad
+.sp .6
+.RS 4n
+An address that is or will be reachable through an interface other than the
+tunnel being configured. This tells the tunnel where to send the tunneled
+packets. This address must not be the same as the interface destination address
+being configured.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fItunnel_src_address\fR\fR
+.ad
+.sp .6
+.RS 4n
+An address that is attached to an already configured interface that has been
+configured "up" with \fBifconfig\fR.
+.RE
+
+.SH INTERFACE FLAGS
+The \fBifconfig\fR command supports the following interface flags. The term
+"address" in this context refers to a logical interface, for example,
+\fBeri0:0\fR, while "interface" refers to the physical interface, for example,
+\fBeri0\fR.
+.sp
+.ne 2
+.na
+\fB\fBADDRCONF\fR\fR
+.ad
+.sp .6
+.RS 4n
+The address is from stateless \fBaddrconf\fR. The stateless mechanism allows a
+host to generate its own address using a combination of information advertised
+by routers and locally available information. Routers advertise prefixes that
+identify the subnet associated with the link, while the host generates an
+"interface identifier" that uniquely identifies an interface in a subnet. In
+the absence of information from routers, a host can generate link-local
+addresses. This flag is specific to IPv6.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBANYCAST\fR\fR
+.ad
+.sp .6
+.RS 4n
+Indicates an \fBanycast\fR address. An \fBanycast\fR address identifies the
+nearest member of a group of systems that provides a particular type of
+service. An \fBanycast\fR address is assigned to a group of systems. Packets
+are delivered to the nearest group member identified by the \fBanycast\fR
+address instead of being delivered to all members of the group.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBBROADCAST\fR\fR
+.ad
+.sp .6
+.RS 4n
+This \fBbroadcast\fR address is valid. This flag and \fBPOINTTOPOINT\fR are
+mutually exclusive
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBCoS\fR\fR
+.ad
+.sp .6
+.RS 4n
+This interface supports some form of Class of Service (CoS) marking. An example
+is the 802.1D user priority marking supported on \fBVLAN\fR interfaces. For
+IPMP IP interfaces, this will only be set if all interfaces in the group have
+CoS set.
+.sp
+Note that this flag is only set on interfaces over VLAN links and over Ethernet
+links that have their \fBdladm\fR(8) \fBtagmode\fR link property set to
+\fBnormal\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBDEPRECATED\fR\fR
+.ad
+.sp .6
+.RS 4n
+This address is deprecated. This address will not be used as a source address
+for outbound packets unless there are no other addresses on this interface or
+an application has explicitly bound to this address. An IPv6 deprecated address
+is part of the standard mechanism for renumbering in IPv6 and will eventually
+be deleted when not used. For both IPv4 and IPv6, \fBDEPRECATED\fR is also set
+on all \fBNOFAILOVER\fR addresses, though this may change in a future release.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBDHCPRUNNING\fR\fR
+.ad
+.sp .6
+.RS 4n
+The logical interface is managed by \fBdhcpagent\fR(8).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBDUPLICATE\fR\fR
+.ad
+.sp .6
+.RS 4n
+The logical interface has been disabled because the IP address configured on
+the interface is a duplicate. Some other node on the network is using this
+address. If the address was configured by DHCP or is temporary, the system will
+choose another automatically, if possible. Otherwise, the system will attempt
+to recover this address periodically and the interface will recover when the
+conflict has been removed from the network. Changing the address or netmask, or
+setting the logical interface to \fBup\fR will restart duplicate detection.
+Setting the interface to \fBdown\fR terminates recovery and removes the
+\fBDUPLICATE\fR flag.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBFAILED\fR\fR
+.ad
+.sp .6
+.RS 4n
+The \fBin.mpathd\fR daemon has determined that the interface has failed.
+\fBFAILED\fR interfaces will not be used to send or receive IP data traffic. If
+this is set on a physical IP interface in an IPMP group, IP data traffic will
+continue to flow over other usable IP interfaces in the IPMP group. If this is
+set on an IPMP IP interface, the entire group has failed and no data traffic
+can be sent or received over any interfaces in that group.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBFIXEDMTU\fR\fR
+.ad
+.sp .6
+.RS 4n
+The MTU has been set using the \fB-mtu\fR option. This flag is read-only.
+Interfaces that have this flag set have a fixed MTU value that is unaffected by
+dynamic MTU changes that can occur when drivers notify IP of link MTU changes.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBINACTIVE\fR\fR
+.ad
+.sp .6
+.RS 4n
+The physical interface is functioning but is not used to send or receive data
+traffic according to administrative policy. This flag is initially set by the
+\fBstandby\fR subcommand and is subsequently controlled by \fBin.mpathd\fR. It
+also set when \fBFAILBACK=no\fR mode is enabled (see \fBin.mpathd\fR(8)) to
+indicate that the IP interface has repaired but is not being used.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBIPMP\fR\fR
+.ad
+.sp .6
+.RS 4n
+Indicates that this is an IPMP IP interface.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBLOOPBACK\fR\fR
+.ad
+.sp .6
+.RS 4n
+Indicates that this is the loopback interface.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBMULTI_BCAST\fR\fR
+.ad
+.sp .6
+.RS 4n
+Indicates that the broadcast address is used for multicast on this interface.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBMULTICAST\fR\fR
+.ad
+.sp .6
+.RS 4n
+The interface supports multicast. \fBIP\fR assumes that any interface that
+supports hardware broadcast, or that is a point-to-point link, will support
+multicast.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBNOARP\fR\fR
+.ad
+.sp .6
+.RS 4n
+There is no address resolution protocol (\fBARP\fR) for this interface that
+corresponds to all interfaces for a device without a broadcast address. This
+flag is specific to IPv4.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBNOFAILOVER\fR\fR
+.ad
+.sp .6
+.RS 4n
+The address associated with this logical interface is available to
+\fBin.mpathd\fR for probe-based failure detection of the associated physical IP
+interface.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBNOLOCAL\fR\fR
+.ad
+.sp .6
+.RS 4n
+The interface has no address, just an on-link subnet.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBNONUD\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBNUD\fR is disabled on this interface. \fBNUD\fR (neighbor unreachability
+detection) is used by a node to track the reachability state of its neighbors,
+to which the node actively sends packets, and to perform any recovery if a
+neighbor is detected to be unreachable. This flag is specific to IPv6.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBNORTEXCH\fR\fR
+.ad
+.sp .6
+.RS 4n
+The interface does not exchange routing information. For RIP-2, routing packets
+are not sent over this interface. Additionally, messages that appear to come
+over this interface receive no response. The subnet or address of this
+interface is not included in advertisements over other interfaces to other
+routers.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBNOXMIT\fR\fR
+.ad
+.sp .6
+.RS 4n
+Indicates that the address does not transmit packets. RIP-2 also does not
+advertise this address.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBOFFLINE\fR\fR
+.ad
+.sp .6
+.RS 4n
+The interface is offline and thus cannot send or receive IP data traffic. This
+is only set on IP interfaces in an IPMP group. See \fBif_mpadm\fR(8) and
+\fBcfgadm\fR(8).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPOINTOPOINT\fR\fR
+.ad
+.sp .6
+.RS 4n
+Indicates that the address is a point-to-point link. This flag and
+\fBBROADCAST\fR are mutually exclusive
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPREFERRED\fR\fR
+.ad
+.sp .6
+.RS 4n
+This address is a preferred IPv6 source address. This address will be used as a
+source address for IPv6 communication with all IPv6 destinations, unless
+another address on the system is of more appropriate scope. The
+\fBDEPRECATED\fR flag takes precedence over the \fBPREFERRED\fR flag.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRIVATE\fR\fR
+.ad
+.sp .6
+.RS 4n
+Indicates that this address is not advertised. For RIP-2, this interface is
+used to send advertisements. However, neither the subnet nor this address are
+included in advertisements to other routers.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPROMISC\fR\fR
+.ad
+.sp .6
+.RS 4n
+A read-only flag indicating that an interface is in promiscuous mode. All
+addresses associated with an interface in promiscuous mode will display (in
+response to \fBifconfig\fR \fB-a\fR, for example) the \fBPROMISC\fR flag.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBROUTER\fR\fR
+.ad
+.sp .6
+.RS 4n
+Indicates that IP packets can be forwarded to and from the interface.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBRUNNING\fR\fR
+.ad
+.sp .6
+.RS 4n
+Indicates that the required resources for an interface are allocated. For some
+interfaces this also indicates that the link is up. For IPMP IP interfaces,
+\fBRUNNING\fR is set as long as one IP interface in the group is active.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSTANDBY\fR\fR
+.ad
+.sp .6
+.RS 4n
+Indicates that this physical interface will not be used for data traffic unless
+another interface in the IPMP group becomes unusable. The \fBINACTIVE\fR and
+\fBFAILED\fR flags indicate whether it is actively being used.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBTEMPORARY\fR\fR
+.ad
+.sp .6
+.RS 4n
+Indicates that this is a temporary IPv6 address as defined in RFC 3041.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBUNNUMBERED\fR\fR
+.ad
+.sp .6
+.RS 4n
+This flag is set when the local IP address on the link matches the local
+address of some other link in the system
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBUP\fR\fR
+.ad
+.sp .6
+.RS 4n
+Indicates that the logical interface (and the associated physical interface) is
+up. The IP module will accept packets destined to \fBUP\fR addresses (unless
+the address is zero), along with any associated multicast and broadcast IP
+addresses. Similarly, the IP module will allow packets to be sent with an
+\fBUP\fR address as a source address.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBVIRTUAL\fR\fR
+.ad
+.sp .6
+.RS 4n
+Indicates that the physical interface has no underlying hardware. It is not
+possible to transmit or receive packets through a virtual interface. These
+interfaces are useful for configuring local addresses that can be used on
+multiple interfaces. (See also the \fBusesrc\fR option.)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBXRESOLV\fR\fR
+.ad
+.sp .6
+.RS 4n
+Indicates that the interface uses an IPv6 external resolver.
+.RE
+
+.SH LOGICAL INTERFACES
+Solaris \fBTCP/IP\fR allows multiple logical interfaces to be associated with a
+physical network interface. This allows a single machine to be assigned
+multiple \fBIP\fR addresses, even though it may have only one network
+interface. Physical network interfaces have names of the form \fIdriver-name
+physical-unit-number\fR, while logical interfaces have names of the form
+\fIdriver-name physical-unit-number\fR\fB:\fR\fIlogical-unit-number\fR. A
+physical interface is configured into the system using the \fBplumb\fR command.
+For example:
+.sp
+.in +2
+.nf
+example% \fBifconfig eri0 plumb\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Once a physical interface has been "plumbed", logical interfaces associated
+with the physical interface can be configured by separate \fB-plumb\fR or
+\fB-addif\fR options to the \fBifconfig\fR command.
+.sp
+.in +2
+.nf
+example% \fBifconfig eri0:1 plumb\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+allocates a specific logical interface associated with the physical interface
+\fBeri0\fR. The command
+.sp
+.in +2
+.nf
+example% \fBifconfig eri0 addif 192.168.200.1/24 up\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+allocates the next available logical unit number on the \fBeri0\fR physical
+interface and assigns an \fIaddress\fR and \fIprefix_length\fR.
+.sp
+.LP
+A logical interface can be configured with parameters (\fIaddress\fR,
+\fIprefix_length\fR, and so on) different from the physical
+interface with which it is associated. Logical interfaces that are associated
+with the same physical interface can be given different parameters as well.
+Each logical interface must be associated with an existing and "up" physical
+interface. So, for example, the logical interface \fBeri0:1\fR can only be
+configured after the physical interface \fBeri0\fR has been plumbed.
+.sp
+.LP
+To delete a logical interface, use the \fBunplumb\fR or \fBremoveif\fR options.
+For example,
+.sp
+.in +2
+.nf
+example% \fBifconfig eri0:1 down unplumb\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+will delete the logical interface \fBeri0:1\fR.
+.SH IP MULTIPATHING GROUPS
+Physical interfaces that share the same link-layer broadcast domain \fBmust\fR
+be collected into a single IP Multipathing (IPMP) group using the \fBgroup\fR
+subcommand. Each IPMP group has an associated IPMP IP interface, which can
+either be explicitly created (the preferred method) by using the \fBipmp\fR
+subcommand or implicitly created by \fBifconfig\fR in response to placing an IP
+interface into a new IPMP group. Implicitly-created IPMP interfaces will be
+named \fBipmp\fR\fIN\fR where \fIN\fR is the lowest integer that does not
+conflict with an existing IP interface name or IPMP group name.
+.sp
+.LP
+Each IPMP IP interface is created with a matching IPMP group name, though it
+can be changed using the \fBgroup\fR subcommand. Each IPMP IP interface hosts a
+set of highly-available IP addresses. These addresses will remain reachable so
+long as at least one interface in the group is active, where "active" is
+defined as having at least one \fBUP\fR address and having \fBINACTIVE\fR,
+\fBFAILED\fR, and \fBOFFLINE\fR clear. IP addresses hosted on the IPMP IP
+interface may either be configured statically or configured through DHCP by
+means of the \fBdhcp\fR subcommand.
+.sp
+.LP
+Interfaces assigned to the same IPMP group are treated as equivalent and
+monitored for failure by \fBin.mpathd\fR. Provided that active interfaces in
+the group remain, IP interface failures (and any subsequent repairs) are
+handled transparently to sockets-based applications. IPMP is also integrated
+with the Dynamic Reconfiguration framework (see \fBcfgadm\fR(8)), which
+enables network adapters to be replaced in a way that is invisible to
+sockets-based applications.
+.sp
+.LP
+The IP module automatically load-spreads all outbound traffic across all active
+interfaces in an IPMP group. Similarly, all \fBUP\fR addresses hosted on the
+IPMP IP interface will be distributed across the active interfaces to promote
+inbound load-spreading. The \fBipmpstat\fR(8) utility allows many aspects of
+the IPMP subsystem to be observed, including the current binding of IP data
+addresses to IP interfaces.
+.sp
+.LP
+When an interface is placed into an IPMP group, any \fBUP\fR logical interfaces
+are "migrated" to the IPMP IP interface for use by the group, unless:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+the logical interface is marked \fBNOFAILOVER\fR;
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+the logical interface hosts an IPv6 link-local address;
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+the logical interface hosts an IPv4 0.0.0.0 address.
+.RE
+.sp
+.LP
+Likewise, once an interface is in a group, if changes are made to a logical
+interface such that it is \fBUP\fR and not exempted by one of the conditions
+above, it will also migrate to the associated IPMP IP interface. Logical
+interfaces never migrate back, even if the physical interface that contributed
+the address is removed from the group.
+.sp
+.LP
+Each interface placed into an IPMP group may be optionally configured with a
+"test" address that \fBin.mpathd\fR will use for probe-based failure detection;
+see \fBin.mpathd\fR(8). These addresses must be marked \fBNOFAILOVER\fR (using
+the \fB-failover\fR subcommand) prior to being marked \fBUP\fR. Test addresses
+may also be acquired through DHCP by means of the \fBdhcp\fR subcommand.
+.sp
+.LP
+For more background on IPMP, please see the IPMP-related chapters of the
+\fISystem Administration Guide: Network Interfaces and Network
+Virtualization\fR.
+.SH CONFIGURING IPV6 INTERFACES
+When an IPv6 physical interface is plumbed and configured "up" with
+\fBifconfig\fR, it is automatically assigned an IPv6 link-local address for
+which the last 64 bits are calculated from the \fBMAC\fR address of the
+interface.
+.sp
+.in +2
+.nf
+example% \fBifconfig eri0 inet6 plumb up\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The following example shows that the link-local address has a prefix of
+\fBfe80::/10\fR.
+.sp
+.in +2
+.nf
+example% \fBifconfig eri0 inet6\fR
+ce0: flags=2000841<UP,RUNNING,MULTICAST,IPv6>
+ mtu 1500 index 2 \
+ inet6 fe80::a00:20ff:fe8e:f3ad/10
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Link-local addresses are only used for communication on the local subnet and
+are not visible to other subnets.
+.sp
+.LP
+If an advertising IPv6 router exists on the link advertising prefixes, then the
+newly plumbed IPv6 interface will autoconfigure logical interface(s) depending
+on the prefix advertisements. For example, for the prefix advertisement
+\fB2001:0db8:3c4d:0:55::/64\fR, the autoconfigured interface will look like:
+.sp
+.in +2
+.nf
+eri0:2: flags=2080841<UP,RUNNING,MULTICAST,ADDRCONF,IPv6>
+ mtu 1500 index 2
+ inet6 2001:0db8:3c4d:55:a00:20ff:fe8e:f3ad/64
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Even if there are no prefix advertisements on the link, you can still assign
+global addresses manually, for example:
+.sp
+.in +2
+.nf
+example% \fBifconfig eri0 inet6 addif \e
+2001:0db8:3c4d:55:a00:20ff:fe8e:f3ad/64 up\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+To configure boot-time defaults for the interface \fBeri0\fR, place the
+following entry in the \fB/etc/hostname6.eri0\fR file:
+.sp
+.in +2
+.nf
+addif 2001:0db8:3c4d:55:a00:20ff:fe8e:f3ad/64 up
+.fi
+.in -2
+
+.SS "Configuring IP-over-IP Tunnel Interfaces"
+An IP tunnel is conceptually comprised of two parts: a virtual link between two
+or more IP nodes, and an IP interface above this link which allows the system
+to transmit and receive IP packets encapsulated by the underlying link.
+.sp
+.LP
+The \fBdladm\fR(8) command is used to configure tunnel links, and
+\fBifconfig\fR is used to configure IP interfaces over those tunnel links. An
+IPv4-over-IPv4 tunnel is created by plumbing an IPv4 interface over an IPv4
+tunnel link. An IPv6-over-IPv4 tunnel is created by plumbing an IPv6 interface
+over an IPv6 tunnel link, and so forth.
+.sp
+.LP
+When IPv6 interfaces are plumbed over IP tunnel links, their IPv6 addresses are
+automatically set. For IPv4 and IPv6 tunnels, source and destination link-local
+addresses of the form \fBfe80::\fR\fIinterface-id\fR are configured. For IPv4
+tunnels, the \fIinterface-id\fR is the IPv4 tunnel source or destination
+address. For IPv6 tunnels, the \fIinterface-id\fR is the last 64 bits of the
+IPv6 tunnel source or destination address. For example, for an IPv4 tunnel
+between 10.1.2.3 and 10.4.5.6, the IPv6 link-local source and destination
+addresses of the IPv6 interface would be \fBfe80::a01:203\fR and
+\fBfe80::a04:506\fR. For an IPv6 tunnel between \fB2000::1234:abcd\fR and
+\fB3000::5678:abcd\fR, the IPv6 link-local source and destination addresses of
+the interface would be \fBfe80::1234:abcd\fR and \fBfe80::5678:abcd\fR. These
+default link-local addresses can be overridden by specifying the addresses
+explicitly, as with any other point-to-point interface.
+.sp
+.LP
+For 6to4 tunnels, a 6to4 global address of the form \fB2002:\fItsrc\fR::1/16\fR
+is configured. The \fItsrc\fR portion is the tunnel source IPv4 address. The
+prefix length of the 6to4 interface is automatically set to 16, as all 6to4
+packets (destinations in the \fB2002::/16\fR range) are forwarded to the 6to4
+tunnel interface. For example, for a 6to4 link with a tunnel source of
+75.1.2.3, the IPv6 interface would have an address of
+\fB2002:4b01:203::1/16\fR.
+.sp
+.LP
+Additional IPv6 addresses can be added using the \fBaddif\fR option or by
+plumbing additional logical interfaces.
+.sp
+.LP
+For backward compatibility, the plumbing of tunnel IP interfaces with special
+names will implicitly result in the creation of tunnel links without invoking
+\fBdladm create-iptun\fR. These tunnel names are:
+.sp
+.ne 2
+.na
+\fB\fBip.tun\fR\fIN\fR\fR
+.ad
+.RS 15n
+An IPv4 tunnel
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBip6.tun\fR\fIN\fR\fR
+.ad
+.RS 15n
+An IPv6 tunnel
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBip.6to4tun\fR\fIN\fR\fR
+.ad
+.RS 15n
+A 6to4 tunnel
+.RE
+
+.sp
+.LP
+These tunnels are "implicit tunnels", denoted with the \fBi\fR flag in \fBdladm
+show-iptun\fR output. The tunnel links over which these special IP interfaces
+are plumbed are automatically created, and they are automatically deleted when
+the last reference is released (that is, when the last IP interface is
+unplumbed).
+.sp
+.LP
+The \fBtsrc\fR, \fBtdst\fR, \fBencaplim\fR, and \fBhoplimit\fR options to
+\fBifconfig\fR are obsolete and maintained only for backward compatibility.
+They are equivalent to their \fBdladm\fR(8) counterparts.
+.SS "Display of Tunnel Security Settings"
+The \fBifconfig\fR output for IP tunnel interfaces indicates whether IPsec
+policy is configured for the underlying IP tunnel link. For example, a line of
+the following form will be displayed if IPsec policy is present:
+.sp
+.in +2
+.nf
+tunnel security settings --> use 'ipsecconf -ln -i ip.tun1'
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+If you do net set security policy, using either \fBifconfig\fR or
+\fBipsecconf\fR(8), there is no tunnel security setting displayed.
+.SH EXAMPLES
+\fBExample 1 \fRUsing the \fBifconfig\fR Command
+.sp
+.LP
+If your workstation is not attached to an Ethernet, the network interface, for
+example, \fBeri0\fR, should be marked "down" as follows:
+
+.sp
+.in +2
+.nf
+example% \fBifconfig eri0 down\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRPrinting Addressing Information
+.sp
+.LP
+To print out the addressing information for each interface, use the following
+command:
+
+.sp
+.in +2
+.nf
+example% \fBifconfig -a\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRResetting the Broadcast Address
+.sp
+.LP
+To reset each interface's broadcast address after the netmasks have been
+correctly set, use the next command:
+
+.sp
+.in +2
+.nf
+example% \fBifconfig -a broadcast +\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 4 \fRChanging the Ethernet Address
+.sp
+.LP
+To change the Ethernet address for interface \fBce0\fR, use the following
+command:
+
+.sp
+.in +2
+.nf
+example% \fBifconfig ce0 ether aa:1:2:3:4:5\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 5 \fRConfiguring an IP-in-IP Tunnel
+.sp
+.LP
+To configure an IP-in-IP tunnel, first create an IP tunnel link (\fBtunsrc\fR
+and \fBtundst\fR are hostnames with corresponding IPv4 entries in
+\fB/etc/hosts\fR):
+
+.sp
+.in +2
+.nf
+example% \fBdladm create-iptun -T ipv4 -s tunsrc -d tundst tun0\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Then plumb a point-to-point interface, supplying the source and destination
+addresses (\fBmysrc\fR and \fBthedst\fR are hostnames with corresponding IPv4
+entries in \fB/etc/hosts\fR):
+
+.sp
+.in +2
+.nf
+example% \fBifconfig tun0 plumb mysrc thedst up\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Use \fBipsecconf\fR(8), as described above, to configure tunnel security
+properties.
+
+.sp
+.LP
+Configuring IPv6 tunnels is done by using a tunnel type of \fBipv6\fR with
+\fBcreate-iptun\fR. IPv6 interfaces can also be plumbed over either type of
+tunnel.
+
+.LP
+\fBExample 6 \fRConfiguring 6to4 Tunnels
+.sp
+.LP
+To configure 6to4 tunnels, first create a 6to4 tunnel link (\fBmyv4addr\fR is a
+hostname with a corresponding IPv4 entry in \fB/etc/hosts\fR):
+
+.sp
+.in +2
+.nf
+example% \fBdladm create-iptun -T 6to4 -s myv4addr my6to4tun0\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Then an IPv6 interface is plumbed over this link:
+
+.sp
+.in +2
+.nf
+example% \fBifconfig my6to4tun0 inet6 plumb up\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The IPv6 address of the interface is automatically set as described above.
+
+.LP
+\fBExample 7 \fRConfiguring IP Forwarding on an Interface
+.sp
+.LP
+To enable IP forwarding on a single interface, use the following command:
+
+.sp
+.in +2
+.nf
+example% \fBifconfig eri0 router\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+To disable IP forwarding on a single interface, use the following command:
+
+.sp
+.in +2
+.nf
+example% \fBifconfig eri0 -router\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 8 \fRConfiguring Source Address Selection Using a Virtual Interface
+.sp
+.LP
+The following command configures source address selection such that every
+packet that is locally generated with no bound source address and going out on
+\fBqfe2\fR prefers a source address hosted on \fBvni0\fR.
+
+.sp
+.in +2
+.nf
+example% \fBifconfig qfe2 usesrc vni0\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The \fBifconfig\fR \fB-a\fR output for the \fBqfe2\fR and \fBvni0\fR interfaces
+displays as follows:
+
+.sp
+.in +2
+.nf
+qfe2: flags=1100843<UP,BROADCAST,RUNNING,MULTICAST,ROUTER,IPv4> mtu
+ 1500 index 4
+ usesrc vni0
+ inet 1.2.3.4 netmask ffffff00 broadcast 1.2.3.255
+ ether 0:3:ba:17:4b:e1
+vni0: flags=20011100c1<UP,RUNNING,NOARP,NOXMIT,ROUTER,IPv4,VIRTUAL>
+ mtu 0 index 5
+ srcof qfe2
+ inet 3.4.5.6 netmask ffffffff
+.fi
+.in -2
+
+.sp
+.LP
+Observe, above, the \fBusesrc\fR and \fBsrcof\fR keywords in the \fBifconfig\fR
+output. These keywords also appear on the logical instances of the physical
+interface, even though this is a per-physical interface parameter. There is no
+\fBsrcof\fR keyword in \fBifconfig\fR for configuring interfaces. This
+information is determined automatically from the set of interfaces that have
+\fBusesrc\fR set on them.
+
+.sp
+.LP
+The following command, using the \fBnone\fR keyword, undoes the effect of the
+preceding \fBifconfig\fR \fBusesrc\fR command.
+
+.sp
+.in +2
+.nf
+example% \fBifconfig qfe2 usesrc none\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Following this command, \fBifconfig\fR \fB-a\fR output displays as follows:
+
+.sp
+.in +2
+.nf
+qfe2: flags=1100843<UP,BROADCAST,RUNNING,MULTICAST,ROUTER,IPv4> mtu
+ 1500 index 4
+ inet 1.2.3.4 netmask ffffff00 broadcast 1.2.3.255
+ ether 0:3:ba:17:4b:e1
+vni0: flags=20011100c1<UP,RUNNING,NOARP,NOXMIT,ROUTER,IPv4,VIRTUAL>
+ mtu 0 index 5
+ inet 3.4.5.6 netmask ffffffff
+.fi
+.in -2
+
+.sp
+.LP
+Note the absence of the \fBusesrc\fR and \fBsrcof\fR keywords in the output
+above.
+
+.LP
+\fBExample 9 \fRConfiguring Source Address Selection for an IPv6 Address
+.sp
+.LP
+The following command configures source address selection for an IPv6 address,
+selecting a source address hosted on \fBvni0\fR.
+
+.sp
+.in +2
+.nf
+example% \fBifconfig qfe1 inet6 usesrc vni0\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Following this command, \fBifconfig\fR \fB-a\fR output displays as follows:
+
+.sp
+.in +2
+.nf
+qfe1: flags=2000841<UP,RUNNING,MULTICAST,IPv6> mtu 1500 index 3
+ usesrc vni0
+ inet6 fe80::203:baff:fe17:4be0/10
+ ether 0:3:ba:17:4b:e0
+vni0: flags=2002210041<UP,RUNNING,NOXMIT,NONUD,IPv6,VIRTUAL> mtu 0
+ index 5
+ srcof qfe1
+ inet6 fe80::203:baff:fe17:4444/128
+vni0:1: flags=2002210040<RUNNING,NOXMIT,NONUD,IPv6,VIRTUAL> mtu 0
+ index 5
+ srcof qfe1
+ inet6 fec0::203:baff:fe17:4444/128
+vni0:2: flags=2002210040<RUNNING,NOXMIT,NONUD,IPv6,VIRTUAL> mtu 0
+ index 5
+ srcof qfe1
+ inet6 2000::203:baff:fe17:4444/128
+.fi
+.in -2
+
+.sp
+.LP
+Depending on the scope of the destination of the packet going out on
+\fBqfe1\fR, the appropriately scoped source address is selected from \fBvni0\fR
+and its aliases.
+
+.LP
+\fBExample 10 \fRUsing Source Address Selection with Shared-IP Zones
+.sp
+.LP
+The following is an example of how the \fBusesrc\fR feature can be used with
+the \fBzones\fR(7) facility in Solaris. The following commands are invoked in
+the global zone:
+
+.sp
+.in +2
+.nf
+example% \fBifconfig hme0 usesrc vni0\fR
+example% \fBifconfig eri0 usesrc vni0\fR
+example% i\fBfconfig qfe0 usesrc vni0\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Following the preceding commands, the \fBifconfig\fR \fB-a\fR output for the
+virtual interfaces would display as:
+
+.sp
+.in +2
+.nf
+vni0: flags=20011100c1<UP,RUNNING,NOARP,NOXMIT,ROUTER,IPv4,VIRTUAL>
+ mtu 0 index 23
+ srcof hme0 eri0 qfe0
+ inet 10.0.0.1 netmask ffffffff
+vni0:1:
+ flags=20011100c1<UP,RUNNING,NOARP,NOXMIT,ROUTER,IPv4,VIRTUAL> mtu 0
+ index 23
+ zone test1
+ srcof hme0 eri0 qfe0
+ inet 10.0.0.2 netmask ffffffff
+vni0:2:
+ flags=20011100c1<UP,RUNNING,NOARP,NOXMIT,ROUTER,IPv4,VIRTUAL> mtu 0
+ index 23
+ zone test2
+ srcof hme0 eri0 qfe0
+ inet 10.0.0.3 netmask ffffffff
+vni0:3:
+ flags=20011100c1<UP,RUNNING,NOARP,NOXMIT,ROUTER,IPv4,VIRTUAL> mtu 0
+ index 23
+ zone test3
+ srcof hme0 eri0 qfe0
+ inet 10.0.0.4 netmask ffffffff
+.fi
+.in -2
+
+.sp
+.LP
+There is one virtual interface alias per zone (\fBtest1\fR, \fBtest2\fR, and
+\fBtest3\fR). A source address from the virtual interface alias in the same
+zone is selected. The virtual interface aliases were created using
+\fBzonecfg\fR(8) as follows:
+
+.sp
+.in +2
+.nf
+example% \fBzonecfg -z test1\fR
+zonecfg:test1> \fBadd net\fR
+zonecfg:test1:net> \fBset physical=vni0\fR
+zonecfg:test1:net> \fBset address=10.0.0.2\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The \fBtest2\fR and \fBtest3\fR zone interfaces and addresses are created in
+the same way.
+
+.LP
+\fBExample 11 \fRTurning Off DHCPv6
+.sp
+.LP
+The following example shows how to disable automatic use of DHCPv6 on all
+interfaces, and immediately shut down DHCPv6 on the interface named \fBhme0\fR.
+See \fBin.ndpd\fR(8) and \fBndpd.conf\fR(5) for more information on the
+automatic DHCPv6 configuration mechanism.
+
+.sp
+.in +2
+.nf
+example% \fBecho ifdefault StatefulAddrConf false >> /etc/inet/ndpd.conf\fR
+example% \fBpkill -HUP -x in.ndpd\fR
+example% \fBifconfig hme0 dhcp release\fR
+.fi
+.in -2
+.sp
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/etc/netmasks\fR\fR
+.ad
+.sp .6
+.RS 4n
+Netmask data.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/default/inet_type\fR\fR
+.ad
+.sp .6
+.RS 4n
+Default Internet protocol type.
+.RE
+
+.SH ATTRIBUTES
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+T{
+Interface Stability for command-line options
+T} Committed
+_
+Interface Stability for command output Uncommitted
+.TE
+
+.SH SEE ALSO
+.BR dhcpinfo (1),
+.BR gethostbyname (3NSL),
+.BR ethers (3SOCKET),
+.BR getnetbyname (3SOCKET),
+.BR arp (4P),
+.BR ipsecah (4P),
+.BR ipsecesp (4P),
+.BR hosts (5),
+.BR inet_type (5),
+.BR ndpd.conf (5),
+.BR netmasks (5),
+.BR networks (5),
+.BR nsswitch.conf (5),
+.BR attributes (7),
+.BR privileges (7),
+.BR zones (7),
+.BR cfgadm (8),
+.BR dhcpagent (8),
+.BR dladm (8),
+.BR if_mpadm (8),
+.BR in.mpathd (8),
+.BR in.ndpd (8),
+.BR in.routed (8),
+.BR ipmpstat (8),
+.BR ipsecconf (8),
+.BR ndd (8),
+.BR netstat (8),
+.BR zoneadm (8),
+.BR zonecfg (8)
+.sp
+.LP
+\fISystem Administration Guide: IP Services\fR
+.SH DIAGNOSTICS
+\fBifconfig\fR sends messages that indicate if:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+the specified interface does not exist
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+the requested address is unknown
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+the user is not privileged and tried to alter an interface's configuration
+.RE
+.SH NOTES
+Do not select the names \fBbroadcast\fR, \fBdown\fR, \fBprivate\fR,
+\fBtrailers\fR, \fBup\fR or other possible option names when you choose host
+names. If you choose any one of these names as host names, it can cause unusual
+problems that are extremely difficult to diagnose.
diff --git a/usr/src/man/man8/ifparse.8 b/usr/src/man/man8/ifparse.8
new file mode 100644
index 0000000000..c55209655a
--- /dev/null
+++ b/usr/src/man/man8/ifparse.8
@@ -0,0 +1,181 @@
+'\" te
+.\" Copyright (C) 2001, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH IFPARSE 8 "May 9, 2001"
+.SH NAME
+ifparse \- parse \fBifconfig\fR command line
+.SH SYNOPSIS
+.LP
+.nf
+\fB/sbin/ifparse\fR [\fB-fs\fR] \fIaddr_family\fR \fIcommands\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+Use the \fBifparse\fR command to parse the \fBifconfig\fR(8) command line
+options and output substrings, one per line, as appropriate. If no options are
+specified, \fBifparse\fR returns the entire \fBifconfig\fR command line as a
+series of substrings, one per line.
+.SH OPTIONS
+.sp
+.LP
+The \fBifparse\fR command supports the following options:
+.sp
+.ne 2
+.na
+\fB\fB-f\fR\fR
+.ad
+.RS 6n
+Lists only substrings of the \fBifconfig\fR command line that are relevant to
+IP network multipath failover
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR\fR
+.ad
+.RS 6n
+ Lists only substrings of the \fBifconfig\fR command line that are not relevant
+to IP network multipath failover
+.RE
+
+.SH OPERANDS
+.sp
+.LP
+The \fBifparse\fR command \fBdoes not\fR support the \fIinterface\fR operand of
+the \fBifconfig\fR command.
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRParsing Command Line Options Relevant to Failover
+.sp
+.LP
+The following example shows the use of the \fBifparse\fR command to parse the
+command line options relevant to IP network multipath failover:
+
+.sp
+.in +2
+.nf
+example# \fBifparse -f inet 1.2.3.4 up group one addif 1.2.3.5 -failover up\fR
+set 1.2.3.4 up
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRParsing Command Line Options That Are Not Relevant to Failover
+.sp
+.LP
+The following example shows the use of the \fBifparse\fR command to parse the
+command line options that are not relevant to IP network multipath failover:
+
+.sp
+.in +2
+.nf
+example# \fBifparse -s inet 1.2.3.4 up group one addif 1.2.3.5 -failover up\fR
+group one
+addif 1.2.3.5 -failover up
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRParsing the Command Line For All Options
+.sp
+.LP
+The following example shows the use of the \fBifparse\fR command to parse the
+command line for all \fBifconfig\fR options:
+
+.sp
+.in +2
+.nf
+example# \fBifparse inet 1.2.3.4 up group one addif 1.2.3.5 -failover up\fR
+group one
+set 1.2.3.4 up
+addif 1.2.3.5 -failover up
+.fi
+.in -2
+.sp
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Stability Level Obsolete
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7),
+.BR ifconfig (8)
+.SH DIAGNOSTICS
+.sp
+.LP
+usage: \fB-fs\fR <addr_family> <commands>
+.RS +4
+\fBDescription: \fR
+.sp
+.LP
+This message indicates an invalid command line.
+.RE
+
+.sp
+.LP
+\fBifparse\fR: Not enough space
+.RS +4
+\fBDescription: \fR
+.sp
+.LP
+This message indicates insufficient memory.
+.RE
+
+.sp
+.LP
+\fBifparse\fR: dhcp not supported for inet6
+.RS +4
+\fBDescription: \fR
+.sp
+.LP
+DHCP operations are not supported for the \fBinet6\fR address family.
+.RE
+
+.sp
+.LP
+\fBifparse\fR: Operation <operation> not supported for <addr_family>
+.RS +4
+\fBDescription: \fR
+.sp
+.LP
+Most operations cannot be used with all address families. For example, the
+\fBbroadcast\fR operation is not supported on the \fBinet6\fR address family.
+.RE
+
+.sp
+.LP
+\fBifparse\fR: no argument for <operation>
+.RS +4
+\fBDescription: \fR
+.sp
+.LP
+Some operations, for example \fBbroadcast\fR, require an argument.
+.RE
+
+.SH NOTES
+.sp
+.LP
+The \fBifparse\fR command is classified as an obsolete interface. It will
+likely be removed in a future release. You should not develop applications that
+depend upon this interface.
diff --git a/usr/src/man/man8/ikeadm.8 b/usr/src/man/man8/ikeadm.8
new file mode 100644
index 0000000000..02a3d1aef4
--- /dev/null
+++ b/usr/src/man/man8/ikeadm.8
@@ -0,0 +1,838 @@
+'\" te
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH IKEADM 8 "Jan 27, 2009"
+.SH NAME
+ikeadm \- manipulate Internet Key Exchange (IKE) parameters and state
+.SH SYNOPSIS
+.LP
+.nf
+\fBikeadm\fR [\fB-np\fR]
+.fi
+
+.LP
+.nf
+\fBikeadm\fR [\fB-np\fR] get [debug | priv | stats | defaults]
+.fi
+
+.LP
+.nf
+\fBikeadm\fR [\fB-np\fR] set [debug | priv] [level] [file]
+.fi
+
+.LP
+.nf
+\fBikeadm\fR [\fB-np\fR] [get | del] [p1 | rule | preshared] [id]
+.fi
+
+.LP
+.nf
+\fBikeadm\fR [\fB-np\fR] add [rule | preshared] { \fIdescription\fR }
+.fi
+
+.LP
+.nf
+ikeadm [\fB-np\fR] token [login | logout] \fIPKCS#11_Token_Object\fR
+.fi
+
+.LP
+.nf
+\fBikeadm\fR [\fB-np\fR] [read | write] [rule | preshared | certcache] \fIfile\fR
+.fi
+
+.LP
+.nf
+\fBikeadm\fR [\fB-np\fR] [dump | pls | rule | preshared]
+.fi
+
+.LP
+.nf
+\fBikeadm\fR [\fB-np\fR] flush [p1 | certcache]
+.fi
+
+.LP
+.nf
+\fBikeadm\fR help
+ [get | set | add | del | read | write | dump | flush | token]
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBikeadm\fR utility retrieves information from and manipulates the
+configuration of the Internet Key Exchange (\fBIKE\fR) protocol daemon,
+\fBin.iked\fR(8).
+.sp
+.LP
+\fBikeadm\fR supports a set of operations, which may be performed on one or
+more of the supported object types. When invoked without arguments,
+\fBikeadm\fR enters interactive mode which prints a prompt to the standard
+output and accepts commands from the standard input until the end-of-file is
+reached.
+.sp
+.LP
+Because \fBikeadm\fR manipulates sensitive keying information, you must be
+superuser to use this command. Additionally, some of the commands available
+require that the daemon be running in a privileged mode, which is established
+when the daemon is started.
+.sp
+.LP
+For details on how to use this command securely see .
+.SH OPTIONS
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-n\fR\fR
+.ad
+.sp .6
+.RS 4n
+Prevent attempts to print host and network names symbolically when reporting
+actions. This is useful, for example, when all name servers are down or are
+otherwise unreachable.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR\fR
+.ad
+.sp .6
+.RS 4n
+Paranoid. Do not print any keying material, even if saving Security
+Associations. Instead of an actual hexadecimal digit, print an \fBX\fR when
+this flag is turned on.
+.RE
+
+.SH USAGE
+.SS "Commands"
+.LP
+The following commands are supported:
+.sp
+.ne 2
+.na
+\fB\fBadd\fR\fR
+.ad
+.sp .6
+.RS 4n
+Add the specified object. This option can be used to add a new policy rule or a
+new preshared key to the current (running) in.iked configuration. When adding a
+new preshared key, the command cannot be invoked from the command line, as it
+will contain keying material. The rule or key being added is specified using
+appropriate id-value pairs as described in the \fBID FORMATS\fR section.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdel\fR\fR
+.ad
+.sp .6
+.RS 4n
+Delete a specific object or objects from \fBin.iked\fR's current configuration.
+This operation is available for \fBIKE\fR (Phase 1) \fBSA\fRs, policy rules,
+and preshared keys. The object to be deleted is specified as described in the
+\fBId Formats\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdump\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display all objects of the specified type known to \fBin.iked\fR. This option
+can be used to display all Phase 1 \fBSA\fRs, policy rules, preshared keys, or
+the certificate cache. A large amount of output may be generated by this
+command.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBflush\fR\fR
+.ad
+.sp .6
+.RS 4n
+Remove all \fBIKE\fR (Phase 1) \fBSA\fRs or cached certificates from
+\fBin.iked\fR.
+.sp
+Note that flushing the \fBcertcache\fR will also (as a side-effect) update IKE
+with any new certificates added or removed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBget\fR\fR
+.ad
+.sp .6
+.RS 4n
+Lookup and display the specified object. May be used to view the current debug
+or privilege level, global statistics and default values for the daemon, or a
+specific \fBIKE\fR (Phase 1) \fBSA\fR, policy rule, or preshared key. The
+latter three object types require that identifying information be passed in;
+the appropriate specification for each object type is described below.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBhelp\fR\fR
+.ad
+.sp .6
+.RS 4n
+Print a brief summary of commands, or, when followed by a command, prints
+information about that command.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBread\fR\fR
+.ad
+.sp .6
+.RS 4n
+Update the current \fBin.iked\fR configuration by reading the policy rules or
+preshared keys from either the default location or from the file specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBset\fR\fR
+.ad
+.sp .6
+.RS 4n
+Adjust the current debug or privilege level. If the debug level is being
+modified, an output file may optionally be specified; the output file
+\fBmust\fR be specified if the daemon is running in the background and is not
+currently printing to a file. When changing the privilege level, adjustments
+may only be made to lower the access level; it cannot be increased using
+ikeadm.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBwrite\fR\fR
+.ad
+.sp .6
+.RS 4n
+Write the current \fBin.iked\fR policy rule set or preshared key set to the
+specified file. A destination file must be specified. This command should not
+be used to overwrite the existing configuration files.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBtoken\fR\fR
+.ad
+.sp .6
+.RS 4n
+Log into a PKCS#11 token object and grant access to keying material or log out
+and invalidate access to keying material.
+.sp
+\fBtoken\fR can be run as a normal user with the following authorizations:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBtoken\fR login: \fBsolaris.network.ipsec.ike.token.login\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBtoken\fR logout: \fBsolaris.network.ipsec.ike.token.logout\fR
+.RE
+.RE
+
+.SS "Object Types"
+.ne 2
+.na
+\fBdebug\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the daemon's debug level. This determines the amount and type of
+output provided by the daemon about its operations. The debug level is actually
+a bitmask, with individual bits enabling different types of information.
+.sp
+
+.sp
+.TS
+c c c
+l l l .
+Description Flag Nickname
+_
+Certificate management 0x0001 cert
+Key management 0x0002 key
+Operational 0x0004 op
+Phase 1 SA creation 0x0008 phase1
+Phase 2 SA creation 0x0010 phase2
+PF_KEY interface 0x0020 pfkey
+Policy management 0x0040 policy
+Proposal construction 0x0080 prop
+Door interface 0x0100 door
+Config file processing 0x0200 config
+All debug flags 0x3ff all
+.TE
+
+When specifying the debug level, either a number (decimal or hexadecimal) or a
+string of nicknames may be given. For example, \fB88\fR, \fB0x58\fR, and
+\fBphase1\fR+\fBphase2\fR+\fBpolicy\fR are all equivalent, and will turn on
+debug for \fBphase 1\fR \fBsa\fR creation, \fBphase 2 sa\fR creation, and
+policy management. A string of nicknames may also be used to remove certain
+types of information; \fBall-op\fR has the effect of turning on all debug
+\fBexcept\fR for operational messages; it is equivalent to the numbers
+\fB1019\fR or \fB0x3fb\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBpriv\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the daemon's access privilege level. The possible values are:
+.sp
+.in +2
+.nf
+Description Level Nickname
+Base level 0 base
+Access to preshared key info 1 modkeys
+Access to keying material 2 keymat
+.fi
+.in -2
+.sp
+
+By default, \fBin.iked\fR is started at the base level. A command-line option
+can be used to start the daemon at a higher level. \fBikeadm\fR can be used to
+lower the level, but it cannot be used to raise the level.
+.sp
+Either the numerical level or the nickname may be used to specify the target
+privilege level.
+.sp
+In order to get, add, delete, dump, read, or write preshared keys, the
+privilege level must at least give access to preshared key information.
+However, when viewing preshared keys (either using the get or dump command),
+the key itself will only be available if the privilege level gives access to
+keying material. This is also the case when viewing Phase 1 \fBSA\fRs.
+.RE
+
+.sp
+.ne 2
+.na
+\fBstats\fR
+.ad
+.sp .6
+.RS 4n
+Global statistics from the daemon, covering both successful and failed Phase 1
+\fBSA\fR creation.
+.sp
+Reported statistics include:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Count of current P1 \fBSA\fRs which the local entity initiated
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Count of current P1 \fBSA\fRs where the local entity was the responder
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Count of all P1 \fBSA\fRs which the local entity initiated since boot
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Count of all P1 \fBSA\fRs where the local entity was the responder since boot
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Count of all attempted \fBP1\fR \fBSA\fRs since boot, where the local entity
+was the initiator; includes failed attempts
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Count of all attempted P1 \fBSA\fRs since boot, where the local entity was the
+responder; includes failed attempts
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Count of all failed attempts to initiate a \fBP1\fR \fBSA\fR, where the failure
+occurred because the peer did not respond
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Count of all failed attempts to initiate a P1 \fBSA\fR, where the peer
+responded
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Count of all failed \fBP1\fR \fBSA\fRs where the peer was the initiator
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Whether a PKCS#11 library is in use, and if applicable, the PKCS#11 library
+that is loaded. See .
+.RE
+.RE
+
+.sp
+.ne 2
+.na
+\fBdefaults\fR
+.ad
+.sp .6
+.RS 4n
+Display default values used by the \fBin.iked\fR daemon. Some values can be
+overridden in the daemon configuration file (see \fBike.config\fR(5)); for these
+values, the token name is displayed in the \fBget defaults\fR output. The
+output will reflect where a configuration token has changed the default.
+.sp
+Default values might be ignored in the event a peer system makes a valid
+alternative proposal or they can be overridden by per-rule values established in
+\fBike.config\fR. In such instances, a \fBget defaults\fR command continues to
+display the default values, not the values used to override the defaults.
+.RE
+
+.sp
+.ne 2
+.na
+\fBp1\fR
+.ad
+.sp .6
+.RS 4n
+An \fBIKE\fR Phase 1 \fBSA\fR. A \fBp1\fR object is identified by an \fBIP\fR
+address pair or a cookie pair; identification formats are described below.
+.RE
+
+.sp
+.ne 2
+.na
+\fBrule\fR
+.ad
+.sp .6
+.RS 4n
+An \fBIKE\fR policy rule, defining the acceptable security characteristics for
+Phase 1 \fBSA\fRs between specified local and remote identities. A rule is
+identified by its label; identification formats are described below.
+.RE
+
+.sp
+.ne 2
+.na
+\fBpreshared\fR
+.ad
+.sp .6
+.RS 4n
+A preshared key, including the local and remote identification and applicable
+\fBIKE\fR mode. A preshared key is identified by an \fBIP\fR address pair or an
+identity pair; identification formats are described below.
+.RE
+
+.SS "Id Formats"
+.LP
+Commands like \fBadd\fR, \fBdel\fR, and \fBget\fR require that additional
+information be specified on the command line. In the case of the delete and get
+commands, all that is required is to minimally identify a given object; for the
+add command, the full object must be specified.
+.sp
+.LP
+Minimal identification is accomplished in most cases by a pair of values. For
+\fBIP\fR addresses, the local addr and then the remote addr are specified,
+either in dot-notation for IPv4 addresses, colon-separated hexadecimal format
+for IPv6 addresses, or a host name present in the host name database. If a host
+name is given that expands to more than one address, the requested operation
+will be performed multiple times, once for each possible combination of
+addresses.
+.sp
+.LP
+Identity pairs are made up of a local type-value pair, followed by the remote
+type-value pair. Valid types are:
+.sp
+.ne 2
+.na
+\fBprefix\fR
+.ad
+.sp .6
+.RS 4n
+An address prefix.
+.RE
+
+.sp
+.ne 2
+.na
+\fBfqdn\fR
+.ad
+.sp .6
+.RS 4n
+A fully-qualified domain name.
+.RE
+
+.sp
+.ne 2
+.na
+\fBdomain\fR
+.ad
+.sp .6
+.RS 4n
+Domain name, synonym for fqdn.
+.RE
+
+.sp
+.ne 2
+.na
+\fBuser_fqdn\fR
+.ad
+.sp .6
+.RS 4n
+User identity of the form \fIuser\fR@fqdn.
+.RE
+
+.sp
+.ne 2
+.na
+\fBmailbox\fR
+.ad
+.sp .6
+.RS 4n
+Synonym for \fBuser_fqdn\fR.
+.RE
+
+.sp
+.LP
+A cookie pair is made up of the two cookies assigned to a Phase 1 Security
+Association (\fBSA\fR) when it is created; first is the initiator's, followed
+by the responder's. A cookie is a 64-bit number.
+.sp
+.LP
+Finally, a label (which is used to identify a policy rule) is a character
+string assigned to the rule when it is created.
+.sp
+.LP
+Formatting a rule or preshared key for the add command follows the format rules
+for the in.iked configuration files. Both are made up of a series of id-value
+pairs, contained in curly braces (\fB{\fR and \fB}\fR). See \fBike.config\fR(5)
+and \fBike.preshared\fR(5) for details on the formatting of rules and preshared
+keys.
+.SH SECURITY
+.LP
+The \fBikeadm\fR command allows a privileged user to enter cryptographic keying
+information. If an adversary gains access to such information, the security of
+IPsec traffic is compromised. The following issues should be taken into account
+when using the \fBikeadm\fR command.
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Is the \fBTTY\fR going over a network (interactive mode)?
+.sp
+If it is, then the security of the keying material is the security of the
+network path for this \fBTTY\fR's traffic. Using \fBikeadm\fR over a clear-text
+telnet or rlogin session is risky. Even local windows may be vulnerable to
+attacks where a concealed program that reads window events is present.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Is the file accessed over the network or readable to the world (read/write
+commands)?
+.sp
+A network-mounted file can be sniffed by an adversary as it is being read. A
+world-readable file with keying material in it is also risky.
+.RE
+.sp
+.LP
+If your source address is a host that can be looked up over the network, and
+your naming system itself is compromised, then any names used will no longer be
+trustworthy.
+.sp
+.LP
+Security weaknesses often lie in misapplication of tools, not the tools
+themselves. It is recommended that administrators are cautious when using the
+\fBikeadm\fR command. The safest mode of operation is probably on a console, or
+other hard-connected \fBTTY\fR.
+.sp
+.LP
+For additional information regarding this subject, see the afterward by Matt
+Blaze in Bruce Schneier's \fIApplied Cryptography: Protocols, Algorithms, and
+Source Code in C.\fR
+.SH EXAMPLES
+.LP
+\fBExample 1 \fREmptying out all Phase 1 Security Associations
+.sp
+.LP
+The following command empties out all Phase 1 Security Associations:
+
+.sp
+.in +2
+.nf
+example# \fBikeadm flush p1\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRDisplaying all Phase 1 Security Associations
+.sp
+.LP
+The following command displays all Phase 1 Security Associations:
+
+.sp
+.in +2
+.nf
+example# \fBikeadm dump p1\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRDeleting a Specific Phase 1 Security Association
+.sp
+.LP
+The following command deletes the specified Phase 1 Security Associations:
+
+.sp
+.in +2
+.nf
+example# \fBikeadm del p1 local_ip remote_ip\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 4 \fRAdding a Rule From a File
+.sp
+.LP
+The following command adds a rule from a file:
+
+.sp
+.in +2
+.nf
+example# \fBikeadm add rule rule_file\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 5 \fRAdding a Preshared Key
+.sp
+.LP
+The following command adds a preshared key:
+
+.sp
+.in +2
+.nf
+example# \fBikeadm\fR
+ ikeadm> \fBadd preshared { localidtype ip localid local_ip
+ remoteidtype ip remoteid remote_ip ike_mode main
+ key 1234567890abcdef1234567890abcdef }\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 6 \fRSaving All Preshared Keys to a File
+.sp
+.LP
+The following command saves all preshared keys to a file:
+
+.sp
+.in +2
+.nf
+example# \fBikeadm write preshared target_file\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 7 \fRViewing a Particular Rule
+.sp
+.LP
+The following command views a particular rule:
+
+.sp
+.in +2
+.nf
+example# \fBikeadm get rule rule_label\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 8 \fRReading in New Rules from \fBike.config\fR
+.sp
+.LP
+The following command reads in new rules from the ike.config file:
+
+.sp
+.in +2
+.nf
+example# \fBikeadm read rules\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 9 \fRLowering the Privilege Level
+.sp
+.LP
+The following command lowers the privilege level:
+
+.sp
+.in +2
+.nf
+example# \fBikeadm set priv base\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 10 \fRViewing the Debug Level
+.sp
+.LP
+The following command shows the current debug level
+
+.sp
+.in +2
+.nf
+example# \fBikeadm get debug\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 11 \fRUsing stats to Verify Hardware Accelerator
+.sp
+.LP
+The following example shows how stats may include an optional line at the end
+to indicate if IKE is using a PKCS#11 library to accelerate public-key
+operations, if applicable.
+
+.sp
+.in +2
+.nf
+example# \fBikeadm get stats\fR
+Phase 1 SA counts:
+Current: initiator: 0 responder: 0
+Total: initiator: 21 responder: 27
+Attempted:initiator: 21 responder: 27
+Failed: initiator: 0 responder: 0
+ initiator fails include 0 time-out(s)
+PKCS#11 library linked in from /opt/SUNWconn/lib/libpkcs11.so
+example#
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 12 \fRDisplaying the Certificate Cache
+.sp
+.LP
+The following command shows the certificate cache and the status of associated
+private keys, if applicable:
+
+.sp
+.in +2
+.nf
+example# \fBikeadm dump certcache\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 13 \fRLogging into a PKCS#11 Token
+.sp
+.LP
+The following command shows logging into a PKCS#11 token object and unlocking
+private keys:
+
+.sp
+.in +2
+.nf
+example# \fBikeadm token login "Sun Metaslot"\fR
+Enter PIN for PKCS#11 token:
+ikeadm: PKCS#11 operation successful
+.fi
+.in -2
+.sp
+
+.SH EXIT STATUS
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 12n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnon-zero\fR\fR
+.ad
+.RS 12n
+An error occurred. Writes an appropriate error message to standard error.
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Not an Interface
+.TE
+
+.SH SEE ALSO
+.LP
+.BR ipsec (4P),
+.BR ike.config (5),
+.BR ike.preshared (5),
+.BR attributes (7),
+.BR in.iked (8)
+.sp
+.LP
+Schneier, Bruce, \fIApplied Cryptography: Protocols, Algorithms, and Source
+Code in C\fR, Second Edition, John Wiley & Sons, New York, NY, 1996.
+.SH NOTES
+.LP
+As \fBin.iked\fR can run only in the global zone and exclusive-IP zones, this
+command is not useful in shared-IP zones.
diff --git a/usr/src/man/man8/ikecert.8 b/usr/src/man/man8/ikecert.8
new file mode 100644
index 0000000000..7d334955e6
--- /dev/null
+++ b/usr/src/man/man8/ikecert.8
@@ -0,0 +1,1031 @@
+'\" te
+.\" Copyright (C) 2009, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
+.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH IKECERT 8 "June 20, 2021"
+.SH NAME
+ikecert \- manipulates the machine's on-filesystem public-key certificate
+databases
+.SH SYNOPSIS
+.nf
+\fBikecert\fR certlocal
+ [\fB-a\fR | \fB-e\fR | \fB-h\fR | \fB-k\fR | \fB-l\fR | \fB-r\fR | \fB-U\fR | \fB-C\fR | \fB-L\fR]
+ [[\fB-p\fR] \fB-T\fR \fIPKCS#11 token identifier\fR]
+ [\fIoption_specific_arguments\fR]...
+.fi
+
+.LP
+.nf
+\fBikecert\fR certdb [\fB-a\fR | \fB-e\fR | \fB-h\fR | \fB-l\fR | \fB-r\fR | \fB-U\fR | \fB-C\fR | \fB-L\fR]
+ [[\fB-p\fR] \fB-T\fR \fIPKCS#11 token identifier\fR]
+ [\fIoption_specific_arguments\fR]...
+.fi
+
+.LP
+.nf
+\fBikecert\fR certrldb [\fB-a\fR | \fB-e\fR | \fB-h\fR | \fB-l\fR | \fB-r\fR]
+ [\fIoption_specific_arguments\fR]...
+.fi
+
+.LP
+.nf
+\fBikecert\fR tokens
+.fi
+
+.SH DESCRIPTION
+The \fBikecert\fR command manipulates the machine's on-filesystem public-key
+certificate databases. See the "Files" section, below.
+.sp
+.LP
+\fBikecert\fR has three subcommands, one for each of the three major
+repositories, plus one for listing available hardware tokens:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBcertlocal\fR deals with the private-key repository,
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBcertdb\fR deals with the public-key repository, and:
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBcertrldb\fR deals with the certificate revocation list (\fBCRL\fR)
+repository.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBtokens\fR shows the available PKCS#11 tokens for a given PKCS#11 library.
+.RE
+.sp
+.LP
+The only supported PKCS#11 library and hardware is the Sun Cryptographic
+Accelerator 4000.
+.SH OPTIONS
+Except for \fBtokens\fR, each subcommand requires one option, possibly followed
+by one or more option-specific arguments.
+.sp
+.LP
+The \fBtokens\fR subcommand lists all available tokens in the PKCS#11 library
+specified in \fB/etc/inet/ike/config\fR.
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-a\fR\fR
+.ad
+.sp .6
+.RS 4n
+.sp
+.ne 2
+.na
+\fBcertlocal\fR
+.ad
+.sp .6
+.RS 4n
+When specified with the \fBcertlocal\fR subcommand, this option installs (adds)
+a private key into the Internet Key Exchange (\fBIKE\fR) local \fBID\fR
+database. The key data is read from standard input, and is in either
+Solaris-only format or unencrypted PKCS#8 DER format. Key format is
+automatically detected. PKCS#8 key files in PEM format and files in password
+protected, encrypted format are not recognized, but can be converted
+appropriately using tools available in OpenSSL.
+.sp
+This option cannot be used with PKCS#11 hardware objects when the corresponding
+public certificate is not already present in the \fBIKE\fR database. When
+importing both a public certificate and a private key, the public portion must
+be imported first using the \fBcertdb\fR subcommand.
+.RE
+
+.sp
+.ne 2
+.na
+\fBcertdb\fR
+.ad
+.sp .6
+.RS 4n
+When specified with the \fBcertdb\fR subcommand, this option reads a
+certificate from standard input and adds it to the \fBIKE\fR certificate
+database. The certificate must be a \fBX.509\fR certificate in \fBPEM Base64\fR
+or \fBASN.1 BER\fR encoding. The certificate adopts the name of its identity.
+.sp
+This option can import a certificate into a PKCS#11 hardware key store one of
+two ways: Either a matching public key object \fBand\fR an existing private key
+object were created using the \fBcertlocal\fR \fB-kc\fR option, or if a PKCS#11
+token is explicitly specified using the \fB-T\fR option.
+.RE
+
+.sp
+.ne 2
+.na
+\fBcertrldb\fR
+.ad
+.sp .6
+.RS 4n
+When specified with the \fBcertrldb\fR subcommand, this option installs (adds)
+a \fBCRL\fR into the \fBIKE\fR database. The \fBCRL\fR reads from standard
+input.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-e\fR [\fB-f\fR pkcs8] \fIslot\fR\fR
+.ad
+.sp .6
+.RS 4n
+.sp
+.ne 2
+.na
+\fBcertlocal\fR
+.ad
+.sp .6
+.RS 4n
+When specified with the \fBcertlocal\fR subcommand, this option extracts a
+private key from the \fBIKE\fR local \fBID\fR database. The key data are
+written to standard output. The slot specifies which private key to extract.
+Private keys are only extracted in binary/ber format.
+.sp
+\fBUse this option with extreme caution.\fR See the "Security" section, below.
+.sp
+This option will not work with PKCS#11 hardware objects.
+.sp
+When used in conjunction with "\fB-f\fR \fBpkcs8\fR", the private key is
+extracted in unencrypted PKCS#8 format.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-e\fR [\fB-f\fR \fIoutput-format\fR] \fBcertspec\fR\fR
+.ad
+.sp .6
+.RS 4n
+.sp
+.ne 2
+.na
+\fBcertdb\fR
+.ad
+.sp .6
+.RS 4n
+When specified with the \fBcertdb\fR subcommand, this option extracts a
+certificate from the IKE certificate database which matches the certspec and
+writes it to standard output. The \fIoutput-format\fR option specifies the
+encoding format. Valid options are \fBPEM\fR and \fBBER\fR. This extracts the
+first matching identity. The default output format is \fBPEM\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBcertrldb\fR
+.ad
+.sp .6
+.RS 4n
+When specified with the \fBcertrldb\fR subcommand, this option extracts a
+\fBCRL\fR from the IKE database. The key data are written to standard output.
+The \fBcertspec\fR specifies which CRL that is extracted. The first one that
+matches in the database is extracted. See \fBNOTES\fR, below, for details on
+\fBcertspec\fR patterns.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-kc\fR \fB-m\fR \fIkeysize\fR \fB-t\fR \fIkeytype\fR \fB-D\fR \fIdname\fR
+\fB-A\fR \fIaltname\fR[ ... ]\fR
+.ad
+.br
+.na
+\fB[\fB-S\fR \fIvalidity start_time\fR][\fB-F\fR \fIvalidity end_time\fR]\fR
+.ad
+.br
+.na
+\fB[\fB-T\fR \fIPKCS#11 token identifier\fR]\fR
+.ad
+.sp .6
+.RS 4n
+.sp
+.ne 2
+.na
+\fBcertlocal\fR
+.ad
+.sp .6
+.RS 4n
+When specified with the \fBcertlocal\fR subcommand, this option generates a IKE
+public/private key pair and adds it into the local ID database. It also
+generates a certificate request and sends that to standard output. For details
+on the above options see for details on the \fIdname\fR argument and see
+ALTERNATIVE NAMES for details on the \fIaltname\fR argument(s) to this command.
+.sp
+If \fB-T\fR is specified, the hardware token will generate the pair of keys.
+.sp
+If \fB-p\fR is specified with \fB-T\fR, the PKCS#11 token pin is stored in the
+clear on-disk, with root-protected file permissions. If not specified, one must
+unlock the token with \fBikeadm\fR(8) once \fBin.iked\fR(8) is running.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-ks\fR \fB-m\fR \fIkeysize\fR \fB-t\fR \fIkeytype\fR \fB-D\fR \fIdname\fR
+\fB-A\fR \fIaltname\fR[ ... ]\fR
+.ad
+.br
+.na
+\fB[\fB-S\fR \fIvalidity start_time\fR][\fB-F\fR \fIvalidity end_time\fR]\fR
+.ad
+.br
+.na
+\fB[\fB-f\fR \fIoutput-format\fR][[\fB-p\fR] \fB-T\fR \fIPKCS#11 token
+identifier\fR]\fR
+.ad
+.br
+.na
+\fB\fR
+.ad
+.sp .6
+.RS 4n
+.sp
+.ne 2
+.na
+\fBcertlocal\fR
+.ad
+.sp .6
+.RS 4n
+When specified with the \fBcertlocal\fR subcommand, generates a public/private
+key pair and adds it into the local ID database. This option also generates a
+self-signed certificate and installs it into the certificate database. See
+\fBNOTES\fR, below, for details on the \fIdname\fR and \fIaltname\fR arguments
+to this command.
+.sp
+If \fB-T\fR is specified, the hardware token will generate the pair of keys,
+and the self-signed certificate will also be stored in the hardware.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR [\fB-v\fR] [\fIslot\fR]\fR
+.ad
+.sp .6
+.RS 4n
+.sp
+.ne 2
+.na
+\fBcertlocal\fR
+.ad
+.sp .6
+.RS 4n
+When specified with the \fBcertlocal\fR subcommand, this option lists private
+keys in the local ID database. The \fB-v\fR option switches output to a verbose
+mode where the entire certificate is printed.
+.sp
+\fBUse the\fR \fB-v\fR\fBoption with extreme caution.\fR See the "Security"
+section, below. The \fB-v\fR option will not work with PKCS#11 hardware
+objects.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR [\fB-v\fR] [certspec]\fR
+.ad
+.sp .6
+.RS 4n
+.sp
+.ne 2
+.na
+\fBcertdb\fR
+.ad
+.sp .6
+.RS 4n
+When specified with the \fBcertdb\fR subcommand, this option lists certificates
+in the IKE certificate database matching the certspec, if any pattern is given.
+The list displays the identity string of the certificates, as well as, the
+private key if in the key database. The \fB-v\fR switches the output to a
+verbose mode where the entire certificate is printed.
+.sp
+If the matching certificate is on a hardware token, the token ID is also
+listed.
+.RE
+
+.sp
+.ne 2
+.na
+\fBcertrldb\fR
+.ad
+.sp .6
+.RS 4n
+When specified with the \fBcertrldb\fR subcommand, this option lists the CRLs
+in the IKE database along with any certificates that reside in the database and
+match the Issuer Name. \fBcertspec\fR can be used to specify to list a specific
+CRL. The \fB-v\fR option switches the output to a verbose mode where the entire
+certificate is printed. See \fBNOTES\fR, below, for details on \fBcertspec\fR
+patterns.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-r\fR \fIslot\fR\fR
+.ad
+.sp .6
+.RS 4n
+.sp
+.ne 2
+.na
+\fBcertlocal\fR
+.ad
+.sp .6
+.RS 4n
+When specified with the \fBcertlocal\fR subcommand, deletes the local ID in the
+specified slot. If there is a corresponding public key, it is not be deleted.
+If this slot is deemed as "corrupted" or otherwise unrecognizable, it is
+deleted as well.
+.sp
+If this is invoked on a PKCS#11 hardware object, it will also delete the
+PKCS#11 public key and private key objects. If the public key object was
+already deleted by \fBcertdb\fR \fB-r\fR, that is not a problem.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-r\fR certspec\fR
+.ad
+.sp .6
+.RS 4n
+.sp
+.ne 2
+.na
+\fBcertdb\fR
+.ad
+.sp .6
+.RS 4n
+Removes certificates from the IKE certificate database. Certificates matching
+the specified certificate pattern are deleted. Any private keys in the
+\fBcertlocal\fR database corresponding to these certificates are not deleted.
+This removes the first matching identity.
+.sp
+If the pattern specifies a slot and the slot is deemed as "corrupted" or
+otherwise unrecognizable, it is deleted as well.
+.sp
+If this is invoked on a PKCS#11 hardware object, it will also delete the
+certificate and the PKCS#11 public key object. If the public key object was
+already deleted by \fBcertlocal\fR \fB-r\fR, that is not a problem.
+.RE
+
+.sp
+.ne 2
+.na
+\fBcertrldb\fR
+.ad
+.sp .6
+.RS 4n
+When specified with the \fBcertrldb\fR subcommand, this option deletes the CRL
+with the given \fBcertspec\fR.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-U\fR slot\fR
+.ad
+.sp .6
+.RS 4n
+.sp
+.ne 2
+.na
+\fB\fBcertlocal\fR\fR
+.ad
+.sp .6
+.RS 4n
+When specified with the \fBcertlocal\fR subcommand and the \fB-T\fR flag, this
+option unlinks a PKCS#11 private key object from the IKE database. There will
+be no attempt to access the hardware keystore or to validate or remove the
+on-token private key object. The object is simply disassociated from the IKE
+database.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcertdb\fR\fR
+.ad
+.sp .6
+.RS 4n
+When specified with the \fBcertdb\fR subcommand and the \fB-T\fR flag, this
+option unlinks a PKCS#11 certificate object from the IKE database. There will
+be no attempt to access the hardware keystore or to validate or remove the
+on-token certificate or public key objects. The objects are simply
+disassociated from the IKE database.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-C\fR certspec\fR
+.ad
+.sp .6
+.RS 4n
+.sp
+.ne 2
+.na
+\fBcertlocal\fR
+.ad
+.sp .6
+.RS 4n
+When specified with the \fBcertlocal\fR subcommand, this option copies both the
+private key and its corresponding certificate and the public key from the
+on-disk keystore to the hardware keystore specified by its PKCS#11 token. This
+subcommand attempts to create each of these components, even if one part fails.
+In all cases, the original on-disk private key and public certificate are still
+retained and must be deleted separately. Some hardware keystores, such as
+FIPS-140 compliant devices, may not support migration of private key objects in
+this manner.
+.RE
+
+.sp
+.ne 2
+.na
+\fBcertdb\fR
+.ad
+.sp .6
+.RS 4n
+When specified with the \fBcertdb\fR subcommand, this option copies the
+certificate matching the given \fBcertspec\fR and corresponding public key from
+the on-disk keystore to the hardware keystore specified by its PKCS#11 token.
+The original public certificate is still retained and must be deleted
+separately, if desired.
+.sp
+If \fB-p\fR is specified, the PKCS#11 token pin is stored in the clear on-disk,
+with root-protected file permissions. If not specified, one must unlock the
+token with \fBikeadm\fR(8) once \fBin.iked\fR(8) is running.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-L\fR pattern\fR
+.ad
+.sp .6
+.RS 4n
+.sp
+.ne 2
+.na
+\fBcertlocal\fR
+.ad
+.sp .6
+.RS 4n
+When specified with the \fBcertlocal\fR subcommand, this option links an
+existing on-token private key object to the \fBIKE\fR database. The object
+itself remains on the token. This option simply lets the \fBIKE\fR
+infrastructure know that the object exists, as if it had been originally
+created on-token with the Solaris \fBIKE\fR utilities.
+.RE
+
+.sp
+.ne 2
+.na
+\fBcertdb\fR
+.ad
+.sp .6
+.RS 4n
+When specified with the \fBcertdb\fR subcommand, this option links an existing
+on-token certificate object to the \fBIKE\fR database. The object itself
+remains on the token. This option simply lets the \fBIKE\fR infrastructure know
+that the object exists, as if it had been originally created on-token with the
+Solaris \fBIKE\fR utilities.
+.sp
+If \fB-p\fR is specified, the PKCS#11 token pin is stored in the clear on-disk,
+with root-protected file permissions. If not specified, one must unlock the
+token with \fBikeadm\fR(8) once \fBin.iked\fR(8) is running.
+.RE
+
+.RE
+
+.SH PARAMETERS
+The following parameters are supported:
+.sp
+.ne 2
+.na
+\fBcertspec\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the pattern matching of certificate specifications. Valid
+\fBcertspec\fRs are the Subject Name, Issuer Name, and Subject Alternative
+Names.
+.sp
+These can be specified as certificates that match the given \fBcertspec\fR
+values and that do not match other \fBcertspec\fR values. To signify a
+\fBcertspec\fR value that is not supposed to be present in a certificate, place
+an \fB!\fR in front of the tag.
+.sp
+Valid \fBcertspec\fRs are:
+.sp
+.in +2
+.nf
+<Subject Names>
+SUBJECT=<Subject Names>
+ISSUER=<Issuer Names>
+SLOT=<Slot Number in the certificate database>
+
+Example:"ISSUER=C=US, O=SUN" IP=1.2.3.4 !DNS=example.com
+Example:"C=US, O=CALIFORNIA" IP=5.4.2.1 DNS=example.com
+.fi
+.in -2
+.sp
+
+Valid arguments to the alternative names are as follows:
+.sp
+.in +2
+.nf
+IP=<IPv4 address>
+DNS=<Domain Name Server address>
+EMAIL=<email (RFC 822) address>
+URI=<Uniform Resource Indicator value>
+DN=<LDAP Directory Name value>
+RID=<Registered Identifier value>
+.fi
+.in -2
+.sp
+
+Valid Slot numbers can be specified without the keyword tag. Alternative name
+can also be issued with keyword tags.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-A\fR\fR
+.ad
+.sp .6
+.RS 4n
+Subject Alternative Names the certificate. The argument that follows the
+\fB-A\fR option should be in the form of \fItag\fR=\fIvalue\fR. Valid tags are
+\fBIP\fR, \fBDNS\fR, \fBEMAIL\fR, \fBURI\fR, \fBDN\fR, and \fBRID\fR (See
+example below).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-D\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBX.509\fR distinguished name for the certificate subject. It typically has
+the form of: \fBC\fR=country, \fBO\fR=organization, \fBOU\fR=organizational
+unit, \fBCN\fR=common name. Valid tags are: \fBC\fR, \fBO\fR, \fBOU\fR, and
+\fBCN\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR\fR
+.ad
+.sp .6
+.RS 4n
+Encoding output format. \fBpem\fR for \fBPEM Base64\fR or \fBber\fR for
+\fBASN.1 BER\fR. If \fB-f\fR is not specified, \fBpem\fR is assumed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-F\fR \fIvalidity end_time\fR\fR
+.ad
+.sp .6
+.RS 4n
+Finish certificate validity time. If the \fB-F\fR flag is not specified, the
+validity end time is calculated at four years from the validity start time. See
+\fBNOTES\fR for an explanation for the validity date and time syntax.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-m\fR\fR
+.ad
+.sp .6
+.RS 4n
+Key size. It can be \fB512\fR, \fB1024\fR, \fB2048\fR, \fB3072\fR, or
+\fB4096\fR. Use the following command to determine the key sizes supported by
+the Solaris Cryptographic Framework:
+.sp
+.in +2
+.nf
+% \fBcryptoadm list -vm\fR
+.fi
+.in -2
+.sp
+
+The mechanisms displayed by the preceding command are described in
+\fBpkcs11_softtoken\fR(7). If your system has hardware acceleration, the
+mechanisms supported by the hardware will be listed in a separate section for
+each provider. Mechanisms can be any of:
+.sp
+.in +2
+.nf
+CKM_RSA_PKCS_KEY_PAIR_GEN
+CKM_DSA_KEY_PAIR_GEN
+CKM_DH_PKCS_KEY_PAIR_GEN
+.fi
+.in -2
+.sp
+
+.LP
+Note -
+.sp
+.RS 2
+Some hardware does not support all key sizes. For example, the Sun
+Cryptographic Accelerator 4000's keystore (when using the \fB-T\fR option,
+below), supports only up to 2048-bit keys for RSA and 1024-bit keys for DSA.
+.RE
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-S\fR \fIvalidity start_time\fR\fR
+.ad
+.sp .6
+.RS 4n
+Start certificate validity time. If the \fB-S\fR flag is not specified, the
+current date and time is used for the validity start time. See \fBNOTES\fR,
+below, for an explanation for the validity date and time syntax.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-t\fR\fR
+.ad
+.sp .6
+.RS 4n
+Key type. It can be \fBrsa-sha1\fR, \fBrsa-md5\fR, or \fBdsa-sha1\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-T\fR\fR
+.ad
+.sp .6
+.RS 4n
+PKCS#11 token identifier for hardware key storage. This specifies a hardware
+device instance in conformance to the PKCS#11 standard. A PKCS#11 library must
+be specified in \fB/etc/inet/ike/config\fR. (See \fBike.config\fR(5).)
+.sp
+A token identifier is a 32-character space-filled string. If the token given is
+less than 32 characters long, it will be automatically padded with spaces.
+.sp
+If there is more than one PKCS#11 library on a system, keep in mind that only
+one can be specified at a time in \fB/etc/inet/ike/config\fR. There can be
+multiple tokens (each with individual key storage) for a single PKCS#11 library
+instance.
+.RE
+
+.SH SECURITY
+This command can save private keys of a public-private key pair into a file.
+Any exposure of a private key may lead to compromise if the key is somehow
+obtained by an adversary.
+.sp
+.LP
+The PKCS#11 hardware object functionality can address some of the shortcomings
+of on-disk private keys. Because IKE is a system service, user intervention at
+boot is not desirable. The token's PIN, however, is still needed. The PIN for
+the PKCS#11 token, therefore, is stored where normally the on-disk
+cryptographic keys would reside. This design decision is deemed acceptable
+because, with a hardware key store, \fBpossession\fR of the key is still
+unavailable, only \fBuse\fR of the key is an issue if the host is compromised.
+Beyond the PIN, the security of \fBikecert\fR then reduces to the security of
+the PKCS#11 implementation. The PKCS#11 implementation should be scrutinized
+also.
+.sp
+.LP
+Refer to the afterword by Matt Blaze in Bruce Schneier's \fIApplied
+Cryptography: Protocols, Algorithms, and Source Code in C\fR for additional
+information.
+.SH EXAMPLES
+\fBExample 1 \fRGenerating a Self-Signed Certificate
+.sp
+.LP
+The following is an example of a self-signed certificate:
+
+.sp
+.in +2
+.nf
+example# \fBikecert certlocal -ks -m 512 -t rsa-md5 -D "C=US, O=SUN" -A\fR
+IP=1.2.3.4
+Generating, please wait...
+Certificate generated.
+Certificate added to database.
+-----BEGIN X509 CERTIFICATE-----
+MIIBRDCB76ADAgECAgEBMA0GCSqGSIb3DQEBBAUAMBsxCzAJBgNVBAYTAlVTMQww
+CgYDVQQKEwNTVU4wHhcNMDEwMzE0MDEzMDM1WhcNMDUwMzE0MDEzMDM1WjAbMQsw
+CQYDVQQGEwJVUzEMMAoGA1UEChMDU1VOMFowDQYJKoZIhvcNAQEBBQADSQAwRgJB
+APDhqpKgjgRoRUr6twTMTtSuNsReEnFoReVer!ztpXpQK6ybYlRH18JIqU/uCV/r
+26R/cVXTy5qc5NbMwA40KzcCASOjIDAeMAsGA1UdDwQEAwIFoDAPBgNVHREECDAG
+hwQBAgMEMA0GCSqGSIb3DQEBBAUAA0EApTRD23KzN95GMvPD71hwwClukslKLVg8
+f1xm9ZsHLPJLRxHFwsqqjAad4j4wwwriiUmGAHLTGB0lJMl8xsgxag==
+-----END X509 CERTIFICATE-----
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRGenerating a CA Request
+.sp
+.LP
+Generating a \fBCA\fR request appears the same as the self-signed certificate.
+The only differences between the two is the option \fB-c\fR instead of
+\fB-s\fR, and the certificate data is a \fBCA\fR request.
+
+.sp
+.in +2
+.nf
+example# \fBikecert certlocal -kc -m 512 -t rsa-md5 \e
+ -D "C=US, O=SUN" -A IP=1.2.3.4\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRA CA Request Using a Hardware Key Store
+.sp
+.LP
+The following example illustrates the specification of a token using the
+\fB-T\fR option.
+
+.sp
+.in +2
+.nf
+example# \fB# ikecert certlocal -kc -m 1024 -t rsa-md5 -T vca0-keystore \e
+ -D "C=US, O=SUN" -A IP=1.2.3.4\fR
+.fi
+.in -2
+.sp
+
+.SH EXIT STATUS
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.sp .6
+.RS 4n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnon-zero\fR\fR
+.ad
+.sp .6
+.RS 4n
+An error occurred. Writes an appropriate error message to standard error.
+.RE
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/etc/inet/secret/ike.privatekeys/*\fR\fR
+.ad
+.sp .6
+.RS 4n
+Private keys. A private key \fBmust\fR have a matching public-key certificate
+with the same filename in \fB/etc/inet/ike/publickeys/\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/inet/ike/publickeys/*\fR\fR
+.ad
+.sp .6
+.RS 4n
+Public-key certificates. The names are only important with regard to matching
+private key names.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/inet/ike/crls/*\fR\fR
+.ad
+.sp .6
+.RS 4n
+Public key certificate revocation lists.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/inet/ike/config\fR\fR
+.ad
+.sp .6
+.RS 4n
+Consulted for the pathname of a PKCS#11 library.
+.RE
+
+.SH ATTRIBUTES
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.BR getdate (3C),
+.BR ike.config (5),
+.BR attributes (7),
+.BR pkcs11_softtoken (7),
+.BR ikeadm (8),
+.BR in.iked (8)
+.sp
+.LP
+Schneier, Bruce. \fIApplied Cryptography: Protocols, Algorithms, and Source
+Code in C\fR. Second Edition. John Wiley & Sons. New York, NY. 1996.
+.sp
+.LP
+RSA Labs, PKCS#11 v2.11: \fICryptographic Token Interface Standards\fR,
+November 2001.
+.SH NOTES
+The following is the validity date and time syntax when the \fB-F\fR or
+\fB-S\fR flags are used:
+.sp
+.LP
+For relative dates, the syntax is as follows:
+.sp
+.in +2
+.nf
+{+,-}[Ns][Nm][Nh][Nd][Nw][NM][Ny]
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+where:
+.sp
+.ne 2
+.na
+\fBN\fR
+.ad
+.sp .6
+.RS 4n
+represents an integer
+.RE
+
+.sp
+.ne 2
+.na
+\fBs\fR
+.ad
+.sp .6
+.RS 4n
+represents seconds
+.RE
+
+.sp
+.ne 2
+.na
+\fBm\fR
+.ad
+.sp .6
+.RS 4n
+represents minutes
+.RE
+
+.sp
+.ne 2
+.na
+\fBh\fR
+.ad
+.sp .6
+.RS 4n
+represents hours
+.RE
+
+.sp
+.ne 2
+.na
+\fBd\fR
+.ad
+.sp .6
+.RS 4n
+represents days
+.RE
+
+.sp
+.ne 2
+.na
+\fBw\fR
+.ad
+.sp .6
+.RS 4n
+represents weeks
+.RE
+
+.sp
+.ne 2
+.na
+\fBM\fR
+.ad
+.sp .6
+.RS 4n
+represents months
+.RE
+
+.sp
+.ne 2
+.na
+\fBy\fR
+.ad
+.sp .6
+.RS 4n
+represents years
+.RE
+
+.sp
+.LP
+These parameters can be given in any order. For example, "+3d12h" is three and
+a half days from now, and "-3y2M" is three years and 2 months ago.
+.sp
+.LP
+All parameters with fixed values can be added up in absolute seconds. Months
+and years, which have variable numbers of seconds, are calculated using
+calendar time. Months and years, which are not of fixed length, are defined
+such that adding a year or month means the same day next year or month. For
+instance, if it is Jan 26, 2005 and the certificate should expire 3 years and 1
+month from today, the expiration (end validity time) date will be Feb 26, 2008.
+Overflows are dealt with accordingly. For example, one month from Jan 31, 2005
+is March 3, 2005, since February has only 28 days.
+.sp
+.LP
+For absolute dates, the syntax of the date formats included in the file
+\fB/etc/datemsk\fR are accepted (See \fBgetdate\fR(3C) for details). Any date
+string prepended with a "+" or "-" is treated as a time relative to the current
+time, while others are treated as absolute dates. Sanity checking is also done
+to ensure that the end validity date is greater than the start validity date.
+For example, the following command would create a certificate with start date 1
+day and 2 hours ago and an end date of Jan 22nd, 2007 at 12:00:00 local time.
+.sp
+.in +2
+.nf
+# ikecert certlocal -ks -t rsa-sha1 -m 1024 \e
+ -D "CN=mycert, O=Sun, C=US" \e
+ -S -1d2h -F "01/22/2007 12:00:00"
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+As \fBin.iked\fR(8) can run only in the global zone and exclusive-IP zones,
+this command is not useful in shared-IP zones.
diff --git a/usr/src/man/man8/in.chargend.8 b/usr/src/man/man8/in.chargend.8
new file mode 100644
index 0000000000..4febe45f74
--- /dev/null
+++ b/usr/src/man/man8/in.chargend.8
@@ -0,0 +1,88 @@
+'\" te
+.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH IN.CHARGEND 8 "Aug 23, 2004"
+.SH NAME
+in.chargend \- UDP or TCP character generator service daemon
+.SH SYNOPSIS
+.LP
+.nf
+\fBin.chargend\fR
+.fi
+
+.LP
+.nf
+FMRI \fIsvc\fR:/internet/chargen:default
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+FMRI stands for Fault Management Resource Identifier. It is used to identify
+resources managed by the Fault Manager. See \fBfmd\fR(8) and \fBsmf\fR(7).
+.sp
+.LP
+The \fBin.chargend\fR service provides the server-side of the
+character-generator protocol. This protocol is used for debugging and bandwidth
+measurement and is available on both TCP and UDP transports, through port 19.
+.sp
+.LP
+The in.chargend service is an \fBinetd\fR(8) \fBsmf\fR(7) delegated service.
+The \fBin.chargend\fR detects which transport is requested by examining the
+socket it is passed by the \fBinetd\fR daemon.
+.sp
+.ne 2
+.na
+\fBTCP-based service\fR
+.ad
+.RS 21n
+Once a connection is established, the \fBin.chargend\fR generates a stream of
+data. Any data received is discarded. The server generates data until the
+client program terminates the connection. Note that the data flow is limited by
+TCP flow control mechanisms.
+.RE
+
+.sp
+.ne 2
+.na
+\fBUDP-based service\fR
+.ad
+.RS 21n
+The \fBin.chargend\fR listens for UDP datagrams. When a datagram is received,
+the server generates a UDP datagram in response containing a random number of
+ASCII characters (ranging from 0 to 512 characters). Any received data is
+ignored.
+.RE
+
+.sp
+.LP
+The \fBin.chargend\fR data consists of a pattern of 72 character lines
+containing the printable, 7-bit ASCII characters. Each line is terminated with
+a carriage return and a line feed character.
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7),
+.BR smf (7),
+.BR inetd (8)
+.sp
+.LP
+RFC 864
diff --git a/usr/src/man/man8/in.comsat.8 b/usr/src/man/man8/in.comsat.8
new file mode 100644
index 0000000000..53513a31ea
--- /dev/null
+++ b/usr/src/man/man8/in.comsat.8
@@ -0,0 +1,81 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 2004 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH IN.COMSAT 8 "Jul 27, 2004"
+.SH NAME
+in.comsat, comsat \- biff server
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/in.comsat\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBcomsat\fR is the server process which listens for reports of incoming mail
+and notifies users who have requested to be told when mail arrives. It is
+invoked as needed by \fBinetd\fR(8), and times out if inactive for a few
+minutes.
+.sp
+.LP
+\fBcomsat\fR listens on a datagram port associated with the \fBbiff\fR service
+specification (see \fBservices\fR(5)) for one line messages of the form
+.sp
+.LP
+\fIuser\fR\fB@\fR\fImailbox\fR\fB-\fR\fIoffset\fR
+.sp
+.LP
+If the \fIuser\fR specified is logged in to the system and the associated
+terminal has the owner execute bit turned on (by a \fBbiff y\fR), the
+\fIoffset\fR is used as a seek offset into the appropriate mailbox file, and
+the first 7 lines or 560 characters of the message are printed on the user's
+terminal. Lines which appear to be part of the message header other than the
+\fBFrom\fR, \fBTo\fR, \fBDate\fR, or \fBSubject\fR lines are not printed when
+displaying the message.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/var/adm/utmpx\fR\fR
+.ad
+.RS 18n
+user access and administration information
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR svcs (1),
+.BR services (5),
+.BR attributes (7),
+.BR smf (7),
+.BR inetadm (8),
+.BR inetd (8),
+.BR svcadm (8)
+.SH NOTES
+.sp
+.LP
+The message header filtering is prone to error.
+.sp
+.LP
+The \fBin.comsat\fR service is managed by the service management facility,
+\fBsmf\fR(7), under the service identifier:
+.sp
+.in +2
+.nf
+svc:/network/comsat:default
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Administrative actions on this service, such as enabling, disabling, or
+requesting restart, can be performed using \fBsvcadm\fR(8). Responsibility for
+initiating and restarting this service is delegated to \fBinetd\fR(8). Use
+\fBinetadm\fR(8) to make configuration changes and to view configuration
+information for this service. The service's status can be queried using the
+\fBsvcs\fR(1) command.
diff --git a/usr/src/man/man8/in.daytimed.8 b/usr/src/man/man8/in.daytimed.8
new file mode 100644
index 0000000000..02ee0cb031
--- /dev/null
+++ b/usr/src/man/man8/in.daytimed.8
@@ -0,0 +1,83 @@
+'\" te
+.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH IN.DAYTIMED 8 "Aug 23, 2004"
+.SH NAME
+in.daytimed \- UDP or TCP daytime protocol service daemon
+.SH SYNOPSIS
+.LP
+.nf
+\fBin.daytimed\fR
+.fi
+
+.LP
+.nf
+FMRI \fIsvc\fR:/internet/daytime:default
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+FMRI stands for Fault Management Resource Identifier. It is used to identify
+resources managed by the Fault Manager. See \fBfmd\fR(8) and \fBsmf\fR(7).
+.sp
+.LP
+The \fBin.daytimed\fR service provides the server-side of the daytime protocol.
+This protocol is used for debugging and bandwidth measurement and is available
+on both TCP and UDP transports, through port 13.
+.sp
+.LP
+The \fBin.daytimed\fR service is an \fBinetd\fR(8) \fBsmf\fR(7) delegated
+service. The \fBin.daytimed\fR detects which transport is requested by
+examining the socket it is passed by the \fBinetd\fR daemon.
+.sp
+.ne 2
+.na
+\fBTCP-based service\fR
+.ad
+.RS 21n
+Once a connection is established, the \fBin.daytimed\fR generates the current
+date and time in \fBctime\fR(3C) format as 7-bit ASCII and sends it through the
+connection. The server then closes the connection. Any data received from the
+client side of the connection is discarded.
+.RE
+
+.sp
+.ne 2
+.na
+\fBUDP-based service\fR
+.ad
+.RS 21n
+The \fBin.daytimed\fR listens for UDP datagrams. When a datagram is received,
+the server generates the current date and time in \fBctime\fR(3C) format as
+7-bit ASCII and inserts it in a UDP datagram sent in response to the client's
+request. Any received data is ignored.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7),
+.BR smf (7),
+.BR inetd (8)
+.sp
+.LP
+RFC 867
diff --git a/usr/src/man/man8/in.discardd.8 b/usr/src/man/man8/in.discardd.8
new file mode 100644
index 0000000000..5e3f275e00
--- /dev/null
+++ b/usr/src/man/man8/in.discardd.8
@@ -0,0 +1,83 @@
+'\" te
+.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH IN.DISCARDD 8 "Aug 23, 2004"
+.SH NAME
+in.discardd \- UDP or TCP discard protocol service
+.SH SYNOPSIS
+.LP
+.nf
+\fBin.discardd\fR
+.fi
+
+.LP
+.nf
+FMRI \fIsvc\fR:/internet/discard:default
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+FMRI stands for Fault Management Resource Identifier. It is used to identify
+resources managed by the Fault Manager. See \fBfmd\fR(8) and \fBsmf\fR(7).
+.sp
+.LP
+The \fBin.discardd\fR service provides the server-side of the discard protocol.
+This protocol is used for debugging and bandwidth measurement and is available
+on both TCP and UDP transports through port 9.
+.sp
+.LP
+The \fBin.discardd\fR service is an \fBinetd\fR(8) \fBsmf\fR(7) delegated
+service. The \fBin.discardd\fR detects which transport is requested by
+examining the socket it is passed by the \fBinetd\fR daemon.
+.sp
+.LP
+The discard service simply throws away any data it receives from the client.
+.sp
+.ne 2
+.na
+\fBTCP-based service\fR
+.ad
+.RS 21n
+Once a connection is established, the \fBin.discardd\fR discards any data
+received. No response is generated. The connection remains open until the
+client terminates it.
+.RE
+
+.sp
+.ne 2
+.na
+\fBUDP-based service\fR
+.ad
+.RS 21n
+The \fBin.discardd\fR listens for UDP datagrams. When a datagram is received,
+the server discards it. No response is sent.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7),
+.BR smf (7),
+.BR inetd (8)
+.sp
+.LP
+RFC 863
diff --git a/usr/src/man/man8/in.echod.8 b/usr/src/man/man8/in.echod.8
new file mode 100644
index 0000000000..56301ee878
--- /dev/null
+++ b/usr/src/man/man8/in.echod.8
@@ -0,0 +1,81 @@
+'\" te
+.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH IN.ECHOD 8 "Aug 23, 2004"
+.SH NAME
+in.echod \- UDP or TCP echo protocol service daemon
+.SH SYNOPSIS
+.LP
+.nf
+\fBin.echod\fR
+.fi
+
+.LP
+.nf
+FMRI \fIsvc\fR:/internet/echo:default
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+FMRI stands for Fault Management Resource Identifier. It is used to identify
+resources managed by the Fault Manager. See \fBfmd\fR(8) and \fBsmf\fR(7).
+.sp
+.LP
+The \fBin.echod\fR service provides the server-side of the echo protocol. This
+protocol is used for debugging and bandwidth measurement and is available on
+both TCP and UDP transports, through port 7.
+.sp
+.LP
+The \fBin.echod\fR service is an \fBinetd\fR(8) \fBsmf\fR(7) delegated
+service. The \fBin.echod\fR detects which transport is requested by examining
+the socket it is passed by the \fBinetd\fR daemon.
+.sp
+.ne 2
+.na
+\fBTCP-based service\fR
+.ad
+.RS 21n
+Once a connection is established, the \fBin.echod\fR echoes any data received
+from the client back to the client. The server echoes data until the client
+program terminates the connection.
+.RE
+
+.sp
+.ne 2
+.na
+\fBUDP-based service\fR
+.ad
+.RS 21n
+The \fBin.echod\fR listens for UDP datagrams. When a datagram is received, the
+server creates a UDP datagram containing the data it received and sends it to
+the client.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7),
+.BR smf (7),
+.BR inetd (8)
+.sp
+.LP
+RFC 862
diff --git a/usr/src/man/man8/in.fingerd.8 b/usr/src/man/man8/in.fingerd.8
new file mode 100644
index 0000000000..d593b83676
--- /dev/null
+++ b/usr/src/man/man8/in.fingerd.8
@@ -0,0 +1,124 @@
+'\" te
+.\" Copyright 1989 AT&T
+.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH IN.FINGERD 8 "Jul 31, 2004"
+.SH NAME
+in.fingerd, fingerd \- remote user information server
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/in.fingerd\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBfingerd\fR implements the server side of the Name/Finger protocol, specified
+in \fIRFC 742\fR. The Name/Finger protocol provides a remote interface to
+programs which display information on system status and individual users. The
+protocol imposes little structure on the format of the exchange between client
+and server. The client provides a single command line to the finger server
+which returns a printable reply.
+.sp
+.LP
+\fBfingerd\fR waits for connections on \fBTCP\fR port 79. Once connected, it
+reads a single command line terminated by RETURN-LINEFEED and passes the
+arguments to \fBfinger\fR(1), prepended with \fB-s\fR. \fBfingerd\fR closes its
+connections as soon as the output is finished.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/var/adm/utmpx\fR\fR
+.ad
+.RS 20n
+User and accounting information.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/passwd\fR\fR
+.ad
+.RS 20n
+System password file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/adm/lastlog\fR\fR
+.ad
+.RS 20n
+Last login times.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB$HOME/.plan \fR\fR
+.ad
+.RS 20n
+User's plans.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB$HOME/.project \fR\fR
+.ad
+.RS 20n
+User's projects.
+.RE
+
+.SH USAGE
+.sp
+.LP
+\fBfingerd\fR and \fBin.fingerd\fR are IPv6-enabled. See \fBip6\fR(4P).
+.SH SEE ALSO
+.sp
+.LP
+.BR finger (1),
+.BR svcs (1),
+.BR ip6 (4P),
+.BR attributes (7),
+.BR smf (7),
+.BR inetadm (8),
+.BR inetd (8),
+.BR svcadm (8)
+.sp
+.LP
+Harrenstien, Ken, \fIRFC 742, NAME/FINGER\fR, Network Information Center, SRI
+International, Menlo Park, Calif., December 1977.
+.SH NOTES
+.sp
+.LP
+Connecting directly to the server from a \fBTIP\fR or an equally narrow-minded
+TELNET-protocol user program can result in meaningless attempts at option
+negotiation being sent to the server, which foul up the command line
+interpretation. \fBfingerd\fR should be taught to filter out \fBIAC\fR's and
+perhaps even respond negatively (\fBIAC\fR does not) to all option commands
+received.
+.sp
+.LP
+The \fBin.fingerd\fR service is managed by the service management facility,
+\fBsmf\fR(7), under the service identifier:
+.sp
+.in +2
+.nf
+svc:/network/finger:default
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Administrative actions on this service, such as enabling, disabling, or
+requesting restart, can be performed using \fBsvcadm\fR(8). Responsibility for
+initiating and restarting this service is delegated to \fBinetd\fR(8). Use
+\fBinetadm\fR(8) to make configuration changes and to view configuration
+information for this service. The service's status can be queried using the
+\fBsvcs\fR(1) command.
diff --git a/usr/src/man/man8/in.iked.8 b/usr/src/man/man8/in.iked.8
new file mode 100644
index 0000000000..e3f8792d5c
--- /dev/null
+++ b/usr/src/man/man8/in.iked.8
@@ -0,0 +1,468 @@
+'\" te
+.\" Copyright (C) 2009, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH IN.IKED 8 "Jan 27, 2009"
+.SH NAME
+in.iked \- daemon for the Internet Key Exchange (IKE)
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/inet/in.iked\fR [\fB-d\fR] [\fB-f\fR \fIfilename\fR] [\fB-p\fR \fIlevel\fR]
+.fi
+
+.LP
+.nf
+\fB/usr/lib/inet/in.iked\fR \fB-c\fR [\fB-f\fR \fIfilename\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBin.iked\fR performs automated key management for IPsec using the Internet
+Key Exchange (\fBIKE\fR) protocol.
+.sp
+.LP
+\fBin.iked\fR implements the following:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBIKE\fR authentication with either pre-shared keys, \fBDSS\fR signatures,
+\fBRSA\fR signatures, or \fBRSA\fR encryption.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Diffie-Hellman key derivation using either \fB768\fR, \fB1024\fR, or
+\fB1536\fR-bit public key moduli.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Authentication protection with cipher choices of \fBAES\fR, \fBDES\fR,
+Blowfish, or \fB3DES\fR, and hash choices of either \fBHMAC-MD5\fR or
+\fBHMAC-SHA-1\fR. Encryption in \fBin.iked\fR is limited to the \fBIKE\fR
+authentication and key exchange. See \fBipsecesp\fR(4P) for information
+regarding IPsec protection choices.
+.RE
+.sp
+.LP
+\fBin.iked\fR is managed by the following \fBsmf\fR(7) service:
+.sp
+.in +2
+.nf
+svc:/network/ipsec/ike
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+This service is delivered disabled because the configuration file needs to be
+created before the service can be enabled. See \fBike.config\fR(5) for the
+format of this file.
+.sp
+.LP
+See "Service Management Facility" for information on managing the \fBsmf\fR(7)
+service.
+.sp
+.LP
+\fBin.iked\fR listens for incoming \fBIKE\fR requests from the network and for
+requests for outbound traffic using the \fBPF_KEY\fR socket. See
+\fBpf_key\fR(4P).
+.sp
+.LP
+\fBin.iked\fR has two support programs that are used for IKE administration and
+diagnosis: \fBikeadm\fR(8) and \fBikecert\fR(8).
+.sp
+.LP
+The \fBikeadm\fR(8) command can read the \fB/etc/inet/ike/config\fR file as a
+\fBrule\fR, then pass the configuration information to the running
+\fBin.iked\fR daemon using a doors interface.
+.sp
+.in +2
+.nf
+example# \fBikeadm read rule /etc/inet/ike/config\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Refreshing the \fBike\fR \fBsmf\fR(7) service provided to manage the
+\fBin.iked\fR daemon sends a \fBSIGHUP\fR signal to the \fBin.iked\fR daemon,
+which will (re)read \fB/etc/inet/ike/config\fR and reload the certificate
+database.
+.sp
+.LP
+The preceding two commands have the same effect, that is, to update the running
+IKE daemon with the latest configuration. See "Service Management Facility" for
+more details on managing the \fBin.iked\fR daemon.
+.SS "Service Management Facility"
+.sp
+.LP
+The IKE daemon (\fBin.iked\fR) is managed by the service management facility,
+\fBsmf\fR(7). The following group of services manage the components of IPsec:
+.sp
+.in +2
+.nf
+svc:/network/ipsec/ipsecalgs (See ipsecalgs(8))
+svc:/network/ipsec/policy (See ipsecconf(8))
+svc:/network/ipsec/manual-key (See ipseckey(8))
+svc:/network/ipsec/ike (see ike.config(5))
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The manual-key and \fBike\fR services are delivered \fBdisabled\fR because the
+system administrator must create configuration files for each service, as
+described in the respective man pages listed above.
+.sp
+.LP
+The correct administrative procedure is to create the configuration file for
+each service, then enable each service using \fBsvcadm\fR(8).
+.sp
+.LP
+The \fBike\fR service has a dependency on the \fBipsecalgs\fR and \fBpolicy\fR
+services. These services should be enabled before the \fBike\fR service.
+Failure to do so results in the \fBike\fR service entering maintenance mode.
+.sp
+.LP
+If the configuration needs to be changed, edit the configuration file then
+refresh the service, as follows:
+.sp
+.in +2
+.nf
+example# \fBsvcadm refresh ike\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The following properties are defined for the \fBike\fR service:
+.sp
+.ne 2
+.na
+\fB\fBconfig/admin_privilege\fR\fR
+.ad
+.sp .6
+.RS 4n
+Defines the level that \fBikeadm\fR(8) invocations can change or observe the
+running \fBin.iked\fR. The acceptable values for this property are the same as
+those for the \fB-p\fR option. See the description of \fB-p\fR in
+\fBOPTIONS\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBconfig/config_file\fR\fR
+.ad
+.sp .6
+.RS 4n
+Defines the configuration file to use. The default value is
+\fB/etc/inet/ike/config\fR. See \fBike.config\fR(5) for the format of this
+file. This property has the same effect as the \fB-f\fR flag. See the
+description of \fB-f\fR in \fBOPTIONS\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBconfig/debug_level\fR\fR
+.ad
+.sp .6
+.RS 4n
+Defines the amount of debug output that is written to the \fBdebug_logfile\fR
+file, described below. The default value for this is \fBop\fR or
+\fBoperator\fR. This property controls the recording of information on events
+such as re-reading the configuration file. Acceptable value for
+\fBdebug_level\fR are listed in the \fBikeadm\fR(8) man page. The value
+\fBall\fR is equivalent to the \fB-d\fR flag. See the description of \fB-d\fR
+in \fBOPTIONS\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBconfig/debug_logfile\fR\fR
+.ad
+.sp .6
+.RS 4n
+Defines where debug output should be written. The messages written here are
+from debug code within \fBin.iked\fR. Startup error messages are recorded by
+the \fBsmf\fR(7) framework and recorded in a service-specific log file. Use any
+of the following commands to examine the \fBlogfile\fR property:
+.sp
+.in +2
+.nf
+example# \fBsvcs -l ike\fR
+example# \fBsvcprop ike\fR
+example# \fBsvccfg -s ike listprop\fR
+.fi
+.in -2
+.sp
+
+The values for these log file properties might be different, in which case both
+files should be inspected for errors.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBconfig/ignore_errors\fR\fR
+.ad
+.sp .6
+.RS 4n
+A boolean value that controls \fBin.iked\fR's behavior should the configuration
+file have syntax errors. The default value is \fBfalse\fR, which causes
+\fBin.iked\fR to enter maintenance mode if the configuration is invalid.
+.sp
+Setting this value to \fBtrue\fR causes the IKE service to stay online, but
+correct operation requires the administrator to configure the running daemon
+with \fBikeadm\fR(8). This option is provided for compatibility with previous
+releases.
+.RE
+
+.sp
+.LP
+These properties can be modified using \fBsvccfg\fR(8) by users who have been
+assigned the following authorization:
+.sp
+.in +2
+.nf
+solaris.smf.value.ipsec
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+PKCS#11 token objects can be unlocked or locked by using \fBikeadm\fR token
+login and \fBikeadm\fR token logout, respectively. Availability of private
+keying material stored on these PKCS#11 token objects can be observed with:
+\fBikeadm dump certcache\fR. The following authorizations allow users to log
+into and out of PKCS#11 token objects:
+.sp
+.in +2
+.nf
+solaris.network.ipsec.ike.token.login
+solaris.network.ipsec.ike.token.logout
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+See \fBauths\fR(1), \fBikeadm\fR(8), \fBuser_attr\fR(5), \fBrbac\fR(7).
+.sp
+.LP
+The service needs to be refreshed using \fBsvcadm\fR(8) before a new property
+value is effective. General, non-modifiable properties can be viewed with the
+\fBsvcprop\fR(1) command.
+.sp
+.in +2
+.nf
+# \fBsvccfg -s ipsec/ike setprop config/config_file = \e
+/new/config_file\fR
+# \fBsvcadm refresh ike\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Administrative actions on this service, such as enabling, disabling,
+refreshing, and requesting restart can be performed using \fBsvcadm\fR(8). A
+user who has been assigned the authorization shown below can perform these
+actions:
+.sp
+.in +2
+.nf
+solaris.smf.manage.ipsec
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The service's status can be queried using the \fBsvcs\fR(1) command.
+.sp
+.LP
+The \fBin.iked\fR daemon is designed to be run under \fBsmf\fR(7) management.
+While the \fBin.iked\fR command can be run from the command line, this is
+discouraged. If the \fBin.iked\fR command is to be run from the command line,
+the \fBike\fR \fBsmf\fR(7) service should be disabled first. See
+\fBsvcadm\fR(8).
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-c\fR\fR
+.ad
+.RS 15n
+Check the syntax of a configuration file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-d\fR\fR
+.ad
+.RS 15n
+Use debug mode. The process stays attached to the controlling terminal and
+produces large amounts of debugging output. This option is deprecated. See
+"Service Management Facility" for more details.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR \fIfilename\fR\fR
+.ad
+.RS 15n
+Use \fIfilename\fR instead of \fB/etc/inet/ike/config\fR. See
+\fBike.config\fR(5) for the format of this file. This option is deprecated. See
+"Service Management Facility" for more details.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR \fIlevel\fR\fR
+.ad
+.RS 15n
+Specify privilege level (\fIlevel\fR). This option sets how much
+\fBikeadm\fR(8) invocations can change or observe about the running
+\fBin.iked\fR.
+.sp
+Valid \fIlevels\fR are:
+.sp
+.ne 2
+.na
+\fB0\fR
+.ad
+.RS 5n
+Base level
+.RE
+
+.sp
+.ne 2
+.na
+\fB1\fR
+.ad
+.RS 5n
+Access to preshared key info
+.RE
+
+.sp
+.ne 2
+.na
+\fB2\fR
+.ad
+.RS 5n
+Access to keying material
+.RE
+
+If \fB-p\fR is not specified, \fIlevel\fR defaults to \fB0\fR.
+.sp
+This option is deprecated. See "Service Management Facility" for more details.
+.RE
+
+.SH SECURITY
+.sp
+.LP
+This program has sensitive private keying information in its image. Care should
+be taken with any core dumps or system dumps of a running \fBin.iked\fR daemon,
+as these files contain sensitive keying information. Use the \fBcoreadm\fR(8)
+command to limit any corefiles produced by \fBin.iked\fR.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/inet/ike/config\fR\fR
+.ad
+.sp .6
+.RS 4n
+Default configuration file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/inet/secret/ike.privatekeys/*\fR\fR
+.ad
+.sp .6
+.RS 4n
+Private keys. A private key \fBmust\fR have a matching public-key certificate
+with the same filename in \fB/etc/inet/ike/publickeys/\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/inet/ike/publickeys/*\fR\fR
+.ad
+.sp .6
+.RS 4n
+Public-key certificates. The names are only important with regard to matching
+private key names.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/inet/ike/crls/*\fR\fR
+.ad
+.sp .6
+.RS 4n
+Public key certificate revocation lists.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/inet/secret/ike.preshared\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBIKE\fR pre-shared secrets for Phase I authentication.
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR svcs (1),
+.BR ipsecesp (4P),
+.BR pf_key (4P),
+.BR ike.config (5),
+.BR attributes (7),
+.BR smf (7),
+.BR coreadm (8),
+.BR ikeadm (8),
+.BR ikecert (8),
+.BR svcadm (8),
+.BR svccfg (8)
+.sp
+.LP
+Harkins, Dan and Carrel, Dave. \fIRFC 2409, Internet Key Exchange (IKE)\fR.
+Network Working Group. November 1998.
+.sp
+.LP
+Maughan, Douglas, Schertler, M., Schneider, M., Turner, J. \fIRFC 2408,
+Internet Security Association and Key Management Protocol (ISAKMP)\fR. Network
+Working Group. November 1998.
+.sp
+.LP
+Piper, Derrell, \fIRFC 2407, The Internet IP Security Domain of Interpretation
+for ISAKMP\fR. Network Working Group. November 1998.
diff --git a/usr/src/man/man8/in.lpd.8 b/usr/src/man/man8/in.lpd.8
new file mode 100644
index 0000000000..15e5f91f74
--- /dev/null
+++ b/usr/src/man/man8/in.lpd.8
@@ -0,0 +1,127 @@
+'\" te
+.\" Copyright (C) 2004, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH IN.LPD 8 "Feb 25, 2017"
+.SH NAME
+in.lpd \- BSD print protocol adaptor
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/print/in.lpd\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+\fBin.lpd\fR implements the network listening service for the \fBBSD\fR print
+protocol specified in \fBRFC\fR 1179. The \fBBSD\fR print protocol provides a
+remote interface for systems to interact with a local spooling system. The
+protocol defines five standard requests from the client to the server: starting
+queue processing, transferring print jobs, retrieving terse status, retrieving
+verbose status, and canceling print jobs.
+.sp
+.LP
+The \fBin.lpd\fR service is managed by the service management facility,
+\fBsmf\fR(7), under the service identifier:
+.sp
+.in +2
+.nf
+svc:/network/lp
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Administrative actions on this service, such as enabling, disabling, or
+requesting restart, can be performed using \fBsvcadm\fR(8). Responsibility for
+initiating and restarting this service is delegated to \fBinetd\fR(8). Use
+\fBinetadm\fR(8) to make configuration changes and to view configuration
+information for this service. The service's status can be queried using the
+\fBsvcs\fR(1) command.
+.sp
+.LP
+\fBin.lpd\fR uses the \fBconfig/log_from_remote\fR property to allow or
+disallow remote access. The default value of this property, \fBlocalhost\fR,
+disallows remote access.
+.sp
+.LP
+\fBinetd\fR waits for connections on \fBTCP\fR port 515. Upon receipt of a
+connect request, \fBin.lpd\fR is started to service the connection. Once the
+request has been filled, \fBin.lpd\fR closes the connection and exits.
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRAllowing Remote Access
+.sp
+.LP
+The following command allows remote access to \fBin.lpd\fR.
+
+.sp
+.in +2
+.nf
+# \fBinetadm -m svc:/application/print/rfc1179:default bind_addr=""\fR
+.fi
+.in -2
+.sp
+
+.SH EXIT STATUS
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 12n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fBnon-zero\fR
+.ad
+.RS 12n
+An error occurred.
+.RE
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/etc/printers.conf\fR\fR
+.ad
+.sp .6
+.RS 4n
+System printer configuration database.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBprinters.conf.byname\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBNIS\fR version of \fB/etc/printers.conf\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/print/bsd-adaptor/bsd_*.so*\fR\fR
+.ad
+.sp .6
+.RS 4n
+Spooler translation modules.
+.RE
+
+.SH SEE ALSO
+.LP
+.BR svcs (1),
+.BR printers.conf (5),
+.BR attributes (7),
+.BR smf (7),
+.BR inetadm (8),
+.BR inetd (8),
+.BR svcadm (8)
diff --git a/usr/src/man/man8/in.mpathd.8 b/usr/src/man/man8/in.mpathd.8
new file mode 100644
index 0000000000..ee77c531ac
--- /dev/null
+++ b/usr/src/man/man8/in.mpathd.8
@@ -0,0 +1,358 @@
+'\" te
+.\" Copyright (C) 2009, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH IN.MPATHD 8 "May 13, 2009"
+.SH NAME
+in.mpathd \- IP multipathing daemon
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/inet/in.mpathd\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBin.mpathd\fR daemon performs failure and repair detection for IP
+interfaces that have been placed into an IPMP group (or optionally, for all IP
+interfaces on the system). It also controls which IP interfaces in an IPMP
+group are "active" (being used by the system to send or receive IP data
+traffic) in a manner that is consistent with the administrator's configured
+policy.
+.sp
+.LP
+The \fBin.mpathd\fR daemon can detect IP interface failure and repair through
+two methods: by monitoring the \fBIFF_RUNNING\fR flag for each IP interface
+(link-based failure detection), and by sending and receiving ICMP probes on
+each IP interface (probe-based failure detection). Link-based failure detection
+is instantaneous and is always enabled (provided the network driver supports
+the feature); probe-based failure detection must be enabled through the
+configuration of one or more test addresses (described below), but tests the
+entire IP interface send and receive path. The \fBipmpstat\fR(8) utility can
+be used to check which failure detection methods are enabled.
+.sp
+.LP
+If only link-based failure detection is enabled, then the health of the
+interface is determined solely from the state of the \fBIFF_RUNNING\fR flag.
+Otherwise, the interface is considered failed if either of the two methods
+indicate a failure, and repaired once both methods indicate the failure has
+been corrected. Not all interfaces in a group need to be configured with the
+same failure detection methods.
+.sp
+.LP
+As mentioned above, to perform probe-based failure detection \fBin.mpathd\fR
+requires a test address on each IP interface for the purpose of sending and
+receiving probes. Each address must be marked \fBNOFAILOVER\fR (see
+\fBifconfig\fR(8)) and \fBin.mpathd\fR will be limited to probing targets on
+the same subnet. Each address may be configured statically or acquired by means
+of DHCP. To find targets, \fBin.mpathd\fR first consults the routing table for
+routes on the same subnet, and uses the specified next-hop. If no routes match,
+it sends all-hosts ICMP probes and selects a subset of the systems that
+respond. Thus, for probe-based failure detection to operate, there must be at
+least one neighbor on each subnet that responds to ICMP echo request probes.
+The \fBipmpstat\fR(8) utility can be used to display both the current probe
+target information and the status of sent probes.
+.sp
+.LP
+Both IPv4 and IPv6 are supported. If an IP interface is plumbed for IPv4 and an
+IPv4 test address is configured then \fBin.mpathd\fR will start sending ICMPv4
+probes over that IP interface. Similarly, if an IP interface is plumbed for
+IPv6 and an IPv6 test address is configured, then \fBin.mpathd\fR will start
+sending ICMPv6 probes over that IP interface. However, note that
+\fBin.mpathd\fR will ignore IPv6 test addresses that are not link-local. If
+both IPv4 and IPv6 are plumbed, it is sufficient to configure only one of the
+two, that is, either an IPv4 test address or an IPv6 test address. If both IPv4
+and IPv6 test addresses are configured, \fBin.mpathd\fR probes using both
+ICMPv4 and ICMPv6.
+.sp
+.LP
+As mentioned above, \fBin.mpathd\fR also controls which IP interfaces in an
+IPMP group are "active" (used by the system to send and receive IP data
+traffic). Specifically, \fBin.mpathd\fR tracks the administrative configuration
+of each IPMP group and attempts to keep the number of active IP interfaces in
+each group consistent with that configuration. Therefore, if an active IP
+interface fails, \fBin.mpathd\fR will activate an \fBINACTIVE\fR interface in
+the group, provided one exists (it will prefer \fBINACTIVE\fR interfaces that
+are also marked \fBSTANDBY\fR). Likewise, if an IP interface repairs and the
+resulting repair leaves the IPMP group with more active interfaces than the
+administrative configuration specifies, \fBin.mpathd\fR will deactivate one of
+the interfaces (preferably one marked \fBSTANDBY\fR), except when the
+\fBFAILBACK\fR variable is used, as described below. Similar adjustments will
+be made by \fBin.mpathd\fR when offlining IP interfaces (for instance, in
+response to \fBif_mpadm\fR(8)).
+.sp
+.LP
+The \fBin.mpathd\fR daemon accesses three variable values in
+\fB/etc/default/mpathd\fR: \fBFAILURE_DETECTION_TIME\fR, \fBFAILBACK\fR and
+\fBTRACK_INTERFACES_ONLY_WITH_GROUPS\fR.
+.sp
+.LP
+The \fBFAILURE_DETECTION_TIME\fR variable specifies the probe-based failure
+detection time. The shorter the failure detection time, the more probe traffic.
+The default value of \fBFAILURE_DETECTION_TIME\fR is 10 seconds. This means
+that IP interface failure will be detected by \fBin.mpathd\fR within 10
+seconds. The IP interface repair detection time is always twice the value of
+\fBFAILURE_DETECTION_TIME\fR. Note that failures and repairs detected by
+link-based failure detection are acted on immediately, though \fBin.mpathd\fR
+may ignore link state changes if it suspects that the link state is flapping
+due to defective hardware; see \fBDIAGNOSTICS\fR.
+.sp
+.LP
+By default, \fBin.mpathd\fR limits failure and repair detection to IP
+interfaces that are configured as part of a named IPMP group. Setting
+\fBTRACK_INTERFACES_ONLY_WITH_GROUPS\fR to \fBno\fR enables failure and repair
+detection on all IP interfaces, even if they are not part of a named IPMP
+group. IP interfaces that are tracked but not part of a named IPMP group are
+considered to be part of the "anonymous" IPMP group. In addition to having no
+name, this IPMP group is special in that its IP interfaces are not equivalent
+and thus cannot take over for one another in the event of an IP interface
+failure. That is, the anonymous IPMP group can only be used for failure and
+repair detection, and provides no high-availability or load-spreading.
+.sp
+.LP
+As described above, when \fBin.mpathd\fR detects that an IP interface has
+repaired, it activates it so that it will again be used to send and receive IP
+data traffic. However, if \fBFAILBACK\fR is set to \fBno\fR, then the IP
+interface will only be activated if no other active IP interfaces in the group
+remain. However, the interface may subsequently be activated if another IP
+interface in the group fails.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/default/mpathd\fR\fR
+.ad
+.RS 23n
+Contains default values used by the \fBin.mpathd\fR daemon.
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+\fBif_mpadm\fR(8), \fBifconfig\fR(8), \fBipmpstat\fR(8),
+\fBattributes\fR(7), \fBicmp\fR(4P), \fBicmp6\fR(4P),
+.sp
+.LP
+\fISystem Administration Guide: IP Services\fR
+.SH DIAGNOSTICS
+.sp
+.LP
+IP interface \fIinterface_name\fR has a hardware address which is not unique in
+group \fIgroup_name\fR; offlining
+.RS +4
+\fBDescription: \fR
+.sp
+.LP
+For probe-based failure detection, load-spreading, and other code IPMP features
+to work properly, each IP interface in an IPMP group must have a unique
+hardware address. If this requirement is not met, \fBin.mpathd\fR will
+automatically offline all but one of the IP interfaces with duplicate hardware
+addresses.
+.RE
+
+.sp
+.LP
+IP interface \fIinterface_name\fR now has a unique hardware address in group
+\fIgroup_name\fR; onlining
+.RS +4
+\fBDescription: \fR
+.sp
+.LP
+The previously-detected duplicate hardware address is now unique, and therefore
+\fBin.mpathd\fR has brought \fIinterface_name\fR back online.
+.RE
+
+.sp
+.LP
+Test address \fIaddress\fR is not unique in group; disabling probe-based
+failure detection on \fIinterface_name\fR
+.RS +4
+\fBDescription: \fR
+.sp
+.LP
+For \fBin.mpathd\fR to perform probe-based failure detection, each test address
+in the group must be unique.
+.RE
+
+.sp
+.LP
+No test address configured on interface \fIinterface_name\fR disabling
+probe-based failure detection on it
+.RS +4
+\fBDescription: \fR
+.sp
+.LP
+For \fBin.mpathd\fR to perform probe-based failure detection on an IP
+interface, it must be configured with a test address: IPv4, IPv6, or both.
+.RE
+
+.sp
+.LP
+IP \fIinterface_name\fR in group \fIgroup_name\fR is not plumbed for IPv[4|6],
+affecting IPv[4|6] connectivity
+.RS +4
+\fBDescription: \fR
+.sp
+.LP
+All IP interfaces in a multipathing group must be homogeneously plumbed. For
+example, if one IP interface is plumbed for IPv4, then all IP interfaces in the
+group must be plumbed for IPv4, or IPv4 packets will not be able to be reliably
+sent and received. The STREAMS modules pushed on all IP interfaces must also be
+identical.
+.RE
+
+.sp
+.LP
+The link has come up on \fIinterface_name\fR more than 2 times in the last
+minute; disabling repair until it stabilizes.
+.RS +4
+\fBDescription: \fR
+.sp
+.LP
+To limit the impact of interfaces with intermittent hardware (such as a bad
+cable), \fBin.mpathd\fR will not consider an IP interface with a frequently
+changing link state as repaired until the link state stabilizes.
+.RE
+
+.sp
+.LP
+Invalid failure detection time of \fItime\fR, assuming default 10000 ms
+.RS +4
+\fBDescription: \fR
+.sp
+.LP
+An invalid value was encountered for \fBFAILURE_DETECTION_TIME\fR in the
+\fB/etc/default/mpathd\fR file.
+.RE
+
+.sp
+.LP
+Too small failure detection time of \fItime\fR, assuming minimum of 100 ms
+.RS +4
+\fBDescription: \fR
+.sp
+.LP
+The minimum value that can be specified for \fBFAILURE_DETECTION_TIME\fR is
+currently 100 milliseconds.
+.RE
+
+.sp
+.LP
+Invalid value for FAILBACK \fIvalue\fR
+.RS +4
+\fBDescription: \fR
+.sp
+.LP
+Valid values for the boolean variable \fBFAILBACK\fR are \fByes\fR or \fBno\fR.
+.RE
+
+.sp
+.LP
+Invalid value for TRACK_INTERFACES_ONLY_WITH_GROUPS \fIvalue\fR
+.RS +4
+\fBDescription: \fR
+.sp
+.LP
+Valid values for the boolean variable \fBTRACK_INTERFACES_ONLY_WITH_GROUPS\fR
+are \fByes\fR or \fBno\fR.
+.RE
+
+.sp
+.LP
+Cannot meet requested failure detection time of \fItime\fR ms on (inet[6]
+\fIinterface_name\fR) new failure detection time for group \fIgroup_name\fR is
+\fItime\fR ms
+.RS +4
+\fBDescription: \fR
+.sp
+.LP
+The round trip time for \fBICMP\fR probes is higher than necessary to maintain
+the current failure detection time. The network is probably congested or the
+probe targets are loaded. \fBin.mpathd\fR automatically increases the failure
+detection time to whatever it can achieve under these conditions.
+.RE
+
+.sp
+.LP
+Improved failure detection time \fItime\fR ms on (inet[6] \fIinterface_name\fR)
+for group \fIgroup_name\fR
+.RS +4
+\fBDescription: \fR
+.sp
+.LP
+The round trip time for \fBICMP\fR probes has now decreased and \fBin.mpathd\fR
+has lowered the failure detection time correspondingly.
+.RE
+
+.sp
+.LP
+IP interface failure detected on \fIinterface_name\fR
+.RS +4
+\fBDescription: \fR
+.sp
+.LP
+\fBin.mpathd\fR has detected a failure on \fIinterface_name\fR, and has set the
+\fBIFF_FAILED\fR flag on \fIinterface_name\fR, ensuring that it will not be
+used for IP data traffic.
+.RE
+
+.sp
+.LP
+IP interface repair detected on \fIinterface_name\fR
+.RS +4
+\fBDescription: \fR
+.sp
+.LP
+\fBin.mpathd\fR has detected a repair on \fIinterface_name\fR, and has cleared
+the \fBIFF_FAILED\fR flag. Depending on the administrative configuration, the
+\fIinterface_name\fR may again be used for IP data traffic.
+.RE
+
+.sp
+.LP
+All IP interfaces in group \fIgroup\fR are now unusable
+.RS +4
+\fBDescription: \fR
+.sp
+.LP
+\fBin.mpathd\fR has determined that none of the IP interfaces in \fIgroup\fR
+can be used for IP data traffic, breaking network connectivity for the group.
+.RE
+
+.sp
+.LP
+At least 1 IP interface (\fIinterface_name\fR) in group \fIgroup\fR is now
+usable
+.RS +4
+\fBDescription: \fR
+.sp
+.LP
+\fBin.mpathd\fR has determined that at least one of the IP interfaces in
+\fIgroup\fR can again be used for IP data traffic, restoring network
+connectivity for the group.
+.RE
+
+.sp
+.LP
+The link has gone down on \fIinterface_name\fR
+.RS +4
+\fBDescription: \fR
+.sp
+.LP
+\fBin.mpathd\fR has detected that the \fBIFF_RUNNING\fR flag for
+\fIinterface_name\fR has been cleared, indicating that the link has gone down.
+.RE
+
+.sp
+.LP
+The link has come up on \fIinterface_name\fR
+.RS +4
+\fBDescription: \fR
+.sp
+.LP
+\fBin.mpathd\fR has detected that the \fBIFF_RUNNING\fR flag for
+\fIinterface_name\fR has been set, indicating that the link has come up.
+.RE
+
diff --git a/usr/src/man/man8/in.ndpd.8 b/usr/src/man/man8/in.ndpd.8
new file mode 100644
index 0000000000..dd0f69f773
--- /dev/null
+++ b/usr/src/man/man8/in.ndpd.8
@@ -0,0 +1,273 @@
+'\" te
+.\" Copyright (C) 2003, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH IN.NDPD 8 "September 12, 2020"
+.SH NAME
+in.ndpd \- daemon for IPv6 autoconfiguration
+.SH SYNOPSIS
+.nf
+\fB/usr/lib/inet/in.ndpd\fR [\fB-adt\fR] [\fB-f\fR \fIconfig_file\fR]
+.fi
+
+.SH DESCRIPTION
+\fBin.ndpd\fR provides both the host and router autoconfiguration components of
+Neighbor Discovery for IPv6 and Stateless and Stateful Address
+Autoconfiguration for IPv6. In particular, \fBin.ndpd\fR implements:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+router discovery;
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+prefix discovery;
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+parameter discovery;
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+invocation of stateful address autoconfiguration;
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+stateless address autoconfiguration; and
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+privacy extensions for stateless address autoconfiguration.
+.RE
+.sp
+.LP
+Other aspects of Neighbor Discovery are implemented by \fBip6\fR(4P),
+including:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+address resolution;
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+neighbor unreachability detection; and
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+redirect.
+.RE
+.sp
+.LP
+The duplicate address detection function is implemented by the system kernel.
+.sp
+.LP
+\fBin.ndpd\fR is managed by the service management facility (SMF), by means of
+the service identifier:
+.sp
+.in +2
+.nf
+svc:/network/routing/ndp:default
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+If the \fB/etc/inet/ndpd.conf\fR file does not exist or does not set the
+variable \fBAdvSendAdvertisements\fR to true for a network interface, then
+\fBin.ndpd\fR will make the node a host for that interface, that is, sending
+router solicitation messages and then using router advertisement messages it
+receives to autoconfigure the node. Note that \fBin.ndpd\fR only autoconfigures
+the addresses of global or site-local scope from the prefix advertisement.
+.sp
+.LP
+If \fBAdvSendAdvertisements\fR is set to true for an interface, then
+\fBin.ndpd\fR will perform router functions on that interface, that is, sending
+router advertisement messages to autoconfigure the attached hosts, but not use
+any advertisements it receives for autoconfiguration. However, when sending
+advertisements, \fBin.ndpd\fR will use the advertisements it sends itself to
+autoconfigure its prefixes.
+.sp
+.LP
+Stateless autoconfiguration requires no manual configuration of hosts, minimal
+(if any) configuration of routers, and no additional servers. The stateless
+mechanism enables a host to generate its own addresses and uses local
+information as well as non-local information that is advertised by routers to
+generate the addresses. \fBin.ndpd\fR will plumb logical interfaces for each of
+these addresses.
+.sp
+.LP
+Stateful autoconfiguration involves the \fBdhcpagent\fR(8) daemon and the use
+of the DHCPv6 protocol. The \fBdhcpagent\fR daemon is responsible for plumbing
+the logical interfaces for the acquired addresses, maintaining the leases, and
+handling duplicate addresses. \fBin.ndpd\fR starts the \fBdhcpagent\fR daemon
+automatically and signals when DHCPv6 should be started. \fBin.ndpd\fR also
+detects when \fBdhcpagent\fR configures the logical interfaces, and sets the
+appropriate prefix length on each according to received Routing Advertisement
+messages. \fBin.ndpd\fR will not stop \fBdhcpagent\fR; use \fBifconfig\fR(8)
+to control \fBdhcpagent\fR if necessary.
+.sp
+.LP
+Temporary addresses that are autoconfigured for an interface can also be
+implemented. A temporary address token is enabled for one or more interfaces on
+a host. However, unlike standard, autoconfigured IPv6 addresses, a temporary
+address consists of the site prefix and a randomly generated 64 bit number.
+This random number becomes the interface ID segment of the IPv6 address. A
+link-local address is not generated with the temporary address as the interface
+ID.
+.sp
+.LP
+If the kernel detects a duplicate temporary address, \fBin.ndpd\fR will
+automatically choose another.
+.sp
+.LP
+Routers advertise all prefixes that have been assigned on the link. IPv6 hosts
+use Neighbor Discovery to obtain a subnet prefix from a local router. Hosts
+automatically create IPv6 addresses by combining the subnet prefix with an
+interface IDs that is generated from an interface's MAC address. In the absence
+of routers, a host can generate only link-local addresses. Link-local addresses
+can only be used for communication with nodes on the same link.
+.sp
+.LP
+For information on how to enable IPv6 address autoconfiguration, see
+\fISystem Administration Guide: IP Services\fR.
+.SH OPTIONS
+Supported options and equivalent SMF service properties are listed below. SMF
+service properties are set using a command of the form:
+.sp
+.in +2
+.nf
+# \fBrouteadm -m ndp:default \fIkey\fR=\fIvalue\fR\fR
+.fi
+.in -2
+.sp
+
+.sp
+.ne 2
+.na
+\fB\fB-a\fR\fR
+.ad
+.sp .6
+.RS 4n
+Turn off stateless and stateful address auto configuration. When set, the
+daemon does not autoconfigure any addresses and does not renumber any
+addresses. This option does the same thing as the following lines in
+\fBndpd.conf\fR(5):
+.sp
+.in +2
+.nf
+ifdefault StatefulAddrConf off
+ifdefault StatelessAddrConf off
+.fi
+.in -2
+
+Use of this option is equivalent to setting the \fBstateless_addr_conf\fR
+property to false.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-d\fR\fR
+.ad
+.sp .6
+.RS 4n
+Turn on large amounts of debugging output on \fBstdout\fR. When set, the
+program runs in the foreground and stays attached to the controlling terminal.
+Use of this option is equivalent to setting the \fBdebug\fR property to true.
+.RE
+
+.sp
+.ne 2
+.na
+\fB-f\fR \fIconfig_file\fR
+.ad
+.sp .6
+.RS 4n
+Use \fIconfig_file\fR for configuration information instead of the default
+\fB/etc/inet/ndpd.conf\fR. Use of this option is equivalent to setting the
+\fBconfig_file\fR property to the configuration file to be used.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-t\fR\fR
+.ad
+.sp .6
+.RS 4n
+Turn on tracing (printing) of all sent and received packets to \fBstdout\fR.
+When set, the program runs in the foreground and stays attached to the
+controlling terminal. As such, this option cannot be run under the SMF.
+.RE
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/etc/inet/ndpd.conf\fR\fR
+.ad
+.RS 23n
+Configuration file. This file is not necessary on a host, but it is required on
+a router to enable \fBin.ndpd\fR to advertise autoconfiguration information to
+the hosts.
+.RE
+
+.SH SEE ALSO
+.BR icmp6 (4P),
+.BR ip6 (4P),
+.BR ndp (4P),
+.BR ndpd.conf (5),
+.BR attributes (7),
+.BR smf (7),
+.BR dhcpagent (8),
+.BR ifconfig (8),
+.BR ndp (8),
+.BR routeadm (8),
+.BR svcadm (8)
+.sp
+.LP
+Narten, T., Nordmark, E., Simpson, W. \fIRFC 2461, Neighbor Discovery for IP
+Version 6 (IPv6)\fR. The Internet Society. December 1998.
+.sp
+.LP
+Thomson, S., Narten, T. \fIRFC 2462, IPv6 Stateless Address
+Autoconfiguration\fR. The Internet Society. December 1998.
+.sp
+.LP
+Narten, T., and Draves, R. \fIRFC 3041, Privacy Extensions for Stateless
+Address Autoconfiguration in IPv6\fR. The Internet Society. January 2001.
+.SH DIAGNOSTICS
+Receipt of a \fBSIGHUP\fR signal will make \fBin.ndpd\fR restart and reread
+\fB/etc/inet/ndpd.conf\fR.
+.SH NOTES
+The \fBin.ndpd\fR daemon service is managed by the service management facility,
+\fBsmf\fR(7), under the service identifier:
+.sp
+.in +2
+.nf
+svc:/network/routing/ndp:default
+.fi
+.in -2
+
+.sp
+.LP
+Administrative actions on this service, such as enabling, disabling, or
+requesting restart, can be performed using \fBsvcadm\fR(8) or
+\fBrouteadm\fR(8).
diff --git a/usr/src/man/man8/in.rarpd.8 b/usr/src/man/man8/in.rarpd.8
new file mode 100644
index 0000000000..69b650e7b8
--- /dev/null
+++ b/usr/src/man/man8/in.rarpd.8
@@ -0,0 +1,179 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 2004 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH IN.RARPD 8 "Aug 20, 2004"
+.SH NAME
+in.rarpd, rarpd \- DARPA Reverse Address Resolution Protocol server
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/in.rarpd\fR [\fB-d\fR] \fB-a\fR
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/in.rarpd\fR [\fB-d\fR] \fIdevice\fR \fIunit\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBin.rarpd\fR starts a daemon that responds to Reverse Address Resolution
+Protocol (RARP) requests. The daemon forks a copy of itself that runs in
+background. It must be run as root.
+.sp
+.LP
+RARP is used by machines at boot time to discover their Internet Protocol (IP)
+address. The booting machine provides its Ethernet address in a \fBRARP\fR
+request message. Using the \fBethers\fR and \fBhosts\fR databases,
+\fBin.rarpd\fR maps this Ethernet address into the corresponding \fBIP\fR
+address which it returns to the booting machine in an \fBRARP\fR reply message.
+The booting machine must be listed in both databases for \fBin.rarpd\fR to
+locate its \fBIP\fR address. \fBin.rarpd\fR issues no reply when it fails to
+locate an \fBIP\fR address.
+.sp
+.LP
+\fBin.rarpd\fR uses the \fBSTREAMS-based\fR Data Link Provider Interface (DLPI)
+message set to communicate directly with the datalink device driver.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-a\fR\fR
+.ad
+.RS 6n
+Get the list of available network interfaces from \fBIP\fR using the
+\fBSIOCGIFADDR\fR ioctl and start a \fBRARP\fR daemon process on each interface
+returned.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-d\fR\fR
+.ad
+.RS 6n
+Print assorted debugging messages while executing.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRStarting An \fBin.rarpd\fR Daemon For Each Network Interface
+Name Returned From \fB/dev/ip:\fR
+.sp
+.LP
+The following command starts an \fBin.rarpd\fR for each network interface name
+returned from \fB/dev/ip:\fR
+
+.sp
+.in +2
+.nf
+example# /usr/sbin/in.rarpd \fB-a\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRStarting An \fBin.rarpd\fR Daemon On The Device \fB/dev/le\fR
+With The Device Instance Number \fB0\fR
+.sp
+.LP
+The following command starts one \fBin.rarpd\fR on the device \fB/dev/le\fR
+with the device instance number \fB0\fR.
+
+.sp
+.in +2
+.nf
+example# /usr/sbin/in.rarpd le 0
+.fi
+.in -2
+.sp
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/ethers\fR\fR
+.ad
+.RS 15n
+File or other source, as specified by \fBnsswitch.conf\fR(5).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/hosts\fR\fR
+.ad
+.RS 15n
+File or other source, as specified by \fBnsswitch.conf\fR(5).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/tftpboot\fR\fR
+.ad
+.RS 15n
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/ip\fR\fR
+.ad
+.RS 15n
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/arp\fR\fR
+.ad
+.RS 15n
+
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR svcs (1),
+.BR dlpi (4P),
+.BR ethers (5),
+.BR hosts (5),
+.BR netconfig (5),
+.BR nsswitch.conf (5),
+.BR attributes (7),
+.BR smf (7),
+.BR boot (8),
+.BR ifconfig (8),
+.BR svcadm (8)
+.sp
+.LP
+Finlayson, R., Mann, T., Mogul, J., and Theimer, M., \fIRFC 903, A Reverse
+Address Resolution Protocol\fR, Network Information Center, SRI International,
+June 1984.
+.SH NOTES
+.sp
+.LP
+The \fBin.rarpd\fR service is managed by the service management facility,
+\fBsmf\fR(7), under the service identifier:
+.sp
+.in +2
+.nf
+svc:/network/rarp
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Administrative actions on this service, such as enabling, disabling, or
+requesting restart, can be performed using \fBsvcadm\fR(8). The service's
+status can be queried using the \fBsvcs\fR(1) command.
diff --git a/usr/src/man/man8/in.rdisc.8 b/usr/src/man/man8/in.rdisc.8
new file mode 100644
index 0000000000..f7c046794c
--- /dev/null
+++ b/usr/src/man/man8/in.rdisc.8
@@ -0,0 +1,196 @@
+'\" te
+.\" Copyright (c) 2004 Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH IN.RDISC 8 "Nov 9, 2006"
+.SH NAME
+in.rdisc, rdisc \- network router discovery daemon
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/in.rdisc\fR [\fB-a\fR] [\fB-f\fR] [\fB-s\fR] [\fIsend-address\fR] [\fIreceive-address\fR]
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/in.rdisc\fR \fB-r\fR [\fB-p\fR \fIpreference\fR] [\fB-T\fR \fIinterval\fR]
+ [\fIsend-address\fR] [\fIreceive-address\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBin.rdisc\fR remains part of the software distribution of the Solaris
+Operating Environment. It is, however, not used by default. \fBin.routed\fR(8)
+includes the functionality provided by \fBin.rdisc\fR. See \fBrouteadm\fR(8)
+for details of how to specify the IPV4 routing daemon.
+.sp
+.LP
+\fBin.rdisc\fR implements the \fBICMP\fR router discovery protocol. The first
+form of the command is used on hosts and the second form is used on routers.
+.sp
+.LP
+\fBin.rdisc\fR can be invoked in either the first form (host mode) or second
+form (router mode).
+.sp
+.LP
+On a host, \fBin.rdisc\fR populates the network routing tables with default
+routes. On a router, advertises the router to all the hosts.
+.sp
+.LP
+\fBin.rdisc\fR is managed by the service management facility (SMF), by means of
+the service identifier:
+.sp
+.in +2
+.nf
+svc:/network/routing/rdisc:default
+.fi
+.in -2
+.sp
+
+.SS "Host (First Form)"
+.sp
+.LP
+On a host, \fBin.rdisc\fR listens on the \fBALL_HOSTS\fR (224.0.0.1) multicast
+address for \fBROUTER_ADVERTISE\fR messages from routers. The received messages
+are handled by first ignoring those listed router addresses with which the host
+does not share a network. Among the remaining addresses, the ones with the
+highest preference are selected as default routers and a default route is
+entered in the kernel routing table for each one of them.
+.sp
+.LP
+Optionally, \fBin.rdisc\fR can avoid waiting for routers to announce themselves
+by sending out a few \fBROUTER_SOLICITATION\fR messages to the
+\fBALL_ROUTERS\fR (224.0.0.2) multicast address when it is started.
+.sp
+.LP
+A timer is associated with each router address. The address will no longer be
+considered for inclusion in the routing tables if the timer expires before a
+new \fIadvertise\fR message is received from the router. The address will also
+be excluded from consideration if the host receives an \fIadvertise\fR message
+with the preference being maximally negative or with a lifetime of zero.
+.SS "Router (Second Form)"
+.sp
+.LP
+When \fBin.rdisc\fR is started on a router, it uses the \fBSIOCGIFCONF\fR
+\fBioctl\fR(2) to find the interfaces configured into the system and it starts
+listening on the \fBALL_ROUTERS\fR multicast address on all the interfaces that
+support multicast. It sends out \fIadvertise\fR messages to the \fBALL_HOSTS\fR
+multicast address advertising all its \fBIP\fR addresses. A few initial
+\fIadvertise\fR messages are sent out during the first 30 seconds and after
+that it will transmit \fIadvertise\fR messages approximately every 600 seconds.
+.sp
+.LP
+When \fBin.rdisc\fR receives a \fIsolicitation\fR message, it sends an
+\fIadvertise\fR message to the host that sent the \fIsolicitation\fR message.
+.sp
+.LP
+When \fBin.rdisc\fR is terminated by a signal, it sends out an \fIadvertise\fR
+message with the preference being maximally negative.
+.SH OPTIONS
+.sp
+.LP
+Supported options and equivalent SMF service properties are listed below. SMF
+service properties are set using a command of the form:
+.sp
+.in +2
+.nf
+# \fBrouteadm -m rdisc:default \fIkey\fR=\fIvalue\fR\fR
+.fi
+.in -2
+.sp
+
+.sp
+.ne 2
+.na
+\fB\fB-a\fR\fR
+.ad
+.RS 17n
+Accept all routers independent of the preference they have in their
+\fIadvertise\fR messages. Normally, \fBin.rdisc\fR only accepts (and enters in
+the kernel routing tables) the router or routers with the highest preference.
+Use of this option is equivalent to setting the \fBaccept_all\fR property to
+true.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR\fR
+.ad
+.RS 17n
+Run \fBin.rdisc\fR forever even if no routers are found. Normally,
+\fBin.rdisc\fR gives up if it has not received any \fIadvertise\fR message
+after soliciting three times, in which case it exits with a non-zero exit code.
+If \fB-f\fR is not specified in the first form then \fB-s\fR must be specified.
+For SMF execution, this option is required.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-r\fR\fR
+.ad
+.RS 17n
+Act as a router, rather than a host. Use of this option is equivalent to
+setting the \fBact_as_router\fR property to true.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR\fR
+.ad
+.RS 17n
+Send three \fIsolicitation\fR messages initially to quickly discover the
+routers when the system is booted. When \fB-s\fR is specified, \fBin.rdisc\fR
+exits with a non-zero exit code if it can not find any routers. This can be
+overridden with the \fB-f\fR option. This option is not compatible with SMF
+execution and is not supported for the \fBrdisc\fR service.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR \fIpreference\fR\fR
+.ad
+.RS 17n
+Set the preference transmitted in the \fIsolicitation\fR messages. The default
+is zero. Use of this option is equivalent to setting the \fBpreference\fR
+property.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-T\fR \fIinterval\fR\fR
+.ad
+.RS 17n
+Set the interval between transmitting the \fIadvertise\fR messages. The default
+time is 600 seconds. Use of this option is equivalent to setting the
+\fBtransmit_interval\fR property.
+.RE
+
+.sp
+.LP
+The \fBsend-address\fR and \fBreceive-address\fR daemon options can be set by
+means of the \fBsend_address\fR and \fBreceive_address\fR properties.
+.SH SEE ALSO
+.sp
+.LP
+.BR ioctl (2),
+.BR icmp (4P),
+.BR inet (4P),
+.BR gateways (5),
+.BR attributes (7),
+.BR smf (7),
+.BR in.routed (8),
+.BR routeadm (8),
+.BR svcadm (8)
+.sp
+.LP
+Deering, S.E., editor, \fIICMP Router Discovery Messages\fR, \fBRFC\fR 1256,
+Network Information Center, SRI International, Menlo Park, California,
+September 1991.
diff --git a/usr/src/man/man8/in.rexecd.8 b/usr/src/man/man8/in.rexecd.8
new file mode 100644
index 0000000000..c320bd21d4
--- /dev/null
+++ b/usr/src/man/man8/in.rexecd.8
@@ -0,0 +1,185 @@
+'\" te
+.\" Copyright 1989 AT&T
+.\" Copyright (C) 2004, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH IN.REXECD 8 "Nov 4, 2004"
+.SH NAME
+in.rexecd, rexecd \- remote execution server
+.SH SYNOPSIS
+.LP
+.nf
+\fBin.rexecd\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBin.rexecd\fR is the server for the \fBrexec\fR(3SOCKET) routine. The server
+provides remote execution facilities with authentication based on user names
+and passwords. It is invoked automatically as needed by \fBinetd\fR(8), and
+then executes the following protocol:
+.RS +4
+.TP
+1.
+The server reads characters from the socket up to a null (\fB\e0\fR) byte.
+The resultant string is interpreted as an \fBASCII\fR number, base 10.
+.RE
+.RS +4
+.TP
+2.
+If the number received in step 1 is non-zero, it is interpreted as the port
+number of a secondary stream to be used for the \fBstderr\fR. A second
+connection is then created to the specified port on the client's machine.
+.RE
+.RS +4
+.TP
+3.
+A null terminated user name of at most 16 characters is retrieved on the
+initial socket.
+.RE
+.RS +4
+.TP
+4.
+A null terminated password of at most 16 characters is retrieved on the
+initial socket.
+.RE
+.RS +4
+.TP
+5.
+A null terminated command to be passed to a shell is retrieved on the
+initial socket. The length of the command is limited by the upper bound on the
+size of the system's argument list.
+.RE
+.RS +4
+.TP
+6.
+\fBrexecd\fR then validates the user as is done at login time and, if the
+authentication was successful, changes to the user's home directory, and
+establishes the user and group protections of the user. If any of these steps
+fail the connection is aborted and a diagnostic message is returned.
+.RE
+.RS +4
+.TP
+7.
+A null byte is returned on the connection associated with the \fBstderr\fR
+and the command line is passed to the normal login shell of the user. The
+shell inherits the network connections established by \fBrexecd\fR.
+.RE
+.SH USAGE
+.sp
+.LP
+\fBin.rexecd\fR and \fBrexecd\fR are IPv6-enabled. See \fBip6\fR(4P).
+.SH SEE ALSO
+.sp
+.LP
+.BR svcs (1),
+.BR rexec (3SOCKET),
+.BR ip6 (4P),
+.BR attributes (7),
+.BR smf (7),
+.BR inetadm (8),
+.BR inetd (8),
+.BR svcadm (8)
+.SH DIAGNOSTICS
+.sp
+.LP
+All diagnostic messages are returned on the connection associated with the
+\fBstderr\fR, after which any network connections are closed. An error is
+indicated by a leading byte with a value of 1 (0 is returned in step 7 above
+upon successful completion of all the steps prior to the command execution).
+.sp
+.ne 2
+.na
+\fB\fBusername too long\fR\fR
+.ad
+.RS 24n
+The name is longer than 16 characters.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpassword too long\fR\fR
+.ad
+.RS 24n
+The password is longer than 16 characters.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcommand too long\fR\fR
+.ad
+.RS 24n
+The command line passed exceeds the size of the argument list (as configured
+into the system).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBLogin incorrect.\fR\fR
+.ad
+.RS 24n
+No password file entry for the user name existed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPassword incorrect.\fR\fR
+.ad
+.RS 24n
+The wrong password was supplied.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBNo remote directory.\fR\fR
+.ad
+.RS 24n
+The \fBchdir\fR command to the home directory failed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBTry again.\fR\fR
+.ad
+.RS 24n
+A \fBfork\fR by the server failed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/bin/sh: ...\fR\fR
+.ad
+.RS 24n
+The user's login shell could not be started.
+.RE
+
+.SH NOTES
+.sp
+.LP
+The \fBin.rexecd\fR service is managed by the service management facility,
+\fBsmf\fR(7), under the service identifier:
+.sp
+.in +2
+.nf
+svc:/network/rexec:default
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Administrative actions on this service, such as enabling, disabling, or
+requesting restart, can be performed using \fBsvcadm\fR(8). Responsibility for
+initiating and restarting this service is delegated to \fBinetd\fR(8). Use
+\fBinetadm\fR(8) to make configuration changes and to view configuration
+information for this service. The service's status can be queried using the
+\fBsvcs\fR(1) command.
diff --git a/usr/src/man/man8/in.ripngd.8 b/usr/src/man/man8/in.ripngd.8
new file mode 100644
index 0000000000..38eb9ee0f1
--- /dev/null
+++ b/usr/src/man/man8/in.ripngd.8
@@ -0,0 +1,231 @@
+'\" te
+.\" Copyright (C) 2006, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH IN.RIPNGD 8 "Jan 26, 2007"
+.SH NAME
+in.ripngd \- network routing daemon for IPv6
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/in.ripngd\fR [\fB-s\fR] [\fB-q\fR] [\fB-t\fR] [\fB-p\fR \fIn\fR] [\fB-P\fR] [\fB-v\fR ]
+ [\fIlogfile\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBin.ripngd\fR is the IPv6 equivalent of \fBin.routed\fR(8). It is invoked at
+boot time to manage the network routing tables. The routing daemon uses the
+Routing Information Protocol for IPv6.
+.sp
+.LP
+\fBin.ripngd\fR is managed by the service management facility (SMF), by means
+of the service identifier:
+.sp
+.in +2
+.nf
+svc:/network/routing/ripng:default
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+In normal operation, \fBin.ripngd\fR listens on the \fBudp\fR(4P) socket port
+521 for routing information packets. If the host is an internetwork router, it
+periodically supplies copies of its routing tables to any directly connected
+hosts and networks.
+.sp
+.LP
+When \fBin.ripngd\fR is started, it uses the \fBSIOCGLIFCONF\fR \fBioctl\fR(2)
+to find those directly connected IPv6 interfaces configured into the system and
+marked "up"; the software loopback interface is ignored. If multiple interfaces
+are present, it is assumed the host will forward packets between networks.
+\fBin.ripngd\fR then multicasts a request packet on each IPv6 interface and
+enters a loop, listening for request and response packets from other hosts.
+.sp
+.LP
+When a request packet is received, \fBin.ripngd\fR formulates a reply based on
+the information maintained in its internal tables. The response packet contains
+a list of known routes. With each route is a number specifying the number of
+bits in the prefix. The prefix is the number of bits in the high order part of
+an address that indicate the subnet or network that the route describes. Each
+route reported also has a "\fIhop count\fR" metric. A count of 16 or greater is
+considered "infinity." The metric associated with each route returned provides
+a metric relative to the sender.
+.sp
+.LP
+The request packets received by \fBin.ripngd\fR are used to update the routing
+tables if one of the following conditions is satisfied:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+No routing table entry exists for the destination network or host, and the
+metric indicates the destination is "reachable", that is, the \fIhop count\fR
+is not infinite.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The source host of the packet is the same as the router in the existing routing
+table entry. That is, updated information is being received from the very
+internetwork router through which packets for the destination are being routed.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The existing entry in the routing table has not been updated for a period of
+time, defined to be 90 seconds, and the route is at least as cost-effective as
+the current route.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The new route describes a shorter route to the destination than the one
+currently stored in the routing tables; this is determined by comparing the
+metric of the new route against the one stored in the table.
+.RE
+.sp
+.LP
+When an update is applied, \fBin.ripngd\fR records the change in its internal
+tables and generates a response packet to all directly connected hosts and
+networks. To allow possible unstable situations to settle, \fBin.ripngd\fR
+waits a short period of time (no more than 30 seconds) before modifying the
+kernel's routing tables.
+.sp
+.LP
+In addition to processing incoming packets, \fBin.ripngd\fR also periodically
+checks the routing table entries. If an entry has not been updated for 3
+minutes, the entry's metric is set to infinity and marked for deletion.
+Deletions are delayed an additional 60 seconds to insure the invalidation is
+propagated throughout the internet.
+.sp
+.LP
+Hosts acting as internetwork routers gratuitously supply their routing tables
+every 30 seconds to all directly connected hosts and networks.
+.SH OPTIONS
+.sp
+.LP
+\fB\fR\fBin.ripngd\fR supports the options listed below. Listed with the
+options are the equivalent SMF property values. These are set for the
+\fBripng:default\fR service with a command of the form:
+.sp
+.in +2
+.nf
+# \fBrouteadm -m ripng:default \fIkey\fR=\fIvalue\fR\fR
+.fi
+.in -2
+.sp
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR \fIn\fR\fR
+.ad
+.RS 8n
+Send and receive the routing packets from other routers using the \fBUDP \fR
+port number \fIn\fR. Use of this option is equivalent to setting the
+\fBudp_port\fR property.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-P\fR\fR
+.ad
+.RS 8n
+Do not use poison reverse. Use of this option is equivalent to setting the
+\fBpoison_reverse\fR property to false.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-q\fR\fR
+.ad
+.RS 8n
+Do not supply routing information. Use of this option is equivalent to setting
+the \fBquiet_mode\fR property to true.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR\fR
+.ad
+.RS 8n
+Force \fBin.ripngd\fR to supply routing information whether it is acting as an
+internetwork router or not. Use of this option is equivalent to setting the
+\fBsupply_routes\fR property to true.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-t\fR\fR
+.ad
+.RS 8n
+Print all packets sent or received to standard output. \fBin.ripngd\fR will not
+divorce itself from the controlling terminal. Accordingly, interrupts from the
+keyboard will kill the process. Not supported by the \fBripng\fR service.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.RS 8n
+Print all changes made to the routing tables to standard output with a
+timestamp. Use of this option is equivalent to setting the \fBverbose\fR
+property to true.
+.sp
+Any other argument supplied to this option is interpreted as the name of the
+file in which the actions of \fBin.ripngd\fR, as specified by this option or by
+\fB-t\fR, should be logged instead of being sent to standard output.
+.sp
+The logfile can be specified for the \fBripng\fR service by means of the
+\fBlog_file\fR property.
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR ioctl (2),
+.BR udp (4P),
+.BR attributes (7),
+.BR smf (7),
+.BR in.routed (8),
+.BR routeadm (8),
+.BR svcadm (8)
+.sp
+.LP
+G. Malkin, R. Minnear, \fIRFC 2080, RIPng for IPv6\fR, January 1997.
+.SH NOTES
+.sp
+.LP
+The kernel's routing tables may not correspond to those of \fBin.ripngd\fR for
+short periods of time while processes that utilize existing routes exit; the
+only remedy for this is to place the routing process in the kernel.
+.sp
+.LP
+\fBin.ripngd\fR currently does not support all of the functionality of
+\fBin.routed\fR(8). Future releases may support more if appropriate.
+.sp
+.LP
+\fBin.ripngd\fR initially obtains a routing table by examining the interfaces
+configured on a machine. It then sends a request on all directly connected
+networks for more routing information. \fBin.ripngd\fR does not recognize or
+use any routing information already established on the machine prior to
+startup. With the exception of interface changes, \fBin.ripngd\fR does not see
+any routing table changes that have been done by other programs on the machine,
+for example, routes added, deleted or flushed by means of the \fBroute\fR(8)
+command. Therefore, these types of changes should not be done while
+\fBin.ripngd\fR is running. Rather, shut down \fBin.ripngd\fR, make the changes
+required, and then restart \fBin.ripngd\fR.
diff --git a/usr/src/man/man8/in.rlogind.8 b/usr/src/man/man8/in.rlogind.8
new file mode 100644
index 0000000000..0c9fb64f98
--- /dev/null
+++ b/usr/src/man/man8/in.rlogind.8
@@ -0,0 +1,395 @@
+'\" te
+.\" Copyright 1989 AT&T
+.\" Copyright (C) 2005, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH IN.RLOGIND 8 "February 5, 2022"
+.SH NAME
+in.rlogind, rlogind \- remote login server
+.SH SYNOPSIS
+.nf
+\fB/usr/sbin/in.rlogind\fR [\fB-k5eExXciPp\fR] [\fB-s\fR \fItos\fR] [\fB-S\fR \fIkeytab\fR]
+ [\fB-M\fR \fIrealm\fR]
+.fi
+
+.SH DESCRIPTION
+\fBin.rlogind\fR is the server for the \fBrlogin\fR(1) program. The server
+provides a remote login facility with authentication based on Kerberos V5 or
+privileged port numbers.
+.sp
+.LP
+\fBin.rlogind\fR is invoked by \fBinetd\fR(8) when a remote login connection
+is established. When Kerberos V5 authentication is required (see option
+\fB-k\fR below), the authentication sequence is as follows:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Check Kerberos V5 authentication.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Check authorization according to the rules in \fBkrb5_auth_rules\fR(7).
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Prompt for a password if any checks fail and \fB/etc/pam.conf\fR is configured
+to do so.
+.RE
+.sp
+.LP
+In order for Kerberos authentication to work, a \fBhost/\fR\fI<FQDN>\fR
+Kerberos principal must exist for each Fully Qualified Domain Name associated
+with the \fBin.rlogind\fR server. Each of these \fBhost/\fR\fI<FQDN>\fR
+principals must have a \fBkeytab\fR entry in the \fB/etc/krb5/krb5.keytab\fR
+file on the \fBin.rlogind\fR server. An example principal might be:
+.sp
+.LP
+\fBhost/bigmachine.eng.example.com\fR
+.sp
+.LP
+See \fBkadmin\fR(8) for instructions on adding a principal to a
+\fBkrb5.keytab\fR file. See \fI\fR for a discussion of Kerberos
+authentication.
+.sp
+.LP
+If Kerberos V5 authentication is not enabled, then the authentication procedure
+follows the standard \fBrlogin\fR protocol:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The server checks the client's source port. If the port is not in the range
+512-1023, the server aborts the connection.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The server checks the client's source address. If an entry for the client
+exists in both \fB/etc/hosts\fR and \fB/etc/hosts.equiv\fR, a user logging in
+from the client is not prompted for a password. If the address is associated
+with a host for which no corresponding entry exists in \fB/etc/hosts\fR, the
+user is prompted for a password, regardless of whether or not an entry for the
+client is present in \fB/etc/hosts.equiv\fR. See \fBhosts\fR(5) and
+\fBhosts.equiv\fR(5).
+.RE
+.sp
+.LP
+Once the source port and address have been checked, \fBin.rlogind\fR allocates
+a pseudo-terminal and manipulates file descriptors so that the subsidiary half
+of the pseudo-terminal becomes the \fBstdin\fR, \fBstdout\fR, and \fBstderr\fR
+for a login process. The login process is an instance of the \fBlogin\fR(1)
+program, invoked with the \fB-r\fR.
+.sp
+.LP
+The login process then proceeds with the \fBpam\fR(3PAM) authentication
+process. See \fBSECURITY\fR below. If automatic authentication fails, it
+reprompts the user to login.
+.sp
+.LP
+The parent of the login process manipulates the manager side of the
+pseudo-terminal, operating as an intermediary between the login process and the
+client instance of the \fBrlogin\fR program. In normal operation, a packet
+protocol is invoked to provide Ctrl-S and Ctrl-Q type facilities and propagate
+interrupt signals to the remote programs. The login process propagates the
+client terminal's baud rate and terminal type, as found in the environment
+variable, \fBTERM\fR.
+.SH OPTIONS
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-5\fR\fR
+.ad
+.RS 13n
+Same as \fB-k\fR, for backwards compatibility.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-c\fR\fR
+.ad
+.RS 13n
+Requires Kerberos V5 clients to present a cryptographic checksum of initial
+connection information like the name of the user that the client is trying to
+access in the initial authenticator. This checksum provides additionl security
+by preventing an attacker from changing the initial connection information.
+This option is mutually exclusive with the \fB-i\fR option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-e\fR\fR
+.ad
+.RS 13n
+Creates an encrypted session.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-E\fR\fR
+.ad
+.RS 13n
+Same as \fB-e\fR, for backwards compatibility.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-i\fR\fR
+.ad
+.RS 13n
+Ignores authenticator checksums if provided. This option ignores authenticator
+checksums presented by current Kerberos clients to protect initial connection
+information. Option \fB-i\fR is the opposite of option \fB-c\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-k\fR\fR
+.ad
+.RS 13n
+Allows Kerberos V5 authentication with the \fB\&.k5login\fR access control file
+to be trusted. If this authentication system is used by the client and the
+authorization check is passed, then the user is allowed to log in.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-M\fR \fIrealm\fR\fR
+.ad
+.RS 13n
+Uses the indicated Kerberos V5 realm. By default, the daemon will determine its
+realm from the settings in the \fBkrb5.conf\fR(5) file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR\fR
+.ad
+.RS 13n
+Prompts for authentication only if other authentication checks fail.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-P\fR\fR
+.ad
+.RS 13n
+Prompts for a password in addition to other authentication methods.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR \fItos\fR\fR
+.ad
+.RS 13n
+Sets the \fBIP\fR \fBTOS\fR option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-S\fR \fIkeytab\fR\fR
+.ad
+.RS 13n
+Sets the \fBKRB5\fR keytab file to use. The \fB/etc/krb5/krb5.keytab\fR file is
+used by default.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-x\fR\fR
+.ad
+.RS 13n
+Same as \fB-e\fR, for backwards compatibility.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-X\fR\fR
+.ad
+.RS 13n
+Same as \fB-e\fR, for backwards compatibility.
+.RE
+
+.SH USAGE
+\fBrlogind\fR and \fBin.rlogind\fR are IPv6-enabled. See \fBip6\fR(4P).
+\fBIPv6\fR is not currently supported with Kerberos V5 authentication.
+.sp
+.LP
+Typically, Kerberized \fBrlogin\fR service runs on port 543 (klogin) and
+Kerberized, encrypted \fBrlogin\fR service runs on port 2105 (eklogin). The
+corresponding FMRI entries are:
+.sp
+.in +2
+.nf
+svc:/network/login:klogin (rlogin with kerberos)
+svc:/network/login:eklogin (rlogin with kerberos and encryption)
+.fi
+.in -2
+.sp
+
+.SH SECURITY
+\fBin.rlogind\fR uses \fBpam\fR(3PAM) for authentication, account management,
+and session management. The \fBPAM\fR configuration policy, listed through
+\fB/etc/pam.conf\fR, specifies the modules to be used for \fBin.rlogind\fR.
+Here is a partial \fBpam.conf\fR file with entries for the \fBrlogin\fR command
+using the "rhosts" and UNIX authentication modules, and the UNIX account,
+session management, and password management modules.
+.sp
+
+.sp
+.TS
+l l l
+l l l .
+rlogin auth sufficient pam_rhosts_auth.so.1
+rlogin auth requisite pam_authtok_get.so.1
+rlogin auth required pam_dhkeys.so.1
+rlogin auth required pam_unix_auth.so.1
+
+rlogin account required pam_unix_roles.so.1
+rlogin account required pam_unix_projects.so.1
+rlogin account required pam_unix_account.so.1
+
+rlogin session required pam_unix_session.so.1
+.TE
+
+.sp
+.LP
+With this configuration, the server checks the client's source address. If an
+entry for the client exists in both \fB/etc/hosts\fR and
+\fB/etc/hosts.equiv\fR, a user logging in from the client is not prompted for a
+password. If the address is associated with a host for which no corresponding
+entry exists in \fB/etc/hosts\fR, the user is prompted for a password,
+regardless of whether or not an entry for the client is present in
+\fB/etc/hosts.equiv\fR. See \fBhosts\fR(5) and \fBhosts.equiv\fR(5).
+.sp
+.LP
+When running a Kerberized rlogin service (with or without the encryption
+option), the pam service name that should be used is "\fBkrlogin\fR".
+.sp
+.LP
+If there are no entries for the \fBrlogin\fR service, then the entries for the
+"other" service will be used. If multiple authentication modules are listed,
+then the user may be prompted for multiple passwords. Removing the
+\fBpam_rhosts_auth.so.1\fR entry will disable the \fB/etc/hosts.equiv\fR and
+\fB~/.rhosts\fR authentication protocol and the user would always be forced to
+type the password. The \fIsufficient\fR flag indicates that authentication
+through the \fBpam_rhosts_auth.so.1\fR module is sufficient to authenticate the
+user. Only if this authentication fails is the next authentication module used.
+.SH SEE ALSO
+.BR login (1),
+.BR rlogin (1),
+.BR svcs (1),
+.BR pam (3PAM),
+.BR hosts (5),
+.BR hosts.equiv (5),
+.BR krb5.conf (5),
+.BR pam.conf (5),
+.BR attributes (7),
+.BR environ (7),
+.BR krb5_auth_rules (7),
+.BR pam_authtok_check (7),
+.BR pam_authtok_get (7),
+.BR pam_authtok_store (7),
+.BR pam_dhkeys (7),
+.BR pam_passwd_auth (7),
+.BR pam_unix_account (7),
+.BR pam_unix_auth (7),
+.BR pam_unix_session (7),
+.BR smf (7),
+.BR in.rshd (8),
+.BR inetadm (8),
+.BR inetd (8),
+.BR kadmin (8),
+.BR svcadm (8)
+.sp
+.LP
+\fI\fR
+.SH DIAGNOSTICS
+All diagnostic messages are returned on the connection associated with the
+\fBstderr\fR, after which any network connections are closed. An error is
+indicated by a leading byte with a value of 1.
+.sp
+.ne 2
+.na
+\fB\fBHostname for your address unknown.\fR\fR
+.ad
+.sp .6
+.RS 4n
+No entry in the host name database existed for the client's machine.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBTry again.\fR\fR
+.ad
+.sp .6
+.RS 4n
+A \fIfork\fR by the server failed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/bin/sh:\fR .\|.\|.\fR
+.ad
+.sp .6
+.RS 4n
+The user's login shell could not be started.
+.RE
+
+.SH NOTES
+The authentication procedure used here assumes the integrity of each client
+machine and the connecting medium. This is insecure, but it is useful in an
+``open'' environment.
+.sp
+.LP
+A facility to allow all data exchanges to be encrypted should be present.
+.sp
+.LP
+The \fBpam_unix\fR(7) module is no longer supported. Similar functionality is
+provided by \fBpam_authtok_check\fR(7), \fBpam_authtok_get\fR(7),
+\fBpam_authtok_store\fR(7), \fBpam_dhkeys\fR(7), \fBpam_passwd_auth\fR(7),
+\fBpam_unix_account\fR(7), \fBpam_unix_auth\fR(7), and
+\fBpam_unix_session\fR(7).
+.sp
+.LP
+The \fBin.rlogind\fR service is managed by the service management facility,
+\fBsmf\fR(7), under the service identifier:
+.sp
+.in +2
+.nf
+svc:/network/login:rlogin (rlogin)
+svc:/network/login:klogin (rlogin with kerberos)
+svc:/network/login:eklogin (rlogin with kerberos and encryption)
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Administrative actions on this service, such as enabling, disabling, or
+requesting restart, can be performed using \fBsvcadm\fR(8). Responsibility for
+initiating and restarting this service is delegated to \fBinetd\fR(8). Use
+\fBinetadm\fR(8) to make configuration changes and to view configuration
+information for this service. The service's status can be queried using the
+\fBsvcs\fR(1) command.
diff --git a/usr/src/man/man8/in.routed.8 b/usr/src/man/man8/in.routed.8
new file mode 100644
index 0000000000..3c7426063b
--- /dev/null
+++ b/usr/src/man/man8/in.routed.8
@@ -0,0 +1,507 @@
+'\" te
+.\" Copyright (c) 2008 Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH IN.ROUTED 8 "Jul 24, 2008"
+.SH NAME
+in.routed, routed \- network routing daemon
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/in.routed\fR [\fB-AdghmnqsStVz\fR] [\fB-T\fR \fItracefile\fR [\fB-v\fR]]
+ [\fB-F\fR \fInet\fR[/mask ][,metric]] [\fB-P\fR \fIparams\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The daemon \fBin.routed\fR, often referred to as \fBrouted\fR, is invoked at
+boot time to manage the network routing tables. It uses Routing Information
+Protocol, RIPv1 (RFC 1058), RIPv2 (RFC 2453), and Internet Router Discovery
+Protocol (RFC 1256) to maintain the kernel routing table. The RIPv1 protocol is
+based on the reference 4.3BSD daemon.
+.sp
+.LP
+\fBin.routed\fR is managed by means of the service management facility (SMF),
+using the fault management resource identifier (FMRI):
+.sp
+.in +2
+.nf
+svc:/network/routing/route:default
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The daemon listens on a \fBudp\fR socket for the \fBroute\fR service (see
+\fBservices\fR(5)) for Routing Information Protocol packets. It also sends and
+receives multicast Router Discovery ICMP messages. If the host is a router,
+\fBin.routed\fR periodically supplies copies of its routing tables to any
+directly connected hosts and networks. It also advertises or solicits default
+routes using Router Discovery ICMP messages.
+.sp
+.LP
+When started (or when a network interface is later turned on), \fBin.routed\fR
+uses an \fBAF_ROUTE\fR address family facility to find those directly connected
+interfaces configured into the system and marked "up". It adds necessary routes
+for the interfaces to the kernel routing table. Soon after being first started,
+and provided there is at least one interface on which RIP has not been
+disabled, \fBin.routed\fR deletes all pre-existing non-static routes in the
+kernel table. Static routes in the kernel table are preserved and included in
+RIP responses if they have a valid RIP metric (see \fBroute\fR(8)).
+.sp
+.LP
+If more than one interface is present (not counting the loopback interface), it
+is assumed that the host should forward packets among the connected networks.
+After transmitting a RIP request and Router Discovery Advertisements or
+Solicitations on a new interface, the daemon enters a loop, listening for RIP
+request and response and Router Discovery packets from other hosts.
+.sp
+.LP
+When a request packet is received, \fBin.routed\fR formulates a reply based on
+the information maintained in its internal tables. The response packet
+generated contains a list of known routes, each marked with a "hop count"
+metric (a count of 16 or greater is considered "infinite"). Advertised metrics
+reflect the metric associated with an interface (see \fBifconfig\fR(8)), so
+setting the metric on an interface is an effective way to steer traffic.
+.sp
+.LP
+Responses do not include routes with a first hop on the requesting network, to
+implement in part split-horizon. Requests from query programs such as
+\fBrtquery\fR(8) are answered with the complete table.
+.sp
+.LP
+The routing table maintained by the daemon includes space for several gateways
+for each destination to speed recovery from a failing router. RIP response
+packets received are used to update the routing tables, provided they are from
+one of the several currently recognized gateways or advertise a better metric
+than at least one of the existing gateways.
+.sp
+.LP
+When an update is applied, \fBin.routed\fR records the change in its own tables
+and updates the kernel routing table if the best route to the destination
+changes. The change in the kernel routing table is reflected in the next batch
+of response packets sent. If the next response is not scheduled for a while, a
+flash update response containing only recently changed routes is sent.
+.sp
+.LP
+In addition to processing incoming packets, in.routed also periodically checks
+the routing table entries. If an entry has not been updated for 3 minutes, the
+entry's metric is set to infinity and marked for deletion. Deletions are
+delayed until the route has been advertised with an infnite metric to insure
+the invalidation is propagated throughout the local internet. This is a form of
+poison reverse.
+.sp
+.LP
+Routes in the kernel table that are added or changed as a result of ICMP
+Redirect messages are deleted after a while to minimize black-holes. When a TCP
+connection suffers a timeout, the kernel tells \fBin.routed\fR, which deletes
+all redirected routes through the gateway involved, advances the age of all RIP
+routes through the gateway to allow an alternate to be chosen, and advances of
+the age of any relevant Router Discovery Protocol default routes.
+.sp
+.LP
+Hosts acting as internetwork routers gratuitously supply their routing tables
+every 30 seconds to all directly connected hosts and networks. These RIP
+responses are sent to the broadcast address on nets that support broadcasting,
+to the destination address on point-to-point links, and to the router's own
+address on other networks. If RIPv2 is enabled, multicast packets are sent on
+interfaces that support multicasting.
+.sp
+.LP
+If no response is received on a remote interface, if there are errors while
+sending responses, or if there are more errors than input or output (see
+\fBnetstat\fR(8)), then the cable or some other part of the interface is
+assumed to be disconnected or broken, and routes are adjusted appropriately.
+.sp
+.LP
+The Internet Router Discovery Protocol is handled similarly. When the daemon is
+supplying RIP routes, it also listens for Router Discovery Solicitations and
+sends Advertisements. When it is quiet and listening to other RIP routers, it
+sends Solicitations and listens for Advertisements. If it receives a good
+Advertisement and it is not multi-homed, it stops listening for broadcast or
+multicast RIP responses. It tracks several advertising routers to speed
+recovery when the currently chosen router dies. If all discovered routers
+disappear, the daemon resumes listening to RIP responses. It continues
+listening to RIP while using Router Discovery if multi-homed to ensure all
+interfaces are used.
+.sp
+.LP
+The Router Discovery standard requires that advertisements have a default
+"lifetime" of 30 minutes. That means should something happen, a client can be
+without a good route for 30 minutes. It is a good idea to reduce the default to
+45 seconds using \fB\fR\fB-P\fR \fBrdisc_interval=45\fR on the command line or
+\fBrdisc_interval=45\fR in the \fB/etc/gateways\fR file. See \fBgateways\fR(5).
+.sp
+.LP
+While using Router Discovery (which happens by default when the system has a
+single network interface and a Router Discover Advertisement is received),
+there is a single default route and a variable number of redirected host routes
+in the kernel table. On a host with more than one network interface, this
+default route will be via only one of the interfaces. Thus, multi-homed hosts
+running with \fB-q\fR might need the \fBno_rdisc\fR argument described below.
+.sp
+.LP
+To support "legacy" systems that can handle neither RIPv2 nor Router Discovery,
+you can use the \fBpm_rdisc\fR parameter in the \fB/etc/gateways\fR. See
+\fBgateways\fR(5).
+.sp
+.LP
+By default, neither Router Discovery advertisements nor solicitations are sent
+over point-to-point links (for example, PPP). The Solaris OE uses a netmask of
+all ones (255.255.255.255) on point-to-point links.
+.sp
+.LP
+\fBin.routed\fR supports the notion of "distant" passive or active gateways.
+When the daemon is started, it reads the file \fB/etc/gateways\fR to find such
+distant gateways that cannot be located using only information from a routing
+socket, to discover if some of the local gateways are passive, and to obtain
+other parameters. Gateways specified in this manner should be marked passive if
+they are not expected to exchange routing information, while gateways marked
+active should be willing to exchange RIP packets. Routes through passive
+gateways are installed in the kernel's routing tables once upon startup and are
+not included in transmitted RIP responses.
+.sp
+.LP
+Distant active gateways are treated like network interfaces. RIP responses are
+sent to the distant active gateway. If no responses are received, the
+associated route is deleted from the kernel table and RIP responses are
+advertised via other interfaces. If the distant gateway resumes sending RIP
+responses, the associated route is restored.
+.sp
+.LP
+Distant active gateways can be useful on media that do not support broadcasts
+or multicasts but otherwise act like classic shared media, such as some ATM
+networks. One can list all RIP routers reachable on the HIPPI or ATM network in
+\fB/etc/gateways\fR with a series of "host" lines. Note that it is usually
+desirable to use RIPv2 in such situations to avoid generating lists of inferred
+host routes.
+.sp
+.LP
+Gateways marked external are also passive, but are not placed in the kernel
+routing table, nor are they included in routing updates. The function of
+external entries is to indicate that another routing process will install such
+a route if necessary, and that other routes to that destination should not be
+installed by \fBin.routed\fR. Such entries are required only when both routers
+might learn of routes to the same destination.
+.SH OPTIONS
+.sp
+.LP
+Listed below are available options. Any other argument supplied is interpreted
+as the name of a file in which the actions of \fBin.routed\fR should be logged.
+It is better to use \fB-T\fR (described below) instead of appending the name of
+the trace file to the command. Associated SMF properties for these options are
+described, and can be set by means of a command of the form:
+.sp
+.in +2
+.nf
+# \fBrouteadm -m route:default \fIname\fR=\fIvalue\fR\fR
+.fi
+.in -2
+.sp
+
+.sp
+.ne 2
+.na
+\fB\fB-A\fR\fR
+.ad
+.sp .6
+.RS 4n
+Do not ignore RIPv2 authentication if we do not care about RIPv2
+authentication. This option is required for conformance with RFC 2453. However,
+it makes no sense and breaks using RIP as a discovery protocol to ignore all
+RIPv2 packets that carry authentication when this machine does not care about
+authentication. This option is equivalent to setting the \fBignore_auth\fR
+property value to false.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-d\fR\fR
+.ad
+.sp .6
+.RS 4n
+Do not run in the background. This option is meant for interactive use and is
+not usable under the SMF.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-F\fR \fBnet[/\fImask\fR][,\fImetric\fR]\fR\fR
+.ad
+.sp .6
+.RS 4n
+Minimize routes in transmissions via interfaces with addresses that match
+\fInet\fR (network number)/\fImask\fR (netmask), and synthesizes a default
+route to this machine with the \fImetric\fR. The intent is to reduce RIP
+traffic on slow, point-to-point links, such as PPP links, by replacing many
+large UDP packets of RIP information with a single, small packet containing a
+"fake" default route. If \fImetric\fR is absent, a value of 14 is assumed to
+limit the spread of the "fake" default route. This is a dangerous feature that,
+when used carelessly, can cause routing loops. Notice also that more than one
+interface can match the specified network number and mask. See also \fB-g\fR.
+Use of this option is equivalent to setting the \fBminimize_routes\fR property.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-g\fR\fR
+.ad
+.sp .6
+.RS 4n
+Used on internetwork routers to offer a route to the "default" destination. It
+is equivalent to \fB-F\fR \fB0/0,1\fR and is present mostly for historical
+reasons. A better choice is \fB-P\fR \fBpm_rdisc\fR on the command line or
+\fBpm_rdisc\fR in the \fB/etc/gateways\fR file. A larger metric will be used
+with the latter alternatives, reducing the spread of the potentially dangerous
+default route. The \fB-g\fR (or \fB-P\fR) option is typically used on a gateway
+to the Internet, or on a gateway that uses another routing protocol whose
+routes are not reported to other local routers. Note that because a metric of 1
+is used, this feature is dangerous. Its use more often creates chaos with a
+routing loop than solves problems. Use of this option is equivalent to setting
+the \fBoffer_default_route\fR property to true.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-h\fR\fR
+.ad
+.sp .6
+.RS 4n
+Causes host or point-to-point routes not to be advertised, provided there is a
+network route going the same direction. That is a limited kind of aggregation.
+This option is useful on gateways to LANs that have other gateway machines
+connected with point-to-point links such as SLIP. Use of this option is
+equivalent to setting the \fBadvertise_host_routes\fR property to false.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-m\fR\fR
+.ad
+.sp .6
+.RS 4n
+Cause the machine to advertise a host or point-to-point route to its primary
+interface. It is useful on multi-homed machines such as NFS servers. This
+option should not be used except when the cost of the host routes it generates
+is justified by the popularity of the server. It is effective only when the
+machine is supplying routing information, because there is more than one
+interface. The \fB-m\fR option overrides the \fB-q\fR option to the limited
+extent of advertising the host route. Use of this option is equivalent to
+setting the \fBadvertise_host_routes_primary\fR property to true.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR\fR
+.ad
+.sp .6
+.RS 4n
+Do not install routes in kernel. By default, routes are installed in the
+kernel. Use of this option is equivalent to setting the \fBinstall_routes\fR
+property to false.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-P\fR \fIparams\fR\fR
+.ad
+.sp .6
+.RS 4n
+Equivalent to adding the parameter line \fIparams\fR to the \fB/etc/gateways\fR
+file. Can also be set by means of the \fBparameters\fR property.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-q\fR\fR
+.ad
+.sp .6
+.RS 4n
+Opposite of the \fB-s\fR option. This is the default when only one interface is
+present. With this explicit option, the daemon is always in "quiet mode" for
+RIP and does not supply routing information to other computers. Use of this
+option is equivalent to setting the \fBquiet_mode\fR property to true.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR\fR
+.ad
+.sp .6
+.RS 4n
+Force \fBin.routed\fR to supply routing information. This is the default if
+multiple network interfaces are present on which RIP or Router Discovery have
+not been disabled, and if the \fB/dev/ip\fR \fBndd\fR variable
+\fBip_forwarding\fR is set to 1. Use of this option is equivalent to setting
+the \fBsupply_routes\fR property to true.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-S\fR\fR
+.ad
+.sp .6
+.RS 4n
+If \fBin.routed\fR is not acting as an internetwork router, instead of entering
+the whole routing table in the kernel, it enters only a default route for each
+internetwork router. This reduces the memory requirements without losing any
+routing reliability. This option is provided for compatibility with the
+previous, RIPv1-only \fBin.routed\fR. Use of this option is generally
+discouraged. Use of this option is equivalent to setting the
+\fBdefault_routes_only\fR property to true.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-t\fR\fR
+.ad
+.sp .6
+.RS 4n
+Runs in the foreground (as with \fB-d\fR) and logs the contents of the packets
+received (as with \fB-zz\fR). This is for compatibility with prior versions of
+Solaris and has no SMF equivalent.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-T\fR \fItracefile\fR\fR
+.ad
+.sp .6
+.RS 4n
+Increases the debugging level to at least 1 and causes debugging information to
+be appended to the trace file. Because of security concerns, do not to run
+\fBin.routed\fR routinely with tracing directed to a file. Use of this option
+is equivalent to setting the \fBlog_file\fR property to \fBtrace file path\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.sp .6
+.RS 4n
+Enables debug. Similar to \fB-z\fR, except, where \fB-z\fR increments
+\fBtrace_level\fR, \fB-v\fR sets \fBtrace_level\fR to 1. Also, \fB-v\fR
+requires the \fB-T\fR option. Use of this option is equivalent to setting the
+\fBdebug\fR property to true.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-V\fR\fR
+.ad
+.sp .6
+.RS 4n
+Displays the version of the daemon.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-z\fR\fR
+.ad
+.sp .6
+.RS 4n
+Increase the debugging level, which causes more information to be logged on the
+tracefile specified with \fB-T\fR or stdout. The debugging level can be
+increased or decreased with the \fBSIGUSR1\fR or \fBSIGUSR2\fR signals or with
+the \fBrtquery\fR(8) command.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/defaultrouter\fR\fR
+.ad
+.RS 22n
+If this file is present and contains the address of a default router, the
+system startup script does not run \fBin.routed\fR. See \fBdefaultrouter\fR(5).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/gateways\fR\fR
+.ad
+.RS 22n
+List of distant gateways and general configuration options for \fBin.routed\fR.
+See \fBgateways\fR(5).
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR ioctl (2),
+.BR inet (3SOCKET),
+.BR icmp (4P),
+.BR inet (4P),
+.BR udp (4P),
+.BR defaultrouter (5),
+.BR gateways (5),
+.BR attributes (7),
+.BR route (8),
+.BR routeadm (8),
+.BR rtquery (8),
+.BR svcadm (8)
+.sp
+.LP
+\fIInternet Transport Protocols, XSIS 028112, Xerox System Integration
+Standard\fR
+.sp
+.LP
+\fIRouting Information Protocol, v2 (RFC 2453, STD 0056, November 1998)\fR
+.sp
+.LP
+\fIRIP-v2 MD5 Authentication (RFC 2082, January 1997)\fR
+.sp
+.LP
+\fIRouting Information Protocol, v1 (RFC 1058, June 1988)\fR
+.sp
+.LP
+\fIICMP Router Discovery Messages (RFC 1256, September 1991)\fR
+.SH NOTES
+.sp
+.LP
+In keeping with its intended design, this daemon deviates from RFC 2453 in two
+notable ways:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+By default, \fBin.routed\fR does not discard authenticated RIPv2 messages when
+RIP authentication is not configured. There is little to gain from dropping
+authenticated packets when RIPv1 listeners will gladly process them. Using the
+\fB-A\fR option causes \fBin.routed\fR to conform to the RFC in this case.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Unauthenticated RIP requests are never discarded, even when RIP authentication
+is configured. Forwarding tables are not secret and can be inferred through
+other means such as test traffic. RIP is also the most common router-discovery
+protocol, and hosts need to send queries that will be answered.
+.RE
+.sp
+.LP
+\fBin.routed\fR does not always detect unidirectional failures in network
+interfaces, for example, when the output side fails.
diff --git a/usr/src/man/man8/in.rshd.8 b/usr/src/man/man8/in.rshd.8
new file mode 100644
index 0000000000..d647cfe992
--- /dev/null
+++ b/usr/src/man/man8/in.rshd.8
@@ -0,0 +1,454 @@
+'\" te
+.\" Copyright (C) 2005, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH IN.RSHD 8 "June 20, 2021"
+.SH NAME
+in.rshd, rshd \- remote shell server
+.SH SYNOPSIS
+.nf
+\fBin.rshd\fR [\fB-k5eciU\fR] [\fB-s\fR \fItos\fR] [\fB-S\fR \fIkeytab\fR] [\fB-M\fR \fIrealm\fR]
+ [\fB-L\fR \fIenv_var\fR] \fIhost.port\fR
+.fi
+
+.SH DESCRIPTION
+\fBin.rshd\fR is the server for the \fBrsh\fR(1) program. The server provides
+remote execution facilities with authentication based on Kerberos V5 or
+privileged port numbers.
+.sp
+.LP
+\fBin.rshd\fR is invoked by \fBinetd\fR(8) each time a shell service is
+requested.
+.sp
+.LP
+When Kerberos V5 authentication is required (this can be set with
+Kerberos-specific options listed below), the following protocol is initiated:
+.RS +4
+.TP
+1.
+Check Kerberos V5 authentication.
+.RE
+.RS +4
+.TP
+2.
+Check authorization according to rules in \fBkrb5_auth_rules\fR(7).
+.RE
+.RS +4
+.TP
+3.
+A null byte is returned on the initial socket and the command line is passed
+to the normal login shell of the user. (The \fBPATH\fR variable is set to
+\fB/usr/bin\fR.) The shell inherits the network connections established by
+\fBin.rshd\fR.
+.RE
+.sp
+.LP
+In order for Kerberos authentication to work, a \fBhost/\fR\fI<FQDN>\fR
+Kerberos principal must exist for each Fully Qualified Domain Name associated
+with the \fBin.rshd\fR server. Each of these \fBhost/\fR\fI<FQDN>\fR principals
+must have a \fBkeytab\fR entry in the \fB/etc/krb5/krb5.keytab\fR file on the
+\fBin.rshd\fR server. An example principal might be:
+.sp
+.LP
+\fBhost/bigmachine.eng.example.com\fR
+.sp
+.LP
+See \fBkadmin\fR(8) for instructions on adding a principal to a
+\fBkrb5.keytab\fR file. See \fI\fR for a discussion of Kerberos
+authentication.
+.sp
+.LP
+If Kerberos V5 authentication is not enabled, then \fBin.rshd\fR executes the
+following protocol:
+.RS +4
+.TP
+1.
+The server checks the client's source port. If the port is not in the range
+512-1023, the server aborts the connection. The client's host address (in hex)
+and port number (in decimal) are the arguments passed to \fBin.rshd\fR.
+.RE
+.RS +4
+.TP
+2.
+The server reads characters from the socket up to a null (\fB\e0\fR) byte.
+The resultant string is interpreted as an \fBASCII\fR number, base 10.
+.RE
+.RS +4
+.TP
+3.
+If the number received in step 2 is non-zero, it is interpreted as the port
+number of a secondary stream to be used for the \fBstderr\fR. A second
+connection is then created to the specified port on the client's machine. The
+source port of this second connection is also in the range 512-1023.
+.RE
+.RS +4
+.TP
+4.
+A null-terminated user name of at most 16 characters is retrieved on the
+initial socket. This user name is interpreted as the user identity on the
+\fIclient\fR's machine.
+.RE
+.RS +4
+.TP
+5.
+A null terminated user name of at most 16 characters is retrieved on the
+initial socket. This user name is interpreted as a user identity to use on the
+\fIserver\fR's machine.
+.RE
+.RS +4
+.TP
+6.
+A null terminated command to be passed to a shell is retrieved on the
+initial socket. The length of the command is limited by the upper bound on the
+size of the system's argument list.
+.RE
+.RS +4
+.TP
+7.
+\fBin.rshd\fR then validates the user according to the following steps. The
+remote user name is looked up in the password file and a \fBchdir\fR is
+performed to the user's home directory. If the lookup fails, the connection is
+terminated. If the \fBchdir\fR fails, it does a \fBchdir\fR to \fB/\fR (root).
+If the user is not the superuser, (user \fBID\fR 0), and if the pam_rhosts_auth
+\fBPAM\fR module is configured for authentication, the file
+\fB/etc/hosts.equiv\fR is consulted for a list of hosts considered
+"equivalent". If the client's host name is present in this file, the
+authentication is considered successful. See the SECURITY section below for a
+discussion of \fBPAM\fR authentication.
+.sp
+If the lookup fails, or the user is the superuser, then the file
+\fB\&.rhosts\fR in the home directory of the remote user is checked for the
+machine name and identity of the user on the client's machine. If this lookup
+fails, the connection is terminated
+.RE
+.RS +4
+.TP
+8.
+A null byte is returned on the initial connection and the command line is
+passed to the normal login shell of the user. The \fBPATH\fR variable is set to
+\fB/usr/bin\fR. The shell inherits the network connections established by
+\fBin.rshd\fR.
+.RE
+.SH OPTIONS
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-5\fR\fR
+.ad
+.RS 14n
+Same as \fB-k\fR, for backwards compatibility
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-c\fR\fR
+.ad
+.RS 14n
+Requires Kerberos V5 clients to present a cryptographic checksum of initial
+connection information like the name of the user that the client is trying to
+access in the initial authenticator. This checksum provides additionl security
+by preventing an attacker from changing the initial connection information.
+This option is mutually exclusive with the \fB-i\fR option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-e\fR\fR
+.ad
+.RS 14n
+Requires the client to encrypt the connection.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-i\fR\fR
+.ad
+.RS 14n
+Ignores authenticator checksums if provided. This option ignores authenticator
+checksums presented by current Kerberos clients to protect initial connection
+information. Option \fB-i\fR is the opposite of option \fB-c\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-k\fR\fR
+.ad
+.RS 14n
+Allows Kerberos V5 authentication with the \fB\&.k5login\fR access control file
+to be trusted. If this authentication system is used by the client and the
+authorization check is passed, then the user is allowed to log in.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-L\fR \fIenv_var\fR\fR
+.ad
+.RS 14n
+List of environment variables that need to be saved and passed along.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-M\fR \fIrealm\fR\fR
+.ad
+.RS 14n
+Uses the indicated Kerberos V5 realm. By default, the daemon will determine its
+realm from the settings in the \fBkrb5.conf\fR(5) file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR \fItos\fR\fR
+.ad
+.RS 14n
+Sets the \fBIP\fR \fBTOS\fR option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-S\fR \fIkeytab\fR\fR
+.ad
+.RS 14n
+Sets the \fBKRB5\fR keytab file to use. The \fB/etc/krb5/krb5.keytab\fR file is
+used by default.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-U\fR\fR
+.ad
+.RS 14n
+Refuses connections that cannot be mapped to a name through the
+\fBgetnameinfo\fR(3SOCKET) function.
+.RE
+
+.SH USAGE
+\fBrshd\fR and \fBin.rshd\fR are IPv6-enabled. See \fBip6\fR(4P). \fBIPv6\fR is
+not currently supported with Kerberos V5 authentication.
+.sp
+.LP
+The Kerberized \fBrshd\fR service runs on port 544 (kshell). The corresponding
+FMRI entry is: :
+.sp
+.in +2
+.nf
+svc:/network/shell:kshell (rshd with kerberos (ipv4 only))
+.fi
+.in -2
+.sp
+
+.SH SECURITY
+\fBin.rshd\fR uses \fBpam\fR(3PAM) for authentication, account management, and
+session management. The \fBPAM\fR configuration policy, listed through
+\fB/etc/pam.conf\fR, specifies the modules to be used for \fBin.rshd\fR. Here
+is a partial \fBpam.conf\fR file with entries for the \fBrsh\fR command using
+rhosts authentication, \fBUNIX\fR account management, and session management
+module.
+.sp
+
+.sp
+.TS
+l l l l
+l l l l .
+rsh auth required pam_rhosts_auth.so.1
+
+rsh account required pam_unix_roles.so.1
+rsh session required pam_unix_projects.so.1
+rsh session required pam_unix_account.so.1
+
+rsh session required pam_unix_session.so.1
+.TE
+
+.sp
+.LP
+If there are no entries for the \fBrsh\fR service, then the entries for the
+"other" service are used. To maintain the authentication requirement for
+\fBin.rshd\fR, the rsh entry must always be configured with the
+\fBpam_rhosts_auth.so.1\fR module.
+.sp
+.LP
+\fBin.rshd\fR can authenticate using Kerberos V5 authentication or
+\fBpam\fR(3PAM). For Kerberized \fBrsh\fR service, the appropriate \fBPAM\fR
+service name is \fBkrsh\fR.
+.SH FILES
+\fB/etc/hosts.equiv\fR
+.sp
+.ne 2
+.na
+\fB\fB$HOME/.k5login\fR\fR
+.ad
+.RS 23n
+File containing Kerberos principals that are allowed access.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/krb5/krb5.conf\fR\fR
+.ad
+.RS 23n
+Kerberos configuration file.
+.RE
+
+.SH SEE ALSO
+.BR rsh (1),
+.BR svcs (1),
+.BR pam (3PAM),
+.BR getnameinfo (3SOCKET),
+.BR ip6 (4P),
+.BR hosts (5),
+.BR krb5.conf (5),
+.BR pam.conf (5),
+.BR attributes (7),
+.BR environ (7),
+.BR krb5_auth_rules (7),
+.BR pam_authtok_check (7),
+.BR pam_authtok_get (7),
+.BR pam_authtok_store (7),
+.BR pam_dhkeys (7),
+.BR pam_passwd_auth (7),
+.BR pam_rhosts_auth (7),
+.BR pam_unix_account (7),
+.BR pam_unix_auth (7),
+.BR pam_unix_session (7),
+.BR smf (7),
+.BR inetadm (8),
+.BR inetd (8),
+.BR kadmin (8),
+.BR svcadm (8)
+.sp
+.LP
+\fI\fR
+.SH DIAGNOSTICS
+The following diagnostic messages are returned on the connection associated
+with \fBstderr\fR, after which any network connections are closed. An error is
+indicated by a leading byte with a value of 1 in step 8 above (\fB0\fR is
+returned above upon successful completion of all the steps prior to the command
+execution).
+.sp
+.ne 2
+.na
+\fB\fBlocuser too long\fR\fR
+.ad
+.sp .6
+.RS 4n
+The name of the user on the client's machine is longer than 16 characters.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBremuser too long\fR\fR
+.ad
+.sp .6
+.RS 4n
+The name of the user on the remote machine is longer than 16 characters.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcommand too long\fR\fR
+.ad
+.sp .6
+.RS 4n
+The command line passed exceeds the size of the argument list (as configured
+into the system).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBHostname for your address unknown.\fR\fR
+.ad
+.sp .6
+.RS 4n
+No entry in the host name database existed for the client's machine.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBLogin incorrect.\fR\fR
+.ad
+.sp .6
+.RS 4n
+No password file entry for the user name existed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPermission denied.\fR\fR
+.ad
+.sp .6
+.RS 4n
+The authentication procedure described above failed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBCan't make pipe.\fR\fR
+.ad
+.sp .6
+.RS 4n
+The pipe needed for the \fBstderr\fR was not created.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBTry again.\fR\fR
+.ad
+.sp .6
+.RS 4n
+A \fIfork\fR by the server failed.
+.RE
+
+.SH NOTES
+The authentication procedure used here assumes the integrity of each client
+machine and the connecting medium. This is insecure, but it is useful in an
+"open" environment.
+.sp
+.LP
+A facility to allow all data exchanges to be encrypted should be present.
+.sp
+.LP
+The \fBpam_unix\fR(7) module is no longer supported. Similar functionality is
+provided by \fBpam_authtok_check\fR(7), \fBpam_authtok_get\fR(7),
+\fBpam_authtok_store\fR(7), \fBpam_dhkeys\fR(7), \fBpam_passwd_auth\fR(7),
+\fBpam_unix_account\fR(7), \fBpam_unix_auth\fR(7), and
+\fBpam_unix_session\fR(7).
+.sp
+.LP
+The \fBin.rshd\fR service is managed by the service management facility,
+\fBsmf\fR(7), under the service identifier:
+.sp
+.in +2
+.nf
+svc:/network/shell:default
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Administrative actions on this service, such as enabling, disabling, or
+requesting restart, can be performed using \fBsvcadm\fR(8). Responsibility for
+initiating and restarting this service is delegated to \fBinetd\fR(8). Use
+\fBinetadm\fR(8) to make configuration changes and to view configuration
+information for this service. The service's status can be queried using the
+\fBsvcs\fR(1) command.
diff --git a/usr/src/man/man8/in.rwhod.8 b/usr/src/man/man8/in.rwhod.8
new file mode 100644
index 0000000000..3a2bb5c5e3
--- /dev/null
+++ b/usr/src/man/man8/in.rwhod.8
@@ -0,0 +1,138 @@
+'\" te
+.\" Copyright 1989 AT&T
+.\" Copyright (C) 2001, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH IN.RWHOD 8 "Dec 8, 2001"
+.SH NAME
+in.rwhod, rwhod \- system status server
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/in.rwhod\fR [\fB-m\fR [\fIttl\fR]]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBin.rwhod\fR is the server which maintains the database used by the
+\fBrwho\fR(1) and \fBruptime\fR(1) programs. Its operation is predicated on
+the ability to broadcast or multicast messages on a network.
+.sp
+.LP
+\fBin.rwhod\fR operates as both a producer and consumer of status information.
+As a producer of information it periodically queries the state of the system
+and constructs status messages which are broadcast or multicast on a network.
+As a consumer of information, it listens for other \fBin.rwhod\fR servers'
+status messages, validating them, then recording them in a collection of files
+located in the directory \fB/var/spool/rwho\fR.
+.sp
+.LP
+The \fBrwho\fR server transmits and receives messages at the port indicated in
+the \fBrwho\fR service specification, see \fBservices\fR(5). The messages sent
+and received are defined in \fB/usr/include/protocols/rwhod.h\fR and are of the
+form:
+.sp
+.in +2
+.nf
+struct outmp {
+ char out_line[8]; /* tty name */
+ char out_name[8]; /* user id */
+ long out_time; /* time on */
+};
+struct whod {
+ char wd_vers;
+ char wd_type;
+ char wd_fill[2];
+ int wd_sendtime;
+ int wd_recvtime;
+ char wd_hostname[32];
+ int wd_loadav[3];
+ int wd_boottime;
+ struct whoent {
+ struct outmp we_utmp;
+ int we_idle;
+ } wd_we[1024 / sizeof (struct whoent)];
+ };
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+All fields are converted to network byte order prior to transmission. The load
+averages are as calculated by the \fBw\fR(1) program, and represent load
+averages over the 1, 5, and 15 minute intervals prior to a server's
+transmission. The host name included is that returned by the \fBuname\fR(2)
+system call. The array at the end of the message contains information about the
+users who are logged in to the sending machine. This information includes the
+contents of the \fButmpx\fR(5) entry for each non-idle terminal line and a
+value indicating the time since a character was last received on the terminal
+line.
+.sp
+.LP
+Messages received by the \fBrwho\fR server are discarded unless they originated
+at a \fBrwho\fR server's port. In addition, if the host's name, as specified
+in the message, contains any unprintable \fBASCII\fR characters, the message is
+discarded. Valid messages received by \fBin.rwhod\fR are placed in files named
+\fBwhod.\fR\fBhostname\fR in the directory \fB/var/spool/rwho\fR. These files
+contain only the most recent message, in the format described above.
+.sp
+.LP
+Status messages are generated approximately once every 3 minutes.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB\fR\fB-m\fR\fB \fR[\fI ttl \fR]\fR
+.ad
+.RS 14n
+Use the rwho \fBIP\fR multicast address (224.0.1.3) when transmitting. Receive
+announcements both on this multicast address and on the \fBIP\fR broadcast
+address. If \fIttl\fR is not specified \fBin.rwhod\fR multicasts on all
+interfaces but with the \fBIP\fR TimeToLive set to 1 (that is, packets are not
+forwarded by multicast routers.) If \fIttl\fR is specified \fBin.rwhod\fR
+only transmits packets on one interface and setting the \fBIP\fR TimeToLive to
+the specified \fIttl\fR.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/var/spool/rwho/whod.*\fR\fR
+.ad
+.RS 26n
+information about other machines
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR ruptime (1),
+.BR rwho (1),
+.BR w (1),
+.BR uname (2),
+.BR services (5),
+.BR utmpx (5),
+.BR attributes (7)
+.SH WARNINGS
+.sp
+.LP
+This service can cause network performance problems when used by several hosts
+on the network. It is not run at most sites by default. If used, include the
+\fB-m\fR multicast option.
+.SH NOTES
+.sp
+.LP
+This service takes up progressively more network bandwidth as the number of
+hosts on the local net increases. For large networks, the cost becomes
+prohibitive.
+.sp
+.LP
+\fBin.rwhod\fR should relay status information between networks. People often
+interpret the server dying as a machine going down.
diff --git a/usr/src/man/man8/in.talkd.8 b/usr/src/man/man8/in.talkd.8
new file mode 100644
index 0000000000..252179b30d
--- /dev/null
+++ b/usr/src/man/man8/in.talkd.8
@@ -0,0 +1,57 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 2004Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH IN.TALKD 8 "Jul 31, 2004"
+.SH NAME
+in.talkd, talkd \- server for talk program
+.SH SYNOPSIS
+.LP
+.nf
+\fBin.talkd\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBtalkd\fR is a server used by the \fBtalk\fR(1) program. It listens at the
+\fBUDP\fR port indicated in the ``talk'' service description; see
+\fBservices\fR(5). The actual conversation takes place on a \fBTCP\fR
+connection that is established by negotiation between the two machines
+involved.
+.SH SEE ALSO
+.sp
+.LP
+.BR svcs (1),
+.BR talk (1),
+.BR services (5),
+.BR attributes (7),
+.BR smf (7),
+.BR inetadm (8),
+.BR inetd (8),
+.BR svcadm (8)
+.SH NOTES
+.sp
+.LP
+The protocol is architecture dependent.
+.sp
+.LP
+The \fBin.talkd\fR service is managed by the service management facility,
+\fBsmf\fR(7), under the service identifier:
+.sp
+.in +2
+.nf
+svc:/network/talk
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Administrative actions on this service, such as enabling, disabling, or
+requesting restart, can be performed using \fBsvcadm\fR(8). Responsibility for
+initiating and restarting this service is delegated to \fBinetd\fR(8). Use
+\fBinetadm\fR(8) to make configuration changes and to view configuration
+information for this service. The service's status can be queried using the
+\fBsvcs\fR(1) command.
diff --git a/usr/src/man/man8/in.telnetd.8 b/usr/src/man/man8/in.telnetd.8
new file mode 100644
index 0000000000..2ca2d2b7d3
--- /dev/null
+++ b/usr/src/man/man8/in.telnetd.8
@@ -0,0 +1,412 @@
+'\" te
+.\" Copyright 1989 AT&T
+.\" Copyright (C) 2005, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH IN.TELNETD 8 "February 5, 2022"
+.SH NAME
+in.telnetd, telnetd \- DARPA TELNET protocol server
+.SH SYNOPSIS
+.nf
+\fB/usr/sbin/in.telnetd\fR [\fB-a\fR \fIauthmode\fR] [\fB-EXUh\fR] [\fB-s\fR \fItos\fR]
+ [\fB-S\fR \fIkeytab\fR] [\fB-M\fR \fIrealm\fR]
+.fi
+
+.SH DESCRIPTION
+\fBin.telnetd\fR is a server that supports the \fBDARPA\fR standard
+\fBTELNET\fR virtual terminal protocol. \fBin.telnetd\fR is normally invoked in
+the internet server (see \fBinetd\fR(8)), for requests to connect to the
+\fBTELNET\fR port as indicated by the \fB/etc/services\fR file (see
+\fBservices\fR(5)).
+.sp
+.LP
+\fBin.telnetd\fR operates by allocating a pseudo-terminal device for a client,
+then creating a login process which has the subsidiary side of the
+pseudo-terminal as its standard input, output, and error. \fBin.telnetd\fR
+manipulates the manager side of the pseudo-terminal, implementing the
+\fBTELNET\fR protocol and passing characters between the remote client and the
+login process.
+.sp
+.LP
+When a \fBTELNET\fR session starts up, \fBin.telnetd\fR sends \fBTELNET\fR
+options to the client side indicating a willingness to do \fIremote\fR
+\fBecho\fR of characters, and to \fIsuppress\fR \fIgo\fR \fIahead\fR. The
+pseudo-terminal allocated to the client is configured to operate in "cooked"
+mode, and with \fBXTABS\fR, \fBICRNL\fR and \fBONLCR\fR enabled. See
+\fBtermio\fR(4I).
+.sp
+.LP
+\fBin.telnetd\fR is willing to do: \fIecho\fR, \fIbinary\fR, \fIsuppress\fR
+\fIgo\fR \fIahead\fR, and \fItiming\fR \fImark\fR. \fBin.telnetd\fR is willing
+to have the remote client do: \fIbinary\fR, \fIterminal\fR \fItype\fR,
+\fIterminal\fR \fIsize\fR, \fIlogout\fR \fIoption\fR, and \fIsuppress\fR
+\fIgo\fR \fIahead\fR.
+.sp
+.LP
+\fBin.telnetd\fR also allows environment variables to be passed, provided that
+the client negotiates this during the initial option negotiation. The
+\fBDISPLAY\fR environment variable may be sent this way, either by the
+\fBTELNET\fR general environment passing methods, or by means of the
+\fBXDISPLOC\fR \fBTELNET\fR option. \fBDISPLAY\fR can be passed in the
+environment option during the same negotiation where \fBXDISPLOC\fR is used.
+Note that if you use both methods, use the same value for both. Otherwise, the
+results may be unpredictable.
+.sp
+.LP
+These options are specified in Internet standards \fIRFC 1096\fR, \fIRFC
+1408\fR, \fIRFC 1510\fR, \fIRFC 1571\fR, \fIRFC 2941\fR, \fIRFC 2942\fR, \fIRFC
+2946\fR, and \fIRFC 1572\fR. The following Informational draft is also
+supported: \fIRFC 2952\fR.
+.sp
+.LP
+The banner printed by \fBin.telnetd\fR is configurable. The default is (more or
+less) equivalent to `\fBuname\fR \fB-sr\fR` and will be used if no banner is
+set in \fB/etc/default/telnetd\fR. To set the banner, add a line of the form
+.sp
+.in +2
+.nf
+BANNER="..."
+.fi
+.in -2
+
+.sp
+.LP
+to \fB/etc/default/telnetd\fR. Nonempty banner strings are fed to shells for
+evaluation. The default banner may be obtained by
+.sp
+.in +2
+.nf
+BANNER="\e\er\e\en\e\er\e\en`uname -s` `uname -r`\e\er\e\en\e\er\e\en"
+.fi
+.in -2
+
+.sp
+.LP
+and no banner will be printed if \fB/etc/default/telnetd\fR contains
+.sp
+.in +2
+.nf
+BANNER=""
+.fi
+.in -2
+
+.SH OPTIONS
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-a\fR \fIauthmode\fR\fR
+.ad
+.RS 15n
+This option may be used for specifying what mode should be used for
+authentication. There are several valid values for \fIauthmode\fR:
+.sp
+.ne 2
+.na
+\fB\fBvalid\fR\fR
+.ad
+.RS 9n
+Only allows connections when the remote user can provide valid authentication
+information to identify the remote user, and is allowed access to the specified
+account without providing a password.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBuser\fR\fR
+.ad
+.RS 9n
+Only allows connections when the remote user can provide valid authentication
+information to identify the remote user. The \fBlogin\fR(1) command will
+provide any additional user verification needed if the remote user is not
+allowed automatic access to the specified account.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnone\fR\fR
+.ad
+.RS 9n
+This is the default state. Authentication information is not required. If no or
+insufficient authentication information is provided, then the \fBlogin\fR(1)
+program provides the necessary user verification.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBoff\fR\fR
+.ad
+.RS 9n
+This disables the authentication code. All user verification happens through
+the \fBlogin\fR(1) program.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-E\fR\fR
+.ad
+.RS 15n
+Disables encryption support negotiation.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-h\fR\fR
+.ad
+.RS 15n
+Disables displaying host specific information before login has been completed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-M\fR \fIrealm\fR\fR
+.ad
+.RS 15n
+Uses the indicated Kerberos V5 realm. By default, the daemon will determine its
+realm from the settings in the \fBkrb5.conf\fR(5) file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR \fItos\fR\fR
+.ad
+.RS 15n
+Sets the \fBIP\fR \fBTOS\fR option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-S\fR \fIkeytab\fR\fR
+.ad
+.RS 15n
+Sets the \fBKRB5\fR keytab file to use. The \fB/etc/krb5/krb5.keytab\fR file is
+used by default.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-U\fR\fR
+.ad
+.RS 15n
+Refuses connections that cannot be mapped to a name through the
+\fBgetnameinfo\fR(3SOCKET) function.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-X\fR\fR
+.ad
+.RS 15n
+Disables Kerberos V5 authentication support negotiation.
+.RE
+
+.SH USAGE
+\fBtelnetd\fR and \fBin.telnetd\fR are IPv6-enabled. See \fBip6\fR(4P).
+.SH SECURITY
+\fBin.telnetd\fR can authenticate using Kerberos V5 authentication,
+\fBpam\fR(3PAM), or both. By default, the telnet server will accept valid
+Kerberos V5 authentication credentials from a \fBtelnet\fR client that supports
+Kerberos. \fBin.telnetd\fR can also support an encrypted session from such a
+client if the client requests it.
+.sp
+.LP
+The \fBtelnet\fR protocol only uses single DES for session
+protection\(emclients request service tickets with single DES session keys. The
+KDC must know that host service principals that offer the \fBtelnet\fR service
+support single DES, which, in practice, means that such principals must have
+single DES keys in the KDC database.
+.sp
+.LP
+In order for Kerberos authentication to work, a \fBhost/\fR\fI<FQDN>\fR
+Kerberos principal must exist for each Fully Qualified Domain Name associated
+with the \fBtelnetd\fR server. Each of these \fBhost/\fR\fI<FQDN>\fR principals
+must have a \fBkeytab\fR entry in the \fB/etc/krb5/krb5.keytab\fR file on the
+\fBtelnetd\fR server. An example principal might be:
+.sp
+.LP
+\fBhost/bigmachine.eng.example.com\fR
+.sp
+.LP
+See \fBkadmin\fR(8) for instructions on adding a principal to a
+\fBkrb5.keytab\fR file. See \fI\fR for a discussion of Kerberos
+authentication.
+.sp
+.LP
+\fBin.telnetd\fR uses \fBpam\fR(3PAM) for authentication, account management,
+session management, and password management. The \fBPAM\fR configuration
+policy, listed through \fB/etc/pam.conf\fR, specifies the modules to be used
+for \fBin.telnetd\fR. Here is a partial \fBpam.conf\fR file with entries for
+the \fBtelnet\fR command using the UNIX authentication, account management,
+session management, and password management modules.
+.sp
+.in +2
+.nf
+telnet auth requisite pam_authtok_get.so.1
+telnet auth required pam_dhkeys.so.1
+telnet auth required pam_unix_auth.so.1
+
+telnet account requisite pam_roles.so.1
+telnet account required pam_projects.so.1
+telnet account required pam_unix_account.so.1
+
+telnet session required pam_unix_session.so.1
+
+telnet password required pam_dhkeys.so.1
+telnet password requisite pam_authtok_get.so.1
+telnet password requisite pam_authtok_check.so.1
+telnet password required pam_authtok_store.so.1
+.fi
+.in -2
+
+.sp
+.LP
+If there are no entries for the \fBtelnet\fR service, then the entries for the
+"other" service will be used. If multiple authentication modules are listed,
+then the user may be prompted for multiple passwords.
+.sp
+.LP
+For a Kerberized telnet service, the correct \fBPAM\fR service name is
+\fBktelnet\fR.
+.SH FILES
+.ne 2
+.na
+\fB\fB/etc/default/telnetd\fR\fR
+.ad
+.RS 24n
+
+.RE
+
+.SH SEE ALSO
+.BR login (1),
+.BR svcs (1),
+.BR telnet (1),
+.BR pam (3PAM),
+.BR getnameinfo (3SOCKET),
+.BR termio (4I),
+.BR ip6 (4P),
+.BR issue (5),
+.BR krb5.conf (5),
+.BR pam.conf (5),
+.BR services (5),
+.BR attributes (7),
+.BR pam_authtok_check (7),
+.BR pam_authtok_get (7),
+.BR pam_authtok_store (7),
+.BR pam_dhkeys (7),
+.BR pam_passwd_auth (7),
+.BR pam_unix_account (7),
+.BR pam_unix_auth (7),
+.BR pam_unix_session (7),
+.BR smf (7),
+.BR inetadm (8),
+.BR inetd (8),
+.BR kadmin (8),
+.BR svcadm (8)
+.sp
+.LP
+\fI\fR
+.sp
+.LP
+Alexander, S. \fIRFC 1572, TELNET Environment Option\fR. Network Information
+Center, SRI International, Menlo Park, Calif., January 1994.
+.sp
+.LP
+Borman, Dave. \fIRFC 1408, TELNET Environment Option\fR. Network Information
+Center, SRI International, Menlo Park, Calif., January 1993.
+.sp
+.LP
+Borman, Dave. \fIRFC 1571, TELNET Environment Option Interoperability
+Issues\fR. Network Information Center, SRI International, Menlo Park, Calif.,
+January 1994.
+.sp
+.LP
+Crispin, Mark. \fIRFC 727, TELNET Logout Option\fR. Network Information Center,
+SRI International, Menlo Park, Calif., April 1977.
+.sp
+.LP
+Marcy, G. \fIRFC 1096, TELNET X Display Location Option\fR. Network Information
+Center, SRI International, Menlo Park, Calif., March 1989.
+.sp
+.LP
+Postel, Jon, and Joyce Reynolds. \fIRFC 854, TELNET Protocol Specification\fR.
+Network Information Center, SRI International, Menlo Park, Calif., May 1983.
+.sp
+.LP
+Waitzman, D. \fIRFC 1073, TELNET Window Size Option\fR. Network Information
+Center, SRI International, Menlo Park, Calif., October 1988.
+.sp
+.LP
+Kohl, J., Neuman, C., \fIThe Kerberos Network Authentication Service (V5), RFC
+1510\fR. September 1993.
+.sp
+.LP
+Ts'o, T. and J. Altman, \fITelnet Authentication Option, RFC 2941\fR. September
+2000.
+.sp
+.LP
+Ts'o, T., \fITelnet Authentication: Kerberos Version 5, RFC 2942\fR. September
+2000.
+.sp
+.LP
+Ts'o, T., \fITelnet Data Encryption Option, RFC 2946\fR. September 2000.
+.sp
+.LP
+Ts'o, T., \fITelnet Encryption: DES 64 bit Cipher Feedback, RFC 2952\fR.
+September 2000.
+.SH NOTES
+Some \fBTELNET\fR commands are only partially implemented.
+.sp
+.LP
+Binary mode has no common interpretation except between similar operating
+systems.
+.sp
+.LP
+The terminal type name received from the remote client is converted to lower
+case.
+.sp
+.LP
+The \fIpacket\fR interface to the pseudo-terminal should be used for more
+intelligent flushing of input and output queues.
+.sp
+.LP
+\fBin.telnetd\fR never sends \fBTELNET\fR \fIgo\fR \fIahead\fR commands.
+.sp
+.LP
+The \fBpam_unix\fR(7) module is no longer supported.. Similar functionality is
+provided by \fBpam_authtok_check\fR(7), \fBpam_authtok_get\fR(7),
+\fBpam_authtok_store\fR(7), \fBpam_dhkeys\fR(7), \fBpam_passwd_auth\fR(7),
+\fBpam_unix_account\fR(7), \fBpam_unix_auth\fR(7), and
+\fBpam_unix_session\fR(7).
+.sp
+.LP
+The \fBin.telnetd\fR service is managed by the service management facility,
+\fBsmf\fR(7), under the service identifier:
+.sp
+.in +2
+.nf
+svc:/network/telnet
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Administrative actions on this service, such as enabling, disabling, or
+requesting restart, can be performed using \fBsvcadm\fR(8). Responsibility for
+initiating and restarting this service is delegated to \fBinetd\fR(8). Use
+\fBinetadm\fR(8) to make configuration changes and to view configuration
+information for this service. The service's status can be queried using the
+\fBsvcs\fR(1) command.
diff --git a/usr/src/man/man8/in.tftpd.8 b/usr/src/man/man8/in.tftpd.8
new file mode 100644
index 0000000000..26c7bd5adb
--- /dev/null
+++ b/usr/src/man/man8/in.tftpd.8
@@ -0,0 +1,122 @@
+'\" te
+.\" Copyright 1989 AT&T
+.\" Copyright (C) 2008, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 2015 Nexenta Systems, Inc. All rights reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH IN.TFTPD 8 "Jun 17, 2015"
+.SH NAME
+in.tftpd, tftpd \- Internet Trivial File Transfer Protocol server
+.SH SYNOPSIS
+.LP
+.nf
+\fBin.tftpd\fR [\fB-d\fR] [\fB-T\fR \fIrexmtval\fR] [\fB-s\fR] [\fIhomedir\fR]
+.fi
+
+.SH DESCRIPTION
+.LP
+\fBtftpd\fR is a server that supports the Internet Trivial File Transfer
+Protocol (TFTP).
+.sp
+.LP
+Before responding to a request, the server attempts to change its current
+directory to \fIhomedir\fR; the default directory is \fB/tftpboot\fR.
+.sp
+.LP
+The use of \fBtftp\fR does not require an account or password on the remote
+system. Due to the lack of authentication information, \fBin.tftpd\fR will
+allow only publicly readable files to be accessed. Files may be written only if
+they already exist and are publicly writable. Note that this extends the
+concept of "public" to include all users on all hosts that can be reached
+through the network. This may not be appropriate on all systems, and its
+implications should be considered before enabling this service.
+.sp
+.LP
+\fBin.tftpd\fR runs with the user \fBID\fR and group \fBID\fR set to
+\fB[GU]ID_NOBODY\fR under the assumption that no files exist with that owner or
+group. However, nothing checks this assumption or enforces this restriction.
+.SH OPTIONS
+.ne 2
+.na
+\fB\fB-d\fR\fR
+.ad
+.RS 15n
+Debug. When specified it sets the \fBSO_DEBUG\fR socket option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR\fR
+.ad
+.RS 15n
+Secure. When specified, the directory change to \fIhomedir\fR must succeed. The
+daemon also changes its root directory to \fIhomedir\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-T\fR \fIrexmtval\fR\fR
+.ad
+.RS 15n
+Specifies the value of the retransmission timeout in seconds. This also affects
+the maximum session timeout in that the latter is set to five times the
+retransmission timeout value.
+.RE
+
+.SH USAGE
+.LP
+The \fBin.tftpd\fR server is IPv6-enabled. See \fBip6\fR(4P).
+.LP
+\fBin.tftpd\fR supports transfers of greater than 32 MB, per RFC 2348.
+.SH SEE ALSO
+.LP
+.BR svcs (1),
+.BR tftp (1),
+.BR ip6 (4P),
+.BR netconfig (5),
+.BR attributes (7),
+.BR smf (7),
+.BR inetadm (8),
+.BR inetd (8),
+.BR svcadm (8)
+.LP
+Malkin, G. and Harkin, A. \fIRFC 2347, TFTP Option Extension\fR. The Internet
+Society. May 1998
+.sp
+.LP
+Malkin, G. and Harkin, A. \fIRFC 2348, TFTP Blocksize Option\fR. The Internet
+Society. May 1998
+.sp
+.LP
+Malkin, G. and Harkin, A. \fIRFC 2349, TFTP Timeout Interval and Transfer Size
+Options\fR. The Internet Society. May 1998
+.sp
+.LP
+Sollins, K.R. \fIRFC 1350, The TFTP Protocol (Revision 2)\fR. Network Working
+Group. July 1992.
+.SH NOTES
+.LP
+The \fBtftpd\fR server only acknowledges the transfer size option that is sent
+with a \fBread\fR request when the octet transfer mode is specified.
+.LP
+The \fBin.tftpd.1m\fR service is managed by the service management facility,
+\fBsmf\fR(7), under the service identifier:
+.sp
+.in +2
+.nf
+svc:/network/tftp/udp6:default
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Administrative actions on this service, such as enabling, disabling, or
+requesting restart, can be performed using \fBsvcadm\fR(8). Responsibility for
+initiating and restarting this service is delegated to \fBinetd\fR(8). Use
+\fBinetadm\fR(8) to make configuration changes and to view configuration
+information for this service. The service's status can be queried using the
+\fBsvcs\fR(1) command.
diff --git a/usr/src/man/man8/in.timed.8 b/usr/src/man/man8/in.timed.8
new file mode 100644
index 0000000000..d31bd6582b
--- /dev/null
+++ b/usr/src/man/man8/in.timed.8
@@ -0,0 +1,81 @@
+'\" te
+.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH IN.TIMED 8 "Aug 23, 2004"
+.SH NAME
+in.timed \- UDP or TCP time protocol service daemon
+.SH SYNOPSIS
+.LP
+.nf
+\fBin.timed\fR
+.fi
+
+.LP
+.nf
+FMRI \fIsvc\fR:/internet/time:default
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+FMRI stands for Fault Management Resource Identifier. It is used to identify
+resources managed by the Fault Manager. See \fBfmd\fR(8) and \fBsmf\fR(7).
+.sp
+.LP
+The \fBin.timed\fR service provides the server-side of the time protocol. The
+time server sends to requestors the time in seconds since midnight, January 1,
+1900. The time protocol is available on both TCP and UDP transports through
+port 37.
+.sp
+.LP
+The in.timed service is an \fBinetd\fR(8) \fBsmf\fR(7) delegated service. The
+\fBin.timed\fR detects which transport is requested by examining the socket it
+is passed by the \fBinetd\fR daemon.
+.sp
+.ne 2
+.na
+\fBTCP-based service\fR
+.ad
+.RS 21n
+Once a connection is established, the \fBin.timed\fR sends the time as a 32-bit
+binary number and closes the connection. Any received data is ignored.
+.RE
+
+.sp
+.ne 2
+.na
+\fBUDP-based service\fR
+.ad
+.RS 21n
+The \fBin.timed\fR listens for UDP datagrams. When a datagram is received, the
+server generates a UDP datagram containing the time as a 32-bit binary number
+and sends it to the client. Any received data is ignored.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7),
+.BR smf (7),
+.BR inetd (8)
+.sp
+.LP
+RFC 868
diff --git a/usr/src/man/man8/in.uucpd.8 b/usr/src/man/man8/in.uucpd.8
new file mode 100644
index 0000000000..b8e6466197
--- /dev/null
+++ b/usr/src/man/man8/in.uucpd.8
@@ -0,0 +1,189 @@
+'\" te
+.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH IN.UUCPD 8 "Aug 12, 2004"
+.SH NAME
+in.uucpd, uucpd \- UUCP server
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/in.uucpd\fR [\fB-n\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBin.uucpd\fR is the server for supporting \fBUUCP\fR connections over
+networks.
+.sp
+.LP
+\fBin.uucpd\fR is invoked by \fBinetd\fR(8) when a \fBUUCP\fR connection is
+established, that is, a connection to the port indicated in the "uucp" service
+specification, and executes the following protocol. See \fBservices\fR(5):
+.RS +4
+.TP
+1.
+The server prompts with \fBlogin:\fR. The \fBuucico\fR(8) process at the
+other end must supply a username.
+.RE
+.RS +4
+.TP
+2.
+Unless the username refers to an account without a password, the server then
+prompts with \fBPassword:\fR. The \fBuucico\fR process at the other end must
+supply the password for that account.
+.RE
+.sp
+.LP
+If the username is not valid, or is valid but refers to an account that does
+not have \fB/usr/lib/uucp/uucico\fR as its login shell, or if the password is
+not the correct password for that account, the connection is dropped.
+Otherwise, \fBuucico\fR is run, with the user \fBID\fR, group \fBID\fR, group
+set, and home directory for that account, with the environment variables
+\fBUSER\fR and \fB LOGNAME\fR set to the specified username, and with a
+\fB-u\fR flag specifying the username. Unless the \fB-n\fR flag is specified,
+entries are made in \fB/var/adm/utmpx\fR, \fB/var/adm/wtmpx\fR, and
+\fB/var/adm/lastlog\fR for the username. \fBin.uucpd\fR must be invoked by a
+user with appropriate privilege (usually root) in order to be able to verify
+that the password is correct.
+.SH SECURITY
+.sp
+.LP
+\fBin.uucpd\fR uses \fBpam\fR(3PAM) for authentication, account management, and
+session management. The \fBPAM\fR configuration policy, listed through
+\fB/etc/pam.conf\fR, specifies the modules to be used for \fBin.uucpd\fR. Here
+is a partial \fBpam.conf\fR file with entries for \fBuucp\fR using the UNIX
+authentication, account management, and session management module.
+.sp
+.in +2
+.nf
+uucp auth requisite pam_authtok_get.so.1
+uucp auth required pam_dhkeys.so.1
+uucp auth required pam_unix_auth.so.1
+
+uucp account requisite pam_roles.so.1
+uucp account required pam_projects.so.1
+uucp account required pam_unix_account.so.1
+
+uucp session required pam_unix_session.so.1
+.fi
+.in -2
+
+.sp
+.LP
+If there are no entries for the \fBuucp\fR service, then the entries for the
+"other" service will be used. If multiple authentication modules are listed,
+then the peer may be prompted for multiple passwords.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/var/adm/utmpx\fR\fR
+.ad
+.RS 20n
+accounting
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/adm/wtmpx\fR\fR
+.ad
+.RS 20n
+accounting
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/adm/lastlog\fR\fR
+.ad
+.RS 20n
+time of last login
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR svcs (1),
+.BR pam (3PAM),
+.BR pam.conf (5),
+.BR services (5),
+.BR attributes (7),
+.BR pam_authtok_check (7),
+.BR pam_authtok_get (7),
+.BR pam_authtok_store (7),
+.BR pam_dhkeys (7),
+.BR pam_passwd_auth (7),
+.BR pam_unix_account (7),
+.BR pam_unix_auth (7),
+.BR pam_unix_session (7),
+.BR smf (7),
+.BR inetadm (8),
+.BR inetd (8),
+.BR svcadm (8),
+.BR uucico (8)
+.SH DIAGNOSTICS
+.sp
+.LP
+All diagnostic messages are returned on the connection, after which the
+connection is closed.
+.sp
+.ne 2
+.na
+\fB\fBuser read\fR\fR
+.ad
+.RS 20n
+An error occurred while reading the username.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpasswd read\fR\fR
+.ad
+.RS 20n
+An error occurred while reading the password.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBLogin incorrect.\fR\fR
+.ad
+.RS 20n
+The username is invalid or refers to an account with a login shell other than
+\fB/usr/lib/uucp/uucico\fR, or the password is not the correct password for the
+account.
+.RE
+
+.SH NOTES
+.sp
+.LP
+The \fBin.uucpd\fR service is managed by the service management facility,
+\fBsmf\fR(7), under the service identifier:
+.sp
+.in +2
+.nf
+svc:/network/uucp
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Administrative actions on this service, such as enabling, disabling, or
+requesting restart, can be performed using \fBsvcadm\fR(8). Responsibility for
+initiating and restarting this service is delegated to \fBinetd\fR(8). Use
+\fBinetadm\fR(8) to make configuration changes and to view configuration
+information for this service. The service's status can be queried using the
+\fBsvcs\fR(1) command.
+.sp
+.LP
+The \fBpam_unix\fR(7) module is no longer supported. Similar functionality is
+provided by \fBpam_authtok_check\fR(7), \fBpam_authtok_get\fR(7),
+\fBpam_authtok_store\fR(7), \fBpam_dhkeys\fR(7), \fBpam_passwd_auth\fR(7),
+\fBpam_unix_account\fR(7), \fBpam_unix_auth\fR(7), and
+\fBpam_unix_session\fR(7).
diff --git a/usr/src/man/man8/inetadm.8 b/usr/src/man/man8/inetadm.8
new file mode 100644
index 0000000000..5587d0ece9
--- /dev/null
+++ b/usr/src/man/man8/inetadm.8
@@ -0,0 +1,338 @@
+'\" te
+.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH INETADM 8 "April 9, 2016"
+.SH NAME
+inetadm \- observe or configure inetd-controlled services
+.SH SYNOPSIS
+.LP
+.nf
+\fBinetadm\fR
+.fi
+
+.LP
+.nf
+\fBinetadm\fR \fB-?\fR
+.fi
+
+.LP
+.nf
+\fBinetadm\fR \fB-p\fR
+.fi
+
+.LP
+.nf
+\fBinetadm\fR \fB-l\fR {\fIFMRI\fR | \fIpattern\fR}
+.fi
+
+.LP
+.nf
+\fBinetadm\fR \fB-e\fR {\fIFMRI\fR | \fIpattern\fR}
+.fi
+
+.LP
+.nf
+\fBinetadm\fR \fB-d\fR {\fIFMRI\fR | \fIpattern\fR}
+.fi
+
+.LP
+.nf
+\fBinetadm\fR \fB-m\fR {\fIFMRI\fR | \fIpattern\fR}... {\fIname\fR=\fIvalue\fR}...
+.fi
+
+.LP
+.nf
+\fBinetadm\fR \fB-M\fR {\fIname\fR=\fIvalue\fR}...
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBinetadm\fR utility provides the following capabilities for
+\fBinetd\fR-managed SMF services:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Provides a list of all such services installed.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Lists the services' properties and values.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Allows enabling and disabling of services.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Allows modification of the services'property values, as well as the default
+values provided by \fBinetd\fR.
+.RE
+.sp
+.LP
+See \fBsmf\fR(7) for a description of an SMF service.
+.sp
+.LP
+With no arguments, \fBinetadm\fR lists all services under \fBinetd\fR(8)
+control, including such attributes as their current run state and whether or
+not they are enabled.
+.SH OPTIONS
+.LP
+For options taking one or more FMRI operands (see \fBsmf\fR(7) for a
+description of an FMRI), if the operand specifies a service (instead of a
+service instance), and that service has only a single instance, \fBinetadm\fR
+operates on that instance.
+.sp
+.LP
+If a service name is supplied and it contains more than one instance or a
+pattern is supplied and it matches more than one instance, a warning
+message is displayed and that operand is ignored.
+.sp
+.LP
+For those options taking \fIname\fR=\fIvalue\fR parameters, a description of
+each of the possible names and the allowed values is found in the
+\fBinetd\fR(8) man page.
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-?\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display a usage message.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR\fR
+.ad
+.sp .6
+.RS 4n
+Lists all default \fBinet\fR service property values provided by \fBinetd\fR in
+the form of \fIname\fR=\fIvalue\fR pairs. If the value is of boolean type, it
+is listed as TRUE or FALSE.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR {\fIFMRI\fR | \fIpattern\fR}...\fR
+.ad
+.sp .6
+.RS 4n
+List all properties for the specified service instances as
+\fIname\fR=\fIvalue\fR pairs. In addition, if the property value is inherited
+from the default value provided by \fBinetd\fR, the \fIname\fR=\fIvalue\fR pair
+is identified by the token (default). Property inheritance occurs when
+properties do not have a specified service instance default.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-e\fR {\fIFMRI\fR | \fIpattern\fR}...\fR
+.ad
+.sp .6
+.RS 4n
+Enable the specified service instances.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-d\fR {\fIFMRI\fR | \fIpattern\fR}...\fR
+.ad
+.sp .6
+.RS 4n
+Disable the specified service instances.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-m\fR {\fIFMRI\fR | \fIpattern\fR}...{\fIname\fR=\fIvalue\fR}...\fR
+.ad
+.sp .6
+.RS 4n
+Change the values of the specified properties of the identified service
+instances. Properties are specified as whitespace-separated
+\fIname\fR=\fIvalue\fR pairs. To remove an instance-specific value and accept
+the default value for a property, simply specify the property without a value,
+for example, \fBname=\fR .
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-M\fR {\fIname\fR=\fIvalue\fR}...\fR
+.ad
+.sp .6
+.RS 4n
+Change the values of the specified \fBinetd\fR default properties. Properties
+are specified as whitespace-separated \fIname\fR=\fIvalue\fR pairs.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRDisplaying Properties for a Service
+.sp
+.LP
+The following command displays the properties for the \fBspray\fR service.
+
+.sp
+.in +2
+.nf
+# inetadm -l network/rpc/spray:default
+SCOPE NAME=VALUE
+ name="sprayd"
+ endpoint_type="tli"
+ proto="datagram_v"
+ isrpc=TRUE
+ rpc_low_version=1
+ rpc_high_version=1
+ wait=TRUE
+ exec="/usr/lib/netsvc/spray/rpc.sprayd"
+ user="root"
+default bind_addr=""
+default bind_fail_max=-1
+default bind_fail_interval=-1
+default max_con_rate=-1
+default max_copies=-1
+default con_rate_offline=-1
+default failrate_cnt=40
+default failrate_interval=60
+default inherit_env=TRUE
+default tcp_trace=FALSE
+default tcp_wrappers=FALSE
+default connection_backlog=10
+.fi
+.in -2
+
+.LP
+\fBExample 2 \fRDisplaying Default Properties
+.sp
+.LP
+The following command displays default properties.
+
+.sp
+.in +2
+.nf
+# inetadm -p
+NAME=VALUE
+bind_addr=""
+bind_fail_max=-1
+bind_fail_interval=-1
+max_con_rate=-1
+max_copies=-1
+con_rate_offline=-1
+failrate_cnt=40
+failrate_interval=60
+inherit_env=TRUE
+tcp_trace=FALSE
+tcp_wrappers=FALSE
+default connection_backlog=10
+.fi
+.in -2
+
+.LP
+\fBExample 3 \fRChanging Property Values for a Service
+.sp
+.LP
+The following command changes \fBrpc_high_version\fR to \fB3\fR and
+\fBtcp_trace\fR to \fBTRUE\fR for the \fBspray\fR service.
+
+.sp
+.in +2
+.nf
+# inetadm -m network/rpc/spray:default \e
+ rpc_high_version=3 tcp_trace=TRUE
+# inetadm -l network/rpc/spray:default
+SCOPE NAME=VALUE
+ name="sprayd"
+ endpoint_type="tli"
+ proto="datagram_v"
+ isrpc=TRUE
+ rpc_low_version=1
+ rpc_high_version=3
+ wait=TRUE
+ exec="/usr/lib/netsvc/spray/rpc.sprayd"
+ user="root"
+default bind_addr=""
+default bind_fail_max=-1
+default bind_fail_interval=-1
+default max_con_rate=-1
+default max_copies=-1
+default con_rate_offline=-1
+default failrate_cnt=40
+default failrate_interval=60
+default inherit_env=TRUE
+ tcp_trace=TRUE
+default tcp_wrappers=FALSE
+default connection_backlog=10
+.fi
+.in -2
+
+.SH EXIT STATUS
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 5n
+Operation completed successfully.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB1\fR\fR
+.ad
+.RS 5n
+A fatal error occurred. An accompanying error message will provide further
+information.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB2\fR\fR
+.ad
+.RS 5n
+Invalid arguments were supplied, such as an ambiguous service FMRI or pattern.
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.LP
+.BR attributes (7),
+.BR smf (7),
+.BR inetd (8),
+.BR svccfg (8)
diff --git a/usr/src/man/man8/inetconv.8 b/usr/src/man/man8/inetconv.8
new file mode 100644
index 0000000000..48627c329f
--- /dev/null
+++ b/usr/src/man/man8/inetconv.8
@@ -0,0 +1,256 @@
+'\" te
+.\" Copyright (c) 2004, Sun Microsystems, Inc.
+.\" All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH INETCONV 8 "Oct 21, 2004"
+.SH NAME
+inetconv \- convert \fBinetd.conf\fR entries into smf service manifests, import
+them into smf repository
+.SH SYNOPSIS
+.LP
+.nf
+\fBinetconv\fR \fB-?\fR
+.fi
+
+.LP
+.nf
+\fBinetconv\fR [\fB-f\fR] [\fB-n\fR] [\fB-i\fR \fIsrcfile\fR] [\fB-o\fR \fIdestdir\fR]
+.fi
+
+.LP
+.nf
+\fBinetconv\fR \fB-e\fR [\fB-n\fR] [\fB-i\fR \fIsrcfile\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBinetconv\fR utility converts a file containing records of
+\fBinetd.conf\fR(5) into \fBsmf\fR(7) service manifests, and then import those
+manifests into the \fBsmf\fR repository. Once the \fBinetd.conf\fR file has
+been converted, the only way to change aspects of an inet service is to use the
+\fBinetadm\fR(8) utility.
+.sp
+.LP
+There is a one-to-one correspondence between a service line in the input file
+and the manifest generated. By default, the manifests are named using the
+following template:
+.sp
+.in +2
+.nf
+\fI<svcname>\fR-\fI<proto>\fR\fB\&.xml\fR
+.fi
+.in -2
+
+.sp
+.LP
+The \fI<svcname>\fR token is replaced by the service's name and the
+\fI<proto>\fR token by the service's protocol. Any slash (\fB/\fR) characters
+that exist in the source line for the service name or protocol are replaced
+with underscores (\fB_\fR).
+.sp
+.LP
+The service line is recorded as a property of the converted service.
+.sp
+.LP
+During the conversion process, if a service line is found to be malformed or to
+be for an internal \fBinetd\fR service, no manifest is generated and that
+service line is skipped.
+.sp
+.LP
+The input file is left untouched by the conversion process.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-?\fR\fR
+.ad
+.RS 14n
+Display a usage message.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-e\fR\fR
+.ad
+.RS 14n
+Enable \fBsmf\fR services which are listed in the input file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR\fR
+.ad
+.RS 14n
+If a service manifest of the same name as the one to be generated is found in
+the destination directory, \fBinetconv\fR will overwrite that manifest if this
+option is specified. Otherwise, an error message is generated and the
+conversion of that service is not performed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-i\fR \fIsrcfile\fR\fR
+.ad
+.RS 14n
+Permits the specification of an alternate input file \fIsrcfile\fR. If this
+option is not specified, then the \fBinetd.conf\fR(5) file is used as input.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR\fR
+.ad
+.RS 14n
+Turns off the auto-import of the manifests generated during the conversion
+process. Later, if you want to import a generated manifest into the
+\fBsmf\fR(7) repository, you can do so through the use of the \fBsvccfg\fR(8)
+utility.
+.sp
+If the \fB-e\fR option is specified, the \fB-n\fR option only displays the
+\fBsmf\fR services that would be enabled.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-o\fR\fR
+.ad
+.RS 14n
+Permits the specification of an alternate destination directory \fIdestdir\fR
+for the generated manifests. If this option is not specified, then the
+manifests are placed in \fB/var/svc/manifest/network/rpc\fR, if the service is
+a RPC service, or \fB/var/svc/manifest/network\fR otherwise.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRGenerating \fBsmf\fR Manifests from \fBinetd.conf\fR
+.sp
+.LP
+The following command generates \fBsmf\fR(7) manifests from \fBinetd.conf\fR(5)
+and places them in \fB/var/tmp\fR, overwriting any preexisting manifests of the
+same name, and then imports them into the \fBsmf\fR repository.
+
+.sp
+.in +2
+.nf
+# inetconv -f -o /var/tmp
+100232/10 -> /var/tmp/100232_10-rpc_udp.xml
+Importing 100232_10-rpc_udp.xml ...Done
+telnet -> /var/tmp/telnet-tcp6.xml
+Importing telnet-tcp6.xml ...Done
+.fi
+.in -2
+
+.LP
+\fBExample 2 \fRGenerating Manifests from an Alternate Input File
+.sp
+.LP
+The following command specifies a different input file and does not load the
+resulting manifests into the \fBsmf\fR repository.
+
+.sp
+.in +2
+.nf
+# inetconv -n -i /export/test/inet.svcs -o /var/tmp
+100232/10 -> /var/tmp/100232_10-rpc_udp.xml
+telnet -> /var/tmp/telnet-tcp6.xml
+.fi
+.in -2
+
+.SH EXIT STATUS
+.sp
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 5n
+Operation completed successfully (no errors).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB1\fR\fR
+.ad
+.RS 5n
+Invalid options specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB2\fR\fR
+.ad
+.RS 5n
+One or more service lines are malformed, and thus no manifest(s) were generated
+for them.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB3\fR\fR
+.ad
+.RS 5n
+An error occurred importing one or more of the generated manifests.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB4\fR\fR
+.ad
+.RS 5n
+A system error occurred.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/var/svc/manifest/network/{rpc}/\fI<svcname>\fR-\fI<proto>\fR\&.xml\fR\fR
+.ad
+.sp .6
+.RS 4n
+default output manifest file name
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR inetd.conf (5),
+.BR attributes (7),
+.BR smf (7),
+.BR inetadm (8),
+.BR inetd (8),
+.BR svccfg (8)
diff --git a/usr/src/man/man8/inetd.8 b/usr/src/man/man8/inetd.8
new file mode 100644
index 0000000000..40e9f12896
--- /dev/null
+++ b/usr/src/man/man8/inetd.8
@@ -0,0 +1,864 @@
+'\" te
+.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH INETD 8 "May 13, 2017"
+.SH NAME
+inetd \- Service Management Facility delegated restarter for inet services
+.SH SYNOPSIS
+.LP
+.nf
+\fBinetd\fR [\fIconfiguration-file\fR] start | stop | refresh
+.fi
+
+.LP
+.nf
+ svc:/network/inetd:default
+.fi
+
+.SH DESCRIPTION
+.LP
+\fBinetd\fR is the delegated restarter for internet services for the Service
+Management Facility (SMF). Its basic responsibilities are to manage service
+states in response to administrative requests, system failures, and service
+failures; and, when appropriate, to listen for network requests for services.
+.sp
+.LP
+Services are no longer managed by editing the inetd configuration file,
+\fBinetd.conf\fR(5). Instead, you use \fBinetconv\fR(8) to convert the
+configuration file content into SMF format services, then manage these services
+using \fBinetadm\fR(8) and \fBsvcadm\fR(8). Once a service has been converted
+by \fBinetconv\fR, any changes to the legacy data in the \fBinetd\fR config
+file will not become effective. However, \fBinetd\fR does alert the
+administrator when it notices change in the configuration file. See the start
+description under the "inetd Methods" section for further information.
+.sp
+.LP
+Also note that the current \fBinetd\fR cannot be run from outside the SMF. This
+means it cannot be run from the command line, as was supported by the previous
+\fBinetd\fR. If you attempt to do this, a message is sent to stderr displaying
+mappings between the options supported by the previous \fBinetd\fR to the SMF
+version of \fBinetd\fR.
+.sp
+.LP
+\fBinetd\fR listens for connections on behalf of all services that are in
+either the \fBonline\fR or \fBdegraded\fR state. A service enters one of these
+states when the service is enabled by the user and \fBinetd\fR manages to
+listen on its behalf. A listen attempt can fail if another server (whether
+standalone or a third-party internet service) is already listening on the same
+port. When this occurs, \fBinetd\fR logs this condition and continues trying to
+bind to the port at configured intervals a configured number of times. See the
+property \fBbind_fail_max\fR under "Service Properties," below, for more
+details.
+.sp
+.LP
+The configuration of all \fBinetd\fR's managed SMF services is read when it is
+started. It is reread when \fBinetd\fR is refreshed, which occurs in response
+to an SMF request, or when it receives a SIGHUP signal. See the \fBrefresh\fR
+description under "inetd Methods" for the behavior on configuration refresh.
+.sp
+.LP
+You can use the \fBinetadm\fR(8) or \fBsvccfg\fR(8) utilities to make
+configuration changes to Internet services within the SMF repository.
+\fBinetadm\fR has the advantage over \fBsvccfg\fR in that it provides an
+Internet/RPC service context.
+.SS "Service States"
+.LP
+As part of its service management duties, \fBinetd\fR implements a state
+machine for each of its managed services. The states in this machine are made
+up of the \fBsmf\fR(7) set of states. The semantics of these states are as
+follows:
+.sp
+.ne 2
+.na
+\fB\fBuninitialized\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBinetd\fR has yet to process this service.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBonline\fR\fR
+.ad
+.sp .6
+.RS 4n
+The service is handling new network requests and might have existing
+connections active.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdegraded\fR\fR
+.ad
+.sp .6
+.RS 4n
+The service has entered this state because it was able to listen and process
+requests for some, but not all, of the protocols specified for the service,
+having exhausted its listen retries. Existing network connections might be
+active.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBoffline\fR\fR
+.ad
+.sp .6
+.RS 4n
+Connections might be active, but no new requests are being handled. This is a
+transient state. A service might be \fBoffline\fR for any of the following
+reasons:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The service's dependencies are unmet. When its dependencies become met the
+service's state will be re-evaluated.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The service has exceeded its configured connection rate limit,
+\fBmax_con_rate\fR. The service's state is re-evaluated when its connection
+offline timer, \fBcon_rate_offline\fR, expires.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The service has reached its allowed number of active connections,
+\fBmax_copies\fR. The service's state is re-evaluated when the number of active
+connections drops below \fBmax_copies\fR.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBinetd\fR failed to listen on behalf of the service on all its protocols. As
+mentioned above, \fBinetd\fR retries up to a configured maximum number of
+times, at configured intervals.The service's state is re-evaluated when either
+a listen attempt is successful or the retry limit is reached.
+.RE
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdisabled\fR\fR
+.ad
+.sp .6
+.RS 4n
+The service has been turned off by an administrator, is not accepting new
+connections, and has none active. Administrator intervention is required to
+exit this state.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmaintenance\fR\fR
+.ad
+.sp .6
+.RS 4n
+A service is in this state because it is either malfunctioning and needs
+administrator attention or because an administrator has requested it.
+.sp
+Events constituting malfunctioning include: \fBinetd\fR's inability to listen
+on behalf on any of the service's protocols before exceeding the service's bind
+retry limit, non-start methods returning with non-success return values, and
+the service exceeding its failure rate.
+.sp
+You request the maintenance state to perform maintenance on the service, such
+as applying a patch. No new requests are handled in this state, but existing
+connections might be active. Administrator intervention is required to exit
+this state.
+.RE
+
+.sp
+.LP
+Use \fBinetadm\fR(8) to obtain the current state of a managed service.
+.SS "Service Methods"
+.LP
+As part of certain state transitions \fBinetd\fR will execute, if supplied, one
+of a set of methods provided by the service. The set of supported methods are:
+.sp
+.ne 2
+.na
+\fB\fBinetd_start\fR\fR
+.ad
+.sp .6
+.RS 4n
+Executed to handle a request for an \fBonline\fR or \fBdegraded\fR service.
+Since there is no separate state to distinguish a service with active
+connections, this method is not executed as part of a state transition.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBinetd_offline\fR\fR
+.ad
+.sp .6
+.RS 4n
+Executed when a service is taken from the \fBonline\fR or \fBdegraded\fR state
+to the \fBoffline\fR state. For a \fBwait\fR-type service that at the time of
+execution is performing its own listening, this method should result in it
+ceasing listening. This method will be executed before the \fBdisable\fR method
+in the case an \fBonline\fR/\fBdegraded\fR service is disabled. This method is
+required to be implemented for a \fBwait\fR-type service.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBinetd_online\fR\fR
+.ad
+.sp .6
+.RS 4n
+Executed when a service transitions from the \fBoffline\fR state to the
+\fBonline\fR state. This method allows a service author to carry out some
+preparation prior to a service starting to handle requests.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBinetd_disable\fR\fR
+.ad
+.sp .6
+.RS 4n
+Executed when a service transitions from the \fBoffline\fR state to the
+\fBdisabled\fR state. It should result in any active connections for a service
+being terminated.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBinetd_refresh\fR\fR
+.ad
+.sp .6
+.RS 4n
+Executed when both of the following conditions are met:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBinetd\fR is refreshed, by means of the framework or a SIGHUP, or a request
+comes in to refresh the service, and
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+the service is currently in the \fBonline\fR state and there are no
+configuration changes that would result in the service needing to be taken
+\fBoffline\fR and brought back again.
+.RE
+.RE
+
+.sp
+.LP
+The only compulsory method is the \fBinetd_start\fR method. In the absence of
+any of the others, \fBinetd\fR runs no method but behaves as if one was run
+successfully.
+.SS "Service Properties"
+.LP
+Configuration for SMF-managed services is stored in the SMF repository. The
+configuration is made up of the basic configuration of a service, the
+configuration for each of the service's methods, and the default configuration
+applicable to all \fBinetd\fR-managed services.
+.sp
+.LP
+For details on viewing and modifying the configuration of a service and the
+defaults, refer to \fBinetadm\fR(8).
+.sp
+.LP
+The basic configuration of a service is stored in a property group named
+\fBinetd\fR in the service. The properties comprising the basic configuration
+are as follows:
+.sp
+.ne 2
+.na
+\fB\fBbind_addr\fR\fR
+.ad
+.sp .6
+.RS 4n
+The address of the network interface to which the service should be bound. An
+empty string value causes the service to accept connections on any network
+interface.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBbind_fail_interval\fR\fR
+.ad
+.sp .6
+.RS 4n
+The time interval in seconds between a failed bind attempt and a retry. The
+values \fB0\fR and \fB-1\fR specify that no retries are attempted and the first
+failure is handled the same as exceeding \fBbind_fail_max\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBbind_fail_max\fR\fR
+.ad
+.sp .6
+.RS 4n
+The maximum number of times \fBinetd\fR retries binding to a service's
+associated port before giving up. The value \fB-1\fR specifies that no retry
+limit is imposed. If none of the service's protocols were bound to before any
+imposed limit is reached, the service goes to the \fBmaintenance\fR state;
+otherwise, if not all of the protocols were bound to, the service goes to the
+\fBdegraded\fR state.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcon_rate_offline\fR\fR
+.ad
+.sp .6
+.RS 4n
+The time in seconds a service will remain offline if it exceeds its configured
+maximum connection rate, \fBmax_con_rate\fR. The values \fB0\fR and \fB-1\fR
+specify that connection rate limiting is disabled.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBconnection_backlog\fR\fR
+.ad
+.sp .6
+.RS 4n
+The backlog queue size. Represents a limit on the number of incoming client
+requests that can be queued at the listening endpoints for servers.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBendpoint_type\fR\fR
+.ad
+.sp .6
+.RS 4n
+The type of the socket used by the service or the value \fBtli\fR to signify a
+TLI-based service. Valid socket type values are: \fBstream\fR, \fBdgram\fR,
+\fBraw\fR, \fBseqpacket\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfailrate_cnt\fR\fR
+.ad
+.sp .6
+.RS 4n
+The count portion of the service's failure rate limit. The failure rate limit
+applies to \fBwait\fR-type services and is reached when \fIcount\fR instances
+of the service are started within a given time. Exceeding the rate results in
+the service being transitioned to the \fBmaintenance\fR state. This is
+different from the behavior of the previous \fBinetd\fR, which continued to
+retry every 10 minutes, indefinitely. The \fBfailrate_cnt\fR check accounts for
+badly behaving servers that fail before consuming the service request and which
+would otherwise be continually restarted, taxing system resources. Failure rate
+is equivalent to the \fB-r\fR option of the previous \fBinetd\fR. The values
+\fB0\fR and \fB-1\fR specify that this feature is disabled.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfailrate_interval\fR\fR
+.ad
+.sp .6
+.RS 4n
+The time portion in seconds of the service's failure rate. The values \fB0\fR
+and \fB-1\fR specify that the failure rate limit feature is disabled.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBinherit_env\fR\fR
+.ad
+.sp .6
+.RS 4n
+If true, pass \fBinetd\fR's environment on to the service's start method.
+Regardless of this setting, \fBinetd\fR will set the variables \fBSMF_FMRI\fR,
+\fBSMF_METHOD\fR, and \fBSMF_RESTARTER\fR in the start method's environment, as
+well as any environment variables set in the method context. These variables
+are described in \fBsmf_method\fR(7).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBisrpc\fR\fR
+.ad
+.sp .6
+.RS 4n
+If true, this is an RPC service.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmax_con_rate\fR\fR
+.ad
+.sp .6
+.RS 4n
+The maximum allowed connection rate, in connections per second, for a
+\fBnowait\fR-type service. The values \fB0\fR and \fB-1\fR specify that that
+connection rate limiting is disabled.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmax_copies\fR\fR
+.ad
+.sp .6
+.RS 4n
+The maximum number of copies of a \fBnowait\fR service that can run
+concurrently. The values \fB0\fR and \fB-1\fR specify that copies limiting is
+disabled.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBname\fR\fR
+.ad
+.sp .6
+.RS 4n
+Can be set to one of the following values:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+a service name understood by \fBgetservbyname\fR(3SOCKET);
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+if \fBisrpc\fR is set to \fBtrue\fR, a service name understood by
+\fBgetrpcbyname\fR(3NSL);
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+if \fBisrpc\fR is set to \fBtrue\fR, a valid RPC program number.
+.RE
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBproto\fR\fR
+.ad
+.sp .6
+.RS 4n
+In the case of socket-based services, this is a list of protocols supported by
+the service. Valid protocols are: \fBtcp\fR, \fBtcp6\fR, \fBtcp6only\fR,
+\fBudp\fR, \fBudp6\fR, and \fBudp6only\fR. In the case of TLI services, this is
+a list of netids recognized by \fBgetnetconfigent\fR(3NSL) supported by the
+service, plus the values \fBtcp6only\fR and \fBudp6only\fR. RPC/TLI services
+also support nettypes in this list, and \fBinetd\fR first tries to interpret
+the list member as a nettype for these service types. The values \fBtcp6only\fR
+and \fBudp6only\fR are new to \fBinetd\fR; these values request that
+\fBinetd\fR listen only for and pass on true \fBIPv6\fR requests (not IPv4
+mapped ones). See "Configuring Protocols for Sockets-Based Services," below.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrpc_low_version\fR\fR
+.ad
+.sp .6
+.RS 4n
+Lowest supported RPC version. Required when \fBisrpc\fR is set to \fBtrue\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrpc_high_version\fR\fR
+.ad
+.sp .6
+.RS 4n
+Highest supported RPC version. Required when \fBisrpc\fR is set to \fBtrue\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBtcp_trace\fR\fR
+.ad
+.sp .6
+.RS 4n
+If true, and this is a \fBnowait\fR-type service, \fBinetd\fR logs the client's
+IP address and TCP port number, along with the name of the service, for each
+incoming connection, using the \fBsyslog\fR(3C) facility. \fBinetd\fR uses the
+\fBsyslog\fR facility \fBcode\fR daemon and \fBnotice\fR priority level. See
+\fBsyslog.conf\fR(5) for a description of \fBsyslog\fR codes and severity
+levels. This logging is separate from the logging done by the TCP wrappers
+facility.
+.sp
+\fBtcp_trace\fR is equivalent to the previous \fBinetd\fR's \fB-t\fR option
+(and the \fB/etc/default/inetd\fR property \fBENABLE_CONNECTION_LOGGING\fR).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBtcp_wrappers\fR\fR
+.ad
+.sp .6
+.RS 4n
+If \fBtrue\fR, enable TCP wrappers access control. This applies only to
+services with \fBendpoint_type\fR set to \fBstreams\fR and \fBwait\fR set to
+\fBfalse\fR. The \fBsyslog\fR facility \fBcode\fR daemon is used to log allowed
+connections (using the \fBnotice\fR severity level) and denied traffic (using
+the \fBwarning\fR severity level). See \fBsyslog.conf\fR(5) for a description
+of \fBsyslog\fR codes and severity levels. The stability level of the TCP
+wrappers facility and its configuration files is External. As the TCP wrappers
+facility is not controlled by Sun, intra-release incompatibilities are not
+uncommon. See \fBattributes\fR(7).
+.sp
+For more information about configuring TCP wrappers, refer to
+\fBtcpd\fR(8) and \fBhosts_access\fR(5).
+.sp
+\fBtcp_wrappers\fR is equivalent to the previous inetd's
+\fB/etc/default/inetd\fR property \fBENABLE_TCPWRAPPERS\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBwait\fR\fR
+.ad
+.sp .6
+.RS 4n
+If \fBtrue\fR this is a \fBwait\fR-type service, otherwise it is a
+\fBnowait\fR-type service. A \fBwait\fR-type service has the following
+characteristics:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Its \fBinetd_start\fR method will take over listening duties on the service's
+bound endpoint when it is executed.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBinetd\fR will wait for it to exit after it is executed before it resumes
+listening duties.
+.RE
+Datagram servers must be configured as being of type \fBwait\fR, as they are
+always invoked with the original datagram endpoint that will participate in
+delivering the service bound to the specified service. They do not have
+separate "listening" and "accepting" sockets. Connection-oriented services,
+such as TCP stream services can be designed to be either of type \fBwait\fR or
+\fBnowait\fR.
+.RE
+
+.sp
+.LP
+A number of the basic properties are optional for a service. In their absence,
+their values are taken from the set of default values present in the
+\fBdefaults\fR property group in the \fBinetd\fR service. These properties,
+with their seed values, are listed below. Note that these values are
+configurable through \fBinetadm\fR(8).
+.sp
+.in +2
+.nf
+bind_fail_interval -1
+bind_fail_max -1
+con_rate_offline -1
+connection_backlog 10
+failrate_count 40
+failrate_time 60
+inherit_env true
+max_con_rate -1
+max_copies -1
+tcp_trace false
+tcp_wrappers false
+.fi
+.in -2
+
+.sp
+.LP
+Each method specified for a service will have its configuration stored in the
+SMF repository, within a property group of the same name as the method. The set
+of properties allowable for these methods includes those specified for the
+services managed by \fBsvc.startd\fR(8). (See \fBsvc.startd\fR(8) for further
+details.) Additionally, for the \fBinetd_start\fR method, you can set the
+\fBarg0\fR property.
+.sp
+.LP
+The \fBarg0\fR property allows external wrapper programs to be used with
+\fBinetd\fR services. Specifically, it allows the first argument,
+\fBargv[0]\fR, of the service's start method to be something other than the
+path of the server program.
+.sp
+.LP
+In the case where you want to use an external wrapper program and pass
+arguments to the service's daemon, the arguments should be incorporated as
+arguments to the wrapper program in the \fBexec\fR property. For example:
+.sp
+.in +2
+.nf
+exec='/path/to/wrapper/prog service_daemon_args'
+arg0='/path/to/service/daemon'
+.fi
+.in -2
+
+.sp
+.LP
+In addition to the special method tokens mentioned in \fBsmf_method\fR(7),
+\fBinetd\fR also supports the \fB:kill_process\fR token for \fBwait\fR-type
+services. This results in behavior identical to that if the \fB:kill\fR token
+were supplied, except that the \fBkill\fR signal is sent only to the parent
+process of the \fBwait\fR-type service's \fBstart\fR method, not to all members
+of its encompassing process contract (see \fBprocess\fR(5)).
+.SS "Configuring Protocols for Sockets-Based Services"
+.LP
+When configuring \fBinetd\fR for a sockets-based service, you have the choice,
+depending on what is supported by the service, of the alternatives described
+under the \fBproto\fR property, above. The following are guidelines for which
+\fBproto\fR values to use:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+For a service that supports only IPv4: \fBtcp\fR and \fBudp\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+For a service that supports only IPv6: \fBtcp6only\fR and \fBudp6only\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+For a service that supports both IPv4 and IPv6:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Obsolete and not recommended: \fBtcp6\fR and \fBudp6\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Recommended: use two separate entries that differ only in the proto field. One
+entry has \fBtcp\fR and the other has \fBtcp6only\fR, or \fBudp\fR plus
+\fBudp6only\fR.
+.RE
+.RE
+.sp
+.LP
+See EXAMPLES for an example of a configuration of a service that supports both
+IPv4 and IPv6.
+.SS "\fBinetd\fR Methods"
+.LP
+\fBinetd\fR provides the methods listed below for consumption by the master
+restarter, \fBsvc.startd\fR(8).
+.sp
+.ne 2
+.na
+\fB\fBstart\fR\fR
+.ad
+.sp .6
+.RS 4n
+Causes \fBinetd\fR to start providing service. This results in \fBinetd\fR
+beginning to handle \fBsmf\fR requests for its managed services and network
+requests for those services that are in either the \fBonline\fR or
+\fBdegraded\fR state.
+.sp
+In addition, \fBinetd\fR also checks if the \fBinetd.conf\fR(5)-format
+configuration file it is monitoring has changed since the last
+\fBinetconv\fR(8) conversion was carried out. If it has, then a message
+telling the administrator to re-run \fBinetconv\fR to effect the changes made
+is logged in \fBsyslog\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBstop\fR\fR
+.ad
+.sp .6
+.RS 4n
+Causes \fBinetd\fR to stop providing service. At this point, \fBinetd\fR
+transitions each of its services that are not in either the \fBmaintenance\fR
+or \fBdisabled\fR states to the \fBoffline\fR state, running any appropriate
+methods in the process.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrefresh\fR\fR
+.ad
+.sp .6
+.RS 4n
+Results in a refresh being performed for each of its managed services and the
+\fBinetd.conf\fR(5) format configuration file being checked for change, as in
+the \fBstart\fR method. When a service is refreshed, its behavior depends on
+its current state:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+if it is in the \fBmaintenance\fR or \fBdisabled\fR states, no action is
+performed because the configuration will be read and consumed when the service
+leaves the state;
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+if it is in the \fBoffline\fR state, the configuration will be read and any
+changes consumed immediately;
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+if it is in the \fBonline\fR or \fBdegraded\fR state and the configuration has
+changed such that a re-binding is necessary to conform to it, then the service
+will be transitioned to the \fBoffline\fR state and back again, using the new
+configuration for the bind;
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+if it is in the \fBonline\fR state and a re-binding is not necessary, then the
+\fBinetd_refresh\fR method of the service, if provided, will be run to allow
+\fBonline\fR \fBwait\fR-type services to consume any other changes.
+.RE
+.RE
+
+.SH OPTIONS
+.LP
+No options are supported.
+.SH OPERANDS
+.ne 2
+.na
+\fB\fIconfiguration-file\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies an alternate location for the legacy service file
+(\fBinetd.conf\fR(5)).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBstart\fR|\fBstop\fR|\fBrefresh\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies which of \fBinetd\fR's methods should be run.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRConfiguring a Service that Supports Both IPv4 and IPv6
+.sp
+.LP
+The following commands illustrate the existence of services that support both
+IPv4 and IPv6 and assign \fBproto\fR properties to those services.
+
+.sp
+.in +2
+.nf
+example# \fBsvcs -a | grep mysvc\fR
+online 15:48:29 svc:/network/mysvc:dgram4
+online 15:48:29 svc:/network/mysvc:dgram6
+online 15:51:47 svc:/network/mysvc:stream4
+online 15:52:10 svc:/network/mysvc:stream6
+
+# \fBinetadm -M network/rpc/mysvc:dgram4 proto=udp\fR
+# \fBinetadm -M network/rpc/mysvc:dgram6 proto=udp6only\fR
+# \fBinetadm -M network/rpc/mysvc:stream4 proto=tcp\fR
+# \fBinetadm -M network/rpc/mysvc:stream6 proto=tcp6only\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+See \fBsvcs\fR(1) and \fBinetadm\fR(8) for descriptions of those commands.
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.LP
+.BR svcs (1),
+.BR syslog (3C),
+.BR getnetconfigent (3NSL),
+.BR getrpcbyname (3NSL),
+.BR getservbyname (3SOCKET),
+.BR inetd.conf (5),
+.BR process (5),
+.BR syslog.conf (5),
+.BR attributes (7),
+.BR smf (7),
+.BR smf_method (7),
+.BR fmd (8),
+.BR inetadm (8),
+.BR inetconv (8),
+.BR svc.startd (8),
+.BR svcadm (8),
+.BR svccfg (8)
+.SH NOTES
+.LP
+The \fBinetd\fR daemon performs the same function as, but is implemented
+significantly differently from, the daemon of the same name in Solaris 9 and
+prior Solaris operating system releases. In the current Solaris release,
+\fBinetd\fR is part of the Service Management Facility (see \fBsmf\fR(7)) and
+will run only within that facility.
+.sp
+.LP
+The \fB/etc/default/inetd\fR file has been deprecated. The functionality
+represented by the properties \fBENABLE_CONNECTION_LOGGING\fR and
+\fBENABLE_TCP_WRAPPERS\fR are now available as the \fBtcp_trace\fR and
+\fBtcp_wrappers\fR properties, respectively. These properties are described
+above, under "Service Properties".
diff --git a/usr/src/man/man8/infocmp.8 b/usr/src/man/man8/infocmp.8
new file mode 100644
index 0000000000..f79e2d164f
--- /dev/null
+++ b/usr/src/man/man8/infocmp.8
@@ -0,0 +1,338 @@
+'\" te
+.\" Copyright (c) 1996, Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH INFOCMP 8 "Jul 5, 1990"
+.SH NAME
+infocmp \- compare or print out terminfo descriptions
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/bin/infocmp\fR [\fB-d\fR] [\fB-c\fR] [\fB-n\fR] [\fB-I\fR] [\fB-L\fR] [\fB-C\fR] [\fB-r\fR] [\fB-u\fR]
+ [\fB-s\fR | d | i | l | c] [\fB-v\fR] [\fB-V\fR] [\fB-1\fR] [\fB-w\fR \fIwidth\fR]
+ [\fB-A\fR \fI directory\fR] [\fB-B\fR \fIdirectory\fR] [\fItermname\fR]...
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBinfocmp\fR compares a binary \fBterminfo\fR entry with other terminfo
+entries, rewrites a \fBterminfo\fR description to take advantage of the
+\fBuse=\fR terminfo field, or prints out a \fBterminfo\fR description from the
+binary file ( \fBterm\fR ) in a variety of formats. It displays boolean fields
+first, then numeric fields, followed by the string fields. If no options are
+specified and zero, or one \fItermname\fR is specified, the \fB-I\fR option is
+assumed. If more than one \fItermname\fR is specified, the \fB-d\fR option is
+assumed.
+.SH OPTIONS
+.sp
+.LP
+The \fB-d\fR \fB,\fR \fB-c\fR \fB,\fR and \fB-n\fR options can be used for
+comparisons. \fBinfocmp\fR compares the \fBterminfo\fR description of the first
+terminal \fItermname\fR with each of the descriptions given by the entries for
+the other terminal's \fItermname\fR. If a capability is defined for only one of
+the terminals, the value returned will depend on the type of the capability:
+\fBF\fR for boolean variables, \fB\(mi1\fR for integer variables, and
+\fINULL\fR for string variables.
+.sp
+.ne 2
+.na
+\fB\fB-d\fR\fR
+.ad
+.RS 6n
+Produce a list of each capability that is different between two entries. This
+option is useful to show the difference between two entries, created by
+different people, for the same or similar terminals.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-c\fR\fR
+.ad
+.RS 6n
+Produce a list of each capability that is common between two entries.
+Capabilities that are not set are ignored. This option can be used as a quick
+check to see if the \fB-u\fR option is worth using.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR\fR
+.ad
+.RS 6n
+Produce a list of each capability that is in neither entry. If no
+\fItermname\fR is given, the environment variable \fBTERM\fR will be used for
+both of the \fItermname\fRs. This can be used as a quick check to see if
+anything was left out of a description.
+.RE
+
+.sp
+.LP
+The \fB-I\fR \fB,\fR \fB-L\fR \fB,\fR and \fB-C\fR options will produce a
+source listing for each terminal named.
+.sp
+.ne 2
+.na
+\fB\fB-I\fR\fR
+.ad
+.RS 6n
+Use the \fBterminfo\fR names.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-L\fR\fR
+.ad
+.RS 6n
+Use the long C variable name listed in < \fBterm.h\fR >.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-C\fR\fR
+.ad
+.RS 6n
+Use the \fBtermcap\fR names. The source produced by the \fB-C\fR option may be
+used directly as a \fBtermcap\fR entry, but not all of the parameterized
+strings may be changed to the \fBtermcap\fR format. \fBinfocmp\fR will attempt
+to convert most of the parameterized information, but anything not converted
+will be plainly marked in the output and commented out. These should be edited
+by hand.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-r\fR\fR
+.ad
+.RS 6n
+When using \fB-C\fR \fB,\fR put out all capabilities in \fBtermcap\fR form.
+.RE
+
+.sp
+.LP
+If no \fItermname\fR is given, the environment variable \fBTERM\fR will be used
+for the terminal name.
+.sp
+.LP
+All padding information for strings will be collected together and placed at
+the beginning of the string where \fBtermcap\fR expects it. Mandatory padding
+(padding information with a trailing '/') will become optional.
+.sp
+.LP
+All \fBtermcap\fR variables no longer supported by \fBterminfo ,\fR but are
+derivable from other \fBterminfo\fR variables, will be displayed. Not all
+\fBterminfo\fR capabilities will be translated; only those variables which were
+part of \fBtermcap\fR will normally be displayed. Specifying the \fB-r\fR
+option will take off this restriction, allowing all capabilities to be
+displayed in \fBtermcap\fR form.
+.sp
+.LP
+Note that because padding is collected to the beginning of the capability, not
+all capabilities are displayed. Mandatory padding is not supported. Because
+\fBtermcap\fR strings are not as flexible, it is not always possible to convert
+a \fBterminfo\fR string capability into an equivalent \fBtermcap\fR format. A
+subsequent conversion of the \fBtermcap\fR file back into \fBterminfo\fR format
+will not necessarily reproduce the original \fBterminfo\fR source.
+.sp
+.LP
+Some common \fBterminfo\fR parameter sequences, their \fBtermcap\fR
+equivalents, and some terminal types which commonly have such sequences, are:
+.sp
+.in +2
+.nf
+\fBterminfo termcap\fR Representative Terminals
+\fB%p1%c %.\fR adm
+\fB%p1%d %d\fR hp, ANSI standard, vt100
+\fB%p1%'x'%+%c %+x\fR concept
+\fB%i %i\fR ANSI standard, vt100
+\fB%p1%?%'x'%>%t%p1%'y'%+%; %>xy\fR concept
+\fB%p2\fR is printed before \fB%p1 %r\fR hp
+.fi
+.in -2
+.sp
+
+.sp
+.ne 2
+.na
+\fB\fB-u\fR\fR
+.ad
+.RS 6n
+Produce a \fBterminfo\fR source description of the first terminal
+\fItermname\fR which is relative to the sum of the descriptions given by the
+entries for the other terminals' \fItermname\fRs. It does this by analyzing the
+differences between the first \fItermname\fR and the other \fItermnames\fR and
+producing a description with \fBuse=\fR fields for the other terminals. In this
+manner, it is possible to retrofit generic \fBterminfo\fR entries into a
+terminal's description. Or, if two similar terminals exist, but were coded at
+different times, or by different people so that each description is a full
+description, using \fBinfocmp\fR will show what can be done to change one
+description to be relative to the other.
+.RE
+
+.sp
+.LP
+A capability is displayed with an at-sign (@) if it no longer exists in the
+first \fItermname\fR, but one of the other \fItermname\fR entries contains a
+value for it. A capability's value is displayed if the value in the first
+\fItermname\fR is not found in any of the other \fItermname\fR entries, or if
+the first of the other \fItermname\fR entries that has this capability gives a
+different value for that capability.
+.sp
+.LP
+The order of the other \fItermname\fR entries is significant. Since the
+\fBterminfo\fR compiler \fBtic\fR does a left-to-right scan of the
+capabilities, specifying two \fBuse=\fR entries that contain differing entries
+for the same capabilities will produce different results, depending on the
+order in which the entries are given. \fBinfocmp\fR will flag any such
+inconsistencies between the other \fItermname\fR entries as they are found.
+.sp
+.LP
+Alternatively, specifying a capability \fIafter\fR a \fBuse=\fR entry that
+contains, it will cause the second specification to be ignored. Using
+\fBinfocmp\fR to recreate a description can be a useful check to make sure that
+everything was specified correctly in the original source description.
+.sp
+.LP
+Another error that does not cause incorrect compiled files, but will slow down
+the compilation time, is specifying superfluous \fBuse=\fR fields.
+\fBinfocmp\fR will flag any superfluous \fBuse=\fR fields.
+.sp
+.ne 2
+.na
+\fB\fB-s\fR\fR
+.ad
+.RS 11n
+Sorts the fields within each type according to the argument below:
+.sp
+.ne 2
+.na
+\fB\fBd\fR\fR
+.ad
+.RS 5n
+Leave fields in the order that they are stored in the \fBterminfo\fR database.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBi\fR\fR
+.ad
+.RS 5n
+Sort by \fBterminfo\fR name.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBl\fR\fR
+.ad
+.RS 5n
+Sort by the long C variable name.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBc\fR\fR
+.ad
+.RS 5n
+Sort by the \fBtermcap\fR name.
+.RE
+
+If the \fB-s\fR option is not given, the fields are sorted alphabetically by
+the \fBterminfo\fR name within each type, except in the case of the \fB-C\fR or
+the \fB-L\fR options, which cause the sorting to be done by the \fBtermcap\fR
+name or the long C variable name, respectively.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.RS 11n
+Print out tracing information on standard error as the program runs.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-V\fR\fR
+.ad
+.RS 11n
+Print out the version of the program in use on standard error and exit.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\(mi1\fR\fR
+.ad
+.RS 11n
+Print the fields one to a line. Otherwise, the fields are printed several to a
+line to a maximum width of 60 characters.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-w\fR\fIwidth\fR\fR
+.ad
+.RS 11n
+Changes the output to \fIwidth\fR characters.
+.RE
+
+.sp
+.LP
+The location of the compiled \fBterminfo\fR database is taken from the
+environment variable \fB\fR\fBTERM\fR\fBINFO \fR. If the variable is not
+defined, or the terminal is not found in that location, the system
+\fBterminfo\fR database, usually in \fB/usr/share/lib/terminfo\fR, is used. The
+options \fB-A\fR and \fB-B\fR may be used to override this location.
+.sp
+.ne 2
+.na
+\fB\fB-A\fR \fIdirectory\fR\fR
+.ad
+.RS 16n
+Set \fB\fR\fBTERM\fR\fBINFO \fR for the first \fItermname\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-B\fR \fIdirectory\fR\fR
+.ad
+.RS 16n
+Set \fB\fR\fBTERM\fR\fBINFO \fR for the other \fItermname\fRs. With this, it is
+possible to compare descriptions for a terminal with the same name located in
+two different databases. This is useful for comparing descriptions for the same
+terminal created by different people.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/usr/share/lib/terminfo/?/*\fR\fR
+.ad
+.sp .6
+.RS 4n
+Compiled terminal description database.
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR curses (3CURSES),
+.BR terminfo (5),
+.BR attributes (7),
+.BR captoinfo (8),
+.BR tic (8)
diff --git a/usr/src/man/man8/init.8 b/usr/src/man/man8/init.8
new file mode 100644
index 0000000000..cd811ae23f
--- /dev/null
+++ b/usr/src/man/man8/init.8
@@ -0,0 +1,592 @@
+'\" te
+.\" Copyright (C) 2009, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH INIT 8 "Sep 2, 2009"
+.SH NAME
+init, telinit \- process control initialization
+.SH SYNOPSIS
+.LP
+.nf
+\fB/sbin/init\fR [0123456abcQqSs]
+.fi
+
+.LP
+.nf
+\fB/etc/telinit\fR [0123456abcQqSs]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBinit\fR is the default primordial user process. (Options given to the kernel
+during boot may result in the invocation of an alternative primordial user
+process, as described on \fBkernel\fR(8)). \fBinit\fR initiates the core
+components of the service management facility, \fBsvc.configd\fR(8) and
+\fBsvc.startd\fR(8), and restarts these components if they fail. For backwards
+compatibility, \fBinit\fR also starts and restarts general processes according
+to \fB/etc/inittab\fR, as desribed below.
+.sp
+.LP
+The run levels and system booting descriptions given below are provided for
+compatibility purposes only, and otherwise made obsolete by the service
+management facility, \fBsmf\fR(7).
+.SS "init Failure"
+.sp
+.LP
+If \fBinit\fR exits for any reason other than system shutdown, it will be
+restarted with process-\fBID\fR 1.
+.SS "Run Level Defined"
+.sp
+.LP
+At any given time, the system is in one of eight possible run levels. A run
+level is a software configuration under which only a selected group of
+processes exists. Processes spawned by \fBinit\fR for each of these run levels
+are defined in \fB/etc/inittab\fR. \fBinit\fR can be in one of eight run
+levels, \fB0\(mi6\fR and \fBS\fR or \fBs\fR (\fBS\fR and \fBs\fR are
+identical). The run level changes when a privileged user runs \fB/sbin/init\fR.
+.SS "init and System Booting"
+.sp
+.LP
+When the system is booted, \fBinit\fR is invoked and the following occurs.
+First, it reads \fB/etc/default/init\fR to set environment variables. This is
+typically where \fBTZ\fR (time zone) and locale-related environments such as
+\fBLANG\fR or \fBLC_CTYPE\fR get set. (See the FILES section at the end of this
+page.) \fBinit\fR then looks in \fB/etc/inittab\fR for the \fBinitdefault\fR
+entry (see \fBinittab\fR(5)). If the \fBinitdefault\fR entry:
+.sp
+.ne 2
+.na
+\fBexists\fR
+.ad
+.sp .6
+.RS 4n
+\fBinit\fR usually uses the run level specified in that entry as the initial
+run level to enter only if the options/milestone property has not been
+specified for \fBsvc.startd\fR(8).
+.RE
+
+.sp
+.ne 2
+.na
+\fBdoes not exist\fR
+.ad
+.sp .6
+.RS 4n
+The service management facility, \fBsmf\fR(7), examines its configuration
+specified in \fBsvc.startd\fR(8), and enters the milestone specified by the
+options/milestone property.
+.RE
+
+.sp
+.LP
+The \fBinitdefault\fR entry in \fB/etc/inittab\fR corresponds to the following
+run levels:
+.sp
+.ne 2
+.na
+\fB\fBS\fR or \fBs\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBinit\fR goes to the single-user state. In this state, the system console
+device (\fB/dev/console\fR) is opened for reading and writing and the command
+\fB/sbin/su\fR, (see \fBsu\fR(8)), is invoked. Use either \fBinit\fR or
+\fBtelinit\fR to change the run level of the system. Note that if the shell is
+terminated (using an end-of-file), \fBinit\fR only re-initializes to the
+single-user state if \fB/etc/inittab\fR does not exist.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB0-6\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBinit\fR enters the corresponding run level. Run levels \fB0\fR, \fB5\fR, and
+\fB6\fR are reserved states for shutting the system down. Run levels \fB2\fR,
+\fB3\fR, and \fB4\fR are available as multi-user operating states.
+.RE
+
+.sp
+.LP
+If this is the first time since power up that \fBinit\fR has entered a run
+level other than single-user state, \fBinit\fR first scans \fB/etc/inittab\fR
+for \fBboot\fR and \fBbootwait\fR entries (see \fBinittab\fR(5)). These entries
+are performed before any other processing of \fB/etc/inittab\fR takes place,
+providing that the run level entered matches that of the entry. In this way any
+special initialization of the operating system, such as mounting file systems,
+can take place before users are allowed onto the system. \fBinit\fR then scans
+\fB/etc/inittab\fR and executes all other entries that are to be processed for
+that run level.
+.sp
+.LP
+To spawn each process in \fB/etc/inittab\fR, \fBinit\fR reads each entry and
+for each entry that should be respawned, it forks a child process. After it has
+spawned all of the processes specified by \fB/etc/inittab\fR, \fBinit\fR waits
+for one of its descendant processes to die, a \fBpowerfail\fR signal, or a
+signal from another \fBinit\fR or \fBtelinit\fR process to change the system's
+run level. When one of these conditions occurs, \fBinit\fR re-examines
+\fB/etc/inittab\fR.
+.SS "inittab Additions"
+.sp
+.LP
+New entries can be added to \fB/etc/inittab\fR at any time; however, \fBinit\fR
+still waits for one of the above three conditions to occur before re-examining
+\fB/etc/inittab\fR. To get around this, \fBinit Q\fR or \fBinit q\fR command
+wakes \fBinit\fR to re-examine \fB/etc/inittab\fR immediately.
+.sp
+.LP
+When \fBinit\fR comes up at boot time and whenever the system changes from the
+single-user state to another run state, \fBinit\fR sets the \fBioctl\fR(2)
+states of the console to those modes saved in the file \fB/etc/ioctl.syscon\fR.
+\fBinit\fR writes this file whenever the single-user state is entered.
+.SS "Run Level Changes"
+.sp
+.LP
+When a run level change request is made, \fBinit\fR or a designate sends the
+warning signal (\fBSIGTERM\fR) to all processes that are undefined in the
+target run level. A minimum interval of five seconds is observed before
+\fBinit\fR or its designate forcibly terminates these processes by sending a
+kill signal (\fBSIGKILL\fR). Additionally, init informs \fBsvc.startd\fR(8)
+that the run level is changing. \fBsvc.startd\fR(8) then restricts the system
+to the set of services which the milestone corresponding to the run-level
+change depends on.
+.sp
+.LP
+When \fBinit\fR receives a signal telling it that a process it spawned has
+died, it records the fact and the reason it died in \fB/var/adm/utmpx\fR and
+\fB/var/adm/wtmpx\fR if it exists (see \fBwho\fR(1)). A history of the
+processes spawned is kept in \fB/var/adm/wtmpx.\fR
+.sp
+.LP
+If \fBinit\fR receives a \fBpowerfail\fR signal (\fBSIGPWR\fR) it scans
+\fB/etc/inittab\fR for special entries of the type \fBpowerfail\fR and
+\fBpowerwait\fR. These entries are invoked (if the run levels permit) before
+any further processing takes place. In this way \fBinit\fR can perform various
+cleanup and recording functions during the powerdown of the operating system.
+.SS "Environment Variables in /etc/default/init"
+.sp
+.LP
+You can set default values for environment variables, for such items as
+timezone and character formatting, in \fB/etc/default/init\fR. See the FILES
+section, below, for a list of these variables.
+.SS "telinit"
+.sp
+.LP
+\fBtelinit\fR, which is linked to \fB/sbin/init\fR, is used to direct the
+actions of \fBinit\fR. It takes a one-character argument and signals \fBinit\fR
+to take the appropriate action.
+.SH SECURITY
+.sp
+.LP
+\fBinit\fR uses \fBpam\fR(3PAM) for session management. The \fBPAM\fR
+configuration policy, listed through \fB/etc/pam.conf\fR, specifies the session
+management module to be used for \fBinit\fR. Here is a partial \fBpam.conf\fR
+file with entries for \fBinit\fR using the UNIX session management module.
+.sp
+.in +2
+.nf
+init session required pam_unix_session.so.1
+.fi
+.in -2
+
+.sp
+.LP
+If there are no entries for the \fBinit\fR service, then the entries for the
+"other" service will be used.
+.SH OPTIONS
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.sp .6
+.RS 4n
+Go into firmware.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB1\fR\fR
+.ad
+.sp .6
+.RS 4n
+Put the system in system administrator mode. All local file systems are
+mounted. Only a small set of essential kernel processes are left running. This
+mode is for administrative tasks such as installing optional utility packages.
+All files are accessible and no users are logged in on the system.
+.sp
+This request corresponds to a request for \fBsmf\fR(7) to restrict the system
+milestone to svc:/milestone/single-user:default.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB2\fR\fR
+.ad
+.sp .6
+.RS 4n
+Put the system in multi-user mode. All multi-user environment terminal
+processes and daemons are spawned. This state is commonly referred to as the
+multi-user state.
+.sp
+This request corresponds to a request for \fBsmf\fR(7) to restrict the system
+milestone to svc:/milestone/multi-user:default.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB3\fR\fR
+.ad
+.sp .6
+.RS 4n
+Extend multi-user mode by making local resources available over the network.
+.sp
+This request corresponds to a request for \fBsmf\fR(7) to restrict the system
+milestone to svc:/milestone/multi-user-server:default.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB4\fR\fR
+.ad
+.sp .6
+.RS 4n
+Is available to be defined as an alternative multi-user environment
+configuration. It is not necessary for system operation and is usually not
+used.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB5\fR\fR
+.ad
+.sp .6
+.RS 4n
+Shut the machine down so that it is safe to remove the power. Have the machine
+remove power, if possible.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB6\fR\fR
+.ad
+.sp .6
+.RS 4n
+Stop the operating system and reboot to the state defined by the
+\fBinitdefault\fR entry in \fB/etc/inittab\fR.
+.sp
+On x86 systems, service \fBsvc:/system/boot-config:default\fR is enabled by
+default. When the \fBconfig/fastreboot_default\fR property is set to
+\fBtrue\fR, \fBinit 6\fR will bypass the firmware.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBa\fR,\fBb\fR,\fBc\fR\fR
+.ad
+.sp .6
+.RS 4n
+Process only those \fB/etc/inittab\fR entries having the \fBa\fR, \fBb\fR, or
+\fBc\fR run level set. These are pseudo-states, which may be defined to run
+certain commands, but which do not cause the current run level to change.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBQ\fR,\fBq\fR\fR
+.ad
+.sp .6
+.RS 4n
+Re-examine \fB/etc/inittab\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBS\fR, \fBs\fR\fR
+.ad
+.sp .6
+.RS 4n
+Enter single-user mode. This is the only run level that doesn't require the
+existence of a properly formatted \fB/etc/inittab\fR file. If this file does
+not exist, then by default, the only legal run level that \fBinit\fR can enter
+is the single-user mode. When in single-user mode, the filesystems required for
+basic system operation will be mounted. When the system comes down to
+single-user mode, these file systems will remain mounted (even if provided by a
+remote file server), and any other local filesystems will also be left mounted.
+During the transition down to single-user mode, all processes started by
+\fBinit\fR or \fBinit.d\fR scripts that should only be running in multi-user
+mode are killed. In addition, any process that has a \fButmpx\fR entry will be
+killed. This last condition insures that all port monitors started by the
+\fBSAC\fR are killed and all services started by these port monitors, including
+\fBttymon\fR login services, are killed.
+.sp
+This request corresponds to a request for \fBsmf\fR(7) to restrict the system
+milestone to svc:/milestone/single-user:default.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/dev/console\fR\fR
+.ad
+.sp .6
+.RS 4n
+System console device.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/default/init\fR\fR
+.ad
+.sp .6
+.RS 4n
+Contains environment variables and their default values. For example, for the
+timezone variable, \fBTZ\fR, you might specify \fBTZ=US/Pacific\fR. The
+variables are:
+.sp
+.ne 2
+.na
+\fB\fBTZ\fR\fR
+.ad
+.sp .6
+.RS 4n
+Either specifies the timezone information (see \fBctime\fR(3C)) or the name of
+a timezone information file \fB/usr/share/lib/zoneinfo\fR.
+.sp
+Refer to the \fBTIMEZONE\fR(5) man page before changing this setting.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBCMASK\fR\fR
+.ad
+.sp .6
+.RS 4n
+The mask (see \fBumask\fR(1)) that \fBinit\fR uses and that every process
+inherits from the \fBinit\fR process. If not set, \fBinit\fR uses the mask it
+inherits from the kernel. Note that \fBinit\fR always attempts to apply a
+\fBumask\fR of 022 before creating a file, regardless of the setting of
+\fBCMASK\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBLC_CTYPE\fR\fR
+.ad
+.sp .6
+.RS 4n
+Character characterization information
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBLC_MESSAGES\fR\fR
+.ad
+.sp .6
+.RS 4n
+Message translation
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBLC_MONETARY\fR\fR
+.ad
+.sp .6
+.RS 4n
+Monetary formatting information
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBLC_NUMERIC\fR\fR
+.ad
+.sp .6
+.RS 4n
+Numeric formatting information
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBLC_TIME\fR\fR
+.ad
+.sp .6
+.RS 4n
+Time formatting information
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBLC_ALL\fR\fR
+.ad
+.sp .6
+.RS 4n
+If set, all other \fBLC_*\fR environmental variables take-on this value.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBLANG\fR\fR
+.ad
+.sp .6
+.RS 4n
+If \fBLC_ALL\fR is not set, and any particular \fBLC_*\fR is also not set, the
+value of \fBLANG\fR is used for that particular environmental variable.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/inittab\fR\fR
+.ad
+.sp .6
+.RS 4n
+Controls process dispatching by \fBinit\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/ioctl.syscon\fR\fR
+.ad
+.sp .6
+.RS 4n
+ioctl states of the console, as saved by \fBinit\fR when single-user state is
+entered.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/svc/volatile/init.state\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBinit\fR state necessary to recover from failure.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/adm/utmpx\fR\fR
+.ad
+.sp .6
+.RS 4n
+User access and administration information.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/adm/wtmpx\fR\fR
+.ad
+.sp .6
+.RS 4n
+History of user access and administration information.
+.RE
+
+.sp
+.ne 2
+.na
+\fB/var/run/initpipe\fR
+.ad
+.sp .6
+.RS 4n
+A named pipe used for internal communication.
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR login (1),
+.BR sh (1),
+.BR stty (1),
+.BR who (1),
+.BR ioctl (2),
+.BR kill (2),
+.BR ctime (3C),
+.BR pam (3PAM),
+.BR termio (4I),
+.BR TIMEZONE (5),
+.BR init.d (5),
+.BR inittab (5),
+.BR pam.conf (5),
+.BR utmpx (5),
+.BR attributes (7),
+.BR pam_unix_session (7),
+.BR smf (7),
+.BR kernel (8),
+.BR shutdown (8),
+.BR su (8),
+.BR svc.configd (8),
+.BR svc.startd (8),
+.BR ttymon (8)
+.SH DIAGNOSTICS
+.sp
+.LP
+If \fBinit\fR finds that it is respawning an entry from \fB/etc/inittab\fR more
+than ten times in two minutes, it assumes that there is an error in the command
+string in the entry and generates an error message on the system console. It
+then refuses to respawn this entry until either five minutes has elapsed or it
+receives a signal from a user-spawned \fBinit\fR or \fBtelinit\fR command. This
+prevents \fBinit\fR from eating up system resources when someone makes a
+typographical error in the \fBinittab\fR file, or a program is removed that is
+referenced in \fB/etc/inittab\fR.
+.SH NOTES
+.sp
+.LP
+\fBinit\fR and \fBtelinit\fR can be run only by a privileged user.
+.sp
+.LP
+The \fBS\fR or \fBs\fR state must not be used indiscriminately in
+\fB/etc/inittab\fR. When modifying this file, it is best to avoid adding this
+state to any line other than \fBinitdefault\fR.
+.sp
+.LP
+If a default state is not specified in the \fBinitdefault\fR entry in
+\fB/etc/inittab\fR, state \fB6\fR is entered. Consequently, the system will
+loop by going to firmware and rebooting continuously.
+.sp
+.LP
+If the \fButmpx\fR file cannot be created when booting the system, the system
+will boot to state "\fBs\fR" regardless of the state specified in the
+\fBinitdefault\fR entry in \fB/etc/inittab\fR. This can occur if the \fB/var\fR
+file system is not accessible.
+.sp
+.LP
+When a system transitions down to the \fBS\fR or \fBs\fR state, the
+\fB/etc/nologin\fR file (see \fBnologin\fR(5)) is created. Upon subsequent
+transition to run level 2, this file is removed.
+.sp
+.LP
+\fBinit\fR uses \fB/var/run/initpipe\fR, a named pipe, for internal
+communication.
+.sp
+.LP
+The \fBpam_unix\fR(7) module is no longer supported. Similar functionality is
+provided by \fBpam_unix_session\fR(7).
diff --git a/usr/src/man/man8/inityp2l.8 b/usr/src/man/man8/inityp2l.8
new file mode 100644
index 0000000000..1d56164d25
--- /dev/null
+++ b/usr/src/man/man8/inityp2l.8
@@ -0,0 +1,132 @@
+'\" te
+.\" Copyright (C) 2003, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH INITYP2L 8 "Apr 10, 2003"
+.SH NAME
+inityp2l \- create NIS (YP) to LDAP configuration files
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/netsvc/yp/inityp2l\fR [\fB-m\fR \fImapping_file_name\fR]
+ [\fB-c\fR \fIconfig_file_name\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBinityp2l\fR utility assists with creation of the \fBNISLDAPmapping\fR
+and \fBypserv\fR files. See \fBNISLDAPmapping\fR(5) and \fBypserv\fR(5).
+\fBinityp2l\fR examines the NIS maps on a system. and through a dialogue with
+the user, determines which NIS to (and from) LDAP mappings are required. A
+\fBNISLDAPmapping\fR file is then created based on this information. The
+utility asks users about their LDAP server configuration and a \fBypserv\fR
+file is created based on this information.
+.sp
+.LP
+The \fBinityp2l\fR utility handles mappings for standard NIS maps and the
+\fBauto.*\fR series of maps. If requested, it creates default mappings for
+custom maps, with each map entry represented as a single DIT string.
+\fBinityp2l\fR does not handle full custom mapping, but if requested,
+\fBinityp2l\fR will insert comments into the \fBNISLDAPmapping\fR file that
+indicate where these should be added.
+.sp
+.LP
+To write to the \fBNISLDAPmapping\fR or \fBypserv\fR files is potentially
+dangerous. \fBinityp2l\fR warns the user and asks for confirmation before:
+.RS +4
+.TP
+1.
+it overwrites either file
+.RE
+.RS +4
+.TP
+2.
+it writes to the default \fBNISLDAPmapping\fR file location, if this file
+did not previously exist. This is important because the existence of a file in
+this location causes NIS components to work NIS to LDAP (N2L) mode when next
+restarted, rather than to traditional NIS mode.
+.RE
+.sp
+.LP
+\fBinityp2l\fR assists with rapid creation of a simple N2L configuration files.
+It is not a general purpose tool for the management of these files. An
+advanced user who would like to maintain the files or use custom mappings
+should examine the output of \fBinityp2l\fR and customize it by using a
+standard text editor.
+.SH OPTIONS
+.sp
+.LP
+\fBinityp2l\fR supports the following options:
+.sp
+.ne 2
+.na
+\fB\fB-c\fR\fR
+.ad
+.RS 6n
+Specify the name of the generated \fBypserv\fR file. The default location is
+described in .
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-m\fR\fR
+.ad
+.RS 6n
+Specify the name of the generated \fBNISLDAPmapping\fR file. The default is
+described in .
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/var/yp\fR \fR
+.ad
+.RS 26n
+The directory to be searched for candidate domains (\fB/var/yp/*\fR) and NIS
+maps (\fB/var/yp/*/*\fR)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/yp/NISLDAPmapping\fR\fR
+.ad
+.RS 26n
+The default location for the generated \fBNISLDAPmapping\fR file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/default/ypserv\fR\fR
+.ad
+.RS 26n
+The default location for the generated \fBypserv\fR file
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Obsolete
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR NISLDAPmapping (5),
+.BR ypserv (5),
+.BR attributes (7)
diff --git a/usr/src/man/man8/install.8 b/usr/src/man/man8/install.8
new file mode 100644
index 0000000000..6c5a6028b1
--- /dev/null
+++ b/usr/src/man/man8/install.8
@@ -0,0 +1,230 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH INSTALL 8 "Nov 3, 2005"
+.SH NAME
+install \- install commands
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/install\fR \fB-c\fR \fIdira\fR [\fB-m\fR \fImode\fR] [\fB-u\fR \fIuser\fR] [\fB-g\fR \fIgroup\fR]
+ [\fB-o\fR] [\fB-s\fR] \fIfile\fR
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/install\fR \fB-f\fR \fIdirb\fR [\fB-m\fR \fImode\fR] [\fB-u\fR \fIuser\fR] [\fB-g\fR \fIgroup\fR]
+ [\fB-o\fR] [\fB-s\fR] \fIfile\fR
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/install\fR \fB-n\fR \fIdirc\fR [\fB-m\fR \fImode\fR] [\fB-u\fR \fIuser\fR] [\fB-g\fR \fIgroup\fR]
+ [\fB-o\fR] [\fB-s\fR] \fIfile\fR
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/install\fR \fB-d\fR | \fB-i\fR [\fB-m\fR \fImode\fR] [\fB-u\fR \fIuser\fR] [\fB-g\fR \fIgroup\fR]
+ [\fB-o\fR] [\fB-s\fR] \fIdirx\fR...
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/install\fR [\fB-m\fR \fImode\fR] [\fB-u\fR \fIuser\fR] [\fB-g\fR \fIgroup\fR] [\fB-o\fR] [\fB-s\fR] \fIfile\fR
+ [\fIdirx\fR]...
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBinstall\fR is most commonly used in ``makefiles'' (see \fBmake\fR(1S)) to
+install a \fBfile\fR in specific locations, or to create directories within a
+file system. Each \fBfile\fR is installed by copying it into the appropriate
+directory.
+.sp
+.LP
+\fBinstall\fR uses no special privileges to copy files from one place to
+another. The implications of this are:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+You must have permission to read the files to be installed.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+You must have permission to copy into the destination directory.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+You must have permission to change the modes on the final copy of the file if
+you want to use the \fB-m\fR option.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+You must be super-user if you want to specify the ownership of the installed
+file with the \fB-u\fR or \fB-g\fR options. If you are not the super-user, the
+installed file is owned by you, regardless of who owns the original.
+.RE
+.sp
+.LP
+Note that if the \fBROOT\fR environment variable is set, each of the default
+directory paths are prefixed by its value (for example, \fB$ROOT/bin\fR and so
+on).
+.sp
+.LP
+\fBinstall\fR prints messages telling the user exactly what files it is
+replacing or creating and where they are going.
+.sp
+.LP
+If no options or directories (\fIdirx\fR .\|.\|.) are given, \fBinstall\fR
+searches a set of default directories ( \fB/bin\fR, \fB/usr/bin\fR, \fB/etc\fR,
+\fB/lib\fR, and \fB/usr/lib\fR, in that order) for a file with the same name as
+\fBfile\fR. When the first occurrence is found, \fBinstall\fR issues a message
+saying that it is overwriting that file with \fBfile\fR, and proceeds to do so.
+If the file is not found, the program states this and exits.
+.sp
+.LP
+If one or more directories (\fIdirx\fR .\|.\|.) are specified after \fBfile\fR,
+those directories are searched before the default directories.
+.sp
+.LP
+This version of \fBinstall\fR (\fB/usr/sbin/install\fR) is not compatible with
+the \fBinstall\fR binaries in many versions of Unix other than Solaris. For a
+higher degree of compatibility with other Unix versions, use
+\fB/usr/ucb/install\fR, which is described in the \fBinstall\fR(1B) man page.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-c\fR \fIdira\fR\fR
+.ad
+.RS 12n
+Install \fBfile\fR in the directory specified by \fIdira\fR, if \fBfile\fR does
+not yet exist. If it is found, \fBinstall\fR issues a message saying that the
+file already exists, and exits without overwriting it.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR \fIdirb\fR\fR
+.ad
+.RS 12n
+Force \fBfile\fR to be installed in given directory, even if the file already
+exists. If the file being installed does not already exist, the mode and owner
+of the new file is set to \fB755\fR and \fBbin\fR \fB,\fR respectively. If the
+file already exists, the mode and owner is that of the already existing file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR \fIdirc\fR\fR
+.ad
+.RS 12n
+If \fBfile\fR is not found in any of the searched directories, it is put in the
+directory specified in \fIdirc\fR. The mode and owner of the new file is set to
+\fB755\fR and \fBbin\fR, respectively.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-d\fR\fR
+.ad
+.RS 12n
+Create a directory. Missing parent directories are created as required as in
+\fBmkdir \fR\fB-p\fR. If the directory already exists, the owner, group and
+mode is set to the values given on the command line.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-i\fR\fR
+.ad
+.RS 12n
+Ignore default directory list, searching only through the given directories
+(\fIdirx\fR .\|.\|.).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-m\fR \fImode\fR\fR
+.ad
+.RS 12n
+The mode of the new file is set to \fImode\fR. Set to \fB0755\fR by default.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-u\fR \fIuser\fR\fR
+.ad
+.RS 12n
+The owner of the new file is set to \fIuser\fR. Only available to the
+super-user. Set to \fBbin\fR by default.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-g\fR \fIgroup\fR\fR
+.ad
+.RS 12n
+The group id of the new file is set to \fIgroup\fR. Only available to the
+super-user. Set to \fBbin\fR by default.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-o\fR\fR
+.ad
+.RS 12n
+If \fBfile\fR is found, save the ``found'' file by copying it to
+\fBOLD\fR\fBfile\fR in the directory in which it was found. This option is
+useful when installing a frequently used file such as \fB/bin/sh\fR or
+\fB/lib/saf/ttymon\fR, where the existing file cannot be removed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR\fR
+.ad
+.RS 12n
+Suppress printing of messages other than error messages.
+.RE
+
+.SH USAGE
+.sp
+.LP
+See \fBlargefile\fR(7) for the description of the behavior of \fBinstall\fR
+when encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
+.SH SEE ALSO
+.sp
+.LP
+.BR chgrp (1),
+.BR chmod (1),
+.BR chown (1),
+.BR cp (1),
+.BR mkdir (1),
+.BR install (1B),
+.BR make (1S),
+.BR attributes (7),
+.BR largefile (7)
diff --git a/usr/src/man/man8/installboot.8 b/usr/src/man/man8/installboot.8
new file mode 100644
index 0000000000..27070bb9d8
--- /dev/null
+++ b/usr/src/man/man8/installboot.8
@@ -0,0 +1,246 @@
+.\"
+.\" This file and its contents are supplied under the terms of the
+.\" Common Development and Distribution License ("CDDL"), version 1.0.
+.\" You may only use this file in accordance with the terms of version
+.\" 1.0 of the CDDL.
+.\"
+.\" A full copy of the text of the CDDL should have accompanied this
+.\" source. A copy of the CDDL is also available via the Internet at
+.\" http://www.illumos.org/license/CDDL.
+.\"
+.\"
+.\" Copyright 2021 Toomas Soome <tsoome@me.com>
+.\"
+.Dd Oct 16, 2021
+.Dt INSTALLBOOT 8
+.Os
+.Sh NAME
+.Nm installboot
+.Nd install bootloader in a disk partition
+.Sh SYNOPSIS
+.Ss SPARC
+.Nm
+.Op Fl fn
+.Op Fl F Sy zfs Ns | Ns Sy ufs Ns | Ns Sy hsfs
+.Op Fl u Ar verstr
+.Ar bootblk raw-device
+.Nm
+.Op Fl enV
+.Fl F Sy zfs
+.Fl i
+.Ar raw-device | Ar file
+.Nm
+.Op Fl n
+.Fl F Sy zfs
+.Fl M
+.Ar raw-device attach-raw-device
+.Ss x86
+.Nm
+.Op Fl fFmn
+.Op Fl b Ar boot_dir
+.Op Fl u Ar verstr
+.Op Ar stage1 stage2
+raw-device
+.Nm
+.Op Fl enV
+.Fl i
+.Ar raw-device | Ar file
+.Nm
+.Op Fl n
+.Fl M
+.Ar raw-device attach-raw-device
+.Sh DESCRIPTION
+The
+.Xr boot 8
+boot program is loaded from disk and is responsible of loading kernel and its
+support files from specific file system.
+.Pp
+The SPARC systems have one boot loader program file to be installed on the boot
+area of a disk slice.
+As the SPARC zfs boot loader is too large to fit into boot area at the start of
+the disk slice,
+.Nm
+command will split the zfs boot loader between disk slice boot area, and zfs
+pool boot area.
+.Pp
+The x86 BIOS systems have boot loader implemented as three stages:
+.Bl -tag -width Ds
+.It Sy stage1
+.Pa /boot/pmbr
+is used as master boot record
+.Pq MBR
+and partition boot program.
+.It Sy stage2
+.Pa /boot/gptzfsboot
+is responsible for loading files from file system.
+The
+.Sy stage2
+on x86 systems is always installed to zfs pool boot area, and therefore only zfs
+boot is supported.
+.Nm
+command will record the location of
+.Sy stage2
+to
+.Sy stage1 ,
+which is always installed at least on partition
+.Pq MBR or GPT
+boot area, making it possible to boot via chainload from other boot loaders.
+.Pp
+When
+.Nm
+command is used with the
+.Fl m
+option,
+.Nm
+installs the stage1 file on the master boot sector of the disk as well.
+.It Sy stage3
+.Pa /boot/loader
+is read from file system and executed by
+.Sy stage2
+and will provide boot loader user environment and is responsible of loading
+and starting the operating system kernel.
+.Pp
+In case of GPT partitioning scheme, if the file system to boot from is either
+UFS or PCFS, there must be
+.Sy boot
+partition defined to store stage2 boot program.
+This is needed because UFS and PCFS do not have sufficient space reserved to
+store boot programs.
+.Pp
+The boot partition must use following GPT UUID:
+.Bd -literal -offset indent
+6a82cb45-1dd2-11b2-99a6-080020736631
+.Ed
+.Pp
+which is provided by
+.Qq boot
+tag in
+.Xr format 8
+partition menu.
+.El
+.Pp
+The x86 UEFI systems load and start boot loader program from
+.Sy /EFI/Boot
+directory of the EFI System Partition (ESP).
+The boot loader program in ESP is named
+.Sy bootx64.efi
+for AMD64 system and
+.Sy bootia32.efi
+for i386 system.
+Note, only a 64-bit kernel is supported, even on i386 systems.
+The
+.Sy bootia32.efi
+boot program is only provided to support systems with 32-bit UEFI firmware,
+but which can support 64-bit mode.
+.Pp
+The
+.Sy bootx64.efi
+is copied from
+.Sy /boot/loader64.efi
+and
+.Sy bootia32.efi
+is copied from
+.Sy /boot/loader32.efi .
+.Ss Options
+The
+.Nm
+command accepts the following options:
+.Bl -tag -width Ds
+.It Fl b Ar boot_dir
+Provide path to the directory, where loader boot programs are located.
+.Nm
+will automatically pick the needed programs and will install to the
+specified disk device.
+.It Fl h
+Prints short usage message.
+.It Fl m
+Installs
+.Sy stage1
+on the master boot sector interactively.
+You must use this option if OS is installed on an extended FDISK or an EFI/GPT
+partition.
+.It Fl f
+Suppresses interaction when overwriting the master boot sector on x86.
+Force update on SPARC.
+.It Fl n
+Dry run session.
+Will not write to disk.
+.It Fl F
+On SPARC, specify file system type.
+On x86, inhibit version check and enforce boot loader update.
+.It Fl u Ar verstr
+Specify custom version string.
+Can be used to add version on non-versioned boot loader or change built in
+version string.
+.It Fl i
+Print version string from installed boot loader or from indicated file.
+.It Fl e
+Print version string from installed boot loader without description.
+.It Fl V
+Print version string from installed boot loader with full description.
+.It Fl M
+Mirror boot loader from installed disk partition.
+.El
+.Ss Operands
+The
+.Nm
+command accepts the following operands:
+.Bl -tag -width Ds
+.It Ar bootblk
+The name of the SPARC boot loader code.
+.It Ar stage1
+The name of the loader stage 1 file.
+.It Ar stage2
+The name of the loader stage 2 file.
+.It Ar raw-device
+The name of the device onto which bootloader code is to be installed.
+It must be a character device that is readable and writable and part of boot
+pool.
+.El
+.Sh FILES
+.Bl -tag -width Ds
+.It Pa /boot
+Directory where x86 loader files reside.
+.It Pa /usr/platform/platform name/lib/fs
+Directory where SPARC boot loader files reside.
+.El
+.Sh EXAMPLES
+.Bl -tag -width Ds
+.It Sy Example 1 No Installing zfs boot loader on SPARC disk slice
+The following command installs zfs boot loader on SPARC system:
+.Bd -literal
+# installboot -F zfs /usr/platform/`uname -i`/lib/fs/zfs/bootblk \e
+ /dev/rdsk/c0t0d0s0
+.Ed
+.It Sy Example 2 No Installing boot loader on x86 system
+The following command installs loader stage files and master boot record:
+.Bd -literal
+# installboot -m /boot/pmbr /boot/gptzfsboot /dev/rdsk/c0t0d0s0
+.Ed
+.El
+.Sh INTERFACE STABILITY
+.Sy Uncommitted
+.Sh SEE ALSO
+.Xr attributes 7 ,
+.Xr boot 8 ,
+.Xr bootadm 8 ,
+.Xr fdisk 8 ,
+.Xr fmthard 8 ,
+.Xr format 8 ,
+.Xr kernel 8
+.Sh WARNINGS
+Installing
+.Sy stage1
+on the master boot sector
+.Po
+.Fl m
+option
+.Pc
+overrides any boot loader currently installed on the machine.
+The system will always boot the current OS partition regardless of which fdisk
+partition is active.
+.Pp
+If version string indicates the source boot loader might be more recent,
+.Nm
+will also verify md5 checksums to determine if update is really necessary.
+If checksums match, the install will not be performed.
diff --git a/usr/src/man/man8/installf.8 b/usr/src/man/man8/installf.8
new file mode 100644
index 0000000000..3a4bbf1b7a
--- /dev/null
+++ b/usr/src/man/man8/installf.8
@@ -0,0 +1,449 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH INSTALLF 8 "Oct 30, 2007"
+.SH NAME
+installf \- add a file to the software installation database
+.SH SYNOPSIS
+.LP
+.nf
+\fBinstallf\fR [\fB-c\fR \fIclass\fR] [ [\fB-M\fR] \fB-R\fR \fIroot_path\fR] [\fB-V\fR \fIfs_file\fR] \fIpkginst\fR \fIpathname\fR
+ [\fIftype\fR [\fImajor\fR \fIminor\fR] [\fImode\fR \fIowner\fR \fIgroup\fR]]
+.fi
+
+.LP
+.nf
+\fBinstallf\fR [\fB-c\fR \fIclass\fR] [ [\fB-M\fR] \fB-R\fR \fIroot_path\fR] [\fB-V\fR \fIfs_file\fR] \fIpkginst\fR -
+.fi
+
+.LP
+.nf
+\fBinstallf\fR \fB-f\fR [\fB-c\fR \fIclass\fR] [ [\fB-M\fR] \fB-R\fR \fIroot_path\fR] [\fB-V\fR \fIfs_file\fR] \fIpkginst\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBinstallf\fR informs the system that a pathname not listed in the
+\fBpkgmap\fR(5) file is being created or modified. It should be invoked before
+any file modifications have occurred.
+.sp
+.LP
+When the second synopsis is used, the pathname descriptions will be read from
+standard input. These descriptions are the same as would be given in the first
+synopsis but the information is given in the form of a list. The descriptions
+should be in the form:
+.sp
+.LP
+\fIpathname\fR [ \fIftype\fR [\| \fImajor\fR \fIminor\fR ] [ \fImode\fR
+\fIowner\fR \fIgroup\fR ]\|]
+.sp
+.LP
+After all files have been appropriately created and/or modified, \fBinstallf\fR
+should be invoked with the \fB-f\fR synopsis to indicate that installation is
+final. Links will be created at this time and, if attribute information for a
+pathname was not specified during the original invocation of \fBinstallf\fR, or
+was not already stored on the system, the current attribute values for the
+pathname will be stored. Otherwise, \fBinstallf\fR verifies that attribute
+values match those given on the command line, making corrections as necessary.
+In all cases, the current content information is calculated and stored
+appropriately.
+.sp
+.LP
+Package commands are \fBlargefile\fR(7)-aware. They handle files larger than 2
+GB in the same way they handle smaller files. In their current implementations,
+\fBpkgadd\fR(8), \fBpkgtrans\fR(1) and other package commands can process a
+datastream of up to 4 GB.
+.SH OPTIONS
+.sp
+.ne 2
+.na
+\fB\fB-c\fR \fIclass\fR\fR
+.ad
+.RS 16n
+Class to which installed objects should be associated. Default class is
+\fBnone\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR\fR
+.ad
+.RS 16n
+Indicates that installation is complete. This option is used with the final
+invocation of \fBinstallf\fR (for all files of a given class).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-M\fR\fR
+.ad
+.RS 16n
+Instruct \fBinstallf\fR not to use the \fB$\fR\fIroot_path\fR\fB/etc/vfstab\fR
+file for determining the client's mount points. This option assumes the mount
+points are correct on the server and it behaves consistently with Solaris 2.5
+and earlier releases.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\fR\fB-R\fR \fIroot_path\fR\fR
+.ad
+.RS 16n
+Define the full path name of a directory to use as the \fIroot_path\fR. All
+files, including package system information files, are relocated to a directory
+tree starting in the specified \fIroot_path\fR. The \fIroot_path\fR can be
+specified when installing to a client from a server (for example,
+\fB/export/root/client1\fR).
+.sp
+\fBinstallf\fR inherits the value of the \fBPKG_INSTALL_ROOT\fR environment
+variable. (See ENVIRONMENT VARIABLES, below.) If \fBPKG_INSTALL_ROOT\fR is set,
+such as when the \fB-R\fR option is used with \fBpkgadd\fR(8) or
+\fBpkgrm\fR(8), there is no need to use the \fBinstallf\fR \fB-R\fR option.
+.LP
+Note -
+.sp
+.RS 2
+The root file system of any non-global zones must not be referenced with the
+\fB-R\fR option. Doing so might damage the global zone's file system, might
+compromise the security of the global zone, and might damage the non-global
+zone's file system. See \fBzones\fR(7).
+.RE
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-V\fR \fIfs_file\fR\fR
+.ad
+.RS 16n
+Specify an alternative \fIfs_file\fR to map the client's file systems. For
+example, used in situations where the \fB$\fR\fIroot_path\fR\fB/etc/vfstab\fR
+file is non-existent or unreliable.
+.RE
+
+.SH OPERANDS
+.sp
+.ne 2
+.na
+\fB\fIpkginst\fR\fR
+.ad
+.RS 12n
+Name of package instance with which the pathname should be associated.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIpathname\fR\fR
+.ad
+.RS 12n
+Pathname that is being created or modified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIftype\fR\fR
+.ad
+.RS 12n
+A one-character field that indicates the file type. Possible file types
+include:
+.sp
+.ne 2
+.na
+\fB\fBb\fR\fR
+.ad
+.RS 5n
+block special device
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBc\fR\fR
+.ad
+.RS 5n
+character special device
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBd\fR\fR
+.ad
+.RS 5n
+directory
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBe\fR\fR
+.ad
+.RS 5n
+a file to be edited upon installation or removal
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBf\fR\fR
+.ad
+.RS 5n
+a standard executable or data file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBl\fR\fR
+.ad
+.RS 5n
+linked file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBp\fR\fR
+.ad
+.RS 5n
+named pipe
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBs\fR\fR
+.ad
+.RS 5n
+symbolic link
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBv\fR\fR
+.ad
+.RS 5n
+volatile file (one whose contents are expected to change)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBx\fR\fR
+.ad
+.RS 5n
+an exclusive directory
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fImajor\fR\fR
+.ad
+.RS 12n
+The major device number. The field is only specified for block or character
+special devices.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIminor\fR\fR
+.ad
+.RS 12n
+The minor device number. The field is only specified for block or character
+special devices.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fImode\fR\fR
+.ad
+.RS 12n
+The octal mode of the file (for example, 0664). A question mark (\fB?\fR)
+indicates that the mode will be left unchanged, implying that the file already
+exists on the target machine. This field is not used for linked or symbolically
+linked files.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIowner\fR\fR
+.ad
+.RS 12n
+The owner of the file (for example, \fBbin\fR or \fBroot\fR). The field is
+limited to 14 characters in length. A question mark (\fB?\fR) indicates that
+the owner will be left unchanged, implying that the file already exists on the
+target machine. This field is not used for linked or symbolically linked files.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIgroup\fR\fR
+.ad
+.RS 12n
+The group to which the file belongs (for example, \fBbin\fR or \fBsys\fR). The
+field is limited to 14 characters in length. A question mark (\fB?\fR)
+indicates that the group will be left unchanged, implying that the file already
+exists on the target machine. This field is not used for linked or symbolically
+linked files.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRBasic Usage
+.sp
+.LP
+The following example shows the use of \fBinstallf\fR, invoked from an optional
+pre-install or post-install script:
+
+.sp
+.in +2
+.nf
+# create /dev/xt directory
+# (needs to be done before drvinstall)
+installf $PKGINST /dev/xt d 755 root sys ||
+ exit 2
+majno=`/usr/sbin/drvinstall \fB-m\fR /etc/master.d/xt
+ \fB-d\fR $BASEDIR/data/xt.o \fB-v\fR1.0` ||
+ exit 2
+i=00
+while [ $i \(milt $limit ]
+do
+ for j in 0 1 2 3 4 5 6 7
+ do
+ echo /dev/xt$i$j c $majno `expr $i ? 8 + $j`
+ 644 root sys |
+ echo /dev/xt$i$j=/dev/xt/$i$j
+ done
+ i=`expr $i + 1`
+ [ $i \(mile 9 ] && i="0$i" #add leading zero
+done | installf $PKGINST \(mi || exit 2
+# finalized installation, create links
+installf \fB-f\fR $PKGINST || exit 2
+.fi
+.in -2
+.sp
+
+.SH ENVIRONMENT VARIABLES
+.sp
+.LP
+\fBinstallf\fR inherits the value of the following environment variable. This
+variable is set when \fBpkgadd\fR(8) or \fBpkgrm\fR(8) is invoked with the
+\fB-R\fR option.
+.sp
+.ne 2
+.na
+\fB\fBPKG_INSTALL_ROOT\fR\fR
+.ad
+.RS 20n
+If present, defines the full path name of a directory to use as the system's
+\fBPKG_INSTALL_ROOT\fR path. All product and package information files are then
+looked for in the directory tree, starting with the specified
+\fBPKG_INSTALL_ROOT\fR path. If not present, the default system path of \fB/\fR
+is used.
+.RE
+
+.SH EXIT STATUS
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 6n
+Successful operation.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB>0\fR\fR
+.ad
+.RS 6n
+An error occurred.
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR pkginfo (1),
+.BR pkgmk (1),
+.BR pkgparam (1),
+.BR pkgproto (1),
+.BR pkgtrans (1),
+.BR pkgmap (5),
+.BR space (5),
+.BR attributes (7),
+.BR largefile (7),
+.BR pkgadd (8),
+.BR pkgask (8),
+.BR pkgchk (8),
+.BR pkgrm (8),
+.BR removef (8)
+.sp
+.LP
+\fI\fR
+.SH NOTES
+.sp
+.LP
+When \fIftype\fR is specified, all applicable fields, as shown below, must be
+defined:
+.sp
+
+.sp
+.TS
+box;
+l l
+l l .
+\fIftype\fR Required Fields
+\fBp\fR, \fBx\fR, \fBd\fR, \fBf\fR, \fBv\fR, or \fBe\fR \fBmode owner group\fR
+\fBc\fR or \fBb\fR \fBmajor minor mode owner group\fR
+.TE
+
+.sp
+.LP
+The \fBinstallf\fR command will create directories, named pipes and special
+devices on the original invocation. Links are created when \fBinstallf\fR is
+invoked with the \fB-f\fR option to indicate installation is complete.
+.sp
+.LP
+Links should be specified as \fIpath1\fR\fB=\fR\fIpath2.\fR \fIpath1\fR
+indicates the destination and \fIpath2\fR indicates the source file.
+.sp
+.LP
+Files installed with \fBinstallf\fR will be placed in the class \fBnone\fR,
+unless a class is defined with the command. Subsequently, they will be removed
+when the associated package is deleted. If this file should not be deleted at
+the same time as the package, be certain to assign it to a class which is
+ignored at removal time. If special action is required for the file before
+removal, a class must be defined with the command and an appropriate class
+action script delivered with the package.
+.sp
+.LP
+When classes are used, \fBinstallf\fR must be used in one of the following
+forms:
+.sp
+.in +2
+.nf
+installf \fB-c\fR class1 .\|.\|.\|
+installf \fB-f\fR \fB-c\fR class1 .\|.\|.\|
+installf \fB-c\fR class2 .\|.\|.\|
+installf \fB-f\fR \fB-c\fR class2 .\|.\|.\|
+.fi
+.in -2
+.sp
+
diff --git a/usr/src/man/man8/installgrub.8 b/usr/src/man/man8/installgrub.8
new file mode 100644
index 0000000000..3416e7cfb0
--- /dev/null
+++ b/usr/src/man/man8/installgrub.8
@@ -0,0 +1,151 @@
+'\" te
+.\" Copyright 2015 Nexenta Systems Inc.
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
+.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH INSTALLGRUB 8 "Jan 14, 2015"
+.SH NAME
+installgrub \- install GRUB in a disk partition or a floppy
+.SH SYNOPSIS
+.LP
+.nf
+\fB/sbin/installgrub\fR [\fB-fm\fR] \fIstage1\fR \fIstage2\fR \fIraw-device\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBinstallgrub\fR command is an x86-only program. GRUB stands for GRand
+Unified Bootloader.
+.sp
+.LP
+\fBinstallgrub\fR installs GRUB stage 1 and stage 2 files on the boot area of a
+disk partition. If you specify the \fB-m\fR option, \fBinstallgrub\fR installs
+the stage 1 file on the master boot sector of the disk.
+.SH OPTIONS
+.LP
+The \fBinstallgrub\fR command accepts the following options:
+.sp
+.ne 2
+.na
+\fB\fB-f\fR\fR
+.ad
+.RS 6n
+Suppresses interaction when overwriting the master boot sector.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-m\fR\fR
+.ad
+.RS 6n
+Installs GRUB \fIstage1\fR on the master boot sector interactively. You must
+use this option if Solaris is installed on an extended FDISK or an EFI/GPT
+partition.
+.RE
+
+.SH OPERANDS
+.LP
+The \fBinstallgrub\fR command accepts the following operands:
+.sp
+.ne 2
+.na
+\fB\fIstage1\fR\fR
+.ad
+.RS 14n
+The name of the GRUB stage 1 file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIstage2\fR\fR
+.ad
+.RS 14n
+The name of the GRUB stage 2 file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIraw-device\fR\fR
+.ad
+.RS 14n
+The name of the device onto which GRUB code is to be installed. It must be a
+character device that is readable and writable. For disk devices, specify the
+slice where the GRUB menu file is located. (For Solaris it is the root slice.)
+For a floppy disk, it is \fB/dev/rdiskette\fR.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRInstalling GRUB on a Hard Disk Slice
+.sp
+.LP
+The following command installs GRUB on a system where the root slice is
+\fBc0d0s0\fR:
+
+.sp
+.in +2
+.nf
+example# /sbin/installgrub /boot/grub/stage1 \e
+ /boot/grub/stage2 /dev/rdsk/c0d0s0
+.fi
+.in -2
+
+.LP
+\fBExample 2 \fRInstalling GRUB on a Floppy
+.sp
+.LP
+The following command installs GRUB on a formatted floppy:
+
+.sp
+.in +2
+.nf
+example# mount -F pcfs /dev/diskette /mnt
+# mkdir -p /mnt/boot/grub
+# cp /boot/grub/* /mnt/boot/grub
+# umount /mnt
+# cd /boot/grub
+# /sbin/installgrub stage1 stage2 /dev/rdiskette
+.fi
+.in -2
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/boot/grub\fR\fR
+.ad
+.RS 14n
+Directory where GRUB files reside.
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Uncommitted
+.TE
+
+.SH SEE ALSO
+.LP
+.BR attributes (7),
+.BR boot (8),
+.BR fdisk (8),
+.BR fmthard (8),
+.BR kernel (8)
+.SH WARNINGS
+.LP
+Installing GRUB on the master boot sector (\fB-m\fR option) overrides any boot
+manager currently installed on the machine. The system will always boot the
+GRUB in the Solaris partition regardless of which \fBfdisk\fR partition is
+active.
diff --git a/usr/src/man/man8/intrd.8 b/usr/src/man/man8/intrd.8
new file mode 100644
index 0000000000..999e58fd2e
--- /dev/null
+++ b/usr/src/man/man8/intrd.8
@@ -0,0 +1,71 @@
+'\" te
+.\" Copyright (c) 1999, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH INTRD 8 "Jun 21, 2006"
+.SH NAME
+intrd \- interrupt distribution daemon
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/intrd\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBintrd\fR daemon is started at boot time to monitor the assignments
+between interrupts and \fBCPU\fRs. If \fBintrd\fR decides that the current
+assignments are imbalanced and harmful to system performance, it will generate
+and implement new assignments.
+.sp
+.LP
+Any notifications will be delivered via \fBsyslogd\fR(8).
+.sp
+.LP
+Because \fBintrd\fR dynamically monitors a system for optimal performance, it
+consumes a small amount of CPU time, even on an otherwise idle system. This
+behavior is normal.
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Unstable
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR svcs (1),
+.BR attributes (7),
+.BR smf (7),
+.BR svcadm (8),
+.BR syslogd (8)
+.SH NOTES
+.sp
+.LP
+The interrupt distribution daemon is managed by the service management
+facility, \fBsmf\fR(7), under the service identifier:
+.sp
+.in +2
+.nf
+svc:/system/intrd:default
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Administrative actions on this service, such as enabling, disabling, or
+requesting restart, can be performed using \fBsvcadm\fR(8). The service's
+status can be queried using the \fBsvcs\fR(1) command.
diff --git a/usr/src/man/man8/intrstat.8 b/usr/src/man/man8/intrstat.8
new file mode 100644
index 0000000000..3de8fd5fe8
--- /dev/null
+++ b/usr/src/man/man8/intrstat.8
@@ -0,0 +1,211 @@
+'\" te
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
+.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH INTRSTAT 8 "Dec 10, 2017"
+.SH NAME
+intrstat \- report interrupt statistics
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/intrstat\fR [\fB-c\fR \fIcpulist\fR | \fB-C\fR \fIprocessor_set_id\fR] [\fB-T\fR u | d ]
+ [\fB-x\fR \fIopt\fR[=\fIval\fR]] [\fIinterval\fR [\fIcount\fR]]
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBintrstat\fR utility gathers and displays run-time interrupt statistics.
+The output is a table of device names and CPU IDs, where each row of the table
+denotes a device, and each column of the table denotes a CPU. Each cell in the
+table contains both the raw number of interrupts for the given device on the
+given CPU, and the percentage of absolute time spent in that device's interrupt
+handler on that CPU.
+.sp
+.LP
+The device name is given in the form of
+\fB{\fR\fIname\fR}\fI#\fR\fB{\fR\fIinstance\fR\fB}\fR. The name is the
+normalized driver name, and typically corresponds to the name of the module
+implementing the driver. See \fBddi_driver_name\fR(9F). Many Sun-delivered
+drivers have their own manual pages. See \fBIntro\fR(4).
+.sp
+.LP
+If standard output is a terminal, the table contains as many columns of data as
+can fit within the terminal width. If standard output is not a terminal, the
+table contains at most four columns of data. By default, data is gathered and
+displayed for all CPUs. If the data cannot fit in a single table, it is printed
+across multiple tables. The set of CPUs for which data is displayed can be
+optionally specified with the \fB-c\fR or \fB-C\fR option.
+.sp
+.LP
+By default, \fBintrstat\fR displays data once per second and runs indefinitely.
+Both of these behaviors can be optionally controlled with the interval and
+count parameters, respectively. See \fBOPERANDS\fR.
+.sp
+.LP
+Because \fBintrstat\fR uses dynamic discovery, it reports only on devices that
+raise interrupts while the command is running. Any devices that are silent
+while \fBintrstat\fR is running are not displayed.
+.sp
+.LP
+\fBintrstat\fR induces a small system-wide performance degradation. As a
+result, only the super-user can run \fBintrstat\fR by default. The
+\fIDynamic Tracing Guide\fR explains how administrators can grant privileges to
+other users to permit them to run \fBintrstat\fR.
+.SH OPTIONS
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-c\fR \fIcpulist\fR\fR
+.ad
+.sp .6
+.RS 4n
+Displays data for the CPUs specified by \fIcpulist\fR.
+.sp
+\fIcpulist\fR can be a single processor ID (for example, \fB4\fR), a range of
+processor IDs (for example, \fB4-6\fR), or a comma separated list of processor
+IDs or processor ID ranges (for example, \fB4,5,6\fR or \fB4,6-8\fR).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-C\fR \fIprocessor_set_id\fR\fR
+.ad
+.sp .6
+.RS 4n
+Displays data for the CPUs in the processor set specified by
+\fIprocessor_set_id\fR.
+.sp
+\fBintrstat\fR modifies its output to always reflect the CPUs in the specified
+processor set. If a CPU is added to the set, \fBintrstat\fR modifies its output
+to include the added CPU. If a CPU is removed from the set, \fBintrstat\fR
+modifies its output to exclude the removed CPU. At most one processor set can
+be specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-T\fR \fBu\fR | \fBd\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display a time stamp.
+.sp
+Specify \fBu\fR for a printed representation of the internal representation of
+time. See \fBtime\fR(2). Specify \fBd\fR for standard date format. See
+\fBdate\fR(1).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-x\fR \fIopt\fR[=\fIval\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Enable or modify a DTrace runtime option or D compiler option. The list of
+options is found in the \fIDynamic Tracing Guide\fR. A boolean option
+is enabled by specifying its name. Options with values are set by separating
+the option name and value with an equal sign (\fB=\fR)
+.RE
+
+.SH OPERANDS
+.LP
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fB\fIcount\fR\fR
+.ad
+.sp .6
+.RS 4n
+Indicates the number of intervals to execute before exiting.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIinterval\fR\fR
+.ad
+.sp .6
+.RS 4n
+Indicates the number of seconds to be executed before exiting.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRUsing \fBintrstat\fR Without Options
+.sp
+.LP
+Without options, \fBintrstat\fR displays a table of trap types and CPUs. At
+most, four columns can fit in the default terminal width. If there are more
+than four CPUs, multiple tables are displayed.
+
+.sp
+.LP
+The following example runs \fBintrstat\fR on a uniprocessor Intel IA/32-based
+laptop:
+
+.sp
+.in +2
+.nf
+example# intrstat
+ device | cpu0 %tim
+ -----------------+---------------
+ ata#0 | 166 0.4
+ ata#1 | 0 0.0
+ audioi810#0 | 6 0.0
+ i8042#0 | 281 0.7
+ iprb#0 | 6 0.0
+ uhci#1 | 6 0.0
+ uhci#2 | 6 0.0
+
+ device | cpu0 %tim
+ -----------------+---------------
+ ata#0 | 161 0.5
+ ata#1 | 0 0.0
+ audioi810#0 | 6 0.0
+ i8042#0 | 303 0.6
+ iprb#0 | 6 0.0
+ uhci#1 | 6 0.0
+ uhci#2 | 6 0.0
+ ...
+.fi
+.in -2
+.sp
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability See below.
+.TE
+
+.sp
+.LP
+The command-line syntax is Evolving. The human-readable output is Unstable.
+.SH SEE ALSO
+.LP
+.BR Intro (4),
+.BR attributes (7),
+.BR dtrace (8),
+.BR trapstat (8),
+.BR ddi_driver_name (9F)
+.sp
+.LP
+\fIDynamic Tracing Guide\fR:
+.sp
+.LP
+https://illumos.org/books/dtrace/
diff --git a/usr/src/man/man8/iostat.8 b/usr/src/man/man8/iostat.8
new file mode 100644
index 0000000000..1e422c9a8c
--- /dev/null
+++ b/usr/src/man/man8/iostat.8
@@ -0,0 +1,688 @@
+'\" te
+.\"
+.\" CDDL HEADER START
+.\"
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.\"
+.\" CDDL HEADER END
+.\"
+.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights reserved
+.\" Copyright (c) 2012 by Delphix. All rights reserved.
+.\"
+.TH IOSTAT 8 "Mar 23, 2009"
+.SH NAME
+iostat \- report I/O statistics
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/bin/iostat\fR [\fB-cCdDeEiImMnpPrstxXYz\fR] [\fB-l\fR \fIn\fR] [\fB-T\fR u | d]
+ [\fIdisk\fR]... [\fIinterval\fR [\fIcount\fR]]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBiostat\fR utility iteratively reports terminal, disk, and tape \fBI/O\fR
+activity, as well as \fBCPU\fR utilization. The first line of output is for all
+time since boot; each subsequent line is for the prior interval only.
+.sp
+.LP
+To compute this information, the kernel maintains a number of counters. For
+each disk, the kernel counts reads, writes, bytes read, and bytes written. The
+kernel also takes hi-res time stamps at queue entry and exit points, which
+allows it to keep track of the residence time and cumulative residence-length
+product for each queue. Using these values, \fBiostat\fR produces highly
+accurate measures of throughput, utilization, queue lengths, transaction rates
+and service time. For terminals collectively, the kernel simply counts the
+number of input and output characters.
+.sp
+.LP
+During execution of the kernel status command, the \fBstate\fR of the system
+can change. If relevant, a state change message is included in the \fBiostat\fR
+output, in one of the following forms:
+.sp
+.in +2
+.nf
+<<device added: sd0>>
+<<device removed: sd0>>
+<<partition added: sd0,a>>
+<<partition removed: sd0,a>>
+<<NFS mounted: nfs1>>
+<<NFS unmounted: nfs1>>
+<<multi-path added: ssd4>>
+<<multi-path removed: ssd4>>
+<<controller added: c1>>
+<<controller removed: c1>>
+<<processors added: 1, 3>>
+<<processors removed: 1, 3>>
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Note that the \fBnames\fR printed in these state change messages are affected
+by the \fB-n\fR and \fB-m\fR options as appropriate.
+.sp
+.LP
+For more general system statistics, use \fBsar\fR(1), \fBsar\fR(8), or
+\fBvmstat\fR(8).
+.SS "Output"
+.sp
+.LP
+The output of the \fBiostat\fR utility includes the following information.
+.sp
+.ne 2
+.na
+\fB\fBdevice\fR\fR
+.ad
+.RS 10n
+name of the disk
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBr/s\fR\fR
+.ad
+.RS 10n
+reads per second
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBw/s\fR\fR
+.ad
+.RS 10n
+writes per second
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBkr/s\fR\fR
+.ad
+.RS 10n
+kilobytes read per second
+.sp
+The average I/O size during the interval can be computed from \fBkr/s\fR
+divided by \fBr/s\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBkw/s\fR\fR
+.ad
+.RS 10n
+kilobytes written per second
+.sp
+The average I/O size during the interval can be computed from \fBkw/s\fR
+divided by \fBw/s\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBwait\fR\fR
+.ad
+.RS 10n
+average number of transactions waiting for service (queue length)
+.sp
+This is the number of I/O operations held in the device driver queue waiting
+for acceptance by the device.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBactv\fR\fR
+.ad
+.RS 10n
+average number of transactions actively being serviced (removed from the queue
+but not yet completed)
+.sp
+This is the number of I/O operations accepted, but not yet serviced, by the
+device.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsvc_t\fR\fR
+.ad
+.RS 10n
+average response time of transactions, in milliseconds
+.sp
+The \fBsvc_t\fR output reports the overall \fBresponse\fR time, rather than the
+\fBservice\fR time, of a device. The overall time includes the time that
+transactions are in queue and the time that transactions are being serviced.
+The time spent in queue is shown with the \fB-x\fR option in the \fBwsvc_t\fR
+output column. The time spent servicing transactions is the true service time.
+Service time is also shown with the \fB-x\fR option and appears in the
+\fBasvc_t\fR output column of the same report.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB%w\fR\fR
+.ad
+.RS 10n
+percent of time there are transactions waiting for service (queue non-empty)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB%b\fR\fR
+.ad
+.RS 10n
+percent of time the disk is busy (transactions in progress)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBwsvc_t\fR\fR
+.ad
+.RS 10n
+average service time in wait queue, in milliseconds
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBasvc_t\fR\fR
+.ad
+.RS 10n
+average service time of active transactions, in milliseconds
+.RE
+
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-c\fR\fR
+.ad
+.RS 12n
+Report the percentage of time the system has spent in user mode, in system
+mode, in dtrace probes, and idling. See the NOTES section and
+\fBmpstat\fR(8) for more information.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-C\fR\fR
+.ad
+.RS 12n
+When the \fB-x\fR option is also selected, report extended disk statistics
+aggregated by \fIcontroller id\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-d\fR\fR
+.ad
+.RS 12n
+For each disk, report the number of kilobytes transferred per second, the
+number of transfers per second, and the average service time in milliseconds.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-D\fR\fR
+.ad
+.RS 12n
+For each disk, report the reads per second, writes per second, and percentage
+disk utilization.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-e\fR\fR
+.ad
+.RS 12n
+Display device error summary statistics. The total errors, hard errors, soft
+errors, and transport errors are displayed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-E\fR\fR
+.ad
+.RS 12n
+Display all device error statistics.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-i\fR\fR
+.ad
+.RS 12n
+In \fB-E\fR output, display the \fBDevice ID\fR instead of the \fBSerial No\fR.
+The \fBDevice Id\fR is a unique identifier registered by a driver through
+\fBddi_devid_register\fR(9F).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-I\fR\fR
+.ad
+.RS 12n
+Report the counts in each interval, rather than rates (where applicable).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR \fIn\fR\fR
+.ad
+.RS 12n
+Limit the number of disks included in the report to \fIn\fR; the disk limit
+defaults to 4 for \fB-d\fR and \fB-D\fR, and unlimited for \fB-x\fR. Note:
+disks explicitly requested (see \fIdisk\fR below) are not subject to this disk
+limit.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-m\fR\fR
+.ad
+.RS 12n
+Report file system mount points. This option is most useful if the \fB-P\fR or
+\fB-p\fR option is also specified or used in conjunction with \fB-Xn\fR or
+\fB-en\fR. The \fB-m\fR option is useful only if the mount point is actually
+listed in the output. This option can only be used in conjunction with the
+\fB-n\fR option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-M\fR\fR
+.ad
+.RS 12n
+Display data throughput in \fBMB\fR/sec instead of KB/sec.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR\fR
+.ad
+.RS 12n
+Display names in descriptive format. For example, \fBcXtYdZ\fR, \fBrmt/N\fR,
+\fBserver:/export/path\fR.
+.sp
+By default, disks are identified by instance names such as \fBssd23\fR or
+\fBmd301\fR. Combining the \fB-n\fR option with the \fB-x\fR option causes disk
+names to display in the \fBcXtYdZsN\fR format which is more easily associated
+with physical hardware characteristics. The \fBcXtYdZsN\fR format is
+particularly useful in FibreChannel (FC) environments where the FC World Wide
+Name appears in the \fBt\fR field.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR\fR
+.ad
+.RS 12n
+For each disk, report per-partition statistics in addition to per-device
+statistics.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-P\fR\fR
+.ad
+.RS 12n
+For each disk, report per-partition statistics only, no per-device statistics.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-r\fR\fR
+.ad
+.RS 12n
+Display data in a comma-separated format.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR\fR
+.ad
+.RS 12n
+Suppress messages related to \fBstate changes\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-t\fR\fR
+.ad
+.RS 12n
+Report the number of characters read and written to terminals per second.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-T\fR u | d\fR
+.ad
+.RS 12n
+Display a time stamp.
+.sp
+Specify \fBu\fR for a printed representation of the internal representation of
+time. See \fBtime\fR(2). Specify \fBd\fR for standard date format. See
+\fBdate\fR(1).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-X\fR\fR
+.ad
+.RS 12n
+For disks under \fBscsi_vhci\fR(4D) control, in addition to disk \fIlun\fR
+statistics, also report statistics for \fIlun\fR.\fIcontroller\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-x\fR\fR
+.ad
+.RS 12n
+Report extended disk statistics. By default, disks are identified by instance
+names such as \fBssd23\fR or \fBmd301\fR. Combining the \fBx\fR option with the
+\fB-n\fR option causes disk names to display in the \fBcXtYdZsN\fR format, more
+easily associated with physical hardware characteristics. Using the
+\fBcXtYdZsN\fR format is particularly helpful in the FibreChannel environments
+where the FC World Wide Name appears in the \fBt\fR field.
+.sp
+If no output display is requested (no \fB-x\fR, \fB-e\fR, \fB-E\fR), \fB-x\fR
+is implied.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-Y\fR\fR
+.ad
+.RS 12n
+For disks under \fBscsi_vhci\fR(4D) control, in addition to disk \fIlun\fR
+statistics, also report statistics for \fIlun\fR.\fItargetport\fR and
+\fIlun\fR.\fItargetport\fR.\fIcontroller\fR.
+.sp
+In \fB-n\fR (descriptive) mode the \fItargetport\fR is shown in using the
+\fBtarget-port\fR property of the path. Without \fB-n\fR the \fItargetport\fR
+is shown using the shorter \fBport-id\fR. All target ports with the same
+\fBtarget-port\fR property value share the same \fBport-id\fR. The
+\fBtarget-port\fR-to-\fBport-id\fR association does not persist across reboot.
+.sp
+If no output display is requested (no \fB-x\fR, \fB-e\fR, \fB-E\fR), \fB-x\fR
+is implied.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-z\fR\fR
+.ad
+.RS 12n
+Do not print lines whose underlying data values are all zeros.
+.RE
+
+.sp
+.LP
+The option set \fB-xcnCXTdz\fR \fIinterval\fR is particularly useful for
+determining whether disk I/O problems exist and for identifying problems.
+.SH OPERANDS
+.sp
+.LP
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fB\fIcount\fR\fR
+.ad
+.RS 12n
+Display only \fIcount\fR reports.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIdisk\fR\fR
+.ad
+.RS 12n
+Explicitly specify the disks to be reported; in addition to any explicit disks,
+any active disks up to the disk limit (see \fB-l\fR above) will also be
+reported.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIinterval\fR\fR
+.ad
+.RS 12n
+Report once each \fIinterval\fR seconds.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRUsing \fBiostat\fR to Generate User and System Operation
+Statistics
+.sp
+.LP
+The following command displays two reports of extended device statistics,
+aggregated by \fIcontroller id\fR, for user (\fBus\fR) and system (\fBsy\fR)
+operations. Because the \fB-n\fR option is used with the \fB-x\fR option,
+devices are identified by controller names.
+
+.sp
+.in +2
+.nf
+example% \fBiostat\fR \fB-xcnCXTdz\fR \fB5\fR
+
+
+Mon Nov 24 14:58:36 2003
+ cpu
+ us sy dt id
+ 14 31 0 20
+ extended device statistics
+ r/s w/s kr/s kw wait actv wsvc_t asvc_t %w %b device
+ 3.8 29.9 145.8 44.0 0.0 0.2 0.1 6.4 0 5 c0
+666.3 814.8 12577.6 17591.1 91.3 82.3 61.6 55.6 0 2 c12
+180.0 234.6 4401.1 5712.6 0.0 147.7 0.0 356.3 0 98 d10
+
+Mon Nov 24 14:58:41 2003
+ cpu
+ us sy dt id
+ 11 31 1 22
+ extended device statistics
+ r/s w/s kr/s kw wait actv wsvc_t asvc_t %w %b device
+ 0.8 41.0 5.2 20.5 0.0 0.2 0.2 4.4 0 6 c0
+565.3 581.7 8573.2 10458.9 0.0 26.6 0.0 23.2 0 3 c12
+106.5 81.3 3393.2 1948.6 0.0 5.7 0.0 30.1 0 99 d10
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRUsing \fBiostat\fR to Generate TTY Statistics
+.sp
+.LP
+The following command displays two reports on the activity of five disks in
+different modes of operation. Because the \fB-x\fR option is used, disks are
+identified by instance names.
+
+.sp
+.in +2
+.nf
+example% \fBiostat\fR \fB-x\fR \fBtc 5 2\fR
+
+
+ extended device statistics tty cpu
+device r/s w/s kr/s kw/s wait actv svc_t %w %b tin tout us sy dt id
+sd0 0.4 0.3 10.4 8.0 0.0 0.0 36.9 0 1 0 10 0 0 0 99
+sd1 0.0 0.0 0.3 0.4 0.0 0.0 35.0 0 0
+sd6 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0 0
+nfs1 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0 0
+nfs2 0.0 0.0 0.0 0.1 0.0 0.0 35.6 0 0
+ extended device statistics tty cpu
+device r/s w/s kr/s kw/s wait actv svc_t %w %b tin tout us sy dt id
+sd0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0 0 0 155 0 0 0 100
+sd1 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0 0
+sd6 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0 0
+nfs1 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0 0
+nfs2 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0 0
+
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRUsing \fBiostat\fR to Generate Partition and Device Statistics
+.sp
+.LP
+The following command generates partition and device statistics for each disk.
+Because the \fB-n\fR option is used with the \fB-x\fR option, disks are
+identified by controller names.
+
+.sp
+.in +2
+.nf
+example% \fBiostat -xnp\fR
+
+ extended device statistics
+r/s w/s kr/s kw/s wait actv wsvc_t asvc_t %w %b device
+0.4 0.3 10.4 7.9 0.0 0.0 0.0 36.9 0 1 c0t0d0
+0.3 0.3 9.0 7.3 0.0 0.0 0.0 37.2 0 1 c0t0d0s0
+0.0 0.0 0.1 0.5 0.0 0.0 0.0 34.0 0 0 c0t0d0s1
+0.0 0.0 0.0 0.1 0.0 0.0 0.6 35.0 0 0 fuji:/export/home/user3
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 4 \fRShow Translation from Instance Name to Descriptive Name
+.sp
+.LP
+The following example illustrates the use of \fBiostat\fR to translate a
+specific instance name to a descriptive name.
+
+.sp
+.in +2
+.nf
+example% \fBiostat -xn sd1\fR
+ extended device statistics
+r/s w/s kr/s kw/s wait actv wsvc_t asvc_t %w %b device
+0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0 0 c8t1d0
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 5 \fRShow Target Port and Controller Activity for a Specific Disk
+.sp
+.LP
+In the following example, there are four controllers, all connected to the same
+target port.
+
+.sp
+.in +2
+.nf
+# \fBiostat -Y ssd22\fR
+ extended device statistics
+device r/s w/s kr/s kw/s wait actv svc_t %w %b
+ssd22 0.2 0.0 1.5 0.0 0.0 0.0 0.7 0 0
+ssd22.t2 0.2 0.0 1.5 0.0 0.0 0.0 0.0 0 0
+ssd22.t2.fp0 0.0 0.0 0.4 0.0 0.0 0.0 0.0 0 0
+ssd22.t2.fp1 0.0 0.0 0.4 0.0 0.0 0.0 0.0 0 0
+ssd22.t2.fp2 0.0 0.0 0.4 0.0 0.0 0.0 0.0 0 0
+ssd22.t2.fp3 0.0 0.0 0.4 0.0 0.0 0.0 0.0 0 0
+.fi
+.in -2
+.sp
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability See below.
+.TE
+
+.sp
+.LP
+Invocation is evolving. Human readable output is unstable.
+.SH SEE ALSO
+.sp
+.LP
+.BR date (1),
+.BR sar (1),
+.BR time (2),
+.BR scsi_vhci (4D),
+.BR attributes (7),
+.BR mpstat (8),
+.BR sar (8),
+.BR vmstat (8)
+.SH NOTES
+.sp
+.LP
+The sum of \fBCPU\fR utilization might vary slightly from 100 because of
+rounding errors in the production of a percentage figure.
+.sp
+.LP
+The \fBsvc_t\fR response time is not particularly significant when the
+\fBI/0\fR (\fBr/s\fR+\fBw/s\fR) rates are under 0.5 per second. Harmless spikes
+are fairly normal in such cases.
+.sp
+.LP
+The \fBmpstat\fR utility reports the same \fBdt\fR, \fBusr\fR, and \fBsys\fR
+statistics. See \fBmpstat\fR(8) for more information.
+.sp
+.LP
+When executed in a \fBzone\fR and if the pools facility is active,
+\fBiostat\fR(8) will only provide information for those processors in the
+processor set of the pool to which the \fBzone\fR is bound.
diff --git a/usr/src/man/man8/ipaddrsel.8 b/usr/src/man/man8/ipaddrsel.8
new file mode 100644
index 0000000000..6dda9a1d7f
--- /dev/null
+++ b/usr/src/man/man8/ipaddrsel.8
@@ -0,0 +1,326 @@
+'\" te
+.\" Copyright (C) 2006, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright (C) 2017, Sebastian Wiedenroth
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH IPADDRSEL 8 "Nov 4, 2017"
+.SH NAME
+ipaddrsel \- configure IPv6 default address selection
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/ipaddrsel\fR
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/ipaddrsel\fR \fB-f\fR \fIfile\fR
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/ipaddrsel\fR \fB-d\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+Use the \fBipaddrsel\fR utility to configure the IPv6 default address selection
+policy table. The policy table is a longest-matching-prefix lookup table that
+is used for IPv6 source address selection and for destination address ordering
+when resolving names to \fBAF_INET6\fR addresses. For a description of how the
+policy table is used for source address selection, see \fBinet6\fR(4P). For a
+description of how the policy table is used for destination address ordering,
+see \fBgetaddrinfo\fR(3SOCKET).
+.sp
+.LP
+The unmodified policy table is valid for all typical IPv6 deployments. Modify
+the table only if a circumstance exists for which the default behavior of the
+IPv6 source address selection or destination address ordering mechanism is
+unsatisfactory. See the section for examples of such circumstances. You should
+carefully consider your addressing strategy before you change the table from
+the provided default.
+.sp
+.LP
+When the \fBipaddrsel\fR command is issued without any arguments, the address
+selection policy currently in use is printed. The format of the output is
+compatible with the format of the configuration file that the \fB-f\fR option
+accepts.
+.LP
+Note -
+.sp
+.RS 2
+If the \fBusesrc\fR subcommand to \fBifconfig\fR(8) is applied to a particular
+physical interface, the selection policy specified by \fBusesrc\fR overrides
+the source address selection policies specified by \fBipaddrsel\fR. This is
+true for packets that are locally generated and for applications that do not
+choose a non-zero source address using \fBbind\fR(3SOCKET).
+.RE
+.SS "The Configuration File"
+.LP
+The configuration file that the \fB-f\fR option accepts can contain either
+comment lines or policy entries. Comment lines have a '\fB#\fR' character as
+the first non-blank character. and they are ignored by the \fBipaddrsel\fR
+utility. Policy entry lines have the following format:
+.sp
+.in +2
+.nf
+\fIprefix\fR/\fIprefix_length\fR \fIprecedence\fR \fIlabel\fR [# \fIcomment\fR]
+.fi
+.in -2
+
+.sp
+.LP
+The \fIprefix\fR must be an IPv6 prefix in a format consistent with
+\fBinet\fR(3SOCKET). The \fIprefix_length\fR is an integer ranging from 0 to
+128. The IPv6 source address selection and destination address ordering
+algorithms determine the precedence or label of an address by doing a
+longest-prefix-match lookup using the prefixes in this table, much like
+next-hop determination for a destination is done by doing a
+longest-prefix-match lookup using an IP routing table.
+.sp
+.LP
+The precedence is a non-negative integer that represents how the destination
+address ordering mechanism will sort addresses returned from name lookups. In
+general, addresses with a higher precedence will be in front of addresses with
+a lower precedence. Other factors, such as destinations with undesirable source
+addresses can, however, override these precedence values.
+.sp
+.LP
+The label is a string of at most fifteen characters, not including the
+\fINULL\fR terminator. The label allows particular source address prefixes to
+be used with destination prefixes of the same label. Specifically, for a
+particular destination address, the IPv6 source address selection algorithm
+prefers source addresses whose label is equal that of the destination.
+.sp
+.LP
+The label may be followed by an optional comment.
+.sp
+.LP
+The file must contain a default policy entry, which is an entry with
+\fB::0/0\fR as its \fIprefix\fR and \fIprefix_length\fR. This is to ensure that
+all possible addresses match a policy.
+.SH OPTIONS
+.LP
+The \fBippadrsel\fR utility supports the following options:
+.sp
+.ne 2
+.na
+\fB\fB-f\fR \fIfile\fR\fR
+.ad
+.RS 11n
+Replace the address selection policy table with the policy specified in the
+\fIfile\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-d\fR\fR
+.ad
+.RS 11n
+Revert the kernel's address selection policy table back to the default table.
+Invoking \fBipaddrsel\fR in this way only changes the currently running
+kernel's policy table, and does not alter the configuration file
+\fB/etc/inet/ipaddrsel.conf\fR. To revert the configuration file back to its
+default settings, use \fBipaddrsel\fR \fB-d\fR, then dump the contents of the
+table to the configuration file by redirecting the output of \fBipaddrsel\fR to
+\fB/etc/inet/ipaddrsel.conf\fR.
+.sp
+.in +2
+.nf
+example# \fBipaddrsel -d\fR
+example# \fBipaddrsel > /etc/inet/ipaddrsel.conf\fR
+.fi
+.in -2
+.sp
+
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRThe Default Policy in \fB/etc/inet/ipaddrsel.conf\fR
+.sp
+.LP
+The following example is the default policy that is located in
+\fB/etc/inet/ipaddrsel.conf\fR:
+
+.sp
+.in +2
+.nf
+# Prefix Precedence Label
+::1/128 50 Loopback
+::/0 40 Default
+::ffff:0.0.0.0/96 35 IPv4
+2002::/16 30 6to4
+2001::/32 5 Teredo
+fc00::/7 3 ULA
+::/96 1 IPv4_Compatible
+fec0::/10 1 Site_Local
+3ffe::/16 1 6bone
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRAssigning a Lower Precedence to Link-local and Site-local
+Addresses
+.sp
+.LP
+By default, the destination address ordering rules sort addresses of smaller
+scope before those of larger scope. For example, if a name resolves to a global
+and a site-local address, the site local address would be ordered before the
+global address. An administrator can override this ordering rule by assigning a
+lower precedence to addresses of smaller scope, as the following table
+demonstrates.
+
+.sp
+.in +2
+.nf
+# Prefix Precedence Label
+::1/128 50 Loopback
+::/0 40 Default
+2002::/16 30 6to4
+fec0::/10 27 Site-Local
+fe80::/10 23 Link-Local
+::/96 20 IPv4_Compatible
+::ffff:0.0.0.0/96 10 IPv4
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRAssigning Higher Precedence to IPv4 Destinations
+.sp
+.LP
+By default, IPv6 addresses are ordered in front of IPv4 addresses in name
+lookups. \fB::ffff:0.0.0.0/96\fR has the precedence of 35 in the default table.
+In the following example, IPv4 addresses are assigned higher precedence and are
+ordered in front of IPv6 destinations:
+
+.sp
+.in +2
+.nf
+# Prefix Precedence Label
+::1/128 50 Loopback
+::/0 40 Default
+::ffff:0.0.0.0/96 60 IPv4
+2002::/16 30 6to4
+2001::/32 5 Teredo
+fc00::/7 3 ULA
+::/96 1 IPv4_Compatible
+fec0::/10 1 Site_Local
+3ffe::/16 1 6bone
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 4 \fREnsuring that a Particular Source Address is Used
+.sp
+.LP
+This example ensures that a particular source address is used only when
+communicating with destinations in a particular network.
+
+.sp
+.LP
+The following policy table assigns the label "ClientNet" to a particular source
+address on the local system, \fB2001:1111:1111::1\fR. The table assigns the same
+label to a network, \fB2001:2222:2222::/48\fR. The result of this policy is that
+the \fB2001:1111:1111::1\fR source address will only be used when communicating
+with destinations contained in the \fB2001:2222:2222::/48\fR network. For this
+example, this network is the \fBClientNet\fR, which could represent a
+particular client's network.
+
+.sp
+.in +2
+.nf
+# Prefix Precedence Label
+::1/128 50 Loopback
+2001:1111:1111::1/128 40 ClientNet
+2001:2222:2222::/48 40 ClientNet
+::/0 40 Default
+2002::/16 30 6to4
+::/96 20 IPv4_Compatible
+::ffff:0.0.0.0/96 10 IPv4
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+This example assumes that the local system has one physical interface, and that
+all global prefixes are assigned to that physical interface.
+
+.SH EXIT STATUS
+.LP
+\fBipaddrsel\fR returns the following exit values:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 6n
+\fBipaddrsel\fR successfully completed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB>\fB0\fR\fR
+.ad
+.RS 6n
+An error occurred. If a failure is encountered, the kernel's current policy
+table is unchanged.
+.RE
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/etc/inet/ipaddrsel.conf\fR\fR
+.ad
+.RS 28n
+The file that contains the IPv6 default address selection policy to be
+installed at boot time. This file is loaded before any Internet services are
+started.
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.LP
+.BR getaddrinfo (3SOCKET),
+.BR inet (3SOCKET),
+.BR inet6 (4P),
+.BR ipaddrsel.conf (5),
+.BR attributes (7),
+.BR nscd (8)
+.SH NOTES
+.LP
+The ipnodes cache kept by \fBnscd\fR(8) contains addresses that are ordered
+using the destination address ordering algorithm, which is one of the reasons
+why \fBipaddrsel\fR is called before \fBnscd\fR in the boot sequence. If
+\fBipaddrsel\fR is used to change the address selection policy after \fBnscd\fR
+has started, you should invalidate the \fBnscd\fR ipnodes cache by invoking the
+following command:
+.sp
+.in +2
+.nf
+example# \fB/usr/sbin/nscd -i ipnodes\fR
+.fi
+.in -2
+.sp
+
diff --git a/usr/src/man/man8/ipadm.8 b/usr/src/man/man8/ipadm.8
new file mode 100644
index 0000000000..a308a240a8
--- /dev/null
+++ b/usr/src/man/man8/ipadm.8
@@ -0,0 +1,1061 @@
+.\"
+.\" This file and its contents are supplied under the terms of the
+.\" Common Development and Distribution License ("CDDL"), version 1.0.
+.\" You may only use this file in accordance with the terms of version
+.\" 1.0 of the CDDL.
+.\"
+.\" A full copy of the text of the CDDL should have accompanied this
+.\" source. A copy of the CDDL is also available via the Internet at
+.\" http://www.illumos.org/license/CDDL.
+.\"
+.\"
+.\" Copyright (c) 2012, Joyent, Inc. All Rights Reserved
+.\" Copyright (c) 2013, 2017 by Delphix. All rights reserved.
+.\" Copyright (c) 2016-2017, Chris Fraire <cfraire@me.com>.
+.\" Copyright 2021 OmniOS Community Edition (OmniOSce) Association.
+.\" Copyright 2021 Tintri by DDN, Inc. All rights reserved.
+.\"
+.Dd November 15, 2021
+.Dt IPADM 8
+.Os
+.Sh NAME
+.Nm ipadm
+.Nd configure IP and IPMP interfaces, addresses and protocols
+.Sh SYNOPSIS
+.Nm
+.Ic help
+.Nm
+.Ic create-if
+.Op Fl t
+.Ar interface
+.Nm
+.Ic create-ip
+.Op Fl t
+.Ar interface
+.Nm
+.Ic delete-if
+.Ar interface
+.Nm
+.Ic delete-ip
+.Ar interface
+.Pp
+.Nm
+.Ic create-ipmp
+.Op Fl t
+.Op Fl i Ar interface Ns Oo , Ns Ar interface Oc Ns ...
+.Ar ipmp-interface
+.Nm
+.Ic delete-ipmp
+.Ar ipmp-interface
+.Nm
+.Ic add-ipmp
+.Op Fl t
+.Fl i Ar interface Ns Oo , Ns Ar interface Oc Ns ...
+.Ar ipmp-interface
+.Nm
+.Ic remove-ipmp
+.Op Fl t
+.Fl i Ar interface Ns Oo , Ns Ar interface Oc Ns ...
+.Ar ipmp-interface
+.Pp
+.Nm
+.Ic disable-if
+.Fl t
+.Ar interface
+.Nm
+.Ic enable-if
+.Fl t
+.Ar interface
+.Nm
+.Ic show-if
+.Op Oo Fl p Oc Fl o Ar field Ns Oo , Ns Ar field Oc Ns ...
+.Op Ar interface
+.Pp
+.Nm
+.Ic set-ifprop
+.Op Fl t
+.Fl p Ar prop Ns = Ns Ar value Ns Oo , Ns Ar value Oc Ns ...
+.Fl m Ar protocol
+.Ar interface
+.Nm
+.Ic reset-ifprop
+.Op Fl t
+.Fl p Ar prop
+.Fl m Ar protocol
+.Ar interface
+.Nm
+.Ic show-ifprop
+.Op Oo Fl c Oc Fl o Ar field Ns Oo , Ns Ar value Oc Ns ...
+.Op Fl p Ar prop Ns Oo , Ns Ar prop Oc Ns ...
+.Op Fl m Ar protocol
+.Op Ar interface
+.Pp
+.Nm
+.Ic create-addr
+.Op Fl t
+.Fl T Cm static
+.Op Fl d
+.Fl a Oo Cm local Ns | Ns Cm remote Ns = Oc Ns
+.Ar addr Ns Oo / Ns Ar prefixlen Oc Ns ...
+.Ar addrobj
+.Nm
+.Ic create-addr
+.Op Fl t
+.Fl T Cm dhcp
+.Op Fl 1
+.Op Fl h Ar hostname
+.Op Fl w Bro Ar seconds Ns | Ns Cm forever Brc
+.Ar addrobj
+.Nm
+.Ic create-addr
+.Op Fl t
+.Fl T Cm addrconf
+.Op Fl i Ar interface-id
+.Oo Fl p Bro Cm stateful Ns | Ns Cm stateless Brc Ns = Ns
+.Bro Cm yes Ns | Ns Cm no Brc Oc Ns ...
+.Ar addrobj
+.Nm
+.Ic delete-addr
+.Op Fl r
+.Ar addrobj
+.Nm
+.Ic show-addr
+.Op Oo Fl p Oc Fl o Ar field Ns Oo , Ns Ar field Oc Ns ...
+.Op Ar addrobj
+.Nm
+.Ic refresh-addr
+.Op Fl i
+.Ar addrobj
+.Nm
+.Ic down-addr
+.Op Fl t
+.Ar addrobj
+.Nm
+.Ic up-addr
+.Op Fl t
+.Ar addrobj
+.Nm
+.Ic disable-addr
+.Op Fl t
+.Ar addrobj
+.Nm
+.Ic enable-addr
+.Op Fl t
+.Ar addrobj
+.Pp
+.Nm
+.Ic set-addrprop
+.Op Fl t
+.Fl p Ar prop Ns = Ns Ar value Ns Oo , Ns Ar value Oc Ns ...
+.Ar addrobj
+.Nm
+.Ic reset-addrprop
+.Op Fl t
+.Fl p Ar prop
+.Ar addrobj
+.Nm
+.Ic show-addrprop
+.Op Oo Fl c Oc Fl o Ar field Ns Oo , Ns Ar field Oc Ns ...
+.Op Fl p Ar prop Ns Oo , Ns Ar prop Oc Ns ...
+.Op Ar addrobj
+.Pp
+.Nm
+.Ic set-prop
+.Op Fl t
+.Fl p Ar prop Ns Oo Cm + Ns | Ns Cm - Oc Ns = Ns
+.Ar value Ns Oo , Ns Ar value Oc Ns ...
+.Ar protocol
+.Nm
+.Ic reset-prop
+.Op Fl t
+.Fl p Ar prop
+.Ar protocol
+.Nm
+.Ic show-prop
+.Op Oo Fl c Oc Fl o Ar field Ns Oo , Ns Ar field Oc Ns ...
+.Op Fl p Ar prop Ns Oo , Ns Ar prop Oc Ns ...
+.Op Ar protocol
+.Sh DESCRIPTION
+The
+.Nm
+command is a stable replacement for the
+.Xr ifconfig 8
+and
+.Xr ndd 8
+commands.
+It is used to create IP interfaces and to configure IP addresses on those
+interfaces.
+It is also used to get, set or reset properties on interfaces, addresses and
+protocols.
+.Pp
+For subcommands that take an
+.Em addrobj ,
+the
+.Em addrobj
+specifies a unique address on the system.
+It is made up of two parts, delimited by a
+.Sq / .
+The first part is the name of the interface and the second part is a string up
+to 32 characters long.
+For example,
+.Qq lo0/v4
+is a loopback interface
+.Em addrobj
+name.
+.Pp
+For subcommands that take a
+.Em protocol ,
+this can be one of the following values:
+.Cm ip ,
+.Cm ipv4 ,
+.Cm ipv6 ,
+.Cm icmp ,
+.Cm tcp ,
+.Cm sctp
+or
+.Cm udp .
+.Sh SUBCOMMANDS
+When invoked with no arguments,
+.Nm
+shows the current address properties, in the same way as
+.Nm
+.Ic show-addr .
+.Pp
+The following subcommands are supported:
+.Pp
+.Bl -tag -compact -width Ds
+.It Xo
+.Nm
+.Ic help
+.Xc
+Display brief command usage.
+.Pp
+.It Xo
+.Nm
+.Ic create-if
+.Op Fl t
+.Ar interface
+.Xc
+.It Xo
+.Nm
+.Ic create-ip
+.Op Fl t
+.Ar interface
+.Xc
+Create an IP interface that will handle both IPv4 and IPv6 packets.
+The interface will be enabled as part of the creation process.
+The IPv4 interface will have the address 0.0.0.0.
+The IPv6 interface will have the address ::.
+The subcommands
+.Ic create-if
+and
+.Ic create-ip
+are functionally equivalent aliases of each other.
+.Bl -tag -width Ds
+.It Fl t Ns \&, Ns Fl -temporary
+Temporary, not persistent across reboots.
+.El
+.Pp
+.It Xo
+.Nm
+.Ic delete-if
+.Ar interface
+.Xc
+.It Xo
+.Nm
+.Ic delete-ip
+.Ar interface
+.Xc
+Permanently delete the specified IP interface.
+The subcommands
+.Ic delete-if
+and
+.Ic delete-ip
+are functionally equivalent aliases of each other.
+.Pp
+.It Xo
+.Nm
+.Ic create-ipmp
+.Op Fl t
+.Op Fl i Ar interface Ns Oo , Ns Ar interface Oc Ns ...
+.Ar ipmp-interface
+.Xc
+Create an IPMP interface that will handle both IPv4 and IPv6 packets.
+The interface will be enabled as part of the creation process.
+The IPv4 interface will have the address 0.0.0.0.
+The IPv6 interface will have the address ::.
+.Bl -tag -width Ds
+.It Fl i Ns \&, Ns Fl -interface
+Interface(s) to be added to the new IPMP interface.
+.It Fl t Ns \&, Ns Fl -temporary
+Temporary, not persistent across reboots.
+.El
+.Pp
+.It Xo
+.Nm
+.Ic delete-ipmp
+.Ar ipmp-interface
+.Xc
+Permanently delete the IPMP interface.
+.Pp
+.It Xo
+.Nm
+.Ic add-ipmp
+.Op Fl t
+.Fl i Ar interface Ns Oo , Ns Ar interface Oc Ns ...
+.Ar ipmp-interface
+.Xc
+Add the IP interface(s) to the IPMP interface.
+.Bl -tag -width ""
+.It Fl i Ns \&, Ns Fl -interface
+Interface(s) to be added to the IPMP interface.
+.It Fl t Ns \&, Ns Fl -temporary
+Temporary, not persistent across reboots.
+.El
+.Pp
+.It Xo
+.Nm
+.Ic remove-ipmp
+.Op Fl t
+.Fl i Ar interface Ns Oo , Ns Ar interface Oc Ns ...
+.Ar ipmp-interface
+.Xc
+Remove the IP interface(s) from the IPMP interface.
+.Bl -tag -width ""
+.It Fl i Ns \&, Ns Fl -interface
+Interface(s) to be removed from the IPMP interface.
+.It Fl t Ns \&, Ns Fl -temporary
+Temporary, not persistent across reboots.
+.El
+.Pp
+.It Xo
+.Nm
+.Ic disable-if
+.Fl t
+.Ar interface
+.Xc
+Disable the specified IP interface.
+.Bl -tag -width Ds
+.It Fl t Ns \&, Ns Fl -temporary
+Temporary, not persistent across reboots.
+.El
+.Pp
+.It Xo
+.Nm
+.Ic enable-if
+.Fl t
+.Ar interface
+.Xc
+Enable the specified IP interface.
+.Bl -tag -width Ds
+.It Fl t Ns \&, Ns Fl -temporary
+Temporary, not persistent across reboots.
+.El
+.Pp
+.It Xo
+.Nm
+.Ic show-if
+.Op Oo Fl p Oc Fl o Ar field Ns Oo , Ns Ar field Oc Ns ...
+.Op Ar interface
+.Xc
+Show the current IP interface configuration.
+.Bl -tag -width Ds
+.It Fl o Ns \&, Ns Fl -output
+Select which fields will be shown.
+The field value can be one of the following names:
+.Bl -tag -compact -width "PERSISTENT"
+.It Cm ALL
+Display all fields.
+.It Cm IFNAME
+The name of the interface.
+.It Cm STATE
+The state can be one of the following values:
+.Bl -tag -compact -width "disabled"
+.It Sy ok
+resources for the interface have been allocated
+.It Sy offline
+the interface is offline
+.It Sy failed
+the interface's datalink is down
+.It Sy down
+the interface is down
+.It Sy disabled
+the interface is disabled
+.El
+.It Cm CURRENT
+A set of single character flags indicating the following:
+.Bl -tag -compact -width "b"
+.It Sy b
+broadcast (mutually exclusive with
+.Sq p )
+.It Sy m
+multicast
+.It Sy p
+point-to-point (mutually exclusive with
+.Sq b )
+.It Sy v
+virtual interface
+.It Sy I
+IPMP
+.It Sy s
+IPMP standby
+.It Sy i
+IPMP inactive
+.It Sy V
+VRRP
+.It Sy a
+VRRP accept mode
+.It Sy 4
+IPv4
+.It Sy 6
+IPv6
+.El
+.It Cm PERSISTENT
+A set of single character flags showing what configuration will be used the
+next time the interface is enabled:
+.Bl -tag -compact -width "s"
+.It Sy s
+IPMP standby
+.It Sy 4
+IPv4
+.It Sy 6
+IPv6
+.El
+.El
+.It Fl p Ns \&, Ns Fl -parsable
+Print the output in a parsable format.
+.El
+.Pp
+.It Xo
+.Nm
+.Ic set-ifprop
+.Op Fl t
+.Fl p Ar prop Ns = Ns Ar value Ns Oo , Ns Ar value Oc Ns ...
+.Fl m Ar protocol
+.Ar interface
+.Xc
+Set a property's value(s) on the specified IP interface.
+.Bl -tag -width Ds
+.It Fl m Ns \&, Ns Fl -module
+Specify which protocol the setting applies to.
+.It Fl p Ns \&, Ns Fl -prop
+Specify the property name and value(s).
+The property name can be one of the following:
+.Bl -tag -compact -width "exchange_routes"
+.It Cm arp
+Address resolution protocol
+.Pq Cm on Ns / Ns Cm off .
+.It Cm exchange_routes
+Exchange of routing data
+.Pq Cm on Ns / Ns Cm off .
+.It Cm forwarding
+IP Forwarding
+.Pq Cm on Ns / Ns Cm off
+.It Cm metric
+Set the routing metric to the numeric value.
+The value is treated as extra hops to the destination.
+.It Cm mtu
+Set the maximum transmission unit to the numeric value.
+.It Cm nud
+Neighbor unreachability detection
+.Pq Cm on Ns / Ns Cm off
+.It Cm usesrc
+Indicates which interface to use for source address selection.
+A value
+.Cm none
+may also be used.
+.El
+.It Fl t Ns \&, Ns Fl -temporary
+Temporary, not persistent across reboots.
+.El
+.Pp
+.It Xo
+.Nm
+.Ic reset-ifprop
+.Op Fl t
+.Fl p Ar prop
+.Fl m Ar protocol
+.Ar interface
+.Xc
+Reset the specified IP interface's property value to the default.
+.Bl -tag -width Ds
+.It Fl m Ns \&, Ns Fl -module
+Specify which protocol the setting applies to.
+.It Fl p Ns \&, Ns Fl -prop
+Specify the property name.
+See the
+.Nm ipadm Ic set-ifprop
+subcommand for the list of property names.
+.It Fl t Ns \&, Ns Fl -temporary
+Temporary, not persistent across reboots.
+.El
+.Pp
+.It Xo
+.Nm
+.Ic show-ifprop
+.Op Oo Fl c Oc Fl o Ar field Ns Oo , Ns Ar value Oc Ns ...
+.Op Fl p Ar prop Ns Oo , Ns Ar prop Oc Ns ...
+.Op Fl m Ar protocol
+.Op Ar interface
+.Xc
+Display the property values for one or all of the IP interfaces.
+.Bl -tag -width Ds
+.It Fl c Ns \&, Ns Fl -parsable
+Print the output in a parsable format.
+.It Fl m Ns \&, Ns Fl -module
+Specify which protocol to display.
+.It Fl o Ns \&, Ns Fl -output
+Select which fields will be shown.
+The field value can be one of the following names:
+.Bl -tag -compact -width "PERSISTENT"
+.It Cm ALL
+Display all fields.
+.It Cm IFNAME
+The name of the interface.
+.It Cm PROPERTY
+The name of the property.
+.It Cm PROTO
+The name of the protocol.
+.It Cm PERM
+If the property is readable
+.Pq Qq r
+and/or writable
+.Pq Qq w .
+.It Cm CURRENT
+The value of the property.
+.It Cm PERSISTENT
+The persistent value of the property.
+.It Cm DEFAULT
+The default value of the property.
+.It Cm POSSIBLE
+The possible values for the property.
+.El
+.It Fl p Ns \&, Ns Fl -prop
+Specify which properties to display.
+See the
+.Nm ipadm Ic set-ifprop
+subcommand for the list of property names.
+.El
+.Pp
+.It Xo
+.Nm
+.Ic create-addr
+.Op Fl t
+.Fl T Cm static
+.Op Fl d
+.Fl a Oo Cm local Ns | Ns Cm remote Ns = Oc Ns
+.Ar addr Ns Oo / Ns Ar prefixlen Oc Ns ...
+.Ar addrobj
+.Xc
+Create an address on the specified IP interface using static configuration.
+The address will be enabled but can disabled using the
+.Nm ipadm Ic disable-addr
+subcommand.
+Note that
+.Cm addrconf
+address configured on the interface is required to configure
+.Cm static
+IPv6 address on the same interface.
+This takes the following options:
+.Bl -tag -width Ds
+.It Fl a Ns \&, Ns Fl -address
+Specify the address.
+The
+.Cm local
+or
+.Cm remote
+prefix can be used for a point-to-point interface.
+In this case, both addresses must be given.
+Otherwise, the equal sign
+.Pq Qq =
+should be omitted and the address should be provided by itself without second
+address.
+.It Fl d Ns \&, Ns Fl -down
+The address is down.
+.It Fl t Ns \&, Ns Fl -temporary
+Temporary, not persistent across reboots.
+.El
+.Pp
+.It Xo
+.Nm
+.Ic create-addr
+.Op Fl t
+.Fl T Cm dhcp
+.Op Fl 1
+.Op Fl h Ar hostname
+.Op Fl w Bro Ar seconds Ns | Ns Cm forever Brc
+.Ar addrobj
+.Xc
+Create an address on the specified IP interface using DHCP.
+This takes the following options:
+.Bl -tag -width Ds
+.It Fl 1 Ns \&, Ns Fl -primary
+Specify that the interface is primary.
+One effect will be that
+.Xr nodename 5
+will serve as
+.Fl h Ns \&, Ns Fl -reqhost
+if that switch is not otherwise specified.
+.It Fl h Ns \&, Ns Fl -reqhost
+Specify the host name to send to the DHCP server in order to request an
+association of a Fully Qualified Domain Name to the interface.
+An FQDN is determined from
+.Ar hostname
+if it is "rooted" (ending in a '.'), or if it consists of at least three
+DNS labels, or by appending to
+.Ar hostname
+the DNS domain name value configured in
+.Pa /etc/default/dhcpagent
+for
+.Xr dhcpagent 8 .
+N.b. that the DHCP server implementation ultimately determines whether and
+how the client-sent FQDN is used.
+.It Fl t Ns \&, Ns Fl -temporary
+Temporary, not persistent across reboots.
+.It Fl w Ns \&, Ns Fl -wait
+Specify the time, in seconds, that the command should wait to obtain an
+address; or specify
+.Cm forever
+to wait without interruption.
+The default value is 120.
+.El
+.Pp
+.It Xo
+.Nm
+.Ic create-addr
+.Op Fl t
+.Fl T Cm addrconf
+.Op Fl i Ar interface-id
+.Oo Fl p Bro Cm stateful Ns | Ns Cm stateless Brc Ns = Ns
+.Bro Cm yes Ns | Ns Cm no Brc Oc Ns ...
+.Ar addrobj
+.Xc
+Create an auto-configured address on the specified IP interface.
+This takes the following options:
+.Bl -tag -width Ds
+.It Fl i Ns \&, Ns Fl -interface-id
+Specify the interface ID to be used.
+.It Fl p Ns \&, Ns Fl -prop
+Specify which method of auto-configuration should be used.
+.It Fl t Ns \&, Ns Fl -temporary
+Temporary, not persistent across reboots.
+.El
+.Pp
+.It Xo
+.Nm
+.Ic delete-addr
+.Op Fl r
+.Ar addrobj
+.Xc
+Delete the given address.
+.Bl -tag -width Ds
+.It Fl r Ns \&, Ns Fl -release
+Indicate that the DHCP-assigned address should be released.
+.El
+.Pp
+.It Xo
+.Nm
+.Ic show-addr
+.Op Oo Fl p Oc Fl o Ar field Ns Oo , Ns Ar field Oc Ns ...
+.Op Ar addrobj
+.Xc
+Show the current address properties.
+.Bl -tag -width Ds
+.It Fl o Ns \&, Ns Fl -output
+Select which fields will be shown.
+The field value can be one of the following names:
+.Bl -tag -compact -width "PERSISTENT"
+.It Cm ALL
+Display all fields.
+.It Cm ADDROBJ
+The name of the address.
+.It Cm TYPE
+The type of the address
+.Pq Sy static Ns / Ns Sy dhcp Ns / Ns Sy addrconf .
+.It Cm STATE
+The state of the address.
+It can be one of the following values:
+.Bl -tag -compact -width "inaccessible"
+.It Sy disabled
+see the
+.Nm ipadm Ic disable-addr
+subcommand
+.It Sy down
+see the
+.Nm ipadm Ic down-addr
+subcommand
+.It Sy duplicate
+the address is duplicate
+.It Sy inaccessible
+the interface for this address has failed
+.It Sy ok
+the address is up
+.It Sy tentative
+duplicate address detection in progress
+.El
+.It Cm CURRENT
+A set of single character flags indicating the following:
+.Bl -tag -compact -width "U"
+.It Sy U
+up
+.It Sy u
+unnumbered
+.Pq matches another local address
+.It Sy p
+private, not advertised to routing
+.It Sy t
+temporary IPv6 address
+.It Sy d
+deprecated
+.Pq not used for outgoing packets
+.El
+.It Cm PERSISTENT
+A set of single character flags showing the configuration which will be used
+when the address is enabled.
+.Bl -tag -compact -width "U"
+.It Sy U
+up
+.It Sy p
+private, not advertised to routing
+.It Sy d
+deprecated
+.Pq not used for outgoing packets
+.El
+.It Cm ADDR
+The address.
+.El
+.It Fl p Ns \&, Ns Fl -parsable
+Print the output in a parsable format.
+.El
+.Pp
+.It Xo
+.Nm
+.Ic refresh-addr
+.Op Fl i
+.Ar addrobj
+.Xc
+Extend the lease for
+.Sy DHCP
+addresses.
+It also restarts duplicate address detection for
+.Cm static
+addresses.
+.Bl -tag -width ""
+.It Fl i Ns \&, Ns Fl -inform
+Obtain network configuration from DHCP without taking a lease on the address.
+.El
+.Pp
+.It Xo
+.Nm
+.Ic down-addr
+.Op Fl t
+.Ar addrobj
+.Xc
+Down the address.
+This will stop packets from being sent or received.
+.Bl -tag -width Ds
+.It Fl t Ns \&, Ns Fl -temporary
+Temporary, not persistent across reboots.
+.El
+.Pp
+.It Xo
+.Nm
+.Ic up-addr
+.Op Fl t
+.Ar addrobj
+.Xc
+Up the address.
+This will enable packets to be sent and received.
+.Bl -tag -width Ds
+.It Fl t Ns \&, Ns Fl -temporary
+Temporary, not persistent across reboots.
+.El
+.Pp
+.It Xo
+.Nm
+.Ic disable-addr
+.Op Fl t
+.Ar addrobj
+.Xc
+Disable the address.
+.Bl -tag -width Ds
+.It Fl t Ns \&, Ns Fl -temporary
+Temporary, not persistent across reboots.
+.El
+.Pp
+.It Xo
+.Nm
+.Ic enable-addr
+.Op Fl t
+.Ar addrobj
+.Xc
+Enable the address.
+.Bl -tag -width Ds
+.It Fl t Ns \&, Ns Fl -temporary
+Temporary, not persistent across reboots.
+.El
+.Pp
+.It Xo
+.Nm
+.Ic set-addrprop
+.Op Fl t
+.Fl p Ar prop Ns = Ns Ar value Ns Oo , Ns Ar value Oc Ns ...
+.Ar addrobj
+.Xc
+Set a property's value(s) on the addrobj.
+.Bl -tag -width Ds
+.It Fl p Ns \&, Ns Fl -prop
+Specify the property name and value(s).
+The property name can be one of the following:
+.Bl -tag -compact -width "deprecated"
+.It Cm broadcast
+The broadcast address (read-only).
+.It Cm deprecated
+The address should not be used to send packets but can still receive packets
+.Pq Cm on Ns / Ns Cm off .
+.It Cm prefixlen
+The number of bits in the IPv4 netmask or IPv6 prefix.
+.It Cm primary
+The DHCP primary interface flag (read-only).
+.It Cm private
+The address is not advertised to routing
+.Pq Cm on Ns / Ns Cm off .
+.It Cm reqhost
+The host name to send to the DHCP server in order to request an association
+of the FQDN to the interface.
+For a primary DHCP interface,
+.Xr nodename 5
+is sent if this property is not defined.
+See the
+.Nm
+.Ic create-addr
+.Fl T Cm dhcp
+subcommand for the explanation of how an FQDN is determined.
+.It Cm transmit
+Packets can be transmitted
+.Pq Cm on Ns / Ns Cm off .
+.It Cm zone
+The zone the addrobj is in (temporary-only--use
+.Xr zonecfg 8
+to make persistent).
+.El
+.It Fl t Ns \&, Ns Fl -temporary
+Temporary, not persistent across reboots.
+.El
+.Pp
+.It Xo
+.Nm
+.Ic reset-addrprop
+.Op Fl t
+.Fl p Ar prop
+.Ar addrobj
+.Xc
+Reset the addrobj's property value to the default.
+.Bl -tag -width Ds
+.It Fl p Ns \&, Ns Fl -prop
+Specify the property name.
+See the
+.Nm ipadm Ic set-addrprop
+subcommand for the list of property names.
+.It Fl t Ns \&, Ns Fl -temporary
+Temporary, not persistent across reboots.
+.El
+.Pp
+.It Xo
+.Nm
+.Ic show-addrprop
+.Op Oo Fl c Oc Fl o Ar field Ns Oo , Ns Ar field Oc Ns ...
+.Op Fl p Ar prop Ns Oo , Ns Ar prop Oc Ns ...
+.Op Ar addrobj
+.Xc
+Display the property values for one or all of the addrobjs.
+.Bl -tag -width Ds
+.It Fl c Ns \&, Ns Fl -parsable
+Print the output in a parsable format.
+.It Fl o Ns \&, Ns Fl -output
+Select which fields will be shown.
+The field value can be one of the following names:
+.Bl -tag -compact -width "PERSISTENT"
+.It Cm ALL
+Display all fields.
+.It Cm ADDROBJ
+The name of the addrobj.
+.It Cm PROPERTY
+The name of the property.
+.It Cm PERM
+If the property is readable
+.Pq Qq r
+and/or writable
+.Pq Qq w .
+.It Cm CURRENT
+The value of the property.
+.It Cm PERSISTENT
+The persistent value of the property.
+.It Cm DEFAULT
+The default value of the property.
+.It Cm POSSIBLE
+The possible values for the property.
+.El
+.It Fl p Ns \&, Ns Fl -prop
+Specify which properties to display.
+See the
+.Nm ipadm Ic set-addrprop
+subcommand for the list of property names.
+.El
+.Pp
+.It Xo
+.Nm
+.Ic set-prop
+.Op Fl t
+.Fl p Ar prop Ns Oo Cm + Ns | Ns Cm - Oc Ns = Ns
+.Ar value Ns Oo , Ns Ar value Oc Ns ...
+.Ar protocol
+.Xc
+Set a property's value(s) on the protocol.
+.Bl -tag -width Ds
+.It Fl p Ns \&, Ns Fl -prop
+Specify the property name and value(s).
+The optional
+.Sy + Ns | Ns Sy -
+syntax can be used to add/remove values from the current list of values on the
+property.
+The property name can be one of the following:
+.Bl -tag -compact -width "smallest_nonpriv_port"
+.It Cm congestion_control
+The default congestion-control algorithm to be used for new connections
+.Pq TCP .
+.It Cm ecn
+Explicit congestion control
+.Pq Cm never Ns / Ns Cm passive Ns / Ns Cm active
+.Pq TCP .
+.It Cm extra_priv_ports
+Additional privileged ports
+.Pq SCTP/TCP/UDP .
+.It Cm forwarding
+Packet forwarding
+.Pq Cm on Ns / Ns Cm off .
+.It Cm hoplimit
+The IPv6 hoplimit.
+.It Cm hostmodel
+IP packet handling on multi-homed systems
+.Pq Cm weak Ns / Ns Cm strong Ns / Ns Cm src-priority
+.Pq IPv4/IPv6 .
+.Cm weak
+and
+.Cm strong
+correspond to the model definitions defined in RFC 1122.
+.Cm src-priority
+is a hybrid mode where outbound packets are sent from the interface with the
+packet's source address if possible.
+.It Cm largest_anon_port
+Largest ephemeral port
+.Pq SCTP/TCP/UDP .
+.It Cm max_buf
+Maximum receive or send buffer size
+.Pq ICMP/SCTP/TCP/UDP .
+This also sets the upper limit for the
+.Cm recv_buf
+and
+.Cm send_buf
+properties.
+.It Cm recv_buf
+Default receive buffer size
+.Pq ICMP/SCTP/TCP/UDP .
+The maximum value for this property is controlled by the
+.Cm max_buf
+property.
+.It Cm sack
+Selective acknowledgement
+.Pq Cm active Ns / Ns Cm passive Ns / Ns Cm never
+.Pq TCP .
+.It Cm send_buf
+Default send buffer size
+.Pq ICMP/SCTP/TCP/UDP .
+The maximum value for this property is controlled by the
+.Cm max_buf
+property.
+.It Cm smallest_anon_port
+Smallest ephemeral port
+.Pq SCTP/TCP/UDP .
+.It Cm smallest_nonpriv_port
+Smallest non-privileged port
+.Pq SCTP/TCP/UDP .
+.It Cm ttl
+The IPv4 time-to-live.
+.El
+.It Fl t Ns \&, Ns Fl -temporary
+Temporary, not persistent across reboots.
+.El
+.Pp
+.It Xo
+.Nm
+.Ic reset-prop
+.Op Fl t
+.Fl p Ar prop
+.Ar protocol
+.Xc
+Reset a protocol's property value to the default.
+.Bl -tag -width Ds
+.It Fl p Ns \&, Ns Fl -prop
+Specify the property name.
+See the
+.Nm ipadm Ic set-prop
+subcommand for the list of property names.
+.It Fl t Ns \&, Ns Fl -temporary
+Temporary, not persistent across reboots.
+.El
+.Pp
+.It Xo
+.Nm
+.Ic show-prop
+.Op Oo Fl c Oc Fl o Ar field Ns Oo , Ns Ar field Oc Ns ...
+.Op Fl p Ar prop Ns Oo , Ns Ar prop Oc Ns ...
+.Op Ar protocol
+.Xc
+Display the property values for one or all of the protocols.
+.Bl -tag -width Ds
+.It Fl c Ns \&, Ns Fl -parsable
+Print the output in a parsable format.
+.It Fl o Ns \&, Ns Fl -output
+Select which fields will be shown.
+The field value can be one of the following names:
+.Bl -tag -compact -width "PERSISTENT"
+.It Cm ALL
+Display all fields.
+.It Cm PROTO
+The name of the protocol.
+.It Cm PROPERTY
+The name of the property.
+.It Cm PERM
+If the property is readable
+.Pq Qq r
+and/or writable
+.Pq Qq w .
+.It Cm CURRENT
+The value of the property.
+.It Cm PERSISTENT
+The persistent value of the property.
+.It Cm DEFAULT
+The default value of the property.
+.It Cm POSSIBLE
+The possible values for the property.
+.El
+.It Fl p Ns \&, Ns Fl -prop
+Specify which properties to display.
+See the
+.Nm ipadm Ic set-prop
+subcommand for the list of property names.
+.El
+.El
+.Sh SEE ALSO
+.Xr nodename 5 ,
+.Xr nsswitch.conf 5 ,
+.Xr dhcp 7 ,
+.Xr arp 8 ,
+.Xr cfgadm 8 ,
+.Xr dhcpagent 8 ,
+.Xr dladm 8 ,
+.Xr if_mpadm 8 ,
+.Xr ifconfig 8 ,
+.Xr ndd 8 ,
+.Xr zonecfg 8
diff --git a/usr/src/man/man8/ipdadm.8 b/usr/src/man/man8/ipdadm.8
new file mode 100644
index 0000000000..f24319bacf
--- /dev/null
+++ b/usr/src/man/man8/ipdadm.8
@@ -0,0 +1,226 @@
+'\" te
+.\" Copyright (c) 2012, Joyent, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH IPDADM 8 "Mar 1, 2012"
+.SH NAME
+ipdadm \- administer the Internet packet disturber
+.SH SYNOPSIS
+.LP
+.nf
+\fBipdadm\fR [\fB-z\fR \fIzonename\fR] \fIsubcommand\fR [\fIsubcommand-options\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The ipdadm utility is used to administer the illumos facility for simulating
+pathological networks by induce packet drops, delays, and corruption.
+
+This functionality is only able to the global zone and zones with exclusive
+networking stacks. If this is enabled for the global zone, any zone with a
+shared networking stack will be affected.
+
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB-z\fR
+.ad
+.sp .6
+.RS 4n
+The string of the zonename to control. If this is not specified, the current
+zone is used. For the list subcommand, this option is not supported.
+.RE
+
+.SH SUBCOMMANDS
+.sp
+.LP
+The following subcommands are supported:
+
+.sp
+.ne 2
+.na
+\fBcorrupt\fR \fIpercent\fR
+.ad
+.sp .6
+.RS 4n
+Sets the chance for packets to be corrupted to \fIpercent\fR which must be an
+integer between 0 and 100. Setting \fIpercent\fR to 0 disables packet corruption
+and is equivalent to calling \fBremove\fR \fIcorrupt\fR. When enabled, a random
+byte will have a single bit flipped.
+.sp
+.RE
+
+.sp
+.ne 2
+.na
+\fBdelay\fR \fImicroseconds\fR
+.ad
+.sp .6
+.RS 4n
+Inserts \fImicroseconds\fR of delay between both the transmit and receive of
+each packet. Setting \fImicroseconds\fR to zero is equivalent to calling
+\fBremove\fR \fIdelay\fR.
+.sp
+.RE
+
+.sp
+.ne 2
+.na
+\fBdrop\fR \fIpercent\fR
+.ad
+.sp .6
+.RS 4n
+Sets the chance for packets to be dropped to \fIpercent\fR. \fIpercent\fR must
+be an integer between 0 and 100. Setting \fIpercent\fR to zero is equivalent to
+calling \fBremove\fR \fIdrop\fR.
+.sp
+.RE
+
+.sp
+.ne 2
+.na
+\fBinfo\fR
+.ad
+.sp .6
+.RS 4n
+Prints the current values for packet corruption, packet dropping, and packet
+delay for the zone.
+.sp
+.RE
+
+.sp
+.ne 2
+.na
+\fBlist\fR
+.ad
+.sp .6
+.RS 4n
+Prints out the zonename of each zone that has active (non-zero) packet
+corruption, packet delay, and packet drop.
+.sp
+.RE
+
+.sp
+.ne 2
+.na
+\fBremove\fR \fIcorrupt\fR,\fIdelay\fR,\fIdrop\fR
+.ad
+.sp .6
+.RS 4n
+Disables the requested forms of packet perturbation for the zone. This is
+functionally equivalent to setting the value to zero. One or more of
+\fIcorrupt\fR, \fIdelay\fR, and \fIdrop\fR can be specified as a comma separated
+list.
+.sp
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRViewing zone information
+.sp
+.LP
+The following command illustrates how to obtain information about a specific
+zone while in the global zone.
+
+.sp
+.in +2
+.nf
+# \fBipdadm -z 949860c5-52e2-4f32-965d-02e60e116b72 info\fR
+ipd information for zone 949860c5-52e2-4f32-965d-02e60e116b72:
+ corrupt: 0% chance of packet corruption
+ drop: 0% chance of packet drop
+ delay: 0 microsecond delay per packet
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRRemoving multiple perturbations
+.sp
+.LP
+The following command illustrates the use of the \fBremove\fR subcommand from
+inside of a zone.
+
+.sp
+.in +2
+.nf
+# \fBipdadm remove corrupt,drop\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fREnabling packet drops
+.sp
+.LP
+The following command illustrates the use of the \fBdrop\fR subcommand from the
+global zone.
+
+.sp
+.in +2
+.nf
+# \fBipdadm -z 949860c5-52e2-4f32-965d-02e60e116b72 drop 25\fR
+.fi
+.in -2
+.sp
+
+
+.SH EXIT STATUS
+.sp
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB0\fR
+.ad
+.RS 5n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB1\fR\fR
+.ad
+.RS 5n
+An error occurred.
+.sp
+.sp
+.ne 2
+.na
+\fB\fB2\fR\fR
+.ad
+.RS 5n
+Invalid command line options or arguments were specified.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR zonename (1),
+.BR attributes (7),
+.BR zones (7),
+.BR zoneadm (8)
diff --git a/usr/src/man/man8/ipf.8 b/usr/src/man/man8/ipf.8
new file mode 100644
index 0000000000..d2c04493b6
--- /dev/null
+++ b/usr/src/man/man8/ipf.8
@@ -0,0 +1,554 @@
+'\" te
+.\" To view license terms, attribution, and copyright for IP Filter, the default path is /usr/lib/ipf/IPFILTER.LICENCE. If the Solaris operating environment has been installed anywhere other than the default, modify the given path to access the file at the installed
+.\" location.
+.\" Portions Copyright (c) 2009, Sun Microsystems Inc. All Rights Reserved.
+.\" Portions Copyright (c) 2015, Joyent, Inc.
+.TH IPF 8 "May 17, 2020"
+.SH NAME
+ipf \- alter packet filtering lists for IP packet input and output
+.SH SYNOPSIS
+.nf
+\fBipf\fR [\fB-6AdDEGInoPRrsvVyzZ\fR] [\fB-l\fR block | pass | nomatch]
+ [\fB-T\fR \fIoptionlist\fR] [\fB-F\fR i | o | a | s | S] \fB-f\fR \fIfilename\fR
+ [\fB-f\fR \fIfilename\fR...] [\fIzonename\fR]
+.fi
+
+.SH DESCRIPTION
+The \fBipf\fR utility is part of a suite of commands associated with the
+Solaris IP Filter feature. See \fBipfilter\fR(7).
+.sp
+.LP
+The \fBipf\fR utility opens the filenames listed (treating a hyphen (\fB-\fR)
+as stdin) and parses the file for a set of rules which are to be added or
+removed from the packet filter rule set.
+.sp
+.LP
+If there are no parsing problems, each rule processed by \fBipf\fR is added to
+the kernel's internal lists. Rules are added to the end of the internal lists,
+matching the order in which they appear when given to \fBipf\fR.
+.sp
+.LP
+\fBipf\fR's use is restricted through access to \fB/dev/ipauth\fR,
+\fB/dev/ipl\fR, and \fB/dev/ipstate\fR. The default permissions of these files
+require \fBipf\fR to be run as root for all operations.
+.SS "Enabling Solaris IP Filter Feature"
+Solaris IP Filter is installed with the Solaris operating system. However,
+packet filtering is not enabled by default. Use the following procedure to
+activate the Solaris IP Filter feature.
+.RS +4
+.TP
+1.
+Assume a role that includes the IP Filter Management rights profile (see
+\fBrbac\fR(7)) or become superuser.
+.RE
+.RS +4
+.TP
+2.
+Configure system and services' firewall policies. See \fBsvc.ipfd\fR(8) and
+\fBipf\fR(5).
+.RE
+.RS +4
+.TP
+3.
+(Optional) Create a network address translation (NAT) configuration file.
+See \fBipnat\fR(5).
+.RE
+.RS +4
+.TP
+4.
+(Optional) Create an address pool configuration file. See \fBippool\fR(5).
+.sp
+Create an \fBippool.conf\fR file if you want to refer to a group of addresses as
+a single address pool. If you want the address pool configuration file to be
+loaded at boot time, create a file called \fB/etc/ipf/ippool.conf\fR in which
+to put the address pool. If you do not want the address pool configuration file
+to be loaded at boot time, put the \fBippool.conf\fR file in a location other
+than \fB/etc/ipf\fR and manually activate the rules.
+.RE
+.RS +4
+.TP
+5.
+Enable Solaris IP Filter, as follows:
+.sp
+.in +2
+.nf
+# \fBsvcadm enable network/ipfilter\fR
+.fi
+.in -2
+.sp
+
+.RE
+.sp
+.LP
+To re-enable packet filtering after it has been temporarily disabled either
+reboot the machine or enter the following command:
+.sp
+.in +2
+.nf
+# \fBsvcadm enable network/ipfilter\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+\&...which essentially executes the following \fBipf\fR commands:
+.RS +4
+.TP
+1.
+Enable Solaris IP Filter:
+.sp
+.in +2
+.nf
+# \fBipf -E\fR
+.fi
+.in -2
+.sp
+
+.RE
+.RS +4
+.TP
+2.
+Load \fBippools\fR:
+.sp
+.in +2
+.nf
+\fB# ippool -f\fR \fI<ippool configuration file>\fR
+.fi
+.in -2
+.sp
+
+See \fBippool\fR(8).
+.RE
+.RS +4
+.TP
+3.
+(Optional) Activate packet filtering:
+.sp
+.in +2
+.nf
+\fBipf -f\fR \fI<ipf configuration file>\fR
+.fi
+.in -2
+.sp
+
+.RE
+.RS +4
+.TP
+4.
+(Optional) Activate NAT:
+.sp
+.in +2
+.nf
+\fBipnat -f\fR \fI<IPNAT configuration file>\fR
+.fi
+.in -2
+.sp
+
+See \fBipnat\fR(8).
+.RE
+.LP
+Note -
+.sp
+.RS 2
+If you reboot your system, the IPfilter configuration is automatically
+activated.
+.RE
+.SH OPTIONS
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-6\fR\fR
+.ad
+.sp .6
+.RS 4n
+This option is required to parse IPv6 rules and to have them loaded. Loading of
+IPv6 rules is subject to change in the future.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-A\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set the list to make changes to the active list (default).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-d\fR\fR
+.ad
+.sp .6
+.RS 4n
+Turn debug mode on. Causes a hex dump of filter rules to be generated as it
+processes each one.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-D\fR\fR
+.ad
+.sp .6
+.RS 4n
+Disable the filter (if enabled). Not effective for loadable kernel versions.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-E\fR\fR
+.ad
+.sp .6
+.RS 4n
+Enable the filter (if disabled). Not effective for loadable kernel versions.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-F\fR \fBi\fR | \fBo\fR | \fBa\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies which filter list to flush. The parameter should either be \fBi\fR
+(input), \fBo\fR (output) or \fBa\fR (remove all filter rules). Either a single
+letter or an entire word starting with the appropriate letter can be used. This
+option can be before or after any other, with the order on the command line
+determining that used to execute options.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-F\fR \fBs\fR | \fBS\fR\fR
+.ad
+.sp .6
+.RS 4n
+To flush entries from the state table, use the \fB-F\fR option in conjunction
+with either \fBs\fR (removes state information about any non-fully established
+connections) or \fBS\fR (deletes the entire state table). You can specify only
+one of these two options. A fully established connection will show up in
+\fBipfstat\fR \fB-s\fR output as \fB4/4\fR, with deviations either way
+indicating the connection is not fully established.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR \fIfilename\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies which files \fBipf\fR should use to get input from for modifying the
+packet filter rule lists.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-G\fR\fR
+.ad
+.sp .6
+.RS 4n
+Make changes to the Global Zone-controlled ipfilter for the zone given as an
+argument. See the \fBZONES\fR section for more information.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-I\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set the list to make changes to the inactive list.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR \fBpass\fR | \fBblock\fR | \fBnomatch\fR\fR
+.ad
+.sp .6
+.RS 4n
+Toggles default logging of packets. Valid arguments to this option are
+\fBpass\fR, \fBblock\fR and \fBnomatch\fR. When an option is set, any packet
+which exits filtering and matches the set category is logged. This is most
+useful for causing all packets that do not match any of the loaded rules to be
+logged.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR\fR
+.ad
+.sp .6
+.RS 4n
+Prevents \fBipf\fR from making any ioctl calls or doing anything which would
+alter the currently running kernel.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-o\fR\fR
+.ad
+.sp .6
+.RS 4n
+Force rules by default to be added/deleted to/from the output list, rather than
+the (default) input list.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-P\fR\fR
+.ad
+.sp .6
+.RS 4n
+Add rules as temporary entries in the authentication rule table.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-R\fR\fR
+.ad
+.sp .6
+.RS 4n
+Disable both IP address-to-hostname resolution and port number-to-service name
+resolution.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-r\fR\fR
+.ad
+.sp .6
+.RS 4n
+Remove matching filter rules rather than add them to the internal lists.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR\fR
+.ad
+.sp .6
+.RS 4n
+Swap the currently active filter list to be an alternative list.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-T\fR \fIoptionlist\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allows run-time changing of IPFilter kernel variables. To allow for changing,
+some variables require IPFilter to be in a disabled state (\fB-D\fR), others do
+not. The \fIoptionlist\fR parameter is a comma-separated list of tuning
+commands. A tuning command is one of the following:
+.sp
+.ne 2
+.na
+\fB\fBlist\fR\fR
+.ad
+.sp .6
+.RS 4n
+Retrieve a list of all variables in the kernel, their maximum, minimum, and
+current value.
+.RE
+
+.sp
+.ne 2
+.na
+\fBsingle variable name\fR
+.ad
+.sp .6
+.RS 4n
+Retrieve its current value.
+.RE
+
+.sp
+.ne 2
+.na
+\fBvariable name with a following assignment\fR
+.ad
+.sp .6
+.RS 4n
+To set a new value.
+.RE
+
+Examples follow:
+.sp
+.in +2
+.nf
+# Print out all IPFilter kernel tunable parameters
+ipf -T list
+
+# Display the current TCP idle timeout and then set it to 3600
+ipf -D -T fr_tcpidletimeout,fr_tcpidletimeout=3600 -E
+
+# Display current values for fr_pass and fr_chksrc, then set
+# fr_chksrc to 1.
+ipf -T fr_pass,fr_chksrc,fr_chksrc=1
+.fi
+.in -2
+.sp
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.sp .6
+.RS 4n
+Turn verbose mode on. Displays information relating to rule processing.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-V\fR\fR
+.ad
+.sp .6
+.RS 4n
+Show version information. This will display the version information compiled
+into the \fBipf\fR binary and retrieve it from the kernel code (if running or
+present). If it is present in the kernel, information about its current state
+will be displayed; for example, whether logging is active, default filtering,
+and so forth).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-y\fR\fR
+.ad
+.sp .6
+.RS 4n
+Manually resync the in-kernel interface list maintained by IP Filter with the
+current interface status list.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-z\fR\fR
+.ad
+.sp .6
+.RS 4n
+For each rule in the input file, reset the statistics for it to zero and
+display the statistics prior to them being zeroed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-Z\fR\fR
+.ad
+.sp .6
+.RS 4n
+Zero global statistics held in the kernel for filtering only. This does not
+affect fragment or state statistics.
+.RE
+
+.SH ZONES
+Each non-global zone has two ipfilter instances: the in-zone ipfilter, which
+can be controlled from both the zone itself and the global zone, and the
+Global Zone-controlled (GZ-controlled) instance, which can only be controlled
+from the Global Zone. The non-global zone is not able to observe or control
+the GZ-controlled ipfilter.
+
+ipf optionally takes a zone name as an argument, which will change the
+ipfilter settings for that zone, rather than the current one. The zonename
+option is only available in the Global Zone. Using it in any other zone will
+return an error. If the \fB-G\fR option is specified with this argument, the
+Global Zone-controlled ipfilter is operated on. If \fB-G\fR is not specified,
+the in-zone ipfilter is operated on. Note that ipf differs from the other
+ipfilter tools in how the zone name is specified. It takes the zone name as the
+last argument, while all of the other tools take the zone name as an argument
+to the \fB-G\fR and \fB-z\fR options.
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/dev/ipauth\fR\fR
+.ad
+.br
+.na
+\fB\fB/dev/ipl\fR\fR
+.ad
+.br
+.na
+\fB\fB/dev/ipstate\fR\fR
+.ad
+.sp .6
+.RS 4n
+Links to IP Filter pseudo devices.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/ipf/ipf.conf\fR\fR
+.ad
+.sp .6
+.RS 4n
+Location of \fBipf\fR startup configuration file. See \fBipf\fR(5).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/share/ipfilter/examples/\fR\fR
+.ad
+.sp .6
+.RS 4n
+Contains numerous IP Filter examples.
+.RE
+
+.SH ATTRIBUTES
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Committed
+.TE
+
+.SH SEE ALSO
+.BR ipf (5),
+.BR ipnat (5),
+.BR ippool (5),
+.BR attributes (7),
+.BR ipfilter (7),
+.BR zones (7),
+.BR ipfstat (8),
+.BR ipmon (8),
+.BR ipnat (8),
+.BR ippool (8),
+.BR svc.ipfd (8),
+.BR svcadm (8)
+.sp
+.LP
+\fI\fR
+.SH DIAGNOSTICS
+Needs to be run as root for the packet filtering lists to actually be affected
+inside the kernel.
diff --git a/usr/src/man/man8/ipfs.8 b/usr/src/man/man8/ipfs.8
new file mode 100644
index 0000000000..52e9ce6d08
--- /dev/null
+++ b/usr/src/man/man8/ipfs.8
@@ -0,0 +1,249 @@
+'\" te
+.\" To view license terms, attribution, and copyright for IP Filter, the default path is /usr/lib/ipf/IPFILTER.LICENCE. If the Solaris operating environment has been installed anywhere other than the default, modify the given path to access the file at the installed
+.\" location.
+.\" Portions Copyright (c) 2008, Sun Microsystems Inc. All Rights Reserved.
+.\" Portions Copyright (c) 2013, Joyent, Inc. All Rights Reserved.
+.TH IPFS 8 "Oct 30, 2013"
+.SH NAME
+ipfs \- saves and restores information for NAT and state tables
+.SH SYNOPSIS
+.LP
+.nf
+\fBipfs\fR [\fB-G\fR | \fB-z\fR \fIzonename\fR] [\fB-nv\fR] \fB-l\fR
+.fi
+
+.LP
+.nf
+\fBipfs\fR [\fB-G\fR | \fB-z\fR \fIzonename\fR] [\fB-nv\fR] \fB-u\fR
+.fi
+
+.LP
+.nf
+\fBipfs\fR [\fB-G\fR | \fB-z\fR \fIzonename\fR] [\fB-nv\fR] [\fB-d\fR \fIdirname\fR] \fB-R\fR
+.fi
+
+.LP
+.nf
+\fBipfs\fR [\fB-G\fR | \fB-z\fR \fIzonename\fR] [\fB-nv\fR] [\fB-d\fR \fIdirname\fR] \fB-W\fR
+.fi
+
+.LP
+.nf
+\fBipfs\fR [\fB-G\fR | \fB-z\fR \fIzonename\fR] [\fB-nNSv\fR] [\fB-f\fR \fIfilename\fR] \fB-r\fR
+.fi
+
+.LP
+.nf
+\fBipfs\fR [\fB-G\fR | \fB-z\fR \fIzonename\fR] [\fB-nNSv\fR] [\fB-f\fR \fIfilename\fR] \fB-w\fR
+.fi
+
+.LP
+.nf
+\fBipfs\fR [\fB-G\fR | \fB-z\fR \fIzonename\fR] [\fB-nNSv\fR] \fB-f\fR \fIfilename\fR \fB-i\fR \fI<if1>\fR,\fI<if2>\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBipfs\fR utility enables the saving of state information across reboots.
+Specifically, the utility allows state information created for NAT entries and
+rules using "keep state" to be locked (modification prevented) and then saved
+to disk. Then, after a reboot, that information is restored. The result of this
+state-saving is that connections are not interrupted.
+.SH OPTIONS
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-d\fR\fR
+.ad
+.RS 6n
+Change the default directory used with \fB-R\fR and \fB-W\fR options for saving
+state information.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR\fR
+.ad
+.RS 6n
+Do not take any action that would affect information stored in the kernel or on
+disk.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.RS 6n
+Provides a verbose description of \fBipfs\fR activities.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-N\fR\fR
+.ad
+.RS 6n
+Operate on NAT information.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-S\fR\fR
+.ad
+.RS 6n
+Operate on filtering state information.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-u\fR\fR
+.ad
+.RS 6n
+Unlock state tables in the kernel.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR\fR
+.ad
+.RS 6n
+Lock state tables in the kernel.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-r\fR\fR
+.ad
+.RS 6n
+Read information in from the specified file and load it into the kernel. This
+requires the state tables to have already been locked and does not change the
+lock once complete.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-w\fR\fR
+.ad
+.RS 6n
+Write information out to the specified file and from the kernel. This requires
+the state tables to have already been locked and does not change the lock once
+complete.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-R\fR\fR
+.ad
+.RS 6n
+Restores all saved state information, if any, from two files, \fBipstate.ipf\fR
+and \fBipnat.ipf\fR, stored in the \fB/var/db/ipf\fR directory. This directory
+can be changed with the \fB-d\fR option. The state tables are locked at the
+beginning of this operation and unlocked once complete.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-W\fR\fR
+.ad
+.RS 6n
+Saves in-kernel state information, if any, out to two files, \fBipstate.ipf\fR
+and \fBipnat.ipf\fR, stored in the \fB/var/db/ipf\fR directory. This directory
+can be changed with the \fB-d\fR option. The state tables are locked at the
+beginning of this operation and unlocked once complete.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-z\fR \fIzonename\fR\fR
+.ad
+.RS 6n
+Operate on the in-zone state information for the specified zone. If neither
+this option nor \fB-G\fR is specified, the current zone is used. This command
+is only available in the Global Zone. See \fBZONES\fR in \fBipf\fR(8) for
+more information.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-G\fR \fIzonename\fR\fR
+.ad
+.RS 6n
+Operate on the global zone controlled state information for the specified
+zone. If neither this option nor \fB-z\fR is specified, the current zone is
+used. This command is only available in the Global Zone. See \fBZONES\fR in
+\fBipf\fR(8) for more information.
+.RE
+
+.SH FILES
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fB/var/db/ipf/ipstate.ipf\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fB/var/db/ipf/ipnat.ipf\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fB/dev/ipl\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fB/dev/ipstate\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fB/dev/ipnat\fR
+.RE
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Committed
+.TE
+
+.SH SEE ALSO
+.LP
+.BR attributes (7),
+.BR zones (7),
+.BR ipf (8),
+.BR ipmon (8),
+.BR ipnat (8)
+.SH DIAGNOSTICS
+.LP
+Arguably, the \fB-W\fR and \fB-R\fR operations should set the locking and,
+rather than undo it, restore it to what it was previously.
+.sp
+.LP
+Fragment table information is currently not saved.
diff --git a/usr/src/man/man8/ipfstat.8 b/usr/src/man/man8/ipfstat.8
new file mode 100644
index 0000000000..36c77c6e94
--- /dev/null
+++ b/usr/src/man/man8/ipfstat.8
@@ -0,0 +1,427 @@
+'\" te
+.\" To view license terms, attribution, and copyright for IP Filter, the default path is /usr/lib/ipf/IPFILTER.LICENCE. If the Solaris operating environment has been installed anywhere other than the default, modify the given path to access the file at the installed
+.\" location.
+.\" Portions Copyright (c) 2008, Sun Microsystems Inc. All Rights Reserved.
+.\" Portions Copyright (c) 2013, Joyent, Inc. All Rights Reserved.
+.TH IPFSTAT 8 "Oct 30, 2013"
+.SH NAME
+ipfstat \- reports on packet filter statistics and filter list
+.SH SYNOPSIS
+.LP
+.nf
+\fBipfstat\fR [\fB-6aACdfghIilnoRstv\fR]
+.fi
+
+.LP
+.nf
+\fBipfstat\fR [\fB-C\fR] [\fB-D\fR \fIaddrport\fR] [\fB-P\fR \fIprotocol\fR] [\fB-S\fR \fIaddrport\fR]
+ [\fB-T\fR \fIrefreshtime\fR] [\fB-G\fR | \fB-z\fR \fIzonename\fR]
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBipfstat\fR command is part of a suite of commands associated with the
+Solaris IP Filter feature. See \fBipfilter\fR(7).
+.sp
+.LP
+The \fBipfstat\fR command examines \fB/dev/kmem\fR using the symbols
+\fB_fr_flags\fR, \fB_frstats\fR, \fB_filterin\fR, and \fB_filterout\fR. To run
+and work, it needs to be able to read both \fB/dev/kmem\fR and the kernel
+itself.
+.sp
+.LP
+The default behavior of \fBipfstat\fR is to retrieve and display the statistics
+which have been accumulated over time as the kernel has put packets through the
+filter.
+.sp
+.LP
+The role of \fBipfstat\fR is to display current kernel statistics gathered as a
+result of applying the filters in place (if any) to packets going in and out of
+the kernel. This is the default operation when no command line parameters are
+present. When supplied with either \fB-i\fR or \fB-o\fR, \fBipfstat\fR will
+retrieve and display the appropriate list of filter rules currently installed
+and in use by the kernel.
+.sp
+.LP
+\fBipfstat\fR uses kernel device files to obtain information. The default
+permissions of these files require \fBipfstat\fR to be run as root for all
+operations.
+.sp
+.LP
+The \fBipfstat\fR command supports the \fBkstat\fR(3KSTAT) kernel facility.
+Because of this support, as an alternative to \fBipfstat\fR, you can use
+\fBkstat\fR(8). For example:
+.sp
+.LP
+# kstat \(hym ipf
+.sp
+.LP
+Using the \fBipfstat\fR \fB-t\fR option causes \fBipfstat\fR to enter the state
+top mode. In this mode the state table is displayed similarly to the way the
+Unix \fBtop\fR utility displays the process table. The \fB-C\fR, \fB-D\fR,
+\fB-P\fR, \fB-S\fR and \fB-T\fR command line options can be used to restrict
+the state entries that will be shown and to specify the frequency of display
+updates.
+.sp
+.LP
+In state top mode, use the following keys to influence the displayed
+information:
+.sp
+.ne 2
+.na
+\fB\fBd\fR\fR
+.ad
+.RS 5n
+Select information to display.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBl\fR\fR
+.ad
+.RS 5n
+Redraw the screen.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBq\fR\fR
+.ad
+.RS 5n
+Quit the program.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBs\fR\fR
+.ad
+.RS 5n
+Switch between different sorting criteria.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBr\fR\fR
+.ad
+.RS 5n
+Reverse the sorting criteria.
+.RE
+
+.sp
+.LP
+States can be sorted by protocol number, by number of IP packets, by number of
+bytes, and by time-to-live of the state entry. The default is to sort by the
+number of bytes. States are sorted in descending order, but you can use the
+\fBr\fR key to sort them in ascending order.
+.sp
+.LP
+It is not possible to interactively change the source, destination, and
+protocol filters or the refresh frequency. This must be done from the command
+line.
+.sp
+.LP
+The screen must have at least 80 columns for correct display. However,
+\fBipfstat\fR does not check the screen width.
+.sp
+.LP
+Only the first \fIX\fR-5 entries that match the sort and filter criteria are
+displayed (where \fIX\fR is the number of rows on the display). There is no way
+to see additional entries.
+.SH OPTIONS
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-6\fR\fR
+.ad
+.RS 18n
+Display filter lists and states for IPv6, if available. This option might
+change in the future.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-a\fR\fR
+.ad
+.RS 18n
+Display the accounting filter list and show bytes counted against each rule.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-A\fR\fR
+.ad
+.RS 18n
+Display packet authentication statistics.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-C\fR\fR
+.ad
+.RS 18n
+Valid only in combination with \fB-t\fR. Display "closed" states as well in the
+top. Normally, a TCP connection is not displayed when it reaches the
+\fBCLOSE_WAIT\fR protocol state. With this option enabled, all state entries
+are displayed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-d\fR\fR
+.ad
+.RS 18n
+Produce debugging output when displaying data.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-D\fR \fIaddrport\fR\fR
+.ad
+.RS 18n
+Valid only in combination with \fB-t\fR. Limit the state top display to show
+only state entries whose destination IP address and port match the
+\fIaddrport\fR argument. The \fIaddrport\fR specification is of the form
+\fIipaddress\fR[,\fIport\fR]. The \fIipaddress\fR and \fIport\fR should be
+either numerical or the string \fBany\fR (specifying any IP address and any
+port, in that order). If the \fB-D\fR option is not specified, it defaults to
+\fB-D\fR \fBany,any\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR\fR
+.ad
+.RS 18n
+Show fragment state information (statistics) and held state information (in the
+kernel) if any is present.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-g\fR\fR
+.ad
+.RS 18n
+Show groups currently configured (both active and inactive).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-h\fR\fR
+.ad
+.RS 18n
+Show per-rule the number of times each one scores a "hit". For use in
+combination with \fB-i\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-i\fR\fR
+.ad
+.RS 18n
+Display the filter list used for the input side of the kernel IP processing.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-I\fR\fR
+.ad
+.RS 18n
+Swap between retrieving \fBinactive\fR/\fBactive\fR filter list details. For
+use in combination with \fB-i\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR\fR
+.ad
+.RS 18n
+When used with \fB-s\fR, show a list of active state entries (no statistics).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR\fR
+.ad
+.RS 18n
+Show the rule number for each rule as it is printed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-o\fR\fR
+.ad
+.RS 18n
+Display the filter list used for the output side of the kernel IP processing.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-P\fR \fIprotocol\fR\fR
+.ad
+.RS 18n
+Valid only in combination with \fB-t\fR. Limit the state top display to show
+only state entries that match a specific protocol. The argument can be a
+protocol name (as defined in \fB/etc/protocols\fR) or a protocol number. If
+this option is not specified, state entries for any protocol are specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-R\fR\fR
+.ad
+.RS 18n
+Disable both IP address-to-hostname resolution and port number-to-service name
+resolution.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-S\fR \fIaddrport\fR\fR
+.ad
+.RS 18n
+Valid only in combination with \fB-t\fR. Limit the state top display to show
+only state entries whose source IP address and port match the \fIaddrport\fR
+argument. The \fIaddrport\fR specification is of the form
+\fIipaddress\fR[,\fIport\fR]. The \fIipaddress\fR and \fIport\fR should be
+either numerical or the string \fBany\fR (specifying any IP address and any
+port, in that order). If the \fB-S\fR option is not specified, it defaults to
+\fB-S\fR \fBany,any\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR\fR
+.ad
+.RS 18n
+Show packet/flow state information (statistics only).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-T\fR \fIrefreshtime\fR\fR
+.ad
+.RS 18n
+Valid only in combination with \fB-t\fR. Specifies how often the state
+\fBtop\fR display should be updated. The refresh time is the number of seconds
+between an update. Any positive integer can be used. The default (and minimal
+update time) is 1.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-t\fR\fR
+.ad
+.RS 18n
+Show the state table in a way similar to the way the Unix utility, \fBtop\fR,
+shows the process table. States can be sorted in a number of different ways.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.RS 18n
+Turn verbose mode on. Displays additional debugging information.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-z\fR \fIzonename\fR\fR
+.ad
+.RS 18n
+Report the in-zone statistics for the specified zone. If neither this option
+nor \fB-G\fR is specified, the current zone is used. This command is only
+available in the Global Zone. See \fBZONES\fR in \fBipf\fR(8) for more
+information.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-G\fR \fIzonename\fR\fR
+.ad
+.RS 18n
+Report the global zone controlled statistics for the specified zone. If
+neither this option nor \fB-z\fR is specified, the current zone is used. This
+command is only available in the Global Zone. See \fBZONES\fR in \fBipf\fR(8)
+for more information.
+.RE
+
+.SH FILES
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fB/dev/kmem\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fB/dev/ksyms\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fB/dev/ipl\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fB/dev/ipstate\fR
+.RE
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Committed
+.TE
+
+.SH SEE ALSO
+.LP
+.BR kstat (3KSTAT),
+.BR attributes (7),
+.BR ipfilter (7),
+.BR zones (7),
+.BR ipf (8),
+.BR kstat (8)
+.sp
+.LP
+\fI\fR
diff --git a/usr/src/man/man8/ipmon.8 b/usr/src/man/man8/ipmon.8
new file mode 100644
index 0000000000..dd33ae09a4
--- /dev/null
+++ b/usr/src/man/man8/ipmon.8
@@ -0,0 +1,420 @@
+'\" te
+.\" To view license terms, attribution, and copyright for IP Filter, the default path is /usr/lib/ipf/IPFILTER.LICENCE. If the Solaris operating environment has been installed anywhere other than the default, modify the given path to access the file at the installed
+.\" location.
+.\" Portions Copyright (c) 2008, Sun Microsystems Inc. All Rights Reserved.
+.\" Portions Copyright (c) 2013, Joyent, Inc. All Rights Reserved.
+.TH IPMON 8 "Oct 30, 2013"
+.SH NAME
+ipmon \- monitors /dev/ipl for logged packets
+.SH SYNOPSIS
+.LP
+.nf
+\fBipmon\fR [\fB-abDFhnpstvxX\fR] [\fB-N\fR \fIdevice\fR] [ [o] [NSI]] [\fB-O\fR [NSI]]
+ [\fB-P\fR \fIpidfile\fR] [\fB-S\fR \fIdevice\fR] [\fB-f\fR \fIdevice\fR] [\fB-G\fR | \fB-z\fR \fIzonename\fR] [\fIfilename\fR]
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBipmon\fR command is part of a suite of commands associated with the
+Solaris IP Filter feature. See \fBipfilter\fR(7).
+.sp
+.LP
+The \fBipmon\fR command opens \fB/dev/ipl\fR for reading and awaits data to be
+saved from the packet filter. The binary data read from the device is reprinted
+in human readable form. However, IP addresses are not mapped back to hostnames,
+nor are ports mapped back to service names. The output goes to standard output,
+by default, or a filename, if specified on the command line. Should the
+\fB-s\fR option be used, output is sent instead to \fBsyslogd\fR(8). Messages
+sent by means of \fBsyslog\fR have the day, month, and year removed from the
+message, but the time (including microseconds), as recorded in the log, is
+still included.
+.sp
+.LP
+Messages generated by \fBipmon\fR consist of whitespace-separated fields.
+Fields common to all messages are:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The date of packet receipt. This is suppressed when the message is sent to
+\fBsyslog\fR.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The time of packet receipt. This is in the form
+\fIHH\fR:\fIMM\fR:\fISS\fR.\fIF\fR, for hours, minutes, seconds, and fractions
+of a second (which can be several digits long).
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The name of the interface on which the packet was processed, for example,
+\fBib1\fR.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The group and rule number of the rule, for example, \fB@0:17\fR. These can be
+viewed with \fBipfstat\fR \fB-in\fR for input rules or \fBipfstat\fR \fB-in\fR
+for output rules. See \fBipfstat\fR(8).
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The action: \fBp\fR for passed, \fBb\fR for blocked, \fBs\fR for a short
+packet, \fBn\fR did not match any rules, or \fBL\fR for a log rule.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The addresses. This is actually three fields: the source address and port
+(separated by a comma), the symbol \(->, and the destination address and port.
+For example: \fB209.53.17.22,80 \(-> 198.73.220.17,1722\fR.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBPR\fR followed by the protocol name or number, for example, \fBPR tcp\fR.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBlen\fR followed by the header length and total length of the packet, for
+example, \fBlen 20 40\fR.
+.RE
+.sp
+.LP
+If the packet is a TCP packet, there will be an additional field starting with
+a hyphen followed by letters corresponding to any flags that were set. See
+\fBipf.conf\fR(5) for a list of letters and their flags.
+.sp
+.LP
+If the packet is an ICMP packet, there will be two fields at the end, the first
+always being \fBicmp\fR, the next being the ICMP message and submessage type,
+separated by a slash. For example, \fBicmp 3/3\fR for a port unreachable
+message.
+.SH OPTIONS
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-a\fR\fR
+.ad
+.sp .6
+.RS 4n
+Open all of the device logfiles for reading log entries. All entries are
+displayed to the same output device (stderr or syslog).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-b\fR\fR
+.ad
+.sp .6
+.RS 4n
+For rules which log the body of a packet, generate hex output representing the
+packet contents after the headers.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-D\fR\fR
+.ad
+.sp .6
+.RS 4n
+Cause \fBipmon\fR to turn itself into a daemon. Using subshells or
+backgrounding of \fBipmon\fR is not required to turn it into an orphan so it
+can run indefinitely.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR \fIdevice\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify an alternative device/file from which to read the log information for
+normal IP Filter log records.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-F\fR\fR
+.ad
+.sp .6
+.RS 4n
+Flush the current packet log buffer. The number of bytes flushed is displayed,
+even if the result is zero.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-h\fR\fR
+.ad
+.sp .6
+.RS 4n
+Displays usage information.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR\fR
+.ad
+.sp .6
+.RS 4n
+IP addresses and port numbers will be mapped, where possible, back into
+hostnames and service names.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-N\fR \fIdevice\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set the logfile to be opened for reading NAT log records from or to
+\fIdevice\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-o\fR \fIletter\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify which log files from which to actually read data. \fBN\fR, NAT logfile;
+\fBS\fR, state logfile; \fBI\fR, normal IP Filter logfile. The \fB-a\fR option
+is equivalent to using \fB-o\fR \fBNSI\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-O\fR \fIletter\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify which log files you do not wish to read from. This is most commonly
+used in conjunction with the \fB-a\fR. Letters available as parameters are the
+same as for \fB-o\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR\fR
+.ad
+.sp .6
+.RS 4n
+Cause the port number in log messages always to be printed as a number and
+never attempt to look it up.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-P\fR \fIpidfile\fR\fR
+.ad
+.sp .6
+.RS 4n
+Write the PD of the \fBipmon\fR process to a file. By default this is
+\fB/var/run/ipmon.pid\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR\fR
+.ad
+.sp .6
+.RS 4n
+Packet information read in will be sent through \fBsyslogd\fR rather than saved
+to a file. The default facility when compiled and installed is \fBlocal0\fR.
+The following levels are used:
+.sp
+.ne 2
+.na
+\fB\fBLOG_INFO\fR\fR
+.ad
+.sp .6
+.RS 4n
+Packets logged using the \fBlog\fR keyword as the action rather than \fBpass\fR
+or \fBblock\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBLOG_NOTICE\fR\fR
+.ad
+.sp .6
+.RS 4n
+Packets logged that are also passed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBLOG_WARNING\fR\fR
+.ad
+.sp .6
+.RS 4n
+Packets logged that are also blocked.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBLOG_ERR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Packets that have been logged and that can be considered "short".
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-S\fR \fIdevice\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set the logfile to be opened for reading state log records from or to
+\fIdevice\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-t\fR\fR
+.ad
+.sp .6
+.RS 4n
+Read the input file/device in the way performed by \fBtail\fR(1).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.sp .6
+.RS 4n
+Show TCP \fBwindow\fR, \fBack\fR, and \fBsequence\fR fields
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-x\fR\fR
+.ad
+.sp .6
+.RS 4n
+Show the packet data in hex.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-X\fR\fR
+.ad
+.sp .6
+.RS 4n
+Show the log header record data in hex.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-z\fR \fIzonename\fR\fR
+.ad
+.sp .6
+.RS 4n
+Monitor packets the specified zone's in-zone filter. If neither this option
+nor \fB-G\fR is specified, the current zone is used. This command is only
+available in the Global Zone. See \fBZONES\fR in \fBipf\fR(8) for more
+information.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-G\fR \fIzonename\fR\fR
+.ad
+.sp .6
+.RS 4n
+Monitor packets for the specified zone's global zone controlled filter. If
+neither this option nor \fB-z\fR is specified, the current zone is used. This
+command is only available in the Global Zone. See \fBZONES\fR in \fBipf\fR(8)
+for more information.
+.RE
+
+.SH FILES
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fB/dev/ipl\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fB/dev/ipnat\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fB/dev/ipstate\fR
+.RE
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Committed
+.TE
+
+.SH SEE ALSO
+.LP
+.BR attributes (7),
+.BR ipfilter (7),
+.BR zones (7),
+.BR ipf (8),
+.BR ipfstat (8),
+.BR ipnat (8)
+.sp
+.LP
+\fI\fR
+.SH DIAGNOSTICS
+.LP
+\fBipmon\fR expects data that it reads to be consistent with how it should be
+saved and aborts if it fails an assertion which detects an anomaly in the
+recorded data.
diff --git a/usr/src/man/man8/ipmpstat.8 b/usr/src/man/man8/ipmpstat.8
new file mode 100644
index 0000000000..980f75a6fb
--- /dev/null
+++ b/usr/src/man/man8/ipmpstat.8
@@ -0,0 +1,858 @@
+'\" te
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH IPMPSTAT 8 "April 9, 2016"
+.SH NAME
+ipmpstat \- display IPMP subsystem status
+.SH SYNOPSIS
+.LP
+.nf
+\fBipmpstat\fR [\fB-n\fR] [\fB-o\fR \fIfield\fR[,...] [\fB-P\fR]] \fB-a\fR|\fB-g\fR|\fB-i\fR|\fB-p\fR|\fB-t\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBipmpstat\fR command concisely displays information about the IPMP
+subsystem. It supports five different output modes, each of which provides a
+different view of the IPMP subsystem (address, group, interface, probe, and
+target), described below. At most one output mode may be specified per
+invocation, and the displayed information is guaranteed to be self-consistent.
+It also provides a parsable output format which may be used by scripts to
+examine the state of the IPMP subsystem. Only basic privileges are needed to
+invoke \fBipmpstat\fR, with the exception of probe mode which requires all
+privileges.
+.SH OPTIONS
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-a\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display IPMP data address information ("address" output mode).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-g\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display IPMP group information ("group" output mode).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-i\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display IP interface information ("interface" output mode).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display IP addresses numerically, rather than attempting to resolve them to
+hostnames. This option may be used in any output mode.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-o\fR \fIfield\fR[,...]\fR
+.ad
+.sp .6
+.RS 4n
+Display only the specified output fields, in order. The list of field names is
+case-insensitive and comma-separated. The field names that are supported depend
+on the selected output mode, described below. The special field name \fBall\fR
+may be used to display all fields for a given output mode.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display IPMP probe information ("probe" output mode).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-t\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display IPMP target information ("target" output mode).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-P\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display using a machine-parsable format, described below. If this option is
+specified, an explicit list of fields must be specified using the \fB-o\fR
+option.
+.RE
+
+.SH OUTPUT MODES
+.LP
+The \fBipmpstat\fR utility supports the output modes listed below. Note that
+these modes map to some of the options described above.
+.sp
+.ne 2
+.na
+\fBAddress Mode\fR
+.ad
+.sp .6
+.RS 4n
+Address mode displays the state of all IPMP data addresses on the system. The
+following output fields are supported:
+.sp
+.ne 2
+.na
+\fB\fBADDRESS\fR\fR
+.ad
+.sp .6
+.RS 4n
+The hostname (or IP address) associated with the information. Note that because
+duplicate down addresses may exist, the address must be taken together with the
+\fBGROUP\fR to form a unique identity. For a given IPMP group, if duplicate
+addresses exist, at most one will be displayed, and an up address will always
+take precedence.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSTATE\fR\fR
+.ad
+.sp .6
+.RS 4n
+The state of the address. Either \fBup\fR if the address is \fBIFF_UP\fR (see
+\fBifconfig\fR(8)), or \fBdown\fR if the address is not \fBIFF_UP\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBGROUP\fR\fR
+.ad
+.sp .6
+.RS 4n
+The IPMP IP interface hosting the address.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBINBOUND\fR\fR
+.ad
+.sp .6
+.RS 4n
+The underlying IP interface that will receive packets for this address. This
+may change in response to external events such as IP interface failure. If this
+field is empty, then the system will not accept IP packets sent to this address
+(for example, because the address is down or because there are no active IP
+interfaces left in the IPMP group).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBOUTBOUND\fR\fR
+.ad
+.sp .6
+.RS 4n
+The underlying IP interfaces that will send packets using this source address.
+This may change in response to external events such as IP interface failure. If
+this field is empty, then the system will not send packets with this address as
+a source (for example, because the address is down or because there are no
+active IP interfaces left in the IPMP group).
+.RE
+
+If \fB-o\fR is not specified, all output fields are displayed.
+.RE
+
+.sp
+.ne 2
+.na
+\fBGroup Mode\fR
+.ad
+.sp .6
+.RS 4n
+Group mode displays the state of all IPMP groups on the system. The following
+output fields are supported:
+.sp
+.ne 2
+.na
+\fB\fBGROUP\fR\fR
+.ad
+.sp .6
+.RS 4n
+The IPMP IP interface name associated with the information. For the anonymous
+group (see \fBin.mpathd\fR(8)), this field will be empty.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBGROUPNAME\fR\fR
+.ad
+.sp .6
+.RS 4n
+The IPMP group name. For the anonymous group, this field will be empty.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSTATE\fR\fR
+.ad
+.sp .6
+.RS 4n
+The state of the group:
+.sp
+.ne 2
+.na
+\fB\fBok\fR\fR
+.ad
+.RS 12n
+All interfaces in the group are usable.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdegraded\fR\fR
+.ad
+.RS 12n
+Some (but not all) interfaces in the group are usable.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfailed\fR\fR
+.ad
+.RS 12n
+No interfaces in the group are usable.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBFDT\fR\fR
+.ad
+.sp .6
+.RS 4n
+The probe-based failure detection time. If probe-based failure detection is
+disabled, this field will be empty.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBINTERFACES\fR\fR
+.ad
+.sp .6
+.RS 4n
+The list of underlying IP interfaces in the group. The list is divided into
+three parts:
+.RS +4
+.TP
+1.
+Active interfaces are listed first and not enclosed in any brackets or
+parenthesis. Active interfaces are those being used by the system to send or
+receive data traffic.
+.RE
+.RS +4
+.TP
+2.
+\fBINACTIVE\fR interfaces are listed next and enclosed in parenthesis.
+\fBINACTIVE\fR interfaces are those that are functioning, but not being used
+according to administrative policy.
+.RE
+.RS +4
+.TP
+3.
+Unusable interfaces are listed last and enclosed in brackets. Unusable
+interfaces are those that cannot be used at all in their present configuration
+(for example, \fBFAILED\fR or \fBOFFLINE\fR).
+.RE
+.RE
+
+If \fB-o\fR is not specified, all output fields are displayed.
+.RE
+
+.sp
+.ne 2
+.na
+\fBInterface Mode\fR
+.ad
+.sp .6
+.RS 4n
+Interface mode displays the state of all IP interfaces that are tracked by
+\fBin.mpathd\fR on the system. The following output fields are supported:
+.sp
+.ne 2
+.na
+\fB\fBINTERFACE\fR\fR
+.ad
+.sp .6
+.RS 4n
+The IP interface name associated with the information.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBACTIVE\fR\fR
+.ad
+.sp .6
+.RS 4n
+Either \fByes\fR or \fBno\fR, depending on whether the IP interface is being
+used by the system for IP data traffic.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBGROUP\fR\fR
+.ad
+.sp .6
+.RS 4n
+The IPMP IP interface associated with the IP interface. For IP interfaces in
+the anonymous group (see \fBin.mpathd\fR(8)), this field will be empty.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBFLAGS\fR\fR
+.ad
+.sp .6
+.RS 4n
+Assorted information about the IP interface:
+.sp
+.ne 2
+.na
+\fB\fBi\fR\fR
+.ad
+.RS 5n
+Unusable due to being \fBINACTIVE\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBs\fR\fR
+.ad
+.RS 5n
+Marked \fBSTANDBY\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBm\fR\fR
+.ad
+.RS 5n
+Nominated to send/receive IPv4 multicast for its IPMP group.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBb\fR\fR
+.ad
+.RS 5n
+Nominated to send/receive IPv4 broadcast for its IPMP group.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBM\fR\fR
+.ad
+.RS 5n
+Nominated to send/receive IPv6 multicast for its IPMP group.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBd\fR\fR
+.ad
+.RS 5n
+Unusable due to being \fBdown\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBh\fR\fR
+.ad
+.RS 5n
+Unusable due to being brought \fBOFFLINE\fR by \fBin.mpathd\fR because of a
+duplicate hardware address.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBLINK\fR\fR
+.ad
+.sp .6
+.RS 4n
+The state of link-based failure detection:
+.sp
+.ne 2
+.na
+\fB\fBup\fR\fR
+.ad
+.sp .6
+.RS 4n
+The link is up.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdown\fR\fR
+.ad
+.sp .6
+.RS 4n
+The link is down.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBunknown\fR\fR
+.ad
+.sp .6
+.RS 4n
+The network driver does not report link state changes.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPROBE\fR\fR
+.ad
+.sp .6
+.RS 4n
+The state of probe-based failure detection:
+.sp
+.ne 2
+.na
+\fB\fBok\fR\fR
+.ad
+.sp .6
+.RS 4n
+Probes detect no problems.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfailed\fR\fR
+.ad
+.sp .6
+.RS 4n
+Probes detect failure.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBunknown\fR\fR
+.ad
+.sp .6
+.RS 4n
+Probes cannot be sent since no suitable probe targets are known.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdisabled\fR\fR
+.ad
+.sp .6
+.RS 4n
+Probes have been disabled because a unique IP test address has not been
+configured.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSTATE\fR\fR
+.ad
+.sp .6
+.RS 4n
+The overall state of the interface:
+.sp
+.ne 2
+.na
+\fB\fBok\fR\fR
+.ad
+.sp .6
+.RS 4n
+The interface is online and functioning properly based on the configured
+failure detection methods.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfailed\fR\fR
+.ad
+.sp .6
+.RS 4n
+The interface is online but has a link state of \fBdown\fR or a probe state of
+\fBfailed\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBoffline\fR\fR
+.ad
+.sp .6
+.RS 4n
+The interface is offline.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBunknown\fR\fR
+.ad
+.sp .6
+.RS 4n
+The interface is online but may or may not be functioning because the
+configured failure detection methods are in \fBunknown\fR states.
+.RE
+
+.RE
+
+If \fB-o\fR is not specified, all output fields are displayed.
+.RE
+
+.sp
+.ne 2
+.na
+\fBProbe Mode\fR
+.ad
+.sp .6
+.RS 4n
+Probe mode displays information about the probes being sent by \fBin.mpathd\fR.
+Unlike other output modes, this mode runs until explicitly terminated using
+\fBCtrl-C\fR. The following output fields are supported:
+.sp
+.ne 2
+.na
+\fB\fBTIME\fR\fR
+.ad
+.sp .6
+.RS 4n
+The time the probe was sent, relative to when \fBipmpstat\fR was started. If
+the probe was sent prior to starting \fBipmpstat\fR, the time will be negative.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPROBE\fR\fR
+.ad
+.sp .6
+.RS 4n
+An identifier representing the probe. The identifier will start at zero and
+will monotonically increment for each probe sent by \fBin.mpathd\fR over a
+given interface. To enable more detailed analysis by packet monitoring tools,
+this identifier matches the \fBicmp_seq\fR field of the ICMP probe packet.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBINTERFACE\fR\fR
+.ad
+.sp .6
+.RS 4n
+The IP interface the probe was sent on.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBTARGET\fR\fR
+.ad
+.sp .6
+.RS 4n
+The hostname (or IP address) of the target the probe was sent to.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBNETRTT\fR\fR
+.ad
+.sp .6
+.RS 4n
+The network round-trip-time for the probe. This is the time between when the IP
+module sends the probe and when the IP module receives the acknowledgment. If
+\fBin.mpathd\fR has concluded that the probe has been lost, this field will be
+empty.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBRTT\fR\fR
+.ad
+.sp .6
+.RS 4n
+The total round-trip-time for the probe. This is the time between when
+\fBin.mpathd\fR starts executing the code to send the probe, and when it
+completes processing the \fBack\fR. If \fBin.mpathd\fR has concluded that the
+probe has been lost, this field will be empty. Spikes in the total round-trip
+time that are not present in the network round-trip time indicate that the
+local system itself is overloaded.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBRTTAVG\fR\fR
+.ad
+.sp .6
+.RS 4n
+The average round-trip-time to \fBTARGET\fR over \fBINTERFACE\fR. This aids
+identification of slow targets. If there is insufficient data to calculate the
+average, this field will be empty.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBRTTDEV\fR\fR
+.ad
+.sp .6
+.RS 4n
+The standard deviation for the round-trip-time to \fBTARGET\fR over
+\fBINTERFACE\fR. This aids identification of jittery targets. If there is
+insufficient data to calculate the standard deviation, this field will be
+empty.
+.RE
+
+If \fB-o\fR is not specified, all fields except for \fBRTTAVG\fR and
+\fBRTTDEV\fR are displayed.
+.RE
+
+.sp
+.ne 2
+.na
+\fBTarget Mode\fR
+.ad
+.sp .6
+.RS 4n
+Target mode displays IPMP probe target information. The following output fields
+are supported:
+.sp
+.ne 2
+.na
+\fB\fBINTERFACE\fR\fR
+.ad
+.sp .6
+.RS 4n
+The IP interface name associated with the information.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBMODE\fR\fR
+.ad
+.sp .6
+.RS 4n
+The probe target discovery mode:
+.sp
+.ne 2
+.na
+\fB\fBroutes\fR\fR
+.ad
+.RS 13n
+Probe targets found by means of the routing table.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmulticast\fR\fR
+.ad
+.RS 13n
+Probe targets found by means of multicast ICMP probes.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdisabled\fR\fR
+.ad
+.RS 13n
+Probe-based failure detection is disabled.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBTESTADDR\fR\fR
+.ad
+.sp .6
+.RS 4n
+The hostname (or IP address) that will be used for sending and receiving
+probes. If a unique test address has not been configured, this field will be
+empty. Note that if an IP interface is configured with both IPv4 and IPv6 test
+addresses, probe target information will be displayed separately for each test
+address.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBTARGETS\fR\fR
+.ad
+.sp .6
+.RS 4n
+A space-separated list of probe target hostnames (or IP addresses), in firing
+order. If no probe targets could be found, this field will be empty.
+.RE
+
+If \fB-o\fR is not specified, all output fields are displayed.
+.RE
+
+.SH OUTPUT FORMAT
+.LP
+By default, \fBipmpstat\fR uses a human-friendly tabular format for its output
+modes, where each row contains one or more fields of information about a given
+object, which is in turn uniquely identified by one or more of those fields. In
+this format, a header identifying the fields is displayed above the table (and
+after each screenful of information), fields are separated by whitespace, empty
+fields are represented by \fB--\fR (double hyphens), and other visual aids are
+used. If the value for a field cannot be determined, its value will be
+displayed as "\fB?\fR" and a diagnostic message will be output to standard
+error.
+.sp
+.LP
+Machine-parsable format also uses a tabular format, but is designed to be
+efficient to programmatically parse. Specifically, machine-parsable format
+differs from human-friendly format in the following ways:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+No headers are displayed.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Fields with empty values yield no output, rather than showing \fB--\fR.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Fields are separated by a single colon (\fB:\fR), rather than variable amounts
+of whitespace.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+If multiple fields are requested, and a literal \fB:\fR or a backslash
+(\fB\e\fR) occur in a field's value, they are escaped by prefixing them with
+\fB\e\fR\&.
+.RE
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRObtaining Failure Detection Time of a Specific Interface
+.sp
+.LP
+The following code uses the machine-parsable output format to create a
+\fBksh\fR function that outputs the failure detection time of a given IPMP IP
+interface:
+
+.sp
+.in +2
+.nf
+ getfdt() {
+ ipmpstat -gP -o group,fdt | while IFS=: read group fdt; do
+ [[ "$group" = "$1" ]] && { echo "$fdt"; return; }
+ done
+ }
+.fi
+.in -2
+.sp
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+.LP
+\fB/usr/sbin/ipmpstat\fR:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Committed
+_
+Machine-Parsable Format Committed
+_
+Human-Friendly Format Not-an-Interface
+.TE
+
+.sp
+.LP
+\fB/sbin/ipmpstat\fR is not a Committed interface.
+.SH SEE ALSO
+.LP
+.BR attributes (7),
+.BR if_mpadm (8),
+.BR ifconfig (8),
+.BR in.mpathd (8)
diff --git a/usr/src/man/man8/ipnat.8 b/usr/src/man/man8/ipnat.8
new file mode 100644
index 0000000000..95d610fe81
--- /dev/null
+++ b/usr/src/man/man8/ipnat.8
@@ -0,0 +1,227 @@
+'\" te
+.\" To view license terms, attribution, and copyright for IP Filter, the default path is /usr/lib/ipf/IPFILTER.LICENCE. If the Solaris operating environment has been installed anywhere other than the default, modify the given path to access the file at the installed
+.\" location.
+.\" Portions Copyright (c) 2008, Sun Microsystems Inc. All Rights Reserved.
+.\" Portions Copyright (c) 2013, Joyent, Inc. All Rights Reserved.
+.TH IPNAT 8 "Oct 30, 2013"
+.SH NAME
+ipnat \- user interface to the NAT subsystem
+.SH SYNOPSIS
+.LP
+.nf
+\fBipnat\fR [\fB-CdFhlnRrsv\fR] [\fB-G\fR | \fB-z\fR \fIzonename\fR] \fB-f\fR \fIfilename\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBipnat\fR utility opens a specified file (treating \fB-\fR as stdin) and
+parses it for a set of rules that are to be added or removed from the IP NAT.
+.sp
+.LP
+If there are no parsing problems, each rule processed by \fBipnat\fR is added
+to the kernel's internal lists. Rules are appended to the internal lists,
+matching the order in which they appear when given to \fBipnat\fR.
+.sp
+.LP
+\fBipnat\fR's use is restricted through access to \fB/dev/ipauth\fR,
+\fB/dev/ipl\fR, and \fB/dev/ipstate\fR. The default permissions of these files
+require \fBipnat\fR to be run as root for all operations.
+.sp
+.LP
+\fBipnat\fR's use is restricted through access to \fB/dev/ipnat\fR. The default
+permissions of \fB/dev/ipnat\fR require \fBipnat\fR to be run as root for all
+operations.
+.SH OPTIONS
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-C\fR\fR
+.ad
+.RS 15n
+Delete all entries in the current NAT rule listing (NAT rules).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-d\fR\fR
+.ad
+.RS 15n
+Turn debug mode on. Causes a hex dump of filter rules to be generated as it
+processes each one.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-F\fR\fR
+.ad
+.RS 15n
+Delete all active entries in the current NAT translation table (currently
+active NAT mappings).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR \fIfilename\fR\fR
+.ad
+.RS 15n
+Parse specified file for rules to be added or removed from the IP NAT.
+\fIfilename\fR can be stdin.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-h\fR\fR
+.ad
+.RS 15n
+Print number of hits for each MAP/Redirect filter.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR\fR
+.ad
+.RS 15n
+Show the list of current NAT table entry mappings.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR\fR
+.ad
+.RS 15n
+Prevents \fBipf\fR from doing anything, such as making ioctl calls, which might
+alter the currently running kernel.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-R\fR\fR
+.ad
+.RS 15n
+Disable both IP address-to-hostname resolution and port number-to-service name
+resolution.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-r\fR\fR
+.ad
+.RS 15n
+Remove matching NAT rules rather than add them to the internal lists.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR\fR
+.ad
+.RS 15n
+Retrieve and display NAT statistics.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.RS 15n
+Turn verbose mode on. Displays information relating to rule processing and
+active rules/table entries.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-z\fR \fIzonename\fR\fR
+.ad
+.RS 15n
+Operate on the in-zone IP NAT for the specified zone. If neither this option
+nor \fB-G\fR is specified, the current zone is used. This command is only
+available in the Global Zone. See \fBZONES\fR in \fBipf\fR(8) for more
+information.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-G\fR \fIzonename\fR\fR
+.ad
+.RS 15n
+Operate on the global zone controlled IP NAT for the specified zone. If
+neither this option nor \fB-z\fR is specified, the current zone is used. This
+command is only available in the Global Zone. See \fBZONES\fR in \fBipf\fR(8)
+for more information.
+.RE
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/dev/ipnat\fR\fR
+.ad
+.sp .6
+.RS 4n
+Link to IP Filter pseudo device.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/kmem\fR\fR
+.ad
+.sp .6
+.RS 4n
+Special file that provides access to virtual address space.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/ipf/ipnat.conf\fR\fR
+.ad
+.sp .6
+.RS 4n
+Location of \fBipnat\fR startup configuration file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/share/ipfilter/examples/\fR\fR
+.ad
+.sp .6
+.RS 4n
+Contains numerous IP Filter examples.
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Committed
+.TE
+
+.SH SEE ALSO
+.LP
+.BR ipnat (5),
+.BR attributes (7),
+.BR zones (7),
+.BR ipf (8),
+.BR ipfstat (8)
diff --git a/usr/src/man/man8/ippool.8 b/usr/src/man/man8/ippool.8
new file mode 100644
index 0000000000..1f57c3d93b
--- /dev/null
+++ b/usr/src/man/man8/ippool.8
@@ -0,0 +1,352 @@
+'\" te
+.\" To view license terms, attribution, and copyright for IP Filter, the default path is /usr/lib/ipf/IPFILTER.LICENCE. If the Solaris operating environment has been installed anywhere other than the default, modify the given path to access the file at the installed
+.\" location.
+.\" Portions Copyright (c) 2008, Sun Microsystems Inc. All Rights Reserved.
+.\" Portions Copyright (c) 2012, Joyent, Inc. All Rights Reserved.
+.TH IPPOOL 8 "Nov 26, 2012"
+.SH NAME
+ippool \- user interface to the IP Filter pools
+.SH SYNOPSIS
+.LP
+.nf
+\fBippool\fR \fB-a\fR [\fB-dnv\fR] [\fB-G\fR | \fB-z\fR \fIzonename\fR] [\fB-m\fR \fIpoolname\fR] [\fB-o\fR \fIrole\fR] \fB-i\fR \fIipaddr\fR
+ [/\fInetmask\fR]
+.fi
+
+.LP
+.nf
+\fBippool\fR \fB-A\fR [\fB-dnv\fR] [\fB-G\fR | \fB-z\fR \fIzonename\fR] [\fB-m\fR \fIpoolname\fR] [\fB-o\fR \fIrole\fR] [\fB-S\fR \fIseed\fR]
+ [\fB-t\fR \fItype\fR]
+.fi
+
+.LP
+.nf
+\fBippool\fR \fB-f\fR \fIfile\fR [\fB-G\fR | \fB-z\fR \fIzonename\fR] [\fB-dnuv\fR]
+.fi
+
+.LP
+.nf
+\fBippool\fR \fB-F\fR [\fB-dv\fR] [\fB-G\fR | \fB-z\fR \fIzonename\fR] [\fB-o\fR \fIrole\fR] [\fB-t\fR \fItype\fR]
+.fi
+
+.LP
+.nf
+\fBippool\fR \fB-h\fR [\fB-dv\fR] [\fB-G\fR | \fB-z\fR \fIzonename\fR] [\fB-m\fR \fIpoolname\fR] [\fB-t\fR \fItype\fR]
+.fi
+
+.LP
+.nf
+\fBippool\fR \fB-l\fR [\fB-dv\fR] [\fB-G\fR | \fB-z\fR \fIzonename\fR] [\fB-m\fR \fIpoolname\fR] [\fB-t\fR \fItype\fR]
+.fi
+
+.LP
+.nf
+\fBippool\fR \fB-r\fR [\fB-dnv\fR] [\fB-G\fR | \fB-z\fR \fIzonename\fR] [\fB-m\fR \fIpoolname\fR] [\fB-o\fR \fIrole\fR] \fB-i\fR \fIipaddr\fR
+ [/\fInetmask\fR]
+.fi
+
+.LP
+.nf
+\fBippool\fR \fB-R\fR [\fB-dnv\fR] [\fB-G\fR | \fB-z\fR \fIzonename\fR] [\fB-m\fR \fIpoolname\fR] [\fB-o\fR \fIrole\fR] [\fB-t\fR \fItype\fR]
+.fi
+
+.LP
+.nf
+\fBippool\fR \fB-s\fR [\fB-dtv\fR] [\fB-G\fR | \fB-z\fR \fIzonename\fR] [\fB-M\fR \fIcore\fR] [\fB-N\fR \fInamelist\fR]
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBippool\fR utility is used to manage information stored in the IP pools
+subsystem of IP Filter software. Configuration file information can be parsed
+and loaded into the kernel and currently configured pools can be removed,
+changed, or inspected.
+.sp
+.LP
+\fBippool\fR's use is restricted through access to \fB/dev/ippool\fR. The
+default permissions of \fB/dev/ippool\fR require \fBippool\fR to be run as root
+for all operations.
+.sp
+.LP
+The command line options used are divided into two sections: the global options
+and the instance-specific options.
+.sp
+.LP
+\fBippool\fR's use is restricted through access to \fB/dev/ipauth\fR,
+\fB/dev/ipl\fR, and \fB/dev/ipstate\fR. The default permissions of these files
+require \fBippool\fR to be run as root for all operations.
+.SH OPTIONS
+.LP
+\fBippool\fR supports the option categories described below.
+.SS "Global Options"
+.LP
+The following global options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-d\fR\fR
+.ad
+.RS 6n
+Toggle debugging of processing the configuration file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR\fR
+.ad
+.RS 6n
+Prevents \fBippool\fR from doing anything, such as making ioctl calls, that
+would alter the currently running kernel.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.RS 6n
+Turn verbose mode on.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-z\fR \fIzonename\fR\fR
+.ad
+.RS 6n
+Manage the specified zone's in-zone IP pools. If neither this option nor
+\fB-G\fR is specified, the current zone is used. This command is only
+available in the Global Zone. See \fBZONES\fR in \fBipf\fR(8) for more
+information.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-G\fR \fIzonename\fR\fR
+.ad
+.RS 6n
+Manage the specified zone's global zone controlled IP pools. If neither this
+option nor \fB-z\fR is specified, the current zone is used. This command is
+only available in the Global Zone. See \fBZONES\fR in \fBipf\fR(8) for more
+information.
+.RE
+
+.SS "Instance-Specific Options"
+.LP
+The following instance-specific options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-a\fR\fR
+.ad
+.RS 11n
+Add a new data node to an existing pool in the kernel.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-A\fR\fR
+.ad
+.RS 11n
+Add a new (empty) pool to the kernel.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR \fIfile\fR\fR
+.ad
+.RS 11n
+Read in IP pool configuration information from \fIfile\fR and load it into the
+kernel.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-F\fR\fR
+.ad
+.RS 11n
+Flush loaded pools from the kernel.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-h\fR\fR
+.ad
+.RS 11n
+Display a list of pools of the type: hash loaded in the kernel.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR\fR
+.ad
+.RS 11n
+Display a list of pools of the type: tree loaded in the kernel.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-r\fR\fR
+.ad
+.RS 11n
+Remove an existing data node from a pool in the kernel.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-R\fR\fR
+.ad
+.RS 11n
+Remove an existing pool from within the kernel.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR\fR
+.ad
+.RS 11n
+Display IP pool statistical information.
+.RE
+
+.SS "Other Options"
+.LP
+The following, additional options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-i\fR \fIipaddr\fR[/\fInetmask\fR]\fR
+.ad
+.RS 23n
+Sets the IP address for the operation being undertaken with an all-one's mask
+or, optionally, a specific netmask, given in either dotted-quad notation or as
+a single integer.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-m\fR \fIpoolname\fR\fR
+.ad
+.RS 23n
+Sets the pool name for the current operation.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-M\fR \fIcore\fR\fR
+.ad
+.RS 23n
+Specify an alternative path to \fB/dev/kmem\fR from which to retrieve
+statistical information.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-N\fR \fInamelist\fR\fR
+.ad
+.RS 23n
+Specify an alternative path to lookup symbol name information when retrieving
+statistical information.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-o\fR \fIrole\fR\fR
+.ad
+.RS 23n
+Sets the role with which this pool is to be used. Currently only \fBipf\fR,
+\fBauth\fR, and \fBcount\fR are accepted as arguments to this option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-S\fR \fIseed\fR\fR
+.ad
+.RS 23n
+Sets the hashing seed to the number specified. For use with hash-type pools
+only.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-t\fR \fItype\fR\fR
+.ad
+.RS 23n
+Sets the type of pool being defined. Must be one of \fBpool\fR, \fBhash\fR, or
+\fBgroup-map\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-u\fR\fR
+.ad
+.RS 23n
+When parsing a configuration file, rather than load new pool data into the
+kernel, unload it.
+.RE
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/dev/ippool\fR\fR
+.ad
+.RS 24n
+Link to IP Filter pseudo device.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/kmem\fR\fR
+.ad
+.RS 24n
+Special file that provides access to virtual address space.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/ipf/ippool.conf\fR\fR
+.ad
+.RS 24n
+Location of \fBippool\fR startup configuration file.
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Committed
+.TE
+
+.SH SEE ALSO
+.LP
+.BR ippool (5),
+.BR attributes (7),
+.BR zones (7),
+.BR ipf (8),
+.BR ipfstat (8)
diff --git a/usr/src/man/man8/ipqosconf.8 b/usr/src/man/man8/ipqosconf.8
new file mode 100644
index 0000000000..5cb777f4d9
--- /dev/null
+++ b/usr/src/man/man8/ipqosconf.8
@@ -0,0 +1,1060 @@
+'\" te
+.\" Copyright (C) 2004, 2009 Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH IPQOSCONF 8 "Dec 18, 2008"
+.SH NAME
+ipqosconf \- configure the IPQoS facility
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/ipqosconf\fR
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/ipqosconf\fR \fB-a\fR \fIconf_file\fR [\fB-vs\fR]
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/ipqosconf\fR \fB-c\fR
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/ipqosconf\fR \fB-f\fR
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/ipqosconf\fR \fB-l\fR
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/ipqosconf\fR \fB-L\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBipqosconf\fR utility configures the Quality of Service facility of the
+Internet Protocol (\fBIP\fR). Only superusers can use this command.
+.sp
+.LP
+Without arguments, \fBipqosconf\fR displays the actual \fBIPQoS\fR
+configuration.
+.sp
+.LP
+Configuration is not preserved across reboot. You must apply the configuration
+every time that the machine reboots. To apply the configuration early in the
+boot phase, you can populate the \fB/etc/inet/ipqosinit.conf\fR file, which is
+then read from the \fBsvc:/network/initial:default\fR service.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-a\fR \fIconf_file\fR\fR
+.ad
+.RS 16n
+Apply the configuration in \fIconf_file\fR. If the \fIconf_file\fR is
+\fB\(mi\fR, \fBipqosconf\fR reads from standard input.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-c\fR\fR
+.ad
+.RS 16n
+Populate the boot file with the current configuration.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR\fR
+.ad
+.RS 16n
+Flush the configuration.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR\fR
+.ad
+.RS 16n
+List the current applied configuration.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-L\fR\fR
+.ad
+.RS 16n
+List the current configuration in verbose mode.
+.sp
+In addition to the information that the \fB-l\fR option provides, the \fB-L\fR
+option provides filters and classes configured through other means than the
+\fBiqposconf\fR command. This option also provides the full set of filters that
+were created by \fBipqosconf\fR by representing a multi-homed host in a
+configuration file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR\fR
+.ad
+.RS 16n
+Log messages to \fBsyslog\fR during an \fB-a\fR operation.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.RS 16n
+Toggle verbose mode during an \fB-a\fR operation.
+.sp
+The \fB-v\fR option causes all messages to go to the console in addition to
+their normal destination. Messages intended to go to \fBsyslog\fR, because the
+\fB-s\fR flag is set or because it is a log message, still go to \fBsyslog\fR
+as well as the console.
+.RE
+
+.SH CONFIGURATION FILE
+.sp
+.LP
+The configuration file is composed of a format version and a succession of
+configuration (action) blocks. There are different configuration blocks for
+each type of action that is being configured.
+.SS "Format Version"
+.sp
+.LP
+The first line of the configuration file specifies the format version contained
+in the configuration file.
+.sp
+.LP
+The following entry specifies the format version:
+.sp
+.in +2
+.nf
+fmt_version \fIx\fR.\fIx\fR
+.fi
+.in -2
+
+.sp
+.LP
+where \fIx\fR.\fIx\fR is the format version. \fB1.0\fR is the only supported
+version.
+.SS "Configuration Blocks"
+.sp
+.LP
+Following the format version, are a succession of configuration (action) blocks
+that are different for each type of action being configured. A configuration
+block always has the following structure:
+.sp
+.in +2
+.nf
+action {
+ name action_name
+ module module_name
+ params_clause | ""
+ cf_clauses
+}
+
+action_name ::= string
+module_name ::= ipgpc | dlcosmk | dscpmk | flowacct | tswtclmt |
+ tokenmt
+
+params_clause ::= params {
+ parameters
+ params_stats | ""
+ }
+
+parameters ::= prm_name_value parameters | ""
+
+prm_name_value ::= \fIparam_name\fR \fIparam_value\fR
+.fi
+.in -2
+.sp
+
+.SS "Modules"
+.sp
+.LP
+The \fIparam_name\fR and the types of \fIparam_value\fR are specific to a given
+module.
+.sp
+.in +2
+.nf
+params_stats ::= global_stats boolean
+
+cf_clauses ::= class_clause cf_clauses |
+ filter_clause cf_clauses | ""
+
+class_clause ::= class {
+ name class_name
+ next_action next_action_name
+ class_stats | ""
+ }
+
+class_name ::= string
+next_action_name ::= string
+class_stats ::= enable_stats boolean
+boolean ::= TRUE | FALSE
+
+filter_clause ::= filter {
+ name filter_name
+ class class_name
+ parameters
+ }
+
+filter_name ::= string
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+There must be exactly one configuration block belonging to module \fBipgpc\fR.
+The action must be named \fBipgpc.classify\fR. All other actions should be
+reachable from \fBipgpc\fR by way of parameters of type action or the
+next_action of a class.
+.sp
+.LP
+The set of types that are used for parameters of the different modules are:
+.sp
+.in +2
+.nf
+action ::= string
+protocol ::= 1..255
+port ::= 1..65535
+uint8 ::= 0..255
+uint32 ::= 0..4294967296
+int32 ::= -2147483648..2147483648
+address ::= <see the description section>
+ifname ::= <interface name recognized by SIOGLIFINDEX ioctl>
+enum ::= string | { string_list }
+boolean ::= TRUE | FALSE
+integer_array ::= { range_value_list }
+map_index ::= uint32
+address ::= ip_address | ip_node_name
+user ::= uid | username
+uid ::= 0..65535
+username ::= string
+string_list ::= string sl_entrys
+sl_entrys ::= ',' string sl_entrys | ""
+range_value_list ::= range_value_entry range_value_entrys
+range_value_entry ::= range ':' integer_array_value
+range ::= uint32 '-' uint32
+integer_array_value ::= string | integer_array_number
+integer_array_number ::= uint8 | uint32
+range_value_entrys ::= ';' range_value_entry range_value_entrys | ""
+ip_node_name ::= string
+ip_address ::= v4_address | v6_address
+v4_address ::= v4_ip_address / v4_cidr_mask |
+v4_ip_address
+v4_cidr_mask ::= 1-32
+v6_address ::= v6_ip_address / v6_cidr_mask |
+v6_ip_address
+v6_cidr_mask ::= 1-128
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+METER module tokenmt configuration syntax:
+.sp
+.in +2
+.nf
+red_action_name action
+yellow_action_name action
+green_action_name action
+committed_rate uint32
+committed_burst uint32
+peak_rate uint32
+<if present this signifies that this will be a two rate meter, not
+ a single rate meter>
+peak_burst uint32
+<this is the 'peak' burst size for a two rate meter, but
+ the 'excess' burst size for a single rate meter>
+color_aware boolean
+color_map integer_array
+global_stats boolean
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+METER module tswtclmt configuration syntax:
+.sp
+.in +2
+.nf
+red_action_name action
+yellow_action_name action
+green_action_name action
+committed_rate uint32
+peak_rate uint32
+window uint32
+global_stats boolean
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+MARKER module dscpmk configuration syntax:
+.sp
+.in +2
+.nf
+next_action action
+dscp_map int_array
+dscp_detailed_stats boolean
+global_stats boolean
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+MARKER module dlcosmk configuration syntax:
+.sp
+.in +2
+.nf
+next_action action
+cos map_index
+global_stats boolean
+.fi
+.in -2
+
+.sp
+.LP
+CLASSIFIER module ipgpc configuration syntax:
+.sp
+.in +2
+.nf
+user user
+projid int32
+if_name ifname
+direction enum {
+ LOCAL_IN,
+ LOCAL_OUT,
+ FWD_IN,
+ FWD_OUT}
+protocol protocol
+dsfield uint8
+dsfield_mask uint8
+saddr address
+daddr address
+sport port
+dport port
+priority uint32
+precedence uint32
+ip_version enum {
+ V4,
+ V6 }
+global_stats boolean
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+ACCOUNTING module flowacct configuration syntax:
+.sp
+.in +2
+.nf
+next_action action
+timer uint32
+timeout uint32
+max_limit uint32
+.fi
+.in -2
+.sp
+
+.SS "Types"
+.sp
+.ne 2
+.na
+\fB\fIaction\fR\fR
+.ad
+.RS 17n
+A string of characters with a matching action definition. The character string
+can be up to twenty three characters in length. To allow for spaces the string
+needs to be enclosed in quotes and cannot span lines. Two special actions are
+pre-defined and can not have an explicit action definition. The two pre-defined
+actions are \fBcontinue\fR and \fBdrop\fR. continue causes the packet that is
+passed to it to continue normal processing. \fBdrop\fR causes the packet that
+is passed to it to be dropped.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIaddress\fR\fR
+.ad
+.RS 17n
+A machine name or address recognized by \fBgetipnodebyname\fR(3SOCKET). If a
+machine name is specified, and \fBip_version\fR has been defined, the query is
+done using that address family. If a machine name is not specified and
+\fBip_version\fR has not been defined, the query is done using the
+\fBAI_DEFAULT\fR flag to \fBgetipnodebyname()\fR(\fB\&..AF_INET6..\fR).
+\fBCIDR\fR address masks following an IP address are allowed. Specify the
+\fBCIDR\fR address masks as \fB1\fR-\fB32\fR (for \fBv4\fR) or
+\fB1\fR-\fB128\fR (for \fBv6\fR). \fBCIDR\fR addresses are disallowed for node
+names.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIenum\fR\fR
+.ad
+.RS 17n
+Either one of the supported values or comma delimited list of support values,
+enclosed in curly braces.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIifname\fR\fR
+.ad
+.RS 17n
+A non-\fINULL\fR, existing interface name recognized by the \fBSIOGLIFINDEX\fR
+socket ioctl.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIinteger_array\fR\fR
+.ad
+.RS 17n
+A comma delimited set of \fIrange\fR/\fIvalue\fR pairs, enclosed in curly
+braces.
+.sp
+Specify \fIrange\fR in the format \fIx\fR-\fIy\fR, where \fIx\fR and \fIy\fR
+are integers that denote the range of array indexes to which the value applies.
+The minimum value for both \fIx\fR and \fIy\fR is \fB0\fR. The maximum value
+for \fIx\fR is particular to the parameter. Any array indexes not referred to
+in the set of ranges are left at their previous value.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fImap_index\fR\fR
+.ad
+.RS 17n
+A non-negative integer used as an index into any maps associated with a
+parameter of this type.
+.sp
+The maximum value of this type is dictated by the number of entries in the
+associated maps. The index starts at \fB0\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIport\fR\fR
+.ad
+.RS 17n
+Either a service name recognized by \fBgetservbyname\fR(3SOCKET) or an integer
+\fB1\fR-\fB65535\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIprotocol\fR\fR
+.ad
+.RS 17n
+Either a protocol name recognized by \fBgetprotobyname\fR(3SOCKET) or an
+integer \fB1\fR-\fB255\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIstring\fR\fR
+.ad
+.RS 17n
+A character string. Enclose \fIstring\fR in quotes. \fIstring\fR cannot span
+multiple lines.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIuser\fR\fR
+.ad
+.RS 17n
+Either a valid user ID or username for the system that is being configured.
+.RE
+
+.SS "Parameters"
+.sp
+.LP
+The configuration file can contain the following parameters
+.sp
+.ne 2
+.na
+\fBcolor_aware\fR
+.ad
+.RS 23n
+A value of \fBTRUE\fR or \fBFALSE\fR, indicating whether or not the configured
+action takes account of the previous packet coloring when classifying.
+.RE
+
+.sp
+.ne 2
+.na
+\fBcolor_map\fR
+.ad
+.RS 23n
+An integer array that defines which values of the \fBdscp\fR field correspond
+with which colors for when the \fBcolor_aware\fR parameter is set to
+\fBTRUE\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBcommitted_burst\fR
+.ad
+.RS 23n
+The committed burst size in bits.
+.RE
+
+.sp
+.ne 2
+.na
+\fBcommitted_rate\fR
+.ad
+.RS 23n
+The committed rate in bits per second.
+.RE
+
+.sp
+.ne 2
+.na
+\fBcos\fR
+.ad
+.RS 23n
+The value used to determine the underlying driver level priority applied to the
+packet which is defined in \fB802.1D\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBdaddr\fR
+.ad
+.RS 23n
+The destination address of the datagram.
+.RE
+
+.sp
+.ne 2
+.na
+\fBdirection\fR
+.ad
+.RS 23n
+The value used to build a filter matching only part of the traffic.
+.sp
+This parameter is of type \fBenum\fR with valid values of \fBLOCAL_IN\fR (local
+bound traffic), \fBLOCAL_OUT\fR (local sourced traffic), \fBFWD_IN\fR
+(forwarded traffic entering the system), and \fBFWD_OUT\fR (forwarded traffic
+exiting the system).
+.RE
+
+.sp
+.ne 2
+.na
+\fBdport\fR
+.ad
+.RS 23n
+The destination port of the datagram.
+.RE
+
+.sp
+.ne 2
+.na
+\fBdscp_detailed_stats\fR
+.ad
+.RS 23n
+A value of \fBTRUE\fR or \fBFALSE\fR that determines whether detailed
+statistics are switched on for this \fBdscp\fR action.
+.sp
+Specify \fBTRUE\fR to switch on or \fBFALSE\fR to switch off.
+.RE
+
+.sp
+.ne 2
+.na
+\fBdscp_map\fR
+.ad
+.RS 23n
+The \fIinteger_array\fR that supplies the values that IP packets with a given
+\fBdscp\fR value have their dscp re-marked with.
+.sp
+The existing value is used to index into the array where the new value is taken
+from. The array is of size \fB64\fR, meaning valid indexes are \fB0\fR-\fB63\fR
+and valid values are also \fB0\fR-\fB63\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBdsfield\fR
+.ad
+.RS 23n
+The \fBDS\fR field of the \fBIP\fR datagram header. This is an 8-bit value,
+with each bit position corresponding with the same one in the header; this
+enables matches to be done on the CU bits. If you specify this parameter, you
+must also specify the \fBdsfield_mask\fR parameter.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdsfield_mask\fR\fR
+.ad
+.RS 23n
+The mask applied to the \fBdsfield\fR parameter to determine the bits against
+which to match. This is an 8-bit value, with each bit position corresponding
+with the same one in the \fBdsfield\fR parameter.
+.RE
+
+.sp
+.ne 2
+.na
+\fBglobal_stats\fR
+.ad
+.RS 23n
+A value of \fBTRUE\fR or \fBFALSE\fR to enable or disable the statistic
+collection for this action.
+.RE
+
+.sp
+.ne 2
+.na
+\fBgreen_action_name\fR
+.ad
+.RS 23n
+The action to be executed for packets that are deemed to be green.
+.RE
+
+.sp
+.ne 2
+.na
+\fBif_name\fR
+.ad
+.RS 23n
+The name of an interface recognized by the \fBSIOGLIFINDEX\fR ioctl. This
+parameter is of type \fBifname\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBip_version\fR
+.ad
+.RS 23n
+This parameter is of type \fBenum\fR and has valid values of \fBV4\fR and
+\fBV6\fR.
+.sp
+If it is set to \fBV4\fR only then only \fBipv4\fRaddresses are requested for a
+specified hostname. If it is set to \fBV6\fR, only \fBipv6\fR addresses are
+returned if there are any, otherwise \fBv4\fR mapped \fBv6\fR addresses are
+returned. If both \fBV4\fR and \fBV6\fR are specified, or if \fBip_version\fR
+is not specified, then both \fBipv4\fR and \fBipv6\fR addresses are requested
+for a specified hostname.
+.RE
+
+.sp
+.ne 2
+.na
+\fBmax_limit\fR
+.ad
+.RS 23n
+The maximum number of flow entries present at one time in the \fBflowacct\fR
+actions in the memory resident table.
+.RE
+
+.sp
+.ne 2
+.na
+\fBnext_action\fR
+.ad
+.RS 23n
+The action to be executed when the current action is complete.
+.sp
+This value can be either the name of an action defined in the configuration
+file, or one of the two special action types: \fBdrop\fR and \fBcontinue\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBpeak_burst\fR
+.ad
+.RS 23n
+The peak burst size, for a two rate meter, or excess burst size, for a single
+rate meter, in bits.
+.RE
+
+.sp
+.ne 2
+.na
+\fBpeak_rate\fR
+.ad
+.RS 23n
+The peak rate in bits per second.
+.RE
+
+.sp
+.ne 2
+.na
+\fBprecedence\fR
+.ad
+.RS 23n
+An integer that is used to order filters. If there are two matching filters
+that have the same priority value, the one with the lower precedence value is
+the one matched. This parameter should be used because the order of the filters
+in a configuration file has no influence on their relative precedence.
+.RE
+
+.sp
+.ne 2
+.na
+\fBpriority\fR
+.ad
+.RS 23n
+An integer that represents the relative priority of a filter. If there are two
+matching filters, the one with the higher priority value is the one matched.
+Multiple filters can have the same priority.
+.RE
+
+.sp
+.ne 2
+.na
+\fBprojid\fR
+.ad
+.RS 23n
+The project ID of the process sending the data. This value is always \fB-1\fR
+for received traffic.
+.RE
+
+.sp
+.ne 2
+.na
+\fBprotocol\fR
+.ad
+.RS 23n
+The Upper Layer Protocol against which this entry is matched.
+.RE
+
+.sp
+.ne 2
+.na
+\fBred_action_name\fR
+.ad
+.RS 23n
+The action to be executed for packets that are determined to be red.
+.RE
+
+.sp
+.ne 2
+.na
+\fBsaddr\fR
+.ad
+.RS 23n
+The source address of the datagram.
+.RE
+
+.sp
+.ne 2
+.na
+\fBsport\fR
+.ad
+.RS 23n
+The source port of the datagram.
+.RE
+
+.sp
+.ne 2
+.na
+\fBtimeout\fR
+.ad
+.RS 23n
+The timeout in milliseconds after which flows are written to the accounting
+file.
+.RE
+
+.sp
+.ne 2
+.na
+\fBtimer\fR
+.ad
+.RS 23n
+The period in milliseconds at which timed-out flows are checked for.
+.RE
+
+.sp
+.ne 2
+.na
+\fBuser\fR
+.ad
+.RS 23n
+The user ID or username of the process sending the data. This value is always
+\fB-1\fR for received traffic.
+.RE
+
+.sp
+.ne 2
+.na
+\fBwindow\fR
+.ad
+.RS 23n
+The window size in ms.
+.RE
+
+.sp
+.ne 2
+.na
+\fByellow_action_name\fR
+.ad
+.RS 23n
+The action to be executed for packets that are determined to be yellow.
+.RE
+
+.SH SECURITY
+.sp
+.LP
+None.
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRSending All Traffic From eng to the AF 1 Class of Service
+.sp
+.LP
+This example sends all traffic from \fBeng\fR to the \fBAF 1\fR class of
+service. It is documented in four separate steps:
+
+.sp
+.LP
+The following step creates a \fBtokenmt\fR action with three outcomes:
+
+.sp
+.in +2
+.nf
+#meter for class 1.
+action {
+ name AF_CL1
+ module tokenmt
+ params{
+ committed_rate 64
+ committed_burst 75
+ peak_burst 150
+ global_stats TRUE
+ red_action_name drop
+ yellow_action_name markAF12
+ green_action_name markAF11
+ }
+}
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The following step creates two \fBdscpmk\fR actions:
+
+.sp
+.in +2
+.nf
+#class 1, low drop precedence.
+action {
+ name markAF11
+ module dscpmk
+ params{
+ dscp_map {0-63:28}
+ dscp_detailed_stats TRUE
+ global_stats TRUE
+ next_action acct1
+ }
+}
+#class 1, medium drop precedence.
+action {
+ name markAF12
+ module dscpmk
+ params {
+ dscp_map {0-63:30}
+ dscp_detailed_stats TRUE
+ global_stats TRUE
+ next_action acct1
+ }
+}
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The following step creates an accounting action:
+
+.sp
+.in +2
+.nf
+#billing for transmitted class 1 traffic.
+action {
+ name acct1
+ module flowacct
+ params {
+ timer 10
+ timeout 30
+ global_stats TRUE
+max_limit 1024
+next_action continue
+ }
+}
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The following step creates an \fBipgpc\fR action:
+
+.sp
+.in +2
+.nf
+#traffic from eng sent, traffic from ebay dropped.
+action {
+ name ipgpc.classify
+ module ipgpc
+ class {
+ name from_eng
+ enable_stats TRUE
+ next_action AF_CL1
+ }
+ class {
+ name from_ebay
+ enable_stats TRUE
+ next_action drop
+ }
+
+ filter {
+ name from_eng
+ saddr eng-subnet
+ class from_eng
+ }
+ filter {
+ name from_ebay
+ saddr ebay-subnet
+ class from_ebay
+ }
+}
+.fi
+.in -2
+.sp
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/inet/ipqosinit.conf\fR\fR
+.ad
+.sp .6
+.RS 4n
+Contains the \fBIPQoS\fR configuration loaded at boot time. If this file
+exists, it is read from the \fBnetwork/initial:default\fR service.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/inet/ipqosconf.1.sample\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sample configuration file for an application server
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/inet/ipqosconf.2.sample\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sample configuration file that meters the traffic for a specified application
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/inet/ipqosconf.3.sample\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sample configuration file that marks the ethernet headers of web traffic with a
+given user priority
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR syslog (3C),
+.BR getipnodebyname (3SOCKET),
+.BR getprotobyname (3SOCKET),
+.BR getservbyname (3SOCKET),
+.BR dlcosmk (4IPP),
+.BR dscpmk (4IPP),
+.BR flowacct (4IPP),
+.BR ipgpc (4IPP),
+.BR ipqos (4IPP),
+.BR tokenmt (4IPP),
+.BR tswtclmt (4IPP),
+.BR attributes (7)
+.SH DIAGNOSTICS
+.sp
+.LP
+\fBipqosconf\fR sends messages to \fBsyslog\fR of facility user, severity
+notice when any changes are made to the \fBIPQoS\fR configuration.
+.sp
+.LP
+Errors that occur during an \fBipqosconf\fR operation send an error message to
+the console by default. For the application of a new configuration if the
+\fB-s\fR option is set then these messages are sent to \fBsyslog\fR as facility
+user, severity error instead. If the \fB-v\fR option is present during an
+application then all error and change notificationmessages are sent to the
+console as well as their default destination.
diff --git a/usr/src/man/man8/ipsecalgs.8 b/usr/src/man/man8/ipsecalgs.8
new file mode 100644
index 0000000000..9281997c5d
--- /dev/null
+++ b/usr/src/man/man8/ipsecalgs.8
@@ -0,0 +1,608 @@
+'\" te
+.\" Copyright (C) 2006, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH IPSECALGS 8 "Jul 5, 2007"
+.SH NAME
+ipsecalgs \- configure the IPsec protocols and algorithms table
+.SH SYNOPSIS
+.LP
+.nf
+\fBipsecalgs\fR
+.fi
+
+.LP
+.nf
+\fBipsecalgs\fR \fB-l\fR
+.fi
+
+.LP
+.nf
+\fBipsecalgs\fR \fB-s\fR
+.fi
+
+.LP
+.nf
+\fBipsecalgs\fR \fB-a\fR [\fB-P\fR \fIprotocol-number\fR | \fB-p\fR \fIprotocol-name\fR] \fB-k\fR \fIkeylen-list\fR
+ [\fB-i\fR \fIinc\fR] [\fB-K\fR \fIdefault-keylen\fR] \fB-b\fR \fIblocklen-list\fR \fB-n\fR \fIalg-names\fR
+ \fB-N\fR \fIalg-number\fR \fB-m\fR \fImech-name\fR [\fB-f\fR] [\fB-s\fR]
+.fi
+
+.LP
+.nf
+\fBipsecalgs\fR \fB-P\fR \fIprotocol-number\fR \fB-p\fR \fIprotocol-name\fR
+ [\fB-e\fR \fIexec-mode\fR] [\fB-f\fR] [\fB-s\fR]
+.fi
+
+.LP
+.nf
+\fBipsecalgs\fR \fB-r\fR \fB-p\fR \fIprotocol-name\fR [] \fB-n\fR \fIalg-name\fR [\fB-s\fR]
+.fi
+
+.LP
+.nf
+\fBipsecalgs\fR \fB-r\fR \fB-p\fR \fIprotocol-name\fR [] \fB-N\fR \fIalg-number\fR [\fB-s\fR]
+.fi
+
+.LP
+.nf
+\fBipsecalgs\fR \fB-R\fR \fB-P\fR \fIprotocol-number\fR [\fB-s\fR]
+.fi
+
+.LP
+.nf
+\fBipsecalgs\fR \fB-R\fR \fB-p\fR \fIprotocol-name\fR [\fB-s\fR]
+.fi
+
+.LP
+.nf
+\fBipsecalgs\fR \fB-e\fR \fIexec-mode\fR \fB-P\fR \fIprotocol-number\fR [\fB-s\fR]
+.fi
+
+.LP
+.nf
+\fBipsecalgs\fR \fB-e\fR \fIexec-mode\fR \fB-p\fR \fIprotocol-name\fR [\fB-s\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+Use the \fBipsecalgs\fR command to query and modify the IPsec protocol and
+algorithms stored in \fB/etc/inet/ipsecalgs\fR. You can use the \fBipsecalgs\fR
+command to do the following:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+list the currently defined IPsec protocols and algorithms
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+modify IPsec protocols definitions
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+modify IPsec algorithms definitions
+.RE
+.sp
+.LP
+\fBNever\fR edit the \fB/etc/inet/ipsecalgs\fR file manually. The valid IPsec
+protocols and algorithms are described by the ISAKMP DOI. See \fIRFC 2407\fR.
+In the general sense, a Domain of Interpretation (DOI) defines data formats,
+network traffic exchange types, and conventions for naming security-relevant
+information such as security policies or cryptographic algorithms and modes.
+For \fBipsecalgs\fR, the DOI defines naming and numbering conventions for
+algorithms and the protocols they belong to. These numbers are defined by the
+Internet Assigned Numbers Authority (IANA). Each algorithm belongs to a
+protocol. Algorithm information includes supported key lengths, block or MAC
+length, and the name of the cryptographic mechanism corresponding to that
+algorithm. This information is used by the IPsec modules, \fBipsecesp\fR(4P)
+and \fBipsecah\fR(4P), to determine the authentication and encryption
+algorithms that can be applied to IPsec traffic.
+.sp
+.LP
+The following protocols are predefined:
+.sp
+.ne 2
+.na
+\fB\fBIPSEC_PROTO_ESP\fR\fR
+.ad
+.RS 19n
+Defines the encryption algorithms (transforms) that can be used by IPsec to
+provide data confidentiality.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBIPSEC_PROTO_AH\fR\fR
+.ad
+.RS 19n
+Defines the authentication algorithms (transforms) that can be used by IPsec to
+provide authentication.
+.RE
+
+.sp
+.LP
+The mechanism name specified by an algorithm entry must correspond to a valid
+Solaris Cryptographic Framework mechanism. You can obtain the list of available
+mechanisms by using the \fBcryptoadm\fR(8) command.
+.sp
+.LP
+Applications can retrieve the supported algorithms and their associated
+protocols by using the functions \fBgetipsecalgbyname\fR(3NSL),
+\fBgetipsecalgbynum\fR(3NSL), \fBgetipsecprotobyname\fR(3NSL) and
+\fBgetipsecprotobynum\fR(3NSL).
+.sp
+.LP
+Modifications to the protocols and algorithm by default update only the
+contents of the \fB/etc/inet/ipsecalgs\fR configuration file. In order for the
+new definitions to be used for IPsec processing, the changes must be
+communicated to the kernel using the \fB-s\fR option. See \fBNOTES\fR for a
+description of how the \fBipsecalgs\fR configuration is synchronized with the
+kernel at system restart.
+.sp
+.LP
+When invoked without arguments, \fBipsecalgs\fR displays the list of mappings
+that are currently defined in \fB/etc/inet/ipsecalgs\fR. You can obtain the
+corresponding kernel table of protocols and algorithms by using the \fB-l\fR
+option.
+.SH OPTIONS
+.sp
+.LP
+\fBipsecalgs\fR supports the following options:
+.sp
+.ne 2
+.na
+\fB\fB-a\fR\fR
+.ad
+.RS 6n
+Adds an algorithm of the protocol specified by the \fB-P\fR option. The
+algorithm name(s) are specified with the \fB-n\fR option. The supported key
+lengths and block sizes are specified with the \fB-k\fR, \fB-i\fR, and \fB-b\fR
+options.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-b\fR\fR
+.ad
+.RS 6n
+Specifies the block or MAC lengths of an algorithm, in bytes. Set more than one
+block length by separating the values with commas.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-e\fR\fR
+.ad
+.RS 6n
+Designates the execution mode of cryptographic requests for the specified
+protocol in the absence of cryptographic hardware provider. See
+\fBcryptoadm\fR(8). \fIexec-mode\fR can be one of the following values:
+.sp
+.ne 2
+.na
+\fB\fBsync\fR\fR
+.ad
+.RS 9n
+Cryptographic requests are processed synchronously in the absence of a
+cryptographic hardware provider. This execution mode leads to better latency
+when no cryptographic hardware providers are available
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBasync\fR\fR
+.ad
+.RS 9n
+Cryptographic requests are always processed asynchronously in the absence of
+cryptographic hardware provider. This execution can improve the resource
+utilization on a multi-CPU system, but can lead to higher latency when no
+cryptographic hardware providers are available.
+.RE
+
+This option can be specified when defining a new protocol or to modify the
+execution mode of an existing protocol. By default, the \fBsync\fR execution
+mode is used in the absence of a cryptographic hardware provider.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR\fR
+.ad
+.RS 6n
+Used with the \fB-a\fR option to force the addition of an algorithm or protocol
+if an entry with the same name or number already exists.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-i\fR\fR
+.ad
+.RS 6n
+Specifies the valid key length increments in bits. This option must be used
+when the valid key lengths for an algorithm are specified by a range with the
+\fB-k\fR option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-K\fR\fR
+.ad
+.RS 6n
+Specifies the default key lengths for an algorithm, in bits. If the \fB-K\fR
+option is not specified, the minimum key length will be determined as follows:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+If the supported key lengths are specified by range, the default key length
+will be the minimum key length.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+If the supported key lengths are specified by enumeration, the default key
+length will be the first listed key length.
+.RE
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-k\fR\fR
+.ad
+.RS 6n
+Specifies the supported key lengths for an algorithm, in bits. You can
+designate the supported key lengths by enumeration or by range.
+.sp
+Without the \fB-i\fR option, \fB-k\fR specifies the supported key lengths by
+enumeration. In this case, \fIkeylen-list\fR consists of a list of one or more
+key lengths separated by commas, for example:
+.sp
+.in +2
+.nf
+128,192,256
+.fi
+.in -2
+.sp
+
+The listed key lengths need not be increasing, and the first listed key length
+will be used as the default key length for that algorithm unless the \fB-K\fR
+option is used.
+.sp
+With the \fB-i\fR option, \fB-k\fR specifies the range of supported key lengths
+for the algorithm. The minimum and maximum key lengths must be separated by a
+dash ('\fB-\fR') character, for example:
+.sp
+.in +2
+.nf
+32-448
+.fi
+.in -2
+.sp
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR\fR
+.ad
+.RS 6n
+Displays the kernel algorithm tables.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-m\fR\fR
+.ad
+.RS 6n
+Specifies the name of the cryptographic framework mechanism name corresponding
+to the algorithm. Cryptographic framework mechanisms are described in the
+\fBcryptoadm\fR(8) man page.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-N\fR\fR
+.ad
+.RS 6n
+Specifies an algorithm number. The algorithm number for a protocol must be
+unique. IANA manages the algorithm numbers. See \fIRFC 2407\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR\fR
+.ad
+.RS 6n
+Specifies one or more names for an algorithm. When adding an algorithm with the
+\fB-a\fR option, \fIalg-names\fR contains a string or a comma-separated list of
+strings, for example:
+.sp
+.in +2
+.nf
+des-cbs,des
+.fi
+.in -2
+.sp
+
+When used with the \fB-r\fR option to remove an algorithm, \fIalg-names\fR
+contains one of the valid algorithm names.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-P\fR\fR
+.ad
+.RS 6n
+Adds a protocol of the number specified by \fIprotocol-number\fR with the name
+specified by the \fB-p\fR option. This option is also used to specify an IPsec
+protocol when used with the \fB-a\fR and the \fB-R\fR options. Protocol numbers
+are managed by the IANA. See \fIRFC 2407\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR\fR
+.ad
+.RS 6n
+Specifies the name of the IPsec protocol.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-R\fR\fR
+.ad
+.RS 6n
+Removes and IPsec protocol from the algorithm table. The protocol can be
+specified by number by using the \fB-P\fR option or by name by using the
+\fB-p\fR option. The algorithms associated with the protocol are removed as
+well.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-r\fR\fR
+.ad
+.RS 6n
+Removes the mapping for an algorithm The algorithm can be specified by
+algorithm number using the \fB-N\fR option or by algorithm name using the
+\fB-A\fR option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR\fR
+.ad
+.RS 6n
+Synchronizes the kernel with the contents of \fB/etc/inet/ipsecalgs\fR. The
+contents of \fB/etc/inet/ipsecalgs\fR are always updated, but new information
+is not passed on to the kernel unless the \fB-s\fR is used. See \fBNOTES\fR for
+a description of how the \fBipsecalgs\fR configuration is synchronized with the
+kernel at system restart.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRAdding a Protocol for IPsec Encryption
+.sp
+.LP
+The following example shows how to add a protocol for IPsec encryption:
+
+.sp
+.in +2
+.nf
+example# \fBipsecalgs -P 3 -p "IPSEC_PROTO_ESP"\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRAdding the Blowfish Algorithm
+.sp
+.LP
+The following example shows how to add the Blowfish algorithm:
+
+.sp
+.in +2
+.nf
+example# \fBipsecalgs -a -P 3 -k 32-488 -K 128 -i 8 -n "blowfish" \e
+ -b 8 -N 7 -m CKM_BF_CBC\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRUpdating the Kernel Algorithm Table
+.sp
+.LP
+The following example updates the kernel algorithm table with the currently
+defined protocol and algorithm definitions:
+
+.sp
+.in +2
+.nf
+example# \fBsvcadm refresh ipsecalgs\fR
+.fi
+.in -2
+.sp
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/inet/ipsecalgs\fR\fR
+.ad
+.sp .6
+.RS 4n
+File that contains the configured IPsec protocols and algorithm definitions.
+Never edit this file manually.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR getipsecalgbyname (3NSL),
+.BR getipsecprotobyname (3NSL),
+.BR ipsecah (4P),
+.BR ipsecesp (4P),
+.BR ike.config (5),
+.BR attributes (7),
+.BR smf (7),
+.BR cryptoadm (8),
+.BR ipsecconf (8),
+.BR ipseckey (8),
+.BR svcadm (8)
+.sp
+.LP
+Piper, Derrell, \fIRFC 2407, The Internet IP Security Domain of Interpretation
+for ISAKMP\fR. Network Working Group. November 1998.
+.SH NOTES
+.sp
+.LP
+When protocols or algorithm definitions that are removed or altered, services
+that rely upon these definitions can become unavailable. For example, if the
+\fBIPSEC_PROTO_ESP\fR protocol is removed, then IPsec cannot encrypt and
+decrypt packets.
+.sp
+.LP
+Synchronization of the \fBipsecalgs\fR configuration with the kernel at system
+startup is provided by the following \fBsmf\fR(7) service:
+.sp
+.in +2
+.nf
+svc:/network/ipsec/ipsecalgs:default
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The IPsec services are delivered as follows:
+.sp
+.in +2
+.nf
+svc:/network/ipsec/policy:default (enabled)
+svc:/network/ipsec/ipsecalgs:default (enabled)
+svc:/network/ipsec/manual-key:default (disabled)
+svc:/network/ipsec/ike:default (disabled)
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Services that are delivered disabled are delivered that way because the system
+administrator must create configuration files for those services before
+enabling them. See \fBipseckey\fR(8) and \fBike.config\fR(5). The default
+policy for the \fBpolicy\fR service is to allow all traffic to pass without
+IPsec protection. See \fBipsecconf\fR(8).
+.sp
+.LP
+The correct administrative procedure is to create the configuration file for
+each service, then enable each service using \fBsvcadm\fR(8), as shown in the
+following example:
+.sp
+.in +2
+.nf
+example# \fBsvcadm enable ipsecalgs\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The service's status can be queried using the \fBsvcs\fR(1) command.
+.sp
+.LP
+If the \fBipsecalgs\fR configuration is modified, the new configuration should
+be resynchronized as follows:
+.sp
+.in +2
+.nf
+example# \fBsvcadm refresh ipsecalgs\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Administrative actions on this service, such as enabling, disabling,
+refreshing, and requesting restart can be performed using \fBsvcadm\fR(8). A
+user who has been assigned the authorization shown below can perform these
+actions:
+.sp
+.in +2
+.nf
+solaris.smf.manage.ipsec
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+See \fBauths\fR(1), \fBuser_attr\fR(5), \fBrbac\fR(7).
+.sp
+.LP
+The \fBipsecalgs\fR \fBsmf\fR(7) service does not have any user-configurable
+properties.
+.sp
+.LP
+The \fBsmf\fR(7) framework records any errors in the service-specific log file.
+Use any of the following commands to examine the \fBlogfile\fR property:
+.sp
+.in +2
+.nf
+example# \fBsvcs -l ipsecalgs\fR
+example# \fBsvcprop ipsecalgs\fR
+example# \fBsvccfg -s ipsecalgs listprop\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+This command requires \fBsys_ip_config\fR privilege to operate and thus can run
+in the global zone and in exclusive-IP zones. All shared-IP zones share the
+same available set of algorithms; however, you can use \fBipsecconf\fR(8) to
+set up system policy that uses differing algorithms for various shared-IP
+zones. All exclusive-IP zones have their own set of algorithms.
diff --git a/usr/src/man/man8/ipsecconf.8 b/usr/src/man/man8/ipsecconf.8
new file mode 100644
index 0000000000..713cb2dd60
--- /dev/null
+++ b/usr/src/man/man8/ipsecconf.8
@@ -0,0 +1,1879 @@
+'\" te
+.\" Copyright (C) 2008, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
+.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH IPSECCONF 8 "April 9, 2016"
+.SH NAME
+ipsecconf \- configure system wide IPsec policy
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/ipsecconf\fR
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/ipsecconf\fR \fB-a\fR \fIfile\fR [\fB-q\fR]
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/ipsecconf\fR \fB-c\fR \fIfile\fR
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/ipsecconf\fR \fB-d\fR [\fB-i\fR \fItunnel-name\fR] {\fIindex\fR, \fItunnel-name\fR, \fIindex\fR}
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/ipsecconf\fR \fB-f\fR [\fB-i\fR \fItunnel-name\fR]
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/ipsecconf\fR \fB-F\fR
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/ipsecconf\fR \fB-l\fR [\fB-i\fR \fItunnel-name\fR] [\fB-n\fR]
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/ipsecconf\fR \fB-L\fR [\fB-n\fR]
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBipsecconf\fR utility configures the IPsec policy for a host or for one
+of its tunnels. Once the policy is configured, all outbound and inbound
+datagrams are subject to policy checks as they exit and enter the host or
+tunnel. For the host policy, if no entry is found, no policy checks will be
+completed, and all the traffic will pass through. For a tunnel, if no entry is
+found and there is at least one entry for the tunnel, the traffic will
+automatically drop. The difference in behavior is because of the assumptions
+about IPsec tunnels made in many implementations. Datagrams that are being
+forwarded will not be subjected to policy checks that are added using this
+command. See \fBifconfig\fR(8) and \fBdladm\fR(8) for information on how to
+protect forwarded packets. Depending upon the match of the policy entry, a
+specific action will be taken.
+.sp
+.LP
+This command can be run only by superuser.
+.sp
+.LP
+Each entry can protect traffic in either one direction (requiring a pair of
+entries) or by a single policy entry which installs the needed symmetric
+\fBsadb\fR rules.
+.sp
+.LP
+When the command is issued without any arguments, the list of file policy
+entries loaded are shown. To display the (\fBspd p.e.\fRs) use the \fB-l\fR
+option. Both will display the index number for the entry. To specify a single
+tunnel's SPD, use the \fB-i\fR option in combination with \fB-l\fR. To specify
+all SPDs, both host and for all tunnels, use \fB-L\fR.
+.sp
+.LP
+Note, since one file policy entry (\fBFPE\fR) can generate multiple SPD pol
+entries (\fBSPE\fRs), the list of FPEs may not show all the actual entries.
+However, it is still useful in determining what what rules have been added to
+get the spd into its current state.
+.sp
+.LP
+You can use the \fB-d\fR option with the index to delete a given policy in the
+system. If the \fB-d\fR option removes an FPE entry that produces multiple
+SPEs, only then SPD with the same policy index as the FPE will be removed. This
+can produce a situation where there may be SPEs when there are no FPEs.
+.sp
+.LP
+As with \fB-l\fR, \fB-d\fR can use the \fB-i\fR flag to indicate a tunnel. An
+alternate syntax is to specify a tunnel name, followed by a comma (\fB,\fR),
+followed by an index. For example, \fBip.tun0,1\fR.
+.sp
+.LP
+With no options, the entries are displayed in the order that they were added,
+which is not necessarily the order in which the traffic match takes place.
+.sp
+.LP
+To view the order in which the traffic match will take place, use the \fB-l\fR
+option. The rules are ordered such that all bypass rules are checked first,
+then ESP rules, then AH rules. After that, they are checked in the order
+entered.
+.sp
+.LP
+Policy entries are not preserved across system restarts. Permanent policy
+entries should be added to \fB/etc/inet/ipsecinit.conf\fR. This file is read by
+the following \fBsmf\fR(7) service:
+.sp
+.in +2
+.nf
+svc:/network/ipsec/policy
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+See \fBNOTES\fR for more information on managing IPsec security policy and
+\fBSECURITY\fR for issues in securing \fB/etc/inet/ipsecinit.conf\fR.
+.SH OPTIONS
+.LP
+\fBipsecconf\fR supports the following options:
+.sp
+.ne 2
+.na
+\fB\fB-a\fR \fIfile\fR\fR
+.ad
+.sp .6
+.RS 4n
+Add the IPsec policy to the system as specified by each entry in the file. An
+IPsec configuration file contains one or more entries that specify the
+configuration. Once the policy is added, all outbound and inbound datagrams are
+subject to policy checks.
+.sp
+Entries in the files are described in the section below. Examples can be found
+in the section below.
+.sp
+Policy is latched for TCP/UDP sockets on which a \fBconnect\fR(3SOCKET) or
+\fBaccept\fR(3SOCKET) is issued. So, the addition of new policy entries may not
+affect such endpoints or sockets. However, the policy will be latched for a
+socket with an existing non-null policy. Thus, make sure that there are no
+preexisting connections that will be subject to checks by the new policy
+entries.
+.sp
+The feature of policy latching explained above may change in the future. It is
+not advisable to depend upon this feature.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-c\fR \fIfile\fR\fR
+.ad
+.sp .6
+.RS 4n
+Check the syntax of the configuration file and report any errors without making
+any changes to the policy. This option is useful when debugging configurations
+and when \fBsmf\fR(7) reports a configuration error. See \fBSECURITY\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-d\fR \fIindex\fR\fR
+.ad
+.sp .6
+.RS 4n
+Delete the host policy denoted by the index. The index is obtained by invoking
+\fBipsecconf\fR without any arguments, or with the \fB-l\fR option. See
+DESCRIPTION for more information. Once the entry is deleted, all outbound and
+inbound datagrams affected by this policy entry will not be subjected to policy
+checks. Be advised that with connections for which the policy has been latched,
+packets will continue to go out with the same policy, even if it has been
+deleted. It is advisable to use the \fB-l\fR option to find the correct policy
+index.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-d\fR \fIname\fR,\fIindex\fR\fR
+.ad
+.sp .6
+.RS 4n
+Delete the policy entry denoted by \fIindex\fR on a tunnel denoted by
+\fIname\fR. Since tunnels affect traffic that might originate off-node,
+latching does not apply as it does in the host policy case. Equivalent to:
+\fB-d\fR \fIindex\fR \fB-i\fR \fIname\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR\fR
+.ad
+.sp .6
+.RS 4n
+Flush all the policies in the system. Constraints are similar to the \fB-d\fR
+option with respect to latching and host versus per-tunnel behavior.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-F\fR\fR
+.ad
+.sp .6
+.RS 4n
+Flush all policies on all tunnels and also flush all host policies.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-i\fR \fIname\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify a tunnel interface name for use with the \fB-d\fR, \fB-f\fR, or
+\fB-l\fR flags.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR\fR
+.ad
+.sp .6
+.RS 4n
+Listing of a single policy table, defaulting to the host policy. When
+\fBipsecconf\fR is invoked without any arguments, a complete list of policy
+entries with indexes added by the user since boot is displayed. The current
+table can differ from the previous one if, for example, a multi-homed entry was
+added or policy reordering occurred, or if a single rule entry generates two
+\fBspd\fR rules In the case of a multi-homed entry, all the addresses are
+listed explicitly. If a mask was not specified earlier but was instead inferred
+from the address, it will be explicitly listed here. This option is used to
+view policy entries in the correct order. The outbound and inbound policy
+entries are listed separately.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-L\fR\fR
+.ad
+.sp .6
+.RS 4n
+Lists all policy tables, including host policy and all tunnel instances
+(including configured but unplumbed).
+.sp
+If \fB-i\fR is specified, \fB-L\fR lists the policy table for a specific tunnel
+interface.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR\fR
+.ad
+.sp .6
+.RS 4n
+Show network addresses, ports, protocols in numbers. The \fB-n\fR option may
+only be used with the \fB-l\fR option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-q\fR\fR
+.ad
+.sp .6
+.RS 4n
+Quiet mode. Suppresses the warning message generated when adding policies.
+.RE
+
+.SH OPERANDS
+.LP
+Each policy entry contains three parts specified as follows:
+.sp
+.in +2
+.nf
+{pattern} action {properties}
+.fi
+.in -2
+
+.sp
+.LP
+or
+.sp
+.in +2
+.nf
+{pattern} action {properties} ["or" action {properties}]*
+.fi
+.in -2
+
+.sp
+.LP
+Every policy entry begins on a new line and can span multiple lines. If an
+entry exceeds the length of a line, you should split it only within a "braced"
+section or immediately before the first (left-hand) brace of a braced section.
+Avoid using the backslash character (\e). See EXAMPLES.
+.sp
+.LP
+The \fIpattern\fR section, as shown in the syntax above, specifies the traffic
+pattern that should be matched against the outbound and inbound datagrams. If
+there is a match, a specific \fIaction\fR determined by the second argument
+will be taken, depending upon the \fIproperties\fR of the policy entry.
+.sp
+.LP
+If there is an \fBor\fR in the rule (multiple action-properties for a given
+pattern), a transmitter will use the first action-property pair that works,
+while a receiver will use any that are acceptable.
+.sp
+.LP
+\fIpattern\fR and \fIproperties\fR are name-value pairs where name and value
+are separated by a <space>, <tab> or <newline>. Multiple name-value pairs
+should be separated by <space>, <tab> or <newline>. The beginning and end of
+the pattern and properties are marked by \fB{\fR and \fB}\fR respectively.
+.sp
+.LP
+Files can contain multiple policy entries. An unspecified name-value pair in
+the \fIpattern\fR will be considered as a wildcard. Wildcard entries match any
+corresponding entry in the datagram.
+.sp
+.LP
+One thing to remember is that UDP port 500 is always bypassed regardless of any
+policy entries. This is a requirement for \fBin.iked\fR(8) to work.
+.sp
+.LP
+File can be commented by using a \fB#\fR as the first character. Comments may
+be inserted either at the beginning or the end of a line.
+.sp
+.LP
+The complete syntax of a policy entry is:
+.sp
+.in +2
+.nf
+policy ::= { <pattern1> } <action1> { <properties1> } |
+ { <pattern2> } <action2> { <properties2> }
+ [ 'or' <action2> { <properties2>} ]*
+
+ pattern1 ::= <pattern_name_value_pair1>*
+
+ pattern2 ::= <pattern_name_value_pair2>*
+
+ action1 ::= apply | permit | bypass | pass
+ action2 ::= bypass | pass | drop | ipsec
+
+ properties1 ::= {<prop_name_value_pair1>}
+ properties2 ::= {<prop_name_value_pair2>}
+
+
+ pattern_name_value_pair1 ::=
+ saddr <address>/<prefix> |
+ src <address>/<prefix> |
+ srcaddr <address>/<prefix> |
+ smask <mask> |
+ sport <port> |
+ daddr <address>/<prefix> |
+ dst <address>/<prefix> |
+ dstaddr <address>/<prefix> |
+ dmask <mask> |
+ dport <port> |
+ ulp <protocol> |
+ proto <protocol> |
+ type <icmp-type> |
+ type <number>-<number> |
+ code <icmp-code>
+ code <number>-<number>
+ tunnel <interface-name> |
+ negotiate <tunnel,transport>
+
+ pattern_name_value_pair2 ::=
+ raddr <address>/<prefix> |
+ remote <address>/<prefix> |
+ rport <port> |
+ laddr <address>/<prefix> |
+ local <address>/<prefix> |
+ lport <port> |
+ ulp <protocol> |
+ type <icmp-type> |
+ type <number>-<number> |
+ code <icmp-code> |
+ code <number>-<number>
+ proto <protocol> |
+ tunnel <interface-name> |
+ negotiate <tunnel,transport> |
+ dir <dir_val2>
+
+ address ::= <IPv4 dot notation> | <IPv6 colon notation> |
+ <String recognized by gethostbyname>|
+ <String recognized by getnetbyname>
+
+ prefix ::= <number>
+
+ mask ::= <0xhexdigit[hexdigit]> | <0Xhexdigit[hexdigit]> |
+ <IPv4 dot notation>
+
+ port ::= <number>| <String recognized by getservbyname>
+
+ protocol ::= <number>| <String recognized by getprotobyname>
+
+ prop_name_value_pair1 ::=
+ auth_algs <auth_alg> |
+ encr_algs <encr_alg> |
+ encr_auth_algs <auth_alg> |
+ sa <sa_val> |
+ dir <dir_val1>
+
+ prop_name_value_pair2 ::=
+ auth_algs <auth_alg> |
+ encr_algs <encr_alg> |
+ encr_auth_algs <auth_alg> |
+ sa <sa_val>
+
+ auth_alg ::= <auth_algname> ['(' <keylen> ')']
+ auth_algname ::= any | md5 | hmac-md5 | sha | sha1 | hmac-sha |
+ hmac-sha1 | hmac-sha256 | hmac-sha384 |
+ hmac-sha512 |<number>
+
+ encr_alg ::= <encr_algname> ['(' <keylen> ')']
+ encr_algname ::= any | aes | aes-cbc | des | des-cbc | 3des |
+ 3des-cbc | blowfish | blowfish-cbc | <number>
+
+ keylen ::= <number> | <number>'..' | '..'<number> | <number>'..' \e
+ <number>
+
+ sa_val ::= shared | unique
+
+ dir_val1 ::= out | in
+ dir_val2 ::= out | in | both
+
+ number ::= < 0 | 1 | 2 ... 9> <number>
+ icmp-type ::= <number> | unreach | echo | echorep | squench |
+ redir | timex | paramprob | timest | timestrep |
+ inforeq | inforep | maskreq | maskrep | unreach6 |
+ pkttoobig6 | timex6 | paramprob6 | echo6 | echorep6 |
+ router-sol6 | router-ad6 | neigh-sol6 | neigh-ad6 |
+ redir6
+
+ icmp-code ::= <number> | net-unr | host-unr | proto-unr | port-unr |
+ needfrag | srcfail | net-unk | host-unk | isolate |
+ net-prohib | host-prohib | net-tos | host-tos |
+ filter-prohib | host-preced | cutoff-preced |
+ no-route6 | adm-prohib6 | addr-unr6 | port-unr6 |
+ hop-limex6 | frag-re-timex6 | err-head6 | unrec-head6 |
+ unreq-opt6
+.fi
+.in -2
+
+.sp
+.LP
+Policy entries may contain the following (name value) pairs in the
+\fIpattern\fR field. Each (name value) pair may appear only once in given
+policy entry.
+.sp
+.ne 2
+.na
+\fBladdr/plen\fR
+.ad
+.br
+.na
+\fBlocal/plen\fR
+.ad
+.sp .6
+.RS 4n
+The value that follows is the local address of the datagram with the prefix
+length. Only plen leading bits of the source address of the packet will be
+matched. plen is optional. Local means destination on incoming and source on
+outgoing packets. The source address value can be a hostname as described in
+getaddrinfo(3SOCKET) or a network name as described in
+\fBgetnetbyname\fR(3XNET) or a host address or network address in the Internet
+standard dot notation. See \fBinet_addr\fR(3XNET). If a hostname is given and
+getaddrinfo(3SOCKET) returns multiple addresses for the host, then policy will
+be added for each of the addresses with other entries remaining the same.
+.RE
+
+.sp
+.ne 2
+.na
+\fBraddr/plen\fR
+.ad
+.br
+.na
+\fBremote/plen\fR
+.ad
+.sp .6
+.RS 4n
+The value that follows is the remote address of the datagram with the prefix
+length. Only plen leading bits of the remote address of the packet will be
+matched. plen is optional. Remote means source on incoming packets and
+destination on outgoing packets. The remote address value can be a hostname as
+described in \fBgetaddrinfo\fR(3SOCKET) or a network name as described in
+\fBgetnetbyname\fR(3XNET) or a host address or network address in the Internet
+standard dot notation. See \fBinet_addr\fR(3XNET). If a hostname is given and
+\fBgetaddrinfo\fR(3SOCKET) returns multiple addresses for the host, then policy
+will be added for each of the addresses with other entries remaining the same.
+.RE
+
+.sp
+.ne 2
+.na
+\fBsrc/plen\fR
+.ad
+.br
+.na
+\fBsrcaddr/plen\fR
+.ad
+.br
+.na
+\fBsaddr/plen\fR
+.ad
+.sp .6
+.RS 4n
+The value that follows is the source address of the datagram with the prefix
+length. Only \fIplen\fR leading bits of the source address of the packet will
+be matched. \fIplen\fR is optional.
+.sp
+The source address value can be a hostname as described in
+\fBgetaddrinfo\fR(3SOCKET) or a network name as described in
+\fBgetnetbyname\fR(3XNET) or a host address or network address in the Internet
+standard dot notation. See \fBinet_addr\fR(3XNET).
+.sp
+If a hostname is given and \fBgetaddrinfo\fR(3SOCKET) returns multiple
+addresses for the host, then policy will be added for each of the addresses
+with other entries remaining the same.
+.RE
+
+.sp
+.ne 2
+.na
+\fBdaddr/plen\fR
+.ad
+.br
+.na
+\fBdest/plen\fR
+.ad
+.br
+.na
+\fBdstaddr/plen\fR
+.ad
+.sp .6
+.RS 4n
+The value that follows is the destination address of the datagram with the
+prefix length. Only \fIplen\fR leading bits of the destination address of the
+packet will be matched. \fIplen\fR is optional.
+.sp
+See \fIsaddr\fR for valid values that can be given. If multiple source and
+destination addresses are found, then a policy entry that covers each source
+address-destination address pair will be added to the system.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIsmask\fR\fR
+.ad
+.sp .6
+.RS 4n
+For IPv4 only. The value that follows is the source mask. If prefix length is
+given with \fIsaddr\fR, this should not be given. This can be represented
+either in hexadecimal number with a leading \fB0x\fR or \fB0X\fR, for example,
+\fB0xffff0000\fR, \fB0Xffff0000\fR or in the Internet decimal dot notation, for
+example, \fB255.255.0.0\fR and \fB255.255.255.0\fR. The mask should be
+contiguous and the behavior is not defined for non-contiguous masks.
+.sp
+\fIsmask\fR is considered only when \fIsaddr\fR is given.
+.sp
+For both IPv4 and IPv6 addresses, the same information can be specified as a
+\fIslen\fR value attached to the \fIsaddr\fR parameter.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIdmask\fR\fR
+.ad
+.sp .6
+.RS 4n
+Analogous to \fIsmask.\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIlport\fR\fR
+.ad
+.sp .6
+.RS 4n
+The value that follows is the local port of the datagram. This can be either a
+port number or a string searched with a NULL proto argument, as described in
+getservbyname(3XNET)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIrport\fR\fR
+.ad
+.sp .6
+.RS 4n
+The value that follows is the remote port of the datagram. This can be either a
+port number or a string searched with a NULL proto argument, as described in
+getservbyname(3XNET)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIsport\fR\fR
+.ad
+.sp .6
+.RS 4n
+The value that follows is the source port of the datagram. This can be either a
+port number or a string searched with a \fBNULL\fR proto argument, as described
+in \fBgetservbyname\fR(3XNET)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIdport\fR\fR
+.ad
+.sp .6
+.RS 4n
+The value that follows is the destination port of the datagram. This can be
+either a port number or a string as described in \fBgetservbyname\fR(3XNET)
+searched with \fBNULL\fR proto argument.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBproto\fR \fIulp\fR\fR
+.ad
+.sp .6
+.RS 4n
+The value that follows is the Upper Layer Protocol that this entry should be
+matched against. It could be a number or a string as described in
+\fBgetprotobyname\fR(3XNET). If no smask or plen is specified, a plen of 32 for
+IPv4 or 128 for IPv6 will be used, meaning a host. If the \fIulp\fR is
+\fBicmp\fR or \fBipv6-icmp\fR, any action applying IPsec must be the same for
+all \fBicmp\fR rules.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBtype\fR \fInum\fR or \fInum\fR-\fInum\fR\fR
+.ad
+.sp .6
+.RS 4n
+The value that follows is the ICMP type that this entry should be matched
+against. \fBtype\fR must be a number from 0 to 255, or one of the appropriate
+\fBicmp-type\fR keywords. Also, \fIulp\fR must be present and must specify
+either \fBicmp\fR or \fBipv6-icmp\fR. A range of types can be specified with a
+hyphen separating numbers.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcode\fR \fInum\fR or \fInum\fR-\fInum\fR\fR
+.ad
+.sp .6
+.RS 4n
+The value that follows is the ICMP code that this entry should be matched
+against. The value following the keyword \fBcode\fR must be a number from 0 to
+254 or one of the appropriate \fBicmp-code\fR keywords. Also, \fBtype\fR must
+be present. A range of codes can be specified with a hyphen separating numbers.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBtunnel\fR \fIname\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies a tunnel network interface, as configured with \fBifconfig\fR(8). If
+a tunnel of \fIname\fR does not yet exist, the policy entries are added anyway,
+and joined with the tunnel state when it is created. If a tunnel is unplumbed,
+its policy entries disappear.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnegotiate\fR \fItunnel\fR\fR
+.ad
+.br
+.na
+\fB\fBnegotiate\fR \fItransport\fR\fR
+.ad
+.sp .6
+.RS 4n
+For per-tunnel security, specify whether the IPsec SAs protecting the traffic
+should be tunnel-mode SAs or transport-mode SAs. If transport-mode SAs are
+specified, no addresses can appear in the policy entry. Transport-mode is
+backward compatible with Solaris 9, and tunnel IPsec policies configured with
+\fBifconfig\fR(8) will show up as transport mode entries here.
+.RE
+
+.sp
+.LP
+Policy entries may contain the following (name-value) pairs in the properties
+field. Each (name-value) pair may appear only once in a given policy entry.
+.sp
+.ne 2
+.na
+\fB\fBauth_algs\fR\fR
+.ad
+.sp .6
+.RS 4n
+An acceptable value following this implies that IPsec \fBAH\fR header will be
+present in the outbound datagram. Values following this describe the
+authentication algorithms that will be used while applying the IPsec \fBAH\fR
+on outbound datagrams and verified to be present on inbound datagrams. See
+\fIRFC 2402\fR.
+.sp
+This entry can contain either a string or a decimal number.
+.sp
+.ne 2
+.na
+\fB\fBstring\fR\fR
+.ad
+.sp .6
+.RS 4n
+This should be either \fBMD5\fR or \fBHMAC-MD5\fR denoting the \fBHMAC-MD5\fR
+algorithm as described in \fIRFC 2403\fR, and \fBSHA1\fR, or \fBHMAC-SHA1\fR or
+\fBSHA\fR or \fBHMAC-SHA\fR denoting the \fBHMAC-SHA\fR algorithm described in
+\fIRFC 2404\fR. You can use the \fBipsecalgs\fR(8) command to obtain the
+complete list of authentication algorithms.
+.sp
+The string can also be \fBANY\fR, which denotes no-preference for the
+algorithm. Default algorithms will be chosen based upon the \fBSA\fRs available
+at this time for manual \fBSA\fRs and the key negotiating daemon for automatic
+\fBSA\fRs. Strings are not case-sensitive.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnumber\fR\fR
+.ad
+.sp .6
+.RS 4n
+A number in the range 1-255. This is useful when new algorithms can be
+dynamically loaded.
+.RE
+
+If \fIauth_algs\fR is not present, the \fBAH\fR header will not be present in
+the outbound datagram, and the same will be verified for the inbound datagram.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBencr_algs\fR\fR
+.ad
+.sp .6
+.RS 4n
+An acceptable value following this implies that IPsec \fBESP\fR header will be
+present in the outbound datagram. The value following this describes the
+encryption algorithms that will be used to apply the IPsec \fBESP\fR protocol
+to outbound datagrams and verify it to be present on inbound datagrams. See
+\fIRFC 2406\fR.
+.sp
+This entry can contain either a string or a decimal number. Strings are not
+case-sensitive.
+.sp
+.ne 2
+.na
+\fB\fBstring\fR\fR
+.ad
+.sp .6
+.RS 4n
+Can be one of the following:
+.sp
+
+.sp
+.TS
+c c c
+l l l .
+string value: Algorithm Used: See RFC:
+_
+DES or DES-CBC DES-CBC 2405
+3DES or 3DES-CBC 3DES-CBC 2451
+BLOWFISH or BLOWFISH-CBC BLOWFISH-CBC 2451
+AES or AES-CBC AES-CBC 2451
+.TE
+
+You can use the \fBipsecalgs\fR(8) command to obtain the complete list of
+authentication algorithms.
+.sp
+The value can be \fBNULL\fR, which implies a \fBNULL\fR encryption, pursuant to
+\fIRFC 2410\fR. This means that the payload will not be encrypted. The string
+can also be \fBANY\fR, which indicates no-preference for the algorithm. Default
+algorithms will be chosen depending upon the SAs available at the time for
+manual SAs and upon the key negotiating daemon for automatic SAs. Strings are
+not case-sensitive.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnumber\fR\fR
+.ad
+.sp .6
+.RS 4n
+A decimal number in the range 1-255. This is useful when new algorithms can be
+dynamically loaded.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBencr_auth_algs\fR\fR
+.ad
+.sp .6
+.RS 4n
+An acceptable value following \fBencr_auth_algs\fR implies that the IPsec
+\fBESP\fR header will be present in the outbound datagram. The values following
+\fBencr_auth_algs\fR describe the authentication algorithms that will be used
+while applying the IPsec \fBESP\fR protocol on outbound datagrams and verified
+to be present on inbound datagrams. See \fIRFC 2406\fR. This entry can contain
+either a string or a number. Strings are case-insensitive.
+.sp
+.ne 2
+.na
+\fB\fBstring\fR\fR
+.ad
+.sp .6
+.RS 4n
+Valid values are the same as the ones described for \fBauth_algs\fR above.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnumber\fR\fR
+.ad
+.sp .6
+.RS 4n
+This should be a decimal number in the range 1-255. This is useful when new
+algorithms can be dynamically loaded.
+.RE
+
+If \fBencr_algs\fR is present and \fBencr_auth_algs\fR is not present in a
+policy entry, the system will use an \fBESP\fR \fBSA\fR regardless of whether
+the \fBSA\fR has an authentication algorithm or not.
+.sp
+If \fBencr_algs\fR is not present and \fBencr_auth_algs\fR is present in a
+policy entry, null encryption will be provided, which is equivalent to
+\fBencr_algs\fR with \fBNULL\fR, for outbound and inbound datagrams.
+.sp
+If both \fBencr_algs\fR and \fBencr_auth_algs\fR are not present in a policy
+entry, \fBESP\fR header will not be present for outbound datagrams and the same
+will be verified for inbound datagrams.
+.sp
+If both \fBencr_algs\fR and \fBencr_auth_algs\fR are present in a policy entry,
+\fBESP\fR header with integrity checksum will be present on outbound datagrams
+and the same will be verified for inbound datagrams.
+.sp
+For \fBencr_algs\fR, \fBencr_auth_algs\fR, and \fBauth_algs\fR a key length
+specification may be present. This is either a single value specifying the only
+valid key length for the algorithm or a range specifying the valid minimum
+and/or maximum key lengths. Minimum or maximum lengths may be omitted.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdir\fR\fR
+.ad
+.sp .6
+.RS 4n
+Values following this decides whether this entry is for outbound or inbound
+datagram. Valid values are strings that should be one of the following:
+.sp
+.ne 2
+.na
+\fB\fBout\fR\fR
+.ad
+.sp .6
+.RS 4n
+This means that this policy entry should be considered only for outbound
+datagrams.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBin\fR\fR
+.ad
+.sp .6
+.RS 4n
+This means that this policy entry should be considered only for inbound
+datagrams.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBboth\fR\fR
+.ad
+.sp .6
+.RS 4n
+This means that this policy entry should be considered for both inbound and
+outbound datagrams
+.RE
+
+This entry is not needed when the action is "apply", "permit" or "ipsec". But
+if it is given while the action is "apply" or "permit", it should be "out" or
+"in" respectively. This is mandatory when the action is "bypass".
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsa\fR\fR
+.ad
+.sp .6
+.RS 4n
+Values following this decide the attribute of the security association. Value
+indicates whether a unique security association should be used or any existing
+\fBSA\fR can be used. If there is a policy requirement, \fBSA\fRs are created
+dynamically on the first outbound datagram using the key management daemon.
+Static \fBSA\fRs can be created using \fBipseckey\fR(8). The values used here
+determine whether a new \fBSA\fR will be used/obtained. Valid values are
+strings that could be one of the following:
+.sp
+.ne 2
+.na
+\fB\fBunique\fR\fR
+.ad
+.sp .6
+.RS 4n
+Unique Association. A new/unused association will be obtained/used for packets
+matching this policy entry. If an \fBSA\fR that was previously used by the same
+5 tuples, that is, {Source address, Destination address, Source port,
+Destination Port, Protocol (for example, \fBTCP\fR/\fBUDP\fR)} exists, it will
+be reused. Thus uniqueness is expressed by the 5 tuples given above. The
+security association used by the above 5 tuples will not be used by any other
+socket. For inbound datagrams, uniqueness will not be verified.
+.sp
+For tunnel-mode tunnels, \fBunique\fR is ignored. SAs are assigned per-rule in
+tunnel-mode tunnels. For transport-mode tunnels, \fBunique\fR is implicit,
+because the enforcement happens only on the outer-packet addresses and protocol
+value of either IPv4-in-IP or IPv6-in-IP.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBshared\fR\fR
+.ad
+.sp .6
+.RS 4n
+Shared association. If an \fBSA\fR exists already for this source-destination
+pair, it will be used. Otherwise a new \fBSA\fR will be obtained. This is the
+default.
+.RE
+
+This is mandatory only for outbound policy entries and should not be given for
+entries whose action is "bypass". If this entry is not given for inbound
+entries, for example, when "dir" is in or "action" is permit, it will be
+assumed to be shared.
+.RE
+
+.sp
+.LP
+Action follows the pattern and should be given before properties. It should be
+one of the following and this field is mandatory.
+.sp
+.ne 2
+.na
+\fB\fBipsec\fR\fR
+.ad
+.sp .6
+.RS 4n
+Use IPsec for the datagram as described by the properties, if the pattern
+matches the datagram. If ipsec is given without a dir spec , the pattern is
+matched to incoming and outgoing datagrams.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBapply\fR\fR
+.ad
+.sp .6
+.RS 4n
+Apply IPsec to the datagram as described by the properties, if the pattern
+matches the datagram. If \fBapply\fR is given, the pattern is matched only on
+the outbound datagram.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpermit\fR\fR
+.ad
+.sp .6
+.RS 4n
+Permit the datagram if the pattern matches the incoming datagram and satisfies
+the constraints described by the properties. If it does not satisfy the
+properties, discard the datagram. If \fBpermit\fR is given, the pattern is
+matched only for inbound datagrams.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBbypass\fR\fR
+.ad
+.br
+.na
+\fB\fBpass\fR\fR
+.ad
+.sp .6
+.RS 4n
+Bypass any policy checks if the pattern matches the datagram. \fBdir\fR in the
+properties decides whether the check is done on outbound or inbound datagrams.
+All the \fBbypass\fR entries are checked before checking with any other policy
+entry in the system. This has the highest precedence over any other entries.
+\fBdir\fR is the only field that should be present when action is \fBbypass\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdrop\fR\fR
+.ad
+.sp .6
+.RS 4n
+Drop any packets that match the pattern.
+.RE
+
+.sp
+.LP
+If the file contains multiple policy entries, for example, they are assumed to
+be listed in the order in which they are to be applied. In cases of multiple
+entries matching the outbound and inbound datagram, the first match will be
+taken. The system will reorder the policy entry, that is, add the new entry
+before the old entry, only when:
+.sp
+.LP
+The level of protection is "stronger" than the old level of protection.
+.sp
+.LP
+Currently, strength is defined as:
+.sp
+.in +2
+.nf
+AH and ESP > ESP > AH
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The standard uses of \fBAH\fR and \fBESP\fR were what drove this ranking of
+"stronger". There are flaws with this. \fBESP \fR can be used either without
+authentication, which will allow cut-and-paste or replay attacks, or without
+encryption, which makes it equivalent or slightly weaker than \fBAH\fR. An
+administrator should take care to use \fBESP\fR properly. See
+\fBipsecesp\fR(4P) for more details.
+.sp
+.LP
+If the new entry has \fBbypass\fR as action, \fBbypass\fR has the highest
+precedence. It can be added in any order, and the system will still match all
+the \fBbypass\fR entries before matching any other entries. This is useful for
+key management daemons which can use this feature to bypass IPsec as it
+protects its own traffic.
+.sp
+.LP
+Entries with both \fBAH\fR (\fBauth_algs\fR present in the policy entry) and
+\fBESP\fR (\fBencr_auth_algs\fR or \fBencr_auth_algs\fR present in the policy
+entry) protection are ordered after all the entries with \fBAH\fR and \fBESP\fR
+and before any \fBAH\fR-only and \fBESP\fR-only entries. In all other cases the
+order specified by the user is not modified, that is, newer entries are added
+at the end of all the old entries. See .
+.sp
+.LP
+A new entry is considered duplicate of the old entry if an old entry matches
+the same traffic pattern as the new entry. See for information on duplicates.
+.SH SECURITY
+.LP
+If, for example, the policy file comes over the wire from an \fBNFS\fR mounted
+file system, an adversary can modify the data contained in the file, thus
+changing the policy configured on the machine to suit his needs. Administrators
+should be cautious about transmitting a copy of the policy file over a network.
+.sp
+.LP
+To prevent non-privileged users from modifying the security policy, ensure that
+the configuration file is writable only by trusted users.
+.sp
+.LP
+The configuration file is defined by a property of the \fBpolicy\fR
+\fBsmf\fR(7) service. The default configuration file, is
+\fB/etc/inet/ipsecinit.conf\fR. This can be changed using the \fBsvcprop\fR(1)
+command. See \fBNOTES\fR for more details.
+.sp
+.LP
+The policy description language supports the use of tokens that can be resolved
+by means of a name service, using functions such as \fBgethostbyname\fR(3NSL).
+While convenient, these functions are only secure as the name service the
+system is configured to use. Great care should be taken to secure the name
+service if it is used to resolve elements of the security policy.
+.sp
+.LP
+If your source address is a host that can be looked up over the network and
+your naming system itself is compromised, then any names used will no longer be
+trustworthy.
+.sp
+.LP
+If the name switch is configured to use a name service that is not local to the
+system, bypass policy entries might be required to prevent the policy from
+preventing communication to the name service. See \fBnsswitch.conf\fR(5).
+.sp
+.LP
+Policy is latched for \fBTCP/UDP\fR sockets on which a \fBconnect\fR(3SOCKET)
+or \fBaccept\fR(3SOCKET) has been issued. Adding new policy entries will not
+have any effect on them. This feature of latching may change in the future. It
+is not advisable to depend upon this feature.
+.sp
+.LP
+The \fBipsecconf\fR command can only be run by a user who has sufficient
+privilege to open the \fBpf_key\fR(4P) socket. The appropriate privilege can be
+assigned to a user with the Network IPsec Management profile. See
+\fBprofiles\fR(1), \fBrbac\fR(7), \fBprof_attr\fR(5).
+.sp
+.LP
+Make sure to set up the policies before starting any communications, as
+existing connections may be affected by the addition of new policy entries.
+Similarly, do not change policies in the middle of a communication.
+.sp
+.LP
+Note that certain \fBndd\fR tunables affect how policies configured with this
+tool are enforced; see \fBipsecesp\fR(4P) for more details.
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRProtecting Outbound \fBTCP\fR Traffic With \fBESP\fR and the
+\fBAES\fR Algorithm
+.sp
+.LP
+The following example specified that any \fBTCP\fR packet from spiderweb to
+arachnid should be encrypted with \fBAES\fR, and the \fB SA\fR could be a
+shared one. It does not verify whether or not the inbound traffic is encrypted.
+
+.sp
+.in +2
+.nf
+#
+# Protect the outbound TCP traffic between hosts spiderweb
+# and arachnid with ESP and use AES algorithm.
+#
+{
+ laddr spiderweb
+ raddr arachnid
+ ulp tcp
+ dir out
+} ipsec {
+ encr_algs AES
+}
+.fi
+.in -2
+
+.LP
+\fBExample 2 \fRVerifying Whether or Not Inbound Traffic is Encrypted
+.sp
+.LP
+Example 1 does not verify whether or not the inbound traffic is encrypted. The
+entry in this example protects inbound traffic:
+
+.sp
+.in +2
+.nf
+#
+# Protect the TCP traffic on inbound with ESP/DES from arachnid
+# to spiderweb
+#
+{
+ laddr spiderweb
+ raddr arachnid
+ ulp tcp
+ dir in
+} ipsec {
+ encr_algs AES
+}
+.fi
+.in -2
+
+.sp
+.LP
+\fBsa\fR can be absent for inbound policy entries as it implies that it can be
+a shared one. Uniqueness is not verified on inbound. Note that in both the
+above entries, authentication was never specified. This can lead to cut and
+paste attacks. As mentioned previously, though the authentication is not
+specified, the system will still use an \fBESP\fR \fBSA\fR with
+\fBencr_auth_alg\fR specified, if it was found in the \fBSA\fR tables.
+
+.LP
+\fBExample 3 \fRProtecting All Traffic Between Two Hosts
+.sp
+.LP
+The following example protects both directions at once:
+
+.sp
+.in +2
+.nf
+{
+ laddr spiderweb
+ raddr arachnid
+ ulp tcp
+} ipsec {
+ encr_algs AES
+}
+.fi
+.in -2
+
+.LP
+\fBExample 4 \fRAuthenticating All Inbound Traffic to the Telnet Port
+.sp
+.LP
+This entry specifies that any inbound datagram to telnet port should come in
+authenticated with the SHA1 algorithm. Otherwise the datagram should not be
+permitted. Without this entry, traffic destined to port number 23 can come in
+clear. \fBsa\fR is not specified, which implies that it is shared. This can be
+done only for inbound entries. You need to have an equivalent entry to protect
+outbound traffic so that the outbound traffic is authenticated as well, remove
+the dir.
+
+.sp
+.in +2
+.nf
+#
+# All the inbound traffic to the telnet port should be
+# authenticated.
+#
+{
+ lport telnet
+ dir in
+} ipsec {
+ auth_algs sha1
+}
+.fi
+.in -2
+
+.LP
+\fBExample 5 \fRVerifying Inbound Traffic is Null-Encrypted
+.sp
+.LP
+The first entry specifies that any packet with address host-B should not be
+checked against any policies. The second entry specifies that all inbound
+traffic from network-B should be encrypted with a \fBNULL\fR encryption
+algorithm and the \fBMD5\fR authentication algorithm. \fBNULL\fR encryption
+implies that \fBESP\fR header will be used without encrypting the datagram. As
+the first entry is \fBbypass\fR it need not be given first in order, as
+\fBbypass\fR entries have the highest precedence. Thus any inbound traffic will
+be matched against all \fBbypass\fR entries before any other policy entries.
+
+.sp
+.in +2
+.nf
+#
+# Make sure that all inbound traffic from network-B is NULL
+# encrypted, but bypass for host-B alone from that network.
+# Add the bypass first.
+{
+raddr host-B
+ dir in
+} bypass {}
+
+# Now add for network-B.
+{
+ raddr network-B/16
+ dir in
+} ipsec {
+encr_algs NULL
+encr_auth_algs md5
+}
+.fi
+.in -2
+
+.LP
+\fBExample 6 \fREntries to Bypass Traffic from IPsec
+.sp
+.LP
+The first two entries provide that any datagram leaving the machine with source
+port 53 or coming into port number 53 should not be subjected to IPsec policy
+checks, irrespective of any other policy entry in the system. Thus the latter
+two entries will be considered only for ports other than port number 53.
+
+.sp
+.in +2
+.nf
+#
+# Bypass traffic for port no 53
+ #
+{lport 53} bypass {}
+{rport 53} bypass {}
+{raddr spiderweb } ipsec {encr_algs any sa unique}
+.fi
+.in -2
+
+.LP
+\fBExample 7 \fRProtecting Outbound Traffic
+.sp
+.in +2
+.nf
+ #
+ # Protect the outbound traffic from all interfaces.
+ #
+{raddr spiderweb dir out} ipsec {auth_algs any sa unique}
+.fi
+.in -2
+
+.sp
+.LP
+If the \fBgethostbyname\fR(3XNET) call for spiderweb yields multiple addresses,
+multiple policy entries will be added for all the source address with the same
+properties.
+
+.sp
+.in +2
+.nf
+{
+ laddr arachnid
+ raddr spiderweb
+ dir in
+} ipsec {auth_algs any sa unique}
+.fi
+.in -2
+
+.sp
+.LP
+If the \fBgethostbyname\fR(3XNET) call for spiderweb and the
+\fBgethostbyname\fR(3XNET) call for arachnid yield multiple addresses, multiple
+policy entries will be added for each (\fBsaddr\fR \fBdaddr\fR) pair with the
+same properties. Use \fBipsecconf\fR \fB-l\fR to view all the policy entries
+added.
+
+.LP
+\fBExample 8 \fRBypassing Unauthenticated Traffic
+.sp
+.in +2
+.nf
+#
+# Protect all the outbound traffic with ESP except any traffic
+# to network-b which should be authenticated and bypass anything
+# to network-c
+#
+{raddr network-b/16 dir out} ipsec {auth_algs any}
+{dir out} ipsec {encr_algs any}
+{raddr network-c/16 dir out} bypass {} # NULL properties
+.fi
+.in -2
+
+.sp
+.LP
+Note that \fBbypass\fR can be given anywhere and it will take precedence over
+all other entries. \fBNULL\fR pattern matches all the traffic.
+
+.LP
+\fBExample 9 \fREncrypting IPv6 Traffic with 3DES and MD5
+.sp
+.LP
+The following entry on the host with the link local address
+\fBfe80::a00:20ff:fe21:4483\fR specifies that any outbound traffic between the
+hosts with IPv6 link-local addresses \fBfe80::a00:20ff:fe21:4483\fR and
+\fBfe80::a00:20ff:felf:e346\fR must be encrypted with \fB3DES\fR and \fBMD5.\fR
+
+.sp
+.in +2
+.nf
+{
+ laddr fe80::a00:20ff:fe21:4483
+ raddr fe80::a00:20ff:felf:e346
+ dir out
+} ipsec {
+ encr_algs 3DES
+ encr_auth_algs MD5
+}
+.fi
+.in -2
+
+.LP
+\fBExample 10 \fRVerifying IPv6 Traffic is Authenticated with SHA1
+.sp
+.LP
+The following two entries require that all IPv6 traffic to and from the IPv6
+site-local network \fBfec0:abcd::0/32\fR be authenticated with \fBSHA1\fR.
+
+.sp
+.in +2
+.nf
+{raddr fec0:abcd::0/32} ipsec { auth_algs SHA1 }
+.fi
+.in -2
+
+.LP
+\fBExample 11 \fRKey Lengths
+.sp
+.in +2
+.nf
+# use aes at any key length
+{raddr spiderweb} ipsec {encr_algs aes}
+
+# use aes with a 192 bit key
+{raddr spiderweb} ipsec {encr_algs aes(192)}
+
+# use aes with any key length up to 192 bits
+# i.e. 192 bits or less
+{raddr spiderweb} ipsec {encr_algs aes(..192)}
+
+# use aes with any key length of 192 or more
+# i.e. 192 bits or more
+{raddr spiderweb} ipsec {encr_algs aes(192..)}
+
+#use aes with any key from 192 to 256 bits
+{raddr spiderweb} ipsec {encr_algs aes(192..256)}
+
+#use any algorithm with a key of 192 bits or longer
+{raddr spiderweb} ipsec {encr_algs any(192..)}
+.fi
+.in -2
+
+.LP
+\fBExample 12 \fRCorrect and Incorrect Policy Entries
+.sp
+.LP
+The following are examples of correctly formed policy entries:
+
+.sp
+.in +2
+.nf
+{ raddr that_system rport telnet } ipsec { encr_algs 3des encr_auth_algs
+sha1 sa shared}
+
+{
+ raddr that_system
+ rport telnet
+} ipsec {
+ encr_algs 3des
+ encr_auth_algs sha1
+ sa shared
+}
+
+{ raddr that_system rport telnet } ipsec
+ { encr_algs 3des encr_auth_algs sha1 sa shared}
+
+{ raddr that_system rport telnet } ipsec
+ { encr_algs 3des encr_auth_algs sha1 sa shared} or ipsec
+ { encr_algs aes encr_auth_algs sha1 sa shared}
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+\&...and the following is an incorrectly formed entry:
+
+.sp
+.in +2
+.nf
+{ raddr that_system rport telnet } ipsec
+ { encr_algs 3des encr_auth_algs sha1 sa shared}
+ or ipsec { encr_algs aes encr_auth_algs sha1 sa shared}
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+In the preceding, incorrect entry, note that the third line begins with "\fBor
+ipsec\fR". Such an entry causes \fBipsecconf\fR to return an error.
+
+.LP
+\fBExample 13 \fRAllowing Neighbor Discovery to Occur in the Clear
+.sp
+.LP
+The following two entries require that all IPv6 traffic to and from the IPv6
+site-local network \fBfec0:abcd::0/32\fR be authenticated with SHA1. The second
+entry allows neighbor discovery to operate correctly.
+
+.sp
+.in +2
+.nf
+{raddr fec0:abcd::0/32} ipsec { auth_algs SHA1 }
+{raddr fec0:abcd::0/32 ulp ipv6-icmp type 133-137 dir both }
+ pass { }
+.fi
+.in -2
+
+.LP
+\fBExample 14 \fRUsing "or"
+.sp
+.LP
+The following entry allows traffic using the AES or Blowfish algorithms from
+the remote machine spiderweb:
+
+.sp
+.in +2
+.nf
+{raddr spiderweb} ipsec {encr_algs aes} or ipsec {encr_algs blowfish}
+.fi
+.in -2
+
+.LP
+\fBExample 15 \fRConfiguring a Tunnel to be Backward-Compatible with Solaris 9
+.sp
+.LP
+The following example is equivalent to "\fBencr_algs aes encr_auth_algs md5\fR"
+in \fBifconfig\fR(8):
+
+.sp
+.in +2
+.nf
+{tunnel ip.tun0 negotiate transport} ipsec {encr_algs aes
+ encr_auth_algs md5}
+.fi
+.in -2
+
+.LP
+\fBExample 16 \fRConfiguring a Tunnel to a VPN client with an Assigned Address
+.sp
+.LP
+The following example assumes a distinct "inside" network with its own
+topology, such that a client's default route goes "inside".
+
+.sp
+.in +2
+.nf
+# Unlike route(8), the default route has to be spelled-out.
+{tunnel ip.tun0 negotiate tunnel raddr client-inside/32
+laddr 0.0.0.0/0} ipsec {encr_algs aes encr_auth_algs sha1}
+.fi
+.in -2
+
+.LP
+\fBExample 17 \fRTransit VPN router between Two Tunnelled Subnets and a Third
+.sp
+.LP
+The following example specifies a configuration for a VPN router that routes
+between two tunnelled subnets and a third subnet that is on-link. Consider
+remote-site A, remote-site B, and local site C, each with a \fB/24\fR address
+allocation.
+
+.sp
+.in +2
+.nf
+# ip.tun0 between me (C) and remote-site A.
+# Cover remote-site A to remote-side B.
+{tunnel ip.tun0 negotiate tunnel raddr A-prefix/24 laddr
+B-prefix/24} ipsec {encr_algs 3des encr_auth_algs md5}
+
+# Cover remote-site A traffic to my subnet.
+{tunnel ip.tun0 negotiate tunnel raddr A-prefix/24 laddr
+C-prefix/24} ipsec {encr_algs 3des encr_auth_algs md5}
+
+# ip.tun1 between me (C) and remote-site B.
+# Cover remote-site B to remote-site A.
+{tunnel ip.tun1 negotiate tunnel raddr B-prefix/24 laddr
+A-prefix/24} ipsec {encr_algs aes encr_auth_algs sha1}
+
+# Cover remote-site B traffic to my subnet.
+{tunnel ip.tun1 negotiate tunnel raddr B-prefix/24 laddr
+C-prefix/24} ipsec {encr_algs aes encr_auth_algs md5}
+.fi
+.in -2
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/var/run/ipsecpolicy.conf\fR\fR
+.ad
+.sp .6
+.RS 4n
+Cache of IPsec policies currently configured for the system, maintained by
+\fBipsecconf\fR command. Do not edit this file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/inet/ipsecinit.conf\fR\fR
+.ad
+.sp .6
+.RS 4n
+File containing IPsec policies to be installed at system restart by the
+\fBpolicy\fR \fBsmf\fR(7) service. See \fBNOTES\fR for more information.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/inet/ipsecinit.sample\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sample input file for \fBipseconf\fR.
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Committed
+.TE
+
+.SH SEE ALSO
+.LP
+.BR auths (1),
+.BR profiles (1),
+.BR svcprop (1),
+.BR svcs (1),
+.BR gethostbyname (3NSL),
+.BR accept (3SOCKET),
+.BR connect (3SOCKET),
+.BR getaddrinfo (3SOCKET),
+.BR socket (3SOCKET),
+.BR gethostbyname (3XNET),
+.BR getnetbyname (3XNET),
+.BR getprotobyname (3XNET),
+.BR getservbyname (3XNET),
+.BR ipsecah (4P),
+.BR ipsecesp (4P),
+.BR pf_key (4P),
+.BR ike.config (5),
+.BR nsswitch.conf (5),
+.BR prof_attr (5),
+.BR user_attr (5),
+.BR attributes (7),
+.BR rbac (7),
+.BR smf (7),
+.BR ifconfig (8),
+.BR in.iked (8),
+.BR init (8),
+.BR ipsecalgs (8),
+.BR ipseckey (8),
+.BR svcadm (8),
+.BR svccfg (8)
+.sp
+.LP
+Glenn, R. and Kent, S. \fIRFC 2410, The NULL Encryption Algorithm and Its Use
+With IPsec\fR. The Internet Society. 1998.
+.sp
+.LP
+Kent, S. and Atkinson, R. \fIRFC 2402, IP Authentication Header\fR.The Internet
+Society. 1998.
+.sp
+.LP
+Kent, S. and Atkinson, R. \fIRFC 2406, IP Encapsulating Security Payload
+(ESP)\fR. The Internet Society. 1998.
+.sp
+.LP
+Madsen, C. and Glenn, R. \fIRFC 2403, The Use of HMAC-MD5-96 within ESP and
+AH\fR. The Internet Society. 1998.
+.sp
+.LP
+Madsen, C. and Glenn, R. \fIRFC 2404, The Use of HMAC-SHA-1-96 within ESP and
+AH\fR. The Internet Society. 1998.
+.sp
+.LP
+Madsen, C. and Doraswamy, N. \fIRFC 2405, The ESP DES-CBC Cipher Algorithm With
+Explicit IV\fR. The Internet Society. 1998.
+.sp
+.LP
+Pereira, R. and Adams, R. \fIRFC 2451, The ESP CBC-Mode Cipher Algorithms\fR.
+The Internet Society. 1998.
+.sp
+.LP
+Frankel, S. and Kelly, R. Glenn, \fIThe AES Cipher Algorithm and Its Use With
+IPsec\fR. 2001.
+.SH DIAGNOSTICS
+.ne 2
+.na
+\fBBad "string" on line \fIN\fR.\fR
+.ad
+.br
+.na
+\fBDuplicate "string" on line \fIN\fR.\fR
+.ad
+.sp .6
+.RS 4n
+\fIstring\fR refers to one of the names in pattern or properties. A Bad string
+indicates that an argument is malformed; a Duplicate string indicates that
+there are multiple arguments of a similar type, for example, multiple Source
+Address arguments.
+.RE
+
+.sp
+.ne 2
+.na
+\fBInterface name already selected\fR
+.ad
+.sp .6
+.RS 4n
+Dual use of \fB-i\fR \fIname\fR and \fIname\fR,\fIindex\fR for an index.
+.RE
+
+.sp
+.ne 2
+.na
+\fBError before or at line \fIN\fR.\fR
+.ad
+.sp .6
+.RS 4n
+Indicates parsing error before or at line \fIN\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBNon-existent index\fR
+.ad
+.sp .6
+.RS 4n
+Reported when the \fIindex\fR for delete is not a valid one.
+.RE
+
+.sp
+.ne 2
+.na
+\fBspd_msg return: File exists\fR
+.ad
+.sp .6
+.RS 4n
+Reported when there is already a policy entry that matches the traffic of this
+new entry.
+.RE
+
+.SH NOTES
+.LP
+IPsec manual keys are managed by the service management facility, \fBsmf\fR(7).
+The services listed below manage the components of IPsec. These services are
+delivered as follows:
+.sp
+.in +2
+.nf
+svc:/network/ipsec/policy:default (enabled)
+svc:/network/ipsec/ipsecalgs:default (enabled)
+svc:/network/ipsec/manual-key:default (disabled)
+svc:/network/ipsec/ike:default (disabled)
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The manual-key service is delivered disabled. The system administrator must
+create manual IPsec Security Associations (SAs), as described in
+\fBipseckey\fR(8), before enabling that service.
+.sp
+.LP
+The policy service is delivered enabled, but without a configuration file, so
+that, as a starting condition, packets are not protected by IPsec. After you
+create the configuration file \fB/etc/inet/ipsecinit.conf\fR, as described in
+this man page, and refresh the service (\fBsvcadm refresh\fR, see below), the
+policy contained in the configuration file is applied. If there is an error in
+this file, the service enters maintenance mode.
+.sp
+.LP
+Services that are delivered disabled are delivered that way because the system
+administrator must create configuration files for those services before
+enabling them. See \fBike.config\fR(5) for the \fBike\fR service.
+.sp
+.LP
+See \fBipsecalgs\fR(8) for the \fBipsecalgs\fR service.
+.sp
+.LP
+The correct administrative procedure is to create the configuration file for
+each service, then enable each service using \fBsvcadm\fR(8).
+.sp
+.LP
+If the configuration needs to be changed, edit the configuration file then
+refresh the service, as follows:
+.sp
+.in +2
+.nf
+example# \fBsvcadm refresh policy\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The \fBsmf\fR(7) framework will record any errors in the service-specific log
+file. Use any of the following commands to examine the \fBlogfile\fR property:
+.sp
+.in +2
+.nf
+example# \fBsvcs -l policy\fR
+example# \fBsvcprop policy\fR
+example# \fBsvccfg -s policy listprop\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The following property is defined for the \fBpolicy\fR service:
+.sp
+.in +2
+.nf
+config/config_file
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+This property can be modified using \fBsvccfg\fR(8) by users who have been
+assigned the following authorization:
+.sp
+.in +2
+.nf
+solaris.smf.value.ipsec
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+See \fBauths\fR(1), \fBuser_attr\fR(5), \fBrbac\fR(7).
+.sp
+.LP
+The service needs to be refreshed using \fBsvcadm\fR(8) before the new
+property is effective. General non-modifiable properties can be viewed with the
+\fBsvcprop\fR(1) command.
+.sp
+.in +2
+.nf
+# \fBsvccfg -s ipsec/policy setprop config/config_file = /new/config_file\fR
+# \fBsvcadm refresh policy\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Administrative actions on this service, such as enabling, disabling,
+refreshing, and requesting restart can be performed using \fBsvcadm\fR(8). A
+user who has been assigned the authorization shown below can perform these
+actions:
+.sp
+.in +2
+.nf
+solaris.smf.manage.ipsec
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The service's status can be queried using the \fBsvcs\fR(1) command.
+.sp
+.LP
+The \fBipsecconf\fR command is designed to be managed by the \fBpolicy\fR
+\fBsmf\fR(7) service. While the \fBipsecconf\fR command can be run from the
+command line, this is discouraged. If the \fBipsecconf\fR command is to be run
+from the command line, the \fBpolicy\fR \fBsmf\fR(7) service should be disabled
+first. See \fBsvcadm\fR(8).
diff --git a/usr/src/man/man8/ipseckey.8 b/usr/src/man/man8/ipseckey.8
new file mode 100644
index 0000000000..0bcbc9701d
--- /dev/null
+++ b/usr/src/man/man8/ipseckey.8
@@ -0,0 +1,1639 @@
+'\" te
+.\" Copyright (C) 2008, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH IPSECKEY 8 "November 22, 2021"
+.SH NAME
+ipseckey \- manually manipulate an IPsec Security Association Database (SADB)
+.SH SYNOPSIS
+.nf
+\fBipseckey\fR [\fB-nvp\fR]
+.fi
+
+.LP
+.nf
+\fBipseckey\fR [\fB-nvp\fR] \fB-f\fR \fIfilename\fR
+.fi
+
+.LP
+.nf
+\fBipseckey\fR \fB-c\fR \fIfilename\fR
+.fi
+
+.LP
+.nf
+\fBipseckey\fR [\fB-nvp\fR] [delete | delete-pair | get] SA_TYPE {EXTENSION \fIvalue\fR...}
+.fi
+
+.LP
+.nf
+\fBipseckey\fR [\fB-np\fR] [monitor | passive_monitor | pmonitor]
+.fi
+
+.LP
+.nf
+\fBipseckey\fR [\fB-nvp\fR] flush {SA_TYPE}
+.fi
+
+.LP
+.nf
+\fBipseckey\fR [\fB-nvp\fR] dump {SA_TYPE}
+.fi
+
+.LP
+.nf
+\fBipseckey\fR [\fB-nvp\fR] save SA_TYPE {\fIfilename\fR}
+.fi
+
+.LP
+.nf
+\fBipseckey\fR [\fB-nvp\fR] \fB-s\fR \fIfilename\fR
+.fi
+
+.SH DESCRIPTION
+The \fBipseckey\fR command is used to manually manipulate the security
+association databases of the network security services, \fBipsecah\fR(4P) and
+\fBipsecesp\fR(4P). You can use the \fBipseckey\fR command to set up security
+associations between communicating parties when automated key management is not
+available.
+.sp
+.LP
+While the \fBipseckey\fR utility has only a limited number of general options,
+it supports a rich command language. The user may specify requests to be
+delivered by means of a programmatic interface specific for manual keying. See
+\fBpf_key\fR(4P). When \fBipseckey\fR is invoked with no arguments, it will
+enter an interactive mode which prints a prompt to the standard output and
+accepts commands from the standard input until the end-of-file is reached. Some
+commands require an explicit security association ("\fBSA\fR") type, while
+others permit the \fBSA\fR type to be unspecified and act on all \fBSA\fR
+types.
+.sp
+.LP
+\fBipseckey\fR uses a \fBPF_KEY\fR socket and the message types \fBSADB_ADD\fR,
+\fBSADB_DELETE\fR, \fBSADB_GET\fR, \fBSADB_UPDATE\fR, \fBSADB_FLUSH\fR, and
+\fBSADB_X_PROMISC\fR. Thus, you must be a superuser to use this command.
+.sp
+.LP
+\fBipseckey\fR handles sensitive cryptographic keying information. Please read
+the \fBSecurity\fR section for details on how to use this command securely.
+.SH OPTIONS
+.ne 2
+.na
+\fB\fB-c\fR [\fIfilename\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Analogous to the \fB-f\fR option (see following), except that the input is not
+executed but only checked for syntactical correctness. Errors are reported to
+\fBstderr\fR. This option is provided to debug configurations without making
+changes. See \fBSECURITY\fR and "Service Management Facility" for more
+information.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR [\fIfilename\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Read commands from an input file, \fIfilename\fR. The lines of the input file
+are identical to the command line language. The \fBload\fR command provides
+similar functionality. The \fB-s\fR option or the \fBsave\fR command can
+generate files readable by the \fB-f\fR argument.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR\fR
+.ad
+.sp .6
+.RS 4n
+Prevent attempts to print host and network names symbolically when reporting
+actions. This is useful, for example, when all name servers are down or are
+otherwise unreachable.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR\fR
+.ad
+.sp .6
+.RS 4n
+Paranoid. Do not print any keying material, even if saving \fBSA\fRs. Instead
+of an actual hexadecimal digit, print an \fBX\fR when this flag is turned on.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR [\fIfilename\fR]\fR
+.ad
+.sp .6
+.RS 4n
+The opposite of the \fB-f\fR option. If '\fB-\fR' is given for a
+\fIfilename\fR, then the output goes to the standard output. A snapshot of all
+current \fBSA\fR tables will be output in a form readable by the \fB-f\fR
+option. The output will be a series of \fBadd\fR commands, but with some names
+not used. This occurs because a single name may often indicate multiple
+addresses.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.sp .6
+.RS 4n
+Verbose. Print the messages being sent into the \fBPF_KEY\fR socket, and print
+raw seconds values for lifetimes.
+.RE
+
+.SH COMMANDS
+.ne 2
+.na
+\fB\fBadd\fR\fR
+.ad
+.sp .6
+.RS 4n
+Add an \fBSA\fR. Because it involves the transfer of keying material, it cannot
+be invoked from the shell, lest the keys be visible in \fBps\fR(1) output. It
+can be used either from the interactive \fBipseckey>\fR prompt or in a command
+file specified by the \fB-f\fR command. The \fBadd\fR command accepts all
+extension-value pairs described below.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBupdate\fR\fR
+.ad
+.sp .6
+.RS 4n
+Update \fBSA\fR lifetime, and in the cases of larval \fBSA\fRs (leftover from
+aborted automated key management), keying material and other extensions. Like
+\fBadd\fR, this command cannot be invoked from the shell because keying
+material would be seen by the \fBps\fR(1) command. It can be used either from
+the interactive \fBipseckey>\fR prompt or in a command file specified by the
+\fB-f\fR command. The \fBupdate\fR command accepts all extension-value pairs,
+but normally is only used for \fBSA\fR lifetime updates.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBupdate-pair\fR\fR
+.ad
+.sp .6
+.RS 4n
+As update, but apply the update to the SA and its paired SA, if there is one.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdelete\fR\fR
+.ad
+.sp .6
+.RS 4n
+Delete a specific \fBSA\fR from a specific \fBSADB\fR. This command requires
+the \fBspi\fR extension, and the \fBdest\fR extension for IPsec \fBSA\fRs.
+Other extension-value pairs are superfluous for a delete message. If the SA to
+be deleted is paired with another SA, the SA is deleted and the paired SA is
+updated to indicate that it is now unpaired.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdelete-pair\fR\fR
+.ad
+.sp .6
+.RS 4n
+Delete a specific SA from a specific SADB. If the SA is paired with another SA,
+delete that SA too. This command requires the \fBspi\fR extension and the
+\fBdest\fR extension for the IPsec SA, or its pair.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBget\fR\fR
+.ad
+.sp .6
+.RS 4n
+Lookup and display a security association from a specific \fBSADB\fR. Like
+\fBdelete\fR, this command only requires \fBspi\fR and \fBdest\fR for IPsec.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBflush\fR\fR
+.ad
+.sp .6
+.RS 4n
+Remove all \fBSA\fR for a given \fBSA_TYPE\fR, or all \fBSA\fR for all types.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmonitor\fR\fR
+.ad
+.sp .6
+.RS 4n
+Continuously report on any \fBPF_KEY\fR messages. This uses the
+\fBSADB_X_PROMISC\fR message to enable messages that a normal \fBPF_KEY\fR
+socket would not receive to be received. See \fBpf_key\fR(4P).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpassive_monitor\fR\fR
+.ad
+.sp .6
+.RS 4n
+Like monitor, except that it does not use the \fBSADB_X_PROMISC\fR message.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpmonitor\fR\fR
+.ad
+.sp .6
+.RS 4n
+Synonym for \fBpassive_monitor\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdump\fR\fR
+.ad
+.sp .6
+.RS 4n
+Will display all \fBSA\fRs for a given \fBSA\fR type, or will display all
+\fBSA\fRs. Because of the large amount of data generated by this command, there
+is no guarantee that all \fBSA\fR information will be successfully delivered,
+or that this command will even complete.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsave\fR\fR
+.ad
+.sp .6
+.RS 4n
+Is the command analog of the \fB-s\fR option. It is included as a command to
+provide a way to snapshot a particular \fBSA\fR type, for example, \fBesp\fR or
+\fBah\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBhelp\fR\fR
+.ad
+.sp .6
+.RS 4n
+Prints a brief summary of commands.
+.RE
+
+.SS "\fBSA_TYPE\fR"
+.ne 2
+.na
+\fB\fBall\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies all known \fBSA\fR types. This type is only used for the \fBflush\fR
+and \fBdump\fR commands. This is equivalent to having no \fBSA\fR type for
+these commands.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBah\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the IPsec Authentication Header ("\fBAH\fR") \fBSA\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBesp\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the IPsec Encapsulating Security Payload ("\fBESP\fR") \fBSA\fR.
+.RE
+
+.SH EXTENSION VALUE TYPES
+Commands like \fBadd\fR, \fBdelete\fR, \fBget\fR, and \fBupdate\fR require that
+certain extensions and associated values be specified. The extensions will be
+listed here, followed by the commands that use them, and the commands that
+require them. Requirements are currently documented based upon the IPsec
+definitions of an \fBSA\fR. Required extensions may change in the future.
+\fB<number>\fR can be in either hex (\fB0xnnn\fR), decimal (\fBnnn\fR) or octal
+(\fB0nnn\fR).\fB<string>\fR is a text string. \fB<hexstr>\fR is a long
+hexadecimal number with a bit-length. Extensions are usually paired with
+values; however, some extensions require two values after them.
+.sp
+.ne 2
+.na
+\fB\fBspi \fI<number>\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the security parameters index of the \fBSA\fR. This extension is
+required for the \fBadd\fR, \fBdelete\fR, \fBget\fR and \fBupdate\fR commands.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpair-spi \fI<number>\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+When \fBpair-spi\fR is used with the \fBadd\fR or \fBupdate\fR commands, the SA
+being added or updated will be paired with the SA defined by \fBpair-spi\fR. A
+pair of SAs can be updated or deleted with a single command.
+.sp
+The two SAs that make up the pair need to be in opposite directions from the
+same pair of IP addresses. The command will fail if either of the SAs specified
+are already paired with another SA.
+.sp
+If the pair-spi token is used in a command and the SA defined by pair-spi does
+not exist, the command will fail. If the command was \fBadd\fR and the pairing
+failed, the SA to be added will instead be removed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBinbound | outbound\fR\fR
+.ad
+.sp .6
+.RS 4n
+These optional flags specify the direction of the SA. When the \fBinbound\fR or
+\fBoutbound\fR flag is specified with the \fBadd\fR command, the kernel will
+insert the new SA into the specified hash table for faster lookups. If the flag
+is omitted, the kernel will decide into which hash table to insert the new SA
+based on its knowledge the IP addresses specified with the \fBsrc\fR and
+\fBdst\fR extensions.
+.sp
+When these flags are used with the \fBupdate\fR, \fBdelete\fR,
+\fBupdate-pair\fR or \fBget\fR commands, the flags provide a hint as to the
+hash table in which the kernel should find the SA.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBreplay\fR \fI<number>\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the replay window size. If not specified, the replay window size is
+assumed to be zero. It is not recommended that manually added \fBSA\fRs have a
+replay window. This extension is used by the \fBadd\fR and \fBupdate\fR
+commands.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBreplay_value\fR \fI<number>\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the replay value of the SA. This extension is used by the \fBadd\fR
+and \fBupdate\fR commands.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBstate \fI<string>\fR|\fI<number>\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the \fBSA\fR state, either by numeric value or by the strings
+"\fBlarval\fR", "\fBmature\fR", "\fBdying\fR" or "\fBdead\fR". If not
+specified, the value defaults to \fBmature\fR. This extension is used by the
+\fBadd\fR and \fBupdate\fR commands.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBauth_alg \fI<string>\fR|\fI<number>\fR\fR\fR
+.ad
+.br
+.na
+\fB\fBauthalg <string>|<number>\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the authentication algorithm for an \fBSA\fR, either by numeric
+value, or by strings indicating an algorithm name. Current authentication
+algorithms include:
+.sp
+.ne 2
+.na
+\fB\fBHMAC-MD5\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBmd5\fR, \fBhmac-md5\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBHMAC-SH-1\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBsha\fR, \fBsha-1\fR, \fBhmac-sha1\fR, \fBhmac-sha\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBHMAC-SHA-256\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBsha256\fR, \fBsha-256\fR, \fBhmac-sha256\fR, \fBhmac-sha-256\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBHMAC-SHA-384\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBsha384\fR, \fBsha-384\fR, \fBhmac-sha384\fR, \fBhmac-sha-384\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBHMAC-SHA-512\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBsha512\fR, \fBsha-512\fR, \fBhmac-sha512\fR, \fBhmac-sha-512\fR
+.RE
+
+Often, algorithm names will have several synonyms. This extension is required
+by the \fBadd\fR command for certain \fBSA\fR types. It is also used by the
+\fBupdate\fR command.
+.sp
+Use the \fBipsecalgs\fR(8) command to obtain the complete list of
+authentication algorithms.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBencr_alg \fI<string>\fR|\fI<number>\fR\fR\fR
+.ad
+.br
+.na
+\fB\fBencralg \fI<string>\fR|\fI<number>\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the encryption algorithm for an SA, either by numeric value, or by
+strings indicating an algorithm name. Current encryption algorithms include DES
+("\fBdes\fR"), Triple-DES ("\fB3des\fR"), Blowfish ("blowfish"), and AES
+("aes"). This extension is required by the add command for certain \fBSA\fR
+types. It is also used by the \fBupdate\fR command.
+.sp
+Use the \fBipsecalgs\fR(8) command to obtain the complete list of encryption
+algorithms.
+.RE
+
+.sp
+.LP
+The next six extensions are lifetime extensions. There are two varieties,
+"\fBhard\fR" and "\fBsoft\fR". If a \fBhard\fR lifetime expires, the \fBSA\fR
+will be deleted automatically by the system. If a \fBsoft\fR lifetime expires,
+an \fBSADB_EXPIRE\fR message will be transmitted by the system, and its state
+will be downgraded to \fBdying\fR from \fBmature\fR. See \fBpf_key\fR(4P). The
+\fBmonitor\fR command to \fBkey\fR allows you to view \fBSADB_EXPIRE\fR
+messages.
+.sp
+.ne 2
+.na
+\fB\fBidle_addtime\fR \fI<number>\fR\fR
+.ad
+.br
+.na
+\fB\fBidle_usetime\fR \fI<number>\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the number of seconds that this SA can exist if the SA is not used
+before the SA is revalidated. If this extension is not present, the default
+value is half of the \fBhard_addtime\fR (see below). This extension is used by
+the \fBadd\fR and \fBupdate\fR commands.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsoft_bytes \fI<number>\fR\fR\fR
+.ad
+.br
+.na
+\fB\fBhard_bytes \fI<number>\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the number of bytes that this \fBSA\fR can protect. If this extension
+is not present, the default value is zero, which means that the \fBSA\fR will
+not expire based on the number of bytes protected. This extension is used by
+the \fBadd\fR and \fBupdate\fR commands.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsoft_addtime \fI<number>\fR\fR\fR
+.ad
+.br
+.na
+\fB\fBhard_addtime \fI<number>\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the number of seconds that this \fBSA\fR can exist after being added
+or updated from a larval \fBSA\fR. An update of a mature \fBSA\fR does not
+reset the initial time that it was added. If this extension is not present, the
+default value is zero, which means the \fBSA\fR will not expire based on how
+long it has been since it was added. This extension is used by the \fBadd\fR
+and \fBupdate\fR commands.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsoft_usetime \fI<number>\fR\fR\fR
+.ad
+.br
+.na
+\fB\fBhard_usetime \fI<number>\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the number of seconds this \fBSA\fR can exist after first being used.
+If this extension is not present, the default value is zero, which means the
+\fBSA\fR will not expire based on how long it has been since it was added. This
+extension is used by the \fBadd\fR and \fBupdate\fR commands.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsaddr \fIaddress\fR | \fIname\fR\fR\fR
+.ad
+.br
+.na
+\fB\fBsrcaddr \fIaddress\fR | \fIname\fR\fR\fR
+.ad
+.br
+.na
+\fB\fBsaddr6 \fIIPv6 address\fR\fR\fR
+.ad
+.br
+.na
+\fB\fBsrcaddr6 \fIIPv6 address\fR\fR\fR
+.ad
+.br
+.na
+\fB\fBsrc \fIaddress\fR | \fIname\fR\fR\fR
+.ad
+.br
+.na
+\fB\fBsrc6 \fIIPv6 address\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBsrcaddr \fIaddress\fR\fR and \fBsrc \fIaddress\fR\fR are synonyms that
+indicate the source address of the \fBSA\fR. If unspecified, the source address
+will either remain unset, or it will be set to a wildcard address if a
+destination address was supplied. To not specify the source address is valid
+for IPsec \fBSA\fRs. Future \fBSA\fR types may alter this assumption. This
+extension is used by the \fBadd\fR, \fBupdate\fR, \fBget\fR and \fBdelete\fR
+commands.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdaddr \fI<address>\fR|\fI<name>\fR\fR\fR
+.ad
+.br
+.na
+\fB\fBdstaddr \fI<address>\fR|\fI<name>\fR\fR\fR
+.ad
+.br
+.na
+\fB\fBdaddr6 \fI<IPv6 address>\fR|\fI<name>\fR\fR\fR
+.ad
+.br
+.na
+\fB\fBdstaddr6 \fI<IPv6 address>\fR|\fI<name>\fR\fR\fR
+.ad
+.br
+.na
+\fB\fBdst \fI<addr>\fR|\fI<name>\fR\fR\fR
+.ad
+.br
+.na
+\fB\fBdst6 \fI<IPv6 address>\fR|\fI<name>\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBdstaddr \fI<addr>\fR\fR and \fBdst \fI<addr>\fR\fR are synonyms that
+indicate the destination address of the \fBSA\fR. If unspecified, the
+destination address will remain unset. Because IPsec \fBSA\fRs require a
+specified destination address and \fBspi\fR for identification, this extension,
+with a specific value, is required for the \fBadd\fR, \fBupdate\fR, \fBget\fR
+and \fBdelete\fR commands.
+.sp
+If a name is given, \fBipseckey\fR will attempt to invoke the command on
+multiple \fBSA\fRs with all of the destination addresses that the name can
+identify. This is similar to how \fBipsecconf\fR handles addresses.
+.sp
+If \fBdst6\fR or \fBdstaddr6\fR is specified, only the IPv6 addresses
+identified by a name are used.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsport\fR \fI<portnum>\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBsport\fR specifies the source port number for an SA. It should be used in
+combination with an upper-layer protocol (see below), but it does not have to
+be.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdport\fR \fI<portnum>\fR\fR
+.ad
+.sp .6
+.RS 4n
+sport specifies the destination port number for an SA. It should be used in
+combination with an upper-layer protocol (see below), but it does not have to
+be.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBencap\fR \fI<protocol>\fR\fR
+.ad
+.sp .6
+.RS 4n
+Identifies the protocol used to encapsulate NAT-traversal IPsec packets. Other
+NAT-traversal parameters (\fBnat_*\fR) are below. The only acceptable value
+for \fI<protocol>\fR currently is \fBudp\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBproto\fR \fI<protocol number>\fR\fR
+.ad
+.br
+.na
+\fB\fBulp\fR \fI<protocol number>\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBproto\fR, and its synonym \fBulp\fR, specify the IP protocol number of the
+SA.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnat_loc\fR \fI<address>\fR|\fI<name>\fR\fR
+.ad
+.sp .6
+.RS 4n
+If the local address in the SA (source or destination) is behind a NAT, this
+extension indicates the NAT node's globally-routable address. This address can
+match the SA's local address if there is a \fBnat_lport\fR (see below)
+specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnat_rem\fR \fI<address>\fR|\fI<name>\fR\fR
+.ad
+.sp .6
+.RS 4n
+If the remote address in the SA (source or destination) is behind a NAT, this
+extension indicates that node's internal (that is, behind-the-NAT) address.
+This address can match the SA's local address if there is a \fBnat_rport\fR
+(see below) specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnat_lport\fR \fI<portnum>\fR\fR
+.ad
+.sp .6
+.RS 4n
+Identifies the local UDP port on which encapsulation of ESP occurs.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnat_rport\fR \fI<portnum>\fR\fR
+.ad
+.sp .6
+.RS 4n
+Identifies the remote UDP port on which encapsulation of ESP occurs.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBisrc\fR \fI<address>\fR | \fI<name>\fR[/\fI<prefix>\fR]\fR
+.ad
+.br
+.na
+\fB\fBinnersrc\fR \fI<address>\fR | \fI<name>\fR[/\fI<prefix>\fR]\fR
+.ad
+.br
+.na
+\fB\fBisrc6\fR \fI<address>\fR | \fI<name>\fR[/\fI<prefix>\fR]\fR
+.ad
+.br
+.na
+\fB\fBinnersrc6\fR \fI<address>\fR | \fI<name>\fR[/\fI<prefix>\fR]\fR
+.ad
+.br
+.na
+\fB\fBproxyaddr\fR \fI<address>\fR | \fI<name>\fR[/\fI<prefix>\fR]\fR
+.ad
+.br
+.na
+\fB\fBproxy\fR \fI<address>\fR | \fI<name>\fR[/\fI<prefix>\fR]\fR
+.ad
+.sp .6
+.RS 4n
+\fBisrc\fR \fI<address>\fR[/\fI<prefix>\fR] and \fBinnersrc\fR
+\fI<address>\fR[/\fI<prefix>\fR] are synonyms. They indicate the inner source
+address for a tunnel-mode SA.
+.sp
+An inner-source can be a prefix instead of an address. As with other address
+extensions, there are IPv6-specific forms. In such cases, use only
+IPv6-specific addresses or prefixes.
+.sp
+Previous versions referred to this value as the proxy address. The usage, while
+deprecated, remains.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBidst\fR \fI<address>\fR | \fI<name>\fR[/\fI<prefix>\fR]\fR
+.ad
+.br
+.na
+\fB\fBinnerdst\fR \fI<address>\fR | \fI<name>\fR[/\fI<prefix>\fR]\fR
+.ad
+.br
+.na
+\fB\fBidst6\fR \fI<address>\fR | \fI<name>\fR[/\fI<prefix>\fR]\fR
+.ad
+.br
+.na
+\fB\fBinnerdst6\fR \fI<address>\fR | \fI<name>\fR[/\fI<prefix>\fR]\fR
+.ad
+.sp .6
+.RS 4n
+\fBidst\fR \fI<address>\fR[/\fI<prefix>\fR] and \fBinnerdst\fR
+\fI<address>\fR[/\fI<prefix>\fR] are synonyms. They indicate the inner
+destination address for a tunnel-mode SA.
+.sp
+An inner-destination can be a prefix instead of an address. As with other
+address extensions, there are IPv6-specific forms. In such cases, use only
+IPv6-specific addresses or prefixes.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBinnersport\fR \fI<portnum>\fR\fR
+.ad
+.br
+.na
+\fB\fBisport\fR \fI<portnum>\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBinnersport\fR specifies the source port number of the inner header for a
+tunnel-mode SA. It should be used in combination with an upper-layer protocol
+(see below), but it does not have to be.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBinnerdport\fR \fI<portnum>\fR\fR
+.ad
+.br
+.na
+\fB\fBidport\fR \fI<portnum>\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBinnerdport\fR specifies the destination port number of the inner header for
+a tunnel-mode SA. It should be used in combination with an upper-layer protocol
+(see below), but it does not have to be.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBiproto\fR \fI<protocol number>\fR\fBiulp\fR \fI<protocol number>\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBiproto\fR, and its synonym \fBiulp\fR, specify the IP protocol number of the
+inner header of a tunnel-mode SA.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBauthkey \fI<hexstring>\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the authentication key for this \fBSA\fR. The key is expressed as a
+string of hexadecimal digits, with an optional \fB/\fR at the end, for example,
+\fB123/12\fR. Bits are counted from the most-significant bits down. For
+example, to express three '1' bits, the proper syntax is the string
+"\fBe/3\fR". For multi-key algorithms, the string is the concatenation of the
+multiple keys. This extension is used by the \fBadd\fR and \fBupdate\fR
+commands.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBencrkey \fI<hexstring>\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the encryption key for this \fBSA\fR. The syntax of the key is the
+same as \fBauthkey\fR. A concrete example of a multi-key encryption algorithm
+is \fB3des\fR, which would express itself as a 192-bit key, which is three
+64-bit parity-included \fBDES\fR keys. This extension is used by the \fBadd\fR
+and \fBupdate\fR commands.
+.RE
+
+.sp
+.LP
+Certificate identities are very useful in the context of automated key
+management, as they tie the \fBSA\fR to the public key certificates used in
+most automated key management protocols. They are less useful for manually
+added \fBSA\fRs. Unlike other extensions, \fBsrcidtype\fR takes two values, a
+\fItype\fR, and an actual \fIvalue\fR. The type can be one of the following:
+.sp
+.ne 2
+.na
+\fB\fBprefix\fR\fR
+.ad
+.sp .6
+.RS 4n
+An address prefix.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfqdn\fR\fR
+.ad
+.sp .6
+.RS 4n
+A fully-qualified domain name.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdomain\fR\fR
+.ad
+.sp .6
+.RS 4n
+Domain name, synonym for \fBfqdn\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBuser_fqdn\fR\fR
+.ad
+.sp .6
+.RS 4n
+User identity of the form \fB\fIuser\fR@\fIfqdn\fR\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmailbox\fR\fR
+.ad
+.sp .6
+.RS 4n
+Synonym for \fBuser_fqdn\fR.
+.RE
+
+.sp
+.LP
+The \fIvalue\fR is an arbitrary text string that should identify the
+certificate.
+.sp
+.ne 2
+.na
+\fB\fBsrcidtype \fI<type, value>\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies a source certificate identity for this \fBSA\fR. This extension is
+used by the \fBadd\fR and \fBupdate\fR commands.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdstidtype \fI<type, value>\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies a destination certificate identity for this \fBSA\fR. This extension
+is used by the \fBadd\fR and \fBupdate\fR commands
+.RE
+
+.SS "Tunnel Mode versus Transport Mode SAs"
+An IPsec SA is a Tunnel Mode SA if the "proto" value is either 4 (\fBipip\fR)
+or 41 (\fBipv6\fR) \fBand\fR there is an inner-address or inner-port value
+specified. Otherwise, the SA is a Transport Mode SA.
+.SH SECURITY
+Keying material is very sensitive and should be generated as randomly as
+possible. Some algorithms have known weak keys. IPsec algorithms have built-in
+weak key checks, so that if a weak key is in a newly added \fBSA\fR, the
+\fBadd\fR command will fail with an invalid value.
+.sp
+.LP
+The \fBipseckey\fR command allows a privileged user to enter cryptographic
+keying information. If an adversary gains access to such information, the
+security of IPsec traffic is compromised. The following issues should be taken
+into account when using the \fBipseckey\fR command.
+.RS +4
+.TP
+1.
+Is the \fBTTY\fR going over a network (interactive mode)?
+.RS +4
+.TP
+.ie t \(bu
+.el o
+If it is, then the security of the keying material is the security of the
+network path for this \fBTTY\fR's traffic. Using \fBipseckey\fR over a
+clear-text \fBtelnet\fR or \fBrlogin\fR session is risky.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Even local windows might be vulnerable to attacks where a concealed program
+that reads window events is present.
+.RE
+.RE
+.RS +4
+.TP
+2.
+Is the file accessed over the network or readable to the world (\fB-f\fR
+option)?
+.RS +4
+.TP
+.ie t \(bu
+.el o
+A network-mounted file can be sniffed by an adversary as it is being read.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+A world-readable file with keying material in it is also risky.
+.RE
+.RE
+.RS +4
+.TP
+3.
+The \fBipseckey\fR command is designed to be managed by the \fBmanual-key\fR
+\fBsmf\fR(7) service. Because the \fBsmf\fR(7) log files are world-readable,
+the \fBipseckey\fR does not record any syntax errors in the log files, as these
+errors might include secret information.
+.sp
+If a syntax error is found when the \fBmanual-key\fR \fBsmf\fR(7) service is
+enabled, the service enters maintenance mode. The log file will indicate that
+there was a syntax error, but will not specify what the error was.
+.sp
+The administrator should use \fBipeckey\fR \fB-c\fR \fIfilename\fR from the
+command line to discover the cause of the errors. See \fBOPTIONS\fR.
+.RE
+.sp
+.LP
+If your source address is a host that can be looked up over the network and
+your naming system itself is compromised, then any names used will not be
+trustworthy.
+.sp
+.LP
+Security weaknesses often lie in misapplication of tools, not in the tools
+themselves. Administrators are urged to be cautious when using \fBipseckey\fR.
+The safest mode of operation is probably on a console or other hard-connected
+\fBTTY\fR.
+.sp
+.LP
+For further thoughts on this subject, see the afterward by Matt Blaze in Bruce
+Schneier's \fIApplied Cryptography: Protocols, Algorithms, and Source Code in
+C\fR.
+.SS "Service Management Facility"
+IPsec manual keys are managed by the service management facility, \fBsmf\fR(7).
+The services listed below manage the components of IPsec. These services are
+delivered as follows:
+.sp
+.in +2
+.nf
+svc:/network/ipsec/policy:default (enabled)
+svc:/network/ipsec/ipsecalgs:default (enabled)
+svc:/network/ipsec/manual-key:default (disabled)
+svc:/network/ipsec/ike:default (disabled)
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The manual-key service is delivered disabled. The system administrator must
+create manual IPsec Security Associations (SAs), as described in this man page,
+before enabling that service.
+.sp
+.LP
+The policy service is delivered enabled, but without a configuration file, so
+that, as a starting condition, packets are not protected by IPsec. After you
+create the configuration file \fB/etc/inet/ipsecinit.conf\fR and refresh the
+service (\fBsvcadm refresh\fR, see below), the policy contained in the
+configuration file is applied. If there is an error in this file, the service
+enters maintenance mode. See \fBipsecconf\fR(8).
+.sp
+.LP
+Services that are delivered disabled are delivered that way because the system
+administrator must create configuration files for those services before
+enabling them. See \fBike.config\fR(5) for the \fBike\fR service.
+.sp
+.LP
+See \fBipsecalgs\fR(8) for the \fBipsecalgs\fR service.
+.sp
+.LP
+The correct administrative procedure is to create the configuration file for
+each service, then enable each service using \fBsvcadm\fR(8).
+.sp
+.LP
+If the configuration needs to be changed, edit the configuration file then
+refresh the service, as follows:
+.sp
+.in +2
+.nf
+example# \fBsvcadm refresh manual-key\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+\fBWarning:\fR To prevent \fBipseckey\fR complaining about duplicate
+Associations, the \fBipseckey\fR command flushes the Security Association Data
+Base (SADB) when the \fBipseckey\fR command is run from \fBsmf\fR(7), before
+adding any new Security Associations defined in the configuration file. This
+differs from the command line behavior where the SADB is not flushed before
+adding new Security Associations.
+.sp
+.LP
+The \fBsmf\fR(7) framework will record any errors in the service-specific log
+file. Use any of the following commands to examine the \fBlogfile\fR property:
+.sp
+.in +2
+.nf
+example# \fBsvcs -l manual-key\fR
+example# \fBsvcprop manual-key\fR
+example# \fBsvccfg -s manual-key listprop\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The following property is defined for the \fBmanual-key\fR service:
+.sp
+.in +2
+.nf
+config/config_file
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+This property can be modified using \fBsvccfg\fR(8) by users who have been
+assigned the following authorization:
+.sp
+.in +2
+.nf
+solaris.smf.value.ipsec
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+See \fBauths\fR(1), \fBuser_attr\fR(5), \fBrbac\fR(7).
+.sp
+.LP
+The service needs to be refreshed using \fBsvcadm\fR(8) before the new
+property is effective. General non-modifiable properties can be viewed with the
+\fBsvcprop\fR(1) command.
+.sp
+.in +2
+.nf
+# \fBsvccfg -s ipsec/manual-key setprop config/config_file = \e
+/new/config_file\fR
+# \fBsvcadm refresh manual-key\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Administrative actions on this service, such as enabling, disabling,
+refreshing, and requesting restart can be performed using \fBsvcadm\fR(8). A
+user who has been assigned the authorization shown below can perform these
+actions:
+.sp
+.in +2
+.nf
+solaris.smf.manage.ipsec
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The service's status can be queried using the \fBsvcs\fR(1) command.
+.sp
+.LP
+The \fBipseckey\fR command is designed to be run under \fBsmf\fR(7) management.
+While the \fBipsecconf\fR command can be run from the command line, this is
+discouraged. If the \fBipseckey\fR command is to be run from the command line,
+the \fBmanual-key\fR \fBsmf\fR(7) service should be disabled first. See
+\fBsvcadm\fR(8).
+.SH EXAMPLES
+\fBExample 1 \fREmptying Out All \fBSA\fRs
+.sp
+.LP
+To empty out all \fBSA\fR:
+
+.sp
+.in +2
+.nf
+example# \fBipseckey flush\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRFlushing Out IPsec AH \fBSA\fRs Only
+.sp
+.LP
+To flush out only IPsec \fBAH\fR \fBSA\fRs:
+
+.sp
+.in +2
+.nf
+example# \fBipseckey flush ah\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRSaving All \fBSA\fRs To Standard Output
+.sp
+.LP
+To save all \fBSA\fRs to the standard output:
+
+.sp
+.in +2
+.nf
+example# \fBipseckey save all\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 4 \fRSaving \fBESP\fR \fBSA\fRs To The File \fB/tmp/snapshot\fR
+.sp
+.LP
+To save \fBESP\fR \fBSA\fRs to the file \fB/tmp/snapshot\fR:
+
+.sp
+.in +2
+.nf
+example# \fBipseckey save esp /tmp/snapshot\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 5 \fRDeleting an IPsec \fBSA\fR
+.sp
+.LP
+To delete an IPsec \fBSA\fR, only the \fBSPI\fR and the destination address are
+needed:
+
+.sp
+.in +2
+.nf
+example# \fBipseckey delete esp spi 0x2112 dst 224.0.0.1\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+An alternative would be to delete the SA and the SAs pair if it has one:
+
+.sp
+.in +2
+.nf
+example# \fBipseckey delete-pair esp spi 0x2112 dst 224.0.0.1\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 6 \fRGetting Information on an IPsec \fBSA\fR
+.sp
+.LP
+Likewise, getting information on a \fBSA\fR only requires the destination
+address and \fBSPI\fR:
+
+.sp
+.in +2
+.nf
+example# \fBipseckey get ah spi 0x5150 dst mypeer\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 7 \fRAdding or Updating IPsec \fBSA\fRs
+.sp
+.LP
+Adding or updating \fBSA\fRs requires entering interactive mode:
+
+.sp
+.in +2
+.nf
+example# \fBipseckey\fR
+ipseckey> \fBadd ah spi 0x90125 src me.example.com dst you.example.com \e
+ authalg md5 authkey 1234567890abcdef1234567890abcdef\fR
+ipseckey> \fBupdate ah spi 0x90125 dst you.example.com hard_bytes \e
+ 16000000\fR
+ipseckey> \fBexit\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Adding two SAs that are linked together as a pair:
+
+.sp
+.in +2
+.nf
+example# \fBipseckey\fR
+ipseckey> \fBadd esp spi 0x2345 src me.example.com dst you.example.com \e
+ authalg md5 authkey bde359723576fdea08e56cbe876e24ad \e
+ encralg des encrkey be02938e7def2839\fR
+ipseckey> \fBadd esp spi 0x5432 src me.example.com dst you.example.com \e
+ authalg md5 authkey bde359723576fdea08e56cbe876e24ad \e
+ encralg des encrkey be02938e7def2839 pair-spi 0x2345\fR
+ipseckey> \fBexit\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 8 \fRAdding an \fBSA\fR in the Opposite Direction
+.sp
+.LP
+In the case of IPsec, \fBSA\fRs are unidirectional. To communicate securely, a
+second \fBSA\fR needs to be added in the opposite direction. The peer machine
+also needs to add both \fBSA\fRs.
+
+.sp
+.in +2
+.nf
+example# \fBipseckey\fR
+ipseckey> \fBadd ah spi 0x2112 src you.example.com dst me.example.com \e
+ authalg md5 authkey bde359723576fdea08e56cbe876e24ad \e
+ hard_bytes 16000000\fR
+ipseckey> \fBexit\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 9 \fRMonitoring \fBPF_KEY\fR Messages
+.sp
+.LP
+Monitoring for \fBPF_KEY\fR messages is straightforward:
+
+.sp
+.in +2
+.nf
+example# \fBipseckey monitor\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 10 \fRUsing Commands in a File
+.sp
+.LP
+Commands can be placed in a file that can be parsed with the \fB-f\fR option.
+This file may contain comment lines that begin with the "#" symbol. For
+example:
+
+.sp
+.in +2
+.nf
+# This is a sample file for flushing out the ESP table and
+# adding a pair of SAs.
+
+flush esp
+
+### Watch out! I have keying material in this file. See the
+### SECURITY section in this manual page for why this can be
+### dangerous .
+
+add esp spi 0x2112 src me.example.com dst you.example.com \e
+ authalg md5 authkey bde359723576fdea08e56cbe876e24ad \e
+ encralg des encrkey be02938e7def2839 hard_usetime 28800
+add esp spi 0x5150 src you.example.com dst me.example.com \e
+ authalg md5 authkey 930987dbe09743ade09d92b4097d9e93 \e
+ encralg des encrkey 8bd4a52e10127deb hard_usetime 28800
+
+## End of file - This is a gratuitous comment
+.fi
+.in -2
+
+.LP
+\fBExample 11 \fRAdding SAs for IPv6 Addresses
+.sp
+.LP
+The following commands from the interactive-mode create an SA to protect IPv6
+traffic between the site-local addresses
+
+.sp
+.in +2
+.nf
+example # \fBipseckey\fR
+ipseckey> \fBadd esp spi 0x6789 src6 fec0:bbbb::4483 dst6 fec0:bbbb::7843\e
+ authalg md5 authkey bde359723576fdea08e56cbe876e24ad \e
+ encralg des encrkey be02938e7def2839 hard_usetime 28800\fR
+ipseckey>\fBexit\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 12 \fRLinking Two SAs as a Pair
+.sp
+.LP
+The following command links two SAs together, as a pair:
+
+.sp
+.in +2
+.nf
+example# \fBipseckey update esp spi 0x123456 dst 192.168.99.2 \e
+pair-spi 0x654321\fR
+.fi
+.in -2
+.sp
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/etc/inet/secret/ipseckeys\fR\fR
+.ad
+.sp .6
+.RS 4n
+Default configuration file used at boot time. See "Service Management Facility"
+and \fBSECURITY\fR for more information.
+.RE
+
+.SH ATTRIBUTES
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+Interface Stability Committed
+.TE
+
+.SH SEE ALSO
+.BR ps (1),
+.BR svcprop (1),
+.BR svcs (1),
+.BR ipsec (4P),
+.BR ipsecah (4P),
+.BR ipsecesp (4P),
+.BR pf_key (4P),
+.BR ike.config (5),
+.BR attributes (7),
+.BR smf (7),
+.BR ipsecalgs (8),
+.BR ipsecconf (8),
+.BR route (8),
+.BR svcadm (8),
+.BR svccfg (8)
+.sp
+.LP
+Schneier, B., \fIApplied Cryptography: Protocols, Algorithms, and Source Code
+in C\fR. Second ed. New York, New York: John Wiley & Sons, 1996.
+.SH DIAGNOSTICS
+The \fBipseckey\fR command parses the configuration file and reports any
+errors. In the case of multiple errors, \fBipseckey\fR reports as many of these
+as possible.
+.sp
+.LP
+The \fBipseckey\fR command does not attempt to use a \fBCOMMAND\fR that has a
+syntax error. A \fBCOMMAND\fR might be syntactically correct but can
+nevertheless generate an error because the kernel rejected the request made to
+\fBpf_key\fR(4P). This might occur because a key had an invalid length or
+because an unsupported algorithm was specified.
+.sp
+.LP
+If there are any errors in the configuration file, ipseckey reports the number
+of valid COMMANDS and the total number of COMMANDS parsed.
+.sp
+.ne 2
+.na
+\fB\fBParse error on line \fIN\fR.\fR\fR
+.ad
+.sp .6
+.RS 4n
+If an interactive use of \fBipseckey\fR would print usage information, this
+would print instead. Usually proceeded by another diagnostic. Because
+\fBCOMMANDS\fR can cover more than a single line in the configuration file by
+using the backslash character to delimit lines, its not always possible to
+pinpoint in the configuration file the exact line that caused the error.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBUnexpected end of command line.\fR\fR
+.ad
+.sp .6
+.RS 4n
+An additional argument was expected on the command line.
+.RE
+
+.sp
+.ne 2
+.na
+\fBUnknown\fR
+.ad
+.sp .6
+.RS 4n
+A value for a specific extension was unknown.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBAddress type \fIN\fR not supported.\fR\fR
+.ad
+.sp .6
+.RS 4n
+A name-to-address lookup returned an unsupported address family.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\fIN\fR is not a bit specifier\fR\fR
+.ad
+.br
+.na
+\fB\fBbit length \fIN\fR is too big for\fR\fR
+.ad
+.br
+.na
+\fB\fBstring is not a hex string\fR\fR
+.ad
+.sp .6
+.RS 4n
+Keying material was not entered appropriately.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBCan only specify single\fR\fR
+.ad
+.sp .6
+.RS 4n
+A duplicate extension was entered.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBDon't use extension for \fI<string>\fR for \fI<command>\fR\&.\fR\fR
+.ad
+.sp .6
+.RS 4n
+An extension not used by a command was used.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBOne of the entered values is incorrect: Diagnostic code \fINN\fR:
+\fI<msg>\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+This is a general invalid parameter error. The diagnostic code and message
+provides more detail about what precise value was incorrect and why.
+.RE
+
+.SH NOTES
+In spite of its IPsec-specific name, \fBipseckey\fR is analogous to
+\fBroute\fR(8), in that it is a command-line interface to a socket-based
+administration engine, in this case, \fBPF_KEY\fR. \fBPF_KEY\fR was originally
+developed at the United States Naval Research Laboratory.
+.sp
+.LP
+To have machines communicate securely with manual keying, \fBSA\fRs need to be
+added by all communicating parties. If two nodes wish to communicate securely,
+both nodes need the appropriate \fBSA\fRs added.
+.sp
+.LP
+In the future \fBipseckey\fR may be invoked under additional names as other
+security protocols become available to \fBPF_KEY\fR.
+.sp
+.LP
+This command requires \fBsys_ip_config\fR privilege to operate and thus can run
+in the global zone and in exclusive-IP zones. The global zone can set up
+security associations with \fBipseckey\fR to protect traffic for shared-IP
+zones on the system.
diff --git a/usr/src/man/man8/iscsiadm.8 b/usr/src/man/man8/iscsiadm.8
new file mode 100644
index 0000000000..21c9def5a0
--- /dev/null
+++ b/usr/src/man/man8/iscsiadm.8
@@ -0,0 +1,1379 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH ISCSIADM 8 "Jul 16, 2009"
+.SH NAME
+iscsiadm \- enable management of iSCSI initiators
+.SH SYNOPSIS
+.LP
+.nf
+\fBiscsiadm\fR \fIsubcommand\fR \fIdirect-object\fR [\fIoptions\fR] [\fIoperand\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBiscsiadm\fR command enables management of the iSCSI (Internet SCSI)
+initiator on a host. \fBiscsiadm\fR is implemented as a set of subcommands,
+many with their own options, which are described in the section for that
+subcommand. Options not associated with a particular subcommand are described
+under OPTIONS.
+.sp
+.LP
+\fBiscsiadm\fR works only when the following service is online:
+.sp
+.in +2
+.nf
+svc:/network/iscsi/initiator:default
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The \fBiscsiadm\fR command supports the following subcommands, which are
+described in detail in subsections that follow:
+.sp
+.ne 2
+.na
+\fB\fBadd\fR\fR
+.ad
+.RS 10n
+Adds element(s) to an object.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBlist\fR\fR
+.ad
+.RS 10n
+Lists element(s) of an object.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmodify\fR\fR
+.ad
+.RS 10n
+Modifies attributes of an object.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBremove\fR\fR
+.ad
+.RS 10n
+Removes an element from an object.
+.RE
+
+.sp
+.LP
+The \fBiscsiadm\fR subcommands operate on a \fIdirect-object\fR. These are
+described in the section for each subcommand.
+.sp
+.LP
+The \fBiscsiadm\fR command supports the Internet Storage Name Service (iSNS)
+for the discovery of iSCSI targets. The command supports the Challenge
+Handshake Authentication Protocol (CHAP) for authentication.
+.SS "\fBadd\fR Subcommand"
+.sp
+.LP
+The syntax for the \fBadd\fR subcommand is:
+.sp
+.in +2
+.nf
+# iscsiadm add \fIdirect_object\fR [\fIoperands\fR...]
+.fi
+.in -2
+
+.sp
+.LP
+The \fBadd\fR subcommand adds the following \fIdirect_object\fRs:
+.sp
+.ne 2
+.na
+\fB\fBdiscovery-address\fR \fIdiscovery-address\fR [...]\fR
+.ad
+.sp .6
+.RS 4n
+Adds a target to a list of discovery addresses. A discovery address (as in the
+syntax shown below) is an IP \fIaddress\fR:\fIport\fR combination used in a
+SendTargets discovery session. Using this discovery approach, a target device
+can inform an initiator of the target address and target name of each target
+exposed by that device. Connection to a target is not attempted unless the
+SendTargets method of discovery has been enabled on the host. You enable this
+method with the \fBmodify\fR subcommand.
+.sp
+The \fIdiscovery-address\fR parameter is formatted as:
+.sp
+.in +2
+.nf
+<\fIIP address\fR>[:\fIport\fR]
+.fi
+.in -2
+
+If \fIport\fR is not specified, the default of 3260 will be used.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBisns-server\fR \fIisns-server\fR [...]\fR
+.ad
+.sp .6
+.RS 4n
+Add an iSNS server to the list of iSNS server addresses. An iSNS server address
+(specified in the syntax shown below) is an IP address-port combination used in
+an iSNS discovery session. By using iSNS discovery, an iSNS server can provide
+an initiator with information about a portal and the name of each target that
+belongs to the same discovery domain as that of the initiator. Connection to
+the iSNS server is not attempted unless the iSNS method of discovery has been
+enabled on the host. You enable this method with the \fBmodify\fR subcommand,
+described below.
+.sp
+The \fIisns-server\fR parameter is formatted as:
+.sp
+.in +2
+.nf
+\fIIP_address\fR[:\fIport\fR]
+.fi
+.in -2
+
+If a port is not specified, the default of 3205 is used.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBstatic-config\fR \fIstatic_target\fR [...]\fR
+.ad
+.sp .6
+.RS 4n
+Adds a target to the list of statically configured targets. A connection to the
+target will not be attempted unless the static configuration method of
+discovery has been enabled.
+.sp
+The \fIstatic_target\fR parameter is formatted as:
+.sp
+.in +2
+.nf
+\fI<target-name>\fR,\fI<target address>\fR[:\fIport-number\fR][,\fItpgt\fR]
+.fi
+.in -2
+
+\fI<target-name>\fR can be up to 223 characters.
+.RE
+
+.SS "\fBlist\fR Subcommand"
+.sp
+.LP
+The syntax for the \fBlist\fR subcommand is:
+.sp
+.in +2
+.nf
+# iscsiadm list \fIdirect-object\fR [\fIoptions\fR]
+.fi
+.in -2
+
+.sp
+.LP
+The \fBlist\fR subcommand displays data for the following \fIdirect-object\fRs:
+.sp
+.ne 2
+.na
+\fB\fBdiscovery\fR\fR
+.ad
+.sp .6
+.RS 4n
+Lists the discovery methods and their current activation state, enabled or
+disabled. Discovery methods are:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+iSNS (Internet Storage Name Service)
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Static
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+SendTargets
+.RE
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBinitiator-node\fR\fR
+.ad
+.sp .6
+.RS 4n
+Lists information for the initiator node on the host. The iSCSI initiator node
+represents a logical HBA and is a logical host connection point for iSCSI
+targets. The parameter values listed in the response are default parameter
+settings for the initiator. Each connected target for an initiator can have
+parameter values that differ from the parameter values on the initiator node.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBstatic-config\fR [\fIstatic_target\fR[, ...]]\fR
+.ad
+.sp .6
+.RS 4n
+Lists the target name and address for specified targets or, if no static
+targets are specified, all statically discovered targets.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBtarget\fR [\fB-S\fR] [\fB-v\fR] [\fItarget\fR[, ...]]\fR
+.ad
+.sp .6
+.RS 4n
+Lists a target's current parameters, connection state, and which method was
+used for the target's discovery. Reports information for specified targets or,
+if no targets are specified, all targets that have been discovered or have had
+parameters modified by the \fBmodify target\fR subcommand.
+.sp
+When used with the \fB-S\fR option for a specified target, this subcommand
+returns:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+target name
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+logical unit number
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+vendor ID
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+product ID
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+OS device name (for example, \fB/dev/rdsk/c0t2d0s0\fR)
+.RE
+The \fB-v\fR options gives more details, such as the current login parameters,
+the detailed connection information, and the discovery method used to discover
+the target.
+.sp
+A return of \fBNA\fR as the discovery method parameter indicates that the
+target was created with a \fBiscsiadm modify target-param\fR command and does
+not exist as a discovered object. To remove such targets, use \fBiscsiadm
+remove target-param\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBtarget-param\fR [\fB-v\fR] \fItarget\fR [...]\fR
+.ad
+.sp .6
+.RS 4n
+Lists a target's default and user-defined parameters.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdiscovery-address\fR [\fB-v\fR] [\fIdiscovery-address\fR[, ...]]\fR
+.ad
+.sp .6
+.RS 4n
+Lists the \fBdiscovery-address\fR objects that have been added using the
+\fBiscsiadm add discovery-address\fR subcommand.
+.sp
+When used with the \fB-v\fR option, lists all known targets at a specified
+\fIdiscovery-address\fR. The \fB-v\fR option returns one or more target names
+along with zero or more target addresses and associated target portal group
+tags (TPGT), if applicable.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBisns-server\fR [\fB-v\fR] [\fIisns-server\fR[, ...]]\fR
+.ad
+.sp .6
+.RS 4n
+Lists the \fBisns-server\fR objects that have been added using the
+\fBiscsiadm\fR \fBadd\fR \fBisns-server\fR subcommand.
+.sp
+When used with the \fB-v\fR option, this subcommand lists all known targets at
+a specified \fBisns-server\fR address. The \fB-v\fR option returns one of more
+target names along with zero or more target addresses and associated target
+portal group tags, if applicable.
+.RE
+
+.SS "\fBmodify\fR Subcommand"
+.sp
+.LP
+The syntax for the \fBmodify\fR subcommand is:
+.sp
+.in +2
+.nf
+# iscsiadm modify \fIdirect_object\fR [\fIoptions\fR]
+.fi
+.in -2
+
+.sp
+.LP
+The \fBmodify\fR subcommand supports the following \fIdirect_object\fRs:
+.sp
+.ne 2
+.na
+\fB\fBdiscovery\fR [\fIoptions\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Enabling a discovery method initiates a discovery using that method. Disabling
+a discovery method that is currently enabled does not affect connections to any
+targets that have already been discovered by that method.
+.sp
+Options for \fBmodify discovery\fR are as follows:
+.sp
+.ne 2
+.na
+\fB\fB-i\fR, \fB-iSNS\fR \fBenable\fR | \fBdisable\fR\fR
+.ad
+.sp .6
+.RS 4n
+Enable or disable iSNS discovery.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR, \fB-\fR\fB-static\fR \fBenable\fR | \fBdisable\fR\fR
+.ad
+.sp .6
+.RS 4n
+Enable or disable static discovery.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-t\fR, \fB-\fR\fB-sendtargets\fR \fBenable\fR | \fBdisable\fR\fR
+.ad
+.sp .6
+.RS 4n
+Enable or disable SendTargets discovery.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBinitiator-node\fR [\fIoptions\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Modifies an initiator's properties. If a target is currently connected, this
+operation can succeed. However, the modified set of parameters will not be in
+effect for that target until an existing connection session no longer exists
+and a new connection has been established. The options \fB-C\fR and
+\fB-\fR\fB-CHAP-secret\fR require a CHAP secret entry in response to a prompt.
+.sp
+For iSCSI booting when the Solaris I/O multipathing feature (formerly known as
+Sun StorEdge Traffic Manager [STMS] or MPxIO) is disabled, you can modify only
+the following initiator-node options:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fB-r\fR, \fB--radius-server\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fB-R\fR, \fB--radius-access\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fB-P\fR, \fB--radius-shared-secret\fR
+.RE
+For iSCSI booting when the Solaris I/O multipathing feature is enabled, you can
+modify only the following initiator-node options:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fB-h\fR, \fB--headerdigest\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fB-d\fR, \fB--datadigest\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fB-c\fR, \fB--configured-sessions\fR
+.RE
+Options for \fBmodify initiator-node\fR are as follows:
+.sp
+.ne 2
+.na
+\fB\fB-A\fR, \fB-\fR\fB-node-alias\fR \fI<initiator node alias>\fR\fR
+.ad
+.sp .6
+.RS 4n
+Modifies the initiator node alias. Maximum length of 223 characters.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-a\fR, \fB-\fR\fB-authentication\fR \fBchap\fR | \fBnone\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets the authentication mode.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-C\fR, \fB-\fR\fB-CHAP-secret\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets the CHAP secret value. There is no default value. Maximum length is 16
+characters; minimum required length is 12 characters.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-c\fR, \fB--configured-sessions\fR \fI<num_sessions>\fR | \fI<IP
+address>\fR[,\fI<IP address>\fR\&...]\fR
+.ad
+.sp .6
+.RS 4n
+Sets the number of configured iSCSI sessions that will be created for each
+iSCSI target. The feature should be used in combination with the Solaris I/O
+multipathing feature described in \fBscsi_vhci\fR(4D).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-d\fR, \fB--datadigest\fR \fBnone\fR | \fBCRC32\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets whether CRC32 is enabled to check SCSI data transfers.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-H\fR, \fB-\fR\fB-CHAP-name\fR \fICHAP name\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies a CHAP username. If you do not use this option, upon initialization,
+the CHAP name is set to the initiator node name. When the authentication method
+is set to CHAP (see \fB-a\fR/\fB-\fR\fB-authentication\fR option, above), the
+CHAP username is displayed with the command \fBiscsiadm list initiator-node\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-h\fR, \fB--headerdigest\fR \fBnone\fR | \fBCRC32\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets whether CRC32 is enabled to check SCSI packet headers.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-N\fR, \fB-\fR\fB-node-name\fR \fI<initiator node name>\fR\fR
+.ad
+.sp .6
+.RS 4n
+Modifies the initiator node name. Maximum of 223 characters.
+.LP
+Note -
+.sp
+.RS 2
+During Solaris installation, the initiator node name is set to a globally
+unique value. Changing this value can adversely affect operation within the
+iSCSI network.
+.RE
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-P\fR, \fB--radius-shared-secret\fR (exclusive)\fR
+.ad
+.sp .6
+.RS 4n
+Sets the RADIUS shared secret.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-R\fR, \fB--radius-access\fR \fBenable\fR | \fBdisable\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets whether a RADIUS server will be used.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-r\fR, \fB--radius-server\fR \fI<IP address>\fR[:\fI<port>\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Sets the IP address and port of the radius server to be used.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-T\fR, \fB-\fR\fB-tunable-param\fR
+<<\fItunable-prop\fR>=<\fIvalue\fR>, ...>\fR
+.ad
+.sp .6
+.RS 4n
+Specify one or more tunable parameters for all targets that initiator node
+connected.
+.LP
+Note -
+.sp
+.RS 2
+These values should only be modified by an administrator with a good working
+knowledge of the parameter's impact within the iSCSI network.
+.RE
+Supported tunable-prop options are:
+.sp
+.ne 2
+.na
+\fB\fBrecv-login-rsp-timeout\fR\fR
+.ad
+.sp .6
+.RS 4n
+Session Login Response Time
+.sp
+The \fBrecv-login-rsp-timeout\fR option specifies how long iSCSI initiator will
+wait for the response of iSCSI session login request from the iSCSI target.
+Valid value is from 0 to 60*60, default to 60 seconds.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBconn-login-max\fR\fR
+.ad
+.sp .6
+.RS 4n
+Maximized Connection Retry Time
+.sp
+The \fBconn-login-max\fR option lets the iSCSI initiator reestablish the
+connection to the target in case of IO timeout or connection failure during the
+given time window. Valid value is from 0 to 60*60, default to 180 seconds.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpolling-login-delay\fR\fR
+.ad
+.sp .6
+.RS 4n
+Login Retry Time Interval
+.sp
+The \fBpolling-login-delay\fR option specifies the time interval between each
+login retry when iSCSI initiator to target IO timeout or connection failure.
+Valid value is from 0 to 60*60, default to 60 seconds.
+.RE
+
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBtarget-param\fR [\fIoptions\fR] \fItarget\fR\fR
+.ad
+.sp .6
+.RS 4n
+Modifies a target's parameters. If a target is currently connected, the modify
+operation will succeed, although the modified settings might not take effect
+for a few seconds. To confirm that these settings are active, use \fBiscsiadm
+list target\fR \fB-v\fR. If a specified target is not associated with any
+discovery method, a target object is created with the specified parameters.
+After using this command to modify a target's parameters, the new parameters
+will persist until they are modified or removed with a \fBiscsiadm remove
+target-param\fR command on that target. The options \fB-C\fR and
+\fB-\fR\fB-CHAP-secret\fR require a CHAP secret entry in response to a prompt.
+.sp
+Options for \fBmodify target-param\fR are as follows:
+.sp
+.ne 2
+.na
+\fB\fB-B\fR, \fB-\fR\fB-bi-directional-authentication enable | disable\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets the bidirectional option. If set to \fBenable\fR, the initiator performs
+bidirectional authentication for the specified target.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-C\fR, \fB-\fR\fB-CHAP-secret\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets the target's CHAP secret value. There is no default value. Maximum
+acceptable length is 16 characters.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-c\fR, \fB-\fR\fB-configured-sessions\fR \fI<num_sessions>\fR | \fI<IP
+address>\fR[,\fI<IP address>\fR\&...]\fR
+.ad
+.sp .6
+.RS 4n
+Sets the number of configured iSCSI sessions that will be created for each
+iSCSI target. The feature should be used in combination with the Solaris I/O
+multipathing feature described in \fBscsi_vhci\fR(4D).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-d\fR, \fB-\fR\fB-datadigest\fR \fBnone\fR | \fBCRC32\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets whether CRC32 is enabled or disabled for the data.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-H\fR, \fB-\fR\fB-CHAP-name\fR \fICHAP name\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets a CHAP username. If you do not use this option, upon initialization, the
+CHAP name is set to the target name. When the authentication method is set to
+CHAP (see \fB-a\fR/\fB-\fR\fB-authentication\fR option, under the
+\fBinitiator-node\fR direct object, above), the CHAP username is displayed with
+the command \fBiscsiadm list initiator-node\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-h\fR, \fB-\fR\fB-headerdigest\fR \fBnone\fR | \fBCRC32\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets whether CRC32 is enabled or disabled for the header.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR, \fB-\fR\fB-login-param\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify one or more login parameter settings.
+.LP
+Note -
+.sp
+.RS 2
+These values should only be modified by an administrator with a good working
+knowledge of the parameter's impact within the iSCSI network.
+.RE
+The login parameters are derived from iSCSI proposed standard RFC 3720. Valid
+values are:
+.sp
+.ne 2
+.na
+\fB\fBdataseqinorder\fR\fR
+.ad
+.RS 22n
+\fByes\fR or \fBno\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdefaulttime2retain\fR\fR
+.ad
+.RS 22n
+0-3600
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdefaulttime2wait\fR\fR
+.ad
+.RS 22n
+0-3600
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfirstburstlength\fR\fR
+.ad
+.RS 22n
+512 to 2^24-1
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBimmediatedata\fR\fR
+.ad
+.RS 22n
+\fByes\fR or \fBno\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBinitialr2t\fR\fR
+.ad
+.RS 22n
+\fByes\fR or \fBno\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmaxburstlength\fR\fR
+.ad
+.RS 22n
+512 to 2^24-1
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdatapduinorder\fR\fR
+.ad
+.RS 22n
+\fByes\fR or \fBno\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmaxoutstandingr2t\fR\fR
+.ad
+.RS 22n
+1 to 65535
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmaxrecvdataseglen\fR\fR
+.ad
+.RS 22n
+512 to 2^24-1
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-T\fR, \fB-\fR\fB-tunable-param\fR
+<<\fItunable-prop\fR>=<\fIvalue\fR>, ...>\fR
+.ad
+.sp .6
+.RS 4n
+Specify one or more tunable parameters for all targets that initiator node
+connected.
+.LP
+Note -
+.sp
+.RS 2
+Tunable values should only be modified by an administrator with a good working
+knowledge of the parameter's impact within the iSCSI network.
+.RE
+Supported \fItunable-prop\fR options are:
+.sp
+.ne 2
+.na
+\fB\fBrecv-login-rsp-timeout\fR\fR
+.ad
+.sp .6
+.RS 4n
+Session Login Response Time
+.sp
+The \fBrecv-login-rsp-timeout\fR option specifies how long iSCSI initiator will
+wait for the response of iSCSI session login request from the iSCSI target.
+Valid value is from 0 to 60*60, default to 60 seconds.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBconn-login-max\fR\fR
+.ad
+.sp .6
+.RS 4n
+Maximized Connection Retry Time
+.sp
+The \fBconn-login-max\fR option lets the iSCSI initiator reestablish the
+connection to the target in case of IO timeout or connection failure during the
+given time window. Valid value is from 0 to 60*60, default to 180 seconds.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpolling-login-delay\fR\fR
+.ad
+.sp .6
+.RS 4n
+Login Retry Time Interval
+.sp
+The \fBpolling-login-delay\fR option specifies the time interval between each
+login retry when iSCSI initiator to target IO timeout or connection failure.
+Valid value is from 0 to 60*60, default to 60 seconds.
+.RE
+
+.RE
+
+.RE
+
+.SS "\fBremove\fR Subcommand"
+.sp
+.LP
+The syntax for the \fBremove\fR subcommand is:
+.sp
+.in +2
+.nf
+# iscsiadm remove \fIdirect_object\fR
+.fi
+.in -2
+
+.sp
+.LP
+The \fBremove\fR subcommand supports the following \fIdirect_object\fRs:
+.sp
+.ne 2
+.na
+\fB\fBdiscovery-address\fR \fIdiscovery-address\fR, ...\fR
+.ad
+.sp .6
+.RS 4n
+Removes a target device from the list of discovery addresses. A discovery
+address (as in the syntax shown below) is an IP address-port combination used
+in a SendTargets discovery session. Using this discovery approach, a target
+device can inform an initiator of the target address and target name of each
+target exposed by that device. If any target exposed by the discovery address
+is currently mounted or there is active I/O on the device, an error of "logical
+unit in use" is returned and the operation fails. If the associated devices are
+not in use, they are removed.
+.sp
+\fIdiscovery-address\fR must be formatted as:
+.sp
+.in +2
+.nf
+\fI<IP address>\fR[:\fI<port>\fR]
+.fi
+.in -2
+
+There are no options associated with this direct object.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBisns-server\fR \fIisns-server\fR, ...\fR
+.ad
+.sp .6
+.RS 4n
+Removes an iSNS server from the list of iSNS server addresses. An iSNS server
+address (specified in the syntax shown below) is an IP address-port combination
+used in an iSNS discovery session. By using iSNS discovery, an iSNS server can
+provide an initiator with information about a portal and the name of each
+target that belongs to the same discovery domain as that of the initiator. If
+any target discovered by means of iSNS is currently mounted or there is active
+I/O on the device, an error of "logical unit in use" is returned and the
+operation fails. If the associated devices are not in use, they are removed.
+.sp
+\fIisns-server\fR must be formatted as:
+.sp
+.in +2
+.nf
+\fIIP_address\fR[:\fIport\fR]
+.fi
+.in -2
+
+There are no options associated with this direct object.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBstatic-config\fR \fIstatic_target\fR, ...\fR
+.ad
+.sp .6
+.RS 4n
+Removes a target from the list of statically discovered targets. If the target
+being removed is currently mounted or there is active I/O on the device, an
+error of "logical unit in use" is returned and the operation fails. If a device
+is not in use, it will be removed.
+.sp
+\fIstatic_target\fR must be formatted as:
+.sp
+.in +2
+.nf
+\fI<target-name>\fR,\fI<target-address>\fR[:\fIport-number\fR][,\fItpgt\fR]
+.fi
+.in -2
+
+There are no options associated with this direct object.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBtarget-param\fR \fItarget-name\fR\fR
+.ad
+.sp .6
+.RS 4n
+Removes target specified by \fItarget-name\fR. The target name is formatted as:
+.sp
+.in +2
+.nf
+\fI<target-name>\fR
+.fi
+.in -2
+
+There are no options associated with this direct object. For iSCSI booting when
+the Solaris I/O multipathing feature (formerly known as Sun StorEdge Traffic
+Manager [STMS] or MPxIO) is enabled, you cannot remove the target.
+.RE
+
+.SS "Proper Use of Discovery Methods"
+.sp
+.LP
+Do not configure a target to be discovered by both static and dynamic discovery
+methods. The consequence of using redundant discovery methods might be slow
+performance when communicating with the iSCSI target device.
+.SH OPTIONS
+.sp
+.LP
+The following generic options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-V\fR, \fB-\fR\fB-version\fR\fR
+.ad
+.RS 17n
+Displays version information. Stops interpretation of subsequent arguments.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-?\fR, \fB-\fR\fB-help\fR\fR
+.ad
+.RS 17n
+Displays help information. Can be used following an \fBiscsiadm\fR command with
+no arguments, following a subcommand, or following a subcommand-direct object
+combination. Responds with help information appropriate for your entry. For
+example, if you enter:
+.sp
+.in +2
+.nf
+# \fBiscsiadm modify initiator-node --help\fR
+.fi
+.in -2
+.sp
+
+\&...\fBiscsiadm\fR responds with a display of the options available for that
+combination of subcommand and direct object.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRAdding a Discovery Address
+.sp
+.LP
+The following command uses the \fBadd\fR subcommand to add a discovery address.
+
+.sp
+.in +2
+.nf
+# \fBiscsiadm add discovery-address 10.0.0.1:3260 10.0.0.2:3260\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRAdding a Static Target
+.sp
+.LP
+The following command uses the \fBadd\fR subcommand to add a static target.
+
+.sp
+.in +2
+.nf
+# \fBiscsiadm add static-config \e
+iqn.1999-08.com.array:sn.01234567,10.0.0.1:3260\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRListing Current Discovery Settings
+.sp
+.LP
+The following command uses the \fBlist\fR subcommand to list current discovery
+settings.
+
+.sp
+.in +2
+.nf
+# \fBiscsiadm list discovery\fR
+ Discovery:
+ Static: enabled
+ Send Targets: disabled
+ iSNS: enabled
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 4 \fRObtaining Verbose Discovery Output
+.sp
+.LP
+The following commands uses the \fB-v\fR option (one with, one without) with
+the \fBlist\fR subcommand to obtain verbose output.
+
+.sp
+.in +2
+.nf
+# \fBiscsiadm list discovery-address\fR
+ Discovery Address: 10.0.0.1:3260
+ Discovery Address: 10.0.0.2:3260
+
+# \fBiscsiadm list discovery-address -v 10.0.0.1:3260\fR
+ Discovery Address: 10.0.0.1:3260
+ Target name: eui.210000203787d1f7
+ Target address: 10.0.0.1:3260
+ Target name: eui.210000203787a693
+ Target address: 10.0.0.1:3260
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 5 \fRDisplaying Information on the Initiator
+.sp
+.LP
+The following command uses the \fBlist\fR subcommand to display information on
+the initiator.
+
+.sp
+.in +2
+.nf
+# \fBiscsiadm list initiator-node\fR
+Initiator node name: iqn.1986-03.com.company.central.interopv20-1
+Initiator node alias: interopv20-1
+ Login Parameters (Default/Configured):
+ Header Digest: NONE/NONE
+ Data Digest: NONE/NONE
+ Authentication Type: CHAP
+ CHAP Name: iqn.1986-03.com.company.central.interopv20-1
+ RADIUS Server: NONE
+ RADIUS access: disabled
+ Tunable Parameters (Default/Configured):
+ Session Login Response Time: 60/-
+ Maximum Connection Retry Time: 180/-
+ Login Retry Time Interval: 60/-
+ Configured Sessions: 1
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 6 \fRDisplaying Static Configuration Information
+.sp
+.LP
+The following command uses the \fBlist\fR subcommand to display information
+about static configurations.
+
+.sp
+.in +2
+.nf
+# \fBiscsiadm list static-config\fR
+ Static target: eui.210000203787a693,10.0.0.1:3260
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 7 \fRDisplaying Target Information
+.sp
+.LP
+The following commands show the use of the \fBlist\fR subcommand with various
+options to display information about targets.
+
+.sp
+.in +2
+.nf
+# \fBiscsiadm list target\fR
+Target: iqn.2004-05.com.abcStorage:Tgt-1
+ Alias: -
+ TPGT: 12288
+ ISID: 4000002a0000
+ Connections: 1# \fBiscsiadm list target -v iqn.2004-05.com.abcStorage:Tgt-1\fR
+Target: iqn.2004-05.com.abcStorage:Tgt-1
+ Alias: -
+ TPGT: 12288
+ ISID: 4000002a0000
+ Connections: 1
+ CID: 0
+ IP address (Local): 10.4.52.158:32803
+ IP address (Peer): 10.4.49.70:3260
+ Discovery Method: SendTargets
+ Login Parameters (Negotiated):
+ Data Sequence In Order: yes
+ Data PDU In Order: yes
+ Default Time To Retain: 20
+ Default Time To Wait: 2
+ Error Recovery Level: 0
+ First Burst Length: 65536
+ Immediate Data: yes
+ Initial Ready To Transfer (R2T): yes
+ Max Burst Length: 262144
+ Max Outstanding R2T: 1
+ Max Receive Data Segment Length: 65536
+ Max Connections: 1
+ Header Digest: NONE
+ Data Digest: NONE
+# \fBiscsiadm list target -S iqn.2004-05.com.abcStorage:Tgt-1\fR
+Target: iqn.2004-05.com.abcStorage:Tgt-1
+ Alias: -
+ TPGT: 12288
+ ISID: 4000002a0000
+ Connections: 1
+ LUN: 6
+ Vendor: ABCStorage
+ Product: iSCSI Target
+ OS Device Name: /dev/rdsk/c3t1d0s2
+ LUN: 5
+ Vendor: ABCStorage
+ Product: iSCSI Target
+ OS Device Name: /dev/rdsk/c3t0d0s2
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 8 \fRDisplaying Target Parameter Information
+.sp
+.LP
+The following command uses the \fBlist\fR subcommand to display target
+information for a specific target.
+
+.sp
+.in +2
+.nf
+# \fBiscsiadm list target-param -v iqn.2004-05.com.abcStorage:Tgt-1\fR
+Target: iqn.2004-05.com.abcStorage:Tgt-1
+ Alias: -
+ Bi-directional Authentication: disabled
+ Authentication Type: NONE
+ Login Parameters (Default/Configured):
+ Data Sequence In Order: yes/-
+ Data PDU In Order: yes/-
+ Default Time To Retain: 20/-
+ Default Time To Wait: 2/-
+ Error Recovery Level: 0/-
+ First Burst Length: 65536/-
+ Immediate Data: yes/-
+ Initial Ready To Transfer (R2T): yes/-
+ Max Burst Length: 262144/-
+ Max Outstanding R2T: 1/-
+ Max Receive Data Segment Length: 65536/-
+ Max Connections: 1/-
+ Header Digest: NONE/-
+ Data Digest: NONE/-
+ Tunable Parameters (Default/Configured):
+ Session Login Response Time: 60/-
+ Maximum Connection Retry Time: 180/-
+ Login Retry Time Interval: 60/-
+ Configured Sessions: 1
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 9 \fREnabling Static Discovery Method
+.sp
+.LP
+The following command uses the \fBmodify\fR subcommand to enable the static
+discovery method.
+
+.sp
+.in +2
+.nf
+# \fBiscsiadm modify discovery --static enable\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 10 \fRSetting the IP Address for the Radius Server
+.sp
+.LP
+The following command uses the \fBmodify\fR subcommand to set the IP address
+for the radius server, which will be used for CHAP authentication.
+
+.sp
+.in +2
+.nf
+# \fBiscsiadm modify initiator --radius-server 10.0.0.1\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 11 \fRSetting the Node Name for Initiator
+.sp
+.LP
+The following command uses the \fBmodify\fR subcommand to set the node name for
+the initiator node.
+
+.sp
+.in +2
+.nf
+# \fBiscsiadm modify initiator-node -N iqn.2004-10.com.SUN.host-1\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 12 \fRChanging Target Parameters
+.sp
+.LP
+The following command uses the \fBmodify\fR subcommand to change the target
+parameters for a specified target.
+
+.sp
+.in +2
+.nf
+# \fBiscsiadm modify target-param -d none -h none eui.210000203787a693\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 13 \fRRemoving a Discovery Address
+.sp
+.LP
+The following command uses the \fBremove\fR subcommand to remove a discovery
+address.
+
+.sp
+.in +2
+.nf
+# \fBiscsiadm remove discovery-address 10.0.0.1:3260\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 14 \fRRemoving Target Parameters
+.sp
+.LP
+The following command uses the \fBremove\fR subcommand to remove a set of
+target parameters.
+
+.sp
+.in +2
+.nf
+# \fBiscsiadm remove target-param eui.210000203787a693\fR
+.fi
+.in -2
+.sp
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Committed
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR iscsi (4D),
+.BR scsi_vhci (4D),
+.BR attributes (7)
+.sp
+.LP
+\fISystem Administration Guide: Devices and File Systems\fR
diff --git a/usr/src/man/man8/isns.8 b/usr/src/man/man8/isns.8
new file mode 100644
index 0000000000..1da5022adf
--- /dev/null
+++ b/usr/src/man/man8/isns.8
@@ -0,0 +1,285 @@
+'\" te
+.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH ISNS 8 "Nov 8, 2007"
+.SH NAME
+isns \- Internet Storage Name Service
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/isns\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The Internet Storage Name Service (iSNS) provides consolidated discovery
+services for Internet SCSI (iSCSI) and Internet Fibre Channel Protocol (iFCP)
+devices in an IP network. iSNS uses a client/server mechanism: servers store
+configuration information for clients, and provide that information upon a
+client's request. IETF RFC 4171 describes the protocols between the server and
+client.
+.sp
+.LP
+This man page provides a summary of the Solaris iSNS server implementation. The
+current implementation does not support iFCP devices.
+.sp
+.LP
+Solaris iSNS server is implemented as the daemon \fBisns\fR, which binds to the
+well -known port 3205 to service client requests. The daemon is started by the
+service management facility (\fBsmf\fR(7)), using the fault management resource
+identifier (FMRI):
+.sp
+.in +2
+.nf
+svc:/network/isns_server
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Use \fBsvcadm\fR(8) to enable \fBisns\fR. Enabling the service means that it
+starts and runs automatically whenever the operating system is booted. The
+state of service can be displayed with the \fBsvcs\fR(1) command.
+.sp
+.LP
+The service properties listed below can be managed using \fBsvccfg\fR(8). The
+default value is assigned per RFC 4171 and implementation choice.
+.sp
+.ne 2
+.na
+\fB\fBdata_store_location\fR\fR
+.ad
+.sp .6
+.RS 4n
+Configuration data store location. The default location is
+\fB/etc/isns/isnsdata.xml\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBESI_retry_threshold_count\fR\fR
+.ad
+.sp .6
+.RS 4n
+Entity Status Inquiry retry threshold counter. The default count is \fB3\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBManagement_SCNs_Enabled\fR\fR
+.ad
+.sp .6
+.RS 4n
+Boolean that determines whether Management State Change Notification is
+enabled. The default is \fByes\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBAuthorized_Control_Nodes\fR\fR
+.ad
+.sp .6
+.RS 4n
+Control node names.
+.RE
+
+.sp
+.LP
+After changing a property value, you must use \fBsvcadm\fR(8) \fBrefresh\fR to
+enable \fBisns\fR to recognize the new value. If you change the
+\fBdata_store_location\fR property, you must enter a \fBsvcadm restart\fR
+command for the change to take effect.
+.sp
+.LP
+RFC 4171 defines the default discovery domain, the default domain set, and the
+"Default DD/DDS" setting with the intent of managing clients that have not been
+assigned to any user-defined discovery domain. The server adopts the following
+behaviors with respect to the default discovery domain and domain set:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+An unassigned client is added to the default discovery domain. A newly
+registered client or a client that was removed from its last discovery domain
+membership is considered to be an unassigned client.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+When a client gets assigned to a user-defined discovery domain, the server will
+remove the client from the default discovery domain.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The default discovery domain set is allowed to be administratively activated or
+deactivated in order to let the administrator control discovery among clients
+in the default discovery domain.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+It is not allowed to administratively add a client to the default discovery
+domain, nor to administratively add a user-defined discovery domain to the
+default discovery domain set.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The default state of the Default discovery domain set is inactive.
+.RE
+.sp
+.LP
+The \fBisns\fR server supports certain \fBrbac\fR(7) authorizations that allow
+you to administer \fBisns\fR activity. These authorizations include the
+following \fBauth_attr\fR(5) privileges:
+.sp
+.ne 2
+.na
+\fB\fBsolaris.isnsmgr.write\fR\fR
+.ad
+.sp .6
+.RS 4n
+Required to create a discovery domain or domain set, to enable/disable a
+discovery domain set and to change grouping of iSNS clients in a discovery
+domain or grouping of discovery domains in a discovery domain set.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsolaris.smf.manage.isns\fR\fR
+.ad
+.sp .6
+.RS 4n
+Required to manage the \fBisns\fR server through the \fBsmf\fR(7).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsolaris.smf.value.isns\fR\fR
+.ad
+.sp .6
+.RS 4n
+Required to change the SMF service properties associated with \fBisns\fR.
+.RE
+
+.sp
+.LP
+The iSNS Server Management profile (see \fBprof_attr\fR(5)) includes all of the
+preceding authorizations. See \fBrbac\fR(7) for an overview of roles and
+authorizations.
+.SH OPTIONS
+.sp
+.LP
+There are no options supported by the \fBisns\fR daemon.
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRStarting an \fBisns\fR Server
+.sp
+.LP
+The following command starts the \fBisns\fR server.
+
+.sp
+.in +2
+.nf
+# \fBsvcadm enable svc:/network/isns_server\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRStopping an \fBisns\fR Server
+.sp
+.LP
+The following command stops the \fBisns\fR server.
+
+.sp
+.in +2
+.nf
+# \fBsvcadm disable svc:/network/isns_server\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRChanging an \fBisns\fR Property
+.sp
+.LP
+The following sequence of commands changes the value of the
+\fBESI_retry_threshold_count\fR property.
+
+.sp
+.in +2
+.nf
+# \fBsvccfg -s svc:/network/isns_server setprop \e
+config/ESI_retry_threshold_count = 6\fR
+# \fBsvcadm refresh svc:/network/isns_server\fR
+.fi
+.in -2
+.sp
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/usr/sbin/isns\fR\fR
+.ad
+.sp .6
+.RS 4n
+iSNS daemon binary.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Standard
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR svcs (1),
+.BR auth_attr (5),
+.BR prof_attr (5),
+.BR attributes (7),
+.BR rbac (7),
+.BR smf (7),
+.BR isnsadm (8),
+.BR svcadm (8),
+.BR svccfg (8)
+.SH NOTES
+.sp
+.LP
+It is strongly recommended that you restart the server (\fBsvcadm restart\fR)
+after a service property is changed. This allows the server to apply a uniform
+setting for existing and new clients.
+.sp
+.LP
+A control node, as described in RFC 4171, is not required to administer the
+server. Control node operations can be achieved through the \fBisnsadm\fR(8)
+command interface on the local host. For example, \fBisnsadm\fR enables you to
+create a discovery domain and a discovery domain set and to add a member to it,
+in order to create discovery domain and discovery domain set associations.
diff --git a/usr/src/man/man8/isnsadm.8 b/usr/src/man/man8/isnsadm.8
new file mode 100644
index 0000000000..7c0bfb096f
--- /dev/null
+++ b/usr/src/man/man8/isnsadm.8
@@ -0,0 +1,766 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH ISNSADM 8 "Sep 25, 2008"
+.SH NAME
+isnsadm \- administer the internet Storage Name Server (iSNS) server
+.SH SYNOPSIS
+.LP
+.nf
+\fBisnsadm\fR \fIoptions\fR
+.fi
+
+.LP
+.nf
+\fBisnsadm\fR \fIsubcommand\fR [\fIsubcommand_options\fR] [\fIoperand\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBisnsadm\fR command is the command-line interface to the Internet Storage
+Name Service (iSNS) server. \fBisnsadm\fR comprises a set of subcommands,
+described in their own section, each of which accomplishes one of the iSNS
+server management functions.
+.sp
+.LP
+For any operations that will change the iSNS configurations the
+\fBsolaris.isnsmgr.write\fR authorization is required. Refer to \fBisns\fR(8).
+For read operations, the command does not require special authorizations.
+.sp
+.LP
+\fBisnsadm\fR has a set of general options and a set of subcommand-specific
+options. The first category is described under OPTIONS; the second category is
+described in the context of each subcommand description.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-?\fR, \fB--help\fR\fR
+.ad
+.sp .6
+.RS 4n
+Displays context help. Stops interpretation of any subsequent arguments.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-V\fR, \fB--version\fR\fR
+.ad
+.sp .6
+.RS 4n
+Displays version information. Stops interpretation of any subsequent
+arguments.
+.RE
+
+.SH OPERANDS
+.sp
+.LP
+The following operands are used by one or more \fBisnsadm\fR subcommands.
+.sp
+.ne 2
+.na
+\fB\fIiscsi-node-name\fR\fR
+.ad
+.sp .6
+.RS 4n
+iSCSI target or iSCSI initiator symbolic name. A string with a maximum length
+of 223 characters.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIdiscovery-domain-name\fR\fR
+.ad
+.sp .6
+.RS 4n
+Discovery domain symbolic name. A string with a maximum length of 256
+characters.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIdiscovery-domain-set-name\fR\fR
+.ad
+.sp .6
+.RS 4n
+Discovery domain set symbolic name. A string with a maximum length of 256
+characters.
+.RE
+
+.SH SUBCOMMANDS
+.sp
+.LP
+The \fBisnsadm\fR command supports the subcommands described below.
+.SS "\fBadd-dd\fR"
+.sp
+.LP
+The \fBadd-dd\fR subcommand adds a discovery domain to a discovery domain set.
+.sp
+.LP
+The \fBadd-dd\fR subcommand has the following syntax:
+.sp
+.in +2
+.nf
+# \fBisnsadm add-dd \fIoption\fR \fIdiscovery-domain-name\fR, ...\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+\fBadd-dd\fR has the following option:
+.sp
+.ne 2
+.na
+\fB\fB-s\fR \fIdiscovery-domain-set-name\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies a discovery domain set.
+.RE
+
+.SS "\fBadd-node\fR"
+.sp
+.LP
+The \fBadd-node\fR subcommand adds a node to a specified discovery-domain.
+.sp
+.LP
+The \fBadd-node\fR subcommand has the following syntax:
+.sp
+.in +2
+.nf
+# \fBisnsadm add-node \fIoption\fR \fIiscsi-node-name\fR,...\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+\fBadd-node\fR has the following options:
+.sp
+.ne 2
+.na
+\fB\fB-d\fR,\fB--dd\fR \fIdiscovery-domain-name\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies a discovery domain.
+.RE
+
+.SS "\fBcreate-dd\fR"
+.sp
+.LP
+The \fBcreate-dd\fR subcommand creates a discovery domain with the name you
+specify.
+.sp
+.LP
+The \fBcreate-dd\fR subcommand has the following syntax:
+.sp
+.in +2
+.nf
+# \fBisnsadm create-dd \fIdiscovery-domain-name\fR, ...\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+\fBcreate-dd\fR has no options.
+.SS "\fBcreate-dd-set\fR"
+.sp
+.LP
+The \fBcreate-dd-set\fR subcommand creates a discovery domain set with the name
+you specify.
+.sp
+.LP
+The \fBcreate-dd-set\fR subcommand has the following syntax:
+.sp
+.in +2
+.nf
+# \fBisnsadm create-dd-set \fIdiscovery-domain-set-name\fR, ...\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+\fBcreate-dd-set\fR has no options.
+.SS "\fBdelete-dd\fR"
+.sp
+.LP
+The \fBdelete-dd\fR subcommand deletes a discovery domain of the name you
+specify.
+.sp
+.LP
+The \fBdelete-dd\fR subcommand has the following syntax:
+.sp
+.in +2
+.nf
+# \fBisnsadm delete-dd \fIdiscovery-domain-name\fR, ...\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+\fBdelete-dd\fR has no options.
+.SS "\fBdelete-dd-set\fR"
+.sp
+.LP
+The \fBdelete-dd-set\fR subcommand deletes a discovery domain set of the name
+you specify.
+.sp
+.LP
+The \fBdelete-dd-set\fR subcommand has the following syntax:
+.sp
+.in +2
+.nf
+# \fBisnsadm delete-dd-set \fIdiscovery-domain-set-name\fR, ...\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+\fBdelete-dd-set\fR has no options.
+.SS "\fBdisable-dd-set\fR"
+.sp
+.LP
+The \fBdisable-dd-set\fR subcommand disables a discovery domain set.
+.sp
+.LP
+The \fBdisable-dd-set\fR subcommand has the following syntax:
+.sp
+.in +2
+.nf
+# \fBisnsadm disable-dd-set \fIdiscovery-domain-set-name\fR, ...\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+\fBdisable-dd-set\fR has no options.
+.SS "\fBenable-dd-set\fR"
+.sp
+.LP
+The \fBenable-dd-set\fR subcommand enables a discovery domain set.
+.sp
+.LP
+The \fBenable-dd-set\fR subcommand has the following syntax:
+.sp
+.in +2
+.nf
+# \fBisnsadm enable-dd-set \fIdiscovery-domain-set-name\fR, ...\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+\fBenable-dd-set\fR has no options.
+.SS "\fBlist-dd\fR"
+.sp
+.LP
+The \fBlist-dd\fR subcommand displays information about discovery domains. If
+no operand is specified, it lists all discovery domains that currently exist on
+the iSNS server.
+.sp
+.LP
+The \fBlist-dd\fR subcommand has the following syntax:
+.sp
+.in +2
+.nf
+# \fBisnsadm list-dd [\fIoption\fR] [\fIdiscovery-domain-name\fR, ...]\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+\fBlist-dd\fR supports the following option:
+.sp
+.ne 2
+.na
+\fB\fB-v\fR, \fB--verbose\fR\fR
+.ad
+.sp .6
+.RS 4n
+Displays the member contents of the discovery domain(s).
+.RE
+
+.SS "\fBlist-dd-set\fR"
+.sp
+.LP
+The \fBlist-dd-set\fR subcommand lists the discovery domain sets, both enabled
+and disabled, that exist on the iSNS server. Note that there is no \fBdd-set\fR
+registration. If no operand is specified, it lists all of the discovery domain
+sets.
+.sp
+.LP
+The \fBlist-dd-set\fR subcommand has the following syntax:
+.sp
+.in +2
+.nf
+# \fBisnsadm list-dd-set [\fIoption\fR] [\fIdiscovery-domain-set-name\fR, ...]\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+\fBlist-dd-set\fR supports the following option:
+.sp
+.ne 2
+.na
+\fB\fB-v\fR, \fB--verbose\fR\fR
+.ad
+.sp .6
+.RS 4n
+Shows all discovery domains within the discovery domain set.
+.RE
+
+.SS "\fBlist-node\fR"
+.sp
+.LP
+The \fBlist-node\fR subcommand displays information about nodes that are
+currently registered with the iSNS server or that are not registered and belong
+to non-default discovery-domain(s). For the latter case, the node has its type
+field shown as \fBunknown\fR. If no operand is specified, \fBlist-node\fR lists
+all nodes known by the iSNS server.
+.sp
+.LP
+The \fBlist-node\fR subcommand has the following syntax:
+.sp
+.in +2
+.nf
+# \fBisnsadm list-node [\fIoptions\fR] [\fIiscsi-node-name\fR, ...]\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+\fBlist-node\fR supports the following options:
+.sp
+.ne 2
+.na
+\fB\fB-t\fR, \fB--target\fR\fR
+.ad
+.sp .6
+.RS 4n
+Filters the list to display only iSCSI target nodes.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-i\fR, \fB--initiator\fR\fR
+.ad
+.sp .6
+.RS 4n
+Filters the list to display only iSCSI initiator nodes.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR, \fB--verbose\fR\fR
+.ad
+.sp .6
+.RS 4n
+Displays details about a node. Without this option, only the name, alias, and
+type information are displayed.
+.RE
+
+.SS "\fBmodify-dd\fR"
+.sp
+.LP
+The \fBmodify-dd\fR subcommand modifies an attribute of a specified discovery
+domain.
+.sp
+.LP
+The \fBmodify-dd\fR subcommand has the following syntax:
+.sp
+.in +2
+.nf
+# \fBisnsadm modify-dd \fIoption\fR \fIdiscovery-domain-name\fR\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+\fBmodify-dd\fR has the following option:
+.sp
+.ne 2
+.na
+\fB\fB-n\fR \fIdiscovery-domain-name\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the new name of a discovery domain to be applied to an existing
+discovery-domain.
+.RE
+
+.SS "\fBmodify-dd-set\fR"
+.sp
+.LP
+The \fBmodify-dd-set\fR subcommand modifies a discovery domain set.
+.sp
+.LP
+The \fBmodify-dd-set\fR subcommand has the following syntax:
+.sp
+.in +2
+.nf
+# \fBisnsadm modify-dd-set \fIoption\fR \fIdiscovery-domain-set-name\fR\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+\fBmodify-dd-set\fR has the following option:
+.sp
+.ne 2
+.na
+\fB\fB-n\fR \fIdiscovery-domain-set-name\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the new name of a discovery domain set to be applied to an existing
+discovery-domain-set.
+.RE
+
+.SS "\fBremove-dd\fR"
+.sp
+.LP
+The \fBremove-dd\fR subcommand removes the association with a specified
+discovery domain set.
+.sp
+.LP
+The \fBremove-dd\fR subcommand has the following syntax:
+.sp
+.in +2
+.nf
+# \fBisnsadm remove-dd \fIoption\fR \fIdiscovery-domain-name\fR, ...\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+\fBremove-dd\fR has the following option:
+.sp
+.ne 2
+.na
+\fB\fB-s\fR \fIdiscovery-domain-set-name\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the discovery domain set from which the discovery domain will be
+removed.
+.RE
+
+.SS "\fBremove-node\fR"
+.sp
+.LP
+The \fBremove-node\fR subcommand removes a node.
+.sp
+.LP
+The \fBremove-node\fR subcommand has the following syntax:
+.sp
+.in +2
+.nf
+# \fBisnsadm remove-node \fIoption\fR \fIiscsi-node-name\fR, ...\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+\fBremove-node\fR has the following option:
+.sp
+.ne 2
+.na
+\fB\fB-d\fR \fIdiscovery-domain-name\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the discovery domain from which a node will be removed.
+.RE
+
+.SS "\fBshow-config\fR"
+.sp
+.LP
+The \fBshow-config\fR subcommand displays the iSNS server administrative
+settings. Note that the setting can be modified by means of the service
+management facility (see \fBsmf\fR(7)). Refer to \fBisns\fR(8).
+.sp
+.LP
+The \fBshow-config\fR subcommand has the following syntax:
+.sp
+.in +2
+.nf
+# \fBisnsadm show-config\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+\fBshow-config\fR has no options.
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRDisplaying Clients
+.sp
+.LP
+The following use of the \fBlist-node\fR subcommand displays clients.
+
+.sp
+.in +2
+.nf
+# \fBisnsadm list-node -v\fR
+iSCSI Name: iqn.1986-03.com.sun:01:000e0c9f10da.45173FEA.engr
+ Alias: STK5320_NAS
+ Type: Target
+ Network Entity: SE5310
+ Portal: 172.20.57.95:3260
+ Portal Group: 1
+ Portal: 172.20.56.95:3260
+ Portal Group: 1
+ DD Name: Default
+iSCSI Name: iqn.1986-03.com.sun:01:000e0c9f10da.454F00A2.acct
+ Alias:
+ Type: Target
+ Network Entity: SE5310
+ Portal: 172.20.57.95:3260
+ Portal Group: 1
+ Portal: 172.20.56.95:3260
+ Portal Group: 1
+ DD Name: Default
+iSCSI Name: iqn.1986-03.com.sun:01:e00000000000.46fd8e2b
+ Alias: host-x2100
+ Type: Initiator
+ Network Entity: iqn.1986-03.com.sun:01:e00000000000.46fd8e2b
+ Portal: 172.20.236.123:58530
+ Portal Group: 1
+ DD Name: Default
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRDisplaying a Discovery Domain
+.sp
+.LP
+The following use of the \fBlist-dd\fR subcommand displays discovery domains.
+
+.sp
+.in +2
+.nf
+# \fBisnsadm list-dd -v\fR
+DD name: Default
+ DD set(s): Default
+ iSCSI Name: iqn.1986-03.com.sun:01:000e0c9f10da.45173FEA.engr
+ iSCSI Name: iqn.1986-03.com.sun:01:000e0c9f10da.454F00A2.acct
+ iSCSI name: iqn.1986-03.com.sun:01:e00000000000.46fd8e2b
+DD name: acct-dd
+DD name: engineering-dd
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRAdding a Node
+.sp
+.LP
+The following use of the \fBadd-node\fR subcommand adds a node to a discovery
+domain, creating a discovery domain membership.
+
+.sp
+.in +2
+.nf
+# \fBisnsadm add-node -d engineering-dd \e
+iqn.1986-03.com.sun:01:000e0c9f10da.454F00A2.engr\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 4 \fRRemoving a Node
+.sp
+.LP
+The following use of the \fBremove-node\fR subcommand removes a node from a
+discovery domain, thereby removing a discovery domain membership.
+
+.sp
+.in +2
+.nf
+# \fBisnsadm remove-node -d acct-dd \e
+iqn.1986-03.com.sun:01:000e0c9f10da.454F00A2.acct\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 5 \fRCreating a Discovery Domain Set
+.sp
+.LP
+The following use of the \fBcreate-dd-set\fR subcommand creates a discovery
+domain set.
+
+.sp
+.in +2
+.nf
+# \fBisnsadm create-dd-set operation-dd-set\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 6 \fRDisplaying a Discovery Domain Set
+.sp
+.LP
+The following use of the \fBlist-dd-set\fR subcommand displays discovery domain
+sets.
+
+.sp
+.in +2
+.nf
+# \fBisnsadm list-dd-set -v\fR
+DD Set name: Default
+ State: Disabled
+ DD Name: Default
+DD Set name: operation-dd-set
+ State: Disabled
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 7 \fRAdding a Discovery Domain
+.sp
+.LP
+The following use of the \fBadd-dd\fR subcommand adds a discovery domain to a
+discovery domain set.
+
+.sp
+.in +2
+.nf
+# \fBisnsadm add-dd -s operation-dd-set engineering-dd\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 8 \fRDisplaying a Discovery Domain Set
+.sp
+.LP
+The following use of the \fBlist-dd-set\fR displays the attributes of a
+discovery domain set.
+
+.sp
+.in +2
+.nf
+# \fBisnsadm list-dd-set\fR
+DD Set name: Default
+ State: Disabled
+ DD Name: Default
+DD Set name: operation-dd-set
+ State: Disabled
+ DD Name: engineering-dd
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 9 \fREnabling a Discovery Domain Set
+.sp
+.LP
+The following use of the \fBenable-dd-set\fR subcommand enables a discovery
+domain set.
+
+.sp
+.in +2
+.nf
+# \fBisnsadm enable-dd-set Default\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 10 \fRDisabling a Discovery Domain Set
+.sp
+.LP
+The following use of the \fBdisable-dd-set\fR subcommand disables a discovery
+domain set.
+
+.sp
+.in +2
+.nf
+# \fBisnsadm disable-dd-set Default\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 11 \fRDisplaying Administrative Settings
+.sp
+.LP
+The following use of the \fBshow-config\fR subcommand displays current
+administrative settings.
+
+.sp
+.in +2
+.nf
+# \fBisnsadm show-config\fR
+ Data Store Location: /etc/isns/isnsdata.xml
+ Entity Status Inquiry Non-Response Threshold: 3
+ Management SCN Enabled: yes
+ Authorized Control Node Names: -
+.fi
+.in -2
+.sp
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Volatile
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7),
+.BR smf (7),
+.BR iscsiadm (8),
+.BR iscsitadm (8),
+.BR isns (8)
+.SH NOTES
+.sp
+.LP
+When a subcommand is invoked with multiple operands and there are failures on
+one or more, but not all, operands, \fBisnsadm\fR displays a generic message
+indicating partial failure, with list of failed operands. An error on a
+specific operand can be found by issuing the same subcommand on the failing
+operand.
diff --git a/usr/src/man/man8/itadm.8 b/usr/src/man/man8/itadm.8
new file mode 100644
index 0000000000..57688ec196
--- /dev/null
+++ b/usr/src/man/man8/itadm.8
@@ -0,0 +1,989 @@
+'\" t
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.\"
+.\"
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 2014 Nexenta Systems, Inc. All rights reserved.
+.\"
+.TH ITADM 8 "April 9, 2016"
+.SH NAME
+itadm \- administer iSCSI targets
+.SH SYNOPSIS
+.LP
+.nf
+\fBitadm\fR create-target [\fB-a\fR,\fB--auth-method\fR radius | chap | none | default]
+ [\fB-s\fR,\fB--chap-secret\fR] [\fB-S\fR,\fB--chap-secret-file\fR \fIpath\fR]
+ [\fB-u\fR,\fB--chap-user\fR \fIchap-user-name\fR] [\fB-n\fR,\fB--node-name\fR \fItarget_node_name\fR]
+ [\fB-l\fR,\fB--alias\fR \fIalias\fR] [\fB-t\fR,\fB--tpg\fR \fItpg-name\fR[,\fItpg-name\fR]]
+.fi
+
+.LP
+.nf
+\fBitadm\fR modify-target [\fB-a\fR,\fB--auth-method\fR radius | chap | none | default]
+ [\fB-s\fR,\fB--chap-secret\fR] [\fB-S\fR,\fB--chap-secret-file\fR \fIpath\fR]
+ [\fB-u\fR,\fB--chap-user\fR \fIchap-user-name\fR] [\fB-n\fR,\fB--node-name\fR \fInew_target_node_name\fR]
+ [\fB-l\fR,\fB--alias\fR \fIalias\fR] [\fB-t\fR,\fB--tpg\fR \fItpg-name\fR[,\fItpg-name\fR]] \fItarget_node_name\fR
+.fi
+
+.LP
+.nf
+\fBitadm\fR delete-target [\fB-f\fR,\fB--force\fR] \fItarget_node_name\fR
+.fi
+
+.LP
+.nf
+\fBitadm\fR list-target [\fB-p\fR,\fB--parsable\fR] [\fB-v\fR,\fB--verbose\fR] [\fItarget_node_name\fR]
+.fi
+
+.LP
+.nf
+\fBitadm\fR create-tpg \fItpg_name\fR \fIIP-address\fR[:\fIport\fR] [\fIIP-address\fR[:\fIport\fR]]...
+.fi
+
+.LP
+.nf
+\fBitadm\fR list-tpg [\fB-p\fR,\fB--parsable\fR] [\fB-v\fR,\fB--verbose\fR] [\fItpg_name\fR]
+.fi
+
+.LP
+.nf
+\fBitadm\fR delete-tpg [\fB-f\fR,\fB--force\fR] \fItpg_name\fR
+.fi
+
+.LP
+.nf
+\fBitadm\fR create-initiator [\fB-s\fR,\fB--chap-secret\fR] [\fB-S\fR,\fB--chap-secret-file\fR \fIpath\fR]
+ [\fB-u\fR,\fB--chap-user\fR \fIchap-user-name\fR] \fIinitiator_node_name\fR
+.fi
+
+.LP
+.nf
+\fBitadm\fR modify-initiator [\fB-s\fR,\fB--chap-secret\fR] [\fB-S\fR,\fB--chap-secret-file\fR \fIpath\fR]
+ [\fB-u\fR,\fB--chap-user\fR \fIchap-user-name\fR] \fIinitiator_node_name\fR
+.fi
+
+.LP
+.nf
+\fBitadm\fR list-initiator [\fB-p\fR,\fB--parsable\fR] [\fB-v\fR,\fB--verbose\fR] \fIinitiator_node_name\fR
+.fi
+
+.LP
+.nf
+\fBitadm\fR delete-initiator \fIinitiator_node_name\fR
+.fi
+
+.LP
+.nf
+\fBitadm\fR modify-defaults [\fB-a\fR,\fB--auth-method\fR radius | chap | none]
+ [\fB-r\fR,\fB--radius-server\fR \fIIP-address\fR[:\fIport\fR]] [\fB-d\fR,\fB--radius-secret\fR]
+ [\fB-D\fR,\fB--radius-secret-file\fR \fIpath\fR][\fB-i\fR,\fB--isns\fR enable | disable]
+ [\fB-I\fR,\fB--isns-server\fR \fIIP-address\fR[:\fIport\fR][,\fIIP-address\fR[:\fIport\fR]]]
+.fi
+
+.LP
+.nf
+\fBitadm\fR list-defaults [\fB-p\fR,\fB--parsable\fR]
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBitadm\fR command manages Internet SCSI (iSCSI) target nodes within the
+SCSI Target Mode Framework described in \fBstmfadm\fR(8) and
+\fBlibstmf\fR(3LIB). This allows the iSCSI initiators to access STMF logical
+units using the iSCSI protocol. In addition to iSCSI target nodes, \fBitadm\fR
+manages two other classes of managed objects: iSCSI Target Portal Groups, and
+iSCSI Initiator Node Contexts.
+.sp
+.LP
+\fBitadm\fR is implemented as a set of subcommands with options and operands
+for each subcommand. These subcommands are described in their own section,
+below. In addition to its subcommands, \fBitadm\fR has a help command, which
+displays the utility's usage information. The help command is invoked with the
+\fB-?\fR option.
+.SS "iSCSI Target Portal Groups"
+.LP
+An iSCSI Target Network Portal is an IP address and TCP port that can be used
+by an initiator node to connect to an iSCSI target. A collection of these
+portals is called a Target Portal Group (TPG). You can use a TPG to limit
+access to an iSCSI target. Use the \fBitadm modify\fR \fB-t\fR command to bind
+a specific iSCSI target to the TPG. An iSCSI listener is created on each IP
+address that belongs to the TPG, and listens for connections to the iSCSI
+target.
+.sp
+.LP
+A TPG is identified by a unique name provided when the TPG is created. A
+numerical "Target Portal Group Tag" from the range 2-65535 is automatically
+generated when the TPG is created. The Target Portal Group Tag 1 is reserved
+for the "default" target portal group that is used when no explicit Target
+Portal Groups are set on the target. The portal for the default TPG matches
+requests from all network interfaces on port 3260.
+.SS "iSCSI Initiator Node Contexts"
+.LP
+Certain operations such as authentication by means of Challenge Handshake
+Authentication Protocol (CHAP) require parameters associated with a remote
+iSCSI Initiator Node. These parameters are associated with an iSCSI Initiator
+Node Context. An iSCSI Initiator Node Context is identified by its Initiator
+Node Name, formatted in either IQN or EUI format (see RFC 3720). For example:
+.sp
+.in +2
+.nf
+iqn.1986-03.com.sun:01:e00000000000.47d55444
+eui.02004567A425678D
+.fi
+.in -2
+.sp
+
+.SS "Specifying IP Addresses"
+.LP
+A number of \fBitadm\fR subcommands require that you specify one or more IP
+addresses with optional port numbers. For IPv4, use standard dotted decimal
+notation. For IPv6, enclose addresses in square brackets. The following are
+example specifications.
+.sp
+.in +2
+.nf
+\fBIPv4\fR: 10.2.4.1
+ 10.2.4.1:3260
+\fBIPv6\fR: [1080:0:0:0:8:800:200C:417A]
+ [1080:0:0:0:8:800:200C:417A]:3260
+.fi
+.in -2
+.sp
+
+.SH SUBCOMMANDS
+.LP
+The following are the \fBitadm\fR subcommands with their options.
+.SS "\fBitadm create-target\fR"
+.in +2
+.nf
+itadm create-target [-a,--auth-method radius | chap | none | default]
+ [-s,--chap-secret]
+ [-S,--chap-secret-file \fIpath\fR] [-u,--chap-user \fIchap-user-name\fR]
+ [-n,--node-name \fItarget_node_name\fR] [-l,--alias \fIalias\fR]
+ [-t,--tpg \fItpg-name\fR[,\fItpg-name\fR,...]]
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Create a iSCSI target with the specified options. Options are as follows.
+.sp
+.ne 2
+.na
+\fB\fB-a\fR,\fB--auth-method\fR \fBradius | chap | none | default\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the authentication method to use for the target. Valid values are
+\fBradius\fR, \fBchap\fR, and \fBnone\fR. \fBchap\fR indicates that initiators
+connecting to this target must be authenticated using the Challenge Handshake
+Authentication Protocol (CHAP). \fBradius\fR indicates initiators should also
+be authenticated by means of CHAP but the required authentication parameters
+should be obtained from a central RADIUS server (see the \fBradius-server\fR
+and \fBradius-secret\fR options). \fBnone\fR means that no authentication is
+required to connect to the target. \fBdefault\fR means the target will use the
+global setting of this property. (See the \fBmodify-defaults\fR subcommand.)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR,\fB--chap-secret\fR\fR
+.ad
+.sp .6
+.RS 4n
+The CHAP secret to send during mutual CHAP authentication. There is no default
+for this property. Maximum length is 255 characters; minimum required length is
+12 characters.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-S\fR,\fB--chap-secret-file\fR \fIpath\fR\fR
+.ad
+.sp .6
+.RS 4n
+Path to a temporary file containing the CHAP secret as described in the
+\fB-s\fR option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-u\fR,\fB--chap-user\fR \fIchap-user-name\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the CHAP username for a target for use in mutual CHAP authentication.
+This value is allowed only for targets, cannot be set globally, and is used
+only when the initiator node is configured to use mutual CHAP authentication.
+If no value is specified then the target node name is used as the username. See
+\fBiscsiadm\fR(8).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR,\fB--node-name\fR \fItarget_node_name\fR\fR
+.ad
+.sp .6
+.RS 4n
+An iSCSI Target Node is identified by its Target Node Name, formatted in either
+IQN or EUI format (see RFC 3720). This option establishes that name.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR,\fB--alias\fR \fIalias\fR\fR
+.ad
+.sp .6
+.RS 4n
+An alternate identifier associated with a target node. The identifier does not
+need to be unique.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-t\fR,\fB--tpg\fR \fItpg-name\fR[,\fItpg-name\fR,...]\fR
+.ad
+.sp .6
+.RS 4n
+A list of Target Portal Group (TPG) identifiers that specifies the TPGs that an
+initiator can use to access a specific target or the keyword \fBdefault\fR. If
+\fBdefault\fR is specified, the target will use the default portal,
+\fBINADDR_ANY:3260\fR.
+.RE
+
+.SS "\fBitadm modify-target\fR"
+.in +2
+.nf
+itadm modify-target [\fB-a\fR,\fB--auth-method\fR radius | chap | none | default]
+ [\fB-s\fR,\fB--chap-secret\fR] [\fB-S\fR,\fB--chap-secret-file\fR \fIpath\fR]
+ [\fB-u\fR,\fB--chap-user\fR \fIchap-user-name\fR] [\fB-n\fR,\fB--node-name\fR \fInew_tgt_node_name\fR]
+ [\fB-l\fR,\fB--alias\fR \fIalias\fR] [\fB-t\fR,\fB--tpg\fR \fItpg-name\fR[,\fItpg-name\fR]] \fItarget_node_name\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Modify an iSCSI target according to the specified options. Options are as
+follows.
+.sp
+.ne 2
+.na
+\fB\fB-a\fR,\fB--auth-method\fR \fBradius | chap | none | default\fR\fR
+.ad
+.sp .6
+.RS 4n
+As described under the \fBcreate-target\fR subcommand, above.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR,\fB--chap-secret\fR\fR
+.ad
+.sp .6
+.RS 4n
+As described under the \fBcreate-target\fR subcommand, above.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-S\fR,\fB--chap-secret-file\fR \fIpath\fR\fR
+.ad
+.sp .6
+.RS 4n
+As described under the \fBcreate-target\fR subcommand, above.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-u\fR,\fB--chap-user\fR \fIchap-user-name\fR\fR
+.ad
+.sp .6
+.RS 4n
+As described under the \fBcreate-target\fR subcommand, above. To remove an
+explicitly set CHAP username use \fB-u\fR \fBnone\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR,\fB--node-name\fR \fItarget_node_name\fR\fR
+.ad
+.sp .6
+.RS 4n
+Renames the target. See also the description of \fB-n\fR under the
+\fBcreate-target\fR subcommand, above.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR,\fB--alias\fR \fIalias\fR\fR
+.ad
+.sp .6
+.RS 4n
+As described under the \fBcreate-target\fR subcommand, above. To remove an
+explicitly set alias use \fB-l\fR \fBnone\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-t\fR,\fB--tpg\fR \fItpg-name\fR[,\fItpg-name\fR,...]\fR
+.ad
+.sp .6
+.RS 4n
+As described under the \fBcreate-target\fR subcommand, above.
+.RE
+
+.SS "\fBitadm list-target\fR"
+.in +2
+.nf
+itadm list-target [\fB-p\fR,\fB--parsable\fR] [\fB-v\fR,\fB--verbose\fR] [\fItarget_node_name\fR]
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+List information about the configured targets. If \fItarget_node_name\fR is
+specified, list only the information for that target. Options are as follows.
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR,\fB--parsable\fR\fR
+.ad
+.sp .6
+.RS 4n
+Used for scripting mode. Do not print headers and separate fields by a single
+tab instead of arbitrary white space.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR,\fB--verbose\fR\fR
+.ad
+.sp .6
+.RS 4n
+Verbose mode.
+.RE
+
+.SS "\fBitadm delete-target\fR"
+.in +2
+.nf
+itadm delete-target [\fB-f\fR,\fB--force\fR] \fItarget_node_name\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Delete the target specified by \fItarget_node_name\fR. The target must be
+\fBoffline\fR before it can be deleted. Option is as follows.
+.sp
+.ne 2
+.na
+\fB\fB-f\fR,\fB--force\fR\fR
+.ad
+.sp .6
+.RS 4n
+If the target persists in an online state, this option attempts to offline the
+target before deleting it.
+.RE
+
+.SS "\fBitadm create-tpg\fR"
+.in +2
+.nf
+itadm create-tpg \fItpg_name\fR \fIIP-address\fR[:\fIport\fR]...
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Create an iSCSI target portal group made up of the specified portals and assign
+it the identifier \fItpg_name\fR. Each portal is an IP address and port pair.
+IPv4 portals are specified in dotted address notation, for example,
+\fB172.31.255.255\fR. IPv6 portal addresses must be enclosed in square
+brackets.
+.sp
+.LP
+This subcommand has no options.
+.SS "\fBitadm list-tpg\fR"
+.in +2
+.nf
+itadm list-tpg [\fB-p\fR,\fB--parsable\fR] [\fB-v\fR,\fB--verbose\fR] [\fItpg_name\fR]
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+List information about the configured target portal group. If \fItpg_name\fR is
+specified then list only the information about the target portal group
+associated with that \fItpg_name\fR. Options are as follows.
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR,\fB--parsable\fR\fR
+.ad
+.sp .6
+.RS 4n
+Used for scripting mode. Do not print headers and separate fields by a single
+tab instead of arbitrary white space.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR,\fB--verbose\fR\fR
+.ad
+.sp .6
+.RS 4n
+Verbose mode.
+.RE
+
+.SS "\fBitadm delete-tpg\fR"
+.in +2
+.nf
+itadm delete-tpg [\fB-f\fR,\fB--force\fR] \fItpg_name\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Delete the target portal group associated with \fItpg_name\fR. Option is as
+follows.
+.sp
+.ne 2
+.na
+\fB\fB-f\fR,\fB--force\fR\fR
+.ad
+.sp .6
+.RS 4n
+If the TPG is associated with any targets, the request to delete will be denied
+unless this option is specified.
+.RE
+
+.SS "\fBitadm create-initiator\fR"
+.in +2
+.nf
+itadm create-initiator [\fB-s\fR,\fB--chap-secret\fR] [\fB-S\fR,\fB--chap-secret-file\fR \fIpath\fR]
+ [\fB-u\fR,\fB--chap-user\fR \fIchap-user-name\fR] \fIinitiator_node_name\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Configure parameters associated with the remote initiator named
+\fIinitiator_node_name\fR. Options are as follows.
+.sp
+.ne 2
+.na
+\fB\fB-s\fR,\fB--chap-secret\fR\fR
+.ad
+.sp .6
+.RS 4n
+As described under the \fBcreate-target\fR subcommand, above.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-S\fR,\fB--chap-secret-file\fR \fIpath\fR\fR
+.ad
+.sp .6
+.RS 4n
+As described under the \fBcreate-target\fR subcommand, above.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-u\fR,\fB--chap-user\fR \fIchap-user-name\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the CHAP username for an initiator, for use in CHAP authentication.
+If no value is specified then the initiator node name is used as the username.
+.RE
+
+.SS "\fBitadm modify-initiator\fR"
+.in +2
+.nf
+itadm modify-initiator [\fB-s\fR,\fB--chap-secret\fR] [\fB-S\fR,\fB--chap-secret-file\fR \fIpath\fR]
+ [\fB-u\fR,\fB--chap-user\fR \fIchap-user-name\fR] \fIinitiator_node_name\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Modify parameters associated with the remote initiator named
+\fIinitiator_node_name\fR. Options are as follows.
+.sp
+.ne 2
+.na
+\fB\fB-s\fR,\fB--chap-secret\fR\fR
+.ad
+.sp .6
+.RS 4n
+As described under the \fBcreate-target\fR subcommand, above.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-S\fR,\fB--chap-secret-file\fR \fIpath\fR\fR
+.ad
+.sp .6
+.RS 4n
+As described under the \fBcreate-target\fR subcommand, above.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-u\fR,\fB--chap-user\fR \fIchap-user-name\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the CHAP username for an initiator, for use in CHAP authentication.
+If no value is specified then the initiator node name is used as the username.
+.RE
+
+.SS "\fBitadm delete-initiator\fR"
+.in +2
+.nf
+itadm delete-initiator \fIinitiator_node_name\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Delete parameters associated with the remote initiator named
+\fIinitiator_node_name\fR. This subcommand has no options.
+.SS "\fBitadm list-initiator\fR"
+.in +2
+.nf
+\fBitadm\fR list-initiator [\fB-p\fR,\fB--parsable\fR] [\fB-v\fR,\fB--verbose\fR] \fIinitiator_node_name\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+List parameters associated with the initiator named \fIinitiator_node_name\fR.
+Options are as follows.
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR,\fB--parsable\fR\fR
+.ad
+.sp .6
+.RS 4n
+Used for scripting mode. Do not print headers and separate fields by a single
+tab instead of arbitrary white space.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR,\fB--verbose\fR\fR
+.ad
+.sp .6
+.RS 4n
+Verbose mode.
+.RE
+
+.SS "\fBitadm modify-defaults\fR"
+.in +2
+.nf
+itadm modify-defaults [\fB-a\fR,\fB--auth-method\fR radius | chap | none]
+ [\fB-r\fR,\fB--radius-server\fR \fIIP-address\fR[:\fIport\fR]] [\fB-d\fR,\fB--radius-secret\fR]
+ [\fB-D\fR,\fB--radius-secret-file\fR \fIpath\fR][\fB-i\fR,\fB--isns\fR enable | disable]
+ [\fB-I\fR,\fB--isns-server\fR \fIIP-address\fR[:\fIport\fR][,\fIIP-address\fR[:\fIport\fR]]]
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Modify default parameters. Options are as follows.
+.sp
+.ne 2
+.na
+\fB\fB-a\fR,\fB--auth-method\fR \fBradius | chap | none\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the default authentication method to use for all targets. Valid
+values are \fBradius\fR, \fBchap\fR, and \fBnone\fR. \fBchap\fR indicates that
+initiators connecting to this target must be authenticated using Challenge
+Handshake Authentication Protocol (CHAP). \fBradius\fR indicates initiators
+should also be authenticated by means of CHAP, but the required authentication
+parameters should be obtained from a central RADIUS server. (See
+\fB--radius-server\fR and \fB--radius-secret\fR options.) \fBnone\fR means that
+no authentication is required to connect to the target. Individual targets can
+override this global setting using the \fB-a\fR option of the
+\fBcreate-target\fR and \fBmodify-target\fR subcommands.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-d\fR,\fB--radius-secret\fR\fR
+.ad
+.sp .6
+.RS 4n
+RADIUS Shared Secret for centralized CHAP authentication.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-D\fR,\fB--radius-secret-file\fR \fIpath\fR\fR
+.ad
+.sp .6
+.RS 4n
+Path to a temporary file containing the CHAP secret as described in the
+\fB-d\fR option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-i\fR,\fB--sns\fR \fBenable | disable\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies whether targets should be registered with the set of defined iSCSI
+Name Service (iSNS) servers.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-I\fR,\fB--isns-server\fR
+\fIIP-address\fR[:\fIport\fR][,\fIIP-address\fR[:\fIport\fR],...]\fR
+.ad
+.sp .6
+.RS 4n
+Defines a list of iSNS servers with which iSCSI target nodes will be registered
+when the \fBisns\fR option associated with the respective target is set. Up to
+eight iSNS servers can be specified. To remove all iSNS servers, use \fB-I\fR
+\fBnone\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-r\fR,\fB--radius-server\fR \fIIP-address\fR[:\fIport\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Specify the IP address of the RADIUS server used for centralized CHAP
+authentication.
+.RE
+
+.SS "\fBitadm list-defaults\fR"
+.in +2
+.nf
+itadm list-defaults [\fB-p\fR,\fB--parsable\fR]
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+List information about the default properties. Option is as follows.
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR,\fB--parsable\fR\fR
+.ad
+.sp .6
+.RS 4n
+Used for scripting mode. Do not print headers and separate fields by a single
+tab instead of arbitrary white space.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRCreating a Target
+.sp
+.LP
+The following command creates a target.
+
+.sp
+.in +2
+.nf
+# \fBitadm create-target\fR
+Target iqn.1986-03.com.sun:02:72e1b181-7bce-c0e6-851e-ec0d8cf14b7a
+successfully created
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRCreating a Target with a Specific Name
+.sp
+.LP
+The following command creates a target with a specific IQN.
+
+.sp
+.in +2
+.nf
+# \fBitadm create-target -n eui.20387ab8943ef7548\fR
+or:
+# \fBitadm create-target \e
+-n iqn.1986-03.com.sun:02:a9a366f8-cc2b-f291-840948c7f29e\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRChanging a Name
+.sp
+.LP
+The following command changes an IQN for an existing target.
+
+.sp
+.in +2
+.nf
+# \fBitadm modify-target -n eui.20387ab8943ef7548 \e
+iqn.1986-03.com.sun:02:a9a366f8-909b-cc2b-f291-840948c7f29e\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 4 \fRSetting up CHAP Authentication
+.sp
+.LP
+The following command sets up CHAP authentication for a target using the
+default CHAP username.
+
+.sp
+.in +2
+.nf
+# \fBitadm modify-initiator -s iqn.1986-03.com.sun:01:e00000000000.47d55444\fR
+\fBEnter CHAP secret:\fR *********
+\fBRe-enter secret:\fR *********
+
+# \fBitadm modify-target -a chap eui.20387ab8943ef7548\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 5 \fRCreating Target Portal Groups
+.sp
+.LP
+The following command creates two target portal groups, \fBA\fR and \fBB\fR,
+using port 8000 for the addresses in TPG 2.
+
+.sp
+.in +2
+.nf
+# \fBitadm create-tpg A 192.168.0.1 192.168.0.2\fR
+# \fBitadm create-tpg B 192.168.0.2:8000 192.168.0.2:8000\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 6 \fRConfiguring a Target to Use TPGs
+.sp
+.LP
+The following command configures a target to use TPGs A and B.
+
+.sp
+.in +2
+.nf
+# \fBitadm modify-target -t A,B eui.20387ab8943ef7548\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 7 \fRSetting up RADIUS Authentication for Specific Target
+.sp
+.LP
+The following command sets up RADIUS authentication for a specific target.
+
+.sp
+.in +2
+.nf
+# \fBitadm modify-defaults -r 192.168.10.1 -d\fR
+\fBEnter RADIUS secret:\fR *********
+\fBRe-enter secret:\fR *********
+
+# \fBitadm modify-target -a radius eui.20387ab8943ef7548\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 8 \fRSetting up RADIUS Authentication for All Targets
+.sp
+.LP
+The following command sets up RADIUS authentication for all targets.
+
+.sp
+.in +2
+.nf
+# \fBitadm modify-defaults -d -r 192.168.10.1 -a radius\fR
+\fBEnter RADIUS secret:\fR *********
+\fBRe-enter secret:\fR *********
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The preceding command assumes all targets were created with \fB-a\fR
+\fBdefault\fR.
+
+.LP
+\fBExample 9 \fRListing Default Properties
+.sp
+.LP
+The following command lists default properties.
+
+.sp
+.in +2
+.nf
+# \fBitadm list-defaults\fR
+iSCSI Target Default Properties:
+
+alias: \fInone\fR
+auth: \fInone\fR
+radiusserver: \fInone\fR
+radiussecret: unset
+isns: disabled
+isnsserver: 2.3.4.5,4.5.6.7
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 10 \fRListing Targets
+.sp
+.LP
+The following command lists targets.
+
+.sp
+.in +2
+.nf
+# \fBitadm list-target\fR
+TARGET NAME STATE SESSIONS
+iqn.1986-03.com.sun:02:72e1b181-7bce-c0e6-851e-ec0d8cf14b7a online 0
+iqn.1986-03.com.sun:02:2cb0c526-c05a-e279-e396-a367006f4227 online 0
+iqn.1986-03.com.sun:02:d14125bb-1c9d-c28d-97b0-f89259b642f3 online 0
+iqn.1986-03.com.sun:02:03ff9fc5-794a-e9b4-a081-bb82917c292a online 0
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 11 \fRListing Targets (Verbose)
+.sp
+.LP
+The following command lists targets with the verbose option.
+
+.sp
+.in +2
+.nf
+# \fBitadm list-target -v\fR
+TARGET NAME STATE SESSIONS
+iqn.1986-03.com.sun:02:d23e68d8-2d79-c988-98e7-a6361689d33c online 0
+ alias: -
+ auth: none (defaults)
+ targetchapuser: -
+ targetchapsecret: unset
+ tpg-tags: default
+iqn.1986-03.com.sun:02:94ec46d4-c8e1-6993-ef03-ffc1dcd66606 online 1
+ alias: -
+ auth: chap
+ targetchapuser: -
+ targetchapsecret: unset
+ tpg-tags: nge1_ipv4 = 3
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 12 \fRListing a Specific Target
+.sp
+.LP
+The following command lists targets with the verbose option.
+
+.sp
+.in +2
+.nf
+# \fBitadm list-target -v \e
+iqn.1986-03.com.sun:02:2cb0c526-c05a-e279-e396-a367006f4227\fR
+TARGET NAME STATE SESSIONS
+iqn.1986-03.com.sun:02:2cb0c526-c05a-e279-e396-a367006f4227 online 1
+ alias: -
+ auth: chap
+ targetchapuser: -
+ targetchapsecret: unset
+ tpg-tags: nge1_ipv4 = 3
+.fi
+.in -2
+.sp
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Committed
+.TE
+
+.SH SEE ALSO
+.LP
+.BR libstmf (3LIB),
+.BR attributes (7),
+.BR iscsiadm (8),
+.BR stmfadm (8)
diff --git a/usr/src/man/man8/k5srvutil.8 b/usr/src/man/man8/k5srvutil.8
new file mode 100644
index 0000000000..e622d767ec
--- /dev/null
+++ b/usr/src/man/man8/k5srvutil.8
@@ -0,0 +1,125 @@
+'\" te
+.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH K5SRVUTIL 8 "Jul 25, 2015"
+.SH NAME
+k5srvutil \- host key table (keytab) manipulation utility
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/k5srvutil\fR \fIoperation\fR [\fB-ik\fR] [\fB-f\fR \fIfilename\fR]
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBk5srvutil\fR command allows a system manager to list or change keys
+currently in his keytab or to add new keys to the keytab.
+.sp
+.LP
+The operand \fIoperation\fR must be one of the following:
+.sp
+.ne 2
+.na
+\fB\fBlist\fR\fR
+.ad
+.RS 10n
+Lists the keys in a keytab, showing version number and principal name.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBchange\fR\fR
+.ad
+.RS 10n
+Changes all the keys in the keytab to new randomly-generated keys, updating the
+keys in the Kerberos server's database to match those by using the \fBkadmin\fR
+protocol. If a key's version number does not match the version number stored in
+the Kerberos server's database, the operation fails. The old keys are retained
+so that existing tickets continue to work. If the \fB-i\fR flag is specified,
+\fBk5srvutil\fR prompts for \fByes\fR or \fBno\fR before changing each key. If
+the \fB-k\fR option is used, the old and new keys are displayed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdelold\fR\fR
+.ad
+.RS 10n
+Deletes keys that are not the most recent version from the keytab. This
+operation should be used at some point after a change operation to remove old
+keys. If the \fB-i\fR flag is specified, \fBk5srvutil\fR asks the user whether
+the old keys associated with each principal should be removed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdelete\fR\fR
+.ad
+.RS 10n
+Deletes particular keys in the keytab, interactively prompting for each key.
+.RE
+
+.sp
+.LP
+In all cases, the default keytab file is \fB/etc/krb5/krb5.keytab\fR unless
+overridden by the \fB-f\fR option.
+.sp
+.LP
+\fBk5srvutil\fR uses the \fBkadmin\fR(8) program to edit the keytab in place.
+However, old keys are retained, so they are available in case of failure.
+.SH OPTIONS
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-f\fR \fIfilename\fR\fR
+.ad
+.RS 15n
+Specify a keytab file other than the default file, \fB/etc/krb5/krb5.keytab\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-i\fR\fR
+.ad
+.RS 15n
+Prompts user before changing keys when using the \fBchange\fR or \fBdelold\fR
+operands.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-k\fR\fR
+.ad
+.RS 15n
+Displays old and new keys when using the \fBchange\fR operand.
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Committed
+.TE
+
+.SH SEE ALSO
+.LP
+.BR ktutil (1),
+.BR attributes (7),
+.BR kadmin (8)
diff --git a/usr/src/man/man8/kadb.8 b/usr/src/man/man8/kadb.8
new file mode 100644
index 0000000000..006cf382bc
--- /dev/null
+++ b/usr/src/man/man8/kadb.8
@@ -0,0 +1,127 @@
+'\" te
+.\" Copyright (c) 2001 Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH KADB 8 "Dec 9, 2017"
+.SH NAME
+kadb \- a kernel debugger
+.SH SYNOPSIS
+.SS "SPARC"
+.LP
+.nf
+\fBok\fR boot \fIdevice_specifier\fR kadb [\fB-d\fR] [\fIboot-flags\fR]
+.fi
+
+.SS "x86"
+.LP
+.nf
+\fBselect\fR (b)oot or (i)nterpreter: b kadb [\fB-d\fR] [\fIboot-flags\fR]
+.fi
+
+.SH DESCRIPTION
+.LP
+\fBkadb\fR, an interactive kernel debugger, has been replaced by \fBkmdb\fR(1).
+For backwards compatibility, the methods used to load \fBkadb\fR will be
+interpreted as requests to load \fBkmdb\fR(1). Unlike with the compatibility
+link from \fBadb\fR(1) to \fBmdb\fR(1), \fBkmdb\fR(1) will always load in its
+native user interface mode, regardless of the name used to load it.
+.sp
+.LP
+\fBkmdb\fR(1) is based on \fBmdb\fR(1), and thus shares \fBmdb\fR's user
+interface style and feature set. The \fBmdb\fR(1) man page describes the
+features and operation of \fBmdb\fR. The \fBkmdb\fR(1) man page describes the
+differences between \fBmdb\fR and \fBkmdb\fR. This man page describes the major
+changes and incompatibilities between \fBkadb\fR and \fBkmdb\fR.
+.sp
+.LP
+Consult the \fIModular Debugger Guide\fR for a detailed description of
+both \fBmdb\fR and \fBkmdb\fR.
+.SS "Major changes"
+.LP
+This section briefly lists the major differences between \fBkadb\fR and
+\fBkmdb\fR. It is not intended to be exhaustive.
+.sp
+.ne 2
+.na
+\fBDebugger Loading and Unloading\fR
+.ad
+.sp .6
+.RS 4n
+\fBkmdb\fR(1) may be loaded at boot, as with \fBkadb\fR. It may also be loaded
+after boot, thus allowing for kernel debugging and execution control without
+requiring a system reboot. If \fBkmdb\fR(1) is loaded after boot, it may be
+unloaded.
+.RE
+
+.sp
+.ne 2
+.na
+\fBmdb Feature Set\fR
+.ad
+.sp .6
+.RS 4n
+The features introduced by \fBmdb\fR(1), including access to kernel type data,
+debugger commands (dcmds), debugger modules (dmods), and enhanced execution
+control facilities, are available under \fBkmdb\fR(1). Support for changing the
+representative CPU (:x) is available for both SPARC and x86. Furthermore, full
+execution-control facilities are available after the representative CPU has
+been changed.
+.RE
+
+.SS "Significant Incompatibilities"
+.LP
+This section lists the significant features that have changed incompatibly
+between \fBkadb\fR and \fBkmdb\fR(1). It is not intended to be exhaustive. All
+\fBkmdb\fR(1) commands referenced here are fully described in the \fBkmdb\fR(1)
+man page. A description as well as examples can be found in the \fIModular
+Debugger Guide\fR.
+.sp
+.ne 2
+.na
+\fBDeferred Breakpoints\fR
+.ad
+.sp .6
+.RS 4n
+The kadb-style "module#symbol:b" syntax is not supported under \fBkmdb\fR(1).
+Instead, use "::bp module`symbol".
+.RE
+
+.sp
+.ne 2
+.na
+\fBWatchpoints\fR
+.ad
+.sp .6
+.RS 4n
+The ::wp dcmd is the preferred way to set watchpoint with \fBkmdb\fR. Various
+options are available to control the type of watchpoint set, including \fB-p\fR
+for physical watchpoints (SPARC only), and \fB-i\fR for I/O port watchpoints
+(x86 only). $l is not supported, therefore, the watchpoint size must be
+specified for each watchpoint created.
+.RE
+
+.sp
+.ne 2
+.na
+\fBAccess to I/O Ports (x86 only)\fR
+.ad
+.sp .6
+.RS 4n
+The commands used to access I/O ports under \fBkadb\fR have been replaced with
+the ::in and ::out dcmds. These two dcmds allow both read and write of all I/O
+port sizes supported by \fBkadb\fR.
+.RE
+
+.SH SEE ALSO
+.LP
+.BR adb (1),
+.BR kmdb (1),
+.BR mdb (1),
+.BR attributes (7)
+.sp
+.LP
+\fIModular Debugger Guide\fR:
+.sp
+.LP
+https://illumos.org/books/mdb/
diff --git a/usr/src/man/man8/kadmin.8 b/usr/src/man/man8/kadmin.8
new file mode 100644
index 0000000000..ccc8dcbf89
--- /dev/null
+++ b/usr/src/man/man8/kadmin.8
@@ -0,0 +1,1518 @@
+'\" te
+.\" Copyright 1989 by the Massachusetts Institute of Technology. Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH KADMIN 8 "November 22, 2021"
+.SH NAME
+kadmin, kadmin.local \- Kerberos database administration program
+.SH SYNOPSIS
+.nf
+\fB/usr/sbin/kadmin\fR [\fB-r\fR \fIrealm\fR] [\fB-p\fR \fIprincipal\fR] [\fB-q\fR \fIquery\fR]
+ [\fB-s\fR \fIadmin_server\fR [\fI:port\fR]] [ [\fB-c\fR \fIcredential_cache\fR]
+ | [\fB-k\fR [\fB-t\fR \fIkeytab\fR]] | [\fB-w\fR \fIpassword\fR]] [\fB-x\fR \fIdb_args\fR]...
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/kadmin.local\fR [\fB-r\fR \fIrealm\fR] [\fB-p\fR \fIprincipal\fR]
+ [\fB-q\fR \fIquery\fR] [\fB-d\fR \fIdbname\fR] [\fB-e\fR "\fIenc:salt...\fR"] [\fB-m\fR] [\fB-D\fR]
+.fi
+
+.SH DESCRIPTION
+\fBkadmin\fR and \fBkadmin.local\fR are interactive command-line interfaces to
+the Kerberos V5 administration system. They provide for the maintenance of
+Kerberos principals, policies, and service key tables (keytabs). \fBkadmin\fR
+and \fBkadmin.local\fR provide identical functionality; the difference is that
+\fBkadmin.local\fR can run only on the master KDC and does not use Kerberos
+authentication.
+.sp
+.LP
+Except as explicitly noted otherwise, this man page uses \fBkadmin\fR to refer
+to both versions.
+.sp
+.LP
+By default, both versions of \fBkadmin\fR attempt to determine your user name
+and perform operations on behalf of your "\fIusername\fR/\fIadmin\fR" instance.
+Operations performed are subject to privileges granted or denied to this user
+instance by the Kerberos ACL file (see \fBkadm5.acl\fR(5)). You may perform
+administration as another user instance by using the \fB-p\fR option.
+.sp
+.LP
+The remote version, \fBkadmin\fR, uses Kerberos authentication and an encrypted
+RPC to operate securely from anywhere on the network. It normally prompts for a
+password and authenticates the user to the Kerberos administration server,
+\fBkadmind\fR, whose service principal is \fBkadmin/\fR\fIfqdn\fR. Some options
+specific to the remote version permit the password prompt to be bypassed. The
+\fB-c\fR option searches the named credentials cache for a valid ticket for the
+\fBkadmin/\fR\fIfqdn\fR service and uses it to authenticate the user to the
+Kerberos admin server without a password. The \fB-k\fR option searches a keytab
+for a credential to authenticate to the \fBkadmin/\fR\fIfqdn\fR service, and
+again no password is collected. If \fBkadmin\fR has collected a password, it
+requests a \fBkadmin/\fR\fIfqdn\fR Kerberos service ticket from the KDC, and
+uses that service ticket to interact with \fBkadmind\fR.
+.sp
+.LP
+The local version, \fBkadmin.local\fR, must be run with an effective UID of
+root, and normally uses a key from the \fB/var/krb5/.k5.\fR\fIrealm\fR stash
+file (see \fBkdb5_util\fR(8)) to decrypt information from the database rather
+than prompting for a password. The \fB-m\fR option will bypass the
+\fB\&.k5.\fR\fIrealm\fR stash file and prompt for the master password.
+.SH OPTIONS
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-c\fR \fIcredentials_cache\fR\fR
+.ad
+.sp .6
+.RS 4n
+Search \fIcredentials_cache\fR for a service ticket for the
+\fBkadmin/\fR\fIfqdn\fR service; it can be acquired with the \fBkinit\fR(1)
+program. If this option is not specified, \fBkadmin\fR requests a new service
+ticket from the KDC, and stores it in its own temporary credentials cache.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-d\fR \fIdbname\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify a non-standard database name. [Local only]
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-D\fR\fR
+.ad
+.sp .6
+.RS 4n
+Turn on debug mode. [Local only]
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-e\fR \fI"enc:salt ..."\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify a different encryption type and/or key salt. [Local only]
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-k\fR [\fB-t\fR \fIkeytab\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Use the default keytab (\fB-k\fR) or a specific keytab (\fB-t\fR \fIkeytab\fR)
+to decrypt the KDC response instead of prompting for a password. In this case,
+the default principal will be \fBhost\fR/\fBhostname\fR. This is primarily used
+for keytab maintenance.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-m\fR\fR
+.ad
+.sp .6
+.RS 4n
+Accept the database master password from the keyboard rather than using the
+\fB/var/krb5/.k5.\fIrealm\fR\fR stash file. [Local only]
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR \fIprincipal\fR\fR
+.ad
+.sp .6
+.RS 4n
+Authenticate \fIprincipal\fR to the \fBkadmin/\fR\fIfqdn\fR service. Otherwise,
+\fBkadmin\fR will append \fB/admin\fR to the primary principal name of the
+default credentials cache, the value of the \fBUSER\fR environment variable, or
+the username as obtained with \fBgetpwuid\fR, in that order of preference.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-q\fR \fIquery\fR\fR
+.ad
+.sp .6
+.RS 4n
+Pass \fIquery\fR directly to \fBkadmin\fR, which will perform \fIquery\fR and
+then exit. This can be useful for writing scripts.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-r\fR \fIrealm\fR\fR
+.ad
+.sp .6
+.RS 4n
+Use \fIrealm\fR as the default database realm.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR \fIadmin_server\fR[\fI:port\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Administer the specified \fIadmin\fR server at the specified port number
+(\fIport\fR). This can be useful in administering a realm not known to your
+client.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-w\fR \fIpassword\fR\fR
+.ad
+.sp .6
+.RS 4n
+Use \fIpassword\fR instead of prompting for one. Note that placing the password
+for a Kerberos principal with administration access into a shell script can be
+dangerous if unauthorized users gain read access to the script or can read
+arguments of this command through \fBps\fR(1).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-x\fR \fIdb_args\fR\fR
+.ad
+.sp .6
+.RS 4n
+Pass database-specific arguments to \fBkadmin\fR. Supported arguments are for
+LDAP and the \fBBerkeley-db2\fR plug-in. These arguments are:
+.sp
+.ne 2
+.na
+\fB\fBbinddn\fR=\fIbinddn\fR\fR
+.ad
+.sp .6
+.RS 4n
+LDAP simple bind DN for authorization on the directory server. Overrides the
+\fBldap_kadmind_dn\fR parameter setting in \fBkrb5.conf\fR(5).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBbindpwd\fR=\fIbindpwd\fR\fR
+.ad
+.sp .6
+.RS 4n
+Bind password.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdbname\fR=\fIname\fR\fR
+.ad
+.sp .6
+.RS 4n
+For the \fBBerkeley-db2\fR plug-in, specifies a name for the Kerberos database.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnconns\fR=\fInum\fR\fR
+.ad
+.sp .6
+.RS 4n
+Maximum number of server connections.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBport\fR=\fInum\fR\fR
+.ad
+.sp .6
+.RS 4n
+Directory server connection port.
+.RE
+
+.RE
+
+.SH COMMANDS
+.ne 2
+.na
+\fB\fBlist_requests\fR\fR
+.ad
+.sp .6
+.RS 4n
+Lists all the commands available for \fBkadmin\fR. Aliased by \fBlr\fR and
+\fB?\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBget_privs\fR\fR
+.ad
+.sp .6
+.RS 4n
+Lists the current Kerberos administration privileges (ACLs) for the principal
+that is currently running \fBkadmin\fR. The privileges are based on the
+\fB/etc/krb5/kadm5.acl\fR file on the master KDC. Aliased by \fBgetprivs\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\fR\fBadd_principal\fR \fB[\fIoptions\fR]\fR \fB\fInewprinc\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Creates a new principal, \fInewprinc\fR, prompting twice for a password. If the
+\fB-policy\fR option is not specified and a policy named \fBdefault\fR exists,
+then the \fBdefault\fR policy is assigned to the principal; note that the
+assignment of the \fBdefault\fR policy occurs automatically only when a
+principal is first created, so the \fBdefault\fR policy must already exist for
+the assignment to occur. The automatic assignment of the \fBdefault\fR policy
+can be suppressed with the \fB-clearpolicy\fR option. This command requires the
+\fBadd\fR privilege. Aliased by \fBaddprinc\fR and \fBank\fR. The options are:
+.sp
+.ne 2
+.na
+\fB\fB-expire\fR \fIexpdate\fR\fR
+.ad
+.sp .6
+.RS 4n
+Expiration date of the principal. See the \fBTime\fR \fBFormats\fR section for
+the valid absolute time formats that you can specify for \fIexpdate\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-pwexpire\fR \fIpwexpdate\fR\fR
+.ad
+.sp .6
+.RS 4n
+Password expiration date. See the \fBTime\fR \fBFormats\fR section for the
+valid absolute time formats that you can specify for \fIpwexpdate\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-maxlife\fR \fImaxlife\fR\fR
+.ad
+.sp .6
+.RS 4n
+Maximum ticket life for the principal. See the \fBTime\fR \fBFormats\fR section
+for the valid time duration formats that you can specify for \fImaxlife\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-maxrenewlife\fR \fImaxrenewlife\fR\fR
+.ad
+.sp .6
+.RS 4n
+Maximum renewable life of tickets for the principal. See the \fBTime\fR
+\fBFormats\fR section for the valid time duration formats that you can specify
+for \fImaxrenewlife\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-kvno\fR \fIkvno\fR\fR
+.ad
+.sp .6
+.RS 4n
+Explicitly set the key version number.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-policy\fR \fIpolicy\fR\fR
+.ad
+.sp .6
+.RS 4n
+Policy used by the principal. If both the \fB-policy\fR and \fB-clearpolicy\fR
+options are not specified, the \fBdefault\fR policy is used if it exists;
+otherwise, the principal will have no policy. Also note that the password and
+principal name must be different when you add a new principal with a specific
+policy or the \fBdefault\fR policy.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-clearpolicy\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fB-clearpolicy\fR prevents the \fBdefault\fR policy from being assigned when
+\fB-policy\fR is not specified. This option has no effect if the \fBdefault\fR
+policy does not exist.
+.RE
+
+.sp
+.ne 2
+.na
+\fB{\fB-\fR|\fB+\fR}\fBallow_postdated\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fB-allow_postdated\fR prohibits the principal from obtaining postdated
+tickets. (Sets the \fBKRB5_KDB_DISALLOW_POSTDATED\fR flag.)
+\fB+allow_postdated\fR clears this flag.
+.RE
+
+.sp
+.ne 2
+.na
+\fB{\fB-\fR|\fB+\fR}\fBallow_forwardable\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fB-allow_forwardable\fR prohibits the principal from obtaining forwardable
+tickets. (Sets the \fBKRB5_KDB_DISALLOW_FORWARDABLE\fR flag.)
+\fB+allow_forwardable\fR clears this flag.
+.RE
+
+.sp
+.ne 2
+.na
+\fB{\fB-\fR|\fB+\fR}\fBallow_renewable\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fB-allow_renewable\fR prohibits the principal from obtaining renewable
+tickets. (Sets the \fBKRB5_KDB_DISALLOW_RENEWABLE\fR flag.)
+\fB+allow_renewable\fR clears this flag.
+.RE
+
+.sp
+.ne 2
+.na
+\fB{\fB-\fR|\fB+\fR}\fBallow_proxiable\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fB-allow_proxiable\fR prohibits the principal from obtaining proxiable
+tickets. (Sets the \fBKRB5_KDB_DISALLOW_PROXIABLE\fR flag.)
+\fB+allow_proxiable\fR clears this flag.
+.RE
+
+.sp
+.ne 2
+.na
+\fB{\fB-\fR|\fB+\fR}\fBallow_dup_skey\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fB-allow_dup_skey\fR disables user-to-user authentication for the principal by
+prohibiting this principal from obtaining a session key for another user. (Sets
+the \fBKRB5_KDB_DISALLOW_DUP_SKEY\fR flag.) \fB+allow_dup_skey\fR clears this
+flag.
+.RE
+
+.sp
+.ne 2
+.na
+\fB{\fB-\fR|\fB+\fR}\fBrequires_preauth\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fB+requires_preauth\fR requires the principal to preauthenticate before being
+allowed to \fBkinit\fR. (Sets the \fBKRB5_KDB_REQUIRES_PRE_AUTH\fR flag.)
+\fB-requires_preauth\fR clears this flag.
+.RE
+
+.sp
+.ne 2
+.na
+\fB{\fB-\fR|\fB+\fR}\fBrequires_hwauth\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fB+requires_hwauth\fR requires the principal to preauthenticate using a
+hardware device before being allowed to kinit. (Sets the
+\fBKRB5_KDB_REQUIRES_HW_AUTH\fR flag.) \fB-requires_hwauth\fR clears this flag.
+.RE
+
+.sp
+.ne 2
+.na
+\fB{\fB-\fR|\fB+\fR}\fBallow_svr\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fB-allow_svr\fR prohibits the issuance of service tickets for the principal.
+(Sets the \fBKRB5_KDB_DISALLOW_SVR\fR flag.) \fB+allow_svr\fR clears this flag.
+.RE
+
+.sp
+.ne 2
+.na
+\fB{\fB-\fR|\fB+\fR}\fBallow_tgs_req\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fB-allow_tgs_req\fR specifies that a Ticket-Granting Service (TGS) request for
+a service ticket for the principal is not permitted. This option is useless for
+most things. \fB+allow_tgs_req\fR clears this flag. The default is
+\fB+allow_tgs_req\fR. In effect, \fB-allow_tgs_req\fR sets the
+\fBKRB5_KDB_DISALLOW_TGT_BASED\fR flag on the principal in the database.
+.RE
+
+.sp
+.ne 2
+.na
+\fB{\fB-\fR|\fB+\fR}\fBallow_tix\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fB-allow_tix\fR forbids the issuance of any tickets for the principal.
+\fB+allow_tix\fR clears this flag. The default is \fB+allow_tix\fR. In effect,
+\fB-allow_tix\fR sets the \fBKRB5_KDB_DISALLOW_ALL_TIX\fR flag on the principal
+in the database.
+.RE
+
+.sp
+.ne 2
+.na
+\fB{\fB-\fR|\fB+\fR}\fBneedchange\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fB+needchange\fR sets a flag in attributes field to force a password change;
+\fB-needchange\fR clears it. The default is \fB-needchange\fR\&. In effect,
+\fB+needchange\fR sets the \fBKRB5_KDB_REQUIRES_PWCHANGE\fR flag on the
+principal in the database.
+.RE
+
+.sp
+.ne 2
+.na
+\fB{\fB-\fR|\fB+\fR}\fBpassword_changing_service\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fB+password_changing_service\fR sets a flag in the attributes field marking
+this as a password change service principal (useless for most things).
+\fB-password_changing_service\fR clears the flag. This flag intentionally has a
+long name. The default is \fB-password_changing_service\fR\&. In effect,
+\fB+password_changing_service\fR sets the \fBKRB5_KDB_PWCHANGE_SERVICE\fR flag
+on the principal in the database.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-randkey\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets the key of the principal to a random value.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\fR\fB-pw\fR \fB\fIpassword\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets the key of the principal to the specified string and does not prompt for a
+password. Note that using this option in a shell script can be dangerous if
+unauthorized users gain read access to the script.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-e\fR "enc:salt ..."\fR
+.ad
+.sp .6
+.RS 4n
+Override the list of enctype:salttype pairs given in \fBkdc.conf\fR(5) for
+setting the key of the principal. The quotes are necessary if there are
+multiple enctype:salttype pairs. One key for each similar enctype and same
+salttype will be created and the first one listed will be used. For example, in
+a list of two similar enctypes with the same salt, "des-cbc-crc:normal
+des-cbc-md5:normal", one key will be created and it will be of type
+des-cbc-crc:normal.
+.RE
+
+.sp
+.ne 2
+.na
+\fBExample:\fR
+.ad
+.sp .6
+.RS 4n
+.sp
+.in +2
+.nf
+kadmin: \fBaddprinc tlyu/admin\fR
+WARNING: no policy specified for "tlyu/admin@EXAMPLE.COM";
+defaulting to no policy.
+Enter password for principal tlyu/admin@EXAMPLE.COM:
+Re-enter password for principal tlyu/admin@EXAMPLE.COM:
+Principal "tlyu/admin@EXAMPLE.COM" created.
+kadmin:
+.fi
+.in -2
+.sp
+
+.RE
+
+.sp
+.ne 2
+.na
+\fBErrors:\fR
+.ad
+.sp .6
+.RS 4n
+\fBKADM5_AUTH_ADD\fR (requires \fBadd\fR privilege)
+.sp
+\fBKADM5_BAD_MASK\fR (should not happen)
+.sp
+\fBKADM5_DUP\fR (principal exists already)
+.sp
+\fBKADM5_UNK_POLICY\fR (policy does not exist)
+.sp
+\fBKADM5_PASS_Q_*\fR (password quality violations)
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdelete_principal\fR [\fB-force\fR] \fIprincipal\fR\fR
+.ad
+.sp .6
+.RS 4n
+Deletes the specified principal from the database. This command prompts for
+deletion, unless the \fB-force\fR option is given. This command requires the
+\fBdelete\fR privilege. Aliased by \fBdelprinc\fR.
+.sp
+.ne 2
+.na
+\fBExample:\fR
+.ad
+.sp .6
+.RS 4n
+.sp
+.in +2
+.nf
+kadmin: \fBdelprinc mwm_user\fR
+Are you sure you want to delete the principal
+"mwm_user@EXAMPLE.COM"? (yes/no): \fByes\fR
+Principal "mwm_user@EXAMPLE.COM" deleted.
+Make sure that you have removed this principal from
+all kadmind ACLs before reusing.
+kadmin:
+.fi
+.in -2
+.sp
+
+.RE
+
+.sp
+.ne 2
+.na
+\fBErrors:\fR
+.ad
+.sp .6
+.RS 4n
+\fBKADM5_AUTH_DELETE\fR (requires \fBdelete\fR privilege)
+.sp
+\fBKADM5_UNK_PRINC\fR (principal does not exist)
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmodify_principal\fR [\fIoptions\fR] \fIprincipal\fR\fR
+.ad
+.sp .6
+.RS 4n
+Modifies the specified principal, changing the fields as specified. The options
+are as above for \fBadd_principal\fR, except that password changing is
+forbidden by this command. In addition, the option \fB-clearpolicy\fR will
+clear the current policy of a principal. This command requires the \fBmodify\fR
+privilege. Aliased by \fBmodprinc\fR.
+.sp
+.ne 2
+.na
+\fBErrors:\fR
+.ad
+.sp .6
+.RS 4n
+\fBKADM5_AUTH_MODIFY\fR (requires \fBmodify\fR privilege)
+.sp
+\fBKADM5_UNK_PRINC\fR (principal does not exist)
+.sp
+\fBKADM5_UNK_POLICY\fR (policy does not exist)
+.sp
+\fBKADM5_BAD_MASK\fR (should not happen)
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBchange_password\fR [\fIoptions\fR] \fIprincipal\fR\fR
+.ad
+.sp .6
+.RS 4n
+Changes the password of \fIprincipal\fR. Prompts for a new password if neither
+\fB-randkey\fR or \fB-pw\fR is specified. Requires the \fBchangepw\fR
+privilege, or that the principal that is running the program to be the same as
+the one changed. Aliased by \fBcpw\fR. The following options are available:
+.sp
+.ne 2
+.na
+\fB\fB-randkey\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets the key of the principal to a random value.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-pw\fR \fIpassword\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets the password to the specified string. Not recommended.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-e\fR "enc:salt ..."\fR
+.ad
+.sp .6
+.RS 4n
+Override the list of enctype:salttype pairs given in \fBkdc.conf\fR(5) for
+setting the key of the principal. The quotes are necessary if there are
+multiple enctype:salttype pairs. For each key, the first matching similar
+enctype and same salttype in the list will be used to set the new key(s).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-keepold\fR\fR
+.ad
+.sp .6
+.RS 4n
+Keeps the previous kvno's keys around. There is no easy way to delete the old
+keys, and this flag is usually not necessary except perhaps for TGS keys as it
+will allow existing valid TGTs to continue to work.
+.RE
+
+.sp
+.ne 2
+.na
+\fBExample:\fR
+.ad
+.sp .6
+.RS 4n
+.sp
+.in +2
+.nf
+kadmin: \fBcpw systest\fR
+Enter password for principal systest@EXAMPLE.COM:
+Re-enter password for principal systest@EXAMPLE.COM:
+Password for systest@EXAMPLE.COM changed.
+kadmin:
+.fi
+.in -2
+.sp
+
+.RE
+
+.sp
+.ne 2
+.na
+\fBErrors:\fR
+.ad
+.sp .6
+.RS 4n
+\fBKADM5_AUTH_MODIFY\fR (requires the \fBmodify\fR privilege)
+.sp
+\fBKADM5_UNK_PRINC\fR (principal does not exist)
+.sp
+\fBKADM5_PASS_Q_*\fR (password policy violation errors)
+.sp
+\fBKADM5_PASS_REUSE\fR (password is in principal's password history)
+.sp
+\fBKADM5_PASS_TOOSOON\fR (current password minimum life not expired)
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBget_principal\fR [\fB-terse\fR] \fIprincipal\fR\fR
+.ad
+.sp .6
+.RS 4n
+Gets the attributes of \fIprincipal\fR. Requires the \fBinquire\fR privilege,
+or that the principal that is running the program to be the same as the one
+being listed. With the \fB-terse\fR option, outputs fields as quoted
+tab-separated strings. Aliased by \fBgetprinc\fR.
+.sp
+.ne 2
+.na
+\fBExamples:\fR
+.ad
+.sp .6
+.RS 4n
+.sp
+.in +2
+.nf
+kadmin: \fBgetprinc tlyu/admin\fR
+Principal: tlyu/admin@EXAMPLE.COM
+Expiration date: [never]
+Last password change: Thu Jan 03 12:17:46 CET 2008
+Password expiration date: [none]
+Maximum ticket life: 24855 days 03:14:07
+Maximum renewable life: 24855 days 03:14:07
+Last modified: Thu Jan 03 12:17:46 CET 2008 (root/admin@EXAMPLE.COM)
+Last successful authentication: [never]
+Last failed authentication: [never]
+Failed password attempts: 0
+Number of keys: 5
+Key: vno 2, AES-256 CTS mode with 96-bit SHA-1 HMAC, no salt
+Key: vno 2, AES-128 CTS mode with 96-bit SHA-1 HMAC, no salt
+Key: vno 2, Triple DES cbc mode with HMAC/sha1, no salt
+Key: vno 2, ArcFour with HMAC/md5, no salt
+Key: vno 2, DES cbc mode with RSA-MD5, no salt
+Attributes: REQUIRES_PRE_AUTH
+Policy: [none]
+kadmin: \fBgetprinc -terse tlyu/admin\fR
+"tlyu/admin@EXAMPLE.COM" 0 1199359066 0 2147483647
+"root/admin@EXAMPLE.COM" 1199359066 128 2 0 "[none]" 21474836
+47 0 0 0 5 1 2 18 0 1 2
+17 0 1 2 16 0 1 2 23 0 12
+ 3 0
+kadmin:
+.fi
+.in -2
+.sp
+
+.RE
+
+.sp
+.ne 2
+.na
+\fBErrors:\fR
+.ad
+.sp .6
+.RS 4n
+\fBKADM5_AUTH_GET\fR (requires the get [inquire] privilege)
+.sp
+\fBKADM5_UNK_PRINC\fR (principal does not exist)
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBlist_principals\fR [\fIexpression\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Retrieves all or some principal names. \fIexpression\fR is a shell-style glob
+expression that can contain the wild-card characters ?, *, and []'s. All
+principal names matching the expression are printed. If no expression is
+provided, all principal names are printed. If the expression does not contain
+an "@" character, an "@" character followed by the local realm is appended to
+the expression. Requires the \fBlist\fR privilege. Aliased by \fBlistprincs\fR,
+\fBget_principals\fR, and \fBgetprincs\fR.
+.sp
+.ne 2
+.na
+\fBExamples:\fR
+.ad
+.sp .6
+.RS 4n
+.sp
+.in +2
+.nf
+kadmin: \fBlistprincs test*\fR
+test3@EXAMPLE.COM
+test2@EXAMPLE.COM
+test1@EXAMPLE.COM
+testuser@EXAMPLE.COM
+kadmin:
+.fi
+.in -2
+.sp
+
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBadd_policy\fR [\fIoptions\fR] \fIpolicy\fR\fR
+.ad
+.sp .6
+.RS 4n
+Adds the named policy to the policy database. Requires the \fBadd\fR privilege.
+Aliased by \fBaddpol\fR. The following options are available:
+.sp
+.ne 2
+.na
+\fB\fB-maxlife\fR \fImaxlife\fR\fR
+.ad
+.sp .6
+.RS 4n
+sets the maximum lifetime of a password. See the \fBTime\fR \fBFormats\fR
+section for the valid time duration formats that you can specify for
+\fImaxlife\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-minlife\fR \fIminlife\fR\fR
+.ad
+.sp .6
+.RS 4n
+sets the minimum lifetime of a password. See the \fBTime\fR \fBFormats\fR
+section for the valid time duration formats that you can specify for
+\fIminlife\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-minlength\fR \fIlength\fR\fR
+.ad
+.sp .6
+.RS 4n
+sets the minimum length of a password.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-minclasses\fR \fInumber\fR\fR
+.ad
+.sp .6
+.RS 4n
+sets the minimum number of character classes allowed in a password. The valid
+values are:
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB1\fR\fR
+.ad
+.sp .6
+.RS 4n
+only letters (himom)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB2\fR\fR
+.ad
+.sp .6
+.RS 4n
+both letters and numbers (hi2mom)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB3\fR\fR
+.ad
+.sp .6
+.RS 4n
+letters, numbers, and punctuation (hi2mom!)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-history\fR \fInumber\fR\fR
+.ad
+.sp .6
+.RS 4n
+sets the number of past keys kept for a principal.
+.RE
+
+.sp
+.ne 2
+.na
+\fBErrors:\fR
+.ad
+.sp .6
+.RS 4n
+\fBKADM5_AUTH_ADD\fR (requires the \fBadd\fR privilege)
+.sp
+\fBKADM5_DUP\fR (policy already exists)
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdelete_policy\fR \fB[-force]\fR \fIpolicy\fR\fR
+.ad
+.sp .6
+.RS 4n
+Deletes the named policy. Unless the \fB-force\fR option is specified, prompts
+for confirmation before deletion. The command will fail if the policy is in use
+by any principals. Requires the \fBdelete\fR privilege. Aliased by
+\fBdelpol\fR.
+.sp
+.ne 2
+.na
+\fBExample:\fR
+.ad
+.sp .6
+.RS 4n
+.sp
+.in +2
+.nf
+kadmin: \fBdel_policy guests\fR
+Are you sure you want to delete the
+policy "guests"? (yes/no): \fByes\fR
+Policy "guests" deleted.
+kadmin:
+.fi
+.in -2
+.sp
+
+.RE
+
+.sp
+.ne 2
+.na
+\fBErrors:\fR
+.ad
+.sp .6
+.RS 4n
+\fBKADM5_AUTH_DELETE\fR (requires the delete privilege)
+.sp
+\fBKADM5_UNK_POLICY\fR (policy does not exist)
+.sp
+\fBKADM5_POLICY_REF\fR (reference count on policy is not zero)
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\fR\fBmodify_policy\fR \fB[\fIoptions\fR]\fR \fB\fIpolicy\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Modifies the named policy. Options are as above for \fBadd_policy\fR. Requires
+the \fBmodify\fR privilege. Aliased by \fBmodpol\fR.
+.sp
+.ne 2
+.na
+\fBErrors:\fR
+.ad
+.sp .6
+.RS 4n
+\fBKADM5_AUTH_MODIFY\fR (requires the \fBmodify\fR privilege)
+.sp
+\fBKADM5_UNK_POLICY\fR (policy does not exist)
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBget_policy\fR [\fB-terse\fR] \fIpolicy\fR\fR
+.ad
+.sp .6
+.RS 4n
+Displays the values of the named policy. Requires the \fBinquire\fR privilege.
+With the \fB-terse\fR flag, outputs the fields as quoted strings separated by
+tabs. Aliased by \fBgetpol\fR.
+.sp
+.ne 2
+.na
+\fBExamples:\fR
+.ad
+.sp .6
+.RS 4n
+.sp
+.in +2
+.nf
+kadmin: \fBget_policy admin\fR
+Policy: admin
+Maximum password life: 180 days 00:00:00
+Minimum password life: 00:00:00
+Minimum password length: 6
+Minimum number of password character classes: 2
+Number of old keys kept: 5
+Reference count: 17
+kadmin: \fBget_policy -terse\fR
+admin admin 15552000 0 6 2 5 17
+kadmin:
+.fi
+.in -2
+.sp
+
+.RE
+
+.sp
+.ne 2
+.na
+\fBErrors:\fR
+.ad
+.sp .6
+.RS 4n
+\fBKADM5_AUTH_GET\fR (requires the \fBget\fR privilege)
+.sp
+\fBKADM5_UNK_POLICY\fR (policy does not exist)
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBlist_policies\fR [\fIexpression\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Retrieves all or some policy names. \fIexpression\fR is a shell-style glob
+expression that can contain the wild-card characters ?, *, and []'s. All policy
+names matching the expression are printed. If no expression is provided, all
+existing policy names are printed. Requires the \fBlist\fR privilege. Aliased
+by \fBlistpols\fR, \fBget_policies\fR, and \fBgetpols\fR.
+.sp
+.ne 2
+.na
+\fBExamples:\fR
+.ad
+.sp .6
+.RS 4n
+.sp
+.in +2
+.nf
+kadmin: \fBlistpols\fR
+test-pol dict-only once-a-min test-pol-nopw
+kadmin: \fBlistpols t*\fR
+test-pol test-pol-nopw kadmin:
+.fi
+.in -2
+.sp
+
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBktadd\fR [\fB-k\fR \fIkeytab\fR] [\fB-q\fR] [\fB-e\fR
+\fB\fIenctype\fR:salt\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Adds a principal or all principals matching \fIprinc-exp\fR to a keytab,
+randomizing each principal's key in the process.
+.sp
+\fBktadd\fR requires the \fBinquire\fR and \fBchangepw\fR privileges. An entry
+for each of the principal's unique encryption types is added, ignoring multiple
+keys with the same encryption type but different \fBsalt\fR types. If the
+\fB-k\fR argument is not specified, the default keytab file,
+\fB/etc/krb5/krb5.keytab\fR, is used.
+.sp
+The "\fB-e\fR \fB\fIenctype\fR:salt\fR" option overrides the list of
+\fIenctypes\fR given in \fBkrb5.conf\fR(5), in the \fBpermitted_enctypes\fR
+parameter. If "\fB-e\fR \fB\fIenctype\fR:salt\fR" is not used and
+\fBpermitted_enctypes\fR is not defined in \fBkrb5.conf\fR(5), a key for each
+\fIenctype\fR supported by the system on which \fBkadmin\fR is run will be
+created and added to the \fBkeytab\fR. Restricting the \fIenctypes\fR of keys
+in the \fBkeytab\fR is useful when the system for which keys are being created
+does not support the same set of \fIenctypes\fR as the KDC. Note that
+\fBktadd\fR modifies the \fIenctype\fR of the keys in the principal database as
+well.
+.sp
+If the \fB-q\fR option is specified, less status information is displayed.
+Aliased by \fBxst\fR. The \fB-glob\fR option requires the \fBlist\fR privilege.
+Also, note that if you use \fB-glob\fR to create a keytab, you need to remove
+\fB/etc/krb5/kadm5.keytab\fR and create it again if you want to use \fB-p\fR
+\fB*/admin\fR with \fBkadmin\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBprinc-exp\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fIprinc-exp\fR follows the same rules described for the \fBlist_principals\fR
+command.
+.sp
+.ne 2
+.na
+\fBExample:\fR
+.ad
+.sp .6
+.RS 4n
+.sp
+.in +2
+.nf
+kadmin: \fBktadd -k /tmp/new-keytab nfs/chicago\fR
+Entry for principal nfs/chicago with kvno 2,
+encryption type DES-CBC-CRC added to keytab
+WRFILE:/tmp/new-keytab.
+kadmin:
+.fi
+.in -2
+.sp
+
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBktremove\fR [\fB-k\fR \fIkeytab\fR] [\fB-q\fR] \fIprincipal\fR
+[\fIkvno\fR | \fBall\fR | \fBold\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Removes entries for the specified principal from a keytab. Requires no
+privileges, since this does not require database access. If \fBall\fR is
+specified, all entries for that principal are removed; if \fBold\fR is
+specified, all entries for that principal except those with the highest kvno
+are removed. Otherwise, the value specified is parsed as an integer, and all
+entries whose \fBkvno\fR match that integer are removed. If the \fB-k\fR
+argument is not specified, the default keytab file,
+\fB/etc/krb5/krb5.keytab\fR, is used. If the \fB-q\fR option is specified, less
+status information is displayed. Aliased by \fBktrem\fR.
+.sp
+.ne 2
+.na
+\fBExample:\fR
+.ad
+.sp .6
+.RS 4n
+.sp
+.in +2
+.nf
+kadmin: \fBktremove -k /tmp/new-keytab nfs/chicago\fR
+Entry for principal nfs/chicago with kvno 2
+removed from keytab
+WRFILE:/tmp/new-keytab.
+kadmin:
+.fi
+.in -2
+.sp
+
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBquit\fR\fR
+.ad
+.sp .6
+.RS 4n
+Quits \fBkadmin\fR. Aliased by \fBexit\fR and \fBq\fR.
+.RE
+
+.SS "Time Formats"
+Various commands in \fBkadmin\fR can take a variety of time formats, specifying
+time durations or absolute times. The \fBkadmin\fR option variables
+\fImaxrenewlife\fR, \fImaxlife\fR, and \fIminlife\fR are time durations,
+whereas \fIexpdate\fR and \fIpwexpdate\fR are absolute times.
+.sp
+.ne 2
+.na
+\fBExamples:\fR
+.ad
+.sp .6
+.RS 4n
+.sp
+.in +2
+.nf
+kadmin: \fBmodprinc -expire "12/31 7pm" jdb\fR
+kadmin: \fBmodprinc -maxrenewlife "2 fortnight" jdb\fR
+kadmin: \fBmodprinc -pwexpire "this sunday" jdb\fR
+kadmin: \fBmodprinc -expire never jdb\fR
+kadmin: \fBmodprinc -maxlife "7:00:00pm tomorrow" jdb\fR
+.fi
+.in -2
+.sp
+
+.RE
+
+.sp
+.LP
+Note that times which do not have the "ago" specifier default to being absolute
+times, unless they appear in a field where a duration is expected. In that
+case, the time specifier will be interpreted as relative. Specifying "ago" in a
+duration can result in unexpected behavior.
+.sp
+.LP
+The following time formats and units can be combined to specify a time. The
+time and date format examples are based on the date and time of July 2, 1999,
+1:35:30 p.m.
+.sp
+
+.sp
+.TS
+box;
+l l
+l l .
+\fBTime Format\fR \fBExamples\fR
+\fIhh\fR[:\fImm\fR][:\fIss\fR][am/pm/a.m./p.m.] 1p.m., 1:35, 1:35:30pm
+.TE
+
+.sp
+
+.sp
+.TS
+l l
+l l .
+\fBVariable\fR \fBDescription\fR
+\fIhh\fR T{
+hour (12-hour clock, leading zero permitted but not required)
+T}
+\fImm\fR minutes
+\fIss\fR seconds
+.TE
+
+.sp
+
+.sp
+.TS
+box;
+l l
+l l .
+\fBDate Format\fR \fBExamples\fR
+\fImm\fR/\fBdd\fR[/\fIyy\fR] 07/02, 07/02/99
+\fIyyyy\fR-\fImm\fR-\fBdd\fR 1999-07-02
+\fBdd\fR-\fImonth\fR-\fIyyyy\fR 02-July-1999
+\fImonth\fR [,\fIyyyy\fR] Jul 02, July 02,1999
+\fBdd\fR \fImonth\fR[ \fIyyyy\fR] 02 JULY, 02 july 1999
+.TE
+
+.sp
+
+.sp
+.TS
+l l
+l l .
+\fBVariable\fR \fBDescription\fR
+\fBdd\fR day
+\fImm\fR month
+\fIyy\fR T{
+year within century (00-38 is 2000 to 2038; 70-99 is 1970 to 1999)
+T}
+\fIyyyy\fR year including century
+\fImonth\fR locale's full or abbreviated month name
+.TE
+
+.sp
+
+.sp
+.TS
+box;
+l l
+l l .
+\fBTime Units\fR \fBExamples\fR
+[+|- \fI#\fR] year "-2 year"
+[+|- \fI#\fR] month "2 months"
+[+|- \fI#\fR] fortnight
+[+|- \fI#\fR] week
+[+|- \fI#\fR] day
+[+|- \fI#\fR] hour
+[+|- \fI#\fR] minute
+[+|- \fI#\fR] min
+[+|- \fI#\fR] second
+[+|- \fI#\fR] sec
+tomorrow
+yesterday
+today
+now
+this "this year"
+last "last saturday"
+next "next month"
+sunday
+monday
+tuesday
+wednesday
+thursday
+friday
+saturday
+never
+.TE
+
+.sp
+.LP
+You can also use the following time modifiers: \fBfirst\fR, \fBsecond\fR,
+\fBthird\fR, \fBfourth\fR, \fBfifth\fR, \fBsixth\fR, \fBseventh\fR,
+\fBeighth\fR, \fBninth\fR, \fBtenth\fR, \fBeleventh\fR, \fBtwelfth\fR, and
+\fBago\fR.
+.SH ENVIRONMENT VARIABLES
+See \fBenviron\fR(7) for descriptions of the following environment variables
+that affect the execution of \fBkadmin\fR:
+.sp
+.ne 2
+.na
+\fB\fBPAGER\fR\fR
+.ad
+.sp .6
+.RS 4n
+The command to use as a filter for paging output. This can also be used to
+specify options. The default is \fBmore\fR(1).
+.RE
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/var/krb5/principal\fR\fR
+.ad
+.sp .6
+.RS 4n
+Kerberos principal database.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/krb5/principal.ulog\fR\fR
+.ad
+.sp .6
+.RS 4n
+The update log file for incremental propagation.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/krb5/principal.kadm5\fR\fR
+.ad
+.sp .6
+.RS 4n
+Kerberos administrative database. Contains policy information.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/krb5/principal.kadm5.lock\fR\fR
+.ad
+.sp .6
+.RS 4n
+Lock file for the Kerberos administrative database. This file works backwards
+from most other lock files (that is, \fBkadmin\fR will exit with an error if
+this file does \fInot\fR exist).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/krb5/kadm5.dict\fR\fR
+.ad
+.sp .6
+.RS 4n
+Dictionary of strings explicitly disallowed as passwords.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/krb5/kadm5.acl\fR\fR
+.ad
+.sp .6
+.RS 4n
+List of principals and their \fBkadmin\fR administrative privileges.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/krb5/kadm5.keytab\fR\fR
+.ad
+.sp .6
+.RS 4n
+Keytab for \fBkadmind\fR principals: \fBkadmin\fR/\fIfqdn\fR,
+\fBchangepw\fR/\fIfqdn\fR, and \fBkadmin\fR/\fBchangepw\fR.
+.RE
+
+.SH ATTRIBUTES
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Committed
+.TE
+
+.SH SEE ALSO
+.BR kpasswd (1),
+.BR more (1),
+.BR kadm5.acl (5),
+.BR kdc.conf (5),
+.BR krb5.conf (5),
+.BR attributes (7),
+.BR environ (7),
+.BR kerberos (7),
+.BR krb5envvar (7),
+.BR kadmind (8),
+.BR kdb5_ldap_util (8),
+.BR kdb5_util (8),
+.BR kproplog (8)
+.SH HISTORY
+The \fBkadmin\fR program was originally written by Tom Yu at MIT, as an
+interface to the OpenVision Kerberos administration program.
+.SH DIAGNOSTICS
+The \fBkadmin\fR command is currently incompatible with the MIT \fBkadmind\fR
+daemon interface, so you cannot use this command to administer an MIT-based
+Kerberos database. However, clients running the Solaris implementation of
+Kerberos can still use an MIT-based KDC.
diff --git a/usr/src/man/man8/kadmind.8 b/usr/src/man/man8/kadmind.8
new file mode 100644
index 0000000000..078c90e25e
--- /dev/null
+++ b/usr/src/man/man8/kadmind.8
@@ -0,0 +1,412 @@
+'\" te
+.\" Copyright 1987, 1989 by the Student Information Processing Board of the Massachusetts Institute of Technology. For copying and distribution information, please see the file kerberosv5/mit-sipb-copyright.h.
+.\" Portions Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH KADMIND 8 "Oct 29, 2015"
+.SH NAME
+kadmind \- Kerberos administration daemon
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/krb5/kadmind\fR [\fB-d\fR] [\fB-m\fR] [\fB-p\fR \fIport-number\fR] [\fB-r\fR \fIrealm\fR]
+ \fB-x\fR \fIdb_args\fR]...
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBkadmind\fR runs on the master key distribution center (\fBKDC\fR), which
+stores the principal and policy databases. \fBkadmind\fR accepts remote
+requests to administer the information in these databases. Remote requests are
+sent, for example, by \fBkpasswd\fR(1) and \fBkadmin\fR(8) commands, both of
+which are clients of \fBkadmind\fR. When you install a \fBKDC\fR,
+\fBkadmind\fR is set up in the \fBinit\fR scripts to start automatically
+when the \fBKDC\fR is rebooted.
+.sp
+.LP
+\fBkadmind\fR requires a number of configuration files to be set up for it to
+work:
+.sp
+.ne 2
+.na
+\fB\fB/etc/krb5/kdc.conf\fR\fR
+.ad
+.sp .6
+.RS 4n
+The \fBKDC\fR configuration file contains configuration information for the
+\fBKDC\fR and the Kerberos administration system. \fBkadmind\fR understands a
+number of configuration variables (called relations) in this file, some of
+which are mandatory and some of which are optional. In particular,
+\fBkadmind\fR uses the \fBacl_file\fR, \fBdict_file\fR, \fBadmin_keytab\fR, and
+\fBkadmind_port\fR relations in the [\fIrealms\fR] section. Refer to the
+\fBkdc.conf\fR(5) man page for information regarding the format of the
+\fBKDC\fR configuration file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/krb5/kadm5.keytab\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBkadmind\fR requires a \fBkeytab\fR (key table) containing correct entries
+for the \fBkadmin\fR/\fIfqdn\fR, \fBkadmin\fR/\fBchangepw\fR and
+\fBkadmin\fR/\fBchangepw\fR principals for every realm that \fBkadmind\fR
+answers requests. The \fBkeytab\fR can be created with the
+\fBkadmin.local\fR(8) or \fBkdb5_util\fR(8) command. The location of the
+keytab is determined by the \fBadmin_keytab\fR relation in the
+\fBkdc.conf\fR(5) file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/krb5/kadm5.acl\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBkadmind\fR uses an \fBACL\fR (access control list) to determine which
+principals are allowed to perform Kerberos administration actions. The path of
+the \fBACL\fR file is determined by the \fBacl_file\fR relation in the
+\fBkdc.conf\fR file. See \fBkdc.conf\fR(5). For information regarding the
+format of the \fBACL\fR file, refer to \fBkadm5.acl\fR(5).
+.sp
+The \fBkadmind\fR daemon will need to be restarted to reread the
+\fBkadm5.acl\fR file after it has been modified. You can do this, as root, with
+the following command:
+.sp
+.in +2
+.nf
+# svcadm restart svc:/network/security/kadmin:default
+.fi
+.in -2
+.sp
+
+.RE
+
+.sp
+.LP
+After \fBkadmind\fR begins running, it puts itself in the background and
+disassociates itself from its controlling terminal.
+.sp
+.LP
+\fBkadmind\fR can be configured for incremental database propagation.
+Incremental propagation allows slave KDC servers to receive principal and
+policy updates incrementally instead of receiving full dumps of the database.
+These settings can be changed in the \fBkdc.conf\fR(5) file:
+.sp
+.ne 2
+.na
+\fB\fBsunw_dbprop_enable = [true | false]\fR\fR
+.ad
+.sp .6
+.RS 4n
+Enable or disable incremental database propagation. Default is \fBfalse\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsunw_dbprop_master_ulogsize = N\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the maximum amount of log entries available for incremental
+propagation to the slave KDC servers. The maximum value that this can be is
+2500 entries. Default value is 1000 entries.
+.RE
+
+.sp
+.LP
+The \fBkiprop/\fR\fI<hostname>\fR\fB@\fR\fI<REALM>\fR principal must exist in
+the master's \fBkadm5.keytab\fR file to enable the slave to authenticate
+incremental propagation from the master. In the principal syntax above,
+\fI<hostname>\fR is the master KDC's host name and \fI<REALM>\fR is the realm
+in which the master KDC resides.
+.sp
+.LP
+Kerberos client machines can automatically migrate Unix users to the default
+Kerberos realm specified in the local \fBkrb5.conf\fR(5), if the user does not
+have a valid kerberos account already. You achieve this by using the
+\fBpam_krb5_migrate\fR(7) service module for the service in question. The
+Kerberos service principal used by the client machine attempting the migration
+needs to be validated using the \fBu\fR privilege in \fBkadm5.acl\fR(5). When
+using the \fBu\fR privilege, \fBkadmind\fR validates user passwords using PAM,
+specifically using a \fBPAM_SERVICE\fR name of \fBk5migrate\fR by calling
+\fBpam_authenticate\fR(3PAM) and \fBpam_acct_mgmt\fR(3PAM).
+.sp
+.LP
+A suitable PAM stack configuration example for \fBk5migrate\fR would look like:
+.sp
+.in +2
+.nf
+k5migrate auth required pam_unix_auth.so.1
+k5migrate account required pam_unix_account.so.1
+.fi
+.in -2
+.sp
+
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-d\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies that \fBkadmind\fR does not put itself in the background and does not
+disassociate itself from the terminal. In normal operation, you should use the
+default behavior, which is to allow the daemon to put itself in the background.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-m\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies that the master database password should be retrieved from the
+keyboard rather than from the stash file. When using \fB-m\fR, the
+\fBkadmind\fR daemon receives the password prior to putting itself in the
+background. If used in combination with the \fB-d\fR option, you must
+explicitly place the daemon in the background.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR \fIport-number\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the port on which the \fBkadmind\fR daemon listens for connections.
+The default is controlled by the \fBkadmind_port\fR relation in the
+\fBkdc.conf\fR(5) file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-r\fR \fIrealm\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the default realm that \fBkadmind\fR serves. If \fIrealm\fR is not
+specified, the default \fIrealm\fR of the host is used. \fBkadmind\fR answers
+requests for any realm that exists in the local \fBKDC\fR database and for
+which the appropriate principals are in its \fBkeytab\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-x\fR \fIdb_args\fR\fR
+.ad
+.sp .6
+.RS 4n
+Pass database-specific arguments to \fBkadmind\fR. Supported arguments are for
+LDAP and the \fBBerkeley-db2\fR plug-in. These arguments are:
+.sp
+.ne 2
+.na
+\fB\fBbinddn\fR=\fIbinddn\fR\fR
+.ad
+.sp .6
+.RS 4n
+LDAP simple bind DN for authorization on the directory server. Overrides the
+\fBldap_kadmind_dn\fR parameter setting in \fBkrb5.conf\fR(5).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBbindpwd\fR=\fIbindpwd\fR\fR
+.ad
+.sp .6
+.RS 4n
+Bind password.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdbname\fR=\fIname\fR\fR
+.ad
+.sp .6
+.RS 4n
+For the \fBBerkeley-db2\fR plug-in, specifies a name for the Kerberos database.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnconns\fR=\fInum\fR\fR
+.ad
+.sp .6
+.RS 4n
+Maximum number of server connections.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBport\fR=\fInum\fR\fR
+.ad
+.sp .6
+.RS 4n
+Directory server connection port.
+.RE
+
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/var/krb5/principal\fR\fR
+.ad
+.sp .6
+.RS 4n
+Kerberos principal database.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/krb5/principal.ulog\fR\fR
+.ad
+.sp .6
+.RS 4n
+The update log file for incremental propagation.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/krb5/principal.kadm5\fR\fR
+.ad
+.sp .6
+.RS 4n
+Kerberos administrative database containing policy information.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/krb5/principal.kadm5.lock\fR\fR
+.ad
+.sp .6
+.RS 4n
+Kerberos administrative database lock file. This file works backwards from most
+other lock files (that is, \fBkadmin\fR exits with an error if this file does
+not exist).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/krb5/kadm5.dict\fR\fR
+.ad
+.sp .6
+.RS 4n
+Dictionary of strings explicitly disallowed as passwords.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/krb5/kadm5.acl\fR\fR
+.ad
+.sp .6
+.RS 4n
+List of principals and their \fBkadmin\fR administrative privileges.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/krb5/kadm5.keytab\fR\fR
+.ad
+.sp .6
+.RS 4n
+Keytab for \fBkadmin\fR principals: \fBkadmin\fR/\fIfqdn\fR,
+\fBchangepw\fR/\fIfqdn\fR, and \fBkadmin\fR/\fBchangepw\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/krb5/kdc.conf\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBKDC\fR configuration information.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR kpasswd (1),
+.BR svcs (1),
+.BR pam_acct_mgmt (3PAM),
+.BR pam_authenticate (3PAM),
+.BR kadm5.acl (5),
+.BR kdc.conf (5),
+.BR krb5.conf (5),
+.BR attributes (7),
+.BR kerberos (7),
+.BR krb5envvar (7),
+.BR pam_krb5_migrate (7),
+.BR smf (7),
+.BR kadmin (8),
+.BR kadmin.local (8),
+.BR kdb5_ldap_util (8),
+.BR kdb5_util (8),
+.BR kproplog (8),
+.BR svcadm (8)
+.SH NOTES
+.sp
+.LP
+The Kerberos administration daemon (\fBkadmind\fR) is now compliant with the
+change-password standard mentioned in RFC 3244, which means it can now handle
+change-password requests from non-Solaris Kerberos clients.
+.sp
+.LP
+The \fBkadmind\fR service is managed by the service management facility,
+\fBsmf\fR(7), under the service identifier:
+.sp
+.in +2
+.nf
+svc:/network/security/kadmin
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Administrative actions on this service, such as enabling, disabling, or
+requesting restart, can be performed using \fBsvcadm\fR(8). The service's
+status can be queried using the \fBsvcs\fR(1) command.
diff --git a/usr/src/man/man8/kclient.8 b/usr/src/man/man8/kclient.8
new file mode 100644
index 0000000000..1aa3a0ad61
--- /dev/null
+++ b/usr/src/man/man8/kclient.8
@@ -0,0 +1,599 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH KCLIENT 8 "November 22, 2021"
+.SH NAME
+kclient \- set up a machine as a Kerberos client
+.SH SYNOPSIS
+.nf
+\fB/usr/sbin/kclient\fR [\fB-n\fR] [\fB-R\fR \fIrealm\fR] [\fB-k\fR \fIkdc\fR] [\fB-a\fR \fIadminuser\fR]
+ [\fB-c\fR \fIfilepath\fR] [\fB-d\fR \fIdnsarg\fR] [\fB-f\fR \fIfqdn_list\fR] [\fB-h\fR \fIlogical_host_name\fR]
+ [\fB-k\fR \fIkdc_list\fR] [\fB-m\fR \fImaster_kdc\fR] [\fB-p\fR \fIprofile\fR] [\fB-s\fR \fIpam_service\fR]
+ [\fB-T\fR \fIkdc_vendor\fR]
+.fi
+
+.SH DESCRIPTION
+By specifying the various command options, you can use the \fBkclient\fR
+utility to:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Configure a machine as a Kerberos client for a specified realm and for KDC by
+setting up \fBkrb5.conf\fR(5).
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Add the Kerberos host principal to the local host's \fBkeytab\fR file
+(\fB/etc/krb5/krb5.keytab\fR).
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Set up the machine to do kerberized NFS.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Bring over a master \fBkrb5.conf\fR copy from a specified pathname.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Setup a machine to do server and/or host/domain name-to-realm mapping lookups
+by means of DNS.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Configure a Kerberos client to use an MS Active Directory server. This
+generates a \fBkeytab\fR file with the Kerberos client's service keys
+populated.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Setup a Kerberos client that has no service keys. This is useful when the
+client does not require service keys, because the client does not wish to host
+a service that uses Kerberos for security.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Configure a Kerberos client that is part of a cluster. This option requires the
+logical host name of the cluster so that the proper service keys are created
+and populated in the client's \fBkeytab\fR file.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Setup a Kerberos client to join an environment that consists of Kerberos
+servers that are non-Solaris and non-MS Active Directory servers.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Configure \fBpam.conf\fR(5) to use Kerberos authentication for specified
+services.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Configure the client as a simple NTP broadcast/multicast client.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Specify custom domain/host name-to-realm name mappings.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Setup the Kerberos client to use multiple KDC servers.
+.RE
+.sp
+.LP
+The \fBkclient\fR utility needs to be run on the client machine with root
+permission and can be run either interactively or non-interactively. In the
+non-interactive mode, the user feeds in the required inputs by means of a
+profile, command-line options, or a combination of profile and command-line
+options. The user is prompted for "required" parameter values (\fBrealm\fR and
+\fBadminuser\fR), if found missing in the non-interactive run. The interactive
+mode is invoked when the utility is run without any command-line arguments.
+.sp
+.LP
+Both the interactive and non-interactive forms of \fBkclient\fR can add the
+\fBhost/fqdn\fR entry to the local host's \fBkeytab\fR file. They also can
+require the user to enter the password for the administrative user requested,
+to obtain the Kerberos Ticket Granting Ticket (TGT) for \fBadminuser\fR. The
+\fBhost/fqdn\fR, \fBnfs/fqdn\fR, and \fBroot/fqdn\fR principals can be added to
+the KDC database (if not already present) before their possible addition to the
+local host's \fBkeytab\fR.
+.sp
+.LP
+The \fBkclient\fR utility assumes that the local host has been setup for DNS
+and requires the presence of a valid \fBresolv.conf\fR(5). Also, \fBkclient\fR
+can fail if the localhost time is not synchronized with that of the KDC. For
+Kerberos to function the localhost time must be within five minutes of that of
+the KDC. It is advised that both systems run some form of time synchronization
+protocol, such as the Network Time Protocol (NTP). See the \fBntpd\fR man page,
+delivered in the \fBSUNWntpu\fR package (not a SunOS man page).
+.SH OPTIONS
+The non-interactive mode supports the following options:
+.sp
+.ne 2
+.na
+\fB\fB-n\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set up the machine for kerberized NFS. This involves making changes to
+\fBkrb5*\fR security flavors in \fBnfssec.conf\fR(5). This option will also add
+\fBnfs/fqdn\fR and \fBroot/fqdn\fR entries to the local host's \fBkeytab\fR
+file if the \fB-K\fR option has not been specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-R\fR [ \fIrealm\fR ]\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the Kerberos realm.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-k\fR \fIkdc_list\fR\fR
+.ad
+.sp .6
+.RS 4n
+The \fB-k\fR option specifies the KDC host names for the Kerberos client.
+\fIkdc_list\fR is a comma-separated list of KDCs. If the \fB-m\fR option is not
+used, it is assumed that the first (or only) host in \fIkdc_list\fR is the
+master KDC host name. Note that the list specified is used verbatim. This is
+helpful when specifying non-fully qualified KDC host names that can be
+canonicalized by DNS.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-a\fR [ \fIadminuser\fR ]\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the Kerberos administrative user.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-T\fR \fIkdc_vendor\fR\fR
+.ad
+.sp .6
+.RS 4n
+Configure the Kerberos client to associate with a third party server. Valid
+\fIkdc_vendor\fR currently supported are:
+.sp
+.ne 2
+.na
+\fB\fBms_ad\fR\fR
+.ad
+.sp .6
+.RS 4n
+Microsoft Active Directory
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmit\fR\fR
+.ad
+.sp .6
+.RS 4n
+MIT KDC server
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBheimdal\fR\fR
+.ad
+.sp .6
+.RS 4n
+Heimdal KDC server
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBshishi\fR\fR
+.ad
+.sp .6
+.RS 4n
+Shishi KDC server
+.RE
+
+Knowing the administrative password will be required to associate the client
+with the server if the \fBms_ad\fR option is specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-c\fR [ \fIfilepath\fR ]\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the pathname to the \fBkrb5.conf\fR(5) master file, to be copied over
+to the local host. The path specified normally points to a master copy on a
+remote host and brought over to the local host by means of NFS.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-d\fR [ \fIdnsarg\fR ]\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the DNS lookup option to be used and specified in the
+\fBkrb5.conf\fR(5) file. Valid \fIdnsarg\fR entries are: \fBnone\fR,
+\fBdns_lookup_kdc\fR, \fBdns_lookup_realm\fR and \fBdns_fallback\fR. Any other
+entry is considered invalid. The latter three \fIdnsarg\fR values assume the
+same meaning as those described in \fBkrb5.conf\fR. \fBdns_lookup_kdc\fR
+implies DNS lookups for the KDC and the other servers. \fBdns_lookup_realm\fR
+is for host/domain name-to-realm mapping by means of DNS. \fBdns_fallback\fR is
+a superset and does DNS lookups for both the servers and the host/domain
+name-to-realm mapping. A lookup option of \fBnone\fR specifies that DNS is not
+be used for any kind of mapping lookup.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-D\fR \fIdomain_list\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the host and/or domain names to be mapped to the Kerberos client's
+default realm name. \fIdomain_list\fR is a comma-separated list, for example
+"\fBexample.com,host1.example.com\fR". If the \fB-D\fR option is not used, then
+only the client's domain is used for this mapping. For example, if the client
+is \fBhost1.eng.example.com\fR, then the domain that is mapped to the
+\fBEXAMPLE.COM\fR realm is \fBexample.com\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-K\fR\fR
+.ad
+.sp .6
+.RS 4n
+Configure the Kerberos client without service keys, which are usually stored in
+\fB/etc/krb5/krb5.keytab\fR. This is useful in the following scenarios:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The client IP address is dynamically assigned and therefore does not host
+Kerberized services.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Client has a static IP address, but does not want to host any Kerberized
+services.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Client has a static IP address, but the local administrator does not currently
+have service keys available for the machine. It is expected that, at a later
+time, these keys will be installed on the machine.
+.RE
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR [ \fIfqdn_list\fR ]\fR
+.ad
+.sp .6
+.RS 4n
+This option creates a service principal entry (host/nfs/root) associated with
+each of the listed fqdn's, if required, and subsequently adds the entries to
+the local host's \fBkeytab\fR.
+.sp
+\fIfqdn_list\fR is a comma-separated list of one or more fully qualified DNS
+domain names.
+.sp
+This option is especially useful in Kerberos realms having systems offering
+kerberized services, but situated in multiple different DNS domains.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-h\fR \fIlogical_host_name\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies that the Kerberos client is a node in a cluster. The
+\fIlogical_host_name\fR is the logical host name given to the cluster. The
+resulting \fB/etc/krb5/krb5.conf\fR and \fB/etc/krb5/krb5.keytab\fR files must
+be manually copied over to the other members of the cluster.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-m\fR \fImaster_kdc\fR\fR
+.ad
+.sp .6
+.RS 4n
+This option specifies the master KDC to be used by the Kerberos client.
+\fImaster_kdc\fR is the host name of the master KDC for the client. If the
+\fB-m\fR option is not used, then it is assumed that the first KDC host name
+listed with the \fB-k\fR option is the master KDC.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR [ \fIprofile\fR ]\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the profile to be used to enable the reading in of the values of all
+the parameters required for setup of the machine as a Kerberos client.
+.sp
+The profile should have entries in the format:
+.sp
+.in +2
+.nf
+\fIPARAM\fR \fI<value>\fR
+.fi
+.in -2
+.sp
+
+Valid \fIPARAM\fR entries are: \fBREALM\fR, \fBKDC\fR, \fBADMIN\fR,
+\fBFILEPATH\fR, \fBNFS\fR, \fBDNSLOOKUP\fR, \fBFQDN\fR, \fBNOKEY\fR,
+\fBNOSOL\fR, \fBLHN\fR, \fBKDCVENDOR\fR, \fBRMAP\fR, \fBMAS\fR, and \fBPAM\fR.
+.sp
+These profile entries correspond to the \fB-R\fR [\fIrealm\fR], \fB-k\fR
+[\fIkdc\fR], \fB-a\fR [\fIadminuser\fR], \fB-c\fR [\fIfilepath\fR], \fB-n\fR,
+\fB-d\fR [\fIdnsarg\fR], \fB-f\fR [\fIfqdn_list\fR], \fB-K\fR, \fB-h\fR
+[\fIlogical_host_name\fR], \fB-T\fR [\fIkdc_vendor\fR], \fB-D\fR
+[\fIdomain_list\fR], \fB-m\fR [\fImaster_kdc\fR], and \fB-s\fR
+[\fIpam_service\fR] command-line options, respectively. Any other \fIPARAM\fR
+entry is considered invalid and is ignored.
+.sp
+The NFS profile entry can have a value of 0 (do nothing) or 1 (operation is
+requested). Any other value is considered invalid and is ignored.
+.sp
+Keep in mind that the command line options override the \fIPARAM\fR values
+listed in the profile.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR \fIpam_service\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies that the PAM service names, listed in \fIpam_service\fR, are
+authenticated through Kerberos before any other type of authentication. Using
+this option updates \fBpam.conf\fR(5) to include \fBpam_krb5\fR(7) to existing
+authentication stacks for the specified service(s) in \fIpam_service\fR. An
+example of a possible \fIpam_service\fR value is: \fBdtlogin,sshd-kbdint\fR.
+.RE
+
+.SH EXAMPLES
+\fBExample 1 \fRSetting Up a Kerberos Client Using Command-Line Options
+.sp
+.LP
+To setup a Kerberos client using the \fBclntconfig/admin\fR administrative
+principal for realm \fB\&'EXAMPLE.COM', kdc `example1.example.com'\fR and
+that also does kerberized NFS, enter:
+
+.sp
+.in +2
+.nf
+# /usr/sbin/kclient -n -R EXAMPLE.COM -k example1.example.com -a clntconfig
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Alternatively, to set up a Kerberos client using the \fBclntconfig/admin\fR
+administrative principal for the realm \fB`EAST.EXAMPLE.COM', kdc
+`example2.east.example.com'\fR and that also needs service principal(s) created
+and/or added to the local \fBkeytab\fR for multiple DNS domains, enter:
+
+.sp
+.in +2
+.nf
+# /usr/sbin/kclient -n -R EAST.EXAMPLE.COM -k example2.east.example.com \e
+-f west.example.com,central.example.com -a clntconfig
+.fi
+.in -2
+
+.sp
+.LP
+Note that the \fBkrb5\fR administrative principal used by the administrator
+needs to have only \fBadd\fR, \fBinquire\fR, \fBchange-pwd\fR and \fBmodify\fR
+privileges (for the principals in the KDC database) in order for the
+\fBkclient\fR utility to run. A sample \fBkadm5.acl\fR(5) entry is:
+
+.sp
+.in +2
+.nf
+clntconfig/admin@EXAMPLE.COM acmi
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRSetting Up a Kerberos Client Using the Profile Option
+.sp
+.LP
+To setup a Kerberos client using the \fBclntconfig/admin\fR administrative
+principal for realm \fB`EXAMPLE.COM', kdc `example1.example.com'\fR and that
+also copies over the master \fBkrb5.conf\fR from a specified location, enter:
+
+.sp
+.in +2
+.nf
+# /usr/sbin/kclient -p /net/example1.example.com/export/profile.krb5
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The contents of \fBprofile.krb5\fR:
+
+.sp
+.in +2
+.nf
+REALM EXAMPLE.COM
+KDC example1.example.com
+ADMIN clntconfig
+FILEPATH /net/example1.example.com/export/krb5.conf
+NFS 0
+DNSLOOKUP none
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRSetting Up a Kerberos Client That Has a Dynamic IP Address
+.sp
+.LP
+In this example a Kerberos client is a DHCP client that has a dynamic IP
+address. This client does not wish to host any Kerberized services and
+therefore does not require a \fBkeytab\fR (\fB/etc/krb5/krb5.keytab\fR) file.
+
+.sp
+.LP
+For this type of client the administrator would issue the following command to
+configure this machine to be a Kerberos client of the \fBEXAMPLE.COM\fR realm
+with the KDC server \fBkdc1.example.com\fR:
+
+.sp
+.in +2
+.nf
+# \fB/usr/sbin/kclient -K -R EXAMPLE.COM -k kdc1.example.com\fR
+.fi
+.in -2
+.sp
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/etc/krb5/kadm5.acl\fR\fR
+.ad
+.sp .6
+.RS 4n
+Kerberos access control list (ACL) file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/krb5/krb5.conf\fR\fR
+.ad
+.sp .6
+.RS 4n
+Default location for the local host's configuration file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/krb5/krb5.keytab\fR\fR
+.ad
+.sp .6
+.RS 4n
+Default location for the local host's \fBkeytab\fR file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/nfssec.conf\fR\fR
+.ad
+.sp .6
+.RS 4n
+File listing NFS security modes.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/resolv.conf\fR\fR
+.ad
+.sp .6
+.RS 4n
+DNS resolver configuration file.
+.RE
+
+.SH ATTRIBUTES
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Committed
+.TE
+
+.SH SEE ALSO
+.BR encrypt (1),
+.BR ksh93 (1),
+.BR ldapdelete (1),
+.BR ldapmodify (1),
+.BR ldapsearch (1),
+.BR kadm5.acl (5),
+.BR krb5.conf (5),
+.BR nfssec.conf (5),
+.BR pam.conf (5),
+.BR resolv.conf (5),
+.BR attributes (7),
+.BR pam_krb5 (7),
+.BR dd (8),
+.BR smbadm (8)
+.SH NOTES
+\fBfqdn\fR stands for the Fully Qualified Domain Name of the local host. The
+\fBkclient\fR utility saves copies of both the \fBkrb5.conf\fR(5) and
+\fBnfssec.conf\fR(5) files to files with corresponding names and \fB\&.sav\fR
+extensions. The optional copy of the \fBkrb5.conf\fR(5) master file is neither
+encrypted nor integrity-protected and it takes place over regular NFS.
diff --git a/usr/src/man/man8/kdb5_ldap_util.8 b/usr/src/man/man8/kdb5_ldap_util.8
new file mode 100644
index 0000000000..39671b122e
--- /dev/null
+++ b/usr/src/man/man8/kdb5_ldap_util.8
@@ -0,0 +1,1180 @@
+'\" te
+.\" This manual page is derived from documentation obtained from The Massachusetts Institute of Technology.
+.\" Portions Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH KDB5_LDAP_UTIL 8 "June 20, 2021"
+.SH NAME
+kdb5_ldap_util \- Kerberos configuration utility
+.SH SYNOPSIS
+.nf
+\fBkdb5_ldap_util\fR [\fB-D\fR \fIuser_dn\fR [\fB-w\fR \fIpasswd\fR]] [\fB-H\fR \fIldap_uri\fR] \fIcommand\fR
+ [\fIcommand_options\fR]
+.fi
+
+.SH DESCRIPTION
+The \fBkdb5_ldap_util\fR utility allows an administrator to manage realms,
+Kerberos services, and ticket policies. The utility offers a set of general
+options, described under OPTIONS, and a set of commands, which, in turn, have
+their own options. Commands and their options are described in their own
+subsections, below.
+.SH OPTIONS
+\fBkdb5_ldap_util\fR has a small set of general options that apply to the
+\fBkdb5_ldap_util\fR utility itself and a larger number of options that apply
+to specific commands. A number of these command-specific options apply to
+multiple commands and are described in their own section, below.
+.SS "General Options"
+The following general options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-D\fR \fIuser_dn\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the distinguished name (DN) of a user who has sufficient rights to
+perform the operation on the LDAP server.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-H\fR \fIldap_uri\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the URI of the LDAP server.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-w\fR \fIpasswd\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the password of \fIuser_dn\fR. This option is not recommended.
+.RE
+
+.SS "Common Command-specific Options"
+The following options apply to a number of \fBkdb5_ldap_util\fR commands.
+.sp
+.ne 2
+.na
+\fB\fB-subtrees\fR \fIsubtree_dn_list\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the list of subtrees containing the principals of a realm. The list
+contains the DNs of the subtree objects separated by a colon.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-sscope\fR \fIsearch_scope\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the scope for searching the principals under a subtree. The possible
+values are 1 or \fBone\fR (one level), 2 or \fBsub\fR (subtrees).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-containerref\fR \fIcontainer_reference_dn\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the DN of the container object in which the principals of a realm
+will be created. If the container reference is not configured for a realm, the
+principals will be created in the realm container.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-maxtktlife\fR \fImax_ticket_life\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies maximum ticket life for principals in this realm.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-maxrenewlife\fR \fImax_renewable_ticket_life\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies maximum renewable life of tickets for principals in this realm.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-r\fR \fIrealm\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the Kerberos realm of the database; by default the realm returned by
+\fBkrb5_default_local_realm\fR(3LIB) is used.
+.RE
+
+.SH \fBkdb5_ldap_util\fR COMMANDS
+The \fBkdb5_ldap_util\fR utility comprises a set of commands, each with its own
+set of options. These commands are described in the following subsections.
+.SS "The \fBcreate\fR Command"
+The \fBcreate\fR command creates a realm in a directory. The command has the
+following syntax:
+.sp
+.in +2
+.nf
+create \e
+[-subtrees \fIsubtree_dn_list\fR]
+[-sscope \fIsearch_scope\fR]
+[-containerref \fIcontainer_reference_dn\fR]
+[-k \fImkeytype\fR]
+[-m|-P \fIpassword\fR| -sf \fIstashfilename\fR]
+[-s]
+[-r \fIrealm\fR]
+[-maxtktlife \fImax_ticket_life\fR]
+[-kdcdn \fIkdc_service_list\fR]
+[-admindn \fIadmin_service_list\fR]
+[-maxrenewlife \fImax_renewable_ticket_life\fR]
+[\fIticket_flags\fR]
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The \fBcreate\fR command has the following options:
+.sp
+.ne 2
+.na
+\fB\fB-subtree\fR \fIsubtree_dn_list\fR\fR
+.ad
+.sp .6
+.RS 4n
+See "Common Command-specific Options," above.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-sscope\fR \fIsearch_scope\fR\fR
+.ad
+.sp .6
+.RS 4n
+See "Common Command-specific Options," above.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-containerref\fR \fIcontainer_reference_dn\fR\fR
+.ad
+.sp .6
+.RS 4n
+See "Common Command-specific Options," above.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-k\fR \fImkeytype\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the key type of the master key in the database; the default is that
+given in \fBkdc.conf\fR(5).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-m\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies that the master database password should be read from the TTY rather
+than fetched from a file on the disk.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-P\fR \fIpassword\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the master database password. This option is not recommended.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-sf\fR \fIstashfilename\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the stash file of the master database password.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies that the stash file is to be created.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-maxtktlife\fR \fImax_ticket_life\fR\fR
+.ad
+.sp .6
+.RS 4n
+See "Common Command-specific Options," above.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-maxrenewlife\fR \fImax_renewable_ticket_life\fR\fR
+.ad
+.sp .6
+.RS 4n
+See "Common Command-specific Options," above.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-r\fR \fIrealm\fR\fR
+.ad
+.sp .6
+.RS 4n
+See "Common Command-specific Options," above.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIticket_flags\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the ticket flags. If this option is not specified, by default, none
+of the flags are set. This means all the ticket options will be allowed and no
+restriction will be set. See "Ticket Flags" for a list and descriptions of
+these flags.
+.RE
+
+.SS "The \fBmodify\fR Command"
+The \fBmodify\fR command modifies the attributes of a realm. The command has
+the following syntax:
+.sp
+.in +2
+.nf
+modify \e
+[-subtrees \fIsubtree_dn_list\fR]
+[-sscope \fIsearch_scope\fR]
+[-containerref \fIcontainer_reference_dn\fR]
+[-r \fIrealm\fR]
+[-maxtktlife \fImax_ticket_life\fR]
+[-maxrenewlife \fImax_renewable_ticket_life\fR]
+[\fIticket_flags\fR]
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The \fBmodify\fR command has the following options:
+.sp
+.ne 2
+.na
+\fB\fB-subtree\fR \fIsubtree_dn_list\fR\fR
+.ad
+.sp .6
+.RS 4n
+See "Common Command-specific Options," above.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-sscope\fR \fIsearch_scope\fR\fR
+.ad
+.sp .6
+.RS 4n
+See "Common Command-specific Options," above.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-containerref\fR \fIcontainer_reference_dn\fR\fR
+.ad
+.sp .6
+.RS 4n
+See "Common Command-specific Options," above.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-maxtktlife\fR \fImax_ticket_life\fR\fR
+.ad
+.sp .6
+.RS 4n
+See "Common Command-specific Options," above.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-maxrenewlife\fR \fImax_renewable_ticket_life\fR\fR
+.ad
+.sp .6
+.RS 4n
+See "Common Command-specific Options," above.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-r\fR \fIrealm\fR\fR
+.ad
+.sp .6
+.RS 4n
+See "Common Command-specific Options," above.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIticket_flags\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the ticket flags. If this option is not specified, by default, none
+of the flags are set. This means all the ticket options will be allowed and no
+restriction will be set. See "Ticket Flags" for a list and descriptions of
+these flags.
+.RE
+
+.SS "The \fBview\fR Command"
+The \fBview\fR command displays the attributes of a realm. The command has the
+following syntax:
+.sp
+.in +2
+.nf
+view [-r \fIrealm\fR]
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The \fBview\fR command has the following option:
+.sp
+.ne 2
+.na
+\fB\fB-r\fR \fIrealm\fR\fR
+.ad
+.sp .6
+.RS 4n
+See "Common Command-specific Options," above.
+.RE
+
+.SS "The \fBdestroy\fR Command"
+The \fBdestroy\fR command destroys a realm, including the master key stash
+file. The command has the following syntax:
+.sp
+.in +2
+.nf
+destroy [-f] [-r \fIrealm\fR]
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The \fBdestroy\fR command has the following options:
+.sp
+.ne 2
+.na
+\fB\fB-f\fR\fR
+.ad
+.sp .6
+.RS 4n
+If specified, \fBdestroy\fR does not prompt you for confirmation.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-r\fR \fIrealm\fR\fR
+.ad
+.sp .6
+.RS 4n
+See "Common Command-specific Options," above.
+.RE
+
+.SS "The \fBlist\fR Command"
+The \fBlist\fR command displays the names of realms. The command has the
+following syntax:
+.sp
+.in +2
+.nf
+list
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The \fBlist\fR command has no options.
+.SS "The \fBstashsrvpw\fR Command"
+The \fBstashsrvpw\fR command enables you to store the password for service
+object in a file so that a KDC and Administration server can use it to
+authenticate to the LDAP server. The command has the following syntax:
+.sp
+.in +2
+.nf
+stashsrvpw [-f \fIfilename\fR] \fIservicedn\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The \fBstashsrvpw\fR command has the following option and argument:
+.sp
+.ne 2
+.na
+\fB\fB-f\fR \fIfilename\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the complete path of the service password file. The default is:
+.sp
+.in +2
+.nf
+/var/krb5/service_passwd
+.fi
+.in -2
+.sp
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIservicedn\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the distinguished name (DN) of the service object whose password is
+to be stored in file.
+.RE
+
+.SS "The \fBcreate_policy\fR Command"
+The \fBcreate_policy\fR command creates a ticket policy in a directory. The
+command has the following syntax:
+.sp
+.in +2
+.nf
+create_policy \e
+[-r \fIrealm\fR]
+[-maxtktlife \fImax_ticket_life\fR]
+[-maxrenewlife \fImax_renewable_ticket_life\fR]
+[\fIticket_flags\fR]
+\fIpolicy_name\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The \fBcreate_policy\fR command has the following options:
+.sp
+.ne 2
+.na
+\fB\fB-r\fR \fIrealm\fR\fR
+.ad
+.sp .6
+.RS 4n
+See "Common Command-specific Options," above.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-maxtktlife\fR \fImax_ticket_life\fR\fR
+.ad
+.sp .6
+.RS 4n
+See "Common Command-specific Options," above.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-maxrenewlife\fR \fImax_renewable_ticket_life\fR\fR
+.ad
+.sp .6
+.RS 4n
+See "Common Command-specific Options," above.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIticket_flags\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the ticket flags. If this option is not specified, by default, none
+of the flags are set. This means all the ticket options will be allowed and no
+restriction will be set. See "Ticket Flags" for a list and descriptions of
+these flags.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIpolicy_name\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the name of the ticket policy.
+.RE
+
+.SS "The \fBmodify_policy\fR Command"
+The \fBmodify_policy\fR command modifies the attributes of a ticket policy. The
+command has the following syntax:
+.sp
+.in +2
+.nf
+modify_policy \e
+[-r \fIrealm\fR]
+[-maxtktlife \fImax_ticket_life\fR]
+[-maxrenewlife \fImax_renewable_ticket_life\fR]
+[\fIticket_flags\fR]
+\fIpolicy_name\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The \fBmodify_policy\fR command has the same options and argument as those for
+the \fBcreate_policy\fR command.
+.SS "The \fBview_policy\fR Command"
+The \fBview_policy\fR command displays the attributes of a ticket policy. The
+command has the following syntax:
+.sp
+.in +2
+.nf
+view_policy [-r \fIrealm\fR] \fIpolicy_name\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The \fBview_policy\fR command has the following options:
+.sp
+.ne 2
+.na
+\fB\fB-r\fR \fIrealm\fR\fR
+.ad
+.sp .6
+.RS 4n
+See "Common Command-specific Options," above.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIpolicy_name\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the name of the ticket policy.
+.RE
+
+.SS "The \fBdestroy_policy\fR Command"
+The \fBdestroy_policy\fR command destroys an existing ticket policy. The
+command has the following syntax:
+.sp
+.in +2
+.nf
+destroy_policy [-r \fIrealm\fR] [-force] \fIpolicy_name\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The \fBdestroy_policy\fR command has the following options:
+.sp
+.ne 2
+.na
+\fB\fB-r\fR \fIrealm\fR\fR
+.ad
+.sp .6
+.RS 4n
+See "Common Command-specific Options," above.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-force\fR\fR
+.ad
+.sp .6
+.RS 4n
+Forces the deletion of the policy object. If not specified, you will be
+prompted for confirmation before the policy is deleted. Enter \fByes\fR to
+confirm the deletion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIpolicy_name\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the name of the ticket policy.
+.RE
+
+.SS "The \fBlist_policy\fR Command"
+The \fBlist_policy\fR command lists the ticket policies in the default or a
+specified realm. The command has the following syntax:
+.sp
+.in +2
+.nf
+list_policy [-r \fIrealm\fR]
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The \fBlist_policy\fR command has the following option:
+.sp
+.ne 2
+.na
+\fB\fB-r\fR \fIrealm\fR\fR
+.ad
+.sp .6
+.RS 4n
+See "Common Command-specific Options," above.
+.RE
+
+.SH TICKET FLAGS
+A number of \fBkdb5_ldap_util\fR commands have \fBticket_flag\fR options. These
+flags are described as follows:
+.sp
+.ne 2
+.na
+\fB\fB{-|+}allow_dup_skey\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fB-allow_dup_skey\fR disables user-to-user authentication for principals by
+prohibiting principals from obtaining a session key for another user. This
+setting sets the \fBKRB5_KDB_DISALLOW_DUP_SKEY\fR flag. \fB+allow_dup_skey\fR
+clears this flag.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB{-|+}allow_forwardable\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fB-allow_forwardable\fR prohibits principals from obtaining forwardable
+tickets. This setting sets the \fBKRB5_KDB_DISALLOW_FORWARDABLE\fR flag.
+\fB+allow_forwardable\fR clears this flag.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB{-|+}allow_postdated\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fB-allow_postdated\fR prohibits principals from obtaining postdated tickets.
+This setting sets the \fBKRB5_KDB_DISALLOW_POSTDATED\fR flag.
+\fB+allow_postdated\fR clears this flag.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB{-|+}allow_proxiable\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fB-allow_proxiable\fR prohibits principals from obtaining proxiable tickets.
+This setting sets the \fBKRB5_KDB_DISALLOW_PROXIABLE\fR flag.
+\fB+allow_proxiable\fR clears this flag.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB{-|+}allow_renewable\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fB-allow_renewable\fR prohibits principals from obtaining renewable tickets.
+This setting sets the \fBKRB5_KDB_DISALLOW_RENEWABLE\fR flag.
+\fB+allow_renewable\fR clears this flag.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB{-|+}allow_svr\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fB-allow_svr\fR prohibits the issuance of service tickets for principals. This
+setting sets the \fBKRB5_KDB_DISALLOW_SVR\fR flag. \fB+allow_svr\fR clears
+this flag.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB{-|+}allow_tgs_req\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fB-allow_tgs_req\fR specifies that a Ticket-Granting Service (TGS) request for
+a service ticket for principals is not permitted. This option is useless for
+most purposes. \fB+allow_tgs_req\fR clears this flag. The default is
+\fB+allow_tgs_req\fR. In effect, \fB-allow_tgs_req\fR sets the
+\fBKRB5_KDB_DISALLOW_TGT_BASED\fR flag on principals in the database.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB{-|+}allow_tix\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fB-allow_tix\fR forbids the issuance of any tickets for principals.
+\fB+allow_tix\fR clears this flag. The default is \fB+allow_tix\fR. In effect,
+\fB-allow_tix\fR sets the \fBKRB5_KDB_DISALLOW_ALL_TIX\fR flag on principals in
+the database.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB{-|+}needchange\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fB+needchange\fR sets a flag in the attributes field to force a password
+change; \fB-needchange\fR clears that flag. The default is \fB-needchange\fR.
+In effect, \fB+needchange\fR sets the \fBKRB5_KDB_REQUIRES_PWCHANGE\fR flag on
+principals in the database.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB{-|+}password_changing_service\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fB+password_changing_service\fR sets a flag in the attributes field marking a
+principal as a password-change-service principal (a designation that is most
+often not useful). \fB-password_changing_service\fR clears the flag. That this
+flag has a long name is intentional. The default is
+\fB-password_changing_service\fR. In effect, \fB+password_changing_service\fR
+sets the \fBKRB5_KDB_PWCHANGE_SERVICE\fR flag on principals in the database.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB{-|+}requires_hwauth\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fB+requires_hwauth\fR requires principals to preauthenticate using a hardware
+device before being allowed to \fBkinit\fR(1). This setting sets the
+\fBKRB5_KDB_REQUIRES_HW_AUTH\fR flag. \fB-requires_hwauth\fR clears this flag.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB{-|+}requires_preauth\fR\fR
+.ad
+.sp .6
+.RS 4n
++\fBrequires_preauth\fR requires principals to preauthenticate before being
+allowed to \fBkinit\fR(1). This setting sets the
+\fBKRB5_KDB_REQUIRES_PRE_AUTH\fR flag. \fB-requires_preauth\fR clears this
+flag.
+.RE
+
+.SH EXAMPLES
+\fBExample 1 \fRUsing \fBcreate\fR
+.sp
+.LP
+The following is an example of the use of the \fBcreate\fR command.
+
+.sp
+.in +2
+.nf
+# \fBkdb5_ldap_util -D cn=admin,o=org -H ldaps://ldap-server1.mit.edu \e
+create -subtrees o=org -sscope SUB -r ATHENA.MIT.EDU\fR
+Password for "cn=admin,o=org": \fIpassword entered\fR
+Initializing database for realm 'ATHENA.MIT.EDU'
+You will be prompted for the database Master Password.
+It is important that you NOT FORGET this password.
+Enter KDC database master key: \fImaster key entered\fR
+Re-enter KDC database master key to verify: \fImaster key re-entered\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRUsing \fBmodify\fR
+.sp
+.LP
+The following is an example of the use of the \fBmodify\fR command.
+
+.sp
+.in +2
+.nf
+# \fBkdb5_ldap_util -D cn=admin,o=org -H ldaps://ldap-server1.mit.edu \e
+modify +requires_preauth -r ATHENA.MIT.EDU\fR
+Password for "cn=admin,o=org": \fIpassword entered\fR
+Password for "cn=admin,o=org": \fIpassword entered\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRUsing \fBview\fR
+.sp
+.LP
+The following is an example of the use of the \fBview\fR command.
+
+.sp
+.in +2
+.nf
+# \fBkdb5_ldap_util -D cn=admin,o=org -H ldaps://ldap-server1.mit.edu \e
+view -r ATHENA.MIT.EDU\fR
+ Password for "cn=admin,o=org":
+ Realm Name: ATHENA.MIT.EDU
+ Subtree: ou=users,o=org
+ Subtree: ou=servers,o=org
+ SearchScope: ONE
+ Maximum ticket life: 0 days 01:00:00
+ Maximum renewable life: 0 days 10:00:00
+ Ticket flags: DISALLOW_FORWARDABLE REQUIRES_PWCHANGE
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 4 \fRUsing \fBdestroy\fR
+.sp
+.LP
+The following is an example of the use of the \fBdestroy\fR command.
+
+.sp
+.in +2
+.nf
+# \fBkdb5_ldap_util -D cn=admin,o=org -H ldaps://ldap-server1.mit.edu \e
+destroy -r ATHENA.MIT.EDU\fR
+Password for "cn=admin,o=org": \fIpassword entered\fR
+Deleting KDC database of 'ATHENA.MIT.EDU', are you sure?
+(type 'yes' to confirm)? \fByes\fR
+OK, deleting database of 'ATHENA.MIT.EDU'...
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 5 \fRUsing \fBlist\fR
+.sp
+.LP
+The following is an example of the use of the \fBlist\fR command.
+
+.sp
+.in +2
+.nf
+# \fBkdb5_ldap_util -D cn=admin,o=org -H ldaps://ldap-server1.mit.edu list\fR
+Password for "cn=admin,o=org": \fIpassword entered\fR
+Re-enter Password for "cn=admin,o=org": \fIpassword re-entered\fR
+ATHENA.MIT.EDU
+OPENLDAP.MIT.EDU
+MEDIA-LAB.MIT.EDU
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 6 \fRUsing \fBstashsrvpw\fR
+.sp
+.LP
+The following is an example of the use of the \fBstashsrvpw\fR command.
+
+.sp
+.in +2
+.nf
+# \fBkdb5_ldap_util stashsrvpw -f \e
+/home/andrew/conf_keyfile cn=service-kdc,o=org\fR
+Password for "cn=service-kdc,o=org": \fIpassword entered\fR
+Re-enter password for "cn=service-kdc,o=org": \fIpassword re-entered\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 7 \fRUsing \fBcreate_policy\fR
+.sp
+.LP
+The following is an example of the use of the \fBcreate_policy\fR command.
+
+.sp
+.in +2
+.nf
+# \fBkdb5_ldap_util -D cn=admin,o=org -H ldaps://ldap-server1.mit.edu \e
+create_policy -r ATHENA.MIT.EDU \e
+-maxtktlife "1 day" -maxrenewlife "1 week" \e
+-allow_postdated +needchange -allow_forwardable \fItktpolicy\fR\fR
+Password for "cn=admin,o=org": \fIpassword entered\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 8 \fRUsing \fBmodify_policy\fR
+.sp
+.LP
+The following is an example of the use of the \fBmodify_policy\fR command.
+
+.sp
+.in +2
+.nf
+# \fBkdb5_ldap_util -D cn=admin,o=org -H ldaps://ldap-server1.mit.edu \e
+modify_policy -r ATHENA.MIT.EDU \e
+-maxtktlife "60 minutes" -maxrenewlife "10 hours" \e
++allow_postdated -requires_preauth \fItktpolicy\fR\fR
+Password for "cn=admin,o=org": \fIpassword entered\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 9 \fRUsing \fBview_policy\fR
+.sp
+.LP
+The following is an example of the use of the \fBview_policy\fR command.
+
+.sp
+.in +2
+.nf
+# \fBkdb5_ldap_util -D cn=admin,o=org -H ldaps://ldap-server1.mit.edu \e
+view_policy -r ATHENA.MIT.EDU \fItktpolicy\fR\fR
+Password for "cn=admin,o=org": \fIpassword entered\fR
+ Ticket policy: tktpolicy
+ Maximum ticket life: 0 days 01:00:00
+ Maximum renewable life: 0 days 10:00:00
+ Ticket flags: DISALLOW_FORWARDABLE REQUIRES_PWCHANGE
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 10 \fRUsing \fBdestroy_policy\fR
+.sp
+.LP
+The following is an example of the use of the \fBdestroy_policy\fR command.
+
+.sp
+.in +2
+.nf
+# \fBkdb5_ldap_util -D cn=admin,o=org -H ldaps://ldap-server1.mit.edu \e
+destroy_policy -r ATHENA.MIT.EDU \fItktpolicy\fR\fR
+Password for "cn=admin,o=org": \fIpassword entered\fR
+This will delete the policy object 'tktpolicy', are you sure?
+(type 'yes' to confirm)? \fByes\fR
+** policy object '\fItktpolicy\fR' deleted.
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 11 \fRUsing \fBlist_policy\fR
+.sp
+.LP
+The following is an example of the use of the \fBlist_policy\fR command.
+
+.sp
+.in +2
+.nf
+# \fBkdb5_ldap_util -D cn=admin,o=org -H ldaps://ldap-server1.mit.edu \e
+list_policy -r ATHENA.MIT.EDU\fR
+Password for "cn=admin,o=org": \fIpassword entered\fR
+tktpolicy
+tmppolicy
+userpolicy
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 12 \fRUsing \fBsetsrvpw\fR
+.sp
+.LP
+The following is an example of the use of the \fBsetsrvpw\fR command.
+
+.sp
+.in +2
+.nf
+# \fBkdb5_ldap_util setsrvpw -D cn=admin,o=org setsrvpw \e
+-fileonly -f /home/andrew/conf_keyfile cn=service-kdc,o=org\fR
+Password for "cn=admin,o=org": \fIpassword entered\fR
+Password for "cn=service-kdc,o=org": \fIpassword entered\fR
+Re-enter password for "cn=service-kdc,o=org": \fIpassword re-entered\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 13 \fRUsing \fBcreate_service\fR
+.sp
+.LP
+The following is an example of the use of the \fBcreate_service\fR command.
+
+.sp
+.in +2
+.nf
+# \fBkdb5_ldap_util -D cn=admin,o=org create_service \e
+-kdc -randpw -f /home/andrew/conf_keyfile cn=service-kdc,o=org\fR
+Password for "cn=admin,o=org": \fIpassword entered\fR
+File does not exist. Creating the file /home/andrew/conf_keyfile...
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 14 \fRUsing \fBmodify_service\fR
+.sp
+.LP
+The following is an example of the use of the \fBmodify_service\fR command.
+
+.sp
+.in +2
+.nf
+# \fBkdb5_ldap_util -D cn=admin,o=org modify_service \e
+-realm ATHENA.MIT.EDU cn=service-kdc,o=org\fR
+Password for "cn=admin,o=org": \fIpassword entered\fR
+Changing rights for the service object. Please wait ... done
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 15 \fRUsing \fBview_service\fR
+.sp
+.LP
+The following is an example of the use of the \fBview_service\fR command.
+
+.sp
+.in +2
+.nf
+# \fBkdb5_ldap_util -D cn=admin,o=org view_service \e
+cn=service-kdc,o=org\fR
+Password for "cn=admin,o=org": \fIpassword entered\fR
+ Service dn: cn=service-kdc,o=org
+ Service type: kdc
+ Service host list:
+ Realm DN list: cn=ATHENA.MIT.EDU,cn=Kerberos,cn=Security
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 16 \fRUsing \fBdestroy_service\fR
+.sp
+.LP
+The following is an example of the use of the \fBdestroy_service\fR command.
+
+.sp
+.in +2
+.nf
+# \fBkdb5_ldap_util -D cn=admin,o=org destroy_service \e
+cn=service-kdc,o=org\fR
+Password for "cn=admin,o=org": \fIpassword entered\fR
+This will delete the service object 'cn=service-kdc,o=org', are you sure?
+(type 'yes' to confirm)? \fByes\fR
+** service object 'cn=service-kdc,o=org' deleted.
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 17 \fRUsing \fBlist_service\fR
+.sp
+.LP
+The following is an example of the use of the \fBlist_service\fR command.
+
+.sp
+.in +2
+.nf
+# \fBkdb5_ldap_util -D cn=admin,o=org list_service\fR
+Password for "cn=admin,o=org": \fIpassword entered\fR
+cn=service-kdc,o=org
+cn=service-adm,o=org
+cn=service-pwd,o=org
+.fi
+.in -2
+.sp
+
+.SH ATTRIBUTES
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Volatile
+.TE
+
+.SH SEE ALSO
+.BR kinit (1),
+.BR kdc.conf (5),
+.BR attributes (7),
+.BR kadmin (8)
diff --git a/usr/src/man/man8/kdb5_util.8 b/usr/src/man/man8/kdb5_util.8
new file mode 100644
index 0000000000..f470a89a20
--- /dev/null
+++ b/usr/src/man/man8/kdb5_util.8
@@ -0,0 +1,526 @@
+'\" te
+.\" Copyright (c) 2001, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH KDB5_UTIL 8 "November 22, 2021"
+.SH NAME
+kdb5_util \- Kerberos Database maintenance utility
+.SH SYNOPSIS
+.nf
+\fB/usr/sbin/kdb5_util\fR [\fB-d\fR \fIdbname\fR] [\fB-f\fR \fIstashfile_name\fR]
+ [\fB-k\fR \fImkeytype\fR] [\fB-m\fR ] [\fB-M\fR \fImkeyname\fR] [\fB-P\fR \fIpassword\fR] [\fB-r\fR \fIrealm\fR]
+ [\fB-x\fR \fIdb_args\fR]... \fIcmd\fR
+.fi
+
+.SH DESCRIPTION
+The \fBkdb5_util\fR utility enables you to create, dump, load, and destroy the
+Kerberos V5 database. You can also use \fBkdb5_util\fR to create a stash file
+containing the Kerberos database master key.
+.SH OPTIONS
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-d\fR \fIdbname\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify the database name. \fB\&.db\fR is appended to whatever name is
+specified. You can specify an absolute path. If you do not specify the \fB-d\fR
+option, the default database name is \fB/var/krb5/principal\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR \fIstashfile_name\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify the stash file name. You can specify an absolute path.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-k\fR \fImkeytype\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify the master key type. Valid values are \fBdes3-cbc-sha1\fR,
+\fBdes-cbc-crc\fR, \fBdes-cbc-md5\fR, \fBdes-cbc-raw\fR,
+\fBarcfour-hmac-md5\fR, \fBarcfour-hmac-md5-exp\fR,
+\fBaes128-cts-hmac-sha1-96\fR, and \fBaes256-cts-hmac-sha1-96\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-m\fR\fR
+.ad
+.sp .6
+.RS 4n
+Enter the master key manually.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-M\fR \fImkeyname\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify the master key name.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-P\fR \fIpassword\fR\fR
+.ad
+.sp .6
+.RS 4n
+Use the specified \fIpassword\fR instead of the stash file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-r\fR \fIrealm\fR\fR
+.ad
+.sp .6
+.RS 4n
+Use \fIrealm\fR as the default database realm.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-x\fR \fIdb_args\fR\fR
+.ad
+.sp .6
+.RS 4n
+Pass database-specific arguments to \fBkadmin\fR. Supported arguments are for
+LDAP and the \fBBerkeley-db2\fR plug-in. These arguments are:
+.sp
+.ne 2
+.na
+\fB\fBbinddn\fR=\fIbinddn\fR\fR
+.ad
+.sp .6
+.RS 4n
+LDAP simple bind DN for authorization on the directory server. Overrides the
+\fBldap_kadmind_dn\fR parameter setting in \fBkrb5.conf\fR(5).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBbindpwd\fR=\fIbindpwd\fR\fR
+.ad
+.sp .6
+.RS 4n
+Bind password.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdbname\fR=\fIname\fR\fR
+.ad
+.sp .6
+.RS 4n
+For the \fBBerkeley-db2\fR plug-in, specifies a name for the Kerberos database.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnconns\fR=\fInum\fR\fR
+.ad
+.sp .6
+.RS 4n
+Maximum number of server connections.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBport\fR=\fInum\fR\fR
+.ad
+.sp .6
+.RS 4n
+Directory server connection port.
+.RE
+
+.RE
+
+.SH OPERANDS
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fB\fIcmd\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies whether to create, destroy, dump, or load the database, or to create
+a stash file.
+.sp
+You can specify the following commands:
+.sp
+.ne 2
+.na
+\fB\fBcreate\fR \fB-s\fR\fR
+.ad
+.sp .6
+.RS 4n
+Creates the database specified by the \fB-d\fR option. You will be prompted for
+the database master password. If you specify \fB-s\fR, a stash file is created
+as specified by the \fB-f\fR option. If you did not specify \fB-f\fR, the
+default stash file name is \fB/var/krb5/.k5.realm\fR. If you use the \fB-f\fR,
+\fB-k\fR, or \fB-M\fR options when you create a database, then you must use the
+same options when modifying or destroying the database.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdestroy\fR\fR
+.ad
+.sp .6
+.RS 4n
+Destroys the database specified by the \fB-d\fR option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBstash\fR\fR
+.ad
+.sp .6
+.RS 4n
+Creates a stash file. If \fB-f\fR was not specified, the default stash file
+name is \fB/var/krb5/.k5.realm\fR. You will be prompted for the master database
+password. This command is useful when you want to generate the stash file from
+the password.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdump\fR [\fB-old\fR] [\fB-b6\fR] [\fB-b7\fR] [\fB-ov\fR] [\fB-verbose\fR]
+[\fB-mkey_convert\fR] [\fB-new_mkey_file\fR \fImkey_file\fR] [\fB-rev\fR]
+[\fB-recurse\fR] [\fIfilename\fR [\fIprincipals\fR...]]\fR
+.ad
+.sp .6
+.RS 4n
+Dumps the current Kerberos and KADM5 database into an ASCII file. By default,
+the database is dumped in current format, "\fBkdb5_util load_dumpversion 5\fR".
+If \fIfilename\fR is not specified or is the string "-", the dump is sent to
+standard output. Options are as follows:
+.sp
+.ne 2
+.na
+\fB\fB-old\fR\fR
+.ad
+.sp .6
+.RS 4n
+Causes the dump to be in the Kerberos 5 Beta 5 and earlier dump format
+("\fBkdb5_edit load_dump version 2.0\fR").
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-b6\fR\fR
+.ad
+.sp .6
+.RS 4n
+Causes the dump to be in the Kerberos 5 Beta 6 format ("\fBkdb5_edit load_dump
+version 3.0\fR").
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-b7\fR\fR
+.ad
+.sp .6
+.RS 4n
+Causes the dump to be in the Kerberos 5 Beta 7 format ("\fBkdb5_util load_dump
+version 4\fR"). This was the dump format produced on releases prior to 1.2.2.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-ov\fR\fR
+.ad
+.sp .6
+.RS 4n
+Causes the dump to be in \fBovsec_adm_export\fR format.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-verbose\fR\fR
+.ad
+.sp .6
+.RS 4n
+Causes the name of each principal and policy to be displayed as it is dumped.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-mkey_convert\fR\fR
+.ad
+.sp .6
+.RS 4n
+Prompts for a new master key. This new master key will be used to re-encrypt
+the key data in the dumpfile. The key data in the database will not be changed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-new_mkey_file\fR \fImkey_file\fR\fR
+.ad
+.sp .6
+.RS 4n
+The filename of a stash file. The master key in this stash file will be used to
+re-encrypt the key data in the dumpfile. The key data in the database will not
+be changed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-rev\fR\fR
+.ad
+.sp .6
+.RS 4n
+Dumps in reverse order. This might recover principals that do not dump
+normally, in cases where database corruption has occurred.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-recurse\fR\fR
+.ad
+.sp .6
+.RS 4n
+Causes the dump to walk the database recursively (\fBbtree\fR only). This might
+recover principals that do not dump normally, in cases where database
+corruption has occurred. In cases of such corruption, this option will probably
+retrieve more principals than will the \fB-rev\fR option.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBload\fR [\fB-old\fR] [\fB-b6\fR] [\fB-b7\fR] [\fB-ov\fR] [\fB-hash\fR]
+[\fB-verbose\fR] [\fB-update\fR] \fIfilename\fR \fIdbname\fR
+[\fIadmin_dbname\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Loads a database dump from \fIfilename\fR into \fIdbname\fR. Unless the
+\fB-old\fR or \fB-b6\fR option is specified, the format of the dump file is
+detected automatically and handled appropriately. Unless the \fB-update\fR
+option is specified, \fBload\fR creates a new database containing only the
+principals in the dump file, overwriting the contents of any existing database.
+The \fB-old\fR option requires the database to be in the Kerberos 5 Beta 5 or
+earlier format ("\fBkdb5_edit load_dump version 2.0\fR").
+.sp
+.ne 2
+.na
+\fB\fB-b6\fR\fR
+.ad
+.sp .6
+.RS 4n
+Requires the database to be in the Kerberos 5 Beta 6 format ("\fBkdb5_edit
+load_dump version 3.0\fR").
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-b7\fR\fR
+.ad
+.sp .6
+.RS 4n
+Requires the database to be in the Kerberos 5 Beta 7 format ("\fBkdb5_util
+load_dump version 4\fR").
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-ov\fR\fR
+.ad
+.sp .6
+.RS 4n
+Requires the database to be in \fBovsec_adm_import\fR format. Must be used with
+the \fB-update\fR option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-hash\fR\fR
+.ad
+.sp .6
+.RS 4n
+Requires the database to be stored as a hash. If this option is not specified,
+the database will be stored as a \fBbtree\fR. This option is not recommended,
+as databases stored in hash format are known to corrupt data and lose
+principals.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-verbose\fR\fR
+.ad
+.sp .6
+.RS 4n
+Causes the name of each principal and policy to be displayed as it is dumped.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-update\fR\fR
+.ad
+.sp .6
+.RS 4n
+Records from the dump file are added to or updated in the existing database.
+Otherwise, a new database is created containing only what is in the dump file
+and the old one is destroyed upon successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIfilename\fR\fR
+.ad
+.sp .6
+.RS 4n
+Required argument that specifies a path to a file containing database dump.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIdbname\fR\fR
+.ad
+.sp .6
+.RS 4n
+Required argument that overrides the value specified on the command line or
+overrides the default.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIadmin_dbname\fR\fR
+.ad
+.sp .6
+.RS 4n
+Optional argument that is derived from \fIdbname\fR if not specified.
+.RE
+
+.RE
+
+.RE
+
+.SH EXAMPLES
+\fBExample 1 \fRCreating File that Contains Information about Two Principals
+.sp
+.LP
+The following example creates a file named \fBslavedata\fR that contains the
+information about two principals, \fBjdb@EXAMPLE.COM\fR and \fBpak@EXAMPLE.COM\fR.
+
+.sp
+.in +2
+.nf
+# /usr/krb5/bin/kdb5_util dump -verbose slavedata
+jdb@EXAMPLE.COM pak@EXAMPLE.COM
+.fi
+.in -2
+.sp
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/var/krb5/principal\fR\fR
+.ad
+.sp .6
+.RS 4n
+Kerberos principal database.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/krb5/principal.kadm5\fR\fR
+.ad
+.sp .6
+.RS 4n
+Kerberos administrative database. Contains policy information.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/krb5/principal.kadm5.lock\fR\fR
+.ad
+.sp .6
+.RS 4n
+Lock file for the Kerberos administrative database. This file works backwards
+from most other lock files (that is, \fBkadmin\fR exits with an error if this
+file does not exist).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/krb5/principal.ulog\fR\fR
+.ad
+.sp .6
+.RS 4n
+The update log file for incremental propagation.
+.RE
+
+.SH ATTRIBUTES
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.BR kpasswd (1),
+.BR kadm5.acl (5),
+.BR kdc.conf (5),
+.BR attributes (7),
+.BR kerberos (7),
+.BR kadmin (8),
+.BR kadmin.local (8),
+.BR kadmind (8),
+.BR kdb5_ldap_util (8),
+.BR kproplog (8)
diff --git a/usr/src/man/man8/kdcmgr.8 b/usr/src/man/man8/kdcmgr.8
new file mode 100644
index 0000000000..9bd8065302
--- /dev/null
+++ b/usr/src/man/man8/kdcmgr.8
@@ -0,0 +1,420 @@
+'\" te
+.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH KDCMGR 8 "Sep 19, 2007"
+.SH NAME
+kdcmgr \- set up a Kerberos Key Distribution Center (KDC)
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/kdcmgr\fR [\fB-a\fR \fIadmprincipal\fR] [\fB-e\fR \fIenctype\fR]
+ [\fB-h\fR] [\fB-p\fR \fIpwfile\fR] [\fB-r\fR \fIrealm\fR] \fIsubcommand\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+Use the \fBkdcmgr\fR utility to do the following:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Configure a master Key Distribution Center (KDC) server.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Configure a slave KDC. This assumes that a master KDC has already been
+configured. The default propagation method configured is incremental
+propagation. See \fBkpropd\fR(8).
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Specify a list of slave KDCs to configure service principals and create access
+control list for those slaves on the master KDC.
+.RE
+.sp
+.LP
+If you specify no options, \fBkdcmgr\fR prompts you for required information,
+including a password to generate the master key and a password for the
+administrative principal. When you specify sufficient options, you are still
+prompted for these passwords, unless you specified the \fB-p\fR \fIpwfile\fR
+option.
+.sp
+.LP
+The \fBkdcmgr\fR utility must be run as superuser or by someone who has the
+Primary Administrator role. The command must be run on the server from which it
+is invoked.
+.sp
+.LP
+Note that \fBkdcmgr\fR requires the user to enter sensitive information, such
+as the password used to generate the database's master key and the password for
+the administrative principal. Great care must be taken to ensure that the
+connection to the server is secured over the network, by using a protocol such
+as \fBssh\fR(1).
+.sp
+.LP
+You must also exercise great care when selecting the administrative and master
+key passwords. They should be derived from non-dictionary words and a long
+string of characters consisting of all of the following character classes:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+special characters (for example, !@#$%^&*)
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+numerals (0-9)
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+uppercase letters
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+lowercase letters
+.RE
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-a\fR \fIadmprincipal\fR\fR
+.ad
+.sp .6
+.RS 4n
+When creating a master KDC, specifies the administrative principal,
+\fIadmprincipal\fR, that will be created.
+.sp
+When creating a slave KDC, \fIadmprincipal\fR is used to authenticate as the
+administrative principal.
+.sp
+If you omit \fB-a\fR, the suggested default administrative principal name is
+the output of \fBlogname\fR(1) appended by \fB/admin\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-e\fR \fIenctype\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the encryption type to be used when creating the key for the master
+key, which is used to encrypt all principal keys in the database. The set of
+valid encryption types used here are described in \fBkrb5.conf\fR(5) under the
+\fBpermitted_enctypes\fR option. Note that the encryption type specified here
+must be supported on all KDCs or else they will not be able to decrypt any of
+the principal keys. Solaris 9 and earlier releases support only the
+\fBdes-cbc-crc\fR encryption type for the master key. Therefore, if any of the
+master or slave KDCs are of these older releases, then \fB-e\fR
+\fBdes-cbc-crc\fR would need to be specified on all KDCs configured with
+\fBkdcmgr\fR.
+.sp
+The default encryption type is \fBaes128-cts-hmac-sha1-96\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-h\fR\fR
+.ad
+.sp .6
+.RS 4n
+Displays usage information for \fBkdcmgr\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR \fIpwfile\fR\fR
+.ad
+.sp .6
+.RS 4n
+Provides the location of the password file that contains the password used to
+create the administrative principal and/or master key.
+.sp
+\fBWarning:\fR This option should be used with great care. Make sure that this
+\fIpwfile\fR is accessible only by a privileged user and on a local file
+system. Once the KDC has been configured, you should remove \fIpwfile\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-r\fR \fIrealm\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set the default realm for this server.
+.sp
+If the \fB-r\fR option is not specified, \fBkdcmgr\fR attempts to obtain the
+machine's local domain name by submitting the canonical form of the machine's
+host name to DNS and using the return value to derive the domain name. If
+successful, the domain name is converted to uppercase and proposed as the
+default realm name.
+.RE
+
+.SH SUBCOMMANDS
+.sp
+.LP
+The following subcommands are supported:
+.sp
+.ne 2
+.na
+\fB\fBcreate\fR [ \fImaster\fR ]\fR
+.ad
+.br
+.na
+\fB\fBcreate\fR [ \fB-m\fR \fImasterkdc\fR ] slave\fR
+.ad
+.sp .6
+.RS 4n
+Creates a KDC. If no option is specified, an attempt to create a master KDC is
+made.
+.sp
+.ne 2
+.na
+\fB\fBcreate\fR [ \fImaster\fR ]\fR
+.ad
+.sp .6
+.RS 4n
+Create a master KDC. Upon successful configuration the \fBkrb5kdc\fR(8) and
+\fBkadmind\fR(8) are enabled on the machine.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcreate\fR [ \fB-m\fR \fImasterkdc\fR ] slave\fR
+.ad
+.sp .6
+.RS 4n
+Configures a slave KDC. After configuration, the \fBkrb5kdc\fR(8) and
+\fBkpropd\fR(8) services are enabled on the machine.
+.sp
+\fImasterkdc\fR specifies the master KDC to authenticate and with which to
+perform administrative tasks. If the \fB-m\fR option is not specified, you are
+prompted for a master KDC host name.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdestroy\fR\fR
+.ad
+.sp .6
+.RS 4n
+Remove all Kerberos configuration and database files associated with the KDC
+server. A confirmation is required before these files are deleted.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBstatus\fR\fR
+.ad
+.sp .6
+.RS 4n
+Determines the role of the KDC, master or slave, and outputs this and the state
+of such associated processes as:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+.BR krb5kdc (8)
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+.BR kadmind (8)
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+.BR kpropd (8)
+.RE
+The subcommand also displays information on incremental propagation if the
+configuration has this feature enabled, as well as any issues with dependent
+files.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRSetting up a Master KDC
+.sp
+.LP
+The following command configures a master KDC with the administrative principal
+\fBuser1/admin\fR and with the realm name \fBEXAMPLE.COM\fR:
+
+.sp
+.in +2
+.nf
+$ \fBkdcmgr -a user1/admin -r EXAMPLE.COM create\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Note that a password will be required to assign to the newly created
+\fBuser1/admin\fR principal. The password for the master key will also need to
+be provided.
+
+.LP
+\fBExample 2 \fRSetting up a Slave KDC
+.sp
+.LP
+The following command configures a slave KDC, authenticates with the
+administrative principal \fBuser1/admin\fR, specifies \fBkdc1\fR as the master,
+and uses the \fBEXAMPLE.COM\fR realm name:
+
+.sp
+.in +2
+.nf
+$ \fBkdcmgr -a user1/admin -r EXAMPLE.COM create -m kdc1 slave\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Note that you must enter the correct password for \fBuser1/admin\fR and that
+the master KDC must already have been created before entering this command. The
+correct password for the master key is also required.
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/krb5/krb5.conf\fR\fR
+.ad
+.sp .6
+.RS 4n
+Main Kerberos configuration file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/krb5/kdc.conf\fR\fR
+.ad
+.sp .6
+.RS 4n
+KDC configuration, used by both master and slave servers.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/krb5/krb5.keytab\fR\fR
+.ad
+.sp .6
+.RS 4n
+Default location of the local host's service keys.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/krb5/kadm5.acl\fR\fR
+.ad
+.sp .6
+.RS 4n
+Kerberos administrative access control list (ACL).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/krb5/kadm5.keytab\fR\fR
+.ad
+.sp .6
+.RS 4n
+Service keys specific to \fBkadmind\fR(8).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/krb5/principal\fR\fR
+.ad
+.sp .6
+.RS 4n
+Kerberos principal database.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/krb5/principal.kadm5\fR\fR
+.ad
+.sp .6
+.RS 4n
+Kerberos policy database.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/krb5/kpropd.acl\fR\fR
+.ad
+.sp .6
+.RS 4n
+Used by slaves to indicate from which server to receive updates.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability See below
+.TE
+
+.sp
+.LP
+The command line interface (CLI) is Uncommitted. The CLI output is Not an
+Interface.
+.SH SEE ALSO
+.sp
+.LP
+.BR logname (1),
+.BR ssh (1),
+.BR kdc.conf (5),
+.BR krb5.conf (5),
+.BR attributes (7),
+.BR kadmin (8),
+.BR kadmind (8),
+.BR kdb5_ldap_util (8),
+.BR kdb5_util (8),
+.BR kpropd (8),
+.BR krb5kdc (8),
+.BR ping (8),
+.BR svcadm (8)
diff --git a/usr/src/man/man8/kernel.8 b/usr/src/man/man8/kernel.8
new file mode 100644
index 0000000000..9ea740e07a
--- /dev/null
+++ b/usr/src/man/man8/kernel.8
@@ -0,0 +1,403 @@
+'\" te
+.\" Copyright (c) 2006 Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH KERNEL 8 "Nov 27, 2007"
+.SH NAME
+kernel \- UNIX system executable file containing basic operating system
+services
+.SH SYNOPSIS
+.LP
+.nf
+\fBkernel-name\fR [\fB-asrvx\fR] [\fB-m \fIsmf_options\fR\fR] [\fB-i \fIaltinit\fR\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The operating system image, or kernel, is the collection of software comprising
+the image files (\fBunix\fR and \fBgenunix\fR) and the modules loaded at any
+instant in time. The system will not function without a kernel to control it.
+.sp
+.LP
+The kernel is loaded by the \fBboot\fR(8) command in a machine-specific way.
+The kernel may be loaded from disk, \fBCD-ROM\fR, or DVD (\fBdiskfull boot\fR)
+or over the network (\fBdiskless boot\fR). In either case, the directories
+under \fB/platform\fR and \fB/kernel\fR must be readable and must contain
+executable code which is able to perform the required kernel service. If the
+\fB-a\fR flag is given, the user is able to supply different pathnames for the
+default locations of the kernel and modules. See \fBboot\fR(8) for more
+information on loading a specific kernel.
+.sp
+.LP
+The \fBmoddir\fR variable contains a list of module directories separated by
+whitespace. moddir can be set in the \fB/etc/system\fR file. The minimal
+default is:
+.sp
+.in +2
+.nf
+/platform/platform-name/kernel /kernel /usr/kernel
+.fi
+.in -2
+
+.sp
+.LP
+This default can be supplemented by a specific platform. It is common for many
+SPARC systems to override the default path with:
+.sp
+.in +2
+.nf
+/platform/\fIplatform-name\fR/kernel:/platform/\fIhardware-class-name\fR\e
+ /kernel:/kernel:/usr/kernel
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+where \fIplatform-name\fR can be found using the \fB-i\fR option of
+\fBuname\fR(1), and \fIhardware-class-name\fR can be found using the \fB-m\fR
+option of \fBuname\fR(1).
+.sp
+.LP
+The kernel configuration can be controlled using the \fB/etc/system\fR file
+(see \fBsystem\fR(5)).
+.sp
+.LP
+\fBgenunix\fR is the platform-independent component of the base kernel.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-a\fR\fR
+.ad
+.sp .6
+.RS 4n
+Asks the user for configuration information, such as where to find the system
+file, where to mount \fBroot\fR, and even override the name of the kernel
+itself. Default responses will be contained in square brackets ([ ]), and the
+user may simply enter RETURN to use the default response (note that RETURN is
+labeled ENTER on some keyboards). To help repair a damaged \fB/etc/system\fR
+file, enter \fB/dev/null\fR at the prompt that asks for the pathname of the
+system configuration file. See \fBsystem\fR(5).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-i\fR \fIaltinit\fR\fR
+.ad
+.sp .6
+.RS 4n
+Select an alternative executable to be the primordial process. \fIaltinit\fR
+must be a valid path to an executable. The default primordial process is
+\fBinit\fR(8).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-m\fR \fIsmf_options\fR\fR
+.ad
+.sp .6
+.RS 4n
+The \fIsmf_options\fR include two categories of options to control booting
+behavior of the service management facility: recovery options and messages
+options.
+.sp
+Message options determine the type and amount of messages that \fBsmf\fR(7)
+displays during boot. Service options determine the services which are used to
+boot the system.
+.sp
+Recovery options
+.sp
+.ne 2
+.na
+\fB\fIdebug\fR\fR
+.ad
+.sp .6
+.RS 4n
+Prints standard per-service output and all \fBsvc.startd\fR messages to log.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fImilestone=[milestone]\fR\fR
+.ad
+.sp .6
+.RS 4n
+Boot with some SMF services temporarily disabled, as indicated by
+\fImilestone\fR. \fImilestone\fR can be "none", "single-user", "multi-user",
+"multi-user-server", or "all". See the \fBmilestone\fR subcommand of
+\fBsvcadm\fR(8).
+.RE
+
+Messages options
+.sp
+.ne 2
+.na
+\fB\fIquiet\fR\fR
+.ad
+.sp .6
+.RS 4n
+Prints standard per-service output and error messages requiring administrative
+intervention.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIverbose\fR\fR
+.ad
+.sp .6
+.RS 4n
+Prints standard per-service output with more informational messages.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-r\fR\fR
+.ad
+.sp .6
+.RS 4n
+Reconfiguration boot. The system will probe all attached hardware devices and
+configure the logical namespace in \fB/dev\fR. See \fBadd_drv\fR(8) and
+\fBrem_drv\fR(8) for additional information about maintaining device drivers.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR\fR
+.ad
+.sp .6
+.RS 4n
+Boots only to init level 's'. See \fBinit\fR(8).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.sp .6
+.RS 4n
+Boots with verbose messages enabled. If this flag is not given, the messages
+are still printed, but the output is directed to the system logfile. See
+\fBsyslogd\fR(8).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-x\fR\fR
+.ad
+.sp .6
+.RS 4n
+Does not boot in clustered mode. This option only has an effect when a version
+of Sun Cluster software that supports this option has been installed.
+.RE
+
+.SH EXAMPLES
+.sp
+.LP
+See \fBboot\fR(8) for examples and instructions on how to boot.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/kernel\fR\fR
+.ad
+.sp .6
+.RS 4n
+Contains kernel components common to all platforms within a particular
+instruction set that are needed for booting the system. of the core image file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/platform/\fIplatform-name\fR/kernel\fR\fR
+.ad
+.sp .6
+.RS 4n
+The platform-specific kernel components.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/platform/\fIhardware-class-name\fR\fR\fB/kernel\fR\fR
+.ad
+.sp .6
+.RS 4n
+The kernel components specific to this hardware class.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/kernel\fR\fR
+.ad
+.sp .6
+.RS 4n
+Contains kernel components common to all platforms within a particular
+instruction set.
+.RE
+
+.sp
+.LP
+The directories in this section can potentially contain the following
+subdirectories:
+.sp
+.ne 2
+.na
+\fBdrv\fR
+.ad
+.sp .6
+.RS 4n
+Loadable device drivers
+.RE
+
+.sp
+.ne 2
+.na
+\fBexec\fR
+.ad
+.sp .6
+.RS 4n
+The modules that execute programs stored in various file formats.
+.RE
+
+.sp
+.ne 2
+.na
+\fBfs\fR
+.ad
+.sp .6
+.RS 4n
+File system modules
+.RE
+
+.sp
+.ne 2
+.na
+\fBmisc\fR
+.ad
+.sp .6
+.RS 4n
+Miscellaneous system-related modules
+.RE
+
+.sp
+.ne 2
+.na
+\fBsched\fR
+.ad
+.sp .6
+.RS 4n
+Operating system schedulers
+.RE
+
+.sp
+.ne 2
+.na
+\fBstrmod\fR
+.ad
+.sp .6
+.RS 4n
+System V STREAMS loadable modules
+.RE
+
+.sp
+.ne 2
+.na
+\fBsys\fR
+.ad
+.sp .6
+.RS 4n
+Loadable system calls
+.RE
+
+.SS "SPARC"
+.sp
+.ne 2
+.na
+\fBcpu\fR
+.ad
+.sp .6
+.RS 4n
+Processor specific modules
+.RE
+
+.sp
+.ne 2
+.na
+\fBtod\fR
+.ad
+.sp .6
+.RS 4n
+Time-Of-Day hardware interface modules
+.RE
+
+.sp
+.LP
+As only 64-bit SPARC platforms are supported, all SPARC executable modules are
+contained within \fBsparcv9\fR directories in the directories listed above.
+.SS "x86"
+.sp
+.ne 2
+.na
+\fBmach\fR
+.ad
+.sp .6
+.RS 4n
+x86 hardware support
+.RE
+
+.sp
+.LP
+Modules comprising the 32-bit x86 kernel are contained in the above
+directories, with the 64-bit x86 kernel components contained within \fBamd64\fR
+subdirectories.
+.SH SEE ALSO
+.sp
+.LP
+.BR isainfo (1),
+.BR uname (1),
+.BR devfs (4FS),
+.BR system (5),
+.BR attributes (7),
+.BR smf (7),
+.BR add_drv (8),
+.BR boot (8),
+.BR init (8),
+.BR kadb (8),
+.BR rem_drv (8),
+.BR savecore (8),
+.BR svc.startd (8),
+.BR svcadm (8),
+.BR syslogd (8)
+.SS "SPARC Only"
+.sp
+.LP
+.BR monitor (8)
+.SH DIAGNOSTICS
+.sp
+.LP
+The kernel gives various warnings and error messages. If the kernel detects an
+unrecoverable fault, it will panic or halt.
+.SH NOTES
+.sp
+.LP
+Reconfiguration boot will, by design, not remove \fB/dev\fR entries for some
+classes of devices that have been physically removed from the system.
diff --git a/usr/src/man/man8/keyserv.8 b/usr/src/man/man8/keyserv.8
new file mode 100644
index 0000000000..19e835cdec
--- /dev/null
+++ b/usr/src/man/man8/keyserv.8
@@ -0,0 +1,174 @@
+'\" te
+.\" Copyright 1989 AT&T
+.\" Copyright (C) 2005, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH KEYSERV 8 "Feb 25, 2017"
+.SH NAME
+keyserv \- server for storing private encryption keys
+.SH SYNOPSIS
+.LP
+.nf
+\fBkeyserv\fR [\fB-c\fR] [\fB-d\fR | \fB-e\fR] [\fB-D\fR] [\fB-n\fR] [\fB-s\fR \fIsizespec\fR]
+.fi
+
+.SH DESCRIPTION
+.LP
+\fBkeyserv\fR is a daemon that is used for storing the private encryption keys
+of each user logged into the system. These encryption keys are used for
+accessing secure network services such as secure \fBNFS\fR.
+.sp
+.LP
+Normally, root's key is read from the file \fB/etc/.rootkey\fR when the daemon
+is started. This is useful during power-fail reboots when no one is around to
+type a password.
+.sp
+.LP
+\fBkeyserv\fR does not start up if the system does not have a secure \fBrpc\fR
+domain configured. Set up the domain name by using the
+\fB/usr/bin/domainname\fR command. Usually the
+\fBsvc:/system/identity:domain\fR service reads the domain from
+\fB/etc/defaultdomain\fR. Invoking the \fBdomainname\fR command without
+arguments tells you if you have a domain set up.
+.sp
+.LP
+The \fB/etc/default/keyserv\fR file contains the following default parameter
+settings. See .
+.sp
+.ne 2
+.na
+\fB\fBENABLE_NOBODY_KEYS\fR\fR
+.ad
+.RS 22n
+Specifies whether default keys for \fBnobody\fR are used.
+\fBENABLE_NOBODY_KEYS=NO\fR is equivalent to the \fB-d\fR command-line option.
+The default value for \fBENABLE_NOBODY_KEYS\fR is \fBYES\fR.
+.RE
+
+.SH OPTIONS
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-c\fR\fR
+.ad
+.RS 15n
+Do not use disk caches. This option overrides any \fB-s\fR option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-D\fR\fR
+.ad
+.RS 15n
+Run in debugging mode and log all requests to \fBkeyserv\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-d\fR\fR
+.ad
+.RS 15n
+Disable the use of default keys for \fBnobody\fR. See .
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-e\fR\fR
+.ad
+.RS 15n
+Enable the use of default keys for \fBnobody\fR. This is the default behavior.
+See .
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR\fR
+.ad
+.RS 15n
+Root's secret key is not read from \fB/etc/.rootkey\fR. Instead, \fBkeyserv\fR
+prompts the user for the password to decrypt root's key stored in the
+\fBpublickey\fR database and then stores the decrypted key in
+\fB/etc/.rootkey\fR for future use. This option is useful if the
+\fB/etc/.rootkey\fR file ever gets out of date or corrupted.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR \fIsizespec\fR\fR
+.ad
+.RS 15n
+Specify the size of the extended Diffie-Hellman common key disk caches. The
+\fIsizespec\fR can be one of the following forms:
+.sp
+.ne 2
+.na
+\fB\fImechtype\fR=\fBsize\fR\fR
+.ad
+.RS 17n
+\fBsize\fR is an integer specifying the maximum number of entries in the cache,
+or an integer immediately followed by the letter \fIM\fR, denoting the maximum
+size in MB.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsize\fR\fR
+.ad
+.RS 17n
+This form of \fIsizespec\fR applies to all caches.
+.RE
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/etc/.rootkey\fR\fR
+.ad
+.RS 24n
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/default/keyserv\fR\fR
+.ad
+.RS 24n
+Contains default settings. You can use command-line options to override these
+settings.
+.RE
+
+.SH SEE ALSO
+.LP
+.BR keylogin (1),
+.BR keylogout (1),
+.BR svcs (1),
+.BR publickey (5),
+.BR attributes (7),
+.BR smf (7),
+.BR svcadm (8)
+.SH NOTES
+.LP
+The \fBkeyserv\fR service is managed by the service management facility,
+\fBsmf\fR(7), under the service identifier:
+.sp
+.in +2
+.nf
+svc:/network/rpc/keyserv:default
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Administrative actions on this service, such as enabling, disabling, or
+requesting restart, can be performed using \fBsvcadm\fR(8). The service's
+status can be queried using the \fBsvcs\fR(1) command.
diff --git a/usr/src/man/man8/killall.8 b/usr/src/man/man8/killall.8
new file mode 100644
index 0000000000..a914b004c8
--- /dev/null
+++ b/usr/src/man/man8/killall.8
@@ -0,0 +1,40 @@
+'\" te
+.\" Copyright (c) 1996, Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH KILLALL 8 "Sep 14, 1992"
+.SH NAME
+killall \- kill all active processes
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/killall\fR [\fIsignal\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBkillall\fR is used by \fBshutdown\fR(8) to kill all active processes not
+directly related to the shutdown procedure.
+.sp
+.LP
+\fBkillall\fR terminates all processes with open files so that the mounted file
+systems will be unbusied and can be unmounted.
+.sp
+.LP
+\fBkillall\fR sends \fIsignal\fR (see \fBkill\fR(1)) to the active processes.
+If no \fIsignal\fR is specified, a default of \fB15\fR is used.
+.sp
+.LP
+The \fBkillall\fR command can be run only by the super-user.
+.SH SEE ALSO
+.sp
+.LP
+.BR kill (1),
+.BR ps (1),
+.BR signal (3C),
+.BR attributes (7),
+.BR fuser (8),
+.BR shutdown (8)
diff --git a/usr/src/man/man8/kprop.8 b/usr/src/man/man8/kprop.8
new file mode 100644
index 0000000000..13dae8dc74
--- /dev/null
+++ b/usr/src/man/man8/kprop.8
@@ -0,0 +1,175 @@
+'\" te
+.\" Copyright 1987, 1989 by the Student Information Processing Board of the Massachusetts Institute of Technology. For copying and distribution information, please see the file kerberosv5/mit-sipb-copyright.h.
+.\" Portions Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH KPROP 8 "Oct 29, 2015"
+.SH NAME
+kprop \- Kerberos database propagation program
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/krb5/kprop\fR [\fB-d\fR] [\fB-f\fR \fIfile\fR] [\fB-p\fR \fIport-number\fR]
+ [\fB-r\fR \fIrealm\fR] [\fB-s\fR \fIkeytab\fR] [\fIhost\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBkprop\fR is a command-line utility used for propagating a Kerberos database
+from a master \fBKDC\fR to a slave \fBKDC\fR. This command must be run on the
+master \fBKDC\fR. See the \fISolaris System Administration Guide, Vol. 6\fR on
+how to set up periodic propagation between the master \fBKDC\fR and slave
+\fBKDC\fRs.
+.sp
+.LP
+To propagate a Kerberos database, the following conditions must be met:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The slave \fBKDC\fRs must have an \fB/etc/krb5/kpropd.acl\fR file that contains
+the principals for the master \fBKDC\fR and all the slave \fBKDC\fRs.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+A keytab containing a host principal entry must exist on each slave \fBKDC\fR.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The database to be propagated must be dumped to a file using
+\fBkdb5_util\fR(8).
+.RE
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-d\fR\fR
+.ad
+.RS 18n
+Enable debug mode. Default is debug mode disabled.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR \fIfile\fR\fR
+.ad
+.RS 18n
+File to be sent to the slave \fBKDC\fR. Default is the
+\fB/var/krb5/slave_datatrans\fR file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR \fIport-number\fR\fR
+.ad
+.RS 18n
+Propagate \fIport-number\fR. Default is port \fB754\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-r\fR \fIrealm\fR\fR
+.ad
+.RS 18n
+Realm where propagation will occur. Default \fIrealm\fR is the local realm.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR \fIkeytab\fR\fR
+.ad
+.RS 18n
+Location of the keytab. Default location is \fB/etc/krb5/krb5.keytab\fR.
+.RE
+
+.SH OPERANDS
+.sp
+.LP
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fB\fIhost\fR\fR
+.ad
+.RS 8n
+Name of the slave \fBKDC\fR.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRPropagating the Kerberos Database
+.sp
+.LP
+The following example propagates the Kerberos database from the
+\fB/tmp/slave_data\fR file to the slave \fBKDC\fR \fBlondon\fR. The machine
+\fBlondon\fR must have a host principal keytab entry and the \fBkpropd.acl\fR
+file must contain an entry for the all the \fBKDC\fRs.
+
+.sp
+.in +2
+.nf
+# kprop -f /tmp/slave_data london
+.fi
+.in -2
+.sp
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/krb5/kpropd.acl\fR\fR
+.ad
+.RS 29n
+List of principals of all the KDCs; resides on each slave KDC.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/krb5/krb5.keytab\fR\fR
+.ad
+.RS 29n
+Keytab for Kerberos clients.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/krb5/slave_datatrans\fR\fR
+.ad
+.RS 29n
+Kerberos database propagated to the KDC slaves.
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR kpasswd (1),
+.BR svcs (1),
+.BR kadm5.acl (5),
+.BR kdc.conf (5),
+.BR attributes (7),
+.BR kerberos (7),
+.BR smf (7),
+.BR inetadm (8),
+.BR inetd (8),
+.BR kadmin.local (8),
+.BR kadmind (8),
+.BR kdb5_util (8),
+.BR svcadm (8)
+.sp
+.LP
+\fI\fR
diff --git a/usr/src/man/man8/kpropd.8 b/usr/src/man/man8/kpropd.8
new file mode 100644
index 0000000000..4945c44b3d
--- /dev/null
+++ b/usr/src/man/man8/kpropd.8
@@ -0,0 +1,254 @@
+'\" te
+.\" Copyright 1987, 1989 by the Student Information Processing Board of the Massachusetts Institute of Technology. For copying and distribution information, please see the file kerberosv5/mit-sipb-copyright.h.
+.\" Portions Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH KPROPD 8 "Jul 11, 2005"
+.SH NAME
+kpropd \- Kerberos propagation daemon for slave KDCs
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/krb5/kpropd\fR [\fB-d\fR] [\fB-f\fR \fItemp_dbfile\fR] [\fB-F\fR \fIdbfile\fR]
+ [\fB-p\fR \fIkdb_util\fR] [\fB-P\fR \fIport_number\fR] [\fB-r\fR \fIrealm\fR]
+ [\fB-s\fR \fIsrv_tabfile\fR] [\fB-S\fR] [\fB-a\fR \fIacl_file\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBkpropd\fR command runs on the slave KDC server. It listens for update
+requests made by \fBkprop\fR(8) from the master KDC and periodically requests
+incremental updates from the master KDC.
+.sp
+.LP
+When the slave receives a kprop request from the master, \fBkpropd\fR copies
+principal data to a temporary text file. Next, \fBkpropd\fR invokes
+\fBkdb5_util\fR(8) (unless a different database utility is selected) to load
+the text file in database format.
+.sp
+.LP
+When the slave periodically requests incremental updates, \fBkpropd\fR update
+its \fBprincipal.ulog\fR file with any updates from the master.
+\fBkproplog\fR(8) can be used to view a summary of the update entry log on the
+slave KDC.
+.sp
+.LP
+kpropd is not configured for incremental database propagation by default. These
+settings can be changed in the \fBkdc.conf\fR(5) file:
+.sp
+.ne 2
+.na
+\fB\fBsunw_dbprop_enable = [true | false]\fR\fR
+.ad
+.sp .6
+.RS 4n
+Enables or disables incremental database propagation. Default is \fBfalse\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsunw_dbprop_slave_poll = N[s, m, h]\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies how often the slave KDC polls for any updates that the master might
+have. Default is \fB2m\fR (two minutes).
+.RE
+
+.sp
+.LP
+The \fBkiprop/\fI<hostname>\fR@\fI<REALM>\fR\fR principal must exist in the
+slave's \fBkeytab\fR file to enable the master to authenticate incremental
+propagation requests from the slave. In this syntax, \fI<hostname>\fR is the
+slave KDC's host name and \fI<REALM>\fR is the realm in which the slave KDC
+resides.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-d\fR\fR
+.ad
+.RS 18n
+Enable debug mode. Default is debug mode disabled.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR \fItemp_dbfile\fR\fR
+.ad
+.RS 18n
+The location of the slave's temporary principal database file. Default is
+\fB/var/krb5/from_master\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-F\fR \fIdbfile\fR\fR
+.ad
+.RS 18n
+The location of the slave's principal database file. Default is
+\fB/var/krb5/principal\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR \fIkdb_util\fR\fR
+.ad
+.RS 18n
+The location of the Kerberos database utility used for loading principal
+databases. Default is \fB/usr/sbin/kdb5_util\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-P\fR \fIport_number\fR\fR
+.ad
+.RS 18n
+Specifies the port number on which \fBkpropd\fR will listen. Default is 754
+(service name: \fBkrb5_prop\fR).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-r\fR \fIrealm\fR\fR
+.ad
+.RS 18n
+Specifies from which Kerberos realm kpropd will receive information. Default is
+specified in \fB/etc/krb5/krb5.conf\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR \fIsrv_tabfile\fR\fR
+.ad
+.RS 18n
+The location of the service table file used to authenticate the \fBkpropd\fR
+daemon.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-S\fR\fR
+.ad
+.RS 18n
+Run the daemon in standalone mode, instead of having \fBinetd\fR listen for
+requests. Default is non-standalone mode.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-a\fR \fIacl_file\fR\fR
+.ad
+.RS 18n
+The location of the \fBkpropd\fR's access control list to verify if this server
+can run the \fBkpropd\fR daemon. The file contains a list of principal name(s)
+that will be receiving updates. Default is \fB/etc/krb5/kpropd.acl\fR.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/var/krb5/principal\fR\fR
+.ad
+.RS 28n
+Kerberos principal database.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/krb5/principal.ulog\fR\fR
+.ad
+.RS 28n
+The update log file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/krb5/kdc.conf\fR\fR
+.ad
+.RS 28n
+KDC configuration information.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/krb5/kpropd.acl\fR\fR
+.ad
+.RS 28n
+List of principals of all the KDCs; resides on each slave KDC.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/krb5/from_master\fR\fR
+.ad
+.RS 28n
+Temporary file used by kpropd before loading this to the principal database.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR kdc.conf (5),
+.BR krb5.conf (5),
+.BR attributes (7),
+.BR kerberos (7),
+.BR kdb5_util (8),
+.BR kprop (8),
+.BR kproplog (8)
+.SH NOTES
+.sp
+.LP
+The \fBkprop\fR service is managed by the service management facility,
+\fBsmf\fR(7), under the service identifier:
+.sp
+.in +2
+.nf
+svc:/network/security/krb5_prop:default
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Administrative actions on this service, such as enabling, disabling, or
+requesting restart, can be performed using \fBsvcadm\fR(8). Responsibility for
+initiating and restarting this service is delegated to \fBinetd\fR(8). Use
+\fBinetadm\fR(8) to make configuration changes and to view configuration
+information for this service. The service's status can be queried using the
+\fBsvcs\fR(1) command.
diff --git a/usr/src/man/man8/kproplog.8 b/usr/src/man/man8/kproplog.8
new file mode 100644
index 0000000000..3a4c01f8fc
--- /dev/null
+++ b/usr/src/man/man8/kproplog.8
@@ -0,0 +1,133 @@
+'\" te
+.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH KPROPLOG 8 "Oct 29, 2015"
+.SH NAME
+kproplog \- display the contents of the Kerberos principal update log
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/kproplog\fR [\fB-h\fR | \fB-e\fR \fInum\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBkproplog\fR displays the contents of the Kerberos principal update log
+to standard output. This command can be used to keep track of the incremental
+updates to the principal database, which is enabled by default. The
+\fB/var/krb5/principal.ulog\fR file contains the update log maintained by the
+\fBkadmind\fR(8) process on the master KDC server and the \fBkpropd\fR(8)
+process on the slave KDC servers. When updates occur, they are logged to this
+file. Subsequently any KDC slave configured for incremental updates will
+request the current data from the master KDC and update their
+\fBprincipal.ulog\fR file with any updates returned.
+.sp
+.LP
+The \fBkproplog\fR command can only be run on a KDC server by someone with
+privileges comparable to the superuser. It will display update entries for that
+server only.
+.sp
+.LP
+If no options are specified, the summary of the update log is displayed. If
+invoked on the master, all of the update entries are also displayed. When
+invoked on a slave KDC server, only a summary of the updates are displayed,
+which includes the serial number of the last update received and the associated
+time stamp of the last update.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-h\fR\fR
+.ad
+.RS 11n
+Display a summary of the update log. This information includes the database
+version number, state of the database, the number of updates in the log, the
+time stamp of the first and last update, and the version number of the first
+and last update entry.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-e\fR\ \fInum\fR\fR
+.ad
+.RS 11n
+Display the last \fInum\fR update entries in the log. This is useful when
+debugging synchronization between KDC servers.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.RS 11n
+Display individual attributes per update. An example of the output generated
+for one entry:
+.sp
+.in +2
+.nf
+Update Entry
+ Update serial # : 4
+ Update operation : Add
+ Update principal : test@EXAMPLE.COM
+ Update size : 424
+ Update committed : True
+ Update time stamp : Fri Feb 20 23:37:42 2004
+ Attributes changed : 6
+ Principal
+ Key data
+ Password last changed
+ Modifying principal
+ Modification time
+ TL data
+.fi
+.in -2
+
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/var/krb5/principal.ulog\fR\fR
+.ad
+.RS 28n
+The update log file for incremental propagation.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR kpasswd (1),
+.BR kadm5.acl (5),
+.BR kdc.conf (5),
+.BR attributes (7),
+.BR kerberos (7),
+.BR kadmin (8),
+.BR kadmind (8),
+.BR kdb5_util (8),
+.BR kprop (8),
+.BR kpropd (8)
diff --git a/usr/src/man/man8/krb5kdc.8 b/usr/src/man/man8/krb5kdc.8
new file mode 100644
index 0000000000..7884f8f3cc
--- /dev/null
+++ b/usr/src/man/man8/krb5kdc.8
@@ -0,0 +1,242 @@
+'\" te
+.\" Copyright 1987, 1989 by the Student Information Processing Board of the Massachusetts Institute of Technology. For copying and distribution information, please see the file kerberosv5/mit-sipb-copyright.h.
+.\" Portions Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH KRB5KDC 8 "Oct 29, 2015"
+.SH NAME
+krb5kdc \- KDC daemon
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/krb5/krb5kdc\fR [\fB-d\fR \fIdbpath\fR] [\fB-r\fR \fIrealm\fR] [\fB-m\fR]
+ [\fB-k\fR \fImasterenctype\fR] [\fB-M\fR \fImasterkeyname\fR]
+ [\fB-p\fR \fIport\fR] [\fB-n\fR] [\fB-x\fR \fIdb_args\fR]...
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBkrb5kdc\fR is the daemon that runs on the master and slave \fBKDC\fRs to
+process the Kerberos tickets. For Kerberos to function properly, \fBkrb5kdc\fR
+must be running on at least one \fBKDC\fR that the Kerberos clients can access.
+Prior to running \fBkrb5kdc\fR, you must initialize the Kerberos database using
+\fBkdb5_util\fR(8). See the \fI\fR for information regarding how to set up
+\fBKDC\fRs and initialize the Kerberos database.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-d\fR \fIdbpath\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify the path to the database; default value is \fB/var/krb5\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-k\fR \fImasterenctype\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify the encryption type for encrypting the database. The default value is
+\fBdes-cbc-crc\fR. \fBdes3-cbc-sha1\fR, \fBarcfour-hmac-md5\fR,
+\fBarcfour-hmac-md5-exp\fR, \fBaes128-cts-hmac-sha1-96\fR, and
+\fBaes256-cts-hmac-sha1-96\fR are also valid.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-m\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify that the master key for the database is to be entered manually.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-M\fR \fImasterkeyname\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify the principal to retrieve the master Key for the database.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify that \fBkrb5kdc\fR should not detach from the terminal.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR \fIport\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify the port that will be used by the \fBKDC\fR to listen for incoming
+requests.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-r\fR \fIrealm\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify the realm name; default is the local realm name.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-x\fR \fIdb_args\fR\fR
+.ad
+.sp .6
+.RS 4n
+Pass database-specific arguments to \fBkadmin\fR. Supported arguments are for
+the LDAP plug-in. These arguments are:
+.sp
+.ne 2
+.na
+\fB\fBbinddn\fR=\fIbinddn\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the DN of the object used by the KDC server to bind to the LDAP
+server. This object should have the rights to read the realm container,
+principal container and the subtree that is referenced by the realm. Overrides
+the \fBldap_kdc_dn\fR parameter setting in \fBkrb5.conf\fR(5).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBbindpwd\fR=\fIbindpwd\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the password for the above-mentioned \fIbinddn\fR. It is recommended
+not to use this option. Instead, the password can be stashed using the
+\fBstashsrvpw\fR command of \fBkdb5_ldap_util\fR(8).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnconns\fR=\fInum\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the number of connections to be maintained per LDAP server.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBhost\fR=\fIldapuri\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies, by an LDAP URI, the LDAP server to which to connect.
+.RE
+
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/var/krb5/principal.db\fR\fR
+.ad
+.sp .6
+.RS 4n
+Kerberos principal database.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/krb5/principal.kadm5\fR\fR
+.ad
+.sp .6
+.RS 4n
+Kerberos administrative database. This file contains policy information.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/krb5/principal.kadm5.lock\fR\fR
+.ad
+.sp .6
+.RS 4n
+Kerberos administrative database lock file. This file works backwards from most
+other lock files (that is, \fBkadmin\fR will exit with an error if this file
+does \fInot\fR exist).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/krb5/kdc.conf\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBKDC\fR configuration file. This file is read at startup.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/krb5/kpropd.acl\fR\fR
+.ad
+.sp .6
+.RS 4n
+File that defines the access control list for propagating the Kerberos database
+using \fBkprop\fR.
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+\fBkill\fR(1), \fBkpasswd\fR(1), \fBkadmind\fR(8),
+\fBkadmin.local\fR(8), \fBkdb5_util\fR(8), \fBkdb5_ldap_util\fR(8),
+\fBlogadm\fR(8), \fBkrb5.conf\fR(5), \fBattributes\fR(7), \fBkrb5envvar\fR(7),
+.BR kerberos (7),
+.sp
+.LP
+\fI\fR
+.SH NOTES
+.sp
+.LP
+The following signal has the specified effect when sent to the server process
+using the \fBkill\fR(1)command:
+.sp
+.ne 2
+.na
+\fB\fBSIGHUP\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBkrb5kdc\fR closes and re-opens log files that it directly opens. This can be
+useful for external log-rotation utilities such as \fBlogadm\fR(8). If this
+method is used for log file rotation, set the \fBkrb5.conf\fR(5)
+\fBkdc_rotate\fR period relation to \fBnever\fR.
+.RE
+
diff --git a/usr/src/man/man8/ksslcfg.8 b/usr/src/man/man8/ksslcfg.8
new file mode 100644
index 0000000000..74fbf79247
--- /dev/null
+++ b/usr/src/man/man8/ksslcfg.8
@@ -0,0 +1,417 @@
+'\" te
+.\" Copyright (c) 2005, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH KSSLCFG 8 "November 22, 2021"
+.SH NAME
+ksslcfg \- enable and configure SMF instance of Kernel SSL
+.SH SYNOPSIS
+.nf
+\fBksslcfg\fR create \fB-f\fR pkcs11 \fB-T\fR \fItoken_label\fR \fB-C\fR \fIcertificate_label\fR
+ [\fB-d\fR \fIsofttoken_directory\fR]
+ [\fB-p\fR \fIpassword_file\fR [\fB-u\fR \fIusername\fR]]
+ [\fB-h\fR \fIca_certchain_file\fR] [\fB-c\fR \fIciphersuites\fR]
+ [\fB-t\fR \fIssl_session_cache_timeout\fR]
+ [\fB-z\fR \fIssl_session_cache_size\fR] [\fB-v\fR] \fB-x\fR \fIproxy_port\fR [\fIhost\fR] \fIssl_port\fR
+.fi
+
+.LP
+.nf
+\fBksslcfg\fR create \fB-f\fR pkcs12 \fB-i\fR \fIcert_and_key_pk12file\fR
+ [\fB-p\fR \fIpassword_file\fR [\fB-u\fR \fIusername\fR]]
+ [\fB-c\fR \fIciphersuites\fR] [\fB-t\fR \fIssl_session_cache_timeout\fR]
+ [\fB-z\fR \fIssl_session_cache_size\fR] [\fB-v\fR] \fB-x\fR \fIproxy_port\fR [\fIhost\fR] \fIssl_port\fR
+.fi
+
+.LP
+.nf
+\fBksslcfg\fR create \fB-f\fR pem \fB-i\fR \fIcert_and_key_pemfile\fR
+ [\fB-p\fR \fIpassword_file\fR [\fB-u\fR \fIusername\fR]]
+ [\fB-c\fR \fIciphersuites\fR] [\fB-t\fR \fIssl_session_cache_timeout\fR]
+ [\fB-z\fR \fIssl_session_cache_size\fR] [\fB-v\fR] \fB-x\fR \fIproxy_port\fR [\fIhost\fR] \fIssl_port\fR
+.fi
+
+.LP
+.nf
+\fBksslcfg\fR delete [\fB-v\fR] [\fIhost\fR] \fIssl_port\fR
+.fi
+
+.LP
+.nf
+\fBksslcfg\fR \fB-V\fR
+.fi
+
+.LP
+.nf
+\fBksslcfg\fR \fB-?\fR
+.fi
+
+.SH DESCRIPTION
+\fBksslcfg\fR manages \fBsmf\fR(7) instances for the Kernel SSL proxy module.
+An SSL-enabled web server can use the services of its Kernel SSL proxy to
+improve the performance of the HTTPS packets processing. It does so by creating
+an instance of the Kernel SSL service, specifying the SSL proxy port and
+parameters, and by listening on the proxy port.
+.sp
+.LP
+The \fBcreate\fR subcommand creates an instance and enables the service for the
+given address and SSL port.
+.sp
+.LP
+The \fBdelete\fR subcommand disables the service for the given address and
+port, if it is enabled, and deletes the instance from the SMF repository.
+.sp
+.LP
+\fBksslcfg\fR can be run as root or by other users assigned to the Network
+Security profile. See \fBrbac\fR(7) and \fBuser_attr\fR(5). You must run
+\fBksslcfg\fR to configure your Kernel SSL proxy before you start your
+application.
+.sp
+.LP
+\fBksslcfg\fR allows you to specify an \fIssl_port\fR operand, described under
+OPERANDS, and, with the \fB-x\fR option, a \fIproxy_port\fR value. When
+specified for use with the Kernel SSL proxy, these values cannot also be
+configured for the Solaris Network Cache and Acceleration (NCA) feature. See
+\fBnca\fR(1) for a description of the NCA feature.
+.sp
+.LP
+The Fault Managed Resource Identifier (FMRI) for the kernel SSL proxy instances
+is \fBsvc://network/ssl/proxy\fR. \fBksslcfg\fR creates an instance of that
+service unique to the combination of host and SSL port. Instance FMRIs for
+particular proxy entries can be found with \fBsvcs\fR(1) and used for
+dependencies of other services.
+.SH OPTIONS
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-c\fR \fIciphersuites\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set of ciphers a client is allowed to negotiate in a sorted order. The
+supported SSL version3 and TLS ciphers are listed below. Note that the names
+are case-insensitive.
+.sp
+.in +2
+.nf
+rsa_rc4_128_sha
+rsa_rc4_128_md5
+rsa_aes_256_cbc_sha
+rsa_aes_128_cbc_sha
+rsa_3des_ede_cbc_sha
+rsa_des_cbc_sha
+.fi
+.in -2
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR \fIkey_format\fR\fR
+.ad
+.sp .6
+.RS 4n
+Uses the certificate/key format specified in \fIkey_format\fR. The supported
+options are \fBpkcs11\fR, \fBpkcs12\fR, and \fBpem\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-i\fR \fIkey_and_certificate_file\fR\fR
+.ad
+.sp .6
+.RS 4n
+When \fBpkcs12\fR or \fBpem\fR is specified with the \fB-f\fR option, reads a
+key and a certificate of the web server from \fIkey_and_certificate_file\fR.
+This file can also contain any intermediate CA certificates that form the
+certificate chain to the root CA for the server certificate. These certificates
+must follow the server certificate in the file and the order must be bottom up:
+lowest level CA certificate followed by the next higher level CA certificate,
+and so on.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-C\fR \fIcertificate_label\fR\fR
+.ad
+.sp .6
+.RS 4n
+PKCS#11 can store multiple certificates in single token. This option enables
+you to specify a single certificate, identified by \fIcertificate_label\fR.
+This label must match the \fBCKA_LABEL\fR on the certificate object in the
+token specified by \fB-T\fR. This option is to be used only with \fB-f\fR
+\fBpkcs11\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-d\fR \fIsofttoken_directory\fR\fR
+.ad
+.sp .6
+.RS 4n
+This option is applicable only with the \fBpkcs11\fR key format, when the token
+label is the Sun Software PKCS#11 softtoken. Use this option to override the
+default location of the PKCS#11 softtoken directory (\fB$HOME/.sunw\fR). See
+\fBpkcs11_softtoken\fR(7).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-h\fR \fIca_certchain_file\fR\fR
+.ad
+.sp .6
+.RS 4n
+When \fBpkcs11\fR is specified with the \fB-f\fR option, reads a set of
+intermediate CA certificates that form the certificate chain to the root CA for
+the server certificate (specified with the \fB-C\fR option), from
+\fIca_certchain_file\fR. The file must be in PEM format.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR \fIpassword_file\fR\fR
+.ad
+.sp .6
+.RS 4n
+Obtains the password used to encrypt the private key from \fIpassword_file\fR.
+When using the \fBpkcs11\fR option (see \fB-f\fR, above), the password is used
+to authenticate the user to the PKCS #11 token.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-t\fR \fIssl_session_cache_timeout\fR\fR
+.ad
+.sp .6
+.RS 4n
+The timeout value, in seconds, for an SSL session. It corresponds to
+\fBSSL3SessionTimeout\fR of the Sun ONE web server configuration or
+\fBSSLSessionCacheTimeout\fR of \fBmod_ssl\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-T\fR \fItoken_label\fR\fR
+.ad
+.sp .6
+.RS 4n
+When \fBpkcs11\fR is specified with \fB-f\fR, uses the PKCS#11 token specified
+in \fItoken_label\fR. Use \fBcryptoadm list\fR \fB-v\fR to display all PKCS#11
+tokens available.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-u\fR \fIusername\fR\fR
+.ad
+.sp .6
+.RS 4n
+The username of the user who owns the password file. If omitted, the system
+will try to read the password file as root.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.sp .6
+.RS 4n
+Verbose mode.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-V\fR\fR
+.ad
+.sp .6
+.RS 4n
+Displays the version.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-x\fR \fIproxy_port\fR\fR
+.ad
+.sp .6
+.RS 4n
+The SSL proxy port. The port number is designated exclusively for clear-text
+HTTP communication between the web server and the kernel SSL proxy module. No
+external HTTP packets are delivered to this port.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-z\fR \fIssl_session_cache_size\fR\fR
+.ad
+.sp .6
+.RS 4n
+The maximum number of SSL sessions that can be cached. It corresponds to
+\fBSSLCacheEntries\fR of the Sun ONE web server configuration. When this option
+is not specified, the default is 5000 entries.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-?\fR \fI\fR\fR
+.ad
+.sp .6
+.RS 4n
+Displays the usage of the command.
+.RE
+
+.SH OPERANDS
+.ne 2
+.na
+\fB\fB[\fIhost\fR] [\fIssl_port\fR]\fR\fR
+.ad
+.RS 21n
+The address and the port of the web server for which the kernel SSL entry is
+created. If \fIhost\fR is omitted, the entry will be used for all requests that
+arrived at the \fIssl_port\fR, regardless of the destination address. Both a
+host name and an IP address are acceptable forms for \fIhost\fR. \fIssl_port\fR
+is required. Typically, this has a value of 443.
+.RE
+
+.SH EXAMPLES
+\fBExample 1 \fRCreate and Enable a Kernel SSL Instance
+.sp
+.LP
+The following command creates and enables a Kernel SSL instance using a
+certificate and a key in PKCS#11 format.
+
+.sp
+.in +2
+.nf
+# \fBksslcfg create -f pkcs11 -T "Sun Software PKCS#11 softtoken" \e
+-C "Server-Cert" -p /some/directory/password -u webservd \e
+-x 8080 www.example.com 443\fR
+
+% \fBsvcs svc:/network/ssl/proxy\fR
+STATE STIME FMRI
+online Sep_27 svc:/network/ssl/proxy:kssl-www-example-com-443
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRCreate and Enable a Default Instance for All Addresses
+.sp
+.LP
+The following command creates and enables a default instance for all addresses
+from a certificate and key in a \fBpkcs#12\fR file.
+
+.sp
+.in +2
+.nf
+# \fBksslcfg create -x 8888 -f pkcs12 -i /some/directory/keypair.p12 \e
+ -p /some/directory/password -u webservd 443\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRCreate and Enable an Instance with Specific Cipher Suites
+.sp
+.LP
+The following command creates and enables an instance with specific cipher
+suites.
+
+.sp
+.in +2
+.nf
+# \fBksslcfg create -x 8080 -f pem \e
+-i /some/directory/keypair.pem -p /some/directory/password \e
+-c "rsa_rc4_128_md5,rsa_rc4_128_sha" \e
+209.249.116.195 443\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 4 \fRDisable and Delete an Instance
+.sp
+.LP
+The following command disables and deletes an instance.
+
+.sp
+.in +2
+.nf
+# \fBksslcfg delete www.example.com 443\fR
+.fi
+.in -2
+.sp
+
+.SH EXIT STATUS
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 6n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB>0\fR\fR
+.ad
+.RS 6n
+An error occurred.
+.RE
+
+.SH ATTRIBUTES
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability See below.
+.TE
+
+.sp
+.LP
+Command line options are Evolving; command output is Unstable. The FMRI service
+name (\fBsvc://network/ssl/proxy\fR) is Unstable, as is the FMRI instance's
+name format. The utility name is Stable.
+.SH SEE ALSO
+.BR nca (1),
+.BR svcprop (1),
+.BR svcs (1),
+.BR user_attr (5),
+.BR attributes (7),
+.BR pkcs11_softtoken (7),
+.BR rbac (7),
+.BR smf (7),
+.BR cryptoadm (8),
+.BR svcadm (8),
+.BR svccfg (8)
+.SH NOTES
+\fBksslcfg\fR \fBcreate\fR without an host argument creates an \fBINADDR_ANY\fR
+\fBsmf\fR instance. \fBksslcfg\fR \fBdelete\fR without an host argument deletes
+only the \fBINADDR_ANY\fR instance. \fBksslcfg\fR \fBdelete\fR needs a host
+argument to delete any non-\fBINADDR_ANY\fR instance.
+.sp
+.LP
+On a system with \fBzones\fR(7) installed, the \fBksslcfg\fR command can be
+used only in the global zone at this time.
diff --git a/usr/src/man/man8/kstat.8 b/usr/src/man/man8/kstat.8
new file mode 100644
index 0000000000..4fceb66092
--- /dev/null
+++ b/usr/src/man/man8/kstat.8
@@ -0,0 +1,389 @@
+'\" te
+.\" Copyright (c) 2000, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
+.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH KSTAT 8 "April 9, 2016"
+.SH NAME
+kstat \- display kernel statistics
+.SH SYNOPSIS
+.LP
+.nf
+\fBkstat\fR [\fB-Cjlpq\fR] [\fB-T\fR u | d ] [\fB-c\fR \fIclass\fR] [\fB-m\fR \fImodule\fR]
+ [\fB-i\fR \fIinstance\fR] [\fB-n\fR \fIname\fR] [\fB-s\fR \fIstatistic\fR]
+ [interval [count]]
+.fi
+
+.LP
+.nf
+\fBkstat\fR [\fB-Cjlpq\fR] [\fB-T\fR u | d ] [\fB-c\fR \fIclass\fR]
+ [\fImodule\fR[:\fIinstance\fR[:\fIname\fR[:\fIstatistic\fR]]]]...
+ [interval [count]]
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBkstat\fR utility examines the available kernel statistics, or kstats, on
+the system and reports those statistics which match the criteria specified on
+the command line. Each matching statistic is printed with its module, instance,
+and name fields, as well as its actual value.
+.sp
+.LP
+Kernel statistics may be published by various kernel subsystems, such as
+drivers or loadable modules; each kstat has a module field that denotes its
+publisher. Since each module might have countable entities (such as multiple
+disks associated with the \fBsd\fR(4D) driver) for which it wishes to report
+statistics, the kstat also has an instance field to index the statistics for
+each entity; kstat instances are numbered starting from zero. Finally, the
+kstat is given a name unique within its module.
+.sp
+.LP
+Each kstat may be a special kstat type, an array of name-value pairs, or raw
+data. In the name-value case, each reported value is given a label, which we
+refer to as the statistic. Known raw and special kstats are given statistic
+labels for each of their values by \fBkstat\fR; thus, all published values can
+be referenced as \fImodule\fR:\fIinstance\fR:\fIname\fR:\fIstatistic\fR.
+.sp
+.LP
+When invoked without any module operands or options, kstat will match all
+defined statistics on the system. Example invocations are provided below. All
+times are displayed as fractional seconds since system boot.
+.SH OPTIONS
+.LP
+The tests specified by the following options are logically ANDed, and all
+matching kstats will be selected. A regular expression containing shell
+metacharacters must be protected from the shell by enclosing it with the
+appropriate quotes.
+.sp
+.LP
+The argument for the \fB-c\fR, \fB-i\fR, \fB-m\fR, \fB-n\fR, and \fB-s\fR
+options may be specified as a shell glob pattern, or a regular expression
+enclosed in '/' characters.
+.sp
+.ne 2
+.na
+\fB\fB-C\fR\fR
+.ad
+.RS 16n
+Displays output in parsable format with a colon as separator.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-c\fR \fIclass\fR\fR
+.ad
+.RS 16n
+Displays only kstats that match the specified class. \fIclass\fR is a
+kernel-defined string which classifies the "type" of the kstat.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-i\fR \fIinstance\fR\fR
+.ad
+.RS 16n
+Displays only kstats that match the specified instance.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-j\fR\fR
+.ad
+.RS 16n
+Displays output in JSON format.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR\fR
+.ad
+.RS 16n
+Lists matching kstat names without displaying values.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-m\fR \fImodule\fR\fR
+.ad
+.RS 16n
+Displays only kstats that match the specified module.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR \fIname\fR\fR
+.ad
+.RS 16n
+Displays only kstats that match the specified name.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR\fR
+.ad
+.RS 16n
+Displays output in parsable format. All example output in this document is
+given in this format. If this option is not specified, \fBkstat\fR produces
+output in a human-readable, table format.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-q\fR\fR
+.ad
+.RS 16n
+Displays no output, but return appropriate exit status for matches against
+given criteria.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR \fIstatistic\fR\fR
+.ad
+.RS 16n
+Displays only kstats that match the specified statistic.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-T\fR d | u\fR
+.ad
+.RS 16n
+Displays a time stamp before each statistics block, either in \fBdate\fR(1)
+format (\fBd\fR) or as an alphanumeric representation of the value returned by
+\fBtime\fR(2) (\fBu\fR).
+.RE
+
+.SH OPERANDS
+.LP
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fB\fImodule\fR:\fIinstance\fR:\fIname\fR:\fIstatistic\fR\fR
+.ad
+.sp .6
+.RS 4n
+Alternate method of specifying module, instance, name, and statistic as
+described above. Each of the module, instance, name, or statistic specifiers
+may be a shell glob pattern or a regular expression enclosed by '/'
+characters. It is possible to use both specifier types within a single operand.
+Leaving a specifier empty is equivalent to using the '*' glob pattern for that
+specifier.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIinterval\fR\fR
+.ad
+.sp .6
+.RS 4n
+The number of seconds between reports.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIcount\fR\fR
+.ad
+.sp .6
+.RS 4n
+The number of reports to be printed.
+.RE
+
+.SH EXAMPLES
+.LP
+In the following examples, all the command lines in a block produce the same
+output, as shown immediately below. The exact statistics and values will of
+course vary from machine to machine.
+.LP
+\fBExample 1 \fRUsing the \fBkstat\fR Command
+.sp
+.in +2
+.nf
+example$ \fBkstat -p -m unix -i 0 -n system_misc -s 'avenrun*'\fR
+example$ \fBkstat -p -s 'avenrun*'\fR
+example$ \fBkstat -p 'unix:0:system_misc:avenrun*'\fR
+example$ \fBkstat -p ':::avenrun*'\fR
+example$ \fBkstat -p ':::/^avenrun_[0-9]+min$/'\fR
+
+unix:0:system_misc:avenrun_15min 3
+unix:0:system_misc:avenrun_1min 4
+unix:0:system_misc:avenrun_5min 2
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRUsing the \fBkstat\fR Command
+.sp
+.in +2
+.nf
+example$ \fBkstat -p -m cpu_stat -s 'intr*'\fR
+example$ \fBkstat -p cpu_stat:::/^intr/\fR
+
+cpu_stat:0:cpu_stat0:intr 29682330
+cpu_stat:0:cpu_stat0:intrblk 87
+cpu_stat:0:cpu_stat0:intrthread 15054222
+cpu_stat:1:cpu_stat1:intr 426073
+cpu_stat:1:cpu_stat1:intrblk 51
+cpu_stat:1:cpu_stat1:intrthread 289668
+cpu_stat:2:cpu_stat2:intr 134160
+cpu_stat:2:cpu_stat2:intrblk 0
+cpu_stat:2:cpu_stat2:intrthread 131
+cpu_stat:3:cpu_stat3:intr 196566
+cpu_stat:3:cpu_stat3:intrblk 30
+cpu_stat:3:cpu_stat3:intrthread 59626
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRUsing the \fBkstat\fR Command
+.sp
+.in +2
+.nf
+example$ \fBkstat -p :::state ':::avenrun*'\fR
+example$ \fBkstat -p :::state :::/^avenrun/\fR
+
+cpu_info:0:cpu_info0:state on-line
+cpu_info:1:cpu_info1:state on-line
+cpu_info:2:cpu_info2:state on-line
+cpu_info:3:cpu_info3:state on-line
+unix:0:system_misc:avenrun_15min 4
+unix:0:system_misc:avenrun_1min 10
+unix:0:system_misc:avenrun_5min 3
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 4 \fRUsing the \fBkstat\fR Command
+.sp
+.in +2
+.nf
+example$ \fBkstat -p 'unix:0:system_misc:avenrun*' 1 3\fR
+unix:0:system_misc:avenrun_15min 15
+unix:0:system_misc:avenrun_1min 11
+unix:0:system_misc:avenrun_5min 21
+
+unix:0:system_misc:avenrun_15min 15
+unix:0:system_misc:avenrun_1min 11
+unix:0:system_misc:avenrun_5min 21
+
+unix:0:system_misc:avenrun_15min 15
+unix:0:system_misc:avenrun_1min 11
+unix:0:system_misc:avenrun_5min 21
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 5 \fRUsing the \fBkstat\fR Command
+.sp
+.in +2
+.nf
+example$ \fBkstat -p -T d 'unix:0:system_misc:avenrun*' 5 2\fR
+Thu Jul 22 19:39:50 1999
+unix:0:system_misc:avenrun_15min 12
+unix:0:system_misc:avenrun_1min 0
+unix:0:system_misc:avenrun_5min 11
+
+Thu Jul 22 19:39:55 1999
+unix:0:system_misc:avenrun_15min 12
+unix:0:system_misc:avenrun_1min 0
+unix:0:system_misc:avenrun_5min 11
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 6 \fRUsing the \fBkstat\fR Command
+.sp
+.in +2
+.nf
+example$ \fBkstat -p -T u 'unix:0:system_misc:avenrun*'\fR
+932668656
+unix:0:system_misc:avenrun_15min 14
+unix:0:system_misc:avenrun_1min 5
+unix:0:system_misc:avenrun_5min 18
+.fi
+.in -2
+.sp
+
+.SH EXIT STATUS
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 5n
+One or more statistics were matched.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB1\fR\fR
+.ad
+.RS 5n
+No statistics were matched.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB2\fR\fR
+.ad
+.RS 5n
+Invalid command line options were specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB3\fR\fR
+.ad
+.RS 5n
+A fatal error occurred.
+.RE
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/dev/kstat\fR\fR
+.ad
+.RS 14n
+kernel statistics driver
+.RE
+
+.SH SEE ALSO
+.LP
+.BR date (1),
+.BR sh (1),
+.BR time (2),
+.BR gmatch (3GEN),
+.BR kstat (3KSTAT),
+.BR kstat (4D),
+.BR sd (4D),
+.BR attributes (7),
+.BR regex (7),
+.BR kstat (9S)
+.SH NOTES
+.LP
+If the pattern argument contains glob or RE metacharacters which are also
+shell metacharacters, it will be necessary to enclose the pattern with
+appropriate shell quotes.
diff --git a/usr/src/man/man8/ktkt_warnd.8 b/usr/src/man/man8/ktkt_warnd.8
new file mode 100644
index 0000000000..e836150dcc
--- /dev/null
+++ b/usr/src/man/man8/ktkt_warnd.8
@@ -0,0 +1,84 @@
+'\" te
+.\" Copyright 1987, 1989 by the Student Information Processing Board of the Massachusetts Institute of Technology. For copying and distribution information, please see the file kerberosv5/mit-sipb-copyright.h.
+.\" Portions Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH KTKT_WARND 8 "Mar 21, 2005"
+.SH NAME
+ktkt_warnd \- Kerberos warning daemon
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/krb5/ktkt_warnd\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBktkt_warnd\fR is a daemon on Kerberos clients that can warn users when their
+Kerberos tickets are about to expire or renew the tickets before they expire.
+It is invoked by \fBinetd\fR when a ticket-granting ticket (TGT) is obtained
+for the first time, such as after using the \fBkinit\fR command.
+\fBktkt_warnd\fR can be configured through the \fB/etc/krb5/warn.conf\fR file
+on the client. In \fBwarn.conf\fR, you can specify that you be supplied notice,
+through \fBsyslog\fR or terminal or mail, of ticket expiration or to renew the
+TGT.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/krb5/warn.conf\fR\fR
+.ad
+.RS 23n
+Kerberos warning configuration file
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR svcs (1),
+.BR warn.conf (5),
+.BR attributes (7),
+.BR kerberos (7),
+.BR smf (7),
+.BR inetadm (8),
+.BR inetd (8),
+.BR svcadm (8)
+.SH NOTES
+.sp
+.LP
+The \fBktkt_warnd\fR service is managed by the service management facility,
+\fBsmf\fR(7), under the service identifier:
+.sp
+.in +2
+.nf
+svc:/network/security/ktkt_warn:default
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Administrative actions on this service, such as enabling, disabling, or
+requesting restart, can be performed using \fBsvcadm\fR(8). Responsibility for
+initiating and restarting this service is delegated to \fBinetd\fR(8). Use
+\fBinetadm\fR(8) to make configuration changes and to view configuration
+information for this service. The service's status can be queried using the
+\fBsvcs\fR(1) command.
diff --git a/usr/src/man/man8/labelit.8 b/usr/src/man/man8/labelit.8
new file mode 100644
index 0000000000..7fbfd41076
--- /dev/null
+++ b/usr/src/man/man8/labelit.8
@@ -0,0 +1,157 @@
+'\" te
+.\" Copyright (c) 2000, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH LABELIT 8 "Oct 31, 2000"
+.SH NAME
+labelit \- list or provide labels for file systems
+.SH SYNOPSIS
+.LP
+.nf
+\fBlabelit\fR [\fB-F\fR \fIFSType\fR] [\fB-V\fR] [\fB-o\fR \fIFSType-specific-options\fR] \fIspecial\fR
+ [\fIoperands\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBlabelit\fR utility is used to write or display labels on unmounted disk
+file systems.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-F\fR \fIFSType\fR\fR
+.ad
+.RS 13n
+Specify the \fIFSType\fR on which to operate. The \fIFSType\fR should either be
+specified here or be determinable from \fB/etc/vfstab\fR by matching the
+\fIspecial\fR with an entry in the table. If no matching entry is found, the
+default file system type specified in \fB/etc/default/fs\fR will be used.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-V\fR\fR
+.ad
+.RS 13n
+Echo complete command line. This option may be used to verify and validate the
+command line. Additional information obtained using a \fB/etc/vfstab\fR lookup
+is included in the output. The command is not executed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-o\fR\fR
+.ad
+.RS 13n
+Specify \fIFSType\fR-specific options. See the manual page for the
+\fBlabelit\fR module specific to the file system type.
+.RE
+
+.SH OPERANDS
+.sp
+.LP
+The following operands are supported. If no operands are specified,
+\fBlabelit\fR will display the value of the labels.
+.sp
+.ne 2
+.na
+\fB\fIspecial\fR\fR
+.ad
+.RS 12n
+The disk partition (for example, \fB/dev/rdsk/c0t3d0s6\fR). The device may not
+be on a remote machine.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIoperands\fR\fR
+.ad
+.RS 12n
+\fIFSType\fR-specific operands. Consult the manual page of the
+\fIFSType\fR-specific \fBlabelit\fR command for detailed descriptions.
+.RE
+
+.SH USAGE
+.sp
+.LP
+See \fBlargefile\fR(7) for the description of the behavior of \fBlabelit\fR
+when encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
+.SH EXIT STATUS
+.sp
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 12n
+Write or display of labels was successful.
+.RE
+
+.sp
+.ne 2
+.na
+\fBnon-zero\fR
+.ad
+.RS 12n
+An error occurred.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/vfstab\fR\fR
+.ad
+.RS 19n
+List of default parameters for each file system.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/default/fs\fR\fR
+.ad
+.RS 19n
+Default local file system type. Default values can be set for the following
+flags in \fB/etc/default/fs\fR. For example:
+.sp
+.ne 2
+.na
+\fB\fBLOCAL=ufs\fR\fR
+.ad
+.br
+.na
+\fB\fBLOCAL\fR\fR
+.ad
+.RS 13n
+The default partition for a command if no \fIFSType\fR is specified.
+.RE
+
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR vfstab (5),
+.BR attributes (7),
+.BR largefile (7),
+.BR labelit_hsfs (8),
+.BR labelit_udfs (8),
+.BR labelit_ufs (8),
+.BR volcopy (8)
+.SH NOTES
+.sp
+.LP
+This utility may not be supported for all \fIFSTypes\fR.
diff --git a/usr/src/man/man8/labelit_hsfs.8 b/usr/src/man/man8/labelit_hsfs.8
new file mode 100644
index 0000000000..04471cffd8
--- /dev/null
+++ b/usr/src/man/man8/labelit_hsfs.8
@@ -0,0 +1,135 @@
+'\" te
+.\" Copyright (c) 1992, Sun Microsystems, Inc.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH LABELIT_HSFS 8 "Mar 20, 1992"
+.SH NAME
+labelit_hsfs \- provide and print labels for hsfs file systems
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/labelit\fR \fB-F\fR hsfs [\fIgeneric_options\fR]
+ [\fB-o\fR \fIspecific_options\fR] \fIspecial\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBlabelit\fR can be used to provide labels for unmounted CD-ROM images
+(CD-ROMs may not be labeled, as they are read-only media).
+.sp
+.LP
+\fIgeneric_options\fR are options supported by the generic \fBlabelit\fR
+command.
+.sp
+.LP
+If no \fIspecific_options\fR are specified, \fBlabelit\fR prints the current
+value of all label fields.
+.sp
+.LP
+The \fIspecial\fR name should be the physical disk section (for example,
+\fB/dev/dsk/c0d0s6\fR).
+.SH OPTIONS
+.sp
+.ne 2
+.na
+\fB\fB-o\fR\fR
+.ad
+.RS 6n
+Use one or more of the following \fIname\fR=\fIvalue\fR pairs separated by
+commas (with no intervening spaces) to specify values for specific label
+fields. According to the ISO 9660 specification, only certain sets of
+characters may be used to fill in these labels. Thus, ``d-characters'' below
+refers to the characters `A' through `Z', the digits `0' through `9', and the
+`_' (underscore) character. ``a-characters'' below refers to `A' through `Z',
+`0' through `9', space, and the following characters: !"%&'()*+,-./:;<=>?_.
+.sp
+.ne 2
+.na
+\fB\fBabsfile=\fR\fR
+.ad
+.RS 13n
+Abstract file identifier, d-characters, 37 characters maximum.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBapplid=\fR\fR
+.ad
+.RS 13n
+Application identifier, d-characters, 128 characters maximum.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBbibfile=\fR\fR
+.ad
+.RS 13n
+Bibliographic file identifier, d-characters, 37 characters maximum.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcopyfile=\fR\fR
+.ad
+.RS 13n
+Copyright file identifier, d-characters, 128 maximum.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBprepid=\fR\fR
+.ad
+.RS 13n
+Data preparer identifier, d-characters, 128 maximum.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpubid=\fR\fR
+.ad
+.RS 13n
+Publisher identifier, d-characters, 128 maximum.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsysid=\fR\fR
+.ad
+.RS 13n
+System identifier, a-characters, 32 maximum.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBvolid=\fR\fR
+.ad
+.RS 13n
+Volume identifier, d-characters, 32 maximum.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBvolsetid=\fR\fR
+.ad
+.RS 13n
+Volume set identifier, d-characters, 128 maximum.
+.RE
+
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7),
+.BR labelit (8),
+.BR volcopy (8)
diff --git a/usr/src/man/man8/labelit_udfs.8 b/usr/src/man/man8/labelit_udfs.8
new file mode 100644
index 0000000000..9d735debce
--- /dev/null
+++ b/usr/src/man/man8/labelit_udfs.8
@@ -0,0 +1,146 @@
+'\" te
+.\" Copyright (c) 2000 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH LABELIT_UDFS 8 "Oct 31, 2000"
+.SH NAME
+labelit_udfs \- provide and print labels for udf file systems
+.SH SYNOPSIS
+.LP
+.nf
+\fBlabelit\fR \fB-F \fR udfs [\fIgeneric_options\fR] [\fB-o\fR \fIspecific_options\fR] \fIspecial\fR
+ [\fIfsname\fR \fIvolume\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBlabelit\fR command writes labels on an unmounted disk that contains a
+universal disk file (\fBudf\fR) system. These labels can be used to identify
+volumes.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fIgeneric_options\fR\fR
+.ad
+.RS 23n
+Specify \fIgeneric_options\fR supported by the generic \fBlabelit\fR command.
+See \fBlabelit\fR(8) for descriptions of supported options.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-o\fR \fIspecific_options\fR\fR
+.ad
+.RS 23n
+Specify udfs-file-system-specific options in a comma-separated list with no
+intervening spaces. The following \fIspecific_options\fR are available:
+.sp
+.ne 2
+.na
+\fB\fBlvinfo1=\fR\fIstring\fR\fR
+.ad
+.RS 18n
+Specify information to be inserted in the \fBLVInfo1\fR field of the
+Implementation Use Volume Descriptor. Information in \fBLVInfo1\fR is generally
+used to identify the person creating the file system. The maximum length of the
+string specified is 35 bytes.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBlvinfo2=\fR\fIstring\fR\fR
+.ad
+.RS 18n
+Specify information to be inserted into the \fBLVInfo2\fR field of the
+Implementation Use Volume Descriptor. Information in \fBLVInfo2\fR is generally
+used to identify the organization responsible for creating the file system. The
+maximum length of the string specified is 35 bytes.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBlvinfo3=\fR\fIstring\fR\fR
+.ad
+.RS 18n
+Specify information to be inserted into the \fBLVInfo3\fR field of the
+Implementation Use Volume Descriptor. Information in \fBLVInfo3\fR is generally
+used to identify the contact information for the medium. The maximum length of
+the string specified is 35 bytes.
+.RE
+
+.RE
+
+.SH OPERANDS
+.sp
+.LP
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fB\fIspecial\fR\fR
+.ad
+.RS 11n
+Specify \fIspecial\fR as the physical disk slice, for example,
+\fB/dev/rdsk/c0t0d0s6\fR. The device can not be on a remote machine.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIfsname\fR\fR
+.ad
+.RS 11n
+Specify \fIfsname\fR as the mount point, (for example, \fBroot\fR, \fBu1\fR,
+and so forth), of the file system.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIvolume\fR\fR
+.ad
+.RS 11n
+Specify \fIvolume\fR as the physical volume name.
+.RE
+
+.sp
+.LP
+If none of the options (\fIfsname\fR, \fIvolume\fR, \fIspecific_options\fR) is
+specified, \fBlabelit\fR prints the current values of \fIfsname\fR,
+\fIvolume\fR, \fBLVInfo1\fR, \fBLVInfo2\fR and \fBLVInfo3\fR.
+.SH EXIT STATUS
+.sp
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB0\fR
+.ad
+.RS 12n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fBnon-zero\fR
+.ad
+.RS 12n
+An error occurred.
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7),
+.BR labelit (8)
diff --git a/usr/src/man/man8/labelit_ufs.8 b/usr/src/man/man8/labelit_ufs.8
new file mode 100644
index 0000000000..2a6ffe871d
--- /dev/null
+++ b/usr/src/man/man8/labelit_ufs.8
@@ -0,0 +1,102 @@
+'\" te
+.\" Copyright (c) 2003 Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH LABELIT_UFS 8 "Apr 15, 2003"
+.SH NAME
+labelit_ufs \- provide and print labels for ufs file systems
+.SH SYNOPSIS
+.LP
+.nf
+\fBlabelit\fR \fB-F\fR ufs [\fIgeneric_options\fR] \fIspecial\fR [\fIfsname\fR \fIvolume\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBlabelit\fR is used to write labels on unmounted disk file systems. Such
+labels may be used to uniquely identify volumes and are used by volume-oriented
+programs such as \fBvolcopy\fR(8).
+.SH OPTIONS
+.sp
+.LP
+The following option is supported:
+.sp
+.ne 2
+.na
+\fB\fIgeneric_options\fR\fR
+.ad
+.RS 19n
+options supported by the generic \fBlabelit\fR command. See
+\fBlabelit\fR(8).
+.RE
+
+.SH OPERANDS
+.sp
+.LP
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fB\fIspecial\fR\fR
+.ad
+.RS 11n
+name should be the physical disk section (for example, \fB/dev/dsk/c0d0s6\fR).
+The device may not be on a remote machine.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIfsname\fR\fR
+.ad
+.RS 11n
+represents the mount point (for example, \fBroot\fR, \fBu1\fR, and so on) of
+the file system.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIvolume\fR\fR
+.ad
+.RS 11n
+may be used to represent the physical volume name.
+.RE
+
+.sp
+.LP
+If \fIfsname\fR and \fIvolume\fR are not specified, \fBlabelit\fR prints the
+current values of these labels. Both \fIfsname\fR and \fIvolume\fR are
+limited to six or fewer characters.
+.SH EXIT STATUS
+.sp
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 12n
+Write or display of labels was successful.
+.RE
+
+.sp
+.ne 2
+.na
+\fBnon-zero\fR
+.ad
+.RS 12n
+An error occurred.
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR ufs (4FS),
+.BR attributes (7),
+.BR labelit (8),
+.BR volcopy (8)
diff --git a/usr/src/man/man8/latencytop.8 b/usr/src/man/man8/latencytop.8
new file mode 100644
index 0000000000..1c0b393380
--- /dev/null
+++ b/usr/src/man/man8/latencytop.8
@@ -0,0 +1,305 @@
+'\" te
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
+.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH LATENCYTOP 8 "Sep 29, 2009"
+.SH NAME
+latencytop \- report latency-related statistics in system and in applications
+.SH SYNOPSIS
+.LP
+.nf
+\fBlatencytop\fR [\fB-t\fR \fIinterval\fR] [\fB-o\fR \fIlog_file\fR] [\fB-k\fR \fIlog_level\fR]
+ [\fB-f\fR [no]\fIfeature\fR,...] [\fB-l\fR \fIlog_interval\fR] [\fB-h\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+LatencyTOP is an observability tool that reports statistics about latencies in
+the system and in applications. The tool reports statistics about where and
+what kind of latencies are happening in the system and in the applications that
+are running on the system. The statistics then can be used to improve
+performance throughput of applications and system, as you remove the identified
+latencies.
+.sp
+.LP
+The tool analyzes system activity periodically and displays the data in the
+output window. Two types of latencies are tracked: an LWP going in and out of
+sleep and an LWP spinning order to acquire a synchronization object. The tool
+uses the Solaris DTrace framework to collect the statistics corresponding to
+these two scenarios of inactivity of the system and application LWPs.
+.sp
+.LP
+The output window is divided into two sections. An upper part displays the
+system-wide statistics, while the lower part displays statistics about
+individual processes. The user can navigate the list of processes (using the
+left- and right-arrow keys) and select the list they are interested in. The
+tool will then display statistics about that selected process in the lower part
+of the window. If the t or T key is pressed, the tool displays the LWP-specific
+view of that selected process. The t or T key can be used to toggle between the
+process-view and the thread-view.
+.sp
+.LP
+During execution, a user can force a refresh of the analysis by pressing the r
+or R key. The interval time is restored to the default or to a specified value
+(if -t was used). To quit the application, the user must press the q or Q key.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB-f\fR, \fB--feature\fR [\fBno\fR]\fIfeature1\fR,[\fBno\fR]\fIfeature2\fR,...
+.ad
+.sp .6
+.RS 4n
+Enables/disables features in LatencyTOP. Features can be only one of the
+following:
+.sp
+.ne 2
+.na
+[\fBno\fR]\fBfilter\fR
+.ad
+.sp .6
+.RS 4n
+Filter large interruptible latencies, for example, sleep. The default is
+\fBoff\fR.
+.RE
+
+.sp
+.ne 2
+.na
+[\fBno\fR]\fBsched\fR
+.ad
+.sp .6
+.RS 4n
+Monitors \fBsched\fR (PID=0). The default is \fBoff\fR.
+.RE
+
+.sp
+.ne 2
+.na
+[\fBno\fR]\fBsobj\fR
+.ad
+.sp .6
+.RS 4n
+Monitors synchronize objects. The default is \fBon\fR.
+.RE
+
+.sp
+.ne 2
+.na
+[\fBno\fR]\fBlow\fR
+.ad
+.sp .6
+.RS 4n
+Lower overhead by sampling small latencies. Enabling this feature will lower
+CPU utilization by estimating small latencies statistically. Use it for heavy
+workloads such as a very busy web server. The default is \fBoff\fR.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-h\fR\fR
+.ad
+.sp .6
+.RS 4n
+Displays the command's usage.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-k\fR \fIlog_level\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the level of logging in the log file. Valid values are:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 5n
+\fBnone\fR (default)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB1\fR\fR
+.ad
+.RS 5n
+\fBunknown\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB2\fR\fR
+.ad
+.RS 5n
+\fBall\fR
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR [\fIlog_interval\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Writes data to the log file every \fIlog_interval\fR seconds;
+\fIlog_interval\fR must be greater than 60.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-o\fR \fIlog_file\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the log file where output will be written. The default log file is
+\fB/var/log/latencytop.log\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-t\fR \fIinterval\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the interval, in seconds, at which the tool collects statistics from
+the system. The possible values are between 1 and 60; the default is 5 seconds.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRRunning the Tool
+.sp
+.LP
+The following command launches the tool with default values for options.
+
+.sp
+.in +2
+.nf
+% \fBlatencytop\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRSetting the Interval
+.sp
+.LP
+The following command sets the sampling interval to two seconds.
+
+.sp
+.in +2
+.nf
+% \fBlatencytop -t 2\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRSpecifying the Log File
+.sp
+.LP
+The following command sets the log file to \fB/tmp/latencytop.log\fR.
+
+.sp
+.in +2
+.nf
+% \fBlatencytop -o /tmp/latencytop.log\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 4 \fRSpecifying the Log Level
+.sp
+.LP
+The following command sets the log level to \fBall\fR.
+
+.sp
+.in +2
+.nf
+% \fBlatencytop -l 2\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 5 \fREnabling Tracing of Latencies
+.sp
+.LP
+The following command enables the tracing of latencies caused by
+synchronization objects.
+
+.sp
+.in +2
+.nf
+% \fBlatencytop -f sobj\fR
+.fi
+.in -2
+.sp
+
+.SH EXIT STATUS
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.sp .6
+.RS 4n
+Successful operation.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB1\fR\fR
+.ad
+.sp .6
+.RS 4n
+An error occurred.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture x86, SPARC
+_
+Interface Stability Volatile
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7),
+.BR dtrace (8),
+.BR kstat (8)
+.SH USAGE
+.sp
+.LP
+You must have DTrace privileges to run LatencyTOP.
diff --git a/usr/src/man/man8/ldap_cachemgr.8 b/usr/src/man/man8/ldap_cachemgr.8
new file mode 100644
index 0000000000..6fae993dfd
--- /dev/null
+++ b/usr/src/man/man8/ldap_cachemgr.8
@@ -0,0 +1,170 @@
+'\" te
+.\" Copyright (C) 2005, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH LDAP_CACHEMGR 8 "May 13, 2017"
+.SH NAME
+ldap_cachemgr \- LDAP daemon to manage client configuration for LDAP based
+Network Information Service lookups
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/ldap/ldap_cachemgr\fR [\fB-l\fR \fIlog-file\fR] [\fB-g\fR]
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBldap_cachemgr\fR daemon is a process that provides an up-to-date
+configuration cache for LDAP naming services. It is started during multi-user
+boot.
+.sp
+.LP
+The \fBldap_cachemgr\fR utility provides caching for all parameters as
+specified and used by the LDAP naming service clients. The \fBldap_cachemgr\fR
+utility uses the cache files which are originally created by executing the
+\fBldapclient\fR(8) utility, as cold start files. Updates to the cache files
+take place dynamically if profiles are used to configure the client. See the
+\fBinit\fR option to \fBldapclient\fR(8).
+.sp
+.LP
+The \fBldap_cachemgr\fR utility helps improve the performance of the clients
+that are using LDAP as the Naming service repository. In order for the LDAP
+naming services to function properly, the \fBldap_cachemgr\fR daemon must be
+running. \fBldap_cachemgr\fR also improves system security by making the
+configuration files readable by superuser only.
+.sp
+.LP
+The cache maintained by this daemon is shared by all the processes that access
+LDAP Naming information. All processes access this cache through a door call.
+On startup, \fBldap_cachemgr\fR initializes the cache from the cache files. See
+\fBldapclient\fR(8). Thus, the cache survives machine reboots.
+.sp
+.LP
+The \fBldap_cachemgr\fR daemon also acts as its own administration tool. If an
+instance of \fBldap_cachemgr\fR is already running, commands are passed
+transparently to the running version.
+.SH OPTIONS
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-g\fR\fR
+.ad
+.sp .6
+.RS 4n
+Print current configuration and statistics to standard output. This is the only
+option executable without superuser privileges.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR \fIlog-file\fR\fR
+.ad
+.sp .6
+.RS 4n
+Cause \fBldap_cachemgr\fR to use a log file other than the default
+\fB/var/ldap/cachemgr.log\fR.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRStopping and Restarting the \fBldap_cachemgr\fR Daemon
+.sp
+.LP
+The following example shows how to stop and to restart the \fBldap_cachemgr\fR
+daemon.
+
+.sp
+.in +2
+.nf
+example# svcadm disable network/ldap/client
+example# svcadm enable network/ldap/client
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRForcing \fBldap_cachemgr\fR to Reread Configuration Files
+.sp
+.LP
+The following example shows how to force \fBldap_cachemgr\fR to reread the
+\fB/var/ldap/ldap_client_file\fR and \fB/var/ldap/ldap_client_cred\fR files
+
+.sp
+.in +2
+.nf
+example# pkill -HUP ldap_cachemgr
+.fi
+.in -2
+.sp
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/var/ldap/cachemgr.log\fR\fR
+.ad
+.sp .6
+.RS 4n
+Default log file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/ldap/ldap_client_file\fR\fR
+.ad
+.br
+.na
+\fB\fB/var/ldap/ldap_client_cred\fR\fR
+.ad
+.sp .6
+.RS 4n
+Files containing the LDAP configuration of the client. These files are not to
+be modified manually. Their content is not guaranteed to be human readable. Use
+\fBldapclient\fR(8) to update these files.
+.RE
+
+.SH WARNINGS
+.LP
+The \fBldap_cachemgr\fR utility is included in the current Solaris release on
+an uncommitted basis only. It is subject to change or removal in a future minor
+release.
+.SH SEE ALSO
+.LP
+.BR ldap (1),
+.BR ldapadd (1),
+.BR ldapdelete (1),
+.BR ldaplist (1),
+.BR ldapmodify (1),
+.BR ldapmodrdn (1),
+.BR ldapsearch (1),
+.BR pkill (1),
+.BR svcs (1),
+.BR signal.h (3HEAD),
+.BR resolv.conf (5),
+.BR attributes (7),
+.BR smf (7),
+.BR idsconfig (8),
+.BR ldapaddent (8),
+.BR ldapclient (8),
+.BR svcadm (8)
+.SH NOTES
+.LP
+The \fBldap_cachemgr\fR service is managed by the service management facility,
+\fBsmf\fR(7), under the service identifier:
+.sp
+.in +2
+.nf
+svc:/network/ldap/client
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Administrative actions on this service, such as enabling, disabling, or
+requesting restart, can be performed using \fBsvcadm\fR(8). The service's
+status can be queried using the \fBsvcs\fR(1) command.
diff --git a/usr/src/man/man8/ldapaddent.8 b/usr/src/man/man8/ldapaddent.8
new file mode 100644
index 0000000000..9e292229b8
--- /dev/null
+++ b/usr/src/man/man8/ldapaddent.8
@@ -0,0 +1,581 @@
+'\" te
+.\" Copyright (C) 2002, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH LDAPADDENT 8 "May 13, 2017"
+.SH NAME
+ldapaddent \- create LDAP entries from corresponding /etc files
+.SH SYNOPSIS
+.LP
+.nf
+\fBldapaddent\fR [\fB-cpv\fR] [\fB-a\fR \fIauthenticationMethod\fR] [\fB-b\fR \fIbaseDN\fR]
+ \fB-D\fR \fIbindDN\fR [\fB-w\fR \fIbind_password\fR] [\fB-j\fR \fIpasswdFile\fR] [\fB-f\fR \fIfilename\fR]
+ \fIdatabase\fR
+.fi
+
+.LP
+.nf
+\fBldapaddent\fR [\fB-cpv\fR] \fB-a\fR sasl/GSSAPI [\fB-b\fR \fIbaseDN\fR] [\fB-f\fR \fIfilename\fR]
+ \fIdatabase\fR
+.fi
+
+.LP
+.nf
+\fBldapaddent\fR \fB-d\fR [\fB-v\fR] [\fB-a\fR \fIauthenticationMethod\fR] [\fB-D\fR \fIbindDN\fR]
+ [\fB-w\fR \fIbind_password\fR] [\fB-j\fR \fIpasswdFile\fR] \fIdatabase\fR
+.fi
+
+.LP
+.nf
+\fBldapaddent\fR [\fB-cpv\fR] \fB-h\fR \fILDAP_server\fR[:\fIserverPort\fR] [\fB-M\fR \fIdomainName\fR]
+ [\fB-N\fR \fIprofileName\fR] [\fB-P\fR \fIcertifPath\fR] [\fB-a\fR \fIauthenticationMethod\fR]
+ [\fB-b\fR \fIbaseDN\fR] \fB-D\fR \fIbindDN\fR [\fB-w\fR \fIbind_password\fR] [\fB-f\fR \fIfilename\fR]
+ [\fB-j\fR \fIpasswdFile\fR] \fIdatabase\fR
+.fi
+
+.LP
+.nf
+\fBldapaddent\fR [\fB-cpv\fR] \fB-h\fR \fILDAP_server\fR[:\fIserverPort\fR] [\fB-M\fR \fIdomainName\fR]
+ [\fB-N\fR \fIprofileName\fR] [\fB-P\fR \fIcertifPath\fR] [\fB-a\fR \fIauthenticationMethod\fR]
+ [\fB-b\fR \fIbaseDN\fR] [\fB-f\fR \fIfilename\fR] \fIdatabase\fR
+.fi
+
+.LP
+.nf
+\fBldapaddent\fR \fB-d\fR [\fB-v\fR] \fB-h\fR \fILDAP_server\fR[:\fIserverPort\fR] [\fB-M\fR \fIdomainName\fR]
+ [\fB-N\fR \fIprofileName\fR] [\fB-P\fR \fIcertifPath\fR] [\fB-a\fR \fIauthenticationMethod\fR]
+ [\fB-b\fR \fIbaseDN\fR] \fB-D\fR \fIbindDN\fR [\fB-w\fR \fIbind_password\fR] [\fB-j\fR \fIpasswdFile\fR]
+ \fIdatabase\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+\fBldapaddent\fR creates entries in LDAP containers from their corresponding
+\fB/etc\fR files. This operation is customized for each of the standard
+containers that are used in the administration of Solaris systems. The
+\fIdatabase\fR argument specifies the type of the data being processed. Legal
+values for this type are one of \fBaliases\fR, \fBauto_*\fR, \fBbootparams\fR,
+\fBethers\fR, \fBgroup\fR, \fBhosts\fR (including both IPv4 and IPv6
+addresses), \fBipnodes\fR (alias for \fBhosts\fR), \fBnetgroup\fR,
+\fBnetmasks\fR, \fBnetworks\fR, \fBpasswd\fR, \fBshadow\fR, \fBprotocols\fR,
+\fBpublickey\fR, \fBrpc\fR, and \fBservices\fR. In addition to the preceding,
+the \fIdatabase\fR argument can be one of the RBAC-related files (see
+\fBrbac\fR(7)):
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fB/etc/user_attr\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fB/etc/security/auth_attr\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fB/etc/security/prof_attr\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fB/etc/security/exec_attr\fR
+.RE
+.sp
+.LP
+By default, \fBldapaddent\fR reads from the standard input and adds this data
+to the LDAP container associated with the database specified on the command
+line. An input file from which data can be read is specified using the \fB-f\fR
+option.
+.sp
+.LP
+If you specify the \fB-h\fR option, \fBldapaddent\fR establishes a connection
+to the server indicated by the option in order to obtain a \fBDUAProfile\fR
+specified by the \fB-N\fR option. The entries will be stored in the directory
+described by the configuration obtained.
+.sp
+.LP
+By default (if the \fB-h\fR option is not specified), entries will be stored in
+the directory based on the client's configuration. To use the utility in the
+default mode, the Solaris LDAP client must be set up in advance.
+.sp
+.LP
+The location where entries are to be written can be overridden by using the
+\fB-b\fR option.
+.sp
+.LP
+If the entry to be added exists in the directory, the command displays an error
+and exits, unless the \fB-c\fR option is used.
+.sp
+.LP
+Although, there is a \fBshadow\fR database type, there is no corresponding
+\fBshadow\fR container. Both the \fBshadow\fR and the \fBpasswd\fR data is
+stored in the \fBpeople\fR container itself. Similarly, data from
+\fBnetworks\fR and \fBnetmasks\fR databases are stored in the \fBnetworks\fR
+container.
+.sp
+.LP
+The \fBuser_attr\fR data is stored by default in the
+\fBpeople\fR container. The \fBprof_attr\fR and \fBexec_attr\fR data is stored
+by default in the \fBSolarisProfAttr\fR container.
+.sp
+.LP
+You must add entries from the \fBpasswd\fR database before you attempt to add
+entries from the \fBshadow\fR database. The addition of a \fBshadow\fR entry
+that does not have a corresponding \fBpasswd\fR entry will fail.
+.sp
+.LP
+The \fBpasswd\fR database must precede the \fBuser_attr\fR database.
+.sp
+.LP
+For better performance, the recommended order in which the databases should be
+loaded is as follows:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBpasswd\fR database followed by \fBshadow\fR database
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBnetworks\fR database followed by \fBnetmasks\fR database
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBbootparams\fR database followed by \fBethers\fR database
+.RE
+.sp
+.LP
+Only the first entry of a given type that is encountered will be added to the
+LDAP server. The \fBldapaddent\fR command skips any duplicate entries.
+.SH OPTIONS
+.LP
+The \fBldapaddent\fR command supports the following options:
+.sp
+.ne 2
+.na
+\fB\fB-a\fR \fIauthenticationMethod\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify authentication method. The default value is what has been configured in
+the profile. The supported authentication methods are:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBsimple\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBsasl/CRAM-MD5\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBsasl/DIGEST-MD5\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBsasl/GSSAPI\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBtls:simple\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBtls:sasl/CRAM-MD5\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBtls:sasl/DIGEST-MD5\fR
+.RE
+Selecting \fBsimple\fR causes passwords to be sent over the network in clear
+text. Its use is strongly discouraged. Additionally, if the client is
+configured with a profile which uses no authentication, that is, either the
+\fBcredentialLevel\fR attribute is set to \fBanonymous\fR or
+\fBauthenticationMethod\fR is set to \fBnone\fR, the user must use this option
+to provide an authentication method. If the authentication method is
+\fBsasl/GSSAPI\fR, \fIbindDN\fR and \fIbindPassword\fR is not required and the
+\fBhosts\fR and \fBipnodes\fR fields of \fB/etc/nsswitch.conf\fR must be
+configured as:
+.sp
+.in +2
+.nf
+hosts: dns files
+ipnodes: dns files
+.fi
+.in -2
+
+See \fBnsswitch.conf\fR(5).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-b\fR\ \fIbaseDN\fR\fR
+.ad
+.sp .6
+.RS 4n
+Create entries in the \fIbaseDN\fR directory. \fIbaseDN\fR is not relative to
+the client's default search base, but rather. it is the actual location where
+the entries will be created. If this parameter is not specified, the first
+search descriptor defined for the service or the default container will be
+used.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-c\fR\fR
+.ad
+.sp .6
+.RS 4n
+Continue adding entries to the directory even after an error. Entries will not
+be added if the directory server is not responding or if there is an
+authentication problem.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-D\fR\ \fIbindDN\fR\fR
+.ad
+.sp .6
+.RS 4n
+Create an entry which has write permission to the \fIbaseDN\fR. When used with
+\fB-d\fR option, this entry only needs read permission.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-d\fR\fR
+.ad
+.sp .6
+.RS 4n
+Dump the LDAP container to the standard output in the appropriate format for
+the given database.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR \fIfilename\fR\fR
+.ad
+.sp .6
+.RS 4n
+Indicates input file to read in an \fB/etc/\fR file format.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-h\fR \fILDAP_server\fR[:\fIserverPort\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Specify an address (or a name) and an optional port of the LDAP server in which
+the entries will be stored. The current naming service specified in the
+\fBnsswitch.conf\fR file is used. The default value for the port is \fB389\fR,
+except when TLS is specified as the authentication method. In this case, the
+default LDAP server port number is \fB636\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-j\fR\ \fIpasswdFile\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify a file containing the password for the bind DN or the password for the
+SSL client's key database. To protect the password, use this option in scripts
+and place the password in a secure file. This option is mutually exclusive of
+the \fB-w\fR option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-M\fR\ \fIdomainName\fR\fR
+.ad
+.sp .6
+.RS 4n
+The name of a domain served by the specified server. If not specified, the
+default domain name will be used.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-N\fR\ \fIprofileName\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify the \fBDUAProfile\fR name. A profile with such a name is supposed to
+exist on the server specified by \fB-h\fR option. Otherwise, a default
+\fBDUAProfile\fR will be used. The default value is \fBdefault\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-P\fR\ \fIcertifPath\fR\fR
+.ad
+.sp .6
+.RS 4n
+The certificate path for the location of the certificate database. The value is
+the path where security database files reside. This is used for TLS support,
+which is specified in the \fBauthenticationMethod\fR and
+\fBserviceAuthenticationMethod\fR attributes. The default is \fB/var/ldap\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR\fR
+.ad
+.sp .6
+.RS 4n
+Process the \fBpassword\fR field when loading password information from a file.
+By default, the \fBpassword\fR field is ignored because it is usually not
+valid, as the actual password appears in a \fBshadow\fR file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-w\fR\ \fIbindPassword\fR\fR
+.ad
+.sp .6
+.RS 4n
+Password to be used for authenticating the \fIbindDN\fR. If this parameter is
+missing, the command will prompt for a password. \fBNULL\fR passwords are not
+supported in LDAP.
+.sp
+When you use \fB-w\fR\ \fIbindPassword\fR to specify the password to be used
+for authentication, the password is visible to other users of the system by
+means of the \fBps\fR command, in script files or in shell history.
+.sp
+If you supply "\fB-\fR" (hyphen) as a password, you will be prompted to enter a
+password.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.sp .6
+.RS 4n
+Verbose.
+.RE
+
+.SH OPERANDS
+.LP
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fB\fIdatabase\fR\fR
+.ad
+.sp .6
+.RS 4n
+The name of the database or service name. Supported values are: \fBaliases\fR,
+\fBauto_*\fR, \fBbootparams\fR, \fBethers\fR, \fBgroup\fR, \fBhosts\fR
+(including IPv6 addresses), \fBnetgroup\fR, \fBnetmasks\fR, \fBnetworks\fR,
+\fBpasswd\fR, \fBshadow\fR, \fBprotocols\fR, \fBpublickey\fR, \fBrpc\fR, and
+\fBservices\fR. Also supported are \fBauth_attr\fR, \fBprof_attr\fR,
+\fBexec_attr\fR, \fBuser_attr\fR, and \fBprojects\fR.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRAdding Password Entries to the Directory Server
+.sp
+.LP
+The following example shows how to add password entries to the directory
+server:
+
+.sp
+.in +2
+.nf
+example# \fBldapaddent -D "cn=directory manager" -w secret \e
+ -f /etc/passwd passwd\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRAdding Group Entries
+.sp
+.LP
+The following example shows how to add \fBgroup\fR entries to the directory
+server using \fBsasl/CRAM-MD5\fR as the authentication method:
+
+.sp
+.in +2
+.nf
+example# \fBldapaddent -D "cn=directory manager" -w secret \e
+ -a "sasl/CRAM-MD5" -f /etc/group group\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRAdding \fBauto_master\fR Entries
+.sp
+.LP
+The following example shows how to add \fBauto_master\fR entries to the
+directory server:
+
+.sp
+.in +2
+.nf
+example# \fBldapaddent -D "cn=directory manager" -w secret \e
+ -f /etc/auto_master auto_master\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 4 \fRDumping \fBpasswd\fR Entries from the Directory to File
+.sp
+.LP
+The following example shows how to dump \fBpassword\fR entries from the
+directory to a file \fBfoo\fR:
+
+.sp
+.in +2
+.nf
+example# \fBldapaddent -d passwd > foo\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 5 \fRAdding Password Entries to a Specific Directory Server
+.sp
+.LP
+The following example shows how to add password entries to a directory server
+that you specify:
+
+.sp
+.in +2
+.nf
+example# \fBldapaddent -h 10.10.10.10:3890 \e
+-M another.domain.name -N special_duaprofile \e
+-D "cn=directory manager" -w secret \e
+-f /etc/passwd passwd\fR
+.fi
+.in -2
+.sp
+
+.SH EXIT STATUS
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.sp .6
+.RS 4n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB>\fB0\fR\fR
+.ad
+.sp .6
+.RS 4n
+An error occurred.
+.RE
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/var/ldap/ldap_client_file\fR\fR
+.ad
+.br
+.na
+\fB\fB/var/ldap/ldap_client_cred\fR\fR
+.ad
+.sp .6
+.RS 4n
+Files containing the LDAP configuration of the client. These files are not to
+be modified manually. Their content is not guaranteed to be human readable. Use
+\fBldapclient\fR(8) to update these files.
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Committed
+.TE
+
+.SH SEE ALSO
+.LP
+.BR ldap (1),
+.BR ldaplist (1),
+.BR ldapmodify (1),
+.BR ldapmodrdn (1),
+.BR ldapsearch (1),
+.BR nsswitch.conf (5),
+.BR attributes (7),
+.BR idsconfig (8),
+.BR ldapclient (8)
+.sp
+.LP
+\fI\fR
+.SH CAUTION
+.LP
+Currently StartTLS is not supported by \fBlibldap.so.5\fR, therefore the port
+number provided refers to the port used during a TLS open, rather than the port
+used as part of a StartTLS sequence. For example:
+.sp
+.in +2
+.nf
+-h foo:1000 -a tls:simple
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The preceding refers to a raw TLS open on host \fBfoo\fR port 1000, not an
+open, StartTLS sequence on an unsecured port 1000. If port 1000 is unsecured
+the connection will not be made.
diff --git a/usr/src/man/man8/ldapclient.8 b/usr/src/man/man8/ldapclient.8
new file mode 100644
index 0000000000..6dc8141539
--- /dev/null
+++ b/usr/src/man/man8/ldapclient.8
@@ -0,0 +1,1189 @@
+'\" te
+.\" Copyright (C) 2009, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH LDAPCLIENT 8 "November 22, 2021"
+.SH NAME
+ldapclient \- initialize LDAP client machine or output an LDAP client profile
+in LDIF format
+.SH SYNOPSIS
+.nf
+\fB/usr/sbin/ldapclient\fR [\fB-v\fR | \fB-q\fR] init [\fB-a\fR profileName=\fIprofileName\fR]
+ [\fB-a\fR domainName=\fIdomain\fR] [\fB-a\fR proxyDN=\fIproxyDN\fR]
+ [\fB-a\fR proxyPassword=\fIpassword\fR]
+ [\fB-a\fR authenticationMethod=\fIauthenticationMethod\fR]
+ [\fB-a\fR enableShadowUpdate=true | false]
+ [\fB-a\fR adminDN=\fIadminDN\fR]
+ [\fB-a\fR adminPassword=\fIadminPassword\fR]
+ [\fB-a\fR certificatePath=\fIpath\fR] [\fB-d\fR \fIbindDN\fR] [\fB-w\fR \fIbindPassword\fR]
+ [\fB-j\fR \fIpasswdFile\fR] [\fB-y\fR \fIpasswdFile\fR]
+ [\fB-z\fR \fIadminrPasswdFile\fR] \fILDAP_server\fR[:\fIport_number\fR]
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/ldapclient\fR [\fB-v\fR | \fB-q\fR] manual [\fB-a\fR attrName=\fIattrVal\fR]
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/ldapclient\fR [\fB-v\fR | \fB-q\fR] mod [\fB-a\fR attrName=\fIattrVal\fR]
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/ldapclient\fR [\fB-v\fR | \fB-q\fR] list
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/ldapclient\fR [\fB-v\fR | \fB-q\fR] uninit
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/ldapclient\fR [\fB-v\fR | \fB-q\fR] genprofile \fB-a\fR profileName=\fIprofileName\fR
+ [\fB-a\fR attrName=\fIattrVal\fR]
+.fi
+
+.SH DESCRIPTION
+The \fBldapclient\fR utility can be used to:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+initialize LDAP client machines
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+restore the network service environment on LDAP clients
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+list the contents of the LDAP client cache in human readable format.
+.RE
+.sp
+.LP
+The \fBinit\fR form of the \fBldapclient\fR utility is used to initialize an
+LDAP client machine, using a profile stored on an LDAP server specified by
+\fBLDAP_server\fR. The LDAP client will use the attributes in the specified
+profile to determine the configuration of the LDAP client. Using a
+configuration profile allows for easy installation of LDAP client and
+propagation of configuration changes to LDAP clients. The
+\fBldap_cachemgr\fR(8) utility will update the LDAP client configuration when
+its cache expires by reading the profile. For more information on the
+configuration profile refer to IETF document \fIA Configuration Schema for LDAP
+Based Directory User Agents\fR.
+.sp
+.LP
+The \fBmanual\fR form of the \fBldapclient\fR utility is used to initialize an
+LDAP client machine manually. The LDAP client will use the attributes specified
+on the command line. Any unspecified attributes will be assigned their default
+values. At least one server must be specified in the \fBdefaultServerList\fR or
+the \fBpreferredServerList\fR attributes.The \fBdomainName\fR attribute must be
+specified if the client's \fBdomainName\fR is not set.
+.sp
+.LP
+The \fBmod\fR form of the \fBldapclient\fR utility is used to modify the
+configuration of an LDAP client machine that was setup manually. This option
+modifies only those LDAP client configuration attributes specified on the
+command line. The \fBmod\fR option should only be used on LDAP clients that
+were initialized using the \fBmanual\fR option.
+.sp
+.LP
+Regardless of which method is used for initialization, if a client is to be
+configured to use a proxy \fBcredentialLevel\fR, proxy credentials must be
+provided using \fB-a\fR \fBproxyDN=\fIproxyDN\fR\fR and \fB-a\fR
+\fBproxyPassword=\fIproxyPassword\fR\fR options. However, if \fB-a\fR
+\fBproxyPassword=\fIproxyPassword\fR\fR is not specified, \fBldapclient\fR will
+prompt for it. Note that \fINULL\fR passwords are not allowed in LDAP. If a
+self \fBcredentialLevel\fR is configured, \fBauthenticationMethod\fR must be
+\fBsasl/GSSAPI\fR.
+.sp
+.LP
+Similarly, if a client is to be configured to enable shadow information update
+and use a proxy credentialLevel, administrator credentials must be provided
+using \fB-a\fR \fBadminDN=\fR\fIadminDN\fR and \fB-a\fR
+\fBadminPassword=\fR\fIadminPassword\fR. However, the shadow information update
+does not need the administrator credentials if a self \fBcredentialLevel\fR is
+configured.
+.sp
+.LP
+If any file is modified during installation, it will be backed up to
+\fB/var/ldap/restore\fR. The files that are typically modified during
+initialization are:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fB/etc/nsswitch.conf\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fB/etc/defaultdomain\fR (if it exists)
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fB/var/yp/binding/`domainname`\fR (for a NIS(YP) client)
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fB/var/ldap/ldap_client_file\fR (for an existing LDAP client)
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fB/var/ldap/ldap_client_cred\fR (for an existing LDAP client)
+.RE
+.sp
+.LP
+\fBldapclient\fR does not set up a client to resolve hostnames using DNS. It
+simply copies \fB/etc/nsswitch.ldap\fR to \fB/etc/nsswitch.conf\fR. If you
+prefer to use DNS for host resolution, please refer to the DNS documentation
+for information on setting up DNS. See \fBresolv.conf\fR(5). If you want to use
+\fBsasl/GSSAPI\fR as the authentication method, you have to use DNS for
+\fBhosts\fR and \fBipnodes\fR resolution.
+.sp
+.LP
+The \fBlist\fR form of the \fBldapclient\fR utility is used to list the LDAP
+client configuration. The output will be human readable. LDAP configuration
+files are not guaranteed to be human readable. Note that for security reason,
+the values for adminDN and adminPassword will not be displayed.
+.sp
+.LP
+The \fBuninit\fR form of the \fBldapclient\fR utility is used to uninitialize
+the network service environment, restoring it to the state it was in prior to
+the last execution of \fBldapclient\fR using \fBinit\fR or \fBmanual\fR. The
+restoration will succeed only if the machine was initialized with the
+\fBinit\fR or \fBmanual\fR form of \fBldapclient\fR, as it uses the backup
+files created by these options.
+.sp
+.LP
+The \fBgenprofile\fR option is used to write an LDIF formatted configuration
+profile based on the attributes specified on the command line to standard
+output. This profile can then be loaded into an LDAP server to be used as the
+client profile, which can be downloaded by means of the \fBldapclient init\fR
+command. Loading the LDIF formatted profile to the directory server can be done
+through \fBldapadd\fR(1), or through any server specific import tool. Note that
+the attributes \fBproxyDN\fR, \fBproxyPassword\fR, \fBcertificatePath\fR,
+\fBdomainName\fR, \fBenableShadowUpdate\fR, \fBadminDN\fR, and
+\fBadminPassword\fR are not part of the configuration profile and thus are not
+permitted.
+.sp
+.LP
+You must have superuser privileges to run the \fBldapclient\fR command, except
+with the \fBgenprofile\fR option.
+.sp
+.LP
+To access the information stored in the directory, clients can either
+authenticate to the directory, or use an unauthenticated connection. The LDAP
+client is configured to have a credential level of either \fBanonymous\fR or
+\fBproxy\fR. In the first case, the client does not authenticate to the
+directory. In the second case, client authenticates to the directory using a
+proxy identity for read access, and using a administrator identity for write
+access if \fBenableShadowUpdate\fR is configured. In the third case, client
+authenticates to the directory using a Kerberos principal that is mapped to an
+LDAP identity by the LDAP server. Refer to the chapter on implementing security
+in the \fISystem Administration Guide: Naming and Directory Services (DNS, NIS,
+and LDAP)\fR or your appropriate directory server documentation for identity
+mapping details.
+.sp
+.LP
+If a client is configured to use an identity, you can configure which
+authentication method the client will use. The LDAP client supports the
+following authentication methods:
+.br
+.in +2
+\fBnone\fR
+.in -2
+.br
+.in +2
+\fBsimple\fR
+.in -2
+.br
+.in +2
+\fBsasl/CRAM-MD5\fR
+.in -2
+.br
+.in +2
+\fBsasl/DIGEST-MD5\fR
+.in -2
+.br
+.in +2
+\fBsasl/GSSAPI\fR
+.in -2
+.br
+.in +2
+\fBtls:none\fR
+.in -2
+.br
+.in +2
+\fBtls:simple\fR
+.in -2
+.br
+.in +2
+\fBtls:sasl/CRAM-MD5\fR
+.in -2
+.br
+.in +2
+\fBtls:sasl/DIGEST-MD5\fR
+.in -2
+.sp
+.LP
+Note that some directory servers may not support all of these authentication
+methods. For \fBsimple\fR, be aware that the bind password will be sent in the
+clear to the LDAP server. For those authentication methods using TLS (transport
+layer security), the entire session is encrypted. You will need to install the
+appropriate certificate databases to use TLS. Note that the \fBtls:none\fR
+authentication method requires a \fBcredentialLevel\fR of \fBproxy\fR to
+take effect.
+.SS "Commands"
+The following commands are supported:
+.sp
+.ne 2
+.na
+\fB\fBinit\fR\fR
+.ad
+.sp .6
+.RS 4n
+Initialize client from a profile on a server.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmanual\fR\fR
+.ad
+.sp .6
+.RS 4n
+Manually initialize client with the specified attribute values.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmod\fR\fR
+.ad
+.sp .6
+.RS 4n
+Modify attribute values in the configuration file after a manual initialization
+of the client.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBlist\fR\fR
+.ad
+.sp .6
+.RS 4n
+Write the contents of the LDAP client cache to standard output in human
+readable form.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBuninit\fR\fR
+.ad
+.sp .6
+.RS 4n
+Uninitialize an LDAP client, assuming that \fBldapclient\fR was used to
+initialize the client.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBgenprofile\fR\fR
+.ad
+.sp .6
+.RS 4n
+Generate a configuration profile in LDIF format that can then be stored in the
+directory for clients to use, with the \fBinit\fR form of this command.
+.RE
+
+.SS "Attributes"
+The following attributes are supported:
+.sp
+.ne 2
+.na
+\fB\fBadminDN\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify the Bind Distinguished Name for the administrator identity that is used
+for shadow information update. This option is required if the credential level
+is \fBproxy\fR, and \fBenableShadowUpdate\fR is set to \fBtrue\fR. There is no
+default value.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBadminPassword\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify the administrator password. This option is required if the credential
+level is \fBproxy\fR, and \fBenableShadowUpdate\fR is set to \fBtrue\fR. There
+is no default value.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBattributeMap\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify a mapping from an attribute defined by a service to an attribute in an
+alternative schema. This can be used to change the default schema used for a
+given service. The syntax of \fBattributeMap\fR is defined in the profile IETF
+draft. This option can be specified multiple times. The default value for all
+services is \fINULL\fR. In the example,
+.sp
+.in +2
+.nf
+attributeMap: passwd:uid=employeeNumber
+.fi
+.in -2
+.sp
+
+the LDAP client would use the LDAP attribute \fBemployeeNumber\fR rather than
+\fBuid\fR for the \fBpasswd\fR service. This is a multivalued attribute.
+.sp
+To use rfc2307bis style groups (with a DN rather than username as the
+attribute value), map the \fBmemberUid\fR attribute to the group attribute
+being used (typically either \fBuniqueMember\fR or \fBmember\fR), for example:
+.sp
+.in +2
+.nf
+attributeMap: group:memberUid=uniqueMember
+.fi
+.in -2
+.sp
+
+Group membership in a given directory is expected to be maintained with
+either username format member attributes, or DN format member attributes. If
+both are present they must describe identical memberships or unexpected
+results may be obtained. For DN format attributes, the username is required
+to be the RDN of the entry. Note that nested groups are not currently
+supported, and unexpected results may be obtained if they are used.
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBauthenticationMethod\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify the default authentication method used by all services unless
+overridden by the \fBserviceAuthenticationMethod\fR attribute. Multiple values
+can be specified by using a semicolon-separated list. The default value is
+\fBnone\fR. For those services that use \fBcredentialLevel\fR and
+\fBcredentialLevel\fR is \fBanonymous\fR, this attribute is ignored. Services
+such as \fBpam_ldap\fR will use this attribute, even if \fBcredentialLevel\fR
+is anonymous. The supported authentication methods are described above. If the
+authenticationMethod is \fBsasl/GSSAPI\fR, the \fBhosts\fR and \fBipnodes\fR of
+\fB/etc/nsswitch.conf\fR must be configured with DNS support, for example:
+.sp
+.in +2
+.nf
+hosts: dns files
+ipnodes: dns files
+.fi
+.in -2
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBbindTimeLimit\fR\fR
+.ad
+.sp .6
+.RS 4n
+The maximum time in seconds that a client should spend performing a bind
+operation. Set this to a positive integer. The default value is 30.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcertificatePath\fR\fR
+.ad
+.sp .6
+.RS 4n
+The certificate path for the location of the certificate database. The value is
+the path where security database files reside. This is used for TLS support,
+which is specified in the \fBauthenticationMethod\fR and
+\fBserviceAuthenticationMethod\fR attributes. The default is \fB/var/ldap\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcredentialLevel\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify the credential level the client should use to contact the directory.
+The credential levels supported are either \fBanonymous\fR or \fBproxy\fR. If a
+\fBproxy\fR credential level is specified, then the \fBauthenticationMethod\fR
+attribute must be specified to determine the authentication mechanism. Also, if
+the credential level is \fBproxy\fR and at least one of the authentication
+methods require a bind DN, the \fBproxyDN\fR and \fBproxyPassword\fR attribute
+values must be set. In addition, if \fBenableShadowUpdate\fR is set to
+\fBtrue\fR, the \fBadminDN\fR and \fBadminPassword\fR values must be set. If a
+self credential level is specified, the \fBauthenticationMethod\fR must be
+\fBsasl/GSSAPI\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdefaultSearchBase\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify the default search base DN. There is no default. The
+\fBserviceSearchDescriptor\fR attribute can be used to override the
+\fBdefaultSearchBase\fR for given services.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdefaultSearchScope=one | sub\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify the default search scope for the client's search operations. This
+default can be overridden for a given service by specifying a
+\fBserviceSearchDescriptor\fR. The default is one level search.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdefaultServerList\fR\fR
+.ad
+.sp .6
+.RS 4n
+A space separated list of server names or server addresses, either IPv4 or
+IPv6. If you specify server names, be sure that the LDAP client can resolve the
+name without the LDAP name service. You must resolve the LDAP servers' names by
+using either \fBfiles\fR or \fBdns\fR. If the LDAP server name cannot be
+resolved, your naming service will fail.
+.sp
+The port number is optional. If not specified, the default LDAP server port
+number 389 is used, except when TLS is specified in the authentication method.
+In this case, the default LDAP server port number is 636.
+.sp
+The format to specify the port number for an IPv6 address is:
+.sp
+.in +2
+.nf
+[ipv6_addr]:port
+.fi
+.in -2
+
+To specify the port number for an IPv4 address, use the following format:
+.sp
+.in +2
+.nf
+ipv4_addr:port
+.fi
+.in -2
+
+If the host name is specified, use the format:
+.sp
+.in +2
+.nf
+host_name:port
+.fi
+.in -2
+
+If you use TLS, the LDAP server's hostname must match the hostname in the TLS
+certificate. Typically, the hostname in the TLS certificate is a fully
+qualified domain name. With TLS, the LDAP server host addresses must resolve to
+the hostnames in the TLS certificate. You must use \fBfiles\fR or \fBdns\fR to
+resolve the host address.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdomainName\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify the DNS domain name. This becomes the default domain for the machine.
+The default is the current domain name. This attribute is only used in client
+initialization.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBenableShadowUpdate=true | false\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify whether the client is allowed to update shadow information. If set to
+\fBtrue\fR and the credential level is \fBproxy\fR, \fBadminDN\fR and
+\fBadminPassword\fR must be specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfollowReferrals=true | false\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify the referral setting. A setting of true implies that referrals will be
+automatically followed and false would result in referrals not being followed.
+The default is true.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBobjectclassMap\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify a mapping from an \fBobjectclass\fR defined by a service to an
+\fBobjectclass\fR in an alternative schema. This can be used to change the
+default schema used for a given service. The syntax of \fBobjectclassMap\fR is
+defined in the profile IETF draft. This option can be specified multiple times.
+The default value for all services is \fINULL\fR. In the example,
+.sp
+.in +2
+.nf
+objectclassMap=passwd:posixAccount=unixAccount
+.fi
+.in -2
+.sp
+
+the LDAP client would use the LDAP \fBobjectclass\fR of \fBunixAccount\fR
+rather than the \fBposixAccount\fR for the \fBpasswd\fR service. This is a
+multivalued attribute.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpreferredServerList\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify the space separated list of server names or server addresses, either
+IPv4 or IPv6, to be contacted before servers specified by the
+\fBdefaultServerList\fR attribute. If you specify server names, be sure that
+the LDAP client can resolve the name without the LDAP name service. You must
+resolve the LDAP servers' names by using either \fBfiles\fR or \fBdns\fR. If
+the LDAP server name cannot be resolved, your naming service will fail.
+.sp
+The port number is optional. If not specified, the default LDAP server port
+number 389 is used, except when TLS is specified in the authentication method.
+In this case, the default LDAP server port number is 636.
+.sp
+The format to specify the port number for an IPv6 address is:
+.sp
+.in +2
+.nf
+[ipv6_addr]:port
+.fi
+.in -2
+
+To specify the port number for an IPv4 address, use the following format:
+.sp
+.in +2
+.nf
+ipv4_addr:port
+.fi
+.in -2
+
+If the host name is specified, use the format:
+.sp
+.in +2
+.nf
+host_name:port
+.fi
+.in -2
+
+If you use TLS, the LDAP server's hostname must match the hostname in the TLS
+certificate. Typically, the hostname in the TLS certificate is a fully
+qualified domain name. With TLS, the LDAP server host addresses must resolve to
+the hostnames in the TLS certificate. You must use \fBfiles\fR or \fBdns\fR to
+resolve the host address.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBprofileName\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify the profile name. For \fBldapclient init\fR, this attribute is the name
+of an existing profile which may be downloaded periodically depending on the
+value of the \fBprofileTTL\fR attribute. For \fBldapclient genprofile\fR, this
+is the name of the profile to be generated. The default value is \fBdefault\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBprofileTTL\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify the TTL value in seconds for the client information. This is only
+relevant if the machine was initialized with a client profile. If you do not
+want \fBldap_cachemgr\fR(8) to attempt to refresh the LDAP client
+configuration from the LDAP server, set \fBprofileTTL\fR to 0 (zero). Valid
+values are either zero 0 (for no expiration) or a positive integer in seconds.
+The default value is 12 hours.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBproxyDN\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify the Bind Distinguished Name for the proxy identity. This option is
+required if the credential level is \fBproxy\fR, and at least one of the
+authentication methods requires a bind DN. There is no default value.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBproxyPassword\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify client proxy password. This option is required if the credential level
+is \fBproxy\fR, and at least one of the authentication methods requires a bind
+DN. There is no default.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsearchTimeLimit\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify maximum number of seconds allowed for an LDAP search operation. The
+default is 30 seconds. The server may have its own search time limit.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBserviceAuthenticationMethod\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify authentication methods to be used by a service in the form
+\fIservicename\fR:\fBauthenticationmethod\fR, for example:
+.sp
+.in +2
+.nf
+pam_ldap:tls:simple
+.fi
+.in -2
+
+For multiple authentication methods, use a semicolon-separated list. The
+default value is no service authentication methods, in which case, each service
+would default to the \fBauthenticationMethod\fR value. The supported
+authentications are described above.
+.sp
+Three services support this feature: \fBpasswd-cmd\fR, \fBkeyserv\fR, and
+\fBpam_ldap\fR. The \fBpasswd-cmd\fR service is used to define the
+authentication method to be used by \fBpasswd\fR(1) to change the user's
+password and other attributes. The \fBkeyserv\fR service is used to identify
+the authentication method to be used by the \fBchkey\fR(1) and \fBnewkey\fR(8)
+utilities. The \fBpam_ldap\fR service defines the authentication method to be
+used for authenticating users when \fBpam_ldap\fR(7) is configured. If this
+attribute is not set for any of these services, the \fBauthenticationMethod\fR
+attribute is used to define the authentication method. This is a multivalued
+attribute.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBserviceCredentialLevel\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify credential level to be used by a service. Multiple values can be
+specified in a space-separated list. The default value for all services is
+\fINULL\fR. The supported credential levels are: \fBanonymous\fR or
+\fBproxy\fR. At present, no service uses this attribute. This is a multivalued
+attribute.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBserviceSearchDescriptor\fR\fR
+.ad
+.sp .6
+.RS 4n
+Override the default base DN for LDAP searches for a given service. The format
+of the descriptors also allow overriding the default search scope and search
+filter for each service. The syntax of \fBserviceSearchDescriptor\fR is defined
+in the profile IETF draft. The default value for all services is \fINULL\fR.
+This is a multivalued attribute. In the example,
+.sp
+.in +2
+.nf
+serviceSearchDescriptor=passwd:ou=people,dc=a1,dc=example,dc=com?one
+.fi
+.in -2
+.sp
+
+the LDAP client would do a one level search in
+\fBou=people,dc=a1,dc=example,dc=com\fR rather than
+\fBou=people,\fIdefaultSearchBase\fR\fR for the \fBpasswd\fR service.
+.RE
+
+.SH OPTIONS
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-a\fR \fBattrName=\fR\fIattrValue\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify \fBattrName\fR and its value. See \fBSYNOPSIS\fR for a complete list of
+possible attribute names and values.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-D\fR \fIbindDN\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies an entry that has read permission for the requested database.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-j\fR \fIpasswdFile\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify a file containing the password for the bind DN or the password for the
+SSL client's key database. To protect the password, use this option in scripts
+and place the password in a secure file. This option is mutually exclusive of
+the \fB-w\fR option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-q\fR\fR
+.ad
+.sp .6
+.RS 4n
+Quiet mode. No output is generated.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.sp .6
+.RS 4n
+Verbose output.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-w\fR \fIbindPassword\fR\fR
+.ad
+.sp .6
+.RS 4n
+Password to be used for authenticating the bind DN. If this parameter is
+missing, the command will prompt for a password. \fBNULL\fR passwords are not
+supported in LDAP.
+.sp
+When you use \fB-w\fR \fIbindPassword\fR to specify the password to be used for
+authentication, the password is visible to other users of the system by means
+of the \fBps\fR command, in script files, or in shell history.
+.sp
+If you supply "\fB-\fR" (hyphen) as a password, the command will prompt for a
+password.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-y\fR \fIpasswdFile\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify a file containing the password for the proxy DN. To protect the
+password, use this option in scripts and place the password in a secure file.
+This option is mutually exclusive of the \fB-a\fR \fIproxyPassword\fR option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-z\fR \fIadminrPasswdFile\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify a file containing the password for the \fBadminDN\fR. To protect the
+password, use this option in scripts and place the password in a secure file.
+This option is mutually exclusive of the \fB-a\fR \fIadminPassword\fR option.
+.RE
+
+.SH OPERANDS
+The following operand is supported:
+.sp
+.ne 2
+.na
+\fB\fILDAP_server\fR\fR
+.ad
+.sp .6
+.RS 4n
+An address or a name for the LDAP server from which the profile will be loaded.
+The current naming service specified in the \fBnsswitch.conf\fR file is used.
+Once the profile is loaded, the \fBpreferredServerList\fR and
+\fBdefaultServerList\fR specified in the profile are used.
+.RE
+
+.SH EXAMPLES
+\fBExample 1 \fRSetting Up a Client By Using the Default Profile Stored on a
+Specified LDAP Server
+.sp
+.LP
+The following example shows how to set up a client using the default profile
+stored on the specified LDAP server. This command will only be successful if
+either the credential level in the profile is set to \fBanonymous\fR or the
+authentication method is set to \fBnone\fR.
+
+.sp
+.in +2
+.nf
+example# \fBldapclient init 172.16.100.1\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRSetting Up a Client By Using the \fBsimple\fR Profile Stored on
+a Specified LDAP Server
+.sp
+.LP
+The following example shows how to set up a client using the \fBsimple\fR
+profile stored on the specified LDAP server. The domainname is set to
+\fBxyz.example.com\fR and the proxyPassword is \fBsecret\fR.
+
+.sp
+.in +2
+.nf
+example# \fBldapclient init -a profileName=simple \e
+-a domainName=xyz.example.com \e
+-a proxyDN=cn=proxyagent,ou=profile,dc=xyz,dc=example,dc=com \e
+-a proxyPassword=secret '['fe80::a00:20ff:fea3:388']':386\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRSetting Up a Client Using Only One Server
+.sp
+.LP
+The following example shows how to set up a client using only one server. The
+authentication method is set to \fBnone\fR, and the search base is
+\fBdc=example,dc=com\fR.
+
+.sp
+.in +2
+.nf
+example# \fBldapclient manual -a authenticationMethod=none \e
+-a defaultSearchBase=dc=example,dc=com \e
+-a defaultServerList=172.16.100.1\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 4 \fRSetting Up a Client Using Only One Server That Does Not Follow
+Referrals
+.sp
+.LP
+The following example shows how to set up a client using only one server. The
+credential level is set to \fBproxy\fR. The authentication method of is
+\fBsasl/CRAM-MD5\fR, with the option not to follow referrals. The domain name
+is \fBxyz.example.com\fR, and the LDAP server is running on port number 386
+at IP address \fB172.16.100.1\fR.
+
+.sp
+.in +2
+.nf
+example# \fBldapclient manual \e
+-a credentialLevel=proxy \e
+-a authenticationMethod=sasl/CRAM-MD5 \e
+-a proxyPassword=secret \e
+-a proxyDN=cn=proxyagent,ou=profile,dc=xyz,dc=example,dc=com \e
+-a defaultSearchBase=dc=xyz,dc=example,dc=com \e
+-a domainName=xyz.example.com \e
+-a followReferrals=false \e
+-a defaultServerList=172.16.100.1:386\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 5 \fRUsing \fBgenprofile\fR to Set Only the \fBdefaultSearchBase\fR
+and the Server Addresses
+.sp
+.LP
+The following example shows how to use the \fBgenprofile\fR command to set the
+\fBdefaultSearchBase\fR and the server addresses.
+
+.sp
+.in +2
+.nf
+example# \fBldapclient genprofile -a profileName=myprofile \e
+-a defaultSearchBase=dc=eng,dc=sun,dc=com \e
+-a "defaultServerList=172.16.100.1 172.16.234.15:386" \e
+> myprofile.ldif\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 6 \fRCreating a Profile on IPv6 servers
+.sp
+.LP
+The following example creates a profile on IPv6 servers
+
+.sp
+.in +2
+.nf
+example# \fBldapclient genprofile -a profileName=eng \e
+-a credentialLevel=proxy \e
+-a authenticationMethod=sasl/DIGEST-MD5 \e
+-a defaultSearchBase=dc=eng,dc=example,dc=com \e
+-a "serviceSearchDescriptor=passwd:ou=people,dc=a1,dc=example,dc=com?one"\e
+-a preferredServerList= '['fe80::a00:20ff:fea3:388']' \e
+-a "defaultServerList='['fec0::111:a00:20ff:fea3:edcf']' \e
+ '['fec0::111:a00:20ff:feb5:e41']'" > eng.ldif\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 7 \fRCreating a Profile That Overrides Every Default Value
+.sp
+.LP
+The following example shows a profile that overrides every default value.
+
+.sp
+.in +2
+.nf
+example# \fBldapclient genprofile -a profileName=eng \e
+-a credentialLevel=proxy -a authenticationMethod=sasl/DIGEST-MD5 \e
+-a bindTimeLimit=20 \e
+-a defaultSearchBase=dc=eng,dc=example,dc=com \e
+-a "serviceSearchDescriptor=passwd:ou=people,dc=a1,dc=example,dc=com?one"\e
+-a serviceAuthenticationMethod=pam_ldap:tls:simple \e
+-a defaultSearchScope=sub \e
+-a attributeMap=passwd:uid=employeeNumber \e
+-a objectclassMap=passwd:posixAccount=unixAccount \e
+-a followReferrals=false -a profileTTL=6000 \e
+-a preferredServerList=172.16.100.30 -a searchTimeLimit=30 \e
+-a "defaultServerList=172.16.200.1 172.16.100.1 192.168.5.6" > eng.ldif\fR
+.fi
+.in -2
+.sp
+
+.SH EXIT STATUS
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB0\fR
+.ad
+.RS 5n
+The command successfully executed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB1\fR
+.ad
+.RS 5n
+An error occurred. An error message is output.
+.RE
+
+.sp
+.ne 2
+.na
+\fB2\fR
+.ad
+.RS 5n
+\fBproxyDN\fR and \fBproxyPassword\fR attributes are required, but they are not
+provided.
+.RE
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/var/ldap/ldap_client_cred\fR\fR
+.ad
+.br
+.na
+\fB\fB/var/ldap/ldap_client_file\fR\fR
+.ad
+.sp .6
+.RS 4n
+Contain the LDAP configuration of the client. These files are not to be
+modified manually. Their content is not guaranteed to be human readable. Use
+\fBldapclient\fR to update them.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/defaultdomain\fR\fR
+.ad
+.sp .6
+.RS 4n
+System default domain name, matching the domain name of the data in the LDAP
+servers. See \fBdefaultdomain\fR(5).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/nsswitch.conf\fR\fR
+.ad
+.sp .6
+.RS 4n
+Configuration file for the name-service switch. See \fBnsswitch.conf\fR(5).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/nsswitch.ldap\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sample configuration file for the name-service switch configured with LDAP and
+files.
+.RE
+
+.SH ATTRIBUTES
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.BR chkey (1),
+.BR ldap (1),
+.BR ldapadd (1),
+.BR ldapdelete (1),
+.BR ldaplist (1),
+.BR ldapmodify (1),
+.BR ldapmodrdn (1),
+.BR ldapsearch (1),
+.BR defaultdomain (5),
+.BR nsswitch.conf (5),
+.BR resolv.conf (5),
+.BR attributes (7),
+.BR idsconfig (8),
+.BR ldap_cachemgr (8),
+.BR ldapaddent (8)
+.SH CAUTION
+Currently \fBStartTLS\fR is not supported by \fBlibldap.so.5\fR, therefore the
+port number provided refers to the port used during a TLS open, rather than the
+port used as part of a \fBStartTLS\fR sequence. To avoid timeout delays, mixed
+use of TLS and non-TLS authentication mechanisms is not recommended.
+.sp
+.LP
+For example:
+.sp
+.in +2
+.nf
+-h foo:1000 -a authenticationMethod=tls:simple
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+\&...or:
+.sp
+.in +2
+.nf
+defaultServerList= foo:1000
+authenticationMethod= tls:simple
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The preceding refers to a raw TLS open on host \fBfoo\fR port 1000, not an
+open, StartTLS sequence on an unsecured port 1000. If port 1000 is unsecured
+the connection will not be made.
+.sp
+.LP
+As a second example, the following will incur a significant timeout delay while
+attempting the connection to \fBfoo:636\fR with an unsecured bind.
+.sp
+.in +2
+.nf
+defaultServerList= foo:636 foo:389
+authenticationMethod= simple
+.fi
+.in -2
+.sp
+
diff --git a/usr/src/man/man8/ldmad.8 b/usr/src/man/man8/ldmad.8
new file mode 100644
index 0000000000..a416733ffa
--- /dev/null
+++ b/usr/src/man/man8/ldmad.8
@@ -0,0 +1,78 @@
+'\" te
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
+.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH LDMAD 8 "Sep 8, 2009"
+.SH NAME
+ldmad \- Logical Domains Agents daemon
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/ldoms/ldmad\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBldmad\fR daemon is part of the framework that enables Logical Domain
+agents to run on a Logical Domain. A Logical Domain agent is a component that
+interacts with the control domain for providing features or information.
+.sp
+.LP
+\fBldmad\fR is responsible for running agents on a Logical Domain and must be
+enabled to ensure proper functionality of all features provided by the domain
+manager on the control domain. It is started at boot time and has no
+configuration options.
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Unstable
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR svcs (1),
+.BR syslog (3C),
+.BR syslog.conf (5),
+.BR attributes (7),
+.BR smf (7),
+.BR svcadm (8)
+.SH ERRORS
+.sp
+.LP
+\fBldmad\fR uses \fBsyslog\fR(3C) to report status and error messages. All of
+the messages are logged with the \fBLOG_DAEMON\fR facility. Error messages are
+logged with the \fBLOG_ERR\fR and \fBLOG_NOTICE\fR priorities, and
+informational messages are logged with the \fBLOG_INFO\fR priority. The default
+entries in the \fB/etc/syslog.conf\fR file log all of the \fBldmad\fR error
+messages to the \fB/var/adm/messages\fR log.
+.SH NOTES
+.sp
+.LP
+The \fBldmad\fR service is managed by the service management facility,
+\fBsmf\fR(7), under the service identifier:
+.sp
+.in +2
+.nf
+svc:/ldoms/agents:default
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Administrative actions on this service, such as enabling, disabling, or
+requesting restart can be performed using \fBsvcadm\fR(8). The service's
+status can be queried using the \fBsvcs\fR(1) command.
diff --git a/usr/src/man/man8/link.8 b/usr/src/man/man8/link.8
new file mode 100644
index 0000000000..66aff3fd14
--- /dev/null
+++ b/usr/src/man/man8/link.8
@@ -0,0 +1,117 @@
+'\" te
+.\" Copyright 1989 AT&T
+.\" Copyright (c) 2002Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH LINK 8 "Oct 9, 2002"
+.SH NAME
+link, unlink \- link and unlink files and directories
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/link \fR \fIexisting-file\fR \fInew-file\fR
+.fi
+
+.LP
+.nf
+\fB/usr/xpg4/bin/link \fR \fIexisting-file\fR \fInew-file\fR
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/unlink\fR \fIfile\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBlink\fR and \fBunlink\fR commands link and unlink files and directories.
+Only super-users can use these commands on directories.
+.sp
+.LP
+Use \fBlink\fR to create a new file that points to an existing file. The
+\fIexisting-file\fR and \fInew-file\fR operands specify the existing file and
+newly-created files. See \fBOPERANDS\fR.
+.sp
+.LP
+\fBlink\fR and \fBunlink\fR directly invoke the \fBlink\fR(2) and
+\fBunlink\fR(2) system calls, performing exactly what they are told to do and
+abandoning all error checking. This differs from the \fBln\fR(1) command. See
+\fBln\fR(1).
+.sp
+.LP
+While linked files and directories can be removed using \fBunlink\fR, it is
+safer to use \fBrm\fR(1) and \fBrmdir\fR(1) instead. See \fBrm\fR(1) and
+\fBrmdir\fR(1).
+.SS "/usr/xpg4/bin/link"
+.sp
+.LP
+If the existing file being hard linked is itself a symbolic link, then the
+newly created file (\fInew-file\fR) will be a hard link to the file referenced
+by the symbolic link, not to the symbolic link object itself
+(\fIexisting-file\fR).
+.SH OPERANDS
+.sp
+.LP
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fB\fIexisting-file\fR\fR
+.ad
+.RS 17n
+Specifies the name of the existing file to be linked.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIfile\fR\fR
+.ad
+.RS 17n
+Specifies the name of the file to be unlinked.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fInew-file\fR\fR
+.ad
+.RS 17n
+Specifies the name of newly created (linked) file.
+.RE
+
+.SH ENVIRONMENT VARIABLES
+.sp
+.LP
+See \fBenviron\fR(7) for descriptions of the following environment variables
+that affect the execution of \fBlink\fR: \fBLANG\fR, \fBLC_ALL\fR,
+\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.SS "/usr/xpg4/bin/link"
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Standard
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR ln (1),
+.BR rm (1),
+.BR link (2),
+.BR unlink (2),
+.BR attributes (7),
+.BR environ (7),
+.BR standards (7)
diff --git a/usr/src/man/man8/listdgrp.8 b/usr/src/man/man8/listdgrp.8
new file mode 100644
index 0000000000..19d84ace6d
--- /dev/null
+++ b/usr/src/man/man8/listdgrp.8
@@ -0,0 +1,93 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 1997 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH LISTDGRP 8 "Jul 5, 1990"
+.SH NAME
+listdgrp \- lists members of a device group
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/bin/listdgrp\fR \fIdgroup\fR...
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBlistdgrp\fR displays the members of the device groups specified by the
+\fIdgroup\fR list.
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRAn example of \fBlistdgrp\fR.
+.sp
+.LP
+The following example lists the devices that belong to group \fBpartitions\fR:
+
+.sp
+.in +2
+.nf
+example% listdgrp partitions
+ root
+ swap
+ usr
+.fi
+.in -2
+.sp
+
+.SH EXIT STATUS
+.sp
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 5n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB1\fR\fR
+.ad
+.RS 5n
+Command was syntax incorrect, an invalid option used, or an internal error
+occurred.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB2\fR\fR
+.ad
+.RS 5n
+A device group table could not be opened for reading.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB3\fR\fR
+.ad
+.RS 5n
+A device group \fIdgroup\fR could not be found in the device group table.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/dgroup.tab\fR\fR
+.ad
+.RS 19n
+Device group table.
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7),
+.BR putdgrp (8)
diff --git a/usr/src/man/man8/listen.8 b/usr/src/man/man8/listen.8
new file mode 100644
index 0000000000..4a71e91a50
--- /dev/null
+++ b/usr/src/man/man8/listen.8
@@ -0,0 +1,112 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 1997 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH LISTEN 8 "Apr 3, 1997"
+.SH NAME
+listen \- network listener daemon
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/saf/listen\fR [\fB-m\fR \fIdevstem\fR] \fInet_spec\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBlisten\fR process ``listens'' to a network for service requests, accepts
+requests when they arrive, and invokes servers in response to those service
+requests. The network listener process may be used with any connection-oriented
+network (more precisely, with any connection-oriented transport provider) that
+conforms to the Transport Layer Interface (TLI) Specification.
+.sp
+.LP
+The listener internally generates a pathname for the minor device for each
+connection; it is this pathname that is used in the \fButmpx\fR entry for a
+service, if one is created. By default, this pathname is the concatenation of
+the prefix \fB/dev/\fR\fInetspec\fR with the decimal representation of the
+minor device number. In either case, the representation of the minor device
+number will be at least two digits (for example, 05 or 27), or longer when it
+is necessary to accommodate minor device numbers larger than 99.
+.SH SERVER INVOCATION
+.sp
+.LP
+When a connection indication is received, the listener creates a new transport
+endpoint and accepts the connection on that endpoint. Before giving the file
+descriptor for this new connection to the server, any designated STREAMS
+modules are pushed and the configuration script is executed, (if one exists).
+This file descriptor is appropriate for use with either TLI (see
+\fBt_sync\fR(3NSL) ) or the sockets interface library.
+.sp
+.LP
+By default, a new instance of the server is invoked for each connection. When
+the server is invoked, file descriptor 0 refers to the transport endpoint, and
+is open for reading and writing. File descriptors 1 and 2 are copies of file
+descriptor 0; no other file descriptors are open. The service is invoked with
+the user and group IDs of the user name under which the service was registered
+with the listener, and with the current directory set to the HOME directory of
+that user.
+.sp
+.LP
+Alternatively, a service may be registered so that the listener will pass
+connections to a standing server process through a FIFO or a named stream,
+instead of invoking the server anew for each connection. In this case, the
+connection is passed in the form of a file descriptor that refers to the new
+transport endpoint. Before the file descriptor is sent to the server, the
+listener interprets any configuration script registered for that service using
+\fBdoconfig\fR(3NSL), although \fBdoconfig\fR is invoked with both the
+\fBNORUN\fR and \fBNOASSIGN\fR flags. The server receives the file descriptor
+for the connection in a \fBstrrecvfd\fR structure using an \fBI_RECVFD\fR
+\fBioctl\fR(2).
+.sp
+.LP
+For more details about the listener and its administration, see
+\fBnlsadmin\fR(8).
+.SH OPTIONS
+.sp
+.ne 2
+.na
+\fB\fB-m\fR\fIdevstem\fR\fR
+.ad
+.RS 13n
+The listener will use \fIdevstem\fR as the prefix for the pathname.
+.RE
+
+.SH FILES
+.sp
+.LP
+\fB/etc/saf/\fR\fIpmtag\fR\fB/\fR\fI*\fR
+.SH SEE ALSO
+.sp
+.LP
+.BR ioctl (2),
+.BR doconfig (3NSL),
+.BR nlsgetcall (3NSL),
+.BR nlsprovider (3NSL),
+.BR t_sync (3NSL),
+.BR streamio (4I),
+.BR attributes (7),
+.BR nlsadmin (8),
+.BR pmadm (8),
+.BR sac (8),
+.BR sacadm (8)
+.sp
+.LP
+\fI\fR
+.SH NOTES
+.sp
+.LP
+When passing a connection to a standing server, the user and group IDs
+contained in the \fBstrrecvfd\fR structure will be those for the listener (that
+is, they will both be 0); the user name under which the service was registered
+with the listener is not reflected in these IDs.
+.sp
+.LP
+When operating multiple instances of the listener on a single transport
+provider, there is a potential race condition in the binding of addresses
+during initialization of the listeners, if any of their services have
+dynamically assigned addresses. This condition would appear as an inability of
+the listener to bind a static-address service to its otherwise valid address,
+and would result from a dynamic-address service having been bound to that
+address by a different instance of the listener.
diff --git a/usr/src/man/man8/locator.8 b/usr/src/man/man8/locator.8
new file mode 100644
index 0000000000..7aa3d42262
--- /dev/null
+++ b/usr/src/man/man8/locator.8
@@ -0,0 +1,120 @@
+'\" te
+.\" Copyright (c) 2001, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH LOCATOR 8 "Sep 4, 2001"
+.SH NAME
+locator \- location indicator control
+.SH SYNOPSIS
+.LP
+.nf
+\fB /usr/sbin/locator\fR [\fB-f\fR | \fB-n\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The locator command sets or queries the state of the system locator if such a
+device exists.
+.sp
+.LP
+Without options, the locator command reports the current state of the system.
+.sp
+.LP
+The privileges required to use this command are hardware dependent. Typically,
+only the super user can get or set a locator.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-f\fR\fR
+.ad
+.RS 6n
+Turns the locator off.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR\fR
+.ad
+.RS 6n
+Turns the locator on.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRUsing the \fBlocator\fR Command on a Platform Which Has a
+System Locator LED
+.sp
+.LP
+When issued on a platform which has a system locator \fBLED\fR, the following
+command turns the locator on:
+
+.sp
+.in +2
+.nf
+# \fBlocator \fR\fB-n\fR
+# \fBlocator\fR
+The 'system' locator is on
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRUsing the \fBlocator\fR Command on a Platform Which Does Not
+Have a System Locator LED
+.sp
+.LP
+When issued on a platform which does not have a system locator \fBLED\fR, the
+following command attempts to turn the locator on. The command returns an error
+message.
+
+.sp
+.in +2
+.nf
+# \fBlocator \fR\fB-n\fR
+\&'system' locator not found
+.fi
+.in -2
+.sp
+
+.SH EXIT STATUS
+.sp
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 5n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB1\fR\fR
+.ad
+.RS 5n
+Invalid command line input.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB2\fR\fR
+.ad
+.RS 5n
+The requested operation failed.
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7)
diff --git a/usr/src/man/man8/lockfs.8 b/usr/src/man/man8/lockfs.8
new file mode 100644
index 0000000000..e18b4e600b
--- /dev/null
+++ b/usr/src/man/man8/lockfs.8
@@ -0,0 +1,345 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH LOCKFS 8 "Jan 2, 2008"
+.SH NAME
+lockfs \- change or report file system locks
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/lockfs\fR [\fB-adefhnuw\fR] [\fB-c\fR \fIstring\fR] [\fIfile-system\fR]...
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBlockfs\fR is used to change and report the status of file system locks.
+\fBlockfs\fR reports the lock status and unlocks the file systems that were
+improperly left locked.
+.sp
+.LP
+Using \fBlockfs\fR to lock a file system is discouraged because this requires
+extensive knowledge of SunOS internals to be used effectively and correctly.
+.sp
+.LP
+When invoked with no arguments, \fBlockfs\fR lists the \fBUFS\fR file systems
+that are locked. If \fIfile-system\fR is not specified, and \fB-a\fR is
+specified, \fBlockfs\fR is run on all mounted, \fBUFS\fR type file systems.
+.SH OPTIONS
+.sp
+.LP
+The options are mutually exclusive: \fBwndheuf\fR. If you do specify more than
+one of these options on a \fBlockfs\fR command line, the utility does not
+protest and invokes only the last option specified. In particular, you cannot
+specify a flush (\fB-f\fR) and a lock (for example, \fB-w\fR) on the same
+command line. However, all locking operations implicitly perform a flush, so
+the \fB-f\fR is superfluous when specifying a lock.
+.sp
+.LP
+You must be super-user to use any of the following options, with the exception
+of \fB-a\fR, \fB-f\fR and \fB-v\fR.
+.sp
+.LP
+The following options are supported.
+.sp
+.ne 2
+.na
+\fB\fB-a\fR\fR
+.ad
+.sp .6
+.RS 4n
+Apply command to all mounted, \fBUFS\fR type file systems. \fIfile-system\fR is
+ignored when \fB-a\fR is specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-c\fR \fIstring\fR\fR
+.ad
+.sp .6
+.RS 4n
+Accept a string that is passed as the comment field. The \fB-c\fR only takes
+affect when the lock is being set using the \fB-d\fR, \fB-h\fR, \fB-n\fR,
+\fB-u\fR, or \fB-w\fR options.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-d\fR\fR
+.ad
+.sp .6
+.RS 4n
+Delete-lock (\fBdlock\fR) the specified \fIfile-system\fR. dlock suspends
+access that could remove directory entries.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-e\fR\fR
+.ad
+.sp .6
+.RS 4n
+Error-lock (\fBelock\fR) the specified \fIfile-system\fR. elock blocks all
+local access to the locked file system and returns \fBEWOULDBLOCK\fR on all
+remote access. File systems are elocked by \fBUFS\fR on detection of internal
+inconsistency. They may only be unlocked after successful repair by \fBfsck\fR,
+which is usually done automatically (see \fBmount_ufs\fR(8)). elocked file
+systems can be unmounted.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR\fR
+.ad
+.sp .6
+.RS 4n
+Force a synchronous flush of all data that is dirty at the time \fBfsflush\fR
+is run to its backing store for the named file system (or for all file
+systems.)
+.sp
+It is a more reliable method than using \fBsync\fR(8) because it does not
+return until all possible data has been pushed. In the case of \fBUFS\fR
+filesystems with logging enabled, the log is also rolled before returning.
+Additional data can be modified by the time \fBfsflush\fR exits, so using one
+of the locking options is more likely to be of general use.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-h\fR\fR
+.ad
+.sp .6
+.RS 4n
+Hard-lock (\fBhlock\fR) the specified \fIfile-system\fR. hlock returns an error
+on every access to the locked file system, and cannot be unlocked. hlocked file
+systems can be unmounted.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR\fR
+.ad
+.sp .6
+.RS 4n
+Name-lock (\fBnlock\fR) the specified \fIfile-system\fR. nlock suspends
+accesses that could change or remove existing directories entries.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-u\fR\fR
+.ad
+.sp .6
+.RS 4n
+Unlock (\fBulock\fR) the specified \fIfile-system\fR. ulock awakens suspended
+accesses.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.sp .6
+.RS 4n
+Enable verbose output.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-w\fR\fR
+.ad
+.sp .6
+.RS 4n
+Write-lock (\fBwlock\fR) the specified \fIfile-system\fR. wlock suspends writes
+that would modify the file system. Access times are not kept while a file
+system is write-locked.
+.RE
+
+.SH OPERANDS
+.sp
+.LP
+The following operands are supported.
+.sp
+.ne 2
+.na
+\fB\fIfile-system\fR\fR
+.ad
+.sp .6
+.RS 4n
+A list of path names separated by whitespace. Note that \fIfile-system\fR can
+be a directory rather than the specific name of a file system, such as \fB/\fR
+or \fB/usr\fR. For example, if you specify \fB/export/home\fR as an argument to
+a \fBlockfs\fR command and \fB/export/home\fR is mounted on the root (\fB/\fR)
+file system, the \fBlockfs\fR command will take effect on the root file system.
+.RE
+
+.SH USAGE
+.sp
+.LP
+See \fBlargefile\fR(7) for the description of the behavior of \fBlockfs\fR when
+encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRUsing \fBlockfs\fR \fB-a\fR
+.sp
+.LP
+In the following examples, \fIfilesystem\fR is the pathname of the mounted-on
+directory (mount point). \fBLocktype\fR is one of "\fBwrite\fR," "\fIname\fR,"
+"\fIdelete\fR," "\fIhard\fR," or "\fIunlock\fR". When enclosed in parenthesis,
+the lock is being set. \fBComment\fR is a string set by the process that last
+issued a lock command.
+
+.sp
+.LP
+The following example shows the \fBlockfs\fR output when only the \fB-a\fR
+option is specified.
+
+.sp
+.in +2
+.nf
+example# \fB/usr/sbin/lockfs -a\fR
+.fi
+.in -2
+.sp
+
+.sp
+
+.sp
+.TS
+l l l
+l l l .
+Filesystem Locktype Comment
+/ unlock
+/var unlock
+.TE
+
+.sp
+.in +2
+.nf
+example#
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRUsing \fBlockfs\fR \fB-w\fR
+.sp
+.LP
+The following example shows the \fBlockfs\fR output when the \fB-w\fR option is
+used to write lock the \fB/var\fR file system and the comment string is set
+using the \fB-c\fR option. The \fB-a\fR option is then specified on a separate
+command line.
+
+.sp
+.in +2
+.nf
+example# \fB/usr/sbin/lockfs -w -c "lockfs: write lock example" /var\fR
+example# \fB/usr/sbin/lockfs -a\fR
+.fi
+.in -2
+.sp
+
+.sp
+
+.sp
+.TS
+l l l
+l l l .
+Filesystem Locktype Comment
+/ unlock
+/var write lockfs: write lock example
+.TE
+
+.sp
+.in +2
+.nf
+example#
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRUsing \fBlockfs\fR \fB-u\fR
+.sp
+.LP
+The following example shows the \fBlockfs\fR output when the \fB-u\fR option is
+used to unlock the \fB/var\fR file system and the comment string is set using
+the \fB-c\fR option.
+
+.sp
+.in +2
+.nf
+example# \fB/usr/sbin/lockfs -uc "lockfs: unlock example" /var\fR
+example# \fB/usr/sbin/lockfs /var\fR
+.fi
+.in -2
+.sp
+
+.sp
+
+.sp
+.TS
+l l l
+l l l .
+Filesystem Locktype Comment
+/var unlock lockfs: unlock example
+.TE
+
+.sp
+.in +2
+.nf
+example#
+.fi
+.in -2
+.sp
+
+.SH SEE ALSO
+.sp
+.LP
+\fBkill\fR(1), \fBmount_ufs\fR(8), \fBsync\fR(8), \fBattributes\fR(7),
+\fBlargefile\fR(7), \fBufs\fR(4FS),
+.sp
+.LP
+\fI\fR
+.SH DIAGNOSTICS
+.sp
+.ne 2
+.na
+\fB\fIfile system\fR\fB: Not owner\fR\fR
+.ad
+.sp .6
+.RS 4n
+You must be root to use this command.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIfile system\fR \fB:Deadlock condition detected/avoided\fR\fR
+.ad
+.sp .6
+.RS 4n
+A file is enabled for accounting or swapping, on \fIfile system\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIfile system\fR\fB: Device busy\fR\fR
+.ad
+.sp .6
+.RS 4n
+Another process is setting the lock on \fIfile system\fR.
+.RE
+
diff --git a/usr/src/man/man8/lockstat.8 b/usr/src/man/man8/lockstat.8
new file mode 100644
index 0000000000..89646dfa57
--- /dev/null
+++ b/usr/src/man/man8/lockstat.8
@@ -0,0 +1,867 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH LOCKSTAT 8 "Dec 10, 2017"
+.SH NAME
+lockstat \- report kernel lock and profiling statistics
+.SH SYNOPSIS
+.LP
+.nf
+\fBlockstat\fR [\fB-ACEHI\fR] [\fB-e\fR \fIevent_list\fR] [\fB-i\fR \fIrate\fR]
+ [\fB-b\fR | \fB-t\fR | \fB-h\fR | \fB-s\fR \fIdepth\fR] [\fB-n\fR \fInrecords\fR]
+ [\fB-l\fR \fIlock\fR [, \fIsize\fR]] [\fB-d\fR \fIduration\fR]
+ [\fB-f\fR \fIfunction\fR [, \fIsize\fR]] [\fB-T\fR] [\fB-ckgwWRpP\fR] [\fB-D\fR \fIcount\fR]
+ [\fB-o\fR \fIfilename\fR] [\fB-x\fR \fIopt\fR [=val]] \fIcommand\fR [\fIargs\fR]
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBlockstat\fR utility gathers and displays kernel locking and profiling
+statistics. \fBlockstat\fR allows you to specify which events to watch (for
+example, spin on adaptive mutex, block on read access to rwlock due to waiting
+writers, and so forth) how much data to gather for each event, and how to
+display the data. By default, \fBlockstat\fR monitors all lock contention
+events, gathers frequency and timing data about those events, and displays the
+data in decreasing frequency order, so that the most common events appear
+first.
+.sp
+.LP
+\fBlockstat\fR gathers data until the specified command completes. For example,
+to gather statistics for a fixed-time interval, use \fBsleep\fR(1) as the
+command, as follows:
+.sp
+.LP
+\fBexample#\fR \fBlockstat\fR \fBsleep\fR \fB5\fR
+.sp
+.LP
+When the \fB-I\fR option is specified, \fBlockstat\fR establishes a
+per-processor high-level periodic interrupt source to gather profiling data.
+The interrupt handler simply generates a \fBlockstat\fR event whose caller is
+the interrupted PC (program counter). The profiling event is just like any
+other \fBlockstat\fR event, so all of the normal \fBlockstat\fR options are
+applicable.
+.sp
+.LP
+\fBlockstat\fR relies on DTrace to modify the running kernel's text to
+intercept events of interest. This imposes a small but measurable overhead on
+all system activity, so access to \fBlockstat\fR is restricted to super-user by
+default. The system administrator can permit other users to use \fBlockstat\fR
+by granting them additional DTrace privileges. Refer to the \fIDynamic
+Tracing Guide\fR for more information about DTrace security features.
+.SH OPTIONS
+.LP
+The following options are supported:
+.SS "Event Selection"
+.LP
+If no event selection options are specified, the default is \fB-C\fR.
+.sp
+.ne 2
+.na
+\fB\fB-A\fR\fR
+.ad
+.sp .6
+.RS 4n
+Watch all lock events. \fB-A\fR is equivalent to \fB-CH\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-C\fR\fR
+.ad
+.sp .6
+.RS 4n
+Watch contention events.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-E\fR\fR
+.ad
+.sp .6
+.RS 4n
+Watch error events.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\fR\fB-e\fR \fIevent_list\fR\fR
+.ad
+.sp .6
+.RS 4n
+Only watch the specified events. \fIevent\fR \fIlist\fR is a comma-separated
+list of events or ranges of events such as 1,4-7,35. Run \fBlockstat\fR with no
+arguments to get a brief description of all events.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-H\fR\fR
+.ad
+.sp .6
+.RS 4n
+Watch hold events.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-I\fR\fR
+.ad
+.sp .6
+.RS 4n
+Watch profiling interrupt events.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\fR\fB-i\fR \fIrate\fR\fR
+.ad
+.sp .6
+.RS 4n
+Interrupt rate (per second) for \fB-I\fR. The default is 97 Hz, so that
+profiling doesn't run in lockstep with the clock interrupt (which runs at 100
+Hz).
+.RE
+
+.SS "Data Gathering"
+.ne 2
+.na
+\fB\fB-x\fR \fIarg\fR[=\fIval\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Enable or modify a DTrace runtime option or D compiler option. The list of
+options is found in the \fI\fR. Boolean options are enabled by specifying their
+name. Options with values are set by separating the option name and value with
+an equals sign (=).
+.RE
+
+.SS "Data Gathering (Mutually Exclusive)"
+.ne 2
+.na
+\fB\fB-b\fR\fR
+.ad
+.sp .6
+.RS 4n
+Basic statistics: lock, caller, number of events.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-h\fR\fR
+.ad
+.sp .6
+.RS 4n
+Histogram: Timing plus time-distribution histograms.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\fR\fB-s\fR \fIdepth\fR\fR
+.ad
+.sp .6
+.RS 4n
+Stack trace: Histogram plus stack traces up to \fIdepth\fR frames deep.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-t\fR\fR
+.ad
+.sp .6
+.RS 4n
+Timing: Basic plus timing for all events [default].
+.RE
+
+.SS "Data Filtering"
+.ne 2
+.na
+\fB\fB\fR\fB-d\fR \fIduration\fR\fR
+.ad
+.sp .6
+.RS 4n
+Only watch events longer than \fIduration\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\fR\fB-f\fR \fIfunc[,size]\fR\fR
+.ad
+.sp .6
+.RS 4n
+Only watch events generated by \fIfunc\fR, which can be specified as a symbolic
+name or hex address. \fIsize\fR defaults to the \fBELF\fR symbol size if
+available, or \fB1\fR if not.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\fR\fB-l\fR \fIlock[,size]\fR\fR
+.ad
+.sp .6
+.RS 4n
+Only watch \fIlock\fR, which can be specified as a symbolic name or hex
+address. \fBsize\fR defaults to the \fBELF\fR symbol size or \fB1\fR if the
+symbol size is not available.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\fR\fB-n\fR \fInrecords\fR\fR
+.ad
+.sp .6
+.RS 4n
+Maximum number of data records.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-T\fR\fR
+.ad
+.sp .6
+.RS 4n
+Trace (rather than sample) events [off by default].
+.RE
+
+.SS "Data Reporting"
+.ne 2
+.na
+\fB\fB-c\fR\fR
+.ad
+.sp .6
+.RS 4n
+Coalesce lock data for lock arrays (for example, \fBpse_mutex[]\fR).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\fR\fB-D\fR \fIcount\fR\fR
+.ad
+.sp .6
+.RS 4n
+Only display the top \fIcount\fR events of each type.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-g\fR\fR
+.ad
+.sp .6
+.RS 4n
+Show total events generated by function. For example, if \fBfoo()\fR calls
+\fBbar()\fR in a loop, the work done by \fBbar()\fR counts as work generated by
+\fBfoo()\fR (along with any work done by \fBfoo()\fR itself). The \fB-g\fR
+option works by counting the total number of stack frames in which each
+function appears. This implies two things: (1) the data reported by \fB-g\fR
+can be misleading if the stack traces are not deep enough, and (2) functions
+that are called recursively might show greater than 100% activity. In light of
+issue (1), the default data gathering mode when using \fB-g\fR is \fB-s\fR
+\fB50\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-k\fR\fR
+.ad
+.sp .6
+.RS 4n
+Coalesce PCs within functions.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\fR\fB-o\fR \fIfilename\fR\fR
+.ad
+.sp .6
+.RS 4n
+Direct output to \fIfilename\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-P\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sort data by (\fIcount * time\fR) product.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR\fR
+.ad
+.sp .6
+.RS 4n
+Parsable output format.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-R\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display rates (events per second) rather than counts.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-W\fR\fR
+.ad
+.sp .6
+.RS 4n
+Whichever: distinguish events only by caller, not by lock.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-w\fR\fR
+.ad
+.sp .6
+.RS 4n
+Wherever: distinguish events only by lock, not by caller.
+.RE
+
+.SH DISPLAY FORMATS
+.LP
+The following headers appear over various columns of data.
+.sp
+.ne 2
+.na
+\fB\fBCount\fR or \fBops/s\fR\fR
+.ad
+.sp .6
+.RS 4n
+Number of times this event occurred, or the rate (times per second) if \fB-R\fR
+was specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBindv\fR\fR
+.ad
+.sp .6
+.RS 4n
+Percentage of all events represented by this individual event.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBgenr\fR\fR
+.ad
+.sp .6
+.RS 4n
+Percentage of all events generated by this function.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcuml\fR\fR
+.ad
+.sp .6
+.RS 4n
+Cumulative percentage; a running total of the individuals.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrcnt\fR\fR
+.ad
+.sp .6
+.RS 4n
+Average reference count. This will always be \fB1\fR for exclusive locks
+(mutexes, spin locks, rwlocks held as writer) but can be greater than \fB1\fR
+for shared locks (rwlocks held as reader).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnsec\fR\fR
+.ad
+.sp .6
+.RS 4n
+Average duration of the events in nanoseconds, as appropriate for the event.
+For the profiling event, duration means interrupt latency.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBLock\fR\fR
+.ad
+.sp .6
+.RS 4n
+Address of the lock; displayed symbolically if possible.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBCPU+PIL\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBCPU\fR plus processor interrupt level (\fBPIL\fR). For example, if \fBCPU\fR
+4 is interrupted while at \fBPIL\fR 6, this will be reported as \fBcpu[4]+6\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBCaller\fR\fR
+.ad
+.sp .6
+.RS 4n
+Address of the caller; displayed symbolically if possible.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRMeasuring Kernel Lock Contention
+.sp
+.in +2
+.nf
+example# \fBlockstat sleep 5\fR
+Adaptive mutex spin: 2210 events in 5.055 seconds (437 events/sec)
+.fi
+.in -2
+.sp
+
+.sp
+.in +2
+.nf
+Count indv cuml rcnt nsec Lock Caller
+------------------------------------------------------------------------
+ 269 12% 12% 1.00 2160 service_queue background+0xdc
+ 249 11% 23% 1.00 86 service_queue qenable_locked+0x64
+ 228 10% 34% 1.00 131 service_queue background+0x15c
+ 68 3% 37% 1.00 79 0x30000024070 untimeout+0x1c
+ 59 3% 40% 1.00 384 0x300066fa8e0 background+0xb0
+ 43 2% 41% 1.00 30 rqcred_lock svc_getreq+0x3c
+ 42 2% 43% 1.00 341 0x30006834eb8 background+0xb0
+ 41 2% 45% 1.00 135 0x30000021058 untimeout+0x1c
+ 40 2% 47% 1.00 39 rqcred_lock svc_getreq+0x260
+ 37 2% 49% 1.00 2372 0x300068e83d0 hmestart+0x1c4
+ 36 2% 50% 1.00 77 0x30000021058 timeout_common+0x4
+ 36 2% 52% 1.00 354 0x300066fa120 background+0xb0
+ 32 1% 53% 1.00 97 0x30000024070 timeout_common+0x4
+ 31 1% 55% 1.00 2923 0x300069883d0 hmestart+0x1c4
+ 29 1% 56% 1.00 366 0x300066fb290 background+0xb0
+ 28 1% 57% 1.00 117 0x3000001e040 untimeout+0x1c
+ 25 1% 59% 1.00 93 0x3000001e040 timeout_common+0x4
+ 22 1% 60% 1.00 25 0x30005161110 sync_stream_buf+0xdc
+ 21 1% 60% 1.00 291 0x30006834eb8 putq+0xa4
+ 19 1% 61% 1.00 43 0x3000515dcb0 mdf_alloc+0xc
+ 18 1% 62% 1.00 456 0x30006834eb8 qenable+0x8
+ 18 1% 63% 1.00 61 service_queue queuerun+0x168
+ 17 1% 64% 1.00 268 0x30005418ee8 vmem_free+0x3c
+[...]
+
+R/W reader blocked by writer: 76 events in 5.055 seconds (15 events/sec)
+
+Count indv cuml rcnt nsec Lock Caller
+------------------------------------------------------------------------
+ 23 30% 30% 1.00 22590137 0x300098ba358 ufs_dirlook+0xd0
+ 17 22% 53% 1.00 5820995 0x3000ad815e8 find_bp+0x10
+ 13 17% 70% 1.00 2639918 0x300098ba360 ufs_iget+0x198
+ 4 5% 75% 1.00 3193015 0x300098ba360 ufs_getattr+0x54
+ 3 4% 79% 1.00 7953418 0x3000ad817c0 find_bp+0x10
+ 3 4% 83% 1.00 935211 0x3000ad815e8 find_read_lof+0x14
+ 2 3% 86% 1.00 16357310 0x300073a4720 find_bp+0x10
+ 2 3% 88% 1.00 2072433 0x300073a4720 find_read_lof+0x14
+ 2 3% 91% 1.00 1606153 0x300073a4370 find_bp+0x10
+ 1 1% 92% 1.00 2656909 0x300107e7400 ufs_iget+0x198
+[...]
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRMeasuring Hold Times
+.sp
+.in +2
+.nf
+example# \fBlockstat -H -D 10 sleep 1\fR
+Adaptive mutex spin: 513 events
+.fi
+.in -2
+.sp
+
+.sp
+.in +2
+.nf
+Count indv cuml rcnt nsec Lock Caller
+-------------------------------------------------------------------------
+ 480 5% 5% 1.00 1136 0x300007718e8 putnext+0x40
+ 286 3% 9% 1.00 666 0x3000077b430 getf+0xd8
+ 271 3% 12% 1.00 537 0x3000077b430 msgio32+0x2fc
+ 270 3% 15% 1.00 3670 0x300007718e8 strgetmsg+0x3d4
+ 270 3% 18% 1.00 1016 0x300007c38b0 getq_noenab+0x200
+ 264 3% 20% 1.00 1649 0x300007718e8 strgetmsg+0xa70
+ 216 2% 23% 1.00 6251 tcp_mi_lock tcp_snmp_get+0xfc
+ 206 2% 25% 1.00 602 thread_free_lock clock+0x250
+ 138 2% 27% 1.00 485 0x300007c3998 putnext+0xb8
+ 138 2% 28% 1.00 3706 0x300007718e8 strrput+0x5b8
+-------------------------------------------------------------------------
+[...]
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRMeasuring Hold Times for Stack Traces Containing a Specific
+Function
+.sp
+.in +2
+.nf
+example# \fBlockstat -H -f tcp_rput_data -s 50 -D 10 sleep 1\fR
+Adaptive mutex spin: 11 events in 1.023 seconds (11
+events/sec)
+.fi
+.in -2
+.sp
+
+.sp
+.in +2
+.nf
+-------------------------------------------------------------------------
+Count indv cuml rcnt nsec Lock Caller
+ 9 82% 82% 1.00 2540 0x30000031380 tcp_rput_data+0x2b90
+
+ nsec ------ Time Distribution ------ count Stack
+ 256 |@@@@@@@@@@@@@@@@ 5 tcp_rput_data+0x2b90
+ 512 |@@@@@@ 2 putnext+0x78
+ 1024 |@@@ 1 ip_rput+0xec4
+ 2048 | 0 _c_putnext+0x148
+ 4096 | 0 hmeread+0x31c
+ 8192 | 0 hmeintr+0x36c
+ 16384 |@@@ 1
+sbus_intr_wrapper+0x30
+[...]
+
+Count indv cuml rcnt nsec Lock Caller
+ 1 9% 91% 1.00 1036 0x30000055380 freemsg+0x44
+
+ nsec ------ Time Distribution ------ count Stack
+ 1024 |@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 1 freemsg+0x44
+ tcp_rput_data+0x2fd0
+ putnext+0x78
+ ip_rput+0xec4
+ _c_putnext+0x148
+ hmeread+0x31c
+ hmeintr+0x36c
+
+sbus_intr_wrapper+0x30
+-------------------------------------------------------------------------
+[...]
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 4 \fRBasic Kernel Profiling
+.sp
+.LP
+For basic profiling, we don't care whether the profiling interrupt sampled
+\fBfoo()\fR\fB+0x4c\fR or \fBfoo()\fR\fB+0x78\fR; we care only that it sampled
+somewhere in \fBfoo()\fR, so we use \fB-k\fR. The \fBCPU\fR and \fBPIL\fR
+aren't relevant to basic profiling because we are measuring the system as a
+whole, not a particular \fBCPU\fR or interrupt level, so we use \fB-W\fR.
+
+.sp
+.in +2
+.nf
+example# \fBlockstat -kIW -D 20 ./polltest\fR
+Profiling interrupt: 82 events in 0.424 seconds (194
+events/sec)
+.fi
+.in -2
+.sp
+
+.sp
+.in +2
+.nf
+Count indv cuml rcnt nsec Hottest CPU+PIL Caller
+-----------------------------------------------------------------------
+ 8 10% 10% 1.00 698 cpu[1] utl0
+ 6 7% 17% 1.00 299 cpu[0] read
+ 5 6% 23% 1.00 124 cpu[1] getf
+ 4 5% 28% 1.00 327 cpu[0] fifo_read
+ 4 5% 33% 1.00 112 cpu[1] poll
+ 4 5% 38% 1.00 212 cpu[1] uiomove
+ 4 5% 43% 1.00 361 cpu[1] mutex_tryenter
+ 3 4% 46% 1.00 682 cpu[0] write
+ 3 4% 50% 1.00 89 cpu[0] pcache_poll
+ 3 4% 54% 1.00 118 cpu[1] set_active_fd
+ 3 4% 57% 1.00 105 cpu[0] syscall_trap32
+ 3 4% 61% 1.00 640 cpu[1] (usermode)
+ 2 2% 63% 1.00 127 cpu[1] fifo_poll
+ 2 2% 66% 1.00 300 cpu[1] fifo_write
+ 2 2% 68% 1.00 669 cpu[0] releasef
+ 2 2% 71% 1.00 112 cpu[1] bt_getlowbit
+ 2 2% 73% 1.00 247 cpu[1] splx
+ 2 2% 76% 1.00 503 cpu[0] mutex_enter
+ 2 2% 78% 1.00 467 cpu[0]+10 disp_lock_enter
+ 2 2% 80% 1.00 139 cpu[1] default_copyin
+-----------------------------------------------------------------------
+[...]
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 5 \fRGenerated-load Profiling
+.sp
+.LP
+In the example above, 5% of the samples were in \fBpoll()\fR. This tells us how
+much time was spent inside \fBpoll()\fR itself, but tells us nothing about how
+much work was \fBgenerated\fR by \fBpoll()\fR; that is, how much time we spent
+in functions called by \fBpoll()\fR. To determine that, we use the \fB-g\fR
+option. The example below shows that although \fBpolltest\fR spends only 5% of
+its time in \fBpoll()\fR itself, \fBpoll()\fR-induced work accounts for 34% of
+the load.
+
+.sp
+.LP
+Note that the functions that generate the profiling interrupt
+(\fBlockstat_intr()\fR, \fBcyclic_fire()\fR, and so forth) appear in every
+stack trace, and therefore are considered to have generated 100% of the load.
+This illustrates an important point: the generated load percentages do
+\fBnot\fR add up to 100% because they are not independent. If 72% of all stack
+traces contain both \fBfoo()\fR and \fBbar()\fR, then both \fBfoo()\fR and
+\fBbar()\fR are 72% load generators.
+
+.sp
+.in +2
+.nf
+example# \fBlockstat -kgIW -D 20 ./polltest\fR
+Profiling interrupt: 80 events in 0.412 seconds (194 events/sec)
+.fi
+.in -2
+.sp
+
+.sp
+.in +2
+.nf
+Count genr cuml rcnt nsec Hottest CPU+PIL Caller
+-------------------------------------------------------------------------
+ 80 100% ---- 1.00 310 cpu[1] lockstat_intr
+ 80 100% ---- 1.00 310 cpu[1] cyclic_fire
+ 80 100% ---- 1.00 310 cpu[1] cbe_level14
+ 80 100% ---- 1.00 310 cpu[1] current_thread
+ 27 34% ---- 1.00 176 cpu[1] poll
+ 20 25% ---- 1.00 221 cpu[0] write
+ 19 24% ---- 1.00 249 cpu[1] read
+ 17 21% ---- 1.00 232 cpu[0] write32
+ 17 21% ---- 1.00 207 cpu[1] pcache_poll
+ 14 18% ---- 1.00 319 cpu[0] fifo_write
+ 13 16% ---- 1.00 214 cpu[1] read32
+ 10 12% ---- 1.00 208 cpu[1] fifo_read
+ 10 12% ---- 1.00 787 cpu[1] utl0
+ 9 11% ---- 1.00 178 cpu[0] pcacheset_resolve
+ 9 11% ---- 1.00 262 cpu[0] uiomove
+ 7 9% ---- 1.00 506 cpu[1] (usermode)
+ 5 6% ---- 1.00 195 cpu[1] fifo_poll
+ 5 6% ---- 1.00 136 cpu[1] syscall_trap32
+ 4 5% ---- 1.00 139 cpu[0] releasef
+ 3 4% ---- 1.00 277 cpu[1] polllock
+-------------------------------------------------------------------------
+[...]
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 6 \fRGathering Lock Contention and Profiling Data for a Specific
+Module
+.sp
+.LP
+In this example we use the \fB-f\fR option not to specify a single function,
+but rather to specify the entire text space of the \fBsbus\fR module. We gather
+both lock contention and profiling statistics so that contention can be
+correlated with overall load on the module.
+
+.sp
+.in +2
+.nf
+example# \fBmodinfo | grep sbus\fR
+ 24 102a8b6f b8b4 59 1 sbus (SBus (sysio) nexus driver)
+.fi
+.in -2
+.sp
+
+.sp
+.in +2
+.nf
+example# \fBlockstat -kICE -f 0x102a8b6f,0xb8b4 sleep 10\fR
+Adaptive mutex spin: 39 events in 10.042 seconds (4 events/sec)
+.fi
+.in -2
+.sp
+
+.sp
+.in +2
+.nf
+Count indv cuml rcnt nsec Lock Caller
+-------------------------------------------------------------------------
+ 15 38% 38% 1.00 206 0x30005160528 sync_stream_buf
+ 7 18% 56% 1.00 14 0x30005160d18 sync_stream_buf
+ 6 15% 72% 1.00 27 0x300060c3118 sync_stream_buf
+ 5 13% 85% 1.00 24 0x300060c3510 sync_stream_buf
+ 2 5% 90% 1.00 29 0x300060c2d20 sync_stream_buf
+ 2 5% 95% 1.00 24 0x30005161cf8 sync_stream_buf
+ 1 3% 97% 1.00 21 0x30005161110 sync_stream_buf
+ 1 3% 100% 1.00 23 0x30005160130 sync_stream_buf
+[...]
+
+Adaptive mutex block: 9 events in 10.042 seconds (1 events/sec)
+
+Count indv cuml rcnt nsec Lock Caller
+-------------------------------------------------------------------------
+ 4 44% 44% 1.00 156539 0x30005160528 sync_stream_buf
+ 2 22% 67% 1.00 763516 0x30005160d18 sync_stream_buf
+ 1 11% 78% 1.00 462130 0x300060c3510 sync_stream_buf
+ 1 11% 89% 1.00 288749 0x30005161110 sync_stream_buf
+ 1 11% 100% 1.00 1015374 0x30005160130 sync_stream_buf
+[...]
+
+Profiling interrupt: 229 events in 10.042 seconds (23 events/sec)
+
+Count indv cuml rcnt nsec Hottest CPU+PIL Caller
+
+-------------------------------------------------------------------------
+ 89 39% 39% 1.00 426 cpu[0]+6 sync_stream_buf
+ 64 28% 67% 1.00 398 cpu[0]+6 sbus_intr_wrapper
+ 23 10% 77% 1.00 324 cpu[0]+6 iommu_dvma_kaddr_load
+ 21 9% 86% 1.00 512 cpu[0]+6 iommu_tlb_flush
+ 14 6% 92% 1.00 342 cpu[0]+6 iommu_dvma_unload
+ 13 6% 98% 1.00 306 cpu[1] iommu_dvma_sync
+ 5 2% 100% 1.00 389 cpu[1] iommu_dma_bindhdl
+-------------------------------------------------------------------------
+[...]
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 7 \fRDetermining the Average PIL (processor interrupt level) for a
+CPU
+.sp
+.in +2
+.nf
+example# \fBlockstat -Iw -l cpu[3] ./testprog\fR
+
+Profiling interrupt: 14791 events in 152.463 seconds (97 events/sec)
+
+Count indv cuml rcnt nsec CPU+PIL Hottest Caller
+
+-----------------------------------------------------------------------
+13641 92% 92% 1.00 253 cpu[3] (usermode)
+ 579 4% 96% 1.00 325 cpu[3]+6 ip_ocsum+0xe8
+ 375 3% 99% 1.00 411 cpu[3]+10 splx
+ 154 1% 100% 1.00 527 cpu[3]+4 fas_intr_svc+0x80
+ 41 0% 100% 1.00 293 cpu[3]+13 send_mondo+0x18
+ 1 0% 100% 1.00 266 cpu[3]+12 zsa_rxint+0x400
+-----------------------------------------------------------------------
+[...]
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 8 \fRDetermining which Subsystem is Causing the System to be Busy
+.sp
+.in +2
+.nf
+example# \fBlockstat -s 10 -I sleep 20\fR
+
+Profiling interrupt: 4863 events in 47.375 seconds (103 events/sec)
+
+Count indv cuml rcnt nsec CPU+PIL Caller
+
+-----------------------------------------------------------------------
+1929 40% 40% 0.00 3215 cpu[0] usec_delay+0x78
+ nsec ------ Time Distribution ------ count Stack
+ 4096 |@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 1872 ata_wait+0x90
+ 8192 | 27 acersb_get_intr_status+0x34
+ 16384 | 29 ata_set_feature+0x124
+ 32768 | 1 ata_disk_start+0x15c
+ ata_hba_start+0xbc
+ ghd_waitq_process_and \e
+ _mutex_hold+0x70
+ ghd_waitq_process_and \e
+ _mutex_exit+0x4
+ ghd_transport+0x12c
+ ata_disk_tran_start+0x108
+-----------------------------------------------------------------------
+[...]
+.fi
+.in -2
+.sp
+
+.SH SEE ALSO
+.LP
+.BR lockstat (4D),
+.BR attributes (7),
+.BR dtrace (8),
+.BR plockstat (8),
+.BR mutex (9F),
+.BR rwlock (9F)
+.sp
+.LP
+\fIDynamic Tracing Guide\fR:
+.sp
+.LP
+https://illumos.org/books/dtrace/
+
+.SH NOTES
+.LP
+Tail-call elimination can affect call sites. For example, if
+\fBfoo()\fR\fB+0x50\fR calls \fBbar()\fR and the last thing \fBbar()\fR does is
+call \fBmutex_exit()\fR, the compiler can arrange for \fBbar()\fR to branch to
+\fBmutex_exit()\fR with a return address of \fBfoo()\fR\fB+0x58\fR. Thus, the
+\fBmutex_exit()\fR in \fBbar()\fR will appear as though it occurred at
+\fBfoo()\fR\fB+0x58\fR.
+.sp
+.LP
+The \fBPC\fR in the stack frame in which an interrupt occurs can be bogus
+because, between function calls, the compiler is free to use the return address
+register for local storage.
+.sp
+.LP
+When using the \fB-I\fR and \fB-s\fR options together, the interrupted PC will
+usually not appear anywhere in the stack since the interrupt handler is entered
+asynchronously, not by a function call from that \fBPC\fR.
+.sp
+.LP
+The \fBlockstat\fR technology is provided on an as-is basis. The format and
+content of \fBlockstat\fR output reflect the current kernel
+implementation and are therefore subject to change in future releases.
diff --git a/usr/src/man/man8/lofiadm.8 b/usr/src/man/man8/lofiadm.8
new file mode 100644
index 0000000000..beb290fa0b
--- /dev/null
+++ b/usr/src/man/man8/lofiadm.8
@@ -0,0 +1,640 @@
+'\" te
+.\" Copyright 2016 Toomas Soome <tsoome@me.com>
+.\" Copyright 2013 Nexenta Systems, Inc. All rights reserved.
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
+.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.Dd Jun 14, 2016
+.Dt LOFIADM 8
+.Os
+.Sh NAME
+.Nm lofiadm
+.Nd administer files available as block devices through lofi
+.Sh SYNOPSIS
+.Nm
+.Op Fl r
+.Op Fl l
+.Fl a Ar file Op Ar device
+.Nm
+.Op Fl r
+.Fl c
+.Ar crypto_algorithm
+.Fl a
+.Ar file Op Ar device
+.Nm
+.Op Fl r
+.Fl c Ar crypto_algorithm
+.Fl k Ar raw_key_file
+.Fl a Ar file Op Ar device
+.Nm
+.Op Fl r
+.Fl c Ar crypto_algorithm
+.Fl T Ar token_key
+.Fl a Ar file Op Ar device
+.Nm
+.Op Fl r
+.Fl c Ar crypto_algorithm
+.Fl T Ar token_key
+.Fl k Ar wrapped_key_file
+.Fl a Ar file Op Ar device
+.Nm
+.Op Fl r
+.Fl c Ar crypto_algorithm
+.Fl e
+.Fl a Ar file Op Ar device
+.Nm
+.Fl C Ar algorithm
+.Op Fl s Ar segment_size
+.Ar file
+.Nm
+.Fl d Ar file Ns | Ns Ar device
+.Nm
+.Fl U Ar file
+.Nm
+.Op Ar file Ns | Ns device
+.Sh DESCRIPTION
+.Nm
+administers
+.Sy lofi ,
+the loopback file driver.
+.Sy lofi
+allows a file to be associated with a block device.
+That file can then be accessed through the block device.
+This is useful when the file contains an image of some filesystem (such as a
+floppy or
+.Sy CD-ROM
+image), because the block device can then be used with the normal system
+utilities for mounting, checking or repairing filesystems.
+See
+.Xr fsck 8
+and
+.Xr mount 8 .
+.Pp
+Use
+.Nm
+to add a file as a loopback device, remove such an
+association, or print information about the current associations.
+.Pp
+Encryption and compression options are mutually exclusive on the command line.
+Further, an encrypted file cannot be compressed later, nor can a compressed
+file be encrypted later.
+.Pp
+In the global zone,
+.Nm
+can be used on both the global
+zone devices and all devices owned by other non-global zones on the system.
+.Ss Labeled Devices
+If the command line flag,
+.Fl l ,
+is used while creating a loopack device,
+.Sy lofi
+will create a labeled loopback
+device, and will generate device links in
+.Pa /dev/{dsk,rdsk}
+directories for partitions or slices.
+.Pp
+Before using these devices, users should create or verify
+partitioning by using partition management tools such as
+.Xr format 8 and
+.Xr fdisk 8 .
+Once the device has been appropriately partitioned, the labeled
+device can be used as normal disk to create and mount file systems and to store
+data.
+Mappings created by
+.Nm
+are not permanent and not persisted by the system.
+If power is lost or the system is rebooted, then the mappings will need to be
+created again.
+.Pp
+The partition table requires space from the mapped file.
+.Sy lofi
+does not support converting previously created unlabeled loopback device images
+to labeled loopback devices.
+If an unlabeled device is used as a labeled device, writing to it will corrupt
+it.
+.Sh OPTIONS
+The following options are supported:
+.Bl -tag -width Ds
+.It Fl a Ar file Op Ar device
+Add
+.Sy file
+as a block device.
+.Pp
+If
+.Sy device
+is not specified, an available device is picked.
+.Pp
+If
+.Sy device
+is specified,
+.Nm
+attempts to assign it to
+.Sy file .
+.Sy device
+must be available or
+.Nm
+will fail.
+The ability to specify a device is provided for use in scripts that wish to
+reestablish a particular set of associations.
+A device may not be specified when using a labeled lofi device.
+.It Fl C Ar {gzip | gzip-N | lzma}
+Compress the file with the specified compression algorithm.
+.Pp
+The
+.Sy gzip
+compression algorithm uses the same compression as the open-source
+.Sy gzip
+command.
+You can specify the
+.Sy gzip
+level by using the value gzip-\fR\fIN\fR where \fIN\fR is 6 (fast) or 9
+(best compression ratio).
+Currently,
+.Sy gzip ,
+without a number, is equivalent to
+.Sy gzip-6
+(which is also the default for the
+.Sy gzip
+command).
+.Pp
+.Sy lzma
+stands for the LZMA (Lempel-Ziv-Markov) compression algorithm.
+.Pp
+Note that you cannot write to a compressed file, nor can you mount a compressed
+file read/write.
+.It Fl d Ar file Ns | Ns Ar device
+Remove an association by
+.Sy file
+or
+.Sy device
+name, if the associated block device is not busy, and deallocates the block
+device.
+.It Fl l
+This option should be used with
+.Fl a
+option to create labeled loopback device.
+If created in local zone, the device has to be enabled in zone configuration.
+.It Fl r
+If the
+.Fl r
+option is specified before the
+.Fl a
+option, the
+.Sy device
+will be opened read-only.
+.It Fl s Ar segment_size
+The segment size to use to divide the file being compressed.
+.Sy segment_size
+can be an integer multiple of 512.
+.It Fl U Ar file
+Uncompress a compressed file.
+.El
+.Pp
+The following options are used when the file is encrypted:
+.Bl -tag -width Ds
+.It Fl c Ar crypto_algorithm
+Select the encryption algorithm.
+The algorithm must be specified when encryption is enabled because the algorithm
+is not stored in the disk image.
+.Pp
+If none of
+.Fl e ,
+.Fl k ,
+or
+.Fl T
+is specified,
+.Nm
+prompts for a passphrase, with a minimum length of eight characters, to be
+entered.
+The passphrase is used to derive a symmetric encryption key using PKCS#5 PBKD2.
+.It Fl k Ar raw_key_file | Ar wrapped_key_file
+Path to raw or wrapped symmetric encryption key.
+If a PKCS#11 object is also given with the
+.Fl T
+option, then the key is wrapped by that object.
+If
+.Fl T
+is not specified, the key is used raw.
+.It Fl T Ar token_key
+The key in a PKCS#11 token to use for the encryption or for unwrapping the key
+file.
+.Pp
+If
+.Fl k
+is also specified,
+.Fl T
+identifies the unwrapping key, which must be an RSA private key.
+.It Fl e
+Generate an ephemeral symmetric encryption key.
+.El
+.Sh OPERANDS
+The following operands are supported:
+.Bl -tag -width Ds
+.It Ar crypto_algorithm
+One of:
+.Sy aes-128-cbc ,
+.Sy aes-192-cbc ,
+.Sy aes-256-cbc ,
+.Sy des3-cbc ,
+.Sy blowfish-cbc .
+.It Ar device
+Display the file name associated with the block device
+.Sy device .
+.Pp
+Without arguments, print a list of the current associations.
+Filenames must be valid absolute pathnames.
+.Pp
+When a file is added, it is opened for reading or writing by root.
+Any restrictions apply (such as restricted root access over
+.Sy NFS Ns ).
+The file is held open until the association is removed.
+It is not actually accessed until the block device is used, so it will never be
+written to if the block device is only opened read-only.
+.Pp
+Note that the filename may appear as "?" if it is not possible to resolve the
+path in the current context (for example, if it's an NFS path in a non-global
+zone).
+.It Ar file
+Display the block device associated with
+.Sy file .
+.It Ar raw_key_file
+Path to a file of the appropriate length, in bits, to use as a raw symmetric
+encryption key.
+.It Ar token_key
+PKCS#11 token object in the format:
+.Pp
+.Ar token_name Ns \&: Ns Ar manufacturer_id Ns \&: Ns
+.Ar serial_number Ns \&: Ns Ar key_label
+.Pp
+All but the key label are optional and can be empty.
+For example, to specify a token object with only its key label
+.Sy MylofiKey ,
+use
+.Fl T Sy :::MylofiKey .
+.It Ar wrapped_key_file
+Path to file containing a symmetric encryption key wrapped by the RSA private
+key specified by
+.Fl T .
+.El
+.Sh ENVIRONMENT
+See
+.Xr environ 7
+for descriptions of the following environment variables
+that affect the execution of
+.Nm
+:
+.Sy LC_CTYPE ,
+.Sy LC_MESSAGES
+and
+.Sy NLSPATH .
+.Sh EXIT STATUS
+The following exit values are returned:
+.Bl -tag -width Ds
+.It Sy 0
+Successful completion.
+.It Sy >0
+An error occurred.
+.El
+.Sh EXAMPLES
+.Bl -tag -width Ds
+.It Sy Example 1 No Mounting an Existing CD-ROM Image
+You should ensure that Solaris understands the image before creating the
+.Sy CD .
+.Sy lofi
+allows you to mount the image and see if it works.
+.Pp
+This example mounts an existing
+.Sy CD-ROM
+image
+.Pf ( Sy sparc.iso Ns ),
+of the
+.Sy Red Hat 6.0 CD
+which was downloaded from the Internet.
+It was created with the
+.Sy mkisofs
+utility from the Internet.
+.Pp
+Use
+.Nm
+to attach a block device to it:
+.Bd -literal
+# lofiadm -a /home/mike_s/RH6.0/sparc.iso
+/dev/lofi/1
+.Ed
+.Pp
+.Nm
+picks the device and prints the device name to the standard
+output.
+You can run
+.Nm
+again by issuing the following command:
+.Bd -literal
+# lofiadm
+Block Device File Options
+/dev/lofi/1 /home/mike_s/RH6.0/sparc.iso -
+.Ed
+.Pp
+Or, you can give it one name and ask for the other, by issuing the following
+command:
+.Bd -literal
+# lofiadm /dev/lofi/1
+/home/mike_s/RH6.0/sparc.iso
+.Ed
+.Pp
+Use the
+.Xr mount 8
+command to mount the image:
+.Bd -literal
+# mount -F hsfs -o ro /dev/lofi/1 /mnt
+.Ed
+.Pp
+Check to ensure that Solaris understands the image:
+.Bd -literal
+# df -k /mnt
+Filesystem kbytes used avail capacity Mounted on
+/dev/lofi/1 512418 512418 0 100% /mnt
+# ls /mnt
+\&./ RedHat/ doc/ ls-lR rr_moved/
+\&../ TRANS.TBL dosutils/ ls-lR.gz sbin@
+\&.buildlog bin@ etc@ misc/ tmp/
+COPYING boot/ images/ mnt/ usr@
+README boot.cat* kernels/ modules/
+RPM-PGP-KEY dev@ lib@ proc/
+.Ed
+.Pp
+Solaris can mount the CD-ROM image, and understand the filenames.
+The image was created properly, and you can now create the
+.Sy CD-ROM
+with confidence.
+.Pp
+As a final step, unmount and detach the images:
+.Bd -literal
+# umount /mnt
+# lofiadm -d /dev/lofi/1
+# lofiadm
+Block Device File Options
+.Ed
+.It Sy Example 2 No Mounting a Floppy Image
+This is similar to the first example.
+.Pp
+Using
+.Sy lofi
+to help you mount files that contain floppy images is helpful
+if a floppy disk contains a file that you need, but the machine which you are
+on does not have a floppy drive.
+It is also helpful if you do not want to take the time to use the
+.Sy dd
+command to copy the image to a floppy.
+.Pp
+This is an example of getting to
+.Sy MDB
+floppy for Solaris on an x86 platform:
+.Bd -literal
+# lofiadm -a /export/s28/MDB_s28x_wos/latest/boot.3
+/dev/lofi/1
+# mount -F pcfs /dev/lofi/1 /mnt
+# ls /mnt
+\&./ COMMENT.BAT* RC.D/ SOLARIS.MAP*
+\&../ IDENT* REPLACE.BAT* X/
+APPEND.BAT* MAKEDIR.BAT* SOLARIS/
+# umount /mnt
+# lofiadm -d /export/s28/MDB_s28x_wos/latest/boot.3
+.Ed
+.It Sy Example 3 No Making a Sy UFS No Filesystem on a File
+Making a
+.Sy UFS
+filesystem on a file can be useful, particularly if a test
+suite requires a scratch filesystem.
+It can be painful (or annoying) to have to repartition a disk just for the test
+suite, but you do not have to.
+You can
+.Sy newfs
+a file with
+.Sy lofi .
+.Pp
+Create the file:
+.Bd -literal
+# mkfile 35m /export/home/test
+.Ed
+.Pp
+Attach it to a block device.
+You also get the character device that
+.Sy newfs
+requires, so
+.Sy newfs
+that:
+.Bd -literal
+# lofiadm -a /export/home/test
+/dev/lofi/1
+# newfs /dev/rlofi/1
+newfs: construct a new file system /dev/rlofi/1: (y/n)? y
+/dev/rlofi/1: 71638 sectors in 119 cylinders of 1 tracks, 602 sectors
+ 35.0MB in 8 cyl groups (16 c/g, 4.70MB/g, 2240 i/g)
+super-block backups (for fsck -F ufs -o b=#) at:
+ 32, 9664, 19296, 28928, 38560, 48192, 57824, 67456,
+.Ed
+.Pp
+Note that
+.Sy ufs
+might not be able to use the entire file.
+Mount and use the filesystem:
+.Bd -literal
+# mount /dev/lofi/1 /mnt
+# df -k /mnt
+Filesystem kbytes used avail capacity Mounted on
+/dev/lofi/1 33455 9 30101 1% /mnt
+# ls /mnt
+\&./ ../ lost+found/
+# umount /mnt
+# lofiadm -d /dev/lofi/1
+.Ed
+.It Sy Example 4 No Creating a PC (FAT) File System on a Unix File
+The following series of commands creates a
+.Sy FAT
+file system on a Unix file.
+The file is associated with a block device created by
+.Nm
+.
+.Bd -literal
+# mkfile 10M /export/test/testfs
+# lofiadm -a /export/test testfs
+/dev/lofi/1
+.Ed
+.Pp
+Note use of
+.Sy rlofi ,
+not
+.Sy lofi ,
+in following command.
+.Bd -literal
+# mkfs -F pcfs -o nofdisk,size=20480 /dev/rlofi/1
+Construct a new FAT file system on /dev/rlofi/1: (y/n)? y
+# mount -F pcfs /dev/lofi/1 /mnt
+# cd /mnt
+# df -k .
+Filesystem kbytes used avail capacity Mounted on
+/dev/lofi/1 10142 0 10142 0% /mnt
+.Ed
+.It Sy Example 5 No Compressing an Existing CD-ROM Image
+The following example illustrates compressing an existing CD-ROM image
+.Pf ( Sy solaris.iso Ns ),
+verifying that the image is compressed, and then uncompressing it.
+.Bd -literal
+# lofiadm -C gzip /export/home/solaris.iso
+.Ed
+.Pp
+Use
+.Nm
+to attach a block device to it:
+.Bd -literal
+# lofiadm -a /export/home/solaris.iso
+ /dev/lofi/1
+.Ed
+.Pp
+Check if the mapped image is compressed:
+.Bd -literal
+# lofiadm
+Block Device File Options
+/dev/lofi/1 /export/home/solaris.iso Compressed(gzip)
+/dev/lofi/2 /export/home/regular.iso -
+.Ed
+.Pp
+Unmap the compressed image and uncompress it:
+.Bd -literal
+# lofiadm -d /dev/lofi/1
+# lofiadm -U /export/home/solaris.iso
+.Ed
+.It Sy Example 6 No Creating an Encrypted UFS File System on a File
+This example is similar to the example of making a UFS filesystem on a file,
+above.
+.Pp
+Create the file:
+.Bd -literal
+# mkfile 35m /export/home/test
+.Ed
+.Pp
+Attach the file to a block device and specify that the file image is encrypted.
+As a result of this command, you obtain the character device, which is
+subsequently used by
+.Sy newfs :
+.Bd -literal
+# lofiadm -c aes-256-cbc -a /export/home/secrets
+Enter passphrase: My-M0th3r;l0v3s_m3+4lw4ys! (not echoed)
+Re-enter passphrase: My-M0th3r;l0v3s_m3+4lw4ys! (not echoed)
+/dev/lofi/1
+
+# newfs /dev/rlofi/1
+newfs: construct a new file system /dev/rlofi/1: (y/n)? y
+/dev/rlofi/1: 71638 sectors in 119 cylinders of 1 tracks, 602 sectors
+ 35.0MB in 8 cyl groups (16 c/g, 4.70MB/g, 2240 i/g)
+super-block backups (for fsck -F ufs -o b=#) at:
+32, 9664, 19296, 28928, 38560, 48192, 57824, 67456,
+.Ed
+.Pp
+The mapped file system shows that encryption is enabled:
+.Bd -literal
+# lofiadm
+Block Device File Options
+/dev/lofi/1 /export/home/secrets Encrypted
+.Ed
+.Pp
+Mount and use the filesystem:
+.Bd -literal
+# mount /dev/lofi/1 /mnt
+# cp moms_secret_*_recipe /mnt
+# ls /mnt
+\&./ moms_secret_cookie_recipe moms_secret_soup_recipe
+\&../ moms_secret_fudge_recipe moms_secret_stuffing_recipe
+lost+found/ moms_secret_meatloaf_recipe moms_secret_waffle_recipe
+# umount /mnt
+# lofiadm -d /dev/lofi/1
+.Ed
+.Pp
+Subsequent attempts to map the filesystem with the wrong key or the wrong
+encryption algorithm will fail:
+.Bd -literal
+# lofiadm -c blowfish-cbc -a /export/home/secrets\fR
+Enter passphrase: mommy (not echoed)
+Re-enter passphrase: mommy (not echoed)
+lofiadm: could not map file /root/lofi: Invalid argument
+# lofiadm
+Block Device File Options
+#
+.Ed
+.Pp
+Attempts to map the filesystem without encryption will succeed, however
+attempts to mount and use the filesystem will fail:
+.Bd -literal
+# lofiadm -a /export/home/secrets
+/dev/lofi/1
+# lofiadm
+Block Device File Options
+/dev/lofi/1 /export/home/secrets -
+# mount /dev/lofi/1 /mnt
+mount: /dev/lofi/1 is not this fstype
+#
+.Ed
+.El
+.Sh SEE ALSO
+.Xr lofi 4D ,
+.Xr lofs 4FS ,
+.Xr attributes 7 ,
+.Xr fdisk 8 ,
+.Xr format 8 ,
+.Xr fsck 8 ,
+.Xr mount 8 ,
+.Xr mount_ufs 8 ,
+.Xr newfs 8
+.Sh NOTES
+Just as you would not directly access a disk device that has mounted file
+systems, you should not access a file associated with a block device except
+through the
+.Sy lofi
+file driver.
+It might also be appropriate to ensure that the file has appropriate permissions
+to prevent such access.
+.Pp
+The abilities of
+.Nm
+, and who can use them, are controlled by the
+permissions of
+.Pa /dev/lofictl .
+Read-access allows query operations, such as
+listing all the associations.
+Write-access is required to do any state-changing operations, like adding an
+association.
+As shipped,
+.Pa /dev/lofictl
+is owned by
+.Sy root ,
+in group
+.Sy sys ,
+and mode
+.Sy 0644 ,
+so all users can do query operations but only root can change anything.
+The administrator can give users write-access, allowing them to add or
+delete associations, but that is very likely a security hole and should
+probably only be given to a trusted group.
+.Pp
+When mounting a filesystem image, take care to use appropriate mount options.
+In particular, the
+.Sy nosuid
+mount option might be appropriate for
+.Sy UFS
+images whose origin is unknown.
+Also, some options might not be useful or appropriate, like
+.Sy logging
+or
+.Sy forcedirectio
+for
+.Sy UFS .
+For compatibility purposes, a raw device is also exported along with the block
+device.
+For example,
+.Xr newfs 8
+requires one.
+.Pp
+The output of
+.Nm
+(without arguments) might change in future releases.
diff --git a/usr/src/man/man8/logadm.8 b/usr/src/man/man8/logadm.8
new file mode 100644
index 0000000000..e9d6c483bb
--- /dev/null
+++ b/usr/src/man/man8/logadm.8
@@ -0,0 +1,920 @@
+'\" te
+.\" Copyright (c) 2007 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH LOGADM 8 "June 20, 2021"
+.SH NAME
+logadm \- manage endlessly growing log files
+.SH SYNOPSIS
+.nf
+\fBlogadm\fR
+.fi
+
+.LP
+.nf
+\fBlogadm\fR [\fB-\fIoptions\fR\fR] \fIlogname\fR...
+.fi
+
+.SH DESCRIPTION
+\fBlogadm\fR is a general log rotation tool that is suitable for running from
+\fBcron\fR(8).
+.sp
+.LP
+Without arguments, \fBlogadm\fR reads the \fB/etc/logadm.conf\fR file, and for
+every entry found in that file checks the corresponding log file to see if it
+should be rotated. Typically this check is done each morning by an entry in the
+root's \fBcrontab\fR.
+.sp
+.LP
+If the \fIlogname\fR argument is specified, \fBlogadm\fR renames the
+corresponding log file by adding a suffix so that the most recent log file ends
+with \fB\&.0\fR (that is, \fIlogfile\fR\fB\&.0\fR), the next most recent ends
+with \fB\&.1\fR (that is, \fIlogfile\fR\fB\&.1\fR), and so forth. By default,
+ten versions of old log files are kept (that is, \fIlogfile\fR\fB\&.0\fR
+through \fIlogfile\fR\fB\&.9\fR). At the point when what would be the eleventh
+file is logged, \fBlogadm\fR automatically deletes the oldest version to keep
+the count of files at ten.
+.sp
+.LP
+\fBlogadm\fR takes a number of \fIoptions\fR. You can specify these options on
+the command line or in the \fB/etc/logadm.conf\fR file. The \fBlogadm\fR
+command searches \fB/etc/logadm.conf\fR for lines of the form \fIlogname\fR
+\fIoptions\fR
+.sp
+.ne 2
+.na
+\fB\fIlogname\fR\fR
+.ad
+.sp .6
+.RS 4n
+Identifies an entry in \fB/etc/logadm.conf\fR. This can be a name or the
+pathname of the log file. If you specify a log file, rather than a name, for
+this field, it must be a fully qualified pathname.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIoptions\fR\fR
+.ad
+.sp .6
+.RS 4n
+Identifies command line options exactly as they would be entered on the command
+line. This allows commonly used log rotation policies to be stored in the
+\fB/etc/logadm.conf\fR file. See \fBEXAMPLES\fR.
+.sp
+If \fIoptions\fR are specified both in \fB/etc/logadm.conf\fR and on the
+command line, those in the \fB/etc/logadm.conf\fR file are applied first.
+Therefore, the command line options override those in \fB/etc/logadm.conf\fR.
+.sp
+Log file names specified in \fB/etc/logadm.conf\fR may contain filename
+substitution characters such as \fB*\fR and \fB?\fR, that are supported by
+\fBcsh\fR(1).
+.RE
+
+.sp
+.LP
+Two options control when a log file is rotated. They are: \fB-s\fR size
+\fB-p\fR period.
+.sp
+.LP
+When using more than one of these options at a time, there is an implied
+\fBand\fR between them. This means that all conditions must be met before the
+log is rotated.
+.sp
+.LP
+If neither of these two options are specified, the default conditions for
+rotating a log file are: \fB\fR\fB-s\fR \fB1b\fR \fB-p\fR \fB1w\fR, which means
+the log file is only rotated if the size is non-zero and if at least 1 week has
+passed since the last time it was rotated.
+.sp
+.LP
+By specifying \fB\fR\fB-p\fR \fBnever\fR as a rotation condition, any other
+rotation conditions are ignored and \fBlogadm\fR moves on to the expiration of
+old log files. By specifying \fB\fR\fB-p\fR \fBnow\fR as a rotation condition,
+a log rotation is forced.
+.sp
+.LP
+Unless specified by the \fB-o\fR, \fB-g\fR, or \fB-m\fR options, \fBlogadm\fR
+replaces the log file (after renaming it) by creating an empty file whose
+owner, group ID, and permissions match the original file.
+.sp
+.LP
+Three options control when old log files are expired: \fB-A\fR age \fB-C\fR
+count \fB-S\fR size. These options expire the oldest log files until a
+particular condition or conditions are met. For example, the combination of the
+\fB\fR\fB-C\fR \fB5\fR and \fB\fR\fB-S\fR \fB10m\fR options expires old log
+files until there are no more than 5 of them \fBand\fR their combined disk usage
+is no more than 10 megabytes. If none of these options are specified, the
+default expiration is \fB\fR\fB-C\fR \fB10\fR which keeps ten old log files. If
+no files are to be expired, use \fB\fR\fB-C\fR \fB0\fR to prevent expiration by
+default.
+.SH OPTIONS
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-a\fR \fIpost_command\fR\fR
+.ad
+.sp .6
+.RS 4n
+Execute the \fIpost_command\fR after renaming the log file. \fIpost_command\fR
+is passed to \fBsh\fR \fB-c\fR.
+.sp
+Specify \fIpost_command\fR as a valid shell command. Use quotes to protect
+spaces or shell metacharacters in \fIpost_command\fR.
+.sp
+This option can be used to restart a daemon that is writing to the file. When
+rotating multiple logs with one \fBlogadm\fR command, \fIpost_command\fR is
+executed only once after all the logs are rotated, not once per rotated log.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-A\fR \fIage\fR\fR
+.ad
+.sp .6
+.RS 4n
+Delete any versions that have not been modified for the amount of time
+specified by \fIage\fR.
+.sp
+Specify \fIage\fR as a number followed by an \fBh\fR (hours), \fBd\fR (days),
+\fBw\fR(weeks), \fBm\fR (months), or \fBy\fR (years).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-b\fR \fIpre_command\fR\fR
+.ad
+.sp .6
+.RS 4n
+Execute \fIpre_command\fR before renaming the log file. \fIpre_command\fR is
+passed to \fBsh\fR \fB-c\fR.
+.sp
+Specify \fIpre_command\fR as a valid shell command. Use quotes to protect
+spaces or shell metacharacters in the \fIpre_command\fR.
+.sp
+This option can be used to stop a daemon that is writing to the file. When
+rotating multiple logs with one \fBlogadm\fR command, \fIpre_command\fR is
+executed only once before all the logs are rotated, not once per rotated log.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-c\fR\fR
+.ad
+.sp .6
+.RS 4n
+Rotate the log file by copying it and truncating the original logfile to zero
+length, rather than renaming the file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-C\fR \fIcount\fR\fR
+.ad
+.sp .6
+.RS 4n
+Delete the oldest versions until there are not more than \fIcount\fR files
+left.
+.sp
+If no expire options (\fB-A\fR, \fB-C\fR, or \fB-S\fR) are specified,
+\fB\fR\fB-C\fR \fB10\fR is the default. To prevent the default expire rule from
+being added automatically, specify \fB\fR\fB-C\fR \fB0\fR .
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-e\fR \fImail_addr\fR\fR
+.ad
+.sp .6
+.RS 4n
+Send error messages by email to \fImail_addr\fR.
+.sp
+As \fBlogadm\fR is typically run from \fBcron\fR(8), error messages are
+captured by \fBcron\fR and mailed to the owner of the \fBcrontab\fR.
+.sp
+This option is useful if you want the mail regarding error messages to go to
+another address instead. If no errors are encountered, no mail message is
+generated.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-E\fR \fIcmd\fR\fR
+.ad
+.sp .6
+.RS 4n
+Execute \fIcmd\fR to expire the file, rather than deleting the old log file to
+expire it.
+.sp
+\fIcmd\fR is passed it to \fBsh\fR \fB-c\fR. The file is considered expired
+after \fIcmd\fR completes. If the old log file is not removed or renamed by the
+\fIcmd\fR, \fBlogadm\fR considers it for expiration the next time that it runs
+on the specified log file. If present, the keyword \fB$file\fR is expanded in
+the specified \fIcmd\fR to the name of the file being expired.
+.sp
+This option is useful for tasks such as mailing old log files to
+administrators, or copying old log files to long term storage.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR \fIconf_file\fR\fR
+.ad
+.sp .6
+.RS 4n
+Use \fIconf_file\fR instead of \fB/etc/logadm.conf\fR.
+.sp
+This option allows non-root users to keep their own \fBlogadm\fR configuration
+files.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-g\fR \fIgroup\fR\fR
+.ad
+.sp .6
+.RS 4n
+Create a new empty file with the \fBID\fR specified by \fIgroup\fR, instead of
+preserving the group \fBID\fR of the log file.
+.sp
+Specify \fIgroup\fR by name or by numeric group \fBID\fR, as accepted by
+\fBchgrp\fR(1).
+.sp
+This option requires the ability to change file group ownership using the
+\fBchgrp\fR(1) command.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-h\fR\fR
+.ad
+.sp .6
+.RS 4n
+Print a help message that describes \fBlogadm\fR's options.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR\fR
+.ad
+.sp .6
+.RS 4n
+Use local time rather than the Coordinated Universal Time (UTC) when naming
+rotated log files (see the discussion of percent sequences in the templates
+supplied with the \fB-t\fR option).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-m\fR \fImode\fR\fR
+.ad
+.sp .6
+.RS 4n
+Create a new empty file with the mode specified by \fImode\fR, instead of
+preserving the mode of the log file.
+.sp
+Specify \fImode\fR in any form that is accepted by the \fBchmod\fR(1) command.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-M\fR \fIcmd\fR\fR
+.ad
+.sp .6
+.RS 4n
+Use \fIcmd\fR to rename the log file. If the keyword \fB$file\fR is specified,
+it is expanded to the name of the log file. Similarly, the keyword \fB$nfile\fR
+is expanded to the new name of the log file. The \fB$nfile\fR keyword is only
+available with commands provided with the \fB-M\fR option. After the command
+completes, the log file is replaced by the rotate file. The default \fIcmd\fR
+is "\fB/bin/mv\fR \fB$file\fR\fB\fR\fB$nfile\fR".
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR \fI\fR\fR
+.ad
+.sp .6
+.RS 4n
+Print the actions that the \fBlogadm\fR command will perform without actually
+performing them.
+.sp
+This option is useful for checking arguments before making any changes to the
+system.
+.sp
+It is important to remember, however, that since log rotating actions are only
+printed with this option, \fBlogadm\fR might not find files that need expiring,
+but if run without the \fB-n\fR \fBlogadm\fR might create a file that needs
+expiring by performing the log rotating actions. Therefore, if you see no files
+being expired with the \fB-n\fR option, files still might be expired without
+it.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-N\fR\fR
+.ad
+.sp .6
+.RS 4n
+Prevent an error message if the specified logfile does not exist. Normally,
+\fBlogadm\fR produces an error message if the log file is not found. With
+\fB-N\fR, if the log file doesn't exist \fBlogadm\fR moves on to the expire
+rules (if any) and then to the next log file (if any), without creating the
+empty replacement log file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-o\fR \fIowner\fR\fR
+.ad
+.sp .6
+.RS 4n
+Create the new empty file with \fIowner\fR, instead of preserving the owner of
+the log file.
+.sp
+Specify \fIowner\fR in any form that is accepted by the \fBchown\fR(1) command.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR \fIperiod\fR\fR
+.ad
+.sp .6
+.RS 4n
+Rotate a log file after the specified time period (\fIperiod\fR).
+.sp
+Specify \fIperiod\fR as a number followed by \fBd\fR for days, \fBh\fR for
+hours, \fBw\fR for weeks, \fBm\fR for months (30 days) or \fBy\fR for years.
+There are also two special values for period: \fBnow\fR and \fBnever\fR.
+"\fB\fR\fB-p\fR \fBnow\fR" forces log rotation. "\fB\fR\fB-p\fR \fBnever\fR"
+forces no log rotation.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-P\fR \fItimestamp\fR\fR
+.ad
+.sp .6
+.RS 4n
+Used by \fBlogadm\fR to record the last time the log was rotated in
+\fB/etc/logadm.conf\fR.
+.sp
+This option uses \fItimestamp\fR to determine if the log rotation period has
+passed. The format of \fItimestamp\fR matches the format generated by
+\fBctime\fR(3C), with quotes around it to protect embedded spaces.
+\fItimestamp\fR is always recorded in the Coordinated Universal Time (UTC)
+timezone.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-r\fR\fR
+.ad
+.sp .6
+.RS 4n
+Remove any entries corresponding to the specified \fIlogname\fR from the
+\fB/etc/logadm.conf\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-R\fR \fIcmd\fR\fR
+.ad
+.sp .6
+.RS 4n
+Run the \fIcmd\fR when an old log file is created by a log rotation. If the
+keyword \fB$file\fR is embedded in the specified command, it is expanded to the
+name of the old log file just created by log rotation.
+.sp
+This option is useful for processing log file contents after rotating the log.
+\fIcmd\fR is executed by passing it to \fBsh\fR \fB-c\fR. When rotating
+multiple logs with one logadm command, the command supplied with \fB-R\fR is
+executed once every time a log is rotated. This is useful for post-processing a
+log file (that is, sorting it, removing uninteresting lines, etc.). The
+\fB-a\fR option is a better choice for restarting daemons after log rotation.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR \fIsize\fR\fR
+.ad
+.sp .6
+.RS 4n
+Rotate the log file only if its size is greater than or equal to \fIsize\fR.
+.sp
+Specify \fIsize\fR as a number followed by the letter \fBb\fR for bytes,
+\fBk\fR for kilobytes, \fBm\fR for megabytes, or \fBg\fR for gigabytes.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-S\fR \fIsize\fR\fR
+.ad
+.sp .6
+.RS 4n
+Delete the oldest versions until the total disk space used by the old log files
+is less than the specified size.
+.sp
+Specify \fIsize\fR as a number followed by the letter \fBb\fR for bytes,
+\fBk\fR for kilobytes, \fBm\fR for megabytes, or \fBg\fR for gigabytes.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-t\fR \fItemplate\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify the template to use when renaming log files.
+.sp
+\fItemplate\fR can be a simple name, such as \fB/var/adm/oldfile\fR, or it can
+contain special keywords which are expanded by \fBlogadm\fR and are in the form
+\fB$\fR\fIword\fR. Allowed sequences are:
+.sp
+.ne 2
+.na
+\fB$\fIbasename\fR\fR
+.ad
+.sp .6
+.RS 4n
+The log file name, without the directory name
+.RE
+
+.sp
+.ne 2
+.na
+\fB$\fIdirname\fR\fR
+.ad
+.sp .6
+.RS 4n
+The directory of the file to be rotated
+.RE
+
+.sp
+.ne 2
+.na
+\fB$\fIdomain\fR\fR
+.ad
+.sp .6
+.RS 4n
+Expands to the output of \fBdomainname\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB$\fIfile\fR\fR
+.ad
+.sp .6
+.RS 4n
+The full path name of the file to be rotated
+.RE
+
+.sp
+.ne 2
+.na
+\fB$\fIisa\fR\fR
+.ad
+.sp .6
+.RS 4n
+Expands to the output of \fBuname\fR \fB-p\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB$\fImachine\fR\fR
+.ad
+.sp .6
+.RS 4n
+Expands to the output of \fBuname\fR \fB-m\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB$\fIn\fR\fR
+.ad
+.sp .6
+.RS 4n
+The version number, \fB0\fR is most recent, \fB1\fR is next most recent, and so
+forth
+.RE
+
+.sp
+.ne 2
+.na
+\fB$\fIN\fR\fR
+.ad
+.sp .6
+.RS 4n
+The same as $\fIn\fR, but starts at \fB1\fR instead of zero
+.RE
+
+.sp
+.ne 2
+.na
+\fB$\fInodename\fR\fR
+.ad
+.sp .6
+.RS 4n
+Expands to the output of \fBuname\fR \fB-n\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB$\fIplatform\fR\fR
+.ad
+.sp .6
+.RS 4n
+Expands to the output of \fBuname\fR \fB-i\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB$\fIrelease\fR\fR
+.ad
+.sp .6
+.RS 4n
+Expands to the output of \fBuname\fR \fB-r\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB$\fIsecs\fR\fR
+.ad
+.sp .6
+.RS 4n
+The number of seconds since \fB00:00:00 UTC, January 1,1970\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB$\fIzonename\fR\fR
+.ad
+.sp .6
+.RS 4n
+Expands to the output of \fBzonename\fR(1).
+.RE
+
+To actually have the dollar sign character in the file name, use \fB$$\fR. Any
+percent sequences allowed by \fBstrftime\fR(3C) are also allowed, for example,
+\fB%d\fR expands to the day of the month. To actually have a percent sign
+character in the file name, use \fB%%\fR. Both dollar-sign keywords and percent
+sequences can appear anywhere in the template. If the template results in a
+pathname with non-existent directories, they are created as necessary when
+rotating the log file.
+.sp
+If no \fB-t\fR option is specified, the default template is \fB$file.$n\fR.
+Actual \fBrotation\fR of log files, where each version is shifted up until it
+expires is done using the \fB$n\fR keyword. If the template does not contain
+the \fB$n\fR keyword, the log file is simply renamed to the new name and then
+the expire rules, if any, are applied.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-T\fR \fIpattern\fR\fR
+.ad
+.sp .6
+.RS 4n
+Normally \fBlogadm\fR looks for a list of old log files by turning the template
+(specified with the \fB-t\fR option) into a pattern and finding existing files
+whose names match that pattern. The \fB-T\fR option causes the given pattern to
+be used instead.
+.sp
+This option is useful if another program fiddles with the old log file names,
+like a \fBcron\fR job to compress them over time. The pattern is in the form of
+a pathname with special characters such as \fB*\fR and \fB?\fR as supported by
+\fBcsh\fR(1) filename substitution.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.sp .6
+.RS 4n
+Print information about the actions being executed in verbose mode.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-V\fR\fR
+.ad
+.sp .6
+.RS 4n
+Validate the configuration file.
+.sp
+This option validates that an entry for the specified \fIlogname\fR exists in
+the \fB/etc/logadm.conf\fR file and is syntactically correct. If \fIlogname\fR
+is not specified, all entries in the configuration file are validated. If a
+\fBlogname\fR argument is specified, the command validates the syntax of that
+entry. If the entry is found, it is printed and the exit value of the command
+is true. Otherwise the exit value is false.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-w\fR \fIentryname\fR\fR
+.ad
+.sp .6
+.RS 4n
+Write an entry into the config file (that is, \fB/etc/logadm.conf\fR) that
+corresponds to the current command line arguments. If an entry already existed
+for the specified \fIentryname\fR, it is removed first. This is the preferred
+method for updating \fB/etc/logadm.conf\fR, because it prevents syntax errors.
+The \fIentryname\fR is an argument to an invocation of \fBlogadm\fR.
+\fIentryname\fR might be chosen as something easy to remember or it can be the
+pathname of the log file. If a pathname, rather than a name is used, it must be
+a fully qualified pathname.
+.sp
+If no log file name is provided on a \fBlogadm\fR command line, the entry name
+is assumed to be the same as the log file name. For example, the following two
+lines achieve the same thing, keeping two copies of rotated log files:
+.sp
+.in +2
+.nf
+% logadm -C2 -w mylog /my/really/long/log/file/name
+% logadm -C2 -w /my/really/long/log/file/name
+.fi
+.in -2
+.sp
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-z\fR \fIcount\fR\fR
+.ad
+.sp .6
+.RS 4n
+Compress old log files after all other commands have been executed. \fIcount\fR
+of the most recent log files are left uncompressed, therefore making the
+\fIcount\fR most recent files easier to peruse. Use \fIcount\fR of zero to
+compress all old logs.
+.sp
+The compression is done with \fBgzip\fR(1) and the resulting log file has the
+suffix of \fB\&.gz\fR.
+.RE
+
+.SH OPERANDS
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fB\fIlogname\fR\fR
+.ad
+.sp .6
+.RS 4n
+Identifies the name of the entry in \fB/etc/logadm.conf\fR. If the log file
+name is specified in the \fIlogname\fR field, it is assumed that \fIlogname\fR
+is the same as the actual log file name.
+.RE
+
+.SH EXAMPLES
+\fBExample 1 \fRRotating a File and Keeping Previous Versions
+.sp
+.LP
+The following example rotates the \fB/var/adm/exacct/proc\fR file, keeping ten
+previous versions in \fB/var/adm/exacct/proc.0\fR through
+\fB/var/adm/exacct/proc.9\fR.
+
+.sp
+.LP
+Tell \fBlogadm\fR to copy the file and truncate it.
+
+.sp
+.in +2
+.nf
+ % logadm -c /var/adm/exacct/proc
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRRotating syslog
+.sp
+.LP
+The following example rotates \fBsyslog\fR and keeps eight log files. Old log
+files are put in the directory \fB/var/oldlogs\fR instead of \fB/var/log\fR:
+
+.sp
+.in +2
+.nf
+% logadm -C8 -t'/var/oldlogs/syslog.$n' /var/log/syslog
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRRotating /var/adm/sulog and Expiring Based on Age
+.sp
+.LP
+The following entry in the \fB/etc/logadm.conf\fR file rotates the
+\fB/var/adm/sulog\fR file and expires any copies older than 30 days.
+
+.sp
+.in +2
+.nf
+/var/adm/sulog -A 30d
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 4 \fRRotating Files and Expiring Based on Disk Usage
+.sp
+.LP
+The following entry in the \fB/etc/logadm.conf\fR file rotates the
+\fB/var/adm/sulog\fR file and expires old log files when more than 100
+megabytes are used by the sum of all the rotated log files.
+
+.sp
+.in +2
+.nf
+/var/adm/sulog -S 100m
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 5 \fRCreating an Entry that Stores the Logfile Name
+.sp
+.LP
+This example creates an entry storing the log file name and the fact that we
+want to keep 20 copies in \fB/etc/logadm.conf\fR, but the \fB\fR\fB-p\fR
+\fBnever\fR means the entry is ignored by the normal \fBlogadm\fR run from
+root's crontab every morning.
+
+.sp
+.in +2
+.nf
+% logadm -w locallog /usr/local/logfile -C20 -p never
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Use the following entry on the command line to override the \fB\fR\fB-p\fR
+\fBnever\fR option:
+
+.sp
+.in +2
+.nf
+ % logadm -p now locallog
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 6 \fRRotating the apache Error and Access Logs
+.sp
+.LP
+The following example rotates the apache error and access logs monthly to
+filenames based on current year and month. It keeps the 24 most recent copies
+and tells apache to restart after renaming the logs.
+
+.sp
+.LP
+This command is run once, and since the \fB-w\fR option is specified, an entry
+is made in \fB/etc/logadm.conf\fR so the apache logs are rotated from now on.
+
+.sp
+.in +2
+.nf
+ % logadm -w apache -p 1m -C 24\e
+ -t '/var/apache/old-logs/$basename.%Y-%m'\e
+ -a '/usr/apache/bin/apachectl graceful'\e
+ '/var/apache/logs/*{access,error}_log'
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+This example also illustrates that the entry name supplied with the \fB-w\fR
+option doesn't have to match the log file name. In this example, the entry name
+is \fBapache\fR and once the line has been run, the entry in
+\fB/etc/logadm.conf\fR can be forced to run by executing the following command:
+
+.sp
+.in +2
+.nf
+% logadm -p now apache
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Because the expression matching the apache log file names was enclosed in
+quotes, the expression is stored in \fB/etc/logadm.conf\fR, rather than the
+list of files that it expands to. This means that each time \fBlogadm\fR runs
+from \fBcron\fR it expands that expression and checks all the log files in the
+resulting list to see if they need rotating.
+
+.sp
+.LP
+The following command is an example without the quotes around the log name
+expression. The shell expands the last argument into a list of log files that
+exist at the time the command is entered, and writes an entry to
+\fB/etc/logadm.conf\fR that rotates the files.
+
+.sp
+.in +2
+.nf
+logadm -w apache /var/apache/logs/*_log
+.fi
+.in -2
+.sp
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/etc/logadm.conf\fR\fR
+.ad
+.sp .6
+.RS 4n
+configuration file for \fBlogadm\fR command
+.RE
+
+.SH ATTRIBUTES
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.BR chgrp (1),
+.BR chmod (1),
+.BR chown (1),
+.BR csh (1),
+.BR gzip (1),
+.BR ctime (3C),
+.BR strftime (3C),
+.BR logadm.conf (5),
+.BR attributes (7),
+.BR cron (8)
+.SH NOTES
+When \fBlogadm\fR applies expire conditions (supplied by the \fB-A\fR,
+\fB-C\fR, and \fB-S\fR options), it deletes files, the oldest first, until the
+conditions are satisfied. If the template used for naming the old logs
+contained \fB$n\fR or \fB$N\fR, \fBlogadm\fR picks the highest value of
+\fB$n\fR or \fB$N\fR found in the old log file names first. If the template
+used is something else, \fBlogadm\fR uses the modification time to determine
+which files to expire first. This may not be the expected behavior if an old
+log file has been modified since it was rotated.
+.sp
+.LP
+Depending on log file sizes and number of log files, log file rotations can be
+very time-consuming.
+.sp
+.LP
+By default, \fBlogadm\fR works in \fBGMT\fR. Therefore, all entries written to
+the \fB/etc/logadm.conf\fR file (see \fBlogadm.conf\fR(5)) will have a
+\fBGMT\fR timestamp. Users can use the \fB-l\fR option to set \fBlogadm\fR to
+local time.
diff --git a/usr/src/man/man8/logins.8 b/usr/src/man/man8/logins.8
new file mode 100644
index 0000000000..08ba31d3ad
--- /dev/null
+++ b/usr/src/man/man8/logins.8
@@ -0,0 +1,205 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 1997 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH LOGINS 8 "Sep 6, 2005"
+.SH NAME
+logins \- list user and system login information
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/bin/logins\fR [\fB-admopstux\fR] [\fB-g\fR \fIgroup...\fR]
+ [\fB-l\fR \fIlogin_name...\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+This command displays information on user and system logins known to the
+system. Contents of the output is controlled by the command options and can
+include the following: user or system login, user id number, \fBpasswd\fR
+account field value (user name or other information), primary group name,
+primary group id, multiple group names, multiple group ids, home directory,
+login shell, and four password aging parameters. The default information is the
+following: login id, user id, primary group name, primary group id and the
+account field value. Output is sorted by user id, system logins, followed by
+user logins.
+.SH OPTIONS
+.sp
+.LP
+Options may be used together. If so, any login that matches any criteria are
+displayed.
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-a\fR\fR
+.ad
+.RS 20n
+Add two password expiration fields to the display. The fields show how many
+days a password can remain unused before it automatically becomes inactive, and
+the date that the password expires.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-d\fR\fR
+.ad
+.RS 20n
+Selects logins with duplicate uids.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\fR\fB-g\fR \fIgroup\fR\fR
+.ad
+.RS 20n
+Selects all users belonging to \fBgroup\fR, sorted by login. Multiple groups
+can be specified as a comma-separated list. When the \fB-l\fR and \fB-g\fR
+options are combined, a user is only listed once, even if the user belongs to
+more than one of the selected groups.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\fR\fB-l\fR \fIlogin_name...\fR\fR
+.ad
+.RS 20n
+Selects the requested login. Multiple logins can be specified as a
+comma-separated list. Depending on the nameservice lookup types set in
+\fB/etc/nsswitch.conf\fR, the information can come from the \fB/etc/passwd\fR
+and \fB/etc/shadow\fR files and other nameservices. When the \fB-l\fR and
+\fB-g\fR options are combined, a user is only listed once, even if the user
+belongs to more than one of the selected groups.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-m\fR\fR
+.ad
+.RS 20n
+Displays multiple group membership information.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-o\fR\fR
+.ad
+.RS 20n
+Formats output into one line of colon-separated fields.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR\fR
+.ad
+.RS 20n
+Selects logins with no passwords.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR\fR
+.ad
+.RS 20n
+Selects all system logins.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-t\fR\fR
+.ad
+.RS 20n
+Sorts output by login instead of by uid.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-u\fR\fR
+.ad
+.RS 20n
+Selects all user logins.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-x\fR\fR
+.ad
+.RS 20n
+Prints an extended set of information about each selected user. The extended
+information includes home directory, login shell and password aging
+information, each displayed on a separate line. The password information
+currently consists of password status:
+.sp
+.ne 2
+.na
+\fB\fBNP\fR\fR
+.ad
+.RS 6n
+Account has no password
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBLK\fR\fR
+.ad
+.RS 6n
+Account is locked for \fBUNIX\fR authentication
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBNL\fR\fR
+.ad
+.RS 6n
+Account is a no login account
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPS\fR\fR
+.ad
+.RS 6n
+Account probably has a valid password
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBUN\fR\fR
+.ad
+.RS 6n
+Account password status is unknown. That is, it is not a recognizable hashed
+password or any of the above entries. See \fBcrypt\fR(3C) for valid password
+hashes.
+.RE
+
+If the login is passworded, status is followed by the date the password was
+last changed, the number of days required between changes, and the number of
+days allowed before a change is required. The password aging information shows
+the time interval that the user receives a password expiration warning message
+(when logging on) before the password expires.
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR passwd (1),
+.BR crypt (3C),
+.BR attributes (7)
diff --git a/usr/src/man/man8/lpadmin.8 b/usr/src/man/man8/lpadmin.8
new file mode 100644
index 0000000000..7fe474cdd7
--- /dev/null
+++ b/usr/src/man/man8/lpadmin.8
@@ -0,0 +1,1364 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH LPADMIN 8 "June 20, 2021"
+.SH NAME
+lpadmin \- configure the LP print service
+.SH SYNOPSIS
+.nf
+\fBlpadmin\fR \fB-p\fR \fIprinter\fR {\fIoptions\fR}
+.fi
+
+.LP
+.nf
+\fBlpadmin\fR \fB-x\fR \fIdest\fR
+.fi
+
+.LP
+.nf
+\fBlpadmin\fR \fB-d\fR [\fIdest\fR]
+.fi
+
+.LP
+.nf
+\fBlpadmin\fR \fB-S\fR \fIprint-wheel\fR \fB-T\fR [\fB-A\fR \fIalert-type\fR] [\fB-W\fR \fIminutes\fR]
+ [\fB-Q\fR \fIrequests\fR]
+.fi
+
+.SH DESCRIPTION
+\fBlpadmin\fR configures the LP print service by defining printers and devices.
+It is used to add and change printers, to remove printers from service, to set
+or change the system default destination, to define alerts for printer faults,
+and to mount print wheels.
+.SH OPTIONS
+The \fBlpadmin\fR command has options for:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Adding or changing a printer
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Removing a printer destination
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Setting or changing the system default destination
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Setting an alert for a print wheel
+.RE
+.sp
+.LP
+The options for each of the above categories are specified in the following
+subsections.
+.sp
+.LP
+Several options support the use of lists. A list might contain, for example,
+user names, printers, printer forms, or content types. A list of multiple items
+can have the form of either comma-separated names or have the entire list
+enclosed by double quotes with a space between each name. For example, both
+lists below are acceptable:
+.sp
+.in +2
+.nf
+one,two,three
+"one two three"
+.fi
+.in -2
+
+.SS "Adding or Changing a Printer"
+The first form of the \fBlpadmin\fR command (\fBlpadmin\fR \fB-p\fR
+\fIprinter\fR {\fIoptions\fR}) configures a new printer or changes the
+configuration of an existing printer. It also starts the print scheduler.
+.sp
+.LP
+When creating a new printer, one of three options (\fB-v\fR, \fB-U\fR, or
+\fB-s\fR) must be supplied. In addition, only one of the following can be
+supplied: \fB-e\fR, \fB-i\fR, or \fB-m\fR; if none of these three options is
+supplied, the model standard is used. The \fB-h\fR and \fB-l\fR options are
+mutually exclusive. Printer and class names must be no longer than 14
+characters and must consist entirely of the characters \fBA\fR-\fBZ\fR,
+\fBa\fR-\fBz\fR, \fB0\fR-\fB9\fR, dash (\fB-\fR) and underscore (\fB_\fR). If
+\fB-s\fR is specified, the following options are invalid: \fB-A\fR, \fB-e\fR,
+\fB-F\fR, \fB-h\fR, \fB-i\fR, \fB-l\fR, \fB-M\fR, \fB-m\fR, \fB-o\fR, \fB-U\fR,
+\fB-v\fR, and \fB-W\fR.
+.sp
+.LP
+The following options can appear in any order.
+.sp
+.ne 2
+.na
+\fB\fB-A\fR \fIalert-type\fR [\fB-W\fR \fIminutes\fR]\fR
+.ad
+.sp .6
+.RS 4n
+The \fB-A\fR option is used to define an alert that informs the administrator
+when a printer fault is detected, and periodically thereafter, until the
+printer fault is cleared by the administrator. The \fIalert-types\fR are:
+.sp
+.ne 2
+.na
+\fB\fBmail\fR\fR
+.ad
+.RS 17n
+Send the alert message using mail (see \fBmail\fR(1)) to the administrator.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBwrite\fR\fR
+.ad
+.RS 17n
+Write the message to the terminal on which the administrator is logged in. If
+the administrator is logged in on several terminals, one is chosen arbitrarily.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBquiet\fR\fR
+.ad
+.RS 17n
+Do not send messages for the current condition. An administrator can use this
+option to temporarily stop receiving further messages about a known problem.
+Once the fault has been cleared and printing resumes, messages are sent again
+when another fault occurs with the printer.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBshowfault\fR\fR
+.ad
+.RS 17n
+Attempt to execute a fault handler on each system that has a print job in the
+queue. The fault handler is \fB/etc/lp/alerts/printer\fR. It is invoked with
+three parameters: \fIprinter_name\fR, \fBdate\fR, \fIfile_name\fR. The
+\fIfile_name\fR is the name of a file containing the fault message.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnone\fR\fR
+.ad
+.RS 17n
+Do not send messages; any existing alert definition for the printer is removed.
+No alert is sent when the printer faults until a different alert-type (except
+\fBquiet\fR) is used.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIshell-command\fR\fR
+.ad
+.RS 17n
+Run the \fIshell-command\fR each time the alert needs to be sent. The shell
+command should expect the message in standard input. If there are blank spaces
+embedded in the command, enclose the command in quotes. Notice that the
+\fBmail\fR and \fBwrite\fR values for this option are equivalent to the values
+\fBmail\fR \fIuser-name\fR and \fBwrite\fR \fIuser-name\fR respectively, where
+\fIuser-name\fR is the current name for the administrator. This is the login
+name of the person submitting this command unless he or she has used the
+\fBsu\fR command to change to another user ID. If the \fBsu\fR command has been
+used to change the user ID, then the \fIuser-name\fR for the new ID is used.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBlist\fR\fR
+.ad
+.RS 17n
+Display the type of the alert for the printer fault. No change is made to the
+alert.
+.RE
+
+When a fault occurs, the printing subsystem displays a message indicating that
+printing for a specified printer has stopped and the reason for the stoppage.
+The message also indicates that printing will restart in a few minutes and that
+you can enter an \fBenable\fR command if you want to restart sooner than that.
+.sp
+Following a fault that occurs in the middle of a print job, the job is
+reprinted from the beginning. An exception to this occurs when you enter a
+command, such as the one shown below, that changes the page list to be printed.
+.sp
+.in +2
+.nf
+% \fB\fR\fBlp\fR\fB \fR\fB-i\fR\fB \fIrequest-id\fR \fR\fB-P\fR\fB ...\fR
+.fi
+.in -2
+.sp
+
+For a given print request, the presence of multiple reasons for failure
+indicate multiple attempts at printing.
+.sp
+The \fBLP\fR print service can detect printer faults only through an adequate
+fast filter and only when the standard interface program or a suitable
+customized interface program is used. Furthermore, the level of recovery after
+a fault depends on the capabilities of the filter.
+.sp
+If, instead of a single printer, the keyword \fBall\fR is displayed in an
+alert, the alert applies to all printers.
+.sp
+If the \fB-W\fR option is not used to arrange fault alerting for \fIprinter\fR,
+the default procedure is to mail one message to the administrator of
+\fIprinter\fR per fault. This is equivalent to specifying \fB-W\fR \fBonce\fR
+or \fB-W\fR \fB0\fR. If \fIminutes\fR is a number greater than zero, an alert
+is sent at intervals specified by \fIminutes\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-c\fR \fIclass\fR\fR
+.ad
+.sp .6
+.RS 4n
+Insert \fIprinter\fR into the specified \fIclass\fR. \fIclass\fR is created if
+it does not already exist. This option requires the \fB-U\fR \fIdial-info\fR or
+\fB-v\fR \fIdevice\fR options.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-D\fR \fIcomment\fR\fR
+.ad
+.sp .6
+.RS 4n
+Save this \fIcomment\fR for display whenever a user asks for a full description
+of \fIprinter\fR (see \fBlpstat\fR(1)). The LP print service does not interpret
+this comment.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-e\fR \fIprinter\fR\fR
+.ad
+.sp .6
+.RS 4n
+Copy the interface program of an existing \fIprinter\fR to be the interface
+program for \fIprinter\fR. (Options \fB-i\fR and \fB-m\fR must not be specified
+with this option.)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR \fBallow\fR:\fIform-list\fR\fR
+.ad
+.br
+.na
+\fB\fB-f\fR \fBdeny\fR:\fIform-list\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow or deny the forms in \fIform-list\fR to be printed on \fIprinter\fR. By
+default no forms are allowed on a new printer.
+.sp
+For each printer, the \fBLP\fR print service keeps two lists of forms: an
+``allow-list'' of forms that can be used with the printer, and a ``deny-list''
+of forms that cannot be used with the printer. With the \fB\fR\fB-f\fR\fB
+allow\fR option, the forms listed are added to the allow-list and removed from
+the deny-list. With the \fB-f\fR \fBdeny\fR option, the forms listed are added
+to the deny-list and removed from the allow-list.
+.sp
+If the allow-list is not empty, only the forms in the list can be used on the
+printer, regardless of the contents of the deny-list. If the allow-list is
+empty, but the deny-list is not, the forms in the deny-list cannot be used with
+the printer. All forms can be excluded from a printer by specifying \fB-f\fR
+\fBdeny:all\fR. All forms can be used on a printer (provided the printer can
+handle all the characteristics of each form) by specifying \fB-f\fR
+\fBallow:all\fR.
+.sp
+The \fBLP\fR print service uses this information as a set of guidelines for
+determining where a form can be mounted. Administrators, however, are not
+restricted from mounting a form on any printer. If mounting a form on a
+particular printer is in disagreement with the information in the allow-list or
+deny-list, the administrator is warned but the mount is accepted. Nonetheless,
+if a user attempts to issue a print or change request for a form and printer
+combination that is in disagreement with the information, the request is
+accepted only if the form is currently mounted on the printer. If the form is
+later unmounted before the request can print, the request is canceled and the
+user is notified by mail.
+.sp
+If the administrator tries to specify a form as acceptable for use on a printer
+that does not have the capabilities needed by the form, the command is
+rejected.
+.sp
+Notice the other use of \fB-f\fR, with the \fB-M\fR option, below.
+.sp
+The \fB-T\fR option must be invoked first with \fBlpadmin\fR to identify the
+printer type before the \fB-f\fR option can be used.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-F\fR \fIfault-recovery\fR\fR
+.ad
+.sp .6
+.RS 4n
+This option specifies the recovery to be used for any print request that is
+stopped because of a printer fault, according to the value of
+\fIfault-recovery\fR:
+.sp
+.ne 2
+.na
+\fB\fBcontinue\fR\fR
+.ad
+.RS 13n
+Continue printing on the top of the page where printing stopped. This requires
+a filter to wait for the fault to clear before automatically continuing.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBbeginning\fR\fR
+.ad
+.RS 13n
+Start printing the request again from the beginning.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBwait\fR\fR
+.ad
+.RS 13n
+Disable printing on \fIprinter\fR and wait for the administrator or a user to
+enable printing again.
+.sp
+During the wait, the administrator or the user who submitted the stopped print
+request can issue a change request that specifies where printing should resume.
+(See the \fB-i\fR option of the \fBlp\fR command.) If no change request is made
+before printing is enabled, printing resumes at the top of the page where
+stopped, if the filter allows; otherwise, the request is printed from the
+beginning.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-h\fR\fR
+.ad
+.sp .6
+.RS 4n
+Indicate that the device associated with the printer is hardwired. If neither
+of the mutually exclusive options, \fB-h\fR and \fB-l\fR, is specified,
+\fB-h\fR is assumed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-i\fR \fIinterface\fR\fR
+.ad
+.sp .6
+.RS 4n
+Establish a new interface program for \fIprinter\fR. \fIinterface\fR is the
+pathname of the new program. (The \fB-e\fR and \fB-m\fR options must not be
+specified with this option.)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-I\fR \fIcontent-type-list\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow \fIprinter\fR to handle print requests with the content types listed in a
+\fIcontent-type-list\fR.
+.sp
+The type \fBsimple\fR is recognized as the default content type for files in
+the UNIX system. A \fBsimple\fR type of file is a data stream containing only
+printable \fBASCII\fR characters and the following control characters:
+.sp
+
+.sp
+.TS
+c c c
+l l l .
+Control Char Octal Value Meaning
+BACKSPACE 10 Move back one char, except
+ at beginning of line
+TAB 11 Move to next tab stop
+LINEFEED 12 Move to beginning of
+ (newline) next line
+FORMFEED 14 Move to beginning of
+ next page
+RETURN 15 Move to beginning of
+ current line
+.TE
+
+To prevent the print service from considering \fBsimple\fR a valid type for the
+printer, specify either an explicit value (such as the printer type) in the
+\fIcontent-type-list\fR, or an empty list. If you do want \fBsimple\fR included
+along with other types, you must include \fBsimple\fR in the
+\fIcontent-type-list\fR.
+.sp
+In addition to content types defined by the print administrator, the type
+\fBPostScript\fR is recognized and supported by the Solaris print subsystem.
+This includes filters to support \fBPostScript\fR as the printer content type.
+.sp
+The type \fBany\fR is recognized as a special content type for files. When
+declared as the input type for a printer, it signals the print sub-system not
+to do any filtering on the file before sending it to the printer.
+.sp
+Except for \fBsimple\fR and \fBany\fR, each \fIcontent-type\fR name is
+determined by the administrator. If the printer type is specified by the
+\fB-T\fR option, then the printer type is implicitly considered to be also a
+valid content type.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR\fR
+.ad
+.sp .6
+.RS 4n
+Indicate that the device associated with \fIprinter\fR is a login terminal. The
+LP scheduler (\fBlpsched\fR) disables all login terminals automatically each
+time it is started. (The \fB-h\fR option must not be specified with this
+option.)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-m\fR \fImodel\fR\fR
+.ad
+.sp .6
+.RS 4n
+Select \fImodel\fR interface program, provided with the \fBLP\fR print service,
+for the printer. (Options \fB-e\fR and \fB-i\fR must not be specified with this
+option.)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-M\fR \fB-f\fR \fIform-name\fR [\fB-a\fR [\fB-o\fR \fBfilebreak\fR]]
+[\fB-t\fR \fItray-number\fR]]\fR
+.ad
+.sp .6
+.RS 4n
+Mount the form \fIform-name\fR on \fIprinter\fR. Print requests that need the
+pre-printed form \fIform-name\fR is printed on \fIprinter\fR. If more than one
+printer has the form mounted and the user has specified \fBany\fR (with the
+\fB-d\fR option of the \fBlp\fR command) as the printer destination, then the
+print request is printed on the one printer that also meets the other needs of
+the request.
+.sp
+The page length and width, and character and line pitches needed by the form
+are compared with those allowed for the printer, by checking the capabilities
+in the \fBterminfo\fR database for the type of printer. If the form requires
+attributes that are not available with the printer, the administrator is warned
+but the mount is accepted. If the form lists a print wheel as mandatory, but
+the print wheel mounted on the printer is different, the administrator is also
+warned but the mount is accepted.
+.sp
+If the \fB-a\fR option is given, an alignment pattern is printed, preceded by
+the same initialization of the physical printer that precedes a normal print
+request, with one exception: no banner page is printed. Printing is assumed to
+start at the top of the first page of the form. After the pattern is printed,
+the administrator can adjust the mounted form in the printer and press return
+for another alignment pattern (no initialization this time), and can continue
+printing as many alignment patterns as desired. The administrator can quit the
+printing of alignment patterns by typing \fBq\fR.
+.sp
+If the \fB-o\fR \fBfilebreak\fR option is given, a formfeed is inserted between
+each copy of the alignment pattern. By default, the alignment pattern is
+assumed to correctly fill a form, so no formfeed is added.
+.sp
+If the \fB-t\fR \fItray-number\fR option is specified, printer tray
+\fItray-number\fR is used.
+.sp
+A form is ``unmounted'' either by mounting a new form in its place or by using
+the \fB-f\fR \fBnone\fR option. By default, a new printer has no form mounted.
+.sp
+Notice the other use of \fB-f\fR without the \fB-M\fR option above.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-M\fR \fB-S\fR \fIprint-wheel\fR\fR
+.ad
+.sp .6
+.RS 4n
+Mount the \fIprint-wheel\fR on \fIprinter\fR. Print requests that need the
+\fIprint-wheel\fR are printed on \fIprinter\fR. If more than one printer has
+\fIprint-wheel\fR mounted and the user has specified \fBany\fR (with the
+\fB-d\fR option of the \fBlp\fR command) as the printer destination, then the
+print request is printed on the one printer that also meets the other needs of
+the request.
+.sp
+If the \fIprint-wheel\fR is not listed as acceptable for the printer, the
+administrator is warned but the mount is accepted. If the printer does not take
+print wheels, the command is rejected.
+.sp
+A print wheel is ``unmounted'' either by mounting a new print wheel in its
+place or by using the option \fB-S\fR \fBnone\fR. By default, a new printer has
+no print wheel mounted.
+.sp
+Notice the other uses of the \fB-S\fR option without the \fB-M\fR option
+described below.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR \fIppdfilename\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify a \fBPPD\fR file for creating and modifying printer queues.
+\fIppdfilename\fR is the full path and file name to the \fBPPD\fR file. Used in
+conjunction with the \fB-p\fR, \fB-d\fR, \fB-x\fR, or \fB-S\fR options.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-o\fR \fIoption\fR\fR
+.ad
+.sp .6
+.RS 4n
+The \fB-o\fR option defines default printer configuration values given to an
+interface program. The default can be explicitly overwritten for individual
+requests by the user (see \fBlp\fR(1)), or taken from a preprinted form
+description (see \fBlpforms\fR(8) and \fBlp\fR(1)).
+.sp
+There are several options which are predefined by the system. In addition, any
+number of key-value pairs can be defined. See the section "Predefined Options
+Used with the \fB-o\fR Option", below.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-P\fR \fIpaper-name\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify a paper type list that the printer supports.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-r\fR \fIclass\fR\fR
+.ad
+.sp .6
+.RS 4n
+Remove \fIprinter\fR from the specified \fIclass\fR. If \fIprinter\fR is the
+last member of \fIclass\fR, then \fIclass\fR is removed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-S\fR \fIlist\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow either the print wheels or aliases for character sets named in \fIlist\fR
+to be used on the printer.
+.sp
+If the printer is a type that takes print wheels, then \fIlist\fR is a comma or
+space separated list of print wheel names. These are the only print wheels
+considered mountable on the printer. (You can always force a different print
+wheel to be mounted.) Until the option is used to specify a list, no print
+wheels are considered mountable on the printer, and print requests that ask for
+a particular print wheel with this printer are rejected.
+.sp
+If the printer is a type that has selectable character sets, then \fIlist\fR is
+a list of character set name ``mappings'' or aliases. Each ``mapping'' is of
+the form \fIknown-name=alias\fR The \fIknown-name\fR is a character set number
+preceded by \fBcs\fR (such as \fBcs3\fR for character set three) or a character
+set name from the \fBterminfo\fR database entry \fBcsnm\fR. See
+\fBterminfo\fR(5). If this option is not used to specify a list, only the names
+already known from the \fBterminfo\fR database or numbers with a prefix of
+\fBcs\fR is acceptable for the printer. If \fIlist\fR is the word \fBnone\fR,
+any existing print wheel lists or character set aliases are removed.
+.sp
+Notice the other uses of the \fB-S\fR with the \fB-M\fR option described above.
+.sp
+The \fB-T\fR option must be invoked first with \fBlpadmin\fR to identify the
+printer type before the \fB-S\fR option can be used.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR \fIsystem-name\fR\fR
+.ad
+.sp .6
+.RS 4n
+The \fB-s\fR option can be used for both remote or local printers. For remote
+printers:
+.sp
+.ne 2
+.na
+\fB\fB-s\fR \fIsystem-name\fR[\fB!\fR\fIprinter-name\fR] (UUCP format)\fR
+.ad
+.br
+.na
+\fB\fB-s\fR \fIprinter-name\fR\fB@\fR\fIsystem-name\fR (RCMD format)\fR
+.ad
+.sp .6
+.RS 4n
+Make a remote printer (one that must be accessed through another system)
+accessible to users on your system. \fIsystem-name\fR is the name of the remote
+system on which the remote printer is located it. \fIprinter-name\fR is the
+name used on the remote system for that printer. For example, if you want to
+access \fIprinter1\fR on \fIsystem1\fR and you want it called \fIprinter2\fR on
+your system:
+.sp
+.in +2
+.nf
+\fB-p\fR \fIprinter2\fR \fB-s\fR \fIsystem1\fR\fB!\fR\fIprinter1\fR
+.fi
+.in -2
+.sp
+
+.sp
+.in +2
+.nf
+\fB-p\fR \fIprinter2\fR \fB-s\fR \fIprinter1\fR\fB@\fR\fIsystem1\fR
+.fi
+.in -2
+.sp
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR \fIscheme\fR\fB://\fR\fIend-point\fR (URI format)\fR
+.ad
+.sp .6
+.RS 4n
+Make a remote printer (one that must be accessed through another system)
+accessible to users on your system. The supported schemes include \fBlpd\fR and
+\fBipp\fR. Specify URI's using the \fBlpd\fR format as follows:
+.sp
+.in +2
+.nf
+\fBlpd://\fR\fIserver\fR/\fIprinters\fR/\fIqueue\fR\fB[#Solaris]\fR
+.fi
+.in -2
+.sp
+
+URI's using the \fBipp\fR format are defined by the remote print server. They
+are generally of the format:
+.sp
+.in +2
+.nf
+\fBipp://\fR\fIserver\fR\fB/\fR\fIprinters\fR\fB/\fR\fIqueue\fR
+.fi
+.in -2
+.sp
+
+In either case, \fIserver\fR specifies the hostname or IP address of the remote
+print server, \fIqueue\fR specifies the name of the print queue on the remote
+print server, and the optional \fB#Solaris\fR specifies that the remote print
+server is a Solaris server when \fBlpd\fR URI format is being used.
+.sp
+For example:
+.sp
+.in +2
+.nf
+\fB-p\fR \fIprinter\fR \fB-s\fR \fBlpd://\fR\fIserver\fR\fB/\fR\fIprinters\fR\fB/\fR\fIqueue\fR\fB#Solaris\fR
+\fB-p\fR \fIprinter\fR \fB-s\fR \fBipp://\fR\fIserver\fR\fB/\fR\fIprinters\fR\fB/\fR\fIqueue\fR
+.fi
+.in -2
+.sp
+
+.RE
+
+For local printers:
+.sp
+.ne 2
+.na
+\fB\fB-s\fR "\fBlocalhost\fR"\fR
+.ad
+.RS 18n
+Use \fBlocalhost\fR for the \fIsystem-name\fR to be used by the print service.
+In an environment where the nodename is variable, print queues are invalidated
+when the nodename changes. Using \fBlocalhost\fR as the \fIsystem-name\fR
+allows print queues to be maintained across changing nodenames. The
+\fIsystem-name\fR, as used by the print service, is only set to \fBlocalhost\fR
+when explicitly set with this option; by default, \fBlpadmin\fR sets
+\fIsystem-name\fR to \fInodename\fR. For example, if you want to configure a
+new printer on the local system, and want it called \fIprinter3\fR:
+.sp
+\fB-p\fR \fIprinter3\fR \fB-s\fR \fIlocalhost\fR \fB-v\fR \fIdevice\fR
+.sp
+This option should never be used when creating name service maps.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-T\fR \fIprinter-type-list\fR\fR
+.ad
+.sp .6
+.RS 4n
+Identify the printer as being of one or more \fIprinter-type\fRs. Each
+\fIprinter-type\fR is used to extract data from the \fBterminfo\fR database;
+this information is used to initialize the printer before printing each user's
+request. Some filters might also use a \fIprinter-type\fR to convert content
+for the printer. If this option is not used, the default \fIprinter-type\fR is
+\fBunknown\fR. No information is extracted from \fBterminfo\fR so each user
+request is printed without first initializing the printer. Also, this option
+must be used if the following are to work: \fB\fR\fB-o\fR\fB cpi\fR,
+\fB\fR\fB-o\fR\fB lpi\fR, \fB\fR\fB-o\fR width, and \fB\fR\fB-o\fR\fB length\fR
+options of the \fBlpadmin\fR and \fBlp\fR commands, and the \fB-S\fR and
+\fB-f\fR options of the \fBlpadmin\fR command.
+.sp
+If the \fIprinter-type-list\fR contains more than one type, then the
+\fIcontent-type-list\fR of the \fB-I\fR option must either be specified as
+\fBsimple\fR, as empty (\fB\fR\fB-I\fR\fB ""\fR), or not specified at all.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\fR\fB-t\fR\fInumber-of-trays\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify the number of trays when creating the printer.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-u\fR \fBallow:\fR\fIlogin-ID-list\fR\fR
+.ad
+.br
+.na
+\fB\fB-u\fR \fBdeny:\fR\fIlogin-ID-list\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow or deny the users in \fIlogin-ID-list\fR access to the printer. By
+default all users are allowed on a new printer. The \fIlogin-ID-list\fR
+argument can include any or all of the following constructs:
+.sp
+.ne 2
+.na
+\fB\fIlogin-ID\fR\fR
+.ad
+.RS 24n
+a user on any system
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIsystem-name\fR\fB!\fR\fIlogin-ID\fR\fR
+.ad
+.RS 24n
+a user on system \fIsystem-name\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIsystem-name\fR\fB!all\fR\fR
+.ad
+.RS 24n
+all users on system \fIsystem-name\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBall!\fR\fIlogin-ID\fR\fR
+.ad
+.RS 24n
+a user on all systems
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBall\fR\fR
+.ad
+.RS 24n
+all users on all systems
+.RE
+
+For each printer, the \fBLP\fR print service keeps two lists of users: an
+``allow-list'' of people allowed to use the printer, and a ``deny-list'' of
+people denied access to the printer. With the \fB\fR\fB-u\fR\fB allow\fR
+option, the users listed are added to the allow-list and removed from the
+deny-list. With the \fB\fR\fB-u\fR\fB deny\fR option, the users listed are
+added to the deny-list and removed from the allow-list.
+.sp
+If the allow-list is not empty, only the users in the list can use the printer,
+regardless of the contents of the deny-list. If the allow-list is empty, but
+the deny-list is not, the users in the deny-list cannot use the printer. All
+users can be denied access to the printer by specifying \fB\fR\fB-u\fR\fB
+deny:all\fR. All users can use the printer by specifying \fB\fR\fB-u\fR\fB
+allow:all\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fR
+.ad
+.sp .6
+.RS 4n
+The \fB-U\fR option allows your print service to access a remote printer. (It
+does not enable your print service to access a remote printer service.)
+Specifically, \fB-U\fR assigns the ``dialing'' information \fIdial-info\fR to
+the printer. \fIdial-info\fR is used with the \fBdial\fR routine to call the
+printer. Any network connection supported by the Basic Networking Utilities
+works. \fIdial-info\fR can be either a phone number for a modem connection, or
+a system name for other kinds of connections. Or, if \fB-U\fR \fBdirect\fR is
+given, no dialing takes place, because the name \fBdirect\fR is reserved for a
+printer that is directly connected. If a system name is given, it is used to
+search for connection details from the file \fB/etc/uucp/Systems\fR or related
+files. The Basic Networking Utilities are required to support this option. By
+default, \fB\fR\fB-U\fR\fB direct\fR is assumed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\fR\fB-v\fR \fIdevice\fR\fR
+.ad
+.sp .6
+.RS 4n
+Associate a \fIdevice\fR with \fIprinter\fR. \fIdevice\fR is the path name of a
+file that is writable by \fBlp\fR. Notice that the same \fIdevice\fR can be
+associated with more than one printer.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR \fIscheme\fR\fB://\fR\fIend-point\fR\fR
+.ad
+.sp .6
+.RS 4n
+Associate a network attached device with printer.
+.sp
+\fIscheme\fR is the method or protocol used to access the network attached
+device and \fIend-point\fR is the information necessary to contact that network
+attached device. Use of this device format requires the use of the \fBuri\fR
+interface script and can only be used with the \fBsmb\fR scheme at this time.
+.sp
+For example:
+.sp
+.in +2
+.nf
+# lpadmin \fB-p\fR \fIqueue\fR \fB-v\fR \fBsmb://smb-\fR\fIservice\fR\fB/\fR\fIprinter\fR \fB-m\fR \fBuri\fR
+.fi
+.in -2
+.sp
+
+See the \fBsmbspool\fR man page for details.
+.RE
+
+.SS "Removing a Printer Destination"
+The \fB-x\fR \fIdest\fR option removes the destination \fIdest\fR (a printer or
+a class), from the \fBLP\fR print service. If \fIdest\fR is a printer and is
+the only member of a class, then the class is deleted, too. If \fIdest\fR is
+\fBall\fR, all printers and classes are removed. If there are no remaining
+local printers and the scheduler is still running, the scheduler is shut down.
+.sp
+.LP
+No other \fIoptions\fR are allowed with \fB-x\fR.
+.SS "Setting/Changing the System Default Destination"
+The \fB-d\fR [\fIdest\fR] option makes \fIdest\fR (an existing printer or
+class) the new system default destination. If \fIdest\fR is not supplied, then
+there is no system default destination. No other \fIoptions\fR are allowed with
+\fB-d\fR.
+.SS "Setting an Alert for a Print Wheel"
+.ne 2
+.na
+\fB\fB-S\fR \fIprint-wheel\fR [\fB-A\fR \fIalert-type\fR] [\fB-W\fR
+\fIminutes\fR] [\fB-Q\fR \fIrequests\fR] \fB-T\fR\fR
+.ad
+.sp .6
+.RS 4n
+The \fB-S\fR \fIprint-wheel\fR option is used with the \fB-A\fR
+\fIalert-type\fR option to define an alert to mount the print wheel when there
+are jobs queued for it. If this command is not used to arrange alerting for a
+print wheel, no alert is sent for the print wheel. Notice the other use of
+\fB-A\fR, with the \fB-p\fR option, above.
+.sp
+The \fIalert-types\fR are:
+.sp
+.ne 2
+.na
+\fB\fBmail\fR\fR
+.ad
+.RS 17n
+Send the alert message using the \fBmail\fR command to the administrator.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBwrite\fR\fR
+.ad
+.RS 17n
+Write the message, using the \fBwrite\fR command, to the terminal on which the
+administrator is logged in. If the administrator is logged in on several
+terminals, one is arbitrarily chosen.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBquiet\fR\fR
+.ad
+.RS 17n
+Do not send messages for the current condition. An administrator can use this
+option to temporarily stop receiving further messages about a known problem.
+Once the \fIprint-wheel\fR has been mounted and subsequently unmounted,
+messages are sent again when the number of print requests reaches the threshold
+specified by the \fB-Q\fR option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnone\fR\fR
+.ad
+.RS 17n
+Do not send messages until the \fB-A\fR option is given again with a different
+\fIalert-type\fR (other than \fBquiet\fR).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIshell-command\fR\fR
+.ad
+.RS 17n
+Run the \fIshell-command\fR each time the alert needs to be sent. The shell
+command should expect the message in standard input. If there are blanks
+embedded in the command, enclose the command in quotes. Notice that the
+\fBmail\fR and \fBwrite\fR values for this option are equivalent to the values
+\fBmail\fR \fIuser-name\fR and \fBwrite\fR \fIuser-name\fR respectively, where
+\fIuser-name\fR is the current name for the administrator. This is the login
+name of the person submitting this command unless he or she has used the
+\fBsu\fR command to change to another user ID. If the \fBsu\fR command has been
+used to change the user ID, then the \fIuser-name\fR for the new ID is used.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBlist\fR\fR
+.ad
+.RS 17n
+Display the type of the alert for the print wheel on standard output. No change
+is made to the alert.
+.RE
+
+The message sent appears as follows:
+.sp
+.in +2
+.nf
+The print wheel \fIprint-wheel\fR needs to be mounted
+on the printer(s):
+\fIprinter\fR(\fIinteger1\fRrequests) \fIinteger2\fR print requests
+await this print wheel.
+.fi
+.in -2
+.sp
+
+The printers listed are those that the administrator had earlier specified were
+candidates for this print wheel. The number \fIinteger1\fR listed next to each
+printer is the number of requests eligible for the printer. The number
+\fIinteger2\fR shown after the printer list is the total number of requests
+awaiting the print wheel. It is less than the sum of the other numbers if some
+requests can be handled by more than one printer.
+.sp
+If the \fIprint-wheel\fR is \fBall\fR, the alerting defined in this command
+applies to all print wheels already defined to have an alert.
+.sp
+If the \fB-W\fR option is not given, the default procedure is that only one
+message is sent per need to mount the print wheel. Not specifying the \fB-W\fR
+option is equivalent to specifying \fB\fR\fB-W\fR\fB once\fR or \fB-W\fR
+\fB0\fR. If \fIminutes\fR is a number greater than zero, an alert is sent at
+intervals specified by \fIminutes\fR.
+.sp
+If the \fB-Q\fR option is also given, the alert is sent when a certain number
+(specified by the argument \fIrequests\fR) of print requests that need the
+print wheel are waiting. If the \fB-Q\fR option is not given, or \fIrequests\fR
+is 1 or \fBany\fR (which are both the default), a message is sent as soon as
+anyone submits a print request for the print wheel when it is not mounted.
+.RE
+
+.SH PREDEFINED OPTIONS USED WITH THE \fB-o\fR OPTION
+A number of options, described below, are predefined for use with \fB-o\fR.
+These options are used for adjusting printer capabilities, adjusting printer
+port characteristics, configuring network printers, and controlling the use of
+banner. The \fB-o\fR also supports an arbitrary \fB\fIkeyword\fR=\fIvalue\fR\fR
+format, which is referred to below as an undefined option.
+.SS "Adjusting Printer Capabilities"
+The \fBlength\fR, \fBwidth\fR, \fBcpi\fR, and \fBlpi\fR parameters can be used
+in conjunction with the \fB-o\fR option to adjust printer capabilities. The
+format of the parameters and their values is as follows:
+.sp
+.in +2
+.nf
+length=\fIscaled-decimal-number\fR
+width=\fIscaled-decimal-number\fR
+cpi=\fIscaled-decimal-number\fR
+lpi=\fIscaled-decimal-number\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The term \fIscaled-decimal-number\fR refers to a non-negative number used to
+indicate a unit of size. The type of unit is shown by a ``trailing'' letter
+attached to the number. Three types of \fIscaled-decimal-numbers\fR can be used
+with the LP print service: numbers that show sizes in centimeters (marked with
+a trailing \fBc\fR); numbers that show sizes in inches (marked with a trailing
+\fBi\fR); and numbers that show sizes in units appropriate to use (without a
+trailing letter), that is, lines, characters, lines per inch, or characters per
+inch.
+.sp
+.LP
+The option values must agree with the capabilities of the type of physical
+printer, as defined in the terminfo database for the printer type. If they do
+not, the command is rejected.
+.sp
+.LP
+The defaults are defined in the \fBterminfo\fR entry for the specified printer
+type. The defaults can be reset by:
+.sp
+.in +2
+.nf
+\fBlpadmin -p \fIprintername\fR -o length=
+lpadmin -p \fIprintername\fR -o width=
+lpadmin -p \fIprintername\fR -o cpi=
+lpadmin -p \fIprintername\fR -o lpi=\fR
+.fi
+.in -2
+.sp
+
+.SS "Adjusting Printer Port Characteristics"
+You use the \fBstty\fR keyword in conjunction with the o option to adjust
+printer port characteristics. The general form of the \fBstty\fR portion of the
+command is:
+.sp
+.in +2
+.nf
+\fBstty="'\fR\fIstty-option-list\fR'"
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The \fIstty-option-list\fR is not checked for allowed values, but is passed
+directly to the \fBstty\fR program by the standard interface program. Any error
+messages produced by \fBstty\fR when a request is processed (by the standard
+interface program) are mailed to the user submitting the request.
+.sp
+.LP
+The default for \fBstty\fR is:
+.sp
+.in +2
+.nf
+stty="'9600 cs8 -cstopb -parenb ixon
+ -ixany opost -olcuc onlcr
+ -ocrnl -onocr
+ -onlret -ofill nl0 cr0 tab0 bs0 vt0 ff0'"
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The default can be reset by:
+.sp
+.in +2
+.nf
+\fBlpadmin -p \fIprintername\fR -o stty=\fR
+.fi
+.in -2
+.sp
+
+.SS "Configuring Network Printers"
+The \fBdest\fR, \fBprotocol\fR, \fBbsdctrl\fR, and \fBtimeout\fR parameters are
+used in conjunction with the \fB-o\fR option to configure network printers. The
+format of these keywords and their assigned values is as follows:
+.sp
+.in +2
+.nf
+dest=\fIstring\fR protocol=\fIstring\fR bsdctrl=\fIstring\fR \e
+ timeout=\fInon-negative-integer-seconds\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+These four options are provided to support network printing. Each option is
+passed directly to the interface program; any checking for allowed values is
+done there.
+.sp
+.LP
+The value of \fBdest\fR is the name of the destination for the network printer;
+the semantics for value \fBdest\fR are dependent on the printer and the
+configuration. There is no default.
+.sp
+.LP
+The value of option \fBprotocol\fR sets the over-the-wire protocol to the
+printer. The default for option \fBprotocol\fR is \fBbsd\fR. The value of
+option \fBbsdctrl\fR sets the print order of control and data files (BSD
+protocol only); the default for this option is \fBcontrol file first\fR. The
+value of option \fBtimeout\fR sets the seed value for backoff time when the
+printer is busy. The default value for the \fBtimeout\fR option is \fB10\fR
+seconds. The defaults can be reset by:
+.sp
+.in +2
+.nf
+\fBlpadmin -p \fIprintername\fR -o protocol=
+lpadmin -p \fIprintername\fR \fR\fB-o bsdctrl=\fR
+lpadmin -p \fIprintername\fR -o timeout=
+.fi
+.in -2
+.sp
+
+.SS "Controlling the Use of the Banner Page"
+Use the following commands to control the use of the banner page:
+.sp
+.in +2
+.nf
+\fBlpadmin -p \fIprinter\fR -o nobanner\fR
+\fBlpadmin -p \fIprinter\fR -o banner\fR
+\fBlpadmin -p \fIprinter\fR -o banner=always\fR
+\fBlpadmin -p \fIprinter\fR -o banner=never\fR
+\fBlpadmin -p \fIprinter\fR -o banner=optional\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The first and fifth commands (\fB-o\fR \fBnobanner\fR and \fB-o\fR
+\fBbanner=optional\fR) are equivalent. The default is to print the banner page,
+unless a user specifies \fB-o\fR \fBnobanner\fR on an \fBlp\fR command line.
+.sp
+.LP
+The second and third commands (\fB-o\fR \fBbanner\fR and \fB-o\fR
+\fBbanner=always\fR) are equivalent. Both cause a banner page to be printed
+always, even if a user specifies \fBlp\fR \fB-o\fR \fBnobanner\fR. The root
+user can override this command.
+.sp
+.LP
+The fourth command (\fB-o\fR \fBbanner=never\fR) causes a banner page never to
+be printed, even if a user specifies \fBlp\fR \fB-o\fR \fBbanner\fR. The root
+user can override this command.
+.SS "Undefined Options"
+The \fB-o\fR option supports the use of arbitrary, user-defined options with
+the following format:
+.sp
+.ne 2
+.na
+\fB\fIkey\fR\fB=\fR\fIvalue\fR\fR
+.ad
+.sp .6
+.RS 4n
+Each \fIkey\fR\fB=\fR\fIvalue\fR is passed directly to the interface program.
+Any checking for allowed values is done in the interface program.
+.sp
+Any default values for a given \fIkey\fR\fB=\fR\fIvalue\fR option are defined
+in the interface program. If a default is provided, it can be reset by typing
+the key without any value:
+.sp
+.in +2
+.nf
+lpadmin -p \fIprintername\fR -o \fIkey\fR=
+.fi
+.in -2
+.sp
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBlpadmin\fR \fB-p\fR \fIprinter\fR \fB-o\fR \fBfoo | nofoo\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets boolean values \fBfoo=true | foo=false\fR.
+.RE
+
+.SH EXAMPLES
+In the following examples, \fIprtr\fR can be any name up to 14 characters and
+can be the same name as the \fBping\fR(8) name.
+.LP
+\fBExample 1 \fRConfiguring an HP Postscript Printer with a Jet Direct Network
+Interface
+.sp
+.LP
+The following example configures an HP postscript printer with a jet direct
+network interface:
+
+.sp
+.in +2
+.nf
+example# \fBlpadmin -p \fIprtr\fR -v /dev/null -m netstandard \e
+ -o dest=\fIping_name_of_prtr\fR:9100 -o protocol=tcp -T PS -I \e
+ postscript\fR
+example# \fBenable \fIprtr\fR\fR
+example# \fBaccept \fIprtr\fR\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRConfiguring a Standard Postscript Network Printer
+.sp
+.LP
+The following example configures a standard postscript network printer:
+
+.sp
+.in +2
+.nf
+example# \fBlpadmin -p \fIprtr\fR -v /dev/null -m netstandard \e
+ -o dest=\fIping_name_of_prtr\fR -T PS -I postscript\fR
+example# \fBenable \fIprtr\fR\fR
+example# \fBaccept \fIprtr\fR\fR
+.fi
+.in -2
+.sp
+
+.SH EXIT STATUS
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 12n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fBnon-zero\fR
+.ad
+.RS 12n
+An error occurred.
+.RE
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/var/spool/lp/*\fR\fR
+.ad
+.RS 26n
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/lp\fR\fR
+.ad
+.RS 26n
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/lp/alerts/printer\fR\fR
+.ad
+.RS 26n
+Fault handler for \fBlpadmin\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/printers.conf\fR\fR
+.ad
+.RS 26n
+System printer configuration database
+.RE
+
+.SH ATTRIBUTES
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Obsolete
+.TE
+
+.SH SEE ALSO
+.BR enable (1),
+.BR lp (1),
+.BR lpstat (1),
+.BR mail (1),
+.BR stty (1),
+.BR dial (3NSL),
+.BR terminfo (5),
+.BR attributes (7),
+.BR accept (8),
+.BR lpforms (8),
+.BR lpsched (8),
+.BR lpsystem (8),
+.BR ping (8)
+.sp
+.LP
+\fI\fR
+.SH NOTES
+When using lpadmin to provide access to a remote printer, remote configuration
+data is stored in \fB/etc/printers.conf\fR. This data includes a \fBbsdaddr\fR
+and a \fBprinter-uri-supported\fR attribute. The data in this file can be
+shared through the use of a network name service or replicated across multiple
+systems. If the data is shared, it is important to make sure that the
+\fBbsdaddr\fR and \fBprinter-uri-supported\fR contain hostname information that
+is correctly resolved on all hosts sharing this data. Also, the
+\fBprinter-uri-supported\fR is the preferred means of accessing remote print
+service. The \fBbsdaddr\fR is supplied for backward compatibility with Solaris
+2.6-10 systems.
diff --git a/usr/src/man/man8/lpfilter.8 b/usr/src/man/man8/lpfilter.8
new file mode 100644
index 0000000000..3aee1059d5
--- /dev/null
+++ b/usr/src/man/man8/lpfilter.8
@@ -0,0 +1,500 @@
+'\" te
+.\" Copyright (c) 2000, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH LPFILTER 8 "Apr 3, 1997"
+.SH NAME
+lpfilter \- administer filters used with the LP print service
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/lpfilter\fR \fB-f\fR \fIfilter-name\fR
+ {\fB-\fR | \fB-i\fR | \fB-l\fR | \fB-x\fR | \fB-F\fR \fIpathname\fR}
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBlpfilter\fR command is used to add, change, delete, or list a filter
+used with the \fBLP\fR print service. These filters convert the content of a
+file to have a content type acceptable to a printer.
+.SH OPTIONS
+.sp
+.LP
+Arguments consist of the \fB-f\fR\fIfilter-name\fR option and exactly one of
+the arguments appearing within braces (\fB{\fR\|\fB}\fR) in the SYNOPSIS.
+.sp
+.ne 2
+.na
+\fB\fB\(mi\fR\fR
+.ad
+.RS 18n
+Adds or changes a filter as specified from standard input. The format of the
+input is specified below. If \fB-f\fR \fBall\fR is specified with the
+\fB\(mi\fR option, the specified change is made to all existing filters. This
+is not useful.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR \fIfilter-name\fR\fR
+.ad
+.RS 18n
+Specifies the \fIfilter-name\fR of the filter to be added, changed, reset,
+deleted, or listed. The filter name \fBall\fR is a special filter name defined
+below. The \fB-f\fR option is required.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-F\fR \fIpathname\fR\fR
+.ad
+.RS 18n
+Adds or changes a filter as specified by the contents of the file
+\fIpathname\fR. The format of the file's contents is specified below. If
+\fB\fR\fB-f\fR\fB all\fR is specified with the \fB-F\fR option, the specified
+change is made to all existing filters. This is not useful.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-i\fR\fR
+.ad
+.RS 18n
+Resets a filter to its default settings. Using \fB\fR\fB-f\fR\fB all\fR with
+the \fB-i\fR option restores all filters for which predefined settings are
+available to their original settings.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR\fR
+.ad
+.RS 18n
+Lists a filter description. Using \fB-f\fR \fBall\fR with the \fB-l\fR option
+produces a list of all filters.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-x\fR\fR
+.ad
+.RS 18n
+Deletes a filter. Using \fB-f\fR \fBall\fR with the \fB-x\fR option results in
+all filters being deleted.
+.RE
+
+.SH USAGE
+.SS "Adding or Changing a Filter"
+.sp
+.LP
+The filter named in the \fB-f\fR option is added to the filter table. If the
+filter already exists, its description is changed to reflect the new
+information in the input.
+.sp
+.LP
+When \fB\(mi\fR is specified, standard input supplies the filter description.
+When \fB-F\fR is specified, the file \fIpathname\fR supplies the filter
+description. One of these two options must be specified to add or change a
+filter.
+.sp
+.LP
+When an existing filter is changed with the \fB-F\fR or \fB\(mi\fR option,
+lines in the filter description that are not specified in the new information
+are not changed. When a new filter is added with this command, unspecified
+lines receive default values. See below.
+.sp
+.LP
+Filters are used to convert the content of a request from its initial type
+into a type acceptable to a printer. For a given print request, the \fBLP\fR
+print service knows the following:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The content type of the request (specified by \fBlp\fR \fB-T\fR or determined
+implicitly).
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The name of the printer (specified by \fBlp\fR \fB-d\fR).
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The printer type (specified by \fBlpadmin\fR \fB-T\fR).
+.sp
+The printer type is intended to be a printer model, but some people specify it
+with a content type even though \fBlpadmin\fR \fB-I\fR is intended for this
+purpose.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The content types acceptable to the printer (specified by \fBlpadmin\fR
+\fB-I\fR\fB)\fR.
+.sp
+The values specified by the \fBlpadmin\fR \fB-T\fR are treated as if they were
+specified by the \fB-I\fR option as well.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The modes of printing asked for by the originator of the request (specified by
+various options to \fBlp\fR).
+.RE
+.sp
+.LP
+The system uses the above information to construct a list of one or more
+filters that converts the document's content type into a content type
+acceptable to the printer and consumes all \fBlp\fR arguments that invoke
+filters (\fB-y\fR and \fB-P\fR).
+.sp
+.LP
+The contents of the file (specified by the \fB-F\fR option) and the input
+stream from standard input (specified by \fB\(mi\fR) must consist of a series
+of lines, such that each line conforms to the syntax specified by one of the
+seven lines below. All lists are comma or space separated. Each item contains a
+description.
+.sp
+.in +2
+.nf
+\fBInput types: \fR\fIcontent-type-list\fR
+\fBOutput types: \fR\fIcontent-type-list\fR
+\fBPrinter types: \fR\fIprinter-type-list\fR
+\fBPrinters: \fR\fIprinter-list\fR
+\fBFilter type: \fR\fIfilter-type\fR
+\fBCommand: \fR\fIshell-command\fR
+\fBOptions: \fR\fItemplate-list\fR
+.fi
+.in -2
+.sp
+
+.sp
+.ne 2
+.na
+\fB\fBInput\fR \fBtypes\fR\fR
+.ad
+.RS 17n
+This gives the content types that can be accepted by the filter. The default is
+\fBany\fR. The document content type must be a member of this list for the
+initial filter in the sequence.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBOutput\fR \fBtypes\fR\fR
+.ad
+.RS 17n
+This gives the content types that the filter can produce from any of the input
+(content) types. The default is \fBany\fR. The intersection of the output
+types of this list and the content types acceptable to the printer (from
+\fBlpadmin\fR \fB-I\fR and \fBlpadmin \fR\fB-T\fR) must be non-null for the
+last filter in the sequence. For adjacent filters in the sequence, the
+intersection of output types of one and the input types of the next must be
+non-null.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPrinter\fR \fBtypes\fR\fR
+.ad
+.RS 17n
+This gives the printer types for which this printer can be used. The \fBLP\fR
+print service will restrict the use of the filter to these printer types (from
+\fBlpadmin\fR \fB-T\fR). The default is \fBany\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPrinters\fR\fR
+.ad
+.RS 17n
+This gives the names of the printers for which the filter can be used. The
+\fBLP\fR print service will restrict the use of the filter to just the printers
+named. The default is \fBany\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBFilter\fR \fBtype\fR\fR
+.ad
+.RS 17n
+This marks the filter as a \fBslow\fR filter or a \fBfast\fR filter. Slow
+filters are generally those that take a long time to convert their input (that
+is, minutes or hours). They are run before the job is scheduled for a printer,
+to keep the printers from being tied up while the filter is running. If a
+listed printer is on a remote system, the filter type for it must have the
+value \fBslow\fR. That is, if a client defines a filter, it must be a slow
+filter. Fast filters are generally those that convert their input quickly (that
+is, faster than the printer can process the data), or those that must be
+connected to the printer when run. Fast filters will be given to the interface
+program to run while connected to the physical printer.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBCommand\fR\fR
+.ad
+.RS 17n
+This specifies which program to run to invoke the filter. The full program
+pathname as well as fixed options must be included in the \fIshell-command\fR;
+additional options are constructed, based on the characteristics of each print
+request and on the \fBOptions\fR field. A command must be given for each
+filter. The command must accept a data stream as standard input and produce the
+converted data stream on its standard output. This allows filter pipelines to
+be constructed to convert data not handled by a single filter.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBOptions\fR\fR
+.ad
+.RS 17n
+This is a comma-separated list of templates used by the \fBLP\fR print
+service to construct options to the filter from the characteristics of each
+print request listed in the table later. The \fB-y\fR and \fB- P\fR arguments
+to the \fBlp\fR command cause a filter sequence to be built even if there is no
+need for a conversion of content types.
+.sp
+In general, each template is of the following form:
+.sp
+\fIkeyword pattern \fR\fB=\fR \fIreplacement\fR
+.sp
+The \fIkeyword\fR names the characteristic that the template attempts to map
+into a filter-specific option; each valid \fIkeyword\fR is listed in the table
+below.
+.sp
+A \fIpattern\fR is one of the following: a literal pattern of one of the forms
+listed in the table, a single asterisk (\fB*\fR), or a regular expression. If
+\fIpattern\fR matches the value of the characteristic, the template fits and
+is used to generate a filter-specific option. The \fIreplacement\fR is what
+will be used as the option.
+.sp
+Regular expressions are the same as those found on the \fBregexp\fR(7) manual
+page. This includes the \fB\e(\fR\&...\fB\e)\fR and \fB\e\fR\fIn\fR
+constructions, which can be used to extract portions of the \fIpattern\fR for
+copying into the \fIreplacement\fR, and the \fB&\fR, which can be used to copy
+the entire \fIpattern\fR into the \fIreplacement\fR.
+.sp
+The \fIreplacement\fR can also contain a \fB*\fR; it too, is replaced with the
+entire \fIpattern\fR, just like the \fB&\fR of \fBregexp\fR(7).
+.RE
+
+.sp
+.LP
+The keywords are:
+.sp
+.in +2
+.nf
+lp Option Characteristic \fIkeyword\fR Possible \fIpatterns\fR
+
+-T Content type INPUT content-type
+ (input)
+
+Not applicable Content type OUTPUT content-type
+ (output)
+
+not applicable Printer type TERM printer-type
+
+-d Printer name PRINTER \fIprinter-name\fR
+
+-f, -o cpi= Character pitch CPI integer
+
+-f, -o lpi= Line pitch LPI integer
+
+-f, -o length= Page length LENGTH integer
+
+-f, -o width= Page width WIDTH integer
+
+-P Pages to print PAGES page-list
+
+-S Character set CHARSET character-set-name
+ Print wheel CHARSET print-wheel-name
+
+-f Form name FORM form-name
+
+-y Modes MODES mode
+
+-n Number of COPIES \fIinteger\fR
+ copies
+.fi
+.in -2
+.sp
+
+.SS "Resetting a Filter to Defaults"
+.sp
+.LP
+If the filter named is one originally delivered with the \fBLP\fR print
+service, the \fB-i\fR option restores the original filter description.
+.SS "Deleting a Filter"
+.sp
+.LP
+The \fB-x\fR option is used to delete the filter specified in filter-name
+from the \fBLP\fR filter table.
+.SS "Listing a Filter Description"
+.sp
+.LP
+The \fB-l\fR option is used to list the description of the filter named in
+filter-name. If the command is successful, the following message is sent to
+standard output:
+.sp
+.in +2
+.nf
+\fBInput types: \fR\fIcontent-type-list\fR
+\fBOutput types: \fR\fIcontent-type-list\fR
+\fBPrinter types: \fR\fIprinter-type-list\fR
+\fBPrinters: \fR\fIprinter-list\fR
+\fBFilter type: \fR\fIfilter-type\fR
+\fBCommand: \fR\fIshell-command\fR
+\fBOptions: \fR\fItemplate-list\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+If the command fails, an error message is sent to standard error.
+.SS "Large File Behavior"
+.sp
+.LP
+See \fBlargefile\fR(7) for the description of the behavior of \fBlpfilter\fR
+when encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRPrinting with the landscape option
+.sp
+.LP
+For example, the template
+
+.sp
+.in +2
+.nf
+\fBMODES landscape = \fR\fB-l\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+shows that if a print request is submitted with the \fB-y\fR \fBlandscape\fR
+option, the filter will be given the option \fB-l\fR.
+
+.LP
+\fBExample 2 \fRSelecting the printer type
+.sp
+.LP
+As another example, the template
+
+.sp
+.in +2
+.nf
+\fBTERM * = \fR\fB-T\fR\fB *\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+shows that the filter will be given the option \fB-T\fR \fIprinter-type\fR for
+whichever \fIprinter-type\fR is associated with a print request using the
+filter.
+
+.LP
+\fBExample 3 \fRUsing the keywords table
+.sp
+.LP
+Consider the template
+
+.sp
+.in +2
+.nf
+\fBMODES prwidth\e=\e(.*\e) = \fR\fB-w\fR\fB\e1\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Suppose a user gives the command
+
+.sp
+.in +2
+.nf
+\fBlp -y prwidth=10\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+From the table above, the \fBLP\fR print service determines that the \fB-y\fR
+option is handled by a \fBMODES\fR template. The \fBMODES\fR template here
+works because the pattern prwidth=) matches the prwidth=10 given by the user.
+The replacement -w1 causes the \fBLP\fR print service to generate the filter
+option \fB-w10\fR. If necessary, the \fBLP\fR print service will construct a
+filter pipeline by concatenating several filters to handle the user's file and
+all the print options. See \fBsh\fR(1) for a description of a pipeline. If the
+print service constructs a filter pipeline, the \fBINPUT\fR and \fBOUTPUT\fR
+values used for each filter in the pipeline are the types of input and output
+for that filter, not for the entire pipeline.
+
+.SH EXIT STATUS
+.sp
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 12n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fInon-zero\fR\fR
+.ad
+.RS 12n
+An error occurred.
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR lp (1),
+.BR sh (1),
+.BR attributes (7),
+.BR largefile (7),
+.BR regexp (7),
+.BR lpadmin (8)
+.sp
+.LP
+\fI\fR
+.SH NOTES
+.sp
+.LP
+If the \fBlp\fR command specifies more than one document, the filtering chain
+is determined by the first document. Other documents may have a different
+format, but they will print correctly only if the filter chain is able to
+handle their format.
diff --git a/usr/src/man/man8/lpforms.8 b/usr/src/man/man8/lpforms.8
new file mode 100644
index 0000000000..4b040fdf67
--- /dev/null
+++ b/usr/src/man/man8/lpforms.8
@@ -0,0 +1,672 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 1997 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH LPFORMS 8 "Apr 3, 1997"
+.SH NAME
+lpforms \- administer forms used with the LP print service
+.SH SYNOPSIS
+.LP
+.nf
+\fBlpforms\fR \fB-f\fR \fIform-name\fR \fIoption\fR
+.fi
+
+.LP
+.nf
+\fBlpforms\fR \fB-f\fR \fIform-name\fR \fB-A\fR \fIalert-type\fR [\fB-P\fR \fIpaper-name\fR [\fB-d\fR]]
+ [\fB-Q\fR \fIrequests\fR] [\fB-W\fR \fIminutes\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBlpforms\fR command administers the use of preprinted forms, such as
+company letterhead paper, with the LP print service. A form is specified by its
+\fIform-name\fR. Users may specify a form when submitting a print request (see
+\fBlp\fR(1)). The argument \fBall\fR can be used instead of \fIform-name\fR
+with either of the command lines shown above. The first command line allows
+the administrator to add, change, and delete forms, to list the attributes of
+an existing form, and to allow and deny users access to particular forms. The
+second command line is used to establish the method by which the administrator
+is alerted that the form \fIform-name\fR must be mounted on a printer.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-f\fR \fIform-name\fR\fR
+.ad
+.RS 16n
+Specify a form.
+.RE
+
+.sp
+.LP
+The first form of \fBlpforms\fR requires that one of the following
+\fIoption\fRs (\fB\(mi\fR, \fB-l\fR, \fB-F\fR, \fB-x\fR) must be used:
+.sp
+.ne 2
+.na
+\fB\fB-F\fR \fIpathname\fR\fR
+.ad
+.RS 15n
+To add or change form \fIform-name\fR, as specified by the information in
+\fIpathname\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\(mi\fR\fR
+.ad
+.RS 15n
+To add or change form \fIform-name\fR, as specified by the information from
+standard input.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR\fR
+.ad
+.RS 15n
+To list the attributes of form \fIform-name\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-x\fR\fR
+.ad
+.RS 15n
+To delete form \fIform-name\fR (this option must be used separately; it may not
+be used with any other option).
+.RE
+
+.sp
+.LP
+The second form of the \fBlpforms\fR command requires the \fB-A\fR
+\fIalert-type\fR option. The other options are optional.
+.sp
+.ne 2
+.na
+\fB\fB-A\fR \fIalert-type\fR\fR
+.ad
+.RS 24n
+Defines an alert to mount the form when there are queued jobs which need it.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-P\fR \fIpaper-name\fR [ \fB-d\fR ]\fR
+.ad
+.RS 24n
+Specify the paper name when creating the form. If \fB-d\fR is specified, this
+paper is the default.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-Q\fR \fIrequests\fR\fR
+.ad
+.RS 24n
+An alert will be sent when a certain number of print requests that need the
+form are waiting.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-W\fR \fIminutes\fR\fR
+.ad
+.RS 24n
+An alert will be sent at intervals specified by minutes.
+.RE
+
+.SH USAGE
+.SS "Adding or Changing a Form"
+.sp
+.LP
+The \fB-F\fR \fIpathname\fR option is used to add a new form, \fIform-name\fR,
+to the LP print service, or to change the attributes of an existing form. The
+form description is taken from \fIpathname\fR if the \fB-F\fR option is given,
+or from the standard input if the \fB\(mi\fR option is used. One of these two
+options must be used to define or change a form.
+.sp
+.LP
+\fIpathname\fR is the path name of a file that contains all or any subset of
+the following information about the form.
+.sp
+.in +2
+.nf
+\fBPage length\fR: \fIscaled-decimal-number1\fR
+\fBPage width\fR: \fIscaled-decimal-number2\fR
+\fBNumber of pages\fR: \fIinteger\fR
+\fBLine pitch\fR: \fIscaled-decimal-number3\fR
+\fBCharacter pitch\fR: \fIscaled-decimal-number4\fR
+\fBCharacter set choice\fR: \fIcharacter-set/print-wheel\fR [\fBmandatory\fR]
+\fBRibbon color\fR: \fIribbon-color\fR
+\fBComment:\fR
+\fIcomment\fR
+\fBAlignment pattern\fR: [\fIcontent-type\fR]
+\fIcontent\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The term ``scaled-decimal-number'' refers to a non-negative number used to
+indicate a unit of size. The type of unit is shown by a ``trailing'' letter
+attached to the number. Three types of scaled decimal numbers can be used with
+the LP print service: numbers that show sizes in centimeters (marked with a
+trailing \fBc\fR); numbers that show sizes in inches (marked with a trailing
+\fBi\fR); and numbers that show sizes in units appropriate to use (without a
+trailing letter); lines, characters, lines per inch, or characters per inch.
+.sp
+.LP
+Except for the last two lines, the above lines may appear in any order. The
+\fBComment:\fR and \fIcomment\fR items must appear in consecutive order but may
+appear before the other items, and the \fBAlignment pattern:\fR and the
+\fIcontent\fR items must appear in consecutive order at the end of the file.
+Also, the \fIcomment\fR item may not contain a line that begins with any of the
+key phrases above, unless the key phrase is preceded with a \fB>\fR sign. Any
+leading > sign found in the \fIcomment\fR will be removed when the comment is
+displayed. There is no case distinction among the key phrases.
+.sp
+.LP
+When this command is issued, the form specified by \fIform-name\fR is added to
+the list of forms. If the form already exists, its description is changed to
+reflect the new information. Once added, a form is available for use in a print
+request, except where access to the form has been restricted, as described
+under the \fB-u\fR option. A form may also be allowed to be used on certain
+printers only.
+.sp
+.LP
+A description of each form attribute is below:
+.sp
+.ne 2
+.na
+\fB\fBPage length\fR and \fBPage Width\fR\fR
+.ad
+.sp .6
+.RS 4n
+Before printing the content of a print request needing this form, the generic
+interface program provided with the LP print service will initialize the
+physical printer to handle pages \fIscaled-decimal-number1\fR long, and
+\fIscaled-decimal-number2\fR wide using the printer type as a key into the
+\fBterminfo\fR(5) database. The page length and page width will also be passed,
+if possible, to each filter used in a request needing this form.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBNumber of pages\fR\fR
+.ad
+.sp .6
+.RS 4n
+Each time the alignment pattern is printed, the LP print service will attempt
+to truncate the \fIcontent\fR to a single form by, if possible, passing to each
+filter the page subset of 1-\fIinteger\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBLine pitch\fR and \fBCharacter pitch\fR\fR
+.ad
+.sp .6
+.RS 4n
+Before printing the content of a print request needing this form, the interface
+program provided with the LP print service will initialize the physical
+printer to handle these pitches, using the printer type as a key into the
+\fBterminfo\fR(5) database. Also, the pitches will be passed, if possible, to
+each filter used in a request needing this form. \fIscaled-decimal-number3\fR
+is in lines-per-centimeter if a \fBc\fR is appended, and lines-per-inch
+otherwise; similarly, \fIscaled-decimal-number4\fR is in
+characters-per-centimeter if a \fBc\fR is appended, and characters-per-inch
+otherwise. The character pitch can also be given as \fBelite\fR (12
+characters-per-inch), \fBpica\fR (10 characters-per-inch), or \fBcompressed\fR
+(as many characters-per-inch as possible).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBCharacter set choice\fR\fR
+.ad
+.sp .6
+.RS 4n
+When the LP print service alerts an administrator to mount this form, it will
+also mention that the print wheel \fIprint-wheel\fR should be used on those
+printers that take print wheels. If printing with this form is to be done on a
+printer that has selectable or loadable character sets instead of print wheels,
+the interface programs provided with the LP print service will automatically
+select or load the correct character set. If \fBmandatory\fR is appended, a
+user is not allowed to select a different character set for use with the form;
+otherwise, the character set or print wheel named is a suggestion and a default
+only.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBRibbon color\fR\fR
+.ad
+.sp .6
+.RS 4n
+When the LP print service alerts an administrator to mount this form, it will
+also mention that the color of the ribbon should be \fIribbon-color\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBComment\fR\fR
+.ad
+.sp .6
+.RS 4n
+The LP print service will display the \fIcomment\fR unaltered when a user asks
+about this form (see \fBlpstat\fR(1)).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBAlignment pattern\fR\fR
+.ad
+.sp .6
+.RS 4n
+When mounting this form, an administrator can ask for the \fIcontent\fR to be
+printed repeatedly, as an aid in correctly positioning the preprinted form. The
+optional \fIcontent-type\fR defines the type of printer for which \fIcontent\fR
+had been generated. If \fIcontent-type\fR is not given, \fBsimple\fR is
+assumed. Note that the \fIcontent\fR is stored as given, and will be readable
+only by the user \fBlp\fR.
+.RE
+
+.sp
+.LP
+When an existing form is changed with this command, items missing in the new
+information are left as they were. When a new form is added with this command,
+missing items will get the following defaults:
+.sp
+.in +2
+.nf
+Page Length: \fB66\fR
+Page Width: \fB80\fR
+Number of Pages: \fB1\fR
+Line Pitch: \fB6\fR
+Character Pitch: \fB10\fR
+Character Set Choice: \fBany\fR
+Ribbon Color: \fBany\fR
+.fi
+.in -2
+.sp
+
+.SS "Deleting a Form"
+.sp
+.LP
+LP print service" The \fB-x\fR option is used to delete the form
+\fIform-name\fR from the LP print service.
+.SS "Listing Form Attributes"
+.sp
+.LP
+The \fB-l\fR option is used to list the attributes of the existing form
+\fIform-name\fR. The attributes listed are those described under \fBAdding and
+Changing a Form,\fR above. Because of the potentially sensitive nature of the
+alignment pattern, only the administrator can examine the form with this
+command. Other people may use the \fBlpstat\fR(1) command to examine the
+non-sensitive part of the form description.
+.SS "Allowing and Denying Access to a Form"
+.sp
+.LP
+The \fB-u\fR option, followed by the argument \fBallow:\fR\fIlogin-ID-list\fR
+or \fB\fR\fB-u\fR \fBdeny:\fR\fIlogin-ID-list\fR lets you determine which users
+will be allowed to specify a particular form with a print request. This option
+can be used with the \fB-F\fR or \fB\(mi\fR option, each of which is described
+above under \fBAdding or Changing a Form\fR.
+.sp
+.LP
+The \fIlogin-ID-list\fR argument may include any or all of the following
+constructs:
+.sp
+.ne 2
+.na
+\fB\fIlogin-ID\fR\fR
+.ad
+.RS 24n
+A user on any system
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIsystem_name\fR\fB!\fR\fIlogin-ID\fR\fR
+.ad
+.RS 24n
+A user on system \fIsystem_name\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIsystem_name\fR\fB!all\fR\fR
+.ad
+.RS 24n
+All users on system \fIsystem_name\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBall!\fR\fIlogin-ID\fR\fR
+.ad
+.RS 24n
+A user on all systems
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBall\fR\fR
+.ad
+.RS 24n
+All users on all systems
+.RE
+
+.sp
+.LP
+The LP print service keeps two lists of users for each form: an ``allow-list''
+of people allowed to use the form, and a ``deny-list'' of people that may not
+use the form. With the \fB\fR\fB-u\fR \fBallow\fR option, the users listed are
+added to the allow-list and removed from the deny-list. With the \fB\fR\fB-u\fR
+\fBdeny\fR option, the users listed are added to the deny-list and removed
+from the allow-list. (Both forms of the \fB-u\fR option can be run together
+with the \fB-F\fR or the \fB\(mi\fR option.)
+.sp
+.LP
+If the allow-list is not empty, only the users in the list are allowed access
+to the form, regardless of the content of the deny-list. If the allow-list is
+empty but the deny-list is not, the users in the deny-list may not use the
+form, (but all others may use it). All users can be denied access to a form by
+specifying \fB\fR\fB-f\fR \fBdeny:all\fR. All users can be allowed access to a
+form by specifying \fB\fR\fB-f\fR \fBallow:all\fR. (This is the default.)
+.SS "Setting an Alert to Mount a Form"
+.sp
+.LP
+The \fB\fR\fB-f\fR \fIform-name\fR option is used with the \fB\fR\fB-A\fR
+\fIalert-type\fR option to define an alert to mount the form when there are
+queued jobs which need it. If this option is not used to arrange alerting for a
+form, no alert will be sent for that form.
+.sp
+.LP
+The method by which the alert is sent depends on the value of the
+\fIalert-type\fR argument specified with the \fB-A\fR option. The
+\fIalert-types\fR are:
+.sp
+.ne 2
+.na
+\fB\fBmail\fR\fR
+.ad
+.RS 17n
+Send the alert message using the \fBmail\fR command to the administrator.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBwrite\fR\fR
+.ad
+.RS 17n
+Write the message, using the \fBwrite\fR command, to the terminal on which the
+administrator is logged in. If the administrator is logged in on several
+terminals, one is arbitrarily chosen.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBquiet\fR\fR
+.ad
+.RS 17n
+Do not send messages for the current condition. An administrator can use this
+option to temporarily stop receiving further messages about a known problem.
+Once the form \fIform-name\fR has been mounted and subsequently unmounted,
+messages will again be sent when the number of print requests reaches the
+threshold specified by the \fB-Q\fR option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBshowfault\fR\fR
+.ad
+.RS 17n
+Attempt to execute a form alert handler on each system that has a print job for
+that form in the queue. The fault handler is \fB/etc/lp/alerts/form\fR. It is
+invoked with three parameters: \fIform_name\fR, \fBdate\fR, \fIfile_name\fR.
+\fIfile_name\fR is the name of a file containing the form alert message.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnone\fR\fR
+.ad
+.RS 17n
+Do not send messages until the \fB-A\fR option is given again with a different
+\fIalert-type\fR (other than \fBquiet\fR).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIshell-command\fR\fR
+.ad
+.RS 17n
+Run the \fIshell-command\fR each time the alert needs to be sent. The shell
+command should expect the message in standard input. If there are blank spaces
+embedded in the command, enclose the command in quotes. Note that the
+\fBmail\fR and \fBwrite\fR values for this option are equivalent to the values
+\fBmail\fR \fIlogin-ID\fR and \fBwrite\fR \fIlogin-ID\fR respectively, where
+\fIlogin-ID\fR is the current name for the administrator. This will be the
+login name of the person submitting this command unless he or she has used the
+\fBsu\fR command to change to another login-ID. If the \fBsu\fR command has
+been used to change the user ID, then the \fIuser-name\fR for the new ID is
+used.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBlist\fR\fR
+.ad
+.RS 17n
+Display the type of the alert for the form on standard output. No change is
+made to the alert.
+.RE
+
+.sp
+.LP
+The message sent appears as follows:
+.sp
+.in +2
+.nf
+The form \fIform-name\fR needs to be mounted
+on the printer(s):\fIprinter\fR (\fIinteger1\fR \fBrequests)\fR.
+\fIinteger2\fR print requests await this form.
+Use the \fIribbon-color\fR ribbon.
+Use the \fIprint-wheel\fR print wheel, if appropriate.
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The printers listed are those that the administrator has specified as
+candidates for this form. The number \fIinteger1\fR listed next to each printer
+is the number of requests eligible for the printer. The number \fIinteger2\fR
+shown after the list of printers is the total number of requests awaiting the
+form. It will be less than the sum of the other numbers if some requests can be
+handled by more than one printer. The \fIribbon-color\fR and \fIprint-wheel\fR
+are those specified in the form description. The last line in the message is
+always sent, even if none of the printers listed use print wheels, because the
+administrator may choose to mount the form on a printer that does use a print
+wheel.
+.sp
+.LP
+Where any color ribbon or any print wheel can be used, the statements above
+will read:
+.sp
+.in +2
+.nf
+\fBUse any ribbon.\fR
+\fBUse any print-wheel.\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+If \fIform-name\fR is \fBany\fR, the \fIalert-type\fR defined in this command
+applies to any form for which an alert has not yet been defined. If
+\fIform-name\fR is \fBall\fR, the \fIalert-type\fR defined in this command
+applies to all forms.
+.sp
+.LP
+If the \fB-W\fR \fIminutes\fR option is not given, the default procedure is
+that only one message will be sent per need to mount the form. Not specifying
+the \fB-W\fR option is equivalent to specifying \fB\fR\fB-W\fR \fBonce\fR or
+\fB-W\fR \fB0\fR. If \fIminutes\fR is a number greater than \fB0\fR, an alert
+will be sent at intervals specified by \fIminutes\fR.
+.sp
+.LP
+If the \fB-Q\fR \fIrequests\fR option is also given, the alert will be sent
+when a certain number (specified by the argument \fIrequests\fR) of print
+requests that need the form are waiting. If the \fB-Q\fR option is not given,
+or the value of \fIrequests\fR is \fB1\fR or \fBany\fR (which are both the
+default), a message is sent as soon as anyone submits a print request for the
+form when it is not mounted.
+.SS "Listing the Current Alert"
+.sp
+.LP
+The \fB-f\fR option, followed by the \fB-A\fR option and the argument
+\fBlist\fR is used to list the \fIalert-type\fR that has been defined for the
+specified form \fIform-name\fR. No change is made to the alert. If
+\fIform-name\fR is recognized by the LP print service, one of the following
+lines is sent to the standard output, depending on the type of alert for the
+form.
+.sp
+.ne 2
+.na
+\fB\(mi\fR
+.ad
+.RS 8n
+\fBWhen\fR \fIrequests\fR \fBrequests are queued:\fR \fBalert
+with\fR\fIshell-command\fR \fBevery\fR \fIminutes\fR \fBminutes\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\(mi\fR
+.ad
+.RS 8n
+\fBWhen\fR \fIrequests\fR \fBrequests are queued:\fR \fBwrite to\fR
+\fIuser-name\fR \fBevery\fR \fIminutes\fR \fBminutes\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\(mi\fR
+.ad
+.RS 8n
+\fBWhen\fR \fIrequests\fR \fBrequests are queued:\fR \fBmail to\fR
+\fIuser-name\fR \fBevery\fR \fIminutes\fR \fBminutes\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\(mi\fR
+.ad
+.RS 8n
+\fBNo alert\fR
+.RE
+
+.sp
+.LP
+The phrase \fBevery\fR \fIminutes\fR \fBminutes\fR is replaced with \fBonce\fR
+if \fIminutes\fR (\fB-W\fR\fI\fR\fIminutes\fR) is 0.
+.SS "Terminating an Active Alert"
+.sp
+.LP
+The \fB-A\fR \fBquiet\fR option is used to stop messages for the current
+condition. An administrator can use this option to temporarily stop receiving
+further messages about a known problem. Once the form has been mounted and then
+unmounted, messages will again be sent when the number of print requests
+reaches the threshold \fIrequests\fR.
+.SS "Removing an Alert Definition"
+.sp
+.LP
+No messages will be sent after the \fB-A\fR \fBnone\fR option is used until the
+\fB-A\fR option is given again with a different \fIalert-type\fR. This can be
+used to permanently stop further messages from being sent as any existing
+alert definition for the form will be removed.
+.SS "Large File Behavior"
+.sp
+.LP
+See \fBlargefile\fR(7) for the description of the behavior of \fBlpforms\fR
+when encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
+.SH EXIT STATUS
+.sp
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 12n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fBnon-zero\fR
+.ad
+.RS 12n
+An error occurred.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/lp/alerts/form\fR\fR
+.ad
+.RS 23n
+Fault handler for \fBlpform\fR.
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR lp (1),
+.BR lpstat (1),
+.BR terminfo (5),
+.BR attributes (7),
+.BR largefile (7),
+.BR lpadmin (8)
+.sp
+.LP
+\fI\fR
diff --git a/usr/src/man/man8/lpget.8 b/usr/src/man/man8/lpget.8
new file mode 100644
index 0000000000..3835326dc6
--- /dev/null
+++ b/usr/src/man/man8/lpget.8
@@ -0,0 +1,189 @@
+'\" te
+.\" Copyright (C) 2003, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH LPGET 8 "Feb 25, 2017"
+.SH NAME
+lpget \- get printing configuration
+.SH SYNOPSIS
+.LP
+.nf
+\fBlpget\fR [\fB-k\fR \fIkey\fR] [\fIdestination\fR... | list]
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBlpget\fR utility reads printing configuration information from the
+configuration databases in \fB$HOME/.printers\fR, \fB/etc/printers.conf\fR,
+and \fBprinters.conf.byname\fR. This
+information, called a \fIconfiguration report\fR, is displayed to the standard
+output. See \fBprinters\fR(5) and \fBprinters.conf\fR(5) for information about
+the printer configuration databases.
+.sp
+.LP
+\fBlpget\fR displays a configuration report for all keys for the specified
+destination or destinations by default. Use the \fB-k\fR option to display a
+configuration report for specific keys. Use the \fBlist\fR operand to display a
+configuration report for all configured destinations.
+.SH OPTIONS
+.LP
+The following option is supported:
+.sp
+.ne 2
+.na
+\fB\fB-k\fR \fIkey\fR\fR
+.ad
+.RS 10n
+Displays a configuration report for \fIkey\fR. See \fBprinters.conf\fR(5) for
+information about specifying \fIkey\fR.
+.RE
+
+.SH OPERANDS
+.LP
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fB\fIdestination\fR\fR
+.ad
+.RS 15n
+Displays a configuration report for \fIdestination\fR. Destination can be
+either a printer of a class of printers. See \fBlpadmin\fR(8). Specify
+\fIdestination\fR using atomic or POSIX-style
+(\fIserver\fR\fB:\fR\fIdestination\fR) names. See \fBprinters.conf\fR(5) for
+information regarding the naming conventions for atomic names and
+\fBstandards\fR(7) for information concerning POSIX.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBlist\fR\fR
+.ad
+.RS 15n
+Displays a configuration report for all configured destinations.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRDisplaying a Configuration Report for the \fBbsdaddr\fR Key
+.sp
+.LP
+The following example displays a configuration report for the \fBbsdaddr\fR
+key for printer \fBcatalpa\fR.
+
+.sp
+.in +2
+.nf
+example% \fBlpget -k bsdaddr catalpa\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRA Configuration Report for all Keys for all Configured
+Destinations
+.sp
+.LP
+The following example displays a configuration report for all keys for all
+configured destinations.
+
+.sp
+.in +2
+.nf
+example% \fBlpget list\fR
+.fi
+.in -2
+.sp
+
+.SH EXIT STATUS
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 12n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fBnon-zero\fR
+.ad
+.RS 12n
+An error occurred.
+.RE
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/etc/printers.conf\fR\fR
+.ad
+.RS 24n
+System printer configuration database.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB$HOME/.printers\fR \fR
+.ad
+.RS 24n
+User-configurable printer database.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBprinters.conf.byname\fR\fR
+.ad
+.RS 24n
+\fBNIS\fR version of \fB/etc/printers.conf\fR.
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Stability Level Stable
+.TE
+
+.SH SEE ALSO
+.LP
+.BR ldap (1),
+.BR lp (1),
+.BR lpstat (1),
+.BR lpc (1B),
+.BR lpq (1B),
+.BR lpr (1B),
+.BR printers (5),
+.BR printers.conf (5),
+.BR attributes (7),
+.BR standards (7),
+.BR lpadmin (8),
+.BR lpset (8)
+.sp
+.LP
+\fI\fR
+.SH NOTES
+.LP
+Be mindful of the following if the LDAP database is used as the name service.
+If the \fBldapclient\fR(8) server is a replica LDAP server, LDAP printer
+database updates may not appear immediately, as the replica server may not not
+have been updated by the master server and can be out of sync. For example, a
+printer that you deleted by using \fBlpset\fR(8) may still appear in the
+printer list you display with \fBlpget\fR until the replica is updated from the
+master. Replica servers vary as to how often they are updated from the master.
+Refer to the \fI\fR for more information on LDAP replication.
diff --git a/usr/src/man/man8/lpmove.8 b/usr/src/man/man8/lpmove.8
new file mode 100644
index 0000000000..79ac527f18
--- /dev/null
+++ b/usr/src/man/man8/lpmove.8
@@ -0,0 +1,178 @@
+'\" te
+.\" Copyright (c) 2006 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH LPMOVE 8 "Feb 25, 2017"
+.SH NAME
+lpmove \- move print requests
+.SH SYNOPSIS
+.LP
+.nf
+\fBlpmove\fR [\fIrequest-ID\fR] \fIdestination\fR
+.fi
+
+.LP
+.nf
+\fBlpmove\fR \fIsource\fR \fIdestination\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBlpmove\fR command moves print requests queued by \fBlp\fR(1) or
+\fBlpr\fR(1B) between destinations.
+.sp
+.LP
+The first form of \fBlpmove\fR moves specific print requests (\fIrequest-ID\fR)
+to a specific \fIdestination\fR.
+.sp
+.LP
+The second form of the \fBlpmove\fR command moves all print requests from one
+destination (\fIdestination1\fR) to another (\fIdestination2\fR). This form of
+\fBlpmove\fR also rejects new print requests for \fIdestination1\fR.
+.sp
+.LP
+\fBlpmove\fR moves individual requests or entire queues only within an instance
+of a print service, not between a local and a remote queues or local queues on
+different instances of a print service. Requests can only be moved if the print
+service or protocol supports it. The LP print server and IPP print protocol
+both support moving requests between queues. The BSD print protocol does not.
+.sp
+.LP
+When moving requests, \fBlpmove\fR does not check the acceptance status of the
+destination to which the print requests are being moved (see \fBaccept\fR(8)).
+\fBlpmove\fR does not move requests that have options (for example, content
+type or requiring a special form) that cannot be handled by the new
+destination.
+.SH OPERANDS
+.LP
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fB\fIrequest-ID\fR\fR
+.ad
+.RS 15n
+The specific print request to be moved. Specify \fIrequest-ID\fR as the
+identifier associated with a print request as reported by \fBlpstat\fR. See
+\fBlpstat\fR(1).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIdestination\fR\fR
+.ad
+.RS 15n
+The name of the printer or class of printers (see \fBlpadmin\fR(8)) to which
+\fBlpmove\fR moves a \fIspecified\fR print request. Specify \fIdestination\fR
+using atomic, URI-style (\fIscheme\fR://\fIendpoint\fR), POSIX-style
+(\fIserver\fR\fB:\fR\fIdestination\fR) syntax.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIsource\fR\fR
+.ad
+.RS 15n
+The name of the destination from which \fBlpmove\fR moves \fIall\fR print
+requests. Specify \fIdestination\fR using atomic, URI-style
+(\fIscheme\fR\fB://\fR\fIendpoint\fR), POSIX-style
+(\fIserver\fR\fB:\fR\fIdestination\fR) syntax.
+.RE
+
+.sp
+.LP
+See \fBprinters.conf\fR(5) for information regarding the naming conventions for
+atomic names and \fBstandards\fR(7) for information regarding POSIX.
+.SH EXIT STATUS
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 12n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fBnon-zero\fR
+.ad
+.RS 12n
+An error occurred.
+.RE
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/etc/printers.conf\fR\fR
+.ad
+.RS 24n
+System printer configuration database
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB$HOME/.printers\fR\fR
+.ad
+.RS 24n
+User-configurable printer database
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBou=printers\fR\fR
+.ad
+.RS 24n
+LDAP version of \fB/etc/printers.conf\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBprinters.conf.byname\fR\fR
+.ad
+.RS 24n
+\fBNIS\fR version of \fB/etc/printers.conf\fR
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Obsolete
+.TE
+
+.SH SEE ALSO
+.LP
+.BR lp (1),
+.BR lpstat (1),
+.BR lpr (1B),
+.BR printers.conf (5),
+.BR attributes (7),
+.BR standards (7),
+.BR accept (8),
+.BR lpadmin (8),
+.BR lpsched (8)
+.sp
+.LP
+\fISystem Administration Guide: Solaris Printing\fR
+.SH NOTES
+.LP
+When IPP is in use, the user is prompted for a passphrase if the remote print
+service is configured to require authentication.
diff --git a/usr/src/man/man8/lpsched.8 b/usr/src/man/man8/lpsched.8
new file mode 100644
index 0000000000..450d72aeb0
--- /dev/null
+++ b/usr/src/man/man8/lpsched.8
@@ -0,0 +1,142 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 2004 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH LPSCHED 8 "Sep 3, 2004"
+.SH NAME
+lpsched \- start the LP print service
+.SH SYNOPSIS
+.LP
+.nf
+\fBlpsched\fR [\fB-f\fR \fInum_filters\fR] [\fB-n\fR \fInum_notifiers\fR] [\fB-p\fR \fIfd_limit\fR]
+ [\fB-r\fR \fIreserved_fds\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBlpsched\fR command starts or restarts the \fBLP\fR print service.
+.sp
+.LP
+The \fBlpshut\fR command stops the \fBLP\fR print service. Printers that are
+restarted using \fBlpsched\fR reprint (in their entirety) print requests that
+were stopped by \fBlpshut\fR. See \fBlpshut\fR(8).
+.sp
+.LP
+It is recommended that you start and stop the LP print service using
+\fBsvcadm\fR(8). See \fBNOTES\fR.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-f\fR\fI num_filters\fR\fR
+.ad
+.RS 20n
+Specifies the number of concurrent slow filters that may be run on a print
+server. A default value of \fB1\fR is used if none is specified. Depending on
+server configuration, a value of \fB1\fR may cause printers to remain idle
+while there are jobs queued to them.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR\fI num_notifiers\fR\fR
+.ad
+.RS 20n
+Specifies the number of concurrent notification processes that can run on a
+print server. A default value of \fB1\fR is used when none is specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR\fI fd_limit\fR\fR
+.ad
+.RS 20n
+Specifies the file descriptor resource limit for the \fBlpsched\fR process. A
+default value of \fB4096\fR is used if none is specified. On extremely large
+and active print servers, it may be necessary to increase this value.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-r\fR\fI reserved_fds\fR\fR
+.ad
+.RS 20n
+Specifies the number of file descriptors that the scheduler reserves for
+internal communications under heavy load. A default value of \fB2\fR is used
+when none is specified. It should not be necessary to modify this value unless
+instructed to do so when troubleshooting problems under high load.
+.RE
+
+.SH EXIT STATUS
+.sp
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 12n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fBnon-zero\fR
+.ad
+.RS 12n
+An error occurred.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/var/spool/lp/*\fR\fR
+.ad
+.RS 19n
+\fBLP\fR print queue.
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR lp (1),
+.BR lpstat (1),
+.BR svcs (1),
+.BR attributes (7),
+.BR smf (7),
+.BR lpadmin (8),
+.BR lpmove (8),
+.BR lpshut (8),
+.BR svcadm (8)
+.sp
+.LP
+\fI\fR
+.SH NOTES
+.sp
+.LP
+The \fBlpsched\fR service is managed by the service management facility,
+\fBsmf\fR(7), under the service identifier:
+.sp
+.in +2
+.nf
+svc:/application/print/server
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Administrative actions on this service, such as enabling, disabling, or
+requesting restart, can be performed using \fBsvcadm\fR(8). The service's
+status can be queried using the \fBsvcs\fR(1) command.
diff --git a/usr/src/man/man8/lpset.8 b/usr/src/man/man8/lpset.8
new file mode 100644
index 0000000000..cef44381b6
--- /dev/null
+++ b/usr/src/man/man8/lpset.8
@@ -0,0 +1,241 @@
+'\" te
+.\" Copyright (C) 2003, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH LPSET 8 "November 22, 2021"
+.SH NAME
+lpset \- set printing configuration in /etc/printers.conf or other supported
+databases
+.SH SYNOPSIS
+.nf
+\fBlpset\fR [\fB-n\fR system | fnsldap] [\fB-x\fR]
+ [ [\fB-D\fR binddn] [\fB-w\fR passwd] [\fB-h\fR ldaphost]]
+ [\fB-a\fR \fIkey=value\fR] [\fB-d\fR \fIkey\fR] \fIdestination\fR
+.fi
+
+.SH DESCRIPTION
+The \fBlpset\fR utility sets printing configuration information in the system
+configuration databases. Use \fBlpset\fR to create and update printing
+configuration in \fB/etc/printers.conf\fR.
+See \fBnsswitch.conf\fR(5) and \fBprinters.conf\fR(5).
+.sp
+.LP
+Only a superuser or a member of Group 14 may execute \fBlpset\fR.
+.SH OPTIONS
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-n\fR \fBsystem\fR|\fBldap\fR\fR
+.ad
+.RS 26n
+Create or update the configuration information for the \fIdestination\fR entry
+in \fB/etc/printers.conf\fR or LDAP printer contexts. \fBsystem\fR specifies
+that the information is created or updated in \fB/etc/printers.conf\fR.
+\fBldap\fR specifies that the information is written to an LDAP server.
+.sp
+If \fB-n\fR is not specified, \fBsystem\fR is the default.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-x\fR\fR
+.ad
+.RS 26n
+Remove all configuration for the \fIdestination\fR entry from the database
+specified by the \fB-n\fR option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-a\fR \fIkey\fR\fB=\fR\fIvalue\fR\fR
+.ad
+.RS 26n
+Configure the specified \fIkey\fR\fB=\fR\fIvalue\fR pair for the
+\fIdestination\fR. See \fBprinters.conf\fR(5) for information regarding the
+specification of \fIkey\fR\fB=\fR\fIvalue\fR pairs.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-d\fR \fIkey\fR\fR
+.ad
+.RS 26n
+Delete the configuration option specified by \fIkey\fR for the
+\fIdestination\fR entry. See \fBprinters.conf\fR(5) for information regarding
+the specification of \fIkey\fR and \fIkey\fR\fB=\fR\fIvalue\fR pairs.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-D\fR \fBbinddn\fR\fR
+.ad
+.RS 26n
+Use the distinguished name (DN) \fBbinddn\fR to bind to the LDAP directory
+server.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-w\fR \fBpasswd\fR\fR
+.ad
+.RS 26n
+Use \fBpasswd\fR as the password for authentication to the LDAP directory
+server.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-h\fR \fBldaphost\fR\fR
+.ad
+.RS 26n
+Specify an alternate host on which the LDAP server is running. This option is
+only used when \fBldap\fR is specified as the naming service. If this option is
+not specified, the default is the current host system.
+.RE
+
+.SH OPERANDS
+The following operand is supported:
+.sp
+.ne 2
+.na
+\fB\fIdestination\fR\fR
+.ad
+.RS 15n
+Specifies the entry in \fB/etc/printers.conf\fR or
+LDAP, in which to create or modify information. \fIdestination\fR names a
+printer of class of printers. See \fBlpadmin\fR(8). Each entry in
+\fBprinters.conf\fR describes one destination. Specify \fIdestination\fR using
+atomic names. POSIX-style destination names are not acceptable. See
+\fBprinters.conf\fR(5) for information regarding the naming conventions for
+atomic names and \fBstandards\fR(7) for information regarding POSIX.
+.RE
+
+.SH EXAMPLES
+\fBExample 1 \fRRemoving All Existing Printing Configuration Information
+.sp
+.LP
+The following example removes all existing printing configuration information
+for destination \fBdogs\fR from \fB/etc/printers.conf\fR:
+
+.sp
+.in +2
+.nf
+example% \fBlpset -x dogs\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRSetting a \fBkey=value\fR Pair in LDAP
+.sp
+.in +2
+.nf
+example% \fBlpset -n ldap -h ldapl.example.com -D "cn=Directory Manager" \e
+ -w passwd -a key1=value1 printer1\fR
+.fi
+.in -2
+.sp
+
+.SH EXIT STATUS
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 12n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fBnon-zero\fR
+.ad
+.RS 12n
+An error occurred.
+.RE
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/etc/printers.conf\fR\fR
+.ad
+.RS 26n
+System configuration database.
+.RE
+
+.SH ATTRIBUTES
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Stability Level Stable
+.TE
+
+.SH SEE ALSO
+.BR ldap (1),
+.BR lp (1),
+.BR lpstat (1),
+.BR lpc (1B),
+.BR lpq (1B),
+.BR lpr (1B),
+.BR nsswitch.conf (5),
+.BR printers (5),
+.BR printers.conf (5),
+.BR attributes (7),
+.BR standards (7),
+.BR ldapclient (8),
+.BR lpadmin (8),
+.BR lpget (8)
+.sp
+.LP
+\fI\fR
+.SH NOTES
+If the \fBldap\fR database is used, the printer administrator should be mindful
+of the following when updating printer information.
+.RS +4
+.TP
+1.
+Because the domain information for the printer being updated is extracted
+from the \fBldapclient\fR(8) configuration, the LDAP server being updated must
+host the same domain that is used by the current \fBldapclient\fR(8) server.
+.RE
+.RS +4
+.TP
+2.
+If the LDAP server being updated is a replica LDAP server, the updates will
+be referred to the master LDAP server and completed there. The updates might be
+out of sync and not appear immediately, as the replica server may not have
+been updated by the master server. For example, a printer that you deleted by
+using \fBlpset\fR may still appear in the printer list you display with
+\fBlpget\fR until the replica is updated from the master. Replica servers vary
+as to how often they are updated from the master. See \fISystem Administration
+Guide: Solaris Printing\fR for information on LDAP server replication.
+.RE
+.RS +4
+.TP
+3.
+Although users can use the LDAP command line utilities \fBldapadd\fR(1) and
+\fBldapmodify\fR(1) to update printer entries in the directory, the preferred
+method is to use \fBlpset\fR. Otherwise, if the \fBldapadd\fR and
+\fBldapmodify\fR utilities are used, the administrator must ensure that the
+\fBprinter-name\fR attribute value is unique within the \fBou=printers\fR
+container on the LDAP server. If the value is not unique, the result of
+modifications done using \fBlpset\fR or the Solaris Print Manager,
+\fBprintmgr\fR(8) may be unpredictable.
+.RE
diff --git a/usr/src/man/man8/lpshut.8 b/usr/src/man/man8/lpshut.8
new file mode 100644
index 0000000000..2933857577
--- /dev/null
+++ b/usr/src/man/man8/lpshut.8
@@ -0,0 +1,66 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 1998 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH LPSHUT 8 "Jan 8, 1998"
+.SH NAME
+lpshut \- stop the LP print service
+.SH SYNOPSIS
+.LP
+.nf
+\fBlpshut\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBlpshut\fR command stops the \fBLP\fR print service.
+.sp
+.LP
+Printers that are printing when \fBlpshut\fR is invoked stop printing. Start or
+restart printers using \fBlpsched\fR(8).
+.SH EXIT STATUS
+.sp
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 12n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fBnon-zero\fR
+.ad
+.RS 12n
+An error occurred.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/var/spool/lp/*\fR\fR
+.ad
+.RS 19n
+\fBLP\fR print queue.
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR lp (1),
+.BR lpstat (1),
+.BR attributes (7),
+.BR lpadmin (8),
+.BR lpmove (8),
+.BR lpsched (8)
+.sp
+.LP
+\fI\fR
diff --git a/usr/src/man/man8/lpsystem.8 b/usr/src/man/man8/lpsystem.8
new file mode 100644
index 0000000000..bf4e97657b
--- /dev/null
+++ b/usr/src/man/man8/lpsystem.8
@@ -0,0 +1,41 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 1999 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH LPSYSTEM 8 "Feb 19, 1999"
+.SH NAME
+lpsystem \- register remote systems with the print service
+.SH DESCRIPTION
+.sp
+.LP
+The \fBlpsystem\fR command is obsolete, and could be removed at any time. The
+print system no longer uses the information generated by \fBlpsystem\fR. See
+\fBlpadmin\fR(8), \fBlpusers\fR(8) or \fBprinters.conf\fR(5) for equivalent
+functionality.
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Stability Level Obsolete*
+.TE
+
+.sp
+.LP
+* This command could be removed at any time.
+.SH SEE ALSO
+.sp
+.LP
+.BR printers.conf (5),
+.BR attributes (7),
+.BR lpadmin (8),
+.BR lpusers (8)
diff --git a/usr/src/man/man8/lpusers.8 b/usr/src/man/man8/lpusers.8
new file mode 100644
index 0000000000..85be4b652a
--- /dev/null
+++ b/usr/src/man/man8/lpusers.8
@@ -0,0 +1,199 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 1996 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH LPUSERS 8 "Aug 19, 1996"
+.SH NAME
+lpusers \- set printing queue priorities
+.SH SYNOPSIS
+.LP
+.nf
+\fBlpusers\fR \fB-d\fR \fIpriority-level\fR
+.fi
+
+.LP
+.nf
+\fBlpusers\fR \fB-q\fR \fIpriority-level\fR \fB-u\fR \fIlogin-ID-list\fR
+.fi
+
+.LP
+.nf
+\fBlpusers\fR \fB-u\fR \fIlogin-ID-list\fR
+.fi
+
+.LP
+.nf
+\fBlpusers\fR \fB-q\fR \fIpriority-level\fR
+.fi
+
+.LP
+.nf
+\fBlpusers\fR \fB-l\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBlpusers\fR command sets limits to the queue priority level that can be
+assigned to jobs submitted by users of the LP print service.
+.sp
+.LP
+The first form of the command (with \fB-d\fR) sets the system-wide priority
+default to \fIpriority-level\fR, where \fIpriority-level\fR is a value of 0 to
+39, with 0 being the highest priority. If a user does not specify a priority
+level with a print request (see \fBlp\fR(1)), the default priority level is
+used. Initially, the default priority level is 20.
+.sp
+.LP
+The second form of the command (with \fB-q\fR and \fB-u\fR) sets the default
+highest \fIpriority-level\fR (\|0-39\|) that the users in \fIlogin-ID-list\fR
+can request when submitting a print request. The \fIlogin-ID-list\fR argument
+may include any or all of the following constructs:
+.sp
+.ne 2
+.na
+\fB\fIlogin-ID\fR\fR
+.ad
+.RS 24n
+A user on any system
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIsystem_name\fR\fB!\fR\fIlogin-ID\fR\fR
+.ad
+.RS 24n
+A user on the system \fIsystem_name\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIsystem_name\fR\fB!all\fR\fR
+.ad
+.RS 24n
+All users on system \fIsystem_name\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBall!\fR\fIlogin-ID\fR\fR
+.ad
+.RS 24n
+A user on all systems
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBall\fR\fR
+.ad
+.RS 24n
+All users on all systems
+.RE
+
+.sp
+.LP
+Users that have been given a limit cannot submit a print request with a higher
+priority level than the one assigned, nor can they change a request that has
+already been submitted to have a higher priority. Any print requests submitted
+with priority levels higher than allowed will be given the highest priority
+allowed.
+.sp
+.LP
+The third form of the command (with \fB-u\fR) removes any explicit priority
+level for the specified users.
+.sp
+.LP
+The fourth form of the command (with \fB-q\fR) sets the default highest
+priority level for all users not explicitly covered by the use of the second
+form of this command.
+.sp
+.LP
+The last form of the command (with \fB-l\fR) lists the default priority level
+and the priority limits assigned to users.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-d\fR\fI priority-level\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set the system-wide priority default to \fIpriority-level\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR\fR
+.ad
+.sp .6
+.RS 4n
+List the default priority level and the priority limits assigned to users.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-q\fR\fI priority-level\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set the default highest priority level for all users not explicitly covered.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-q\fR\fI priority-level\fR \fB-u\fR\fI login-ID-list\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set the default highest \fIpriority-level\fR that the users in
+\fIlogin-ID-list\fR can request when submitting a print request.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-u\fR\fI login-ID-list\fR\fR
+.ad
+.sp .6
+.RS 4n
+Remove any explicit priority level for the specified users.
+.RE
+
+.SH EXIT STATUS
+.sp
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 12n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fBnon-zero\fR
+.ad
+.RS 12n
+An error occurred.
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR lp (1),
+.BR attributes (7)
diff --git a/usr/src/man/man8/luxadm.8 b/usr/src/man/man8/luxadm.8
new file mode 100644
index 0000000000..4e7615996f
--- /dev/null
+++ b/usr/src/man/man8/luxadm.8
@@ -0,0 +1,1268 @@
+'\" te
+.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH LUXADM 8 "May 17, 2020"
+.SH NAME
+luxadm \- administer Sun Fire 880 storage subsystem and FC_AL devices
+.SH SYNOPSIS
+.nf
+\fBluxadm\fR [\fIoptions\fR]... \fIsubcommand\fR [\fIoptions\fR]... \fIenclosure\fR
+ [,\fIdev\fR] | \fIpathname\fR...
+.fi
+
+.SH DESCRIPTION
+The \fBluxadm\fR program is an administrative command that manages the
+\fBSENA\fR, Sun Fire 880 internal storage subsystem, and individual Fiber
+Channel Arbitrated Loop (\fBFC_AL\fR) devices. \fBluxadm\fR performs a variety
+of control and query tasks depending on the command line arguments and options
+used.
+.sp
+.LP
+The command line must contain a subcommand. The command line may also contain
+options, usually at least one enclosure name or pathname, and other parameters
+depending on the subcommand. You need specify only as many characters as are
+required to uniquely identify a subcommand.
+.sp
+.LP
+Specify the device that a subcommand interacts with by entering a pathname. For
+the \fBSENA\fR subsystem, a disk device or enclosure services controller may
+instead be specified by entering the World Wide Name (\fBWWN\fR) for the device
+or a port to the device. The device may also be specified by entering the name
+of the \fBSENA\fR enclosure, and an optional identifier for the particular
+device in the enclosure. The individual \fBFC_AL\fR devices may be specified by
+entering the \fBWWN\fR for the device or a port to the device.
+.SS "Pathname"
+Specify the device or controller by either a complete physical pathname or a
+complete logical pathname.
+.sp
+.LP
+For \fBSENA,\fR a typical physical pathname for a device is:
+.sp
+.in +2
+.nf
+/devices/sbus@1f,0/SUNW,socal@1,0/sf@0,0/ssd@w2200002037000f96,
+ 0:a,raw
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+For all \fBSENA IBs\fR (Interface Boards) and Sun Fire 880 SES device
+controllers on the system, a logical link to the physical paths is kept in the
+directory \fB/dev/es\fR. An example of a logical link is \fB/dev/es/ses0\fR.
+.sp
+.LP
+The \fBWWN\fR may be used in place of the pathname to select an \fBFC_AL\fR
+device, \fBSENA\fR subsystem IB, or Sun Fire 880 internal storage subsystem.
+The \fBWWN\fR is a unique 16 hexadecimal digit value that specifies either the
+port used to access the device or the device itself. A typical \fBWWN\fR value
+is:
+.sp
+.in +2
+.nf
+2200002037000f96
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+See NOTES for more information on the \fBWWN\fR formats.
+.sp
+.LP
+For a disk in a Sun Fire 880 internal storage subsystem, a typical physical
+pathname is:
+.sp
+.in +2
+.nf
+/devices/pci@8,600000/SUNW,qlc@2/fp@0,0/ssd@w2100002037a6303c,0:a
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+and a typical logical pathname is:
+.sp
+.in +2
+.nf
+/dev/rdsk/c2t8d0s2
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+For individual FC_AL devices, a typical physical pathname is:
+.sp
+.in +2
+.nf
+/devices/sbus@3.0/SUNW,socal@d,10000/sf@0,0/ssd@w2200002037049fc3,0:a,raw
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+and a typical logical pathname is:
+.sp
+.in +2
+.nf
+/dev/rdsk/c1t0d0s2
+.fi
+.in -2
+.sp
+
+.SS "Enclosure"
+For \fBSENA,\fR a device may be identified by its enclosure name and slotname:
+.br
+.in +2
+\fIbox_name\fR[\fB,f\fR\fIslot_number\fR]
+.in -2
+.br
+.in +2
+\fIbox_name\fR[\fB,r\fR\fIslot_number\fR]
+.in -2
+.sp
+.LP
+\fIbox_name\fR is the name of the \fBSENA\fR enclosure, as specified by the
+\fBenclosure_name\fR subcommand. When used without the optional
+\fIslot_number\fR parameter, the \fIbox_name\fR identifies the \fBSENA\fR
+subsystem \fBIB.\fR
+.sp
+.LP
+\fBf\fR or \fBr\fR specifies the front or rear slots in the \fBSENA\fR
+enclosure.
+.sp
+.LP
+\fIslot_number\fR specifies the slot number of the device in the \fBSENA\fR
+enclosure, \fB0-6\fR or \fB0-10\fR.
+.sp
+.LP
+For a Sun Fire 880 internal storage subsystem, a device may also be identified
+by its enclosure name and slot name. However, there is only one set of disks:
+.sp
+.in +2
+.nf
+\fIbox_name\fR[,\fIsslot_number\fR]
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+\fIbox_name\fR is the name of the Sun Fire 880 enclosure, as specified by the
+\fBenclosure_name\fR subcommand. When used without the optional
+\fIslot_number\fR parameter, \fIbox_name\fR identifies the Sun Fire 880
+internal storage subsystem enclosure services device. Use \fIs\fR to specify
+the disk slot number in the Sun Fire 880 internal storage subsystem, \fB0\fR -
+\fB11\fR.
+.sp
+.LP
+See \fBdisks\fR(8) and \fBdevlinks\fR(8) for additional information on
+logical names for disks and subsystems.
+.SH OPTIONS
+The following options are supported by all subcommands:
+.sp
+.ne 2
+.na
+\fB\fB-e\fR\fR
+.ad
+.RS 6n
+Expert mode. This option is not recommended for the novice user.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.RS 6n
+Verbose mode.
+.RE
+
+.sp
+.LP
+Options that are specific to particular subcommands are described with the
+subcommand in the \fBUSAGE\fR section.
+.SH OPERANDS
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fB\fIenclosure\fR\fR
+.ad
+.sp .6
+.RS 4n
+The \fIbox_name\fR of the \fBSENA\fR or Sun Fire 880 internal storage
+subsystem.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIfibre_channel_HBA_port\fR\fR
+.ad
+.sp .6
+.RS 4n
+The path to the host controller port. A typical path is:
+.sp
+.in +2
+.nf
+ /devices/pci@8,600000/pci@1/SUNW,qlc@4/fp@0,0:devctl
+.fi
+.in -2
+.sp
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIpathname\fR\fR
+.ad
+.sp .6
+.RS 4n
+The logical or physical path of a \fBSENA IB\fR, Sun Fire 880 internal storage
+subsystem, or disk device. \fIpathname\fR can also be the \fBWWN\fR of a
+\fBSENA IB\fR, \fBSENA\fR disk, or individual \fBFC_AL\fR device.
+.RE
+
+.SH USAGE
+.SS "Subcommands"
+.ne 2
+.na
+\fB\fBdisplay\fR \fIenclosure\fR[,\fIdev\fR]\|.\|.\|.\||
+\fIpathname\fR\|.\|.\|.\fR
+.ad
+.br
+.na
+\fB\fBdisplay\fR \fB-p\fR \fIpathname\fR\|.\|.\|.\fR
+.ad
+.br
+.na
+\fB\fBdisplay\fR \fB-r\fR \fIenclosure\fR[,\fIdev\fR]\|.\|.\|.\||
+\fIpathname\fR\|.\|.\|.\fR
+.ad
+.br
+.na
+\fB\fBdisplay\fR \fB-v\fR \fIenclosure\fR[,\fIdev\fR]\|.\|.\|.\||
+\fIpathname\fR\|.\|.\|.\fR
+.ad
+.sp .6
+.RS 4n
+Displays enclosure or device specific data.
+.sp
+Subsystem data consists of enclosure environmental sense information and status
+for all subsystem devices, including disks.
+.sp
+Disk data consists of inquiry, capacity, and configuration information.
+.sp
+.ne 2
+.na
+\fB\fB-p\fR\fR
+.ad
+.RS 6n
+Displays performance information for the device or subsystem specified by
+\fIpathname\fR. This option only applies to subsystems that accumulate
+performance information.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-r\fR\fR
+.ad
+.RS 6n
+Displays error information for the \fBFC_AL\fR device specified by the
+pathname, or, if the path is a \fBSENA,\fR for all devices on the loop. The
+\fB-r\fR option only applies to \fBSENA\fR subsystems and individual
+\fBFC_AL\fR devices.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.RS 6n
+Displays in verbose mode, including mode sense data.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdownload\fR [ \fB-s\fR ] [ \fB-f\fR \fIfilename_path\fR ]
+\fIenclosure\fR.\|.\|.\fR
+.ad
+.sp .6
+.RS 4n
+Download the prom image pointed to the SENA subsystem Interface Board unit or
+the Sun Fire 880 internal storage subsystem specified by the enclosure or
+pathname.
+.sp
+When the \fBSENA's\fR download is complete, the \fBSENA\fR will be reset and
+the downloaded code executed. If no filename is specified, the default prom
+image will be used. The default prom image for the \fBSENA\fR is in the
+directory \fB/usr/lib/locale/C/LC_MESSAGES\fR and is named \fBibfirmware\fR
+.sp
+When the Sun Fire 880 internal storage subsystem's download is complete, the
+subsystem resets and the downloaded code begins execution. The default firmware
+image for the Sun Fire 880 internal storage subsystem is in:
+\fB/usr/platform/SUNW,Sun-Fire-880/lib/images/int_fcbpl_fw\fR.
+.sp
+.ne 2
+.na
+\fB\fB-s\fR\fR
+.ad
+.RS 6n
+Save. The \fB-s\fR option is used to save the downloaded firmware in the
+FEPROM. If \fB-s\fR is not specified, the downloaded firmware will not be saved
+across power cycles.
+.sp
+The \fB-s\fR option does not apply to the Sun Fire 880 internal storage
+subsystem as it always stores downloaded firmware in the flash memory.
+.sp
+When using the \fB-s\fR option, the \fBdownload\fR subcommand modifies the
+\fBFEPROM\fR on the subsystem and should be used with \fIcaution\fR.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBenclosure_name\fR \fInew_name\fR \fIenclosure\fR | \fIpathname\fR\fR
+.ad
+.sp .6
+.RS 4n
+Change the enclosure name of the enclosure or enclosures specified by the
+enclosure or pathname. The new name (\fInew_name\fR) must be 16 or less
+characters. Only alphabetic or numeric characters are acceptable. This
+subcommand applies only to the SENA and the Sun Fire 880 internal storage
+subsystem.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfailover primary\fR | \fBsecondary\fR \fIpathname\fR\fR
+.ad
+.sp .6
+.RS 4n
+Select which Sun Storage T3 storage array partner group controller accesses a
+given logical volume. If \fBprimary\fR is specified, the logical volume is
+accessed through the primary controller. If \fBsecondary\fR is specified, the
+logical volume is accessed through the secondary controller specified by
+\fIpathname\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfcal_s_download\fR [ \fB-f\fR \fIfcode-file\fR ]\fR
+.ad
+.sp .6
+.RS 4n
+Download the fcode contained in the file \fIfcode-file\fR into \fIall\fR the
+\fBFC100/S\fR Sbus Cards. This command is interactive and expects user
+confirmation before downloading the fcode.
+.sp
+Use \fBfcal_s_download\fR \fIonly\fR in single-user mode. Using
+\fBfcal_s_download\fR to update a host adapter while there is \fBI/O\fR
+activity through that adapter \fIwill\fR cause the adapter to reset. Newly
+updated FCode will not be executed or visible until a system reboot.
+.sp
+.ne 2
+.na
+\fB\fB-f\fR \fIfcode-file\fR\fR
+.ad
+.RS 17n
+When invoked without the \fB-f\fR option, the current version of the fcode in
+each \fBFC100/S\fR Sbus card is printed.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfcode_download\fR \fB-p\fR\fR
+.ad
+.br
+.na
+\fB\fBfcode_download\fR \fB-d\fR \fIdir-name\fR\fR
+.ad
+.sp .6
+.RS 4n
+Locate the installed \fBFC/S\fR, \fBFC100/S, FC100/P\fR, or \fBFC100/2P\fR host
+bus adapter cards and download the FCode files in \fIdir-name\fR to the
+appropriate cards. The command determines the correct card for each type of
+file, and is interactive. User confirmation is required before downloading the
+FCode to each device.
+.sp
+Use \fBfcode_download\fR to load FCode only in single-user mode. Using
+\fBfcode_download\fR to update a host adapter while there is \fBI/O\fR activity
+through that adapter causes the adapter to reset. Newly updated FCode will not
+be executed or visible until a system reboot.
+.sp
+.ne 2
+.na
+\fB\fB-d\fR \fIdir-name\fR\fR
+.ad
+.RS 15n
+Download the FCode files contained in the directory \fIdir-name\fR to the
+appropriate adapter cards.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR\fR
+.ad
+.RS 15n
+Prints the current version of FCode loaded on each card. No download is
+performed.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBinquiry\fR \fIenclosure\fR[,\fIdev\fR ]\|.\|.\|.\| |
+\fIpathname\fR\|.\|.\|.\fR
+.ad
+.sp .6
+.RS 4n
+Display the inquiry information for the selected device specified by the
+enclosure or pathname.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBinsert_device\fR [ \fIenclosure\fR,\fIdev\fR\|.\|.\|. ]\fR
+.ad
+.sp .6
+.RS 4n
+Assist the user in the hot insertion of a new device or a chain of new devices.
+Refer to \fBNOTES\fR for limitations on hotplug operations. This subcommand
+applies only to the \fBSENA\fR, Sun Fire 880 internal storage subsystem, and
+individual FC_AL drives. For the \fBSENA\fR, if more than one enclosure has
+been specified, concurrent hot insertions on multiple busses can be performed.
+With no arguments to the subcommand, entire enclosures or individual
+\fBFC_AL\fR drives can be inserted. For the \fBSENA\fR or the Sun Fire 880
+internal storage subsystem, this subcommand guides the user interactively
+through the hot insertion steps of a new device or chain of devices. If a list
+of disks was entered it will ask the user to verify the list of devices to be
+inserted is correct, at which point the user can continue or quit. It then
+interactively asks the user to insert the disk(s) or enclosure(s) and then
+creates and displays the logical pathnames for the devices.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBled\fR \fIenclosure\fR,\fIdev\fR\|.\|.\|.\|| \fIpathname\fR.\|.\|.\fR
+.ad
+.sp .6
+.RS 4n
+Display the current state of the \fBLED\fR associated with the disk specified
+by the enclosure or pathname. This subcommand only applies to subsystems that
+support this functionality.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBled_blink\fR \fIenclosure\fR,\fIdev\fR\|.\|.\|.\||
+\fIpathname\fR\|.\|.\|.\fR
+.ad
+.sp .6
+.RS 4n
+Requests the subsystem to start blinking the \fBLED\fR associated with the disk
+specified by the enclosure or pathname. This subcommand only applies to
+subsystems that support this functionality.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBled_off\fR \fIenclosure\fR,\fIdev\fR\|.\|.\|.\||
+\fIpathname\fR\|.\|.\|.\fR
+.ad
+.sp .6
+.RS 4n
+Requests the subsystem to disable (turn off) the \fBLED\fR associated with the
+disk specified by the enclosure or pathname. On a \fBSENA\fR subsystem, this
+may or may not cause the \fBLED\fR to turn off or stop blinking depending on
+the state of the \fBSENA\fR subsystem. Refer to the \fBSENA\fR Array
+Installation and Service Manual (p/n 802-7573). This subcommand only applies to
+subsystems that support this functionality.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBled_on\fR \fIpathname\fR\|.\|.\|.\fR
+.ad
+.sp .6
+.RS 4n
+Requests the subsystem to enable (turn on) the \fBLED\fR associated with the
+disk specified by the pathname. This subcommand only applies to subsystems that
+support this functionality.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpower_off\fR [ \fB-F\fR ] \fIenclosure\fR[,\fIdev\fR]\|.\|.\|. |
+\fIpathname\fR \|.\|.\|.\fR
+.ad
+.sp .6
+.RS 4n
+When a \fBSENA\fR is addressed, this subcommand causes the \fBSENA\fR subsystem
+to go into the power-save mode. The \fBSENA\fR drives are not available when in
+the power-save mode. When a drive in a \fBSENA\fR is addressed the drive is set
+to the drive off/unmated state. In the drive off/unmated state, the drive is
+spun down (stopped) and in bypass mode. This command does not apply to the Sun
+Fire 880 internal storage subsystem.
+.sp
+.ne 2
+.na
+\fB\fB-F\fR\fR
+.ad
+.RS 6n
+The force option only applies to the \fBSENA.\fR Instructs \fBluxadm\fR to
+attempt to power off one or more devices even if those devices are being used
+by this host (and are, therefore, busy).
+.sp
+\fBWarning\fR: Powering off a device which has data that is currently being
+used will cause unpredictable results. Users should attempt to power off the
+device normally (without \fB-F\fR) first, only resorting to this option when
+sure of the consequences of overriding normal checks.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpower_on\fR \fIenclosure\fR[\fB,\fR\fIdev\fR]\|.\|.\|\fR
+.ad
+.sp .6
+.RS 4n
+Causes the \fBSENA\fR subsystem to go out of the power-save mode, when this
+subcommand is addressed to a \fBSENA.\fR. When this subcommand is addressed to
+a drive the drive is set to its normal start-up state. This command does not
+apply to the Sun Fire 880 internal storage subsystem.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBprobe\fR [ \fB-p\fR ]\fR
+.ad
+.sp .6
+.RS 4n
+Finds and displays information about all attached \fBSENA\fR subsystems, Sun
+Fire 880 internal storage subsystems, and individual \fBFC_AL\fR devices,
+including the logical pathname, the \fBWWNs,\fR and enclosure names. This
+subcommand warns the user if it finds different \fBSENAs\fR with the same
+enclosure names.
+.sp
+.ne 2
+.na
+\fB\fB-p\fR\fR
+.ad
+.RS 6n
+Includes the physical pathname in the display.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBqlgc_s_download\fR [ \fB-f\fR \fIfcode-file\fR ]\fR
+.ad
+.sp .6
+.RS 4n
+Download the FCode contained in the file \fIfcode-file\fR into all the
+\fBFC100/P\fR, \fBFC100/2P\fR \fBPCI\fR host adapter cards. This command is
+interactive and expects user confirmation before downloading the FCode to each
+device. Only use \fBqlgc_s_download\fR in single-user mode. Using
+\fBqlgc_s_download\fR to update a host adapter while there is\fB I/O\fR
+activity through that adapter will cause the adapter to reset. Newly updated
+FCode will not be executed or visible until a system reboot.
+.sp
+.ne 2
+.na
+\fB\fB-f\fR \fIfcode-file\fR\fR
+.ad
+.RS 17n
+When invoked without the \fB-f\fR option, the current version of the FCode in
+each \fBFC100/P\fR,\fB FC100/2P PCI\fR card is printed.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrelease\fR \fIpathname\fR\fR
+.ad
+.sp .6
+.RS 4n
+Release a reservation held on the specified disk. The pathname should be the
+physical or logical pathname for the disk.
+.sp
+This subcommand is included for historical and diagnostic purposes only.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBremove_device\fR [ \fB-F\fR ] \fIenclosure\fR[,\fIdev\fR]\|.\|.\|.\||
+\fIpathname\fR\|.\|.\|.\fR
+.ad
+.sp .6
+.RS 4n
+Assists the user in hot removing a device or a chain of devices. This
+subcommand can also be used to remove entire enclosures. This subcommand
+applies to the \fBSENA\fR, Sun Fire 880 internal storage subsystem, and
+individual \fBFC_AL\fR drives. Refer to \fBNOTES\fR for limitations on hotplug
+operations. For the \fBSENA\fR, Sun Fire 880 internal storage subsystem, and
+individual \fBFC_AL\fR devices, this subcommand guides the user through the hot
+removal of a device or devices. During execution it will ask the user to verify
+the list of devices to be removed is correct, at which point the user can
+continue or quit. It then prepares the disk(s) or enclosure(s) for removal and
+interactively asks the user to remove the disk(s) or enclosure(s).
+.sp
+For Multi-Hosted disk, the steps taken are:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Issue the \fBluxadm\fR \fBremove_device\fR command on the first host. When
+prompted to continue, wait.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Issue the \fBluxadm\fR \fBremove_device\fR command on the secondary hosts. When
+prompted to continue, wait.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Continue with the \fBremove_device\fR command on the first host. Remove the
+device when prompted to do so.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Complete the \fBluxadm\fR \fBremove_device\fR command on the additional hosts.
+.RE
+.sp
+.ne 2
+.na
+\fB\fB-F\fR\fR
+.ad
+.RS 6n
+Instructs \fBluxadm\fR to attempt to hot plug one or more devices even if those
+devices are being used by this host (and are, therefore, \fBbusy\fR or
+\fBreserved\fR), to \fBforce\fR the hotplugging operation.
+.sp
+\fBWarning\fR: Removal of a device which has data that is currently being used
+will cause unpredictable results. Users should attempt to hotplug normally
+(without \fB-F\fR) first, only resorting to this option when sure of the
+consequences of overriding normal hotplugging checks.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBreserve\fR \fIpathname\fR\fR
+.ad
+.sp .6
+.RS 4n
+Reserve the specified disk for exclusive use by the issuing host. The pathname
+used should be the physical or logical pathname for the disk.
+.sp
+This subcommand is included for historical and diagnostic purposes only.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBset_boot_dev\fR [ \fB-y\fR ] \fIpathname\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set the boot-device variable in the system \fBPROM\fR to the physical device
+name specified by \fIpathname\fR, which can be a block special device or the
+pathname of the directory on which the boot file system is mounted. The command
+normally runs interactively requesting confirmation for setting the default
+boot-device in the \fBPROM\fR. The \fB-y\fR option can be used to run it
+non-interactively, in which case no confirmation is requested or required.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBstart\fR \fIpathname\fR\fR
+.ad
+.sp .6
+.RS 4n
+Spin up the specified disk(s) in a SENA.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBstop\fR \fIpathname\fR...\fR
+.ad
+.sp .6
+.RS 4n
+Spin down the specified disks in a SENA.
+.RE
+
+.SS "SENA, Sun Fire 880 Internal Storage Subsystem, and Individual FC_AL Drive Expert Mode Subcommands"
+The following subcommands are for expert use only, and are applicable only to
+the \fBSENA\fR, Sun Fire 880 internal storage subsystem, and fiber channel
+loops. They should only be used by users that are knowledgeable about the
+\fBSENA\fR subsystem and fiber channel loops.
+.sp
+.LP
+If you specify a disk to an expert subcommand that operates on a bus, the
+subcommand operates on the bus to which the specified disk is attached.
+.sp
+.ne 2
+.na
+\fB\fB-e\fR \fBbypass\fR \fB[\fR\fB-ab\fR\fB]\fR \fIenclosure\fR,\fIdev\fR\fR
+.ad
+.br
+.na
+\fB\fB-e\fR \fBbypass\fR \fB-f\fR \fIenclosure\fR\fR
+.ad
+.sp .6
+.RS 4n
+Request the enclosure services controller to set the LRC (Loop Redundancy
+Circuit) to the bypassed state for the port and device specified.
+.sp
+This subcommand supports the following options:
+.sp
+.ne 2
+.na
+\fB\fB-a\fR\fR
+.ad
+.RS 6n
+Bypass port \fBa\fR of the device specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-b\fR\fR
+.ad
+.RS 6n
+Bypass port \fBb\fR of the device specified.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-e\fR \fBdump_map\fR \fIfibre_channel_HBA_port\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display WWN data for a target device or host bus adapter on the specified fibre
+channel port. If there are no target devices on the specified port, an error is
+returned.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-e\fR \fBenable\fR \fB[\fR\fB-ab\fR\fB]\fR \fIenclosure\fR,\fIdev\fR\fR
+.ad
+.br
+.na
+\fB\fB-e\fR \fBenable\fR \fB-f\fR \fIenclosure\fR\fR
+.ad
+.sp .6
+.RS 4n
+Request the enclosure services controller to set the LRC (Loop Redundancy
+Circuit) to the enabled state for the port and device specified.
+.sp
+This subcommand supports the following options:
+.sp
+.ne 2
+.na
+\fB\fB-a\fR\fR
+.ad
+.RS 6n
+Enable port \fBa\fR of the device specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-b\fR\fR
+.ad
+.RS 6n
+Enable port \fBb\fR of the device specified.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\fR\fB-e\fR \fBforcelip\fR \fIenclosure\fR[\fB,\fR\fIdev\fR] \|.\|.\|. |
+\fIpathname\fR\|.\|.\|.\fR
+.ad
+.sp .6
+.RS 4n
+Force the link to reinitialize, using the Loop Initialization Primitive
+(\fBLIP\fR) sequence. The enclosure or pathname can specify any device on the
+loop. Use the pathname to specify a specific path for multiple loop
+configurations.
+.sp
+This is an expert only command and should be used with caution. It will reset
+all ports on the loop.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\fR\fB-e\fR \fBrdls\fR \fIenclosure\fR[\fB,\fR\fIdev\fR] \|.\|.\|. |
+\fIpathname\fR\|.\|.\|.\fR
+.ad
+.sp .6
+.RS 4n
+Read and display the link error status information for all available devices on
+the loop that contains the device specified by the enclosure or pathname.
+.RE
+
+.SS "Other Expert Mode Subcommands"
+See \fBNOTES\fR for limitations of these subcommands. They should only be used
+by users that are knowledgeable about the systems they are managing.
+.sp
+.LP
+These commands do not apply to the Sun Fire 880 internal storage subsystem.
+.sp
+.ne 2
+.na
+\fB\fB\fR\fB-e\fR \fBbus_getstate\fR \fIpathname\fR\fR
+.ad
+.RS 29n
+Get and display the state of the specified bus.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\fR\fB-e\fR \fBbus_quiesce\fR \fIpathname\fR\fR
+.ad
+.RS 29n
+Quiesce the specified bus.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\fR\fB-e\fR \fBbus_reset\fR \fIpathname\fR\fR
+.ad
+.RS 29n
+Reset the specified bus only.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\fR\fB-e\fR \fBbus_resetall\fR \fIpathname\fR\fR
+.ad
+.RS 29n
+Reset the specified bus and all devices.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\fR\fB-e\fR \fBbus_unquiesce\fR \fIpathname\fR\fR
+.ad
+.RS 29n
+Unquiesce the specified bus. the specified device.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\fR\fB-e\fR \fBdev_getstate\fR \fIpathname\fR\fR
+.ad
+.RS 29n
+Get and display the state of the specified device.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\fR\fB-e\fR \fBdev_reset\fR \fIpathname\fR\fR
+.ad
+.RS 29n
+Reset the specified device.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\fR\fB-e\fR \fBoffline\fR \fIpathname\fR\fR
+.ad
+.RS 29n
+Take the specified device offline.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\fR\fB-e\fR \fBonline\fR \fIpathname\fR\fR
+.ad
+.RS 29n
+Put the specified device online.
+.RE
+
+.SH EXAMPLES
+\fBExample 1 \fRDisplaying the \fBSENA\fRs and Individual FC_AL Devices on a
+System
+.sp
+.LP
+The following example finds and displays all of the \fBSENA\fRs and individual
+\fBFC_AL\fR devices on a system:
+
+.sp
+.in +2
+.nf
+example% \fBluxadm probe\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRDisplaying a \fBSENA\fR or Sun Fire 880 Internal Storage
+Subsystem
+.sp
+.LP
+The following example displays a \fBSENA\fR or Sun Fire 880 internal storage
+subsystem:
+
+.sp
+.in +2
+.nf
+example% \fBluxadm display /dev/es/ses0\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRDisplaying Two Subsystems
+.sp
+.LP
+The following example displays two subsystems using the enclosure names:
+
+.sp
+.in +2
+.nf
+example% \fBluxadm display BOB system1\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 4 \fRDisplaying Information about the First Disk
+.sp
+.LP
+The following example displays information about the first disk in the front of
+the enclosure named \fBBOB.\fR Use \fBf\fR to specify the front disks. Use
+\fBr\fR to specify the rear disks.
+
+.sp
+.in +2
+.nf
+example% \fBluxadm display BOB,f0\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 5 \fRDisplaying Information on a Sun Fire 880 Internal Storage
+Subsystem
+.sp
+.LP
+The Sun Fire 880 internal storage subsystem has only one set of disks. In this
+case, use \fIs\fR to specify the slot:
+
+.sp
+.in +2
+.nf
+example% \fBluxadm display BOB,s0\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 6 \fRDisplaying Information about a \fBSENA\fR disk, an Enclosure,
+or an Individual \fBFC_AL\fR Drive
+.sp
+.LP
+The following example displays information about a \fBSENA\fR disk, an
+enclosure, or an individual \fBFC_AL\fR drive with the port \fBWWN\fR of
+\fB2200002037001246\fR:
+
+.sp
+.in +2
+.nf
+example% \fBluxadm display 2200002037001246\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 7 \fRUsing Unique Characters to Issue a Subcommand
+.sp
+.LP
+The following example uses only as many characters as are required to uniquely
+identify a subcommand:
+
+.sp
+.in +2
+.nf
+example% \fBluxadm disp BOB\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 8 \fRDisplaying Error Information
+.sp
+.LP
+The following example displays error information about the loop that the
+enclosure \fBBOB\fR is on:
+
+.sp
+.in +2
+.nf
+example% \fBluxadm display \fR\fB-r\fR\fB BOB\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 9 \fRDownloading New Firmware into the Interface Board
+.sp
+.LP
+The following example downloads new firmware into the Interface Board in the
+enclosure named \fBBOB\fR (using the default path for the file to download):
+
+.sp
+.in +2
+.nf
+example% \fBluxadm download \fR\fB-s\fR\fB BOB\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 10 \fRDisplaying Information from the \fBSCSI\fR Inquiry Command
+.sp
+.LP
+The following example displays information from the \fBSCSI\fR inquiry command
+from all individual disks on the system, using only as many characters as
+necessary to uniquely identify the inquiry subcommand:
+
+.sp
+.in +2
+.nf
+example% \fBluxadm inq /dev/rdsk/c?t?d?s2\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 11 \fRHotplugging
+.sp
+.LP
+The following example hotplugs a new drive into the first slot in the front of
+the enclosure named \fBBOB:\fR
+
+.sp
+.in +2
+.nf
+example% \fBluxadm insert_device BOB,f0\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The following example hotplugs a new drive into the first slot in the Sun Fire
+880 internal storage subsystem named SF880-1:
+
+.sp
+.in +2
+.nf
+example% \fBluxadm insert_device SF880-1,s0\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 12 \fRRunning an Expert Subcommand
+.sp
+.LP
+The following example runs an expert subcommand. The subcommand forces a loop
+initialization on the loop that the enclosure \fBBOB\fR is on:
+
+.sp
+.in +2
+.nf
+example% \fBluxadm \fR\fB-e\fR\fB forcelip BOB\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 13 \fRUsing the Expert Mode Hot Plugging Subcommands
+.sp
+.LP
+An example of using the expert mode hot plugging subcommands to hot remove a
+disk follows. See \fBNOTES\fR for hot plugging limitations.
+
+.sp
+.LP
+The first step reserves the SCSI device so that it can't be accessed by way of
+its second SCSI bus:
+
+.sp
+.in +2
+.nf
+example# \fBluxadm reserve /dev/rdsk/c1t8d0s2\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 14 \fRTaking the Disk to be Removed Offline
+.sp
+.LP
+The next two steps take the disk to be removed offline then quiesce the bus:
+
+.sp
+.in +2
+.nf
+example# \fBluxadm \fR\fB-e\fR\fB offline /dev/rdsk/c1t8d0s2\fR
+example# \fBluxadm -e bus_quiesce /dev/rdsk/c1t8d0s2\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 15 \fRUnquiescing the Bus
+.sp
+.LP
+The user then removes the disk and continues by unquiescing the bus, putting
+the disk back online, then unreserving it:
+
+.sp
+.in +2
+.nf
+example# \fBluxadm \fR\fB-e\fR\fB bus_unquiesce /dev/rdsk/c1t8d0s2\fR
+example# \fBluxadm \fR\fB-e\fR\fB online /dev/rdsk/c1t8d0s2\fR
+example# \fBluxadm release /dev/rdsk/c1t8d0s2\fR
+.fi
+.in -2
+.sp
+
+.SH ENVIRONMENT VARIABLES
+See \fBenviron\fR(7) for a description of the \fBLANG\fR environment variable
+that affects the execution of \fBluxadm\fR.
+.SH EXIT STATUS
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 9n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\(mi1\fR\fR
+.ad
+.RS 9n
+An error occurred.
+.RE
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/usr/lib/firmware/fc_s/fc_s_fcode\fR\fR
+.ad
+.sp .6
+.RS 4n
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/locale/C/LC_MESSAGES/ibfirmware\fR\fR
+.ad
+.sp .6
+.RS 4n
+
+.RE
+
+.SH SEE ALSO
+.BR ses (4D),
+.BR attributes (7),
+.BR environ (7),
+.BR devlinks (8),
+.BR disks (8)
+.SH NOTES
+Currently, only some device drivers
+support hot plugging. If hot plugging is attempted on a disk or bus where it is
+not supported, an error message of the form:
+.sp
+.in +2
+.nf
+luxadm: can't acquire "PATHNAME": No such file or directory
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+will be displayed.
+.sp
+.LP
+You must be careful not to quiesce a bus that contains the root or the
+\fB/usr\fR filesystems or any swap data. If you do quiesce such a bus a
+deadlock can result, requiring a system reboot.
diff --git a/usr/src/man/man8/mail.local.8 b/usr/src/man/man8/mail.local.8
new file mode 100644
index 0000000000..bdddf9db1c
--- /dev/null
+++ b/usr/src/man/man8/mail.local.8
@@ -0,0 +1,212 @@
+'\" te
+.\" Copyright (c) 1983 Eric P. Allman
+.\" Copyright (c) 1988, 1993 The Regents of the University of California. All rights reserved.
+.\" Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 3. All advertising materials mentioning features or use of this software must display
+.\" the following acknowledgement: This product includes software developed by the University of California, Berkeley and its contributors. 4. Neither the name of the University nor the names of its contributors may be used to endorse or promote products derived from this software without specific
+.\" prior written permission. THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR
+.\" CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
+.\" IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+.\" Copyright (c) 1998-2006, 2008 Sendmail, Inc. and its suppliers. All rights reserved.
+.\" The following license terms and conditions apply, unless a different license is obtained from Sendmail, Inc., 6425 Christie Ave, Fourth Floor, Emeryville, CA 94608, USA, or by electronic mail at license@sendmail.com. License Terms: Use, Modification and Redistribution
+.\" (including distribution of any modified or derived work) in source and binary forms is permitted only if each of the following conditions is met: 1. Redistributions qualify as "freeware" or "Open Source Software" under one of the following terms: (a) Redistributions are made at no charge
+.\" beyond the reasonable cost of materials and delivery. (b) Redistributions are accompanied by a copy of the Source Code or by an irrevocable offer to provide a copy of the Source Code for up to three years at the cost of materials and delivery. Such redistributions
+.\" must allow further use, modification, and redistribution of the Source Code under substantially the same terms as this license. For the purposes of redistribution "Source Code" means the complete compilable and linkable source code of sendmail including all modifications.
+.\" 2. Redistributions of source code must retain the copyright notices as they appear in each source code file, these license terms, and the disclaimer/limitation of liability set forth as paragraph 6 below. 3. Redistributions in binary form must reproduce the Copyright Notice, these license
+.\" terms, and the disclaimer/limitation of liability set forth as paragraph 6 below, in the documentation and/or other materials provided with the distribution. For the purposes of binary distribution the "Copyright Notice" refers to the following language: "Copyright (c) 1998-2004 Sendmail,
+.\" Inc. All rights reserved." 4. Neither the name of Sendmail, Inc. nor the University of California nor the names of their contributors may be used to endorse or promote products derived from this software without specific prior written permission. The name "sendmail" is a trademark
+.\" of Sendmail, Inc. 5. All redistributions must comply with the conditions imposed by the University of California on certain embedded code, whose copyright notice and conditions for redistribution are as follows: (a) Copyright (c) 1988, 1993 The Regents of the University of California.
+.\" All rights reserved. (b) Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: (i) Redistributions of source code must retain the above copyright notice, this list of
+.\" conditions and the following disclaimer. (ii) Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
+.\" (iii) Neither the name of the University nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. 6. Disclaimer/Limitation of Liability: THIS SOFTWARE IS PROVIDED BY SENDMAIL,
+.\" INC. AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL SENDMAIL, INC., THE REGENTS OF THE UNIVERSITY OF CALIFORNIA OR CONTRIBUTORS
+.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
+.\" IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
+.\" Portions Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved.
+.TH MAIL.LOCAL 8 "Apr 11, 1997"
+.SH NAME
+mail.local \- store mail in a mailbox
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/mail.local\fR [\fB-f\fR \fIsender\fR] [\fB-d\fR] \fIrecipient\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBmail.local\fR reads the standard input up to an end-of-file and appends it
+to each user's mail file (mailbox). This program is intended to be used by
+\fBsendmail\fR(8) as a mail delivery agent for local mail. It is not a user
+interface agent.
+.sp
+.LP
+Messages are appended to the user's mail file in the \fB/var/mail\fR directory.
+The user must be a valid user name.
+.sp
+.LP
+Each delivered mail message in the mailbox is preceded by a "Unix From line"
+with the following format:
+.sp
+.LP
+\fBFrom\fR \fIsender_address\fR \fItime_stamp\fR
+.sp
+.LP
+The \fIsender_address\fR is extracted from the \fBSMTP\fR envelope address (the
+envelope address is specified with the \fB-f\fR option).
+.sp
+.LP
+A trailing blank line is also added to the end of each message.
+.sp
+.LP
+The mail files are locked with a \fB\&.lock\fR file while mail is appended.
+.sp
+.LP
+The mail files are created with mode \fB660\fR, owner is set to
+\fIrecipient\fR, and group is set to \fBmail\fR. If the ``biff'' service is
+returned by \fBgetservbyname\fR(3SOCKET), the biff server is notified of
+delivered mail. This program also computes the \fBContent-Length:\fR header
+which will be used by the mailbox reader to mark the message boundary.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-f\fR \fIsender\fR\fR
+.ad
+.RS 13n
+Specifies the "envelope from address" of the message. This flag is technically
+optional, but should be used.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-d\fR\fR
+.ad
+.RS 13n
+Specifies the recipient of the message. This flag is also optional and is
+supported here for backward compatibility. That is, \fBmail.local\fR\fI
+recipient\fR is the same as \fBmail.local\fR \fB-d\fR \fIrecipient\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR\fR
+.ad
+.RS 13n
+Turn on \fBLMTP\fR mode.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-r\fR \fIfrom\fR\fR
+.ad
+.RS 13n
+Specify the sender's name (for backward compatibility).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-7\fR\fR
+.ad
+.RS 13n
+Do not advertise 8BITMIME support in \fBLMTP\fR mode.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-b\fR\fR
+.ad
+.RS 13n
+Return a permanent error instead of a temporary error if a mailbox exceeds
+quota.
+.RE
+
+.SH OPERANDS
+.sp
+.LP
+The following operand is supported:
+.sp
+.ne 2
+.na
+\fB\fIrecipient\fR\fR
+.ad
+.RS 13n
+The recipient of the mail message.
+.RE
+
+.SH ENVIRONMENT VARIABLES
+.sp
+.ne 2
+.na
+\fB\fBTZ\fR\fR
+.ad
+.RS 6n
+Used to set the appropriate time zone on the timestamp.
+.RE
+
+.SH EXIT STATUS
+.sp
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 6n
+Successful operation.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB>0\fR\fR
+.ad
+.RS 6n
+An error occurred.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/tmp/local.\fR\fIXXXXXX\fR\fR
+.ad
+.RS 23n
+temporary files
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/tmp/lochd.\fR\fIXXXXXX\fR\fR
+.ad
+.RS 23n
+temporary files
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/mail/\fR\fIuser_name\fR\fR
+.ad
+.RS 23n
+user's mail file
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR mail (1),
+.BR getservbyname (3SOCKET),
+.BR attributes (7),
+.BR comsat (8),
+.BR sendmail (8)
diff --git a/usr/src/man/man8/mailwrapper.8 b/usr/src/man/man8/mailwrapper.8
new file mode 100644
index 0000000000..9b53619d59
--- /dev/null
+++ b/usr/src/man/man8/mailwrapper.8
@@ -0,0 +1,130 @@
+.\" $OpenBSD: mailwrapper.8,v 1.10 2009/02/07 16:58:23 martynas Exp $
+.\" $NetBSD: mailwrapper.8,v 1.11 2002/02/08 01:38:50 ross Exp $
+.\" $FreeBSD: releng/9.1/usr.sbin/mailwrapper/mailwrapper.8 205938 2010-03-30 21:54:25Z delphij $
+.\"
+.\" Copyright (c) 1998
+.\" Perry E. Metzger. All rights reserved.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\" notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\" notice, this list of conditions and the following disclaimer in the
+.\" documentation and/or other materials provided with the distribution.
+.\" 3. All advertising materials mentioning features or use of this software
+.\" must display the following acknowledgment:
+.\" This product includes software developed for the NetBSD Project
+.\" by Perry E. Metzger.
+.\" 4. The name of the author may not be used to endorse or promote products
+.\" derived from this software without specific prior written permission.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
+.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
+.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
+.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+.\"
+.Dd August 7, 2006
+.Dt MAILWRAPPER 8
+.Os
+.Sh NAME
+.Nm \fB/usr/lib/mailwrapper\fR
+.Nd invoke appropriate MTA software based on configuration file
+.Sh SYNOPSIS
+Special.
+See below.
+.Sh DESCRIPTION
+At one time, the only Mail Transfer Agent (MTA) software easily available
+was
+.Xr sendmail 8 .
+As a result of this, most Mail User Agents (MUAs) such as
+.Xr mail 1
+had the path and calling conventions expected by
+.Xr sendmail 8
+compiled in.
+.Pp
+Times have changed, however.
+On a modern
+.Ux
+system, the administrator may wish to use one of several
+available MTAs.
+.Pp
+It would be difficult to modify all MUA software typically available
+on a system, so most of the authors of alternative MTAs have written
+their front end message submission programs so that they use the same
+calling conventions as
+.Xr sendmail 8
+and may be put into place instead of
+.Xr sendmail 8
+in
+.Pa /usr/lib/sendmail .
+.Pp
+.Xr sendmail 8
+also typically has aliases named
+.Xr mailq 1
+and
+.Xr newaliases 8
+linked to it.
+The program knows to behave differently when its
+.Va argv[0]
+is
+.Dq mailq
+or
+.Dq newaliases
+and behaves appropriately.
+Typically, replacement MTAs provide similar
+functionality, either through a program that also switches behavior
+based on calling name, or through a set of programs that provide
+similar functionality.
+.Pp
+Although having drop-in replacements for
+.Xr sendmail 8
+helps in installing alternative MTAs, it essentially makes the
+configuration of the system depend on hand installing new programs in
+.Pa /usr .
+This leads to configuration problems for many administrators, since
+they may wish to install a new MTA without altering the system
+provided
+.Pa /usr .
+(This may be, for example, to avoid having upgrade problems when a new
+version of the system is installed over the old.)
+They may also have a shared
+.Pa /usr
+among several
+machines, and may wish to avoid placing implicit configuration
+information in a read-only
+.Pa /usr .
+.Pp
+The
+.Nm
+utility is designed to replace
+.Pa /usr/lib/sendmail
+and to invoke an appropriate MTA instead of
+.Xr sendmail 8
+based on configuration information placed in
+.Pa /etc/mailer.conf .
+This permits the administrator to configure which MTA is to be invoked on
+the system at run time.
+.Pp
+Other configuration files may need to be altered when replacing
+.Xr sendmail 8 .
+.Sh EXIT STATUS
+.Ex -std
+.Sh DIAGNOSTICS
+The
+.Nm
+will print a diagnostic if its configuration file is missing or malformed,
+or does not contain a mapping for the name under which it was invoked.
+.Sh SEE ALSO
+.Xr mail 1 ,
+.Xr mailq 1 ,
+.Xr mailer.conf 5 ,
+.Xr newaliases 8 ,
+.Xr sendmail 8
diff --git a/usr/src/man/man8/makedbm.8 b/usr/src/man/man8/makedbm.8
new file mode 100644
index 0000000000..78d77b2509
--- /dev/null
+++ b/usr/src/man/man8/makedbm.8
@@ -0,0 +1,180 @@
+'\" te
+.\" Copyright (c) 1999, Sun Microsystems, Inc. Copyright 1989 AT&T All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH MAKEDBM 8 "Aug 17, 1999"
+.SH NAME
+makedbm \- make a dbm file, or get a text file from a dbm file
+.SH SYNOPSIS
+.LP
+.nf
+\fBmakedbm\fR [\fB-b\fR] [\fB-l\fR] [\fB-s\fR] [\fB-E\fR] [\fB-i\fR \fIyp_input_file\fR]
+ [\fB-o\fR \fIyp_output_name\fR] [\fB-d\fR \fIyp_domain_name\fR]
+ [\fB-m\fR \fIyp_master_name\fR] [\fB-S\fR \fIdelimiter\fR]
+ [\fB-D\fR \fInumber_of_delimiters\fR] \fIinfile\fR \fIoutfile\fR
+.fi
+
+.LP
+.nf
+\fBmakedbm\fR [\fB-u\fR \fIdbmfilename\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBmakedbm\fR utility takes the \fIinfile\fR and converts it to a pair of
+files in \fBndbm\fR format (see \fBndbm\fR(3C)), namely
+\fIoutfile\fR\fB\&.pag\fR and \fIoutfile\fR\fB\&.dir.\fR Each line of the input
+file is converted to a single \fBdbm\fR record. All characters up to the first
+\fBTAB\fR or \fBSPACE\fR form the key, and the rest of the line is the data. If
+a line ends with `\e' (backslash), the data for that record is continued on to
+the next line. \fBmakedbm\fR does not treat `#' (pound-sign) as a special
+character.
+.sp
+.LP
+Because \fBmakedbm\fR is mainly used in generating \fBdbm\fR files for the
+\fBNIS\fR name service, it generates a special entry with the key
+\fIyp_last_modified\fR, which is the date of \fIinfile\fR (or the current time,
+if \fIinfile\fR is `\(mi'). The entries that have keys with the prefix
+\fIyp_\fR are interpreted by \fBNIS\fR server utilities.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-b\fR\fR
+.ad
+.RS 27n
+Insert the \fBYP_INTERDOMAIN\fR into the output. This key causes
+\fBypserv\fR(8) to use \fBDNS\fR for host name and address lookups for hosts
+not found in the maps.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-d\fR\fI yp_domain_name\fR\fR
+.ad
+.RS 27n
+Create a special entry with the key \fIyp_domain_name\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-D\fR \fInumber_of delimiters\fR\fR
+.ad
+.RS 27n
+Specify \fInumber_of_delimiters\fR to skip before forming the key.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-E\fR\fR
+.ad
+.RS 27n
+Delimiters are escaped.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-i\fR\fI yp_input_file\fR\fR
+.ad
+.RS 27n
+Create a special entry with the key \fIyp_input_file\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR\fR
+.ad
+.RS 27n
+Lower case. Convert the keys of the given map to lower case, so that, for
+example, host name matches succeed independent of upper or lower case
+distinctions.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-m\fR\fI yp_master_name\fR\fR
+.ad
+.RS 27n
+Create a special entry with the key \fIyp_master_name\fR. If no master host
+name is specified, \fIyp_master_name\fR is set to the local host name.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-o\fR\fI yp_output_name\fR\fR
+.ad
+.RS 27n
+Create a special entry with the key \fIyp_output_name\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR\fR
+.ad
+.RS 27n
+Secure map. Accept connections from secure \fBNIS\fR networks only.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-S\fR \fIdelimiter\fR\fR
+.ad
+.RS 27n
+Specify the \fIdelimiter\fR to use instead of the default delimiter for forming
+the key.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-u\fR\fI dbmfilename\fR\fR
+.ad
+.RS 27n
+Undo a \fBdbm\fR file. Prints out the file in text format, one entry per line,
+with a single space separating keys from values.
+.RE
+
+.SH OPERANDS
+.sp
+.LP
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fB\fIinfile\fR\fR
+.ad
+.RS 11n
+Input file for \fBmakedbm\fR. If \fIinfile\fR is `\fB\(mi\fR\&' (dash), the
+standard input is read.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIoutfile\fR\fR
+.ad
+.RS 11n
+One of two output files in \fBndbm\fR format: \fIoutfile\fR\fB\&.pag\fR and
+\fIoutfile\fR\fB\&.dir.\fR
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR ndbm (3C),
+.BR attributes (7),
+.BR ypserv (8)
diff --git a/usr/src/man/man8/makemap.8 b/usr/src/man/man8/makemap.8
new file mode 100644
index 0000000000..5b673bae53
--- /dev/null
+++ b/usr/src/man/man8/makemap.8
@@ -0,0 +1,247 @@
+'\" te
+.\" Copyright (c) 1983 Eric P. Allman
+.\" Copyright (c) 1988, 1993 The Regents of the University of California. All rights reserved.
+.\" Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 3. All advertising materials mentioning features or use of this software must display
+.\" the following acknowledgement: This product includes software developed by the University of California, Berkeley and its contributors. 4. Neither the name of the University nor the names of its contributors may be used to endorse or promote products derived from this software without specific
+.\" prior written permission. THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR
+.\" CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
+.\" IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+.\" Copyright (c) 1998-2006, 2008 Sendmail, Inc. and its suppliers. All rights reserved.
+.\" The following license terms and conditions apply, unless a different license is obtained from Sendmail, Inc., 6425 Christie Ave, Fourth Floor, Emeryville, CA 94608, USA, or by electronic mail at license@sendmail.com. License Terms: Use, Modification and Redistribution
+.\" (including distribution of any modified or derived work) in source and binary forms is permitted only if each of the following conditions is met: 1. Redistributions qualify as "freeware" or "Open Source Software" under one of the following terms: (a) Redistributions are made at no charge
+.\" beyond the reasonable cost of materials and delivery. (b) Redistributions are accompanied by a copy of the Source Code or by an irrevocable offer to provide a copy of the Source Code for up to three years at the cost of materials and delivery. Such redistributions
+.\" must allow further use, modification, and redistribution of the Source Code under substantially the same terms as this license. For the purposes of redistribution "Source Code" means the complete compilable and linkable source code of sendmail including all modifications.
+.\" 2. Redistributions of source code must retain the copyright notices as they appear in each source code file, these license terms, and the disclaimer/limitation of liability set forth as paragraph 6 below. 3. Redistributions in binary form must reproduce the Copyright Notice, these license
+.\" terms, and the disclaimer/limitation of liability set forth as paragraph 6 below, in the documentation and/or other materials provided with the distribution. For the purposes of binary distribution the "Copyright Notice" refers to the following language: "Copyright (c) 1998-2004 Sendmail,
+.\" Inc. All rights reserved." 4. Neither the name of Sendmail, Inc. nor the University of California nor the names of their contributors may be used to endorse or promote products derived from this software without specific prior written permission. The name "sendmail" is a trademark
+.\" of Sendmail, Inc. 5. All redistributions must comply with the conditions imposed by the University of California on certain embedded code, whose copyright notice and conditions for redistribution are as follows: (a) Copyright (c) 1988, 1993 The Regents of the University of California.
+.\" All rights reserved. (b) Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: (i) Redistributions of source code must retain the above copyright notice, this list of
+.\" conditions and the following disclaimer. (ii) Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
+.\" (iii) Neither the name of the University nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. 6. Disclaimer/Limitation of Liability: THIS SOFTWARE IS PROVIDED BY SENDMAIL,
+.\" INC. AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL SENDMAIL, INC., THE REGENTS OF THE UNIVERSITY OF CALIFORNIA OR CONTRIBUTORS
+.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
+.\" IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright (c) 2019 Peter Tribble.
+.TH MAKEMAP 8 "Jan 21, 2019"
+.SH NAME
+makemap \- create database maps for sendmail
+.SH SYNOPSIS
+.LP
+.nf
+\fBmakemap\fR [\fB-N\fR] [\fB-d\fR] [\fB-f\fR] [\fB-o\fR] [\fB-r\fR] [\fB-s\fR] [\fB-v\fR] [\fB-C\fR \fIfile\fR]
+ [\fB-c\fR \fIcachesize\fR] [\fB-D\fR \fIcommentchar\fR] [\fB-e\fR] [\fB-l\fR] [\fB-t\fR \fIdelim\fR]
+ [\fB-u\fR] \fImaptype\fR \fImapname\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+\fBmakemap\fR creates the database maps used by the keyed map lookups in
+\fBsendmail\fR(8). \fBmakemap\fR reads from the standard input and outputs to
+the specified \fImapname\fR.
+.sp
+.LP
+In all cases, \fBmakemap\fR reads lines from the standard input consisting of
+two words separated by whitespace. The first is the database key, the second is
+the value. The value may contain \fB%\fR\fIn\fR strings to indicate parameter
+substitution. Literal percents should be doubled (\fB%%\fR). Blank lines and
+lines beginning with \fB#\fR are ignored.
+.sp
+.LP
+Depending on how it is compiled, \fBmakemap\fR handles up to three different
+database formats, selected using the \fImaptype\fR parameter. See
+\fBOPERANDS\fR.
+.SH OPTIONS
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB-c\fR \fIcachesize\fR
+.ad
+.RS 18n
+Use the specified hash and B-Tree cache size (\fIcachesize\fR).
+.RE
+
+.sp
+.ne 2
+.na
+\fB-C\fR \fIfile\fR
+.ad
+.RS 18n
+Use the specified \fBsendmail\fR configuration file (\fIfile\fR) for looking up
+the \fBTrustedUser\fR option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB-d\fR
+.ad
+.RS 18n
+Allow duplicate keys in the map. This is only allowed on B-Tree format maps. If
+two identical keys are read, both are inserted into the map.
+.RE
+
+.sp
+.ne 2
+.na
+\fB-D\fR \fIcommentchar\fR
+.ad
+.RS 18n
+Use the specified character to indicate a comment (which is ignored) instead of
+the default of '\fB#\fR'.
+.RE
+
+.sp
+.ne 2
+.na
+\fB-e\fR
+.ad
+.RS 18n
+Allow empty value (right hand side).
+.RE
+
+.sp
+.ne 2
+.na
+\fB-f\fR
+.ad
+.RS 18n
+Normally, all upper case letters in the key are folded to lower case. This flag
+disables that behavior. This is intended to mesh with the \fB-f\fR flag in the
+\fBK\fR line in \fBsendmail.cf\fR. The value is never case folded.
+.RE
+
+.sp
+.ne 2
+.na
+\fB-l\fR
+.ad
+.RS 18n
+List supported map types.
+.RE
+
+.sp
+.ne 2
+.na
+\fB-N\fR
+.ad
+.RS 18n
+Include the null byte that terminates strings in the map. This must match the
+\fB-N\fR flag in the \fBK\fR line in \fBsendmail.cf\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB-o\fR
+.ad
+.RS 18n
+Append to an old file. This allows you to augment an existing file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB-r\fR
+.ad
+.RS 18n
+Allow replacement of existing keys. Normally \fBmakemap\fR complains if you
+repeat a key, and does not do the insert.
+.RE
+
+.sp
+.ne 2
+.na
+\fB-s\fR
+.ad
+.RS 18n
+Ignore safety checks on maps being created. This includes checking for hard or
+symbolic links in world writable directories.
+.RE
+
+.sp
+.ne 2
+.na
+\fB-t\fR \fIdelim\fR
+.ad
+.RS 18n
+Use the specified delimiter (\fIdelim\fR) instead of whitespace.
+.RE
+
+.sp
+.ne 2
+.na
+\fB-u\fR
+.ad
+.RS 18n
+Dump (unmap) the content of the database to standard output. Note that, if the
+\fB-t\fR option is also provided, the specified delimiter is used when the
+content is dumped instead of whitespace.
+.RE
+
+.sp
+.ne 2
+.na
+\fB-v\fR
+.ad
+.RS 18n
+Verbosely print keys and values being added.
+.RE
+
+.SH OPERANDS
+.LP
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fImapname\fR
+.ad
+.RS 11n
+File name of the database map being created.
+.RE
+
+.sp
+.ne 2
+.na
+\fImaptype\fR
+.ad
+.RS 11n
+Specifies the database format. The following \fImaptype\fR parameters are
+available:
+.sp
+.ne 2
+.na
+\fBdbm\fR
+.ad
+.RS 9n
+Specifies \fBDBM\fR format maps.
+.RE
+
+.sp
+.ne 2
+.na
+\fBbtree\fR
+.ad
+.RS 9n
+Specifies B-Tree format maps.
+.RE
+
+.sp
+.ne 2
+.na
+\fBhash\fR
+.ad
+.RS 9n
+Specifies hash format maps.
+.RE
+
+.RE
+
+.SH SEE ALSO
+.LP
+.BR attributes (7),
+.BR editmap (8),
+.BR sendmail (8)
diff --git a/usr/src/man/man8/mdnsd.8 b/usr/src/man/man8/mdnsd.8
new file mode 100644
index 0000000000..85b3c742ee
--- /dev/null
+++ b/usr/src/man/man8/mdnsd.8
@@ -0,0 +1,108 @@
+.\" -*- tab-width: 4 -*-
+.\"
+.\" Copyright (c) 2003-2004 Apple Computer, Inc. All Rights Reserved.
+.\"
+.\" Licensed under the Apache License, Version 2.0 (the "License");
+.\" you may not use this file except in compliance with the License.
+.\" You may obtain a copy of the License at
+.\"
+.\" http://www.apache.org/licenses/LICENSE-2.0
+.\"
+.\" Unless required by applicable law or agreed to in writing, software
+.\" distributed under the License is distributed on an "AS IS" BASIS,
+.\" WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+.\" See the License for the specific language governing permissions and
+.\" limitations under the License.
+.\"
+.\" Copyright 2016 Toomas Soome <tsoome@me.com>
+.\"
+.Dd Jan 28, 2016 \" Date
+.Dt MDNSD 8 \" Document Title
+.Os illumos \" Operating System
+.\"
+.Sh NAME
+.Nm mdnsd
+.Nd Multicast and Unicast DNS daemon \" Name Description for whatis database
+.\"
+.Sh SYNOPSIS
+.Nm
+.\"
+.Sh DESCRIPTION
+.Nm
+(also known as
+.Nm mDNSResponder
+on some systems)
+is a daemon invoked at boot time to implement Multicast DNS and DNS Service Discovery.
+.Pp
+.Nm
+listens on UDP port 5353 for Multicast DNS Query packets.
+When it receives a query for which it knows an answer,
+.Nm
+issues the appropriate Multicast DNS Reply packet.
+.Pp
+.Nm
+also performs Unicast and Multicast DNS Queries on behalf of client processes, and
+maintains a cache of the replies.
+.Pp
+.Nm
+has no user-specifiable command-line argument, and users should not run
+.Nm
+manually.
+.Sh LOGGING
+There are several methods with which to examine
+.Nm Ns 's internal state for debugging and diagnostic purposes. The syslog(3C)
+logging levels map as follows:
+.Pp
+.Dl Error - Error messages
+.Dl Warning - Client-initiated operations
+.Dl Notice - Sleep proxy operations
+.Dl Info - Informational messages
+.Pp
+By default, only log level Error is logged.
+.Pp
+A SIGUSR1 signal toggles additional logging, with Warning and Notice
+enabled by default:
+.Pp
+.Dl % sudo pkill -USR1 mdnsd
+.Pp
+A SIGUSR2 signal toggles packet logging:
+.Pp
+.Dl % sudo pkill -USR2 mdnsd
+.Pp
+A SIGINFO signal will dump a snapshot summary of the internal state:
+.Pp
+.Dl % sudo pkill -INFO mdnsd
+.Sh FILES
+.Pa /usr/lib/inet/mdnsd \" Pathname
+.\"
+.Sh INFO
+For information on Multicast DNS, see
+.Pa http://www.multicastdns.org/
+.Pp
+For information on DNS Service Discovery, see
+.Pa http://www.dns-sd.org/
+.Pp
+For information on how to use the Multicast DNS and the
+DNS Service Discovery APIs on Mac OS X and other platforms, see
+.Pa http://developer.apple.com/bonjour/
+.Pp
+For the source code to
+.Nm , see
+.Pa http://developer.apple.com/darwin/projects/bonjour/
+.\"
+.Sh INTERFACE STABILITY
+.Sy Volatile .
+.Sh SEE ALSO
+.Xr dns-sd 8
+.\"
+.Sh NOTES
+The
+.Nm
+service is managed by the service management facility,
+\fBsmf\fR(7), under the service identifier:
+.sp
+.Dl svc:/network/dns/multicast:default
+.sp
+Administrative actions on this service, such as enabling, disabling, or
+requesting restart, can be performed using \fBsvcadm\fR(8). The service's
+status can be queried using the \fBsvcs\fR(1) command.
diff --git a/usr/src/man/man8/mkdevalloc.8 b/usr/src/man/man8/mkdevalloc.8
new file mode 100644
index 0000000000..5b7ab5086b
--- /dev/null
+++ b/usr/src/man/man8/mkdevalloc.8
@@ -0,0 +1,83 @@
+'\" te
+.\" Copyright 2001, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH MKDEVALLOC 8 "Mar 6, 2017"
+.SH NAME
+mkdevalloc \- Make device_allocate entries
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/mkdevalloc\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBmkdevalloc\fR command writes to standard out a set of
+\fBdevice_allocate\fR(5) entries describing the system's frame buffer, audio
+and removable media devices.
+.sp
+.LP
+The \fBmkdevalloc\fR command is used by the \fBinit.d\fR(5) scripts to create
+or update the \fB/etc/security/device_allocate\fR file.
+.sp
+.LP
+Entries are generated based on the device special files found in \fB/dev\fR.
+For the different categories of devices, the \fBmkdevalloc\fR command checks
+for the following files under \fB/dev\fR:
+.sp
+.in +2
+.nf
+audio /dev/audio, /dev/audioctl, /dev/sound/...
+tape /dev/rst*, /dev/nrst*, /dev/rmt/...
+floppy /dev/diskette, /dev/fd*, /dev/rdiskette, /dev/rfd*
+removable disk /dev/sr*, /dev/nsr*, /dev/dsk/c0t?d0s?, /dev/rdsk/c0t?d0s?
+frame buffer /dev/fb
+.fi
+.in -2
+
+.sp
+.LP
+All entries set the \fIdevice-minimum\fR and \fIdevice-maximum\fR fields to the
+hex representations of \fBADMIN_LOW\fR and \fBADMIN_HIGH\fR, respectively. The
+\fIdevice-authorization\fR field is set to \fBsolaris.device.allocate\fR,
+except for the \fBframebuffer\fR entry, where it is set to \fB*\fR. The
+\fIdevice-name\fR, \fIdevice-type\fR and \fIdevice-clean\fR fields are set to
+the following values:
+.sp
+.in +2
+.nf
+ device-name device-type device-clean
+
+audio audio audio audio_clean_wrapper
+tape mag_tape_0,1,... st st_clean
+floppy floppy_0,1,... fd disk_clean
+removable disk cdrom_0,1,... sr disk_clean
+frame buffer framebuffer fb /bin/true
+.fi
+.in -2
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Obsolete
+.TE
+
+.SH SEE ALSO
+.LP
+.BR allocate (1),
+.BR attributes (7)
+.SH NOTES
+.LP
+\fBmkdevalloc\fR might not be supported in a future release of the Solaris
+operating system.
diff --git a/usr/src/man/man8/mkdevmaps.8 b/usr/src/man/man8/mkdevmaps.8
new file mode 100644
index 0000000000..ecef55341c
--- /dev/null
+++ b/usr/src/man/man8/mkdevmaps.8
@@ -0,0 +1,62 @@
+'\" te
+.\" Copyright 2001, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH MKDEVMAPS 8 "Mar 6, 2017"
+.SH NAME
+mkdevmaps \- make device_maps entries
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/mkdevmaps\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBmkdevmaps\fR command writes to standard out a set of
+\fBdevice_maps\fR(5) entries describing the system's frame buffer, audio, and
+removable media devices.
+.sp
+.LP
+The \fBmkdevmaps\fR command is used by the \fBinit.d\fR(5) scripts to create or
+update the \fB/etc/security/device_maps\fR file.
+.sp
+.LP
+Entries are generated based on the device special files found in \fB/dev\fR.
+For the different categories of devices, the \fBmkdevmaps\fR command checks for
+the following files under \fB/dev\fR:
+.sp
+.in +2
+.nf
+audio /dev/audio, /dev/audioctl, /dev/sound/...
+tape /dev/rst*, /dev/nrst*, /dev/rmt/...
+floppy /dev/diskette, /dev/fd*, /dev/rdiskette, /dev/rfd*
+removable disk /dev/dsk/c0t?d0s?, /dev/rdsk/c0t?d0s?
+frame buffer /dev/fb
+.fi
+.in -2
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Obsolete
+.TE
+
+.SH SEE ALSO
+.LP
+.BR allocate (1),
+.BR attributes (7)
+.SH NOTES
+.LP
+\fBmkdevmaps\fR might not be supported in a future release of the Solaris
+operating system.
diff --git a/usr/src/man/man8/mkfifo.8 b/usr/src/man/man8/mkfifo.8
new file mode 100644
index 0000000000..dfb3843c0d
--- /dev/null
+++ b/usr/src/man/man8/mkfifo.8
@@ -0,0 +1,172 @@
+.\"
+.\" Sun Microsystems, Inc. gratefully acknowledges The Open Group for
+.\" permission to reproduce portions of its copyrighted documentation.
+.\" Original documentation from The Open Group can be obtained online at
+.\" http://www.opengroup.org/bookstore/.
+.\"
+.\" The Institute of Electrical and Electronics Engineers and The Open
+.\" Group, have given us permission to reprint portions of their
+.\" documentation.
+.\"
+.\" In the following statement, the phrase ``this text'' refers to portions
+.\" of the system documentation.
+.\"
+.\" Portions of this text are reprinted and reproduced in electronic form
+.\" in the SunOS Reference Manual, from IEEE Std 1003.1, 2004 Edition,
+.\" Standard for Information Technology -- Portable Operating System
+.\" Interface (POSIX), The Open Group Base Specifications Issue 6,
+.\" Copyright (C) 2001-2004 by the Institute of Electrical and Electronics
+.\" Engineers, Inc and The Open Group. In the event of any discrepancy
+.\" between these versions and the original IEEE and The Open Group
+.\" Standard, the original IEEE and The Open Group Standard is the referee
+.\" document. The original Standard can be obtained online at
+.\" http://www.opengroup.org/unix/online.html.
+.\"
+.\" This notice shall appear on any product containing this material.
+.\"
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.\"
+.\"
+.\" Copyright 1989 AT&T
+.\" Copyright (c) 1992, X/Open Company Limited All Rights Reserved
+.\" Portions Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
+.\"
+.TH MKFIFO 8 "Jun 24, 2020"
+.SH NAME
+mkfifo \- make FIFO special file
+.SH SYNOPSIS
+.nf
+\fB/usr/bin/mkfifo\fR [\fB-m\fR \fImode\fR] \fIfile\fR...
+.fi
+
+.SS "ksh93"
+.nf
+mkfifo [ \fIoptions\fR ] \fIfile\fR...
+.fi
+
+.SH DESCRIPTION
+.SS "/usr/bin/mkfifo"
+The \fBmkfifo\fR utility creates the \fBFIFO\fR special files named by its
+argument list. The arguments are taken sequentially, in the order specified;
+and each \fBFIFO\fR special file is either created completely or, in the case
+of an error or signal, not created at all.
+.sp
+.LP
+If errors are encountered in creating one of the special files, \fBmkfifo\fR
+writes a diagnostic message to standard error and continues with the
+remaining arguments, if any.
+.sp
+.LP
+The \fBmkfifo\fR utility calls the library routine \fBmkfifo\fR(3C), with a
+\fIpath\fR argument equivalent to the \fIfile\fR argument from the command line,
+and \fImode\fR is set to the equivalent of \fBa=rw\fR, modified by the current
+value of the file mode creation mask \fBumask\fR(1).
+.SS "ksh93"
+The \fBmkfifo\fR utility creates one or more \fBFIFO\fRs. By default, the mode
+of the created FIFO is \fBa=rw\fR minus the bits set in \fBumask\fR(1).
+.SH OPTIONS
+.SS "/usr/bin/mkfifo"
+The following option is supported for \fB/usr/bin/mkfifo\fR:
+.sp
+.ne 2
+.na
+\fB\fB-m\fR \fImode\fR\fR
+.ad
+.RS 11n
+Set the file permission bits of the newly-created \fBFIFO\fR to the specified
+\fImode\fR value. The \fImode\fR option-argument will be the same as the
+\fImode\fR operand defined for the \fBchmod\fR(1) command. For a
+symbolic mode option-argument, the \fIop\fR characters \fB+\fR and \fB\(mi\fR
+will be interpreted relative to an assumed initial mode of \fBa=rw\fR.
+.RE
+
+.SS "ksh93"
+The following option is supported for \fBksh93\fR:
+.sp
+.ne 2
+.na
+\fB\fB-m\fR \fImode\fR\fR
+.ad
+.br
+.na
+\fB\fB--mode=\fR\fImode\fR\fR
+.ad
+.RS 15n
+Set the mode of the created FIFO to \fImode\fR. The \fImode\fR option-argument
+is a symbolic or octal mode as in \fBchmod\fR(1). Relative modes assume an
+initial mode of \fBa=rw\fR.
+.RE
+
+.SH OPERANDS
+The following operand is supported:
+.sp
+.ne 2
+.na
+\fB\fIfile\fR\fR
+.ad
+.RS 8n
+A path name of the \fBFIFO\fR special file to be created.
+.RE
+
+.SH USAGE
+See \fBlargefile\fR(7) for the description of the behavior of \fBmkfifo\fR when
+encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
+.SH ENVIRONMENT VARIABLES
+See \fBenviron\fR(7) for descriptions of the following environment variables
+that affect the execution of \fBmkfifo\fR: \fBLANG\fR, \fBLC_ALL\fR,
+\fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
+.SH EXIT STATUS
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 6n
+All the specified \fBFIFO\fR special files were created successfully.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB>0\fR\fR
+.ad
+.RS 6n
+An error occurred.
+.RE
+
+.SH ATTRIBUTES
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Standard
+.TE
+
+.SH SEE ALSO
+.BR chmod (1),
+.BR umask (1),
+.BR mkfifo (3C),
+.BR attributes (7),
+.BR environ (7),
+.BR largefile (7),
+.BR standards (7)
diff --git a/usr/src/man/man8/mkfile.8 b/usr/src/man/man8/mkfile.8
new file mode 100644
index 0000000000..c69aa1597a
--- /dev/null
+++ b/usr/src/man/man8/mkfile.8
@@ -0,0 +1,95 @@
+'\" te
+.\" Copyright (c) 2001, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH MKFILE 8 "Feb 20, 2008"
+.SH NAME
+mkfile \- create a file
+.SH SYNOPSIS
+.LP
+.nf
+\fBmkfile\fR [\fB-nv\fR] \fIsize\fR [g | k | b | m] \fIfilename\fR...
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBmkfile\fR creates one or more files that are suitable for use as
+\fBNFS-mounted\fR swap areas, or as local swap areas. When a root user executes
+\fBmkfile()\fR, the sticky bit is set and the file is padded with zeros by
+default. When non-root users execute \fBmkfile()\fR, they must manually set
+the sticky bit using \fBchmod\fR(1). The default \fBsize\fR is in bytes, but
+it can be flagged as gigabytes, kilobytes, blocks, or megabytes, with the
+\fBg\fR, \fBk\fR, \fBb\fR, or \fBm\fR suffixes, respectively.
+.SH OPTIONS
+.sp
+.ne 2
+.na
+\fB\fB-n\fR\fR
+.ad
+.RS 6n
+Create an empty \fIfilename\fR. The size is noted, but disk blocks are not
+allocated until data is written to them. Files created with this option cannot
+be swapped over local UFS mounts.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.RS 6n
+Verbose. Report the names and sizes of created files.
+.RE
+
+.SH EXIT STATUS
+.sp
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 6n
+Success.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB>0\fR\fR
+.ad
+.RS 6n
+An error occurred.
+.RE
+
+.SH USAGE
+.sp
+.LP
+See \fBlargefile\fR(7) for the description of the behavior of \fBmkfile\fR when
+encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Committed
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR chmod (1),
+.BR attributes (7),
+.BR largefile (7),
+.BR swap (8)
diff --git a/usr/src/man/man8/mkfs.8 b/usr/src/man/man8/mkfs.8
new file mode 100644
index 0000000000..e6da120027
--- /dev/null
+++ b/usr/src/man/man8/mkfs.8
@@ -0,0 +1,141 @@
+'\" te
+.\" Copyright (c) 2000, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH MKFS 8 "Nov 17, 2000"
+.SH NAME
+mkfs \- construct a file system
+.SH SYNOPSIS
+.LP
+.nf
+\fBmkfs\fR [\fB-F\fR \fIFSType\fR] [\fIgeneric_options\fR]
+ [\fB-o\fR \fIFSType-specific_options\fR] \fIraw_device_file\fR
+ [\fIoperands\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBmkfs\fR utility constructs a file system on the \fIraw_device_file\fR by
+calling the specific \fBmkfs\fR module indicated by \fB-F\fR\fI
+FSType\fR\fB\&.\fR
+.sp
+.LP
+\fBNote\fR: ufs file systems are normally created with the \fBnewfs\fR(8)
+command.
+.sp
+.LP
+\fIgeneric_options\fR are independent of file system type.
+\fIFSType-specific_options\fR is a comma-separated list of
+\fIkeyword\fR=\fIvalue\fR pairs (with no intervening spaces), which are
+\fIFSType\fR-specific. \fIraw_device_file\fR specifies the disk partition on
+which to write the file system. It is required and must be the first argument
+following the \fIspecific_options\fR (if any). \fIoperands\fR are
+\fIFSType\fR-specific. See the \fIFSType\fR-specific manual page of \fBmkfs\fR
+(for example, \fBmkfs_ufs\fR(8)) for a detailed description.
+.SH OPTIONS
+.sp
+.LP
+The following are the generic options for \fBmkfs\fR:
+.sp
+.ne 2
+.na
+\fB\fB-F\fR\fR
+.ad
+.RS 6n
+Specify the \fIFSType\fR to be constructed. If \fB-F\fR is not specified, the
+\fIFSType\fR is determined from \fB/etc/vfstab\fR by matching the
+\fIraw_device_file\fR with a \fBvfstab\fR entry, or by consulting the
+\fB/etc/default/fs\fR file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-V\fR\fR
+.ad
+.RS 6n
+Echo the complete command line, but do not execute the command. The command
+line is generated by using the options and arguments provided and adding to
+them information derived from \fB/etc/vfstab\fR or \fB/etc/default/fs\fR.
+This option may be used to verify and validate the command line.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-m\fR\fR
+.ad
+.RS 6n
+Return the command line which was used to create the file system. The file
+system must already exist. This option provides a means of determining the
+command used in constructing the file system.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-o\fR\fR
+.ad
+.RS 6n
+Specify \fIFSType\fR-specific options. See the manual page for the \fBmkfs\fR
+module specific to the file system type.
+.RE
+
+.SH USAGE
+.sp
+.LP
+See \fBlargefile\fR(7) for the description of the behavior of \fBmkfs\fR when
+encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/default/fs\fR\fR
+.ad
+.RS 19n
+Default file system type. Default values can be set for the following flags in
+\fB/etc/default/fs\fR. For example: \fBLOCAL=ufs\fR
+.sp
+.ne 2
+.na
+\fB\fBLOCAL\fR\fR
+.ad
+.RS 9n
+The default partition for a command if no \fIFSType\fR is specified.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/vfstab\fR\fR
+.ad
+.RS 19n
+List of default parameters for each file system
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR vfstab (5),
+.BR attributes (7),
+.BR largefile (7),
+.BR mkfs_ufs (8),
+.BR newfs (8)
+.sp
+.LP
+Manual pages for the \fIFSType\fR-specific modules of \fBmkfs\fR.
+.SH NOTES
+.sp
+.LP
+This command might not be supported for all \fIFSType\fRs.
+.sp
+.LP
+You can use \fBlofiadm\fR to create a file that appears to a \fBmkfs\fR command
+as a raw device. You can then use a \fBmkfs\fR command to create a file system
+on that device. See \fBlofiadm\fR(8) for examples of creating a UFS and a PC
+(FAT) file system (using \fBmkfs_ufs\fR(8) and \fBmkfs_pcfs\fR(8)) on a
+device created by \fBlofiadm\fR.
diff --git a/usr/src/man/man8/mkfs_pcfs.8 b/usr/src/man/man8/mkfs_pcfs.8
new file mode 100644
index 0000000000..a8f5ab54eb
--- /dev/null
+++ b/usr/src/man/man8/mkfs_pcfs.8
@@ -0,0 +1,381 @@
+'\" te
+.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH MKFS_PCFS 8 "Dec 1, 2003"
+.SH NAME
+mkfs_pcfs \- construct a FAT file system
+.SH SYNOPSIS
+.LP
+.nf
+\fBmkfs\fR \fB-F\fR pcfs [\fIgeneric_options\fR] [\fB-o\fR \fIFSType_specific_options\fR] \fIraw_device_file\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBpcfs\fR-specific module of \fBmkfs\fR constructs a File Allocation Table
+(\fBFAT\fR) on removable media (diskette, JAZ disk, ZIP disk, PCMCIA card), a
+hard disk, or a file (see NOTES). \fBFAT\fRs are the standard \fBMS-DOS\fR and
+Windows file system format. Note that you can use \fBfdformat\fR(1) to
+construct a FAT file system only on a diskette or PCMCIA card.
+.sp
+.LP
+\fBmkfs\fR for \fBpcfs\fR determines an appropriate \fBFAT\fR size for the
+medium, then it installs an initial boot sector and an empty \fBFAT\fR. A
+sector size of 512 bytes is used. \fBmkfs\fR for \fBpcfs\fR can also install
+the initial file in the file system (see the \fBpcfs\fR-specific \fB-o i\fR
+option). This first file can optionally be marked as read-only, system, and/or
+hidden.
+.sp
+.LP
+If you want to construct a FAT with \fBmkfs\fR for \fBpcfs\fR on a medium that
+is not formatted, you must first perform a low-level format on the medium with
+\fBfdformat\fR(1) or \fBformat\fR(8). Non-diskette media must also be
+partitioned with the \fBfdisk\fR(8) utility. Note that all existing data on
+the diskette or disk partition, if any, is destroyed when a new \fBFAT\fR is
+constructed.
+.sp
+.LP
+\fIgeneric_options\fR are supported by the generic \fBmkfs\fR command. See
+\fBmkfs\fR(8) for a description of these options.
+.sp
+.LP
+\fIraw_device_file\fR indicates the device on which to write unless the \fB-o
+N\fR option has been specified, or if the \fB-V\fR or \fB-m\fR generic options
+are passed from the generic \fBmkfs\fR module.
+.SH OPTIONS
+.sp
+.LP
+See \fBmkfs\fR(8) for the list of supported generic options.
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-o\fR \fIFSType_specific_options\fR\fR
+.ad
+.RS 30n
+Specify \fBpcfs\fR file system-specific options in a comma-separated list with
+no intervening spaces. If invalid options are specified, a warning message is
+printed and the invalid options are ignored.
+.sp
+.ne 2
+.na
+\fBb=\fIlabel\fR\fR
+.ad
+.RS 14n
+Label the media with volume label. The volume label is restricted to 11
+uppercase characters.
+.RE
+
+.sp
+.ne 2
+.na
+\fBB=\fIfilename\fR\fR
+.ad
+.RS 14n
+Install \fIfilename\fR as the boot loader in the file system's boot sector. If
+you don't specify a boot loader, an \fBMS-DOS\fR boot loader is installed. The
+\fBMS-DOS\fR boot loader requires specific \fBMS-DOS\fR system files to make
+the diskette bootable. See \fBNOTES\fR for more information.
+.RE
+
+.sp
+.ne 2
+.na
+\fBfat=\fIn\fR\fR
+.ad
+.RS 14n
+The size of a \fBFAT\fR entry. Currently, 12, 16, and 32 are valid values. The
+default is 12 for diskettes, 16 for larger media.
+.RE
+
+.sp
+.ne 2
+.na
+\fBh\fR
+.ad
+.RS 14n
+Mark the first file installed as a hidden file. The \fB-i\fR option must also
+be specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fBhidden=\fIn\fR\fR
+.ad
+.RS 14n
+Set the number of hidden sectors to \fIn\fR. This is the number of sectors on
+the physical disk preceding the start of the volume (which is the boot sector
+itself). This defaults to 0 for diskettes or a computed valued (based on the
+fdisk table) for disks. This option may be used only in conjunction with the
+\fBnofdisk\fR option.
+.RE
+
+.sp
+.ne 2
+.na
+\fBi=\fIfilename\fR\fR
+.ad
+.RS 14n
+Install \fIfilename\fR as the initial file in the new file system. The initial
+file's contents are guaranteed to occupy consecutive clusters at the start of
+the files area. When creating bootable media, a boot program should be
+specified as the initial file.
+.RE
+
+.sp
+.ne 2
+.na
+\fBnofdisk\fR
+.ad
+.RS 14n
+Do not attempt to find an \fBfdisk\fR table on the medium. Instead rely on the
+\fBsize\fR option for determining the partition size. By default, the created
+\fBFAT\fR is 16 bits and begins at the first sector of the device. This
+origination sector can be modified with the hidden option (\fB-h\fR).
+.RE
+
+.sp
+.ne 2
+.na
+\fBnsect=\fIn\fR\fR
+.ad
+.RS 14n
+The number of sectors per track on the disk. If not specified, the value is
+determined by using a \fBdkio\fR(4I) ioctl to get the disk geometry, or (for
+diskette) from the results of an \fBFDIOGCHAR\fR ioctl.
+.RE
+
+.sp
+.ne 2
+.na
+\fBntrack=\fIn\fR\fR
+.ad
+.RS 14n
+The number of tracks per cylinder on the disk. If not specified, the value is
+determined by using a \fBdkio\fR(4I) ioctl to get the disk geometry, or (for
+diskette) from the results of an \fBFDIOGCHAR\fR ioctl.
+.RE
+
+.sp
+.ne 2
+.na
+\fBN\fR
+.ad
+.RS 14n
+No execution mode. Print normal output, but do not actually write the file
+system to the medium. This is most useful when used in conjunction with the
+verbose option.
+.RE
+
+.sp
+.ne 2
+.na
+\fBr\fR
+.ad
+.RS 14n
+Mark the first file installed as read-only. The \fB-i\fR option must also be
+specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fBreserve=\fIn\fR\fR
+.ad
+.RS 14n
+Set the number of reserved sectors to \fIn\fR. This is the number of sectors in
+the volume, preceding the start of the first \fBFAT\fR, including the boot
+sector. The value should always be at least 1, and the default value is exactly
+1.
+.RE
+
+.sp
+.ne 2
+.na
+\fBs\fR
+.ad
+.RS 14n
+Mark the first file installed as a system file. The \fB-i\fR option must also
+be specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fBsize=\fIn\fR\fR
+.ad
+.RS 14n
+The number of sectors in the file system. If not specified, the value is
+determined from the size of the partition given in the fdisk table or (for
+diskette) by way of computation using the \fBFDIOGCHAR\fR ioctl.
+.RE
+
+.sp
+.ne 2
+.na
+\fBspc=\fIn\fR\fR
+.ad
+.RS 14n
+The size of the allocation unit for space within the file system, expressed as
+a number of sectors. The default value depends on the \fBFAT\fR entry size and
+the size of the file system.
+.RE
+
+.sp
+.ne 2
+.na
+\fBv\fR
+.ad
+.RS 14n
+Verbose output. Describe, in detail, operations being performed.
+.RE
+
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fIraw_device_file\fR\fR
+.ad
+.RS 19n
+The device on which to build the \fBFAT\fR. The device name for a diskette must
+be specified as \fB/dev/rdiskette0\fR for the first diskette drive, or
+\fB/dev/rdiskette1\fR for a second diskette drive. For non-diskette media, a
+disk device name must be qualified with a suffix to indicate the proper
+partition. For example, in the name \fB/dev/rdsk/c0t0d0p0:c\fR, the \fB:c\fR
+suffix indicates that the first partition on the disk should receive the new
+\fBFAT\fR.
+.sp
+For a file, \fIraw_device_file\fR is the block device name returned by
+\fBlofiadm\fR(8).
+.RE
+
+.SH EXAMPLES
+.sp
+.LP
+The media in these examples must be formatted before running \fBmkfs\fR for
+\fBpcfs\fR. See DESCRIPTION for more details.
+.LP
+\fBExample 1 \fRCreating a FAT File System on a Diskette
+.sp
+.LP
+The following command creates a \fBFAT\fR file system on a diskette:
+
+.sp
+.in +2
+.nf
+mkfs -F pcfs /dev/rdiskette
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRCreating a FAT File System on a Disk
+.sp
+.LP
+The following command creates a \fBFAT\fR file system on the second fdisk
+partition of a disk attached to an x86 based system:
+
+.sp
+.in +2
+.nf
+mkfs -F pcfs /dev/rdsk/c0d0p0:d
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRCreating a FAT File System on a ZIP Disk
+.sp
+.LP
+The following command creates a \fBFAT\fR file system on a ZIP disk located on
+a SPARC based system:
+
+.sp
+.in +2
+.nf
+mkfs -F pcfs /dev/rdsk/c0t4d0s2:c
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 4 \fRCreating a FAT File System on a JAZ Disk
+.sp
+.LP
+The following command creates a \fBFAT\fR file system on a JAZ disk located on
+a SPARC based system and overrides the sectors/track and tracks/cylinder values
+obtained from the device's controller:
+
+.sp
+.in +2
+.nf
+mkfs -F pcfs -o nsect=32,ntrack=64 /dev/rdsk/c0t3d0s2:c
+.fi
+.in -2
+.sp
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Stable
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR fdformat (1),
+.BR fd (4D),
+.BR dkio (4I),
+.BR fdio (4I),
+.BR attributes (7),
+.BR fdisk (8),
+.BR format (8),
+.BR lofiadm (8),
+.BR mkfs (8)
+.SH NOTES
+.sp
+.LP
+The default \fBMS-DOS\fR boot loader, which is installed by default if \fB-o
+B\fR is not specified, requires specific \fBMS-DOS\fR system files to make the
+diskette bootable. These \fBMS-DOS\fR files are not installed when you format a
+diskette with \fBmkfs\fR for \fBpcfs\fR, which makes a diskette formatted this
+way not bootable. Trying to boot from it on an x86 based system will result in
+the following message:
+.sp
+.in +2
+.nf
+Non-System disk or disk error
+Replace and strike any key when ready
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+You must format a diskette with the \fBDOS\fR \fBformat\fR command to install
+the specific \fBMS-DOS\fR system files required by the default boot loader.
+.sp
+.LP
+You can use \fBlofiadm\fR to create a file that appears to a \fBmkfs\fR command
+(for example, \fBmkfs_pcfs\fR or \fBmkfs_ufs\fR) as a raw device. You can then
+use a \fBmkfs\fR command to create a file system on that device. See
+\fBlofiadm\fR(8) for examples of creating a UFS and a PC (FAT) file system on
+a device created by \fBlofiadm\fR.
diff --git a/usr/src/man/man8/mkfs_udfs.8 b/usr/src/man/man8/mkfs_udfs.8
new file mode 100644
index 0000000000..f3af959575
--- /dev/null
+++ b/usr/src/man/man8/mkfs_udfs.8
@@ -0,0 +1,189 @@
+'\" te
+.\" Copyright (c) 2000 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH MKFS_UDFS 8 "Nov 17, 2000"
+.SH NAME
+mkfs_udfs \- construct a udfs file system
+.SH SYNOPSIS
+.LP
+.nf
+\fBmkfs\fR \fB-F udfs\fR [\fIgeneric_options\fR] [\fB-o\fR \fIspecific_options\fR] \fIraw_device_file\fR
+ [\fIsize\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+This is the universal disk format file system (\fBudfs\fR) -specific module of
+the \fBmkfs\fR command. \fBmkfs\fR constructs a \fBudfs\fR file system with a
+root directory.
+.SH OPTIONS
+.sp
+.LP
+See \fBmkfs\fR(8) for the list of supported \fIgeneric_options\fR.
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-o\fR \fIspecific_options\fR\fR
+.ad
+.RS 23n
+Specify a \fBudfs\fR-specific option. Specify \fBudfs\fR file system specific
+options in a comma-separated list with no intervening spaces. If invalid
+options are specified, a warning message is printed and the invalid options are
+ignored.
+.sp
+The following \fIspecific_options\fR are available:
+.sp
+.ne 2
+.na
+\fBN\fR
+.ad
+.RS 16n
+Print the file system parameters without actually creating the file system.
+.RE
+
+.sp
+.ne 2
+.na
+\fBlabel=\fIstring\fR\fR
+.ad
+.RS 16n
+Specify the label to be written into the volume header structures. Specify
+\fIstring\fR as the name of the label. If \fIstring\fR is not specified, a
+default \fIstring\fR is generated in the form of \fB*NoLabel*\fR.
+.RE
+
+.RE
+
+.SH OPERANDS
+.sp
+.LP
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fB\fIraw_device_file\fR\fR
+.ad
+.RS 19n
+ Specify the disk partition on which to write.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIsize\fR\fR
+.ad
+.RS 19n
+Specify the number of 512-byte blocks in the file system.
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7),
+.BR fsck (8),
+.BR mkfs (8)
+.SH DIAGNOSTICS
+.sp
+.in +2
+.nf
+not currently a valid file system
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The specified device does not contain a valid \fBudfs\fR file system.
+.sp
+.in +2
+.nf
+Invalid size: larger than the partition size
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Number of blocks given as parameter to create the file system is larger than
+the size of the device specified.
+.sp
+.in +2
+.nf
+is mounted can't mkfs
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Device is in use, cannot create file system when the device is in use.
+.sp
+.in +2
+.nf
+preposterous size
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Negative size parameter provided is invalid.
+.sp
+.in +2
+.nf
+sector size must be between 512, 8192 bytes
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Sector size given is not in the valid range.
+.sp
+.in +2
+.nf
+Volume integrity sequence descriptors too long
+File set descriptor too long.
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Not enough space to create volume integrity sequence or file set descriptor.
+.sp
+.in +2
+.nf
+mkfs: argument out of range
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+One of the arguments is out of range.
+.sp
+.in +2
+.nf
+mkfs: bad numeric arg
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+One of the arguments is potentially a bad numeric.
+.SH NOTES
+.sp
+.LP
+You can use \fBlofiadm\fR to create a file that appears to a \fBmkfs\fR command
+(for example, \fBmkfs_pcfs\fR or \fBmkfs_ufs\fR) as a raw device. You can then
+use a \fBmkfs\fR command to create a file system on that device. See
+\fBlofiadm\fR(8) for examples of creating a UFS and a PC (FAT) file system on
+a device created by \fBlofiadm\fR.
diff --git a/usr/src/man/man8/mkfs_ufs.8 b/usr/src/man/man8/mkfs_ufs.8
new file mode 100644
index 0000000000..422cedc6d4
--- /dev/null
+++ b/usr/src/man/man8/mkfs_ufs.8
@@ -0,0 +1,412 @@
+'\" te
+.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH MKFS_UFS 8 "Mar 8, 2006"
+.SH NAME
+mkfs_ufs \- construct a UFS file system
+.SH SYNOPSIS
+.LP
+.nf
+\fBmkfs\fR \fB-F\fR ufs [\fIgeneric_options\fR] [\fB-o\fR \fIFSType_specific_options\fR] \fIraw_device_file\fR
+ [\fIsize\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The UFS-specific module of \fBmkfs\fR builds a UFS file system with a root
+directory and a \fBlost+found\fR directory (see \fBfsck\fR(8)).
+.sp
+.LP
+The UFS-specific \fBmkfs\fR is rarely run directly. Use the \fBnewfs\fR(8)
+command instead.
+.sp
+.LP
+\fIraw_device_file\fR indicates the disk partition on which to create the new
+file system. If the \fB-o\fR \fBN\fR, \fB-V\fR, or \fB-m\fR options are
+specified, the \fIraw_device_file\fR is not actually modified. \fIsize\fR
+specifies the number of disk sectors in the file system, where a disk sector is
+usually 512 bytes. This argument must follow the \fIraw_device_file\fR argument
+and is required (even with \fB\fR\fB-o\fR\fB N\fR), unless the \fB-V\fR or
+\fB-m\fR generic options are specified.
+.sp
+.LP
+\fIgeneric_options\fR are supported by the generic \fBmkfs\fR command. See
+\fBmkfs\fR(8) for a description of these options.
+.SH OPTIONS
+.sp
+.LP
+The following generic options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-m\fR\fR
+.ad
+.RS 6n
+Print the command line that was used to create the existing file system.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-V\fR\fR
+.ad
+.RS 6n
+Print the current \fBmkfs\fR command line.
+.RE
+
+.SH OPTIONS
+.sp
+.LP
+The following UFS-specific options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-o\fR\fR
+.ad
+.RS 6n
+Use one or more of the following values separated by commas (with no
+intervening spaces) to specify UFS-specific options:
+.sp
+.ne 2
+.na
+\fB\fBapc=\fR\fIn\fR\fR
+.ad
+.RS 15n
+The number of alternate sectors per cylinder to reserve for bad block
+replacement for SCSI devices only. The default is \fB0\fR.
+.sp
+This option is not applicable for disks with EFI labels and is ignored.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBbsize=\fR\fIn\fR\fR
+.ad
+.RS 15n
+The logical block size of the file system in bytes, either \fB4096\fR or
+\fB8192\fR. The default is \fB8192\fR. The sun4u architecture does not support
+the \fB4096\fR block size.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcalcbinsb\fR\fR
+.ad
+.RS 15n
+Sends to stdout a binary (machine-readable) version of the superblock that
+would be used to create a file system with the specified configuration
+parameters.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcalcsb\fR\fR
+.ad
+.RS 15n
+Sends to stdout a human-readable version of the superblock that would be used
+to create a file system with the specified configuration parameters.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcgsize=\fR\fIn\fR\fR
+.ad
+.RS 15n
+The number of cylinders per cylinder group, ranging from \fB16\fR to \fB256\fR.
+The default is calculated by dividing the number of sectors in the file system
+by the number of sectors in a gigabyte. Then, the result is multiplied by
+\fB32\fR. The default value is always between \fB16\fR and \fB256\fR.
+.sp
+The per-cylinder-group meta data must fit in a space no larger than what is
+available in one logical file system block. If too large a \fBcgsize\fR is
+requested, it is changed by the minimum amount necessary.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfragsize=\fR\fIn\fR\fR
+.ad
+.RS 15n
+The smallest amount of disk space in bytes that can be allocated to a file.
+\fBfragsize\fR must be a power of 2 divisor of \fBbsize\fR, where:
+.sp
+\fBbsize\fR / \fBfragsize\fR is 1, 2, 4, or 8.
+.sp
+This means that if the logical block size is \fB4096\fR, legal values for
+\fBfragsize\fR are \fB512\fR, \fB1024\fR, \fB2048\fR, and \fB4096\fR. When the
+logical block size is \fB8192\fR, legal values are \fB1024\fR, \fB2048\fR,
+\fB4096\fR, and \fB8192\fR. The default value is \fB1024\fR.
+.sp
+For file systems greater than 1 terabyte or for file systems created with the
+\fBmtb=y\fR option, \fBfragsize\fR is forced to match block size (\fBbsize\fR).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfree=\fR\fIn\fR\fR
+.ad
+.RS 15n
+The minimum percentage of free space to maintain in the file system between 0%
+and 99%, inclusively. This space is off-limits to users. Once the file system
+is filled to this threshold, only the superuser can continue writing to the
+file system.
+.sp
+The default is ((64 Mbytes/partition size) * 100), rounded down to the nearest
+integer and limited between 1% and 10%, inclusively.
+.sp
+This parameter can be subsequently changed using the \fBtunefs\fR(8) command.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBgap=\fR\fIn\fR\fR
+.ad
+.RS 15n
+Rotational delay. This option is obsolete in the Solaris 10 release. The value
+is always set to \fB0\fR, regardless of the input value.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmaxcontig=\fR\fIn\fR\fR
+.ad
+.RS 15n
+The maximum number of logical blocks, belonging to one file, that are allocated
+contiguously. The default is calculated as follows:
+.sp
+.in +2
+.nf
+\fBmaxcontig =\fR \fIdisk drive maximum transfer size / disk block size\fR
+.fi
+.in -2
+.sp
+
+If the disk drive's maximum transfer size cannot be determined, the default
+value for \fBmaxcontig\fR is calculated from kernel parameters as follows:
+.sp
+If \fBmaxphys\fR is less than \fBufs_maxmaxphys\fR, which is typically 1 Mbyte,
+then \fBmaxcontig\fR is set to \fBmaxphys\fR. Otherwise, \fBmaxcontig\fR is set
+to \fBufs_maxmaxphys\fR.
+.sp
+You can set \fBmaxcontig\fR to any positive integer value.
+.sp
+The actual value will be the lesser of what has been specified and what the
+hardware supports.
+.sp
+You can subsequently change this parameter by using \fBtunefs\fR(8).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmtb=y\fR\fR
+.ad
+.RS 15n
+Set the parameters of the file system to allow eventual growth to over a
+terabyte in total file system size. This option sets \fIfragsize\fR to be the
+same as \fIbsize\fR, and sets \fInbpi\fR to 1 Mbyte, unless the \fB-i\fR option
+is used to make it even larger. If you explicitly set the \fIfragsize\fR or
+\fInbpi\fR parameters to values that are incompatible with this option, the
+user-supplied value of \fIfragsize\fR or \fInbpi\fR is ignored.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBN\fR\fR
+.ad
+.RS 15n
+Print out the file system parameters that would be used to create the file
+system without actually creating the file system.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnbpi=\fR\fIn\fR\fR
+.ad
+.RS 15n
+The number of bytes per inode, which specifies the density of inodes in the
+file system. The number is divided into the total size of the file system to
+determine the number of inodes to create.
+.sp
+This value should reflect the expected average size of files in the file
+system. If fewer inodes are desired, a larger number should be used. To create
+more inodes, a smaller number should be given. The default is \fB2048\fR.
+.sp
+The number of inodes can increase if the file system is expanded with the
+\fBgrowfs\fR command.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnrpos=\fR\fIn\fR\fR
+.ad
+.RS 15n
+The number of different rotational positions in which to divide a cylinder
+group. The default is \fB8\fR.
+.sp
+This option is not applicable for disks with EFI labels and is ignored.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnsect=\fR\fIn\fR\fR
+.ad
+.RS 15n
+The number of sectors per track on the disk. The default is \fB32\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBntrack=\fR\fIn\fR\fR
+.ad
+.RS 15n
+The number of tracks per cylinder on the disk. The default is \fB16\fR.
+.sp
+This option is not applicable for disks with EFI labels and is ignored.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBopt=\fR\fIs\fR\||\|\fIt\fR\fR
+.ad
+.RS 15n
+The file system can either be instructed to try to minimize the \fBtime\fR
+spent allocating blocks, or to try to minimize the \fBspace\fR fragmentation on
+the disk. The default is \fItime\fR.
+.sp
+This parameter can be subsequently changed with the \fBtunefs\fR(8) command.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrps=\fR\fIn\fR\fR
+.ad
+.RS 15n
+The rotational speed of the disk, in revolutions per second. The default is
+\fB60\fR.
+.sp
+Note that you specify \fIrps\fR for \fBmkfs\fR and \fIrpm\fR for \fBnewfs\fR.
+.sp
+This option is not applicable for disks with EFI labels and is ignored.
+.RE
+
+Alternatively, parameters can be entered as a list of space-separated values
+(without keywords) whose meaning is positional. In this case, the \fB-o\fR
+option is omitted and the list follows the size operand. This is the way
+\fBnewfs\fR passes the parameters to \fBmkfs\fR.
+.RE
+
+.SH OPERANDS
+.sp
+.LP
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fB\fIraw_device_file\fR\fR
+.ad
+.RS 19n
+The disk partition on which to write.
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR ufs (4FS),
+.BR dir_ufs (5),
+.BR attributes (7),
+.BR fsck (8),
+.BR mkfs (8),
+.BR newfs (8),
+.BR tunefs (8)
+.SH DIAGNOSTICS
+.sp
+.LP
+The following error message typically occurs with very high density disks. On
+such disks, the file system structure cannot encode the proper disk layout
+information. However, such disks have enough onboard intelligence to make up
+for any layout deficiencies, so there is no actual impact on performance. The
+warning that performance might be impaired can be safely ignored.
+.sp
+.in +2
+.nf
+Warning: insufficient space in super block for
+rotational layout tables with nsect \fIsblock.fs_nsect\fR
+and ntrak \fIsblock.fs_ntrak\fR. (File system performance may be impaired.)
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The following error message occurs when the disk geometry results in a
+situation where the last truncated cylinder group cannot contain the correct
+number of data blocks. Some disk space is wasted.
+.sp
+.in +2
+.nf
+Warning: inode blocks/cyl group (\fIgrp\fR) >= data blocks (\fInum\fR) in last cylinder
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+If there is only one cylinder group and if the above condition holds true,
+\fBmkfs\fR fails with the following error:
+.sp
+.in +2
+.nf
+File system creation failed. There is only one cylinder group and that is
+not even big enough to hold the inodes.
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The following error message occurs when the best calculated file system layout
+is unable to include the last few sectors in the last cylinder group. This is
+due to the interaction between how much space is used for various pieces of
+meta data and the total blocks available in a cylinder group. Modifying
+\fBnbpi\fR and \fBcpg\fR might reduce this number, but it is rarely worth the
+effort.
+.sp
+.in +2
+.nf
+Warning: \fInum\fR sector(s) in last cylinder group unallocated
+.fi
+.in -2
+.sp
+
+.SH NOTES
+.sp
+.LP
+You can use \fBlofiadm\fR to create a file that appears to the \fBmkfs\fR
+command (for example, \fBmkfs_pcfs\fR or \fBmkfs_ufs\fR) as a raw device. You
+can then use the \fBmkfs\fR command to create a file system on that device. See
+\fBlofiadm\fR(8) for examples of creating a \fBUFS\fR and a \fBPC\fR
+(\fBFAT\fR) file system on a device created by \fBlofiadm\fR.
+.sp
+.LP
+Both the block and character devices, such as devices in \fB/dev/dsk\fR and
+\fB/dev/rdsk\fR, must be available prior to running the \fBmkfs\fR command.
diff --git a/usr/src/man/man8/mknod.8 b/usr/src/man/man8/mknod.8
new file mode 100644
index 0000000000..46e352cfc7
--- /dev/null
+++ b/usr/src/man/man8/mknod.8
@@ -0,0 +1,109 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 1996, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH MKNOD 8 "Sep 16, 1996"
+.SH NAME
+mknod \- make a special file
+.SH SYNOPSIS
+.LP
+.nf
+\fBmknod\fR \fIname\fR b \fImajor\fR \fIminor\fR
+.fi
+
+.LP
+.nf
+\fBmknod\fR \fIname\fR c \fImajor\fR \fIminor\fR
+.fi
+
+.LP
+.nf
+\fBmknod\fR \fIname\fR p
+.fi
+
+.SH DESCRIPTION
+.LP
+\fBmknod\fR makes a directory entry for a special file.
+.SH OPTIONS
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fBb\fR\fR
+.ad
+.RS 5n
+Create a block-type special file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBc\fR\fR
+.ad
+.RS 5n
+Create a character-type special file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBp\fR\fR
+.ad
+.RS 5n
+Create a FIFO (named pipe).
+.RE
+
+.SH OPERANDS
+.LP
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fB\fImajor\fR\fR
+.ad
+.RS 9n
+The \fImajor\fR device number.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIminor\fR\fR
+.ad
+.RS 9n
+The \fIminor\fR device number; can be either decimal or octal. The assignment
+of major device numbers is specific to each system. You must be the super-user
+to use this form of the command.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIname\fR\fR
+.ad
+.RS 9n
+A special file to be created.
+.RE
+
+.SH USAGE
+.LP
+See \fBlargefile\fR(7) for the description of the behavior of \fBmknod\fR when
+encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
+.SH SEE ALSO
+.LP
+.BR ftp (1),
+.BR mknod (2),
+.BR symlink (2),
+.BR attributes (7),
+.BR largefile (7)
+.SH NOTES
+.LP
+If \fBmknod\fR(2) is used to create a device, the major and minor device
+numbers are always interpreted by the kernel running on that machine.
+.sp
+.LP
+With the advent of physical device naming, it would be preferable to create a
+symbolic link to the physical name of the device (in the \fB/devices\fR
+subtree) rather than using \fBmknod\fR.
diff --git a/usr/src/man/man8/mkpwdict.8 b/usr/src/man/man8/mkpwdict.8
new file mode 100644
index 0000000000..a1041c21c3
--- /dev/null
+++ b/usr/src/man/man8/mkpwdict.8
@@ -0,0 +1,99 @@
+'\" te
+.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH MKPWDICT 8 "Jun 1, 2004"
+.SH NAME
+mkpwdict \- maintain password-strength checking database
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/mkpwdict\fR [\fB-s\fR \fIdict1\fR,... ,\fIdictN\fR]
+ [\fB-d\fR \fIdestination-path\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBmkpwdict\fR command adds words to the dictionary-lookup database used by
+\fBpam_authtok_check\fR(7) and \fBpasswd\fR(1).
+.sp
+.LP
+Files containing words to be added to the database can be specified on the
+command-line using the \fB-s\fR flag. These source files should have a single
+word per line, much like \fB/usr/share/lib/dict/words\fR.
+.sp
+.LP
+If \fB-s\fR is omitted, \fBmkpwdict\fR will use the value of \fBDICTIONLIST\fR
+specified in \fB/etc/default/passwd\fR (see \fBpasswd\fR(1)).
+.sp
+.LP
+The database is created in the directory specified by the \fB-d\fR option. If
+this option is omitted, \fBmkpwdict\fR uses the value of \fBDICTIONDBDIR\fR
+specified in \fB/etc/default/passwd\fR (see \fBpasswd\fR(1)). The default
+location is \fB/var/passwd\fR.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-s\fR\fR
+.ad
+.RS 6n
+Specifies a comma-separated list of files containing words to be added to the
+dictionary-lookup database.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-d\fR\fR
+.ad
+.RS 6n
+Specifies the target location of the dictionary-database.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/default/passwd\fR\fR
+.ad
+.RS 23n
+See \fBpasswd\fR(1).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/passwd\fR\fR
+.ad
+.RS 23n
+default destination directory
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR passwd (1),
+.BR attributes (7),
+.BR pam_authtok_check (7)
diff --git a/usr/src/man/man8/modinfo.8 b/usr/src/man/man8/modinfo.8
new file mode 100644
index 0000000000..763c314e53
--- /dev/null
+++ b/usr/src/man/man8/modinfo.8
@@ -0,0 +1,161 @@
+'\" te
+.\" Copyright (C) 2002, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH MODINFO 8 "Oct 1, 2002"
+.SH NAME
+modinfo \- display information about loaded kernel modules
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/modinfo\fR [\fB-c\fR] [\fB-w\fR] [\fB-i\fR \fImodule-id\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBmodinfo\fR utility displays information about the loaded modules. The
+format of the information is as follows:
+.sp
+.in +2
+.nf
+\fIId\fR \fILoadaddr\fR \fISize\fR \fIInfo\fR \fIRev\fR \fIModule Name\fR
+.fi
+.in -2
+
+.sp
+.LP
+where \fIId\fR is the module ID, \fILoadaddr\fR is the starting text address in
+hexadecimal, \fISize\fR is the size of text, data, and bss in hexadecimal
+bytes, \fIInfo\fR is module specific information, \fIRev\fR is the revision of
+the loadable modules system, and \fIModule Name\fR is the filename and
+description of the module.
+.sp
+.LP
+The module specific information is the block and character major numbers for
+drivers, the system call number for system calls, and unspecified for other
+module types.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-c\fR\fR
+.ad
+.RS 16n
+Display the number of instances of the module loaded and the module's current
+state.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-i\fR\fI module-id\fR\fR
+.ad
+.RS 16n
+Display information about this module only.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-w\fR\fR
+.ad
+.RS 16n
+Do not truncate module information at \fB80\fR characters.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRDisplaying the Status of a Module
+.sp
+.LP
+The following example displays the status of module 2:
+
+.sp
+.in +2
+.nf
+example% \fBmodinfo -i 2\fR
+Id Loadaddr Size Info Rev Module Name
+ 2 ff08e000 1734 - 1 swapgeneric (root and swap configuration)
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRDisplaying the Status of Kernel Modules
+.sp
+.LP
+The following example displays the status of some kernel modules:
+
+.sp
+.in +2
+.nf
+example% \fBmodinfo\fR
+Id Loadaddr Size Info Rev Module Name
+ 2 ff08e000 1734 - 1 swapgeneric
+ 4 ff07a000 3bc0 - 1 specfs (filesystem for specfs)
+ 6 ff07dbc0 2918 - 1 TS (time sharing sched class)
+ 7 ff0804d8 49c - 1 TS_DPTBL (Time sharing dispatch table)
+ 8 ff04a000 24a30 2 1 ufs (filesystem for ufs)
+ 9 ff080978 c640 226 1 rpcmod (RPC syscall)
+ 9 ff080978 c640 - 1 rpcmod (rpc interface str mod)
+10 ff08cfb8 2031c - 1 ip (IP Streams module)
+10 ff08cfb8 2031c 2 1 ip (IP Streams device)
+
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRUsing the \fB-c\fR Option
+.sp
+.LP
+Using the \fBmodinfo\fR command with the \fB-c\fR option displays the number of
+instances of the module loaded and the module's current state.
+
+.sp
+.in +2
+.nf
+example% \fBmodinfo -c \fR
+Id Loadcnt Module Name State
+ 1 0 krtld UNLOADED/UNINSTALLED
+ 2 0 genunix UNLOADED/UNINSTALLED
+ 3 0 platmod UNLOADED/UNINSTALLED
+ 4 0 SUNW,UltraSPARC-IIi UNLOADED/UNINSTALLED
+ 5 0 cl_bootstrap UNLOADED/UNINSTALLED
+ 6 1 specfs LOADED/INSTALLED
+ 7 1 swapgeneric UNLOADED/UNINSTALLED
+ 8 1 TS LOADED/INSTALLED
+ 9 1 TS_DPTBL LOADED/INSTALLED
+ 10 1 ufs LOADED/INSTALLED
+ 11 1 fssnap_if LOADED/INSTALLED
+.fi
+.in -2
+.sp
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7),
+.BR modload (8),
+.BR modunload (8)
diff --git a/usr/src/man/man8/modload.8 b/usr/src/man/man8/modload.8
new file mode 100644
index 0000000000..cac13161e7
--- /dev/null
+++ b/usr/src/man/man8/modload.8
@@ -0,0 +1,104 @@
+'\" te
+.\" Copyright (c) 1993, Sun Microsystems, Inc.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH MODLOAD 8 "Dec 1, 1993"
+.SH NAME
+modload \- load a kernel module
+.SH SYNOPSIS
+.LP
+.nf
+\fBmodload\fR [\fB-p\fR] [\fB-e\fR \fIexec_file\fR] \fIfilename\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBmodload\fR command loads the loadable module \fIfilename\fR into the
+running system.
+.sp
+.LP
+\fIfilename\fR is an object file produced by \fBld \fR\fB-r\fR. If
+\fIfilename\fR is an absolute pathname then the file specified by that absolute
+path is loaded. If \fIfilename\fR does not begin with a slash (\fB/\fR), then
+the path to load \fIfilename\fR is relative to the current directory unless
+the \fB-p\fR option is specified.
+.sp
+.LP
+The kernel's \fBmodpath\fR variable can be set using the \fB/etc/system\fR
+file. The default value of the kernel's \fBmodpath\fR variable is set to the
+path where the operating system was loaded. Typically this is \fB/kernel
+/usr/kernel\fR.
+.sp
+.LP
+For example, the following command looks for \fB\&./drv/foo\fR:
+.sp
+.in +2
+.nf
+example# \fBmodload drv/foo\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The following command looks for \fB/kernel/drv/foo\fR and then
+\fB/usr/kernel/drv/foo\fR:
+.sp
+.in +2
+.nf
+example# \fBmodload -p drv/foo\fR
+.fi
+.in -2
+.sp
+
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-e\fR\fI exec_file\fR\fR
+.ad
+.RS 16n
+Specify the name of a shell script or executable image file that is executed
+after the module is successfully loaded. The first argument passed is the
+module ID (in decimal). The other argument is module specific. The module
+specific information is: the block and character major numbers for drivers, the
+system call number for system calls, or, for other module types, the index
+into the appropriate kernel table. See \fBmodinfo\fR(8)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR\fR
+.ad
+.RS 16n
+Use the kernel's internal modpath variable as the search path for the module.
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR ld (1),
+.BR system (5),
+.BR attributes (7),
+.BR add_drv (8),
+.BR kernel (8),
+.BR modinfo (8),
+.BR modunload (8),
+.BR modldrv (9S),
+.BR modlinkage (9S),
+.BR modlstrmod (9S),
+.BR module_info (9S)
+.sp
+.LP
+\fI\fR
+.SH NOTES
+.sp
+.LP
+Use \fBadd_drv\fR(8) to add device drivers, not \fBmodload\fR. See \fI\fR for
+procedures on adding device drivers.
diff --git a/usr/src/man/man8/modunload.8 b/usr/src/man/man8/modunload.8
new file mode 100644
index 0000000000..4caaf4cff0
--- /dev/null
+++ b/usr/src/man/man8/modunload.8
@@ -0,0 +1,69 @@
+'\" te
+.\" Copyright (c) 2005, Sun Microsystems, Inc.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH MODUNLOAD 8 "Nov 19, 2001"
+.SH NAME
+modunload \- unload a module
+.SH SYNOPSIS
+.LP
+.nf
+\fBmodunload\fR \fB-i\fR \fImodule_id\fR [\fB-e\fR \fIexec_file\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBmodunload\fR unloads a loadable module from the running system. The
+\fImodule_id\fR is the \fBID\fR of the module as shown by \fBmodinfo\fR(8). If
+\fBID\fR is \fB0\fR, all modules that were autoloaded which are unloadable, are
+unloaded. Modules loaded by \fBmodload\fR(8) are not affected.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-e\fR \fIexec_file\fR\fR
+.ad
+.RS 16n
+Specify the name of a shell script or executable image file to be executed
+before the module is unloaded. The first argument passed is the module id (in
+decimal). There are two additional arguments that are module specific. For
+loadable drivers, the second argument is the driver major number. For loadable
+system calls, the second argument is the system call number. For loadable exec
+classes, the second argument is the index into the \fBexecsw\fR table. For
+loadable filesystems, the second argument is the index into the \fBvfssw\fR
+table. For loadable streams modules, the second argument is the index into the
+\fBfmodsw\fR table. For loadable scheduling classes, the second argument is the
+index into the class array. Minus one is passed for an argument that does not
+apply.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-i\fR \fImodule_id\fR\fR
+.ad
+.RS 16n
+Specify the module to be unloaded.
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7),
+.BR modinfo (8),
+.BR modload (8),
+.BR update_drv (8)
+.SH NOTES
+.sp
+.LP
+The \fBmodunload\fR command is often used on driver modules to force the system
+to reread the associated driver configuration file. While this works in the
+current Solaris release, it is not the supported way to reread the
+configuration file and is not guaranteed to work in future releases. The
+supported way for rereading driver configuration file is through the
+\fBupdate_drv\fR(8) command.
diff --git a/usr/src/man/man8/monitor.8 b/usr/src/man/man8/monitor.8
new file mode 100644
index 0000000000..23904e6954
--- /dev/null
+++ b/usr/src/man/man8/monitor.8
@@ -0,0 +1,1777 @@
+'\" te
+.\" Copyright (c) 2003, Sun Microsystems, Inc.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH MONITOR 8 "Jul 24, 2003"
+.SH NAME
+monitor \- SPARC system PROM monitor
+.SH SYNOPSIS
+.nf
+\fBSTOP\(miA\fR
+.fi
+
+.LP
+.nf
+\fBBREAK\fR
+.fi
+
+.LP
+.nf
+\fBinitial system power-on\fR
+.fi
+
+.LP
+.nf
+\fBexit from a client program, e.g., the Operating System\fR
+.fi
+
+.SH DESCRIPTION
+The \fBCPU\fR board of a workstation contains one or more \fBEPROMs\fR or
+\fBEEPROMs.\fR The program which executes from the \fBPROMs\fR is referred to
+as "the monitor". Among other things, the monitor performs system
+initialization at power-on and provides a user interface.
+.SS "Monitor Prompt"
+The monitor of earlier workstations was known as the \fBSunMON\fR monitor and
+displayed the \fB>\fR for its prompt. See the \fBSunMON MONITOR USAGE\fR
+section for further details.
+.sp
+.LP
+Existing workstations use a monitor which is known as the OpenBoot monitor.
+The OpenBoot monitor typically displays \fBok\fR as its prompt, but it may also
+display the \fB>\fR prompt under certain circumstances.
+.sp
+.LP
+If the \fB\&'auto-boot?'\fR \fBNVRAM\fR parameter is set to \fB\&'false'\fR
+when the workstation is powered on, the system does not attempt to boot and the
+monitor issues its prompt. If \fB\&'auto-boot'\fR is set to \fB\&'true'\fR, the
+system initiates the boot sequence. The boot sequence can be aborted by
+simultaneously pressing two keys on the system's keyboard: \fBL1\fR and \fBA\fR
+(on older keyboards), or \fBStop\fR and \fBA\fR (on newer keyboards). Either a
+lower case \fBa\fR or an upper case \fBA\fR works for the keyboard abort
+sequence. If a console has been attached by way of one of the system's serial
+ports then the abort sequence can be accomplished by sending a \fBBREAK\fR. See
+\fBtip\fR(1).
+.sp
+.LP
+When the \fBNVRAM\fR \fB\&'security-mode'\fR parameter has been turned on, or
+when the value of the \fB\&'sunmon-compat?'\fR parameter is true, then the
+OpenBoot monitor displays the message: \fBType b (boot), c (continue), or n
+(new command mode)\fR
+.sp
+.LP
+and the \fB>\fR prompt appears.
+.SH OPENBOOT PROM USAGE
+Some of the more useful commands that can be issued from OpenBoot's \fBok \fR
+prompt are described here. Refer to the book for a complete list of
+commands.
+.SS "Help"
+Help for various functional areas of the OpenBoot monitor can be obtained by
+typing \fBhelp\fR. The help listing provides a number of other key words which
+can then be used in the help command to provide further details.
+.SS "NVRAM Parameters"
+Each workstation contains one or more \fBNVRAM\fR devices which contains unique
+system ID information, as well as a set of user-configurable parameters. The
+\fBNVRAM\fR parameters allow the user a certain level of flexibility in
+configuring the system to act in a given manner under a specific set of
+circumstances.
+.sp
+.LP
+See \fBeeprom\fR(8) for a description of the parameters and information
+regarding setting the parameters from the OS level.
+.sp
+.LP
+The following commands can be used at the OpenBoot monitor to access the
+\fBNVRAM\fR parameters.
+.sp
+.ne 2
+.na
+\fB\fBprintenv\fR\fR
+.ad
+.RS 18n
+Used to list the \fBNVRAM\fR parameters, along with their default values and
+current values.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsetenv\fR\fI pn pv\fR\fR
+.ad
+.RS 18n
+Used to set or modify a parameter. The \fIpn\fR represents the parameter name,
+and \fIpv\fR represents the parameter value.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBset-default\fR \fIpn\fR\fR
+.ad
+.RS 18n
+Used to set an individual parameter back to its default value.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBset-defaults\fR\fR
+.ad
+.RS 18n
+Used to reset all parameters to their default values. (Note that
+\fB\&'set-defaults'\fR only affects parameters that have assigned default
+values.)
+.RE
+
+.SS "Security Parameters"
+Newer OpenBoot monitors contain user interfaces that support the storage and
+listing of keys for later use by client programs.
+.sp
+.ne 2
+.na
+\fB\fBlist-security-keys\fR\fR
+.ad
+.sp .6
+.RS 4n
+Lists the names of keys currently stored on a machine.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBset-security-key\fR \fIkeyname\fR [ \fIkeydata\fR ]\fR
+.ad
+.sp .6
+.RS 4n
+Stores key data \fIkeydata\fR in a key named \fIkeyname\fR. Actual key data can
+be up to 32 bytes in length. The maximum length of \fIkeyname\fR is 64 bytes,
+which allows for the hex-formatted ASCII used to present the key data. If
+\fIkeydata\fR is not present, \fIkeyname\fR and its corresponding data is
+deleted.
+.RE
+
+.SS "Hardware Checks and Diagnostics"
+The following commands are available for testing or checking the system's
+hardware. If the \fB\&'diag-switch?'\fR \fBNVRAM\fR parameter is set to true
+when the system is powered on, then a Power-On Self Test (POST) diagnostic is
+run, if present, sending its results messages to the system's serial port A.
+Not all of the commands shown are available on all workstations.
+.sp
+.ne 2
+.na
+\fB\fBtest-all\fR\fR
+.ad
+.RS 17n
+Run the diagnostic tests on each device which has provided a self-test.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBtest\fR \fBfloppy\fR\fR
+.ad
+.RS 17n
+Run diagnostics on the system's floppy device.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBtest\fR \fB/memory\fR\fR
+.ad
+.RS 17n
+Run the main memory tests. If the \fBNVRAM\fR parameter \fB\&'diag-switch?'\fR
+is set to true, then all of main memory is tested. If the parameter is false
+then only the amount of memory specified in the \fB\&'selftest-#megs'\fR
+\fBNVRAM\fR parameter is tested.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBtest\fR \fBnet\fR\fR
+.ad
+.RS 17n
+Test the network connection for the on-board network controller.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBwatch-net\fR\fR
+.ad
+.RS 17n
+Monitor the network attached to the on-board net controller.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBwatch-net-all\fR\fR
+.ad
+.RS 17n
+Monitor the network attached to the on-board net controller, as well as the
+network controllers installed in SBus slots.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBwatch-clock\fR\fR
+.ad
+.RS 17n
+Test the system's clock function.
+.RE
+
+.SS "System Information"
+The following commands are available for displaying information about the
+system. Not all commands are available on all workstations.
+.sp
+.ne 2
+.na
+\fB\fBbanner\fR\fR
+.ad
+.RS 18n
+Display the power-on banner.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\&.enet-addr\fR\fR
+.ad
+.RS 18n
+Display the system's Ethernet address.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\&.idprom\fR\fR
+.ad
+.RS 18n
+Display the formatted contents of the \fBIDPROM.\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmodule-info\fR\fR
+.ad
+.RS 18n
+Display information about the system's processor(s).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBprobe-scsi\fR\fR
+.ad
+.RS 18n
+Identify the devices attached to the on-board \fBSCSI\fR controller.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBprobe-scsi-all\fR\fR
+.ad
+.RS 18n
+Identify the devices attached to the on-board \fBSCSI\fR controller as well as
+those devices which are attached to SBus \fBSCSI\fR controllers.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBshow-disks\fR\fR
+.ad
+.RS 18n
+Display a list of the device paths for installed \fBSCSI\fR disk controllers.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBshow-displays\fR\fR
+.ad
+.RS 18n
+Display a list of the device paths for installed display devices.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBshow-nets\fR\fR
+.ad
+.RS 18n
+Display a list of the device paths for installed Ethernet controllers.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBshow-sbus\fR\fR
+.ad
+.RS 18n
+Display list of installed SBus devices.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBshow-tapes\fR\fR
+.ad
+.RS 18n
+Display a list of the device paths for installed \fBSCSI\fR tape controllers.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBshow-ttys\fR\fR
+.ad
+.RS 18n
+Display a list of the device paths for tty devices.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\&.traps\fR\fR
+.ad
+.RS 18n
+Display a list of the SPARC trap types.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\&.version\fR\fR
+.ad
+.RS 18n
+Display the version and date of the OpenBoot PROM.
+.RE
+
+.SS "Emergency Commands"
+These commands must be typed from the keyboard, they do not work from a console
+which is attached by way of the serial ports. With the exception of the
+\fBStop-A\fR command, these commands are issued by pressing and holding down
+the indicated keys on the keyboard immediately after the system has been
+powered on. The keys must be held down until the monitor has checked their
+status. The \fBStop-A\fR command can be issued at any time after the console
+display begins, and the keys do not need to be held down once they've been
+pressed. The \fBStop-D,\fR \fBStop-F\fR and \fBStop-N\fR commands are not
+allowed when one of the security modes has been set. Not all commands are
+available on all workstations.
+.sp
+.ne 2
+.na
+\fB\fBStop (L1)\fR\fR
+.ad
+.RS 17n
+Bypass the Power-On Self Test (POST). This is only effective if the system has
+been placed into the diagnostic mode.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBStop-A (L1-A)\fR\fR
+.ad
+.RS 17n
+Abort the current operation and return to the monitor's default prompt.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBStop-D (L1-D)\fR\fR
+.ad
+.RS 17n
+Set the system's \fB\&'diag-switch?'\fR \fBNVRAM\fR parameter to
+\fB\&'true'\fR, which places the system in diagnostic mode. POST diagnostics,
+if present, are run, and the messages are displayed by way of the system's
+serial port A.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBStop-F (L1-F)\fR\fR
+.ad
+.RS 17n
+Enter the OpenBoot monitor before the monitor has probed the system for
+devices. Issue the \fB\&'fexit'\fR command to continue with system
+initialization.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBStop-N (L1-N)\fR\fR
+.ad
+.RS 17n
+Causes the \fBNVRAM\fR parameters to be reset to their default values. Note
+that not all parameters have default values.
+.RE
+
+.SS "Line Editor Commands"
+The following commands can be used while the monitor is displaying the \fBok\fR
+prompt. Not all of these editing commands are available on all workstations.
+.sp
+.ne 2
+.na
+\fB\fBCTRL-A\fR\fR
+.ad
+.RS 10n
+Place the cursor at the start of line.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBCTRL-B\fR\fR
+.ad
+.RS 10n
+Move the cursor backward one character.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBESC-B\fR\fR
+.ad
+.RS 10n
+Move the cursor backward one word.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBCTRL-D\fR\fR
+.ad
+.RS 10n
+Erase the character that the cursor is currently highlighting.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBESC-D\fR\fR
+.ad
+.RS 10n
+Erase the portion of word from the cursor's present position to the end of the
+word.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBCTRL-E\fR\fR
+.ad
+.RS 10n
+Place the cursor at the end of line.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBCTRL-F\fR\fR
+.ad
+.RS 10n
+Move the cursor forward one character.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBESC-F\fR\fR
+.ad
+.RS 10n
+Move the cursor forward one word.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBCTRL-H\fR\fR
+.ad
+.RS 10n
+Erase the character preceding the cursor (also use Delete or Back Space)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBESC-H\fR\fR
+.ad
+.RS 10n
+Erase the portion of the word which precedes the cursor (use also \fBCTRL-W)\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBCTRL-K\fR\fR
+.ad
+.RS 10n
+Erase from the cursor's present position to the end of the line.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBCTRL-L\fR\fR
+.ad
+.RS 10n
+Show the command history list.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBCTRL-N\fR\fR
+.ad
+.RS 10n
+Recall the next command from the command history list
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBCTRL-P\fR\fR
+.ad
+.RS 10n
+Recall a previous command from the command history list.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBCTRL-Q\fR\fR
+.ad
+.RS 10n
+Quote the next character (used to type a control character).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBCTRL-R\fR\fR
+.ad
+.RS 10n
+Retype the current line.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBCTRL-U\fR\fR
+.ad
+.RS 10n
+Erase from the cursor's present position to the beginning of the line.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBCTRL-Y\fR\fR
+.ad
+.RS 10n
+Insert the contents of the memory buffer into the line, in front (to the left)
+of the cursor.
+.RE
+
+.SS "nvramrc"
+The \fBnvramrc\fR is an area of the system's \fBNVRAM\fR where users may store
+Forth programs. The programs which are stored in the \fBnvramrc\fR are executed
+each time the system is reset, provided that the \fB\&'use-nvramrc?'\fR
+\fBNVRAM\fR parameter has been set to \fB\&'true'\fR. Refer to the book for
+information on how to edit and use the \fBnvramrc\fR.
+.SS "Restricted Monitor"
+The command \fB\&'old-mode'\fR is used to move OpenBoot into a restricted
+monitor mode, causing the \fB> \fR prompt to be displayed. Only three commands
+are allowed while in the restricted monitor; the \fB\&'go'\fR command (to
+resume a program which was interrupted with the \fBStop-A\fR command), the
+\fB\&'n'\fR command (to return to the normal OpenBoot monitor), and boot
+commands. The restricted monitor's boot commands approximate the older
+\fBSunMON\fR monitor's boot command syntax. If a \fB\&'security-mode'\fR has
+been turned on then the restricted monitor becomes the default monitor
+environment. The restricted monitor may also become the default environment if
+the \fB\&'sunmon-compat?' \fR \fBNVRAM\fR parameter is set to true. Not all
+workstations have the \fB\&'sunmon-compat?'\fR parameter.
+.SH SUNMON PROM USAGE
+The following commands are available systems with older \fBSunMON\fR-based
+PROM:
+.sp
+.ne 2
+.na
+\fB\fB+\fR|\fB\(mi\fR\fR
+.ad
+.sp .6
+.RS 4n
+Increment or decrement the current address and display the contents of the new
+location.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB^C\fR\fI source destination n\fR\fR
+.ad
+.sp .6
+.RS 4n
+(caret-C) Copy, byte-by-byte, a block of length \fIn\fR from the \fBsource\fR
+address to the \fIdestination\fR address.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB^I \fR\fIprogram\fR\fR
+.ad
+.sp .6
+.RS 4n
+(caret-I) Display the compilation date and location of \fIprogram\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB^T \fR\fIvirtual_address\fR\fR
+.ad
+.sp .6
+.RS 4n
+(caret-T) Display the physical address to which \fIvirtual_address\fR is
+mapped.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBb\fR [ \fB!\fR ] [ \fIdevice\fR [
+\fB(\fR\fIc\fR\fB,\fR\fIu\fR\fB,\fR\fIp\|\fR\fB)\fR\fI\fR ] ] [ \fIpathname\fR
+] [ \fIarguments_list\fR ]\fR
+.ad
+.sp .6
+.RS 4n
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBb\fR[\fB?\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Reset appropriate parts of the system and bootstrap a program. A `\fB!\fR'
+(preceding the \fIdevice\fR argument) prevents the system reset from occurring.
+Programs can be loaded from various devices (such as a disk, tape, or
+Ethernet). `\fBb\fR' with no arguments causes a default boot, either from a
+disk, or from an Ethernet controller. `\fBb?\fR' displays all boot devices and
+their \fIdevice\fRs.
+.sp
+.ne 2
+.na
+\fB\fIdevice\fR\fR
+.ad
+.RS 18n
+one of
+.sp
+.ne 2
+.na
+\fB\fBle\fR\fR
+.ad
+.RS 6n
+Lance Ethernet
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBie\fR\fR
+.ad
+.RS 6n
+Intel Ethernet
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsd\fR\fR
+.ad
+.RS 6n
+\fBSCSI\fR disk, CDROM
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBst\fR\fR
+.ad
+.RS 6n
+\fBSCSI\fR 1/4" or 1/2" tape
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfd\fR\fR
+.ad
+.RS 6n
+Diskette
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBid\fR\fR
+.ad
+.RS 6n
+IPI disk
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmt\fR\fR
+.ad
+.RS 6n
+Tape Master 9-track 1/2" tape
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBxd\fR\fR
+.ad
+.RS 6n
+Xylogics 7053 disk
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBxt\fR\fR
+.ad
+.RS 6n
+Xylogics 1/2" tape
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBxy\fR\fR
+.ad
+.RS 6n
+Xylogics 440/450 disk
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIc\fR\fR
+.ad
+.RS 18n
+A controller number (\fB0\fR if only one controller),
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIu\fR\fR
+.ad
+.RS 18n
+A unit number (\fB0\fR if only one driver), and
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIp\fR\fR
+.ad
+.RS 18n
+A partition.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIpathname\fR\fR
+.ad
+.RS 18n
+A pathname for a program such as \fB/stand/diag\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIarguments_list\fR\fR
+.ad
+.RS 18n
+A list of up to seven arguments to pass to the program being booted.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBc [\fR\fIvirtual_address\fR\fB]\fR\fR
+.ad
+.sp .6
+.RS 4n
+Resume execution of a program. When given, \fIvirtual_address\fR is the address
+at which execution resumes. The default is the current \fBPC.\fR Registers are
+restored to the values shown by the \fBd\fR, and \fBr\fR commands.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBd [\fR\fIwindow_number\fR\fB]\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display (dump) the state of the processor. The processor state is observable
+only after:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+An unexpected trap was encountered.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+A user program dropped into the monitor (by calling \fIabortent\fR).
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The user manually entered the monitor by typing \fBL1\(miA\fR or \fBBREAK.\fR
+.RE
+The display consists of the following:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The special registers: \fBPSR,\fR \fBPC,\fR nPC, \fBTBR,\fR \fBWIM,\fR and Y
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Eight global registers
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+24 window registers (8 \fIin\fR, 8 \fIlocal\fR, and 8 \fIout\fR), corresponding
+to one of the 7 available windows. If a Floating-Point Unit is on board, its
+status register along with 32 floating-point registers are also shown.
+.RE
+.sp
+.ne 2
+.na
+\fB\fIwindow_number\fR\fR
+.ad
+.RS 17n
+Display the indicated \fIwindow_number\fR, which can be any value between
+\fB0\fR and \fB6\fR, inclusive. If no window is specified and the \fBPSR's\fR
+current window pointer contains a valid window number, registers from the
+window that was active just prior to entry into the monitor are displayed.
+Otherwise, registers from window 0 are displayed.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBe\fR [\fIvirtual_address\fR]\|[\fIaction\fR] .\|.\|.\fR
+.ad
+.sp .6
+.RS 4n
+Open the 16-bit word at \fIvirtual_address\fR (default zero). The address is
+interpreted in the address space defined by the \fBs\fR command. See the
+\fBa\fR command for a description of \fIaction\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBf\fR\fI virtual_address1 virtual_address2 pattern \fR [\fIsize\|\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Fill the bytes, words, or long words from \fIvirtual_address1\fR (lower) to
+\fIvirtual_address2\fR (higher) with the constant, \fIpattern\fR. The
+\fBsize\fR argument can take one of the following values:
+.sp
+.ne 2
+.na
+\fB\fBb\fR\fR
+.ad
+.RS 5n
+byte format (the default)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBw\fR\fR
+.ad
+.RS 5n
+word format
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBl\fR\fR
+.ad
+.RS 5n
+long word format
+.RE
+
+For example, the following command fills the address block from \fB0x1000\fR to
+\fB0x2000\fR with the word pattern, \fB0xABCD\fR:
+.sp
+\fBf 1000 2000 ABCD W\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBg\fR [\fIvector\|\fR] [\fIargument\|\fR]\fR
+.ad
+.br
+.na
+\fB\fBg\fR [\fIvirtual_address\|\fR] [\fIargument\fR\|]\fR
+.ad
+.sp .6
+.RS 4n
+Goto (jump to) a predetermined or default routine (first form), or to a
+user-specified routine (second form). The value of \fIargument\fR is passed to
+the routine. If the \fIvector\fR or \fIvirtual_address\fR argument is omitted,
+the value in the \fBPC\fR is used as the address to jump to.
+.sp
+To set up a predetermined routine to jump to, a user program must, prior to
+executing the monitor's \fBg\fR command, set the variable
+\fB*romp->v_vector_cmd\fR to be equal to the virtual address of the desired
+routine. Predetermined routines need not necessarily return control to the
+monitor.
+.sp
+The default routine, defined by the monitor, prints the user-supplied
+\fIvector\fR according to the format supplied in \fIargument\fR. This format
+can be one of:
+.sp
+.ne 2
+.na
+\fB\fB%x\fR\fR
+.ad
+.RS 6n
+hexadecimal
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB%d\fR\fR
+.ad
+.RS 6n
+decimal
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBg0\fR\fR
+.ad
+.sp .6
+.RS 4n
+Force a panic and produce a crash dump when the monitor is running as a result
+of the system being interrupted,
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBg4\fR\fR
+.ad
+.sp .6
+.RS 4n
+(Sun-4 systems only) Force a kernel stack trace when the monitor is running as
+a result of the system being interrupted,
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBh\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display the help menu for monitor commands and their descriptions. To return to
+the monitor's basic command level, press \fBESCAPE\fR or \fBq\fR before
+pressing \fBRETURN.\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBi \fR[\fIcache_data_offset\fR\|] [\fIaction\fR\|]\|.\|.\|.\fR
+.ad
+.sp .6
+.RS 4n
+Modify cache data \fBRAM\fR command. Display and/or modify one or more of the
+cache data addresses. See the \fBa\fR command for a description of
+\fIaction\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBj\fR [\fIcache_tag_offset\fR\|] [\fIaction\|\fR]\|.\|.\|.\fR
+.ad
+.sp .6
+.RS 4n
+Modify cache tag \fBRAM\fR command. Display and/or modify the contents of one
+or more of the cache tag addresses. See the \fBa\fR command for a description
+of \fIaction\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBk [\fR\fIreset_level\fR\fB]\fR\fR
+.ad
+.sp .6
+.RS 4n
+Reset the system, where \fIreset_level\fR is:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 5n
+Reset \fBVMEbus,\fR interrupt registers, video monitor (Sun-4 systems). This is
+the default.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB1\fR\fR
+.ad
+.RS 5n
+Software reset.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB2\fR\fR
+.ad
+.RS 5n
+Power-on reset. Resets and clears the memory. Runs the \fBEPROM-based\fR
+diagnostic self test, which can take several minutes, depending upon how much
+memory is being tested.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBkb\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display the system banner.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBl\|\fR [\fIvirtual_address\fR\|]\|[\fIaction\fR]\|.\|.\|.\fR
+.ad
+.sp .6
+.RS 4n
+Open the long word (32 bit) at memory address \fIvirtual_address\fR (default
+zero). The address is interpreted in the address space defined by the \fBs\fR
+command (below). See the \fBa\fR command for a description of \fIaction\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBm\|\fR [\fIvirtual_address\fR\|]\|[\fIaction\fR\|]\|.\|.\|.\fR
+.ad
+.sp .6
+.RS 4n
+Open the segment map entry that maps \fIvirtual_address\fR (default zero). The
+address is interpreted in the address space defined by the \fBs\fR command. See
+the \fBa\fR command for a description of \fIaction\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBne\fR\fR
+.ad
+.sp .6
+.RS 4n
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBni\fR\fR
+.ad
+.sp .6
+.RS 4n
+Disable, enable, or invalidate the cache, respectively.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBo\|\fR [\fIvirtual_address\fR\|]\|[action\fI]\|.\|.\|.\fR\fR
+.ad
+.sp .6
+.RS 4n
+Open the byte location specified by \fIvirtual_address\fR (default zero). The
+address is interpreted in the address space defined by the \fBs\fR command. See
+the \fBa\fR command for a description of \fIaction\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBp\|\fR [\fIvirtual_address\fR\|]\|[\fIaction\fR].\|.\|.\fR
+.ad
+.sp .6
+.RS 4n
+Open the page map entry that maps \fIvirtual_address\fR (default zero) in the
+address space defined by the \fBs\fR command. See the \fBa\fR command for a
+description of \fIaction\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBq\|\fR [\fIeeprom_offset\fR\|]\|[\fIaction\fR\|].\|.\|.\fR
+.ad
+.sp .6
+.RS 4n
+Open the \fBEEPROM\fR \fIeeprom_offset\fR (default zero) in the \fBEEPROM\fR
+address space. All addresses are referenced from the beginning or base of the
+\fBEEPROM\fR in physical address space, and a limit check is performed to
+insure that no address beyond the \fBEEPROM\fR physical space is accessed. This
+command is used to display or modify configuration parameters, such as: the
+amount of memory to test during self test, whether to display a standard or
+custom banner, if a serial port (A or B) is to be the system console, etc. See
+the \fBa\fR command for a description of \fIaction\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBr\|\fR [\fIregister_number\|\fR]\fR
+.ad
+.br
+.na
+\fB\fBr\|\fR [\fIregister_type\|\fR]\fR
+.ad
+.br
+.na
+\fB\fBr\|\fR [\fIw window_number\|\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Display and/or modify one or more of the \fBIU\fR or \fBFPU\fR registers. A
+hexadecimal \fIregister_number\fR can be one of:
+.sp
+.ne 2
+.na
+\fB\fB0x00\fR\(mi\fB0x0f\fR\fR
+.ad
+.RS 16n
+window(0,i0)\(miwindow(0,i7), window(0,i0)\(emwindow(0,i7)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB0x16\fR\(mi\fB0x1f\fR\fR
+.ad
+.RS 16n
+window(1,i0)\(miwindow(1,i7), window(1,i0)\(emwindow(1,i7)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB0x20\fR\(mi\fB0x2f\fR\fR
+.ad
+.RS 16n
+window(2,i0)\(miwindow(2,i7), window(2,i0)\(emwindow(2,i7)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB0x30\fR\(mi\fB0x3f\fR\fR
+.ad
+.RS 16n
+window(3,i0)\(miwindow(3,i7), window(3,i0)\(emwindow(3,i7)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB0x40\fR\(mi\fB0x4f\fR\fR
+.ad
+.RS 16n
+window(4,i0)\(miwindow(4,i7), window(4,i0)\(emwindow(4,i7)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB0x50\fR\(mi\fB0x5f\fR\fR
+.ad
+.RS 16n
+window(5,i0)\(miwindow(5,i7), window(5,i0)\(emwindow(5,i7)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB0x60\fR\(mi\fB0x6f\fR\fR
+.ad
+.RS 16n
+window(6,i0)\(miwindow(6,i7), window(6,i0)\(emwindow(6,i7)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB0x70\fR\(mi\fB0x77\fR\fR
+.ad
+.RS 16n
+\fBg0, g1, g2, g3, g4, g5, g6, g7\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB0x78\fR\(mi\fB0x7d\fR\fR
+.ad
+.RS 16n
+\fBPSR,\fR \fBPC,\fR \fBnPC,\fR \fBWIM,\fR \fBTBR,\fR \fBY.\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB0x7e\fR\(mi\fB0x9e\fR\fR
+.ad
+.RS 16n
+\fBFSR,\fR f0\(mif31
+.RE
+
+Register numbers can only be displayed after an unexpected trap, a user program
+has entered the monitor using the \fIabortent\fR function, or the user has
+entered the monitor by manually typing \fBL1\(miA\fR or \fBBREAK.\fR
+.sp
+If a \fIregister_type\fR is given, the first register of the indicated type is
+displayed. \fIregister_type\fR can be one of:
+.sp
+.ne 2
+.na
+\fB\fBf\fR\fR
+.ad
+.RS 5n
+floating-point
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBg\fR\fR
+.ad
+.RS 5n
+global
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBs\fR\fR
+.ad
+.RS 5n
+special
+.RE
+
+If \fBw\fR and a \fIwindow_number\fR (\fB0\fR\(em\fB6\fR) are given, the first
+\fIin\fR-register within the indicated window is displayed. If
+\fIwindow_number\fR is omitted, the window that was active just prior to
+entering the monitor is used. If the \fBPSR's\fR current window pointer is
+invalid, window 0 is used.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBs [\fR\fIasi\fR\fB])\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set or display the Address Space Identifier. With no argument, \fBs\fR
+displays the current Address Space Identifier. The \fIasi\fR value can be one
+of:
+.sp
+.ne 2
+.na
+\fB\fB0x2\fR\fR
+.ad
+.RS 7n
+control space
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB0x3\fR\fR
+.ad
+.RS 7n
+segment table
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB0x4\fR\fR
+.ad
+.RS 7n
+Page table
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB0x8\fR\fR
+.ad
+.RS 7n
+user instruction
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB0x9\fR\fR
+.ad
+.RS 7n
+supervisor instruction
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB0xa\fR\fR
+.ad
+.RS 7n
+user data
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB0xb\fR\fR
+.ad
+.RS 7n
+supervisor data
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB0xc\fR\fR
+.ad
+.RS 7n
+flush segment
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB0xd\fR\fR
+.ad
+.RS 7n
+flush page
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB0xe\fR\fR
+.ad
+.RS 7n
+flush context
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB0xf\fR\fR
+.ad
+.RS 7n
+cache data
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBu\fR [ \fBecho\fR ]\fR
+.ad
+.sp .6
+.RS 4n
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBu\fR [ \fIport\fR ] [ \fIoptions\fR ] [ \fIbaud_rate\fR ]\fR
+.ad
+.sp .6
+.RS 4n
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBu\fR [ \fBu\fR ] [ \fIvirtual_address\fR ]\fR
+.ad
+.sp .6
+.RS 4n
+With no arguments, display the current I/O device characteristics including:
+current input device, current output device, baud rates for serial ports A and
+B, an input-to-output echo indicator, and virtual addresses of mapped
+\fBUART\fR devices. With arguments, set or configure the current I/O device.
+With the \fBu\fR argument (\fBuu\fR.\|.\|.), set the I/O device to be the
+\fIvirtual_address\fR of a \fBUART\fR device currently mapped.
+.sp
+.ne 2
+.na
+\fB\fBecho\fR\fR
+.ad
+.RS 13n
+ Can be either \fBe\fR to enable input to be echoed to the output device, or
+\fBne\fR, to indicate that input is not echoed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIport\fR\fR
+.ad
+.RS 13n
+Assign the indicated \fIport\fR to be the current I/O device. \fIport\fR can be
+one of:
+.sp
+.ne 2
+.na
+\fB\fBa\fR\fR
+.ad
+.RS 5n
+serial port A
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBb\fR\fR
+.ad
+.RS 5n
+serial port B
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBk\fR\fR
+.ad
+.RS 5n
+the workstation keyboard
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBs\fR\fR
+.ad
+.RS 5n
+the workstation screen
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIbaud_rate\fR\fR
+.ad
+.RS 13n
+Any legal baud rate.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIoptions\fR\fR
+.ad
+.RS 11n
+can be any combination of:
+.sp
+.ne 2
+.na
+\fB\fBi\fR\fR
+.ad
+.RS 6n
+input
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBo\fR\fR
+.ad
+.RS 6n
+output
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBu\fR\fR
+.ad
+.RS 6n
+\fBUART\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBe\fR\fR
+.ad
+.RS 6n
+echo input to output
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBne\fR\fR
+.ad
+.RS 6n
+do not echo input
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBr\fR\fR
+.ad
+.RS 6n
+reset indicated serial port (\fBa\fR and \fBb\fR ports only)
+.RE
+
+If either \fBa\fR or \fBb\fR is supplied, and no \fIoptions\fR are given, the
+serial port is assigned for both input and output. If \fBk\fR is supplied with
+no options, it is assigned for input only. If \fBs\fR is supplied with no
+options, it is assigned for output only.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBv\fR\fI virtual_address1 virtual_address2 \fR [\fBsize\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Display the contents of \fIvirtual_address1\fR (lower) \fIvirtual_address2\fR
+(higher) in the format specified by \fBsize\fR:
+.sp
+.ne 2
+.na
+\fB\fBb\fR\fR
+.ad
+.RS 5n
+byte format (the default)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBw\fR\fR
+.ad
+.RS 5n
+word format
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBl\fR\fR
+.ad
+.RS 5n
+long word format
+.RE
+
+Enter return to pause for viewing; enter another return character to resume the
+display. To terminate the display at any time, press the space bar.
+.sp
+For example, the following command displays the contents of virtual address
+space from address \fB0x1000\fR to \fB0x2000\fR in word format:
+.sp
+\fBv\fR \fB1000\fR \fB2000\fR \fBW\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBw\|\fR [\fIvirtual_address\|\fR]\|[\fIargument\|\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Set the execution vector to a predetermined or default routine. Pass
+\fIvirtual_address\fR and \fIargument\fR to that routine.
+.sp
+To set up a predetermined routine to jump to, a user program must, prior to
+executing the monitor's \fBw\fR command, set the variable
+\fB*romp->v_vector_cmd\fR to be equal to the virtual address of the desired
+routine. Predetermined routines need not necessarily return control to the
+monitor.
+.sp
+The default routine, defined by the monitor, prints the user-supplied
+\fIvector\fR according to the format supplied in \fIargument\fR. This format
+can be one of:
+.sp
+.ne 2
+.na
+\fB\fB%x\fR\fR
+.ad
+.RS 6n
+hexadecimal
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB%d\fR\fR
+.ad
+.RS 6n
+decimal
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBx\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display a menu of extended tests. These diagnostics permit additional testing
+of such things as the I/O port connectors, video memory, workstation memory and
+keyboard, and boot device paths.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBy\|c\fR\fI context_number\fR\fR
+.ad
+.sp .6
+.RS 4n
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBy\|p|s\|\fR\fI context_number virtual_address\fR\fR
+.ad
+.sp .6
+.RS 4n
+Flush the indicated context, context page, or context segment.
+.sp
+.ne 2
+.na
+\fB\fBc\fR\fR
+.ad
+.RS 5n
+flush context \fIcontext_number\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBp\fR\fR
+.ad
+.RS 5n
+flush the page beginning at \fIvirtual_address\fR within context
+\fIcontext_number\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBs\fR\fR
+.ad
+.RS 5n
+flush the segment beginning at \fIvirtual_address\fR within context
+\fIcontext_number\fR
+.RE
+
+.RE
+
+.SH ATTRIBUTES
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture SPARC
+.TE
+
+.SH SEE ALSO
+.BR tip (1),
+.BR attributes (7),
+.BR boot (8),
+.BR eeprom (8)
diff --git a/usr/src/man/man8/mount.8 b/usr/src/man/man8/mount.8
new file mode 100644
index 0000000000..2143e433c3
--- /dev/null
+++ b/usr/src/man/man8/mount.8
@@ -0,0 +1,454 @@
+'\" te
+.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 2015 Nexenta Systems, Inc. All rights reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH MOUNT 8 "Sep 8, 2015"
+.SH NAME
+mount, umount \- mount or unmount file systems and remote resources
+.SH SYNOPSIS
+.LP
+.nf
+\fBmount\fR [\fB-p\fR | \fB-v\fR]
+.fi
+
+.LP
+.nf
+\fBmount\fR [\fB-F\fR \fIFSType\fR] [\fIgeneric_options\fR] [\fB-o\fR \fIspecific_options\fR]
+ [\fB-O\fR] \fIspecial\fR | \fImount_point\fR
+.fi
+
+.LP
+.nf
+\fBmount\fR [\fB-F\fR \fIFSType\fR] [\fIgeneric_options\fR] [\fB-o\fR \fIspecific_options\fR]
+ [\fB-O\fR] \fIspecial\fR \fImount_point\fR
+.fi
+
+.LP
+.nf
+\fBmount\fR \fB-a\fR [\fB-F\fR \fIFSType\fR] [\fB-V\fR] [\fIcurrent_options\fR]
+ [\fB-o\fR \fIspecific_options\fR] [\fImount_points...\fR]
+.fi
+
+.LP
+.nf
+\fBumount\fR [\fB-f\fR] [\fB-V\fR] [\fB-o\fR \fIspecific_options\fR] \fIspecial\fR | \fImount_point\fR
+.fi
+
+.LP
+.nf
+\fBumount\fR \fB-a\fR [\fB-f\fR] [\fB-V\fR] [\fB-o\fR \fIspecific_options\fR] [\fImount_points...\fR]
+.fi
+
+.SH DESCRIPTION
+.LP
+\fBmount\fR attaches a file system to the file system hierarchy at the
+\fImount_point\fR, which is the pathname of a directory. If \fImount_point\fR
+has any contents prior to the \fBmount\fR operation, these are hidden until the
+file system is unmounted.
+.LP
+\fBumount\fR unmounts a currently mounted file system, which may be specified
+either as a \fImount_point\fR or as \fIspecial\fR, the device on which the file
+system resides.
+.LP
+The table of currently mounted file systems can be found by examining the
+mounted file system information file. This is provided by a file system that is
+usually mounted on \fB/etc/mnttab\fR. The mounted file system information is
+described in \fBmnttab\fR(5). Mounting a file system adds an entry to the mount
+table; a \fBumount\fR removes an entry from the table.
+.LP
+When invoked with both the \fIspecial\fR and \fImount_point\fR arguments and
+the \fB-F\fR option, \fBmount\fR validates all arguments except for
+\fIspecial\fR and invokes the appropriate \fIFSType\fR-specific \fBmount\fR
+module. If invoked with no arguments, \fBmount\fR lists all the mounted file
+systems recorded in the mount table, \fB/etc/mnttab\fR. If invoked with a
+partial argument list (with only one of \fIspecial\fR or \fImount_point\fR, or
+with both \fIspecial\fR or \fImount_point\fR specified but not \fIFSType\fR),
+\fBmount\fR will search \fB/etc/vfstab\fR for an entry that will supply the
+missing arguments. If no entry is found, and the special argument starts with
+\fB/\fR, the default local file system type specified in \fB/etc/default/fs\fR
+will be used. Otherwise the default remote file system type will be used. The
+default remote file system type is determined by the first entry in the
+\fB/etc/dfs/fstypes\fR file. After filling in missing arguments, \fBmount\fR
+will invoke the \fIFSType\fR-specific \fBmount\fR module.
+.LP
+For file system types that support it, a file can be mounted directly as a file
+system by specifying the full path to the file as the special argument. In
+such a case, the \fBnosuid\fR option is enforced. If specific file system
+support for such loopback file mounts is not present, you can still use
+\fBlofiadm\fR(8) to mount a file system image. In this case, no special
+options are enforced.
+.LP
+Only a user with sufficient privilege (at least \fBPRIV_SYS_MOUNT\fR) can mount
+or unmount file systems using \fBmount\fR and \fBumount\fR. However, any user
+can use \fBmount\fR to list mounted file systems and resources.
+.SH OPTIONS
+.ne 2
+.na
+\fB\fB-F\fR \fIFSType\fR\fR
+.ad
+.sp .6
+.RS 4n
+Used to specify the \fIFSType\fR on which to operate. The \fIFSType\fR must be
+specified or must be determinable from \fB/etc/vfstab\fR, or by consulting
+\fB/etc/default/fs\fR or \fB/etc/dfs/fstypes\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-a\fR [ \fImount_points\fR... ]\fR
+.ad
+.sp .6
+.RS 4n
+Perform mount or umount operations in parallel, when possible.
+.sp
+If mount points are not specified, \fBmount\fR will mount all file systems
+whose \fB/etc/vfstab\fR "mount at boot" field is \fByes\fR. If mount points are
+specified, then \fB/etc/vfstab\fR "mount at boot" field will be ignored.
+.sp
+If mount points are specified, \fBumount\fR will only \fBumount\fR those mount
+points. If none is specified, then \fBumount\fR will attempt to \fBunmount\fR
+all file systems in \fB/etc/mnttab\fR, with the exception of certain system
+required file systems: \fB/\fR, \fB/usr\fR, \fB/var\fR, \fB/var/adm\fR,
+\fB/var/run\fR, \fB/proc\fR, \fB/dev/fd\fR and \fB/tmp\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR\fR
+.ad
+.sp .6
+.RS 4n
+Forcibly unmount a file system.
+.sp
+Without this option, \fBumount\fR does not allow a file system to be unmounted
+if a file on the file system is busy. Using this option can cause data loss for
+open files; programs which access files after the file system has been
+unmounted will get an error (\fBEIO\fR).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR\fR
+.ad
+.sp .6
+.RS 4n
+Print the list of mounted file systems in the \fB/etc/vfstab\fR format. Must be
+the only option specified. See \fBBUGS\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.sp .6
+.RS 4n
+Print the list of mounted file systems in verbose format. Must be the only
+option specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-V\fR\fR
+.ad
+.sp .6
+.RS 4n
+Echo the complete command line, but do not execute the command. \fBumount\fR
+generates a command line by using the options and arguments provided by the
+user and adding to them information derived from \fB/etc/mnttab\fR. This option
+should be used to verify and validate the command line.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIgeneric_options\fR\fR
+.ad
+.sp .6
+.RS 4n
+Options that are commonly supported by most \fIFSType\fR-specific command
+modules. The following options are available:
+.sp
+.ne 2
+.na
+\fB\fB-m\fR\fR
+.ad
+.sp .6
+.RS 4n
+Mount the file system without making an entry in \fB/etc/mnttab\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-g\fR\fR
+.ad
+.sp .6
+.RS 4n
+Globally mount the file system. On a clustered system, this globally mounts the
+file system on all nodes of the cluster. On a non-clustered system this has no
+effect.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-o\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify \fIFSType\fR-specific options in a comma separated (without spaces)
+list of suboptions and keyword-attribute pairs for interpretation by the
+\fIFSType\fR-specific module of the command. (See \fBmount_ufs\fR(8).) When
+you use \fB-o\fR with a file system that has an entry in \fB/etc/vfstab\fR, any
+\fBmount\fR options entered for that file system in \fB/etc/vfstab\fR are
+ignored.
+.sp
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fBdevices | nodevices\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow or disallow the opening of device-special files. The default is
+\fBdevices\fR.
+.sp
+If you use \fBnosuid\fR in conjunction with \fBdevices\fR, the behavior is
+equivalent to that of \fBnosuid\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBexec | noexec\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow or disallow executing programs in the file system. Allow or disallow
+\fBmmap\fR(2) with \fBPROT_EXEC\fR for files within the file system. The
+default is \fBexec\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBloop\fR\fR
+.ad
+.sp .6
+.RS 4n
+Ignored for compatibility.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnbmand | nonbmand\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow or disallow non-blocking mandatory locking semantics on this file system.
+Non-blocking mandatory locking is disallowed by default.
+.sp
+If the file system is mounted with the \fBnbmand\fR option, then applications
+can use the \fBfcntl\fR(2) interface to place non-blocking mandatory locks on
+files and the system enforces those semantics. If you enable this option, it
+can cause standards conformant applications to see unexpected errors.
+.sp
+To avoid the possibility of obtaining mandatory locks on system files, do not
+use the \fBnbmand\fR option with the following file systems:
+.sp
+.in +2
+.nf
+/
+/usr
+/etc
+/var
+/proc
+/dev
+/devices
+/system/contract
+/system/object
+/etc/mnttab
+/etc/dfs/sharetab
+.fi
+.in -2
+.sp
+
+Do not use the \fBremount\fR option to change the \fBnbmand\fR disposition of
+the file system. The \fBnbmand\fR option is mutually exclusive of the global
+option. See \fB-g\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBro | rw\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify read-only or read-write. The default is \fBrw\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsetuid | nosetuid\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow or disallow \fBsetuid\fR or \fBsetgid\fR execution. The default is
+\fBsetuid\fR.
+.sp
+If you specify \fBsetuid\fR in conjunction with \fBnosuid\fR, the behavior is
+the same as \fBnosuid\fR.
+.sp
+\fBnosuid\fR is equivalent to \fBnosetuid\fR and \fBnodevices\fR. When
+\fBsuid\fR or \fBnosuid\fR is combined with \fBsetuid\fR or \fBnosetuid\fR and
+\fBdevices\fR or \fBnodevices\fR, the most restrictive options take effect.
+.sp
+This option is highly recommended whenever the file system is shared by way of
+NFS with the \fBroot=\fR option. Without it, NFS clients could add \fBsetuid\fR
+programs to the server or create devices that could open security holes.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsuid | nosuid\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow or disallow \fBsetuid\fR or \fBsetgid\fR execution. The default is
+\fBsuid\fR. This option also allows or disallows opening any device-special
+entries that appear within the filesystem.
+.sp
+\fBnosuid\fR is equivalent to \fBnosetuid\fR and \fBnodevices\fR. When
+\fBsuid\fR or \fBnosuid\fR is combined with \fBsetuid\fR or \fBnosetuid\fR and
+\fBdevices\fR or \fBnodevices\fR, the most restrictive options take effect.
+.sp
+This option is highly recommended whenever the file system is shared using NFS
+with the \fBroot=\fIoption\fR\fR, because, without it, NFS clients could add
+\fBsetuid\fR programs to the server, or create devices that could open security
+holes.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-O\fR\fR
+.ad
+.sp .6
+.RS 4n
+Overlay mount. Allow the file system to be mounted over an existing mount
+point, making the underlying file system inaccessible. If a mount is attempted
+on a pre-existing mount point without setting this flag, the mount will fail,
+producing the error "device busy".
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-r\fR\fR
+.ad
+.sp .6
+.RS 4n
+Mount the file system read-only.
+.RE
+
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRMounting and Unmounting a DVD Image Directly
+.sp
+.LP
+The following commands mount and unmount a DVD image.
+
+.sp
+.in +2
+.nf
+# \fBmount -F hsfs /images/solaris.iso /mnt/solaris-image\fR
+# \fBumount /mnt/solaris-image\fR
+.fi
+.in -2
+.sp
+
+.SH USAGE
+.LP
+See \fBlargefile\fR(7) for the description of the behavior of \fBmount\fR and
+\fBumount\fR when encountering files greater than or equal to 2 Gbyte ( 2^31
+bytes).
+.SH FILES
+.ne 2
+.na
+\fB\fB/etc/mnttab\fR\fR
+.ad
+.sp .6
+.RS 4n
+Table of mounted file systems.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/default/fs\fR\fR
+.ad
+.sp .6
+.RS 4n
+Default local file system type. Default values can be set for the following
+flags in \fB/etc/default/fs\fR. For example: \fBLOCAL=ufs\fR
+.sp
+.ne 2
+.na
+\fB\fBLOCAL:\fR\fR
+.ad
+.sp .6
+.RS 4n
+The default partition for a command if no \fIFSType\fR is specified.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/vfstab\fR\fR
+.ad
+.sp .6
+.RS 4n
+List of default parameters for each file system.
+.RE
+
+.SH SEE ALSO
+.LP
+\fBlofiadm\fR(8), \fBmount_hsfs\fR(8), \fBmount_nfs\fR(8),
+\fBmount_pcfs\fR(8), \fBfcntl\fR(2),
+.BR mmap (2),
+.BR lofs (4FS),
+.BR pcfs (4FS),
+.BR mnttab (5),
+.BR vfstab (5),
+.BR attributes (7),
+.BR largefile (7),
+.BR privileges (7),
+.BR mount_smbfs (8),
+.BR mount_tmpfs (8),
+.BR mount_udfs (8),
+.BR mount_ufs (8),
+.BR mountall (8),
+.BR umountall (8)
+.SH NOTES
+.LP
+If the directory on which a file system is to be mounted is a symbolic link,
+the file system is mounted on the directory to which the symbolic link refers,
+rather than on top of the symbolic link itself.
diff --git a/usr/src/man/man8/mount_hsfs.8 b/usr/src/man/man8/mount_hsfs.8
new file mode 100644
index 0000000000..ce6b96e979
--- /dev/null
+++ b/usr/src/man/man8/mount_hsfs.8
@@ -0,0 +1,287 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH MOUNT_HSFS 8 "May 29, 2008"
+.SH NAME
+mount_hsfs \- mount hsfs file systems
+.SH SYNOPSIS
+.LP
+.nf
+\fBmount\fR \fB-F\fR hsfs [\fIgeneric_options\fR]
+ [\fB-o\fR \fIFSType-specific_options\fR] [\fB-O\fR ] \fIspecial\fR | \fImount_point\fR
+.fi
+
+.LP
+.nf
+\fBmount\fR \fB-F\fR hsfs [\fIgeneric_options\fR]
+ [\fB-o\fR \fIFSType-specific_options\fR] [\fB-O\fR] \fIspecial\fR \fImount_point\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBmount\fR attaches an ISO 9660 filesystem (the High Sierra file system,
+\fBhsfs\fR, is a draft predecessor to ISO 9660, so the name reflects the
+filesystem's history) to the file system hierarchy at the \fImount_point\fR,
+which is the pathname of a directory. If \fImount_point\fR has any contents
+prior to the mount operation, these are hidden until the file system is
+unmounted.
+.sp
+.LP
+If \fBmount\fR is invoked with \fIspecial\fR or \fImount_point\fR as the
+only arguments, \fBmount\fR will search \fB/etc/vfstab\fR to fill in the
+missing arguments, including the \fIFSType-specific_options\fR; see
+\fBmount\fR(8) for more details.
+.sp
+.LP
+The \fBhsfs\fR file system supports direct mounting of files containing the
+file system as well as block devices. See \fBmount\fR(8) and
+\fBlofiadm\fR(8).
+.sp
+.LP
+A file system conforming to ISO 9660 can contain extensions that allow it to
+overcome limitations of the original ISO 9660:1988 (version 1) standard. The
+following types of extensions are supported by \fBhsfs\fR:
+.sp
+.ne 2
+.na
+\fBRock Ridge extensions\fR
+.ad
+.sp .6
+.RS 4n
+This is the preferred type of extension as it allows file attributes, name
+length, and types equivalent to those on other UNIX-style filesystems. Example
+of supported features are device special files, POSIX permissions, symbolic
+links, and filenames of up to 255 bytes in length. Rock Ridge extensions also
+remove the ISO9660:1988 restriction on maximum nesting depth for directories
+(eight levels). \fBhsfs\fR automatically detects the presence of Rock Ridge
+extensions and uses them, unless mount options are specified to disable the use
+of Rock Ridge or to use a different extension.
+.RE
+
+.sp
+.ne 2
+.na
+\fBISO9660:1999 (version 2) extensions\fR
+.ad
+.sp .6
+.RS 4n
+The first version of ISO9660, released in 1988, supported only uppercase ASCII
+filenames of no more than 31 characters in length. ISO9660 version 2, released
+in 1999, provides an extension that allows filenames of at least 207 bytes
+that can use UTF-8 characters and removes the limitation on the nesting depth
+for directories. Unlike Rock Ridge, it does not provide support for UNIX-style
+file types and file attributes. \fBhsfs\fR automatically detects this extension
+and will use it for filename lookup if no Rock Ridge extensions are found on
+the media.
+.RE
+
+.sp
+.ne 2
+.na
+\fBJoliet extensions\fR
+.ad
+.sp .6
+.RS 4n
+The Joliet extension was devised by Microsoft to allow Unicode (UCS-2) long
+filenames with CDROM-based media. It allows filename lengths of up to 110
+Unicode characters and does not support UNIX-style file types and attributes.
+\fBhsfs\fR falls back to using Joliet if such an extension is present and
+neither Rock Ridge nor ISO9660 version 2 extensions are found.
+.sp
+If filenames are longer than the 64 UCS-2 characters officially allowed by
+Microsoft (that is, 110 Unicode characters), they can translate to up to 330
+UTF-8 octets. Filenames that translate to more than 255 UTF-8 octets will be
+truncated.
+.RE
+
+.SH OPTIONS
+.sp
+.ne 2
+.na
+\fB\fIgeneric_options\fR\fR
+.ad
+.sp .6
+.RS 4n
+See \fBmount\fR(8) for the list of supported options.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-o\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify \fBhsfs\fR file system specific options. If invalid options are
+specified, a warning message is printed and the invalid options are ignored.
+The following options are available:
+.sp
+.ne 2
+.na
+\fB\fBglobal\fR | \fBnoglobal\fR\fR
+.ad
+.sp .6
+.RS 4n
+If \fBglobal\fR is specified and supported on the file system, and the system
+in question is part of a cluster, the file system will be globally visible on
+all nodes of the cluster. If \fBnoglobal\fR is specified, the mount will not be
+globally visible. The default behavior is \fBnoglobal\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBro\fR\fR
+.ad
+.sp .6
+.RS 4n
+Mount the file system read-only. This option is required.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrr\fR | \fBnrr\fR\fR
+.ad
+.sp .6
+.RS 4n
+Enable (\fBrr\fR) or disable (\fBnrr\fR) the use of Rock Ridge. \fBrr\fR is the
+default and need not be specified. If you use \fBnrr\fR and Rock Ridge
+extensions are present in the file system, ignore them and search for other
+available extensions or fall back to plain ISO9660.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBvers2\fR | \fBnovers2\fR\fR
+.ad
+.sp .6
+.RS 4n
+Enable or disable the use of ISO9660 version 2 extensions. If \fBvers2\fR is
+specified and ISO9660 version 2 extensions are available, \fBhsfs\fR will use
+ISO9660 version 2 even if the file system contains the preferred Rock Ridge
+extensions as well. If \fBnovers2\fR is specified, it will fall back to using
+either Joliet extensions or plain ISO9660 even if ISO9660 version 2 extensions
+are available.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBjoliet\fR | \fBnojoliet\fR\fR
+.ad
+.sp .6
+.RS 4n
+Enable or disable the use of Joliet extensions. If \fBjoliet\fR is specified
+and Joliet extensions are available, \fBhsfs\fR will use them even if the file
+system contains the preferred Rock Ridge and/or ISO9660 version 2 extensions.
+If \fBnojoliet\fR is specified, it will fall back to using plain ISO9660.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnotraildot\fR\fR
+.ad
+.sp .6
+.RS 4n
+File names on High Sierra file systems consist of a proper name and an
+extension separated by a '.' (dot) character. By default, the separating dot
+is always considered part of the file's name for all file access operations,
+even if there is no extension present. Specifying \fBnotraildot\fR makes it
+optional to specify the trailing dot to access a file whose name lacks an
+extension.
+.sp
+\fBExceptions:\fR This option is effective only on file systems for which Rock
+Ridge, ISO9660 version 2 or Joliet extensions are not active, either because
+they are not present on the CD-ROM, or they have been deliberately disabled via
+the \fBnrr\fR, \fBnovers2\fR and \fBnojoliet\fR option. If either extension is
+active, \fBhsfs\fR quietly ignores this option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnomaplcase\fR\fR
+.ad
+.sp .6
+.RS 4n
+File names on High Sierra/ISO9660 CD-ROMs with no extensions present should be
+uppercase characters only. By default, \fBhsfs\fR maps file names read from a
+\fBnon-Rock Ridge\fR disk to all lowercase characters. \fBnomaplcase\fR turns
+off this mapping. The exceptions for \fBnotraildot\fR discussed above apply to
+\fBnomaplcase\fR.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-O\fR\fR
+.ad
+.sp .6
+.RS 4n
+Overlay mount. Allow the file system to be mounted over an existing mount
+point, making the underlying file system inaccessible. If a mount is attempted
+on a preexisting mount point without setting this flag, the mount will fail,
+producing the error: \f(CWdevice busy\fR.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRMounting and Unmounting a DVD Image Directly
+.sp
+.LP
+The following commands mount and unmount a DVD image.
+
+.sp
+.in +2
+.nf
+# \fBmount -F hsfs /images/solaris.iso /mnt/solaris-image\fR
+# \fBumount /mnt/solaris-image\fR
+.fi
+.in -2
+.sp
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/mnttab\fR\fR
+.ad
+.sp .6
+.RS 4n
+table of mounted file systems
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/vfstab\fR\fR
+.ad
+.sp .6
+.RS 4n
+list of default parameters for each file system
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR mount (2),
+.BR mnttab (5),
+.BR vfstab (5),
+.BR attributes (7),
+.BR lofiadm (8),
+.BR mount (8),
+.BR mountall (8)
+.SH NOTES
+.sp
+.LP
+If the directory on which a file system is to be mounted is a symbolic link,
+the file system is mounted on the directory to which the symbolic link refers,
+rather than on top of the symbolic link itself.
diff --git a/usr/src/man/man8/mount_nfs.8 b/usr/src/man/man8/mount_nfs.8
new file mode 100644
index 0000000000..6afc97b15a
--- /dev/null
+++ b/usr/src/man/man8/mount_nfs.8
@@ -0,0 +1,838 @@
+.\"
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.\"
+.\"
+.\" Copyright 1989 AT&T
+.\" Copyright (c) 2009 Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 2017 Nexenta Systems, Inc.
+.\"
+.Dd March 12, 2016
+.Dt MOUNT_NFS 8
+.Os
+.Sh NAME
+.Nm mount_nfs
+.Nd mount remote NFS resources
+.Sh SYNOPSIS
+.Nm mount
+.Op Fl F Sy nfs
+.Op Ar generic_options
+.Op Fl o Ar specific_options
+.Ar resource
+.Nm mount
+.Op Fl F Sy nfs
+.Op Ar generic_options
+.Op Fl o Ar specific_options
+.Ar mount_point
+.Nm mount
+.Op Fl F Sy nfs
+.Op Ar generic_options
+.Op Fl o Ar specific_options
+.Ar resource mount_point
+.Sh DESCRIPTION
+The
+.Nm mount
+utility attaches a named
+.Ar resource
+to the file system hierarchy at the pathname location
+.Ar mount_point ,
+which must already exist.
+If
+.Ar mount_point
+has any contents prior to the
+.Nm mount
+operation, the contents remain hidden until the
+.Ar resource
+is once again unmounted.
+.Pp
+.Nm
+starts the
+.Xr lockd 8
+and
+.Xr statd 8
+daemons if they are not already running.
+.Pp
+If the resource is listed in the
+.Pa /etc/vfstab
+file, the command line can specify either
+.Ar resource
+or
+.Ar mount_point ,
+and
+.Nm mount
+consults
+.Pa /etc/vfstab
+for more information.
+If the
+.Fl F
+option is omitted,
+.Nm mount
+takes the file system type from
+.Pa /etc/vfstab .
+.Pp
+If the resource is not listed in the
+.Pa /etc/vfstab
+file, then the command line must specify both the
+.Ar resource
+and the
+.Ar mount_point .
+.Pp
+.Ar host
+can be an IPv4 or IPv6 address string.
+As IPv6 addresses already contain colons, enclose
+.Ar host
+in a pair of square brackets when specifying an IPv6 address string.
+Otherwise the first occurrence of a colon can be interpreted as the separator
+between the host name and path, for example,
+.Li [1080::8:800:200C:417A]:tmp/file .
+See
+.Xr inet 4P
+and
+.Xr inet6 4P .
+.Bl -tag -width Ds
+.It Ar host Ns \&: Ns Ar pathname
+Where
+.Ar host
+is the name of the NFS server host, and
+.Ar pathname
+is the path name of the directory on the server being mounted.
+The path name is interpreted according to the server's path name parsing rules
+and is not necessarily slash-separated, though on most servers, this is the
+case.
+.It No nfs:// Ns Ar host Ns Oo : Ns Ar port Oc Ns / Ns Ar pathname
+This is an NFS URL and follows the standard convention for NFS URLs as described
+in
+.Rs
+.%R NFS URL Scheme
+.%T RFC 2224
+.Re
+See the discussion of URLs and the public option under
+.Sx NFS FILE SYSTEMS
+for a more detailed discussion.
+.It Xo
+.Ar host Ns \&: Ns Ar pathname
+.No nfs:// Ns Ar host Ns Oo : Ns Ar port Oc Ns / Ns Ar pathname
+.Xc
+.Ar host Ns \&: Ns Ar pathname
+is a comma-separated list of
+.Ar host Ns \&: Ns Ar pathname .
+See the discussion of replicated file systems and failover under
+.Sx NFS FILE SYSTEMS
+for a more detailed discussion.
+.It Ar hostlist pathname
+.Ar hostlist
+is a comma-separated list of hosts.
+See the discussion of replicated file systems and failover under
+.Sx NFS FILE SYSTEMS
+for a more detailed discussion.
+.El
+.Pp
+The
+.Nm mount
+command maintains a table of mounted file systems in
+.Pa /etc/mnttab ,
+described in
+.Xr mnttab 5 .
+.Pp
+.Nm mount_nfs
+supports both NFSv3 and NFSv4 mounts.
+The default NFS version is NFSv4.
+.Ss Options
+See
+.Xr mount 8
+for the list of supported
+.Ar generic_options .
+See
+.Xr share_nfs 8
+for a description of server options.
+.Bl -tag -width Ds
+.It Fl o Ar specific_options
+Set file system specific options according to a comma-separated list with no
+intervening spaces.
+.El
+.Pp
+The following list describes
+.Ar specific_options :
+.Bl -tag -width Ds
+.It Sy acdirmax Ns = Ns Ar n
+Hold cached attributes for no more than
+.Ar n
+seconds after directory update.
+The default value is 60.
+.It Sy acdirmin Ns = Ns Ar n
+Hold cached attributes for at least
+.Ar n
+seconds after directory update.
+The default value is 30.
+.It Sy acregmax Ns = Ns Ar n
+Hold cached attributes for no more than
+.Ar n
+seconds after file modification.
+The default value is 60.
+.It Sy acregmin Ns = Ns Ar n
+Hold cached attributes for at least
+.Ar n
+seconds after file modification.
+The default value is 3.
+.It Sy actimeo Ns = Ns n
+Set
+.Sy min
+and
+.Sy max
+times for regular files and directories to
+.Ar n
+seconds.
+See
+.Sx File Attributes ,
+below, for a description of the effect of setting this option to 0.
+.Pp
+See
+.Sx Specifying Values for Attribute Cache Duration Options ,
+below, for a description of how
+.Sy acdirmax , acdirmin , acregmax , acregmin ,
+and
+.Sy actimeo
+are parsed on a
+.Nm mount
+command line.
+.It Sy bg Ns | Ns Sy fg
+If the first attempt fails, retry in the background, or, in the foreground.
+The default is
+.Sy fg .
+.It Sy forcedirectio Ns | Ns Sy noforcedirectio
+If
+.Sy forcedirectio
+is specified, then for the duration of the mount, forced direct I/O is used.
+If the filesystem is mounted using
+.Sy forcedirectio ,
+data is transferred directly between client and server, with no buffering on the
+client.
+If the filesystem is mounted using
+.Sy noforcedirectio ,
+data is buffered on the client.
+.Sy forcedirectio
+is a performance option that is of benefit only in large sequential data
+transfers.
+The default behavior is
+.Sy noforcedirectio .
+.It Sy grpid
+By default, the GID associated with a newly created file obeys the System V
+semantics; that is, the GID is set to the effective GID of the calling process.
+This behavior can be overridden on a per-directory basis by setting the set-GID
+bit of the parent directory; in this case, the GID of a newly created file is
+set to the GID of the parent directory
+.Po see
+.Xr open 2
+and
+.Xr mkdir 2
+.Pc .
+Files created on file systems that are mounted with the
+.Sy grpid
+option obeys BSD semantics independent of whether the set-GID bit of the parent
+directory is set; that is, the GID is unconditionally inherited from that of the
+parent directory.
+.It Sy hard Ns | Ns Sy soft
+Continue to retry requests until the server responds
+.Pq Sy hard
+or give up and return an error
+.Pq Sy soft .
+The default value is
+.Sy hard .
+Note that NFSv4 clients do not support soft mounts.
+.It Sy intr Ns | Ns Sy nointr
+Allow
+.Pq do not allow
+keyboard interrupts to kill a process that is hung while waiting for a response
+on a hard-mounted file system.
+The default is
+.Sy intr ,
+which makes it possible for clients to interrupt applications that can be
+waiting for a remote mount.
+.It Sy noac
+Suppress data and attribute caching.
+The data caching that is suppressed is the write-behind.
+The local page cache is still maintained, but data copied into it is immediately
+written to the server.
+.It Sy nocto
+Do not perform the normal close-to-open consistency.
+When a file is closed, all modified data associated with the file is flushed to
+the server and not held on the client.
+When a file is opened the client sends a request to the server to validate the
+client's local caches.
+This behavior ensures a file's consistency across multiple NFS clients.
+When
+.Sy nocto
+is in effect, the client does not perform the flush on close and the request for
+validation, allowing the possibility of differences among copies of the same
+file as stored on multiple clients.
+.Pp
+This option can be used where it can be guaranteed that accesses to a specified
+file system are made from only one client and only that client.
+Under such a condition, the effect of
+.Sy nocto
+can be a slight performance gain.
+.It Sy port Ns = Ns Ar n
+The server IP port number.
+The default is
+.Dv NFS_PORT .
+If the
+.Sy port
+option is specified, and if the resource includes one or more NFS URLs, and if
+any of the URLs include a port number, then the port number in the option and in
+the URL must be the same.
+.It Sy posix
+Request POSIX.1 semantics for the file system.
+Requires a mount Version 2
+.Xr mountd 8
+on the server.
+See
+.Xr standards 7
+for information regarding POSIX.
+.It Sy proto Ns = Ns Ar netid Ns | Ns Sy rdma
+By default, the transport protocol that the NFS mount uses is the first
+available RDMA transport supported both by the client and the server.
+If no RDMA transport is found, then it attempts to use a TCP transport or,
+failing that, a UDP transport, as ordered in the
+.Pa /etc/netconfig
+file.
+If it does not find a connection oriented transport, it uses the first available
+connectionless transport.
+Use this option to override the default behavior.
+.Pp
+.Sy proto
+is set to the value of
+.Ar netid
+or
+.Sy rdma .
+.Ar netid
+is the value of the
+.Sy network_id
+field entry in the
+.Pa /etc/netconfig
+file.
+.Pp
+The UDP protocol is not supported for NFS Version 4.
+If you specify a UDP protocol with the
+.Sy proto
+option, NFS version 4 is not used.
+.It Sy public
+The
+.Sy public
+option forces the use of the public file handle when connecting to the NFS
+server.
+The resource specified might not have an NFS URL.
+See the discussion of URLs and the public option under
+.Sx NFS FILE SYSTEMS
+for a more detailed discussion.
+.It Sy quota Ns | Ns Sy noquota
+Enable or prevent
+.Xr quota 8
+to check whether the user is over quota on this file system; if the file system
+has quotas enabled on the server, quotas are still checked for operations on
+this file system.
+.It Sy remount
+Remounts a read-only file system as read-write
+.Po using the
+.Sy rw
+option
+.Pc .
+This option cannot be used with other
+.Fl o
+options, and this option works only on currently mounted read-only file systems.
+.It Sy retrans Ns = Ns Ar n
+Set the number of NFS retransmissions to
+.Ar n .
+The default value is 5.
+For connection-oriented transports, this option has no effect because it is
+assumed that the transport performs retransmissions on behalf of NFS.
+.It Sy retry Ns = Ns Ar n
+The number of times to retry the
+.Nm mount
+operation.
+The default for the
+.Nm mount
+command is 10000.
+.Pp
+The default for the automounter is 0, in other words, do not retry.
+You might find it useful to increase this value on heavily loaded servers, where
+automounter traffic is dropped, causing unnecessary
+.Qq server not responding
+errors.
+.It Sy rsize Ns = Ns Ar n
+Set the read buffer size to a maximum of
+.Ar n
+bytes.
+The default value is 1048576 when using connection-oriented transports with
+Version 3 or Version 4 of the NFS protocol, and 32768 when using connection-less
+transports.
+The default can be negotiated down if the server prefers a smaller transfer
+size.
+.Qq Read
+operations may not necessarily use the maximum buffer size.
+When using Version 2, the default value is 32768 for all transports.
+.It Sy sec Ns = Ns Ar mode
+Set the security
+.Ar mode
+for NFS transactions.
+If
+.Sy sec Ns =
+is not specified, then the default action is to use AUTH_SYS over NFS Version 2
+mounts, use a user-configured default
+.Sy auth
+over NFS version 3 mounts, or to negotiate a mode over Version 4 mounts.
+.Pp
+The preferred mode for NFS Version 3 mounts is the default mode specified in
+.Pa /etc/nfssec.conf
+.Po see
+.Xr nfssec.conf 5
+.Pc
+on the client.
+If there is no default configured in this file or if the server does not export
+using the client's default mode, then the client picks the first mode that it
+supports in the array of modes returned by the server.
+These alternatives are limited to the security flavors listed in
+.Pa /etc/nfssec.conf .
+.Pp
+NFS Version 4 mounts negotiate a security mode when the server returns an array
+of security modes.
+The client attempts the mount with each security mode, in order, until one is
+successful.
+.Pp
+Only one mode can be specified with the
+.Sy sec Ns =
+option.
+See
+.Xr nfssec 7
+for the available
+.Ar mode
+options.
+.It Sy secure
+This option has been deprecated in favor of the
+.Sy sec Ns = Ns Sy dh
+option.
+.It Sy timeo Ns = Ns Ar n
+Set the NFS timeout to
+.Ar n
+tenths of a second.
+The default value is 11 tenths of a second for connectionless transports, and
+600 tenths of a second for connection-oriented transports.
+This value is ignored for connectionless transports.
+Such transports might implement their own timeouts, which are outside the
+control of NFS.
+.It Sy vers Ns = Ns Ar "NFS version number"
+By default, the version of NFS protocol used between the client and the server
+is the highest one available on both systems.
+If the NFS server does not support the client's default maximum, the next lowest
+version attempted until a matching version is found.
+See
+.Xr nfs 5
+for more information on setting default minimum and maximum client versions.
+.It Sy wsize Ns = Ns Ar n
+Set the write buffer size to a maximum of
+.Ar n
+bytes.
+The default value is 1048576 when using connection-oriented transports with
+Version 3 or Version 4 of the NFS protocol, and 32768 when using connection-less
+transports.
+The default can be negotiated down if the server prefers a smaller transfer
+size.
+.Qq Write
+operations may not necessarily use the maximum buffer size.
+When using Version 2, the default value is 32768 for all transports.
+.It Sy xattr Ns | Ns Sy noxattr
+Allow or disallow the creation and manipulation of extended attributes.
+The default is
+.Sy xattr .
+See
+.Xr fsattr 7
+for a description of extended attributes.
+.El
+.Sh NFS FILE SYSTEMS
+.Ss Background versus Foreground
+File systems mounted with the
+.Sy bg
+option indicate that
+.Nm mount
+is to retry in the background if the server's mount daemon
+.Pq Xr mountd 8
+does not respond.
+.Nm mount
+retries the request up to the count specified in the
+.Sy retry Ns = Ns Ar n
+option
+.Po note that the default value for
+.Sy retry
+differs between
+.Nm mount
+and
+.Nm automount ;
+see the description of
+.Sy retry ,
+above
+.Pc .
+Once the file system is mounted, each NFS request made in the kernel waits
+.Sy timeo Ns = Ns Ar n
+tenths of a second for a response.
+If no response arrives, the time-out is multiplied by 2 and the request is
+retransmitted.
+When the number of retransmissions has reached the number specified in the
+.Sy retrans Ns = Ns Ar n
+option, a file system mounted with the
+.Sy soft
+option returns an error on the request; one mounted with the
+.Sy hard
+option prints a warning message and continues to retry the request.
+.Ss Hard versus Soft
+File systems that are mounted read-write or that contain executable files should
+always be mounted with the
+.Sy hard
+option.
+Applications using
+.Sy soft
+mounted file systems can incur unexpected I/O errors, file corruption, and
+unexpected program core dumps.
+The
+.Sy soft
+option is not recommended.
+.Ss Authenticated requests
+The server can require authenticated NFS requests from the client.
+.Sy sec Ns = Ns Sy dh
+authentication might be required.
+See
+.Xr nfssec 7 .
+.Ss URLs and the public option
+If the
+.Sy public
+option is specified, or if the
+.Ar resource
+includes and NFS URL,
+.Nm mount
+attempts to connect to the server using the public file handle lookup protocol.
+See
+.Rs
+.%R WebNFS Client Specification
+.%T RFC 2054
+.Re
+If the server supports the public file handle, the attempt is successful;
+.Nm mount
+does not need to contact the server's
+.Xr rpcbind 8
+and the
+.Xr mountd 8
+daemons to get the port number of the
+.Nm mount
+server and the initial file handle of
+.Ar pathname ,
+respectively.
+If the NFS client and server are separated by a firewall that allows all
+outbound connections through specific ports, such as
+.Dv NFS_PORT ,
+then this enables NFS operations through the firewall.
+The public option and the NFS URL can be specified independently or together.
+They interact as specified in the following matrix:
+.Bd -literal
+ Resource Style
+
+ host:pathname NFS URL
+
+public option Force public file Force public file
+ handle and fail handle and fail
+ mount if not supported. mount if not supported.
+
+ Use Native paths. Use Canonical paths.
+
+default Use MOUNT protocol. Try public file handle
+ with Canonical paths.
+ Fall back to MOUNT
+ protocol if not
+ supported.
+.Ed
+.Pp
+A Native path is a path name that is interpreted according to conventions used
+on the native operating system of the NFS server.
+A Canonical path is a path name that is interpreted according to the URL rules.
+See
+.Rs
+.%R Uniform Resource Locators (URL)
+.%T RFC 1738
+.Re
+.Ss Replicated file systems and failover
+.Ar resource
+can list multiple read-only file systems to be used to provide data.
+These file systems should contain equivalent directory structures and identical
+files.
+It is also recommended that they be created by a utility such as
+.Xr rdist 1 .
+The file systems can be specified either with a comma-separated list of
+.Pa host:/pathname
+entries and/or NFS URL entries, or with a comma-separated list of hosts, if all
+file system names are the same.
+If multiple file systems are named and the first server in the list is down,
+failover uses the next alternate server to access files.
+If the read-only option is not chosen, replication is disabled.
+File access, for NFS Versions 2 and 3, is blocked on the original if NFS locks
+are active for that file.
+.Ss File Attributes
+To improve NFS read performance, files and file attributes are cached.
+File modification times get updated whenever a write occurs.
+However, file access times can be temporarily out-of-date until the cache gets
+refreshed.
+.Pp
+The attribute cache retains file attributes on the client.
+Attributes for a file are assigned a time to be flushed.
+If the file is modified before the flush time, then the flush time is extended
+by the time since the last modification
+.Po under the assumption that files that changed recently are likely to change
+soon
+.Pc .
+There is a minimum and maximum flush time extension for regular files and for
+directories.
+Setting
+.Sy actimeo Ns = Ns Ar n
+sets flush time to
+.Ar n
+seconds for both regular files and directories.
+.Pp
+Setting
+.Sy actimeo Ns = Ns Sy 0
+disables attribute caching on the client.
+This means that every reference to attributes is satisfied directly from the
+server though file data is still cached.
+While this guarantees that the client always has the latest file attributes from
+the server, it has an adverse effect on performance through additional latency,
+network load, and server load.
+.Pp
+Setting the
+.Sy noac
+option also disables attribute caching, but has the further effect of disabling
+client write caching.
+While this guarantees that data written by an application is written directly to
+a server, where it can be viewed immediately by other clients, it has a
+significant adverse effect on client write performance.
+Data written into memory-mapped file pages
+.Pq Xr mmap 2
+are not written directly to this server.
+.Ss Specifying Values for Attribute Cache Duration Options
+The attribute cache duration options are
+.Sy acdirmax , acdirmin , acregmax , acregmin ,
+and
+.Sy actimeo ,
+as described under
+.Sx Options.
+A value specified for
+.Sy actimeo
+sets the values of all attribute cache duration options except for any of these
+options specified following
+.Sy actimeo
+on a
+.Nm mount
+command line.
+For example, consider the following command:
+.Bd -literal -offset indent
+example# mount -o acdirmax=10,actimeo=1000 server:/path /localpath
+.Ed
+.Pp
+Because
+.Sy actimeo
+is the last duration option in the command line, its value
+.Pq 1000
+becomes the setting for all of the duration options, including
+.Sy acdirmax .
+Now consider:
+.Bd -literal -offset indent
+example# mount -o actimeo=1000,acdirmax=10 server:/path /localpath
+.Ed
+.Pp
+Because the
+.Sy acdirmax
+option follows
+.Sy actimeo
+on the command line, it is assigned the value specified
+.Pq 10 .
+The remaining duration options are set to the value of
+.Sy actimeo
+.Pq 1000 .
+.Sh FILES
+.Bl -tag -width Ds
+.It Pa /etc/mnttab
+table of mounted file systems
+.It Pa /etc/dfs/fstypes
+default distributed file system type
+.It Pa /etc/vfstab
+table of automatically mounted resources
+.El
+.Sh EXAMPLES
+.Bl -tag -width Ds
+.It Sy Example 1 No Mounting an NFS File System
+To mount an NFS file system:
+.Bd -literal
+example# mount serv:/usr/src /usr/src
+.Ed
+.It Xo
+.Sy Example 2
+Mounting An NFS File System Read-Only With No suid Privileges
+.Xc
+To mount an NFS file system read-only with no suid privileges:
+.Bd -literal
+example# mount -r -o nosuid serv:/usr/src /usr/src
+.Ed
+.It Xo
+.Sy Example 3
+Mounting An NFS File System Over Version 2, with the UDP Transport
+.Xc
+To mount an NFS file system over Version 2, with the UDP transport:
+.Bd -literal
+example# mount -o vers=2,proto=udp serv:/usr/src /usr/src
+.Ed
+.It Xo
+.Sy Example 4
+Mounting an NFS File System Using An NFS URL
+.Xc
+To mount an NFS file system using an NFS URL
+.Pq a canonical path :
+.Bd -literal
+example# mount nfs://serv/usr/man /usr/man
+.Ed
+.It Xo
+.Sy Example 5
+Mounting An NFS File System Forcing Use Of The Public File Handle
+.Xc
+To mount an NFS file system and force the use of the public file handle
+and an NFS URL
+.Pq a canonical path
+that has a non 7-bit ASCII escape sequence:
+.Bd -literal
+example# mount -o public nfs://serv/usr/%A0abc /mnt/test
+.Ed
+.It Xo
+.Sy Example 6
+Mounting an NFS File System Using a Native Path
+.Xc
+To mount an NFS file system using a native path
+.Po where the server uses colons
+.Pq Qq Sy \:
+as the component separator
+.Pc
+and the public file handle:
+.Bd -literal
+example# mount -o public serv:C:doc:new /usr/doc
+.Ed
+.It Xo
+.Sy Example 7
+Mounting a Replicated Set of NFS File Systems with the Same Pathnames
+.Xc
+To mount a replicated set of NFS file systems with the same pathnames:
+.Bd -literal
+example# mount serv-a,serv-b,serv-c:/usr/man /usr/man
+.Ed
+.It Xo
+.Sy Example 8
+Mounting a Replicated Set of NFS File Systems with Different Pathnames
+.Xc
+To mount a replicated set of NFS file systems with different pathnames:
+.Bd -literal
+example# mount serv-x:/usr/man,serv-y:/var/man,nfs://serv-z/man /usr/man
+.Ed
+.El
+.Sh SEE ALSO
+.Xr rdist 1 ,
+.Xr mkdir 2 ,
+.Xr mmap 2 ,
+.Xr mount 2 ,
+.Xr open 2 ,
+.Xr umount 2 ,
+.Xr lofs 4FS ,
+.Xr inet 4P ,
+.Xr inet6 4P ,
+.Xr mnttab 5 ,
+.Xr nfs 5 ,
+.Xr nfssec.conf 5 ,
+.Xr attributes 7 ,
+.Xr fsattr 7 ,
+.Xr nfssec 7 ,
+.Xr standards 7 ,
+.Xr lockd 8 ,
+.Xr mountall 8 ,
+.Xr mountd 8 ,
+.Xr nfsd 8 ,
+.Xr quota 8 ,
+.Xr statd 8
+.Rs
+.%A Callaghan
+.%A Brent
+.%R WebNFS Client Specification
+.%T RFC 2054
+.%D October 1996
+.Re
+.Rs
+.%A Callaghan
+.%A Brent
+.%R NFS URL Scheme
+.%T RFC 2224
+.%D October 1997
+.Re
+.Rs
+.%A Berners-Lee
+.%A Masinter
+.%A McCahill
+.%R Uniform Resource Locators (URL)
+.%T RFC 1738
+.%D December 1994
+.Re
+.Sh NOTES
+An NFS server should not attempt to mount its own file systems.
+See
+.Xr lofs 4FS .
+.Pp
+If the directory on which a file system is to be mounted is a symbolic link,
+the file system is mounted on the directory to which the symbolic link refers,
+rather than being mounted on top of the symbolic link itself.
+.Pp
+SunOS 4.x used the
+.Sy biod
+maintenance procedure to perform parallel read-ahead and write-behind on NFS
+clients.
+SunOS 5.x made
+.Sy biod
+obsolete with multi-threaded processing, which transparently performs parallel
+read-ahead and write-behind.
+.Pp
+Since the root
+.Pq Pa /
+file system is mounted read-only by the kernel during the boot process, only the
+.Sy remount
+option
+.Po and options that can be used in conjunction with
+.Sy remount
+.Pc
+affect the root
+.Pq Pa /
+entry in the
+.Pa /etc/vfstab
+file.
+.Pp
+The NFS client service is managed by the service management facility,
+.Xr smf 7 ,
+under the service identifier:
+.Bd -literal -offset indent
+svc:/network/nfs/client:default
+.Ed
+.Pp
+Administrative actions on this service, such as enabling, disabling, or
+requesting restart, can be performed using
+.Xr svcadm 8 .
+The service's status can be queried using the
+.Xr svcs 1
+command.
diff --git a/usr/src/man/man8/mount_pcfs.8 b/usr/src/man/man8/mount_pcfs.8
new file mode 100644
index 0000000000..da404c6b6c
--- /dev/null
+++ b/usr/src/man/man8/mount_pcfs.8
@@ -0,0 +1,203 @@
+'\" te
+.\" Based on mount_hsfs(8), which is Copyright 1989 AT&T Copyright (c) 2006 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH MOUNT_PCFS 8 "May 12, 2008"
+.SH NAME
+mount_pcfs \- mount pcfs file systems
+.SH SYNOPSIS
+.LP
+.nf
+\fBmount\fR \fB-F\fR pcfs [\fIgeneric_options\fR]
+ [\fB-o\fR \fIFSType-specific_options\fR] \fIspecial\fR | \fImount_point\fR
+.fi
+
+.LP
+.nf
+\fBmount\fR \fB-F\fR pcfs [\fIgeneric_options\fR]
+ [\fB-o\fR \fIFSType-specific_options\fR] \fIspecial\fR \fImount_point\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBmount\fR attaches an \fBMS-DOS\fR file system (\fBpcfs\fR) to the file
+system hierarchy at the \fImount_point\fR, which is the pathname of a
+directory. If \fImount_point\fR has any contents prior to the \fBmount\fR
+operation, these are hidden until the file system is unmounted.
+.sp
+.LP
+The \fBpcfs\fR file system supports direct mounting of files containing the
+file system as well as block devices. See \fBmount\fR(8) and
+\fBlofiadm\fR(8).
+.sp
+.LP
+If \fBmount\fR is invoked with \fIspecial\fR or \fImount_point\fR as the only
+arguments, \fBmount\fR will search \fB/etc/vfstab\fR to fill in the missing
+arguments, including the \fIFSType-specific_options\fR; see \fBmount\fR(8) for
+more details.
+.sp
+.LP
+The \fIspecial\fR argument can be one of two special device file types:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+A floppy disk, such as \fB/dev/diskette0\fR or \fB/dev/diskette1\fR.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+A DOS logical drive on a hard disk expressed as
+\fIdevice-name\fR\fB:\fR\fIlogical-drive\fR , where \fIdevice-name\fR specifies
+the special block device-file for the whole disk and \fIlogical-drive\fR is
+either a drive letter (c through z) or a drive number (1 through 24). Examples
+are \fB/dev/dsk/c0t0d0p0:\fR\fIc\fR and \fB/dev/dsk/c0t0d0p0:\fR\fI1\fR.
+.RE
+.sp
+.LP
+The \fIspecial\fR device file type must have a formatted \fBMS-DOS\fR file
+system with either a 12-bit, 16-bit, or 32-bit File Allocation Table.
+.SH OPTIONS
+.sp
+.ne 2
+.na
+\fB\fIgeneric_options\fR\fR
+.ad
+.sp .6
+.RS 4n
+See \fBmount\fR(8) for the list of supported options.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-o\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify \fBpcfs\fR file system-specific options. The following options are
+supported:
+.sp
+.ne 2
+.na
+\fB\fBclamptime\fR | \fBnoclamptime\fR\fR
+.ad
+.sp .6
+.RS 4n
+File timestamps in \fBpcfs\fR cover a range between January 1st 1980 and
+December 31st 2127. This is not equal to the range of \fBtime_t\fR on Unix for
+either 32-bit or 64-bit applications. In particular, 32-bit applications fail
+with \fBEOVERFLOW\fR errors on the \fBstat\fR(2) system call when timestamps
+beyond the range of 32-bit \fBtime_t\fR are encountered. In order to prevent
+such spurious failures, \fBpcfs\fR by default clamps timestamps to the common
+subset of possible \fBpcfs\fR timestamps and the range available to 32-bit
+applications in Unix. The \fBclamptime\fR mount option therefore is active by
+default. If you want access to the full range of possible timestamps on
+\fBpcfs\fR, mount the file system with the \fBnoclamptime\fR mount option. Note
+that if \fBnoclamptime\fR is used, only 64-bit applications will have access to
+timestamps beyond January 19th 2038, 03:14:06 UTC; 32-bit applications will
+encounter \fBEOVERFLOW\fR errors.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfoldcase\fR | \fBnofoldcase\fR\fR
+.ad
+.sp .6
+.RS 4n
+Force uppercase characters in filenames to lowercase when reading them from the
+filesystem. This is for compatibility with the previous behavior of \fBpcfs\fR.
+The default is \fBnofoldcase\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBhidden\fR | \fBnohidden\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow or disallow listing of files with hidden or system bits set. Option
+\fBhidden\fR is the default. When \fBnohidden\fR is effect, hidden and system
+files are neither visible nor accessible. Note that PCFS in previous releases
+of the Solaris operating system used the \fBnohidden\fR option as the default.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBatime\fR | \fBnoatime\fR\fR
+.ad
+.sp .6
+.RS 4n
+Enable or disable write access timestamps on DOS-formatted media. Default for
+fixed disks is \fBatime\fR, while for removable media \fBnoatime\fR is used.
+The latter default is so that writes to flash-based media ("memory sticks") can
+be minimized, to prolong lifetime.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBtimezone=\fItimezone\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Timestamps on DOS-formatted media are recorded in the local time of the
+recording system. This can cause confusion when accessing removable media in
+which the recording and receiving system use different time zones. Use this
+option to force media timestamps to be interpreted for a specific time zone.
+The \fBmount_pcfs\fR command converts the given time zone name into a numerical
+offset that is passed to the \fBpcfs\fR kernel module, using the same rules as
+described in \fBenviron\fR(7) for the \fBTZ\fR environment variable. By
+default, the \fBtimezone\fR value is taken from the \fBTZ\fR environment
+variable.
+.RE
+
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/mnttab\fR\fR
+.ad
+.sp .6
+.RS 4n
+table of mounted file systems
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/vfstab\fR\fR
+.ad
+.sp .6
+.RS 4n
+list of default parameters for each file system
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR mount (2),
+.BR stat (2),
+.BR time (2),
+.BR pcfs (4FS),
+.BR mnttab (5),
+.BR vfstab (5),
+.BR attributes (7),
+.BR environ (7),
+.BR lofiadm (8),
+.BR mount (8),
+.BR mountall (8)
+.SH NOTES
+.sp
+.LP
+If the directory on which a file system is to be mounted is a symbolic link,
+the file system is mounted on the directory to which the symbolic link refers,
+rather than on top of the symbolic link itself.
diff --git a/usr/src/man/man8/mount_smbfs.8 b/usr/src/man/man8/mount_smbfs.8
new file mode 100644
index 0000000000..71b69fd1b5
--- /dev/null
+++ b/usr/src/man/man8/mount_smbfs.8
@@ -0,0 +1,526 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved.
+.\" Portions Copyright 1994-2008 The FreeBSD Project. All rights reserved.
+.\" Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and
+.\" the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.THIS SOFTWARE IS PROVIDED
+.\" BY THE AUTHOR AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+.\" SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
+.\" OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+.\" Copyright 2012 Nexenta Systems, Inc. All rights reserved.
+.TH MOUNT_SMBFS 8 "November 22, 2021"
+.SH NAME
+mount_smbfs, umount_smbfs \- mount and unmount a shared resource from a CIFS
+file server
+.SH SYNOPSIS
+.nf
+\fB/sbin/mount\fR [\fB-F smbfs\fR] [\fIgeneric-options\fR] [\fB-o\fR \fIname\fR\fB=\fR\fIvalue\fR] [\fB-O\fR] \fIresource\fR
+.fi
+
+.LP
+.nf
+\fB/sbin/mount\fR [\fB-F smbfs\fR] [\fIgeneric-options\fR] [\fB-o\fR \fIname\fR\fB=\fR\fIvalue\fR] [\fB-O\fR] \fImount-point\fR
+.fi
+
+.LP
+.nf
+\fB/sbin/mount\fR [\fB-F smbfs\fR] [\fIgeneric-options\fR] [\fB-o\fR \fIname\fR\fB=\fR\fIvalue\fR]
+ [\fB-O\fR] \fIresource\fR \fImount-point\fR
+.fi
+
+.LP
+.nf
+\fB/sbin/umount\fR [\fB-F smbfs\fR] [\fIgeneric-options\fR] \fImount-point\fR
+.fi
+
+.SH DESCRIPTION
+The \fBmount\fR utility attaches a named resource, \fIresource\fR, to the file
+system hierarchy at the path name location, \fImount-point\fR, which must
+already exist.
+.sp
+.LP
+If \fImount-point\fR has any contents prior to the \fBmount\fR operation, those
+contents remain hidden until the resource is unmounted. An authorized user with
+the \fBSYS_MOUNT\fR privilege can perform a \fBmount\fR operation. Also, a user
+can perform SMBFS mount operations on a directory the user owns.
+.sp
+.LP
+If the resource is listed in the \fB/etc/vfstab\fR file, you can specify either
+\fIresource\fR or \fImount-point\fR as the \fBmount\fR command will consult the
+\fB/etc/vfstab\fR file for more information. If the \fB-F\fR option is omitted,
+\fBmount\fR takes the file system type from the entry in the \fB/etc/vfstab\fR
+file.
+.sp
+.LP
+If the resource is not listed in the \fB/etc/vfstab\fR file, the command line
+must specify both \fIresource\fR and \fImount-point\fR.
+.sp
+.LP
+The \fBumount\fR utility detaches a mounted file system from the file system
+hierarchy. An authorized user with the \fBSYS_MOUNT\fR privilege can perform a
+\fBumount\fR operation. Also, a user can perform SMBFS unmount operations on a
+directory the user owns.
+.sp
+.LP
+The \fBnetwork/smb/client\fR service must be enabled to successfully mount a
+CIFS share. This service is enabled, by default.
+.sp
+.LP
+To enable the service, enter the following \fBsvcadm\fR(8) command:
+.sp
+.in +2
+.nf
+# \fBsvcadm enable network/smb/client\fR
+.fi
+.in -2
+.sp
+
+.SS "Operands"
+The \fBmount\fR command supports the following operands:
+.sp
+.ne 2
+.na
+\fB\fIresource\fR
+//[\fIworkgroup\fR;][\fIuser\fR[:\fIpassword\fR]@]\fIserver\fR/\fIshare\fR\fR
+.ad
+.sp .6
+.RS 4n
+.sp
+.LP
+The name of the resource to be mounted. In addition to its name, you can
+specify the following information about the resource:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fIpassword\fR is the password associated with \fIuser\fR. If \fIpassword\fR is
+not specified, the mount first attempts to use the password stored by the
+\fBsmbutil login\fR command (if any). If that password fails to authenticate,
+the \fBmount_smbfs\fR prompts you for a password.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fIserver\fR is the DNS or NetBIOS name of the remote computer.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fIshare\fR is the resource name on the remote server.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fIuser\fR is the remote user name. If \fIuser\fR is omitted, the logged in
+user ID is used.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fIworkgroup\fR is the name of the workgroup or the Windows domain in which the
+user name is defined.
+.sp
+If the resource includes a workgroup, you must escape the semicolon that
+appears after the workgroup name to prevent it from being interpreted by the
+command shell. For instance, surround the entire resource name with double
+quotes: \fBmount -F smbfs "//SALES;george@RSERVER" /mnt\fR.
+.RE
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fImount-point\fR\fR
+.ad
+.sp .6
+.RS 4n
+The path to the location where the file system is to be mounted or unmounted.
+The \fBmount\fR command maintains a table of mounted file systems in the
+\fB/etc/mnttab\fR file. See the \fBmnttab\fR(5) man page.
+.RE
+
+.SH OPTIONS
+See the \fBmount\fR(8) man page for the list of supported
+\fIgeneric-options\fR.
+.sp
+.ne 2
+.na
+\fB\fB-o\fR \fIname\fR\fB=\fR\fIvalue\fR or\fR
+.ad
+.br
+.na
+\fB\fB-o\fR \fIname\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets the file system-specific properties. You can specify more than one
+name-value pair as a list of comma-separated pairs. No spaces are permitted in
+the list. The properties are as follows:
+
+.sp
+.ne 2
+.na
+\fB\fBacl\fR|\fBnoacl\fR\fR
+.ad
+.sp .6
+.RS 4n
+Enable (or disable) presentation of Access Control Lists (ACLs)
+on files and directories under this \fBsmbfs\fR(4FS) mount.
+The default behavior is \fBnoacl\fR, which presents files and
+directories as owned by the owner of the mount point and having
+permissions based on \fBfileperms\fR or \fBdirperms\fR.
+With the \fBacl\fR mount option, files are presented with ACLs
+obtained from the SMB server.
+Setting the \fBacl\fR mount option is not advised unless the system
+is joined to an Active Directory domain and using \fBldap\fR(1)
+so it can correctly present ACL identities from the SMB server.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdirperms=\fR\fIoctaltriplet\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the permissions to be assigned to directories. The value must be
+specified as an octal triplet, such as \fB755\fR. The default value for the
+directory mode is taken from the \fBfileperms\fR setting, with execute
+permission added where \fBfileperms\fR has read permission.
+.sp
+Note that these permissions have no relation to the rights granted by the CIFS
+server.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfileperms=\fR\fIoctaltriplet\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the permissions to be assigned to files. The value must be specified
+as an octal triplet, such as \fB644\fR. The default value is \fB700\fR.
+.sp
+Note that these permissions have no relation to the rights granted by the CIFS
+server.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBgid=\fR\fIgroupid\fR\fR
+.ad
+.sp .6
+.RS 4n
+Assigns the specified group ID to files. The default value is the group ID of
+the directory where the volume is mounted.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBintr\fR|\fBnointr\fR\fR
+.ad
+.sp .6
+.RS 4n
+Enable (or disable) cancellation of \fBsmbfs\fR(4FS) I/O operations when the
+user interrupts the calling thread (for example, by hitting Ctrl-C while an
+operation is underway). The default is \fBintr\fR (interruption enabled), so
+cancellation is normally allowed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnoprompt\fR\fR
+.ad
+.sp .6
+.RS 4n
+Suppresses the prompting for a password when mounting a share. This property
+enables you to permit anonymous access to a share. Anonymous access does not
+require a password.
+.sp
+The \fBmount\fR operation fails if a password is required, the \fBnoprompt\fR
+property is set, and no password is stored by the \fBsmbutil login\fR command.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBretry_count=\fR\fInumber\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the number of SMBFS retries to attempt before the connection is
+marked as broken. By default, 4 attempts are made.
+.sp
+The \fBretry_count\fR property value set by the \fBmount\fR command overrides
+the global value set in SMF or the value set in your \fB\&.nsmbrc\fR file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBtimeout=\fR\fIseconds\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the CIFS request timeout. By default, the timeout is 15 seconds.
+.sp
+The \fBtimeout\fR property value set by the \fBmount\fR command overrides the
+global value set in SMF or the value set in your \fB\&.nsmbrc\fR file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBuid=\fR\fIuserid\fR\fR
+.ad
+.sp .6
+.RS 4n
+Assigns the specified user ID files. The default value is the owner ID of the
+directory where the volume is mounted.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBxattr\fR|\fBnoxattr\fR\fR
+.ad
+.sp .6
+.RS 4n
+Enable (or disable) Solaris Extended Attributes in this mount point. This
+option defaults to \fBxattr\fR (enabled Extended Attributes), but note: if the
+CIFS server does not support CIFS "named streams", \fBsmbfs\fR(4FS) forces this
+option to \fBnoxattr\fR. When a mount has the \fBnoxattr\fR option, attempts to
+use Solaris Extended attributes fail with EINVAL.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-O\fR\fR
+.ad
+.sp .6
+.RS 4n
+Overlays mount. Allow the file system to be mounted over an existing mount
+point, making the underlying file system inaccessible. If a mount is attempted
+on a pre-existing mount point without setting this flag, the mount fails,
+producing the error "device busy."
+.RE
+
+.SH EXAMPLES
+\fBExample 1 \fRMounting an SMBFS Share
+.sp
+.LP
+The following example shows how to mount the \fB/tmp\fR share from the
+\fBnano\fR server in the \fBSALES\fR workgroup on the local \fB/mnt\fR mount
+point. You must supply the password for the \fBroot\fR user to successfully
+perform the mount operation.
+
+.sp
+.in +2
+.nf
+# \fBmount -F smbfs "//SALES;root@nano.example.org/tmp" /mnt\fR
+Password:
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRVerifying That an SMBFS File System Is Mounted
+.sp
+.LP
+The following example shows how to mount the \fB/tmp\fR share from the
+\fBnano\fR server on the local \fB/mnt\fR mount point. You must supply the
+password for the \fBroot\fR user to successfully perform the mount operation.
+
+.sp
+.in +2
+.nf
+# \fBmount -F smbfs //root@nano.example.org/tmp /mnt\fR
+Password:
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+You can verify that the share is mounted in the following ways:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+View the file system entry in the \fB/etc/mnttab\fR file.
+.sp
+.in +2
+.nf
+# \fBgrep root /etc/mnttab\fR
+//root@nano.example.org/tmp /mnt smbfs dev=4900000 1177097833
+.fi
+.in -2
+.sp
+
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+View the output of the \fBmount\fR command.
+.sp
+.in +2
+.nf
+# \fBmount | grep root\fR
+/mnt on //root@nano.example.org/tmp read/write/setuid/devices/dev=4900000 on
+Fri Apr 20 13:37:13 2007
+.fi
+.in -2
+.sp
+
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+View the output of the \fBdf /mnt\fR command.
+.sp
+.in +2
+.nf
+# \fBdf /mnt\fR
+/mnt (//root@nano.example.org/tmp): 3635872 blocks -1 files
+.fi
+.in -2
+.sp
+
+.RE
+.sp
+.LP
+Obtain information about the mounted share by viewing the output of the \fBdf
+-k /mnt\fR command.
+
+.sp
+.in +2
+.nf
+# \fBdf -k /mnt\fR
+Filesystem kbytes used avail capacity Mounted on
+//root@nano.example.org/tmp
+ 1882384 64448 1817936 4% /mnt
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRUnmounting a CIFS Share
+.sp
+.LP
+This example assumes that a CIFS share has been mounted on the \fB/mnt\fR mount
+point. The following command line unmounts the share from the mount point.
+
+.sp
+.in +2
+.nf
+# \fBumount /mnt\fR
+.fi
+.in -2
+.sp
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/etc/mnttab\fR\fR
+.ad
+.sp .6
+.RS 4n
+Table of mounted file systems.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/dfs/fstypes\fR\fR
+.ad
+.sp .6
+.RS 4n
+Default distributed file system type.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/vfstab\fR\fR
+.ad
+.sp .6
+.RS 4n
+Table of automatically mounted resources.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB$HOME/.nsmbrc\fR\fR
+.ad
+.sp .6
+.RS 4n
+User-settable mount point configuration file to store the description for each
+connection.
+.RE
+
+.SH ATTRIBUTES
+See the \fBattributes\fR(7) man page for descriptions of the following
+attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Committed
+.TE
+
+.SH SEE ALSO
+.BR ldap (1),
+.BR smbutil (1),
+.BR acl (2),
+.BR fcntl (2),
+.BR link (2),
+.BR mknod (2),
+.BR mount (2),
+.BR symlink (2),
+.BR umount (2),
+.BR pcfs (4FS),
+.BR smbfs (4FS),
+.BR mnttab (5),
+.BR nsmbrc (5),
+.BR vfstab (5),
+.BR attributes (7),
+.BR mount (8),
+.BR mountall (8),
+.BR svcadm (8)
+.SH AUTHORS
+This manual page contains material originally authored by Boris Popov,
+\fBbpATbutya.kz\fR, \fBbpATFreeBSD.org\fR.
+.SH NOTES
+The Solaris CIFS client always attempts to use \fBgethostbyname()\fR to resolve
+host names. If the host name cannot be resolved, the CIFS client uses NetBIOS
+name resolution (NBNS). By default, the Solaris CIFS client permits the use of
+NBNS to enable Solaris CIFS clients in Windows environments to work without
+additional configuration.
+.sp
+.LP
+Since NBNS has been exploited in the past, you might want to disable it. To
+disable NBNS, set the \fBnbns-enabled\fR service management facility property
+to \fBfalse\fR. By default, \fBnbns-enabled\fR is set to \fBtrue\fR.
+.sp
+.LP
+If the directory on which a file system is to be mounted is a symbolic link,
+the file system is mounted on the directory to which the symbolic link refers,
+rather than being mounted on top of the symbolic link itself.
diff --git a/usr/src/man/man8/mount_tmpfs.8 b/usr/src/man/man8/mount_tmpfs.8
new file mode 100644
index 0000000000..1802725cb2
--- /dev/null
+++ b/usr/src/man/man8/mount_tmpfs.8
@@ -0,0 +1,135 @@
+'\" te
+.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 2015 Joyent, Inc.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH MOUNT_TMPFS 8 "Mar 18, 2015"
+.SH NAME
+mount_tmpfs \- mount tmpfs file systems
+.SH SYNOPSIS
+.LP
+.nf
+\fBmount\fR [\fB-F\fR tmpfs] [\fB-o\fR \fIspecific_options\fR] [\fB-O\fR] \fIspecial\fR \fImount_point\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+\fBtmpfs\fR is a memory based file system which uses kernel resources relating
+to the \fBVM\fR system and page cache as a file system.
+.sp
+.LP
+\fBmount\fR attaches a \fBtmpfs\fR file system to the file system hierarchy at
+the pathname location \fImount_point\fR, which must already exist. If
+\fImount_point\fR has any contents prior to the \fBmount\fR operation, these
+remain hidden until the file system is once again unmounted. The attributes
+(mode, owner, and group) of the root of the \fBtmpfs\fR filesystem are
+inherited from the underlying \fImount_point\fR, provided that those attributes
+are determinable. If not, the root's attributes are set to their default
+values. The mode may also be overridden by the \fBmode\fR mount option, which
+takes precedence if set.
+.sp
+.LP
+The \fIspecial\fR argument is usually specified as \fBswap\fR but is in fact
+disregarded and assumed to be the virtual memory resources within the system.
+.SH OPTIONS
+.ne 2
+.na
+\fB\fB-o\fR \fIspecific_options\fR\fR
+.ad
+.RS 23n
+Specify \fBtmpfs\fR file system specific options in a comma-separated list with
+no intervening spaces. If invalid options are specified, a warning message is
+printed and the invalid options are ignored. The following options are
+available:
+.sp
+.ne 2
+.na
+\fB\fBremount\fR\fR
+.ad
+.sp .6
+.RS 19n
+Remounts a file system with a new size. A size not explicitly
+set with \fBremount\fR reverts to no limit.
+.RE
+
+.sp
+.ne 2
+.na
+\fBmode=\fIoctalmode\fR\fR
+.ad
+.RS 19n
+The \fImode\fR argument controls the permissions of the \fBtmpfs\fR mount
+point. The argument must be an octal number, of the form passed to
+\fBchmod\fR(1). Only the access mode, setuid, setgid, and sticky bits (a mask
+of \fB07777\fR) may be set. If this option is not provided then the default
+mode behaviour, as described above, applies.
+.RE
+
+.sp
+.sp
+.ne 2
+.na
+\fBsize=\fIsz\fR\fR
+.ad
+.RS 19n
+The \fIsz\fR argument controls the size of this particular \fBtmpfs\fR file
+system. If the argument is has a `k' suffix, the number will be interpreted as
+a number of kilobytes. An `m' suffix will be interpreted as a number of
+megabytes. A `g' suffix will be interpreted as a number of gigabytes. A `%'
+suffix will be interpreted as a percentage of the swap space available to the
+zone. No suffix is interpreted as bytes. In all cases, the actual size of
+the file system is the number of bytes specified, rounded up to the physical
+pagesize of the system.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBxattr\fR | \fBnoxattr\fR\fR
+.ad
+.RS 19n
+Allow or disallow the creation and manipulation of extended attributes. The
+default is \fBxattr\fR. See \fBfsattr\fR(7) for a description of extended
+attributes.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-O\fR\fR
+.ad
+.RS 23n
+Overlay mount. Allow the file system to be mounted over an existing mount
+point, making the underlying file system inaccessible. If a mount is attempted
+on a pre-existing mount point without setting this flag, the mount will fail,
+producing the error: \f(CWdevice busy\fR.
+.RE
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/etc/mnttab\fR\fR
+.ad
+.RS 15n
+Table of mounted file systems
+.RE
+
+.SH SEE ALSO
+.LP
+.BR mkdir (2),
+.BR mount (2),
+.BR open (2),
+.BR umount (2),
+.BR tmpfs (4FS),
+.BR mnttab (5),
+.BR attributes (7),
+.BR fsattr (7),
+.BR mount (8)
+.SH NOTES
+.LP
+If the directory on which a file system is to be mounted is a symbolic link,
+the file system is mounted on the directory to which the symbolic link refers,
+rather than on top of the symbolic link itself.
diff --git a/usr/src/man/man8/mount_udfs.8 b/usr/src/man/man8/mount_udfs.8
new file mode 100644
index 0000000000..342c6aaed1
--- /dev/null
+++ b/usr/src/man/man8/mount_udfs.8
@@ -0,0 +1,225 @@
+'\" te
+.\" Copyright (c) 2008 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH MOUNT_UDFS 8 "May 12, 2008"
+.SH NAME
+mount_udfs \- mount a udfs file system
+.SH SYNOPSIS
+.LP
+.nf
+\fBmount\fR \fB-F\fR udfs [\fIgeneric_options\fR] [\fB-o\fR \fIspecific_options\fR]
+ [\fB-O\fR] \fIspecial\fR \fImount_point\fR
+.fi
+
+.LP
+.nf
+\fBmount\fR \fB-F\fR udfs [\fIgeneric_options\fR] [\fB-o\fR \fIspecific_options\fR]
+ [\fB-O\fR] \fIspecial\fR | \fImount_point\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBmount\fR utility attaches a \fBudfs\fR file system to the file system
+hierarchy at the \fImount_point\fR, which is the pathname of a directory. If
+\fImount_point\fR has any contents prior to the mount operation, these are
+hidden until the file system is unmounted.
+.sp
+.LP
+If mount is invoked with either \fIspecial\fR or \fImount_point\fR as the only
+arguments, \fBmount\fR searches \fB/etc/vfstab\fR to fill in the missing
+arguments, including the \fIspecific_options\fR. See \fBmount\fR(8).
+.sp
+.LP
+The \fBudfs\fR file system supports direct mounting of files containing the
+file system as well as block devices. See \fBmount\fR(8) and
+\fBlofiadm\fR(8).
+.sp
+.LP
+If \fIspecial\fR and \fImount_point\fR are specified without any
+\fIspecific_options\fR, the default is \fBrw\fR.
+.sp
+.LP
+If the directory on which a file system is to be mounted is a symbolic link,
+the file system is mounted on the directory to which the symbolic link refers,
+rather than on top of the symbolic link itself.
+.SH OPTIONS
+.sp
+.LP
+See \fBmount\fR(8) for the list of supported \fIgeneric_options\fR.
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-o\fR \fIspecific_options\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify \fBudfs\fR file system specific options in a comma-separated list with
+no intervening spaces. The following \fIspecific_options\fR are available:
+.sp
+.ne 2
+.na
+\fBm\fR
+.ad
+.sp .6
+.RS 4n
+Mount the file system without making an entry in \fB/etc/mnttab\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBremount\fR
+.ad
+.sp .6
+.RS 4n
+Remount the file system as read-write. The option is used in conjunction with
+the \fBrw\fR option.
+.sp
+A file system mounted read-only can be remounted as read-write. This option
+fails if the file system is not currently mounted.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-O\fR\fR
+.ad
+.sp .6
+.RS 4n
+Overlay mount. Allow the file system to be mounted over an existing mount
+point, making the underlying file system inaccessible. If a mount is attempted
+on a pre-existing mount point without setting this flag, the mount fails,
+producing the error: \f(CWdevice busy\fR.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/mnttab\fR\fR
+.ad
+.sp .6
+.RS 4n
+Table of mounted file systems
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/vfstab\fR\fR
+.ad
+.sp .6
+.RS 4n
+List of default parameters for each file system
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR mount (2),
+.BR mnttab (5),
+.BR vfstab (5),
+.BR attributes (7),
+.BR fsck (8),
+.BR fsck_udfs (8),
+.BR lofiadm (8),
+.BR mount (8),
+.BR mountall (8)
+.SH DIAGNOSTICS
+.sp
+.ne 2
+.na
+\fBnot super user\fR
+.ad
+.sp .6
+.RS 4n
+The command is run by a non-root user. Run as root.
+.RE
+
+.sp
+.ne 2
+.na
+\fBno such device\fR
+.ad
+.sp .6
+.RS 4n
+The device name specified does not exist.
+.RE
+
+.sp
+.ne 2
+.na
+\fBnot a directory\fR
+.ad
+.sp .6
+.RS 4n
+The specified mount point is not a directory.
+.RE
+
+.sp
+.ne 2
+.na
+\fBis not an udfs file system\fR
+.ad
+.sp .6
+.RS 4n
+The device specified does not contain a udf 1.50 file system or the udfs file
+system module is not available.
+.RE
+
+.sp
+.ne 2
+.na
+\fBis already mounted\fR
+.ad
+.sp .6
+.RS 4n
+The specified device is already in use.
+.RE
+
+.sp
+.ne 2
+.na
+\fBnot a block device\fR
+.ad
+.sp .6
+.RS 4n
+The device specified is not a block device. Use block device to mount.
+.RE
+
+.sp
+.ne 2
+.na
+\fBwrite-protected\fR
+.ad
+.sp .6
+.RS 4n
+The device is read-only.
+.RE
+
+.sp
+.ne 2
+.na
+\fBis corrupted. needs checking\fR
+.ad
+.sp .6
+.RS 4n
+The file system is in an inconsistent state. Run \fBfsck\fR.
+.RE
+
+.SH NOTES
+.sp
+.LP
+Copy-protected files can be stored on \fBDVD-ROM\fR media using Universal Disk
+Format (\fBUDF\fR). Reading these copy-protected files is not possible as this
+involves an authentication process. Unless an authentication process between
+the host and the drive is completed, reading these copy-protected files after
+mounting and before the authentication process, returns an error.
diff --git a/usr/src/man/man8/mount_ufs.8 b/usr/src/man/man8/mount_ufs.8
new file mode 100644
index 0000000000..b991888d2d
--- /dev/null
+++ b/usr/src/man/man8/mount_ufs.8
@@ -0,0 +1,385 @@
+'\" te
+.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
+.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH MOUNT_UFS 8 "Jun 22, 2009"
+.SH NAME
+mount_ufs \- mount ufs file systems
+.SH SYNOPSIS
+.LP
+.nf
+\fBmount\fR \fB-F\fR ufs [\fIgeneric_options\fR] [\fB-o\fR \fIspecific_options\fR]
+ [\fB-O\fR] \fIspecial\fR | \fImount_point\fR
+.fi
+
+.LP
+.nf
+\fBmount\fR \fB-F\fR ufs [\fIgeneric_options\fR] [\fB-o\fR \fIspecific_options\fR]
+ [\fB-O\fR] \fIspecial\fR \fImount_point\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBmount\fR utility attaches a \fBufs\fR file system to the file system
+hierarchy at the \fImount_point\fR, which is the pathname of a directory. If
+\fImount_point\fR has any contents prior to the \fBmount\fR operation, these
+are hidden until the file system is unmounted.
+.sp
+.LP
+The \fBufs\fR file system supports direct mounting of files containing the file
+system as well as block devices. See \fBmount\fR(8) and \fBlofiadm\fR(8).
+.sp
+.LP
+If \fBmount\fR is invoked with \fIspecial\fR or \fImount_point\fR as the only
+arguments, \fBmount\fR will search \fB/etc/vfstab\fR to fill in the missing
+arguments, including the \fIspecific_options\fR. See \fBmount\fR(8).
+.sp
+.LP
+If \fIspecial\fR and \fImount_point\fR are specified without any
+\fIspecific_options\fR, the default is \fBrw\fR.
+.sp
+.LP
+If the directory on which a file system is to be mounted is a symbolic link,
+the file system is mounted on the directory to which the symbolic link refers,
+rather than on top of the symbolic link itself.
+.SH OPTIONS
+.sp
+.LP
+See \fBmount\fR(8) for the list of supported \fIgeneric_options\fR.
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-o\fR \fIspecific_options\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify \fBufs\fR file system specific options in a comma-separated list with
+no intervening spaces. If invalid options are specified, a warning message is
+printed and the invalid options are ignored. The following options are
+available:
+.sp
+.ne 2
+.na
+\fB\fBdfratime\fR | \fBnodfratime\fR\fR
+.ad
+.sp .6
+.RS 4n
+By default, writing access time updates to the disk may be deferred
+(\fBdfratime\fR) for the file system until the disk is accessed for a reason
+other than updating access times. \fBnodfratime\fR disables this behavior.
+.sp
+If power management is enabled on the system, do not set \fBnodfratime\fR
+unless \fBnoatime\fR is also set. If you set \fBnodfratime\fR without setting
+\fBnoatime\fR, the disk is spun up every time a file within a file system on
+the disk is accessed - even if the file is not modified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBforcedirectio\fR | \fBnoforcedirectio\fR\fR
+.ad
+.sp .6
+.RS 4n
+If \fBforcedirectio\fR is specified and supported by the file system, then for
+the duration of the mount, forced direct \fBI/O\fR will be used. If the
+filesystem is mounted using \fBforcedirectio\fR, data is transferred directly
+between user address space and the disk. If the filesystem is mounted using
+\fBnoforcedirectio\fR, data is buffered in kernel address space when data is
+transferred between user address space and the disk. \fBforcedirectio\fR is a
+performance option that is of benefit only in large sequential data transfers.
+The default behavior is \fBnoforcedirectio\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBglobal\fR | \fBnoglobal\fR\fR
+.ad
+.sp .6
+.RS 4n
+If \fBglobal\fR is specified and supported on the file system, and the system
+in question is part of a cluster, the file system will be globally visible on
+all nodes of the cluster. If \fBnoglobal\fR is specified, the mount will not be
+globally visible. The default behavior is \fBnoglobal\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBintr\fR | \fBnointr\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow (do not allow) keyboard interrupts to kill a process that is waiting for
+an operation on a locked file system. The default is \fBintr\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBlargefiles\fR | \fBnolargefiles\fR\fR
+.ad
+.sp .6
+.RS 4n
+If \fBnolargefiles\fR is specified and supported by the file system, then for
+the duration of the mount it is guaranteed that all regular files in the file
+system have a size that will fit in the smallest object of type \fBoff_t\fR
+supported by the system performing the mount. The mount will fail if there are
+any files in the file system not meeting this criterion. If \fBlargefiles\fR is
+specified, there is no such guarantee. The default behavior is
+\fBlargefiles\fR.
+.sp
+If \fBnolargefiles\fR is specified, \fBmount\fR will fail for \fBufs\fR if the
+file system to be mounted has contained a large file (a file whose size is
+greater than or equal to 2 Gbyte) since the last invocation of \fBfsck\fR on
+the file system. The large file need not be present in the file system at the
+time of the mount for the mount to fail; it could have been created previously
+and destroyed. Invoking \fBfsck\fR (see \fBfsck_ufs\fR(8)) on the file system
+will reset the file system state if no large files are present. After invoking
+\fBfsck\fR, a successful mount of the file system with \fBnolargefiles\fR
+specified indicates the absence of large files in the file system; an
+unsuccessful mount attempt indicates the presence of at least one large file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBlogging\fR | \fBnologging\fR\fR
+.ad
+.sp .6
+.RS 4n
+If \fBlogging\fR is specified, then logging is enabled for the duration of the
+mounted file system. Logging is the process of storing transactions (changes
+that make up a complete \fBUFS\fR operation) in a log before the transactions
+are applied to the file system. Once a transaction is stored, the transaction
+can be applied to the file system later. This prevents file systems from
+becoming inconsistent, therefore reducing the possibility that \fBfsck\fR
+might run. And, if \fBfsck\fR is bypassed, logging generally reduces the time
+required to reboot a system.
+.sp
+The default behavior is \fBlogging\fR for all UFS file systems.
+.sp
+The log is allocated from free blocks in the file system, and is sized
+approximately 1 Mbyte per 1 Gbyte of file system, up to a maximum of 256
+Mbytes. The log size may be larger (up to a maximum of 512 Mbytes) dependent
+upon the number of cylinder groups present in the file system.
+.sp
+Logging is enabled on any \fBUFS\fR file system, including root (\fB/\fR),
+except under the following conditions:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+When logging is specifically disabled.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+If there is insufficient file system space for the log. In this case, the
+following message is displayed and file system is still mounted:
+.sp
+.in +2
+.nf
+# mount /dev/dsk/c0t4d0s0 /mnt
+ /mnt: No space left on device
+ Could not enable logging for /mnt on /dev/dsk/c0t4d0s0.
+.fi
+.in -2
+.sp
+
+.RE
+The log created by \fBUFS\fR logging is continually flushed as it fills up. The
+log is totally flushed when the file system is unmounted or as a result of the
+\fBlockfs -f\fR command.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBm\fR\fR
+.ad
+.sp .6
+.RS 4n
+Mount the file system without making an entry in \fB/etc/mnttab\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnoatime\fR\fR
+.ad
+.sp .6
+.RS 4n
+By default, the file system is mounted with normal access time (\fBatime\fR)
+recording. If \fBnoatime\fR is specified, the file system will ignore access
+time updates on files, except when they coincide with updates to the
+\fBctime\fR or \fBmtime\fR. See \fBstat\fR(2). This option reduces disk
+activity on file systems where access times are unimportant (for example, a
+Usenet news spool).
+.sp
+\fBnoatime\fR turns off access time recording regardless of \fBdfratime\fR or
+\fBnodfratime\fR.
+.sp
+The POSIX standard requires that access times be marked on files.
+\fB-noatime\fR ignores them unless the file is also modified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnosec\fR\fR
+.ad
+.sp .6
+.RS 4n
+By default, Access Control Lists (ACLs) are supported on a mounted UFS file
+system. Use this option to disallow the setting or any modification of an ACL
+on a file within a mounted UFS file system. See \fBgetfacl\fR(1) for background
+on ACLs.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBonerror\fR = \fIaction\fR\fR
+.ad
+.sp .6
+.RS 4n
+This option specifies the action that \fBUFS\fR should take to recover from an
+internal inconsistency on a file system. Specify \fIaction\fR as \fBpanic\fR,
+\fBlock\fR, or \fBumount\fR. These values cause a forced system shutdown, a
+file system lock to be applied to the file system, or the file system to be
+forcibly unmounted, respectively. The default is \fBpanic\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBquota\fR\fR
+.ad
+.sp .6
+.RS 4n
+Quotas are turned on for the file system.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBremount\fR\fR
+.ad
+.sp .6
+.RS 4n
+Remounts a file system with a new set of options. All options not explicitly
+set with \fBremount\fR revert to their default values.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrq\fR\fR
+.ad
+.sp .6
+.RS 4n
+Read-write with quotas turned on. Equivalent to \fBrw, quota\fR.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBxattr\fR | \fBnoxattr\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow or disallow the creation and manipulation of extended attributes. The
+default is \fBxattr\fR. See \fBfsattr\fR(7) for a description of extended
+attributes.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-O\fR\fR
+.ad
+.sp .6
+.RS 4n
+Overlay mount. Allow the file system to be mounted over an existing mount
+point, making the underlying file system inaccessible. If a mount is attempted
+on a pre-existing mount point without setting this flag, the mount will fail,
+producing the error "device busy".
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRTurning Off (and On) Logging
+.sp
+.LP
+The following command turns off logging on an already mounted file system. The
+subsequent command restores logging.
+
+.sp
+.in +2
+.nf
+# mount -F ufs -o remount,nologging /export
+# \fB(absence of message indicates success)\fR
+# mount -F ufs -o remount,logging /export
+.fi
+.in -2
+
+.sp
+.LP
+In the preceding commands, the \fB-F\fR \fBufs\fR option is not necessary.
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/mnttab\fR\fR
+.ad
+.sp .6
+.RS 4n
+table of mounted file systems
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/vfstab\fR\fR
+.ad
+.sp .6
+.RS 4n
+list of default parameters for each file system
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR getfacl (1),
+.BR fcntl (2),
+.BR mount (2),
+.BR stat (2),
+.BR mnttab (5),
+.BR vfstab (5),
+.BR attributes (7),
+.BR fsattr (7),
+.BR largefile (7),
+.BR fsck (8),
+.BR fsck_ufs (8),
+.BR lofiadm (8),
+.BR mount (8),
+.BR mountall (8)
+.SH NOTES
+.sp
+.LP
+Since the root (\fB/\fR) file system is mounted read-only by the kernel during
+the boot process, only the \fBremount\fR option (and options that can be used
+in conjunction with \fBremount\fR) affect the root (\fB/\fR) entry in the
+\fB/etc/vfstab\fR file.
diff --git a/usr/src/man/man8/mountall.8 b/usr/src/man/man8/mountall.8
new file mode 100644
index 0000000000..9b8efc1e46
--- /dev/null
+++ b/usr/src/man/man8/mountall.8
@@ -0,0 +1,213 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH MOUNTALL 8 "Dec 17, 2008"
+.SH NAME
+mountall, umountall \- mount, unmount multiple file systems
+.SH SYNOPSIS
+.LP
+.nf
+\fBmountall\fR [\fB-F\fR \fIFSType\fR] [\fB-l\fR | \fB-r\fR] [\fIfile_system_table\fR]
+.fi
+
+.LP
+.nf
+\fBumountall\fR [\fB-k\fR] [\fB-s\fR] [\fB-F\fR \fIFSType\fR] [\fB-l\fR | \fB-r\fR] [\fB-n\fR] [\fB-Z\fR]
+.fi
+
+.LP
+.nf
+\fBumountall\fR [\fB-k\fR] [\fB-s\fR] [\fB-h\fR \fIhost\fR] [\fB-n\fR] [\fB-Z\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBmountall\fR is used to mount file systems specified in a file system table.
+The file system table must be in \fBvfstab\fR(5) format. If no
+\fIfile_system_table\fR is specified, \fB/etc/vfstab\fR is used. If \(mi is
+specified as \fIfile_system_table\fR, \fBmountall\fR reads the file system
+table from the standard input. \fBmountall\fR mounts only those file systems
+with the \fBmount at boot\fR field set to \fByes\fR in the
+\fIfile_system_table\fR.
+.sp
+.LP
+For each file system in the file system table, the following logic is executed:
+if there exists a file \fB/usr/lib/fs/\fR\fIFSType\fR\fB/fsckall\fR, where
+\fIFSType\fR is the type of the file system, save that file system in a list to
+be passed later, and all at once, as arguments to the
+\fB/usr/lib/fs/\fR\fIFSType\fR\fB/fsckall\fR script. The
+\fB/usr/lib/fs/\fR\fIFSType\fR\fB/fsckall\fR script checks all of the file
+systems in its argument list to determine whether they can be safely mounted.
+If no \fB/usr/lib/fs/\fR\fIFSType\fR\fB/fsckall\fR script exists for the
+\fIFSType\fR of the file system, the file system is individually checked using
+\fBfsck\fR(8). If the file system does not appear mountable, it is fixed using
+\fBfsck\fR before the mount is attempted. File systems with a \(mi entry in the
+\fBfsckdev\fR field are mounted without first being checked.
+.sp
+.LP
+\fBumountall\fR causes all mounted file systems in the current zone except
+\fBroot\fR, \fB/usr\fR, \fB/var\fR, \fB/var/adm\fR, \fB/var/run\fR,
+\fB/proc\fR, and \fB/dev/fd\fR to be unmounted. If the \fIFSType\fR is
+specified, \fBmountall\fR and \fBumountall\fR limit their actions to the
+\fIFSType\fR specified. There is no guarantee that \fBumountall\fR unmounts
+\fIbusy\fR file systems, even if the \fB-k\fR option is specified.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-F\fR\fR
+.ad
+.RS 11n
+Specify the \fIFSType\fR of the file system to be mounted or unmounted.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-h\fR \fIhost\fR\fR
+.ad
+.RS 11n
+Unmount all file systems listed in \fB/etc/mnttab\fR that are remote-mounted
+from host.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-k\fR\fR
+.ad
+.RS 11n
+Use the \fBfuser\fR \fB-k\fR \fImount-point\fR command. See the \fBfuser\fR(8)
+for details. The \fB-k\fR option sends the \fBSIGKILL\fR signal to each process
+using the file. As this option spawns kills for each process, the kill messages
+might not show up immediately. There is no guarantee that \fBumountall\fR
+unmounts \fIbusy\fR file systems, even if the \fB-k\fR option is specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR\fR
+.ad
+.RS 11n
+Limit the action to local file systems.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR\fR
+.ad
+.RS 11n
+List the actions that would be performed for the specified options, but do not
+actually execute these actions. Repeating the command without the \fB-n\fR
+option executes the listed actions, assuming that the \fB/etc/mnttab\fR file
+has not changed in the interval prior to repeating the command.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-r\fR\fR
+.ad
+.RS 11n
+Limit the action to remote file system types.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR\fR
+.ad
+.RS 11n
+Do not perform the \fBumount\fR operation in parallel.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-Z\fR\fR
+.ad
+.RS 11n
+Apply the action(s) only to the file systems mounted in non-global zones. By
+default, \fBumountall\fR unmounts only file systems mounted in the current
+zone. Option \fB-Z\fR is ignored if used in a non-global zone.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/mnttab\fR\fR
+.ad
+.sp .6
+.RS 4n
+Mounted file system table
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/vfstab\fR\fR
+.ad
+.sp .6
+.RS 4n
+Table of file system defaults
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/fs/\fIFSType\fR/fsckall\fR\fR
+.ad
+.sp .6
+.RS 4n
+Script called by \fBmountall\fR to perform the file system check of all file
+systems of type \fIFSType\fR
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Committed
+_
+Output Stability Uncommitted
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR mnttab (5),
+.BR vfstab (5),
+.BR attributes (7),
+.BR fsck (8),
+.BR fuser (8),
+.BR mount (8)
+.SH DIAGNOSTICS
+.sp
+.LP
+No messages are printed if the file systems are mountable and clean.
+.sp
+.LP
+Error and warning messages come from \fBfsck\fR(8) and \fBmount\fR(8).
+.SH NOTES
+.sp
+.LP
+At this time, NFS is the only remote file system supported by the \fB-l\fR,
+\fB-r\fR, and \fB-h\fR options.
diff --git a/usr/src/man/man8/mountd.8 b/usr/src/man/man8/mountd.8
new file mode 100644
index 0000000000..16de3ed9b7
--- /dev/null
+++ b/usr/src/man/man8/mountd.8
@@ -0,0 +1,113 @@
+.\"
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.\"
+.\"
+.\" Copyright 1989 AT&T
+.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 2016 Nexenta Systems, Inc.
+.\"
+.Dd March 12, 2016
+.Dt MOUNTD 8
+.Os
+.Sh NAME
+.Nm mountd
+.Nd server for NFS mount requests and NFS access checks
+.Sh SYNOPSIS
+.Nm /usr/lib/nfs/mountd
+.Op Fl rv
+.Sh DESCRIPTION
+.Nm
+is an RPC server that answers requests for NFS access information and file
+system mount requests.
+It reads the file
+.Pa /etc/dfs/sharetab
+to determine which file systems are available for mounting by which remote
+machines.
+See
+.Xr sharetab 5 .
+.Nm nfsd
+running on the local server will contact
+.Nm
+the first time an NFS client tries to access the file system to determine
+whether the client should get read-write, read-only, or no access.
+This access can be dependent on the security mode used in the remoted procedure
+call from the client.
+See
+.Xr share_nfs 8 .
+.Pp
+The command also provides information as to what file systems are mounted by
+which clients.
+This information can be printed using the
+.Xr showmount 8
+command.
+.Pp
+The
+.Nm
+daemon is automatically invoked by
+.Xr share 8 .
+.Pp
+Only super user can run the mountd daemon.
+.Pp
+See
+.Xr nfs 5
+for available configuration properties for
+.Nm .
+.Ss Options
+The options shown below are supported for NFSv2/v3 clients.
+They are not supported for NFSv4 clients.
+.Bl -tag -width Ds
+.It Fl r
+Reject mount requests from clients.
+Clients that have file systems mounted will not be affected.
+.It Fl v
+Run the command in verbose mode.
+Each time
+.Nm
+determines what access a client should get, it will log the result to the
+console, as well as how it got that result.
+.El
+.Sh FILES
+.Bl -tag -width Ds
+.It Pa /etc/dfs/sharetab
+shared file system table
+.El
+.Sh SEE ALSO
+.Xr nfs 5 ,
+.Xr sharetab 5 ,
+.Xr attributes 7 ,
+.Xr nfsd 8 ,
+.Xr share 8 ,
+.Xr share_nfs 8 ,
+.Xr sharectl 8 ,
+.Xr showmount 8
+.Sh NOTES
+Since
+.Nm
+must be running for
+.Nm nfsd
+to function properly,
+.Nm
+is automatically started by the
+.Sy svc:/network/nfs/server
+service.
+See
+.Xr nfs 5 .
+.Pp
+Some routines that compare hostnames use case-sensitive string comparisons;
+some do not.
+If an incoming request fails, verify that the case of the hostname in the file
+to be parsed matches the case of the hostname called for, and attempt the
+request again.
diff --git a/usr/src/man/man8/mpathadm.8 b/usr/src/man/man8/mpathadm.8
new file mode 100644
index 0000000000..6d3bf5d15e
--- /dev/null
+++ b/usr/src/man/man8/mpathadm.8
@@ -0,0 +1,713 @@
+'\" te
+.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH MPATHADM 8 "September 12, 2020"
+.SH NAME
+mpathadm \- multipath discovery and administration
+.SH SYNOPSIS
+.nf
+\fBmpathadm\fR \fIsubcommand\fR \fIdirect-object\fR [\fIoptions\fR] [\fIoperand\fR]
+.fi
+
+.SH DESCRIPTION
+The \fBmpathadm\fR command enables multipathing discovery and management. The
+\fBmpathadm\fR command is implemented as a set of subcommands, many with their
+own options, that are described in the section for that subcommand. Options not
+associated with a particular subcommand are described under OPTIONS. The
+\fBmpathadm\fR subcommands operate on a \fIdirect-object\fR. These are
+described in this section for each subcommand. The \fIdirect-objects\fR,
+\fIinitiator-port\fR, \fItarget-port\fR, and \fIlogical-unit\fR in the
+subcommands are consistent with SCSI standard definitions.
+.sp
+.LP
+The \fBmpathadm\fR command supports the following subcommands, which are
+described in detail in subsections that follow.
+.sp
+.ne 2
+.na
+\fB\fBlist\fR\fR
+.ad
+.RS 12n
+Display a list of discovered instances for a given object.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBshow\fR\fR
+.ad
+.RS 12n
+Display information about a given object instance.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmodify\fR\fR
+.ad
+.RS 12n
+Modify properties of an object.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBenable\fR\fR
+.ad
+.RS 12n
+Enable an object.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdisable\fR\fR
+.ad
+.RS 12n
+Disable an object.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfailover\fR\fR
+.ad
+.RS 12n
+Cause target port group failover for a logical-unit.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBoverride\fR\fR
+.ad
+.RS 12n
+Set a path to be used over other paths on a logical-unit.
+.RE
+
+.sp
+.LP
+The \fBmpathadm\fR subcommands operate on a \fIdirect-object\fR. These are
+described in this section for each subcommand.
+.SS "list Subcommand"
+The syntax for the \fBlist\fR subcommand is:
+.sp
+.in +2
+.nf
+# mpathadm list \fIdirect-object\fR [\fIoperands\fR...]
+.fi
+.in -2
+
+.sp
+.LP
+The \fBlist\fR subcommand displays data for following direct-objects:
+.sp
+.ne 2
+.na
+\fB\fBmpath-support\fR [\fImpath-support-name\fR, ...]\fR
+.ad
+.sp .6
+.RS 4n
+List the multipathing support that can be administered by this CLI. This
+presents itself in the form of a library name registered through the MPAPI
+framework. If no mpath-support name \fImpath-support-name\fR is specified, all
+registered multipathing support libraries will be displayed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBinitiator-port\fR [\fIinitiator-port-name\fR, ...]\fR
+.ad
+.sp .6
+.RS 4n
+List the initiator ports that are discovered on this system. If no
+\fIinitiator-port-name\fR is specified, all discovered initiator ports are
+displayed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB{\fBlogical-unit\fR | \fBlu\fR} [\fIoptions\fR]
+[\fIlogical-unit-name\fR, ...]\fR
+.ad
+.sp .6
+.RS 4n
+List the information on multipath logical units. If no \fIlogical-unit-name\fR
+is specified, all discovered logical-units will be displayed.
+.sp
+Options for \fBlist logical-unit\fR are as follows:
+.sp
+.ne 2
+.na
+\fB\fB-n\fR, \fB-\fR\fB-name\fR \fIname\fR\fR
+.ad
+.sp .6
+.RS 4n
+Return the logical unit name that is associated with the given name string.
+This name can be extracted from the output of the \fBmpathadm\fR \fBshow lu\fR
+command.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-t\fR, \fB-\fR\fB-target-port\fR \fItarget-port-name\fR\fR
+.ad
+.sp .6
+.RS 4n
+Return the list of logical units names that are associated with the given
+\fItarget-port-name\fR.
+.RE
+
+.RE
+
+.SS "\fBshow\fR Subcommand"
+The syntax for the \fBshow\fR subcommand is:
+.sp
+.in +2
+.nf
+# mpathadm show \fIdirect-object\fR [\fIoperands\fR...]
+.fi
+.in -2
+
+.sp
+.LP
+The \fBshow\fR subcommand displays detailed information for following the
+direct-objects:
+.sp
+.ne 2
+.na
+\fB\fBmpath-support\fR [\fImpath-support-name\fR, ...]\fR
+.ad
+.sp .6
+.RS 4n
+Show the detailed information on the given \fImpath-support-name\fR if the name
+exists. If the given \fImpath-support-name\fR supports only a limited set of
+device products, the list of device products will be listed as part of the
+output.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBinitiator-port\fR
+\fIinitiator-port-name\fR[,\fIinitiator-port-name\fR, ...]\fR
+.ad
+.sp .6
+.RS 4n
+Show the detailed information for the given \fIinitiator-port-name\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB{\fBlogical-unit\fR | \fBlu\fR} [\fIlogical-unit-name\fR, ...]\fR
+.ad
+.sp .6
+.RS 4n
+Display the detailed information on multipath logical unit(s), including path
+and target port group information. Note that the name property in the logical
+unit information represents the identifier for this LUN, derived from the
+hardware, and used by this system. If the name is derived from SCSI Inquiry
+Vital Product Data (VPD) page 83h, the name type property represents an
+associated identifier type defined by the SCSI standards.
+.RE
+
+.SS "\fBmodify\fR Subcommand"
+The syntax for the \fBmodify\fR subcommand is:
+.sp
+.in +2
+.nf
+# mpathadm modify \fIdirect-object\fR [\fIoptions\fR] [\fIoperands\fR...]
+.fi
+.in -2
+
+.sp
+.LP
+The \fBmodify\fR subcommand modifies characteristics of the following
+direct-objects:
+.sp
+.ne 2
+.na
+\fB\fBmpath-support\fR [\fIoptions\fR] \fImpath-support-name\fR, ...\fR
+.ad
+.sp .6
+.RS 4n
+Configuration management of an \fImpath-support\fR. Options to modify
+mpath-support are as follows:
+.sp
+.ne 2
+.na
+\fB\fB-a\fR, \fB-\fR\fB-autofailback\fR on | off\fR
+.ad
+.sp .6
+.RS 4n
+Set \fBautofailback\fR. Applicable only when mpath-support provides auto
+failback support.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR, \fB-\fR\fB-autoprobe\fR on | off\fR
+.ad
+.sp .6
+.RS 4n
+Set \fBautoprobing\fR. Applicable only when mpath-support provides auto probing
+support.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-b\fR, \fB-\fR\fB-loadbalance\fR loadbalance-type\fR
+.ad
+.sp .6
+.RS 4n
+Change the default load balance type. The \fBloadbalance\fR type is one of the
+supported types listed in the \fBshow mpath-support\fR output.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB{\fBlogical-unit\fR | \fBlu\fR} [\fIoptions\fR]
+\fIlogical-unit-name\fR, ...\fR
+.ad
+.sp .6
+.RS 4n
+Configuration management of a logical unit. Options to modify
+\fBlogical-unit\fR are as follows:
+.sp
+.ne 2
+.na
+\fB\fB-a\fR, \fB-\fR\fB-autofailback\fR on | off\fR
+.ad
+.sp .6
+.RS 4n
+Set \fBautofailback\fR. Applicable only when \fBmpath-support\fR provides auto
+failback support
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR, \fB-\fR\fB-autoprobe\fR on | off\fR
+.ad
+.sp .6
+.RS 4n
+Set \fBautoprobing\fR. Applicable only when \fBmpath-support\fR provides auto
+probing support.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-b\fR, \fB-\fR\fB-loadbalance\fR loadbalance-type\fR
+.ad
+.sp .6
+.RS 4n
+Set load balance type for the logical unit. Applicable only when load balance
+configuration is supported at the logical unit level.
+.RE
+
+.RE
+
+.SS "\fBenable\fR Subcommand"
+The syntax for the \fBenable\fR subcommand is:
+.sp
+.in +2
+.nf
+# mpathadm disable [\fIoptions\fR]
+.fi
+.in -2
+
+.sp
+.LP
+The \fBenable\fR subcommand supports the following direct-objects to be
+enabled:
+.sp
+.ne 2
+.na
+\fB\fBpath\fR \fB-i\fR \fIinitiator-port-name\fR \fB-t\fR
+\fItarget-port-name\fR\fR
+.ad
+.br
+.na
+\fB\fB-l\fR \fIlogical-unit-name\fR\fR
+.ad
+.sp .6
+.RS 4n
+The path that consists of the specified initiator port, target port, and
+logical unit will be enabled.
+.RE
+
+.SS "\fBdisable\fR Subcommand"
+The syntax for the \fBdisable\fR subcommand is:
+.sp
+.in +2
+.nf
+# mpathadm disable [\fIoptions\fR]
+.fi
+.in -2
+
+.sp
+.LP
+The \fBdisable\fR subcommand supports the following direct-objects to be
+disabled:
+.sp
+.ne 2
+.na
+\fB\fBpath\fR \fB-i\fR \fIinitiator-port-name\fR \fB-t\fR
+\fItarget-port-name\fR\fR
+.ad
+.br
+.na
+\fB\fB-l\fR \fIlogical-unit-name\fR\fR
+.ad
+.sp .6
+.RS 4n
+The path that consists of the specified initiator port, target port, and
+logical unit will be disabled.
+.RE
+
+.SS "\fBfailover\fR Subcommand"
+The syntax for the \fBfailover\fR subcommand is:
+.sp
+.in +2
+.nf
+# mpathadm failover \fIdirect-object\fR [\fIoperand\fR]
+.fi
+.in -2
+
+.sp
+.LP
+The \fBfailover\fR subcommand supports failover for the following
+direct-objects:
+.sp
+.ne 2
+.na
+\fB{\fBlogical-unit\fR | \fBlu\fR} \fIlogical-unit-name\fR\fR
+.ad
+.sp .6
+.RS 4n
+The target port group will failover when the given logical-unit is asymmetric
+and supports explicit state change. The currently active target port group will
+be changed to the standby state and the standby target port group will be
+active.
+.RE
+
+.SS "\fBoverride\fR Subcommand"
+The syntax for the \fBoverride\fR subcommand is:
+.sp
+.in +2
+.nf
+# mpathadm override [\fIoptions\fR]
+.fi
+.in -2
+
+.sp
+.LP
+The \fBoverride\fR subcommand controls whether or not the following
+direct-objects override another:
+.sp
+.ne 2
+.na
+\fBpath {\fB-i\fR \fIinitiator-port-name\fR \fB-t\fR \fItarget-port-name\fR |
+\fB-c\fR}\fR
+.ad
+.br
+.na
+\fB\fB-l\fR \fIlogical-unit-name\fR\fR
+.ad
+.sp .6
+.RS 4n
+Cause a path that consists of the specified initiator port, target port, and
+logical unit to override other paths on the logical unit. Once a path overrides
+other paths, the mpath-support uses only that path regardless of any other path
+selection configuration. The \fB-c\fR option cancels the setting. The path that
+consists of the specified initiator port, target port, and logical unit will be
+disabled.
+.sp
+Options for override path are as follows:
+.sp
+.ne 2
+.na
+\fB\fB-i\fR, \fB-\fR\fB-initiator-port\fR \fIinitiator-port-name\fR\fR
+.ad
+.sp .6
+.RS 4n
+Represent the initiator port element of a path. Options \fB-t\fR and \fB-l\fR
+must also be included.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-t\fR, \fB-\fR\fB-target-port\fR \fItarget-port-name\fR\fR
+.ad
+.sp .6
+.RS 4n
+Represent the target port element of a path. Options \fB-i\fR and \fB-l\fR must
+also be included.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR, \fB-\fR\fB-logical-unit\fR \fIlogical-unit\fR\fR
+.ad
+.sp .6
+.RS 4n
+Represent the logical unit element of a path. Options \fB-i\fR and \fB-t\fR
+must also be included.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-c\fR, \fB-\fR\fB-cancel\fR\fR
+.ad
+.sp .6
+.RS 4n
+Cancels overriding setting for the given logical unit. Option \fB-l\fR must
+also be included.
+.RE
+
+.RE
+
+.SH OPTIONS
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-V\fR, \fB-\fR\fB-version\fR\fR
+.ad
+.RS 17n
+Display the version information.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-?\fR, \fB-\fR\fB-help\fR\fR
+.ad
+.RS 17n
+Display context help. Can be used following an \fBmpathadm\fR command with no
+arguments, following a subcommand, or following a subcommand direct-object
+combination. Responds with help information appropriate for your entry. For
+example, if you enter:
+.sp
+.in +2
+.nf
+# \fBmpathadm add mpath-support-help\fR
+.fi
+.in -2
+.sp
+
+\&... \fBmpathadm\fR responds with a display of the options available for that
+combination of subcommand and direct-object.
+.RE
+
+.SH EXAMPLES
+\fBExample 1 \fRObtaining a List of Multipathing Support
+.sp
+.LP
+The following command uses the \fBlist\fR subcommand to list all currently
+registered \fBmpath-support\fR libraries.
+
+.sp
+.in +2
+.nf
+# \fBmpathadm list mpath-support\fR
+mpath-support: libmpscsi_vhci.so
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRDisplaying the Properties of a Particular Multipathing Support
+.sp
+.LP
+The following command uses the \fBshow\fR subcommand to display the properties
+for a currently registered \fBmpath-support\fR library.
+
+.sp
+.in +2
+.nf
+# \fBmpathadm show mpath-support libmpscsi_vhci.so\fR
+mpath-support: libmpscsi_vhci.so
+ Vendor: Sun Microsystems
+ Driver Name: scsi_vhci
+ Default Load Balance: round-robin
+ Supported Load Balance Types:
+ round-robin
+ logical-block
+Allows To Activate Target Port Group Access: yes
+Allows Path Override: no
+Supported Auto Failback Config: 1
+Auto Failback: on
+Failback Polling Rate (current/max): 0/0
+Supported Auto Probing Config: 0
+Auto Probing: NA
+Probing Polling Rate (current/max): NA/NA
+Supported Devices:
+ Vendor: SUN
+ Product: T300
+ Revision:
+ Supported Load Balance Types:
+ round-robin
+ Vendor: SUN
+ Product: T4
+ Revision:
+ Supported Load Balance Types:
+ round-robin
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRObtaining a List of Initiator Ports Discovered Through the
+\fBmpath-support\fR Libraries
+.sp
+.LP
+The following command uses the \fBlist initiator-port\fR subcommand to display
+a list of initiator ports discovered by the currently registered
+\fBmpath-support\fR libraries.
+
+.sp
+.in +2
+.nf
+# \fBmpathadm list initiator-port\fR
+Initiator-Port: iqn.1986-03.com.sun:01:080020b7ac2b.437a3b3e,4000002a0000
+Initiator-Port: 2000000173018713
+Initiator-Port: 2000000173818713
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 4 \fRDisplaying the Properties of a Particular Initiator Port
+.sp
+.LP
+The following command uses the \fBshow initiator-port\fR subcommand to display
+the properties of a particular initiator port discovered using the \fBlist
+initiator-port\fR subcommand in an example above.
+
+.sp
+.in +2
+.nf
+# \fBmpathadm show initiator-port 2000000173018713\fR
+initiator-port: 2000000173018713
+ Transport Type: Fibre Channel
+ OS device File: devices/pci@1f,4000/pci@2/SUNW,qlca@5/fp@0,0:fc
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 5 \fRDisplaying the Properties of a Particular Logical Unit
+.sp
+.LP
+The following command uses the \fBshow logical-unit\fR subcommand to display
+the properties of the logical unit with the specified name.
+
+.sp
+.in +2
+.nf
+# \fBmpathadm show lu /dev/rdsk/c4t60003BA27D2120004204AC2B000DAB00d0s2\fR
+Logical Unit: /dev/rdsk/c4t60003BA27D2120004204AC2B000DAB00d0s2
+ mpath-support libmpscsi_vhci.so
+ Vendor: SUN
+ Product: T4
+ Revision: 0301
+ Name Type: SCSI Inquiry VPD Page 83 type 3
+ Name: 60003ba27d2120004204ac2b000dab00
+ Asymmetric: yes
+ Current Load Balance: round-robin
+ Logical Unit Group ID: NA
+ Auto Failback: on
+ Auto Probing: NA
+
+Paths:
+ Initiator Port Name: 2000000173818713
+ Target Port Name: 20030003ba27d212
+ Override Path: NA
+ Path State: OK
+ Disabled: no
+
+ Initiator Port Name: 2000000173018713
+ Target Port Name: 20030003ba27d095
+ Override Path: NA
+ Path State: OK
+ Disabled: no
+
+Target Port Group:
+ ID: 2
+ Explicit Failover: yes
+ Access State: standby
+ Target Ports:
+ Name: 20030003ba27d212
+ Relative ID: 0
+
+ ID: 5
+ Explicit Failover: yes
+ Access State: active
+ Target Ports
+ Name: 20030003ba27d095
+ Relative ID: 0
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 6 \fREnabling a Path
+.sp
+.LP
+The following command uses the \fBenable path\fR subcommand to enable the path
+with the specified initiator port, target port, and logical unit.
+
+.sp
+.in +2
+.nf
+# \fBmpathadm enable path -i 2000000173018713 -t 20030003ba27d095 \e
+-l /dev/rdsk/c4t60003BA27D2120004204AC2B000DAB00d0s2\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 7 \fRModifying \fBmpath-support\fR To Turn On \fBautofailback\fR
+.sp
+.in +2
+.nf
+# \fBmpathadm modify mpath-support -a on libmpscsi_vhci.so\fR
+.fi
+.in -2
+.sp
+
+.SH ATTRIBUTES
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.BR libMPAPI (3LIB),
+.BR exec_attr (5),
+.BR attributes (7),
+.BR stmsboot (8)
diff --git a/usr/src/man/man8/mpstat.8 b/usr/src/man/man8/mpstat.8
new file mode 100644
index 0000000000..ad4ee424a1
--- /dev/null
+++ b/usr/src/man/man8/mpstat.8
@@ -0,0 +1,360 @@
+'\" te
+.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
+.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH MPSTAT 8 "Mar 23, 2009"
+.SH NAME
+mpstat \- report per-processor or per-processor-set statistics
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/bin/mpstat\fR [\fB-aq\fR] [\fB-p\fR | \fB-P\fR \fIset\fR] [\fB-T\fR u | d] [\fIinterval\fR [\fIcount\fR]]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBmpstat\fR command reports processor statistics in tabular form. Each row
+of the table represents the activity of one processor. The first table
+summarizes all activity since boot. Each subsequent table summarizes activity
+for the preceding interval. All values are rates listed as events per second
+unless otherwise noted.
+.sp
+.LP
+During execution of the kernel status command, the \fBstate\fR of the kernel
+can change. If relevant, a state change message is included in the \fBmpstat\fR
+output, in one of the following forms:
+.sp
+.in +2
+.nf
+<<processor 3 moved from pset: -1 to: 1>>
+<<pset destroyed: 1>>
+<<pset created: 1>>
+<<processors added: 1, 3>>
+<<processors removed: 1, 3>>
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The \fBmpstat\fR command reports the following information:
+.sp
+.ne 2
+.na
+\fB\fBCPU\fR or \fBSET\fR\fR
+.ad
+.RS 14n
+Without the \fB-a\fR option, \fBmpstat\fR reports \fBCPU\fR statistics for a
+processor ID. With the \fB-a\fR option, \fBmpstat\fR reports \fBSET\fR
+statistics for a processor set ID.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBminf\fR\fR
+.ad
+.RS 14n
+minor faults
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmjf\fR\fR
+.ad
+.RS 14n
+major faults
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBxcal\fR\fR
+.ad
+.RS 14n
+inter-processor cross-calls
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBintr\fR\fR
+.ad
+.RS 14n
+interrupts
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBithr\fR\fR
+.ad
+.RS 14n
+interrupts as threads (not counting clock interrupt)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcsw\fR\fR
+.ad
+.RS 14n
+context switches
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBicsw\fR\fR
+.ad
+.RS 14n
+involuntary context switches
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmigr\fR\fR
+.ad
+.RS 14n
+thread migrations (to another processor)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsmtx\fR\fR
+.ad
+.RS 14n
+spins on mutexes (lock not acquired on first try)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsrw\fR\fR
+.ad
+.RS 14n
+spins on readers/writer locks (lock not acquired on first try)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsyscl\fR\fR
+.ad
+.RS 14n
+system calls
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBusr\fR\fR
+.ad
+.RS 14n
+percent user time
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsys\fR\fR
+.ad
+.RS 14n
+percent system time
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBwt\fR\fR
+.ad
+.RS 14n
+the I/O wait time is no longer calculated as a percentage of \fBCPU\fR time,
+and this statistic will always return zero.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBidl\fR\fR
+.ad
+.RS 14n
+percent idle time
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsze\fR\fR
+.ad
+.RS 14n
+number of processors in the requested processor set
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBset\fR\fR
+.ad
+.RS 14n
+processor set membership of each \fBCPU\fR
+.RE
+
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-a\fR\fR
+.ad
+.RS 13n
+Aggregate output by processor set. Sort the output by set. The default output
+is sorted by \fBCPU\fR number.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR\fR
+.ad
+.RS 13n
+Report processor set membership of each \fBCPU\fR. Sort the output by set. The
+default output is sorted by \fBCPU\fR number.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-P\fR \fIset\fR\fR
+.ad
+.RS 13n
+Display only those processors in the specified \fIset\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-q\fR\fR
+.ad
+.RS 13n
+Suppress messages related to state changes.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-T\fR \fBu\fR | \fBd\fR\fR
+.ad
+.RS 13n
+Specify \fBu\fR for a printed representation of the internal representation of
+time. See \fBtime\fR(2). Specify \fBd\fR for standard date format. See
+\fBdate\fR(1).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIinterval\fR\fR
+.ad
+.RS 13n
+Report once each \fIinterval\fR seconds.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIcount\fR\fR
+.ad
+.RS 13n
+Only print \fIcount\fR reports.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRUsing \fBmpstat\fR to Generate User and System Operation
+Statistics
+.sp
+.LP
+The following command generates processor statistics over a five-second
+interval in two reports. The command shows the processor set membership of each
+\fBCPU\fR. The default output is sorted by \fBCPU\fR number, aggregated by
+\fIprocessor set\fR, for user (\fBusr\fR) and system (\fBsys\fR) operations.
+
+.sp
+.in +2
+.nf
+example% \fBmpstat -ap 5 2\fR
+
+
+SET minf mjf xcal intr ithr csw icsw migr smtx srw syscl usr sys wt idl sze
+ 0 6 0 355 291 190 22 0 0 0 0 43 0 2 0 43 1
+ 1 24 17 534 207 200 70 1 0 2 0 600 4 1 0 84 2
+ 2 19 7 353 325 318 44 0 0 5 0 345 1 1 0 94 3
+ 3 36 2 149 237 236 14 0 0 4 0 97 0 0 0 98 2
+SET minf mjf xcal intr ithr csw icsw migr smtx srw syscl usr sys wt idl sze
+ 0 1 0 720 405 304 55 0 0 18 0 12 0 15 0 81 1
+ 1 0 69 1955 230 200 313 33 4 41 9 7086 34 10 0 19 2
+ 2 0 46 685 314 300 203 11 0 54 1 5287 36 6 0 28 3
+ 3 0 0 14 386 384 0 0 0 0 0 0 0 0 0 100 2
+.fi
+.in -2
+.sp
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability See below.
+.TE
+
+.sp
+.LP
+Invocation is evolving. Human readable output is unstable.
+.SH SEE ALSO
+.sp
+.LP
+.BR date (1),
+.BR sar (1),
+.BR time (2),
+.BR attributes (7),
+.BR iostat (8),
+.BR sar (8),
+.BR vmstat (8)
+.SH NOTES
+.sp
+.LP
+The sum of \fBCPU\fR utilization might vary slightly from 100 due to rounding
+errors in the production of a percentage figure.
+.sp
+.LP
+The total time used for \fBCPU\fR processing is the sum of \fBusr\fR and
+\fBsys\fR output values, reported for user and system operations. The \fBidl\fR
+value reports the time that the \fBCPU\fR is idle for any reason other than
+pending disk I/O operations.
+.sp
+.LP
+Run the \fBiostat\fR command with the \fB-x\fR option to report I/O service
+times in \fBsvc_t\fR output. The \fBiostat\fR utility also reports the same
+\fBwt\fR, user (\fBus\fR), and system (\fBsy\fR) statistics. See
+\fBiostat\fR(8) for more information.
+.sp
+.LP
+When executing in a \fBzone\fR and if the pools facility is active,
+\fBmpstat\fR(8) will only provide information for those processors which are a
+member of the processor set of the pool to which the \fBzone\fR is bound.
diff --git a/usr/src/man/man8/msgid.8 b/usr/src/man/man8/msgid.8
new file mode 100644
index 0000000000..9aee32ab1a
--- /dev/null
+++ b/usr/src/man/man8/msgid.8
@@ -0,0 +1,75 @@
+'\" te
+.\" Copyright (c) 2000, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH MSGID 8 "Oct 9, 1998"
+.SH NAME
+msgid \- generate message IDs
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/msgid\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBmsgid\fR utility generates message \fBID\fRs.
+.sp
+.LP
+A message \fBID\fR is a numeric identifier that uniquely identifies a message.
+Although the probability of two distinct messages having the same \fBID\fR is
+high, this can be greatly reduced with the appropriate priority or
+facility.level designator (see \fBsyslogd\fR(8)). Specifically, the message
+\fBID\fR is a hash signature on the message's unexpanded format string,
+generated by \fBSTRLOG_MAKE_MSGID()\fR as defined in \fB<sys/strlog.h>\fR\&.
+.sp
+.LP
+\fBsyslogd\fR(8) is a simple filter that takes strings as input and produces
+those same strings, preceded by their message \fBID\fRs, as output. Every
+message logged by \fBsyslogd\fR(8) includes the message \fBID\fR. The message
+\fBID\fR is intended to serve as a small, language-independent identifier.
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRUsing the msgid command to generate a message ID
+.sp
+.LP
+The following example uses the \fBmsgid\fR command to generate a message
+\fBID\fR for the \fBecho\fR command.
+
+.sp
+.in +2
+.nf
+example# \fBecho hello | msgid\fR205790 hello
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRUsing the msgid command to generate a message catalog
+.sp
+.LP
+The following example uses the \fBmsgid\fR command to enumerate all of the
+messages in the binary \fBufs\fR, to generate a message catalog.
+
+.sp
+.in +2
+.nf
+example# \fBstrings /kernel/fs/ufs | msgid\fR
+
+137713 free:
+ freeing free frag, dev:0x%lx, blk:%ld, cg:%d, ino:%lu, fs:%s
+567420 ialloccg: block not in mapfs = %s
+845546 alloc: %s: file system full
+\&...
+.fi
+.in -2
+.sp
+
+.SH SEE ALSO
+.sp
+.LP
+.BR log (4D),
+.BR attributes (7),
+.BR syslogd (8)
diff --git a/usr/src/man/man8/mvdir.8 b/usr/src/man/man8/mvdir.8
new file mode 100644
index 0000000000..4683819103
--- /dev/null
+++ b/usr/src/man/man8/mvdir.8
@@ -0,0 +1,87 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 1997, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH MVDIR 8 "Mar 14, 1997"
+.SH NAME
+mvdir \- move a directory
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/mvdir\fR \fIdirname\fR \fIname\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBmvdir\fR moves directories within a file system. \fBdirname\fR must be a
+directory. If \fIname\fR does not exist, it will be created as a directory. If
+\fIname\fR does exist, and is a directory, \fBdirname\fR will be created as
+\fIname/dirname\fR. \fBdirname\fR and \fIname\fR may not be on the same path;
+that is, one may not be subordinate to the other. For example:
+.sp
+.LP
+\fBexample%\fR \fBmvdir\fR \fBx/y\fR \fBx/z\fR
+.sp
+.LP
+is legal, but
+.sp
+.LP
+\fBexample%\fR \fBmvdir\fR \fBx/y\fR \fBx/y/z\fR
+.sp
+.LP
+is not.
+.SH OPERANDS
+.sp
+.ne 2
+.na
+\fB\fBdirname\fR\fR
+.ad
+.RS 11n
+The name of the directory that is to be moved to another directory in the
+filesystem.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIname\fR\fR
+.ad
+.RS 11n
+The name of the directory into which \fBdirname\fR is to be moved. If
+\fIname\fR does not exist, it will be created. It may not be on the same path
+as \fBdirname\fR.
+.RE
+
+.SH USAGE
+.sp
+.LP
+See \fBlargefile\fR(7) for the description of the behavior of \fBmvdir\fR when
+encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
+.SH EXIT STATUS
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 6n
+Successful operation.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB>0\fR\fR
+.ad
+.RS 6n
+Operation failed.
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR mkdir (1),
+.BR mv (1),
+.BR attributes (7),
+.BR largefile (7)
diff --git a/usr/src/man/man8/ncaconfd.8 b/usr/src/man/man8/ncaconfd.8
new file mode 100644
index 0000000000..bf2bdf6872
--- /dev/null
+++ b/usr/src/man/man8/ncaconfd.8
@@ -0,0 +1,84 @@
+'\" te
+.\" Copyright (C) 2001, Sun Microsystems, Inc.
+.\" All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH NCACONFD 8 "Oct 12, 2004"
+.SH NAME
+ncaconfd \- Solaris Network Cache and Accelerator (NCA) configuration daemon
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/inet/ncaconfd\fR [\fB-al\fR ] \fIinterface1 \fR [\fIinterface2 ...\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+Use the \fBncaconfd\fR utility to set up NCA on a system. At boot time, the
+\fBncakmod\fR initialization script reads in \fBnca.if\fR(5) to determine on
+which interface(s) NCA should run. \fBncaconfd\fR then sets up the interface.
+.sp
+.LP
+\fBncaconfd\fR also operates as a daemon if the \fBnca_active\fR key is set to
+enabled in \fBncakmod.conf\fR(5) file. In this case, \fBncaconfd\fR will
+continue as a daemon after all the NCA interfaces have been set up, listening
+for routing changes. The changes are then passed to NCA to control which
+interface NCA should use to make active outgoing TCP connnections.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-a\fR\fR
+.ad
+.RS 6n
+Enable active connections.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR\fR
+.ad
+.RS 6n
+Enable logging.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/nca/ncakmod.conf\fR\fR
+.ad
+.RS 25n
+
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR nca (1),
+.BR ncakmod (1),
+.BR nca.if (5),
+.BR ncakmod.conf (5),
+.BR attributes (7)
diff --git a/usr/src/man/man8/ncheck.8 b/usr/src/man/man8/ncheck.8
new file mode 100644
index 0000000000..dcfef1727d
--- /dev/null
+++ b/usr/src/man/man8/ncheck.8
@@ -0,0 +1,122 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 2001, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH NCHECK 8 "May 30, 2001"
+.SH NAME
+ncheck \- generate a list of path names versus i-numbers
+.SH SYNOPSIS
+.LP
+.nf
+\fBncheck\fR [\fB-F\fR \fIFSType\fR] [\fB-V\fR] [\fIgeneric_options\fR]
+ [\fB-o\fR \fIFSType-specific_options\fR] [\fIspecial\fR]...
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBncheck\fR with no options generates a path-name versus i-number list of all
+files on \fIspecial\fR. If \fIspecial\fR is not specified on the command line
+the list is generated for all \fIspecial\fRs in \fB/etc/vfstab\fR which have a
+numeric \fBfsckpass\fR. \fIspecial\fR is the raw device on which the file
+system exists.
+.SH OPTIONS
+.sp
+.ne 2
+.na
+\fB\fB-F\fR\fR
+.ad
+.RS 19n
+Specify the \fIFSType\fR on which to operate. The \fIFSType\fR should either
+be specified here or be determinable from \fB/etc/vfstab\fR by finding an
+entry in the table that has a numeric \fBfsckpass\fR field and an
+\fBfsckdev\fR that matches \fIspecial\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-V\fR\fR
+.ad
+.RS 19n
+Echo the complete command line, but do not execute the command. The command
+line is generated by using the options and arguments provided by the user and
+adding to them information derived from \fB/etc/vfstab\fR. This option may be
+used to verify and validate the command line.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIgeneric_options\fR\fR
+.ad
+.RS 19n
+Options that are commonly supported by most FSType-specific command modules.
+The following options are available:
+.sp
+.ne 2
+.na
+\fB\fB-i\fR\fI i-list\fR\fR
+.ad
+.RS 13n
+Limit the report to the files on the \fIi-list\fR that follows. The
+\fIi-list\fR must be separated by commas with no intervening spaces.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-a\fR\fR
+.ad
+.RS 13n
+Print the names "." and ".\|." which are ordinarily suppressed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR\fR
+.ad
+.RS 13n
+Report only special files and files with set-user-ID mode. This option may be
+used to detect violations of security policy.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-o\fR\fR
+.ad
+.RS 19n
+Specify \fIFSType-specific_options\fR in a comma separated (without spaces)
+list of suboptions and keyword-attribute pairs for interpretation by the
+FSType-specific module of the command.
+.RE
+
+.SH USAGE
+.sp
+.LP
+See \fBlargefile\fR(7) for the description of the behavior of \fBncheck\fR when
+encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/vfstab\fR\fR
+.ad
+.RS 15n
+list of default parameters for each file system
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+\fBvfstab\fR(5), \fBattributes\fR(7), \fBlargefile\fR(7) Manual pages for the
+FSType-specific modules of \fBncheck\fR
+.SH NOTES
+.sp
+.LP
+This command may not be supported for all \fIFSTypes\fR.
diff --git a/usr/src/man/man8/ncheck_ufs.8 b/usr/src/man/man8/ncheck_ufs.8
new file mode 100644
index 0000000000..87f86b3bde
--- /dev/null
+++ b/usr/src/man/man8/ncheck_ufs.8
@@ -0,0 +1,54 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 1997 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH NCHECK_UFS 8 "Dec 18, 1991"
+.SH NAME
+ncheck_ufs \- generate pathnames versus i-numbers for ufs file systems
+.SH SYNOPSIS
+.LP
+.nf
+\fBncheck\fR \fB-F\fR ufs [\fIgeneric_options\fR] [\fB-o\fR m] [\fIspecial\fR]...
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBncheck\fR \fB-F\fR \fBufs\fR generates a pathname versus i-number list of
+files for the \fBufs\fR file system residing on \fIspecial\fR. Names of
+directory files are followed by `\fB/.\fR'.
+.SH OPTIONS
+.sp
+.LP
+See \fBncheck\fR(8) for the list of \fIgeneric_options\fR supported.
+.sp
+.ne 2
+.na
+\fB\fB-o\fR\fR
+.ad
+.RS 6n
+Specify \fBufs\fR file system specific options. The available option is:
+.sp
+.ne 2
+.na
+\fB\fBm\fR\fR
+.ad
+.RS 5n
+Print mode information.
+.RE
+
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7),
+.BR ff (8),
+.BR ncheck (8)
+.SH DIAGNOSTICS
+.sp
+.LP
+When the file system structure is improper, `\fB??\fR' denotes the "parent" of
+a parentless file and a pathname beginning with `\fB\&.\|.\|.\fR' denotes a
+loop.
diff --git a/usr/src/man/man8/ndd.8 b/usr/src/man/man8/ndd.8
new file mode 100644
index 0000000000..2759c7be07
--- /dev/null
+++ b/usr/src/man/man8/ndd.8
@@ -0,0 +1,120 @@
+'\" te
+.\" Copyright (C) 2007, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH NDD 8 "Mar 13, 2009"
+.SH NAME
+ndd \- get and set driver configuration parameters
+.SH SYNOPSIS
+.LP
+.nf
+\fBndd\fR [\fB-set\fR] \fIdriver\fR \fIparameter\fR [\fIvalue\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBndd\fR gets and sets selected configuration parameters in some kernel
+drivers. Currently, \fBndd\fR only supports the drivers that implement the
+\fBTCP/IP\fR Internet protocol family. Each driver chooses which parameters to
+make visible using \fBndd\fR. Since these parameters are usually tightly
+coupled to the implementation, they are likely to change from release to
+release. Some parameters may be read-only.
+.sp
+.LP
+If the \fB-set\fR option is omitted, \fBndd\fR queries the named \fIdriver\fR,
+retrieves the value associated with the specified \fIparameter\fR, and prints
+it. If the \fB-set\fR option is given, \fBndd\fR passes \fIvalue\fR, which must
+be specified, down to the named \fIdriver\fR which assigns it to the named
+\fIparameter\fR.
+.sp
+.LP
+By convention, drivers that support \fBndd\fR also support a special read-only
+\fIparameter\fR named ``\fB?\fR'' which can be used to list the parameters
+supported by the driver.
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRGetting Parameters Supported By The TCP Driver
+.sp
+.LP
+To see which parameters are supported by the TCP driver, use the following
+command:
+
+.sp
+.in +2
+.nf
+example% \fBndd /dev/tcp \e?\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The parameter name ``\fB?\fR'' may need to be escaped with a backslash to
+prevent its being interpreted as a shell meta character.
+
+.sp
+.LP
+The following command sets the value of the parameter \fIip_forwarding\fR in
+the dual stack IP driver to zero. This disables IPv4 packet forwarding.
+
+.sp
+.in +2
+.nf
+example% \fBndd -set /dev/ip ip_forwarding 0\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Similarly, in order to disable IPv6 packet forwarding, the value of parameter
+\fIip6_forwarding\fR
+
+.sp
+.in +2
+.nf
+example% \fBndd -set /dev/ip ip6_forwarding 0\fR
+.fi
+.in -2
+.sp
+
+.SH SEE ALSO
+.sp
+.LP
+.BR nca (1),
+.BR ioctl (2),
+.BR arp (4P),
+.BR ip (4P),
+.BR ip6 (4P),
+.BR tcp (4P),
+.BR udp (4P),
+.BR attributes (7),
+.BR dladm (8)
+.SH NOTES
+.sp
+.LP
+The parameters supported by each driver may change from release to release.
+Like programs that read \fB/dev/kmem\fR, user programs or shell scripts that
+execute \fBndd\fR should be prepared for parameter names to change.
+.sp
+.LP
+The \fBioctl()\fR command that \fBndd\fR uses to communicate with drivers is
+likely to change in a future release. User programs should avoid making
+dependencies on it.
+.sp
+.LP
+The use of \fBndd\fR to administer Layer 2 (Data Link layer) drivers is
+strongly discouraged as this capability is to be obsoleted in a future release,
+replaced by \fBdladm\fR(8). Please refer to the driver-specific man page in
+section 4D of the SunOS man pages.
+.sp
+.LP
+The meanings of many \fBndd\fR parameters make sense only if you understand how
+the driver is implemented.
+.sp
+.LP
+If a TCP driver sends a report that is truncated, it could be because that
+driver uses \fBndd\fR for transporting the report. \fBndd\fR imposes a 64K
+limit on such reports.
diff --git a/usr/src/man/man8/ndmpadm.8 b/usr/src/man/man8/ndmpadm.8
new file mode 100644
index 0000000000..d05a541079
--- /dev/null
+++ b/usr/src/man/man8/ndmpadm.8
@@ -0,0 +1,467 @@
+'\" te
+.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 2014 Nexenta Systems, Inc. All rights reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH NDMPADM 8 "April 9, 2016"
+.SH NAME
+ndmpadm \- administer Network Data Management Protocol activities
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/ndmpadm\fR [\fB-?\fR ] \fIsubcommand\fR [\fIoptions\fR] [\fIdirect-object\fR]
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBndmpadm\fR command can be used to query the \fBndmpd\fR(8) daemon to
+get the status of active sessions, terminate a session, query backup devices,
+and set or get the current NDMP (Network Data Management Protocol) service
+variables and properties. \fBndmpadm\fR is implemented as a set of subcommands,
+many with their own direct object, which are described in the section for a
+given subcommand. Certain subcommands support options, which are described
+along with the subcommand.
+.sp
+.LP
+The \fBndmpadm\fR command supports the following subcommands:
+.sp
+.ne 2
+.na
+\fB\fBdisable\fR\fR
+.ad
+.sp .6
+.RS 4n
+Disable the specified authentication password handling.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBenable\fR\fR
+.ad
+.sp .6
+.RS 4n
+Enable the specified authentication password handling.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBget\fR\fR
+.ad
+.sp .6
+.RS 4n
+Get the value of an NDMP configuration property.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBkill-sessions\fR\fR
+.ad
+.sp .6
+.RS 4n
+Terminate an active session.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBset\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set the value of an NDMP configuration property.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBshow-devices\fR\fR
+.ad
+.sp .6
+.RS 4n
+Get a list of tape devices connected to the server.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBshow-sessions\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display the details of active NDMP sessions.
+.RE
+
+.SH OPTIONS
+.LP
+The following option is supported:
+.sp
+.ne 2
+.na
+\fB\fB-?\fR\fR
+.ad
+.RS 6n
+Display a list of all subcommands and options.
+.RE
+
+.SH SUBCOMMANDS
+.LP
+The \fBndmpadm\fR command supports the subcommands described below.
+.SS "\fBdisable\fR Subcommand"
+.LP
+The syntax for the \fBdisable\fR subcommand is:
+.sp
+.in +2
+.nf
+# \fBndmpadm disable -a \fIauth-type\fR\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+This subcommand disables the authentication type specified by \fIauth-type\fR
+for an NDMP client's remote access. Valid values for \fIauth-type\fR are
+\fBcram-md5\fR or \fBcleartext\fR.
+.SS "\fBenable\fR Subcommand"
+.LP
+The syntax for the \fBenable\fR subcommand is:
+.sp
+.in +2
+.nf
+# \fBndmpadm enable -a \fIauth-type\fR -u \fIusername\fR\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+This subcommand prompts for the user's password twice for confirmation and
+activates the specified authentication type with the given username and
+password for NDMP client access. Valid values for \fIauth-type\fR are
+\fBcram-md5\fR or \fBcleartext\fR.
+.SS "\fBget\fR Subcommand"
+.LP
+The syntax for the \fBget\fR subcommand is:
+.sp
+.in +2
+.nf
+# \fBndmpadm get [-p] [\fIproperty\fR] [[-p] \fIproperty\fR=\fIvalue\fR]...\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The property names are the same as used for the \fBset\fR subcommand and are
+described below. If you do not specify a property, the \fBget\fR subcommand
+returns all configuration properties.
+.SS "\fBkill-sessions\fR Subcommand"
+.LP
+The \fBkill-sessions\fR subcommand allows you to terminate the session number
+\fIID\fR.
+.sp
+.LP
+The syntax for the \fBkill-sessions\fR subcommand is:
+.sp
+.in +2
+.nf
+# \fBndmpadm kill-sessions \fIID\fR\fR
+.fi
+.in -2
+.sp
+
+.SS "\fBset\fR Subcommand"
+.LP
+The syntax for the \fBset\fR subcommand is:
+.sp
+.in +2
+.nf
+# \fBndmpadm set [-p] \fIproperty\fR=\fIvalue\fR [[-p] \fIproperty\fR=\fIvalue\fR]...\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The properties you can set with the \fBset\fR subcommand are described in the
+\fBndmp\fR(5) man page.
+.SS "\fBshow-devices\fR Subcommand"
+.LP
+The syntax for the \fBshow-devices\fR subcommand is:
+.sp
+.in +2
+.nf
+# \fBndmpadm show-devices\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+This subcommand lists the name, vendor, serial number, and other information
+about the current tape drive and libraries connected to the system.
+.SS "\fBshow-sessions\fR Subcommand"
+.LP
+The \fBshow-sessions\fR subcommand displays details of a session. The syntax
+for the \fBshow-sessions\fR subcommand is:
+.sp
+.in +2
+.nf
+# \fBndmpadm show-sessions [-i tape,scsi,data,mover] [\fIID\fR]\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The \fBshow-sessions\fR subcommand supports the following arguments:
+.sp
+.ne 2
+.na
+\fB\fB-i\fR \fBtape\fR,\fBscsi\fR,\fBdata\fR,\fBmover\fR\fR
+.ad
+.sp .6
+.RS 4n
+Identify a type of interface about which to obtain data. If no interface is
+specified, \fBshow-sessions\fR displays information for all types of
+interfaces.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIID\fR\fR
+.ad
+.sp .6
+.RS 4n
+Identifies a particular session about which to display data. If no \fIID\fR is
+specified, \fBshow-sessions\fR displays data for all sessions.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRObtaining the Status of All NDMP Connections
+.sp
+.LP
+The following command obtains status on all connections.
+
+.sp
+.in +2
+.nf
+# \fBndmpadm show-devices\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRObtaining the Status of Certain Types of Connections
+.sp
+.LP
+The following command obtains status on tape and SCSI interfaces.
+
+.sp
+.in +2
+.nf
+# \fBndmpadm show-sessions -i scsi,tape\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRLimiting Protocol Version
+.sp
+.LP
+The following command limits the use of the NDMP protocol to version 3.
+
+.sp
+.in +2
+.nf
+# \fBndmpadm set -p version=3\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 4 \fRTurning on Debugging
+.sp
+.LP
+The following command enables debugging. It also sets the NDMP protocol to
+version 3.
+
+.sp
+.in +2
+.nf
+# \fBndmpadm set -p debug-mode=yes -p version=3\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 5 \fRObtaining Current Version Number
+.sp
+.LP
+The following command obtains the version number of the currently running NDMP.
+
+.sp
+.in +2
+.nf
+# \fBndmpadm get -p version\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 6 \fRDisconnecting a Specific Session
+.sp
+.LP
+The command shown below disconnects session 5. The session number was
+previously obtained from an \fBndmpadm show-sessions\fR command.
+
+.sp
+.in +2
+.nf
+# \fBndmpadm kill-session 5\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 7 \fRObtaining the Values for All NDMP Properties
+.sp
+.LP
+The following command obtains the values for all NDMP properties.
+
+.sp
+.in +2
+.nf
+# \fBndmpadm get\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 8 \fREnabling CRAM-MD5 Authentication
+.sp
+.LP
+The following command enables CRAM-MD5 authentication.
+
+.sp
+.in +2
+.nf
+# \fBndmpadm enable -a cram-md5 -u admin\fR
+Enter new password:\fB*****\fR
+Re-enter password:\fB*****\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 9 \fRDisabling Clear Text Password Authentication
+.sp
+.LP
+The following command disables clear text password authentication.
+
+.sp
+.in +2
+.nf
+# \fBndmpadm disable -a cleartext\fR
+.fi
+.in -2
+.sp
+
+.SH EXIT STATUS
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 5n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB1\fR\fR
+.ad
+.RS 5n
+An error occurred, such as the \fBndmpd\fR daemon is not running, that
+prevented \fBndmpadm\fR from contacting the daemon.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB2\fR\fR
+.ad
+.RS 5n
+Invalid command-line options were specified.
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Committed
+.TE
+
+.SH SEE ALSO
+.LP
+.BR dump (1),
+.BR tar (1),
+.BR ndmp (5),
+.BR attributes (7),
+.BR smf (7),
+.BR ndmpd (8),
+.BR ndmpstat (8),
+.BR svccfg (8),
+.BR syslogd (8)
+.SH NOTES
+.LP
+The \fBndmpd\fR(8) daemon is managed by the service management facility
+(\fBsmf\fR(7)), under the service identifier:
+.sp
+.in +2
+.nf
+svc:/system/ndmpd
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Administrative actions on this service, such as setting and getting a property
+can be alternatively performed using \fBsvccfg\fR(8). For example to enable
+Direct Access Recovery (DAR) mode:
+.sp
+.in +2
+.nf
+# \fBsvccfg -s svc:/system/ndmpd\fR
+svc:/system/ndmpd> \fBsetprop ndmpd/dar-support = yes\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+\&...and to get the list of properties:
+.sp
+.in +2
+.nf
+# \fBsvccfg -s svc:/system/ndmpd\fR
+svc:/system/ndmpd> \fBlistprop\fR
+.fi
+.in -2
+.sp
+
diff --git a/usr/src/man/man8/ndmpd.8 b/usr/src/man/man8/ndmpd.8
new file mode 100644
index 0000000000..dc11c06525
--- /dev/null
+++ b/usr/src/man/man8/ndmpd.8
@@ -0,0 +1,154 @@
+'\" te
+.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 2014 Nexenta Systems, Inc. All rights reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH NDMPD 8 "Feb 24, 2014"
+.SH NAME
+ndmpd \- Network Data Management Protocol daemon
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/ndmp/ndmpd\fR [\fB-df\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBndmpd\fR daemon handles client Network Data Management Protocol (NDMP)
+requests. NDMP is an open, enterprise-wide, network-based data management
+protocol used for backup and recovery. The \fBndmpd\fR daemon enables users to
+manage data backup and recovery using Data Management Application (DMA)
+clients. The NDMP protocol is used to coordinate data movement and control
+between a DMA and an NDMP server or between two NDMP servers.
+
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-d\fR\fR
+.ad
+.RS 4n
+Enables debugging mode. Overrides ndmpd/debug-mode smf(7) property.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR\fR
+.ad
+.RS 4n
+Tells NDMP server not to detach from terminal and to run in foreground. Log
+messages will be printed to standard error output in addition to ndmp log
+file.
+.RE
+
+.SH EXIT STATUS
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 5n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB95\fR\fR
+.ad
+.RS 5n
+An error occurred that prevented the \fBndmpd\fR daemon from initializing, such
+as failure to fork a process, mutex initialization.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB96\fR\fR
+.ad
+.RS 5n
+Configuration problem or invalid command line options.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/ndmp/ndmpd\fR\fR
+.ad
+.sp .6
+.RS 4n
+Network data management protocol server binary.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/log/ndmp/ndmplog.0\fR\fR
+.ad
+.sp .6
+.RS 4n
+Network data management protocol log messages file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/ndmp/dumpdates\fR\fR
+.ad
+.sp .6
+.RS 4n
+A text file that stores information about the date and the level of dump
+backups.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Committed
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR svcs (1),
+.BR attributes (7),
+.BR smf (7),
+.BR ndmpadm (8),
+.BR svcadm (8),
+.BR svccfg (8),
+.BR syslogd (8)
+.SH NOTES
+.sp
+.LP
+The \fBndmpd\fR daemon is managed by the service management facility
+(\fBsmf\fR(7)), under the service identifier:
+.sp
+.in +2
+.nf
+svc:/system/ndmpd:default
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Administrative actions on this service, such as enabling, disabling, or
+requesting restart, can be performed using \fBsvcadm\fR(8). The service's
+status can be queried using the \fBsvcs\fR(1) command.
diff --git a/usr/src/man/man8/ndmpstat.8 b/usr/src/man/man8/ndmpstat.8
new file mode 100644
index 0000000000..e90d68a2d2
--- /dev/null
+++ b/usr/src/man/man8/ndmpstat.8
@@ -0,0 +1,373 @@
+'\" te
+.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH NDMPSTAT 8 "Jun 21, 2007"
+.SH NAME
+ndmpstat \- show NDMP backup progress statistics
+.SH SYNOPSIS
+.LP
+.nf
+\fBndmpstat\fR [\fItapes\fR] [\fIinterval\fR [\fIcount\fR]]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBndmpstat\fR utility reports Network Data Management Protocol (NDMP)
+statistics, among which are NDMP worker threads, disk IO, tape IO, files
+operation, performance, and backup activity.
+.sp
+.LP
+\fBndmpstat\fR reports the aggregate statistics for all tapes and disks. In
+order to obtain statistics for specific tape devices, the tape device name
+should be passed as argument to the utility.
+.sp
+.LP
+When invoked, \fBndmpstat\fR begins its display with a one-line summary of the
+NDMP daemon activity since the NDMP service was invoked.
+.SS "Display Fields"
+.sp
+.LP
+The fields in \fBndmpstat\fR output are described as follows:
+.sp
+.ne 2
+.na
+\fB\fBwthr\fR\fR
+.ad
+.sp .6
+.RS 4n
+Report the number of worker threads in each of the four following states:
+.sp
+.ne 2
+.na
+\fB\fBr\fR\fR
+.ad
+.sp .6
+.RS 4n
+the number of worker threads running
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBw\fR\fR
+.ad
+.sp .6
+.RS 4n
+the number of blocked worker threads that are waiting for resources such as I/O
+and paging
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBb\fR\fR
+.ad
+.sp .6
+.RS 4n
+the number of backup operations currently running
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBr\fR\fR
+.ad
+.sp .6
+.RS 4n
+the number of restore operations currently running
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfile\fR\fR
+.ad
+.sp .6
+.RS 4n
+Report on usage of filesystem.
+.sp
+.ne 2
+.na
+\fB\fBrd\fR\fR
+.ad
+.sp .6
+.RS 4n
+the number of files being read
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBwr\fR\fR
+.ad
+.sp .6
+.RS 4n
+the number of files being written
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdisk\fR\fR
+.ad
+.sp .6
+.RS 4n
+Report the number of disk operations per interval.
+.sp
+.ne 2
+.na
+\fB\fBrd\fR\fR
+.ad
+.sp .6
+.RS 4n
+the number of disk blocks being read
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBwr\fR\fR
+.ad
+.sp .6
+.RS 4n
+the number of disk blocks being written
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBtape\fR\fR
+.ad
+.sp .6
+.RS 4n
+Report the number of tape operations per interval. There are slots for up to
+four tapes, labeled with a single number. The number indicates the name of the
+device under \fB/dev/rmt\fR.
+.sp
+.ne 2
+.na
+\fB\fBrd\fR\fR
+.ad
+.sp .6
+.RS 4n
+the number of tape blocks being read
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBwr\fR\fR
+.ad
+.sp .6
+.RS 4n
+the number of tape blocks being written
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBbytes\fR\fR
+.ad
+.sp .6
+.RS 4n
+Report the number of bytes transferred. This is the aggregate value of both
+tape and disk devices. The number is in kilobytes.
+.sp
+.ne 2
+.na
+\fB\fBrd\fR\fR
+.ad
+.sp .6
+.RS 4n
+the number of kilobytes being read
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBwr\fR\fR
+.ad
+.sp .6
+.RS 4n
+the number of kilobytes being written
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBperf\fR\fR
+.ad
+.sp .6
+.RS 4n
+Displays a rough estimate of performance of the backup/restore operation in
+megabytes per second.
+.sp
+.ne 2
+.na
+\fB\fBbk\fR\fR
+.ad
+.sp .6
+.RS 4n
+backup performance
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrs\fR\fR
+.ad
+.sp .6
+.RS 4n
+restore performance
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBprcnt\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display the comparative usage of resources, in percent.
+.sp
+.ne 2
+.na
+\fB\fBdsk\fR\fR
+.ad
+.sp .6
+.RS 4n
+disk I/O time
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBtpe\fR\fR
+.ad
+.sp .6
+.RS 4n
+tape I/O time
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBotr\fR\fR
+.ad
+.sp .6
+.RS 4n
+other time (memory or idle)
+.RE
+
+.RE
+
+.sp
+.LP
+See \fBEXAMPLES\fR.
+.SH OPERANDS
+.sp
+.LP
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fB\fIcount\fR\fR
+.ad
+.RS 12n
+Specifies the number of times that the statistics display is repeated.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fItape\fR\fR
+.ad
+.RS 12n
+Specifies which tapes are to be given priority in the output. A command line is
+limited to a maximum of four tape devices. A common tape name is
+\fB/dev/rmt/\fR\fIn\fR, where \fIn\fR is an integer.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIinterval\fR\fR
+.ad
+.RS 12n
+Specifies the number of seconds over which \fBndmpstat\fR summarizes activity.
+The specified interval remains in effect till the command is terminated.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRUsing \fBndmpstat\fR
+.sp
+.LP
+The following command displays a summary of NDMP daemon activity at five-second
+intervals.
+
+.sp
+.in +2
+.nf
+example% \fBndmpstat 5\fR
+wthr file disk tape bytes perf prcnt
+r w b r rd wr rd wr rd wr rd wr bk rs dsk tpe otr
+1 0 3 6 50 9 1250 0 32544 4455 42335 3234 5 4 20 40 40
+1 0 0 1 1 0 128 0 0 128 64 64 1 0 0 80 20
+1 0 0 1 2 0 128 0 0 0 64 0 1 0 80 0 20
+1 0 0 1 1 0 128 0 0 0 64 0 1 0 80 0 20
+1 0 0 1 3 0 128 0 0 0 64 0 0 0 80 0 20
+1 0 0 1 1 0 128 0 0 128 64 64 1 0 0 80 20
+^C
+example%
+.fi
+.in -2
+.sp
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability See below
+.TE
+
+.sp
+.LP
+Invocation is evolving. Human readable output is unstable.
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7),
+.BR iostat (8),
+.BR mpstat (8),
+.BR ndmpadm (8),
+.BR ndmpd (8)
+.SH NOTES
+.sp
+.LP
+Performance numbers are not accurate and are rounded up at the MB/sec.
+boundary.
diff --git a/usr/src/man/man8/ndp.8 b/usr/src/man/man8/ndp.8
new file mode 100644
index 0000000000..c6d818043d
--- /dev/null
+++ b/usr/src/man/man8/ndp.8
@@ -0,0 +1,221 @@
+.\"
+.\" This file and its contents are supplied under the terms of the
+.\" Common Development and Distribution License ("CDDL"), version 1.0.
+.\" You may only use this file in accordance with the terms of version
+.\" 1.0 of the CDDL.
+.\"
+.\" A full copy of the text of the CDDL should have accompanied this
+.\" source. A copy of the CDDL is also available via the Internet at
+.\" http://www.illumos.org/license/CDDL.
+.\"
+.\"
+.\" Copyright (c) 2015, Joyent, Inc. All rights reserved.
+.\"
+.Dd Sep 02, 2015
+.Dt NDP 8
+.Os
+.Sh NAME
+.Nm ndp
+.Nd manipulate IPv6 Neighbor Discovery Protocol mappings
+.Sh SYNOPSIS
+.Nm
+.Op Fl n
+.Fl a
+.Nm
+.Op Fl n
+.Fl A Ar period
+.Nm
+.Op Fl n
+.Op Fl i Ar iface
+.Ar hostname
+.Nm
+.Op Fl n
+.Op Fl i Ar iface
+.Fl d Ar hostname
+.Nm
+.Op Fl n
+.Op Fl i Ar iface
+.Fl f Ar filename
+.Nm
+.Op Fl n
+.Op Fl i Ar iface
+.Fl s Ar hostname lladdr
+.Op Cm temp
+.Op Cm any
+.Op Cm router
+.Sh DESCRIPTION
+The
+.Nm
+command displays and modifies the IPv6-to-MAC address translation
+tables used by the Neighbor Discovery Protocol
+.Po see Xr ndp 4P Pc .
+.Pp
+Given just a hostname,
+.Nm
+will display the current entry.
+Note that when getting, setting or deleting, if a hostname refers to multiple
+IPv6 addresses, the operation will apply to all of them.
+.Pp
+The NDP translation tables can be modified with
+.Fl d ,
+.Fl s ,
+or
+.Fl f .
+These flags can only be used when
+.Nm
+is given the
+.Sy PRIV_SYS_NET_CONFIG
+privilege.
+See
+.Xr privileges 7
+for further information.
+.Pp
+Note that NDP entries for IPMP (IP Network Multipathing) data and
+test addresses are managed by the kernel and therefore cannot be
+modified or deleted.
+.Sh OPTIONS
+.Bl -tag -width 6m
+.It Fl a
+Display all NDP entries.
+Entries can be one of several types:
+.Bl -tag -offset indent -width 7n
+.It Sy dynamic
+This is a normal NDP mapping and will eventually expire.
+This is the most common type of mapping for non-local addresses that will be
+displayed.
+.It Sy local
+The IPv6 address is local to the machine.
+.It Sy other
+The mapping is a multicast or broadcast address, or the system is acting
+as proxy for the address.
+.It Sy static
+The mapping is static and will not be removed from the machine over time.
+.El
+.Pp
+Entries also exist in one of the following states:
+.Bl -tag -offset indent -width 12m
+.It Sy INCOMPLETE
+Address resolution is in progress
+.It Sy REACHABLE
+This address has recently been reachable
+.It Sy STALE
+This address may be unreachable
+.It Sy DELAY
+Waiting to send out reachability probes
+.It Sy PROBE
+Sending out probes for the address
+.It Sy UNREACHABLE
+The address is unreachable, and will be deleted
+.It Sy UNKNOWN
+The state of the entry is unknown
+.El
+.Pp
+Using the
+.Fl a
+flag is equivalent to:
+.sp
+.Dl # netstat -p -f inet6
+.sp
+If
+.Fl n
+is passed to
+.Nm ,
+then it will be passed along to
+.Nm netstat .
+.It Fl A
+Display all NDP entries every
+.Ar period
+seconds.
+.It Fl d
+Delete NDP mappings for the host called
+.Ar hostname .
+.It Fl f
+Read in the lines from
+.Ar filename
+and use each one to set a mapping.
+The syntax of each line is the same as the arguments to
+.Fl s .
+Lines beginning with `#' will be ignored.
+.It Fl i
+By default,
+.Nm
+will use the routing table to determine the appropriate interface to place the
+mapping on.
+This flag allows forcing a specific interface
+.Ar iface .
+This argument will be ignored when using the
+.Fl a
+or
+.Fl A
+flags.
+.It Fl n
+Disable the default translation of numeric IP addresses to host names when
+printing.
+.It Fl s
+Add or update an NDP mapping, and set the desired properties for the entry.
+The list of flags should be the full set of flags desired on the entry, i.e.,
+not listing a flag will remove it if it already exists.
+The following flags can be used:
+.Bl -tag -offset indent -width Ds
+.It Cm temp
+The entry should be temporary and eventually expire like a normal NDP
+entry.
+By default, all entries created with the
+.Nm
+command are static, and will not be deleted.
+To make a static entry temporary, it should be deleted and recreated with the
+.Cm temp
+flag.
+.It Cm any
+The address should be treated like an anycast address.
+This will prevent the system from sending Neighbor Advertisements with the
+Override flag.
+.It Cm router
+The address should be treated like a router address.
+This cause the system to send Neighbor Advertisements with the Router flag.
+.El
+.El
+.Sh EXAMPLES
+.Ss Example 1: Setting a mapping
+To create a temporary mapping for an address:
+.Bd -literal -offset indent
+# ndp -s fd00::1 90:b8:d0:4b:c7:3b temp
+.Ed
+.Ss Example 2: Getting a mapping
+An entry can be fetched via its IP address:
+.Bd -literal -offset indent
+# ndp fd00::1
+fd00::1 (fd00::1) at 90:b8:d0:4b:c7:3b temp
+.Ed
+.sp
+Or via a name that resolves to that address:
+.Bd -literal -offset indent
+# echo fd00::1 epicac >> /etc/hosts
+# echo fd00::2 epicac >> /etc/hosts
+# ndp epicac
+fd00::1 (epicac) at 90:b8:d0:4b:c7:3b temp
+fd00::2 (epicac) -- no entry
+.Ed
+.Ss Example 3: Deleting a mapping
+An entry can be removed with the
+.Fl d
+flag:
+.Bd -literal -offset indent
+# ndp -d fd00::1
+.Ed
+.sp
+Attempting to remove it again will print an error message:
+.Bd -literal -offset indent
+# ndp -d fd00::1
+ndp: No entry for fd00::1
+.Ed
+.Sh STABILITY
+The command line options for this command are stable, but the output format
+and diagnostic messages are not.
+.Sh SEE ALSO
+.Xr ndp 4P ,
+.Xr attributes 7 ,
+.Xr privileges 7 ,
+.Xr arp 8 ,
+.Xr ifconfig 8 ,
+.Xr netstat 8
diff --git a/usr/src/man/man8/netstat.8 b/usr/src/man/man8/netstat.8
new file mode 100644
index 0000000000..2b041a91cf
--- /dev/null
+++ b/usr/src/man/man8/netstat.8
@@ -0,0 +1,1108 @@
+'\" te
+.\" Copyright 2019 OmniOS Community Edition (OmniOSce) Association.
+.\" Copyright 2018, Joyent, Inc.
+.\" Copyright (C) 2002, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 1989 AT&T
+.\" Copyright (c) 1983 Regents of the University of California. All rights reserved. The Berkeley software License Agreement specifies the terms and conditions for redistribution.
+.TH NETSTAT 8 "Jul 12, 2016"
+.SH NAME
+netstat \- show network status
+.SH SYNOPSIS
+.nf
+\fBnetstat\fR [\fB-anuvR\fR] [\fB-f\fR \fIaddress_family\fR] [\fB-P\fR \fIprotocol\fR]
+.fi
+
+.LP
+.nf
+\fBnetstat\fR \fB-g\fR [\fB-nv\fR] [\fB-f\fR \fIaddress_family\fR]
+.fi
+
+.LP
+.nf
+\fBnetstat\fR \fB-p\fR [\fB-n\fR] [\fB-f\fR \fIaddress_family\fR]
+.fi
+
+.LP
+.nf
+\fBnetstat\fR \fB-s\fR [\fB-f\fR \fIaddress_family\fR] [\fB-P\fR \fIprotocol\fR]
+ [\fB-T\fR u | d ] [\fIinterval\fR [\fIcount\fR]]
+.fi
+
+.LP
+.nf
+\fBnetstat\fR \fB-m\fR [\fB-T\fR u | d ] [\fB-v\fR] [\fIinterval\fR [\fIcount\fR]]
+.fi
+
+.LP
+.nf
+\fBnetstat\fR \fB-i\fR [\fB-I\fR \fIinterface\fR] [\fB-acn\fR] [\fB-f\fR \fIaddress_family\fR]
+ [\fB-T\fR u | d ] [\fIinterval\fR [\fIcount\fR]]
+.fi
+
+.LP
+.nf
+\fBnetstat\fR \fB-r\fR [\fB-acnvR\fR] [\fB-f\fR \fIaddress_family\fR | \fIfilter\fR]
+.fi
+
+.LP
+.nf
+\fBnetstat\fR \fB-M\fR [\fB-cns\fR] [\fB-f\fR \fIaddress_family\fR]
+.fi
+
+.LP
+.nf
+\fBnetstat\fR \fB-D\fR [\fB-I\fR \fIinterface\fR] [\fB-f\fR \fIaddress_family\fR]
+.fi
+
+.SH DESCRIPTION
+The \fBnetstat\fR command displays the contents of certain network-related data
+structures in various formats, depending on the options you select.
+.LP
+The \fBnetstat\fR command has the several forms shown in the SYNOPSIS section,
+above, listed as follows:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The first form of the command (with no required arguments) displays a list of
+active sockets for each protocol.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The second, third, and fourth forms (\fB-g\fR, \fB-p\fR, and \fB-s\fR options)
+display information from various network data structures.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The fifth form (\fB-m\fR option) displays STREAMS memory statistics.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The sixth form (\fB-i\fR option) shows the state of the interfaces.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The seventh form (\fB-r\fR option) displays the routing table.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The eighth form (\fB-M\fR option) displays the multicast routing table.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The ninth form (\fB-D\fR option) displays the state of \fBDHCP\fR on one or all
+interfaces.
+.RE
+.LP
+These forms are described in greater detail below.
+.LP
+With no arguments (the first form), \fBnetstat\fR displays connected sockets
+for \fBPF_INET\fR, \fBPF_INET6\fR, and \fBPF_UNIX\fR, unless modified otherwise
+by the \fB-f\fR option.
+.SH OPTIONS
+.ne 2
+.na
+\fB-a\fR
+.ad
+.sp .6
+.RS 4n
+Show the state of all sockets, all routing table entries, or all interfaces,
+both physical and logical. Normally, listener sockets used by server processes
+are not shown. Under most conditions, only interface, host, network, and
+default routes are shown and only the status of physical interfaces is shown.
+.RE
+
+.sp
+.ne 2
+.na
+\fB-c\fR
+.ad
+.sp .6
+.RS 4n
+Print IPv4 networks using CIDR (x.y.z.a/NN) notation with the \fB-i\fR,
+\fB-r\fR, and \fB-M\fR options. IPv6 networks default to this, but due to
+backward compatibility, IPv4 ones do not without this flag. A noncontiguous
+IPv4 netmask will print "/NM" if this flag is enabled.
+.RE
+
+.sp
+.ne 2
+.na
+\fB-f\fR \fIaddress_family\fR
+.ad
+.sp .6
+.RS 4n
+Limit all displays to those of the specified \fIaddress_family\fR. The value of
+\fIaddress_family\fR can be one of the following:
+.sp
+.ne 2
+.na
+\fBinet\fR
+.ad
+.RS 9n
+For the \fBAF_INET\fR address family showing IPv4 information.
+.RE
+
+.sp
+.ne 2
+.na
+\fBinet6\fR
+.ad
+.RS 9n
+For the \fBAF_INET6\fR address family showing IPv6 information.
+.RE
+
+.sp
+.ne 2
+.na
+\fBunix\fR
+.ad
+.RS 9n
+For the \fBAF_UNIX\fR address family.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB-f\fR \fIfilter\fR
+.ad
+.sp .6
+.RS 4n
+With \fB-r\fR only, limit the display of routes to those matching the specified
+filter. A filter rule consists of a \fIkeyword\fR:\fIvalue\fR pair. The known
+keywords and the value syntax are:
+.sp
+.ne 2
+.na
+\fBaf:\fR{\fBinet\fR|\fBinet6\fR|\fBunix\fR|\fInumber\fR}
+.ad
+.sp .6
+.RS 4n
+Selects an address family. This is identical to \fB-f\fR \fIaddress_family\fR
+and both syntaxes are supported.
+.RE
+
+.sp
+.ne 2
+.na
+\fBoutif\fR:{\fIname\fR|\fIifIndex\fR|\fBany\fR|\fBnone\fR}
+.ad
+.sp .6
+.RS 4n
+Selects an output interface. You can specify the interface by name (such as
+\fBhme0\fR) or by \fBifIndex\fR number (for example, \fB2\fR). If \fBany\fR is
+used, the filter matches all routes having a specified interface (anything
+other than null). If \fBnone\fR is used, the filter matches all routes having a
+null interface. Note that you can view the index number (\fIifIndex\fR) for an
+interface with the \fB-a\fR option of \fBifconfig\fR(8).
+.RE
+
+.sp
+.ne 2
+.na
+\fBdst\fR:{\fIip-address\fR[/\fImask\fR]|\fBany\fR|\fBnone\fR}
+.ad
+.sp .6
+.RS 4n
+Selects a destination IP address. If specified with a mask length, then any
+routes with matching or longer (more specific) masks are selected. If \fBany\fR
+is used, then all but addresses but 0 are selected. If \fBnone\fR is used, then
+address 0 is selected.
+.RE
+
+.sp
+.ne 2
+.na
+\fBflags:\fR[\fB+ -\fR]?[\fBABDGHLMSU\fR]\fB+\fR
+.ad
+.sp .6
+.RS 4n
+Selects routes tagged with the specified flags. By default, the flags as
+specified must be set in order to match. With a leading \fB+\fR, the flags
+specified must be set but others are ignored. With a leading \fB-\fR, the flags
+specified must not be set and others are permitted.
+.RE
+
+You can specify multiple instances of \fB-f\fR to specify multiple filters. For
+example:
+.sp
+.in +2
+.nf
+% netstat -nr -f outif:hme0 -f outif:hme1 -f dst:10.0.0.0/8
+.fi
+.in -2
+.sp
+
+The preceding command displays routes within network 10.0.0.0/8, with mask
+length 8 or greater, and an output interface of either \fBhme0\fR or
+\fBhme1\fR, and excludes all other routes.
+.RE
+
+.sp
+.ne 2
+.na
+\fB-g\fR
+.ad
+.sp .6
+.RS 4n
+Show the multicast group memberships for all interfaces. If the \fB-v\fR option
+is included, source-specific membership information is also displayed. See
+DISPLAYS, below.
+.RE
+
+.sp
+.ne 2
+.na
+\fB-i\fR
+.ad
+.sp .6
+.RS 4n
+Show the state of the interfaces that are used for \fBIP\fR traffic. Normally
+this shows statistics for the physical interfaces. When combined with the
+\fB-a\fR option, this will also report information for the logical interfaces.
+See \fBifconfig\fR(8).
+.RE
+
+.sp
+.ne 2
+.na
+\fB-m\fR
+.ad
+.sp .6
+.RS 4n
+Show the STREAMS memory statistics.
+.RE
+
+.sp
+.ne 2
+.na
+\fB-n\fR
+.ad
+.sp .6
+.RS 4n
+Show network addresses as numbers. \fBnetstat\fR normally displays addresses as
+symbols. This option may be used with any of the display formats.
+.RE
+
+.sp
+.ne 2
+.na
+\fB-p\fR
+.ad
+.sp .6
+.RS 4n
+Show the net to media tables. See DISPLAYS, below.
+.RE
+
+.sp
+.ne 2
+.na
+\fB-r\fR
+.ad
+.sp .6
+.RS 4n
+Show the routing tables. Normally, only interface, host, network, and default
+routes are shown, but when this option is combined with the \fB-a\fR option,
+all routes will be displayed, including cache. If you have not set up a
+multicast route, \fB-ra\fR might not show any multicast routing entries,
+although the kernel will derive such an entry if needed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB-s\fR
+.ad
+.sp .6
+.RS 4n
+Show per-protocol statistics. When used with the \fB-M\fR option, show
+multicast routing statistics instead. When used with the \fB-a\fR option,
+per-interface statistics will be displayed, when available, in addition to
+statistics global to the system. See DISPLAYS, below.
+.RE
+
+.sp
+.ne 2
+.na
+\fB-T\fR \fBu\fR | \fBd\fR
+.ad
+.sp .6
+.RS 4n
+Display a time stamp.
+.sp
+Specify \fBu\fR for a printed representation of the internal representation of
+time. See \fBtime\fR(2). Specify \fBd\fR for standard date format. See
+\fBdate\fR(1).
+.RE
+
+.sp
+.ne 2
+.na
+\fB-u\fR
+.ad
+.sp .6
+.RS 4n
+For each network endpoint show the list of processes which currently have an
+open file descriptor pointing to that endpoint. For each process in that list,
+show the username, process ID and associated program; the information
+may be truncated. Where multiple processes are associated with an endpoint,
+a line will be output for each process.
+.sp
+While the system gathers this information, the processes associated with a
+given endpoint may change. If such a change occurs, it may not be reflected in
+the output.
+.RE
+
+.sp
+.ne 2
+.na
+\fB-v\fR
+.ad
+.sp .6
+.RS 4n
+Verbose. Show additional information for the sockets, STREAMS memory
+statistics, routing table, and multicast group memberships. In conjunction with
+the \fB-u\fR flag, show the arguments with which the process was started;
+these may be truncated.
+.RE
+
+.sp
+.ne 2
+.na
+\fB-I\fR \fIinterface\fR
+.ad
+.sp .6
+.RS 4n
+Show the state of a particular interface. \fIinterface\fR can be any valid
+interface such as \fBhme0\fR or \fBeri0\fR. Normally, the status and statistics
+for physical interfaces are displayed. When this option is combined with the
+\fB-a\fR option, information for the logical interfaces is also reported.
+.RE
+
+.sp
+.ne 2
+.na
+\fB-M\fR
+.ad
+.sp .6
+.RS 4n
+Show the multicast routing tables. When used with the \fB-s\fR option, show
+multicast routing statistics instead.
+.RE
+
+.sp
+.ne 2
+.na
+\fB-P\fR \fIprotocol\fR
+.ad
+.sp .6
+.RS 4n
+Limit display of statistics or state of all sockets to those applicable to
+\fIprotocol\fR. The protocol can be one of \fBip\fR, \fBipv6\fR, \fBicmp\fR,
+\fBicmpv6\fR, \fBicmp\fR, \fBicmpv6\fR, \fBigmp\fR, \fBudp\fR, \fBtcp\fR,
+\fBrawip\fR. \fBrawip\fR can also be specified as \fBraw\fR. The command
+accepts protocol options only as all lowercase.
+.RE
+
+.sp
+.ne 2
+.na
+\fB-D\fR
+.ad
+.sp .6
+.RS 4n
+Show the status of \fBDHCP\fR configured interfaces.
+.RE
+
+.sp
+.ne 2
+.na
+\fB-R\fR
+.ad
+.sp .6
+.RS 4n
+This modifier displays extended security attributes for sockets and routing
+table entries. The \fB-R\fR modifier is available only if the system is
+configured with the Solaris Trusted Extensions feature.
+.sp
+With \fB-r\fR only, this option displays the routing entries' gateway security
+attributes. See \fBroute\fR(8) for more information on security attributes.
+.sp
+When displaying socket information using the first form of the command, this
+option displays additional information for Multi-Level Port(MLP) sockets. This
+includes:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The label for the peer if the socket is connected.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The following flags can be appended to the socket's "State" output:
+.RS
+
+.sp
+.ne 2
+.na
+\fBP\fR
+.ad
+.RS 5n
+The socket is a MLP on zone-private IP addresses.
+.RE
+
+.sp
+.ne 2
+.na
+\fBS\fR
+.ad
+.RS 5n
+The socket is a MLP on IP addresses shared between zones.
+.RE
+.SH OPERANDS
+.ne 2
+.na
+\fB\fIinterval\fR\fR
+.ad
+.RS 12n
+Display statistics accumulated since last display every \fIinterval\fR seconds,
+repeating forever, unless \fIcount\fR is specified. When invoked with
+\fIinterval\fR, the first row of netstat output shows statistics accumulated
+since last reboot.
+.sp
+The following options support \fIinterval\fR: \fB-i\fR, \fB-m\fR, \fB-s\fR and
+\fB-Ms\fR. Some values are configuration parameters and are just redisplayed at
+each interval.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIcount\fR\fR
+.ad
+.RS 12n
+Display interface statistics the number of times specified by \fIcount\fR, at
+the interval specified by \fIinterval\fR.
+.RE
+
+.SH DISPLAYS
+.SS "Active Sockets (First Form)"
+The display for each active socket shows the local and remote address, the send
+and receive queue sizes (in bytes), the send and receive windows (in bytes),
+and the internal state of the protocol.
+.LP
+The symbolic format normally used to display socket addresses is either:
+.sp
+.in +2
+.nf
+\fBhostname\fR.\fIport\fR
+.fi
+.in -2
+.sp
+when the name of the host is specified, or
+.sp
+.in +2
+.nf
+\fInetwork\fR.\fIport\fR
+.fi
+.in -2
+.sp
+if a socket address specifies a network but no specific host.
+.LP
+The numeric host address or network number associated with the socket is used
+to look up the corresponding symbolic hostname or network name in the
+\fIhosts\fR or \fInetworks\fR database.
+.LP
+If the network or hostname for an address is not known, or if the \fB-n\fR
+option is specified, the numerical network address is shown. Unspecified, or
+"wildcard", addresses and ports appear as an asterisk (\fB*\fR). For more
+information regarding the Internet naming conventions, refer to \fBinet\fR(4P)
+and \fBinet6\fR(4P).
+.LP
+For SCTP sockets, because an endpoint can be represented by multiple addresses,
+the verbose option (\fB-v\fR) displays the list of all the local and remote
+addresses.
+.SS "\fITCP Sockets\fR"
+The possible state values for \fBTCP\fR sockets are as follows:
+.sp
+.ne 2
+.na
+\fBBOUND\fR
+.ad
+.RS 16n
+Bound, ready to connect or listen.
+.RE
+
+.sp
+.ne 2
+.na
+\fBCLOSED\fR
+.ad
+.RS 16n
+Closed. The socket is not being used.
+.RE
+
+.sp
+.ne 2
+.na
+\fBCLOSING\fR
+.ad
+.RS 16n
+Closed, then remote shutdown; awaiting acknowledgment.
+.RE
+
+.sp
+.ne 2
+.na
+\fBCLOSE_WAIT\fR
+.ad
+.RS 16n
+Remote shutdown; waiting for the socket to close.
+.RE
+
+.sp
+.ne 2
+.na
+\fBESTABLISHED\fR
+.ad
+.RS 16n
+Connection has been established.
+.RE
+
+.sp
+.ne 2
+.na
+\fBFIN_WAIT_1\fR
+.ad
+.RS 16n
+Socket closed; shutting down connection.
+.RE
+
+.sp
+.ne 2
+.na
+\fBFIN_WAIT_2\fR
+.ad
+.RS 16n
+Socket closed; waiting for shutdown from remote.
+.RE
+
+.sp
+.ne 2
+.na
+\fBIDLE\fR
+.ad
+.RS 16n
+Idle, opened but not bound.
+.RE
+
+.sp
+.ne 2
+.na
+\fBLAST_ACK\fR
+.ad
+.RS 16n
+Remote shutdown, then closed; awaiting acknowledgment.
+.RE
+
+.sp
+.ne 2
+.na
+\fBLISTEN\fR
+.ad
+.RS 16n
+Listening for incoming connections.
+.RE
+
+.sp
+.ne 2
+.na
+\fBSYN_RECEIVED\fR
+.ad
+.RS 16n
+Initial synchronization of the connection under way.
+.RE
+
+.sp
+.ne 2
+.na
+\fBSYN_SENT\fR
+.ad
+.RS 16n
+Actively trying to establish connection.
+.RE
+
+.sp
+.ne 2
+.na
+\fBTIME_WAIT\fR
+.ad
+.RS 16n
+Wait after close for remote shutdown retransmission.
+.RE
+
+.SS "\fISCTP Sockets\fR"
+The possible state values for SCTP sockets are as follows:
+.sp
+.ne 2
+.na
+\fBCLOSED\fR
+.ad
+.RS 21n
+Closed. The socket is not being used.
+.RE
+
+.sp
+.ne 2
+.na
+\fBLISTEN\fR
+.ad
+.RS 21n
+Listening for incoming associations.
+.RE
+
+.sp
+.ne 2
+.na
+\fBESTABLISHED\fR
+.ad
+.RS 21n
+Association has been established.
+.RE
+
+.sp
+.ne 2
+.na
+\fBCOOKIE_WAIT\fR
+.ad
+.RS 21n
+\fBINIT\fR has been sent to the peer, awaiting acknowledgment.
+.RE
+
+.sp
+.ne 2
+.na
+\fBCOOKIE_ECHOED\fR
+.ad
+.RS 21n
+State cookie from the INIT-ACK has been sent to the peer, awaiting
+acknowledgement.
+.RE
+
+.sp
+.ne 2
+.na
+\fBSHUTDOWN_PENDING\fR
+.ad
+.RS 21n
+\fBSHUTDOWN\fR has been received from the upper layer, awaiting acknowledgement
+of all outstanding \fBDATA\fR from the peer.
+.RE
+
+.sp
+.ne 2
+.na
+\fBSHUTDOWN_SENT\fR
+.ad
+.RS 21n
+All outstanding data has been acknowledged in the \fBSHUTDOWN_SENT\fR state.
+\fBSHUTDOWN\fR has been sent to the peer, awaiting acknowledgement.
+.RE
+
+.sp
+.ne 2
+.na
+\fBSHUTDOWN_RECEIVED\fR
+.ad
+.RS 21n
+\fBSHUTDOWN\fR has been received from the peer, awaiting acknowledgement of all
+outstanding \fBDATA\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBSHUTDOWN_ACK_SENT\fR
+.ad
+.RS 21n
+All outstanding data has been acknowledged in the \fBSHUTDOWN_RECEIVED\fR
+state. \fBSHUTDOWN_ACK\fR has been sent to the peer.
+.RE
+
+.SS "Network Data Structures (Second Through Fifth Forms)"
+The form of the display depends upon which of the \fB-g\fR, \fB-m\fR, \fB-p\fR,
+or \fB-s\fR options you select.
+.sp
+.ne 2
+.na
+\fB-g\fR
+.ad
+.RS 6n
+Displays the list of multicast group membership.
+.RE
+
+.sp
+.ne 2
+.na
+\fB-m\fR
+.ad
+.RS 6n
+Displays the memory usage, for example, STREAMS mblks.
+.RE
+
+.sp
+.ne 2
+.na
+\fB-p\fR
+.ad
+.RS 6n
+Displays the net to media mapping table. For IPv4, the address resolution table
+is displayed. See \fBarp\fR(8). For IPv6, the neighbor cache is displayed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB-s\fR
+.ad
+.RS 6n
+Displays the statistics for the various protocol layers.
+.RE
+
+.sp
+.LP
+The statistics use the MIB specified variables. The defined values for
+\fBipForwarding\fR are:
+.sp
+.ne 2
+.na
+\fBforwarding (1)\fR
+.ad
+.RS 21n
+Acting as a gateway.
+.RE
+
+.sp
+.ne 2
+.na
+\fBnot-forwarding (2)\fR
+.ad
+.RS 21n
+Not acting as a gateway.
+.RE
+
+.sp
+.LP
+The IPv6 and ICMPv6 protocol layers maintain per-interface statistics. If the
+\fB-a\fR option is specified with the \fB-s\fR option, then the per-interface
+statistics as well as the total sums are displayed. Otherwise, just the sum of
+the statistics are shown.
+.LP
+For the second, third, and fourth forms of the command, you must specify at
+least \fB-g\fR, \fB-p\fR, or \fB-s\fR. You can specify any combination of these
+options. You can also specify \fB-m\fR (the fifth form) with any set of the
+\fB-g\fR, \fB-p\fR, and \fB-s\fR options. If you specify more than one of these
+options, \fBnetstat\fR displays the information for each one of them.
+.SS "Interface Status (Sixth Form)"
+The interface status display lists information for all current interfaces, one
+interface per line. If an interface is specified using the \fB-I\fR option, it
+displays information for only the specified interface.
+.LP
+The list consists of the interface name, \fBmtu\fR (maximum transmission unit,
+or maximum packet size)(see \fBifconfig\fR(8)), the network to which the
+interface is attached, addresses for each interface, and counter associated
+with the interface. The counters show the number of input packets, input
+errors, output packets, output errors, and collisions, respectively. For
+Point-to-Point interfaces, the Net/Dest field is the name or address on the
+other side of the link.
+.LP
+If the \fB-a\fR option is specified with either the \fB-i\fR option or the
+\fB-I\fR option, then the output includes names of the physical interface(s),
+counts for input packets and output packets for each logical interface, plus
+additional information.
+.LP
+If the \fB-n\fR option is specified, the list displays the IP address instead
+of the interface name.
+.LP
+If an optional \fIinterval\fR is specified, the output will be continually
+displayed in \fIinterval\fR seconds until interrupted by the user or until
+\fIcount\fR is reached. See OPERANDS.
+.LP
+The physical interface is specified using the \fB-I\fR option. When used with
+the \fIinterval\fR operand, output for the \fB-I\fR option has the following
+format:
+.sp
+.in +2
+.nf
+input eri0 output input (Total) output
+packets errs packets errs colls packets errs packets errs colls
+227681 0 659471 1 502 261331 0 99597 1 502
+10 0 0 0 0 10 0 0 0 0
+8 0 0 0 0 8 0 0 0 0
+10 0 2 0 0 10 0 2 0 0
+.fi
+.in -2
+.sp
+.LP
+If the input interface is not specified, the first interface of address family
+\fBinet\fR or \fBinet6\fR will be displayed.
+.SS "Routing Table (Seventh Form)"
+The routing table display lists the available routes and the status of each.
+Each route consists of a destination host or network, and a gateway to use in
+forwarding packets. The \fIflags\fR column shows the status of the route. These
+flags are as follows:
+.sp
+.ne 2
+.na
+\fBU\fR
+.ad
+.RS 5n
+Indicates route is \fBup\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBG\fR
+.ad
+.RS 5n
+Route is to a gateway.
+.RE
+
+.sp
+.ne 2
+.na
+\fBH\fR
+.ad
+.RS 5n
+Route is to a host and not a network.
+.RE
+
+.sp
+.ne 2
+.na
+\fBM\fR
+.ad
+.RS 5n
+Redundant route established with the \fB-multirt\fR option.
+.RE
+
+.sp
+.ne 2
+.na
+\fBS\fR
+.ad
+.RS 5n
+Route was established using the \fB-setsrc\fR option.
+.RE
+
+.sp
+.ne 2
+.na
+\fBD\fR
+.ad
+.RS 5n
+Route was created dynamically by a redirect.
+.RE
+
+.sp
+.LP
+If the \fB-a\fR option is specified, there will be routing entries with the
+following flags:
+.sp
+.ne 2
+.na
+\fBA\fR
+.ad
+.RS 5n
+Combined routing and address resolution entries.
+.RE
+
+.sp
+.ne 2
+.na
+\fBB\fR
+.ad
+.RS 5n
+Broadcast addresses.
+.RE
+
+.sp
+.ne 2
+.na
+\fBL\fR
+.ad
+.RS 5n
+Local addresses for the host.
+.RE
+
+.LP
+Interface routes are created for each interface attached to the local host; the
+gateway field for such entries shows the address of the outgoing interface.
+.LP
+The \fBuse\fR column displays the number of packets sent using a combined
+routing and address resolution (\fBA\fR) or a broadcast (\fBB\fR) route. For a
+local (\fBL\fR) route, this count is the number of packets received, and for
+all other routes it is the number of times the routing entry has been used to
+create a new combined route and address resolution entry.
+.LP
+The \fIinterface\fR entry indicates the network interface utilized for the
+route.
+.SS "Multicast Routing Tables (Eighth Form)"
+The multicast routing table consists of the virtual interface table and the
+actual routing table.
+.SS "DHCP Interface Information (Ninth Form)"
+The \fBDHCP\fR interface information consists of the interface name, its
+current state, lease information, packet counts, and a list of flags.
+.LP
+The states correlate with the specifications set forth in \fIRFC 2131\fR.
+.LP
+Lease information includes:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+when the lease began;
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+when lease renewal will begin; and
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+when the lease will expire.
+.RE
+.sp
+.LP
+The flags currently defined include:
+.sp
+.ne 2
+.na
+\fBBOOTP\fR
+.ad
+.RS 11n
+The interface has a lease obtained through \fBBOOTP\fR (IPv4 only).
+.RE
+
+.sp
+.ne 2
+.na
+\fBBUSY\fR
+.ad
+.RS 11n
+The interface is busy with a \fBDHCP\fR transaction.
+.RE
+
+.sp
+.ne 2
+.na
+\fBPRIMARY\fR
+.ad
+.RS 11n
+The interface is the primary interface. See \fBdhcpinfo\fR(1) and
+\fBifconfig\fR(8).
+.RE
+
+.sp
+.ne 2
+.na
+\fBFAILED\fR
+.ad
+.RS 11n
+The interface is in failure state and must be manually restarted.
+.RE
+
+.LP
+Packet counts are maintained for the number of packets sent, the number of
+packets received, and the number of lease offers declined by the \fBDHCP\fR
+client. All three counters are initialized to zero and then incremented while
+obtaining a lease. The counters are reset when the period of lease renewal
+begins for the interface. Thus, the counters represent either the number of
+packets sent, received, and declined while obtaining the current lease, or the
+number of packets sent, received, and declined while attempting to obtain a
+future lease.
+.SH FILES
+.ne 2
+.na
+\fB/etc/default/inet_type\fR
+.ad
+.RS 26n
+\fBDEFAULT_IP\fR setting
+.RE
+
+.SH SEE ALSO
+.BR dhcpinfo (1),
+.BR kstat (4D),
+.BR inet (4P),
+.BR inet6 (4P),
+.BR hosts (5),
+.BR inet_type (5),
+.BR networks (5),
+.BR protocols (5),
+.BR services (5),
+.BR attributes (7),
+.BR dhcp (7),
+.BR arp (8),
+.BR dhcpagent (8),
+.BR ifconfig (8),
+.BR iostat (8),
+.BR kstat (8),
+.BR mibiisa (8),
+.BR ndp (8),
+.BR savecore (8),
+.BR vmstat (8)
+.sp
+.LP
+Droms, R., \fIRFC 2131, Dynamic Host Configuration Protocol\fR, Network Working
+Group, March 1997.
+.sp
+.LP
+Droms, R. \fIRFC 3315, Dynamic Host Configuration Protocol for IPv6
+(DHCPv6)\fR. Cisco Systems. July 2003.
+.SH NOTES
+When displaying interface information, \fBnetstat\fR honors the
+\fBDEFAULT_IP\fR setting in \fB/etc/default/inet_type\fR. If it is set to
+\fBIP_VERSION4\fR, then \fBnetstat\fR will omit information relating to IPv6
+interfaces, statistics, connections, routes and the like.
+.LP
+However, you can override the \fBDEFAULT_IP\fR setting in
+\fB/etc/default/inet_type\fR on the command-line. For example, if you have used
+the command-line to explicitly request IPv6 information by using the
+\fBinet6\fR address family or one of the IPv6 protocols, it will override the
+\fBDEFAULT_IP\fR setting.
+.LP
+If you need to examine network status information following a kernel crash, use
+the \fBmdb\fR(1) utility on the \fBsavecore\fR(8) output.
+.LP
+The \fBnetstat\fR utility obtains TCP statistics from the system by opening
+\fB/dev/tcp\fR and issuing queries. Because of this, \fBnetstat\fR might
+display an extra, unused connection in \fBIDLE\fR state when reporting
+connection status.
+.LP
+Previous versions of \fBnetstat\fR had undocumented methods for reporting
+kernel statistics published using the \fBkstat\fR(4D) facility. This
+functionality has been removed. Use \fBkstat\fR(8) instead.
+.LP
+\fBnetstat\fR restricts its output to information that is relevant to the zone
+in which \fBnetstat\fR runs. (This is true for both shared-IP and exclusive-IP
+zones.)
diff --git a/usr/src/man/man8/netstrategy.8 b/usr/src/man/man8/netstrategy.8
new file mode 100644
index 0000000000..d2af7e2fbc
--- /dev/null
+++ b/usr/src/man/man8/netstrategy.8
@@ -0,0 +1,112 @@
+'\" te
+.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH NETSTRATEGY 8 "May 5, 2007"
+.SH NAME
+netstrategy \- return network configuration information
+.SH SYNOPSIS
+.LP
+.nf
+\fB/sbin/netstrategy\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBnetstrategy\fR command determines the network configuration strategy in
+use on a system and returns information in a form that is easily consumable by
+a script. The command returns three tokens:
+.sp
+.in +2
+.nf
+\fI<root filesystem type>\fR \fI<primary interface>\fR \fI<network config strategy>\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+These tokens are described as follows:
+.sp
+.ne 2
+.na
+\fB\fI<root filesystem type>\fR\fR
+.ad
+.sp .6
+.RS 4n
+Type of filesystem that contains the bootable kernel, as would be specified in
+the \fIfstype\fR column of the \fBmnttab\fR(5).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fI<primary interface>\fR\fR
+.ad
+.sp .6
+.RS 4n
+Name of the primary network interface. For a diskless machine, this is the
+interface used to load the kernel.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fI<network config strategy>\fR\fR
+.ad
+.sp .6
+.RS 4n
+The means by which a system obtains its IP address for booting. This can be one
+of \fBrarp\fR, \fBdhcp\fR, or \fBnone\fR.
+.RE
+
+.sp
+.LP
+The \fBnetstrategy\fR command is not intended for use on a command line.
+.SH OPTIONS
+.sp
+.LP
+The \fBnetstrategy\fR command has no options.
+.SH EXIT STATUS
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 7n
+Success.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB!=0\fR\fR
+.ad
+.RS 7n
+An error occurred.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR mnttab (5),
+.BR attributes (7),
+.BR ifconfig (8)
diff --git a/usr/src/man/man8/newaliases.8 b/usr/src/man/man8/newaliases.8
new file mode 100644
index 0000000000..dddc924ae1
--- /dev/null
+++ b/usr/src/man/man8/newaliases.8
@@ -0,0 +1,205 @@
+'\" te
+.\" Copyright (c) 2001 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH NEWALIASES 8 "Sep 14, 2001"
+.SH NAME
+newaliases \- rebuild the data base for the mail aliases file
+.SH SYNOPSIS
+.LP
+.nf
+\fBnewaliases\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBnewaliases\fR rebuilds the random access data base for the mail aliases file
+\fB/etc/mail/aliases\fR.
+.sp
+.LP
+\fBnewaliases\fR accepts all the flags that \fBsendmail\fR(8) accepts.
+However, most of these flags have no effect, except for the \fB-C\fR option and
+three of the \fBProcessing\fR \fBOptions\fR that can be set from a
+configuration file with the \fB-o\fR option:
+.sp
+.ne 2
+.na
+\fB\fB-C\fR\fI /path/to/alt/config/file\fR\fR
+.ad
+.sp .6
+.RS 4n
+Use alternate configuration file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-oA\fR\fIfile\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify possible alias files.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-oL\fR\fIn\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set the default log level to \fIn\fR. Defaults to \fB9\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-on\fR\fR
+.ad
+.sp .6
+.RS 4n
+Validate the \fBRHS\fR of aliases when rebuilding the \fBaliases\fR(5)
+database.
+.RE
+
+.sp
+.LP
+\fBnewaliases\fR runs in verbose mode (\fB-v\fR option) automatically.
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRRunning the \fBnewaliases\fR Command
+.sp
+.LP
+The following command runs \fBnewaliases\fR on an alias file different from the
+\fB/etc/mail/aliases\fR default in \fBsendmail\fR(8):
+
+.sp
+.in +2
+.nf
+ example% \fBnewaliases \fR\fB-oA\fR\fB\fI/path/to/alternate/alias/file\fR\fR
+.fi
+.in -2
+.sp
+
+.SH EXIT STATUS
+.sp
+.LP
+\fBnewaliases\fR returns an exit status describing what it did. The codes are
+defined in \fB/usr/include/sysexits.h\fR.
+.sp
+.ne 2
+.na
+\fB\fBEX_OK\fR\fR
+.ad
+.RS 18n
+Successful completion on all addresses.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEX_NOUSER\fR\fR
+.ad
+.RS 18n
+User name not recognized.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEX_UNAVAILABLE\fR\fR
+.ad
+.RS 18n
+Catchall. Necessary resources were not available.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEX_SYNTAX\fR\fR
+.ad
+.RS 18n
+Syntax error in address.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEX_SOFTWARE\fR\fR
+.ad
+.RS 18n
+Internal software error, including bad arguments.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEX_OSERR\fR\fR
+.ad
+.RS 18n
+Temporary operating system error, such as "cannot fork".
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEX_NOHOST\fR\fR
+.ad
+.RS 18n
+Host name not recognized.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEX_TEMPFAIL\fR\fR
+.ad
+.RS 18n
+Message could not be sent immediately, but was queued.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/aliases\fR\fR
+.ad
+.RS 25n
+Symbolic link to \fB/etc/mail/aliases\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/mail/aliases.pag\fR\fR
+.ad
+.RS 25n
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/mail/aliases.dir\fR\fR
+.ad
+.RS 25n
+\fBndbm\fR files maintained by \fBnewaliases\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/mail/aliases.db\fR\fR
+.ad
+.RS 25n
+Berkeley DataBase file maintained by newaliases
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR aliases (5),
+.BR attributes (7),
+.BR sendmail (8)
diff --git a/usr/src/man/man8/newfs.8 b/usr/src/man/man8/newfs.8
new file mode 100644
index 0000000000..b12a528a56
--- /dev/null
+++ b/usr/src/man/man8/newfs.8
@@ -0,0 +1,513 @@
+'\" te
+.\" Copyright (c) 1983 Regents of the University of California. All rights reserved. The Berkeley software License Agreement specifies the terms and conditions for redistribution. Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved
+.TH NEWFS 8 "Mar 1, 2007"
+.SH NAME
+newfs \- construct a UFS file system
+.SH SYNOPSIS
+.LP
+.nf
+\fBnewfs\fR [\fB-NSBTv\fR] [\fImkfs-options\fR] \fIraw-device\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBnewfs\fR is a "friendly" front-end to the \fBmkfs\fR(8) program for making
+\fBUFS\fR file systems on disk partitions. \fBnewfs\fR calculates the
+appropriate parameters to use and calls \fBmkfs\fR.
+.sp
+.LP
+If run interactively (that is, standard input is a tty), \fBnewfs\fR prompts
+for confirmation before making the file system.
+.sp
+.LP
+If the \fB-N\fR option is not specified and the inodes of the device are not
+randomized, \fBnewfs\fR calls \fBfsirand\fR(8).
+.sp
+.LP
+You must be super-user or have appropriate write privileges to use this
+command, except when creating a \fBUFS\fR file system on a \fIdiskette\fR. See
+\fBEXAMPLES\fR.
+.SS "Creating a Multiterabyte UFS File System"
+.sp
+.LP
+Keep the following limitations in mind when creating a multiterabyte UFS file
+system:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fInbpi\fR is set to 1 Mbyte unless you specifically set it higher. You cannot
+set \fInbpi\fR lower than 1 Mbyte on a multiterabyte UFS file system.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fIfragsize\fR is set equal to \fIbsize\fR.
+.RE
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-N\fR\fR
+.ad
+.sp .6
+.RS 4n
+Print out the file system parameters that would be used to create the file
+system without actually creating the file system. \fBfsirand\fR(8) is not
+called here.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-S\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sends to stdout a human-readable version of the superblock that would be used
+to create a filesystem with the specified configuration parameters.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-B\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sends to stdout a binary (machine-readable) version of the superblock that
+would be used to create a filesystem with the specified configuration
+parameters.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-T\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set the parameters of the file system to allow eventual growth to over a
+terabyte in total file system size. This option sets \fIfragsize\fR to be the
+same as \fIbsize\fR, and sets \fInbpi\fR to 1 Mbyte, unless the \fB-i\fR option
+is used to make it even larger. If you use the \fB-f\fR or \fB-i\fR options to
+specify a \fIfragsize\fR or \fInbpi\fR that is incompatible with this option,
+the user-supplied value of \fIfragsize\fR or \fInbpi\fR is ignored.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.sp .6
+.RS 4n
+Verbose. \fBnewfs\fR prints out its actions, including the parameters passed to
+\fBmkfs\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fImkfs-options\fR\fR
+.ad
+.sp .6
+.RS 4n
+Options that override the default parameters are:
+.sp
+.ne 2
+.na
+\fB\fB-a\fR \fIapc\fR\fR
+.ad
+.sp .6
+.RS 4n
+The number of alternate sectors per cylinder to reserve for bad block
+replacement for SCSI devices only. The default is \fB0\fR.
+.sp
+This option is not applicable for disks with EFI labels and is ignored.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-b\fR \fIbsize\fR\fR
+.ad
+.sp .6
+.RS 4n
+The logical block size of the file system in bytes, either 4096 or 8192. The
+default is \fB8192\fR. The sun4u architecture does not support the \fB4096\fR
+block size.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-c\fR \fIcgsize\fR\fR
+.ad
+.sp .6
+.RS 4n
+The number of cylinders per cylinder group, ranging from \fB16\fR to \fB256\fR.
+The default is calculated by dividing the number of sectors in the file system
+by the number of sectors in a gigabyte. Then, the result is multiplied by
+\fB32\fR. The default value is always between \fB16\fR and \fB256\fR.
+.sp
+\fBmkfs\fR can override this value. See \fBmkfs_ufs\fR(8) for details.
+.sp
+This option is not applicable for disks with EFI labels and is ignored.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-C\fR \fImaxcontig\fR\fR
+.ad
+.sp .6
+.RS 4n
+The maximum number of logical blocks, belonging to one file, that are allocated
+contiguously. The default is calculated as follows:
+.sp
+.in +2
+.nf
+\fBmaxcontig =\fR \fIdisk drive maximum transfer size / disk block size\fR
+.fi
+.in -2
+.sp
+
+If the disk drive's maximum transfer size cannot be determined, the default
+value for \fBmaxcontig\fR is calculated from kernel parameters as follows:
+.sp
+If \fBmaxphys\fR is less than \fBufs_maxmaxphys\fR, which is typically 1 Mbyte,
+then \fBmaxcontig\fR is set to \fBmaxphys\fR. Otherwise, \fBmaxcontig\fR is set
+to \fBufs_maxmaxphys\fR.
+.sp
+You can set \fBmaxcontig\fR to any positive integer value.
+.sp
+The actual value will be the lesser of what has been specified and what the
+hardware supports.
+.sp
+You can subsequently change this parameter by using \fBtunefs\fR(8).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-d\fR \fIgap\fR\fR
+.ad
+.sp .6
+.RS 4n
+Rotational delay. This option is obsolete in the Solaris 10 release. The value
+is always set to \fB0\fR, regardless of the input value.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR \fIfragsize\fR\fR
+.ad
+.sp .6
+.RS 4n
+The smallest amount of disk space in bytes that can be allocated to a file.
+\fBfragsize\fR must be a power of 2 divisor of \fBbsize\fR, where:
+.sp
+\fBbsize\fR / \fBfragsize\fR is 1, 2, 4, or 8.
+.sp
+This means that if the logical block size is \fB4096\fR, legal values for
+\fBfragsize\fR are \fB512\fR, \fB1024\fR, \fB2048\fR, and \fB4096\fR. When the
+logical block size is \fB8192\fR, legal values are \fB1024\fR, \fB2048\fR,
+\fB4096\fR, and \fB8192\fR. The default value is \fB1024\fR.
+.sp
+For file systems greater than 1 terabyte or for file systems created with the
+\fB-T\fR option, \fBfragsize\fR is forced to match block size (\fBbsize\fR).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-i\fR \fInbpi\fR\fR
+.ad
+.sp .6
+.RS 4n
+The number of bytes per inode, which specifies the density of inodes in the
+file system. The number is divided into the total size of the file system to
+determine the number of inodes to create.
+.sp
+This value should reflect the expected average size of files in the file
+system. If fewer inodes are desired, a larger number should be used. To create
+more inodes, a smaller number should be given. The default for \fInbpi\fR is as
+follows:
+.sp
+.in +2
+.nf
+Disk size Density
+
+Less than 1GB 2048
+Less than 2GB 4096
+Less than 3GB 6144
+3GB to 1 Tbyte 8192
+Greater than 1 Tbyte
+ or created with -T 1048576
+.fi
+.in -2
+.sp
+
+The number of inodes can increase if the file system is expanded with the
+\fBgrowfs\fR command.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-m\fR \fIfree\fR\fR
+.ad
+.sp .6
+.RS 4n
+The minimum percentage of free space to maintain in the file system, between 0%
+and 99%, inclusively. This space is off-limits to users. Once the file system
+is filled to this threshold, only the super-user can continue writing to the
+file system.
+.sp
+The default is ((64 Mbytes/partition size) * 100), rounded down to the nearest
+integer and limited between 1% and 10%, inclusively.
+.sp
+This parameter can be subsequently changed using the \fBtunefs\fR(8) command.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR \fInrpos\fR\fR
+.ad
+.sp .6
+.RS 4n
+The number of different rotational positions in which to divide a cylinder
+group. The default is \fB8\fR.
+.sp
+This option is not applicable for disks with EFI labels and is ignored.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-o\fR \fIspace\fR\||\|\fItime\fR\fR
+.ad
+.sp .6
+.RS 4n
+The file system can either be instructed to try to minimize the \fBtime\fR
+spent allocating blocks, or to try to minimize the \fBspace\fR fragmentation on
+the disk. The default is \fItime\fR.
+.sp
+This parameter can subsequently be changed with the \fBtunefs\fR(8) command.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-r\fR \fIrpm\fR\fR
+.ad
+.sp .6
+.RS 4n
+The rotational speed of the disk in revolutions per minute. The default is
+driver- or device-specific.
+.sp
+Note that you specify \fIrpm\fR for \fBnewfs\fR and \fIrps\fR for \fBmkfs\fR.
+.sp
+This option is not applicable for disks with EFI labels and is ignored.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR \fIsize\fR\fR
+.ad
+.sp .6
+.RS 4n
+The size of the file system in sectors. The default is to use the entire
+partition.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-t\fR \fIntrack\fR\fR
+.ad
+.sp .6
+.RS 4n
+The number of tracks per cylinder on the disk. The default is taken from the
+disk label.
+.sp
+This option is not applicable for disks with EFI labels and is ignored.
+.RE
+
+.RE
+
+.SH OPERANDS
+.sp
+.LP
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fB\fIraw-device\fR\fR
+.ad
+.sp .6
+.RS 4n
+The name of a raw special device residing in the \fB/dev\fR directory (for
+example, \fB/dev/rdsk/c0t0d0s6\fR) on which to create the file system.
+.RE
+
+.SH USAGE
+.sp
+.LP
+See \fBlargefile\fR(7) for the description of the behavior of \fBnewfs\fR when
+encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRDisplaying the Parameters for the Raw Special Device
+.sp
+.LP
+The following example verbosely displays the parameters for the raw special
+device, \fBc0t0d0s6\fR. It does not actually create a new file system:
+
+.sp
+.in +2
+.nf
+example# newfs \fB-Nv\fR /dev/rdsk/c0t0d0s6
+mkfs \fB-F\fR ufs \fB-o\fR N /dev/rdsk/c0t0d0s6 1112940 54 15 8192 1024 16 10 60
+2048 t 0 \(mi1 8 /dev/rdsk/c0t0d0s6: 1112940 sectors in
+1374 cylinders of 15 tracks, 54 sectors 569.8MB in 86 cyl
+groups (16 c/g, 6.64MB/g, 3072 i/g) super-block backups
+(for fsck \fB-b\fR #) at:
+32, 13056, 26080, 39104, 52128, 65152, 78176, 91200, 104224, .\|.\|.
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRCreating a \fBUFS\fR File System
+.sp
+.LP
+The following example creates a \fBUFS\fR file system on a diskette that is
+managed by a volume manager that makes use of the mount point \fB/vol\fR.
+
+.sp
+.in +2
+.nf
+example% newfs /vol/dev/aliases/floppy0
+newfs: construct a new file system /vol/dev/aliases/floppy0: (y/n)? y
+/vol/dev/aliases/floppy0: 2880 sectors in 80 cylinders of 2 tracks,
+18 sectors 1.4MB in 5 cyl groups (16 c/g, 0.28MB/g, 128 i/g)
+super-block backups (for fsck \fB-F\fR ufs \fB-o\fR b=#) at:
+32, 640, 1184, 1792, 2336, .\|.\|.
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRCreating a \fBUFS\fR File System That Will Eventually Be Grown
+to a Multiterabyte UFS File System
+.sp
+.LP
+The following example creates a \fBUFS\fR file system that will eventually be
+grown to a multiterabyte UFS file system.
+
+.sp
+.LP
+This command creates a 800-Gbyte file system on the volume,
+\fB/dev/md/rdsk/d99\fR.
+
+.sp
+.in +2
+.nf
+# newfs -T /dev/md/rdsk/d99
+newfs: construct a new file system /dev/md/rdsk/d99: (y/n)? y
+ /dev/md/rdsk/d99: 1677754368 sectors in 45512 cylinders of
+ 144 tracks, 256 sectors
+ 819216.0MB in 1821 cyl groups (25 c/g, 450.00MB/g, 448 i/g) .\|.\|.
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Then, if you increase the volume size for this file system, you can use the
+\fBgrowfs\fR command to expand the file system. The file system is grown to 1.2
+terabytes in this example:
+
+.sp
+.in +2
+.nf
+# growfs -v /dev/md/rdsk/d99
+/usr/lib/fs/ufs/mkfs -G /dev/md/rdsk/d99 2516631552 /dev/md/rdsk/d99:
+ 2516631552 sectors in 68268 cylinders of 144 tracks, 256 sectors
+ 1228824.0MB in 2731 cyl groups (25 c/g, 450.00MB/g, 448 i/g).\|.\|.
+.fi
+.in -2
+.sp
+
+.SH EXIT STATUS
+.sp
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.sp .6
+.RS 4n
+The operation was successful.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB1\fR, \fB10\fR\fR
+.ad
+.sp .6
+.RS 4n
+Usage error or internal error. A message is output to \fBSTDERR\fR explaining
+the error.
+.RE
+
+.sp
+.LP
+Other exit values may be returned by \fBmkfs\fR(8), which is called by
+\fBnewfs\fR.
+.SH SEE ALSO
+.sp
+.LP
+.BR ufs (4FS),
+.BR attributes (7),
+.BR largefile (7),
+.BR fsck (8),
+.BR fsck_ufs (8),
+.BR fsirand (8),
+.BR mkfs (8),
+.BR mkfs_ufs (8),
+.BR tunefs (8)
+.SH DIAGNOSTICS
+.sp
+.ne 2
+.na
+\fB\fBnewfs: No such file or directory\fR\fR
+.ad
+.sp .6
+.RS 4n
+The device specified does not exist, or a disk partition was not specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIspecial\fR\fB: cannot open\fR\fR
+.ad
+.sp .6
+.RS 4n
+You must write access to the device to use this command.
+.RE
+
diff --git a/usr/src/man/man8/newkey.8 b/usr/src/man/man8/newkey.8
new file mode 100644
index 0000000000..dac8fb5292
--- /dev/null
+++ b/usr/src/man/man8/newkey.8
@@ -0,0 +1,96 @@
+'\" te
+.\" Copyright (C) 2005, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH NEWKEY 8 "Feb 25, 2017"
+.SH NAME
+newkey \- create a new Diffie-Hellman key pair in the publickey database
+.SH SYNOPSIS
+.LP
+.nf
+\fBnewkey\fR \fB-h\fR \fIhostname\fR [\fB-s\fR nis | files | ldap]
+.fi
+
+.LP
+.nf
+\fBnewkey\fR \fB-u\fR \fIusername\fR [\fB-s\fR nis | files | ldap]
+.fi
+
+.SH DESCRIPTION
+.LP
+\fBnewkey\fR establishes new public keys for users and machines on the network.
+These keys are needed when using secure \fBRPC\fR or secure \fBNFS\fR service.
+.sp
+.LP
+\fBnewkey\fR prompts for a password for the given \fIusername\fR or
+\fBhostname\fR and then creates a new public/secret Diffie-Hellman 192 bit key
+pair for the user or host. The secret key is encrypted with the given password.
+The key pair can be stored in the \fB/etc/publickey\fR file or the NIS
+\fBpublickey\fR map.
+.sp
+.LP
+\fBnewkey\fR consults the \fBpublickey\fR entry in the name service switch
+configuration file (see \fBnsswitch.conf\fR(5)) to determine which naming
+service is used to store the secure \fBRPC\fR keys. If the \fBpublickey\fR
+entry specifies a unique name service, \fBnewkey\fR will add the key in the
+specified name service. However, if there are multiple name services listed,
+\fBnewkey\fR cannot decide which source to update and will display an error
+message. The user is required to specify the source explicitly with the
+\fB-s\fR option.
+.sp
+.LP
+In the case of NIS, \fBnewkey\fR should be run by the superuser on the master
+NIS server for that domain.
+.sp
+.LP
+In the case of LDAP, \fBnewkey\fR should be run by the superuser on a machine
+that also recognizes the directory manager's bind distinguished name (DN) and
+password to perform an LDAP update for the host.
+.SH OPTIONS
+.ne 2
+.na
+\fB\fB-h\fR \fIhostname\fR\fR
+.ad
+.RS 15n
+Create a new public/secret key pair for the privileged user at the given
+\fBhostname\fR. Prompts for a password for the given \fBhostname\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-u\fR \fIusername\fR\fR
+.ad
+.RS 15n
+Create a new public/secret key pair for the given \fIusername\fR. Prompts for a
+password for the given \fIusername\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR \fBnis\fR\fR
+.ad
+.br
+.na
+\fB\fB-s\fR \fBfiles\fR\fR
+.ad
+.br
+.na
+\fB\fB-s\fR \fBldap\fR\fR
+.ad
+.RS 15n
+Update the database in the specified source:
+\fBnis\fR (for NIS), \fBfiles\fR, or \fBldap\fR (LDAP). Other sources may be
+available in the future.
+.RE
+
+.SH SEE ALSO
+.LP
+.BR chkey (1),
+.BR keylogin (1),
+.BR nsswitch.conf (5),
+.BR publickey (5),
+.BR attributes (7)
diff --git a/usr/src/man/man8/nfs4cbd.8 b/usr/src/man/man8/nfs4cbd.8
new file mode 100644
index 0000000000..d8f808fd90
--- /dev/null
+++ b/usr/src/man/man8/nfs4cbd.8
@@ -0,0 +1,58 @@
+'\" te
+.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH NFS4CBD 8 "Apr 11, 2005"
+.SH NAME
+nfs4cbd \- NFS Version 4 callback daemon
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/nfs/nfs4cbd\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBnfs4cbd\fR daemon manages communication endpoints for the NFS Version 4
+protocol callback program. \fBnfs4cbd\fR runs on the NFS Version 4 client and
+creates a listener port for each transport over which callbacks can be sent.
+.sp
+.LP
+The \fBnfs4cbd\fR daemon is provided for the exclusive use of the NFS version 4
+client.
+.SH SEE ALSO
+.sp
+.LP
+.BR svcs (1),
+.BR attributes (7),
+.BR smf (7),
+.BR mount_nfs (8),
+.BR svcadm (8)
+.SH NOTES
+.sp
+.LP
+The \fBnfs4cbd\fR service is managed by the service management facility,
+\fBsmf\fR(7), under the service identifier:
+.sp
+.in +2
+.nf
+svc:/network/nfs/cbd
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Administrative actions on this service, such as enabling, disabling, or
+requesting restart, can be performed using \fBsvcadm\fR(8). The service's
+status can be queried using the \fBsvcs\fR(1) command.
+.sp
+.LP
+If it is disabled, it will be enabled by \fBmount_nfs\fR(8) and
+\fBautomountd\fR(8) on the first NFSv4 mount, unless its
+\fBapplication/auto_enable\fR property is set to \fBfalse\fR.
+.sp
+.LP
+This daemon might not exist in a future release of Solaris.
diff --git a/usr/src/man/man8/nfsd.8 b/usr/src/man/man8/nfsd.8
new file mode 100644
index 0000000000..595e4077af
--- /dev/null
+++ b/usr/src/man/man8/nfsd.8
@@ -0,0 +1,235 @@
+.\"
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.\"
+.\"
+.\" Copyright 1989 AT&T
+.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 2016 Nexenta Systems, Inc.
+.\" Copyright 2020 Joyent, Inc.
+.\"
+.Dd February 4, 2020
+.Dt NFSD 8
+.Os
+.Sh NAME
+.Nm nfsd
+.Nd NFS daemon
+.Sh SYNOPSIS
+.Nm /usr/lib/nfs/nfsd
+.Op Fl a
+.Op Fl c Ar max_conn
+.Op Fl l Ar listen_backlog
+.Op Fl p Ar protocol
+.Op Fl t Ar device
+.Op Ar nservers
+.Sh DESCRIPTION
+.Nm
+is the daemon that handles client file system requests.
+Only users with
+.Brq Sy PRIV_SYS_NFS
+and sufficient privileges to write to
+.Pa /var/run
+can run this daemon.
+.Pp
+The
+.Nm
+daemon is automatically invoked using
+.Xr share 8
+with the
+.Fl a
+option.
+.Pp
+By default,
+.Nm
+starts over the TCP and UDP transports for versions 2 and 3.
+By default, it starts over the TCP for version 4.
+You can change this with the
+.Fl p
+option.
+.Pp
+A previously invoked
+.Nm
+daemon started with or without options must be stopped before invoking another
+.Nm
+command.
+.Pp
+See
+.Xr nfs 5
+for available configuration properties for
+.Nm .
+.Ss Options
+The following options are supported:
+.Bl -tag -width Ds
+.It Fl a
+Start a NFS daemon over all available connectionless and connection-oriented
+transports, including UDP and TCP.
+Equivalent of setting the
+.Sy protocol
+property to
+.Sy all .
+.It Fl c Ar max_conn
+Set the maximum number of connections allowed to the NFS server over
+connection-oriented transports.
+By default, the number of connections is unlimited.
+Equivalent of the
+.Sy max_connections
+property.
+.It Fl l
+Set connection queue length for the NFS server over a connection-oriented
+transport.
+The default value is 32 entries.
+Equivalent of the
+.Sy listen_backlog
+property.
+.It Fl p Ar protocol
+Start a NFS daemon over the specified protocol.
+Equivalent of the
+.Sy protocol
+property.
+.It Fl t Ar device
+Start a NFS daemon for the transport specified by the given device.
+Equivalent of the
+.Sy device
+property.
+.El
+.Ss Operands
+The following operands are supported:
+.Bl -tag -width Ds
+.It Ar nservers
+This sets the maximum number of concurrent NFS requests that the server can
+handle.
+This concurrency is achieved by up to
+.Ar nservers
+threads created as needed in the kernel.
+.Ar nservers
+should be based on the load expected on this server.
+16 is the usual number of
+.Ar nservers .
+If
+.Ar nservers
+is not specified, the maximum number of concurrent NFS requests will default to
+1.
+Equivalent of the
+.Sy servers
+property.
+.El
+.Ss Usage
+If the
+.Sy nfs_portmon
+variable is set to non-zero value in
+.Pa /etc/system ,
+then clients are required to use privileged ports
+.Po ports <
+.Dv IPPORT_RESERVED
+.Pc
+to get NFS services.
+This variable is equal to zero by default.
+This variable has been moved from the
+.Qq nfs
+module to the
+.Qq nfssrv
+module.
+To set the variable, edit the
+.Pa /etc/system
+file and add this entry:
+.Bd -literal -offset indent
+set nfssrv:nfs_portmon = 1
+.Ed
+.Sh FILES
+.Bl -tag -width Ds
+.It Pa \&.nfsXXX
+Client machine pointer to an open-but-unlinked file.
+.It Pa /etc/system
+System configuration information file.
+.It Xo
+.Pa /var/nfs/v4_state
+.br
+.Pa /var/nfs/v4_oldstate
+.Xc
+Directories used by the server to manage client state information.
+These directories should not be removed.
+.El
+.Sh EXIT STATUS
+.Bl -tag -width Ds
+.It Sy 0
+Daemon started successfully.
+.It Sy 1
+Daemon failed to start.
+.El
+.Sh SEE ALSO
+.Xr svcs 1 ,
+.Xr nfs 5 ,
+.Xr sharetab 5 ,
+.Xr system 5 ,
+.Xr attributes 7 ,
+.Xr smf 7 ,
+.Xr zones 7 ,
+.Xr mountd 8 ,
+.Xr share 8 ,
+.Xr sharectl 8 ,
+.Xr sharemgr 8 ,
+.Xr svcadm 8
+.Sh NOTES
+Manually starting and restarting
+.Nm
+is not recommended.
+If it is necessary to do so, use
+.Nm svcadm
+to enable or disable the nfs service
+.Pq svc:/network/nfs/server .
+If it is disabled, it will be enabled by
+.Xr share_nfs 8 ,
+unless its
+.Sy application Ns / Ns Sy auto_enable
+property is set to
+.Sy false .
+See
+.Xr smf 7
+and
+.Xr svcadm 8
+for more information.
+.Pp
+The
+.Nm
+service is managed by the service management facility,
+.Xr smf 7 ,
+under the service identifier:
+.Bd -literal -offset indent
+svc:/network/nfs/server
+.Ed
+.Pp
+Administrative actions on this service, such as enabling, disabling, or
+requesting restart, can be performed using
+.Xr svcadm 8 .
+The service's status can be queried using the
+.Xr svcs 1
+command.
+.Pp
+If
+.Nm
+is killed with
+.Sy SIGTERM ,
+it will not be restarted by the service management facility.
+Instead,
+.Nm
+can be restarted by other signals, such as
+.Sy SIGINT .
+.Pp
+NFS service, which includes
+.Nm ,
+can run inside a non-global zone.
+See the discussion under ZONES in
+.Xr nfs 5
+for more information.
diff --git a/usr/src/man/man8/nfslogd.8 b/usr/src/man/man8/nfslogd.8
new file mode 100644
index 0000000000..46e188d022
--- /dev/null
+++ b/usr/src/man/man8/nfslogd.8
@@ -0,0 +1,253 @@
+'\" te
+.\" Copyright 2014 Nexenta Systems, Inc. All rights reserved.
+.\" Copyright (c) 1999, Sun Microsystems, Inc.
+.\" All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH NFSLOGD 8 "Nov 24, 2014"
+.SH NAME
+nfslogd \- nfs logging daemon
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/nfs/nfslogd\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBnfslogd\fR daemon provides operational logging to the Solaris \fBNFS\fR
+server. It is the \fBnfslogd\fR daemon's job to generate the activity log by
+analyzing the \fBRPC\fR operations processed by the \fBNFS\fR server. The log
+will only be generated for file systems exported with logging enabled. This is
+specified at file system export time by means of the \fBshare_nfs\fR(8)
+command.
+.sp
+.LP
+NFS server logging is not supported on Solaris machines that are using NFS
+Version 4.
+.sp
+.LP
+Each record in the log file includes a time stamp, the \fBIP\fR address (or
+hostname if it can be resolved) of the client system, the file or directory
+name the operation was performed on, and the type of operation. In the basic
+format, the operation can either be an input (i) or output (o) operation. The
+basic format of the \fBNFS\fR server log is compatible with the log format
+generated by the Washington University \fBFTPd\fR daemon. The log format can be
+extended to include directory modification operations, such as \fBmkdir\fR,
+\fBrmdir\fR, and \fBremove\fR. The extended format is not compatible with the
+Washington University \fBFTPd\fR daemon format. See \fBnfslog.conf\fR(5) for
+details.
+.sp
+.LP
+The \fBNFS\fR server logging mechanism is divided in two phases. The first
+phase is performed by the \fBNFS\fR kernel module, which records raw \fBRPC\fR
+requests and their results in work buffers backed by permanent storage. The
+location of the work buffers is specified in the /\fBetc/nfs/nfslog.conf\fR
+file. Refer to \fBnfslog.conf\fR(5) for more information. The second phase
+involves the \fBnfslogd\fR user-level daemon, which periodically reads the work
+buffers, interprets the raw \fBRPC\fR information, groups related \fBRPC\fR
+operations into single transaction records, and generates the output log. The
+\fBnfslogd\fR daemon then sleeps waiting for more information to be logged to
+the work buffers. The amount of time that the daemon sleeps can be configured
+by modifying the \fBIDLE_TIME\fR parameter in \fB/etc/default/nfslogd\fR. The
+work buffers are intended for internal consumption of the \fBnfslogd\fR daemon.
+.sp
+.LP
+\fBNFS\fR operations use file handles as arguments instead of path names. For
+this reason the \fBnfslogd\fR daemon needs to maintain a database of file
+handle to path mappings in order to log the path name associated with an
+operation instead of the corresponding file handle. A file handle entry is
+added to the database when a client performs a lookup or other \fBNFS\fR
+operation that returns a file handle to the client.
+.sp
+.LP
+Once an \fBNFS\fR client obtains a file handle from a server, it can hold on to
+it for an indefinite time, and later use it as an argument for an \fBNFS\fR
+operation on the file or directory. The \fBNFS\fR client can use the file
+handle even after the server reboots. Because the database needs to survive
+server reboots, it is backed by permanent storage. The location of the database
+is specified by the \fIfhtable\fR parameter in the \fB/etc/nfs/nfslog.conf\fR
+file. This database is intended for the internal use of the \fBnfslogd\fR
+daemon.
+.sp
+.LP
+In order to keep the size of the file handle mapping database manageable,
+\fBnfslogd\fR prunes the database periodically. It removes file handle entries
+that have not been accessed in more than a specified amount of time. The
+\fBPRUNE_TIMEOUT\fR configurable parameter in \fB/etc/default/nfslogd\fR
+specifies the interval length between successive runs of the pruning process.
+A file handle record will be removed if it has not been used since the last
+time the pruning process was executed. Pruning of the database can effectively
+be disabled by setting the \fBPRUNE_TIMEOUT\fR as high as \fBINT_MAX\fR.
+.sp
+.LP
+When pruning is enabled, there is always a risk that a client may have held on
+to a file handle longer than the \fBPRUNE_TIMEOUT\fR and perform an \fBNFS\fR
+operation on the file handle after the matching record in the mapping database
+had been removed. In such case, the pathname for the file handle will not be
+resolved, and the log will include the file handle instead of the pathname.
+.sp
+.LP
+There are various configurable parameters that affect the behavior of the
+\fBnfslogd\fR daemon. These parameters are found in \fB/etc/default/nfslogd\fR
+and are described below:
+.sp
+.ne 2
+.na
+\fB\fBUMASK\fR\fR
+.ad
+.RS 27n
+Sets the file mode for the log files, work buffer files and file handle mapping
+database.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBMIN_PROCESSING_SIZE\fR\fR
+.ad
+.RS 27n
+Specifies the minimum size, in bytes, that the buffer file must reach before
+processing the work information and writing to the log file. The value of
+\fBMIN_PROCESSING_SIZE\fR must be between 1 and \fBulimit\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBIDLE_TIME\fR\fR
+.ad
+.RS 27n
+Specifies the amount of time, in seconds, the daemon should sleep while waiting
+for more information to be placed in the buffer file. \fBIDLE_TIME\fR also
+determines how often the configuration file will be reread. The value of
+\fBIDLE_TIME\fR must be between 1 and \fBINT_MAX\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBMAX_LOGS_PRESERVE\fR\fR
+.ad
+.RS 27n
+The \fBnfslogd\fR periodically cycles its logs. \fBMAX_LOGS_PRESERVE\fR
+specifies the maximum number of log files to save. When \fBMAX_LOGS_PRESERVE\fR
+is reached, the oldest files will be overwritten as new log files are created.
+These files will be saved with a numbered extension, beginning with
+\fBfilename.0\fR. The oldest file will have the highest numbered extension up
+to the value configured for \fBMAX_LOGS_PRESERVE\fR. The value of
+\fBMAX_LOGS_PRESERVE\fR must be between 1 and \fBINT_MAX\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBCYCLE_FREQUENCY\fR\fR
+.ad
+.RS 27n
+Specifies how often, in hours, the log files are cycled. \fBCYCLE_FREQUENCY\fR
+is used to insure that the log files do not get too large. The value of
+\fBCYCLE_FREQUENCY\fR must be between 1 and \fBINT_MAX\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBMAPPING_UPDATE_INTERVAL\fR\fR
+.ad
+.RS 27n
+Specifies the time interval, in seconds, between updates of the records in the
+file handle to path mapping tables. Instead of updating the \fBatime\fR of a
+record each time that record is accessed, it is only updated if it has aged
+based on this parameter. The record access time is used by the pruning routine
+to determine whether the record should be removed from the database. The value
+of this parameter must be between 1 and \fBINT_MAX\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPRUNE_TIMEOUT\fR\fR
+.ad
+.RS 27n
+Specifies when a database record times out, in hours. If the time that elapsed
+since the record was last accessed is greater than \fBPRUNE_TIMEOUT\fR then the
+record can be pruned from the database. The default value for
+\fBPRUNE_TIMEOUT\fR is 168 hours (7 days). The value of \fBPRUNE_TIMEOUT\fR
+must be between 1 and \fBINT_MAX\fR.
+.RE
+
+.SH EXIT STATUS
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 5n
+Daemon started successfully.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB1\fR\fR
+.ad
+.RS 5n
+Daemon failed to start.
+.RE
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/etc/nfs/nfslogtab\fR \fR
+.ad
+.RS 24n
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/nfs/nfslog.conf\fR\fR
+.ad
+.RS 24n
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/default/nfslogd\fR\fR
+.ad
+.RS 24n
+
+.RE
+
+.SH SEE ALSO
+.LP
+.BR nfslog.conf (5),
+.BR attributes (7),
+.BR share_nfs (8)
+.sp
+.LP
+\fI\fR
+.SH NOTES
+.LP
+The \fBnfslogd\fR service is managed by the service management facility,
+\fBsmf\fR(7), under the service identifier:
+.sp
+.in +2
+.nf
+svc:/network/nfs/log
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Administrative actions on this service, such as enabling, disabling, or
+requesting restart, can be performed using \fBsvcadm\fR(8). The service's
+status can be queried using the \fBsvcs\fR(1) command.
diff --git a/usr/src/man/man8/nfsmapid.8 b/usr/src/man/man8/nfsmapid.8
new file mode 100644
index 0000000000..167ca619f6
--- /dev/null
+++ b/usr/src/man/man8/nfsmapid.8
@@ -0,0 +1,136 @@
+.\"
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.\"
+.\"
+.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 2016 Nexenta Systems, Inc.
+.\"
+.Dd March 12, 2016
+.Dt NFSMAPID 8
+.Os
+.Sh NAME
+.Nm nfsmapid
+.Nd NFS user and group id mapping daemon
+.Sh SYNOPSIS
+.Nm /usr/lib/nfs/nfsmapid
+.Sh DESCRIPTION
+The
+.Nm
+daemon maps to and from NFS version 4
+.Sy owner
+and
+.Sy owner_group
+identification attributes and local UID and GID numbers used by both the NFS
+version 4 client and server.
+.Pp
+.Nm
+uses the
+.Sy passwd
+and
+.Sy group
+entries in the
+.Pa /etc/nsswitch.conf
+file to direct how it performs the mappings.
+.Pp
+The
+.Nm
+daemon has no external, customer-accessible interfaces.
+You can, however, administratively configure
+.Nm
+in one of the following ways:
+.Bl -bullet
+.It
+Set the
+.Sy nfsmapid_domain
+property for the
+.Nm nfs
+protocol using
+.Xr sharectl 8 .
+.It
+Specify the
+.Sy _nfsv4idmapdomain
+DNS resource record.
+.El
+.Sh SEE ALSO
+.Xr svcs 1 ,
+.Xr nfs 5 ,
+.Xr attributes 7 ,
+.Xr smf 7 ,
+.Xr automountd 8 ,
+.Xr groupdel 8 ,
+.Xr groupmod 8 ,
+.Xr mount_nfs 8 ,
+.Xr passmgmt 8 ,
+.Xr share_nfs 8 ,
+.Xr sharectl 8 ,
+.Xr svcadm 8 ,
+.Xr userdel 8 ,
+.Xr usermod 8
+.Sh NOTES
+The
+.Nm
+service is managed by the service management facility,
+.Xr smf 7 ,
+under the service identifier:
+.Bd -literal -offset indent
+svc:/network/nfs/mapid
+.Ed
+.Pp
+Administrative actions on this service, such as enabling, disabling, or
+requesting restart, can be performed using
+.Xr svcadm 8 .
+The service's status can be queried using the
+.Xr svcs 1
+command.
+.Pp
+If it is disabled, it will be enabled by
+.Xr mount_nfs 8 ,
+.Xr share_nfs 8 ,
+and
+.Xr automountd 8 ,
+unless its
+.Sy application Ns / Ns Sy auto_enable
+property is set to
+.Sy false .
+.Pp
+.Nm
+caches a user's UID and GID.
+If a user subsequently changes a UID or GID, using one of the utilities listed
+below, the
+.Nm
+cache becomes stale.
+At this point, any NFS operation that gets or set attributes will result in the
+exchange of this stale information.
+To resolve this situation, restart
+.Nm ,
+as follows:
+.Bd -literal -offset indent
+# svcadm restart svc:/network/nfs/mapid:default
+.Ed
+.Pp
+The utilities that allow you to change UID and GID are:
+.Bl -bullet
+.It
+.Xr usermod 8
+.It
+.Xr userdel 8
+.It
+.Xr groupmod 8
+.It
+.Xr groupdel 8
+.It
+.Xr passmgmt 8
+.El
diff --git a/usr/src/man/man8/nfsstat.8 b/usr/src/man/man8/nfsstat.8
new file mode 100644
index 0000000000..a4e695f44f
--- /dev/null
+++ b/usr/src/man/man8/nfsstat.8
@@ -0,0 +1,888 @@
+'\" te
+.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
+.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH NFSSTAT 8 "Jun 16, 2009"
+.SH NAME
+nfsstat \- NFS statistics
+.SH SYNOPSIS
+.LP
+.nf
+\fBnfsstat\fR [\fB-cnrsza\fR] [\fB-T\fR u | d ] [\fB-v\fR \fIversion\fR] [\fIinterval\fR [\fIcount\fR]]
+.fi
+
+.LP
+.nf
+\fBnfsstat\fR \fB-m\fR [\fIpathname\fR]...
+.fi
+
+.SH DESCRIPTION
+.LP
+\fBnfsstat\fR displays statistical information about the \fBNFS\fR and
+\fBRPC\fR (Remote Procedure Call), interfaces to the kernel. It can also be
+used to reinitialize this information. If no options are given the default is
+as follows:
+.sp
+.LP
+\fBnfsstat\fR \fB-csnra\fR
+.sp
+.LP
+The default displays everything, but reinitializes nothing.
+.SH OPTIONS
+.ne 2
+.na
+\fB\fB-a\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display \fBNFS_ACL\fR information.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-c\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display client information. Only the client side \fBNFS\fR, \fBRPC\fR, and
+\fBNFS_ACL\fR information is printed. Can be combined with the \fB-n\fR,
+\fB-r\fR, and \fB-a\fR options to print client side \fBNFS\fR, \fBRPC\fR, and
+\fBNFS_ACL\fR information only.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-m\fR [\fIpathname...\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Display statistics for each \fBNFS\fR mounted file system. If \fIpathname\fR is
+not specified, displays statistics for all NFS mounted file systems. If
+\fIpathname\fR is specified, displays statistics for the NFS mounted file
+systems indicated by \fIpathname\fR.
+.sp
+This includes the server name and address, mount flags, current read and write
+sizes, the retransmission count, the attribute cache timeout values, failover
+information, and the timers used for dynamic retransmission. The dynamic
+retransmission timers are displayed only where dynamic retransmission is in
+use. By default, \fBNFS\fR mounts over the \fBTCP\fR protocols and \fBNFS\fR
+Version 3 mounts over either \fBTCP\fR or \fBUDP\fR do not use dynamic
+retransmission.
+.sp
+If you specify the \fB-m\fR option, this is the only option that \fBnfsstat\fR
+uses. If you specify other options with \fB-m\fR, you receive an error message
+alerting that the \fB-m\fR flag cannot be combined with other options.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display \fBNFS\fR information. \fBNFS\fR information for both the client and
+server side are printed. Can be combined with the \fB-c\fR and \fB-s\fR options
+to print client or server \fBNFS\fR information only.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-r\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display \fBRPC\fR information.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display server information.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-T\fR \fBu\fR | \fBd\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display a time stamp.
+.sp
+Specify \fBu\fR for a printed representation of the internal representation of
+time. See \fBtime\fR(2). Specify \fBd\fR for standard date format. See
+\fBdate\fR(1).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR \fIversion\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify which NFS version for which to print statistics. When followed by the
+optional \fIversion\fR argument, (\fB2\fR|\fB3\fR|\fB4\fR), specifies
+statistics for that version. By default, prints statistics for all versions.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-z\fR\fR
+.ad
+.sp .6
+.RS 4n
+Zero (reinitialize) statistics. This option is for use by the super user only,
+and can be combined with any of the above options to zero particular sets of
+statistics after printing them.
+.RE
+
+.SH OPERANDS
+.LP
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fB\fIcount\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display only count reports
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIinterval\fR\fR
+.ad
+.sp .6
+.RS 4n
+Report once each interval seconds.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIpathname\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify the pathname of a file in an NFS mounted file system for which
+statistics are to be displayed.
+.RE
+
+.SH DISPLAYS
+.LP
+The server \fBRPC\fR display includes the following fields:
+.sp
+.ne 2
+.na
+\fB\fBbadcalls\fR\fR
+.ad
+.sp .6
+.RS 4n
+The total number of calls rejected by the \fBRPC\fR layer (the sum of
+\fBbadlen\fR and \fBxdrcall\fR as defined below).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBbadlen\fR\fR
+.ad
+.sp .6
+.RS 4n
+The number of \fBRPC\fR calls with a length shorter than a minimum-sized
+\fBRPC\fR call.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcalls\fR\fR
+.ad
+.sp .6
+.RS 4n
+The total number of \fBRPC\fR calls received.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdupchecks\fR\fR
+.ad
+.sp .6
+.RS 4n
+The number of \fBRPC\fR calls that looked up in the duplicate request cache.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdupreqs\fR\fR
+.ad
+.sp .6
+.RS 4n
+The number of \fBRPC\fR calls that were found to be duplicates.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnullrecv\fR\fR
+.ad
+.sp .6
+.RS 4n
+The number of times an \fBRPC\fR call was not available when it was thought to
+be received.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBxdrcall\fR\fR
+.ad
+.sp .6
+.RS 4n
+The number of \fBRPC\fR calls whose header could not be \fBXDR\fR decoded.
+.RE
+
+.sp
+.LP
+The server \fBNFS\fR display shows the number of \fBNFS\fR calls received
+(\fBcalls\fR) and rejected (\fBbadcalls\fR), and the counts and percentages for
+the various calls that were made.
+.sp
+.LP
+The server \fBNFS_ACL\fR display shows the counts and percentages for the
+various calls that were made.
+.sp
+.LP
+The client \fBRPC\fR display includes the following fields:
+.sp
+.ne 2
+.na
+\fB\fBcalls\fR\fR
+.ad
+.sp .6
+.RS 4n
+The total number of \fBRPC\fR calls made.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBbadcalls\fR\fR
+.ad
+.sp .6
+.RS 4n
+The total number of calls rejected by the \fBRPC\fR layer.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBbadverfs\fR\fR
+.ad
+.sp .6
+.RS 4n
+The number of times the call failed due to a bad verifier in the response.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBbadxids\fR\fR
+.ad
+.sp .6
+.RS 4n
+The number of times a reply from a server was received which did not correspond
+to any outstanding call.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcantconn\fR\fR
+.ad
+.sp .6
+.RS 4n
+The number of times the call failed due to a failure to make a connection to
+the server.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcantsend\fR\fR
+.ad
+.sp .6
+.RS 4n
+The number of times a client was unable to send an \fBRPC\fR request over a
+connectionless transport when it tried to do so.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBinterrupts\fR\fR
+.ad
+.sp .6
+.RS 4n
+The number of times the call was interrupted by a signal before completing.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnewcreds\fR\fR
+.ad
+.sp .6
+.RS 4n
+The number of times authentication information had to be refreshed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnomem\fR\fR
+.ad
+.sp .6
+.RS 4n
+The number of times the call failed due to a failure to allocate memory.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBretrans\fR\fR
+.ad
+.sp .6
+.RS 4n
+The number of times a call had to be retransmitted due to a timeout while
+waiting for a reply from the server. Applicable only to \fBRPC\fR over
+connection-less transports.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBtimeouts\fR\fR
+.ad
+.sp .6
+.RS 4n
+The number of times a call timed out while waiting for a reply from the server.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBtimers\fR\fR
+.ad
+.sp .6
+.RS 4n
+The number of times the calculated time-out value was greater than or equal to
+the minimum specified time-out value for a call.
+.RE
+
+.sp
+.LP
+The client \fBNFS\fR display shows the number of calls sent and rejected, as
+well as the number of times a \fBCLIENT\fR handle was received (\fBclgets\fR),
+the number of times the \fBCLIENT\fR handle cache had no unused entries
+(\fBcltoomany\fR), as well as a count of the various calls and their respective
+percentages.
+.sp
+.LP
+The client \fBNFS_ACL\fR display shows the counts and percentages for the
+various calls that were made.
+.sp
+.LP
+The \fB-m\fR option includes information about mount flags set by mount
+options, mount flags internal to the system, and other mount information. See
+\fBmount_nfs\fR(8).
+.sp
+.LP
+The following mount flags are set by mount options:
+.sp
+.ne 2
+.na
+\fB\fBgrpid\fR\fR
+.ad
+.sp .6
+.RS 4n
+System V group id inheritance.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBhard\fR\fR
+.ad
+.sp .6
+.RS 4n
+Hard mount.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBintr\fR\fR
+.ad
+.sp .6
+.RS 4n
+Interrupts allowed on hard mount.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBllock\fR\fR
+.ad
+.sp .6
+.RS 4n
+Local locking being used (no lock manager).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnoac\fR\fR
+.ad
+.sp .6
+.RS 4n
+Client is not caching attributes.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnointr\fR\fR
+.ad
+.sp .6
+.RS 4n
+No interrupts allowed on hard mount.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnocto\fR\fR
+.ad
+.sp .6
+.RS 4n
+No close-to-open consistency.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBretrans\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBNFS\fR retransmissions.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrpctimesync\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBRPC\fR time sync.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrsize\fR\fR
+.ad
+.sp .6
+.RS 4n
+Read buffer size in bytes.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsec\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBsec\fR has one of the following values:
+.sp
+.ne 2
+.na
+\fB\fBdh\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBdes\fR-style authentication (encrypted timestamps).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBkrb5\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBkerberos v5\fR-style authentication.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBkrb5i\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBkerberos v5\fR-style authentication with integrity.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBkrb5p\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBkerberos v5\fR-style authentication with privacy.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnone\fR\fR
+.ad
+.sp .6
+.RS 4n
+No authentication.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBshort\fR\fR
+.ad
+.sp .6
+.RS 4n
+Short hand UNIX-style authentication.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsys\fR\fR
+.ad
+.sp .6
+.RS 4n
+UNIX-style authentication (UID, GID).
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsoft\fR\fR
+.ad
+.sp .6
+.RS 4n
+Soft mount.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBtimeo\fR\fR
+.ad
+.sp .6
+.RS 4n
+Initial \fBNFS\fR timeout, in tenths of a second.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBwsize\fR\fR
+.ad
+.sp .6
+.RS 4n
+Write buffer size in bytes.
+.RE
+
+.sp
+.LP
+The following mount flags are internal to the system:
+.sp
+.ne 2
+.na
+\fB\fBacl\fR\fR
+.ad
+.sp .6
+.RS 4n
+Server supports \fBNFS_ACL\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdown\fR\fR
+.ad
+.sp .6
+.RS 4n
+Server is down.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdynamic\fR\fR
+.ad
+.sp .6
+.RS 4n
+Dynamic transfer size adjustment.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBlink\fR\fR
+.ad
+.sp .6
+.RS 4n
+Server supports links.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmirrormount\fR\fR
+.ad
+.sp .6
+.RS 4n
+Mounted automatically by means of the \fBmirrormount\fR mechanism.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBprinted\fR\fR
+.ad
+.sp .6
+.RS 4n
+"Not responding" message printed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBreaddir\fR\fR
+.ad
+.sp .6
+.RS 4n
+Use \fBreaddir\fR instead of \fBreaddirplus\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsymlink\fR\fR
+.ad
+.sp .6
+.RS 4n
+Server supports symbolic links.
+.RE
+
+.sp
+.LP
+The following flags relate to additional mount information:
+.sp
+.ne 2
+.na
+\fB\fBproto\fR\fR
+.ad
+.sp .6
+.RS 4n
+Protocol.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBvers\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBNFS\fR version.
+.RE
+
+.sp
+.LP
+The \fB-m\fR option also provides attribute cache timeout values. The following
+fields in \fB-m\fR output provide timeout values for attribute cache:
+.sp
+.ne 2
+.na
+\fB\fBacdirmax\fR\fR
+.ad
+.sp .6
+.RS 4n
+Maximum seconds to hold cached directory attributes.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBacdirmin\fR\fR
+.ad
+.sp .6
+.RS 4n
+Minimum seconds to hold cached directory attributes.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBacregmax\fR\fR
+.ad
+.sp .6
+.RS 4n
+Maximum seconds to hold cached file attributes.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBacregmin\fR\fR
+.ad
+.sp .6
+.RS 4n
+Minimum seconds to hold cached file attributes.
+.RE
+
+.sp
+.LP
+The following fields in \fB-m\fR output provide failover information:
+.sp
+.ne 2
+.na
+\fB\fBcurrserver\fR\fR
+.ad
+.sp .6
+.RS 4n
+Which server is currently providing \fBNFS\fR service. See the \fI\fR for
+additional details.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfailover\fR\fR
+.ad
+.sp .6
+.RS 4n
+How many times a new server has been selected.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnoresponse\fR\fR
+.ad
+.sp .6
+.RS 4n
+How many times servers have failed to respond.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBremap\fR\fR
+.ad
+.sp .6
+.RS 4n
+How many times files have been re-evaluated to the new server.
+.RE
+
+.sp
+.LP
+The fields in \fB-m\fR output shown below provide information on dynamic
+retransmissions. These items are displayed only where dynamic retransmission is
+in use.
+.sp
+.ne 2
+.na
+\fB\fBcur\fR\fR
+.ad
+.sp .6
+.RS 4n
+Current backed-off retransmission value, in milliseconds.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdev\fR\fR
+.ad
+.sp .6
+.RS 4n
+Estimated deviation, in milliseconds.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsrtt\fR\fR
+.ad
+.sp .6
+.RS 4n
+The value for the smoothed round-trip time, in milliseconds.
+.RE
+
+.SH EXIT STATUS
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.sp .6
+.RS 4n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB>0\fR\fR
+.ad
+.sp .6
+.RS 4n
+An error occurred.
+.RE
+
+.SH SEE ALSO
+.LP
+.BR attributes (7),
+.BR mount_nfs (8)
+.sp
+.LP
+\fI\fR
+.sp
+.LP
+\fI\fR
diff --git a/usr/src/man/man8/nlsadmin.8 b/usr/src/man/man8/nlsadmin.8
new file mode 100644
index 0000000000..02b6b58c50
--- /dev/null
+++ b/usr/src/man/man8/nlsadmin.8
@@ -0,0 +1,389 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 1997 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH NLSADMIN 8 "Apr 3, 1997"
+.SH NAME
+nlsadmin \- network listener service administration
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/nlsadmin\fR \fB-x\fR
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/nlsadmin\fR [\fIoptions\fR] \fInet_spec\fR
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/nlsadmin\fR [\fIoptions\fR] \fB-N\fR \fIport_monitor_tag\fR
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/nlsadmin\fR \fB-V\fR
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/nlsadmin\fR \fB-c\fR \fIcmd\fR | \fB-o\fR \fIstreamname\fR [\fB-p\fR \fImodules\fR]
+ [\fB-A\fR \fIaddress\fR | \fB-D\fR] [\fB-R\fR \fIprognum\fR : \fIversnum\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBnlsadmin\fR is the administrative command for the network listener
+process(es) on a machine. Each network has at least one instance of the network
+listener process associated with it; each instance (and thus, each network) is
+configured separately. The listener process ``listens'' to the network for
+service requests, accepts requests when they arrive, and invokes servers in
+response to those service requests. The network listener process may be used
+with any network (more precisely, with any connection-oriented transport
+provider) that conforms to the transport provider specification.
+.sp
+.LP
+\fBnlsadmin\fR can establish a listener process for a given network, configure
+the specific attributes of that listener, and start and kill the listener
+process for that network. \fBnlsadmin\fR can also report on the listener
+processes on a machine, either individually (per network) or collectively.
+.sp
+.LP
+\fInet_spec\fR represents a particular listener process. Specifically,
+\fInet_spec\fR is the relative path name of the entry under \fB/dev\fR for a
+given network (that is, a transport provider). \fIaddress\fR is a transport
+address on which to listen and is interpreted using a syntax that allows for a
+variety of address formats. By default, \fIaddress\fR is interpreted as the
+symbolic ASCII representation of the transport address. An \fIaddress\fR
+preceded by \fB\ex\fR will let you enter an address in hexadecimal notation.
+Note that \fIaddress\fR must appear as a single word to the shell, thus it must
+be quoted if it contains any blanks.
+.sp
+.LP
+Changes to the list of services provided by the listener or the addresses of
+those services are put into effect immediately.
+.SH OPTIONS
+.sp
+.LP
+\fBnlsadmin\fR may be used with the following combinations of options and
+arguments:
+.sp
+.ne 2
+.na
+\fB\fB-x\fR\fR
+.ad
+.sp .6
+.RS 4n
+Report the status of all of the listener processes installed on this machine.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fInet_spec\fR\fR
+.ad
+.sp .6
+.RS 4n
+Print the status of the listener process for \fInet_spec\fR \fI\&.\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-q\fR \fInet_spec\fR\fR
+.ad
+.sp .6
+.RS 4n
+Query the status of the listener process for the specified network, and
+reflects the result of that query in its exit code. If a listener process is
+active, \fBnlsadmin\fR will exit with a status of \fB0\fR; if no process is
+active, the exit code will be \fB1\fR; the exit code will be greater than
+\fB1\fR in case of error.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR \fInet_spec\fR\fR
+.ad
+.sp .6
+.RS 4n
+Print a verbose report on the servers associated with \fInet_spec,\fR giving
+the service code, status, command, and comment for each. It also specifies the
+\fBuid\fR the server will run as and the list of modules to be pushed, if any,
+before the server is started.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-z\fR \fIservice_code net_spec\fR\fR
+.ad
+.sp .6
+.RS 4n
+Print a report on the server associated with \fInet_spec\fR that has service
+code \fIservice_code,\fR giving the same information as in the \fB-v\fR option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\fR\fB-q\fR\fB \fR\fB-z\fR \fIservice_code net_spec\fR\fR
+.ad
+.sp .6
+.RS 4n
+Query the status of the service with service code \fIservice_code\fR on network
+\fInet_spec,\fR and exits with a status of \fB0\fR if that service is enabled,
+\fB1\fR if that service is disabled, and greater than \fB1\fR in case of error.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\fR\fB-l\fR \fIaddress net_spec\fR\fR
+.ad
+.sp .6
+.RS 4n
+Change or set the transport address on which the listener listens (the general
+listener service). This address can be used by remote processes to access the
+servers available through this listener (see the \fB-a\fR option, below).
+.sp
+If \fIaddress\fR is just a dash (" \(mi "), \fBnlsadmin\fR reports the address
+currently configured, instead of changing it.
+.sp
+A change of address takes effect immediately.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-t\fR \fIaddress net_spec\fR\fR
+.ad
+.sp .6
+.RS 4n
+Change or set the address on which the listener listens for requests for
+terminal service but is otherwise similar to the \fB-l\fR option above. A
+terminal service address should not be defined unless the appropriate remote
+login software is available; if such software is available, it must be
+configured as service code 1 (see the \fB-a\fR option, below).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-i\fR \fInet_spec\fR\fR
+.ad
+.sp .6
+.RS 4n
+Initialize an instance of the listener for the network specified by
+\fInet_spec;\fR that is, create and initialize the files required by the
+listener as well as starting that instance of the listener. Note that a
+particular instance of the listener should be initialized only once. The
+listener must be initialized before assigning addresses or services.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-a\fR \fIservice_code\fR\fR
+.ad
+.sp .6
+.RS 4n
+[ \fB-p\fR \fImodules\fR ] [ \fB-w\fR \fIname\fR ] \fB-c\fR \fIcmd\fR \fB-y\fR
+\fIcomment net_spec\fR
+.sp
+Add a new service to the list of services available through the indicated
+listener. \fIservice_code\fR is the code for the service, \fIcmd\fR is the
+command to be invoked in response to that service code, comprised of the full
+path name of the server and its arguments, and \fIcomment\fR is a brief
+(free-form) description of the service for use in various reports. Note that
+\fIcmd\fR must appear as a single word to the shell; if arguments are required,
+the \fIcmd\fR and its arguments must be enclosed in quotation marks. The
+\fIcomment\fR must also appear as a single word to the shell. When a service is
+added, it is initially enabled (see the \fB-e\fR and \fB-d\fR options, below).
+.sp
+Service codes are alphanumeric strings, and are administered by AT&T. The
+numeric service codes 0 through 100 are reserved for internal use by the
+listener. Service code 0 is assigned to the nlps server, which is the service
+invoked on the general listening address. In particular, code 1 is assigned to
+the remote login service, which is the service automatically invoked for
+connections to the terminal login address.
+.sp
+If the \fB-p\fR option is specified, then \fImodules\fR will be interpreted as
+a list of \fBSTREAMS\fR modules for the listener to push before starting the
+service being added. The modules are pushed in the order they are specified.
+\fImodules\fR should be a comma-separated list of modules, with no white space
+included.
+.sp
+If the \fB-w\fR option is specified, then \fIname\fR is interpreted as the user
+name from \fB/etc/passwd\fR that the listener should look up. From the user
+name, the listener obtains the user ID, the group ID(s), and the home directory
+for use by the server. If \fB-w\fR is not specified, the default is to use the
+user name \fBlisten.\fR
+.sp
+A service must explicitly be added to the listener for each network on which
+that service is to be available. This operation will normally be performed only
+when the service is installed on a machine, or when populating the list of
+services for a new network.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\fR\fB-r\fR \fIservice_code net_spec\fR\fR
+.ad
+.sp .6
+.RS 4n
+Remove the entry for the \fIservice_code\fR from that listener's list of
+services. This is normally done only in conjunction with the de-installation of
+a service from a machine.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\fR\fB-e\fR \fIservice_code net_spec\fR\fR
+.ad
+.br
+.na
+\fB\fB\fR\fB-d\fR \fIservice_code net_spec\fR\fR
+.ad
+.sp .6
+.RS 4n
+Enable or disable (respectively) the service indicated by \fIservice_code\fR
+for the specified network. The service must previously have been added to the
+listener for that network (see the \fB-a\fR option, above). Disabling a service
+will cause subsequent service requests for that service to be denied, but the
+processes from any prior service requests that are still running will continue
+unaffected.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\fR\fB-s\fR \fInet_spec\fR\fR
+.ad
+.br
+.na
+\fB\fB\fR\fB-k\fR \fInet_spec\fR\fR
+.ad
+.sp .6
+.RS 4n
+Start and kill (respectively) the listener process for the indicated network.
+These operations are normally performed as part of the system startup and
+shutdown procedures. Before a listener can be started for a particular network,
+it must first have been initialized (see the \fB-i\fR option, above). When a
+listener is killed, processes that are still running as a result of prior
+service requests will continue unaffected.
+.RE
+
+.sp
+.LP
+Under the Service Access Facility, it is possible to have multiple instances
+of the listener on a single \fInet_spec\fR. In any of the above commands, the
+option \fB\fR\fB-N\fR \fIport_monitor_tag\fR may be used in place of the
+\fInet_spec\fR argument. This argument specifies the tag by which an instance
+of the listener is identified by the Service Access Facility. If the \fB-N\fR
+option is not specified (that is, the \fInet_spec\fR is specified in the
+invocation), then it will be assumed that the last component of the
+\fInet_spec\fR represents the tag of the listener for which the operation is
+destined. In other words, it is assumed that there is at least one listener on
+a designated \fInet_spec\fR, and that its tag is identical to the last
+component of the \fInet_spec\fR. This listener may be thought of as the
+primary, or default, listener for a particular \fInet_spec\fR.
+.sp
+.LP
+\fBnlsadmin\fR is also used in conjunction with the Service Access Facility
+commands. In that capacity, the following combinations of options can be used:
+.sp
+.ne 2
+.na
+\fB\fB-V\fR\fR
+.ad
+.sp .6
+.RS 4n
+Write the current version number of the listener's administrative file to the
+standard output. It is used as part of the \fBsacadm\fR command line when
+\fBsacadm\fR adds a port monitor to the system.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-c\fR \fIcmd\fR | \fB-o\fR \fIstreamname\fR [ \fB-p\fR \fImodules\fR ] [
+\fB-A\fR \fIaddress\fR | \fB-D\fR ] [ \fB-R\fR \fIprognum\fR : \fIversnum\fR
+]\fR
+.ad
+.sp .6
+.RS 4n
+Format the port monitor-specific information to be used as an argument to
+.BR pmadm (8)
+.sp
+The \fB-c\fR option specifies the full path name of the server and its
+arguments. \fIcmd\fR must appear as a single word to the shell, and its
+arguments must therefore be surrounded by quotes.
+.sp
+The \fB-o\fR option specifies the full path name of a \fBFIFO\fR or named
+stream through which a standing server is actually receiving the connection.
+.sp
+If the \fB-p\fR option is specified, then \fImodules\fR will be interpreted as
+a list of \fBSTREAMS\fR modules for the listener to push before starting the
+service being added. The modules are pushed in the order in which they are
+specified. \fImodules\fR must be a comma-separated list, with no white space
+included.
+.sp
+If the \fB-A\fR option is specified, then \fIaddress\fR will be interpreted as
+the server's private address. The listener will monitor this address on behalf
+of the service and will dispatch all calls arriving on this address directly to
+the designated service. This option may not be used in conjunction with the
+\fB-D\fR option.
+.sp
+If the \fB-D\fR option is specified, then the service is assigned a private
+address dynamically, that is, the listener will have the transport provider
+select the address each time the listener begins listening on behalf of this
+service. For RPC services, this option will be often be used in conjunction
+with the \fB-R\fR option to register the dynamically assigned address with the
+rpcbinder. This option may not be used in conjunction with the \fB-A\fR option.
+.sp
+When the \fB-R\fR option is specified, the service is an RPC service whose
+address, program number, and version number should be registered with the
+rpcbinder for this transport provider. This registration is performed each time
+the listener begins listening on behalf of the service. \fIprognum\fR and
+\fIversnum\fR are the program number and version number, respectively, of the
+RPC service.
+.RE
+
+.sp
+.LP
+\fBnlsadmin\fR may be invoked by any user to generate reports; all operations
+that affect a listener's status or configuration may only be run by a
+super-user.
+.sp
+.LP
+The options specific to the Service Access Facility may not be used together
+with any other options.
+.SH ERRORS
+.sp
+.LP
+If successful, \fBnlsadmin\fR exits with a status of 0. If \fBnlsadmin\fR
+fails for any reason, it exits with a status greater than or equal to 2. See
+\fB-q\fR option for a return status of 1.
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7),
+.BR listen (8),
+.BR pmadm (8),
+.BR rpcbind (8),
+.BR sacadm (8)
+.sp
+.LP
+\fI\fR
+.SH NOTES
+.sp
+.LP
+Dynamically assigned addresses are not displayed in reports as statically
+assigned addresses are.
diff --git a/usr/src/man/man8/nscd.8 b/usr/src/man/man8/nscd.8
new file mode 100644
index 0000000000..69b1f030f9
--- /dev/null
+++ b/usr/src/man/man8/nscd.8
@@ -0,0 +1,190 @@
+'\" te
+.\" Copyright (c) 2006 Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH NSCD 8 "Mar 6, 2017"
+.SH NAME
+nscd \- name service cache daemon
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/nscd\fR [\fB-f\fR \fIconfiguration-file\fR] [\fB-g\fR] [\fB-e\fR \fIcachename\fR, yes
+ | no] [\fB-i\fR \fIcachename\fR]
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBnscd\fR daemon is a process that provides a cache for most name service
+requests. The default \fIconfiguration-file\fR \fB/etc/nscd.conf\fR determines
+the behavior of the cache daemon. See \fBnscd.conf\fR(5).
+.sp
+.LP
+\fBnscd\fR provides caching for the \fBpasswd\fR(5), \fBgroup\fR(5),
+\fBhosts\fR(5), \fBipnodes\fR(5), \fBexec_attr\fR(5), \fBprof_attr\fR(5),
+\fBuser_attr\fR(5), \fBethers\fR(5), \fBrpc\fR(5), \fBprotocols\fR(5),
+\fBnetworks\fR(5), \fBbootparams\fR(5),
+\fBauth_attr\fR(5), \fBservices\fR(5), \fBnetmasks\fR(5), \fBprinters\fR(5),
+\fBproject\fR(5) databases through standard \fBlibc\fR interfaces, such as
+\fBgethostbyname\fR(3NSL), \fBgetipnodebyname\fR(3SOCKET),
+\fBgethostbyaddr\fR(3NSL), and others. Each cache has a separate time-to-live
+for its data; modifying the local database (\fB/etc/hosts\fR,
+\fB/etc/resolv.conf\fR, and so forth) causes that cache to become invalidated
+upon the next call to \fBnscd\fR. The shadow file is specifically not cached.
+\fBgetspnam\fR(3C) calls remain uncached as a result.
+.sp
+.LP
+\fBnscd\fR also acts as its own administration tool. If an instance of
+\fBnscd\fR is already running, commands are passed to the running version
+transparently.
+.sp
+.LP
+When running with per-user lookups enabled (see \fBnscd.conf\fR(5)), \fBnscd\fR
+forks one and only one child process (that is, a per-user \fBnscd\fR) on behalf
+of the user making the request. The per-user \fBnscd\fR will use the
+credentials of the user to open a per-user connection to the name repository
+configured for the per-user style of lookups. The lookup will be performed in
+the child process. The results are cached in the process and are available only
+to the same user. The caches are managed exactly the same as the main
+\fBnscd\fR daemon manages its own caches. Subsequent requests from the user
+will be handled by that per-user \fBnscd\fR until it terminates. The per-user
+\fBnscd\fR uses a configurable inactivity time-to-live (TTL) value and
+terminates itself after the inactivity TTL expires.
+.sp
+.LP
+The maximum number of per-user \fBnscd\fRs that can be created by the main
+\fBnscd\fR is configurable (see \fBnscd.conf\fR(5)). After the maximum number
+of them are created, the main \fBnscd\fR will use an LRU algorithm to terminate
+less active child \fBnscd\fRs as needed.
+.sp
+.LP
+The main \fBnscd\fR daemon creates, monitors, and manages all the child
+\fBnscd\fRs. It creates a user's own \fBnscd\fR upon receiving the user's first
+per-user lookup. When the \fBnscd\fR daemon is started, if per-user lookups are
+enabled, it checks to ensure all conditions are met before getting ready to
+create a per-user \fBnscd\fR. When the daemon is stopped, it terminates all the
+per-user \fBnscd\fRs under its control.
+.sp
+.LP
+Per-user \fBnscd\fRs use the same configuration as the main \fBnscd\fR. They
+read and use the same default configuration file or the one specified with the
+\fB-f\fR command line option. Once the configuration is read, the per-user
+\fBnscd\fR will use it for its entire lifetime.
+.SH OPTIONS
+.LP
+Several of the options described below require a \fIcachename\fR specification.
+Supported values for \fIcachename\fR are: \fBpasswd\fR, \fBgroup\fR,
+\fBhosts\fR, \fBipnodes\fR, \fBexec_attr\fR, \fBprof_attr\fR, \fBuser_attr\fR,
+\fBethers\fR, \fBrpc\fR, \fBprotocols\fR, \fBnetworks\fR, \fBbootparams\fR,
+\fBauth_attr\fR, \fBservices\fR, \fBnetmasks\fR,
+\fBprinters\fR, and \fBproject\fR.
+.sp
+.ne 2
+.na
+\fB\fB-f\fR \fIconfiguration-file\fR\fR
+.ad
+.sp .6
+.RS 4n
+Causes \fBnscd\fR to read its configuration data from the specified file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-g\fR\fR
+.ad
+.sp .6
+.RS 4n
+Prints current configuration and statistics to standard output. This is the
+only option executable by non-root users.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-e\fR \fIcachename\fR\fB, yes\fR|\fBno\fR\fR
+.ad
+.sp .6
+.RS 4n
+Enables or disables the specified cache.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-i\fR \fIcachename\fR\fR
+.ad
+.sp .6
+.RS 4n
+Invalidate the specified cache.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRStopping and restarting the \fBnscd\fR daemon.
+.sp
+.in +2
+.nf
+example# svcadm disable system/name-service-cache
+
+example# svcadm enable system/name-service-cache
+.fi
+.in -2
+.sp
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/etc/nscd.conf\fR\fR
+.ad
+.RS 18n
+Determines athe behavior of the cache daemon
+.RE
+
+.SH SEE ALSO
+.LP
+.BR svcs (1),
+.BR getspnam (3C),
+.BR gethostbyname (3NSL),
+.BR getipnodebyname (3SOCKET),
+.BR auth_attr (5),
+.BR bootparams (5),
+.BR ethers (5),
+.BR exec_attr (5),
+.BR group (5),
+.BR hosts (5),
+.BR netmasks (5),
+.BR networks (5),
+.BR nscd.conf (5),
+.BR nsswitch.conf (5),
+.BR passwd (5),
+.BR printers (5),
+.BR prof_attr (5),
+.BR project (5),
+.BR protocols (5),
+.BR rpc (5),
+.BR services (5),
+.BR user_attr (5),
+.BR attributes (7),
+.BR svcadm (8)
+.SH NOTES
+.LP
+The output from the \fB-g\fR option to \fBnscd\fR is subject to change. Do not
+rely upon it as a programming interface.
+.sp
+.LP
+The \fBnscd\fR service is managed by the service management facility,
+\fBsmf\fR(7), under the service identifier:
+.sp
+.in +2
+.nf
+svc:/system/name-service-cache
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Administrative actions on this service, such as enabling, disabling, or
+requesting restart, can be performed using \fBsvcadm\fR(8). The service's
+status can be queried using the \fBsvcs\fR(1) command.
diff --git a/usr/src/man/man8/nvmeadm.8 b/usr/src/man/man8/nvmeadm.8
new file mode 100644
index 0000000000..4b40a01537
--- /dev/null
+++ b/usr/src/man/man8/nvmeadm.8
@@ -0,0 +1,595 @@
+.\"
+.\" This file and its contents are supplied under the terms of the
+.\" Common Development and Distribution License ("CDDL"), version 1.0.
+.\" You may only use this file in accordance with the terms of version
+.\" 1.0 of the CDDL.
+.\"
+.\" A full copy of the text of the CDDL should have accompanied this
+.\" source. A copy of the CDDL is also available via the Internet at
+.\" http://www.illumos.org/license/CDDL.
+.\"
+.\"
+.\" Copyright 2021 Oxide Computer Company
+.\" Copyright 2022 Tintri by DDN, Inc. All rights reserved.
+.\"
+.Dd February 15, 2022
+.Dt NVMEADM 8
+.Os
+.Sh NAME
+.Nm nvmeadm
+.Nd NVMe administration utility
+.Sh SYNOPSIS
+.Nm
+.Fl h
+.Op Ar command
+.Nm
+.Op Fl dv
+.Cm list
+.Oo
+.Fl p
+.Fl o Ar field Ns [,...]
+.Oc
+.Op Ar ctl[/ns] Ns [,...]
+.Nm
+.Op Fl dv
+.Cm identify
+.Ar ctl[/ns] Ns [,...]
+.Nm
+.Op Fl dv
+.Cm get-logpage
+.Ar ctl[/ns] Ns [,...]
+.Ar logpage
+.Nm
+.Op Fl dv
+.Cm get-features
+.Ar ctl[/ns] Ns [,...]
+.Op Ar feature-list
+.Nm
+.Op Fl dv
+.Cm format
+.Ar ctl[/ns]
+.Op Ar lba-format
+.Nm
+.Op Fl dv
+.Cm secure-erase
+.Ar ctl[/ns]
+.Op Fl c
+.Nm
+.Op Fl dv
+.Cm detach
+.Ar ctl[/ns]
+.Nm
+.Op Fl dv
+.Cm attach
+.Ar ctl[/ns]
+.Nm
+.Op Fl dv
+.Cm list-firmware
+.Ar ctl
+.Nm
+.Op Fl dv
+.Cm load-firmware
+.Ar ctl
+.Ar firmware-file
+.Op Ar offset
+.Nm
+.Op Fl dv
+.Cm commit-firmware
+.Ar ctl
+.Ar slot
+.Nm
+.Op Fl dv
+.Cm activate-firmware
+.Ar ctl
+.Ar slot
+.Sh DESCRIPTION
+The
+.Nm
+utility can be used to enumerate the NVMe controllers and their
+namespaces, query hardware information from a NVMe controller or
+namespace, and to format or secure-erase a NVMe controller or
+namespace.
+.Pp
+The information returned by the hardware is printed by
+.Nm
+in a human-readable form were applicable.
+Generally all 0-based counts are normalized and values may be
+converted to human-readable units such as MB (megabytes), W (watts),
+or C (degrees Celsius).
+.Sh OPTIONS
+The following options are supported:
+.Bl -tag -width Ds
+.It Fl h
+Print a short help text for
+.Nm ,
+or for an optionally specified
+.Nm
+command.
+.It Fl d
+Enable debugging output.
+.It Fl v
+Enable verbose output.
+.El
+.Sh ARGUMENTS
+.Nm
+expects the following kinds of arguments:
+.Bl -tag -width "ctl[/ns]"
+.It Ar command
+Any command
+.Nm
+understands.
+See section
+.Sx COMMANDS .
+.It Ar ctl[/ns]
+Specifies a NVMe controller and optionally a namespace within that
+controller.
+The controller name consists of the driver name
+.Qq nvme
+followed by an instance number.
+A namespace is specified by appending a single
+.Qq /
+followed by the namespace ID to the controller name.
+The namespace ID is the EUI64 of the namespace, or a positive non-zero
+decimal number if the namespace doesn't have an EUI64.
+For commands that don't change the device state multiple controllers
+and namespaces can be specified as a comma-separated list.
+.Pp
+The list of controllers and namespaces present in the system can be
+queried with the
+.Cm list
+command without any arguments.
+.It Ar logpage
+Specifies the log page name for the
+.Cm get-logpage
+command.
+.It Ar feature-list
+A comma-separated list of feature names for the
+.Cm get-features
+command.
+Feature names can be specified in upper or lower case and can be
+shortened the shortest unique name.
+Some features may also have an alternative short name.
+.It Ar lba-format
+A non-zero integer specifying the LBA format for the
+.Cm format
+command.
+The list of supported LBA formats on a namespace can be retrieved
+with the
+.Nm
+.Cm identify
+command.
+.It Ar firmware-file
+Specifies the name of a firmware file to be loaded into the controller
+using the
+.Cm load-firmware
+command.
+.It Ar offset
+Specifies the byte offset at which to load
+.Ar firmware-file
+within the controller's upload buffer.
+Vendors may require multiple images to be loaded at different offsets
+before a firmware set is committed to a
+.Ar slot .
+.It Ar slot
+Specifies the firmware slot into which a firmware set is committed
+using the
+.Cm commit-firmware
+command, and subsequently activated with the
+.Cm activate-firmware
+command.
+Slots and their contents can be printed using the
+.Nm
+.Cm list-firmware
+command.
+.El
+.Sh COMMANDS
+.Bl -tag -width ""
+.It Xo
+.Nm
+.Cm list
+.Oo
+.Fl p
+.Fl o Ar field Ns [,...]
+.Oc
+.Op Ar ctl[/ns] Ns [,...]
+.Xc
+Lists the NVMe controllers and their namespaces in the system and
+prints a 1-line summary of their basic properties for each.
+If a list of controllers and/or namespaces is given then the listing
+is limited to those devices.
+By default, output is human-readable; however, a parsable form can
+controlled by using the following options:
+.Bl -tag -width Fl
+.It Fl p
+Rather than printing human-readable output, outputs an entry for each of
+the specified controllers and namespaces.
+If no controllers or namespaces are given as arguments, then the primary
+namespace of each controller is listed and if the
+.Fl v
+option is specified, then all of the namespaces for a controller are
+listed.
+This option requires that output fields be selected with the
+.Fl o
+option.
+.It Fl o Ar field Ns [,...]
+A comma-separated list of one or more output fields to be used.
+Fields are listed below and the name is case insensitive.
+.El
+.Pp
+The following fields can be specified when using the parsable form:
+.Bl -tag -width CAPACITY
+.It Sy MODEL
+The model number of the device, generally containing information about
+both the manufacturer and the product.
+.It Sy SERIAL
+The NVMe controller's serial number.
+.It Sy FWREV
+The controller's firmware revision.
+.It Sy VERSION
+The version of the NVMe specification the controller supports.
+.It Sy SIZE
+The logical size in bytes of the namespace.
+.It Sy CAPACITY
+The amount of logical bytes that the namespace may actually have allocated at
+any time.
+This may be different than size due to the use of thin provisioning or due to
+administrative action.
+.It Sy USED
+The number of bytes used in the namespace.
+.It Sy INSTANCE
+The name of the device node and instance of it.
+.It Sy NAMESPACE
+The numerical value of the namespace which can be used as part of other
+.Nm
+operations.
+.It Sy DISK
+The name of the disk device that corresponds to the namespace, if any.
+.El
+.It Xo
+.Nm
+.Cm identify
+.Ar ctl[/ns] Ns [,...]
+.Xc
+Print detailed information about the specified controllers and/or
+namespaces.
+The information returned differs depending on whether a controller or
+a namespace is specified.
+For an explanation of the data printed by this command refer to the
+description of the
+.Qq IDENTIFY
+admin command in the NVMe specification.
+.It Xo
+.Nm
+.Cm get-logpage
+.Ar ctl[/ns] Ns [,...]
+.Ar logpage
+.Xc
+Print the specified log page of the specified controllers and/or namespaces.
+Most log pages are only available on a per-controller basis.
+Known log pages are:
+.Bl -tag -width "firmware"
+.It error
+Error Information
+.It health
+SMART/Health Information.
+A controller may support this log page on a per-namespace basis.
+.It firmware
+Firmware Slot Information
+.El
+.Pp
+For an explanation of the contents of the log pages refer to the
+description of the
+.Qq GET LOGPAGE
+admin command in the NVMe specification.
+.It Xo
+.Nm
+.Cm get-features
+.Ar ctl[/ns] Ns [,...]
+.Op Ar feature-list
+.Xc
+Prints information about the specified features, or all features if
+none are given, of the specified controllers and/or namespaces.
+Feature names are case-insensitive, and they can be shortened as long
+as they remain unique.
+Some features also have alternative short names to which the same
+rules apply.
+The following features are supported:
+.Pp
+.TS
+tab(:);
+l l l.
+FULL NAME:SHORT NAME:CONTROLLER/NAMESPACE
+Arbitration::controller
+Power Management::controller
+LBA Range Type:range:namespace
+Temperature Threshold::controller
+Error Recovery::controller
+Volatile Write Cache:cache:controller
+Number of Queues:queues:controller
+Interrupt Coalescing:coalescing:controller
+Interrupt Vector Configuration:vector:controller
+Write Atomicity:atomicity:controller
+Asynchronous Event Configuration:event:controller
+Autonomous Power State Transition::controller
+Software Progress Marker:progress:controller
+.TE
+.Pp
+For an explanation of the individual features refer to the description
+of the
+.Qq SET FEATURES
+admin command in the NVMe specification.
+.It Xo
+.Nm
+.Cm format
+.Ar ctl[/ns]
+.Op Ar lba-format
+.Xc
+Formats the specified namespace or all namespaces of the specified
+controller.
+This command implies a
+.Nm
+.Cm detach
+and subsequent
+.Nm
+.Cm attach
+of the specified namespace(s), which will cause a changed LBA format
+to be detected.
+If no LBA format is specified the LBA format currently used by the
+namespace will be used.
+When formatting all namespaces without specifying a LBA format the LBA
+format of namespace 1 will be used.
+A list of LBA formats supported by a namespace can be queried with the
+.Nm
+.Cm identify
+command.
+.Pp
+Note that not all devices support formatting individual or all
+namespaces, or support formatting at all.
+.Pp
+LBA formats using a non-zero metadata size are not supported by
+.Nm
+or
+.Xr nvme 4D .
+.Pp
+The list of supported LBA formats on a namespace can be retrieved
+with the
+.Nm
+.Cm identify
+command.
+.It Xo
+.Nm
+.Cm secure-erase
+.Ar ctl[/ns]
+.Op Fl c
+.Xc
+Erases the specified namespace or all namespaces of the controller.
+The flag
+.Fl c
+will cause a cryptographic erase instead of a normal erase.
+This command implies a
+.Nm
+.Cm detach
+and
+.Nm
+.Cm attach
+of the specified namespace(s).
+.Pp
+Note that not all devices support erasing individual or all
+namespaces, or support erasing at all.
+.It Xo
+.Nm
+.Cm detach
+.Ar ctl[/ns]
+.Xc
+Temporarily detaches the
+.Xr blkdev 4D
+instance from the specified namespace or all namespaces of the controller.
+This will prevent I/O access to the affected namespace(s).
+Detach will only succeed if the affected namespace(s) are not
+currently opened.
+The detached state will not persist across reboots or reloads of the
+.Xr nvme 4D
+driver.
+.Pp
+It is not an error to detach a namespace that is already detached, any such
+request will be silently ignored.
+.It Xo
+.Nm
+.Cm attach
+.Ar ctl[/ns]
+.Xc
+Attaches the
+.Xr blkdev 4D
+instance to the specified namespace or all namespaces of the controller.
+This will make I/O accesses to the namespace(s) possible again after a
+previous
+.Nm
+.Cm detach
+command.
+.Pp
+It is not an error to attach a namespace that is already attached, any such
+request will be silently ignored.
+.It Xo
+.Nm
+.Cm list-firmware
+.Ar ctl
+.Xc
+List currently active firmware slot, the next active firmware slot, and the
+current contents of all firmware slots of an NVMe controller.
+This is a synonym for the
+.Nm
+.Cm get-logpage
+.Ar ctl
+.Cm firmware
+command.
+.It Xo
+.Nm
+.Cm load-firmware
+.Ar ctl
+.Ar firmware-file
+.Op Ar offset
+.Xc
+Loads
+.Ar firmware-file
+into the controller's upload memory at
+.Ar offset ,
+the default is 0. A vendor may require multiple files to be loaded
+at different offsets before the firmware is committed to a
+.Ar slot .
+.It Xo
+.Nm
+.Cm commit-firmware
+.Ar ctl
+.Ar slot
+.Xc
+Commits firmware previously loaded by the
+.Cm load-firmware
+command to
+.Ar slot .
+.It Xo
+.Nm
+.Cm activate-firmware
+.Ar ctl
+.Ar slot
+.Xc
+Activates the firmware in slot
+.Ar slot .
+The firmware image in
+.Ar slot
+is activated at the next NVM controller reset.
+.El
+.Sh EXIT STATUS
+.Ex -std
+.Sh EXAMPLES
+.Bl -tag -width ""
+.It Sy Example 1: List all NVMe controllers and namespaces
+.Bd -literal
+# nvmeadm list
+nvme1: model: INTEL SSDPEDMD800G4, serial: CVFT4134001R800CGN, FW rev: 8DV10049, NVMe v1.0
+ nvme1/1 (c1t1d0): Size = 763097 MB, Capacity = 763097 MB, Used = 763097 MB
+nvme4: model: SAMSUNG MZVPV128HDGM-00000, serial: S1XVNYAGA00640, FW rev: BXW7300Q, NVMe v1.1
+ nvme4/1 (c2t2d0): Size = 122104 MB, Capacity = 122104 MB, Used = 5127 MB
+.Ed
+.It Sy Example 2: Identify a namespace
+.Bd -literal
+# nvmeadm identify nvme4/1
+nvme4/1: Identify Namespace
+ Namespace Capabilities and Features
+ Namespace Size: 122104MB
+ Namespace Capacity: 122104MB
+ Namespace Utilization: 5127MB
+ Namespace Features
+ Thin Provisioning: unsupported
+ Number of LBA Formats: 1
+ Formatted LBA Size
+ LBA Format: 1
+ Extended Data LBA: no
+ Metadata Capabilities
+ Extended Data LBA: unsupported
+ Separate Metadata: unsupported
+ End-to-End Data Protection Capabilities
+ Protection Information Type 1: unsupported
+ Protection Information Type 2: unsupported
+ Protection Information Type 3: unsupported
+ Protection Information first: unsupported
+ Protection Information last: unsupported
+ End-to-End Data Protection Settings
+ Protection Information: disabled
+ Protection Information in Metadata: last 8 bytes
+ LBA Format 1
+ Metadata Size: 0 bytes
+ LBA Data Size: 512 bytes
+ Relative Performance: Best
+.Ed
+.It Sy Example 3: Get SMART/Health information (verbose)
+.Bd -literal
+# nvmeadm -v get-logpage nvme4/1 health
+nvme4/1: SMART/Health Information
+ Critical Warnings
+ Available Space: OK
+ Temperature: OK
+ Device Reliability: OK
+ Media: OK
+ Volatile Memory Backup: OK
+ Temperature: 37C
+ Available Spare Capacity: 100%
+ Available Spare Threshold: 10%
+ Device Life Used: 0%
+ Data Read: 0GB
+ Data Written: 64GB
+ Read Commands: 52907
+ Write Commands: 567874
+ Controller Busy: 1min
+ Power Cycles: 6
+ Power On: 141h
+ Unsafe Shutdowns: 1
+ Uncorrectable Media Errors: 0
+ Errors Logged: 1
+.Ed
+.It Sy Example 4: Get Asynchronous Event Configuration information
+.Bd -literal
+# nvmeadm get-features nvme0,nvme4 event,power
+nvme0: Get Features
+ Asynchronous Event Configuration
+ Available Space below threshold: disabled
+ Temperature above threshold: disabled
+ Device Reliability compromised: disabled
+ Media read-only: disabled
+ Power Management
+ Power State: 0
+nvme4: Get Features
+ Asynchronous Event Configuration
+ Available Space below threshold: disabled
+ Temperature above threshold: disabled
+ Device Reliability compromised: disabled
+ Media read-only: disabled
+ Volatile Memory Backup failed: disabled
+ Power Management
+ Power State: 0
+.Ed
+.It Sy Example 5: Load and activate firmware
+.Bd -literal
+# nvmeadm list-firmware nvme3
+nvme3: Firmware Slot Information
+ Active Firmware Slot: 4
+ Next Firmware Slot: 4
+ Firmware Revision for Slot 1: KNGND110 (read-only)
+ Firmware Revision for Slot 2: KNGND110
+ Firmware Revision for Slot 3: KNGND110
+ Firmware Revision for Slot 4: KNGND112
+ Firmware Revision for Slot 5: KNGND110
+
+# nvmeadm -v load-firmware nvme3 KNGND113.bin
+1740544 bytes downloaded.
+
+# nvmeadm -v commit-firmware nvme3 5
+Firmware committed to slot 5.
+
+# nvmeadm -v activate-firmware nvme3 5
+Slot 5 activated: NVM subsystem reset required - power cycle your system.
+
+# nvmeadm list-firmware nvme3
+nvme3: Firmware Slot Information
+ Active Firmware Slot: 4
+ Next Firmware Slot: 5
+ Firmware Revision for Slot 1: KNGND110 (read-only)
+ Firmware Revision for Slot 2: KNGND110
+ Firmware Revision for Slot 3: KNGND110
+ Firmware Revision for Slot 4: KNGND112
+ Firmware Revision for Slot 5: KNGND113
+.Ed
+.El
+.Sh INTERFACE STABILITY
+The command line interface of
+.Nm
+is
+.Sy Evolving .
+The output of
+.Nm
+is
+.Sy Not-an-Interface
+and may change any time.
+.Sh SEE ALSO
+.Xr nvme 4D
+.Pp
+.Lk http://www.nvmexpress.org/specifications/ "NVMe specifications"
diff --git a/usr/src/man/man8/nwamd.8 b/usr/src/man/man8/nwamd.8
new file mode 100644
index 0000000000..1f62d0a63e
--- /dev/null
+++ b/usr/src/man/man8/nwamd.8
@@ -0,0 +1,250 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH NWAMD 8 "Nov 24, 2008"
+.SH NAME
+nwamd \- network auto-magic daemon
+.SH SYNOPSIS
+.LP
+.nf
+\fB/lib/inet/nwamd\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBnwamd\fR is a system daemon to manage network interfaces.
+.sp
+.LP
+This daemon is started automatically and should not be invoked directly. It
+does not constitute a programming interface.
+.SS "Operation"
+.sp
+.LP
+Whether this daemon is enabled or not depends on your installation medium. To
+check from within the GNOME desktop environment, double click on the "Network
+Manager" icon to open the "Connection Properties" window. If "Configure network
+automatically" is checked, then auto-magic mode is enabled. To check from the
+command line, enter the following:
+.sp
+.in +2
+.nf
+% \fBsvcs svc:/network/physical\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Two instances will be listed, one online and the other disabled. If the "nwam"
+instance is online, then this daemon is running.
+.sp
+.LP
+To switch between manual and auto-magic mode, you can use the Network Monitor
+applet available within the GNOME desktop environment. You can also switch
+manually from the command line by entering:
+.sp
+.in +2
+.nf
+% \fBsvcadm disable svc:/network/physical:default\fR
+% \fBsvcadm enable svc:/network/physical:nwam\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+To go from auto-magic mode to manual mode:
+.sp
+.in +2
+.nf
+% \fBsvcadm disable svc:/network/physical:nwam\fR
+% \fBsvcadm enable svc:/network/physical:default\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+When switching modes like this, keep in mind that all network interfaces will
+be brought down then back up. Therefore, if a different \fBIP\fR address is
+configured in this process, existing applications and sessions might be
+disrupted.
+.sp
+.LP
+There is a limitation that only one link is active at a time in auto-magic
+mode. This mode is not recommended for machines that use more than one link at
+a time. For machines with wired and wireless links, wired link are preferred by
+default, although this can be adjusted from the GNOME NWAM Manager menu
+(right-click on the icon), or from the command line, by editing the plain text
+file \fB/etc/nwam/llp\fR. For the latter (hand-editing) procedure, the first
+instance of a link in \fB/etc/nwam/llp\fR sets the priority of that link.
+Subsequent instances of that link set parameters associated with the interface
+on that link.
+.sp
+.LP
+The \fB/etc/nwam/llp\fR interface is volatile and might change in a future
+release.
+.SS "Static IP Addresses"
+.sp
+.LP
+A static IP address can be configured by changing the line in the
+\fB/etc/nwam/llp\fR file that contains an interface name and the name of the
+method for obtaining an IP address. It might look like:
+.sp
+.in +2
+.nf
+nge0 dhcp
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Change this line to one that looks like:
+.sp
+.in +2
+.nf
+nge0 static \fII\fR1.\fII\fR2.\fII\fR3.\fII\fR4/\fIP\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+\&...where the I's are the digits of the IPv4 address and the \fIP\fR is an
+optional prefix. If the prefix is not provided, it is derived, using classful
+assumptions.
+.SS "Configuring IPv6"
+.sp
+.LP
+IPv6 is configured by default on a link. It can also be explicitly added in the
+\fB/etc/nwam/llp\fR file by providing a line that contains an interface name
+and the string \fBipv6\fR. It might look like:
+.sp
+.in +2
+.nf
+nge0 ipv6
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+If IPv6 should not be plumbed on a given link, a \fBnoipv6\fR entry should be
+created in the \fB/etc/nwam/llp\fR file for that link. It might look like:
+.sp
+.in +2
+.nf
+nge0 noipv6
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+An optional static IPv6 address can be provided on the same line, immediately
+after the \fBipv6\fR token. Whether you provide a static address or not, IPv6
+will use DHCPv6 or stateless address configuration, as directed by the local
+network configuration.
+.SS "PROFILES"
+.sp
+.LP
+All interfaces listed in this section are volatile and may change in a future
+release. They are documented here so that those wishing to experiment with this
+may do so.
+.sp
+.LP
+Profiles are a mechanism for making multiple related changes to the system
+configuration after \fBIP\fR service is available.
+.sp
+.LP
+There is no direct support for the profiles yet, but a "roll your own"
+mechanism is provided for now. Once an interface is brought up and an \fBIP\fR
+address is configured for it, the daemon looks for the file
+\fB/etc/nwam/ulp/check-conditions\fR. If this file exists and is executable, it
+is run. This should print a single line of output, which is the name of the
+profile that the user wishes to activate based on the current conditions. If
+such a line is read successfully (\fIfoo\fR in this example), then
+\fB/etc/nwam/ulp/foo/bringup\fR is executed. Likewise, when the interface gets
+torn down for whatever reason, \fB/etc/nwam/ulp/foo/teardown\fR is executed.
+The "bringup" and "teardown" scripts are invoked via \fBpfexec\fR(1) with
+default basic privileges. Samples for each of these scripts can be found at:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+http://opensolaris.org/os/project/nwam/prototype/check-conditions
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+http://opensolaris.org/os/project/nwam/prototype/bringup
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+http://opensolaris.org/os/project/nwam/prototype/teardown
+.RE
+.SS "Wireless"
+.sp
+.LP
+If no wired link is available, a scan for wireless \fBLAN\fRs is done, and the
+resulting list offered via a \fBGUI\fR popup window prompts the console user to
+select a preference. If a successful connection is made, the \fBWLAN\fR in
+question is stored in the plain text file \fB/etc/nwam/known_wifi_nets\fR and
+the daemon may connect to any \fBWLAN\fR in that list without prompting the
+user again. If a user wishes to add other preferences or revoke existing ones,
+he can do so by bringing up the NWAM Manager menu with right-click on the icon,
+and then selecting "Manage Favorite Wireless Networks...". A user can also edit
+the \fBknown_wifi_nets\fR file directly. This interface is volatile and might
+change in a future release.
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Volatile
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR svcs (1),
+.BR attributes (7),
+.BR smf (7),
+.BR svcadm (8)
+.sp
+.LP
+See also \fBnwam-manager(8)\fR, available in the JDS/GNOME man page
+collection.
+.SH NOTES
+.sp
+.LP
+The networking service is managed by the service management facility,
+\fBsmf\fR(7), under the service identifier:
+.sp
+.in +2
+.nf
+svc:/network/physical
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Administrative actions on this service, such as enabling, disabling, or
+requesting restart, can be performed using \fBsvcadm\fR(8). The service's
+status can be queried using the \fBsvcs\fR(1) command.
diff --git a/usr/src/man/man8/obpsym.8 b/usr/src/man/man8/obpsym.8
new file mode 100644
index 0000000000..5447da8a44
--- /dev/null
+++ b/usr/src/man/man8/obpsym.8
@@ -0,0 +1,148 @@
+'\" te
+.\" Copyright 2001 Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH OBPSYM 8 "Dec 13, 2001"
+.SH NAME
+obpsym \- Kernel Symbolic Debugging for OpenBoot Firmware
+.SH SYNOPSIS
+.LP
+.nf
+\fBmodload\fR \fB-p\fR misc/obpsym
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBobpsym\fR is a kernel module that installs OpenBoot callback handlers that
+provide kernel symbol information to OpenBoot. OpenBoot firmware user interface
+commands use the callbacks to convert numeric \fIaddresses\fR to kernel symbol
+names for display purposes, and to convert kernel symbol names to numeric
+\fIliterals\fR allowing symbolic names to be used as input arguments to user
+interface commands.
+.sp
+.LP
+Once \fBobpsym\fR is installed, kernel symbolic names may be used anywhere at
+the OpenBoot firmware's user interface command prompt in place of a literal
+(numeric) string. For example, if \fBobpsym\fR is installed, the OpenBoot
+firmware commands \fBctrace\fR and \fBdis\fR typically display symbolic names
+and offsets in the form \fImodname:symbolname + offset.\fR User interface
+Commands such as \fBdis\fR can be given a kernel symbolic name such as
+\fBufs:ufs_mount\fR instead of a numeric address.
+.sp
+.LP
+Placing the command
+.sp
+.LP
+\fBforceload: misc/obpsym\fR
+.sp
+.LP
+into the \fBsystem\fR(5) file forces the kernel module \fBmisc/obpsym\fR to be
+loaded and activates the kernel callbacks during the kernel startup sequence.
+.sp
+.LP
+\fBobpsym\fR may be useful as a kernel debugger in situations where other
+kernel debuggers are not useful. For example, on SPARC machines, if
+\fBobpsym\fR is loaded, you may be able to use the OpenBoot firmware's
+\fBctrace\fR command to display symbolic names in the stack backtrace after a
+watchdog reset.
+.SS "Kernel Symbolic Name Syntax"
+.sp
+.LP
+The syntax for a kernel symbolic name is:
+.sp
+.LP
+\fB\fR [ \fImodule-name\fR \fB:\fR ] \fIsymbol-name\fR
+.sp
+.LP
+Where \fImodule-name\fR is the name of the kernel module that the symbol
+\fIsymbol-name\fR appears in. A \fINULL\fR module name is taken as "all
+modules, in no particular order" by \fBobpsym\fR. The module name \fBunix\fR is
+equivalent to a \fINULL\fR module name, so that conflicts with words defined in
+the firmware's vocabulary can be avoided.
+.sp
+.LP
+Typically, OpenBoot firmware reads a word from the input stream and looks the
+word up in its internal \fIvocabulary\fR before checking if the word is a
+\fIliteral\fR. Thus, kernel symbols, such as \fBreset\fR may be given as
+\fBunix:reset\fR to avoid the unexpected side effect of the firmware finding
+and executing a matching word in its vocabulary.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/system\fR\fR
+.ad
+.sp .6
+.RS 4n
+system configuration information file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/platform/\fR\fIplatform-name\fR\fB/kernel/misc/obpsym\fR\fR
+.ad
+.sp .6
+.RS 4n
+
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR uname (1),
+.BR system (5),
+.BR attributes (7),
+.BR kadb (8),
+.BR kernel (8),
+.BR modload (8),
+.BR modunload (8)
+.sp
+.LP
+\fI\fR
+.SH WARNINGS
+.sp
+.LP
+Some OpenBoot firmware user interface commands may use system resources
+incompatibly with the way they are used by the Unix kernel. These commands and
+the use of this feature as a kernel debugger may cause interactions that the
+Unix kernel is not prepared to deal with. If this occurs, the Unix kernel
+and/or the OpenBoot firmware user interface commands may react unpredictably
+and may panic the system, or may hang or may cause other unpredictable results.
+For these reasons, the use of this feature is only minimally supported and
+recommended to be used only as a kernel debugger of "last resort".
+.sp
+.LP
+If a breakpoint or watchpoint is triggered while the console frame buffer is
+powered off, the system can crash and be left in a state from which it is
+difficult to recover. If one of these is triggered while the monitor is powered
+off, you will not be able to see the debugger output.
+.SH NOTES
+.sp
+.LP
+\fIplatform-name\fR can be found using the \fB-i\fR option of \fBuname\fR(1)
+.sp
+.LP
+\fBobpsym\fR is supported only on architectures that support OpenBoot firmware.
+.sp
+.LP
+On some systems, OpenBoot must be completely RAM resident so the \fBobpsym\fR
+symbol callback support can be added to the firmware, if the firmware doesn't
+include support for the symbol callbacks. On these systems, \fBobpsym\fR may
+complain that it requires that "you must use ramforth to use this module".
+.sp
+.LP
+See the for details on how to use the \fIramforth\fR command, how to place the
+command into \fInvramrc\fR, and how to set \fIuse-nvramrc?\fR to \fBtrue\fR. On
+systems with version 1.x OpenBoot firmware, \fInvramrc\fR doesn't exist, and
+the \fIramforth\fR command must be typed manually after each reset, in order to
+use this module.
+.sp
+.LP
+Once installed, the symbol table callbacks can be disabled by using the
+following OpenBoot firmware command:
+.sp
+.LP
+\fB0 0 set-symbol-lookup\fR
diff --git a/usr/src/man/man8/oplhpd.8 b/usr/src/man/man8/oplhpd.8
new file mode 100644
index 0000000000..f36417e74b
--- /dev/null
+++ b/usr/src/man/man8/oplhpd.8
@@ -0,0 +1,73 @@
+'\" te
+.\" Copyright (c) 2005, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH OPLHPD 8 "May 23, 2006"
+.SH NAME
+oplhpd \- Hot plug daemon for SPARC Enterprise Server line
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/platform/SUNW,SPARC-Enterprise/lib/sparcv9/lib/oplhpd\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The hot plug daemon for \fBSPARC\fR Enterprise Servers is a daemon process that
+runs on the \fBSUNW\fR,\fBSPARC\fR-Enterprise family of servers. The daemon is
+started by the service management facility (see \fBsmf\fR(7)) and communicates
+with the service processor when hot plug \fBPCI\fR cassettes change their
+dynamic reconfiguration state.
+.sp
+.LP
+The service \fBFMRI\fR for \fBoplhpd\fR is:
+.sp
+.in +2
+.nf
+svc:/platform/sun4u/oplhpd:default
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+A domain supports only one running \fBoplhpd\fR process at a time.
+.SH ERRORS
+.sp
+.LP
+\fBOPLHPD\fR uses \fBsyslog\fR(3C) to report status and error messages. All of
+the messages are logged with the \fBLOG_DAEMON\fR facility.
+.sp
+.LP
+Error messages are logged with the \fBLOG_ERR\fR and \fBLOG_NOTICE\fR
+priorities, and informational messages are logged with the \fBLOG_DEBUG\fR
+priority. The default entries in the \fB/etc/syslog.conf\fR file log all of the
+\fBOPLHPD\fR error messages to the \fB/var/adm/messages log\fR.
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR svcs (1),
+.BR syslog (3C),
+.BR syslog.conf (5),
+.BR attributes (7),
+.BR smf (7),
+.BR inetadm (8),
+.BR svcadm (8)
diff --git a/usr/src/man/man8/passmgmt.8 b/usr/src/man/man8/passmgmt.8
new file mode 100644
index 0000000000..5958c2bca0
--- /dev/null
+++ b/usr/src/man/man8/passmgmt.8
@@ -0,0 +1,322 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 2007 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PASSMGMT 8 "Feb 25, 2017"
+.SH NAME
+passmgmt \- password files management
+.SH SYNOPSIS
+.LP
+.nf
+\fBpassmgmt\fR \fB-a\fR \fIoptions\fR \fIname\fR
+.fi
+
+.LP
+.nf
+\fBpassmgmt\fR \fB-m\fR \fIoptions\fR \fIname\fR
+.fi
+
+.LP
+.nf
+\fBpassmgmt\fR \fB-d\fR \fIname\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBpassmgmt\fR command updates information in the password files. This
+command works with both \fB/etc/passwd\fR and \fB/etc/shadow\fR.
+.sp
+.LP
+\fBpassmgmt\fR \fB-a\fR adds an entry for user \fIname\fR to the password
+files. This command does not create any directory for the new user and the new
+login remains locked (with the string \fB*LK*\fR in the password field) until
+the \fBpasswd\fR(1) command is executed to set the password.
+.sp
+.LP
+\fBpassmgmt\fR \fB-m\fR modifies the entry for user \fIname\fR in the password
+files. The name field in the \fB/etc/shadow\fR entry and all the fields (except
+the password field) in the \fB/etc/passwd\fR entry can be modified by this
+command. Only fields entered on the command line will be modified.
+.sp
+.LP
+\fBpassmgmt\fR \fB-d\fR deletes the entry for user \fIname\fR from the password
+files. It will not remove any files that the user owns on the system; they must
+be removed manually.
+.sp
+.LP
+\fBpassmgmt\fR can be used only by the super-user.
+.SH OPTIONS
+.ne 2
+.na
+\fB\fB\fR\fB-c\fR \fIcomment\fR\fR
+.ad
+.RS 16n
+A short description of the login, enclosed in quotes. It is limited to a
+maximum of 128 characters and defaults to an empty field.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-e\fR \fIexpire\fR\fR
+.ad
+.RS 16n
+Specify the expiration date for a login. After this date, no user will be able
+to access this login. The expire option argument is a date entered using one of
+the date formats included in the template file \fB/etc/datemsk\fR. See
+\fBgetdate\fR(3C).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR \fIinactive\fR\fR
+.ad
+.RS 16n
+The maximum number of days allowed between uses of a login ID before that
+\fBID\fR is declared invalid. Normal values are positive integers. A value of
+\fB0\fR defeats the status.
+.sp
+Changing the password reactivates an account for the inactivity period.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\fR\fB-g\fR \fIgid\fR\fR
+.ad
+.RS 16n
+\fBGID\fR of \fIname\fR. This number must range from 0 to the maximum
+non-negative value for the system. The default is 1.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\fR\fB-h\fR \fIhomedir\fR\fR
+.ad
+.RS 16n
+Home directory of \fIname\fR. It is limited to a maximum of 256 characters and
+defaults to \fB/usr/\fR\fIname\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-K\fR \fIkey=value\fR\fR
+.ad
+.RS 16n
+Set a \fIkey=value\fR pair. See \fBuser_attr\fR(5), \fBauth_attr\fR(5), and
+\fBprof_attr\fR(5). The valid \fIkey=value\fR pairs are defined in
+\fBuser_attr\fR(5), but the "type" key is subject to the \fBusermod\fR(8) and
+\fBrolemod\fR(8) restrictions. Multiple \fIkey=value\fR pairs may be added
+with multiple \fB-K\fR options.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-k\fR \fIskel_dir\fR\fR
+.ad
+.RS 16n
+A directory that contains skeleton information (such as \fB\&.profile\fR) that
+can be copied into a new user's home directory. This directory must already
+exist. The system provides the \fB/etc/skel\fR directory that can be used for
+this purpose.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR \fIlogname\fR\fR
+.ad
+.RS 16n
+This option changes the \fIname\fR to \fIlogname\fR. It is used only with the
+\fB-m\fR option. The total size of each login entry is limited to a maximum of
+511 bytes in each of the password files.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-o\fR\fR
+.ad
+.RS 16n
+This option allows a \fBUID\fR to be non-unique. It is used only with the
+\fB-u\fR option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\fR\fB-s\fR \fIshell\fR\fR
+.ad
+.RS 16n
+Login shell for \fIname\fR. It should be the full pathname of the program that
+will be executed when the user logs in. The maximum size of \fIshell\fR is 256
+characters. The default is for this field to be empty and to be interpreted as
+\fB/usr/bin/sh\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\fR\fB-u\fR \fIuid\fR\fR
+.ad
+.RS 16n
+\fBUID\fR of the \fIname\fR. This number must range from 0 to the maximum
+non-negative value for the system. It defaults to the next available \fBUID\fR
+greater than 99. Without the \fB-o\fR option, it enforces the uniqueness of a
+\fBUID.\fR
+.RE
+
+.SH FILES
+.in +2
+.nf
+\fB/etc/passwd\fR
+\fB/etc/shadow\fR
+\fB/etc/opasswd\fR
+\fB/etc/oshadow\fR
+.fi
+.in -2
+.sp
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.LP
+.BR passwd (1),
+.BR auth_attr (5),
+.BR passwd (5),
+.BR prof_attr (5),
+.BR shadow (5),
+.BR user_attr (5),
+.BR attributes (7),
+.BR rolemod (8),
+.BR useradd (8),
+.BR userdel (8),
+.BR usermod (8)
+.SH EXIT STATUS
+.LP
+The \fBpassmgmt\fR command exits with one of the following values:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 5n
+Success.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB1\fR\fR
+.ad
+.RS 5n
+Permission denied.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB2\fR\fR
+.ad
+.RS 5n
+Invalid command syntax. Usage message of the \fBpassmgmt\fR command is
+displayed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB3\fR\fR
+.ad
+.RS 5n
+Invalid argument provided to option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB4\fR\fR
+.ad
+.RS 5n
+UID in use.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB5\fR\fR
+.ad
+.RS 5n
+Inconsistent password files (for example, \fIname\fR is in the
+\fB/etc/passwd\fR file and not in the \fB/etc/shadow\fR file, or vice versa).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB6\fR\fR
+.ad
+.RS 5n
+Unexpected failure. Password files unchanged.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB7\fR\fR
+.ad
+.RS 5n
+Unexpected failure. Password file(s) missing.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB8\fR\fR
+.ad
+.RS 5n
+Password file(s) busy. Try again later.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB9\fR\fR
+.ad
+.RS 5n
+\fIname\fR does not exist (if \fB-m\fR or \fB-d\fR is specified), already
+exists (if \fB-a\fR is specified), or \fBlogname\fR already exists (if
+\fB\fR\fB-m\fR \fB-l\fR is specified).
+.RE
+
+.SH NOTES
+.LP
+Do not use a colon (\fB:\fR) or \fBRETURN\fR as part of an argument. It is
+interpreted as a field separator in the password file. The \fBpassmgmt\fR
+command will be removed in a future release. Its functionality has been
+replaced and enhanced by \fBuseradd\fR, \fBuserdel\fR, and \fBusermod\fR. These
+commands are currently available.
+.sp
+.LP
+This command only modifies password definitions in the local \fB/etc/passwd\fR
+and \fB/etc/shadow\fR files. If a network nameservice
+is being used to supplement the local files with additional entries,
+\fBpassmgmt\fR cannot change information supplied by the network nameservice.
diff --git a/usr/src/man/man8/pbind.8 b/usr/src/man/man8/pbind.8
new file mode 100644
index 0000000000..b6c0fcae4c
--- /dev/null
+++ b/usr/src/man/man8/pbind.8
@@ -0,0 +1,361 @@
+'\" te
+.\" Copyright 2015 Ryan Zezeski
+.\" Copyright (c) 2008, Sun Microsystems, Inc.
+.\" All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PBIND 8 "Feb 25, 2008"
+.SH NAME
+pbind \- control and query bindings of processes or LWPs
+.SH SYNOPSIS
+.LP
+.nf
+\fBpbind\fR \fB-b\fR \fIprocessor_id\fR \fIpid\fR [\fI/lwpid\fR]...
+.fi
+
+.LP
+.nf
+\fBpbind\fR \fB-e\fR \fIprocessor_id\fR \fIcmd\fR [\fIargs\fR...]
+.fi
+
+.LP
+.nf
+\fBpbind\fR [\fB-q\fR] [\fIpid\fR [\fI/lwpid\fR]]...
+.fi
+
+.LP
+.nf
+\fBpbind\fR \fB-Q\fR [\fIprocessor_id\fR]...
+.fi
+
+.LP
+.nf
+\fBpbind\fR \fB-u\fR \fIpid\fR [\fI/lwpid\fR]...
+.fi
+
+.LP
+.nf
+\fBpbind\fR \fB-U\fR [\fIprocessor_id\fR]...
+.fi
+
+.SH DESCRIPTION
+.LP
+\fBpbind\fR controls and queries bindings of processes and LWPs (lightweight
+processes) to processors. \fBpbind\fR can also remove processor bindings that
+were previously established.
+.sp
+.LP
+When an LWP is bound to a processor, it will be executed only by that processor
+except when the LWP requires a resource that is provided only by another
+processor. The binding is not exclusive, that is, the processor is free to
+execute other LWPs as well.
+.sp
+.LP
+Bindings are inherited, so new LWPs and processes created by a bound LWP will
+have the same binding. Binding an interactive shell to a processor, for
+example, binds all commands executed by the shell.
+.sp
+.LP
+The \fIprocessor_id\fR must be present and on-line. Use the
+\fBpsrinfo\fR(8) command to determine which processors are
+available.
+.sp
+.LP
+Superusers may bind or unbind any process or LWP, while other users can bind or
+unbind any process or LWP for which they have permission to signal, that is,
+any process that has the same effective user ID as the user.
+.SH OPTIONS
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-b\fR \fIprocessor_id\fR\fR
+.ad
+.sp .6
+.RS 4n
+Binds all or a subset of the LWPs of the specified processes to
+\fIprocessor_id\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB-e\fR \fIprocessor_id\fR
+.ad
+.sp .6
+.RS 4n
+Execute a command while bound to \fIprocessor_id\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-q\fR\fR
+.ad
+.sp .6
+.RS 4n
+Displays the bindings of the specified processes or of all processes. If a
+process is composed of multiple LWPs which have different bindings and the LWPs
+are not explicitly specified, the bindings of only one of the bound LWPs will
+be displayed. The bindings of a subset of LWPs can be displayed by appending
+"/lwpids" to the process \fBID\fRs. Multiple LWPs may be selected using "-" and
+"," delimiters. See EXAMPLES.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-Q\fR\fR
+.ad
+.sp .6
+.RS 4n
+Displays the LWPs bound to the specified list of processors, or all LWPs with
+processor bindings. For processes composed of multiple LWPs, the bindings of
+individual LWPs will be displayed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-u\fR\fR
+.ad
+.sp .6
+.RS 4n
+Removes the bindings of all or a subset of the LWPs of the specified processes,
+allowing them to be executed on any on-line processor.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-U\fR\fR
+.ad
+.sp .6
+.RS 4n
+Removes the bindings of all LWPs bound to the specified list of processors, or
+to any processor if no argument is specified.
+.RE
+
+.SH OPERANDS
+.LP
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fB\fIpid\fR\fR
+.ad
+.sp .6
+.RS 4n
+The process \fBID\fR of the process to be controlled or queried.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIlwpid\fR\fR
+.ad
+.sp .6
+.RS 4n
+The set of LWP IDs of the specified process to be controlled or queried. The
+syntax for selecting \fBLWP\fR \fBID\fRs is as follows:
+.sp
+.in +2
+.nf
+2,3,4-8 LWP IDs 2, 3, and 4 through 8
+-4 LWPs whose IDs are 4 or below
+4- LWPs whose IDs are 4 or above
+.fi
+.in -2
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIprocessor_id\fR\fR
+.ad
+.sp .6
+.RS 4n
+The processor \fBID\fR of the processor to be controlled or queried.
+.RE
+
+.sp
+.ne 2
+.na
+\fIcmd [args...]\fR
+.ad
+.sp .6
+.RS 4n
+The command to execute along with optional arguments.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRBinding Processes
+.sp
+.LP
+The following example binds processes 204 and 223 to processor 2:
+
+.sp
+.in +2
+.nf
+example% \fBpbind -b 2 204 223\fR
+process id 204: was 2, now 2
+process id 223: was 3, now 2
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRUnbinding a Process
+.sp
+.LP
+The following example unbinds process 204:
+
+.sp
+.in +2
+.nf
+example% \fBpbind -u 204\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRQuerying Bindings
+.sp
+.LP
+The following example queries bindings. It demonstrates that process 1 is bound
+to processor 0, process 149 has at least one LWP bound to CPU3, and process 101
+has no bound LWPs.
+
+.sp
+.in +2
+.nf
+example% \fBpbind -q 1 149 101\fR
+process id 1: 0
+process id 149: 3
+process id 101: not bound
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 4 \fRQuerying LWP Bindings
+.sp
+.LP
+The following example queries bindings of LWPs. It demonstrates that LWP 1 of
+process 149 is bound to CPU3, and LWP 2 of process 149 is not bound.
+
+.sp
+.in +2
+.nf
+example% \fBpbind -q 149/1-2\fR
+lwp id 149/1: 3
+lwp id 149/2: not bound
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 5 \fRQuerying LWP Bindings for Processor 2:
+.sp
+.LP
+The following example queries all LWPs bound to processor 2:
+
+.sp
+.in +2
+.nf
+example% \fBpbind -Q 2\fR
+lwp id 149/4: 2
+lwp id 149/5: 2
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 6 \fRExecuting a bound command:
+.sp
+.LP
+The following example executes ls while bound to processor 6:
+
+.sp
+.in +2
+.nf
+example% \fBpbind -e 6 ls -la
+.fi
+.in -2
+.sp
+
+.SH EXIT STATUS
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.sp .6
+.RS 4n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB>0\fR\fR
+.ad
+.sp .6
+.RS 4n
+An error occurred.
+.RE
+
+.SH SEE ALSO
+.LP
+.BR processor_bind (2),
+.BR processor_info (2),
+.BR sysconf (3C),
+.BR attributes (7),
+.BR psradm (8),
+.BR psrinfo (8),
+.BR psrset (8)
+.SH DIAGNOSTICS
+.ne 2
+.na
+\fB\fBpbind: cannot query pid 31: No such process\fR\fR
+.ad
+.sp .6
+.RS 4n
+The process specified did not exist or has exited.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpbind: cannot bind pid 31: Not owner\fR\fR
+.ad
+.sp .6
+.RS 4n
+The user does not have permission to bind the process.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpbind: cannot bind pid 31: Invalid argument\fR\fR
+.ad
+.sp .6
+.RS 4n
+The specified processor is not on-line.
+.RE
+
+.sp
+.ne 2
+.na
+\fBpbind: failed to exec\fR \fIcmd\fR
+.ad
+.sp .6
+.RS 4n
+Could not resolve the \fIcmd\fR from \fBPATH\fR.
+.RE
diff --git a/usr/src/man/man8/pcitool.8 b/usr/src/man/man8/pcitool.8
new file mode 100644
index 0000000000..b4fff99bfb
--- /dev/null
+++ b/usr/src/man/man8/pcitool.8
@@ -0,0 +1,224 @@
+.\"
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.\"
+.\"
+.\" Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
+.\" Copyright 2018 Nexenta Systems, Inc.
+.\"
+.Dd February 12, 2018
+.Dt PCITOOL 8
+.Os
+.Sh NAME
+.Nm pcitool
+.Nd interrupt routing tool
+.Sh SYNOPSIS
+.Ss Sy x86
+.Nm
+.Cm pci@ Ns Ar unit-address Ns | Ns Cm niu@ Ns Ar unit-address
+.Fl i Ar cpu# Ns \&, Ns Ar ino# Ns | Ns Cm all
+.Op Fl qv
+.Op Fl r Oo Fl c Oc Ns | Ns Fl w Ar cpu# Oo Fl g Oc
+.Ss SPARC
+.Nm
+.Cm pci@ Ns Ar unit-address Ns | Ns Cm niu@ Ns Ar unit-address
+.Fl i Ar ino# Ns | Ns Cm all
+.Op Fl qv
+.Op Fl r Oo Fl c Oc Ns | Ns Fl w Ar cpu# Oo Fl g Oc
+.Nm
+.Cm pci@ Ns Ar unit-address
+.Fl m Ar msi# Ns | Ns Cm all
+.Op Fl qv
+.Op Fl r Oo Fl c Oc Ns | Ns Fl w Ar cpu# Oo Fl g Oc
+.Sh DESCRIPTION
+.Nm
+is a low-level tool which provides a facility for getting and setting interrupt
+routing information.
+.Ss Interrupt Routing
+On x86 platforms, both INOs and MSI/Xs are mapped to the same interrupt vectors.
+Use
+.Nm Fl i
+option to retrieve and reroute any interrupt vectors (both INO and MSI/Xs).
+.Pp
+On SPARC platforms, the INO is mapped to an interrupt mondo, where as one or
+more MSI/Xs are mapped to an INO.
+So, INO and MSI/Xs are individually retargetable.
+Use
+.Nm Fl i
+option to retrieve or reroute a given INO, where as use
+.Nm Fl m
+option for MSI/Xs.
+.Pp
+The following options are supported by
+.Nm
+for interrupt routing:
+.Bl -tag -width Ds
+.It Fl c
+.Pq Used with Fl r .
+Dump interrupt controller information.
+.It Fl g
+.Pq Used with Fl w .
+On some platforms (such as x86) multiple MSI interrupts of a single function
+need to be rerouted together.
+Use
+.Fl g
+to do this.
+.Fl g
+works only on supported platforms and only for groups of MSI interrupts.
+(A "group" of 1 is accepted).
+When
+.Fl g
+is used, the vector provided must be the lowest-numbered vector of the group.
+The size of the group is determined internally.
+.It Fl i
+Display device and CPU routing information for INOs on a given nexus,
+or reroute the given INO or INO group to a specific CPU.
+.It Fl m
+.Pq SPARC only
+Display device and CPU routing information for MSI/Xs on a given nexus,
+or reroute the given MSI/X or MSI/X group to a specific CPU.
+.It Fl q
+No errors reported as messages.
+Unix error status still returned by program, however.
+.It Fl r
+Display device and CPU routing information for INOs on a given nexus.
+The device path and instance number of each device for each displayed INO will
+be shown.
+On some platforms, interrupts dedicated to the root complex are indicated with
+.Ql (Internal)
+appended to their pathname.
+Default if neither
+.Fl r
+nor
+.Fl w
+are specified.
+.It Fl v
+Verbose output.
+.It Fl w
+Route the given INO or MSI/X to the given CPU.
+Display the new and original routing information.
+The INO or MSI/X must be specified.
+.El
+.Sh EXIT STATUS
+The following error statuses are returned to the shell:
+.Bl -tag -width Er
+.It Er 0
+No error
+.It Er EINVAL
+Out-of-range, misaligned or otherwise invalid argument has been passed in.
+.It Er ETIME
+Timeout waiting for pending interrupt to settle before changing interrupts to
+a new CPU.
+.It Er EIO
+An IO error occurred.
+.El
+.Sh EXAMPLES
+.Bl -tag -width Ds
+.It Sy Example 1 No Showing INOs or MSI/Xs
+The command for showing all INOs on /pci@0,0 is:
+.Bd -literal
+# pcitool /pci@0,0 -i all
+.Ed
+.Pp
+The command for showing ino <0x0,0x21> on the same root nexus, along with sample
+output, is:
+.Pp
+On x86 platform:
+.Bd -literal
+# pcitool /pci@0,0 -i 0,21
+0x0,0x21: mpt 0 /pci@7b,0/pci1022,7458@11/pci1000,3060@2
+.Ed
+.Pp
+On SPARC platform:
+.Bd -literal
+# pcitool /pci@0,0 -i 21
+0x0,0x21: mpt 0 /pci@7b,0/pci1022,7458@11/pci1000,3060@2
+.Ed
+.Pp
+The command for showing MSI 0x1 on the same root nexus, along with sample
+output, is:
+.Bd -literal
+# pcitool /pci@0,0 -m 0x1
+0x0,0x1: pcieb 0 /pci@7b,0/pci10de,5d@e
+.Ed
+.It Sy Example 2 No Rerouting INOs or MSI/Xs
+Successful rerouting ino 21 above from cpu 0 to cpu 1 gives the following
+output:
+.Pp
+On x86 platform:
+.Bd -literal
+# pcitool /pci@0,0 -i 0,21 -w 1
+0x0,0x21 -> 0x1,0x20
+.Ed
+.Pp
+On SPARC platform:
+.Bd -literal
+# pcitool /pci@0,0 -i 21 -w 1
+0x0,0x21 -> 0x1,0x21
+.Ed
+.Pp
+Successful rerouting msi 1 above from cpu 1 to cpu 0 gives the following
+output:
+.Bd -literal
+# pcitool /pci@0,0 -m 1 -w 0
+0x1,0x1 -> 0x0,0x1
+.Ed
+.Pp
+Successful rerouting a group of INOs starting at 24 from cpu 0 to cpu 1 gives
+the following output:
+.Pp
+On x86 platform:
+.Bd -literal
+# pcitool /pci@0,0 -i 3,24 -w 1 -g
+0x3,0x24 => 0x1,0x22
+.Ed
+.Pp
+On SPARC platform:
+.Bd -literal
+# pcitool /pci@0,0 -i 24 -w 1 -g
+0x3,0x24 => 0x1,0x22
+.Ed
+.El
+.Sh ARCHITECTURE
+.Sy PCI-based systems
+.Sh INTERFACE STABILITY
+.Sy Volatile
+.Sh SEE ALSO
+.Xr pci 5 ,
+.Xr user_attr 5 ,
+.Xr rbac 7 ,
+.Xr su 8
+.Pp
+PCI specification
+.Po available from
+.Lk https://pcisig.com
+.Pc
+.Sh NOTES
+All values are entered in hex.
+.Pp
+Not all commands are applicable to all platforms.
+.Pp
+The user must have all privileges in order to access interrupt information.
+A regular user can access interrupt information when
+.Xr su 8
+to root or granted the
+.Qq Maintenance and Repair
+rights profile in the
+.Pa user_attr
+file.
+See
+.Xr user_attr 5
+and
+.Xr rbac 7 .
diff --git a/usr/src/man/man8/picld.8 b/usr/src/man/man8/picld.8
new file mode 100644
index 0000000000..d55774bdd2
--- /dev/null
+++ b/usr/src/man/man8/picld.8
@@ -0,0 +1,132 @@
+'\" te
+.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PICLD 8 "May 16, 2020"
+.SH NAME
+picld \- PICL daemon
+.SH SYNOPSIS
+.nf
+\fB/usr/lib/picl/picld\fR
+.fi
+
+.SH DESCRIPTION
+The Platform Information and Control Library (\fBPICL\fR) provides a mechanism
+to publish platform-specific information for clients to access in a
+platform-independent way. \fBpicld\fR maintains and controls access to the
+\fBPICL\fR information from clients and plug-in modules. The daemon is started
+in both single-user and multi-user boot mode.
+.sp
+.LP
+Upon startup, the \fBPICL\fR daemon loads and initializes the plug-in modules.
+These modules use the \fBlibpicltree\fR(3PICLTREE) interface to create nodes
+and properties in the \fBPICL\fR tree to publish platform configuration
+information. After the plug-in modules are initialized, the daemon opens the
+\fBPICL\fR daemon door to service client requests to access information in the
+\fBPICL\fR tree.
+.SS "PICL Tree"
+The \fBPICL\fR tree is the repository of all the nodes and properties created
+by the plug-in modules to represent the platform configuration. Every node in
+the \fBPICL\fR tree is an instance of a well-defined \fBPICL\fR class. The name
+of the base \fBPICL\fR class is \fBpicl\fR, which defines a basic set of
+properties that all nodes in the tree must possess. Two of those properties are
+\fBname\fR and \fB_class\fR, where \fBname\fR contains the name of the node,
+and the \fB_class\fR contains the \fBPICL\fR class name of the node. Certain
+nodes in the \fBPICL\fR tree have well-known names. For example, the name of
+the root node of the \fBPICL\fR tree is \fB/\fR and the name of the root node
+of the sub-tree containing platform device nodes is \fBplatform\fR.
+.SS "PICL plug-in Modules"
+The \fBPICL\fR plug-in modules are shared objects that publish
+platform-specific data in the \fBPICL\fR tree. They are located in well-known
+directories so that the daemon can locate and load them.
+.sp
+.LP
+Plug-in modules are located in one of the following plug-in directories
+depending on the platform-specific nature of the data that they collect and
+publish:
+.sp
+.in +2
+.nf
+/usr/platform/`uname -i`/lib/picl/plugins
+/usr/platform/`uname -m`/lib/picl/plugins
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+A plug-in module can specify its dependency on another plug-in module using the
+\fB-l\fR or \fB-R\fR linker option. The plug-ins are loaded by the daemon using
+\fBdlopen\fR(3C) according to the specified dependencies. Each plug-in module
+must define a \fB\&.init\fR section, which is executed when the plug-in module
+is loaded, to register themselves with the daemon. See
+\fBpicld_plugin_register\fR(3PICLTREE) for additional information on plug-in
+registration.
+.sp
+.LP
+The plug-in modules use the \fBlibpicltree\fR(3PICLTREE) interface to publish
+nodes and properties in the \fBPICL\fR tree so that clients can access them.
+.sp
+.LP
+When the \fBPICL\fR daemon invokes the initialization routine of the plug-in
+module, the plug-in collects the platform information and creates nodes and/or
+properties to represent the configuration in the \fBPICL\fR tree. A plug-in can
+create additional threads to monitor the platform configuration and update the
+\fBPICL\fR tree with any changes. This enables a \fBPICL\fR plug-in to operate
+as a daemon within the \fBPICL\fR framework.
+.sp
+.LP
+An environmental monitor is an example of a plug-in module that uses a thread
+to monitor the temperatures and fan speeds of the platform, then publishes the
+environmental information in the \fBPICL\fR tree so clients can access them.
+.sp
+.LP
+Clients use the \fBlibpicl\fR(3PICL) interface to send requests to \fBpicld\fR
+for accessing the \fBPICL\fR tree.
+.SH EXIT STATUS
+\fBpicld\fR does not return an exit status.
+.SH FILES
+.ne 2
+.na
+\fB\fB/var/run/picld_door\fR\fR
+.ad
+.RS 23n
+\fBPICL\fR daemon door
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/picl/picld\fR\fR
+.ad
+.RS 23n
+\fBPICL\fR daemon
+.RE
+
+.SH SEE ALSO
+.BR svcs (1),
+.BR dlopen (3C),
+.BR libpicl (3PICL),
+.BR libpicltree (3PICLTREE),
+.BR picld_log (3PICLTREE),
+.BR picld_plugin_register (3PICLTREE),
+.BR attributes (7),
+.BR smf (7),
+.BR svcadm (8)
+.SH NOTES
+The \fBpicld\fR service is managed by the service management facility,
+\fBsmf\fR(7), under the service identifier:
+.sp
+.in +2
+.nf
+svc:/system/picl
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Administrative actions on this service, such as enabling, disabling, or
+requesting restart, can be performed using \fBsvcadm\fR(8). The service's
+status can be queried using the \fBsvcs\fR(1) command.
diff --git a/usr/src/man/man8/ping.8 b/usr/src/man/man8/ping.8
new file mode 100644
index 0000000000..4c77776e5f
--- /dev/null
+++ b/usr/src/man/man8/ping.8
@@ -0,0 +1,479 @@
+'\" te
+.\" Copyright (C) 2006, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 1989 AT&T
+.\" Copyright 2015, Joyent, Inc.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PING 8 "May 21, 2015"
+.SH NAME
+ping \- send ICMP (ICMP6) ECHO_REQUEST packets to network hosts
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/ping\fR \fIhost\fR [\fItimeout\fR]
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/ping\fR \fB-s\fR [\fB-l\fR | \fB-U\fR] [\fB-abdDLnrRv\fR] [\fB-A\fR \fIaddr_family\fR]
+ [\fB-c\fR \fItraffic_class\fR] [\fB-g\fR \fIgateway\fR [\fB-g\fR \fIgateway\fR...]]
+ [\fB-N\fR \fInext_hop_router\fR] [\fB-F\fR \fIflow_label\fR] [\fB-I\fR \fIinterval\fR]
+ [\fB-i\fR \fIinterface\fR] [\fB-P\fR \fItos\fR] [\fB-p\fR \fIport\fR] [\fB-t\fR \fIttl\fR] \fIhost\fR
+ [\fIdata_size\fR] [\fInpackets\fR]
+.fi
+
+.SH DESCRIPTION
+.LP
+The utility \fBping\fR utilizes the \fBICMP\fR (\fBICMP6\fR in IPv6) protocol's
+\fBECHO_REQUEST\fR datagram to elicit an \fBICMP\fR (\fBICMP6\fR)
+\fBECHO_RESPONSE\fR from the specified \fIhost\fR or network \fIgateway\fR. If
+\fIhost\fR responds, \fBping\fR will print:
+.sp
+.in +2
+.nf
+\fIhost\fR is alive
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+on the standard output and exit. Otherwise, after \fItimeout\fR seconds, it
+will write:
+.sp
+.in +2
+.nf
+no answer from \fIhost\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The default value of \fItimeout\fR is \fB20\fR seconds.
+.sp
+.LP
+When you specify the s flag, sends one datagram per second (adjust with
+\fB-I\fR) and prints one line of output for every \fBECHO_RESPONSE\fR that it
+receives. \fBping\fR produces no output if there is no response. In this second
+form, \fBping\fR computes round trip times and packet loss statistics; it
+displays a summary of this information upon termination or timeout. The default
+\fIdata_size\fR is \fB56\fR bytes, or you can specify a size with the
+\fIdata_size\fR command-line argument. If you specify the optional
+\fInpackets\fR, \fBping\fR sends \fBping\fR requests until it either sends
+\fInpackets\fR requests or receives \fInpackets\fR replies.
+.sp
+.LP
+When using \fBping\fR for fault isolation, first \fBping\fR the local host to
+verify that the local network interface is running.
+.SH OPTIONS
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-A\fR\ \fIaddr_family\fR\fR
+.ad
+.RS 24n
+Specify the address family of the target host. \fIaddr_family\fR can be either
+\fBinet\fR or \fBinet6\fR. Address family determines which protocol to use. For
+an argument of \fBinet\fR, IPv4 is used. For \fBinet6\fR, IPv6 is used.
+.sp
+By default, if the name of a host is provided, not the literal \fBIP\fR
+address, and a valid IPv6 address exists in the name service database,
+\fBping\fR will use this address. Otherwise, if the name service database
+contains an IPv4 address, it will try the IPv4 address.
+.sp
+Specify the address family \fBinet\fR or \fBinet6\fR to override the default
+behavior. If the argument specified is \fBinet\fR, \fBping\fR will use the IPv4
+address associated with the host name. If none exists, \fBping\fR will state
+that the host is unknown and exit. It does not try to determine if an IPv6
+address exists in the name service database.
+.sp
+If the specified argument is \fBinet6\fR, \fBping\fR uses the IPv6 address that
+is associated with the host name. If none exists, \fBping\fR states that the
+host is unknown and exits.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-D\fR\fR
+.ad
+.RS 24n
+Don't allow probe packets to be fragmented. If the packet size exceeds the MTU
+of a gateway it passes through, the gateway will reject it.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-F\fR\ \fIflow_label\fR\fR
+.ad
+.RS 24n
+Specify the flow label of probe packets. The value must be an integer in the
+range from 0 to 1048575. This option is valid only on IPv6.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-I\fR \fIinterval\fR\fR
+.ad
+.RS 24n
+Turn on the statistics mode and specify the interval between successive
+transmissions. The default is one second. See the discussion of the \fB-s\fR
+option. The minimum interval is 0.01 seconds. It is an error to specify
+a smaller interval.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-L\fR\fR
+.ad
+.RS 24n
+Turn off loopback of multicast packets. Normally, members are in the host group
+on the outgoing interface, a copy of the multicast packets will be delivered to
+the local machine.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-N\fR \fInext_hop_router\fR\fR
+.ad
+.RS 24n
+Specify a next-hop router so that the probe packet goes through the specified
+router along its path to the target host. This option essentially bypasses the
+system routing table and leaves the probe packet header unmodified. Only one
+next-hop router can be specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-P\fR\ \fItos\fR\fR
+.ad
+.RS 24n
+Set the type of service (\fItos\fR) in probe packets to the specified value.
+The default is zero. The value must be an integer in the range from 0 to 255.
+Gateways also in the path can route the probe packet differently, depending
+upon the value of \fItos\fR that is set in the probe packet. This option is
+valid only on IPv4.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-R\fR\fR
+.ad
+.RS 24n
+Record route. Sets the IPv4 record route option, which stores the route of the
+packet inside the IPv4 header. The contents of the record route are only
+printed if the \fB-v\fR and \fB-s\fR options are given. They are only set on
+return packets if the target host preserves the record route option across
+echos, or the \fB-l\fR option is given. This option is valid only on IPv4.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-U\fR\fR
+.ad
+.RS 24n
+Send \fBUDP\fR packets instead of \fBICMP\fR (\fBICMP6\fR) packets. \fBping\fR
+sends \fBUDP\fR packets to consecutive ports expecting to receive back
+\fBICMP\fR (\fBICMP6\fR) \fBPORT_UNREACHABLE\fR from the target host.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-a\fR\fR
+.ad
+.RS 24n
+\fBping\fR all addresses, both IPv4 and IPv6, of the multihomed destination.
+The output appears as if \fBping\fR has been run once for each \fBIP\fR address
+of the destination. If this option is used together with \fB-A\fR, \fBping\fR
+probes only the addresses that are of the specified address family. When used
+with the \fB-s\fR option and \fInpackets\fR is not specified, \fBping\fR
+continuously probes the destination addresses in a round robin fashion. If
+\fInpackets\fR is specified, \fBping\fR sends \fInpackets\fR number of probes
+to each \fBIP\fR address of the destination and then exits.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-b\fR\fR
+.ad
+.RS 24n
+Bypass the global IPsec policy and send and receive packets in the clear for
+this connection only. This option can be used to troubleshoot network
+connectivity independent of IPsec. Because this option bypasses system-wide
+policy for this connection, it can only be used by superuser or a user granted
+the sys_net_config privilege.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-c\fR\ \fItraffic_class\fR\fR
+.ad
+.RS 24n
+Specify the traffic class of probe packets. The value must be an integer in the
+range from 0 to 255. Gateways along the path can route the probe packet
+differently, depending upon the value of \fItraffic_class\fR set in the probe
+packet. This option is valid only on IPv6.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-d\fR\fR
+.ad
+.RS 24n
+Set the \fBSO_DEBUG\fR socket option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-g\fR\ \fIgateway\fR\fR
+.ad
+.RS 24n
+Specify a loose source route gateway so that the probe packet goes through the
+specified host along the path to the target host. The maximum number of
+gateways is 8 for IPv4 and 127 for IPv6. Note that some factors such as the
+link \fBMTU\fR can further limit the number of gateways for IPv6.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-i\fR \fIinterface_address\fR\fR
+.ad
+.RS 24n
+Specify the outgoing interface address to use for multicast packets for IPv4
+and both multicast and unicast packets for IPv6. The default interface address
+for multicast packets is determined from the (unicast) routing tables.
+\fIinterface_address\fR can be a literal \fBIP\fR address, for example,
+\fB10.123.100.99\fR, or an interface name, for example, \fBeri0\fR, or an
+interface index, for example \fB2\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR\fR
+.ad
+.RS 24n
+Use to send the probe packet to the given host and back again using loose
+source routing. Usually specified with the \fB-R\fR option. If any gateways are
+specified using \fB-g\fR, they are visited twice, both to and from the
+destination. This option is ignored if the \fB-U\fR option is used.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR\fR
+.ad
+.RS 24n
+Show network addresses as numbers. \fBping\fR normally does a reverse name
+lookup on the IP addresses it extracts from the packets received. The \fB-n\fR
+option blocks the reverse lookup, so \fBping\fR prints IP addresses instead of
+host names.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR\ \fIport\fR\fR
+.ad
+.RS 24n
+Set the base \fBUDP\fR \fIport\fR number used in probes. This option is used
+with the \fB-U\fR option. The default base \fIport\fR number is 33434. The
+\fBping\fR utility starts setting the destination port number of \fBUDP\fR
+packets to this base and increments it by one at each probe.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-r\fR\fR
+.ad
+.RS 24n
+Bypass the normal routing tables and send directly to a host on an attached
+network. If the host is not on a directly attached network, an error is
+returned. This option can be used to \fBping\fR a local host through an
+interface that has been dropped by the router daemon. See \fBin.routed\fR(8).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR\fR
+.ad
+.RS 24n
+Send one datagram per second and collect statistics.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-t\fR\ \fIttl\fR\fR
+.ad
+.RS 24n
+Specify the IPv4 time to live, or IPv6 hop limit, for unicast and multicast
+packets. The default time to live (hop limit) for unicast packets can be set
+with the \fBndd\fR module, \fB/dev/icmp\fR, using the \fBicmp_ipv4_ttl\fR
+variable for IPv4 and the \fBicmp_ipv6_hoplimit\fR variable for IPv6. The
+default time to live (hop limit) for multicast is one hop. See \fBEXAMPLES\fR.
+For further information, see \fBndd\fR(8).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.RS 24n
+Verbose output. List any \fBICMP\fR (\fBICMP6\fR) packets, other than replies
+from the target host.
+.RE
+
+.SH OPERANDS
+.ne 2
+.na
+\fB\fIhost\fR\fR
+.ad
+.RS 8n
+The network host
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRUsing \fBping\fR With IPv6
+.sp
+.LP
+This example shows \fBping\fR sending probe packets to all the IPv6 addresses
+of the host \fBxyz\fR, one at a time. It sends an \fBICMP6\fR
+\fBECHO_REQUEST\fR every second until the user interrupts it.
+
+.sp
+.in +2
+.nf
+istanbul% \fBping -s -A inet6 -a xyz\fR
+PING xyz: 56 data bytes
+64 bytes from xyz (4::114:a00:20ff:ab3d:83ed): icmp_seq=0. time=0.479 ms
+64 bytes from xyz (fec0::114:a00:20ff:ab3d:83ed): icmp_seq=1. time=0.843 ms
+64 bytes from xyz (4::114:a00:20ff:ab3d:83ed): icmp_seq=2. time=0.516 ms
+64 bytes from xyz (fec0::114:a00:20ff:ab3d:83ed): icmp_seq=3. time=4.943 ms
+64 bytes from xyz (4::114:a00:20ff:ab3d:83ed): icmp_seq=4. time=0.485 ms
+64 bytes from xyz (fec0::114:a00:20ff:ab3d:83ed): icmp_seq=5. time=2.201 ms
+^C
+----xyz PING Statistics----
+6 packets transmitted, 6 packets received, 0% packet loss
+round-trip (ms) min/avg/stddev = 0.479/1.583/4.943/1.823
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRUsing \fBndd\fR to Set the \fBicmp_ipv6_hoplimit\fR
+.sp
+.LP
+This example shows the \fBndd\fR module, \fB/dev/icmp\fR, used to set the
+\fBicmp_ipv6_hoplimit\fR.
+
+.sp
+.in +2
+.nf
+# ndd -set /dev/icmp icmp_ipv6_hoplimit 100
+.fi
+.in -2
+.sp
+
+.SH EXIT STATUS
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 12n
+Successful operation; the machine is alive.
+.RE
+
+.sp
+.ne 2
+.na
+\fBnon-zero\fR
+.ad
+.RS 12n
+An error has occurred. Either a malformed argument has been specified, or the
+machine was not alive.
+.RE
+
+.SH SEE ALSO
+.LP
+.BR icmp (4P),
+.BR icmp6 (4P),
+.BR attributes (7),
+.BR ifconfig (8),
+.BR in.routed (8),
+.BR ndd (8),
+.BR netstat (8),
+.BR rpcinfo (8),
+.BR traceroute (8)
+
+.SH DIAGNOSTICS
+.ne 2
+.na
+\fBping: warning: ICMP responses received, but name service lookups
+are taking a while. Use ping -n to disable name service lookups.\fR
+.ad
+.sp .6
+.RS 4n
+When the
+.B -n
+flag is not specified,
+.B ping
+tries to lookup the name corresponding to the IP address that it
+received via name services. If name services are unavailable, it may
+take time before the system properly times out the name service lookups.
+As a result, it may appear that no ICMP replies are being received when
+they in fact are. This diagnostic indicates that this has occurred and
+indicates that there are valid responses and that using the
+.B -n
+flag will stop this from occurring.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBping: warning: timing accuracy diminished -- setsockopt
+SO_TIMESTAMP failed\fR\fR
+.ad
+.sp .6
+.RS 4n
+By default, the system attempts to use the
+.B SO_TIMESTAMP
+socket option to allow for more accurate time stamps that reflect when
+the ICMP echo replies were received by the system as opposed to when
+they were received by the
+.B ping
+command. These differences may occur because an operator stopped the
+process or because
+.B ping
+was blocked up behind a name service look up. When this diagnostic is
+emitted, the
+.B ping
+command will continue to function, but it will be doing the time
+stamping itself, which may cause the timing intervals reported to be
+longer than they actually are.
+.RE
diff --git a/usr/src/man/man8/pkgadd.8 b/usr/src/man/man8/pkgadd.8
new file mode 100644
index 0000000000..c67f4d05e0
--- /dev/null
+++ b/usr/src/man/man8/pkgadd.8
@@ -0,0 +1,482 @@
+'\" te
+.\" Copyright (c) 2017 Peter Tribble.
+.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PKGADD 8 "Mar 2, 2017"
+.SH NAME
+pkgadd \- transfer software packages to the system
+.SH SYNOPSIS
+.LP
+.nf
+\fBpkgadd\fR [\fB-nv\fR] [\fB-a\fR \fIadmin\fR] [\fB-G\fR] [ [\fB-M\fR] \fB-R\fR \fIroot_path\fR]
+ [\fB-r\fR \fIresponse\fR] [\fB-V\fR \fIfs_file\fR]
+ [\fB-d\fR \fIdevice\fR | \fB-d\fR \fIdatastream\fR \fIpkginst\fR | all]
+ [\fIpkginst\fR | \fB-Y\fR \fIcategory\fR [\fI, category\fR]...]
+.fi
+
+.LP
+.nf
+\fBpkgadd\fR \fB-s\fR [\fB-d\fR \fIdevice\fR | \fB-d\fR \fIdatastream\fR \fIpkginst\fR | all]
+ [\fIpkginst\fR | \fB-Y\fR \fIcategory\fR [\fI, category\fR]...]
+.fi
+
+.SH DESCRIPTION
+.LP
+\fBpkgadd\fR transfers the contents of a software package from the distribution
+medium or directory to install it onto the system. Used without the \fB-d\fR
+\fIdevice\fR source specifier, \fBpkgadd\fR looks in the default spool
+directory (\fB/var/spool/pkg\fR) for the package. Used with the \fB-s\fR
+option, it writes the package to a spool directory instead of installing it.
+.sp
+.LP
+The \fBpkgadd\fR utility requires an amount of temporary space the size of the
+package that is being installed. \fBpkgadd\fR determines which temporary
+directory to use by checking for the existence of the \fB$TMPDIR\fR environment
+variable. If \fB$TMPDIR\fR is not defined, \fBpkgadd\fR uses \fBP_tmpdir\fR
+from \fBstdio.h\fR. \fBP_tmpdir\fR has a default of \fB/var/tmp/\fR.
+.sp
+.LP
+Certain unbundled and third-party packages are no longer entirely compatible
+with the latest version of \fBpkgadd\fR. These packages require user
+interaction throughout the installation and not just at the very beginning, or
+require that their request scripts be run as the root user.
+.sp
+.LP
+To install these older packages (released prior to Solaris 2.4), set the
+following environment variable: \fBNONABI_SCRIPTS=TRUE\fR
+.sp
+.LP
+As long as this environment variable is set, \fBpkgadd\fR permits keyboard
+interaction throughout the installation and package request scripts are run as
+\fBroot\fR.
+.sp
+.LP
+If you have package request scripts that require running as user \fBroot\fR
+(instead of \fBnoaccess\fR [the default] or user \fBinstall\fR), use the
+\fBrscript_alt\fR parameter in the \fBadmin\fR(5) file to make an appropriate
+selection. See \fBadmin\fR(5).
+.sp
+.LP
+Note that, in Solaris 8 and Solaris 9, the default user when running a request
+script was either \fBroot\fR or \fBnobody\fR, depending on the operating
+system's patch level. In the current release, the default user is
+\fBnoaccess\fR.
+.sp
+.LP
+When running \fBpkgadd\fR in the global zone (see \fBzones\fR(7)), a package
+that contains a request script (see \fBpkgask\fR(8)) is added only to the
+global zone. The package is not propagated to any current or
+yet-to-be-installed non-global zone. This behavior mimics the effect of the
+\fB-G\fR option, described below.
+.sp
+.LP
+Package commands are \fBlargefile\fR(7)-aware. They handle files larger than 2
+GB in the same way they handle smaller files. In their current implementations,
+\fBpkgadd\fR, \fBpkgtrans\fR(1) and other package commands can process a
+datastream of up to 4 GB.
+.sp
+.LP
+The \fB-d\fR, \fB-Y\fR, and \fIpkginst\fR arguments shown in the SYNOPSIS are
+described under OPERANDS, following OPTIONS.
+.SH OPTIONS
+.LP
+The supported options are described as follows. The \fB-d\fR \fIdevice\fR
+source specifier is described under OPERANDS, below.
+.sp
+.ne 2
+.na
+\fB\fB\fR\fB-a\fR \fIadmin\fR\fR
+.ad
+.sp .6
+.RS 4n
+Define an installation administration file, \fIadmin\fR, to be used in place of
+the default administration file. The token \fBnone\fR overrides the use of any
+\fIadmin\fR file, and thus forces interaction with the user. Unless a full path
+name is given, \fBpkgadd\fR first looks in the current working directory for
+the administration file. If the specified administration file is not in the
+current working directory, \fBpkgadd\fR looks in the
+\fB/var/sadm/install/admin\fR directory for the administration file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-G\fR\fR
+.ad
+.sp .6
+.RS 4n
+Add package(s) in the current zone only. When used in the global zone, the
+package is added to the global zone only and is not propagated to any existing
+or yet-to-be-created non-global zone. When used in a non-global zone, the
+package(s) are added to the non-global zone only.
+.sp
+This option causes package installation to fail if, in the \fBpkginfo\fR file
+for a package, \fBSUNW_PKG_ALLZONES\fR is set to true. See \fBpkginfo\fR(5).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-M\fR\fR
+.ad
+.sp .6
+.RS 4n
+Instruct \fBpkgadd\fR not to use the \fB$\fR\fIroot_path\fR\fB/etc/vfstab\fR
+file for determining the client's mount points. This option assumes the mount
+points are correct on the server and it behaves consistently with Solaris 2.5
+and earlier releases.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR\fR
+.ad
+.sp .6
+.RS 4n
+Installation occurs in non-interactive mode. Suppress output of the list of
+installed files. The default mode is interactive.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\fR\fB-r\fR \fIresponse\fR\fR
+.ad
+.sp .6
+.RS 4n
+Identify a file or directory which contains output from a previous
+\fBpkgask\fR(8) session. This file supplies the interaction responses that
+would be requested by the package in interactive mode. \fIresponse\fR must be a
+full pathname.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-R\fR \fIroot_path\fR\fR
+.ad
+.sp .6
+.RS 4n
+Define the full path name of a directory to use as the \fIroot_path\fR. All
+files, including package system information files, are relocated to a directory
+tree starting in the specified \fIroot_path\fR. The \fIroot_path\fR may be
+specified when installing to a client from a server (for example,
+\fB/export/root/client1\fR).
+.LP
+Note -
+.sp
+.RS 2
+The root file system of any non-global zones must not be referenced with the
+\fB-R\fR option. Doing so might damage the global zone's file system, might
+compromise the security of the global zone, and might damage the non-global
+zone's file system. See \fBzones\fR(7).
+.RE
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\fR\fB-s\fR \fIspool\fR\fR
+.ad
+.sp .6
+.RS 4n
+Write the package into the directory \fIspool\fR instead of installing it.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.sp .6
+.RS 4n
+Trace all of the scripts that get executed by \fBpkgadd\fR, located in the
+\fIpkginst\fR\fB/install\fR directory. This option is used for debugging the
+procedural and non-procedural scripts.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-V\fR \fIfs_file\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify an alternative \fIfs_file\fR to map the client's file systems. For
+example, used in situations where the \fB$\fR\fIroot_path\fR\fB/etc/vfstab\fR
+file is non-existent or unreliable.
+.RE
+
+.sp
+.LP
+When executed without options or operands, \fBpkgadd\fR uses
+\fB/var/spool/pkg\fR (the default spool directory).
+.SH OPERANDS
+.LP
+The following operands are supported:
+.SS "Sources"
+.LP
+By default, pkgadd looks in the \fB/var/spool/pkg\fR directory when searching
+for instances of a package to install or spool. Optionally, the source for the
+package instances to be installed or spooled can be specified using:
+.sp
+.ne 2
+.na
+\fB\fB-d\fR \fIdevice\fR\fR
+.ad
+.br
+.na
+\fB\fB-d\fR \fIdatastream\fR \fIpkgname\fR,... | \fBall\fR\fR
+.ad
+.sp .6
+.RS 4n
+Install or copy a package from \fIdevice\fR. \fIdevice\fR can be any of the
+following:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+A full path name to a directory or the identifiers for tape, floppy disk, or
+removable disk (for example, \fB/var/tmp\fR or
+\fB/floppy/\fIfloppy_name\fR\fR).
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+A device alias (for example, \fB/floppy/floppy0\fR).
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+A datastream created by \fBpkgtrans\fR (see \fBpkgtrans\fR(1)).
+.RE
+The second form of the \fB-d\fR specifier, above, indicates the syntax you use
+when specifying a datastream. In this case you must specify either a
+comma-separated list of package names or the keyword \fBall\fR.
+.RE
+
+.SS "Instances"
+.LP
+By default, \fBpkgadd\fR searches the specified source, and presents an
+interactive menu allowing the user to select which package instances found on
+the source are to be installed. As an alternative, the package instances to be
+installed can be specified using:
+.sp
+.ne 2
+.na
+\fB\fIpkginst\fR\fR
+.ad
+.sp .6
+.RS 4n
+The package instance or list of instances to be installed. The token \fBall\fR
+may be used to refer to all packages available on the source medium. The format
+\fIpkginst\fR\fB\&.*\fR can be used to indicate all instances of a package.
+.sp
+The asterisk character (\fB*\fR) is a special character to some shells and may
+need to be escaped. In the C-Shell, the asterisk must be surrounded by single
+quotes (\fB\&'\fR) or preceded by a backslash (\fB\e\fR).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-Y\fR \fIcategory\fR[,\fIcategory\fR...]\fR
+.ad
+.sp .6
+.RS 4n
+Install packages based on the value of the \fBCATEGORY\fR parameter stored in
+the package's \fBpkginfo\fR(5) file. All packages on the source medium whose
+\fBCATEGORY\fR matches one of the specified categories will be selected for
+installation or spooling.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRInstalling a Package from a Solaris DVD
+.sp
+.LP
+The following example installs a package from a Solaris DVD. You are prompted
+for the name of the package you want to install.
+
+.sp
+.in +2
+.nf
+example# \fBpkgadd -d /cdrom/cdrom0/s0/Solaris_10/Product\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRInstalling a Set of Packages from a Datastream
+.sp
+.LP
+The example command shown below installs all of the packages in the datastream
+specified by the \fB-d\fR source specifier. Prior to this command, this
+datastream must have been created with the \fBpkgtrans\fR(1) command.
+
+.sp
+.in +2
+.nf
+example# \fBpkgadd -d /var/tmp/datastream all\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The keyword \fBall\fR specifies that all of the packages found in the
+designated datastream will be installed.
+
+.SH EXIT STATUS
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.sp .6
+.RS 4n
+Successful completion
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB1\fR\fR
+.ad
+.sp .6
+.RS 4n
+Fatal error.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB2\fR\fR
+.ad
+.sp .6
+.RS 4n
+Warning.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB3\fR\fR
+.ad
+.sp .6
+.RS 4n
+Interruption.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB4\fR\fR
+.ad
+.sp .6
+.RS 4n
+Administration.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB5\fR\fR
+.ad
+.sp .6
+.RS 4n
+Administration. Interaction is required. Do not use \fBpkgadd\fR \fB-n\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB10\fR\fR
+.ad
+.sp .6
+.RS 4n
+Reboot after installation of all packages.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB20\fR\fR
+.ad
+.sp .6
+.RS 4n
+Reboot after installation of this package.
+.RE
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/var/sadm/install/logs/\fR\fR
+.ad
+.sp .6
+.RS 4n
+Location where \fBpkgadd\fR logs an instance of software installation.
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.LP
+.BR pkginfo (1),
+.BR pkgmk (1),
+.BR pkgparam (1),
+.BR pkgproto (1),
+.BR pkgtrans (1),
+.BR admin (5),
+.BR pkginfo (5),
+.BR attributes (7),
+.BR largefile (7),
+.BR zones (7),
+.BR installf (8),
+.BR pkgadm (8),
+.BR pkgask (8),
+.BR pkgchk (8),
+.BR pkgrm (8),
+.BR removef (8)
+
+.SH NOTES
+.LP
+When transferring a package to a spool directory, the \fB-r\fR, \fB-n\fR, and
+\fB-a\fR options cannot be used.
+.sp
+.LP
+The \fB-r\fR option can be used to indicate a directory name as well as a
+filename. The directory can contain numerous response files, each sharing the
+name of the package with which it should be associated. This would be used, for
+example, when adding multiple interactive packages with one invocation of
+\fBpkgadd\fR. In this situation, each package would need a response file. If
+you create response files with the same name as the package (for example,
+\fBpkinst1\fR and \fBpkinst2\fR), then name the directory in which these files
+reside after the \fB-r\fR.
+.sp
+.LP
+The \fB-n\fR option causes the installation to halt if any interaction is
+needed to complete it.
+.sp
+.LP
+If the default \fIadmin\fR file is too restrictive, the administration file may
+need to be modified to allow for total non-interaction during a package
+installation. See \fBadmin\fR(5) for details.
diff --git a/usr/src/man/man8/pkgadm.8 b/usr/src/man/man8/pkgadm.8
new file mode 100644
index 0000000000..b0816eef84
--- /dev/null
+++ b/usr/src/man/man8/pkgadm.8
@@ -0,0 +1,201 @@
+'\" te
+.\" Copyright (c) 2017 Peter Tribble.
+.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
+.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PKGADM 8 "Mar 2, 2017"
+.SH NAME
+pkgadm \- manage packaging system
+.SH SYNOPSIS
+.LP
+.nf
+\fBpkgadm dbstatus\fR [\fB-R\fR \fIrootpath\fR]
+.fi
+
+.LP
+.nf
+\fBpkgadm sync\fR [\fB-R\fR \fIrootpath\fR] [\fB-q\fR]
+.fi
+
+.LP
+.nf
+\fBpkgadm\fR \fB-V\fR
+.fi
+
+.LP
+.nf
+\fBpkgadm\fR \fB-?\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBpkgadm\fR utility is used for managing the packaging
+system. It has several subcommands that perform various operations relating to
+packaging.
+.sp
+.ne 2
+.na
+\fB\fBsync\fR\fR
+.ad
+.sp .6
+.RS 4n
+Writes the contents file and rolls the contents log file. With use of the
+\fB-q\fR option, forces the contents file server to quit.
+.RE
+
+.SS "Internal Install Database"
+.LP
+The Solaris operating system relies upon enhanced System V revision 4 (SVr4)
+packages as the basis for its software installation and revision management.
+The package maintenance software stores information about installed packages in
+an internal database. The \fBpkgadm\fR subcommand \fBdbstatus\fR is used to
+determine how the package internal database is implemented. The \fBdbstatus\fR
+command returns a string that indicates the type of internal database in use.
+In the current implementation, the \fBdbstatus\fR command always returns the
+string \fBtext\fR, which indicates that the \fBcontents\fR(5) package database
+is in use. Future releases of Solaris might supply alternative database
+implementations.
+.SH OPTIONS
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-q\fR\fR
+.ad
+.sp .6
+.RS 4n
+(Applies to \fBsync\fR subcommand.) Shuts down the contents file cache daemon.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-R\fR \fIrootpath\fR\fR
+.ad
+.sp .6
+.RS 4n
+Defines the full name of a directory to use as the root (\fB/\fR) path.
+.LP
+Note -
+.sp
+.RS 2
+The root file system of any non-global zones must not be referenced with the
+\fB-R\fR option. Doing so might damage the global zone's file system, might
+compromise the security of the global zone, and might damage the non-global
+zone's file system. See \fBzones\fR(7).
+.RE
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-V\fR\fR
+.ad
+.sp .6
+.RS 4n
+Print version associated with packaging tools.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-?\fR\fR
+.ad
+.sp .6
+.RS 4n
+Print help message.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRSynchronizing the contents file
+.sp
+.LP
+The following example forces any pending changes to the contents(5) file to be flushed and the pkgserv daemon to shut down.
+
+.sp
+.in +2
+.nf
+example% pkgadm sync -q
+.fi
+.in -2
+.sp
+
+.SH EXIT STATUS
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.sp .6
+.RS 4n
+successful completion
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnon-zero\fR\fR
+.ad
+.sp .6
+.RS 4n
+fatal error
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.LP
+.BR pkginfo (1),
+.BR pkgmk (1),
+.BR pkgparam (1),
+.BR pkgproto (1),
+.BR pkgtrans (1),
+.BR svcs (1),
+.BR admin (5),
+.BR contents (5),
+.BR exec_attr (5),
+.BR pkginfo (5),
+.BR attributes (7),
+.BR rbac (7),
+.BR smf (7),
+.BR installf (8),
+.BR pkgadd (8),
+.BR pkgask (8),
+.BR pkgrm (8),
+.BR removef (8),
+.BR svcadm (8)
+.sp
+.LP
+\fI\fR
+.SH NOTES
+.LP
+The service for \fBpkgadm\fR is managed by the service management facility,
+\fBsmf\fR(7), under the service identifier:
+.sp
+.in +2
+.nf
+svc:/system/pkgserv
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Administrative actions on this service, such as enabling, disabling, or
+requesting restart, can be performed using \fBsvcadm\fR(8). The service's
+status can be queried using the \fBsvcs\fR(1) command.
diff --git a/usr/src/man/man8/pkgask.8 b/usr/src/man/man8/pkgask.8
new file mode 100644
index 0000000000..f19a8adf93
--- /dev/null
+++ b/usr/src/man/man8/pkgask.8
@@ -0,0 +1,140 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 1998, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PKGASK 8 "Apr 6, 2005"
+.SH NAME
+pkgask \- stores answers to a request script
+.SH SYNOPSIS
+.LP
+.nf
+\fBpkgask\fR [\fB-d\fR \fIdevice\fR] [\fB-R\fR \fIroot_path\fR] \fB-r\fR \fIresponse\fR \fIpkginst\fR...
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBpkgask\fR allows the administrator to store answers to an interactive
+package (one with a \fBrequest\fR script, that is, a user-created file that
+must be named \fBrequest\fR). Invoking this command generates a response file
+that is then used as input at installation time. The use of this response file
+prevents any interaction from occurring during installation since the file
+already contains all of the information the package needs.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported
+.sp
+.ne 2
+.na
+\fB\fB-d\fR\fI device\fR\fR
+.ad
+.RS 16n
+Run the request script for a package on \fIdevice\fR. \fIdevice\fR can be a
+directory pathname or the identifiers for tape, floppy disk or removable disk
+(for example, \fB/var/tmp\fR, \fB/dev/diskette\fR, and \fB/dev/dsk/c1d0s0\fR).
+The default device is the installation spool directory.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-R\fR\fI root_path\fR\fR
+.ad
+.RS 16n
+Define the full path name of a directory to use as the \fIroot_path\fR. All
+files, including package system information files, are relocated to a directory
+tree starting in the specified \fIroot_path\fR.
+.LP
+Note -
+.sp
+.RS 2
+The root file system of any non-global zones must not be referenced with the
+\fB-R\fR option. Doing so might damage the global zone's file system, might
+compromise the security of the global zone, and might damage the non-global
+zone's file system. See \fBzones\fR(7).
+.RE
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-r\fR\fI response\fR\fR
+.ad
+.RS 16n
+Identify a file or directory which should be created to contain the responses
+to interaction with the package. The name must be a full pathname. The file, or
+directory of files, can later be used as input to the \fBpkgadd\fR(8) command.
+.RE
+
+.SH OPERANDS
+.sp
+.LP
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fB\fIpkginst\fR\fR
+.ad
+.RS 11n
+Specify the package instance, or list of instances for which \fBrequest\fR
+scripts will be created. The token \fBall\fR may be used to refer to all
+packages available on the source medium.
+.RE
+
+.SH EXIT STATUS
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 6n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB>0\fR\fR
+.ad
+.RS 6n
+An error occurred.
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR pkginfo (1),
+.BR pkgmk (1),
+.BR pkgparam (1),
+.BR pkgproto (1),
+.BR pkgtrans (1),
+.BR admin (5),
+.BR attributes (7),
+.BR installf (8),
+.BR pkgadd (8),
+.BR pkgchk (8),
+.BR pkgrm (8),
+.BR removef (8)
+.sp
+.LP
+\fI\fR
+.SH NOTES
+.sp
+.LP
+The \fB-r\fR option can be used to indicate a directory name as well as a
+filename. The directory name is used to create numerous response files, each
+sharing the name of the package with which it should be associated. This would
+be used, for example, when you will be adding multiple interactive packages
+with one invocation of \fBpkgadd\fR(8). Each package would need a response
+file. To create multiple response files with the same name as the package
+instance, name the directory in which the files should be created and supply
+multiple instance names with the \fBpkgask\fR command. When installing the
+packages, you will be able to identify this directory to the \fBpkgadd\fR(8)
+command.
+.sp
+.LP
+If the default \fBadmin\fR file is too restrictive, the administration file may
+need to be modified to allow for total non-interaction during a package
+installation. See \fBadmin\fR(5) for details.
diff --git a/usr/src/man/man8/pkgchk.8 b/usr/src/man/man8/pkgchk.8
new file mode 100644
index 0000000000..81ec1afb3d
--- /dev/null
+++ b/usr/src/man/man8/pkgchk.8
@@ -0,0 +1,420 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PKGCHK 8 "Oct 30, 2007"
+.SH NAME
+pkgchk \- check package installation accuracy
+.SH SYNOPSIS
+.LP
+.nf
+\fBpkgchk\fR [\fB-l\fR | \fB-acfnqvx\fR] [\fB-i\fR \fIfile\fR | -]
+ [\fB-p\fR \fIpath\fR... | \fB-P\fR \fIpartial-path\fR...] [\fB-R\fR \fIroot_path\fR]
+ [ [\fB-m\fR \fIpkgmap\fR [\fB-e\fR \fIenvfile\fR]] | pkginst... | \fB-Y\fR \fIcategory\fR,\fIcategory\fR\&.\|.\|.]
+.fi
+
+.LP
+.nf
+\fBpkgchk\fR \fB-d\fR \fIdevice\fR [\fB-l\fR | \fB-fv\fR] [\fB-i\fR \fIfile\fR | -] [\fB-M\fR] [\fB-p\fR \fIpath\fR]...
+ [\fB-V\fR \fIfs_file\fR]
+ [pkginst... | \fB-Y\fR \fIcategory\fR[,\fIcategory\fR\&.\|.\|.]]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBpkgchk\fR checks the accuracy of installed files or, by using the \fB-l\fR
+option, displays information about package files. \fBpkgchk\fR checks the
+integrity of directory structures and files. Discrepancies are written to
+standard error along with a detailed explanation of the problem.
+.sp
+.LP
+The first synopsis defined above is used to list or check the contents and/or
+attributes of objects that are currently installed on the system, or in the
+indicated \fBpkgmap\fR. Package names may be listed on the command line, or by
+default, the entire contents of a machine will be checked.
+.sp
+.LP
+The second synopsis is used to list or check the contents of a package which
+has been spooled on the specified device, but not installed. Note that
+attributes cannot be checked for spooled packages.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-a\fR\fR
+.ad
+.sp .6
+.RS 4n
+Audit the file attributes only and do not check file contents. Default is to
+check both.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-c\fR\fR
+.ad
+.sp .6
+.RS 4n
+Audit the file contents only and do not check file attributes. Default is to
+check both.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\fR\fB-d\fR \fIdevice\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify the device on which a spooled package resides. \fIdevice\fR can be a
+directory path name or the identifiers for tape, floppy disk, or removable disk
+(for example, \fB/var/tmp\fR or \fB/dev/diskette\fR).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\fR\fB-e\fR \fIenvfile\fR\fR
+.ad
+.sp .6
+.RS 4n
+Request that the package information file named as \fIenvfile\fR be used to
+resolve parameters noted in the specified \fBpkgmap\fR file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR\fR
+.ad
+.sp .6
+.RS 4n
+Correct file attributes if possible. If used with the \fB-x\fR option, this
+option removes hidden files. When \fBpkgchk\fR is invoked with this option, it
+creates directories, named pipes, links, and special devices if they do not
+already exist. If the \fB-d\fR option calls out an uninstalled package, the
+\fB-f\fR option will only take effect if the package is in directory (not
+stream) format. All file attributes will be set to agree with the entries in
+the \fBpkgmap\fR file except that setuid, setgid, and sticky bits will not be
+set in the mode.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\fR\fB-i\fR \fIfile\fR | \fB-\fR\fR
+.ad
+.sp .6
+.RS 4n
+Read a list of path names from \fIfile\fR or from stdin (\fB-\fR) and compare
+this list against the installation software database or the indicated
+\fBpkgmap\fR file. Path names that are not contained in \fIfile\fR or stdin are
+not checked.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR\fR
+.ad
+.sp .6
+.RS 4n
+List information on the selected files that make up a package. This option is
+not compatible with the \fB-a\fR, \fB-c\fR, \fB-f\fR, \fB-g\fR, and \fB-v\fR
+options.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-m\fR \fBpkgmap\fR\fR
+.ad
+.sp .6
+.RS 4n
+Check the package against the package map file, \fBpkgmap\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-M\fR\fR
+.ad
+.sp .6
+.RS 4n
+Instruct \fBpkgchk\fR not to use the \fB$\fR\fIroot_path\fR\fB/etc/vfstab\fR
+file for determining the client's mount points. This option assumes the mount
+points are correct on the server and it behaves consistently with Solaris 2.5
+and earlier releases.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR\fR
+.ad
+.sp .6
+.RS 4n
+Do not check volatile or editable files' contents. This should be used for most
+post-installation checking.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\fR\fB-p\fR \fIpath\fR\fR
+.ad
+.sp .6
+.RS 4n
+Check the accuracy only of the path name or path names listed. \fIpath\fR can
+be one or more path names separated by commas (or by whitespace, if the list is
+quoted).
+.sp
+To specify a \fIpath\fR that includes a comma, you must use the \fB-i\fR
+option, described above. See EXAMPLES.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\fR\fB-P\fR \fIpartial-path\fR\fR
+.ad
+.sp .6
+.RS 4n
+Check the accuracy of only the partial path name or path names listed.
+\fIpartial-path\fR can be one or more partial path names separated by commas
+(or by whitespace, if the list is quoted). This option can be used instead of
+\fB-p\fR and is not compatible with the other option. This option matches any
+path name that contains the string contained in the partial path. See the note
+about paths that contain commas in the description of \fB-p\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-q\fR\fR
+.ad
+.sp .6
+.RS 4n
+Quiet mode. Do not give messages about missing files.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-R\fR \fIroot_path\fR\fR
+.ad
+.sp .6
+.RS 4n
+Define the full name of a directory to use as the \fIroot_path\fR. All files,
+including package system information files, are relocated to a directory tree
+starting in the specified \fIroot_path\fR. The \fIroot_path\fR may be specified
+when installing to a client from a server (for example,
+\fB/export/root/client1\fR).
+.LP
+Note -
+.sp
+.RS 2
+The root file system of any non-global zones must not be referenced with the
+\fB-R\fR option. Doing so might damage the global zone's file system, might
+compromise the security of the global zone, and might damage the non-global
+zone's file system. See \fBzones\fR(7).
+.RE
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.sp .6
+.RS 4n
+Verbose mode. Files are listed as processed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-V\fR \fIfs_file\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify an alternative \fIfs_file\fR to map the client's file systems. For
+example, used in situations where the \fB$\fR\fIroot_path\fR\fB/etc/vfstab\fR
+file is non-existent or unreliable.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-x\fR\fR
+.ad
+.sp .6
+.RS 4n
+Search exclusive directories, looking for files which exist that are not in the
+installation software database or the indicated \fBpkgmap\fR file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-Y\fR \fIcategory\fR\fR
+.ad
+.sp .6
+.RS 4n
+Check packages based on the value of the \fBCATEGORY\fR parameter stored in the
+installed or spooled package's \fBpkginfo\fR(5) file.
+.RE
+
+.SH OPERANDS
+.sp
+.ne 2
+.na
+\fB\fIpkginst\fR\fR
+.ad
+.sp .6
+.RS 4n
+The package instance or instances to be checked. The format
+\fIpkginst\fR\fB\&.*\fR can be used to check all instances of a package. The
+default is to display all information about all installed packages.
+.sp
+The asterisk character (\fB*\fR) is a special character to some shells and may
+need to be escaped. In the C-Shell, an asterisk must be surrounded by single
+quotes (\fB\&'\fR) or preceded by a backslash (\e);
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIpartial-path\fR\fR
+.ad
+.sp .6
+.RS 4n
+A portion of a path, such as a file or directory name.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRUsing \fBpkgchk\fR for Displaying Package Installation
+Information
+.sp
+.LP
+The following example displays package installation information for
+\fB/usr/bin/ls\fR:
+
+.sp
+.in +2
+.nf
+example% \fBpkgchk -l -p /usr/bin/ls\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRChecking on Java Font Properties
+.sp
+.LP
+The following example displays package installation information for all Java
+font properties installed on the system.
+
+.sp
+.in +2
+.nf
+example% \fBpkgchk -l -P font.properties\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRSpecifying a Path That Contains a Comma
+.sp
+.LP
+Assume you want to specify the path:
+
+.sp
+.in +2
+.nf
+/platform/SUNW,Netra-T12/lib
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+List this path in a file. Here is one way in which you can do that:
+
+.sp
+.in +2
+.nf
+example% \fBecho "/platform/SUNW,Netra-T12/lib" > /tmp/p\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+You can then enter:
+
+.sp
+.in +2
+.nf
+example% \fBpkgchk -i /tmp/p -l\fR
+Pathname: /platform/SUNW,Netra-T12/lib
+Type: directory
+Expected mode: 0755
+Expected owner: root
+Expected group: bin
+Referenced by the following packages:
+ SUNWcar
+Current status: installed
+.fi
+.in -2
+.sp
+
+.SH EXIT STATUS
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.sp .6
+.RS 4n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB>0\fR\fR
+.ad
+.sp .6
+.RS 4n
+An error occurred.
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR pkginfo (1),
+.BR pkgtrans (1),
+.BR pkginfo (5),
+.BR attributes (7),
+.BR largefile (7),
+.BR pkgadd (8),
+.BR pkgask (8),
+.BR pkgrm (8)
+.sp
+.LP
+\fI\fR
+.SH NOTES
+.sp
+.LP
+Package commands are \fBlargefile\fR(7)-aware. They handle files larger than 2
+GB in the same way they handle smaller files. In their current implementations,
+\fBpkgadd\fR(8), \fBpkgtrans\fR(1) and other package commands can process a
+datastream of up to 4 GB.
diff --git a/usr/src/man/man8/pkgrm.8 b/usr/src/man/man8/pkgrm.8
new file mode 100644
index 0000000000..63cd3850da
--- /dev/null
+++ b/usr/src/man/man8/pkgrm.8
@@ -0,0 +1,319 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PKGRM 8 "Oct 30, 2007"
+.SH NAME
+pkgrm \- remove a package from the system
+.SH SYNOPSIS
+.LP
+.nf
+\fBpkgrm\fR [\fB-nv\fR] [\fB-a\fR \fIadmin\fR] [ [\fB-A\fR | \fB-M\fR] \fB-R\fR \fIroot_path\fR]
+ [\fB-V\fR \fIfs_file\fR]
+ [pkginst... | \fB-Y\fR \fIcategory\fR[,\fIcategory\fR\&.\|.\|.]]
+.fi
+
+.LP
+.nf
+\fBpkgrm\fR \fB-s\fR \fIspool\fR
+ [pkginst... | \fB-Y\fR \fIcategory\fR[,\fIcategory\fR\&.\|.\|.]]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBpkgrm\fR will remove a previously installed or partially installed package
+from the system. A check is made to determine if any other packages depend on
+the one being removed. If a dependency exists, the action taken is defined in
+the \fBadmin\fR file.
+.sp
+.LP
+The default state for the command is in interactive mode, meaning that prompt
+messages are given during processing to allow the administrator to confirm the
+actions being taken. Non-interactive mode can be requested with the \fB-n\fR
+option.
+.sp
+.LP
+The \fB-s\fR option can be used to specify the directory from which spooled
+packages should be removed.
+.sp
+.LP
+Certain unbundled and third-party packages are no longer entirely compatible
+with the latest version of \fBpkgrm\fR. These packages require user interaction
+throughout the removal and not just at the very beginning.
+.sp
+.LP
+To remove these older packages (released prior to Solaris 2.4), set the
+following environment variable:\fBNONABI_SCRIPTS=TRUE\fR \fBpkgrm\fR permits
+keyboard interaction throughout the removal as long as this environment
+variable is set.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-a\fR \fIadmin\fR\fR
+.ad
+.sp .6
+.RS 4n
+Use the installation administration file, \fBadmin\fR, in place of the default
+\fBadmin\fR file. \fBpkgrm\fR first looks in the current working directory for
+the administration file. If the specified administration file is not in the
+current working directory, \fBpkgrm\fR looks in the
+\fB/var/sadm/install/admin\fR directory for the administration file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-A\fR\fR
+.ad
+.sp .6
+.RS 4n
+Remove the package files from the client's file system, absolutely. If a file
+is shared with other packages, the default behavior is to not remove the file
+from the client's file system.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-M\fR\fR
+.ad
+.sp .6
+.RS 4n
+Instruct \fBpkgrm\fR not to use the \fB$\fR\fIroot_path\fR\fB/etc/vfstab\fR
+file for determining the client's mount points. This option assumes the mount
+points are correct on the server and it behaves consistently with Solaris 2.5
+and earlier releases.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR\fR
+.ad
+.sp .6
+.RS 4n
+Non-interactive mode. If there is a need for interaction, the command will
+exit.
+.sp
+Use of this option requires that at least one package instance be named upon
+invocation of the command. Certain conditions must exist for a package to be
+removed non-interactively or a non-restrictive \fBadmin\fR file needs to be
+used.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-R\fR \fIroot_path\fR\fR
+.ad
+.sp .6
+.RS 4n
+Defines the full path name of a directory to use as the \fIroot_path\fR. All
+files, including package system information files, are relocated to a directory
+tree starting in the specified \fIroot_path\fR.
+.LP
+Note -
+.sp
+.RS 2
+The root file system of any non-global zones must not be referenced with the
+\fB-R\fR option. Doing so might damage the global zone's file system, might
+compromise the security of the global zone, and might damage the non-global
+zone's file system. See \fBzones\fR(7).
+.RE
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR \fIspool\fR\fR
+.ad
+.sp .6
+.RS 4n
+Remove the specified package(s) from the directory \fIspool\fR. The default
+directory for spooled packages is \fB/var/sadm/pkg\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.sp .6
+.RS 4n
+Trace all of the scripts that get executed by \fBpkgrm\fR, located in the
+\fIpkginst\fR\fB/install\fR directory. This option is used for debugging the
+procedural and non-procedural scripts.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-V\fR \fIfs_file\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify an alternative \fIfs_file\fR to map the client's file systems. Used in
+situations where the \fB$\fR\fIroot_path\fR\fB/etc/vfstab\fR file is
+non-existent or unreliable.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-Y\fR \fIcategory\fR\fR
+.ad
+.sp .6
+.RS 4n
+Remove packages based on the value of the \fBCATEGORY\fR parameter stored in
+the installed or spooled package's \fBpkginfo\fR(5) file. No package with the
+\fBCATEGORY\fR value of \fBsystem\fR can removed from the file system with this
+option.
+.RE
+
+.SH OPERANDS
+.sp
+.LP
+The following operand is supported:
+.sp
+.ne 2
+.na
+\fB\fIpkginst\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the package to be removed. The format \fIpkginst\fR\fB\&.*\fR can be
+used to remove all instances of a package.
+.sp
+The asterisk character (\fB*\fR) is a special character to some shells and may
+need to be escaped. In the C-Shell, "\fB*\fR" must be surrounded by single
+quotes (\fB\&'\fR) or preceded by a backslash (\e).
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRRemoving All Instances of \fBSUNWjunk\fR from \fBclient1\fR
+.sp
+.LP
+The following example removes all instances of \fBSUNWjunk\fR from
+\fBclient1\fR:
+
+.sp
+.in +2
+.nf
+example% pkgrm \fB-R\fR /export/root/client1 SUNWjunk*
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Note the caveat on the use of the \fB-R\fR option in the description of that
+option, above.
+
+.SH EXIT STATUS
+.sp
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.sp .6
+.RS 4n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB1\fR\fR
+.ad
+.sp .6
+.RS 4n
+Fatal error.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB2\fR\fR
+.ad
+.sp .6
+.RS 4n
+Warning.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB3\fR\fR
+.ad
+.sp .6
+.RS 4n
+Interruption.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB4\fR\fR
+.ad
+.sp .6
+.RS 4n
+Administration.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB10\fR\fR
+.ad
+.sp .6
+.RS 4n
+Reboot after removal of all packages.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB20\fR\fR
+.ad
+.sp .6
+.RS 4n
+Reboot after removal of this package.
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR pkginfo (1),
+.BR pkgmk (1),
+.BR pkgparam (1),
+.BR pkgproto (1),
+.BR pkgtrans (1),
+.BR admin (5),
+.BR pkginfo (5),
+.BR attributes (7),
+.BR largefile (7),
+.BR installf (8),
+.BR pkgadd (8),
+.BR pkgask (8),
+.BR pkgchk (8),
+.BR removef (8)
+.sp
+.LP
+\fI\fR
+.SH NOTES
+.sp
+.LP
+Package commands are \fBlargefile\fR(7)-aware. They handle files larger than 2
+GB in the same way they handle smaller files. In their current implementations,
+\fBpkgadd\fR(8), \fBpkgtrans\fR(1) and other package commands can process a
+datastream of up to 4 GB.
diff --git a/usr/src/man/man8/plockstat.8 b/usr/src/man/man8/plockstat.8
new file mode 100644
index 0000000000..000eb4719a
--- /dev/null
+++ b/usr/src/man/man8/plockstat.8
@@ -0,0 +1,234 @@
+'\" te
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PLOCKSTAT 8 "May 23, 2020"
+.SH NAME
+plockstat \- report user-level lock statistics
+.SH SYNOPSIS
+.nf
+\fBplockstat\fR [\fB-vACHV\fR] [\fB-n\fR \fIcount\fR] [\fB-s\fR \fIdepth\fR] [\fB-e\fR \fIsecs\fR]
+ [\fB-x\fR \fIarg\fR [=val]] \fIcommand\fR [\fIarg\fR]...
+.fi
+
+.LP
+.nf
+\fBplockstat\fR [\fB-vACHV\fR] [\fB-n\fR \fIcount\fR] [\fB-s\fR \fIdepth\fR] [\fB-e\fR \fIsecs\fR]
+ [\fB-x\fR \fIarg\fR [=val]] \fB-p\fR \fIpid\fR
+.fi
+
+.SH DESCRIPTION
+The \fBplockstat\fR utility gathers and displays user-level locking statistics.
+By default, \fBplockstat\fR monitors all lock contention events, gathers
+frequency and timing data about those events, and displays the data in
+decreasing frequency order, so that the most common events appear first.
+.sp
+.LP
+\fBplockstat\fR gathers data until the specified command completes or the
+process specified with the \fB-p\fR option completes.
+.sp
+.LP
+\fBplockstat\fR relies on DTrace to instrument a running process or a command
+it invokes to trace events of interest. This imposes a small but measurable
+performance overhead on the processes being observed. Users must have the
+\fBdtrace_proc\fR privilege and have permission to observe a particular process
+with \fBplockstat\fR. Refer to the \fIDynamic Tracing Guide\fR for more
+information about DTrace security features.
+.SH OPTIONS
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-A\fR\fR
+.ad
+.RS 16n
+Watch all lock events. This option is equivalent to \fB-CH\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-C\fR\fR
+.ad
+.RS 16n
+Watch contention events.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-H\fR\fR
+.ad
+.RS 16n
+Watch hold events.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-e\fR \fIsecs\fR\fR
+.ad
+.RS 16n
+Exit after the number of seconds specified have elapsed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR \fIcount\fR\fR
+.ad
+.RS 16n
+Display only the specified number of entries for each output category.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR \fIdepth\fR\fR
+.ad
+.RS 16n
+Record a stack trace rather than just the calling function.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR \fIpid\fR\fR
+.ad
+.RS 16n
+Specify a process ID from which \fBplockstat\fR is to gather data.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.RS 16n
+Print out a message to indicate that tracing has started.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-x\fR \fIarg\fR[=\fIval\fR]\fR
+.ad
+.RS 16n
+Enable or modify a DTrace runtime option or D compiler option. The list of
+options is found in the \fIDynamic Tracing Guide\fR. Boolean options
+are enabled by specifying their name. Options with values are set by separating
+the option name and value with an equals sign (\fB=\fR).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-V\fR\fR
+.ad
+.RS 16n
+Print the DTrace commands used to gather the data. The output can then be used
+directly with the \fBdtrace\fR(8) command.
+.RE
+
+.SH OPERANDS
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fB\fIarg\fR\fR
+.ad
+.RS 11n
+A string to be passed as an argument to \fIcommand\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIcommand\fR\fR
+.ad
+.RS 11n
+The name of a utility to be invoked.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIcount\fR\fR
+.ad
+.RS 11n
+A positive integer value.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIpid\fR\fR
+.ad
+.RS 11n
+A process identifier for a process to be monitored.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIsecs\fR\fR
+.ad
+.RS 11n
+Duration specified as a positive integer number of seconds.
+.RE
+
+.SH EXIT STATUS
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 6n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB>\fB0\fR\fR
+.ad
+.RS 6n
+An error occurred.
+.RE
+
+.SH ATTRIBUTES
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability See below.
+.TE
+
+.sp
+.LP
+The command-line syntax is Evolving. The human-readable output is Unstable.
+.SH SEE ALSO
+.BR mutex_init (3C),
+.BR pthread_mutex_lock (3C),
+.BR pthread_rwlock_rdlock (3C),
+.BR pthread_rwlock_unlock (3C),
+.BR pthread_rwlock_wrlock (3C),
+.BR rwlock (3C),
+.BR fasttrap (4D),
+.BR attributes (7),
+.BR dtrace (8),
+.BR lockstat (8)
+.sp
+.LP
+\fIDynamic Tracing Guide\fR:
+.sp
+.LP
+https://illumos.org/books/dtrace/
diff --git a/usr/src/man/man8/pmadm.8 b/usr/src/man/man8/pmadm.8
new file mode 100644
index 0000000000..43280048b5
--- /dev/null
+++ b/usr/src/man/man8/pmadm.8
@@ -0,0 +1,589 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 1998, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PMADM 8 "Nov 10, 1998"
+.SH NAME
+pmadm \- port monitor administration
+.SH SYNOPSIS
+.LP
+.nf
+\fBpmadm\fR \fB-a\fR [\fB-p\fR \fIpmtag\fR | \fB-t\fR \fItype\fR] \fB-s\fR \fIsvctag\fR \fB-i\fR \fIid\fR \fB-m\fR \fIpmspecific\fR \fB-v\fR \fIver\fR
+ [\fB-f\fR xu]
+ [\fB-y\fR \fIcomment\fR] [\fB-z\fR \fI script\fR]
+.fi
+
+.LP
+.nf
+\fBpmadm\fR \fB-r\fR \fB-p\fR \fIpmtag\fR \fB-s\fR \fIsvctag\fR
+.fi
+
+.LP
+.nf
+\fBpmadm\fR \fB-e\fR \fB-p\fR \fIpmtag\fR \fB-s\fR \fIsvctag\fR
+.fi
+
+.LP
+.nf
+\fBpmadm\fR \fB-d\fR \fB-p\fR \fIpmtag\fR \fB-s\fR \fIsvctag\fR
+.fi
+
+.LP
+.nf
+\fBpmadm\fR \fB-l\fR [\fB-t\fR \fItype\fR | \fB-p\fR \fIpmtag\fR] [\fB-s\fR \fIsvctag\fR]
+.fi
+
+.LP
+.nf
+\fBpmadm\fR \fB-L\fR [\fB-t\fR \fItype\fR | \fB-p\fR \fIpmtag\fR] [\fB-s\fR \fIsvctag\fR]
+.fi
+
+.LP
+.nf
+\fBpmadm\fR \fB-g\fR \fB-p\fR \fIpmtag\fR \fB-s\fR \fIsvctag\fR [\fB-z\fR \fIscript\fR]
+.fi
+
+.LP
+.nf
+\fBpmadm\fR \fB-g\fR \fB-s\fR \fIsvctag\fR \fB-t\fR \fItype\fR \fB-z\fR \fIscript\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBpmadm\fR is the administrative command for the lower level of the Service
+Access Facility hierarchy, that is, for service administration. A port may have
+only one service associated with it although the same service may be available
+through more than one port. In order to uniquely identify an instance of a
+service, the \fBpmadm\fR command must identify both the port monitor or port
+monitors through which the service is available (\fB-p\fR or \fB-t\fR) and the
+service (\fB-s\fR). See .
+.sp
+.LP
+\fBpmadm\fR performs the following functions:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+adds or removes a service
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+enables or disables a service
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+installs or replaces a per-service configuration script
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+prints requested service information
+.RE
+.sp
+.LP
+Any user on the system may invoke \fBpmadm\fR to request service status
+(\fB-l\fR or \fB-L\fR) or to print per-service configuration scripts (\fB-g\fR
+without the \fB-z\fR option). \fBpmadm\fR with other options may be executed
+only by a privileged user.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-a\fR\fR
+.ad
+.RS 17n
+Add a service. \fBpmadm\fR adds an entry for the new service to the port
+monitor's administrative file. Because of the complexity of the options and
+arguments that follow the \fB-a\fR option, it may be convenient to use a
+command script or the menu system to add services.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-d\fR\fR
+.ad
+.RS 17n
+Disable a service. Add \fBx\fR to the flag field in the entry for the service
+\fIsvctag\fR in the port monitor's administrative file. This is the entry used
+by port monitor \fIpmtag\fR. See the \fB-f\fR option, below, for a description
+of the flags available.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-e\fR\fR
+.ad
+.RS 17n
+Enable a service. Remove \fBx\fR from the flag field in the entry for the
+service \fIsvctag\fR in the port monitor administrative file. This is the entry
+used by port monitor \fIpmtag\fR. See the \fB-f\fR option, below, for a
+description of the flags available.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR \fBxu\fR\fR
+.ad
+.RS 17n
+The \fB-f\fR option specifies one or both of the following two flags which are
+then included in the flag field of the entry for the new service in the port
+monitor's administrative file. If the \fB-f\fR option is not included, no flags
+are set and the default conditions prevail. By default, a new service is
+enabled and no \fButmpx\fR entry is created for it. An \fB-f\fR option without
+a following argument is illegal.
+.sp
+.ne 2
+.na
+\fB\fBx\fR\fR
+.ad
+.RS 5n
+Do not enable the service \fIsvctag\fR available through port monitor
+\fIpmtag\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBu\fR\fR
+.ad
+.RS 5n
+Create a \fButmpx\fR entry for service \fIsvctag\fR available through port
+monitor \fIpmtag\fR.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-g\fR\fR
+.ad
+.RS 17n
+Print, install, or replace a per-service configuration script. The \fB-g\fR
+option with a \fB-p\fR option and a \fB-s\fR option prints the per-service
+configuration script for service \fIsvctag\fR available through port monitor
+\fIpmtag\fR. The \fB-g\fR option with a \fB-p\fR option, a \fB-s\fR option, and
+a \fB-z\fR option installs the per-service configuration script contained in
+the file \fBscript\fR as the per-service configuration script for service
+\fIsvctag\fR available through port monitor \fIpmtag\fR. The \fB-g\fR option
+with a \fB- s\fR option, a \fB-t\fR option, and a \fB-z\fR option installs the
+file \fBscript\fR as the per-service configuration script for service
+\fIsvctag\fR available through any port monitor of type \fBtype\fR. Other
+combinations of options with \fB-g\fR are invalid.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-i\fR\fI id\fR\fR
+.ad
+.RS 17n
+\fBid\fR is the identity that is to be assigned to service \fIsvctag\fR when it
+is started. \fBid\fR must be an entry in \fB/etc/passwd\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR\fR
+.ad
+.RS 17n
+The \fB-l\fR option requests service information. Used by itself and with the
+options described below, it provides a filter for extracting information in
+several different groupings.
+.sp
+.ne 2
+.na
+\fB\fB-l\fR\fR
+.ad
+.RS 23n
+By itself, the \fB-l\fR option lists all services on the system.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\fR\fB-l\fR\fB \fR\fB-p\fR\fB \fR\fIpmtag\fR\fR
+.ad
+.RS 23n
+Lists all services available through port monitor \fIpmtag\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\fR\fB-l\fR\fB \fR\fB-s\fR\fB \fR\fIsvctag\fR\fR
+.ad
+.RS 23n
+Lists all services with tag \fIsvctag\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\fR\fB-l\fR\fB \fR\fB-p\fR\fB \fR\fIpmtag\fR\fB-s\fR\fIsvctag\fR\fR
+.ad
+.RS 23n
+Lists service \fIsvctag\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\fR\fB-l\fR\fB \fR\fB-t\fR\fB \fR\fItype\fR\fR
+.ad
+.RS 23n
+Lists all services available through port monitors of type \fBtype\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\fR\fB-l\fR\fB \fR\fB-t\fR\fB \fR\fItype\fR\fB-s\fR\fIsvctag\fR\fR
+.ad
+.RS 23n
+Lists all services with tag \fIsvctag\fR available through a port monitor of
+type \fBtype\fR.
+.RE
+
+Other combinations of options with \fB-l\fR are invalid.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-L\fR\fR
+.ad
+.RS 17n
+The \fB-L\fR option is identical to the \fB-l\fR option except that output is
+printed in a condensed format.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-m\fR\fI pmspecific\fR\fR
+.ad
+.RS 17n
+\fIpmspecific\fR is the port monitor-specific portion of the port monitor
+administrative file entry for the service.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR\fI pmtag\fR\fR
+.ad
+.RS 17n
+Specifies the tag associated with the port monitor through which a service
+(specified as \fB\fR\fB-s\fR\fB \fR\fIsvctag\fR) is available.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-r\fR\fR
+.ad
+.RS 17n
+Remove a service. When \fBpmadm\fR removes a service, the entry for the service
+is removed from the port monitor's administrative file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR\fI svctag\fR\fR
+.ad
+.RS 17n
+Specifies the service tag associated with a given service. The service tag is
+assigned by the system administrator and is part of the entry for the service
+in the port monitor's administrative file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-t\fR\fI type\fR\fR
+.ad
+.RS 17n
+Specifies the port monitor type.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fI ver\fR\fR
+.ad
+.RS 17n
+Specifies the version number of the port monitor administrative file. The
+version number may be given as
+.sp
+.in +2
+.nf
+\fB-v\fR \fB\&'\fR\fIpmspec\fR \fB-V\fR
+.fi
+.in -2
+.sp
+
+where \fIpmspec\fR is the special administrative command for port monitor
+\fIpmtag\fR. This special command is \fBttyadm\fR for \fBttymon\fR and
+\fBnlsadmin\fR for \fBlisten\fR. The version stamp of the port monitor is known
+by the command and is returned when \fIpmspec\fR is invoked with a \fB-V\fR
+option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-y\fR\fI comment\fR\fR
+.ad
+.RS 17n
+Associate \fIcomment\fR with the service entry in the port monitor
+administrative file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-z\fR\fI script\fR\fR
+.ad
+.RS 17n
+Used with the \fB-g\fR option to specify the name of the file that contains the
+per-service configuration script. Modifying a configuration script is a
+three-step procedure. First a copy of the existing script is made (\fB-g\fR
+alone). Then the copy is edited. Finally, the copy is put in place over the
+existing script (\fB-g\fR with \fB-z\fR).
+.RE
+
+.sp
+.LP
+Options that request information write the requested information to the
+standard output. A request for information using the \fB-l\fR option prints
+column headers and aligns the information under the appropriate headings. In
+this format, a missing field is indicated by a hyphen. A request for
+information in the condensed format using the \fB-L\fR option prints the
+information in colon-separated fields; missing fields are indicated by two
+successive colons. \fB#\fR is the comment character.
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRAdding a Service to a Port Monitor with the Tag \fBpmtag\fR
+.sp
+.LP
+The following command adds a service to a port monitor with tag \fBpmtag\fR and
+gives the service the tag \fBsvctag\fR. The port monitor-specific information
+is generated by \fBspecpm\fR. The service defined by \fBsvctag\fR will be
+invoked with identity \fBroot\fR.
+
+.sp
+.in +2
+.nf
+pmadm -a -p pmtag -s svctag -i root -m `specpm -a arg1 -b arg2`-v `specpm -V`
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRAdding a Service with Service Tab \fBsvctag\fR
+.sp
+.LP
+The following command adds a service with service tag \fBsvctag\fR, identity
+\fBguest\fR, and port monitor-specific information generated by \fBspecpm\fR to
+all port monitors of type \fBtype\fR:
+
+.sp
+.in +2
+.nf
+pmadm -a -s svctag -i guest -t type -m `specpm -a arg1 -b arg2`-v `specpm -V`
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRRemoving a Service
+.sp
+.LP
+The following command removes the service \fBsvctag\fR from port monitor
+\fBpmtag\fR:
+
+.sp
+.in +2
+.nf
+pmadm -r -p pmtag -s svctag
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 4 \fREnabling a Service
+.sp
+.LP
+The following command enables the service \fBsvctag\fR available through port
+monitor \fBpmtag\fR:
+
+.sp
+.in +2
+.nf
+pmadm -e -p pmtag -s svctag
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 5 \fRDisabling a Service
+.sp
+.LP
+The following command disables the service \fBsvctag\fR available through port
+monitor \fBpmtag\fR:
+
+.sp
+.in +2
+.nf
+pmadm -d -p pmtag -s svctag
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 6 \fRListing Status Information
+.sp
+.LP
+The following command lists status information for all services:
+
+.sp
+.in +2
+.nf
+pmadm -l
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 7 \fRListing Status Information
+.sp
+.LP
+The following command lists status information for all services available
+through the port monitor with tag \fBports\fR:
+
+.sp
+.in +2
+.nf
+pmadm -l -p ports
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 8 \fRListing Status Information in Condensed Format
+.sp
+.LP
+The following command lists the status information for all services available
+through the port monitor with tag \fBports\fR in condensed format:
+
+.sp
+.in +2
+.nf
+pmadm -L -p ports
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 9 \fRListing Status Information for All Services
+.sp
+.LP
+List status information for all services available through port monitors of
+type \fBlisten\fR:
+
+.sp
+.in +2
+.nf
+pmadm -l -t listen
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 10 \fRPrinting the per-service Configuration
+.sp
+.LP
+The following command prints the per-service configuration script associated
+with the service \fBsvctag\fR available through port monitor \fBpmtag\fR:
+
+.sp
+.in +2
+.nf
+pmadm -g -p pmtag -s svctag
+.fi
+.in -2
+.sp
+
+.SH EXIT STATUS
+.sp
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 6n
+Successful operation.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB>0\fR\fR
+.ad
+.RS 6n
+Operation failed.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/saf/\fR\fIpmtag\fR\fB/_config\fR\fR
+.ad
+.RS 26n
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/saf/\fR\fIpmtag\fR\fB/\fR\fIsvctag\fR\fR
+.ad
+.RS 26n
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/saf/\fR\fIpmtag\fR\fB/*\fR\fR
+.ad
+.RS 26n
+
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR doconfig (3NSL),
+.BR attributes (7),
+.BR sac (8),
+.BR sacadm (8)
diff --git a/usr/src/man/man8/pmconfig.8 b/usr/src/man/man8/pmconfig.8
new file mode 100644
index 0000000000..8a67ce7e4b
--- /dev/null
+++ b/usr/src/man/man8/pmconfig.8
@@ -0,0 +1,194 @@
+'\" te
+.\" Copyright (c) 2017 Peter Tribble
+.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PMCONFIG 8 "May 1, 2017"
+.SH NAME
+pmconfig \- Configure the Power Management system
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/pmconfig\fR [\fB-r\fR]
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBpmconfig\fR utility sets the Power Management and suspend-resume
+configuration. User has permission to change Power Management configuration
+using \fBpmconfig\fR only if he is allowed to do so according to
+\fBPMCHANGEPERM\fR keyword of \fB/etc/default/power\fR. User has permission to
+change the suspend-resume configuration using \fBpmconfig\fR only if he is
+allowed to do so according to the \fBCPRCHANGEPERM\fR keyword of
+\fB/etc/default/power\fR. See FILES section below for a description of the
+\fBPMCHANGEPERM\fR and \fBCPRCHANGEPERM\fR keywords of
+\fB/etc/default/power\fR.
+.sp
+.LP
+Based on user permissions, \fBpmconfig\fR first resets the Power Management
+and/or suspend-resume state back to its default and then reads the new
+Power Management and/or suspend-resume configuration from
+\fB/etc/power.conf\fR and issues the commands to activate the new
+configuration. The \fBpmconfig\fR utility is run at system boot. This utility
+can also be run from the command line after manual changes have been made to
+the \fB/etc/power.conf\fR file. For changes made to the
+\fB/etc/power.conf\fR file to take effect, users must run \fBpmconfig\fR.
+.SH OPTIONS
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-r\fR\fR
+.ad
+.RS 6n
+Reset Power Management and suspend-resume state to default and exit. User
+must have both Power Management and suspend-resume configuration permission
+for this option.
+.RE
+
+.SH EXIT STATUS
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 5n
+Upon successful completion
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB>0\fR\fR
+.ad
+.RS 6n
+An error occurred
+.RE
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/etc/power.conf\fR\fR
+.ad
+.RS 22n
+System Power Management configuration file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/default/power\fR\fR
+.ad
+.RS 22n
+File that controls permissions for system's Power Management and
+suspend-resume features. The \fBPMCHANGEPERM\fR keyboard controls the Power
+Management configuration permissions, while the \fBCPRCHANGEPERM\fR keyword
+controls the suspend-resume configuration permissions.
+.RE
+
+.sp
+.LP
+Allowed values are:
+.sp
+.ne 2
+.na
+\fB\fBall\fR\fR
+.ad
+.RS 22n
+Any user can change the configuration.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-\fR\fR
+.ad
+.RS 22n
+No one except super-user can change the configuration.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB<user1, user2,...>\fR\fR
+.ad
+.RS 22n
+A user in this user list or a super-user can change the configuration. The
+user list is a space and/or comma (,) separated list. You must enclose the list
+in < and > characters.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBconsole-owner\fR\fR
+.ad
+.RS 22n
+A user who owns the system console device node or a super-user can change the
+configuration.
+.RE
+
+.sp
+.LP
+The default values are \fBPMCHANGEPERM=console-owner\fR and
+\fBCPRCHANGEPERM=console-owner\fR.
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Unstable
+.TE
+
+.SH SEE ALSO
+.LP
+.BR svcs (1),
+.BR cpr (4),
+.BR pm (4D),
+.BR power.conf (5),
+.BR attributes (7),
+.BR smf (7),
+.BR powerd (8),
+.BR svcadm (8)
+.sp
+.LP
+\fIUsing Power Management\fR
+.SH NOTES
+.LP
+The \fBpmconfig\fR service is managed by the service management facility,
+\fBsmf\fR(7), under the service identifier:
+.sp
+.in +2
+.nf
+svc:/system/power:default
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Administrative actions on this service, such as enabling, disabling, or
+requesting restart, can be performed using \fBsvcadm\fR(8). The service's
+status can be queried using the \fBsvcs\fR(1) command.
+.SH DIAGNOSTICS
+.LP
+If the program cannot open the configuration file, it prints an error message
+to standard error. If the program encounters a syntax error in the
+configuration file, it prints an error message and the line number of the error
+in the configuration file. It then skips the rest of the information on that
+line and processes the next line. Any configuration information already
+processed on the line containing the error is used. If user does not have
+permission to change Power Management and/or suspend-resume configuration, and
+configuration file has entries for which user doesn't have permission, it
+process the entries for which user has permissions and prints error on rest.
diff --git a/usr/src/man/man8/polkit-is-privileged.8 b/usr/src/man/man8/polkit-is-privileged.8
new file mode 100644
index 0000000000..86888fece5
--- /dev/null
+++ b/usr/src/man/man8/polkit-is-privileged.8
@@ -0,0 +1,117 @@
+'\" te
+.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH POLKIT-IS-PRIVILEGED 8 "Aug 22, 2006"
+.SH NAME
+polkit-is-privileged \- check PolicyKit privileges
+.SH SYNOPSIS
+.LP
+.nf
+\fBpolkit-is-privileged\fR [\fB-hvV\fR] \fB-u\fR \fIuser\fR \fB-p\fR \fIprivilege\fR [\fB-r\fR \fIresource\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBpolkit-is-privileged\fR command queries system policy to determine
+whether a user is allowed for a given privilege and resource. The resource name
+can be omitted. On the Solaris operating system, RBAC authorizations names
+should be used as privilege names.
+.sp
+.LP
+Currently, the only consumer of PolicyKit is \fBhald\fR(8).
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-h\fR, \fB--help\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display list of options and exit.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR \fIprivilege\fR, \fB--privilege\fR \fIprivilege\fR\fR
+.ad
+.sp .6
+.RS 4n
+Name of privilege associated with user. Command tests for this privilege.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-r\fR \fIresource\fR, \fB--resource\fR \fIresource\fR\fR
+.ad
+.sp .6
+.RS 4n
+Name of resource associated with user and privilege. Command tests for this
+resource.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-u\fR \fIuser\fR, \fB--user\fR \fIuser\fR\fR
+.ad
+.sp .6
+.RS 4n
+User name or user id that is tested for.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR, \fB--verbose\fR\fR
+.ad
+.sp .6
+.RS 4n
+Verbose mode.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-V\fR, \fB--version\fR\fR
+.ad
+.sp .6
+.RS 4n
+Displays version number.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Volatile
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR auths (1),
+.BR profiles (1),
+.BR getauthattr (3SECDB),
+.BR auth_attr (5),
+.BR policy.conf (5),
+.BR prof_attr (5),
+.BR user_attr (5),
+.BR attributes (7),
+.BR hald (8)
diff --git a/usr/src/man/man8/pooladm.8 b/usr/src/man/man8/pooladm.8
new file mode 100644
index 0000000000..1e06d3dd9b
--- /dev/null
+++ b/usr/src/man/man8/pooladm.8
@@ -0,0 +1,268 @@
+'\" te
+.\" Copyright (c) 2005, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH POOLADM 8 "Dec 1, 2005"
+.SH NAME
+pooladm \- activate and deactivate the resource pools facility
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/pooladm\fR [\fB-n\fR] [\fB-s\fR] [\fB-c\fR] [\fIfilename\fR] | \fB-x\fR
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/pooladm\fR [\fB-d\fR | \fB-e\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBpooladm\fR command provides administrative operations on pools and sets.
+\fBpooladm\fR reads the specified filename and attempts to activate the pool
+configuration contained in it.
+.sp
+.LP
+Before updating the current pool run-time configuration, \fBpooladm\fR
+validates the configuration for correctness.
+.sp
+.LP
+Without options, \fBpooladm\fR prints out the current running pools
+configuration.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-c\fR\fR
+.ad
+.RS 6n
+Instantiate the configuration at the given location. If a filename is not
+specified, it defaults to \fB/etc/pooladm.conf\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-d\fR\fR
+.ad
+.RS 6n
+Disable the pools facility so that pools can no longer be manipulated.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-e\fR\fR
+.ad
+.RS 6n
+Enable the pools facility so that pools can be manipulated.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR\fR
+.ad
+.RS 6n
+Validate the configuration without actually updating the current active
+configuration. Checks that there are no syntactic errors and that the
+configuration can be instantiated on the current system. No validation of
+application specific properties is performed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR\fR
+.ad
+.RS 6n
+Update the specified location with the details of the current dynamic
+configuration.
+.sp
+This option requires update permission for the configuration that you are going
+to update. If you use this option with the \fB-c\fR option, the dynamic
+configuration is updated before the static location.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-x\fR\fR
+.ad
+.RS 6n
+Remove the currently active pool configuration. Destroy all defined resources,
+and return all formerly partitioned components to their default resources.
+.RE
+
+.SH OPERANDS
+.sp
+.LP
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fB\fIfilename\fR\fR
+.ad
+.RS 12n
+Use the configuration contained within this file.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRInstantiating a Configuration
+.sp
+.LP
+The following command instantiates the configuration contained at
+\fB/home/admin/newconfig\fR:
+
+.sp
+.in +2
+.nf
+example# \fB/usr/sbin/pooladm \fR\fB-c\fR\fB /home/admin/newconfig\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRValidating the Configuration Without Instantiating It
+.sp
+.LP
+The following command attempts to instantiate the configuration contained at
+\fB/home/admin/newconfig\fR. It displays any error conditions that it
+encounters, but does not actually modify the active configuration.
+
+.sp
+.in +2
+.nf
+example# \fB/usr/sbin/pooladm \fR\fB-n\fR\fB \fR\fB-c\fR\fB /home/admin/newconfig\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRRemoving the Current Configuration
+.sp
+.LP
+The following command removes the current pool configuration:
+
+.sp
+.in +2
+.nf
+example# \fB/usr/sbin/pooladm \fR\fB-x\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 4 \fREnabling the Pools Facility
+.sp
+.LP
+The following command enables the pool facility:
+
+.sp
+.in +2
+.nf
+example# \fB/usr/sbin/pooladm -e\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 5 \fREnabling the Pools Facility Using SMF
+.sp
+.LP
+The following command enables the pool facility through use of the Service
+Management Facility. See \fBsmf\fR(7).
+
+.sp
+.in +2
+.nf
+example# \fB/usr/sbin/svcadm enable svc:/system/pools:default\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 6 \fRSaving the Active Configuration to a Specified Location
+.sp
+.LP
+The following command saves the active configuration to
+\fB/tmp/state.backup\fR:
+
+.sp
+.in +2
+.nf
+example# \fB/usr/sbin/pooladm -s /tmp/state.backup\fR
+.fi
+.in -2
+.sp
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/pooladm.conf\fR\fR
+.ad
+.RS 21n
+Configuration file for \fBpooladm\fR.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability See below.
+.TE
+
+.sp
+.LP
+The invocation is Evolving. The output is Unstable.
+.SH SEE ALSO
+.sp
+.LP
+.BR pset_destroy (2),
+.BR libpool (3LIB),
+.BR attributes (7),
+.BR smf (7),
+.BR poolbind (8),
+.BR poolcfg (8),
+.BR psrset (8),
+.BR svcadm (8)
+.sp
+.LP
+\fI\fR
+.SH NOTES
+.sp
+.LP
+Resource bindings that are not presented in the form of a binding to a
+partitionable resource, such as the scheduling class, are not necessarily
+modified in a \fBpooladm\fR \fB-x\fR operation.
+.sp
+.LP
+The pools facility is not active by default when Solaris starts. \fBpooladm\fR
+\fB-e\fR explicitly activates the pools facility. The behavior of certain APIs
+related to processor partitioning and process binding are modified when pools
+is active. See \fBlibpool\fR(3LIB).
+.sp
+.LP
+You cannot enable the pools facility on a system where processor sets have been
+created. Use the \fBpsrset\fR(8) command or \fBpset_destroy\fR(2) to destroy
+processor sets manually before you enable the pools facility.
+.sp
+.LP
+Because the Resource Pools facility is an \fBsmf\fR(7) service, it can also be
+enabled and disabled using the standard SMF interfaces.
diff --git a/usr/src/man/man8/poolbind.8 b/usr/src/man/man8/poolbind.8
new file mode 100644
index 0000000000..f47febbe67
--- /dev/null
+++ b/usr/src/man/man8/poolbind.8
@@ -0,0 +1,260 @@
+'\" te
+.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH POOLBIND 8 "Feb 9, 2005"
+.SH NAME
+poolbind \- bind processes, tasks, or projects or query binding of processes to
+resource pools
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/poolbind\fR \fB-p\fR \fIpoolname\fR \fB-e\fR \fIcommand\fR [\fIarguments\fR]...
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/poolbind\fR \fB-p\fR \fIpoolname\fR [\fB-i\fR \fIidtype\fR] \fIid\fR...
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/poolbind\fR \fB-q\fR \fIpid\fR...
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/poolbind\fR \fB-Q\fR \fIpid\fR...
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBpoolbind\fR command allows an authorized user to bind zones, projects,
+tasks, and processes to pools. With the \fB-e\fR option (see below), it can
+execute a command you specify, placing the executed command in a specified
+pool. It can also enable you to query a process to determine which pool a
+process is bound to.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-e\fR \fIcommand\fR [\fIarguments\fR...]\fR
+.ad
+.RS 29n
+Executes \fIcommand\fR, bound to the pool you specify with \fB-p\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-i\fR \fIidtype\fR\fR
+.ad
+.RS 29n
+This option, together with the \fIidlist\fR arguments, specifies one or more
+processes to which the poolbind command is to apply. The interpretation of
+\fIidlist\fR depends on the value of \fIidtype\fR. The valid \fIidtype\fR
+arguments and corresponding interpretations of \fIidlist\fR are as follows:
+.sp
+.ne 2
+.na
+\fB\fIpid\fR\fR
+.ad
+.RS 10n
+\fIidlist\fR is a list of process \fBID\fRs. Binds the specified processes to
+the specified pool. This is the default behavior if no idtype is specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fItaskid\fR\fR
+.ad
+.RS 10n
+\fIidlist\fR is a list of task IDs. Bind all processes within the list of task
+IDs to the specified pool.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIprojid\fR\fR
+.ad
+.RS 10n
+\fIidlist\fR is a list of project \fBID\fRs. Bind all processes within the list
+of projects to the specified pool. Each project \fBID\fR can be specified as
+either a project name or a numerical project \fBID\fR. See \fBproject\fR(5).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIzoneid\fR\fR
+.ad
+.RS 10n
+\fIidlist\fR is a list of zone \fBID\fRs. Bind all processes within the list of
+zones to the specified pool. Each zone \fBID\fR can be specified as either a
+zone name or a numerical zone \fBID\fR. See \fBzones\fR(7).
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR \fIpoolname\fR\fR
+.ad
+.RS 29n
+Specifies the name of a pool to which the specified zone, project, tasks, or
+processes are to be bound.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-q\fR \fIpid\fR ...\fR
+.ad
+.RS 29n
+Queries the pool bindings for a given list of process \fBID\fRs. If the
+collection of resources associated with the process does not correspond to any
+currently existing pool, or if there are multiple pools with the set of
+resources that the process is bound to, the query fails for that particular
+process \fBID\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-Q\fR \fIpid\fR ...\fR
+.ad
+.RS 29n
+ Queries the resource bindings for a given list of process IDs. The resource
+bindings are each reported on a separate line.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRBinding All Processes
+.sp
+.LP
+The following command binds all processes in projects \fB5\fR and \fB7\fR to
+the pool \fBweb_app\fR:
+
+.sp
+.in +2
+.nf
+example# /usr/sbin/poolbind \fB-p\fR web_app \fB-i\fR projid 5 7
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRBinding the Running Shell
+.sp
+.LP
+The following command binds the running shell to the pool \fBweb_app\fR:
+
+.sp
+.in +2
+.nf
+ example# /usr/sbin/poolbind \fB-p\fR web_app $$
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRQuerying the Pool Bindings
+.sp
+.LP
+The following command queries the bindings to verify that the shell is bound to
+the given pool:
+
+.sp
+.in +2
+.nf
+example# /usr/sbin/poolbind \fB-q\fR $$
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 4 \fRQuerying the Resource Bindings
+.sp
+.LP
+The following command queries the bindings to verify that the shell is bound to
+the given resources:
+
+.sp
+.in +2
+.nf
+example# /usr/sbin/poolbind \fB-Q\fR $$
+.fi
+.in -2
+.sp
+
+.SH EXIT STATUS
+.sp
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 5n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB1\fR\fR
+.ad
+.RS 5n
+Requested operation could not be completed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB2\fR\fR
+.ad
+.RS 5n
+Invalid command line options were specified.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability See below.
+.TE
+
+.sp
+.LP
+The invocation is Evolving. The output is Unstable.
+.SH SEE ALSO
+.sp
+.LP
+.BR libpool (3LIB),
+.BR project (5),
+.BR attributes (7),
+.BR zones (7),
+.BR pooladm (8),
+.BR poolcfg (8)
+.sp
+.LP
+\fI\fR
diff --git a/usr/src/man/man8/poolcfg.8 b/usr/src/man/man8/poolcfg.8
new file mode 100644
index 0000000000..f559c66244
--- /dev/null
+++ b/usr/src/man/man8/poolcfg.8
@@ -0,0 +1,482 @@
+'\" te
+.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH POOLCFG 8 "Nov 29, 2007"
+.SH NAME
+poolcfg \- create and modify resource pool configuration files
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/poolcfg\fR \fB-c\fR \fIcommand\fR [\fB-d\fR | [\fIfilename\fR]]
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/poolcfg\fR \fB-f\fR \fIcommand_file\fR [\fB-d\fR | [\fIfilename\fR]]
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/poolcfg\fR \fB-h\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBpoolcfg\fR utility provides configuration operations on pools and sets.
+These operations are performed upon an existing configuration and take the form
+of modifications to the specified configuration file. If you use the \fB-d\fR
+option, the modifications occur to the kernel state. Actual activation of the
+resulting configuration is achieved by way of the \fBpooladm\fR(8) utility.
+.sp
+.LP
+Pools configuration files are structured files that must have been constructed
+using \fBpoolcfg\fR itself or \fBlibpool\fR(3LIB) directly.
+.sp
+.LP
+An invocation of \fBpoolcfg\fR with the pool dynamic location and write
+permission will hang if the dynamic location has already been opened for
+writing.
+.sp
+.LP
+The configurations which are created by this utility can be used by
+\fBpooladm\fR to instantiate the configuration upon a target host.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-c\fR \fIcommand\fR\fR
+.ad
+.RS 19n
+Specify \fIcommand\fR as an editing command. See \fBUSAGE\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-d\fR\fR
+.ad
+.RS 19n
+Operate directly on the kernel state. No \fIfilename\fR is allowed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR \fIcommand_file\fR\fR
+.ad
+.RS 19n
+Take the commands from \fIcommand_file\fR. \fIcommand_file\fR consists of
+editing commands, one per line.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-h\fR\fR
+.ad
+.RS 19n
+Display extended information about the syntax of editing commands.
+.RE
+
+.SH USAGE
+.SS "Scripts"
+.sp
+.LP
+A script consists of editing commands, one per line, of the following:
+.sp
+.ne 2
+.na
+\fBinfo [\fIentity-name\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Display configuration (or specified portion) in human readable form to standard
+output. If no entity is specified, system information is displayed. Therefore,
+\fBpoolcfg\fR \fB-c\fR \fB\&'info' afile\fR is an equivalent invocation to
+\fBpoolcfg\fR \fB-c\fR \fB\&'info system name' afile\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBcreate \fIentity-name\fR [\fIproperty-list\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Make an entity of the specified type and name.
+.RE
+
+.sp
+.ne 2
+.na
+\fBdestroy \fIentity-name\fR\fR
+.ad
+.sp .6
+.RS 4n
+Remove the specified entity.
+.RE
+
+.sp
+.ne 2
+.na
+\fBmodify \fIentity-name\fR [\fIproperty-list\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Change the listed properties on the named entity.
+.RE
+
+.sp
+.ne 2
+.na
+\fBassociate \fIpool-name\fR [\fIresource-list\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Connect one or more resources to a pool, or replace one or more existing
+connections.
+.RE
+
+.sp
+.ne 2
+.na
+\fBtransfer to\fR [\fIresourcetype\fR] \fIname\fR[\fIcomponent-list\fR]
+.ad
+.sp .6
+.RS 4n
+Transfer one or more discrete components to a resource .
+.RE
+
+.sp
+.ne 2
+.na
+\fBtransfer [\fIquantity\fR] from [\fIresourcetype\fR] [\fIsrc\fR] to
+[\fItgt\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Transfer a resource quantity from \fIsrc\fR to \fItgt\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBtransfer [\fIquantity\fR] to [\fIresourcetype\fR] [\fItgt\fR] from
+[\fIsrc\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Transfer a resource quantity to \fItgt\fR from \fIsrc\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBdiscover\fR
+.ad
+.sp .6
+.RS 4n
+Create a system entity, with one pool entity and resources to match current
+system configuration. All discovered resources of each resource type are
+recorded in the file, with the single pool referring to the default resource
+for each resource type.
+.sp
+This command is a NO-OP when \fBpoolcfg\fR operates directly on the kernel. See
+the \fB-d\fR option.
+.sp
+You should avoid use of this command. The preferred method for creating a
+configuration is to export the dynamic configuration using \fBpooladm\fR(8)
+with the \fB-s\fR option.
+.RE
+
+.sp
+.ne 2
+.na
+\fBrename \fIentity-name\fR to \fInew-name\fR\fR
+.ad
+.sp .6
+.RS 4n
+Change the name of an entity on the system to its new name.
+.RE
+
+.SS "Property Lists"
+.sp
+.LP
+The property list is specified by:
+.sp
+.in +2
+.nf
+( proptype name = value [ ; proptype name = value ]* )
+.fi
+.in -2
+
+.sp
+.LP
+where the last definition in the sequence for a given proptype, name pair is
+the one that holds. For property deletion, use \fB~ proptype name\fR.
+.SS "Resource Lists"
+.sp
+.LP
+A resource list is specified by:
+.sp
+.in +2
+.nf
+( resourcetype name [ ; resourcetype name ]* )
+.fi
+.in -2
+
+.sp
+.LP
+where the last specification in the sequence for a resource is the one that
+holds. There is no deletion syntax for resource lists.
+.SS "Component Lists"
+.sp
+.LP
+A component list is specified by:
+.sp
+.in +2
+.nf
+( componenttype name [ ; componenttype name ]* )
+.fi
+.in -2
+
+.sp
+.LP
+where the last specification in the sequence for a component is the one that
+holds. There is no deletion syntax for component lists.
+.SS "Recognized Entities"
+.sp
+.ne 2
+.na
+\fBsystem\fR
+.ad
+.RS 10n
+Machine level entity
+.RE
+
+.sp
+.ne 2
+.na
+\fBpool\fR
+.ad
+.RS 10n
+Named collection of resource associations
+.RE
+
+.SS "Resource Types"
+.sp
+.ne 2
+.na
+\fBpset\fR
+.ad
+.RS 8n
+Processor set resource
+.RE
+
+.SS "Property Types"
+.sp
+.ne 2
+.na
+\fBboolean\fR
+.ad
+.RS 11n
+Takes one of two values true or false.
+.RE
+
+.sp
+.ne 2
+.na
+\fBint\fR
+.ad
+.RS 11n
+A 64-bit signed integer value.
+.RE
+
+.sp
+.ne 2
+.na
+\fBuint\fR
+.ad
+.RS 11n
+A 64-bit unsigned integer value.
+.RE
+
+.sp
+.ne 2
+.na
+\fBstring\fR
+.ad
+.RS 11n
+Strings are delimited by quotes (\fB"\fR), and support the character escape
+sequences defined in \fBformats\fR(7).
+.RE
+
+.sp
+.ne 2
+.na
+\fBfloat\fR
+.ad
+.RS 11n
+Scientific notation is not supported.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRWriting a poolcfg Script
+.sp
+.LP
+The following \fBpoolcfg\fR script creates a pool named \fBAccounting\fR, and a
+processor set, \fBsmall-1\fR. The processor set is created first, then the pool
+is created and associated with the set.
+
+.sp
+.in +2
+.nf
+create pset small-1 ( uint pset.min = 1 ; uint pset.max = 4)
+create pool Accounting
+associate pool Accounting ( pset small-1 )
+.fi
+.in -2
+
+.LP
+\fBExample 2 \fRReporting on \fBpool_0\fR
+.sp
+.LP
+The following command reports on \fBpool_0\fR to standard output in human
+readable form:
+
+.sp
+.in +2
+.nf
+ # poolcfg -c 'info pool pool_0' /etc/pooladm.conf
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRDestroying pool_0 and Its Associations
+.sp
+.LP
+The following command destroys \fBpool_0\fR and associations, but not the
+formerly associated resources:
+
+.sp
+.in +2
+.nf
+# poolcfg -c 'destroy pool pool_0' /etc/pooladm.conf
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 4 \fRDisplaying the Current Configuration
+.sp
+.LP
+The following command displays the current configuration:
+
+.sp
+.in +2
+.nf
+$ poolcfg -c 'info' /etc/pooladm.conf
+system example_system
+ int system.version 1
+ boolean system.bind-default true
+ string system.comment Discovered by libpool
+
+ pool pool_default
+ boolean pool.default true
+ boolean pool.active true
+ int pool.importance 5
+ string pool.comment
+ string.pool.scheduler FSS
+ pset pset_default
+
+ pset pset_default
+ int pset.sys_id -1
+ string pset.units population
+ boolean pset.default true
+ uint pset.max 4294967295
+ uint pset.min 1
+ string pset.comment
+ boolean pset.escapable false
+ uint pset.load 0
+ uint pset.size 2
+
+ cpu
+ int cpu.sys_id 0
+ string cpu.comment
+
+ cpu
+ int cpu.sys_id 2
+ string cpu.comment
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 5 \fRMoving cpu with ID 2 to Processor Set pset1 in the Kernel
+.sp
+.LP
+The following command moves \fBcpu\fR with ID \fB2\fR to processor set
+\fBpset1\fR in the kernel:
+
+.sp
+.in +2
+.nf
+# poolcfg -dc 'transfer to pset pset1 ( cpu 2 )'
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 6 \fRMoving 2 cpus from Processor Set pset1 to Processor Set pset2
+in the Kernel
+.sp
+.LP
+The following command moves 2 \fBcpu\fRs from processor set \fBpset1\fR to
+processor set \fBpset2\fR in the kernel:
+
+.sp
+.in +2
+.nf
+# poolcfg -dc 'transfer 2 from pset pset1 to pset2'
+.fi
+.in -2
+.sp
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability See below.
+.TE
+
+.sp
+.LP
+The invocation is Committed. The output is Uncommitted.
+.SH SEE ALSO
+.sp
+.LP
+.BR libpool (3LIB),
+.BR attributes (7),
+.BR formats (7),
+.BR pooladm (8),
+.BR poolbind (8)
+.sp
+.LP
+\fI\fR
diff --git a/usr/src/man/man8/poold.8 b/usr/src/man/man8/poold.8
new file mode 100644
index 0000000000..e3e690f0f5
--- /dev/null
+++ b/usr/src/man/man8/poold.8
@@ -0,0 +1,209 @@
+'\" te
+.\" Copyright (c) 2005, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH POOLD 8 "Dec 1, 2005"
+.SH NAME
+poold \- automated resource pools partitioning daemon
+.SH SYNOPSIS
+.LP
+.nf
+\fBpoold\fR [\fB-l\fR \fIlevel\fR]
+.fi
+
+.SH DESCRIPTION
+.LP
+\fBpoold\fR provides automated resource partitioning facilities. \fBpoold\fR
+can be enabled or disabled using the Solaris Service Management Facility,
+\fBsmf\fR(7). \fBpoold\fR requires the Resource Pools facility to be active in
+order to operate.
+.sp
+.LP
+The dynamic resource pools service's fault management resource identifier
+(FMRI) is:
+.sp
+.in +2
+.nf
+svc:/system/pools/dynamic
+.fi
+.in -2
+
+.sp
+.LP
+The resource pools service's FMRI is:
+.sp
+.in +2
+.nf
+svc:/system/pools
+.fi
+.in -2
+
+.sp
+.LP
+\fBpoold\fR's configuration details are held in a \fBlibpool\fR(3LIB)
+configuration and you can access all customizable behavior from this
+configuration.
+.sp
+.LP
+\fBpoold\fR periodically examines the load on the system and decides whether
+intervention is required to maintain optimal system performance with respect to
+resource consumption. \fBpoold\fR also responds to externally initiated (with
+respect to \fBpoold\fR) changes of either resource configuration or objectives.
+.sp
+.LP
+If intervention is required, \fBpoold\fR attempts to reallocate the available
+resources to ensure that performance objectives are satisfied. If it is not
+possible for \fBpoold\fR to meet performance objectives with the available
+resources, then a message is written to the log. \fBpoold\fR allocates scarce
+resources according to the objectives configured by the administrator. The
+system administrator must determine which resource pools are most deserving of
+scarce resource and indicate this through the importance of resource pools and
+objectives.
+.SH OPTIONS
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-l\fR \fIlevel\fR\fR
+.ad
+.RS 12n
+Specify the verbosity level for logging information.
+.sp
+Specify \fIlevel\fR as \fBALERT\fR, \fBCRIT\fR, \fBERR\fR, \fBWARNING\fR,
+\fBNOTICE\fR, \fBINFO\fR, and \fBDEBUG\fR. If \fIlevel\fR is not supplied, then
+the default logging level is \fBINFO\fR.
+.sp
+.ne 2
+.na
+\fB\fBALERT\fR\fR
+.ad
+.RS 11n
+ A condition that should be corrected immediately, such as a corrupted system
+database.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBCRIT\fR\fR
+.ad
+.RS 11n
+Critical conditions, such as hard device errors.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBERR\fR\fR
+.ad
+.RS 11n
+Errors.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBWARNING\fR\fR
+.ad
+.RS 11n
+Warning messages.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBNOTICE\fR\fR
+.ad
+.RS 11n
+ Conditions that are not error conditions, but that may require special
+handling.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBINFO\fR\fR
+.ad
+.RS 11n
+Informational messages.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBDEBUG\fR\fR
+.ad
+.RS 11n
+Messages that contain information normally of use only when debugging a
+program.
+.RE
+
+.RE
+
+.sp
+.LP
+When invoked manually, with the \fB-l\fR option, all log output is directed to
+standard error.
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRModifying the Default Logging Level
+.sp
+.LP
+The following command modifies the default logging level to \fBERR\fR:
+
+.sp
+.in +2
+.nf
+# /usr/lib/pool/poold -l ERR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fREnabling Dynamic Resource Pools
+.sp
+.LP
+The following command enables dynamic resource pools:
+
+.sp
+.in +2
+.nf
+# /usr/sbin/svcadm enable svc:/system/pools/dynamic
+.fi
+.in -2
+.sp
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability See below.
+.TE
+
+.sp
+.LP
+The invocation is Evolving. The output is Unstable.
+.SH SEE ALSO
+.LP
+.BR libpool (3LIB),
+.BR pool_set_status (3POOL),
+.BR attributes (7),
+.BR smf (7),
+.BR pooladm (8),
+.BR poolbind (8),
+.BR poolcfg (8),
+.BR poolstat (8),
+.BR svcadm (8)
+.sp
+.LP
+\fI\fR
diff --git a/usr/src/man/man8/poolstat.8 b/usr/src/man/man8/poolstat.8
new file mode 100644
index 0000000000..f88806bad4
--- /dev/null
+++ b/usr/src/man/man8/poolstat.8
@@ -0,0 +1,396 @@
+'\" te
+.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
+.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH POOLSTAT 8 "Jun 16, 2009"
+.SH NAME
+poolstat \- report active pool statistics
+.SH SYNOPSIS
+.LP
+.nf
+\fBpoolstat\fR [\fB-p\fR \fIpool-list\fR] [\fB-r\fR \fIrset-list\fR] [\fB-T\fR u | d ] [\fIinterval\fR [\fIcount\fR]]
+.fi
+
+.LP
+.nf
+\fBpoolstat\fR [\fB-p\fR \fIpool-list\fR] [\fB-o\fR \fIformat\fR \fB-r\fR \fIrset-list\fR]
+ [\fB-T\fR u | d ] [\fIinterval\fR [\fIcount\fR]]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBpoolstat\fR utility iteratively examines all active pools on the system.
+It reports statistics based on the selected output mode. \fBpoolstat\fR
+provides options to examine only specified pools and report resource
+set-specific statistics.
+.sp
+.LP
+Without options, \fBpoolstat\fR examines all pools, reports basic statistics
+for their resource sets, and exits.
+.SS "DISPLAY FORMATS"
+.sp
+.LP
+In default output format, \fBpoolstat\fR outputs a header line and a line for
+each pool. The line begins with the pool ID and its name, followed by a column
+of statistical data for the processor set attached to the pool.
+.sp
+.LP
+The columns are defined as follows:
+.sp
+.ne 2
+.na
+\fB\fBid\fR\fR
+.ad
+.RS 8n
+Pool ID.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpool\fR\fR
+.ad
+.RS 8n
+Pool name.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrid\fR\fR
+.ad
+.RS 8n
+Resource set id.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrset\fR\fR
+.ad
+.RS 8n
+Resource set name.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBtype\fR\fR
+.ad
+.RS 8n
+Resource set type.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmin\fR\fR
+.ad
+.RS 8n
+Minimum resource set size.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmax\fR\fR
+.ad
+.RS 8n
+Maximum resource set size.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsize\fR\fR
+.ad
+.RS 8n
+Current resource set size.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBused\fR\fR
+.ad
+.RS 8n
+The measure of how much of the resource set is currently is use. This is
+calculated as the percentage utilization of the resource set multiplied by its
+size. If resource set has been reconfigured during last sampling interval, this
+value might be not reported (\fB-\fR).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBload\fR\fR
+.ad
+.RS 8n
+The absolute representation of the load that is put on the resource set. For
+the definition of this property see \fBlibpool\fR(3LIB).
+.RE
+
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-o\fR \fIformat\fR\fR
+.ad
+.RS 16n
+Report statistics according to the format specification given in format. See
+\fBDISPLAY FORMATS\fR.
+.sp
+The \fB-o\fR option accepts lists as arguments. Items in a list can be either
+separated by commas or enclosed in quotes and separated by commas or spaces.
+.sp
+You can specify multiple \fB-o\fR options. The format specification is
+interpreted as the whitespace separated concatenation of all the format option
+arguments.
+.sp
+The \fB-o\fR option must be used in conjunction with the \fB-r\fR option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR \fIpool-list\fR\fR
+.ad
+.RS 16n
+Report only pools whose names are in the given list. If the -r option is also
+used, this option selects only resource sets which belong to pools in the given
+list. Statistics for pools or resource sets are reported in the same order in
+which pool names are listed on the pool-list. Pool can be specified by name or
+by ID.
+.sp
+The \fB-p\fR option accepts lists as arguments. Items in a \fIpool-list\fR can
+only be separated by spaces.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-r\fR \fIrset-list\fR\fR
+.ad
+.RS 16n
+Report resource set statistics. If the \fIrset-list\fR argument is "\fBall\fR",
+then all possible resource set types are selected.
+.sp
+The \fB-r\fR option accepts lists as arguments. Items in a list can be either
+separated by commas or enclosed in quotes and separated by commas or spaces.
+.sp
+The following resource set types are supported:
+.sp
+.ne 2
+.na
+\fB\fBall\fR\fR
+.ad
+.RS 8n
+All resource set types
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpset\fR\fR
+.ad
+.RS 8n
+Processor set
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-T\fR \fBu\fR | \fBd\fR\fR
+.ad
+.RS 16n
+Display a time stamp.
+.sp
+Specify \fBu\fR for a printed representation of the internal representation of
+time. See \fBtime\fR(2). Specify \fBd\fR for standard date format. See
+\fBdate\fR(1).
+.RE
+
+.SH OPERANDS
+.sp
+.LP
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fB\fIcount\fR\fR
+.ad
+.RS 12n
+The number of times that the statistics are repeated. By default, poolstat
+reports statistics only once.
+.sp
+If neither interval nor count are specified, statistics are reported once. If
+interval is specified and count is not, statistics are reported indefinitely.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIinterval\fR\fR
+.ad
+.RS 12n
+The sampling interval in seconds.
+.sp
+If neither interval nor count are specified, statistics are reported once. If
+interval is specified and count is not, statistics are reported indefinitely.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRUsing \fBpoolstat\fR
+.sp
+.LP
+The following example shows the default output from the \fBpoolstat\fR utility:
+
+.sp
+.in +2
+.nf
+% poolstat
+ pset
+ id pool size used load
+ 0 pool_default 4 3.6 6.2
+ 1 pool_admin 4 3.3 8.4
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRReporting Resource Set Statistics
+.sp
+.LP
+The following example reports resource set statistics.
+
+.sp
+.in +2
+.nf
+
+% poolstat -r pset
+ id pool type rid rset min max size used load
+ 0 pool_default pset -1 pset_default 1 65K 2 1.2 8.3
+ 1 pool_admin pset 1 pset_admin 1 1 1 0.4 5.2
+ 2 pool_other pset -1 pset_default 1 65K 2 1.2 8.3
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Resource sets attached to multiple pools, as \fBpset_default\fR in the example
+above, are listed multiple times, once for each pool.
+
+.LP
+\fBExample 3 \fRRestricting the Output to the List of Pools
+.sp
+.LP
+The following example restricts the output to the list of pools
+
+.sp
+.in +2
+.nf
+% poolstat -p pool_default
+ pset
+ id pool size used load
+ 0 pool_default 8 5.3 10.3
+
+% poolstat -p 'pool_admin pool_default'
+ pset
+ id pool size used load
+ 1 pool_admin 6 4.3 5.3
+ 0 pool_default 2 1.9 2.0
+
+% poolstat -r all -p 'pool_admin pool_default'
+ id pool type rid rset min max size used load
+ 1 pool_admin pset 1 pset_admin 1 1 1 0.9 2.3
+ 2 pool_default pset -1 pset_default 1 65K 2 2.0 2.0
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 4 \fRCustomizing Output
+.sp
+.LP
+The following example customizes output:
+
+.sp
+.in +2
+.nf
+% poolstat -r -o pool,rset,size,load
+ pool rset size load
+ pool_default pset_default 4 4.5
+ pool_admin pset_admin 4 2.1
+.fi
+.in -2
+.sp
+
+.SH EXIT STATUS
+.sp
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 5n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB1\fR\fR
+.ad
+.RS 5n
+An error occurred.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB2\fR\fR
+.ad
+.RS 5n
+Invalid command line options were specified.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Stability Evolving
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR libpool (3LIB),
+.BR attributes (7)
+.sp
+.LP
+\fI\fR
+.SH NOTES
+.sp
+.LP
+The system ids associated with resources can change after the system reboots or
+the resource configuration is altered.
diff --git a/usr/src/man/man8/ports.8 b/usr/src/man/man8/ports.8
new file mode 100644
index 0000000000..94923dbad1
--- /dev/null
+++ b/usr/src/man/man8/ports.8
@@ -0,0 +1,300 @@
+'\" te
+.\" Copyright (c) 2002 Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PORTS 8 "Nov 8, 2002"
+.SH NAME
+ports \- creates /dev entries and inittab entries for serial lines
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/ports\fR [\fB-r\fR \fIrootdir\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBdevfsadm\fR(8) is now the preferred command for \fB/dev\fR and
+\fB/devices\fR and should be used instead of \fBports\fR.
+.sp
+.LP
+The \fBports\fR command creates symbolic links in the \fB/dev/term\fR and
+\fB/dev/cua\fR directories to the serial-port character device files in
+\fB/devices\fR and adds new entries in \fB/etc/inittab\fR for non-system ports
+found. System-board ports are given single lower-case letters for names (such
+as \fBa\fR and \fBb\fR) while other ports are named numerically.
+.sp
+.LP
+\fBports\fR searches the kernel device tree to find the serial devices attached
+to the system. It also checks \fB/dev/term\fR and \fB/dev/cua\fR to see what
+symbolic links to serial devices already exist. \fBports\fR then performs the
+following:
+.RS +4
+.TP
+1.
+Assigns new numbers (or letters for system-board ports) to ports that are
+attached to the system but do not have \fB/dev/term\fR and \fB/dev/cua\fR
+entries. The numbers or letters assigned are the lowest-unused numbers or
+letters.
+.RE
+.RS +4
+.TP
+2.
+Removes dangling links: links from \fB/dev/term\fR and \fB/dev/cua\fR
+pointing to no-longer-existing ports.
+.RE
+.RS +4
+.TP
+3.
+Creates new \fB/dev/term\fR and \fB/dev/cua\fR links for new serial devices.
+.RE
+.RS +4
+.TP
+4.
+Invokes \fBsacadm\fR(8) to make new port monitor entries for the new
+devices. This is not done automatically for on-board ports; on workstations
+these ports are often not used for dial-in sessions, so a port-monitor for one
+of these ports must be created explicitly.
+.RE
+.sp
+.LP
+If the configuration has not changed, ports exits without doing anything.
+.SS "Notice to Driver Writers"
+.sp
+.LP
+\fBports\fR considers devices with a node type of \fBDDI_NT_SERIAL,\fR
+\fBDDI_NT_SERIAL_MB,\fR \fBDDI_NT_SERIAL_DO,\fR or \fBDDI_NT_SERIAL_MB_DO\fR to
+be serial port devices. Devices with one of these node types must create minor
+device names that obey the following conventions when calling
+\fBddi_create_minor_node\fR(9F).
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The minor name for non-system port devices (\fBDDI_NT_SERIAL\fR) consists of an
+\fBASCII\fR numeric string, where the first port on the device is named
+\fB0\fR, the second named \fB1\fR, the third named \fB2\fR, up to the number of
+ports provided by the device.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The minor name for non-system dialout devices (\fBDDI_NT_SERIAL_DO\fR) is the
+\fBASCII\fR numeric port name, concatenated with \fB,cu\fR. For example, the
+minor name for the first dialout port on the serial board is \fB0,cu\fR.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The minor name for system-board port devices (\fBDDI_NT_SERIAL_MB\fR) consists
+of a string containing a single \fBASCII\fR lowercase character, where the
+first port on the device is named \fBa\fR, the second is named \fBb\fR, the
+third is named \fBc\fR, for all ports on the device (or up through port
+\fBz\fR).
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The minor name for system-board dialout devices (\fBDDI_NT_SERIAL_MB_DO\fR)
+consists of the lowercase character port name, concatenated with \fB,cu\fR. For
+example, the minor name for the first dialout port on the on-board serial
+device is \fBa,cu\fR.
+.RE
+.sp
+.LP
+To prevent \fBdisks\fR from attempting to automatically generate links for a
+device, drivers must specify a private node type and refrain from using one of
+the above node types when calling \fBddi_create_minor_node\fR(9F).
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-r\fR\fI rootdir\fR\fR
+.ad
+.RS 14n
+Causes \fBports\fR to presume that the \fB/dev/term\fR, \fB/dev/cua\fR, and
+\fB/devices\fR directories are found under \fIrootdir\fR, not directly under
+\fB/\fR. If this argument is specified, \fBsacadm\fR(8) is not invoked, since
+it would update terminal administration files under \fB/etc\fR without regard
+to the \fIrootdir\fR.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRCreating the Serial and Dialout Minor Device Nodes
+.sp
+.LP
+The following example creates the serial and dialout minor device nodes from
+the \fBxkserial\fR driver's \fBattach\fR(9E) function:
+
+.sp
+.in +2
+.nf
+/*
+* Create the minor number by combining the instance number
+* with the port number.
+*/ #define XKNUMPORTS 8
+#define XKMINORNUM(i, p) ((i) << 4 | (p))
+#define XKMINORNUM_DO(i, p) ((i) << 4 | (p) | 0x80)
+int
+xkserialattach(dev_info_t *dip, ddi_attach_cmd_t cmd)
+{
+ int instance, portnum;
+ char name[8];
+ /* other stuff in attach... */
+ instance = ddi_get_instance(dip);
+ for (portnum = 0; portnum < XKNUMPORTS; portnum++) {
+ /*
+ * create the serial port device
+ */
+ sprintf(name, "%d", portnum);
+ ddi_create_minor_node(dip, name, S_IFCHR,
+ XKMINORNUM(instance, portnum), DDI_NT_SERIAL, 0);
+
+ /*
+ * create the dialout device
+ */
+ sprintf(name,"%d,cu", portnum);
+ ddi_create_minor_node(dip, name, S_IFCHR,
+ XKMINORNUM_DO(instance, portnum), DDI_NT_SERIAL_DO, 0);
+ }
+}
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRInstalling the \fBxkserial\fR Port Driver on a Sun Fire 4800
+.sp
+.LP
+The following example installs the \fBxkserial\fR port driver on a Sun Fire
+4800 (with the driver controlling the fictional XKSerial 8 port serial board),
+with these special files in \fB/devices\fR:
+
+.sp
+.in +2
+.nf
+# ls -l /devices/ssm@0,0/pci@18,700000/pci@1/xkserial@f,800000/
+crw-r----- 1 root sys 32, 16 Aug 29 00:02 xkserial@2000:0
+crw-r----- 1 root sys 32, 144 Aug 29 00:02 xkserial@2000:0,cu
+crw-r----- 1 root sys 32, 17 Aug 29 00:02 xkserial@2000:1
+crw-r----- 1 root sys 32, 145 Aug 29 00:02 xkserial@2000:1,cu
+crw-r----- 1 root sys 32, 18 Aug 29 00:02 xkserial@2000:2
+crw-r----- 1 root sys 32, 146 Aug 29 00:02 xkserial@2000:2,cu
+crw-r----- 1 root sys 32, 19 Aug 29 00:02 xkserial@2000:3
+crw-r----- 1 root sys 32, 147 Aug 29 00:02 xkserial@2000:3,cu
+crw-r----- 1 root sys 32, 20 Aug 29 00:02 xkserial@2000:4
+crw-r----- 1 root sys 32, 148 Aug 29 00:02 xkserial@2000:4,cu
+crw-r----- 1 root sys 32, 21 Aug 29 00:02 xkserial@2000:5
+crw-r----- 1 root sys 32, 149 Aug 29 00:02 xkserial@2000:5,cu
+crw-r----- 1 root sys 32, 22 Aug 29 00:02 xkserial@2000:6
+crw-r----- 1 root sys 32, 150 Aug 29 00:02 xkserial@2000:6,cu
+crw-r----- 1 root sys 32, 23 Aug 29 00:02 xkserial@2000:7
+crw-r----- 1 root sys 32, 151 Aug 29 00:02 xkserial@2000:7,cu
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+\fB/dev/term\fR contain symbolic links to the serial port device nodes in
+\fB/devices\fR
+
+.sp
+.in +2
+.nf
+# ls -l /dev/term
+/dev/term/0 -> ../../devices/[....]/xkserial@2000:0
+/dev/term/1 -> ../../devices/[....]/xkserial@2000:1
+/dev/term/2 -> ../../devices/[....]/xkserial@2000:2
+/dev/term/3 -> ../../devices/[....]/xkserial@2000:3
+/dev/term/4 -> ../../devices/[....]/xkserial@2000:4
+/dev/term/5 -> ../../devices/[....]/xkserial@2000:5
+/dev/term/6 -> ../../devices/[....]/xkserial@2000:6
+/dev/term/7 -> ../../devices/[....]/xkserial@2000:7
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+and \fB/dev/cua\fR contain symbolic links to the dialout port device nodes in
+\fB/devices\fR
+
+.sp
+.in +2
+.nf
+# ls -l /dev/cua
+
+/dev/cua/0 -> ../../devices/[....]/xkserial@2000:0,cu
+/dev/cua/1 -> ../../devices/[....]/xkserial@2000:1,cu
+/dev/cua/2 -> ../../devices/[....]/xkserial@2000:2,cu
+/dev/cua/3 -> ../../devices/[....]/xkserial@2000:3,cu
+/dev/cua/4 -> ../../devices/[....]/xkserial@2000:4,cu
+/dev/cua/5 -> ../../devices/[....]/xkserial@2000:5,cu
+/dev/cua/6 -> ../../devices/[....]/xkserial@2000:6,cu
+/dev/cua/7 -> ../../devices/[....]/xkserial@2000:7,cu
+.fi
+.in -2
+.sp
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/dev/term/\fR\fIn\fR\fR
+.ad
+.RS 16n
+Logical serial port devices
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/cua/\fR\fIn\fR\fR
+.ad
+.RS 16n
+Logical dialout port devices
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/inittab\fR\fR
+.ad
+.RS 16n
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/saf/*\fR\fR
+.ad
+.RS 16n
+
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR devfs (4FS),
+.BR attributes (7),
+.BR add_drv (8),
+.BR devfsadm (8),
+.BR drvconfig (8),
+.BR pmadm (8),
+.BR sacadm (8),
+.BR attach (9E),
+.BR ddi_create_minor_node (9F)
+.sp
+.LP
+\fI\fR
diff --git a/usr/src/man/man8/powerd.8 b/usr/src/man/man8/powerd.8
new file mode 100644
index 0000000000..84ce05d6ea
--- /dev/null
+++ b/usr/src/man/man8/powerd.8
@@ -0,0 +1,74 @@
+'\" te
+.\" Copyright (c) 1999, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH POWERD 8 "May 13, 2017"
+.SH NAME
+powerd \- power manager daemon
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/power/powerd\fR [\fB-n\fR]
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBpowerd\fR daemon is started by \fBpmconfig\fR(8) to monitor system
+activity and perform an automatic shutdown using the suspend-resume feature.
+When the system is suspended, complete current state is saved on the disk
+before power is removed. On reboot, the system automatically starts a resume
+operation and the system is restored to the same state it was in immediately
+prior to suspend.
+.sp
+.LP
+Immediately prior to system shutdown, the daemon notifies \fBsyslogd\fR(8) of
+the shutdown, which broadcasts a notification.
+.SH OPTIONS
+.LP
+The following option is supported:
+.sp
+.ne 2
+.na
+\fB\fB-n\fR\fR
+.ad
+.RS 6n
+No broadcast mode. The daemon silently shuts down the system without notifying
+\fBsyslogd\fR(8).
+.RE
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/etc/power.conf\fR\fR
+.ad
+.RS 19n
+Power Management configuration information file
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Unstable
+.TE
+
+.SH SEE ALSO
+.LP
+.BR cpr (4),
+.BR pm (4D),
+.BR power.conf (5),
+.BR attributes (7),
+.BR pmconfig (8),
+.BR syslogd (8)
+.sp
+.LP
+\fIUsing Power Management\fR
diff --git a/usr/src/man/man8/powertop.8 b/usr/src/man/man8/powertop.8
new file mode 100644
index 0000000000..d6a963229e
--- /dev/null
+++ b/usr/src/man/man8/powertop.8
@@ -0,0 +1,242 @@
+'\" te
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH POWERTOP 8 "May 13, 2017"
+.SH NAME
+powertop \- report and analyze events that affect power management
+.SH SYNOPSIS
+.LP
+.nf
+\fBpowertop\fR [\fB-c\fR \fIprocessor_id\fR] [\fB-d\fR \fIcount\fR] [\fB-t\fR \fIinterval\fR] [\fB-v\fR] [\fB-h\fR]
+.fi
+
+.SH DESCRIPTION
+.LP
+\fBPowerTOP\fR is an observability tool that shows how effectively the system
+is taking advantage of the CPU's power management features. By running the tool
+on an otherwise idle system, the user can see for how long the CPU is running
+at different power states. Ideally, an unutilized (idle) system spends 100%
+of its time running at the lowest power state, but because of background user
+and kernel activity (random software periodically waking to poll status), idle
+systems can consume more power than they should.
+.sp
+.LP
+The tool analyzes system activity periodically and displays a summary of how
+long the processor is executing at each supported power state. It also displays
+the top activities responsible for causing the CPU to wake up and use more
+energy. This report allows the user to identify and diagnose problematic areas
+of the system and optimize its power efficiency.
+.sp
+.LP
+\fBPowerTOP\fR averages the amount of activity that is preventing the CPU from
+entering a lower power state and presents it on the "Wakeups-from-idle per
+second" field. This value represents the total number of wake-ups divided by
+the current interval. Notice that not all events are displayed on the screen at
+all times.
+.sp
+.LP
+During execution, a user can force a refresh of the analysis by pressing the
+\fBR\fR key. The interval time is restored to the default or to a specified
+value. To quit the application, the user must press the \fBQ\fR key.
+.sp
+.LP
+If you are running as root (superuser) or in the Primary Administrator role,
+the tool makes suggestions as how the system can be improved from a power
+management perspective.
+.sp
+.LP
+PowerTOP allows you to freeze each of its three subwindows, enabling you to
+better analyze each subwindow's contents. When you have three different DTrace
+scripts running at the same time, freezing subwindows lowers CPU consumption.
+This feature is activated by pressing the \fBi\fR, \fBf\fR, or \fBe\fR key
+while the tool running. Pressing one of these keys freezes the idle,
+frequency, or event report, respectively. Pressing it once more, unfreezes it.
+This feature is most useful when invoked while the application being analyzed
+is running.
+.sp
+.LP
+\fBPowerTOP\fR runs on \fBxVM\fR(7) domains. However, the report for idle state
+transitions might or might not be accurate as the physical CPU can be shared by
+different virtual CPUs. Both wakeup count and event report displays information
+regarding the current virtualized environment.
+.SH OPTIONS
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-c\fR [\fIprocessor_id\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Specifies which CPU the tool should observe.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-d\fR [\fIcount\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Dumps the results of \fIcount\fR analysis of system activity to the screen.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-h\fR\fR
+.ad
+.sp .6
+.RS 4n
+Displays the command's usage.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-t\fR [\fIinterval\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the interval, in seconds, at which the tool analyzes the system. The
+possible values are between 1 and 100; the default is 5 seconds.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.sp .6
+.RS 4n
+Switches to verbose mode, including noting firings of the kernel cyclic
+subsystem in the event report.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRSetting the Interval
+.sp
+.LP
+The following command sets the interval to two seconds.
+
+.sp
+.in +2
+.nf
+% \fBpowertop -t 2\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRAnalyzing and Dumping System Activity
+.sp
+.LP
+The following command analyzes and dumps system activity to the standard output
+four times.
+
+.sp
+.in +2
+.nf
+% \fBpowertop -d 4\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRReporting Cyclic Subsystem Activity
+.sp
+.LP
+The following command reports cyclic subsystem activity.
+
+.sp
+.in +2
+.nf
+% \fBpowertop -v\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 4 \fRAnalyzing Activity on a Specific Processor
+.sp
+.LP
+The following command runs PowerTOP and only displays data for CPU 3:
+
+.sp
+.in +2
+.nf
+% \fBpowertop -c 3\fR
+.fi
+.in -2
+.sp
+
+.SH EXIT STATUS
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.sp .6
+.RS 4n
+Successful operation.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB1\fR\fR
+.ad
+.sp .6
+.RS 4n
+An error occurred.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB2\fR\fR
+.ad
+.sp .6
+.RS 4n
+Incorrect usage.
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Architecture x86, SPARC
+_
+Interface Stability Volatile
+.TE
+
+.SH SEE ALSO
+.LP
+.BR uadmin (2),
+.BR libdevinfo (3LIB),
+.BR cpr (4),
+.BR pm (4D),
+.BR attributes (7),
+.BR xVM (7),
+.BR kstat (8),
+.BR pmconfig (8),
+.BR powerd (8),
+.BR psrinfo (8),
+.BR pm-components (9P),
+.BR removable-media (9P)
+.SH USAGE
+.LP
+You must have \fBDTrace\fR privileges to run \fBPowerTOP\fR and root
+(superuser) privileges or assume the Primary Administrator role for the tool to
+suggest improvements to the system.
diff --git a/usr/src/man/man8/ppdmgr.8 b/usr/src/man/man8/ppdmgr.8
new file mode 100644
index 0000000000..35eb38badf
--- /dev/null
+++ b/usr/src/man/man8/ppdmgr.8
@@ -0,0 +1,318 @@
+'\" te
+.\" Copyright (c) 2007 by Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PPDMGR 8 "Mar 9, 2007"
+.SH NAME
+ppdmgr \- utility for managing PPD files
+.SH SYNOPSIS
+.LP
+.nf
+\fBppdmgr\fR \fB-a\fR \fIppd_filename_path\fR [\fB-L\fR \fIlabel\fR] [\fB-R\fR \fIppd_repository_name\fR] [\fB-w\fR]
+.fi
+
+.LP
+.nf
+\fBppdmgr\fR \fB-r\fR [\fB-L\fR \fIlabel\fR] [\fB-R\fR \fIppd_repository_name\fR]
+.fi
+
+.LP
+.nf
+\fBppdmgr\fR \fB-u\fR [\fB-L\fR \fIlabel\fR] [\fB-R\fR \fIppd_repository_name\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The PPD File Manager adds PPD files to the print system's PPD file
+repositories. When changes in the PPD file repositories are made by the
+utility, they are reflected in the Solaris Print Manager (see
+\fBprintmgr\fR(8)) GUI printer driver field when adding or modifying local
+attached or network attached printers.
+.sp
+.LP
+Multiple PPD file repositories may be available. PPD files that are supplied
+with the system are available in the "\fBsystem\fR" repository. PPD files that
+are supplied by third party vendors may be available in the "\fBvendor\fR"
+repository. PPD files that are supplied by system administrators may be
+available in the "\fBadmin\fR" repository, and PPD files that are added using
+this utility are available in the "user" repository. When this utility is used
+to update or rebuild printer information reflected in the \fBprintmgr\fR(8),
+the special reserved repository name "\fBall\fR" can be used to specify all of
+the available PPD file repositories.
+.sp
+.LP
+PPD files are grouped under a user-provided "label" within the print system's
+PPD file repository to allow easier selection of a printer driver through the
+\fBprintmgr\fR GUI. The special reserved label name "\fBall\fR" can be used to
+specify all of the available labels in a PPD file repository. The results are
+undefined if a label name contains characters that are not in the portable
+filename character set or if a label name starts with a hyphen (-). A label
+name may not contain a semi-colon (:).
+.SH OPTIONS
+.sp
+.LP
+The following subcommand are supported:
+.sp
+.ne 2
+.na
+\fB\fB-a\fR \fIppd_file_path\fR\fR
+.ad
+.sp .6
+.RS 4n
+Adds a copy of \fIppd_file_path\fR to the system under the specified label in
+the specified repository, where \fIppd_file_path\fR is the full path and file
+name to the PPD file. The utility accepts a valid PPD file with either a
+\fB\&.ppd\fR or \fB\&.ppd.gz\fR (gzipped) extension.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-L\fR \fIlabel\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies a label to group PPD files under. When specified with the \fB-a\fR
+option, the default label is "\fBuser\fR". When specified with the \fB-r\fR or
+\fB-u\fR option, the default label is "\fBall\fR". The following are reserved
+labels:
+.sp
+.ne 2
+.na
+\fB\fBcaches\fR\fR
+.ad
+.RS 16n
+may never be specified
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBppdcache\fR\fR
+.ad
+.RS 16n
+may never be specified
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmanufaliases\fR\fR
+.ad
+.RS 16n
+may never be specified
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBall\fR\fR
+.ad
+.RS 16n
+applies the specified action to all labels in a repository, and may only be
+specified with the \fB-r\fR or \fB-u\fR option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSUNW*\fR\fR
+.ad
+.RS 16n
+anything starting with \fBSUNW\fR is reserved and should not be specified with
+the \fB-a\fR option.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-R\fR \fIrepository_name\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the name of a PPD file repository representing one of the PPD file
+installation locations. Possible repository names include: "\fBuser\fR",
+"\fBadmin\fR", "\fBvendor\fR", "\fBsystem\fR", and "\fBall\fR".
+.sp
+The repository name "\fBall\fR" signifies all of the possible repository names.
+The default repository name is "\fBuser\fR". Only the "\fBuser\fR" or
+"\fBadmin\fR" repository may be specified with the \fB-a\fR option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-r\fR\fR
+.ad
+.sp .6
+.RS 4n
+Rebuilds the cache information for the specified label in the specified
+repository.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-u\fR\fR
+.ad
+.sp .6
+.RS 4n
+Updates the cache information for the specified label in the specified
+repository.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-w\fR\fR
+.ad
+.sp .6
+.RS 4n
+Write the full path of the added PPD file. This option is only valid with the
+\fB-a\fR option. Otherwise, this option is ignored.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRAdding a copy of a PPD file to the repository
+.sp
+.LP
+The following commands add a copy of a PPD file to the "\fBuser\fR" repository
+under the "\fBuser\fR" label:
+
+.sp
+.in +2
+.nf
+# ppdmgr -a /net/somesystem/ppdfiles/ppdfile.ppd
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+or
+
+.sp
+.in +2
+.nf
+# ppdmgr -a /net/somesystem/ppdfiles/ppdfile.ppd -L user
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The following command adds a copy of a PPD file to the "\fBuser\fR" repository
+under the "\fBPhoto\fR" label and write the full path of the added copy to
+standard output:
+
+.sp
+.in +2
+.nf
+# ppdmgr -a /net/somesystem/ppdfiles/ppdfile.ppd -L "Photo" -w
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRUpdating the cache for the PPD files
+.sp
+.LP
+The following commands update the cache for the PPD files under the "\fBall\fR"
+labels in the "\fBuser\fR" repository:
+
+.sp
+.in +2
+.nf
+ # ppdmgr -u
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+or
+
+.sp
+.in +2
+.nf
+ # ppdmgr -u -R user -L all
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The following command updates the cache for the PPD files under the "photo"
+label in the "\fBuser\fR" repository:
+
+.sp
+.in +2
+.nf
+ # ppdmgr -u -R user -L Photo
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRRebuilding the cache for the PPD files
+.sp
+.LP
+The following command rebuilds the cache for the PPD files under the "Photo"
+label in the "\fBuser\fR" repository:
+
+.sp
+.in +2
+.nf
+# ppdmgr -r -R user -L Photo
+.fi
+.in -2
+.sp
+
+.SH EXIT STATUS
+.sp
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 6n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB>0\fR\fR
+.ad
+.RS 6n
+An error occurred.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Committed
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7),
+.BR printmgr (8)
diff --git a/usr/src/man/man8/pppd.8 b/usr/src/man/man8/pppd.8
new file mode 100644
index 0000000000..304a98dfe7
--- /dev/null
+++ b/usr/src/man/man8/pppd.8
@@ -0,0 +1,2725 @@
+'\" te
+.\" Copyright (c) 1989 Carnegie Mellon University. All rights reserved.
+.\" Redistribution and use in source and binary forms are permitted provided that the above copyright notice and this paragraph are duplicated in all such forms and that any documentation, advertising materials, and other materials related to such distribution and use acknowledge that the software was developed by Carnegie Mellon University. The name of the University may not be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
+.\" WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
+.\" Portions Copyright (c) 2008, Sun Microsystems, Inc. All Right Reserved.
+.TH PPPD 8 "February 5, 2022"
+.SH NAME
+pppd \- point to point protocol daemon
+.SH SYNOPSIS
+.nf
+\fBpppd\fR [\fItty_name\fR] [\fIspeed\fR] [\fIoptions\fR]
+.fi
+
+.SH DESCRIPTION
+The point-to-point protocol (PPP) provides a method for transmitting datagrams
+over serial point-to-point links. PPP is composed of three components: a
+facility for encapsulating datagrams over serial links, an extensible link
+control protocol (LCP), and a family of network control protocols (NCP) for
+establishing and configuring different network-layer protocols.
+.sp
+.LP
+The encapsulation scheme is provided by driver code in the kernel. \fBpppd\fR
+provides the basic LCP authentication support and several NCPs for establishing
+and configuring the Internet Protocol (referred to as the IP Control Protocol
+or "IPCP") and IPv6 (IPV6CP).
+.SH OPTIONS
+The following sections discuss the \fBpppd\fR options:
+.SS "Options Files"
+Options are taken from files and the command line. \fBpppd\fR reads options
+from the files \fB/etc/ppp/options\fR, \fB$HOME/.ppprc\fR and
+\fB/etc/ppp/options.\fR\fIttyname\fR (in that order) before processing the
+options on the command line. (Command-line options are scanned for the terminal
+name before the \fBoptions\fR.\fIttyname\fR file is read.) To form the name of
+the \fBoptions\fR.\fIttyname\fR file, the initial \fB/dev/\fR is removed from
+the terminal name, and any remaining forward slash characters (/) are replaced
+with dots. For example, with serial device \fB/dev/cua/a\fR, option file
+\fB/etc/ppp/options.cua.a\fR is read.
+.sp
+.LP
+An options file is parsed into a series of words that are delimited by
+whitespace. Whitespace can be included in a word by enclosing the word in
+double-quotes ("). A backslash (\e) quotes the succeeding character. A hash (#)
+starts a comment, which continues until the end of the line. There is no
+restriction on using the \fBfile\fR or \fBcall\fR options within an options
+file.
+.SS "Frequently Used Options"
+.ne 2
+.na
+\fB\fB<tty_name>\fR \fR
+.ad
+.RS 23n
+Communicate over the named device. The string \fB/dev/\fR is prepended if
+necessary. If no device name is given, or if the name of the terminal connected
+to the standard input is given, \fBpppd\fR uses that terminal and does not fork
+to put itself in the background. A value for this option from a privileged
+source cannot be overridden by a non-privileged user.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB<speed>\fR \fR
+.ad
+.RS 23n
+Set the baud rate to <\fBspeed\fR> (a decimal number). The default is to leave
+the baud rate unchanged. This option is normally needed for dial-out only.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBasyncmap\fR \fB\fI<map>\fR\fR \fR
+.ad
+.RS 23n
+Set the \fBasync\fR character map to \fI<map>\fR\&. The map describes which
+control characters cannot be successfully received over the serial line.
+\fBpppd\fR asks the peer to send these characters as a 2-byte escape sequence.
+The argument is a 32 bit hex number, with each bit representing a character to
+escape. Bit 0 (00000001) represents the character 0x00; bit 31 (80000000)
+represents the character 0x1f or ^_. If multiple \fBasyncmap\fR options are
+given, the values are \fBORed\fR together. If no \fBasyncmap\fR option is
+given, \fBpppd\fR attempts to negotiate a value of 0. If the peer agrees, this
+disables escaping of the standard control characters. Use the
+\fBdefault-asyncmap\fR option to disable negotiation and escape all control
+characters.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBauth\fR \fR
+.ad
+.RS 23n
+Require the peer to authenticate itself before allowing network packets to be
+sent or received. This option is the default if the system has a default route.
+If the \fBauth\fR or the \fBnoauth\fR option is not specified, \fBpppd\fR
+allows the peer to use only those IP addresses to which the system does not
+already have a route.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcall\fR \fB\fIname\fR\fR \fR
+.ad
+.RS 23n
+Read options from the file \fB/etc/ppp/peers/\fR\fIname\fR. This file may
+contain privileged options, including \fBnoauth\fR, even if \fBpppd\fR is not
+being run by root. The \fIname\fR string may not begin with a slash ("/") or
+include consecutive periods \fB("..")\fR as a pathname component.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcallback\fR \fB\fInumber\fR\fR \fR
+.ad
+.RS 23n
+Request a callback to the given telephone number using Microsoft CBCP.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBconnect\fR \fB\fIscript\fR\fR \fR
+.ad
+.RS 23n
+Use the executable or shell command specified by \fIscript\fR to set up the
+serial line. This script would typically use the \fBchat\fR(8) program to dial
+the modem and start the remote \fBPPP\fR session. A value for this option
+originating from a privileged source cannot be overridden by a non-privileged
+user.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcrtscts\fR \fR
+.ad
+.RS 23n
+Use hardware flow control, that is, RTS/CTS, to control the flow of data on the
+serial port. If the \fBcrtscts\fR, \fBnocrtscts\fR, \fBcdtrcts\fR or
+\fBnocdtrcts\fR option is not provided, the hardware flow control setting for
+the serial port is left unchanged. Some serial ports lack a true RTS output and
+use this mode to implement unidirectional flow control. The serial port
+suspends transmission when requested by the modem by means of CTS but cannot
+request the modem to stop sending to the computer. This mode allows the use of
+DTR as a modem control line.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdefaultroute\fR \fR
+.ad
+.RS 23n
+Add a default route to the system routing tables when IPCP negotiation
+successfully completes, using the peer as the gateway. This entry is removed
+when the \fBPPP\fR connection is broken. This option is privileged if the
+\fBnodefaultroute\fR option is specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdisconnect\fR \fB \fIscript\fR\fR \fR
+.ad
+.RS 23n
+Run the executable or shell command specified by \fIscript\fR after \fBpppd\fR
+terminates the link. Typically, this script is used to command the modem to
+hang up if hardware modem control signals are not available. \fBdisconnect\fR
+is not run if the modem has already hung up. A value for this option
+originating from a privileged source cannot be overridden by a non-privileged
+user.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBescape\fR \fB\fIxx,yy,...\fR\fR \fR
+.ad
+.RS 23n
+Specifies that certain characters be escaped on transmission regardless of
+whether the peer requests them to be escaped with its \fBasync\fR control
+character map. The characters to be escaped are specified as a list of hex
+numbers separated by commas. Note that almost any character can be specified
+for the \fBescape\fR option, unlike the \fBasyncmap\fR option which allows only
+control characters to be specified. Characters that cannot be escaped are those
+containing hex values 0x20 through 0x3f and 0x5e.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfile\fR \fB\fIname\fR\fR \fR
+.ad
+.RS 23n
+Read options from file \fIname\fR. If this option is used on the command line
+or in \fB$HOME/.ppprc\fR, the file must be readable by the user invoking
+\fBpppd\fR. See for a list of files that \fBpppd\fR always reads, regardless
+of the use of this option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBinit\fR \fB \fIscript\fR \fR \fR
+.ad
+.RS 23n
+Run the executable or shell command specified by \fIscript\fR to initialize the
+serial line. This script would typically use the \fBchat\fR(8) program to
+configure the modem to enable auto-answer. A value for this option from a
+privileged source cannot be overridden by a non-privileged user.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBlock\fR \fR
+.ad
+.RS 23n
+Directs \fBpppd\fR to create a UUCP-style lock file for the serial device to
+ensure exclusive access to the device.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmru\fR \fB\fIn\fR\fR \fR
+.ad
+.RS 23n
+Set the Maximum Receive Unit (MRU) value to \fIn\fR. \fBpppd\fR asks the peer
+to send packets of no more than \fIn\fR bytes. Minimum MRU value is 128.
+Default MRU value is 1500. A value of 296 is recommended for slow links (40
+bytes for TCP/IP header + 256 bytes of data). For IPv6, MRU must be at least
+1280.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmtu\fR \fB\fIn\fR\fR \fR
+.ad
+.RS 23n
+Set the Maximum Transmit Unit (MTU) value to \fIn\fR. Unless the peer requests
+a smaller value via MRU negotiation, \fBpppd\fR requests the kernel networking
+code to send data packets of no more than \fIn\fR bytes through the PPP network
+interface. For IPv6, MTU must be at least 1280.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpassive\fR \fR
+.ad
+.RS 23n
+Enables the "passive" option in the LCP. With this option, \fBpppd\fR attempts
+to initiate a connection; if no reply is received from the peer, \fBpppd\fR
+waits passively for a valid LCP packet instead of exiting, as it would without
+this option.
+.RE
+
+.SS "Options"
+.ne 2
+.na
+\fB\fB<local_IP_address>:<remote_IP_address>\fR \fR
+.ad
+.sp .6
+.RS 4n
+Set the local and/or remote interface IP addresses. Either one may be omitted,
+but the colon is required. The IP addresses are specified with a host name or
+in decimal dot notation, for example: \fB:10.1.2.3\fR. The default local
+address is the first IP address of the system unless the \fBnoipdefault\fR
+option is provided. The remote address is obtained from the peer if not
+specified in any option. Thus, in simple cases, this option is not required. If
+a local and/or remote IP address is specified with this option, \fBpppd\fR will
+not accept a different value from the peer in the IPCP negotiation unless the
+\fBipcp-accept-local\fR and/or \fBipcp-accept-remote\fR options are given,
+respectively.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBallow-fcs\fR \fB\fIfcs-type\fR\fR \fR
+.ad
+.sp .6
+.RS 4n
+Set allowable FCS type(s) for data sent to the peer. The \fIfcs-type\fR is a
+comma-separated list of "crc16", "crc32", "null", or integers. By default, all
+known types are allowed. If this option is specified and the peer requests a
+type not listed, a LCP Configure-Nak is sent to request only the listed types.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBallow-ip\fR \fB\fIaddress(es)\fR\fR \fR
+.ad
+.sp .6
+.RS 4n
+Allow peers to use the given IP address or subnet without authenticating
+themselves. The parameter is parsed in the same manner as each element of the
+list of allowed IP addresses is parsed in the secrets files. See the section
+more more details.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBbsdcomp\fR \fB\fInr,nt\fR\fR \fR
+.ad
+.sp .6
+.RS 4n
+Request that the peer compress packets that it sends using the BSD-Compress
+scheme, with a maximum code size of \fInr\fR bits, and agree to compress
+packets sent to the peer with a maximum code size of \fInt\fR bits. If \fInt\fR
+is not specified, it defaults to the value given for \fInr\fR. Values in the
+range 9 to 15 may be used for \fInr\fR and \fInt\fR; larger values provide
+better compression but consume more kernel memory for compression dictionaries.
+Alternatively, a value of 0 for \fInr\fR or \fInt\fR disables compression in
+the corresponding direction. Use \fBnobsdcomp\fR or \fBbsdcomp 0\fR to disable
+BSD-Compress compression entirely. If this option is read from a privileged
+source, a nonprivileged user may not specify a code size larger than the value
+from the privileged source.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcdtrcts\fR \fR
+.ad
+.sp .6
+.RS 4n
+Use a non-standard hardware flow control such as DTR/CTS to control the flow of
+data on the serial port. If the \fBcrtscts\fR, \fBnocrtscts\fR, \fBcdtrcts\fR
+or \fBnocdtrcts\fR option is not specified, the hardware flow control setting
+for the serial port is left unchanged. Some serial ports lack a true RTS
+output. Such serial ports use this mode to implement true bi-directional flow
+control. Note that this flow control mode does not permit using DTR as a modem
+control line.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBchap-interval\fR \fB\fIn\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+If this option is given, \fBpppd\fR will rechallenge the peer every \fIn\fR
+seconds.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBchap-max-challenge\fR \fB\fIn\fR\fR \fR
+.ad
+.sp .6
+.RS 4n
+Set the maximum number of CHAP challenge transmissions to \fIn\fR (default 10).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBchap-restart\fR \fB\fIn\fR\fR \fR
+.ad
+.sp .6
+.RS 4n
+Set the CHAP restart interval (retransmission timeout for challenges) to
+\fIn\fR seconds. The default is 3.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBconnect-delay\fR \fB\fIn\fR\fR \fR
+.ad
+.sp .6
+.RS 4n
+Wait for up to \fIn\fR milliseconds after the connect script finishes for a
+valid PPP packet from the peer. When the wait period elapses or when a valid
+PPP packet is received from the peer, \fBpppd\fR begins negotiation by sending
+its first LCP packet. The default value is 1000 (1 second). A wait period
+applies only if the \fBconnect\fR or \fBpty\fR option is used.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdatarate\fR \fB\fIn\fR\fR \fR
+.ad
+.sp .6
+.RS 4n
+Set maximum data rate to \fIn\fR (in bytes per second) when using the
+\fBpty\fR, \fBnotty\fR, \fBrecord\fR, or \fBsocket\fR options.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdebug\fR \fR
+.ad
+.sp .6
+.RS 4n
+Enables connection debugging facilities. If this option is given, \fBpppd\fR
+logs the contents of all control packets sent or received in a readable form.
+The packets are logged through syslog with facility \fBdaemon\fR and level
+\fBdebug\fR. This information can be directed to a file by configuring
+\fB/etc/syslog.conf\fR appropriately.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdefault-asyncmap\fR \fR
+.ad
+.sp .6
+.RS 4n
+Disable \fBasyncmap\fR negotiation, forcing all control characters to be
+escaped for both the transmit and the receive direction.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdefault-fcs\fR \fR
+.ad
+.sp .6
+.RS 4n
+Disable FCS Alternatives negotiation entirely. By default, no FCS Alternatives
+option is sent to the peer, but the option is accepted. If this option is
+specified by the peer, then LCP Configure-Reject is sent.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdefault-mru\fR \fR
+.ad
+.sp .6
+.RS 4n
+Disable MRU [Maximum Receive Unit] negotiation. With this option, \fBpppd\fR
+uses the default MRU value of 1500 bytes for the transmit and receive
+directions.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdeflate\fR \fB\fInr,nt,e\fR\fR \fR
+.ad
+.sp .6
+.RS 4n
+Request that the peer compress packets that it sends, using the \fBdeflate\fR
+scheme, with a maximum window size of \fI2**nr\fR bytes, and agree to compress
+packets sent to the peer with a maximum window size of \fI2**nt\fR bytes and
+effort level of \fIe\fR (1 to 9). If \fInt\fR is not specified, it defaults to
+the value given for \fInr\fR. If \fIe\fR is not specified, it defaults to 6.
+Values in the range 9 to 15 may be used for \fInr\fR and \fInt\fR; larger
+values provide better compression but consume more kernel memory for
+compression dictionaries. (Value 8 is not permitted due to a zlib bug.)
+Alternatively, a value of 0 for \fInr\fR or \fInt\fR disables compression in
+the corresponding direction. Use \fBnodeflate\fR or \fBdeflate 0\fR to disable
+\fBdeflate\fR compression entirely. (Note: \fBpppd\fR requests deflate
+compression in preference to BSD-Compress if the peer can do either.) If this
+option is read from a privileged source, a nonprivileged user may not specify a
+code size larger than the value from the privileged source.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdemand\fR \fR
+.ad
+.sp .6
+.RS 4n
+Initiate the link only on demand, that is, when data traffic is present. With
+this option, the remote IP address must be specified by the user on the command
+line or in an options file. \fBpppd\fR initially configures and enables the
+interface for IP traffic without connecting to the peer. When traffic is
+available, \fBpppd\fR connects to the peer and performs negotiation,
+authentication and other actions. When completed, \fBpppd\fR passes data
+packets across the link. The \fBdemand\fR option implies the \fBpersist\fR
+option. If this behavior is not desired, use the \fBnopersist\fR option after
+the \fBdemand\fR option. The \fBidle\fR and \fBholdoff\fR options can be used
+in conjunction with the \fBdemand\fR option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdomain\fR \fB\fId\fR\fR \fR
+.ad
+.sp .6
+.RS 4n
+Append the domain name \fId\fR to the local host name for authentication
+purposes. For example, if \fBgethostname()\fR returns the name \fBporsche\fR,
+but the fully qualified domain name is \fBporsche.Example.COM\fR, you could
+specify \fBdomain Example.COM\fR. With this configuration, \fBpppd\fR uses the
+name \fBporsche.Example.COM\fR for accessing secrets in the secrets file and as
+the default name when authenticating to the peer. This option is privileged.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBendpoint\fR \fB\fIendpoint-value\fR\fR \fR
+.ad
+.sp .6
+.RS 4n
+Set the endpoint discriminator (normally used for RFC 1990 Multilink PPP
+operation). The \fIendpoint-value\fR consists of a class identifier and a
+class-dependent value. The class identifier is one of "null," "local," "IP,"
+"MAC," "magic," "phone," or a decimal integer. If present, the class-dependent
+value is separated from the identifier by a colon (":") or period (".") . This
+value may be a standard dotted-decimal IP address for class "IP," an optionally
+colon-or-dot separated hex Ethernet address for class "MAC" (must have 6
+numbers), or an arbitrary string of bytes specified in hex with optional colon
+or dot separators between bytes. Although this option is available, this
+implementation does not support multilink.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfcs\fR \fB\fIfcs-type\fR\fR \fR
+.ad
+.sp .6
+.RS 4n
+Set FCS type(s) desired for data sent by the peer. The \fIfcs-type\fR is a
+comma-separated list of \fBcrc16\fR, \fBcrc32\fR, \fBnull\fR, or integers. By
+default, an FCS Alternatives option is not specified, and the medium-dependent
+FCS type is used. If this option is specified and the peer sends an LCP
+Configure-Nak, only the listed types are used. If none are in common, the FCS
+Alternatives option is omitted from the next LCP Configure-Request to drop back
+to the default.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBhide-password\fR \fR
+.ad
+.sp .6
+.RS 4n
+When logging the contents of PAP packets, this option causes \fBpppd\fR to
+exclude the password string from the log. This is the default.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBholdoff\fR \fB\fIn\fR\fR \fR
+.ad
+.sp .6
+.RS 4n
+Specifies how many seconds to wait before re-initiating the link after it
+terminates. This option is effective only if the \fBpersist\fR or \fBdemand\fR
+option is used. The holdoff period is not applied if the link is terminated
+because it was idle.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBident\fR \fB\fIstring\fR\fR \fR
+.ad
+.sp .6
+.RS 4n
+Set the LCP Identification string. The default value is a version string
+similar to that displayed by the \fB--version\fR option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBidle\fR \fB\fIn\fR\fR \fR
+.ad
+.sp .6
+.RS 4n
+Specifies that \fBpppd\fR must disconnect if the link is idle for \fIn\fR
+seconds. The link is idle when no data packets (i.e. IP packets) are being sent
+or received. Do not use this option with the \fBpersist\fR option but without
+the \fBdemand\fR option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBipcp-accept-local\fR \fR
+.ad
+.sp .6
+.RS 4n
+With this option, \fBpppd\fR accepts the peer's idea of the local IP address,
+even if the local IP address is specified in an option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBipcp-accept-remote\fR \fR
+.ad
+.sp .6
+.RS 4n
+With this option, \fBpppd\fR accepts the peer's idea of its remote IP address,
+even if the remote IP address is specified in an option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBipcp-max-configure\fR \fB\fIn\fR\fR \fR
+.ad
+.sp .6
+.RS 4n
+Set the maximum number of IPCP Configure-Request transmissions to \fIn\fR
+(default 10).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBipcp-max-failure\fR \fB\fIn\fR\fR \fR
+.ad
+.sp .6
+.RS 4n
+Set the maximum number of IPCP Configure-NAKs sent before sending
+Configure-Rejects instead to \fIn\fR (default 10).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBipcp-max-terminate\fR \fB\fIn\fR\fR \fR
+.ad
+.sp .6
+.RS 4n
+Set the maximum number of IPCP terminate-request transmissions to \fIn\fR
+(default 3).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBipcp-restart\fR \fB\fIn\fR\fR \fR
+.ad
+.sp .6
+.RS 4n
+Set the IPCP restart interval (retransmission timeout) to \fIn\fR seconds
+(default 3).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBipparam\fR \fB\fIstring\fR\fR \fR
+.ad
+.sp .6
+.RS 4n
+Provides an extra parameter to the ip-up and ip-down scripts. When this option
+is given, the \fIstring\fR supplied is given as the sixth parameter to those
+scripts. See the section.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBipv6\fR
+\fB\fI<local_interface_identifier>\fR,\fI<remote_interface_identifier>\fR\fR
+\fR
+.ad
+.sp .6
+.RS 4n
+Set the local and/or remote 64-bit interface identifier. Either one may be
+omitted. The identifier must be specified in standard ASCII notation of IPv6
+addresses (for example: \fB::dead:beef\fR). If the \fBipv6cp-use-ipaddr\fR
+option is given, the local and remote identifiers are derived from the
+respective IPv4 addresses (see above). The \fBipv6cp-use-persistent\fR option
+can be used instead of the \fBipv6 <local>,<remote>\fR option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBipv6cp-accept-local\fR \fR
+.ad
+.sp .6
+.RS 4n
+Accept peer's interface identifier for the local link identifier.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBipv6cp-max-configure\fR \fB\fIn\fR\fR \fR
+.ad
+.sp .6
+.RS 4n
+Set the maximum number of IPv6CP Configure-Request transmissions to \fIn\fR
+(default 10).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBipv6cp-max-failure\fR \fB\fIn\fR\fR \fR
+.ad
+.sp .6
+.RS 4n
+Set the maximum number of IPv6CP Configure-NAKs sent before sending
+Configure-Rejects instead to \fIn\fR (default 10).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBipv6cp-max-terminate\fR \fB\fIn\fR\fR \fR
+.ad
+.sp .6
+.RS 4n
+Set the maximum number of IPv6CP terminate-request transmissions to \fIn\fR
+(default 3).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBipv6cp-restart\fR \fB\fIn\fR\fR \fR
+.ad
+.sp .6
+.RS 4n
+Set the IPv6CP restart interval (retransmission timeout) to \fIn\fR seconds
+(default 3).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBipv6cp-use-ipaddr\fR \fR
+.ad
+.sp .6
+.RS 4n
+If either the local or remote IPv6 address is unspecified, use the
+corresponding configured IPv4 address as a default interface identifier. (This
+option uses the configured addresses, not the negotiated addresses. Do not use
+it with \fBipcp-accept-local\fR if the local IPv6 identifier is unspecified or
+with \fBipcp-accept-remote\fR if the remote IPv6 identifier is unspecified.)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBipv6cp-use-persistent\fR \fR
+.ad
+.sp .6
+.RS 4n
+Use uniquely-available persistent value for link local address.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBkdebug\fR \fB\fIn\fR\fR \fR
+.ad
+.sp .6
+.RS 4n
+Enable debugging code in the kernel-level PPP driver. Argument \fIn\fR is the
+sum of the following values: \fB1\fR to enable general debug messages, \fB2\fR
+to request that contents of received packets be printed, and \fB4\fR to request
+contents of transmitted packets be printed. Messages printed by the kernel are
+logged by \fBsyslogd\fR(8) to a file directed in the \fB/etc/syslog.conf\fR
+configuration file. Do not use the \fBkdebug\fR option to debug failed links.
+Use the \fBdebug\fR option instead.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBlcp-echo-failure\fR \fB\fIn\fR\fR \fR
+.ad
+.sp .6
+.RS 4n
+If this option is given, \fBpppd\fR presumes the peer to be dead if \fIn\fR LCP
+Echo-Requests are sent without receiving a valid LCP Echo-Reply. If this
+happens, \fBpppd\fR terminates the connection. This option requires a non-zero
+value for the \fBlcp-echo-interval\fR parameter. This option enables \fBpppd\fR
+to terminate after the physical connection is broken (for example, if the modem
+has hung up) in situations where no hardware modem control lines are available.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBlcp-echo-interval\fR \fB\fIn\fR\fR \fR
+.ad
+.sp .6
+.RS 4n
+If this option is given, \fBpppd\fR sends an LCP Echo-Request frame to the peer
+every \fIn\fR seconds. Normally the peer responds to the Echo-Request by
+sending an Echo-Reply. This option can be used with the \fBlcp-echo-failure\fR
+option to detect that the peer is no longer connected.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBlcp-max-configure\fR \fB\fIn\fR\fR \fR
+.ad
+.sp .6
+.RS 4n
+Set the maximum number of LCP Configure-Request transmissions to \fIn\fR
+(default 10).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBlcp-max-failure\fR \fB\fIn\fR\fR \fR
+.ad
+.sp .6
+.RS 4n
+Set the maximum number of LCP Configure-NAKs sent before starting to send
+Configure-Rejects instead to \fIn\fR (default 10).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBlcp-max-terminate\fR \fB\fIn\fR\fR \fR
+.ad
+.sp .6
+.RS 4n
+Set the maximum number of LCP Terminate-Request transmissions to \fIn\fR
+(default 3).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBlcp-restart\fR \fB\fIn\fR\fR \fR
+.ad
+.sp .6
+.RS 4n
+Set the LCP restart interval (retransmission timeout) to \fIn\fR seconds
+(default 3).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBlinkname\fR \fB\fIname\fR\fR \fR
+.ad
+.sp .6
+.RS 4n
+Sets the logical name of the link to \fIname\fR. \fBpppd\fR creates a file
+named \fBppp-\fR\fIname\fR\fB\&.pid\fR in \fB/var/run\fR containing its process
+ID. This is useful in determining which instance of \fBpppd\fR is responsible
+for the link to a given peer system. This is a privileged option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBlocal\fR \fR
+.ad
+.sp .6
+.RS 4n
+Do not use modem control lines. With this option, \fBpppd\fR ignores the state
+of the CD (Carrier Detect) signal from the modem and does not change the state
+of the DTR (Data Terminal Ready) signal.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBlogfd\fR \fB\fIn\fR\fR \fR
+.ad
+.sp .6
+.RS 4n
+Send log messages to file descriptor \fIn\fR. \fBpppd\fR sends log messages to
+(at most) one file or file descriptor (as well as sending the log messages to
+syslog), so this option and the \fBlogfile\fR option are mutually exclusive. By
+default \fBpppd\fR sends log messages to \fBstdout\fR (file descriptor 1)
+unless the serial port is open on stdout.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBlogfile\fR \fB\fIfilename\fR\fR \fR
+.ad
+.sp .6
+.RS 4n
+Append log messages to the file \fIfilename\fR (and send the log messages to
+syslog). The file is opened in append mode with the privileges of the user who
+invoked \fBpppd\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBlogin\fR \fR
+.ad
+.sp .6
+.RS 4n
+Use the system password database for authenticating the peer using PAP, and
+record the user in the system \fBwtmp\fR file. Note that the peer must have an
+entry in the \fB/etc/ppp/pap-secrets\fR file and the system password database
+to be allowed access.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmaxconnect\fR \fB\fIn\fR\fR \fR
+.ad
+.sp .6
+.RS 4n
+Terminate the connection after it has been available for network traffic for
+\fIn\fR seconds (that is, \fIn\fR seconds after the first network control
+protocol starts). An LCP Time-Remaining message is sent when the first NCP
+starts, and again when 5, 2, and 0.5 minutes are remaining.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmaxfail\fR \fB\fIn\fR\fR \fR
+.ad
+.sp .6
+.RS 4n
+Terminate after \fIn\fR consecutive failed connection attempts. A value of 0
+means no limit. The default value is 10.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmodem\fR \fR
+.ad
+.sp .6
+.RS 4n
+Use the modem control lines. This option is the default. With this option,
+\fBpppd\fR waits for the CD (Carrier Detect) signal from the modem to be
+asserted when opening the serial device (unless a connect script is specified),
+and drops the DTR (Data Terminal Ready) signal briefly when the connection is
+terminated and before executing the connect script.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBms-dns\fR \fB\fI<addr>\fR\fR \fR
+.ad
+.sp .6
+.RS 4n
+If \fBpppd\fR is acting as a server for Microsoft Windows clients, this option
+allows \fBpppd\fR to supply one or two DNS (Domain Name Server) addresses to
+the clients. The first instance of this option specifies the primary DNS
+address; the second instance (if given) specifies the secondary DNS address. If
+the first instance specifies a name that resolves to multiple IP addresses,
+then the first two addresses are used. (This option is present in some older
+versions of \fBpppd\fR under the name \fBdns-addr\fR.)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBms-lanman\fR \fR
+.ad
+.sp .6
+.RS 4n
+If \fBpppd\fR connects as a client to a Microsoft server and uses MS-CHAPv1 for
+authentication, this option selects the LAN Manager password style instead of
+Microsoft NT.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBms-wins\fR \fB\fI<addr>\fR\fR \fR
+.ad
+.sp .6
+.RS 4n
+If \fBpppd\fR acts as a server for Microsoft Windows or Samba clients, this
+option allows \fBpppd\fR to supply one or two WINS (Windows Internet Name
+Services) server addresses to the clients. The first instance of this option
+specifies the primary WINS address; the second instance (if given) specifies
+the secondary WINS address. As with \fBms-dns\fR, if the name specified
+resolves to multiple IP addresses, then the first two will be taken as primary
+and secondary.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBname\fR \fB\fIname\fR\fR \fR
+.ad
+.sp .6
+.RS 4n
+Set the name of the local system for authentication purposes to \fIname\fR.
+This is a privileged option. With this option, \fBpppd\fR uses lines in the
+secrets files that have \fIname\fR as the second field to look for a secret to
+use in authenticating the peer. In addition, unless overridden with the
+\fBuser\fR option, \fIname\fR is used as the name to send to the peer when
+authenticating the local system. (Note that \fBpppd\fR does not append the
+domain name to \fIname\fR.)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBno-accm-test\fR \fR
+.ad
+.sp .6
+.RS 4n
+Disable use of \fBasyncmap\fR (ACCM) checking using LCP Echo-Request messages.
+If the \fBlcp-echo-failure\fR is used on an asynchronous line, \fBpppd\fR
+includes all control characters in the first \fIn\fR LCP Echo-Request messages.
+If the \fBasyncmap\fR is set incorrectly, the link drops rather than continue
+operation with random failures. This option disables that feature.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnoaccomp\fR \fR
+.ad
+.sp .6
+.RS 4n
+Disable HDLC Address/Control compression in both directions (send and receive).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnoauth\fR \fR
+.ad
+.sp .6
+.RS 4n
+Do not require the peer to authenticate itself. This option is privileged.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnobsdcomp\fR \fR
+.ad
+.sp .6
+.RS 4n
+Disables BSD-Compress compression; \fBpppd\fR will not request or agree to
+compress packets using the BSD-Compress scheme. This option is not necessary if
+\fBnoccp\fR is specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnoccp\fR \fR
+.ad
+.sp .6
+.RS 4n
+Disable CCP (Compression Control Protocol) negotiation. This option should only
+be required if the peer has bugs or becomes confused by requests from
+\fBpppd\fR for CCP negotiation. If CCP is disabled, then BSD and deflate
+compression do not need to be separately disabled.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnocrtscts\fR \fR
+.ad
+.sp .6
+.RS 4n
+Disable hardware flow control (i.e. RTS/CTS) on the serial port. If the
+\fBcrtscts\fR, \fBnocrtscts\fR, \fBcdtrcts\fR or \fBnocdtrcts\fR options are
+not given, the hardware flow control setting for the serial port is left
+unchanged.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnocdtrcts\fR \fR
+.ad
+.sp .6
+.RS 4n
+This option is a synonym for \fBnocrtscts\fR. Either option will disable both
+forms of hardware flow control.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnodefaultroute\fR \fR
+.ad
+.sp .6
+.RS 4n
+Disable the \fBdefaultroute\fR option. You can prevent non-root users from
+creating default routes with \fBpppd\fR by placing this option in the
+\fB/etc/ppp/options\fR file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnodeflate\fR \fR
+.ad
+.sp .6
+.RS 4n
+Disables deflate compression; \fBpppd\fR will not request or agree to compress
+packets using the deflate scheme. This option is not necessary if \fBnoccp\fR
+is specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnodeflatedraft\fR \fR
+.ad
+.sp .6
+.RS 4n
+Do not use Internet Draft (incorrectly assigned) algorithm number for deflate
+compression. This option is not necessary if \fBnoccp\fR is specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnodetach\fR \fR
+.ad
+.sp .6
+.RS 4n
+Do not detach from the controlling terminal. Without this option, \fBpppd\fR
+forks to become a background process if a serial device other than the terminal
+on the standard input is specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnoendpoint\fR \fR
+.ad
+.sp .6
+.RS 4n
+Do not send or accept the Multilink Endpoint Discriminator option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnoident\fR \fR
+.ad
+.sp .6
+.RS 4n
+Disable use of LCP Identification. LCP Identification messages will not be sent
+to the peer, but received messages will be logged. (Specify this option twice
+to completely disable LCP Identification. In this case, \fBpppd\fR sends LCP
+Code-Reject in response to received LCP Identification messages.)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnoip\fR \fR
+.ad
+.sp .6
+.RS 4n
+Disable IPCP negotiation and IP communication. Use this option only if the peer
+has bugs or becomes confused by requests from \fBpppd\fR for IPCP negotiation.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnoipv6\fR \fR
+.ad
+.sp .6
+.RS 4n
+Disable IPv6CP negotiation and IPv6 communication. IPv6 is not enabled by
+default.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnoipdefault\fR \fR
+.ad
+.sp .6
+.RS 4n
+Disables the default behavior when no local IP address is specified, which is
+to determine (if possible) the local IP address from the hostname. With this
+option, the peer must supply the local IP address during IPCP negotiation
+(unless it specified explicitly on the command line or in an options file).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnolog\fR \fR
+.ad
+.sp .6
+.RS 4n
+Do not send log messages to a file or file descriptor. This option cancels the
+\fBlogfd\fR and \fBlogfile\fR options. \fBnologfd\fR acts as an alias for this
+option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnomagic\fR \fR
+.ad
+.sp .6
+.RS 4n
+Disable magic number negotiation. With this option, \fBpppd\fR cannot detect a
+looped-back line. Use this option only if the peer has bugs. Do not use this
+option to work around the "Serial line is looped back" error message.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnopam\fR \fR
+.ad
+.sp .6
+.RS 4n
+This privileged option disables use of pluggable authentication modules. If
+this option is specified, \fBpppd\fR reverts to standard authentication
+mechanisms. The default is not to use PAM.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnopcomp\fR \fR
+.ad
+.sp .6
+.RS 4n
+Disable protocol field compression negotiation in the receive and the transmit
+direction.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnopersist\fR \fR
+.ad
+.sp .6
+.RS 4n
+Exit once a connection has been made and terminated. This is the default unless
+the \fBpersist\fR or \fBdemand\fR option is specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnoplink\fR \fR
+.ad
+.sp .6
+.RS 4n
+Cause \fBpppd\fR to use I_LINK instead of I_PLINK. This is the default. When
+I_LINK is used, the system cleans up terminated interfaces (even when SIGKILL
+is used) but does not allow \fBifconfig\fR(8) to unplumb PPP streams or insert
+or remove modules dynamically. Use the \fBplink\fR option if \fBifconfig\fR(8)
+modinsert, modremove or unplumb support is needed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnopredictor1\fR \fR
+.ad
+.sp .6
+.RS 4n
+Do not accept or agree to Predictor-1 compression. (This option is accepted for
+compatibility. The implementation does not support Predictor-1 compression.)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnoproxyarp\fR \fR
+.ad
+.sp .6
+.RS 4n
+Disable the \fBproxyarp\fR option. If you want to prevent users from creating
+proxy ARP entries with \fBpppd\fR, place this option in the
+\fB/etc/ppp/options\fR file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnotty\fR \fR
+.ad
+.sp .6
+.RS 4n
+Normally, \fBpppd\fR requires a terminal device. With this option, \fBpppd\fR
+allocates itself a pseudo-terminal pair and uses the subsidiary as its
+terminal device. \fBpppd\fR creates a child process to act as a character shunt
+to transfer characters between the pseudo-terminal manager and its standard
+input and output. Thus, \fBpppd\fR transmits characters on its standard output
+and receives characters on its standard input even if they are not terminal
+devices. This option increases the latency and CPU overhead of transferring
+data over the ppp interface as all of the characters sent and received must
+flow through the character shunt process. An explicit device name may not be
+given if this option is used.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnovj\fR \fR
+.ad
+.sp .6
+.RS 4n
+Disable Van Jacobson style TCP/IP header compression in both the transmit and
+the receive direction.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnovjccomp\fR \fR
+.ad
+.sp .6
+.RS 4n
+Disable the connection-ID compression option in Van Jacobson style TCP/IP
+header compression. With this option, \fBpppd\fR does not omit the
+connection-ID byte from Van Jacobson compressed TCP/IP headers, nor does it ask
+the peer to do so. This option is unnecessary if \fBnovj\fR is specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpam\fR \fR
+.ad
+.sp .6
+.RS 4n
+This privileged option enables use of PAM. If this is specified, \fBpppd\fR
+uses the \fBpam\fR(3PAM) framework for user authentication with a service name
+of "ppp" if the \fBlogin\fR option and PAP authentication are used. The default
+is not to use PAM.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpapcrypt\fR \fR
+.ad
+.sp .6
+.RS 4n
+Indicates that \fBpppd\fR should not accept a password which, before
+encryption, is identical to the secret from the \fB/etc/ppp/pap-secrets\fR
+file. Use this option if the secrets in the \fBpap-secrets\fR file are in
+\fBcrypt\fR(3C) format.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpap-max-authreq\fR \fB\fIn\fR\fR \fR
+.ad
+.sp .6
+.RS 4n
+Set the maximum number of PAP authenticate-request transmissions to \fIn\fR
+(default 10).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpap-restart\fR \fB\fIn\fR\fR \fR
+.ad
+.sp .6
+.RS 4n
+Set the PAP restart interval (retransmission timeout) to \fIn\fR seconds
+(default 3).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpap-timeout\fR \fB\fIn\fR\fR \fR
+.ad
+.sp .6
+.RS 4n
+Set the maximum time that \fBpppd\fR waits for the peer to authenticate itself
+with PAP to \fIn\fR seconds (0= no limit). The default is 30 seconds.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpassword\fR \fB\fIstring\fR\fR \fR
+.ad
+.sp .6
+.RS 4n
+Password string for authentication to the peer.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpersist\fR \fR
+.ad
+.sp .6
+.RS 4n
+Do not exit after a connection is terminated; instead try to reopen the
+connection.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBplink\fR \fR
+.ad
+.sp .6
+.RS 4n
+Cause \fBpppd\fR to use I_PLINK instead of I_LINK. The default is to use
+I_LINK, which cleans up terminated interface (even if SIGKILL is used), but
+does not allow \fBifconfig\fR(8) to unplumb PPP streams or insert or remove
+modules dynamically. Use this option if \fBifconfig\fR(8)
+modinsert/modremove/unplumb support is needed. See also the \fBplumbed\fR
+option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBplugin\fR \fB\fIfilename\fR\fR \fR
+.ad
+.sp .6
+.RS 4n
+Load the shared library object file \fIfilename\fR as a plugin. This is a
+privileged option. Unless the filename specifies an explicit path,
+\fB/etc/ppp/plugins\fR and \fB/usr/lib/inet/ppp\fR will be searched for the
+object to load in that order.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBplumbed\fR \fR
+.ad
+.sp .6
+.RS 4n
+This option indicates that \fBpppd\fR should find a plumbed interface and use
+that for the session. If IPv4 addresses or IPv6 interface IDs or link MTU are
+otherwise unspecified, they are copied from the interface selected. This mode
+mimics some of the functionality of the older \fBaspppd\fR implementation and
+may be helpful when \fBpppd\fR is used with external applications that use
+\fBifconfig\fR(8).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpppmux\fR \fB\fItimer\fR\fR \fR
+.ad
+.sp .6
+.RS 4n
+Enable PPP Multiplexing option negotiation and set transmit multiplexing
+timeout to \fItimer\fR microseconds.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBprivgroup\fR \fB\fIgroup-name\fR\fR \fR
+.ad
+.sp .6
+.RS 4n
+Allows members of group \fIgroup-name\fR to use privileged options. This is a
+privileged option. Because there is no guarantee that members of
+\fIgroup-name\fR cannot use \fBpppd\fR to become root themselves, you should be
+careful using this option. Consider it equivalent to putting the members of
+\fIgroup-name\fR in the \fBroot\fR or \fBsys\fR group.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBproxyarp\fR \fR
+.ad
+.sp .6
+.RS 4n
+Add an entry to the system's Address Resolution Protocol (ARP) table with the
+IP address of the peer and the Ethernet address of this system. When you use
+this option, the peer appears to other systems to be on the local Ethernet. The
+remote address on the PPP link must be in the same subnet as assigned to an
+Ethernet interface.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpty\fR \fB \fIscript\fR\fR \fR
+.ad
+.sp .6
+.RS 4n
+Specifies that the command \fIscript\fR, and not a specific terminal device is
+used for serial communication. \fBpppd\fR allocates itself a pseudo-terminal
+pair and uses the subsidiary as its terminal device. \fIscript\fR runs
+in a child process with the pseudo-terminal manager as its standard input and
+output. An explicit device name may not be given if this option is used.
+(Note: if the \fBrecord\fR option is used in conjunction with the \fBpty\fR
+option, the child process will have pipes on its standard input and output.)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBreceive-all\fR \fR
+.ad
+.sp .6
+.RS 4n
+With this option, \fBpppd\fR accepts all control characters from the peer,
+including those marked in the receive \fBasyncmap\fR. Without this option,
+\fBpppd\fR discards those characters as specified in \fIRFC 1662\fR. This
+option should be used only if the peer has bugs, as is often found with
+dial-back implementations.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrecord\fR \fB\fIfilename\fR\fR \fR
+.ad
+.sp .6
+.RS 4n
+Directs \fBpppd\fR to record all characters sent and received to a file named
+\fIfilename\fR. \fIfilename\fR is opened in append mode, using the user's
+user-ID and permissions. Because this option uses a pseudo-terminal and a
+process to transfer characters between the pseudo-terminal and the real serial
+device, it increases the latency and CPU overhead of transferring data over the
+PPP interface. Characters are stored in a tagged format with timestamps that
+can be displayed in readable form using the \fBpppdump\fR(8) program. This
+option is generally used when debugging the kernel portion of \fBpppd\fR
+(especially CCP compression algorithms) and not for debugging link
+configuration problems. See the \fBdebug\fR option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBremotename\fR \fB\fIname\fR\fR \fR
+.ad
+.sp .6
+.RS 4n
+Set the assumed name of the remote system for authentication purposes to
+\fIname\fR. Microsoft WindowsNT does not provide a system name in its CHAP
+Challenge messages, and this option is often used to work around this problem.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrefuse-chap\fR \fR
+.ad
+.sp .6
+.RS 4n
+With this option, \fBpppd\fR will not agree to authenticate itself to the peer
+using standard Challenge Handshake Authentication Protocol (CHAP). (MS-CHAP is
+not affected.)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrefuse-mschap\fR \fR
+.ad
+.sp .6
+.RS 4n
+Do not agree to authenticate to peer with MS-CHAPv1. If this option is
+specified, requests for MS-CHAPv1 authentication from the peer are declined
+with LCP Configure-Nak. That option does not disable any other form of CHAP.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrefuse-mschapv2\fR \fR
+.ad
+.sp .6
+.RS 4n
+Do not agree to authenticate to peer with MS-CHAPv2. If specified, this option
+requests that MS-CHAPv2 authentication from the peer be declined with LCP
+Configure-Nak. That option does not disable any other form of CHAP.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrefuse-pap\fR \fR
+.ad
+.sp .6
+.RS 4n
+With this option, \fBpppd\fR will not agree to authenticate itself to the peer
+using Password Authentication Protocol (PAP).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrequire-chap\fR \fR
+.ad
+.sp .6
+.RS 4n
+Require the peer to authenticate itself using standard CHAP authentication.
+MS-CHAP is not affected.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrequire-mschap\fR \fR
+.ad
+.sp .6
+.RS 4n
+Require the peer to authenticate itself using MS-CHAPv1 authentication.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrequire-mschapv2\fR \fR
+.ad
+.sp .6
+.RS 4n
+Require the peer to authenticate itself using MS-CHAPv2 authentication.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrequire-pap\fR \fR
+.ad
+.sp .6
+.RS 4n
+Require the peer to authenticate itself using PAP authentication.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBshow-password\fR \fR
+.ad
+.sp .6
+.RS 4n
+When logging contents of PAP packets, this option causes \fBpppd\fR to show the
+password string in the log message.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsilent\fR \fR
+.ad
+.sp .6
+.RS 4n
+With this option, \fBpppd\fR will not transmit LCP packets to initiate a
+connection until a valid LCP packet is received from the peer. This is like the
+"passive" option with older versions of \fBpppd\fR and is retained for
+compatibility, but the current \fBpassive\fR option is preferred.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsmall-accm-test\fR \fR
+.ad
+.sp .6
+.RS 4n
+When checking the \fBasyncmap\fR (ACCM) setting, \fBpppd\fR uses all 256
+possible values by default. See \fBno-accm-test\fR. This option restricts the
+test so that only the 32 values affected by standard ACCM negotiation are
+tested. This option is useful on very slow links.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsocket\fR \fB\fIhost\fR:\fIport\fR\fR \fR
+.ad
+.sp .6
+.RS 4n
+Connect to given host and port using TCP and run PPP over this connection.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsync\fR \fR
+.ad
+.sp .6
+.RS 4n
+Use synchronous HDLC serial encoding instead of asynchronous. The device used
+by \fBpppd\fR with this option must have sync support. Currently supports
+\fBzs\fR, \fBse\fR, and \fBhsi\fR drivers.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBunit\fR \fB\fIn\fR\fR \fR
+.ad
+.sp .6
+.RS 4n
+Set PPP interface unit number to \fIn\fR, if possible.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBupdetach\fR \fR
+.ad
+.sp .6
+.RS 4n
+With this option, \fBpppd\fR detaches from its controlling terminal after
+establishing the PPP connection. When this is specified, messages sent to
+\fBstderr\fR by the connect script, usually \fBchat\fR(8), and debugging
+messages from the debug option are directed to \fBpppd\fR's standard output.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBusehostname\fR \fR
+.ad
+.sp .6
+.RS 4n
+Enforce the use of the hostname with domain name appended, if given, as the
+name of the local system for authentication purposes. This overrides the
+\fBname\fR option. Because the \fBname\fR option is privileged, this option is
+normally not needed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBusepeerdns\fR \fR
+.ad
+.sp .6
+.RS 4n
+Ask the peer for up to two DNS server addresses. Addresses supplied by the
+peer, if any, are passed to the \fB/etc/ppp/ip-up\fR script in the environment
+variables DNS1 and DNS2. In addition, \fBpppd\fR creates an
+\fB/etc/ppp/resolv.conf\fR file containing one or two nameserver lines with the
+address(es) supplied by the peer.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBuser\fR \fB\fIname\fR\fR \fR
+.ad
+.sp .6
+.RS 4n
+Sets the name used for authenticating the local system to the peer to
+\fIname\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBvj-max-slots\fR \fB\fIn\fR\fR \fR
+.ad
+.sp .6
+.RS 4n
+Sets the number of connection slots to be used by the Van Jacobson TCP/IP
+header compression and decompression code to \fIn\fR, which must be between 2
+and 16 (inclusive).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBwelcome\fR \fB\fIscript\fR\fR \fR
+.ad
+.sp .6
+.RS 4n
+Run the executable or shell command specified by \fIscript\fR before initiating
+PPP negotiation, after the connect script, if any, has completed. A value for
+this option from a privileged source cannot be overridden by a non-privileged
+user.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBxonxoff\fR \fR
+.ad
+.sp .6
+.RS 4n
+Use software flow control, that is, XON/XOFF, to control the flow of data on
+the serial port.
+.RE
+
+.SS "Obsolete Options"
+The following options are obsolete:
+.sp
+.ne 2
+.na
+\fB\fB+ua\fR \fB\fIname\fR\fR\fR
+.ad
+.RS 14n
+Read a PAP user name and password from the file \fIname\fR. This file must have
+two lines for name and password. Name and password are sent to the peer when
+the peer requests PAP authentication.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB+ipv6\fR \fR
+.ad
+.RS 14n
+Enable IPv6 and IPv6CP without specifying interface identifiers.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB--version\fR \fR
+.ad
+.RS 14n
+Show version number and exit.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB--help\fR \fR
+.ad
+.RS 14n
+Show brief help message and exit.
+.RE
+
+.SH EXTENDED DESCRIPTION
+The following sections discuss miscellaneous features of \fBpppd\fR:
+.SS "Security"
+\fBpppd\fR allows system administrators to provide legitimate users with PPP
+access to a server machine without fear of compromising the security of the
+server or the network it runs on. Access control is provided by restricting IP
+addresses the peer may use based on its authenticated identity (if any), and
+through restrictions on options a non-privileged user may use. Options that
+permit potentially insecure configurations are privileged. Privileged options
+are accepted only in files that are under the control of the system
+administrator or when \fBpppd\fR is being run by root.
+.sp
+.LP
+By default, \fBpppd\fR allows an unauthenticated peer to use a given IP address
+only if the system does not already have a route to that IP address. For
+example, a system with a permanent connection to the wider Internet will
+normally have a default route, meaning all peers must authenticate themselves
+to set up a connection. On such a system, the \fBauth\fR option is the default.
+Conversely, a system with a PPP link that comprises the only connection to the
+Internet probably does not possess a default route, so the peer can use
+virtually any IP address without authenticating itself.
+.sp
+.LP
+Security-sensitive options are privileged and cannot be accessed by a
+non-privileged user running \fBpppd\fR, either on the command line, in the
+user's \fB$HOME/.ppprc\fR file, or in an options file read using the \fBfile\fR
+option. Privileged options may be used in \fB/etc/ppp/options\fR file or in an
+options file read using the \fBcall\fR option. If \fBpppd\fR is run by the root
+user, privileged options can be used without restriction. If the
+\fB/etc/ppp/options\fR file does not exist, then only root may invoke
+\fBpppd\fR. The \fB/etc/ppp/options\fR file must be created (but may be empty)
+to allow ordinary non-root users to access \fBpppd\fR.
+.sp
+.LP
+When opening the device, \fBpppd\fR uses the invoking user's user ID or the
+root UID (that is, 0), depending if the device name was specified by the user
+or the system administrator. If the device name comes from a privileged source,
+that is, \fB/etc/ppp/options\fR or an options file read using the \fBcall\fR
+option, \fBpppd\fR uses full root privileges when opening the device. Thus, by
+creating an appropriate file under \fB/etc/ppp/peers\fR, the system
+administrator can allow users to establish a PPP connection via a device that
+they would not normally have access to. Otherwise \fBpppd\fR uses the invoking
+user's real UID when opening the device.
+.SS "Authentication"
+During the authentication process, one peer convinces the other of its identity
+by sending its name and some secret information to the other. During
+authentication, the first peer becomes the "client" and the second becomes the
+"server." Authentication names can (but are not required to) correspond to the
+peer's Internet hostnames.
+.sp
+.LP
+\fBpppd\fR supports four authentication protocols: the Password Authentication
+Protocol (PAP) and three forms of the Challenge Handshake Authentication
+Protocol (CHAP). With the PAP protocol, the client sends its name and a
+cleartext password to the server to authenticate itself. With CHAP, the server
+initiates the authentication exchange by sending a challenge to the client who
+must respond with its name and a hash value derived from the shared secret and
+the challenge.
+.sp
+.LP
+The PPP protocol is symmetrical, meaning that each peer may be required to
+authenticate itself to the other. Different authentication protocols and names
+can be used for each exchange.
+.sp
+.LP
+By default, \fBpppd\fR authenticates if requested and does not require
+authentication from the peer. However, \fBpppd\fR does not authenticate itself
+with a specific protocol if it has no secrets that can do so.
+.sp
+.LP
+\fBpppd\fR stores authentication secrets in the \fB/etc/ppp/pap-secrets\fR (for
+PAP), and \fB/etc/ppp/chap-secrets\fR (for CHAP) files. Both files use the same
+format. \fBpppd\fR uses secrets files to authenticate itself to other systems
+and to authenticate other systems to itself.
+.sp
+.LP
+Secrets files contain one secret per line. Secrets are specific to a particular
+combination of client and server and can only be used by that client to
+authenticate itself to that server. Each line in a secrets file has a minimum
+of three fields that contain the client and server names followed by the
+secret. Often, these three fields are followed by IP addresses that are used by
+clients to connect to a server.
+.sp
+.LP
+A secrets file is parsed into words, with client name, server name and secrets
+fields allocated one word each. Embedded spaces or other special characters
+within a word must be quoted or escaped. Case is significant in all three
+fields.
+.sp
+.LP
+A secret beginning with an at sign ("@") is followed by the name of a file
+containing the secret. An asterisk (*) as the client or server name matches any
+name. When choosing a match, \fBpppd\fR selects the one with the fewest
+wildcards. Succeeding words on a line are interpreted by \fBpppd\fR as
+acceptable IP addresses for that client. IP Addresses are disallowed if they
+appear in lines that contain only three words or lines whose first word begins
+with a hyphen ("-"). To allow any address, use "*". An address starting with an
+exclamation point ("!") indicates that the specified address is not acceptable.
+An address may be followed by "/" and a number \fIn\fR to indicate a whole
+subnet (all addresses that have the same value in the most significant \fIn\fR
+bits). In this form, the address may be followed by a plus sign ("+") to
+indicate that one address from the subnet is authorized, based on the ppp
+network interface unit number in use. In this case, the host part of the
+address is set to the unit number, plus one.
+.sp
+.LP
+When authenticating the peer, \fBpppd\fR chooses a secret with the peer's name
+in the first field of the secrets file and the name of the local system in the
+second field. The local system name defaults to the hostname, with the domain
+name appended if the \fBdomain\fR option is used. The default can be overridden
+with the \fBname\fR option unless the \fBusehostname\fR option is used.
+.sp
+.LP
+When authenticating to the peer, \fBpppd\fR first determines the name it will
+use to identify itself to the peer. This name is specified with the \fBuser\fR
+option. If the \fBuser\fR option is not used, the name defaults to the host
+name of the local system. \fBpppd\fR then selects a secret from the secrets
+file by searching for an entry with a local name in the first field and the
+peer's name in the second field. \fBpppd\fR will know the name of the peer if
+standard CHAP authentication is used because the peer will have sent it in the
+Challenge packet. However, if MS-CHAP or PAP is being used, \fBpppd\fR must
+determine the peer's name from the options specified by the user. The user can
+specify the peer's name directly with the \fBremotename\fR option. Otherwise,
+if the remote IP address was specified by a name, rather than in numeric form,
+that name will be used as the peer's name. If that fails, \fBpppd\fR uses the
+null string as the peer's name.
+.sp
+.LP
+When authenticating the peer with PAP, the supplied password is compared with
+data in the secrets file. If the password and secret do not match, the password
+is encrypted using \fBcrypt()\fR and checked against the secret again. If the
+\fBpapcrypt\fR option is given, the first unencrypted comparison is omitted for
+better security, and entries must thus be in encrypted \fBcrypt\fR(3C) form.
+.sp
+.LP
+If the \fBlogin\fR option is specified, the username and password are also
+checked against the system password database. This allows you to set up the
+\fBpap-secrets\fR file to enable PPP access only to certain users, and to
+restrict the set of IP addresses available to users. Typically, when using the
+\fBlogin\fR option, the secret in \fB/etc/ppp/pap-secrets\fR would be "", which
+matches any password supplied by the peer. This makes having the same secret in
+two places unnecessary. When \fBlogin\fR is used, the \fBpam\fR option enables
+access control through \fBpam\fR(3PAM).
+.sp
+.LP
+Authentication must be completed before IPCP (or other network protocol) can be
+started. If the peer is required to authenticate itself and fails, \fBpppd\fR
+closes LCP and terminates the link. If IPCP negotiates an unacceptable IP
+address for the remote host, IPCP is closed. IP packets are sent or received
+only when IPCP is open.
+.sp
+.LP
+To allow hosts that cannot authenticate themselves to connect and use one of a
+restricted set of IP addresses, add a line to the \fBpap-secrets\fR file
+specifying the empty string for the client name and secret.
+.sp
+.LP
+Additional \fBpppd\fR options for a given peer may be specified by placing them
+at the end of the secrets entry, separated by two dashes (--). For example
+.sp
+.in +2
+.nf
+peername servername secret ip-address -- novj
+.fi
+.in -2
+
+.SS "Routing"
+When IPCP negotiation is complete, \fBpppd\fR informs the kernel of the local
+and remote IP addresses for the PPP interface and creates a host route to the
+remote end of the link that enables peers to exchange IP packets. Communication
+with other machines generally requires further modification to routing tables
+and/or Address Resolution Protocol (ARP) tables. In most cases the
+\fBdefaultroute\fR and/or \fBproxyarp\fR options are sufficient for this, but
+further intervention may be necessary. If further intervention is required, use
+the \fB/etc/ppp/ip-up\fR script or a routing protocol daemon.
+.sp
+.LP
+To add a default route through the remote host, use the \fBdefaultroute\fR
+option. This option is typically used for "client" systems; that is, end-nodes
+that use the PPP link for access to the general Internet.
+.sp
+.LP
+In some cases it is desirable to use proxy ARP, for example on a server machine
+connected to a LAN, to allow other hosts to communicate with the remote host.
+\fBproxyarp\fR instructs \fBpppd\fR to look for a network interface on the same
+subnet as the remote host. That is, an interface supporting broadcast and ARP
+that is not a point-to-point or loopback interface and that is currently up. If
+found, \fBpppd\fR creates a permanent, published ARP entry with the IP address
+of the remote host and the hardware address of the network interface.
+.sp
+.LP
+When the \fBdemand\fR option is used, the interface IP addresses are already
+set at the time when IPCP comes up. If \fBpppd\fR cannot negotiate the same
+addresses it used to configure the interface, it changes the interface IP
+addresses to the negotiated addresses. This may disrupt existing connections.
+Using demand dialing with peers that perform dynamic IP address assignment is
+not recommended.
+.SS "Scripts"
+\fBpppd\fR invokes scripts at various stages during processing that are used to
+perform site-specific ancillary processing. These scripts may be shell scripts
+or executable programs. \fBpppd\fR does not wait for the scripts to finish. The
+scripts are executed as \fBroot\fR (with the real and effective user-id set to
+0), enabling them to update routing tables, run privileged daemons, or perform
+other tasks. Be sure that the contents of these scripts do not compromise your
+system's security. \fBpppd\fR runs the scripts with standard input, output and
+error redirected to \fB/dev/null\fR, and with an environment that is empty
+except for some environment variables that give information about the link. The
+\fBpppd\fR environment variables are:
+.sp
+.ne 2
+.na
+\fB\fBDEVICE\fR \fR
+.ad
+.RS 15n
+Name of the serial tty device.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBIFNAME\fR \fR
+.ad
+.RS 15n
+Name of the network interface.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBIPLOCAL\fR \fR
+.ad
+.RS 15n
+IP address for the link's local end. This is set only when IPCP has started.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBIPREMOTE\fR \fR
+.ad
+.RS 15n
+IP address for the link's remote end. This is set only when IPCP has started.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPEERNAME\fR \fR
+.ad
+.RS 15n
+Authenticated name of the peer. This is set only if the peer authenticates
+itself.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSPEED\fR \fR
+.ad
+.RS 15n
+Baud rate of the tty device.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBORIG_UID\fR \fR
+.ad
+.RS 15n
+Real user-id of user who invoked \fBpppd\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPPPLOGNAME\fR \fR
+.ad
+.RS 15n
+Username of the real user-id who invoked \fBpppd\fR. This is always set.
+.RE
+
+.sp
+.LP
+\fBpppd\fR also sets the following variables for the ip-down and auth-down
+scripts:
+.sp
+.ne 2
+.na
+\fB\fBCONNECT_TIME\fR \fR
+.ad
+.RS 17n
+Number of seconds between the start of PPP negotiation and connection
+termination.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBBYTES_SENT\fR \fR
+.ad
+.RS 17n
+Number of bytes sent at the level of the serial port during the connection.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBBYTES_RCVD\fR \fR
+.ad
+.RS 17n
+Number of bytes received at the level of the serial port during the connection.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBLINKNAME\fR \fR
+.ad
+.RS 17n
+Logical name of the link, set with the \fBlinkname\fR option.
+.RE
+
+.sp
+.LP
+If they exist, \fBpppd\fR invokes the following scripts. It is not an error if
+they do not exist.
+.sp
+.ne 2
+.na
+\fB\fB/etc/ppp/auth-up\fR \fR
+.ad
+.RS 23n
+Program or script executed after the remote system successfully authenticates
+itself. It is executed with five command-line arguments: \fBinterface-name
+peer-name user-name tty-device speed\fR. Note that this script is not executed
+if the peer does not authenticate itself, for example, when the \fBnoauth\fR
+option is used.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/ppp/auth-down\fR \fR
+.ad
+.RS 23n
+Program or script executed when the link goes down if \fB/etc/ppp/auth-up\fR
+was previously executed. It is executed in the same manner with the same
+parameters as \fB/etc/ppp/auth-up\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/ppp/ip-up\fR \fR
+.ad
+.RS 21n
+A program or script that is executed when the link is available for sending and
+receiving IP packets (that is, IPCP has come up). It is executed with six
+command-line arguments: \fBinterface-name tty-device speed local-IP-address
+remote-IP-address ipparam\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/ppp/ip-down\fR \fR
+.ad
+.RS 21n
+A program or script which is executed when the link is no longer available for
+sending and receiving IP packets. This script can be used for undoing the
+effects of the \fB/etc/ppp/ip-up\fR script. It is invoked in the same manner
+and with the same parameters as the \fBip-up\fR script.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/ppp/ipv6-up\fR \fR
+.ad
+.RS 21n
+Similar to \fB/etc/ppp/ip-up\fR, except that it is executed when the link is
+available for sending and receiving IPv6 packets. Executed with six
+command-line arguments: \fBinterface-name tty-device speed
+local-link-local-address remote-link-local-address ipparam\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/ppp/ipv6-down\fR \fR
+.ad
+.RS 23n
+Similar to \fB/etc/ppp/ip-down\fR, but executed when IPv6 packets can no longer
+be transmitted on the link. Executed with the same parameters as the ipv6-up
+script.
+.RE
+
+.SH EXAMPLES
+\fBExample 1 \fRUsing the \fBauth\fR Option
+.sp
+.LP
+The following examples assume that the \fB/etc/ppp/options\fR file contains the
+\fBauth\fR option.
+
+.sp
+.LP
+\fBpppd\fR is commonly used to dial out to an ISP. You can do this using the
+"\fBpppd call isp\fR" command where the \fB/etc/ppp/peers/isp\fR file is set up
+to contain a line similar to the following:
+
+.sp
+.in +2
+.nf
+cua/a 19200 crtscts connect '/usr/bin/chat -f /etc/ppp/chat-isp' noauth
+.fi
+.in -2
+
+.sp
+.LP
+For this example, \fBchat\fR(8) is used to dial the ISP's modem and process
+any login sequence required. The \fB/etc/ppp/chat-isp\fR file is used by
+\fBchat\fR and could contain the following:
+
+.sp
+.in +2
+.nf
+ABORT "NO CARRIER"
+ABORT "NO DIALTONE"
+ABORT "ERROR"
+ABORT "NO ANSWER"
+ABORT "BUSY"
+ABORT "Username/Password Incorrect"
+"" "at"
+OK "at&f&d2&c1"
+OK "atdt2468135"
+"name:" "^Umyuserid"
+"word:" "\eqmypassword"
+"ispts" "\eq^Uppp"
+"~-^Uppp-~"
+.fi
+.in -2
+
+.sp
+.LP
+See the \fBchat\fR(8) man page for details of \fBchat\fR scripts.
+
+.LP
+\fBExample 2 \fRUsing \fBpppd\fR with \fBproxyarp\fR
+.sp
+.LP
+\fBpppd\fR can also provide a dial-in ppp service for users. If the users
+already have login accounts, the simplest way to set up the ppp service is to
+let the users log in to their accounts and run \fBpppd\fR as shown in the
+following example:
+
+.sp
+.in +2
+.nf
+example% \fBpppd proxyarp\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRProviding a User with Access to PPP Facilities
+.sp
+.LP
+To provide a user with access to the PPP facilities, allocate an IP address for
+the user's machine, create an entry in \fB/etc/ppp/pap-secrets\fR or
+\fB/etc/ppp/chap-secrets\fR. This enables the user's machine to authenticate
+itself. For example, to enable user "Joe" using machine "joespc" to dial in to
+machine "server" and use the IP address "joespc.example.net," add the following
+entry to the \fB/etc/ppp/pap-secrets\fR or \fB/etc/ppp/chap-secrets\fR files:
+
+.sp
+.in +2
+.nf
+\fBjoespc server "joe's secret" joespc.example.net\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Alternatively, you can create another username, for example "ppp," whose login
+shell is \fB/usr/bin/pppd\fR and whose home directory is \fB/etc/ppp\fR. If you
+run \fBpppd\fR this way, add the options to the \fB/etc/ppp/.ppprc\fR file.
+
+.sp
+.LP
+If your serial connection is complex, it may be useful to escape such control
+characters as XON (^Q) and XOFF (^S), using \fBasyncmap a0000\fR. If the path
+includes a telnet, escape ^] (\fBasyncmap 200a0000\fR). If the path includes a
+\fBrlogin\fR command, add \fBescape ff\fR option to the options, because
+\fBrlogin\fR removes the window-size-change sequence [0xff, 0xff, 0x73, 0x73,
+followed by any 8 bytes] from the stream.
+
+.SH EXIT STATUS
+The \fBpppd\fR exit status indicates errors or specifies why a link was
+terminated. Exit status values are:
+.sp
+.ne 2
+.na
+\fB\fB0\fR \fR
+.ad
+.RS 7n
+\fBpppd\fR has detached or the connection was successfully established and
+terminated at the peer's request.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB1\fR \fR
+.ad
+.RS 7n
+An immediately fatal error occurred. For example, an essential system call
+failed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB2\fR \fR
+.ad
+.RS 7n
+An error was detected in the options given. For example, two mutually exclusive
+options were used, or \fB/etc/ppp/options\fR is missing and the user is not
+root.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB3\fR \fR
+.ad
+.RS 7n
+\fBpppd\fR is not \fBsetuid-root\fR and the invoking user is not root.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB4\fR \fR
+.ad
+.RS 7n
+The kernel does not support PPP. For example, the PPP kernel driver is not
+included or cannot be loaded.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB5\fR \fR
+.ad
+.RS 7n
+\fBpppd\fR terminated because it was sent a SIGINT, SIGTERM or SIGHUP signal.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB6\fR \fR
+.ad
+.RS 7n
+The serial port could not be locked.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB7\fR \fR
+.ad
+.RS 7n
+The serial port could not be opened.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB8\fR \fR
+.ad
+.RS 7n
+The connect script failed and returned a non-zero exit status.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB9\fR \fR
+.ad
+.RS 7n
+The command specified as the argument to the \fBpty\fR option could not be run.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB10\fR \fR
+.ad
+.RS 7n
+The PPP negotiation failed because no network protocols were able to run.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB11\fR \fR
+.ad
+.RS 7n
+The peer system failed or refused to authenticate itself.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB12\fR \fR
+.ad
+.RS 7n
+The link was established successfully, but terminated because it was idle.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB13\fR \fR
+.ad
+.RS 7n
+The link was established successfully, but terminated because the connect time
+limit was reached.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB14\fR \fR
+.ad
+.RS 7n
+Callback was negotiated and an incoming call should arrive shortly.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB15\fR \fR
+.ad
+.RS 7n
+The link was terminated because the peer is not responding to echo requests.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB16\fR \fR
+.ad
+.RS 7n
+The link was terminated by the modem hanging up.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB17\fR \fR
+.ad
+.RS 7n
+The PPP negotiation failed because serial loopback was detected.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB18\fR \fR
+.ad
+.RS 7n
+The init script failed because a non-zero exit status was returned.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB19\fR \fR
+.ad
+.RS 7n
+Authentication to the peer failed.
+.RE
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/var/run/sppp\fIn\fR\fR\fB\&.pid\fR \fR
+.ad
+.RS 29n
+Process-ID for \fBpppd\fR process on PPP interface unit \fIn\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/run/ppp-\fIname\fR\fR\fB\&.pid\fR \fR
+.ad
+.RS 29n
+Process-ID for \fBpppd\fR process for logical link name (see the \fBlinkname\fR
+option).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/ppp/pap-secrets\fR \fR
+.ad
+.RS 29n
+Usernames, passwords and IP addresses for PAP authentication. This file should
+be owned by root and not readable or writable by any other user, otherwise
+\fBpppd\fR will log a warning.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/ppp/chap-secrets\fR \fR
+.ad
+.RS 29n
+Names, secrets and IP addresses for all forms of CHAP authentication. The
+\fB/etc/ppp/pap-secrets\fR file should be owned by \fBroot\fR should not
+readable or writable by any other user, otherwise, \fBpppd\fR will log a
+warning.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/ppp/options\fR \fR
+.ad
+.RS 29n
+System default options for \fBpppd\fR, read before user default options or
+command-line options.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB$HOME/.ppprc\fR \fR
+.ad
+.RS 29n
+User default options, read before \fB/etc/ppp/options.\fIttyname\fR\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/ppp/options.\fIttyname\fR\fR \fR
+.ad
+.RS 29n
+System default options for the serial port in use; read after
+\fB$HOME/.ppprc\fR. The \fIttyname\fR component of this filename is formed when
+the initial \fB/dev/\fR is stripped from the port name (if present), and
+slashes (if any) are converted to dots.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/ppp/peers\fR \fR
+.ad
+.RS 29n
+Directory with options files that may contain privileged options, even if
+\fBpppd\fR was invoked by a user other than \fBroot\fR. The system
+administrator can create options files in this directory to permit
+non-privileged users to dial out without requiring the peer to authenticate,
+but only to certain trusted peers.
+.RE
+
+.SH ATTRIBUTES
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.BR crypt (3C),
+.BR pam (3PAM),
+.BR attributes (7),
+.BR chat (8),
+.BR ifconfig (8)
+.sp
+.LP
+Haskin, D., Allen, E. \fIRFC 2472 - IP Version 6 Over PPP\fR. Network Working
+Group. December 1998.
+.sp
+.LP
+Jacobson, V. \fIRFC 1144, Compressing TCP/IP Headers for Low-Speed Serial
+Links\fR. Network Working Group. February, 1990
+.sp
+.LP
+Lloyd, B., Simpson, W. \fIRFC 1334, PPP Authentication Protocols\fR. Network
+Working Group. October 1992.
+.sp
+.LP
+McGregor, G. \fIRFC 1332, The PPP Internet Protocol Control Protocol (IPCP)\fR.
+Network Working Group. May 1992.
+.sp
+.LP
+Rivest, R. \fIRFC 1321, The MD5 Message-Digest Algorithm\fR. Network Working
+Group. April 1992
+.sp
+.LP
+Simpson, W. \fIRFC 1661, The Point-to-Point Protocol (PPP)\fR. Network Working
+Group. July 1994.
+.sp
+.LP
+Simpson, W. \fIRFC 1662, HDLC-like Framing \fR. Network Working Group. July
+1994.
+.SH NOTES
+These signals affect \fBpppd\fR behavior:
+.sp
+.ne 2
+.na
+\fB\fBSIGINT, SIGTERM\fR \fR
+.ad
+.RS 20n
+Terminate the link, restore the serial device settings and exit.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSIGHUP\fR \fR
+.ad
+.RS 20n
+Terminate the link, restore the serial device settings and close the serial
+device. If the \fBpersist\fR or \fBdemand\fR option is specified, \fBpppd\fR
+attempts to reopen the serial device and start another connection after the
+holdoff period. Otherwise \fBpppd\fR exits. If received during the holdoff
+period, \fBSIGHUP\fR causes \fBpppd\fR to end the holdoff period immediately.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSIGUSR1\fR \fR
+.ad
+.RS 20n
+Toggles the state of the \fBdebug\fR option and prints link status information
+to the log.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSIGUSR2\fR \fR
+.ad
+.RS 20n
+Causes \fBpppd\fR to renegotiate compression. This is useful to re-enable
+compression after it has been disabled as a result of a fatal decompression
+error. (Fatal decompression errors generally indicate a bug in an
+implementation.)
+.RE
+
+.SH DIAGNOSTICS
+Messages are sent to the syslog daemon using facility \fBLOG_DAEMON\fR. To see
+error and debug messages, edit the \fB/etc/syslog.conf\fR file to direct the
+messages to the desired output device or file, or use the \fBupdetach\fR or
+\fBlogfile\fR options.
+.sp
+.LP
+The \fBdebug\fR option causes the contents of all LCP, PAP, CHAP or IPCP
+control packets sent or received to be logged. This is useful if PPP
+negotiation does not succeed or if authentication fails.
+.sp
+.LP
+Debugging can also be enabled or disabled by sending a \fBSIGUSR1\fR signal,
+which acts as a toggle to the \fBpppd\fR process.
diff --git a/usr/src/man/man8/pppdump.8 b/usr/src/man/man8/pppdump.8
new file mode 100644
index 0000000000..ac6023845a
--- /dev/null
+++ b/usr/src/man/man8/pppdump.8
@@ -0,0 +1,64 @@
+.\" -*- nroff -*-
+.\" manual page for pppdump
+.\" Copyright (c) 2000 by Sun Microsystems, Inc.
+.\" All rights reserved.
+.TH PPPDUMP 8 "Apr 1, 1999"
+.SH NAME
+pppdump \- convert PPP record file to readable format
+.SH SYNOPSIS
+.B pppdump
+[
+.B -h
+|
+.B -p
+[
+.B -d
+]] [
+.B -r
+] [
+.B -m \fImru
+] [
+.I file \fR...
+]
+.SH DESCRIPTION
+The
+.B pppdump
+utility converts the files written using the \fIrecord\fR option of
+.B pppd
+into a human-readable format. If one or more filenames are specified,
+.B pppdump
+will read each in turn; otherwise it will read its standard input. In
+each case the result is written to standard output.
+.PP
+The options are as follows:
+.TP
+.B -h
+Prints the bytes sent and received in hexadecimal. If neither this
+option nor the \fB-p\fR option is specified, the bytes are printed as
+the characters themselves, with non-printing and non-ASCII characters
+printed as escape sequences.
+.TP
+.B -p
+Collects the bytes sent and received into PPP packets, interpreting
+the async HDLC framing and escape characters and checking the FCS
+(frame check sequence) of each packet. The packets are printed as hex
+values and as characters (non-printable characters are printed as
+`.').
+.TP
+.B -d
+With the \fB-p\fR option, this option causes
+.B pppdump
+to decompress packets which have been compressed with the BSD-Compress
+or Deflate methods.
+.TP
+.B -r
+Reverses the direction indicators, so that `sent' is printed for
+bytes or packets received, and `rcvd' is printed for bytes or packets
+sent.
+.TP
+.BI "-m " mru
+Use \fImru\fR as the MRU (maximum receive unit) for both directions of
+the link when checking for over-length PPP packets (with the \fB-p\fR
+option).
+.SH SEE ALSO
+pppd(8)
diff --git a/usr/src/man/man8/pppoec.8 b/usr/src/man/man8/pppoec.8
new file mode 100644
index 0000000000..b97234440f
--- /dev/null
+++ b/usr/src/man/man8/pppoec.8
@@ -0,0 +1,275 @@
+'\" te
+.\" Copyright (c) 2002, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PPPOEC 8 "Jan 9, 2002"
+.SH NAME
+pppoec \- PPPoE chat utility
+.SH SYNOPSIS
+.LP
+.nf
+\fBpppoec\fR [\fB-o\fImillisecs\fR\fR] [\fB-s\fR\fImillisecs\fR] [\fB-v\fR] \fIdevice\fR
+ [\fIservice\fR [ [except]\fIserver\fR... [only]]]
+.fi
+
+.LP
+.nf
+\fBpppoec\fR [\fB-o\fImillisecs\fR\fR] [\fB-v\fR] \fB-i\fR [\fIdevice\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBpppoec\fR utility implements the client-side negotiation of PPPoE. It is
+intended to be used with the \fBpppd\fR(8) \fBconnect\fR option, in the same
+manner as the \fBchat\fR(8) utility is used for asynchronous dial-up PPP.
+.sp
+.LP
+When given with the \fB-i\fR flag, \fBpppoec\fR sends out a broadcast query on
+the given interface named by the \fIdevice\fR parameter. You can specify no
+other arguments in this mode. All responding PPPoE servers and the offered
+services are displayed on standard output.
+.sp
+.LP
+Otherwise, when given without the \fB-i\fR flag, \fBpppoec\fR does the full
+PPPoE client-side negotiation. The \fIdevice\fR parameter is the intended
+Ethernet interface, and must already be plumbed with \fBsppptun\fR(8). The
+optional \fIservice\fR parameter specifies a particular service desired; other
+offered services will be ignored. The optional \fIserver\fR parameter specifies
+a specific server desired. You can specify \fIserver\fR as an Ethernet address
+in the usual x:x:x:x:x:x format (with "\fB*\fR" in any of the six byte
+positions interpreted to mean "any"), or as a symbolic name resolved through
+\fB/etc/ethers\fR (or NIS), or as a PPPoE access concentrator name. The sense
+of the match (true or false) can be inverted by specifying the keyword
+\fBexcept\fR before this string. This parameter can be specified more than
+once, and the first match is taken.
+.sp
+.LP
+If you specify the \fIserver\fR parameter, then the selected servers become
+"preferred." If no preferred server responds, then the first responding server
+is used instead. To exclude non-matching servers entirely, append the keyword
+\fBonly\fR.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-i\fR\fR
+.ad
+.RS 6n
+Sends out broadcast query over interface specified by \fIdevice\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-o\fR\fR
+.ad
+.RS 6n
+Sets the initial wait time in milliseconds for PADO from the server before PADI
+is retried. The default is 500 milliseconds for normal operation, or 3000
+milliseconds (3 seconds) for inquiry (\fB-i\fR) mode.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR\fR
+.ad
+.RS 6n
+Sets the initial wait time in milliseconds for PADS from the server before PADR
+is retried. The default is 2000 milliseconds (2 seconds).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.RS 6n
+Displays verbose progress messages, including all PPPoE messages sent, and all
+state machine transitions.
+.RE
+
+.sp
+.LP
+You normally do not need to adjust the parameters set with \fB-o\fR and
+\fB-s\fR. They are provided for coping with unusually slow servers.
+.SH OPERANDS
+.sp
+.LP
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fB\fIdevice\fR\fR
+.ad
+.RS 11n
+plumbed Ethernet interface
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIserver\fR\fR
+.ad
+.RS 11n
+preferred server or, if you specify \fBonly\fR, the specified server
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIservice\fR\fR
+.ad
+.RS 11n
+desired service; other available services are ignored
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRConnecting to Any Service on \fBhme0\fR
+.sp
+.LP
+The following command enables you to connect to any PPPoE service on
+\fBhme0\fR:
+
+.sp
+.in +2
+.nf
+# /usr/bin/pppd sppptun plugin pppoe.so \
+connect "/usr/lib/inet/pppoec hme0" debug
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Often, a command such as the preceding is specified in an \fB/etc/ppp/peers\fR
+file instead. For example, enter the following in \fB/etc/ppp/peers/myisp\fR:
+
+.sp
+.in +2
+.nf
+sppptun
+plugin pppoe.so
+connect "/usr/lib/inet/pppoec hme0"
+debug
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+To invoke the PPP connection described in the file, enter:
+
+.sp
+.in +2
+.nf
+% /usr/bin/pppd call myisp
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Note that, because the \fB/etc/ppp/peers\fR files are considered privileged by
+\fBpppd\fR, you need not be root to invoke the preceding command.
+
+.LP
+\fBExample 2 \fRConnecting to a Particular Service
+.sp
+.LP
+A more complex example: on \fBhme0\fR, connect to only the \fBinternet\fR
+service offered by PPPoE servers with access concentrator name \fBisp\fR, but
+not to any Ethernet addresses starting with \fB40:0:1a\fR.
+
+.sp
+.in +2
+.nf
+# \fB/usr/lib/inet/pppoec hme0 internet except 40:0:1a:*:*:* isp only\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Note that the \fBexcept 40:0:1a:*:*:*\fR filter must come before \fBisp\fR,
+because the filters are first-match.
+
+.SH EXIT STATUS
+.sp
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR \fR
+.ad
+.RS 6n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB>\fB0\fR\fR
+.ad
+.RS 6n
+An error occurred.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/inet/pppoec\fR \fR
+.ad
+.RS 27n
+executable command
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/sppptun\fR\fR
+.ad
+.RS 27n
+Solaris PPP tunneling device driver.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/ppp/connect-errors\fR\fR
+.ad
+.RS 27n
+usual location of error output (see DIAGNOSTICS, below)
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR sppptun (4M),
+.BR pppd (8),
+.BR pppoed (8),
+.BR sppptun (8)
+.sp
+.LP
+\fIRFC 2516, Method for Transmitting PPP Over Ethernet (PPPoE)\fR, Mamakos et
+al, February 1999
+.SH DIAGNOSTICS
+.sp
+.LP
+Error messages are written to standard error, which is normally redirected by
+\fBpppd\fR to \fB/etc/ppp/connect-errors\fR. The errors can also be redirected
+to \fBpppd\fR's standard output by using the \fBupdetach\fR option.
+.sp
+.LP
+If you specify the \fB-v\fR, verbose progress messages are displayed, including
+all PPPoE messages sent, and all state machine transitions. Specifying the
+\fBupdetach\fR or \fBnodetach\fR \fBpppd\fR option is helpful when using
+verbose mode.
diff --git a/usr/src/man/man8/pppoed.8 b/usr/src/man/man8/pppoed.8
new file mode 100644
index 0000000000..efacd12833
--- /dev/null
+++ b/usr/src/man/man8/pppoed.8
@@ -0,0 +1,439 @@
+'\" te
+.\" Copyright (C) 2003, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PPPOED 8 "Jan 6, 2003"
+.SH NAME
+pppoed \- PPPoE server daemon
+.SH SYNOPSIS
+.LP
+.nf
+\fBppoed\fR [\fIoptions\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBpppoed\fR daemon implements the server-side negotiation of PPPoE. When a
+client requests service from this daemon, a copy of \fBpppd\fR(8) is invoked
+to handle the actual PPP communication.
+.sp
+.LP
+At startup, options are read from the command line and the \fB/etc/ppp/pppoe\fR
+file. After these options have been read, options in the per-device
+\fB/etc/ppp/pppoe.\fIdevice\fR\fR files are read, using the device names
+specified on the command line or in \fB/etc/ppp/pppoe\fR. Device names are not
+permitted in the per-device files. It is not an error if any of these files are
+absent; missing files are ignored.
+.sp
+.LP
+Options are reread in the same order on \fBSIGHUP\fR. Except for the
+possibility of short delays due to the processing time, \fBSIGHUP\fR does not
+interfere with any client operations. Current status, including options read,
+is dumped to \fB/tmp/pppoed.\fIpid\fR\fR on \fBSIGINT\fR.
+.sp
+.LP
+The options are used to set up a list of services to be offered to PPPoE
+clients on the broadcast domains (Ethernet subnets) specified by the named
+devices. Option parsing is always in one of two modes, either global mode or
+service mode. The initial mode at the beginning of each file (and the command
+line) is global mode. Options specified in global mode serve as default values
+for subsequently defined services. Service mode is entered by the \fBservice\fR
+\fIname\fR option. In this mode, the named option is defined. Options that
+appear in this mode override any global mode definitions for the current
+service.
+.sp
+.LP
+The option parsing follows standard shell tokenizing rules, using whitespace to
+delimit tokens, quotes to enclose strings that can contain whitespace, and
+escape sequences for special characters. Environment variables are substituted
+using familiar \fB$VAR\fR and \fB${VAR}\fR syntax and set using
+\fBNEWVAR=\fIstring\fR\fR. Variables are both usable in subsequent options and
+provided to the \fBpppd\fR(8) processes spawned for each client, but they are
+interpreted as they are encountered during option processing. Thus, all set
+variables are seen by all processes spawned; position in the configuration
+files has no effect on this.
+.SH OPTIONS
+.sp
+.LP
+The \fBpppoed\fR daemon supports the following options:
+.sp
+.ne 2
+.na
+\fB\fBclient\fR [\fBexcept\fR] \fIclient-list\fR\fR
+.ad
+.sp .6
+.RS 4n
+This option restricts the clients that may receive the service. If the
+\fBexcept\fR keyword is given, then the clients on the list cannot access the
+service, but others can. If this keyword is not given, then only the listed
+clients can access the service.
+.sp
+This option can be specified more than once for a given service. For a given
+client, first match among all listed options encountered specifies the
+handling. If it matches an option with \fBexcept\fR specified, then access is
+denied. Otherwise, it is granted. The \fBclient\fR list within a service is
+prepended to any list specified in the global context.
+.sp
+If no \fBclient\fR options are given or if all options are specified with
+\fBexcept\fR, then all clients are permitted by default. If any \fBclient\fR
+options without \fBexcept\fR are specified, then no clients are permitted by
+default.
+.sp
+The \fIclient-list\fR is a comma-separated list of client identifiers. The
+match is made if any client on the list matches; thus, these are logically
+"ORed" together. Each client identifier can be either a symbolic name (resolved
+through \fB/etc/ethers\fR or NIS, as defined by \fB/etc/nsswitch.conf\fR) or a
+hexadecimal Ethernet address in the format \fBx:x:x:x:x:x\fR. In the latter
+case, any byte of the address can be "\fB*\fR", which matches any value in that
+position. For example, \fB40:0:1a:*:*:*\fR matches Ethernet adapters from the
+manufacturer assigned block \fB40:0:1a\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdebug\fR\fR
+.ad
+.sp .6
+.RS 4n
+Increase debug logging detail level by one. The detail levels are 0 (no
+logging), 1 (errors only; the default), 2 (warnings), 3 (informational
+messages), and 4 (debug messages). Log messages are written by default to
+\fBsyslog\fR(3C) using facility \fIdaemon\fR (see the \fBlog\fR option below).
+When specified on the command line or in the global context of the
+\fB/etc/ppp/pppoe\fR file, this option also sets the daemon's default
+(non-service-related) detail level.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdevice\fR \fIdevice-list\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify the devices on which the service is available. The \fIdevice-list\fR is
+a comma-separated list of logical device names (without the leading
+\fB/dev/\fR), such as \fBhme0\fR. This option is ignored if encountered in the
+per-device \fB/etc/ppp/pppoe.\fIdevice\fR\fR files.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBextra\fR \fIstring\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies extra options to \fBpppd\fR(8). It defaults to "\fBplugin pppoe.so
+directtty\fR" and usually does not need to be overridden.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfile\fR \fIpath\fR\fR
+.ad
+.sp .6
+.RS 4n
+Suspends parsing of the current file, returns to global mode, and reads options
+from \fIpath\fR. This file must be present and readable; if it is not, an error
+is logged. When the end of that file is reached, processing returns to the
+current file and the mode is reset to global again.
+.sp
+The global mode options specified in files read by this command use the options
+set in the current file's global mode; this condition extends to any file
+included by those files. All files read are parsed as though the command line
+had specified this option, and thus inherit the command line's global modes.
+.sp
+This option can be used to revert to global mode at any point in an option file
+by specifying \fBfile /dev/null\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBgroup\fR \fIname\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the group ID (symbolic or numeric) under which \fBpppd\fR is
+executed. If \fBpppoed\fR is not run as root, this option is ignored.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBlog\fR \fIpath\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies an alternate debug logging file. Debug messages are sent to this file
+instead of \fBsyslog\fR. The special name \fBsyslog\fR is recognized to switch
+logging back to \fBsyslog\fR. When specified on the command line or in the
+global context of the \fB/etc/ppp/pppoe\fR file, this option also sets the
+daemon's default (non-service-related) log file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnodebug\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set debug logging detail level to 0 (no logging). When specified on the command
+line or in the global context of the \fB/etc/ppp/pppoe\fR file, this option
+also sets the daemon's default (non-service-related) detail level.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnowildcard\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies that the current service should not be included in response to
+clients requesting "any" service. The client must ask for this service by name.
+When specified on the command line or in the global context of the
+\fB/etc/ppp/pppoe\fR file, this option causes \fBpppoed\fR to ignore all
+wildcard service requests.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpath\fR \fIpath\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the path to the \fBpppd\fR executable. Defaults to
+\fB/usr/bin/pppd\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpppd\fR \fIstring\fR\fR
+.ad
+.sp .6
+.RS 4n
+Passes command-line arguments to \fBpppd\fR. It can be used to set the IP
+addresses or configure security for the session. The default value is the empty
+string.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBserver\fR \fIstring\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the PPPoE Access Concentrator name to be sent to the client. It
+defaults to "Solaris PPPoE".
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBservice\fR \fIname\fR\fR
+.ad
+.sp .6
+.RS 4n
+Closes any service being defined and begins definition of a new service. The
+same service name can be used without conflict on multiple devices. If the same
+service name is used on a single device, then the last definition encountered
+during parsing overrides all previous definitions.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBuser\fR \fIname\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the user ID, symbolic or numeric, under which \fBpppd\fR is executed.
+If \fBpppoed\fR is not run as root, this option is ignored.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBwildcard\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies that the service should be included in responses to client queries
+that request "any" service, which is done by requesting a service name of
+length zero. When specified on the command line or in the global context of the
+\fB/etc/ppp/pppoe\fR file, this option causes \fBpppoed\fR to ignore all
+wildcard service requests. This is the default.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRConfiguring for Particular Services
+.sp
+.LP
+In the \fB/etc/ppp/pppoe\fR file:
+
+.sp
+.in +2
+.nf
+service internet
+ device $DEV
+ pppd "proxyarp 192.168.1.1:"
+service debugging
+ device hme0,$DEV
+ pppd "debug proxyarp 192.168.1.1:"
+.fi
+.in -2
+
+.sp
+.LP
+You then invoke the daemon with:
+
+.sp
+.in +2
+.nf
+example% \fB/usr/lib/inet/pppoed DEV=eri0\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The lines in \fB/etc/ppp/pppoe\fR and the preceding command result in offering
+services "internet" and "debugging" (and responding to wildcard queries) on
+interface \fBeri0\fR, and offering only service "debugging" on interface
+\fBhme0\fR.
+
+.SH SIGNALS
+.sp
+.LP
+The \fBpppoed\fR daemon responds to the following signals:
+.sp
+.ne 2
+.na
+\fB\fBSIGHUP\fR\fR
+.ad
+.RS 10n
+Causes \fBpppoed\fR to reparse the original command line and all configuration
+files, and close and reopen any log files.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSIGINT\fR\fR
+.ad
+.RS 10n
+Causes a snapshot of the state of the \fBpppoed\fR daemon to be written to
+\fB/tmp/pppoed.\fIpid\fR\fR (where \fIpid\fR is the decimal process ID of the
+daemon).
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/inet/pppoed\fR \fR
+.ad
+.RS 25n
+executable command
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/sppptun\fR\fR
+.ad
+.RS 25n
+Solaris PPP tunneling device driver
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/ppp/pppoe\fR\fR
+.ad
+.RS 25n
+main configuration option file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/ppp/pppoe.\fIdevice\fR\fR\fR
+.ad
+.RS 25n
+per-device configuration option file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/ppp/pppoe-errors\fR\fR
+.ad
+.RS 25n
+location of output from \fBpppd\fR's stderr
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/ppp/pppoe.if\fR\fR
+.ad
+.RS 25n
+list of Ethernet interfaces to be plumbed at boot time
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/tmp/pppoed.\fIpid\fR\fR\fR
+.ad
+.RS 25n
+ASCII text file containing dumped \fBpppoed\fR state information
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR sppptun (4M),
+.BR pppd (8),
+.BR pppoec (8),
+.BR sppptun (8)
+.sp
+.LP
+Mamakos, L., et al. \fIRFC 2516, A Method for Transmitting PPP Over Ethernet
+(PPPoE)\fR. Network Working Group. February 1999
+.SH NOTES
+.sp
+.LP
+Because \fBpppd\fR is installed setuid root, this daemon need not be run as
+root. However, if it is not run as root, the \fBuser\fR and \fBgroup\fR options
+are ignored.
+.sp
+.LP
+The Ethernet interfaces to be used must be plumbed for PPPoE using the
+\fBsppptun\fR(8) utility before services can be offered.
+.sp
+.LP
+The daemon operate runs even if there are no services to offer. If you want to
+modify a configuration, it is not necessary to terminate the daemon. Simply use
+\fBpkill \fR\fB-HUP\fR\fB pppoed\fR after updating the configuration files.
+.sp
+.LP
+The PPPoE protocol is far from perfect. Because it runs directly over Ethernet,
+there is no possibility of security and the MTU is limited to 1492 (violating
+RFC 1661's default value of 1500). It is also not possible to run the client
+and the server of a given session on a single machine with a single Ethernet
+interface for testing purposes. The client and server portions of a single
+session must be run on separate Ethernet interfaces with different MAC
+addresses.
diff --git a/usr/src/man/man8/pppstats.8 b/usr/src/man/man8/pppstats.8
new file mode 100644
index 0000000000..02a014cd22
--- /dev/null
+++ b/usr/src/man/man8/pppstats.8
@@ -0,0 +1,400 @@
+'\" te
+.\" Copyright (c) 1989 Regents of the University of California. All rights reserved.
+.\" Redistribution and use in source and binary forms are permitted provided that the above copyright notice and this paragraph are duplicated in all such forms and that any documentation, advertising materials, and other materials related to such distribution and use acknowledge that the software was developed by the University of California, Berkeley. The name of the University may not be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
+.\" WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
+.\" Portions Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved.
+.TH PPPSTATS 8 "May 4, 2001"
+.SH NAME
+pppstats \- print PPP statistics
+.SH SYNOPSIS
+.LP
+.nf
+\fBpppstats\fR [\fB-a\fR] [\fB-v\fR] [\fB-r\fR] [\fB-z\fR] [\fB-c\fR \fI<count>\fR] [\fB-w\fR \fI<secs>\fR]
+ [\fIinterface\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBpppstats\fR utility reports PPP-related statistics at regular intervals
+for the specified PPP interface. If the interface is unspecified,
+\fBpppstats\fR defaults to \fBsppp0\fR. The display is split horizontally into
+input and output sections containing columns of statistics describing the
+properties and volume of packets received and transmitted by the interface.
+.SH OPTIONS
+.sp
+.LP
+The \fBpppstats\fR options are:
+.sp
+.ne 2
+.na
+\fB\fB-a\fR \fR
+.ad
+.RS 13n
+Display absolute values rather than deltas. With this option, all reports show
+statistics for the time elapsed since the link was initiated. Without this
+option, the second and subsequent reports show statistics for the time since
+the last report.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-c\fR \fB\fIcount\fR\fR \fR
+.ad
+.RS 13n
+Repeat the display \fIcount\fR times. If this option is not specified, the
+default repeat count is 1 if the \fB-w\fR option is not specified, otherwise
+infinity.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-r\fR \fR
+.ad
+.RS 13n
+Display additional statistics summarizing the compression ratio achieved by the
+packet compression algorithm in use.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR \fR
+.ad
+.RS 13n
+Display additional statistics relating to the performance of the Van Jacobson
+TCP header compression algorithm.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-w\fR \fB\fIwait\fR\fR \fR
+.ad
+.RS 13n
+Pause \fIwait\fR seconds between each display. If this option is not
+specified, the default interval is five seconds.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-z\fR \fR
+.ad
+.RS 13n
+Instead of the standard display, show statistics indicating the performance of
+the packet compression algorithm in use.
+.RE
+
+.SH EXTENDED DESCRIPTION
+.sp
+.LP
+The following fields are printed on the input side when the \fB-z\fR option is
+not used:
+.sp
+.ne 2
+.na
+\fB\fBIN\fR \fR
+.ad
+.RS 11n
+Total number of bytes received by this interface.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPACK\fR \fR
+.ad
+.RS 11n
+Total number of packets received by this interface.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBVJCOMP\fR \fR
+.ad
+.RS 11n
+Number of header-compressed TCP packets received by this interface.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBVJUNC\fR \fR
+.ad
+.RS 11n
+Number of header-uncompressed TCP packets received by this interface. Not
+reported when the \fB-r\fR option is specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBVJERR\fR \fR
+.ad
+.RS 11n
+Number of corrupted or bogus header-compressed TCP packets received by this
+interface. Not reported when the \fB-r\fR option is specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBVJTOSS\fR \fR
+.ad
+.RS 11n
+Number of VJ header-compressed TCP packets dropped on reception by this
+interface because of preceding errors. Only reported when the \fB-v\fR option
+is specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBNON-VJ\fR \fR
+.ad
+.RS 11n
+Total number of non-TCP packets received by this interface. Only reported when
+the \fB-v\fR option is specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBRATIO\fR \fR
+.ad
+.RS 11n
+Compression ratio achieved for received packets by the packet compression
+scheme in use, defined as the uncompressed size divided by the compressed size.
+Only reported when the \fB-r\fR option is specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBUBYTE\fR \fR
+.ad
+.RS 11n
+Total number of bytes received, after decompression of compressed packets. Only
+reported when the \fB-r\fR option is specified.
+.RE
+
+.sp
+.LP
+The following fields are printed on the output side:
+.sp
+.ne 2
+.na
+\fB\fBOUT\fR\fR
+.ad
+.RS 10n
+Total number of bytes transmitted from this interface.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPACK\fR\fR
+.ad
+.RS 10n
+Total number of packets transmitted from this interface.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBVJCOMP\fR\fR
+.ad
+.RS 10n
+Number of TCP packets transmitted from this interface with VJ-compressed TCP
+headers.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBVJUNC\fR\fR
+.ad
+.RS 10n
+Number of TCP packets transmitted from this interface with VJ-uncompressed TCP
+headers. Not reported when the \fB-r\fR option is specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBNON-VJ\fR\fR
+.ad
+.RS 10n
+Total number of non-TCP packets transmitted from this interface. Not reported
+when the \fB-r\fR option is specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBVJSRCH\fR\fR
+.ad
+.RS 10n
+Number of searches for the cached header entry for a VJ header compressed TCP
+packet. Only reported when the \fB-v\fR option is specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBVJMISS\fR\fR
+.ad
+.RS 10n
+Number of failed searches for the cached header entry for a VJ header
+compressed TCP packet. Only reported when the \fB-v\fR option is specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBRATIO\fR\fR
+.ad
+.RS 10n
+Compression ratio achieved for transmitted packets by the packet compression
+scheme in use, defined as the size before compression divided by the compressed
+size. Only reported when the \fB-r\fR option is specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBUBYTE\fR\fR
+.ad
+.RS 10n
+Total number of bytes to be transmitted before packet compression is applied.
+Only reported when the \fB-r\fR option is specified.
+.RE
+
+.sp
+.LP
+When the \fB-z\fR option is specified, \fBpppstats\fR displays the following
+fields relating to the packet compression algorithm currently in use. If packet
+compression is not in use, these fields display zeroes. The fields displayed on
+the input side are:
+.sp
+.ne 2
+.na
+\fB\fBCOMPRESSED BYTE\fR\fR
+.ad
+.RS 23n
+Number of bytes of compressed packets received.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBCOMPRESSED PACK\fR\fR
+.ad
+.RS 23n
+Number of compressed packets received.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBINCOMPRESSIBLE BYTE\fR\fR
+.ad
+.RS 23n
+Number of bytes of incompressible packets (that is, those which were
+transmitted in uncompressed form) received.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBINCOMPRESSIBLE PACK\fR\fR
+.ad
+.RS 23n
+Number of incompressible packets received.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBCOMP RATIO\fR\fR
+.ad
+.RS 23n
+Recent compression ratio for incoming packets, defined as the uncompressed size
+divided by the compressed size (including both compressible and incompressible
+packets).
+.RE
+
+.sp
+.LP
+The fields displayed on the output side are:
+.sp
+.ne 2
+.na
+\fB\fBCOMPRESSED BYTE\fR\fR
+.ad
+.RS 23n
+Number of bytes of compressed packets transmitted.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBCOMPRESSED PACK\fR\fR
+.ad
+.RS 23n
+Number of compressed packets transmitted.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBINCOMPRESSIBLE BYTE\fR\fR
+.ad
+.RS 23n
+Number of bytes of incompressible packets received; that is, those that were
+transmitted by the peer in uncompressed form.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBINCOMPRESSIBLE PACK\fR\fR
+.ad
+.RS 23n
+Number of incompressible packets transmitted.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBCOMP RATIO\fR\fR
+.ad
+.RS 23n
+Recent compression ratio for outgoing packets.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7),
+.BR pppd (8)
diff --git a/usr/src/man/man8/pptadm.8 b/usr/src/man/man8/pptadm.8
new file mode 100644
index 0000000000..196528e16a
--- /dev/null
+++ b/usr/src/man/man8/pptadm.8
@@ -0,0 +1,74 @@
+.\"
+.\" This file and its contents are supplied under the terms of the
+.\" Common Development and Distribution License ("CDDL"), version 1.0.
+.\" You may only use this file in accordance with the terms of version
+.\" 1.0 of the CDDL.
+.\"
+.\" A full copy of the text of the CDDL should have accompanied this
+.\" source. A copy of the CDDL is also available via the Internet at
+.\" http://www.illumos.org/license/CDDL.
+.\"
+.\" Copyright 2018 Joyent, Inc.
+.\"
+.Dd April 10, 2018
+.Dt PPTADM 8
+.Os
+.Sh NAME
+.Nm pptadm
+.Nd PPT administration utility
+.Sh SYNOPSIS
+.Nm
+.Cm list -j
+.Op Fl a
+.Nm
+.Cm list
+.Op Fl ap Op Fl o Ar fields
+.Sh DESCRIPTION
+The
+.Nm
+utility can enumerate passthrough devices for use by a virtualized guest.
+.Sh OPTIONS
+The following options to the
+.Cm list
+command are supported:
+.Bl -tag -width Ds
+.It Fl a
+Show all PPT devices, both available and assigned.
+.It Fl j
+Output JSON.
+.It Fl o
+Specify fields to output, or "all". Available fields are
+dev,path,vendor,device,subvendor,subdevice,rev,label
+.It Fl p
+Output in a parsable format; this requires the -o option to be specified.
+.El
+.Sh JSON OUTPUT
+The JSON output consists of an array under the key "devices" with the fields:
+.Bl -tag -width Ds
+.It dev
+The PPT /dev path, if assigned and bound.
+.It path
+The physical /devices path.
+.It vendor-id
+The PCI vendor ID.
+.It device-id
+The PCI device ID.
+.It subsystem-vendor-id
+The PCI subsystem vendor ID.
+.It subsystem-id
+The PCI subsystem ID.
+.It revision-id
+The PCI device revision.
+.It label
+Human-readable description from the PCI database.
+.El
+.Sh FILES
+.Bl -tag -width Ds
+.It /etc/ppt_aliases
+Containts the bindings of PPT devices in the same format as /etc/driver_aliases
+.It /etc/ppt_matches
+Identifies devices that PPT could be bound to, either by physical path, or by
+PCI ID.
+.El
+.Sh EXIT STATUS
+.Ex -std
diff --git a/usr/src/man/man8/praudit.8 b/usr/src/man/man8/praudit.8
new file mode 100644
index 0000000000..7f9f185d7c
--- /dev/null
+++ b/usr/src/man/man8/praudit.8
@@ -0,0 +1,195 @@
+'\" te
+.\" Copyright (c) 2019 Peter Tribble.
+.\" Copyright (c) 2003, Sun Microsystems, Inc.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
+.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PRAUDIT 8 "Aug 13, 2019"
+.SH NAME
+praudit \- print contents of an audit trail file
+.SH SYNOPSIS
+.nf
+\fBpraudit\fR [\fB-r|-s\fR] [\fB-lx\fR] [\fB-d\fR\fIdel\fR] [\fB-g\fR \fIfilename\fR] [\fB-p\fR \fIfilename\fR] [\fIfilename\fR]...
+.fi
+
+.SH DESCRIPTION
+\fBpraudit\fR reads the listed \fIfilename\fRs (or standard input, if no
+\fIfilename\fR is specified) and interprets the data as audit trail records as
+defined in \fBaudit.log\fR(5). By default, times, user and group \fBID\fRs
+(\fBUID\fRs and \fBGID\fRs, respectively) are converted to their \fBASCII\fR
+representation. Record type and event fields are converted to their \fBASCII\fR
+representation. A maximum of 100 audit files can be specified on the command
+line.
+.SH OPTIONS
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-d\fR\fIdel\fR\fR
+.ad
+.sp .6
+.RS 4n
+Use \fIdel\fR as the field delimiter instead of the default delimiter, which is
+the comma. If \fIdel\fR has special meaning for the shell, it must be quoted.
+The maximum size of a delimiter is three characters. The delimiter is not
+meaningful and is not used when the \fB-x\fR option is specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR\fR
+.ad
+.sp .6
+.RS 4n
+Print one line per record.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-r\fR\fR
+.ad
+.sp .6
+.RS 4n
+Print records in their raw form. Times, \fBUID\fRs, \fBGID\fRs, record types,
+and events are displayed as integers. This option is useful when naming
+services are offline. The \fB-r\fR option and the \fB-s\fR option are
+exclusive. If both are used, a format usage error message is output.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display records in their short form. Numeric fields' ASCII equivalents are
+looked up by means of the sources specified in the \fB/etc/nsswitch.conf\fR
+file (see \fBnsswitch.conf\fR(5)). All numeric fields are converted to ASCII
+and then displayed. The short \fBASCII\fR representations for the record type
+and event fields are used. This option and the \fB-r\fR option are exclusive.
+If both are used, a format usage error message is output.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-x\fR\fR
+.ad
+.sp .6
+.RS 4n
+Print records in XML form. Tags are included in the output to identify tokens
+and fields within tokens. Output begins with a valid XML prolog, which includes
+identification of the DTD which can be used to parse the XML.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-g\fR \fIfilename\fR\fR
+.ad
+.sp .6
+.RS 4n
+Read group entries from the specified file. \fBGID\fRs referenced in the audit
+files will be resolved to group names using this file. \fBGID\fRs not
+referenced in the specified file will be resolved by the host system. This
+option is useful when aggregating logs from multiple systems onto a single
+host for analysis, allowing \fBGID\fRs to be resolved to the group names
+appropriate to the source of the audit file. To do this, copy the
+\fB/etc/group\fR file from the system from which the audit file originates
+and use that as the argument to the \fB-g\fR flag.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR \fIfilename\fR\fR
+.ad
+.sp .6
+.RS 4n
+Read passwd entries from the specified file. \fBUID\fRs referenced in the audit
+files will be resolved to user names using this file. \fBUID\fRs not
+referenced in the specified file will be resolved by the host system. This
+option is useful when aggregating logs from multiple systems onto a single
+host for analysis, allowing \fBUID\fRs to be resolved to the user names
+appropriate to the source of the audit file. To do this, copy the
+\fB/etc/passwd\fR file from the system from which the audit file originates
+and use that as the argument to the \fB-p\fR flag.
+.RE
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/etc/security/audit_event\fR\fR
+.ad
+.sp .6
+.RS 4n
+Audit event definition and class mappings.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/security/audit_class\fR\fR
+.ad
+.sp .6
+.RS 4n
+Audit class definitions.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/share/lib/xml/dtd\fR\fR
+.ad
+.sp .6
+.RS 4n
+Directory containing the versioned DTD file referenced in XML output, for
+example, \fBadt_record.dtd.1\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/share/lib/xml/style\fR\fR
+.ad
+.sp .6
+.RS 4n
+Directory containing the versioned XSL file referenced in XML output, for
+example, \fBadt_record.xsl.1\fR.
+.RE
+
+.SH ATTRIBUTES
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability See below
+.TE
+
+.sp
+.LP
+The command stability is evolving. The output format is unstable.
+.SH SEE ALSO
+.BR audit (2),
+.BR getauditflags (3BSM),
+.BR getpwuid (3C),
+.BR gethostbyaddr (3NSL),
+.BR ethers (3SOCKET),
+.BR getipnodebyaddr (3SOCKET),
+.BR audit.log (5),
+.BR audit_class (5),
+.BR audit_event (5),
+.BR group (5),
+.BR nsswitch.conf (5),
+.BR passwd (5),
+.BR attributes (7),
+.BR getent (8)
diff --git a/usr/src/man/man8/print-service.8 b/usr/src/man/man8/print-service.8
new file mode 100644
index 0000000000..e31c02e29d
--- /dev/null
+++ b/usr/src/man/man8/print-service.8
@@ -0,0 +1,182 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PRINT-SERVICE 8 "Mar 18, 2008"
+.SH NAME
+print-service \- select, report, import, export active print service on a
+system
+.SH SYNOPSIS
+.LP
+.nf
+\fBprint-service\fR [\fB-s\fR \fIservice\fR [\fB-m\fR] | \fB-q\fR | \fB-e\fR \fIfile\fR | \fB-i\fR \fIfile\fR]
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBprint-service\fR utility manages print service selection, as well as
+export and import of basic print queue configuration.
+.sp
+.LP
+Only a user root privileges or with the Printer Management profile can change
+the active print service or import print queue configuration.
+.SH OPTIONS
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-s\fR \fIservice\fR\fR
+.ad
+.sp .6
+.RS 4n
+Select the active print service for on a host. \fIservice\fR can be one of
+\fBlp\fR or \fBcups\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-m\fR\fR
+.ad
+.sp .6
+.RS 4n
+Migrate print queue configuration during print service selection.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-q\fR\fR
+.ad
+.sp .6
+.RS 4n
+Report the active print service on a host.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-e\fR \fIfile\fR\fR
+.ad
+.sp .6
+.RS 4n
+Export basic print queue configuration to a file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-i\fR \fIfile\fR\fR
+.ad
+.sp .6
+.RS 4n
+Import basic print queue configuration from a file.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRSelecting a Print Service
+.sp
+.LP
+The following command selects the CUPS print service as the active print
+service on a host.
+
+.sp
+.in +2
+.nf
+# \fBprint-service -s cups\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRReporting the Active Print Service
+.sp
+.LP
+The following command reports the active print service on a host.
+
+.sp
+.in +2
+.nf
+# \fBprint-service -q\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRExporting a Print Queue Configuration
+.sp
+.LP
+The following command exports the print queue configuration from the active
+print service.
+
+.sp
+.in +2
+.nf
+# \fBprint-service -e /tmp/queues\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 4 \fRImporting a Print Queue Configuration
+.sp
+.LP
+The following command imports the print queue configuration to the active print
+service.
+
+.sp
+.in +2
+.nf
+# \fBprint-service -i /tmp/queues\fR
+.fi
+.in -2
+.sp
+
+.SH EXIT STATUS
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.sp .6
+.RS 4n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnon-zero\fR\fR
+.ad
+.sp .6
+.RS 4n
+An error occurred.
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Obsolete
+.TE
+
+.SH SEE ALSO
+.LP
+.BR Intro (1),
+.BR attributes (7)
+.SH NOTES
+.LP
+The print queue configuration saved and restored during export, import, and
+migration is limited to queue name and device name. It is likely that further
+configuration changes will be required before imported or migrated print queues
+become usable.
diff --git a/usr/src/man/man8/printmgr.8 b/usr/src/man/man8/printmgr.8
new file mode 100644
index 0000000000..dfbd42d3fd
--- /dev/null
+++ b/usr/src/man/man8/printmgr.8
@@ -0,0 +1,126 @@
+'\" te
+.\" Copyright (C) 2003, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PRINTMGR 8 "Feb 25, 2017"
+.SH NAME
+printmgr \- Solaris Print Manager is a graphical user interface for managing
+printers in a network
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sadm/admin/bin/printmgr\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+Solaris Print Manager is a Java-based graphical user interface that enables you
+to manage local and remote printer access. This tool can be used in the
+following name service environments: LDAP, NIS, and files. You must be
+logged in as superuser to use this tool.
+.sp
+.LP
+Using Solaris Printer Manager is the preferred method for managing printer
+access because Solaris Print Manager centralizes printer information when it is
+used in a name service environment.
+.sp
+.LP
+Adding printer information to a name service makes access to printers available
+to all systems on the network and generally makes printer administration easier
+because all the information about printers is centralized.
+.sp
+.LP
+Solaris Print Manager may be run on a remote system with the display sent to
+the local system. See the \fISystem Administration Guide: Solaris Printing\fR
+for instructions on setting the \fBDISPLAY\fR environment variable.
+.sp
+.LP
+Using Solaris Print Manager to perform printer-related tasks automatically
+updates the appropriate printer databases. Solaris Print Manager also includes
+a command-line console that displays the \fBlp\fR command line for the add,
+modify, and delete printer operations. Errors and warnings may also be
+displayed when Printer Manager operations are performed.
+.sp
+.LP
+Help is available by clicking the Help button.
+.SH USAGE
+.LP
+Solaris Print Manager enables you to do the following tasks:
+.sp
+.ne 2
+.na
+\fBSelect a Name Service\fR
+.ad
+.RS 29n
+Select a name service for retrieving or changing printer information.
+.RE
+
+.sp
+.ne 2
+.na
+\fBAdd Access to a Printer\fR
+.ad
+.RS 29n
+Add printer access on a printer client using Solaris Print Manager.
+.RE
+
+.sp
+.ne 2
+.na
+\fBAdd an Attached Printer\fR
+.ad
+.RS 29n
+After physically attaching the printer to a system, use Solaris Print Manager
+to install a local printer and make it available for printing.
+.RE
+
+.sp
+.ne 2
+.na
+\fBAdd a Network Printer\fR
+.ad
+.RS 29n
+After physically attaching the printer to a system, use Solaris Print Manager
+to install a local printer and make it available for printing.
+.RE
+
+.sp
+.ne 2
+.na
+\fBModify Printer Properties\fR
+.ad
+.RS 29n
+After adding access to a printer or adding an attached or network printer, you
+can modify certain printer attributes.
+.RE
+
+.sp
+.ne 2
+.na
+\fBDelete a Printer\fR
+.ad
+.RS 29n
+Delete access to a printer from the print client or delete a printer from the
+print server or from the name service environment.
+.RE
+
+.SH SEE ALSO
+.LP
+.BR ldap (1),
+.BR attributes (7),
+.BR lpget (8),
+.BR lpset (8)
+.sp
+.LP
+\fISystem Administration Guide: Solaris Printing\fR for information on LDAP
+server replication.
+.sp
+.LP
+Although users can use the LDAP command line utilities \fBldapadd\fR(1) and
+\fBldapmodify\fR(1) to update printer entries in the directory, the preferred
+method is to use \fBlpset\fR. Otherwise, if the \fBlpadd\fR and \fBlpmodify\fR
+utilities are used, the administrator must ensure that the \fBprinter-name\fR
+attribute value is unique within the \fBou=printers\fR container on the LDAP
+server. If the value is not unique, the result of modifications done using
+\fBlpset\fR or the Solaris Print Manager, \fBprintmgr\fR may be unpredictable.
diff --git a/usr/src/man/man8/projadd.8 b/usr/src/man/man8/projadd.8
new file mode 100644
index 0000000000..8055fc15e7
--- /dev/null
+++ b/usr/src/man/man8/projadd.8
@@ -0,0 +1,314 @@
+'\" te
+.\" Copyright (c) 2018 Peter Tribble.
+.\" Copyright (c) 2001, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PROJADD 8 "Jan 7, 2018"
+.SH NAME
+projadd \- administer a new project on the system
+.SH SYNOPSIS
+.LP
+.nf
+\fBprojadd\fR [\fB-n\fR] [\fB-f\fR \fIfilename\fR] [\fB-p\fR \fIprojid\fR [\fB-o\fR]] [\fB-c\fR \fIcomment\fR]
+ [\fB-U\fR \fIuser\fR[,\fIuser\fR]...] [\fB-G\fR \fIgroup\fR[,\fIgroup\fR]...]
+ [\fB-K\fR \fIname\fR[=\fIvalue\fR[,\fIvalue\fR]...]]... \fIproject\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+\fBprojadd\fR adds a new project entry to the \fB/etc/project\fR file. If the
+files backend is being used for the project database, the new project is
+available for use immediately upon the completion of the \fBprojadd\fR command.
+.SH OPTIONS
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-c\fR \fIcomment\fR\fR
+.ad
+.RS 29n
+Add a project comment. Comments are stored in the project's entry in the
+\fB/etc/project\fR file. Generally, comments contain a short description of the
+project and are used as the field for the project's full name.
+.sp
+Specify \fIcomment\fR as a text string. \fIcomment\fR cannot contain a colon
+(\fB:\fR) or NEWLINE.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR \fIfilename\fR\fR
+.ad
+.RS 29n
+Specify the project file to modify. If no \fIfilename\fR is specified, the
+system project file, \fB/etc/project\fR, is modified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-G\fR \fIgroup\fR[,\fIgroup\fR]...\fR
+.ad
+.RS 29n
+Specify a group list for the project.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-K\fR \fIname\fR[=\fIvalue\fR[,\fIvalue\fR]...]\fR
+.ad
+.RS 29n
+Specify an attribute list for the project. Multiple \fB-K\fR options can be
+specified to set values on multiple keys, such as:
+.sp
+.in +2
+.nf
+-K \fIkey1\fR=\fIvalue1\fR -K "\fIkey2\fR=(\fIvalue2a\fR),(\fIvalue2b\fR)"
+.fi
+.in -2
+
+Resource control attributes use parentheses to specify values for a key.
+Because many user shells interpret parentheses as special characters, it is
+best to enclose an argument to \fB-K\fR that contains parentheses with double
+quotes, as shown above and in EXAMPLES, below. See \fBresource_controls\fR(7)
+for a description of the resource controls you can specify for a project.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR\fR
+.ad
+.RS 29n
+Syntax check. Check the format of the existing system project file and
+modifications only. The contents of the existing project file, such as user
+names, group names, and resources that are specified in the project attributes
+are not checked.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-o\fR\fR
+.ad
+.RS 29n
+This option allows the project ID specified by the \fB-p\fR option to be
+non-unique within the project file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR \fIprojid\fR\fR
+.ad
+.RS 29n
+Set the project \fBID\fR of the new project.
+.sp
+Specify \fIprojid\fR as a non-negative decimal integer below \fBUID_MAX\fR as
+defined in \fBlimits.h\fR. \fIprojid\fR defaults to the next available unique
+number above the highest number currently assigned. For example, if
+\fIprojid\fRs \fB100\fR, \fB105\fR, and \fB200\fR are assigned, the next
+default \fIprojid\fR is \fB201\fR. \fIprojid\fRs between \fB0\fR-\fB99\fR are
+reserved.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-U\fR \fIuser\fR[,\fIuser\fR]...\fR
+.ad
+.RS 29n
+Specify a user list for the project.
+.RE
+
+.SH OPERANDS
+.LP
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fB\fIproject\fR\fR
+.ad
+.RS 11n
+The name of the project to create. The \fIproject\fR operand is a string
+consisting of characters from the set of alphabetic characters, numeric
+characters, underline (_), and hyphen (-). The period ('.') is reserved for
+projects with special meaning to the operating system. The first character of
+the project name must be a letter. An error message is displayed if these
+restrictions are not met.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1\fR Adding a Project
+.sp
+.LP
+The following command creates the project \fBsalesaudit\fR and sets the
+resource controls specified as arguments to the \fB-K\fR option.
+
+.sp
+.in +2
+.nf
+projadd -p 111 -G sales,finance -c "Auditing Project" \e
+ -K "rcap.max-rss=10GB" \e
+ -K "process.max-file-size=(priv,50MB,deny)" \e
+ -K "task.max-lwps=(priv,100,deny)" salesaudit
+.fi
+.in -2
+
+.sp
+.LP
+This command would produce the following entry in \fB/etc/project\fR:
+
+.sp
+.in +2
+.nf
+salesaudit:111:Auditing Project::sales,finance: \e
+process.max-file-size=(priv,52428800,deny); \e
+rcap.max-rss=10737418240;task.max-lwps=(priv,100,deny)
+.fi
+.in -2
+
+.sp
+.LP
+Note that the preceding would appear as one line in \fB/etc/project\fR.
+
+.sp
+.LP
+Comparing the \fBprojadd\fR command and resulting output in \fB/etc/project\fR,
+note the effect of the scaling factor in the resource cap
+(\fBrcap.max-rss=10GB\fR) and the resource control
+(\fBprocess.max-file-size=(priv,50MB,deny)\fR). Modifiers, such as B, KB, and
+MB, and scaling factors are specified in \fBresource_controls\fR(7).
+
+.SH EXIT STATUS
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 6n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB2\fR\fR
+.ad
+.RS 6n
+The command syntax was invalid. A usage message for \fBprojadd\fR is displayed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB3\fR\fR
+.ad
+.RS 6n
+An invalid argument was provided to an option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB4\fR\fR
+.ad
+.RS 6n
+The \fIprojid\fR given with the \fB-p\fR option is already in use.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB5\fR\fR
+.ad
+.RS 6n
+The project files contain an error. See \fBproject\fR(5).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB6\fR\fR
+.ad
+.RS 6n
+The project to be added, group, user, or resource does not exist.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB9\fR\fR
+.ad
+.RS 6n
+The project is already in use.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB10\fR\fR
+.ad
+.RS 6n
+Cannot update the \fB/etc/project\fR file.
+.RE
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/etc/project\fR\fR
+.ad
+.RS 16n
+System project file
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability See below.
+.TE
+
+.sp
+.LP
+Invocation is evolving. Human readable output is unstable.
+.SH SEE ALSO
+.LP
+.BR projects (1),
+.BR project (5),
+.BR attributes (7),
+.BR resource_controls (7),
+.BR groupadd (8),
+.BR groupdel (8),
+.BR groupmod (8),
+.BR grpck (8),
+.BR projdel (8),
+.BR projmod (8),
+.BR useradd (8),
+.BR userdel (8),
+.BR usermod (8)
+.SH NOTES
+.LP
+In case of an error, \fBprojadd\fR prints an error message and exits with a
+non-zero status.
+.sp
+.LP
+\fBprojadd\fR adds a project definition only on the local system. If a network
+name service is being used to supplement the local
+\fB/etc/project\fR file with additional entries, \fBprojadd\fR cannot change
+information supplied by the network name service.
diff --git a/usr/src/man/man8/projdel.8 b/usr/src/man/man8/projdel.8
new file mode 100644
index 0000000000..5e2c4f3f3e
--- /dev/null
+++ b/usr/src/man/man8/projdel.8
@@ -0,0 +1,171 @@
+'\" te
+.\" Copyright (c) 2001, Sun Microsystems, Inc.
+.\" All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PROJDEL 8 "Jan 7, 2018"
+.SH NAME
+projdel \- delete a project from the system
+.SH SYNOPSIS
+.LP
+.nf
+\fBprojdel\fR [\fB-f\fR \fIfilename\fR] \fIproject\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBprojdel\fR utility deletes a project from the system and makes the
+appropriate changes to the system file.
+.SH OPTIONS
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-f\fR \fIfilename\fR\fR
+.ad
+.RS 15n
+Specify the project file to modify. If no \fIfilename\fR is specified, the
+system project file, \fB/etc/project\fR, is modified.
+.RE
+
+.SH OPERANDS
+.LP
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fB\fIproject\fR\fR
+.ad
+.RS 11n
+The name of the project to be deleted.
+.RE
+
+.SH EXIT STATUS
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 6n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB2\fR\fR
+.ad
+.RS 6n
+The command syntax was invalid. A usage message for \fBprojdel\fR is displayed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB3\fR\fR
+.ad
+.RS 6n
+An invalid argument was provided to an option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB4\fR\fR
+.ad
+.RS 6n
+The \fIprojid\fR given with the \fB-p\fR option is already in use.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB5\fR\fR
+.ad
+.RS 6n
+The project files contain an error. See \fBproject\fR(5).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB6\fR\fR
+.ad
+.RS 6n
+The project to be modified, group, user, or resource does not exist.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB9\fR\fR
+.ad
+.RS 6n
+The project is already in use.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB10\fR\fR
+.ad
+.RS 6n
+Cannot update the \fB/etc/project\fR file.
+.RE
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/etc/project\fR\fR
+.ad
+.RS 16n
+System project file
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability See below.
+.TE
+
+.sp
+.LP
+Invocation is evolving. Human readable output is unstable.
+.SH SEE ALSO
+.LP
+.BR projects (1),
+.BR project (5),
+.BR attributes (7),
+.BR groupadd (8),
+.BR groupdel (8),
+.BR groupmod (8),
+.BR grpck (8),
+.BR logins (8),
+.BR projadd (8),
+.BR projmod (8),
+.BR useradd (8),
+.BR userdel (8),
+.BR usermod (8)
+.SH DIAGNOSTICS
+.LP
+In case of an error, \fBprojdel\fR prints an error message and exits with a
+non-zero status.
+.SH NOTES
+.LP
+\fBprojdel\fR deletes a project definition only on the local system. If a
+network name service is being used to
+supplement the local \fB/etc/project\fR file with additional entries,
+\fBprojdel\fR cannot change information supplied by the network name service.
diff --git a/usr/src/man/man8/projmod.8 b/usr/src/man/man8/projmod.8
new file mode 100644
index 0000000000..b8d14e8c21
--- /dev/null
+++ b/usr/src/man/man8/projmod.8
@@ -0,0 +1,602 @@
+'\" te
+.\" Copyright (c) 2018 Peter Tribble.
+.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PROJMOD 8 "Jan 7, 2018"
+.SH NAME
+projmod \- modify a project's information on the system
+.SH SYNOPSIS
+.LP
+.nf
+\fBprojmod\fR [\fB-n\fR] [\fB-A\fR|\fB-f\fR \fIfilename\fR | -]
+.fi
+
+.LP
+.nf
+\fBprojmod\fR [\fB-n\fR] [\fB-A\fR|\fB-f\fR \fIfilename\fR | -] [\fB-p\fR \fIprojid\fR [\fB-o\fR]]
+ [\fB-c\fR \fIcomment\fR] [\fB-a\fR|\fB-s\fR|\fB-r\fR] [\fB-U\fR \fIuser\fR[,\fIuser\fR]...]
+ [\fB-G\fR \fIgroup\fR[,\fIgroup\fR]...]
+ [\fB-K\fR \fIname\fR[=\fIvalue\fR[,\fIvalue\fR]...]]...
+ [\fB-l\fR \fInew_projectname\fR] \fIproject\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBprojmod\fR utility modifies a project's definition on the system.
+\fBprojmod\fR changes the definition of the specified project and makes the
+appropriate project-related system file and file system changes.
+.SH OPTIONS
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-A\fR\fR
+.ad
+.RS 29n
+Apply the project's resource controls, as defined in the system's project
+database, to the project if it is active.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-a\fR\fR
+.ad
+.RS 29n
+Specify that the users, groups, attributes, or attribute values specified by
+the \fB-U\fR, \fB-G\fR or \fB-K\fR options should be added to the project,
+rather than replacing the existing member or attribute list.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-c\fR \fIcomment\fR\fR
+.ad
+.RS 29n
+Specify \fIcomment\fR as a text string. Generally, \fIcomment\fR contains a
+short description of the project. This information is stored in the project's
+\fB/etc/project\fR entry.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR \fIfilename\fR | -\fR
+.ad
+.RS 29n
+Specify the project file to modify or validate or specify input from stdin for
+validation. As noted under OPERANDS, if you do not specify a project in a
+\fBprojmod\fR command line, \fBprojmod\fR validates the argument to \fB-f\fR.
+If you do not use this option, the system project file, \fB/etc/project\fR, is
+modified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-G\fR \fIgroup\fR[,\fIgroup\fR]...]fR
+.ad
+.RS 29n
+Specify a replacement list of member groups of the project. When used in
+conjunction with the \fB-a\fR or \fB-r\fR options, this option specifies a list
+of groups to be added or removed from the project.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-K\fR \fIname\fR[=\fIvalue\fR[,\fIvalue\fR]...]\fR
+.ad
+.RS 29n
+Specify a replacement list of project attributes for the project. When used in
+conjunction with the \fB-a\fR, \fB-r\fR, or \fB-s\fR options, this option
+specifies a list of attribute values to be added, removed, or replaced in the
+project. Attributes must be delimited by semicolons (\fB;\fR). Multiple
+\fB-K\fR options can be specified to set, add, remove, or substitute values on
+multiple keys, such as:
+.sp
+.in +2
+.nf
+-K \fIkey1\fR=\fIvalue1\fR -K "\fIkey2\fR=(\fIvalue2a\fR),(\fIvalue2b\fR)"
+.fi
+.in -2
+
+Resource control attributes use parentheses to specify values for a key.
+Because many user shells interpret parentheses as special characters, it is
+best to enclose an argument to \fB-K\fR that contains parentheses with double
+quotes, as shown above and in EXAMPLES, below. See \fBresource_controls\fR(7)
+for a description of the resource controls you can specify for a project.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR \fInew_projectname\fR\fR
+.ad
+.RS 29n
+Specify the new project name for the project. The \fInew_projectname\fR
+argument is a string consisting of characters from the set of alphabetic
+characters, numeric characters, period (\fB\&.\fR), underline (\fB_\fR), and
+hyphen (\fB-\fR). The first character should be alphabetic. An error message is
+written if these restrictions are not met. The project name must also be unique
+within the project file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR\fR
+.ad
+.RS 29n
+Syntax check. Check the format of the existing system project file and
+modifications only. The contents of the existing project file, such as user
+names, group names, and resources that are specified in the project attributes
+are not checked.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-o\fR\fR
+.ad
+.RS 29n
+This option allows the project ID specified by the \fB-p\fR option to be
+non-unique within the project file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR \fIprojid\fR\fR
+.ad
+.RS 29n
+Specify a new project \fBID\fR for the project. It must be a non-negative
+decimal integer less than \fBMAXUID\fR as defined in \fB<sys/param.h>\fR. This
+value must be unique within the project file if the \fB-o\fR option is not
+specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-r\fR\fR
+.ad
+.RS 29n
+Specify that the users, groups, attributes, or attribute values specified by
+the \fB-U\fR, \fB-G\fR or \fB-K\fR options should be removed from the project,
+rather than replacing the existing member or attribute list.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR\fR
+.ad
+.RS 29n
+Specify that the list of attributes specified by the \fB-K\fR option should
+have their values replaced. If the attributes do not exist, they are added as
+if the a option was used. This option has no effect the \fB-U\fR or \fB-G\fR
+options.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-U\fR \fIuser\fR[,\fIuser\fR]...\fR
+.ad
+.RS 29n
+Specify a replacement list of member users of the project. When used in
+conjunction with the \fB-a\fR or \fB-r\fR options, this option specifies a list
+of users to be added or removed from the project.
+.RE
+
+.SH OPERANDS
+.LP
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fB\fIproject\fR\fR
+.ad
+.RS 11n
+An existing project name to be modified or displayed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fI(none)\fR\fR
+.ad
+.RS 11n
+If no operand is given, the project file is validated without modifying any
+project.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1\fR Using the \fB-K\fR Option for Addition of an Attribute Value
+.sp
+.LP
+Consider the following \fBproject\fR(5) entry:
+
+.sp
+.in +2
+.nf
+salesaudit:111:Auditing Project::sales,finance: \e
+ process.max-file-size=(priv,52428800,deny); \e
+ task.max-lwps=(priv,100,deny)
+.fi
+.in -2
+
+.sp
+.LP
+The preceding would appear as one line in \fB/etc/project\fR. For this and the
+following examples, the focus is on the attributes field in the \fBproject\fR
+entry. That is, the last field, the field following the last semicolon.
+
+.sp
+.LP
+The attributes field for the project \fBsalesaudit\fR lists the following
+resource control:
+
+.sp
+.in +2
+.nf
+task.max-lwps=(priv,1000,signal=KILL)
+.fi
+.in -2
+
+.sp
+.LP
+The following \fBprojmod\fR command adds an action clause to the preceding
+entry:
+
+.sp
+.in +2
+.nf
+# projmod -a -K "task.max-lwps=(priv,100,deny)" salesaudit
+.fi
+.in -2
+
+.sp
+.LP
+\&...with the resulting attributes field in the entry for \fBsalesaudit\fR:
+
+.sp
+.in +2
+.nf
+task.max-lwps=(priv,100,deny),(priv,1000,signal=KILL)
+.fi
+.in -2
+
+.LP
+\fBExample 2\fR Using the \fB-K\fR Option for the Substitution of an Attribute
+Value
+.sp
+.LP
+Assume an attributes field in a \fBproject\fR(5) entry for the project
+\fBsalesaudit\fR that lists the following resource control:
+
+.sp
+.in +2
+.nf
+task.max-lwps=(priv,100,deny),(priv,1000,signal=KILL)
+.fi
+.in -2
+
+.sp
+.LP
+The following \fBprojmod\fR command substitutes the action clause specified in
+the command for the action clauses in the preceding entry:
+
+.sp
+.in +2
+.nf
+# projmod -s -K "task.max-lwps=(priv,500,signal=SIGSTOP)" salesaudit
+.fi
+.in -2
+
+.sp
+.LP
+\&...with the resulting attributes field in the entry for \fBsalesaudit\fR:
+
+.sp
+.in +2
+.nf
+task.max-lwps=(priv,500,signal=SIGSTOP)
+.fi
+.in -2
+
+.LP
+\fBExample 3\fR Using the \fB-K\fR Option for Removal of an Attribute Value
+.sp
+.LP
+Assume an attributes field in a \fBproject\fR(5) entry for a project
+\fBsalesaudit\fR that lists the following resource control:
+
+.sp
+.in +2
+.nf
+task.max-lwps=(priv,100,deny),(priv,1000,signal=KILL)
+.fi
+.in -2
+
+.sp
+.LP
+The following \fBprojmod\fR command removes the first action clause from the
+preceding entry:
+
+.sp
+.in +2
+.nf
+# projmod -r -K "task.max-lwps=(priv,100,deny)" salesaudit
+.fi
+.in -2
+
+.sp
+.LP
+\&...with the resulting attributes field in the entry for \fBsalesaudit\fR:
+
+.sp
+.in +2
+.nf
+task.max-lwps=(priv,1000,signal=KILL)
+.fi
+.in -2
+
+.LP
+\fBExample 4\fR Specifying Multiple Attribute Values
+.sp
+.LP
+Suppose you want to achieve the following resource controls for the project
+\fBsalesaudit\fR:
+
+.sp
+.in +2
+.nf
+task.max-lwps=(priv,100,deny)
+process.max-file-size=(priv,50MB,deny)
+.fi
+.in -2
+
+.sp
+.LP
+The following \fBprojmod\fR command adds these resource controls for
+\fBsalesaudit\fR:
+
+.sp
+.in +2
+.nf
+# projmod -a -K "task.max-lwps=(priv,100,deny)" \e
+-K "process.max-file-size=(priv,50MB,deny)" salesaudit
+.fi
+.in -2
+
+.sp
+.LP
+\&...with the resulting attributes field in the entry for \fBsalesaudit\fR:
+
+.sp
+.in +2
+.nf
+task.max-lwps=(priv,100,deny);process.max-file-size=(priv,52428800,deny)
+.fi
+.in -2
+
+.sp
+.LP
+In this example, note the effect of the use of the modifier and scaling factor
+for the resource control \fBprocess.max-file-size\fR. The specification in
+\fBprojmod\fR:
+
+.sp
+.in +2
+.nf
+"process.max-file-size=(priv,50MB,deny)"
+.fi
+.in -2
+
+.sp
+.LP
+\&...becomes, in \fB/etc/project\fR:
+
+.sp
+.in +2
+.nf
+process.max-file-size=(priv,52428800,deny)
+.fi
+.in -2
+
+.sp
+.LP
+That is, \fB50MB\fR is expanded to \fB52428800\fR. The modifiers, such as MB,
+and scaling factors you can use for resource controls are specified in
+\fBresource_controls\fR(7).
+
+.LP
+\fBExample 5\fR Binding a Pool to a Project
+.sp
+.LP
+The following command sets the \fBproject.pool\fR attribute for the project
+\fBsales\fR.
+
+.sp
+.in +2
+.nf
+# projmod -a -K project.pool=salespool sales
+.fi
+.in -2
+
+.LP
+\fBExample 6\fR Evaluating Input from \fBstdin\fR
+.sp
+.LP
+The following command uses the \fB-f\fR option without a project name operand
+to evaluate the contents of an NIS projects map.
+
+.sp
+.in +2
+.nf
+# ypcat project | projmod -f -
+.fi
+.in -2
+
+.SH EXIT STATUS
+.LP
+In case of an error, \fBprojmod\fR prints an error message and exits with one
+of the following values:
+.sp
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 6n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB2\fR\fR
+.ad
+.RS 6n
+The command syntax was invalid. A usage message for \fBprojmod\fR is displayed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB3\fR\fR
+.ad
+.RS 6n
+An invalid argument was provided to an option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB4\fR\fR
+.ad
+.RS 6n
+The \fIprojid\fR given with the \fB-p\fR option is already in use.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB5\fR\fR
+.ad
+.RS 6n
+The project files contain an error. See \fBproject\fR(5).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB6\fR\fR
+.ad
+.RS 6n
+The project to be modified, group, user, or resource does not exist.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB9\fR\fR
+.ad
+.RS 6n
+The project is already in use.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB10\fR\fR
+.ad
+.RS 6n
+Cannot update the \fB/etc/project\fR file.
+.RE
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/etc/group\fR\fR
+.ad
+.RS 16n
+System file containing group definitions
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/project\fR\fR
+.ad
+.RS 16n
+System project file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/passwd\fR\fR
+.ad
+.RS 16n
+System password file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/shadow\fR\fR
+.ad
+.RS 16n
+System file containing users' encrypted passwords and related information
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability See below.
+.TE
+
+.sp
+.LP
+Invocation is evolving. Human readable output is unstable.
+.SH SEE ALSO
+.LP
+.BR passwd (5),
+.BR project (5),
+.BR attributes (7),
+.BR resource_controls (7),
+.BR groupadd (8),
+.BR groupdel (8),
+.BR groupmod (8),
+.BR projadd (8),
+.BR projdel (8),
+.BR useradd (8),
+.BR userdel (8),
+.BR usermod (8)
+.SH NOTES
+.LP
+The \fBprojmod\fR utility modifies project definitions only in the local
+\fB/etc/project\fR file. If a network name service
+is being used to supplement the local files with additional entries,
+\fBprojmod\fR cannot change information supplied by the network name service.
+However \fBprojmod\fR verifies the uniqueness of project name and project
+\fBID\fR against the external name service.
diff --git a/usr/src/man/man8/prstat.8 b/usr/src/man/man8/prstat.8
new file mode 100644
index 0000000000..9eecb2febd
--- /dev/null
+++ b/usr/src/man/man8/prstat.8
@@ -0,0 +1,894 @@
+'\" te
+.\" Copyright (c) 2013 Gary Mills
+.\" Copyright (c) 2006, 2009 Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 2019 Joyent, Inc.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
+.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PRSTAT 8 "June 6, 2019"
+.SH NAME
+prstat \- report active process statistics
+.SH SYNOPSIS
+.LP
+.nf
+\fBprstat\fR [\fB-acHJLmRrtTvWZ\fR] [\fB-d\fR u | d] [\fB-C\fR \fIpsrsetlist\fR] [\fB-h\fR \fIlgrplist\fR]
+ [\fB-j\fR \fIprojlist\fR] [\fB-k\fR \fItasklist\fR] [\fB-n\fR \fIntop\fR[,\fInbottom\fR]]
+ [\fB-p\fR \fIpidlist\fR] [\fB-P\fR \fIcpulist\fR] [\fB-s\fR \fIkey\fR | \fB-S\fR \fIkey\fR ]
+ [\fB-u\fR \fIeuidlist\fR] [\fB-U\fR \fIuidlist\fR] [\fB-z\fR \fIzoneidlist\fR] [\fB-Z\fR]
+ [\fIinterval\fR [\fIcount\fR]]
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBprstat\fR utility iteratively examines all active processes on the
+system and reports statistics based on the selected output mode and sort order.
+\fBprstat\fR provides options to examine only processes matching specified
+\fBPID\fRs, \fBUID\fRs, zone \fBID\fRs, \fBCPU\fR \fBID\fRs, and processor set
+\fBID\fRs.
+.sp
+.LP
+The \fB-j\fR, \fB-k\fR, \fB-C\fR, \fB-p\fR, \fB-P\fR, \fB-u\fR, \fB-U\fR, and
+\fB-z\fR options accept lists as arguments. Items in a list can be either
+separated by commas or enclosed in quotes and separated by commas or spaces.
+.sp
+.LP
+If you do not specify an option, \fBprstat\fR examines all processes and
+reports statistics sorted by \fBCPU\fR usage.
+.SH OPTIONS
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-a\fR\fR
+.ad
+.sp .6
+.RS 4n
+Report information about processes and users. In this mode \fBprstat\fR
+displays separate reports about processes and users at the same time.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-c\fR\fR
+.ad
+.sp .6
+.RS 4n
+Print new reports below previous reports instead of overprinting them.
+Long names are not truncated in this mode.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-C\fR \fIpsrsetlist\fR\fR
+.ad
+.sp .6
+.RS 4n
+Report only processes or lwps that are bound to processor sets in the given
+list. Each processor set is identified by an integer as reported by
+\fBpsrset\fR(8). The load averages displayed are the sum of the load averages
+of the specified processor sets (see \fBpset_getloadavg\fR(3C)). Processes with
+one or more LWPs bound to processor sets in the given list are reported even
+when the \fB-L\fR option is not used.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-d\fR \fBu | d\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify \fBu\fR for a printed representation of the internal representation of
+time. See \fBtime\fR(2). Specify \fBd\fR for standard date format. See
+\fBdate\fR(1).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-h\fR \fIlgrplist\fR\fR
+.ad
+.sp .6
+.RS 4n
+Report only processes or lwps whose home \fIlgroup\fR is in the given list of
+\fIlgroups\fR. No processes or lwps will be listed for invalid \fIlgroups\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-H\fR\fR
+.ad
+.sp .6
+.RS 4n
+Report information about home \fIlgroup\fR. In this mode, \fBprstat\fR adds an
+extra column showing process or lwps home \fIlgroup\fR with the header LGRP.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-j\fR \fIprojlist\fR\fR
+.ad
+.sp .6
+.RS 4n
+Report only processes or lwps whose project \fBID\fR is in the given list. Each
+project \fBID\fR can be specified as either a project name or a numerical
+project \fBID\fR. See \fBproject\fR(5).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-J\fR\fR
+.ad
+.sp .6
+.RS 4n
+Report information about processes and projects. In this mode \fBprstat\fR
+displays separate reports about processes and projects at the same time.
+A trailing asterisk marks a long name that has been truncated
+to fit the column.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-k\fR \fItasklist\fR\fR
+.ad
+.sp .6
+.RS 4n
+Report only processes or lwps whose task \fBID\fR is in \fItasklist\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-L\fR\fR
+.ad
+.sp .6
+.RS 4n
+Report statistics for each light-weight process (\fBLWP\fR). By default,
+\fBprstat\fR reports only the number of \fBLWP\fRs for each process.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-m\fR\fR
+.ad
+.sp .6
+.RS 4n
+Report microstate process accounting information. This output format includes
+the percentage of time the process has spent in user mode, in system mode, and
+sleeping. It also includes the number of voluntary and involuntary context
+switches, system calls, the number of signals received, and the percentage of
+time the process has spent processing system traps, text page faults, data page
+faults, waiting for user locks and waiting for \fBCPU\fR (latency time).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR \fIntop\fR[\fI,nbottom\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Restrict number of output lines. The \fIntop\fR argument determines how many
+lines of process or \fBlwp\fR statistics are reported, and the \fInbottom\fR
+argument determines how many lines of user, task, project or zone statistics
+are reported if the \fB-a\fR, \fB-t\fR, \fB-T\fR, \fB-J\fR or \fB-Z\fR options
+are specified. By default, \fBprstat\fR displays as many lines of output that
+fit in a window or terminal. When you specify the \fB-c\fR option or direct the
+output to a file, the default values for \fBntop\fR and \fBnbottom\fR are
+\fB15\fR and \fB5\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR \fIpidlist\fR\fR
+.ad
+.sp .6
+.RS 4n
+Report only processes whose process \fBID\fR is in the given list.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-P\fR \fIcpulist\fR\fR
+.ad
+.sp .6
+.RS 4n
+Report only processes or \fBlwp\fRs which have most recently executed on a
+\fBCPU\fR in the given list. Each \fBCPU\fR is identified by an integer as
+reported by \fBpsrinfo\fR(8).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-R\fR\fR
+.ad
+.sp .6
+.RS 4n
+Put \fBprstat\fR in the real time scheduling class. When this option is used,
+\fBprstat\fR is given priority over time-sharing and interactive processes.
+This option is available only for superuser.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-r\fR\fR
+.ad
+.sp .6
+.RS 4n
+Disable lookups for user names and project names. (Note that this does not
+apply to lookups for the \fB-j\fR, \fB-u\fR, or \fB-U\fR options.)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR \fIkey\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sort output lines (that is, processes, \fBlwp\fRs, or users) by \fIkey\fR in
+descending order. Only one \fIkey\fR can be used as an argument.
+.sp
+There are five possible key values:
+.sp
+.ne 2
+.na
+\fBcpu\fR
+.ad
+.sp .6
+.RS 4n
+Sort by process \fBCPU\fR usage. This is the default.
+.RE
+
+.sp
+.ne 2
+.na
+\fBpri\fR
+.ad
+.sp .6
+.RS 4n
+Sort by process priority.
+.RE
+
+.sp
+.ne 2
+.na
+\fBrss\fR
+.ad
+.sp .6
+.RS 4n
+Sort by resident set size.
+.RE
+
+.sp
+.ne 2
+.na
+\fBsize\fR
+.ad
+.sp .6
+.RS 4n
+Sort by size of process image.
+.RE
+
+.sp
+.ne 2
+.na
+\fBtime\fR
+.ad
+.sp .6
+.RS 4n
+Sort by process execution time.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-S\fR \fIkey\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sort output lines by \fIkey\fR in ascending order. Possible \fIkey\fR values
+are the same as for the \fB-s\fR option. See \fB-s\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-t\fR\fR
+.ad
+.sp .6
+.RS 4n
+Report total usage summary for each user. The summary includes the total number
+of processes or \fBLWP\fRs owned by the user, total size of process images,
+total resident set size, total cpu time, and percentages of recent cpu time and
+system memory.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-T\fR\fR
+.ad
+.sp .6
+.RS 4n
+Report information about processes and tasks. In this mode \fBprstat\fR
+displays separate reports about processes and tasks at the same time.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-u\fR \fIeuidlist\fR\fR
+.ad
+.sp .6
+.RS 4n
+Report only processes whose effective user \fBID\fR is in the given list. Each
+user \fBID\fR may be specified as either a login name or a numerical user
+\fBID\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-U\fR \fIuidlis\fRt\fR
+.ad
+.sp .6
+.RS 4n
+Report only processes whose real user \fBID\fR is in the given list. Each user
+\fBID\fR may be specified as either a login name or a numerical user \fBID\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.sp .6
+.RS 4n
+Same as \fB-m\fR, for backwards compatibility.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-W\fR\fR
+.ad
+.sp .6
+.RS 4n
+Truncate long names even when \fBprstat\fR would normally print them
+in full.
+A trailing asterisk marks a long name that has been truncated
+to fit the column.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-z\fR \fIzoneidlist\fR\fR
+.ad
+.sp .6
+.RS 4n
+Report only processes or LWPs whose zone ID is in the given list. Each zone ID
+can be specified as either a zone name or a numerical zone ID. See
+\fBzones\fR(7).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-Z\fR\fR
+.ad
+.sp .6
+.RS 4n
+Report information about processes and zones. In this mode, \fBprstat\fR
+displays separate reports about processes and zones at the same time.
+A trailing asterisk marks a long name that has been truncated
+to fit the column.
+.RE
+
+.SH OUTPUT
+.LP
+The following list defines the column headings and the meanings of a
+\fBprstat\fR report:
+.sp
+.ne 2
+.na
+\fBPID\fR
+.ad
+.sp .6
+.RS 4n
+The process \fBID\fR of the process.
+.RE
+
+.sp
+.ne 2
+.na
+\fBUSERNAME\fR
+.ad
+.sp .6
+.RS 4n
+The real user (login) name or real user \fBID\fR.
+A trailing asterisk marks a long name that has been truncated
+to fit the column.
+.RE
+
+.sp
+.ne 2
+.na
+\fBSWAP\fR
+.ad
+.sp .6
+.RS 4n
+The total virtual memory size of the process, including all mapped files and
+devices, in kilobytes (\fBK\fR), megabytes (\fBM\fR), or gigabytes (\fBG\fR).
+.RE
+
+.sp
+.ne 2
+.na
+\fBRSS\fR
+.ad
+.sp .6
+.RS 4n
+The resident set size of the process (\fBRSS\fR), in kilobytes (\fBK\fR),
+megabytes (\fBM\fR), or gigabytes (\fBG\fR). The RSS value is an estimate
+provided by \fBproc\fR(5) that might underestimate the actual
+per-process resident set size, but is generally accurate for the aggregated
+resident set size. Users who want to get more accurate usage information for
+capacity planning should use the \fB-x\fR option to \fBpmap\fR(1) for
+per-process results instead.
+.RE
+
+.sp
+.ne 2
+.na
+\fBSTATE\fR
+.ad
+.sp .6
+.RS 4n
+The state of the process:
+.sp
+.ne 2
+.na
+\fBcpu\fIN\fR\fR
+.ad
+.sp .6
+.RS 4n
+Process is running on \fBCPU\fR \fIN\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBsleep\fR
+.ad
+.sp .6
+.RS 4n
+Sleeping: process is waiting for an event to complete.
+.RE
+
+.sp
+.ne 2
+.na
+\fBwait\fR
+.ad
+.sp .6
+.RS 4n
+Waiting: process is waiting for CPU usage to drop to the CPU-caps enforced
+limits. See the description of \fBCPU-caps\fR in \fBresource_controls\fR(7).
+.RE
+
+.sp
+.ne 2
+.na
+\fBrun\fR
+.ad
+.sp .6
+.RS 4n
+Runnable: process in on run queue.
+.RE
+
+.sp
+.ne 2
+.na
+\fBzombie\fR
+.ad
+.sp .6
+.RS 4n
+Zombie state: process terminated and parent not waiting.
+.RE
+
+.sp
+.ne 2
+.na
+\fBstop\fR
+.ad
+.sp .6
+.RS 4n
+Process is stopped.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fBPRI\fR
+.ad
+.sp .6
+.RS 4n
+The priority of the process. Larger numbers mean higher priority.
+.RE
+
+.sp
+.ne 2
+.na
+\fBNICE\fR
+.ad
+.sp .6
+.RS 4n
+Nice value used in priority computation. Only processes in certain scheduling
+classes have a nice value.
+.RE
+
+.sp
+.ne 2
+.na
+\fBTIME\fR
+.ad
+.sp .6
+.RS 4n
+The cumulative execution time for the process.
+.RE
+
+.sp
+.ne 2
+.na
+\fBCPU\fR
+.ad
+.sp .6
+.RS 4n
+The percentage of recent \fBCPU\fR time used by the process. If executing in a
+non-global \fBzone\fR and the pools facility is active, the percentage will be
+that of the processors in the processor set in use by the pool to which the
+\fBzone\fR is bound.
+.RE
+
+.sp
+.ne 2
+.na
+\fBPROCESS\fR
+.ad
+.sp .6
+.RS 4n
+The name of the process (name of executed file).
+.RE
+
+.sp
+.ne 2
+.na
+\fBLWP\fR
+.ad
+.sp .6
+.RS 4n
+The \fBlwp\fR \fBID\fR of the \fBlwp\fR being reported, as well as the LWP
+name if any is set.
+.RE
+
+.sp
+.ne 2
+.na
+\fBNLWP\fR
+.ad
+.sp .6
+.RS 4n
+The number of \fBlwp\fRs in the process.
+.RE
+
+.sp
+.LP
+With the some options, in addition to a number of the column headings shown
+above, there are:
+.sp
+.ne 2
+.na
+\fBNPROC\fR
+.ad
+.sp .6
+.RS 4n
+Number of processes in a specified collection.
+.RE
+
+.sp
+.ne 2
+.na
+\fBMEMORY\fR
+.ad
+.sp .6
+.RS 4n
+Percentage of memory used by a specified collection of processes.
+.RE
+
+.sp
+.LP
+The following columns are displayed when the \fB-v\fR or \fB-m\fR option is
+specified
+.sp
+.ne 2
+.na
+\fBUSR\fR
+.ad
+.sp .6
+.RS 4n
+The percentage of time the process has spent in user mode.
+.RE
+
+.sp
+.ne 2
+.na
+\fBSYS\fR
+.ad
+.sp .6
+.RS 4n
+The percentage of time the process has spent in system mode.
+.RE
+
+.sp
+.ne 2
+.na
+\fBTRP\fR
+.ad
+.sp .6
+.RS 4n
+The percentage of time the process has spent in processing system traps.
+.RE
+
+.sp
+.ne 2
+.na
+\fBTFL\fR
+.ad
+.sp .6
+.RS 4n
+The percentage of time the process has spent processing text page faults.
+.RE
+
+.sp
+.ne 2
+.na
+\fBDFL\fR
+.ad
+.sp .6
+.RS 4n
+The percentage of time the process has spent processing data page faults.
+.RE
+
+.sp
+.ne 2
+.na
+\fBLCK\fR
+.ad
+.sp .6
+.RS 4n
+The percentage of time the process has spent waiting for user locks.
+.RE
+
+.sp
+.ne 2
+.na
+\fBSLP\fR
+.ad
+.sp .6
+.RS 4n
+The percentage of time the process has spent sleeping.
+.RE
+
+.sp
+.ne 2
+.na
+\fBLAT\fR
+.ad
+.sp .6
+.RS 4n
+The percentage of time the process has spent waiting for CPU.
+.RE
+
+.sp
+.ne 2
+.na
+\fBVCX\fR
+.ad
+.sp .6
+.RS 4n
+The number of voluntary context switches.
+.RE
+
+.sp
+.ne 2
+.na
+\fBICX\fR
+.ad
+.sp .6
+.RS 4n
+The number of involuntary context switches.
+.RE
+
+.sp
+.ne 2
+.na
+\fBSCL\fR
+.ad
+.sp .6
+.RS 4n
+The number of system calls.
+.RE
+
+.sp
+.ne 2
+.na
+\fBSIG\fR
+.ad
+.sp .6
+.RS 4n
+The number of signals received.
+.RE
+
+.sp
+.LP
+Under the \fB-L\fR option, one line is printed for each \fBlwp\fR in the
+process and some reporting fields show the values for the \fBlwp\fR, not the
+process.
+.sp
+.LP
+The following column is displayed when the \fB-H\fR option is specified:
+.sp
+.ne 2
+.na
+\fBLGRP\fR
+.ad
+.sp .6
+.RS 4n
+The home \fIlgroup\fR of the process or lwp.
+.RE
+
+.SH OPERANDS
+.LP
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fB\fIcount\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the number of times that the statistics are repeated. By default,
+\fBprstat\fR reports statistics until a termination signal is received.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIinterval\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the sampling interval in seconds; the default interval is \fB5\fR
+seconds.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRReporting the Five Most Active Super-User Processes
+.sp
+.LP
+The following command reports the five most active super-user processes running
+on \fBCPU1\fR and \fBCPU2\fR:
+
+.sp
+.in +2
+.nf
+example% prstat -u root -n 5 -P 1,2 1 1
+
+PID USERNAME SWAP RSS STATE PRI NICE TIME CPU PROCESS/LWP
+ 306 root 3024K 1448K sleep 58 0 0:00.00 0.3% sendmail/1
+ 102 root 1600K 592K sleep 59 0 0:00.00 0.1% in.rdisc/1
+ 250 root 1000K 552K sleep 58 0 0:00.00 0.0% utmpd/1
+ 288 root 1720K 1032K sleep 58 0 0:00.00 0.0% sac/1
+ 1 root 744K 168K sleep 58 0 0:00.00 0.0% init/1
+TOTAL: 25, load averages: 0.05, 0.08, 0.12
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRDisplaying Verbose Process Usage Information
+.sp
+.LP
+The following command displays verbose process usage information about
+processes with lowest resident set sizes owned by users \fBroot\fR and
+\fBjohn\fR.
+
+.sp
+.in +2
+.nf
+example% prstat -S rss -n 5 -vc -u root,john
+
+ PID USERNAME USR SYS TRP TFL DFL LCK SLP LAT VCX ICX SCL SIG PROCESS/LWP
+ 1 root 0.0 0.0 - - - - 100 - 0 0 0 0 init/1
+ 102 root 0.0 0.0 - - - - 100 - 0 0 3 0 in.rdisc/1
+ 250 root 0.0 0.0 - - - - 100 - 0 0 0 0 utmpd/1
+1185 john 0.0 0.0 - - - - 100 - 0 0 0 0 csh/1
+ 240 root 0.0 0.0 - - - - 100 - 0 0 0 0 powerd/4
+ TOTAL: 71, load averages: 0.02, 0.04, 0.08
+
+.fi
+.in -2
+.sp
+
+.SH EXIT STATUS
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.sp .6
+.RS 4n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB1\fR\fR
+.ad
+.sp .6
+.RS 4n
+An error occurred.
+.RE
+
+.SH SEE ALSO
+.LP
+.BR date (1),
+.BR lgrpinfo (1),
+.BR plgrp (1),
+.BR proc (1),
+.BR ps (1),
+.BR time (2),
+.BR pset_getloadavg (3C),
+.BR proc (5),
+.BR project (5),
+.BR attributes (7),
+.BR resource_controls (7),
+.BR zones (7),
+.BR psrinfo (8),
+.BR psrset (8),
+.BR sar (8)
+.SH NOTES
+.LP
+The snapshot of system usage displayed by \fBprstat\fR is true only for a
+split-second, and it may not be accurate by the time it is displayed. When the
+\fB-m\fR option is specified, \fBprstat\fR tries to turn on microstate
+accounting for each process; the original state is restored when \fBprstat\fR
+exits. See \fBproc\fR(5) for additional information about the microstate
+accounting facility.
+.sp
+.LP
+The total memory size reported in the SWAP and RSS columns for groups of
+processes can sometimes overestimate the actual amount of memory used by
+processes with shared memory segments.
diff --git a/usr/src/man/man8/prtconf.8 b/usr/src/man/man8/prtconf.8
new file mode 100644
index 0000000000..34594e3ca5
--- /dev/null
+++ b/usr/src/man/man8/prtconf.8
@@ -0,0 +1,230 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 2012, Joyent, Inc. All Rights Reserved
+.\" Copyright 2019, Peter tribble.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PRTCONF 8 "Jan 21, 2019"
+.SH NAME
+prtconf \- print system configuration
+.SH SYNOPSIS
+.nf
+\fB/usr/sbin/prtconf\fR [\fB-V\fR] | [\fB-F\fR] | [\fB-m\fR] | [\fB-x\fR] | [\fB-bpv\fR] | [\fB-acdDPv\fR]
+ [\fIdev_path\fR]
+.fi
+
+.SH DESCRIPTION
+The \fBprtconf\fR command prints the system configuration information. The
+output includes the total amount of memory, and the configuration of system
+peripherals formatted as a device tree.
+.sp
+.LP
+If a device path is specified on the command line for those command options
+that can take a device path, \fBprtconf\fR will only display information for
+that device node.
+.SH OPTIONS
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB-a\fR
+.ad
+.RS 6n
+Display all the ancestors device nodes, up to the root node of the device tree,
+for the device specified on the command line.
+.RE
+
+.sp
+.ne 2
+.na
+\fB-b\fR
+.ad
+.RS 6n
+Display the firmware device tree root properties for the purpose of platform
+identification. These properties are "name", "compatible", "banner-name" and
+"model".
+.RE
+
+.sp
+.ne 2
+.na
+\fB-c\fR
+.ad
+.RS 6n
+Display the device subtree rooted at the device node specified on the command
+line, that is, display all the children of the device node specified on the
+command line.
+.RE
+
+.sp
+.ne 2
+.na
+\fB-d\fR
+.ad
+.RS 6n
+Display vendor ID and device ID for PCI and PCI Express devices, in addition to
+the nodename. If the information is known, the vendor name and device name will
+also be shown.
+.RE
+
+.sp
+.ne 2
+.na
+\fB-D\fR
+.ad
+.RS 6n
+For each system peripheral in the device tree, displays the name of the device
+driver used to manage the peripheral.
+.RE
+
+.sp
+.ne 2
+.na
+\fB-F\fR
+.ad
+.RS 6n
+Returns the device path name of the console frame buffer,
+if one exists. If there is no frame buffer, \fBprtconf\fR returns a non-zero
+exit code. This flag must be used by itself. It returns only the name of the
+console, frame buffer device or a non-zero exit code. For example, if the
+console frame buffer on a SUNW,Ultra-30 is \fBffb\fR, the command returns:
+\fB/SUNW,ffb@1e,0:ffb0\fR. This option could be used to create a symlink for
+\fB/dev/fb\fR to the actual console device.
+.RE
+
+.sp
+.ne 2
+.na
+\fB-m\fR
+.ad
+.RS 6n
+Displays the amount of system memory in megabytes.
+This flag must be used by itself.
+.RE
+
+
+.ne 2
+.na
+\fB-p\fR
+.ad
+.RS 6n
+Displays information derived from the device tree provided by the firmware
+(PROM) on SPARC platforms or the booting system on x86 platforms.The device
+tree information displayed using this option is a snapshot of the initial
+configuration and may not accurately reflect reconfiguration events that occur
+later.
+.RE
+
+.sp
+.ne 2
+.na
+\fB-P\fR
+.ad
+.RS 6n
+Includes information about pseudo devices. By default, information regarding
+pseudo devices is omitted.
+.RE
+
+.sp
+.ne 2
+.na
+\fB-v\fR
+.ad
+.RS 6n
+Specifies verbose mode.
+.RE
+
+.sp
+.ne 2
+.na
+\fB-V\fR
+.ad
+.RS 6n
+Displays platform-dependent \fBPROM\fR (on SPARC platforms) or booting system
+(on x86 platforms) version information. This flag must be used by itself. The
+output is a string. The format of the string is arbitrary and
+platform-dependent.
+.RE
+
+.sp
+.ne 2
+.na
+\fB-x\fR
+.ad
+.RS 6n
+A legacy flag that reported if the firmware on this system is 64-bit ready.
+As illumos only runs on 64-bit platforms, this flag is kept for compatibility
+only, and zero is always returned.
+.sp
+This flag overrides all other flags and must be used by itself.
+.RE
+
+.SH OPERANDS
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fIdev_path\fR
+.ad
+.RS 12n
+The path to a target device minor node, device nexus node, or device link for
+which device node configuration information is displayed
+.RE
+
+.SH EXIT STATUS
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB0\fR
+.ad
+.RS 12n
+No error occurred.
+.RE
+
+.sp
+.ne 2
+.na
+\fBnon-zero\fR
+.ad
+.RS 12n
+With the \fB-F\fR option, a non-zero return value means that the
+output device is not a frame buffer. In all other cases, a
+non-zero return value means that an error occurred.
+.RE
+
+.SH ATTRIBUTES
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+Interface Stability Unstable
+.TE
+
+.SH SEE ALSO
+.BR openprom (4D),
+.BR attributes (7),
+.BR fuser (8),
+.BR modinfo (8),
+.BR sysdef (8)
+.SH NOTES
+The output of the \fBprtconf\fR command is highly dependent on the version of
+the \fBPROM\fR installed in the system. The output will be affected in
+potentially all circumstances.
+.sp
+.LP
+The \fBdriver not attached\fR message means that no driver is currently
+attached to that instance of the device. In general, drivers are loaded and
+installed (and attached to hardware instances) on demand, and when needed, and
+may be uninstalled and unloaded when the device is not in use.
+.sp
+.LP
+On x86 platforms, the use of \fBprtconf\fR \fB-vp\fR provides a subset of
+information from \fBprtconf\fR \fB-v\fR. The value of integer properties from
+\fBprtconf\fR \fB-vp\fR might require byte swapping for correct interpretation.
diff --git a/usr/src/man/man8/prtdiag.8 b/usr/src/man/man8/prtdiag.8
new file mode 100644
index 0000000000..86efe2a36d
--- /dev/null
+++ b/usr/src/man/man8/prtdiag.8
@@ -0,0 +1,114 @@
+'\" te
+.\" Copyright 2019 Peter Tribble.
+.\" Copyright 1989 AT&T Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PRTDIAG 8 "Jun 13, 2019"
+.SH NAME
+prtdiag \- display system diagnostic information
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/prtdiag\fR [\fB-v\fR] [\fB-l\fR]
+.fi
+
+.SH DESCRIPTION
+.LP
+\fBprtdiag\fR displays system configuration and diagnostic information on
+\fBsun4u\fR, \fBsun4v\fR, and x86 systems.
+.sp
+.LP
+The diagnostic information lists any failed field replaceable units
+(\fBFRU\fRs) in the system.
+.sp
+.LP
+The interface, output, and location in the directory hierarchy for
+\fBprtdiag\fR are uncommitted and subject to change in future releases.
+.SH OPTIONS
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-l\fR\fR
+.ad
+.RS 6n
+Log output. If failures or errors exist in the system, output this information
+to \fBsyslogd\fR(8) only.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.RS 6n
+Verbose mode. Displays the time of the most recent \fBAC\fR Power failure, and
+the most recent hardware fatal error information, and (if applicable)
+environmental status. The hardware fatal error information is useful to repair
+and manufacturing for detailed diagnostics of \fBFRU\fRs.
+.RE
+
+.SH EXIT STATUS
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 5n
+No failures or errors are detected in the system.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB1\fR\fR
+.ad
+.RS 5n
+Failures or errors are detected in the system.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB2\fR\fR
+.ad
+.RS 5n
+An internal \fBprtdiag\fR error occurred, for example, out of memory.
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Unstable*
+.TE
+
+.sp
+.LP
+*The output is unstable.
+.SH SEE ALSO
+.LP
+.BR openprom (4D),
+.BR attributes (7),
+.BR modinfo (8),
+.BR prtconf (8),
+.BR psrinfo (8),
+.BR sysdef (8),
+.BR syslogd (8)
+.SH NOTES
+.LP
+Not all diagnostic and system information is available on every
+platform, and therefore cannot be displayed by \fBprtdiag\fR. On those
+platforms, further information can be obtained from the System Controller.
diff --git a/usr/src/man/man8/prtdscp.8 b/usr/src/man/man8/prtdscp.8
new file mode 100644
index 0000000000..8412299400
--- /dev/null
+++ b/usr/src/man/man8/prtdscp.8
@@ -0,0 +1,148 @@
+'\" te
+.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PRTDSCP 8 "Apr 25, 2006"
+.SH NAME
+prtdscp \- display \fBDSCP\fR \fBIP\fR addresses
+.SH SYNOPSIS
+.LP
+.nf
+\fBprtdscp\fR [\fB-v\fR ]
+.fi
+
+.LP
+.nf
+\fBprtdscp\fR [\fB-v\fR ] \fB-h\fR
+.fi
+
+.LP
+.nf
+\fBprtdscp\fR [\fB-v\fR ] \fB-d\fR
+.fi
+
+.LP
+.nf
+\fBprtdscp\fR [\fB-v\fR ] \fB-s\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBprtdscp\fR displays the \fBIP\fR addresses associated with a Domain to
+Service Processor Communications Protocol (\fBDSCP\fR) link. If no arguments
+are specified, \fBprtdscp\fR displays the \fBIP\fR addresses on both ends of
+the \fBDSCP\fR link. The \fBIP\fR address of either the Service Processor or
+domain side can be displayed separately by the use of the \fB-s\fR or \fB-d\fR
+options, respectively.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.RS 6n
+Verbose mode. Print additional details about the program's internal progress to
+\fBstderr\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-h\fR\fR
+.ad
+.RS 6n
+Help. Print a brief synopsis of the program's usage and exit. All other command
+line arguments are ignored.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-d\fR\fR
+.ad
+.RS 6n
+Display only the local domain's \fBIP\fR address.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR\fR
+.ad
+.RS 6n
+Display only the remote Service Processor's \fBIP\fR address.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRDisplaying both addresses
+.sp
+.LP
+The following example displays both the local domain's \fBIP\fR address and the
+remote \fBSP\fR's \fBIP\fR address:
+
+.sp
+.in +2
+.nf
+\fB# prtdscp\fR
+Domain Address: 192.168.103.2
+SP Address: 192.168.103.1
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRDisplaying the local \fBIP\fR address
+.sp
+.LP
+The following example displays the local domain's \fBIP\fR address:
+
+.sp
+.in +2
+.nf
+\fB# prtdscp -d\fR
+192.168.103.2
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRDisplaying the remote \fBIP\fR address
+.sp
+.LP
+The following example display the remote \fBSP\fR's \fBIP\fR address:
+
+.sp
+.in +2
+.nf
+\fB# prtdscp -s\fR
+192.168.103.1
+.fi
+.in -2
+.sp
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7)
diff --git a/usr/src/man/man8/prtfru.8 b/usr/src/man/man8/prtfru.8
new file mode 100644
index 0000000000..c5d6cf4b27
--- /dev/null
+++ b/usr/src/man/man8/prtfru.8
@@ -0,0 +1,110 @@
+'\" te
+.\" Copyright (c) 2002, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PRTFRU 8 "April 9, 2016"
+.SH NAME
+prtfru \- print FRUID-specific information about the FRUs on a system or domain
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/prtfru\fR [\fB-d\fR] | [\fB-clx\fR] [\fIcontainer\fR]
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBprtfru\fR utility is used to obtain \fBFRUID\fR data from the system or
+domain. Its output is that of a tree structure echoing the path in the
+\fBFRU\fR (Field-Replaceable Unit) tree to each container. When a container is
+found, the data from that container is printed in a tree-like structure as
+well.
+.sp
+.LP
+\fBprtfru\fR without any arguments will print the \fBFRU\fR hierarchy and all
+of the \fBFRUID\fR container data. \fBprtfru\fR prints to stdout which may be
+redirected to a file.
+.SH OPTIONS
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-c\fR \fR
+.ad
+.RS 7n
+Prints \fIonly\fR the containers and their data. This option does not print the
+\fBFRU\fR tree hierarchy.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-d\fR \fR
+.ad
+.RS 7n
+Prints a \fBDTD\fR for the current registry to stdout.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR \fR
+.ad
+.RS 7n
+Prints \fIonly\fR the \fBFRU\fR tree hierarchy. This option does not print the
+container data.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-x\fR \fR
+.ad
+.RS 7n
+Prints in \fBXML\fR format with a system identifier (SYSTEM) of
+\fBprtfrureg.dtd\fR.
+.RE
+
+.sp
+.LP
+Options \fB-c\fR and \fB-l\fR can be used together to obtain a list of the
+containers.
+.SH OPERANDS
+.LP
+The following operand is supported:
+.sp
+.ne 2
+.na
+\fB\fIcontainer\fR\fR
+.ad
+.RS 13n
+The name of a particular container in the \fBFRU\fR hierarchy, that is, either
+the name or path/name of a container as displayed in the \fB-l\fR option.
+.RE
+
+.SH EXIT STATUS
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 6n
+All information was found and printed successfully.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB>0\fR\fR
+.ad
+.RS 6n
+An error has occurred.
+.RE
+
+.SH SEE ALSO
+.LP
+.BR attributes (7),
+.BR fruadm (8)
diff --git a/usr/src/man/man8/prtpicl.8 b/usr/src/man/man8/prtpicl.8
new file mode 100644
index 0000000000..a3c6eac237
--- /dev/null
+++ b/usr/src/man/man8/prtpicl.8
@@ -0,0 +1,70 @@
+'\" te
+.\" Copyright (c) 2000, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PRTPICL 8 "Jun 2, 2003"
+.SH NAME
+prtpicl \- print PICL tree
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/prtpicl\fR [\fB-c\fR \fIpicl_class\fR] [\fB-v\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBprtpicl\fR command prints the \fBPICL\fR tree maintained by the
+\fBPICL\fR daemon. The output of \fBprtpicl\fR includes the name and \fBPICL\fR
+class of the nodes.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-c\fR \fIpicl_class\fR\fR
+.ad
+.RS 17n
+Print only the nodes of the named \fBPICL\fR class.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.RS 17n
+Print in verbose mode. In verbose mode, \fBprtpicl\fR prints a list of
+properties and values for each node. Verbose mode is disabled by default.
+.RE
+
+.SH EXIT STATUS
+.sp
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR \fR
+.ad
+.RS 12n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnon-zero\fR\fR
+.ad
+.RS 12n
+An error occurred.
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7),
+.BR picld (8)
diff --git a/usr/src/man/man8/prtvtoc.8 b/usr/src/man/man8/prtvtoc.8
new file mode 100644
index 0000000000..f006154428
--- /dev/null
+++ b/usr/src/man/man8/prtvtoc.8
@@ -0,0 +1,206 @@
+'\" te
+.\" Copyright 1989 AT&T All Rights Reserved. Copyright (c) 2002, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PRTVTOC 8 "Apr 14, 2020"
+.SH NAME
+prtvtoc \- report information about a disk geometry and partitioning
+.SH SYNOPSIS
+.nf
+\fBprtvtoc\fR [\fB-fhs\fR] [\fB-t\fR \fIvfstab\fR] [\fB-m\fR \fImnttab\fR] \fIdevice\fR
+.fi
+
+.SH DESCRIPTION
+The \fBprtvtoc\fR command allows the contents of the label to be viewed. The
+command can be used only by the super-user.
+.sp
+.LP
+The \fIdevice\fR name can be the file name of a raw device in the form of
+\fB/dev/rdsk/c*t*d*s2\fR or can be the file name of a block device in the form
+of \fB/dev/dsk/c*t*d*s2\fR.
+.SH OPTIONS
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-f\fR\fR
+.ad
+.RS 13n
+Report on the disk free space, including the starting block address of the free
+space, number of blocks, and unused partitions.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-h\fR\fR
+.ad
+.RS 13n
+Omit the headers from the normal output.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-m\fR\fI mnttab\fR\fR
+.ad
+.RS 13n
+Use \fImnttab\fR as the list of mounted filesystems, in place of
+\fB/etc/mnttab\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR\fR
+.ad
+.RS 13n
+Omit all headers but the column header from the normal output.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-t\fR\fI vfstab\fR\fR
+.ad
+.RS 13n
+Use \fIvfstab\fR as the list of filesystem defaults, in place of
+\fB/etc/vfstab\fR.
+.RE
+
+.SH EXAMPLES
+\fBExample 1 \fRUsing the \fBprtvtoc\fR Command
+.sp
+.LP
+The following example uses the \fBprtvtoc\fR command on a 424-megabyte hard
+disk:
+
+.sp
+.in +2
+.nf
+example# prtvtoc /dev/rdsk/c0t3d0s2
+* /dev/rdsk/c0t3d0s2 partition map
+*
+* Dimensions:
+* 512 bytes/sector
+* 80 sectors/track
+* 9 tracks/cylinder
+* 720 sectors/cylinder
+* 2500 cylinders
+* 1151 accessible cylinders
+*
+* Flags:
+* 1: unmountable
+* 10: read-only
+* First Sector Last
+* Partition Tag Flags Sector Count Sector Mount Directory
+ 0 2 00 0 76320 76319 /
+ 1 3 01 76320 132480 208799
+ 2 5 00 0 828720 828719
+ 5 6 00 208800 131760 340559 /opt
+ 6 4 00 340560 447120 787679 /usr
+ 7 8 00 787680 41040 828719 /export/home
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The data in the \fBTag\fR column above indicates the type of partition, as
+follows:
+
+.sp
+
+.sp
+.TS
+c c
+l l .
+\fIName\fR \fINumber\fR
+UNASSIGNED 0x00
+BOOT 0x01
+ROOT 0x02
+SWAP 0x03
+USR 0x04
+BACKUP 0x05
+STAND 0x06
+VAR 0x07
+HOME 0x08
+ALTSCTR 0x09
+CACHE 0x0a
+RESERVED 0x0b
+.TE
+
+.sp
+.LP
+The data in the \fBFlags\fR column above indicates how the partition is to be
+mounted, as follows:
+
+.sp
+
+.sp
+.TS
+l l
+l l .
+\fIName\fR \fINumber\fR
+MOUNTABLE, READ AND WRITE 0x00
+NOT MOUNTABLE 0x01
+MOUNTABLE, READ ONLY 0x10
+.TE
+
+.LP
+\fBExample 2 \fRUsing the \fBprtvtoc\fR Command with the \fB-f\fR Option
+.sp
+.LP
+The following example uses the \fBprtvtoc\fR command with the \fB-f\fR option
+on a 424-megabyte hard disk:
+
+.sp
+.in +2
+.nf
+example# prtvtoc \fB-f\fR /dev/rdsk/c0t3d0s2
+FREE_START=0 FREE_SIZE=0 FREE_COUNT=0 FREE_PART=34
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRUsing the \fBprtvtoc\fR Command on a Disk Over One Terabyte
+.sp
+.LP
+The following example uses uses the \fBprtvtoc\fR command on a disk over one
+terabyte:.
+
+.sp
+.in +2
+.nf
+example# prtvtoc /dev/rdsk/c1t1d0s2
+* /dev/rdsk/c1t1d0s2 partition map
+*
+* Dimensions:
+* 512 bytes/sector
+* 3187630080 sectors
+* 3187630013 accessible sectors
+*
+* Flags:
+* 1: unmountable
+* 10: read-only
+*
+* First Sector Last
+* Partition Tag Flags Sector Count Sector Mount Directory
+ 0 2 00 34 262144 262177
+ 1 3 01 262178 262144 524321
+ 6 4 00 524322 3187089340 3187613661
+ 8 11 00 3187613662 16384 318763004
+.fi
+.in -2
+.sp
+
+.SH SEE ALSO
+.BR attributes (7),
+.BR devinfo (8),
+.BR fmthard (8),
+.BR format (8),
+.BR mount (8)
+.SH WARNINGS
+The \fBmount\fR command does not check the "not mountable" bit.
diff --git a/usr/src/man/man8/psradm.8 b/usr/src/man/man8/psradm.8
new file mode 100644
index 0000000000..41ab830106
--- /dev/null
+++ b/usr/src/man/man8/psradm.8
@@ -0,0 +1,362 @@
+'\" te
+.\" Copyright (c) 2008 Sun Microsystems, Inc.
+.\" All Rights Reserved
+.\" Copyright 2019 Joyent, Inc.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PSRADM 8 "Apr 25, 2019"
+.SH NAME
+psradm \- change processor operational status
+.SH SYNOPSIS
+.LP
+.nf
+\fBpsradm\fR \fB-f\fR | \fB-i\fR | \fB-n\fR | \fB-s\fR [\fB-v\fR] [\fB-F\fR] \fIprocessor_id\fR
+.fi
+
+.LP
+.nf
+\fBpsradm\fR \fB-a\fR \fB-f\fR | \fB-i\fR | \fB-n\fR | \fB-s\fR [\fB-v\fR] [\fB-F\fR]
+.fi
+
+.LP
+.nf
+\fBpsradm\fR \fB-aS\fR [\fB-v\fR]
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBpsradm\fR utility changes the operational status of processors. The
+legal states for the processor are \fBon-line\fR, \fBoff-line\fR, \fBspare\fR,
+\fBfaulted\fR, \fBno-intr\fR, and \fBdisabled\fR.
+.sp
+.LP
+An \fBon-line\fR processor processes \fBLWPs\fR (lightweight processes) and can
+be interrupted by I/O devices in the system.
+.sp
+.LP
+An \fBoff-line\fR processor does not process any \fBLWPs.\fR Usually, an
+\fBoff-line\fR processor is not interruptible by I/O devices in the system. On
+some processors or under certain conditions, it might not be possible to
+disable interrupts for an \fBoff-line\fR processor. Thus, the actual effect of
+being \fBoff-line\fR might vary from machine to machine.
+.sp
+.LP
+A spare processor does not process any LWPs. A spare processor can be brought
+\fBon-line\fR, \fBoff-line\fR or to \fBno-intr\fR by a privileged user of the
+system or by the kernel in response to changes in the system state.
+.sp
+.LP
+A faulted processor is identified by the kernel, which monitors the behavior of
+processors over time. A privileged user can set the state of a faulted
+processor to be \fBon-line\fR, \fBoff-line\fR, \fBspare\fR or \fBno-intr\fR,
+but must use the force option to do so.
+.sp
+.LP
+A \fBno-intr\fR processor processes \fBLWPs\fR but is not interruptible by I/O
+devices.
+.sp
+.LP
+With the \fB-aS\fR option, simultaneous multi-threading is disabled. The -a
+option means "apply to every core" and is currently required. Each CPU core has
+its SMT siblings placed in the \fBdisabled\fR state, and they will effectively
+stay unused. That is, only one CPU in each core will be processing I/O,
+scheduling processes, etc. A CPU can only be moved back out of the
+\fBdisabled\fR state with the \fB-F\fR option.
+.sp
+.LP
+A processor can not be taken \fBoff-line\fR, \fBdisabled\fR, or made \fBspare\fR
+if there are LWPs that are bound to the processor unless the additional \fB-F\fR
+option is used. The \fB-F\fR option removes processor bindings of such LWPs
+before changing the processor's operational status. On some architectures, it
+might not be possible to take certain processors \fBoff-line\fR or \fBspare\fR
+if, for example, the system depends on some resource provided by the processor.
+.sp
+.LP
+At least one processor in the system must be able to process \fBLWPs.\fR At
+least one processor must also be able to be interrupted. Since an
+\fBoff-line\fR or \fBspare\fR processor can be interruptible, it is possible to
+have an operational system with one processor \fBno-intr\fR and all other
+processors \fBoff-line\fR or \fBspare\fR but with one or more accepting
+interrupts.
+.sp
+.LP
+If any of the specified processors are powered off, \fBpsradm\fR might power on
+one or more processors.
+.sp
+.LP
+Only users with the \fBPRIV_SYS_RES_CONFIG\fR privilege can use the
+\fBpsradm\fR utility.
+.SH OPTIONS
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-a\fR\fR
+.ad
+.RS 6n
+Perform the action on all processors, or as many as possible.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR\fR
+.ad
+.RS 6n
+Take the specified processors \fBoff-line\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-F\fR\fR
+.ad
+.RS 6n
+Force the transition to the additional specified state. Required if one or more
+of the specified processors was in the faulted state. Set the specified
+processors to faulted, if no other transition option was specified. Forced
+transitions can only be made to \fBfaulted\fR, \fBspare\fR, or \fBoff-line\fR
+states. Administrators are encouraged to use the \fB-Q\fR option for
+\fBpbind\fR(8) to find out which threads will be affected by forced a
+processor state transition.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-i\fR\fR
+.ad
+.RS 6n
+Set the specified processors \fBno-intr\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR\fR
+.ad
+.RS 6n
+Bring the specified processors \fBon-line\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-S\fR\fR
+.ad
+.RS 6n
+Disable simultaneous multi-threading (hyper-threading).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR\fR
+.ad
+.RS 6n
+Make the specified processors spare.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.RS 6n
+Output a message giving the results of each attempted operation.
+.RE
+
+.SH OPERANDS
+.LP
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fB\fIprocessor_id\fR\fR
+.ad
+.RS 16n
+The processor \fBID\fR of the processor to be set \fBon-line\fR or
+\fBoff-line\fR, \fBspare\fR, or \fBno-intr\fR.
+.sp
+Specify \fIprocessor_id\fR as an individual processor number (for example,
+\fB3\fR), multiple processor numbers separated by spaces (for example, \fB1 2
+3\fR), or a range of processor numbers (for example, \fB1-4\fR). It is also
+possible to combine ranges and (individual or multiple) \fIprocessor_id\fRs
+(for example, \fB1-3 5 7-8 9\fR).
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRSetting Processors to \fBoff-line\fR
+.sp
+.LP
+The following example sets processors 2 and 3 \fBoff-line\fR:
+
+.sp
+.in +2
+.nf
+% psradm \fB-f\fR 2 3
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRSetting Processors to no-intr
+.sp
+.LP
+The following example sets processors 1 and 2 \fBno-intr\fR:
+
+.sp
+.in +2
+.nf
+% psradm \fB-i\fR 1 2
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRSetting Processors to \fBspare\fR
+.sp
+.LP
+The following example sets processors 1 and 2 spare, even if either of the
+processors was in the faulted state:
+
+.sp
+.in +2
+.nf
+% psradm -F -s 1 2
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 4 \fRSetting All Processors \fBon-line\fR
+.sp
+.in +2
+.nf
+% psradm \fB-a\fR \fB-n\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 5 \fRForcing Processors to \fBoff-line\fR
+.sp
+.LP
+The following example sets processors 1 and 2 offline, and revokes the
+processor bindings from the processes bound to them:
+
+.sp
+.in +2
+.nf
+% psradm \fB-F\fR \fB-f\fR 1 2
+.fi
+.in -2
+.sp
+
+.SH EXIT STATUS
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 6n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB>0\fR\fR
+.ad
+.RS 6n
+An error occurred.
+.RE
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/etc/wtmpx\fR\fR
+.ad
+.RS 14n
+Records logging processor status changes
+.RE
+
+.SH SEE ALSO
+.LP
+.BR p_online (2),
+.BR processor_bind (2),
+.BR attributes (7),
+.BR pbind (8),
+.BR psrinfo (8),
+.BR psrset (8)
+.SH DIAGNOSTICS
+.ne 2
+.na
+\fB\fBpsradm: processor 4: Invalid argument\fR\fR
+.ad
+.sp .6
+.RS 4n
+The specified processor does not exist in the configuration.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpsradm: processor 3: Device busy\fR\fR
+.ad
+.sp .6
+.RS 4n
+The specified processor could not be taken \fBoff-line\fR because it either has
+LWPs bound to it, is the last \fBon-line\fR processor in the system, or is
+needed by the system because it provides some essential service.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpsradm: processor 3: Device busy\fR\fR
+.ad
+.sp .6
+.RS 4n
+The specified processor could not be set \fBno-intr\fR because it is the last
+interruptible processor in the system, or it is the only processor in the
+system that can service interrupts needed by the system.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpsradm: processor 3: Device busy\fR\fR
+.ad
+.sp .6
+.RS 4n
+The specified processor is powered off, and it cannot be powered on because
+some platform-specific resource is unavailable.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpsradm: processor 0: Not owner\fR\fR
+.ad
+.sp .6
+.RS 4n
+The user does not have permission to change processor status.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpsradm: processor 2: Operation not supported\fR\fR
+.ad
+.sp .6
+.RS 4n
+The specified processor is powered off, and the platform does not support power
+on of individual processors.
+.RE
+
diff --git a/usr/src/man/man8/psrinfo.8 b/usr/src/man/man8/psrinfo.8
new file mode 100644
index 0000000000..d8ee9b77aa
--- /dev/null
+++ b/usr/src/man/man8/psrinfo.8
@@ -0,0 +1,250 @@
+'\" te
+.\" Copyright (c) 2004 Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 2019 Joyent, Inc.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PSRINFO 8 "Apr 25, 2019"
+.SH NAME
+psrinfo \- displays information about processors
+.SH SYNOPSIS
+.LP
+.nf
+\fBpsrinfo\fR [\fB-p\fR] [\fB-v\fR] [\fIprocessor_id\fR]...
+.fi
+
+.LP
+.nf
+\fBpsrinfo\fR \fB-t\fR [\fB-S state\fR | \fB-c\fR | \fB-p\fR]
+.fi
+
+.LP
+.nf
+\fBpsrinfo\fR \fB-r\fR [\fB<propname>\fR | \fBall\fR]
+.fi
+
+.SH DESCRIPTION
+.LP
+\fBpsrinfo\fR displays information about processors. Each physical socket may
+contain multiple cores, which in turn can contain multiple virtual processors
+(also referred to as CPUs). Each virtual processor is an entity
+with its own \fBID\fR, capable of executing independent threads.
+.sp
+.LP
+Without the \fIprocessor_id\fR operand, \fBpsrinfo\fR displays one line for each
+configured processor, displaying whether it is on-line, non-interruptible
+(designated by no-intr), spare, off-line, faulted, disabled, or powered off, and
+when that status last changed. Use the processor_id operand to display
+information about a specific processor. See \fBOPERANDS\fR.
+.SH OPTIONS
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-c\fR\fR
+.ad
+.RS 19n
+When used with \fB-t\fR, report the total number of CPU cores.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR\fR
+.ad
+.RS 19n
+Display the number of physical sockets in a system.
+.sp
+When combined with the \fB-v\fR option, reports additional information about
+each physical socket.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-r\fR \fIpropname\fR\fR
+.ad
+.RS 19n
+Report CPU-specific properties that apply to the system as a whole. Supplying
+"all" will list all such properties in \fBkey=value\fR format. Currently, the
+only defined property is \fBsmt_enabled\fR, a boolean property indicating whether
+simultaneous multi-threading (hyper-threading) is active or not.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-S\fR \fIstate\fR\fR
+.ad
+.RS 19n
+When used with \fB-t\fR, report the total number of CPUs in the given state.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR\fI processor_id\fR\fR
+.ad
+.RS 19n
+Silent mode. Displays \fB1\fR if the specified processor is fully on-line,
+or \fB0\fR otherwise.
+.sp
+Use silent mode when using \fBpsrinfo\fR in shell scripts.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-t\fR\fR
+.ad
+.RS 19n
+Report totals. Without arguments, reports the total number of CPUs. This can be
+combined with the \fB-p\fR, \fB-c\fR, or \fB-S\fR options to modify the total.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.RS 19n
+Verbose mode. Displays additional information about the specified processors,
+including: processor type, floating point unit type and clock speed. If any of
+this information cannot be determined, \fBpsrinfo\fR displays \fBunknown\fR.
+.sp
+When combined with the \fB-p\fR option, reports additional information about
+each physical processor.
+.RE
+
+.SH OPERANDS
+.LP
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fB\fIprocessor_id\fR\fR
+.ad
+.RS 16n
+The processor \fBID\fR of the processor about which information is to be
+displayed.
+.sp
+Specify \fIprocessor_id\fR as an individual processor number (for example,
+\fB3\fR), multiple processor numbers separated by spaces (for example, \fB1 2
+3\fR), or a range of processor numbers (for example, \fB1-4\fR). It is also
+possible to combine ranges and (individual or multiple) \fIprocessor_id\fRs
+(for example, \fB1-3 5 7-8 9\fR).
+.sp
+This cannot be specified along with the \fB-r\fR or \fB-t\fR options.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRDisplaying Information About All Configured Processors in
+Verbose Mode
+.sp
+.LP
+The following example displays information about all configured processors in
+verbose mode.
+
+.sp
+.in +2
+.nf
+\fBpsrinfo \fR\fB-v\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRDetermining If a Processor is On-line
+.sp
+.LP
+The following example uses \fBpsrinfo\fR in a shell script to determine if a
+processor is on-line.
+
+.sp
+.in +2
+.nf
+if [ "`psrinfo \fB-s\fR 3 2> /dev/null`" \(mieq 1 ]
+then
+ echo "processor 3 is up"
+fi
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRDisplaying Information About the Physical Sockets in the
+System
+.sp
+.LP
+Use the \fB-tp\fR options to report the number of sockets.
+
+.sp
+.in +2
+.nf
+> psrinfo -tp
+ 2
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Without the \fB-t\fR option, \fB-p\fR also takes processor IDs:
+
+.sp
+.in +2
+.nf
+> psrinfo -p 0 28 # IDs 0 and 28 exist on the
+1 # same socket
+
+> psrinfo -p 0 1 # IDs 0 and 1 exist on different
+2 # sockets
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+In this example, virtual processors \fB0\fR and \fB28\fR exist on the same
+socket. Virtual processors \fB0\fR and \fB1\fR do not. This is
+specific to this example and is and not a general rule.
+
+.SH EXIT STATUS
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 6n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB>0\fR\fR
+.ad
+.RS 6n
+An error occurred.
+.RE
+
+.SH SEE ALSO
+.LP
+.BR p_online (2),
+.BR processor_info (2),
+.BR attributes (7),
+.BR psradm (8)
+.SH DIAGNOSTICS
+.ne 2
+.na
+\fB\fBpsrinfo:\fR \fBprocessor\fR \fB9:\fR \fBInvalid\fR \fBargument\fR\fR
+.ad
+.sp .6
+.RS 4n
+The specified processor does not exist.
+.RE
+
diff --git a/usr/src/man/man8/psrset.8 b/usr/src/man/man8/psrset.8
new file mode 100644
index 0000000000..b9b7254748
--- /dev/null
+++ b/usr/src/man/man8/psrset.8
@@ -0,0 +1,553 @@
+'\" te
+.\" Copyright (c) 2013, Joyent, Inc. All Rights Reserved
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PSRSET 8 "Mar 11, 2013"
+.SH NAME
+psrset \- creation and management of processor sets
+.SH SYNOPSIS
+.LP
+.nf
+\fBpsrset\fR \fB-a\fR [\fB-F\fR] \fIprocessor_set_id\fR \fIprocessor_id\fR...
+.fi
+
+.LP
+.nf
+\fBpsrset\fR \fB-b\fR \fIprocessor_set_id\fR \fIpid\fR [\fI/lwpid\fR]...
+.fi
+
+.LP
+.nf
+\fBpsrset\fR \fB-b\fR \fB-z\fR \fIzone name\fR \fIprocessor_set_id\fR
+.fi
+
+.LP
+.nf
+\fBpsrset\fR \fB-c\fR [\fB-F\fR] [\fIprocessor_id\fR]...
+.fi
+
+.LP
+.nf
+\fBpsrset\fR \fB-d\fR \fIprocessor_set_id\fR...
+.fi
+
+.LP
+.nf
+\fBpsrset\fR \fB-e\fR \fIprocessor_set_id\fR \fIcommand\fR [\fIargument(s)\fR]
+.fi
+
+.LP
+.nf
+\fBpsrset\fR \fB-f\fR \fIprocessor_set_id\fR
+.fi
+
+.LP
+.nf
+\fBpsrset\fR [\fB-i\fR] [\fIprocessor_set_id\fR]...
+.fi
+
+.LP
+.nf
+\fBpsrset\fR \fB-n\fR \fIprocessor_set_id\fR
+.fi
+
+.LP
+.nf
+\fBpsrset\fR \fB-p\fR [\fIprocessor_id\fR]...
+.fi
+
+.LP
+.nf
+\fBpsrset\fR [\fB-q\fR] [\fIpid\fR [\fI/lwpid\fR]]...
+.fi
+
+.LP
+.nf
+\fBpsrset\fR \fB-Q\fR [\fIprocessor_set_id\fR]...
+.fi
+
+.LP
+.nf
+\fBpsrset\fR \fB-r\fR [\fB-F\fR] \fIprocessor_id\fR...
+.fi
+
+.LP
+.nf
+\fBpsrset\fR \fB-u\fR \fIpid\fR [\fI/lwpid\fR]...
+.fi
+
+.LP
+.nf
+\fBpsrset\fR \fB-U\fR [\fIprocessor_set_id\fR]...
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBpsrset\fR utility controls the management of processor sets. Processor
+sets allow the binding of processes or LWPs to groups of processors, rather
+than just a single processor. Processors assigned to processor sets can run
+only LWPs that have been bound to that processor set.
+.sp
+.LP
+This command cannot be used to modify processor disposition when pools are
+enabled. Use \fBpooladm\fR(8) and \fBpoolcfg\fR(8) to modify processor set
+configuration through the resource pools facility.
+.SH OPTIONS
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-a\fR\fR
+.ad
+.RS 6n
+Assign the specified processors to the specified processor set. With the
+additional \fB-F\fR option, all LWPs bound to the specified processors will be
+unbound prior to changing processor sets.
+.sp
+This option is restricted to users with the \fBPRIV_SYS_RES_CONFIG\fR
+privilege.
+.RE
+
+.sp
+.ne 2
+.na
+\fB-b\fR [\fB-z\fR \fIzonename\fR]
+.ad
+.RS 6n
+Bind all or a subset of the \fBLWP\fRs of the specified processes to the
+specified processor set. If \fB-z\fR is specified, all processes and threads
+inside the specified zone are bound to the processor set.
+.sp
+LWPs bound to a processor set are restricted to run only on the processors in
+that set. Processes can only be bound to non-empty processor sets, that is,
+processor sets that have had processors assigned to them.
+.sp
+Bindings are inherited, so new LWPs and processes created by a bound LWP have
+the same binding. Binding an interactive shell to a processor, for example,
+binds all commands executed by the shell.
+.sp
+This option is restricted to users with the \fBPRIV_SYS_RES_CONFIG\fR
+privilege.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-c\fR\fR
+.ad
+.RS 6n
+Create a new processor set and displays the new processor set \fBID\fR. With
+the additional \fB-F\fR option, all LWPs bound to the specified processors will
+be unbound prior to assigning them to the processor set being created.
+.sp
+If a list of processors is given, it also attempts to assign those processors
+to the processor set. If this succeeds, the processors are idle until
+\fBLWP\fRs are bound to the processor set. This option is restricted to users
+with the \fBPRIV_SYS_RES_CONFIG\fR privilege.
+.sp
+Only a limited number of processor sets can be active (created and not
+destroyed) at a given time. This limit is always be greater than the number of
+processors in the system. If the \fB-c\fR option is used when the maximum
+number of processor sets is already active, the command fails.
+.sp
+The following format is used for the first line of output of the \fB-c\fR
+option when the \fBLC_MESSAGES\fR locale category specifies the "C" locale. In
+other locales, the strings \fBcreated\fR, \fBprocessor\fR, and \fBset\fR can be
+replaced with more appropriate strings corresponding to the locale.
+.sp
+.in +2
+.nf
+"created processor set %d\en" \fIprocessor set ID\fR
+.fi
+.in -2
+.sp
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-d\fR\fR
+.ad
+.RS 6n
+Remove the specified processor set, releasing all processors and processes
+associated with it.
+.sp
+This option is restricted to users with the \fBPRIV_SYS_RES_CONFIG\fR
+privilege.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-e\fR\fR
+.ad
+.RS 6n
+Execute a command (with optional arguments) in the specified processor set.
+.sp
+The command process and any child processes are executed only by processors in
+the processor set.
+.sp
+This option is restricted to users with the \fBPRIV_SYS_RES_CONFIG\fR
+privilege.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR\fR
+.ad
+.RS 6n
+Disables interrupts for all processors within the specified processor set. See
+\fBpsradm\fR(8).
+.sp
+If some processors in the set cannot have their interrupts disabled, the other
+processors still have their interrupts disabled, and the command reports an
+error and return non-zero exit status.
+.sp
+This option is restricted to users with the \fBPRIV_SYS_RES_CONFIG\fR
+privilege.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-F\fR\fR
+.ad
+.RS 6n
+Forces the specified processor set operation by unbinding all threads bound to
+the specified processor. Only the \fB-a\fR or the \fB-r\fR option can be used
+in combination with this option. Administrators are encouraged to use the
+\fB-Q\fR option for \fBpbind\fR(8) to find out which threads will be affected
+by such operation.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-i\fR\fR
+.ad
+.RS 6n
+Display a list of processors assigned to each named processor set. If no
+argument is given, a list of all processor sets and the processors assigned to
+them is displayed. This is also the default operation if the \fBpsrset\fR
+command is not given an option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR\fR
+.ad
+.RS 6n
+Enable interrupts for all processors within the specified processor set. See
+\fBpsradm\fR(8).
+.sp
+This option is restricted to users with the \fBPRIV_SYS_RES_CONFIG\fR
+privilege.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR\fR
+.ad
+.RS 6n
+Display the processor set assignments for the specified list of processors. If
+no argument is given, the processor set assignments for all processors in the
+system is given.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-q\fR\fR
+.ad
+.RS 6n
+Display the processor set bindings of the specified processes or of all
+processes. If a process is composed of multiple \fBLWP\fRs which have different
+bindings and the LWPs are not explicitly specified, the bindings of only one of
+the bound \fBLWP\fRs is displayed. The bindings of a subset of LWPs can be
+displayed by appending "/lwpids" to the process \fBID\fRs. Multiple LWPs may be
+selected using "-" and "," delimiters. See EXAMPLES.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-Q\fR\fR
+.ad
+.RS 6n
+Display the LWPs bound to the specified list of processor sets, or all LWPs
+with processor set bindings.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-r\fR\fR
+.ad
+.RS 6n
+Remove a list of processors from their current processor sets. Processors that
+are removed return to the general pool of processors.
+.sp
+Processors with \fBLWP\fRs bound to them using \fBpbind\fR(8) can be assigned
+to or removed from processor sets using the \fB-F\fR option.
+.sp
+This option is restricted to users with the \fBPRIV_SYS_RES_CONFIG\fR
+privilege.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-u\fR\fR
+.ad
+.RS 6n
+Remove the processor set bindings of a subset or all the \fBLWP\fRs of the
+specified processes, allowing them to be executed on any on-line processor if
+they are not bound to individual processors through \fBpbind\fR.
+.sp
+Users with the \fBPRIV_SYS_RES_CONFIG\fR privilege can unbind any process or
+LWP from any active processor set. Other users can unbind processes and LWPs
+from processor sets that do not have the \fBPSET_NOESCAPE\fR attribute set. In
+addition, the user must have permission to control the affected processes; the
+real or effective user ID of the user must match the real or saved user ID of
+the target processes.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-U\fR\fR
+.ad
+.RS 6n
+Removes the bindings of all LWPs bound to the specified list of processor sets,
+or to any processor set if no argument is specified.
+.RE
+
+.SH OPERANDS
+.LP
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fB\fIpid\fR\fR
+.ad
+.RS 20n
+Specify \fIpid\fR as a process \fBID\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIlwpid\fR\fR
+.ad
+.RS 20n
+The set of LWP\fBID\fRs of the specified process to be controlled or queried.
+The syntax for selecting LWP \fBID\fRs is as follows:
+.sp
+.in +2
+.nf
+2,3,4-8 LWP IDs 2, 3, and 4 through 8
+-4 LWPs whose IDs are 4 or below
+4- LWPs whose IDs are 4 or above
+.fi
+.in -2
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIprocessor_id\fR\fR
+.ad
+.RS 20n
+Specify \fIprocessor_id\fR as an individual processor number (for example,
+\fB3\fR), multiple processor numbers separated by spaces (for example, \fB1 2
+3\fR), or a range of processor numbers (for example, \fB1-4\fR). It is also
+possible to combine ranges and (individual or multiple) \fIprocessor_id\fRs
+(for example, \fB1-3 5 7-8 9\fR).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIprocessor_set_id\fR\fR
+.ad
+.RS 20n
+Specify \fIprocessor_set_id\fR as a processor set \fBID\fR.
+.RE
+
+.SH EXIT STATUS
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 9n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fBnon-0\fR
+.ad
+.RS 9n
+An error occurred.
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Stability Level Stable
+.TE
+
+.SH SEE ALSO
+.LP
+.BR processor_bind (2),
+.BR processor_info (2),
+.BR pset_bind (2),
+.BR pset_create (2),
+.BR pset_info (2),
+.BR sysconf (3C),
+.BR libpool (3LIB),
+.BR attributes (7),
+.BR privileges (7),
+.BR pbind (8),
+.BR pooladm (8),
+.BR poolcfg (8),
+.BR psradm (8),
+.BR psrinfo (8)
+.SH DIAGNOSTICS
+.LP
+The following output indicates that the specified process did not exist or has
+exited:
+.sp
+.in +2
+.nf
+psrset: cannot query pid 31: No such process
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The following output indicates that the user does not have permission to bind
+the process:
+.sp
+.in +2
+.nf
+psrset: cannot bind pid 31: Not owner
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The following output indicates that the user does not have permission to assign
+the processor:
+.sp
+.in +2
+.nf
+psrset: cannot assign processor 4: Not owner
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The following output indicates that the specified processor is not on-line, or
+the specified processor does not exist.
+.sp
+.in +2
+.nf
+psrset: cannot assign processor 8: Invalid argument
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The following output indicates that an \fBLWP\fR in the specified process is
+bound to a processor and cannot be bound to a processor set that does not
+include that processor:
+.sp
+.in +2
+.nf
+psrset: cannot bind pid 67: Device busy
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The following output indicates that the specified processor could not be added
+to the processor set. This can be due to bound \fBLWP\fRs on that processor, or
+because that processor cannot be combined in the same processor set with other
+processors in that set, or because the processor is the last one in its current
+processor set:
+.sp
+.in +2
+.nf
+psrset: cannot assign processor 7: Device busy
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The following output indicates that the specified processor set does not exist:
+.sp
+.in +2
+.nf
+psrset: cannot execute in processor set 8: Invalid argument
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The following output indicates that the maximum number of processor sets
+allowed in the system is already active:
+.sp
+.in +2
+.nf
+psrset: cannot create processor set: Not enough space
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The following output indicates that the pools facility is active.
+.sp
+.in +2
+.nf
+psrset: cannot assign processor 7: Operation not supported
+psrset: cannot bind pid 31: Operation not supported
+psrset: cannot bind pid 31: Operation not supported
+psrset: could not create processor set: Operation not supported
+psrset: could not remove processor set 1: Operation not supported
+psrset: cannot exec in processor set 1: Operation not supported
+psrset: cannot remove processor 7: Operation not supported
+psrset: cannot unbind pid 31: Operation not supported
+.fi
+.in -2
+.sp
+
diff --git a/usr/src/man/man8/putdev.8 b/usr/src/man/man8/putdev.8
new file mode 100644
index 0000000000..f9bbbc8b4e
--- /dev/null
+++ b/usr/src/man/man8/putdev.8
@@ -0,0 +1,418 @@
+'\" te
+.\" Copyright 1997 AT&T Copyright (c) 1997 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PUTDEV 8 "Apr 3, 1997"
+.SH NAME
+putdev \- edits device table
+.SH SYNOPSIS
+.LP
+.nf
+\fBputdev\fR \fB-a\fR \fIalias\fR [\fIattribute\fR=\fIvalue\fR [...]]
+.fi
+
+.LP
+.nf
+\fBputdev\fR \fB-m\fR \fIdevice\fR \fIattribute\fR=\fIvalue\fR [\fIattribute\fR = \fIvalue\fR [...]]
+.fi
+
+.LP
+.nf
+\fBputdev\fR \fB-d\fR \fIdevice\fR [\fIattribute\fR [...]]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBputdev\fR adds a new device to the device table, modifies an existing device
+description or removes a device entry from the table. The first synopsis is
+used to add a device. The second synopsis is used to modify existing entries by
+adding or changing attributes. If a specified attribute is not defined, this
+option adds that attribute to the device definition. If a specified attribute
+is already defined, it modifies the attribute definition. The third synopsis is
+used to delete either an entire device entry or, if the attribute argument is
+used, to delete an attribute assignment for a device.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-a\fR\fR
+.ad
+.RS 6n
+Add a device to the device table using the specified attributes. The device
+must be referenced by its \fBalias\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-d\fR\fR
+.ad
+.RS 6n
+Remove a device from the device table, when executed without the
+\fIattributes\fR argument. Used with the \fIattribute\fR argument, it deletes
+the given attribute specification for \fIdevice\fR from the table.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-m\fR\fR
+.ad
+.RS 6n
+Modify a device entry in the device table. If an entry already exists, it adds
+any specified attributes that are not defined. It also modifies any attributes
+which already have a value with the value specified by this command.
+.RE
+
+.SH OPERANDS
+.sp
+.LP
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fB\fIalias\fR\fR
+.ad
+.RS 13n
+Designates the alias of the device to be added.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIattribute\fR\fR
+.ad
+.RS 13n
+Designates a device attribute to be added, modified, or deleted. Can be any of
+the device attributes described under \fBDEVICE\fR \fBATTRIBUTES\fR except
+\fBalias\fR. This prevents an accidental modification or deletion of a device's
+alias from the table.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIdevice\fR\fR
+.ad
+.RS 13n
+Designates the pathname or alias of the device whose attribute is to be added,
+modified, or removed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIvalue\fR\fR
+.ad
+.RS 13n
+Designates the value to be assigned to a device's attribute.
+.RE
+
+.SH DEVICE ATTRIBUTES
+.sp
+.LP
+The following list shows the standard device attributes, used by applications
+such as \fBufsdump\fR(8) and \fBufsrestore\fR(8), which can be defined for a
+device. You are not limited to this list, you can define any attribute you
+like.
+.sp
+.ne 2
+.na
+\fB\fBalias\fR\fR
+.ad
+.RS 13n
+The unique name by which a device is known. No two devices in the database may
+share the same alias name. The name is limited in length to 14 characters and
+should contain only alphanumeric characters and the following special
+characters if they are escaped with a backslash: underscore ( _ ), dollar sign
+($), hyphen (\(mi), and period (.).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBbdevice\fR\fR
+.ad
+.RS 13n
+The pathname to the block special device node associated with the device, if
+any. The associated major/minor combination should be unique within the
+database and should match that associated with the \fBcdevice\fR field, if any.
+(It is the administrator's responsibility to ensure that these
+\fBmajor/minor\fR numbers are unique in the database.)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcapacity\fR\fR
+.ad
+.RS 13n
+The capacity of the device or of the typical volume, if removable.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcdevice\fR\fR
+.ad
+.RS 13n
+The pathname to the character special device node associated with the device,
+if any. The associated major/minor combination should be unique within the
+database and should match that associated with the \fBbdevice\fR field, if any.
+(It is the administrator's responsibility to ensure that these
+\fBmajor/minor\fR numbers are unique in the database.)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcyl\fR\fR
+.ad
+.RS 13n
+Used by the command specified in the \fBmkfscmd\fR attribute.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdesc\fR\fR
+.ad
+.RS 13n
+A description of any instance of a volume associated with this device (such as
+floppy diskette).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdpartlist\fR\fR
+.ad
+.RS 13n
+The list of disk partitions associated with this device. Used only if
+\fBtype=disk\fR. The list should contain device aliases, each of which must
+have \fBtype=dpart\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdparttype\fR\fR
+.ad
+.RS 13n
+The type of disk partition represented by this device. Used only if
+\fBtype=dpart\fR. It should be either \fBfs\fR (for file system) or \fBdp\fR
+(for data partition).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBerasecmd\fR\fR
+.ad
+.RS 13n
+The command string that, when executed, erases the device.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfmtcmd\fR\fR
+.ad
+.RS 13n
+The command string that, when executed, formats the device.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfsname\fR\fR
+.ad
+.RS 13n
+The file system name on the file system administered on this partition, as
+supplied to the \fB/usr/sbin/labelit\fR command. This attribute is specified
+only if \fBtype=dpart\fR and \fBdparttype=fs\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBgap\fR\fR
+.ad
+.RS 13n
+Used by the command specified in the \fBmkfscmd\fR attribute.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmkfscmd\fR\fR
+.ad
+.RS 13n
+The command string that, when executed, places a file system on a previously
+formatted device.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmountpt\fR\fR
+.ad
+.RS 13n
+The default mount point to use for the device. Used only if the device is
+mountable. For disk partitions where \fBtype=dpart\fR and \fBdparttype=fs\fR,
+this attribute should specify the location where the partition is normally
+mounted.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnblocks\fR\fR
+.ad
+.RS 13n
+The number of blocks in the file system administered on this partition. Used
+only if \fBtype=dpart\fR and \fBdparttype=fs\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBninodes\fR\fR
+.ad
+.RS 13n
+The number of inodes in the file system administered on this partition. Used
+only if \fBtype=dpart\fR and \fBdparttype=fs\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnorewind\fR\fR
+.ad
+.RS 13n
+The name of the character special device node that allows access to the serial
+device without rewinding when the device is closed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpathname\fR\fR
+.ad
+.RS 13n
+Defines the pathname to an i-node describing the device (used for non-block or
+character device pathnames, such as directories).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBtype\fR\fR
+.ad
+.RS 13n
+A token that represents inherent qualities of the device. Standard types
+include: 9-track, ctape, disk, directory, diskette, dpart, and qtape.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBvolname\fR\fR
+.ad
+.RS 13n
+The volume name on the file system administered on this partition, as supplied
+to the \fB/usr/sbin/labelit\fR command. Used only if \fBtype=dpart\fR and
+\fBdparttype=fs\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBvolume\fR\fR
+.ad
+.RS 13n
+A text string used to describe any instance of a volume associated with this
+device. This attribute should not be defined for devices which are not
+removable.
+.RE
+
+.SH EXIT STATUS
+.sp
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 5n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB1\fR\fR
+.ad
+.RS 5n
+Command syntax was incorrect, an invalid option was used, or an internal error
+occurred.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB2\fR\fR
+.ad
+.RS 5n
+The device table could not be opened for reading, or a new device table could
+not be created.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB3\fR\fR
+.ad
+.RS 5n
+If executed with the \fB-a\fR option, indicates that an entry in the device
+table with the alias \fBalias\fR already exits. If executed with the \fB-m\fR
+or \fB-d\fR options, indicates that no entry exists for device \fIdevice\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB4\fR\fR
+.ad
+.RS 5n
+Indicates that \fB-d\fR was requested and one or more of the specified
+attributes were not defined for the device.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/device.tab\fR\fR
+.ad
+.RS 19n
+
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7),
+.BR devattr (8),
+.BR putdgrp (8),
+.BR ufsdump (8),
+.BR ufsrestore (8)
+.sp
+.LP
+\fI\fR
diff --git a/usr/src/man/man8/putdgrp.8 b/usr/src/man/man8/putdgrp.8
new file mode 100644
index 0000000000..7ba2e33cdc
--- /dev/null
+++ b/usr/src/man/man8/putdgrp.8
@@ -0,0 +1,205 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 1997 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PUTDGRP 8 "Jul 5, 1990"
+.SH NAME
+putdgrp \- edits device group table
+.SH SYNOPSIS
+.LP
+.nf
+\fBputdgrp\fR [\fB-d\fR] \fIdgroup\fR [\fIdevice\fR]...
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBputdgrp\fR modifies the device group table. It performs two kinds of
+modification. It can modify the table by creating a new device group or
+removing a device group. It can also change group definitions by adding or
+removing a device from the group definition.
+.sp
+.LP
+When the command is invoked with only a \fIdgroup\fR specification, the command
+adds the specified group name to the device group table if it does not already
+exist. If the \fB-d\fR option is also used with only the \fIdgroup\fR
+specification, the command deletes the group from the table.
+.sp
+.LP
+When the command is invoked with both a \fIdgroup\fR and a \fIdevice\fR
+specification, it adds the given device name(s) to the group definition. When
+invoked with both arguments and the \fB-d\fR option, the command deletes the
+device name(s) from the group definition.
+.sp
+.LP
+When the command is invoked with both a \fIdgroup\fR and a \fIdevice\fR
+specification and the device group does not exist, it creates the group and
+adds the specified devices to that new group.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-d\fR\fR
+.ad
+.RS 6n
+Delete the group or, if used with \fIdevice\fR, delete the device from a group
+definition.
+.RE
+
+.SH OPERANDS
+.sp
+.LP
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fB\fIdgroup\fR\fR
+.ad
+.RS 10n
+Specify a device group name.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIdevice\fR\fR
+.ad
+.RS 10n
+Specify the pathname or alias of the device that is to be added to, or deleted
+from, the device group.
+.RE
+
+.SH EXIT STATUS
+.sp
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 5n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB1\fR\fR
+.ad
+.RS 5n
+Command syntax was incorrect, an invalid option was used, or an internal error
+occurred.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB2\fR\fR
+.ad
+.RS 5n
+Device group table could not be opened for reading or a new device group table
+could not be created.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB3\fR\fR
+.ad
+.RS 5n
+If executed with the \fB-d\fR option, indicates that an entry in the device
+group table for the device group \fIdgroup\fR does not exist and so cannot be
+deleted. Otherwise, indicates that the device group \fIdgroup\fR already
+exists and cannot be added.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB4\fR\fR
+.ad
+.RS 5n
+If executed with the \fB-d\fR option, indicates that the device group
+\fIdgroup\fR does not have as members one or more of the specified devices.
+Otherwise, indicates that the device group \fIdgroup\fR already has one or
+more of the specified devices as members.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRAdding a new device group.
+.sp
+.LP
+The following example adds a new device group:
+
+.sp
+.in +2
+.nf
+example# \fBputdgrp floppies\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRAdding a device to a device group.
+.sp
+.LP
+The following example adds a device to a device group:
+
+.sp
+.in +2
+.nf
+example# \fBputdgrp floppies diskette2\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRDeleting a device group.
+.sp
+.LP
+The following example deletes a device group:
+
+.sp
+.in +2
+.nf
+example# \fBputdgrp \fR\fB-d\fR\fB floppies\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 4 \fRDeleting a device from a device group.
+.sp
+.LP
+The following example deletes a device from a device group:
+
+.sp
+.in +2
+.nf
+example# \fBputdgrp \fR\fB-d\fR\fB floppies diskette2\fR
+.fi
+.in -2
+.sp
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/dgroup.tab\fR\fR
+.ad
+.RS 19n
+
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7),
+.BR listdgrp (8),
+.BR putdev (8)
diff --git a/usr/src/man/man8/pwck.8 b/usr/src/man/man8/pwck.8
new file mode 100644
index 0000000000..bc07262c2c
--- /dev/null
+++ b/usr/src/man/man8/pwck.8
@@ -0,0 +1,95 @@
+'\" te
+.\" Copyright 1989 AT&T , Copyright (c) 2002, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PWCK 8 "Aug 27, 2008"
+.SH NAME
+pwck, grpck \- password/group file checkers
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/pwck\fR [\fIfilename\fR]
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/grpck\fR [\fIfilename\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBpwck\fR scans the password file and notes any inconsistencies. The checks
+include validation of the number of fields, login name, user ID, group ID, and
+whether the login directory and the program-to-use-as-shell exist. The default
+password file is \fB/etc/passwd\fR.
+.sp
+.LP
+\fBgrpck\fR verifies all entries in the \fBgroup\fR file. This verification
+includes a check of the number of fields, group name, group ID, whether any
+login names belong to more than \fBNGROUPS_MAX\fR groups, and that all login
+names appear in the password file. \fBgrpck\fR also issues a warning if it
+finds an entry (a single line) in the \fBgroup\fR file longer than 2047
+characters. Such an entry causes group maintenance commands, such as
+\fBgroupdel\fR(8) and \fBgroupmod\fR(8), to fail.
+.sp
+.LP
+The default group file is \fB/etc/group\fR.
+.sp
+.LP
+All messages regarding inconsistent entries are placed on the \fBstderr\fR
+stream.
+.SH FILES
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fB/etc/group\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fB/etc/passwd\fR
+.RE
+.SH SEE ALSO
+.sp
+.LP
+.BR getpwent (3C),
+.BR group (5),
+.BR passwd (5),
+.BR attributes (7),
+.BR groupdel (8),
+.BR groupmod (8)
+.SH DIAGNOSTICS
+.sp
+.LP
+Group entries in \fB/etc/group\fR with no login names are flagged.
+.sp
+.ne 2
+.na
+\fB\fBGroup file '\fR\fIfilename\fR\fB\&' is empty\fR\fR
+.ad
+.sp .6
+.RS 4n
+The \fB/etc/passwd\fR or \fB/etc/group\fR file is an empty file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcannot open file\fR \fIfilename\fR\fB: No such file or directory\fR\fR
+.ad
+.sp .6
+.RS 4n
+The \fB/etc/passwd\fR or \fB/etc/group\fR file does not exist.
+.RE
+
+.SH NOTES
+.sp
+.LP
+If no filename argument is given, \fBgrpck\fR checks the local group file,
+\fB/etc/group\fR, and also makes sure that all login names encountered in the
+checked group file are known to the system \fBgetpwent\fR(3C) routine. This
+means that the login names may be supplied by a network name service.
diff --git a/usr/src/man/man8/pwconv.8 b/usr/src/man/man8/pwconv.8
new file mode 100644
index 0000000000..e9af735ba2
--- /dev/null
+++ b/usr/src/man/man8/pwconv.8
@@ -0,0 +1,186 @@
+'\" te
+.\" Copyright (c) 1996, Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH PWCONV 8 "Mar 9, 1993"
+.SH NAME
+pwconv \- installs and updates /etc/shadow with information from /etc/passwd
+.SH SYNOPSIS
+.LP
+.nf
+\fBpwconv\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBpwconv\fR command creates and updates \fB/etc/shadow\fR with information
+from \fB/etc/passwd\fR.
+.sp
+.LP
+\fBpwconv\fR relies on a special value of 'x' in the password field of
+\fB/etc/passwd.\fR This value of 'x' indicates that the password for the user
+is already in \fB/etc/shadow\fR and should not be modified.
+.sp
+.LP
+If the \fB/etc/shadow\fR file does not exist, this command will create
+\fB/etc/shadow\fR with information from \fB/etc/passwd\fR. The command
+populates \fB/etc/shadow\fR with the user's login name, password, and password
+aging information. If password aging information does not exist in
+\fB/etc/passwd\fR for a given user, none will be added to \fB/etc/shadow\fR.
+However, the last changed information will always be updated.
+.sp
+.LP
+If the \fB/etc/shadow\fR file does exist, the following tasks will be
+performed:
+.sp
+.ne 2
+.na
+\fB\fR
+.ad
+.sp .6
+.RS 4n
+Entries that are in the \fB/etc/passwd\fR file and not in the
+\fB/etc/shadow\fR file will be added to the \fB/etc/shadow\fR file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fR
+.ad
+.sp .6
+.RS 4n
+Entries that are in the \fB/etc/shadow\fR file and not in the
+\fB/etc/passwd\fR file will be removed from \fB/etc/shadow\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fR
+.ad
+.sp .6
+.RS 4n
+Password attributes (for example, password and aging information) that exist
+in an \fB/etc/passwd\fR entry will be moved to the corresponding entry in
+\fB/etc/shadow\fR.
+.RE
+
+.sp
+.LP
+The \fBpwconv\fR command can only be used by the super-user.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/opasswd\fR\fR
+.ad
+.RS 16n
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/oshadow\fR\fR
+.ad
+.RS 16n
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/passwd\fR\fR
+.ad
+.RS 16n
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/shadow\fR\fR
+.ad
+.RS 16n
+
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR passwd (1),
+.BR passwd (5),
+.BR attributes (7),
+.BR passmgmt (8),
+.BR usermod (8)
+.SH DIAGNOSTICS
+.sp
+.LP
+\fBpwconv\fR exits with one of the following values:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 5n
+\fBSUCCESS.\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB1\fR\fR
+.ad
+.RS 5n
+Permission denied.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB2\fR\fR
+.ad
+.RS 5n
+Invalid command syntax.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB3\fR\fR
+.ad
+.RS 5n
+Unexpected failure. Conversion not done.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB4\fR\fR
+.ad
+.RS 5n
+Unexpected failure. Password file(s) missing.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB5\fR\fR
+.ad
+.RS 5n
+Password file(s) busy. Try again later.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB6\fR\fR
+.ad
+.RS 5n
+Bad entry in \fB/etc/shadow\fR file.
+.RE
+
diff --git a/usr/src/man/man8/quot.8 b/usr/src/man/man8/quot.8
new file mode 100644
index 0000000000..a5782a82dc
--- /dev/null
+++ b/usr/src/man/man8/quot.8
@@ -0,0 +1,163 @@
+'\" te
+.\" Copyright (c) 2001, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH QUOT 8 "May 30, 2001"
+.SH NAME
+quot \- summarize file system ownership
+.SH SYNOPSIS
+.LP
+.nf
+\fBquot\fR [\fB-acfhnv\fR] \fIfilesystem\fR...
+.fi
+
+.LP
+.nf
+\fBquot\fR \fB-a\fR [\fB-cfhnv\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBquot\fR displays the number of blocks (1024 bytes) in the named
+\fIfilesystem\fR (one or more) currently owned by each user. There is a limit
+of 2048 blocks. Files larger than this will be counted as a 2048 block file,
+but the total block count will be correct.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-a\fR\fR
+.ad
+.RS 6n
+Generate a report for all mounted file systems.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-c\fR\fR
+.ad
+.RS 6n
+Display three columns giving a file size in blocks, the number of files of that
+size, and a cumulative total of blocks containing files of that size or a
+smaller size.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR\fR
+.ad
+.RS 6n
+Display three columns giving, for each user, the number of blocks owned, the
+count of number of files, and the user name. This option is incompatible with
+the \fB-c\fR and \fB-v\fR options.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-h\fR\fR
+.ad
+.RS 6n
+Estimate the number of blocks in the file. This does not account for files with
+holes in them.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR\fR
+.ad
+.RS 6n
+Attach names to the list of files read from standard input. \fBquot\fR \fB-n\fR
+cannot be used alone, because it expects data from standard input. For example,
+the pipeline
+.sp
+\fBncheck myfilesystem | sort +0n | quot \fR\fB-n\fR\fB myfilesystem\fR
+.sp
+will produce a list of all files and their owners. This option is incompatible
+with all other options.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.RS 6n
+In addition to the default output, display three columns containing the number
+of blocks not accessed in the last 30, 60, and 90 days.
+.RE
+
+.SH OPERANDS
+.sp
+.ne 2
+.na
+\fB\fIfilesystem\fR\fR
+.ad
+.RS 14n
+mount-point of the filesystem(s) being checked
+.RE
+
+.SH USAGE
+.sp
+.LP
+See \fBlargefile\fR(7) for the description of the behavior of \fBquot\fR when
+encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
+.SH EXIT STATUS
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 6n
+Successful operation.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB32\fR\fR
+.ad
+.RS 6n
+Error condition (bad or missing argument, bad path, or other error).
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/mnttab\fR\fR
+.ad
+.RS 15n
+Lists mounted file systems.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/passwd\fR\fR
+.ad
+.RS 15n
+Used to obtain user names
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR du (1),
+.BR mnttab (5),
+.BR passwd (5),
+.BR attributes (7),
+.BR largefile (7)
+.SH NOTES
+.sp
+.LP
+This command can only be used by the super-user.
diff --git a/usr/src/man/man8/quota.8 b/usr/src/man/man8/quota.8
new file mode 100644
index 0000000000..772eeb744e
--- /dev/null
+++ b/usr/src/man/man8/quota.8
@@ -0,0 +1,88 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH QUOTA 8 "Apr 30, 2009"
+.SH NAME
+quota \- display a user's ufs or zfs file system disk quota and usage
+.SH SYNOPSIS
+.LP
+.nf
+\fBquota\fR [\fB-v\fR] [\fIusername\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBquota\fR displays users' UFS or ZFS disk usage and limits. Only the
+super-user may use the optional \fIusername\fR argument to view the limits of
+other users.
+.sp
+.LP
+\fBquota\fR without options only display warnings about mounted file systems
+where usage is over quota. Remotely mounted file systems which do not have
+quotas turned on are ignored.
+.sp
+.LP
+\fIusername\fR can be the numeric UID of a user.
+.SH OPTIONS
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.RS 6n
+Display user's quota on all mounted file systems where quotas exist.
+.RE
+
+.SH USAGE
+.sp
+.LP
+See \fBlargefile\fR(7) for the description of the behavior of \fBquota\fR when
+encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/mnttab\fR\fR
+.ad
+.RS 15n
+list of currently mounted filesystems
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7),
+.BR largefile (7),
+.BR zones (7),
+.BR edquota (8),
+.BR quotacheck (8),
+.BR quotaon (8),
+.BR repquota (8),
+.BR rquotad (8)
+.SH NOTES
+.sp
+.LP
+\fBquota\fR displays quotas for NFS mounted UFS- or ZFS-based file systems if
+the \fBrquotad\fR daemon is running. See \fBrquotad\fR(8). In a \fBzones\fR(7)
+environment, \fBquota\fR displays quotas only for the zone in which it is
+invoked.
+.sp
+.LP
+\fBquota\fR can display entries for the same file system multiple times for
+multiple mount points. For example,
+.sp
+.in +2
+.nf
+# \fBquota -v user1\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+might display identical quota information for \fBuser1\fR at the mount points
+\fB/home/user1\fR, \fB/home/user2\fR, and \fB/home/user\fR, if all three mount
+points are mounted from the same file system with quotas turned on.
diff --git a/usr/src/man/man8/quotacheck.8 b/usr/src/man/man8/quotacheck.8
new file mode 100644
index 0000000000..45ea97fe23
--- /dev/null
+++ b/usr/src/man/man8/quotacheck.8
@@ -0,0 +1,120 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 1996, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH QUOTACHECK 8 "Jul 31, 1998"
+.SH NAME
+quotacheck \- ufs file system quota consistency checker
+.SH SYNOPSIS
+.LP
+.nf
+\fBquotacheck\fR [\fB-fp\fR] [\fB-v\fR] \fIfilesystem\fR...
+.fi
+
+.LP
+.nf
+\fBquotacheck\fR \fB-a\fR [\fB-fpv\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBquotacheck\fR examines each mounted ufs file system, builds a table of
+current disk usage, and compares this table against the information stored in
+the file system's disk quota file. If any inconsistencies are detected, both
+the quota file and the current system copy of the incorrect quotas are updated.
+.sp
+.LP
+\fIfilesystem\fR is either a file system mount point or the block device on
+which the file system resides.
+.sp
+.LP
+\fBquotacheck\fR expects each file system to be checked to have a quota file
+named \fBquotas\fR in the root directory. If none is present, \fBquotacheck\fR
+will not check the file system.
+.sp
+.LP
+\fBquotacheck\fR accesses the character special device in calculating the
+actual disk usage for each user. Thus, the file systems that are checked should
+be quiescent while \fBquotacheck\fR is running.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-a\fR\fR
+.ad
+.RS 6n
+Check the file systems which \fB/etc/mnttab\fR indicates are ufs file systems.
+These file systems must be read-write mounted with disk quotas enabled, and
+have an \fBrq\fR entry in the \fBmntopts\fR field in \fB/etc/vfstab\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR\fR
+.ad
+.RS 6n
+Force check on file systems with logging enabled. Use in combination with the
+\fB-p\fR option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR\fR
+.ad
+.RS 6n
+Check quotas of file systems in parallel. For file systems with logging
+enabled, no check is performed unless the \fB-f\fR option is also specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.RS 6n
+Indicate the calculated disk quotas for each user on a particular file system.
+\fBquotacheck\fR normally reports only those quotas modified.
+.RE
+
+.SH USAGE
+.sp
+.LP
+See \fBlargefile\fR(7) for the description of the behavior of \fBquotacheck\fR
+when encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/mnttab\fR\fR
+.ad
+.RS 15n
+Mounted file systems
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/vfstab\fR\fR
+.ad
+.RS 15n
+List of default parameters for each file system
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR quotactl (4I),
+.BR attributes (7),
+.BR largefile (7),
+.BR edquota (8),
+.BR mount_ufs (8),
+.BR quota (8),
+.BR quotaon (8),
+.BR repquota (8)
diff --git a/usr/src/man/man8/quotaon.8 b/usr/src/man/man8/quotaon.8
new file mode 100644
index 0000000000..38269f3159
--- /dev/null
+++ b/usr/src/man/man8/quotaon.8
@@ -0,0 +1,134 @@
+'\" te
+.\" Copyright (c) 2000, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH QUOTAON 8 "Sep 16, 1996"
+.SH NAME
+quotaon, quotaoff \- turn ufs file system quotas on and off
+.SH SYNOPSIS
+.LP
+.nf
+\fBquotaon\fR [\fB-v\fR] \fIfilesystem\fR...
+.fi
+
+.LP
+.nf
+\fBquotaon\fR \fB-a\fR [\fB-v\fR]
+.fi
+
+.LP
+.nf
+\fBquotaoff\fR [\fB-v\fR] \fIfilesystem\fR...
+.fi
+
+.LP
+.nf
+\fBquotaoff\fR \fB-a\fR [\fB-v\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBquotaon\fR turns on disk quotas for one or more ufs file systems.
+.sp
+.LP
+Before a file system may have quotas enabled, a file named \fBquotas\fR, owned
+by root, must exist in the root directory of the file system. See
+\fBedquota\fR(8) for details on how to modify the contents of this file.
+.sp
+.LP
+\fBquotaoff\fR turns off disk quotas for one or more ufs file systems.
+.sp
+.LP
+The file systems specified must already be mounted.
+.sp
+.LP
+These commands update the \fBmntopts\fR field of the appropriate entries in
+\fB/etc/mnttab\fR to indicate when quotas are on or off for each file system.
+If quotas are on, the string \fBquota\fR will be added to \fBmntopts\fR; if
+quotas are off, the \fBquota\fR string is not present.
+.sp
+.LP
+\fIfilesystem\fR must be either the mount point of a file system, or the block
+device on which the file system resides.
+.SH OPTIONS
+.SS "quotaon"
+.sp
+.ne 2
+.na
+\fB\fB-a\fR\fR
+.ad
+.RS 6n
+This option is normally used at boot time to enable quotas. It applies only to
+those file systems in \fB/etc/vfstab\fR which have ``rq'' in the \fBmntopts\fR
+field, are currently mounted ``rw'', and have a \fBquotas\fR file in the root
+directory.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.RS 6n
+Display a message for each file system after quotas are turned on.
+.RE
+
+.SS "quotaoff"
+.sp
+.ne 2
+.na
+\fB\fB-a\fR\fR
+.ad
+.RS 6n
+Force all file systems in \fB/etc/mnttab\fR to have their quotas disabled.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.RS 6n
+Display a message for each file system affected.
+.RE
+
+.SH USAGE
+.sp
+.LP
+See \fBlargefile\fR(7) for the description of the behavior of \fBquotaon\fR and
+\fBquotaoff\fR when encountering files greater than or equal to 2 Gbyte ( 2^31
+bytes).
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/mnttab\fR\fR
+.ad
+.RS 15n
+mounted file systems
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/vfstab\fR\fR
+.ad
+.RS 15n
+list of default parameters for each file system
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR quotactl (4I),
+.BR mnttab (5),
+.BR vfstab (5),
+.BR attributes (7),
+.BR largefile (7),
+.BR edquota (8),
+.BR quota (8),
+.BR quotacheck (8),
+.BR repquota (8)
diff --git a/usr/src/man/man8/raidctl.8 b/usr/src/man/man8/raidctl.8
new file mode 100644
index 0000000000..e882592188
--- /dev/null
+++ b/usr/src/man/man8/raidctl.8
@@ -0,0 +1,1075 @@
+'\" te
+.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH RAIDCTL 8 "Feb 5, 2009"
+.SH NAME
+raidctl \- RAID hardware utility
+.SH SYNOPSIS
+.LP
+.nf
+\fBraidctl\fR \fB-C\fR \fI"disks"\fR [\fB-r\fR \fIraid_level\fR] [\fB-z\fR \fIcapacity\fR] [\fB-s\fR \fIstripe_size\fR] [\fB-f\fR]
+ controller
+.fi
+
+.LP
+.nf
+\fBraidctl\fR \fB-d\fR [\fB-f\fR] \fIvolume\fR
+.fi
+
+.LP
+.nf
+\fBraidctl\fR \fB-F\fR \fIfilename\fR [\fB-f\fR] \fIcontroller\fR\&.\|.\|.
+.fi
+
+.LP
+.nf
+\fBraidctl\fR \fB-a\fR {\fBset\fR | \fBunset\fR} \fB-g\fR \fIdisk\fR {\fBvolume\fR | \fBcontroller\fR}
+.fi
+
+.LP
+.nf
+\fBraidctl\fR \fB-p\fR \fI"param=value"\fR [\fB-f\fR] \fIvolume\fR
+.fi
+
+.LP
+.nf
+\fBraidctl\fR \fB-c\fR [\fB-f\fR] [\fB-r\fR \fIraid_level\fR] \fIdisk1\fR \fIdisk2\fR [\fIdisk3\fR...]
+.fi
+
+.LP
+.nf
+\fBraidctl\fR \fB-l\fR -g \fIdisk controller\fR
+.fi
+
+.LP
+.nf
+\fBraidctl\fR \fB-l\fR \fIvolume\fR
+.fi
+
+.LP
+.nf
+\fBraidctl\fR \fB-l\fR \fIcontroller\fR\&.\|.\|.
+.fi
+
+.LP
+.nf
+\fBraidctl\fR [\fB-l\fR]
+.fi
+
+.LP
+.nf
+\fBraidctl\fR \fB-S\fR [\fBvolume\fR | \fBcontroller\fR]
+.fi
+
+.LP
+.nf
+\fBraidctl\fR \fB-S\fR -g \fIdisk controller\fR
+.fi
+
+.LP
+.nf
+\fBraidctl\fR \fB-h\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBraidctl\fR utility is a hardware RAID configuration tool that supports
+different RAID controllers by providing a CLI (command-line interface) to
+end-users to create, delete or display RAID volume(s). The utility can also
+used to set properties of a volume, assign hot-spare (HSP) disks to volumes or
+controllers, and to update firmware/fcode/BIOS for RAID controllers.
+.sp
+.LP
+The \fBraidctl\fR utility requires privileges that are controlled by the
+underlying file-system permissions. Only privileged users can manipulate the
+RAID system configuration. If a non-privileged user attempts to run
+\fBraidctl\fR, the command fails with an exit status of 1.
+.sp
+.LP
+The \fBraidctl\fR utility, as described in this man page, defines a broad set
+of command line options to provide management for full-featured RAID
+controllers. However, support for a given option depends on two elements:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+the presence of a software driver
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+the firmware level of the RAID device
+.RE
+.sp
+.LP
+The dependency on a software driver is due to the design of \fBraidctl\fR. The
+utility is built on a common library that enables the insertion of plug-in
+modules for different drivers. Currently, the Solaris operating system is
+shipped with a plug-in for the \fBmpt\fR driver. This plug-in does not support
+all of the \fBraidctl\fR options. On a given storage device, options might be
+further limited by the device's firmware level.
+.sp
+.LP
+The level of support for the various \fBraidctl\fR options cannot be determined
+by \fBraidctl\fR. The user must rely on the documentation for his RAID
+controller or hardware platform.
+.sp
+.LP
+Currently, \fBraidctl\fR Currently, \fBraidctl\fR provides some level of
+support for the following RAID controllers:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+LSI1020 SCSI HBA
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+LSI1030 SCSI HBA
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+LSI1064 SAS HBA
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+LSI1068 SAS HBA
+.RE
+.sp
+.LP
+All of the above HBAs are maintained by the \fBmpt\fR driver, on X86-32/64 and
+SPARC platforms.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-C\fR \fI"disks"\fR [\fB-r\fR \fIraid_level\fR] [\fB-z\fR \fIcapacity\fR]
+[\fB-s\fR \fIstripe_size\fR] [\fB-f\fR] controller\fR
+.ad
+.sp .6
+.RS 4n
+Create a RAID volume using specified disks.
+.sp
+When creating a RAID volume using this option, the identity of the newly
+created volume is automatically generated and raidctl reports it to the user.
+.sp
+The argument specified by this option contains the elements used to form the
+volume that will be created. Elements can be either disks or sub-volumes, where
+disks are separated by space(s) and a sub-volume is a set of disks grouped by
+parenthesis. All disks should be in \fBC.ID.L\fR expression (for example,
+\fB0.1.2\fR represents a physical disk of channel 0, target id 1, and logical
+unit number 2). The argument must match the RAID level specified by the
+\fB-r\fR option, even if it's omitted. This means the argument can only be:
+.sp
+.ne 2
+.na
+\fBfor RAID 0\fR
+.ad
+.sp .6
+.RS 4n
+At least 2 disks
+.RE
+
+.sp
+.ne 2
+.na
+\fBfor RAID 1\fR
+.ad
+.sp .6
+.RS 4n
+Only 2 disks
+.RE
+
+.sp
+.ne 2
+.na
+\fBfor RAID 1E\fR
+.ad
+.sp .6
+.RS 4n
+At least 3 disks
+.RE
+
+.sp
+.ne 2
+.na
+\fBfor RAID 5\fR
+.ad
+.sp .6
+.RS 4n
+At least 3 disks
+.RE
+
+.sp
+.ne 2
+.na
+\fBfor RAID 10\fR
+.ad
+.sp .6
+.RS 4n
+At least 2 sub-volumes, each sub-volume must be formed by 2 disks
+.RE
+
+.sp
+.ne 2
+.na
+\fBfor RAID 50\fR
+.ad
+.sp .6
+.RS 4n
+At least 2 sub-volumes, each sub-volume must be formed by at least 3 disks, and
+the disk amount in each sub-volume should be the same
+.RE
+
+For example, the expression "0.0.0 0.1.0" means that the 2 specified disks form
+a RAID volume, which can either be a RAID 0 or a RAID 1 volume. "(0.0.0
+0.1.0)(0.2.0 0.3.0)" means that the first 2 disks and the last 2 disks form 2
+sub-volumes, and that these 2 sub-volumes form a RAID 10 volume. See the
+\fBEXAMPLES\fR section for more samples.
+.sp
+The \fB-r\fR option specifies the RAID level of the volume that will be
+created. Possible levels are 0, 1, 1E, 5, 10, 50. If this option is omitted,
+\fBraidctl\fR creates a RAID 1 volume by default.
+.sp
+The \fB-z\fR option specifies the capacity of the volume that will be created.
+The unit can be tera-bytes, giga-bytes, or mega-bytes (for example, 2t, 10g,
+20m, and so on). If this option is omitted, \fBraidctl\fR calculates the
+maximum capacity of the volume that can be created by the specified disks and
+uses this value to create the volume.
+.sp
+The \fB-s\fR option specifies the stripe size of the volume that will be
+created. The possible values are 512, 1k, 2k, 4k, 8k, 16k, 32k, 64k, or 128k.
+If this option is omitted, \fBraidctl\fR chooses an appropriate value for the
+volume (for example, 64k).
+.sp
+In some cases, the creation of a RAID volume may cause data on specified disks
+to be lost (for instance, on LSI1020, LSI1030, SAS1064, or SAS1068 HBAs), and
+\fBraidctl\fR prompts the user for confirmation about the creation. Use the
+\fB-f\fR option to force the volume creation without prompting the user for
+confirmation.
+.sp
+The controller argument is used to identify which RAID controller the specified
+disks belongs. The \fB-l\fR option can be used to list the controller's ID
+number.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-d\fR [\fB-f\fR] \fIvolume\fR\fR
+.ad
+.sp .6
+.RS 4n
+Delete the RAID volume specified as volume. The volume is specified in
+canonical form (for example, \fBc0t0d0\fR).
+.sp
+When a volume is deleted, all data is lost. Therefore, unless the \fB-f\fR
+option is specified, \fBraidctl\fR prompts the user for confirmation before
+deleting the volume.
+.sp
+When a RAID 1 volume is deleted from a LSI1020, LSI1030, SAS1064, or SAS1068
+HBA, the primary and secondary disks are "split". If the volume was in
+\fBSYNCING\fR state, the primary will contain the data, and the secondary will
+not. If the volume state was \fBOPTIMAL\fR, both disks will contain a complete
+image of the data.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-F\fR \fIfilename\fR [\fB-f\fR] \fIcontroller\fR\&.\|.\|.\fR
+.ad
+.sp .6
+.RS 4n
+Update the firmware running on the specified controller(s). The \fBraidctl\fR
+utility prompts the user for confirmation of this action, unless the \fB-f\fR
+option is provided.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-a\fR {\fBset\fR | \fBunset\fR} \fB-g\fR \fIdisk\fR {\fBvolume\fR |
+\fBcontroller\fR}\fR
+.ad
+.sp .6
+.RS 4n
+If the volume is specified, \fBraidctl\fR sets or unsets the disk as a local
+hot-spare disk dedicated to the volume, depending on the value specified by the
+\fB-a\fR option. If the controller is specified, \fBraidctl\fR sets or unsets
+the disk as a global hot-spare disk.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR \fI"param=value"\fR [\fB-f\fR] \fIvolume\fR\fR
+.ad
+.sp .6
+.RS 4n
+Change the property value for a given RAID volume. This option can be used to
+change cache write policy or to activate a volume. When changing the cache
+write policy, \fIparam\fR should be the string \fBwp\fR (\fBSET_WR_POLICY\fR),
+and \fIvalue\fR can be either \fBon\fR or \fBoff\fR. When used to activate a
+volume, \fIparam\fR should be \fBstate\fR and \fIvalue\fR should be
+\fBactivate\fR.
+.sp
+Changing a RAID volume's property may affect the internal behavior of the RAID
+controller, so \fBraidctl\fR prompts the user for a confirmation before
+applying the change, unless the \fB-f\fR option is specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-c\fR [\fB-f\fR] [\fB-r\fR \fIraid_level\fR] \fIdisk1\fR \fIdisk2\fR
+[\fIdisk3\fR...]\fR
+.ad
+.sp .6
+.RS 4n
+Create a volume using the specified disks. This is an alternative to the
+\fB-C\fR option with similar functionality. This option is preserved for
+compatibility reasons, but only works with LSI1020, LSI1030, SAS1064, and
+SAS1068 HBAs to create RAID 0, RAID 1, or RAID 1E volumes. For other HBAs, the
+user can only use the \fB-C\fR option.
+.sp
+The \fB-r\fR option can be used to specify the RAID level of the target volume.
+If the \fB-r\fR option is omitted, \fBraidctl\fR will create a RAID 1 volume.
+.sp
+Disks must be specified in Solaris canonical format (for example, c0t0d0).
+.sp
+Creating a RAID 1 volume with this option replaces the contents of disk2 with
+the contents of disk1.
+.sp
+When the user creates a RAID volume with this option, the RAID volume assumes
+the identity of disk1. Other disks become invisible and the RAID volume appears
+as one disk.
+.sp
+Creating a volume with this option is by default interactive. The user must
+answer a prompt affirmatively to create the volume. Use the \fB-f\fR option to
+force the volume creation without prompting the user for confirmation.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR -g \fIdisk controller\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display information about the specified disk of the given controller. The
+output includes the following information:
+.sp
+.ne 2
+.na
+\fBDisk\fR
+.ad
+.sp .6
+.RS 4n
+Displays the disk in \fBC.ID.L\fR expression disk.
+.RE
+
+.sp
+.ne 2
+.na
+\fBVendor\fR
+.ad
+.sp .6
+.RS 4n
+Displays the vendor ID string.
+.RE
+
+.sp
+.ne 2
+.na
+\fBProduct\fR
+.ad
+.sp .6
+.RS 4n
+Displays the product ID string.
+.RE
+
+.sp
+.ne 2
+.na
+\fBCapacity\fR
+.ad
+.sp .6
+.RS 4n
+Displays the total capacity of the disk.
+.RE
+
+.sp
+.ne 2
+.na
+\fBStatus\fR
+.ad
+.sp .6
+.RS 4n
+Displays the current status of disk. The status can be either "\fBGOOD\fR"
+(operating normally), "\fBFAILED\fR" (non-functional), or "\fBMISSING\fR" (disk
+not present).
+.RE
+
+.sp
+.ne 2
+.na
+\fBHSP\fR
+.ad
+.sp .6
+.RS 4n
+Indicates if the disk has been set as a global hot-spare disk, local hot-spare
+disk, or a normal one. If it is a local hot-spare disk, all volumes which this
+disk is assigned to are displayed.
+.RE
+
+.sp
+.ne 2
+.na
+\fBGUID\fR
+.ad
+.sp .6
+.RS 4n
+GUID string for the specified disk. This is an additional datum and might be
+unavailable in some cases.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR \fIvolume\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display information about the specified volume. The output includes the
+following information:
+.sp
+.ne 2
+.na
+\fBVolume\fR
+.ad
+.sp .6
+.RS 4n
+Displays volume in canonical format.
+.RE
+
+.sp
+.ne 2
+.na
+\fBSub\fR
+.ad
+.sp .6
+.RS 4n
+Displays sub-volumes, if the specified volume is of RAID 10 or RAID 50 volume.
+.RE
+
+.sp
+.ne 2
+.na
+\fBDisk\fR
+.ad
+.sp .6
+.RS 4n
+Displays all disks that form the specified volume.
+.RE
+
+.sp
+.ne 2
+.na
+\fBStripe Size\fR
+.ad
+.sp .6
+.RS 4n
+Displays the stripe size of the volume.
+.RE
+
+.sp
+.ne 2
+.na
+\fBStatus\fR
+.ad
+.sp .6
+.RS 4n
+Displays the status of the specified volume, or the sub-volumes or disks that
+form the specified volume. For an inactive volume, the status should be
+\fBINACTIVE\fR; otherwise it can be \fBOPTIMAL\fR (operating optimally),
+\fBDEGRADED\fR (operating with reduced functionality), \fBFAILED\fR
+(non-functional), or \fBSYNC\fR (disks are syncing). For a disk, the status
+can be \fBGOOD\fR, \fBFAILED\fR, or \fBMISSING\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBCache\fR
+.ad
+.sp .6
+.RS 4n
+Indicates whether the cache is applied to \fBI/O\fR write activities. The cache
+can be either "\fBON\fR" or "\fBOFF\fR".
+.RE
+
+.sp
+.ne 2
+.na
+\fBRAID level\fR
+.ad
+.sp .6
+.RS 4n
+Displays the RAID level. The RAID level can be either 0, 1, 1E, 5, 10, or 50.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR \fIcontroller ...\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display information about the specified controller(s). The output includes the
+following information:
+.sp
+.ne 2
+.na
+\fBController\fR
+.ad
+.sp .6
+.RS 4n
+Displays the RAID controller's ID number.
+.RE
+
+.sp
+.ne 2
+.na
+\fBType\fR
+.ad
+.sp .6
+.RS 4n
+Displays the RAID controller's product type.
+.RE
+
+.sp
+.ne 2
+.na
+\fBfw_version\fR
+.ad
+.sp .6
+.RS 4n
+Displays the controller's firmware version.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB[\fB-l\fR]\fR
+.ad
+.sp .6
+.RS 4n
+List all RAID related objects that the \fBraidctl\fR utility can manipulate,
+including all available RAID controllers, RAID volumes, and physical disks. The
+\fB-l\fR option can be omitted.
+.sp
+The output includes the following information:
+.sp
+.ne 2
+.na
+\fBController\fR
+.ad
+.sp .6
+.RS 4n
+Displays the RAID controller's ID number.
+.RE
+
+.sp
+.ne 2
+.na
+\fBVolume\fR
+.ad
+.sp .6
+.RS 4n
+Displays the logical RAID volume name.
+.RE
+
+.sp
+.ne 2
+.na
+\fBDisk\fR
+.ad
+.sp .6
+.RS 4n
+Displays the RAID disk in \fBC.ID.L\fR expression.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-S\fR [\fBvolume\fR | \fBcontroller\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Takes a snapshot of the RAID configuration information including all available
+RAID devices, RAID controllers, volumes, and disks.
+.sp
+Each line of the output specifies a RAID device and its related information,
+separated by space(s). All volumes and disks belong to the last specified
+controller.
+.sp
+The output lists the following information:
+.sp
+.ne 2
+.na
+\fBController\fR
+.ad
+.sp .6
+.RS 4n
+Displays the controller ID number, and the controller type string in
+double-quotation marks.
+.RE
+
+.sp
+.ne 2
+.na
+\fBVolume\fR
+.ad
+.sp .6
+.RS 4n
+Displays the RAID volume name, number of component disks, the \fBC.ID.L\fR
+expression of the component disks, the RAID level, and the status. The status
+can be either \fBOPTIMAL\fR, \fBDEGRADED\fR, \fBFAILED\fR, or \fBSYNCING\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBDisk\fR
+.ad
+.sp .6
+.RS 4n
+Displays the \fBC.ID.L\fR expression of the disk, and the status. The status
+can be either \fBGOOD\fR, \fBFAILED\fR, or \fBHSP\fR (disk has been set as a
+stand-by disk).
+.RE
+
+If a volume or a controller is specified, a snapshot is only taken of the
+information for the specified volume or controller.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-S\fR -g \fIdisk controller\fR\fR
+.ad
+.sp .6
+.RS 4n
+Takes a snapshot of the information for the specified disk.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-h\fR\fR
+.ad
+.sp .6
+.RS 4n
+Print out the usage string.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRCreating the RAID Configuration
+.sp
+.LP
+The following command creates a RAID 0 volume of 10G on controller 0, and the
+stripe size will be set to 64k:
+
+.sp
+.in +2
+.nf
+# \fBraidctl -C "0.0.0 0.2.0" -r 0 -z 10g -s 64k 0\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The following command creates a RAID 1 volume on controller 2:
+
+.sp
+.in +2
+.nf
+# \fBraidctl -C "0.0.0 1.1.0" -r 1 2\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The following command creates a RAID 5 volume on controller 2:
+
+.sp
+.in +2
+.nf
+# \fBraidctl -C "0.0.0 0.1.0 0.2.0" -r 5 2\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The following command creates a RAID 10 volume on controller 0:
+
+.sp
+.in +2
+.nf
+# \fBraidctl -C "(0.0.0 0.1.0)(0.2.0 0.3.0)" -r 10 0\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The following command creates a RAID 50 volume on controller 0:
+
+.sp
+.in +2
+.nf
+# \fBraidctl -C "(0.0.0 0.1.0 0.2.0)(0.3.0 0.4.0 0.5.0)" -r 50 0\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRDisplaying the RAID Configuration
+.sp
+.LP
+The following command displays all available controllers, volumes, and disks:
+
+.sp
+.in +2
+.nf
+# \fBraidctl -l\fR
+
+Controller: 0
+Controller: 2
+ Volume:c2t0d0
+ Disk: 0.0.0
+ Disk: 0.1.0
+ Disk: 0.2.0
+ Disk: 0.3.0(HSP)
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The following command displays information about controller 2:
+
+.sp
+.in +2
+.nf
+# \fBraidctl -l 2\fR
+
+Controller Type Fw_version
+--------------------------------------------------------------
+c2 LSI 1030 1.03.39.00
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The following command displays information about the specified volume:
+.sp
+.in +2
+.nf
+# \fBraidctl -l c2t0d0\fR
+
+Volume Size Stripe Status Cache RAID
+ Sub Size Level
+ Disk
+--------------------------------------------------------------
+c2t0d0 10240M 64K OPTIMAL ON RAID5
+ 0.0.0 5120M GOOD
+ 0.1.0 5120M GOOD
+ 0.2.0 5120M GOOD
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The following command displays information about disk 0.0.0 on controller 0:
+.sp
+.in +2
+.nf
+# \fBraidctl -l -g 0.0.0 0\fR
+
+Disk Vendor Product Firmware Capacity Status HSP
+--------------------------------------------------------------------
+0.0.0 HITACHI H101473SCSUN72G SQ02 68.3G GOOD N/A
+GUID:2000000cca02536c
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRDeleting the RAID Configuration
+.sp
+.LP
+The following command deletes a volume:
+
+.sp
+.in +2
+.nf
+# \fBraidctl -d c0t0d0\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 4 \fRUpdating Flash Images on the Controller
+.sp
+.LP
+The following command updates flash images on the controller 0:
+
+.sp
+.in +2
+.nf
+# \fBraidctl -F lsi_image.fw 0\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 5 \fRSetting or Unsetting a Hot-Spare Disk
+.sp
+.LP
+The following command sets disk 0.3.0 on controller 2 as a global hot-spare
+disk:
+
+.sp
+.in +2
+.nf
+# \fBraidctl -a set -g 0.3.0 2\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The following command sets disk 0.3.0 on controller 2 as a local hot-spare disk
+to volume c2t0d0:
+
+.sp
+.in +2
+.nf
+# \fBraidctl -a set -g 0.3.0 c2t0d0\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The following command converts disk 0.3.0 on controller 2 from a global
+hot-spare disk to a normal one:
+
+.sp
+.in +2
+.nf
+# \fBraidctl -a unset -g 0.3.0 2\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The following command removes disk 0.3.0 from being a local hot-spare disk from
+volume c2t0d0:
+
+.sp
+.in +2
+.nf
+# \fBraidctl -a unset -g 0.3.0 c2t0d0\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 6 \fRSetting the Volume's Property
+.sp
+.LP
+The following command sets the write policy of the volume to "\fBoff\fR":
+
+.sp
+.in +2
+.nf
+# \fBraidctl -a set -p "wp=off" c0t0d0\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 7 \fRCreating Volumes with the \fB-c\fR Option
+.sp
+.LP
+The following command creates a RAID 1 volume:
+
+.sp
+.in +2
+.nf
+# \fBraidctl -c c0t0d0 c0t1d0\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The following command creates a RAID 0 volume:
+
+.sp
+.in +2
+.nf
+# \fBraidctl -c -r 0 c0t1d0 c0t2d0 c0t3d0\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 8 \fRTaking a Snapshot of the RAID Configuration
+.sp
+.LP
+The following command takes a snapshot of all RAID devices:
+
+.sp
+.in +2
+.nf
+# \fB# raidctl -S\fR
+
+1 "LSI 1030"
+c1t1d0 2 0.2.0 0.3.0 1 DEGRADED
+0.2.0 GOOD
+0.3.0 FAILED
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The following command takes a snapshot about volume c1t0d0:
+
+.sp
+.in +2
+.nf
+# \fBraidctl -S c1t0d0\fR
+
+c1t0d0 2 0.0.0 0.1.0 1 OPTIMAL
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The following command takes a snapshot about disk 0.1.0 on controller 1:
+
+.sp
+.in +2
+.nf
+# \fBraidctl -S -g 0.1.0 1\fR
+
+0.1.0 GOOD
+.fi
+.in -2
+.sp
+
+.SH EXIT STATUS
+.sp
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.sp .6
+.RS 4n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB1\fR\fR
+.ad
+.sp .6
+.RS 4n
+Invalid command line input or permission denied.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB2\fR\fR
+.ad
+.sp .6
+.RS 4n
+Request operation failed.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Committed
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR mpt (4D),
+.BR attributes (7)
+.sp
+.LP
+System Administration Guide: Basic Administration
+.SH WARNINGS
+.sp
+.LP
+Do not create raid volumes on internal \fBSAS\fR disks if you are going to use
+the Solaris Multipathing I/O feature (also known as MPxIO). Creating a new raid
+volume under Solaris Multipathing will give your root device a new \fBGUID\fR
+which does not match the \fBGUID\fR for the existing devices. This will cause a
+boot failure since your root device entry in \fB/etc/vfstab\fR will not match.
+.SH NOTES
+.sp
+.LP
+The \fB-z\fR option is not supported on systems that use the \fBmpt\fR driver
+and LSI RAID controllers.
diff --git a/usr/src/man/man8/ramdiskadm.8 b/usr/src/man/man8/ramdiskadm.8
new file mode 100644
index 0000000000..5a1c9be6f1
--- /dev/null
+++ b/usr/src/man/man8/ramdiskadm.8
@@ -0,0 +1,164 @@
+'\" te
+.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH RAMDISKADM 8 "Mar 25, 2003"
+.SH NAME
+ramdiskadm \- administer ramdisk pseudo device
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/ramdiskadm\fR \fB-a\fR \fIname\fR \fIsize\fR [g | m | k | b]
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/ramdiskadm\fR \fB-d\fR \fIname\fR
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/ramdiskadm\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBramdiskadm\fR command administers \fBramdisk\fR(4D), the ramdisk driver.
+Use \fBramdiskadm\fR to create a new named ramdisk device, delete an existing
+named ramdisk, or list information about existing ramdisks.
+.sp
+.LP
+Ramdisks created using \fBramdiskadm\fR are not persistent across reboots.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-a\fR \fIname\fR \fIsize\fR\fR
+.ad
+.RS 16n
+Create a ramdisk named \fIname\fR of size \fIsize\fR and its corresponding
+block and character device nodes.
+.sp
+\fIname\fR must be composed only of the characters a-z, A-Z, 0-9, _ (underbar),
+and - (hyphen), but it must not begin with a hyphen. It must be no more than 32
+characters long. Ramdisk names must be unique.
+.sp
+The size can be a decimal number, or, when prefixed with \fB0x\fR, a
+hexadecimal number, and can specify the size in bytes (no suffix), 512-byte
+blocks (suffix \fBb\fR), kilobytes (suffix \fBk\fR), megabytes (suffix \fBm\fR)
+or gigabytes (suffix \fBg\fR). The size of the ramdisk actually created might
+be larger than that specified, depending on the hardware implementation.
+.sp
+If the named ramdisk is successfully created, its block device path is printed
+on standard out.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-d\fR \fIname\fR\fR
+.ad
+.RS 16n
+Delete an existing ramdisk of the name \fIname\fR. This command succeeds only
+when the named ramdisk is not open. The associated memory is freed and the
+device nodes are removed.
+.sp
+You can delete only ramdisks created using \fBramdiskadm\fR. It is not possible
+to delete a ramdisk that was created during the boot process.
+.RE
+
+.sp
+.LP
+Without options, \fBramdiskadm\fR lists any existing ramdisks, their sizes (in
+decimal), and whether they can be removed by \fBramdiskadm\fR (see the
+description of the \fB-d\fR option, above).
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRCreating a 2MB Ramdisk Named \fBmydisk\fR
+.sp
+.in +2
+.nf
+# ramdiskadm -a mydisk 2m
+/dev/ramdisk/mydisk
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRListing All Ramdisks
+.sp
+.in +2
+.nf
+# ramdiskadm
+Block Device Size Removable
+/dev/ramdisk/miniroot 134217728 No
+/dev/ramdisk/certfs 1048576 No
+/dev/ramdisk/mydisk 2097152 Yes
+.fi
+.in -2
+.sp
+
+.SH EXIT STATUS
+.sp
+.LP
+\fBramdiskadm\fR returns the following exit values:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 6n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB>0\fR\fR
+.ad
+.RS 6n
+An error occurred.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR ramdisk (4D),
+.BR attributes (7)
+.SH NOTES
+.sp
+.LP
+The abilities of \fBramdiskadm\fR and the privilege level of the person who
+uses the utility are controlled by the permissions of \fB/dev/ramdiskctl\fR.
+Read access allows query operations, for example, listing device information.
+Write access is required to do any state-changing operations, for example,
+creating or deleting ramdisks.
+.sp
+.LP
+As shipped, \fB/dev/ramdiskctl\fR is owned by \fBroot\fR, in group \fBsys\fR,
+and mode 0644, so all users can do query operations but only root can perform
+state-changing operations. An administrator can give write access to
+non-privileged users, allowing them to add or delete ramdisks. However,
+granting such ability entails considerable risk; such privileges should be
+given only to a trusted group.
diff --git a/usr/src/man/man8/rcapadm.8 b/usr/src/man/man8/rcapadm.8
new file mode 100644
index 0000000000..a7e9e3f531
--- /dev/null
+++ b/usr/src/man/man8/rcapadm.8
@@ -0,0 +1,265 @@
+'\" te
+.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH RCAPADM 8 "Mar 5, 2017"
+.SH NAME
+rcapadm \- configure resource capping daemon
+.SH SYNOPSIS
+.LP
+.nf
+\fBrcapadm\fR
+.fi
+
+.LP
+.nf
+\fBrcapadm\fR [ [\fB-n\fR] \fB-E\fR | \fB-D\fR]
+ [\fB-i\fR \fIinterval=value\fR,...,\fIinterval=value\fR] [\fB-c\fR \fIpercent\fR]
+ [\fB-z\fR \fIzonename\fR \fB-m\fR \fImaxvalue\fR]
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBrcapadm\fR command allows a user with the privileges described below to
+configure various attributes of the resource capping daemon. If used without
+arguments, \fBrcapadm\fR displays the current status of the resource capping
+daemon if it has been configured. See \fBrcapd\fR(8) for more information.
+.sp
+.LP
+In the current release of the Solaris operating environment, \fBrcapadm\fR is
+available to users with all privileges and to users who have the Process
+Management profile in their list of profiles. The System Administrator role
+includes the Process Management profile.
+.SH OPTIONS
+.ne 2
+.na
+\fB\fB-c\fR \fIpercent\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set the minimum physical memory utilization for memory cap enforcement. Caps
+will not be enforced until the physical memory available to processes is low.
+The \fIpercent\fR value should be in the range 0 to 100. The minimum (and
+default) value is \fB0\fR, which means that memory caps are always enforced.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-D\fR\fR
+.ad
+.sp .6
+.RS 4n
+Disable the resource capping daemon so that it will not be started when the
+system is booted. Also stop the resource capping daemon now, if the \fB-n\fR
+option is not specified and it is currently running.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-E\fR\fR
+.ad
+.sp .6
+.RS 4n
+Enable the resource capping daemon so that it will be started each time the
+system is booted. Also start the resource capping daemon now, if the \fB-n\fR
+option is not specified and it is not currently running.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-i\fR \fIinterval=value\fR,...,\fIinterval=value\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set intervals for various periodic operations performed by \fBrcapd\fR. All
+intervals are specified in seconds. You can set the following intervals:
+.sp
+.ne 2
+.na
+\fB\fBscan\fR\fR
+.ad
+.RS 10n
+The interval at which \fBrcapd\fR scans for new processes. The default scan
+interval is every 15 seconds. The minimum value is 1 second.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsample\fR\fR
+.ad
+.RS 10n
+The interval of process resident set size sampling. The default sample interval
+is every 5 seconds. The minimum value is 1 second.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBreport\fR\fR
+.ad
+.RS 10n
+The interval at which various paging statistics are updated by \fBrcapd\fR, in
+seconds. These statistics can be viewed by using \fBrcapstat\fR(1). The
+default reporting interval is every 5 seconds. When the interval is set to
+\fB0\fR, statistics will not be updated.
+.LP
+Note -
+.sp
+.RS 2
+Paging refers to the act of relocating portions of memory, called pages, to or
+from physical memory. \fBrcapd\fR pages out the most infrequently used pages.
+.RE
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBconfig\fR\fR
+.ad
+.RS 10n
+The reconfiguration interval, in seconds. At each reconfiguration event,
+\fBrcapd\fR checks its configuration file for updates, and scans the project
+databases for new project caps. The default reconfiguration interval is every
+60 seconds. The minimum interval is \fB0\fR. When the interval is set to
+\fB0\fR, no periodic reconfiguration occurs, although the running daemon can
+still be reconfigured by sending it \fBSIGHUP\fR.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-m\fR \fImaxvalue\fR\fR
+.ad
+.sp .6
+.RS 4n
+Used in conjunction with the \fB-z\fR option. Specifies a value for
+\fBrcap.max-rss\fR, a dynamically-set cap on the usage of physical memory for
+the zone specified by \fB-z\fR. You can apply a scale (\fBK\fR, \fBM\fR,
+\fBG\fR, \fBT\fR) to the value you specify. \fBK\fR means kilobyte; \fBM\fR,
+megabyte; \fBG\fR, gigabyte; and \fBT\fR, terabyte. For example, \fB100M\fR is
+100 megabytes.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR\fR
+.ad
+.sp .6
+.RS 4n
+Do not affect the running state of the resource capping daemon when enabling or
+disabling it.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-z\fR \fIzonename\fR\fR
+.ad
+.sp .6
+.RS 4n
+Used in conjunction with the \fB-m\fR option. Specifies the zone for which you
+are dynamically specifying a cap on physical memory usage (using \fB-m\fR).
+.RE
+
+.LP
+Note -
+.sp
+.RS 2
+To set a persistent cap on memory usage within a zone, use \fBzonecfg\fR(8).
+.RE
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRConfiguring the Resource Capping Daemon with Immediate
+Enforcement
+.sp
+.LP
+#
+.BI "rcapadm -E -i scan=" 15 ,sample= 5 ,report= 5 ,config= 60 " -c 0"
+
+.LP
+\fBExample 2 \fRSpecifying a Resource Cap for a Zone
+.sp
+.LP
+The command shown below specifies the maximum amount of memory that can be
+consumed by a specified zone. Note that this value lasts only until the next
+reboot. To set a persistent cap, use \fBzonecfg\fR(8).
+
+.sp
+.in +2
+.nf
+# \fBrcapadm -z testzone -m 512M\fR
+.fi
+.in -2
+.sp
+
+.SH EXIT STATUS
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 5n
+Successful completion. The modifications to the current configuration were
+valid and made successfully.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB1\fR\fR
+.ad
+.RS 5n
+An error occurred. A fatal error occurred either in obtaining or modifying the
+resource capping configuration.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB2\fR\fR
+.ad
+.RS 5n
+Invalid command-line options were specified.
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+.TE
+
+.sp
+.LP
+The \fB-z\fR and \fB-m\fR options are committed interfaces.
+.SH SEE ALSO
+.LP
+.BR rcapstat (1),
+.BR project (5),
+.BR attributes (7),
+.BR zones (7),
+.BR rcapd (8),
+.BR zonecfg (8)
+.sp
+.LP
+"Physical Memory Control Using the Resource Capping Daemon" in \fISystem
+Administration Guide: Solaris Containers-Resource Management, and Solaris
+Zones\fR
diff --git a/usr/src/man/man8/rcapd.8 b/usr/src/man/man8/rcapd.8
new file mode 100644
index 0000000000..fdd798addc
--- /dev/null
+++ b/usr/src/man/man8/rcapd.8
@@ -0,0 +1,187 @@
+'\" te
+.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH RCAPD 8 "Dec 19, 2006"
+.SH NAME
+rcapd \- resource cap enforcement daemon
+.SH SYNOPSIS
+.LP
+.nf
+\fBrcapd\fR [\fB-d\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBrcapd\fR daemon enforces resource caps on collections of processes.
+Per-project and per-zone physical memory caps are supported. For information
+about projects, see \fBproject\fR(5). For zones information, see \fBzones\fR(7)
+.sp
+.LP
+When the resident set size (RSS) of a collection of processes exceeds its cap,
+\fBrcapd\fR takes action and reduces the RSS of the collection.
+.sp
+.LP
+The virtual memory system divides physical memory into segments known as pages.
+To read data from a file into memory, the virtual memory system reads in
+individual pages. To reduce resource consumption, the daemon can page out, or
+relocate, infrequently used pages to an area outside of physical memory.
+.sp
+.LP
+In the \fBproject\fR file, caps are defined for projects that have positive
+values for the following project attribute:
+.sp
+.ne 2
+.na
+\fB\fBrcap.max-rss\fR\fR
+.ad
+.RS 16n
+The total amount of physical memory, in bytes, that is available to the
+project's member processes
+.RE
+
+.sp
+.LP
+See \fBproject\fR(5) for a description of project attributes.
+.sp
+.LP
+For a system with one or more zones, you can dynamically set the
+\fBrcap.max-rss\fR value for a zone with \fBrcapadm\fR(8). To set a persistent
+cap on memory usage within a zone, you use \fBzonecfg\fR(8).
+.sp
+.LP
+You configure \fBrcapd\fR through the use of \fBrcapadm\fR(8). The daemon can
+be monitored with \fBrcapstat\fR(1). Configuration changes are incorporated
+into \fBrcapd\fR by sending it \fBSIGHUP\fR (see \fBkill\fR(1)), or according
+to the configuration interval (see \fBrcapadm\fR(8)).
+.SH OPTIONS
+.sp
+.LP
+The following option is supported:
+.sp
+.ne 2
+.na
+\fB\fB-d\fR\fR
+.ad
+.RS 6n
+Enable debug mode. Messages are displayed on the invoking user's terminal.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRSetting Resident Set Size Cap Attribute
+.sp
+.LP
+The following line in the \fB/etc/project\fR database sets an RSS cap of
+1073741824 bytes for a project named \fBfoo\fR.
+
+.sp
+.in +2
+.nf
+foo:100::foo,root::rcap.max-rss=10737418240
+.fi
+.in -2
+
+.SH EXIT STATUS
+.sp
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB0\fR
+.ad
+.RS 5n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB1\fR
+.ad
+.RS 5n
+An error occurred.
+.RE
+
+.sp
+.ne 2
+.na
+\fB2\fR
+.ad
+.RS 5n
+Invalid command-line options were specified.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/project\fR\fR
+.ad
+.RS 16n
+Project database.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR rcapstat (1),
+.BR svcs (1),
+.BR project (5),
+.BR attributes (7),
+.BR smf (7),
+.BR zones (7),
+.BR rcapadm (8),
+.BR svcadm (8),
+.BR zonecfg (8)
+.sp
+.LP
+"Physical Memory Control Using the Resource Capping Daemon" in \fISystem
+Administration Guide: Solaris Containers-Resource Management, and Solaris
+Zones\fR
+.SH NOTES
+.sp
+.LP
+If killed with \fBSIGKILL\fR, \fBrcapd\fR can leave processes in a stopped
+state. Use \fBSIGTERM\fR to cause \fBrcapd\fR to terminate properly.
+.sp
+.LP
+A collection's RSS can exceed its cap for some time before the cap is enforced,
+even if sufficient pageable memory is available. This period of time can be
+reduced by shortening the RSS sampling interval with \fBrcapadm\fR.
+.sp
+.LP
+The \fBrcapd\fR service is managed by the service management facility,
+\fBsmf\fR(7), under the service identifier:
+.sp
+.in +2
+.nf
+svc:/system/rcap:default
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Administrative actions on this service, such as enabling, disabling, or
+requesting restart, can be performed using \fBsvcadm\fR(8). The service's
+status can be queried using the \fBsvcs\fR(1) command.
diff --git a/usr/src/man/man8/rctladm.8 b/usr/src/man/man8/rctladm.8
new file mode 100644
index 0000000000..64f43bba21
--- /dev/null
+++ b/usr/src/man/man8/rctladm.8
@@ -0,0 +1,192 @@
+'\" te
+.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH RCTLADM 8 "Jul 2, 2007"
+.SH NAME
+rctladm \- display or modify global state of system resource controls
+.SH SYNOPSIS
+.LP
+.nf
+\fBrctladm\fR [\fB-lu\fR] [\fB-e\fR \fIaction\fR] [\fB-d\fR \fIaction\fR] [\fIname\fR...]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBrctladm\fR command allows the examination and modification of active
+resource controls on the running system. An instance of a resource control is
+referred to as an \fBrctl\fR. See \fBsetrctl\fR(2) for a description of an
+\fBrctl\fR; see \fBresource_controls\fR(7) for a list of the \fBrctl\fRs
+supported in the current release of the Solaris operating system. Logging of
+\fBrctl\fR violations can be activated or deactivated system-wide and active
+\fBrctl\fRs (and their state) can be listed.
+.sp
+.LP
+An \fBrctladm\fR command without options is the equivalent of an \fBrctladm\fR
+with the \fB-l\fR option. See the description of \fB-l\fR below.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-d\fR \fIaction\fR\fR
+.ad
+.br
+.na
+\fB\fB-e\fR \fIaction\fR\fR
+.ad
+.sp .6
+.RS 4n
+Disable (\fB-d\fR) or enable (\fB-e\fR) the global action on the specified
+\fBrctl\fRs. If no \fBrctl\fR is specified, no action is taken and an error
+status is returned. You can use the special token \fBall\fR with the disable
+option to deactivate all global actions on a resource control.
+.sp
+You can set the \fBsyslog\fR action to a specific degree by assigning a
+severity level. To do this, specify \fBsyslog=\fIlevel\fR\fR, where \fIlevel\fR
+is one of the string tokens given as valid severity levels in \fBsyslog\fR(3C).
+You can omit the common \fBLOG_\fR prefix on the severity level. Note that not
+all \fBrctl\fRs support the \fBsyslog\fR action. See
+\fBresource_controls\fR(7).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR\fR
+.ad
+.sp .6
+.RS 4n
+List information about \fBrctl\fRs. The name, global event actions and
+statuses, and global flags are displayed. If one or more name operands are
+specified, only those \fBrctl\fRs matching the names are displayed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-u\fR\fR
+.ad
+.sp .6
+.RS 4n
+Configure resource controls based on the contents of \fB/etc/rctladm.conf\fR.
+Any name operands are ignored.
+.RE
+
+.SH OPERANDS
+.sp
+.LP
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fB\fIname\fR\fR
+.ad
+.sp .6
+.RS 4n
+The name of the \fBrctl\fR to operate on. Multiple \fBrctl\fR names can be
+specified. If no names are specified, and the list action has been specified,
+then all \fBrctl\fRs are listed. If the enable or disable action is specified,
+one or more \fBrctl\fR names must be specified.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRActivating System Logging for Specific Violations
+.sp
+.LP
+The following command activates system logging of all violations of
+\fBtask.max-lwps\fR.
+
+.sp
+.in +2
+.nf
+# rctladm -e syslog task.max-lwps
+#
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRExamining the Current Status of a Specific Resource
+.sp
+.LP
+The following command examines the current status of the \fBtask.max-lwps\fR
+resource.
+
+.sp
+.in +2
+.nf
+$ rctladm -l task.max-lwps
+task.max-lwps syslog=DEBUG
+$
+.fi
+.in -2
+.sp
+
+.SH EXIT STATUS
+.sp
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.sp .6
+.RS 4n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB1\fR\fR
+.ad
+.sp .6
+.RS 4n
+A fatal error occurred. A message is written to standard error to indicate each
+resource control for which the operation failed. The operation was successful
+for any other resource controls specified as operands.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB2\fR\fR
+.ad
+.sp .6
+.RS 4n
+Invalid command line options were specified.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/rctladm.conf\fR\fR
+.ad
+.sp .6
+.RS 4n
+Each time \fBrctladm\fR is executed, it updates the contents of
+\fBrctladm.conf\fR with the current configuration.
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR prctl (1),
+.BR getrctl (2),
+.BR setrctl (2),
+.BR rctlblk_get_global_action (3C),
+.BR rctlblk_get_global_flags (3C),
+.BR attributes (7),
+.BR resource_controls (7)
+.SH NOTES
+.sp
+.LP
+By default, there is no global logging of \fBrctl\fR violations.
diff --git a/usr/src/man/man8/rdate.8 b/usr/src/man/man8/rdate.8
new file mode 100644
index 0000000000..028fc4c4c3
--- /dev/null
+++ b/usr/src/man/man8/rdate.8
@@ -0,0 +1,45 @@
+'\" te
+.\" Copyright (c) 2001 Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH RDATE 8 "Mar 16, 2006"
+.SH NAME
+rdate \- set system date from a remote host
+.SH SYNOPSIS
+.LP
+.nf
+\fBrdate\fR \fIhostname\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBrdate\fR sets the local date and time from the \fIhostname\fR given as an
+argument. You must have the authorization \fBsolaris.system.date\fR on the
+local system. Typically, \fBrdate\fR is used in a startup script.
+.sp
+.LP
+\fBrdate\fR requests are responded to by the "time" service on the specified
+host. To enable the "time" service, use the following commands:
+.sp
+.in +2
+.nf
+svcadm enable time:stream
+svcadm enable time:dgram
+.fi
+.in -2
+.sp
+
+.SH USAGE
+.sp
+.LP
+The \fBrdate\fR command is IPv6-enabled. See \fBip6\fR(4P).
+.SH SEE ALSO
+.sp
+.LP
+.BR ip6 (4P),
+.BR inetd.conf (5),
+.BR attributes (7),
+.BR inetd (8)
diff --git a/usr/src/man/man8/rdmsr.8 b/usr/src/man/man8/rdmsr.8
new file mode 100644
index 0000000000..a7f7f9df36
--- /dev/null
+++ b/usr/src/man/man8/rdmsr.8
@@ -0,0 +1,43 @@
+.\"
+.\" This file and its contents are supplied under the terms of the
+.\" Common Development and Distribution License ("CDDL"), version 1.0.
+.\" You may only use this file in accordance with the terms of version
+.\" 1.0 of the CDDL.
+.\"
+.\" A full copy of the text of the CDDL should have accompanied this
+.\" source. A copy of the CDDL is also available via the Internet at
+.\" http://www.illumos.org/license/CDDL.
+.\"
+.\" Copyright 2019 Joyent, Inc.
+.\"
+.Dd October 14, 2019
+.Dt RDMSR 8
+.Os
+.Sh NAME
+.Nm rdmsr
+.Nd Read Model-Specific Register
+.Sh SYNOPSIS
+.Nm
+.Ar [0x<msrnr>]...
+.Sh DESCRIPTION
+The
+.Nm
+command can be used to read a value out of one or more x86 MSRs, as defined by
+the Intel and AMD CPU specifications.
+The integer MSR number should be given (typically in 0x-prefixed hexadecimal).
+It is the command-line equivalent of the
+.Fn rdmsr
+instruction).
+.Pp
+The read is done on the current CPU, which may change arbitrarily
+between MSR reads: to read from a particular CPU,
+.Xr pbind 8
+can be used to execute this utility.
+.Sh EXIT STATUS
+The
+.Nm
+utility exits 0 on success, or 1 if an error occurs, or at least one MSR
+could not be read.
+.Sh SEE ALSO
+Intel 64 and IA-32 Architectures Software Developer's Manual Volume 4:
+Model-Specific Registers
diff --git a/usr/src/man/man8/reboot.8 b/usr/src/man/man8/reboot.8
new file mode 100644
index 0000000000..88f46c2db8
--- /dev/null
+++ b/usr/src/man/man8/reboot.8
@@ -0,0 +1,371 @@
+'\" te
+.\" Copyright (c) 2009 Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright (c) 1983 Regents of the University of California. All rights reserved. The Berkeley software License Agreement specifies the terms and conditions for redistribution.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
+.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH REBOOT 8 "August 29, 2021"
+.SH NAME
+reboot \- restart the operating system
+.SH SYNOPSIS
+.nf
+\fB/usr/sbin/reboot\fR [\fB-dlnq\fR] [\fIboot_arguments\fR]
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/reboot\fR [\fB-f\fR [\fB-e\fR \fIenvironment\fR] | \fB-p\fR] [\fB-dlnq\fR] [\fIboot_arguments\fR]
+.fi
+
+.SH DESCRIPTION
+The \fBreboot\fR utility restarts the kernel. The kernel is loaded into memory
+by the PROM monitor, which transfers control to the loaded kernel.
+.sp
+.LP
+On x86 systems, when the \fB-f\fR flag is specified, the running kernel will
+load the next kernel into memory, then transfer control to the newly loaded
+kernel. This form of \fBreboot\fR is shown in the second synopsis, above.
+.sp
+.LP
+Although \fBreboot\fR can be run by the super-user at any time,
+\fBshutdown\fR(8) is normally used first to warn all users logged in of the
+impending loss of service. See \fBshutdown\fR(8) for details.
+.sp
+.LP
+The \fBreboot\fR utility performs a \fBsync\fR(8) operation on the disks, and
+then a multi-user reboot is initiated. See \fBinit\fR(8) for details. On x86
+systems, reboot may also update the boot archive as needed to ensure a
+successful reboot.
+.sp
+.LP
+The \fBreboot\fR utility normally logs the reboot to the system log daemon,
+\fBsyslogd\fR(8), and places a shutdown record in the login accounting file
+\fB/var/adm/wtmpx\fR. These actions are inhibited if the \fB-n\fR or \fB-q\fR
+options are present.
+.sp
+.LP
+Normally, the system reboots itself at power-up or after crashes.
+.SH OPTIONS
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-d\fR\fR
+.ad
+.sp .6
+.RS 4n
+Force a system crash dump before rebooting. See \fBdumpadm\fR(8) for
+information on configuring system crash dumps.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-e\fR\fR
+.ad
+.sp .6
+.RS 4n
+If \fB-f\fR is present, reboot to the specified boot environment.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR\fR
+.ad
+.sp .6
+.RS 4n
+Fast reboot, bypassing firmware and boot loader. The new kernel will be loaded
+into memory by the running kernel, and control will be transferred to the newly
+loaded kernel. If disk or kernel arguments are specified, they must be
+specified before other boot arguments.
+.sp
+This option is currently available only on x86 systems.
+.sp
+Service \fBsvc:/system/boot-config:default\fR is enabled by default. It
+requires \fBsolaris.system.shutdown\fR as \fBaction_authorization\fR and
+\fBvalue_authorization\fR. When the \fBconfig/fastreboot_default\fR property is
+set to \fBtrue\fR, \fBreboot\fR will behave as \fBreboot\fR \fB-f\fR. The value
+of this property can be changed using \fBsvccfg\fR(8) and \fBsvcadm\fR(8), to
+control the default reboot behavior.
+.sp
+See \fBEXAMPLES\fR for details.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR\fR
+.ad
+.sp .6
+.RS 4n
+Suppress sending a message to the system log daemon, \fBsyslogd\fR(8) about
+who executed \fBreboot\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR\fR
+.ad
+.sp .6
+.RS 4n
+Avoid calling \fBsync\fR(2) and do not log the reboot to \fBsyslogd\fR(8) or
+to \fB/var/adm/wtmpx\fR. The kernel still attempts to sync filesystems prior to
+reboot, except if the \fB-d\fR option is also present. If \fB-d\fR is used with
+\fB-n\fR, the kernel does not attempt to sync file systems.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR\fR
+.ad
+.sp .6
+.RS 4n
+Reboot to prom. This flag can be used to reboot the system through firmware
+without changing the default reboot behavior as denoted by the
+\fBconfig/fastreboot_default\fR property setting in \fBsystem/boot-config\fR
+service.
+.sp
+This option is currently available only on x86 systems. The \fB-p\fR and
+\fB-f\fR options are mutually exclusive.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-q\fR\fR
+.ad
+.sp .6
+.RS 4n
+Quick. Reboot quickly without halting running zones first.
+.RE
+
+.SH OPERANDS
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fB\fIboot_arguments\fR\fR
+.ad
+.sp .6
+.RS 4n
+An optional \fIboot_arguments\fR specifies arguments to the \fBuadmin\fR(2)
+function that are passed to the boot program and kernel upon restart. The form
+and list of arguments is described in the \fBboot\fR(8) and \fBkernel\fR(8)
+man pages. If the arguments are specified, whitespace between them is replaced
+by single spaces unless the whitespace is quoted for the shell. If the
+\fIboot_arguments\fR begin with a hyphen, they must be preceded by the \fB--\fR
+delimiter (two hyphens) to denote the end of the \fBreboot\fR argument list.
+.RE
+
+.SH EXAMPLES
+\fBExample 1 \fRPassing the \fB-r\fR and \fB-v\fR Arguments to \fBboot\fR
+.sp
+.LP
+In the following example, the delimiter \fB--\fR (two hyphens) must be used to
+separate the options of \fBreboot\fR from the arguments of \fBboot\fR(8).
+
+.sp
+.in +2
+.nf
+example# \fBreboot -dl -- -rv\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRRebooting Using a Specific Disk and Kernel
+.sp
+.LP
+The following example reboots using a specific disk and kernel.
+
+.sp
+.in +2
+.nf
+example# \fBreboot disk1 kernel.test/unix\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRFast Rebooting
+.sp
+.LP
+The following examples use the \fB-f\fR option to perform fast reboots.
+
+.sp
+.LP
+If service \fBsvc:/system/boot-config:default\fR is enabled and property
+\fBconfig/fastreboot_default\fR is set to \fBtrue\fR, the \fB-f\fR option can
+be omitted.
+
+.sp
+.LP
+The following command reboots to the default entry in the boot
+menu file \fBmenu.lst\fR.
+
+.sp
+.in +2
+.nf
+example# \fBreboot -f\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The following command reboots to another UFS root disk.
+
+.sp
+.in +2
+.nf
+example# \fBreboot -f -- '/dev/dsk/c1d0s0'\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The following command reboots to another ZFS root pool.
+
+.sp
+.in +2
+.nf
+example# \fBreboot -f -- 'rpool/ROOT/root2'\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The following command reboots to \fBmykernel\fR on the same disk with \fB-k\fR
+option.
+
+.sp
+.in +2
+.nf
+example# \fBreboot -f -- '/platform/i86pc/mykernel/amd64/unix -k'\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The following command reboots to \fBmykernel\fR off another root disk mounted
+on \fB/mnt\fR.
+
+.sp
+.in +2
+.nf
+example# \fBreboot -f -- '/mnt/platform/i86pc/mykernel/amd64/unix -k'\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The following command reboots to \fB/platform/i86pc/kernel/$ISADIR/unix\fR on
+another boot environment named \fBsecond_root\fR.
+
+.sp
+.in +2
+.nf
+example# \fBreboot -f -e second_root\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The following command reboots to the same kernel with \fB-kv\fR options.
+
+.sp
+.in +2
+.nf
+example# \fBreboot -f -- '-kv'\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The following commands disable the fast-reboot-by-default behavior.
+
+.sp
+.in +2
+.nf
+example# \fBsvccfg -s "system/boot-config:default" \e\fR
+\fBsetprop config/fastreboot_default=false\fR
+example# \fBsvcadm refresh svc:/system/boot-config:default\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The following commands re-enable the fast-reboot-by-default behavior.
+
+.sp
+.in +2
+.nf
+example# \fBsvccfg -s "system/boot-config:default" \e\fR
+\fBsetprop config/fastreboot_default=true\fR
+example# \fBsvcadm refresh svc:/system/boot-config:default\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 4 \fRRebooting to a Particular Boot Menu Entry
+.sp
+.LP
+The following commands will reboot to entry \fB2\fR in the boot menu.
+
+.sp
+.in +2
+.nf
+example# \fBbootadm list-menu\fR
+the location for the active menu is: /rpool/boot/menu.lst
+Index Default Dataset Menu
+0 - rpool/ROOT/test-182 test-182
+1 * rpool/ROOT/test-183 test-183
+2 - rpool/ROOT/test-183 test-183
+example# \fBreboot 2\fR
+.fi
+.in -2
+.sp
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/var/adm/wtmpx\fR\fR
+.ad
+.sp .6
+.RS 4n
+login accounting file
+.RE
+
+.SH SEE ALSO
+.BR mdb (1),
+.BR sync (2),
+.BR uadmin (2),
+.BR reboot (3C),
+.BR attributes (7),
+.BR boot (8),
+.BR dumpadm (8),
+.BR fsck (8),
+.BR halt (8),
+.BR init (8),
+.BR kernel (8),
+.BR shutdown (8),
+.BR svcadm (8),
+.BR svccfg (8),
+.BR sync (8),
+.BR syslogd (8)
+.SH NOTES
+The \fBreboot\fR utility does not execute the scripts in
+\fB/etc/rc\fInum\fR.d\fR or execute shutdown actions in \fBinittab\fR(5). To
+ensure a complete shutdown of system services, use \fBshutdown\fR(8) or
+\fBinit\fR(8) to reboot a Solaris system.
diff --git a/usr/src/man/man8/rem_drv.8 b/usr/src/man/man8/rem_drv.8
new file mode 100644
index 0000000000..e585cd5930
--- /dev/null
+++ b/usr/src/man/man8/rem_drv.8
@@ -0,0 +1,108 @@
+'\" te
+.\" Copyright (c) 2007 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH REM_DRV 8 "Aug 13, 2007"
+.SH NAME
+rem_drv \- remove a device driver from the system
+.SH SYNOPSIS
+.LP
+.nf
+\fBrem_drv\fR [\fB-b\fR \fIbasedir\fR] \fIdevice_driver\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBrem_drv\fR command informs the system that the device driver
+\fIdevice_driver\fR is no longer valid. If possible, \fBrem_drv\fR unloads
+\fIdevice_driver\fR from memory. \fBrem_drv\fR also updates the system driver
+configuration files.
+.sp
+.LP
+If \fBrem_drv\fR has been executed, the next time the system is rebooted it
+automatically performs a reconfiguration boot (see \fBkernel\fR(8)).
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-b\fR \fIbasedir\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets the path to the root directory of the diskless client. Used on the server
+to execute \fBrem_drv\fR for a client. The client machine must be rebooted to
+unload the driver.
+.LP
+Note -
+.sp
+.RS 2
+The root file system of any non-global zones must not be referenced with the
+\fB-b\fR option. Doing so might damage the global zone's file system, might
+compromise the security of the global zone, and might damage the non-global
+zone's file system. See \fBzones\fR(7).
+.RE
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-C\fR\fR
+.ad
+.sp .6
+.RS 4n
+Remove dangling device attribute nodes bound to the driver being removed. This
+causes any device ownership or permissions customizations made to any node not
+to be preserved if the driver is added back. Recommended for use when
+reprovisioning a machine from one configuration or use to another where past
+administrative customizations might not be desired.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRRemoving the \fBsd\fR Driver
+.sp
+.LP
+The following example removes the \fBsd\fR driver from use:
+
+.sp
+.in +2
+.nf
+example% rem_drv sd
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRRemoving a Diskless Client
+.sp
+.LP
+The following example removes the driver from the \fBsun1\fR diskless client.
+The driver is not uninstalled or unloaded until the client machine is rebooted.
+
+.sp
+.in +2
+.nf
+example% rem_drv \fB-b\fR /export/root/sun1 sd
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Note the caveat on the use of the \fB-b\fR option in the description of that
+option, above.
+
+.SH SEE ALSO
+.sp
+.LP
+.BR devfs (4FS),
+.BR attributes (7),
+.BR zones (7),
+.BR add_drv (8),
+.BR kernel (8),
+.BR update_drv (8)
diff --git a/usr/src/man/man8/remove_allocatable.8 b/usr/src/man/man8/remove_allocatable.8
new file mode 100644
index 0000000000..29be91581f
--- /dev/null
+++ b/usr/src/man/man8/remove_allocatable.8
@@ -0,0 +1,145 @@
+'\" te
+.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH REMOVE_ALLOCATABLE 8 "Jul 20, 2007"
+.SH NAME
+remove_allocatable \- remove entries from allocation databases
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/remove_allocatable\fR [\fB-f\fR] \fB-n\fR \fIname\fR
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/remove_allocatable\fR [\fB-f\fR] [\fB-d\fR] \fB-t\fR \fIdev-type\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBremove_allocatable\fR removes entries of user allocatable devices from the
+device allocation mechanism. \fBremove_allocatable\fR also removes entries of
+some non-allocatable devices, such as printers, whose label range is managed by
+the mechanism.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-d\fR\fR
+.ad
+.RS 15n
+Removes system-supplied default attributes of the device type that is
+specified with \fB-t\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR\fR
+.ad
+.RS 15n
+Force the removal of an entry. \fBremove_allocatable\fR exits with an error if
+this option is not specified when an entry with the specified device name no
+longer exists.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR \fIname\fR\fR
+.ad
+.RS 15n
+Removes the entry for the device \fIname\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-t\fR \fIdev-type\fR\fR
+.ad
+.RS 15n
+Removes devices of type \fIdev-type\fR.
+.RE
+
+.SH EXIT STATUS
+.sp
+.LP
+When successful, \fBremove_allocatable\fR returns an exit status of \fB0\fR
+(true). \fBremove_allocatable\fR returns a nonzero exit status in the event of
+an error. The exit codes are as follows:
+.sp
+.ne 2
+.na
+\fB\fB1\fR\fR
+.ad
+.RS 5n
+Invocation syntax error
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB2\fR\fR
+.ad
+.RS 5n
+Unknown system error
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB3\fR\fR
+.ad
+.RS 5n
+Device \fIname\fR or \fIdev-type\fR not found. This error occurs only when the
+\fB-f\fR option is not specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB4\fR\fR
+.ad
+.RS 5n
+Permission denied. User does not have DAC or MAC access to database.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability See below.
+.TE
+
+.sp
+.LP
+The invocation is Uncommitted. The options are Uncommitted. The output is
+Not-an-Interface.
+.SH SEE ALSO
+.sp
+.LP
+.BR allocate (1),
+.BR deallocate (1),
+.BR attributes (7),
+.BR device_clean (7),
+.BR add_allocatable (8)
+.SH NOTES
+.sp
+.LP
+The functionality described on this manual page is available only if the system
+is configured with Trusted Extensions.
diff --git a/usr/src/man/man8/removef.8 b/usr/src/man/man8/removef.8
new file mode 100644
index 0000000000..5bc58541d5
--- /dev/null
+++ b/usr/src/man/man8/removef.8
@@ -0,0 +1,207 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH REMOVEF 8 "Oct 30, 2007"
+.SH NAME
+removef \- remove a file from software database
+.SH SYNOPSIS
+.LP
+.nf
+\fBremovef\fR [ [\fB-M\fR] \fB-R\fR \fIroot_path\fR] [\fB-V\fR \fIfs_file\fR] \fIpkginst\fR \fIpath\fR...
+.fi
+
+.LP
+.nf
+\fBremovef\fR [ [\fB-M\fR] \fB-R\fR \fIroot_path\fR] [\fB-V\fR \fIfs_file\fR] \fB-f\fR \fIpkginst\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBremovef\fR informs the system that the user, or software, intends to remove
+a pathname. Output from \fBremovef\fR is the list of input pathnames that may
+be safely removed (no other packages have a dependency on them).
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-f\fR\fR
+.ad
+.sp .6
+.RS 4n
+After all files have been processed, \fBremovef\fR should be invoked with the
+\fB-f\fR option to indicate that the removal phase is complete.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-M\fR\fR
+.ad
+.sp .6
+.RS 4n
+Instruct \fBremovef\fR not to use the \fB$\fR\fIroot_path\fR\fB/etc/vfstab\fR
+file for determining the client's mount points. This option assumes the mount
+points are correct on the server and it behaves consistently with Solaris 2.5
+and earlier releases.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\fR\fB-R\fR \fIroot_path\fR\fR
+.ad
+.sp .6
+.RS 4n
+Define the full path name of a directory to use as the \fIroot_path\fR. All
+files, including package system information files, are relocated to a directory
+tree starting in the specified \fIroot_path\fR. The \fIroot_path\fR may be
+specified when installing to a client from a server (for example,
+\fB/export/root/client1\fR).
+.sp
+\fBremovef\fR inherits the value of the \fBPKG_INSTALL_ROOT\fR environment
+variable. (See ENVIRONMENT VARIABLES, below.) If \fBPKG_INSTALL_ROOT\fR is set,
+such as when the \fB-R\fR option is used with \fBpkgadd\fR(8) or
+\fBpkgrm\fR(8), there is no need to use the \fBremovef\fR \fB-R\fR option.
+.LP
+Note -
+.sp
+.RS 2
+The root file system of any non-global zones must not be referenced with the
+\fB-R\fR option. Doing so might damage the global zone's file system, might
+compromise the security of the global zone, and might damage the non-global
+zone's file system. See \fBzones\fR(7).
+.RE
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-V\fR \fIfs_file\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify an alternative \fIfs_file\fR to map the client's file systems. For
+example, used in situations where the \fB$\fR\fIroot_path\fR\fB/etc/vfstab\fR
+file is non-existent or unreliable.
+.RE
+
+.SH OPERANDS
+.sp
+.LP
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fB\fIpath\fR\fR
+.ad
+.sp .6
+.RS 4n
+The pathname to be removed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIpkginst\fR\fR
+.ad
+.sp .6
+.RS 4n
+The package instance from which the pathname is being removed.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRUsing \fBremovef\fR
+.sp
+.LP
+The following example uses the \fBremovef\fR command in an optional pre-install
+script:
+
+.sp
+.in +2
+.nf
+echo "The following files are no longer part of this package
+ and are being removed."
+removef $PKGINST /myapp/file1 /myapp/file2 |
+while read pathname
+do
+ echo "$pathname"
+ rm \fB-f\fR $pathname
+done
+removef \fB-f\fR $PKGINST || exit 2
+.fi
+.in -2
+.sp
+
+.SH ENVIRONMENT VARIABLES
+.sp
+.LP
+\fBremovef\fR inherits the value of the following environment variable. This
+variable is set when \fBpkgadd\fR(8) or \fBpkgrm\fR(8) is invoked with the
+\fB-R\fR option.
+.sp
+.ne 2
+.na
+\fB\fBPKG_INSTALL_ROOT\fR\fR
+.ad
+.sp .6
+.RS 4n
+If present, defines the full path name of a directory to use as the system's
+\fBPKG_INSTALL_ROOT\fR path. All product and package information files are then
+looked for in the directory tree, starting with the specified
+\fBPKG_INSTALL_ROOT\fR path. If not present, the default system path of \fB/\fR
+is used.
+.RE
+
+.SH EXIT STATUS
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.sp .6
+.RS 4n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB>0\fR\fR
+.ad
+.sp .6
+.RS 4n
+An error occurred.
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR pkginfo (1),
+.BR pkgmk (1),
+.BR pkgparam (1),
+.BR pkgproto (1),
+.BR pkgtrans (1),
+.BR attributes (7),
+.BR largefile (7),
+.BR installf (8),
+.BR pkgadd (8),
+.BR pkgask (8),
+.BR pkgchk (8),
+.BR pkgrm (8)
+.sp
+.LP
+\fI\fR
+.SH NOTES
+.sp
+.LP
+Package commands are \fBlargefile\fR(7)-aware. They handle files larger than 2
+GB in the same way they handle smaller files. In their current implementations,
+\fBpkgadd\fR(8), \fBpkgtrans\fR(1) and other package commands can process a
+datastream of up to 4 GB.
diff --git a/usr/src/man/man8/repquota.8 b/usr/src/man/man8/repquota.8
new file mode 100644
index 0000000000..04052a069c
--- /dev/null
+++ b/usr/src/man/man8/repquota.8
@@ -0,0 +1,70 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 1996, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH REPQUOTA 8 "Sep 16, 1996"
+.SH NAME
+repquota \- summarize quotas for a ufs file system
+.SH SYNOPSIS
+.LP
+.nf
+\fBrepquota\fR [\fB-v\fR] \fIfilesystem\fR...
+.fi
+
+.LP
+.nf
+\fBrepquota\fR \fB-a\fR [\fB-v\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBrepquota\fR prints a summary of the disk usage and quotas for the specified
+ufs file systems. The current number of files and amount of space (in
+kilobytes) is printed for each user along with any quotas created with
+\fBedquota\fR(8).
+.sp
+.LP
+The \fIfilesystem\fR must have the file \fBquotas\fR in its root directory.
+.sp
+.LP
+Only the super-user may view quotas which are not their own.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-a\fR\fR
+.ad
+.RS 6n
+Report on all mounted ufs file systems that have \fBrq\fR in the \fBmntopts\fR
+field of the \fB/etc/vfstab\fR file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.RS 6n
+Report quotas for all users, even those who do not consume resources.
+.RE
+
+.SH USAGE
+.sp
+.LP
+See \fBlargefile\fR(7) for the description of the behavior of \fBrepquota\fR
+when encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
+.SH SEE ALSO
+.sp
+.LP
+.BR quotactl (4I),
+.BR attributes (7),
+.BR largefile (7),
+.BR edquota (8),
+.BR quota (8),
+.BR quotacheck (8),
+.BR quotaon (8)
diff --git a/usr/src/man/man8/rmmount.8 b/usr/src/man/man8/rmmount.8
new file mode 100644
index 0000000000..1f92a5f168
--- /dev/null
+++ b/usr/src/man/man8/rmmount.8
@@ -0,0 +1,291 @@
+'\" te
+.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH RMMOUNT 8 "Mar 1, 2007"
+.SH NAME
+rmmount \- removable media mounter for CD-ROM, floppy, Jaz drive, and others
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/rmmount\fR [\fB-D\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBrmmount\fR utility is a removable media mounter that is executed by
+volume management whenever a removable medium, such as a \fBCD-ROM\fR or a
+floppy, is inserted. Removable media is managed by an application or a volume
+manager. \fBrmmount\fR can also be called by using \fBvolrmmount\fR(1).
+.sp
+.LP
+Upon insertion of a medium and following invocation of the \fBvolcheck\fR(1)
+command, \fBrmmount\fR determines what type of file system (if any) is on that
+medium. If a file system is present, \fBrmmount\fR mounts the file system in
+one of the locations listed below.
+.sp
+.LP
+For a diskette (floppy):
+.sp
+.ne 2
+.na
+\fB\fB/floppy/floppy0\fR\fR
+.ad
+.RS 26n
+symbolic link to mounted floppy in local floppy drive
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/floppy/floppy_name\fR\fR
+.ad
+.RS 26n
+mounted named floppy
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/floppy/unnamed_floppy\fR\fR
+.ad
+.RS 26n
+mounted unnamed floppy
+.RE
+
+.sp
+.LP
+For a CD-ROM or a DVD-ROM:
+.sp
+.ne 2
+.na
+\fB\fB/cdrom/cdrom0\fR\fR
+.ad
+.sp .6
+.RS 4n
+symbolic link to mounted \fBCD-ROM\fR in local \fBCD-ROM\fR drive
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/cdrom/CD-ROM_name\fR\fR
+.ad
+.sp .6
+.RS 4n
+mounted named \fBCD-ROM\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/cdrom/CD-ROM_name/partition\fR\fR
+.ad
+.sp .6
+.RS 4n
+mounted named \fBCD-ROM\fR with partitioned file system
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/cdrom/unnamed_cdrom\fR\fR
+.ad
+.sp .6
+.RS 4n
+mounted unnamed \fBCD-ROM\fR
+.RE
+
+.sp
+.LP
+For a Zip drive:
+.sp
+.ne 2
+.na
+\fB\fB/rmdisk/zip0\fR\fR
+.ad
+.RS 30n
+symbolic link to mounted Zip medium in local Zip drive
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/rmdisk/\fIZip_name\fR\fR\fR
+.ad
+.RS 30n
+mounted named Zip medium
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/rmdisk/\fIZip_name\fR/partition\fR\fR
+.ad
+.RS 30n
+mounted named Zip medium with partitioned file system
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/rmdisk/unnamed_zip\fR\fR
+.ad
+.RS 30n
+mounted unnamed Zip medium
+.RE
+
+.sp
+.LP
+For a Jaz drive:
+.sp
+.ne 2
+.na
+\fB\fB/rmdisk/jaz0\fR\fR
+.ad
+.RS 30n
+symbolic link to mounted Jaz medium in local Jaz drive
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/rmdisk/\fIJaz_name\fR\fR\fR
+.ad
+.RS 30n
+mounted named Jaz medium
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/rmdisk/\fIJaz_name\fR/partition\fR\fR
+.ad
+.RS 30n
+mounted named Jaz medium with partitioned file system
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/rmdisk/unnamed_Jaz\fR\fR
+.ad
+.RS 30n
+mounted unnamed Jaz medium
+.RE
+
+.sp
+.LP
+For a generic "rmdisk" drive:
+.sp
+.ne 2
+.na
+\fB\fB/rmdisk/rmdisk0\fR\fR
+.ad
+.sp .6
+.RS 4n
+symbolic link to mounted removable medium in local removable medium drive
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/rmdisk/\fIrmdisk_name\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+mounted named removable medium
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/rmdisk/\fIrmdisk_name\fR/partition\fR\fR
+.ad
+.sp .6
+.RS 4n
+mounted named removable medium with partitioned file system
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/rmdisk/unnamed_rmdisk\fR\fR
+.ad
+.sp .6
+.RS 4n
+mounted unnamed removable medium
+.RE
+
+.sp
+.LP
+If the media is read-only (for example, a \fBCD-ROM\fR or a floppy with
+write-protect tab set), the file system is mounted read-only.
+.sp
+.LP
+If a file system is not identified, \fBrmmount\fR does not mount a file system.
+See the \fI\fR for more information on the location of \fBCD-ROM\fR, floppy,
+and other media without file systems.
+.sp
+.LP
+If a file system type has been determined, it is then checked to see that it is
+"clean." If the file system is "dirty," \fBfsck\fR \fB-p\fR (see
+\fBfsck\fR(8)) is run in an attempt to clean it. If \fBfsck\fR fails, the file
+system is mounted read-only.
+.sp
+.LP
+After the mount is complete, "actions" associated with the media type are
+executed. These actions allow for the notification to other programs that new
+media are available.
+.sp
+.LP
+Actions are executed in the order in which they appear in the configuration
+file. The action function can return either \fB1\fR or \fB0\fR. If it returns
+\fB0\fR, no further actions will be executed. This allows the function to
+control which applications are executed.
+.sp
+.LP
+In order to execute an action, \fBrmmount\fR performs a \fBdlopen\fR(3C) on the
+shared object and calls the action function defined within it. The definition
+of the interface to actions can be found in \fB/usr/include/rmmount.h\fR.
+.sp
+.LP
+File systems mounted by \fBrmmount\fR are always mounted with the \fBnosuid\fR
+flag set, thereby disabling setuid programs and access to block or character
+devices in that file system. Upon ejection, \fBrmmount\fR unmounts mounted file
+systems and executes actions associated with the media type. If a file system
+is "busy" (that is, it contains the current working directory of a live
+process), the ejection will fail.
+.SH OPTIONS
+.sp
+.ne 2
+.na
+\fB\fB-D\fR\fR
+.ad
+.RS 6n
+Turn on the debugging output from the \fBrmmount\fR \fBdprintf\fR calls.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/rmmount/*.so.1\fR\fR
+.ad
+.RS 27n
+shared objects used by \fBrmmount\fR.
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR volcheck (1),
+.BR volrmmount (1),
+.BR dlopen (3C),
+.BR attributes (7),
+.BR fsck (8)
+.sp
+.LP
+\fI\fR
diff --git a/usr/src/man/man8/rmt.8 b/usr/src/man/man8/rmt.8
new file mode 100644
index 0000000000..1c1fce5ec1
--- /dev/null
+++ b/usr/src/man/man8/rmt.8
@@ -0,0 +1,164 @@
+'\" te
+.\" Copyright (c) 1983 Regents of the University
+.\" of California. All rights reserved. The Berkeley software License Agreement
+.\" specifies the terms and conditions for redistribution. Copyright (c) 1995
+.\" Sun Microsystems, Inc. All Rights Reserved.
+.\" from UCB 4.3
+.TH RMT 8 "Nov 6, 2000"
+.SH NAME
+rmt \- remote magtape protocol module
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/rmt\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+\fBrmt\fR is a program used by the remote dump and restore programs in
+manipulating a magnetic tape drive through an interprocess communication
+connection. \fBrmt\fR is normally started up with an \fBrexec\fR(3SOCKET) or
+\fBrcmd\fR(3SOCKET) call.
+.sp
+.LP
+The \fBrmt\fR program accepts requests that are specific to the manipulation of
+magnetic tapes, performs the commands, then responds with a status indication.
+All responses are in \fBASCII\fR and in one of two forms. Successful commands
+have responses of:
+.sp
+.in +2
+.nf
+
+.fi
+.in -2
+.sp
+
+.sp
+.ne 2
+.na
+\fB\fBA\fR\fInumber\fR\fB\en\fR\fR
+.ad
+.RS 14n
+where \fInumber\fR is an \fBASCII\fR representation of a decimal number.
+.RE
+
+.sp
+.LP
+Unsuccessful commands are responded to with:
+.sp
+.ne 2
+.na
+\fB\fBE\fR\fIerror-number\fR\fB\en\fR\fIerror-message\fR\fB\en\fR\fR
+.ad
+.sp .6
+.RS 4n
+where \fIerror-number\fR is one of the possible error numbers described in
+\fBIntro\fR(3), and \fIerror-message\fR is the corresponding error string as
+printed from a call to \fBperror\fR(3C).
+.RE
+
+.sp
+.LP
+ The protocol consists of the following commands:
+.sp
+.ne 2
+.na
+\fB\fBS\en\fR\fR
+.ad
+.RS 25n
+Return the status of the open device, as obtained with a \fBMTIOCGET\fR
+\fBioctl\fR call. If the operation was successful, an "ack" is sent with the
+size of the status buffer, then the status buffer is sent (in binary).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBC\fR\fIdevice\fR\fB\en\fR\fR
+.ad
+.RS 25n
+Close the currently open device. The \fIdevice\fR specified is ignored.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBI\fR\fIoperation\fR\fB\en\fR\fIcount\fR\fB\en\fR\fR
+.ad
+.RS 25n
+Perform a \fBMTIOCOP\fR \fBioctl\fR(2) command using the specified parameters.
+The parameters are interpreted as the \fBASCII\fR representations of the
+decimal values to place in the \fImt_op\fR and \fImt_count\fR fields of the
+structure used in the \fBioctl\fR call. When the operation is successful the
+return value is the \fIcount\fR parameter.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBL\fR\fIoffset\fR\fB\en\fR\fBwhence\fR\fB\en\fR\fR
+.ad
+.RS 25n
+Perform an \fBlseek\fR(2) operation using the specified parameters. The
+response value is returned from the \fBlseek\fR call.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBO\fR\fIdevice\fR\fB\en\fR\fImode\fR\fB\en\fR\fR
+.ad
+.RS 25n
+Open the specified \fIdevice\fR using the indicated \fImode\fR. \fIdevice\fR is
+a full pathname, and \fImode\fR is an \fBASCII\fR representation of a decimal
+number suitable for passing to \fBopen\fR(9E). If a device is already open, it
+is closed before a new open is performed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBR\fR\fIcount\fR\fB\en\fR\fR
+.ad
+.RS 25n
+Read \fIcount\fR bytes of data from the open device. \fBrmt\fR performs the
+requested \fBread\fR(9E) and responds with \fBA\fR\fIcount-read\en\fR if the
+read was successful; otherwise an error in standard format is returned. If the
+read was successful, the data read is sent.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBW\fR\fIcount\fR\fB\en\fR\fR
+.ad
+.RS 25n
+Write data onto the open device. \fBrmt\fR reads \fIcount\fR bytes from the
+connection, aborting if a premature \fBEOF\fR is encountered. The response
+value is returned from the \fBwrite\fR(9E) call.
+.RE
+
+.sp
+.LP
+Any other command causes \fBrmt\fR to exit.
+.SH SEE ALSO
+.LP
+.BR ioctl (2),
+.BR lseek (2),
+.BR Intro (3),
+.BR perror (3C),
+.BR rcmd (3SOCKET),
+.BR rexec (3SOCKET),
+.BR mtio (4I),
+.BR attributes (7),
+.BR ufsdump (8),
+.BR ufsrestore (8),
+.BR open (9E),
+.BR read (9E),
+.BR write (9E)
+.SH DIAGNOSTICS
+.LP
+All responses are of the form described above.
+.SH BUGS
+.LP
+Do not use this for a remote file access protocol.
diff --git a/usr/src/man/man8/rmvolmgr.8 b/usr/src/man/man8/rmvolmgr.8
new file mode 100644
index 0000000000..eccf0fa691
--- /dev/null
+++ b/usr/src/man/man8/rmvolmgr.8
@@ -0,0 +1,149 @@
+'\" te
+.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH RMVOLMGR 8 "Nov 28, 2006"
+.SH NAME
+rmvolmgr \- HAL-aware removable volume manager
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/rmvolmgr\fR [\fB-chns\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBrmvolmgr\fR command is a volume manager that can automatically mount and
+unmount removable media and hot-pluggable storage. The default mount point is
+\fB/media\fR.
+.sp
+.LP
+\fBrmvolmgr\fR is one of a number of Hardware Abstraction Layer (HAL)-aware
+tools that are shipped with the Solaris operating system. See \fBhald\fR(8).
+.sp
+.LP
+Multiple instances of \fBrmvolmgr\fR can be run simultaneously. A system
+instance of \fBrmvolmgr\fR runs by default as a service management facility
+(SMF) service (see \fBsmf\fR(7)). Its fault management resource identifier
+(FMRI) is:
+.sp
+.in +2
+.nf
+svc:/system/filesystem/rmvolmgr
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+You can run your own instance of \fBrmvolmgr\fR by adding it to the
+\fB\&.xinitrc\fR file or a similar session startup script. In such a case, the
+\fBsystem\fR \fBrmvolmgr\fR instance will not manage volumes that belong to
+you, the owner of the startup script. For example, a user logged on to the
+workstation console (\fB/dev/console\fR) who invokes his own instance of
+\fBrmvolmgr\fR will own locally connected devices, such as CD-ROM drives and
+devices connected to the local USB or FireWire ports.
+.sp
+.LP
+In addition to mounting volumes under \fB/media\fR, \fBrmvolmgr\fR also creates
+legacy symbolic links under \fB/cdrom\fR, \fB/floppy\fR, and \fB/rmdisk\fR.
+.sp
+.LP
+\fBrmvolmgr\fR also provides backwards compatibility with CDE removable media
+interfaces by maintaining notification files under \fB/tmp/.removable\fR. This
+functionality can be disabled by using the \fB-c\fR option.
+.sp
+.LP
+The \fB-c\fR and \fB-n\fR options can also be specified as SMF properties. See
+"Examples."
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-c\fR\fR
+.ad
+.RS 6n
+Disable CDE compatibility.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-h\fR\fR
+.ad
+.RS 6n
+Display help information and exit.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR\fR
+.ad
+.RS 6n
+Do not create legacy mountpoint symbolic links.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR\fR
+.ad
+.RS 6n
+Invoke in system instance mode.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRUsing SMF Properties to Set Options
+.sp
+.LP
+The following \fBsvccfg\fR(8) command and subcommands use SMF properties to
+set the \fB-c\fR and \fB-n\fR options.
+
+.sp
+.in +2
+.nf
+example# \fBsvccfg\fR
+svc:> \fBselect rmvolmgr\fR
+svc:/system/filesystem/rmvolmgr> \fBlistprop rmvolmgr/*\fR
+rmvolmgr/legacy_mountpoints boolean true
+rmvolmgr/cde_compatible boolean true
+svc:/system/filesystem/rmvolmgr> \fBsetprop \e
+ rmvolmgr/legacy_mountpoints=false\fR
+svc:/system/filesystem/rmvolmgr> \fBsetprop rmvolmgr/cde_compatible=false\fR
+svc:/system/filesystem/rmvolmgr> \fBexit\fR
+example#
+.fi
+.in -2
+.sp
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Volatile
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7),
+.BR hal (7),
+.BR smf (7),
+.BR hald (8),
+.BR svccfg (8)
diff --git a/usr/src/man/man8/roleadd.8 b/usr/src/man/man8/roleadd.8
new file mode 100644
index 0000000000..8ec3721ffd
--- /dev/null
+++ b/usr/src/man/man8/roleadd.8
@@ -0,0 +1,544 @@
+'\" te
+.\" Copyright (c) 2018 Peter Tribble.
+.\" Copyright 1989 AT&T Copyright (c) 2006 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH ROLEADD 8 "Jan 7, 2018"
+.SH NAME
+roleadd \- administer a new role account on the system
+.SH SYNOPSIS
+.LP
+.nf
+\fBroleadd\fR [\fB-A\fR \fIauthorization\fR[,\fIauthorization\fR]...]
+ [\fB-b\fR \fIbase_dir\fR] [\fB-c\fR \fIcomment\fR] [\fB-d\fR \fIdir\fR] [\fB-e\fR \fIexpire\fR]
+ [\fB-f\fR \fIinactive\fR] [\fB-g\fR \fIgroup\fR] [\fB-G\fR \fIgroup\fR[,\fIgroup\fR]...]
+ [\fB-K\fR \fIkey=value\fR] [\fB-m\fR [\fB-z|-Z\fR] [\fB-k\fR \fIskel_dir\fR]] [\fB-p\fR \fIprojname\fR]
+ [\fB-P\fR \fIprofile\fR[,\fIprofile\fR]...] [\fB-s\fR \fIshell\fR] [\fB-u\fR \fIuid\fR [\fB-o\fR]] \fIrole\fR
+.fi
+
+.LP
+.nf
+\fBroleadd\fR \fB-D\fR [\fB-A\fR \fIauthorization\fR[,\fIauthorization\fR]...]
+ [\fB-b\fR \fIbase_dir\fR] [\fB-e\fR \fIexpire\fR] [\fB-f\fR \fIinactive\fR] [\fB-g\fR \fIgroup\fR]
+ [\fB-k\fR \fIskel_dir\fR] [\fB-K\fR \fIkey=value\fR] [\fB-p\fR \fIprojname\fR]
+ [\fB-P\fR \fIprofile\fR[,\fIprofile\fR]...] [\fB-s\fR \fIshell\fR]
+.fi
+
+.SH DESCRIPTION
+.LP
+\fBroleadd\fR adds a role entry to the \fB/etc/passwd\fR and \fB/etc/shadow\fR
+and \fB/etc/user_attr\fR files. The \fB-A\fR and \fB-P\fR options respectively
+assign authorizations and profiles to the role. The \fB-p\fR option associates
+a project with the role. The \fB-K\fR option adds a \fIkey=value\fR pair to
+\fB/etc/user_attr\fR for the role. Multiple \fIkey=value\fR pairs can be added
+with multiple \fB-K\fR options.
+.sp
+.LP
+\fBroleadd\fR also creates supplementary group memberships for the role
+(\fB-G\fR option) and creates the home directory (\fB-m\fR option) for the role
+if requested. The new role account remains locked until the \fBpasswd\fR(1)
+command is executed.
+.sp
+.LP
+Specifying \fBroleadd\fR \fB-D\fR with the \fB-A\fR, \fB-b\fR, \fB-e\fR,
+\fB-f\fR, \fB-g\fR, \fB-k\fR, \fB-K\fR, \fB-p\fR, \fB-P\fR, or
+\fB-s\fR option (or any combination of these options) sets the default values
+for the respective fields. See the \fB-D\fR option. Subsequent
+\fBroleadd\fR commands without the \fB-D\fR option use these arguments.
+.sp
+.LP
+The system file entries created with this command have a limit of 512
+characters per line. Specifying long arguments to several options can exceed
+this limit.
+.sp
+.LP
+\fBroleadd\fR requires that usernames be in the format described in
+\fBpasswd\fR(5). A warning message is displayed if these restrictions are not
+met. See \fBpasswd\fR(5) for the requirements for usernames.
+.LP
+To change the action of \fBroleadd\fR when the traditional login name
+length limit of eight characters is exceeded, edit the file
+\fB/etc/default/useradd\fR by removing the \fB#\fR (pound sign) before the
+appropriate \fBEXCEED_TRAD=\fR entry, and adding it before the others.
+.SH OPTIONS
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-A\fR \fIauthorization\fR\fR
+.ad
+.sp .6
+.RS 4n
+One or more comma separated authorizations defined in \fBauth_attr\fR(5). Only
+a user or role who has \fBgrant\fR rights to the authorization can assign it to
+a role.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-b\fR \fIbase_dir\fR\fR
+.ad
+.sp .6
+.RS 4n
+The base directory for new role home directories (see the \fB-d\fR option
+below). The directory named by \fIbase_dir\fR must already exist and be an
+absolute path.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-c\fR \fIcomment\fR\fR
+.ad
+.sp .6
+.RS 4n
+A text string. It is generally a short description of the role. This
+information is stored in the role's \fB/etc/passwd\fR entry.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-d\fR \fIdir\fR\fR
+.ad
+.sp .6
+.RS 4n
+The home directory of the new role. If not supplied, it defaults to
+\fIbase_dir\fR/\fIaccount_name\fR, where \fIbase_dir\fR is the base directory
+for new login home directories and \fIaccount_name\fR is the new role name.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-D\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display the default values for \fBgroup\fR, \fBbase_dir\fR, \fBskel_dir\fR,
+\fBshell\fR, \fBinactive\fR, \fBexpire\fR, \fBproj\fR, \fBprojname\fR and
+\fBkey=value\fR pairs. When used with the \fB-A\fR, \fB-b\fR, \fB-e\fR,
+\fB-f\fR, \fB-g\fR, \fB-P\fR, \fB-p\fR, or \fB-K\fR, options, the \fB-D\fR
+option sets the default values for the specified fields. The default values
+are:
+.sp
+.ne 2
+.na
+\fBgroup\fR
+.ad
+.sp .6
+.RS 4n
+\fBother\fR (\fBGID\fR of 1)
+.RE
+
+.sp
+.ne 2
+.na
+\fBbase_dir\fR
+.ad
+.sp .6
+.RS 4n
+\fB/home\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fBskel_dir\fR
+.ad
+.sp .6
+.RS 4n
+\fB/etc/skel\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fBshell\fR
+.ad
+.sp .6
+.RS 4n
+\fB/bin/pfsh\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fBinactive\fR
+.ad
+.sp .6
+.RS 4n
+\fB0\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fBexpire\fR
+.ad
+.sp .6
+.RS 4n
+Null
+.RE
+
+.sp
+.ne 2
+.na
+\fBauths\fR
+.ad
+.sp .6
+.RS 4n
+Null
+.RE
+
+.sp
+.ne 2
+.na
+\fBprofiles\fR
+.ad
+.sp .6
+.RS 4n
+Null
+.RE
+
+.sp
+.ne 2
+.na
+\fBproj\fR
+.ad
+.sp .6
+.RS 4n
+\fB3\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fBprojname\fR
+.ad
+.sp .6
+.RS 4n
+\fBdefault\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fBkey=value\fR (pairs defined in \fBuser_attr\fR(5))
+.ad
+.sp .6
+.RS 4n
+not present
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-e\fR \fIexpire\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify the expiration date for a role. After this date, no user is able to
+access this role. The expire option argument is a date entered using one of
+the date formats included in the template file \fB/etc/datemsk\fR. See
+\fBgetdate\fR(3C).
+.sp
+If the date format that you choose includes spaces, it must be quoted. For
+example, you can enter \fB10/6/90\fR or \fBOctober 6, 1990\fR. A null value
+(\fB" "\fR) defeats the status of the expired date. This option is useful for
+creating temporary roles.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR \fIinactive\fR\fR
+.ad
+.sp .6
+.RS 4n
+The maximum number of days allowed between uses of a role ID before that
+\fBID\fR is declared invalid. Normal values are positive integers. A value of
+\fB0\fR defeats the status.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-g\fR \fIgroup\fR\fR
+.ad
+.sp .6
+.RS 4n
+An existing group's integer \fBID\fR or character-string name. Without the
+\fB-D\fR option, it defines the new role's primary group membership and
+defaults to the default group. You can reset this default value by invoking
+\fBroleadd\fR \fB-D\fR \fB-g\fR \fIgroup\fR. GIDs 0-99 are reserved for
+allocation by the Operating System.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-G\fR \fIgroup\fR\fR
+.ad
+.sp .6
+.RS 4n
+One or more comma-separated existing groups, specified by integer \fBID\fR or
+character-string name. It defines the new role's supplementary group
+membership. Any duplicate groups between the \fB-g\fR and \fB-G\fR options are
+ignored. No more than \fBNGROUPS_MAX\fR groups can be specified. GIDs 0-99 are
+reserved for allocation by the Operating System.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-k\fR \fIskel_dir\fR\fR
+.ad
+.sp .6
+.RS 4n
+A directory that contains skeleton information (such as \fB\&.profile\fR) that
+can be copied into a new role's home directory. This directory must already
+exist. The system provides the \fB/etc/skel\fR directory that can be used for
+this purpose.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-K\fR \fIkey=value\fR\fR
+.ad
+.sp .6
+.RS 4n
+A \fIkey=value\fR pair to add to the role's attributes. Multiple \fB-K\fR
+options may be used to add multiple \fIkey=value\fR pairs. The generic \fB-K\fR
+option with the appropriate key may be used instead of the specific implied key
+options (\fB-A\fR, \fB-p\fR, \fB-P\fR). See \fBuser_attr\fR(5) for a
+list of valid \fIkey=value\fR pairs. The "type" key is not a valid key for this
+option. Keys cannot be repeated.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-m\fR\fR [\fB-z|-Z\fR]
+.ad
+.sp .6
+.RS 4n
+Create the new role's home directory if it does not already exist. If the
+directory already exists, it must have read, write, and execute permissions by
+\fIgroup\fR, where \fIgroup\fR is the role's primary group.
+.sp
+If the parent directory of the role's home directory is located on a separate
+\fBZFS\fR file system and the \fB/etc/default/useradd\fR file contains the
+parameter \fBMANAGE_ZFS\fR set to the value \fBYES\fR, a new \fBZFS\fR
+file system will be created for the role.
+.sp
+If the \fB-z\fR option is specified, \fBroleadd\fR will always try to create
+a new file system for the home directory.
+.sp
+If the \fB-Z\fR option is specified, a new file system will never be created.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-o\fR\fR
+.ad
+.sp .6
+.RS 4n
+This option allows a \fBUID\fR to be duplicated (non-unique).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR \fIprojname\fR\fR
+.ad
+.sp .6
+.RS 4n
+Name of the project with which the added role is associated. See the
+\fIprojname\fR field as defined in \fBproject\fR(5).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-P\fR \fIprofile\fR\fR
+.ad
+.sp .6
+.RS 4n
+One or more comma-separated execution profiles defined in \fBprof_attr\fR(5).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR \fIshell\fR\fR
+.ad
+.sp .6
+.RS 4n
+Full pathname of the program used as the role's shell on login. It defaults to
+an empty field causing the system to use \fB/bin/pfsh\fR as the default. The
+value of \fIshell\fR must be a valid executable file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-u\fR \fIuid\fR\fR
+.ad
+.sp .6
+.RS 4n
+The \fBUID\fR of the new role. This \fBUID\fR must be a non-negative decimal
+integer below \fBMAXUID\fR as defined in \fB<sys/param.h>\fR\&. The \fBUID\fR
+defaults to the next available (unique) number above the highest number
+currently assigned. For example, if \fBUID\fRs 100, 105, and 200 are assigned,
+the next default \fBUID\fR number will be 201. \fBUID\fRs \fB0\fR-\fB99\fR are
+reserved for allocation by the Operating System.
+.RE
+
+.SH FILES
+.LP
+\fB/etc/default/useradd\fR
+.sp
+.LP
+\fB/etc/datemsk\fR
+.sp
+.LP
+\fB/etc/passwd\fR
+.sp
+.LP
+\fB/etc/shadow\fR
+.sp
+.LP
+\fB/etc/group\fR
+.sp
+.LP
+\fB/etc/skel\fR
+.sp
+.LP
+\fB/usr/include/limits.h\fR
+.sp
+.LP
+\fB/etc/user_attr\fR
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.LP
+.BR passwd (1),
+.BR pfsh (1),
+.BR profiles (1),
+.BR roles (1),
+.BR getdate (3C),
+.BR auth_attr (5),
+.BR passwd (5),
+.BR prof_attr (5),
+.BR user_attr (5),
+.BR attributes (7),
+.BR groupadd (8),
+.BR groupdel (8),
+.BR groupmod (8),
+.BR grpck (8),
+.BR logins (8),
+.BR pwck (8),
+.BR userdel (8),
+.BR usermod (8),
+.BR zfs (8)
+.SH DIAGNOSTICS
+.LP
+In case of an error, \fBroleadd\fR prints an error message and exits with a
+non-zero status.
+.sp
+.LP
+The following indicates that \fBlogin\fR specified is already in use:
+.sp
+.in +2
+.nf
+UX: roleadd: ERROR: login is already in use. Choose another.
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The following indicates that the \fIuid\fR specified with the \fB-u\fR option
+is not unique:
+.sp
+.in +2
+.nf
+UX: roleadd: ERROR: uid \fIuid\fR is already in use. Choose another.
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The following indicates that the \fIgroup\fR specified with the \fB-g\fR option
+is already in use:
+.sp
+.in +2
+.nf
+UX: roleadd: ERROR: group \fIgroup\fR does not exist. Choose another.
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The following indicates that the \fIuid\fR specified with the \fB-u\fR option
+is in the range of reserved \fBUID\fRs (from \fB0\fR-\fB99\fR):
+.sp
+.in +2
+.nf
+UX: roleadd: WARNING: uid \fIuid\fR is reserved.
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The following indicates that the \fIuid\fR specified with the \fB-u\fR option
+exceeds \fBMAXUID\fR as defined in \fB<sys/param.h>\fR:
+.sp
+.in +2
+.nf
+UX: roleadd: ERROR: uid \fIuid\fR is too big. Choose another.
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The following indicates that the \fB/etc/passwd\fR or \fB/etc/shadow\fR files
+do not exist:
+.sp
+.in +2
+.nf
+UX: roleadd: ERROR: Cannot update system files - login cannot be created.
+.fi
+.in -2
+.sp
+
+.SH NOTES
+.LP
+If a network nameservice is being used to supplement the local
+\fB/etc/passwd\fR file with additional entries, \fBroleadd\fR cannot change
+information supplied by the network nameservice.
diff --git a/usr/src/man/man8/roledel.8 b/usr/src/man/man8/roledel.8
new file mode 100644
index 0000000000..788f6341f5
--- /dev/null
+++ b/usr/src/man/man8/roledel.8
@@ -0,0 +1,181 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 1999, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH ROLEDEL 8 "Jan 7, 2018"
+.SH NAME
+roledel \- delete a role's login from the system
+.SH SYNOPSIS
+.LP
+.nf
+\fBroledel\fR [\fB-r\fR] \fIrole\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBroledel\fR utility deletes a role account from the system and makes the
+appropriate account-related changes to the system file and file system.
+\fBroledel\fR also removes the role from each user's list of assumable roles.
+.SH OPTIONS
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-r\fR\fR
+.ad
+.RS 6n
+Remove the role's home directory from the system. This directory must exist.
+The files and directories under the home directory will no longer be accessible
+following successful execution of the command.
+.sp
+If the role's home directory is located on a separate \fBZFS\fR file system and
+the \fB/etc/default/useradd\fR file contains the parameter \fBMANAGE_ZFS\fR set
+to the value \fBYES\fR, the file system will be destroyed.
+.RE
+
+.SH OPERANDS
+.LP
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fB\fIrole\fR\fR
+.ad
+.RS 8n
+An existing role name to be deleted.
+.RE
+
+.SH EXIT STATUS
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 6n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB2\fR\fR
+.ad
+.RS 6n
+Invalid command syntax. A usage message for the \fBroledel\fR command is
+displayed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB6\fR\fR
+.ad
+.RS 6n
+The account to be removed does not exist.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB8\fR\fR
+.ad
+.RS 6n
+The account to be removed is in use.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB10\fR\fR
+.ad
+.RS 6n
+Cannot update the \fB/etc/group\fR or \fB/etc/user_attr\fR file but the login
+is removed from the \fB/etc/passwd\fR file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB12\fR\fR
+.ad
+.RS 6n
+Cannot remove or otherwise modify the home directory.
+.RE
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/etc/default/useradd\fR\fR
+.ad
+.RS 18n
+configuration file for user and role administrative commands
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/passwd\fR\fR
+.ad
+.RS 18n
+system password file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/shadow\fR\fR
+.ad
+.RS 18n
+system file containing roles' encrypted passwords and related information
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/group\fR\fR
+.ad
+.RS 18n
+system file containing group definitions
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/user_attr\fR\fR
+.ad
+.RS 18n
+system file containing additional role attributes
+.RE
+
+.SH SEE ALSO
+.LP
+.BR auths (1),
+.BR passwd (1),
+.BR profiles (1),
+.BR roles (1),
+.BR passwd (5),
+.BR prof_attr (5),
+.BR user_attr (5),
+.BR attributes (7),
+.BR groupadd (8),
+.BR groupdel (8),
+.BR groupmod (8),
+.BR logins (8),
+.BR roleadd (8),
+.BR rolemod (8),
+.BR useradd (8),
+.BR userdel (8),
+.BR usermod (8),
+.BR zfs (8)
+.SH NOTES
+.LP
+The \fBroledel\fR utility only deletes an account definition that is in the
+local \fB/etc/group\fR, \fB/etc/passwd\fR, \fB/etc/shadow\fR, and
+\fB/etc/user_attr\fR file. file. If a network name service
+is being used to supplement the local \fB/etc/passwd\fR file with
+additional entries, \fBroledel\fR cannot change information supplied by the
+network name service.
diff --git a/usr/src/man/man8/rolemod.8 b/usr/src/man/man8/rolemod.8
new file mode 100644
index 0000000000..783a62a84a
--- /dev/null
+++ b/usr/src/man/man8/rolemod.8
@@ -0,0 +1,453 @@
+'\" te
+.\" Copyright (c) 2018 Peter Tribble.
+.\" Copyright 1989 AT&T Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH ROLEMOD 8 "Jan 7, 2018"
+.SH NAME
+rolemod \- modify a role's login information on the system
+.SH SYNOPSIS
+.LP
+.nf
+\fBrolemod\fR [\fB-u\fR \fIuid\fR [\fB-o\fR]] [\fB-g\fR \fIgroup\fR] [\fB-G\fR \fIgroup\fR[,\fIgroup\fR]...]
+ [\fB-d\fR \fIdir\fR [\fB-m\fR [\fB-z|-Z\fR]]] [\fB-s\fR \fIshell\fR] [\fB-c\fR \fIcomment\fR] [\fB-l\fR \fInew_name\fR]
+ [\fB-f\fR \fIinactive\fR] [\fB-e\fR \fIexpire\fR]
+ [\fB-A\fR \fIauthorization\fR[,\fIauthorization\fR]...]
+ [\fB-P\fR \fIprofile\fR[,\fIprofile\fR]...] [\fB-K\fR \fIkey=value\fR] \fIrole\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBrolemod\fR utility modifies a role's login information on the system. It
+changes the definition of the specified login and makes the appropriate
+login-related system file and file system changes.
+.sp
+.LP
+The system file entries created with this command have a limit of 512
+characters per line. Specifying long arguments to several options can exceed
+this limit.
+.SH OPTIONS
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-A\fR \fIauthorization\fR\fR
+.ad
+.sp .6
+.RS 4n
+One or more comma separated authorizations as defined in \fBauth_attr\fR(5).
+Only a user or role who has \fBgrant\fR rights to the \fBauthorization\fR can
+assign it to an account. This replaces any existing authorization setting. If
+an empty authorization list is specified, the existing setting is removed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-c\fR \fIcomment\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify a comment string. \fIcomment\fR can be any text string. It is generally
+a short description of the login, and is currently used as the field for the
+role's full name. This information is stored in the role's \fB/etc/passwd\fR
+entry.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-d\fR \fIdir\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify the new home directory of the role. It defaults to
+\fIbase_dir/login\fR, where \fIbase_dir\fR is the base directory for new login
+home directories, and \fBlogin\fR is the new login.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-e\fR \fIexpire\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify the expiration date for a role. After this date, no role will be able
+to access this login. The expire option argument is a date entered using one of
+the date formats included in the template file \fB/etc/datemsk\fR. See
+\fBgetdate\fR(3C).
+.sp
+For example, you may enter \fB10/6/90\fR or \fBOctober 6, 1990\fR. A value of
+\fB`` ''\fR defeats the status of the expired date.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR \fIinactive\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify the maximum number of days allowed between uses of a login \fBID\fR
+before that login \fBID\fR is declared invalid. Normal values are positive
+integers. A value of \fB0\fR defeats the status.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-g\fR \fIgroup\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify an existing group's integer \fBID\fR or character-string name. It
+redefines the role's primary group membership.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-G\fR \fIgroup\fR\fR
+.ad
+.sp .6
+.RS 4n
+One or more comma-separated existing groups, specified by integer \fBID\fR or
+character-string name. It redefines the role's supplementary group membership.
+Any duplicate groups between the \fB-g\fR and \fB-G\fR options are ignored.
+No more than \fBNGROUPS_UMAX\fR groups may be specified as defined in
+\fB<sys/param.h>\fR\&.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-K\fR \fIkey=value\fR\fR
+.ad
+.sp .6
+.RS 4n
+Replace existing or add to a role's \fIkey=value\fR pair attributes. Multiple
+\fB-K\fR options can be used to replace or add multiple \fIkey=value\fR pairs.
+However, keys must not be repeated. The generic \fB-K\fR option with the
+appropriate key may be used instead of the specific implied key options
+(\fB-A\fR and \fB-P\fR). See \fBuser_attr\fR(5) for a list of valid
+\fIkey=value\fR pairs.
+.sp
+The keyword \fBtype\fR can be specified with the value \fBrole\fR or the value
+\fBnormal\fR. When using the value \fBnormal\fR, the account changes from a
+role user to a normal user; using the value \fBrole\fR keeps the account a role
+user.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR \fInew_logname\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify the new login name for the role. The \fInew_logname\fR argument is a
+string of no more than eight bytes consisting of characters from the set of
+alphabetic characters, numeric characters, period (\fB\&.\fR), underline
+(\fB_\fR), and hyphen (\fB\(mi\fR). The first character should be alphabetic and
+the field should contain at least one lower case alphabetic character. A
+warning message will be written if these restrictions are not met. A future
+release may refuse to accept login fields that do not meet these
+requirements. The \fInew_logname\fR argument must contain at least one
+character and must not contain a colon (\fB:\fR) or \fBNEWLINE\fR (\fB\en\fR).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-m\fR\fR [\fB-z|-Z\fR]
+.ad
+.sp .6
+.RS 4n
+Move the role's home directory to the new directory specified with the \fB-d\fR
+option. If the directory already exists, it must have permissions
+read/write/execute by \fIgroup\fR, where \fIgroup\fR is the role's primary
+group.
+.sp
+If the role's old home directory was located on a separate \fBZFS\fR file system
+and the \fB/etc/default/useradd\fR file contains the parameter \fBMANAGE_ZFS\fR
+set to the value \fBYES\fR, the file system will be destroyed after the home
+directory is moved. If the parent directory of the role's new home directory is
+located on a separate \fBZFS\fR filesystem and the \fB/etc/default/useradd\fR
+file contains the parameter \fBMANAGE_ZFS\fR set to the value \fBYES\fR, a new
+\fBZFS\fR file system will be created.
+.sp
+If the \fB-z\fR option is specified, \fBrolemod\fR will always try to create a
+new file system for the home directory and destroy the old one.
+.sp
+If the \fB-Z\fR option is specified, a new file system will never be created,
+and the old one will never be destroyed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-o\fR\fR
+.ad
+.sp .6
+.RS 4n
+This option allows the specified \fBUID\fR to be duplicated (non-unique).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-P\fR \fIprofile\fR\fR
+.ad
+.sp .6
+.RS 4n
+One or more comma-separated execution profiles defined in \fBprof_attr\fR(5).
+This replaces any existing profile setting. If an empty profile list is
+specified, the existing setting is removed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR \fIshell\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify the full pathname of the program that is used as the role's shell on
+login. The value of \fIshell\fR must be a valid executable file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-u\fR \fIuid\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify a new \fBUID\fR for the role. It must be a non-negative decimal integer
+less than \fBMAXUID\fR as defined in \fB<sys/param.h>\fR\&. The \fBUID\fR
+associated with the role's home directory is not modified with this option; a
+role will not have access to their home directory until the \fBUID\fR is
+manually reassigned using \fBchown\fR(1).
+.RE
+
+.SH OPERANDS
+.LP
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fB\fBlogin\fR\fR
+.ad
+.sp .6
+.RS 4n
+An existing login name to be modified.
+.RE
+
+.SH EXIT STATUS
+.LP
+In case of an error, \fBrolemod\fR prints an error message and exits with one
+of the following values:
+.sp
+.ne 2
+.na
+\fB\fB2\fR\fR
+.ad
+.sp .6
+.RS 4n
+The command syntax was invalid. A usage message for the \fBrolemod\fR command
+is displayed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB3\fR\fR
+.ad
+.sp .6
+.RS 4n
+An invalid argument was provided to an option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB4\fR\fR
+.ad
+.sp .6
+.RS 4n
+The \fIuid\fR given with the \fB-u\fR option is already in use.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB5\fR\fR
+.ad
+.sp .6
+.RS 4n
+The password files contain an error. \fBpwconv\fR(8) can be used to correct
+possible errors. See \fBpasswd\fR(5).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB6\fR\fR
+.ad
+.sp .6
+.RS 4n
+The login to be modified does not exist, the \fIgroup\fR does not exist, or the
+login shell does not exist.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB8\fR\fR
+.ad
+.sp .6
+.RS 4n
+The login to be modified is in use.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB9\fR\fR
+.ad
+.sp .6
+.RS 4n
+The \fInew_logname\fR is already in use.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB10\fR\fR
+.ad
+.sp .6
+.RS 4n
+Cannot update the \fB/etc/group\fR or \fB/etc/user_attr\fR file. Other update
+requests will be implemented.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB11\fR\fR
+.ad
+.sp .6
+.RS 4n
+Insufficient space to move the home directory (\fB-m\fR option). Other update
+requests will be implemented.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB12\fR\fR
+.ad
+.sp .6
+.RS 4n
+Unable to complete the move of the home directory to the new home directory.
+.RE
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/etc/default/useradd\fR\fR
+.ad
+.sp .6
+.RS 4n
+configuration file for user and role administrative commands
+.RE
+
+.ne 2
+.na
+\fB\fB/etc/group\fR\fR
+.ad
+.sp .6
+.RS 4n
+system file containing group definitions
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/datemsk\fR\fR
+.ad
+.sp .6
+.RS 4n
+system file of date formats
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/passwd\fR\fR
+.ad
+.sp .6
+.RS 4n
+system password file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/shadow\fR\fR
+.ad
+.sp .6
+.RS 4n
+system file containing users' and roles' encrypted passwords and related
+information
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/user_attr\fR\fR
+.ad
+.sp .6
+.RS 4n
+system file containing additional user and role attributes
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.LP
+.BR chown (1),
+.BR passwd (1),
+.BR getdate (3C),
+.BR auth_attr (5),
+.BR passwd (5),
+.BR prof_attr (5),
+.BR user_attr (5),
+.BR attributes (7),
+.BR groupadd (8),
+.BR groupdel (8),
+.BR groupmod (8),
+.BR logins (8),
+.BR pwconv (8),
+.BR roleadd (8),
+.BR roledel (8),
+.BR useradd (8),
+.BR userdel (8),
+.BR usermod (8),
+.BR zfs (8)
diff --git a/usr/src/man/man8/root_archive.8 b/usr/src/man/man8/root_archive.8
new file mode 100644
index 0000000000..8835a8218d
--- /dev/null
+++ b/usr/src/man/man8/root_archive.8
@@ -0,0 +1,100 @@
+'\" te
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.\" Copyright 2012 Nexenta Systems, Inc. All rights reserved.
+.TH ROOT_ARCHIVE 8 "Sep 9, 2009"
+.SH NAME
+root_archive \- manage bootable miniroot archives
+.SH SYNOPSIS
+.LP
+.nf
+\fB/boot/solaris/bin/root_archive\fR pack \fIarchive\fR \fIroot\fR
+.fi
+
+.LP
+.nf
+\fB/boot/solaris/bin/root_archive\fR unpack \fIarchive\fR \fIroot\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBroot_archive\fR utility is used to manipulate boot archives.
+The utility can pack and unpack boot archives and image miniroots. Both \fBufs\fR and \fBhsfs\fR
+(\fBiso9660\fR) format archives can be unpacked, although only \fBufs\fR format
+is generated when packing.
+.sp
+.LP
+For normal, boot-related system administration, \fBbootadm\fR(8) is recommended.
+.SH SUBCOMMANDS
+.sp
+.LP
+The \fBroot_archive\fR command has the following subcommands:
+.sp
+.ne 2
+.na
+\fB\fBpack\fR \fIarchive\fR \fIroot\fR\fR
+.ad
+.RS 21n
+Pack the contents of the root directory into the boot archive \fIarchive\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBunpack\fR \fIarchive\fR \fIroot\fR\fR
+.ad
+.sp .6
+.RS 21n
+Unpack the contents of the boot archive named \fIarchive\fR to the directory
+named \fIroot\fR.
+.RE
+
+.SH EXIT STATUS
+.sp
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 5n
+The command completed successfully.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB1\fR\fR
+.ad
+.RS 5n
+The command exited due to an error.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Committed
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR cpio (1),
+.BR lofi (4D),
+.BR attributes (7),
+.BR bootadm (8),
+.BR mount (8)
diff --git a/usr/src/man/man8/route.8 b/usr/src/man/man8/route.8
new file mode 100644
index 0000000000..41c0595c0d
--- /dev/null
+++ b/usr/src/man/man8/route.8
@@ -0,0 +1,781 @@
+'\" te
+.\" Copyright (C) 2009, Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright (C) 2021 H. William Welliver
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH ROUTE 8 "August 29, 2021"
+.SH NAME
+route \- manually manipulate the routing tables
+.SH SYNOPSIS
+.nf
+\fBroute\fR [\fB-fnvq\fR] [\fB-z\fR \fIzone\fR] \fIsub-command\fR [ [\fImodifiers\fR] \fIargs\fR]
+.fi
+
+.LP
+.nf
+\fBroute\fR [\fB-fnvq\fR] [\fB-z\fR \fIzone\fR] [\fB-p\fR [\fB-R\fR \fIroot-dir\fR]] add | delete [\fImodifiers\fR] \fIdestination\fR \fIgateway\fR
+ [\fIargs\fR]
+.fi
+
+.LP
+.nf
+\fBroute\fR [\fB-fnvq\fR] [\fB-z\fR \fIzone\fR] change | get [\fImodifiers\fR] \fIdestination\fR
+ [\fIgateway\fR [\fIargs\fR]]
+.fi
+
+.LP
+.nf
+\fBroute\fR [\fB-fn\fR] [\fB-z\fR \fIzone\fR] monitor [\fImodifiers\fR]
+.fi
+
+.LP
+.nf
+\fBroute\fR [\fB-fnvq\fR] [\fB-z\fR \fIzone\fR] flush [\fImodifiers\fR]
+.fi
+
+.LP
+.nf
+\fBroute\fR \fB-p\fR [\fB-R\fR \fIroot-dir\fR] [\fB-z\fR \fIzone\fR] show
+.fi
+
+.SH DESCRIPTION
+\fBroute\fR manually manipulates the network routing tables. These tables are
+normally maintained by the system routing daemon, such as \fBin.routed\fR(8)
+and \fBin.ripngd\fR(8).
+.sp
+.LP
+\fBroute\fR supports a limited number of general options, but a rich command
+language. Users can specify an arbitrary request that can be delivered by means
+of the programmatic interface discussed in \fBroute\fR(4P).
+.sp
+.LP
+\fBroute\fR uses a routing socket and the new message types \fBRTM_ADD\fR,
+\fBRTM_DELETE\fR, \fBRTM_GET\fR, and \fBRTM_CHANGE\fR. While only superusers
+can modify routing tables, the \fBRTM_GET\fR operation is allowed for
+non-privileged users.
+.SH OPTIONS
+.ne 2
+.na
+\fB\fB-f\fR\fR
+.ad
+.RS 15n
+Flush the routing tables of all gateway entries. If you use the \fB-f\fR option
+in conjunction with any of the \fBroute\fR subcommands, \fBroute\fR flushes
+the gateways before performing the subcommand. Specify the table to flush by
+placing the \fBinet\fR or \fBinet6\fR modifier immediately after the \fB-f\fR
+option. If unspecified, flushing IPv4 (\fBinet\fR) routes is the default.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR\fR
+.ad
+.RS 15n
+Prevent attempts to print host and network names symbolically when reporting
+actions. This option is useful when name servers are unavailable.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR\fR
+.ad
+.RS 15n
+Make changes to the network route tables persistent across system restarts. The
+operation is applied to the network routing tables first and, if successful, is
+then applied to the list of saved routes used at system startup. In determining
+whether an operation was successful, a failure to add a route that already
+exists or to delete a route that is not in the routing table is ignored. At
+startup, any directly reachable routes (those specified with the
+\fB-interface\fR or \fB-iface\fR options) will be created first, followed by
+any remaining routes. Particular care should be taken when using host or network
+names in persistent routes, as network-based name resolution services are not
+available at the time routes are added at startup.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-q\fR\fR
+.ad
+.RS 15n
+Suppress all output.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-R\fR \fIroot-dir\fR\fR
+.ad
+.RS 15n
+Specify an alternate root directory where \fBroute\fR applies changes. This
+option is ignored unless used in conjunction with the \fB-p\fR option. When
+\fB-R\fR is specified, route changes are applied only to the list of saved
+routes to be used at startup, \fBnot\fR to the network routing tables. In
+addition, certain checks, such as the existence of network interfaces used with
+\fB-ifp\fR, are skipped.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.RS 15n
+Print additional details in verbose mode.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-z\fR \fIzone\fR\fR
+.ad
+.RS 15n
+Apply commands to the zone \fIzone\fR. The zone must be running and must not
+be a shared-\fBIP\fR zone.
+.RE
+
+.SS "Subcommands"
+The following subcommands are supported:
+.sp
+.ne 2
+.na
+\fB\fBadd\fR\fR
+.ad
+.RS 11n
+Add a route.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBchange\fR\fR
+.ad
+.RS 11n
+Change aspects of a route (such as its gateway).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdelete\fR\fR
+.ad
+.RS 11n
+Delete a specific route.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBflush\fR\fR
+.ad
+.RS 11n
+Remove all gateway entries from the routing table.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBget\fR\fR
+.ad
+.RS 11n
+Look up and display the route for a destination.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmonitor\fR\fR
+.ad
+.RS 11n
+Continuously report any changes to the routing information base, routing lookup
+misses, or suspected network partitionings.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBshow\fR\fR
+.ad
+.RS 11n
+Display the list of routes to be applied at system startup. Can be used only in
+conjunction with the \fB-p\fR option.
+.RE
+
+.sp
+.LP
+The \fBadd\fR and \fBdelete\fR subcommands have the following syntax:
+.sp
+.in +2
+.nf
+route [ -fnvq ] cmd \fIdestination\fR \fIgateway\fR [metric/netmask]
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+where \fIcmd\fR is \fBadd\fR or \fBdelete\fR, \fIdestination\fR is the
+destination host or network, and \fIgateway\fR is the next-hop intermediary
+through which packets should be routed. Modifiers described in \fBOPERANDS\fR
+can be placed anywhere on the command line.
+.sp
+.LP
+The \fBget\fR and \fBchange\fR subcommands have the following syntax:
+.sp
+.in +2
+.nf
+route [ -fnvq ] \fIcmd\fR \fIdestination\fR [\fIgateway\fR [metric/netmask]]
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+where \fIcmd\fR is \fBget\fR or \fBchange\fR, \fIdestination\fR is the
+destination host or network, and \fIgateway\fR is the next-hop intermediary
+through which packets should be routed. Modifiers described in \fBOPERANDS\fR
+can be placed anywhere on the command line.
+.sp
+.LP
+The \fBmonitor\fR subcommand has the following syntax:
+.sp
+.in +2
+.nf
+route monitor [ -inet | -inet6 ]
+.fi
+.in -2
+.sp
+
+.SH OPERANDS
+\fBroute\fR executes its subcommands on routes to destinations by way of
+gateways.
+.SS "Destinations and Gateways"
+By default, destination and gateway addresses are interpreted as IPv4
+addresses. All symbolic names are tried first as a host name, using
+\fBgetipnodebyname\fR(3SOCKET). If this lookup fails in the AF_INET case,
+\fBgetnetbyname\fR(3SOCKET) interprets the name as that of a network.
+.sp
+.LP
+Including an optional modifier on the command line before the address changes
+how the \fBroute\fR subcommand interprets it.
+.sp
+.LP
+The following modifiers are supported:
+.sp
+.ne 2
+.na
+\fB\fB-inet\fR\fR
+.ad
+.RS 10n
+Force the address to be interpreted as an IPv4 address, that is, under the
+\fBAF_INET\fR address family.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-inet6\fR\fR
+.ad
+.RS 10n
+Force the address to be interpreted as an IPv6 address, that is, under the
+\fBAF_INET6\fR address family.
+.RE
+
+.sp
+.LP
+For IPv4 addresses, routes to a particular host are by default distinguished
+from those to a network by interpreting the Internet address specified as the
+destination. If the destination has a \fBlocal address part\fR (that is, the
+portion not covered by the netmask) of \fB0\fR, or if the destination is
+resolved as the symbolic name of a network, then the route is assumed to be to
+a network; otherwise, it is presumed to be a route to a host.
+.sp
+.LP
+You can force this selection by using one of the following modifiers:
+.sp
+.ne 2
+.na
+\fB\fB-host\fR\fR
+.ad
+.RS 9n
+Force the destination to be interpreted as a host.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-net\fR\fR
+.ad
+.RS 9n
+Force the destination to be interpreted as a network.
+.RE
+
+.sp
+.LP
+For example:
+.sp
+
+.sp
+.TS
+c c
+l l .
+Destination Destination Equivalent
+_
+\fB128.32\fR \fB-host\fR \fB128.0.0.32\fR
+\fB128.32.130\fR \fB-host\fR \fB128.32.0.130\fR
+\fB-net\fR \fB128.32\fR \fB128.32.0.0\fR
+\fB-net\fR \fB128.32.130\fR \fB\fR\fB128.32.130.0\fR
+.TE
+
+.sp
+.LP
+Two modifiers avoid confusion between addresses and keywords (for example,
+\fBhost\fR used as a symbolic host name). You can distinguish a
+\fIdestination\fR by preceding it with the \fB-dst\fR modifier. You can
+distinguish a gateway address by using the \fB-gateway\fR modifier. If the
+destination is directly reachable by way of an interface requiring no
+intermediary IP router to act as a gateway, this can be indicated by using the
+\fB-interface\fR or \fB-iface\fR modifier.
+.sp
+.LP
+In the following example, the route does not refer to an external gateway
+(router), but rather to one of the machine's interfaces. Packets with IP
+destination addresses matching the destination and mask on such a route are
+sent out on the interface identified by the gateway address. For interfaces
+using the ARP protocol, this type of route is used to specify that all matching
+destinations are local to the physical link. That is, a host could be
+configured to ARP for all addresses, without regard to the configured interface
+netmask, by adding a default route using this command. For example:
+.sp
+.in +2
+.nf
+example# route add default \fIhostname\fR -interface
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+where gateway address \fIhostname\fR is the name or IP address associated with
+the network interface over which all matching packets should be sent. On a host
+with a single network interface, \fIhostname\fR is usually the same as the
+\fInodename\fR returned by the \fBuname -n\fR command. See \fBuname\fR(1).
+.sp
+.LP
+For backward compatibility with older systems, directly reachable routes can
+also be specified by placing a \fB0\fR after the gateway address:
+.sp
+.in +2
+.nf
+example# route add default \fIhostname\fR 0
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+This value was once a route metric, but this metric is no longer used. If the
+value is specified as \fB0\fR, then the destination is directly reachable
+(equivalent to specifying \fB-\fR\fBinterface\fR). If it is non-zero but cannot
+be interpreted as a subnet mask, then a gateway is used (default).
+.sp
+.LP
+With the \fBAF_INET\fR address family or an IPv4 address, a separate subnet
+mask can be specified. This can be specified in one of the following ways:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+IP address following the gateway address . This is typically specified in
+\fIdecimal dot\fR notation as for \fBinet_addr\fR(3C) rather than in
+symbolic form.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+IP address following the \fB-netmask\fR qualifier.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Slash character and a decimal length appended to the destination address.
+.RE
+.sp
+.LP
+If a subnet mask is not specified, the mask used is the subnet mask of the
+output interface selected by the gateway address, if the classful network of
+the destination is the same as the classful network of the interface.
+Otherwise, the classful network mask for the destination address is used.
+.sp
+.LP
+Each of the following examples creates an IPv4 route to the destination
+\fB192.0.2.32\fR subnet with a subnet mask of \fB255.255.255.224\fR:
+.sp
+.in +2
+.nf
+example# route add 192.0.2.32/27 somegateway
+example# route add 192.0.2.32 -netmask 255.255.255.224 somegateway
+example# route add 192.0.2.32 somegateway 255.255.255.224
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+For IPv6, only the slash format is accepted. The following example creates an
+IPv6 route to the destination \fB33fe::\fR with a netmask of \fB16\fR one-bits
+followed by 112 zero-bits.
+.sp
+.in +2
+.nf
+example# route add -inet6 3ffe::/16 somegateway
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+In cases where the gateway does not uniquely identify the output interface (for
+example, when several interfaces have the same address), you can use the
+\fB-ifp\fR \fIifname\fR modifier to specify the interface by name. For
+example, \fB\fR\fB-ifp\fR \fBlo0\fR associates the route with the \fBlo0\fR
+interface. If the named interface is an underlying interface in an IPMP (IP
+multipathing) group, then requests to add a route will automatically be
+translated to the corresponding IPMP IP interface, and requests to delete or
+change a route on an underlying interface will fail.
+.SS "Routing Flags"
+Routes have associated flags that influence operation of the protocols when
+sending to destinations matched by the routes. These flags can be set (and in
+some cases cleared, indicated by \fB~\fR) by including the following modifiers
+on the command line:
+.sp
+
+.sp
+.TS
+c c c
+l l l .
+Modifier Flag Description
+_
+\fB-interface\fR \fB~RTF_GATEWAY\fR Destination is directly reachable
+\fB-iface\fR \fB~RTF_GATEWAY\fR Alias for interface modifier
+\fB-static\fR \fBRTF_STATIC\fR Manually added route
+\fB-nostatic\fR \fB~RTF_STATIC\fR T{
+Pretend route was added by kernel or routing daemon
+T}
+\fB-reject\fR \fBRTF_REJECT\fR Emit an ICMP unreachable when matched
+\fB-blackhole\fR \fBRTF_BLACKHOLE\fR Silently discard packets during updates
+\fB-proto1\fR \fBRTF_PROTO1\fR Set protocol specific routing flag #1
+\fB-proto2\fR \fBRTF_PROTO2\fR Set protocol specific routing flag #2
+\fB-private\fR \fBRTF_PRIVATE\fR Do not advertise this route
+\fB-multirt\fR \fBRTF_MULTIRT\fR Creates the specified redundant route
+\fB-setsrc\fR \fBRTF_SETSRC\fR Assigns the default source address
+.TE
+
+.sp
+.LP
+The optional modifiers \fB-rtt\fR, \fB-rttvar\fR, \fB-sendpipe\fR,
+\fB-recvpipe\fR, \fB-mtu\fR, \fB-hopcount\fR, \fB-expire\fR, and
+\fB-ssthresh\fR provide initial values to quantities maintained in the routing
+entry by transport level protocols, such as \fBTCP\fR. These can be
+individually locked either by preceding each modifier to be locked by the
+\fB-lock\fR meta-modifier, or by specifying that all ensuing metrics can be
+locked by the \fB-lockrest\fR meta-modifier.
+.sp
+.LP
+Some transport layer protocols can support only some of these metrics. The
+following optional modifiers are supported:
+.sp
+.ne 2
+.na
+\fB\fB-expire\fR\fR
+.ad
+.RS 13n
+Lifetime for the entry. This optional modifier is not currently supported.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-hopcount\fR\fR
+.ad
+.RS 13n
+Maximum hop count. This optional modifier is not currently supported.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-mtu\fR\fR
+.ad
+.RS 13n
+Maximum MTU in bytes.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-recvpipe\fR\fR
+.ad
+.RS 13n
+Receive pipe size in bytes.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-rtt\fR\fR
+.ad
+.RS 13n
+Round trip time in microseconds.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-rttvar\fR\fR
+.ad
+.RS 13n
+Round trip time variance in microseconds.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-sendpipe\fR\fR
+.ad
+.RS 13n
+Send pipe size in bytes.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-ssthresh\fR\fR
+.ad
+.RS 13n
+Send pipe size threshold in bytes.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-secattr\fR\fR
+.ad
+.RS 13n
+Security attributes of the route. This modifier is available only if the system
+is configured with the Solaris Trusted Extensions feature.
+.sp
+The \fB-secattr\fR modifier has the following format:
+.sp
+.in +2
+.nf
+min_sl=\fIval\fR,max_sl=\fIval\fR,doi=\fIval\fR,cipso
+.fi
+.in -2
+
+or:
+.sp
+.in +2
+.nf
+sl=VAL,doi=VAL,cipso
+.fi
+.in -2
+
+In the first form, above, the \fIval\fR for \fBmin_sl\fR and \fBmax_sl\fR is a
+sensitivity label in either hex or string form. The \fIval\fR for \fBdoi\fR is
+a non-negative integer. The route will apply only for packets with the same
+domain of interpretation as defined by the \fBdoi\fR value and within the
+accreditation range defined by the \fBmin_sl\fR and \fBmax_sl\fR values. The
+\fBcipso\fR keyword is optional and set by default. Valid \fBmin_sl\fR,
+\fBmax_sl\fR and \fBdoi\fR keyword/value pairs are mandatory. Note that if
+\fIval\fR contains a space, it must be protected by double quotes.
+.sp
+The second form, above, is equivalent to specifying the first form with the
+same \fBVAL\fR for \fBmin_sl\fR and \fBmax_sl\fR. The second form should be
+used for the \fBget\fR command, because \fBget\fR uses only a single
+sensitivity label.
+.RE
+
+.SS "Compatibility"
+The modifiers \fBhost\fR and \fBnet\fR are taken to be equivalent to
+\fB-\fR\fBhost\fR and \fB-net\fR\fB\fR. To specify a symbolic address that
+matches one of these names, use the \fBdst\fR or \fBgateway\fR keyword to
+distinguish it. For example: \fB\fR\fB-dst\fR \fBhost\fR
+.sp
+.LP
+The following two flags are also accepted for compatibility with older systems,
+but have no effect.
+.sp
+
+.sp
+.TS
+c c
+l l .
+Modifier Flag
+_
+\fB-cloning\fR RTF_CLONING
+\fB-xresolve\fR RTF_XRESOLVE
+.TE
+
+.sp
+.LP
+The \fB\fR\fB-ifa\fR \fBhostname\fR modifier is also accepted, but has no
+effect.
+.SH FILES
+.ne 2
+.na
+\fB\fB/etc/defaultrouter\fR\fR
+.ad
+.RS 22n
+List of default routers
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/hosts\fR\fR
+.ad
+.RS 22n
+List of host names and net addresses
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/networks\fR\fR
+.ad
+.RS 22n
+List of network names and addresses
+.RE
+
+.SH SEE ALSO
+.BR uname (1),
+.BR ioctl (2),
+.BR inet_addr (3C),
+.BR getipnodebyname (3SOCKET),
+.BR getnetbyname (3SOCKET),
+.BR ARP (4P),
+.BR ip (4P),
+.BR route (4P),
+.BR routing (4P),
+.BR defaultrouter (5),
+.BR hosts (5),
+.BR networks (5),
+.BR attributes (7),
+.BR in.ripngd (8),
+.BR in.routed (8),
+.BR netstat (8),
+.BR routed (8)
+.SH DIAGNOSTICS
+.ne 2
+.na
+\fB\fBadd\fR [ \fBhost\fR\||\ \fBnetwork\|]\fR \fIdestination\fR:\fIgateway\fR
+\fIflags\fR\fR
+.ad
+.sp .6
+.RS 4n
+The specified route is being added to the tables. The values printed are from
+the routing table entry supplied in the \fBioctl\fR(2) call. If the gateway
+address used was not the primary address of the gateway (the first one returned
+by \fBgetipnodebyname\fR(3SOCKET)) the gateway address is printed numerically
+as well as symbolically.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdelete\fR [ \fBhost\fR\||\ \fBnetwork\fR\|]
+\fIdestination\fR:\fIgateway\fR \fIflags\fR\fR
+.ad
+.br
+.na
+\fB\fBchange\fR [ \fBhost\fR\||\ \fBnetwork\fR\|]
+\fIdestination\fR:\fIgateway\fR \fIflags\fR\fR
+.ad
+.sp .6
+.RS 4n
+As \fBadd\fR, but when deleting or changing an entry.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIdestination\fR \fBdone\fR\fR
+.ad
+.sp .6
+.RS 4n
+When the \fB-f\fR flag is specified, or the \fBflush\fR subcommand is used,
+each routing table entry deleted is indicated with a message of this form.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBNetwork is unreachable\fR\fR
+.ad
+.sp .6
+.RS 4n
+An attempt to add a route failed because the gateway listed was not on a
+directly-connected network. Give the next-hop gateway instead.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnot in table\fR\fR
+.ad
+.sp .6
+.RS 4n
+A \fBdelete\fR operation was attempted for an entry that is not in the table.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBentry exists\fR\fR
+.ad
+.sp .6
+.RS 4n
+An \fBadd\fR operation was attempted for a route that already exists in the
+kernel.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrouting table overflow\fR\fR
+.ad
+.sp .6
+.RS 4n
+An operation was attempted, but the system was unable to allocate memory to
+create the new entry.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBinsufficient privileges\fR\fR
+.ad
+.sp .6
+.RS 4n
+An attempt to add, delete, change, or flush a route failed because the calling
+process does not have appropriate privileges.
+.RE
+
+.SH NOTES
+Specifying that destinations are local (with the \fB-interface\fR modifier)
+assumes that the routers implement \fBproxy ARP\fR, meaning that they respond
+to ARP queries for all reachable destinations. Normally, using either router
+discovery or RIP is more reliable and scalable than using proxy ARP. See
+\fBin.routed\fR(8) for information related to RIP.
+.sp
+.LP
+Combining the all destinations are local route with subnet or network routes
+can lead to unpredictable results. The search order as it relates to the all
+destinations are local route are undefined and can vary from release to
+release.
diff --git a/usr/src/man/man8/routeadm.8 b/usr/src/man/man8/routeadm.8
new file mode 100644
index 0000000000..5aa630adf9
--- /dev/null
+++ b/usr/src/man/man8/routeadm.8
@@ -0,0 +1,551 @@
+'\" te
+.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH ROUTEADM 8 "May 13, 2017"
+.SH NAME
+routeadm \- IP forwarding and routing configuration
+.SH SYNOPSIS
+.LP
+.nf
+\fBrouteadm\fR [\fB-p\fR [\fIoption\fR]]
+.fi
+
+.LP
+.nf
+\fBrouteadm\fR [\fB-R\fR \fIroot-dir\fR] [\fB-e\fR \fIoption\fR ...] [\fB-d\fR \fIoption\fR...]
+ [\fB-r\fR \fIoption\fR...] [\fB-s\fR \fIvar\fR=\fIvalue\fR]
+.fi
+
+.LP
+.nf
+\fBrouteadm\fR [\fB-l\fR \fIfmri\fR]
+.fi
+
+.LP
+.nf
+\fBrouteadm\fR [\fB-m\fR \fIfmri\fR \fIkey\fR=\fIvalue\fR [\fIkey\fR=\fIvalue\fR]...]
+.fi
+
+.LP
+.nf
+\fBrouteadm\fR [\fB-u\fR]
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBrouteadm\fR command is used to administer system-wide configuration for
+IP forwarding and routing. IP forwarding is the passing of IP packets from one
+network to another; IP routing is the use of a routing protocol to determine
+routes.
+.sp
+.LP
+IP forwarding and routing functions are also represented as services within the
+service management facility (SMF), and can be administered by means of
+\fBsvcadm\fR(8) also, using the following fault management resource
+identifiers (FMRIs):
+.sp
+.in +2
+.nf
+svc:/network/ipv4-forwarding:default
+svc:/network/ipv6-forwarding:default
+svc:/network/routing/route:default
+svc:/network/routing/ripng:default
+.fi
+.in -2
+
+.sp
+.LP
+See EXAMPLES for relevant examples.
+.sp
+.LP
+In addition to enabling and disabling routing and forwarding, \fBrouteadm\fR is
+used to interact with SMF-based routing daemon services. Routing daemon
+services are identified by the presence of a \fBrouteadm\fR application
+property group, which \fBrouteadm\fR uses in administering the given service.
+Routing daemon services can also specify properties relating to their operation
+in the \fBrouting\fR application property group; these can be modified by means
+of routeadm -m. If an FMRI for a service without such a property group is
+specified, an error is issued and the operation is not carried out. If a
+routing daemon has not been converted to SMF, the \fBipv4\fI[or
+6]\fR-routing-daemon\fR, \fBipv4\fI[or 6]\fR-routing-daemon-args\fR, and
+\fBipv4\fI[or 6]\fR-routing-stop-cmd\fR variables can be used to specify the
+appropriate daemon for IPv4 or IPv6 routing. \fBrouteadm\fR will then run that
+daemon using the \fBsvc:/network/routing/legacy-routing:ipv4\fR\fI[or 6]\fR
+service as appropriate. This conversion process occurs when you issue an enable
+(\fB-e\fR), disable (\fB-d\fR) or an update (\fB-u\fR) command.
+.sp
+.LP
+The first usage, in the SYNOPSIS above, reports the current configuration.
+.SH OPTIONS
+.LP
+The following command-line options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-p\fR [\fIoption\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Print the configuration in parsable format. If \fIoption\fR is specified, only
+the configuration for the specified option or variable is displayed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-R\fR \fIroot-dir\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify an alternate root directory where \fBrouteadm\fR applies changes.
+.LP
+Note -
+.sp
+.RS 2
+The root file system of any non-global zones must not be referenced with the
+\fB-R\fR option. Doing so might damage the global zone's file system, might
+compromise the security of the global zone, and might damage the non-global
+zone's file system. See \fBzones\fR(7).
+.RE
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-e\fR \fIoption\fR...\fR
+.ad
+.sp .6
+.RS 4n
+Enable the specified option. The effect is to prepare the associated services
+(\fBsvc:/network/ipv4-forwarding:default\fR in the case of
+\fBipv4-forwarding\fR) for enabling. By means of the \fBrouting-svcs\fR
+variable, the routing daemons are specified to be enabled on subsequent boot or
+when \fBrouteadm\fR \fB-u\fR is run.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-d\fR \fIoption\fR...\fR
+.ad
+.sp .6
+.RS 4n
+Disable the specified option. The effect is to prepare the associated services
+(\fBsvc:/network/ipv4-forwarding:default\fR in the case of
+\fBipv4-forwarding\fR) for enabling. By means of the \fBrouting-svcs\fR
+variable, the routing daemons are specified to be disabled on subsequent boot
+or when \fBrouteadm\fR \fB-u\fR is run.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR \fIfmri\fR\fR
+.ad
+.sp .6
+.RS 4n
+List all properties in the routing application property group for the SMF
+routing daemon service.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-m\fR \fIfmri\fR\ \fIkey\fR=\fIvalue\fR\fR
+.ad
+.sp .6
+.RS 4n
+Change property value of property \fIkey\fR to \fIvalue\fR in routing
+application property group for the SMF routing daemon service. For multi-valued
+properties, the property name can be used multiple times in the modify
+operation, and each associated value will be added.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-r\fR \fIoption...\fR\fR
+.ad
+.sp .6
+.RS 4n
+Revert the specified option to the system default. The system defaults are
+specified in the description of each \fIoption\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-u\fR\fR
+.ad
+.sp .6
+.RS 4n
+Apply the currently configured options to the running system. These options
+might include enabling or disabling IP forwarding and launching or killing
+routing daemons, if any are specified. It does not alter the state of the
+system for those settings that have been set to default. This option is meant
+to be used by administrators who do not want to reboot to apply their changes.
+In addition, this option upgrades non-SMF configurations from the invocations
+of daemon stop commands, which might include a set of arguments, to a simple
+enabling of the appropriate service.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR \fIkey\fR=\fIvalue\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify string values for specific variables in a comma-separated list with no
+intervening spaces. If invalid options are specified, a warning message is
+displayed and the program exits. The following variables can be specified:
+.sp
+.ne 2
+.na
+\fB\fBrouting-svcs=\fR\fIfmrilist\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the routing daemon services to be enabled. Routing daemon services
+are determined to be IPv4 or IPv6 (and so enabled or disabled when
+\fBrouteadm\fR \fB-e\fR/\fB-d\fR \fBipv4\fR\fI(6)\fR\fB-routing\fR is run) on
+the basis of property values in the \fBrouteadm\fR application property group.
+Default: \fBroute:default ripng:default\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBipv4-routing-daemon=\fI<full_path_to_routing_daemon>\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the routing daemon to be started when \fBipv4-routing\fR is enabled.
+The routing daemon specified must be an executable binary or shell-script. If
+the specified program maps to an SMF service, the service will be used, and
+daemon arguments to the program will be transferred to the properties of the
+service at enable time. Default: \fB""\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBipv4-routing-daemon-args=\fI<args>\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the startup arguments to be passed to the \fBipv4-routing-daemon\fR
+when \fBipv4-routing\fR is enabled. Default: no arguments
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBipv4-routing-stop-cmd=\fI<command>\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the command to be executed to stop the routing daemon when
+\fBipv4-routing\fR is disabled. \fI<command>\fR can be an executable binary or
+shell-script, or a string that can be parsed by \fBsystem\fR(3C). Default:
+\fB""\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBipv6-routing-daemon=\fI<full_path_to_routing_daemon>\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the routing daemon to be started when \fBipv6-routing\fR is enabled.
+The routing daemon specified must be an executable binary or shell-script. If
+the specified program maps to an SMF service, the service will be used, and
+daemon arguments to the program will be transferred to the properties of the
+service at enable time. Default: \fB""\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBipv6-routing-daemon-args=\fI<args>\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the startup arguments to be passed to the \fBipv6-routing-daemon\fR
+when \fBipv6-routing\fR is enabled. Default: \fB""\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBipv6-routing-stop-cmd=\fI<command>\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the command to be executed to stop the routing daemon when
+\fBipv6-routing\fR is disabled. \fI<command>\fR can be an executable binary or
+shell-script, or a string that can be parsed by \fBsystem\fR(3C). Default:
+\fB""\fR
+.RE
+
+.RE
+
+.sp
+.LP
+Multiple \fB-e\fR, \fB-d\fR, and \fB-r\fR options can be specified on the
+command line. Changes made by \fB-e\fR, \fB-d\fR, and \fB-r\fR are persistent,
+but are not applied to the running system unless \fBrouteadm\fR is called later
+with the \fB-u\fR option.
+.sp
+.LP
+Use the following options as arguments to the \fB-e\fR, \fB-d\fR, and \fB-r\fR
+options (shown above as \fIoption...\fR).
+.sp
+.ne 2
+.na
+\fB\fBipv4-forwarding\fR\fR
+.ad
+.sp .6
+.RS 4n
+Controls the global forwarding configuration for all IPv4 interfaces. The
+system default is \fBdisabled\fR. If enabled, IP will forward IPv4 packets to
+and from interfaces when appropriate. If disabled, IP will not forward IPv4
+packets to and from interfaces when appropriate. The SMF service associated
+with this configuration variable is \fBsvc:/network/routing/ipv4-forwarding\fR.
+This service will be enabled or disabled as appropriate when \fBrouteadm\fR is
+called with the \fBu\fR option. As an alternative, you can use
+\fBsvcadm\fR(8). Services that require \fBipv4-forwarding\fR to be enabled
+should specify a dependency on this service.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBipv4-routing\fR\fR
+.ad
+.sp .6
+.RS 4n
+Determines whether an IPv4 routing daemon is run. The system default is
+\fBenabled\fR unless the \fB/etc/defaultrouter\fR file exists (see
+\fBdefaultrouter\fR(5)), in which case the default is \fBdisabled\fR. The value
+of this option reflects the state of all IPv4 routing services, such that if
+any IPv4 routing service is enabled, \fBipv4-routing\fR is enabled. This allows
+users to interact with routing services using \fBsvcadm\fR(8), as well as
+through \fBrouteadm\fR. IPv4 routing services, specified by means of the
+\fBrouting-svcs\fR variable, will be prepared for enable on next boot when the
+user explicitly enables \fBipv4-routing\fR. The SMF routing daemon service for
+\fBin.routed\fR (\fBsvc:/network/routing/route:default\fR) is specified by
+default.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBipv6-forwarding\fR\fR
+.ad
+.sp .6
+.RS 4n
+Controls the global forwarding configuration for all IPv6 interfaces. The
+system default is \fBdisabled\fR. If enabled, IP will forward IPv6 packets to
+and from interfaces when appropriate. If disabled, IP will not forward IPv6
+packets to and from interfaces when appropriate. The SMF service associated
+with this configuration variable is \fBsvc:/network/routing/ipv6-forwarding\fR.
+This service will be enabled or disabled as appropriate when \fBrouteadm\fR is
+called with the \fB-u\fR option, or \fBsvcadm\fR(8) is used. Services that
+require \fBipv6-forwarding\fR to be enabled should specify a dependency on this
+service.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBipv6-routing\fR\fR
+.ad
+.sp .6
+.RS 4n
+Determines whether an IPv6 routing daemon is run. The system default is
+\fBdisabled\fR. The value of this option reflects the state of all IPv6 routing
+services, such that, if any IPv6 routing service is enabled, \fBipv6-routing\fR
+is enabled. This allows users to interact with routing services via
+\fBsvcadm\fR(8) as well as through \fBrouteadm\fR. IPv6 routing services,
+specified by means of the \fBrouting-svcs\fR variable, will be prepared for
+enable on next boot when the user explicitly enables \fBipv6-routing\fR. The
+SMF routing daemon service for \fBin.ripngd\fR
+(\fBsvc:/network/routing/ripng:default\fR) is specified by default.
+.RE
+
+.sp
+.LP
+The forwarding and routing settings are related but not mutually dependent. For
+example, a router typically forwards IP packets and uses a routing protocol,
+but nothing would prevent an administrator from configuring a router that
+forwards packets and does not use a routing protocol. In that case, the
+administrator would enable forwarding, disable routing, and populate the
+router's routing table with static routes.
+.sp
+.LP
+The forwarding settings are global settings. Each interface also has an
+\fBIFF_ROUTER\fR forwarding flag that determines whether packets can be
+forwarded to or from a particular interface. That flag can be independently
+controlled by means of \fBifconfig\fR(8)'s router option. When the global
+forwarding setting is changed (that is, \fB-u\fR is issued to change the value
+from \fBenabled\fR to \fBdisabled\fR or vice-versa), all interface flags in the
+system are changed simultaneously to reflect the new global policy. Interfaces
+configured by means of DHCP automatically have their interface-specific
+\fBIFF_ROUTER\fR flag cleared.
+.sp
+.LP
+When a new interface is plumbed by means of \fBifconfig\fR, the value of the
+interface-specific forwarding flag is set according to the current global
+forwarding value. Thus, the forwarding value forms the "default" for all new
+interfaces.
+.SH EXAMPLES
+.LP
+\fBExample 1 \fREnabling IPv4 Forwarding
+.sp
+.LP
+IPv4 forwarding is disabled by default. The following command enables IPv4
+forwarding:
+
+.sp
+.in +2
+.nf
+example# \fBrouteadm -e ipv4-forwarding\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRApply Configured Settings to the Running System
+.sp
+.LP
+In the previous example, a system setting was changed, but will not take effect
+until the next reboot unless a command such as the following is used:
+
+.sp
+.in +2
+.nf
+example# \fBrouteadm -u\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+An alternative to the above two steps is to simply enable the equivalent SMF
+service:
+
+.sp
+.in +2
+.nf
+example# \fBsvcadm enable svc:/network/ipv4-forwarding\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+\&...or, using the abbreviated FMRI:
+
+.sp
+.in +2
+.nf
+example# \fBsvcadm enable ipv4-forwarding\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRMaking a Setting Revert to its Default
+.sp
+.LP
+To make the setting changed in the first example revert to its default, enter
+the following:
+
+.sp
+.in +2
+.nf
+example# \fBrouteadm -r ipv4-forwarding\fR
+example# \fBrouteadm -u\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 4 \fRStarting \fBin.routed\fR with the \fB-q\fR Flag
+.sp
+.LP
+Setting the \fB-q\fR flag is represented in the SMF service by setting the
+\fBquiet_mode\fR property to true. The following sequence of commands starts
+\fBin.routed\fR with the \fB-q\fR flag:
+
+.sp
+.in +2
+.nf
+example# \fBrouteadm -m route:default quiet_mode=true\fR
+example# \fBrouteadm -e ipv4-routing -u\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+See \fBin.routed\fR(8) for details of property names and how they relate to
+daemon behavior.
+
+.SH EXIT STATUS
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 7n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB!=0\fR\fR
+.ad
+.RS 7n
+An error occurred while obtaining or modifying the system configuration.
+.RE
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/etc/inet/routing.conf\fR\fR
+.ad
+.RS 26n
+Parameters for IP forwarding and routing. (Not to be edited.)
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Stable
+.TE
+
+.SH SEE ALSO
+.LP
+.BR gateways (5),
+.BR attributes (7),
+.BR smf (7),
+.BR ifconfig (8),
+.BR in.routed (8),
+.BR svcadm (8)
diff --git a/usr/src/man/man8/rpc.bootparamd.8 b/usr/src/man/man8/rpc.bootparamd.8
new file mode 100644
index 0000000000..a84dd5af3a
--- /dev/null
+++ b/usr/src/man/man8/rpc.bootparamd.8
@@ -0,0 +1,96 @@
+'\" te
+.\" Copyright 1989 AT&T
+.\" Copyright (C) 2004, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH RPC.BOOTPARAMD 8 "Aug 1, 2004"
+.SH NAME
+rpc.bootparamd, bootparamd \- boot parameter server
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/rpc.bootparamd\fR [\fB-d\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBrpc.bootparamd\fR is a server process that provides information from a
+\fBbootparams\fR database to diskless clients at boot time. See
+.BR bootparams (5)
+.sp
+.LP
+The source for the \fBbootparams\fR database is determined by the
+\fBnsswitch.conf\fR(5) file (on the machine running the \fBrpc.bootparamd\fR
+process).
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-d\fR\fR
+.ad
+.RS 6n
+Display debugging information.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/bootparams\fR\fR
+.ad
+.RS 22n
+boot parameter data base
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/nsswitch.conf\fR\fR
+.ad
+.RS 22n
+configuration file for the name-service switch
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR svcs (1),
+.BR bootparams (5),
+.BR nsswitch.conf (5),
+.BR attributes (7),
+.BR smf (7),
+.BR svcadm (8)
+.SH NOTES
+.sp
+.LP
+A diskless client requires service from at least one \fBrpc.bootparamd\fR
+process running on a server that is on the same IP subnetwork as the diskless
+client.
+.sp
+.LP
+Some routines that compare hostnames use case-sensitive string comparisons;
+some do not. If an incoming request fails, verify that the case of the
+hostname in the file to be parsed matches the case of the hostname called for,
+and attempt the request again.
+.sp
+.LP
+The \fBrpc.bootparamd\fR service is managed by the service management facility,
+\fBsmf\fR(7), under the service identifier:
+.sp
+.in +2
+.nf
+svc:/network/rpc/bootparams
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Administrative actions on this service, such as enabling, disabling, or
+requesting restart, can be performed using \fBsvcadm\fR(8). The service's
+status can be queried using the \fBsvcs\fR(1) command.
diff --git a/usr/src/man/man8/rpc.rstatd.8 b/usr/src/man/man8/rpc.rstatd.8
new file mode 100644
index 0000000000..abf9ca9edc
--- /dev/null
+++ b/usr/src/man/man8/rpc.rstatd.8
@@ -0,0 +1,55 @@
+'\" te
+.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH RPC.RSTATD 8 "Nov 4, 2004"
+.SH NAME
+rpc.rstatd, rstatd \- kernel statistics server
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/netsvc/rstat/rpc.rstatd\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBrpc.rstatd\fR is a server which returns performance statistics obtained from
+the kernel. \fBrup\fR(1) uses \fBrpc.rstatd\fR to collect the \fBuptime\fR
+information that it displays.
+.sp
+.LP
+\fBrpc.rstatd\fR is an RPC service.
+.SH SEE ALSO
+.sp
+.LP
+.BR rup (1),
+.BR svcs (1),
+.BR services (5),
+.BR attributes (7),
+.BR smf (7),
+.BR inetadm (8),
+.BR inetd (8),
+.BR svcadm (8)
+.SH NOTES
+.sp
+.LP
+The \fBrpc.rstatd\fR service is managed by the service management facility,
+\fBsmf\fR(7), under the service identifier:
+.sp
+.in +2
+.nf
+svc:/network/rpc/rstat:default
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Administrative actions on this service, such as enabling, disabling, or
+requesting restart, can be performed using \fBsvcadm\fR(8). Responsibility for
+initiating and restarting this service is delegated to \fBinetd\fR(8). Use
+\fBinetadm\fR(8) to make configuration changes and to view configuration
+information for this service. The service's status can be queried using the
+\fBsvcs\fR(1) command.
diff --git a/usr/src/man/man8/rpc.rusersd.8 b/usr/src/man/man8/rpc.rusersd.8
new file mode 100644
index 0000000000..386aa15720
--- /dev/null
+++ b/usr/src/man/man8/rpc.rusersd.8
@@ -0,0 +1,52 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 2004 Sun Microsystems, Inc. - All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH RPC.RUSERSD 8 "Nov 4, 2004"
+.SH NAME
+rpc.rusersd, rusersd \- network username server
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/netsvc/rusers/rpc.rusersd\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBrpc.rusersd\fR is a server that returns a list of users on the host. The
+\fBrpc.rusersd\fR daemon may be started by \fBinetd\fR(8) or \fBlisten\fR(8).
+.SH SEE ALSO
+.sp
+.LP
+.BR svcs (1),
+.BR attributes (7),
+.BR smf (7),
+.BR inetadm (8),
+.BR inetd (8),
+.BR listen (8),
+.BR pmadm (8),
+.BR sacadm (8),
+.BR svcadm (8)
+.SH NOTES
+.sp
+.LP
+The \fBrpc.rusersd\fR service is managed by the service management facility,
+\fBsmf\fR(7), under the service identifier:
+.sp
+.in +2
+.nf
+svc:/network/rpc/rusers:default
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Administrative actions on this service, such as enabling, disabling, or
+requesting restart, can be performed using \fBsvcadm\fR(8). Responsibility for
+initiating and restarting this service is delegated to \fBinetd\fR(8). Use
+\fBinetadm\fR(8) to make configuration changes and to view configuration
+information for this service. The service's status can be queried using the
+\fBsvcs\fR(1) command.
diff --git a/usr/src/man/man8/rpc.rwalld.8 b/usr/src/man/man8/rpc.rwalld.8
new file mode 100644
index 0000000000..e632195e35
--- /dev/null
+++ b/usr/src/man/man8/rpc.rwalld.8
@@ -0,0 +1,54 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 2004 Sun Microsystems, Inc. - All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH RPC.RWALLD 8 "Nov 4, 2004"
+.SH NAME
+rpc.rwalld, rwalld \- network rwall server
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/netsvc/rwall/rpc.rwalld\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBrpc.rwalld\fR is a server that handles \fBrwall\fR(8) requests. It is
+implemented by calling \fBwall\fR(8) on all the appropriate network machines.
+The \fBrpc.rwalld\fR daemon may be started by \fBinetd\fR(8) or
+\fBlisten\fR(8).
+.SH SEE ALSO
+.sp
+.LP
+.BR svcs (1),
+.BR attributes (7),
+.BR smf (7),
+.BR inetadm (8),
+.BR inetd (8),
+.BR listen (8),
+.BR rwall (8),
+.BR svcadm (8),
+.BR wall (8)
+.SH NOTES
+.sp
+.LP
+The \fBrpc.rwalld\fR service is managed by the service management facility,
+\fBsmf\fR(7), under the service identifier:
+.sp
+.in +2
+.nf
+svc:/network/rpc/wall:default
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Administrative actions on this service, such as enabling, disabling, or
+requesting restart, can be performed using \fBsvcadm\fR(8). Responsibility for
+initiating and restarting this service is delegated to \fBinetd\fR(8). Use
+\fBinetadm\fR(8) to make configuration changes and to view configuration
+information for this service. The service's status can be queried using the
+\fBsvcs\fR(1) command.
diff --git a/usr/src/man/man8/rpc.smserverd.8 b/usr/src/man/man8/rpc.smserverd.8
new file mode 100644
index 0000000000..980c9e839a
--- /dev/null
+++ b/usr/src/man/man8/rpc.smserverd.8
@@ -0,0 +1,58 @@
+'\" te
+.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH RPC.SMSERVERD 8 "May 13, 2017"
+.SH NAME
+rpc.smserverd \- removable media device server
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/smedia/rpc.smserverd\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+\fBrpc.smserverd\fR is a server that handles requests from client
+applications, such as volume management software or \fBrmformat\fR(1),
+for access to removable media
+devices. The \fBrpc.smserverd\fR daemon is started by
+\fBinetd\fR(8) when a client makes a call to a Solaris-internal library to
+access a SCSI, IDE, or USB device. The daemon is not started if a client
+attempts to access a floppy or PCMCIA device. Once started, the daemon remains
+active until such time as it is idle for three minutes or more.
+.sp
+.LP
+The \fBrpc.smserverd\fR daemon is provided for the exclusive use of the client
+applications mentioned above. It has no external, customer-accessible
+interfaces, including no configuration file.
+.SH SEE ALSO
+.LP
+.BR rmformat (1),
+.BR svcs (1),
+.BR attributes (7),
+.BR smf (7),
+.BR inetadm (8),
+.BR inetd (8),
+.BR svcadm (8)
+.SH NOTES
+.LP
+The \fBrpc.smserverd\fR service is managed by the service management facility,
+\fBsmf\fR(7), under the service identifier:
+.sp
+.in +2
+.nf
+svc:/network/rpc/smserver
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Administrative actions on this service, such as enabling, disabling, or
+requesting restart, can be performed using \fBsvcadm\fR(8). Responsibility for
+initiating and restarting this service is delegated to \fBinetd\fR(8). Use
+\fBinetadm\fR(8) to make configuration changes and to view configuration
+information for this service. The service's status can be queried using the
+\fBsvcs\fR(1) command.
diff --git a/usr/src/man/man8/rpc.sprayd.8 b/usr/src/man/man8/rpc.sprayd.8
new file mode 100644
index 0000000000..43bd40653f
--- /dev/null
+++ b/usr/src/man/man8/rpc.sprayd.8
@@ -0,0 +1,58 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 2004 Sun Microsystems, Inc. - All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH RPC.SPRAYD 8 "Nov 4, 2004"
+.SH NAME
+rpc.sprayd, sprayd \- spray server
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/netsvc/spray/rpc.sprayd\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBrpc.sprayd\fR is a server that records the packets sent by \fBspray\fR(8).
+The \fBrpc.sprayd\fR daemon may be started by \fBinetd\fR(8) or
+\fBlisten\fR(8).
+.sp
+.LP
+The service provided by \fBrpc.sprayd\fR is not useful as a networking
+benchmark as it uses unreliable connectionless transports, (udp for example).
+It can report a large number of packets dropped when the drops were caused by
+the program sending packets faster than they can be buffered locally (before
+the packets get to the network medium).
+.SH SEE ALSO
+.sp
+.LP
+\fBsvcs\fR(1), \fBinetadm\fR(8), \fBinetd\fR(8) \fBattributes\fR(7),
+.BR smf (7),
+.BR listen (8),
+.BR pmadm (8),
+.BR sacadm (8),
+.BR spray (8),
+.BR svcadm (8)
+.SH NOTES
+.sp
+.LP
+The \fBrpc.sprayd\fR service is managed by the service management facility,
+\fBsmf\fR(7), under the service identifier:
+.sp
+.in +2
+.nf
+svc:/network/rpc/spray:default
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Administrative actions on this service, such as enabling, disabling, or
+requesting restart, can be performed using \fBsvcadm\fR(8). Responsibility for
+initiating and restarting this service is delegated to \fBinetd\fR(8). Use
+\fBinetadm\fR(8) to make configuration changes and to view configuration
+information for this service. The service's status can be queried using the
+\fBsvcs\fR(1) command.
diff --git a/usr/src/man/man8/rpc.yppasswdd.8 b/usr/src/man/man8/rpc.yppasswdd.8
new file mode 100644
index 0000000000..c548d8c39b
--- /dev/null
+++ b/usr/src/man/man8/rpc.yppasswdd.8
@@ -0,0 +1,179 @@
+'\" te
+.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH RPC.YPPASSWDD 8 "Aug 24, 2004"
+.SH NAME
+rpc.yppasswdd, yppasswdd \- server for modifying NIS password file
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/netsvc/yp/rpc.yppasswdd\fR [\fB-D\fR \fIdirectory\fR]
+ [\fB-nogecos\fR] [\fB-noshell\fR] [\fB-nopw\fR]
+ [\fB-m\fR \fIargument1\fR \fIargument2\fR...]
+.fi
+
+.LP
+.nf
+\fB/usr/lib/netsvc/yp/rpc.yppasswdd\fR
+ [\fIpasswordfile\fR [\fIadjunctfile\fR]]
+ [\fB-nogecos\fR] [\fB-noshell\fR] [\fB-nopw\fR]
+ [\fB-m\fR \fIargument1\fR \fIargument2\fR...]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBrpc.yppasswdd\fR is a server that handles password change requests from
+\fByppasswd\fR(1). It changes a password entry in the \fBpasswd\fR,
+\fBshadow\fR, and \fBsecurity/passwd.adjunct\fR files. The \fBpasswd\fR and
+\fBshadow\fR files provide the basis for the \fBpasswd.byname\fR and
+\fBpasswd.byuid\fR maps. The \fBpasswd.adjunct\fR file provides the basis for
+the \fBpasswd.adjunct.byname\fR and \fBpasswd.adjunct.byuid\fR maps. Entries in
+the \fBpasswd\fR, \fBshadow\fR or \fBpasswd.adjunct\fR files are changed only
+if the password presented by \fByppasswd\fR(1) matches the encrypted password
+of the entry. All password files are located in the \fBPWDIR\fR directory.
+.sp
+.LP
+If the \fB-D\fR option is given, the \fBpasswd\fR, \fBshadow,\fR or
+\fBpasswd.adjunct\fR files are placed under the directory path that is the
+argument to \fB-D\fR.
+.sp
+.LP
+If the \fB-noshell\fR, \fB-nogecos\fR or \fB-nopw\fR options are given, these
+fields cannot be changed remotely using \fBchfn\fR, \fBchsh\fR, or
+\fBpasswd\fR(1).
+.sp
+.LP
+If the \fB-m\fR option is given, a \fBmake\fR(1S) is performed in \fB/var/yp\fR
+after any of the \fBpasswd\fR, \fBshadow\fR, or \fBpasswd.adjunct\fR files are
+modified. All arguments following the flag are passed to \fBmake\fR.
+.sp
+.LP
+The second of the listed syntaxes is provided only for backward compatibility.
+If the second syntax is used, the \fBpasswordfile\fR is the full pathname of
+the password file and \fBadjunctfile\fR is the full pathname of the optional
+\fBpasswd.adjunct\fR file. If a shadow file is found in the same directory as
+\fBpasswordfile\fR, the \fBshadowfile\fR is used as described above. Use of
+this syntax and the discovery of a \fBshadowfile\fR file generates diagnostic
+output. The daemon, however, starts normally.
+.sp
+.LP
+The first and second syntaxes are mutually exclusive. You cannot specify the
+full pathname of the \fBpasswd\fR, \fBpasswd.adjunct\fR files and use the
+\fB-D\fR option at the same time.
+.sp
+.LP
+The daemon is started automatically on the master server of the passwd map by
+\fBypstart\fR(8), which is invoked at boot time by the
+\fBsvcs:/network/nis/server:default\fR service.
+.sp
+.LP
+The server does not insist on the presence of a \fBshadow\fR file unless there
+is no \fB-D\fR option present or the directory named with the \fB-D\fR option
+is \fB/etc\fR. In addition, a \fBpasswd.adjunct\fR file is not necessary. If
+the \fB-D\fR option is given, the server attempts to find a
+\fBpasswd.adjunct\fR file in the \fBsecurity\fR subdirectory of the named
+directory. For example, in the presence of \fB-D\fR \fB/var/yp\fR the server
+checks for a \fB/var/yp/security/passwd.adjunct\fR file.
+.sp
+.LP
+If only a \fBpasswd\fR file exists, then the encrypted password is expected in
+the second field. If both a \fBpasswd\fR and a \fBpasswd.adjunct\fR file exist,
+the encrypted password is expected in the second field of the adjunct file with
+\fI##username\fR in the second field of the \fBpasswd\fR file. If all three
+files are in use, the encrypted password is expected in the \fBshadow\fR file.
+Any deviation causes a password update to fail.
+.sp
+.LP
+If you remove or add a \fBshadow\fR or \fBpasswd.adjunct\fR file after
+\fBrpc.yppasswdd\fR has started, you must stop and restart the daemon to enable
+it to recognize the change. See \fBypstart\fR(8) for information on restarting
+the daemon.
+.sp
+.LP
+The \fBrpc.yppasswdd\fR daemon considers a shell that has a name that begins
+with 'r' to be a restricted shell. By default, the daemon does not check
+whether a shell begins with an '\fBr\fR'. However, you can tell it to do so by
+uncommenting the \fBcheck_restricted_shell_name=1\fR line in
+\fB/etc/default/yppasswdd\fR. The result will be to restrict a user's ability
+to change from his default shell. See \fByppasswdd\fR(5).
+.sp
+.LP
+On start up, \fByppasswdd\fR checks for the existence of a NIS to LDAP (N2L)
+configuration file, \fB/var/yp/NISLDAPmapping\fR. If the configuration file is
+present, the daemon runs in N2L mode. If the file is not present,
+\fByppasswdd\fR runs in traditional, non-N2L mode.
+.sp
+.LP
+In N2L mode, changes are written directly to the Directory Information Tree
+(DIT). If the changes are written successfully, the NIS map is updated. The NIS
+source files, \fBpasswd\fR, \fBshadow\fR, and \fBpasswd.adjunct\fR, for
+example, are not updated. Thus, in N2L mode, the \fB-D\fR option is
+meaningless. In N2L mode, \fByppasswdd\fR propagates changes by calling
+\fByppush\fR(8) instead of \fBypmake\fR(8). The \fB-m\fR option is thus
+unused.
+.sp
+.LP
+During an NIS-to-LDAP transition, the \fByppasswdd\fR daemon uses the
+N2L-specific map, \fBageing.byname\fR, to read and write password aging
+information to the DIT. If you are not using password aging, then the
+\fBageing.byname\fR mapping is ignored.
+.SH SEE ALSO
+.sp
+.LP
+.BR passwd (1),
+.BR svcs (1),
+.BR yppasswd (1),
+.BR make (1S),
+.BR NISLDAPmapping (5),
+.BR passwd (5),
+.BR shadow (5),
+.BR ypfiles (5),
+.BR yppasswdd (5),
+.BR ypserv (5),
+.BR attributes (7),
+.BR smf (7),
+.BR inetd (8),
+.BR svcadm (8),
+.BR ypmake (8),
+.BR yppush (8),
+.BR ypstart (8)
+.SH NOTES
+.sp
+.LP
+If \fBmake\fR has not been installed and the \fB-m\fR option is given, the
+daemon outputs a warning and proceeds, effectively ignoring the \fB-m\fR flag.
+.sp
+.LP
+When using the \fB-D\fR option, you should make sure that the \fBPWDIR\fR of
+the \fB/var/yp/Makefile\fR is set accordingly.
+.sp
+.LP
+The second listed syntax is supplied only for backward compatibility and might
+be removed in a future release of this daemon.
+.sp
+.LP
+The Network Information Service (\fBNIS\fR) was formerly known as Sun Yellow
+Pages (\fBYP\fR). The functionality of the two remains the same; only the name
+has changed. The name Yellow Pages is a registered trademark in the United
+Kingdom of British Telecommunications PLC, and cannot be used without
+permission.
+.sp
+.LP
+The NIS server service is managed by the service management facility,
+\fBsmf\fR(7), under the service identifier:
+.sp
+.in +2
+.nf
+svcs:/network/nis/server:default
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Administrative actions on this service, such as enabling, disabling, or
+requesting restart, can be performed using \fBsvcadm\fR(8). The service's
+status can be queried using the \fBsvcs\fR(1) command.
diff --git a/usr/src/man/man8/rpc.ypupdated.8 b/usr/src/man/man8/rpc.ypupdated.8
new file mode 100644
index 0000000000..912f2975a8
--- /dev/null
+++ b/usr/src/man/man8/rpc.ypupdated.8
@@ -0,0 +1,106 @@
+'\" te
+.\" Copyright (C) 2003, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH RPC.YPUPDATED 8 "Mar 20, 2003"
+.SH NAME
+rpc.ypupdated, ypupdated \- server for changing NIS information
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/netsvc/yp/rpc.ypupdated\fR [\fB-is\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBypupdated\fR is a daemon that updates information in the Network Information
+Service (NIS). \fBypupdated\fR consults the \fBupdaters\fR(5) file in the
+\fB/var/yp\fR directory to determine which \fBNIS\fR maps should be updated and
+how to change them.
+.sp
+.LP
+By default, the daemon requires the most secure method of authentication
+available to it, either \fBDES\fR (secure) or \fBUNIX\fR (insecure).
+.sp
+.LP
+On start up, \fBypupdated\fR checks for the existence of a NIS to LDAP (N2L)
+configuration file, \fB/var/yp/NISLDAPmapping\fR. If the file is present,
+\fBypupdated\fR generates an informational message and exits. \fBypupdated\fR
+is not supported in N2L mode.
+.SH OPTIONS
+.sp
+.ne 2
+.na
+\fB\fB-i\fR\fR
+.ad
+.RS 6n
+Accept \fBRPC\fR calls with the insecure \fBAUTH_UNIX\fR credentials. This
+allows programmatic updating of the \fBNIS\fR maps in all networks.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR\fR
+.ad
+.RS 6n
+Accept only calls authenticated using the secure \fBRPC\fR mechanism
+(\fBAUTH_DES\fR authentication). This disables programmatic updating of the
+\fBNIS\fR maps unless the network supports these calls.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/var/yp/updaters\fR\fR
+.ad
+.RS 26n
+Configuration file for \fBrpc.updated\fR command.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/yp/NISLDAPmapping\fR\fR
+.ad
+.RS 26n
+Configuration file for N2L
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR NISLDAPmapping (5),
+.BR updaters (5),
+.BR attributes (7),
+.BR keyserv (8)
+.sp
+.LP
+\fI\fR
+.SH NOTES
+.sp
+.LP
+The Network Information Service (\fBNIS\fR) was formerly known as Sun Yellow
+Pages (\fBYP\fR). The functionality of the two services remains the same. Only
+the name has changed. The name Yellow Pages is a registered trademark in the
+United Kingdom of British Telecommunications PLC, and it must not be used
+without permission.
diff --git a/usr/src/man/man8/rpcbind.8 b/usr/src/man/man8/rpcbind.8
new file mode 100644
index 0000000000..a6b1f775cf
--- /dev/null
+++ b/usr/src/man/man8/rpcbind.8
@@ -0,0 +1,268 @@
+'\" te
+.\" Copyright 2015 Nexenta Systems, Inc. All rights reserved.
+.\" Copyright 1989 AT&T
+.\" Copyright (C) 2006, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH RPCBIND 8 "May 13, 2017"
+.SH NAME
+rpcbind \- universal addresses to RPC program number mapper
+.SH SYNOPSIS
+.LP
+.nf
+\fBrpcbind\fR [\fB-d\fR] [\fB-w\fR] [\fB-l\fR \fIlisten_backlog\fR]
+.fi
+
+.SH DESCRIPTION
+.LP
+\fBrpcbind\fR is a server that converts \fBRPC\fR program numbers into
+universal addresses. It must be running on the host to be able to make
+\fBRPC\fR calls on a server on that machine.
+.sp
+.LP
+When an \fBRPC\fR service is started, it tells \fBrpcbind\fR the address at
+which it is listening, and the \fBRPC\fR program numbers it is prepared to
+serve. When a client wishes to make an \fBRPC\fR call to a given program
+number, it first contacts \fBrpcbind\fR on the server machine to determine the
+address where \fBRPC\fR requests should be sent.
+.sp
+.LP
+\fBrpcbind\fR should be started before any other \fBRPC\fR service. Normally,
+standard \fBRPC\fR servers are started by port monitors, so \fBrpcbind\fR must
+be started before port monitors are invoked.
+.sp
+.LP
+When \fBrpcbind\fR is started, it checks that certain name-to-address
+translation-calls function correctly. If they fail, the network configuration
+databases can be corrupt. Since \fBRPC\fR services cannot function correctly in
+this situation, \fBrpcbind\fR reports the condition and terminates.
+.sp
+.LP
+\fBrpcbind\fR maintains an open transport end for each transport that it uses
+for indirect calls. This is the \fBUDP\fR port on most systems.
+.sp
+.LP
+The \fBrpcbind\fR service is managed by the service management facility,
+\fBsmf\fR(7), under the service identifier:
+.sp
+.in +2
+.nf
+svc:/network/rpc/bind
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Administrative actions on this service, such as enabling, disabling, or
+requesting restart, can be performed using \fBsvcadm\fR(8). \fBrpcbind\fR can
+only be started by the superuser or someone in the Primary Administrator role.
+.sp
+.LP
+The configuration properties of this service can be modified with
+\fBsvccfg\fR(8).
+.sp
+.LP
+The following SMF property is used to allow or disallow access to \fBrpcbind\fR
+by remote clients:
+.sp
+.in +2
+.nf
+config/local_only = true
+.fi
+.in -2
+
+.sp
+.LP
+The default value, \fBtrue\fR, shown above, disallows remote access; a value of
+\fBfalse\fR allows remove access. See EXAMPLES.
+.sp
+.LP
+The FMRI \fBsvc:network/rpc/bind\fR property group \fBconfig\fR contains the
+following property settings:
+.sp
+.ne 2
+.na
+\fB\fBenable_tcpwrappers\fR\fR
+.ad
+.RS 22n
+Specifies that the TCP wrappers facility is used to control access to TCP
+services. The value \fBtrue\fR enables checking. The default value for
+\fBenable_tcpwrappers\fR is \fBfalse\fR. If the \fBenable_tcpwrappers\fR
+parameter is enabled, then all calls to \fBrpcbind\fR originating from
+non-local addresses are automatically wrapped by the TCP wrappers facility. The
+\fBsyslog\fR facility code daemon is used to log allowed connections (using the
+\fBinfo\fR severity level) and denied traffic (using the \fBwarning\fR severity
+level). See \fBsyslog.conf\fR(5) for a description of \fBsyslog\fR codes and
+severity levels. The stability level of the TCP wrappers facility and its
+configuration files is External. As the TCP wrappers facility is not controlled
+by Sun, intrarelease incompatibilities are not uncommon. See
+\fBattributes\fR(7).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBverbose_logging\fR\fR
+.ad
+.RS 22n
+Specifies whether the TCP wrappers facility logs all calls or just the denied
+calls. The default is \fBfalse\fR. This option has no effect if TCP wrappers
+are not enabled.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBallow_indirect\fR\fR
+.ad
+.RS 22n
+Specifies whether \fBrpcbind\fR allows indirect calls at all. By default,
+\fBrpcbind\fR allows most indirect calls, except to a number of standard
+services (\fBkeyserv\fR, \fBautomount\fR, \fBmount\fR, \fBnfs\fR, \fBrquota\fR,
+and selected NIS and \fBrpcbind\fR procedures). Setting \fBallow_indirect\fR to
+\fBfalse\fR causes all indirect calls to be dropped. The default is \fBtrue\fR.
+NIS broadcast clients rely on this functionality on NIS servers.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBlisten_backlog\fR\fR
+.ad
+.RS 22n
+Set connection queue length for \fBrpcbind\fR over a connection-oriented
+transport. The default value is 64 entries. Modification of this property will
+take effect only after the \fBrpcbind\fR restart.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmax_threads\fR\fR
+.ad
+.RS 22n
+Maximum number of worker threads spawn by \fBrpcbind\fR. The default value
+is 72. The indirect \fBRPC\fR calls facility might cause a worker thread to
+block for some time waiting for a response from the indirectly called \fBRPC\fR
+service. To maintain basic \fBrpcbind\fR functionality, up to eight worker
+threads are always reserved, and will never be used for indirect \fBRPC\fR calls.
+Setting \fBmax_threads\fR to less than 9 effectively disables the indirect
+calls.
+.RE
+
+.SH OPTIONS
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-d\fR\fR
+.ad
+.RS 6n
+Run in debug mode. In this mode, \fBrpcbind\fR does not fork when it starts. It
+prints additional information during operation, and aborts on certain errors.
+With this option, the name-to-address translation consistency checks are shown
+in detail.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-w\fR\fR
+.ad
+.RS 6n
+Do a warm start. If \fBrpcbind\fR aborts or terminates on \fBSIGINT\fR or
+\fB\fR\fBSIGTERM\fR, it writes the current list of registered services to
+\fB/var/run/daemon/portmap.file\fR and \fB/var/run/daemon/rpcbind.file\fR. Starting
+\fBrpcbind\fR with the \fB-w\fR option instructs it to look for these files and
+start operation with the registrations found in them. This allows \fBrpcbind\fR
+to resume operation without requiring all \fBRPC\fR services to be restarted.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR\fR \fI\fIlisten_backlog\fR\fR
+.ad
+.RS 6n
+This can be used to override \fBconfig/listen_backlog\fR SMF property.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRAllowing Remote Access
+.sp
+.LP
+The following sequence of commands allows remote access to \fBrpcbind\fR.
+
+.sp
+.in +2
+.nf
+# \fBsvccfg -s svc:/network/rpc/bind setprop config/local_only = false\fR
+# \fBsvcadm refresh svc:/network/rpc/bind\fR
+.fi
+.in -2
+.sp
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/var/run/daemon/portmap.file\fR\fR
+.ad
+.RS 25n
+Stores the information for \fBRPC\fR services registered over IP based
+transports for warm start purposes.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/run/daemon/rpcbind.file\fR\fR
+.ad
+.RS 25n
+Stores the information for all registered \fBRPC\fR services for warm start
+purposes.
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability See below.
+.TE
+
+.sp
+.LP
+TCP wrappers is External.
+.SH SEE ALSO
+.LP
+.BR rpcbind (3NSL),
+.BR hosts_access (5),
+.BR syslog.conf (5),
+.BR attributes (7),
+.BR smf (7),
+.BR smf (7),
+.BR rpcinfo (8),
+.BR svcadm (8),
+.BR svccfg (8)
+.SH NOTES
+.LP
+Terminating \fBrpcbind\fR with \fBSIGKILL\fR prevents the warm-start files from
+being written.
+.sp
+.LP
+All \fBRPC\fR servers are restarted if the following occurs: \fBrpcbind\fR
+crashes (or is killed with \fBSIGKILL)\fR and is unable to write the
+warm-start files; \fBrpcbind\fR is started without the \fB-w\fR option after a
+graceful termination. Otherwise, the warm start files are not found by
+\fBrpcbind\fR.
diff --git a/usr/src/man/man8/rpcinfo.8 b/usr/src/man/man8/rpcinfo.8
new file mode 100644
index 0000000000..69869ba090
--- /dev/null
+++ b/usr/src/man/man8/rpcinfo.8
@@ -0,0 +1,354 @@
+'\" te
+.\" Copyright 2015 Nexenta Systems, Inc. All rights reserved.
+.\" Copyright (c) 2001 Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH RPCINFO 8 "Feb 20, 2015"
+.SH NAME
+rpcinfo \- report RPC information
+.SH SYNOPSIS
+.LP
+.nf
+\fBrpcinfo\fR [\fB-T\fR \fItransport\fR] [\fB-m\fR | \fB-s\fR] [\fIhost\fR]
+.fi
+
+.LP
+.nf
+\fBrpcinfo\fR \fB-p\fR [\fIhost\fR]
+.fi
+
+.LP
+.nf
+\fBrpcinfo\fR \fB-T\fR \fItransport\fR \fIhost\fR \fIprognum\fR [\fIversnum\fR]
+.fi
+
+.LP
+.nf
+\fBrpcinfo\fR \fB-l\fR [\fB-T\fR \fItransport\fR] \fIhost\fR \fIprognum\fR \fIversnum\fR
+.fi
+
+.LP
+.nf
+\fBrpcinfo\fR [\fB-n\fR \fIportnum\fR] \fB-u\fR \fIhost\fR \fIprognum\fR [\fIversnum\fR]
+.fi
+
+.LP
+.nf
+\fBrpcinfo\fR [\fB-n\fR \fIportnum\fR] \fB-t\fR \fIhost\fR \fIprognum\fR [\fIversnum\fR]
+.fi
+
+.LP
+.nf
+\fBrpcinfo\fR \fB-a\fR \fIserv_address\fR \fB-T\fR \fItransport\fR \fIprognum\fR [\fIversnum\fR]
+.fi
+
+.LP
+.nf
+\fBrpcinfo\fR \fB-b\fR [\fB-T\fR \fItransport\fR] \fIprognum\fR \fIversnum\fR
+.fi
+
+.LP
+.nf
+\fBrpcinfo\fR \fB-d\fR [\fB-T\fR \fItransport\fR] \fIprognum\fR \fIversnum\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+\fBrpcinfo\fR makes an \fBRPC\fR call to an \fBRPC\fR server and reports what
+it finds.
+.sp
+.LP
+In the first synopsis, \fBrpcinfo\fR lists all the registered \fBRPC\fR
+services with \fBrpcbind\fR on \fIhost\fR. If \fIhost\fR is not specified, the
+local host is the default. If \fB-s\fR is used, the information is displayed in
+a concise format.
+.sp
+.LP
+In the second synopsis, \fBrpcinfo\fR lists all the \fBRPC\fR services
+registered with \fBrpcbind\fR, version 2. Note that the format of the
+information is different in the first and the second synopsis. This is because
+the second synopsis is an older protocol used to collect the information
+displayed (version 2 of the \fBrpcbind\fR protocol).
+.sp
+.LP
+The third synopsis makes an \fBRPC\fR call to procedure 0 of \fIprognum\fR and
+\fIversnum\fR on the specified \fIhost\fR and reports whether a response was
+received. \fItransport\fR is the transport which has to be used for contacting
+the given service. The remote address of the service is obtained by making a
+call to the remote \fBrpcbind\fR.
+.sp
+.LP
+The \fIprognum\fR argument is a number that represents an \fBRPC\fR program
+number (see \fBrpc\fR(5)).
+.sp
+.LP
+If a \fIversnum\fR is specified, \fBrpcinfo\fR attempts to call that version of
+the specified \fIprognum\fR. Otherwise, \fBrpcinfo\fR attempts to find all the
+registered version numbers for the specified \fIprognum\fR by calling version
+0, which is presumed not to exist; if it does exist, \fBrpcinfo\fR attempts to
+obtain this information by calling an extremely high version number instead,
+and attempts to call each registered version. Note that the version number is
+required for \fB-b\fR and \fB-d\fR options.
+.sp
+.LP
+The \fBEXAMPLES\fR section describe other ways of using \fBrpcinfo\fR.
+.SH OPTIONS
+.ne 2
+.na
+\fB\fB-T\fR\fI transport\fR\fR
+.ad
+.RS 19n
+Specify the transport on which the service is required. If this option is not
+specified, \fBrpcinfo\fR uses the transport specified in the \fBNETPATH\fR
+environment variable, or if that is unset or \fINULL,\fR the transport in the
+\fBnetconfig\fR(5) database is used. This is a generic option, and can be used
+in conjunction with other options as shown in the \fBSYNOPSIS\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-a\fR \fIserv_address\fR\fR
+.ad
+.RS 19n
+Use \fIserv_address\fR as the (universal) address for the service on
+\fItransport\fR to \fBping\fR procedure 0 of the specified \fIprognum\fR and
+report whether a response was received. The \fB-T\fR option is required with
+the \fB-a\fR option. If \fIversnum\fR is not specified, \fBrpcinfo\fR tries to
+ping all available version numbers for that program number. This option avoids
+calls to remote \fBrpcbind\fR to find the address of the service. The
+\fIserv_address\fR is specified in universal address format of the given
+transport.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-b\fR\fR
+.ad
+.RS 19n
+Make an \fBRPC\fR broadcast to procedure 0 of the specified \fIprognum\fR and
+\fIversnum\fR and report all hosts that respond. If \fItransport\fR is
+specified, it broadcasts its request only on the specified transport. If
+broadcasting is not supported by any transport, an error message is printed.
+Use of broadcasting should be limited because of the potential for adverse
+effect on other systems.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-d\fR\fR
+.ad
+.RS 19n
+Delete registration for the \fBRPC\fR service of the specified \fIprognum\fR
+and \fIversnum\fR. If \fItransport\fR is specified, unregister the service on
+only that transport, otherwise unregister the service on all the transports on
+which it was registered. Only the owner of a service can delete a registration,
+except the superuser, who can delete any service.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR\fR
+.ad
+.RS 19n
+Display a list of entries with a given \fIprognum\fR and \fIversnum\fR on the
+specified \fIhost\fR. Entries are returned for all transports in the same
+protocol family as that used to contact the remote \fBrpcbind\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-m\fR\fR
+.ad
+.RS 19n
+Display a table of statistics of \fBrpcbind\fR operations on the given
+\fIhost\fR. The table shows statistics for each version of \fBrpcbind\fR
+(versions 2, 3 and 4), giving the number of times each procedure was requested
+and successfully serviced, the number and type of remote call requests that
+were made, and information about \fBRPC\fR address lookups that were handled.
+This is useful for monitoring \fBRPC\fR activities on \fIhost\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR\fI portnum\fR\fR
+.ad
+.RS 19n
+Use \fIportnum\fR as the port number for the \fB-t\fR and \fB-u\fR options
+instead of the port number given by \fBrpcbind\fR. Use of this option avoids a
+call to the remote \fBrpcbind\fR to find out the address of the service. This
+option is made obsolete by the \fB-a\fR option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR\fR
+.ad
+.RS 19n
+Probe \fBrpcbind\fR on \fIhost\fR using version 2 of the \fBrpcbind\fR
+protocol, and display a list of all registered \fBRPC\fR programs. If
+\fIhost\fR is not specified, it defaults to the local host. This option is not
+useful for IPv6; use \fB-s\fR (see below) instead. Note that version 2 of the
+\fBrpcbind\fR protocol was previously known as the portmapper protocol.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR\fR
+.ad
+.RS 19n
+Display a concise list of all registered \fBRPC\fR programs on \fIhost\fR. If
+\fIhost\fR is not specified, it defaults to the local host.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-t\fR\fR
+.ad
+.RS 19n
+Make an \fBRPC\fR call to procedure 0 of \fIprognum\fR on the specified
+\fIhost\fR using \fBTCP,\fR and report whether a response was received. This
+option is made obsolete by the \fB-T\fR option as shown in the third synopsis.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-u\fR\fR
+.ad
+.RS 19n
+Make an \fBRPC\fR call to procedure 0 of \fIprognum\fR on the specified
+\fIhost\fR using \fBUDP,\fR and report whether a response was received. This
+option is made obsolete by the \fB-T\fR option as shown in the third synopsis.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fR\fBRPC\fR services.
+.sp
+.LP
+To show all of the \fBRPC\fR services registered on the local machine use:
+
+.sp
+.in +2
+.nf
+\fBexample%\fR \fBrpcinfo\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+To show all of the \fBRPC\fR services registered with \fBrpcbind\fR on the
+machine named \fBklaxon\fR use:
+
+.sp
+.in +2
+.nf
+\fBexample%\fR \fBrpcinfo\fR \fBklaxon\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The information displayed by the above commands can be quite lengthy. Use the
+\fB-s\fR option to display a more concise list:
+
+.sp
+.in +2
+.nf
+\fBexample%\fR \fBrpcinfo\fR \fB-s\fR \fBklaxon\fR
+.fi
+.in -2
+.sp
+
+.sp
+
+.sp
+.TS
+l l l l l
+l l l l l .
+\fBprogram\fR \fBversion(s)\fR \fBnetid(s)\fR \fBservice\fR \fBowner\fR
+\fB100000\fR \fB2,3,4\fR \fBtcp,udp,ticlts,ticots,ticotsord\fR \fBrpcbind\fR \fBsuperuser\fR
+\fB100008\fR \fB1\fR \fBticotsord,ticots,ticlts,udp,tcp\fR \fBwalld\fR \fBsuperuser\fR
+\fB100002\fR \fB2,1\fR \fBticotsord,ticots,ticlts,udp,tcp\fR \fBrusersd\fR \fBsuperuser\fR
+\fB100001\fR \fB2,3,4\fR \fBticotsord,ticots,tcp,ticlts,udp\fR \fBrstatd\fR \fBsuperuser\fR
+\fB100012\fR \fB1\fR \fBticotsord,ticots,ticlts,udp,tcp\fR \fBsprayd\fR \fBsuperuser\fR
+\fB100007\fR \fB3\fR \fBticotsord,ticots,ticlts,udp,tcp\fR \fBypbind\fR \fBsuperuser\fR
+\fB100029\fR \fB1\fR \fBticotsord,ticots,ticlts\fR \fBkeyserv\fR \fBsuperuser\fR
+\fB100078\fR \fB4\fR \fBticotsord,ticots,ticlts\fR \fB-\fR \fBsuperuser\fR
+\fB100024\fR \fB1\fR \fBticotsord,ticots,ticlts,udp,tcp\fR \fBstatus\fR \fBsuperuser\fR
+\fB100021\fR \fB2,1\fR \fBticotsord,ticots,ticlts,udp,tcp\fR \fBnlockmgr\fR \fBsuperuser\fR
+\fB100020\fR \fB1\fR \fBticotsord,ticots,ticlts,udp,tcp\fR \fBllockmgr\fR \fBsuperuser\fR
+.TE
+
+.sp
+.LP
+To show whether the \fBRPC\fR service with program number \fIprognum\fR and
+version \fIversnum\fR is registered on the machine named \fBklaxon\fR for the
+transport \fBTCP\fR use:
+
+.sp
+.in +2
+.nf
+\fBexample% rpcinfo \fR\fB-T\fR\fB tcp klaxon \fR\fIprognum versnum\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+To show all \fBRPC\fR services registered with version 2 of the \fBrpcbind\fR
+protocol on the local machine use:
+
+.sp
+.in +2
+.nf
+\fBexample%\fR \fBrpcinfo\fR \fB-p\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+To delete the registration for version 1 of the \fBwalld\fR (program number
+\fB100008\fR) service for all transports use:
+
+.sp
+.in +2
+.nf
+\fBexample# rpcinfo \fR\fB-d\fR\fB 100008 1\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+or
+
+.sp
+.in +2
+.nf
+\fBexample# rpcinfo \fR\fB-d\fR\fB walld 1\fR
+.fi
+.in -2
+.sp
+
+.SH SEE ALSO
+.LP
+.BR rpc (3NSL),
+.BR netconfig (5),
+.BR rpc (5),
+.BR attributes (7),
+.BR rpcbind (8)
diff --git a/usr/src/man/man8/rquotad.8 b/usr/src/man/man8/rquotad.8
new file mode 100644
index 0000000000..367c2cac19
--- /dev/null
+++ b/usr/src/man/man8/rquotad.8
@@ -0,0 +1,81 @@
+'\" te
+.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH RQUOTAD 8 "Apr 30, 2009"
+.SH NAME
+rquotad \- remote quota server
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/nfs/rquotad\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBrquotad\fR is an \fBrpc\fR(5) server which returns quotas for a user of a
+local file system which is mounted by a remote machine over the \fBNFS.\fR The
+results are used by \fBquota\fR(8) to display user quotas for remote file
+systems. The \fBrquotad\fR daemon is normally invoked by \fBinetd\fR(8).
+.SH USAGE
+.sp
+.LP
+See \fBlargefile\fR(7) for the description of the behavior of \fBrquotad\fR
+when encountering files greater than or equal to 2 Gbyte (2^31 bytes).
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fBquotas\fR\fR
+.ad
+.RS 10n
+quota file at a UFS file system root
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR svcs (1),
+.BR rpc (5),
+.BR services (5),
+.BR attributes (7),
+.BR largefile (7),
+.BR smf (7),
+.BR automountd (8),
+.BR inetadm (8),
+.BR inetd (8),
+.BR mount_nfs (8),
+.BR quota (8),
+.BR share_nfs (8),
+.BR svcadm (8)
+.sp
+.LP
+\fI\fR
+.SH NOTES
+.sp
+.LP
+The \fBrquotad\fR service is managed by the service management facility,
+\fBsmf\fR(7), under the service identifier:
+.sp
+.in +2
+.nf
+svc:/network/nfs/rquota
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Administrative actions on this service, such as enabling, disabling, or
+requesting restart, can be performed using \fBsvcadm\fR(8). Responsibility for
+initiating and restarting this service is delegated to \fBinetd\fR(8). Use
+\fBinetadm\fR(8) to make configuration changes and to view configuration
+information for this service. The service's status can be queried using the
+\fBsvcs\fR(1) command.
+.sp
+.LP
+If it is disabled, it will be enabled by \fBmount_nfs\fR(8),
+\fBshare_nfs\fR(8), and \fBautomountd\fR(8) unless its
+\fBapplication/auto_enable\fR property is set to \fBfalse\fR.
diff --git a/usr/src/man/man8/rsh.8 b/usr/src/man/man8/rsh.8
new file mode 100644
index 0000000000..dc94edc2ad
--- /dev/null
+++ b/usr/src/man/man8/rsh.8
@@ -0,0 +1,121 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 1993, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH RSH 8 "Nov 1, 1993"
+.SH NAME
+rsh, restricted_shell \- restricted shell command interpreter
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/rsh\fR [\fB-acefhiknprstuvx\fR] [\fIargument\fR]...
+.fi
+
+.SH DESCRIPTION
+.LP
+\fBrsh\fR is a limiting version of the standard command interpreter \fBsh\fR,
+used to restrict logins to execution environments whose capabilities are more
+controlled than those of \fBsh\fR (see \fBsh\fR(1) for complete description and
+usage).
+.sp
+.LP
+When the shell is invoked, it scans the environment for the value of the
+environmental variable, \fBSHELL\fR. If it is found and \fBrsh\fR is the file
+name part of its value, the shell becomes a restricted shell.
+.sp
+.LP
+The actions of \fBrsh\fR are identical to those of \fBsh\fR, except that the
+following are disallowed:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+changing directory (see \fBcd\fR(1)),
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+setting the value of $\fBPATH\fR,
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+specifying path or command names containing \fB/\fR,
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+redirecting output (\fB>\fR and \fB>>\fR).
+.RE
+.sp
+.LP
+The restrictions above are enforced after \fI\&.profile\fR is interpreted.
+.sp
+.LP
+A restricted shell can be invoked in one of the following ways:
+.RS +4
+.TP
+1.
+\fBrsh\fR is the file name part of the last entry in the \fB/etc/passwd\fR
+file (see \fBpasswd\fR(5));
+.RE
+.RS +4
+.TP
+2.
+the environment variable \fBSHELL\fR exists and \fBrsh\fR is the file name
+part of its value; the environment variable \fBSHELL\fR needs to be set in the
+\fB\&.login\fR file;
+.RE
+.RS +4
+.TP
+3.
+the shell is invoked and \fBrsh\fR is the file name part of argument 0;
+.RE
+.RS +4
+.TP
+4.
+the shell is invoked with the \fB-r\fR option.
+.RE
+.sp
+.LP
+When a command to be executed is found to be a shell procedure, \fBrsh\fR
+invokes \fBsh\fR to execute it. Thus, it is possible to provide to the end-user
+shell procedures that have access to the full power of the standard shell,
+while imposing a limited menu of commands; this scheme assumes that the
+end-user does not have write and execute permissions in the same directory.
+.sp
+.LP
+The net effect of these rules is that the writer of the \fI\&.profile\fR (see
+\fBprofile\fR(5)) has complete control over user actions by performing
+guaranteed setup actions and leaving the user in an appropriate directory
+(probably \fInot\fR the login directory).
+.sp
+.LP
+The system administrator often sets up a directory of commands (that is,
+\fB/usr/rbin\fR) that can be safely invoked by a restricted shell. Some systems
+also provide a restricted editor, \fBred\fR.
+.SH EXIT STATUS
+.LP
+Errors detected by the shell, such as syntax errors, cause the shell to return
+a non-zero exit status. If the shell is being used non-interactively execution
+of the shell file is abandoned. Otherwise, the shell returns the exit status of
+the last command executed.
+.SH SEE ALSO
+.LP
+.BR Intro (1),
+.BR cd (1),
+.BR login (1),
+.BR rsh (1),
+.BR sh (1),
+.BR exec (2),
+.BR passwd (5),
+.BR profile (5),
+.BR attributes (7)
+.SH NOTES
+.LP
+The restricted shell, \fB/usr/lib/rsh\fR, should not be confused with the
+remote shell, \fB/usr/bin/rsh\fR, which is documented in \fBrsh\fR(1).
diff --git a/usr/src/man/man8/rtc.8 b/usr/src/man/man8/rtc.8
new file mode 100644
index 0000000000..01151e3d6b
--- /dev/null
+++ b/usr/src/man/man8/rtc.8
@@ -0,0 +1,124 @@
+.\"
+.\" This file and its contents are supplied under the terms of the
+.\" Common Development and Distribution License ("CDDL"), version 1.0.
+.\" You may only use this file in accordance with the terms of version
+.\" 1.0 of the CDDL.
+.\"
+.\" A full copy of the text of the CDDL should have accompanied this
+.\" source. A copy of the CDDL is also available via the Internet at
+.\" http://www.illumos.org/license/CDDL.
+.\"
+.\"
+.\" Copyright 2018 Gary Mills
+.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved.
+.\"
+.Dd January 31, 2018
+.Dt RTC 8
+.Os
+.Sh NAME
+.Nm rtc
+.Nd provide all real-time clock and UTC-lag management
+.Sh SYNOPSIS
+.Nm
+.Op Fl csuvw
+.Op Fl z Ar zone-name
+.Sh DESCRIPTION
+The Real Time Clock (RTC) is the hardware device on x86 computers that maintains
+the date and time.
+The RTC is battery-powered, so that it keeps running when the computer is shut
+down.
+It can be set from the BIOS and also from the operating system running on the
+computer.
+The RTC has no setting for the time zone or for Daylight Saving Time (DST).
+It relies on the operating system for these facilities and for automatic changes
+between standard time and DST.
+.Pp
+On x86 systems, the
+.Nm
+command reconciles the difference in the way that time is established between
+UNIX and Windows systems.
+The internal clock on UNIX systems utilizes Universal Coordinated Time (UTC)
+while Windows systems usually expect the RTC to run in local time, including DST
+changes.
+.Pp
+Without arguments,
+.Nm
+displays the currently configured time zone string for the RTC.
+The currently configured time zone string is based on what was last recorded by
+.Nm Fl z Ar zone-name .
+.Pp
+The
+.Nm
+command is not normally run from a shell prompt; it is generally invoked by the
+system.
+Commands such as
+.Xr date 1
+and
+.Xr rdate 8 ,
+which are used to set the time on a system, invoke
+.Nm Fl c
+to ensure that daylight savings time (DST) is corrected for properly.
+.Sh OPTIONS
+.Bl -tag -width Ds
+.It Fl c
+This option checks for DST and makes corrections to the RTC if necessary.
+It is normally run once a day by a
+.Xr cron 8
+job.
+.Pp
+If there is no RTC time zone or
+.Pa /etc/rtc_config
+file, this option will do nothing.
+.It Fl s
+This option specifies that the RTC runs in local standard time all year round.
+It is incompatible with Windows, but is convenient if only one operating system
+is to be run on the computer.
+The
+.Xr cron 8
+command is not necessary, and should not be run.
+.It Fl u
+This option specifies that the RTC runs in UTC time.
+As a side effect, it sets the time zone in
+.Pa /etc/rtc_config
+to UTC.
+Windows can operate in UTC time, but requires a registry change to do so.
+The
+.Xr cron 8
+command is not necessary.
+.It Fl v
+This option specifies that the RTC tracks local time, including DST changes.
+This is the default.
+It accomodates Windows with no changes.
+The
+.Xr cron 8
+command is necessary to change the RTC when DST is in effect.
+.It Fl w
+This option does nothing.
+It is present for compatibility with Solaris 11.
+.It Fl z Ar zone-name
+This option, which is normally run by the system at software installation time,
+is used to specify the time zone in which the RTC is to be maintained.
+It updates the configuration file
+.Pa /etc/rtc_config
+with the name of the specified zone and the current UTC lag for that zone.
+If there is an existing
+.Pa /etc/rtc_config
+file, this command will update it.
+If not, this command will create it.
+.El
+.Sh FILES
+.Bl -tag -width "/etc/rtc_config"
+.It Pa /etc/rtc_config
+The data file used to record the time zone and UTC lag.
+This file is completely managed by
+.Nm .
+At boot time, the kernel reads the UTC lag from this file, and uses it to set
+the system time.
+.El
+.Sh ARCHITECTURE
+.Sy x86
+.Sh SEE ALSO
+.Xr date 1 ,
+.Xr attributes 7 ,
+.Xr cron 8 ,
+.Xr rdate 8
diff --git a/usr/src/man/man8/rtquery.8 b/usr/src/man/man8/rtquery.8
new file mode 100644
index 0000000000..7cec34ce36
--- /dev/null
+++ b/usr/src/man/man8/rtquery.8
@@ -0,0 +1,193 @@
+'\" te
+.\" Copyright (c) 2002, Sun Microsystems, Inc.
+.\" All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH RTQUERY 8 "Apr 24, 2002"
+.SH NAME
+rtquery \- query routing daemons for their routing tables
+.SH SYNOPSIS
+.LP
+.nf
+\fBrtquery\fR [\fB-np1\fR] [\fB-w\fR \fItimeout\fR] [\fB-r\fR \fIaddr\fR] [\fB-a\fR \fIsecret\fR] \fIhost\fR...
+.fi
+
+.LP
+.nf
+\fBrtquery\fR [\fB-t\fR \fIoperation\fR] \fIhost\fR...
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBrtquery\fR command is used to query a RIP network routing daemon,
+\fBin.routed\fR(8) or \fBGateD\fR, for its routing table by sending a request
+or poll command. The routing information in any routing response packets
+returned is displayed numerically and symbolically.
+.sp
+.LP
+By default, \fBrtquery\fR uses the request command. When the -p option is
+specified, \fBrtquery\fR uses the poll command, an undocumented extension to
+the RIP protocol supported by \fBGateD\fR. When querying \fBGateD\fR, the poll
+command is preferred over the request command because the response is not
+subject to Split Horizon and/or Poisoned Reverse, and because some versions of
+\fBGateD\fR do not answer the request command. \fBin.routed\fR does not answer
+the poll command, but recognizes requests coming from \fBrtquery\fR and so
+answers completely.
+.sp
+.LP
+The \fBrtquery\fR command is also used to turn tracing on or off in
+\fBin.routed\fR.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-a\fR \fBpasswd=\fR\fIXXX\fR\fR
+.ad
+.br
+.na
+\fB\fB-a\fR \fBmd5_passwd=\fR\fIXXX\fR|\fIKeyID\fR\fR
+.ad
+.RS 27n
+Causes the query to be sent with the indicated cleartext or MD5 password.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR\fR
+.ad
+.RS 27n
+Displays only the numeric network and host addresses instead of both numeric
+and symbolic names.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR\fR
+.ad
+.RS 27n
+Uses the poll command to request full routing information from \fBGateD\fR.
+This is an undocumented extension RIP protocol supported only by \fBGateD\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-r\fR \fIaddr\fR\fR
+.ad
+.RS 27n
+Asks about the route to destination \fIaddr\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-t\fR \fIoperation\fR\fR
+.ad
+.RS 27n
+Changes tracing, where \fIoperation\fR is one of the actions listed below.
+Requests from processes not running with UID 0 or on distant networks are
+generally ignored by the daemon except for a message in the system log.
+\fBGateD\fR is likely to ignore these debugging requests.
+.sp
+.ne 2
+.na
+\fBon=\fItracefile\fR\fR
+.ad
+.RS 16n
+Turns tracing on, directing tracing into the specified file. That file must
+have been specified when the daemon was started or have the name,
+\fB/var/log/in.routed.trace\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBmore\fR
+.ad
+.RS 16n
+Increases the debugging level.
+.RE
+
+.sp
+.ne 2
+.na
+\fBoff\fR
+.ad
+.RS 16n
+Turns off tracing.
+.RE
+
+.sp
+.ne 2
+.na
+\fBdump\fR
+.ad
+.RS 16n
+Dumps the daemon's routing table to the current trace file.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-w\fR \fItimeout\fR\fR
+.ad
+.RS 27n
+Changes the delay for an answer from each host. By default, each host is given
+15 seconds to respond.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-1\fR\fR
+.ad
+.RS 27n
+Queries using RIP version 1 instead of RIP version 2.
+.RE
+
+.SH EXIT STATUS
+.sp
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 6n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB>\fB0\fR\fR
+.ad
+.RS 6n
+An error occurred.
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+\fBin.routed\fR(8), \fBicmp\fR(4P),
+.BR inet (4P),
+.BR udp (4P),
+.BR gateways (5),
+.BR attributes (7),
+.BR route (8)
+.sp
+.LP
+\fIRouting Information Protocol, RIPv1, RFC 1058\fR
+.sp
+.LP
+\fIRouting Information Protocol, RIPv2, RFC 2453, STD 0056\fR
diff --git a/usr/src/man/man8/runacct.8 b/usr/src/man/man8/runacct.8
new file mode 100644
index 0000000000..1c8b2f942d
--- /dev/null
+++ b/usr/src/man/man8/runacct.8
@@ -0,0 +1,332 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 1999 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH RUNACCT 8 "May 11, 1999"
+.SH NAME
+runacct \- run daily accounting
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/acct/runacct\fR [\fImmdd\fR [\fIstate\fR]]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBrunacct\fR is the main daily accounting shell procedure. It is normally
+initiated using \fBcron\fR. \fBrunacct\fR processes connect, fee, disk, and
+process accounting files. It also prepares summary files for \fBprdaily\fR or
+billing purposes. \fBrunacct\fR is distributed only to source code licensees.
+.sp
+.LP
+\fBrunacct\fR takes care not to damage active accounting files or summary files
+in the event of errors. It records its progress by writing descriptive
+diagnostic messages into \fBactive\fR. When an error is detected, a message is
+written to \fB/dev/console\fR, mail (see \fBmail\fR(1)) is sent to \fBroot\fR
+and \fBadm\fR, and \fBrunacct\fR terminates. \fBrunacct\fR uses a series of
+lock files to protect against re-invocation. The files \fBlock\fR and
+\fBlock1\fR are used to prevent simultaneous invocation, and \fBlastdate\fR is
+used to prevent more than one invocation per day.
+.sp
+.LP
+\fBrunacct\fR breaks its processing into separate, restartable \fIstates\fR
+using \fBstatefile\fR to remember the last \fIstate\fR completed. It
+accomplishes this by writing the \fIstate\fR name into \fBstatefile\fR.
+\fBrunacct\fR then looks in \fBstatefile\fR to see what it has done and to
+determine what to process next. \fIstates\fR are executed in the following
+order:
+.sp
+.ne 2
+.na
+\fB\fBSETUP\fR\fR
+.ad
+.RS 14n
+Move active accounting files into working files.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBWTMPFIX\fR\fR
+.ad
+.RS 14n
+Verify integrity of \fBwtmpx\fR file, correcting date changes if necessary.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBCONNECT\fR\fR
+.ad
+.RS 14n
+Produce connect session records in \fBtacct.h\fR format.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPROCESS\fR\fR
+.ad
+.RS 14n
+Convert process accounting records into \fBtacct.h\fR format.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBMERGE\fR\fR
+.ad
+.RS 14n
+Merge the connect and process accounting records.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBFEES\fR\fR
+.ad
+.RS 14n
+Convert output of \fBchargefee\fR into \fBtacct.h\fR format, merge with
+connect, and process accounting records.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBDISK\fR\fR
+.ad
+.RS 14n
+Merge disk accounting records with connect, process, and fee accounting
+records.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBMERGETACCT\fR\fR
+.ad
+.RS 14n
+Merge the daily total accounting records in \fBdaytacct\fR with the summary
+total accounting records in \fB/var/adm/acct/sum/tacct\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBCMS\fR\fR
+.ad
+.RS 14n
+Produce command summaries.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBUSEREXIT\fR\fR
+.ad
+.RS 14n
+Any installation dependent accounting programs can be included here.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBCLEANUP\fR\fR
+.ad
+.RS 14n
+Clean up temporary files and exit. To restart \fBrunacct\fR after a failure,
+first check the \fBactive\fR file for diagnostics, then fix any corrupted data
+files, such as \fBpacct\fR or \fBwtmpx\fR. The \fBlock\fR, \fBlock1\fR, and
+\fBlastdate\fR files must be removed before \fBrunacct\fR can be restarted.
+The argument \fImmdd\fR is necessary if \fBrunacct\fR is being restarted.
+\fImmdd\fR specifies the month and day for which \fBrunacct\fR will rerun the
+accounting. The entry point for processing is based on the contents of \fB
+statefile\fR; to override this, include the desired \fIstate\fR on the command
+line to designate where processing should begin.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRStarting \fBrunacct\fR
+.sp
+.LP
+The following example starts \fBrunacct\fR:
+
+.sp
+.in +2
+.nf
+example% nohup runacct 2> /var/adm/acct/nite/fd2log &
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRRestarting \fBrunacct\fR
+.sp
+.LP
+The following example restarts \fBrunacct\fR:
+
+.sp
+.in +2
+.nf
+example% nohup runacct 0601 2>> /var/adm/acct/nite/fd2log &
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRRestarting \fBrunacct\fR at a Specific State
+.sp
+.LP
+The following example restarts \fBrunacct\fR at a specific state:
+
+.sp
+.in +2
+.nf
+example% nohup runacct 0601 MERGE 2>> /var/adm/acct/nite/fd2log &
+.fi
+.in -2
+.sp
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/var/adm/wtmpx\fR\fR
+.ad
+.sp .6
+.RS 4n
+History of user access and administration information
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/adm/pacct\fR\fIincr\fR\fR
+.ad
+.sp .6
+.RS 4n
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/adm/acct/nite/active\fR\fR
+.ad
+.sp .6
+.RS 4n
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/adm/acct/nite/daytacct\fR\fR
+.ad
+.sp .6
+.RS 4n
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/adm/acct/nite/lock\fR\fR
+.ad
+.sp .6
+.RS 4n
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/adm/acct/nite/lock1\fR\fR
+.ad
+.sp .6
+.RS 4n
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/adm/acct/nite/lastdate\fR\fR
+.ad
+.sp .6
+.RS 4n
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/adm/acct/nite/statefile\fR\fR
+.ad
+.sp .6
+.RS 4n
+
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR acctcom (1),
+.BR mail (1),
+.BR acct (2),
+.BR acct.h (3HEAD),
+.BR utmpx (5),
+.BR attributes (7),
+.BR acct (8),
+.BR acctcms (8),
+.BR acctcon (8),
+.BR acctmerg (8),
+.BR acctprc (8),
+.BR acctsh (8),
+.BR cron (8),
+.BR fwtmp (8)
+.SH NOTES
+.sp
+.LP
+It is not recommended to restart \fBrunacct\fR in the \fBSETUP\fR \fIstate\fR.
+Run \fBSETUP\fR manually and restart using:
+.sp
+.LP
+\fBrunacct\fR \fImmdd\fR \fBWTMPFIX\fR
+.sp
+.LP
+If \fBrunacct\fR failed in the \fBPROCESS\fR \fIstate,\fR remove the last
+\fBptacct\fR file because it will not be complete.
+.sp
+.LP
+The \fBrunacct\fR command can process a maximum of
+.RS +4
+.TP
+.ie t \(bu
+.el o
+6000 distinct sessions
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+1000 distinct terminal lines
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+2000 distinct login names
+.RE
+.sp
+.LP
+during a single invocation of the command. If at some point the actual number
+of any one of these items exceeds the maximum, the command will not succeed.
+.sp
+.LP
+Do not invoke \fBrunacct\fR at the same time as \fBckpacct\fR, as there may be
+a conflict if both scripts attempt to execute \fBturnacct switch\fR
+simultaneously.
diff --git a/usr/src/man/man8/rwall.8 b/usr/src/man/man8/rwall.8
new file mode 100644
index 0000000000..5bf29af0bb
--- /dev/null
+++ b/usr/src/man/man8/rwall.8
@@ -0,0 +1,77 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 1988 Sun Microsystems, Inc. - All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH RWALL 8 "Nov 6, 2000"
+.SH NAME
+rwall \- write to all users over a network
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/rwall\fR \fIhostname\fR...
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/rwall\fR \fB-n\fR \fInetgroup\fR...
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/rwall\fR \fB-h\fR \fIhostname\fR \fB-n\fR \fInetgroup\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBrwall\fR reads a message from standard input until EOF. It then sends this
+message, preceded by the line:
+.sp
+.ne 2
+.na
+\fB\fR
+.ad
+.sp .6
+.RS 4n
+\fBBroadcast Message .\|.\|.\fR
+.RE
+
+.sp
+.LP
+to all users logged in on the specified host machines. With the \fB-n\fR
+option, it sends to the specified network groups.
+.SH OPTIONS
+.sp
+.ne 2
+.na
+\fB\fB-n\fR\fI netgroup\fR\fR
+.ad
+.RS 15n
+Send the broadcast message to the specified network groups.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-h\fR\fI hostname\fR\fR
+.ad
+.RS 15n
+Specify the \fBhostname\fR, the name of the host machine.
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7),
+.BR inetd (8),
+.BR listen (8),
+.BR pmadm (8),
+.BR sacadm (8),
+.BR wall (8)
+.SH NOTES
+.sp
+.LP
+The timeout is fairly short to allow transmission to a large group of machines
+(some of which may be down) in a reasonable amount of time. Thus the message
+may not get through to a heavily loaded machine.
diff --git a/usr/src/man/man8/sac.8 b/usr/src/man/man8/sac.8
new file mode 100644
index 0000000000..21bc040298
--- /dev/null
+++ b/usr/src/man/man8/sac.8
@@ -0,0 +1,253 @@
+'\" te
+.\" Copyright 1989 AT&T
+.\" Copyright (C) 2002, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
+.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SAC 8 "Apr 21, 2009"
+.SH NAME
+sac \- service access controller
+.SH SYNOPSIS
+.LP
+.nf
+\fBsac\fR \fB-t\fR \fIsanity_interval\fR
+.fi
+
+.LP
+.nf
+\fB/usr/lib/saf/sac\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The Service Access Controller (SAC) is the overseer of the server machine. It
+is started when the server machine enters multiuser mode. The \fBSAC\fR
+performs several important functions as explained below.
+.SS "Customizing the SAC Environment"
+.sp
+.LP
+When \fBsac\fR is invoked, it first looks for the per-system configuration
+script \fB/etc/saf/_sysconfig\fR. \fBsac\fR interprets \fB_sysconfig\fR to
+customize its own environment. The modifications made to the \fBSAC\fR
+environment by \fB_sysconfig\fR are inherited by all the children of the
+\fBSAC.\fR This inherited environment may be modified by the children.
+.SS "Starting Port Monitors"
+.sp
+.LP
+After it has interpreted the \fB_sysconfig\fR file, the \fBsac\fR reads its
+administrative file \fB/etc/saf/_sactab\fR. \fB_sactab\fR specifies which port
+monitors are to be started. For each port monitor to be started, \fBsac\fR
+forks a child (see \fBfork\fR(2)) and creates a \fButmpx\fR entry with the
+\fBtype\fR field set to \fBLOGIN_PROCESS\fR. Each child then interprets its
+per-port monitor configuration script \fB/etc/saf/\fR\fIpmtag\fR\fB/_config\fR
+, if the file exists. These modifications to the environment affect the port
+monitor and will be inherited by all its children. Finally, the child process
+\fBexec\fRs the port monitor, using the command found in the \fB_sactab\fR
+entry. (See \fBsacadm\fR; this is the command given with the \fB-c\fR option
+when the port monitor is added to the system.)
+.SS "Polling Port Monitors to Detect Failure"
+.sp
+.LP
+The \fB-t\fR option sets the frequency with which \fBsac\fR polls the port
+monitors on the system. This time may also be thought of as half of the maximum
+latency required to detect that a port monitor has failed and that recovery
+action is necessary.
+.SS "Administrative functions"
+.sp
+.LP
+The Service Access Controller represents the administrative point of control
+for port monitors. Its administrative tasks are explained below.
+.sp
+.LP
+When queried (\fBsacadm\fR with either \fB-l\fR or \fB-L\fR), the Service
+Access Controller returns the status of the port monitors specified, which
+\fBsacadm\fR prints on the standard output. A port monitor may be in one of six
+states:
+.sp
+.ne 2
+.na
+\fB\fBENABLED\fR\fR
+.ad
+.RS 14n
+The port monitor is currently running and is accepting connections. See
+\fBsacadm\fR(8) with the \fB-e\fR option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBDISABLED\fR\fR
+.ad
+.RS 14n
+The port monitor is currently running and is not accepting connections. See
+\fBsacadm\fR with the \fB-d\fR option, and see \fBNOTRUNNING\fR, below.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSTARTING\fR\fR
+.ad
+.RS 14n
+The port monitor is in the process of starting up. \fBSTARTING\fR is an
+intermediate state on the way to \fBENABLED\fR or \fBDISABLED\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBFAILED\fR\fR
+.ad
+.RS 14n
+The port monitor was unable to start and remain running.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSTOPPING\fR\fR
+.ad
+.RS 14n
+The port monitor has been manually terminated but has not completed its
+shutdown procedure. \fBSTOPPING\fR is an intermediate state on the way to
+\fBNOTRUNNING\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBNOTRUNNING\fR\fR
+.ad
+.RS 14n
+The port monitor is not currently running. (See \fBsacadm\fR with \fB-k\fR.)
+This is the normal "not running" state. When a port monitor is killed, all
+ports it was monitoring are inaccessible. It is not possible for an external
+user to tell whether a port is not being monitored or the system is down. If
+the port monitor is not killed but is in the \fBDISABLED\fR state, it may be
+possible (depending on the port monitor being used) to write a message on the
+inaccessible port telling the user who is trying to access the port that it is
+disabled. This is the advantage of having a \fBDISABLED\fR state as well as the
+\fBNOTRUNNING\fR state.
+.RE
+
+.sp
+.LP
+When a port monitor terminates, the \fBSAC\fR removes the \fButmpx\fR entry for
+that port monitor.
+.sp
+.LP
+The \fBSAC\fR receives all requests to enable, disable, start, or stop port
+monitors and takes the appropriate action.
+.sp
+.LP
+The \fBSAC\fR is responsible for restarting port monitors that terminate.
+Whether or not the \fBSAC\fR will restart a given port monitor depends on two
+things:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The restart count specified for the port monitor when the port monitor was
+added by \fBsacadm\fR; this information is included in
+\fB/etc/saf/\fR\fIpmtag\fR\fB/_sactab.\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The number of times the port monitor has already been restarted.
+.RE
+.SH SECURITY
+.sp
+.LP
+\fBsac\fR uses \fBpam\fR(3PAM) for session management. The \fBPAM\fR
+configuration policy, listed through \fB/etc/pam.conf\fR, specifies the session
+management module to be used for \fBsac\fR. Here is a partial \fBpam.conf\fR
+file with entries for \fBsac\fR using the UNIX session management module.
+.sp
+.in +2
+.nf
+sac session required pam_unix_session.so.1
+.fi
+.in -2
+
+.sp
+.LP
+If there are no entries for the \fBsac\fR service, then the entries for the
+"other" service will be used.
+.SH OPTIONS
+.sp
+.ne 2
+.na
+\fB\fB-t\fR \fIsanity_interval\fR\fR
+.ad
+.RS 22n
+Sets the frequency (\fIsanity_interval\fR) with which \fBsac\fR polls the port
+monitors on the system.
+.RE
+
+.SH FILES
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fB/etc/saf/_sactab\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fB/etc/saf/_sysconfig\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fB/var/adm/utmpx\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fB/var/saf/_log\fR
+.RE
+.SH SEE ALSO
+.sp
+.LP
+\fBpmadm\fR(8), \fBsacadm\fR(8), \fBfork\fR(2) \fBpam\fR(3PAM),
+.BR pam.conf (5),
+.BR attributes (7),
+.BR pam_authtok_check (7),
+.BR pam_authtok_get (7),
+.BR pam_authtok_store (7),
+.BR pam_dhkeys (7),
+.BR pam_passwd_auth (7),
+.BR pam_unix_account (7),
+.BR pam_unix_auth (7),
+.BR pam_unix_session (7)
+.SH NOTES
+.sp
+.LP
+The \fBpam_unix\fR(7) module is no longer supported. Similar functionality is
+provided by \fBpam_authtok_check\fR(7), \fBpam_authtok_get\fR(7),
+\fBpam_authtok_store\fR(7), \fBpam_dhkeys\fR(7), \fBpam_passwd_auth\fR(7),
+\fBpam_unix_account\fR(7), \fBpam_unix_auth\fR(7), and
+\fBpam_unix_session\fR(7).
+.sp
+.LP
+The service access controller service is managed by the service management
+facility, \fBsmf\fR(7), under the service identifier:
+.sp
+.in +2
+.nf
+svc:/system/sac:default
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Administrative actions on this service, such as enabling, disabling, or
+requesting restart, can be performed using \fBsvcadm\fR(8). The service's
+status can be queried using the \fBsvcs\fR(1) command.
diff --git a/usr/src/man/man8/sacadm.8 b/usr/src/man/man8/sacadm.8
new file mode 100644
index 0000000000..f6cd587c5b
--- /dev/null
+++ b/usr/src/man/man8/sacadm.8
@@ -0,0 +1,552 @@
+'\" te
+.\" Copyright (c) 1996, Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SACADM 8 "Sep 14, 1992"
+.SH NAME
+sacadm \- service access controller administration
+.SH SYNOPSIS
+.LP
+.nf
+\fBsacadm\fR \fB-a\fR \fB-p\fR \fIpmtag\fR \fB-t\fR \fItype\fR \fB-c\fR \fIcmd\fR \fB-v\fR \fIver\fR [\fB-f\fR dx] [\fB-n\fR \fIcount\fR]
+ [\fB-y\fR \fIcomment\fR] [\fB-z\fR \fIscript\fR]
+.fi
+
+.LP
+.nf
+\fBsacadm\fR \fB-r\fR \fB-p\fR \fIpmtag\fR
+.fi
+
+.LP
+.nf
+\fBsacadm\fR \fB-s\fR \fB-p\fR \fIpmtag\fR
+.fi
+
+.LP
+.nf
+\fBsacadm\fR \fB-k\fR \fB-p\fR \fIpmtag\fR
+.fi
+
+.LP
+.nf
+\fBsacadm\fR \fB-e\fR \fB-p\fR \fIpmtag\fR
+.fi
+
+.LP
+.nf
+\fBsacadm\fR \fB-d\fR \fB-p\fR \fIpmtag\fR
+.fi
+
+.LP
+.nf
+\fBsacadm\fR \fB-l\fR [\fB-p\fR \fIpmtag\fR | \fB-t\fR \fItype\fR]
+.fi
+
+.LP
+.nf
+\fBsacadm\fR \fB-L\fR [\fB-p\fR \fIpmtag\fR | \fB-t\fR \fItype\fR]
+.fi
+
+.LP
+.nf
+\fBsacadm\fR \fB-g\fR \fB-p\fR \fIpmtag\fR [\fB-z\fR \fIscript\fR]
+.fi
+
+.LP
+.nf
+\fBsacadm\fR \fB-G\fR [\fB-z\fR \fIscript\fR]
+.fi
+
+.LP
+.nf
+\fBsacadm\fR \fB-x\fR [\fB-p\fR \fIpmtag\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBsacadm\fR is the administrative command for the upper level of the Service
+Access Facility hierarchy (port monitor administration). \fBsacadm\fR performs
+the following functions:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+adds or removes a port monitor
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+starts or stops a port monitor
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+enables or disables a port monitor
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+installs or replaces a per-system configuration script
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+installs or replaces a per-port monitor configuration script
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+prints requested port monitor information
+.RE
+.sp
+.LP
+Requests about the status of port monitors (\fB-l\fR and \fB-L\fR) and requests
+to print per-port monitor and per-system configuration scripts (\fB-g\fR and
+\fB-G\fR without the \fB-z\fR option) may be executed by any user on the
+system. Other \fBsacadm\fR commands may be executed only by the super-user.
+.SH OPTIONS
+.sp
+.ne 2
+.na
+\fB\fB-a\fR\fR
+.ad
+.RS 14n
+Add a port monitor. When adding a port monitor, \fBsacadm\fR creates the
+supporting directory structure in \fB/etc/saf\fR and \fB/var/saf\fR and adds an
+entry for the new port monitor to \fB/etc/saf/_sactab\fR. The file
+\fB_sactab\fR already exists on the delivered system. Initially, it is empty
+except for a single line, which contains the version number of the Service
+Access Controller. Unless the command line that adds the new port monitor
+includes the \fB-f\fR option with the \fB-x\fR argument, the new port monitor
+will be started. Because of the complexity of the options and arguments that
+follow the \fB- a\fR option, it may be convenient to use a command script or
+the menu system to add port monitors.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-c\fR \fIcmd\fR\fR
+.ad
+.RS 14n
+Execute the command string \fIcmd\fR to start a port monitor. The \fB-c\fR
+option may be used only with a \fB-a\fR. A \fB-a\fR option requires a \fB-c\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-d\fR\fR
+.ad
+.RS 14n
+Disable the port monitor \fIpmtag\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-e\fR\fR
+.ad
+.RS 14n
+Enable the port monitor \fIpmtag\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR \fBdx\fR\fR
+.ad
+.RS 14n
+The \fB-f\fR option specifies one or both of the following two flags which are
+then included in the flags field of the \fB_sactab\fR entry for the new port
+monitor. If the \fB-f\fR option is not included on the command line, no flags
+are set and the default conditions prevail. By default, a port monitor is
+started. A \fB-f\fR option with no following argument is illegal.
+.sp
+.ne 2
+.na
+\fBd\fR
+.ad
+.RS 5n
+Do not enable the new port monitor.
+.RE
+
+.sp
+.ne 2
+.na
+\fBx\fR
+.ad
+.RS 5n
+Do not start the new port monitor.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-g\fR\fR
+.ad
+.RS 14n
+The \fB-g\fR option is used to request output or to install or replace the
+per-port monitor configuration script \fB/etc/saf/\fR\fIpmtag\fR\fB/_config\fR.
+\fB-g\fR requires a \fB-p\fR option. The \fB-g\fR option with only a \fB-p\fR
+option prints the per-port monitor configuration script for port monitor
+\fIpmtag\fR. The \fB-g\fR option with a \fB-p\fR option and a \fB-z\fR option
+installs the file \fBscript\fR as the per-port monitor configuration script
+for port monitor \fIpmtag\fR. Other combinations of options with \fB-g\fR are
+invalid.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-G\fR\fR
+.ad
+.RS 14n
+The \fB-G\fR option is used to request output or to install or replace the
+per-system configuration script \fB/etc/saf/_sysconfig\fR. The \fB-G\fR option
+by itself prints the per-system configuration script. The \fB-G\fR option in
+combination with a \fB-z\fR option installs the file \fBscript\fR as the
+per-system configuration script. Other combinations of options with a \fB-G\fR
+option are invalid.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-k\fR\fR
+.ad
+.RS 14n
+Stop port monitor \fIpmtag\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR\fR
+.ad
+.RS 14n
+The \fB-l\fR option is used to request port monitor information. The \fB-l\fR
+by itself lists all port monitors on the system. The \fB-l\fR option in
+combination with the \fB-p\fR option lists only the port monitor specified by
+\fIpmtag\fR. A \fB-l\fR in combination with the \fB-t\fR option lists all port
+monitors of type \fBtype\fR. Any other combination of options with the \fB-l\fR
+option is invalid.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-L\fR\fR
+.ad
+.RS 14n
+The \fB-L\fR option is identical to the \fB-l\fR option except that the output
+appears in a condensed format.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR \fIcount\fR\fR
+.ad
+.RS 14n
+Set the restart count to \fIcount\fR. If a restart count is not specified,
+count is set to \fB0\fR. A count of \fB0\fR indicates that the port monitor is
+not to be restarted if it fails.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR \fIpmtag\fR\fR
+.ad
+.RS 14n
+Specifies the tag associated with a port monitor.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-r\fR\fR
+.ad
+.RS 14n
+Remove port monitor \fIpmtag\fR. \fBsacadm\fR removes the port monitor entry
+from \fB/etc/saf/_sactab\fR. If the removed port monitor is not running, then
+no further action is taken. If the removed port monitor is running, the Service
+Access Controller (SAC) sends it \fBSIGTERM\fR to indicate that it should shut
+down. Note that the port monitor's directory structure remains intact.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR\fR
+.ad
+.RS 14n
+Start a port monitor. The SAC starts the port monitor \fIpmtag\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-t\fR \fBtype\fR\fR
+.ad
+.RS 14n
+Specifies the port monitor type.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR \fBver\fR\fR
+.ad
+.RS 14n
+Specifies the version number of the port monitor. This version number may be
+given as
+.sp
+.in +2
+.nf
+\fB\fR\fB-v\fR\fB `\fR\fIpmspec\fR \fB-V\fR`
+.fi
+.in -2
+.sp
+
+where \fIpmspec\fR is the special administrative command for port monitor
+\fIpmtag\fR. This special command is \fBttyadm\fR for \fBttymon\fR and
+\fBnlsadmin\fR for \fBlisten\fR. The version stamp of the port monitor is known
+by the command and is returned when \fIpmspec\fR is invoked with a \fB-V\fR
+option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-x\fR\fR
+.ad
+.RS 14n
+The \fB-x\fR option by itself tells the SAC to read its database file
+(\fB_sactab\fR). The \fB-x\fR option with the \fB-p\fR option tells port
+monitor \fIpmtag\fR to read its administrative file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-y\fR \fIcomment\fR\fR
+.ad
+.RS 14n
+Include \fIcomment\fR in the \fB_sactab\fR entry for port monitor \fIpmtag\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-z\fR \fBscript\fR\fR
+.ad
+.RS 14n
+Used with the \fB-g\fR and \fB-G\fR options to specify the name of a file that
+contains a configuration script. With the \fB-g\fR option, \fBscript\fR is a
+per-port monitor configuration script; with \fB-G\fR it is a per-system
+configuration script. Modifying a configuration script is a three-step
+procedure. First a copy of the existing script is made (\fB-g\fR or \fB-G\fR).
+Then the copy is edited. Finally, the copy is put in place over the existing
+script (\fB-g\fR or \fB-G\fR with \fB-z\fR).
+.RE
+
+.SH OUTPUT
+.sp
+.LP
+If successful, \fBsacadm\fR will exit with a status of \fB0\fR. If \fBsacadm\fR
+fails for any reason, it will exit with a nonzero status. Options that request
+information will write the information on the standard output. In the condensed
+format (\fB-L\fR), port monitor information is printed as a sequence of
+colon-separated fields; empty fields are indicated by two successive colons.
+The standard format (\fB-l\fR) prints a header identifying the columns, and
+port monitor information is aligned under the appropriate headings. In this
+format, an empty field is indicated by a hyphen. The comment character is
+\fB#\fR.
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRA sample output of the \fBsacadm\fR command.
+.sp
+.LP
+The following command line adds a port monitor. The port monitor tag is
+\fBnpack\fR; its type is \fBlisten\fR; if necessary, it will restart three
+times before failing; its administrative command is \fBnlsadmin\fR; and the
+configuration script to be read is in the file \fBscript\fR:
+
+.sp
+.in +2
+.nf
+\fBsacadm \fR\fB-a\fR\fB \fR\fB-p\fR\fB npack \fR\fB-t\fR\fB listen \fR\fB-c\fR\fB /usr/lib/saf/listen npack\fR
+\fB\fR\fB-v\fR\fB `nlsadmin \fR\fB-V\fR\fB` \fR\fB-n\fR\fB 3 \fR\fB-z\fR\fB script\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Remove a port monitor whose tag is \fBpmtag\fR:
+
+.sp
+.in +2
+.nf
+\fBsacadm\fR \fB-r\fR \fB-p\fR \fBpmtag\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Start the port monitor whose tag is \fBpmtag\fR:
+
+.sp
+.in +2
+.nf
+\fBsacadm\fR \fB-s\fR \fB-p\fR \fBpmtag\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Stop the port monitor whose tag is \fBpmtag\fR:
+
+.sp
+.in +2
+.nf
+\fBsacadm\fR \fB-k\fR \fB-p\fR \fBpmtag\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Enable the port monitor whose tag is \fBpmtag\fR:
+
+.sp
+.in +2
+.nf
+\fBsacadm\fR \fB-e\fR \fB-p\fR \fBpmtag\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Disable the port monitor whose tag is \fBpmtag\fR:
+
+.sp
+.in +2
+.nf
+\fBsacadm\fR \fB-d\fR \fB-p\fR \fBpmtag\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+List status information for all port monitors:
+
+.sp
+.in +2
+.nf
+\fBsacadm\fR \fB-l\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+List status information for the port monitor whose tag is \fBpmtag\fR:
+
+.sp
+.in +2
+.nf
+\fBsacadm\fR \fB-l\fR \fB-p\fR \fBpmtag\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+List the same information in condensed format:
+
+.sp
+.in +2
+.nf
+\fBsacadm\fR \fB-L\fR \fB-p\fR \fBpmtag\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+List status information for all port monitors whose type is \fBlisten\fR:
+
+.sp
+.in +2
+.nf
+\fBsacadm\fR \fB-l\fR \fB-t\fR \fBlisten\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Replace the per-port monitor configuration script associated with the port
+monitor whose tag is \fBpmtag\fR with the contents of the file
+\fBfile.config\fR:
+
+.sp
+.in +2
+.nf
+\fBsacadm\fR \fB-g\fR \fB-p\fR \fBpmtag\fR \fB-z\fR \fBfile.config\fR
+.fi
+.in -2
+.sp
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/saf/_sactab\fR\fR
+.ad
+.RS 26n
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/saf/_sysconfig\fR\fR
+.ad
+.RS 26n
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/saf/\fIpmtag\fR\fR\fB/_config\fR\fR
+.ad
+.RS 26n
+
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR doconfig (3NSL),
+.BR attributes (7),
+.BR pmadm (8),
+.BR sac (8)
diff --git a/usr/src/man/man8/saf.8 b/usr/src/man/man8/saf.8
new file mode 100644
index 0000000000..ca695f3ea1
--- /dev/null
+++ b/usr/src/man/man8/saf.8
@@ -0,0 +1,1516 @@
+'\" te
+.\" Copyright (c) 1998, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SAF 8 "Jul 30, 1998"
+.SH NAME
+saf \- Service Access Facility
+.SH DESCRIPTION
+.sp
+.LP
+The \fBSAF\fR generalizes the procedures for service access so that login
+access on the local system and network access to local services are managed in
+similar ways. Under the \fBSAF,\fR systems may access services using a variety
+of port monitors, including ttymon, the listener, and port monitors written
+expressly for a user's application. The manner in which a port monitor observes
+and manages access ports is specific to the port monitor and not to any
+component of the \fBSAF.\fR Users may therefore extend their systems by
+developing and installing their own port monitors. One of the important
+features of the \fBSAF\fR is that it can be extended in this way by users.
+.sp
+.LP
+Relative to the \fBSAF,\fR a service is a process that is started. There are no
+restrictions on the functions a service may provide. The \fBSAF\fR consists of
+a controlling process, the service access controller (SAC), and two
+administrative levels corresponding to two levels in the supporting directory
+structure. The top administrative level is concerned with port monitor
+administration, the lower level with service administration. The \fBSAC\fR is
+documented in the \fBsac\fR(8) man page. The administrative levels and
+associated utilities are documented in the \fISystem Administration Guide -
+Volume II\fR. The requirements for writing port monitors and the functions a
+port monitor must perform to run under the \fBSAF\fR and the \fBSAC\fR are
+documented here.
+.SS "Port Monitors"
+.sp
+.LP
+A port monitor is a process that is responsible for monitoring a set of
+homogeneous, incoming ports on a machine. A port monitor's major purpose is to
+detect incoming service requests and to dispatch them appropriately.
+.sp
+.LP
+A port is an externally seen access point on a system. A port may be an address
+on a network (TSAP or PSAP), a hardwired terminal line, an incoming phone line,
+etc. The definition of what constitutes a port is strictly a function of the
+port monitor itself.
+.sp
+.LP
+A port monitor performs certain basic functions. Some of these are required to
+conform to the \fBSAF;\fR others may be specified by the requirements and
+design of the port monitor itself. Port monitors have two main functions:
+managing ports and monitoring ports for indications of activity.
+.sp
+.ne 2
+.na
+\fBPort Management\fR
+.ad
+.RS 23n
+The first function of a port monitor is to manage a port. The actual details of
+how a port is managed are defined by the person who defines the port monitor. A
+port monitor is not restricted to handling a single port; it may handle
+multiple ports simultaneously.
+.sp
+Some examples of port management are setting the line speed on incoming phone
+connections, binding an appropriate network address, reinitializing the port
+when the service terminates, outputting a prompt, etc.
+.RE
+
+.sp
+.ne 2
+.na
+\fBActivity Monitoring\fR
+.ad
+.RS 23n
+The second function of a port monitor is to monitor the port or ports for which
+it is responsible for indications of activity. Two types of activity may be
+detected.
+.sp
+The first is an indication to the port monitor to take some port
+monitor-specific action. Pressing the break key to indicate that the line speed
+should be cycled is an example of a port monitor activity. Not all port
+monitors need to recognize and respond to the same indications. The indication
+used to attract the attention of the port monitor is defined by the person who
+defines the port monitor.
+.sp
+The second is an incoming service request. When a service request is received,
+a port monitor must be able to determine which service is being requested from
+the port on which the request is received. The same service may be available on
+more than one port.
+.RE
+
+.SS "Other Port Monitor Functions"
+.sp
+.LP
+This section briefly describes other port monitor functions.
+.sp
+.ne 2
+.na
+\fBRestricting Access to the System\fR
+.ad
+.sp .6
+.RS 4n
+A port monitor must be able to restrict access to the system without disturbing
+services that are still running. In order to do this, a port monitor must
+maintain two internal states: enabled and disabled. The port monitor starts in
+the state indicated by the \fBISTATE\fR environment variable provided by the
+\fBsac.\fR See sac(8) for details. Enabling or disabling a port monitor
+affects all ports for which the port monitor is responsible. If a port monitor
+is responsible for a single port, only that port will be affected. If a port
+monitor is responsible for multiple ports, the entire collection of ports will
+be affected. Enabling or disabling a port monitor is a dynamic operation: it
+causes the port monitor to change its internal state. The effect does not
+persist across new invocations of the port monitor. Enabling or disabling an
+individual port, however, is a static operation: it causes a change to an
+administrative file. The effect of this change will persist across new
+invocations of the port monitor.
+.RE
+
+.sp
+.ne 2
+.na
+\fBCreating \fButmpx\fR Entries\fR
+.ad
+.sp .6
+.RS 4n
+Port monitors are responsible for creating \fButmpx\fR entries with the type
+field set to USER_PROCESS for services they start. If this action has been
+specified, by using the \fB-fu\fR option in the \fBpmadm\fR command line that
+added the service, these \fButmpx\fR entries may in turn be modified by the
+service. When the service terminates, the \fButmpx\fR entry must be set to
+DEAD_PROCESS.
+.RE
+
+.sp
+.ne 2
+.na
+\fBPort Monitor Process IDs and Lock Files\fR
+.ad
+.sp .6
+.RS 4n
+When a port monitor starts, it writes its process id into a file named
+\fB_pid\fR in the current directory and places an advisory lock on the file.
+.RE
+
+.sp
+.ne 2
+.na
+\fBChanging the Service Environment: Running\fR
+.ad
+.sp .6
+.RS 4n
+\fBdoconfig\fR(3NSL) Before invoking the service designated in the port monitor
+administrative file, \fB_pmtab\fR, a port monitor must arrange for the
+per-service configuration script to be run, if one exists, by calling the
+library function \fBdoconfig\fR(3NSL). Because the per-service configuration
+script may specify the execution of restricted commands, as well as for other
+security reasons, port monitors are invoked with root permissions. The details
+of how services are invoked are specified by the person who defines the port
+monitor.
+.RE
+
+.sp
+.ne 2
+.na
+\fBTerminating a Port Monitor\fR
+.ad
+.sp .6
+.RS 4n
+A port monitor must terminate itself gracefully on receipt of the signal
+\fBSIGTERM.\fR The termination sequence is the following:
+.RS +4
+.TP
+1.
+The port monitor enters the stopping state; no further service requests are
+accepted.
+.RE
+.RS +4
+.TP
+2.
+Any attempt to re-enable the port monitor will be ignored.
+.RE
+.RS +4
+.TP
+3.
+The port monitor yields control of all ports for which it is responsible. It
+must be possible for a new instantiation of the port monitor to start correctly
+while a previous instantiation is stopping.
+.RE
+.RS +4
+.TP
+4.
+The advisory lock on the process id file is released. Once this lock is
+released, the contents of the process id file are undefined and a new
+invocation of the port monitor may be started.
+.RE
+.RE
+
+.SS "SAF Files"
+.sp
+.LP
+This section briefly covers the files used by the \fBSAF.\fR
+.sp
+.ne 2
+.na
+\fBThe Port Monitor Administrative File\fR
+.ad
+.sp .6
+.RS 4n
+A port monitor's current directory contains an administrative file named
+\fB_pmtab\fR; \fB_pmtab\fR is maintained by the \fBpmadm\fR command in
+conjunction with a port monitor-specific administrative command.
+.sp
+The port monitor administrative command for a listen port monitor is
+\fBnlsadmin\fR(8); the port monitor administrative command for ttymon is
+\fBttyadm\fR(8). Any port monitor written by a user must be provided with an
+administrative command specific to that port monitor to perform similar
+functions.
+.RE
+
+.sp
+.ne 2
+.na
+\fBPer-Service Configuration Files\fR
+.ad
+.sp .6
+.RS 4n
+A port monitor's current directory also contains the per-service configuration
+scripts, if they exist. The names of the per-service configuration scripts
+correspond to the service tags in the \fB_pmtab\fR file.
+.RE
+
+.sp
+.ne 2
+.na
+\fBPrivate Port Monitor Files\fR
+.ad
+.sp .6
+.RS 4n
+A port monitor may create private files in the directory
+\fB/var/saf/\fR\fItag\fR, where \fItag\fR is the name of the port monitor.
+Examples of private files are log files or temporary files.
+.RE
+
+.SS "The SAC/Port Monitor Interface"
+.sp
+.LP
+The \fBSAC\fR creates two environment variables for each port monitor it
+starts:\fBPMTAG\fR and \fBISTATE\fR.
+.sp
+.LP
+This variable is set to a unique port monitor tag by the \fBSAC.\fR The port
+monitor uses this tag to identify itself in response to \fBsac\fR messages.
+\fBISTATE\fR is used to indicate to the port monitor what its initial internal
+state should be. \fBISTATE\fR is set to "enabled" or "disabled" to indicate
+that the port monitor is to start in the enabled or disabled state
+respectively.
+.sp
+.LP
+The \fBSAC\fR performs a periodic sanity poll of the port monitors. The
+\fBSAC\fR communicates with port monitors through FIFOs. A port monitor should
+open _pmpipe, in the current directory, to receive messages from the \fBSAC\fR
+and \fB\&../_sacpipe\fR to send return messages to the \fBSAC.\fR
+.SS "Message Formats"
+.sp
+.LP
+This section describes the messages that may be sent from the \fBSAC\fR to a
+port monitor (\fBsac\fR messages), and from a port monitor to the \fBSAC\fR
+(port monitor messages). These messages are sent through FIFOs and are in the
+form of C structures.
+.sp
+.ne 2
+.na
+\fB\fBsac\fR Messages\fR
+.ad
+.RS 16n
+The format of messages from the \fBSAC\fR is defined by the structure
+\fBsacmsg\fR:
+.sp
+.in +2
+.nf
+struct sacmsg
+{
+ int sc_size; /* size of optional data portion */
+ char sc_type; /* type of message */
+};
+.fi
+.in -2
+.sp
+
+.RE
+
+.sp
+.LP
+The \fBSAC\fR may send four types of messages to port monitors. The type of
+message is indicated by setting the \fBsc_type\fR field of the \fBsacmsg\fR
+structure to one of the following:
+.sp
+.ne 2
+.na
+\fBSC_STATUS\|\fR
+.ad
+.RS 15n
+status request
+.RE
+
+.sp
+.ne 2
+.na
+\fBSC_ENABLE\|\fR
+.ad
+.RS 15n
+enable message
+.RE
+
+.sp
+.ne 2
+.na
+\fBSC_DISABLE\fR
+.ad
+.RS 15n
+disable message
+.RE
+
+.sp
+.ne 2
+.na
+\fBSC_READDB\|\fR
+.ad
+.RS 15n
+message indicating that the port monitor's _pmtab file should be read
+.RE
+
+.sp
+.LP
+The \fBsc_size\fR field indicates the size of the optional data part of the
+message. See "Message Classes." For Solaris, \fBsc_size\fR should always be set
+to 0. A port monitor must respond to every message sent by the \fBsac.\fR
+.SS "Port Monitor Messages"
+.sp
+.LP
+The format of messages from a port monitor to the \fBSAC\fR is defined by the
+structure \fBpmmsg\fR:
+.sp
+.in +2
+.nf
+struct pmmsg {
+ char pm_type; /* type of message */
+ unchar_t pm_state; /* current state of port monitor */
+ char pm_maxclass; /* maximum message class this port
+ monitor understands */
+ char pm_tag[PMTAGSIZE + 1]; /* port monitor's tag */
+ int pm_size; /* size of optional data portion */
+};
+.fi
+.in -2
+
+.sp
+.LP
+Port monitors may send two types of messages to the \fBSAC.\fR The type of
+message is indicated by setting the \fBpm_type\fR field of the \fBpmmsg\fR
+structure to one of the following:
+.sp
+.ne 2
+.na
+\fBPM_STATUS\fR
+.ad
+.RS 14n
+state information
+.RE
+
+.sp
+.ne 2
+.na
+\fBPM_UNKNOWN\fR
+.ad
+.RS 14n
+negative acknowledgment
+.RE
+
+.sp
+.LP
+For both types of messages, the \fBpm_tag\fR field is set to the port monitor's
+tag and the \fBpm_state\fR field is set to the port monitor's current state.
+Valid states are:
+.sp
+.ne 2
+.na
+\fBPM_STARTING\fR
+.ad
+.RS 15n
+starting
+.RE
+
+.sp
+.ne 2
+.na
+\fBPM_ENABLED\fR
+.ad
+.RS 15n
+enabled
+.RE
+
+.sp
+.ne 2
+.na
+\fBPM_DISABLED\fR
+.ad
+.RS 15n
+disabled
+.RE
+
+.sp
+.ne 2
+.na
+\fBPM_STOPPING\fR
+.ad
+.RS 15n
+stopping
+.RE
+
+.sp
+.LP
+The current state reflects any changes caused by the last message from the
+\fBSAC.\fR The status message is the normal return message. The negative
+acknowledgment should be sent only when the message received is not understood.
+\fBpm_size\fR indicates the size of the optional data part of the message.
+\fBpm_maxclass\fR is used to specify a message class. Both are discussed under
+"Message Classes." In Solaris, always set \fBpm_maxclass\fR to 1 and
+\fBsc_size\fR to 0. Port monitors may never initiate messages; they may only
+respond to messages that they receive.
+.SS "Message Classes"
+.sp
+.LP
+The concept of message class has been included to accommodate possible
+\fBSAF\fR extensions. The messages described above are all class 1 messages.
+None of these messages contains a variable data portion; all pertinent
+information is contained in the message header. If new messages are added to
+the protocol, they will be defined as new message classes (for example, class
+2). The first message the \fBSAC\fR sends to a port monitor will always be a
+class 1 message. Since all port monitors, by definition, understand class 1
+messages, the first message the \fBSAC\fR sends is guaranteed to be understood.
+In its response to the \fBSAC,\fR the port monitor sets the \fBpm_maxclass\fR
+field to the maximum message class number for that port monitor. The \fBSAC\fR
+will not send messages to a port monitor from a class with a larger number than
+the value of \fBpm_maxclass\fR. Requests that require messages of a higher
+class than the port monitor can understand will fail. For Solaris, always set
+\fBpm_maxclass\fR to 1.
+.sp
+.LP
+For any given port monitor, messages of class \fBpm_maxclass\fR and messages of
+all classes with values lower than \fBpm_maxclass\fR are valid. Thus, if the
+\fBpm_maxclass\fR field is set to 3, the port monitor understands messages of
+classes 1, 2, and 3. Port monitors may not generate messages; they may only
+respond to messages. A port monitor's response must be of the same class as the
+originating message. Since only the \fBSAC\fR can generate messages, this
+protocol will function even if the port monitor is capable of dealing with
+messages of a higher class than the \fBSAC\fR can generate. \fBpm_size\fR (an
+element of the pmmsg structure) and \fBsc_size\fR (an element of the
+\fBsacmsg\fR structure) indicate the size of the optional data part of the
+message. The format of this part of the message is undefined. Its definition is
+inherent in the type of message. For Solaris, always set both \fBsc_size\fR and
+\fBpm_size\fR to \fB0\fR.
+.SS "Administrative Interface"
+.sp
+.LP
+This section discusses the port monitor administrative files available under
+the \fBSAC.\fR
+.SS "The SAC Administrative File _sactab"
+.sp
+.LP
+The service access controller's administrative file contains information about
+all the port monitors for which the \fBSAC\fR is responsible. This file exists
+on the delivered system. Initially, it is empty except for a single comment
+line that contains the version number of the \fBSAC.\fR Port monitors are added
+to the system by making entries in the \fBSAC's\fR administrative file. These
+entries should be made using the administrative command \fBsacadm\fR(8) with a
+\fB-a\fR option. \fBsacadm\fR(8) is also used to remove entries from the
+\fBSAC's\fR administrative file. Each entry in the \fBSAC's\fR administrative
+file contains the following information.
+.sp
+.ne 2
+.na
+\fB\fBPMTAG\fR\fR
+.ad
+.RS 11n
+A unique tag that identifies a particular port monitor. The system
+administrator is responsible for naming a port monitor. This tag is then used
+by the \fBSAC\fR to identify the port monitor for all administrative purposes.
+\fBPMTAG\fR may consist of up to 14 alphanumeric characters.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPMTYPE\fR\fR
+.ad
+.RS 11n
+The type of the port monitor. In addition to its unique tag, each port monitor
+has a type designator. The type designator identifies a group of port monitors
+that are different invocations of the same entity. ttymon and listen are
+examples of valid port monitor types. The type designator is used to facilitate
+the administration of groups of related port monitors. Without a type
+designator, the system administrator has no way of knowing which port monitor
+tags correspond to port monitors of the same type. \fBPMTYPE\fR may consist of
+up to 14 alphanumeric characters.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBFLGS\fR\fR
+.ad
+.RS 11n
+The flags that are currently defined are:
+.sp
+.ne 2
+.na
+\fBd\fR
+.ad
+.RS 5n
+When started, do not enable the port monitor.
+.RE
+
+.sp
+.ne 2
+.na
+\fBx\fR
+.ad
+.RS 5n
+Do not start the port monitor.
+.RE
+
+If no flag is specified, the default action is taken. By default a port monitor
+is started and enabled.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBRCNT\fR\fR
+.ad
+.RS 11n
+The number of times a port monitor may fail before being placed in a failed
+state. Once a port monitor enters the failed state, the \fBSAC\fR will not try
+to restart it. If a count is not specified when the entry is created, this
+field is set to 0. A restart count of 0 indicates that the port monitor is not
+to be restarted when it fails.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBCOMMAND\fR\fR
+.ad
+.RS 11n
+A string representing the command that will start the port monitor. The first
+component of the string, the command itself, must be a full path name.
+.RE
+
+.SS "The Port Monitor Administrative File _pmtab"
+.sp
+.LP
+Each port monitor will have two directories for its exclusive use. The current
+directory will contain files defined by the \fBSAF\fR (\fB_pmtab\fR,
+\fB_pid\fR) and the per-service configuration scripts, if they exist. The
+directory \fB/var/saf/\fR\fIpmtag,\fR where \fIpmtag\fR is the tag of the port
+monitor, is available for the port monitor's private files. Each port monitor
+has its own administrative file. The \fBpmadm\fR(8) command should be used to
+add, remove, or modify service entries in this file. Each time a change is made
+using \fBpmadm\fR(8), the corresponding port monitor rereads its
+administrative file. Each entry in a port monitor's administrative file defines
+how the port monitor treats a specific port and what service is to be invoked
+on that port. Some fields must be present for all types of port monitors. Each
+entry must include a service tag to identify the service uniquely and an
+identity to be assigned to the service when it is started (for example, root).
+.sp
+.LP
+The combination of a service tag and a port monitor tag uniquely define an
+instance of a service. The same service tag may be used to identify a service
+under a different port monitor. The record must also contain port monitor
+specific data (for example, for a ttymon port monitor, this will include the
+prompt string which is meaningful to ttymon). Each type of port monitor must
+provide a command that takes the necessary port monitor-specific data as
+arguments and outputs these data in a form suitable for storage in the file.
+The \fBttyadm\fR(8) command does this for ttymon and \fBnlsadmin\fR(8) does
+it for listen. For a user-defined port monitor, a similar administrative
+command must also be supplied. Each service entry in the port monitor
+administrative file must have the following format and contain the information
+listed below:
+.sp
+.in +2
+.nf
+svctag:flgs:id:reserved:reserved:reserved:pmspecific# comment
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+\fBSVCTAG\fR is a unique tag that identifies a service. This tag is unique only
+for the port monitor through which the service is available. Other port
+monitors may offer the same or other services with the same tag. A service
+requires both a port monitor tag and a service tag to identify it uniquely.
+\fBSVCTAG\fR may consist of up to 14 alphanumeric characters. The service
+entries are defined as:
+.sp
+.ne 2
+.na
+\fB\fBFLGS\fR\fR
+.ad
+.RS 14n
+Flags with the following meanings may currently be included in this field:
+.sp
+.ne 2
+.na
+\fBx\fR
+.ad
+.RS 5n
+Do not enable this port. By default the port is enabled.
+.RE
+
+.sp
+.ne 2
+.na
+\fBu\fR
+.ad
+.RS 5n
+Create a utmpx entry for this service. By default no utmpx entry is created
+for the service.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBID\fR\fR
+.ad
+.RS 14n
+The identity under which the service is to be started. The identity has the
+form of a login name as it appears in \fB/etc/passwd\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPMSPECIFIC\fR\fR
+.ad
+.RS 14n
+Examples of port monitor information are addresses, the name of a process to
+execute, or the name of a STREAMS-based pipe to pass a connection through. This
+information will vary to meet the needs of each different type of port monitor.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBCOMMENT\fR\fR
+.ad
+.RS 14n
+A comment associated with the service entry. Port monitors may ignore the
+\fIu\fR flag if creating a utmpx entry for the service is not appropriate to
+the manner in which the service is to be invoked. Some services may not start
+properly unless utmpx entries have been created for them (for example, login).
+Each port monitor administrative file must contain one special comment of the
+form:
+.sp
+# VERSION=value
+.sp
+where \fIvalue\fR is an integer that represents the port monitor's version
+number. The version number defines the format of the port monitor
+administrative file. This comment line is created automatically when a port
+monitor is added to the system. It appears on a line by itself, before the
+service entries.
+.RE
+
+.SS "Monitor-Specific Administrative Command"
+.sp
+.LP
+Previously, two pieces of information included in the \fB_pmtab\fR file were
+described: the port monitor's version number and the port monitor part of the
+service entries in the port monitor's \fB_pmtab\fR file. When a new port
+monitor is added, the version number must be known so that the \fB_pmtab\fR
+file can be correctly initialized. When a new service is added, the port
+monitor part of the \fB_pmtab\fR entry must be formatted correctly. Each port
+monitor must have an administrative command to perform these two tasks. The
+person who defines the port monitor must also define such an administrative
+command and its input options. When the command is invoked with these options,
+the information required for the port monitor part of the service entry must be
+correctly formatted for inclusion in the port monitor's \fB_pmtab\fR file and
+must be written to the standard output. To request the version number the
+command must be invoked with a \fB-V\fR option; when it is invoked in this way,
+the port monitor's current version number must be written to the standard
+output. If the command fails for any reason during the execution of either of
+these tasks, no data should be written to standard output.
+.SS "The Port Monitor/Service Interface"
+.sp
+.LP
+The interface between a port monitor and a service is determined solely by the
+service. Two mechanisms for invoking a service are presented here as examples.
+.sp
+.ne 2
+.na
+\fBNew Service Invocations\fR
+.ad
+.sp .6
+.RS 4n
+The first interface is for services that are started anew with each request.
+This interface requires the port monitor to first \fBfork\fR(2) a child
+process. The child will eventually become the designated service by performing
+an \fBexec\fR(1). Before the \fBexec\fR(1) happens, the port monitor may take
+some port monitor-specific action; however, one action that must occur is the
+interpretation of the per-service configuration script, if one is present. This
+is done by calling the library routine \fBdoconfig\fR(3NSL).
+.RE
+
+.sp
+.ne 2
+.na
+\fBStanding Service Invocations\fR
+.ad
+.sp .6
+.RS 4n
+The second interface is for invocations of services that are actively running.
+To use this interface, a service must have one end of a stream pipe open and be
+prepared to receive connections through it.
+.RE
+
+.SS "Port Monitor Requirements"
+.sp
+.LP
+To implement a port monitor, several generic requirements must be met. This
+section summarizes these requirements. In addition to the port monitor itself,
+an administrative command must be supplied.
+.sp
+.ne 2
+.na
+\fBInitial Environment\fR
+.ad
+.RS 23n
+When a port monitor is started, it expects an initial execution environment in
+which:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+It has no file descriptors open
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+It cannot be a process group leader
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+It has an entry in \fB/etc/utmpx\fR of type LOGIN_PROCESS
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+An environment variable, \fBISTATE,\fR is set to "enabled" or "disabled" to
+indicate the port monitor's correct initial state
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+An environment variable, \fBPMTAG,\fR is set to the port monitor's assigned tag
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The directory that contains the port monitor's administrative files is its
+current directory
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+pThe port monitor is able to create private files in the directory
+\fB/var/saf/\fR\fItag\fR, where \fItag\fR is the port monitor's tag
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The port monitor is running with user id 0 (root)
+.RE
+.RE
+
+.sp
+.ne 2
+.na
+\fBImportant Files\fR
+.ad
+.RS 23n
+Relative to its current directory, the following key files exist for a port
+monitor.
+.sp
+.ne 2
+.na
+\fB\fB_config\fR\fR
+.ad
+.RS 17n
+The port monitor's configuration script. The port monitor configuration script
+is run by the SAC. The \fBSAC\fR is started by \fBinit\fR(8) as a result of an
+entry in \fB/etc/inittab\fR that calls \fBsac\fR(8).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB_pid\fR\fR
+.ad
+.RS 17n
+The file into which the port monitor writes its process id.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB_pmtab\fR\fR
+.ad
+.RS 17n
+The port monitor's administrative file. This file contains information about
+the ports and services for which the port monitor is responsible.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB_pmpipe\fR\fR
+.ad
+.RS 17n
+The\fB FIFO\fR through which the port monitor will receive messages from the
+\fBSAC.\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsvctag\fR\fR
+.ad
+.RS 17n
+The per-service configuration script for the service with the tag \fIsvctag\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\&../_sacpipe\fR\fR
+.ad
+.RS 17n
+The \fBFIFO\fR through which the port monitor will send messages to
+\fBsac\fR(8).
+.RE
+
+.RE
+
+.SS "Port Monitor Responsibilities"
+.sp
+.LP
+A port monitor is responsible for performing the following tasks in addition to
+its port monitor function:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Write its process id into the file \fB_pid\fR and place an advisory lock on the
+file
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Terminate gracefully on receipt of the signal SIGTERM
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Follow the protocol for message exchange with the \fBSAC\fR
+.RE
+.sp
+.LP
+A port monitor must perform the following tasks during service invocation:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Create a \fButmpx\fR entry if the requested service has the \fBu\fR flag set in
+\fB_pmtab\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Port monitors may ignore this flag if creating a \fButmpx\fR entry for the
+service does not make sense because of the manner in which the service is to be
+invoked. On the other hand, some services may not start properly unless utmpx
+entries have been created for them.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Interpret the per-service configuration script for the requested service, if it
+exists, by calling the \fBdoconfig\fR(3NSL) library routine
+.RE
+.SS "Configuration Files and Scripts"
+.sp
+.LP
+The library routine \fBdoconfig\fR(3NSL), defined in \fBlibnsl.so\fR,
+interprets the configuration scripts contained in the files
+\fB/etc/saf/_sysconfig\fR (the per-system configuration file), and
+\fB/etc/saf/\fR\fIpmtag\fR\fB/_config\fR (per-port monitor configuration
+files); and in \fB/etc/saf/\fR\fIpmtag\fR\fB/svctag\fR (per-service
+configuration files). Its syntax is:
+.sp
+.in +2
+.nf
+#include <sac.h>
+ int doconfig (int fd, char *script, long rflag);
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+\fBscript\fR is the name of the configuration script; \fIfd\fR is a file
+descriptor that designates the stream to which stream manipulation operations
+are to be applied; \fIrflag\fR is a bitmask that indicates the mode in which
+script is to be interpreted. \fIrflag\fR may take two values, \fBNORUN\fR and
+\fBNOASSIGN,\fR which may be or'd. If \fIrflag\fR is zero, all commands in the
+configuration script are eligible to be interpreted. If \fIrflag\fR has the
+\fBNOASSIGN\fR bit set, the assign command is considered illegal and will
+generate an error return. If \fIrflag\fR has the \fBNORUN\fR bit set, the run
+and runwait commands are considered illegal and will generate error returns. If
+a command in the script fails, the interpretation of the script ceases at that
+point and a positive integer is returned; this number indicates which line in
+the script failed. If a system error occurs, a value of \(mi1 is returned. If a
+script fails, the process whose environment was being established should not be
+started. In the example, \fBdoconfig\fR(3NSL) is used to interpret a
+per-service configuration script.
+.sp
+.in +2
+.nf
+\|.\|.\|.
+ if ((i = doconfig (fd, svctag, 0)) != 0){
+ error ("doconfig failed on line %d of script %s",i,svctag);
+ }
+.fi
+.in -2
+.sp
+
+.sp
+.ne 2
+.na
+\fBThe Per-System Configuration File\fR
+.ad
+.sp .6
+.RS 4n
+The per-system configuration file, \fB/etc/saf/_sysconfig\fR, is delivered
+empty. It may be used to customize the environment for all services on the
+system by writing a command script in the interpreted language described in
+this chapter and on the \fBdoconfig\fR(3NSL) manpage. When the \fBSAC\fR is
+started, it calls the \fBdoconfig\fR(3NSL) function to interpret the per-system
+configuration script. The \fBSAC\fR is started when the system enters multiuser
+mode.
+.RE
+
+.sp
+.ne 2
+.na
+\fBPer-Port Monitor Configuration Files\fR
+.ad
+.sp .6
+.RS 4n
+Per-port monitor configuration scripts
+(\fB/etc/saf/\fR\fIpmtag\fR\fB/_config)\fR are optional. They allow the user to
+customize the environment for any given port monitor and for the services that
+are available through the ports for which that port monitor is responsible.
+Per-port monitor configuration scripts are written in the same language used
+for per-system configuration scripts. The per-port monitor configuration script
+is interpreted when the port monitor is started. The port monitor is started by
+the \fBSAC\fR after the \fBSAC\fR has itself been started and after it has run
+its own configuration script, \fB/etc/saf/_sysconfig\fR. The per-port monitor
+configuration script may override defaults provided by the per-system
+configuration script.
+.RE
+
+.sp
+.ne 2
+.na
+\fBPer-Service Configuration Files\fR
+.ad
+.sp .6
+.RS 4n
+Per-service configuration files allow the user to customize the environment for
+a specific service. For example, a service may require special privileges that
+are not available to the general user. Using the language described in the
+\fBdoconfig\fR(3NSL) manpage, you can write a script that will grant or limit
+such special privileges to a particular service offered through a particular
+port monitor. The per-service configuration may override defaults provided by
+higher-level configuration scripts. For example, the per-service configuration
+script may specify a set of STREAMS modules other than the default set.
+.RE
+
+.SS "The Configuration Language"
+.sp
+.LP
+The language in which configuration scripts are written consists of a sequence
+of commands, each of which is interpreted separately. The following reserved
+keywords are defined: \fBassign\fR, \fBpush\fR, \fBpop\fR, \fBrunwait\fR, and
+\fBrun\fR. The comment character is #. Blank lines are not significant. No line
+in a command script may exceed 1024 characters.
+.sp
+.ne 2
+.na
+\fB\fBassign\fR \fIvariable\fR=\fIvalue\fR\fR
+.ad
+.sp .6
+.RS 4n
+Used to define environment variables; \fIvariable\fR is the name of the
+environment variable and \fIvalue\fR is the value to be assigned to it. The
+value assigned must be a string constant; no form of parameter substitution is
+available. \fIvalue\fR may be quoted. The quoting rules are those used by the
+shell for defining environment variables. \fBassign\fR will fail if space
+cannot be allocated for the new variable or if any part of the specification is
+invalid.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpush\fR \fImodule1\fR[,\fImodule2, module3\fR, ...]\fR
+.ad
+.sp .6
+.RS 4n
+Used to push STREAMS modules onto the stream designated by \fBfd\fR;
+\fImodule1\fR is the name of the first module to be pushed, \fImodule2\fR is
+the name of the second module to be pushed, and so on. The command will fail if
+any of the named modules cannot be pushed. If a module cannot be pushed, the
+subsequent modules on the same command line will be ignored and modules that
+have already been pushed will be popped.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpop\fR [\fImodule\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Used to pop STREAMS modules off the designated stream. If \fBpop\fR is invoked
+with no arguments, the top module on the stream is popped. If an argument is
+given, modules will be popped one at a time until the named module is at the
+top of the stream. If the named module is not on the designated stream, the
+stream is left as it was and the command fails. If \fImodule\fR is the special
+keyword \fBALL\fR, then all modules on the stream will be popped. Only modules
+above the topmost driver are affected.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrunwait\fR \fBcommand\fR\fR
+.ad
+.sp .6
+.RS 4n
+The \fBrunwait\fR command runs a command and waits for it to complete;
+\fBcommand\fR is the path name of the command to be run. The command is run
+with \fB/bin/sh\fR \fB-c\fR prepended to it; shell scripts may thus be executed
+from configuration scripts. The \fBrunwait\fR command will fail if command
+cannot be found or cannot be executed, or if \fBcommand\fR exits with a nonzero
+status.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrun\fR \fBcommand\fR\fR
+.ad
+.sp .6
+.RS 4n
+The \fBrun\fR command is identical to \fBrunwait\fR except that it does not
+wait for command to complete; \fBcommand\fR is the path name of the command to
+be run. \fBrun\fR will not fail unless it is unable to create achild process
+to execute the command. Although they are syntactically indistinguishable, some
+of the commands available to \fBrun\fR and \fBrunwait\fR are interpreter
+built-in commands. Interpreter built-ins are used when it is necessary to alter
+the state of a process within the context of that process. The \fBdoconfig\fR
+interpreter built-in commands are similar to the shell special commands and,
+like these, they do not spawn another process for execution. See the
+\fBsh\fR(1) man page. The initial set of built-in commands is: \fBcd\fR,
+\fBulimit\fR, \fBumask\fR.
+.RE
+
+.SS "Sample Port Monitor Code"
+.sp
+.LP
+This example shows an example of a "null" port monitor that simply responds to
+messages from the \fBSAC.\fR
+.sp
+.in +2
+.nf
+># include <stdlib.h>
+# include <stdio.h>
+# include <unistd.h>
+# include <fcntl.h>
+# include <signal.h>
+# include <sac.h>
+
+char Scratch[BUFSIZ]; /* scratch buffer */
+char Tag[PMTAGSIZE + 1]; /* port monitor's tag */
+FILE *Fp; /* file pointer for log file */
+FILE *Tfp; /* file pointer for pid file */
+char State; /* portmonitor's current state*/
+
+main(argc, argv)
+ int argc;
+ char *argv[];
+{
+ char *istate;
+ strcpy(Tag, getenv("PMTAG"));
+/*
+ * open up a log file in port monitor's private directory
+ */
+ sprintf(Scratch, "/var/saf/%s/log", Tag);
+ Fp = fopen(Scratch, "a+");
+ if (Fp == (FILE *)NULL)
+ exit(1);
+ log(Fp, "starting");
+/*
+ * retrieve initial state (either "enabled" or "disabled") and set
+ * State accordingly
+ */
+ istate = getenv("ISTATE");
+ sprintf(Scratch, "ISTATE is %s", istate);
+ log(Fp, Scratch);
+ if (!strcmp(istate, "enabled"))
+ State = PM_ENABLED;
+ else if (!strcmp(istate, "disabled"))
+ State = PM_DISABLED;
+ else {
+ log(Fp, "invalid initial state");
+ exit(1);
+ }
+ sprintf(Scratch, "PMTAG is %s", Tag);
+ log(Fp, Scratch);
+/*
+ * set up pid file and lock it to indicate that we are active
+ */
+ Tfp = fopen("_pid", "w");
+ if (Tfp == (FILE *)NULL) {
+ log(Fp, "couldn't open pid file");
+ exit(1);
+ }
+ if (lockf(fileno(Tfp), F_TEST, 0) < 0) {
+ log(Fp, "pid file already locked");
+ exit(1);
+ }
+
+ log(Fp, "locking file");
+ if (lockf(fileno(Tfp), F_LOCK, 0) < 0) {
+ log(Fp, "lock failed");
+ exit(1);
+ }
+ fprintf(Tfp, "%d", getpid());
+ fflush(Tfp);
+
+/*
+ * handle poll messages from the sac ... this function never returns
+ */
+ handlepoll();
+ pause();
+ fclose(Tfp);
+ fclose(Fp);
+}
+
+handlepoll()
+{
+ int pfd; /* file descriptor for incoming pipe */
+ int sfd; /* file descriptor for outgoing pipe */
+ struct sacmsg sacmsg; /* incoming message */
+ struct pmmsg pmmsg; /* outgoing message */
+/*
+ * open pipe for incoming messages from the sac
+ */
+ pfd = open("_pmpipe", O_RDONLY|O_NONBLOCK);
+ if (pfd < 0) {
+ log(Fp, "_pmpipe open failed");
+ exit(1);
+ }
+/*
+ * open pipe for outgoing messages to the sac
+ */
+ sfd = open("../_sacpipe", O_WRONLY);
+ if (sfd < 0) {
+ log(Fp, "_sacpipe open failed");
+ exit(1);
+ }
+/*
+ * start to build a return message; we only support class 1 messages
+ */
+ strcpy(pmmsg.pm_tag, Tag);
+ pmmsg.pm_size = 0;
+ pmmsg.pm_maxclass = 1;
+/*
+ * keep responding to messages from the sac
+ */
+ for (;;) {
+ if (read(pfd, &sacmsg, sizeof(sacmsg)) != sizeof(sacmsg)) {
+ log(Fp, "_pmpipe read failed");
+ exit(1);
+ }
+/*
+ * determine the message type and respond appropriately
+ */
+ switch (sacmsg.sc_type) {
+ case SC_STATUS:
+ log(Fp, "Got SC_STATUS message");
+ pmmsg.pm_type = PM_STATUS;
+ pmmsg.pm_state = State;
+ break;
+ case SC_ENABLE:
+ /*note internal state change below*/
+ log(Fp, "Got SC_ENABLE message");
+ pmmsg.pm_type = PM_STATUS;
+ State = PM_ENABLED;
+ pmmsg.pm_state = State;
+ break;
+ case SC_DISABLE:
+ /*note internal state change below*/
+ log(Fp, "Got SC_DISABLE message");
+ pmmsg.pm_type = PM_STATUS;
+ State = PM_DISABLED;
+ pmmsg.pm_state = State;
+ break;
+ case SC_READDB:
+ /*
+ * if this were a fully functional port
+ * monitor it would read _pmtab here
+ * and take appropriate action
+ */
+ log(Fp, "Got SC_READDB message");
+ pmmsg.pm_type = PM_STATUS;
+ pmmsg.pm_state = State;
+ break;
+ default:
+ sprintf(Scratch, "Got unknown message <%d>",
+ sacmsg.sc_type);
+ log(Fp, Scratch);
+ pmmsg.pm_type = PM_UNKNOWN;
+ pmmsg.pm_state = State;
+ break;
+ }
+/*
+ * send back a response to the poll
+ * indicating current state
+ */
+ if (write(sfd, &pmmsg, sizeof(pmmsg)) != sizeof(pmmsg))
+ log(Fp, "sanity response failed");
+ }
+}
+/*
+ * general logging function
+ */
+log(fp, msg)
+ FILE *fp;
+ char *msg;
+{
+ fprintf(fp, "%d; %s\en", getpid(), msg);
+ fflush(fp);
+}
+.fi
+.in -2
+.sp
+
+.SS "The sac.h Header File"
+.sp
+.LP
+The following example shows the sac.h header file.
+.sp
+.in +2
+.nf
+/* length in bytes of a utmpx id */
+# define IDLEN 4
+/* wild character for utmpx ids */
+# define SC_WILDC 0xff
+/* max len in bytes for port monitor tag */
+# define PMTAGSIZE 14
+/*
+ * values for rflag in doconfig()
+ */
+/* don't allow assign operations */
+# define NOASSIGN 0x1
+/* don't allow run or runwait operations */
+# define NORUN 0x2
+/*
+ * message to SAC (header only). This header is forever fixed. The
+ * size field (pm_size) defines the size of the data portion of the
+ * message, which follows the header. The form of this optional data
+ * portion is defined strictly by the message type (pm_type).
+ */
+struct pmmsg {
+ char pm_type; /* type of message */
+ unchar_t pm_state; /* current state of pm */
+ char pm_maxclass; /* max message class this port monitor
+ understands */
+ char pm_tag[PMTAGSIZE + 1]; /* pm's tag */
+ int pm_size; /* size of opt data portion */
+};
+/*
+ * pm_type values
+ */
+# define PM_STATUS 1 /* status response */
+# define PM_UNKNOWN 2 /* unknown message was received */
+/*
+ * pm_state values
+ */
+/*
+ * Class 1 responses
+ */
+# define PM_STARTING 1 /* monitor in starting state */
+# define PM_ENABLED 2 /* monitor in enabled state */
+# define PM_DISABLED 3 /* monitor in disabled state */
+# define PM_STOPPING 4 /* monitor in stopping state */
+/*
+ * message to port monitor
+ */
+struct sacmsg {
+ int sc_size; /* size of optional data portion */
+ char sc_type; /* type of message */
+};
+/*
+ * sc_type values
+ * These represent commands that the SAC sends to a port monitor.
+ * These commands are divided into "classes" for extensibility. Each
+ * subsequent "class" is a superset of the previous "classes" plus
+ * the new commands defined within that "class". The header for all
+ * commands is identical; however, a command may be defined such that
+ * an optional data portion may be sent in addition to the header.
+ * The format of this optional data piece is self-defining based on
+ * the command. The first message sent by the SAC
+ * will always be a class 1 message. The port monitor response
+ * indicates the maximum class that it is able to understand. Another
+ * note is that port monitors should only respond to a message with
+ * an equivalent class response (i.e. a class 1 command causes a
+ * class 1 response).
+ */
+/*
+ * Class 1 commands (currently, there are only class 1 commands)
+ */
+# define SC_STATUS 1 /* status request *
+# define SC_ENABLE 2 /* enable request */
+# define SC_DISABLE 3 /* disable request */
+# define SC_READDB 4 /* read pmtab request */
+/*
+ * `errno' values for Saferrno, note that Saferrno is used by both
+ * pmadm and sacadm and these values are shared between them
+ */
+# define E_BADARGS 1 /* bad args/ill-formed cmd line */
+# define E_NOPRIV 2 /* user not priv for operation */
+# define E_SAFERR 3 /* generic SAF error */
+# define E_SYSERR 4 /* system error */
+# define E_NOEXIST 5 /* invalid specification */
+# define E_DUP 6 /* entry already exists */
+# define E_PMRUN 7 /* port monitor is running */
+# define E_PMNOTRUN 8 /* port monitor is not running */
+# define E_RECOVER 9
+ /* in recovery */
+.fi
+.in -2
+.sp
+
+.SS "Directory Structure"
+.sp
+.LP
+This section gives a description of the \fBSAF\fR files and directories.
+.sp
+.ne 2
+.na
+\fB\fB/etc/saf/_sysconfig\fR\fR
+.ad
+.RS 28n
+The per-system configuration script.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/saf/_sactab\fR\fR
+.ad
+.RS 28n
+The \fBSAC's\fR administrative file. Contains information about the port
+monitors for which the SAC is responsible.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/saf/\fR\fIpmtag\fR\fR
+.ad
+.RS 28n
+The home directory for port monitor \fIpmtag\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/saf/\fR\fIpmtag\fR\fB/_config\fR\fR
+.ad
+.RS 28n
+The per-port monitor configuration script for port monitor pmtag.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/saf/\fR\fIpmtag\fR\fB/_pmtab\fR\fR
+.ad
+.RS 28n
+Port monitor pmtag's administrative file. Contains information about the
+services for which \fIpmtag\fR is responsible.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/saf/\fR\fIpmtag\fR\fB/\fR\fIsvctag\fR\fR
+.ad
+.RS 28n
+The file in which the per-service configuration script for service \fIsvctag\fR
+(available through port monitor \fBpmtag\fR) is placed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/saf/\fR\fIpmtag\fR\fB/_pid\fR\fR
+.ad
+.RS 28n
+The file in which a port monitor writes its process id in the current directory
+and places an advisory lock on the file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/saf/\fR \fBpmtag\fR \fB/_pmpipe\fR\fR
+.ad
+.RS 28n
+The file in which the port monitor receives messages from the \fBSAC\fR and
+\fB\&../_sacpipe\fR and sends return messages to the \fBSAC.\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/saf/_log\fR\fR
+.ad
+.RS 28n
+The \fBSAC's\fR log file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/saf/\fR\fIpmtag\fR\fR
+.ad
+.RS 28n
+The directory for files created by port monitor \fIpmtag,\fR for example its
+log file.
+.RE
+
+.SH LIST OF COMMANDS
+.sp
+.LP
+The following administrative commands relate to \fBSAF.\fR
+.sp
+.ne 2
+.na
+\fB\fBsacadm\fR(8)\fR
+.ad
+.RS 14n
+port monitor administrative command
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpmadm\fR(8)\fR
+.ad
+.RS 14n
+service administration command
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR exec (1),
+.BR sh (1),
+.BR fork (2),
+.BR doconfig (3NSL),
+.BR attributes (7),
+.BR init (8),
+.BR nlsadmin (8),
+.BR pmadm (8),
+.BR sac (8),
+.BR sacadm (8),
+.BR ttyadm (8)
diff --git a/usr/src/man/man8/sar.8 b/usr/src/man/man8/sar.8
new file mode 100644
index 0000000000..f523cd065d
--- /dev/null
+++ b/usr/src/man/man8/sar.8
@@ -0,0 +1,164 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SAR 8 "May 13, 2017"
+.SH NAME
+sar, sa1, sa2, sadc \- system activity report package
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/sa/sadc\fR [\fIt\fR \fIn\fR] [\fIofile\fR]
+.fi
+
+.LP
+.nf
+\fB/usr/lib/sa/sa1\fR [\fIt\fR \fIn\fR]
+.fi
+
+.LP
+.nf
+\fB/usr/lib/sa/sa2\fR [\fB-aAbcdgkmpqruvwy\fR] [\fB-e\fR \fItime\fR] [\fB-f\fR \fIfilename\fR]
+ [\fB-i\fR \fIsec\fR] [\fB-s\fR \fItime\fR]
+.fi
+
+.SH DESCRIPTION
+.LP
+System activity data can be accessed at the special request of a user (see
+\fBsar\fR(1)) and automatically, on a routine basis, as described here. The
+operating system contains several counters that are incremented as various
+system actions occur. These include counters for \fBCPU\fR utilization, buffer
+usage, disk and tape \fBI/O\fR activity, \fBTTY\fR device activity, switching
+and system-call activity, file-access, queue activity, inter-process
+communications, and paging. For more general system statistics, use
+\fBiostat\fR(8), \fBsar\fR(1), or \fBvmstat\fR(8).
+.sp
+.LP
+\fBsadc\fR and two shell procedures, \fBsa1\fR and \fBsa2\fR, are used to
+sample, save, and process this data.
+.sp
+.LP
+\fBsadc\fR, the data collector, samples system data \fIn\fR times, with an
+interval of \fIt\fR seconds between samples, and writes in binary format to
+\fIofile\fR or to standard output. The sampling interval \fIt\fR should be
+greater than 5 seconds; otherwise, the activity of \fBsadc\fR itself may affect
+the sample. If \fIt\fR and \fIn\fR are omitted, a special record is written.
+This facility can be used at system boot time, when booting to a multi-user
+state, to mark the time at which the counters restart from zero. For example,
+when accounting is enabled, the \fBsvc:/system/sar:default\fR service writes
+the restart mark to the daily data file using the command entry:
+.sp
+.in +2
+.nf
+su sys -c "/usr/lib/sa/sadc /var/adm/sa/sa\&'date +%d\&'"
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The shell script \fBsa1\fR, a variant of \fBsadc\fR, is used to collect and
+store data in the binary file \fB/var/adm/sa/sa\fR\fIdd,\fR where \fBdd\fR is
+the current day. The arguments \fIt\fR and \fIn\fR cause records to be written
+\fIn\fR times at an interval of \fIt\fR seconds, or once if omitted. The
+following entries in \fB/var/spool/cron/crontabs/sys\fR will produce records
+every 20 minutes during working hours and hourly otherwise:
+.sp
+.in +2
+.nf
+0 * * * 0-6 /usr/lib/sa/sa1
+20,40 8\(mi17 * * 1\(mi5 /usr/lib/sa/sa1
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+See \fBcrontab\fR(1) for details.
+.sp
+.LP
+The shell script \fBsa2\fR, a variant of \fBsar\fR, writes a daily report in
+the file \fB/var/adm/sa/sar\fR\fIdd.\fR See the \fBOPTIONS\fR section in
+\fBsar\fR(1) for an explanation of the various options. The following entry in
+\fB/var/spool/cron/crontabs/sys\fR will report important activities hourly
+during the working day:
+.sp
+.in +2
+.nf
+5 18 * * 1\(mi5 /usr/lib/sa/sa2 \fB-s\fR 8:00 \fB-e\fR 18:01 \fB-i\fR 1200 \fB-A\fR
+.fi
+.in -2
+.sp
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/tmp/sa.adrfl\fR\fR
+.ad
+.sp .6
+.RS 4n
+address file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/adm/sa/sa\fR\fBdd\fR\fR
+.ad
+.sp .6
+.RS 4n
+Daily data file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/adm/sa/sar\fR\fBdd\fR\fR
+.ad
+.sp .6
+.RS 4n
+Daily report file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/spool/cron/crontabs/sys\fR\fR
+.ad
+.sp .6
+.RS 4n
+
+.RE
+
+.SH SEE ALSO
+.LP
+.BR crontab (1),
+.BR sar (1),
+.BR svcs (1),
+.BR timex (1),
+.BR attributes (7),
+.BR smf (7),
+.BR iostat (8),
+.BR svcadm (8),
+.BR vmstat (8)
+.sp
+.LP
+\fI\fR
+.SH NOTES
+.LP
+The \fBsar\fR service is managed by the service management facility,
+\fBsmf\fR(7), under the service identifier:
+.sp
+.in +2
+.nf
+svc:/system/sar
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Administrative actions on this service, such as enabling, disabling, or
+requesting restart, can be performed using \fBsvcadm\fR(8). The service's
+status can be queried using the \fBsvcs\fR(1) command.
diff --git a/usr/src/man/man8/sasinfo.8 b/usr/src/man/man8/sasinfo.8
new file mode 100644
index 0000000000..8db157712f
--- /dev/null
+++ b/usr/src/man/man8/sasinfo.8
@@ -0,0 +1,733 @@
+'\" te
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
+.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SASINFO 8 "April 9, 2016"
+.SH NAME
+sasinfo \- Serial Attached SCSI HBA port command line interface
+.SH SYNOPSIS
+.LP
+.nf
+\fBsasinfo\fR hba [\fB-v\fR] [\fIHBA_Name\fR]...
+.fi
+
+.LP
+.nf
+\fBsasinfo\fR hba-port [\fB-lvy\fR] [\fB-a\fR \fIHBA_Name\fR] [\fIHBA_port_nam\fR]...
+.fi
+
+.LP
+.nf
+\fBsasinfo\fR expander [\fB-vt\fR] [\fB-p\fR \fIHBA_port_Name\fR] [\fIExpander_SAS_Addr\fR]...
+.fi
+
+.LP
+.nf
+\fBsasinfo\fR target-port [\fB-s\fR | \fB-v\fR] [\fITarget_port_SAS_Addr\fR]...
+.fi
+
+.LP
+.nf
+\fBsasinfo\fR logical-unit | lu [\fB-v\fR] [\fIdevice_path\fR]...
+.fi
+
+.LP
+.nf
+\fBsasinfo\fR [\fB-V\fR]
+.fi
+
+.LP
+.nf
+\fBsasinfo\fR [\fB-?\fR]
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBsasinfo\fR utility is a command line interface that collects
+administrative information on Serial Attached SCSI-2 (SAS-2) host bus adapter
+(HBA) that supports the Storage Management HBA API (SM-HBA). The utility
+reports attributes of HBA ports and of expander devices and SCSI target devices
+that might be connected to those HBA ports.
+.sp
+.LP
+\fBsasinfo\fR is implemented as a set of subcommands, described below.
+.SH SUBCOMMANDS
+.LP
+The following subcommands are supported by \fBsasinfo\fR.
+.sp
+.ne 2
+.na
+\fB\fBhba\fR\fR
+.ad
+.sp .6
+.RS 4n
+Lists information for the HBA referenced by the specified \fIHBA_name\fR. If
+\fIHBA_name\fR is not specified, all HBAs on the host will be listed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBhba-port\fR\fR
+.ad
+.sp .6
+.RS 4n
+Lists information for the HBA port referenced by the specified
+\fIHBA_port_Name\fR. If \fIHBA_port_Name\fR is not specified, all HBA ports on
+the host will be listed. Note that HBA ports can be dynamically
+configured/unconfigured so that the number of HBA ports on an HBA can change as
+connections to target devices are established. With no connections to a storage
+device, no HBA port is configured.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBexpander\fR\fR
+.ad
+.sp .6
+.RS 4n
+Lists hierarchical view of the expander referenced by the specified
+\fIExpander_SAS_Addr\fR. If no argument is specified, all expanders that are
+visible across all HBA ports on the host will be listed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBtarget-port\fR\fR
+.ad
+.sp .6
+.RS 4n
+Lists information for those target ports referenced by
+\fITarget_port_SAS_Addr\fR address. If no argument is specified, all target
+ports that are visible on the host will be listed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBlogical-unit\fR | \fBlu\fR\fR
+.ad
+.sp .6
+.RS 4n
+Lists the logical unit referenced by the specified \fIdevice_path\fR. If
+\fIdevice_path\fR is not specified, all SAS logical units will be listed,
+including the SAS Management Protocol (SMP) target port.
+.RE
+
+.SH OPTIONS
+.LP
+The following options are supported.
+.sp
+.ne 2
+.na
+\fB\fB-?\fR, \fB--help\fR\fR
+.ad
+.sp .6
+.RS 4n
+Displays usage information
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-a\fR, \fB--hba\fR \fIHBA_Name\fR\fR
+.ad
+.sp .6
+.RS 4n
+Retrieve HBA port information from the \fIHBA_Name\fR of an HBA on the host.
+The \fB-a\fR option can only be used with the \fBhba-port\fR subcommand.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR, \fB--phy-linkstat\fR\fR
+.ad
+.sp .6
+.RS 4n
+Lists the link error statistics information for the \fBphy\fRs on the HBA port
+referenced by the specified \fIHBA_port_Name\fR or all HBA ports if no HBA port
+is specified. This option is used only with the \fBhba-port\fR subcommand.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR \fIHBA_port_SAS_Addr\fR, \fB--port\fR \fIHBA_port_SAS_Addr\fR\fR
+.ad
+.sp .6
+.RS 4n
+Retrieve remote port information from the \fIHBA_port_SAS_Addr\fR of the local
+HBA port on the host. The \fB-p\fR option can be used only with the
+\fBexpander\fR subcommand.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR, \fB--scsi\fR\fR
+.ad
+.sp .6
+.RS 4n
+Lists SCSI attributes for target ports that are requested for display. This
+option is only used for the \fBtarget-port\fR subcommand.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR, \fB--verbose\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display details on hardware information, such as SAS address, topology device,
+and so forth, based on which subcommand is invoked.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-V\fR, \fB--version\fR\fR
+.ad
+.sp .6
+.RS 4n
+Displays the version information.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-y\fR, \fB--phy\fR\fR
+.ad
+.sp .6
+.RS 4n
+Lists the \fBphy\fR information on the HBA port specified by
+\fIHBA_port_Name\fR or all HBA ports if no HBA port is specified. This option
+is used only with the \fBhba-port\fR subcommand.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRListing All HBAs
+.sp
+.LP
+The following command lists all HBAs on the host.
+
+.sp
+.in +2
+.nf
+# \fBsasinfo hba\fR
+HBA Name: SUNW-pmcs-0
+HBA Name: SUNW-pmcs-1
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRListing All HBAs with Details
+.sp
+.LP
+The following command lists all HBAs on the host, along with related details.
+Note that each HBA has two HBA ports configured, with each HBA port connected
+to a storage device.
+
+.sp
+.in +2
+.nf
+# \fBsasinfo hba -v\fR
+HBA Name: SUNW-pmcs-0
+ Manufacturer: sun
+ Model: SAS Gen-2
+ Firmware Version: 1.1
+ FCode/BIOS Version: 1.1
+ Serial Number: 111-11111
+ Driver Name: smvsl
+ Driver Version: 1.1
+ Number of HBA Ports: 2
+HBA Name: SUNW-pmcs-1
+ Manufacturer: sun
+ Model: SAS Gen-2
+ Firmware Version: 1.1
+ FCode/BIOS Version: 1.1
+ Serial Number: 111-11111
+ Driver Name: smvsl
+ Driver Version: 1.1
+ Number of HBA Ports: 2
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRListing All HBA Ports
+.sp
+.LP
+The following command lists all HBA ports on the host.
+
+.sp
+.in +2
+.nf
+# \fBsasinfo hba-port\fR
+HBA Name: SUNW-pmcs-0
+ HBA Port Name: /dev/cfg/c1
+ HBA Port Name: /dev/cfg/c2
+HBA Name: SUNW-pmcs-1
+ HBA Port Name: /dev/cfg/c3
+ HBA Port Name: /dev/cfg/c4
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 4 \fRListing all HBA Ports with Details
+.sp
+.LP
+The following command lists all HBA ports, with accompanying details.
+
+.sp
+.in +2
+.nf
+# \fBsasinfo hba-port -v\fR
+HBA Name: SUNW-pmcs-0
+ HBA Port Name: /dev/cfg/c1
+ Type: sas-device
+ State: online
+ Local SAS Address: 5000c50000d756aa
+ Attached Port SAS Address: 50800201a5a502bf
+ Number of Phys: 4
+ HBA Port Name: /dev/cfg/c25000c50000d756cc
+ Type: sas-device
+ State: online
+ Local SAS Address: 5000c50000d756aa
+ Attached Port SAS Address: 50800201a5a503bf
+ Number of Phys: 4
+HBA Name: SUNW-pmcs-1
+ HBA Port Name: /dev/cfg/c3
+ Type: sas-device
+ State: online
+ Local SAS Address: 5000c50000d756cc
+ Attached Port SAS Address: 50800201a5a504bf
+ Number of Phys: 4
+ HBA Port Name: /dev/cfg/c4
+ Type: sas-device
+ State: online
+ Local SAS Address: 5000c50000d756cc
+ Attached Port SAS Address: 50800201a5a505bf
+ Number of Phys: 4
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 5 \fRListing \fBphy\fR Information for All HBA Ports
+.sp
+.LP
+The following command lists \fBphy\fR information for all HBA ports.
+
+.sp
+.in +2
+.nf
+# \fBsasinfo hba-port -y\fR
+HBA Name: SUNW-pmcs-0
+ HBA Port Name: /dev/cfg/c1
+ Phy Information:
+ Identifier: 0
+ State: enabled
+ HardwareLinkRate(Min/Max): 1.5Gbit/3Gbit
+ ProgrammedLinkRate(Min/Max): 1.5Gbit/3Gbit
+ NegotiatedLinkRate: 3Gbit
+ Identifier: 1
+ State: enabled
+ HardwareLinkRate(Min/Max): 1.5Gbit/3Gbit
+ ProgrammedLinkRate(Min/Max): 1.5Gbit/3Gbit
+ NegotiatedLinkRate: 3Gbit
+ Identifier: 2
+ State: enabled
+ HardwareLinkRate(Min/Max): 1.5Gbit/3Gbit
+ ProgrammedLinkRate(Min/Max): 1.5Gbit/3Gbit
+ NegotiatedLinkRate: 3Gbit
+ Identifier: 3
+ State: enabled
+ HardwareLinkRate(Min/Max): 1.5Gbit/3Gbit
+ ProgrammedLinkRate(Min/Max): 1.5Gbit/3Gbit
+ NegotiatedLinkRate: 3Gbit
+ HBA Port Name: /dev/cfg/c2
+ Phy Information:
+ Identifier: 4
+ State: enabled
+ HardwareLinkRate(Min/Max): 1.5Gbit/3Gbit
+ ProgrammedLinkRate(Min/Max): 1.5Gbit/3Gbit
+ NegotiatedLinkRate: 3Gbit
+ Identifier: 5
+ State: enabled
+ HardwareLinkRate(Min/Max): 1.5Gbit/3Gbit
+ ProgrammedLinkRate(Min/Max): 1.5Gbit/3Gbit
+ NegotiatedLinkRate: 3Gbit
+ Identifier: 6
+ State: enabled
+ HardwareLinkRate(Min/Max): 1.5Gbit/3Gbit
+ ProgrammedLinkRate(Min/Max): 1.5Gbit/3Gbit
+ NegotiatedLinkRate: 3Gbit
+ Identifier: 7
+ State: enabled
+ HardwareLinkRate(Min/Max): 1.5Gbit/3Gbit
+ ProgrammedLinkRate(Min/Max): 1.5Gbit/3Gbit
+ NegotiatedLinkRate: 3Gbit
+HBA Name: SUNW-pmcs-1
+ HBA Port Name: /dev/cfg/c3
+ Phy Information:
+ Identifier: 0
+ State: enabled
+ HardwareLinkRate(Min/Max): 1.5Gbit/3Gbit
+ ProgrammedLinkRate(Min/Max): 1.5Gbit/3Gbit
+ NegotiatedLinkRate: 3Gbit
+ Identifier: 1
+ State: enabled
+ HardwareLinkRate(Min/Max): 1.5Gbit/3Gbit
+ ProgrammedLinkRate(Min/Max): 1.5Gbit/3Gbit
+ NegotiatedLinkRate: 3Gbit
+ Identifier: 2
+ State: enabled
+ HardwareLinkRate(Min/Max): 1.5Gbit/3Gbit
+ ProgrammedLinkRate(Min/Max): 1.5Gbit/3Gbit
+ NegotiatedLinkRate: 3Gbit
+ Identifier: 3
+ State: enabled
+ HardwareLinkRate(Min/Max): 1.5Gbit/3Gbit
+ ProgrammedLinkRate(Min/Max): 1.5Gbit/3Gbit
+ NegotiatedLinkRate: 3Gbit
+ HBA Port Name: /dev/cfg/c4
+ Phy Information:
+ Identifier: 4
+ State: enabled
+ HardwareLinkRate(Min/Max): 1.5Gbit/3Gbit
+ ProgrammedLinkRate(Min/Max): 1.5Gbit/3Gbit
+ NegotiatedLinkRate: 3Gbit
+ Identifier: 5
+ State: enabled
+ HardwareLinkRate(Min/Max): 1.5Gbit/3Gbit
+ ProgrammedLinkRate(Min/Max): 1.5Gbit/3Gbit
+ NegotiatedLinkRate: 3Gbit
+ Identifier: 6
+ State: enabled
+ HardwareLinkRate(Min/Max): 1.5Gbit/3Gbit
+ ProgrammedLinkRate(Min/Max): 1.5Gbit/3Gbit
+ NegotiatedLinkRate: 3Gbit
+ Identifier: 7
+ State: enabled
+ HardwareLinkRate(Min/Max): 1.5Gbit/3Gbit
+ ProgrammedLinkRate(Min/Max): 1.5Gbit/3Gbit
+ NegotiatedLinkRate: 3Gbit
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 6 \fRListing \fBphy\fR Link Error Statistics for a Specific HBA Port
+.sp
+.LP
+The following command lists \fBphy\fR link error statistics for a particular
+port.
+
+.sp
+.in +2
+.nf
+# \fBsasinfo hba-port -ly /dev/cfg/c1\fR
+HBA Name: SUNW-pmcs-0
+ HBA Port Name: /dev/cfg/c1
+ Phy Information:
+ Identifier: 0
+ State: enabled
+ HardwareLinkRate(Min/Max): 1.5Gbit/3Gbit
+ ProgrammedLinkRate(Min/Max): 1.5Gbit/3Gbit
+ NegotiatedLinkRate: 3Gbit
+ Link Error Statistics:
+ Invalid Dword: 0
+ Running Disparity Error: 0
+ Loss of Dword Sync: 0
+ Reset Problem: 0
+ Identifier: 1
+ State: enabled
+ HardwareLinkRate(Min/Max): 1.5Gbit/3Gbit
+ ProgrammedLinkRate(Min/Max): 1.5Gbit/3Gbit
+ NegotiatedLinkRate: 3Gbit
+ Link Error Statistics:
+ Invalid Dword: 0
+ Running Disparity Error: 0
+ Loss of Dword Sync: 0
+ Reset Problem: 0
+ Identifier: 2
+ State: enabled
+ HardwareLinkRate(Min/Max): 1.5Gbit/3Gbit
+ ProgrammedLinkRate(Min/Max): 1.5Gbit/3Gbit
+ NegotiatedLinkRate: 3Gbit
+ Link Error Statistics:
+ Invalid Dword: 0
+ Running Disparity Error: 0
+ Loss of Dword Sync: 0
+ Reset Problem: 0
+ Identifier: 3
+ State: enabled
+ HardwareLinkRate(Min/Max): 1.5Gbit/3Gbit
+ ProgrammedLinkRate(Min/Max): 1.5Gbit/3Gbit
+ NegotiatedLinkRate: 3Gbit
+ Link Error Statistics:
+ Invalid Dword: 0
+ Running Disparity Error: 0
+ Loss of Dword Sync: 0
+ Reset Problem: 0
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 7 \fRListing Expanders Connected to an HBA Port
+.sp
+.LP
+The following command lists all expanders that are visible through the
+specified HBA port.
+
+.sp
+.in +2
+.nf
+# \fBsasinfo expander -p /dev/cfg/c1\fR
+HBA Name: SUNW-pmcs-0
+ HBA Port Name: /dev/cfg/c1
+ Expander SAS Address(Tier 1): 50800201a5a502bf
+ Expander SAS Address(Tier 2): 50800201a5a50233
+ Expander SAS Address(Tier 2); 5000c5000d2da812
+ Expander SAS Address(Tier 1): 50800201a5a503bf
+ Expander SAS Address(Tier 2): 50800201a5a502d2
+ Expander SAS Address(Tier 2); 5000c5000d2da823
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 8 \fRListing Detailed Information on Expanders
+.sp
+.LP
+The following command lists detailed information on all expanders that are
+visible through the specified HBA port.
+
+.sp
+.in +2
+.nf
+# \fBsasinfo expander -v -p /dev/cfg/c1\fR
+HBA Name: SUNW-pmcs-0
+ HBA Port Name: /dev/cfg/c1
+ Expander SAS Address(Tier 1): 50800201a5a502bf
+ OS Device Name: /dev/smp/expd0
+ State: online
+ Expander SAS Address(Tier 2): 50800201a5a50233
+ OS Device Name: /dev/smp/expd2
+ State: online
+ Expander SAS Address(Tier 2); 5000c5000d2da812
+ OS Device Name: /dev/smp/expd3
+ State: online
+ Expander SAS Address(Tier 1): 50800201a5a503bf
+ OS Device Name: /dev/smp/expd1
+ State: online
+ Expander SAS Address(Tier 2): 50800201a5a502d2
+ OS Device Name: /dev/smp/expd3
+ State: online
+ Expander SAS Address(Tier 2); 5000c5000d2da823
+ OS Device Name: /dev/smp/expd4
+ State: online
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 9 \fRListing Target Ports Attached to Expanders
+.sp
+.LP
+The following command lists all target ports that are attached to expanders
+connected to a specified HBA port.
+
+.sp
+.in +2
+.nf
+# \fBsasinfo expander -t -p /dev/cfg/c1\fR
+HBA Name: SUNW-pmcs-0
+ HBA Port Name: /dev/cfg/c1
+ Expander SAS Address(Tier 1): 50800201a5a502bf
+ Target Port SAS Address: 50800201a5a504f1
+ Expander SAS Address(Tier 2): 50800201a5a50233
+ Target Port SAS Address: 50800201a5a502be
+ Target Port SAS Address: 5000c5000d2da8b2
+ Expander SAS Address(Tier 2); 5000c5000d2da812
+ Target Port SAS Address: 50800201a5a502be
+ Target Port SAS Address: 50800201a5a508b2
+ Expander SAS Address(Tier 1): 50800201a5a503bf
+ Target Port SAS Address: 50800201a5a50421
+ Expander SAS Address(Tier 2): 50800201a5a502d2
+ Target Port SAS Address: 50800201a5a503be
+ Target Port SAS Address: 5000c5000d2da7be
+ Expander SAS Address(Tier 2); 5000c5000d2da823
+ Target Port SAS Address: 50800201a5a503be
+ Target Port SAS Address: 5000c5000d2da7be
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 10 \fRListing Target Port Information
+.sp
+.LP
+The following command lists all target ports discovered on the host.
+
+.sp
+.in +2
+.nf
+# \fBsasinfo target-port\fR
+Target Port SAS Address: 5000c5000bae4009
+Target Port SAS Address: 5000c5000baef4b1
+Target Port SAS Address: 5000c5000bae3fe1
+Target Port SAS Address: 5000c5000bae49d9
+Target Port SAS Address: 5000c5000bae36c5
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 11 \fRListing Target Port Information with Topology Details
+.sp
+.LP
+The following command lists all target ports with the HBA port and expander
+that they are connected to.
+
+.sp
+.in +2
+.nf
+# \fBsasinfo target-port -v\fR
+Target Port SAS Address: 5000c5000bae4009
+ Type: SAS Device
+ HBA Port Name: /dev/cfg/c7
+ Expander Device SAS Address: 500e004aaaaaaa3f
+ HBA Port Name: /dev/cfg/c5
+ Expander Device SAS Address: 500e004aaaaaaa3f
+Target Port SAS Address: 5000c5000baef4b1
+ Type: SAS Device
+ HBA Port Name: /dev/cfg/c7
+ Expander Device SAS Address: 500e004aaaaaaa3f
+ HBA Port Name: /dev/cfg/c5
+ Expander Device SAS Address: 500e004aaaaaaa3f
+Target Port SAS Address: 5000c5000bae3fe1
+ Type: SAS Device
+ HBA Port Name: /dev/cfg/c7
+ Expander Device SAS Address: 500e004aaaaaaa3f
+ HBA Port Name: /dev/cfg/c5
+ Expander Device SAS Address: 500e004aaaaaaa3f
+Target Port SAS Address: 5000c5000bae49d9
+ Type: SAS Device
+ HBA Port Name: /dev/cfg/c7
+ Expander Device SAS Address: 500e004aaaaaaa3f
+ HBA Port Name: /dev/cfg/c5
+ Expander Device SAS Address: 500e004aaaaaaa3f
+Target Port SAS Address: 5000c5000bae36c5
+ Type: SAS Device
+ HBA Port Name: /dev/cfg/c7
+ Expander Device SAS Address: 500e004aaaaaaa3f
+ HBA Port Name: /dev/cfg/c5
+ Expander Device SAS Address: 500e004aaaaaaa3f
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 12 \fRListing Target Ports with SCSI Information
+.sp
+.LP
+The following command lists all target port details, including SCSI information
+for each target port.
+
+.sp
+.in +2
+.nf
+# \fBsasinfo target-port -s 5000c5000bae4009\fR
+Target Port SAS Address: 5000c5000bae4009
+ Type: SAS Device
+ HBA Port Name: /dev/cfg/c7
+ Expander Device SAS Address: 500e004aaaaaaa3f
+ LUN : 0
+ OS Device Name : /dev/rdsk/c6t5000C5000BAE400Bd0s2
+ Vendor: Sun
+ Product: J4400
+ Device Type: Disk
+ HBA Port Name: /dev/cfg/c5
+ Expander Device SAS Address: 500e004aaaaaaa3f
+ LUN : 0
+ OS Device Name : /dev/rdsk/c6t5000C5000BAE400Bd0s2
+ Vendor: Sun
+ Product: J4400
+ Device Type: Disk
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 13 \fRListing the Logical Units
+.sp
+.LP
+The following command lists the logical units on a host.
+
+.sp
+.in +2
+.nf
+# \fBsasinfo logical-unit\fR
+OS Device Name: /dev/rdsk/c4t50020F2300B4904Ed0s2
+OS Device Name: /dev/rdsk/c4t50020F230000B4AFd0s2
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 14 \fRListing Additional Information on Logical Units
+.sp
+.LP
+The following command displays additional logical unit information using the
+\fB-v\fR option for device \fB/dev/rmt/On\fR.
+
+.sp
+.in +2
+.nf
+# \fBsasinfo lu -v\fR
+OS Device Name: /dev/rdsk/c4t50020F2300B4904Ed0s2
+ HBA Port Name: /dev/cfg/c1
+ Target Port SAS Address: 50020f2300b4904e
+ LUN: 0
+ Vendor: Sun
+ Product: J4400
+ Device Type: Disk
+OS Device Name: /dev/rdsk/c4t50020F230000B4AFd0s2
+ HBA Port Name: /dev/cfg/c1
+ Target Port SAS Address: 50020f230063100b
+ LUN: 0
+ Vendor: Sun
+ Product: J4400
+ Device Type: Disk
+.fi
+.in -2
+.sp
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Committed
+.TE
+
+.SH SEE ALSO
+.LP
+.BR attributes (7)
diff --git a/usr/src/man/man8/savecore.8 b/usr/src/man/man8/savecore.8
new file mode 100644
index 0000000000..099d3671e4
--- /dev/null
+++ b/usr/src/man/man8/savecore.8
@@ -0,0 +1,220 @@
+'\" te
+.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright (c) 1983 Regents of the University of California. All rights reserved. The Berkeley software License Agreement specifies the terms and conditions for redistribution.
+.\" Copyright 2013 Nexenta Systems, Inc. All Rights Reserved.
+.\" Copyright 2019 Joyent, Inc.
+.TH SAVECORE 8 "Jun 15, 2019"
+.SH NAME
+savecore \- save a crash dump of the operating system
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/bin/savecore\fR [\fB-L\fR | \fB-r\fR] [\fB-vd\fR] [\fB-k\fR \fIkeyfile\fR] [\fB-f\fR \fIdumpfile\fR] [\fIdirectory\fR]
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBsavecore\fR utility saves a crash dump of the kernel (assuming that one
+was made) and writes a reboot message in the shutdown log. By default, it is
+invoked by the \fBdumpadm\fR service each time the system boots.
+.sp
+.LP
+Depending on the \fBdumpadm\fR(8) configuration \fBsavecore\fR saves either
+the compressed or uncompressed crash dump. The compressed crash dump is saved in
+the file \fIdirectory\fR\fB/vmdump.\fR\fIn\fR.
+\fBsavecore\fR saves the uncompressed crash dump data in the file
+\fIdirectory\fR\fB/vmcore.\fR\fIn\fR and the kernel's namelist in
+\fIdirectory\fR\fB/unix.\fR\fIn.\fR The trailing \fIn\fR in the
+pathnames is replaced by a number which grows every time \fBsavecore\fR is run
+in that directory.
+.sp
+.LP
+Before writing out a crash dump, \fBsavecore\fR reads a number from the file
+\fIdirectory\fR\fB/minfree\fR. This is the minimum number of kilobytes that
+must remain free on the file system containing \fIdirectory\fR. If after saving
+the crash dump the file system containing \fIdirectory\fR would have less free
+space the number of kilobytes specified in \fBminfree\fR, the crash dump is not
+saved. if the \fBminfree\fR file does not exist, \fBsavecore\fR assumes a
+\fBminfree\fR value of 1 megabyte.
+.sp
+.LP
+The \fBsavecore\fR utility also logs a reboot message using facility
+\fBLOG_AUTH\fR (see \fBsyslog\fR(3C)). If the system crashed as a result of a
+panic, \fBsavecore\fR logs the panic string too.
+.SH OPTIONS
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-d\fR\fR
+.ad
+.RS 15n
+Disregard dump header valid flag. Force \fBsavecore\fR to attempt to save a
+crash dump even if the header information stored on the dump device indicates
+the dump has already been saved.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR \fIdumpfile\fR\fR
+.ad
+.RS 15n
+Uncompress and save a crash dump and kernel namelist data from the specified
+compressed dump file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-k\fR \fIkeyfile\fR\fR
+.ad
+.RS 15n
+Specifies that the dump should be decrypted based on the key found
+in \fIkeyfile\fR. Encrypted dumps are always decrypted before being stored
+in the file system, and must always be stored compressed. (That is,
+decompression can only occur on a decrypted dump.) The key must match the
+key specified when dump encryption is enabled via \fBdumpadm\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-L\fR\fR
+.ad
+.RS 15n
+Save a crash dump of the live running system, without actually
+rebooting or altering the system in any way. This option forces \fBsavecore\fR
+to save a live snapshot of the system to the dump device, and then immediately
+to retrieve the data and to write it out to a new set of crash dump files in
+the specified directory. Live system crash dumps can only be performed if you
+have configured your system to have a dedicated dump device using
+\fBdumpadm\fR(8).
+.sp
+\fBsavecore\fR \fB-L\fR does not suspend the system, so the contents of memory
+continue to change while the dump is saved. This means that live crash dumps
+are not fully self-consistent.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-r\fR\fR
+.ad
+.RS 15n
+Open the dump device or file as read-only, and don't update the dump header
+or do anything else that might modify the crash dump. This option can be used
+to recover a crash dump from a read-only device. This flag cannot be used in
+conjunction with \fB\fB-L\fR\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.RS 15n
+Verbose. Enables verbose error messages from \fBsavecore\fR.
+.RE
+
+.SH OPERANDS
+.LP
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fB\fIdirectory\fR\fR
+.ad
+.RS 13n
+Save the crash dump files to the specified directory. If \fIdirectory\fR is not
+specified, \fBsavecore\fR saves the crash dump files to the default
+\fBsavecore\fR \fIdirectory\fR, configured by \fBdumpadm\fR(8).
+.RE
+
+.SH FILES
+.ne 2
+.na
+\fB\fIdirectory\fR\fB/vmdump.\fR\fIn\fR\fR
+.ad
+.RS 29n
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIdirectory\fR\fB/vmcore.\fR\fIn\fR\fR
+.ad
+.RS 29n
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIdirectory\fR\fB/unix.\fR\fIn\fR\fR
+.ad
+.RS 29n
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIdirectory\fR\fB/bounds\fR\fR
+.ad
+.RS 29n
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIdirectory\fR\fB/minfree\fR\fR
+.ad
+.RS 29n
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/crash/\&`uname \fR\fB-n\fR\fB\&`\fR\fR
+.ad
+.RS 29n
+default crash dump directory
+.RE
+
+.SH SEE ALSO
+.LP
+.BR adb (1),
+.BR mdb (1),
+.BR svcs (1),
+.BR syslog (3C),
+.BR attributes (7),
+.BR smf (7),
+.BR dumpadm (8),
+.BR svcadm (8)
+.SH NOTES
+.LP
+The system crash dump service is managed by the service management facility,
+\fBsmf\fR(7), under the service identifier:
+.sp
+.in +2
+.nf
+svc:/system/dumpadm:default
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Administrative actions on this service, such as enabling, disabling, or
+requesting restart, can be performed using \fBsvcadm\fR(8). The service's
+status can be queried using the \fBsvcs\fR(1) command.
+.sp
+.LP
+If the dump device is also being used as a swap device, you must run
+\fBsavecore\fR very soon after booting, before the swap space containing the
+crash dump is overwritten by programs currently running.
diff --git a/usr/src/man/man8/sbdadm.8 b/usr/src/man/man8/sbdadm.8
new file mode 100644
index 0000000000..b46421779d
--- /dev/null
+++ b/usr/src/man/man8/sbdadm.8
@@ -0,0 +1,267 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SBDADM 8 "April 9, 2016"
+.SH NAME
+sbdadm \- SCSI Block Disk command line interface
+.SH SYNOPSIS
+.LP
+.nf
+\fBsbdadm\fR \fBcreate-lu\fR [\fB-s\fR, \fB--size\fR \fIsize\fR] \fIfilename\fR
+.fi
+
+.LP
+.nf
+\fBsbdadm\fR \fBdelete-lu\fR \fIlu_name\fR
+.fi
+
+.LP
+.nf
+\fBsbdadm\fR \fBimport-lu\fR \fIlu_name\fR
+.fi
+
+.LP
+.nf
+\fBsbdadm\fR \fBlist-lu\fR \fIlu_name\fR
+.fi
+
+.LP
+.nf
+\fBsbdadm\fR \fBmodify-lu\fR [\fB-s\fR, \fB--size\fR \fIsize\fR] \fIlu_name\fR | \fIfilename\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBsbdadm\fR command creates and manages SCSI-block-device-based logical
+units that are registered with the SCSI Target Mode Framework (STMF).
+.SH SUBCOMMANDS
+.LP
+The \fBsbdadm\fR command supports the subcommands listed below. Note that if
+you enter a question mark as an argument to the command (\fBsbdadm ?\fR),
+\fBsbdadm\fR responds with a help display.
+.sp
+.ne 2
+.na
+\fB\fBcreate-lu\fR [\fB-s\fR, \fB--size\fR \fIsize\fR] \fIfilename\fR\fR
+.ad
+.sp .6
+.RS 4n
+Create a logical unit that can be registered with the STMF. For the \fB-s\fR
+option, \fIsize\fR is an integer followed by one of the following letters, to
+indicate a unit of size:
+.sp
+.ne 2
+.na
+\fB\fBk\fR\fR
+.ad
+.RS 5n
+kilobyte
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBm\fR\fR
+.ad
+.RS 5n
+megabyte
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBg\fR\fR
+.ad
+.RS 5n
+gigabyte
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBt\fR\fR
+.ad
+.RS 5n
+terabyte
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBp\fR\fR
+.ad
+.RS 5n
+petabyte
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBe\fR\fR
+.ad
+.RS 5n
+exabyte
+.RE
+
+If you do not specify \fIsize\fR, the size defaults to the size of
+\fIfilename\fR.
+.sp
+The size specified can exceed the size of the file or device.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdelete-lu\fR \fIlu_name\fR\fR
+.ad
+.sp .6
+.RS 4n
+Deletes an existing logical unit that was created using \fBsbdadm create-lu\fR.
+This effectively unloads the logical unit from the STMF framework. Any existing
+data on the logical unit remains intact.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBimport-lu\fR \fIlu_name\fR\fR
+.ad
+.sp .6
+.RS 4n
+Imports and loads a logical unit into the STMF that was previously created
+using \fBsbdadm create-lu\fR and was since deleted from the STMF using
+\fBsbdadm delete-lu\fR. On success, the logical unit is again made available to
+the STMF. \fIfilename\fR is the filename used in the \fBsbdadm create-lu\fR
+command for this logical unit.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBlist-lu\fR\fR
+.ad
+.sp .6
+.RS 4n
+List all logical units that were created using the \fBsbdadm create-lu\fR
+command.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmodify-lu\fR [\fB-s\fR, \fB--size\fR \fIsize\fR] \fIlu_name\fR |
+\fIfilename\fR\fR
+.ad
+.sp .6
+.RS 4n
+Modifies attributes of an logical unit created using the \fBsbdadm create-lu\fR
+command. For the \fB-s\fR option, \fIsize\fR is an integer value followed by a
+unit specifier. The unit specifiers are as described above under
+\fBcreate-lu\fR. When this option is specified, the existing size of the
+logical unit is changed to the new size.
+.sp
+The size specified can exceed the size of the file or device represented by
+\fIlu_name\fR.
+.RE
+
+.SH OPERANDS
+.LP
+\fBsbdadm\fR use the following operands:
+.sp
+.ne 2
+.na
+\fB\fIfilename\fR\fR
+.ad
+.sp .6
+.RS 4n
+Name of an existing file or a fully qualified path to a raw block device.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIlu_name\fR\fR
+.ad
+.sp .6
+.RS 4n
+The 32-byte hexadecimal representation of the logical unit.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRCreating a Logical Unit
+.sp
+.LP
+The following series of commands creates a 10-gigabyte logical unit.
+
+.sp
+.in +2
+.nf
+# \fBtouch /export/lun/0\fR
+# \fBsbdadm create-lu -s 10g /export/lun/0\fR
+# \fBsbdadm create-lu /dev/rdsk/c1t1d0s0\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRListing Logical Units
+.sp
+.LP
+The following command lists all logical units.
+
+.sp
+.in +2
+.nf
+# \fBsbdadm list-lu\fR
+Found 2 LU(s)
+
+ GUID DATA SIZE SOURCE
+-------------------------------- ----------- ------
+6000ae4000144f21d92c47b0dd650002 10737352704 /export/lun/0
+6000ae4000144f21d92c47b0de300032 134283264 /dev/rdsk/c1t1d0s0
+.fi
+.in -2
+.sp
+
+.SH EXIT STATUS
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.sp .6
+.RS 4n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnon-zero\fR\fR
+.ad
+.sp .6
+.RS 4n
+An error occurred.
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Obsolete Committed
+.TE
+
+.SH SEE ALSO
+.LP
+.BR attributes (7),
+.BR stmfadm (8)
diff --git a/usr/src/man/man8/scadm.8 b/usr/src/man/man8/scadm.8
new file mode 100644
index 0000000000..5795641d3c
--- /dev/null
+++ b/usr/src/man/man8/scadm.8
@@ -0,0 +1,1076 @@
+'\" te
+.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SCADM 8 "Dec 20, 2005"
+.SH NAME
+scadm \- administer System Controller (SC)
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/platform/\fIplatform-name\fR/sbin/scadm\fR \fIsubcommand\fR [\fIoption\fR]
+ [\fIargument\fR]...
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBscadm\fR utility administers the System Controller (\fBSC\fR). This
+utility allows the host server to interact with the \fBSC\fR.
+.sp
+.LP
+The \fBscadm\fR utility \fBmust\fR be run as root.
+.sp
+.LP
+The interface, output, and location in the directory hierarchy for \fBscadm\fR
+are uncommitted and might change.
+.sp
+.LP
+\fIplatform-name\fR is the name of the platform implementation. Use the
+\fBuname\fR \fB-i\fR command to identify the platform implementation. See
+\fBuname\fR(1).
+.sp
+.LP
+The \fBscadm\fR utility has a number of subcommands. Some subcommands have
+specific options and arguments associated with them. See \fBSUBCOMMANDS\fR,
+\fBOPTIONS\fR, \fBOPERANDS\fR, and \fBUSAGE\fR.
+.SS "SUBCOMMANDS"
+.sp
+.LP
+Subcommands immediately follow the \fBscadm\fR command on the command line, and
+are separated from the command by a SPACE.
+.sp
+.LP
+The following subcommands are supported
+.sp
+.ne 2
+.na
+\fBconsolehistory\fR
+.ad
+.sp .6
+.RS 4n
+Display the \fBSC\fR's console log. The \fBSC\fR maintains a running log which
+captures all console output. This log is maintained as a first-in, first-out
+buffer: New console output may displace old console output if the buffer is
+full. By default, only the last eight kilobytes of the console log file are
+displayed.
+.sp
+The optional \fB-a\fR argument specifies that the entire console log file be
+displayed.
+.sp
+It is possible for the \fBSC\fR to fill this log more quickly than the
+\fBconsolehistory\fR subcommand can read it. This means that it is possible for
+some log data to be lost before it can be displayed. If this happens, the
+\fBconsolehistory\fR subcommand displays "scadm: lost <number> bytes of console
+log data" in the log output, to indicate that some data was lost.
+.sp
+The format for the \fBconsolehistory\fR subcommand is:
+.sp
+.in +2
+.nf
+scadm consolehistory [-a]
+.fi
+.in -2
+.sp
+
+The \fBconsolehistory\fR subcommand is not available on all platforms. If this
+command is used on a platform that does not support it, \fBscadm\fR prints this
+message:
+.sp
+.in +2
+.nf
+scadm: command/option not supported
+.fi
+.in -2
+.sp
+
+and exit with non-zero status.
+.RE
+
+.sp
+.ne 2
+.na
+\fBdate\fR
+.ad
+.sp .6
+.RS 4n
+Display the \fBSC\fR's time and date
+.sp
+The format for the \fBdate\fR subcommand is:
+.sp
+.in +2
+.nf
+scadm date
+.fi
+.in -2
+.sp
+
+.RE
+
+.sp
+.ne 2
+.na
+\fBdownload\fR
+.ad
+.sp .6
+.RS 4n
+Program the \fBSC\fR's firmware.
+.sp
+There are two parts to the firmware, the boot monitor and the main image.
+.sp
+By default, The \fBscadm\fR command's download programs the main firmware
+image. The \fBboot\fR argument selects programming of the boot monitor.
+.sp
+The format for the \fBdownload\fR subcommand is:
+.sp
+.in +2
+.nf
+scadm download [boot] \fIfile\fR
+.fi
+.in -2
+.sp
+
+.RE
+
+.sp
+.ne 2
+.na
+\fBfruhistory\fR
+.ad
+.sp .6
+.RS 4n
+Display the contents of the "field replacable unit" log maintained by the
+\fBSC\fR. By default, only the last eight kilobytes of the fru history log file
+are displayed. The data in contained this log contains snapshots of the
+\fBSC\fR's "showfru" command, taken whenever the system is reset, or a hot-plug
+event is detected by the \fBSC\fR.
+.sp
+The optional \fB-a\fR argument specifies that the entire fru log file be
+displayed.
+.sp
+It is possible for the \fBSC\fR to fill this log more quickly than the
+\fBfruhistory\fR subcommand can read it. This means that it is possible for
+some log data to be lost before it can be displayed. If this happens, the
+\fBfruhistory\fR subcommand displays "scadm: lost <number> bytes of fru log
+data" in the log output, to indicate that some data was lost.
+.sp
+The format for the fruhistory subcommand is:
+.sp
+.in +2
+.nf
+scadm fruhistory [-a]
+.fi
+.in -2
+.sp
+
+The \fBfruhistory\fR subcommand is not available on all platforms. If this
+command is used on a platform which does not support it, \fBscadm\fR prints
+this message:
+.sp
+.in +2
+.nf
+scadm: command/option not supported
+.fi
+.in -2
+.sp
+
+and exit with non-zero status.
+.RE
+
+.sp
+.ne 2
+.na
+\fBhelp\fR
+.ad
+.sp .6
+.RS 4n
+Display a list of commands.
+.sp
+The format for the \fBhelp\fR subcommand is:
+.sp
+.in +2
+.nf
+scadm help
+.fi
+.in -2
+.sp
+
+.RE
+
+.sp
+.ne 2
+.na
+\fBloghistory\fR
+.ad
+.sp .6
+.RS 4n
+Display the most recent entries in the \fBSC\fR event log. The optional
+\fB-a\fR argument causes the entire event log history to be displayed. The
+\fB-a\fR argument is available only on platforms which support large log files.
+On platforms which do not support large log files, this flag has no additional
+effect.
+.sp
+It is possible for the \fBSC\fR to fill this log more quickly than the
+\fBloghistory\fR subcommand can read it. This means that it is possible for
+some log data to be lost before it can be displayed. If this happens, the
+\fBloghistory\fR subcommand displays "scadm: lost <number> events" in the log
+output, to indicate that some data was lost.
+.sp
+The format for the \fBloghistory\fR subcommand is:
+.sp
+.in +2
+.nf
+scadm loghistory [-a]
+.fi
+.in -2
+.sp
+
+.RE
+
+.sp
+.ne 2
+.na
+\fBresetrsc\fR
+.ad
+.sp .6
+.RS 4n
+Reset the \fBSC\fR. There are two types of resets allowed, a \fBhard\fR reset
+and a \fBsoft\fR reset.The \fBhard\fR reset is done by default. The \fBsoft\fR
+reset can be selected by using the \fB-s\fR option.
+.sp
+The format for the \fBresetrsc\fR subcommand is:
+.sp
+.in +2
+.nf
+scadm resetrsc [\fB-s\fR]
+.fi
+.in -2
+.sp
+
+.RE
+
+.sp
+.ne 2
+.na
+\fBsend_event\fR
+.ad
+.sp .6
+.RS 4n
+Manually send a text based event. The \fBSC\fR can forward the event to the
+\fBSC\fR event log. You can configure the \fB-c\fR option to send a critical
+warning to email, alert to logged in SC users, and \fBsyslog\fR. Critical
+events are logged to \fBsyslog\fR(3C). There is an \fB80\fR character limit to
+the length of the associated text message.
+.sp
+The format for the \fBsend_event\fR subcommand is:
+.sp
+.in +2
+.nf
+scadm send_event [\fB-c\fR] "\fImessage\fR"
+.fi
+.in -2
+.sp
+
+.RE
+
+.sp
+.ne 2
+.na
+\fBset\fR
+.ad
+.sp .6
+.RS 4n
+Set SC configuration variables to a value.
+.sp
+Examples of SC configuration variables include: SC IP address
+\fBnetsc_ipaddr\fR and SC Customer Information \fBsc_customerinfo\fR. See the
+output from the \fBscadm help\fR command for a complete list of SC
+configuration variables.
+.sp
+The format for the \fBset\fR subcommand is:
+.sp
+.in +2
+.nf
+scadm set \fIvariable value\fR
+.fi
+.in -2
+.sp
+
+.RE
+
+.sp
+.ne 2
+.na
+\fBshow\fR
+.ad
+.sp .6
+.RS 4n
+Display the current SC configuration variable settings. If no variable is
+specified, \fBscadm\fR shows all variable settings.
+.sp
+The format for the \fBshow\fR subcommand is:
+.sp
+.in +2
+.nf
+scadm show [\fIvariable\fR]
+.fi
+.in -2
+.sp
+
+.RE
+
+.sp
+.ne 2
+.na
+\fBshownetwork\fR
+.ad
+.sp .6
+.RS 4n
+Display the current network configuration parameters for SC.
+.sp
+The format for the \fBshownetwork\fR subcommand is:
+.sp
+.in +2
+.nf
+scadm shownetwork
+.fi
+.in -2
+.sp
+
+.RE
+
+.sp
+.ne 2
+.na
+\fBuseradd\fR
+.ad
+.sp .6
+.RS 4n
+Add user accounts to the \fBSC\fR. The \fBSC\fR supports up to sixteen separate
+users.
+.sp
+The format for the \fBuseradd\fR subcommand is:
+.sp
+.in +2
+.nf
+scadm useradd \fIusername\fR
+.fi
+.in -2
+.sp
+
+.RE
+
+.sp
+.ne 2
+.na
+\fBuserdel\fR
+.ad
+.sp .6
+.RS 4n
+Delete a user account from \fBSC\fR.
+.sp
+The format for the \fBuserdel\fR subcommand is:
+.sp
+.in +2
+.nf
+scadm userdel \fIusername\fR
+.fi
+.in -2
+.sp
+
+.RE
+
+.sp
+.ne 2
+.na
+\fBuserpassword\fR
+.ad
+.sp .6
+.RS 4n
+Set a password for the user account specified. This password overrides any
+existing password currently set. There is no verification of the old password
+before setting the new password.
+.sp
+The format for the \fBuserpassword\fR subcommand is:
+.sp
+.in +2
+.nf
+scadm userpassword \fIusername\fR
+.fi
+.in -2
+.sp
+
+.RE
+
+.sp
+.ne 2
+.na
+\fBuserperm\fR
+.ad
+.sp .6
+.RS 4n
+Set the permission level for the user.
+.sp
+The format for the \fBuserperm\fR subcommand is:
+.sp
+.in +2
+.nf
+scadm userperm \fIusername\fR [aucr]
+.fi
+.in -2
+.sp
+
+.RE
+
+.sp
+.ne 2
+.na
+\fBusershow\fR
+.ad
+.sp .6
+.RS 4n
+Display details on the specified user account. If a username is not specified,
+all user accounts are displayed.
+.sp
+The format for the \fBusershow\fR subcommand is:
+.sp
+.in +2
+.nf
+scadm usershow \fIusername\fR
+.fi
+.in -2
+.sp
+
+.RE
+
+.sp
+.ne 2
+.na
+\fBversion\fR
+.ad
+.sp .6
+.RS 4n
+Display the version numbers of the \fBSC\fR and its components.
+.sp
+The format for the \fBversion\fR subcommand is:
+.sp
+.in +2
+.nf
+scadm version [\fB-v\fR]
+.fi
+.in -2
+.sp
+
+.RE
+
+.SH OPTIONS
+.sp
+.LP
+The \fBresetrsc\fR, \fBsend_event\fR, and \fBversion\fR subcommands have
+associated options. Options follow subcommands on the command line and are
+separated from the subcommand by a SPACE.
+.sp
+.LP
+The \fBresetrsc\fR subcommand supports the following options:
+.sp
+.ne 2
+.na
+\fB\fB-s\fR\fR
+.ad
+.sp .6
+.RS 4n
+Perform a soft reset instead of a hard reset. A hard reset physically resets
+the SC hardware. The SC software jumps to the boot firmware, simulating a
+reset, for a soft reset.
+.RE
+
+.sp
+.LP
+The \fBsend_event\fR subcommand supports the following options:
+.sp
+.ne 2
+.na
+\fB\fB-c\fR\fR
+.ad
+.sp .6
+.RS 4n
+Send a critical event. Without the \fB-c\fR, \fB-send_event\fR sends a warning.
+.RE
+
+.sp
+.LP
+The \fBversion\fR subcommand supports the following options:
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display a verbose output of version numbers and associated information.
+.RE
+
+.sp
+.LP
+The \fBconsolehistory\fR, \fBfruhistory\fR, and \fBloghistory\fR subcommands
+support the following option:
+.sp
+.ne 2
+.na
+\fB\fB-a\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display the entire log. These subcommands normally display only the most recent
+log data. This flag causes them to display the entire log.
+.RE
+
+.SH OPERANDS
+.sp
+.LP
+The \fBdownload\fR, \fBsend_event\fR, \fBset\fR, \fBshow\fR, \fBuseradd\fR,
+\fBuserdel\fR, \fBuserperm\fR, \fBusershow\fR, \fBuserpassword\fR, and
+\fBuserperm\fR subcommands have associated arguments (operands).
+.sp
+.LP
+If the subcommand has an option, the arguments follow the option on the command
+line and is separated from the option by a SPACE. If the subcommand does not
+have an option, the arguments follow the subcommand on the command line and are
+separated from the subcommand by a SPACE. If there are more than one arguments,
+they are separated from each other by a SPACE.
+.sp
+.LP
+The \fBdownload\fR subcommand supports the following arguments:
+.sp
+.ne 2
+.na
+\fBboot\fR
+.ad
+.sp .6
+.RS 4n
+Program the boot monitor portion of the flash. The main portion of the flash is
+programmed without any arguments
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIfile\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify \fIfile\fR as the path to where the boot or main firmware image resides
+for download.
+.sp
+Examples of \fIfile\fR are:
+.sp
+.in +2
+.nf
+\fB/usr/platform/\fR\fIplatform_type\fR\fB/lib/image/alommainfw\fR
+.fi
+.in -2
+.sp
+
+or
+.sp
+.in +2
+.nf
+\fB/usr/platform/\fR\fIplatform_type\fR\fB/lib/image/alombootfw\fR
+.fi
+.in -2
+.sp
+
+.RE
+
+.sp
+.LP
+The \fBsend_event\fR subcommand supports the following arguments:
+.sp
+.ne 2
+.na
+\fB"\fImessage\fR"\fR
+.ad
+.sp .6
+.RS 4n
+Describe event using the test contained in \fImessage\fR. Enclose \fImessage\fR
+in quotation marks.
+.RE
+
+.sp
+.LP
+The \fBset\fR subcommand supports the following arguments:
+.sp
+.ne 2
+.na
+\fB\fIvariable\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set SC configuration \fIvariable\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIvalue\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set SC configuration variable to \fIvalue\fR.
+.RE
+
+.sp
+.LP
+The \fBshow\fR subcommand supports the following arguments:
+.sp
+.ne 2
+.na
+\fB\fIvariable\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display the value of that particular variable.
+.RE
+
+.sp
+.LP
+The \fBuseradd\fR subcommand supports the following arguments:
+.sp
+.ne 2
+.na
+\fB\fIusername\fR\fR
+.ad
+.sp .6
+.RS 4n
+Add new SC account \fIusername\fR.
+.RE
+
+.sp
+.LP
+The \fBuserdel\fR subcommand supports the following arguments:
+.sp
+.ne 2
+.na
+\fB\fIusername\fR\fR
+.ad
+.sp .6
+.RS 4n
+Remove SC account \fIusername\fR.
+.RE
+
+.sp
+.LP
+The \fBuserperm\fR subcommand supports the following arguments:
+.sp
+.ne 2
+.na
+\fB\fB-aucr\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set permissions for SC user accounts. If no permissions are specified, all four
+permissions are disabled and read only access is assigned.
+.sp
+The following are the definitions for permissions:
+.sp
+.ne 2
+.na
+\fBa\fR
+.ad
+.sp .6
+.RS 4n
+Allow user to administer or change the SC configuration variables
+.RE
+
+.sp
+.ne 2
+.na
+\fBu\fR
+.ad
+.sp .6
+.RS 4n
+Allow user to use the user commands to modify SC accounts
+.RE
+
+.sp
+.ne 2
+.na
+\fBc\fR
+.ad
+.sp .6
+.RS 4n
+Allow user to connect to console.
+.RE
+
+.sp
+.ne 2
+.na
+\fBr\fR
+.ad
+.sp .6
+.RS 4n
+Allow user to reset SC and to power on and off the host.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIusername\fR\fR
+.ad
+.sp .6
+.RS 4n
+Change permissions on SC account \fIusername\fR.
+.RE
+
+.sp
+.LP
+The \fB-usershow\fR subcommand supports the following arguments:
+.sp
+.ne 2
+.na
+\fB\fIusername\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display information on SC account \fIusername\fR. If \fIusername\fR is not
+specified, all accounts are displayed.
+.RE
+
+.sp
+.LP
+The \fBuserpassword\fR subcommand supports the following arguments:
+.sp
+.ne 2
+.na
+\fB\fIusername\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set SC password for \fIusername\fR.
+.RE
+
+.sp
+.LP
+The \fBuserperm\fR subcommand supports the following arguments:
+.sp
+.ne 2
+.na
+\fB\fIusername\fR\fR
+.ad
+.sp .6
+.RS 4n
+Change SC permissions for \fIusername\fR.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRDisplaying the SC's Date and Time
+.sp
+.LP
+The following command displays the SC's date and time.
+
+.sp
+.in +2
+.nf
+scadm date
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRSetting the SC's Configuration Variables
+.sp
+.LP
+The following command sets the SC's configuration variable \fBnetsc_ipaddr\fR
+to \fB192.168.1.2\fR:
+
+.sp
+.in +2
+.nf
+scadm set netsc_ipaddr 192.168.1.2
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRDisplaying the Current SC's Configuration Settings:
+.sp
+.LP
+The following command displays the current SC configuration settings:
+
+.sp
+.in +2
+.nf
+scadm show
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 4 \fRDisplaying the Current Settings for a Variable
+.sp
+.LP
+The following command displays the current settings for the \fBsys_hostname\fR
+variable:
+
+.sp
+.in +2
+.nf
+scadm show sys_hostname
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 5 \fRSending a Text-Based Critical Event
+.sp
+.LP
+The following command sends a critical event to the SC logs, alerts the current
+SC users, and sends an event to \fBsyslog\fR(3C):
+
+.sp
+.in +2
+.nf
+scadm send_event \fB-c\fR "The UPS signaled a loss in power"
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 6 \fRSending an Informational Text-Based Event
+.sp
+.LP
+The following command sends an non-critical informational text based event to
+the SC event log:
+
+.sp
+.in +2
+.nf
+scadm send_event "The disk is close to full capacity"
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 7 \fRAdding a User To the SC
+.sp
+.LP
+The following command adds user \fBrscroot\fR to the SC:
+
+.sp
+.in +2
+.nf
+scadm useradd rscroot
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 8 \fRDeleting a User From the SC
+.sp
+.LP
+The following command deletes user \fBolduser\fR from the SC:
+
+.sp
+.in +2
+.nf
+scadm userdel olduser
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 9 \fRDisplaying User Details
+.sp
+.LP
+The following command displays details of all user accounts:
+
+.sp
+.in +2
+.nf
+scadm usershow
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 10 \fRDisplaying Details for a Specific User
+.sp
+.LP
+The following command displays details of user account \fBrscroot\fR:
+
+.sp
+.in +2
+.nf
+scadm usershow rscroot
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 11 \fRSetting the User Permission Level
+.sp
+.LP
+The following command sets the full permission level for user \fBrscroot\fR to
+\fBaucr\fR:
+
+.sp
+.in +2
+.nf
+scadm userperm rscroot aucr
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 12 \fRSetting the User Permission Level
+.sp
+.LP
+The following command sets only console access for user \fBnewuser\fR to
+\fBc\fR:
+
+.sp
+.in +2
+.nf
+scadm userperm newuser c
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 13 \fRSetting the User Permission Level
+.sp
+.LP
+The following command sets the permission level for user \fBnewuser\fR to read
+only access:
+
+.sp
+.in +2
+.nf
+scadm userperm newuser
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 14 \fRDisplaying the Current Network Parameters
+.sp
+.LP
+The following command displays the current network configuation parameters for
+the SC:
+
+.sp
+.in +2
+.nf
+scadm shownetwork
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 15 \fRViewing the Consolehistory
+.sp
+.LP
+The following command displays the content console in the \fBSC\fR event log:
+
+.sp
+.in +2
+.nf
+scadm consolehistory [-a]
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 16 \fRViewing the Fruhistory
+.sp
+.LP
+The following command displays the content of the "field replacable unit" in
+the \fBSC\fR event log:
+
+.sp
+.in +2
+.nf
+scadm fruhistory [-a]
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 17 \fRViewing the Loghistory
+.sp
+.LP
+The following command displays the most recent entries in the SC event log:
+
+.sp
+.in +2
+.nf
+scadm loghistory [-a]
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 18 \fRDisplaying Verbose Information
+.sp
+.LP
+The following command displays verbose version information on the SC and its
+components:
+
+.sp
+.in +2
+.nf
+scadm version \fB-v\fR
+.fi
+.in -2
+.sp
+
+.SH EXIT STATUS
+.sp
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.sp .6
+.RS 4n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnon-zero\fR\fR
+.ad
+.sp .6
+.RS 4n
+An error occurred.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR uname (1),
+.BR syslog (3C),
+.BR attributes (7)
diff --git a/usr/src/man/man8/sckmd.8 b/usr/src/man/man8/sckmd.8
new file mode 100644
index 0000000000..38e41d2c78
--- /dev/null
+++ b/usr/src/man/man8/sckmd.8
@@ -0,0 +1,84 @@
+'\" te
+.\" Copyright (c) 2005, Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 2019 Peter Tribble.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SCKMD 8 "Apr 3, 2019"
+.SH NAME
+sckmd \- Sun cryptographic key management daemon
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/platform/sun4u/lib/sckmd\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+\fBsckmd\fR is a server process that resides on a high-end system domain to
+maintain the Internet Protocol Security (\fBIPsec\fR) Security Associations
+(\fBSAs\fR) needed to secure communications between a Service Processor or
+System Controller (SC) and platform management software running within a
+domain. The \fBdcs\fR(8) daemon uses these Security
+Associations. See \fBipsec\fR(4P) for a description of Security Associations.
+.sp
+.LP
+The \fBsckmd\fR daemon receives \fBSA\fRs from the Service Processor or
+\fBSC\fR and installs these \fBSA\fRs in a domain's Security Association
+Database (\fBSADB\fR) using \fBpf_key\fR(4P).
+.sp
+.LP
+\fBsckmd\fR starts up at system boot time as an \fBSMF\fR service. The
+\fBFMRI\fR for the \fBsckmd\fR service is:
+.sp
+.in +2
+.nf
+svc:/platform/sun4u/sckmd:default
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+A domain supports only one running \fBsckmd\fR process at a time.
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.LP
+.BR ipsec (4P),
+.BR ipsecah (4P),
+.BR ipsecesp (4P),
+.BR pf_key (4P),
+.BR attributes (7),
+.BR dcs (8),
+.BR ipsecalgs (8),
+.BR ipsecconf (8)
+.SH NOTES
+.LP
+The \fBsckmd\fR service is used only on Sun Fire high-end systems.
+It provides a mechanism for exchanging
+\fBIPsec\fR keys between a domain and its System Controller (\fBSC\fR) or
+Service Processor. These platforms use \fBIPsec\fR to secure the communications
+between the \fBSC\fR or Service Processor and a platform-specific daemon
+in the domain, such as \fBdcs\fR(8).
+.sp
+.LP
+The documentation for each platform that supports \fBsckmd\fR describes how to
+configure its use of \fBIPsec\fR for such communications. Also, the
+documentation for each specific application describes how to configure its
+security policies and \fBIPsec\fR options in a manner appropriate for the
+target platform. Refer to the platform- and application-specific documentation
+for detailed information.
diff --git a/usr/src/man/man8/sdpadm.8 b/usr/src/man/man8/sdpadm.8
new file mode 100644
index 0000000000..4898f8aab9
--- /dev/null
+++ b/usr/src/man/man8/sdpadm.8
@@ -0,0 +1,86 @@
+'\" te
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SDPADM 8 "Dec 22, 2008"
+.SH NAME
+sdpadm \- SDP system configuration administration
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/sdpadm\fR status | enable | disable
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBsdpadm\fR command is used to display the system state of the Sockets
+Direct Protocol (SDP) protocol. The \fBsdpadm\fR command can optionally be used
+to set the state of the SDP protocol. See \fBsdp\fR(4D).
+.sp
+.LP
+By default the SDP protocol is disabled on the system. It can be enabled by
+using \fBsdpadm\fR \fBenable\fR.
+.SH OPTIONS
+.sp
+.LP
+The following subcommands are supported:
+.sp
+.ne 2
+.na
+\fB\fBstatus\fR\fR
+.ad
+.RS 11n
+Displays the system status of the SDP protocol
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBenable\fR\fR
+.ad
+.RS 11n
+Enables the SDP protocol
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdisable\fR\fR
+.ad
+.RS 11n
+Disables the SDP protocol
+.RE
+
+.SH USAGE
+.sp
+.LP
+The required privileges to change the state of the SDP protocol are controlled
+by the network configuration policy. If a user does not have the correct
+privileges to set the SDP policy, \fBsdpadm\fR returns the current state of SDP
+without having changed the state.
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Uncommitted
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR sdp (4D),
+.BR attributes (7)
+.sp
+.LP
+Infiniband Specification Volume 1 (\fBhttp://www.infinibandta.org\fR)
diff --git a/usr/src/man/man8/sendmail.8 b/usr/src/man/man8/sendmail.8
new file mode 100644
index 0000000000..f4e32dcfaf
--- /dev/null
+++ b/usr/src/man/man8/sendmail.8
@@ -0,0 +1,3508 @@
+'\" te
+.\" Copyright (c) 1998-2003 Sendmail, Inc. and its suppliers. All rights reserved.
+.\" Copyright (c) 1983, 1997 Eric P. Allman. All rights reserved.
+.\" Copyright (c) 1988, 1991, 1993 The Regents of the University of California. All rights reserved.
+.\" Portions Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SENDMAIL 8 "May 13, 2017"
+.SH NAME
+sendmail \- send mail over the internet
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/sendmail\fR [\fB-Ac\fR] [\fB-Am\fR] [\fB-ba\fR] [\fB-bD\fR] [\fB-bd\fR] [\fB-bi\fR] [\fB-bl\fR]
+ [\fB-bm\fR] [\fB-bp\fR] [\fB-bP\fR] [\fB-bs\fR] [\fB-bt\fR] [\fB-bv\fR] [\fB-B\fR \fItype\fR] [\fB-C\fR \fIfile\fR]
+ [\fB-D\fR \fIlogfile\fR] [\fB-d\fR \fIX\fR] [\fB-F\fR \fIfullname\fR] [\fB-f\fR \fIname\fR] [\fB-G\fR]
+ [\fB-h\fR \fIN\fR] [\fB-L \fItag\fR\fR] [\fB-M\fR x\fIvalue\fR] [\fB-N\fR \fInotifications\fR] [\fB-n\fR]
+ [\fB-O\fR\fIoption\fR =\fIvalue\fR] [\fB-o\fR x\fIvalue\fR] [\fB-p\fR \fIprotocol\fR]
+ [\fB-Q\fR [\fIreason\fR]] [\fB-q\fR [\fItime\fR]] [\fB-q\fR \fIXstring\fR] [\fB-R\fR \fIret\fR]
+ [\fB-r\fR \fIname\fR] [\fB-t\fR] [\fB-V\fR \fIenvid\fR] [\fB-v\fR] [\fB-X\fR \fIlogfile\fR]
+ [\fIaddress\fR]...
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBsendmail\fR utility sends a message to one or more people, routing the
+message over whatever networks are necessary. \fBsendmail\fR does internetwork
+forwarding as necessary to deliver the message to the correct place.
+.sp
+.LP
+\fBsendmail\fR is not intended as a user interface routine. Other programs
+provide user-friendly front ends. \fBsendmail\fR is used only to deliver
+pre-formatted messages.
+.sp
+.LP
+With no flags, \fBsendmail\fR reads its standard input up to an EOF, or a line
+with a single dot, and sends a copy of the letter found there to all of the
+addresses listed. It determines the network to use based on the syntax and
+contents of the addresses.
+.sp
+.LP
+Local addresses are looked up in the local \fBaliases\fR(5) file, or in a name
+service as defined by the \fBnsswitch.conf\fR(5) file, and aliased
+appropriately. In addition, if there is a \fB\&.forward\fR file in a
+recipient's home directory, \fBsendmail\fR forwards a copy of each message to
+the list of recipients that file contains. Refer to the \fBNOTES\fR section for
+more information about \fB\&.forward\fR files. Aliasing can be prevented by
+preceding the address with a backslash.
+.sp
+.LP
+There are several conditions under which the expected behavior is for the alias
+database to be either built or rebuilt. This cannot occur under any
+circumstances unless root owns \fBand\fR has exclusive write permission to the
+\fB/etc/mail/aliases*\fR files.
+.sp
+.LP
+If a message is found to be undeliverable, it is returned to the sender with
+diagnostics that indicate the location and nature of the failure; or, the
+message is placed in a \fBdead.letter\fR file in the sender's home directory.
+.SS "Service Management"
+.LP
+The \fBsendmail\fR service is managed by the service management facility,
+\fBsmf\fR(7), under the service identifiers:
+.sp
+.in +2
+.nf
+svc:/network/smtp:sendmail
+svc:/network/sendmail-client:default
+
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Administrative actions on these services, such as enabling, disabling, or
+requesting restart, can be performed using \fBsvcadm\fR(8). The services'
+status can be queried using the \fBsvcs\fR(1) command.
+.sp
+.LP
+These are separate services rather than instances of the same service so that
+other services can properly express any dependencies. In particular, here are
+some guidelines about which service/instance should be depended on for which
+purposes:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+For a service that uses \fBsendmail\fR to send mail, an optional dependency on
+the service \fBsvc:/network/sendmail-client\fR might be in order.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+For a service that needs to receive mail in general, but does not depend on
+\fBsendmail\fR being the particular SMTP receiver, a dependency on the service
+\fBsvc:/network/smtp\fR might be in order.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+For a service that needs to interact with sendmail in particular, such as a
+\fBMilter\fR, a dependency on the instance \fBsvc:/network/smtp:sendmail\fR
+might be in order.
+.RE
+.sp
+.LP
+For the last two, note the difference, as the latter has the \fB":sendmail"\fR
+instance specification, whereas the former does not, thus representing the more
+general service.
+.SS "Enabling Access to Remote Clients"
+.LP
+On an unmodified system, access to \fBsendmail\fR by remote clients is enabled
+and disabled through the service management facility (see \fBsmf\fR(7)). In
+particular, remote access is determined by the value of the \fBlocal_only\fR
+SMF property:
+.sp
+.in +2
+.nf
+svc:/network/smtp:sendmail/config/local_only = true
+.fi
+.in -2
+
+.sp
+.LP
+A setting of \fBtrue\fR, as above, disallows remote access; \fBfalse\fR allows
+remote access. The default value is \fBtrue\fR.
+.sp
+.LP
+The following example shows the sequence of SMF commands used to enable
+\fBsendmail\fR to allow access to remote systems:
+.sp
+.in +2
+.nf
+# \fBsvccfg -s svc:/network/smtp:sendmail setprop config/local_only = false\fR
+# \fBsvcadm refresh svc:/network/smtp:sendmail\fR
+# \fBsvcadm restart svc:/network/smtp:sendmail\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+See \fBsvcadm\fR(8) and \fBsvccfg\fR(8).
+.sp
+.LP
+Note, however, on a system where any of the \fBsendmail\fR(5) files have been
+customized, setting this property might not have the intended effect. See
+\fBsendmail\fR(5) for details.
+.SS "Automated Rebuilding of Configuration Files"
+.LP
+See \fBsendmail\fR(5) for details on which service properties can be set to
+automate (re)building of configuration files when the service is started.
+.SS "Restricting Host Access"
+.LP
+\fBsendmail\fR uses TCP Wrappers to restrict access to hosts. It uses the
+service name of \fBsendmail\fR for \fBhosts_access()\fR. For more information
+on TCP Wrappers, see \fBtcpd\fR(8) and \fBhosts_access\fR(5).
+.SS "Startup Options"
+.LP
+The \fB/etc/default/sendmail\fR file stores startup options for \fBsendmail\fR
+so that the options are not removed when a host is upgraded. See also
+\fBsendmail\fR(5) for details on which service properties can be set to
+automate (re)building of configuration files when the service is started.
+.sp
+.LP
+You can use the following variables in the \fB/etc/default/sendmail\fR startup
+file:
+.sp
+.ne 2
+.na
+\fBCLIENTOPTIONS=\fIstring\fR\fR
+.ad
+.sp .6
+.RS 4n
+Selects additional options to be used with the client daemon, which looks in
+the client-only queue (\fB/var/spool/clientmqueue\fR) and acts as a client
+queue runner. No syntax checking is done, so be careful when making changes to
+this variable.
+.RE
+
+.sp
+.ne 2
+.na
+\fBCLIENTQUEUEINTERVAL=\fI#\fR\fR
+.ad
+.sp .6
+.RS 4n
+Similar to the \fBQUEUEINTERVAL\fR option, \fBCLIENTQUEUEINTERVAL\fR sets the
+time interval for mail queue runs. However, the \fBCLIENTQUEUEINTERVAL\fR
+option controls the functions of the client daemon, instead of the functions of
+the master daemon. Typically, the master daemon is able to deliver all messages
+to the SMTP port. However, if the message load is too high or the master daemon
+is not running, then messages go into the client-only queue,
+\fB/var/spool/clientmqueue\fR. The client daemon, which checks in the
+client-only queue, then acts as a client queue processor.
+.RE
+
+.sp
+.ne 2
+.na
+\fBETRN_HOSTS=\fIstring\fR\fR
+.ad
+.sp .6
+.RS 4n
+Enables an SMTP client and server to interact immediately without waiting for
+the queue run intervals, which are periodic. The server can immediately deliver
+the portion of its queue that goes to the specified hosts. For more
+information, refer to the \fBetrn\fR(8) man page.
+.RE
+
+.sp
+.ne 2
+.na
+\fBMODE=-bd\fR
+.ad
+.sp .6
+.RS 4n
+Selects the mode to start \fBsendmail\fR with. Use the \fB-bd\fR option or
+leave it undefined.
+.RE
+
+.sp
+.ne 2
+.na
+\fBOPTIONS=\fIstring\fR\fR
+.ad
+.sp .6
+.RS 4n
+Selects additional options to be used with the master daemon. No syntax
+checking is done, so be careful when making changes to this variable.
+.RE
+
+.sp
+.ne 2
+.na
+\fBQUEUEINTERVAL=\fI#\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets the interval for mail queue runs on the master daemon. \fI#\fR can be a
+positive integer that is followed by either \fBs\fR for seconds, \fBm\fR for
+minutes, \fBh\fR for hours, \fBd\fR for days, or \fBw\fR for weeks. The syntax
+is checked before \fBsendmail\fR is started. If the interval is negative or if
+the entry does not end with an appropriate letter, the interval is ignored and
+\fBsendmail\fR starts with a queue interval of 15 minutes.
+.RE
+
+.sp
+.ne 2
+.na
+\fBQUEUEOPTIONS=p\fR
+.ad
+.sp .6
+.RS 4n
+Enables one persistent queue runner that sleeps between queue run intervals,
+instead of a new queue runner for each queue run interval. You can set this
+option to \fBp\fR, which is the only setting available. Otherwise, this option
+is not set.
+.RE
+
+.SS "Mail Filter API"
+.LP
+\fBsendmail\fR supports a mail filter API called "milter". For more
+information, see \fB/usr/include/libmilter/README\fR and http://www.milter.org
+.SH OPTIONS
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-Ac\fR\fR
+.ad
+.sp .6
+.RS 4n
+Uses \fBsubmit.cf\fR even if the operation mode does not indicate an initial
+mail submission.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-Am\fR\fR
+.ad
+.sp .6
+.RS 4n
+Uses \fBsendmail.cf\fR even if the operation mode indicates an initial mail
+submission.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-ba\fR\fR
+.ad
+.sp .6
+.RS 4n
+Goes into \fBARPANET\fR mode. All input lines must end with a RETURN-LINEFEED,
+and all messages are generated with a RETURN-LINEFEED at the end. Also, the
+\fBFrom:\fR and \fBSender:\fR fields are examined for the name of the sender.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-bd\fR\fR
+.ad
+.sp .6
+.RS 4n
+Runs as a daemon in the background, waiting for incoming SMTP connections.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-bD\fR\fR
+.ad
+.sp .6
+.RS 4n
+Runs as a daemon in the foreground, waiting for incoming SMTP connections.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-bi\fR\fR
+.ad
+.sp .6
+.RS 4n
+Initializes the \fBaliases\fR(5) database. Root must own \fIand\fR have
+exclusive write permission to the \fB/etc/mail/aliases*\fR files for successful
+use of this option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-bl\fR\fR
+.ad
+.sp .6
+.RS 4n
+Runs as a daemon (like \fB-bd\fR) but accepts only loopback SMTP connections.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-bm\fR\fR
+.ad
+.sp .6
+.RS 4n
+Delivers mail in the usual way (default).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-bp\fR\fR
+.ad
+.sp .6
+.RS 4n
+Prints a summary of the mail queues.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-bP\fR\fR
+.ad
+.sp .6
+.RS 4n
+Prints the number of entries in the queues. This option is only available with
+shared memory support.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-bs\fR\fR
+.ad
+.sp .6
+.RS 4n
+Uses the SMTP protocol as described in RFC 2821. This flag implies all the
+operations of the \fB-ba\fR flag that are compatible with \fBSMTP\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-bt\fR\fR
+.ad
+.sp .6
+.RS 4n
+Runs in address test mode. This mode reads addresses and shows the steps in
+parsing; it is used for debugging configuration tables.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-bv\fR\fR
+.ad
+.sp .6
+.RS 4n
+Verifies names only. Does not try to collect or deliver a message. Verify mode
+is normally used for validating users or mailing lists.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-B\fR \fItype\fR\fR
+.ad
+.sp .6
+.RS 4n
+Indicates body \fItype\fR (\fB7BIT\fR or \fB8BITMIME\fR).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-C\fR \fIfile\fR\fR
+.ad
+.sp .6
+.RS 4n
+Uses alternate configuration file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-D\fR \fIlogfile\fR\fR
+.ad
+.sp .6
+.RS 4n
+Send debugging output to the indicated log file instead of \fBstdout\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-d\fR \fIX\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets debugging value to \fIX\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR \fIname\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets the name of the "from" person (that is, the sender of the mail).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-F\fR \fIfullname\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets the full name of the sender.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-G\fR\fR
+.ad
+.sp .6
+.RS 4n
+When accepting messages by way of the command line, indicates that they are for
+relay (gateway) submission. When this flag is set, \fBsendmail\fR might
+complain about syntactically invalid messages, for example, unqualified host
+names, rather than fixing them. \fBsendmail\fR does not do any canonicalization
+in this mode.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-h\fR \fIN\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets the hop count to \fIN\fR. The hop count is incremented every time the mail
+is processed. When it reaches a limit, the mail is returned with an error
+message, the victim of an aliasing loop.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-L\fR \fItag\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets the identifier used in \fBsyslog\fR messages to the supplied \fItag\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-M\fR\fIxvalue\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets macro \fIx\fR to the specified \fIvalue\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR\fR
+.ad
+.sp .6
+.RS 4n
+Does not do aliasing.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-N\fR \fInotifications\fR\fR
+.ad
+.sp .6
+.RS 4n
+Tags all addresses being sent as wanting the indicated \fInotifications\fR,
+which consists of the word "NEVER" or a comma-separated list of "SUCCESS",
+"FAILURE", and "DELAY" for successful delivery, failure and a message that is
+stuck in a queue somewhere. The default is "FAILURE,DELAY".
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-o\fR\fIxvalue\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets option \fIx\fR to the specified \fIvalue\fR. \fBProcessing\fR
+\fBOptions\fR are described below.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-O\fR\fIoption=value\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets \fIoption\fR to the specified \fIvalue\fR (for long from names).
+\fBProcessing\fR \fBOptions\fR are described below.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR \fIprotocol\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets the sending protocol. The \fIprotocol\fR field can be in form
+\fIprotocol\fR\fB:\fR\fIhost\fR to set both the sending protocol and the
+sending host. For example: \fB-pUUCP:uunet\fR sets the sending \fIprotocol\fR
+to \fBUUCP\fR and the sending host to \fBuunet\fR. Some existing programs use
+\fB-oM\fR to set the \fIr\fR and \fIs\fR macros; this is equivalent to using
+\fB-p\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-q\fR[\fItime\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Processes saved messages in the queue at given intervals. If \fItime\fR is
+omitted, processes the queue once. \fItime\fR is given as a tagged number,
+where \fIs\fR is seconds, \fIm\fR is minutes, \fIh\fR is hours, \fId\fR is
+days, and \fIw\fR is weeks. For example, \fB-q1h30m\fR or \fB-q90m\fR would
+both set the timeout to one hour thirty minutes.
+.sp
+By default, sendmail runs in the background. This option can be used safely
+with \fB-bd\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-qp[\fR\fItime\fR\fB-]\fR\fR
+.ad
+.sp .6
+.RS 4n
+Similar to \fB-q\fR[\fItime\fR], except that instead of periodically forking a
+child to process the queue, \fBsendmail\fR forks a single persistent child for
+each queue that alternates between processing the queue and sleeping. The sleep
+time (\fItime\fR) is specified as the argument; it defaults to \fB1\fR second.
+The process always sleeps at least \fB5\fR seconds if the queue was empty in
+the previous queue run.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-qf\fR\fR
+.ad
+.sp .6
+.RS 4n
+Processes saved messages in the queue once and does not \fBfork\fR(2), but runs
+in the foreground.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-qG\fR \fIname\fR\fR
+.ad
+.sp .6
+.RS 4n
+Processes jobs in queue group called \fIname\fR only.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-q[!]I\fR \fIsubstr\fR\fR
+.ad
+.sp .6
+.RS 4n
+Limits processed jobs to those containing \fIsubstr\fR as a substring of the
+queue \fBID\fR or not when \fB!\fR is specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-q[!]Q\fR \fIsubstr\fR\fR
+.ad
+.sp .6
+.RS 4n
+Limits processed jobs to those quarantined jobs containing \fIsubstr\fR as a
+substring of the quarantine \fIreason\fR or not when \fB!\fR is specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-q[!]R\fR \fIsubstr\fR\fR
+.ad
+.sp .6
+.RS 4n
+Limits processed jobs to those containing \fIsubstr\fR as a substring of one of
+the recipients or not when \fB!\fR is specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-q[!]S\fR \fIsubstr\fR\fR
+.ad
+.sp .6
+.RS 4n
+Limits processed jobs to those containing \fIsubstr\fR as a substring of the
+sender or not when \fB!\fR is specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-Q\fR[\fIreason\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Quarantines a normal queue item with the given reason or unquarantines a
+quarantined queue item if no reason is given. This should only be used with
+some sort of item matching as described above.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-r\fR \fIname\fR\fR
+.ad
+.sp .6
+.RS 4n
+An alternate and obsolete form of the \fB-f\fR flag.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-R\fR \fIret\fR\fR
+.ad
+.sp .6
+.RS 4n
+Identifies the information you want returned if the message bounces. \fIret\fR
+can be \fBHDRS\fR for headers only or \fBFULL\fR for headers plus body.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-t\fR\fR
+.ad
+.sp .6
+.RS 4n
+Reads message for recipients. \fBTo:\fR,\fBCc:\fR, and \fBBcc:\fR lines are
+scanned for people to send to. The \fBBcc:\fR line is deleted before
+transmission. Any addresses in the argument list is suppressed. The
+\fBNoRecipientAction\fR Processing Option can be used to change the behavior
+when no legal recipients are included in the message.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.sp .6
+.RS 4n
+Goes into verbose mode. Alias expansions are announced, and so forth.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-V\fR \fIenvid\fR\fR
+.ad
+.sp .6
+.RS 4n
+The indicated \fIenvid\fR is passed with the envelope of the message and
+returned if the message bounces.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-X\fR \fIlogfile\fR\fR
+.ad
+.sp .6
+.RS 4n
+Logs all traffic in and out of \fBsendmail\fR in the indicated \fIlogfile\fR
+for debugging mailer problems. This produces a lot of data very quickly and
+should be used sparingly.
+.RE
+
+.SS "Processing Options"
+.LP
+There are a number of "random" options that can be set from a configuration
+file. Options are represented by a single character or by multiple character
+names. The syntax for the single character names of is:
+.sp
+.in +2
+.nf
+\fBO\fR\fIxvalue\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+This sets option \fIx\fR to be \fIvalue\fR. Depending on the option,
+\fIvalue\fR may be a string, an integer, a boolean (with legal values \fBt\fR,
+\fBT\fR, \fBf\fR, or \fBF\fR; the default is \fBTRUE\fR), or a time interval.
+.sp
+.LP
+The multiple character or long names use this syntax:
+.sp
+.in +2
+.nf
+\fBO\fR \fILongname=argument\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+This sets the option \fILongname\fR to be \fIargument\fR. The long names are
+beneficial because they are easier to interpret than the single character
+names.
+.sp
+.LP
+Not all processing options have single character names associated with them. In
+the list below, the multiple character name is presented first followed by the
+single character syntax enclosed in parentheses.
+.sp
+.ne 2
+.na
+\fB\fBAliasFile (A\fR\fIfile\fR\fB)\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies possible alias files.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBAliasWait (a\fR \fIN\fR\fB)\fR\fR
+.ad
+.sp .6
+.RS 4n
+If set, waits up to \fIN\fR minutes for an "@:@" entry to exist in the
+\fBaliases\fR(5) database before starting up. If it does not appear in \fIN\fR
+minutes, issues a warning. Defaults to 10 minutes.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBAllowBogusHELO\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allows a \fBHELO SMTP\fR command that does not include a host name. By default
+this option is disabled.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBBadRcptThrottle=\fR\fIN\fR\fR
+.ad
+.sp .6
+.RS 4n
+If set and more than the specified number of recipients in a single \fBSMTP\fR
+envelope are rejected, sleeps for one second after each rejected RCPT command.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBBlankSub (B\fR\fIc\fR\fB)\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets the blank substitution character to \fIc\fR. Unquoted spaces in addresses
+are replaced by this character. Defaults to SPACE (that is, no change is made).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBCACertFile\fR\fR
+.ad
+.sp .6
+.RS 4n
+File containing one CA cert.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBCACertPath\fR\fR
+.ad
+.sp .6
+.RS 4n
+Path to directory with certs of CAs.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBCheckAliases (n)\fR\fR
+.ad
+.sp .6
+.RS 4n
+Validates the RHS of aliases when rebuilding the \fBaliases\fR(5) database.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBCheckpointInterval (C\fR\fIN\fR\fB)\fR\fR
+.ad
+.sp .6
+.RS 4n
+Checkpoints the queue every \fIN\fR (default \fB10\fR) addresses sent. If your
+system crashes during delivery to a large list, this prevents retransmission to
+any but the last \fIN\fR recipients.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBClassFactor (z\fR\fIfact\fR\fB)\fR\fR
+.ad
+.sp .6
+.RS 4n
+The indicated factor \fIfact\fR is multiplied by the message class (determined
+by the \fBPrecedence:\fR field in the user header and the \fBP\fR lines in the
+configuration file) and subtracted from the priority. Thus, messages with a
+higher \fBPriority:\fR are favored. Defaults to \fB1800\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBClientCertFile\fR\fR
+.ad
+.sp .6
+.RS 4n
+File containing the cert of the client, that is, this cert is used when
+\fBsendmail\fR acts as client.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBClientKeyFile\fR\fR
+.ad
+.sp .6
+.RS 4n
+File containing the private key belonging to the client cert.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBClientPortOptions\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets client \fBSMTP\fR options. The options are key=value pairs. Known keys
+are:
+.sp
+.ne 2
+.na
+\fB\fBAddr\fR \fIAddress Mask\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fIAddress Mask\fR defaults to \fBINADDR_ANY\fR. The address mask can be a
+numeric address in dot notation or a network name.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBFamily\fR\fR
+.ad
+.sp .6
+.RS 4n
+Address family (defaults to INET).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBListen\fR\fR
+.ad
+.sp .6
+.RS 4n
+Size of listen queue (defaults to 10).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPort\fR\fR
+.ad
+.sp .6
+.RS 4n
+Name/number of listening port (defaults to \fBsmtp\fR).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBRcvBufSize\fR\fR
+.ad
+.sp .6
+.RS 4n
+The size of the TCP/IP receive buffer.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSndBufSize\fR\fR
+.ad
+.sp .6
+.RS 4n
+The size of the TCP/IP send buffer.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBModifier\fR\fR
+.ad
+.sp .6
+.RS 4n
+Options (flags) for the daemon. Can be:
+.sp
+.ne 2
+.na
+\fB\fBh\fR\fR
+.ad
+.sp .6
+.RS 4n
+Uses name of interface for \fBHELO\fR command.
+.RE
+
+If \fBh\fR is set, the name corresponding to the outgoing interface address
+(whether chosen by means of the \fBConnection\fR parameter or the default) is
+used for the \fBHELO\fR/\fBEHLO\fR command.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBColonOkInAddr\fR\fR
+.ad
+.sp .6
+.RS 4n
+If set, colons are treated as a regular character in addresses. If not set,
+they are treated as the introducer to the RFC 822 "group" syntax. This option
+is on for version 5 and lower configuration files.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBConnectionCacheSize (k\fR\fIN\fR\fB)\fR\fR
+.ad
+.sp .6
+.RS 4n
+The maximum number of open connections that are to be cached at a time. The
+default is \fB1\fR. This delays closing the current connection until either
+this invocation of \fBsendmail\fR needs to connect to another host or it
+terminates. Setting it to \fB0\fR defaults to the old behavior, that is,
+connections are closed immediately.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBConnectionCacheTimeout (K\fR\fItimeout\fR\fB)\fR\fR
+.ad
+.sp .6
+.RS 4n
+The maximum amount of time a cached connection is permitted to idle without
+activity. If this time is exceeded, the connection is immediately closed. This
+value should be small (on the order of ten minutes). Before \fBsendmail\fR uses
+a cached connection, it always sends a \fBNOOP\fR (no operation) command to
+check the connection. If the \fBNOOP\fR command fails, it reopens the
+connection. This keeps your end from failing if the other end times out. The
+point of this option is to be a good network neighbor and avoid using up
+excessive resources on the other end. The default is five minutes.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBConnectionRateThrottle\fR\fR
+.ad
+.sp .6
+.RS 4n
+The maximum number of connections permitted per second. After this many
+connections are accepted, further connections are delayed. If not set or <= 0,
+there is no limit.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBConnectionRateWindowSize\fR\fR
+.ad
+.sp .6
+.RS 4n
+Define the length of the interval for which the number of incoming connections
+is maintained. The default is 60 seconds.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBControlSocketName\fR\fR
+.ad
+.sp .6
+.RS 4n
+Name of the control socket for daemon management. A running \fBsendmail\fR
+daemon can be controlled through this Unix domain socket. Available commands
+are: \fBhelp\fR, \fBrestart\fR, \fBshutdown\fR, and \fBstatus\fR. The
+\fBstatus\fR command returns the current number of daemon children, the free
+disk space (in blocks) of the queue directory, and the load average of the
+machine expressed as an integer. If not set, no control socket is available.
+For the sake of security, this Unix domain socket must be in a directory which
+is accessible only by root; \fB/var/spool/mqueue/.smcontrol\fR is recommended
+for the socket name.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBCRLFile\fR\fR
+.ad
+.sp .6
+.RS 4n
+File containing certificate revocation status, useful for X.509v3
+authentication.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBDaemonPortOptions (O\fR\fIoptions\fR\fB)\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets server SMTP options. The options are \fIkey=value\fR pairs. Known keys
+are:
+.sp
+.ne 2
+.na
+\fB\fBName\fR\fR
+.ad
+.sp .6
+.RS 4n
+User-definable name for the daemon (defaults to "\fBDaemon#\fR"). Used for
+error messages and logging.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBAddr\fR\fR
+.ad
+.sp .6
+.RS 4n
+Address mask (defaults \fBINADDR_ANY)\fR.
+.sp
+The address mask may be a numeric address in dot notation or a network name.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBFamily\fR\fR
+.ad
+.sp .6
+.RS 4n
+Address family (defaults to \fBINET).\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBInputMailFilters\fR\fR
+.ad
+.sp .6
+.RS 4n
+List of input mail filters for the daemon.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBListen\fR\fR
+.ad
+.sp .6
+.RS 4n
+Size of listen queue (defaults to \fB10\fR).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBModifier\fR\fR
+.ad
+.sp .6
+.RS 4n
+Options (flags) for the daemon; can be a sequence (without any delimiters) of:
+.sp
+.ne 2
+.na
+\fB\fBa\fR\fR
+.ad
+.sp .6
+.RS 4n
+Requires authentication.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBb\fR\fR
+.ad
+.sp .6
+.RS 4n
+Binds to interface through which mail has been received.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBc\fR\fR
+.ad
+.sp .6
+.RS 4n
+Performs hostname canonification (\fB\&.cf\fR).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBf\fR\fR
+.ad
+.sp .6
+.RS 4n
+Requires fully qualified hostname (\fB\&.cf\fR).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBh\fR\fR
+.ad
+.sp .6
+.RS 4n
+Uses name of interface for \fBHELO\fR command.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBu\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allows unqualified addresses (\fB\&.cf\fR).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBC\fR\fR
+.ad
+.sp .6
+.RS 4n
+Does not perform hostname canonification.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBE\fR\fR
+.ad
+.sp .6
+.RS 4n
+Disallows \fBETRN\fR (see \fBRFC\fR 2476).
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBName\fR\fR
+.ad
+.sp .6
+.RS 4n
+User-definable name for the daemon (defaults to \fBDaemon#\fR). Used for error
+messages and logging.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPort\fR\fR
+.ad
+.sp .6
+.RS 4n
+Name/number of listening port (defaults to \fBsmtp\fR).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBReceiveSize\fR\fR
+.ad
+.sp .6
+.RS 4n
+The size of the TCP/IP receive buffer.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSendSize\fR\fR
+.ad
+.sp .6
+.RS 4n
+The size of the TCP/IP send buffer.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBchildren\fR\fR
+.ad
+.sp .6
+.RS 4n
+Maximum number of children per daemon. See \fBMaxDaemonChildren\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBDeliveryMode\fR\fR
+.ad
+.sp .6
+.RS 4n
+Delivery mode per daemon. See \fBDeliveryMode\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrefuseLA\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBRefuseLA\fR per daemon.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdelayLA\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBDelayLA\fR per daemon.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBqueueLA\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBQueueLA\fR per daemon.
+.RE
+
+\fBsendmail\fR listens on a new socket for each occurrence of the
+\fBDaemonPortOptions\fR option in a configuration file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBDataFileBufferSize\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets the threshold, in bytes, before a memory-bases queue data file becomes
+disk-based. The default is 4096 bytes.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBDeadLetterDrop\fR\fR
+.ad
+.sp .6
+.RS 4n
+Defines the location of the system-wide dead.letter file, formerly hard-coded
+to \fB/var/tmp/dead.letter\fR. If this option is not set (the default),
+\fBsendmail\fR does not attempt to save to a system-wide \fBdead.letter\fR file
+in the event it cannot bounce the mail to the user or postmaster. Instead, it
+renames the \fBqf\fR file as it has in the past when the \fBdead.letter\fR file
+could not be opened.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBDefaultCharSet\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets the default character set to use when converting unlabeled 8 bit input to
+MIME.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBDefaultUser (g\fR\fIgid\fR\fB) or (u\fR\fIuid\fR\fB)\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets the default group ID for mailers to run in to \fIgid\fR or set the default
+userid for mailers to \fIuid\fR. Defaults to \fB1\fR. The value can also be
+given as a symbolic group or user name.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBDelayLA=\fR\fILA\fR\fR
+.ad
+.sp .6
+.RS 4n
+When the system load average exceeds \fILA\fR, \fBsendmail\fR sleeps for one
+second on most SMTP commands and before accepting connections.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBDeliverByMin=\fR\fItime\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets minimum time for \fBDeliver By SMTP Service Extension\fR (RFC 2852). If
+\fB0\fR, no time is listed, if less than \fB0\fR, the extension is not offered,
+if greater than \fB0\fR, it is listed as minimum time for the \fBEHLO\fR
+keyword \fBDELIVERBY\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBDeliveryMode (d\fR\fIx\fR\fB)\fR\fR
+.ad
+.sp .6
+.RS 4n
+Delivers in mode \fIx\fR. Legal modes are:
+.sp
+.ne 2
+.na
+\fB\fBi\fR\fR
+.ad
+.sp .6
+.RS 4n
+Delivers interactively (synchronously).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBb\fR\fR
+.ad
+.sp .6
+.RS 4n
+Delivers in background (asynchronously).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBd\fR\fR
+.ad
+.sp .6
+.RS 4n
+Deferred mode. Database lookups are deferred until the actual queue run.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBq\fR\fR
+.ad
+.sp .6
+.RS 4n
+Just queues the message (delivers during queue run).
+.RE
+
+Defaults to \fBb\fR if no option is specified, \fBi\fR if it is specified but
+given no argument (that is, \fBOd\fR is equivalent to \fBOdi\fR).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBDHParameters\fR\fR
+.ad
+.sp .6
+.RS 4n
+File containing the DH parameters.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBDialDelay\fR\fR
+.ad
+.sp .6
+.RS 4n
+If a connection fails, waits this many seconds and tries again. Zero means "do
+not retry".
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBDontBlameSendmail\fR\fR
+.ad
+.sp .6
+.RS 4n
+If set, overrides the file safety checks. This compromises system security and
+should not be used. See http://www.sendmail.org/tips/DontBlameSendmail.html for
+more information.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBDontExpandCnames\fR\fR
+.ad
+.sp .6
+.RS 4n
+If set, $[ ... $] lookups that do DNS-based lookups do not expand CNAME
+records.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBDontInitGroups\fR\fR
+.ad
+.sp .6
+.RS 4n
+If set, the \fBinitgroups\fR(3C) routine is never invoked. If you set this,
+agents run on behalf of users only have their primary (\fB/etc/passwd\fR) group
+permissions.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBDontProbeInterfaces\fR\fR
+.ad
+.sp .6
+.RS 4n
+If set, \fBsendmail\fR does not insert the names and addresses of any local
+interfaces into the \fB$=w class\fR. If set, you must also include support for
+these addresses, otherwise mail to addresses in this list bounces with a
+configuration error.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBDontPruneRoutes (R)\fR\fR
+.ad
+.sp .6
+.RS 4n
+If set, does not prune route-addr syntax addresses to the minimum possible.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBDoubleBounceAddress\fR\fR
+.ad
+.sp .6
+.RS 4n
+If an error occurs when sending an error message, sends that "double bounce"
+error message to this address.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEightBitMode (8)\fR\fR
+.ad
+.sp .6
+.RS 4n
+Uses 8-bit data handling. This option requires one of the following keys. The
+key can selected by using just the first character, but using the full word is
+better for clarity.
+.sp
+.ne 2
+.na
+\fB\fBmimify\fR\fR
+.ad
+.sp .6
+.RS 4n
+Does any necessary conversion of \fB8BITMIME\fR to 7-bit.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpass\fR\fR
+.ad
+.sp .6
+.RS 4n
+Passes unlabeled 8-bit input through as is.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBstrict\fR\fR
+.ad
+.sp .6
+.RS 4n
+Rejects unlabeled 8-bit input.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBErrorHeader (E\fR\fIfile/message\fR\fB)\fR\fR
+.ad
+.sp .6
+.RS 4n
+Appends error messages with the indicated message. If it begins with a slash,
+it is assumed to be the pathname of a file containing a message (this is the
+recommended setting). Otherwise, it is a literal message. The error file might
+contain the name, email address, and/or phone number of a local postmaster who
+could provide assistance to end users. If the option is missing or \fINULL\fR,
+or if it names a file which does not exist or which is not readable, no message
+is printed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBErrorMode (e\fR\fIx\fR\fB)\fR\fR
+.ad
+.sp .6
+.RS 4n
+Disposes of errors using mode \fIx\fR. The values for \fIx\fR are:
+.sp
+.ne 2
+.na
+\fB\fBe\fR\fR
+.ad
+.sp .6
+.RS 4n
+Mails back errors and gives \fB0\fR exit status always.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBm\fR\fR
+.ad
+.sp .6
+.RS 4n
+Mails back errors.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBp\fR\fR
+.ad
+.sp .6
+.RS 4n
+Prints error messages (default).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBq\fR\fR
+.ad
+.sp .6
+.RS 4n
+No messages, just gives exit status.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBw\fR\fR
+.ad
+.sp .6
+.RS 4n
+Writes back errors (mail if user not logged in).
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBFallbackMXhost (V\fR\fIfallbackhost\fR\fB)\fR\fR
+.ad
+.sp .6
+.RS 4n
+If specified, the \fIfallbackhost\fR acts like a very low priority MX on every
+host. This is intended to be used by sites with poor network connectivity.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBFallBackSmartHost\fR\fR
+.ad
+.sp .6
+.RS 4n
+If specified, the \fIfallBackSmartHost\fR is used in a last-ditch effort for
+each host. This is intended to be used by sites with "fake internal DNS". That
+is, a company whose DNS accurately reflects the world inside that company's
+domain but not outside.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBFastSplit\fR\fR
+.ad
+.sp .6
+.RS 4n
+If set to a value greater than zero (the default is one), it suppresses the MX
+lookups on addresses when they are initially sorted, that is, for the first
+delivery attempt. This usually results in faster envelope splitting unless the
+MX records are readily available in a local DNS cache. To enforce initial
+sorting based on MX records set \fBFastSplit\fR to zero. If the mail is
+submitted directly from the command line, then the value also limits the number
+of processes to deliver the envelopes; if more envelopes are created they are
+only queued up and must be taken care of by a queue run. Since the default
+submission method is by way of SMTP (either from a MUA or by way of the Message
+Submission Program [MSP]), the value of \fBFastSplit\fR is seldom used to limit
+the number of processes to deliver the envelopes.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBForkEachJob (Y)\fR\fR
+.ad
+.sp .6
+.RS 4n
+If set, delivers each job that is run from the queue in a separate process. Use
+this option if you are short of memory, since the default tends to consume
+considerable amounts of memory while the queue is being processed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBForwardPath (J\fR\fIpath\fR\fB)\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets the path for searching for users' \fB\&.forward\fR files. The default is
+\fB$z/.forward\fR. Some sites that use the automounter may prefer to change
+this to \fB/var/forward/$u\fR to search a file with the same name as the user
+in a system directory. It can also be set to a sequence of paths separated by
+colons; \fBsendmail\fR stops at the first file it can successfully and safely
+open. For example, \fB/var/forward/$u:$z/.forward\fR searches first in
+\fB/var/forward/\fR \fIusername\fR and then in
+\fB~\fR\fIusername\fR\fB/.forward\fR (but only if the first file does not
+exist). Refer to the NOTES section for more information.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBHeloName=\fIname\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets the name to be used for \fBHELO\fR/\fBEHLO\fR (instead of \fB$j\fR).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBHelpFile (H\fR\fIfile\fR\fB)\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the help file for SMTP.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBHoldExpensive (c)\fR\fR
+.ad
+.sp .6
+.RS 4n
+If an outgoing mailer is marked as being expensive, does not connect
+immediately.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBHostsFile\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets the file to use when doing "file" type access of host names.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBHostStatusDirectory\fR\fR
+.ad
+.sp .6
+.RS 4n
+If set, host status is kept on disk between \fBsendmail\fR runs in the named
+directory tree. If a full path is not used, then the path is interpreted
+relative to the queue directory.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBIgnoreDots (i)\fR\fR
+.ad
+.sp .6
+.RS 4n
+Ignores dots in incoming messages. This is always disabled (that is, dots are
+always accepted) when reading \fBSMTP\fR mail.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBLogLevel (L\fR\fIn\fR\fB)\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets the default log level to \fIn\fR. Defaults to \fB9\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB(M\fR\fIx\|value\fR\fB)\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets the macro \fIx\fR to \fIvalue\fR. This is intended only for use from the
+command line.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBMailboxDatabase\fR\fR
+.ad
+.sp .6
+.RS 4n
+Type of lookup to find information about local mail boxes, defaults to \fBpw\fR
+which uses \fBgetpwnam\fR(3C). Other types can be introduced by adding them to
+the source code, see \fBlibsm/mbdb.c\fR for details.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBMatchGECOS (G)\fR\fR
+.ad
+.sp .6
+.RS 4n
+Tries to match recipient names using the GECOS field. This allows for mail to
+be delivered using names defined in the GECOS field in \fB/etc/passwd\fR as
+well as the login name.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBMaxDaemonChildren\fR\fR
+.ad
+.sp .6
+.RS 4n
+The maximum number of children the daemon permits. After this number,
+connections are rejected. If not set or <=0, there is no limit.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBMaxHopCount (h\fR\fIN\fR\fB)\fR\fR
+.ad
+.sp .6
+.RS 4n
+The maximum hop count. Messages that have been processed more than \fIN\fR
+times are assumed to be in a loop and are rejected. Defaults to \fB25\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBMaxMessageSize\fR\fR
+.ad
+.sp .6
+.RS 4n
+The maximum size of messages that are accepted (in bytes).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBMaxMimeHeaderLength=\fR\fIM\fR\fB[/\fR\fIN\fR\fB]\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets the maximum length of certain MIME header field values to \fIM\fR
+characters. For some of these headers which take parameters, the maximum length
+of each parameter is set to \fIN\fR if specified. If \fB/\fR\fIN\fR is not
+specified, one half of \fIM\fR is used. By default, these values are \fB0\fR,
+meaning no checks are done.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBMaxNOOPCommands=\fR\fIN\fR\fR
+.ad
+.sp .6
+.RS 4n
+Overrides the default of 20 for the number of useless commands.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBMaxQueueChildren=\fR\fIN\fR\fR
+.ad
+.sp .6
+.RS 4n
+When set, this limits the number of concurrent queue runner processes to
+\fIN\fR. This helps to control the amount of system resources used when
+processing the queue. When there are multiple queue groups defined and the
+total number of queue runners for these queue groups would exceed
+\fBMaxQueueChildren\fR then the queue groups are not all run concurrently. That
+is, some portion of the queue groups run concurrently such that
+\fBMaxQueueChildren\fR is not be exceeded, while the remaining queue groups are
+run later (in round robin order). See \fBMaxRunnersPerQueue\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBMaxQueueRunSize\fR\fR
+.ad
+.sp .6
+.RS 4n
+If set, limits the maximum size of any given queue run to this number of
+entries. This stops reading the queue directory after this number of entries is
+reached; job priority is not used. If not set, there is no limit.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBMaxRunnersPerQueue=\fR\fIN\fR\fR
+.ad
+.sp .6
+.RS 4n
+This sets the default maximum number of queue runners for queue groups. Up to
+\fIN\fR queue runners work in parallel on a queue group's messages. This is
+useful where the processing of a message in the queue might delay the
+processing of subsequent messages. Such a delay can be the result of
+non-erroneous situations such as a low bandwidth connection. The can be
+overridden on a per queue group basis by setting the \fBRunners\fR option. The
+default is \fB1\fR when not set.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBMeToo (M)\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sends to me too, even if I am in an alias expansion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBMaxRecipientsPerMessage\fR\fR
+.ad
+.sp .6
+.RS 4n
+If set, allows no more than the specified number of recipients in an SMTP
+envelope. Further recipients receive a 452 error code and are deferred for the
+next delivery attempt.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBMinFreeBlocks (b\fR\fIN/M\fR\fB)\fR\fR
+.ad
+.sp .6
+.RS 4n
+Insists on at least \fIN\fR blocks free on the file system that holds the queue
+files before accepting email by way of SMTP. If there is insufficient space,
+\fBsendmail\fR gives a \fB452\fR response to the \fBMAIL\fR command. This
+invites the sender to try again later. The optional \fIM\fR is a maximum
+message size advertised in the \fBESMTP\fR \fBEHLO\fR response. It is currently
+otherwise unused.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBMinQueueAge\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the amount of time a job must sit in the queue between queue runs.
+This allows you to set the queue run interval low for better responsiveness
+without trying all jobs in each run. The default value is 0.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBMustQuoteChars\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the characters to be quoted in a full name phrase. \fB&,;:\e()[]\fR
+are quoted automatically.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBNiceQueueRun\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the priority of queue runners. See \fBnice\fR(1).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBNoRecipientAction\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets action if there are no legal recipient files in the message. The legal
+values are:
+.sp
+.ne 2
+.na
+\fB\fBadd-apparently-to\fR\fR
+.ad
+.sp .6
+.RS 4n
+Adds an \fBApparently-to:\fR header with all the known recipients (which may
+expose blind recipients).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBadd-bcc\fR\fR
+.ad
+.sp .6
+.RS 4n
+Adds an empty \fBBcc:\fR header.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBadd-to\fR\fR
+.ad
+.sp .6
+.RS 4n
+Adds a \fBTo:\fR header with all the known recipients (which may expose blind
+recipients).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBadd-to-undisclosed\fR\fR
+.ad
+.sp .6
+.RS 4n
+Adds a \fBTo: undisclosed-recipients:\fR header.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnone\fR\fR
+.ad
+.sp .6
+.RS 4n
+Does nothing, that is, leaves the message as it is.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBOldStyleHeaders (o)\fR\fR
+.ad
+.sp .6
+.RS 4n
+Assumes that the headers may be in old format, that is, spaces delimit names.
+This actually turns on an adaptive algorithm: if any recipient address contains
+a comma, parenthesis, or angle bracket, it is assumed that commas already
+exist. If this flag is not on, only commas delimit names. Headers are always
+output with commas between the names.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBOperatorChars or $o\fR\fR
+.ad
+.sp .6
+.RS 4n
+Defines the list of characters that can be used to separate the components of
+an address into tokens.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPidFile\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the filename of the \fBpid\fR file. The default is
+\fB/var/run/sendmail.pid\fR. The filename is macro-expanded before it is
+opened, and unlinked when \fBsendmail\fR exits.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPostmasterCopy (P\fR\fIpostmaster\fR\fB)\fR\fR
+.ad
+.sp .6
+.RS 4n
+If set, copies of error messages are sent to the named \fIpostmaster\fR. Only
+the header of the failed message is sent. Since most errors are user problems,
+this is probably not a good idea on large sites, and arguably contains all
+sorts of privacy violations, but it seems to be popular with certain operating
+systems vendors.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPrivacyOptions (p\fR\fIopt,opt,...\fR\fB)\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets privacy options. Privacy is really a misnomer; many of these options are
+just a way of insisting on stricter adherence to the SMTP protocol.
+.sp
+The \fBgoaway\fR pseudo-flag sets all flags except \fBnoreceipts\fR,
+\fBrestrictmailq\fR, \fBrestrictqrun\fR, \fBrestrictexpand\fR, \fBnoetrn\fR,
+and \fBnobodyreturn\fR. If \fBmailq\fR is restricted, only people in the same
+group as the queue directory can print the queue. If queue runs are restricted,
+only root and the owner of the queue directory can run the queue. The
+\fBrestrict-expand\fR pseudo-flag instructs sendmail to drop privileges when
+the -bv option is given by users who are neither root nor the \fBTrustedUser\fR
+so users cannot read private aliases, forwards, or \fB:include:\fR files. It
+adds the \fBNonRootSafeAddr\fR to the "DontBlame-Sendmail" option to prevent
+misleading unsafe address warnings. It also overrides the \fB-v\fR (verbose)
+command line option to prevent information leakage. Authentication Warnings add
+warnings about various conditions that may indicate attempts to fool the mail
+system, such as using an non-standard queue directory.
+.sp
+The options can be selected from:
+.sp
+.ne 2
+.na
+\fB\fBauthwarnings\fR\fR
+.ad
+.sp .6
+.RS 4n
+Puts \fBX-Authentication-Warning:\fR headers in messages.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBgoaway\fR\fR
+.ad
+.sp .6
+.RS 4n
+Disallows essentially all SMTP status queries.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBneedexpnhelo\fR\fR
+.ad
+.sp .6
+.RS 4n
+Insists on \fBHELO\fR or \fBEHLO\fR command before \fBEXPN\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBneedmailhelo\fR\fR
+.ad
+.sp .6
+.RS 4n
+Insists on \fBHELO\fR or \fBEHLO\fR command before \fBMAIL\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBneedvrfyhelo\fR\fR
+.ad
+.sp .6
+.RS 4n
+Insists on \fBHELO\fR or \fBEHLO\fR command before \fBVRFY\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnoactualrecipient\fR\fR
+.ad
+.sp .6
+.RS 4n
+Do not put an X-Actual-Recipient line in a DNS that reveals the actual account
+to which an address is mapped.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnoetrn\fR\fR
+.ad
+.sp .6
+.RS 4n
+Disallows \fBETRN\fR entirely.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnoexpn\fR\fR
+.ad
+.sp .6
+.RS 4n
+Disallows \fBEXPN\fR entirely.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnoreceipts\fR\fR
+.ad
+.sp .6
+.RS 4n
+Prevents return receipts.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnobodyreturn\fR\fR
+.ad
+.sp .6
+.RS 4n
+Does not return the body of a message with DSNs.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnovrfy\fR\fR
+.ad
+.sp .6
+.RS 4n
+Disallows \fBVRFY\fR entirely.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpublic\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allows open access.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBre\fR\fB\fR\fBstrictexpand\fR\fR
+.ad
+.sp .6
+.RS 4n
+Restricts \fB-bv\fR and \fB-v\fR command line flags.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrestrictmailq\fR\fR
+.ad
+.sp .6
+.RS 4n
+Restricts \fBmailq\fR command.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrestrictqrun\fR\fR
+.ad
+.sp .6
+.RS 4n
+Restricts \fB-q\fR command line flag.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBProcessTitlePrefix \fIstring\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Prefixes the process title shown on "\fB/usr/ucb/ps auxww\fR" listings with
+\fIstring\fR. The string is macro processed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBQueueDirectory (Q\fR\fIdir\fR\fB)\fR\fR
+.ad
+.sp .6
+.RS 4n
+Uses the named \fIdir\fR as the queue directory.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBQueueFactor (q\fR\fIfactor\fR\fB)\fR\fR
+.ad
+.sp .6
+.RS 4n
+Uses \fIfactor\fR as the multiplier in the map function to decide when to just
+queue up jobs rather than run them. This value is divided by the difference
+between the current load average and the load average limit (\fBx\fR flag) to
+determine the maximum message priority to be sent. Defaults to \fB600000\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBQueueFileMode=\fR\fImode\fR\fR
+.ad
+.sp .6
+.RS 4n
+Defaults permissions for queue files (octal). If not set, \fBsendmail\fR uses
+\fB0600\fR unless its real and effective \fBuid\fR are different in which case
+it uses \fB0644\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBQueueLA (x\fR\fILA\fR\fB)\fR\fR
+.ad
+.sp .6
+.RS 4n
+When the system load average exceeds \fILA\fR, just queues messages (that is,
+does not try to send them). Defaults to eight times the number of processors
+online when \fBsendmail\fR starts.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBQueueSortOrder=\fR\fIalgorithm\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets the algorithm used for sorting the queue. Only the first character of the
+value is used. Legal values are \fBhost\fR (to order by the name of the first
+host name of the first recipient), \fBfilename\fR (to order by the name of the
+queue file name), \fBtime\fR (to order by the submission/creation time),
+\fBrandom\fR (to order randomly), \fBmodification\fR (to order by the
+modification time of the \fBqf\fR file (older entries first)), \fBnone\fR (to
+not order), and \fBpriority\fR (to order by message priority). Host ordering
+makes better use of the connection cache, but may tend to process low priority
+messages that go to a single host over high priority messages that go to
+several hosts; it probably shouldn't be used on slow network links. Filename
+and modification time ordering saves the overhead of reading all of the queued
+items before starting the queue run. Creation (submission) time ordering is
+almost always a bad idea, since it allows large, bulk mail to go out before
+smaller, personal mail, but may have applicability on some hosts with very fast
+connections. Random is useful if several queue runners are started by hand
+which try to drain the same queue since odds are they are working on different
+parts of the queue at the same time. Priority ordering is the default.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBQueueTimeout (T\fR\fIrtime\fR\fB/\fR\fIwtime\fR\fB)\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets the queue timeout to \fIrtime\fR. After this interval, messages that have
+not been successfully sent are returned to the sender. Defaults to five days
+(\fB5d\fR). The optional \fIwtime\fR is the time after which a warning message
+is sent. If it is missing or \fB0\fR, then no warning messages are sent.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBRandFile\fR\fR
+.ad
+.sp .6
+.RS 4n
+File containing random data (use prefix \fBfile:\fR) or the name of the UNIX
+socket if EGD is used (use prefix \fBegd:\fR). Note that Solaris supports
+\fBrandom\fR(4D), so this does not need to be specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBRecipientFactor (y\fR\fIfact\fR\fB)\fR\fR
+.ad
+.sp .6
+.RS 4n
+The indicated factor \fIfact\fR is added to the priority (thus \fIlowering\fR
+the priority of the job) for each recipient, that is, this value penalizes jobs
+with large numbers of recipients. Defaults to \fB30000\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBRefuseLA (X\fR\fILA\fR\fB)\fR\fR
+.ad
+.sp .6
+.RS 4n
+When the system load average exceeds \fILA\fR, refuses incoming \fBSMTP\fR
+connections. Defaults to 12 times the number of processors online when
+\fBsendmail\fR starts.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBRejectLogInterval\fR\fR
+.ad
+.sp .6
+.RS 4n
+Log interval when refusing connections for this long (default: 3h).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBResolverOptions (I)\fR\fR
+.ad
+.sp .6
+.RS 4n
+Tunes DNS lookups.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBRetryFactor (Z\fR\fIfact\fR\fB)\fR\fR
+.ad
+.sp .6
+.RS 4n
+The indicated factor \fIfact\fR is added to the priority every time a job is
+processed. Thus, each time a job is processed, its priority is decreased by the
+indicated value. In most environments this should be positive, since hosts that
+are down are all too often down for a long time. Defaults to \fB90000\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBRrtImpliesDsn\fR\fR
+.ad
+.sp .6
+.RS 4n
+If this option is set, a \fBReturn-Receipt-To\fR: header causes the request of
+a \fBDSN\fR, which is sent to the envelope sender as required by RFC 1891, not
+to the address given in the header.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBRunAsUser\fR\fR
+.ad
+.sp .6
+.RS 4n
+If set, becomes this user when reading and delivering mail. Intended for use of
+firewalls where users do not have accounts.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSafeFileEnvironment\fR\fR
+.ad
+.sp .6
+.RS 4n
+If set, \fBsendmail\fR does a \fBchroot\fR into this directory before writing
+files.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSaveFromLine (f)\fR\fR
+.ad
+.sp .6
+.RS 4n
+Saves Unix-style \fBFrom\fR lines at the front of headers. Normally they are
+assumed redundant and discarded.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSendMimeErrors (j)\fR\fR
+.ad
+.sp .6
+.RS 4n
+If set, sends error messages in MIME format (see RFC 2045 and RFC 1344 for
+details). If disabled, \fBsendmail\fR does not return the DSN keyword in
+response to an \fBEHLO\fR and does not do Delivery Status Notification
+processing as described in RFC 1891.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBServerCertFile\fR\fR
+.ad
+.sp .6
+.RS 4n
+File containing the cert of the server, that is, this cert is used when
+\fBsendmail\fR acts as server.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBServerKeyFile\fR\fR
+.ad
+.sp .6
+.RS 4n
+File containing the private key belonging to the server cert.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBServiceSwitchFile\fR\fR
+.ad
+.sp .6
+.RS 4n
+Defines the path to the service-switch file. Since the service-switch file is
+defined in the Solaris operating environment this option is ignored.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSevenBitInput (7)\fR\fR
+.ad
+.sp .6
+.RS 4n
+Strips input to seven bits for compatibility with old systems. This should not
+be necessary.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSharedMemoryKey\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies key to use for shared memory segment. If not set (or \fB0\fR), shared
+memory is not be used. If this option is set, \fBsendmail\fR can share some
+data between different instances. For example, the number of entries in a queue
+directory or the available space in a file system. This allows for more
+efficient program execution, since only one process needs to update the data
+instead of each individual process gathering the data each time it is required.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSharedMemoryKeyFile=\fR\fIfile\fR\fR
+.ad
+.sp .6
+.RS 4n
+If \fBSharedMemoryKeyFile\fR is set to \fB-1\fR, the automatically selected
+shared memory key will be stored in the specified file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSingleLineFromHeader\fR\fR
+.ad
+.sp .6
+.RS 4n
+If set, \fBFrom:\fR lines that have embedded newlines are unwrapped onto one
+line.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSingleThreadDelivery\fR\fR
+.ad
+.sp .6
+.RS 4n
+If this option and the \fBHostStatusDirectory\fR option are both set, uses
+single thread deliveries to other hosts.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSmtpGreetingMessage or $e\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the initial SMTP greeting message.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSoftBounce\fR\fR
+.ad
+.sp .6
+.RS 4n
+If set, issue temporary errors (\fB4xy\fR) instead of permanent errors
+(\fB5xy\fR). This can be useful during testing of a new configuration to avoid
+erroneous bouncing of mail.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBStatusFile (S\fR\fIfile\fR\fB)\fR\fR
+.ad
+.sp .6
+.RS 4n
+Logs statistics in the named \fIfile\fR. By default, this is
+\fB/etc/mail/sendmail.st\fR. As root, you must \fBtouch\fR(1) this file to
+enable \fBmailstats\fR(1).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSuperSafe (s)\fR\fR
+.ad
+.sp .6
+.RS 4n
+This option can be set to \fBTrue\fR, \fBFalse\fR, \fBInteractive\fR, or
+\fBPostMilter\fR. If set to \fBTrue\fR, \fBsendmail\fR is set to super-safe
+when running things, that is, always instantiate the queue file, even if you
+are going to attempt immediate delivery. \fBsendmail\fR always instantiates the
+queue file before returning control to the client under any circumstances. This
+should really always be set to \fBTrue\fR. The \fBInteractive\fR value has been
+introduced in \fB8.12\fR and can be used together with \fBDeliveryMode=i\fR. It
+skips some synchronization calls which are effectively doubled in the code
+execution path for this mode. If set to \fBPostMilter\fR, \fBsendmail\fR defers
+synchronizing the queue file until any milters have signaled acceptance of the
+message. \fBPostMilter\fR is useful only when \fBsendmail\fR is running as an
+SMTP server; in all other situations it acts the same as True.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBTempFileMode (F\fR\fImode\fR\fB)\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the file mode for queue files.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBTimeout (r\fR\fItimeouts\fR\fB)\fR\fR
+.ad
+.sp .6
+.RS 4n
+Timeout reads after time interval. The \fItimeouts\fR argument is a list of
+\fIkeyword=value\fR pairs. All but \fIcommand\fR apply to client \fBSMTP\fR.
+For backward compatibility, a timeout with no \fIkeyword\fR= part is set all of
+the longer values. The recognized timeouts and their default values, and their
+minimum values specified in RFC 1123 section 5.3.2 are:
+.sp
+.ne 2
+.na
+\fB\fBaconnect\fR\fR
+.ad
+.sp .6
+.RS 4n
+all connections for a single delivery attempt [0, unspecified]
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcommand\fR\fR
+.ad
+.sp .6
+.RS 4n
+command read [1h, 5m]
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBconnect\fR\fR
+.ad
+.sp .6
+.RS 4n
+initial connect [0, unspecified]
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcontrol\fR\fR
+.ad
+.sp .6
+.RS 4n
+complete control socket transaction [2m, none]
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdatablock\fR\fR
+.ad
+.sp .6
+.RS 4n
+data block read [1h, 3m]
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdatafinal\fR\fR
+.ad
+.sp .6
+.RS 4n
+reply to final \fB\&.\fR in data [1h, 10m]
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdatainit\fR\fR
+.ad
+.sp .6
+.RS 4n
+reply to \fBDATA\fR command [5m, 2m]
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfileopen\fR\fR
+.ad
+.sp .6
+.RS 4n
+file open [60sec, none]
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBhelo\fR\fR
+.ad
+.sp .6
+.RS 4n
+reply to \fBHELO\fR or \fBEHLO\fR command [5m, none]
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBhoststatus\fR\fR
+.ad
+.sp .6
+.RS 4n
+host retry [30m, unspecified]
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBiconnect\fR\fR
+.ad
+.sp .6
+.RS 4n
+first attempt to connect to a host [0, unspecified]
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBident\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBIDENT\fR protocol timeout [5s, none]
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBinitial\fR\fR
+.ad
+.sp .6
+.RS 4n
+wait for initial greeting message [5m, 5m]
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBlhlo\fR\fR
+.ad
+.sp .6
+.RS 4n
+wait for reply to an LMTP LHLO command [2m, unspecified]
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmail\fR\fR
+.ad
+.sp .6
+.RS 4n
+reply to \fBMAIL\fR command [10m, 5m]
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmisc\fR\fR
+.ad
+.sp .6
+.RS 4n
+reply to \fBNOOP\fR and \fBVERB\fR commands [2m, none]
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBqueuereturn\fR\fR
+.ad
+.sp .6
+.RS 4n
+undeliverable message returned [5d]
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBqueuewarn\fR\fR
+.ad
+.sp .6
+.RS 4n
+deferred warning [4h]
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBquit\fR\fR
+.ad
+.sp .6
+.RS 4n
+reply to \fBQUIT\fR command [2m, none]
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrcpt\fR\fR
+.ad
+.sp .6
+.RS 4n
+reply to \fBRCPT\fR command [1h, 5m]
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBresolver.retrans\fR\fR
+.ad
+.sp .6
+.RS 4n
+Resolver's retransmission time interval (in seconds) [varies]. Sets both
+\fBTimeout.resolver.retrans.first\fR and \fBTimeout.resolver.retrans.normal\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBresolver.retrans.first\fR\fR
+.ad
+.sp .6
+.RS 4n
+Resolver's retransmission time interval (in seconds) for the first attempt to
+deliver a message [varies].
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBresolver.retrans.normal\fR\fR
+.ad
+.sp .6
+.RS 4n
+Resolver's retransmission time interval (in seconds) for all look-ups except
+the first delivery attempt [varies].
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBresolver.retry\fR\fR
+.ad
+.sp .6
+.RS 4n
+Number of times to retransmit a resolver query [varies]. Sets both
+\fBTimeout.resolver.retry.first\fR and \fBTimeout.resolver.retry.normal\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBresolver.retry.first\fR\fR
+.ad
+.sp .6
+.RS 4n
+Number of times to retransmit a resolver query for the first attempt to deliver
+a message [varies].
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBresolver.retry.normal\fR\fR
+.ad
+.sp .6
+.RS 4n
+Number of times to retransmit a resolver query for all look-ups except the
+first delivery attempt [varies].
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrset\fR\fR
+.ad
+.sp .6
+.RS 4n
+reply to \fBRSET\fR command [5m, none]
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBstarttls\fR\fR
+.ad
+.sp .6
+.RS 4n
+response to an \fBSMTP STARTTLS\fR command [1h]
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBTimeZoneSpec (t\fR\fItzinfo\fR\fB)\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets the local time zone info to \fItzinfo\fR, for example, "PST8PDT".
+Actually, if this is not set, the \fBTZ\fR environment variable is cleared (so
+the system default is used); if set but null, the user's \fBTZ\fR variable is
+used, and if set and non-null, the \fBTZ\fR variable is set to this value.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBTLSSrvOptions\fR\fR
+.ad
+.sp .6
+.RS 4n
+If this option is '\fBV\fR', then no client verification is performed,that is,
+the server does not ask for a certificate.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBTrustedUser\fR\fR
+.ad
+.sp .6
+.RS 4n
+The user parameter can be a user name (looked up in the passwd map) or a
+numeric user id. Trusted user for file ownership and starting the daemon. If
+set, generated alias databases and the control socket (if configured) are
+automatically owned by this user.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBTryNullMXList (w)\fR\fR
+.ad
+.sp .6
+.RS 4n
+If you are the "best" (that is, lowest preference) \fBMX\fR for a given host,
+you should normally detect this situation and treat that condition specially,
+by forwarding the mail to a \fBUUCP\fR feed, treating it as local, or whatever.
+However, in some cases (such as Internet firewalls) you may want to try to
+connect directly to that host as though it had no \fBMX\fR records at all.
+Setting this option causes \fBsendmail\fR to try this. The downside is that
+errors in your configuration are likely to be diagnosed as "host unknown" or
+"message timed out" instead of something more meaningful. This option is
+deprecated.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBUnixFromLine or $l\fR\fR
+.ad
+.sp .6
+.RS 4n
+The "From " line used when sending to files or programs.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBUnsafeGroupWrites\fR\fR
+.ad
+.sp .6
+.RS 4n
+If set, group-writable :include: and .forward files are considered "unsafe",
+that is, programs and files cannot be directly referenced from such files.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBUseErrorsTo (l)\fR\fR
+.ad
+.sp .6
+.RS 4n
+If there is an \fBErrors-To\fR: header, sends error messages to the addresses
+listed there. They normally go to the envelope sender. Use of this option
+causes \fBsendmail\fR to violate \fBRFC\fR 1123. This option is not recommended
+and deprecated.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBUseMSP\fR\fR
+.ad
+.sp .6
+.RS 4n
+Uses as mail submission program, that is, allows group writable queue files if
+the group is the same as that of a set-group-id \fBsendmail\fR binary.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBUserDatabaseSpec (U)\fR\fR
+.ad
+.sp .6
+.RS 4n
+Defines the name and location of the file containing User Database information.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBVerbose (v)\fR\fR
+.ad
+.sp .6
+.RS 4n
+Runs in verbose mode. If this is set, \fBsendmail\fR adjusts the
+\fBHoldExpensive\fR and \fBDeliveryMode\fR options so that all mail is
+delivered completely in a single job so that you can see the entire delivery
+process. The \fBVerbose\fR option should \fBnever\fR be set in the
+configuration file; it is intended for command line use only.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBXscriptFileBufferSize\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets the threshold, in bytes, before a memory-bases queue transcript file
+becomes disk-based. The default is 4096 bytes.
+.RE
+
+.sp
+.LP
+If the first character of the user name is a vertical bar, the rest of the user
+name is used as the name of a program to pipe the mail to. It may be necessary
+to quote the name of the user to keep \fBsendmail\fR from suppressing the
+blanks from between arguments.
+.sp
+.LP
+If invoked as \fBnewaliases\fR, \fBsendmail\fR rebuilds the alias database, so
+long as the \fB/etc/mail/aliases*\fR files are owned by root \fIand\fR root has
+exclusive write permission. If invoked as \fBmailq\fR, \fBsendmail\fR prints
+the contents of the mail queue.
+.SH OPERANDS
+.ne 2
+.na
+\fB\fIaddress\fR\fR
+.ad
+.sp .6
+.RS 4n
+address of an intended recipient of the message being sent.
+.RE
+
+.SH USAGE
+.LP
+See \fBlargefile\fR(7) for the description of the behavior of \fBsendmail\fR
+when encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
+.SH EXIT STATUS
+.LP
+\fBsendmail\fR returns an exit status describing what it did. The codes are
+defined in \fB/usr/include/sysexits.h\fR.
+.sp
+.ne 2
+.na
+\fB\fBEX_OK\fR\fR
+.ad
+.sp .6
+.RS 4n
+Successful completion on all addresses.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEX_NOUSER\fR\fR
+.ad
+.sp .6
+.RS 4n
+User name not recognized.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEX_UNAVAILABLE\fR\fR
+.ad
+.sp .6
+.RS 4n
+Catchall. Necessary resources were not available.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEX_SYNTAX\fR\fR
+.ad
+.sp .6
+.RS 4n
+Syntax error in address.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEX_SOFTWARE\fR\fR
+.ad
+.sp .6
+.RS 4n
+Internal software error, including bad arguments.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEX_OSERR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Temporary operating system error, such as "cannot fork".
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEX_NOHOST\fR\fR
+.ad
+.sp .6
+.RS 4n
+Host name not recognized.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEX_TEMPFAIL\fR\fR
+.ad
+.sp .6
+.RS 4n
+Message could not be sent immediately, but was queued.
+.RE
+
+.SH ENVIRONMENT VARIABLES
+.LP
+No environment variables are used. However, sendmail's start-up script, invoked
+by \fBsvcadm\fR(8), reads \fB/etc/default/sendmail\fR. In this file, if the
+variable \fBETRN_HOSTS\fR is set, the start-up script parses this variable and
+invokes \fBetrn\fR(8) appropriately. \fBETRN_HOSTS\fR should be of the form:
+.sp
+.in +2
+.nf
+"s1:c1.1,c1.2 s2:c2.1 s3:c3.1,c3.2,c3.3"
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+That is, white-space separated groups of \fIserver:client\fR where \fIclient\fR
+can be one or more comma-separated names. The \fI:client\fR part is optional.
+\fIserver\fR is the name of the server to prod; a mail queue run is requested
+for each \fIclient\fR name. This is comparable to running:
+.sp
+.in +2
+.nf
+/usr/lib/sendmail -qR \fIclient\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+on the host \fIserver\fR.
+.SH FILES
+.ne 2
+.na
+\fB\fBdead.letter\fR\fR
+.ad
+.sp .6
+.RS 4n
+Unmailable text
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/default/sendmail\fR\fR
+.ad
+.sp .6
+.RS 4n
+Contains default settings. You can override some of the settings by command
+line options.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/mail/aliases\fR\fR
+.ad
+.sp .6
+.RS 4n
+Mail aliases file (ASCII)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/mail/aliases.db\fR\fR
+.ad
+.sp .6
+.RS 4n
+Database of mail aliases (binary)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/mail/aliases.dir\fR\fR
+.ad
+.sp .6
+.RS 4n
+Database of mail aliases (binary)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/mail/aliases.pag\fR\fR
+.ad
+.sp .6
+.RS 4n
+Database of mail aliases (binary)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/mail/sendmail.cf\fR\fR
+.ad
+.sp .6
+.RS 4n
+Defines environment for \fBsendmail\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/mail/submit.cf\fR\fR
+.ad
+.sp .6
+.RS 4n
+Defines environment for MSP
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/mail/trusted-users\fR\fR
+.ad
+.sp .6
+.RS 4n
+Lists users that are "trusted", that is, able to set their envelope from
+address using \fB-f\fR without generating a warning message. Note that this
+file is consulted by the default \fBsendmail.cf\fR, but not by the default
+\fBsubmit.cf\fR, in which the line referring to \fB/etc/mail/trusted-users\fR
+is commented out. See \fBsendmail\fR(5) for instructions on making changes to
+\fBsubmit.cf\fR and \fBsendmail.cf\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/spool/clientmqueue/*\fR\fR
+.ad
+.sp .6
+.RS 4n
+Temporary files and queued mail
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/spool/mqueue/*\fR\fR
+.ad
+.sp .6
+.RS 4n
+Temporary files and queued mail
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB~/.forward\fR\fR
+.ad
+.sp .6
+.RS 4n
+List of recipients for forwarding messages
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/include/libmilter/README\fR\fR
+.ad
+.sp .6
+.RS 4n
+Describes the steps needed to compile and run a filter
+.RE
+
+.SH SEE ALSO
+.LP
+.BR mail (1),
+.BR mailq (1),
+.BR mailx (1),
+.BR nice (1),
+.BR svcs (1),
+.BR biff (1B),
+.BR fork (2),
+.BR getpwnam (3C),
+.BR getusershell (3C),
+.BR resolver (3RESOLV),
+.BR random (4D),
+.BR aliases (5),
+.BR hosts (5),
+.BR hosts_access (5),
+.BR sendmail (5),
+.BR shells (5),
+.BR attributes (7),
+.BR largefile (7),
+.BR smf (7),
+.BR check-hostname (8),
+.BR check-permissions (8),
+.BR etrn (8),
+.BR newaliases (8),
+.BR svcadm (8),
+.BR svccfg (8),
+.BR tcpd (8)
+.sp
+.LP
+\fBRFC\fR 2821 \fISimple Mail Transfer Protocol\fR, John Klensin, April 2001.
+.sp
+.LP
+\fBRFC\fR 2822 \fIInternet Message Format\fR, Pete Resnick, April 2001.
+.sp
+.LP
+\fIsendmail, Third Edition\fR, Bryan Costales with Eric Allman\fB\fR, O'Reilly
+& Associates, Inc., 2003.
+.sp
+.LP
+http://www.sendmail.org
+.sp
+.LP
+http://www.milter.org
+.SH NOTES
+.LP
+The \fBsendmail\fR program requires a fully qualified host name when starting.
+A script has been included to help verify if the host name is defined properly
+(see \fBcheck-hostname\fR(8)).
+.sp
+.LP
+The permissions and the ownership of several directories have been changed in
+order to increase security. In particular, access to \fB/etc/mail\fR and
+\fB/var/spool/mqueue\fR has been restricted.
+.sp
+.LP
+Security restrictions have been placed users using \fB\&.forward\fR files to
+pipe mail to a program or redirect mail to a file. The default shell (as listed
+in \fB/etc/passwd\fR) of these users must be listed in \fB/etc/shells\fR. This
+restriction does not affect mail that is being redirected to another alias.
+.sp
+.LP
+Additional restrictions have been put in place on \fB\&.forward\fR and
+\fB:include:\fR files. These files and the directory structure that they are
+placed in cannot be group- or world-writable. See \fBcheck-permissions\fR(8).
+.sp
+.LP
+If you have interfaces that map to domains that have MX records that point to
+non-local destinations, you might need to enable the \fBDontProbeInterfaces\fR
+option to enable delivery to those destinations. In its default startup
+behavior, \fBsendmail\fR probes each interface and adds an interface's \fBIP\fR
+addresses, as well as any domains that those addresses map to, to its list of
+domains that are considered local. For domains thus added, being on the list of
+local domains is equivalent to having a 0-preference MX record, with
+\fBlocalhost\fR as the MX value. If this is not the result you want, enable
+\fBDontProbeInterfaces\fR.
diff --git a/usr/src/man/man8/setuname.8 b/usr/src/man/man8/setuname.8
new file mode 100644
index 0000000000..00d6fc1471
--- /dev/null
+++ b/usr/src/man/man8/setuname.8
@@ -0,0 +1,74 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 1998 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SETUNAME 8 "Jul 9, 2003"
+.SH NAME
+setuname \- change machine information
+.SH SYNOPSIS
+.LP
+.nf
+\fBsetuname\fR [\fB-t\fR] [\fB-n\fR \fInode\fR] [\fB-s\fR \fIname\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBsetuname\fR utility changes the parameter value for the system name and
+node name. Each parameter can be changed using \fBsetuname\fR and the
+appropriate option.
+.sp
+.LP
+Either or both the \fB-s\fR and \fB-n\fR options must be given when invoking
+\fBsetuname\fR.
+.sp
+.LP
+The system architecture may place requirements on the size of the system and
+network node name. The command will issue a fatal warning message and an error
+message if the name entered is incompatible with the system requirements.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-n\fR\fI node\fR\fR
+.ad
+.RS 11n
+Changes the node name. \fInode\fR specifies the new network node name and can
+consist of alphanumeric characters and the special characters dash, underbar,
+and dollar sign.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR\fI name\fR\fR
+.ad
+.RS 11n
+Changes the system name. \fIname\fR specifies new system name and can consist
+of alphanumeric characters and the special characters dash, underbar, and
+dollar sign.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-t\fR\fR
+.ad
+.RS 11n
+Temporary change. No attempt will be made to create a permanent change.
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7)
+.SH NOTES
+.sp
+.LP
+\fBsetuname\fR attempts to change the parameter values in two places: the
+running kernel and, as necessary per implementation, to cross system reboots. A
+temporary change changes only the running kernel.
diff --git a/usr/src/man/man8/sf880drd.8 b/usr/src/man/man8/sf880drd.8
new file mode 100644
index 0000000000..dcaae4cc79
--- /dev/null
+++ b/usr/src/man/man8/sf880drd.8
@@ -0,0 +1,64 @@
+'\" te
+.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SF880DRD 8 "Aug 13, 2004"
+.SH NAME
+sf880drd \- Sun Fire 880 Dynamic Reconfiguration daemon
+.SH SYNOPSIS
+.LP
+.nf
+\fBsf880drd\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The Sun Fire 880 Dynamic Reconfiguration daemon, \fBsf880drd\fR, is part of the
+\fBPCI\fR and system bus hotplug framework. \fBsf880drd\fR starts at boot time.
+It has no configuration options and does not report any system status.
+.sp
+.LP
+\fBsf880drd\fR implements the Sun Fire \fB880\fR console-less system
+administration (per-slot pushbuttons and \fBLED\fR status indicators). It also
+manages various aspects of \fBCPU\fR/memory hotplug.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/usr/platform/SUNW,Sun-Fire-880/lib/sf880drd\fR \fR
+.ad
+.sp .6
+.RS 4n
+
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR svcs (1),
+.BR attributes (7),
+.BR smf (7),
+.BR cfgadm (8),
+.BR cfgadm_pci (8),
+.BR cfgadm_sbd (8),
+.BR svcadm (8)
+.SH NOTES
+.sp
+.LP
+The \fBsf880drd\fR service is managed by the service management facility,
+\fBsmf\fR(7), under the service identifier:
+.sp
+.in +2
+.nf
+svc:/platform/sun4u/sf880drd
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Administrative actions on this service, such as enabling, disabling, or
+requesting restart, can be performed using \fBsvcadm\fR(8). The service's
+status can be queried using the \fBsvcs\fR(1) command.
diff --git a/usr/src/man/man8/share.8 b/usr/src/man/man8/share.8
new file mode 100644
index 0000000000..a5c27d3872
--- /dev/null
+++ b/usr/src/man/man8/share.8
@@ -0,0 +1,208 @@
+'\" te
+.\" Copyright (c) 2000 Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SHARE 8 "Jan 23, 2007"
+.SH NAME
+share \- make local resource available for mounting by remote systems
+.SH SYNOPSIS
+.LP
+.nf
+\fBshare\fR [\fB-p\fR] [\fB-F\fR \fIFSType\fR] [\fB-o\fR \fIspecific_options\fR] [\fB-d\fR \fIdescription\fR]
+ [\fIpathname\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBshare\fR command exports, or makes a resource available for mounting,
+through a remote file system of type \fIFSType\fR. If the option \fB-F\fR
+\fIFSType\fR is omitted, the first file system type listed in
+\fB/etc/dfs/fstypes\fR is used as default. For a description of NFS specific
+options, see \fBshare_nfs\fR(8). \fIpathname\fR is the pathname of the
+directory to be shared. When invoked with no arguments, \fBshare\fR displays
+all shared file systems.
+.SH OPTIONS
+.sp
+.ne 2
+.na
+\fB\fB-d\fR \fIdescription\fR\fR
+.ad
+.sp .6
+.RS 4n
+The \fB-d\fR flag may be used to provide a description of the resource being
+shared.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-F\fR \fIFSType\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify the filesystem type.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-o\fR \fIspecific_options\fR\fR
+.ad
+.sp .6
+.RS 4n
+The \fIspecific_options\fR are used to control access of the shared resource.
+(See \fBshare_nfs\fR(8) for the NFS specific options.) They may be any of the
+following:
+.sp
+.ne 2
+.na
+\fB\fBrw\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fIpathname\fR is shared read/write to all clients. This is also the default
+behavior.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrw=\fR\fIclient\fR[\fI:client\fR]...\fR
+.ad
+.sp .6
+.RS 4n
+\fIpathname\fR is shared read/write only to the listed clients. No other
+systems can access \fIpathname\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBro\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fIpathname\fR is shared read-only to all clients.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBro=\fR\fIclient\fR[\fI:client\fR]...\fR
+.ad
+.sp .6
+.RS 4n
+\fIpathname\fR is shared read-only only to the listed clients. No other systems
+can access \fIpathname\fR.
+.RE
+
+Separate multiple options with commas. Separate multiple operands for an option
+with colons. See EXAMPLES.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR\fR
+.ad
+.sp .6
+.RS 4n
+Causes the share operation to persist across reboots.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRSharing a Read-Only Filesystem
+.sp
+.LP
+This line will share the \fB/disk\fR file system read-only at boot time.
+
+.sp
+.in +2
+.nf
+\fBshare\fR \fB-F\fR\fB nfs \fR\fB-o\fR \fBro /disk\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRInvoking Multiple Options
+.sp
+.LP
+The following command shares the filesystem \fB/export/manuals\fR, with members
+of the netgroup having read-only access and users on the specified host having
+read-write access.
+
+.sp
+.in +2
+.nf
+share \fB-F\fR nfs \fB-o\fR ro=\fInetgroup_name\fR,rw=\fIhost1\fR:\fIhost2\fR:\fIhost3\fR /export/manuals
+.fi
+.in -2
+.sp
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/dfs/dfstab\fR\fR
+.ad
+.sp .6
+.RS 4n
+List of \fBshare\fR commands to be executed at boot time. Note that you can
+invoke \fBshare\fR from a command line and use the \fB-p\fR option, described
+above, as an alternative to editing this file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/dfs/fstypes\fR\fR
+.ad
+.sp .6
+.RS 4n
+List of file system types; NFS is the default.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/dfs/sharetab\fR\fR
+.ad
+.sp .6
+.RS 4n
+System record of shared file systems.
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7),
+.BR mountd (8),
+.BR nfsd (8),
+.BR share_nfs (8),
+.BR shareall (8),
+.BR unshare (8)
+.SH NOTES
+.sp
+.LP
+Export (old terminology): file system sharing used to be called exporting on
+SunOS 4.x, so the \fBshare\fR command used to be invoked as \fBexportfs\fR(1B)
+or \fB/usr/sbin/exportfs\fR.
+.sp
+.LP
+If \fBshare\fR commands are invoked multiple times on the same filesystem, the
+last \fBshare\fR invocation supersedes the previous\(emthe options set by the
+last \fBshare\fR command replace the old options. For example, if read-write
+permission was given to \fBusera\fR on \fB/somefs\fR, then to give read-write
+permission also to \fBuserb\fR on \fB/somefs\fR:
+.sp
+.LP
+\fBexample% share -F nfs -o rw=usera:userb /somefs\fR
+.sp
+.LP
+This behavior is not limited to sharing the root filesystem, but applies to all
+filesystems.
diff --git a/usr/src/man/man8/share_nfs.8 b/usr/src/man/man8/share_nfs.8
new file mode 100644
index 0000000000..00fbc0a64e
--- /dev/null
+++ b/usr/src/man/man8/share_nfs.8
@@ -0,0 +1,818 @@
+.\"
+.\" CDDL HEADER START
+.\"
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.\"
+.\" CDDL HEADER END
+.\"
+.\"
+.\" Copyright (C) 2008, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 2014 Nexenta Systems, Inc. All rights reserved.
+.\" Copyright 2016 Jason King.
+.\"
+.Dd November 22, 2021
+.Dt SHARE_NFS 8
+.Os
+.Sh NAME
+.Nm share_nfs
+.Nd make local NFS file systems available for mounting by remote systems
+.Sh SYNOPSIS
+.Nm share
+.Op Fl d Ar description
+.Op Fl F Sy nfs
+.Op Fl o Ar specific_options
+.Ar pathname
+.Sh DESCRIPTION
+The
+.Nm share
+utility makes local file systems available for mounting by remote systems.
+It starts the
+.Xr nfsd 8
+and
+.Xr mountd 8
+daemons if they are not already running.
+.Pp
+If no argument is specified, then
+.Nm share
+displays all file systems currently shared, including NFS file systems and file
+systems shared through other distributed file system packages.
+.Sh OPTIONS
+The following options are supported:
+.Bl -tag -width "indented"
+.It Fl d Ar description
+Provide a comment that describes the file system to be shared.
+.It Fl F Sy nfs
+Share NFS file system type.
+.It Fl o Ar specific_options
+Specify
+.Ar specific_options
+in a comma-separated list of keywords and attribute-value-assertions for
+interpretation by the file-system-type-specific command.
+If
+.Ar specific_options
+is not specified, then by default sharing is read-write to all clients.
+.Ar specific_options
+can be any combination of the following:
+.Bl -tag -width "indented"
+.It Sy aclok
+Allows the NFS server to do access control for NFS Version 2 clients (running
+SunOS 2.4 or earlier).
+When
+.Sy aclok
+is set on the server, maximal access is given to all clients.
+For example, with
+.Sy aclok
+set, if anyone has read permissions, then everyone does.
+If
+.Sy aclok
+is not set, minimal access is given to all clients.
+.It Sy anon Ns = Ns Ar uid
+Set
+.Ar uid
+to be the effective user ID of unknown users.
+By default, unknown users are given the effective user ID UID_NOBODY.
+If uid is set to -1, access is denied.
+.It Ar charset Ns = Ns Ar access_list
+Where
+.Ar charset
+is one of: euc-cn, euc-jp, euc-jpms, euc-kr, euc-tw, iso8859-1, iso8859-2,
+iso8859-5, iso8859-6, iso8859-7, iso8859-8, iso8859-9, iso8859-13, iso8859-15,
+koi8-r.
+.Pp
+Clients that match the
+.Ar access_list
+for one of these properties will be assumed to be using that character set and
+file and path names will be converted to UTF-8 for the server.
+.It Sy gidmap Ns = Ns Ar mapping Ns Oo ~ Ns Ar mapping Oc Ns ...
+Where
+.Ar mapping
+is:
+.Oo Ar clnt Oc : Ns Oo Ar srv Oc : Ns Ar access_list
+.Pp
+Allows remapping the group ID (gid) in the incoming request to some other gid.
+This effectively changes the identity of the user in the request to that of
+some other local user.
+.Pp
+For clients where the gid in the incoming request is
+.Ar clnt
+and the client matches the
+.Ar access_list ,
+change the group ID to
+.Ar srv .
+If
+.Ar clnt
+is asterisk (*), all groups are mapped by this rule.
+If
+.Ar clnt
+is omitted, all unknown groups are mapped by this rule.
+If
+.Ar srv
+is set to -1, access is denied.
+If
+.Ar srv
+is omitted, the gid is mapped to UID_NOBODY.
+.Pp
+The particular
+.Ar mapping Ns s
+are separated in the
+.Sy gidmap Ns =
+option by tilde (~) and are evaluated in the specified order until a match is
+found.
+Both
+.Sy root Ns =
+and
+.Sy root_mapping Ns =
+options (if specified) are evaluated before the
+.Sy gidmap Ns =
+option.
+The
+.Sy gidmap Ns =
+option is skipped in the case where the client matches the
+.Sy root Ns =
+option.
+.Pp
+The
+.Sy gidmap Ns =
+option is evaluated before the
+.Sy anon Ns =
+option.
+.Pp
+This option is supported only for AUTH_SYS.
+.It Sy index Ns = Ns Ar file
+Load
+.Ar file
+rather than a listing of the directory containing this file when the
+directory is referenced by an NFS URL.
+.It Sy log Ns Oo = Ns Ar tag Oc
+Enables NFS server logging for the specified file system.
+The optional
+.Ar tag
+determines the location of the related log files.
+The
+.Ar tag
+is defined in
+.Pa /etc/nfs/nfslog.conf .
+If no
+.Ar tag
+is specified, the default values associated with the global tag in
+.Pa /etc/nfs/nfslog.conf
+are used.
+Support of NFS server logging is only available for NFS Version 2 and
+Version 3 requests.
+.It Sy nohide
+By default, if server exports two filesystems, one of which is mounted as a
+child of the other, NFS Version 2 and Version 3 clients must mount both
+filesystems explicitly in order to access them.
+If a client only mounts the parent, it will see an empty directory at the
+location where the other filesystem is mounted.
+.Pp
+Setting the
+.Sy nohide
+option on a filesystem causes it to no longer be hidden in this manner, and the
+client will be able to move from the parent filesystem to this one without
+noticing the change.
+However, some NFS clients or applications may not function correctly when
+this option is used.
+In particular, files on different underlying filesystems may appear to have
+the same inode numbers.
+The
+.Sy nohide
+option only applies to NFS Version 2 and Version 3 requests.
+.It Sy noaclfab
+By default, the NFS server will fabricate POSIX-draft style ACLs in response
+to ACL requests from NFS Version 2 or Version 3 clients accessing shared
+file systems that do not support POSIX-draft ACLs (such as ZFS).
+Specifying
+.Sy noaclfab
+disables this behavior.
+.It Sy none Ns = Ns Ar access_list
+Access is not allowed to any client that matches the access list.
+The exception is when the access list is an asterisk (*), in which case
+.Sy ro
+or
+.Sy rw
+can override
+.Sy none .
+.It Sy nosub
+Prevents clients from mounting subdirectories of shared directories.
+For example, if
+.Pa /export
+is shared with the
+.Sy nosub
+option on server
+.Qq fooey
+then a NFS client cannot do:
+.Bd -literal -offset indent
+mount -F nfs fooey:/export/home/mnt
+.Ed
+.Pp
+NFS Version 4 does not use the MOUNT protocol.
+The
+.Sy nosub
+option only applies to NFS Version 2 and Version 3 requests.
+.It Sy nosuid
+By default, clients are allowed to create files on the shared file system with
+the setuid or setgid mode enabled.
+Specifying
+.Sy nosuid
+causes the server file system to silently ignore any attempt to enable the
+setuid or setgid mode bits.
+.It Sy public
+Moves the location of the public file handle from root
+.Pa ( / )
+to the exported directory for WebNFS-enabled browsers and clients.
+This option does not enable WebNFS service; WebNFS is always on.
+Only one file system per server may use this option.
+Any other option, including the
+.Sy ro Ns = Ns Ar list
+and
+.Sy rw Ns = Ns Ar list
+options can be included with the
+.Sy public
+option.
+.It Sy ro
+Sharing is read-only to all clients.
+.It Sy ro Ns = Ns Ar access_list
+Sharing is read-only to the clients listed in
+.Ar access_list ;
+overrides the
+.Sy rw
+suboption for the clients specified.
+See
+.Sx access_list
+below.
+.It Sy root Ns = Ns Ar access_list
+Only root users from the hosts specified in
+.Ar access_list
+have root access.
+See
+.Sx access_list
+below.
+By default, no host has root access, so root users are mapped to an anonymous
+user ID (see the
+.Sy anon Ns = Ns Ar uid
+option described above).
+Netgroups can be used if the file system shared is using UNIX authentication
+(AUTH_SYS).
+.It Sy root_mapping Ns = Ns Ar uid
+For a client that is allowed root access, map the root UID to the specified
+user id.
+.It Sy rw
+Sharing is read-write to all clients.
+.It Sy rw Ns = Ns Ar access_list
+Sharing is read-write to the clients listed in
+.Ar access_list ;
+overrides the
+.Sy ro
+suboption for the clients specified.
+See
+.Sx access_list
+below.
+.It Sy sec Ns = Ns Ar mode Ns Oo : Ns Ar mode Oc Ns ...
+Sharing uses one or more of the specified security modes.
+The
+.Ar mode
+in the
+.Sy sec Ns = Ns Ar mode
+option must be a mode name supported on the client.
+If the
+.Sy sec Ns =
+option is not specified, the default security mode used is AUTH_SYS.
+Multiple
+.Sy sec Ns =
+options can be specified on the command line, although each mode can appear
+only once.
+The security modes are defined in
+.Xr nfssec 7 .
+.Pp
+Each
+.Sy sec Ns =
+option specifies modes that apply to any subsequent
+.Sy window Ns = ,
+.Sy rw ,
+.Sy ro ,
+.Sy rw Ns = ,
+.Sy ro Ns = ,
+and
+.Sy root Ns =
+options that are provided before another
+.Sy sec Ns =
+option.
+Each additional
+.Sy sec Ns =
+resets the security mode context, so that more
+.Sy window Ns = ,
+.Sy rw ,
+.Sy ro ,
+.Sy rw Ns = ,
+.Sy ro Ns = ,
+and
+.Sy root Ns =
+options can be supplied for additional modes.
+.It Sy sec Ns = Ns Sy none
+If the option
+.Sy sec Ns = Ns Sy none
+is specified when the client uses AUTH_NONE, or if the client uses a security
+mode that is not one that the file system is shared with, then the credential
+of each NFS request is treated as unauthenticated.
+See the
+.Sy anon Ns = Ns Ar uid
+option for a description of how unauthenticated requests are handled.
+.It Sy secure
+This option has been deprecated in favor of the
+.Sy sec Ns = Ns Sy dh
+option.
+.It Sy uidmap Ns = Ns Ar mapping Ns Oo ~ Ns Ar mapping Oc Ns ...
+Where
+.Ar mapping
+is:
+.Oo Ar clnt Oc : Ns Oo Ar srv Oc : Ns Ar access_list
+.Pp
+Allows remapping the user ID (uid) in the incoming request to some other uid.
+This effectively changes the identity of the user in the request to that of
+some other local user.
+.Pp
+For clients where the uid in the incoming request is
+.Ar clnt
+and the client matches the
+.Ar access_list ,
+change the user ID to
+.Ar srv .
+If
+.Ar clnt
+is asterisk (*), all users are mapped by this rule.
+If
+.Ar clnt
+is omitted, all unknown users are mapped by this rule.
+If
+.Ar srv
+is set to -1, access is denied.
+If
+.Ar srv
+is omitted, the uid is mapped to UID_NOBODY.
+.Pp
+The particular
+.Ar mapping Ns s
+are separated in the
+.Sy uidmap Ns =
+option by tilde (~) and are evaluated in the specified order until a match is
+found.
+Both
+.Sy root Ns =
+and
+.Sy root_mapping Ns =
+options (if specified) are evaluated before the
+.Sy uidmap Ns =
+option.
+The
+.Sy uidmap Ns =
+option is skipped in the case where the client matches the
+.Sy root Ns =
+option.
+.Pp
+The
+.Sy uidmap Ns =
+option is evaluated before the
+.Sy anon Ns =
+option.
+.Pp
+This option is supported only for AUTH_SYS.
+.It Sy window Ns = Ns Ar value
+When sharing with
+.Sy sec Ns = Ns Sy dh ,
+set the maximum life time (in seconds) of the RPC request's credential (in the
+authentication header) that the NFS server allows.
+If a credential arrives with a life time larger than what is allowed, the NFS
+server rejects the request.
+The default value is 30000 seconds (8.3 hours).
+.El
+.El
+.Ss access_list
+The
+.Ar access_list
+argument is a colon-separated list whose components may be any number of the
+following:
+.Bl -tag -width "indented"
+.It Sy hostname
+The name of a host.
+With a server configured for DNS or LDAP naming in the nsswitch
+.Sy hosts
+entry, any hostname must be represented as a fully qualified DNS or LDAP name.
+.It Sy netgroup
+A netgroup contains a number of hostnames.
+With a server configured for DNS or LDAP naming in the nsswitch
+.Sy hosts
+entry, any hostname in a netgroup must be represented as a fully qualified DNS
+or LDAP name.
+.It Sy domain name suffix
+To use domain membership the server must use DNS or LDAP to resolve hostnames to
+IP addresses; that is, the
+.Sy hosts
+entry in the
+.Pa /etc/nsswitch.conf
+must specify
+.Sy dns
+or
+.Sy ldap
+ahead of
+.Sy nis
+since only DNS and LDAP return the full domain name of the host.
+Other name services like NIS cannot be used to resolve hostnames on the server
+because when mapping an IP address to a hostname they do not return domain
+information.
+For example,
+.Bd -literal -offset indent
+NIS 172.16.45.9 --> "myhost"
+.Ed
+.Pp
+and
+.Bd -literal -offset indent
+DNS or LDAP 172.16.45.9 --> "myhost.mydomain.example.com"
+.Ed
+.Pp
+The domain name suffix is distinguished from hostnames and netgroups by a
+prefixed dot.
+For example,
+.Bd -literal -offset indent
+rw=.mydomain.example.com
+.Ed
+.Pp
+A single dot can be used to match a hostname with no suffix.
+For example,
+.Bd -literal -offset indent
+rw=.
+.Ed
+.Pp
+matches
+.Qq mydomain
+but not
+.Qq mydomain.example.com .
+This feature can be used to match hosts resolved through NIS rather
+than DNS and LDAP.
+.It Sy network
+The network or subnet component is preceded by an at-sign (@).
+It can be either a name or a dotted address.
+If a name, it is converted to a dotted address by
+.Xr getnetbyname 3SOCKET .
+For example,
+.Bd -literal -offset indent
+=@mynet
+.Ed
+.Pp
+would be equivalent to:
+.Bd -literal -offset indent
+=@172.16 or =@172.16.0.0
+.Ed
+.Pp
+The network prefix assumes an octet-aligned netmask determined from the zeroth
+octet in the low-order part of the address up to and including the high-order
+octet, if you want to specify a single IP address (see below).
+In the case where network prefixes are not byte-aligned, the syntax allows a
+mask length to be specified explicitly following a slash (/) delimiter.
+For example,
+.Bd -literal -offset indent
+=@theothernet/17 or =@172.16.132/22
+.Ed
+.Pp
+where the mask is the number of leftmost contiguous significant bits in the
+corresponding IP address.
+.Pp
+When specifying individual IP addresses, use the same @ notation described
+above, without a netmask specification.
+For example:
+.Bd -literal -offset indent
+=@172.16.132.14
+.Ed
+.Pp
+Multiple, individual IP addresses would be specified, for example, as:
+.Bd -literal -offset indent
+root=@172.16.132.20:@172.16.134.20
+.Ed
+.El
+.Pp
+A prefixed minus sign (-) denies access to that component of
+.Ar access_list .
+The list is searched sequentially until a match is found that either grants or
+denies access, or until the end of the list is reached.
+For example, if host
+.Qq terra
+is in the
+.Qq engineering
+netgroup, then
+.Bd -literal -offset indent
+rw=-terra:engineering
+.Ed
+.Pp
+denies access to
+.Qq terra
+but
+.Bd -literal -offset indent
+rw=engineering:-terra
+.Ed
+.Pp
+grants access to
+.Qq terra .
+.Sh OPERANDS
+The following operands are supported:
+.Bl -tag -width "pathname"
+.It Sy pathname
+The pathname of the file system to be shared.
+.El
+.Sh FILES
+.Bl -tag -width "/etc/nfs/nfslog.conf"
+.It Pa /etc/dfs/fstypes
+list of system types, NFS by default
+.It Pa /etc/dfs/sharetab
+system record of shared file systems
+.It Pa /etc/nfs/nfslogtab
+system record of logged file systems
+.It Pa /etc/nfs/nfslog.conf
+logging configuration file
+.El
+.Sh EXIT STATUS
+.Ex -std
+.Sh EXAMPLES
+.Ss Example 1 Sharing A File System With Logging Enabled
+The following example shows the
+.Pa /export
+file system shared with logging enabled:
+.Bd -literal -offset indent
+share -o log /export
+.Ed
+.Pp
+The default global logging parameters are used since no tag identifier is
+specified.
+The location of the log file, as well as the necessary logging work
+files, is specified by the global entry in
+.Pa /etc/nfs/nfslog.conf .
+The
+.Xr nfslogd 8
+daemon runs only if at least one file system entry in
+.Pa /etc/dfs/dfstab
+is shared with logging enabled upon starting or rebooting the system.
+Simply sharing a file system with logging enabled from the command line does not
+start the
+.Xr nfslogd 8 .
+.Ss Example 2 Remap A User Coming From The Particular NFS Client
+The following example remaps the user with uid
+.Sy 100
+at client
+.Sy 10.0.0.1
+to user
+.Sy joe :
+.Bd -literal -offset indent
+share -o uidmap=100:joe:@10.0.0.1 /export
+.Ed
+.Sh SEE ALSO
+.Xr getnetbyname 3SOCKET ,
+.Xr netgroup 5 ,
+.Xr nfslog.conf 5 ,
+.Xr acl 7 ,
+.Xr attributes 7 ,
+.Xr nfssec 7 ,
+.Xr mount 8 ,
+.Xr mountd 8 ,
+.Xr nfsd 8 ,
+.Xr nfslogd 8 ,
+.Xr share 8 ,
+.Xr unshare 8
+.Sh NOTES
+If the
+.Sy sec Ns =
+option is presented at least once, all uses of the
+.Sy window Ns = ,
+.Sy rw ,
+.Sy ro ,
+.Sy rw Ns = ,
+.Sy ro Ns = ,
+and
+.Sy root Ns =
+options must come after the first
+.Sy sec Ns =
+option.
+If the
+.Sy sec Ns =
+option is not presented, then
+.Sy sec Ns = Ns Sy sys
+is implied.
+.Pp
+If one or more explicit
+.Sy sec Ns =
+options are presented,
+.Sy sys
+must appear in one of the options mode lists for accessing using the AUTH_SYS
+security mode to be allowed.
+For example:
+.Bd -literal -offset indent
+share -F nfs /var
+share -F nfs -o sec=sys /var
+.Ed
+.Pp
+grants read-write access to any host using AUTH_SYS, but
+.Bd -literal -offset indent
+share -F nfs -o sec=dh /var
+.Ed
+.Pp
+grants no access to clients that use AUTH_SYS.
+.Pp
+Unlike previous implementations of
+.Nm ,
+access checking for the
+.Sy window Ns = ,
+.Sy rw ,
+.Sy ro ,
+.Sy rw Ns = ,
+and
+.Sy ro Ns =
+options is done per NFS request, instead of per mount request.
+.Pp
+Combining multiple security modes can be a security hole in situations where
+the
+.Sy ro Ns =
+and
+.Sy rw Ns =
+options are used to control access to weaker security modes.
+In this example,
+.Bd -literal -offset indent
+share -F nfs -o sec=dh,rw,sec=sys,rw=hosta /var
+.Ed
+.Pp
+an intruder can forge the IP address for
+.Qq hosta
+(albeit on each NFS request) to side-step the stronger controls of AUTH_DES.
+Something like:
+.Bd -literal -offset indent
+share -F nfs -o sec=dh,rw,sec=sys,ro /var
+.Ed
+.Pp
+is safer, because any client (intruder or legitimate) that avoids AUTH_DES only
+gets read-only access.
+In general, multiple security modes per share command should only be used in
+situations where the clients using more secure modes get stronger access than
+clients using less secure modes.
+.Pp
+If
+.Sy rw Ns =
+and
+.Sy ro Ns =
+options are specified in the same
+.Sy sec Ns =
+clause, and a client is in both lists, the order of the two options determines
+the access the client gets.
+If client
+.Qq hosta
+is in two netgroups,
+.Qq group1
+and
+.Qq group2 ,
+in this example, the client would get read-only access:
+.Bd -literal -offset indent
+share -F nfs -o ro=group1,rw=group2 /var
+.Ed
+.Pp
+In this example
+.Qq hosta
+would get read-write access:
+.Bd -literal -offset indent
+share -F nfs -o rw=group2,ro=group1 /var
+.Ed
+.Pp
+If within a
+.Sy sec Ns =
+clause, both the
+.Sy ro
+and
+.Sy rw Ns =
+options are specified, for compatibility, the order of the options rule is not
+enforced.
+All hosts would get read-only access, with the exception to those in the
+read-write list.
+Likewise, if the
+.Sy ro Ns =
+and
+.Sy rw
+options are specified, all hosts get read-write access with the exceptions of
+those in the read-only list.
+.Pp
+The
+.Sy ro Ns =
+and
+.Sy rw Ns =
+options are guaranteed to work over UDP and TCP but may not work over other
+transport providers.
+.Pp
+The
+.Sy root Ns =
+option with AUTH_SYS is guaranteed to work over UDP and TCP but may not work
+over other transport providers.
+.Pp
+The
+.Sy root Ns =
+option with AUTH_DES is guaranteed to work over any transport provider.
+.Pp
+There are no interactions between the
+.Sy root Ns =
+option and the
+.Sy rw ,
+.Sy ro ,
+.Sy rw Ns = ,
+and
+.Sy ro Ns =
+options.
+Putting a host in the root list does not override the semantics of the other
+options.
+The access the host gets is the same as when the
+.Sy root Ns =
+option is absent.
+For example, the following share command denies access to
+.Qq hostb :
+.Bd -literal -offset indent
+share -F nfs -o ro=hosta,root=hostb /var
+.Ed
+.Pp
+The following gives read-only permissions to
+.Qq hostb :
+.Bd -literal -offset indent
+share -F nfs -o ro=hostb,root=hostb /var
+.Ed
+.Pp
+The following gives read-write permissions to
+.Qq hostb :
+.Bd -literal -offset indent
+share -F nfs -o ro=hosta,rw=hostb,root=hostb /var
+.Ed
+.Pp
+If the file system being shared is a symbolic link to a valid pathname, the
+canonical path (the path which the symbolic link follows) is shared.
+For example, if
+.Pa /export/foo
+is a symbolic link to
+.Pa /export/bar ,
+the following share command results in
+.Pa /export/bar
+as the shared pathname (and not
+.Pa /export/foo ) :
+.Bd -literal -offset indent
+share -F nfs /export/foo
+.Ed
+.Pp
+An NFS mount of
+.Lk server:/export/foo
+results in
+.Lk server:/export/bar
+really being mounted.
+.Pp
+This line in the
+.Pa /etc/dfs/dfstab
+file shares the
+.Pa /disk
+file system read-only at boot time:
+.Bd -literal -offset indent
+share -F nfs -o ro /disk
+.Ed
+.Pp
+The
+.Xr mountd 8
+process allows the processing of a path name that contains a symbolic link.
+This allows the processing of paths that are not themselves explicitly shared
+with
+.Nm .
+For example,
+.Pa /export/foo
+might be a symbolic link that refers to
+.Pa /export/bar
+which has been specifically shared.
+When the client mounts
+.Pa /export/foo
+the mountd processing follows the symbolic link and responds with the
+.Pa /export/bar .
+The NFS Version 4 protocol does not use the mountd processing and the client's
+use of
+.Pa /export/foo
+does not work as it does with NFS Version 2 and Version 3 and the client
+receives an error when attempting to mount
+.Pa /export/foo .
+.Pp
+The
+.Sy nohide
+option violates RFC 1094,
+.%T "Network File System Protocol Specification"
+and RFC 1813,
+.%T "NFS: Network File System Version 3 Protocol Specification"
+.Pp
+The
+.Sy nohide
+option is provided for compatibility with Linux NFS.
diff --git a/usr/src/man/man8/shareall.8 b/usr/src/man/man8/shareall.8
new file mode 100644
index 0000000000..f1adda6fde
--- /dev/null
+++ b/usr/src/man/man8/shareall.8
@@ -0,0 +1,62 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 1995, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SHAREALL 8 "Nov 6, 2000"
+.SH NAME
+shareall, unshareall \- share, unshare multiple resources
+.SH SYNOPSIS
+.LP
+.nf
+\fBshareall\fR [\fB-F\fR \fIFSType\fR [,\fIFSType\fR]...] [\fB-|\fR \fIfile\fR]
+.fi
+
+.LP
+.nf
+\fBunshareall\fR [\fB-F\fR \fIFSType\fR [,\fIFSType\fR]...]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+When used with no arguments, \fBshareall\fR shares all resources from
+\fBfile\fR, which contains a list of \fBshare\fR command lines. If the operand
+is a hyphen (\(mi), then the \fBshare\fR command lines are obtained from the
+standard input. Otherwise, if neither a \fBfile\fR nor a hyphen is specified,
+then the file \fB/etc/dfs/dfstab\fR is used as the default.
+.sp
+.LP
+Resources may be shared by specific file system types by specifying the file
+systems in a comma-separated list as an argument to \fB-F\fR.
+.sp
+.LP
+\fBunshareall\fR unshares all currently shared resources. Without a \fB-F\fR
+flag, it unshares resources for all distributed file system types.
+.SH OPTIONS
+.sp
+.ne 2
+.na
+\fB\fB-F\fR\fI FSType\fR\fR
+.ad
+.RS 13n
+Specify file system type. Defaults to the first entry in
+\fB/etc/dfs/fstypes\fR.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/dfs/dfstab\fR\fR
+.ad
+.RS 19n
+
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7),
+.BR share (8),
+.BR unshare (8)
diff --git a/usr/src/man/man8/sharectl.8 b/usr/src/man/man8/sharectl.8
new file mode 100644
index 0000000000..82342e0f27
--- /dev/null
+++ b/usr/src/man/man8/sharectl.8
@@ -0,0 +1,231 @@
+.\"
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.\"
+.\"
+.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 2016 Nexenta Systems, Inc.
+.\"
+.Dd November 22, 2021
+.Dt SHARECTL 8
+.Os
+.Sh NAME
+.Nm sharectl
+.Nd configure and manage file sharing services
+.Sh SYNOPSIS
+.Nm
+.Ar subcommand
+.Op Fl h
+.Nm
+.Cm delsect
+.Ar section protocol
+.Nm
+.Cm get
+.Oo Fl p Ar property Oc Ns ...
+.Ar protocol
+.Nm
+.Cm set
+.Bro Fl p Ar property Ns = Ns Ar value Brc Ns ...
+.Ar protocol
+.Nm
+.Cm status
+.Op Ar protocol
+.Sh DESCRIPTION
+The
+.Nm
+command operates on file sharing services.
+The command sets the client and server operational properties, takes and
+restores configuration snapshots, and gets status of the protocol service.
+Currently supported services are
+.Xr autofs 5 ,
+.Xr nfs 5 ,
+.Xr smb 5
+and smbfs.
+.Pp
+The
+.Cm set
+subcommand requires root privileges or that you assume the Primary Administrator
+role.
+.Pp
+A non-privileged user can change the persistent settings when granted required
+authorizations, see appropriate sharing protocol man page.
+.Ss Options
+The following options are supported where applicable:
+.Bl -tag -width Ds
+.It Fl h
+Displays usage message.
+Supported for all subcommands.
+.It Fl p Ar property Ns Op = Ns Ar value
+Specifies a property.
+See
+.Sx Subcommands ,
+below.
+.El
+.Ss Subcommands
+.Nm
+supports the subcommands described below:
+.Bl -tag -width Ds
+.It Xo
+.Nm
+.Cm delsect
+.Ar section protocol
+.Xc
+Delete configuration section for the specified protocol.
+Currently only protocol that has configuration sections is
+.Nm smbfs
+.Po see
+.Xr nsmbrc 5
+and
+.Sx EXAMPLES
+.Pc .
+.It Xo
+.Nm
+.Cm get
+.Oo Fl p Ar property Oc Ns ...
+.Ar protocol
+.Xc
+Get the property values for the specified protocol.
+If no
+.Fl p
+option is provided, get all the properties for the specified protocol.
+For NFS, properties correspond to entries in the
+.Pa /etc/default/nfs
+file.
+See
+.Xr nfs 5 .
+.It Xo
+.Nm
+.Cm set
+.Bro Fl p Ar property Ns = Ns Ar value Brc Ns ...
+.Ar protocol
+.Xc
+Set properties for the specified file sharing protocol.
+.It Xo
+.Nm
+.Cm status
+.Op Ar protocol
+.Xc
+Display status of the specified protocol, or, if no protocol is specified, of
+all file sharing protocols.
+.El
+.Sh FILES
+.Bl -tag -width Ds
+.It Pa /usr/include/libshare.h
+Error codes used for exit status.
+.El
+.Sh EXIT STATUS
+.Bl -tag -width Ds
+.It Sy 0
+Successful completion.
+.It Sy non-zero
+Command failed.
+.El
+.Sh EXAMPLES
+.Bl -tag -width Ds
+.It Sy Example 1 No Setting a Property
+The following command sets the minimum version of the server NFS protocol to
+version 3.
+.Bd -literal
+# sharectl -p server_versmin=3 nfs
+.Ed
+.It Sy Example 2 No Getting Properties
+The following command gets the properties for the NFS protocol.
+.Bd -literal
+# sharectl get nfs
+lockd_listen_backlog=32
+lockd_servers=256
+lockd_retransmit_timeout=5
+grace_period=90
+nfsmapid_domain=example.com
+servers=1024
+server_versmin=2
+server_versmax=4
+max_connections=-1
+.Ed
+.Pp
+The following command gets the value of the grace_period property for the NFS
+protocol.
+.Bd -literal
+# sharectl get -p grace_period nfs
+grace_period=90
+.Ed
+.It Sy Example 3 No Obtaining Status
+The following command obtains the status of all file-sharing protocols on a
+system.
+.Bd -literal
+# sharectl status
+nfs enabled
+.Ed
+.It Sy Example 4 No Configuring Global Settings
+The following command shows how an authorized user can use
+.Nm
+commands to configure global settings for the
+.Pa example.com
+environment in the service management facility
+.Pq SMF .
+See
+.Xr nsmbrc 5
+for a description of the example environment,
+.Pa example.com .
+See
+.Xr smf 7
+for a description of the SMF.
+.Bd -literal
+# sharectl set -p section=default -p workgroup=SALES \e
+ -p timeout=5 smbfs
+# sharectl set -p section=FSERVER -p addr=fserv.example.com smbfs
+# sharectl set -p section=RSERVER -p workgroup=REMGROUP \e
+ -p addr=rserv.example.com smbfs
+# sharectl set -p section=RSERVER:george -p timeout=30 smbfs
+# sharectl set -p section="SSERV:*:POKY" -p addr=sserv.example.com \e
+ -p timeout=25 smbfs
+.Ed
+.It Sy Example 5 No Displaying Current Settings
+The following command shows how an authorized user can use the
+.Nm sharectl Cm get
+command to view the global settings for
+.Nm smbfs
+in the SMF.
+The values shown are those set by the previous example.
+.Bd -literal
+# sharectl get smbfs
+[default]
+workgroup=SALES
+timeout=5
+[FSERVER]
+addr=fserv.example.com
+[RSERVER]
+workgroup=REMGROUP
+addr=rserv.example.com
+[RSERVER:george]
+timeout=30
+[SSERV:*:POKY]
+addr=sserv.example.com
+timeout=25
+.Ed
+.El
+.Sh INTERFACE STABILITY
+.Sy Committed
+.Sh SEE ALSO
+.Xr autofs 5 ,
+.Xr nfs 5 ,
+.Xr nsmbrc 5 ,
+.Xr smb 5 ,
+.Xr user_attr 5 ,
+.Xr attributes 7 ,
+.Xr rbac 7 ,
+.Xr smf 7 ,
+.Xr standards 7 ,
+.Xr sharemgr 8
diff --git a/usr/src/man/man8/sharemgr.8 b/usr/src/man/man8/sharemgr.8
new file mode 100644
index 0000000000..ba49873211
--- /dev/null
+++ b/usr/src/man/man8/sharemgr.8
@@ -0,0 +1,1339 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 2016 Nexenta Systems, Inc. All rights reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
+.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SHAREMGR 8 "November 22, 2021"
+.SH NAME
+sharemgr \- configure and manage file sharing
+.SH SYNOPSIS
+.nf
+\fBsharemgr\fR \fIsubcommand\fR [\fIoptions\fR]
+.fi
+
+.LP
+.nf
+\fBadd-share\fR [\fB-nth\fR] [\fB-r\fR \fIresource-name\fR] [\fB-d\fR "\fIdescription text\fR"]
+ \fB-s\fR \fIsharepath\fR \fIgroup\fR
+.fi
+
+.LP
+.nf
+\fBcreate\fR [\fB-nvh\fR] [\fB-P\fR \fIproto\fR [\fB-p\fR \fIproperty\fR=\fIvalue\fR]] \fIgroup\fR
+.fi
+
+.LP
+.nf
+\fBdelete\fR [\fB-nvh\fR] [\fB-P\fR \fIproto\fR] [\fB-f\fR] \fIgroup\fR
+.fi
+
+.LP
+.nf
+\fBdisable\fR [\fB-nvh\fR] [\fB-a\fR | \fIgroup\fR...]
+.fi
+
+.LP
+.nf
+\fBenable\fR [\fB-nvh\fR] [\fB-a\fR | \fIgroup\fR...]
+.fi
+
+.LP
+.nf
+\fBlist\fR [\fB-vh\fR] [\fB-P\fR \fIproto\fR]
+.fi
+
+.LP
+.nf
+\fBmove-share\fR [\fB-nv\fR] \fB-s\fR \fIsharepath\fR \fIdestination-group\fR
+.fi
+
+.LP
+.nf
+\fBremove-share\fR [\fB-fnvh\fR] \fB-s\fR \fIsharepath\fR \fIgroup\fR
+.fi
+
+.LP
+.nf
+\fBset\fR [\fB-nvh\fR] \fB-P\fR \fIproto\fR [\fB-p\fR \fIproperty\fR=\fIvalue\fR]... [\fB-S\fR \fIoptionset\fR]
+ [\fB-s\fR \fIsharepath\fR] \fIgroup\fR
+.fi
+
+.LP
+.nf
+\fBset-share\fR [\fB-nh\fR] [\fB-r\fR \fIresource\fR] [\fB-d\fR "\fIdescription text\fR"]
+ \fB-s\fR \fIsharepath\fR \fIgroup\fR
+.fi
+
+.LP
+.nf
+\fBshow\fR [\fB-pvxh\fR] [\fB-P\fR \fIproto\fR] [\fIgroup\fR]...
+.fi
+
+.LP
+.nf
+\fBunset\fR [\fB-nvh\fR] \fB-P\fR \fIproto\fR [\fB-S\fR \fIoptionset\fR] [\fB-p\fR \fIproperty\fR]...
+ \fIgroup\fR
+.fi
+
+.LP
+.nf
+\fBshare\fR [\fB-F\fR \fIfstype\fR] [\fB-p\fR] [\fB-o\fR \fIoptionlist\fR] [\fB-d\fR \fIdescription\fR]
+ [\fIpathname\fR [\fIresourcename\fR]]
+.fi
+
+.LP
+.nf
+\fBunshare\fR [\fB-F\fR \fIfstype\fR] [\fB-p\fR] [\fB-o\fR \fIoptionlist\fR] \fIsharepath\fR
+.fi
+
+.SH DESCRIPTION
+The \fBsharemgr\fR command configures share groups and the shares contained
+within them.
+.sp
+.LP
+A group name must conform to service management facility (SMF) (see
+\fBsmf\fR(7)) service-naming conventions, thus is limited to starting with an
+alphabetic character, with the rest of the name consisting only of alphanumeric
+characters plus \fB-\fR (hyphen) and \fB_\fR (underbar).
+.sp
+.LP
+Subcommands that result in a configuration change support a dry-run option.
+When dry-run (\fB-n\fR) is specified, the syntax and validity of the command is
+tested but the configuration is not actually updated.
+.sp
+.LP
+For all subcommands, the \fB-h\fR option lists usage and help information.
+.sp
+.LP
+For subcommands with the verbose (\fB-v\fR) option, additional information will
+be provided. For example, in conjunction with the \fB-n\fR option, verbose mode
+will also indicate whether the current user has sufficient permissions to
+accomplish the operation.
+.sp
+.LP
+There are two groups that are created automatically. The \fBdefault\fR group
+always exists and covers legacy NFS shares only. The \fBzfs\fR group will be
+created when ZFS shares are enabled.
+.sp
+.LP
+The options shown in the SYNOPSIS section are described in the context of each
+subcommand. All subcommands except \fBlist\fR and \fBshow\fR require root
+privileges or that you assume the Primary Administrator role.
+.SS "Subcommands"
+With no subcommand entered, a \fBsharemgr\fR command with the \fB-h\fR option
+displays a usage message for all subcommands.
+.sp
+.LP
+The following subcommands follow \fBsharemgr\fR on a command line. Commands
+take the form:
+.sp
+.in +2
+.nf
+% \fBsharemgr \fI<subcommand>\fR [\fIoptions\fR]\fR
+.fi
+.in -2
+.sp
+
+.sp
+.ne 2
+.na
+\fB\fBcreate\fR \fB[-nvh] [-P \fIproto\fR [-p \fIproperty\fR=\fIvalue\fR]]
+\fIgroup\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Create a new group with specified name.
+.sp
+If \fB-n\fR is specified, the command checks only the validity of the command
+and that the group does not already exist.
+.sp
+If no protocol is specified, all known protocols are enabled for the specified
+group. If a protocol is specified, only that protocol is enabled. You can
+specify properties for a specified protocol.
+.sp
+If \fIgroup\fR exists, use of \fB-P\fR adds the specified protocol to that
+group.
+.sp
+As an example of the \fBcreate\fR subcommand, the following command creates a
+new group with the name \fBmygroup\fR.
+.sp
+.in +2
+.nf
+# \fBsharemgr create mygroup\fR
+.fi
+.in -2
+.sp
+
+Because no protocol was specified in the preceding command, all defined
+protocols will be enabled on the group.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdelete\fR \fB[-nvh] [-P \fIproto\fR] [-f] \fIgroup\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Delete the specified group. If the group is not empty, you can use the \fB-f\fR
+option to force the deletion, which unshares and removes all shares from the
+group before removing the group itself.
+.sp
+If you specify a protocol, rather than deleting the whole group, this
+subcommand deletes the protocol from the group.
+.sp
+The \fB-n\fR option can be used to test the syntax of the command.
+.sp
+As an example, the following command removes the group \fBmygroup\fR from the
+configuration if it is empty.
+.sp
+.in +2
+.nf
+# \fBsharemgr delete mygroup\fR
+.fi
+.in -2
+.sp
+
+The following command removes any existing shares prior to removing the group.
+.sp
+.in +2
+.nf
+# \fBsharemgr delete -f mygroup\fR
+.fi
+.in -2
+.sp
+
+Note the use of the force (\fB-f\fR) option, above.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBlist\fR \fB[-vh] [-P \fIproto\fR]\fR\fR
+.ad
+.sp .6
+.RS 4n
+List the defined groups.
+.sp
+If a protocol is specified, list only those groups that have the specified
+protocol defined.
+.sp
+If the verbose option is specified, the current state of the group and all
+protocols enabled on the group are listed as well. For example:
+.sp
+.in +2
+.nf
+# \fBsharemgr list -v\fR
+mygroup enabled nfs
+rdonlygrp disabled nfs
+.fi
+.in -2
+.sp
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBshow\fR \fB[-pvxh] [-P \fIproto\fR] [\fIgroup\fR...]\fR\fR
+.ad
+.sp .6
+.RS 4n
+Shows the contents of the specified group(s).
+.sp
+If the verbose option is specified, the resource name and description of each
+share is displayed if they are defined. Otherwise, only the share paths are
+displayed. Also, when temporary shares are listed, they are prefixed with an
+asterisk (\fB*\fR).
+.sp
+If the \fB-p\fR option is specified, all options defined for the protocols of
+the group are displayed, in addition to the display without options. If the
+\fB-P\fR option is used, the output is limited to those groups that have the
+specified protocol enabled. If the \fB-x\fR option is specified, output is in
+XML format and the \fB-p\fR and \fB-v\fR options are ignored, because all
+information is included in the XML.
+.sp
+The following example illustrates the use of the \fB-p\fR option.
+.sp
+.in +2
+.nf
+# \fBsharemgr show -p mygroup\fR
+default nfs=()
+ * /data/backup
+mygroup nfs=(nosuid=true)
+ /export/home/home0
+ /export/home/home1
+.fi
+.in -2
+.sp
+
+The following example illustrates the use of the \fB-v\fR option.
+.sp
+.in +2
+.nf
+# \fBsharemgr show -v mygroup\fR
+mygroup
+ HOME0=/export/home/home0 "Home directory set 0"
+ HOME1=/export/home/home1 "Home directory set 1"
+.fi
+.in -2
+.sp
+
+ZFS managed shares are handled in a way similar to the way NFS shares are
+handled. These shares appear as subgroups within the parent group \fBzfs\fR.
+The subgroups are always prefixed with \fBzfs/\fR and use the ZFS dataset name
+for the rest of the name. The mount point and any sub-mounts that inherit
+sharing are shown as the shares of the subgroup. For example:
+.sp
+.in +2
+.nf
+# \fBsharemgr show -vp zfs\fR
+zfs nfs=()
+ zfs/ztest
+ /ztest
+ /ztest/backups
+.fi
+.in -2
+.sp
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBset\fR \fB[-nvh] -P \fIproto\fR [-S \fIoptionset\fR] [-p
+\fIproperty\fR=\fIvalue\fR]* [-s \fIshare path\fR] \fIgroup\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set protocol-specific properties on the specified group.
+.sp
+The \fB-P\fR option is required and must specify a valid protocol.
+.sp
+Optionsets are protocol-specific sets of properties that can be negotiated by
+the protocol client. For NFS, optionsets are equivalent to security modes as
+defined in \fBnfssec\fR(7). If \fB-S\fR \fIoptionset\fR is specified, the
+properties are applied to the selected optionset. Otherwise they are applied to
+the general optionset.
+.sp
+Together, \fB-P\fR and \fB-S\fR select a specific view of the group's options
+on which to work.
+.sp
+Property values are strings. A specified property is set to a new value if the
+property already exists or is added to the protocol if it does not already
+exist.
+.sp
+In the general case, at least one property must be set. If \fB-S\fR is
+specified, properties can be omitted and the specified optionset is enabled for
+the protocol.
+.sp
+The \fB-s\fR option allows setting properties on a per-share basis. While this
+is supported, it should be limited to managing legacy shares and to the
+occasional need for an override of a group-level property or placing an
+additional property on one share within a group.
+.sp
+An example of this subcommand:
+.sp
+.in +2
+.nf
+# \fBsharemgr set -P nfs -p anon=1234 mygroup\fR
+.fi
+.in -2
+.sp
+
+The preceding command adds the property \fBanon=1234\fR to the \fBnfs\fR view
+of group \fBmygroup\fR. If \fBmygroup\fR has existing shares, they will all be
+reshared with the new property value(s).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBunset\fR \fB[-nvh] -P proto [-S \fIoptionset\fR] [-p \fIproperty\fR]* [-s
+\fIsharepath\fR ] \fIgroup\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Unset the specified properties for the protocol or for the specified
+\fIoptionset\fR of the protocol.
+.sp
+In the general case, at least one property must be set. If \fB-S\fR is
+specified, properties can be omitted and the specified optionset is removed
+from the protocol.
+.sp
+The \fB-s\fR option allows removing a share-specific property.
+.sp
+An example of this subcommand:
+.sp
+.in +2
+.nf
+# \fBsharemgr unset -P nfs -p anon mygroup\fR
+.fi
+.in -2
+.sp
+
+The preceding command removes the \fBanon=\fR property from the \fBnfs\fR view
+of group \fBmygroup\fR. If \fBmygroup\fR has existing shares, they will all be
+reshared with the new property value(s).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBadd-share\fR \fB[-nth] [-r \fIresource-name\fR] [-d "\fIdescription
+text\fR"] -s \fIsharepath\fR \fIgroup\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Add a new share to the specified group.
+.sp
+The \fB-s\fR option is mandatory and takes a full directory path.
+.sp
+If either or both of \fB-d\fR and \fB-r\fR are specified, they specify values
+associated with the share. \fB-d\fR provides a description string to document
+the share and \fB-r\fR provides a protocol-independent resource name. Resource
+names are not used by NFS at this time but can be specified. These names
+currently follow the same naming rules as group names.
+.sp
+The temporary option (\fB-t\fR) results in the share being shared but not
+stored in the configuration repository. This option is intended for shares that
+should not survive a reboot or server restart, or for testing purposes.
+Temporary shares are indicated in the \fBshow\fR subcommand output with an
+asterisk (\fB*\fR) preceding the share.
+.sp
+If \fIsharepath\fR is a ZFS path and that path is added to the \fBzfs\fR group,
+\fBsharemgr\fR creates a new ZFS subgroup; the new share is added to that
+subgroup. Any ZFS sub-filesystems under the ZFS filesystem designated by
+\fIsharepath\fR will inherit the shared status of \fIsharepath\fR.
+.sp
+The effect of the \fBadd-share\fR subcommand on a ZFS dataset is determined by
+the values of the \fBsharesmb\fR and \fBsharenfs\fR properties of that dataset.
+.sp
+See \fBzfs\fR(8) for a description of the \fBsharesmb\fR and \fBsharenfs\fR
+properties.
+.sp
+The following are examples of the \fBadd-share\fR subcommand.
+.sp
+.in +2
+.nf
+# \fBsharemgr add-share -s /export/home/home0 -d "home \e
+directory set 0" -r HOME0 mygroup\fR
+
+# \fBsharemgr add-share -s /export/home/home1 -d "home \e
+directory set 1" -r HOME1 mygroup\fR
+.fi
+.in -2
+.sp
+
+The preceding commands add \fB/export/home/home0\fR and
+\fB/export/home/home1\fR to the group \fBmygroup\fR. A descriptive comment and
+a resource name are included.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmove-share\fR \fB[-nvh] -s \fIsharepath\fR \fIdestination-group\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Move the specified share from the group it is currently in to the specified
+destination group. The \fBmove-share\fR subcommand does not create a group. A
+specified group must exist for the command to succeed.
+.sp
+The following is an example of this subcommand.
+.sp
+.in +2
+.nf
+# \fBsharemgr move-share -s /export/home/home1 newgroup\fR
+.fi
+.in -2
+.sp
+
+Assuming \fB/export/home/home1\fR is in the group \fBmygroup\fR, the preceding
+command moves \fB/export/home/home1\fR to the group \fBnewgroup\fR and unshares
+and then reshares the directory with the properties associated with
+\fBnewgroup\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBremove-share\fR \fB[-fnvh] -s \fIsharepath\fR \fIgroup\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Remove the specified share from the specified group. The force (\fB-f\fR)
+option forces the share to be removed even if it is busy.
+.sp
+You must specify the full path for \fIsharepath\fR. For group, use the subgroup
+as displayed in the output of the \fBsharemgr show\fR command. Note that if
+there are subshares that were created by inheritance, these will be removed,
+along with the parent shares.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBset-share\fR \fB[-nvh] [-r \fIresource\fR] [-d "\fIdescription text\fR"]
+-s \fIsharepath\fR \fIgroup\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set or change the specified share's description and resource values. One use of
+\fBset-share\fR is to rename a resource. The syntax for this use of the
+subcommand is:
+.sp
+.in +2
+.nf
+# \fBsharemgr set-share -r \fIcurrent_name\fR=\fInew_name\fR -s \fIsharepath\fR \fIgroup\fR\fR
+.fi
+.in -2
+.sp
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBenable\fR \fB[-nvh] [\fIgroup\fR... | -a]\fR\fR
+.ad
+.sp .6
+.RS 4n
+Enable the specified group(s), or (with \fB-a\fR) all groups, and start sharing
+the contained shares. This state persists across reboots.
+.sp
+An enabled group will be shared whenever the corresponding SMF service instance
+is enabled. \fBsharemgr\fR will start the SMF service instance if it is not
+currently online.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdisable\fR \fB[-nvh] [\fIgroup\fR... | -a]\fR\fR
+.ad
+.sp .6
+.RS 4n
+Disable the specified group(s), or (with \fB-a\fR) all groups, and unshare the
+shares that they contain. This state persists across reboots.
+.sp
+A disabled group will not be shared even if the corresponding SMF service
+instance is online. This feature is useful when you do not want a group of
+shares to be started at boot time.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBstart\fR \fB[-vh] [-P \fIproto\fR] [\fIgroup\fR... | -a]\fR\fR
+.ad
+.sp .6
+.RS 4n
+Start the specified group, or (with \fB-a\fR) all groups. The \fBstart\fR
+subcommand is similar to \fBenable\fR in that all shares are started, but
+\fBstart\fR works only on groups that are enabled. \fBstart\fR is used by the
+SMF to start sharing at system boot.
+.sp
+A group will not start sharing if it is in the \fBsharemgr\fR \fBdisabled\fR
+state. However, the corresponding SMF service instance will be started.
+.sp
+Note that the \fBstart\fR subcommand is similar to the \fBshareall\fR(8)
+command in that it starts up only the configured shares. That is, the enabled
+shares will start being shared, but the configuration state is left the same.
+The command:
+.sp
+.in +2
+.nf
+# \fBsharemgr start -a\fR
+.fi
+.in -2
+.sp
+
+\&...is equivalent to:
+.sp
+.in +2
+.nf
+# \fBshareall\fR
+.fi
+.in -2
+.sp
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBstop\fR \fB[-vh] [-P \fIproto\fR] [\fIgroup\fR... | -a]\fR\fR
+.ad
+.sp .6
+.RS 4n
+Stop the specified group, or (with \fB-a\fR) all groups. The \fBstop\fR
+subcommand is similar to \fBdisable\fR in that all shares are no longer shared,
+but it works only on groups that are enabled. \fBstop\fR is used by the SMF to
+stop sharing at system shutdown.
+.sp
+Note that the \fBstop\fR subcommand is similar to the \fBunshareall\fR(8)
+command in that all active shares are unshared, but the configuration is left
+the same. That is, the shares are stopped but the service instances are left
+enabled. The command:
+.sp
+.in +2
+.nf
+# \fBsharemgr stop -a\fR
+.fi
+.in -2
+.sp
+
+\&...is equivalent to:
+.sp
+.in +2
+.nf
+# \fBunshareall\fR
+.fi
+.in -2
+.sp
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBshare\fR \fB[-F \fIfstype\fR] [-p] [-o \fIoptionlist\fR] [-d
+\fIdescription\fR] [\fIpathname\fR [\fIresourcename\fR]]\fR\fR
+.ad
+.sp .6
+.RS 4n
+Shares the specified path in the \fBdefault\fR share group. This subcommand
+implements the \fBshare\fR(8) functionality. Shares that are shared in this
+manner will be transient shares. Use of the \fB-p\fR option causes the shares
+to be persistent.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBunshare\fR \fB[-F \fIfstype\fR] [-p] [-o \fIoptionlist\fR]
+\fIsharepath\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Unshares the specified share. This subcommand implements the \fBunshare\fR(8)
+functionality. By default, the \fBunshare\fR is temporary. The \fB-p\fR option
+is provided to remove the share from the configuration in a way that persists
+across reboots.
+.RE
+
+.SS "Supported Properties"
+Properties are protocol-specific. Currently, only the NFS and SMB protocols are
+supported. Properties have the following characteristics:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Values of type \fIboolean\fR take either \fBtrue\fR or \fBfalse\fR.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Values of type \fIvalue\fR take a numeric value.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Values of type \fIfile\fR take a file name and not a file path.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Values of type \fIaccess-list\fR are described in detail following the
+descriptions of the NFS properties.
+.RE
+.sp
+.LP
+The general properties supported for NFS are:
+.sp
+.ne 2
+.na
+\fB\fBabe=\fR\fIboolean\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set the access-based enumeration (ABE) policy for a share. When set to
+\fBtrue\fR, ABE filtering is enabled on this share and directory entries to
+which the requesting user has no access will be omitted from directory listings
+returned to the client. When set to \fBfalse\fR or not defined, ABE filtering
+will not be performed on this share. This property is not defined by default.
+.sp
+.ne 2
+.na
+\fB\fBdisabled\fR\fR
+.ad
+.sp .6
+.RS 4n
+Disable ABE for this share.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBenabled\fR\fR
+.ad
+.sp .6
+.RS 4n
+Enable ABE for this share.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBaclok=\fIboolean\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allows the NFS server to do access control for NFS Version 2 clients (running
+SunOS 2.4 or earlier). When \fBaclok\fR is set on the server, maximum access is
+given to all clients. For example, with \fBaclok\fR set, if anyone has read
+permissions, then everyone does. If \fBaclok\fR is not set, minimum access is
+given to all clients.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBad-container\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the AD container in which to publish shares.
+.sp
+The AD container is specified as a comma-separated list of attribute name-value
+pairs using the LDAP distinguished name (DN) or relative distinguished name
+(RDN) format. The DN or RDN must be specified in LDAP format using the
+\fBcn=\fR, \fBou=\fR, and \fBdc=\fR prefixes:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBcn\fR represents the common name
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBou\fR represents the organizational unit
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBdc\fR represents the domain component
+.RE
+\fBcn=\fR, \fBou=\fR and \fBdc=\fR are attribute types. The attribute type used
+to describe an object's RDN is called the naming attribute, which, for ADS,
+includes the following object classes:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBcn\fR for the \fBuser\fR object class
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBou\fR for the organizational unit (\fBOU\fR) object class
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBdc\fR for the \fBdomainDns\fR object class
+.RE
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBanon=\fIuid\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set \fIuid\fR to be the effective user ID of unknown users. By default, unknown
+users are given the effective user ID \fBUID_NOBODY\fR. If uid is set to
+\fB-1\fR, access is denied.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcatia=\fIboolean\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+CATIA V4 uses characters in file names that are considered to be invalid by
+Windows. CATIA V5 is available on Windows. A CATIA V4 file could be
+inaccessible to Windows clients if the file name contains any of the characters
+that are considered illegal in Windows. By default, CATIA character
+substitution is not performed.
+.sp
+If the \fBcatia\fR property is set to true, the following character
+substitution is applied to file names.
+.sp
+.in +2
+.nf
+CATIA CATIA
+V4 UNIX V5 Windows
+ " \e250 0x00a8 Dieresis
+ * \e244 0x00a4 Currency Sign
+ / \e370 0x00f8 Latin Small Letter O with Stroke
+ : \e367 0x00f7 Division Sign
+ < \e253 0x00ab Left-Pointing Double Angle Quotation Mark
+ > \e273 0x00bb Right-Pointing Double Angle Quotation Mark
+ ? \e277 0x00bf Inverted Question Mark
+ \e \e377 0x00ff Latin Small Letter Y with Dieresis
+ | \e246 0x00a6 Broken Bar
+.fi
+.in -2
+.sp
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcksum=\fIcksumlist\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set the share to attempt to use end-to-end checksums. The value \fIcksumlist\fR
+specifies the checksum algorithms that should be used.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcsc=\fR\fIvalue\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set the client-side caching policy for a share. Client-side caching is a client
+feature and offline files are managed entirely by the clients.
+.sp
+.LP
+The following are valid values for the \fBcsc\fR property:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBmanual\fR \fB-\fR Clients are permitted to cache files from the specified
+share for offline use as requested by users. However, automatic file-by-file
+reintegration is not permitted. \fBmanual\fR is the default value.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBauto\fR \fB-\fR Clients are permitted to automatically cache files from the
+specified share for offline use and file-by-file reintegration is permitted.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBvdo\fR \fB-\fR Clients are permitted to automatically cache files from the
+specified share for offline use, file-by-file reintegration is permitted, and
+clients are permitted to work from their local cache even while offline.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBdisabled\fR \fB-\fR Client-side caching is not permitted for this share.
+.RE
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBguestok=\fR\fIboolean\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set the guest access policy for the share. When set to \fBtrue\fR guest access
+is allowed on this share. When set to \fBfalse\fR or not defined guest access
+is not allowed on this share. This property is not defined by default.
+.sp
+An \fBidmap\fR(8) name-based rule can be used to map \fBguest\fR to any local
+username, such as \fBguest\fR or \fBnobody\fR. If the local account has a
+password in \fB/var/smb/smbpasswd\fR the guest connection will be authenticated
+against that password. Any connection made using an account that maps to the
+local guest account will be treated as a guest connection.
+.sp
+Example name-based rule:
+.sp
+.in +2
+.nf
+# \fBidmap add winname:Guest unixuser:guest\fR
+.fi
+.in -2
+.sp
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBindex=\fIfile\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Load \fIfile\fR rather than a listing of the directory containing this file
+when the directory is referenced by an NFS URL.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBlog=\fItag\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Enables NFS server logging for the specified system. The optional tag
+determines the location of the related log files. The tag is defined in
+\fBetc/nfs/nfslog.conf\fR. If no tag is specified, the default values
+associated with the global tag in \fBetc/nfs/nfslog.conf\fR is used. Support of
+NFS server logging is available only for NFS Version 2 and Version 3 requests.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnosub=\fIboolean\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Prevents clients from mounting subdirectories of shared directories. For
+example, if \fB/export\fR is shared with the \fBnosub\fR option on server
+\fBwool\fR then an NFS client cannot do:
+.sp
+.in +2
+.nf
+# \fBmount -F nfs wool:/export/home/mnt\fR
+.fi
+.in -2
+.sp
+
+NFS Version 4 does not use the MOUNT protocol. The \fBnosub\fR option applies
+only to NFS Version 2 and Version 3 requests.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnosuid=\fIboolean\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+By default, clients are allowed to create files on a shared file system with
+the \fBsetuid\fR or \fBsetgid\fR mode enabled. Specifying \fBnosuid\fR causes
+the server file system to silently ignore any attempt to enable the
+\fBsetuid\fR or \fBsetgid\fR mode bits.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpublic=\fIboolean\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Moves the location of the public file handle from root (\fB/\fR) to the
+exported directory for WebNFS-enabled browsers and clients. This option does
+not enable WebNFS service; WebNFS is always on. Only one file system per server
+can have the \fBpublic\fR property. You can apply the \fBpublic\fR property
+only to a share and not to a group.
+.RE
+
+.sp
+.LP
+NFS also supports negotiated optionsets for supported security modes. The
+security modes are documented in \fBnfssec\fR(7). The properties supported for
+these optionsets are:
+.sp
+.ne 2
+.na
+\fB\fIcharset\fR=\fIaccess-list\fR\fR
+.ad
+.sp .6
+.RS 4n
+Where \fIcharset\fR is one of: \fBeuc-cn\fR, \fBeuc-jp\fR, \fBeuc-jpms\fR,
+\fBeuc-kr\fR, \fBeuc-tw\fR, \fBiso8859-1\fR, \fBiso8859-2\fR, \fBiso8859-5\fR,
+\fBiso8859-6\fR, \fBiso8859-7\fR, \fBiso8859-8\fR, \fBiso8859-9\fR,
+\fBiso8859-13\fR, \fBiso8859-15\fR, \fBkoi8-r\fR.
+.sp
+Clients that match the \fIaccess-list\fR for one of these properties will be
+assumed to be using that character set and file and path names will be
+converted to UTF-8 for the server.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBro=\fIaccess-list\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sharing is read-only to the clients listed in \fIaccess-list\fR; overrides the
+\fBrw\fR suboption for the clients specified. See the description of
+\fIaccess-list\fR below.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrw=\fIaccess-list\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sharing is read-write to the clients listed in \fIaccess-list\fR; overrides the
+\fBro\fR suboption for the clients specified. See the description of
+\fIaccess-list\fR below.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnone=\fIaccess-list\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Access is not allowed to any client that matches the access list. The exception
+is when the access list is an asterisk (\fB*\fR), in which case \fBro\fR or
+\fBrw\fR can override \fBnone\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBroot=\fIaccess-list\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Only root users from the hosts specified in \fIaccess-list\fR have root access.
+See details on \fIaccess-list\fR below. By default, no host has root access, so
+root users are mapped to an anonymous user ID (see the \fBanon=uid\fR option
+described above). Netgroups can be used if the file system shared is using UNIX
+authentication (\fBAUTH_SYS\fR).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBroot_mapping=\fIuid\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+For a client that is allowed root access, map the root UID to the specified
+user id.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBwindow=\fIvalue\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+When sharing with \fBsec=dh\fR (see \fBnfssec\fR(7)), set the maximum lifetime
+(in seconds) of the RPC request's credential (in the authentication header)
+that the NFS server allows. If a credential arrives with a lifetime larger than
+what is allowed, the NFS server rejects the request. The default value is 30000
+seconds (8.3 hours). This property is ignored for security modes other than
+\fBdh\fR.
+.RE
+
+.sp
+.LP
+The general properties supported for SMB are:
+.sp
+.ne 2
+.na
+\fB\fBencrypt=\fR\fIstring\fR\fR
+.ad
+.sp .6
+.RS 4n
+Controls SMB3 per-share encryption. This is similar to the global smbd/encrypt
+option. For requests on a particular share, the server's behavior is controlled
+by the stricter of this option and smbd/encrypt.
+.sp
+When set to \fBdisabled\fR, the server will not ask clients to encrypt requests.
+When set to \fBenabled\fR, the server will ask clients to encrypt requests,
+but will not require that they do so. Any message than can be encrypted
+will be encrypted.
+When set to \fBrequired\fR, the server will deny access to or disconnect
+any client that does not support encryption or fails to encrypt requests
+that they should.
+.sp
+In other words, the \fBenabled\fR behavior is that any message that CAN
+be encrypted SHOULD be encrypted, while the \fBrequired\fR behavior is that any
+message that CAN be encrypted MUST be encrypted.
+.sp
+This property is not defined by default.
+.sp
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBro=\fIaccess-list\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sharing is read-only to the clients listed in \fIaccess-list\fR; overrides the
+\fBrw\fR suboption for the clients specified. See the description of
+\fIaccess-list\fR below.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrw=\fIaccess-list\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sharing is read-write to the clients listed in \fIaccess-list\fR; overrides the
+\fBro\fR suboption for the clients specified. See the description of
+\fIaccess-list\fR below.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnone=\fIaccess-list\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Access is not allowed to any client that matches the access list. The exception
+is when the access list is an asterisk (\fB*\fR), in which case \fBro\fR or
+\fBrw\fR can override \fBnone\fR.
+.RE
+
+.SS "Access List Argument"
+The \fIaccess-list\fR argument is either the string \fB"*"\fR to represent all
+hosts or a colon-separated list whose components can be any number of the
+following:
+.sp
+.ne 2
+.na
+\fB\fIhostname\fR\fR
+.ad
+.sp .6
+.RS 4n
+The name of a host. With a server configured for DNS or LDAP naming in the
+\fBnsswitch.conf\fR(5) \fBhosts\fR entry, a hostname must be represented as a
+fully qualified DNS or LDAP name.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fInetgroup\fR\fR
+.ad
+.sp .6
+.RS 4n
+A \fInetgroup\fR contains a number of hostnames. With a server configured for
+DNS or LDAP naming in the \fBnsswitch.conf\fR(5) \fBhosts\fR entry, any
+hostname in a netgroup must be represented as a fully qualified DNS or LDAP
+name.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIdomainname\fR.\fIsuffix\fR\fR
+.ad
+.sp .6
+.RS 4n
+To use domain membership the server must use DNS or LDAP, rather than, for
+example, NIS, to resolve hostnames to IP addresses. That is, the
+\fBhosts\fR entry in the \fBnsswitch.conf\fR(5) must specify \fBdns\fR or
+\fBldap\fR ahead of \fBnis\fR, because only DNS and LDAP
+return the full domain name of the host. Other name services, such as NIS,
+cannot be used to resolve hostnames on the server because, when mapping
+an IP address to a hostname, they do not return domain information. For
+example, for the IP address 172.16.45.9:
+.sp
+.ne 2
+.na
+\fBNIS\fR
+.ad
+.sp .6
+.RS 4n
+Returns: \fBmyhost\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fBDNS or LDAP\fR
+.ad
+.sp .6
+.RS 4n
+Returns: \fBmyhost.mydomain.example.com\fR
+.RE
+
+The domain name suffix is distinguished from hostnames and netgroups by a
+prefixed dot. For example:
+.sp
+.in +2
+.nf
+rw=.mydomain.example.com
+.fi
+.in -2
+
+A single dot can be used to match a hostname with no suffix. For example, the
+specification:
+.sp
+.in +2
+.nf
+rw=.
+.fi
+.in -2
+
+\&...matches \fBmydomain\fR but not \fBmydomain.example.com\fR. This feature
+can be used to match hosts resolved through NIS rather than DNS and
+LDAP.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fInetwork\fR\fR
+.ad
+.sp .6
+.RS 4n
+The network or subnet component is preceded by an at-sign (\fB@\fR). It can be
+either a name or a dotted address. If a name, it is converted to a dotted
+address by \fBgetnetbyname\fR(3SOCKET). For example:
+.sp
+.in +2
+.nf
+=@mynet
+.fi
+.in -2
+
+\&...is equivalent to:
+.sp
+.in +2
+.nf
+=@172.16 or =@172.16.0.0
+.fi
+.in -2
+
+The network prefix assumes an octet-aligned netmask determined from the zeroth
+octet in the low-order part of the address up to and including the high-order
+octet, if you want to specify a single IP address. In the case where network
+prefixes are not byte-aligned, the syntax allows a mask length to be specified
+explicitly following a slash (\fB/\fR) delimiter. For example:
+.sp
+.in +2
+.nf
+=@theothernet/17 or =@172.16.132/22
+.fi
+.in -2
+
+\&...where the mask is the number of leftmost contiguous significant bits in
+the corresponding IP address.
+.RE
+
+.sp
+.LP
+A prefixed minus sign (\fB-\fR) denies access to a component of
+\fIaccess-list\fR. The list is searched sequentially until a match is found
+that either grants or denies access, or until the end of the list is reached.
+For example, if host \fBterra\fR is in the netgroup \fBengineering\fR, then:
+.sp
+.in +2
+.nf
+rw=-terra:engineering
+.fi
+.in -2
+
+.sp
+.LP
+\&...denies access to \fBterra\fR, but:
+.sp
+.in +2
+.nf
+rw=engineering:-terra
+.fi
+.in -2
+
+.sp
+.LP
+\&...grants access to \fBterra\fR.
+.SH EXIT STATUS
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 18n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB98\fR\fR
+.ad
+.RS 18n
+Service is offline and cannot be enabled (start only).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIother non-zero\fR\fR
+.ad
+.RS 18n
+Command failed.
+.RE
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/usr/include/libshare.h\fR\fR
+.ad
+.RS 27n
+Error codes used for exit status.
+.RE
+
+.SH ATTRIBUTES
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Committed
+.TE
+
+.SH SEE ALSO
+.BR attributes (7),
+.BR nfssec (7),
+.BR smf (7),
+.BR standards (7),
+.BR idmap (8),
+.BR sharectl (8),
+.BR zfs (8)
diff --git a/usr/src/man/man8/showmount.8 b/usr/src/man/man8/showmount.8
new file mode 100644
index 0000000000..f19e10a118
--- /dev/null
+++ b/usr/src/man/man8/showmount.8
@@ -0,0 +1,82 @@
+'\" te
+.\" Copyright (c) 1997, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SHOWMOUNT 8 "Oct 26, 2004"
+.SH NAME
+showmount \- show remote mounts
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/showmount\fR [\fB-ade\fR] [\fIhostname\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBshowmount\fR lists the clients that have remotely mounted a filesystem from
+\fIhost\fR. This information is maintained by the \fBmountd\fR(8) server on
+\fIhost\fR, and is saved across crashes in the file \fB/etc/rmtab\fR. The
+default value for \fIhost\fR is the value returned by \fBhostname\fR(1).
+.sp
+.LP
+The \fBshowmount\fR command does not display the names of NFS Version 4
+clients.
+.SH OPTIONS
+.sp
+.ne 2
+.na
+\fB\fB-a\fR\fR
+.ad
+.RS 6n
+Print all remote mounts in the format:
+.sp
+\fBhostname\fR\fB : directory\fR
+.sp
+where \fBhostname\fR is the name of the client, and \fBdirectory\fR is the root
+of the file system that has been mounted.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-d\fR\fR
+.ad
+.RS 6n
+List directories that have been remotely mounted by clients.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-e\fR\fR
+.ad
+.RS 6n
+Print the list of shared file systems.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/rmtab\fR\fR
+.ad
+.RS 14n
+
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR hostname (1),
+.BR attributes (7),
+.BR mountd (8)
+.sp
+.LP
+\fI\fR
+.SH BUGS
+.sp
+.LP
+If a client crashes, its entry will not be removed from the list of remote
+mounts on the server.
diff --git a/usr/src/man/man8/shutdown.8 b/usr/src/man/man8/shutdown.8
new file mode 100644
index 0000000000..257e5f16a1
--- /dev/null
+++ b/usr/src/man/man8/shutdown.8
@@ -0,0 +1,190 @@
+'\" te
+.\" Copyright (c) 2001 Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SHUTDOWN 8 "May 9, 2001"
+.SH NAME
+shutdown \- shut down system, change system state
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/shutdown\fR [\fB-y\fR] [\fB-g\fR \fIgrace-period\fR] [\fB-i\fR \fIinit-state\fR]
+ [\fImessage\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBshutdown\fR is executed by the super user to change the state of the
+machine. In most cases, it is used to change from the multi-user state (state
+2) to another state.
+.sp
+.LP
+By default, \fBshutdown\fR brings the system to a state where only the console
+has access to the operating system. This state is called single-user.
+.sp
+.LP
+Before starting to shut down daemons and killing processes, \fBshutdown\fR
+sends a warning message and, by default, a final message asking for
+confirmation. \fImessage\fR is a string that is sent out following the standard
+warning message "The system will be shut down in .\|.\|." If the string
+contains more than one word, it should be contained within single (\fB\&'\fR)
+or double (\fB"\fR) quotation marks.
+.sp
+.LP
+The warning message and the user provided \fImessage\fR are output when there
+are 7200, 3600, 1800, 1200, 600, 300, 120, 60, and 30 seconds remaining before
+\fBshutdown\fR begins. See \fBEXAMPLES\fR.
+.sp
+.LP
+System state definitions are:
+.sp
+.ne 2
+.na
+\fBstate 0\fR
+.ad
+.RS 14n
+Stop the operating system.
+.RE
+
+.sp
+.ne 2
+.na
+\fBstate 1\fR
+.ad
+.RS 14n
+State 1 is referred to as the administrative state. In state 1 file systems
+required for multi-user operations are mounted, and logins requiring access to
+multi-user file systems can be used. When the system comes up from firmware
+mode into state 1, only the console is active and other multi-user (state 2)
+services are unavailable. Note that not all user processes are stopped when
+transitioning from multi-user state to state 1.
+.RE
+
+.sp
+.ne 2
+.na
+\fBstate s, S\fR
+.ad
+.RS 14n
+State s (or S) is referred to as the single-user state. All user processes are
+stopped on transitions to this state. In the single-user state, file systems
+required for multi-user logins are unmounted and the system can only be
+accessed through the console. Logins requiring access to multi-user file
+systems cannot be used.
+.RE
+
+.sp
+.ne 2
+.na
+\fBstate 5\fR
+.ad
+.RS 14n
+Shut the machine down so that it is safe to remove the power. Have the machine
+remove power, if possible. The \fBrc0\fR procedure is called to perform this
+task.
+.RE
+
+.sp
+.ne 2
+.na
+\fBstate 6\fR
+.ad
+.RS 14n
+Stop the operating system and reboot to the state defined by the
+\fBinitdefault\fR entry in \fB/etc/inittab\fR. The \fBrc6\fR procedure is
+called to perform this task.
+.RE
+
+.SH OPTIONS
+.sp
+.ne 2
+.na
+\fB\fB-y\fR\fR
+.ad
+.RS 19n
+Pre-answer the confirmation question so the command can be run without user
+intervention.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-g\fR\fI grace-period\fR\fR
+.ad
+.RS 19n
+Allow the super user to change the number of seconds from the 60-second
+default.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-i\fR\fI init-state\fR\fR
+.ad
+.RS 19n
+If there are warnings, \fIinit-state\fR specifies the state \fBinit\fR is to be
+in. By default, system state `\fBs\fR' is used.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRUsing \fBshutdown\fR
+.sp
+.LP
+In the following example, \fBshutdown\fR is being executed on host \fBfoo\fR
+and is scheduled in 120 seconds. The warning message is output 2 minutes, 1
+minute, and 30 seconds before the final confirmation message.
+
+.sp
+.in +2
+.nf
+example# shutdown -i S -g 120 "===== disk replacement ====="
+Shutdown started. Tue Jun 7 14:51:40 PDT 1994
+
+Broadcast Message from root (pts/1) on foo Tue Jun 7 14:51:41.\|.\|.
+The system will be shut down in 2 minutes
+===== disk replacement =====
+Broadcast Message from root (pts/1) on foo Tue Jun 7 14:52:41.\|.\|.
+The system will be shut down in 1 minutes
+===== disk replacement =====
+Broadcast Message from root (pts/1) on foo Tue Jun 7 14:53:41.\|.\|.
+The system will be shut down in 30 seconds
+===== disk replacement =====
+Do you want to continue? (y or n):
+.fi
+.in -2
+.sp
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/inittab\fR\fR
+.ad
+.RS 16n
+controls process dispatching by \fBinit\fR
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR init.d (5),
+.BR inittab (5),
+.BR nologin (5),
+.BR attributes (7),
+.BR boot (8),
+.BR halt (8),
+.BR init (8),
+.BR killall (8),
+.BR reboot (8),
+.BR ufsdump (8)
+.SH NOTES
+.sp
+.LP
+When a system transitions down to the \fBS\fR or \fBs\fR state, the
+\fB/etc/nologin\fR file (see \fBnologin\fR(5)) is created. Upon subsequent
+transition to state 2 (multi-user state), this file is removed by a script in
+the \fB/etc/rc2.d\fR directory.
diff --git a/usr/src/man/man8/slpd.8 b/usr/src/man/man8/slpd.8
new file mode 100644
index 0000000000..90a7a852d6
--- /dev/null
+++ b/usr/src/man/man8/slpd.8
@@ -0,0 +1,205 @@
+'\" te
+.\" Copyright (C) 2004, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SLPD 8 "Aug 23, 2004"
+.SH NAME
+slpd \- Service Location Protocol Daemon
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/inet/slpd\fR [\fB-f\fR \fIconfiguration-file\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBslpd\fR daemon provides common server functionality for the Service
+Location Protocol ("\fBSLP\fR") versions 1 and 2, as defined by \fBIETF\fR in
+\fIRFC 2165\fR and \fIRFC 2608\fR. \fBSLP\fR provides a scalable framework for
+the discovery and selection of network services.
+.sp
+.LP
+\fBslpd\fR provides the following framework services:
+.sp
+.ne 2
+.na
+\fBDirectory Agent\fR
+.ad
+.sp .6
+.RS 4n
+This service automatically caches service advertisements from service agents to
+provide them to user agents, and makes directory agent advertisements of its
+services. This service is optional. \fBslpd\fR does not provide directory agent
+service by default. Directory agents are not databases, and they do not need to
+be maintained.
+.RE
+
+.sp
+.ne 2
+.na
+\fBService Agent Server\fR
+.ad
+.sp .6
+.RS 4n
+All service agents on the local host register and deregister with this server.
+This service responds to all requests for services, and forwards registrations
+to directory agents. By default, \fBslpd\fR is a service agent server.
+.RE
+
+.sp
+.ne 2
+.na
+\fBPassive Directory Agent Discovery \fR
+.ad
+.sp .6
+.RS 4n
+This service listens for directory agent advertisements and maintains a table
+of active directory agents. When a user agent wishes to discover a directory
+agent, it can simply query \fBslpd\fR, obviating the need to perform discovery
+by means of multicast. By default, \fBslpd\fR performs this service.
+.RE
+
+.sp
+.ne 2
+.na
+\fBProxy Registration\fR
+.ad
+.sp .6
+.RS 4n
+This service can act as a proxy service agent for services that cannot register
+themselves. \fBslpd\fR reads the proxy registration file for information on
+services it is to proxy. By default, no services are registered by proxy.
+.RE
+
+.sp
+.LP
+All configuration options are available from the configuration file. \fBslpd\fR
+reads its configuration file upon startup.
+.sp
+.LP
+Stop and start the slpd daemon using \fBsvcadm\fR(8). Use the command
+\fBsvcadm enable network/slp\fR to start the slpd daemon. Use the command
+\fBsvcadm disable network/slp\fR to stop it.
+.sp
+.LP
+The file \fB/etc/inet/slp.conf\fR must exist before the \fBslp\fR service can
+start the daemon. Only the example file \fB/etc/inet/slp.conf.example\fR is
+present by default. To enable \fBSLP\fR, copy \fB/etc/inet/slp.conf.example\fR
+to \fB/etc/inet/slp.conf\fR.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-f\fR \fIconfiguration-file\fR\fR
+.ad
+.RS 25n
+Specify an alternate configuration file
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRStopping the \fBslpd\fR daemon
+.sp
+.LP
+The following command stops the \fBslpd\fR daemon:
+
+.sp
+.in +2
+.nf
+example# svcadm disable network/slp
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRRestarting the \fBslpd\fR daemon
+.sp
+.LP
+The following command restarts the \fBslpd\fR daemon:
+
+.sp
+.in +2
+.nf
+example# svcadm restart network/slp
+.fi
+.in -2
+.sp
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/inet/slp.conf\fR\fR
+.ad
+.RS 22n
+The default configuration file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBslpd.reg\fR\fR
+.ad
+.RS 22n
+The proxy registration file
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+CSI Enabled
+_
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR svcs (1),
+.BR slp_api (3SLP),
+.BR slp (4P),
+.BR slp.conf (5),
+.BR slpd.reg (5),
+.BR attributes (7),
+.BR smf (7),
+.BR svcadm (8)
+.sp
+.LP
+\fI\fR
+.sp
+.LP
+Guttman, E., Perkins, C., Veizades, J., and Day, M., \fIRFC 2608, Service
+Location Protocol, Version 2\fR, The Internet Society, June 1999.
+.SH NOTES
+.sp
+.LP
+The \fBslpd\fR service is managed by the service management facility,
+\fBsmf\fR(7), under the service identifier:
+.sp
+.in +2
+.nf
+svc:/network/slp
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Administrative actions on this service, such as enabling, disabling, or
+requesting restart, can be performed using \fBsvcadm\fR(8). The service's
+status can be queried using the \fBsvcs\fR(1) command.
diff --git a/usr/src/man/man8/smbadm.8 b/usr/src/man/man8/smbadm.8
new file mode 100644
index 0000000000..407958c072
--- /dev/null
+++ b/usr/src/man/man8/smbadm.8
@@ -0,0 +1,461 @@
+.\"
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.\"
+.\"
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 2019 Nexenta by DDN, Inc. All rights reserved.
+.\"
+.Dd June 6, 2019
+.Dt SMBADM 8
+.Os
+.Sh NAME
+.Nm smbadm
+.Nd configure and manage SMB local groups and users, and manage domain
+membership
+.Sh SYNOPSIS
+.Nm
+.Cm create
+.Op Fl d Ar description
+.Ar group
+.Nm
+.Cm delete
+.Ar group
+.Nm
+.Cm rename
+.Ar group new-group
+.Nm
+.Cm show
+.Op Fl mp
+.Op Ar group
+.Nm
+.Cm get
+.Oo Fl p Ar property Oc Ns ...
+.Ar group
+.Nm
+.Cm set
+.Fl p Ar property Ns = Ns Ar value
+.Oo Fl p Ar property Ns = Ns Ar value Oc Ns ...
+.Ar group
+.Nm
+.Cm add-member
+.Fl m Ar member Oo Fl m Ar member Oc Ns ...
+.Ar group
+.Nm
+.Cm remove-member
+.Fl m Ar member Oo Fl m Ar member Oc Ns ...
+.Ar group
+.Nm
+.Cm delete-user
+.Ar username
+.Nm
+.Cm disable-user
+.Ar username
+.Nm
+.Cm enable-user
+.Ar username
+.Nm
+.Cm join
+.Op Fl y
+.Fl u Ar username
+.Ar domain
+.Nm
+.Cm join
+.Op Fl y
+.Fl w Ar workgroup
+.Nm
+.Cm list
+.Nm
+.Cm lookup
+.Ar account-name Oo Ar account-name Oc Ns ...
+.Sh DESCRIPTION
+The
+.Nm
+command is used to configure SMB local groups and users, and to manage domain
+membership.
+You can also use the
+.Nm
+command to enable or disable SMB password generation for individual local users.
+.Pp
+SMB local groups can be used when Windows accounts must be members of some local
+groups and when Windows style privileges must be granted.
+System local groups cannot provide these functions.
+.Pp
+There are two types of local groups: user defined and built-in.
+Built-in local groups are predefined local groups to support common
+administration tasks.
+.Pp
+In order to provide proper identity mapping between SMB local groups and
+system groups, a SMB local group must have a corresponding system group.
+This requirement has two consequences: first, the group name must conform to the
+intersection of the Windows and system group name rules.
+Thus, a SMB local group name can be up to eight (8) characters long and contain
+only lowercase characters and numbers.
+Second, a system local group has to be created before a SMB local group can
+be created.
+.Pp
+Built-in groups are standard Windows groups and are predefined by the SMB
+service.
+The built-in groups cannot be added, removed, or renamed, and these groups do
+not follow the SMB local group naming conventions.
+.Pp
+When the SMB server is started, the following built-in groups are available:
+.Bl -tag -width "Backup Operators"
+.It Sy Administrators
+Group members can administer the system.
+.It Sy Backup Operators
+Group members can bypass file access controls to back up and restore files.
+.It Sy Power Users
+Group members can share directories.
+.El
+.Pp
+System local users must have an SMB password for authentication and to gain
+access to SMB resources.
+This password is created by using the
+.Xr passwd 1
+command when the
+.Sy pam_smb_password
+module is added to the system's PAM configuration.
+See the
+.Xr pam_smb_passwd 7
+man page.
+.Pp
+The
+.Cm disable-user
+and
+.Cm enable-user
+subcommands control SMB password-generation for a specified local user.
+When disabled, the user is prevented from connecting to the SMB service.
+By default, SMB password-generation is enabled for all local users.
+.Pp
+To reenable a disabled user, you must use the
+.Cm enable-user
+subcommand and then reset the user's password by using the
+.Nm passwd
+command.
+The
+.Pa pam_smb_passwd.so.1
+module must be added to the system's PAM configuration to generate an SMB
+password.
+.Ss Escaping Backslash Character
+For the
+.Cm add-member ,
+.Cm remove-member ,
+and
+.Cm join
+.Po with
+.Fl u
+.Pc
+subcommands, the backslash character
+.Pq Qq \e
+is a valid separator between member or user names and domain names.
+The backslash character is a shell special character and must be quoted.
+For example, you might escape the backslash character with another backslash
+character:
+.Ar domain Ns \e\e Ns Ar username .
+For more information about handling shell special characters, see the man page
+for your shell.
+.Sh OPERANDS
+The
+.Nm
+command uses the following operands:
+.Bl -tag -width "username"
+.It Ar domain
+Specifies the name of an existing Windows domain to join.
+.It Ar group
+Specifies the name of the SMB local group.
+.It Ar username
+Specifies the name of a system local user.
+.El
+.Sh SUBCOMMANDS
+The
+.Nm
+command includes these subcommands:
+.Bl -tag -width Ds
+.It Xo
+.Cm create
+.Op Fl d Ar description
+.Ar group
+.Xc
+Creates a SMB local group with the specified name.
+You can optionally specify a description of the group by using the
+.Fl d
+option.
+.It Xo
+.Cm delete
+.Ar group
+.Xc
+Deletes the specified SMB local group.
+The built-in groups cannot be deleted.
+.It Xo
+.Cm rename
+.Ar group new-group
+.Xc
+Renames the specified SMB local group.
+The group must already exist.
+The built-in groups cannot be renamed.
+.It Xo
+.Cm show
+.Op Fl mp
+.Op Ar group
+.Xc
+Shows information about the specified SMB local group or groups.
+If no group is specified, information is shown for all groups.
+If the
+.Fl m
+option is specified, the group members are also shown.
+If the
+.Fl p
+option is specified, the group privileges are also shown.
+.It Xo
+.Cm get
+.Oo Fl p Ar property Ns = Ns Ar value Oc Ns ...
+.Ar group
+.Xc
+Retrieves property values for the specified group.
+If no property is specified, all property values are shown.
+.It Xo
+.Cm set
+.Fl p Ar property Ns = Ns Ar value
+.Oo Fl p Ar property Ns = Ns Ar value Oc Ns ...
+.Ar group
+.Xc
+Sets configuration properties for a SMB local group.
+The description and the privileges for the built-in groups cannot be changed.
+.Pp
+The
+.Fl p Ar property Ns = Ns Ar value
+option specifies the list of properties to be set on the specified group.
+.Pp
+The group-related properties are as follows:
+.Bl -tag -width Ds
+.It Cm backup Ns = Ns Cm on Ns | Ns Cm off
+Specifies whether members of the SMB local group can bypass file access controls
+to back up file system objects.
+.It Cm description Ns = Ns Ar description-text
+Specifies a text description for the SMB local group.
+.It Cm restore Ns = Ns Cm on Ns | Ns Cm off
+Specifies whether members of the SMB local group can bypass file access controls
+to restore file system objects.
+.It Cm take-ownership Ns = Ns Cm on Ns | Ns Cm off
+Specifies whether members of the SMB local group can take ownership of file
+system objects.
+.It Cm bypass-read Ns = Ns Cm on Ns | Ns Cm off
+Specifies whether members of the SMB local group can always bypass Read access controls.
+.It Cm bypass-write Ns = Ns Cm on Ns | Ns Cm off
+Specifies whether members of the SMB local group can always bypass Write and Delete access controls.
+.El
+.It Xo
+.Cm add-member
+.Fl m Ar member Oo Fl m Ar member Oc Ns ...
+.Ar group
+.Xc
+Adds the specified member to the specified SMB local group.
+The
+.Fl m Ar member
+option specifies the name of a SMB local group member.
+The member name must include an existing user name and an optional domain name.
+.Pp
+Specify the member name in either of the following formats:
+.Bd -literal -offset indent
+[domain\e]username
+[domain/]username
+.Ed
+.Pp
+For example, a valid member name might be
+.Sy sales\eterry
+or
+.Sy sales/terry ,
+where
+.Sy sales
+is the Windows domain name and
+.Sy terry
+is the name of a user in the
+.Sy sales
+domain.
+.It Xo
+.Cm remove-member
+.Fl m Ar member Oo Fl m Ar member Oc Ns ...
+.Ar group
+.Xc
+Removes the specified member from the specified SMB local group.
+The
+.Fl m Ar member
+option specifies the name of a SMB local group member.
+The member name must include an existing user name and an optional domain name.
+.Pp
+Specify the member name in either of the following formats:
+.Bd -literal -offset indent
+[domain\e]username
+[domain/]username
+.Ed
+.Pp
+For example, a valid member name might be
+.Sy sales\eterry
+or
+.Sy sales/terry ,
+where
+.Sy sales
+is the Windows domain name and
+.Sy terry
+is the name of a user in the
+.Sy sales
+domain.
+.It Xo
+.Cm delete-user
+.Ar username
+.Xc
+Deletes SMB password for the specified local user effectively preventing the
+access by means of the SMB service.
+Use
+.Nm passwd
+command to create the SMB password and re-enable access.
+.It Xo
+.Cm disable-user
+.Ar username
+.Xc
+Disables SMB password-generation capabilities for the specified local user
+effectively preventing access by means of the SMB service.
+When a local user account is disabled, you cannot use the
+.Nm passwd
+command to modify the user's SMB password until the user account is re-enabled.
+.It Xo
+.Cm enable-user
+.Ar username
+.Xc
+Enables SMB password-generation capabilities for the specified local user and
+re-enables access.
+After the password-generation capabilities are re-enabled, use the
+.Nm passwd
+command to generate the SMB password for the local user.
+.Pp
+The
+.Nm passwd
+command manages both the system password and SMB password for this user if the
+.Pa pam_smb_passwd
+module has been added to the system's PAM configuration.
+.It Xo
+.Cm join
+.Op Fl y
+.Fl u Ar username
+.Ar domain
+.Xc
+Joins a Windows domain.
+.Pp
+An authenticated user account is required to join a domain, so you must specify
+the Windows administrative user name with the
+.Fl u
+option.
+If the password is not specified on the command line, the user is prompted for
+it.
+This user should be the domain administrator or any user who has administrative
+privileges for the target domain.
+.Pp
+.Ar username
+and
+.Ar domain
+can be entered in any of the following formats:
+.Bd -literal -offset indent
+username[+password] domain
+domain\eusername[+password]
+domain/username[+password]
+username@domain
+.Ed
+.Pp
+\&...where
+.Ar domain
+can be the NetBIOS or DNS domain name.
+.Pp
+If a machine trust account for the system already exists on a domain controller,
+any authenticated user account can be used when joining the domain.
+However, if the machine trust account does
+.Em not
+already exist, an account that has administrative privileges on the domain is
+required to join the domain.
+Specifying
+.Fl y
+will bypass the SMB service restart prompt.
+.It Xo
+.Cm join
+.Op Fl y
+.Fl w Ar workgroup
+.Xc
+Joins a Windows workgroup.
+.Pp
+The default mode for the SMB service is workgroup mode, which uses the default
+workgroup name,
+.Qq WORKGROUP .
+.Pp
+The
+.Fl w Ar workgroup
+option specifies the name of the workgroup to join when using the
+.Cm join
+subcommand.
+Specifying
+.Fl y
+will bypass the SMB service restart prompt.
+.It Cm list
+Shows information about the current workgroup or domain.
+The information typically includes the workgroup name or the primary domain
+name.
+When in domain mode, the information includes domain controller names and
+trusted domain names.
+.Pp
+Each entry in the output is identified by one of the following tags:
+.Bl -tag -width "[*]"
+.It Sy [*]
+Primary domain
+.It Sy [.]
+Local domain
+.It Sy [-]
+Other domains
+.It Sy [+]
+Selected domain controller
+.El
+.It Xo
+.Cm lookup
+.Ar account-name Oo Ar account-name Oc Ns ...
+.Xc
+Lookup the SID for the given
+.Ar account-name ,
+or lookup the
+.Ar account-name
+for the given SID.
+This subcommand is primarily for diagnostic use, to confirm whether the server
+can lookup domain accounts and/or SIDs.
+.El
+.Sh EXIT STATUS
+.Ex -std
+.Sh INTERFACE STABILITY
+Utility name and options are
+.Sy Uncommitted .
+Utility output format is
+.Sy Not-An-Interface .
+.Sh SEE ALSO
+.Xr passwd 1 ,
+.Xr smb 5 ,
+.Xr smbautohome 5 ,
+.Xr attributes 7 ,
+.Xr pam_smb_passwd 7 ,
+.Xr smf 7 ,
+.Xr groupadd 8 ,
+.Xr idmap 8 ,
+.Xr idmapd 8 ,
+.Xr kclient 8 ,
+.Xr share 8 ,
+.Xr sharectl 8 ,
+.Xr sharemgr 8 ,
+.Xr smbd 8 ,
+.Xr smbstat 8
diff --git a/usr/src/man/man8/smbd.8 b/usr/src/man/man8/smbd.8
new file mode 100644
index 0000000000..0564709559
--- /dev/null
+++ b/usr/src/man/man8/smbd.8
@@ -0,0 +1,132 @@
+'\" te
+.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SMBD 8 "Feb 5, 2008"
+.SH NAME
+smbd \- CIFS server daemon
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/smbsrv/smbd\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBsmbd\fR daemon handles \fBCIFS\fR/\fBSMB\fR requests from \fBCIFS\fR
+clients, such as Windows clients. Only processes with \fB{PRIV_SYS_SMB}\fR and
+sufficient privileges to write the \fB/var/run\fR directory can run this
+daemon.
+.sp
+.LP
+The \fBsmbd\fR daemon is automatically invoked by using the \fBsharemgr\fR
+command over all available transports. By default, \fBsmbd\fR starts over the
+NetBIOS-Over-TCP (\fBNBT\fR) and \fBTCP\fR transports.
+.sp
+.LP
+When \fBsmbd\fR is started over \fBNBT\fR, the following services are started:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The NetBIOS name service is started on \fBUDP\fR port 137.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The NetBIOS datagram service is started on \fBUDP\fR port 138.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The NetBIOS session service is started on \fBTCP\fR port 139.
+.RE
+.sp
+.LP
+When the \fBsmbd\fR daemon is started over TCP, the CIFS service is started on
+TCP port 445.
+.sp
+.LP
+Only one instance of \fBsmbd\fR may be running at a time.
+.SH EXIT STATUS
+.sp
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB0\fR
+.ad
+.RS 13n
+Daemon exited cleanly.
+.RE
+
+.sp
+.ne 2
+.na
+\fB95\fR
+.ad
+.RS 13n
+Daemon exited with a fatal error.
+.RE
+
+.sp
+.ne 2
+.na
+\fB96\fR
+.ad
+.RS 13n
+Daemon exited with a configuration error.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See the \fBattributes\fR(7) man page for descriptions of the following
+attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Uncommitted
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR ps (1),
+.BR svcs (1),
+.BR smb (5),
+.BR smbautohome (5),
+.BR system (5),
+.BR attributes (7),
+.BR smf (7),
+.BR sharectl (8),
+.BR sharemgr (8),
+.BR smbadm (8),
+.BR smbstat (8),
+.BR svcadm (8)
+.SH NOTES
+.sp
+.LP
+Use the \fBsvcadm\fR command to perform administrative actions on the
+\fBsmbd\fR service, such as enabling, disabling, or restarting the service. Use
+the \fBsvcs\fR command to query the service status.
+.sp
+.LP
+The \fBsmbd\fR service is managed by the service management facility under the
+service identifier \fBsvc:/network/smb/server\fR.
+.sp
+.LP
+If the \fBsmbd\fR service is disabled, it will be enabled by the
+\fBsharemgr\fR(8) command, unless its \fBauto_enable\fR property is set to
+false.
diff --git a/usr/src/man/man8/smbiod.8 b/usr/src/man/man8/smbiod.8
new file mode 100644
index 0000000000..bdce6fa08d
--- /dev/null
+++ b/usr/src/man/man8/smbiod.8
@@ -0,0 +1,119 @@
+'\" te
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SMBIOD 8 "Jul 7, 2009"
+.SH NAME
+smbiod \- SMB client I/O daemon
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/smbfs/smbiod\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBsmbiod\fR is a helper program that initiates an SMB reconnection, when
+needed.
+.sp
+.LP
+When a user runs an \fBsmbutil\fR or \fBmount_smbfs\fR command, an \fBsmbiod\fR
+process is started and continues to run until that user no longer has any SMB
+client connections. Only one \fBsmbiod\fR process runs for each user that has
+SMB client connections.
+.sp
+.LP
+Each \fBsmbiod\fR process instantiates a door service on one of the following
+files:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fB/tmp/.smbiod-\fIUID\fR\fR file for normal users
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fB/var/run/smbiod-0\fR file for superuser
+.RE
+.sp
+.LP
+The \fBsmbiod\fR daemon has no external, customer-accessible interfaces.
+.SH EXIT STATUS
+.sp
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB0\fR
+.ad
+.RS 13n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB>0\fR
+.ad
+.RS 13n
+An error occurred.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/smbfs/smbiod\fR\fR
+.ad
+.RS 25n
+SMB I/O daemon.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/tmp/.smbiod-\fIUID\fR\fR\fR
+.ad
+.RS 25n
+File on which to instantiate a door service for user \fIUID\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/run/smbiod-0\fR\fR
+.ad
+.RS 25n
+File on which to instantiate a door service for superuser.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See the \fBattributes\fR(7) man page for descriptions of the following
+attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Uncommitted
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR ps (1),
+.BR smbutil (1),
+.BR smbfs (4FS),
+.BR attributes (7),
+.BR mount_smbfs (8)
diff --git a/usr/src/man/man8/smbios.8 b/usr/src/man/man8/smbios.8
new file mode 100644
index 0000000000..122527bc35
--- /dev/null
+++ b/usr/src/man/man8/smbios.8
@@ -0,0 +1,225 @@
+'\" te
+.\" Copyright (c) 2005, Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 2018 Joyent, Inc.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SMBIOS 8 "March 29, 2018"
+.SH NAME
+smbios \- display the contents of a System Management BIOS image
+.SH SYNOPSIS
+.LP
+.nf
+\fBsmbios\fR [\fB-BeOsx\fR] [\fB-i\fR \fIid\fR] [\fB-t\fR \fItype\fR] [\fB-w\fR \fIfile\fR] [\fIfile\fR]
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBsmbios\fR utility displays the contents of the System Management BIOS
+(SMBIOS) image exported by the current system or stored in a file. SMBIOS is an
+industry-standard mechanism for low-level system software to export hardware
+configuration information to higher-level system management software. The
+SMBIOS data format itself is defined by the Distributed Management Task Force
+(DMTF). Refer to http://www.dmtf.org for more information about SMBIOS and to
+obtain a copy of the SMBIOS specification and implementation guidelines.
+.sp
+.LP
+The SMBIOS image consists of a table of structures, each describing some aspect
+of the system software or hardware configuration. By default, \fBsmbios\fR
+displays the entire contents of the current SMBIOS image. If the \fB-s\fR
+option is specified, \fBsmbios\fR displays a summary of the structures that are
+present in the image. If the \fB-w\fR option is specified, \fBsmbios\fR writes
+a copy of the SMBIOS image to the specified file. \fBsmbios\fR can then be
+applied to the resulting file to display its content.
+.sp
+.LP
+\fBsmbios\fR attempts to display each structure and its content in a human-
+readable fashion. If \fBsmbios\fR does not recognize a structure's type or
+content, the raw hexadecimal data for the structure is displayed.
+.SH OPTIONS
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-B\fR\fR
+.ad
+.RS 11n
+Disable header validation for broken BIOSes.
+.sp
+By default, \fBsmbios\fR attempts to validate the SMBIOS header by verifying
+the anchor strings, header checksums, and version number. This option might be
+necessary when a BIOS has a non-compliant header.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-e\fR\fR
+.ad
+.RS 11n
+ Display the contents of the SMBIOS entry point rather than the contents of the
+SMBIOS structure table.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-i\fR \fIid\fR\fR
+.ad
+.RS 11n
+Display only the specified structure, named by its integer id.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-O\fR\fR
+.ad
+.RS 11n
+ Display obsolete structure types.
+.sp
+By default, \fBsmbios\fR elides output for structures whose type is marked as
+obsolete in the DMTF SMBIOS specification.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR\fR
+.ad
+.RS 11n
+Display only a summary listing of the structure identifiers and types, instead
+of the content of each selected structure.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-t\fR \fItype\fR\fR
+.ad
+.RS 11n
+Display only those structures whose type matches the specified integer type, as
+defined the DMTF SMBIOS specification.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-w\fR \fIfile\fR\fR
+.ad
+.RS 11n
+Write a copy of the SMBIOS image to the specified file and exit.
+.sp
+The SMBIOS entry point is written to the start of the file with its structure
+table address set to the file offset of the structure table, and a new entry
+point checksum is computed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-x\fR\fR
+.ad
+.RS 11n
+Display raw hexadecimal data for the selected structures in addition to
+human-readable output.
+.sp
+By default, hexadecimal data is only displayed if \fBsmbios\fR cannot display
+human-readable output for the selected structures.
+.RE
+
+.SH OPERANDS
+.LP
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fB\fIfile\fR\fR
+.ad
+.RS 8n
+Specifies an alternate SMBIOS image to display instead of the current system's
+SMBIOS image.
+.RE
+
+.SH EXIT STATUS
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR \fR
+.ad
+.RS 6n
+Successful completion. All structures in the SMBIOS image were examined
+successfully.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB1\fR\fR
+.ad
+.RS 6n
+A fatal error occurred, such as failure to open the specified file or device,
+or corruption in the image.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB2\fR\fR
+.ad
+.RS 6n
+Invalid command-line options were specified.
+.RE
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/dev/smbios\fR \fR
+.ad
+.RS 16n
+Kernel SMBIOS image device. This device special file is used to export a
+snapshot of the current system SMBIOS image.
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability See below.
+.TE
+
+.sp
+.LP
+The command-line options are Evolving. The human-readable output is Unstable.
+.SH SEE ALSO
+.LP
+.BR smbios (4D),
+.BR attributes (7),
+.BR prtdiag (8)
+.sp
+.LP
+\fISystem Management BIOS Reference Specification\fR (see http://www.dmtf.org)
+.SH NOTES
+.LP
+The implementation of a System Management BIOS image is entirely at the
+discretion of the system and BIOS vendors. Not all systems export an SMBIOS.
+The SMBIOS structure content varies widely between systems and BIOS vendors and
+frequently does not comply with the guidelines included in the specification.
+Some structure fields might not be filled in by the BIOS at all, and others
+might be filled inwith non-conforming values.
+.sp
+.LP
+This utility incorrectly interprets the first three fields of the system
+information UUID field as network-endian; the SMBIOS specification defines them
+as little-endian. The "UUID (Endian-corrected)" field has the correct value.
diff --git a/usr/src/man/man8/smbstat.8 b/usr/src/man/man8/smbstat.8
new file mode 100644
index 0000000000..af5115772f
--- /dev/null
+++ b/usr/src/man/man8/smbstat.8
@@ -0,0 +1,178 @@
+.\"
+.\" This file and its contents are supplied under the terms of the
+.\" Common Development and Distribution License ("CDDL"), version 1.0.
+.\" You may only use this file in accordance with the terms of version
+.\" 1.0 of the CDDL.
+.\"
+.\" A full copy of the text of the CDDL should have accompanied this
+.\" source. A copy of the CDDL is also available via the Internet at
+.\" http://www.illumos.org/license/CDDL.
+.\"
+.\"
+.\" Copyright 2014 Nexenta Systems, Inc.
+.\"
+.Dd Nov 22, 2013
+.Dt SMBSTAT 8
+.Os
+.Sh NAME
+.Nm smbstat
+.Nd report SMB server statistics
+.Sh SYNOPSIS
+.Nm smbstat
+.Op Fl ctu
+.Op Fl r Op Fl anz
+.Op Ar interval
+.Sh DESCRIPTION
+The
+.Nm
+command shows statistical information for the SMB server, including any or all
+of the following four categories:
+.Sy counters ,
+.Sy throughput ,
+.Sy utilization ,
+.Sy requests .
+By default,
+.Nm
+shows
+.Sy throughput
+and
+.Sy utilization .
+.Sh OPTIONS
+.Bl -tag -width Ds
+.It Fl c
+Display
+.Sy counters .
+The columns shown are:
+.Bl -tag -width "users" -compact
+.It Sy nbt
+NetBIOS connections
+.It Sy tcp
+TCP connections
+.It Sy users
+logged on users
+.It Sy trees
+share connections
+.It Sy files
+open files and directories
+.It Sy pipes
+open named pipes
+.El
+.It Fl r
+Display
+.Sy request
+data, one row for each SMB command.
+The columns shown are, for each request type:
+.Bl -tag -width "rt-stddev" -compact
+.It Pq name
+command name
+.It Sy code
+command code
+.It Sy %
+% of requests that fall in this row
+.It Sy rbytes/s
+received bytes per second
+.It Sy tbytes/s
+transmitted bytes per second
+.It Sy reqs/s
+requests per second
+.It Sy rt-mean
+response time average
+.It Sy rt-stddev
+response time standard deviation
+.El
+.It Fl t
+Display
+.Sy throughput .
+The columns shown are:
+.Bl -tag -width "rbytes/s" -compact
+.It Sy rbytes/s
+received bytes per second
+.It Sy tbytes/s
+transmitted bytes per second
+.It Sy reqs/s
+requests per second
+.It Sy reads/s
+number of read requests per second
+.It Sy writes/s
+number of write requests per second
+.El
+.It Fl u
+Display
+.Sy utilization .
+The columns shown are:
+.Bl -tag -width "wtime" -compact
+.It Sy wcnt
+average number of waiting requests
+.It Sy rcnt
+average number of running requests
+.It Sy wtime
+average wait time per request
+.It Sy rtime
+average run time per request
+.It Sy w%
+% of time there were waiting requests
+.It Sy r%
+% of time there were running requests
+.It Sy u%
+utilization, computed as
+.Sy rcnt Ns / Ns Sy max_workers
+.It Sy sat
+has the server been
+.Qq saturated
+.Pq u% at 100
+.It Sy usr%
+% of CPU time in user space
+.It Sy sys%
+% of CPU time in kernel
+.It Sy idle%
+% of CPU time spent idle
+.El
+.El
+.Pp
+The
+.Fl r
+option supports additional modifiers including:
+.Bl -tag -width Ds
+.It Fl a
+show
+.Qq all
+request types
+.Pq including unsupported ones
+.It Fl n
+.Qq name
+order
+.Pq sort by request name
+.It Fl z
+suppress
+.Qq zero
+count rows
+.Pq types for which none were received
+.El
+.Sh OPERANDS
+.Bl -tag -width Ds
+.It Ar interval
+When
+.Ar interval
+is specified,
+.Nm
+runs in a loop, printing the requested output every
+.Ar interval
+seconds.
+When no
+.Ar interval
+is specified, the statistics presented are based on running averages accumulated
+since the system started.
+The first output shows the same cumulative statistics one would see without the
+.Ar interval
+specified, and subsequent outputs represent the activity in the interval that
+just finished.
+.El
+.Sh INTERFACE STABILITY
+.Sy Uncommitted .
+Output format is
+.Sy Not-an-Interface.
+.Sh SEE ALSO
+.Xr sharectl 8 ,
+.Xr sharemgr 8 ,
+.Xr smbadm 8 ,
+.Xr smbd 8
diff --git a/usr/src/man/man8/smrsh.8 b/usr/src/man/man8/smrsh.8
new file mode 100644
index 0000000000..db5a09bb2b
--- /dev/null
+++ b/usr/src/man/man8/smrsh.8
@@ -0,0 +1,86 @@
+'\" te
+.\" Copyright (c) 1983 Eric P. Allman
+.\" Copyright (c) 1988, 1993 The Regents of the University of California. All rights reserved.
+.\" Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 3. All advertising materials mentioning features or use of this software must display
+.\" the following acknowledgement: This product includes software developed by the University of California, Berkeley and its contributors. 4. Neither the name of the University nor the names of its contributors may be used to endorse or promote products derived from this software without specific
+.\" prior written permission. THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR
+.\" CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
+.\" IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+.\" Copyright (c) 1998-2006, 2008 Sendmail, Inc. and its suppliers. All rights reserved.
+.\" The following license terms and conditions apply, unless a different license is obtained from Sendmail, Inc., 6425 Christie Ave, Fourth Floor, Emeryville, CA 94608, USA, or by electronic mail at license@sendmail.com. License Terms: Use, Modification and Redistribution
+.\" (including distribution of any modified or derived work) in source and binary forms is permitted only if each of the following conditions is met: 1. Redistributions qualify as "freeware" or "Open Source Software" under one of the following terms: (a) Redistributions are made at no charge
+.\" beyond the reasonable cost of materials and delivery. (b) Redistributions are accompanied by a copy of the Source Code or by an irrevocable offer to provide a copy of the Source Code for up to three years at the cost of materials and delivery. Such redistributions
+.\" must allow further use, modification, and redistribution of the Source Code under substantially the same terms as this license. For the purposes of redistribution "Source Code" means the complete compilable and linkable source code of sendmail including all modifications.
+.\" 2. Redistributions of source code must retain the copyright notices as they appear in each source code file, these license terms, and the disclaimer/limitation of liability set forth as paragraph 6 below. 3. Redistributions in binary form must reproduce the Copyright Notice, these license
+.\" terms, and the disclaimer/limitation of liability set forth as paragraph 6 below, in the documentation and/or other materials provided with the distribution. For the purposes of binary distribution the "Copyright Notice" refers to the following language: "Copyright (c) 1998-2004 Sendmail,
+.\" Inc. All rights reserved." 4. Neither the name of Sendmail, Inc. nor the University of California nor the names of their contributors may be used to endorse or promote products derived from this software without specific prior written permission. The name "sendmail" is a trademark
+.\" of Sendmail, Inc. 5. All redistributions must comply with the conditions imposed by the University of California on certain embedded code, whose copyright notice and conditions for redistribution are as follows: (a) Copyright (c) 1988, 1993 The Regents of the University of California.
+.\" All rights reserved. (b) Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: (i) Redistributions of source code must retain the above copyright notice, this list of
+.\" conditions and the following disclaimer. (ii) Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
+.\" (iii) Neither the name of the University nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. 6. Disclaimer/Limitation of Liability: THIS SOFTWARE IS PROVIDED BY SENDMAIL,
+.\" INC. AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL SENDMAIL, INC., THE REGENTS OF THE UNIVERSITY OF CALIFORNIA OR CONTRIBUTORS
+.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
+.\" IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved.
+.TH SMRSH 8 "June 20, 2021"
+.SH NAME
+smrsh \- restricted shell for sendmail
+.SH SYNOPSIS
+.nf
+\fBsmrsh\fR \fB-c\fR \fIcommand\fR
+.fi
+
+.SH DESCRIPTION
+The \fBsmrsh\fR program is intended as a replacement for the \fBsh\fR command
+in the \fBprog\fR mailer in \fBsendmail\fR(8) configuration files. The
+\fBsmrsh\fR program sharply limits commands that can be run using the
+\fB|program\fR syntax of \fBsendmail\fR. This improves overall system security.
+\fBsmrsh\fR limits the set of programs that a programmer can execute, even if
+\fBsendmail\fR runs a program without going through an \fBalias\fR or
+\fBforward\fR file.
+.sp
+.LP
+Briefly, \fBsmrsh\fR limits programs to be in the directory
+\fB/var/adm/sm.bin\fR, allowing system administrators to choose the set of
+acceptable commands. It also rejects any commands with the characters: \fB,\fR,
+\fB<\fR, \fB>\fR, \fB|\fR, \fB;\fR, \fB&\fR, \fB$\fR, \fB\er\fR (RETURN), or
+\fB\en\fR (NEWLINE) on the command line to prevent end run attacks.
+.sp
+.LP
+Initial pathnames on programs are stripped, so forwarding to
+\fB/usr/ucb/vacation\fR, \fB/usr/bin/vacation\fR,
+\fB/home/server/mydir/bin/vacation\fR, and \fBvacation\fR all actually forward
+to \fB/var/adm/sm.bin/vacation\fR.
+.sp
+.LP
+System administrators should be conservative about populating
+\fB/var/adm/sm.bin\fR. Reasonable additions are utilities such as
+\fBvacation\fR(1) and \fBprocmail\fR. Never include any shell or shell-like
+program (for example, \fBperl\fR) in the \fBsm.bin\fR directory. This does not
+restrict the use of \fBshell\fR or \fBperl\fR scrips in the \fBsm.bin\fR
+directory (using the \fB#!\fR syntax); it simply disallows the execution of
+arbitrary programs.
+.SH OPTIONS
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-c\fR \fIcommand\fR\fR
+.ad
+.RS 14n
+Where \fIcommand\fR is a valid command, executes \fIcommand\fR.
+.RE
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/var/adm/sm.bin\fR\fR
+.ad
+.RS 19n
+directory for restricted programs
+.RE
+
+.SH SEE ALSO
+.BR attributes (7),
+.BR sendmail (8)
diff --git a/usr/src/man/man8/snoop.8 b/usr/src/man/man8/snoop.8
new file mode 100644
index 0000000000..5593bcc480
--- /dev/null
+++ b/usr/src/man/man8/snoop.8
@@ -0,0 +1,1209 @@
+'\" te
+.\" Copyright 2021 Joyent, Inc.
+.\" Copyright (C) 2009, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright (c) 2014, Joyent, Inc. All rights reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SNOOP 8 "Mar 22, 2021"
+.SH NAME
+snoop \- capture and inspect network packets
+.SH SYNOPSIS
+.nf
+\fBsnoop\fR [\fB-afqrCDINPSvV\fR] [\fB-t\fR [r | a | d]] [\fB-c\fR \fImaxcount\fR]
+ [\fB-d\fR \fIdevice\fR] [\fB-i\fR \fIfilename\fR] [\fB-n\fR \fIfilename\fR] [\fB-o\fR \fIfilename\fR]
+ [\fB-p\fR \fIfirst\fR [, \fIlast\fR]] [\fB-s\fR \fIsnaplen\fR] [\fB-x\fR \fIoffset\fR [, \fIlength\fR]]
+ [\fB-z\fR \fIzonename\fR] [\fIexpression\fR]
+.fi
+
+.SH DESCRIPTION
+From a datalink or IP interface, \fBsnoop\fR captures packets and displays
+their contents. If the datalink or IP interface is not specified, \fBsnoop\fR
+will pick a datalink to use, giving priority to datalinks that have been
+plumbed for IP traffic. \fBsnoop\fR uses the \fBpfmod\fR(4M) and
+\fBbufmod\fR(4M) STREAMS modules to provide efficient capture of packets from
+the network. Captured packets can be displayed as they are received or saved to
+a file (which is \fIRFC 1761\fR-compliant) for later inspection.
+.sp
+.LP
+\fBsnoop\fR can display packets in a single-line summary form or in verbose
+multi-line forms. In summary form, with the exception of certain VLAN packets,
+only the data pertaining to the highest level protocol is displayed. If a
+packet has a VLAN header and its VLAN ID is non-zero, then \fBsnoop\fR will
+show that the packet is VLAN tagged. For example, an \fBNFS\fR packet will have
+only \fBNFS\fR information displayed. Except for VLAN information under the
+condition just described, the underlying \fBRPC\fR, \fBUDP\fR, \fBIP\fR, and
+Ethernet frame information is suppressed, but can be displayed if either of the
+verbose options are chosen.
+.sp
+.LP
+In the absence of a name service, such as LDAP or NIS, \fBsnoop\fR displays
+host names as numeric IP addresses.
+.sp
+.LP
+\fBsnoop\fR requires an interactive interface.
+.SH OPTIONS
+.ne 2
+.na
+\fB\fB-C\fR\fR
+.ad
+.sp .6
+.RS 4n
+List the code generated from the filter expression for either the kernel packet
+filter, or \fBsnoop\fR's own filter.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-D\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display number of packets dropped during capture on the summary line.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-N\fR\fR
+.ad
+.sp .6
+.RS 4n
+Create an \fBIP\fR address-to-name file from a capture file. This must be set
+together with the \fB-i\fR option that names a capture file. The
+address-to-name file has the same name as the capture file with \fB\&.names\fR
+appended. This file records the \fBIP\fR address to hostname mapping at the
+capture site and increases the portability of the capture file. Generate a
+\fB\&.names\fR file if the capture file is to be analyzed elsewhere. Packets
+are not displayed when this flag is used.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-I\fR \fIinterface\fR\fR
+.ad
+.sp .6
+.RS 4n
+Capture IP packets from the network using the IP interface specified by
+\fIinterface\fR, for example, \fBlo0\fR. The \fBifconfig\fR(8) command can be
+used to list available IP interfaces. The \fB-I\fR and \fB-d\fR options are
+mutually exclusive.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-P\fR\fR
+.ad
+.sp .6
+.RS 4n
+Capture packets in non-promiscuous mode. Only broadcast, multicast, or packets
+addressed to the host machine will be seen.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-S\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display size of the entire link layer frame in bytes on the summary line.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-V\fR\fR
+.ad
+.sp .6
+.RS 4n
+Verbose summary mode. This is halfway between summary mode and verbose mode in
+degree of verbosity. Instead of displaying just the summary line for the
+highest level protocol in a packet, it displays a summary line for each
+protocol layer in the packet. For instance, for an \fBNFS\fR packet it will
+display a line each for the \fBETHER\fR, \fBIP\fR, \fBUDP\fR, \fBRPC\fR and
+\fBNFS\fR layers. Verbose summary mode output may be easily piped through
+\fBgrep\fR to extract packets of interest. For example, to view only \fBRPC\fR
+summary lines, enter the following: \fBexample#\fR \fBsnoop -i rpc.cap -V |
+grep RPC\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-a\fR\fR
+.ad
+.sp .6
+.RS 4n
+Listen to packets on \fB/dev/audio\fR (warning: can be noisy).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-c\fR \fImaxcount\fR\fR
+.ad
+.sp .6
+.RS 4n
+Quit after capturing \fImaxcount\fR packets. Otherwise keep capturing until
+there is no disk space left or until interrupted with Control-C.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-d\fR \fIdatalink\fR\fR
+.ad
+.sp .6
+.RS 4n
+Capture link-layer packets from the network using the DLPI datalink specified
+by \fIdatalink\fR, for example, \fBbge0\fR or \fBnet0\fR. The \fBdladm\fR(8)
+\fBshow-link\fR subcommand can be used to list available datalinks. The
+\fB-d\fR and \fB-I\fR options are mutually exclusive.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR\fR
+.ad
+.sp .6
+.RS 4n
+Ignore any errors when enabling promiscuous mode. Normally any error when
+enabling promiscuous mode on a datalink or IP interface is fatal and causes
+\fBsnoop\fR to exit.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-i\fR \fIfilename\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display packets previously captured in \fIfilename\fR. Without this option,
+\fBsnoop\fR reads packets from the network interface. If a
+\fIfilename\fR\fB\&.names\fR file is present, it is automatically loaded into
+the \fBsnoop\fR \fBIP\fR address-to-name mapping table (See \fB-N\fR flag).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR \fIfilename\fR\fR
+.ad
+.sp .6
+.RS 4n
+Use \fIfilename\fR as an \fBIP\fR address-to-name mapping table. This file must
+have the same format as the \fB/etc/hosts\fR file (IP address followed by the
+hostname).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-o\fR \fIfilename\fR\fR
+.ad
+.sp .6
+.RS 4n
+Save captured packets in \fIfilename\fR as they are captured. (This
+\fIfilename\fR is referred to as the "capture file".) The format of the capture
+file is RFC 1761-compliant. During packet capture, a count of the number of
+packets saved in the file is displayed. If you wish just to count packets
+without saving to a file, name the file \fB/dev/null\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR \fIfirst\fR [ , \fBlast\fR ]\fR
+.ad
+.sp .6
+.RS 4n
+Select one or more packets to be displayed from a capture file. The \fIfirst\fR
+packet in the file is packet number 1.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-q\fR\fR
+.ad
+.sp .6
+.RS 4n
+When capturing network packets into a file, do not display the packet count.
+This can improve packet capturing performance.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-r\fR\fR
+.ad
+.sp .6
+.RS 4n
+Do not resolve the \fBIP\fR address to the symbolic name. This prevents
+\fBsnoop\fR from generating network traffic while capturing and displaying
+packets. However, if the \fB-n\fR option is used, and an address is found in
+the mapping file, its corresponding name will be used.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR \fIsnaplen\fR\fR
+.ad
+.sp .6
+.RS 4n
+Truncate each packet after \fIsnaplen\fR bytes. Usually the whole packet is
+captured. This option is useful if only certain packet header information is
+required. The packet truncation is done within the kernel giving better
+utilization of the streams packet buffer. This means less chance of dropped
+packets due to buffer overflow during periods of high traffic. It also saves
+disk space when capturing large traces to a capture file. To capture only
+\fBIP\fR headers (no options) use a \fIsnaplen\fR of 34. For \fBUDP\fR use 42,
+and for \fBTCP\fR use 54. You can capture \fBRPC\fR headers with a
+\fIsnaplen\fR of 80 bytes. \fBNFS\fR headers can be captured in 120 bytes.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-t\fR [ \fBr\fR | \fBa\fR | \fBd\fR ]\fR
+.ad
+.sp .6
+.RS 4n
+Time-stamp presentation. Time-stamps are accurate to within 4 microseconds. The
+default is for times to be presented in \fBd\fR (delta) format (the time since
+receiving the previous packet). Option \fBa\fR (absolute) gives wall-clock
+time. Option \fBr\fR (relative) gives time relative to the first packet
+displayed. This can be used with the \fB-p\fR option to display time relative
+to any selected packet.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.sp .6
+.RS 4n
+Verbose mode. Print packet headers in lots of detail. This display consumes
+many lines per packet and should be used only on selected packets.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\fR\fB-x\fR\fIoffset\fR [ , \fIlength\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Display packet data in hexadecimal and \fBASCII\fR format. The \fIoffset\fR and
+\fIlength\fR values select a portion of the packet to be displayed. To display
+the whole packet, use an \fIoffset\fR of 0. If a \fIlength\fR value is not
+provided, the rest of the packet is displayed.
+.RE
+
+.sp
+.ne 2
+.na
+.BI -z zonename
+.ad
+.sp .6
+.RS 4n
+Open an earlier datalink specified via
+.B -d
+or
+.B -I
+in the specified zone \fIzonename\fR.
+This option is only meaningful in the global zone and
+allows the global zone to inspect datalinks of non-global zones.
+.RE
+
+.SH OPERANDS
+.ne 2
+.na
+\fB\fIexpression\fR\fR
+.ad
+.sp .6
+.RS 4n
+Select packets either from the network or from a capture file. Only packets for
+which the expression is true will be selected. If no expression is provided it
+is assumed to be true.
+.sp
+Given a filter expression, \fBsnoop\fR generates code for either the kernel
+packet filter or for its own internal filter. If capturing packets with the
+network interface, code for the kernel packet filter is generated. This filter
+is implemented as a streams module, upstream of the buffer module. The buffer
+module accumulates packets until it becomes full and passes the packets on to
+\fBsnoop\fR. The kernel packet filter is very efficient, since it rejects
+unwanted packets in the kernel before they reach the packet buffer or
+\fBsnoop\fR. The kernel packet filter has some limitations in its
+implementation; it is possible to construct filter expressions that it cannot
+handle. In this event, \fBsnoop\fR tries to split the filter and do as much
+filtering in the kernel as possible. The remaining filtering is done by the
+packet filter for \fBsnoop\fR. The \fB-C\fR flag can be used to view generated
+code for either the packet filter for the kernel or the packet filter for
+\fBsnoop\fR. If packets are read from a capture file using the \fB-i\fR option,
+only the packet filter for \fBsnoop\fR is used.
+.sp
+A filter \fIexpression\fR consists of a series of one or more boolean
+primitives that may be combined with boolean operators (\fBAND\fR, \fBOR\fR,
+and \fBNOT\fR). Normal precedence rules for boolean operators apply. Order of
+evaluation of these operators may be controlled with parentheses. Since
+parentheses and other filter expression characters are known to the shell, it
+is often necessary to enclose the filter expression in quotes. Refer to for
+information about setting up more efficient filters.
+.sp
+The primitives are:
+.sp
+.ne 2
+.na
+\fB\fBhost\fR \fIhostname\fR\fR
+.ad
+.sp .6
+.RS 4n
+True if the source or destination address is that of \fBhostname\fR. The
+\fIhostname\fR argument may be a literal address. The keyword \fBhost\fR may be
+omitted if the name does not conflict with the name of another expression
+primitive. For example, \fBpinky\fR selects packets transmitted to or received
+from the host \fBpinky\fR, whereas \fBpinky and dinky\fR selects packets
+exchanged between hosts \fBpinky AND dinky\fR.
+.sp
+The type of address used depends on the primitive which precedes the \fBhost\fR
+primitive. The possible qualifiers are \fBinet\fR, \fBinet6\fR, \fBether\fR, or
+none. These three primitives are discussed below. Having none of the primitives
+present is equivalent to "inet host hostname or inet6 host hostname". In other
+words, snoop tries to filter on all IP addresses associated with hostname.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIinet\fR or \fIinet6\fR\fR
+.ad
+.sp .6
+.RS 4n
+A qualifier that modifies the \fBhost\fR primitive that follows. If it is
+\fIinet\fR, then \fBsnoop\fR tries to filter on all IPv4 addresses returned
+from a name lookup. If it is \fIinet6\fR, \fBsnoop\fR tries to filter on all
+IPv6 addresses returned from a name lookup.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIipaddr\fR, \fIatalkaddr\fR, or \fIetheraddr\fR\fR
+.ad
+.sp .6
+.RS 4n
+Literal addresses, \fBIP\fR dotted, AppleTalk dotted, and Ethernet colon are
+recognized. For example,
+.RS +4
+.TP
+.ie t \(bu
+.el o
+"\fB172.16.40.13\fR" matches all packets with that \fBIP\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+"\fB2::9255:a00:20ff:fe73:6e35\fR" matches all packets with that IPv6 address
+as source or destination;
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+"\fB65281.13\fR" matches all packets with that AppleTalk address;
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+"\fB8:0:20:f:b1:51\fR" matches all packets with the Ethernet address as source
+or destination.
+.RE
+An Ethernet address beginning with a letter is interpreted as a hostname. To
+avoid this, prepend a zero when specifying the address. For example, if the
+Ethernet address is \fBaa:0:45:23:52:44\fR, then specify it by add a leading
+zero to make it \fB0aa:0:45:23:52:44\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfrom\fR or \fBsrc\fR\fR
+.ad
+.sp .6
+.RS 4n
+A qualifier that modifies the following \fBhost\fR, \fBnet\fR, \fIipaddr\fR,
+\fIatalkaddr\fR, \fIetheraddr\fR, \fBport\fR or \fBrpc\fR primitive to match
+just the source address, port, or \fBRPC\fR reply.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBto\fR or \fBdst\fR\fR
+.ad
+.sp .6
+.RS 4n
+A qualifier that modifies the following \fBhost\fR, \fBnet\fR, \fIipaddr\fR,
+\fIatalkaddr\fR, \fIetheraddr\fR, \fBport\fR or \fBrpc\fR primitive to match
+just the destination address, port, or \fBRPC\fR call.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBether\fR\fR
+.ad
+.sp .6
+.RS 4n
+A qualifier that modifies the following \fBhost\fR primitive to resolve a name
+to an Ethernet address. Normally, \fBIP\fR address matching is performed. This
+option is not supported on media such as IPoIB (IP over InfiniBand).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBethertype\fR \fInumber\fR\fR
+.ad
+.sp .6
+.RS 4n
+True if the Ethernet type field has value \fInumber\fR. If \fInumber\fR is not
+0x8100 (VLAN) and the packet is VLAN tagged, then the expression will match the
+encapsulated Ethernet type.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBip\fR, \fBip6\fR, \fBarp\fR, \fBrarp\fR, \fBpppoed\fR, \fBpppoes\fR\fR
+.ad
+.sp .6
+.RS 4n
+True if the packet is of the appropriate ethertype.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBvlan\fR\fR
+.ad
+.sp .6
+.RS 4n
+True if the packet has \fBethertype\fR VLAN and the VLAN ID is not zero.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBvlan-id\fR \fIid\fR\fR
+.ad
+.sp .6
+.RS 4n
+True for packets of ethertype VLAN with the id \fIid\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpppoe\fR\fR
+.ad
+.sp .6
+.RS 4n
+True if the ethertype of the packet is either \fBpppoed\fR or \fBpppoes\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBbroadcast\fR\fR
+.ad
+.sp .6
+.RS 4n
+True if the packet is a broadcast packet. Equivalent to \fBether[2:4] =
+0xffffffff\fR for Ethernet. This option is not supported on media such as IPoIB
+(IP over InfiniBand).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmulticast\fR\fR
+.ad
+.sp .6
+.RS 4n
+True if the packet is a multicast packet. Equivalent to "\fBether[0] & 1 =
+1\fR" on Ethernet. This option is not supported on media such as IPoIB (IP over
+InfiniBand).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBbootp\fR, \fBdhcp\fR\fR
+.ad
+.sp .6
+.RS 4n
+True if the packet is an unfragmented IPv4 UDP packet with either a source port
+of \fBBOOTPS (67)\fR and a destination port of \fBBOOTPC (68)\fR, or a source
+port of \fBBOOTPC (68)\fR and a destination of \fBBOOTPS (67)\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdhcp6\fR\fR
+.ad
+.sp .6
+.RS 4n
+True if the packet is an unfragmented IPv6 UDP packet with either a source port
+of \fBDHCPV6-SERVER\fR (547) and a destination port of \fBDHCPV6-CLIENT\fR
+(546), or a source port of \fBDHCPV6-CLIENT\fR (546) and a destination of
+\fBDHCPV6-SERVER\fR (547).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBapple\fR\fR
+.ad
+.sp .6
+.RS 4n
+True if the packet is an Apple Ethertalk packet. Equivalent to "\fBethertype
+0x809b or ethertype 0x80f3\fR".
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdecnet\fR\fR
+.ad
+.sp .6
+.RS 4n
+True if the packet is a \fBDECNET\fR packet.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBgreater\fR \fIlength\fR\fR
+.ad
+.sp .6
+.RS 4n
+True if the packet is longer than \fIlength\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBless\fR \fIlength\fR\fR
+.ad
+.sp .6
+.RS 4n
+True if the packet is shorter than \fIlength\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBudp\fR, \fBtcp\fR, \fBicmp\fR, \fBicmp6\fR, \fBah\fR, \fBesp\fR\fR
+.ad
+.sp .6
+.RS 4n
+True if the \fBIP\fR or IPv6 protocol is of the appropriate type.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnet\fR \fInet\fR\fR
+.ad
+.sp .6
+.RS 4n
+True if either the \fBIP\fR source or destination address has a network number
+of \fInet\fR. The \fBfrom\fR or \fBto\fR qualifier may be used to select
+packets for which the network number occurs only in the source or destination
+address.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBport\fR \fIport\fR\fR
+.ad
+.sp .6
+.RS 4n
+True if either the source or destination port is \fIport\fR. The \fIport\fR may
+be either a port number or name from \fB/etc/services\fR. The \fBtcp\fR or
+\fBudp\fR primitives may be used to select \fBTCP\fR or \fBUDP\fR ports only.
+The \fBfrom\fR or \fBto\fR qualifier may be used to select packets for which
+the \fIport\fR occurs only as the source or destination.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrpc\fR \fIprog\fR [ , \fIvers\fR [ , \fBproc\fR ] ]\fR
+.ad
+.sp .6
+.RS 4n
+True if the packet is an \fBRPC\fR call or reply packet for the protocol
+identified by \fIprog\fR. The \fIprog\fR may be either the name of an \fBRPC\fR
+protocol from \fB/etc/rpc\fR or a program number. The \fIvers\fR and \fBproc\fR
+may be used to further qualify the program \fIversion\fR and \fIprocedure\fR
+number, for example, \fBrpc nfs,2,0\fR selects all calls and replies for the
+\fBNFS\fR null procedure. The \fBto\fR or \fBfrom\fR qualifier may be used to
+select either call or reply packets only.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBzone\fR \fIzoneid\fR\fR
+.ad
+.sp .6
+.RS 4n
+True if \fIzoneid\fR matches either the source or destination \fIzoneid\fR of a
+packet received on an \fBipnet\fR device.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBldap\fR\fR
+.ad
+.sp .6
+.RS 4n
+True if the packet is an \fBLDAP\fR packet on port 389.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBgateway\fR \fIhost\fR\fR
+.ad
+.sp .6
+.RS 4n
+True if the packet used \fIhost\fR as a gateway, that is, the Ethernet source
+or destination address was for \fIhost\fR but not the \fBIP\fR address.
+Equivalent to "\fBether host\fR \fIhost\fR and not host \fIhost\fR".
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnofrag\fR\fR
+.ad
+.sp .6
+.RS 4n
+True if the packet is unfragmented or is the first in a series of \fBIP\fR
+fragments. Equivalent to \fBip[6:2] & 0x1fff = 0\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIexpr\fR \fIrelop\fR \fIexpr\fR\fR
+.ad
+.sp .6
+.RS 4n
+True if the relation holds, where \fIrelop\fR is one of \fB>\fR, \fB<\fR,
+\fB>=\fR, \fB<=\fR, \fB=\fR, \fB!=\fR, and \fBexpr\fR is an arithmetic
+expression composed of numbers, packet field selectors, the \fBlength\fR
+primitive, and arithmetic operators \fB+\fR, \fB\(mi\fR, \fB*\fR, \fB&\fR,
+\fB|\fR, \fB^\fR, and \fB%\fR. The arithmetic operators within \fBexpr\fR are
+evaluated before the relational operator and normal precedence rules apply
+between the arithmetic operators, such as multiplication before addition.
+Parentheses may be used to control the order of evaluation. To use the value of
+a field in the packet use the following syntax:
+.sp
+.in +2
+.nf
+\fIbase\fR[\fBexpr\fR [\fB:\fR \fBsize\fR ] ]
+.fi
+.in -2
+.sp
+
+where \fBexpr\fR evaluates the value of an offset into the packet from a
+\fIbase\fR offset which may be \fBether\fR, \fBip\fR, \fBip6\fR, \fBudp\fR,
+\fBtcp\fR, or \fBicmp\fR. The \fBsize\fR value specifies the size of the field.
+If not given, 1 is assumed. Other legal values are 2 and 4. For example,
+.sp
+.in +2
+.nf
+ether[0] & 1 = 1
+.fi
+.in -2
+
+is equivalent to \fBmulticast\fR
+.sp
+.in +2
+.nf
+ether[2:4] = 0xffffffff
+.fi
+.in -2
+
+is equivalent to \fBbroadcast\fR.
+.sp
+.in +2
+.nf
+ip[ip[0] & 0xf * 4 : 2] = 2049
+.fi
+.in -2
+
+is equivalent to \fBudp[0:2] = 2049\fR
+.sp
+.in +2
+.nf
+ip[0] & 0xf > 5
+.fi
+.in -2
+
+selects \fBIP\fR packets with options.
+.sp
+.in +2
+.nf
+ip[6:2] & 0x1fff = 0
+.fi
+.in -2
+
+eliminates \fBIP\fR fragments.
+.sp
+.in +2
+.nf
+udp and ip[6:2]&0x1fff = 0 and udp[6:2] != 0
+.fi
+.in -2
+
+finds all packets with \fBUDP\fR checksums.
+.sp
+The \fBlength\fR primitive may be used to obtain the length of the packet. For
+instance "\fBlength > 60\fR" is equivalent to "\fBgreater 60\fR", and
+"\fBether[length \(mi 1]\fR" obtains the value of the last byte in a packet.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBand\fR\fR
+.ad
+.sp .6
+.RS 4n
+Perform a logical \fBAND\fR operation between two boolean values. The \fBAND\fR
+operation is implied by the juxtaposition of two boolean expressions, for
+example "\fBdinky pinky\fR" is the same as "\fBdinky AND pinky\fR".
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBor\fR or \fB,\fR\fR
+.ad
+.sp .6
+.RS 4n
+Perform a logical \fBOR\fR operation between two boolean values. A comma may be
+used instead, for example, "\fBdinky,pinky\fR" is the same as "\fBdinky OR
+pinky\fR".
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnot\fR or \fB!\fR\fR
+.ad
+.sp .6
+.RS 4n
+Perform a logical \fBNOT\fR operation on the following boolean value. This
+operator is evaluated before \fBAND\fR or OR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBslp\fR\fR
+.ad
+.sp .6
+.RS 4n
+True if the packet is an \fBSLP\fR packet.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsctp\fR\fR
+.ad
+.sp .6
+.RS 4n
+True if the packet is an \fBSCTP\fR packet.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBospf\fR\fR
+.ad
+.sp .6
+.RS 4n
+True if the packet is an \fBOSPF\fR packet.
+.RE
+
+.RE
+
+.SH EXAMPLES
+\fBExample 1 \fRUsing the \fBsnoop\fR Command
+.sp
+.LP
+Capture all packets and display them as they are received:
+
+.sp
+.in +2
+.nf
+example# \fBsnoop\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Capture packets with host \fBfunky\fR as either the source or destination and
+display them as they are received:
+
+.sp
+.in +2
+.nf
+example# \fBsnoop funky\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Capture packets between \fBfunky\fR and \fBpinky\fR and save them to a file.
+Then inspect the packets using times (in seconds) relative to the first
+captured packet:
+
+.sp
+.in +2
+.nf
+example# \fBsnoop -o cap funky pinky\fR
+example# \fBsnoop -i cap -t r | more\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+To look at selected packets in another capture file:
+
+.sp
+.in +2
+.nf
+example# \fBsnoop -i pkts -p 99,108\fR
+ 99 0.0027 boutique -> sunroof NFS C GETATTR FH=8E6
+100 0.0046 sunroof -> boutique NFS R GETATTR OK
+101 0.0080 boutique -> sunroof NFS C RENAME FH=8E6C MTra00192 to .nfs08
+102 0.0102 marmot -> viper NFS C LOOKUP FH=561E screen.r.13.i386
+103 0.0072 viper -> marmot NFS R LOOKUP No such file or directory
+104 0.0085 bugbomb -> sunroof RLOGIN C PORT=1023 h
+105 0.0005 kandinsky -> sparky RSTAT C Get Statistics
+106 0.0004 beeblebrox -> sunroof NFS C GETATTR FH=0307
+107 0.0021 sparky -> kandinsky RSTAT R
+108 0.0073 office -> jeremiah NFS C READ FH=2584 at 40960 for 8192
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+To look at packet 101 in more detail:
+
+.sp
+.in +2
+.nf
+example# \fBsnoop -i pkts -v -p101\fR
+ETHER: ----- Ether Header -----
+ETHER:
+ETHER: Packet 101 arrived at 16:09:53.59
+ETHER: Packet size = 210 bytes
+ETHER: Destination = 8:0:20:1:3d:94, Sun
+ETHER: Source = 8:0:69:1:5f:e, Silicon Graphics
+ETHER: Ethertype = 0800 (IP)
+ETHER:
+IP: ----- IP Header -----
+IP:
+IP: Version = 4, header length = 20 bytes
+IP: Type of service = 00
+IP: ..0. .... = routine
+IP: ...0 .... = normal delay
+IP: .... 0... = normal throughput
+IP: .... .0.. = normal reliability
+IP: Total length = 196 bytes
+IP: Identification 19846
+IP: Flags = 0X
+IP: .0.. .... = may fragment
+IP: ..0. .... = more fragments
+IP: Fragment offset = 0 bytes
+IP: Time to live = 255 seconds/hops
+IP: Protocol = 17 (UDP)
+IP: Header checksum = 18DC
+IP: Source address = 172.16.40.222, boutique
+IP: Destination address = 172.16.40.200, sunroof
+IP:
+UDP: ----- UDP Header -----
+UDP:
+UDP: Source port = 1023
+UDP: Destination port = 2049 (Sun RPC)
+UDP: Length = 176
+UDP: Checksum = 0
+UDP:
+RPC: ----- SUN RPC Header -----
+RPC:
+RPC: Transaction id = 665905
+RPC: Type = 0 (Call)
+RPC: RPC version = 2
+RPC: Program = 100003 (NFS), version = 2, procedure = 1
+RPC: Credentials: Flavor = 1 (Unix), len = 32 bytes
+RPC: Time = 06-Mar-90 07:26:58
+RPC: Hostname = boutique
+RPC: Uid = 0, Gid = 1
+RPC: Groups = 1
+RPC: Verifier : Flavor = 0 (None), len = 0 bytes
+RPC:
+NFS: ----- SUN NFS -----
+NFS:
+NFS: Proc = 11 (Rename)
+NFS: File handle = 000016430000000100080000305A1C47
+NFS: 597A0000000800002046314AFC450000
+NFS: File name = MTra00192
+NFS: File handle = 000016430000000100080000305A1C47
+NFS: 597A0000000800002046314AFC450000
+NFS: File name = .nfs08
+NFS:
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+To view just the \fBNFS\fR packets between \fBsunroof\fR and \fBboutique\fR:
+
+.sp
+.in +2
+.nf
+example# \fBsnoop -i pkts rpc nfs and sunroof and boutique\fR
+1 0.0000 boutique -> sunroof NFS C GETATTR FH=8E6C
+2 0.0046 sunroof -> boutique NFS R GETATTR OK
+3 0.0080 boutique -> sunroof NFS C RENAME FH=8E6C MTra00192 to .nfs08
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+To save these packets to a new capture file:
+
+.sp
+.in +2
+.nf
+example# \fBsnoop -i pkts -o pkts.nfs rpc nfs sunroof boutique\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+To view encapsulated packets, there will be an indicator of encapsulation:
+
+.sp
+.in +2
+.nf
+example# \fBsnoop ip-in-ip\fR
+sunroof -> boutique ICMP Echo request (1 encap)
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+If -V is used on an encapsulated packet:
+
+.sp
+.in +2
+.nf
+example# \fBsnoop -V ip-in-ip\fR
+sunroof -> boutique ETHER Type=0800 (IP), size = 118 bytes
+sunroof -> boutique IP D=172.16.40.222 S=172.16.40.200 LEN=104, ID=27497
+sunroof -> boutique IP D=10.1.1.2 S=10.1.1.1 LEN=84, ID=27497
+sunroof -> boutique ICMP Echo request
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRSetting Up A More Efficient Filter
+.sp
+.LP
+To set up a more efficient filter, the following filters should be used toward
+the end of the expression, so that the first part of the expression can be set
+up in the kernel: \fBgreater\fR, \fBless\fR, \fBport\fR, \fBrpc\fR,
+\fBnofrag\fR, and \fBrelop\fR. The presence of \fBOR\fR makes it difficult to
+split the filtering when using these primitives that cannot be set in the
+kernel. Instead, use parentheses to enforce the primitives that should be
+\fBOR\fR'd.
+
+.sp
+.LP
+To capture packets between \fBfunky\fR and \fBpinky\fR of type \fBtcp\fR or
+\fBudp\fR on \fBport\fR 80:
+
+.sp
+.in +2
+.nf
+example# \fBsnoop funky and pinky and port 80 and tcp or udp\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Since the primitive \fBport\fR cannot be handled by the kernel filter, and
+there is also an \fBOR\fR in the expression, a more efficient way to filter is
+to move the \fBOR\fR to the end of the expression and to use parentheses to
+enforce the \fBOR\fR between \fBtcp\fR and \fBudp\fR:
+
+.sp
+.in +2
+.nf
+example# \fBsnoop funky and pinky and (tcp or udp) and port 80\fR
+.fi
+.in -2
+.sp
+
+.SH EXIT STATUS
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 5n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB1\fR\fR
+.ad
+.RS 5n
+An error occurred.
+.RE
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/dev/audio\fR\fR
+.ad
+.RS 17n
+Symbolic link to the system's primary audio device.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/null\fR\fR
+.ad
+.RS 17n
+The null file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/hosts\fR\fR
+.ad
+.RS 17n
+Host name database.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/rpc\fR\fR
+.ad
+.RS 17n
+RPC program number data base.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/services\fR\fR
+.ad
+.RS 17n
+Internet services and aliases.
+.RE
+
+.SH SEE ALSO
+.BR ipnet (4D),
+.BR audio (4I),
+.BR bufmod (4M),
+.BR pfmod (4M),
+.BR dlpi (4P),
+.BR hosts (5),
+.BR rpc (5),
+.BR services (5),
+.BR attributes (7),
+.BR dladm (8),
+.BR ifconfig (8),
+.BR netstat (8)
+.sp
+.LP
+Callaghan, B. and Gilligan, R. \fIRFC 1761, Snoop Version 2 Packet Capture File
+Format\fR. Network Working Group. February 1995.
+.SH WARNINGS
+The processing overhead is much higher for real-time packet interpretation.
+Consequently, the packet drop count may be higher. For more reliable capture,
+output raw packets to a file using the \fB-o\fR option and analyze the packets
+offline.
+.sp
+.LP
+Unfiltered packet capture imposes a heavy processing load on the host computer,
+particularly if the captured packets are interpreted real-time. This processing
+load further increases if verbose options are used. Since heavy use of
+\fBsnoop\fR may deny computing resources to other processes, it should not be
+used on production servers. Heavy use of \fBsnoop\fR should be restricted to a
+dedicated computer.
+.sp
+.LP
+\fBsnoop\fR does not reassemble \fBIP\fR fragments. Interpretation of higher
+level protocol halts at the end of the first \fBIP\fR fragment.
+.sp
+.LP
+\fBsnoop\fR may generate extra packets as a side-effect of its use. For example
+it may use a network name service to convert \fBIP\fR addresses
+to host names for display. Capturing into a file for later display can be used
+to postpone the address-to-name mapping until after the capture session is
+complete. Capturing into an NFS-mounted file may also generate extra packets.
+.sp
+.LP
+Setting the \fBsnaplen\fR (\fB-s\fR option) to small values may remove header
+information that is needed to interpret higher level protocols. The exact
+cutoff value depends on the network and protocols being used. For \fBNFS\fR
+Version 2 traffic using \fBUDP\fR on 10 Mb/s Ethernet, do not set \fBsnaplen\fR
+less than 150 bytes. For \fBNFS\fR Version 3 traffic using \fBTCP\fR on 100
+Mb/s Ethernet, \fBsnaplen\fR should be 250 bytes or more.
+.sp
+.LP
+\fBsnoop\fR requires information from an \fBRPC\fR request to fully interpret
+an \fBRPC\fR reply. If an \fBRPC\fR reply in a capture file or packet range
+does not have a request preceding it, then only the \fBRPC\fR reply header will
+be displayed.
diff --git a/usr/src/man/man8/soconfig.8 b/usr/src/man/man8/soconfig.8
new file mode 100644
index 0000000000..9a4625fed2
--- /dev/null
+++ b/usr/src/man/man8/soconfig.8
@@ -0,0 +1,205 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 2015 Nexenta Systems, Inc. All rights reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SOCONFIG 8 "May 21, 2015"
+.SH NAME
+soconfig \- configure transport providers for use by sockets
+.SH SYNOPSIS
+.LP
+.nf
+\fB/sbin/soconfig\fR \fB-d\fR \fIdir\fR
+.fi
+
+.LP
+.nf
+\fB/sbin/soconfig\fR \fB-f\fR \fIfile\fR
+.fi
+
+.LP
+.nf
+\fB/sbin/soconfig\fR \fIfamily\fR \fItype\fR \fIprotocol\fR [\fImodule\fR | \fIpath\fR]
+.fi
+
+.LP
+.nf
+\fB/sbin/soconfig\fR \fB-l\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBsoconfig\fR utility configures the transport provider driver for use
+with sockets. It specifies how the family, type, and protocol parameters in the
+\fBsocket\fR(3SOCKET) call are mapped to the name of a transport provider such
+as \fB/dev/tcp\fR. This utility can be used to add an additional mapping or
+remove a previous mapping.
+.sp
+.LP
+The \fBinit\fR(8) utility uses \fBsoconfig\fR with the \fBsock2path.d\fR(5)
+directory during the booting sequence.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-d\fR \fIdir\fR\fR
+.ad
+.RS 11n
+Set up the \fBsoconfig\fR configuration for each driver
+according to the information stored in the
+files in \fIdir\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR \fIfile\fR\fR
+.ad
+.RS 11n
+Set up the \fBsoconfig\fR configuration for each driver according to the
+information stored in \fIfile\fR. A \fBsoconfig\fR file consists of lines of at
+least the first three fields listed below, separated by spaces:
+.sp
+\fIfamily type protocol [module | path]\fR
+.sp
+These fields are described in the \fBOPERANDS\fR section below.
+.sp
+An example of \fIfile\fR can be found in the \fBEXAMPLES\fR section below.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR
+.ad
+.RS 11n
+Print the in-kernel socket configuration table.
+.RE
+
+.SH OPERANDS
+.sp
+.LP
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fB\fIfamily\fR\fR
+.ad
+.RS 17n
+The protocol family as listed in the \fB/usr/include/sys/socket.h\fR file,
+expressed as an integer.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fItype\fR\fR
+.ad
+.RS 17n
+The socket type as listed in the \fB/usr/include/sys/socket.h\fR file,
+expressed as an integer.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIprotocol\fR\fR
+.ad
+.RS 17n
+The protocol number as specified in the family-specific \fBinclude\fR file,
+expressed as an integer. For example, for \fBAF_INET\fR this number is
+specified in \fB/usr/include/netinet/in.h\fR. An unspecified protocol number is
+denoted with the value zero.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fImodule\fR | \fIpath\fR\fR
+.ad
+.RS 17n
+The module name or path name of a device that corresponds to the transport
+provider, such as \fBtcp\fR or \fB/dev/tcp\fR. Modules must reside in
+\fBkernel/socketmod\fR. A device name must begin with \fB/dev\fR. If this
+parameter is specified, the configuration will be added for the specified
+family, type, and protocol. If this parameter is not specified, the
+configuration will be removed.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRUsing \fBsoconfig\fR
+.sp
+.LP
+The following example sets up a module for family \fBAF_INET\fR and type
+\fBSOCK_STREAM\fR:
+
+.sp
+.in +2
+.nf
+example# \fBsoconfig 2 2 0 tcp\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The following example sets up \fB/dev/tcp\fR for family \fBAF_INET\fR and type
+\fBSOCK_STREAM\fR:
+
+.sp
+.in +2
+.nf
+example# \fBsoconfig 2 2 0 /dev/tcp\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The following is a sample file used with the \fB-f\fR option. Comment lines
+begin with a hash mark (\fB#\fR):
+
+.sp
+.in +2
+.nf
+# Family Type Protocol Module | Path
+ 2 2 0 tcp
+ 2 2 6 tcp
+
+ 2 1 0 udp
+ 2 1 17 udp
+
+ 1 2 0 /dev/ticotsord
+ 1 1 0 /dev/ticlts
+
+ 2 4 0 icmp
+.fi
+.in -2
+.sp
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/sock2path.d\fR\fR
+.ad
+.RS 18n
+Directory containing files with mappings from
+sockets to transport providers.
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR sock2path.d (5),
+.BR attributes (7),
+.BR init (8)
+.sp
+.LP
+\fINetwork Interface Guide\fR
diff --git a/usr/src/man/man8/sppptun.8 b/usr/src/man/man8/sppptun.8
new file mode 100644
index 0000000000..3677fed030
--- /dev/null
+++ b/usr/src/man/man8/sppptun.8
@@ -0,0 +1,239 @@
+'\" te
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SPPPTUN 8 "May 27, 2009"
+.SH NAME
+sppptun \- PPP tunneling driver utility
+.SH SYNOPSIS
+.LP
+.nf
+\fBsppptun plumb\fR
+.fi
+
+.LP
+.nf
+\fBsppptun plumb\fR [\fB-s\fR \fIsap\fR] \fIprotocol device\fR
+.fi
+
+.LP
+.nf
+\fBsppptun unplumb\fR \fIinterface\fR
+.fi
+
+.LP
+.nf
+\fBsppptun query\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBsppptun\fR utility is used to configure and query the Solaris PPP
+tunneling device driver, \fB/dev/sppptun\fR. Currently, only PPP over Ethernet
+(PPPoE) is supported, so the \fBplumb\fR and \fBunplumb\fR arguments are used
+to specify Ethernet interfaces that are to be used for PPPoE, and the
+\fBquery\fR option lists the plumbed interfaces.
+.sp
+.LP
+The use of \fBsppptun\fR to add interfaces is similar to the use of
+\fBifconfig\fR(8) to add interfaces to IP. The plumbing is done once for each
+interface, preferably at system start-up time, and is not normally manipulated
+on a running system. If multiple instances of PPP are run over a single
+interface, they share the plumbing to that interface. Plumbing for each session
+is not required (and not possible for PPPoE).
+.sp
+.LP
+The proper way to plumb interfaces for PPPoE is to list the interfaces, one per
+line, in the \fB/etc/ppp/pppoe.if\fR file. If alternate Ethertype (SAP) values
+are necessary, then include the PPPoE Session and Discovery Stage values as
+hexadecimal on the same line. The line format is:
+.sp
+.in +2
+.nf
+\fIinterface\fR [\fIsession\fR [\fIdiscovery\fR]]
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The defaults are the Ethertypes specified in RFC 2516, and most users should
+not need to set these values. See the examples for one possible use.
+.SH USAGE
+.sp
+.ne 2
+.na
+\fB\fBsppptun plumb\fR\fR
+.ad
+.sp .6
+.RS 4n
+When specified with no additional arguments, the plumb argument lists the
+protocols that are supported by the utility. These are the strings that are
+used as the \fIprotocol\fR argument below.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsppptun plumb [\fB-s\fR \fIsap\fR] \fIprotocol\fR \fIdevice\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+This plumbs a new interface into the driver. The \fIprotocol\fR parameter is
+\fBpppoe\fR for the PPP-carrying "Session Stage" connection or \fBpppoed\fR for
+the PPPoE "Discovery Stage" connection. Both connections must be present for
+each Ethernet interface that is to be used for PPPoE. The \fIdevice\fR
+parameter is the path name of the Ethernet interface to use (use
+\fBifconfig\fR(8) to list available devices). If the path begins with
+\fB/dev/\fR, then this portion may be omitted.
+.sp
+The \fB-s\fR \fIsap\fR option can be specified to use an alternate Ethertype
+(SAP) for the selected protocol. The \fIsap\fR value must be given in
+hexadecimal. Some access servers use Ethertypes for PPPoE different from those
+in RFC 2516. The defaults are 8864 for \fBpppoe\fR and 8863 for \fBpppoed\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsppptun unplumb \fIinterface\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+This removes an existing interface from the driver and terminates any PPP
+sessions that were using the interface. The \fIinterface\fR parameter is the
+name of the interface as reported when the interface was plumbed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsppptun query\fR\fR
+.ad
+.sp .6
+.RS 4n
+Displays the canonical names of all interfaces plumbed into the
+\fB/dev/sppptun\fR device driver.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRSetting up to Use PPPoE on \fBhme0\fR
+.sp
+.LP
+Plumb the \fBhme0\fR interface.
+
+.sp
+.in +2
+.nf
+# \fBsppptun plumb pppoed hme0\fR
+hme0:pppoed
+# \fBsppptun plumb pppoe hme0\fR
+hme0:pppoe
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Remove the \fBhme0\fR interface.
+
+.sp
+.in +2
+.nf
+# \fBsppptun unplumb hme0:pppoed\fR
+# \fBsppptun unplumb hme0:pppoe\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRScript to Remove All Plumbed Interfaces
+.sp
+.in +2
+.nf
+#!/bin/sh
+for intf in `sppptun query`
+do
+ sppptun unplumb $intf
+done
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRInteroperating with 3COM HomeConnect Dual Link ADSL
+.sp
+.in +2
+.nf
+# \fBdladm show-link\fR
+LINK CLASS MTU STATE OVER
+nge0 phys 1500 up --
+# \fBecho nge0 3c13 3c12 > /etc/ppp/pppoe.if\fR
+.fi
+.in -2
+.sp
+
+.SH EXIT STATUS
+.sp
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 5n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB1\fR\fR
+.ad
+.RS 5n
+One or more errors occurred.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/ppp/pppoe.if\fR\fR
+.ad
+.RS 21n
+list of Ethernet interfaces to be plumbed at boot time
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/sbin/sppptun\fR\fR
+.ad
+.RS 21n
+executable command
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/sppptun\fR\fR
+.ad
+.RS 21n
+Solaris PPP tunneling device driver
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR sppptun (4M),
+.BR pppd (8),
+.BR pppoec (8),
+.BR pppoed (8)
+.sp
+.LP
+\fIRFC 2516, Method for Transmitting PPP Over Ethernet (PPPoE)\fR, Mamakos et
+al, February 1999
diff --git a/usr/src/man/man8/spray.8 b/usr/src/man/man8/spray.8
new file mode 100644
index 0000000000..b388238309
--- /dev/null
+++ b/usr/src/man/man8/spray.8
@@ -0,0 +1,82 @@
+'\" te
+.\" Copyright (c) 1998, Sun Microsystems,
+.\" Inc. All Rights Reserved
+.\" Copyright 1989 AT&T Copyright (c)
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SPRAY 8 "Nov 6, 2000"
+.SH NAME
+spray \- spray packets
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/spray\fR [\fB-c\fR \fIcount\fR] [\fB-d\fR \fIdelay\fR] [\fB-l\fR \fIlength\fR]
+ [\fB-t\fR \fInettype\fR] \fIhost\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBspray\fR sends a one-way stream of packets to \fIhost\fR using RPC, and
+reports how many were received, as well as the transfer rate. The \fIhost\fR
+argument can be either a name or an Internet address.
+.sp
+.LP
+\fBspray\fR is not useful as a networking benchmark, as it uses unreliable
+connectionless transports, UDP for example. \fBspray\fR can report a large
+number of packets dropped when the drops were caused by \fBspray\fR sending
+packets faster than they can be buffered locally, that is, before the packets
+get to the network medium.
+.SH OPTIONS
+.sp
+.ne 2
+.na
+\fB\fB-c\fR \fIcount\fR\fR
+.ad
+.RS 14n
+Specify how many packets to send. The default value of \fIcount\fR is the
+number of packets required to make the total stream size 100000 bytes.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-d\fR \fIdelay\fR\fR
+.ad
+.RS 14n
+Specify how many microseconds to pause between sending each packet. The default
+is \fB0\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR \fIlength\fR\fR
+.ad
+.RS 14n
+The \fIlength\fR parameter is the numbers of bytes in the Ethernet packet that
+holds the RPC call message. Since the data is encoded using XDR, and XDR only
+deals with 32 bit quantities, not all values of \fIlength\fR are possible, and
+\fBspray\fR rounds up to the nearest possible value. When \fIlength\fR is
+greater than 1514, then the RPC call can no longer be encapsulated in one
+Ethernet packet, so the \fIlength\fR field no longer has a simple
+correspondence to Ethernet packet size. The default value of \fIlength\fR is
+\fB86 bytes\fR, the size of the RPC and UDP headers.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-t\fR \fInettype\fR\fR
+.ad
+.RS 14n
+Specify class of transports. Defaults to \fBnetpath\fR. See \fBrpc\fR(3NSL)
+for a description of supported classes.
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR rpc (3NSL),
+.BR attributes (7)
diff --git a/usr/src/man/man8/statd.8 b/usr/src/man/man8/statd.8
new file mode 100644
index 0000000000..751e7ef618
--- /dev/null
+++ b/usr/src/man/man8/statd.8
@@ -0,0 +1,118 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 2004 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH STATD 8 "Nov 18, 2004"
+.SH NAME
+statd \- network status monitor
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/nfs/statd\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBstatd\fR is an intermediate version of the status monitor. It interacts with
+\fBlockd\fR(8) to provide the crash and recovery functions for the locking
+services on NFS. \fBstatd\fR keeps track of the clients with processes which
+hold locks on a server. When the server reboots after a crash, \fBstatd\fR
+sends a message to the \fBstatd\fR on each client indicating that the server
+has rebooted. The client \fBstatd\fR processes then inform the \fBlockd\fR on
+the client that the server has rebooted. The client \fBlockd\fR then attempts
+to reclaim the lock(s) from the server.
+.sp
+.LP
+\fBstatd\fR on the client host also informs the \fBstatd\fR on the server(s)
+holding locks for the client when the client has rebooted. In this case, the
+\fBstatd\fR on the server informs its \fBlockd\fR that all locks held by the
+rebooting client should be released, allowing other processes to lock those
+files.
+.sp
+.LP
+\fBlockd\fR is started by \fBautomountd\fR(8), \fBmount_nfs\fR(8), and
+\fBshare\fR(8) if NFS automounts are needed.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/var/statmon/sm\fR\fR
+.ad
+.sp .6
+.RS 4n
+lists hosts and network addresses to be contacted after a reboot
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/statmon/sm.bak\fR\fR
+.ad
+.sp .6
+.RS 4n
+lists hosts and network addresses that could not be contacted after last reboot
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/statmon/state\fR\fR
+.ad
+.sp .6
+.RS 4n
+includes a number which changes during a reboot
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/include/rpcsvc/sm_inter.x\fR\fR
+.ad
+.sp .6
+.RS 4n
+contains the rpcgen source code for the interface services provided by the
+statd daemon.
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR svcs (1),
+.BR attributes (7),
+.BR smf (7),
+.BR automountd (8),
+.BR lockd (8),
+.BR mount_nfs (8),
+.BR share (8),
+.BR svcadm (8)
+.sp
+.LP
+\fI\fR
+.SH NOTES
+.sp
+.LP
+The crash of a server is only detected upon its recovery.
+.sp
+.LP
+The \fBstatd\fR service is managed by the service management facility,
+\fBsmf\fR(7), under the service identifier:
+.sp
+.in +2
+.nf
+svc:/network/nfs/status
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Administrative actions on this service, such as enabling, disabling, or
+requesting restart, can be performed using \fBsvcadm\fR(8). The service's
+status can be queried using the \fBsvcs\fR(1) command.
+.sp
+.LP
+If it is disabled, it will be enabled by \fBmount_nfs\fR(8),
+\fBshare_nfs\fR(8), and \fBautomountd\fR(8) unless its
+\fBapplication/auto_enable\fR property is set to \fBfalse\fR.
diff --git a/usr/src/man/man8/stmfadm.8 b/usr/src/man/man8/stmfadm.8
new file mode 100644
index 0000000000..5483a00c8d
--- /dev/null
+++ b/usr/src/man/man8/stmfadm.8
@@ -0,0 +1,668 @@
+.\"
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.\"
+.\"
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 2017 Nexenta Systems, Inc.
+.\"
+.Dd March 1, 2016
+.Dt STMFADM 8
+.Os
+.Sh NAME
+.Nm stmfadm
+.Nd SCSI target mode framework command line interface
+.Sh SYNOPSIS
+.Nm
+.Cm add-hg-member
+.Fl g Ar host-group
+.Ar initiator Ns ...
+.Nm
+.Cm add-tg-member
+.Fl g Ar target-group
+.Ar target Ns ...
+.Nm
+.Cm add-view
+.Op Fl h Ar host-group
+.Op Fl n Ar lu-number
+.Op Fl t Ar target-group
+.Ar lu-name
+.Nm
+.Cm create-hg
+.Ar group-name
+.Nm
+.Cm create-lu
+.Oo Fl p Ar property Ns = Ns Ar value Oc Ns ...
+.Op Fl s Ar size
+.Ar lu-file
+.Nm
+.Cm create-tg
+.Ar group-name
+.Nm
+.Cm delete-hg
+.Ar group-name
+.Nm
+.Cm delete-lu
+.Op Fl k
+.Ar lu-name
+.Nm
+.Cm delete-tg
+.Ar group-name
+.Nm
+.Cm import-lu
+.Ar lu-file
+.Nm
+.Cm list-hg
+.Op Fl v
+.Oo Ar host-group Oc Ns ...
+.Nm
+.Cm list-lu
+.Op Fl v
+.Oo Ar lu-name Oc Ns ...
+.Nm
+.Cm list-state
+.Nm
+.Cm list-target
+.Op Fl v
+.Oo Ar target Oc Ns ...
+.Nm
+.Cm list-tg
+.Op Fl v
+.Oo Ar target-group Oc Ns ...
+.Nm
+.Cm list-view
+.Fl l Ar lu-name
+.Oo Ar view Oc Ns ...
+.Nm
+.Cm modify-lu
+.Op Fl f
+.Oo Fl p Ar property Ns = Ns Ar value Oc Ns ...
+.Op Fl s Ar size
+.Ar lu-arg
+.Nm
+.Cm offline-lu
+.Ar lu-name
+.Nm
+.Cm offline-target
+.Ar target
+.Nm
+.Cm online-lu
+.Ar lu-name
+.Nm
+.Cm online-target
+.Ar target
+.Nm
+.Cm remove-hg-member
+.Fl g Ar host-group
+.Ar initiator Ns ...
+.Nm
+.Cm remove-tg-member
+.Fl g Ar target-group
+.Ar target Ns ...
+.Nm
+.Cm remove-view
+.Op Fl a
+.Fl l Ar lu-name
+.Ar view Ns ...
+.Sh DESCRIPTION
+The
+.Nm
+command configures logical units within the SCSI Target Mode Framework
+.Pq STMF
+framework.
+The framework and this man page use the following terminology:
+.Bl -tag -width Ds
+.It Sy initiator
+A device responsible for issuing SCSI I/O commands to a SCSI target and logical
+unit.
+.It Sy target
+A device responsible for receiving SCSI I/O commands for a logical unit.
+.It Sy logical unit
+A device within a target responsible for executing SCSI I/O commands.
+.It Sy logical unit number
+The identifier of a logical unit within a target.
+.It Sy host group
+An host group is a set of one or more initiators that are combined for the
+purposes of being applied to a
+.Sy view
+.Pq see below .
+An initiator cannot be a member of more than one host group.
+.It Sy target group
+A target group is a set of one or more SCSI target ports that are treated the
+same when creating a
+.Sy view
+.Pq see below .
+The set of logical units that a particular SCSI initiator can see is determined
+by the combined set of views.
+.Pp
+Each logical unit has a set of view entries, and each view entry specifies a
+target group, host group, and a LUN.
+An initiator from that host group, when connecting through that target group, is
+able to identify and connect to that logical unit using the specified LUN.
+You can use views to restrict the set of logical units that a specific initiator
+can see, and assign the set of LUNs that will be used.
+.It Sy view
+A view defines the association of a host group, a target group, and a logical
+unit number with a specified logical unit.
+Any view entry added to a logical unit must not be in conflict with existing
+view entries for that logical unit.
+A view entry is considered to be in conflict when an attempt is made to
+duplicate the association of any given host, target and logical unit number.
+.El
+.Ss Logical Unit Properties
+The following logical unit properties can be set only when creating LU using
+.Cm create-lu
+subcommand:
+.Bl -tag -width Ds
+.It Sy blk Ns = Ns Ar num
+Specifies the block size for the device.
+The default is 512.
+.It Sy guid Ns = Ns Ar string
+32 hexadecimal ASCII characters representing a valid NAA Registered Extended
+Identifier.
+The default is set by the STMF to a generated value.
+.It Sy meta Ns = Ns Ar path
+Metadata file name.
+When specified, will be used to hold the SCSI metadata for the logical unit.
+There is no default.
+.It Sy oui Ns = Ns Ar string
+Organizational Unique Identifier.
+Six hexadecimal ASCII characters representing the IEEE OUI company ID
+assignment.
+This will be used to generate the device identifier
+.Pq GUID .
+The default is
+.Sy 00144F .
+.It Sy pid Ns = Ns Ar string
+16 bytes ASCII string defining Product ID per SCSI SPC-3.
+This value will be reflected in the Standard INQUIRY data returned for the
+device.
+The default is
+.Sy COMSTAR .
+.It Sy serial Ns = Ns Ar string
+Serial Number.
+Specifies the SCSI Vital Product Data Serial Number
+.Pq page 80h .
+It is a character value up to 252 bytes in length.
+There is no default value.
+.It Sy vid Ns = Ns Ar string
+8 bytes ASCII string defining Vendor ID per SCSI SPC-3.
+This value will be reflected in the Standard INQUIRY data returned for the
+device.
+The default is
+.Sy SUN .
+.El
+.Pp
+The following logical unit properties can be set when creating LU using
+.Cm create-lu
+subcommand or modified using
+.Cm modify-lu
+subcommand:
+.Bl -tag -width Ds
+.It Sy alias Ns = Ns Ar string
+Up to 255 characters, representing a user-defined name for the device.
+The default is the name of the backing store.
+.It Sy mgmt-url Ns = Ns Ar string
+Up to 1024 characters representing a Management Network Address URL.
+More than one URL can be passed as a single parameter by using space-delimited
+URLs enclosed inside a single pair of quotation marks
+.Pq Sy \(dq .
+.It Sy wcd Ns = Ns Sy true Ns | Ns Sy false
+Write-back cache disable.
+Determines write-back cache disable behavior.
+The default is the write-back cache setting of the backing store device
+specified by the
+.Ar lu-file
+argument.
+.It Sy wp Ns = Ns Sy true Ns | Ns Sy false
+Write-protect bit.
+Determines whether the device reports as write-protected.
+The default is
+.Sy false .
+.El
+.Ss Subcommands
+The
+.Nm
+command supports the subcommands listed below.
+.Bl -tag -width Ds
+.It Xo
+.Nm
+.Cm add-hg-member
+.Fl g Ar host-group
+.Ar initiator Ns ...
+.Xc
+Add a host group member to a host group.
+.Pp
+An initiator cannot be a member of more than one host group.
+.Bl -tag -width Ds
+.It Fl g Ns \&, Ns Fl -group-name Ar host-group
+Specifies group name.
+.Ar host-group
+must be an existing group created using the
+.Cm create-hg
+subcommand.
+.El
+.It Xo
+.Nm
+.Cm add-tg-member
+.Fl g Ar target-group
+.Ar target Ns ...
+.Xc
+Add a target group member to a target group.
+.Pp
+A target cannot be a member of more than one target group.
+.Bl -tag -width Ds
+.It Fl g Ns \&, Ns Fl -group-name Ar target-group
+Specifies group name.
+.Ar target-group
+must be an existing group created using the
+.Cm create-tg
+subcommand.
+.El
+.It Xo
+.Nm
+.Cm add-view
+.Op Fl h Ar host-group
+.Op Fl n Ar lu-number
+.Op Fl t Ar target-group
+.Ar lu-name
+.Xc
+Add a logical unit view entry to a logical unit
+.Ar lu-name ,
+where
+.Ar lu-name
+is the STMF name for the logical unit as displayed by the
+.Cm list-lu
+subcommand.
+The
+.Cm add-view
+subcommand provides the user with a mechanism to implement access control for a
+logical unit and also provides a means of assigning a logical unit number to a
+logical unit for a given set of initiators and targets.
+A logical unit will not be available to any initiators until at least one view
+is applied.
+Each view entry gets assigned an entry name, which can be used to reference the
+entry in the
+.Cm list-view
+and
+.Cm remove-view
+subcommands.
+.Bl -tag -width Ds
+.It Fl h Ns \&, Ns Fl -host-group Ar host-group
+.Ar host-group
+is the name of an host group previously created using
+.Cm create-hg
+subcommand.
+If this option is not specified, the logical unit will be available to all
+initiators that log in to the STMF framework.
+.It Fl n Ns \&, Ns Fl -lun Ar lu-number
+.Ar lu-number
+is an integer in the range 0-16383 to be assigned to the logical unit for this
+view entry.
+If this option is not specified, a logical unit number will be assigned by the
+STMF framework.
+.It Fl t Ns \&, Ns Fl -target-group Ar target-group
+.Ar target-group
+is the name of a target group previously created using
+.Cm create-tg
+subcommand.
+If this option is not specified, the logical unit will be available through all
+targets.
+.El
+.It Xo
+.Nm
+.Cm create-hg
+.Ar group-name
+.Xc
+Create a host group with the name
+.Ar group-name .
+.Ar group-name
+is a string of Unicode characters with a maximum length of 255.
+The group name must be unique within the STMF system.
+.It Xo
+.Nm
+.Cm create-lu
+.Oo Fl p Ar property Ns = Ns Ar value Oc Ns ...
+.Op Fl s Ar size
+.Ar lu-file
+.Xc
+Create a logical unit that can be registered with STMF.
+.Ar lu-file
+is the file to be used as the backing store for the logical unit.
+If the
+.Fl s
+option is not specified, the size of the specified
+.Ar lu-file
+will be used as the size of the logical unit.
+.Pp
+Logical units registered with the STMF require space for the metadata to be
+stored.
+When a
+.Sy zvol
+is specified as the backing store device, the default will be to use a special
+property of the
+.Sy zvol
+to contain the metadata.
+For all other devices, the default behavior will be to use the first 64k of the
+device.
+An alternative approach would be to use the
+.Sy meta
+property in a
+.Cm create-lu
+subcommand to specify an alternate file to contain the metadata.
+It is advisable to use a file that can provide sufficient storage of the logical
+unit metadata, preferably 64k.
+.Bl -tag -width Ds
+.It Fl p Ns \&, Ns Fl -lu-prop Ar property Ns = Ns Ar value
+Set specified logical unit property.
+Check
+.Sx Logical Unit Properties
+for the list of available properties.
+.It Fl s Ns \&, Ns Fl -size Ar size
+.Ar size
+is an integer followed by one of the following letters, to indicate a unit of
+size:
+.Sy k , m , g , t , p , e ,
+specifying kilobyte, megabyte, gigabyte, terabyte, petabyte and exabyte
+respectively.
+.El
+.It Xo
+.Nm
+.Cm create-tg
+.Ar group-name
+.Xc
+Create a target group with the name
+.Ar group-name .
+.Ar group-name
+is a string of Unicode characters with a maximum length of 255.
+The group name must be unique within the STMF system.
+.It Xo
+.Nm
+.Cm delete-hg
+.Ar group-name
+.Xc
+Delete the host group identified by
+.Ar group-name .
+.It Xo
+.Nm
+.Cm delete-lu
+.Op Fl k
+.Ar lu-name
+.Xc
+Delete an existing logical unit that was created using
+.Cm create-lu
+subcommand.
+This effectively unloads the logical unit from the STMF framework.
+Any existing data on the logical unit remains intact.
+.Bl -tag -width Ds
+.It Fl k Ns \&, Ns Fl -keep-views
+Keep view entries for this logical unit.
+.El
+.It Xo
+.Nm
+.Cm delete-tg
+.Ar group-name
+.Xc
+Delete the target group identified by
+.Ar group-name .
+.It Xo
+.Nm
+.Cm import-lu
+.Ar lu-file
+.Xc
+Import and load a logical unit into the STMF that was previously created using
+.Cm create-lu
+subcommand and was then deleted from the STMF using
+.Cm delete-lu
+subcommand.
+On success, the logical unit is again made available to the STMF.
+.Ar lu-file
+is the filename used in the
+.Cm create-lu
+subcommand.
+If this logical unit is using a separate metadata file, the filename in the
+.Sy meta
+property value that was used in the
+.Cm create-lu
+subcommand must be used here.
+.It Xo
+.Nm
+.Cm list-hg
+.Op Fl v
+.Oo Ar host-group Oc Ns ...
+.Xc
+List information for the host group in the system referenced by
+.Ar host-group .
+If
+.Ar host-group
+is not specified, all host groups in the system will be listed.
+.Bl -tag -width Ds
+.It Fl v Ns \&, Ns Fl -verbose
+Display all host group members.
+.El
+.It Xo
+.Nm
+.Cm list-lu
+.Op Fl v
+.Oo Ar lu-name Oc Ns ...
+.Xc
+List information for the logical unit in the system referenced by
+.Ar lu-name .
+If
+.Ar lu-name
+is not specified, all logical units in the system will be listed.
+.Bl -tag -width Ds
+.It Fl v Ns \&, Ns Fl -verbose
+Display verbose information about the logical unit.
+.El
+.It Xo
+.Nm
+.Cm list-state
+.Xc
+List the operational and configuration state of the STMF.
+.It Xo
+.Nm
+.Cm list-target
+.Op Fl v
+.Oo Ar target Oc Ns ...
+.Xc
+List information for the target port in the system referenced by
+.Ar target .
+If target name is not specified, all target ports in the system will be listed.
+.Bl -tag -width Ds
+.It Fl v Ns \&, Ns Fl -verbose
+Display verbose information about the target along with SCSI session information
+for logged-in initiators.
+.El
+.It Xo
+.Nm
+.Cm list-tg
+.Op Fl v
+.Oo Ar target-group Oc Ns ...
+.Xc
+List information for the target group in the system referenced by
+.Ar target-group .
+If
+.Ar target-group
+is not specified, all target groups in the system will be listed.
+.Bl -tag -width Ds
+.It Fl v Ns \&, Ns Fl -verbose
+Display all group members.
+.El
+.It Xo
+.Nm
+.Cm list-view
+.Fl l Ar lu-name
+.Oo Ar view Oc Ns ...
+.Xc
+List the view entry for the logical unit referenced by
+.Ar lu-name .
+If
+.Ar view
+is not specified, all view entries for the specified logical unit will be
+listed.
+.Bl -tag -width Ds
+.It Fl l Ns \&, Ns Fl -lu-name Ar lu-name
+Specify logical unit.
+.El
+.It Xo
+.Nm
+.Cm modify-lu
+.Op Fl f
+.Oo Fl p Ar property Ns = Ns Ar value Oc Ns ...
+.Op Fl s Ar size
+.Ar lu-arg
+.Xc
+Modify attributes of a logical unit created using the
+.Cm create-lu
+subcommand.
+If
+.Fl f
+is not specified,
+.Ar lu-arg
+is interpreted as
+.Ar lu-name.
+.Bl -tag -width Ds
+.It Fl f Ns \&, Ns Fl -file
+If specified,
+.Ar lu-arg
+is interpreted as file name.
+This provides the ability to modify a logical unit that is not currently
+imported into the STMF.
+.It Fl p Ns \&, Ns Fl -lu-prop Ar property
+Modify specified logical unit property.
+See
+.Sx Logical Unit Properties
+for the list of available properties.
+.It Fl s Ns \&, Ns Fl -size Ar size
+.Ar size
+is an integer followed by one of the following letters, to indicate a unit of
+size:
+.Sy k , m , g , t , p , e ,
+specifying kilobyte, megabyte, gigabyte, terabyte, petabyte and exabyte
+respectively.
+.El
+.It Xo
+.Nm
+.Cm offline-lu
+.Ar lu-name
+.Xc
+Offline a logical unit currently registered with the STMF.
+.It Xo
+.Nm
+.Cm offline-target
+.Ar target-name
+.Xc
+Offline the specified target.
+.It Xo
+.Nm
+.Cm online-lu
+.Ar lu-name
+.Xc
+Online a logical unit currently registered with the STMF.
+.It Xo
+.Nm
+.Cm online-target
+.Ar target
+.Xc
+Online the specified target.
+.It Xo
+.Nm
+.Cm remove-hg-member
+.Fl g Ar host-group
+.Ar initiator
+.Xc
+Remove specified
+.Ar initiator
+from host group
+.Bl -tag -width Ds
+.It Fl g Ns \&, Ns Fl -group-name Ar host-group
+Specifies group name.
+.Ar host-group
+must be an existing group created using the
+.Cm create-hg
+subcommand.
+.El
+.It Xo
+.Nm
+.Cm remove-tg-member
+.Fl g Ar target-group
+.Ar target
+.Xc
+Remove specified
+.Ar target
+from target group.
+.Bl -tag -width Ds
+.It Fl g Ns \&, Ns Fl -group-name Ar taget-group
+Specifies group name.
+.Ar target-group
+must be an existing group created using the
+.Cm create-tg
+subcommand.
+.El
+.It Xo
+.Nm
+.Cm remove-view
+.Op Fl a
+.Fl l Ar lu-name
+.Ar view Ns ...
+.Xc
+Remove one or more view entries from a logical unit.
+.Bl -tag -width Ds
+.It Fl a Ns \&, Ns Fl -all
+Remove all view entries for this logical unit.
+.It Fl l Ns \&, Ns Fl -lu-name
+Specify logical unit.
+.El
+.El
+.Sh EXAMPLES
+.Bl -tag -width Ds
+.It Sy Example 1 No Creating a Host group with Two Initiator Ports
+The following commands use the
+.Cm create-hg
+and
+.Cm add-hg-member
+subcommands to create a host group and add two initiator ports to that host
+group.
+.Bd -literal
+# stmfadm create-hg HostA
+# stmfadm add-hg-member -g HostA wwn.210105b0000d92d0
+.Ed
+.It Sy Example 2 No Adding a View Entry to a Logical Unit
+The following command uses the
+.Cm add-view
+subcommand to allow access from
+.Sy HostA
+to a logical unit.
+.Bd -literal
+# stmfadm add-view -h HostA 6000AE40C5000000000046FC4FEA001C
+.Ed
+.It Sy Example 3 No Listing a View Entry
+The following command uses the
+.Cm list-view
+subcommand to list all view entries for the specified logical unit.
+.Bd -literal
+# stmfadm list-view -l 6000AE40C5000000000046FC4FEA001C
+View Entry: 0
+ Host group : HostA
+ Target group : All
+ LUN : 0
+.Ed
+.El
+.Sh INTERFACE STABILITY
+.Sy Committed
+.Sh SEE ALSO
+.Xr attributes 7 ,
+.Xr sbdadm 8
diff --git a/usr/src/man/man8/stmsboot.8 b/usr/src/man/man8/stmsboot.8
new file mode 100644
index 0000000000..ec0184040f
--- /dev/null
+++ b/usr/src/man/man8/stmsboot.8
@@ -0,0 +1,407 @@
+'\" te
+.\" Copyright 2008 Sun Microsystems, Inc. All Rights reserved. Use is subject to license terms.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH STMSBOOT 8 "Dec 15, 2008"
+.SH NAME
+stmsboot \- administration program for the Solaris I/O multipathing feature
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/stmsboot\fR [[\fB-d\fR | \fB-e\fR [\fB-D\fR (fp | mpt) ]]
+ | \fB-u\fR | \fB-L\fR | \fB-l\fR \fIcontroller_number\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The Solaris I/O multipathing feature is a multipathing solution for storage
+devices that is part of the Solaris operating environment. This feature was
+formerly known as Sun StorEdge Traffic Manager (STMS) or MPxIO.
+.sp
+.LP
+The \fBstmsboot\fR program is an administrative command to manage enumeration
+of multipath-capable devices with Solaris I/O multipathing. Solaris I/O
+multipathing-enabled devices are enumerated under \fBscsi_vhci\fR(4D),
+providing multipathing capabilities. Solaris I/O multipathing-disabled devices
+are enumerated under the physical controller.
+.sp
+.LP
+In the \fB/dev\fR and \fB/devices\fR trees, Solaris I/O multipathing-enabled
+devices receive new names that indicate that they are under Solaris I/O
+multipathing control. This means a device will have a different name from its
+original name (after enabling) when it is under Solaris I/O multipathing
+control. The \fBstmsboot\fR command automatically updates \fB/etc/vfstab\fR and
+dump configuration to reflect the device names changes when enabling or
+disabling Solaris I/O multipathing. One reboot is required for changes to take
+effect.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-e\fR [ \fB-D\fR \fBfp | mpt\fR ]\fR
+.ad
+.sp .6
+.RS 4n
+Enables Solaris I/O multipathing on all supported multipath-capable controller
+ports. Multipath-capable ports include fibre channel (\fBfp\fR(4D)) controller
+ports and SAS (\fBmpt\fR(4D)) controller ports. Following this enabling, you
+are prompted to reboot. During the reboot, \fBvfstab\fR and the dump
+configuration will be updated to reflect the device name changes. Specifying
+either \fB-D\fR \fBmpt\fR or \fB-D\fR \fBfp\fR limits the enabling operation to
+ports attached using the specified driver.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-d\fR [ \fB-D\fR \fBfp | mpt\fR ]\fR
+.ad
+.sp .6
+.RS 4n
+Disables Solaris I/O multipathing on all supported multipath-capable controller
+ports. Multipath-capable ports include fibre channel (\fBfp\fR(4D)) controller
+ports and SAS (\fBmpt\fR(4D)) controller ports. Following this disabling, you
+are prompted to reboot. During the reboot, \fBvfstab\fR and the dump
+configuration will be updated to reflect the device name changes. Specifying
+either \fB-D\fR \fBmpt\fR or \fB-D\fR \fBfp\fR limits the disabling operation
+to ports attached using the specified driver.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-u\fR\fR
+.ad
+.sp .6
+.RS 4n
+Updates \fBvfstab\fR and the dump configuration after you have manually
+modified the configuration to have Solaris I/O multipathing enabled or disabled
+on specific multipath-capable controller ports. This option prompts you to
+reboot. During the reboot, \fBvfstab\fR and the dump configuration will be
+updated to reflect the device name changes.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-L\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display the device name changes from non-Solaris I/O multipathing device names
+to Solaris I/O multipathing device names for multipath-enabled controller
+ports. If Solaris I/O multipathing is not enabled, then no mappings are
+displayed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR \fIcontroller_number\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display the device name changes from non-Solaris I/O multipathing device names
+to Solaris I/O multipathing device names for the specified controller. If
+Solaris I/O multipathing is not enabled, then no mappings are displayed.
+.RE
+
+.SH USAGE
+.sp
+.LP
+The primary function of \fBstmsboot\fR is to control the enabling and disabling
+of Solaris I/O multipathing on the host. The utility automatically updates
+\fBvfstab\fR(5) and \fBdumpadm\fR(8) configuration to reflect device name
+changes. The system administrator is responsible for modifying application
+configuration (for example, backup software, DBMS, and so forth) to reflect
+updated device names.
+.sp
+.LP
+The \fB-L\fR and \fB-l\fR options display the mapping between multipathed and
+non-multipathed device names. These options function only after changes to the
+Solaris I/O multipathing configuration have taken effect, that is, following
+the reboot after invoking \fBstmsboot\fR \fB-e\fR.
+.sp
+.LP
+ZFS datasets, including ZFS root datasets, are correctly handled by
+\fBstmsboot\fR.
+.SH EXAMPLES
+.LP
+\fBExample 1 \fREnabling Solaris I/O Multipathing
+.sp
+.LP
+To enable Solaris I/O multipathing for all multipath-capable controllers, run:
+
+.sp
+.in +2
+.nf
+# \fBstmsboot -e\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+To enable Solaris I/O multipathing on multipath-capable \fBmpt\fR(4D)
+controller ports, enter:
+
+.sp
+.in +2
+.nf
+# \fBstmsboot -D mpt -e\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+To enable Solaris I/O Multipathing on multipath-capable fibre channel
+controller ports, enter:
+
+.sp
+.in +2
+.nf
+# \fBstmsboot -D fp -e\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRDisabling Solaris I/O Multipathing
+.sp
+.LP
+To disable Solaris I/O multipathing on all multipath-capable controllers,
+enter:
+
+.sp
+.in +2
+.nf
+# \fBstmsboot -d\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+To disable Solaris I/O multipathing on multipath-capable \fBmpt\fR(4D)
+controller ports, enter:
+
+.sp
+.in +2
+.nf
+# \fBstmsboot -D mpt -d\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+To disable Solaris I/O multipathing on multipath-capable fibre channel
+controller ports, enter:
+
+.sp
+.in +2
+.nf
+# \fBstmsboot -D fp -d\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fREnabling Solaris I/O Multipathing on Selected Ports
+.sp
+.LP
+To enable Solaris I/O multipathing on specific fibre channel controller ports
+and disable the feature on others, manually edit the \fB/kernel/drv/fp.conf\fR
+file. (See \fBfp\fR(4D).) The following command will update \fBvfstab\fR(5) and
+\fBdumpadm\fR(8) configurations to reflect the changed device names:
+
+.sp
+.in +2
+.nf
+# \fBstmsboot -u\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+A similar procedure involving the \fB/kernel/drv/mpt.conf\fR file should be
+followed for devices attached by means of the \fBmpt\fR(4D) driver.
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Obsolete
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR emlxs (4D),
+.BR fcp (4D),
+.BR fp (4D),
+.BR mpt (4D),
+.BR qlc (4D),
+.BR scsi_vhci (4D),
+.BR dumpdates (5),
+.BR vfstab (5),
+.BR dumpadm (8),
+.BR fsck (8),
+.BR mpathadm (8),
+.BR ufsdump (8),
+.BR zfs (8),
+.BR zpool (8)
+.sp
+.LP
+\fISolaris SAN Configuration and Multipathing Guide\fR (see
+\fBhttp://docs.sun.com\fR)
+.sp
+.LP
+Consult a particular storage product's system administrator's guide and release
+notes for further information specific to that product.
+.SH NOTES
+.sp
+.LP
+Solaris I/O multipathing is not supported on all devices. After enabling
+Solaris I/O multipathing, only supported devices are placed under Solaris I/O
+multipathing control. Non-supported devices remain unchanged.
+.sp
+.LP
+For Solaris releases prior to the current release, the \fB-e\fR and \fB-d\fR
+options replace \fBmpxio-disable\fR property entries with a global
+\fBmpxio-disable\fR entry in \fBfp.conf\fR.
+.SS "Enabling Solaris I/O Multipathing on a Sun StorEdge Disk Array"
+.sp
+.LP
+The following applies to Sun StoreEdge T3, 3910, 3960, 6120, and 6320 storage
+subsystems.
+.sp
+.LP
+To place your Sun StorEdge disk subsystem under Solaris I/O multipathing
+control, in addition to enabling Solaris I/O multipathing, the \fBmp_support\fR
+of the subsystem must be set to \fBmpxio\fR mode. The preferred sequence is to
+change the subsystem's \fBmp_support\fR to \fBmpxio\fR mode, then run
+\fBstmsboot\fR \fB-e\fR. If Solaris I/O multipathing is already enabled but the
+subsystem's \fBmp_support\fR is not in \fBmpxio\fR mode, then change the
+\fBmp_support\fR to \fBmpxio\fR mode and run \fBstmsboot\fR \fB-u\fR.
+.sp
+.LP
+Refer to the \fISun StorEdge Administrator's Guide\fR for your subsystem for
+more details.
+.SS "Using \fBufsdump\fR"
+.sp
+.LP
+The \fBufsdump\fR(8) command records details of filesystem dumps in
+\fB/etc/dumpdates\fR (see \fBdumpdates\fR(5)). Among other items, the entries
+contain device names. An effect of the "active" \fBstmsboot\fR options
+(\fB-e\fR, \fB-d\fR, and \fB-u\fR) is to change the device name of a storage
+device.
+.sp
+.LP
+Because \fBstmsboot\fR does not modify \fBdumpdates\fR, entries will refer to
+obsolete device names, that is, device names that were in effect before Solaris
+I/O multipathing configuration changes were performed. In this situation
+\fBufsdump\fR will behave as if no previous dump of the filesystem had been
+performed. A level 0 dump will be performed.
+.SS "Procedure to Use \fBstmsboot\fR in Conjunction with Sun Cluster"
+.sp
+.LP
+If possible, invoke \fBstmsboot\fR \fB-e\fR before installing Sun Cluster
+software. After executing \fBstmsboot\fR, install Sun Cluster software
+normally.
+.sp
+.LP
+If Sun Cluster software is installed before executing \fBstmsboot\fR, follow
+this procedure:
+.sp
+.LP
+On each machine in the cluster where Solaris I/O multipathing is required,
+execute:
+.sp
+.in +2
+.nf
+# \fBstmsboot -e\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+\&...and allow the system to reboot.
+.sp
+.LP
+When the system comes up, enter the following two commands:
+.RS +4
+.TP
+1.
+# \fB/usr/cluster/bin/scdidadm -C\fR
+.RE
+.RS +4
+.TP
+2.
+# \fB/usr/cluster/bin/scdidadm -r\fR
+.sp
+The preceding commands update \fBdid\fR mappings with new device names while
+preserving \fBdid\fR instance numbers for disks that are connected to multiple
+cluster nodes. \fBdid\fR instance numbers of the local disks might not be
+preserved. For this reason, the \fBdid\fR disk names for local disks might
+change.
+.RE
+.RS +4
+.TP
+3.
+Update \fB/etc/vfstab\fR to reflect any new \fBdid\fR disk names for your
+local disks.
+.RE
+.RS +4
+.TP
+4.
+Reboot the system.
+.RE
+.sp
+.LP
+To disable the Solaris multipathing feature, use \fBstmsboot\fR \fB-d\fR
+(instead of \fBstmsboot\fR \fB-e\fR), then follow the procedure above.
+.sp
+.LP
+To view mappings between the old and new device names, run \fBstmsboot\fR
+\fB-L\fR. To view \fBdid\fR device name mappings, run
+\fB/usr/cluster/bin/scdidadm\fR \fB-L\fR.
+.sp
+.LP
+With active-passive storage arrays, it is possible that while your host is
+rebooting the array controller could failover the path that a particular target
+is using. In this scenario, \fBfsck\fR(8) will fail to open the physical path
+listed in \fB/etc/vfstab\fR. The \fBsvc:/system/filesystem/local:default\fR SMF
+service will transition to a maintenance state as a result. To rectify this,
+consult the documentation for your storage array to failback the path. The
+\fBmpathadm\fR(8) can assist with determining the active and passive path(s).
+.SH LIMITATIONS
+.sp
+.LP
+On x86 platforms, the current Solaris release does not support disabling
+Solaris I/O multipathing of boot devices attached by means of fibre channel.
+Solaris I/O multipathing is always enabled for supported fibre channel-attached
+boot devices. Disabling Solaris I/O multipathing in this situation must be
+performed on a per-port basis. See \fBfp\fR(4D).
+.sp
+.LP
+Executing \fBdevfsadm\fR \fB-C\fR removes obsolete device entries that
+\fBstmsboot\fR relies on. This will prevent correct operation of the \fB-d\fR
+option for boot devices (regardless of platform type) and the \fB-L\fR option.
diff --git a/usr/src/man/man8/strace.8 b/usr/src/man/man8/strace.8
new file mode 100644
index 0000000000..3a1133f375
--- /dev/null
+++ b/usr/src/man/man8/strace.8
@@ -0,0 +1,177 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 1997 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH STRACE 8 "Oct 4, 1994"
+.SH NAME
+strace \- print STREAMS trace messages
+.SH SYNOPSIS
+.LP
+.nf
+\fBstrace\fR [\fImid\fR \fIsid\fR \fIlevel\fR]...
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBstrace\fR without arguments writes all STREAMS event trace messages from all
+drivers and modules to its standard output. These messages are obtained from
+the STREAMS log driver (see \fBlog\fR(4D)). If arguments are provided, they
+must be in triplets of the form \fImid, sid, level\fR, where \fImid\fR is a
+STREAMS module \fBID\fR number, \fIsid\fR is a sub-ID number, and \fIlevel\fR
+is a tracing priority level. Each triplet indicates that tracing messages are
+to be received from the given module/driver, sub-ID (usually indicating minor
+device), and priority level equal to, or less than the given level. The token
+\fBall\fR may be used for any member to indicate no restriction for that
+attribute.
+.sp
+.LP
+The format of each trace message output is:
+.sp
+.LP
+<\fIseq\fR> <\fBtime\fR> <\fIticks\fR> <\fIlevel\fR> <\fIflags\fR> <\fImid\fR>
+<\fIsid\fR> <\fItext\fR>
+.sp
+.ne 2
+.na
+\fB<\fIseq\fR>\fR
+.ad
+.RS 11n
+trace sequence number
+.RE
+
+.sp
+.ne 2
+.na
+\fB<\fBtime\fR>\fR
+.ad
+.RS 11n
+time of message in \fIhh:mm:ss\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB<\fIticks\fR>\fR
+.ad
+.RS 11n
+time of message in machine ticks since boot
+.RE
+
+.sp
+.ne 2
+.na
+\fB<\fIlevel\fR>\fR
+.ad
+.RS 11n
+tracing priority level
+.RE
+
+.sp
+.ne 2
+.na
+\fB<\fIflags\fR>\fR
+.ad
+.RS 11n
+E : message is also in the error log F : indicates a fatal error N : mail was
+sent to the system administrator (hardcoded as root)
+.RE
+
+.sp
+.ne 2
+.na
+\fB<\fImid\fR>\fR
+.ad
+.RS 11n
+module \fBID\fR number of source
+.RE
+
+.sp
+.ne 2
+.na
+\fB<\fIsid\fR>\fR
+.ad
+.RS 11n
+sub-ID number of source
+.RE
+
+.sp
+.ne 2
+.na
+\fB<\fItext\fR>\fR
+.ad
+.RS 11n
+formatted text of the trace message
+.RE
+
+.sp
+.LP
+Once initiated, \fBstrace\fR will continue to execute until terminated by the
+user.
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRA sample output of the \fBstrace\fR command:
+.sp
+.LP
+The following example outputs all trace messages from the module or driver
+whose module \fBID\fR is \fB41\fR:
+
+.sp
+.in +2
+.nf
+\fBstrace 41 all all\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The following example outputs those trace messages from driver or module
+\fBID\fR \fB41\fR with sub-IDs \fB0\fR, \fB1\fR, or \fB2\fR:
+
+.sp
+.in +2
+.nf
+\fBstrace 41 0 1 41 1 1 41 2 0\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Messages from sub-IDs \fB0\fR and \fB1\fR must have a tracing level less
+than or equal to \fB1\fR. Those from sub-ID \fB2\fR must have a tracing level
+of \fB0\fR.
+
+.SH SEE ALSO
+.sp
+.LP
+.BR log (4D),
+.BR attributes (7)
+.sp
+.LP
+\fI\fR
+.SH NOTES
+.RS +4
+.TP
+.ie t \(bu
+.el o
+There is no restriction to the number of \fBstrace\fR processes opening the
+\fBSTREAMS\fR log driver at a time.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+The log-driver records the list of the triplets specified in the command
+invocation, and compares each potential trace message against this list to
+decide if it should be formatted and sent up to the \fBstrace\fR process.
+Hence, long lists of triplets will have a greater impact on overall STREAMS
+performance. Running \fBstrace\fR will have the most impact on the timing of
+the modules and drivers generating the trace messages that are sent to the
+\fBstrace\fR process. If trace messages are generated faster than the
+\fBstrace\fR process can handle them, some of the messages will be lost. This
+last case can be determined by examining the sequence numbers on the trace
+messages output.
+.RE
diff --git a/usr/src/man/man8/strclean.8 b/usr/src/man/man8/strclean.8
new file mode 100644
index 0000000000..1934f462df
--- /dev/null
+++ b/usr/src/man/man8/strclean.8
@@ -0,0 +1,77 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 1997 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH STRCLEAN 8 "Sep 14, 1992"
+.SH NAME
+strclean \- STREAMS error logger cleanup program
+.SH SYNOPSIS
+.LP
+.nf
+\fBstrclean\fR [\fB-a\fR \fIage\fR] [\fB-d\fR \fIlogdir\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBstrclean\fR is used to clean up the STREAMS error logger directory on a
+regular basis (for example, by using \fBcron\fR. By default, all files with
+names matching \fBerror.*\fR in \fB/var/adm/streams\fR that have not been
+modified in the last three days are removed.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-a\fR \fIage\fR\fR
+.ad
+.RS 13n
+The maximum age in days for a log file can be changed using the \fB-a\fR
+option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-d\fR \fIlogdir\fR\fR
+.ad
+.RS 13n
+A directory other than \fB/var/adm/streams\fR can be specified using the
+\fB-d\fR option.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRA sample of using the \fBstrclean\fR command.
+.sp
+.LP
+This example has the same result as running \fBstrclean\fR with no arguments:
+
+.sp
+.in +2
+.nf
+example% \fBstrclean \fR\fB-d\fR\fB /var/adm/streams \fR\fB-a\fR\fB 3\fR
+.fi
+.in -2
+.sp
+
+.SH FILES
+.sp
+.LP
+\fB/var/adm/streams/error.\fR*
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7),
+.BR cron (8),
+.BR strerr (8)
+.sp
+.LP
+\fI\fR
+.SH NOTES
+.sp
+.LP
+\fBstrclean\fR is typically run from \fBcron\fR on a daily or weekly basis.
diff --git a/usr/src/man/man8/strerr.8 b/usr/src/man/man8/strerr.8
new file mode 100644
index 0000000000..77f4961c9a
--- /dev/null
+++ b/usr/src/man/man8/strerr.8
@@ -0,0 +1,138 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 1997 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH STRERR 8 "Oct 4, 1994"
+.SH NAME
+strerr \- STREAMS error logger daemon
+.SH SYNOPSIS
+.LP
+.nf
+\fBstrerr\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBstrerr\fR receives error log messages from the STREAMS-based log driver (see
+\fBlog\fR(4D)) and appends them to a log file. The resultant error log files
+reside in the directory \fB/var/adm/streams\fR, and are named
+\fBerror.\fR\fImm\fR\fB-\fR\fBdd\fR, where \fImm\fR is the month and \fBdd\fR
+is the day of the messages contained in each log file.
+.sp
+.LP
+The format of an error log message is:
+.sp
+.LP
+<\fIseq\fR> <\fBtime\fR> <\fIticks\fR> <\fIflags\fR> <\fImid\fR> <\fIsid\fR>
+<\fItext\fR>
+.sp
+.ne 2
+.na
+\fB<\fIseq\fR>\fR
+.ad
+.RS 11n
+error sequence number
+.RE
+
+.sp
+.ne 2
+.na
+\fB<\fBtime\fR>\fR
+.ad
+.RS 11n
+time of message in hh:mm:ss
+.RE
+
+.sp
+.ne 2
+.na
+\fB<\fIticks\fR>\fR
+.ad
+.RS 11n
+time of message in machine ticks since boot priority level
+.RE
+
+.sp
+.ne 2
+.na
+\fB<\fIflags\fR>\fR
+.ad
+.RS 11n
+\fBT\fR : the message was also sent to a tracing process \fBF\fR : indicates a
+fatal error \fBN\fR : send mail to the system administrator (hardcoded as root)
+.RE
+
+.sp
+.ne 2
+.na
+\fB<\fImid\fR>\fR
+.ad
+.RS 11n
+module \fBID\fR number of source
+.RE
+
+.sp
+.ne 2
+.na
+\fB<\fIsid\fR>\fR
+.ad
+.RS 11n
+sub-ID number of source
+.RE
+
+.sp
+.ne 2
+.na
+\fB<\fItext\fR>\fR
+.ad
+.RS 11n
+formatted text of the error message
+.RE
+
+.sp
+.LP
+Messages that appear in the error log are intended to report exceptional
+conditions that require the attention of the system administrator. Those
+messages which indicate the total failure of a STREAMS-based driver or module
+should have the \fBF\fR flag set. Those messages requiring the immediate
+attention of the administrator will have the \fBN\fR flag set, which causes the
+error logger to send the message to the system administrator using \fBmail\fR.
+The priority level usually has no meaning in the error log but will have
+meaning if the message is also sent to a tracer process.
+.sp
+.LP
+Once initiated, \fBstrerr\fR continues to execute until terminated by the user.
+It is commonly executed asynchronously.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/var/adm/streams/error.\fR\fImm\fR\fB-\fR\fBdd\fR\fR
+.ad
+.sp .6
+.RS 4n
+error log file.
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR log (4D),
+.BR attributes (7)
+.sp
+.LP
+\fI\fR
+.SH NOTES
+.sp
+.LP
+There is no restriction to the number of \fBstrerr\fR processes opening the
+\fBSTREAMS\fR-based log driver at a time.
+.sp
+.LP
+If a module or driver is generating a large number of error messages, running
+the error logger will cause a degradation in STREAMS performance. If a large
+burst of messages are generated in a short time, the log driver may not be able
+to deliver some of the messages. This situation is indicated by gaps in the
+sequence numbering of the messages in the log files.
diff --git a/usr/src/man/man8/sttydefs.8 b/usr/src/man/man8/sttydefs.8
new file mode 100644
index 0000000000..cf5c36e7c8
--- /dev/null
+++ b/usr/src/man/man8/sttydefs.8
@@ -0,0 +1,193 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 1997 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH STTYDEFS 8 "Sep 14, 1992"
+.SH NAME
+sttydefs \- maintain line settings and hunt sequences for TTY ports
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/sttydefs\fR \fB-a\fR \fIttylabel\fR [\fB-b\fR] [\fB-f\fR \fIfinal-flags\fR]
+ [\fB-i\fR \fIinitial-flags\fR] [\fB-n\fR \fInextlabel\fR]
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/sttydefs\fR \fB-l\fR [\fIttylabel\fR]
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/sttydefs\fR \fB-r\fR \fIttylabel\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBsttydefs\fR is an administrative command that maintains the line settings
+and hunt sequences for the system's TTY ports by making entries in, and
+deleting entries from the \fB/etc/ttydefs\fR file.
+.sp
+.LP
+\fBsttydefs\fR with a \fB-a\fR or \fB-r\fR option may be invoked only by the
+super-user. \fBsttydefs\fR with \fB-l\fR may be invoked by any user on the
+system.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-a\fR \fIttylabel\fR\fR
+.ad
+.RS 20n
+Add a record to the \fBttydefs\fR file, using \fIttylabel\fR as its label. The
+following describes the effect of the \fB-b\fR, \fB-n\fR, \fB-i\fR, or \fB-f\fR
+options when used in conjunction with the \fB-a\fR option:
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-b\fR\fR
+.ad
+.RS 20n
+Enable autobaud. Autobaud allows the system to set the line speed of a given
+TTY port to the line speed of the device connected to the port without the
+user's intervention.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR \fIfinal-flags\fR\fR
+.ad
+.RS 20n
+Specify the value to be used in the \fIfinal-flags\fR field in
+\fB/etc/ttydefs\fR. \fIfinal-flags\fR must be in a format recognized by the
+\fBstty\fR command. \fIfinal-flags\fR are the \fBtermio\fR(4I) settings used by
+\fBttymon\fR after receiving a successful connection request and immediately
+before invoking the service on the port. If this option is not specified,
+\fBsttydefs\fR will set \fIfinal-flags\fR equal to the \fBtermio\fR(4I) flags
+\fB9600\fR and \fBsane\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-i\fR \fIinitial-flags\fR\fR
+.ad
+.RS 20n
+Specify the value to be used in the \fIinitial-flags\fR field in
+\fB/etc/ttydefs\fR. \fIinitial-flags\fR must be in a format recognized by the
+\fBstty\fR command. These flags are used by \fBttymon\fR when searching for the
+correct baud rate. They are set prior to writing the prompt. If this option is
+not specified, \fBsttydefs\fR will set \fIinitial-flags\fR equal to the
+\fBtermio\fR(4I) flag \fB9600\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR \fInextlabel\fR\fR
+.ad
+.RS 20n
+Specify the value to be used in the \fInextlabel\fR field in
+\fB/etc/ttydefs\fR. If this option is not specified, \fBsttydefs\fR will set
+\fInextlabel\fR equal to \fIttylabel\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR[\fIttylabel\fR]\fR
+.ad
+.RS 20n
+If a \fIttylabel\fR is specified, \fBsttydefs\fR displays the record from
+\fB/etc/ttydefs\fR whose TTY label matches the specified \fIttylabel\fR. If no
+\fIttylabel\fR is specified, \fBsttydefs\fR displays the entire contents of
+\fB/etc/ttydefs\fR. \fBsttydefs\fR verifies that each entry it displays is
+correct and that the entry's \fInextlabel\fR field references an existing
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-r\fR \fIttylabel\fR\fR
+.ad
+.RS 20n
+Remove any record in the \fBttydefs\fR file that has \fIttylabel\fR as its
+label.
+.RE
+
+.SH OUTPUT
+.sp
+.LP
+If successful, \fBsttydefs\fR will exit with a status of \fB0\fR.
+\fBsttydefs\fR \fB-l\fR will generate the requested information and send it to
+standard output.
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRA sample of \fBsttydefs\fR command.
+.sp
+.LP
+The following command lists all the entries in the \fBttydefs\fR file and
+prints an error message for each invalid entry that is detected.
+
+.sp
+.in +2
+.nf
+example# \fBsttydefs\fR \fB-l\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The following shows a command that requests information for a single label and
+its output:
+
+.sp
+.in +2
+.nf
+example# \fBsttydefs\fR \fB-l\fR 9600
+------------------------------------------------------------------
+9600:9600 hupcl erase ^h:9600 sane ixany tab3 hupcl erase ^h::4800
+------------------------------------------------------------------
+ttylabel: 9600
+initial flags: 9600 hupcl erase ^h
+final flags: 9600 sane ixany tab3 hupcl erase ^h
+autobaud: no
+nextlabel: 4800
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The following sequence of commands will add the labels \fB1200\fR, \fB2400\fR,
+\fB4800\fR, and \fB9600\fR and put them in a circular list:
+
+.sp
+.in +2
+.nf
+sttydefs \fB-a\fR 1200 \fB-n\fR 2400 \fB-i\fR 1200 \fB-f\fR "1200 sane"
+sttydefs \fB-a\fR 2400 \fB-n\fR 4800 \fB-i\fR 2400 \fB-f\fR "2400 sane"
+sttydefs \fB-a\fR 4800 \fB-n\fR 9600 \fB-i\fR 4800 \fB-f\fR "4800 sane"
+sttydefs \fB-a\fR 9600 \fB-n\fR 1200 \fB-i\fR 9600 \fB-f\fR "9600 sane"
+.fi
+.in -2
+.sp
+
+.SH FILES
+.sp
+.LP
+\fB/etc/ttydefs\fR
+.SH SEE ALSO
+.sp
+.LP
+.BR termio (4I),
+.BR attributes (7)
diff --git a/usr/src/man/man8/su.8 b/usr/src/man/man8/su.8
new file mode 100644
index 0000000000..b57700e7db
--- /dev/null
+++ b/usr/src/man/man8/su.8
@@ -0,0 +1,314 @@
+'\" te
+.\" Copyright 1989 AT&T
+.\" Copyright (C) 2004, Sun Microsystems, Inc.
+.\" All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SU 8 "Feb 26, 2004"
+.SH NAME
+su \- become superuser or another user
+.SH SYNOPSIS
+.LP
+.nf
+\fBsu\fR [\fB-\fR] [\fIusername\fR [arg...]]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBsu\fR command allows one to become another user without logging off or
+to assume a role. The default user \fIname\fR is \fBroot\fR (superuser).
+.sp
+.LP
+To use \fBsu\fR, the appropriate password must be supplied (unless the invoker
+is already \fBroot\fR). If the password is correct, \fBsu\fR creates a new
+shell process that has the real and effective user \fBID,\fR group \fBIDs,\fR
+and supplementary group list set to those of the specified \fIusername\fR.
+Additionally, the new shell's project ID is set to the default project ID of
+the specified user. See \fBgetdefaultproj\fR(3PROJECT),
+\fBsetproject\fR(3PROJECT). The new shell will be the shell specified in the
+shell field of \fIusername\fR's password file entry (see \fBpasswd\fR(5)). If
+no shell is specified, \fB/usr/bin/sh\fR is used (see \fBsh\fR(1)). If
+superuser privilege is requested and the shell for the superuser cannot be
+invoked using \fBexec\fR(2), \fB/sbin/sh\fR is used as a fallback. To return to
+normal user \fBID\fR privileges, type an \fBEOF\fR character (CTRL-D) to exit
+the new shell.
+.sp
+.LP
+Any additional arguments given on the command line are passed to the new shell.
+When using programs such as \fBsh\fR, an \fIarg\fR of the form \fB-c\fR\fI
+string\fR executes \fIstring\fR using the shell and an \fIarg\fR of \fB-r\fR
+gives the user a restricted shell.
+.sp
+.LP
+To create a login environment, the command \fB"su -"\fR does the following:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+In addition to what is already propagated, the \fBLC*\fR and \fBLANG\fR
+environment variables from the specified user's environment are also
+propagated.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Propagate \fBTZ\fR from the user's environment. If \fBTZ\fR is not found in the
+user's environment, \fBsu\fR uses the \fBTZ\fR value from the \fBTIMEZONE\fR
+parameter found in \fB/etc/default/login\fR.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Set \fBMAIL\fR to \fB/var/mail/\fInew_user\fR\fR.
+.RE
+.sp
+.LP
+If the first argument to \fBsu\fR is a dash (-), the environment will be
+changed to what would be expected if the user actually logged in as the
+specified user. Otherwise, the environment is passed along, with the exception
+of \fB$\fR\fBPATH\fR\fB, \fR which is controlled by \fBPATH\fR and
+\fBSU\fR\fBPATH\fR in \fB/etc/default/su\fR.
+.sp
+.LP
+All attempts to become another user using \fBsu\fR are logged in the log file
+\fB/var/adm/sulog\fR (see \fBsulog\fR(5)).
+.SH SECURITY
+.sp
+.LP
+\fBsu\fR uses \fBpam\fR(3PAM) with the service name \fBsu\fR for
+authentication, account management, and credential establishment.
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRBecoming User \fBbin\fR While Retaining Your Previously
+Exported Environment
+.sp
+.LP
+To become user \fBbin\fR while retaining your previously exported environment,
+execute:
+
+.sp
+.in +2
+.nf
+example% \fBsu bin\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRBecoming User \fBbin\fR and Changing to \fBbin\fR's Login
+Environment
+.sp
+.LP
+To become user \fBbin\fR but change the environment to what would be expected
+if \fBbin\fR had originally logged in, execute:
+
+.sp
+.in +2
+.nf
+example% \fBsu - bin\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRExecuting command with user \fBbin\fR's Environment and
+Permissions
+.sp
+.LP
+To execute command with the temporary environment and permissions of user
+\fBbin\fR, type:
+
+.sp
+.in +2
+.nf
+example% \fBsu - bin -c "\fIcommand args\fR"\fR
+.fi
+.in -2
+.sp
+
+.SH ENVIRONMENT VARIABLES
+.sp
+.LP
+Variables with \fBLD_\fR prefix are removed for security reasons. Thus, \fBsu
+bin\fR will not retain previously exported variables with \fBLD_\fR prefix
+while becoming user \fBbin\fR.
+.sp
+.LP
+If any of the \fBLC_*\fR variables ( \fBLC_CTYPE\fR, \fBLC_MESSAGES\fR,
+\fBLC_TIME\fR, \fBLC_COLLATE\fR, \fBLC_NUMERIC\fR, and \fBLC_MONETARY\fR) (see
+\fBenviron\fR(7)) are not set in the environment, the operational behavior of
+\fBsu\fR for each corresponding locale category is determined by the value of
+the \fBLANG\fR environment variable. If \fBLC_ALL\fR is set, its contents are
+used to override both the \fBLANG\fR and the other \fBLC_*\fR variables. If
+none of the above variables are set in the environment, the "C" (U.S. style)
+locale determines how \fBsu\fR behaves.
+.sp
+.ne 2
+.na
+\fB\fBLC_CTYPE\fR\fR
+.ad
+.RS 15n
+Determines how \fBsu\fR handles characters. When \fBLC_CTYPE\fR is set to a
+valid value, \fBsu\fR can display and handle text and filenames containing
+valid characters for that locale. \fBsu\fR can display and handle Extended Unix
+Code (\fBEUC\fR) characters where any individual character can be \fB1\fR,
+\fB2\fR, or \fB3\fR bytes wide. \fBsu\fR can also handle \fBEUC\fR characters
+of \fB1\fR, \fB2\fR, or more column widths. In the "C" locale, only characters
+from ISO 8859-1 are valid.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBLC_MESSAGES\fR\fR
+.ad
+.RS 15n
+Determines how diagnostic and informative messages are presented. This includes
+the language and style of the messages, and the correct form of affirmative and
+negative responses. In the "C" locale, the messages are presented in the
+default form found in the program itself (in most cases, U.S. English).
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB$\fR\fBHOME\fR\fB/.profile\fR\fR
+.ad
+.RS 22n
+user's login commands for \fBsh\fR and \fBksh\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/passwd\fR\fR
+.ad
+.RS 22n
+system's password file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/profile\fR\fR
+.ad
+.RS 22n
+system-wide \fBsh\fR and \fBksh\fR login commands
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/adm/sulog\fR\fR
+.ad
+.RS 22n
+log file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/default/su\fR\fR
+.ad
+.RS 22n
+the default parameters in this file are:
+.sp
+.ne 2
+.na
+\fB\fBSULOG\fR\fR
+.ad
+.RS 11n
+If defined, all attempts to \fBsu\fR to another user are logged in the
+indicated file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBCONSOLE\fR\fR
+.ad
+.RS 11n
+If defined, all attempts to \fBsu\fR to \fBroot\fR are logged on the console.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBPATH\fR\fR
+.ad
+.RS 11n
+Default path. (\fB/usr/bin:\fR)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSU\fR\fBPATH\fR\fR
+.ad
+.RS 11n
+Default path for a user invoking \fBsu\fR to \fBroot\fR.
+(\fB/usr/sbin:/usr/bin\fR)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSYSLOG\fR\fR
+.ad
+.RS 11n
+Determines whether the \fBsyslog\fR(3C) \fBLOG_AUTH\fR facility should be used
+to log all \fBsu\fR attempts. \fBLOG_NOTICE\fR messages are generated for
+\fBsu\fR's to root, \fBLOG_INFO\fR messages are generated for \fBsu\fR's to
+other users, and \fBLOG_CRIT\fR messages are generated for failed \fBsu\fR
+attempts.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/default/login\fR\fR
+.ad
+.RS 22n
+the default parameters in this file are:
+.sp
+.ne 2
+.na
+\fB\fBTIMEZONE\fR\fR
+.ad
+.RS 12n
+Sets the TZ environment variable of the shell.
+.RE
+
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR csh (1),
+.BR env (1),
+.BR ksh (1),
+.BR login (1),
+.BR roles (1),
+.BR sh (1),
+.BR exec (2),
+.BR syslog (3C),
+.BR pam (3PAM),
+.BR pam_acct_mgmt (3PAM),
+.BR pam_authenticate (3PAM),
+.BR pam_setcred (3PAM),
+.BR getdefaultproj (3PROJECT),
+.BR setproject (3PROJECT),
+.BR pam.conf (5),
+.BR passwd (5),
+.BR profile (5),
+.BR sulog (5),
+.BR attributes (7),
+.BR environ (7),
+.BR syslogd (8)
diff --git a/usr/src/man/man8/sulogin.8 b/usr/src/man/man8/sulogin.8
new file mode 100644
index 0000000000..6709b87d29
--- /dev/null
+++ b/usr/src/man/man8/sulogin.8
@@ -0,0 +1,96 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 2008 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SULOGIN 8 "Aug 21, 2008"
+.SH NAME
+sulogin \- access single-user mode
+.SH SYNOPSIS
+.LP
+.nf
+\fBsulogin\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBsulogin\fR utility is automatically invoked by \fBinit\fR when the
+system is first started. It prompts the user to type a user name and password
+to enter system maintenance mode (single-user mode) or to type \fBEOF\fR
+(typically CTRL-D) for normal startup (multi-user mode). The user should never
+directly invoke \fBsulogin\fR. The user must have the
+\fBsolaris.system.maintenance\fR authorization.
+.sp
+.LP
+The \fBsulogin\fR utility can prompt the user to enter the root password on a
+variable number of serial console devices, in addition to the traditional
+console device. See \fBconsadm\fR(8) and \fBmsglog\fR(4D) for a description of
+how to configure a serial device to display the single-user login prompt.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/default/sulogin\fR\fR
+.ad
+.sp .6
+.RS 4n
+Default value can be set for the following flag:
+.sp
+.ne 2
+.na
+\fBPASSREQ\fR
+.ad
+.sp .6
+.RS 4n
+Determines if login requires a password. Default is \fBPASSREQ=YES\fR.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/default/login\fR\fR
+.ad
+.sp .6
+.RS 4n
+Default value can be set for the following flag:
+.sp
+.ne 2
+.na
+\fB\fBSLEEPTIME\fR\fR
+.ad
+.sp .6
+.RS 4n
+If present, sets the number of seconds to wait before login failure is printed
+to the screen and another login attempt is allowed. Default is \fB4\fR seconds.
+Minimum is \fB0\fR seconds. Maximum is \fB5\fR seconds.
+.sp
+Both \fBsu\fR(8) and \fBlogin\fR(1) are affected by the value of
+\fBSLEEPTIME\fR.
+.RE
+
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR auths (1),
+.BR login (1),
+.BR msglog (4D),
+.BR attributes (7),
+.BR consadm (8),
+.BR init (8),
+.BR su (8)
+.SH NOTES
+.sp
+.LP
+By default, the root user has all authorizations.
+.sp
+.LP
+Granting the \fBsolaris.system.maintenance\fR authorization to the Console User
+Rights Profile may have an undesirable side effect of granting the currently
+logged in user maintenance mode access. The \fBsolaris.system.maintenance\fR
+authorization should be directly granted to appropriate users rather than
+through the Console User Rights Profile.
diff --git a/usr/src/man/man8/svc.configd.8 b/usr/src/man/man8/svc.configd.8
new file mode 100644
index 0000000000..98d2d486fe
--- /dev/null
+++ b/usr/src/man/man8/svc.configd.8
@@ -0,0 +1,34 @@
+'\" te
+.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SVC.CONFIGD 8 "Oct 27, 2004"
+.SH NAME
+svc.configd \- Service Management Facility repository daemon
+.SH SYNOPSIS
+.LP
+.nf
+\fB/lib/svc/bin/svc.configd\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBsvc.configd\fR is the repository daemon for the Service Management Facility.
+\fBsvc.configd\fR is invoked automatically during system startup, and restarted
+if any failures occur. \fBsvc.configd\fR should never be invoked directly.
+.sp
+.LP
+Interaction with \fBsvc.configd\fR is by way of \fBlibscf\fR(3LIB) and the
+command line tools: \fBsvcs\fR(1), \fBsvcprop\fR(1), \fBsvcadm\fR(8), and
+\fBsvccfg\fR(8).
+.SH SEE ALSO
+.sp
+.LP
+.BR svcprop (1),
+.BR svcs (1),
+.BR libscf (3LIB),
+.BR attributes (7),
+.BR svcadm (8),
+.BR svccfg (8)
diff --git a/usr/src/man/man8/svc.ipfd.8 b/usr/src/man/man8/svc.ipfd.8
new file mode 100644
index 0000000000..eb1c6876fb
--- /dev/null
+++ b/usr/src/man/man8/svc.ipfd.8
@@ -0,0 +1,626 @@
+'\" te
+.\" To view license terms, attribution, and copyright for IP Filter, the default path is /usr/lib/ipf/IPFILTER.LICENCE. If the Solaris operating environment has been installed anywhere other than the default, modify the given path to access the file at the installed
+.\" location.
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 2016 Hans Rosenfeld <rosenfeld@grumpf.hope-2000.org>
+.TH SVC.IPFD 8 "Dec 30, 2015"
+.SH NAME
+svc.ipfd \- IP Filter firewall monitoring daemon
+.SH SYNOPSIS
+.LP
+.nf
+\fB/lib/svc/bin/svc.ipfd\fR
+.fi
+
+.LP
+.nf
+\fBsvc:/network/ipfilter:default\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBsvc.ipfd\fR daemon monitors actions on services that use firewall
+configuration and initiates update services' IP Filter configuration. The
+daemon allows the system to react to changes in system's firewall configuration
+in an incremental fashion, at a per-service level.
+.sp
+.LP
+A service's firewall policy is activated when it is enabled, deactivated when
+it is disabled, and updated when its configuration property group is modified.
+\fBsvc.ipfd\fR monitors the services management facility (SMF) repository for
+these actions and invokes the IP Filter rule-generation process to carry out
+the service's firewall policy.
+.sp
+.LP
+This daemon is started by the \fBnetwork/ipfilter\fR service either through the
+\fBstart\fR or \fBrefresh\fR method. Thus, the daemon inherits the environment
+variables and credentials from the method and runs as root with all zone
+privileges.
+.SS "Firewall Static Configuration"
+.LP
+A static definition describes a service's network resource configuration that
+is used to generate service-specific IPF rules. The per-service
+\fBfirewall_context\fR property group contains a service's static definition,
+similar to the \fBinetd\fR property group in \fBinetd\fR managed services. This
+property group supports:
+.sp
+.ne 2
+.na
+\fB\fBfirewall_context/name\fR\fR
+.ad
+.sp .6
+.RS 4n
+For non-\fBinetd\fR services. The IANA name or RPC name, equivalent to the
+\fBinetd/name\fR property.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfirewall_context/isrpc\fR\fR
+.ad
+.sp .6
+.RS 4n
+For non-\fBinetd\fR services. A boolean property where a \fBtrue\fR value
+indicates an RPC service, equivalent to the \fBinetd/isrpc\fR property. For RPC
+services, the value of \fBfirewall_context/name\fR is not an IANA name but is
+either an RPC program number or name. See \fBrpc\fR(5).
+.RE
+
+.sp
+.LP
+Additionally, some services may require a mechanism to generate and supply
+their own IPF rules. An optional property \fBipf_method\fR, provides a
+mechanism to allow such custom rule generation:
+.sp
+.ne 2
+.na
+\fB\fBfirewall_context/ipf_method\fR\fR
+.ad
+.sp .6
+.RS 4n
+A command. Normally a script that generates IPF rules for a service. The
+framework does not generate rules for services with this property definition.
+Rather, the framework expects these services to provide their own rules.
+.RE
+
+.sp
+.LP
+A service's \fBipf_method\fR specifies a command that takes an additional
+argument, its own fault management resource identifier (FMRI), and generates
+the service's firewall rules and outputs those rules to stdout. To generate
+rules for a service with the \fBipf_method\fR property, the framework execs the
+command specified in \fBipf_method\fR, passing the service FMRI as the
+additional argument, and stores the rules for that service by redirecting the
+command output, the rules, to the service's rule file. Because an
+\fBipf_method\fR is \fBexec\fR'ed from the context of either the
+\fBnetwork/ipfilter\fR \fBstart\fR or \fBrefresh\fR method process, it inherits
+the execution context and runs as root.
+.sp
+.LP
+The service static configuration is delivered by the service developer and not
+intended to be modified by users. These properties are only modified upon
+installation of an updated service definition.
+.SS "Firewall Policy Configuration"
+.LP
+A per-service property group, \fBfirewall_config\fR, stores the services'
+firewall policy configuration. Because \fBnetwork/ipfilter:default\fR is
+responsible for two firewall policies, the Global Default and Global Override
+system-wide policies (as explained in \fBipfilter\fR(7)), it has two property
+groups, \fBfirewall_config_default\fR and \fBfirewall_config_override\fR, to
+store the respective system-wide policies.
+.sp
+.LP
+Below are the properties, their possible values, and corresponding semantics:
+.sp
+.ne 2
+.na
+\fB\fBpolicy\fR\fR
+.ad
+.sp .6
+.RS 4n
+The \fBpolicy\fR has the following modes:
+.sp
+.ne 2
+.na
+\fB\fBnone\fR policy mode\fR
+.ad
+.sp .6
+.RS 4n
+No access restriction. For a global policy, this mode allows all incoming
+traffic. For a service policy, this mode allows all incoming traffic to its
+service.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdeny\fR policy mode\fR
+.ad
+.sp .6
+.RS 4n
+More restrictive than \fBnone\fR. This mode allows incoming traffic from all
+sources except those specified in the \fBapply_to\fR property.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBallow\fR policy mode\fR
+.ad
+.sp .6
+.RS 4n
+Most restrictive mode. This mode blocks incoming traffic from all sources
+except those specified in the \fBapply_to\fR property.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBblock-policy\fR\fR
+.ad
+.sp .6
+.RS 4n
+The \fBblock-policy\fR property defines the handling of packets that
+are blocked by the filter. It has the following modes:
+.sp
+.ne 2
+.na
+\fB\fBnone\fR block-policy mode\fR
+.ad
+.sp .6
+.RS 4n
+Block by dropping packets.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBreturn\fR block-policy mode\fR
+.ad
+.sp .6
+.RS 4n
+Block by returning RST (for TCP) or ICMP messages (for other
+protocols) to the sender of the blocked packets.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBapply_to\fR\fR
+.ad
+.sp .6
+.RS 4n
+A multi-value property listing IPv4 network source entities to enforce the
+chosen policy mode. Packets coming from the entities listed in \fBapply_to\fR
+property will be denied if policy is \fBdeny\fR and allowed if policy is
+\fBallow\fR. The syntax for possible values are:
+.sp
+.in +2
+.nf
+host: host:\fIIP\fR "host:192.168.84.14"
+subnet: network:\fIIP/netmask\fR "network:129.168.1.5/24"
+ippool: pool:\fIpool number\fR "pool:77"
+interface: if:\fIinterface_name\fR "if:e1000g0"
+.fi
+.in -2
+.sp
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBapply_to_6\fR\fR
+.ad
+.sp .6
+.RS 4n
+A multi-value property listing IPv6 network source entities to enforce the
+chosen policy mode. Packets coming from the entities listed in \fBapply_to_6\fR
+property will be denied if policy is \fBdeny\fR and allowed if policy is
+\fBallow\fR. The syntax for possible values are:
+.sp
+.in +2
+.nf
+host: host:\fIIP\fR "host:2001:DB8::12ff:fe34:5678"
+subnet: network:\fIIP/netmask\fR "network:2001:DB8::/32"
+ippool: pool:\fIpool number\fR "pool:77"
+interface: if:\fIinterface_name\fR "if:e1000g0"
+.fi
+.in -2
+.sp
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBexceptions\fR\fR
+.ad
+.sp .6
+.RS 4n
+A multi-value property listing IPv4 network source entities to be excluded from
+the \fBapply_to\fR list. For example, when \fBdeny\fR policy is applied to a
+subnet, exceptions can be made to some hosts in that subnet by specifying them
+in the \fBexceptions\fR property. This property has the same value syntax as
+\fBapply_to\fR property.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBexceptions_6\fR\fR
+.ad
+.sp .6
+.RS 4n
+A multi-value property listing IPv6 network source entities to be excluded from
+the \fBapply_to_6\fR list. For example, when \fBdeny\fR policy is applied to a
+subnet, exceptions can be made to some hosts in that subnet by specifying them
+in the \fBexceptions_6\fR property. This property has the same value syntax as
+\fBapply_to_6\fR property.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBtarget\fR\fR
+.ad
+.sp .6
+.RS 4n
+A multi-value property listing IPv4 network destination entities to enforce the
+chosen policy mode. Packets directed to the destination entities listed in
+\fBtarget\fR property will be denied if policy is \fBdeny\fR and allowed if
+policy is \fBallow\fR. This property has the same value syntax as \fBapply_to\fR
+property, with the notable exception that specifying network interfaces is not
+supported.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBtarget_6\fR\fR
+.ad
+.sp .6
+.RS 4n
+A multi-value property listing IPv6 network destination entities to enforce the
+chosen policy mode. Packets directed to the destination entities listed in
+\fBtarget_6\fR property will be denied if policy is \fBdeny\fR and allowed if
+policy is \fBallow\fR. This property has the same value syntax as
+\fBapply_to_6\fR property, with the notable exception that specifying network
+interfaces is not supported.
+.RE
+
+.sp
+.LP
+For individual network services only:
+.sp
+.ne 2
+.na
+\fB\fBfirewall_config/policy\fR\fR
+.ad
+.sp .6
+.RS 4n
+A service's policy can also be set to \fBuse_global\fR. Services with
+\fBuse_global\fR policy mode inherit the Global Default firewall policy.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfirewall_config/block_policy\fR\fR
+.ad
+.sp .6
+.RS 4n
+A service's block policy can also be set to \fBuse_global\fR. Services with
+\fBuse_global\fR block policy mode inherit the Global Default firewall block
+policy.
+.RE
+
+.sp
+.LP
+For the Global Default only:
+.sp
+.ne 2
+.na
+\fB\fBfirewall_config_default/policy\fR\fR
+.ad
+.sp .6
+.RS 4n
+Global Default policy, \fBfirewall_config\fR property group in
+\fBsvc:/network/ipfilter:default\fR, can also be set to \fBcustom\fR. Users can
+set \fBpolicy\fR to \fBcustom\fR to use prepopulated IP Filter configuration,
+for example, an existing IP Filter configuration or custom configurations that
+cannot be provided by the framework. This Global Default-only policy mode
+allows users to supply a text file containing the complete set of IPF rules.
+When \fBcustom\fR mode is selected, the specified set of IPF rules is
+\fBcomplete\fR and the framework will not generate IPF rules from configured
+firewall policies.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfirewall_config_default/custom_policy_file\fR\fR
+.ad
+.sp .6
+.RS 4n
+A file path to be used when Global Default policy is set to \fBcustom\fR. The
+file contains a set of IPF rules that provide the desired IP Filter
+configuration. For example, users with existing IPF rules in
+\fB/etc/ipf/ipf.conf\fR can execute the following commands to use the existing
+rules:
+.RS +4
+.TP
+1.
+Set custom policy:
+.sp
+.in +2
+.nf
+# \fBsvccfg -s ipfilter:default setprop \e
+firewall_config_default/policy = astring: "custom"\fR
+.fi
+.in -2
+.sp
+
+.RE
+.RS +4
+.TP
+2.
+Specify custom file:
+.sp
+.in +2
+.nf
+# \fBsvccfg -s ipfilter:default setprop \e
+firewall_config_default/custom_policy_file = astring: \e\fR
+\fB"/etc/ipf/ipf.conf"\fR
+.fi
+.in -2
+.sp
+
+.RE
+.RS +4
+.TP
+3.
+Refresh configuration:
+.sp
+.in +2
+.nf
+# \fBsvcadm refresh ipfilter:default\fR
+.fi
+.in -2
+.sp
+
+.RE
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfirewall_config_default/open_ports\fR\fR
+.ad
+.sp .6
+.RS 4n
+Non-service program requiring allowance of its incoming traffic can request
+that the firewall allow traffic to its communication ports. This multi-value
+property contains protocol and port(s) tuple in the form:
+.sp
+.in +2
+.nf
+"{tcp | udp}:{\fIPORT\fR | \fIPORT\fR-\fIPORT\fR}"
+.fi
+.in -2
+.sp
+
+.RE
+
+.sp
+.LP
+Initially, the system-wide policies are set to \fBnone\fR and network services'
+policies are set to \fBuse_global\fR. Enabling \fBnetwork/ipfilter\fR activates
+the firewall with an empty set of IP Filter rules, since system-wide policy is
+\fBnone\fR and all services inherit that policy. To configure a more
+restrictive policy, use \fBsvccfg\fR(8) to modify network services and
+system-wide policies.
+.sp
+.LP
+A user configures firewall policy by modifying the service's
+\fBfirewall_config\fR property group. A new authorization,
+\fBsolaris.smf.value.firewall.config\fR, is created to allow delegation of the
+firewall administration privilege to users. Users with Service Operator
+privileges will need this new authorization to be able to configure firewall
+policy.
+.SS "Firewall Availability"
+.LP
+During boot, a firewall is configured for enabled services prior to the
+starting of those services. Thus, services are protected on boot. While the
+system is running, administrative actions such as service restarting, enabling,
+and refreshing may cause a brief service vulnerability during which the service
+runs while its firewall is being configured.
+.sp
+.LP
+\fBsvc.ipfd\fR monitors a service's start and stop events and configures or
+unconfigures a service's firewall at the same time that SMF is starting or
+stopping the service. Because the two operations are simultaneous, there is a
+possible window of exposure (less than a second) if the service is started
+before its firewall configuration completed. RPC services typically listen on
+ephemeral addresses, which are not known until the services are actually
+running. Thus RPC services are subjected to similar exposure since their
+firewalls are not configured until the services are running.
+.SS "Developer Documentation"
+.LP
+Services providing remote capabilities are encouraged to participate in the
+firewall framework to control network access to the service. While framework
+integration is not mandatory, remote access to services that are not integrated
+in the framework may not function correctly when a system-wide policy is
+configured.
+.sp
+.LP
+Integrating a service into the framework is as straightforward as defining two
+additional property groups and their corresponding properties in the service
+manifest. IP Filter rules are generated when a user enables the service. In the
+non-trivial case of custom rule generation, where a shell script is required,
+there are existing scripts that can be used as examples.
+.sp
+.LP
+The additional property groups, \fBfirewall_config\fR and
+\fBfirewall_context\fR, stores firewall policy configuration and provides
+static firewall definition, respectively. Below is a summary of new property
+groups and properties and their appropriate default values.
+.sp
+.LP
+Firewall policy configuration:
+.sp
+.ne 2
+.na
+\fB\fBfirewall_config\fR\fR
+.ad
+.sp .6
+.RS 4n
+Access to the system is protected by a new authorization definition and a
+user-defined property type. The new authorization should be assigned to the
+property group \fBvalue_authorization\fR property in a way such as:
+.sp
+.in +2
+.nf
+<propval name='value_authorization' type='astring'
+value='solaris.smf.value.firewall.config' />
+.fi
+.in -2
+.sp
+
+A third party should follow the service symbol namespace convention to generate
+a user-defined type. Sun-delivered services can use
+\fBcom.sun,fw_configuration\fR as the property type.
+.sp
+See "Firewall Policy Configuration," above, for more information.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfirewall_config/policy\fR\fR
+.ad
+.sp .6
+.RS 4n
+This property's initial value should be \fBuse_global\fR since services, by
+default, inherit the Global Default firewall policy.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfirewall_config/apply_to\fR\fR
+.ad
+.sp .6
+.RS 4n
+An empty property, this property has no initial value.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfirewall_config/exceptions\fR\fR
+.ad
+.sp .6
+.RS 4n
+An empty property, this property has no initial value.
+.RE
+
+.sp
+.LP
+Firewall static definition:
+.sp
+.ne 2
+.na
+\fB\fBfirewall_context\fR\fR
+.ad
+.sp .6
+.RS 4n
+A third party should follow service symbol namespace convention to generate a
+user-defined type, Sun delivered services can use \fBcom.sun,fw_definition\fR
+as the property type.
+.sp
+See "Firewall Static Configuration," above, for more information.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfirewall_context/name\fR\fR
+.ad
+.sp .6
+.RS 4n
+Service with well-known, IANA defined port, which can be obtained by
+\fBgetservbyname\fR(3SOCKET). The service's IANA name is stored in this
+property. For RPC services, the RPC program number is stored in this property.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfirewall_context/isrpc\fR\fR
+.ad
+.sp .6
+.RS 4n
+For RPC services, this property should be created with its value set to
+\fBtrue\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfirewall_context/ipf_method\fR\fR
+.ad
+.sp .6
+.RS 4n
+In general, the specified firewall policy is used to generate IP Filter rules
+to the service's communication port, derived from the
+\fBfirewall_context/name\fR property. Services that do not have IANA-defined
+ports and are not RPC services will need to generate their own IP Filter rules.
+Services that generate their own rules may choose not to have
+\fBfirewall_context/name\fR and \fBfirewall_context/isrpc\fR properties. See
+the following services:
+.sp
+.in +2
+.nf
+svc:/network/ftp:default
+svc:/network/nfs/server:default
+svc:/network/ntp:default
+.fi
+.in -2
+.sp
+
+\&...and others with the \fBipf_method\fR for guidance.
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Committed
+.TE
+
+.SH SEE ALSO
+.LP
+.BR svcprop (1),
+.BR svcs (1),
+.BR getservbyname (3SOCKET),
+.BR rpc (5),
+.BR attributes (7),
+.BR ipfilter (7),
+.BR smf (7),
+.BR ipf (8),
+.BR svcadm (8),
+.BR svccfg (8)
diff --git a/usr/src/man/man8/svc.startd.8 b/usr/src/man/man8/svc.startd.8
new file mode 100644
index 0000000000..2fcf917fde
--- /dev/null
+++ b/usr/src/man/man8/svc.startd.8
@@ -0,0 +1,591 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 2019 Joyent, Inc.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SVC.STARTD 8 "Dec 11, 2019"
+.SH NAME
+svc.startd \- Service Management Facility master restarter
+.SH SYNOPSIS
+.nf
+\fB/lib/svc/bin/svc.startd\fR
+.fi
+
+.LP
+.nf
+\fBsvc:/system/svc/restarter:default\fR
+.fi
+
+.SH DESCRIPTION
+\fBsvc.startd\fR is the master restarter daemon for Service Management Facility
+(SMF) and the default restarter for all services. \fBsvc.startd\fR starts,
+stops, and restarts services based on administrative requests, system failures,
+or application failures.
+.sp
+.LP
+\fBsvc.startd\fR maintains service state, as well as being responsible for
+managing faults in accordance with the dependencies of each service.
+.sp
+.LP
+\fBsvc.startd\fR is invoked automatically during system startup. It is
+restarted if any failures occur. \fBsvc.startd\fR should never be invoked
+directly.
+.sp
+.LP
+See \fBsmf_restarter\fR(7) for information on configuration and behavior common
+to all restarters.
+.sp
+.LP
+\fBsvcs\fR(1) reports status for all services managed by the Service
+Configuration Facility. \fBsvcadm\fR(8) allows manipulation of service
+instances with respect to the service's restarter.
+.SS "Environment Variables"
+Environment variables with the "SMF_" prefix are reserved and may be
+overwritten.
+.sp
+.LP
+\fBsvc.startd\fR supplies the "SMF_" environment variables specified in
+\fBsmf_method\fR(7) to the method. PATH is set to "\fB/usr/sbin:/usr/bin\fR" by
+default. By default, all other environment variables supplied to
+\fBsvc.startd\fR are those inherited from \fBinit\fR(8).
+.sp
+.LP
+Duplicate entries are reduced to a single entry. The value used is undefined.
+Environment entries that are not prefixed with "<\fIname\fR>=" are ignored.
+.SS "Restarter Options"
+\fBsvc.startd\fR is not configured by command line options. Instead,
+configuration is read from the service configuration repository. You can use
+\fBsvccfg\fR(8) to set all options and properties.
+.sp
+.LP
+The following configuration variables in the \fBoptions\fR property group are
+available to developers and administrators:
+.sp
+.ne 2
+.na
+\fB\fBboot_messages\fR\fR
+.ad
+.sp .6
+.RS 4n
+An \fIastring\fR (as defined in \fBscf_value_is_type\fR; see
+\fBscf_value_is_type\fR(3SCF)) that describes the default level of messages to
+print to the console during boot. The supported message options include
+\fBquiet\fR and \fBverbose\fR. The \fBquiet\fR option prints minimal messages
+to console during boot. The \fBverbose\fR option prints a single message per
+service started to indicate success or failure. You can use the \fBboot\fR
+\fB-m\fR option to override the \fBboot_messages\fR setting at boot time. See
+\fBkernel\fR(8).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBlogging\fR\fR
+.ad
+.sp .6
+.RS 4n
+Control the level of global service logging for \fBsvc.startd\fR. An
+\fIastring\fR (as defined in \fBscf_value_is_type\fR; see
+\fBscf_value_is_type\fR(3SCF)) that describes the default level of messages to
+log to \fBsyslog\fR (see \fBsyslog\fR(3C) and \fBsvc.startd\fR's global
+logfile, \fB/var/svc/log/svc.startd.log\fR. The supported message options
+include \fBquiet\fR, \fBverbose\fR, and \fBdebug\fR. The \fBquiet\fR option
+sends error messages requiring administrative intervention to the console,
+\fBsyslog\fR and \fBsvc.startd\fR's global logfile. The \fBverbose\fR option
+sends error messages requiring administrative intervention to the console,
+\fBsyslog\fR and \fBsvc.startd\fR's global logfile, and information about
+errors which do not require administrative intervention to \fBsvc.startd\fR's
+global logfile. A single message per service started is also sent to the
+console. The \fBdebug\fR option sends \fBsvc.startd\fR debug messages to
+\fBsvc.startd\fR's global logfile, error messages requiring
+administrative intervention to the console, \fBsyslog\fR and \fBsvc.startd\fR's
+global logfile, and a single message per service started to the console.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmilestone\fR\fR
+.ad
+.sp .6
+.RS 4n
+An FMRI which determines the milestone used as the default boot level.
+Acceptable options include only the major milestones:
+.sp
+.in +2
+.nf
+svc:/milestone/single-user:default
+svc:/milestone/multi-user:default
+svc:/milestone/multi-user-server:default
+.fi
+.in -2
+.sp
+
+or the special values \fBall\fR or \fBnone\fR. \fBall\fR represents an
+idealized milestone that depends on every service. \fBnone\fR is a special
+milestone where no services are running apart from the master
+\fBsvc:/system/svc/restarter:default\fR. By default, \fBsvc.startd\fR uses
+\fBall\fR, a synthetic milestone that depends on every service. If this
+property is specified, it overrides any \fBinitdefault\fR setting in
+\fBinittab\fR(5).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsystem/reconfigure\fR\fR
+.ad
+.sp .6
+.RS 4n
+Indicates that a reconfiguration reboot has been requested. Services with
+actions that must key off of a reconfiguration reboot may check that this
+property exists and is set to 1 to confirm a reconfiguration boot has been
+requested.
+.sp
+This property is managed by \fBsvc.startd\fR and should not be modified by the
+administrator.
+.RE
+
+.sp
+.LP
+Configuration errors, such as disabling \fBsvc.startd\fR are logged by
+\fBsyslog\fR, but ignored.
+.SS "SERVICE STATES"
+Services managed by \fBsvc.startd\fR can appear in any of the states described
+in \fBsmf\fR(7). The state definitions are unmodified by this restarter.
+.SS "SERVICE REPORTING"
+In addition to any logging done by the managed service, \fBsvc.startd\fR
+provides a common set of service reporting and logging mechanisms.
+.sp
+.LP
+Reporting properties \fBsvc.startd\fR updates a common set of properties on all
+services it manages. These properties are a common interface that can be used
+to take action based on service instance health. The \fBsvcs\fR(1) command can
+be used to easily display these properties.
+.sp
+.ne 2
+.na
+\fB\fBrestarter/state\fR\fR
+.ad
+.br
+.na
+\fB\fBrestarter/next_state\fR\fR
+.ad
+.sp .6
+.RS 4n
+The current and next (if currently in transition) state for an instance.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrestarter/auxiliary_state\fR\fR
+.ad
+.sp .6
+.RS 4n
+A caption detailing additional information about the current instance state.
+The auxiliary state available for services managed by \fBsvc.startd\fR is:
+.sp
+.ne 2
+.na
+\fBmaintenance\fR
+.ad
+.RS 15n
+.sp
+.in +2
+.nf
+fault_threshold_reached
+stop_method_failed
+administrative_request
+.fi
+.in -2
+.sp
+
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrestarter/state_timestamp\fR\fR
+.ad
+.sp .6
+.RS 4n
+The time when the current state was reached.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrestarter/contract\fR\fR
+.ad
+.sp .6
+.RS 4n
+The primary process contract ID, if any, that under which the service instance
+is executing.
+.RE
+
+.sp
+.LP
+\fBLogs\fR
+.sp
+.LP
+By default, \fBsvc.startd\fR provides logging of significant restarter actions
+for the service as well as method standard output and standard error file
+descriptors to \fB/var/svc/log/\fIservice\fR:\fIinstance\fR.log\fR. The level
+of logging to system global locations like \fB/var/svc/log/svc.startd.log\fR
+and \fBsyslog\fR is controlled by the \fBoptions/logging\fR property.
+.SS "SERVICE DEFINITION"
+When developing or configuring a service managed by \fBsvc.startd\fR, a common
+set of properties are used to affect the interaction between the service
+instance and the restarter.
+.sp
+.LP
+\fBMethods\fR
+.sp
+.LP
+The general form of methods for the fork/exec model provided by
+\fBsvc.startd\fR are presented in \fBsmf_method\fR(7). The following methods
+are supported as required or optional by services managed by \fBsvc.startd\fR.
+.sp
+.ne 2
+.na
+\fB\fBrefresh\fR\fR
+.ad
+.RS 11n
+Reload any appropriate configuration parameters from the repository or
+\fBconfig\fR file, without interrupting service. This is often implemented
+using \fBSIGHUP\fR for system daemons. If the service is unable to recognize
+configuration changes without a restart, no refresh method is provided.
+.sp
+This method is optional.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBstart\fR\fR
+.ad
+.RS 11n
+Start the service. Return success only after the application is available to
+consumers. Fail if a conflicting instance is already running, or if the service
+is unable to start.
+.sp
+This method is required.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBstop\fR\fR
+.ad
+.RS 11n
+Stop the service. In some cases, the stop method can be invoked when some or
+all of the service has already been stopped. Only return an error if the
+service is not entirely stopped on method return.
+.sp
+This method is required.
+.RE
+
+.sp
+.LP
+If the service does not need to take any action in a required method, it must
+specify the \fB:true\fR token for that method.
+.sp
+.LP
+\fBsvc.startd\fR honors any method context specified for the service or any
+specific method. The method expansion tokens described in \fBsmf_method\fR(7)
+are available for use in all methods invoked by \fBsvc.startd\fR.
+.sp
+.LP
+\fBProperties\fR
+.sp
+.LP
+An overview of the general properties is available in \fBsmf\fR(7). The
+specific way in which these general properties interacts with \fBsvc.startd\fR
+follows:
+.sp
+.ne 2
+.na
+\fB\fBgeneral/enabled\fR\fR
+.ad
+.sp .6
+.RS 4n
+If enabled is set to true, the restarter attempts to start the service once all
+its dependencies are satisfied. If set to false, the service remains in the
+disabled state, not running.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBgeneral/restarter\fR\fR
+.ad
+.sp .6
+.RS 4n
+If this FMRI property is empty or set to
+\fBsvc:/system/svc/restarter:default\fR, the service is managed by
+\fBsvc.startd\fR. Otherwise, the restarter specified is responsible (once it is
+available) for managing the service.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBgeneral/single_instance\fR\fR
+.ad
+.sp .6
+.RS 4n
+This was originally supposed to ensure that only one service instance could be
+in online or degraded state at once; however, it was never implemented, and is
+often incorrectly specified in multi-instance manifests. As such, it should be
+considered obsolete and not specified in new manifests.
+.RE
+
+.sp
+.LP
+Additionally, \fBsvc.startd\fR managed services can define the optional
+properties listed below in the \fBstartd\fR property group.
+.sp
+.ne 2
+.na
+\fB\fBstartd/critical_failure_count\fR
+.ad
+.br
+.na
+\fBstartd/critical_failure_period\fR\fR
+.ad
+.sp .6
+.RS 4n
+The \fBcritical_failure_count\fR and \fBcritical_failure_period\fR properties
+together specify the maximum number of service failures allowed in a given
+number of seconds before \fBsvc.startd\fR transitions the service to
+maintenance.
+If the number of failures exceeds \fBcritical_failure_count\fR in any period of
+\fBcritical_failure_period\fR seconds, \fBsvc.startd\fR will transition the
+service to maintenance. The \fBcritical_failure_count\fR value is limited
+to the range 1-10 and defaults to 10. The \fBcritical_failure_period\fR
+defaults to 600 seconds.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBstartd/duration\fR\fR
+.ad
+.sp .6
+.RS 4n
+The \fBduration\fR property defines the service's model. It can be set to
+\fBtransient\fR, \fBchild\fR also known as "\fBwait\fR" model services, or
+\fBcontract\fR (the default).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBstartd/ignore_error\fR\fR
+.ad
+.sp .6
+.RS 4n
+The \fBignore_error\fR property, if set, specifies a comma-separated list of
+ignored events. Legitimate string values in that list are \fBcore\fR and
+\fBsignal\fR. The default is to restart on all errors.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBstartd/need_session\fR\fR
+.ad
+.sp .6
+.RS 4n
+The \fBneed_session\fR property, if set to true, indicates that the instance
+should be launched in its own session. The default is not to do so.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBstartd/utmpx_prefix\fR\fR
+.ad
+.sp .6
+.RS 4n
+The \fButmpx_prefix\fR string property defines that the instance requires a
+valid \fButmpx\fR entry prior to start method execution. The default is not to
+create a \fButmpx\fR entry.
+.RE
+
+.SS "SERVICE FAILURE"
+\fBsvc.startd\fR assumes that a method has failed if it returns a non-zero exit
+code or if fails to complete before the timeout specified expires. If
+\fB$SMF_EXIT_ERR_CONFIG\fR or \fB$SMF_EXIT_ERR_FATAL\fR is returned,
+\fBsvc.startd\fR immediately places the service in the maintenance state. For
+all other failures, \fBsvc.startd\fR places the service in the offline state.
+If a service is offline and its dependencies are satisfied, \fBsvc.startd\fR
+tries again to start the service (see \fBsmf\fR(7)).
+.sp
+.LP
+If a contract or transient service does not return from its start method before
+its defined timeout elapses, \fBsvc.startd\fR sends a \fBSIGKILL\fR to the
+method, and returns the service to the offline state.
+.sp
+.LP
+If three failures happen in a row, or if the service is restarting more than
+once a second, \fBsvc.startd\fR places the service in the maintenance state.
+.sp
+.LP
+The conditions of service failure are defined by a combination of the service
+model (defined by the \fBstartd/duration\fR property) and the value of the
+\fBstartd/ignore_error\fR property.
+.sp
+.LP
+A contract model service fails if any of the following conditions occur:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+all processes in the service exit
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+any processes in the service produce a core dump
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+a process outside the service sends a service process a fatal signal (for
+example, an administrator terminates a service process with the \fBpkill\fR
+command)
+.RE
+.sp
+.LP
+The last two conditions may be ignored by the service by specifying core and/or
+signal in \fBstartd/ignore_error\fR.
+.sp
+.LP
+Defining a service as transient means that \fBsvc.startd\fR does not track
+processes for that service. Thus, the potential faults described for contract
+model services are not considered failures for transient services. A transient
+service only enters the maintenance state if one of the method failure
+conditions occurs.
+.sp
+.LP
+"\fBWait\fR" model services are restarted whenever the child process associated
+with the service exits. A child process that exits is not considered an error
+for "\fBwait\fR" model services, and repeated failures do not lead to a
+transition to maintenance state. However, a wait service which is repeatedly
+exiting with an error that exceeds the default rate (5 failures/second) will be
+throttled back so that the service only restarts once per second.
+.SS "LEGACY SERVICES"
+\fBsvc.startd\fR continues to provide support for services invoked during the
+startup run level transitions. Each \fB/etc/rc?.d\fR directory is processed
+after all managed services which constitute the equivalent run level milestone
+have transitioned to the online state. Standard \fBinit\fR scripts placed in
+the \fB/etc/rc?.d\fR directories are run in the order of their sequence
+numbers.
+.sp
+.LP
+The milestone to run-level mapping is:
+.sp
+.ne 2
+.na
+\fB\fBmilestone/single-user\fR\fR
+.ad
+.sp .6
+.RS 4n
+Single-user (\fBS\fR)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmilestone/multi-user\fR\fR
+.ad
+.sp .6
+.RS 4n
+Multi-user (\fB2\fR)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmilestone/multi-user-server\fR\fR
+.ad
+.sp .6
+.RS 4n
+Multi-user with network services (\fB3\fR)
+.RE
+
+.sp
+.LP
+Additionally, \fBsvc.startd\fR gives these legacy services visibility in SMF by
+inserting an instance per script into the repository. These legacy instances
+are visible using standard SMF interfaces such as \fBsvcs\fR(1), always appear
+in the \fBLEGACY-RUN\fR state, cannot be modified, and can not be specified as
+dependencies of other services. The initial start time of the legacy service is
+captured as a convenience for the administrator.
+.SH FILES
+.ne 2
+.na
+\fB\fB/var/svc/log\fR\fR
+.ad
+.RS 21n
+Directory where \fBsvc.startd\fR stores log files.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/svc/volatile\fR\fR
+.ad
+.RS 21n
+Directory where \fBsvc.startd\fR stores log files in early stages of boot,
+before \fB/var\fR is mounted read-write.
+.RE
+
+.SH EXAMPLE
+\fBExample 1 \fRTurning on Verbose Logging
+.sp
+.LP
+To turn on verbose logging, type the following:
+
+.sp
+.in +2
+.nf
+# /usr/sbin/svccfg -s system/svc/restarter:default
+svc:/system/svc/restarter:default> addpg options application
+svc:/system/svc/restarter:default> setprop options/logging = \e
+astring: verbose
+svc:/system/svc/restarter:default> exit
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+This request will take effect on the next restart of \fBsvc.startd\fR.
+
+.SH SEE ALSO
+.BR svcprop (1),
+.BR svcs (1),
+.BR setsid (2),
+.BR syslog (3C),
+.BR libscf (3LIB),
+.BR scf_value_is_type (3SCF),
+.BR contract (5),
+.BR init.d (5),
+.BR inittab (5),
+.BR process (5),
+.BR attributes (7),
+.BR smf (7),
+.BR smf_method (7),
+.BR init (8),
+.BR kernel (8),
+.BR svc.configd (8),
+.BR svcadm (8),
+.BR svccfg (8)
diff --git a/usr/src/man/man8/svcadm.8 b/usr/src/man/man8/svcadm.8
new file mode 100644
index 0000000000..7b8aebdb01
--- /dev/null
+++ b/usr/src/man/man8/svcadm.8
@@ -0,0 +1,554 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 2020 Joyent, Inc.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SVCADM 8 "May 11, 2020"
+.SH NAME
+svcadm \- manipulate service instances
+.SH SYNOPSIS
+.nf
+\fB/usr/sbin/svcadm\fR [\fB-S state\fR] [\fB-v\fR] [\fB-Z\fR | \fB-z\fR \fIzone\fR] enable [\fB-rst\fR]
+ [{\fIFMRI\fR | \fIpattern\fR}...]
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/svcadm\fR [\fB-S state\fR] [\fB-v\fR] [\fB-Z\fR | \fB-z\fR \fIzone\fR] disable
+ [\fB-c\fR \fIcomment\fR] [\fB-st\fR] [{\fIFMRI\fR | \fIpattern\fR}...]
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/svcadm\fR [\fB-S state\fR] [\fB-v\fR] [\fB-Z\fR | \fB-z\fR \fIzone\fR] restart [\fB-d\fR]
+ [{\fIFMRI\fR | \fIpattern\fR}...]
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/svcadm\fR [\fB-S state\fR] [\fB-v\fR] [\fB-Z\fR | \fB-z\fR \fIzone\fR] refresh
+ [{\fIFMRI\fR | \fIpattern\fR}...]
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/svcadm\fR [\fB-S state\fR] [\fB-v\fR] [\fB-Z\fR | \fB-z\fR \fIzone\fR] clear
+ [{\fIFMRI\fR | \fIpattern\fR}...]
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/svcadm\fR [\fB-S state\fR] [\fB-v\fR] [\fB-Z\fR | \fB-z\fR \fIzone\fR] mark [\fB-It] \fIinstance_state\fR
+ [{\fIFMRI\fR | \fIpattern\fR}...]
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/svcadm\fR [\fB-v\fR] milestone [\fB-d\fR] \fImilestone_FMRI\fR
+.fi
+
+.SH DESCRIPTION
+\fBsvcadm\fR issues requests for actions on services executing within the
+service management facility (see \fBsmf\fR(7)). Actions for a service are
+carried out by its assigned service restarter agent. The default service
+restarter is \fBsvc.startd\fR (see \fBsvc.startd\fR(8)).
+.SH OPTIONS
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB-S\fR \fIstate\fR
+.ad
+.RS 20n
+For the subcommands which normally operate on explicit \fIFMRI\fRs or an
+\fIFMRI\fR pattern, the \fB-S\fR option can be used to select all \fIFMRI\fRs
+in the given state.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.RS 20n
+Print actions verbosely to standard output.
+.RE
+
+.sp
+.ne 2
+.na
+\fB-Z\fR
+.ad
+.RS 20n
+Administer services in all zones. This option is only applicable
+from the global zone, see \fBzones\fR(7).
+.RE
+
+.sp
+.ne 2
+.na
+\fB-z\fR \fIzone\fR
+.ad
+.RS 20n
+Administer services in the specified zone. This option is only applicable
+from the global zone, see \fBzones\fR(7).
+.RE
+
+.SH SUBCOMMANDS
+.SS "Common Operations"
+The subcommands listed below are used during the typical administration of a
+service instance.
+.sp
+.LP
+For subcommands taking one or more operands, if the operand specifies a service
+(instead of a service instance), and that service has only a single instance,
+\fBsvcadm\fR operates on that instance. If an abbreviated \fIFMRI\fR (a fault
+management resource identifier) matches more than one service or instance, a
+warning message is displayed and that operand is ignored.
+If a pattern matches more than one service or instance, the subcommand is
+applied to all matches. See \fBsmf\fR(7).
+.sp
+.LP
+In the case that the service has more than one instance, \fBsvcadm\fR return a
+non-zero exit status.
+.sp
+.ne 2
+.na
+\fB\fBenable\fR \fB[\fR\fB-rst\fR\fB]\fR {\fIFMRI\fR | \fIpattern\fR}...\fR
+.ad
+.sp .6
+.RS 4n
+Enables the service instances specified by the operands. For each service
+instance, the assigned restarter will try to bring it to the online state. This
+action requires permission to modify the "general" property group of the
+service instance (see \fBsmf_security\fR(7)).
+.sp
+If the \fB-r\fR option is specified, \fBsvcadm\fR enables each service instance
+and recursively enables its dependencies.
+.sp
+If the \fB-s\fR option is specified, \fBsvcadm\fR enables each service instance
+and then waits for each service instance to enter the \fBonline\fR or
+\fBdegraded\fR state. \fBsvcadm\fR will return early if it determines that the
+service cannot reach these states without administrator intervention.
+.sp
+If the \fB-t\fR option is specified, \fBsvcadm\fR temporarily enables each
+service instance. Temporary enable only lasts until reboot. This action
+requires permission to modify the "restarter_actions" property group of the
+service instance (see \fBsmf_security\fR(7)). By default, \fBenable\fR is
+persistent across reboot.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdisable\fR [\fB-c\fR \fIcomment\fR] [\fB-st\fR] {\fIFMRI\fR | \fIpattern\fR}...\fR
+.ad
+.sp .6
+.RS 4n
+Disables the service instance specified by the operands. For each service
+instance, the assigned restarter will try to bring it to the disabled state.
+This action requires permission to modify the "general" property group of the
+service instance (see \fBsmf_security\fR(7)).
+.sp
+If the \fB-s\fR option is specified, \fBsvcadm\fR disables each service
+instance and then waits for each service instance to enter the disabled state.
+\fBsvcadm\fR will return early if it determines that the service cannot reach
+this state without administrator intervention.
+.sp
+If the \fB-t\fR option is specified, \fBsvcadm\fR temporarily disables each
+service instance. Temporary disable only lasts until reboot. This action
+requires permission to modify the "restarter_actions" property group of the
+service instance (see \fBsmf_security\fR(7)). By default, \fBdisable\fR is
+persistent across reboot.
+.sp
+If the \fB-c\fR option is specified, the given free-form comment is recorded
+in the (temporary) service configuration under the \fBgeneral/comment\fR
+property. This can serve as an administrator reason for disabling the service,
+and is reported by \fBsvcs\fR(1).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrestart\fR [\fB-d\fR] {\fIFMRI\fR | \fIpattern\fR}...\fR
+.ad
+.sp .6
+.RS 4n
+Requests that the service instances specified by the operands be restarted.
+This action requires permission to modify the "restarter_actions" property
+group of the service instance (see \fBsmf_security\fR(7)).
+.sp
+This subcommand can restart only those services that are in the online or
+degraded states, as those states are defined in \fBsmf\fR(7).
+.sp
+If the \fB-d\fR option is specified, the restarter sends a \fBSIGABRT\fR to all
+members of the contract, which should cause a core dump, before restarting
+the service.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrefresh\fR {\fIFMRI\fR | \fIpattern\fR}...\fR
+.ad
+.sp .6
+.RS 4n
+For each service instance specified by the operands, requests that the assigned
+restarter update the service's running configuration snapshot with the values
+from the current configuration. Some of these values take effect immediately
+(for example, dependency changes). Other values do not take effect until the
+next service \fBrestart\fR. See the restarter and service documentation for
+more information.
+.sp
+If the service is managed by \fBsvc.startd\fR(8), the \fBrefresh\fR method
+will be invoked if it exists to request the service reread its own
+configuration. For other restarters, see the restarter documentation.
+.sp
+This action requires permission to modify the "restarter_actions" property
+group of the service instance (see \fBsmf_security\fR(7)).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBclear\fR {\fIFMRI\fR | \fIpattern\fR}...\fR
+.ad
+.sp .6
+.RS 4n
+For each service instance specified by the operands, if the instance is in the
+\fBmaintenance\fR state, signal to the assigned restarter that the service has
+been repaired. If the instance is in the \fBdegraded\fR state, request that the
+assigned restarter take the service to the \fBonline\fR state. This action
+requires permission to modify the "restarter_actions" property group of the
+service instance (see \fBsmf_security\fR(7)).
+.RE
+
+.SS "Exceptional Operations"
+The following subcommands are used for service development and temporary
+administrative manipulation.
+.sp
+.ne 2
+.na
+\fB\fBmark [\fR\fB-It\fR\fB]\fR \fIinstance_state\fR {\fIFMRI\fR |
+\fIpattern\fR}...\fR
+.ad
+.sp .6
+.RS 4n
+If \fIinstance_state\fR is "maintenance", then for each service specified by
+the operands, \fBsvcadm\fR requests that the assigned restarter place the
+service in the \fBmaintenance\fR state. See \fBsvc.startd\fR(8) and
+\fBinetd\fR(8) for a detailed description of the actions taken for each
+restarter.
+.sp
+If \fIinstance_state\fR is "degraded", then for services specified by the
+operands in the online state, \fBsvcadm\fR requests that the restarters
+assigned to the services move them into the \fBdegraded\fR state.
+.sp
+If the \fB-I\fR option is specified, the request is flagged as immediate.
+.sp
+The \fB-t\fR option is only valid for maintenance requests. When this option is
+specified, the request is flagged as temporary, and its effect will only last
+until the next reboot.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmilestone\fR [\fB-d\fR] \fImilestone_FMRI\fR\fR
+.ad
+.sp .6
+.RS 4n
+If \fImilestone_FMRI\fR is the keyword "none", all services other than the
+master restarter, \fBsvc:/system/svc/restarter:default\fR, will be temporarily
+disabled.
+.sp
+If \fImilestone_FMRI\fR is the keyword "all", temporary enable and disable
+requests for all services will be nullified.
+.sp
+If \fImilestone_FMRI\fR is one of the following:
+.sp
+.in +2
+.nf
+svc:/milestone/single-user:default
+svc:/milestone/multi-user:default
+svc:/milestone/multi-user-server:default
+.fi
+.in -2
+.sp
+
+then temporary enable and disable requests for the indicated service and all
+services it depends on (directly or indirectly) will be nullified. All other
+services will be temporarily disabled.
+.sp
+Changing the system's current milestone with the "milestone" subcommand will
+not change the current run level of the system. To change the system's run
+level, invoke \fB/sbin/init\fR directly.
+.sp
+This action requires permission to modify the "options_ovr" property group of
+the \fBsvc:/system/svc/restarter:default\fR service instance (see
+\fBsmf_security\fR(7)).
+.sp
+The \fB-d\fR option immediately changes the milestone to the requested
+milestone, as above. Additionally, it makes the specified milestone the default
+boot milestone, which persists across reboot. The default milestone is defined
+by the \fBoptions/milestone\fR property on the master restarter,
+\fBsvc:/system/svc/restarter:default\fR. If this property is absent, "all" is
+the default. This action requires permission to modify the "options" property
+group of the \fBsvc:/system/svc/restarter:default\fR service instance (see
+\fBsmf_security\fR(7)).
+.RE
+
+.SS "Operands"
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fB\fIFMRI\fR\fR
+.ad
+.RS 11n
+An \fIFMRI\fR that specifies one or more instances. \fIFMRI\fRs can be
+abbreviated by specifying the instance name, or the trailing portion of the
+service name. For example, given the \fIFMRI\fR:
+.sp
+.in +2
+.nf
+svc:/network/smtp:sendmail
+.fi
+.in -2
+.sp
+
+All the following are valid abbreviations:
+.sp
+.in +2
+.nf
+sendmail
+:sendmail
+smtp
+smtp:sendmail
+network/smtp
+.fi
+.in -2
+.sp
+
+While the following are invalid:
+.sp
+.in +2
+.nf
+mail
+network
+network/smt
+.fi
+.in -2
+.sp
+
+If the \fIFMRI\fR specifies a service, then the command applies to all
+instances of that service. Abbreviated forms of \fIFMRI\fRs are unstable, and
+should not be used in scripts or other permanent tools.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIpattern\fR\fR
+.ad
+.RS 11n
+A pattern that is matched against the \fIFMRIs\fR of service instances
+according to the "globbing" rules described by \fBfnmatch\fR(7). If the pattern
+does not begin with "svc:", then "svc:/" is prepended.
+.RE
+
+.sp
+.LP
+If an abbreviated \fIFMRI\fR matches more than one service, a warning message
+is displayed and that operand is ignored.
+If a pattern matches more than one service or instance, the subcommand is
+applied to all matches.
+.SH EXAMPLES
+\fBExample 1 \fRRestarting a Service Instance
+.sp
+.LP
+The following command restarts the \fBNFS\fR server. The full \fIFMRI\fR for
+the default service instance is: \fBsvc:/network/nfs/server:default\fR
+
+.sp
+.LP
+However, you can abbreviate the full \fIFMRI\fR as follows:
+
+.sp
+.in +2
+.nf
+# svcadm restart nfs/server
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRDisabling a service
+.sp
+.LP
+The following command synchronously disables a service, using an abbreviated
+\fIFMRI\fR, and recording a ticket ID as the administrative reason:
+
+.sp
+.in +2
+.nf
+$ svcadm disable -c "OPS-1000" -s http
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fREnabling an Instance and Its Dependent Instances
+.sp
+.LP
+The following command enables the \fBfoo:bar\fR instance, and all instances on
+which it depends:
+
+.sp
+.in +2
+.nf
+$ svcadm enable -r foo:bar
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 4 \fRSynchronously enabling an instance
+.sp
+.LP
+The following command enables the \fBfoo:bar\fR instance. The command will not
+return until the instance comes online or \fBsvcadm\fR determines it is not
+possible for the service to come online.
+
+.sp
+.in +2
+.nf
+$ svcadm enable -s foo:bar
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 5 \fRRestricting and Restoring the Running Services
+.sp
+.LP
+The following command restricts the running services to single user mode:
+
+.sp
+.in +2
+.nf
+# svcadm milestone milestone/single-user
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The following command restores the running services:
+
+.sp
+.in +2
+.nf
+# svcadm milestone all
+.fi
+.in -2
+.sp
+
+.SH EXIT STATUS
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 5n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB1\fR\fR
+.ad
+.RS 5n
+A fatal error occurred. One or more error messages are displayed on standard
+error.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB2\fR\fR
+.ad
+.RS 5n
+Invalid command line options were specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB3\fR\fR
+.ad
+.RS 5n
+\fBsvcadm\fR determined that a service instance that it was waiting for could
+not reach the desired state without administrator intervention due to a problem
+with the service instance itself.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB4\fR\fR
+.ad
+.RS 5n
+\fBsvcadm\fR determined that a service instance that it was waiting for could
+not reach the desired state without administrator intervention due to a problem
+with the service's dependencies.
+.RE
+
+.SH ATTRIBUTES
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability See below.
+.TE
+
+.sp
+.LP
+The interactive output is Uncommitted. The invocation and non-interactive
+output are Committed.
+.SH SEE ALSO
+.BR svcprop (1),
+.BR svcs (1),
+.BR libscf (3LIB),
+.BR contract (5),
+.BR attributes (7),
+.BR smf (7),
+.BR smf_security (7),
+.BR zones (7),
+.BR inetd (8),
+.BR init (8),
+.BR svc.startd (8),
+.BR svccfg (8)
+.SH NOTES
+The amount of time \fBsvcadm\fR will spend waiting for services and their
+dependencies to change state is implicitly limited by their method timeouts.
+For example, a service using the default restarter whose start method hangs
+will be transitioned to the maintenance state when its timeout expires.
+\fBsvcadm\fR will then consider it impossible for this service to come online
+without administrator intervention.
+.sp
+.LP
+Attempts to synchronously enable a service which depends (directly or
+indirectly) on a file may fail with an exit status indicating that dependencies
+are unsatisfied if the caller does not have the privileges necessary to search
+the directory containing the file. This limitation may be removed in a future
+release.
diff --git a/usr/src/man/man8/svccfg.8 b/usr/src/man/man8/svccfg.8
new file mode 100644
index 0000000000..0a78a854b7
--- /dev/null
+++ b/usr/src/man/man8/svccfg.8
@@ -0,0 +1,870 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 2012, Joyent, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SVCCFG 8 "May 13, 2017"
+.SH NAME
+svccfg \- import, export, and modify service configurations
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/svccfg\fR [\fB-v\fR] [\fB-s\fR \fIFMRI\fR]
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/svccfg\fR [\fB-v\fR] [\fB-s\fR \fIFMRI\fR] \fIsubcommand\fR [\fBargs\fR]...
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/svccfg\fR [\fB-v\fR] [\fB-s\fR \fIFMRI\fR] \fB-f\fR \fIcommand-file\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBsvccfg\fR command manipulates data in the service configuration
+repository. \fBsvccfg\fR can be invoked interactively, with an individual
+subcommand, or by specifying a command file that contains a series of
+subcommands.
+.sp
+.LP
+Changes made to an existing service in the repository typically do not take
+effect for that service until the next time the service instance is refreshed.
+See the \fBrefresh\fR subcommand on the \fBsvcadm\fR(8) man page for more
+details.
+.SH OPTIONS
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-f\fR \fIcommand-file\fR\fR
+.ad
+.sp .6
+.RS 4n
+Reads and executes \fBsvccfg\fR subcommands from \fIcommand-file\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR \fIFMRI\fR\fR
+.ad
+.sp .6
+.RS 4n
+Selects the entity indicated by \fIFMRI\fR (a fault management resource
+identifier) before executing any subcommands. See \fBsmf\fR(7).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.sp .6
+.RS 4n
+Verbose.
+.RE
+
+.SH SUBCOMMANDS
+.LP
+Subcommands are divided into the categories specified in the subsections that
+follow.
+.sp
+.LP
+All subcommands that accept \fIFMRI\fRs also accept abbreviated or globbed
+patterns. Instances and services can be abbreviated by specifying the instance
+name, or the trailing portion of the service name. For example, given the
+\fIFMRI\fR:
+.sp
+.in +2
+.nf
+svc:/network/smtp:sendmail
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+All the following are valid abbreviations:
+.sp
+.in +2
+.nf
+sendmail
+:sendmail
+smtp
+smtp:sendmail
+network/smtp
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+While the following are invalid:
+.sp
+.in +2
+.nf
+mail
+network
+network/smt
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Abbreviated forms of \fIFMRI\fRs are unstable, and should not be used in
+scripts or other permanent tools. If a pattern matches more than one instance
+or service, an error message is printed and no action is taken.
+.SS "General Subcommands"
+.ne 2
+.na
+\fB\fBend\fR\fR
+.ad
+.br
+.na
+\fB\fBexit\fR\fR
+.ad
+.br
+.na
+\fB\fBquit\fR\fR
+.ad
+.sp .6
+.RS 4n
+Exits immediately.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrepository\fR \fIrepfile\fR\fR
+.ad
+.sp .6
+.RS 4n
+Uses \fIrepfile\fR as a repository. By default, \fBsvccfg\fR(8) uses the
+system repository.
+.sp
+Use repository only with files from the identical version of Solaris, including
+updates, that you are currently running. Do not use this subcommand with the
+system repository, \fB/etc/svc/repository.db\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBset\fR [\fB-v\fR|\fB-V\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Sets optional behavior. If no options are specified, set displays the options
+currently in effect.
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.sp .6
+.RS 4n
+Turns on verbose mode.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-V\fR\fR
+.ad
+.sp .6
+.RS 4n
+Turns off verbose mode.
+.RE
+
+.RE
+
+.SS "Service Profile Subcommands"
+.ne 2
+.na
+\fB\fBapply\fR [\fB-n\fR] \fIfile\fR\fR
+.ad
+.sp .6
+.RS 4n
+If a \fIfile\fR is a service profile, properties, including general/enabled,
+that are specified in the file are modified in the SMF repository.
+Not-yet-existent properties and property groups will be created. The type of
+the pre-existing property \fBgroups\fR will not be changed by the profile.
+Existing properties (as distinguished from property groups) \fBcan\fR have
+their type changed by the profile. Nonexistent services and instances are
+ignored. Services and instances modified by the profile will be refreshed. If
+\fB-n\fR is specified, the profile is processed and no changes are applied to
+the SMF repository. Any syntax error found will be reported on stderr and an
+exit code of \fB1\fR will be returned. See \fBsmf\fR(7) for a description of
+service profiles. This command requires privileges to modify properties in the
+service and instance. See \fBsmf_security\fR(7) for the privileges required to
+modify properties. If \fIfile\fR is not a service profile, the subcommand
+fails.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBextract\fR [\fI> file\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Prints a service profile which represents the enabled status of the service
+instances in the repository to standard output. The output may be redirected to
+a file.
+.RE
+
+.SS "Service Manifest Subcommands"
+.ne 2
+.na
+\fB\fBarchive\fR [\fB-a\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Dumps a full \fBXML\fR service description for all services, instances, and
+their persistent properties in the repository. This does not include transient
+properties such as service state, and is suitable for a relocatable repository
+backup.
+.sp
+Without the \fB-a\fR option, property groups containing protected information
+(identified by the presence of the \fBread_authorization\fR property\(emsee
+\fBsmf_security\fR(7)) will be archived without their property values. When the
+\fB-a\fR option is specified, all values will be archived. An error results if
+there are insufficient privileges to read these values.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBexport\fR [\fB-a\fR] \fIservice_FMRI\fR [\fI>file\fR]\fR
+.ad
+.sp .6
+.RS 4n
+The service description for the specified service and its instances is written
+to standard output or redirected to the given file. Dependencies with a boolean
+"external" property set to true are omitted in the belief that they were
+created on behalf of another service.
+.sp
+Without the \fB-a\fR option, property groups containing protected information
+(identified by the presence of the \fBread_authorization\fR property\(emsee
+\fBsmf_security\fR(7)) will be exported without their property values. When the
+\fB-a\fR option is specified, all values will be archived. An error results if
+there are insufficient privileges to read these values.
+.sp
+Note that \fBexport\fR requires a service FMRI. To ease the use of arguments
+cut and pasted from other command output, if you specify a complete
+instance FMRI, the entire corresponding service including all instances
+is exported and a warning is issued. If you specify an abbreviation, such as
+\fBapache2\fR or \fBsendmail\fR, that specifies an instance, the command fails.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBimport\fR [\fB-V\fR] \fIfile\fR\fR
+.ad
+.sp .6
+.RS 4n
+If \fIfile\fR is a service manifest, then the services and instances it
+specifies are imported into the repository. According to the file, dependencies
+may be created in other services. See \fBsmf\fR(7) for a description of service
+manifests. See \fBsmf_security\fR(7) for the privileges required to create and
+modify service configurations.
+.sp
+Services and instances in the manifest will be validated against template data
+in the manifest and the repository, and warnings will be issued for all
+template violations. See \fBsmf_template\fR(7) for a description of templates.
+If the \fB-V\fR option is specified, manifests that violate the defined
+templates will fail to import. In interactive invocations of \fBsvccfg\fR,
+\fB-V\fR is the default behavior.
+.sp
+For existing services and instances, properties which have not changed since
+the last \fBimport\fR snapshot was taken are upgraded to those specified by the
+manifest. Conflicts (properties which have been changed both in the repository
+and the manifest) are reported on the standard error stream. \fBsvccfg\fR will
+never upgrade the "general/enabled" and "general/restarter" properties, since
+they represent administrator preference.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBinventory\fR \fIfile\fR\fR
+.ad
+.sp .6
+.RS 4n
+If \fIfile\fR is determined to be a service manifest, then the \fBFMRI\fRs of
+the services and instances the \fIfile\fR describes are printed. For each
+service, the \fBFMRI\fRs of its instances are displayed before the \fBFMRI\fR
+of the service.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrestore\fR\fR
+.ad
+.sp .6
+.RS 4n
+Restores the contents of the repository from a full XML service description
+previously created by the \fBarchive\fR subcommand. If the archive was
+generated without the use of the \fB-a\fR option, the contents of the
+repository following completion of the restore will not include the values of
+any read-protected properties (see \fBsmf_security\fR(7)). If these are
+required, they must be restored manually.
+.sp
+Restoring an archive which is inconsistent with currently installed software
+(including patch revisions) might yield unpredictable results. Therefore, prior
+to restoring an archive, all system and application software, including any
+service manifests, should be restored to the same state it was in at the time
+the archive was made.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBvalidate\fR [\fIfile\fR | \fIfmri\fR]\fR
+.ad
+.sp .6
+.RS 4n
+The \fBvalidate\fR subcommand can operate on a manifest file, an instance FMRI,
+or the current instance or snapshot entity selection. When an argument is
+specified, \fBsvccfg\fR will check to see whether the specified file exists. If
+the file exists, it will be validated. If a file of the specified name does not
+exist, the argument is treated as an FMRI pattern. If a conflict arises between
+a filename and an FMRI, use the \fBsvc:\fR and \fBfile:\fR prefixes to tell
+\fBsvccfg\fR how to interpret the argument.
+.sp
+When you specify a file, the file is processed in a manner similar to
+\fBimport\fR \fB-V\fR, but no changes are made to the repository. If any errors
+are detected, \fBsvccfg\fR displays the errors and exits with a nonzero exit
+status.
+.sp
+For an instance \fIfmri\fR, instance entity selection, or snapshot entity
+selection, the specified instance in its composed form (see "Properties and
+Property Groups" in \fBsmf\fR(7)) will be validated against template data in
+the repository. Instance FMRIs and instance entity selections use the "running"
+snapshot for validation. Warnings will be issued for all template violations.
+See \fBsmf_template\fR(7) for a description of templates.
+.RE
+
+.SS "Entity Selection, Modification, and Navigation Subcommands"
+.LP
+An "entity" refers to a scope, service, or service instance.
+.sp
+.ne 2
+.na
+\fB\fBadd\fR \fIname\fR\fR
+.ad
+.sp .6
+.RS 4n
+A new entity with the given name is created as a child of the current
+selection. See \fBsmf_security\fR(7) for the privileges required to create
+entities.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdelete\fR [\fB-f\fR] \fB{\fIname\fR | \fIfmri\fR}\fR\fR
+.ad
+.sp .6
+.RS 4n
+The named child of the current selection or the entity specified by \fIfmri\fR
+is deleted. Attempts to delete service instances in the "online" or "degraded"
+state will fail unless the \fB-f\fR flag is specified. If a service or service
+instance has a "dependents" property group of type "framework", then for each
+of its properties with type "astring" or "fmri", if the property has a single
+value which names a service or service instance then the dependency property
+group in the indicated service or service instance with the same name as the
+property will be deleted. See \fBsmf_security\fR(7) for the privileges required
+to delete service configurations.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBlist\fR [\fIpattern\fR]\fR
+.ad
+.sp .6
+.RS 4n
+The child entities of the current selection whose names match the glob pattern
+\fIpattern\fR are displayed (see \fBfnmatch\fR(7)). \&':properties' is also
+listed for property-bearing entities, namely services and service instances.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBselect\fR {\fIname\fR | \fIfmri\fR}\fR
+.ad
+.sp .6
+.RS 4n
+If the argument names a child of the current selection, it becomes the current
+selection. Otherwise, the argument is interpreted as an \fBFMRI\fR and the
+entity that the argument specifies becomes the current selection.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBunselect\fR\fR
+.ad
+.sp .6
+.RS 4n
+The parent of the current selection becomes the current selection.
+.RE
+
+.SS "Property Inspection and Modification Subcommands"
+.ne 2
+.na
+\fB\fBaddpg\fR \fIname\fR \fItype\fR [\fIflags\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Adds a property group with the given \fIname\fR and type to the current
+selection. \fIflags\fR is a string of characters which designates the flags
+with which to create the property group. 'P' represents
+\fBSCF_PG_FLAG_NONPERSISTENT\fR (see \fBscf_service_add_pg\fR(3SCF)). See
+\fBsmf_security\fR(7) for the privileges required to create property groups.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBaddpropvalue\fR \fIpg\fR\fI/name\fR [\fItype:\fR] \fIvalue\fR\fR
+.ad
+.sp .6
+.RS 4n
+Adds the given value to a property. If \fItype\fR is given and the property
+exists, then if \fItype\fR does not agree with the property's \fItype\fR, the
+subcommand fails. The values may be enclosed in double-quotes. String values
+containing double-quotes or backslashes must be enclosed by double-quotes and
+the contained double-quotes and backslashes must be quoted by backslashes.
+Nonexistent properties are created, in which case the \fItype\fR specifier must
+be present. See \fBscf_value_create\fR(3SCF) for a list of available property
+types. See \fBsmf_security\fR(7) for the privileges required to modify
+properties. The new value will be appended to the end of the list of property
+values associated with the property.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdelpg\fR \fIname\fR\fR
+.ad
+.sp .6
+.RS 4n
+Deletes the property group \fIname\fR of the current selection. See
+\fBsmf_security\fR(7) for the privileges required to delete property groups.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdelprop\fR \fIpg\fR[\fI/name\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Deletes the named property group or property of the current selection. See
+\fBsmf_security\fR(7) for the privileges required to delete properties.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdelpropvalue\fR \fIpg/name\fR \fIglobpattern\fR\fR
+.ad
+.sp .6
+.RS 4n
+Deletes all values matching the given \fIglob\fR pattern in the named property.
+Succeeds even if no values match. See \fBsmf_security\fR(7) for the privileges
+required to modify properties.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdescribe\fR [\fB-v\fR] [\fB-t\fR] [\fIpropertygroup\fR/\fIproperty\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Describes either the current or the possible settings.
+.sp
+When invoked without arguments, \fBdescribe\fR gives basic descriptions (if
+available) of the currently selected entity and all of its currently set
+property groups and properties. A property group or specific property can be
+queried by specifying either the property group name, or the property group
+name and property name, separated by a slash (\fB/\fR), as an argument.
+.sp
+The \fB-v\fR option gives all information available, including descriptions for
+current settings, constraints, and other possible setting choices.
+.sp
+The \fB-t\fR option shows only the template data for the selection (see
+\fBsmf_template\fR(7)), and does not display the current settings for property
+groups and properties.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBeditprop\fR\fR
+.ad
+.sp .6
+.RS 4n
+Comments of commands to reproduce the property groups and properties of the
+current selection are placed in a temporary file and the program named by the
+\fBEDITOR\fR environment variable is invoked to edit it. Upon completion, the
+commands in the temporary file are executed. The default editor is \fBvi\fR(1).
+See \fBsmf_security\fR(7) for the privileges required to create, modify, or
+delete properties.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBlistpg\fR [\fIpattern\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Displays the names, types, and flags of property groups of the current
+selection. If an argument is given, it is taken as a glob pattern and only
+property groups with names which match the argument are listed.
+.sp
+In interactive mode, a basic description of the property groups is also given.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBlistprop\fR [\fIpattern\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Lists property groups and properties of the current selection. For property
+groups, names, types, and flags are listed. For properties, names (prepended by
+the property group name and a slash (/)), types, and values are listed. See
+\fBscf_value_create\fR(3SCF) for a list of available property types. If an
+argument is supplied it is taken as a glob pattern and only property groups and
+properties with names which match the argument are listed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsetenv\fR [\fB-i\fR | \fB-s\fR] [\fB-m\fR \fImethod_name\fR] \fIenvvar
+value\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets a method environment variable for a service or instance by changing the
+"environment" property in the \fImethod_name\fR property group, if that
+property group has type "method". If \fImethod_name\fR is not specified and the
+\fB-i\fR option is used, the "method_context" property group is used, if an
+instance is currently selected. If the \fB-s\fR option is used and a service is
+currently selected, its "method_context" property group is used. If the
+\fB-s\fR option is used and an instance is currently selected, the
+"method_context" property group of its parent is used. If neither the \fB-i\fR
+option nor the \fB-s\fR option is used, the "start" property group is searched
+for in the currently selected entity and, if an instance is currently selected,
+its parent is also searched. If the "inetd_start" property group is not
+located, it is searched for in a similar manner.
+.sp
+Once the property is located, all values which begin with \fIenvvar\fR followed
+by a "=" are removed, and the value "\fIenvvar\fR=\fIvalue\fR" is added. See
+\fBsmf_security\fR(7) for the privileges required to modify properties.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsetprop\fR \fIpg/name\fR = [\fItype:\fR] \fIvalue\fR\fR
+.ad
+.br
+.na
+\fBsetprop \fIpg/name\fR = [\fItype:\fR] ([\fIvalues ...\fR])\fR
+.ad
+.sp .6
+.RS 4n
+Sets the \fIname\fR property of the \fIpg\fR property group of the current
+selection to the given values of type \fItype\fR. See
+\fBscf_value_create\fR(3SCF) for a list of available property types. If the
+property already exists and the \fItype\fR disagrees with the existing
+\fItype\fR on the property, the subcommand fails. Values may be enclosed in
+double-quotes. String values which contain double-quotes or backslashes must be
+enclosed by double-quotes and the contained double-quotes and backslashes must
+be quoted by backslashes. If the named property does not exist, it is created,
+as long as the type is specified. See \fBsmf_security\fR(7) for the privileges
+required to create or modify properties. Multiple values will be stored in the
+order in which they are specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBunsetenv\fR [\fB-i\fR | \fB-s\fR] [\fB-m\fR \fImethod_name\fR] \fIenvvar
+value\fR\fR
+.ad
+.sp .6
+.RS 4n
+Removes a method environment variable for a service or instance by changing the
+"environment" property in the \fImethod_name\fR property group, if that
+property group has type "method". If \fImethod_name\fR is not specified and the
+\fB-i\fR option is used, the "method_context" property group is used, if an
+instance is currently selected. If the \fB-s\fR option is used and a service is
+currently selected, its "method_context" property group is used. If the
+\fB-s\fR option is used and an instance is currently selected, the
+"method_context" property group of its parent is used. If neither the \fB-i\fR
+option nor the \fB-s\fR option is used, the "start" property group is searched
+for in the currently selected entity and, if an instance is currently selected,
+its parent is also searched. If the "inetd_start" property group is not
+located, it is searched for in a similar manner.
+.sp
+Once the property is located, all values which begin with \fIenvvar\fR followed
+by "=" are removed. See \fBsmf_security\fR(7) for the privileges required to
+modify properties.
+.RE
+
+.SS "Snapshot Navigation and Selection Subcommands"
+.ne 2
+.na
+\fB\fBlistsnap\fR\fR
+.ad
+.sp .6
+.RS 4n
+Displays snapshots available for the currently selected instance.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrevert\fR [\fIsnapshot\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Reverts the properties of the currently selected instance and its service to
+those recorded in the named snapshot. If no argument is given, use the
+currently selected snapshot and deselect it on success. The changed property
+values can be made active via the \fBrefresh\fR subcommand of \fBsvcadm\fR(8).
+See \fBsmf_security\fR(7) for the privileges required to change properties.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBselectsnap\fR [\fIname\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Changes the current snapshot to the one named by \fIname\fR. If no \fIname\fR
+is specified, deselect the currently selected snapshot. Snapshots are
+read-only.
+.RE
+
+.SS "Instance Subcommands"
+.ne 2
+.na
+\fB\fBrefresh\fR\fR
+.ad
+.sp .6
+.RS 4n
+Commit the values from the current configuration to the running snapshot,
+making them available for use by the currently selected instance. If the
+repository subcommand has not been used to select a repository, direct the
+instance's restarter to reread the updated configuration.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRImporting a Service Description
+.sp
+.LP
+The following example imports a service description for the \fBseismic\fR
+service in the XML manifest specified on the command line.
+
+.sp
+.in +2
+.nf
+# \fBsvccfg import /var/svc/manifest/site/seismic.xml\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Note that the manifest must follow the format specified in
+\fBservice_bundle\fR(5).
+
+.LP
+\fBExample 2 \fRExporting a Service Description
+.sp
+.LP
+To export a service description on the local system:
+
+.sp
+.in +2
+.nf
+# \fBsvccfg export dumpadm >/tmp/dump.xml\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRDeleting a Service Instance
+.sp
+.LP
+To delete a service instance:
+
+.sp
+.in +2
+.nf
+# \fBsvccfg delete network/inetd-upgrade:default\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 4 \fRChecking Properties in an Alternate Repository
+.sp
+.LP
+To examine the state of a service's properties after loading an alternate
+repository, use the sequence of commands shown below. One might use such
+commands, for example, to determine whether a service was enabled in a
+particular repository backup.
+
+.sp
+.in +2
+.nf
+# \fBsvccfg\fR
+svc:> \fBrepository /etc/svc/repository-boot\fR
+svc:> \fBselect telnet:default\fR
+svc:/network/telnet:default> \fBlistprop general/enabled\fR
+general/enabled boolean false
+svc:/network/telnet:default> \fBexit\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 5 \fREnabling Debugging
+.sp
+.LP
+To modify \fBLD_PRELOAD\fR for a start method and enable the use of
+\fBlibumem\fR(3LIB) with debugging features active:
+
+.sp
+.in +2
+.nf
+$ \fBsvccfg -s system/service setenv LD_PRELOAD libumem.so\fR
+$ \fBsvccfg -s system/service setenv UMEM_DEBUG default\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 6 \fRUsing \fBdescribe\fR Subcommand
+.sp
+.LP
+The following command illustrates the use of the \fBdescribe\fR subcommand.
+
+.sp
+.in +2
+.nf
+# \fBsvccfg -s console-login describe ttymon\fR
+ttymon application
+ttymon/device astring /dev/console
+ \fBterminal device to be used for the console login prompt\fR
+ttymon/label astring console
+ \fBappropriate entry from /etc/ttydefs\fR
+ ...
+.fi
+.in -2
+.sp
+
+.SH ENVIRONMENTAL VARIABLES
+.ne 2
+.na
+\fBEDITOR\fR
+.ad
+.sp .6
+.RS 4n
+The command to run when the \fBeditprop\fR subcommand is used. The default
+editor is \fBvi\fR(1).
+.RE
+
+.SH EXIT STATUS
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.sp .6
+.RS 4n
+Successful execution.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB1\fR\fR
+.ad
+.sp .6
+.RS 4n
+One or more subcommands resulted in failure. Error messages are written to the
+standard error stream.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB2\fR\fR
+.ad
+.sp .6
+.RS 4n
+Invalid command line options were specified.
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability See below.
+.TE
+
+.sp
+.LP
+The interactive output is Uncommitted. The invocation and non-interactive
+output are Committed.
+.SH SEE ALSO
+.LP
+.BR svcprop (1),
+.BR svcs (1),
+.BR libscf (3LIB),
+.BR libumem (3LIB),
+.BR scf_service_add_pg (3SCF),
+.BR scf_value_create (3SCF),
+.BR contract (5),
+.BR service_bundle (5),
+.BR attributes (7),
+.BR fnmatch (7),
+.BR smf (7),
+.BR smf_method (7),
+.BR smf_security (7),
+.BR smf_template (7),
+.BR svc.configd (8),
+.BR svcadm (8)
diff --git a/usr/src/man/man8/swap.8 b/usr/src/man/man8/swap.8
new file mode 100644
index 0000000000..3a978c5a4c
--- /dev/null
+++ b/usr/src/man/man8/swap.8
@@ -0,0 +1,314 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SWAP 8 "June 13, 2021"
+.SH NAME
+swap \- swap administrative interface
+.SH SYNOPSIS
+.nf
+\fB/usr/sbin/swap\fR \fB-a\fR \fIswapname\fR [\fIswaplow\fR] [\fIswaplen\fR]
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/swap\fR \fB-d\fR \fIswapname\fR [\fIswaplow\fR]
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/swap\fR \fB-l\fR [\fB-h\fR | \fB-k\fR]
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/swap\fR \fB-s\fR [\fB-h\fR]
+.fi
+
+.SH DESCRIPTION
+The \fBswap\fR utility provides a method of adding, deleting, and monitoring
+the system swap areas used by the memory manager.
+.SH OPTIONS
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-a\fR \fIswapname\fR [\fIswaplow\fR] [\fIswaplen\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Add the specified swap area. This option can only be used by the superuser or
+by one who has assumed the Primary Administrator role. \fIswapname\fR is the
+name of the swap area or regular file. For example, on system running a UFS
+root file system, specify a slice, such as \fB/dev/dsk/c0t0d0s1\fR, or a
+regular file for a swap area. On a system running a ZFS file system, specify a
+ZFS volume, such as \fB/dev/zvol/dsk/rpool/swap\fR, for a swap area. Using a
+regular file for swap is not supported on a ZFS file system. In addition, you
+cannot use the same ZFS volume for both the swap area and a dump device when
+the system is running a ZFS root file system.
+.sp
+\fIswaplow\fR is the offset in 512-byte blocks into the file where the swap
+area should begin. \fIswaplen\fR is the desired length of the swap area in
+512-byte blocks. The value of \fIswaplen\fR can not be less than \fB16\fR. For
+example, if \fIn\fR blocks are specified, then (\fIn\fR-1) blocks would be the
+actual swap length. \fIswaplen\fR must be at least one page in length. The size
+of a page of memory can be determined by using the \fBpagesize\fR command. See
+\fBpagesize\fR(1). Since the first page of a swap file is automatically
+skipped, and a swap file needs to be at least one page in length, the minimum
+size should be a multiple of 2 pagesize bytes. The size of a page of memory is
+machine-dependent.
+.sp
+\fIswaplow\fR + \fIswaplen\fR must be less than or equal to the size of the
+swap file. If \fIswaplen\fR is not specified, an area will be added starting at
+\fIswaplow\fR and extending to the end of the designated file. If neither
+\fIswaplow\fR nor \fIswaplen\fR are specified, the whole file will be used
+except for the first page. Swap areas are normally added automatically during
+system startup by the \fB/sbin/swapadd\fR script. This script adds all swap
+areas which have been specified in the \fB/etc/vfstab\fR file; for the syntax
+of these specifications, see \fBvfstab\fR(5).
+.sp
+To use an \fBNFS\fR or local file system \fIswapname\fR, you should first
+create a file using \fBmkfile\fR(8). A local file system swap file can now be
+added to the running system by just running the \fBswap\fR \fB-a\fR command.
+For \fBNFS\fR mounted swap files, the server needs to export the file. Do this
+by performing the following steps:
+.RS +4
+.TP
+1.
+Add the following line to \fB/etc/dfs/dfstab\fR:
+.sp
+.in +2
+.nf
+share -F nfs -o \e
+rw=\fIclientname\fR,root=\fIclientname path-to-swap-file\fR
+.fi
+.in -2
+
+.RE
+.RS +4
+.TP
+2.
+Run \fBshareall\fR(8).
+.RE
+.RS +4
+.TP
+3.
+Have the client add the following line to \fB/etc/vfstab\fR:
+.sp
+.in +2
+.nf
+\fIserver\fR:\fIpath-to-swap-file\fR - \fIlocal-path-to-swap-file\fR nfs \e
+ -\|-\|- \fIlocal-path-to-swap-file\fR -\|- swap -\|-\|-
+.fi
+.in -2
+
+.RE
+.RS +4
+.TP
+4.
+Have the client run \fBmount\fR:
+.sp
+.in +2
+.nf
+# mount \fIlocal-path-to-swap-file\fR
+.fi
+.in -2
+.sp
+
+.RE
+.RS +4
+.TP
+5.
+The client can then run \fBswap\fR \fB-a\fR to add the swap space:
+.sp
+.in +2
+.nf
+# swap -a \fIlocal-path-to-swap-file\fR
+.fi
+.in -2
+.sp
+
+.RE
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-d\fR \fIswapname\fR\fR
+.ad
+.sp .6
+.RS 4n
+Delete the specified swap area. This option can only be used by the super-user.
+\fIswapname\fR is the name of the swap file: for example,
+\fB/dev/dsk/c0t0d0s1\fR or a regular file. \fIswaplow\fR is the offset in
+512-byte blocks into the swap area to be deleted. If \fIswaplow\fR is not
+specified, the area will be deleted starting at the second page. When the
+command completes, swap blocks can no longer be allocated from this area and
+all swap blocks previously in use in this swap area have been moved to other
+swap areas.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-h\fR\fR
+.ad
+.sp .6
+.RS 4n
+All sizes are scaled to a human readable format. Scaling is done by
+repetitively dividing by 1024.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-k\fR\fR
+.ad
+.sp .6
+.RS 4n
+Write the files sizes in units of 1024 bytes.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR\fR
+.ad
+.sp .6
+.RS 4n
+List the status of all the swap areas. The output has five columns:
+.sp
+.ne 2
+.na
+\fB\fBpath\fR\fR
+.ad
+.sp .6
+.RS 4n
+The path name for the swap area.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdev\fR\fR
+.ad
+.sp .6
+.RS 4n
+The major/minor device number in decimal if it is a block special device;
+zeroes otherwise.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBswaplo\fR\fR
+.ad
+.sp .6
+.RS 4n
+The \fIswaplow\fR value for the area in 512-byte blocks.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBblocks\fR\fR
+.ad
+.sp .6
+.RS 4n
+The \fIswaplen\fR value for the area in 512-byte blocks.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfree\fR\fR
+.ad
+.sp .6
+.RS 4n
+The number of 512-byte blocks in this area that are not currently allocated.
+.RE
+
+The list does not include swap space in the form of physical memory because
+this space is not associated with a particular swap area.
+.sp
+If \fBswap\fR \fB-l\fR is run while \fIswapname\fR is in the process of being
+deleted (by \fBswap\fR \fB-d\fR), the string \fBINDEL\fR will appear in a sixth
+column of the swap stats.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR\fR
+.ad
+.sp .6
+.RS 4n
+Print summary information about total swap space usage and availability:
+.sp
+.ne 2
+.na
+\fB\fBallocated\fR\fR
+.ad
+.sp .6
+.RS 4n
+The total amount of swap space in bytes currently allocated for use as backing
+store.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBreserved\fR\fR
+.ad
+.sp .6
+.RS 4n
+The total amount of swap space in bytes not currently allocated, but claimed by
+memory mappings for possible future use.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBused\fR\fR
+.ad
+.sp .6
+.RS 4n
+The total amount of swap space in bytes that is either allocated or reserved.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBavailable\fR\fR
+.ad
+.sp .6
+.RS 4n
+The total swap space in bytes that is currently available for future
+reservation and allocation.
+.RE
+
+These numbers include swap space from all configured swap areas as listed by
+the \fB-l\fR option, as well as swap space in the form of physical memory.
+.RE
+
+.SH USAGE
+A block device up to 2^63 \(mi1 bytes can be fully utilized for swap.
+.SH ENVIRONMENT VARIABLES
+See \fBenviron\fR(7) for descriptions of the following environment variables
+that affect the execution of \fBswap\fR: \fBLC_CTYPE\fR and \fBLC_MESSAGE\fR.
+.SH SEE ALSO
+.BR pagesize (1),
+.BR getpagesize (3C),
+.BR vfstab (5),
+.BR attributes (7),
+.BR largefile (7),
+.BR mkfile (8),
+.BR shareall (8)
+.SH NOTES
+For information about setting up a swap area with \fBZFS\fR, see the \fIZFS
+Administration Guide\fR.
+.SH WARNINGS
+No check is done to determine if a swap area being added overlaps with an
+existing file system.
diff --git a/usr/src/man/man8/sync.8 b/usr/src/man/man8/sync.8
new file mode 100644
index 0000000000..2c935a7c7d
--- /dev/null
+++ b/usr/src/man/man8/sync.8
@@ -0,0 +1,28 @@
+'\" te
+.\" Copyright 1989 AT&T
+.\" Copyright (c) 1998, Sun Microsystems, Inc. , All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SYNC 8 "Dec 1, 1998"
+.SH NAME
+sync \- update the super block
+.SH SYNOPSIS
+.LP
+.nf
+\fBsync\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBsync\fR executes the \fBsync\fR system primitive. If the system is to be
+stopped, \fBsync\fR must be called to ensure file system integrity. It will
+flush all previously unwritten system buffers out to disk, thus assuring that
+all file modifications up to that point will be saved. See \fBsync\fR(2) for
+details.
+.SH SEE ALSO
+.sp
+.LP
+.BR sync (2),
+.BR attributes (7)
diff --git a/usr/src/man/man8/syncinit.8 b/usr/src/man/man8/syncinit.8
new file mode 100644
index 0000000000..8a4ddc70b4
--- /dev/null
+++ b/usr/src/man/man8/syncinit.8
@@ -0,0 +1,194 @@
+'\" te
+.\" Copyright (c) 1993, Sun Microsystems, Inc.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SYNCINIT 8 "Nov 26, 2017"
+.SH NAME
+syncinit \- set serial line interface operating parameters
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/syncinit\fR \fIdevice\fR
+ [ [\fIbaud_rate\fR] | [\fIkeyword\fR=\fIvalue\fR,]... | [\fIsingle-word\fR \fIoption\fR]]
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBsyncinit\fR utility allows the user to modify some of the hardware
+operating modes common to synchronous serial lines. This can be useful in
+troubleshooting a link, or necessary to the operation of a communications
+package.
+.sp
+.LP
+If run without options, \fBsyncinit\fR reports the options as presently set on
+the port. If options are specified, the new settings are reported after they
+have been made.
+.SH OPTIONS
+.LP
+Options to \fBsyncinit\fR normally take the form of a keyword, followed by an
+equal sign and a value. The exception is that a baud rate may be specified as a
+decimal integer by itself. Keywords must begin with the value shown in the
+options table, but may contain additional letters up to the equal sign. For
+example, \fBloop=\fR and \fBloopback=\fR are equivalent.
+.sp
+.LP
+The following options are supported:
+.sp
+
+.sp
+.TS
+l l l
+l l l .
+\fBKeyword\fR \fBValue\fR \fBEffect\fR
+\fBloop\fR yes T{
+Set the port to operate in \fBinternal loopback\fR mode. The receiver is electrically disconnected from the DCE receive data input and tied to the outgoing transmit data line. Transmit data is available to the DCE. The Digital Phase-Locked Loop (DPLL) may not be used as a clock source in this mode. If no other clocking options have been specified, perform the equivalent of \fBtxc=baud\fR and \fBrxc=baud\fR.
+T}
+ no T{
+Disable internal loopback mode. If no other clocking options have been specified, perform the equivalent of \fBtxc=txc\fR and \fBrxc=rxc\fR.
+T}
+\fBecho\fR yes T{
+Set the port to operate in \fBauto-echo\fR mode. The transmit data output is electrically disconnected from the transmitter and tied to the receive data input. Incoming receive data is still visible. Use of this mode in combination with local loopback mode has no value, and should be rejected by the device driver. The \fBauto-echo\fR mode is useful to make a system become the endpoint of a remote loopback test.
+T}
+ no Disable \fBauto-echo\fR mode.
+\fBnrzi\fR yes T{
+Set the port to operate with \fBNRZI\fR data encoding.
+T}
+ no T{
+Set the port to operate with \fBNRZ\fR data encoding.
+T}
+\fBtxc\fR \fBtxc\fR T{
+Transmit clock source will be the \fBTxC\fR signal (pin 15).
+T}
+ \fBrxc\fR T{
+Transmit clock source will be the \fBRxC\fR signal (pin 17).
+T}
+ \fBbaud \fR T{
+Transmit clock source will be the internal \fBbaud rate generator\fR.
+T}
+ \fBpll\fR T{
+Transmit clock source will be the output of the \fBDPLL\fR circuit.
+T}
+\fBrxc\fR \fBrxc\fR T{
+Receive clock source will be the \fBRxC\fR signal (pin 17).
+T}
+ \fBtxc\fR T{
+Receive clock source will be the \fBTxC\fR signal (pin 15).
+T}
+ \fBbaud\fR T{
+Receive clock source will be the internal \fBbaud rate generator\fR.
+T}
+ \fBpll\fR T{
+Receive clock source will be the output of the \fBDPLL\fR circuit.
+T}
+\fBspeed\fR \fIinteger\fR T{
+Set the baud rate to \fIinteger\fR bits per second.
+T}
+.TE
+
+.sp
+.LP
+There are also several single-word options that set one or more parameters at a
+time:
+.sp
+
+.sp
+.TS
+l l
+l l .
+\fBKeyword\fR \fBEquivalent to Options:\fR
+\fBexternal\fR \fBtxc=txc rxc=rxc loop=no\fR
+\fBsender\fR \fBtxc=baud rxc=rxc loop=no\fR
+\fBinternal\fR \fBtxc=pll rxc=pll loop=no\fR
+\fBstop\fR \fBspeed=0\fR
+.TE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRUsing \fBsyncinit\fR
+.sp
+.LP
+The following command sets the first CPU port to loop internally, using
+internal clocking and operating at 38400 baud:
+
+.sp
+.in +2
+.nf
+example# syncinit zsh0 38400 loop=yes
+device: /dev/zsh ppa: 0
+speed=38400, loopback=yes, echo=no, nrzi=no, txc=baud, rxc=baud
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The following command sets the same port's clocking, local loopback and baud
+rate settings to their default values:
+
+.sp
+.in +2
+.nf
+example# syncinit zsh0 stop loop=no
+device: /dev/zsh ppa: 0
+speed=0, loopback=no, echo=no, nrzi=no, txc=txc, rxc=rxc
+.fi
+.in -2
+.sp
+
+.SH SEE ALSO
+.LP
+.BR Intro (2),
+.BR ioctl (2),
+.BR zsh (4D),
+.BR attributes (7),
+.BR syncloop (8),
+.BR syncstat (8)
+.SH DIAGNOSTICS
+.ne 2
+.na
+\fB\fIdevice\fR\fB missing minor device number\fR\fR
+.ad
+.sp .6
+.RS 4n
+The name \fIdevice\fR does not end in a decimal number that can be used as a
+minor device number.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBbad speed: \fR\fIarg\fR\fR
+.ad
+.sp .6
+.RS 4n
+The string \fIarg\fR that accompanied the \fBspeed=\fR option could not be
+interpreted as a decimal integer.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBBad arg: \fR\fIarg\fR\fR
+.ad
+.sp .6
+.RS 4n
+The string \fIarg\fR did not make sense as an option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBioctl failure code = \fR\fIerrno\fR\fR
+.ad
+.sp .6
+.RS 4n
+An \fBioctl\fR(2) system called failed. The meaning of the value of
+\fIerrno\fR may be found in \fBIntro\fR(2).
+.RE
+
+.SH WARNINGS
+.LP
+Do not use \fBsyncinit\fR on an active serial link, unless needed to resolve
+an error condition. Do not use this command casually or without being aware of
+the consequences.
diff --git a/usr/src/man/man8/syncloop.8 b/usr/src/man/man8/syncloop.8
new file mode 100644
index 0000000000..ccdd76943c
--- /dev/null
+++ b/usr/src/man/man8/syncloop.8
@@ -0,0 +1,231 @@
+'\" te
+.\" Copyright (c) 1993, Sun Microsystems, Inc.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SYNCLOOP 8 "Mar 9, 1993"
+.SH NAME
+syncloop \- synchronous serial loopback test program
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/syncloop\fR [\fB-cdlstv\fR] \fIdevice\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBsyncloop\fR command performs several loopback tests that are useful in
+exercising the various components of a serial communications link.
+.sp
+.LP
+Before running a test, \fBsyncloop\fR opens the designated port and configures
+it according to command line options and the specified test type. It announces
+the names of the devices being used to control the hardware channel, the
+channel number (ppa) corresponding to the \fIdevice\fR argument, and the
+parameters it has set for that channel. It then runs the loopback test in
+three phases.
+.sp
+.LP
+The first phase is to listen on the port for any activity. If no activity is
+seen for at least four seconds, \fBsyncloop\fR proceeds to the next phase.
+Otherwise, the user is informed that the line is active and that the test
+cannot proceed, and the program exits.
+.sp
+.LP
+In the second phase, called the "first-packet" phase, \fBsyncloop\fR attempts
+to send and receive one packet. The program will wait for up to four seconds
+for the returned packet. If no packets are seen after five attempts, the test
+fails with an excoriating message. If a packet is returned, the result is
+compared with the original. If the length and content do not match exactly, the
+test fails.
+.sp
+.LP
+The final phase, known as the "multiple-packet" phase, attempts to send many
+packets through the loop. Because the program has verified the integrity of the
+link in the first-packet phase, the test will not fail after a particular
+number of timeouts. If a packet is not seen after four seconds, a message is
+displayed. Otherwise, a count of the number of packets received is updated on
+the display once per second. If it becomes obvious that the test is not
+receiving packets during this phase, the user may wish to stop the program
+manually. The number and size of the packets sent during this phase is
+determined by default values, or by command line options. Each returned packet
+is compared with its original for length and content. If a mismatch is
+detected, the test fails. The test completes when the required number of
+packets have been sent, regardless of errors.
+.sp
+.LP
+After the multiple-packet phase has completed, the program displays a summary
+of the hardware event statistics for the channel that was tested. The display
+takes the following form:
+.sp
+.in +2
+.nf
+CRC errors Aborts Overruns Underruns In<-Drops-> Out
+ 0 0 0 0 0 0
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+This is followed by an estimated line speed, which is an approximation of the
+bit rate of the line, based on the number of bytes sent and the actual time
+that it took to send them.
+.SH OPTIONS
+.sp
+.LP
+The options for \fBsyncloop\fR are described in the following table:
+.sp
+
+.sp
+.TS
+c c c c
+l l l l .
+\fBOption\fR \fBParameter\fR \fBDefault\fR \fBDescription\fR
+\fB-c\fR \fIpacket_count\fR 100 T{
+Specifies the number of packets to be sent in the multiple-packet phase.
+T}
+\fB-d\fR \fIhex_data_byte\fR \fIrandom\fR T{
+Specifies that each packet will be filled with bytes with the value of \fIhex_data_byte\fR.
+T}
+\fB-l\fR \fIpacket_length\fR 100 T{
+Specifies the length of each packet in bytes.
+T}
+\fB-s\fR \fIline_speed\fR 9600 Bit rate in bits per second.
+\fB-v\fR T{
+Sets verbose mode. If data errors occur, the expected and received data is displayed.
+T}
+\fB-t\fR \fItest_type\fR \fInone\fR T{
+A number, from 1 to 4, that specifies which test to perform. The values for \fItest_type\fR are as follows: \fB1\fR: Internal loopback test. Port loopback is on. Transmit and receive clock sources are internal (baud rate generator). \fB2\fR: External loopback test. Port loopback is off. Transmit and receive clock sources are internal. Requires a loopback plug suitable to the port under test. \fB3\fR: External loopback test. Port loopback is off. Transmit and receive clock sources are external (modem). Requires that one of the local modem, the remote modem, or the remote system be set in a loopback configuration. \fB4\fR: Test using predefined parameters. User defines hardware configuration and may select port parameters using the \fBsyncinit\fR(8) command.
+T}
+.TE
+
+.sp
+.LP
+All numeric options except \fB-d\fR are entered as decimal numbers (for
+example, \fB\fR\fB-s\fR\fB 19200\fR). If you do not provide the \fB-t\fR\fI
+test_type\fR option, \fBsyncloop\fR prompts for it.
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRA sample display of using the \fBsyncloop\fR command.
+.sp
+.LP
+In the following command \fBsyncloop\fR uses a packet length of 512 bytes over
+the first CPU port:
+
+.sp
+.in +2
+.nf
+\fBexample# syncloop \fR\fB-l\fR\fB 512 zsh0\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+In response to the above command, \fBsyncloop\fR prompts you for the test
+option you want.
+
+.sp
+.LP
+The following command performs an internal loopback test on the first CPU port,
+using 5000 packets and a bit rate of 56Kbps:
+
+.sp
+.in +2
+.nf
+\fBexample# syncloop \fR\fB-t\fR\fB 1 \fR\fB-s\fR\fB 56000 \fR\fB-c\fR\fB 5000 zsh0\fR
+.fi
+.in -2
+.sp
+
+.SH SEE ALSO
+.sp
+.LP
+.BR zsh (4D),
+.BR attributes (7),
+.BR syncinit (8),
+.BR syncstat (8)
+.SH DIAGNOSTICS
+.sp
+.ne 2
+.na
+\fB\fIdevice\fR\fB missing minor device number\fR\fR
+.ad
+.sp .6
+.RS 4n
+The name \fIdevice\fR does not end in a decimal number that can be used as a
+minor device number.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBinvalid packet length: \fR\fInnn\fR\fR
+.ad
+.sp .6
+.RS 4n
+The packet length was specified to be less than zero or greater than 4096.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpoll: nothing to read\fR\fR
+.ad
+.sp .6
+.RS 4n
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpoll: nothing to read or write.\fR\fR
+.ad
+.sp .6
+.RS 4n
+The \fBpoll\fR(2) system call indicates that there is no input pending and/or
+that output would be blocked if attempted.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBlen \fR\fIxxx\fR\fB should be \fR\fIyyy\fR\fR
+.ad
+.sp .6
+.RS 4n
+The packet that was sent had a length of \fIyyy\fR, but was received with a
+length of \fIxxx\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fInnn\fR\fB packets lost in outbound queueing\fR\fR
+.ad
+.sp .6
+.RS 4n
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fInnn\fR\fB packets lost in inbound queueing\fR\fR
+.ad
+.sp .6
+.RS 4n
+A discrepancy has been found between the number of packets sent by
+\fBsyncloop\fR and the number of packets the driver counted as transmitted, or
+between the number counted as received and the number read by the program.
+.RE
+
+.SH WARNINGS
+.sp
+.LP
+To allow its tests to run properly, as well as prevent disturbance of normal
+operations, \fBsyncloop\fR should only be run on a port that is not being used
+for any other purpose at that time.
diff --git a/usr/src/man/man8/syncstat.8 b/usr/src/man/man8/syncstat.8
new file mode 100644
index 0000000000..1e42c33713
--- /dev/null
+++ b/usr/src/man/man8/syncstat.8
@@ -0,0 +1,195 @@
+'\" te
+.\" Copyright (c) 1993, Sun Microsystems, Inc.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SYNCSTAT 8 "Mar 9, 1993"
+.SH NAME
+syncstat \- report driver statistics from a synchronous serial link
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/syncstat\fR [\fB-c\fR] \fIdevice\fR [\fIinterval\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBsyncstat\fR command reports the event statistics maintained by a
+synchronous serial device driver. The report may be a single snapshot of the
+accumulated totals, or a series of samples showing incremental changes. Prior
+to these it prints the device name being used to query a particular device
+driver, along with a number indicating the channel number (ppa) under control
+of that driver.
+.sp
+.LP
+Event statistics are maintained by a driver for each physical channel that it
+supports. They are initialized to zero at the time the driver module is loaded
+into the system, which may be either at boot time or when one of the driver's
+entry points is first called.
+.sp
+.LP
+The \fIdevice\fR argument is the name of the serial device as it appears in
+the \fB/dev\fR directory. For example, \fBzsh0\fR specifies the first
+on-board serial device.
+.sp
+.LP
+The following is a breakdown of \fBsyncstat\fR output:
+.sp
+
+.sp
+.TS
+l l
+l l .
+\fBspeed\fR T{
+The line speed the device has been set to operate at. It is the user's responsibility to make this value correspond to the modem clocking speed when clocking is provided by the modem.
+T}
+\fBipkts\fR The total number of input packets.
+\fBopkts\fR The total number of output packets.
+\fBundrun\fR T{
+The number of transmitter underrun errors.
+T}
+\fBovrrun\fR The number of receiver overrun errors.
+\fBabort\fR The number of aborted received frames.
+\fBcrc\fR T{
+The number of received frames with CRC errors.
+T}
+\fBisize\fR T{
+The average size (in bytes) of input packets.
+T}
+\fBosize\fR T{
+The average size (in bytes) of output packets.
+T}
+.TE
+
+.SH OPTIONS
+.sp
+.ne 2
+.na
+\fB\fB-c\fR\fR
+.ad
+.RS 12n
+Clear the accumulated statistics for the device specified. This may be useful
+when it is not desirable to unload a particular driver, or when the driver is
+not capable of being unloaded.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIinterval\fR\fR
+.ad
+.RS 12n
+\fBsyncstat\fR samples the statistics every \fIinterval\fR seconds and reports
+incremental changes. The output reports line utilization for input and output
+in place of average packet sizes. These are the relationships between bytes
+transferred and the baud rate, expressed as percentages. The loop repeats
+indefinitely, with a column heading printed every twenty lines for convenience.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRSample output from the \fBsyncstat\fR command:
+.sp
+.in +2
+.nf
+example# \fBsyncstat zsh0\fR
+
+
+speed ipkts opkts undrun ovrrun abort crc isize osize
+9600 15716 17121 0 0 1 3 98 89
+.fi
+.in -2
+.sp
+
+.sp
+.in +2
+.nf
+example# \fBsyncstat \fR\fB-c\fR\fB zsh0\fR
+
+speed ipkts opkts undrun ovrrun abort crc isize osize
+9600 0 0 0 0 0 0 0 0
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+In the following sample output a new line of output is generated every five
+seconds:
+
+.sp
+.in +2
+.nf
+example# \fBsyncstat zsh0 5\fR
+
+ipkts opkts undrun ovrrun abort crc iutil outil
+12 10 0 0 0 0 5% 4%
+22 60 0 0 0 0 3% 90%
+36 14 0 0 0 1 51% 2%
+.fi
+.in -2
+.sp
+
+.SH SEE ALSO
+.sp
+.LP
+.BR zsh (4D),
+.BR attributes (7),
+.BR syncinit (8),
+.BR syncloop (8)
+.SH DIAGNOSTICS
+.sp
+.ne 2
+.na
+\fB\fBbad interval: \fR\fIarg\fR\fR
+.ad
+.sp .6
+.RS 4n
+The argument \fIarg\fR is expected to be an interval and could not be
+understood.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIdevice\fR\fB missing minor device number\fR\fR
+.ad
+.sp .6
+.RS 4n
+The name \fIdevice\fR does not end in a decimal number that can be used as a
+minor device number.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBbaud rate not set\fR\fR
+.ad
+.sp .6
+.RS 4n
+The \fIinterval\fR option is being used and the baud rate on the device is
+zero. This would cause a divide-by-zero error when computing the line
+utilization statistics.
+.RE
+
+.SH WARNINGS
+.sp
+.LP
+Underrun, overrun, frame-abort, and CRC errors have a variety of causes.
+Communication protocols are typically able to handle such errors and initiate
+recovery of the transmission in which the error occurred. Small numbers of such
+errors are not a significant problem for most protocols. However, because the
+overhead involved in recovering from a link error can be much greater than that
+of normal operation, high error rates can greatly degrade overall link
+throughput. High error rates are often caused by problems in the link hardware,
+such as cables, connectors, interface electronics or telephone lines. They may
+also be related to excessive load on the link or the supporting system.
+.sp
+.LP
+The percentages for input and output line utilization reported when using the
+\fIinterval\fR option may occasionally be reported as slightly greater than
+100% because of inexact sampling times and differences in the accuracy between
+the system clock and the modem clock. If the percentage of use greatly exceeds
+100%, or never exceeds 50%, then the baud rate set for the device probably does
+not reflect the speed of the modem.
diff --git a/usr/src/man/man8/sysdef.8 b/usr/src/man/man8/sysdef.8
new file mode 100644
index 0000000000..f48180ea83
--- /dev/null
+++ b/usr/src/man/man8/sysdef.8
@@ -0,0 +1,163 @@
+'\" te
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SYSDEF 8 "Feb 25, 2009"
+.SH NAME
+sysdef \- output system definition
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/sysdef\fR [\fB-i\fR] [\fB-n\fR \fInamelist\fR]
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/sysdef\fR [\fB-h\fR] [\fB-d\fR] [\fB-i\fR] [\fB-D\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBsysdef\fR utility outputs the current system definition in tabular form.
+It lists all hardware devices, as well as pseudo devices, system devices,
+loadable modules, and the values of selected kernel tunable parameters.
+.sp
+.LP
+It generates the output by analyzing the named bootable operating system file
+(\fInamelist\fR) and extracting the configuration information from it.
+.sp
+.LP
+The default system \fInamelist\fR is \fB/dev/kmem\fR.
+.SH OPTIONS
+.sp
+.ne 2
+.na
+\fB\fB-i\fR\fR
+.ad
+.RS 15n
+Prints the configuration information from \fB/dev/kmem\fR. This is the default
+and only needs to be specified if the configuration information from both
+\fB/dev/kmem\fR and the system file specified with the "\fB-n\fR
+\fInamelist\fR" option is needed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR \fInamelist\fR\fR
+.ad
+.RS 15n
+Specifies a \fInamelist\fR other than the default (\fB/dev/kmem\fR). The
+\fInamelist\fR specified must be a valid bootable operating system.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-h\fR\fR
+.ad
+.RS 15n
+Prints the identifier of the current host in hexadecimal. If \fBsysdef\fR
+\fB-h\fR is executed within a non-global zone and the zone emulates a host
+identifier, then the zone's host identifier is printed. This numeric value is
+not guaranteed to be unique.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-d\fR\fR
+.ad
+.RS 15n
+The output includes the configuration of system peripherals formatted as a
+device tree.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-D\fR\fR
+.ad
+.RS 15n
+For each system peripheral in the device tree, display the name of the device
+driver used to manage the peripheral.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRSample output format
+.sp
+.LP
+The following example displays the format of the \fBsysdef\fR \fB-d\fR output:
+
+.sp
+.in +2
+.nf
+example% \fBsysdef\fR \fB-d\fR
+Node 'SUNW,Ultra-5_10', unit #-1
+ Node 'packages', unit #-1 (no driver)
+ Node 'terminal-emulator', unit #-1 (no driver)
+ Node 'deblocker', unit #-1 (no driver)
+ Node 'obp-tftp', unit #-1 (no driver)
+ Node 'disk-label', unit #-1 (no driver)
+ Node 'SUNW,builtin-drivers', unit #-1 (no driver)
+ Node 'sun-keyboard', unit #-1 (no driver)
+ Node 'ufs-file-system', unit #-1 (no driver)
+ Node 'chosen', unit #-1 (no driver)
+ Node 'openprom', unit #-1 (no driver)
+ Node 'client-services', unit #-1 (no driver)
+ Node 'options', unit #0
+ Node 'aliases', unit #-1 (no driver)
+ Node 'memory', unit #-1 (no driver)
+ Node 'virtual-memory', unit #-1 (no driver)
+ Node 'pci', unit #0
+ Node 'pci', unit #0
+ Node 'ebus', unit #0
+ Node 'auxio', unit #-1 (no driver)
+ Node 'power', unit #0
+ Node 'SUNW,pll', unit #-1 (no driver)
+ Node 'se', unit #0 (no driver)
+ Node 'su', unit #0
+ Node 'su', unit #1
+ Node 'ecpp', unit #-1 (no driver)
+ Node 'fdthree', unit #0
+ Node 'eeprom', unit #-1 (no driver)
+ Node 'flashprom', unit #-1 (no driver)
+ Node 'SUNW,CS4231', unit #0 (no driver)
+ Node 'network', unit #0
+ Node 'SUNW,m64B', unit #0
+ Node 'ide', unit #0
+ Node 'disk', unit #-1 (no driver)
+ Node 'cdrom', unit #-1 (no driver)
+ Node 'sd', unit #1
+ Node 'dad', unit #1
+ Node 'pci', unit #-1 (no driver)
+ Node 'SUNW,UltraSPARC-IIi', unit #-1 (no driver)
+ Node 'pseudo', unit #0
+
+\fI[output truncated]\fR
+.fi
+.in -2
+.sp
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/dev/kmem\fR\fR
+.ad
+.RS 13n
+default operating system image
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR hostid (1),
+.BR nlist (3ELF),
+.BR attributes (7),
+.BR zones (7),
+.BR prtconf (8)
diff --git a/usr/src/man/man8/syseventadm.8 b/usr/src/man/man8/syseventadm.8
new file mode 100644
index 0000000000..853155ccb6
--- /dev/null
+++ b/usr/src/man/man8/syseventadm.8
@@ -0,0 +1,470 @@
+'\" te
+.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SYSEVENTADM 8 "Sep 28, 2005"
+.SH NAME
+syseventadm \- sysevent event specification administration
+.SH SYNOPSIS
+.LP
+.nf
+\fBsyseventadm\fR add [\fB-R\fR \fIrootdir\fR] [\fB-v\fR \fIvendor\fR] [\fB-p\fR \fIpublisher\fR]
+ [\fB-c\fR \fIclass\fR] [\fB-s\fR \fIsubclass\fR] [\fB-u\fR \fIusername\fR] \fIpath\fR [\fIargs\fR]
+.fi
+
+.LP
+.nf
+\fBsyseventadm\fR remove [\fB-R\fR \fIrootdir\fR] [\fB-v\fR \fIvendor\fR] [\fB-p\fR \fIpublisher\fR]
+ [\fB-c\fR \fIclass\fR] [\fB-s\fR \fIsubclass\fR] [\fB-u\fR \fIusername\fR] [\fIpath\fR [\fIargs\fR]]
+.fi
+
+.LP
+.nf
+\fBsyseventadm\fR list [\fB-R\fR \fIrootdir\fR] [\fB-v\fR \fIvendor\fR] [\fB-p\fR \fIpublisher\fR]
+ [\fB-c\fR \fIclass\fR] [\fB-s\fR \fIsubclass\fR] [\fB-u\fR \fIusername\fR] [\fIpath\fR [\fIargs\fR]]
+.fi
+
+.LP
+.nf
+\fBsyseventadm\fR restart
+.fi
+
+.SH DESCRIPTION
+
+.LP
+The \fBsyseventadm\fR command is an administrative front-end to add, remove and
+list \fBsysevent\fR event handlers. You can also restart the sysevent daemon by
+use of the restart command. \fBsyseventadm\fR can only be run by root.
+.sp
+.LP
+The \fBsyseventadm\fR \fBadd\fR command adds a handler for a \fBsysevent\fR
+event specified by at least one of vendor, publisher or class. If \fIclass\fR
+is specified, it may be qualified with a \fIsub-class\fR. Only the values
+specified for \fIvendor\fR, \fIpublisher\fR, \fIclass\fR and \fIsub-class\fR
+when adding the handler are matched against \fBsysevent\fR events to determine
+if the specification matches the event and the handler should be run.
+\fIpath\fR is the full pathname of the command to be run in response to
+matching events, with optional arguments (\fIargs\fR). If username is
+specified, the command is invoked as user \fIusername\fR, otherwise as root.
+.sp
+.LP
+The \fBsyseventadm\fR \fBremove\fR command removes handlers for matching
+sysevent event specifications. Event specifications may be matched by
+specifying at least one of \fIvendor\fR, \fIpublisher\fR, \fIclass\fR,
+\fIusername\fR or \fIpath\fR. If \fIclass\fR is specified, it may be qualified
+with a \fIsub-class\fR. Any of \fIvendor\fR, \fIpublisher\fR, \fIclass\fR,
+\fIsub-class\fR, \fIusername\fR, \fIpath\fR or \fIargs\fR not specified match
+the corresponding fields of all events. Handlers for all matching
+specifications are removed.
+.sp
+.LP
+The \fBsyseventadm\fR \fBlist\fR command lists the handlers for matching
+\fBsysevent\fR event specifications using the same match criteria as the
+\fBremove\fR command but without the requirement that at least one of
+\fIvendor\fR, \fIpublisher\fR, \fIclass\fR, \fIusername\fR or \fIpath\fR be
+specified. With no match criteria, all specifications are listed. The list
+command output format is: [vendor=\fIvendor\fR] [publisher=\fIpublisher\fR]
+[class=\fIclass\fR] [subclass=\fIsubclass\fR] [username=\fIusername\fR]
+\fIpath\fR [\fIargs\fR] where each of \fIclass\fR, \fIsub-class\fR,
+\fIvendor\fR, \fIpublisher\fR and \fIusername\fR is listed only if part of the
+match criteria for the listed specification.
+.sp
+.LP
+The \fBsyseventadm\fR \fBrestart\fR command informs the \fBsyseventd\fR daemon
+to reread the \fBsysevent\fR registry after a change has been made by adding or
+removing one or more \fBsysevent\fR handler specifications.
+.SS "Argument Macro Substitution"
+
+.LP
+The \fBsysevent\fR handling facility provides extensive macro capability for
+constructing the command line arguments to be executed in response to an event.
+Macro expansion applies only to the command line \fIargs\fR specified for an
+event handler, with macros expanded with data from the event itself.
+Pre-defined macros are provided for the event \fIclass\fR, \fIsubclass\fR,
+\fIpublisher\fR and \fIvendor\fR information. Macros not matching one of the
+pre-defined macro names cause the attribute list attached to the event to be
+searched for an attribute of that name, with the value of the matching
+attribute substituted on the command line.
+.sp
+.LP
+Macros are introduced by the \fB$\fR character, with the macro name being the
+following token separated by a SPACE or TAB character. If the macro name is
+embedded in text, it may be delineated by \fB${\fR and \fB}\fR. A \fB\e\fR
+before the \fB$\fR causes macro expansion not to occur.
+.sp
+.ne 2
+.na
+\fB$\fIclass\fR\fR
+.ad
+.RS 14n
+The class string defining the event
+.RE
+
+.sp
+.ne 2
+.na
+\fB$\fIpublisher\fR\fR
+.ad
+.RS 14n
+The publisher string defining the event
+.RE
+
+.sp
+.ne 2
+.na
+\fB$\fIsequence\fR\fR
+.ad
+.RS 14n
+The sequence number of the event.
+.RE
+
+.sp
+.ne 2
+.na
+\fB$\fIsubclass\fR\fR
+.ad
+.RS 14n
+The subclass string defining the event
+.RE
+
+.sp
+.ne 2
+.na
+\fB$\fItimestamp\fR\fR
+.ad
+.RS 14n
+The timestamp of the event.
+.RE
+
+.sp
+.ne 2
+.na
+\fB$\fIvendor\fR\fR
+.ad
+.RS 14n
+The vendor string defining the event
+.RE
+
+.sp
+.LP
+Macro names other than those pre-defined are compared against the attribute
+list provided with the event. An attribute with name matching the macro name
+causes the value of the attribute to be substituted as \fBASCII\fR text on the
+generated command line.
+.sp
+.LP
+Use of a macro for which no attribute with that name is defined, or for which
+multiple attributes with that name are provided, cause an error and the command
+is not invoked.
+.sp
+.LP
+Attributes with signed data types (\fBDATA_TYPE_INT16\fR, \fBDATA_TYPE_INT32\fR
+and \fBDATA_TYPE_INT64\fR) are expanded as decimal digits.
+.sp
+.LP
+Attributes with unsigned data types (\fBDATA_TYPE_BYTE\fR,
+\fBDATA_TYPE_UINT16\fR, \fBDATA_TYPE_UINT32\fR, \fBDATA_TYPE_UINT64\fR and
+\fBDATA_TYPE_HTTIME\fR) are expanded as hexadecimal digits with a \fB0x\fR
+prefix.
+.sp
+.LP
+Attributes with string data type (\fBDATA_TYPE_STRING\fR) are expanded with the
+string data. The data is not quoted. If if it desired that the quoted strings
+be generated on the command line, put quotes around the macro call in the
+arguments.
+.sp
+.LP
+Array types are expanded with each element expanded as defined for that scalar
+type, with a space separating each element substitution.
+.SH OPTIONS
+
+.LP
+The \fBadd\fR, \fBlist\fR and \fBremove\fR subcommands support the following
+options:
+.sp
+.ne 2
+.na
+\fB\fB-c\fR \fIclass\fR\fR
+.ad
+.RS 16n
+Specify the event class, \fIclass\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR \fIpublisher\fR\fR
+.ad
+.RS 16n
+Specify the event publisher, \fIpublisher\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-R\fR \fIrootdir\fR\fR
+.ad
+.RS 16n
+Specify an alternate root path, \fIrootdir\fR.
+.LP
+Note -
+.sp
+.RS 2
+The root file system of any non-global zones must not be referenced with the
+\fB-R\fR option. Doing so might damage the global zone's file system, might
+compromise the security of the global zone, and might damage the non-global
+zone's file system. See \fBzones\fR(7).
+.RE
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR \fIsubclass\fR\fR
+.ad
+.RS 16n
+Specify the event subclass, \fIsubclass\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-u\fR \fIusername\fR\fR
+.ad
+.RS 16n
+Specify the username (\fIusername\fR) to invoke the command.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR \fIvendor\fR\fR
+.ad
+.RS 16n
+Specify the vendor (\fIvendor\fR) that defines the event. Events defined by
+third-party software should specify the company's stock symbol as \fIvendor\fR.
+Sun-defined events use \fBSUNW\fR.
+.RE
+
+.SH OPERANDS
+
+.LP
+The \fBadd\fR, \fBlist\fR and \fBremove\fR subcommands support the following
+options:
+.sp
+.ne 2
+.na
+\fB\fIargs\fR\fR
+.ad
+.RS 8n
+Command arguments
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIpath\fR\fR
+.ad
+.RS 8n
+Full path of command to be run in response to event
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRAdding an Event Handler
+.sp
+.LP
+The following example adds an event handler for an event defined by vendor
+\fBMYCO\fR ("My Company"), class \fBEC_ENV\fR and sub-class \fBESC_ENV_TEMP\fR.
+The command to be run is \fB/opt/MYCOenv/bin/ec_env_temp\fR, with arguments
+being the class name, sub-class name and pathname derived from the event
+attributes. The \fB$\fR characters are preceded by a backslash to circumvent
+shell interpretation. There is no need to restart the service after the change
+since the registry is maintained on \fB$ALTROOT\fR.
+
+.sp
+.in +2
+.nf
+# syseventadm add -R $ALTROOT -v MYCO -c EC_ENV -s ESC_ENV_TEMP \e
+ /opt/MYCOenv/bin/ec_env_temp ${class} ${subclass} ${pathname}
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Note the caveat on the use of the \fB-R\fR option in the description of that
+option, above.
+
+.LP
+\fBExample 2 \fRRemoving an Event Handler
+.sp
+.LP
+The following example removes the event handler added in Example 1.
+
+.sp
+.in +2
+.nf
+# syseventadm remove -R $ALTROOT -v MYCO -c EC_ENV -s ESC_ENV_TEMP \e
+ /opt/MYCOenv/bin/ec_env_temp ${class} ${subclass} ${pathname}
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Note the caveat on the use of the \fB-R\fR option in the description of that
+option, above.
+
+.LP
+\fBExample 3 \fRListing Event Handlers
+.sp
+.LP
+The following example lists all event handlers for events of class
+\fBEC_ENV\fR, subclass \fBESC_ENV_TEMP\fR, as defined by vendor \fBMYCO\fR:
+
+.sp
+.in +2
+.nf
+# syseventadm list -v MYCO -c EC_ENV -s ESC_ENV_TEMP \e
+ vendor=MYCO class=EC_ENV subclass=ESC_ENV_TEMP \e
+ /opt/MYCOenv/bin/ec_env_temp ${class} ${subclass} ${pathname}
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 4 \fRListing Event Handlers
+.sp
+.LP
+The following example lists all event handlers defined by vendor \fBVRTS\fR.
+
+.sp
+.in +2
+.nf
+# syseventadm list -v VRTS
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 5 \fRRemoving Event Handlers
+.sp
+.LP
+The following example removes all event handlers defined by vendor \fBVRTS\fR,
+and restarts service.
+
+.sp
+.in +2
+.nf
+# syseventadm remove -v VRTS
+# syseventadm restart
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 6 \fRListing All Event Handlers Specified to Run a Command
+.sp
+.LP
+The following example lists all event handlers specified to run the command
+\fB/opt/MYCOenv/bin/ec_env_temp\fR:
+
+.sp
+.in +2
+.nf
+# syseventadm list /opt/MYCOenv/bin/ec_env_temp
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 7 \fRRemoving Event Handlers and Restarting Service
+.sp
+.LP
+The following example removes all event handlers specified to run the command
+\fB/opt/MYCOenv/bin/ec_env_temp\fR, and restarts service:
+
+.sp
+.in +2
+.nf
+# syseventadm remove /opt/MYCOenv/bin/ec_env_temp
+# syseventadm restart
+.fi
+.in -2
+.sp
+
+.SH EXIT STATUS
+
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 5n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB1\fR\fR
+.ad
+.RS 5n
+No matching event specification found (remove or list commands only).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB2\fR\fR
+.ad
+.RS 5n
+Incorrect command usage.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB3\fR\fR
+.ad
+.RS 5n
+Permission denied.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB4\fR\fR
+.ad
+.RS 5n
+Command failed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB5\fR\fR
+.ad
+.RS 5n
+Out of memory.
+.RE
+
+.SH SEE ALSO
+
+.LP
+.BR sysevent_post_event (3SYSEVENT),
+.BR attributes (7),
+.BR syseventd (8),
+.BR ddi_log_sysevent (9F)
+.SH NOTES
+
+.LP
+To avoid upgrade problems, packages delivering a sysevent event handler should
+install the event handler by running \fBsyseventadm\fR from the package's
+postinstall script. The event handler can then be removed by running
+\fBsyseventadm\fR from the package's preremove script using the same arguments
+as when added.
diff --git a/usr/src/man/man8/syseventconfd.8 b/usr/src/man/man8/syseventconfd.8
new file mode 100644
index 0000000000..3898e2d560
--- /dev/null
+++ b/usr/src/man/man8/syseventconfd.8
@@ -0,0 +1,81 @@
+'\" te
+.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 2013 Nexenta Systems, Inc. All rights reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SYSEVENTCONFD 8 "Jan 31, 2013"
+.SH NAME
+syseventconfd \- kernel system event command invocation daemon
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/sysevent/syseventconfd\fR [\fB-r\fR \fIrootdir\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBsyseventconfd\fR is the user-level daemon that invokes user-level commands
+in response to kernel system events received from \fBsyseventd\fR(8).
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-r\fR \fIrootdir\fR\fR
+.ad
+.RS 14n
+Cause \fBsyseventconfd\fR to use an alternate root path when creating its door.
+The root path must match the root path used to invoke \fBsyseventd\fR.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/var/run/syseventconfd_door/reg_door\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBsyseventconfd\fR event service door file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/sysevent/modules/sysevent_conf_mod.so\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBsyseventd\fR loadable module (\fBSLM\fR) managing \fBsysevent.conf\fR files
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR svcs (1),
+.BR attributes (7),
+.BR smf (7),
+.BR svcadm (8),
+.BR syseventd (8)
+.SH NOTES
+.sp
+.LP
+The \fBsyseventconfd\fR service is managed by the service management facility,
+\fBsmf\fR(7), under the service identifier:
+.sp
+.in +2
+.nf
+svc:/system/sysevent:default
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Administrative actions on this service, such as enabling, disabling, or
+requesting restart, can be performed using \fBsvcadm\fR(8). The service's
+status can be queried using the \fBsvcs\fR(1) command.
diff --git a/usr/src/man/man8/syseventd.8 b/usr/src/man/man8/syseventd.8
new file mode 100644
index 0000000000..723c4439a5
--- /dev/null
+++ b/usr/src/man/man8/syseventd.8
@@ -0,0 +1,157 @@
+'\" te
+.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 2013 Nexenta Systems, Inc. All rights reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SYSEVENTD 8 "Jan 31, 2013"
+.SH NAME
+syseventd \- kernel system event notification daemon
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/sysevent/syseventd\fR [\fB-d\fR \fIdebug_level\fR] [\fB-r\fR \fIrootdir\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBsyseventd\fR is a user-level daemon that accepts delivery of system event
+buffers from the kernel. Once an event buffer has been delivered to
+\fBsyseventd\fR, it, in turn, attempts to propagate the event to all interested
+end event subscribers.
+.sp
+.LP
+Event subscribers take the form of a \fBsyseventd\fR loadable module
+(\fBSLM\fR). \fBsyseventd\fR passes the event buffer to each of its subscribers
+and in return expects a notification as to the successful or unsuccessful
+delivery attempt.
+.sp
+.LP
+Upon successful delivery of the event buffer to all interested event
+subscribers, \fBsyseventd\fR frees the event buffer from the kernel event
+queue.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-d\fR \fIdebug_level\fR\fR
+.ad
+.RS 18n
+Enable debug mode. Messages are printed to the invoking user's terminal.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-r\fR \fIrootdir\fR\fR
+.ad
+.RS 18n
+Cause \fBsyseventd\fR to use an alternate root path when creating its door and
+lock files. Modules continue to be loaded from the standard module directories.
+.RE
+
+.SH EXIT STATUS
+.sp
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR \fR
+.ad
+.RS 12n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnon-zero\fR\fR
+.ad
+.RS 12n
+An error occurred.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/var/run/syseventd.lock\fR\fR
+.ad
+.sp .6
+.RS 4n
+daemon lock file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/run/sysevent_door\fR \fR
+.ad
+.sp .6
+.RS 4n
+kernel to \fBsyseventd\fR door file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/sysevent/modules\fR \fR
+.ad
+.sp .6
+.RS 4n
+\fBSLM\fR directory repository
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/platform/\fR\fB`\fR\fBuname
+\(emi\fR\fB`\fR\fB/lib/sysevent/modules\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBSLM\fR directory repository
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/platform/\fR\fB`\fR\fBuname
+\(emm\fR\fB`\fR\fB/lib/sysevent/modules\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBSLM\fR directory repository
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR svcs (1),
+.BR attributes (7),
+.BR smf (7),
+.BR svcadm (8),
+.BR syseventconfd (8)
+.SH NOTES
+.sp
+.LP
+The \fBsyseventd\fR service is managed by the service management facility,
+\fBsmf\fR(7), under the service identifier:
+.sp
+.in +2
+.nf
+svc:/system/sysevent:default
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Administrative actions on this service, such as enabling, disabling, or
+requesting restart, can be performed using \fBsvcadm\fR(8). The service's
+status can be queried using the \fBsvcs\fR(1) command.
diff --git a/usr/src/man/man8/syslogd.8 b/usr/src/man/man8/syslogd.8
new file mode 100644
index 0000000000..b9a805fcc7
--- /dev/null
+++ b/usr/src/man/man8/syslogd.8
@@ -0,0 +1,374 @@
+'\" te
+.\" Copyright (c) 2013 Gary Mills
+.\" Copyright (C) 2008, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH SYSLOGD 8 "June 20, 2021"
+.SH NAME
+syslogd \- log system messages
+.SH SYNOPSIS
+.nf
+\fB/usr/sbin/syslogd\fR [\fB-d\fR] [\fB-f\fR \fIconfigfile\fR] [\fB-m\fR \fImarkinterval\fR]
+ [\fB-p\fR \fIpath\fR] [\fB-t\fR | \fB-T\fR]
+.fi
+
+.SH DESCRIPTION
+\fBsyslogd\fR reads and forwards system messages to the appropriate log files
+or users, depending upon the priority of a message and the system facility from
+which it originates. The configuration file \fB/etc/syslog.conf\fR (see
+\fBsyslog.conf\fR(5)) controls where messages are forwarded. \fBsyslogd\fR logs
+a mark (timestamp) message every \fImarkinterval\fR minutes (default \fB20\fR)
+at priority \fBLOG_INFO\fR to the facility whose name is given as \fBmark\fR in
+the \fBsyslog.conf\fR file.
+.sp
+.LP
+A system message consists of a single line of text, which may be prefixed with
+a priority code number enclosed in angle-brackets (\fB<\|>\fR); priorities are
+defined in \fB<sys/syslog.h>\fR\&.
+.sp
+.LP
+\fBsyslogd\fR reads from the \fBSTREAMS\fR log driver, \fB/dev/log\fR, and from
+any transport provider specified in \fB/etc/netconfig\fR,
+\fB/etc/net/transport/hosts\fR, and \fB/etc/net/transport/services\fR.
+.sp
+.LP
+\fBsyslogd\fR reads the configuration file when it starts up, and again
+whenever it receives a \fBHUP\fR signal (see \fBsignal.h\fR(3HEAD), at which
+time it also closes all files it has open, re-reads its configuration file, and
+then opens only the log files that are listed in that file. \fBsyslogd\fR exits
+when it receives a \fBTERM\fR signal.
+.sp
+.LP
+As it starts up, \fBsyslogd\fR creates the file \fB/var/run/syslog.pid\fR, if
+possible, containing its process identifier (\fBPID\fR).
+.sp
+.LP
+If message \fBID\fR generation is enabled (see \fBlog\fR(4D)), each message
+will be preceded by an identifier in the following format: \fB[ID\fR \fImsgid
+facility\fR\fB\&.\fR\fIpriority\fR\fB]\fR. \fImsgid\fR is the message's numeric
+identifier described in \fBmsgid\fR(8). \fIfacility\fR and \fIpriority\fR are
+described in \fBsyslog.conf\fR(5). \fB[ID 123456 kern.notice]\fR is an example
+of an identifier when message \fBID\fR generation is enabled.
+.sp
+.LP
+If the message originated in a loadable kernel module or driver, the kernel
+module's name (for example, \fBufs\fR) will be displayed instead of \fBunix\fR.
+See \fBEXAMPLES\fR for sample output from \fBsyslogd\fR with and without
+message \fBID\fR generation enabled.
+.sp
+.LP
+In an effort to reduce visual clutter, message \fBID\fRs are not displayed when
+writing to the console; message \fBID\fRs are only written to the log file.
+See \fBEXAMPLES\fR.
+.sp
+.LP
+The \fB/etc/default/syslogd\fR file contains the following default parameter
+settings, which are in effect if neither the \fB-t\fR nor \fB-T\fR option is
+selected. See \fBFILES\fR.
+.sp
+.LP
+The recommended way to allow or disallow message logging is through the use of
+the service management facility (\fBsmf\fR(7)) property:
+.sp
+.in +2
+.nf
+svc:/system/system-log/config/log_from_remote
+.fi
+.in -2
+
+.sp
+.LP
+This property specifies whether remote messages are logged.
+\fBlog_from_remote=true\fR is equivalent to the \fB-t\fR command-line option
+and \fBfalse\fR is equivalent to the \fB-T\fR command-line option. The default
+value for \fB-log_from_remote\fR is \fBfalse\fR. See NOTES, below.
+.sp
+.ne 2
+.na
+\fB\fBLOG_FROM_REMOTE\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies whether remote messages are logged. \fBLOG_FROM_REMOTE=NO\fR is
+equivalent to the \fB-t\fR command-line option. The default value for
+\fBLOG_FROM_REMOTE\fR is \fBYES\fR.
+.RE
+
+.SH OPTIONS
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-d\fR\fR
+.ad
+.sp .6
+.RS 4n
+Turn on debugging. This option should only be used interactively in a root
+shell once the system is in multi-user mode. It should \fBnot\fR be used in the
+system start-up scripts, as this will cause the system to hang at the point
+where \fBsyslogd\fR is started.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR \fIconfigfile\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify an alternate configuration file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-m\fR \fImarkinterval\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify an interval, in minutes, between mark messages.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR \fIpath\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify an alternative log device name. The default is \fB/dev/log\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-T\fR\fR
+.ad
+.sp .6
+.RS 4n
+Enable the \fBsyslogd\fR \fBUDP\fR port to turn on logging of remote messages.
+This is the default behavior. See \fBEXAMPLES\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-t\fR\fR
+.ad
+.sp .6
+.RS 4n
+Disable the \fBsyslogd\fR \fBUDP\fR port to turn off logging of remote
+messages. See \fBEXAMPLES\fR.
+.RE
+
+.SH EXAMPLES
+\fBExample 1 \fR\fBsyslogd\fR Output Without Message ID Generation Enabled
+.sp
+.LP
+The following example shows the output from \fBsyslogd\fR when message \fBID\fR
+generation \fBis not\fR enabled:
+
+.sp
+.in +2
+.nf
+Sep 29 21:41:18 cathy unix: alloc /: file system full
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fR\fBsyslogd\fR Output with ID generation Enabled
+.sp
+.LP
+The following example shows the output from \fBsyslogd\fR when message \fBID\fR
+generation \fBis\fR enabled. The message \fBID\fR is displayed when writing to
+log file \fB/var/adm/messages\fR.
+
+.sp
+.in +2
+.nf
+Sep 29 21:41:18 cathy ufs: [ID 845546 kern.notice]
+ alloc /: file system full
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fR\fBsyslogd\fR Output with ID Generation Enabled
+.sp
+.LP
+The following example shows the output from \fBsyslogd\fR when message \fBID\fR
+generation \fBis\fR enabled when writing to the console. Even though message ID
+is enabled, the message \fBID\fR is not displayed at the console.
+
+.sp
+.in +2
+.nf
+Sep 29 21:41:18 cathy ufs: alloc /: file system full
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 4 \fREnabling Acceptance of UDP Messages from Remote Systems
+.sp
+.LP
+The following commands enable \fBsyslogd\fR to accept entries from remote
+systems.
+
+.sp
+.in +2
+.nf
+# \fBsvccfg -s svc:/system/system-log setprop config/log_from_remote = true\fR
+# \fBsvcadm restart svc:/system/system-log\fR
+.fi
+.in -2
+.sp
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/etc/syslog.conf\fR\fR
+.ad
+.sp .6
+.RS 4n
+Configuration file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/run/syslog.pid\fR\fR
+.ad
+.sp .6
+.RS 4n
+Process \fBID\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/default/syslogd\fR\fR
+.ad
+.sp .6
+.RS 4n
+Contains default settings. You can override some of the settings by
+command-line options.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/dev/log\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBSTREAMS\fR log driver
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/netconfig\fR\fR
+.ad
+.sp .6
+.RS 4n
+Transport providers available on the system
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/net/transport/hosts\fR\fR
+.ad
+.sp .6
+.RS 4n
+Network hosts for each transport
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/net/transport/services\fR\fR
+.ad
+.sp .6
+.RS 4n
+Network services for each transport
+.RE
+
+.SH SEE ALSO
+.BR logger (1),
+.BR svcs (1),
+.BR syslog (3C),
+.BR signal.h (3HEAD),
+.BR log (4D),
+.BR syslog.conf (5),
+.BR attributes (7),
+.BR smf (7),
+.BR msgid (8),
+.BR svcadm (8),
+.BR svccfg (8)
+.SH NOTES
+The \fBmark\fR message is a system time stamp, and so it is only defined for
+the system on which \fBsyslogd\fR is running. It can not be forwarded to other
+systems.
+.sp
+.LP
+When \fBsyslogd\fR receives a \fBHUP\fR signal, it attempts to complete
+outputting pending messages, and close all log files to which it is currently
+logging messages. If, for some reason, one (or more) of these files does not
+close within a generous grace period, \fBsyslogd\fR discards the pending
+messages, forcibly closes these files, and starts reconfiguration. If this
+shutdown procedure is disturbed by an unexpected error and \fBsyslogd\fR cannot
+complete reconfiguration, \fBsyslogd\fR sends a mail message to the superuser
+on the current system stating that it has shut down, and exits.
+.sp
+.LP
+Care should be taken to ensure that each window displaying messages forwarded
+by \fBsyslogd\fR (especially console windows) is run in the system default
+locale (which is \fBsyslogd\fR's locale). If this advice is not followed, it is
+possible for a \fBsyslog\fR message to alter the terminal settings for that
+window, possibly even allowing remote execution of arbitrary commands from that
+window.
+.sp
+.LP
+The \fBsyslogd\fR service is managed by the service management facility,
+\fBsmf\fR(7), under the service identifier:
+.sp
+.in +2
+.nf
+ svc:/system/system-log:default
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Administrative actions on this service, such as enabling, disabling, or
+requesting restart, can be performed using \fBsvcadm\fR(8). The service's
+status can be queried using the \fBsvcs\fR(1) command.
+.sp
+.LP
+When \fBsyslogd\fR is started by means of \fBsvcadm\fR(8), if a value is
+specified for \fBLOG_FROM_REMOTE\fR in the \fB/etc/defaults/syslogd\fR file,
+the SMF property \fBsvc:/system/system-log/config/log_from_remote\fR is set to
+correspond to the \fBLOG_FROM_REMOTE\fR value and the
+\fB/etc/default/syslogd\fR file is modified to replace the
+\fBLOG_FROM_REMOTE\fR specification with the following comment:
+.sp
+.in +2
+.nf
+# LOG_FROM_REMOTE is now set using svccfg(8), see syslogd(8).
+.fi
+.in -2
+
+.sp
+.LP
+If neither \fBLOG_FROM_REMOTE\fR nor
+\fBsvc:/system/system-log/config/log_from_remote\fR are defined, the default is
+to log remote messages.
+.sp
+.LP
+On installation, the initial value of
+\fBsvc:/system/system-log/config/log_from_remote\fR is \fBfalse\fR.
diff --git a/usr/src/man/man8/tapes.8 b/usr/src/man/man8/tapes.8
new file mode 100644
index 0000000000..aac8e333f4
--- /dev/null
+++ b/usr/src/man/man8/tapes.8
@@ -0,0 +1,277 @@
+'\" te
+.\" Copyright (c) 2002 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH TAPES 8 "Nov 8, 2002"
+.SH NAME
+tapes \- creates /dev entries for tape drives attached to the system
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/tapes\fR [\fB-r\fR \fIroot_dir\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBdevfsadm\fR(8) is now the preferred command for \fB/dev\fR and
+\fB/devices\fR and should be used instead of \fBtapes\fR.
+.sp
+.LP
+\fBtapes\fR creates symbolic links in the \fB/dev/rmt\fR directory to the
+actual tape device special files under the \fB/devices\fR directory tree.
+\fBtapes\fR searches the kernel device tree to see what tape devices are
+attached to the system. For each equipped tape drive, the following steps are
+performed:
+.RS +4
+.TP
+1.
+The \fB/dev/rmt\fR directory is searched for a \fB/dev/rmt/\fR\fIn\fR entry
+that is a symbolic link to the \fB/devices\fR special node of the current tape
+drive. If one is found, this determines the logical controller number of the
+tape drive.
+.RE
+.RS +4
+.TP
+2.
+The rest of the special devices associated with the drive are checked, and
+incorrect symbolic links are removed and necessary ones added.
+.RE
+.RS +4
+.TP
+3.
+If none are found, a new logical controller number is assigned (the
+lowest-unused number), and new symbolic links are created for all the special
+devices associated with the drive.
+.RE
+.sp
+.LP
+\fBtapes\fR does not remove links to non-existent devices; these must be
+removed by hand.
+.sp
+.LP
+\fBtapes\fR is run each time a reconfiguration-boot is performed, or when
+\fBadd_drv\fR(8) is executed.
+.SS "Notice to Driver Writers"
+.sp
+.LP
+\fBtapes\fR(8) considers all devices with the node type \fBDDI_NT_TAPE\fR to
+be tape devices; these devices must have their minor name created with a
+specific format. The minor name encodes operational modes for the tape device
+and consists of an \fBASCII\fR string of the form [
+\fBl\fR,\fBm\fR,\fBh\fR,\fBc\fR,\fBu\fR ][ \fBb\fR ][ \fBn\fR ].
+.sp
+.LP
+The first character set is used to specify the tape density of the device, and
+are named low (\fBl\fR), medium (\fBm\fR), high (\fBh\fR), compressed
+(\fBc\fR), and ultra (\fBu\fR). These specifiers only express a relative
+density; it is up to the driver to assign specific meanings as needed. For
+example, 9 track tape devices interpret these as actual bits-per-inch
+densities, where \fBl\fR means 800 \fBBPI,\fR \fBm\fR means 1600 \fBBPI ,\fR
+and \fBh\fR means 6250 \fBBPI,\fR whereas 4mm \fBDAT\fR tapes defines \fBl\fR
+as standard format, and \fBm\fR, \fB h\fR, \fBc\fR and \fBu\fR as compressed
+format. Drivers may choose to implement any or all of these format types.
+.sp
+.LP
+During normal tape operation (non-\fBBSD\fR behavior), once an \fBEOF\fR mark
+has been reached, subsequent reads from the tape device return an error. An
+explicit IOCTL must be issued to space over the \fBEOF\fR mark before the next
+file can be read. \fBb\fR instructs the device to observe \fBBSD\fR behavior,
+where reading at \fBEOF\fR will cause the tape device to automatically space
+over the \fBEOF\fR mark and begin reading from the next file.
+.sp
+.LP
+\fBn\fR or no-rewind-on-close instructs the driver to not rewind to the
+beginning of tape when the device is closed. Normal behavior for tape devices
+is to reposition to BOT when closing. See \fBmtio\fR(4I).
+.sp
+.LP
+The minor number for tape devices should be created by encoding the device's
+instance number using the tape macro \fBMTMINOR\fR and ORing in the proper
+combination of density, \fBBSD\fR behavior, and no-rewind flags. See
+\fBmtio\fR(4I).
+.sp
+.LP
+To prevent \fBtapes\fR from attempting to automatically generate links for a
+device, drivers must specify a private node type and refrain from using the
+node type string \fBDDI_NT_TAPE\fR when calling
+\fBddi_create_minor_node\fR(9F).
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-r\fR \fIroot_dir\fR\fR
+.ad
+.RS 15n
+Causes \fBtapes\fR to presume that the \fB/dev/rmt\fR directory tree is found
+under \fIroot_dir\fR, not directly under \fB/\fR.
+.RE
+
+.SH ERRORS
+.sp
+.LP
+If \fBtapes\fR finds entries of a particular logical controller linked to
+different physical controllers, it prints an error message and exits without
+making any changes to the \fB/dev\fR directory, since it cannot determine which
+of the two alternative logical to physical mappings is correct. The links
+should be manually corrected or removed before another reconfiguration boot is
+performed.
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRCreating Tape Device Nodes From Within the Driver's
+\fBattach()\fR Function
+.sp
+.LP
+This example demonstrates creating tape device nodes from within the
+\fBxktape\fR driver's \fBattach\fR(9E) function.
+
+.sp
+.in +2
+.nf
+#include <sys/mtio.h>
+struct tape_minor_info {
+ char *minor_name;
+ int minor_mode;
+};
+/*
+ * create all combinations of logical tapes
+*/
+static struct tape_minor_info example_tape[] = {
+ {"", 0}, /* default tape */
+ {"l", MT_DENSITY1},
+ {"lb", MT_DENSITY1 | MT_BSD},
+ {"lbn", MT_DENSITY1 | MT_BSD | MT_NOREWIND},
+ {"m", MT_DENSITY2},
+ {"mb", MT_DENSITY2 | MT_BSD},
+ {"mbn", MT_DENSITY2 | MT_BSD | MT_NOREWIND},
+ {"h", MT_DENSITY3},
+ {"hb", MT_DENSITY3 | MT_BSD},
+ {"hbn", MT_DENSITY3 | MT_BSD | MT_NOREWIND},
+ {"c", MT_DENSITY4},
+ {"cb", MT_DENSITY4 | MT_BSD},
+ {"cbn", MT_DENSITY4| MT_BSD | MT_NOREWIND},
+ {NULL, 0},
+};
+
+int
+xktapeattach(dev_info_t *dip, ddi_attach_cmd_t cmd)
+{
+ int instance;
+ struct tape_minor_info *mdp;
+ /* other stuff in attach... */
+ instance = ddi_get_instance(dip);
+
+ for (mdp = example_tape; mdp->minor_name != NULL; mdp++) {
+ ddi_create_minor_node(dip, mdp->minor_name, S_IFCHR,
+ (MTMINOR(instance) | mdp->minor_mode), DDI_NT_TAPE, 0);
+ }
+.fi
+.in -2
+
+.sp
+.LP
+Installing the \fBxktape\fR driver on a Sun Fire 4800, with the driver
+controlling a \fBSCSI\fR tape (target 4 attached to an \fBisp\fR(4D) \fBSCSI
+HBA)\fR and performing a reconfiguration-boot creates the following special
+files in \fB/devices\fR.
+
+.sp
+.in +2
+.nf
+# ls -l /devices/ssm@0,0/pci@18,700000/pci@1/SUNW,isptwo@4
+crw-rw-rw- 1 root sys 33,136 Aug 29 00:02 xktape@4,0:
+crw-rw-rw- 1 root sys 33,200 Aug 29 00:02 xktape@4,0:b
+crw-rw-rw- 1 root sys 33,204 Aug 29 00:02 xktape@4,0:bn
+crw-rw-rw- 1 root sys 33,152 Aug 29 00:02 xktape@4,0:c
+crw-rw-rw- 1 root sys 33,216 Aug 29 00:02 xktape@4,0:cb
+crw-rw-rw- 1 root sys 33,220 Aug 29 00:02 xktape@4,0:cbn
+crw-rw-rw- 1 root sys 33,156 Aug 29 00:02 xktape@4,0:cn
+crw-rw-rw- 1 root sys 33,144 Aug 29 00:02 xktape@4,0:h
+crw-rw-rw- 1 root sys 33,208 Aug 29 00:02 xktape@4,0:hb
+crw-rw-rw- 1 root sys 33,212 Aug 29 00:02 xktape@4,0:hbn
+crw-rw-rw- 1 root sys 33,148 Aug 29 00:02 xktape@4,0:hn
+crw-rw-rw- 1 root sys 33,128 Aug 29 00:02 xktape@4,0:l
+crw-rw-rw- 1 root sys 33,192 Aug 29 00:02 xktape@4,0:lb
+crw-rw-rw- 1 root sys 33,196 Aug 29 00:02 xktape@4,0:lbn
+crw-rw-rw- 1 root sys 33,132 Aug 29 00:02 xktape@4,0:ln
+crw-rw-rw- 1 root sys 33,136 Aug 29 00:02 xktape@4,0:m
+crw-rw-rw- 1 root sys 33,200 Aug 29 00:02 xktape@4,0:mb
+crw-rw-rw- 1 root sys 33,204 Aug 29 00:02 xktape@4,0:mbn
+crw-rw-rw- 1 root sys 33,140 Aug 29 00:02 xktape@4,0:mn
+crw-rw-rw- 1 root sys 33,140 Aug 29 00:02 xktape@4,0:n
+.fi
+.in -2
+
+.sp
+.LP
+\fB/dev/rmt\fR will contain the logical tape devices (symbolic links to tape
+devices in \fB/devices\fR).
+
+.sp
+.in +2
+.nf
+# ls -l /dev/rmt
+/dev/rmt/0 -> ../../devices/[....]/xktape@4,0:
+/dev/rmt/0b -> ../../devices/[....]/xktape@4,0:b
+/dev/rmt/0bn -> ../../devices/[....]/xktape@4,0:bn
+/dev/rmt/0c -> ../../devices/[....]/xktape@4,0:c
+/dev/rmt/0cb -> ../../devices/[....]/xktape@4,0:cb
+/dev/rmt/0cbn -> ../../devices/[....]/xktape@4,0:cbn
+/dev/rmt/0cn -> ../../devices/[....]/xktape@4,0:cn
+/dev/rmt/0h -> ../../devices/[....]/xktape@4,0:h
+/dev/rmt/0hb -> ../../devices/[....]/xktape@4,0:hb
+/dev/rmt/0hbn -> ../../devices/[....]/xktape@4,0:hbn
+/dev/rmt/0hn -> ../../devices/[....]/xktape@4,0:hn
+/dev/rmt/0l -> ../../devices/[....]/xktape@4,0:l
+/dev/rmt/0lb -> ../../devices/[....]/xktape@4,0:lb
+/dev/rmt/0lbn -> ../../devices/[....]/xktape@4,0:lbn
+/dev/rmt/0ln -> ../../devices/[....]/xktape@4,0:ln
+/dev/rmt/0m -> ../../devices/[....]/xktape@4,0:m
+/dev/rmt/0mb -> ../../devices/[....]/xktape@4,0:mb
+/dev/rmt/0mbn -> ../../devices/[....]/xktape@4,0:mbn
+/dev/rmt/0mn -> ../../devices/[....]/xktape@4,0:mn
+/dev/rmt/0n -> ../../devices/[....]/xktape@4,0:n
+.fi
+.in -2
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/dev/rmt/*\fR\fR
+.ad
+.RS 14n
+logical tape devices
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/devices/*\fR\fR
+.ad
+.RS 14n
+tape device nodes
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR isp (4D),
+.BR devfs (4FS),
+.BR mtio (4I),
+.BR attributes (7),
+.BR add_drv (8),
+.BR devfsadm (8),
+.BR attach (9E),
+.BR ddi_create_minor_node (9F)
+.sp
+.LP
+\fI\fR
+.SH BUGS
+.sp
+.LP
+\fBtapes\fR silently ignores malformed minor device names.
diff --git a/usr/src/man/man8/tcpd.8 b/usr/src/man/man8/tcpd.8
new file mode 100644
index 0000000000..7d8571fbec
--- /dev/null
+++ b/usr/src/man/man8/tcpd.8
@@ -0,0 +1,115 @@
+'\" t
+.\"
+.\" Modified for Solaris to to add the Solaris stability classification,
+.\" and to add a note about source availability.
+.\"
+.TH TCPD 8 "Sep 15, 2011"
+.SH NAME
+tcpd \- access control facility for internet services
+.SH DESCRIPTION
+.PP
+The \fItcpd\fR program can be set up to monitor incoming requests for
+\fItelnet\fR, \fIfinger\fR, \fIftp\fR, \fIexec\fR, \fIrsh\fR,
+\fIrlogin\fR, \fItftp\fR, \fItalk\fR, \fIcomsat\fR and other services
+that have a one-to-one mapping onto executable files.
+.PP
+The program supports both 4.3BSD-style sockets and System V.4-style
+TLI. Functionality may be limited when the protocol underneath TLI is
+not an internet protocol.
+.PP
+Operation is as follows: whenever a request for service arrives, the
+\fIinetd\fP daemon is tricked into running the \fItcpd\fP program
+instead of the desired server. \fItcpd\fP logs the request and does
+some additional checks. When all is well, \fItcpd\fP runs the
+appropriate server program and goes away.
+.PP
+Optional features are: pattern-based access control, client username
+lookups with the RFC 931 etc. protocol, protection against hosts that
+pretend to have someone elses host name, and protection against hosts
+that pretend to have someone elses network address.
+.SH LIBWRAP INTERFACE
+The same monitoring and access control functionality provided by the
+tcpd standalone program is also available through the libwrap shared
+library interface. Some programs, including the Solaris inetd daemon,
+have been modified to use the libwrap interface and thus do not
+require replacing the real server programs with tcpd. The libwrap
+interface is also more efficient and can be used for inetd internal
+services. See
+.BR inetd (8)
+for more information.
+.SH LOGGING
+Connections that are monitored by
+.I tcpd
+are reported through the \fIsyslog\fR(3) facility. Each record contains
+a time stamp, the client host name and the name of the requested
+service. The information can be useful to detect unwanted activities,
+especially when logfile information from several hosts is merged.
+.PP
+In order to find out where your logs are going, examine the syslog
+configuration file, usually /etc/syslog.conf.
+.SH ACCESS CONTROL
+Optionally,
+.I tcpd
+supports a simple form of access control that is based on pattern
+matching. The access-control software provides hooks for the execution
+of shell commands when a pattern fires. For details, see the
+\fIhosts_access\fR(5) manual page.
+.SH HOST NAME VERIFICATION
+The authentication scheme of some protocols (\fIrlogin, rsh\fR) relies
+on host names. Some implementations believe the host name that they get
+from any random name server; other implementations are more careful but
+use a flawed algorithm.
+.PP
+.I tcpd
+verifies the client host name that is returned by the address->name DNS
+server by looking at the host name and address that are returned by the
+name->address DNS server. If any discrepancy is detected,
+.I tcpd
+concludes that it is dealing with a host that pretends to have someone
+elses host name.
+.PP
+If the sources are compiled with -DPARANOID,
+.I tcpd
+will drop the connection in case of a host name/address mismatch.
+Otherwise, the hostname can be matched with the \fIPARANOID\fR wildcard,
+after which suitable action can be taken.
+.SH HOST ADDRESS SPOOFING
+Optionally,
+.I tcpd
+disables source-routing socket options on every connection that it
+deals with. This will take care of most attacks from hosts that pretend
+to have an address that belongs to someone elses network. UDP services
+do not benefit from this protection. This feature must be turned on
+at compile time.
+.SH RFC 931
+When RFC 931 etc. lookups are enabled (compile-time option) \fItcpd\fR
+will attempt to establish the name of the client user. This will
+succeed only if the client host runs an RFC 931-compliant daemon.
+Client user name lookups will not work for datagram-oriented
+connections, and may cause noticeable delays in the case of connections
+from PCs.
+.PP
+Warning: If the local system runs an RFC 931 server it is important
+that it be configured NOT to use TCP Wrappers, or that TCP Wrappers
+be configured to avoid RFC 931-based access control for this service.
+If you use usernames in the access control files, make sure that you
+have a hosts.allow entry that allows the RFC 931 service (often called
+"identd" or "auth") without any username restrictions. Failure to heed
+this warning can result in two hosts getting in an endless loop of
+consulting each other's identd services.
+.SH EXAMPLES
+.\" Begin Sun update
+.SH ATTRIBUTES
+See
+.BR attributes (7)
+for descriptions of the following attributes:
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+=
+Interface Stability Committed
+.TE
+.\" End Sun update
diff --git a/usr/src/man/man8/tcpdchk.8 b/usr/src/man/man8/tcpdchk.8
new file mode 100644
index 0000000000..29d94914e2
--- /dev/null
+++ b/usr/src/man/man8/tcpdchk.8
@@ -0,0 +1,88 @@
+'\" t
+.\"
+.\" Modified for Solaris to to add the Solaris stability classification,
+.\" and to add a note about source availability.
+.\"
+.TH TCPDCHK 8 "Sep 15, 2011"
+.SH NAME
+tcpdchk \- tcp wrapper configuration checker
+.SH SYNOPSYS
+tcpdchk [-a] [-d] [-i inet_conf] [-v]
+.SH DESCRIPTION
+.PP
+\fItcpdchk\fR examines your tcp wrapper configuration and reports all
+potential and real problems it can find. The program examines the
+\fItcpd\fR access control files (by default, these are
+\fI/etc/hosts.allow\fR and \fI/etc/hosts.deny\fR), and compares the
+entries in these files against entries in the \fIinetd\fR
+network configuration files.
+.PP
+\fItcpdchk\fR reports problems such as non-existent pathnames; services
+that appear in \fItcpd\fR access control rules, but are not controlled
+by \fItcpd\fR; services that should not be wrapped; non-existent host
+names or non-internet address forms; occurrences of host aliases
+instead of official host names; hosts with a name/address conflict;
+inappropriate use of wildcard patterns; inappropriate use of NIS
+netgroups or references to non-existent NIS netgroups; references to
+non-existent options; invalid arguments to options; and so on.
+.PP
+Where possible, \fItcpdchk\fR provides a helpful suggestion to fix the
+problem.
+.SH OPTIONS
+.IP -a
+Report access control rules that permit access without an explicit
+ALLOW keyword. This applies only when the extended access control
+language is enabled (build with -DPROCESS_OPTIONS).
+.IP -d
+Examine \fIhosts.allow\fR and \fIhosts.deny\fR files in the current
+directory instead of the default ones.
+.IP "-i inet_conf"
+Specify this option when \fItcpdchk\fR is unable to find your
+\fIinetd.conf\fR network configuration file, or when
+you suspect that the program uses the wrong one.
+.IP -v
+Display the contents of each access control rule. Daemon lists, client
+lists, shell commands and options are shown in a pretty-printed format;
+this makes it easier for you to spot any discrepancies between what you
+want and what the program understands.
+.SH FILES
+.PP
+The default locations of the \fItcpd\fR access control tables are:
+.PP
+/etc/hosts.allow
+.br
+/etc/hosts.deny
+.SH SEE ALSO
+.na
+.nf
+tcpdmatch(8), explain what tcpd would do in specific cases.
+hosts_access(5), format of the tcpd access control tables.
+hosts_options(5), format of the language extensions.
+inetd.conf(5), format of the inetd control file.
+inetd(8), how to invoke tcpd from inetd using the libwrap library.
+inetadm(8), managing inetd services in the Service Management Framework.
+
+.SH AUTHORS
+.nf
+Wietse Venema (wietse@wzv.win.tue.nl)
+Department of Mathematics and Computing Science
+Eindhoven University of Technology
+Den Dolech 2, P.O. Box 513
+5600 MB Eindhoven, The Netherlands
+.fi
+.\" @(#) tcpdchk.8 1.3 95/01/08 17:00:30
+.\" Begin Sun update
+.SH ATTRIBUTES
+See
+.BR attributes (7)
+for descriptions of the following attributes:
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+=
+Interface Stability Committed
+.TE
+.\" End Sun update
diff --git a/usr/src/man/man8/tcpdmatch.8 b/usr/src/man/man8/tcpdmatch.8
new file mode 100644
index 0000000000..b046398287
--- /dev/null
+++ b/usr/src/man/man8/tcpdmatch.8
@@ -0,0 +1,115 @@
+'\" t
+.\"
+.\" Modified for Solaris to to add the Solaris stability classification,
+.\" and to add a note about source availability.
+.\"
+.TH TCPDMATCH 8 "Sep 15, 2011"
+.SH NAME
+tcpdmatch \- tcp wrapper oracle
+.SH SYNOPSYS
+tcpdmatch [-d] [-i inet_conf] daemon client
+.sp
+tcpdmatch [-d] [-i inet_conf] daemon[@server] [user@]client
+.SH DESCRIPTION
+.PP
+\fItcpdmatch\fR predicts how the tcp wrapper would handle a specific
+request for service. Examples are given below.
+.PP
+The program examines the \fItcpd\fR access control tables (default
+\fI/etc/hosts.allow\fR and \fI/etc/hosts.deny\fR) and prints its
+conclusion. For maximal accuracy, it extracts additional information
+from your \fIinetd\fR network configuration file.
+.PP
+When \fItcpdmatch\fR finds a match in the access control tables, it
+identifies the matched rule. In addition, it displays the optional
+shell commands or options in a pretty-printed format; this makes it
+easier for you to spot any discrepancies between what you want and what
+the program understands.
+.SH ARGUMENTS
+The following two arguments are always required:
+.IP daemon
+A daemon process name. Typically, the last component of a daemon
+executable pathname.
+.IP client
+A host name or network address, or one of the `unknown' or `paranoid'
+wildcard patterns.
+.sp
+When a client host name is specified, \fItcpdmatch\fR gives a
+prediction for each address listed for that client.
+.sp
+When a client address is specified, \fItcpdmatch\fR predicts what
+\fItcpd\fR would do when client name lookup fails.
+.PP
+Optional information specified with the \fIdaemon@server\fR form:
+.IP server
+A host name or network address, or one of the `unknown' or `paranoid'
+wildcard patterns. The default server name is `unknown'.
+.PP
+Optional information specified with the \fIuser@client\fR form:
+.IP user
+A client user identifier. Typically, a login name or a numeric userid.
+The default user name is `unknown'.
+.SH OPTIONS
+.IP -d
+Examine \fIhosts.allow\fR and \fIhosts.deny\fR files in the current
+directory instead of the default ones.
+.IP "-i inet_conf"
+Specify this option when \fItcpdmatch\fR is unable to find your
+\fIinetd.conf\fR network configuration file, or when
+you suspect that the program uses the wrong one.
+.SH EXAMPLES
+To predict how \fItcpd\fR would handle a telnet request from the local
+system:
+.sp
+tcpdmatch in.telnetd localhost
+.PP
+The same request, pretending that hostname lookup failed:
+.sp
+tcpdmatch in.telnetd 127.0.0.1
+.PP
+To predict what tcpd would do when the client name does not match the
+client address:
+.sp
+tcpdmatch in.telnetd paranoid
+.PP
+On some systems, daemon names have no `in.' prefix, or \fItcpdmatch\fR
+may need some help to locate the inetd configuration file.
+.SH FILES
+.PP
+The default locations of the \fItcpd\fR access control tables are:
+.PP
+/etc/hosts.allow
+.br
+/etc/hosts.deny
+.SH SEE ALSO
+.nf
+tcpdchk(8), tcpd configuration checker
+hosts_access(5), format of the tcpd access control tables.
+hosts_options(5), format of the language extensions.
+inetd.conf(5), format of the inetd control file.
+inetd(8), how to invoke tcpd from inetd using the libwrap library.
+inetadm(8), managing inetd services in the Service Management Framework.
+
+.SH AUTHORS
+.nf
+Wietse Venema (wietse@wzv.win.tue.nl)
+Department of Mathematics and Computing Science
+Eindhoven University of Technology
+Den Dolech 2, P.O. Box 513
+5600 MB Eindhoven, The Netherlands
+.\" @(#) tcpdmatch.8 1.5 96/02/11 17:01:35
+.\" Begin Sun update
+.SH ATTRIBUTES
+See
+.BR attributes (7)
+for descriptions of the following attributes:
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+=
+Interface Stability Committed
+.TE
+.\" End Sun update
diff --git a/usr/src/man/man8/th_define.8 b/usr/src/man/man8/th_define.8
new file mode 100644
index 0000000000..f041f80aa2
--- /dev/null
+++ b/usr/src/man/man8/th_define.8
@@ -0,0 +1,953 @@
+'\" te
+.\" Copyright (c) 2001 Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH TH_DEFINE 8 "April 9, 2016"
+.SH NAME
+th_define \- create fault injection test harness error specifications
+.SH SYNOPSIS
+.LP
+.nf
+\fBth_define\fR [\fB-n\fR \fIname\fR \fB-i\fR \fIinstance\fR| \fB-P\fR \fIpath\fR] [\fB-a\fR \fIacc_types\fR]
+ [\fB-r\fR \fIreg_number\fR] [\fB-l\fR \fIoffset\fR [\fIlength\fR]]
+ [\fB-c\fR \fIcount\fR [\fIfailcount\fR]] [\fB-o\fR \fIoperator\fR [\fIoperand\fR]]
+ [\fB-f\fR \fIacc_chk\fR] [\fB-w\fR \fImax_wait_period\fR [\fIreport_interval\fR]]
+.fi
+
+.LP
+.nf
+\fBor\fR
+.fi
+
+.LP
+.nf
+\fBth_define\fR [\fB-n\fR \fIname\fR \fB-i\fR \fIinstance\fR| \fB-P\fR \fIpath\fR]
+ [\fB-a\fR log [\fIacc_types\fR] [\fB-r\fR \fIreg_number\fR] [\fB-l\fR \fIoffset\fR [\fIlength\fR]]]
+ [\fB-c\fR \fIcount\fR [\fIfailcount\fR]] [\fB-s\fR \fIcollect_time\fR] [\fB-p\fR \fIpolicy\fR]
+ [\fB-x\fR \fIflags\fR] [\fB-C\fR \fIcomment_string\fR]
+ [\fB-e\fR \fIfixup_script\fR [\fIargs\fR]]
+.fi
+
+.LP
+.nf
+\fBor\fR
+.fi
+
+.LP
+.nf
+\fBth_define\fR [\fB-h\fR]
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBth_define\fR utility provides an interface to the \fBbus_ops\fR fault
+injection \fBbofi\fR device driver for defining error injection specifications
+(referred to as errdefs). An errdef corresponds to a specification of how to
+corrupt a device driver's accesses to its hardware. The command line arguments
+determine the precise nature of the fault to be injected. If the supplied
+arguments define a consistent errdef, the \fBth_define\fR process will store
+the errdef with the \fBbofi\fR driver and suspend itself until the criteria
+given by the errdef become satisfied (in practice, this will occur when the
+access counts go to zero).
+.sp
+.LP
+You use the \fBth_manage\fR(8) command with the \fBstart\fR option to activate
+the resulting errdef. The effect of \fBth_manage\fR with the \fBstart\fR option
+is that the \fBbofi\fR driver acts upon the errdef by matching the number of
+hardware accesses\(emspecified in \fIcount\fR, that are of the type specified
+in \fIacc_types\fR, made by instance number \fIinstance\fR\(emof the driver
+whose name is \fIname\fR, (or by the driver instance specified by \fIpath\fR)
+to the register set (or DMA handle) specified by \fIreg_number\fR, that lie
+within the range \fIoffset\fR to \fIoffset\fR +\fI length\fR from the beginning
+of the register set or DMA handle. It then applies \fIoperator\fR and
+\fIoperand\fR to the next \fIfailcount\fR matching accesses.
+.sp
+.LP
+If \fIacc_types\fR includes \fBlog\fR, \fBth_define\fR runs in automatic test
+script generation mode, and a set of test scripts (written in the Korn shell)
+is created and placed in a sub-directory of the current directory with the name
+\fB\fI<driver>\fR\&.test.\fI<id>\fR\fR (for example, \fBglm.test.978177106\fR).
+A separate, executable script is generated for each access handle that matches
+the logging criteria. The log of accesses is placed at the top of each script
+as a record of the session. If the current directory is not writable, file
+output is written to standard output. The base name of each test file is the
+driver name, and the extension is a number that discriminates between different
+access handles. A control script (with the same name as the created test
+directory) is generated that will run all the test scripts sequentially.
+.sp
+.LP
+Executing the scripts will install, and then activate, the resulting error
+definitions. Error definitions are activated sequentially and the driver
+instance under test is taken offline and brought back online before each test
+(refer to the \fB-e\fR option for more information). By default, logging
+applies to all \fBPIO\fR accesses, all interrupts, and all DMA accesses to and
+from areas mapped for both reading and writing. You can constrain logging by
+specifying additional \fIacc_types\fR, \fIreg_number\fR, \fIoffset\fR and
+\fIlength\fR. Logging will continue for \fIcount\fR matching accesses, with an
+optional time limit of \fIcollect_time\fR seconds.
+.sp
+.LP
+Either the \fB-n\fR or \fB-P\fR option must be provided. The other options are
+optional. If an option (other than \fB-a\fR) is specified multiple times, only
+the final value for the option is used. If an option is not specified, its
+associated value is set to an appropriate default, which will provide maximal
+error coverage as described below.
+.SH OPTIONS
+.LP
+The following options are available:
+.sp
+.ne 2
+.na
+\fB\fB-n\fR \fIname\fR \fR
+.ad
+.sp .6
+.RS 4n
+Specify the name of the driver to test. (String)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-i\fR\fI instance\fR \fR
+.ad
+.sp .6
+.RS 4n
+Test only the specified driver instance (-1 matches all instances of driver).
+(Numeric)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-P\fR\fI path\fR \fR
+.ad
+.sp .6
+.RS 4n
+Specify the full device path of the driver to test. (String)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-r\fR \fIreg_number\fR \fR
+.ad
+.sp .6
+.RS 4n
+Test only the given register set or DMA handle (-1 matches all register sets
+and DMA handles). (Numeric)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-a\fR\fI acc_types\fR \fR
+.ad
+.sp .6
+.RS 4n
+Only the specified access types will be matched. Valid values for the
+\fIacc_types\fR argument are \fBlog\fR, \fBpio\fR, \fBpio_r\fR, \fBpio_w\fR,
+\fBdma\fR, \fBdma_r\fR, \fBdma_w\fR and \fBintr\fR. Multiple access types,
+separated by spaces, can be specified. The default is to match all hardware
+accesses.
+.sp
+If \fIacc_types\fR is set to \fBlog\fR, logging will match all \fBPIO\fR
+accesses, interrupts and DMA accesses to and from areas mapped for both reading
+and writing. \fBlog\fR can be combined with other \fIacc_types\fR, in which
+case the matching condition for logging will be restricted to the specified
+additional \fIacc_types\fR. Note that \fBdma_r\fR will match only DMA handles
+mapped for reading only; \fBdma_w\fR will match only DMA handles mapped for
+writing only; \fBdma\fR will match only DMA handles mapped for both reading and
+writing.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR \fIoffset \fR\fB[\fR\fIlength\fR\fB]\fR\fR
+.ad
+.sp .6
+.RS 4n
+Constrain the range of qualifying accesses. The \fIoffset\fR and \fIlength\fR
+arguments indicate that any access of the type specified with the \fB-a\fR
+option, to the register set or DMA handle specified with the \fB-r\fR option,
+lie at least \fIoffset\fR bytes into the register set or DMA handle and at most
+\fIoffset\fR + \fIlength\fR bytes into it. The default for \fIoffset\fR is 0.
+The default for \fIlength\fR is the maximum value that can be placed in an
+\fBoffset_t\fR C data type (see \fBtypes.h\fR). Negative values are converted
+into unsigned quantities. Thus, \fB\fR\fBth_define\fR\fB \fR\fB-l\fR 0 \fB-1\fR
+is maximal.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-c\fR \fIcount\fR\fB[\fR\fIfailcount\fR\fB]\fR \fR
+.ad
+.sp .6
+.RS 4n
+Wait for \fIcount\fR number of matching accesses, then apply an operator and
+operand (see the \fB-o\fR option) to the next \fIfailcount\fR number of
+matching accesses. If the access type (see the \fB-a\fR option) includes
+logging, the number of logged accesses is given by \fIcount\fR +
+\fIfailcount\fR - 1. The -1 is required because the last access coincides with
+the first faulting access.
+.sp
+Note that access logging may be combined with error injection if
+\fIfailcount\fR and \fIoperator\fR are nonzero and if the access type includes
+logging and any of the other access types (\fBpio\fR, \fBdma\fR and \fBintr\fR)
+See the description of access types in the definition of the \fB-a\fR option,
+above.
+.sp
+When the \fIcount\fR and \fIfailcount\fR fields reach zero, the status of the
+errdef is reported to standard output. When all active errdefs created by the
+\fBth_define\fR process complete, the process exits. If \fIacc_types\fR
+includes \fBlog\fR, \fIcount\fR determines how many accesses to log. If
+\fIcount\fR is not specified, a default value is used. If \fIfailcount\fR is
+set in this mode, it will simply increase the number of accesses logged by a
+further \fIfailcount\fR - 1.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-o\fR\fI operator \fR\fB[\fR\fIoperand\fR\fB]\fR \fR
+.ad
+.sp .6
+.RS 4n
+For qualifying PIO read and write accesses, the value read from or written to
+the hardware is corrupted according to the value of \fIoperator\fR:
+.sp
+.ne 2
+.na
+\fB\fBEQ\fR\fR
+.ad
+.RS 7n
+\fIoperand\fR is returned to the driver.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBOR\fR\fR
+.ad
+.RS 7n
+\fIoperand\fR is bitwise ORed with the real value.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBAND\fR\fR
+.ad
+.RS 7n
+\fIoperand\fR is bitwise ANDed with the real value.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBXOR\fR\fR
+.ad
+.RS 7n
+\fIoperand\fR is bitwise XORed with the real value.
+.RE
+
+For PIO write accesses, the following operator is allowed:
+.sp
+.ne 2
+.na
+\fB\fBNO\fR\fR
+.ad
+.RS 6n
+Simply ignore the driver's attempt to write to the hardware.
+.RE
+
+Note that a driver performs PIO via the \fBddi_get\fIX\fR()\fR,
+\fBddi_put\fIX\fR()\fR, \fBddi_rep_get\fIX\fR()\fR and
+\fBddi_rep_put\fIX\fR()\fR routines (where \fIX\fR is 8, 16, 32 or 64).
+Accesses made using \fBddi_get\fIX\fR()\fR and \fBddi_put\fIX\fR()\fR are
+treated as a single access, whereas an access made using the
+\fBddi_rep_*\fR(9F) routines are broken down into their respective number of
+accesses, as given by the \fIrepcount\fR parameter to these DDI calls. If the
+access is performed via a DMA handle, \fIoperator\fR and \fIvalue\fR are
+applied to every access that comprises the DMA request. If interference with
+interrupts has been requested then the operator may take any of the following
+values:
+.sp
+.ne 2
+.na
+\fB\fBDELAY\fR\fR
+.ad
+.RS 9n
+After \fIcount\fR accesses (see the \fB-c\fR option), delay delivery of the
+next \fIfailcount\fR number of interrupts for \fIoperand\fR number of
+microseconds.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBLOSE\fR\fR
+.ad
+.RS 9n
+After \fIcount\fR number of interrupts, fail to deliver the next
+\fIfailcount\fR number of real interrupts to the driver.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBEXTRA\fR\fR
+.ad
+.RS 9n
+After \fIcount\fR number of interrupts, start delivering \fIoperand\fR number
+of extra interrupts for the next \fIfailcount\fR number of real interrupts.
+.RE
+
+The default value for \fIoperand\fR and \fIoperator\fR is to corrupt the data
+access by flipping each bit (XOR with -1).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR \fIacc_chk\fR\fR
+.ad
+.sp .6
+.RS 4n
+If the \fIacc_chk\fR parameter is set to 1 or \fBpio\fR, then the driver's
+calls to \fBddi_check_acc_handle\fR(9F) return \fBDDI_FAILURE\fR when the
+access count goes to 1. If the \fIacc_chk\fR parameter is set to 2 or
+\fBdma\fR, then the driver's calls to \fBddi_check_dma_handle\fR(9F) return
+\fBDDI_FAILURE\fR when the access count goes to 1.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-w\fR \fImax_wait_period\fR\fB [\fR\fIreport_interval\fR\fB]\fR \fR
+.ad
+.sp .6
+.RS 4n
+Constrain the period for which an error definition will remain active. The
+option applies only to non-logging errdefs. If an error definition remains
+active for \fImax_wait_period\fR seconds, the test will be aborted. If
+\fIreport_interval\fR is set to a nonzero value, the current status of the
+error definition is reported to standard output every \fIreport_interval\fR
+seconds. The default value is zero. The status of the errdef is reported in
+parsable format (eight fields, each separated by a colon (\fB:\fR) character,
+the last of which is a string enclosed by double quotes and the remaining seven
+fields are integers):
+.sp
+\fIft\fR:\fImt\fR:\fIac\fR:\fIfc\fR:\fIchk\fR:\fIec\fR:\fIs\fR:\fI"message"\fR
+which are defined as follows:
+.sp
+.ne 2
+.na
+\fB\fIft\fR\fR
+.ad
+.RS 13n
+The UTC time when the fault was injected.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fImt\fR\fR
+.ad
+.RS 13n
+The UTC time when the driver reported the fault.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIac\fR\fR
+.ad
+.RS 13n
+The number of remaining non-faulting accesses.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIfc\fR\fR
+.ad
+.RS 13n
+The number of remaining faulting accesses.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIchk\fR\fR
+.ad
+.RS 13n
+The value of the \fIacc_chk\fR field of the errdef.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIec\fR\fR
+.ad
+.RS 13n
+The number of fault reports issued by the driver against this errdef (\fImt\fR
+holds the time of the initial report).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIs\fR\fR
+.ad
+.RS 13n
+The severity level reported by the driver.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fI"message"\fR\fR
+.ad
+.RS 13n
+Textual reason why the driver has reported a fault.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-h\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display the command usage string.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR \fIcollect_time\fR \fR
+.ad
+.sp .6
+.RS 4n
+If \fIacc_types\fR is given with the \fB-a\fR option and includes \fBlog\fR,
+the errdef will log accesses for \fIcollect_time\fR seconds (the default is to
+log until the log becomes full). Note that, if the errdef specification matches
+multiple driver handles, multiple logging errdefs are registered with the
+\fBbofi\fR driver and logging terminates when all logs become full or when
+\fIcollect_time\fR expires or when the associated errdefs are cleared. The
+current state of the log can be checked with the \fBth_manage\fR(8) command,
+using the \fBbroadcast\fR parameter. A log can be terminated by running
+\fBth_manage\fR(8) with the \fBclear_errdefs\fR option or by sending a
+\fBSIGALRM\fR signal to the \fBth_define\fR process. See \fBalarm\fR(2) for the
+semantics of \fBSIGALRM\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR \fIpolicy\fR\fR
+.ad
+.sp .6
+.RS 4n
+Applicable when the \fIacc_types\fR option includes \fBlog\fR. The parameter
+modifies the policy used for converting from logged accesses to errdefs. All
+policies are inclusive:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Use \fBrare\fR to bias error definitions toward rare accesses (default).
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Use \fBoperator\fR to produce a separate error definition for each operator
+type (default).
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Use \fBcommon\fR to bias error definitions toward common accesses.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Use \fBmedian\fR to bias error definitions toward median accesses.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Use \fBmaximal\fR to produce multiple error definitions for duplicate accesses.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Use \fBunbiased\fR to create unbiased error definitions.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Use \fBonebyte\fR, \fBtwobyte\fR, \fBfourbyte\fR, or \fBeightbyte\fR to select
+errdefs corresponding to 1, 2, 4 or 8 byte accesses (if chosen, the
+\fB-x\fR\fBr\fR option is enforced in order to ensure that \fBddi_rep_*()\fR
+calls are decomposed into \fBmultiple single accesses\fR).
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Use \fBmultibyte\fR to create error definitions for multibyte accesses
+performed using \fBddi_rep_get*()\fR and \fBddi_rep_put*()\fR.
+.RE
+Policies can be combined by adding together these options. See the NOTES
+section for further information.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-x\fR \fIflags\fR\fR
+.ad
+.sp .6
+.RS 4n
+Applicable when the \fIacc_types\fR option includes \fBlog\fR. The \fIflags\fR
+parameter modifies the way in which the \fBbofi\fR driver logs accesses. It is
+specified as a string containing any combination of the following letters:
+.sp
+.ne 2
+.na
+\fB\fBw\fR\fR
+.ad
+.RS 5n
+Continuous logging (that is, the log will wrap when full).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBt\fR\fR
+.ad
+.RS 5n
+Timestamp each log entry (access times are in seconds).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBr\fR\fR
+.ad
+.RS 5n
+Log repeated I/O as individual accesses (for example, a \fBddi_rep_get16\fR(9F)
+call which has a repcount of \fIN\fR is logged \fIN\fR times with each
+transaction logged as size 2 bytes. Without this option, the default logging
+behavior is to log this access once only, with a transaction size of twice the
+\fIrepcount\fR).
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-C\fR \fIcomment_string\fR\fR
+.ad
+.sp .6
+.RS 4n
+Applicable when the \fIacc_types\fR option includes \fBlog\fR. It provides a
+comment string to be placed in any generated test scripts. The string must be
+enclosed in double quotes.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-e\fR \fIfixup_script\fR \fB[\fR\fIargs\fR\fB]\fR \fR
+.ad
+.sp .6
+.RS 4n
+Applicable when the \fIacc_types\fR option includes \fBlog\fR. The output of a
+logging errdefs is to generate a test script for each driver access handle. Use
+this option to embed a command in the resulting script before the errors are
+injected. The generated test scripts will take an instance offline and bring it
+back online before injecting errors in order to bring the instance into a known
+fault-free state. The executable \fIfixup_script\fR will be called twice with
+the set of optional \fIargs\fR\(em once just before the instance is taken
+offline and again after the instance has been brought online. The following
+variables are passed into the environment of the called executable:
+.sp
+.ne 2
+.na
+\fB\fBDRIVER_PATH\fR\fR
+.ad
+.RS 22n
+Identifies the device path of the instance.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBDRIVER_INSTANCE\fR\fR
+.ad
+.RS 22n
+Identifies the instance number of the device.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBDRIVER_UNCONFIGURE\fR\fR
+.ad
+.RS 22n
+Has the value 1 when the instance is about to be taken offline.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBDRIVER_CONFIGURE\fR\fR
+.ad
+.RS 22n
+Has the value 1 when the instance has just been brought online.
+.RE
+
+Typically, the executable ensures that the device under test is in a suitable
+state to be taken offline (unconfigured) or in a suitable state for error
+injection (for example configured, error free and servicing a workload). A
+minimal script for a network driver could be:
+.sp
+.in +2
+.nf
+#!/bin/ksh
+
+driver=xyznetdriver
+ifnum=$driver$DRIVER_INSTANCE
+
+if [[ $DRIVER_CONFIGURE = 1 ]]; then
+ ifconfig $ifnum plumb
+ ifconfig $ifnum ...
+ ifworkload start $ifnum
+elif [[ $DRIVER_UNCONFIGURE = 1 ]]; then
+ ifworkload stop $ifnum
+ ifconfig $ifnum down
+ ifconfig $ifnum unplumb
+fi
+exit $?
+.fi
+.in -2
+.sp
+
+The \fB-e\fR option must be the last option on the command line.
+.RE
+
+.sp
+.LP
+If the \fB-a\fR \fBlog\fR option is selected but the \fB-e\fR option is not
+given, a default script is used. This script repeatedly attempts to detach and
+then re-attach the device instance under test.
+.SH EXAMPLES
+.SS "Examples of Error Definitions"
+.LP
+\fBth_define -n foo -i 1 -a log\fR
+.sp
+.LP
+Logs all accesses to all handles used by instance 1 of the \fBfoo\fR driver
+while running the default workload (attaching and detaching the instance). Then
+generates a set of test scripts to inject appropriate errdefs while running
+that default workload.
+.sp
+.LP
+\fBth_define -n foo -i 1 -a log pio\fR
+.sp
+.LP
+Logs PIO accesses to each PIO handle used by instance 1 of the \fBfoo\fR driver
+while running the default workload (attaching and detaching the instance). Then
+generates a set of test scripts to inject appropriate errdefs while running
+that default workload.
+.sp
+.LP
+\fBth_define -n foo -i 1 -p onebyte median -e fixup arg -now\fR
+.sp
+.LP
+Logs all accesses to all handles used by instance 1 of the \fBfoo\fR driver
+while running the workload defined in the fixup script \fBfixup\fR with
+arguments \fBarg\fR and \fB-now\fR. Then generates a set of test scripts to
+inject appropriate errdefs while running that workload. The resulting error
+definitions are requested to focus upon single byte accesses to locations that
+are accessed a \fBmedian\fR number of times with respect to frequency of access
+to I/O addresses.
+.sp
+.LP
+\fBth_define -n se -l 0x20 1 -a pio_r -o OR 0x4 -c 10 1000\fR
+.sp
+.LP
+Simulates a stuck serial chip command by forcing 1000 consecutive read accesses
+made by any instance of the \fBse\fR driver to its command status register,
+thereby returning status busy.
+.sp
+.LP
+\fBth_define -n foo -i 3 -r 1 -a pio_r -c 0 1 -f 1 -o OR 0x100\fR
+.sp
+.LP
+Causes 0x100 to be ORed into the next physical I/O read access from any
+register in register set 1 of instance 3 of the \fBfoo\fR driver. Subsequent
+calls in the driver to \fBddi_check_acc_handle()\fR return \fBDDI_FAILURE\fR.
+.sp
+.LP
+\fBth_define -n foo -i 3 -r 1 -a pio_r -c 0 1 -o OR 0x0\fR
+.sp
+.LP
+Causes 0x0 to be ORed into the next physical I/O read access from any register
+in register set 1 of instance 3 of the \fBfoo\fR driver. This is of course a
+no-op.
+.sp
+.LP
+\fBth_define -n foo -i 3 -r 1 -l 0x8100 1 -a pio_r -c 0 10 -o EQ 0x70003\fR
+.sp
+.LP
+Causes the next ten next physical I/O reads from the register at offset 0x8100
+in register set 1 of instance 3 of the \fBfoo\fR driver to return 0x70003.
+.sp
+.LP
+\fBth_define -n foo -i 3 -r 1 -l 0x8100 1 -a pio_w -c 100 3 -o AND
+0xffffffffffffefff\fR
+.sp
+.LP
+The next 100 physical I/O writes to the register at offset 0x8100 in register
+set 1 of instance 3 of the \fBfoo\fR driver take place as normal. However, on
+each of the three subsequent accesses, the 0x1000 bit will be cleared.
+.sp
+.LP
+\fBth_define -n foo -i 3 -r 1 -l 0x8100 0x10 -a pio_r -c 0 1 -f 1 -o XOR 7\fR
+.sp
+.LP
+Causes the bottom three bits to have their values toggled for the next physical
+I/O read access to registers with offsets in the range 0x8100 to 0x8110 in
+register set 1 of instance 3 of the \fBfoo\fR driver. Subsequent calls in the
+driver to \fBddi_check_acc_handle()\fR return \fBDDI_FAILURE\fR.
+.sp
+.LP
+\fBth_define -n foo -i 3 -a pio_w -c 0 1 -o NO 0\fR
+.sp
+.LP
+Prevents the next physical I/O write access to any register in any register set
+of instance 3 of the \fBfoo\fR driver from going out on the bus.
+.sp
+.LP
+\fBth_define -n foo -i 3 -l 0 8192 -a dma_r -c 0 1 -o OR 7\fR
+.sp
+.LP
+Causes 0x7 to be ORed into each \fBlong long\fR in the first 8192 bytes of the
+next DMA read, using any DMA handle for instance 3 of the \fBfoo\fR driver.
+.sp
+.LP
+\fBth_define -n foo -i 3 -r 2 -l 0 8 -a dma_r -c 0 1 -o OR
+0x7070707070707070\fR
+.sp
+.LP
+Causes 0x70 to be ORed into each byte of the first \fBlong long\fR of the next
+DMA read, using the DMA handle with sequential allocation number 2 for instance
+3 of the \fBfoo\fR driver.
+.sp
+.LP
+\fBth_define -n foo -i 3 -l 256 256 -a dma_w -c 0 1 -f 2 -o OR 7\fR
+.sp
+.LP
+Causes 0x7 to be ORed into each \fBlong long\fR in the range from offset 256 to
+offset 512 of the next DMA write, using any DMA handle for instance 3 of the
+\fBfoo\fR driver. Subsequent calls in the driver to
+\fBddi_check_dma_handle()\fR return \fBDDI_FAILURE\fR.
+.sp
+.LP
+\fBth_define -n foo -i 3 -r 0 -l 0 8 -a dma_w -c 100 3 -o AND
+0xffffffffffffefff\fR
+.sp
+.LP
+The next 100 DMA writes using the DMA handle with sequential allocation number
+0 for instance 3 of the \fBfoo\fR driver take place as normal. However, on each
+of the three subsequent accesses, the 0x1000 bit will be cleared in the first
+\fBlong long\fR of the transfer.
+.sp
+.LP
+\fBth_define -n foo -i 3 -a intr -c 0 6 -o LOSE 0\fR
+.sp
+.LP
+Causes the next six interrupts for instance 3 of the \fBfoo\fR driver to be
+lost.
+.sp
+.LP
+\fBth_define -n foo -i 3 -a intr -c 30 1 -o EXTRA 10\fR
+.sp
+.LP
+When the thirty-first subsequent interrupt for instance 3 of the \fBfoo\fR
+driver occurs, a further ten interrupts are also generated.
+.sp
+.LP
+\fBth_define -n foo -i 3 -a intr -c 0 1 -o DELAY 1024\fR
+.sp
+.LP
+Causes the next interrupt for instance 3 of the \fBfoo\fR driver to be delayed
+by 1024 microseconds.
+.SH NOTES
+.LP
+The policy option in the \fBth_define\fR \fB-p\fR syntax determines how a set
+of logged accesses will be converted into the set of error definitions. Each
+logged access will be matched against the chosen policies to determine whether
+an error definition should be created based on the access.
+.sp
+.LP
+Any number of policy options can be combined to modify the generated error
+definitions.
+.SS "Bytewise Policies"
+.LP
+These select particular I/O transfer sizes. Specifying a byte policy will
+exclude other byte policies that have not been chosen. If none of the byte type
+policies is selected, all transfer sizes are treated equally. Otherwise, only
+those specified transfer sizes will be selected.
+.sp
+.ne 2
+.na
+\fB\fBonebyte\fR\fR
+.ad
+.RS 13n
+Create errdefs for one byte accesses (\fBddi_get8()\fR)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBtwobyte\fR\fR
+.ad
+.RS 13n
+Create errdefs for two byte accesses (\fBddi_get16()\fR)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfourbyte\fR\fR
+.ad
+.RS 13n
+Create errdefs for four byte accesses (\fBddi_get32()\fR)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBeightbyte\fR\fR
+.ad
+.RS 13n
+Create errdefs for eight byte accesses (\fBddi_get64()\fR)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmultibyte\fR\fR
+.ad
+.RS 13n
+Create errdefs for repeated byte accesses (\fBddi_rep_get*()\fR)
+.RE
+
+.SS "Frequency of Access Policies"
+.LP
+The frequency of access to a location is determined according to the access
+type, location and transfer size (for example, a two-byte read access to
+address A is considered distinct from a four-byte read access to address A).
+The algorithm is to count the number of accesses (of a given type and size) to
+a given location, and find the locations that were most and least accessed (let
+\fImaxa\fR and \fImina\fR be the number of times these locations were accessed,
+and \fImean\fR the total number of accesses divided by total number of
+locations that were accessed). Then a rare access is a location that was
+accessed less than
+.sp
+.LP
+\fI(mean - mina) / 3 + mina\fR
+.sp
+.LP
+times. Similarly for the definition of common accesses:
+.sp
+.LP
+\fImaxa - (maxa - mean) / 3\fR
+.sp
+.LP
+A location whose access patterns lies within these cutoffs is regarded as a
+location that is accessed with median frequency.
+.sp
+.ne 2
+.na
+\fB\fBrare\fR\fR
+.ad
+.RS 10n
+Create errdefs for locations that are rarely accessed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcommon\fR\fR
+.ad
+.RS 10n
+Create errdefs for locations that are commonly accessed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmedian\fR\fR
+.ad
+.RS 10n
+Create errdefs for locations that are accessed a median frequency.
+.RE
+
+.SS "Policies for Minimizing errdefs"
+.LP
+If a transaction is duplicated, either a single or multiple errdefs will be
+written to the test scripts, depending upon the following two policies:
+.sp
+.ne 2
+.na
+\fB\fBmaximal\fR\fR
+.ad
+.RS 13n
+Create multiple errdefs for locations that are repeatedly accessed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBunbiased\fR\fR
+.ad
+.RS 13n
+Create a single errdef for locations that are repeatedly accessed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBoperators\fR\fR
+.ad
+.RS 13n
+For each location, a default operator and operand is typically applied. For
+maximal test coverage, this default may be modified using the \fBoperators\fR
+policy so that a separate errdef is created for each of the possible corruption
+operators.
+.RE
+
+.SH SEE ALSO
+.LP
+.BR kill (1),
+.BR alarm (2),
+.BR th_manage (8),
+.BR ddi_check_acc_handle (9F),
+.BR ddi_check_dma_handle (9F)
diff --git a/usr/src/man/man8/th_manage.8 b/usr/src/man/man8/th_manage.8
new file mode 100644
index 0000000000..0b700e4d5a
--- /dev/null
+++ b/usr/src/man/man8/th_manage.8
@@ -0,0 +1,157 @@
+'\" te
+.\" Copyright (c) 2001 Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH TH_MANAGE 8 "Jan 4, 2001"
+.SH NAME
+th_manage \- manage the fault injection test harness
+.SH SYNOPSIS
+.LP
+.nf
+\fBth_manage\fR \fIname\fR \fIinstance\fR \fIcommand\fR
+.fi
+
+.LP
+.nf
+\fBth_manage\fR \fIpath\fR \fIcommand\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBth_manage\fR applies the action specified by \fIcommand\fR to the instance
+specified by \fIinstance\fR of the driver specified by \fIname\fR (or the
+driver instance specified by \fIpath\fR). The driver instance must be running
+fault injection specifications (errdefs) defined by \fBth_define\fR(8).
+.sp
+.LP
+\fBth_manage\fR supports several commands that operate on the driver instance
+specified by \fIname\fR and \fIinstance\fR (or \fIpath\fR). The commands are:
+.sp
+.ne 2
+.na
+\fB\fBbroadcast\fR \fR
+.ad
+.RS 18n
+Awaken all \fBth_define\fR processes, causing them to display their current
+status and exit if the errdef is now defunct (that is, if \fIcount\fR,
+\fIfailcount\fR, and \fIacc_chk \fR are all zero).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBclear_acc_chk\fR \fR
+.ad
+.RS 18n
+Awaken all \fBth_define\fR processes. If \fIcount\fR and \fIfailcount\fR are
+already zero, then set \fIacc_chk\fR to zero, so that \fBth_define\fR exits
+once it has displayed its status.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBclear_errdefs\fR \fR
+.ad
+.RS 18n
+Awaken all \fBth_define\fR \fBprocesses\fR. \fIcount\fR, \fIfailcount\fR and
+\fIacc_chk\fR are all set to zero so that all \fBth_define\fR commands exit
+once they have displayed their status.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBclear_errors\fR \fR
+.ad
+.RS 18n
+Awaken all \fBth_define\fR processes. If \fIcount\fR is already zero, set
+\fIfailcount\fR and \fIacc_chk\fR to zero, so that \fBth_define\fR exits once
+it has displayed its status.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBget_handles\fR \fR
+.ad
+.RS 18n
+List all the access handles.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBstart\fR \fR
+.ad
+.RS 18n
+Begin or resume execution of all errdefs.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBstop\fR \fR
+.ad
+.RS 18n
+Suspend all errdefs for this \fIname\fR and \fIinstance\fR (or \fIpath).\fR
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRUseful Commands
+.sp
+.LP
+To begin the tests, enter:
+
+.sp
+.LP
+\fB#\fR \fBth_manage\fR \fBfoo\fR \fB0\fR \fBstart\fR
+
+.sp
+.LP
+To check the status of the errdefs, enter:
+
+.sp
+.LP
+\fB#\fR \fBth_manage\fR \fBfoo\fR \fB0\fR \fBbroadcast\fR
+
+.sp
+.LP
+This causes each \fBth_define\fR process to print out its current status.
+
+.sp
+.LP
+If the driver has reported a fatal error, you can take the driver offline using
+\fBlibdevice\fR, clear the error condition by entering:
+
+.sp
+.LP
+\fB#\fR \fBth_manage\fR \fBfoo\fR \fB0\fR \fBclear_acc_chk\fR
+
+.sp
+.LP
+or
+
+.sp
+.LP
+\fB#\fR \fBth_manage\fR \fBfoo\fR \fB0\fR \fBclear_errors\fR
+
+.sp
+.LP
+and bring the driver online again using \fBlibdevice\fR.
+
+.sp
+.LP
+To terminate testing, enter:
+
+.sp
+.LP
+\fB#\fR \fBth_manage\fR \fBfoo\fR \fB0\fR \fBclear_errdefs\fR
+
+.SH SEE ALSO
+.sp
+.LP
+.BR th_define (8)
diff --git a/usr/src/man/man8/tic.8 b/usr/src/man/man8/tic.8
new file mode 100644
index 0000000000..0bbd74b89d
--- /dev/null
+++ b/usr/src/man/man8/tic.8
@@ -0,0 +1,117 @@
+'\" te
+.\" Copyright (c) 1996, Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 1989 AT&T
+.\" Copyright 2011 Nexenta Systems, Inc. All rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH TIC 8 "Jun 25, 2011"
+.SH NAME
+tic \- terminfo compiler
+.SH SYNOPSIS
+.LP
+.nf
+\fBtic\fR [\fB-v\fR [\fIn\fR]] [\fB-c\fR] \fIfile\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The command \fBtic\fR translates a \fBterminfo\fR file from the source format
+into the compiled format. The results are placed in the directory
+\fB/usr/share/lib/terminfo\fR. The compiled format is necessary for use with
+the library routines in \fBcurses\fR(3CURSES).
+.sp
+.LP
+If the environment variable \fBTERMINFO\fR is set, the compiled results are
+placed there instead of \fB/usr/share/lib/terminfo\fR.
+.sp
+.LP
+Total compiled entries cannot exceed 4096 bytes. The name field cannot exceed
+128 bytes.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-c\fR\fR
+.ad
+.RS 9n
+Specifies to check only \fBfile\fR for errors. Errors in \fBuse=\fR links are
+not detected.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR[\fIn\fR]\fR
+.ad
+.RS 9n
+Specify that (verbose) output be written to standard error trace information
+showing \fBtic\fR's progress. The optional integer \fIn\fR is a number from 1
+to 10, indicating the desired level of detail of information. If \fIn\fR is
+omitted, the default level is 1. If \fIn\fR is specified and greater than 1,
+the level of detail is increased.
+.RE
+
+.SH OPERANDS
+.sp
+.ne 2
+.na
+\fB\fBfile\fR\fR
+.ad
+.RS 8n
+Contains one or more \fBterminfo\fR terminal descriptions in source format [see
+\fBterminfo\fR(5)]. Each description in the file describes the capabilities of
+a particular terminal. When a \fBuse\fR\fI=entry-name\fR field is discovered in
+a terminal entry currently being compiled, \fBtic\fR reads in the binary from
+\fB/usr/share/lib/terminfo\fR to complete the entry. (Entries created from
+\fBfile\fR will be used first. If the environment variable
+\fB\fR\fBTERM\fR\fBINFO \fR is set, that directory is searched instead of
+\fB/usr/share/lib/terminfo\fR.) \fBtic\fR duplicates the capabilities in
+\fIentry-name\fR for the current entry, with the exception of those
+capabilities that are explicitly defined in the current entry.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/usr/share/lib/terminfo/?/*\fR\fR
+.ad
+.sp .6
+.RS 4n
+Compiled terminal description database
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR curses (3CURSES),
+.BR terminfo (5),
+.BR attributes (7),
+.BR captoinfo (8),
+.BR infocmp (8)
+.SH NOTES
+.sp
+.LP
+When an entry, for example, \fBentry_name_1\fR, contains a
+\fBuse=\fR\fIentry_name_2\fR field, any canceled capabilities in
+\fIentry_name_2\fR must also appear in \fBentry_name_1\fR before \fBuse=\fR for
+these capabilities to be canceled in \fBentry_name_1\fR.
diff --git a/usr/src/man/man8/tnchkdb.8 b/usr/src/man/man8/tnchkdb.8
new file mode 100644
index 0000000000..e1e7404486
--- /dev/null
+++ b/usr/src/man/man8/tnchkdb.8
@@ -0,0 +1,184 @@
+'\" te
+.\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH TNCHKDB 8 "Jul 20, 2007"
+.SH NAME
+tnchkdb \- check file syntax of trusted network databases
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/tnchkdb\fR [\fB-h\fR \fIpath\fR] [\fB-t\fR \fIpath\fR] [\fB-z\fR \fIpath\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBtnchkdb\fR checks the syntax of the \fBtnrhtp\fR, \fBtnrhdb\fR, and
+\fBtnzonecfg\fR databases. By default, the \fIpath\fR for each file is:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fB/etc/security/tsol/tnrhtp\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fB/etc/security/tsol/tnrhdb\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fB/etc/security/tsol/tnzonecfg\fR
+.RE
+.sp
+.LP
+You can specify an alternate path for any or all of the files by specifying
+that path on the command line by using the \fB-h\fR (\fBtnrhdb\fR), \fB-t\fR
+(\fBtnrhtp\fR) and \fB-z\fR (\fBtnzonecfg\fR) options. The options are useful
+when testing a set of modified files before installing the files as new system
+databases.
+.sp
+.LP
+All three database files are checked for integrity. \fBtnchkdb\fR returns an
+exit status of \fB0\fR if all of the files are syntactically and, to the extent
+possible, semantically correct. If one or more files have errors, then an exit
+status of \fB1\fR is returned. If there are command line problems, such as an
+unreadable file, an exit status of \fB2\fR is returned. Errors are written to
+standard error.
+.sp
+.LP
+To avoid cascading errors, when there are errors in \fBtnrhtp\fR, the template
+names in \fBtnrhdb\fR are not validated.
+.sp
+.LP
+\fBtnchkdb\fR can be run at any label, but the standard
+\fB/etc/security/tsol\fR files are visible only in the global zone.
+.SH OPTIONS
+.sp
+.ne 2
+.na
+\fB\fB-h\fR [ \fIpath\fR ]\fR
+.ad
+.RS 15n
+Check \fIpath\fR for proper \fBtnrhdb\fR syntax. If \fIpath\fR is not
+specified, then check \fB/etc/security/tsol/tnrhdb\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-t\fR [ \fIpath\fR ]\fR
+.ad
+.RS 15n
+Check \fIpath\fR for proper \fBtnrhtp\fR syntax. If \fIpath\fR is not
+specified, then check \fB/etc/security/tsol/tnrhtp\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-z\fR [ \fIpath\fR ]\fR
+.ad
+.RS 15n
+Check \fIpath\fR for proper \fBtnzonecfg\fR syntax. If \fIpath\fR is not
+specified, then check \fB/etc/security/tsol/tnzonecfg\fR.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRSample Error Message
+.sp
+.LP
+The \fBtnchkdb\fR command checks for CIPSO errors. In this example, the
+\fBadmin_low\fR template has an incorrect value of \fBADMIN_HIGH\fR for its
+default label.
+
+.sp
+.in +2
+.nf
+# \fBtnchkdb\fR
+checking /etc/security/tsol/tnrhtp ...
+tnchkdb: def_label classification 7fff is invalid for cipso labels:
+line 14 entry admin_low
+tnchkdb: def_label compartments 241-256 must be zero for cipso labels:
+line 14 entry admin_low
+checking /etc/security/tsol/tnrhdb ...
+checking /etc/security/tsol/tnzonecfg ...
+.fi
+.in -2
+.sp
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/security/tsol/tnrhdb\fR\fR
+.ad
+.sp .6
+.RS 4n
+Trusted network remote-host database
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/security/tsol/tnrhtp\fR\fR
+.ad
+.sp .6
+.RS 4n
+Trusted network remote-host templates
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/security/tsol/tnzonecfg\fR\fR
+.ad
+.sp .6
+.RS 4n
+Trusted zone configuration database
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability See below.
+.TE
+
+.sp
+.LP
+The command line is Committed. The output is Uncommitted.
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7),
+.BR tnctl (8),
+.BR tnd (8)
+.sp
+.LP
+\fIHow to Check the Syntax of Trusted Network Databases\fR in \fISolaris
+Trusted Extensions Administrator\&'s Procedures\fR
+.SH NOTES
+.sp
+.LP
+The functionality described on this manual page is available only if the system
+is configured with Trusted Extensions.
+.sp
+.LP
+It is possible to have inconsistent but valid configurations of \fBtnrhtp\fR
+and \fBtnrhdb\fR when \fBLDAP\fR is used to supply missing templates.
diff --git a/usr/src/man/man8/tnctl.8 b/usr/src/man/man8/tnctl.8
new file mode 100644
index 0000000000..a61a21bb81
--- /dev/null
+++ b/usr/src/man/man8/tnctl.8
@@ -0,0 +1,271 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH TNCTL 8 "May 13, 2017"
+.SH NAME
+tnctl \- configure Trusted Extensions network parameters
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/tnctl\fR [\fB-dfv\fR] [\fB-h\fR \fIhost\fR [/\fIprefix\fR] [:\fItemplate\fR]]
+ [\fB-m\fR \fIzone\fR:\fImlp\fR:\fIshared-mlp\fR][\fB-t\fR \fItemplate\fR [:\fIkey=val\fR [;\fIkey=val\fR]]]
+ [\fB-HTz\fR] \fIfile\fR]
+.fi
+
+.SH DESCRIPTION
+.LP
+\fBtnctl\fR provides an interface to manipulate trusted network parameters in
+the Solaris kernel.
+.sp
+.LP
+As part of Solaris Trusted Extensions initialization, \fBtnctl\fR is run in the
+global zone by an \fBsmf\fR(7) script during system boot. The \fBtnctl\fR
+command is not intended to be used during normal system administration.
+Instead, if a local trusted networking database file is modified,
+the administrator first issues
+\fBtnchkdb\fR(8) to check the syntax, and then refreshes the kernel copy with
+this command:
+.sp
+.in +2
+.nf
+# \fBsvcadm restart svc:/network/tnctl\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+See \fBWARNINGS\fR about the risks of changing remote host and template
+information on a running system.
+.SH OPTIONS
+.ne 2
+.na
+\fB\fB-d\fR\fR
+.ad
+.sp .6
+.RS 4n
+Delete matching entries from the kernel. The default is to add new entries.
+.sp
+When deleting MLPs, the MLP range must match exactly. MLPs are specified in the
+form:
+.sp
+.in +2
+.nf
+\fIport\fR[-\fIport\fR]/\fIprotocol\fR
+.fi
+.in -2
+.sp
+
+Where \fIport\fR can be a number in the range 1 to 65535. or any known service
+(see \fBservices\fR(5)), and protocol can be a number in the range 1 to 255, or
+any known protocol (see \fBprotocols\fR(5)).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR\fR
+.ad
+.sp .6
+.RS 4n
+Flush all kernel entries before loading the entries that are specified on the
+command line. The flush does not take place unless at least one entry parsed
+successfully.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.sp .6
+.RS 4n
+Turn on verbose mode.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-h\fR \fIhost\fR[/\fIprefix\fR][:\fItemplate\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Update the kernel remote-host cache on the local host for the specified
+\fIhost\fR or, if a template name is given, change the kernel's cache to use
+the specified \fItemplate\fR. If \fIprefix\fR is not specified, then an implied
+prefix length is determined according to the rules used for interpreting the
+\fBtnrhdb\fR. If \fB-d\fR is specified, then a template name cannot be
+specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-m\fR \fIzone\fR:\fImlp\fR:\fIshared-mlp\fR\fR
+.ad
+.sp .6
+.RS 4n
+Modify the kernel's multilevel port (MLP) configuration cache for the specified
+\fIzone\fR. \fIzone\fR specifies the zone to be updated. \fImlp\fR and
+\fIshared-mlp\fR specify the MLPs for the zone-specific and shared IP
+addresses. The \fIshared-mlp\fR field is effective in the global zone only.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-t\fR \fItemplate\fR[\fIkey=val\fR[;\fIkey=val\fR]]\fR
+.ad
+.sp .6
+.RS 4n
+Update the kernel template cache for \fItemplate\fR or, if a list of
+\fIkey=val\fR pairs is given, change the kernel's cache to use the specified
+entry. If \fB-d\fR is specified, then \fIkey=val\fR pairs cannot be specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-T\fR \fIfile\fR\fR
+.ad
+.sp .6
+.RS 4n
+Load all template entries in \fIfile\fR into the kernel cache.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-H\fR \fIfile\fR\fR
+.ad
+.sp .6
+.RS 4n
+Load all remote host entries in \fIfile\fR into the kernel cache.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-z\fR \fIfile\fR\fR
+.ad
+.sp .6
+.RS 4n
+Load just the global zone's MLPs from \fIfile\fR into the kernel cache. To
+reload MLPs for a non-global zone, reboot the zone:
+.sp
+.in +2
+.nf
+# \fBzoneadm -z\fR \fInon-global zone\fR \fBreboot\fR
+.fi
+.in -2
+.sp
+
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Uncommitted
+.TE
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/etc/security/tsol/tnrhdb\fR\fR
+.ad
+.sp .6
+.RS 4n
+Trusted network remote-host database
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/security/tsol/tnrhtp\fR\fR
+.ad
+.sp .6
+.RS 4n
+Trusted network remote-host templates
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/security/tsol/tnzonecfg\fR\fR
+.ad
+.sp .6
+.RS 4n
+Trusted zone configuration database
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/nsswitch.conf\fR\fR
+.ad
+.sp .6
+.RS 4n
+Configuration file for the name service switch
+.RE
+
+.SH SEE ALSO
+.LP
+.BR svcs (1),
+.BR nsswitch.conf (5),
+.BR protocols (5),
+.BR services (5),
+.BR attributes (7),
+.BR smf (7),
+.BR svcadm (8),
+.BR tnchkdb (8),
+.BR tnd (8),
+.BR tninfo (8),
+.BR zoneadm (8)
+.sp
+.LP
+\fIHow to Synchronize Kernel Cache With Network Databases\fR in \fISolaris
+Trusted Extensions Administrator\&'s Procedures\fR
+.SH WARNINGS
+.LP
+Changing a template while the network is up can change the security view of an
+undetermined number of hosts.
+.SH NOTES
+.LP
+The functionality described on this manual page is available only if the system
+is configured with Trusted Extensions.
+.sp
+.LP
+The \fBtnctl\fR service is managed by the service management facility,
+\fBsmf\fR(7), under the service identifier:
+.sp
+.in +2
+.nf
+svc:/network/tnctl
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The service's status can be queried by using \fBsvcs\fR(1). Administrative
+actions on this service, such as refreshing the kernel cache, can be performed
+using \fBsvcadm\fR(8), as in:
+.sp
+.in +2
+.nf
+svcadm restart svc:/network/tnctl
+.fi
+.in -2
+.sp
+
diff --git a/usr/src/man/man8/tnd.8 b/usr/src/man/man8/tnd.8
new file mode 100644
index 0000000000..6128938a35
--- /dev/null
+++ b/usr/src/man/man8/tnd.8
@@ -0,0 +1,226 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH TND 8 "May 15, 2008"
+.SH NAME
+tnd \- trusted network daemon
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/tnd\fR [\fB-p\fR \fIpoll-interval\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBtnd\fR (trusted network daemon) initializes the kernel with trusted
+network databases and also reloads the databases on demand from an LDAP server
+and local files. \fBtnd\fR follows the order specified in the nsswitch.conf
+file when loading configuration databases. \fBtnd\fR is started at the
+beginning of the boot process.
+.sp
+.LP
+\fBtnd\fR loads two databases into the kernel: the remote host database,
+\fBtnrhdb\fR and the remote-host template database, \fBtnrhtp\fR. These
+databases and their effect on the trusted network are described in their
+respective man pages. When the associated \fBLDAP\fR database or local
+databases are changed, \fBtnd\fR also updates the local kernel cache at the
+predetermined interval.
+.sp
+.LP
+If a local trusted networking database file is modified, the administrator
+should run \fBtnchkdb\fR(8) to check the syntax, and should also run \fBsvcadm
+refresh svc:/network/tnd\fR to initiate an immediate database scan by
+\fBtnd\fR.
+.sp
+.LP
+\fBtnd\fR is intended to be started from an \fBsmf\fR(7) script and to run in
+the global zone. The following signals cause specific \fBsvcadm\fR actions:
+.sp
+.ne 2
+.na
+\fB\fBSIGHUP\fR\fR
+.ad
+.RS 11n
+Causes \fBsvcadm refresh svc:/network/tnd\fR to be run.
+.sp
+Initiates a rescan of the local and LDAP \fBtnrhdb\fR and \fBtnrhtp\fR
+databases. \fBtnd\fR updates the kernel database with any changes found.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSIGTERM\fR\fR
+.ad
+.RS 11n
+Causes \fBsvcadm disable svc:/network/tnd\fR to be run.
+.sp
+Terminates the \fBtnd\fR daemon. No changes are made to the kernel database.
+.RE
+
+.sp
+.LP
+Running \fBtnd\fR in debug mode is determined by the value of the following
+service management facility (SMF) property:
+.sp
+.in +2
+.nf
+tnd/debug_level = 0
+.fi
+.in -2
+
+.sp
+.LP
+A value of \fB0\fR, as above, prevents debug information from being collected;
+\fB1\fR turns on debugging. The default value is \fB0\fR. Debug output is sent
+to the \fB/var/tsol/tndlog\fR log file.
+.SH OPTIONS
+.sp
+.ne 2
+.na
+\fB\fB-p\fR \fIpoll-interval\fR\fR
+.ad
+.RS 20n
+Set poll interval to \fIpoll-interval\fR seconds. The default
+\fIpoll-interval\fR is 1800 seconds (30 minutes).
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRChanging the Poll Interval
+.sp
+.LP
+The following command changes the polling interval to one hour, and puts this
+interval in the SMF repository. At the next boot, the \fBtnd\fR poll interval
+will be one hour.
+
+.sp
+.in +2
+.nf
+# \fBsvccfg -s network/tnd setprop tnd/poll_interval=3600\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The following command changes the polling interval, but does not update the
+repository. At the next boot, the \fBtnd\fR poll interval remains the default,
+30 minutes.
+
+.sp
+.in +2
+.nf
+# tnd -p 3600
+.fi
+.in -2
+.sp
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/security/tsol/tnrhdb\fR\fR
+.ad
+.sp .6
+.RS 4n
+Trusted network remote-host database
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/security/tsol/tnrhtp\fR\fR
+.ad
+.sp .6
+.RS 4n
+Trusted network remote-host templates
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/security/tsol/tnzonecfg\fR\fR
+.ad
+.sp .6
+.RS 4n
+Trusted zone configuration database
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/nsswitch.conf\fR\fR
+.ad
+.sp .6
+.RS 4n
+Configuration file for the name service switch
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability See below.
+.TE
+
+.sp
+.LP
+The command invocation is Committed. The service is Private.
+.SH SEE ALSO
+.sp
+.LP
+.BR svcs (1),
+.BR nsswitch.conf (5),
+.BR attributes (7),
+.BR smf (7),
+.BR svcadm (8),
+.BR tnchkdb (8),
+.BR tnctl (8),
+.BR tninfo (8)
+.sp
+.LP
+\fIHow to Synchronize Kernel Cache With Network Databases\fR in \fISolaris
+Trusted Extensions Administrator\&'s Procedures\fR
+.SH NOTES
+.sp
+.LP
+The functionality described on this manual page is available only if the system
+is configured with Trusted Extensions.
+.sp
+.LP
+The \fBtnd\fR service is managed by the service management facility,
+\fBsmf\fR(7), under the service identifier:
+.sp
+.in +2
+.nf
+svc:/network/tnd
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The service's status can be queried by using \fBsvcs\fR(1). Administrative
+actions on this service, such as requests to restart the daemon, can be
+performed using \fBsvcadm\fR(8), as in:
+.sp
+.in +2
+.nf
+svcadm restart svc:/network/tnd
+.fi
+.in -2
+.sp
+
diff --git a/usr/src/man/man8/tninfo.8 b/usr/src/man/man8/tninfo.8
new file mode 100644
index 0000000000..4c30d3a62f
--- /dev/null
+++ b/usr/src/man/man8/tninfo.8
@@ -0,0 +1,177 @@
+'\" te
+.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH TNINFO 8 "Jul 20, 2007"
+.SH NAME
+tninfo \- print kernel-level network information and statistics
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/tninfo\fR [\fB-h\fR \fIhostname\fR] [\fB-m\fR \fIzone-name\fR] [\fB-t\fR \fItemplate\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBtninfo\fR provides an interface to retrieve and display kernel-level network
+information and statistics.
+.SH OPTIONS
+.sp
+.ne 2
+.na
+\fB\fB-h\fR \fIhostname\fR\fR
+.ad
+.RS 16n
+Display the security structure for the specified host in the remote-host cache.
+The output should reflect what is specified in the \fBtnrhdb\fR database.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-m\fR \fIzone-name\fR\fR
+.ad
+.RS 16n
+Display the MLP configuration associated with the specified zone. The output
+should reflect what is specified in the \fBtnzonecfg\fR database.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-t\fR \fItemplate\fR\fR
+.ad
+.RS 16n
+Display the structure associated with the specified \fItemplate\fR. The output
+should reflect what is specified in the \fBtnrhtp\fR database.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRDisplaying Remote Host Structures Cached in the Kernel
+.sp
+.LP
+This example shows the remote host structures cached in the kernel. The output
+reflects the definition in the \fBtnrhdb\fR database.
+
+.sp
+.in +2
+.nf
+# \fBtninfo -h machine1\fR
+ IP address= 192.168.8.61
+ Template = cipso
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRDisplaying Multilevel Ports for the Global Zone
+.sp
+.LP
+This example shows the kernel-cached MLPs for the global zone. The output
+reflects the definition in the \fBtnzonecfg\fR database, plus any dynamically
+allocated MLPs. \fBprivate\fR indicates zone-specific MLPs.
+
+.sp
+.in +2
+.nf
+# \fBtninfo -m global\fR
+private:23/tcp;111/tcp;111/udp;515/tcp;2049/tcp;6000-6003/tcp;
+ 32812/tcp;36698/ip;38634/tcp;64365/ip
+shared: 6000-6003/tcp
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRDisplaying the \fBcipso\fR Template Definition
+.sp
+.LP
+This example shows the kernel-cached \fBcipso\fR template definition. The
+output reflects the definition in the \fBtnrhtp\fR database.
+
+.sp
+.in +2
+.nf
+# \fBtninfo -t cipso\fR
+=====================================
+ Remote Host Template Table Entries:
+ __________________________
+ template: cipso
+ host_type: CIPSO
+ doi: 1
+ min_sl: ADMIN_LOW
+ hex: ADMIN_LOW
+ max_sl: ADMIN_HIGH
+ hex: ADMIN_HIGH
+.fi
+.in -2
+.sp
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/security/tsol/tnrhdb\fR\fR
+.ad
+.sp .6
+.RS 4n
+Trusted network remote-host database
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/security/tsol/tnrhtp\fR\fR
+.ad
+.sp .6
+.RS 4n
+Trusted network remote-host templates
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/security/tsol/tnzonecfg\fR\fR
+.ad
+.sp .6
+.RS 4n
+Trusted zone configuration database
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability See below.
+.TE
+
+.sp
+.LP
+The command line is Committed. The output is Uncommitted.
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7),
+.BR tnctl (8),
+.BR tnd (8)
+.sp
+.LP
+\fIHow to Synchronize Kernel Cache With Network Databases\fR in \fISolaris
+Trusted Extensions Administrator\&'s Procedures\fR
+.SH NOTES
+.sp
+.LP
+The functionality described on this manual page is available only if the system
+is configured with Trusted Extensions.
diff --git a/usr/src/man/man8/tpmadm.8 b/usr/src/man/man8/tpmadm.8
new file mode 100644
index 0000000000..88ff0f73eb
--- /dev/null
+++ b/usr/src/man/man8/tpmadm.8
@@ -0,0 +1,226 @@
+'\" te
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
+.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH TPMADM 8 "April 9, 2016"
+.SH NAME
+tpmadm \- administer Trusted Platform Module
+.SH SYNOPSIS
+.LP
+.nf
+\fBtpmadm status\fR
+.fi
+
+.LP
+.nf
+\fBtpmadm init\fR
+.fi
+
+.LP
+.nf
+\fBtpmadm clear\fR [\fBowner\fR | \fBlock\fR]
+.fi
+
+.LP
+.nf
+\fBtpmadm auth\fR
+.fi
+
+.LP
+.nf
+\fBtpmadm keyinfo\fR [\fIuuid\fR]
+.fi
+
+.LP
+.nf
+\fBtpmadm deletekey\fR \fIuuid\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+A Trusted Platform Module (TPM) is a hardware component that provides for
+protected key storage and reliable measurements of software used to boot the
+operating system. The \fBtpmadm\fR utility is used to initialize and administer
+the TPM so that it can be used by the operating system and other programs.
+.sp
+.LP
+The TPM subsystem can store and manage an unlimited number of keys for use by
+the operating system and by users. Each key is identified by a Universally
+Unique Identifier, or UUID.
+.sp
+.LP
+Although the TPM can hold only a limited number of keys at any given time, the
+supporting software automatically loads and unloads keys as needed. When a key
+is stored outside the TPM, it is always encrypted or "wrapped" by its parent
+key so that the key is never exposed in readable form outside the TPM.
+.sp
+.LP
+Before the TPM can be used, it must be initialized by the platform owner. This
+process involves setting an owner password which is used to authorize
+privileged operations.
+.sp
+.LP
+Although the TPM owner is similar to a traditional superuser, there are two
+important differences. First, process privilege is irrelevant for access to TPM
+functions. All privileged operations require knowledge of the owner password,
+regardless of the privilege level of the calling process. Second, the TPM owner
+is not able to override access controls for data protected by TPM keys. The
+owner can effectively destroy data by re-initializing the TPM, but he cannot
+access data that has been encrypted using TPM keys owned by other users.
+.SH SUBCOMMANDS
+.LP
+The following subcommands are used in the form:
+.sp
+.in +2
+.nf
+# tpmadm \fI<subcommand>\fR \fI[operand]\fR
+.fi
+.in -2
+.sp
+
+.sp
+.ne 2
+.na
+\fB\fBstatus\fR\fR
+.ad
+.sp .6
+.RS 4n
+Report status information about the TPM. Output includes basic information
+about whether ownership of the TPM has been established, current PCR contents,
+and the usage of TPM resources such as communication sessions and loaded keys.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBinit\fR\fR
+.ad
+.sp .6
+.RS 4n
+Initialize the TPM for use. This involves taking ownership of the TPM by
+setting the owner authorization password. Taking ownership of the TPM creates a
+new storage root key, which is the ancestor of all keys created by this TPM.
+Once this command is issued, the TPM must be reset using BIOS operations before
+it can be re-initialized.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBauth\fR\fR
+.ad
+.sp .6
+.RS 4n
+Change the owner authorization password for the TPM.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBclear\fR \fBlock\fR\fR
+.ad
+.sp .6
+.RS 4n
+Clear the count of failed authentication attempts. After a number of failed
+authentication attempts, the TPM responds more slowly to subsequent attempts,
+in an effort to thwart attempts to find the owner password by exhaustive
+search. This command, which requires the correct owner password, resets the
+count of failed attempts.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBclear\fR \fBowner\fR\fR
+.ad
+.sp .6
+.RS 4n
+Deactivate the TPM and return it to an unowned state. This operation, which
+requires the current TPM owner password, invalidates all keys and data tied to
+the TPM. Before the TPM can be used again, the system must be restarted, the
+TPM must be reactivated from the BIOS or ILOM pre-boot environment, and the
+TPM must be re-initialized using the \fBtpmadm init\fR command.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBkeyinfo\fR [\fIuuid\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Report information about keys stored in the TPM subsystem. Without additional
+arguments, this subcommand produces a brief listing of all keys. If the UUID of
+an individual key is specified, detailed information about that key is
+displayed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdeletekey\fR \fIuuid\fR\fR
+.ad
+.sp .6
+.RS 4n
+Delete the key with the specified UUID from the TPM subsystem's persistent
+storage.
+.RE
+
+.SH EXIT STATUS
+.LP
+After completing the requested operation, \fBtpmadm\fR exits with one of the
+following status values.
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.sp .6
+.RS 4n
+Successful termination.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB1\fR\fR
+.ad
+.sp .6
+.RS 4n
+Failure. The requested operation could not be completed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB2\fR\fR
+.ad
+.sp .6
+.RS 4n
+Usage error. The \fBtpmadm\fR command was invoked with invalid arguments.
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Committed
+.TE
+
+.SH SEE ALSO
+.LP
+.BR attributes (7)
+.sp
+.LP
+TCG Software Stack (TSS) Specifications:
+\fBhttps://www.trustedcomputinggroup.org/specs/TSS\fR (as of the date of
+publication)
diff --git a/usr/src/man/man8/traceroute.8 b/usr/src/man/man8/traceroute.8
new file mode 100644
index 0000000000..e4d4c11332
--- /dev/null
+++ b/usr/src/man/man8/traceroute.8
@@ -0,0 +1,673 @@
+'\" te
+.\" Copyright (C) 2003, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH TRACEROUTE 8 "June 13, 2021"
+.SH NAME
+traceroute \- print the route packets take to network host
+.SH SYNOPSIS
+.nf
+\fBtraceroute\fR [\fB-adFIlnSvx\fR] [\fB-A\fR \fIaddr_family\fR] [\fB-c\fR \fItraffic_class\fR]
+ [\fB-f\fR \fIfirst_hop\fR] [\fB-g\fR \fIgateway\fR [\fB-g\fR \fIgateway\fR...] | \fB-r\fR]
+ [\fB-i\fR \fIiface\fR] [\fB-L\fR \fIflow_label\fR] [\fB-m\fR \fImax_hop\fR]
+ [\fB-P\fR \fIpause_sec\fR] [\fB-p\fR \fIport\fR] [\fB-Q\fR \fImax_timeout\fR]
+ [\fB-q\fR \fInqueries\fR] [\fB-s\fR \fIsrc_addr\fR] [\fB-t\fR \fItos\fR] [\fB-w\fR \fIwait_time\fR] host
+ [\fIpacketlen\fR]
+.fi
+
+.SH DESCRIPTION
+The Internet is a large and complex aggregation of network hardware, connected
+by gateways. Tracking the route a packet follows can be difficult. The utility
+\fBtraceroute\fR traces the route that an \fBIP\fR packet follows to another
+internet host.
+.sp
+.LP
+The \fBtraceroute\fR utility utilizes the both the IPv4 and IPv6 protocols. Use
+the \fB-A\fR option to override the default behavior. \fBtraceroute\fR uses the
+IPv4 protocol \fIttl\fR (time to live) field or the IPv6 field \fIhop limit\fR.
+It attempts to elicit an \fBICMP\fR or \fBICMP6\fR \fBTIME_EXCEEDED\fR response
+from each \fIgateway\fR along the path, and a \fBPORT_UNREACHABLE\fR(or
+\fBECHO_REPLY\fR if \fB-I\fR is used) response from the destination host. It
+starts by sending probes with a \fIttl\fR or \fIhop limit\fR of \fB1\fR and
+increases by \fB1\fR until it either gets to the host, or it hits the maximum
+\fImax_hop\fR. The default maximum \fImax_hop\fR is 30 hops, but this can be
+set by the \fB-m\fR option.
+.sp
+.LP
+Three probes are sent at each \fIttl\fR (\fIhop limit\fR) setting, and a line
+is printed showing the \fIttl\fR (\fIhop limit\fR), the hostname and the
+address of the gateway, and the \fIrtt\fR (round trip time) of each probe. The
+number of probes may be specifically set using the \fB-q\fR option. If the
+probe answers come from different gateways, the hostname and the address of
+each responding system will be printed. If there is no response within a 5
+second timeout interval, an asterisk (\fB*\fR) is displayed for that probe. The
+\fB-w\fR option may be used to set the timeout interval. Other possible
+annotations that may appear after the time are:
+.sp
+.ne 2
+.na
+\fB\fB!\fR\fR
+.ad
+.sp .6
+.RS 4n
+the \fIttl\fR (\fIhop limit\fR) value in the received packet is \fB<= 1\fR\&.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB!H\fR\fR
+.ad
+.sp .6
+.RS 4n
+host unreachable.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB!X\fR\fR
+.ad
+.sp .6
+.RS 4n
+communication administratively prohibited.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB<!N>\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBICMP\fR (\fBICMP6\fR) unreachable code N.
+.RE
+
+.sp
+.LP
+The following annotations appear only for IPv4:
+.sp
+.ne 2
+.na
+\fB\fB!F\fR\fR
+.ad
+.sp .6
+.RS 4n
+fragmentation needed. This should never occur. If this is seen, the associated
+gateway is broken.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB!N\fR\fR
+.ad
+.sp .6
+.RS 4n
+network unreachable.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB!P\fR\fR
+.ad
+.sp .6
+.RS 4n
+protocol unreachable.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB!S\fR\fR
+.ad
+.sp .6
+.RS 4n
+source route failed. It is likely that the gateway does not support source
+routing.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB!T\fR\fR
+.ad
+.sp .6
+.RS 4n
+unreachable for the specified tos (type-of-service).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB!U\fR\fR
+.ad
+.sp .6
+.RS 4n
+source host isolated or precedence problem.
+.RE
+
+.sp
+.LP
+The following annotations appear only for IPv6:
+.sp
+.ne 2
+.na
+\fB\fB!A\fR\fR
+.ad
+.sp .6
+.RS 4n
+host unreachable for a reason other than lack of an entry in the routing table.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB!B\fR\fR
+.ad
+.sp .6
+.RS 4n
+packet too big.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB!E\fR\fR
+.ad
+.sp .6
+.RS 4n
+destination is not a neighbor.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB!R\fR\fR
+.ad
+.sp .6
+.RS 4n
+unrecognized next header.
+.RE
+
+.sp
+.LP
+If almost all the probes result in some kind of unreachable code, then
+\fBtraceroute\fR gives up and exits.
+.sp
+.LP
+The destination \fIhost\fR is not supposed to process the \fBUDP\fR probe
+packets, so the destination \fIport\fR default is set to an unlikely value.
+However, if some application on the destination is using that value, the value
+of \fIport\fR can be changed with the \fB-p\fR option.
+.sp
+.LP
+The only mandatory parameter is the destination \fIhost\fR name or \fBIP\fR
+number. The default probe datagram length is 40 bytes (60 bytes for IPv6), but
+this may be increased by specifying a packet length (in bytes) after the
+destination \fIhost\fR name.
+.sp
+.LP
+All integer arguments to \fBtraceroute\fR can be specified in either decimal or
+hexadecimal notation. For example, \fIpacketlen\fR can be specified either as
+\fB256\fR or \fB0x100\fR.
+.SH OPTIONS
+.ne 2
+.na
+\fB\fB-A\fR\ \fIaddr_family\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify the address family of the target host. \fIaddr_family\fR can be either
+\fBinet\fR or \fBinet6\fR. Address family determines which protocol to use. For
+an argument of \fBinet\fR, IPv4 is used. For \fBinet6\fR, IPv6 is used.
+.sp
+By default, if the name of a host is provided, not the literal \fBIP\fR
+address, and a valid IPv6 address exists in the name service database,
+\fBtraceroute\fR will use this address. Otherwise, if the name service database
+contains an IPv4 address, it will try the IPv4 address.
+.sp
+Specify the address family \fBinet\fR or \fBinet6\fR to override the default
+behavior. If the argument specified is \fBinet\fR, \fBtraceroute\fR will use
+the IPv4 address associated with the hostname. If none exists, \fBtraceroute\fR
+will state that the host is unknown and exit. It will not try to determine if
+an IPv6 address exists in the name service database.
+.sp
+If the specified argument is \fBinet6\fR, \fBtraceroute\fR will use the IPv6
+address that is associated with the hostname. If none exists, \fBtraceroute\fR
+will state that the host is unknown and exit.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-a\fR\fR
+.ad
+.sp .6
+.RS 4n
+Probe all of the addresses of a multi-homed destination. The output looks like
+\fBtraceroute\fR has been run once for each \fBIP\fR address of the
+destination. If this option is used together with \fB-A\fR, \fBtraceroute\fR
+probes only the addresses that are of the specified address family. While
+probing one of the addresses of the destination, user can skip to the next
+address by sending a \fBSIGINT\fR, or exit \fBtraceroute\fR by sending a
+\fBSIGQUIT\fR signal. See \fBsignal\fR(3C)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-c\fR\ \fItraffic_class\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify the traffic class of probe packets. The value must be an integer in the
+range from 0 to 255. Gateways along the path may route the probe packet
+differently depending upon the value of \fItraffic_class\fR set in the probe
+packet. This option is valid only on IPv6.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-d\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set the \fBSO_DEBUG\fR socket option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-F\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set the "don't fragment" bit. This option is valid only on IPv4. When specified
+from within a shared-IP zone, this option has no effect as the "don't fragment"
+bit is always set in this case.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR \fIfirst_hop\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set the starting \fIttl\fR (\fIhop limit\fR) value to \fIfirst_hop\fR, to
+override the default value \fB1\fR. \fBtraceroute\fR skips processing for those
+intermediate gateways which are less than \fIfirst_hop\fR hops away.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-g\fR \fIgateway\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify a loose source route \fIgateway\fR. The user can specify more than one
+\fIgateway\fR by using \fB-g\fR for each gateway. The maximum number of
+gateways is 8 for IPv4 and 127 for IPv6. Note that some factors such as the
+link \fBMTU\fR can further limit the number of gateways for IPv6. This option
+cannot be used with the \fB-r\fR option.
+.sp
+Only users with the \fB{PRIV_NET_RAWACCESS}\fR privilege can specify a loose
+source route with this option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-I\fR\fR
+.ad
+.sp .6
+.RS 4n
+Use \fBICMP\fR (\fBICMP6\fR) \fBECHO\fR instead of \fBUDP\fR datagrams.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-i\fR \fIiface\fR\fR
+.ad
+.sp .6
+.RS 4n
+For IPv4, this option specifies a network interface to obtain the source
+\fBIP\fR address. This is normally only useful on a multi-homed host. The
+\fB-s\fR option is also another way to do this. For IPv6, it specifies the
+network interface on which probe packets are transmitted. The argument can be
+either an interface index, for example, \fB1\fR, \fB2\fR, or an interface name,
+for example, \fBeri0\fR, \fBhme0\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-L\fR\ \fIflow_label\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify the flow label of probe packets. The value must be an integer in the
+range from 0 to 1048575. This option is valid only on IPv6.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR\fR
+.ad
+.sp .6
+.RS 4n
+Print the value of the \fIttl\fR (\fIhop limit\fR) field in each packet
+received.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-m\fR \fImax_hop\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set the maximum \fIttl\fR (\fIhop limit\fR) used in outgoing probe packets. The
+default is 30 hops, which is the same default used for \fBTCP \fR connections.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR\fR
+.ad
+.sp .6
+.RS 4n
+Print hop addresses numerically rather than symbolically and numerically. This
+saves a nameserver address-to-name lookup for each gateway found on the path.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-P\fR \fIpause_sec\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify a delay, in seconds, to pause between probe packets. This may be
+necessary if the final destination does not accept undeliverable packets in
+bursts. By default, \fBtraceroute\fR sends the next probe as soon as it has
+received a reply. Note that \fIpause_sec\fR is a real number.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR \fIport\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set the base \fBUDP\fR \fIport\fR number used in probes.The default is 33434.
+\fBtraceroute\fR hopes that nothing is listening on \fBUDP\fR \fIports\fR
+\fB(base+(nhops-1)*nqueries)\fR to \fB(base+(nhops*nqueries)-1)\fR at the
+destination host, so that an \fBICMP\fR (\fBICMP6\fR) \fBPORT_UNREACHABLE\fR
+message will be returned to terminate the route tracing. If something is
+listening on a \fIport\fR in the default range, this option can be used to
+select an unused \fIport\fR range. \fBnhops\fR is defined as the number of hops
+between the source and the destination.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-Q\fR \fImax_timeout\fR\fR
+.ad
+.sp .6
+.RS 4n
+Stop probing this hop after \fImax_timeout\fR consecutive timeouts are
+detected. The default value is 5. Useful in combination with the \fB-q\fR
+option if you have specified a large \fInqueries\fR probe count.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-q\fR \fInqueries\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set the desired number of probe queries. The default is 3.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-r\fR\fR
+.ad
+.sp .6
+.RS 4n
+Bypass the normal routing tables and send directly to a host on an attached
+network. If the host is not on a directly-attached network, an error is
+returned. This option can be used to send probes to a local host through an
+interface that has been dropped by the router daemon. See \fBin.routed\fR(8).
+You cannot use this option if the \fB-g\fR option is used.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-S\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display a summary of how many probes were not answered for each hop.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR \fIsrc_addr\fR\fR
+.ad
+.sp .6
+.RS 4n
+Use the following address, which usually is given as a literal \fBIP\fR
+address, not a hostname, as the source address in outgoing probe packets. On
+multi-homed hosts, those with more than one \fBIP\fR address, this option can
+be used to force the source address to be something other than the \fBIP\fR
+address \fBtraceroute\fR picks by default. If the \fBIP\fR address is not one
+of this machine's interface addresses, an error is returned and nothing is
+sent. For IPv4, when used together with the \fB-i\fR option, the given \fBIP\fR
+address should be configured on the specified interface. Otherwise, an error
+will be returned. In the case of IPv6, the interface name and the source
+address do not have to match.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-t\fR \fItos\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set the \fItos\fR(type-of-service) in probe packets to the specified value. The
+default is zero. The value must be an integer in the range from 0 to 255.
+Gateways along the path may route the probe packet differently depending upon
+the \fItos\fR value set in the probe packet. This option is valid only on IPv4.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.sp .6
+.RS 4n
+Verbose output. For each hop, the size and the destination of the response
+packets is displayed. Also \fBICMP\fR (\fBICMP6\fR) packets received other than
+\fBTIME_EXCEEDED\fR and \fBUNREACHABLE\fR are listed as well.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-w\fR \fIwaittime\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set the time, in seconds, to wait for a response to a probe. The default is 5
+seconds.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-x\fR\fR
+.ad
+.sp .6
+.RS 4n
+Prevent \fBtraceroute\fR from calculating checksums. Checksums are usually
+required for the last hop when using \fBICMP\fR \fBECHO\fR probes. This option
+is valid only on IPv4. See the \fB-I\fR option.
+.sp
+When specified from within a shared-IP zone, this option has no effect as the
+checksum is always calculated by the operating system in this case.
+.RE
+
+.SH OPERANDS
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fB\fIhost\fR\fR
+.ad
+.sp .6
+.RS 4n
+The network host.
+.RE
+
+.SH EXAMPLES
+\fBExample 1 \fRSample Output From the \fBtraceroute\fR Utility
+.sp
+.LP
+Some sample output from the \fBtraceroute\fR utility might be:
+
+.sp
+.in +2
+.nf
+istanbul% \fBtraceroute london\fR
+traceroute: Warning: london has multiple addresses; \e
+ using 4::114:a00:20ff:ab3d:83ed
+traceroute: Warning: Multiple interfaces found; \e
+ using 4::56:a00:20ff:fe93:8dde @ eri0:2
+traceroute to london (4::114:a00:20ff:ab3d:83ed), 30 hops max, \e
+ 60 byte packets
+1 frbldg7c-86 (4::56:a00:20ff:fe1f:65a1) 1.786 ms 1.544 ms 1.719 ms
+2 frbldg7b-77 (4::255:0:0:c0a8:517) 2.587 ms 3.001 ms 2.988 ms
+3 london (4::114:a00:20ff:ab3d:83ed) 3.122 ms 2.744 ms 3.356 ms
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The target host, london, has both IPv4 and IPv6 addresses in the name service
+database. According to the default behavior, \fBtraceroute\fR uses IPv6 address
+of the destination host.
+
+.LP
+\fBExample 2 \fRUsing the \fBtraceroute\fR Utility For a Host Which has Only
+IPv4 Addresses
+.sp
+.LP
+In the following examples, \fBtraceroute\fR is tracking the route to host
+sanfrancisco, which has only IPv4 addresses in the name service database.
+Therefore traceroute uses only IPv4 addresses. The following shows the 7-hop
+path that a packet would follow from the host istanbul to the host
+sanfrancisco.
+
+.sp
+.in +2
+.nf
+istanbul% \fBtraceroute sanfrancisco\fR
+traceroute: Warning: Multiple interfaces found; using 172.31.86.247 @eri0
+traceroute to sanfrancisco (172.29.64.39), 30 hops max, 40 byte packets
+1 frbldg7c-86 (172.31.86.1) 1.516 ms 1.283 ms 1.362 ms
+2 bldg1a-001 (172.31.1.211) 2.277 ms 1.773 ms 2.186 ms
+3 bldg4-bldg1 (172.30.4.42) 1.978 ms 1.986 ms 13.996 ms
+4 bldg6-bldg4 (172.30.4.49) 2.655 ms 3.042 ms 2.344 ms
+5 ferbldg11a-001 (172.29.1.236) 2.636 ms 3.432 ms 3.830 ms
+6 frbldg12b-153 (172.29.153.72) 3.452 ms 3.146 ms 2.962 ms
+7 sanfrancisco (172.29.64.39) 3.430 ms 3.312 ms 3.451 ms
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRUsing the \fBtraceroute\fR Utility With Source Routing
+.sp
+.LP
+The following example shows the path of a packet that goes from istanbul to
+sanfrancisco through the hosts cairo and paris, as specified by the \fB-g\fR
+option. The \fB-I\fR option makes \fBtraceroute\fR send \fBICMP\fR \fBECHO\fR
+probes to the host sanfrancisco. The \fB-i\fR options sets the source address
+to the \fBIP\fR address configured on the interface \fBqe0\fR.
+
+.sp
+.in +2
+.nf
+istanbul% \fBtraceroute -g cairo -g paris -i qe0 -q 1 -I sanfrancisco\fR
+traceroute to sanfrancisco (172.29.64.39), 30 hops max, 56 byte packets
+1 frbldg7c-86 (172.31.86.1) 2.012 ms
+2 flrbldg7u (172.31.17.131) 4.960 ms
+3 cairo (192.168.163.175) 4.894 ms
+4 flrbldg7u (172.31.17.131) 3.475 ms
+5 frbldg7c-017 (172.31.17.83) 4.126 ms
+6 paris (172.31.86.31) 4.086 ms
+7 frbldg7b-82 (172.31.82.1) 6.454 ms
+8 bldg1a-001 (172.31.1.211) 6.541 ms
+9 bldg6-bldg4 (172.30.4.49) 6.518 ms
+10 ferbldg11a-001 (172.29.1.236) 9.108 ms
+11 frbldg12b-153 (172.29.153.72) 9.634 ms
+12 sanfrancisco (172.29.64.39) 14.631 ms
+
+
+.fi
+.in -2
+.sp
+
+.SH EXIT STATUS
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.sp .6
+.RS 4n
+Successful operation.
+.RE
+
+.sp
+.ne 2
+.na
+\fB>\fB0\fR\fR
+.ad
+.sp .6
+.RS 4n
+An error occurred.
+.RE
+
+.SH SEE ALSO
+.BR signal (3C),
+.BR attributes (7),
+.BR privileges (7),
+.BR zones (7),
+.BR netstat (8),
+.BR ping (8)
+.SH WARNINGS
+This utility is intended for use in network testing, measurement and
+management. It should be used primarily for manual fault isolation. Because of
+the load it could impose on the network, it is unwise to use
+\fBtraceroute\fR(8) during normal operations or from automated scripts.
diff --git a/usr/src/man/man8/trapstat.8 b/usr/src/man/man8/trapstat.8
new file mode 100644
index 0000000000..2a180d7ae1
--- /dev/null
+++ b/usr/src/man/man8/trapstat.8
@@ -0,0 +1,656 @@
+'\" te
+.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH TRAPSTAT 8 "April 9, 2016"
+.SH NAME
+trapstat \- report trap statistics
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/trapstat\fR [\fB-t\fR | \fB-T\fR | \fB-e\fR \fIentry\fR]
+ [\fB-C\fR \fIprocessor_set_id\fR | \fB-c\fR \fIcpulist\fR] [\fB-P\fR] [\fB-a\fR]
+ [\fB-r\fR \fIrate\fR] [ [\fIinterval\fR [\fIcount\fR]] | \fIcommand\fR | [\fIargs\fR]]
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/trapstat\fR \fB-l\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBtrapstat\fR utility gathers and displays run-time trap statistics on
+UltraSPARC-based systems. The default output is a table of trap types and
+\fBCPU\fR \fBID\fRs, with each row of the table denoting a trap type and each
+column of the table denoting a \fBCPU\fR. If standard output is a terminal, the
+table contains as many columns of data as can fit within the terminal width; if
+standard output is not a terminal, the table contains at most six columns of
+data. By default, data is gathered and displayed for all \fBCPU\fRs; if the
+data cannot fit in a single table, it is printed across multiple tables. The
+set of \fBCPU\fRs for which data is gathered and displayed can be optionally
+specified with the \fB-c\fR or \fB-C\fR option.
+.sp
+.LP
+Unless the \fB-r\fR option or the \fB-a\fR option is specified, the value
+displayed in each entry of the table corresponds to the number of traps per
+second. If the \fB-r\fR option is specified, the value corresponds to the
+number of traps over the interval implied by the specified sampling rate; if
+the \fB-a\fR option is specified, the value corresponds to the accumulated
+number of traps since the invocation of \fBtrapstat\fR.
+.sp
+.LP
+By default, \fBtrapstat\fR displays data once per second, and runs
+indefinitely; both of these behaviors can be optionally controlled with the
+\fIinterval\fR and \fIcount\fR parameters, respectively. The \fIinterval\fR is
+specified in seconds; the \fIcount\fR indicates the number of intervals to be
+executed before exiting. Alternatively, \fBcommand\fR can be specified, in
+which case \fBtrapstat\fR executes the provided command and continues to run
+until the command exits. A positive integer is assumed to be an \fIinterval\fR;
+if the desired \fB\fIcommand\fR\fR cannot be distinguished from an integer, the
+full path of \fIcommand\fR must be specified.
+.sp
+.LP
+UltraSPARC I (obsolete), II, and III handle translation lookaside buffer (TLB)
+misses by trapping to the operating system. TLB miss traps can be a significant
+component of overall system performance for some workloads; the \fB-t\fR option
+provides in-depth information on these traps. When run with this option,
+\fBtrapstat\fR displays both the rate of TLB miss traps \fI\fR and the
+percentage of time spent processing those traps. Additionally, TLB misses that
+hit in the translation storage buffer (TSB) are differentiated from TLB misses
+that further miss in the TSB. (The TSB is a software structure used as a
+translation entry cache to allow the TLB to be quickly filled; it is discussed
+in detail in the \fIUltraSPARC II User's Manual\fR.) The TLB and TSB miss
+information is further broken down into user- and kernel-mode misses.
+.sp
+.LP
+Workloads with working sets that exceed the TLB reach may spend a significant
+amount of time missing in the TLB. To accommodate such workloads, the operating
+system supports multiple page sizes: larger page sizes increase the effective
+TLB reach and thereby reduce the number of TLB misses. To provide insight into
+the relationship between page size and TLB miss rate, \fBtrapstat\fR optionally
+provides in-depth TLB miss information broken down by page size using the
+\fB-T\fR option. The information provided by the \fB-T\fR option is a superset
+of that provided by the \fB-t\fR option; only one of \fB-t\fR and \fB-T\fR can
+be specified.
+.SH OPTIONS
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-a\fR\fR
+.ad
+.RS 24n
+Displays the number of traps as accumulating, monotonically increasing values
+instead of per-second or per-interval rates.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-c\fR \fIcpulist\fR \fR
+.ad
+.RS 24n
+Enables \fBtrapstat\fR only on the \fBCPU\fRs specified by \fIcpulist\fR.
+.sp
+\fIcpulist\fR can be a single processor \fBID\fR (for example, \fB4\fR), a
+range of processor\fB ID\fRs (for example, \fB4-6\fR), or a comma separated
+list of processor\fB ID\fRs or processor \fBID\fR ranges (for example,
+\fB4,5,6\fR or \fB4,6-8\fR).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-C\fR \fIprocessor_set_id\fR \fR
+.ad
+.RS 24n
+Enables \fBtrapstat\fR only on the \fBCPU\fRs in the processor set specified by
+\fIprocessor_set_id\fR.
+.sp
+\fBtrapstat\fR modifies its output to always reflect the \fBCPU\fRs in the
+specified processor set. If a \fBCPU\fR is added to the set, \fBtrapstat\fR
+modifies its output to include the added \fBCPU\fR; if a \fBCPU\fR is removed
+from the set, \fBtrapstat\fR modifies its output to exclude the removed CPU. At
+most one processor set can be specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-e\fR \fIentrylist\fR \fR
+.ad
+.RS 24n
+Enables \fBtrapstat\fR only for the trap table entry or entries specified by
+\fIentrylist\fR. A trap table entry can be specified by trap number or by trap
+name (for example, the level-10 trap can be specified as \fB74\fR, \fB0x4A\fR,
+\fB0x4a\fR, or \fBlevel-10\fR).
+.sp
+\fIentrylist\fR can be a single trap table entry or a comma separated list of
+trap table entries. If the specified trap table entry is not valid,
+\fBtrapstat\fR prints a table of all valid trap table entries and values. A
+list of valid trap table entries is also found in \fIThe SPARC Architecture
+Manual, Version 9\fR and the \fISun Microelectronics UltraSPARC II User's
+Manual.\fR If the parsable option (\fB-P\fR) is specified in addition to the
+\fB-e\fR option, the format of the data is as follows:
+.sp
+
+.sp
+.TS
+c c
+l l .
+Field Contents
+1 Timestamp (nanoseconds since start)
+2 CPU ID
+3 Trap number (in hexadecimal)
+4 Trap name
+5 Trap rate per interval
+.TE
+
+Each field is separated with whitespace. If the format is modified, it will be
+modified by adding potentially new fields beginning with field 6; exant fields
+will remain unchanged.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR \fR
+.ad
+.RS 24n
+Lists trap table entries. By default, a table is displayed containing all valid
+trap numbers, their names and a brief description. The trap name is used in
+both the default output and in the \fIentrylist\fR parameter for the \fB-e\fR
+argument. If the parsable option (\fB-P\fR) is specified in addition to the
+\fB-l\fR option, the format of the data is as follows:
+.sp
+
+.sp
+.TS
+c c
+l l .
+Field Contents
+1 Trap number in hexadecimal
+2 Trap number in decimal
+3 Trap name
+Remaining Trap description
+.TE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-P\fR \fR
+.ad
+.RS 24n
+Generates parsable output. When run without other data gathering modifying
+options (that is, \fB-e\fR, \fB-t\fR or \fB-T\fR), \fBtrapstat\fR's the
+parsable output has the following format:
+.sp
+
+.sp
+.TS
+c c
+l l .
+Field Contents
+1 Timestamp (nanoseconds since start)
+2 CPU ID
+3 Trap number (in hexadecimal)
+4 Trap name
+5 Trap rate per interval
+.TE
+
+Each field is separated with whitespace. If the format is modified, it will be
+modified by adding potentially new fields beginning with field 6; extant fields
+will remain unchanged.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-r\fR \fIrate\fR \fR
+.ad
+.RS 24n
+Explicitly sets the sampling rate to be \fIrate\fR samples per second. If this
+option is specified, \fBtrapstat\fR's output changes from a traps-per-second to
+traps-per-sampling-interval.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-t\fR\fR
+.ad
+.RS 24n
+Enables TLB statistics.
+.sp
+A table is displayed with four principal columns of data: \fIitlb-miss\fR,
+\fIitsb-miss\fR, \fIdtlb-miss\fR, and \fIdtsb-miss\fR. The columns contain both
+the rate of the corresponding event and the percentage of \fBCPU\fR time spent
+processing the event. The percentage of \fBCPU\fR time is given only in terms
+of a single \fBCPU\fR. The rows of the table correspond to \fBCPU\fRs, with
+each \fBCPU\fR consuming two rows: one row for user-mode events (denoted with
+\fBu\fR) and one row for kernel-mode events (denoted with \fBk\fR). For each
+row, the percentage of \fBCPU\fR time is totalled and displayed in the
+rightmost column. The \fBCPU\fRs are delineated with a solid line. If the
+parsable option (\fB-P\fR) is specified in addition to the \fB-t\fR option, the
+format of the data is as follows:
+.sp
+
+.sp
+.TS
+c c
+l l .
+Field Contents
+1 Timestamp (nanoseconds since start)
+2 CPU ID
+3 Mode (\fBk\fR denotes kernel, \fBu\fR denotes user)
+4 I-TLB misses
+5 Percentage of time in I-TLB miss handler
+6 I-TSB misses
+7 Percentage of time in I-TSB miss handler
+8 D-TLB misses
+9 Percentage of time in D-TLB miss handler
+10 D-TSB misses
+11 Percentage of time in D-TSB miss handler
+.TE
+
+Each field is separated with whitespace. If the format is modified, it will be
+modified by adding potentially new fields beginning with field 12; extant
+fields will remain unchanged.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-T\fR \fR
+.ad
+.RS 24n
+Enables \fBTLB\fR statistics, with page size information. As with the \fB-t\fR
+option, a table is displayed with four principal columns of data:
+\fIitlb-miss\fR, \fIitsb-miss\fR, \fIdtlb-miss\fR, and \fIdtsb-miss\fR. The
+columns contain both the absolute number of the corresponding event, and the
+percentage of \fBCPU\fR time spent processing the event. The percentage of
+\fBCPU\fR time is given only in terms of a single \fBCPU\fR. The rows of the
+table correspond to \fBCPU\fRs, with each \fBCPU\fR consuming two sets of rows:
+one set for user-level events (denoted with \fBu\fR) and one set for
+kernel-level events (denoted with \fBk\fR). Each set, in turn, contains as many
+rows as there are page sizes supported (see \fBgetpagesizes\fR(3C)). For each
+row, the percentage of \fBCPU\fR time is totalled and displayed in the
+right-most column. The two sets are delineated with a dashed line; CPUs are
+delineated with a solid line. If the parsable option (\fB-P\fR) is specified in
+addition to the \fB-T\fR option, the format of the data is as follows:
+.sp
+
+.sp
+.TS
+c c
+l l .
+Field Contents
+1 Timestamp (nanoseconds since start)
+2 CPU ID
+3 Mode \fBk\fR denotes kernel, \fBu\fR denotes user)
+4 Page size, in decimal
+5 I-TLB misses
+6 Percentage of time in I-TLB miss handler
+7 I-TSB misses
+8 Percentage of time in I-TSB miss handler
+9 D-TLB misses
+10 Percentage of time in D-TLB miss handler
+11 D-TSB misses
+12 Percentage of time in D-TSB miss handler
+.TE
+
+Each field is separated with whitespace. If the format is modified, it will be
+modified by adding potentially new fields beginning with field 13; extant
+fields will remain unchanged.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRUsing \fBtrapstat\fR Without Options
+.sp
+.LP
+When run without options, \fBtrapstat\fR displays a table of trap types and
+CPUs. At most six columns can fit in the default terminal width; if (as in this
+example) there are more than six CPUs, multiple tables are displayed:
+
+.sp
+.in +2
+.nf
+example# \fBtrapstat\fR
+vct name | cpu0 cpu1 cpu4 cpu5 cpu8 cpu9
+------------------------+------------------------------------------------------
+ 24 cleanwin | 6446 4837 6368 2153 2623 1321
+ 41 level-1 | 100 0 0 0 1 0
+ 44 level-4 | 0 1 1 1 0 0
+ 45 level-5 | 0 0 0 0 0 0
+ 47 level-7 | 0 0 0 0 9 0
+ 49 level-9 | 100 100 100 100 100 100
+ 4a level-10 | 100 0 0 0 0 0
+ 4d level-13 | 6 10 7 16 13 11
+ 4e level-14 | 100 0 0 0 1 0
+ 60 int-vec | 2607 2740 2642 2922 2920 3033
+ 64 itlb-miss | 3129 2475 3167 1037 1200 569
+ 68 dtlb-miss | 121061 86162 109838 37386 45639 20269
+ 6c dtlb-prot | 997 847 1061 379 406 184
+ 84 spill-user-32 | 2809 2133 2739 200806 332776 454504
+ 88 spill-user-64 | 45819 207856 93487 228529 68373 77590
+ 8c spill-user-32-cln | 784 561 767 274 353 215
+ 90 spill-user-64-cln | 9 37 17 39 12 13
+ 98 spill-kern-64 | 62913 50145 63869 21916 28431 11738
+ a4 spill-asuser-32 | 1327 947 1288 460 572 335
+ a8 spill-asuser-64 | 26 48 18 54 10 14
+ ac spill-asuser-32-cln | 4580 3599 4555 1538 1978 857
+ b0 spill-asuser-64-cln | 26 0 0 2 0 0
+ c4 fill-user-32 | 2862 2161 2798 191746 318115 435850
+ c8 fill-user-64 | 45813 197781 89179 217668 63905 74281
+ cc fill-user-32-cln | 3802 2833 3733 10153 16419 19475
+ d0 fill-user-64-cln | 329 10105 4873 10603 4235 3649
+ d8 fill-kern-64 | 62519 49943 63611 21824 28328 11693
+108 syscall-32 | 2285 1634 2278 737 957 383
+126 self-xcall | 100 0 0 0 0 0
+
+vct name | cpu12 cpu13 cpu14 cpu15
+------------------------+------------------------------------
+ 24 cleanwin | 5435 4232 6302 6104
+ 41 level-1 | 0 0 0 0
+ 44 level-4 | 2 0 0 1
+ 45 level-5 | 0 0 0 0
+ 47 level-7 | 0 0 0 0
+ 49 level-9 | 100 100 100 100
+ 4a level-10 | 0 0 0 0
+ 4d level-13 | 15 11 22 11
+ 4e level-14 | 0 0 0 0
+ 60 int-vec | 2813 2833 2738 2714
+ 64 itlb-miss | 2636 1925 3133 3029
+ 68 dtlb-miss | 90528 70639 107786 103425
+ 6c dtlb-prot | 819 675 988 954
+ 84 spill-user-32 | 175768 39933 2811 2742
+ 88 spill-user-64 | 0 241348 96907 118298
+ 8c spill-user-32-cln | 681 513 753 730
+ 90 spill-user-64-cln | 0 42 16 20
+ 98 spill-kern-64 | 52158 40914 62305 60141
+ a4 spill-asuser-32 | 1113 856 1251 1208
+ a8 spill-asuser-64 | 0 64 16 24
+ ac spill-asuser-32-cln | 3816 2942 4515 4381
+ b0 spill-asuser-64-cln | 0 0 0 0
+ c4 fill-user-32 | 170744 38444 2876 2784
+ c8 fill-user-64 | 0 230381 92941 111694
+ cc fill-user-32-cln | 8550 3790 3612 3553
+ d0 fill-user-64-cln | 0 10726 4495 5845
+ d8 fill-kern-64 | 51968 40760 62053 59922
+108 syscall-32 | 1839 1495 2144 2083
+126 self-xcall | 0 0 0 0
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRUsing \fBtrapset\fR with CPU Filtering
+.sp
+.LP
+ The \fB-c\fR option can be used to limit the \fBCPU\fRs on which
+\fBtrapstat\fR is enabled. This example limits \fBCPU 1\fR and \fBCPU\fRs
+\fB12\fR through \fB15\fR.
+
+.sp
+.in +2
+.nf
+example# \fBtrapstat -c 1,12-15\fR
+
+
+vct name | cpu1 cpu12 cpu13 cpu14 cpu15
+------------------------+---------------------------------------------
+ 24 cleanwin | 6923 3072 2500 3518 2261
+ 44 level-4 | 3 0 0 1 1
+ 49 level-9 | 100 100 100 100 100
+ 4d level-13 | 23 8 14 19 14
+ 60 int-vec | 2559 2699 2752 2688 2792
+ 64 itlb-miss | 3296 1548 1174 1698 1087
+ 68 dtlb-miss | 114788 54313 43040 58336 38057
+ 6c dtlb-prot | 1046 549 417 545 370
+ 84 spill-user-32 | 66551 29480 301588 26522 213032
+ 88 spill-user-64 | 0 318652 111239 299829 221716
+ 8c spill-user-32-cln | 856 347 331 416 293
+ 90 spill-user-64-cln | 0 55 21 59 39
+ 98 spill-kern-64 | 66464 31803 24758 34004 22277
+ a4 spill-asuser-32 | 1423 569 560 698 483
+ a8 spill-asuser-64 | 0 74 32 98 46
+ ac spill-asuser-32-cln | 4875 2250 1728 2384 1584
+ b0 spill-asuser-64-cln | 0 2 0 1 0
+ c4 fill-user-32 | 64193 28418 287516 27055 202093
+ c8 fill-user-64 | 0 305016 106692 288542 210654
+ cc fill-user-32-cln | 6733 3520 15185 2396 12035
+ d0 fill-user-64-cln | 0 13226 3506 12933 11032
+ d8 fill-kern-64 | 66220 31680 24674 33892 22196
+108 syscall-32 | 2446 967 817 1196 755
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRUsing \fBtrapstat\fR with TLB Statistics
+.sp
+.LP
+The \fB-t\fR option displays in-depth \fBTLB\fR statistics, including the
+amount of time spent performing \fBTLB\fR miss processing. The following
+example shows that the machine is spending 14.1 percent of its time just
+handling D-TLB misses:
+
+.sp
+.in +2
+.nf
+example# \fBtrapstat -t\fR
+cpu m| itlb-miss %tim itsb-miss %tim | dtlb-miss %tim dtsb-miss %tim |%tim
+-----+-------------------------------+-------------------------------+----
+ 0 u| 2571 0.3 0 0.0 | 10802 1.3 0 0.0 | 1.6
+ 0 k| 0 0.0 0 0.0 | 106420 13.4 184 0.1 |13.6
+-----+-------------------------------+-------------------------------+----
+ 1 u| 3069 0.3 0 0.0 | 10983 1.2 100 0.0 | 1.6
+ 1 k| 27 0.0 0 0.0 | 106974 12.6 19 0.0 |12.7
+-----+-------------------------------+-------------------------------+----
+ 2 u| 3033 0.3 0 0.0 | 11045 1.2 105 0.0 | 1.6
+ 2 k| 43 0.0 0 0.0 | 107842 12.7 108 0.0 |12.8
+-----+-------------------------------+-------------------------------+----
+ 3 u| 2924 0.3 0 0.0 | 10380 1.2 121 0.0 | 1.6
+ 3 k| 54 0.0 0 0.0 | 102682 12.2 16 0.0 |12.2
+-----+-------------------------------+-------------------------------+----
+ 4 u| 3064 0.3 0 0.0 | 10832 1.2 120 0.0 | 1.6
+ 4 k| 31 0.0 0 0.0 | 107977 13.0 236 0.1 |13.1
+=====+===============================+===============================+====
+ ttl | 14816 0.3 0 0.0 | 585937 14.1 1009 0.0 |14.5
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 4 \fRUsing \fBtrapstat\fR with TLB Statistics and Page Size
+Information
+.sp
+.LP
+By specifying the \fB-T\fR option, \fBtrapstat\fR shows \fBTLB\fR misses broken
+down by page size. In this example, CPU 0 is spending 7.9 percent of its time
+handling user-mode TLB misses on 8K pages, and another 2.3 percent of its time
+handling user-mode TLB misses on 64K pages.
+
+.sp
+.in +2
+.nf
+example# \fBtrapstat -T -c 0\fR
+cpu m size| itlb-miss %tim itsb-miss %tim | dtlb-miss %tim dtsb-miss %tim |%tim
+----------+-------------------------------+-------------------------------+----
+ 0 u 8k| 1300 0.1 15 0.0 | 104897 7.9 90 0.0 | 8.0
+ 0 u 64k| 0 0.0 0 0.0 | 29935 2.3 7 0.0 | 2.3
+ 0 u 512k| 0 0.0 0 0.0 | 3569 0.2 2 0.0 | 0.2
+ 0 u 4m| 0 0.0 0 0.0 | 233 0.0 2 0.0 | 0.0
+- - - - - + - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - + - -
+ 0 k 8k| 13 0.0 0 0.0 | 71733 6.5 110 0.0 | 6.5
+ 0 k 64k| 0 0.0 0 0.0 | 0 0.0 0 0.0 | 0.0
+ 0 k 512k| 0 0.0 0 0.0 | 0 0.0 206 0.1 | 0.1
+ 0 k 4m| 0 0.0 0 0.0 | 0 0.0 0 0.0 | 0.0
+==========+===============================+===============================+====
+ ttl | 1313 0.1 15 0.0 | 210367 17.1 417 0.2 |17.5
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 5 \fRUsing \fBtrapstat\fR with Entry Filtering
+.sp
+.LP
+By specifying the \fB-e\fR option, \fBtrapstat\fR displays statistics for only
+specific trap types. Using this option minimizes the probe effect when seeking
+specific data. This example yields statistics for only the \fIdtlb-prot\fR and
+\fIsyscall-32\fR traps on CPUs 12 through 15:
+
+.sp
+.in +2
+.nf
+example# \fBtrapstat -e dtlb-prot,syscall-32 -c 12-15\fR
+vct name | cpu12 cpu13 cpu14 cpu15
+------------------------+------------------------------------
+ 6c dtlb-prot | 817 754 1018 560
+108 syscall-32 | 1426 1647 2186 1142
+
+vct name | cpu12 cpu13 cpu14 cpu15
+------------------------+------------------------------------
+ 6c dtlb-prot | 1085 996 800 707
+108 syscall-32 | 2578 2167 1638 1452
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 6 \fRUsing \fBtrapstat\fR with a Higher Sampling Rate
+.sp
+.LP
+The following example uses the \fB-r\fR option to specify a sampling rate of
+1000 samples per second, and filter only for the level-10 trap. Additionally,
+specifying the \fB-P\fR option yields parsable output.
+
+.sp
+.LP
+Notice the timestamp difference between the level-10 events: 9,998,000
+nanoseconds and 10,007,000 nanoseconds. These level-10 events correspond to the
+system clock, which by default ticks at 100 hertz (that is, every 10,000,000
+nanoseconds).
+
+.sp
+.in +2
+.nf
+example# \fBtrapstat -e level-10 -P -r 1000\fR
+1070400 0 4a level-10 0
+2048600 0 4a level-10 0
+3030400 0 4a level-10 1
+4035800 0 4a level-10 0
+5027200 0 4a level-10 0
+6027200 0 4a level-10 0
+7027400 0 4a level-10 0
+8028200 0 4a level-10 0
+9026400 0 4a level-10 0
+10029600 0 4a level-10 0
+11028600 0 4a level-10 0
+12024000 0 4a level-10 0
+13028400 0 4a level-10 1
+14031200 0 4a level-10 0
+15027200 0 4a level-10 0
+16027600 0 4a level-10 0
+17025000 0 4a level-10 0
+18026000 0 4a level-10 0
+19027800 0 4a level-10 0
+20025600 0 4a level-10 0
+21025200 0 4a level-10 0
+22025000 0 4a level-10 0
+23035400 0 4a level-10 1
+24027400 0 4a level-10 0
+25026000 0 4a level-10 0
+26027000 0 4a level-10 0
+.fi
+.in -2
+.sp
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c c
+l l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+Interface Stability
+ Human Readable Output Unstable
+ Parsable Output Evolving
+.TE
+
+.SH SEE ALSO
+.LP
+.BR pmap (1),
+.BR ppgsz (1),
+.BR getpagesizes (3C),
+.BR lockstat (8),
+.BR pbind (8),
+.BR psrinfo (8),
+.BR psrset (8)
+.sp
+.LP
+\fISun Microelectronics UltraSPARC II User's Manual,\fR January 1997, STP1031,
+.sp
+.LP
+\fIThe SPARC Architecture Manual, Version 9,\fR 1994, Prentice-Hall.
+.SH NOTES
+.LP
+When enabled, \fBtrapstat\fR induces a varying probe effect, depending on the
+type of information collected. While the precise probe effect depends upon the
+specifics of the hardware, the following table can be used as a rough guide:
+.sp
+
+.sp
+.TS
+c c
+l l .
+Option Approximate probe effect
+default 3-5% per trap
+\fB-e\fR 3-5% per specified trap
+\fB-t\fR, \fB-T\fR T{
+40-45% per TLB miss trap hitting in the TSB, 25-30% per TLB miss trap missing in the TSB
+T}
+.TE
+
+.sp
+.LP
+These probe effects are \fIper trap\fR not for the system as a whole. For
+example, running \fBtrapstat\fR with the default options on a system that
+spends 7% of total time handling traps induces a performance degradation of
+less than one half of one percent; running \fBtrapstat\fR with the \fB-t\fR or
+\fB-T\fR option on a system spending 5% of total time processing TLB misses
+induce a performance degradation of no more than 2.5%.
+.sp
+.LP
+When run with the \fB-t\fR or \fB-T\fR option, \fBtrapstat\fR accounts for its
+probe effect when calculating the \fI%tim\fR fields. This assures that the
+\fI%tim\fR fields are a reasonably accurate indicator of the time a given
+workload is spending handling TLB misses \(em regardless of the perturbing
+presence of \fBtrapstat\fR.
+.sp
+.LP
+While the \fI%tim\fR fields include the explicit cost of executing the TLB miss
+handler, they do \fInot\fR include the implicit costs of TLB miss traps (for
+example, pipeline effects, cache pollution, etc). These implicit costs become
+more significant as the trap rate grows; if high \fI%tim\fR values are reported
+(greater than 50%), you can accurately infer that much of the balance of time
+is being spent on the implicit costs of the TLB miss traps.
+.sp
+.LP
+Due to the potential system wide degradation induced, only the super-user can
+run \fBtrapstat\fR.
+.sp
+.LP
+Due to the limitation of the underlying statistics gathering methodology, only
+one instance of \fBtrapstat\fR can run at a time.
diff --git a/usr/src/man/man8/ttyadm.8 b/usr/src/man/man8/ttyadm.8
new file mode 100644
index 0000000000..f13ff6406e
--- /dev/null
+++ b/usr/src/man/man8/ttyadm.8
@@ -0,0 +1,228 @@
+'\" te
+.\" Copyright (c) 1996, Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH TTYADM 8 "Sep 14, 1992"
+.SH NAME
+ttyadm \- format and output port monitor-specific information
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/ttyadm\fR [\fB-b\fR] [\fB-c\fR] [\fB-h\fR] [\fB-I\fR] [\fB-r\fR \fIcount\fR] [\fB-i\fR \fImsg\fR]
+ [\fB-m\fR \fImodules\fR] [\fB-p\fR \fIprompt\fR] [\fB-t\fR \fItimeout\fR] [\fB-S\fR y | n]
+ [\fB-T\fR \fItermtype\fR] \fB-d\fR \fIdevice\fR \fB-l\fR \fIttylabel\fR \fB-s\fR \fIservice\fR
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/ttyadm\fR \fB-V\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBttyadm\fR command is an administrative command that formats
+\fBttymon\fR(8)-specific information and writes it to standard output. The
+Service Access Facility (SAF) requires each port monitor to provide such a
+command. Note that the port monitor administrative file is updated by the
+Service Access Controller's administrative commands, \fBsacadm\fR(8) and
+\fBpmadm\fR(8). \fBttyadm\fR provides a means of presenting formatted port
+monitor-specific (\fBttymon\fR-specific) data to these commands.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-b\fR\fR
+.ad
+.RS 15n
+Set the ``bi-directional port'' flag. When this flag is set, the line can be
+used in both directions. \fBttymon\fR will allow users to connect to the
+service associated with the port, but if the port is free, \fBuucico\fR(8),
+\fBcu\fR(1C), or \fBct\fR(1C) can use it for dialing out.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-c\fR\fR
+.ad
+.RS 15n
+Set the connect-on-carrier flag for the port. If the \fB-c\fR flag is set,
+\fBttymon\fR will invoke the port's associated service immediately when a
+connect indication is received (that is, no prompt is printed and no baud-rate
+searching is done).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-d\fR\fI device\fR\fR
+.ad
+.RS 15n
+\fIdevice\fR is the full pathname of the device file for the TTY port.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-h\fR\fR
+.ad
+.RS 15n
+Set the hangup flag for the port. If the \fB-h\fR flag is not set, \fBttymon\fR
+will force a hangup on the line by setting the speed to \fB0\fR before setting
+the speed to the default or specified value.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-i\fR\fI message\fR\fR
+.ad
+.RS 15n
+Specify the inactive (disabled) response message. This message will be sent to
+the TTY port if the port is disabled or the \fBttymon\fR monitoring the port is
+disabled.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-I\fR\fR
+.ad
+.RS 15n
+Initialize only. If the \fB-I\fR option is used, \fBttymon\fR will invoke the
+service only once. This can be used to configure a particular device without
+actually monitoring it, as with software carrier.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR\fI ttylabel\fR\fR
+.ad
+.RS 15n
+Specify which \fIttylabel\fR in the \fB/etc/ttydefs\fR file to use as the
+starting point when searching for the proper baud rate.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-m\fR\fI modules\fR\fR
+.ad
+.RS 15n
+Specify a list of pushable STREAMS modules. The modules will be pushed in the
+order in which they are specified before the service is invoked. \fImodules\fR
+must be a comma-separated list of modules, with no white space included. Any
+modules currently on the stream will be popped before these modules are
+pushed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR\fI prompt\fR\fR
+.ad
+.RS 15n
+Specify the prompt message, for example, ``\fBlogin:\fR''.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-r\fR\fI count\fR\fR
+.ad
+.RS 15n
+When the \fB-r\fR option is invoked, \fBttymon\fR will wait until it receives
+data from the port before it displays a prompt. If \fIcount\fR is \fB0\fR,
+\fBttymon\fR will wait until it receives any character. If \fIcount\fR is
+greater than \fB0\fR, \fBttymon\fR will wait until \fIcount\fR newlines have
+been received.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR\fI service\fR\fR
+.ad
+.RS 15n
+\fIservice\fR is the full pathname of the service to be invoked when a
+connection request is received. If arguments are required, the command and its
+arguments must be enclosed in double quotes (" ").
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-S\fR \fBy|n\fR\fR
+.ad
+.RS 15n
+Set the software carrier value. \fBy\fR will turn software carrier on. \fBn\fR
+will turn software carrier off.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-t\fR\fI timeout\fR\fR
+.ad
+.RS 15n
+Specify that \fBttymon\fR should close a port if the open on the port succeeds,
+and no input data is received in \fItimeout\fR seconds.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-T\fR\fI termtype\fR\fR
+.ad
+.RS 15n
+Set the terminal type. The \fBTERM\fR environment variable will be set to
+\fItermtype\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-V\fR\fR
+.ad
+.RS 15n
+Display the version number of the current \fB/usr/lib/saf/ttymon\fR command.
+.RE
+
+.SH OUTPUT
+.sp
+.LP
+If successful, \fBttyadm\fR will generate the requested information, write it
+to standard output, and exit with a status of \fB0\fR. If \fBttyadm\fR is
+invoked with an invalid number of arguments or invalid arguments, or if an
+incomplete option is specified, an error message will be written to standard
+error and \fBttymon\fR will exit with a non-zero status.
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/ttydefs\fR\fR
+.ad
+.RS 16n
+
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR ct (1C),
+.BR cu (1C),
+.BR attributes (7),
+.BR pmadm (8),
+.BR sacadm (8),
+.BR ttymon (8),
+.BR uucico (8)
+.sp
+.LP
+\fI\fR
diff --git a/usr/src/man/man8/ttymon.8 b/usr/src/man/man8/ttymon.8
new file mode 100644
index 0000000000..1f566d6a4d
--- /dev/null
+++ b/usr/src/man/man8/ttymon.8
@@ -0,0 +1,344 @@
+'\" te
+.\" Copyright 1989 AT&T
+.\" Copyright (C) 2004, Sun Microsystems, Inc.
+.\" All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH TTYMON 8 "Feb 22, 2005"
+.SH NAME
+ttymon \- port monitor for terminal ports
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/saf/ttymon\fR
+.fi
+
+.LP
+.nf
+\fB/usr/lib/saf/ttymon\fR \fB-g\fR [\fB-d\fR \fIdevice\fR] [\fB-h\fR] [\fB-t\fR \fItimeout\fR]
+ [\fB-l\fR \fIttylabel\fR] [\fB-p\fR \fIprompt\fR] [\fB-m\fR \fImodules\fR] [\fB-T\fR \fItermtype\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBttymon\fR is a STREAMS-based TTY port monitor. Its function is to monitor
+ports, to set terminal modes, baud rates, and line disciplines for the ports,
+and to connect users or applications to services associated with the ports.
+Normally, \fBttymon\fR is configured to run under the Service Access
+Controller, \fBsac\fR(8), as part of the Service Access Facility (SAF). It is
+configured using the \fBsacadm\fR(8) command. Each instance of \fBttymon\fR
+can monitor multiple ports. The ports monitored by an instance of \fBttymon\fR
+are specified in the port monitor's administrative file. The administrative
+file is configured using the \fBpmadm\fR(8) and \fBttyadm\fR(8) commands.
+When an instance of \fBttymon\fR is invoked by the \fBsac\fR command, it starts
+to monitor its ports. For each port, \fBttymon\fR first initializes the line
+disciplines, if they are specified, and the speed and terminal settings. For
+ports with entries in \fB/etc/logindevperm\fR, device owner, group and
+permissions are set. (See \fBlogindevperm\fR(5).) The values used for
+initialization are taken from the appropriate entry in the TTY settings file.
+This file is maintained by the \fBsttydefs\fR(8) command. Default line
+disciplines on ports are usually set up by the \fBautopush\fR(8) command of
+the Autopush Facility.
+.sp
+.LP
+\fBttymon\fR then writes the prompt and waits for user input. If the user
+indicates that the speed is inappropriate by pressing the BREAK key,
+\fBttymon\fR tries the next speed and writes the prompt again. When valid input
+is received, \fBttymon\fR interprets the per-service configuration file for the
+port, if one exists, creates a \fButmpx\fR entry if required (see
+\fButmpx\fR(5)), establishes the service environment, and then invokes the
+service associated with the port. Valid input consists of a string of at least
+one non-newline character, terminated by a carriage return. After the service
+terminates, \fBttymon\fR cleans up the \fButmpx\fR entry, if one exists, and
+returns the port to its initial state.
+.sp
+.LP
+If \fIautobaud\fR is enabled for a port, \fBttymon\fR will try to determine the
+baud rate on the port automatically. Users must enter a carriage return before
+\fBttymon\fR can recognize the baud rate and print the prompt. Currently, the
+baud rates that can be determined by \fIautobaud\fR are \fB110\fR, \fB1200\fR,
+\fB2400\fR, \fB4800\fR, and \fB9600\fR.
+.sp
+.LP
+If a port is configured as a bidirectional port, \fBttymon\fR will allow users
+to connect to a service, and, if the port is free, will allow \fBuucico\fR(8),
+\fBcu\fR(1C), or \fBct\fR(1C) to use it for dialing out. If a port is
+bidirectional, \fBttymon\fR will wait to read a character before it prints a
+prompt.
+.sp
+.LP
+If the \fIconnect-on-carrier\fR flag is set for a port, \fBttymon\fR will
+immediately invoke the port's associated service when a connection request is
+received. The prompt message will not be sent.
+.sp
+.LP
+If a port is disabled, \fBttymon\fR will not start any service on that port. If
+a disabled message is specified, \fBttymon\fR will send out the disabled
+message when a connection request is received. If \fBttymon\fR is disabled, all
+ports under that instance of \fBttymon\fR will also be disabled.
+.SS "Service Invocation"
+.sp
+.LP
+The service \fBttymon\fR invokes for a port is specified in the \fBttymon\fR
+administrative file. \fBttymon\fR will scan the character string giving the
+service to be invoked for this port, looking for a \fB%d\fR or a \fB%%\fR
+two-character sequence. If \fB%d\fR is found, \fBttymon\fR will modify the
+service command to be executed by replacing those two characters by the full
+path name of this port (the device name). If \fB%%\fR is found, they will be
+replaced by a single \fB%\fR. When the service is invoked, file descriptor
+\fB0\fR, \fB1\fR, and \fB2\fR are opened to the port device for reading and
+writing. The service is invoked with the user ID, group ID and current home
+directory set to that of the user name under which the service was registered
+with \fBttymon\fR. Two environment variables, \fBHOME\fR and \fBTTYPROMPT\fR,
+are added to the service's environment by \fBttymon\fR. \fBHOME\fR is set to
+the home directory of the user name under which the service is invoked.
+\fBTTYPROMPT\fR is set to the prompt string configured for the service on the
+port. This is provided so that a service invoked by \fBttymon\fR has a means of
+determining if a prompt was actually issued by \fBttymon\fR and, if so, what
+that prompt actually was.
+.sp
+.LP
+See \fBttyadm\fR(8) for options that can be set for ports monitored by
+\fBttymon\fR under the Service Access Controller.
+.SS "System Console Invocation"
+.sp
+.LP
+The invocation of ttymon on the system console is managed under \fBsmf\fR(7) by
+the service \fBsvc:/system/console-login\fR. It provides a number of properties
+within the property group \fBttymon\fR to control the invocation, as follows:
+.sp
+.in +2
+.nf
+NAME TYPE TTYMON OPTION
+----------------------------------------------------------
+device astring [-d device]
+nohangup boolean [-h]
+label astring [-l label]
+modules astring [-m module1,module2]
+prompt astring [-p prompt]
+timeout count [-t timeout]
+terminal_type astring [-T termtype]
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+If any value is the empty string or an integer set to zero, then the option is
+not passed to the ttymon invocation. The \fB-g\fR option is always specified
+for this invocation. The \fB-d\fR option always defaults to \fB/dev/console\fR
+if it is not set.
+.sp
+.LP
+See \fBEXAMPLES\fR.
+.SH SECURITY
+.sp
+.LP
+\fBttymon\fR uses \fBpam\fR(3PAM) for session management. The \fBPAM\fR
+configuration policy, listed through \fB/etc/pam.conf\fR, specifies the modules
+to be used for \fBttymon\fR. Here is a partial \fBpam.conf\fR file with entries
+for \fBttymon\fR using the UNIX session management module.
+.sp
+.in +2
+.nf
+ttymon session required /usr/lib/security/pam_unix_session.so.1
+.fi
+.in -2
+
+.sp
+.LP
+If there are no entries for the \fBttymon\fR service, then the entries for the
+"other" service will be used.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-g\fR\fR
+.ad
+.RS 14n
+A special invocation of \fBttymon\fR is provided with the \fB-g\fR option. This
+form of the command should only be called by applications that need to set the
+correct baud rate and terminal settings on a port and then connect to
+\fBlogin\fR service, but that cannot be pre-configured under the SAC. The
+following combinations of options can be used with \fB-g\fR:
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-d\fR\fIdevice\fR\fR
+.ad
+.RS 14n
+\fIdevice\fR is the full path name of the port to which \fBttymon\fR is to
+attach. If this option is not specified, file descriptor \fB0\fR must be set up
+by the invoking process to a TTY port.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-h\fR\fR
+.ad
+.RS 14n
+If the -h flag is not set, \fBttymon\fR will force a hangup on the line by
+setting the speed to zero before setting the speed to the default or specified
+speed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR\fIttylabel\fR\fR
+.ad
+.RS 14n
+\fIttylabel\fR is a link to a speed and TTY definition in the \fBttydefs\fR
+file. This definition tells \fBttymon\fR at what speed to run initially, what
+the initial TTY settings are, and what speed to try next if the user indicates
+that the speed is inappropriate by pressing the BREAK key. The default speed is
+9600 baud.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-m\fR\fImodules\fR\fR
+.ad
+.RS 14n
+When initializing the port, \fBttymon\fR will pop all modules on the port, and
+then push \fImodules\fR in the order specified. \fImodules\fR is a
+comma-separated list of pushable modules. Default modules on the ports are
+usually set up by the Autopush Facility.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR\fIprompt\fR\fR
+.ad
+.RS 14n
+Allows the user to specify a prompt string. The default prompt is \fBLogin:\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-t\fR\fItimeout\fR\fR
+.ad
+.RS 14n
+Specifies that \fBttymon\fR should exit if no one types anything in
+\fItimeout\fR seconds after the prompt is sent.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-T\fR\fItermtype\fR\fR
+.ad
+.RS 14n
+Sets the \fBTERM\fR environment variable to \fItermtype\fR.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRSetting the Terminal Type
+.sp
+.LP
+The following example sets the value of the terminal type (\fB-T\fR) option for
+the system console \fBttymon\fR invocation:
+
+.sp
+.in +2
+.nf
+ svccfg -s svc:/system/console-login setprop \e
+ ttymon/terminal_type = "xterm"
+ svcadm refresh svc:/system/console-login:default
+.fi
+.in -2
+.sp
+
+.SH ENVIRONMENT VARIABLES
+.sp
+.LP
+If any of the \fBLC_*\fR variables ( \fBLC_CTYPE\fR, \fBLC_MESSAGES\fR,
+\fBLC_TIME\fR, \fBLC_COLLATE\fR, \fBLC_NUMERIC\fR, and \fBLC_MONETARY\fR ) (see
+\fBenviron\fR(7)) are not set in the environment, the operational behavior of
+\fBttymon\fR for each corresponding locale category is determined by the value
+of the \fBLANG\fR environment variable. If \fBLC_ALL\fR is set, its contents
+are used to override both the \fBLANG\fR and the other \fBLC_*\fR variables. If
+none of the above variables is set in the environment, the "C" (U.S. style)
+locale determines how \fBttymon\fR behaves.
+.sp
+.ne 2
+.na
+\fB\fBLC_CTYPE\fR\fR
+.ad
+.RS 12n
+Determines how \fBttymon\fR handles characters. When \fBLC_CTYPE\fR is set to a
+valid value, \fBttymon\fR can display and handle text and filenames containing
+valid characters for that locale. \fBttymon\fR can display and handle Extended
+Unix Code (EUC) characters where any individual character can be 1, 2, or 3
+bytes wide. \fBttymon\fR can also handle EUC characters of 1, 2, or more column
+widths. In the "C" locale, only characters from ISO 8859-1 are valid.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/logindevperm\fR\fR
+.ad
+.RS 21n
+
+.RE
+
+.sp
+.LP
+The command-line syntax is Stable. The SMF properties are Evolving.
+.SH SEE ALSO
+.sp
+.LP
+.BR ct (1C),
+.BR cu (1C),
+.BR pam (3PAM),
+.BR logindevperm (5),
+.BR pam.conf (5),
+.BR utmpx (5),
+.BR attributes (7),
+.BR environ (7),
+.BR pam_authtok_check (7),
+.BR pam_authtok_get (7),
+.BR pam_authtok_store (7),
+.BR pam_dhkeys (7),
+.BR pam_passwd_auth (7),
+.BR pam_unix_account (7),
+.BR pam_unix_auth (7),
+.BR pam_unix_session (7),
+.BR smf (7),
+.BR autopush (8),
+.BR pmadm (8),
+.BR sac (8),
+.BR sacadm (8),
+.BR sttydefs (8),
+.BR ttyadm (8),
+.BR uucico (8)
+.sp
+.LP
+\fI\fR
+.SH NOTES
+.sp
+.LP
+If a port is monitored by more than one \fBttymon\fR, it is possible for the
+\fBttymon\fRs to send out prompt messages in such a way that they compete for
+input.
+.sp
+.LP
+The \fBpam_unix\fR(7) module is no longer supported. Similar functionality is
+provided by \fBpam_authtok_check\fR(7), \fBpam_authtok_get\fR(7),
+\fBpam_authtok_store\fR(7), \fBpam_dhkeys\fR(7), \fBpam_passwd_auth\fR(7),
+\fBpam_unix_account\fR(7), \fBpam_unix_auth\fR(7), and
+\fBpam_unix_session\fR(7).
diff --git a/usr/src/man/man8/tunefs.8 b/usr/src/man/man8/tunefs.8
new file mode 100644
index 0000000000..16b04b85fa
--- /dev/null
+++ b/usr/src/man/man8/tunefs.8
@@ -0,0 +1,130 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH TUNEFS 8 "Sep 19, 2013"
+.SH NAME
+tunefs \- tune an existing UFS file system
+.SH SYNOPSIS
+.LP
+.nf
+\fBtunefs\fR [\fB-a\fR \fImaxcontig\fR] [\fB-d\fR \fIrotdelay\fR] [\fB-e\fR \fImaxbpg\fR]
+ [\fB-m\fR \fIminfree\fR] [\fB-o\fR space | time] \fIspecial\fR | \fIfilesystem\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBtunefs\fR is designed to change the dynamic parameters of a file system that
+affect the layout policies. When using \fBtunefs\fR with \fIfilesystem\fR,
+\fIfilesystem\fR must be in \fB/etc/vfstab\fR. The parameters that can be
+changed are indicated by the options given below.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-a\fR \fImaxcontig\fR\fR
+.ad
+.RS 21n
+The maximum number of logical blocks, belonging to one file, that is allocated
+contiguously. The default is calculated as follows:
+.sp
+.in +2
+.nf
+\fBmaxcontig =\fR \fIdisk drive maximum transfer size / disk block size\fR
+.fi
+.in -2
+.sp
+
+If the disk drive's maximum transfer size cannot be determined, the default
+value for \fBmaxcontig\fR is calculated from kernel parameters as follows:
+.sp
+If \fBmaxphys\fR is less than \fBufs_maxmaxphys\fR, which is 1 Mbyte, then
+\fBmaxcontig\fR is set to \fBmaxphys\fR. Otherwise, \fBmaxcontig\fR is set to
+\fBufs_maxmaxphys\fR.
+.sp
+You can set \fBmaxcontig\fR to any positive integer value.
+.sp
+The actual value will be the lesser of what has been specified and what the
+hardware supports.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-d\fR \fIrotdelay\fR\fR
+.ad
+.RS 21n
+This parameter is obsolete as of the Solaris 10 release. The value is always
+set to \fB0\fR, regardless of the input value.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-e\fR \fImaxbpg\fR\fR
+.ad
+.RS 21n
+Indicates the maximum number of contiguous logical blocks any single file can
+allocate from a cylinder group before it is forced to begin allocating blocks
+from another cylinder group. Typically this value is set to approximately one
+quarter of the total contiguous logical blocks in a cylinder group. The intent
+is to prevent any single file from using up all the blocks in a single cylinder
+group, thus degrading access times for all files subsequently allocated in that
+cylinder group.
+.sp
+The effect of this limit is to cause big files to do long seeks more frequently
+than if they were allowed to allocate all the blocks in a cylinder group before
+seeking elsewhere. For file systems with exclusively large files, this
+parameter should be set higher.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-m\fR \fIminfree\fR\fR
+.ad
+.RS 21n
+Specifies the minimum free space threshold, or the percentage of space held
+back from normal users. This value can be set to \fB0\fR. However, up to a
+factor of three in throughput will be lost over the performance obtained at a
+10% threshold. \fINote:\fR If the value is raised above the current usage
+level, users will be unable to allocate files until enough files have been
+deleted to get under the higher threshold.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-o\fR\fI space\fR\||\|\fItime\fR\fR
+.ad
+.RS 21n
+The file system can either be instructed to try to minimize the \fBtime\fR
+spent allocating blocks, or to try to minimize the \fBspace\fR fragmentation on
+the disk. The default is \fItime\fR.
+.sp
+Generally, you should optimize for time unless the file system is over 90%
+full.
+.RE
+
+.SH USAGE
+.sp
+.LP
+See \fBlargefile\fR(7) for the description of the behavior of \fBtunefs\fR when
+encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7),
+.BR largefile (7),
+.BR mkfs_ufs (8),
+.BR newfs (8)
+.\" Take this out and a Unix Demon will dog your steps from now until
+.\" the time_t's wrap around.
+.SH BUGS
+.sp
+You can tune a file system, but you can't tune a fish.
diff --git a/usr/src/man/man8/txzonemgr.8 b/usr/src/man/man8/txzonemgr.8
new file mode 100644
index 0000000000..de5e2aeedd
--- /dev/null
+++ b/usr/src/man/man8/txzonemgr.8
@@ -0,0 +1,67 @@
+'\" te
+.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH TXZONEMGR 8 "Dec 17, 2007"
+.SH NAME
+txzonemgr \- Trusted Extensions Zone Manager Configuration Utility
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/txzonemgr\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBtxzonemgr\fR shell script provides a simple, menu-based \fBGUI\fR wizard
+for creating, installing, initializing, and booting labeled zones on a system
+on which Trusted Extensions is enabled. The script also provides menu items for
+networking options, name services options, and making the global zone a client
+of an existing LDAP server. By default, all zones are configured to use the
+same name service and IP address as the global zone.
+.sp
+.LP
+\fBtxzonemgr\fR is run by roles granted in the Zone Management Rights Profile,
+or by root in the global zone. It takes no options and returns no values.
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Command Interface Stability Committed
+_
+Interactive Dialogue Not an Interface
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR zenity (1),
+.BR attributes (7),
+.BR rbac (7),
+.BR zones (7),
+.BR ifconfig (8),
+.BR zoneadm (8),
+.BR zonecfg (8)
+.sp
+.LP
+\fISolaris Trusted Extensions Administrator's Procedures\fR
+.SH NOTES
+.sp
+.LP
+If administering zones from \fBJDS\fR, use \fBtxzonemgr\fR rather than
+\fBCDE\fR actions.
+.sp
+.LP
+\fBtxzonemgr\fR uses the \fBzenity\fR command. For details, see the
+\fBzenity\fR(1) man page.
diff --git a/usr/src/man/man8/tzreload.8 b/usr/src/man/man8/tzreload.8
new file mode 100644
index 0000000000..31ae98419f
--- /dev/null
+++ b/usr/src/man/man8/tzreload.8
@@ -0,0 +1,78 @@
+.\"
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.\"
+.\"
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 2020 Joyent, Inc.
+.\"
+.Dd February 27, 2020
+.Dt TZRELOAD 8
+.Os
+.Sh NAME
+.Nm tzreload
+.Nd notify timezone update
+.Sh SYNOPSIS
+.Nm Op Fl a
+.Sh DESCRIPTION
+The
+.Nm
+command triggers processes to reread timezone information.
+The timezone information is cached in each process.
+In response to a
+.Nm
+command, this cache is updated on the next call to
+.Xr ctime 3C
+and
+.Xr mktime 3C
+by each process.
+By default,
+.Nm
+only triggers this update for the current zone.
+.Pp
+In addition to updating processes, the
+.Nm
+command also notifies
+.Xr cron 8
+to reinitialize the job scheduler with the new timezone information.
+.Sh OPTIONS
+The following options are supported:
+.Bl -tag -width Ds
+.It Fl a
+Update processes in all zones.
+.El
+.Sh FILES
+.Bl -tag -width Ds
+.It Pa /usr/share/lib/zoneinfo
+Standard zone information directory.
+.El
+.Sh INTERFACE STABILITY
+.Sy Committed
+.Sh SEE ALSO
+.Xr ctime 3C ,
+.Xr mktime 3C ,
+.Xr attributes 7 ,
+.Xr cron 8 ,
+.Xr zdump 8 ,
+.Xr zic 8 ,
+.Xr zoneadm 8
+.Sh NOTES
+Although
+.Nm
+reinitializes
+.Xr cron 8 ,
+applications that are affected by timezone changes still need to be restarted or
+reinitialized if they do not reread the new timezone information before timezone
+changes take place.
diff --git a/usr/src/man/man8/tzselect.8 b/usr/src/man/man8/tzselect.8
new file mode 100644
index 0000000000..b7ef06427d
--- /dev/null
+++ b/usr/src/man/man8/tzselect.8
@@ -0,0 +1,82 @@
+'\" te
+.\" Copyright (c) 2001, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH TZSELECT 8 "Sep 6, 2001"
+.SH NAME
+tzselect \- select a time zone
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/bin/tzselect\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBtzselect\fR program asks you a series of questions about the current
+location and outputs the resulting time zone description to standard output.
+The output is suitable as a value for the \fBTZ\fR environment variable.
+.sp
+.LP
+All user interaction is through standard input and standard error.
+.SH OPTIONS
+.sp
+.LP
+The \fBtzselect\fR command has no options.
+.SH EXIT STATUS
+.sp
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR \fR
+.ad
+.RS 6n
+Timezone information was successfully obtained.
+.RE
+
+.sp
+.ne 2
+.na
+\fB>\fB0\fR\fR
+.ad
+.RS 6n
+An error occurred.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/usr/share/lib/zoneinfo\fR \fR
+.ad
+.RS 28n
+directory containing timezone data files
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Stability Evolving
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR ctime (3C),
+.BR attributes (7),
+.BR zdump (8),
+.BR zic (8)
diff --git a/usr/src/man/man8/uadmin.8 b/usr/src/man/man8/uadmin.8
new file mode 100644
index 0000000000..5a5499f7eb
--- /dev/null
+++ b/usr/src/man/man8/uadmin.8
@@ -0,0 +1,78 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
+.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH UADMIN 8 "Mar 25, 2009"
+.SH NAME
+uadmin \- administrative control
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/uadmin\fR \fIcmd\fR \fIfcn\fR [\fImdep\fR]
+.fi
+
+.LP
+.nf
+\fB/sbin/uadmin\fR \fIcmd\fR \fIfcn\fR [\fImdep\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBuadmin\fR command provides control for basic administrative functions.
+This command is tightly coupled to the system administration procedures and is
+not intended for general use. It may be invoked only by the super-user.
+.sp
+.LP
+Both the \fIcmd\fR (command) and \fIfcn\fR (function) arguments are converted
+to integers and passed to the \fBuadmin\fR system call. The optional \fImdep\fR
+(machine dependent) argument is only available for the \fIcmd\fR values of
+\fB1\fR (\fBA_REBOOT\fR), \fB2\fR (\fBA_SHUTDOWN\fR), or \fB5\fR
+(\fBA_DUMP\fR). For any other \fIcmd\fR value, no \fImdep\fR command-line
+argument is allowed.
+.sp
+.LP
+When passing an \fImdep\fR value that contains whitespaces, the string must be
+grouped together as a single argument enclosed within quotes, for example:
+.sp
+.in +2
+.nf
+uadmin 1 1 "\fB-s\fR kernel/unix"
+.fi
+.in -2
+.sp
+
+.SH SEE ALSO
+.sp
+.LP
+.BR uadmin (2),
+.BR attributes (7),
+.BR halt (8),
+.BR reboot (8)
+.SH WARNINGS
+.sp
+.LP
+Shutting down or halting the system by means of \fBuadmin\fR does not update
+the boot archive. Avoid using this command after
+.RS +4
+.TP
+.ie t \(bu
+.el o
+editing of files such as \fB/etc/system\fR
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+installing new driver binaries or kernel binaries
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+updating existing driver binaries or kernel binaries.
+.RE
+.sp
+.LP
+Use \fBreboot\fR(8) or \fBhalt\fR(8) instead.
diff --git a/usr/src/man/man8/ucodeadm.8 b/usr/src/man/man8/ucodeadm.8
new file mode 100644
index 0000000000..19dc40bb12
--- /dev/null
+++ b/usr/src/man/man8/ucodeadm.8
@@ -0,0 +1,177 @@
+'\" te
+.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH UCODEADM 8 "Jul 10, 2007"
+.SH NAME
+ucodeadm \- update processor microcode
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/ucodeadm\fR \fB-v\fR
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/ucodeadm\fR \fB-u\fR\fImicrocode-text-file\fR
+.fi
+
+.LP
+.nf
+\fB/usr/sbin/ucodeadm\fR \fB-i\fR [\fB-R\fR \fIpath\fR] \fImicrocode-text-file\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBucodeadm\fR utility can be used to report running microcode revision on
+the processors, update microcode, or install microcode on the target system to
+be used during the boot process.
+.sp
+.LP
+The \fImicrocode-text-file\fR can be obtained from processor vendors.
+.SH OPTIONS
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.RS 26n
+Report microcode revision.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-u\fR \fImicrocode-text-file\fR\fR
+.ad
+.RS 26n
+Update microcode on all cross-call interrupt ready processors.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-i\fR \fImicrocode-text-file\fR\fR
+.ad
+.RS 26n
+Install microcode files on target system to be used during the next boot
+cycle. The text file name must have the vendor name prefix, such as
+"\fBintel\fR" or "\fBamd\fR".
+.sp
+By default the microcode files will be installed at:
+.sp
+.in +2
+.nf
+ /platform/i86pc/ucode/$VENDORSTR/
+.fi
+.in -2
+.sp
+
+where \fBVENDORSTR\fR is either "\fBGenuineIntel\fR" or "\fBAuthenticAMD\fR".
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-R\fR \fIalternate path\fR\fR
+.ad
+.RS 26n
+Install \fImicrocode\fR path in the \fIalternate path\fR.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRReporting the Microcode Revision
+.sp
+.LP
+The following example displays the microcode revision that is currently
+running:
+
+.sp
+.in +2
+.nf
+# ucodeadm -v
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRUpdating the Processor Microcode
+.sp
+.LP
+The following example updates the processor microcode to \fBintel-ucode.txt\fR:
+
+.sp
+.in +2
+.nf
+# ucodeadm -u intel-ucode.txt
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRInstalling the Microcode on the Target System
+.sp
+.LP
+The following example installs the microcode on the target system,
+\fB/export/ucode-path\fR:
+
+.sp
+.in +2
+.nf
+# ucodeadm -i -R /export/ucode-path intel-ucode.txt
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+If an alternate path is used when installing the microcode on the target
+system, the installed microcode file is not used on the next boot cycle.
+
+.SH EXIT STATUS
+.sp
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB0\fR
+.ad
+.RS 6n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB>0\fR
+.ad
+.RS 6n
+An error occurred.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Stable
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7),
+.BR psradm (8),
+.BR psrinfo (8)
diff --git a/usr/src/man/man8/ufsdump.8 b/usr/src/man/man8/ufsdump.8
new file mode 100644
index 0000000000..c9789d739d
--- /dev/null
+++ b/usr/src/man/man8/ufsdump.8
@@ -0,0 +1,673 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH UFSDUMP 8 "April 9, 2016"
+.SH NAME
+ufsdump \- incremental file system dump
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/ufsdump\fR [\fIoptions\fR] [\fIarguments\fR] \fIfiles_to_dump\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+\fBufsdump\fR backs up all files specified by \fIfiles_to_dump\fR (usually
+either a whole file system or files within a file system changed after a certain
+date) to magnetic tape, diskette, or disk file.
+.sp
+.LP
+The \fBufsdump\fR command can only be used on unmounted file systems, or those
+mounted read-only. Attempting to dump a mounted, read-write file system might
+result in a system disruption or the inability to restore files from the dump.
+Consider using the \fBfssnap\fR(8) command to create a file system snapshot if
+you need a point-in-time image of a file system that is mounted.
+.sp
+.LP
+If a filesystem was mounted with the logging option, it is strongly
+recommended that you run \fBufsdump\fR as the root user. Running the command as
+a non-root user might result in the creation of an inconsistent dump.
+.sp
+.LP
+\fIoptions\fR is a single string of one-letter \fBufsdump\fR options.
+.sp
+.LP
+\fIarguments\fR may be multiple strings whose association with the options is
+determined by order. That is, the first argument goes with the first option
+that takes an argument; the second argument goes with the second option that
+takes an argument, and so on.
+.sp
+.LP
+\fIfiles_to_dump\fR is required and must be the last argument on the command
+line. See \fBOPERANDS\fR for more information.
+.sp
+.LP
+With most devices \fBufsdump\fR can automatically detect the end-of-media.
+Consequently, the \fBd\fR, \fBs\fR, and \fBt\fR options are not necessary for
+multi-volume dumps, unless \fBufsdump\fR does not understand the way the device
+detects the end-of-media, or the files are to be restored on a system with an
+older version of the \fBrestore\fR command.
+.SH OPTIONS
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB0\(mi9\fR\fR
+.ad
+.sp .6
+.RS 4n
+The "dump level." All files specified by \fIfiles_to_dump\fR that have been
+modified since the last \fBufsdump\fR at a lower dump level are copied to the
+\fIdump_file\fR destination (normally a magnetic tape device). For instance, if
+a "level \fB2\fR" dump was done on Monday, followed by a "level \fB4\fR" dump
+on Tuesday, a subsequent "level \fB3\fR" dump on Wednesday would contain all
+files modified or added since the "level \fB2\fR" (Monday) backup. A "level
+\fB0\fR" dump copies the entire file system to the \fIdump_file\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBa\fR \fIarchive_file\fR\fR
+.ad
+.sp .6
+.RS 4n
+Archive file. Archive a dump table-of-contents in the specified
+\fIarchive_file\fR to be used by \fBufsrestore\fR(8) to determine whether a
+file is in the dump file that is being restored.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBb\fR \fIfactor\fR\fR
+.ad
+.sp .6
+.RS 4n
+Blocking factor. Specify the blocking factor for tape writes. The default is 20
+blocks per write for tapes of density less than 6250BPI (bytes-per-inch). The
+default blocking factor for tapes of density 6250BPI and greater is 64. The
+default blocking factor for cartridge tapes (\fBc\fR option) is 126. The
+highest blocking factor available with most tape drives is 126. Note: the
+blocking factor is specified in terms of 512-byte blocks, for compatibility
+with \fBtar\fR(1).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBc\fR\fR
+.ad
+.sp .6
+.RS 4n
+Cartridge. Set the defaults for cartridge instead of the standard half-inch
+reel. This sets the density to 1000BPI and the blocking factor to 126. Since
+\fBufsdump\fR can automatically detect the end-of-media, only the blocking
+parameter normally has an effect. When cartridge tapes are used, and this
+option is \fInot\fR specified, \fBufsdump\fR will slightly miscompute the size
+of the tape. If the \fBb\fR, \fBd\fR, \fBs\fR or \fBt\fR options are specified
+with this option, their values will override the defaults set by this option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBd\fR \fIbpi\fR\fR
+.ad
+.sp .6
+.RS 4n
+Tape density. Not normally required, as \fBufsdump\fR can detect end-of-media.
+This parameter can be used to keep a running tab on the amount of tape used per
+reel. The default density is 6250BPI except when the \fBc\fR option is used for
+cartridge tape, in which case it is assumed to be 1000BPI per track. Typical
+values for tape devices are:
+.sp
+.ne 2
+.na
+\fB1/2 inch tape\fR
+.ad
+.sp .6
+.RS 4n
+6250 BPI
+.RE
+
+.sp
+.ne 2
+.na
+\fB1/4 inch cartridge\fR
+.ad
+.sp .6
+.RS 4n
+1000 BPI The tape densities and other options are documented in the
+\fBst\fR(4D) man page.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBD\fR\fR
+.ad
+.sp .6
+.RS 4n
+Diskette. Dump to diskette.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBf\fR \fIdump_file\fR\fR
+.ad
+.sp .6
+.RS 4n
+Dump file. Use \fIdump_file\fR as the file to dump to, instead of
+\fB/dev/rmt/0\fR. If \fIdump_file\fR is specified as \fB\(mi\fR, dump to
+standard output.
+.sp
+If the name of the file is of the form \fImachine\fR\fB:\fR\fIdevice,\fR the
+dump is done from the specified machine over the network using \fBrmt\fR(8).
+Since \fBufsdump\fR is normally run by root, the name of the local machine must
+appear in the \fB/.rhosts\fR file of the remote machine. If the file is
+specified as \fIuser\fR\fB@\fR\fImachine\fR\fB:\fR\fIdevice,\fR \fBufsdump\fR
+will attempt to execute as the specified user on the remote machine. The
+specified user must have a \fB\&.rhosts\fR file on the remote machine that
+allows the user invoking the command from the local machine to access the
+remote machine.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBl\fR\fR
+.ad
+.sp .6
+.RS 4n
+Autoload. When the end-of-tape is reached before the dump is complete, take the
+drive offline and wait up to two minutes for the tape drive to be ready again.
+This gives autoloading (stackloader) tape drives a chance to load a new tape.
+If the drive is ready within two minutes, continue. If it is not, prompt for
+another tape and wait.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBL\fR \fIstring\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets the tape label to \fIstring\fR, instead of the default \fBnone\fR.
+\fIstring\fR may be no more than sixteen characters long. If it is longer, it
+is truncated and a warning printed; the dump will still be done. The tape label
+is specific to the \fBufsdump\fR tape format, and bears no resemblance to
+\fBIBM\fR or \fBANSI\fR-standard tape labels.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBn\fR\fR
+.ad
+.sp .6
+.RS 4n
+Notify all operators in the \fBsys\fR group that \fBufsdump\fR requires
+attention by sending messages to their terminals, in a manner similar to that
+used by the \fBwall\fR(8) command. Otherwise, such messages are sent only to
+the terminals (such as the console) on which the user running \fBufsdump\fR is
+logged in.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBN\fR \fIdevice_name\fR\fR
+.ad
+.sp .6
+.RS 4n
+Use \fIdevice_name\fR when recording information in \fB/etc/dumpdates\fR (see
+the \fBu\fR option) and when comparing against information in
+\fB/etc/dumpdates\fR for incremental dumps. The \fIdevice_name\fR provided can
+contain no white space as defined in \fBscanf\fR(3C) and is case-sensitive.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBo\fR\fR
+.ad
+.sp .6
+.RS 4n
+Offline. Take the drive offline when the dump is complete or the end-of-media
+is reached and rewind the tape, or eject the diskette. In the case of some
+autoloading 8mm drives, the tape is removed from the drive automatically. This
+prevents another process which rushes in to use the drive, from inadvertently
+overwriting the media.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBs\fR \fIsize\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify the \fIsize\fR of the volume being dumped to. Not normally required, as
+\fBufsdump\fR can detect end-of-media. When the specified size is reached,
+\fBufsdump\fR waits for you to change the volume. \fBufsdump\fR interprets the
+specified size as the length in feet for tapes and cartridges, and as the
+number of 1024-byte blocks for diskettes. The values should be a little smaller
+than the actual physical size of the media (for example, 425 for a 450-foot
+cartridge). Typical values for tape devices depend on the \fBc\fR option, for
+cartridge devices, and the \fBD\fR option for diskettes:
+.sp
+.ne 2
+.na
+\fB1/2 inch tape\fR
+.ad
+.sp .6
+.RS 4n
+2300 feet
+.RE
+
+.sp
+.ne 2
+.na
+\fB60-Mbyte 1/4 inch cartridge\fR
+.ad
+.sp .6
+.RS 4n
+425 feet
+.RE
+
+.sp
+.ne 2
+.na
+\fB150-Mbyte 1/4 inch cartridge\fR
+.ad
+.sp .6
+.RS 4n
+700 feet
+.RE
+
+.sp
+.ne 2
+.na
+\fBdiskette\fR
+.ad
+.sp .6
+.RS 4n
+1422 blocks (Corresponds to a 1.44-Mbyte diskette, with one cylinder reserved
+for bad block information.)
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBS\fR\fR
+.ad
+.sp .6
+.RS 4n
+Size estimate. Determine the amount of space that is needed to perform the dump
+without actually doing it, and display the estimated number of bytes it will
+take. This is useful with incremental dumps to determine how many volumes of
+media will be needed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBt\fR \fItracks\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify the number of tracks for a cartridge tape. Not normally required, as
+\fBufsdump\fR can detect end-of-media. The default is 9 tracks. The \fBt\fR
+option is not compatible with the \fBD\fR option. Values for Sun-supported tape
+devices are:
+.sp
+.ne 2
+.na
+\fB60-Mbyte 1/4 inch cartridge\fR
+.ad
+.sp .6
+.RS 4n
+9 tracks
+.RE
+
+.sp
+.ne 2
+.na
+\fB150-Mbyte 1/4 inch cartridge\fR
+.ad
+.sp .6
+.RS 4n
+18 tracks
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBT\fR \fItime_wait\fR\fB[hms]\fR\fR
+.ad
+.sp .6
+.RS 4n
+Sets the amount of time to wait for an \fBautoload\fR command to complete. This
+option is ignored unless the \fBl\fR option has also been specified. The
+default time period to wait is two minutes. Specify time units with a trailing
+\fBh\fR ( for hours), \fBm\fR (for minutes), or \fBs\fR (for seconds). The
+default unit is minutes.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBu\fR\fR
+.ad
+.sp .6
+.RS 4n
+Update the dump record. Add an entry to the file \fB/etc/dumpdates,\fR for each
+file system successfully dumped that includes the file system name (or
+\fIdevice_name\fR as specified with the \fBN\fR option), date, and dump level.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBv\fR\fR
+.ad
+.sp .6
+.RS 4n
+Verify. After each tape or diskette is written, verify the contents of the
+media against the source file system. If any discrepancies occur, prompt for
+new media, then repeat the dump/verification process. The file system
+\fImust\fR be unmounted. This option cannot be used to verify a dump to
+standard output.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBw\fR\fR
+.ad
+.sp .6
+.RS 4n
+Warning. List the file systems that have not been backed up within a day. This
+information is gleaned from the files \fB/etc/dumpdates\fR and
+\fB/etc/vfstab\fR. When the \fBw\fR option is used, all other options are
+ignored. After reporting, \fBufsdump\fR exits immediately.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBW\fR\fR
+.ad
+.sp .6
+.RS 4n
+Warning with highlight. Similar to the \fBw\fR option, except that the \fBW\fR
+option includes all file systems that appear in \fB/etc/dumpdates\fR, along
+with information about their most recent dump dates and levels. File systems
+that have not been backed up within a day are highlighted.
+.RE
+
+.SH OPERANDS
+.LP
+The following operand is supported:
+.sp
+.ne 2
+.na
+\fB\fIfiles_to_dump\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the files to dump. Usually it identifies a whole file system by its
+raw device name (for example, \fB/dev/rdsk/c0t3d0s6\fR). Incremental dumps
+(levels \fB1\fR to \fB9\fR) of files changed after a certain date only apply to
+a whole file system. Alternatively, \fIfiles_to_dump\fR can identify individual
+files or directories. All named directories that may be examined by the user
+running \fBufsdump\fR, as well as any explicitly-named files, are dumped. This
+dump is equivalent to a level \fB0\fR dump of the indicated portions of the
+filesystem, except that \fB/etc/dumpdates\fR is not updated even if the
+\fB-u\fR option has been specified. In all cases, the files must be contained
+in the same file system, and the file system must be local to the system where
+\fBufsdump\fR is being run.
+.sp
+\fIfiles_to_dump\fR is required and must be the last argument on the command
+line.
+.RE
+
+.sp
+.LP
+If no \fIoptions\fR are given, the default is \fB9uf\fR \fB/dev/rmt/0\fR
+\fIfiles_to_dump\fR.
+.SH USAGE
+.LP
+See \fBlargefile\fR(7) for the description of the behavior of \fBufsdump\fR
+when encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRUsing \fBufsdump\fR
+.sp
+.LP
+The following command makes a full dump of a root file system on \fBc0t3d0\fR,
+on a 150-MByte cartridge tape unit \fB0\fR:
+
+.sp
+.in +2
+.nf
+example# ufsdump 0cfu /dev/rmt/0 /dev/rdsk/c0t3d0s0
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The following command makes and verifies an incremental dump at level \fB5\fR
+of the \fBusr\fR partition of \fBc0t3d0\fR, on a 1/2 inch reel tape unit
+\fB1,\fR:
+
+.sp
+.in +2
+.nf
+example# ufsdump 5fuv /dev/rmt/1 /dev/rdsk/c0t3d0s6
+.fi
+.in -2
+.sp
+
+.SH EXIT STATUS
+.LP
+While running, \fBufsdump\fR emits many verbose messages. \fBufsdump\fR returns
+the following exit values:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.sp .6
+.RS 4n
+Normal exit.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB1\fR\fR
+.ad
+.sp .6
+.RS 4n
+Startup errors encountered.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB3\fR\fR
+.ad
+.sp .6
+.RS 4n
+Abort \(mi no checkpoint attempted.
+.RE
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/dev/rmt/0\fR\fR
+.ad
+.sp .6
+.RS 4n
+default unit to dump to
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/dumpdates\fR\fR
+.ad
+.sp .6
+.RS 4n
+dump date record
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/group\fR\fR
+.ad
+.sp .6
+.RS 4n
+to find group \fBsys\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/hosts\fR\fR
+.ad
+.sp .6
+.RS 4n
+to gain access to remote system with drive
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/vfstab\fR\fR
+.ad
+.sp .6
+.RS 4n
+list of file systems
+.RE
+
+.SH SEE ALSO
+.LP
+.BR cpio (1),
+.BR tar (1),
+.BR scanf (3C),
+.BR st (4D),
+.BR ufsdump (5),
+.BR attributes (7),
+.BR largefile (7),
+.BR dd (8),
+.BR devnm (8),
+.BR fssnap (8),
+.BR prtvtoc (8),
+.BR rmt (8),
+.BR shutdown (8),
+.BR ufsrestore (8),
+.BR volcopy (8),
+.BR wall (8)
+.SH NOTES
+.SS "Read Errors"
+.LP
+Fewer than 32 read errors on the file system are ignored.
+.SS "Process Per Reel"
+.LP
+Because each reel requires a new process, parent processes for reels that are
+already written hang around until the entire tape is written.
+.SS "Operator Intervention"
+.LP
+\fBufsdump\fR requires operator intervention on these conditions: end of
+volume, end of dump, volume write error, volume open error or disk read error
+(if there are more than a threshold of 32). In addition to alerting all
+operators implied by the \fBn\fR option, \fBufsdump\fR interacts with the
+operator on \fBufsdump\fR's control terminal at times when \fBufsdump\fR can no
+longer proceed, or if something is grossly wrong. All questions \fBufsdump\fR
+poses \fImust\fR be answered by typing \fByes\fR or \fBno\fR, as appropriate.
+.sp
+.LP
+Since backing up a disk can involve a lot of time and effort, \fBufsdump\fR
+checkpoints at the start of each volume. If writing that volume fails for some
+reason, \fBufsdump\fR will, with operator permission, restart itself from the
+checkpoint after a defective volume has been replaced.
+.SS "Suggested Dump Schedule"
+.LP
+It is vital to perform full, "level \fB0\fR", dumps at regular intervals. When
+performing a full dump, bring the machine down to single-user mode using
+\fBshutdown\fR(8). While preparing for a full dump, it is a good idea to clean
+the tape drive and heads. Incremental dumps should be performed with the system
+running in single-user mode.
+.sp
+.LP
+Incremental dumps allow for convenient backup and recovery of active files on a
+more frequent basis, with a minimum of media and time. However, there are some
+tradeoffs. First, the interval between backups should be kept to a minimum
+(once a day at least). To guard against data loss as a result of a media
+failure (a rare, but possible occurrence), capture active files on (at least)
+two sets of dump volumes. Another consideration is the desire to keep
+unnecessary duplication of files to a minimum to save both operator time and
+media storage. A third consideration is the ease with which a particular
+backed-up version of a file can be located and restored. The following
+four-week schedule offers a reasonable tradeoff between these goals.
+.sp
+.in +2
+.nf
+ Sun Mon Tue Wed Thu Fri
+ Week 1: Full 5 5 5 5 3
+ Week 2: 5 5 5 5 3
+ Week 3: 5 5 5 5 3
+ Week 4: 5 5 5 5 3
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Although the Tuesday through Friday incrementals contain "extra copies" of
+files from Monday, this scheme assures that any file modified during the week
+can be recovered from the previous day's incremental dump.
+.SS "Process Priority of ufsdump"
+.LP
+\fBufsdump\fR uses multiple processes to allow it to read from the disk and
+write to the media concurrently. Due to the way it synchronizes between these
+processes, any attempt to run dump with a \fBnice\fR (process priority) of
+`\(mi5' or better will likely make \fBufsdump\fR run \fIslower\fR instead of
+faster.
+.SS "Overlapping Partitions"
+.LP
+Most disks contain one or more overlapping slices because slice 2 covers the
+entire disk. The other slices are of various sizes and usually do not overlap.
+For example, a common configuration places \fBroot\fR on slice 0, \fBswap\fR on
+slice 1, \fB/opt\fR on slice 5 and \fB/usr\fR on slice 6.
+.sp
+.LP
+It should be emphasized that \fBufsdump\fR dumps one \fBufs\fR file system at a
+time. Given the above scenario where slice 0 and slice 2 have the same starting
+offset, executing \fBufsdump\fR on slice 2 with the intent of dumping the
+entire disk would instead dump only the \fBroot\fR file system on slice 0. To
+dump the entire disk, the user must dump the file systems on each slice
+separately.
+.SH BUGS
+.LP
+The \fB/etc/vfstab\fR file does not allow the desired frequency of backup for
+file systems to be specified (as \fB/etc/fstab\fR did). Consequently, the
+\fBw\fR and \fBW\fR options assume file systems should be backed up daily,
+which limits the usefulness of these options.
diff --git a/usr/src/man/man8/ufsrestore.8 b/usr/src/man/man8/ufsrestore.8
new file mode 100644
index 0000000000..ef9899ee5b
--- /dev/null
+++ b/usr/src/man/man8/ufsrestore.8
@@ -0,0 +1,756 @@
+'\" te
+.\" Copyright (c) 2002 Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH UFSRESTORE 8 "Sep 24, 2002"
+.SH NAME
+ufsrestore \- incremental file system restore
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/ufsrestore\fR i | r | R | t | x [abcdfhlmostvyLT]
+ [\fIarchive_file\fR] [\fIfactor\fR] [\fIdumpfile\fR] [\fIn\fR] [\fIlabel\fR]
+ [\fItimeout\fR] [\fIfilename\fR]...
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBufsrestore\fR utility restores files from backup media created with the
+\fBufsdump\fR command. \fBufsrestores\fR's actions are controlled by the
+\fIkey\fR argument. The \fIkey\fR is exactly one \fBfunction\fR \fIletter\fR
+(\fBi\fR, \fBr\fR, \fBR\fR , \fBt\fR, or \fBx\fR) and zero or more \fIfunction
+modifier\fRs (letters). The \fIkey\fR string contains no \fBSPACE\fR
+characters. Function modifier arguments are listed on the command line in the
+same order as their corresponding function modifiers appear in the \fIkey\fR
+string.
+.sp
+.LP
+\fIfilename\fR arguments which appear on the command line, or as arguments to
+an interactive command, are treated as shell \fBglob\fR patterns by the \fBx\fR
+and \fBt\fR functions; any files or directories matching the patterns are
+selected. The metacharacters \fB*\fR, \fB?\fR, and \fB[ ]\fR must be protected
+from the shell if they appear on the command line. There is no way to quote
+these metacharacters to explicitly match them in a filename.
+.sp
+.LP
+The temporary files \fBrstdir*\fR and \fBrstmode*\fR are placed in \fB/tmp\fR
+by default. If the environment variable \fBTMPDIR\fR is defined with a
+non-empty value, that location is used instead of \fB/tmp\fR.
+.SH OPTIONS
+.SS "Function Letters"
+.sp
+.LP
+You must specify one (and only one) of the function letters listed below. Note
+that \fBi\fR, \fBx\fR, and \fBr\fR are intended to restore files into an empty
+directory. The \fBR\fR function is intended for restoring into a populated
+directory.
+.sp
+.ne 2
+.na
+\fB\fBi\fR\fR
+.ad
+.RS 5n
+Interactive. After reading in the directory information from the media,
+\fBufsrestore\fR invokes a shell-like interface that allows you to browse
+through the dump file's directory hierarchy and select individual files to be
+extracted. Restoration has the same semantics as \fBx\fR (see below). See
+\fBInteractive Commands\fR, below, for a description of available commands.
+.RE
+
+.sp
+.ne 2
+.na
+\fBr\fR
+.ad
+.RS 5n
+Recursive. Starting with an empty directory and a level 0 dump, the \fBr\fR
+function recreates the filesystem relative to the current working directory,
+exactly as it appeared when the dump was made. Information used to restore
+incremental dumps on top of the full dump (for example, \fBrestoresymtable\fR)
+is also included. Several \fBufsrestore\fR runs are typical, one for each
+higher level of dump (0, 1, ..., 9). Files that were deleted between the level
+0 and a subsequent incremental dump will not exist after the final restore. To
+completely restore a file system, use the \fBr\fR function restore the level 0
+dump, and again for each incremental dump. Although this function letter is
+intended for a complete restore onto a new file system (one just created with
+\fBnewfs\fR(8)), if the file system contains files not on the backup media,
+they are preserved.
+.RE
+
+.sp
+.ne 2
+.na
+\fBR\fR
+.ad
+.RS 5n
+Resume restoring. If an \fBr\fR-mode \fBufsrestore\fR was interrupted, this
+function prompts for the volume from which to resume restoring and continues
+the restoration from where it was left off. Otherwise identical to \fBr\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBt\fR
+.ad
+.RS 5n
+Table of contents. List each \fIfilename\fR that appears on the media. If no
+\fIfilename\fR argument is given, the root directory is listed. This results in
+a list of all files on the media, unless the \fBh\fR function modifier is in
+effect. The table of contents is taken from the media or from the specified
+archive file, when the \fBa\fR function modifier is used. The \fBa\fR function
+modifier is mutually exclusive with the \fBx\fR and \fBr\fR function letters.
+.RE
+
+.sp
+.ne 2
+.na
+\fBx\fR
+.ad
+.RS 5n
+Extract the named files from the media. Files are restored to the same relative
+locations that they had in the original file system.
+.sp
+If the \fIfilename\fR argument matches a directory whose contents were written
+onto the media, and the \fBh\fR modifier is not in effect, the directory is
+recursively extracted, relative to the current directory, which is expected to
+be empty. For each file, the owner, modification time, and mode are restored
+(if possible).
+.sp
+If you omit the \fIfilename\fR argument or specify \fB\&.\fR, the root
+directory is extracted. This results in the entire tape being extracted, unless
+the \fBh\fR modifier is in effect. . With the \fBx\fR function, existing files
+are overwritten and \fBufsrestore\fR displays the names of the overwritten
+files. Overwriting a currently-running executable can have unfortunate
+consequences.
+.sp
+Use the \fBx\fR option to restore partial file system dumps, as they are (by
+definition) not entire file systems.
+.RE
+
+.SS "Function Modifiers"
+.sp
+.ne 2
+.na
+\fBa \fIarchive_file\fR\fR
+.ad
+.RS 19n
+Read the table of contents from \fIarchive_file\fR instead of the media. This
+function modifier can be used in combination with the \fBt\fR, \fBi\fR, or
+\fBx\fR function letters, making it possible to check whether files are on the
+media without having to mount the media. When used with the \fBx\fR and
+interactive (\fBi\fR) function letters, it prompts for the volume containing
+the file(s) before extracting them.
+.RE
+
+.sp
+.ne 2
+.na
+\fBb \fIfactor\fR\fR
+.ad
+.RS 19n
+Blocking factor. Specify the blocking factor for tape reads. For variable
+length \fBSCSI\fR tape devices, unless the data was written with the default
+blocking factor, a blocking factor at least as great as that used to write the
+tape must be used; otherwise, an error will be generated. Note that a tape
+block is 512 bytes. Refer to the man page for your specific tape driver for the
+maximum blocking factor.
+.RE
+
+.sp
+.ne 2
+.na
+\fBc\fR
+.ad
+.RS 19n
+Convert the contents of the media in 4.1BSD format to the new \fBufs\fR file
+system format.
+.RE
+
+.sp
+.ne 2
+.na
+\fBd\fR
+.ad
+.RS 19n
+Debug. Turn on debugging output.
+.RE
+
+.sp
+.ne 2
+.na
+\fBf \fIdump_file\fR\fR
+.ad
+.RS 19n
+Use \fIdump_file\fR instead of \fB/dev/rmt/0\fR as the file to restore from.
+Typically \fIdump_file\fR specifies a tape or diskette drive. If
+\fIdump_file\fR is specified as `\fB\(mi\fR\&', \fBufsrestore\fR reads from the
+standard input. This allows \fBufsdump\fR(8) and \fBufsrestore\fR to be used
+in a pipeline to copy a file system:
+.sp
+.in +2
+.nf
+example# ufsdump 0f \(mi /dev/rdsk/c0t0d0s7 \e
+ | (cd /home;ufsrestore xf \(mi)
+.fi
+.in -2
+.sp
+
+If the name of the file is of the form \fImachine\fR\fB:\fR\fIdevice\fR, the
+restore is done from the specified machine over the network using
+\fBrmt\fR(8). Since \fBufsrestore\fR is normally run by root, the name of the
+local machine must appear in the \fB/.rhosts\fR file of the remote machine. If
+the file is specified as \fIuser\fR\fB@\fR\fImachine\fR\fB:\fR\fIdevice\fR,
+\fBufsrestore\fR will attempt to execute as the specified user on the remote
+machine. The specified user must have a \fB\&.rhosts\fR file on the remote
+machine that allows the user invoking the command from the local machine to
+access the remote machine.
+.RE
+
+.sp
+.ne 2
+.na
+\fBh\fR
+.ad
+.RS 19n
+Extract or list the actual directory, rather than the files that it references.
+This prevents hierarchical restoration of complete subtrees from the tape.
+.RE
+
+.sp
+.ne 2
+.na
+\fBl\fR
+.ad
+.RS 19n
+Autoload. When the end-of-tape is reached before the restore is complete, take
+the drive off-line and wait up to two minutes (the default, see the \fBT\fR
+function modifier) for the tape drive to be ready again. This gives autoloading
+(stackloader) tape drives a chance to load a new tape. If the drive is ready
+within two minutes, continue. If it is not, prompt for another tape and wait.
+.RE
+
+.sp
+.ne 2
+.na
+\fBL \fIlabel\fR\fR
+.ad
+.RS 19n
+The label that should appear in the header of the dump file. If the labels do
+not match, \fBufsrestore\fR issues a diagnostic and exits. The tape label is
+specific to the \fBufsdump\fR tape format, and bears no resemblance to
+\fBIBM\fR or \fBANSI\fR-standard tape labels.
+.RE
+
+.sp
+.ne 2
+.na
+\fBm\fR
+.ad
+.RS 19n
+Extract by inode numbers rather than by filename to avoid regenerating complete
+pathnames. Regardless of where the files are located in the dump hierarchy,
+they are restored into the current directory and renamed with their inode
+number. This is useful if only a few files are being extracted.
+.RE
+
+.sp
+.ne 2
+.na
+\fBo\fR
+.ad
+.RS 19n
+Offline. Take the drive off-line when the restore is complete or the
+end-of-media is reached and rewind the tape, or eject the diskette. In the case
+of some autoloading 8mm drives, the tape is removed from the drive
+automatically.
+.RE
+
+.sp
+.ne 2
+.na
+\fBs \fIn\fR\fR
+.ad
+.RS 19n
+Skip to the \fIn\fRth file when there are multiple dump files on the same tape.
+For example, the command:
+.sp
+.in +2
+.nf
+example# ufsrestore xfs /dev/rmt/0hn 5
+.fi
+.in -2
+.sp
+
+would position you to the fifth file on the tape when reading volume 1 of the
+dump. If a dump extends over more than one volume, all volumes except the first
+are assumed to start at position 0, no matter what "\fBs\fR \fIn\fR" value is
+specified.
+.sp
+If "\fBs\fR \fIn\fR" is specified, the backup media must be at \fBBOT\fR
+(beginning of tape). Otherwise, the initial positioning to read the table of
+contents will fail, as it is performed by skipping the tape forward
+\fIn\fR\fB-1\fR files rather than by using absolute positioning. This is
+because on some devices absolute positioning is very time consuming.
+.RE
+
+.sp
+.ne 2
+.na
+\fBT timeout [hms]\fR
+.ad
+.RS 19n
+Sets the amount of time to wait for an autoload command to complete. This
+function modifier is ignored unless the \fBl\fR function modifier has also been
+specified. The default timeout period is two minutes. The time units may be
+specified as a trailing \fBh\fR (hours), \fBm\fR (minutes), or \fBs\fR
+(seconds). The default unit is minutes.
+.RE
+
+.sp
+.ne 2
+.na
+\fBv\fR
+.ad
+.RS 19n
+Verbose. \fBufsrestore\fR displays the name and inode number of each file it
+restores, preceded by its file type.
+.RE
+
+.sp
+.ne 2
+.na
+\fBy\fR
+.ad
+.RS 19n
+Do not ask whether to abort the restore in the event of tape errors.
+\fBufsrestore\fR tries to skip over the bad tape block(s) and continue as best
+it can.
+.RE
+
+.SS "Interactive Commands"
+.sp
+.LP
+\fBufsrestore\fR enters interactive mode when invoked with the \fBi\fR function
+letters. Interactive commands are reminiscent of the shell. For those commands
+that accept an argument, the default is the current directory. The interactive
+options are:
+.sp
+.ne 2
+.na
+\fBadd [\fIfilename\fR]\fR
+.ad
+.RS 22n
+Add the named file or directory to the list of files to extract. If a directory
+is specified, add that directory and its files (recursively) to the extraction
+list (unless the \fBh\fR modifier is in effect).
+.RE
+
+.sp
+.ne 2
+.na
+\fBcd \fIdirectory\fR\fR
+.ad
+.RS 22n
+Change to \fIdirectory\fR (within the dump file).
+.RE
+
+.sp
+.ne 2
+.na
+\fBdelete [\fIfilename\fR]\fR
+.ad
+.RS 22n
+Delete the current directory, or the named file or directory from the list of
+files to extract. If a directory is specified, delete that directory and all
+its descendents from the extraction list (unless the \fBh\fR modifier is in
+effect). The most expedient way to extract a majority of files from a directory
+is to add that directory to the extraction list, and then delete specific files
+to omit.
+.RE
+
+.sp
+.ne 2
+.na
+\fBextract\fR
+.ad
+.RS 22n
+Extract all files on the extraction list from the dump media. \fBufsrestore\fR
+asks which volume the user wishes to mount. The fastest way to extract a small
+number of files is to start with the last volume and work toward the first. If
+"\fBs\fR \fIn\fR" is given on the command line, volume 1 will automatically be
+positioned to file \fIn\fR when it is read.
+.RE
+
+.sp
+.ne 2
+.na
+\fBhelp\fR
+.ad
+.RS 22n
+Display a summary of the available commands.
+.RE
+
+.sp
+.ne 2
+.na
+\fBls [\fIdirectory\fR]\fR
+.ad
+.RS 22n
+List files in \fIdirectory\fR or the current directory, represented by a
+`\fB\&.\fR' (period). Directories are appended with a `\fB/\fR' (slash).
+Entries marked for extraction are prefixed with a `\fB*\fR' (asterisk). If the
+verbose option is in effect, inode numbers are also listed.
+.RE
+
+.sp
+.ne 2
+.na
+\fBmarked [\fIdirectory\fR]\fR
+.ad
+.RS 22n
+Like \fBls\fR, except only files marked for extraction are listed.
+.RE
+
+.sp
+.ne 2
+.na
+\fBpager\fR
+.ad
+.RS 22n
+Toggle the pagination of the output from the \fBls\fR and \fBmarked\fR
+commands. The pager used is that defined by the \fBPAGER\fR environment
+variable, or more(1) if that envar is not defined. The \fBPAGER\fR envar may
+include white-space-separated arguments for the pagination program.
+.RE
+
+.sp
+.ne 2
+.na
+\fBpwd\fR
+.ad
+.RS 22n
+Print the full pathname of the current working directory.
+.RE
+
+.sp
+.ne 2
+.na
+\fBquit\fR
+.ad
+.RS 22n
+\fBufsrestore\fR exits immediately, even if the extraction list is not empty.
+.RE
+
+.sp
+.ne 2
+.na
+\fBsetmodes\fR
+.ad
+.RS 22n
+Prompts: \fBset owner/mode for\fR `\fB\&.\fR' (period). Type \fBy\fR for yes to
+set the mode (permissions, owner, times) of the current directory `\fB\&.\fR'
+(period) into which files are being restored equal to the mode of the root
+directory of the file system from which they were dumped. Normally, this is
+what you want when restoring a whole file system, or restoring individual files
+into the same locations from which they were dumped. Type \fBn\fR for no, to
+leave the mode of the current directory unchanged. Normally, this is what you
+want when restoring part of a dump to a directory other than the one from which
+the files were dumped.
+.RE
+
+.sp
+.ne 2
+.na
+\fBsetpager \fIcommand\fR\fR
+.ad
+.RS 22n
+Sets the command to use for paginating output instead of the default or that
+inherited from the environment. The \fIcommand\fR string may include arguments
+in addition to the command itself.
+.RE
+
+.sp
+.ne 2
+.na
+\fBverbose\fR
+.ad
+.RS 22n
+Toggle the status of the \fBv\fR modifier. While \fBv\fR is in effect, the
+\fBls\fR command lists the inode numbers of all entries, and \fBufsrestore\fR
+displays information about each file as it is extracted.
+.RE
+
+.sp
+.ne 2
+.na
+\fBwhat\fR
+.ad
+.RS 22n
+Display the dump header on the media.
+.RE
+
+.SH OPERANDS
+.sp
+.LP
+The following operands are supported.
+.sp
+.ne 2
+.na
+\fB\fIfilename\fR\fR
+.ad
+.RS 12n
+Specifies the pathname of files (or directories) to be restored to disk. Unless
+the \fBh\fR function modifier is also used, a directory name refers to the
+files it contains, and (recursively) its subdirectories and the files they
+contain. \fIfilename\fR is associated with either the \fBx\fR or \fBt\fR
+function letters, and must come last.
+.RE
+
+.SH USAGE
+.sp
+.LP
+See \fBlargefile\fR(7) for the description of the behavior of \fBufsrestore\fR
+when encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
+.SH EXIT STATUS
+.sp
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 5n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB1\fR\fR
+.ad
+.RS 5n
+An error occurred. Verbose messages are displayed.
+.RE
+
+.SH ENVIRONMENT VARIABLES
+.sp
+.ne 2
+.na
+\fBPAGER\fR
+.ad
+.RS 10n
+The command to use as a filter for paginating output. This can also be used to
+specify the options to be used. Default is \fBmore\fR(1).
+.RE
+
+.sp
+.ne 2
+.na
+\fBTMPDIR\fR
+.ad
+.RS 10n
+Selects the directory for temporary files. Defaults to \fB/tmp\fR if not
+defined in the environment.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/dev/rmt/0\fR\fR
+.ad
+.RS 23n
+the default tape drive
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB$TMPDIR/rstdir*\fR\fR
+.ad
+.RS 23n
+file containing directories on the tape
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB$TMPDIR/rstmode*\fR\fR
+.ad
+.RS 23n
+owner, mode, and timestamps for directories
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\&./restoresymtable\fR\fR
+.ad
+.RS 23n
+information passed between incremental restores
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR more (1),
+.BR ufsdump (5),
+.BR attributes (7),
+.BR largefile (7),
+.BR mkfs (8),
+.BR mount (8),
+.BR rmt (8),
+.BR ufsdump (8)
+.SH DIAGNOSTICS
+.sp
+.LP
+\fBufsrestore\fR complains about bad option characters.
+.sp
+.LP
+Read errors result in complaints. If \fBy\fR has been specified, or the user
+responds \fBy\fR, \fBufsrestore\fR will attempt to continue.
+.sp
+.LP
+If the dump extends over more than one tape, \fBufsrestore\fR asks the user to
+change tapes. If the \fBx\fR or \fBi\fR function letter has been specified,
+\fBufsrestore\fR also asks which volume the user wishes to mount. If the
+\fBs\fR modifier has been specified, and volume 1 is mounted, it is
+automatically positioned to the indicated file.
+.sp
+.LP
+There are numerous consistency checks that can be listed by \fBufsrestore\fR.
+Most checks are self-explanatory or can "never happen". Common errors are given
+below.
+.sp
+.ne 2
+.na
+\fB\fBConverting to new file system format\fR\fR
+.ad
+.sp .6
+.RS 4n
+A dump tape created from the old file system has been loaded. It is
+automatically converted to the new file system format.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIfilename\fR\fB: not found on tape\fR\fR
+.ad
+.sp .6
+.RS 4n
+The specified file name was listed in the tape directory, but was not found on
+the tape. This is caused by tape read errors while looking for the file, using
+a dump tape created on an active file system, or restoring a partial dump with
+the \fBr\fR function.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBexpected next file\fR \fIinumber\fR\fB, got\fR \fIinumber\fR\fR
+.ad
+.sp .6
+.RS 4n
+A file that was not listed in the directory showed up. This can occur when
+using a dump tape created on an active file system.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBIncremental tape too low\fR\fR
+.ad
+.sp .6
+.RS 4n
+When doing an incremental restore, a tape that was written before the previous
+incremental tape, or that has too low an incremental level has been loaded.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBIncremental tape too high\fR\fR
+.ad
+.sp .6
+.RS 4n
+When doing incremental restore, a tape that does not begin its coverage where
+the previous incremental tape left off, or one that has too high an incremental
+level has been loaded.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmedia\fR \fBread\fR \fBerror:\fR \fBinvalid\fR \fBargument\fR\fR
+.ad
+.sp .6
+.RS 4n
+Blocking factor specified for read is smaller than the blocking factor used to
+write data.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBTape read error while restoring\fR\fR
+.ad
+.br
+.na
+\fB\fBTape read error while skipping over inode inumber\fR\fR
+.ad
+.br
+.na
+\fB\fBTape read error while trying to resynchronize\fR\fR
+.ad
+.br
+.na
+\fB\fBA tape read error has\ occurred\fR\fR
+.ad
+.sp .6
+.RS 4n
+If a file name is specified, then its contents are probably partially wrong. If
+an inode is being skipped or the tape is trying to resynchronize, then no
+extracted files have been corrupted, though files may not be found on the tape.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBresync ufsrestore, skipped\fR \fInum\fR\fR
+.ad
+.sp .6
+.RS 4n
+After a tape read error, \fBufsrestore\fR may have to resynchronize itself.
+This message lists the number of blocks that were skipped over.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBIncorrect tape label. Expected `foo', got `bar'.\fR\fR
+.ad
+.sp .6
+.RS 4n
+The \fBL\fR option was specified, and its value did not match what was recorded
+in the header of the dump file.
+.RE
+
+.SH NOTES
+.sp
+.LP
+\fBufsrestore\fR can get confused when doing incremental restores from dump
+tapes that were made on active file systems.
+.sp
+.LP
+A \fBlevel 0\fR dump must be done after a full restore. Because
+\fBufsrestore\fR runs in user mode, it has no control over inode allocation.
+This means that \fBufsrestore\fR repositions the files, although it does not
+change their contents. Thus, a full dump must be done to get a new set of
+directories reflecting the new file positions, so that later incremental dumps
+will be correct.
diff --git a/usr/src/man/man8/unshare.8 b/usr/src/man/man8/unshare.8
new file mode 100644
index 0000000000..8db8f65b2e
--- /dev/null
+++ b/usr/src/man/man8/unshare.8
@@ -0,0 +1,92 @@
+'\" te
+.\" Copyright 2000, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH UNSHARE 8 "Jan 23, 2007"
+.SH NAME
+unshare \- make local resource unavailable for mounting by remote systems
+.SH SYNOPSIS
+.LP
+.nf
+\fBunshare\fR [\fB-p\fR] [\fB-F\fR \fIFSType\fR] [\fB-o\fR \fIspecific_options\fR]
+ [\fIpathname\fR | \fIresourcename\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBunshare\fR command makes a shared local resource unavailable as file
+system type \fIFSType\fR. If the option \fB-F\fR\fIFSType\fR is omitted, then
+the first file system type listed in file \fB/etc/dfs/fstypes\fR will be used
+as the default. \fISpecific_options\fR, as well as the semantics of
+\fIresourcename\fR, are specific to particular distributed file systems.
+.SH OPTIONS
+.sp
+.ne 2
+.na
+\fB\fB-F\fR \fIFSType\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify the file system type.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-o\fR \fIspecific_options\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify options specific to the file system provided by the \fB-F\fR option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR\fR
+.ad
+.sp .6
+.RS 4n
+Remove resource from shared status in a way that persists across reboots.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/dfs/fstypes\fR\fR
+.ad
+.sp .6
+.RS 4n
+Lists distributed file system utilities packages installed on the system.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/dfs/sharetab\fR\fR
+.ad
+.sp .6
+.RS 4n
+Contains a table of local resources shared by the \fBshare\fR command.
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7),
+.BR share (8),
+.BR shareall (8)
+.SH NOTES
+.sp
+.LP
+If \fIpathname\fR or \fIresourcename\fR is not found in the shared information,
+an error message will be sent to standard error.
+.sp
+.LP
+When an \fBunshare\fR command completes successfully, a client mounting a file
+system specified in that \fBunshare\fR command no longer has access to that
+file system.
diff --git a/usr/src/man/man8/unshare_nfs.8 b/usr/src/man/man8/unshare_nfs.8
new file mode 100644
index 0000000000..fe210b3dc6
--- /dev/null
+++ b/usr/src/man/man8/unshare_nfs.8
@@ -0,0 +1,89 @@
+'\" te
+.\" Copyright (c) 2003 Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH UNSHARE_NFS 8 "May 6, 2003"
+.SH NAME
+unshare_nfs \- make local NFS file systems unavailable for mounting by remote
+systems
+.SH SYNOPSIS
+.LP
+.nf
+\fBunshare\fR [\fB-F\fR nfs] \fIpathname\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBunshare\fR command makes local file systems unavailable for mounting by
+remote systems. The shared file system must correspond to a line with NFS as
+the \fIFSType\fR in the file \fB/etc/dfs/sharetab\fR.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-F\fR\fR
+.ad
+.RS 6n
+This option may be omitted if NFS is the first file system type listed in the
+file \fB/etc/dfs/fstypes\fR.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/dfs/fstypes\fR\fR
+.ad
+.RS 22n
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/dfs/sharetab \fR\fR
+.ad
+.RS 22n
+
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7),
+.BR nfsd (8),
+.BR share (8)
+.SH NOTES
+.sp
+.LP
+If the file system being unshared is a symbolic link to a valid pathname, the
+canonical path (the path which the symbolic link follows) will be unshared.
+.sp
+.LP
+For example, if \fB/export/foo\fR is a symbolic link to \fB/export/bar\fR
+(\fB/export/foo -> /export/bar\fR), the following \fBunshare\fR command will
+result in \fB/export/bar\fR as the unshared pathname (and not
+\fB/export/foo\fR):
+.sp
+.in +2
+.nf
+example# unshare -F nfs /export/foo
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+For file systems that are accessed by NFS Version 4 clients, once the unshare
+is complete, all NFS Version 4 state (open files and file locks) are released
+and unrecoverable by the clients. If the intent is to share the file system
+after some administrative action, the NFS daemon (\fBnfsd\fR) should first be
+stopped and then the file system unshared. After the administrative action is
+complete, the file system would then be shared and the NFS daemon restarted.
+See \fBnfsd\fR(8)
diff --git a/usr/src/man/man8/update_drv.8 b/usr/src/man/man8/update_drv.8
new file mode 100644
index 0000000000..4dcaf5bab6
--- /dev/null
+++ b/usr/src/man/man8/update_drv.8
@@ -0,0 +1,329 @@
+'\" te
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH UPDATE_DRV 8 "August 29, 2021"
+.SH NAME
+update_drv \- modify device driver attributes
+.SH SYNOPSIS
+.nf
+\fBupdate_drv\fR [\fB-f\fR | \fB-v\fR] [\fB-n\fR] \fIdriver_module\fR
+.fi
+
+.LP
+.nf
+\fBupdate_drv\fR [\fB-b\fR \fIbasedir\fR] [\fB-f\fR | \fB-v\fR] [\fB-n\fR] \fB-a\fR [\fB-m\fR '\fIpermission\fR']
+ [\fB-i\fR '\fIidentify-name\fR'] [\fB-P\fR '\fIprivilege\fR'] [\fB-p\fR '\fIpolicy\fR'] \fIdriver_module\fR
+.fi
+
+.LP
+.nf
+\fBupdate_drv\fR [\fB-b\fR \fIbasedir\fR] [\fB-f\fR | \fB-v\fR] [\fB-n\fR] \fB-d\fR [\fB-m\fR '\fIpermission\fR']
+ [\fB-i\fR '\fIidentify-name\fR'] [\fB-P\fR '\fIprivilege\fR'] [\fB-p\fR '\fIpolicy\fR'] \fIdriver_module\fR
+.fi
+
+.SH DESCRIPTION
+The \fBupdate_drv\fR command informs the system about attribute changes to an
+installed device driver. It can be used to re-read the \fBdriver.conf\fR(5)
+file, or to add, modify, or delete a driver's minor node permissions or
+aliases.
+.sp
+.LP
+Without options, \fBupdate_drv\fR reloads the \fBdriver.conf\fR file.
+.sp
+.LP
+Upon successfully updating the aliases, the driver binding takes effect upon
+reconfig boot or hotplug of the device.
+.sp
+.LP
+Upon successfully updating the permissions, only the new driver minor nodes get
+created with the modified set of file permissions. Existing driver minor nodes
+do not get modified.
+.SH OPTIONS
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-a\fR\fR
+.ad
+.sp .6
+.RS 4n
+Add a \fIpermission\fR, \fIaliases\fR, \fIprivilege\fR or \fIpolicy\fR entry.
+.sp
+With the \fB-a\fR option specified, a permission entry (using the \fB-m\fR
+option), or a driver's aliases entry (using the \fB-i\fR option), a device
+privilege (using the \fB-P\fR option) or a a device policy (using the \fB-p\fR
+option), can be added or updated. If a matching minor node permissions entry is
+encountered (having the same driver name and the minor node), it is replaced.
+If a matching aliases entry is encountered (having a different driver name and
+the same alias), an error is reported.
+.sp
+The \fB-a\fR and \fB-d\fR options are mutually exclusive.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-b\fR \fIbasedir\fR\fR
+.ad
+.sp .6
+.RS 4n
+Installs or modifies the driver on the system with a root directory of basedir
+rather than installing on the system executing \fBupdate_drv\fR.
+.LP
+Note -
+.sp
+.RS 2
+The root file system of any non-global zones must not be referenced with the
+\fB-b\fR option. Doing so might damage the global zone's file system, might
+compromise the security of the global zone, and might damage the non-global
+zone's file system. See \fBzones\fR(7).
+.RE
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-d\fR\fR
+.ad
+.sp .6
+.RS 4n
+Delete a \fIpermission\fR, \fIaliases\fR, \fIprivilege\fR or \fIpolicy\fR
+entry.
+.sp
+The \fB-m\fR \fIpermission\fR, \fB-i\fR \fIidentify-name\fR, \fB-P\fR
+\fIprivilege\fR or the \fB-p\fR \fIpolicy\fR option needs to be specified with
+the \fB-d\fR option.
+.sp
+The \fB-d\fR and \fB-a\fR options are mutually exclusive.
+.sp
+If the entry doesn't exist \fBupdate_drv\fR returns an error.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR\fR
+.ad
+.sp .6
+.RS 4n
+Force the system to reread the \fBdriver.conf\fR file even if the driver module
+cannot be unloaded. See \fBNOTES\fR section for details.
+.sp
+\fBWithout\fR this option, when removing an alias for a driver,
+\fBupdate_drv\fR updates the binding files for the next boot, but returns an
+error if one or more devices that reference the driver-alias binding remains.
+\fBWith\fR the \fB-f\fR option, \fBupdate_drv\fR does not return an error if
+such devices remain.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-i\fR '\fIidentify-name\fR'\fR
+.ad
+.sp .6
+.RS 4n
+A white-space separated list of aliases for the driver. If \fB-a\fR or \fB-d\fR
+option is not specified then this option is ignored. The \fIidentify-name\fR
+string is mandatory. If all aliases need to be removed, \fBrem_drv\fR(8) is
+recommended.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-m\fR '\fIpermission\fR'\fR
+.ad
+.sp .6
+.RS 4n
+Specify a white-space separated list of file system permissions for the device
+node of the device driver. If \fB-a\fR or \fB-d\fR option is not specified
+then, this option is ignored. The permission string is mandatory.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR\fR
+.ad
+.sp .6
+.RS 4n
+Do not try to load and attach \fIdevice_driver\fR, just modify the system
+configuration files for that driver.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR '\fIpolicy\fR'\fR
+.ad
+.sp .6
+.RS 4n
+With the \fB-a\fR option, policy is a white-space separated list of complete
+device policies. For the \fB-d\fR option, policy is a white space separated
+list of minor device specifications. The minor device specifications are
+matched exactly against the entries in \fB/etc/security/device_policy\fR, that
+is, no wildcard matching is performed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-P\fR '\fIprivilege\fR'\fR
+.ad
+.sp .6
+.RS 4n
+With the \fB-a\fR option, privilege is a comma separated list of additional
+driver privileges. For the \fB-d\fR option, privilege is a single privilege.
+The privileges are added to or removed from the \fB/etc/security/extra_privs\fR
+file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.sp .6
+.RS 4n
+Verbose.
+.RE
+
+.SH EXAMPLES
+\fBExample 1 \fRAdding or Modifying an Existing Minor Permissions Entry
+.sp
+.LP
+The following command adds or modifies the existing minor permissions entry of
+the \fBclone\fR driver:
+
+.sp
+.in +2
+.nf
+example# update_drv -a -m 'llc1 777 joe staff' clone
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRRemoving All Minor Permissions Entries
+.sp
+.LP
+The following command removes all minor permission entries of the \fBusbprn\fR
+driver, the USB printer driver:
+
+.sp
+.in +2
+.nf
+example# update_drv -d -m '* 0666 root sys' usbprn
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRAdding a Driver Aliases Entry
+.sp
+.LP
+The following command adds a driver aliases entry of the \fBugen\fR driver with
+the identity string of \fBusb459,20\fR:
+
+.sp
+.in +2
+.nf
+example# update_drv -a -i '"usb459,20"' ugen
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 4 \fRRe-reading the \fBdriver.conf\fR File For the \fBohci\fR Driver
+.sp
+.LP
+The following command re-reads the \fBdriver.conf\fR(5) file.
+
+.sp
+.in +2
+.nf
+ example# update_drv ohci
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 5 \fRRequiring a Self-defined Privilege to Open a tcp Socket
+.sp
+.LP
+The following command requires a self-defined privilege to open a tcp socket:
+
+.sp
+.in +2
+.nf
+example# update_drv -a -P net_tcp -p \e
+ 'write_priv_set=net_tcp read_priv_set=net_tcp' tcp
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 6 \fREstablishing a Path-oriented Alias
+.sp
+.LP
+The following command establishes a path-oriented alias to force a specific
+driver, \fBqlt\fR, to be used for a particular device path:
+
+.sp
+.in +2
+.nf
+example# update_drv -a -i '"/pci@8,600000/SUNW,qlc@4"' qlt
+.fi
+.in -2
+.sp
+
+.SH EXIT STATUS
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.sp .6
+.RS 4n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB>\fB0\fR\fR
+.ad
+.sp .6
+.RS 4n
+An error occurred.
+.RE
+
+.SH SEE ALSO
+.BR driver.conf (5),
+.BR attributes (7),
+.BR privileges (7),
+.BR add_drv (8),
+.BR modunload (8),
+.BR rem_drv (8)
+.SH NOTES
+If \fB-a\fR or \fB-d\fR options are specified, \fBupdate_drv\fR does not reread
+the \fBdriver.conf\fR file.
+.sp
+.LP
+A forced update of the \fBdriver.conf\fR file reloads the \fBdriver.conf\fR
+file without reloading the driver binary module. In this case, devices which
+cannot be detached reference driver global properties from the old
+\fBdriver.conf\fR file, while the remaining driver instances reference global
+properties in the new \fBdriver.conf\fR file.
+.sp
+.LP
+It is possible to add an alias , which changes the driver binding of a device
+already being managed by a different driver. A force update with the \fB-a\fR
+option tries to bind to the new driver and report error if it cannot. If you
+specify more than one of the \fB-m\fR, \fB-i\fR, \fB-P\fR or \fB-p\fR options,
+a force flag tries to modify aliases or permissions. This is done even if the
+other operation fails and vice-versa.
diff --git a/usr/src/man/man8/updatehome.8 b/usr/src/man/man8/updatehome.8
new file mode 100644
index 0000000000..413eecfdff
--- /dev/null
+++ b/usr/src/man/man8/updatehome.8
@@ -0,0 +1,179 @@
+'\" te
+.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH UPDATEHOME 8 "Jul 20, 2007"
+.SH NAME
+updatehome \- update the home directory copy and link files for the current
+label
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/bin/updatehome\fR [\fB-cirs\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBupdatehome\fR reads the user's minimum-label copy and link-control files
+(\fB\&.copy_files\fR and \fB\&.link_files\fR). These files contain a list of
+files to be copied and symbolically linked from the user's minimum-label home
+directory to the user's home directory at the current label.
+.sp
+.LP
+The Solaris Trusted Extensions \fBdtsession\fR program performs an
+\fBupdatehome\fR whenever a newly labeled workspace is created so that the
+user's favorite files are available for use. For example, the user probably
+wants a symbolic link to such files as \fB\&.profile\fR, \fB\&.login\fR,
+\fB\&.cshrc\fR, \fB\&.exrc\fR, \fB\&.mailrc\fR, and \fB~/bin\fR. The
+\fBupdatehome\fR command provides a convenient mechanism for accomplishing this
+symlink. The user can add files to those to be copied (\fB\&.copy_files\fR) and
+to those to be symbolically linked (\fB\&.link_files\fR).
+.SH OPTIONS
+.sp
+.ne 2
+.na
+\fB\fB-c\fR\fR
+.ad
+.RS 6n
+Replace existing home-directory copies at the current label. The default is to
+skip over existing copies.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-i\fR\fR
+.ad
+.RS 6n
+Ignore errors encountered. The default aborts on error.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-r\fR\fR
+.ad
+.RS 6n
+Replace existing home-directory copies or symbolic links at the current label.
+This option implies options \fB-c\fR and \fB-s\fR. The default is to skip over
+existing copies or symbolic links.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR\fR
+.ad
+.RS 6n
+Replace existing home-directory symbolic links at the current label. The
+default is to skip over existing symbolic links.
+.RE
+
+.SH EXIT STATUS
+.sp
+.LP
+Upon success, \fBupdatehome\fR returns \fB0\fR. Upon failure, \fBupdatehome\fR
+returns \fB1\fR and writes diagnostic messages to standard error.
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRA Sample \fB\&.copy_files\fR File
+.sp
+.LP
+The files that are listed in \fB\&.copy_files\fR can be modified at every
+user's label.
+
+.sp
+.in +2
+.nf
+\&.cshrc
+\&.mailrc
+\&.mozilla/bookmarks.html
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRA Sample \fB\&.link_files\fR File
+.sp
+.LP
+The files that are listed in \fB\&.link_files\fR can be modified at the lowest
+label. The changes propagate to the other labels that are available to the
+user.
+
+.sp
+.in +2
+.nf
+~/bin
+\&.mozilla/preferences
+\&.xrc
+\&.rhosts
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRUpdating the Linked and Copied Files
+.sp
+.LP
+The \fB\&.copy_files\fR and \fB\&.link_files\fR were updated by the user at the
+minimum label. At a higher label, the user refreshes the copies and the links.
+No privileges are required to run the command.
+
+.sp
+.in +2
+.nf
+% \fBupdatehome -r\fR
+.fi
+.in -2
+.sp
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB$HOME/.copy_files\fR\fR
+.ad
+.RS 21n
+List of files to be copied
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB$HOME/.link_files\fR\fR
+.ad
+.RS 21n
+List of files to be symbolically linked
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Committed
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7)
+.sp
+.LP
+\fI\&.copy_files and .link_files Files\fR in \fISolaris Trusted Extensions
+Administrator\&'s Procedures\fR
+.SH NOTES
+.sp
+.LP
+The functionality described on this manual page is available only if the system
+is configured with Trusted Extensions.
diff --git a/usr/src/man/man8/useradd.8 b/usr/src/man/man8/useradd.8
new file mode 100644
index 0000000000..9d910adf2b
--- /dev/null
+++ b/usr/src/man/man8/useradd.8
@@ -0,0 +1,576 @@
+'\" te
+.\" Copyright (c) 2018 Peter Tribble.
+.\" Copyright (c) 2013 Gary Mills
+.\" Copyright (c) 2008 Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH USERADD 8 "Jan 7, 2018"
+.SH NAME
+useradd \- administer a new user login on the system
+.SH SYNOPSIS
+.LP
+.nf
+\fBuseradd\fR [\fB-A\fR \fIauthorization\fR[,\fIauthorization\fR]...]
+ [\fB-b\fR \fIbase_dir\fR] [\fB-c\fR \fIcomment\fR] [\fB-d\fR \fIdir\fR] [\fB-e\fR \fIexpire\fR]
+ [\fB-f\fR \fIinactive\fR] [\fB-g\fR \fIgroup\fR] [\fB-G\fR \fIgroup\fR[,\fIgroup\fR]...]
+ [\fB-K\fR \fIkey=value\fR] [\fB-m\fR [\fB-z|-Z\fR] [\fB-k\fR \fIskel_dir\fR]] [\fB-p\fR \fIprojname\fR]
+ [\fB-P\fR \fIprofile\fR[,\fIprofile\fR]...] [\fB-R\fR \fIrole\fR[,\fIrole\fR]...]
+ [\fB-s\fR \fIshell\fR] [\fB-u\fR \fIuid\fR [\fB-o\fR]] \fIlogin\fR
+.fi
+
+.LP
+.nf
+\fBuseradd\fR \fB-D\fR [\fB-A\fR \fIauthorization\fR[,\fIauthorization\fR]...]
+ [\fB-b\fR \fIbase_dir\fR] [\fB-e\fR \fIexpire\fR] [\fB-f\fR \fIinactive\fR] [\fB-g\fR \fIgroup\fR]
+ [\fB-k\fR \fIskel_dir\fR] [\fB-K\fR \fIkey=value\fR] [\fB-p\fR \fIprojname\fR]
+ [\fB-P\fR \fIprofile\fR[,\fIprofile\fR]...] [\fB-R\fR \fIrole\fR[,\fIrole\fR]...]
+ [\fB-s\fR \fIshell\fR]
+.fi
+
+.SH DESCRIPTION
+.LP
+\fBuseradd\fR adds a new user to the \fB/etc/passwd\fR and \fB/etc/shadow\fR
+and \fB/etc/user_attr\fR files. The \fB-A\fR and \fB-P\fR options respectively
+assign authorizations and profiles to the user. The \fB-R\fR option assigns
+roles to the user. The \fB-p\fR option associates a project with the user. The
+\fB-K\fR option adds a \fIkey=value\fR pair to \fB/etc/user_attr\fR for the
+user. Multiple \fIkey=value\fR pairs may be added with multiple \fB-K\fR
+options.
+.sp
+.LP
+\fBuseradd\fR also creates supplementary group memberships for the user
+(\fB-G\fR option) and creates the home directory (\fB-m\fR option) for the user
+if requested. The new login remains locked until the \fBpasswd\fR(1) command is
+executed.
+.sp
+.LP
+Specifying \fBuseradd\fR \fB-D\fR with the \fB-A\fR, \fB-b\fR, \fB-e\fR,
+\fB-f\fR, \fB-g\fR, \fB-k\fR, \fB-K\fR, \fB-p\fR, \fB-P\fR, \fB-R\fR, or
+\fB-s\fR option (or any combination of these options) sets the default values
+for the respective fields. See the \fB-D\fR option, below. Subsequent
+\fBuseradd\fR commands without the \fB-D\fR option use these arguments.
+.sp
+.LP
+The system file entries created with this command have a limit of 2048
+characters per line. Specifying long arguments to several options can exceed
+this limit.
+.sp
+.LP
+\fBuseradd\fR requires that usernames be in the format described in
+\fBpasswd\fR(5). A warning message is displayed if these restrictions are not
+met. See \fBpasswd\fR(5) for the requirements for usernames.
+.LP
+To change the action of \fBuseradd\fR when the traditional login name
+length limit of eight characters is exceeded, edit the file
+\fB/etc/default/useradd\fR by removing the \fB#\fR (pound sign) before the
+appropriate \fBEXCEED_TRAD=\fR entry, and adding it before the others.
+.SH OPTIONS
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-A\fR \fIauthorization\fR\fR
+.ad
+.sp .6
+.RS 4n
+One or more comma separated authorizations defined in \fBauth_attr\fR(5). Only
+a user or role who has \fBgrant\fR rights to the authorization can assign it to
+an account.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-b\fR \fIbase_dir\fR\fR
+.ad
+.sp .6
+.RS 4n
+The base directory for new login home directories (see the \fB-d\fR option
+below). The directory named by \fIbase_dir\fR must already exist and be an
+absolute path.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-c\fR \fIcomment\fR\fR
+.ad
+.sp .6
+.RS 4n
+A text string. It is generally a short description of the login, and is
+currently used as the field for the user's full name. This information is
+stored in the user's \fB/etc/passwd\fR entry.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-d\fR \fIdir\fR\fR
+.ad
+.sp .6
+.RS 4n
+The home directory of the new user. If not supplied, it defaults to
+\fIbase_dir\fR/\fIaccount_name\fR, where \fIbase_dir\fR is the base directory
+for new login home directories and \fIaccount_name\fR is the new login name.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-D\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display the default values for \fBgroup\fR, \fBbase_dir\fR, \fBskel_dir\fR,
+\fBshell\fR, \fBinactive\fR, \fBexpire\fR, \fBproj\fR, \fBprojname\fR and
+\fBkey=value\fR pairs. When used with the \fB-A\fR, \fB-b\fR, \fB-e\fR,
+\fB-f\fR, \fB-g\fR, \fB-P\fR, \fB-p\fR, \fB-R\fR, or \fB-K\fR options, the
+\fB-D\fR option sets the default values for the specified fields. The default
+values are:
+.sp
+.ne 2
+.na
+\fBgroup\fR
+.ad
+.sp .6
+.RS 4n
+\fBother\fR (\fBGID\fR of 1)
+.RE
+
+.sp
+.ne 2
+.na
+\fBbase_dir\fR
+.ad
+.sp .6
+.RS 4n
+\fB/home\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fBskel_dir\fR
+.ad
+.sp .6
+.RS 4n
+\fB/etc/skel\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fBshell\fR
+.ad
+.sp .6
+.RS 4n
+\fB/bin/sh\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fBinactive\fR
+.ad
+.sp .6
+.RS 4n
+\fB0\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fBexpire\fR
+.ad
+.sp .6
+.RS 4n
+null
+.RE
+
+.sp
+.ne 2
+.na
+\fBauths\fR
+.ad
+.sp .6
+.RS 4n
+null
+.RE
+
+.sp
+.ne 2
+.na
+\fBprofiles\fR
+.ad
+.sp .6
+.RS 4n
+null
+.RE
+
+.sp
+.ne 2
+.na
+\fBproj\fR
+.ad
+.sp .6
+.RS 4n
+\fB3\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fBprojname\fR
+.ad
+.sp .6
+.RS 4n
+\fBdefault\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fBkey=value\fR (pairs defined in \fBuser_attr\fR(5))
+.ad
+.sp .6
+.RS 4n
+not present
+.RE
+
+.sp
+.ne 2
+.na
+\fBroles\fR
+.ad
+.sp .6
+.RS 4n
+null
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-e\fR \fIexpire\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify the expiration date for a login. After this date, no user will be able
+to access this login. The expire option argument is a date entered using one of
+the date formats included in the template file \fB/etc/datemsk\fR. See
+\fBgetdate\fR(3C).
+.sp
+If the date format that you choose includes spaces, it must be quoted. For
+example, you can enter \fB10/6/90\fR or \fBOctober 6, 1990\fR. A null value
+(\fB" "\fR) defeats the status of the expired date. This option is useful for
+creating temporary logins.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR \fIinactive\fR\fR
+.ad
+.sp .6
+.RS 4n
+The maximum number of days allowed between uses of a login ID before that
+\fBID\fR is declared invalid. Normal values are positive integers. A value of
+\fB0\fR defeats the status.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-g\fR \fIgroup\fR\fR
+.ad
+.sp .6
+.RS 4n
+An existing group's integer \fBID\fR or character-string name. Without the
+\fB-D\fR option, it defines the new user's primary group membership and
+defaults to the default group. You can reset this default value by invoking
+\fBuseradd\fR \fB-D\fR \fB-g\fR \fIgroup\fR. GIDs 0-99 are reserved for
+allocation by the Operating System.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-G\fR \fIgroup\fR\fR
+.ad
+.sp .6
+.RS 4n
+One or more comma-separated existing groups, specified by integer \fBID\fR or
+character-string name. It defines the new user's supplementary group
+membership. Any duplicate groups between the \fB-g\fR and \fB-G\fR options are
+ignored. No more than \fBNGROUPS_MAX\fR groups can be specified. GIDs 0-99 are
+reserved for allocation by the Operating System.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-k\fR \fIskel_dir\fR\fR
+.ad
+.sp .6
+.RS 4n
+A directory that contains skeleton information (such as \fB\&.profile\fR) that
+can be copied into a new user's home directory. This directory must already
+exist. The system provides the \fB/etc/skel\fR directory that can be used for
+this purpose.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-K\fR \fIkey=value\fR\fR
+.ad
+.sp .6
+.RS 4n
+A \fIkey=value\fR pair to add to the user's attributes. Multiple \fB-K\fR
+options may be used to add multiple \fIkey=value\fR pairs. The generic \fB-K\fR
+option with the appropriate key may be used instead of the specific implied key
+options (\fB-A\fR, \fB-p\fR, \fB-P\fR, \fB-R\fR). See \fBuser_attr\fR(5) for a
+list of valid \fIkey=value\fR pairs. The "type" key is not a valid key for this
+option. Keys cannot be repeated.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-m\fR\fR [\fB-z|-Z\fR]
+.ad
+.sp .6
+.RS 4n
+Create the new user's home directory if it does not already exist. If the
+directory already exists, it must have read, write, and execute permissions by
+\fIgroup\fR, where \fIgroup\fR is the user's primary group.
+.sp
+If the parent directory of the user's home directory is located on a separate
+\fBZFS\fR file system and the \fB/etc/default/useradd\fR file contains the
+parameter \fBMANAGE_ZFS\fR set to the value \fBYES\fR, a new \fBZFS\fR
+file system will be created for the user.
+.sp
+If the \fB-z\fR option is specified, \fBuseradd\fR will always try to create
+a new file system for the home directory.
+.sp
+If the \fB-Z\fR option is specified, a new file system will never be created.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-o\fR\fR
+.ad
+.sp .6
+.RS 4n
+This option allows a \fBUID\fR to be duplicated (non-unique).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR \fIprojname\fR\fR
+.ad
+.sp .6
+.RS 4n
+Name of the project with which the added user is associated. See the
+\fIprojname\fR field as defined in \fBproject\fR(5).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-P\fR \fIprofile\fR\fR
+.ad
+.sp .6
+.RS 4n
+One or more comma-separated execution profiles defined in \fBprof_attr\fR(5).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-R\fR \fIrole\fR\fR
+.ad
+.sp .6
+.RS 4n
+One or more comma-separated roles defined in \fBuser_attr\fR(5).
+Roles cannot be assigned to other roles.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR \fIshell\fR\fR
+.ad
+.sp .6
+.RS 4n
+Full pathname of the program used as the user's shell on login. It defaults to
+an empty field causing the system to use \fB/bin/sh\fR as the default. The
+value of \fIshell\fR must be a valid executable file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-u\fR \fIuid\fR\fR
+.ad
+.sp .6
+.RS 4n
+The \fBUID\fR of the new user. This \fBUID\fR must be a non-negative decimal
+integer below \fBMAXUID\fR as defined in \fB<sys/param.h>\fR\&. The \fBUID\fR
+defaults to the next available (unique) number above the highest number
+currently assigned. For example, if \fBUID\fRs 100, 105, and 200 are assigned,
+the next default \fBUID\fR number will be 201. \fBUID\fRs \fB0\fR-\fB99\fR are
+reserved for allocation by the Operating System.
+.RE
+
+.SH FILES
+.LP
+\fB/etc/default/useradd\fR
+.sp
+.LP
+\fB/etc/datemsk\fR
+.sp
+.LP
+\fB/etc/passwd\fR
+.sp
+.LP
+\fB/etc/shadow\fR
+.sp
+.LP
+\fB/etc/group\fR
+.sp
+.LP
+\fB/etc/skel\fR
+.sp
+.LP
+\fB/usr/include/limits.h\fR
+.sp
+.LP
+\fB/etc/user_attr\fR
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Committed
+.TE
+
+.SH SEE ALSO
+.LP
+.BR passwd (1),
+.BR profiles (1),
+.BR roles (1),
+.BR getdate (3C),
+.BR auth_attr (5),
+.BR passwd (5),
+.BR prof_attr (5),
+.BR project (5),
+.BR user_attr (5),
+.BR attributes (7),
+.BR groupadd (8),
+.BR groupdel (8),
+.BR groupmod (8),
+.BR grpck (8),
+.BR logins (8),
+.BR pwck (8),
+.BR userdel (8),
+.BR usermod (8),
+.BR zfs (8)
+.SH DIAGNOSTICS
+.LP
+In case of an error, \fBuseradd\fR prints an error message and exits with a
+non-zero status.
+.sp
+.LP
+The following indicates that \fBlogin\fR specified is already in use:
+.sp
+.in +2
+.nf
+UX: useradd: ERROR: login is already in use. Choose another.
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The following indicates that the \fIuid\fR specified with the \fB-u\fR option
+is not unique:
+.sp
+.in +2
+.nf
+UX: useradd: ERROR: uid \fIuid\fR is already in use. Choose another.
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The following indicates that the \fIgroup\fR specified with the \fB-g\fR option
+is already in use:
+.sp
+.in +2
+.nf
+UX: useradd: ERROR: group \fIgroup\fR does not exist. Choose another.
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The following indicates that the \fIuid\fR specified with the \fB-u\fR option
+is in the range of reserved \fBUID\fRs (from \fB0\fR-\fB99\fR):
+.sp
+.in +2
+.nf
+UX: useradd: WARNING: uid \fIuid\fR is reserved.
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The following indicates that the \fIuid\fR specified with the \fB-u\fR option
+exceeds \fBMAXUID\fR as defined in \fB<sys/param.h>\fR:
+.sp
+.in +2
+.nf
+UX: useradd: ERROR: uid \fIuid\fR is too big. Choose another.
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The following indicates that the \fB/etc/passwd\fR or \fB/etc/shadow\fR files
+do not exist:
+.sp
+.in +2
+.nf
+UX: useradd: ERROR: Cannot update system files - login cannot be created.
+.fi
+.in -2
+.sp
+
+.SH NOTES
+.LP
+The \fBuseradd\fR utility adds definitions to only the local \fB/etc/group\fR,
+\fB/etc/passwd\fR, \fB/etc/shadow\fR, \fB/etc/project\fR, and
+\fB/etc/user_attr\fR files. If a network name service
+is being used to supplement the local \fB/etc/passwd\fR file with
+additional entries, \fBuseradd\fR cannot change information supplied by the
+network name service. However \fBuseradd\fR will verify the uniqueness of the
+user name (or role) and user id and the existence of any group names specified
+against the external name service.
diff --git a/usr/src/man/man8/userdel.8 b/usr/src/man/man8/userdel.8
new file mode 100644
index 0000000000..cd4d470df2
--- /dev/null
+++ b/usr/src/man/man8/userdel.8
@@ -0,0 +1,181 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 1999,
+.\" Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH USERDEL 8 "Jan 7, 2018"
+.SH NAME
+userdel \- delete a user's login from the system
+.SH SYNOPSIS
+.LP
+.nf
+\fBuserdel\fR [\fB-r\fR] \fIlogin\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBuserdel\fR utility deletes a user account from the system and makes the
+appropriate account-related changes to the system file and file system.
+.SH OPTIONS
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-r\fR\fR
+.ad
+.RS 6n
+Remove the user's home directory from the system. This directory must exist.
+The files and directories under the home directory will no longer be accessible
+following successful execution of the command.
+.sp
+If the user's home directory is located on a separate \fBZFS\fR file system and
+the \fB/etc/default/useradd\fR file contains the parameter \fBMANAGE_ZFS\fR set
+to the value \fBYES\fR, the file system will be destroyed.
+.RE
+
+.SH OPERANDS
+.LP
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fB\fB\fIlogin\fR\fR\fR
+.ad
+.RS 9n
+An existing login name to be deleted.
+.RE
+
+.SH EXIT STATUS
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 6n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB2\fR\fR
+.ad
+.RS 6n
+Invalid command syntax. A usage message for the \fBuserdel\fR command is
+displayed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB6\fR\fR
+.ad
+.RS 6n
+The account to be removed does not exist.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB8\fR\fR
+.ad
+.RS 6n
+The account to be removed is in use.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB10\fR\fR
+.ad
+.RS 6n
+Cannot update the \fB/etc/group\fR or \fB/etc/user_attr\fR file but the login
+is removed from the \fB/etc/passwd\fR file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB12\fR\fR
+.ad
+.RS 6n
+Cannot remove or otherwise modify the home directory.
+.RE
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/etc/default/useradd\fR\fR
+.ad
+.RS 18n
+configuration file for user and role administrative commands
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/passwd\fR\fR
+.ad
+.RS 18n
+system password file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/shadow\fR\fR
+.ad
+.RS 18n
+system file containing users' encrypted passwords and related information
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/group\fR\fR
+.ad
+.RS 18n
+system file containing group definitions
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/user_attr\fR\fR
+.ad
+.RS 18n
+system file containing additional user attributes
+.RE
+
+.SH SEE ALSO
+.LP
+.BR auths (1),
+.BR passwd (1),
+.BR profiles (1),
+.BR roles (1),
+.BR passwd (5),
+.BR prof_attr (5),
+.BR user_attr (5),
+.BR attributes (7),
+.BR groupadd (8),
+.BR groupdel (8),
+.BR groupmod (8),
+.BR logins (8),
+.BR roleadd (8),
+.BR roledel (8),
+.BR rolemod (8),
+.BR useradd (8),
+.BR usermod (8),
+.BR zfs (8)
+.SH NOTES
+.LP
+The \fBuserdel\fR utility only deletes an account definition that is in the
+local \fB/etc/group\fR, \fB/etc/passwd\fR, \fB/etc/shadow\fR, and
+\fB/etc/user_attr\fR file. file. If a network name service
+is being used to supplement the local \fB/etc/passwd\fR file with
+additional entries, \fBuserdel\fR cannot change information supplied by the
+network name service.
diff --git a/usr/src/man/man8/usermod.8 b/usr/src/man/man8/usermod.8
new file mode 100644
index 0000000000..3e1849ef02
--- /dev/null
+++ b/usr/src/man/man8/usermod.8
@@ -0,0 +1,601 @@
+'\" te
+.\" Copyright (c) 2018 Peter Tribble.
+.\" Copyright 1989 AT&T Copyright (c) 2004, 2009, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH USERMOD 8 "Jan 7, 2018"
+.SH NAME
+usermod \- modify a user's login information on the system
+.SH SYNOPSIS
+.LP
+.nf
+\fBusermod\fR [\fB-u\fR \fIuid\fR [\fB-o\fR]] [\fB-g\fR \fIgroup\fR] [\fB-G\fR \fIgroup\fR[,\fIgroup\fR]...]
+ [\fB-d\fR \fIdir\fR [\fB-m\fR [\fB-z|-Z\fR]]] [\fB-s\fR \fIshell\fR] [\fB-c\fR \fIcomment\fR] [\fB-l\fR \fInew_name\fR]
+ [\fB-f\fR \fIinactive\fR] [\fB-e\fR \fIexpire\fR]
+ [\fB-A\fR \fIauthorization\fR[,\fIauthorization\fR]...]
+ [\fB-P\fR \fIprofile\fR[,\fIprofile\fR]...] [\fB-R\fR \fIrole\fR[,\fIrole\fR]...]
+ [\fB-K\fR \fIkey=value\fR] \fIlogin\fR
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBusermod\fR utility modifies a user's login definition on the system. It
+changes the definition of the specified login and makes the appropriate
+login-related system file and file system changes.
+.sp
+.LP
+The system file entries created with this command have a limit of 512
+characters per line. Specifying long arguments to several options can exceed
+this limit.
+.SH OPTIONS
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-A\fR \fIauthorization\fR\fR
+.ad
+.sp .6
+.RS 4n
+One or more comma separated authorizations as defined in \fBauth_attr\fR(5).
+Only a user or role who has \fBgrant\fR rights to the \fBauthorization\fR can
+assign it to an account. This replaces any existing authorization setting. If
+an empty authorization list is specified, the existing setting is removed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-c\fR \fIcomment\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify a comment string. \fIcomment\fR can be any text string. It is generally
+a short description of the login, and is currently used as the field for the
+user's full name. This information is stored in the user's \fB/etc/passwd\fR
+entry.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-d\fR \fIdir\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify the new home directory of the user. It defaults to
+\fIbase_dir/login\fR, where \fIbase_dir\fR is the base directory for new login
+home directories, and \fBlogin\fR is the new login.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-e\fR \fIexpire\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify the expiration date for a login. After this date, no user will be able
+to access this login. The expire option argument is a date entered using one of
+the date formats included in the template file \fB/etc/datemsk\fR. See
+\fBgetdate\fR(3C).
+.sp
+For example, you may enter \fB10/6/90\fR or \fBOctober 6, 1990\fR. A value of
+\fB`` ''\fR defeats the status of the expired date.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR \fIinactive\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify the maximum number of days allowed between uses of a login \fBID\fR
+before that login \fBID\fR is declared invalid. Normal values are positive
+integers. A value of \fB0\fR defeats the status.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-g\fR \fIgroup\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify an existing group's integer \fBID\fR or character-string name. It
+redefines the user's primary group membership.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-G\fR \fIgroup\fR\fR
+.ad
+.sp .6
+.RS 4n
+One or more comma-separated existing groups, specified by integer \fBID\fR or
+character-string name. It redefines the user's supplementary group membership.
+Any duplicate groups between the \fB-g\fR and \fB-G\fR options are ignored.
+No more than \fBNGROUPS_UMAX\fR groups may be specified as defined in
+\fB<sys/param.h>\fR\&.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-K\fR \fIkey=value\fR\fR
+.ad
+.sp .6
+.RS 4n
+Replace existing or add to a user's \fIkey=value\fR pair attributes. Multiple
+\fB-K\fR options can be used to replace or add multiple \fIkey=value\fR pairs.
+However, keys must not be repeated. The generic \fB-K\fR option with the
+appropriate key can be used instead of the specific implied key options
+(\fB-A\fR, \fB-P\fR, \fB-R\fR, \fB-p\fR). See \fBuser_attr\fR(5) for a list of
+valid \fIkey\fRs. Values for these keys are usually found in man pages or other
+sources related to those keys. For example, see \fBproject\fR(5) for guidance
+on values for the \fBproject\fR key. Use the command \fBppriv\fR(1) with the
+\fB-v\fR and \fB-l\fR options for a list of values for the keys
+\fBdefaultpriv\fR and \fBlimitpriv\fR.
+.sp
+The keyword \fBtype\fR can be specified with the value \fBrole\fR or the value
+\fBnormal\fR. When using the value \fBrole\fR, the account changes from a
+normal user to a role; using the value \fBnormal\fR keeps the account a normal
+user.
+.sp
+As a \fBrole\fR account, no roles (\fB-R\fR or \fIroles=value\fR) can be
+present.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR \fInew_logname\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify the new login name for the user. See \fBpasswd\fR(5) for the
+requirements for usernames.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-m\fR\fR [\fB-z|-Z\fR]
+.ad
+.sp .6
+.RS 4n
+Move the user's home directory to the new directory specified with the \fB-d\fR
+option. If the directory already exists, it must have permissions
+read/write/execute by \fIgroup\fR, where \fIgroup\fR is the user's primary
+group.
+.sp
+If the user's old home directory was located on a separate \fBZFS\fR file system
+and the \fB/etc/default/useradd\fR file contains the parameter \fBMANAGE_ZFS\fR
+set to the value \fBYES\fR, the file system will be destroyed after the home
+directory is moved. If the parent directory of the user's new home directory is
+located on a separate \fBZFS\fR filesystem and the \fB/etc/default/useradd\fR
+file contains the parameter \fBMANAGE_ZFS\fR set to the value \fBYES\fR, a new
+\fBZFS\fR file system will be created.
+.sp
+If the \fB-z\fR option is specified, \fBusermod\fR will always try to create a
+new file system for the home directory and destroy the old one.
+.sp
+If the \fB-Z\fR option is specified, a new file system will never be created,
+and the old one will never be destroyed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-o\fR\fR
+.ad
+.sp .6
+.RS 4n
+This option allows the specified \fBUID\fR to be duplicated (non-unique).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-P\fR \fIprofile\fR\fR
+.ad
+.sp .6
+.RS 4n
+One or more comma-separated execution profiles defined in \fBprof_attr\fR(5).
+This replaces any existing profile setting in \fBuser_attr\fR(5). If an empty
+profile list is specified, the existing setting is removed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-R\fR \fIrole\fR\fR
+.ad
+.sp .6
+.RS 4n
+One or more comma-separated roles (see \fBroleadd\fR(8)). This replaces any
+existing role setting. If an empty role list is specified, the existing setting
+is removed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR \fIshell\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify the full pathname of the program that is used as the user's shell on
+login. The value of \fIshell\fR must be a valid executable file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-u\fR \fIuid\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify a new \fBUID\fR for the user. It must be a non-negative decimal integer
+less than \fBMAXUID\fR as defined in \fB<sys/param.h>\fR\&. The \fBUID\fR
+associated with the user's home directory is not modified with this option; a
+user will not have access to their home directory until the \fBUID\fR is
+manually reassigned using \fBchown\fR(1).
+.RE
+
+.SH OPERANDS
+.LP
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fB\fBlogin\fR\fR
+.ad
+.sp .6
+.RS 4n
+An existing login name to be modified.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1\fR Assigning Privileges to a User
+.sp
+.LP
+The following command adds the privilege that affects high resolution times to
+a user's initial, inheritable set of privileges.
+
+.sp
+.in +2
+.nf
+# \fBusermod -K defaultpriv=basic,proc_clock_highres jdoe\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+This command results in the following entry in \fBuser_attr\fR:
+
+.sp
+.in +2
+.nf
+jdoe::::type=normal;defaultpriv=basic,proc_clock_highres
+.fi
+.in -2
+
+.LP
+\fBExample 2\fR Removing a Privilege from a User's Limit Set
+.sp
+.LP
+The following command removes the privilege that allows the specified user to
+create hard links to directories and to unlink directories.
+
+.sp
+.in +2
+.nf
+# \fBusermod -K limitpriv=all,!sys_linkdir jdoe\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+This command results in the following entry in \fBuser_attr\fR:
+
+.sp
+.in +2
+.nf
+jdoe::::type=normal;defaultpriv=basic,limitpriv=all,!sys_linkdir
+.fi
+.in -2
+
+.LP
+\fBExample 3\fR Removing a Privilege from a User's Basic Set
+.sp
+.LP
+The following command removes the privilege that allows the specified user to
+examine processes outside the user's session.
+
+.sp
+.in +2
+.nf
+# \fBusermod -K defaultpriv=basic,!proc_session jdoe\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+This command results in the following entry in \fBuser_attr\fR:
+
+.sp
+.in +2
+.nf
+jdoe::::type=normal;defaultpriv=basic,!proc_session;limitpriv=all
+.fi
+.in -2
+
+.LP
+\fBExample 4\fR Assigning a Role to a User
+.sp
+.LP
+The following command assigns a role to a user. The role must have been created
+prior to this command, see \fBroleadd\fR(8).
+
+.sp
+.in +2
+.nf
+# \fBusermod -R mailadm jdoe\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+This command results in the following entry in \fBuser_attr\fR:
+
+.sp
+.in +2
+.nf
+jdoe::::type=normal;roles=mailadm;defaultpriv=basic;limitpriv=all
+.fi
+.in -2
+
+.LP
+\fBExample 5\fR Removing All Profiles from a User
+.sp
+.LP
+The following command removes all profiles that were granted to a user
+directly. The user will still have any execution profiles that are granted by
+means of the \fBPROFS_GRANTED\fR key in \fBpolicy.conf\fR(5).
+
+.sp
+.in +2
+.nf
+# \fBusermod -P "" jdoe\fR
+.fi
+.in -2
+.sp
+
+.SH EXIT STATUS
+.LP
+In case of an error, \fBusermod\fR prints an error message and exits with one
+of the following values:
+.sp
+.ne 2
+.na
+\fB\fB2\fR\fR
+.ad
+.sp .6
+.RS 4n
+The command syntax was invalid. A usage message for the \fBusermod\fR command
+is displayed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB3\fR\fR
+.ad
+.sp .6
+.RS 4n
+An invalid argument was provided to an option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB4\fR\fR
+.ad
+.sp .6
+.RS 4n
+The \fIuid\fR given with the \fB-u\fR option is already in use.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB5\fR\fR
+.ad
+.sp .6
+.RS 4n
+The password files contain an error. \fBpwconv\fR(8) can be used to correct
+possible errors. See \fBpasswd\fR(5).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB6\fR\fR
+.ad
+.sp .6
+.RS 4n
+The login to be modified does not exist, the \fIgroup\fR does not exist, or the
+login shell does not exist.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB8\fR\fR
+.ad
+.sp .6
+.RS 4n
+The login to be modified is in use.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB9\fR\fR
+.ad
+.sp .6
+.RS 4n
+The \fInew_logname\fR is already in use.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB10\fR\fR
+.ad
+.sp .6
+.RS 4n
+Cannot update the \fB/etc/group\fR or \fB/etc/user_attr\fR file. Other update
+requests will be implemented.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB11\fR\fR
+.ad
+.sp .6
+.RS 4n
+Insufficient space to move the home directory (\fB-m\fR option). Other update
+requests will be implemented.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB12\fR\fR
+.ad
+.sp .6
+.RS 4n
+Unable to complete the move of the home directory to the new home directory.
+.RE
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/etc/default/useradd\fR\fR
+.ad
+.sp .6
+.RS 4n
+configuration file for user and role administrative commands
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/group\fR\fR
+.ad
+.sp .6
+.RS 4n
+system file containing group definitions
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/datemsk\fR\fR
+.ad
+.sp .6
+.RS 4n
+system file of date formats
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/passwd\fR\fR
+.ad
+.sp .6
+.RS 4n
+system password file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/shadow\fR\fR
+.ad
+.sp .6
+.RS 4n
+system file containing users' and roles' encrypted passwords and related
+information
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/user_attr\fR\fR
+.ad
+.sp .6
+.RS 4n
+system file containing additional user and role attributes
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Committed
+.TE
+
+.SH SEE ALSO
+.LP
+.BR chown (1),
+.BR passwd (1),
+.BR getdate (3C),
+.BR auth_attr (5),
+.BR passwd (5),
+.BR policy.conf (5),
+.BR prof_attr (5),
+.BR user_attr (5),
+.BR attributes (7),
+.BR groupadd (8),
+.BR groupdel (8),
+.BR groupmod (8),
+.BR logins (8),
+.BR pwconv (8),
+.BR roleadd (8),
+.BR roledel (8),
+.BR rolemod (8),
+.BR useradd (8),
+.BR userdel (8),
+.BR zfs (8)
+.SH NOTES
+.LP
+The \fBusermod\fR utility modifies \fBpasswd\fR definitions only in the local
+\fB/etc/passwd\fR and \fB/etc/shadow\fR files. If a network nameservice
+is being used to supplement the local files with
+additional entries, \fBusermod\fR cannot change information supplied by the
+network nameservice. However \fBusermod\fR will verify the uniqueness of user
+name and user \fBID\fR against the external nameservice.
+.sp
+.LP
+The \fBusermod\fR utility uses the \fB/etc/datemsk\fR file
+for date formatting.
diff --git a/usr/src/man/man8/utmpd.8 b/usr/src/man/man8/utmpd.8
new file mode 100644
index 0000000000..89e4347855
--- /dev/null
+++ b/usr/src/man/man8/utmpd.8
@@ -0,0 +1,174 @@
+'\" te
+.\" Copyright 2015 Shruti V Sampat <shrutisampat@gmail.com>
+.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH UTMPD 8 "April 9, 2016"
+.SH NAME
+utmpd \- utmpx monitoring daemon
+.SH SYNOPSIS
+.LP
+.nf
+\fButmpd\fR [\fB-debug\fR]
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fButmpd\fR daemon monitors the \fB/var/adm/utmpx\fR file. See
+\fButmpx\fR(5) (and \fButmp\fR(5) for historical information).
+.sp
+.LP
+\fButmpd\fR receives requests from \fBpututxline\fR(3C) by way of a named pipe.
+It maintains a table of processes and uses \fBpoll\fR(2) on \fB/proc\fR files
+to detect process termination. When \fButmpd\fR detects that a process has
+terminated, it checks that the process has removed its \fButmpx\fR entry from
+\fB/var/adm/utmpx\fR. If the process' \fButmpx\fR entry has not been removed,
+\fButmpd\fR removes the entry. By periodically scanning the
+\fB/var/adm/utmpx\fR file, \fButmpd\fR also monitors processes that are not in
+its table.
+.SH OPTIONS
+.ne 2
+.na
+\fB\fB-debug\fR\fR
+.ad
+.sp .6
+.RS 4n
+Run in debug mode, leaving the process connected to the controlling terminal.
+Write debugging information to standard output.
+.RE
+
+.SH EXIT STATUS
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.sp .6
+.RS 4n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB>0\fR\fR
+.ad
+.sp .6
+.RS 4n
+An error occurred.
+.RE
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/etc/default/utmpd\fR\fR
+.ad
+.sp .6
+.RS 4n
+You can set default values for the flags listed below. For example:
+\fBSCAN_PERIOD=600\fR
+.sp
+The values for these flags should be greater than 0. If values read
+from the file are found to be less than or equal to 0, or containing
+invalid characters, the default values mentioned below are retained.
+.sp
+.ne 2
+.na
+\fB\fBSCAN_PERIOD\fR\fR
+.ad
+.sp .6
+.RS 4n
+The number of seconds that \fButmpd\fR sleeps between checks of \fB/proc\fR to
+see if monitored processes are still alive. The default is 300.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBMAX_FDS\fR\fR
+.ad
+.sp .6
+.RS 4n
+The maximum number of processes that \fButmpd\fR attempts to monitor. The
+default value is 4096.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBWTMPX_UPDATE_FREQ\fR\fR
+.ad
+.sp .6
+.RS 4n
+The number of seconds that \fButmpd\fR sleeps between read accesses of the
+\fBwtmpx\fR file. The \fBwtmpx\fR file's last access time is used by
+\fBinit\fR(8) on reboot to determine when the operating system became
+unavailable. The default is 60.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/adm/utmpx\fR\fR
+.ad
+.sp .6
+.RS 4n
+File containing user and accounting information for commands such as
+\fBwho\fR(1), \fBwrite\fR(1), and \fBlogin\fR(1).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/proc\fR\fR
+.ad
+.sp .6
+.RS 4n
+Directory containing files for processes whose \fButmpx\fR entries are being
+monitored.
+.RE
+
+.SH SEE ALSO
+.LP
+.BR svcs (1),
+.BR poll (2),
+.BR pututxline (3C),
+.BR proc (5),
+.BR utmp (5),
+.BR utmpx (5),
+.BR attributes (7),
+.BR smf (7),
+.BR init (8),
+.BR svcadm (8)
+.SH NOTES
+.LP
+If the filesystem holding \fB/var/adm/wtmpx\fR is mounted with options which
+inhibit or defer access time updates, an unknown amount of error will be
+introduced into the \fButmp\fR \fBDOWN_TIME\fR record's timestamp in the event
+of an uncontrolled shutdown (for example, a crash or loss of power ).
+Controlled shutdowns will update the modify time of \fB/var/adm/wtmpx\fR, which
+will be used on the next boot to determine when the previous shutdown occurred,
+regardless of access time deferral or inhibition.
+.sp
+.LP
+The \fButmpd\fR service is managed by the service management facility,
+\fBsmf\fR(7), under the service identifier:
+.sp
+.in +2
+.nf
+svc:/system/utmp:default
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Administrative actions on this service, such as enabling, disabling, or
+requesting restart, can be performed using \fBsvcadm\fR(8). The service's
+status can be queried using the \fBsvcs\fR(1) command.
diff --git a/usr/src/man/man8/uucheck.8 b/usr/src/man/man8/uucheck.8
new file mode 100644
index 0000000000..70cbcc3a33
--- /dev/null
+++ b/usr/src/man/man8/uucheck.8
@@ -0,0 +1,127 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 1997 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH UUCHECK 8 "May 18, 1993"
+.SH NAME
+uucheck \- check the uucp directories and permissions file
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/uucp/uucheck\fR [\fB-v\fR] [\fB-x\fR \fIdebug-level\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBuucheck\fR checks for the presence of the \fBuucp\fR system required files
+and directories. \fBuucheck\fR also does error checking of the
+\fBPermissions\fR file (\fB/etc/uucp/Permissions\fR).
+.sp
+.LP
+\fBuucheck\fR is executed during package installation. \fBuucheck\fR can only
+be used by the super-user or \fBuucp\fR.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.RS 18n
+Give a detailed (verbose) explanation of how the \fBuucp\fR programs will
+interpret the \fBPermissions\fR file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-x\fR\fI debug-level\fR\fR
+.ad
+.RS 18n
+Produce debugging output on the standard output. \fIdebug-level\fR is a number
+from \fB0\fR to \fB9\fR. Higher numbers give more detailed debugging
+information.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/uucp/Devices\fR\fR
+.ad
+.RS 27n
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/uucp/Limits\fR\fR
+.ad
+.RS 27n
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/uucp/Permissions\fR\fR
+.ad
+.RS 27n
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/uucp/Systems\fR\fR
+.ad
+.RS 27n
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/spool/locks/*\fR\fR
+.ad
+.RS 27n
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/spool/uucp/*\fR\fR
+.ad
+.RS 27n
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/spool/uucppublic/*\fR\fR
+.ad
+.RS 27n
+
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR uucp (1C),
+.BR uustat (1C),
+.BR uux (1C),
+.BR attributes (7),
+.BR uucico (8),
+.BR uusched (8)
+.SH BUGS
+.sp
+.LP
+The program does not check file/directory modes or some errors in the
+\fBPermissions\fR file such as duplicate login or machine name.
diff --git a/usr/src/man/man8/uucico.8 b/usr/src/man/man8/uucico.8
new file mode 100644
index 0000000000..be103b83dd
--- /dev/null
+++ b/usr/src/man/man8/uucico.8
@@ -0,0 +1,198 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 1997 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH UUCICO 8 "May 19, 1993"
+.SH NAME
+uucico \- file transport program for the uucp system
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/uucp/uucico\fR [\fB-f\fR] [\fB-c\fR \fItype\fR] [\fB-d\fR \fIspool-directory\fR]
+ [\fB-i\fR \fIinterface\fR] [\fB-r\fR \fIrole-number\fR] [\fB-s\fR \fIsystem-name\fR]
+ [\fB-x\fR \fIdebug-level\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBuucico\fR is the file transport program for \fBuucp\fR work file transfers.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-f\fR\fR
+.ad
+.RS 22n
+This option is used to "force execution" of \fBuucico\fR by ignoring the limit
+on the maximum number of uucicos defined in the \fB/etc/uucp/Limits\fR file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-c\fR\fI type\fR\fR
+.ad
+.RS 22n
+The first field in the \fBDevices\fR file is the "Type" field. The \fB-c\fR
+option forces \fBuucico\fR to only use entries in the "Type" field that match
+the user specified \fBtype\fR. The specified \fBtype\fR is usually the name of
+a local area network.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-d\fR\fI spool-directory\fR\fR
+.ad
+.RS 22n
+This option specifies the directory \fIspool-directory\fR that contains the
+\fBuucp\fR work files to be transferred. The default spool directory is
+\fB/var/spool/uucp\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-i\fR\fI interface\fR\fR
+.ad
+.RS 22n
+This option defines the \fIinterface\fR used with \fBuucico\fR. The interface
+only affects slave mode. Known interfaces are UNIX (default), TLI (basic
+Transport Layer Interface), and TLIS (Transport Layer Interface with Streams
+modules, read/write).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-r\fR\fI role-number\fR\fR
+.ad
+.RS 22n
+The \fIrole-number\fR \fB1\fR is used for master mode. \fIrole-number\fR
+\fB0\fR is used for slave mode (default). When \fBuucico\fR is started by a
+program or \fBcron\fR, \fIrole-number\fR \fB1\fR should be used for master
+mode.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR\fI system-name\fR\fR
+.ad
+.RS 22n
+The \fB-s\fR option defines the remote system (\fIsystem-name\fR) that
+\fBuucico\fR will try to contact. It is required when the role is master;
+\fIsystem-name\fR must be defined in the \fBSystems\fR file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-x\fR\fI debug-level\fR\fR
+.ad
+.RS 22n
+Both \fBuux\fR and \fBuucp\fR queue jobs that will be transferred by
+\fBuucico\fR. These jobs are normally started by the \fBuusched\fR scheduler,
+for debugging purposes, and can be started manually. For example, the shell
+\fBUutry\fR starts \fBuucico\fR with debugging turned on. The \fIdebug-level\fR
+is a number between \fB0\fR and \fB9\fR. Higher numbers give more detailed
+debugging information.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/uucp/Devconfig\fR\fR
+.ad
+.RS 27n
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/uucp/Devices\fR\fR
+.ad
+.RS 27n
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/uucp/Limits\fR\fR
+.ad
+.RS 27n
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/uucp/Permissions\fR\fR
+.ad
+.RS 27n
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/uucp/Sysfiles\fR\fR
+.ad
+.RS 27n
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/uucp/Systems\fR\fR
+.ad
+.RS 27n
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/spool/locks/*\fR\fR
+.ad
+.RS 27n
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/spool/uucp/*\fR\fR
+.ad
+.RS 27n
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/spool/uucppublic/*\fR\fR
+.ad
+.RS 27n
+
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR uucp (1C),
+.BR uustat (1C),
+.BR uux (1C),
+.BR attributes (7),
+.BR Uutry (8),
+.BR cron (8),
+.BR uusched (8)
diff --git a/usr/src/man/man8/uucleanup.8 b/usr/src/man/man8/uucleanup.8
new file mode 100644
index 0000000000..19943ced26
--- /dev/null
+++ b/usr/src/man/man8/uucleanup.8
@@ -0,0 +1,164 @@
+'\" te
+.\" Copyright (c) 1996, Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH UUCLEANUP 8 "May 19, 1993"
+.SH NAME
+uucleanup \- uucp spool directory clean-up
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/uucp/uucleanup\fR [\fB-C\fR\fItime\fR] [\fB-D\fR\fItime\fR] [\fB-m\fR\fIstring\fR]
+ [\fB-o\fR\fItime\fR] [\fB-s\fR\fIsystem\fR] [\fB-W\fR\fItime\fR] [\fB-x\fR\fIdebug-level\fR] [\fB-X\fR\fItime\fR]
+.fi
+
+.SH DESCRIPTION
+.LP
+\fBuucleanup\fR will scan the spool directories for old files and take
+appropriate action to remove them in a useful way:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Inform the requester of send/receive requests for systems that can not be
+reached.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Return undeliverable mail to the sender.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Deliver \fBrnews\fR files addressed to the local system.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Remove all other files.
+.RE
+.sp
+.LP
+In addition, there is a provision to warn users of requests that have been
+waiting for a given number of days (default 1 day). Note: \fBuucleanup\fR will
+process as if all option \fBtimes\fR were specified to the default values
+unless \fBtime\fR is specifically set.
+.sp
+.LP
+This program is typically started by the shell \fBuudemon.cleanup\fR, which
+should be started by \fBcron\fR(8).
+.SH OPTIONS
+.ne 2
+.na
+\fB\fB-C\fR\fBtime\fR\fR
+.ad
+.RS 17n
+Remove any \fBC.\fR files greater or equal to \fBtime\fR days old and send
+appropriate information to the requester (default 7 days).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-D\fR\fBtime\fR\fR
+.ad
+.RS 17n
+Remove any \fBD.\fR files greater or equal to \fBtime\fR days old, make an
+attempt to deliver mail messages, and execute \fBrnews\fR when appropriate
+(default 7 days).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-m\fR\fIstring\fR\fR
+.ad
+.RS 17n
+Include \fIstring\fR in the warning message generated by the \fB-W\fR option.
+The default line is "See your local administrator to locate the problem".
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-o\fR\fBtime\fR\fR
+.ad
+.RS 17n
+Delete other files whose age is more than \fBtime\fR days (default 2 days).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR\fIsystem\fR\fR
+.ad
+.RS 17n
+Execute for \fIsystem\fR spool directory only.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-W\fR\fBtime\fR\fR
+.ad
+.RS 17n
+Any \fBC.\fR files equal to \fBtime\fR days old will cause a mail message to be
+sent to the requester warning about the delay in contacting the remote. The
+message includes the \fIJOBID\fR, and in the case of mail, the mail message.
+The administrator may include a message line telling whom to call to check the
+problem (\fB-m\fR option) (default 1 day).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-x\fR\fIdebug-level\fR\fR
+.ad
+.RS 17n
+Produce debugging output on standard output. \fIdebug-level\fR is a single digit
+between 0 and 9; higher numbers give more detailed debugging information. (This
+option may not be available on all systems.)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-X\fR\fBtime\fR\fR
+.ad
+.RS 17n
+Any \fBX.\fR files greater or equal to \fBtime\fR days old will be removed. The
+\fBD.\fR files are probably not present (if they were, the \fBX.\fR could get
+executed). But if there are \fBD.\fR files, they will be taken care of by D.
+processing (default 2 days).
+.RE
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/usr/lib/uucp\fR\fR
+.ad
+.RS 19n
+directory with commands used by \fBuucleanup\fR internally
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/spool/uucp\fR\fR
+.ad
+.RS 19n
+spool directory
+.RE
+
+.SH SEE ALSO
+.LP
+.BR uucp (1C),
+.BR uux (1C),
+.BR attributes (7),
+.BR cron (8)
diff --git a/usr/src/man/man8/uusched.8 b/usr/src/man/man8/uusched.8
new file mode 100644
index 0000000000..a302b31140
--- /dev/null
+++ b/usr/src/man/man8/uusched.8
@@ -0,0 +1,115 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 1997 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH UUSCHED 8 "May 19, 1993"
+.SH NAME
+uusched \- uucp file transport program scheduler
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/uucp/uusched\fR [\fB-u\fR \fIdebug-level\fR] [\fB-x\fR \fIdebug-level\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBuusched\fR is the \fBuucp\fR(1C) file transport scheduler. It is usually
+started by the daemon \fIuudemon.hour\fR that is started by \fBcron\fR(8)
+from an entry in user \fBuucp\fR's crontab file:
+.sp
+.LP
+\fB11,41 * * * * /etc/uucp/uucp/uudemon.hour\fR
+.SH OPTIONS
+.sp
+.LP
+The options are for debugging purposes only. \fIdebug-level\fR is a number
+between \fB0\fR and \fB9\fR. Higher numbers give more detailed debugging
+information:
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-u\fR\fI debug-level\fR\fR
+.ad
+.RS 18n
+Passes the \fB-u\fR\fI debug-level\fR option \fBuucico\fR(8) as \fB-x\fR\fI
+debug-level.\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-x\fR\fI debug-level\fR\fR
+.ad
+.RS 18n
+Outputs debugging messages from \fBuusched\fR.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/uucp/Devices\fR\fR
+.ad
+.RS 27n
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/uucp/Permissions\fR\fR
+.ad
+.RS 27n
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/uucp/Systems\fR\fR
+.ad
+.RS 27n
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/spool/locks/*\fR\fR
+.ad
+.RS 27n
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/spool/uucp/*\fR\fR
+.ad
+.RS 27n
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/spool/uucppublic/*\fR\fR
+.ad
+.RS 27n
+
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR uucp (1C),
+.BR uustat (1C),
+.BR uux (1C),
+.BR attributes (7),
+.BR cron (8),
+.BR uucico (8)
diff --git a/usr/src/man/man8/uuxqt.8 b/usr/src/man/man8/uuxqt.8
new file mode 100644
index 0000000000..196a758f1f
--- /dev/null
+++ b/usr/src/man/man8/uuxqt.8
@@ -0,0 +1,113 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 1997 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH UUXQT 8 "May 19, 1993"
+.SH NAME
+uuxqt \- execute remote command requests
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/uucp/uuxqt\fR [\fB-s\fR \fIsystem\fR] [\fB-x\fR \fIdebug-level\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBuuxqt\fR is the program that executes remote job requests from remote
+systems generated by the use of the \fBuux\fR command. (\fBmail\fR uses
+\fBuux\fR for remote mail requests). \fBuuxqt\fR searches the spool directories
+looking for execution requests. For each request, \fBuuxqt\fR checks to see if
+all the required data files are available, accessible, and the requested
+commands are permitted for the requesting system. The \fBPermissions\fR file is
+used to validate file accessibility and command execution permission.
+.sp
+.LP
+There are two environment variables that are set before the \fBuuxqt\fR command
+is executed:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBUU_MACHINE\fR is the machine that sent the job (the previous one).
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+\fBUU_USER\fR is the user that sent the job.
+.RE
+.sp
+.LP
+These can be used in writing commands that remote systems can execute to
+provide information, auditing, or restrictions.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-s\fR\fI system\fR\fR
+.ad
+.RS 18n
+Specifies the remote \fIsystem\fR name.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-x\fR\fI debug-level\fR\fR
+.ad
+.RS 18n
+\fIdebug-level\fR is a number from \fB0\fR to \fB9\fR. Higher numbers give more
+detailed debugging information.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/uucp/Limits\fR\fR
+.ad
+.RS 25n
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/uucp/Permissions\fR\fR
+.ad
+.RS 25n
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/spool/locks/*\fR\fR
+.ad
+.RS 25n
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/spool/uucp/*\fR\fR
+.ad
+.RS 25n
+
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR mail (1),
+.BR uucp (1C),
+.BR uustat (1C),
+.BR uux (1C),
+.BR attributes (7),
+.BR uucico (8)
diff --git a/usr/src/man/man8/vfsstat.8 b/usr/src/man/man8/vfsstat.8
new file mode 100644
index 0000000000..0a4c3a1a9e
--- /dev/null
+++ b/usr/src/man/man8/vfsstat.8
@@ -0,0 +1,213 @@
+'\" te
+.\"
+.\" This file and its contents are supplied under the terms of the
+.\" Common Development and Distribution License ("CDDL"), version 1.0.
+.\" You may only use this file in accordance with the terms of version
+.\" 1.0 of the CDDL.
+.\"
+.\" A full copy of the text of the CDDL should have accompanied this
+.\" source. A copy of the CDDL is also available via the Internet at
+.\" http://www.illumos.org/license/CDDL.
+.\"
+.\" Copyright 2014 Joyent, Inc. All rights reserved.
+.\"
+.TH "VFSSTAT" "8" "May 1, 2014" "" ""
+.
+.SH "NAME"
+\fBvfsstat\fR \-\- Report VFS read and write activity
+.
+.SH "SYNOPSIS"
+.
+.nf
+vfsstat [\-hIMrzZ] [interval [count]]
+.
+.fi
+.
+.SH "DESCRIPTION"
+The vfsstat utility reports a summary of VFS read and write
+activity per zone\. It first prints all activity since boot, then
+reports activity over a specified interval\.
+.
+.P
+When run from a non\-global zone (NGZ), only activity from that NGZ
+can be observed\. When run from a the global zone (GZ), activity
+from the GZ and all other NGZs can be observed\.
+.
+.P
+This tool is convenient for examining I/O performance as
+experienced by a particular zone or application\. Other tools
+which examine solely disk I/O do not report reads and writes which
+may use the filesystem\'s cache\. Since all read and write system
+calls pass through the VFS layer, even those which are satisfied
+by the filesystem cache, this tool is a useful starting point when
+looking at a potential I/O performance problem\. The vfsstat
+command reports the most accurate reading of I/O performance as
+experienced by an application or zone\.
+.
+.P
+One additional feature is that ZFS zvol performance is also reported
+by this tool, even though zvol I/O does not go through the VFS
+layer\. This is done so that this single tool can be used to monitor
+I/O performance and because its not unreasonable to think of zvols
+as being included along with other ZFS filesystems\.
+.
+.P
+The calculations and output fields emulate those from iostat(8)
+as closely as possible\. When only one zone is actively performing
+disk I/O, the results from iostat(8) in the global zone and
+vfsstat in the local zone should be almost identical\. Note that
+many VFS read operations may be handled by the filesystem cache,
+so vfsstat and iostat(8) will be similar only when most
+operations require a disk access\.
+.
+.P
+As with iostat(8), a result of 100% for VFS read and write
+utilization does not mean that the VFS layer is fully saturated\.
+Instead, that measurement just shows that at least one operation
+was pending over the last interval of time examined\. Since the
+VFS layer can process more than one operation concurrently, this
+measurement will frequently be 100% but the VFS layer can still
+accept additional requests\.
+.
+.SH "OUTPUT"
+The vfsstat utility reports the following information:
+.
+.IP "" 4
+.
+.nf
+r/s
+.RS
+reads per second
+.RE
+
+w/s
+.RS
+writes per second
+.RE
+
+kr/s
+.RS
+kilobytes read per second
+.RE
+
+kw/s
+.RS
+kilobytes written per second
+.RE
+
+ractv
+.RS
+average number of read operations actively being serviced by the VFS layer
+.RE
+
+wactv
+.RS
+average number of write operations actively being serviced by the VFS layer
+.RE
+
+read_t
+.RS
+average VFS read latency, in microseconds
+.RE
+
+writ_t
+.RS
+average VFS write latency, in microseconds
+.RE
+
+%r
+.RS
+percent of time there is a VFS read operation pending
+.RE
+
+%w
+.RS
+percent of time there is a VFS write operation pending
+.RE
+
+d/s
+.RS
+VFS operations per second delayed by the ZFS I/O throttle
+.RE
+
+del_t
+.RS
+average ZFS I/O throttle delay, in microseconds
+.RE
+.
+.fi
+.
+.IP "" 0
+.
+.SH "OPTIONS"
+The following options are supported:
+.
+.P
+\-h
+.RS
+Show help message and exit
+.RE
+.
+.P
+\-I
+.RS
+Print results per interval, rather than per second (where applicable)
+.RE
+.
+.P
+\-M
+.RS
+Print results in MB/s instead of KB/s
+.RE
+.
+.P
+\-r
+.RS
+Show results in a comma\-separated format
+.RE
+.
+.P
+\-z
+.RS
+Hide zones with no VFS activity
+.RE
+.
+.P
+\-Z
+.RS
+Print results for all zones, not just the current zone
+.RE
+.
+.SH "OPERANDS"
+interval
+.
+.P
+Specifies the length in seconds to pause between each interval
+report\. If not specified, vfsstat will print a summary since boot
+and exit\.
+.
+.P
+count
+.
+.P
+Specifies the number of intervals to report\. Defaults to
+unlimited if not specified\.
+.
+.SH "SEE ALSO"
+.
+.nf
+iostat(8), ziostat(8), mpstat(8)
+.
+.fi
+.
+.SH "NOTES"
+This command does not examine readdir or any other VFS operations,
+only read and write operations\.
+.
+.P
+This command does not look at network I/O, only I/O operations to
+or from a file\.
+.
+.P
+The output format from vfsstat may change over time; use the
+comma\-separated output for a stable output format\.
diff --git a/usr/src/man/man8/vmstat.8 b/usr/src/man/man8/vmstat.8
new file mode 100644
index 0000000000..7fcd9f04f6
--- /dev/null
+++ b/usr/src/man/man8/vmstat.8
@@ -0,0 +1,525 @@
+'\" te
+.\" Copyright (c) 2001 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
+.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH VMSTAT 8 "May 6, 2020"
+.SH NAME
+vmstat \- report virtual memory statistics
+.SH SYNOPSIS
+.nf
+\fBvmstat\fR [\fB-ipqsS\fR] [\fB-T\fR u | d] [\fIdisks\fR] [\fIinterval\fR [\fIcount\fR]]
+.fi
+
+.SH DESCRIPTION
+\fBvmstat\fR reports virtual memory statistics regarding kernel thread, virtual
+memory, disk, trap, and \fBCPU\fR activity.
+.sp
+.LP
+On \fBMP\fR (multi-processor) systems, \fBvmstat\fR averages the number of
+\fBCPUs\fR into the output. For per-processor statistics, see \fBmpstat\fR(8).
+.sp
+.LP
+\fBvmstat\fR only supports statistics for certain devices. For more general
+system statistics, use \fBsar\fR(1), \fBiostat\fR(8), or \fBsar\fR(8).
+.sp
+.LP
+Without options, \fBvmstat\fR displays a one-line summary of the virtual memory
+activity since the system was booted.
+.sp
+.LP
+During execution of the kernel status command, the \fBstate\fR of the system
+can change. If relevant, a state change message is included in the \fBvmstat\fR
+output, in one of the following forms:
+.sp
+.in +2
+.nf
+<<device added: sd0>>
+<<device removed: sd0>>
+<<processors added: 1, 3>>
+<<processors removed: 1, 3>>
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+See \fBdisks\fR(8) for device naming conventions for disks.
+.SH OPTIONS
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-i\fR\fR
+.ad
+.RS 13n
+Report the number of interrupts per device. \fIcount\fR and \fIinterval\fR does
+not apply to the \fB-i\fR option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR\fR
+.ad
+.RS 13n
+Report paging activity in details. This option will display the following,
+respectively:
+.sp
+.ne 2
+.na
+\fBepi\fR
+.ad
+.RS 7n
+Executable page-ins.
+.RE
+
+.sp
+.ne 2
+.na
+\fBepo\fR
+.ad
+.RS 7n
+Executable page-outs.
+.RE
+
+.sp
+.ne 2
+.na
+\fBepf\fR
+.ad
+.RS 7n
+Executable page-frees.
+.RE
+
+.sp
+.ne 2
+.na
+\fBapi\fR
+.ad
+.RS 7n
+Anonymous page-ins.
+.RE
+
+.sp
+.ne 2
+.na
+\fBapo\fR
+.ad
+.RS 7n
+Anonymous page-outs.
+.RE
+
+.sp
+.ne 2
+.na
+\fBapf\fR
+.ad
+.RS 7n
+Anonymous page-frees.
+.RE
+
+.sp
+.ne 2
+.na
+\fBfpi\fR
+.ad
+.RS 7n
+File system page-ins.
+.RE
+
+.sp
+.ne 2
+.na
+\fBfpo\fR
+.ad
+.RS 7n
+File system page-outs.
+.RE
+
+.sp
+.ne 2
+.na
+\fBfpf\fR
+.ad
+.RS 7n
+File system page-frees.
+.RE
+
+When executed in a \fBzone\fR and if the pools facility is active, all of the
+above only report activity on the processors in the processor set of the
+\fBzone\fR's pool.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-q\fR\fR
+.ad
+.RS 13n
+Suppress messages related to state changes.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR\fR
+.ad
+.RS 13n
+Display the total number of various system events since boot. \fIcount\fR and
+\fIinterval\fR does not apply to the \fB-s\fR option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-S\fR\fR
+.ad
+.RS 13n
+Report on swapping rather than paging activity. This option will change two
+fields in \fBvmstat\fR's ``paging'' display: rather than the ``re'' and ``mf''
+fields, \fBvmstat\fR will report ``si'' (swap-ins) and ``so'' (swap-outs).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-T\fR \fBu\fR | \fBd\fR\fR
+.ad
+.RS 13n
+Specify \fBu\fR for a printed representation of the internal representation of
+time. See \fBtime\fR(2). Specify \fBd\fR for standard date format. See
+\fBdate\fR(1).
+.RE
+
+.SH OPERANDS
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fB\fIcount\fR\fR
+.ad
+.RS 12n
+Specifies the number of times that the statistics are repeated. \fIcount\fR
+does not apply to the \fB-i\fR and \fB-s\fR options.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIdisks\fR\fR
+.ad
+.RS 12n
+Specifies which disks are to be given priority in the output (only four disks
+fit on a line). Common disk names are \fBid\fR, \fBsd\fR, \fBxd\fR, or
+\fBxy,\fR followed by a number (for example, \fBsd2\fR, \fBxd0\fR, and so
+forth).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIinterval\fR\fR
+.ad
+.RS 12n
+Specifies the last number of seconds over which \fBvmstat\fR summarizes
+activity. This number of seconds repeats forever. \fIinterval\fR does not apply
+to the \fB-i\fR and \fB-s\fR options.
+.RE
+
+.SH EXAMPLES
+\fBExample 1 \fRUsing \fBvmstat\fR
+.sp
+.LP
+The following command displays a summary of what the system is doing every five
+seconds.
+
+.sp
+.in +2
+.nf
+example% \fBvmstat 5\fR
+
+
+kthr memory page disk faults cpu
+r b w swap free re mf pi p fr de sr s0 s1 s2 s3 in sy cs us sy id
+0 0 0 11456 4120 1 41 19 1 3 0 2 0 4 0 0 48 112 130 4 14 82
+0 0 1 10132 4280 0 4 44 0 0 0 0 0 23 0 0 211 230 144 3 35 62
+0 0 1 10132 4616 0 0 20 0 0 0 0 0 19 0 0 150 172 146 3 33 64
+0 0 1 10132 5292 0 0 9 0 0 0 0 0 21 0 0 165 105 130 1 21 78
+1 1 1 10132 5496 0 0 5 0 0 0 0 0 23 0 0 183 92 134 1 20 79
+1 0 1 10132 5564 0 0 25 0 0 0 0 0 18 0 0 131 231 116 4 34 62
+1 0 1 10124 5412 0 0 37 0 0 0 0 0 22 0 0 166 179 118 1 33 67
+1 0 1 10124 5236 0 0 24 0 0 0 0 0 14 0 0 109 243 113 4 56 39
+^C
+
+example%
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The fields of \fBvmstat\fR's display are
+
+.sp
+.ne 2
+.na
+\fB\fBkthr\fR\fR
+.ad
+.RS 10n
+Report the number of kernel threads in each of the three following states:
+.sp
+.ne 2
+.na
+\fB\fBr\fR\fR
+.ad
+.RS 5n
+the number of kernel threads in run queue
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBb\fR\fR
+.ad
+.RS 5n
+the number of blocked kernel threads that are waiting for resources \fBI/O,\fR
+paging, and so forth
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBw\fR\fR
+.ad
+.RS 5n
+the number of swapped out lightweight processes (LWPs) that are waiting for
+processing resources to finish.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmemory\fR\fR
+.ad
+.RS 10n
+Report on usage of virtual and real memory.
+.sp
+.ne 2
+.na
+\fB\fBswap\fR\fR
+.ad
+.RS 8n
+available swap space (Kbytes)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfree\fR\fR
+.ad
+.RS 8n
+size of the free list (Kbytes)
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpage\fR\fR
+.ad
+.RS 10n
+Report information about page faults and paging activity. The information on
+each of the following activities is given in units per second.
+.sp
+.ne 2
+.na
+\fB\fBre\fR\fR
+.ad
+.RS 6n
+page reclaims \(em but see the \fB-S\fR option for how this field is modified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmf\fR\fR
+.ad
+.RS 6n
+minor faults \(em but see the \fB-S\fR option for how this field is modified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpi\fR\fR
+.ad
+.RS 6n
+kilobytes paged in
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBpo\fR\fR
+.ad
+.RS 6n
+kilobytes paged out
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfr\fR\fR
+.ad
+.RS 6n
+kilobytes freed
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBde\fR\fR
+.ad
+.RS 6n
+anticipated short-term memory shortfall (Kbytes)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsr\fR\fR
+.ad
+.RS 6n
+pages scanned by clock algorithm
+.RE
+
+When executed in a \fBzone\fR and if the pools facility is active, all of the
+above (except for "de") only report activity on the processors in the processor
+set of the \fBzone\fR's pool.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdisk\fR\fR
+.ad
+.RS 10n
+Report the number of disk operations per second. There are slots for up to four
+disks, labeled with a single letter and number. The letter indicates the type
+of disk (s = \fBSCSI\fR, i = \fBIPI\fR, and so forth); the number is the
+logical unit number.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfaults\fR\fR
+.ad
+.RS 10n
+Report the trap/interrupt rates (per second).
+.sp
+.ne 2
+.na
+\fB\fBin\fR\fR
+.ad
+.RS 6n
+interrupts
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsy\fR\fR
+.ad
+.RS 6n
+system calls
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcs\fR\fR
+.ad
+.RS 6n
+\fBCPU\fR context switches
+.RE
+
+When executed in a \fBzone\fR and if the pools facility is active, all of the
+above only report activity on the processors in the processor set of the
+\fBzone\fR's pool.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcpu\fR\fR
+.ad
+.RS 10n
+Give a breakdown of percentage usage of \fBCPU\fR time. On \fBMP\fR systems,
+this is an average across all processors.
+.sp
+.ne 2
+.na
+\fB\fBus\fR\fR
+.ad
+.RS 6n
+user time
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsy\fR\fR
+.ad
+.RS 6n
+system time
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBid\fR\fR
+.ad
+.RS 6n
+idle time
+.RE
+
+When executed in a \fBzone\fR and if the pools facility is active, all of the
+above only report activity on the processors in the processor set of the
+\fBzone\fR's pool.
+.RE
+
+.SH ATTRIBUTES
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability See below.
+.TE
+
+.sp
+.LP
+Invocation is evolving. Human readable output is unstable.
+.SH SEE ALSO
+.BR date (1),
+.BR sar (1),
+.BR time (2),
+.BR attributes (7),
+.BR disks (8),
+.BR iostat (8),
+.BR mpstat (8),
+.BR sar (8)
+.SH NOTES
+The sum of CPU utilization might vary slightly from 100 because of rounding
+errors in the production of a percentage figure.
+.sp
diff --git a/usr/src/man/man8/vndadm.8 b/usr/src/man/man8/vndadm.8
new file mode 100644
index 0000000000..8bb79bb81a
--- /dev/null
+++ b/usr/src/man/man8/vndadm.8
@@ -0,0 +1,650 @@
+'\" te
+.\"
+.\" This file and its contents are supplied under the terms of the
+.\" Common Development and Distribution License ("CDDL"), version 1.0.
+.\" You may only use this file in accordance with the terms of version
+.\" 1.0 of the CDDL.
+.\"
+.\" A full copy of the text of the CDDL should have accompanied this
+.\" source. A copy of the CDDL is also available via the Internet at
+.\" http://www.illumos.org/license/CDDL.
+.\"
+.\"
+.\" Copyright (c) 2014, Joyent, Inc. All rights reserved.
+.\"
+.TH VNDADM 8 "Mar 06, 2014"
+.SH NAME
+vndadm \- administer vnd devices
+
+.SH SYNOPSIS
+
+.nf
+vndadm create [-z zonename] [-l datalink] device
+vndadm destroy [-z zonename] device...
+vndadm list [-p] [-d delim] [-o field,...] [-z zonename] [device]...
+vndadm get [-p] [-d delim] [-z zonename] device [prop]...
+vndadm set [-z zonename] device prop=val...
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The vndadm command is used to administer vnd devices. A vnd device is
+similar to an IP network interface, except that the vnd device operates
+at layer two. A vnd device is created over a data link (see dladm(8))
+and its address is that of the underlying data link. For ethernet based
+devices, that address would be the MAC address of the data link. vnd
+devices are character devices which may be used to send and receive
+layer two packets. When reading or writing to a vnd device, the full
+frame must be present. This is useful for working with virtual machines,
+or other environments where you need to manipulate the entire layer two
+frame.
+
+.sp
+.LP
+Every command takes a device as an argument. To specify a vnd device,
+you just use the name of the device. Devices are scoped to zones. If no
+zone is specified, the current zone is assumed. A device name can be any
+series of alphanumeric ascii characters which typically match the name
+of the underlying data link. A given vnd device name must be unique in a
+given zone, but the same name can be used across zones.
+.sp
+.SH OPTIONS
+.sp
+.LP
+All vndadm subcommands have the following common option:
+.sp
+.ne 2
+.na
+-z zonename
+.ad
+.sp .6
+.RS 4n
+Operate in the context of the specified zone. When creating a vnd
+device, the named device is created in the specified zone. All other
+operations scope the device lookup to the specified zone. If the user is
+not in the global zone, the use of -z will not work.
+
+.sp
+.LP
+When -z is used and multiple devices are specified, then
+the use of -z applies to all of the devices.
+.RE
+
+.SH SUBCOMMANDS
+.sp
+.ne 2
+.na
+vndadm create [-z zonename] [-l datalink] device
+.ad
+.sp
+.RS 4n
+Creates a vnd device with the specified name device. If -l datalink is
+not specified, it is assumed that the data link and the device share the
+same name. The created device will exist for as long as the zone exists
+or until a call to vndadm destroy. vnd devices do not persist across
+system reboots. Note, if an IP interface or another libdlpi(3LIB)
+consumer is already using the data link, then vnd will fail.
+
+.sp
+The maximum length of the name of device is 31 characters. The allowed
+set of characters is alphanumberic characters, ':', \'-', and \'_'. The
+names 'zone' and 'ctl' are reserved and may not be used.
+
+.sp
+.ne 2
+.na
+-l datalink
+.ad
+.sp .6
+.RS 4n
+Specifies the name of the data link to create the device over. This
+allows the vnd device name to be different from the data link's name.
+.RE
+.sp
+.ne 2
+.na
+-z zonename
+.ad
+.sp .6
+.RS 4n
+See OPTIONS above.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+vndadm destroy [-z zonename] device...
+.ad
+.sp
+.RS 4n
+Destroys the specified device. The destruction is analogous to
+unlink(2). If the device is still open and used by applications, the
+device will continue to exist, but it will no longer be accessible by
+the name device.
+.sp
+.ne 2
+.na
+-z zonename
+.ad
+.sp .6
+.RS 4n
+See OPTIONS above.
+.RE
+.RE
+
+.sp
+.ne 2
+.na
+vndadm list [-p] [-d delim] [-o field,...] [-z zonename] [device]...
+.ad
+.sp
+.RS 4n
+Lists active vnd devices. By default, vnadm list lists all devices in
+every zone that the caller is allowed to see; the current zone if in the
+non-global zone, and all zones in the global zone. If device is
+specified one or more times, then output will be limited to the
+specified devices.
+.sp
+.ne 2
+.na
+-o field[,...]
+.ad
+.sp .6
+.RS 4n
+A case-insensitive, comma-separated list of output fields. When -o is
+not used, all of the fields listed below are shown. The field name must
+be one of the following fields:
+
+.sp
+.ne 2
+.na
+NAME
+.ad
+.sp .6
+.RS 4n
+The name of the vnd device.
+.RE
+
+.sp
+.ne 2
+.na
+DATALINK
+.ad
+.sp .6
+.RS 4n
+The name of the data link the vnd device was created over.
+.RE
+
+.sp
+.ne 2
+.na
+ZONENAME
+.ad
+.sp .6
+.RS 4n
+The name of the zone that the vnd device exists in.
+.RE
+.RE
+
+.sp
+.ne 2
+.na
+-p
+.ad
+.sp .6
+.RS 4n
+Display the output in a stable machine parseable format. The -o option
+is required with the -p option. See "Parseable Output Format" below.
+.RE
+
+.sp
+.ne 2
+.na
+-d delim
+.ad
+.sp .6
+.RS 4n
+Change the delimiter used in conjunction with generating parseable
+output. This option may only be specified when -p is also specified.
+.RE
+
+.sp
+.ne 2
+.na
+-z zonename
+.ad
+.sp .6
+.RS 4n
+See OPTIONS above.
+.RE
+
+.RE
+
+
+.sp
+.ne 2
+.na
+vndadm get [-p] [-d delim] [-z zonename] device [prop]...
+.ad
+.sp
+.RS 4n
+Displays the properties for the specified device. By default, all
+properties of a given device are displayed. If prop is specified one or
+more times, then only the specified properties will be displayed for
+device. For a list of properties, see the section "Properties" below.
+The property output consists of the following four columns:
+.sp
+.ne 2
+.na
+LINK
+.ad
+.sp .6
+.RS 4n
+The name of the device
+.RE
+
+.sp
+.ne 2
+.na
+PROPERTY
+.ad
+.sp .6
+.RS 4n
+The name of the property. Note that some properties that are private to
+the implementation may be displayed. Those properties begin with a
+leading underscore.
+.RE
+
+.sp
+.ne 2
+.na
+PERM
+.ad
+.sp .6
+.RS 4n
+Describes whether the property is read-only or
+if it is read-write. This field does not
+indicate if the current user has permission, but
+lists permissions for a privileged user.
+.RE
+
+.sp
+.ne 2
+.na
+VALUE
+.ad
+.sp .6
+.RS 4n
+The value of the property.
+.RE
+
+.sp
+.ne 2
+.na
+-p
+.ad
+.sp .6
+.RS 4n
+Display the output in a stable machine parseable format. See "Parseable
+Output Format" below.
+.RE
+
+.sp
+.ne 2
+.na
+-d delim
+.ad
+.sp .6
+.RS 4n
+Change the delimiter used in conjunction with generating parseable
+output. This option may only be specified when -p is also specified.
+.RE
+
+.sp
+.ne 2
+.na
+-z zonename
+.ad
+.sp .6
+.RS 4n
+See OPTIONS above.
+.RE
+.RE
+
+.sp
+.ne 2
+.na
+vndadm set [-z zonename] device prop=val...
+.ad
+.sp
+.RS 4n
+Sets properties on the named device. Setting a property takes effect for
+all operations on the device, after the program returns. Multiple
+properties can be set at once; however, properties are applied one at a
+time to the device. Property names and values must be separated with an
+equals sign. Additional property and value pairs should be separated by
+white space. For a list of properties, see the section "Properties"
+below.
+
+.sp
+.ne 2
+.na
+-z zonename
+.ad
+.sp .6
+.RS 4n
+See OPTIONS above.
+.RE
+.RE
+
+.SS Parseable Output Format
+.sp
+.LP
+The default output for parseable data is to be separated with a single
+ascii space character. The delimiter may be changed with the -d
+option. When parseable output is requested, no numbers that represent
+sizes will be displayed in human readable form, they will be fully
+expanded. eg. the number 42K will instead be 43008.
+
+.SS Properties
+.sp
+.LP
+The following are supported and stable properties. Note that any
+properties that starts with a leading underscore are not a stable
+property and may be removed at any time.
+
+.sp
+.ne 2
+.na
+rxbuf
+.ad
+.sp .6
+.RS 4n
+A read/write property that controls the size of the receive buffer for
+the device. All received data enters the receive buffer until a consumer
+consumes it. If adding a received frame would exceed the size of the
+receive buffer, then that frame will be dropped. The maximum size of the
+buffer is limited by the 'maxsize' property. The minimum size of the
+buffer is the value of the 'maxtu' property. The property's value may be
+anything between that maximum and minimum. When setting this property,
+standard size suffixes such as 'K' and 'M' may be used.
+.RE
+
+.sp
+.ne 2
+.na
+txbuf
+.ad
+.sp .6
+.RS 4n
+A read/write property that controls the size of the transmit buffer. All
+in-flight transmitted data must be able to fit into the transmit buffer
+to account for potential flow control events. If there is not enough
+space in the transmit buffer, transmit related I/O operations will
+either block or fail based on whether the file has been put into
+non-blocking mode by setting O_NONBLOCK or O_NDELAY with fcntl(2). The
+maximum size of the buffer is limited by the 'maxsize' property. The
+minimum size of the buffer is the value of the 'maxtu' property. The
+property's value may be anything between that maximum and minimum. When
+setting this property, standard size suffixes such as 'K' and 'M' may be
+used.
+
+.RE
+
+.sp
+.ne 2
+.na
+maxsize
+.ad
+.sp .6
+.RS 4n
+A read-only property that describes the maximum size of buffers in the
+system. Properties such as rxbuf and txbuf cannot be set beyond this.
+.RE
+
+.sp
+.ne 2
+.na
+mintu
+.ad
+.sp .6
+.RS 4n
+A read-only property that describes the minimum size of a frame
+transmitted to the underlying data link. Note that the minimum listed
+here may be less than the size of a valid layer two frame and therefore
+may be dropped. A frame smaller than this value will be rejected by vnd.
+.RE
+
+.sp
+.ne 2
+.na
+maxtu
+.ad
+.sp .6
+.RS 4n
+A read-only property that describes the maximum size of a frame
+transmitted to the underlying data link. A frame larger than this value
+will be rejected by vnd.
+.RE
+
+.SH EXAMPLES
+.LP
+Example 1 Creating a vnd device
+.sp
+.LP
+To create a vnd device over the VNIC named net0, enter the following
+command:
+
+.sp
+.in +2
+.nf
+# vndadm create net0
+.fi
+.in -2
+.sp
+
+.LP
+Example 2 Creating a vnd device in another zone
+.sp
+.LP
+
+To create a vnd device over the VNIC named net1 in the zone
+1b7155a4-aef9-e7f0-d33c-9705e4b8b525, enter the following command:
+
+.sp
+.in +2
+.nf
+# vndadm create -z 1b7155a4-aef9-e7f0-d33c-9705e4b8b525 net1
+.fi
+.in -2
+.sp
+
+.LP
+Example 3 Destroying a vnd device
+.sp
+.LP
+
+To destroy the vnd device named net0, enter the following command:
+
+.sp
+.in +2
+.nf
+# vndadm destroy net0
+.fi
+.in -2
+.sp
+
+.LP
+Example 4 Destroying a vnd device in another zone
+.sp
+.LP
+
+To destroy the vnd device named net1 in the zone
+1b7155a4-aef9-e7f0-d33c-9705e4b8b525, enter the following command:
+
+.sp
+.in +2
+.nf
+# vndadm destroy -z 1b7155a4-aef9-e7f0-d33c-9705e4b8b525 net1
+.fi
+.in -2
+.sp
+
+.LP
+Example 5 List all vnd devices
+.sp
+.LP
+
+To list all devices, run the following command:
+
+.sp
+.in +2
+.nf
+# vndadm list
+NAME DATALINK ZONENAME
+net0 net0 global
+net0 net0 1b7155a4-aef9-e7f0-d33c-9705e4b8b525
+.fi
+.in -2
+.sp
+
+.LP
+Example 6 Listing devices in a specific zone
+.sp
+.LP
+
+To list devices in a specific zone, run the following command:
+
+.sp
+.in +2
+.nf
+# vndadm list -z 1b7155a4-aef9-e7f0-d33c-9705e4b8b525
+
+NAME DATALINK ZONENAME
+net0 net0 1b7155a4-aef9-e7f0-d33c-9705e4b8b525
+.fi
+.in -2
+.sp
+
+.LP
+Example 7 List all devices in a parseable format
+.sp
+.LP
+
+To list all devices in a parseable format with the delimiter of ':', run
+the following command:
+
+.sp
+.in +2
+.nf
+# vndadm list -p -d: -o name,datalink,zone
+net0:net0:global
+net0:net0:1b7155a4-aef9-e7f0-d33c-9705e4b8b525
+.fi
+.in -2
+.sp
+
+.LP
+Example 8 Retrieving all properties for a device
+.sp
+.LP
+
+To retrieve all of the properties for the vnd device foo0, run the
+following command:
+
+.sp
+.in +2
+.nf
+# vndadm get foo0
+LINK PROPERTY PERM VALUE
+foo0 rxbuf rw 65536
+foo0 txbuf rw 65536
+foo0 maxsize r- 4194304
+foo0 mintu r- 0
+foo0 maxtu r- 1518
+foo0 _nflush rw 10
+foo0 _burstsz rw 10
+.fi
+.in -2
+.sp
+
+.LP
+Example 9 Retrieving specific properties for a device
+.sp
+.LP
+
+To retrieve just the rxbuf and txbuf properties for the vnd device foo0,
+run the following command:
+
+.sp
+.in +2
+.nf
+# vndadm get foo0 rxbuf txbuf
+LINK PROPERTY PERM VALUE
+foo0 rxbuf rw 65536
+foo0 txbuf rw 65536
+.fi
+.in -2
+.sp
+
+.LP
+Example 10 Retrieving properties for a device in a parseable format
+.sp
+.LP
+
+To retrieve all properties for the vnd device foo0 in a parseable
+format, run the following command:
+
+.sp
+.in +2
+.nf
+# vndadm get -p foo0
+foo0 rxbuf rw 65536
+foo0 txbuf rw 65536
+foo0 maxsize r- 4194304
+foo0 mintu r- 0
+foo0 maxtu r- 1518
+foo0 _nflush rw 10
+foo0 _burstsz rw 10
+.fi
+.in -2
+.sp
+
+.LP
+Example 11 Setting a property on a device
+.sp
+.LP
+
+To set the receive buffer size to one megabyte on the device foo0, run
+the following command:
+
+.sp
+.in +2
+.nf
+# vndadm set foo0 rxbuf=1M
+.fi
+.in -2
+.sp
+
+.LP
+Example 12 Setting multiple properties on a device
+.sp
+.LP
+
+To set the transmit buffer to 300 Kb and the receive buffer to 1 Mb, run
+the following command:
+
+.sp
+.in +2
+.nf
+# vndadm set foo0 rxbuf=300K txbuf=1M
+.fi
+.in -2
+.sp
+
+.SH SEE ALSO
+
+fcntl(2), fcntl.h(3HEAD), libvnd(3LIB), vnd(7D), dladm(8), ipadm(8), vndstat(8)
diff --git a/usr/src/man/man8/vndstat.8 b/usr/src/man/man8/vndstat.8
new file mode 100644
index 0000000000..826ab8cd97
--- /dev/null
+++ b/usr/src/man/man8/vndstat.8
@@ -0,0 +1,163 @@
+'\" te
+.\"
+.\" This file and its contents are supplied under the terms of the
+.\" Common Development and Distribution License ("CDDL"), version 1.0.
+.\" You may only use this file in accordance with the terms of version
+.\" 1.0 of the CDDL.
+.\"
+.\" A full copy of the text of the CDDL should have accompanied this
+.\" source. A copy of the CDDL is also available via the Internet at
+.\" http://www.illumos.org/license/CDDL.
+.\"
+.\"
+.\" Copyright (c) 2014, Joyent, Inc. All rights reserved.
+.\"
+.TH VNDSTAT 8 "Mar 06, 2014"
+.SH NAME
+vndstat \- report vnd activity
+
+.SH SYNOPSIS
+
+vndstat [interval [count]]
+
+.SH DESCRIPTION
+.sp
+.LP
+The vndstat command reports a summary of per-device vnd
+activity. Once per interval it prints a table of statistics per
+device. In the global zone, vndstat reports on all devices in the
+system. From the non-global zone, it only reports on devices that are
+present in that zone. vndstat reports on all vnd devices
+that exist, including anonymous devices which are not linked into the
+file system.
+.sp
+.LP
+The vndstat command's output includes the following information:
+.sp
+.ne 2
+.na
+.B name
+.ad
+.RS 14n
+The name of the device, if bound. If a given vnd device is not
+bound into the file system, hence considered anonymous, then there will
+be no name for the device.
+.RE
+
+.sp
+.ne 2
+.na
+.B rx B/s
+.ad
+.RS 14n
+The number of bytes received by the device during interval.
+.RE
+
+.sp
+.ne 2
+.na
+.B tx B/s
+.ad
+.RS 14n
+The number of bytes transmitted by the device during interval.
+.RE
+
+.sp
+.ne 2
+.na
+.B drops
+.ad
+.RS 14n
+The number of packets and messages which have been dropped. This
+includes all drops due to insufficient buffer space, IP hooks, and
+unknown or malformed DLPI messages.
+.RE
+
+.sp
+.ne 2
+.na
+.B txfc
+.ad
+.RS 14n
+The number of flow control events that have occurred. A flow control
+event occurs when the layers below vnd request that all transmits
+be paused until a future call resumes the flow. This statistic is
+incremented when the flow is resumed. It is not incremented when it is
+first paused.
+.RE
+
+.sp
+.ne 2
+.na
+.B zone
+.ad
+.RS 14n
+The name of the zone the device is located in.
+.RE
+
+.SH OPTIONS
+
+.sp
+.ne 2
+.na
+interval
+.ad
+.RS 13n
+Report once each interval seconds. interval may not be
+fractional.
+.RE
+
+.sp
+.ne 2
+.na
+count
+.ad
+.RS 13n
+Only print count reports, then exit.
+.RE
+.sp
+.LP
+When no arguments are given to vndstat, it will always print at an
+interval of one second. Reports will continue until vndstat
+is terminated.
+
+.SH EXAMPLES
+.LP
+Example 1 Print five seconds of data
+
+.sp
+.in +2
+.nf
+example% vndstat 1 5
+ name | rx B/s | tx B/s | drops txfc | zone
+ net0 | 1.45MB/s | 14.1KB/s | 0 0 | 1b7155a4-aef9-e7f0-d33c-9705e4b8b525
+ net0 | 3.50MB/s | 19.5KB/s | 0 0 | 1b7155a4-aef9-e7f0-d33c-9705e4b8b525
+ net0 | 2.83MB/s | 30.8KB/s | 0 0 | 1b7155a4-aef9-e7f0-d33c-9705e4b8b525
+ net0 | 3.08MB/s | 30.6KB/s | 0 0 | 1b7155a4-aef9-e7f0-d33c-9705e4b8b525
+ net0 | 3.21MB/s | 30.6KB/s | 0 0 | 1b7155a4-aef9-e7f0-d33c-9705e4b8b525
+.fi
+.in -2
+.sp
+
+.SH ATTRIBUTES
+.sp
+.LP
+See attributes(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability See below.
+.TE
+
+.sp
+.LP
+Invocation is evolving. Human readable output is unstable.
+.SH SEE ALSO
+
+vnd(4M), dlstat(8), nicstat(8), vndadm(8)
diff --git a/usr/src/man/man8/vntsd.8 b/usr/src/man/man8/vntsd.8
new file mode 100644
index 0000000000..5311ed16b6
--- /dev/null
+++ b/usr/src/man/man8/vntsd.8
@@ -0,0 +1,458 @@
+'\" te
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
+.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH VNTSD 8 "Mar 31, 2009"
+.SH NAME
+vntsd \- virtual network terminal server daemon for Logical Domains
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/ldoms/vntsd\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBvntsd\fR daemon is a server that supports connections to the Logical
+Domains (LDoms) console by using \fBtelnet\fR(1). When a \fBtelnet\fR session
+starts, \fBvntsd\fR sends \fBtelnet\fR options to the client indicating a
+willingness to remotely echo characters and to suppress go ahead.
+.sp
+.LP
+Consoles are organized into groups by the LDoms Manager. Each console group is
+assigned a unique group name and TCP port number. \fBvntsd\fR uses the group's
+port number to export access to the consoles within that group. To establish a
+connection with a console or console group, a user starts a \fBtelnet\fR(1)
+session with the corresponding group's port number. Depending on the number of
+consoles within that group, \fBvntsd\fR does one of two things:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+If there is only one console in the group, \fBvntsd\fR connects a session to
+that LDoms console.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+If there are multiple consoles in the group, \fBvntsd\fR prompts the user to
+select the console to which they would like to connect, as shown in
+"Multiple-Console Options," below.
+.RE
+.sp
+.LP
+For each console, \fBvntsd\fR provides write access only to the first user
+connecting to the console. Subsequent users connecting to the console are
+allowed only to read from the console and wait for write access. When the first
+user disconnects, write privileges are transferred to the next user waiting in
+the queue. If a user who does not have write privileges attempts to write to a
+console, the \fBvntsd\fR displays the following message:
+.sp
+.in +2
+.nf
+You do not have write access
+.fi
+.in -2
+
+.sp
+.LP
+A user who has no write access can acquire write access forcibly by using the
+\fB~w\fR special console command, described in "Special Console Commands,"
+below.
+.sp
+.LP
+\fBvntsd\fR can be invoked only with superuser privileges or by someone in the
+Primary Administrator role.
+.SH OPTIONS
+.sp
+.LP
+The options for \fBvntsd\fR are divided into multiple-console options and
+console commands.
+.SS "Multiple-Console Options"
+.sp
+.LP
+The options listed below are supported when there are multiple LDoms consoles
+in a group. The syntax for the use of these options is:
+.sp
+.in +2
+.nf
+\fI<hostname>\fR-vnts-\fI<group-name>\fR: \fI<option>\fR
+.fi
+.in -2
+
+.sp
+.LP
+For example:
+.sp
+.in +2
+.nf
+myhost-vnts-salesgroup: h
+.fi
+.in -2
+
+.sp
+.LP
+The \fBh\fR option invokes help, as described below.
+.sp
+.ne 2
+.na
+\fB\fBh\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display the following help text:
+.sp
+.in +2
+.nf
+h -- this help
+l -- list of consoles
+q -- quit
+c{id}, n{name} -- connect to console of domain {id} or domain name
+.fi
+.in -2
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBl\fR\fR
+.ad
+.sp .6
+.RS 4n
+List all consoles in the group. For example:
+.sp
+.in +2
+.nf
+DOMAIN ID DOMAIN NAME DOMAIN STATE
+0 ldg1 online
+1 ldg2 connected
+\&... ... ...
+.fi
+.in -2
+
+The two domain states and their meanings are:
+.sp
+.ne 2
+.na
+\fB\fBonline\fR\fR
+.ad
+.sp .6
+.RS 4n
+No one is connected to the console.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBconnected\fR\fR
+.ad
+.sp .6
+.RS 4n
+At least one user is already connected to the console.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBq\fR\fR
+.ad
+.sp .6
+.RS 4n
+Disconnect from \fBvntsd\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBc\fI{id}\fR, n\fI{name}\fR\fR\fR
+.ad
+.sp .6
+.RS 4n
+Connect to specified console. Upon connection, the following message is
+displayed:
+.sp
+.in +2
+.nf
+Connecting to console \fI<domain-name>\fR in group \fI<group-name>\fR
+Press ~? for control options ....
+.fi
+.in -2
+
+.RE
+
+.SS "Special Console Commands"
+.sp
+.LP
+A tilde (\fB~\fR) appearing as the first character of a line is an escape
+signal that directs \fBvntsd\fR to perform a special console command. The
+tilde-tilde (\fB~~\fR) sequence outputs a tilde. In conjunction with the
+initial tilde, \fBvntsd\fR accepts the following special console commands:
+.sp
+.ne 2
+.na
+\fB\fB~.\fR\fR
+.ad
+.sp .6
+.RS 4n
+Disconnect from the console or console group.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB~w\fR\fR
+.ad
+.sp .6
+.RS 4n
+Force write access to the console.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB~p\fR\fR
+.ad
+.sp .6
+.RS 4n
+Disconnect from this console, and connect to the console that precedes this
+console in the list of consoles.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB~n\fR\fR
+.ad
+.sp .6
+.RS 4n
+Disconnect from this console, and connect to the console that follows this
+console in the list of consoles.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB~#\fR\fR
+.ad
+.sp .6
+.RS 4n
+Send break.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB~^B\fR\fR
+.ad
+.sp .6
+.RS 4n
+Send alternate break.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB~?\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display \fBvntsd\fR help, as follows:
+.sp
+.in +2
+.nf
+~# - Send break
+~^B - Send alternate break
+~. - Exit from this console
+~w - Force write access
+~n - Console next
+~p - Console previous
+~? - Help
+.fi
+.in -2
+
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/ldoms/vntsd\fR\fR
+.ad
+.sp .6
+.RS 4n
+Binary executable \fBvntsd\fR file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/ldoms/vntsd.xml\fR\fR
+.ad
+.sp .6
+.RS 4n
+Service management facility (\fBsmf\fR(7)) manifest file for \fBvntsd\fR.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR telnet (1),
+.BR auth_attr (5),
+.BR attributes (7),
+.BR smf (7),
+.BR svccfg (8),
+.BR usermod (8)
+.SH NOTES
+.sp
+.LP
+The \fBvntsd\fR is managed by the service management facility, \fBsmf\fR(7),
+under the service identifier:
+.sp
+.in +2
+.nf
+svc:/ldoms/vntsd
+.fi
+.in -2
+
+.sp
+.LP
+You can change the following properties using the \fBsvccfg\fR(8) command:
+.sp
+.ne 2
+.na
+\fB\fBvntsd/vcc_device\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set an instance of the virtual console concentrator (\fBvcc\fR) driver to which
+\fBvntsd\fR is connected.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBvntsd/listen_addr\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set the IP address to which \fBvntsd\fR listens, using the following syntax:
+.sp
+.in +2
+.nf
+vntsd/listen_addr:"\fIxxx.xxx.xxx.xxx\fR"
+.fi
+.in -2
+
+\&...where \fIxxx.xxx.xxx.xxx\fR is a valid IP address. The default value of
+this property is to listen on IP address 127.0.0.1. Users can connect to a
+guest console over a network if the value is set to the IP address of the
+control domain.
+.LP
+Note -
+.sp
+.RS 2
+Enabling network access to a console has security implications. Any user can
+connect to a console and for this reason it is disabled by default.
+.RE
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBvntsd/timeout_minutes\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set timeout in minutes. \fBvntsd\fR will timeout (close) \fBtelnet\fR
+connection if there is no activity (input or output) on the console. The
+default value is 0, which disables timeout.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBvntsd/authorization\fR\fR
+.ad
+.sp .6
+.RS 4n
+Enable the authorization checking of users and roles for the domain console or
+consoles that are being accessed. The default value of this property is
+\fBfalse\fR to maintain backward compatibility. To enable authorization
+checking, use the \fBsvccfg\fR(8) command to set the property value to
+\fBtrue\fR. While this option is enabled, \fBvntsd\fR listens and accepts
+connections on \fBlocalhost\fR. If the \fBlisten_addr\fR property specifies an
+alternate IP address when this option is enabled, \fBvntsd\fR ignores the
+alternate IP address and continues to listen on \fBlocalhost\fR. Connections
+that are initiated from other hosts will also fail. Authorizations are
+available to access all consoles or console groups, or to access specific
+consoles or console groups. When the \fBvntsd\fR service is enabled, the
+following authorization is added to the authorization description database,
+\fBauth_attr\fR(5):
+.sp
+.in +2
+.nf
+solaris.vntsd.consoles:::Access All LDoms Guest Consoles::
+.fi
+.in -2
+.sp
+
+Add any fine-grained authorizations based on the name of the console group. For
+example, if the name of the console group to be authorized is \fBldg1\fR, add
+the following entry to the \fBauth_attr\fR(5) file:
+.sp
+.in +2
+.nf
+solaris.vntsd.console-ldg1:::Access Specific LDoms Guest Console::
+.fi
+.in -2
+.sp
+
+By default, the authorization to access all consoles is assigned to the root
+user or role. The Primary Administrator (superuser) can use the
+\fBusermod\fR(8) command to assign the required authorization or
+authorizations to other users or roles.
+.sp
+The following example gives user \fBuser1\fR the authorization to access all
+domain consoles:
+.sp
+.in +2
+.nf
+# \fBusermod -A "solaris.vntsd.consoles" user1\fR
+.fi
+.in -2
+.sp
+
+The following example gives user \fBuser1\fR the authorization to access the
+console group named \fBldg1\fR:
+.sp
+.in +2
+.nf
+# \fBusermod -A "solaris.vntsd.console-ldg1" user1\fR
+.fi
+.in -2
+.sp
+
+.RE
+
diff --git a/usr/src/man/man8/volcopy.8 b/usr/src/man/man8/volcopy.8
new file mode 100644
index 0000000000..746b84f7f2
--- /dev/null
+++ b/usr/src/man/man8/volcopy.8
@@ -0,0 +1,159 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 1997 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH VOLCOPY 8 "Mar 20, 1995"
+.SH NAME
+volcopy \- make an image copy of file system
+.SH SYNOPSIS
+.LP
+.nf
+\fBvolcopy\fR [\fB-F\fR \fIFSType\fR] [\fB-V\fR] [\fIgeneric_options\fR]
+ [\fB-o\fR \fIFSType-specific_options\fR] \fIoperands\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBvolcopy\fR makes a literal copy of the file system. This command may not be
+supported for all \fIFSTypes\fR.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-F\fR \fIFSType\fR\fR
+.ad
+.RS 30n
+Specify the \fIFSType\fR on which to operate. The \fIFSType\fR should either be
+specified here or be determinable from \fB/etc/vfstab\fR by matching the
+\fIoperands\fR with an entry in the table. Otherwise, the default file system
+type specified in \fB/etc/default/fs\fR will be used.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-V\fR\fR
+.ad
+.RS 30n
+Echo the complete command line, but do not execute the command. The command
+line is generated by using the options and arguments provided by the user and
+adding to them information derived from \fB/etc/vfstab\fR. This option should
+be used to verify and validate the command line.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIgeneric_options\fR\fR
+.ad
+.RS 30n
+Options that are commonly supported by most \fIFSType\fR-specific command
+modules. The following options are available:
+.sp
+.ne 2
+.na
+\fB\fB-a\fR\fR
+.ad
+.RS 6n
+Require the operator to respond "yes" or "no" instead of simply waiting ten
+seconds before the copy is made.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR\fR
+.ad
+.RS 6n
+(Default) Invoke the DEL if wrong verification sequence.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-o\fR \fIFSType-specific_options\fR\fR
+.ad
+.RS 30n
+Specify \fIFSType\fR-specific options in a comma separated (without spaces)
+list of suboptions and keyword-attribute pairs for interpretation by the
+\fIFSType\fR-specific module of the command.
+.RE
+
+.SH OPERANDS
+.sp
+.LP
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fB\fIoperands\fR\fR
+.ad
+.RS 12n
+generally include the device and volume names and are file system specific. A
+detailed description of the \fIoperands\fR can be found on the
+\fIFSType\fR-specific man pages of \fBvolcopy\fR.
+.RE
+
+.SH EXIT STATUS
+.sp
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 5n
+Successful file system copy
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB1\fR\fR
+.ad
+.RS 5n
+An error has occurred.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/vfstab\fR\fR
+.ad
+.RS 19n
+list of default parameters for each file system
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/default/fs\fR\fR
+.ad
+.RS 19n
+default local file system type. Default values can be set for the following
+flags in \fB/etc/default/fs\fR. For example: \fBLOCAL=ufs.\fR
+.sp
+.ne 2
+.na
+\fB\fBLOCAL:\fR\fR
+.ad
+.RS 10n
+The default partition for a command if no \fIFSType\fR is specified.
+.RE
+
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+\fBlabelit\fR(8), \fBvfstab\fR(5), \fBattributes\fR(7) Manual pages for the
+\fIFSType\fR-specific modules of \fBvolcopy\fR.
diff --git a/usr/src/man/man8/volcopy_ufs.8 b/usr/src/man/man8/volcopy_ufs.8
new file mode 100644
index 0000000000..2c16c3b50e
--- /dev/null
+++ b/usr/src/man/man8/volcopy_ufs.8
@@ -0,0 +1,127 @@
+'\" te
+.\" Copyright 1989 AT&T, Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH VOLCOPY_UFS 8 "Apr 15, 2003"
+.SH NAME
+volcopy_ufs \- make an image copy of a ufs file system
+.SH SYNOPSIS
+.LP
+.nf
+\fBvolcopy\fR [\fB-F\fR ufs] [\fIgeneric_options\fR] \fIfsname\fR \fIsrcdevice\fR \fIvolname1\fR \fIdestdevice\fR \fIvolname2\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBvolcopy\fR makes a literal copy of the \fBufs\fR file system using a
+blocksize matched to the device.
+.SH OPTIONS
+.sp
+.LP
+The following option is supported:
+.sp
+.ne 2
+.na
+\fB\fIgeneric_options\fR\fR
+.ad
+.RS 19n
+options supported by the generic \fBvolcopy\fR command. See
+\fBvolcopy\fR(8).
+.RE
+
+.SH OPERANDS
+.sp
+.LP
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fB\fIfsname\fR\fR
+.ad
+.RS 27n
+represents the mount point (for example, \fBroot\fR, \fBu1\fR, etc.) of the
+file system being copied.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIsrcdevice\fR or \fIdestdevice\fR\fR
+.ad
+.RS 27n
+the disk partition specified using the raw device (for example,
+\fB/dev/rdsk/cld0s8\fR, \fB/dev/rdsk/cld1s8\fR, etc.).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIsrcdevice\fR and \fIvolname1\fR\fR
+.ad
+.RS 27n
+the device and physical volume from which the copy of the file system is being
+extracted.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIdestdevice\fR and \fIvolname2\fR\fR
+.ad
+.RS 27n
+the target device and physical volume.
+.RE
+
+.sp
+.LP
+\fIfsname\fR and \fIvolname\fR are limited to six or fewer characters and
+recorded in the superblock. \fIvolname\fR may be `\fB\(mi\fR\&' to use the
+existing volume name.
+.SH EXIT STATUS
+.sp
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 12n
+Successful file system copy.
+.RE
+
+.sp
+.ne 2
+.na
+\fBnon-zero\fR
+.ad
+.RS 12n
+An error has occurred.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/var/adm/filesave.log\fR\fR
+.ad
+.RS 25n
+a record of file systems/volumes copied
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR cpio (1),
+.BR ufs (4FS),
+.BR attributes (7),
+.BR dd (8),
+.BR labelit (8),
+.BR volcopy (8)
+.SH NOTES
+.sp
+.LP
+\fBvolcopy\fR does not support copying to tape devices. Use \fBdd\fR(8) for
+copying to and from tape devices.
diff --git a/usr/src/man/man8/vscanadm.8 b/usr/src/man/man8/vscanadm.8
new file mode 100644
index 0000000000..d9f0fee10f
--- /dev/null
+++ b/usr/src/man/man8/vscanadm.8
@@ -0,0 +1,683 @@
+'\" te
+.\" Copyright (c) 2007 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH VSCANADM 8 "Jul 7, 2009"
+.SH NAME
+vscanadm \- vscan service configuration utility
+.SH SYNOPSIS
+.LP
+.nf
+\fBvscanadm\fR \fBset\fR \fB-p\fR \fIproperty\fR=\fIvalue\fR [\fB-p\fR \fIproperty\fR=\fIvalue\fR]...
+.fi
+
+.LP
+.nf
+\fBvscanadm\fR \fBget\fR [\fB-p\fR \fIproperty\fR]...
+.fi
+
+.LP
+.nf
+\fBvscanadm\fR \fBimport\fR \fB-p\fR \fIproperty\fR \fIfilename\fR
+.fi
+
+.LP
+.nf
+\fBvscanadm\fR \fBexport\fR \fB-p\fR \fIproperty\fR \fIfilename\fR
+.fi
+
+.LP
+.nf
+\fBvscanadm\fR \fBvalidate\fR \fB-p\fR \fIproperty\fR \fIfilename\fR
+.fi
+
+.LP
+.nf
+\fBvscanadm\fR \fBadd-engine\fR [\fB-p\fR \fIproperty\fR=\fIvalue\fR]... \fIengine_id\fR
+.fi
+
+.LP
+.nf
+\fBvscanadm\fR \fBremove-engine\fR \fIengine_id\fR
+.fi
+
+.LP
+.nf
+\fBvscanadm\fR \fBset-engine\fR \fB-p\fR\fIproperty\fR=\fIvalue\fR [\fB-p\fR \fIproperty\fR=\fIvalue\fR]... \fIengine_id\fR
+.fi
+
+.LP
+.nf
+\fBvscanadm\fR \fBget-engine\fR [\fB-p\fR \fIproperty\fR=\fIvalue\fR]... [\fIengine_id\fR]
+.fi
+
+.LP
+.nf
+\fBvscanadm\fR \fBshow\fR
+.fi
+
+.LP
+.nf
+\fBvscanadm\fR \fBstats\fR [\fB-z\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBvscanadm\fR command sets and displays properties of the \fBvscan\fR
+service, \fBvscand\fR(8), and provides scan statistics.
+.sp
+.LP
+File system exemption from virus scanning may be configured per file system
+using the appropriate file system administrative command, for example
+\fBzfs\fR(8).
+.sp
+.LP
+Scan engines are third-party applications on external hosts that perform the
+actual virus scanning operation on files. Multiple scan engines can be
+configured for use by the \fBvscan\fR service. A minimum of two scan engines is
+recommended. File scan requests are distributed among the configured scan
+engines to achieve load balancing. A scan engine is identified by its
+\fIengine_id\fR. The \fIengine_id\fR is a user defined string of up to 64
+bytes.
+.sp
+.LP
+The \fBvscan\fR service properties are divided into two categories: scan engine
+properties, which are specific to a scan engine definition, and general
+properties, which apply to the service and are not scan engine-specific.
+.SH SUBCOMMANDS
+.sp
+.LP
+\fBvscanadm\fR recognizes the following subcommands:
+.sp
+.ne 2
+.na
+\fB\fBvscanadm set\fR \fB-p\fR \fIproperty\fR=\fIvalue\fR [\fB-p\fR
+\fIproperty\fR=\fIvalue\fR]...\fR
+.ad
+.sp .6
+.RS 4n
+Sets the values of \fBvscan\fR service general properties.
+.sp
+.ne 2
+.na
+\fB\fB-p\fR \fIproperty\fR=\fIvalue\fR\fR
+.ad
+.RS 21n
+Specifies a property value
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBvscanadm get\fR [\fB-p\fR \fIproperty\fR]...\fR
+.ad
+.sp .6
+.RS 4n
+Displays the values of \fBvscan\fR service general properties. If no properties
+are specified, all \fBvscan\fR service general properties are displayed.
+.sp
+.ne 2
+.na
+\fB\fB-p\fR \fIproperty\fR\fR
+.ad
+.RS 15n
+Specifies a property value
+.RE
+
+.RE
+
+.sp
+.LP
+The following properties are available for the \fBvscanadm set\fR and
+\fBvscanadm get\fR subcommands:
+.sp
+.ne 2
+.na
+\fB\fBmax-size\fR\fR
+.ad
+.RS 19n
+The maximum size of files that should be virus scanned. Files exceeding
+\fImax-size\fR are not scanned. The \fImax-size-action\fR property determines
+whether access should be allowed or denied to files that exceed \fImax-size\fR.
+.sp
+The value of \fImax-size\fR is a string with a numeric (decimal) component and
+an optional letter component that specifies a unit size, in the format
+"N[.N][KMGTP][B]".
+.sp
+Following the numeric component, the optional unit can be specified as either
+one or two characters. For example, either "K" or "KB" can be used to specify
+kilobytes. Unit specifiers are not case-sensitive, and must follow the numeric
+value immediately with no intervening whitespace.
+.sp
+With either no unit specifier, or a unit specifier of only "B", the numeric
+value is assumed to be in bytes. The default value is 1GB.
+.sp
+Note that while the \fBvscan\fR service defines a maximum file size for
+scanning, scan engines also typically define their own maximum file size
+setting. It is recommended that \fImax-size\fR be set to a value less than or
+equal to the maximum file size for the scan engine(s).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmax-size-action\fR\fR
+.ad
+.RS 19n
+Specifies whether access will be allowed or denied to files larger than
+\fImax-size\fR. Files larger than \fImax-size\fR are not virus scanned. Valid
+values are:
+.sp
+.ne 2
+.na
+\fBallow\fR
+.ad
+.RS 9n
+allow access to files larger than \fImax-size\fR (no virus scan). This is the
+default value.
+.RE
+
+.sp
+.ne 2
+.na
+\fBdeny\fR
+.ad
+.RS 9n
+deny access to files larger than \fImax-size\fR (no virus scan)
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBvscanadm import\fR \fB-p\fR \fIproperty\fR \fIfilename\fR\fR
+.ad
+.sp .6
+.RS 4n
+Imports the property value from the specified file. The file must contain a
+single line specifying the value of a single property.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBvscanadm export\fR \fB-p\fR \fIproperty\fR \fIfilename\fR\fR
+.ad
+.sp .6
+.RS 4n
+Exports the property value to the specified file. The file must contain a
+single line specifying the value of a single property.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBvscanadm validate\fR \fB-p\fR \fIproperty\fR \fIfilename\fR\fR
+.ad
+.sp .6
+.RS 4n
+Validates the property value in the specified file. The file must contain a
+single line specifying the value of a single property.
+.RE
+
+.sp
+.LP
+The following properties are available for the \fBvscanadm import\fR,
+\fBvscanadm export\fR, and \fBvscanadm validate\fR subcommands:
+.sp
+.ne 2
+.na
+\fB\fBtypes\fR\fR
+.ad
+.RS 9n
+A comma-separated list of file type extension matching rules. This list defines
+which types of files are scanned and which should be excluded during virus
+scanning. Each rule comprises the rule indicator [+|-], followed by a file type
+\fIexpresssion\fR against which a file's type extension is compared. The file
+type \fIexpresssion\fR is case insensitive and may include the "*" and "?"
+wildcards. There should be no whitespace between the rule indicator and the
+file type \fIexpresssion\fR. If a comma is included within the file type
+expression, it must be escaped using a "\e" (backslash). A file type extension
+does not include its preceding dot.
+.sp
+The rule indicator is a single character and can be one of:
+.sp
+.in +2
+.nf
++ include file type in virus scanning
+- exclude file type from virus scanning
+.fi
+.in -2
+.sp
+
+When a file is being evaluated as a candidate for virus scanning, its file type
+will be compared with the rules defined in types. The first rule matched will
+be applied. If no match is found, the file will be virus scanned. The total
+length of the types string can not exceed 4096 bytes. The default content of
+the types list is "+*".
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBvscanadm add-engine\fR [\fB-p\fR \fIproperty\fR=\fIvalue\fR]...
+\fIengine_id\fR\fR
+.ad
+.sp .6
+.RS 4n
+Adds a new scan engine identified by \fIengine_id\fR. The default values are
+used for any scan engine properties that are not specified. The hostname
+defaults to the \fIengine_id\fR.
+.sp
+.ne 2
+.na
+\fB\fB-p\fR \fIproperty\fR=\fIvalue\fR\fR
+.ad
+.RS 21n
+Specifies a property value
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBvscanadm remove-engine\fR \fIengine_id\fR\fR
+.ad
+.sp .6
+.RS 4n
+Remove scan engine identified by \fIengine_id\fR, removing all of its
+configuration property values.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBvscanadm set-engine\fR \fB-p\fR\fIproperty\fR=\fIvalue\fR [\fB-p\fR
+\fIproperty\fR=\fIvalue\fR]... \fIengine_id\fR\fR
+.ad
+.sp .6
+.RS 4n
+Creates or updates the configuration property values for the scan engine
+identified by \fIengine_id\fR.
+.sp
+.ne 2
+.na
+\fB\fB-p\fR \fIproperty\fR=\fIvalue\fR\fR
+.ad
+.RS 21n
+Specifies a property value
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBvscanadm get-engine\fR [\fB-p\fR \fIproperty\fR=\fIvalue\fR]...
+[\fIengine_id\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Displays the values of the specified scan engine properties for the scan engine
+identified by \fIengine_id\fR. If no \fIengine_id\fR is specified, this
+subcommand displays the specified scan engine property values for all
+configured scan engines. If no properties are specified, this subcommand
+displays all \fBvscan\fR service scan engine properties.
+.sp
+.ne 2
+.na
+\fB\fB-p\fR \fIproperty\fR=\fIvalue\fR\fR
+.ad
+.RS 21n
+Specifies a property value
+.RE
+
+.RE
+
+.sp
+.LP
+The following properties are available for the \fBvscanadm add-engine\fR,
+\fBvscanadm remove-engine\fR, \fBvscanadm set-engine\fR, and \fBvscanadm
+get-engine\fR subcommands:
+.sp
+.ne 2
+.na
+\fB\fBenable\fR\fR
+.ad
+.RS 18n
+Specifies whether the scan engine is enabled or disabled. Valid values are "on"
+(enabled) and "off" (disabled). The default is "on" (enabled). A scan engine
+cannot be enabled if its host property is invalid.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBhost\fR\fR
+.ad
+.RS 18n
+Hostname or \fBIPv4\fR format \fBIP\fR address of the scan engine.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBport\fR\fR
+.ad
+.RS 18n
+\fBICAP\fR port number of the scan engine. The numeric value ranges from 0 to
+65535. The default \fBICAP\fR port is 1344.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmax-connection\fR\fR
+.ad
+.RS 18n
+The maximum number of concurrent connections that may be established with a
+scan engine. The numeric value ranges from 1 to 512. This property defaults to
+8.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBvscanadm show\fR\fR
+.ad
+.RS 23n
+Displays the values of all \fBvscan\fR service general properties and scan
+engine properties.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBvscanadm stats\fR [\fB-z\fR]\fR
+.ad
+.RS 23n
+Displays or resets the following \fBvscan\fR service statistics:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+number of files scanned
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+number of infected files
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+number of failed scan requests
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+scan errors (including a per scan engine error count)
+.RE
+.sp
+.ne 2
+.na
+\fB\fB-z\fR\fR
+.ad
+.RS 6n
+Resets \fBvscan\fR service statistics counters to zero
+.RE
+
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRSetting the Maximum Size Limit
+.sp
+.LP
+To set the maximum size limit for files to be virus scanned to 128 megabytes,
+enter
+
+.sp
+.in +2
+.nf
+# vscanadm set -p max-size=128M
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRAllowing Access to Files
+.sp
+.LP
+To allow access to files exceeding the maximum file size, enter
+
+.sp
+.in +2
+.nf
+# vscanadm set -p max-size-action=allow
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRSetting File Types
+.sp
+.LP
+To set the types so that only files of type "odt", "exe" and "jpg" are virus
+scanned, enter
+
+.sp
+.in +2
+.nf
+# vscanadm set -p types=+odt,+exe,+jpg,-*
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+To set the types so that all file types except "doc" are virus scanned, enter
+
+.sp
+.in +2
+.nf
+# vscanadm set -p types=-doc,+*
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 4 \fRDisplaying the File Types List
+.sp
+.LP
+To display the file types list, enter
+
+.sp
+.in +2
+.nf
+# vscanadm get -p types
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 5 \fRAdding the Scan Engine
+.sp
+.LP
+To add the scan engine "\fBmy_eng\fR" using the default values, enter
+
+.sp
+.in +2
+.nf
+# vscanadm add-engine my_eng
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 6 \fRDisabling the Scan Engine
+.sp
+.LP
+To disable the scan engine "\fBmy_eng\fR", enter
+
+.sp
+.in +2
+.nf
+# vscanadm set-engine -p enable=off my_eng
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 7 \fRDisplaying Scan Engine Properties
+.sp
+.LP
+To display the properties of the scan engine "\fBmy_eng\fR", enter
+
+.sp
+.in +2
+.nf
+# vscanadm get-engine my_eng
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 8 \fRRemoving Scan Engine
+.sp
+.LP
+To remove the scan engine "\fBmy_eng\fR", enter
+
+.sp
+.in +2
+.nf
+# vscanadm remove-engine my_eng
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 9 \fRDisplaying Vscan Service General and Scan Engine Properties
+.sp
+.LP
+To Display all vscan service general properties and scan engine properties,
+enter
+
+.sp
+.in +2
+.nf
+# vscanadm show
+.fi
+.in -2
+.sp
+
+.SH EXIT STATUS
+.sp
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 12n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnon-zero\fR\fR
+.ad
+.RS 12n
+An error occurred.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Uncommitted
+_
+Utility output format Not-An-Interface
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7),
+.BR smf (7),
+.BR vscand (8),
+.BR zfs (8)
+.SH NOTES
+.sp
+.LP
+All users are permitted to use \fBvscanadm\fR to view \fBvscan\fR properties
+and statistics. To set property values or reset statistics, the following
+authorizations are required:
+.sp
+.ne 2
+.na
+\fB\fBsolaris.smf.value.vscan\fR\fR
+.ad
+.sp .6
+.RS 4n
+change the property values or reset statistics
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsolaris.manage.vscan\fR\fR
+.ad
+.sp .6
+.RS 4n
+refresh the service to apply property value changes
+.RE
+
+.sp
+.LP
+To add or remove properties (\fBadd-engine\fR, \fBremove-engine\fR) the
+following authorizations are required:
+.sp
+.ne 2
+.na
+\fB\fBsolaris.smf.modify.application\fR\fR
+.ad
+.sp .6
+.RS 4n
+add or remove property group
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsolaris.manage.vscan\fR\fR
+.ad
+.sp .6
+.RS 4n
+refresh the service to apply property value changes
+.RE
+
+.sp
+.LP
+All of these authorizations are included in the "\fBVSCAN\fR Management"
+profile.
diff --git a/usr/src/man/man8/vscand.8 b/usr/src/man/man8/vscand.8
new file mode 100644
index 0000000000..808a7c384e
--- /dev/null
+++ b/usr/src/man/man8/vscand.8
@@ -0,0 +1,130 @@
+'\" te
+.\" Copyright (c) 2007 Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH VSCAND 8 "Nov 6, 2007"
+.SH NAME
+vscand \- vscan service daemon
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/vscan/vscand\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBvscand\fR is the daemon that handles virus scan requests from file systems
+on file open and close operations. A file system may support enabling and
+disabling of virus scanning on a per dataset basis, using that file system's
+administrative command, for example \fBzfs\fR(8).
+.sp
+.LP
+If the file state or scan policy (see \fBvscanadm\fR(8) requires that a file
+be scanned, \fBvscand\fR communicates with external third-party virus scanners
+(scan engines) using the Internet Content Adaptation Protocol (\fBICAP\fR,
+\fBRFC\fR 3507) to have the file scanned.
+.sp
+.LP
+A file is submitted to a scan engine if it has been modified since it was last
+scanned, or if it has not been scanned with the latest scan engine
+configuration (Virus definitions). The file's modified attribute and
+\fBscanstamp\fR attribute are used to store this information. Once the file is
+scanned, the modified attribute is cleared and the \fBscanstamp\fR attribute is
+updated.
+.sp
+.LP
+If the file is found to contain a virus, the virus is logged in
+\fBsyslogd\fR(8), an audit record is written, and the file is quarantined (by
+setting its quarantine attribute). Once a file is quarantined, attempts to
+read, execute or rename the file will be denied by the file system. The
+\fBsyslogd\fR(8) entry and the audit record specify the name of the infected
+file and the violations detected in the file. Each violation is specified as
+"ID - threat description", where \fBID\fR and threat description are defined in
+the X-Infection-Found-Header in \fBICAP\fR \fBRFC\fR 3507; Extensions.
+.sp
+.LP
+By default, \fBvscand\fR connects to scan engines on port 1344. The port and
+other service configuration parameters can be configured using
+\fBvscanadm\fR(8).
+.sp
+.LP
+The \fBvscan\fR service is disabled by default, and can be enabled using
+\fBsvcadm\fR(8).
+.SH EXIT STATUS
+.sp
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 12n
+Daemon started successfully.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnon-zero\fR\fR
+.ad
+.RS 12n
+Daemon failed to start.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Uncommitted
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR ps (1),
+.BR svcs (1),
+.BR attributes (7),
+.BR smf (7),
+.BR logadm (8),
+.BR svcadm (8),
+.BR syslogd (8),
+.BR vscanadm (8),
+.BR zfs (8)
+.SH NOTES
+.sp
+.LP
+If a file is accessed using a protocol which does not invoke the file system
+open and close operations, for example \fBNFSv3\fR, virus scanning is not
+initiated on the file.
+.sp
+.LP
+File content is transferred to the scan engines as \fBcleartext\fR data.
+.sp
+.LP
+Administrative actions for the \fBvscan\fR service, such as enabling,
+disabling, or requesting a restart, can be performed using \fBsvcadm\fR(8).
+The \fBvscan\fR service status can be queried using the \fBsvcs\fR(1) command.
+.sp
+.LP
+The \fBvscan\fR service is managed by the service management facility,
+\fBsmf\fR(7), under the service identifier:
+.sp
+.in +2
+.nf
+svc:/system/filesystem/vscan
+.fi
+.in -2
+.sp
+
diff --git a/usr/src/man/man8/wall.8 b/usr/src/man/man8/wall.8
new file mode 100644
index 0000000000..1e49ea66ff
--- /dev/null
+++ b/usr/src/man/man8/wall.8
@@ -0,0 +1,125 @@
+'\" te
+.\" Copyright (c) 2012 Joyent, Inc. All Rights Reserved.
+.\" Copyright (c) 2000 Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH WALL 8 "Jul 13, 1994"
+.SH NAME
+wall \- write to all users
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/wall\fR [\fB-a\fR] [\fB-g\fR \fIgrpname\fR] [\fB-z\fR \fIzonename\fR] [\fB-Z\fR] [\fIfilename\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBwall\fR reads its standard input until an end-of-file. It then sends this
+message to all currently logged-in users preceded by:
+.sp
+.in +2
+.nf
+Broadcast Message from .\|.\|.
+.fi
+.in -2
+
+.sp
+.LP
+If \fIfilename\fR is given, then the message is read in from that file.
+Normally, pseudo-terminals that do not correspond to rlogin sessions are
+ignored. Thus, when using a window system, the message appears only on the
+console window. However, \fB-a\fR will send the message even to such
+pseudo-terminals. Normally, \fBwall\fR sends messages to the current zone
+only, from the global zone \fB-Z\fR will send messages to all nonglobal zones,
+and \fB-z\fR will send messages to a specified nonglobal zone
+.sp
+.LP
+It is used to warn all users, typically prior to shutting down the system.
+.sp
+.LP
+The sender must be superuser to override any protections the users may have
+invoked See \fBmesg\fR(1).
+.sp
+.LP
+\fBwall\fR runs \fBsetgid()\fR to the group \fBID\fR \fBtty\fR, in order to
+have write permissions on other user's terminals. See \fBsetuid\fR(2).
+.sp
+.LP
+\fBwall\fR will detect non-printable characters before sending them to the
+user's terminal. Control characters will appear as a "\fB ^ \fR" followed by
+the appropriate \fBASCII\fR character; characters with the high-order bit set
+will appear in "meta" notation. For example, `\fB\e003\fR\&' is displayed as
+`\fB^C\fR' and `\fB\e372\fR\&' as `\fBM\(miz\fR'.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-a\fR\fR
+.ad
+.RS 14n
+Broadcast message to the console and pseudo-terminals.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-\fR\fBg\fR \fIgrpname\fR\fR
+.ad
+.RS 14n
+Broadcast to the users in a specified group only, per the group database (see
+\fBgroup\fR(5)).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-\fR\fBz\fR \fIzonename\fR\fR
+.ad
+.RS 14n
+Broadcast to the users in a specified zone only
+.RE
+
+
+.sp
+.ne 2
+.na
+\fB\fB-Z\fR\fR
+.ad
+.RS 14n
+Broadcast message to the console and pseudo-terminals of all zones.
+.RE
+
+.SH ENVIRONMENT VARIABLES
+.sp
+.LP
+If the \fBLC_*\fR variables (\fBLC_CTYPE\fR, \fBLC_TIME\fR, \fBLC_COLLATE\fR,
+\fBLC_NUMERIC\fR, and \fBLC_MONETARY\fR) are not set in the environment, the
+operational behavior of \fBwall\fR for each corresponding locale category is
+determined by the value of the \fBLANG\fR environment variable. See
+\fBenviron\fR(7). If \fBLC_ALL\fR is set, its contents are used to override
+both the \fBLANG\fR and the other \fBLC_*\fR variables. If none of the above
+variables are set in the environment, the "C" (U.S. style) locale determines
+how \fBwall\fR behaves.
+.SH FILES
+.sp
+.LP
+\fB/dev/tty*\fR
+.SH SEE ALSO
+.sp
+.LP
+.BR mesg (1),
+.BR write (1),
+.BR setuid (2),
+.BR attributes (7),
+.BR environ (7)
+.SH NOTES
+.sp
+.LP
+\fBwall\fR displays ``Cannot send to \|.\|.\|.'' when the open on a user's
+\fBtty\fR file fails.
diff --git a/usr/src/man/man8/whodo.8 b/usr/src/man/man8/whodo.8
new file mode 100644
index 0000000000..a3cf660c7e
--- /dev/null
+++ b/usr/src/man/man8/whodo.8
@@ -0,0 +1,211 @@
+'\" te
+.\" Copyright (c) 2013 Gary Mills
+.\" Copyright (c) 2001 Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH WHODO 8 "Dec 15, 2013"
+.SH NAME
+whodo \- who is doing what
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/whodo\fR [\fB-h\fR] [\fB-l\fR] [\fIuser\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBwhodo\fR command produces formatted and dated output from information in
+the \fB/var/adm/utmpx\fR and \fB/proc/pid\fR files.
+.sp
+.LP
+The display is headed by the date, time, and machine name. For each user logged
+in, device name, user-ID and login time is shown, followed by a list of active
+processes associated with the user-ID. The list includes the device name,
+process-ID, CPU minutes and seconds used, and process name.
+.sp
+.LP
+If \fIuser\fR is specified, output is restricted to all sessions pertaining to
+that user.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-h\fR\fR
+.ad
+.RS 6n
+Suppress the heading.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR\fR
+.ad
+.RS 6n
+Produce a long form of output. The fields displayed are: the user's login name,
+the name of the tty the user is on, the time of day the user logged in
+(in ISO time format, weekday name and \fIhours\fR\fB:\fR\fIminutes\fR,
+or ISO date format),
+the idle time \(em that is, the time since the user last typed anything
+(in \fIhours\fR\fB:\fR\fIminutes\fR\fB:\fR\fIseconds\fR),
+the CPU time used by all processes and their children on that terminal
+(in \fIhours\fR\fB:\fR\fIminutes\fR\fB:\fR\fIseconds\fR),
+the CPU time used by the currently active processes
+(in \fIhours\fR\fB:\fR\fIminutes\fR\fB:\fR\fIseconds\fR),
+and the name and arguments of the current process.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRUsing the whodo Command
+.sp
+.LP
+The command:
+
+.sp
+.in +2
+.nf
+example% whodo
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+produces a display like this:
+
+.sp
+.in +2
+.nf
+Tue Mar 12 15:48:03 1985
+bailey
+tty09 mcn 8:51
+ tty09 28158 0:29 sh
+
+tty52 bdr 15:23
+ tty52 21688 0:05 sh
+ tty52 22788 0:01 whodo
+ tty52 22017 0:03 vi
+ tty52 22549 0:01 sh
+
+xt162 lee 10:20
+ tty08 6748 0:01 layers
+ xt162 6751 0:01 sh
+ xt163 6761 0:05 sh
+ tty08 6536 0:05 sh
+.fi
+.in -2
+.sp
+
+.SH ENVIRONMENT VARIABLES
+.sp
+.LP
+If any of the \fBLC_*\fR variables ( \fB\fR\fBLC_CTYPE\fR\fB,\fR
+\fBLC_MESSAGES\fR\fB,\fR \fBLC_TIME\fR\fB,\fR \fBLC_COLLATE\fR\fB,\fR
+\fBLC_NUMERIC\fR\fB,\fR and \fBLC_MONETARY\fR ) (see \fBenviron\fR(7)) are not
+set in the environment, the operational behavior of \fBtar\fR(1) for each
+corresponding locale category is determined by the value of the \fBLANG\fR
+environment variable. If \fBLC_ALL\fR is set, its contents are used to override
+both the \fBLANG\fR and the other \fBLC_*\fR variables. If none of the above
+variables is set in the environment, the "C" (U.S. style) locale determines how
+\fBwhodo\fR behaves.
+.sp
+.ne 2
+.na
+\fB\fBLC_CTYPE\fR\fR
+.ad
+.RS 15n
+Determines how \fBwhodo\fR handles characters. When \fBLC_CTYPE\fR is set to a
+valid value, \fBwhodo\fR can display and handle text and filenames containing
+valid characters for that locale. The \fBwhodo\fR command can display and
+handle Extended Unix code (EUC) characters where any individual character can
+be 1, 2, or 3 bytes wide. \fBwhodo\fR can also handle EUC characters of 1, 2,
+or more column widths. In the "C" locale, only characters from ISO 8859-1 are
+valid.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBLC_MESSAGES\fR\fR
+.ad
+.RS 15n
+Determines how diagnostic and informative messages are presented. This includes
+the language and style of the messages, and the correct form of affirmative and
+negative responses. In the "C" locale, the messages are presented in the
+default form found in the program itself (in most cases, U.S. English).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBLC_TIME\fR\fR
+.ad
+.RS 15n
+Determines how \fBwhodo\fR handles date and time formats. In the "C" locale,
+date and time handling follow the U.S. rules.
+.RE
+
+.SH EXIT STATUS
+.sp
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 12n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fBnon-zero\fR
+.ad
+.RS 12n
+An error occurred.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/etc/passwd\fR\fR
+.ad
+.RS 18n
+System password file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/adm/utmpx\fR\fR
+.ad
+.RS 18n
+User access and administration information
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/proc/pid\fR\fR
+.ad
+.RS 18n
+Contains PID
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR ps (1),
+.BR who (1),
+.BR attributes (7),
+.BR environ (7)
diff --git a/usr/src/man/man8/wificonfig.8 b/usr/src/man/man8/wificonfig.8
new file mode 100644
index 0000000000..ed1447138c
--- /dev/null
+++ b/usr/src/man/man8/wificonfig.8
@@ -0,0 +1,1058 @@
+'\" te
+.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH WIFICONFIG 8 "December 28, 2020"
+.SH NAME
+wificonfig \- WLAN configuration
+.SH SYNOPSIS
+.nf
+\fBwificonfig\fR [\fB-R\fR \fIroot_path\fR] [\fB-i\fR \fIinterface\fR] autoconf
+ [\fIwait\fR={\fIn\fR|\fIforever\fR}]
+.fi
+
+.LP
+.nf
+\fBwificonfig\fR [\fB-R\fR \fIroot_path\fR] [\fB-i\fR \fIinterface\fR] connect profile
+ [\fIwait\fR={\fIn\fR|\fIforever\fR}]
+.fi
+
+.LP
+.nf
+\fBwificonfig\fR [\fB-R\fR \fIroot_path\fR] [\fB-i\fR \fIinterface\fR] connect essid
+ [\fIwait\fR={\fIn\fR|\fIforever\fR}]
+.fi
+
+.LP
+.nf
+\fBwificonfig\fR [\fB-R\fR \fIroot_path\fR] [\fB-i\fR \fIinterface\fR] disconnect
+.fi
+
+.LP
+.nf
+\fBwificonfig\fR [\fB-R\fR \fIroot_path\fR] [\fB-i\fR \fIinterface\fR] getparam
+ [\fIparameter\fR []...]
+.fi
+
+.LP
+.nf
+\fBwificonfig\fR [\fB-R\fR \fIroot_path\fR] [\fB-i\fR \fIinterface\fR] setparam
+ [\fIparameter\fR=\fIvalue\fR []...]
+.fi
+
+.LP
+.nf
+\fBwificonfig\fR [\fB-R\fR \fIroot_path\fR] [\fB-i\fR \fIinterface\fR] restoredef
+.fi
+
+.LP
+.nf
+\fBwificonfig\fR [\fB-R\fR \fIroot_path\fR] [\fB-i\fR \fIinterface\fR] scan
+.fi
+
+.LP
+.nf
+\fBwificonfig\fR [\fB-R\fR \fIroot_path\fR] [\fB-i\fR \fIinterface\fR] showstatus
+.fi
+
+.LP
+.nf
+\fBwificonfig\fR [\fB-R\fR \fIroot_path\fR] [\fB-i\fR \fIinterface\fR] setwepkey 1|2|3|4
+.fi
+
+.LP
+.nf
+\fBwificonfig\fR [\fB-R\fR \fIroot_path\fR] createprofile profile
+ [\fIparameter\fR=\fIvalue\fR []...]
+.fi
+
+.LP
+.nf
+\fBwificonfig\fR [\fB-R\fR \fIroot_path\fR] deleteprofile \fIprofile1\fR
+ [\fIprofile2\fR []...]
+.fi
+
+.LP
+.nf
+\fBwificonfig\fR [\fB-R\fR \fIroot_path\fR] showprofile [\fIprofile\fR]
+.fi
+
+.LP
+.nf
+\fBwificonfig\fR [\fB-R\fR \fIroot_path\fR] setprofilewepkey \fIprofile\fR 1|2|3|4
+.fi
+
+.LP
+.nf
+\fBwificonfig\fR [\fB-R\fR \fIroot_path\fR] getprofileparam \fIprofile\fR
+ [\fIparameter\fR []...]
+.fi
+
+.LP
+.nf
+\fBwificonfig\fR [\fB-R\fR \fIroot_path\fR] setprofileparam
+ [\fIparameter\fR=\fIvalue\fR []...]
+.fi
+
+.LP
+.nf
+\fBwificonfig\fR [\fB-R\fR \fIroot_path\fR] history
+.fi
+
+.LP
+.nf
+\fBwificonfig\fR [\fB-R\fR \fIroot_path\fR] listprefer
+.fi
+
+.LP
+.nf
+\fBwificonfig\fR [\fB-R\fR \fIroot_path\fR] removeprefer \fIprofile\fR
+.fi
+
+.LP
+.nf
+\fBwificonfig\fR [\fB-R\fR \fIroot_path\fR] setprefer \fIprofile\fR [\fIn\fR]
+.fi
+
+.SH DESCRIPTION
+\fBwificonfig\fR defines a set of subcommands and parameters to configure
+\fBWiFi\fR interfaces in the system. A driver may support all parameters or a
+subset of these parameters.
+.sp
+.LP
+\fBwificonfig\fR uses \fBrbac\fR(7) to control user access to the interface.
+Only users with the "solaris.network.wifi.config" authorization can manage a
+\fBWiFi\fR interface, while only users with
+"solaris.network.wifi.wep"authorizations can configure the \fBWEP\fR (Wired
+Equivalent Privacy) key. Other users can only read parameters from the
+interface. By default, the "solaris.network.wifi.config" and
+"solaris.network.wifi.wep" authorizations are not granted to any user apart
+from root.
+.sp
+.LP
+\fBWificonfig\fR comes in two classes of forms. The first class, shown as the
+first set of synopsis combined with the optional interface name, is the
+subcommands used to a manipulate a particular \fBWiFi\fR network interface. The
+second class, shown as the second set of synopsis, is used to create and
+operate on \fBWiFi\fR Configuration Profiles. A Configuration Profile allows
+the user to pre-specify a set of parameters which can later be applied to a
+\fBWiFi\fR network interface using the \fBconnect\fR or \fBautoconf\fR
+subcommands.
+.sp
+.LP
+In the interface subcommands, if the interface is not specified (that is, the
+\fB-i\fR option is missing), \fBwificonfig\fR selects a random interface from
+the known \fBWiFi\fR interfaces on the system. If there are multiple \fBWiFi\fR
+network interfaces on the system, then the selection will be the same over time
+as long as the number of and names of the \fBWiFi\fR interfaces does not
+change.
+.sp
+.LP
+A Configuration Profile can be created for a \fBWLAN\fR by using the
+\fBcreateprofile\fR subcommand (see the SUBCOMMANDS section). The actual
+\fBWLAN\fR may be present or not.
+.sp
+.LP
+\fBwificonfig\fR also maintains a list of Configuration Profiles called the
+Preference List. This list makes automatic configuration possible. When the
+\fBautoconf\fR subcommand is used, \fBwificonfig\fR tries to connect to each
+pre-configured \fBWLAN\fR according to the order of the Preference List. If the
+Preference List is empty or none of the \fBWLAN\fRs in the Preference List can
+be found, \fBwificonfig\fR uses its built-in heuristics to automatically
+configure the interface. (See the \fBautoconf\fR subcommand for the
+heuristics). A few subcommands (\fBlistprefer\fR, \fBsetprefer\fR,
+\fBremoveprefer\fR) are defined to manipulate the Preference List.
+.SH OPTIONS
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-i\fR \fIinterface\fR\fR
+.ad
+.RS 16n
+Specifies a wireless network interface to do the configuration.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-R\fR \fIroot_path\fR\fR
+.ad
+.RS 16n
+Defines the full path name of a directory to use as the \fIroot_path\fR. This
+affects the location of the private files where \fBwificonfig\fR stores the
+Configuration Profiles and \fBWEP\fR keys.
+.RE
+
+.SS "OPERANDS"
+The following operand is supported:
+.sp
+.ne 2
+.na
+\fBprofile\fR
+.ad
+.RS 11n
+The name of a \fBWiFi\fR profile. It can be a string between 1 and 32
+characters. However, "all", "{preference}", "{history}", "{active_profile}",
+and any strings contained in brackets, such as "[foo]", are not allowed as a
+profile name.
+.RE
+
+.SS "SUBCOMMANDS"
+The following subcommands are supported:
+.sp
+.ne 2
+.na
+\fB\fBautoconf\fR [wait={\fIn\fR|\fIforever\fR}]\fR
+.ad
+.sp .6
+.RS 4n
+Configures the interface automatically. The interface is configured according
+to the previously saved Preference List found in \fB/etc/inet/wifi\fR.
+\fBwificonfig\fR first gets a list of available \fBWLAN\fRs by scanning the
+radio. It then compares the list of available \fBWLAN\fRs with the Preference
+List. If the Preference List is empty, or if none of the \fBWLAN\fRs in the
+Preference List can be found, \fBwificonfig\fR chooses a \fBWLAN\fR to connect
+to using the following priorities: 1) the \fBWLAN\fRs without encryption, 2)
+the \fBWLAN\fRs with stronger signal strength, and 3) the \fBWLAN\fRs with
+higher transmit rates.
+.sp
+If the \fBWLAN\fRs in the Preference list are available, the user can specify
+the number of seconds to wait before \fBautoconf\fR returns using the wait
+option. By default (without the wait option), \fBautoconf\fR returns within 10
+seconds. If "\fIforever\fR" or -1 follows the wait option, \fBwificonfig\fR
+waits until the \fBNIC\fR is successfully connected to the \fBWLAN\fR specified
+by the profile in the Preference list.
+.sp
+The "solaris.network.wifi.config" authorization is required for this
+subcommand.
+.sp
+The \fBWiFi\fR device driver can not guarantee to retain the state for the
+connection when it is not held open. For this reason, it is strongly
+recommended that the \fBplumb\fR subcommand for \fBifconfig\fR(8) is done
+before the \fBwificonfig autoconf\fR subcommand is given.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBconnect\fR \fIprofile\fR[wait={\fIn\fR|\fIforever\fR}]\fR
+.ad
+.br
+.na
+\fB\fBconnect\fR \fIessid\fR[wait={\fIn\fR|\fIforever\fR}]\fR
+.ad
+.sp .6
+.RS 4n
+Connects to a wireless network according to a pre-configured "profile". If the
+specified Configuration Profile exists in /etc/inet/wifi, the \fBconnect\fR
+subcommand uses that Configuration Profile to configure the interface. That
+profile subsequently becomes the current active profile of the interface after
+the \fBconnect\fR subcommand succeeds. If no existing Configuration Profile
+matches the specified name, the behavior of the \fBconnect\fR subcommand is
+equivalent to the \fBrestoredef\fR subcommand, except that the "essid"
+parameter is set as "profile".
+.sp
+If the \fBWLAN\fRs in the Preference list are available, the user can specify
+the number of seconds to wait before \fBconnect\fR returns using the wait
+option. By default (without the wait option), \fBconnect\fR tries for 10
+seconds. If "\fIforever\fR" or -1 follows the wait option, \fBwificonfig\fR
+tries until the \fBNIC\fR is successfully connected to the profile or essid
+that was specified.
+.sp
+The \fBconnect\fR subcommand prints one of the following lines depending on
+whether or not a Configuration Profile was found for the specified name:
+.sp
+.in +2
+.nf
+Connecting to profile <name>
+Connecting to essid <name>
+.fi
+.in -2
+.sp
+
+The "solaris.network.wifi.config" authorization is required for this
+subcommand.
+.sp
+The \fBWiFi\fR device driver can not guarantee to retain the state for the
+connection when it is not held open. For this reason, it is strongly
+recommended that the \fBplumb\fR subcommand for \fBifconfig\fR(8) is done
+before the \fBwificonfig autoconf\fR subcommand is given.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdisconnect\fR\fR
+.ad
+.sp .6
+.RS 4n
+Disconnects the interface from the currently associated wireless network. The
+interface associates with none of the wireless networks.
+.sp
+The "solaris.network.wifi.config" authorization is required for this
+subcommand.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBgetparam\fR [parameter [...]]\fR
+.ad
+.br
+.na
+\fB\fBsetparam\fR [parameter=value [...]]\fR
+.ad
+.sp .6
+.RS 4n
+Gets or sets parameters in the network interface. This does not affect any
+profile. The \fBsetprofileparam\fR subcommand can be used to set and change
+parameters in a profile that has already been created.
+.sp
+The \fBsetparam\fR subcommand without any parameters displays the set of
+parameters supported by the network interface, including whether they are
+read/write or read only. The \fBgetparam\fR subcommand without any parameters
+displays all the parameters and their values.
+.sp
+The \fBsetparam wepkey1|wepkey2|wepkey3|wepkey4\fR subcommand requires the
+"solaris.network.wifi.wep" authorization. For all other parameters, the
+\fBsetparam\fR subcommand requires the
+"solaris.network.wifi.config"authorization.
+.sp
+For example,
+.sp
+.in +2
+.nf
+$ wificonfig setparam <parameter1=value1> [parameter2=value2 [...]]
+$ wificonfig getparam <parameter1> [parameter2 [...]]
+.fi
+.in -2
+.sp
+
+\fBwificonfig\fR currently supports the following parameters (the values are
+case insensitive).
+.sp
+.ne 2
+.na
+\fB\fIbssid\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBMAC\fR address of the associated Access Point. The valid value is a hex
+value of 6 bytes. The \fIbssid\fR can also be the \fBIBSSID\fR in an ad-hoc
+configuration. If the network interface is not connected to any \fBWLAN\fR,
+then the string "none" is shown instead of a 6 byte \fBMAC\fR address.
+Otherwise, the network interface is connected to a \fBWLAN\fR. The default
+value is "none". This parameter is read-only.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIessid\fR\fR
+.ad
+.sp .6
+.RS 4n
+Network name. The valid value is a string of up to 32 chars. If \fIessid\fR is
+an empty string, the driver automatically scans and joins the \fBWLAN\fR using
+the built-in heuristics. The default value is an empty string.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIbsstype\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies whether the Infrastructure Mode or Ad-Hoc Mode is used. The valid
+values are "ap", "bss", or "infrastructure" to join a \fBWLAN\fR through an
+Access Point, that is, to use infrastructure mode. The valid values are "ibss"
+or "ad-hoc" to join a peer-to-peer WLAN (also named "ad-hoc"). The valid value
+of "auto" automatically switches between the two types. The default value is
+"infrastructure'".
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIcreateibss\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies whether to create an ad-hoc network (also called an \fIIBSS\fR if the
+\fBconnect\fR does not result in finding the desired network. This enables the
+user to start an ad-hoc network so that other hosts can join. The valid values
+are YES to start a new ad-hoc \fBWLAN\fR (instead of joining one) and NO to not
+start an ad-hoc \fBWLAN\fR. The default value is NO. The \fBNIC\fR always tries
+to join a \fBWLAN\fR first. If this is successful, the setting of
+\fIcreateibss\fR is ignored.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIchannel\fR\fR
+.ad
+.sp .6
+.RS 4n
+An integer indicating the operating frequency. This channel number varies by
+regulatory domain. When the channel number is obtained by the \fBgetparam\fR
+subcommand, the value indicates the actual channel the card uses to connect to
+the network. The channel number is set by the \fBsetparam\fR subcommand, and
+the value is only applicable when the card is in ad-hoc mode. It indicates the
+operating channel of the \fIIBSS\fR. The default value is the channel number on
+the card.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIrates\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the transmission rates. The valid values (in Mbit/s) are 1, 2, 5.5,
+6, 9, 11, 12, 18, 22, 24, 33, 36, 48, and 54. A \fBNIC\fR may support multiple
+transmission rates depending on its capability. This is the only parameter that
+accepts multiple values. When multiple values are supplied to set this
+parameter, each value must be separated by a comma (,). See the \fBEXAMPLES\fR
+section for details. The default values are the data rates supported by the
+chip.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIpowermode\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the power management mode. The valid values are "off" to disable
+power management, "mps" for maximum power saving, and "fast" for the best
+combination of speed and power saving. The default value is "off".
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIauthmode\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the authorization type. The valid values are "opensystem" for an open
+system, where anyone can be authenticated and "shared_key" for a Shared Key
+authentication mode. The default value is "opensystem".
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIencryption\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the encryption algorithm to be used. The valid values are "none" for
+no encryption algorithm and "wep" to turn on \fBWEP\fR encryption. The default
+value is "none".
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIwepkey1\fR|\fIwepkey2\fR|\fIwepkey3\fR|\fIwepkey4\fR\fR
+.ad
+.sp .6
+.RS 4n
+A maximum of 4 \fBWEP\fR keys (indexed 1 through 4) can be set in an \fBNIC\fR.
+They are write-only parameters which can be set by the \fBsetparam\fR
+subcommand, but cannot be read back by the \fBgetparam\fR subcommand. \fBWEP\fR
+keys can either be set by the \fBsetwepkey\fR or the \fBsetparam\fR subcommand.
+\fBsetparam\fR uses plain text but it's scriptable. See the \fBsetwepkey\fR
+subcommand for more information about how a \fBWEP\fR key is encoded. Setting
+\fBWEP\fR keys requires "solaris.network.wifi.wep"authorization.
+.sp
+When these subcommands are used to set a \fBWEP\fR key, any user on the system
+can read the key from the \fBps\fR(1) output. Thus, the \fBsetwepkey\fR
+subcommand is recommended for setting the \fBWEP\fR keys since it does not
+allow \fBps\fR(1) to read the keys.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIwepkeyindex\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the encryption keys. The valid values are 1 to use wepkey1, 2 to use
+wepkey2, 3 to use wepkey3, and 4 to use wepkey4. The default value is 1. This
+subcommand is only valid when \fBWEP\fR is on.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIsignal\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the strength of the received radio signal. The valid values are 0 -
+15 , where 0 is the weakest signal and 15 is the strongest signal. This
+parameter is read-only and indicates the radio signal strength received by the
+\fBNIC\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fIradio\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies whether the radio is turned on or off. The valid values are "on" to
+turn on the radio and "off" to turn off the radio. The default value is "on".
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrestoredef\fR\fR
+.ad
+.sp .6
+.RS 4n
+Forces the \fBNIC\fR to restore the network interface to use the default values
+for all the parameters. See the \fBgetparam\fR and \fBsetparam\fR subcommands
+for the default values of the parameters.
+.sp
+The "solaris.network.wifi.config" authorization is required for this
+subcommand.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBscan\fR\fR
+.ad
+.sp .6
+.RS 4n
+Scans and lists the currently available \fBWLAN\fRs.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBshowstatus\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display the basic status of a \fBWLAN\fR interface. If the \fBWLAN\fR interface
+is connected, the basic status includes: the name of the current active
+profile, the name of the network, the \fIbssid\fR, whether the network is
+encrypted or not, and the signal strength.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsetwepkey\fR 1|2|3|4\fR
+.ad
+.sp .6
+.RS 4n
+Sets one of the 4 \fBWEP\fR encryption keys. \fBWEP\fR keys are used to
+encrypt the content of the network packets which are transmitted on air. There
+are 4 \fBWEP\fR keys in the \fBNIC\fR according to the 802.11 standards. The
+\fBsetwepkey\fR subcommand is used to update one of the 4 keys by prompting the
+user for the key. The user must enter the key twice. The input is not echoed.
+For example, to update setwepkey2:
+.sp
+.in +2
+.nf
+example% wificonfig -i ath0 setwepkey 2
+input wepkey2: < user input here>
+confirm wepkey2: < user input here>
+.fi
+.in -2
+.sp
+
+A \fBWEP\fR key can be 5 bytes or 13 bytes long. There are two ways to enter a
+\fBWEP\fR key, by \fBASCII\fR values or by hex values. If the user enters 5 or
+13 characters, it is considered the \fBASCII\fR representation of the key. If
+the user enters 10 or 26 characters, it is considered the hex representation of
+the key. For example "1234" is equivalent to "6162636465". If the user enters
+other number of characters, the subcommand fails. \fBWEP\fR keys are
+write-only; they cannot be read back via \fBwificonfig\fR.
+.sp
+The \fBWEP\fR keys can also be set in plain text form by the \fBsetparam\fR
+subcommand. This makes setting \fBWEP\fR keys scriptable (see the parameters of
+\fBsetparam\fR for the details).
+.sp
+The "solaris.network.wifi.wep" authorization is required for this subcommand.
+.RE
+
+.sp
+.LP
+The following profile subcommands are supported:
+.sp
+.ne 2
+.na
+\fB\fBcreateprofile\fR \fIprofile\fR [parameter=value] [...]\fR
+.ad
+.sp .6
+.RS 4n
+Creates a Configuration Profile named \fIprofile\fR off-line. The specified
+parameters are saved as items of this Configuration Profile. The user can
+specify a group of parameters. At a minimum, the \fIessid\fR must be specified.
+.sp
+The "solaris.network.wifi.config" authorization is required for this
+subcommand.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdeleteprofile\fR \fIprofile1\fR [\fIprofile2\fR [...]]\fR
+.ad
+.sp .6
+.RS 4n
+Deletes one or more Configuration Profiles according to the specified names. If
+the specified Configuration Profile does not exist, this subcommand fails. The
+wild-card "all" can be used to delete all profiles.
+.sp
+The "solaris.network.wifi.config" authorization is required for this
+subcommand.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBshowprofile\fR [\fIprofile\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Displays the parameters in the Configuration Profile according to the specified
+\fIprofile\fR. \fBWEP\fR (wired equivalent privacy) keys are not printed
+because they are write-only parameters. If no \fIprofile\fR is specified, all
+the profiles are shown.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsetprofilewepkey\fR 1|2|3|4\fR
+.ad
+.sp .6
+.RS 4n
+Sets one of the 4 \fBWEP\fR encryption keys in the specified Configuration
+Profile "profile". Like the other \fBprofile\fR subcommands,
+\fBsetprofilewepkey\fR does not affect the configuration of a network
+interface, even if a \fBWiFi\fR interface is currently running with the
+specified profile. In order for the modified profile to be applied to the
+network interface, the \fBconnect\fR or \fBautoconf\fR subcommands have to be
+used after the profile has been updated.
+.sp
+Other than that difference, the usage of \fBsetprofilewepkey\fR is the same as
+the \fBsetwepkey\fR subcommand. For example, to update wepkey 2 in profile
+"\fIhome\fR":
+.sp
+.in +2
+.nf
+example% wificonfig setprofilewepkey home 2
+input wepkey2: < user input here>
+confirm wepkey2: < user input here>
+.fi
+.in -2
+.sp
+
+The "solaris.network.wifi.wep" authorization is required for this subcommand.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBgetprofileparam\fR \fIprofile\fR [parameter]\ [...]]\fR
+.ad
+.br
+.na
+\fB\fBsetprofileparam\fR \fIprofile\fR [parameter=value]\ [...]]\fR
+.ad
+.sp .6
+.RS 4n
+Gets or sets parameters in the specified Configuration Profile "\fIprofile\fR".
+Like the other profile subcommands, these subcommands do not affect the
+configuration of a network interface, even if a \fBWiFi\fR interface is
+currently running with the specified profile. In order for the modified
+profile to be applied to the network interface, the \fBconnect\fR or
+\fBautoconf\fR subcommands have to be used after the profile has been updated.
+.sp
+A \fBgetprofileparam\fR without any parameters will display all the parameters
+and their values.
+.sp
+"Solaris.network.wifi.wep" authorization is required when the \fBsetparam\fR
+subcommand is used with the
+\fIwepkey1\fR|\fIwepkey2\fR|\fIwepkey3\fR|\fIwepkey4\fR parameter. For all
+other parameters, the \fBsetparam\fR subcommand requires
+"solaris.network.wifi.config"authorization.
+.sp
+For example, to change the settings for the "\fIhome\fR" Configuration Profile,
+use:
+.sp
+.in +2
+.nf
+$ wificonfig setprofileparam home <parameter1=value1> \e
+[parameter2=value2 [...]]
+$ wificonfig getprofileparam home <parameter1> [parameter2 [...]]
+.fi
+.in -2
+.sp
+
+The set of parameters and their allowed values are the same as those specified
+for the \fBsetparam\fR subcommand.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBhistory\fR\fR
+.ad
+.sp .6
+.RS 4n
+Lists the \fBWLAN\fRs in the History List. \fBwificonfig\fR automatically
+records the \fBWLAN\fRs that appear in every scanning attempt. The History List
+contains a maximum of 10 records of the most recent \fBWLAN\fRs, sorted by
+time. These records can be listed by using this subcommand.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBlistprefer\fR\fR
+.ad
+.sp .6
+.RS 4n
+Lists the content of the Preference List.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBremoveprefer\fR \fIprofile\fR\fR
+.ad
+.sp .6
+.RS 4n
+Removes one or more profiles from the Preference List. The wild-card "all" can
+be used to delete all profiles.
+.sp
+The "solaris.network.wifi.config" authorization is required for this
+subcommand.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsetprefer\fR \fIprofile\fR [\fIn\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Sets the position of a \fIprofile\fR in the Preference List. This may add or
+change the position of a \fIprofile\fR in the Preference List. The valid values
+of "\fIn\fR" range from 1 to 10. If "\fIn\fR" is missing, the default value of
+1 is assumed. If the specified position is already occupied, the occupying
+\fIprofile\fR is moved lower on the list. If "\fIn\fR" is off the end of the
+list, \fIprofile\fR is added to the end of the list. The Preference List can
+also be created by using this subcommand. If the \fBautoconf\fR subcommand is
+used at a later time, \fBwificonfig\fR tries to join the \fBWLAN\fRs according
+to the Preference List.
+.sp
+The "solaris.network.wifi.config" authorization is required for this
+subcommand.
+.RE
+
+.SH EXAMPLES
+\fBExample 1 \fRListing the Parameters Supported by a Driver
+.sp
+.LP
+To display what parameters the \fIath\fR driver supports and the read/write
+modes of the parameters:
+
+.sp
+.in +2
+.nf
+% wificonfig -i ath0 setparam
+ parameter property
+ bssid read only
+ essid read/write
+ bsstype read/write
+ rates read/write
+ authmode read/write
+ encryption read/write
+ wepkeyindex read/write
+ signal read only
+
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRGetting and Setting Parameters on the WiFi interface
+.sp
+.LP
+To get the current rates and signal strength from the driver:
+
+.sp
+.in +2
+.nf
+% wificonfig -i ath0 getparam rates signal
+ ath0:
+ rates = 1,2,5.5,11
+ signal = 10
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRManaging Configuration Profiles
+.sp
+.LP
+A Configuration Profile can be created offline and then connected to the
+network with the created Configuration Profile. The following series of
+commands creates the Configuration Profile, displays the contents of that
+profile, and connects to the network with the Configuration Profile:
+
+.sp
+.in +2
+.nf
+% wificonfig createprofile myXXX essid=rover encryption=WEP \e
+ wepkey1=12345
+% wificonfig showprofile myXXX
+ [myXXX]
+ essid=rover
+ encryption=WEP
+ wepkey1=[secret]
+
+% ifconfig ath0 plumb
+% wificonfig -i ath0 connect myXXX
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 4 \fRManaging the Preference List
+.sp
+.LP
+A profile can be added to the Preference List and then used by the
+\fBautoconf\fR subcommand. The following series of commands adds a profile
+named \fImyXXX\fR to the top of the Preference List, automatically connects
+\fIath0\fR to the first available \fBWLAN\fR in the Preference List, and
+removes \fImy_neighbor\fR from the Preference List
+
+.sp
+.in +2
+.nf
+% wificonfig setprefer myXXX 1
+% ifconfig ath0 plumb
+% wificonfig -i ath0 autoconf
+% wificonfig removeprefer my_neighbor
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 5 \fRViewing the History List
+.sp
+.LP
+To display the history of the \fBWLAN\fRs:
+
+.sp
+.in +2
+.nf
+% wificonfig history
+
+ WLAN history:
+
+ essid bssid encryption last seen
+ myXXX 00:0f:24:11:12:14 WEP Fri Sep 13 09:15:24 2004
+ my_office_ssid 00:0f:24:11:12:15 WEP Fri Sep 13 13:20:04 2004
+ my_neighbor1 00:0f:24:11:12:16 NONE Fri Sep 14 08:01:26 2004
+ my_neighbor2 00:0f:24:11:12:17 WEP Fri Sep 18 21:33:12 2004
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 6 \fRAutomatic Configuration
+.sp
+.LP
+To configure the interface according to the previously saved Preference List:
+
+.sp
+.in +2
+.nf
+% ifconfig ath0 plumb
+% wificonfig -i ath0 autoconf
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+If the Preference List is empty, or none of the \fBWLAN\fRs listed by the
+Preference List can be found, \fBwificonfig\fR uses the default configuration,
+directs the interface to scan and join the \fBWLAN\fR using the built-in
+heuristics specified above.
+
+.LP
+\fBExample 7 \fRConnecting To a WLAN
+.sp
+.LP
+To search for a Configuration Profile with the name \fImyXXX\fR and configure
+the interface accordingly:
+
+.sp
+.in +2
+.nf
+% ifconfig ath0 plumb
+% wificonfig -i ath0 connect myXXX
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+If the specified Configuration Profile does not exist, \fBwificonfig\fR
+interprets it as an \fIessid\fR and sets \fIath0\fR to use \fIessid\fR
+\fImyXXX\fR, and no other parameters are set.
+
+.LP
+\fBExample 8 \fRDisplaying the Content of a Configuration Profile
+.sp
+.LP
+To print the parameters of the previously Configured Profile named
+\fImy_home_ssid\fR:
+
+.sp
+.in +2
+.nf
+% wificonfig showprofile my_home_ssid
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 9 \fRMonitoring the link status
+.sp
+.LP
+To monitor the link status:
+
+.sp
+.in +2
+.nf
+% wificonfig -i ath0 showstatus
+ ath0:
+ linkstatus: not connected,
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+or
+
+.sp
+.in +2
+.nf
+ ath0:
+ linkstatus: connected
+ active profile: [home]
+ essid: myhome
+ bssid: 00:0b:0e:12:e2:02
+ encryption: WEP
+ signal: medium(10)
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 10 \fRScanning for available networks
+.sp
+.LP
+To scan for available networks:
+
+.sp
+.in +2
+.nf
+% wificonfig -i ath0 scan
+essid bssid type encryption signal
+ level
+ietf64-secure 00:0b:0e:12:e2:02 access point WEP 9
+roomlinx 00:40:96:a1:13:70 access point none 6
+ietf64 00:0b:0e:13:32:00 access point none 3
+ietf64-secure 00:0b:0e:13:32:02 access point WEP 3
+ietf64 00:0b:0e:12:e2:00 access point none 9
+ietf64-secure 00:0b:0e:12:e4:c2 access point WEP 8
+ietf64 00:0b:0e:12:e4:c0 access point none 8
+roomlinx 00:40:96:a0:aa:aa access point none 1
+roomlinx 00:40:96:a0:ab:39 access point none 8
+.fi
+.in -2
+.sp
+
+.SH EXIT STATUS
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 5n
+Successful operation
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB1\fR\fR
+.ad
+.RS 5n
+Fatal Error; the operation failed. For example, a connect failed to associate
+with an Access Point.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB2\fR\fR
+.ad
+.RS 5n
+Improper Use; help information will be printed
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB3\fR\fR
+.ad
+.RS 5n
+Minor error
+.RE
+
+.SH ATTRIBUTES
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Unstable
+.TE
+
+.SH SEE ALSO
+.BR ps (1),
+.BR ath (4D),
+.BR attributes (7),
+.BR ifconfig (8)
diff --git a/usr/src/man/man8/wpad.8 b/usr/src/man/man8/wpad.8
new file mode 100644
index 0000000000..106604966d
--- /dev/null
+++ b/usr/src/man/man8/wpad.8
@@ -0,0 +1,171 @@
+'\" te
+.\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH WPAD 8 "Mar 11, 2008"
+.SH NAME
+wpad \- WPA and WPA2 protocol daemon
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/inet/wpad\fR [\fB-i\fR \fIinterface\fR] [\fB-k\fR \fIpre_shared_key_name\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBwpad\fR daemon provides common client functionality for the WiFi
+Protected Access (WPA) versions 1 and 2, as defined by IEEE802.11i standard.
+WPA was created by the WiFi Alliance, an industry trade group. WPA implements
+the majority of the IEEE 802.11i standard, and was intended as an intermediate
+measure to take the place of Wired Equivalent Privacy (WEP) while 802.11i was
+prepared. WPA2 implements the full standard.
+.sp
+.LP
+\fBwpad\fR provides the following WPA/IEEE 802.11i features:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+WPA-PSK ("WPA-Personal")
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Key management for CCMP, TKIP, WEP104, WEP40
+.RE
+.sp
+.LP
+Stop and start the \fBwpad\fR daemon using \fBdladm\fR(8). Use:
+.sp
+.in +2
+.nf
+# \fBdladm connect-wifi\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+\&...to start the \fBwpad\fR daemon. Use:
+.sp
+.in +2
+.nf
+# \fBdladm disconnect-wifi\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+\&...to stop the daemon.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-i\fR \fIinterface\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify a WiFi Link interface to start the \fBwpad\fR daemon.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-k\fR \fIpre_shared_key_name\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify the pre-shared key used for the WiFi Link.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRStarting the \fBwpad\fR Daemon on Specific WiFi Link
+.sp
+.LP
+To create the WPA key \fBpsk\fR, enter the following command:
+
+.sp
+.in +2
+.nf
+# \fBdladm create-secobj -c wpa psk\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+To use key \fBpsk\fR to connect to ESSID \fBwlan\fR on link \fBath0\fR, enter
+the following command:
+
+.sp
+.in +2
+.nf
+# \fBdladm connect-wifi -k psk -e wlan ath0\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRStopping the \fBwpad\fR Daemon on Specific WiFi Link
+.sp
+.LP
+To stop the daemon on the link \fBath0\fR, enter:
+
+.sp
+.in +2
+.nf
+# \fBdladm disconnect-wifi ath0\fR
+.fi
+.in -2
+.sp
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Uncommitted
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR svcs (1),
+.BR attributes (7),
+.BR smf (7),
+.BR dladm (8),
+.BR svcadm (8)
+.SH NOTES
+.sp
+.LP
+The \fBwpad\fR service is managed by the service management facility,
+\fBsmf\fR(7), under the service identifier:
+.sp
+.in +2
+.nf
+svc:/network/wpa:\fI<link>\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Administrative actions on this service, such as enabling, disabling, or
+requesting restart, can be performed using \fBsvcadm\fR(8). The service's
+status can be queried using the \fBsvcs\fR(1) command.
diff --git a/usr/src/man/man8/wracct.8 b/usr/src/man/man8/wracct.8
new file mode 100644
index 0000000000..e1b10a0e63
--- /dev/null
+++ b/usr/src/man/man8/wracct.8
@@ -0,0 +1,179 @@
+'\" te
+.\" Copyright (c) 2000, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH WRACCT 8 "Jul 13, 2005"
+.SH NAME
+wracct \- write extended accounting records for active processes and tasks
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/wracct\fR \fB-i\fR \fIid_list\fR [\fB-t\fR \fIrecord_type\fR]
+ {process | task}
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBwracct\fR utility allows the administrator to invoke the extended
+accounting system, if active, to write intermediate records representing the
+resource usage of a selected set of processes or tasks. For tasks, a
+\fIrecord_type\fR option is also supported, allowing the administrator to
+request the writing of:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+an interval record, which reflects task usage since a previous interval record
+(or since task creation if there is no interval record), or
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+a partial record, which reflects usage since task creation.
+.RE
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-i\fR \fIid_list\fR\fR
+.ad
+.RS 18n
+Select the \fBID\fRs of the tasks or processes to write records for. Specify
+\fIid_list\fR as a comma- or space-separated list of IDs, presented as a single
+argument. For some shells, this requires appropriate quoting of the argument.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-t\fR \fIrecord_type\fR\fR
+.ad
+.RS 18n
+Select type of record to write for the selected task or process. For tasks,
+\fIrecord_type\fR can be \fBpartial\fR or \fBinterval\fR. \fBpartial\fR is the
+default type, and the only type available for process records.
+.RE
+
+.SH OPERANDS
+.sp
+.LP
+The following operands are supported:
+.sp
+.ne 2
+.na
+\fB\fBprocess\fR\fR
+.ad
+.RS 11n
+Treat the given \fBID\fR as a process \fBID\fR for the purposes of constructing
+and writing an extended accounting record.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBtask\fR\fR
+.ad
+.RS 11n
+Treat the given \fBID\fR as a task \fBID\fR for the purposes of constructing
+and writing an extended accounting record.
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRWriting a Partial Record
+.sp
+.LP
+Write a partial record for all active \fBsendmail\fR processes.
+
+.sp
+.in +2
+.nf
+# /usr/sbin/wracct -i "`pgrep sendmail`" process
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRWriting an Interval Record
+.sp
+.LP
+Write an interval record for the task with \fBID 182\fR.
+
+.sp
+.in +2
+.nf
+# /usr/sbin/wracct -t interval -i 182 task
+.fi
+.in -2
+.sp
+
+.SH EXIT STATUS
+.sp
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 5n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB1\fR\fR
+.ad
+.RS 5n
+An error occurred.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB2\fR\fR
+.ad
+.RS 5n
+Invalid command line options were specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB3\fR\fR
+.ad
+.RS 5n
+Pertinent components of extended accounting facility are not active.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/var/adm/exacct/task\fR\fR
+.ad
+.RS 24n
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/adm/exacct/proc\fR\fR
+.ad
+.RS 24n
+Extended accounting data files.
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7),
+.BR acctadm (8)
diff --git a/usr/src/man/man8/ypbind.8 b/usr/src/man/man8/ypbind.8
new file mode 100644
index 0000000000..f140f45ef6
--- /dev/null
+++ b/usr/src/man/man8/ypbind.8
@@ -0,0 +1,170 @@
+'\" te
+.\" Copyright 1989 AT&T
+.\" Copyright (C) 2004, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH YPBIND 8 "May 13, 2017"
+.SH NAME
+ypbind \- NIS binder process
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/netsvc/yp/ypbind\fR [\fB-broadcast\fR | \fB-ypset\fR | \fB-ypsetme\fR]
+.fi
+
+.SH DESCRIPTION
+.LP
+NIS provides a simple network lookup service consisting of databases and
+processes. The databases are stored at the machine that runs an NIS server
+process. The programmatic interface to NIS is described in \fBypclnt\fR(3NSL).
+Administrative tools are described in \fBypinit\fR(8), \fBypwhich\fR(1), and
+\fBypset\fR(8). Tools to see the contents of NIS maps are described in
+\fBypcat\fR(1), and \fBypmatch\fR(1).
+.sp
+.LP
+\fBypbind\fR is a daemon process that is activated at system startup time from
+the \fBsvc:/network/nis/client:default\fR service. By default, it is invoked as
+\fBypbind\fR \fB-broadcast\fR. \fBypbind\fR runs on all client machines that
+are set up to use \fBNIS\fR. The function of
+\fBypbind\fR is to remember information that lets all \fBNIS\fR client
+processes on a node communicate with some \fBNIS\fR server process.
+\fBypbind\fR must run on every machine which has \fBNIS\fR client processes.
+The \fBNIS\fR server may or may not be running on the same node, but must be
+running somewhere on the network.
+.sp
+.LP
+The information \fBypbind\fR remembers is called a \fIbinding\fR \(em the
+association of a domain name with a \fBNIS\fR server. The process of binding is
+driven by client requests. As a request for an unbound domain comes in, if
+started with the \fB-broadcast\fR option, the \fBypbind\fR process broadcasts
+on the net trying to find an \fBNIS\fR server, a \fBypserv\fR process
+serving the domain. Since the binding is established by broadcasting, there
+must be at least one \fBNIS\fR server on the net. If started without the
+\fB-broadcast\fR option, \fBypbind\fR process steps through the list of
+\fBNIS\fR servers that was created by \fBypinit\fR \fB-c\fR for the requested
+domain. There must be an \fBNIS\fR server process on at least one of the hosts
+in the \fBNIS\fR servers file. It is recommended that you list each of these
+NIS servers by name and numeric IP address in \fB/etc/hosts\fR. Though the
+practice is not recommended, NIS allows you to list servers by numeric address
+only, bypassing \fB/etc/hosts\fR. In such a configuration, \fBypwhich\fR(1)
+returns a numeric address instead of a name.
+.sp
+.LP
+Once a domain is bound by \fBypbind\fR, that same binding is given to every
+client process on the node. The \fBypbind\fR process on the local node or a
+remote node may be queried for the binding of a particular domain by using the
+\fBypwhich\fR(1) command.
+.sp
+.LP
+If \fBypbind\fR is unable to speak to the \fBNIS\fR server process it is bound
+to, it marks the domain as unbound, tells the client process that the domain is
+unbound, and tries to bind the domain once again. Requests received for an
+unbound domain will wait until the requested domain is bound. In general, a
+bound domain is marked as unbound when the node running the \fBNIS\fR server
+crashes or gets overloaded. In such a case, \fBypbind\fR will try to bind to
+another \fBNIS\fR server using the process described above.\fBypbind\fR also
+accepts requests to set its binding for a particular domain. The request is
+usually generated by the \fBypset\fR(8) command. In order for \fBypset\fR to
+work, \fBypbind\fR must have been invoked with flags \fB-ypset\fR or
+\fB-ypsetme\fR.
+.SH OPTIONS
+.ne 2
+.na
+\fB\fB-broadcast\fR\fR
+.ad
+.sp .6
+.RS 4n
+Send a broadcast datagram using \fBUDP/IP\fR that requests the information
+needed to bind to a specific \fBNIS\fR server. This option is analogous to
+\fBypbind\fR with no options in earlier Sun releases and is recommended for
+ease of use.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-ypset\fR\fR
+.ad
+.sp .6
+.RS 4n
+Allow users from any remote machine to change the binding by means of the
+\fBypset\fR command. By default, no one can change the binding. This option is
+insecure.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-ypsetme\fR\fR
+.ad
+.sp .6
+.RS 4n
+Only allow \fBroot\fR on the local machine to change the binding to a desired
+server by means of the \fBypset\fR command. \fBypbind\fR can verify the caller
+is indeed a \fBroot\fR user by accepting such requests only on the loopback
+transport. By default, no external process can change the binding.
+.RE
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/var/yp/binding/\fIypdomain\fR/ypservers\fR\fR
+.ad
+.sp .6
+.RS 4n
+Lists the servers to which the NIS client is allowed to bind.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/inet/hosts\fR\fR
+.ad
+.sp .6
+.RS 4n
+File in which it is recommended that NIS servers be listed.
+.RE
+
+.SH SEE ALSO
+.LP
+.BR svcs (1),
+.BR ypcat (1),
+.BR ypmatch (1),
+.BR ypwhich (1),
+.BR ypclnt (3NSL),
+.BR hosts (5),
+.BR ypfiles (5),
+.BR attributes (7),
+.BR smf (7),
+.BR ifconfig (8),
+.BR svcadm (8),
+.BR ypinit (8),
+.BR ypset (8)
+.SH NOTES
+.LP
+\fBypbind\fR supports multiple domains. The \fBypbind\fR process can maintain
+bindings to several domains and their servers, the default domain is the one
+specified by the \fBdomainname\fR(8) command at startup time.
+.sp
+.LP
+The \fB-broadcast\fR option works only on the \fBUDP\fR transport. It is
+insecure since it trusts "any" machine on the net that responds to the
+broadcast request and poses itself as an \fBNIS\fR server.
+.sp
+.LP
+The \fBypbind\fR service is managed by the service management facility,
+\fBsmf\fR(7), under the service identifier:
+.sp
+.in +2
+.nf
+svc:/network/nis/client:default
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Administrative actions on this service, such as enabling, disabling, or
+requesting restart, can be performed using \fBsvcadm\fR(8). The service's
+status can be queried using the \fBsvcs\fR(1) command.
diff --git a/usr/src/man/man8/ypinit.8 b/usr/src/man/man8/ypinit.8
new file mode 100644
index 0000000000..3276cdf317
--- /dev/null
+++ b/usr/src/man/man8/ypinit.8
@@ -0,0 +1,130 @@
+'\" te
+.\" Copyright 1989 AT&T
+.\" Copyright (C) 2008, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.\" Copyright 2014 Nexenta Systems, Inc. All rights reserved.
+.TH YPINIT 8 "Dec 15, 2014"
+.SH NAME
+ypinit \- set up NIS client
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/ypinit\fR \fB-m\fR
+\fB/usr/sbin/ypinit\fR \fB-s\fR [\fImaster_server\fR]
+\fB/usr/sbin/ypinit\fR \fB-c\fR [\fIserver_name...\fR]
+.fi
+
+.SH DESCRIPTION
+.LP
+\fBypinit\fR can be used to set up an \fBNIS\fR client system. You must be the
+superuser to run this command. This script need not be used at all if
+\fBypbind\fR(8) is started with the \fB-broadcast\fR option (it is invoked
+with this option from the \fBsvc:/network/nis/client:default service\fR).
+.sp
+.LP
+Normally, \fBypinit\fR is run only once after installing the system. It may be
+run whenever a new \fBNIS\fR server is added to the network or an existing one
+is decommissioned.
+.sp
+.LP
+\fBypinit\fR prompts for a list of \fBNIS\fR servers to bind the client to;
+this list should be ordered from the closest to the furthest server. It is
+recommended that you list each of these NIS servers by name and numeric IP
+address in \fB/etc/hosts\fR. Though the practice is not recommended, NIS allows
+you to list servers by numeric address only, bypassing \fB/etc/hosts\fR. In
+such a configuration, \fBypwhich\fR(1) returns a numeric address instead of a
+name.
+.sp
+.LP
+\fBypinit\fR stores the list of servers to which a client can bind in the file
+\fB/var/yp/binding/\fIdomain\fR/ypservers\fR. This file is used by \fBypbind\fR
+when run without the \fB-broadcast\fR option.
+.SH OPTIONS
+.ne 2
+.na
+\fB\fB-c\fR\fR [\fIserver_name...\fR]
+.ad
+.sp .6
+.RS 4n
+Set up a \fBypclient\fR system. If \fIserver_name\fR is specified, it will
+replace currently configured list of servers. \fIserver_name\fR could be
+represented by IPv4/v6 address as well as by hostname.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-m\fR\fR
+.ad
+.sp .6
+.RS 4n
+Build a master \fBypserver\fR data base.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR \fImaster_server\fR\fR
+.ad
+.sp .6
+.RS 4n
+Slave data base. \fImaster_server\fR must be the same master configured in the
+\fBYP\fR maps and returned by the \fBypwhich\fR \fB-m\fR command.
+.RE
+
+.SH FILES
+.ne 2
+.na
+\fB\fB/etc/hosts\fR\fR
+.ad
+.sp .6
+.RS 4n
+File in which it is recommended that NIS servers be listed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/yp/binding/\fIdomain\fR/ypservers\fR\fR
+.ad
+.sp .6
+.RS 4n
+Lists the servers to which the NIS client is allowed to bind.
+.RE
+
+.SH SEE ALSO
+.LP
+.BR svcs (1),
+.BR ypwhich (1),
+.BR sysinfo (2),
+.BR hosts (5),
+.BR attributes (7),
+.BR smf (7),
+.BR svcadm (8),
+.BR ypbind (8)
+.SH NOTES
+.LP
+The \fBNIS client\fR service is managed by the service management facility,
+\fBsmf\fR(7), under the service identifier:
+.sp
+.in +2
+.nf
+svc:/network/nis/client:default
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Administrative actions on this service, such as enabling, disabling, or
+requesting restart, can be performed using \fBsvcadm\fR(8). The service's
+status can be queried using the \fBsvcs\fR(1) command.
+.SH BUGS
+.LP
+\fBypinit\fR sets up the list of \fBNIS\fR servers only for the current domain
+on the system when it is run, that is, the domain returned by the
+\fBSI_SRPC_DOMAIN\fR command to \fBsysinfo\fR(2). Care should be taken to
+ensure that this is the same as the desired domain for \fBNIS\fR client
+processes.
diff --git a/usr/src/man/man8/ypmake.8 b/usr/src/man/man8/ypmake.8
new file mode 100644
index 0000000000..e599531184
--- /dev/null
+++ b/usr/src/man/man8/ypmake.8
@@ -0,0 +1,112 @@
+'\" te
+.\" Copyright (C) 2003, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH YPMAKE 8 "Feb 25, 2017"
+.SH NAME
+ypmake \- rebuild NIS database
+.SH SYNOPSIS
+.LP
+.nf
+\fBcd\fR \fB/var/yp\fR ; \fBmake\fR [\fImap\fR]
+.fi
+
+.SH DESCRIPTION
+.LP
+The file called \fBMakefile\fR in \fB/var/yp\fR is used by \fBmake\fR(1S) to
+build the Network Information Service (\fBNIS\fR) database. With no arguments,
+\fBmake\fR creates \fBdbm\fR databases for any \fBNIS\fR maps that are
+out-of-date, and then executes \fByppush\fR(8) to notify slave databases that
+there has been a change.
+.sp
+.LP
+If you supply a \fImap\fR on the command line, \fBmake\fR will update that map
+only. Typing \fBmake passwd\fR will create and \fByppush\fR the password
+database (assuming it is out of date). Likewise, \fBmake ipnodes\fR and \fBmake
+networks\fR will create and \fByppush\fR the \fBipnodes\fR and \fBnetwork\fR
+files, \fB$(INETDIR)/ipnodes\fR and \fB$(DIR)/networks\fR.
+.sp
+.LP
+There are four special variables used by \fBmake\fR: \fBDIR\fR, which gives the
+directory of the source files; \fBNOPUSH\fR, which when non-null inhibits doing
+a \fByppush\fR of the new database files; \fBINETDIR\fR, which gives the
+directory of the \fBipnodes\fR source file; and \fBDOM\fR, which is used to
+construct a domain other than the master's default domain. The default for
+\fBDIR\fR is \fB/etc\fR, and the default for \fBINETDIR\fR is \fB/etc/inet\fR.
+The default for \fBNOPUSH\fR is the null string.
+.sp
+.LP
+Refer to \fBypfiles\fR(5) and \fBypserv\fR(8) for an overview of the
+\fBNIS\fR service.
+.sp
+.LP
+If a \fBNIS\fR to LDAP (N2L) configuration file, \fB/var/yp/NISLDAPmapping\fR,
+is present, the \fBNIS\fR server components run in N2L mode. In N2L mode, the
+server components use a new set of map files with an LDAP-prefix, based on the
+LDAP DIT. In N2L mode, authoritative NIS information is obtained from the DIT.
+The NIS source files and \fBypmake\fR have no role, and they should not be
+used. If \fBypmake\fR is accidentally run, then the server components will
+detect this, and will log a warning message. For additional information, see
+\fBypfiles\fR(5).
+.SH FILES
+.ne 2
+.na
+\fB\fB/var/yp\fR\fR
+.ad
+.RS 19n
+Directory containing \fBNIS\fR configuration files.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc/inet/hosts\fR\fR
+.ad
+.RS 19n
+System hosts file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/etc\fR\fR
+.ad
+.RS 19n
+Default directory for source files.
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Evolving
+.TE
+
+.SH SEE ALSO
+.LP
+.BR make (1S),
+.BR ypclnt (3NSL),
+.BR NISLDAPmapping (5),
+.BR ypfiles (5),
+.BR ypserv (5),
+.BR makedbm (8),
+.BR ypbind (8),
+.BR yppush (8),
+.BR ypserv (8)
+.SH NOTES
+.LP
+The Network Information Service (\fBNIS\fR) was formerly known as Sun Yellow
+Pages (\fBYP\fR). The functionality of the two remains the same. Only the name
+has changed. The name Yellow Pages is a registered trademark in the United
+Kingdom of British Telecommunications plc, and may not be used without
+permission.
diff --git a/usr/src/man/man8/ypmap2src.8 b/usr/src/man/man8/ypmap2src.8
new file mode 100644
index 0000000000..240f0836a2
--- /dev/null
+++ b/usr/src/man/man8/ypmap2src.8
@@ -0,0 +1,148 @@
+'\" te
+.\" Copyright (C) 2003, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH YPMAP2SRC 8 "Apr 10, 2003"
+.SH NAME
+ypmap2src \- convert NIS maps to NIS source files
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/netsvc/yp/ypmap2src\fR [\fB-t\fR]
+ [ [\fB-c\fR \fIcustom-map-name\fR]]... [\fB-d\fR \fIdomain\fR] \fB-o\fR \fIoutput-directory\fR
+ [ [ \fIsource-file\fR]]...
+.fi
+
+.SH DESCRIPTION
+.LP
+Use the \fBypmap2src\fR utility to convert standard NIS maps to approximations
+of the equivalent NIS source files. This utility functions like the reverse of
+\fBypmake\fR(8).
+.sp
+.LP
+The primary use for \fBypmap2src\fR is to convert from a NIS server that uses
+the NIS to LDAP(N2L) transition mechanism, which does not use NIS source files,
+to traditional NIS, where source files are required. The \fBypmap2src\fR
+utility is also used by NIS administrators who wish to discover the contents of
+NIS maps for which the sources are not available.
+.sp
+.LP
+Generally, this operation is not necessary. More often, administrators will
+switch from traditional NIS to N2L in anticipation of the eventual transition
+to LDAP naming. When this switch is made, authoritative information is moved
+into the LDAP DIT, and the NIS sources have no further role. N2L supports NIS
+clients until such time as they can be converted to LDAP, and the NIS service
+suspended.
+.sp
+.LP
+The \fBypmap2src\fR utility does not guarantee that the files that are
+generated are identical to the original NIS source files. Some information
+might have been thrown away by \fBypmake\fR and cannot be recovered. N2L also
+might have updated the maps to reflect changes made by LDAP clients. It is
+essential that the sources generated are checked to confirm no problems have
+occurred.
+.sp
+.LP
+Per entry comment fields, from existing source files, are not merged into
+source files generated by \fBypmap2src\fR. If a user wishes N2L to maintain
+comment information, then the \fBNISLDAPmapping\fR configuration file should be
+modified so that the comment fields are mapped into LDAP. This will ensure
+that the comments are visible to native LDAP clients and present in the N2L map
+files.
+.sp
+.LP
+When \fBypmap2src\fR is run, it will take up-to-date comments from the map file
+and insert them into the NIS source file generated.
+.SS "Handling Custom Maps"
+.LP
+\fBypmap2src\fR only knows about the standard NIS maps and standard source to
+map conversion. If an advanced user has changed these, that is, the user has
+modified the NIS makefile, the equivalent changes must also be made to the
+\fBypmap2src\fR script.
+.SH OPTIONS
+.LP
+\fBypmap2src\fR supports the following options:
+.sp
+.ne 2
+.na
+\fB\fB-c\fR\fR
+.ad
+.RS 18n
+Specifies that \fIcustom-map-name\fR should be converted to a source
+file by running \fBmakedbm\fR \fB-u\fR on it. This is a short cut so that
+simple custom maps can be handled without editing \fBypmap2src\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-d\fR \fIdomain-name\fR\fR
+.ad
+.RS 18n
+ Specifies the domain to convert. The \fIdomain-name\fR can be a fully
+qualified file path, such as \fB/var/yp/a.b.c\fR, or just a domain name,
+a.b.c\fB\fR. In the latter case, \fBypmaptosrc\fR looks in \fB/var/yp\fR for
+the domain directory.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-o\fR \fIdest\fR\fR
+.ad
+.RS 18n
+ Specifies the destination directory for the converted files. A directory other
+than \fB/etc\fR should be specified. The maps generated are copied to the
+correct location, \fB/etc\fR, \fB/etc/security\fR or other source directory, as
+appropriate.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-t\fR\fR
+.ad
+.RS 18n
+Specifies that traditional NIS maps, without N2L's \fBLDAP_\fR prefix, should
+be converted. By default, maps with the \fBLDAP_\fR prefix are converted.
+.RE
+
+.SH OPERANDS
+.LP
+\fBypmap2src\fR supports the following operands:
+.sp
+.ne 2
+.na
+\fB\fIsource-file\fR\fR
+.ad
+.RS 15n
+Lists the standard source files to convert. If this option is not given, then
+all the standard source files, plus any custom files specified by the \fB-c\fR
+option, are converted.
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Obsolete
+.TE
+
+.SH SEE ALSO
+.LP
+.BR NISLDAPmapping (5),
+.BR attributes (7),
+.BR ypmake (8),
+.BR ypserv (8)
+.sp
+.LP
+\fI\fR
diff --git a/usr/src/man/man8/yppoll.8 b/usr/src/man/man8/yppoll.8
new file mode 100644
index 0000000000..e117ce08bb
--- /dev/null
+++ b/usr/src/man/man8/yppoll.8
@@ -0,0 +1,46 @@
+'\" te
+.\" Copyright 1989 AT&T Copyright (c) 1988 Sun Microsystems, Inc. - All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH YPPOLL 8 "Sep 14, 1992"
+.SH NAME
+yppoll \- return current version of a NIS map at a NIS server host
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/yppoll\fR [\fB-d\fR \fIypdomain\fR] [\fB-h\fR \fIhost\fR] \fImapname\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fByppoll\fR command asks a \fBypserv\fR(\|) process what the order number
+is, and which host is the master NIS server for the named map.
+.SH OPTIONS
+.sp
+.ne 2
+.na
+\fB\fB\fR\fB-d\fR\fB \fR\fIypdomain\fR\fR
+.ad
+.RS 15n
+Use \fIypdomain\fR instead of the default domain.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB\fR\fB-h\fR\fB \fR\fIhost\fR\fR
+.ad
+.RS 15n
+Ask the \fBypserv\fR process at \fIhost\fR about the map parameters. If
+\fIhost\fR is not specified, the NIS server for the local host is used. That
+is, the default host is the one returned by \fBypwhich\fR(1).
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR ypwhich (1),
+.BR ypfiles (5),
+.BR attributes (7)
diff --git a/usr/src/man/man8/yppush.8 b/usr/src/man/man8/yppush.8
new file mode 100644
index 0000000000..e23c9d1586
--- /dev/null
+++ b/usr/src/man/man8/yppush.8
@@ -0,0 +1,128 @@
+'\" te
+.\" Copyright (c) 2000, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH YPPUSH 8 "Aug 26, 1999"
+.SH NAME
+yppush \- force propagation of changed NIS map
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/netsvc/yp/yppush\fR [\fB-v\fR] [\fB-h\fR \fIhost\fR] [\fB-d\fR \fIdomain\fR]
+ [\fB-p\fR \fI#parallel-xfrs\fR] \fImapname\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fByppush\fR copies a new version of a Network Information Service (\fBNIS\fR)
+map from the master \fBNIS\fR server to the slave \fBNIS\fR servers. It is
+normally run only on the master \fBNIS\fR server by the \fBMakefile\fR in
+\fB/var/yp\fR after the master databases are changed. It first constructs a
+list of \fBNIS\fR server hosts by reading the \fBNIS\fR \fBypservers\fR map
+within the \fIdomain\fR. Keys within the \fBypservers\fR map are the
+\fBASCII\fR names of the machines on which the \fBNIS\fR servers run.
+.sp
+.LP
+A "transfer map" request is sent to the \fBNIS\fR server at each host, along
+with the information needed by the transfer agent (the program that actually
+moves the map) to call back the \fByppush\fR. When the attempt has completed
+(successfully or not), and the transfer agent has sent \fByppush\fR a status
+message, the results can be printed to \fBstdout\fR. Messages are also printed
+when a transfer is not possible, for instance, when the request message is
+undeliverable, or when the timeout period on responses has expired.
+.sp
+.LP
+Refer to \fBypfiles\fR(5) and \fBypserv\fR(8) for an overview of the \fBNIS\fR
+service.
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-d\fR \fIdomain\fR\fR
+.ad
+.RS 21n
+Specifies a \fIdomain\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-h\fR \fIhost\fR\fR
+.ad
+.RS 21n
+Propagates only to the named \fIhost\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR \fI#parallel-xfrs\fR\fR
+.ad
+.RS 21n
+Allows the specified number of map transfers to occur in parallel.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.RS 21n
+Verbose. This prints messages when each server is called, and for each
+response. If this flag is omitted, only error messages are printed.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/var/yp\fR\fR
+.ad
+.sp .6
+.RS 4n
+Directory where \fBNIS\fR configuration files reside.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/yp/\fIdomain\fR/ypservers.\|{\fIdir\fR,\fI pag\|\fR}\fR\fR
+.ad
+.sp .6
+.RS 4n
+Map containing list of \fBNIS\fR servers to bind to when running in server
+mode.
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR ypfiles (5),
+.BR attributes (7),
+.BR ypserv (8),
+.BR ypxfr (8)
+.SH NOTES
+.sp
+.LP
+The Network Information Service (\fBNIS\fR) was formerly known as Sun Yellow
+Pages (\fBYP\fR). The functionality of the two remains the same; only the name
+has changed. The name Yellow Pages is a registered trademark in the United
+Kingdom of British Telecommunications PLC, and must not be used without
+permission.
+.SH BUGS
+.sp
+.LP
+In the current implementation (version 2 \fBNIS\fR protocol), the transfer
+agent is \fBypxfr\fR(8), which is started by the \fBypserv\fR program. If
+\fByppush\fR detects that it is speaking to a version 1 \fBNIS\fR protocol
+server, it uses the older protocol, sending a version 1 \fBYPPROC_GET\fR
+request and issues a message to that effect. Unfortunately, there is no way of
+knowing if or when the map transfer is performed for version 1 servers.
+\fByppush\fR prints a message saying that an "old-style" message has been sent.
+The system administrator should later check to see that the transfer has
+actually taken place.
diff --git a/usr/src/man/man8/ypserv.8 b/usr/src/man/man8/ypserv.8
new file mode 100644
index 0000000000..a21ddcef1c
--- /dev/null
+++ b/usr/src/man/man8/ypserv.8
@@ -0,0 +1,358 @@
+'\" te
+.\" Copyright (C) 2004, Sun Microsystems, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH YPSERV 8 "Dec 15, 2004"
+.SH NAME
+ypserv, ypxfrd \- NIS server and binder processes
+.SH SYNOPSIS
+.nf
+\fB/usr/lib/netsvc/yp/ypserv\fR [\fB-dv\fR] [\fB-i\fR | \fB-I\fR] [\fB-r\fR | \fB-R\fR]
+.fi
+
+.LP
+.nf
+\fB/usr/lib/netsvc/yp/ypxfrd\fR
+.fi
+
+.SH DESCRIPTION
+The Network Information Service (\fBNIS\fR) provides a simple network lookup
+service consisting of databases and processes. The databases are \fBndbm\fR
+files in a directory tree rooted at \fB/var/yp\fR. See \fBndbm\fR(3C). These
+files are described in \fBypfiles\fR(5). The processes are
+\fB/usr/lib/netsvc/yp/ypserv\fR, the \fBNIS\fR database lookup server, and
+\fB/usr/lib/netsvc/yp/ypbind\fR, the \fBNIS\fR binder. The programmatic
+interface to the \fBNIS\fR service is described in \fBypclnt\fR(3NSL).
+Administrative tools are described in \fByppoll\fR(8), \fByppush\fR(8),
+\fBypset\fR(8), \fBypxfr\fR(8), and \fBypwhich\fR(1). Tools to see the
+contents of \fBNIS\fR maps are described in \fBypcat\fR(1), and
+\fBypmatch\fR(1). Database generation and maintenance tools are described in
+\fBypinit\fR(8), \fBypmake\fR(8), and \fBmakedbm\fR(8).
+.sp
+.LP
+The \fBypserv\fR utility is a daemon process typically activated at system
+startup from \fBsvc:/network/nis/server:default\fR. Alternatively, you can, as
+the root user, start \fBNIS\fR services using \fBypstart\fR(8) from the
+command-line. \fBypserv\fR runs only on \fBNIS\fR server machines with a
+complete \fBNIS\fR database. You can halt all \fBNIS\fR services using the
+\fBypstop\fR(8) command.
+.sp
+.LP
+The \fBypxfrd\fR utility transfers entire \fBNIS\fR maps in an efficient
+manner. For systems that use this daemon, map transfers are 10 to 100 times
+faster, depending on the map. To use this daemon, be sure \fBypxfrd\fR is
+running on the master server. See \fB/usr/lib/netsvc/yp/ypstart\fR. \fBypxfr\fR
+attempts to use \fBypxfrd\fR first. If that fails, it prints a warning, then
+uses the older transfer method.
+.sp
+.LP
+The \fBypserv\fR daemon's primary function is to look up information in its
+local database of \fBNIS\fR maps.
+.sp
+.LP
+The operations performed by \fBypserv\fR are defined for the implementor by the
+\fIYP Protocol Specification\fR, and for the programmer by the header file
+<\fBrpcsvc/yp_prot.h\fR>.
+.sp
+.LP
+Communication to and from \fBypserv\fR is by means of \fBRPC\fR calls. Lookup
+functions are described in \fBypclnt\fR(3NSL), and are supplied as C-callable
+functions in the \fBlibnsl\fR(3LIB) library. There are four lookup functions,
+all of which are performed on a specified map within some \fBNIS\fR domain:
+\fByp_match\fR(3NSL), \fByp_first\fR(3NSL), \fByp_next\fR(3NSL), and
+\fByp_all\fR(3NSL). The \fByp_match\fR operation takes a key, and returns the
+associated value. The \fByp_first\fR operation returns the first key-value pair
+from the map, and \fByp_next\fR can be used to enumerate the remainder.
+\fByp_all\fR ships the entire map to the requester as the response to a single
+\fBRPC\fR request.
+.sp
+.LP
+A number of special keys in the \fBDBM\fR files can alter the way in which
+\fBypserv\fR operates. The keys of interest are:
+.sp
+.ne 2
+.na
+\fB\fBYP_INTERDOMAIN\fR\fR
+.ad
+.RS 21n
+The presence of this key causes \fBypserv\fR to forward to a \fBDNS\fR server
+host lookups that cannot be satisfied by the \fBDBM\fR files.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBYP_SECURE\fR\fR
+.ad
+.RS 21n
+This key causes \fBypserv\fR to answer only questions coming from clients on
+reserved ports.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBYP_MULTI_\fR\fIhostname\fR\fR
+.ad
+.RS 21n
+This is a special key in the form, \fBYP_MULTI_\fR\fIhostname
+addr1,...,addrN.\fR A client looking for \fIhostname\fR receives the closest
+address.
+.RE
+
+.sp
+.LP
+Two other functions supply information about the map, rather than map entries:
+\fByp_order\fR(3NSL), and \fByp_master\fR(3NSL). In fact, both order number and
+master name exist in the map as key-value pairs, but the server will not return
+either through the normal lookup functions. If you examine the map with
+\fBmakedbm\fR(8), however, they are visible. Other functions are used within
+the \fBNIS\fR service subsystem itself, and are not of general interest to
+\fBNIS\fR clients. These functions include \fBdo_you_serve_this_domain?\fR,
+\fBtransfer_map\fR, and \fBreinitialize_internal_state\fR.
+.sp
+.LP
+On start up, \fBypserv\fR checks for the existence of the NIS to LDAP (N2L)
+configuration file \fB/var/yp/NISLDAPmapping\fR. If it is present then a master
+server starts in N2L mode. If the file is not present it starts in
+"traditional" (non N2L) mode. Slave servers always start in traditional mode.
+.sp
+.LP
+In N2L mode, a new set of map files, with an \fBLDAP_\fR prefix, are generated,
+based on the contents of the LDAP DIT. The old map files, NIS source files and
+\fBypmake\fR(8) are not used.
+.sp
+.LP
+It is possible that \fBypmake\fR(8) can be accidentally run in N2L mode. If
+the occurs, the old style map files are overwritten. That the map files are
+overwritten is harmless. However, any resulting \fByppush\fR(8) operation will
+push information based on the DIT rather than the source files. The user may
+not expect information based on the DIT. \fBypserv\fR keeps track of the last
+modification date of the old style map files. If the map files have been
+updated, a warning is logged that suggests that the user call \fByppush\fR
+directly instead of \fBypmake\fR.
+.sp
+.LP
+If a server attempts to run in N2L mode and a LDAP server cannot be contacted,
+it behaves as follows:
+.RS +4
+.TP
+1.
+When \fBypserv\fR is started, a warning will be logged.
+.RE
+.RS +4
+.TP
+2.
+When a NIS read access is made and the TTL entry has expired, a warning is
+logged.Information that is returned from the cache has not been updated.
+.RE
+.RS +4
+.TP
+3.
+When a NIS write access is made, a warning is logged. The cache will not be
+updated, and a NIS failure will be returned.
+.RE
+.sp
+.LP
+If \fBypxfrd\fR is running in N2L mode and is asked to transfer a map,
+\fBypxfrd\fR first checks whether the map is out of date. If the map is out of
+date, \fBypxfrd\fR initiates an update from the DIT. \fBypxfrd\fR cannot wait
+for the update to complete. If \fBypxfrd\fR waited, the client end \fBypxfr\fR
+operation could time out. To prevent \fBypxfrd\fR from timing out, the existing
+map is transferred from the cache. The most up to date map will be transferred
+on subsequent \fBypxfrd\fR operations.
+.SH OPTIONS
+.SS "ypserv"
+.ne 2
+.na
+\fB\fB-d\fR\fR
+.ad
+.RS 7n
+The \fBNIS\fR service should go to the \fBDNS\fR for more host information.
+This requires the existence of a correct \fB/etc/resolv.conf\fR file pointing
+to a \fBDNS\fR server. This option turns on \fBDNS\fR forwarding regardless of
+whether or not the \fBYP_INTERDOMAIN\fR flag is set in the \fBhosts\fR maps.
+See \fBmakedbm\fR(8). In the absence of an \fB/etc/resolv.conf\fR file,
+\fBypserv\fR complains, but ignores the \fB-d\fR option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-i\fR\fR
+.ad
+.RS 7n
+If in N2L mode, initialize the NIS related parts of the \fBDIT\fR based on the
+current, non \fBLDAP_\fR prefixed, map files. The \fBLDAP_\fR prefixed maps are
+not created or updated. If you require that \fBLDAP_\fR prefixed maps be
+updated or created, then use the \fB-ir\fR option.
+.sp
+The \fB-i\fR option does not attempt to create any NIS domain or container
+objects. If any NIS domain or container objects have not already been created,
+then errors will occur, as entries are written to nonexistent containers.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-I\fR\fR
+.ad
+.RS 7n
+Identical to \fB-i\fR, except that any missing domain and container objects are
+created.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-r\fR\fR
+.ad
+.RS 7n
+If in N2L mode, then refresh the \fBLDAP_\fR prefixed map files based on the
+contents of the \fBDIT\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-ir\fR\fR
+.ad
+.RS 7n
+If both \fB-i\fR and \fB-r\fR are specified in N2L mode, then the \fBDIT\fR
+will first be initialized from the current non \fBLDAP_\fR prefixed map files.
+A new set of \fBLDAP_\fR prefixed maps will then be generated from the contents
+of the \fBDIT\fR. A new set of \fBLDAP_\fR prefixed maps is required when
+moving from traditional NIS to N2L mode NIS.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-Ir\fR\fR
+.ad
+.RS 7n
+Identical to \fB-ir\fR, except that any missing domain and container objects
+are created.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.RS 7n
+Operate in the verbose mode, printing diagnostic messages to stderr.
+.RE
+
+.sp
+.LP
+When run with the \fB-i\fR, \fB-r\fR, \fB-I\fR, \fB-ir\fR or \fB-Ir\fR options,
+the \fBypserv\fR command runs in the foreground and exits once map
+initialization has been completed. Once the \fBypserv\fR command exits, the
+user knows the maps are ready and can restart \fBypserv\fR and the other
+\fByp\fR daemons by running \fBypstart\fR(8).
+.sp
+.LP
+If there is a requirement to initialize the \fBDIT\fR from the NIS source
+files, which may have been modified since the maps were last remade, run
+\fBypmake\fR before running \fBypserv\fR \fB-i\fR or \fBypserv\fR \fB-ir\fR.
+\fBypmake\fR regenerated old style NIS maps. Then \fBypserv\fR \fB-ir\fR dumps
+them into the \fBDIT\fR. When the \fB-ir\fR option is used, the \fBLDAP_\fR
+prefixe maps are also generated or updated. Since these maps will be more
+recent than the old style maps, \fBypmake\fR will not be reported as erroneous
+when it is run.
+.SH FILES
+.ne 2
+.na
+\fB\fB/var/yp/securenets\fR\fR
+.ad
+.sp .6
+.RS 4n
+Defines the hosts and networks that are granted access to information in the
+served domain. It is read at startup time by both \fBypserv\fR and
+\fBypxfrd\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/yp/ypserv.log\fR\fR
+.ad
+.sp .6
+.RS 4n
+If the \fB/var/yp/ypserv.log\fR file exists when \fBypserv\fR starts up, log
+information is written to it when error conditions arise.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/yp/binding/domainname/ypservers\fR\fR
+.ad
+.sp .6
+.RS 4n
+Lists the \fBNIS\fR server hosts that \fBypbind\fR can bind to.
+.RE
+
+.SH SEE ALSO
+.BR svcs (1),
+.BR ypcat (1),
+.BR ypmatch (1),
+.BR ypwhich (1),
+.BR ndbm (3C),
+.BR libnsl (3LIB),
+.BR ypclnt (3NSL),
+.BR NISLDAPmapping (5),
+.BR securenets (5),
+.BR ypfiles (5),
+.BR ypserv (5),
+.BR attributes (7),
+.BR smf (7),
+.BR domainname (8),
+.BR makedbm (8),
+.BR svcadm (8),
+.BR ypbind (8),
+.BR ypinit (8),
+.BR ypmake (8),
+.BR yppoll (8),
+.BR yppush (8),
+.BR ypset (8),
+.BR ypstart (8),
+.BR ypstop (8),
+.BR ypxfr (8)
+
+.SH NOTES
+\fBypserv\fR supports multiple domains. The \fBypserv\fR process determines the
+domains it serves by looking for directories of the same name in the directory
+\fB/var/yp\fR. It replies to all broadcasts requesting yp service for that
+domain.
+.sp
+.LP
+The Network Information Service (\fBNIS\fR) was formerly known as Sun Yellow
+Pages (\fBYP\fR). The functionality of the two remains the same; only the name
+has changed. The name Yellow Pages is a registered trademark in the United
+Kingdom of British Telecommunications PLC, and must not be used without
+permission.
+.sp
+.LP
+\fBNIS\fR uses \fBndbm()\fR files to store maps. Therefore, it is subject to
+the 1024 byte limitations described in the USAGE and NOTES sections of the
+\fBndbm\fR(3C) man page.
+.sp
+.LP
+The NIS server service is managed by the service management facility,
+\fBsmf\fR(7), under the service identifier:
+.sp
+.in +2
+.nf
+svc:/network/nis/server:default
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Administrative actions on this service, such as enabling, disabling, or
+requesting restart, can be performed using \fBsvcadm\fR(8). The service's
+status can be queried using the \fBsvcs\fR(1) command.
diff --git a/usr/src/man/man8/ypset.8 b/usr/src/man/man8/ypset.8
new file mode 100644
index 0000000000..d2a515e859
--- /dev/null
+++ b/usr/src/man/man8/ypset.8
@@ -0,0 +1,94 @@
+'\" te
+.\" Copyright (c) 2000 Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH YPSET 8 "Sep 14, 1992"
+.SH NAME
+ypset \- point ypbind at a particular server
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/sbin/ypset\fR [\fB-d\fR \fIypdomain\fR] [\fB-h\fR \fIhost\fR] \fIserver\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+In order to run \fBypset\fR, \fBypbind\fR must be initiated with the
+\fB\(miypset\fR or \fB\(miypsetme\fR options. See \fBypbind\fR(8). \fBypset\fR
+tells \fBypbind\fR to get NIS services for the specified \fIypdomain\fR from
+the \fBypserv\fR process running on \fIserver\fR. If \fIserver\fR is down, or
+is not running \fBypserv\fR, this might not be discovered until an NIS client
+process tries to obtain a binding for the domain. At this point, the binding
+set by \fBypset\fR is tested by \fBypbind\fR. If the binding is invalid,
+\fBypbind\fR attempts to rebind for the same domain.
+.sp
+.LP
+\fBypset\fR is useful for binding a client node that is not on a broadcast net,
+or is on a broadcast net that is not running an NIS server host. It is also
+useful for debugging NIS client applications, for instance, where an NIS map
+exists only at a single NIS server host.
+.sp
+.LP
+Where several hosts on the local net are supplying NIS services, \fBypbind\fR
+can rebind to another host, even while you attempt to find out if the
+\fBypset\fR operation succeeded. For example, if you enter the \fBypset\fR
+command below, you might get the subsequent response from \fBypwhich\fR:
+.sp
+.in +2
+.nf
+example% ypset host1
+example% ypwhich
+host2
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The sequence shown above is a function of the NIS subsystem's attempt to
+load-balance among the available NIS servers, and occurs when \fBhost1\fR does
+not respond to \fBypbind\fR because it is not running \fBypserv\fR (or is
+overloaded), and \fBhost2\fR, running \fBypserv\fR, obtains the binding.
+.sp
+.LP
+\fIserver\fR indicates which NIS server to bind to, and must be specified as a
+name or an IP address. This works only if the node has a current valid binding
+for the domain in question and \fBypbind\fR has been set to allow use of
+\fBypset\fR. In most cases, \fIserver\fR should be specified as an IP address.
+.sp
+.LP
+\fBypset\fR tries to bind over a connectionless transport. The NIS library
+call, \fByp_all()\fR, uses connection-oriented transport and derives the NIS
+server's address based on the connectionless address supplied by \fBypset\fR.
+.sp
+.LP
+Refer to \fBypfiles\fR(5) for an overview of the NIS name service.
+.SH OPTIONS
+.sp
+.ne 2
+.na
+\fB\fB-d\fR\fI ypdomain\fR\fR
+.ad
+.RS 15n
+Use \fIypdomain\fR, instead of the default domain.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-h\fR\fI host\fR\fR
+.ad
+.RS 15n
+Set \fBypbind\fR's binding on \fIhost\fR, instead of locally. Specify
+\fIhost\fR as a name.
+.RE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR ypwhich (1),
+.BR ypfiles (5),
+.BR attributes (7)
diff --git a/usr/src/man/man8/ypstart.8 b/usr/src/man/man8/ypstart.8
new file mode 100644
index 0000000000..e3fc02c0bf
--- /dev/null
+++ b/usr/src/man/man8/ypstart.8
@@ -0,0 +1,47 @@
+'\" te
+.\" Copyright (c) 2000, Sun Microsystems, Inc.
+.\" All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH YPSTART 8 "Oct 24, 1996"
+.SH NAME
+ypstart, ypstop \- Start and stop NIS services
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/netsvc/yp/ypstart\fR
+.fi
+
+.LP
+.nf
+\fB/usr/lib/netsvc/yp/ypstop\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBypstart\fR command is used to start the Network Information Service
+(NIS). After the host has been configured using the \fBypinit\fR(8) command,
+\fBypstart\fR automatically determines the \fBNIS\fR status of the machine and
+starts the appropriate daemons.
+.sp
+.LP
+The \fBypstop\fR command is used to stop the Network Information Service
+(NIS).
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7),
+.BR ypinit (8)
+.sp
+.LP
+\fI\fR
+.SH NOTES
+.sp
+.LP
+The Network Information Service (\fBNIS\fR) was formerly known as Sun Yellow
+Pages (\fBYP\fR). The functionality of the two services remains the same; only
+the name has changed. The name Yellow Pages is a registered trademark in the
+United Kingdom of British Telecommunications \fBPLC\fR, and must not be used
+without permission.
diff --git a/usr/src/man/man8/ypxfr.8 b/usr/src/man/man8/ypxfr.8
new file mode 100644
index 0000000000..6acf6e2978
--- /dev/null
+++ b/usr/src/man/man8/ypxfr.8
@@ -0,0 +1,189 @@
+'\" te
+.\" Copyright (c) 2000 Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH YPXFR 8 "Mar 11, 1998"
+.SH NAME
+ypxfr, ypxfr_1perday, ypxfr_1perhour, ypxfr_2perday \- transfer NIS map from a
+NIS server to host
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/netsvc/yp/ypxfr\fR [\fB-c\fR] [\fB-f\fR] [\fB-C\fR \fItid\fR \fIprog\fR \fIserver\fR]
+ [\fB-d\fR \fIypdomain\fR] [\fB-h\fR \fIhost\fR] [\fB-s\fR \fIypdomain\fR] \fImapname\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBypxfr\fR command moves an \fBNIS\fR map in the default domain for the
+local host to the local host by making use of normal \fBNIS\fR services. It
+creates a temporary map in the directory \fB/var/yp/\fR\fIypdomain\fR (this
+directory must already exist; \fIypdomain\fR is the default domain for the
+local host), fills it by enumerating the map's entries, fetches the map
+parameters (master and order number), and loads them. It then deletes any old
+versions of the map and moves the temporary map to the real \fIname\fR.
+.sp
+.LP
+If run interactively, \fBypxfr\fR writes its output to the terminal. However,
+if it is started without a controlling terminal, and if the log file
+\fB/var/yp/ypxfr.log\fR exists, it appends all its output to that file. Since
+\fBypxfr\fR is most often run from the privileged user's \fBcrontab\fR file, or
+by \fBypserv\fR, the log file can retain a record of what was attempted, and
+what the results were.
+.sp
+.LP
+For consistency between servers, \fBypxfr\fR should be run periodically for
+every map in the \fBNIS\fR data base. Different maps change at different rates:
+a map might not change for months at a time, for instance, and can therefore be
+checked only once a day. Some maps might change several times per day. In such
+a case, you might want to check hourly for updates. A \fBcrontab\fR(1) entry
+can be used to automatically perform periodic updates. Rather than having a
+separate \fBcrontab\fR entry for each map, you can group commands to update
+several maps in a shell script. Examples (mnemonically named) are in
+\fB/usr/sbin/yp\fR: \fBypxfr_1perday\fR, \fBypxfr_2perday\fR, and
+\fBypxfr_1perhour\fR.
+.sp
+.LP
+Refer to \fBypfiles\fR(5) for an overview of the NIS name service.
+.SH OPTIONS
+.sp
+.ne 2
+.na
+\fB\fB-c\fR\fR
+.ad
+.RS 22n
+Do not send a "Clear current map" request to the local \fBypserv\fR process.
+Use this flag if \fBypserv\fR is not running locally at the time you are
+running \fBypxfr\fR. Otherwise, \fBypxfr\fR complains that it cannot
+communicate with the local \fBypserv\fR, and the transfer fails.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-f\fR\fR
+.ad
+.RS 22n
+Force the transfer to occur even if the version at the master is not more
+recent than the local version.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-C\fR\fI tid prog server\fR\fR
+.ad
+.RS 22n
+This option is for use \fIonly\fR by \fBypserv\fR. When \fBypserv\fR starts
+\fBypxfr\fR, it specifies that \fBypxfr\fR should call back a \fByppush\fR
+process at the host \fIserver\fR, registered as program number \fIprog\fR, and
+waiting for a response to transaction \fItid\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-d\fR\fI ypdomain\fR\fR
+.ad
+.RS 22n
+Specify a domain other than the default domain.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-h\fR \fIhost\fR\fR
+.ad
+.RS 22n
+Get the map from \fIhost\fR, regardless of the master. If \fIhost\fR is not
+specified, \fBypxfr\fR asks the \fBNIS\fR service for the name of the master,
+and tries to get the map from there. \fIhost\fR must be a valid host name.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR\fI ypdomain\fR\fR
+.ad
+.RS 22n
+Specify a source domain from which to transfer a map that should be the same
+across domains.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/var/yp/ypxfr.log\fR\fR
+.ad
+.sp .6
+.RS 4n
+Log file
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/netsvc/yp/ypxfr_1perday\fR\fR
+.ad
+.sp .6
+.RS 4n
+Script to run one transfer per day, for use with \fBcron\fR(8)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/netsvc/yp/ypxfr_2perday\fR\fR
+.ad
+.sp .6
+.RS 4n
+Script to run two transfer per day, for use with \fBcron\fR(8)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/lib/netsvc/yp/ypxfr_1perhour\fR\fR
+.ad
+.sp .6
+.RS 4n
+Script for hourly transfers of volatile maps
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/var/yp/\fR\fIypdomain\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBNIS\fR domain
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/spool/cron/crontabs/root\fR\fR
+.ad
+.sp .6
+.RS 4n
+Privileged user's \fBcrontab\fR file
+.RE
+
+.SS "ypxfr_1perday, ypxfr_1perhour, and ypxfr_2perday"
+.sp
+
+.SH SEE ALSO
+.sp
+.LP
+.BR crontab (1),
+.BR ypfiles (5),
+.BR attributes (7),
+.BR cron (8),
+.BR ypinit (8),
+.BR yppush (8),
+.BR ypserv (8)
diff --git a/usr/src/man/man8/zdb.8 b/usr/src/man/man8/zdb.8
new file mode 100644
index 0000000000..a55102e2f0
--- /dev/null
+++ b/usr/src/man/man8/zdb.8
@@ -0,0 +1,425 @@
+.\"
+.\" This file and its contents are supplied under the terms of the
+.\" Common Development and Distribution License ("CDDL"), version 1.0.
+.\" You may only use this file in accordance with the terms of version
+.\" 1.0 of the CDDL.
+.\"
+.\" A full copy of the text of the CDDL should have accompanied this
+.\" source. A copy of the CDDL is also available via the Internet at
+.\" http://www.illumos.org/license/CDDL.
+.\"
+.\"
+.\" Copyright 2012, Richard Lowe.
+.\" Copyright (c) 2012, 2018 by Delphix. All rights reserved.
+.\" Copyright 2017 Nexenta Systems, Inc.
+.\"
+.Dd April 14, 2017
+.Dt ZDB 8
+.Os
+.Sh NAME
+.Nm zdb
+.Nd display zpool debugging and consistency information
+.Sh SYNOPSIS
+.Nm
+.Op Fl AbcdDFGhikLMPsvX
+.Op Fl e Oo Fl V Oc Op Fl p Ar path ...
+.Op Fl I Ar inflight I/Os
+.Oo Fl o Ar var Ns = Ns Ar value Oc Ns ...
+.Op Fl t Ar txg
+.Op Fl U Ar cache
+.Op Fl x Ar dumpdir
+.Op Ar poolname Op Ar object ...
+.Nm
+.Op Fl AdiPv
+.Op Fl e Oo Fl V Oc Op Fl p Ar path ...
+.Op Fl U Ar cache
+.Ar dataset Op Ar object ...
+.Nm
+.Fl C
+.Op Fl A
+.Op Fl U Ar cache
+.Nm
+.Fl E
+.Op Fl A
+.Ar word0 Ns \&: Ns Ar word1 Ns :...: Ns Ar word15
+.Nm
+.Fl l
+.Op Fl Aqu
+.Ar device
+.Nm
+.Fl m
+.Op Fl AFLPX
+.Op Fl e Oo Fl V Oc Op Fl p Ar path ...
+.Op Fl t Ar txg
+.Op Fl U Ar cache
+.Ar poolname Op Ar vdev Op Ar metaslab ...
+.Nm
+.Fl O
+.Ar dataset path
+.Nm
+.Fl R
+.Op Fl A
+.Op Fl e Oo Fl V Oc Op Fl p Ar path ...
+.Op Fl U Ar cache
+.Ar poolname vdev Ns \&: Ns Ar offset Ns \&: Ns Ar size Ns Op : Ns Ar flags
+.Nm
+.Fl S
+.Op Fl AP
+.Op Fl e Oo Fl V Oc Op Fl p Ar path ...
+.Op Fl U Ar cache
+.Ar poolname
+.Sh DESCRIPTION
+The
+.Nm
+utility displays information about a ZFS pool useful for debugging and performs
+some amount of consistency checking.
+It is a not a general purpose tool and options
+.Pq and facilities
+may change.
+This is neither a
+.Xr fsck 8
+nor an
+.Xr fsdb 8
+utility.
+.Pp
+The output of this command in general reflects the on-disk structure of a ZFS
+pool, and is inherently unstable.
+The precise output of most invocations is not documented, a knowledge of ZFS
+internals is assumed.
+.Pp
+If the
+.Ar dataset
+argument does not contain any
+.Qq Sy /
+or
+.Qq Sy @
+characters, it is interpreted as a pool name.
+The root dataset can be specified as
+.Ar pool Ns /
+.Pq pool name followed by a slash .
+.Pp
+When operating on an imported and active pool it is possible, though unlikely,
+that zdb may interpret inconsistent pool data and behave erratically.
+.Sh OPTIONS
+Display options:
+.Bl -tag -width Ds
+.It Fl b
+Display statistics regarding the number, size
+.Pq logical, physical and allocated
+and deduplication of blocks.
+.It Fl c
+Verify the checksum of all metadata blocks while printing block statistics
+.Po see
+.Fl b
+.Pc .
+.Pp
+If specified multiple times, verify the checksums of all blocks.
+.It Fl C
+Display information about the configuration.
+If specified with no other options, instead display information about the cache
+file
+.Pq Pa /etc/zfs/zpool.cache .
+To specify the cache file to display, see
+.Fl U .
+.Pp
+If specified multiple times, and a pool name is also specified display both the
+cached configuration and the on-disk configuration.
+If specified multiple times with
+.Fl e
+also display the configuration that would be used were the pool to be imported.
+.It Fl d
+Display information about datasets.
+Specified once, displays basic dataset information: ID, create transaction,
+size, and object count.
+.Pp
+If specified multiple times provides greater and greater verbosity.
+.Pp
+If object IDs are specified, display information about those specific objects
+only.
+.It Fl D
+Display deduplication statistics, including the deduplication ratio
+.Pq Sy dedup ,
+compression ratio
+.Pq Sy compress ,
+inflation due to the zfs copies property
+.Pq Sy copies ,
+and an overall effective ratio
+.Pq Sy dedup No * Sy compress No / Sy copies .
+.It Fl DD
+Display a histogram of deduplication statistics, showing the allocated
+.Pq physically present on disk
+and referenced
+.Pq logically referenced in the pool
+block counts and sizes by reference count.
+.It Fl DDD
+Display the statistics independently for each deduplication table.
+.It Fl DDDD
+Dump the contents of the deduplication tables describing duplicate blocks.
+.It Fl DDDDD
+Also dump the contents of the deduplication tables describing unique blocks.
+.It Fl E Ar word0 Ns \&: Ns Ar word1 Ns :...: Ns Ar word15
+Decode and display block from an embedded block pointer specified by the
+.Ar word
+arguments.
+.It Fl h
+Display pool history similar to
+.Nm zpool Cm history ,
+but include internal changes, transaction, and dataset information.
+.It Fl i
+Display information about intent log
+.Pq ZIL
+entries relating to each dataset.
+If specified multiple times, display counts of each intent log transaction type.
+.It Fl k
+Examine the checkpointed state of the pool.
+Note, the on disk format of the pool is not reverted to the checkpointed state.
+.It Fl l Ar device
+Read the vdev labels and L2ARC header from the specified device.
+.Nm Fl l
+will return 0 if valid label was found, 1 if error occurred, and 2 if no valid
+labels were found.
+The presence of L2ARC header is indicated by a specific
+sequence (L2ARC_DEV_HDR_MAGIC).
+If there is an accounting error in the size or the number of L2ARC log blocks
+.Nm Fl l
+will return 1.
+Each unique configuration is displayed only once.
+.It Fl ll Ar device
+In addition display label space usage stats.
+If a valid L2ARC header was found also display the properties of log blocks
+used for restoring L2ARC contents (persistent L2ARC).
+.It Fl lll Ar device
+Display every configuration, unique or not.
+If a valid L2ARC header was found also display the properties of log entries in
+log blocks used for restoring L2ARC contents (persistent L2ARC).
+.Pp
+If the
+.Fl q
+option is also specified, don't print the labels or the L2ARC header.
+.Pp
+If the
+.Fl u
+option is also specified, also display the uberblocks on this device.
+Specify multiple times to increase verbosity.
+.It Fl L
+Disable leak detection and the loading of space maps.
+By default,
+.Nm
+verifies that all non-free blocks are referenced, which can be very expensive.
+.It Fl m
+Display the offset, spacemap, free space of each metaslab, all the log
+spacemaps and their obsolete entry statistics.
+.It Fl mm
+Also display information about the on-disk free space histogram associated with
+each metaslab.
+.It Fl mmm
+Display the maximum contiguous free space, the in-core free space histogram, and
+the percentage of free space in each space map.
+.It Fl mmmm
+Display every spacemap record.
+.It Fl M
+Display the offset, spacemap, and free space of each metaslab.
+.It Fl MM
+Also display information about the maximum contiguous free space and the
+percentage of free space in each space map.
+.It Fl MMM
+Display every spacemap record.
+.It Fl O Ar dataset path
+Look up the specified
+.Ar path
+inside of the
+.Ar dataset
+and display its metadata and indirect blocks.
+Specified
+.Ar path
+must be relative to the root of
+.Ar dataset .
+This option can be combined with
+.Fl v
+for increasing verbosity.
+.It Xo
+.Fl R Ar poolname vdev Ns \&: Ns Ar offset Ns \&: Ns Ar size Ns Op : Ns Ar flags
+.Xc
+Read and display a block from the specified device.
+By default the block is displayed as a hex dump, but see the description of the
+.Sy r
+flag, below.
+.Pp
+The block is specified in terms of a colon-separated tuple
+.Ar vdev
+.Pq an integer vdev identifier
+.Ar offset
+.Pq the offset within the vdev
+.Ar size
+.Pq the size of the block to read
+and, optionally,
+.Ar flags
+.Pq a set of flags, described below .
+.Pp
+.Bl -tag -compact -width "b offset"
+.It Sy b Ar offset
+Print block pointer
+.It Sy d
+Decompress the block
+.It Sy e
+Byte swap the block
+.It Sy g
+Dump gang block header
+.It Sy i
+Dump indirect block
+.It Sy r
+Dump raw uninterpreted block data
+.El
+.It Fl s
+Report statistics on
+.Nm zdb
+I/O.
+Display operation counts, bandwidth, and error counts of I/O to the pool from
+.Nm .
+.It Fl S
+Simulate the effects of deduplication, constructing a DDT and then display
+that DDT as with
+.Fl DD .
+.It Fl u
+Display the current uberblock.
+.El
+.Pp
+Other options:
+.Bl -tag -width Ds
+.It Fl A
+Do not abort should any assertion fail.
+.It Fl AA
+Enable panic recovery, certain errors which would otherwise be fatal are
+demoted to warnings.
+.It Fl AAA
+Do not abort if asserts fail and also enable panic recovery.
+.It Fl e Op Fl p Ar path ...
+Operate on an exported pool, not present in
+.Pa /etc/zfs/zpool.cache .
+The
+.Fl p
+flag specifies the path under which devices are to be searched.
+.It Fl x Ar dumpdir
+All blocks accessed will be copied to files in the specified directory.
+The blocks will be placed in sparse files whose name is the same as
+that of the file or device read.
+.Nm
+can be then run on the generated files.
+Note that the
+.Fl bbc
+flags are sufficient to access
+.Pq and thus copy
+all metadata on the pool.
+.It Fl F
+Attempt to make an unreadable pool readable by trying progressively older
+transactions.
+.It Fl G
+Dump the contents of the zfs_dbgmsg buffer before exiting
+.Nm .
+zfs_dbgmsg is a buffer used by ZFS to dump advanced debug information.
+.It Fl I Ar inflight I/Os
+Limit the number of outstanding checksum I/Os to the specified value.
+The default value is 200.
+This option affects the performance of the
+.Fl c
+option.
+.It Fl o Ar var Ns = Ns Ar value ...
+Set the given global libzpool variable to the provided value.
+The value must be an unsigned 32-bit integer.
+Currently only little-endian systems are supported to avoid accidentally setting
+the high 32 bits of 64-bit variables.
+.It Fl P
+Print numbers in an unscaled form more amenable to parsing, eg. 1000000 rather
+than 1M.
+.It Fl t Ar transaction
+Specify the highest transaction to use when searching for uberblocks.
+See also the
+.Fl u
+and
+.Fl l
+options for a means to see the available uberblocks and their associated
+transaction numbers.
+.It Fl U Ar cachefile
+Use a cache file other than
+.Pa /etc/zfs/zpool.cache .
+.It Fl v
+Enable verbosity.
+Specify multiple times for increased verbosity.
+.It Fl V
+Attempt verbatim import.
+This mimics the behavior of the kernel when loading a pool from a cachefile.
+Only usable with
+.Fl e .
+.It Fl X
+Attempt
+.Qq extreme
+transaction rewind, that is attempt the same recovery as
+.Fl F
+but read transactions otherwise deemed too old.
+.El
+.Pp
+Specifying a display option more than once enables verbosity for only that
+option, with more occurrences enabling more verbosity.
+.Pp
+If no options are specified, all information about the named pool will be
+displayed at default verbosity.
+.Sh EXAMPLES
+.Bl -tag -width Ds
+.It Xo
+.Sy Example 1
+Display the configuration of imported pool
+.Pa rpool
+.Xc
+.Bd -literal
+# zdb -C rpool
+
+MOS Configuration:
+ version: 28
+ name: 'rpool'
+ ...
+.Ed
+.It Xo
+.Sy Example 2
+Display basic dataset information about
+.Pa rpool
+.Xc
+.Bd -literal
+# zdb -d rpool
+Dataset mos [META], ID 0, cr_txg 4, 26.9M, 1051 objects
+Dataset rpool/swap [ZVOL], ID 59, cr_txg 356, 486M, 2 objects
+ ...
+.Ed
+.It Xo
+.Sy Example 3
+Display basic information about object 0 in
+.Pa rpool/export/home
+.Xc
+.Bd -literal
+# zdb -d rpool/export/home 0
+Dataset rpool/export/home [ZPL], ID 137, cr_txg 1546, 32K, 8 objects
+
+ Object lvl iblk dblk dsize lsize %full type
+ 0 7 16K 16K 15.0K 16K 25.00 DMU dnode
+.Ed
+.It Xo
+.Sy Example 4
+Display the predicted effect of enabling deduplication on
+.Pa rpool
+.Xc
+.Bd -literal
+# zdb -S rpool
+Simulated DDT histogram:
+
+bucket allocated referenced
+______ ______________________________ ______________________________
+refcnt blocks LSIZE PSIZE DSIZE blocks LSIZE PSIZE DSIZE
+------ ------ ----- ----- ----- ------ ----- ----- -----
+ 1 694K 27.1G 15.0G 15.0G 694K 27.1G 15.0G 15.0G
+ 2 35.0K 1.33G 699M 699M 74.7K 2.79G 1.45G 1.45G
+ ...
+dedup = 1.11, compress = 1.80, copies = 1.00, dedup * compress / copies = 2.00
+.Ed
+.El
+.Sh SEE ALSO
+.Xr zfs 8 ,
+.Xr zpool 8
diff --git a/usr/src/man/man8/zdump.8 b/usr/src/man/man8/zdump.8
new file mode 100644
index 0000000000..456baa2e41
--- /dev/null
+++ b/usr/src/man/man8/zdump.8
@@ -0,0 +1,123 @@
+'\" te
+.\" Copyright (c) 2000 Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH ZDUMP 8 "Jan 3, 2006"
+.SH NAME
+zdump \- time zone dumper
+.SH SYNOPSIS
+.LP
+.nf
+\fBzdump\fR [\fB--\fR\fIversion\fR] [\fB-v\fR] [\fB-c\fR [\fIloyear\fR,]\fIhiyear\fR] [\fIzonename\fR]...
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBzdump\fR command prints the current time for each time zone
+(\fIzonename\fR) listed on the command line. Specify \fIzonename\fR as the name
+of the time zone database file relative to \fB/usr/share/lib/zoneinfo\fR.
+.sp
+.LP
+Specifying an invalid time zone (\fIzonename\fR) to \fBzdump\fR does not return
+an error, rather \fBzdump\fR uses \fBGMTO.\fR This is consistent with the
+behavior of the library calls; \fBzdump\fR reflects the same behavior of the
+time routines in \fBlibc\fR. See \fBctime\fR(3C) and \fBmktime\fR(3C).
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB--\fR\fIversion\fR\fR
+.ad
+.RS 22n
+Outputs version information and exits.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.RS 22n
+Displays the entire contents of the time zone database file for \fIzonename\fR.
+Prints the time at the lowest possible time value; the time one day after the
+lowest possible time value; the times both one second before and exactly at
+each time at which the rules for computing local time change; the time at the
+highest possible time value; and the time at one day less than the highest
+possible time value. See \fBmktime\fR(3C) and \fBctime\fR(3C) for information
+regarding time value (\fBtime_t\fR). Each line of output ends with
+\fBisdst=1\fR if the given time is Daylight Saving Time, or \fBisdst=0\fR
+otherwise.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-c\fR [\fIloyear\fR],\fIhiyear\fR\fR
+.ad
+.RS 22n
+Cuts off the verbose output near the start of the given year(s) . By default,
+the program cuts off verbose output near the start of the years -500 and 2500.
+.RE
+
+.SH EXIT STATUS
+.sp
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.RS 5n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB1\fR\fR
+.ad
+.RS 5n
+An error occurred.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/usr/share/lib/zoneinfo\fR\fR
+.ad
+.RS 27n
+Standard zone information directory
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Stable
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR ctime (3C),
+.BR mktime (3C),
+.BR attributes (7),
+.BR environ (7),
+.BR zic (8)
diff --git a/usr/src/man/man8/zfs-program.8 b/usr/src/man/man8/zfs-program.8
new file mode 100644
index 0000000000..bd454d85b2
--- /dev/null
+++ b/usr/src/man/man8/zfs-program.8
@@ -0,0 +1,602 @@
+.\" This file and its contents are supplied under the terms of the
+.\" Common Development and Distribution License ("CDDL"), version 1.0.
+.\" You may only use this file in accordance with the terms of version
+.\" 1.0 of the CDDL.
+.\"
+.\" A full copy of the text of the CDDL should have accompanied this
+.\" source. A copy of the CDDL is also available via the Internet at
+.\" http://www.illumos.org/license/CDDL.
+.\"
+.\"
+.\" Copyright (c) 2016, 2017 by Delphix. All rights reserved.
+.\" Copyright (c) 2018 Datto Inc.
+.\" Copyright 2020 Joyent, Inc.
+.\" Copyright 2021 Jason King
+.\"
+.Dd November 8, 2021
+.Dt ZFS-PROGRAM 8
+.Os
+.Sh NAME
+.Nm "zfs program"
+.Nd executes ZFS channel programs
+.Sh SYNOPSIS
+.Cm "zfs program"
+.Op Fl jn
+.Op Fl t Ar instruction-limit
+.Op Fl m Ar memory-limit
+.Ar pool
+.Ar script
+.\".Op Ar optional arguments to channel program
+.Sh DESCRIPTION
+The ZFS channel program interface allows ZFS administrative operations to be
+run programmatically as a Lua script.
+The entire script is executed atomically, with no other administrative
+operations taking effect concurrently.
+A library of ZFS calls is made available to channel program scripts.
+Channel programs may only be run with root privileges.
+.Pp
+A modified version of the Lua 5.2 interpreter is used to run channel program
+scripts.
+The Lua 5.2 manual can be found at:
+.Bd -centered -offset indent
+.Lk http://www.lua.org/manual/5.2/
+.Ed
+.Pp
+The channel program given by
+.Ar script
+will be run on
+.Ar pool ,
+and any attempts to access or modify other pools will cause an error.
+.Sh OPTIONS
+.Bl -tag -width "-t"
+.It Fl j
+Display channel program output in JSON format.
+When this flag is specified and standard output is empty -
+channel program encountered an error.
+The details of such an error will be printed to standard error in plain text.
+.It Fl n
+Executes a read-only channel program, which runs faster.
+The program cannot change on-disk state by calling functions from the
+zfs.sync submodule.
+The program can be used to gather information such as properties and
+determining if changes would succeed (zfs.check.*).
+Without this flag, all pending changes must be synced to disk before a
+channel program can complete.
+.It Fl t Ar instruction-limit
+Execution time limit, in number of Lua instructions to execute.
+If a channel program executes more than the specified number of instructions,
+it will be stopped and an error will be returned.
+The default limit is 10 million instructions, and it can be set to a maximum of
+100 million instructions.
+.It Fl m Ar memory-limit
+Memory limit, in bytes.
+If a channel program attempts to allocate more memory than the given limit, it
+will be stopped and an error returned.
+The default memory limit is 10 MB, and can be set to a maximum of 100 MB.
+.El
+.Pp
+All remaining argument strings will be passed directly to the Lua script as
+described in the
+.Sx LUA INTERFACE
+section below.
+.Sh LUA INTERFACE
+A channel program can be invoked either from the command line, or via a library
+call to
+.Fn lzc_channel_program .
+.Ss Arguments
+Arguments passed to the channel program are converted to a Lua table.
+If invoked from the command line, extra arguments to the Lua script will be
+accessible as an array stored in the argument table with the key 'argv':
+.Bd -literal -offset indent
+args = ...
+argv = args["argv"]
+-- argv == {1="arg1", 2="arg2", ...}
+.Ed
+.Pp
+If invoked from the libZFS interface, an arbitrary argument list can be
+passed to the channel program, which is accessible via the same
+"..." syntax in Lua:
+.Bd -literal -offset indent
+args = ...
+-- args == {"foo"="bar", "baz"={...}, ...}
+.Ed
+.Pp
+Note that because Lua arrays are 1-indexed, arrays passed to Lua from the
+libZFS interface will have their indices incremented by 1.
+That is, the element
+in
+.Va arr[0]
+in a C array passed to a channel program will be stored in
+.Va arr[1]
+when accessed from Lua.
+.Ss Return Values
+Lua return statements take the form:
+.Bd -literal -offset indent
+return ret0, ret1, ret2, ...
+.Ed
+.Pp
+Return statements returning multiple values are permitted internally in a
+channel program script, but attempting to return more than one value from the
+top level of the channel program is not permitted and will throw an error.
+However, tables containing multiple values can still be returned.
+If invoked from the command line, a return statement:
+.Bd -literal -offset indent
+a = {foo="bar", baz=2}
+return a
+.Ed
+.Pp
+Will be output formatted as:
+.Bd -literal -offset indent
+Channel program fully executed with return value:
+ return:
+ baz: 2
+ foo: 'bar'
+.Ed
+.Ss Fatal Errors
+If the channel program encounters a fatal error while running, a non-zero exit
+status will be returned.
+If more information about the error is available, a singleton list will be
+returned detailing the error:
+.Bd -literal -offset indent
+error: "error string, including Lua stack trace"
+.Ed
+.Pp
+If a fatal error is returned, the channel program may have not executed at all,
+may have partially executed, or may have fully executed but failed to pass a
+return value back to userland.
+.Pp
+If the channel program exhausts an instruction or memory limit, a fatal error
+will be generated and the program will be stopped, leaving the program partially
+executed.
+No attempt is made to reverse or undo any operations already performed.
+Note that because both the instruction count and amount of memory used by a
+channel program are deterministic when run against the same inputs and
+filesystem state, as long as a channel program has run successfully once, you
+can guarantee that it will finish successfully against a similar size system.
+.Pp
+If a channel program attempts to return too large a value, the program will
+fully execute but exit with a nonzero status code and no return value.
+.Pp
+.Em Note :
+ZFS API functions do not generate Fatal Errors when correctly invoked, they
+return an error code and the channel program continues executing.
+See the
+.Sx ZFS API
+section below for function-specific details on error return codes.
+.Ss Lua to C Value Conversion
+When invoking a channel program via the libZFS interface, it is necessary to
+translate arguments and return values from Lua values to their C equivalents,
+and vice-versa.
+.Pp
+There is a correspondence between nvlist values in C and Lua tables.
+A Lua table which is returned from the channel program will be recursively
+converted to an nvlist, with table values converted to their natural
+equivalents:
+.Bd -literal -offset indent
+string -> string
+number -> int64
+boolean -> boolean_value
+nil -> boolean (no value)
+table -> nvlist
+.Ed
+.Pp
+Likewise, table keys are replaced by string equivalents as follows:
+.Bd -literal -offset indent
+string -> no change
+number -> signed decimal string ("%lld")
+boolean -> "true" | "false"
+.Ed
+.Pp
+Any collision of table key strings (for example, the string "true" and a
+true boolean value) will cause a fatal error.
+.Pp
+Lua numbers are represented internally as signed 64-bit integers.
+.Sh LUA STANDARD LIBRARY
+The following Lua built-in base library functions are available:
+.Bd -literal -offset indent
+assert rawlen
+collectgarbage rawget
+error rawset
+getmetatable select
+ipairs setmetatable
+next tonumber
+pairs tostring
+rawequal type
+.Ed
+.Pp
+All functions in the
+.Em coroutine ,
+.Em string ,
+and
+.Em table
+built-in submodules are also available.
+A complete list and documentation of these modules is available in the Lua
+manual.
+.Pp
+The following functions base library functions have been disabled and are
+not available for use in channel programs:
+.Bd -literal -offset indent
+dofile
+loadfile
+load
+pcall
+print
+xpcall
+.Ed
+.Sh ZFS API
+.Ss Function Arguments
+Each API function takes a fixed set of required positional arguments and
+optional keyword arguments.
+For example, the destroy function takes a single positional string argument
+(the name of the dataset to destroy) and an optional "defer" keyword boolean
+argument.
+When using parentheses to specify the arguments to a Lua function, only
+positional arguments can be used:
+.Bd -literal -offset indent
+zfs.sync.destroy("rpool@snap")
+.Ed
+.Pp
+To use keyword arguments, functions must be called with a single argument that
+is a Lua table containing entries mapping integers to positional arguments and
+strings to keyword arguments:
+.Bd -literal -offset indent
+zfs.sync.destroy({1="rpool@snap", defer=true})
+.Ed
+.Pp
+The Lua language allows curly braces to be used in place of parenthesis as
+syntactic sugar for this calling convention:
+.Bd -literal -offset indent
+zfs.sync.snapshot{"rpool@snap", defer=true}
+.Ed
+.Ss Function Return Values
+If an API function succeeds, it returns 0.
+If it fails, it returns an error code and the channel program continues
+executing.
+API functions do not generate Fatal Errors except in the case of an
+unrecoverable internal file system error.
+.Pp
+In addition to returning an error code, some functions also return extra
+details describing what caused the error.
+This extra description is given as a second return value, and will always be a
+Lua table, or Nil if no error details were returned.
+Different keys will exist in the error details table depending on the function
+and error case.
+Any such function may be called expecting a single return value:
+.Bd -literal -offset indent
+errno = zfs.sync.promote(dataset)
+.Ed
+.Pp
+Or, the error details can be retrieved:
+.Bd -literal -offset indent
+errno, details = zfs.sync.promote(dataset)
+if (errno == EEXIST) then
+ assert(details ~= Nil)
+ list_of_conflicting_snapshots = details
+end
+.Ed
+.Pp
+The following global aliases for API function error return codes are defined
+for use in channel programs:
+.Bd -literal -offset indent
+EPERM ECHILD ENODEV ENOSPC
+ENOENT EAGAIN ENOTDIR ESPIPE
+ESRCH ENOMEM EISDIR EROFS
+EINTR EACCES EINVAL EMLINK
+EIO EFAULT ENFILE EPIPE
+ENXIO ENOTBLK EMFILE EDOM
+E2BIG EBUSY ENOTTY ERANGE
+ENOEXEC EEXIST ETXTBSY EDQUOT
+EBADF EXDEV EFBIG
+.Ed
+.Ss API Functions
+For detailed descriptions of the exact behavior of any zfs administrative
+operations, see the main
+.Xr zfs 8
+manual page.
+.Bl -tag -width "xx"
+.It Em zfs.debug(msg)
+Record a debug message in the zfs_dbgmsg log.
+A log of these messages can be printed via mdb's "::zfs_dbgmsg" command, or
+can be monitored live by running:
+.Bd -literal -offset indent
+ dtrace -n 'zfs-dbgmsg{trace(stringof(arg0))}'
+.Ed
+.Pp
+msg (string)
+.Bd -ragged -compact -offset "xxxx"
+Debug message to be printed.
+.Ed
+.It Em zfs.exists(dataset)
+Returns true if the given dataset exists, or false if it doesn't.
+A fatal error will be thrown if the dataset is not in the target pool.
+That is, in a channel program running on rpool,
+zfs.exists("rpool/nonexistent_fs") returns false, but
+zfs.exists("somepool/fs_that_may_exist") will error.
+.Pp
+dataset (string)
+.Bd -ragged -compact -offset "xxxx"
+Dataset to check for existence.
+Must be in the target pool.
+.Ed
+.It Em zfs.get_prop(dataset, property)
+Returns two values.
+First, a string, number or table containing the property value for the given
+dataset.
+Second, a string containing the source of the property (i.e. the name of the
+dataset in which it was set or nil if it is readonly).
+Throws a Lua error if the dataset is invalid or the property doesn't exist.
+Note that Lua only supports int64 number types whereas ZFS number properties
+are uint64.
+This means very large values (like guid) may wrap around and appear negative.
+.Pp
+dataset (string)
+.Bd -ragged -compact -offset "xxxx"
+Filesystem or snapshot path to retrieve properties from.
+.Ed
+.Pp
+property (string)
+.Bd -ragged -compact -offset "xxxx"
+Name of property to retrieve.
+All filesystem, snapshot and volume properties are supported except
+for 'mounted' and 'iscsioptions.'
+Also supports the 'written@snap' and 'written#bookmark' properties and
+the '<user|group><quota|used>@id' properties, though the id must be in numeric
+form.
+.Ed
+.El
+.Bl -tag -width "xx"
+.It Sy zfs.sync submodule
+The sync submodule contains functions that modify the on-disk state.
+They are executed in "syncing context".
+.Pp
+The available sync submodule functions are as follows:
+.Bl -tag -width "xx"
+.It Em zfs.sync.change_key(dataset, key)
+Change the dataset encryption key.
+.Fa key
+must be in the format (raw or hex) specified by the dataset
+.Sy keyformat
+property.
+.It Em zfs.sync.destroy(dataset, [defer=true|false])
+Destroy the given dataset.
+Returns 0 on successful destroy, or a nonzero error code if the dataset could
+not be destroyed (for example, if the dataset has any active children or
+clones).
+.Pp
+dataset (string)
+.Bd -ragged -compact -offset "xxxx"
+Filesystem or snapshot to be destroyed.
+.Ed
+.Pp
+[optional] defer (boolean)
+.Bd -ragged -compact -offset "xxxx"
+Valid only for destroying snapshots.
+If set to true, and the snapshot has holds or clones, allows the snapshot to be
+marked for deferred deletion rather than failing.
+.Ed
+.It Em zfs.sync.inherit(dataset, property)
+Clears the specified property in the given dataset, causing it to be inherited
+from an ancestor, or restored to the default if no ancestor property is set.
+The
+.Ql zfs inherit -S
+option has not been implemented.
+Returns 0 on success, or a nonzero error code if the property could not be
+cleared.
+.Pp
+dataset (string)
+.Bd -ragged -compact -offset "xxxx"
+Filesystem or snapshot containing the property to clear.
+.Ed
+.Pp
+property (string)
+.Bd -ragged -compact -offset "xxxx"
+The property to clear.
+Allowed properties are the same as those for the
+.Nm zfs Cm inherit
+command.
+.Ed
+.It Em zfs.sync.promote(dataset)
+Promote the given clone to a filesystem.
+Returns 0 on successful promotion, or a nonzero error code otherwise.
+If EEXIST is returned, the second return value will be an array of the clone's
+snapshots whose names collide with snapshots of the parent filesystem.
+.Pp
+dataset (string)
+.Bd -ragged -compact -offset "xxxx"
+Clone to be promoted.
+.Ed
+.It Em zfs.sync.rollback(filesystem)
+Rollback to the previous snapshot for a dataset.
+Returns 0 on successful rollback, or a nonzero error code otherwise.
+Rollbacks can be performed on filesystems or zvols, but not on snapshots
+or mounted datasets.
+EBUSY is returned in the case where the filesystem is mounted.
+.Pp
+filesystem (string)
+.Bd -ragged -compact -offset "xxxx"
+Filesystem to rollback.
+.Ed
+.It Em zfs.sync.set_prop(dataset, property, value)
+Sets the given property on a dataset.
+Currently only user properties are supported.
+Returns 0 if the property was set, or a nonzero error code otherwise.
+.Pp
+dataset (string)
+.Bd -ragged -compact -offset "xxxx"
+The dataset where the property will be set.
+.Ed
+.Pp
+property (string)
+.Bd -ragged -compact -offset "xxxx"
+The property to set.
+Only user properties are supported.
+.Ed
+.Pp
+value (string)
+.Bd -ragged -compact -offset "xxxx"
+The value of the property to be set.
+.Ed
+.It Em zfs.sync.snapshot(dataset)
+Create a snapshot of a filesystem.
+Returns 0 if the snapshot was successfully created,
+and a nonzero error code otherwise.
+.Pp
+Note: Taking a snapshot will fail on any pool older than legacy version 27.
+To enable taking snapshots from ZCP scripts, the pool must be upgraded.
+.Pp
+dataset (string)
+.Bd -ragged -compact -offset "xxxx"
+Name of snapshot to create.
+.Ed
+.El
+.It Sy zfs.check submodule
+For each function in the zfs.sync submodule, there is a corresponding zfs.check
+function which performs a "dry run" of the same operation.
+Each takes the same arguments as its zfs.sync counterpart and returns 0 if the
+operation would succeed, or a non-zero error code if it would fail, along with
+any other error details.
+That is, each has the same behavior as the corresponding sync function except
+for actually executing the requested change.
+For example,
+.Em zfs.check.destroy("fs")
+returns 0 if
+.Em zfs.sync.destroy("fs")
+would successfully destroy the dataset.
+.Pp
+The available zfs.check functions are:
+.Bl -tag -width "xx"
+.It Em zfs.check.change_key(dataset, key)
+.It Em zfs.check.destroy(dataset, [defer=true|false])
+.It Em zfs.check.promote(dataset)
+.It Em zfs.check.rollback(filesystem)
+.It Em zfs.check.set_property(dataset, property, value)
+.It Em zfs.check.snapshot(dataset)
+.El
+.It Sy zfs.list submodule
+The zfs.list submodule provides functions for iterating over datasets and
+properties.
+Rather than returning tables, these functions act as Lua iterators, and are
+generally used as follows:
+.Bd -literal -offset indent
+for child in zfs.list.children("rpool") do
+ ...
+end
+.Ed
+.Pp
+The available zfs.list functions are:
+.Bl -tag -width "xx"
+.It Em zfs.list.clones(snapshot)
+Iterate through all clones of the given snapshot.
+.Pp
+snapshot (string)
+.Bd -ragged -compact -offset "xxxx"
+Must be a valid snapshot path in the current pool.
+.Ed
+.It Em zfs.list.snapshots(dataset)
+Iterate through all snapshots of the given dataset.
+Each snapshot is returned as a string containing the full dataset name, e.g.
+"pool/fs@snap".
+.Pp
+dataset (string)
+.Bd -ragged -compact -offset "xxxx"
+Must be a valid filesystem or volume.
+.Ed
+.It Em zfs.list.children(dataset)
+Iterate through all direct children of the given dataset.
+Each child is returned as a string containing the full dataset name, e.g.
+"pool/fs/child".
+.Pp
+dataset (string)
+.Bd -ragged -compact -offset "xxxx"
+Must be a valid filesystem or volume.
+.Ed
+.It Em zfs.list.properties(dataset)
+Iterate through all user properties for the given dataset.
+.Pp
+dataset (string)
+.Bd -ragged -compact -offset "xxxx"
+Must be a valid filesystem, snapshot, or volume.
+.Ed
+.It Em zfs.list.system_properties(dataset)
+Returns an array of strings, the names of the valid system (non-user defined)
+properties for the given dataset.
+Throws a Lua error if the dataset is invalid.
+.Pp
+dataset (string)
+.Bd -ragged -compact -offset "xxxx"
+Must be a valid filesystem, snapshot or volume.
+.Ed
+.El
+.El
+.Sh EXAMPLES
+.Ss Example 1
+The following channel program recursively destroys a filesystem and all its
+snapshots and children in a naive manner.
+Note that this does not involve any error handling or reporting.
+.Bd -literal -offset indent
+function destroy_recursive(root)
+ for child in zfs.list.children(root) do
+ destroy_recursive(child)
+ end
+ for snap in zfs.list.snapshots(root) do
+ zfs.sync.destroy(snap)
+ end
+ zfs.sync.destroy(root)
+end
+destroy_recursive("pool/somefs")
+.Ed
+.Ss Example 2
+A more verbose and robust version of the same channel program, which
+properly detects and reports errors, and also takes the dataset to destroy
+as a command line argument, would be as follows:
+.Bd -literal -offset indent
+succeeded = {}
+failed = {}
+
+function destroy_recursive(root)
+ for child in zfs.list.children(root) do
+ destroy_recursive(child)
+ end
+ for snap in zfs.list.snapshots(root) do
+ err = zfs.sync.destroy(snap)
+ if (err ~= 0) then
+ failed[snap] = err
+ else
+ succeeded[snap] = err
+ end
+ end
+ err = zfs.sync.destroy(root)
+ if (err ~= 0) then
+ failed[root] = err
+ else
+ succeeded[root] = err
+ end
+end
+
+args = ...
+argv = args["argv"]
+
+destroy_recursive(argv[1])
+
+results = {}
+results["succeeded"] = succeeded
+results["failed"] = failed
+return results
+.Ed
+.Ss Example 3
+The following function performs a forced promote operation by attempting to
+promote the given clone and destroying any conflicting snapshots.
+.Bd -literal -offset indent
+function force_promote(ds)
+ errno, details = zfs.check.promote(ds)
+ if (errno == EEXIST) then
+ assert(details ~= Nil)
+ for i, snap in ipairs(details) do
+ zfs.sync.destroy(ds .. "@" .. snap)
+ end
+ elseif (errno ~= 0) then
+ return errno
+ end
+ return zfs.sync.promote(ds)
+end
+.Ed
diff --git a/usr/src/man/man8/zfs.8 b/usr/src/man/man8/zfs.8
new file mode 100644
index 0000000000..dd357ee5ac
--- /dev/null
+++ b/usr/src/man/man8/zfs.8
@@ -0,0 +1,4855 @@
+.\"
+.\" CDDL HEADER START
+.\"
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.\"
+.\" CDDL HEADER END
+.\"
+.\"
+.\" Copyright (c) 2009 Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 2011 Joshua M. Clulow <josh@sysmgr.org>
+.\" Copyright (c) 2011, 2016 by Delphix. All rights reserved.
+.\" Copyright (c) 2013 by Saso Kiselkov. All rights reserved.
+.\" Copyright (c) 2014 by Adam Stevko. All rights reserved.
+.\" Copyright (c) 2014 Integros [integros.com]
+.\" Copyright 2018 Nexenta Systems, Inc.
+.\" Copyright 2019 Joyent, Inc.
+.\" Copyright (c) 2018 Datto Inc.
+.\"
+.Dd Jul 22, 2019
+.Dt ZFS 8
+.Os
+.Sh NAME
+.Nm zfs
+.Nd configures ZFS file systems
+.Sh SYNOPSIS
+.Nm
+.Op Fl \&?
+.Nm
+.Cm create
+.Op Fl Pnpv
+.Oo Fl o Ar property Ns = Ns Ar value Oc Ns ...
+.Ar filesystem
+.Nm
+.Cm create
+.Op Fl Pnpsv
+.Op Fl b Ar blocksize
+.Oo Fl o Ar property Ns = Ns Ar value Oc Ns ...
+.Fl V Ar size Ar volume
+.Nm
+.Cm destroy
+.Op Fl Rfnprv
+.Ar filesystem Ns | Ns Ar volume
+.Nm
+.Cm destroy
+.Op Fl Rdnprv
+.Ar filesystem Ns | Ns Ar volume Ns @ Ns Ar snap Ns
+.Oo % Ns Ar snap Ns Oo , Ns Ar snap Ns Oo % Ns Ar snap Oc Oc Oc Ns ...
+.Nm
+.Cm destroy
+.Ar filesystem Ns | Ns Ar volume Ns # Ns Ar bookmark
+.Nm
+.Cm snapshot
+.Op Fl r
+.Oo Fl o Ar property Ns = Ns value Oc Ns ...
+.Ar filesystem Ns @ Ns Ar snapname Ns | Ns Ar volume Ns @ Ns Ar snapname Ns ...
+.Nm
+.Cm rollback
+.Op Fl Rfr
+.Ar snapshot
+.Nm
+.Cm clone
+.Op Fl p
+.Oo Fl o Ar property Ns = Ns Ar value Oc Ns ...
+.Ar snapshot Ar filesystem Ns | Ns Ar volume
+.Nm
+.Cm promote
+.Ar clone-filesystem
+.Nm
+.Cm rename
+.Op Fl f
+.Ar filesystem Ns | Ns Ar volume Ns | Ns Ar snapshot
+.Ar filesystem Ns | Ns Ar volume Ns | Ns Ar snapshot
+.Nm
+.Cm rename
+.Op Fl fp
+.Ar filesystem Ns | Ns Ar volume
+.Ar filesystem Ns | Ns Ar volume
+.Nm
+.Cm rename
+.Fl r
+.Ar snapshot Ar snapshot
+.Nm
+.Cm list
+.Op Fl r Ns | Ns Fl d Ar depth
+.Op Fl Hp
+.Oo Fl o Ar property Ns Oo , Ns Ar property Oc Ns ... Oc
+.Oo Fl s Ar property Oc Ns ...
+.Oo Fl S Ar property Oc Ns ...
+.Oo Fl t Ar type Ns Oo , Ns Ar type Oc Ns ... Oc
+.Oo Ar filesystem Ns | Ns Ar volume Ns | Ns Ar snapshot Oc Ns ...
+.Nm
+.Cm remap
+.Ar filesystem Ns | Ns Ar volume
+.Nm
+.Cm set
+.Ar property Ns = Ns Ar value Oo Ar property Ns = Ns Ar value Oc Ns ...
+.Ar filesystem Ns | Ns Ar volume Ns | Ns Ar snapshot Ns ...
+.Nm
+.Cm get
+.Op Fl r Ns | Ns Fl d Ar depth
+.Op Fl Hp
+.Oo Fl o Ar field Ns Oo , Ns Ar field Oc Ns ... Oc
+.Oo Fl s Ar source Ns Oo , Ns Ar source Oc Ns ... Oc
+.Oo Fl t Ar type Ns Oo , Ns Ar type Oc Ns ... Oc
+.Cm all | Ar property Ns Oo , Ns Ar property Oc Ns ...
+.Ar filesystem Ns | Ns Ar volume Ns | Ns Ar snapshot Ns | Ns Ar bookmark Ns ...
+.Nm
+.Cm inherit
+.Op Fl rS
+.Ar property Ar filesystem Ns | Ns Ar volume Ns | Ns Ar snapshot Ns ...
+.Nm
+.Cm upgrade
+.Nm
+.Cm upgrade
+.Fl v
+.Nm
+.Cm upgrade
+.Op Fl r
+.Op Fl V Ar version
+.Fl a | Ar filesystem
+.Nm
+.Cm userspace
+.Op Fl Hinp
+.Oo Fl o Ar field Ns Oo , Ns Ar field Oc Ns ... Oc
+.Oo Fl s Ar field Oc Ns ...
+.Oo Fl S Ar field Oc Ns ...
+.Oo Fl t Ar type Ns Oo , Ns Ar type Oc Ns ... Oc
+.Ar filesystem Ns | Ns Ar snapshot
+.Nm
+.Cm groupspace
+.Op Fl Hinp
+.Oo Fl o Ar field Ns Oo , Ns Ar field Oc Ns ... Oc
+.Oo Fl s Ar field Oc Ns ...
+.Oo Fl S Ar field Oc Ns ...
+.Oo Fl t Ar type Ns Oo , Ns Ar type Oc Ns ... Oc
+.Ar filesystem Ns | Ns Ar snapshot
+.Nm
+.Cm projectspace
+.Op Fl Hp
+.Oo Fl o Ar field Ns Oo , Ns Ar field Oc Ns ... Oc
+.Oo Fl s Ar field Oc Ns ...
+.Oo Fl S Ar field Oc Ns ...
+.Ar filesystem Ns | Ns Ar snapshot
+.Nm
+.Cm project
+.Oo Fl d Ns | Ns Fl r Ns Oc
+.Ar file Ns | Ns Ar directory Ns ...
+.Nm
+.Cm project
+.Fl C
+.Oo Fl kr Ns Oc
+.Ar file Ns | Ns Ar directory Ns ...
+.Nm
+.Cm project
+.Fl c
+.Oo Fl 0 Ns Oc
+.Oo Fl d Ns | Ns Fl r Ns Oc
+.Op Fl p Ar id
+.Ar file Ns | Ns Ar directory Ns ...
+.Nm
+.Cm project
+.Op Fl p Ar id
+.Oo Fl rs Ns Oc
+.Ar file Ns | Ns Ar directory Ns ...
+.Nm
+.Cm mount
+.Nm
+.Cm mount
+.Op Fl Olv
+.Op Fl o Ar options
+.Fl a | Ar filesystem
+.Nm
+.Cm unmount
+.Op Fl f
+.Fl a | Ar filesystem Ns | Ns Ar mountpoint
+.Nm
+.Cm share
+.Fl a | Ar filesystem
+.Nm
+.Cm unshare
+.Fl a | Ar filesystem Ns | Ns Ar mountpoint
+.Nm
+.Cm bookmark
+.Ar snapshot bookmark
+.Nm
+.Cm send
+.Op Fl DLPRbcehnpvw
+.Op Oo Fl I Ns | Ns Fl i Oc Ar snapshot
+.Ar snapshot
+.Nm
+.Cm send
+.Op Fl LPcenvw
+.Op Fl i Ar snapshot Ns | Ns Ar bookmark
+.Ar filesystem Ns | Ns Ar volume Ns | Ns Ar snapshot
+.Nm
+.Cm send
+.Op Fl Penv
+.Fl t Ar receive_resume_token
+.Nm
+.Cm receive
+.Op Fl Fhnsuv
+.Op Fl o Sy origin Ns = Ns Ar snapshot
+.Op Fl o Ar property Ns = Ns Ar value
+.Op Fl x Ar property
+.Ar filesystem Ns | Ns Ar volume Ns | Ns Ar snapshot
+.Nm
+.Cm receive
+.Op Fl Fhnsuv
+.Op Fl d Ns | Ns Fl e
+.Op Fl o Sy origin Ns = Ns Ar snapshot
+.Op Fl o Ar property Ns = Ns Ar value
+.Op Fl x Ar property
+.Ar filesystem
+.Nm
+.Cm receive
+.Fl A
+.Ar filesystem Ns | Ns Ar volume
+.Nm
+.Cm allow
+.Ar filesystem Ns | Ns Ar volume
+.Nm
+.Cm allow
+.Op Fl dglu
+.Ar user Ns | Ns Ar group Ns Oo , Ns Ar user Ns | Ns Ar group Oc Ns ...
+.Ar perm Ns | Ns @ Ns Ar setname Ns Oo , Ns Ar perm Ns | Ns @ Ns
+.Ar setname Oc Ns ...
+.Ar filesystem Ns | Ns Ar volume
+.Nm
+.Cm allow
+.Op Fl dl
+.Fl e Ns | Ns Sy everyone
+.Ar perm Ns | Ns @ Ns Ar setname Ns Oo , Ns Ar perm Ns | Ns @ Ns
+.Ar setname Oc Ns ...
+.Ar filesystem Ns | Ns Ar volume
+.Nm
+.Cm allow
+.Fl c
+.Ar perm Ns | Ns @ Ns Ar setname Ns Oo , Ns Ar perm Ns | Ns @ Ns
+.Ar setname Oc Ns ...
+.Ar filesystem Ns | Ns Ar volume
+.Nm
+.Cm allow
+.Fl s No @ Ns Ar setname
+.Ar perm Ns | Ns @ Ns Ar setname Ns Oo , Ns Ar perm Ns | Ns @ Ns
+.Ar setname Oc Ns ...
+.Ar filesystem Ns | Ns Ar volume
+.Nm
+.Cm unallow
+.Op Fl dglru
+.Ar user Ns | Ns Ar group Ns Oo , Ns Ar user Ns | Ns Ar group Oc Ns ...
+.Oo Ar perm Ns | Ns @ Ns Ar setname Ns Oo , Ns Ar perm Ns | Ns @ Ns
+.Ar setname Oc Ns ... Oc
+.Ar filesystem Ns | Ns Ar volume
+.Nm
+.Cm unallow
+.Op Fl dlr
+.Fl e Ns | Ns Sy everyone
+.Oo Ar perm Ns | Ns @ Ns Ar setname Ns Oo , Ns Ar perm Ns | Ns @ Ns
+.Ar setname Oc Ns ... Oc
+.Ar filesystem Ns | Ns Ar volume
+.Nm
+.Cm unallow
+.Op Fl r
+.Fl c
+.Oo Ar perm Ns | Ns @ Ns Ar setname Ns Oo , Ns Ar perm Ns | Ns @ Ns
+.Ar setname Oc Ns ... Oc
+.Ar filesystem Ns | Ns Ar volume
+.Nm
+.Cm unallow
+.Op Fl r
+.Fl s @ Ns Ar setname
+.Oo Ar perm Ns | Ns @ Ns Ar setname Ns Oo , Ns Ar perm Ns | Ns @ Ns
+.Ar setname Oc Ns ... Oc
+.Ar filesystem Ns | Ns Ar volume
+.Nm
+.Cm hold
+.Op Fl r
+.Ar tag Ar snapshot Ns ...
+.Nm
+.Cm holds
+.Op Fl r
+.Ar snapshot Ns ...
+.Nm
+.Cm release
+.Op Fl r
+.Ar tag Ar snapshot Ns ...
+.Nm
+.Cm diff
+.Op Fl FHt
+.Ar snapshot Ar snapshot Ns | Ns Ar filesystem
+.Nm
+.Cm program
+.Op Fl jn
+.Op Fl t Ar timeout
+.Op Fl m Ar memory_limit
+.Ar pool script
+.Op Ar arg1 No ...
+.Nm
+.Cm load-key
+.Op Fl rn
+.Op Fl L Ar keylocation
+.Op Fl a Ns | Ns Ar filesystem
+.Nm
+.Cm unload-key
+.Op Fl r
+.Op Fl a Ns | Ns Ar filesystem
+.Nm
+.Cm change-key
+.Op Fl l
+.Op Fl o Sy keylocation Ns = Ns Ar value
+.Op Fl o Sy keyformat Ns = Ns Ar value
+.Op Fl o Sy pbkdf2iters Ns = Ns Ar value
+.Ar filesystem
+.Sh DESCRIPTION
+The
+.Nm
+command configures ZFS datasets within a ZFS storage pool, as described in
+.Xr zpool 8 .
+A dataset is identified by a unique path within the ZFS namespace.
+For example:
+.Bd -literal
+pool/{filesystem,volume,snapshot}
+.Ed
+.Pp
+where the maximum length of a dataset name is
+.Dv MAXNAMELEN
+.Pq 256 bytes
+and the maximum amount of nesting allowed in a path is 50 levels deep.
+.Pp
+A dataset can be one of the following:
+.Bl -tag -width "file system"
+.It Sy file system
+A ZFS dataset of type
+.Sy filesystem
+can be mounted within the standard system namespace and behaves like other file
+systems.
+While ZFS file systems are designed to be POSIX compliant, known issues exist
+that prevent compliance in some cases.
+Applications that depend on standards conformance might fail due to non-standard
+behavior when checking file system free space.
+.It Sy volume
+A logical volume exported as a raw or block device.
+This type of dataset should only be used under special circumstances.
+File systems are typically used in most environments.
+.It Sy snapshot
+A read-only version of a file system or volume at a given point in time.
+It is specified as
+.Ar filesystem Ns @ Ns Ar name
+or
+.Ar volume Ns @ Ns Ar name .
+.El
+.Ss ZFS File System Hierarchy
+A ZFS storage pool is a logical collection of devices that provide space for
+datasets.
+A storage pool is also the root of the ZFS file system hierarchy.
+.Pp
+The root of the pool can be accessed as a file system, such as mounting and
+unmounting, taking snapshots, and setting properties.
+The physical storage characteristics, however, are managed by the
+.Xr zpool 8
+command.
+.Pp
+See
+.Xr zpool 8
+for more information on creating and administering pools.
+.Ss Snapshots
+A snapshot is a read-only copy of a file system or volume.
+Snapshots can be created extremely quickly, and initially consume no additional
+space within the pool.
+As data within the active dataset changes, the snapshot consumes more data than
+would otherwise be shared with the active dataset.
+.Pp
+Snapshots can have arbitrary names.
+Snapshots of volumes can be cloned or rolled back, but cannot be accessed
+independently.
+.Pp
+File system snapshots can be accessed under the
+.Pa .zfs/snapshot
+directory in the root of the file system.
+Snapshots are automatically mounted on demand and may be unmounted at regular
+intervals.
+The visibility of the
+.Pa .zfs
+directory can be controlled by the
+.Sy snapdir
+property.
+.Ss Clones
+A clone is a writable volume or file system whose initial contents are the same
+as another dataset.
+As with snapshots, creating a clone is nearly instantaneous, and initially
+consumes no additional space.
+.Pp
+Clones can only be created from a snapshot.
+When a snapshot is cloned, it creates an implicit dependency between the parent
+and child.
+Even though the clone is created somewhere else in the dataset hierarchy, the
+original snapshot cannot be destroyed as long as a clone exists.
+The
+.Sy origin
+property exposes this dependency, and the
+.Cm destroy
+command lists any such dependencies, if they exist.
+.Pp
+The clone parent-child dependency relationship can be reversed by using the
+.Cm promote
+subcommand.
+This causes the
+.Qq origin
+file system to become a clone of the specified file system, which makes it
+possible to destroy the file system that the clone was created from.
+.Ss "Mount Points"
+Creating a ZFS file system is a simple operation, so the number of file systems
+per system is likely to be numerous.
+To cope with this, ZFS automatically manages mounting and unmounting file
+systems without the need to edit the
+.Pa /etc/vfstab
+file.
+All automatically managed file systems are mounted by ZFS at boot time.
+.Pp
+By default, file systems are mounted under
+.Pa /path ,
+where
+.Ar path
+is the name of the file system in the ZFS namespace.
+Directories are created and destroyed as needed.
+.Pp
+A file system can also have a mount point set in the
+.Sy mountpoint
+property.
+This directory is created as needed, and ZFS automatically mounts the file
+system when the
+.Nm zfs Cm mount Fl a
+command is invoked
+.Po without editing
+.Pa /etc/vfstab
+.Pc .
+The
+.Sy mountpoint
+property can be inherited, so if
+.Em pool/home
+has a mount point of
+.Pa /export/stuff ,
+then
+.Em pool/home/user
+automatically inherits a mount point of
+.Pa /export/stuff/user .
+.Pp
+A file system
+.Sy mountpoint
+property of
+.Sy none
+prevents the file system from being mounted.
+.Pp
+If needed, ZFS file systems can also be managed with traditional tools
+.Po
+.Nm mount ,
+.Nm umount ,
+.Pa /etc/vfstab
+.Pc .
+If a file system's mount point is set to
+.Sy legacy ,
+ZFS makes no attempt to manage the file system, and the administrator is
+responsible for mounting and unmounting the file system.
+.Ss "Zones"
+A ZFS file system can be added to a non-global zone by using the
+.Nm zonecfg Cm add Sy fs
+subcommand.
+A ZFS file system that is added to a non-global zone must have its
+.Sy mountpoint
+property set to
+.Sy legacy .
+.Pp
+The physical properties of an added file system are controlled by the global
+administrator.
+However, the zone administrator can create, modify, or destroy files within the
+added file system, depending on how the file system is mounted.
+.Pp
+A dataset can also be delegated to a non-global zone by using the
+.Nm zonecfg Cm add Sy dataset
+subcommand.
+You cannot delegate a dataset to one zone and the children of the same dataset
+to another zone.
+The zone administrator can change properties of the dataset or any of its
+children.
+However, the
+.Sy quota ,
+.Sy filesystem_limit
+and
+.Sy snapshot_limit
+properties of the delegated dataset can be modified only by the global
+administrator.
+.Pp
+A ZFS volume can be added as a device to a non-global zone by using the
+.Nm zonecfg Cm add Sy device
+subcommand.
+However, its physical properties can be modified only by the global
+administrator.
+.Pp
+For more information about
+.Nm zonecfg
+syntax, see
+.Xr zonecfg 8 .
+.Pp
+After a dataset is delegated to a non-global zone, the
+.Sy zoned
+property is automatically set.
+A zoned file system cannot be mounted in the global zone, since the zone
+administrator might have to set the mount point to an unacceptable value.
+.Pp
+The global administrator can forcibly clear the
+.Sy zoned
+property, though this should be done with extreme care.
+The global administrator should verify that all the mount points are acceptable
+before clearing the property.
+.Ss Native Properties
+Properties are divided into two types, native properties and user-defined
+.Po or
+.Qq user
+.Pc
+properties.
+Native properties either export internal statistics or control ZFS behavior.
+In addition, native properties are either editable or read-only.
+User properties have no effect on ZFS behavior, but you can use them to annotate
+datasets in a way that is meaningful in your environment.
+For more information about user properties, see the
+.Sx User Properties
+section, below.
+.Pp
+Every dataset has a set of properties that export statistics about the dataset
+as well as control various behaviors.
+Properties are inherited from the parent unless overridden by the child.
+Some properties apply only to certain types of datasets
+.Pq file systems, volumes, or snapshots .
+.Pp
+The values of numeric properties can be specified using human-readable suffixes
+.Po for example,
+.Sy k ,
+.Sy KB ,
+.Sy M ,
+.Sy Gb ,
+and so forth, up to
+.Sy Z
+for zettabyte
+.Pc .
+The following are all valid
+.Pq and equal
+specifications:
+.Li 1536M, 1.5g, 1.50GB .
+.Pp
+The values of non-numeric properties are case sensitive and must be lowercase,
+except for
+.Sy mountpoint ,
+.Sy sharenfs ,
+and
+.Sy sharesmb .
+.Pp
+The following native properties consist of read-only statistics about the
+dataset.
+These properties can be neither set, nor inherited.
+Native properties apply to all dataset types unless otherwise noted.
+.Bl -tag -width "usedbyrefreservation"
+.It Sy available
+The amount of space available to the dataset and all its children, assuming that
+there is no other activity in the pool.
+Because space is shared within a pool, availability can be limited by any number
+of factors, including physical pool size, quotas, reservations, or other
+datasets within the pool.
+.Pp
+This property can also be referred to by its shortened column name,
+.Sy avail .
+.It Sy compressratio
+For non-snapshots, the compression ratio achieved for the
+.Sy used
+space of this dataset, expressed as a multiplier.
+The
+.Sy used
+property includes descendant datasets, and, for clones, does not include the
+space shared with the origin snapshot.
+For snapshots, the
+.Sy compressratio
+is the same as the
+.Sy refcompressratio
+property.
+Compression can be turned on by running:
+.Nm zfs Cm set Sy compression Ns = Ns Sy on Ar dataset .
+The default value is
+.Sy off .
+.It Sy createtxg
+The transaction group (txg) in which the dataset was created.
+Bookmarks have the same
+.Sy createtxg
+as the snapshot they are initially tied to.
+This property is suitable for ordering a list of snapshots,
+e.g. for incremental send and receive.
+.It Sy creation
+The time this dataset was created.
+.It Sy clones
+For snapshots, this property is a comma-separated list of filesystems or volumes
+which are clones of this snapshot.
+The clones'
+.Sy origin
+property is this snapshot.
+If the
+.Sy clones
+property is not empty, then this snapshot can not be destroyed
+.Po even with the
+.Fl r
+or
+.Fl f
+options
+.Pc .
+.It Sy defer_destroy
+This property is
+.Sy on
+if the snapshot has been marked for deferred destroy by using the
+.Nm zfs Cm destroy Fl d
+command.
+Otherwise, the property is
+.Sy off .
+.It Sy encryptionroot
+For encrypted datasets, indicates where the dataset is currently inheriting its
+encryption key from.
+Loading or unloading a key for the
+.Sy encryptionroot
+will implicitly load / unload the key for any inheriting datasets
+.Po see
+.Nm zfs Cm load-key
+and
+.Nm zfs Cm unload-key
+.Pc .
+Clones will always share an encryption key with their origin.
+See the
+.Sy Encryption
+section for details.
+.It Sy filesystem_count
+The total number of filesystems and volumes that exist under this location in
+the dataset tree.
+This value is only available when a
+.Sy filesystem_limit
+has been set somewhere in the tree under which the dataset resides.
+.It Sy guid
+The 64 bit GUID of this dataset or bookmark which does not change over its
+entire lifetime.
+When a snapshot is sent to another pool, the received snapshot has the same
+GUID.
+Thus, the
+.Sy guid
+is suitable to identify a snapshot across pools.
+.It Sy keystatus
+Indicates if an encryption key is currently loaded into ZFS.
+The possible values are
+.Sy none , available ,
+and
+.Sy unavailable .
+See
+.Nm Cm load-key
+and
+.Nm Cm unload-key .
+.It Sy logicalreferenced
+The amount of space that is
+.Qq logically
+accessible by this dataset.
+See the
+.Sy referenced
+property.
+The logical space ignores the effect of the
+.Sy compression
+and
+.Sy copies
+properties, giving a quantity closer to the amount of data that applications
+see.
+However, it does include space consumed by metadata.
+.Pp
+This property can also be referred to by its shortened column name,
+.Sy lrefer .
+.It Sy logicalused
+The amount of space that is
+.Qq logically
+consumed by this dataset and all its descendents.
+See the
+.Sy used
+property.
+The logical space ignores the effect of the
+.Sy compression
+and
+.Sy copies
+properties, giving a quantity closer to the amount of data that applications
+see.
+However, it does include space consumed by metadata.
+.Pp
+This property can also be referred to by its shortened column name,
+.Sy lused .
+.It Sy mounted
+For file systems, indicates whether the file system is currently mounted.
+This property can be either
+.Sy yes
+or
+.Sy no .
+.It Sy origin
+For cloned file systems or volumes, the snapshot from which the clone was
+created.
+See also the
+.Sy clones
+property.
+.It Sy receive_resume_token
+For filesystems or volumes which have saved partially-completed state from
+.Sy zfs receive -s ,
+this opaque token can be provided to
+.Sy zfs send -t
+to resume and complete the
+.Sy zfs receive .
+.It Sy referenced
+The amount of data that is accessible by this dataset, which may or may not be
+shared with other datasets in the pool.
+When a snapshot or clone is created, it initially references the same amount of
+space as the file system or snapshot it was created from, since its contents are
+identical.
+.Pp
+This property can also be referred to by its shortened column name,
+.Sy refer .
+.It Sy refcompressratio
+The compression ratio achieved for the
+.Sy referenced
+space of this dataset, expressed as a multiplier.
+See also the
+.Sy compressratio
+property.
+.It Sy snapshot_count
+The total number of snapshots that exist under this location in the dataset
+tree.
+This value is only available when a
+.Sy snapshot_limit
+has been set somewhere in the tree under which the dataset resides.
+.It Sy type
+The type of dataset:
+.Sy filesystem ,
+.Sy volume ,
+or
+.Sy snapshot .
+.It Sy used
+The amount of space consumed by this dataset and all its descendents.
+This is the value that is checked against this dataset's quota and reservation.
+The space used does not include this dataset's reservation, but does take into
+account the reservations of any descendent datasets.
+The amount of space that a dataset consumes from its parent, as well as the
+amount of space that is freed if this dataset is recursively destroyed, is the
+greater of its space used and its reservation.
+.Pp
+The used space of a snapshot
+.Po see the
+.Sx Snapshots
+section
+.Pc
+is space that is referenced exclusively by this snapshot.
+If this snapshot is destroyed, the amount of
+.Sy used
+space will be freed.
+Space that is shared by multiple snapshots isn't accounted for in this metric.
+When a snapshot is destroyed, space that was previously shared with this
+snapshot can become unique to snapshots adjacent to it, thus changing the used
+space of those snapshots.
+The used space of the latest snapshot can also be affected by changes in the
+file system.
+Note that the
+.Sy used
+space of a snapshot is a subset of the
+.Sy written
+space of the snapshot.
+.Pp
+The amount of space used, available, or referenced does not take into account
+pending changes.
+Pending changes are generally accounted for within a few seconds.
+Committing a change to a disk using
+.Xr fsync 3C
+or
+.Dv O_SYNC
+does not necessarily guarantee that the space usage information is updated
+immediately.
+.It Sy usedby*
+The
+.Sy usedby*
+properties decompose the
+.Sy used
+properties into the various reasons that space is used.
+Specifically,
+.Sy used No =
+.Sy usedbychildren No +
+.Sy usedbydataset No +
+.Sy usedbyrefreservation No +
+.Sy usedbysnapshots .
+These properties are only available for datasets created on
+.Nm zpool
+.Qo version 13 Qc
+pools.
+.It Sy usedbychildren
+The amount of space used by children of this dataset, which would be freed if
+all the dataset's children were destroyed.
+.It Sy usedbydataset
+The amount of space used by this dataset itself, which would be freed if the
+dataset were destroyed
+.Po after first removing any
+.Sy refreservation
+and destroying any necessary snapshots or descendents
+.Pc .
+.It Sy usedbyrefreservation
+The amount of space used by a
+.Sy refreservation
+set on this dataset, which would be freed if the
+.Sy refreservation
+was removed.
+.It Sy usedbysnapshots
+The amount of space consumed by snapshots of this dataset.
+In particular, it is the amount of space that would be freed if all of this
+dataset's snapshots were destroyed.
+Note that this is not simply the sum of the snapshots'
+.Sy used
+properties because space can be shared by multiple snapshots.
+.It Sy userused Ns @ Ns Em user
+The amount of space consumed by the specified user in this dataset.
+Space is charged to the owner of each file, as displayed by
+.Nm ls Fl l .
+The amount of space charged is displayed by
+.Nm du
+and
+.Nm ls Fl s .
+See the
+.Nm zfs Cm userspace
+subcommand for more information.
+.Pp
+Unprivileged users can access only their own space usage.
+The root user, or a user who has been granted the
+.Sy userused
+privilege with
+.Nm zfs Cm allow ,
+can access everyone's usage.
+.Pp
+The
+.Sy userused Ns @ Ns Em ...
+properties are not displayed by
+.Nm zfs Cm get Sy all .
+The user's name must be appended after the @ symbol, using one of the following
+forms:
+.Bl -bullet -width ""
+.It
+.Em POSIX name
+.Po for example,
+.Sy joe
+.Pc
+.It
+.Em POSIX numeric ID
+.Po for example,
+.Sy 789
+.Pc
+.It
+.Em SID name
+.Po for example,
+.Sy joe.smith@mydomain
+.Pc
+.It
+.Em SID numeric ID
+.Po for example,
+.Sy S-1-123-456-789
+.Pc
+.El
+.It Sy userobjused Ns @ Ns Em user
+The
+.Sy userobjused
+property is similar to
+.Sy userused
+but instead it counts the number of objects consumed by a user.
+This property counts all objects allocated on behalf of the user, it may
+differ from the results of system tools such as
+.Nm df Fl i .
+.Pp
+When the property
+.Sy xattr=on
+is set on a file system additional objects will be created per-file to store
+extended attributes.
+These additional objects are reflected in the
+.Sy userobjused
+value and are counted against the user's
+.Sy userobjquota .
+.It Sy userrefs
+This property is set to the number of user holds on this snapshot.
+User holds are set by using the
+.Nm zfs Cm hold
+command.
+.It Sy groupused Ns @ Ns Em group
+The amount of space consumed by the specified group in this dataset.
+Space is charged to the group of each file, as displayed by
+.Nm ls Fl l .
+See the
+.Sy userused Ns @ Ns Em user
+property for more information.
+.Pp
+Unprivileged users can only access their own groups' space usage.
+The root user, or a user who has been granted the
+.Sy groupused
+privilege with
+.Nm zfs Cm allow ,
+can access all groups' usage.
+.It Sy groupobjused Ns @ Ns Em group
+The number of objects consumed by the specified group in this dataset.
+Multiple objects may be charged to the group for each file when extended
+attributes are in use.
+See the
+.Sy userobjused Ns @ Ns Em user
+property for more information.
+.Pp
+Unprivileged users can only access their own groups' space usage.
+The root user, or a user who has been granted the
+.Sy groupobjused
+privilege with
+.Nm zfs Cm allow ,
+can access all groups' usage.
+.It Sy projectused Ns @ Ns Em project
+The amount of space consumed by the specified project in this dataset.
+Project is identified via the project identifier (ID) that is object-based
+numeral attribute.
+An object can inherit the project ID from its parent object (if the
+parent has the flag of inherit project ID that can be set and changed via
+.Nm zfs project Fl s )
+when being created.
+The privileged user can set and change object's project
+ID via
+.Nm zfs project Fl s
+anytime.
+Space is charged to the project of each file, as displayed by
+.Nm zfs project .
+See the
+.Sy userused Ns @ Ns Em user
+property for more information.
+.Pp
+The root user, or a user who has been granted the
+.Sy projectused
+privilege with
+.Nm zfs allow ,
+can access all projects' usage.
+.It Sy projectobjused Ns @ Ns Em project
+The
+.Sy projectobjused
+is similar to
+.Sy projectused
+but instead it counts the number of objects consumed by project.
+When the property
+.Sy xattr=on
+is set on a fileset, ZFS will create additional objects per-file to store
+extended attributes.
+These additional objects are reflected in the
+.Sy projectobjused
+value and are counted against the project's
+.Sy projectobjquota .
+See the
+.Sy userobjused Ns @ Ns Em user
+property for more information.
+.Pp
+The root user, or a user who has been granted the
+.Sy projectobjused
+privilege with
+.Nm zfs allow ,
+can access all projects' objects usage.
+.It Sy volblocksize
+For volumes, specifies the block size of the volume.
+The
+.Sy blocksize
+cannot be changed once the volume has been written, so it should be set at
+volume creation time.
+The default
+.Sy blocksize
+for volumes is 8 Kbytes.
+Any power of 2 from 512 bytes to 128 Kbytes is valid.
+.Pp
+This property can also be referred to by its shortened column name,
+.Sy volblock .
+.It Sy written
+The amount of space
+.Sy referenced
+by this dataset, that was written since the previous snapshot
+.Pq i.e. that is not referenced by the previous snapshot .
+.It Sy written Ns @ Ns Em snapshot
+The amount of
+.Sy referenced
+space written to this dataset since the specified snapshot.
+This is the space that is referenced by this dataset but was not referenced by
+the specified snapshot.
+.Pp
+The
+.Em snapshot
+may be specified as a short snapshot name
+.Po just the part after the
+.Sy @
+.Pc ,
+in which case it will be interpreted as a snapshot in the same filesystem as
+this dataset.
+The
+.Em snapshot
+may be a full snapshot name
+.Po Em filesystem Ns @ Ns Em snapshot Pc ,
+which for clones may be a snapshot in the origin's filesystem
+.Pq or the origin of the origin's filesystem, etc.
+.El
+.Pp
+The following native properties can be used to change the behavior of a ZFS
+dataset.
+.Bl -tag -width ""
+.It Xo
+.Sy aclinherit Ns = Ns Sy discard Ns | Ns Sy noallow Ns | Ns
+.Sy restricted Ns | Ns Sy passthrough Ns | Ns Sy passthrough-x
+.Xc
+Controls how ACEs are inherited when files and directories are created.
+.Bl -tag -width "passthrough-x"
+.It Sy discard
+does not inherit any ACEs.
+.It Sy noallow
+only inherits inheritable ACEs that specify
+.Qq deny
+permissions.
+.It Sy restricted
+default, removes the
+.Sy write_acl
+and
+.Sy write_owner
+permissions when the ACE is inherited.
+.It Sy passthrough
+inherits all inheritable ACEs without any modifications.
+.It Sy passthrough-x
+same meaning as
+.Sy passthrough ,
+except that the
+.Sy owner@ ,
+.Sy group@ ,
+and
+.Sy everyone@
+ACEs inherit the execute permission only if the file creation mode also requests
+the execute bit.
+.El
+.Pp
+When the property value is set to
+.Sy passthrough ,
+files are created with a mode determined by the inheritable ACEs.
+If no inheritable ACEs exist that affect the mode, then the mode is set in
+accordance to the requested mode from the application.
+.It Xo
+.Sy aclmode Ns = Ns Sy discard Ns | Ns Sy groupmask Ns | Ns
+.Sy passthrough Ns | Ns Sy restricted
+.Xc
+Controls how an ACL is modified during
+.Xr chmod 2
+and how inherited ACEs are modified by the file creation mode.
+.Bl -tag -width "passthrough"
+.It Sy discard
+default, deletes all ACEs except for those representing the mode of the file or
+directory requested by
+.Xr chmod 2 .
+.It Sy groupmask
+reduces permissions granted by all
+.Sy ALLOW
+entries found in the ACL such that they are no greater than the group
+permissions specified by the mode.
+.It Sy passthrough
+indicates that no changes are made to the ACL other than creating or updating
+the necessary ACEs to represent the new mode of the file or directory.
+.It Sy restricted
+causes the
+.Xr chmod 2
+operation to return an error when used on any file or directory which has a
+non-trivial ACL, with entries in addition to those that represent the mode.
+.El
+.Pp
+.Xr chmod 2
+is required to change the set user ID, set group ID, or sticky bit on a file or
+directory, as they do not have equivalent ACEs.
+In order to use
+.Xr chmod 2
+on a file or directory with a non-trivial ACL when
+.Sy aclmode
+is set to
+.Sy restricted ,
+you must first remove all ACEs except for those that represent the current mode.
+.It Sy atime Ns = Ns Sy on Ns | Ns Sy off
+Controls whether the access time for files is updated when they are read.
+Turning this property off avoids producing write traffic when reading files and
+can result in significant performance gains, though it might confuse mailers
+and other similar utilities.
+The default value is
+.Sy on .
+.It Sy canmount Ns = Ns Sy on Ns | Ns Sy off Ns | Ns Sy noauto
+If this property is set to
+.Sy off ,
+the file system cannot be mounted, and is ignored by
+.Nm zfs Cm mount Fl a .
+Setting this property to
+.Sy off
+is similar to setting the
+.Sy mountpoint
+property to
+.Sy none ,
+except that the dataset still has a normal
+.Sy mountpoint
+property, which can be inherited.
+Setting this property to
+.Sy off
+allows datasets to be used solely as a mechanism to inherit properties.
+One example of setting
+.Sy canmount Ns = Ns Sy off
+is to have two datasets with the same
+.Sy mountpoint ,
+so that the children of both datasets appear in the same directory, but might
+have different inherited characteristics.
+.Pp
+When set to
+.Sy noauto ,
+a dataset can only be mounted and unmounted explicitly.
+The dataset is not mounted automatically when the dataset is created or
+imported, nor is it mounted by the
+.Nm zfs Cm mount Fl a
+command or unmounted by the
+.Nm zfs Cm unmount Fl a
+command.
+.Pp
+This property is not inherited.
+.It Xo
+.Sy checksum Ns = Ns Sy on Ns | Ns Sy off Ns | Ns Sy fletcher2 Ns | Ns
+.Sy fletcher4 Ns | Ns Sy sha256 Ns | Ns Sy noparity Ns | Ns
+.Sy sha512 Ns | Ns Sy skein Ns | Ns Sy edonr
+.Xc
+Controls the checksum used to verify data integrity.
+The default value is
+.Sy on ,
+which automatically selects an appropriate algorithm
+.Po currently,
+.Sy fletcher4 ,
+but this may change in future releases
+.Pc .
+The value
+.Sy off
+disables integrity checking on user data.
+The value
+.Sy noparity
+not only disables integrity but also disables maintaining parity for user data.
+This setting is used internally by a dump device residing on a RAID-Z pool and
+should not be used by any other dataset.
+Disabling checksums is
+.Sy NOT
+a recommended practice.
+.Pp
+The
+.Sy sha512 ,
+.Sy skein ,
+and
+.Sy edonr
+checksum algorithms require enabling the appropriate features on the pool.
+Please see
+.Xr zpool-features 7
+for more information on these algorithms.
+.Pp
+Changing this property affects only newly-written data.
+.It Xo
+.Sy compression Ns = Ns Sy on Ns | Ns Sy off Ns | Ns Sy gzip Ns | Ns
+.Sy gzip- Ns Em N Ns | Ns Sy lz4 Ns | Ns Sy lzjb Ns | Ns Sy zle
+.Xc
+Controls the compression algorithm used for this dataset.
+.Pp
+Setting compression to
+.Sy on
+indicates that the current default compression algorithm should be used.
+The default balances compression and decompression speed, with compression ratio
+and is expected to work well on a wide variety of workloads.
+Unlike all other settings for this property,
+.Sy on
+does not select a fixed compression type.
+As new compression algorithms are added to ZFS and enabled on a pool, the
+default compression algorithm may change.
+The current default compression algorithm is either
+.Sy lzjb
+or, if the
+.Sy lz4_compress
+feature is enabled,
+.Sy lz4 .
+.Pp
+The
+.Sy lz4
+compression algorithm is a high-performance replacement for the
+.Sy lzjb
+algorithm.
+It features significantly faster compression and decompression, as well as a
+moderately higher compression ratio than
+.Sy lzjb ,
+but can only be used on pools with the
+.Sy lz4_compress
+feature set to
+.Sy enabled .
+See
+.Xr zpool-features 7
+for details on ZFS feature flags and the
+.Sy lz4_compress
+feature.
+.Pp
+The
+.Sy lzjb
+compression algorithm is optimized for performance while providing decent data
+compression.
+.Pp
+The
+.Sy gzip
+compression algorithm uses the same compression as the
+.Xr gzip 1
+command.
+You can specify the
+.Sy gzip
+level by using the value
+.Sy gzip- Ns Em N ,
+where
+.Em N
+is an integer from 1
+.Pq fastest
+to 9
+.Pq best compression ratio .
+Currently,
+.Sy gzip
+is equivalent to
+.Sy gzip-6
+.Po which is also the default for
+.Xr gzip 1
+.Pc .
+.Pp
+The
+.Sy zle
+compression algorithm compresses runs of zeros.
+.Pp
+This property can also be referred to by its shortened column name
+.Sy compress .
+Changing this property affects only newly-written data.
+.It Sy copies Ns = Ns Sy 1 Ns | Ns Sy 2 Ns | Ns Sy 3
+Controls the number of copies of data stored for this dataset.
+These copies are in addition to any redundancy provided by the pool, for
+example, mirroring or RAID-Z.
+The copies are stored on different disks, if possible.
+The space used by multiple copies is charged to the associated file and dataset,
+changing the
+.Sy used
+property and counting against quotas and reservations.
+.Pp
+Changing this property only affects newly-written data.
+Therefore, set this property at file system creation time by using the
+.Fl o Sy copies Ns = Ns Ar N
+option.
+.It Sy devices Ns = Ns Sy on Ns | Ns Sy off
+Controls whether device nodes can be opened on this file system.
+The default value is
+.Sy on .
+.It Xo
+.Sy encryption Ns = Ns Sy on Ns | Ns Sy off Ns | Ns Sy aes-128-ccm Ns | Ns
+.Sy aes-192-ccm Ns | Ns Sy aes-256-ccm Ns | Ns Sy aes-128-gcm Ns | Ns
+.Sy aes-192-gcm Ns | Ns Sy aes-256-gcm
+.Xc
+Controls the encryption cipher suite
+.Pq block cipher, key length, and mode
+used for this dataset.
+Requires the encryption feature to be enabled on the pool.
+Requires a
+.Sy keyformat
+to be set at dataset creation time.
+.Pp
+Selecting
+.Sy encryption Ns = Ns Sy on
+when creating a dataset indicates that the default encryption suite will be
+selected, which is currently
+.Sy aes-256-ccm .
+In order to provide consistent data protection, encryption must be specified at
+dataset creation time and it cannot be changed afterwards.
+.Pp
+For more details and caveats about encryption see the
+.Sx Encryption
+section.
+.It Sy keyformat Ns = Ns Sy raw Ns | Ns Sy hex Ns | Ns Sy passphrase
+Controls what format the user's encryption key will be provided as.
+This property is only set for encrypted datasets which are encryption roots.
+.Pp
+Raw keys and hex keys must be 32 bytes long
+.Pq regardless of the chosen encryption suite
+and must be randomly generated.
+A raw key can be generated with the following command:
+.Bd -literal
+# dd if=/dev/urandom of=/path/to/output/key bs=32 count=1
+.Ed
+.Pp
+Passphrases must be between 8 and 512 bytes long and will be processed through
+PBKDF2 before being used
+.Po see the
+.Nm pbkdf2iters
+property
+.Pc .
+Even though the encryption suite cannot be changed after dataset creation, the
+keyformat can be with
+.Nm Cm change-key .
+.It Sy keylocation Ns = Ns Sy prompt Ns | Ns Ar file://<absolute file path>
+Controls where the user's encryption key will be loaded from by default for
+commands such as
+.Nm Cm load-key
+and
+.Nm Cm mount Fl l .
+This property is only set for encrypted datasets which are encryption roots.
+If unspecified, the default is
+.Sy prompt .
+.Pp
+Even though the encryption suite cannot be changed after dataset creation, the
+keylocation can be with either
+.Nm Cm set
+or
+.Nm Cm change-key .
+If
+.Sy prompt
+is selected ZFS will ask for the key at the command prompt when
+it is required to access the encrypted data
+.Po see
+.Nm Cm load-key
+.Pc .
+This setting will also allow the key to be passed in via STDIN, but users
+should be careful not to place keys which should be kept secret on the
+command line.
+If a file URI is selected, the key will be loaded from the specified absolute
+file path.
+.It Sy exec Ns = Ns Sy on Ns | Ns Sy off
+Controls whether processes can be executed from within this file system.
+The default value is
+.Sy on .
+.It Sy filesystem_limit Ns = Ns Em count Ns | Ns Sy none
+Limits the number of filesystems and volumes that can exist under this point in
+the dataset tree.
+The limit is not enforced if the user is allowed to change the limit.
+Setting a
+.Sy filesystem_limit
+to
+.Sy on
+a descendent of a filesystem that already has a
+.Sy filesystem_limit
+does not override the ancestor's
+.Sy filesystem_limit ,
+but rather imposes an additional limit.
+This feature must be enabled to be used
+.Po see
+.Xr zpool-features 7
+.Pc .
+.It Sy special_small_blocks Ns = Ns Em size
+This value represents the threshold block size for including small file
+blocks into the special allocation class.
+Blocks smaller than or equal to this value will be assigned to the special
+allocation class while greater blocks will be assigned to the regular class.
+Valid values are zero or a power of two from 512B up to 128K.
+The default size is 0 which means no small file blocks will be allocated in
+the special class.
+.Pp
+Before setting this property, a special class vdev must be added to the
+pool.
+See
+.Xr zpool 8
+for more details on the special allocation class.
+.It Sy mountpoint Ns = Ns Pa path Ns | Ns Sy none Ns | Ns Sy legacy
+Controls the mount point used for this file system.
+See the
+.Sx Mount Points
+section for more information on how this property is used.
+.Pp
+When the
+.Sy mountpoint
+property is changed for a file system, the file system and any children that
+inherit the mount point are unmounted.
+If the new value is
+.Sy legacy ,
+then they remain unmounted.
+Otherwise, they are automatically remounted in the new location if the property
+was previously
+.Sy legacy
+or
+.Sy none ,
+or if they were mounted before the property was changed.
+In addition, any shared file systems are unshared and shared in the new
+location.
+.It Sy nbmand Ns = Ns Sy on Ns | Ns Sy off
+Controls whether the file system should be mounted with
+.Sy nbmand
+.Pq Non Blocking mandatory locks .
+This is used for SMB clients.
+Changes to this property only take effect when the file system is umounted and
+remounted.
+See
+.Xr mount 8
+for more information on
+.Sy nbmand
+mounts.
+.It Sy pbkdf2iters Ns = Ns Ar iterations
+Controls the number of PBKDF2 iterations that a
+.Sy passphrase
+encryption key should be run through when processing it into an encryption key.
+This property is only defined when encryption is enabled and a keyformat of
+.Sy passphrase
+is selected.
+The goal of PBKDF2 is to significantly increase the computational difficulty
+needed to brute force a user's passphrase.
+This is accomplished by forcing the attacker to run each passphrase through a
+computationally expensive hashing function many times before they arrive at the
+resulting key.
+A user who actually knows the passphrase will only have to pay this cost once.
+As CPUs become better at processing, this number should be raised to ensure that
+a brute force attack is still not possible.
+The current default is 350000 and the minimum is 100000.
+This property may be changed with
+.Nm Cm change-key .
+.It Sy primarycache Ns = Ns Sy all Ns | Ns Sy none Ns | Ns Sy metadata
+Controls what is cached in the primary cache
+.Pq ARC .
+If this property is set to
+.Sy all ,
+then both user data and metadata is cached.
+If this property is set to
+.Sy none ,
+then neither user data nor metadata is cached.
+If this property is set to
+.Sy metadata ,
+then only metadata is cached.
+The default value is
+.Sy all .
+.It Sy quota Ns = Ns Em size Ns | Ns Sy none
+Limits the amount of space a dataset and its descendents can consume.
+This property enforces a hard limit on the amount of space used.
+This includes all space consumed by descendents, including file systems and
+snapshots.
+Setting a quota on a descendent of a dataset that already has a quota does not
+override the ancestor's quota, but rather imposes an additional limit.
+.Pp
+Quotas cannot be set on volumes, as the
+.Sy volsize
+property acts as an implicit quota.
+.It Sy snapshot_limit Ns = Ns Em count Ns | Ns Sy none
+Limits the number of snapshots that can be created on a dataset and its
+descendents.
+Setting a
+.Sy snapshot_limit
+on a descendent of a dataset that already has a
+.Sy snapshot_limit
+does not override the ancestor's
+.Sy snapshot_limit ,
+but rather imposes an additional limit.
+The limit is not enforced if the user is allowed to change the limit.
+For example, this means that recursive snapshots taken from the global zone are
+counted against each delegated dataset within a zone.
+This feature must be enabled to be used
+.Po see
+.Xr zpool-features 7
+.Pc .
+.It Sy userquota@ Ns Em user Ns = Ns Em size Ns | Ns Sy none
+Limits the amount of space consumed by the specified user.
+User space consumption is identified by the
+.Sy userspace@ Ns Em user
+property.
+.Pp
+Enforcement of user quotas may be delayed by several seconds.
+This delay means that a user might exceed their quota before the system notices
+that they are over quota and begins to refuse additional writes with the
+.Er EDQUOT
+error message.
+See the
+.Nm zfs Cm userspace
+subcommand for more information.
+.Pp
+Unprivileged users can only access their own groups' space usage.
+The root user, or a user who has been granted the
+.Sy userquota
+privilege with
+.Nm zfs Cm allow ,
+can get and set everyone's quota.
+.Pp
+This property is not available on volumes, on file systems before version 4, or
+on pools before version 15.
+The
+.Sy userquota@ Ns Em ...
+properties are not displayed by
+.Nm zfs Cm get Sy all .
+The user's name must be appended after the
+.Sy @
+symbol, using one of the following forms:
+.Bl -bullet
+.It
+.Em POSIX name
+.Po for example,
+.Sy joe
+.Pc
+.It
+.Em POSIX numeric ID
+.Po for example,
+.Sy 789
+.Pc
+.It
+.Em SID name
+.Po for example,
+.Sy joe.smith@mydomain
+.Pc
+.It
+.Em SID numeric ID
+.Po for example,
+.Sy S-1-123-456-789
+.Pc
+.El
+.It Sy userobjquota@ Ns Em user Ns = Ns Em size Ns | Ns Sy none
+The
+.Sy userobjquota
+is similar to
+.Sy userquota
+but it limits the number of objects a user can create.
+Please refer to
+.Sy userobjused
+for more information about how objects are counted.
+.It Sy groupquota@ Ns Em group Ns = Ns Em size Ns | Ns Sy none
+Limits the amount of space consumed by the specified group.
+Group space consumption is identified by the
+.Sy groupused@ Ns Em group
+property.
+.Pp
+Unprivileged users can access only their own groups' space usage.
+The root user, or a user who has been granted the
+.Sy groupquota
+privilege with
+.Nm zfs Cm allow ,
+can get and set all groups' quotas.
+.It Sy groupobjquota@ Ns Em group Ns = Ns Em size Ns | Ns Sy none
+The
+.Sy groupobjquota
+is similar to
+.Sy groupquota
+but it limits the number of objects a group can consume.
+Please refer to
+.Sy userobjused
+for more information about how objects are counted.
+.It Sy projectquota@ Ns Em project Ns = Ns Em size Ns | Ns Sy none
+Limits the amount of space consumed by the specified project.
+Project space consumption is identified by the
+.Sy projectused@ Ns Em project
+property.
+Please refer to
+.Sy projectused
+for more information about how project is identified and set or changed.
+.Pp
+The root user, or a user who has been granted the
+.Sy projectquota
+privilege with
+.Nm zfs allow ,
+can access all projects' quotas.
+.It Sy projectobjquota@ Ns Em project Ns = Ns Em size Ns | Ns Sy none
+The
+.Sy projectobjquota
+is similar to
+.Sy projectquota
+but it limits the number of objects a project can consume.
+Please refer to
+.Sy userobjused
+for more information about how objects are counted.
+.It Sy readonly Ns = Ns Sy on Ns | Ns Sy off
+Controls whether this dataset can be modified.
+The default value is
+.Sy off .
+.Pp
+This property can also be referred to by its shortened column name,
+.Sy rdonly .
+.It Sy recordsize Ns = Ns Em size
+Specifies a suggested block size for files in the file system.
+This property is designed solely for use with database workloads that access
+files in fixed-size records.
+ZFS automatically tunes block sizes according to internal algorithms optimized
+for typical access patterns.
+.Pp
+For databases that create very large files but access them in small random
+chunks, these algorithms may be suboptimal.
+Specifying a
+.Sy recordsize
+greater than or equal to the record size of the database can result in
+significant performance gains.
+Use of this property for general purpose file systems is strongly discouraged,
+and may adversely affect performance.
+.Pp
+The size specified must be a power of two greater than or equal to 512 and less
+than or equal to 128 Kbytes.
+If the
+.Sy large_blocks
+feature is enabled on the pool, the size may be up to 1 Mbyte.
+See
+.Xr zpool-features 7
+for details on ZFS feature flags.
+.Pp
+Changing the file system's
+.Sy recordsize
+affects only files created afterward; existing files are unaffected.
+.Pp
+This property can also be referred to by its shortened column name,
+.Sy recsize .
+.It Sy redundant_metadata Ns = Ns Sy all Ns | Ns Sy most
+Controls what types of metadata are stored redundantly.
+ZFS stores an extra copy of metadata, so that if a single block is corrupted,
+the amount of user data lost is limited.
+This extra copy is in addition to any redundancy provided at the pool level
+.Pq e.g. by mirroring or RAID-Z ,
+and is in addition to an extra copy specified by the
+.Sy copies
+property
+.Pq up to a total of 3 copies .
+For example if the pool is mirrored,
+.Sy copies Ns = Ns 2 ,
+and
+.Sy redundant_metadata Ns = Ns Sy most ,
+then ZFS stores 6 copies of most metadata, and 4 copies of data and some
+metadata.
+.Pp
+When set to
+.Sy all ,
+ZFS stores an extra copy of all metadata.
+If a single on-disk block is corrupt, at worst a single block of user data
+.Po which is
+.Sy recordsize
+bytes long
+.Pc
+can be lost.
+.Pp
+When set to
+.Sy most ,
+ZFS stores an extra copy of most types of metadata.
+This can improve performance of random writes, because less metadata must be
+written.
+In practice, at worst about 100 blocks
+.Po of
+.Sy recordsize
+bytes each
+.Pc
+of user data can be lost if a single on-disk block is corrupt.
+The exact behavior of which metadata blocks are stored redundantly may change in
+future releases.
+.Pp
+The default value is
+.Sy all .
+.It Sy refquota Ns = Ns Em size Ns | Ns Sy none
+Limits the amount of space a dataset can consume.
+This property enforces a hard limit on the amount of space used.
+This hard limit does not include space used by descendents, including file
+systems and snapshots.
+.It Sy refreservation Ns = Ns Em size Ns | Ns Sy none Ns | Ns Sy auto
+The minimum amount of space guaranteed to a dataset, not including its
+descendents.
+When the amount of space used is below this value, the dataset is treated as if
+it were taking up the amount of space specified by
+.Sy refreservation .
+The
+.Sy refreservation
+reservation is accounted for in the parent datasets' space used, and counts
+against the parent datasets' quotas and reservations.
+.Pp
+If
+.Sy refreservation
+is set, a snapshot is only allowed if there is enough free pool space outside of
+this reservation to accommodate the current number of
+.Qq referenced
+bytes in the dataset.
+.Pp
+If
+.Sy refreservation
+is set to
+.Sy auto ,
+a volume is thick provisioned
+.Po or
+.Qq not sparse
+.Pc .
+.Sy refreservation Ns = Ns Sy auto
+is only supported on volumes.
+See
+.Sy volsize
+in the
+.Sx Native Properties
+section for more information about sparse volumes.
+.Pp
+This property can also be referred to by its shortened column name,
+.Sy refreserv .
+.It Sy reservation Ns = Ns Em size Ns | Ns Sy none
+The minimum amount of space guaranteed to a dataset and its descendants.
+When the amount of space used is below this value, the dataset is treated as if
+it were taking up the amount of space specified by its reservation.
+Reservations are accounted for in the parent datasets' space used, and count
+against the parent datasets' quotas and reservations.
+.Pp
+This property can also be referred to by its shortened column name,
+.Sy reserv .
+.It Sy secondarycache Ns = Ns Sy all Ns | Ns Sy none Ns | Ns Sy metadata
+Controls what is cached in the secondary cache
+.Pq L2ARC .
+If this property is set to
+.Sy all ,
+then both user data and metadata is cached.
+If this property is set to
+.Sy none ,
+then neither user data nor metadata is cached.
+If this property is set to
+.Sy metadata ,
+then only metadata is cached.
+The default value is
+.Sy all .
+.It Sy setuid Ns = Ns Sy on Ns | Ns Sy off
+Controls whether the setuid bit is respected for the file system.
+The default value is
+.Sy on .
+.It Sy sharesmb Ns = Ns Sy on Ns | Ns Sy off Ns | Ns Em opts
+Controls whether the file system is shared via SMB, and what options are to be
+used.
+A file system with the
+.Sy sharesmb
+property set to
+.Sy off
+is managed through traditional tools such as
+.Xr sharemgr 8 .
+Otherwise, the file system is automatically shared and unshared with the
+.Nm zfs Cm share
+and
+.Nm zfs Cm unshare
+commands.
+If the property is set to
+.Sy on ,
+the
+.Xr sharemgr 8
+command is invoked with no options.
+Otherwise, the
+.Xr sharemgr 8
+command is invoked with options equivalent to the contents of this property.
+.Pp
+Because SMB shares requires a resource name, a unique resource name is
+constructed from the dataset name.
+The constructed name is a copy of the dataset name except that the characters in
+the dataset name, which would be invalid in the resource name, are replaced with
+underscore
+.Pq Sy _
+characters.
+A pseudo property
+.Qq name
+is also supported that allows you to replace the data set name with a specified
+name.
+The specified name is then used to replace the prefix dataset in the case of
+inheritance.
+For example, if the dataset
+.Em data/home/john
+is set to
+.Sy name Ns = Ns Sy john ,
+then
+.Em data/home/john
+has a resource name of
+.Sy john .
+If a child dataset
+.Em data/home/john/backups
+is shared, it has a resource name of
+.Sy john_backups .
+.Pp
+When SMB shares are created, the SMB share name appears as an entry in the
+.Pa .zfs/shares
+directory.
+You can use the
+.Nm ls
+or
+.Nm chmod
+command to display the share-level ACLs on the entries in this directory.
+.Pp
+When the
+.Sy sharesmb
+property is changed for a dataset, the dataset and any children inheriting the
+property are re-shared with the new options, only if the property was previously
+set to
+.Sy off ,
+or if they were shared before the property was changed.
+If the new property is set to
+.Sy off ,
+the file systems are unshared.
+.It Sy sharenfs Ns = Ns Sy on Ns | Ns Sy off Ns | Ns Em opts
+Controls whether the file system is shared via NFS, and what options are to be
+used.
+A file system with a
+.Sy sharenfs
+property of
+.Sy off
+is managed through traditional tools such as
+.Xr share 8 ,
+.Xr unshare 8 ,
+and
+.Xr dfstab 5 .
+Otherwise, the file system is automatically shared and unshared with the
+.Nm zfs Cm share
+and
+.Nm zfs Cm unshare
+commands.
+If the property is set to
+.Sy on ,
+.Xr share 8
+command is invoked with no options.
+Otherwise, the
+.Xr share 8
+command is invoked with options equivalent to the contents of this property.
+.Pp
+When the
+.Sy sharenfs
+property is changed for a dataset, the dataset and any children inheriting the
+property are re-shared with the new options, only if the property was previously
+.Sy off ,
+or if they were shared before the property was changed.
+If the new property is
+.Sy off ,
+the file systems are unshared.
+.It Sy logbias Ns = Ns Sy latency Ns | Ns Sy throughput
+Provide a hint to ZFS about handling of synchronous requests in this dataset.
+If
+.Sy logbias
+is set to
+.Sy latency
+.Pq the default ,
+ZFS will use pool log devices
+.Pq if configured
+to handle the requests at low latency.
+If
+.Sy logbias
+is set to
+.Sy throughput ,
+ZFS will not use configured pool log devices.
+ZFS will instead optimize synchronous operations for global pool throughput and
+efficient use of resources.
+.It Sy snapdir Ns = Ns Sy hidden Ns | Ns Sy visible
+Controls whether the
+.Pa .zfs
+directory is hidden or visible in the root of the file system as discussed in
+the
+.Sx Snapshots
+section.
+The default value is
+.Sy hidden .
+.It Sy sync Ns = Ns Sy standard Ns | Ns Sy always Ns | Ns Sy disabled
+Controls the behavior of synchronous requests
+.Pq e.g. fsync, O_DSYNC .
+.Sy standard
+is the
+POSIX
+specified behavior of ensuring all synchronous requests are written to stable
+storage and all devices are flushed to ensure data is not cached by device
+controllers
+.Pq this is the default .
+.Sy always
+causes every file system transaction to be written and flushed before its
+system call returns.
+This has a large performance penalty.
+.Sy disabled
+disables synchronous requests.
+File system transactions are only committed to stable storage periodically.
+This option will give the highest performance.
+However, it is very dangerous as ZFS would be ignoring the synchronous
+transaction demands of applications such as databases or NFS.
+Administrators should only use this option when the risks are understood.
+.It Sy version Ns = Ns Em N Ns | Ns Sy current
+The on-disk version of this file system, which is independent of the pool
+version.
+This property can only be set to later supported versions.
+See the
+.Nm zfs Cm upgrade
+command.
+.It Sy volsize Ns = Ns Em size
+For volumes, specifies the logical size of the volume.
+By default, creating a volume establishes a reservation of equal size.
+For storage pools with a version number of 9 or higher, a
+.Sy refreservation
+is set instead.
+Any changes to
+.Sy volsize
+are reflected in an equivalent change to the reservation
+.Po or
+.Sy refreservation
+.Pc .
+The
+.Sy volsize
+can only be set to a multiple of
+.Sy volblocksize ,
+and cannot be zero.
+.Pp
+The reservation is kept equal to the volume's logical size to prevent unexpected
+behavior for consumers.
+Without the reservation, the volume could run out of space, resulting in
+undefined behavior or data corruption, depending on how the volume is used.
+These effects can also occur when the volume size is changed while it is in use
+.Pq particularly when shrinking the size .
+Extreme care should be used when adjusting the volume size.
+.Pp
+Though not recommended, a
+.Qq sparse volume
+.Po also known as
+.Qq thin provisioned
+.Pc
+can be created by specifying the
+.Fl s
+option to the
+.Nm zfs Cm create Fl V
+command, or by changing the value of the
+.Sy refreservation
+property
+.Po or
+.Sy reservation
+property on pool version 8 or earlier
+.Pc
+after the volume has been created.
+A
+.Qq sparse volume
+is a volume where the value of
+.Sy refreservation
+is less than the size of the volume plus the space required to store its
+metadata.
+Consequently, writes to a sparse volume can fail with
+.Er ENOSPC
+when the pool is low on space.
+For a sparse volume, changes to
+.Sy volsize
+are not reflected in the
+.Sy refreservation .
+A volume that is not sparse is said to be
+.Qq thick provisioned .
+A sparse volume can become thick provisioned by setting
+.Sy refreservation
+to
+.Sy auto .
+.It Sy vscan Ns = Ns Sy on Ns | Ns Sy off
+Controls whether regular files should be scanned for viruses when a file is
+opened and closed.
+In addition to enabling this property, the virus scan service must also be
+enabled for virus scanning to occur.
+The default value is
+.Sy off .
+.It Sy xattr Ns = Ns Sy on Ns | Ns Sy off
+Controls whether extended attributes are enabled for this file system.
+The default value is
+.Sy on .
+.It Sy zoned Ns = Ns Sy on Ns | Ns Sy off
+Controls whether the dataset is managed from a non-global zone.
+See the
+.Sx Zones
+section for more information.
+The default value is
+.Sy off .
+.El
+.Pp
+The following three properties cannot be changed after the file system is
+created, and therefore, should be set when the file system is created.
+If the properties are not set with the
+.Nm zfs Cm create
+or
+.Nm zpool Cm create
+commands, these properties are inherited from the parent dataset.
+If the parent dataset lacks these properties due to having been created prior to
+these features being supported, the new file system will have the default values
+for these properties.
+.Bl -tag -width ""
+.It Xo
+.Sy casesensitivity Ns = Ns Sy sensitive Ns | Ns
+.Sy insensitive Ns | Ns Sy mixed
+.Xc
+Indicates whether the file name matching algorithm used by the file system
+should be case-sensitive, case-insensitive, or allow a combination of both
+styles of matching.
+The default value for the
+.Sy casesensitivity
+property is
+.Sy sensitive .
+Traditionally,
+.Ux
+and
+POSIX
+file systems have case-sensitive file names.
+.Pp
+The
+.Sy mixed
+value for the
+.Sy casesensitivity
+property indicates that the file system can support requests for both
+case-sensitive and case-insensitive matching behavior.
+Currently, case-insensitive matching behavior on a file system that supports
+mixed behavior is limited to the SMB server product.
+For more information about the
+.Sy mixed
+value behavior, see the "ZFS Administration Guide".
+.It Xo
+.Sy normalization Ns = Ns Sy none Ns | Ns Sy formC Ns | Ns
+.Sy formD Ns | Ns Sy formKC Ns | Ns Sy formKD
+.Xc
+Indicates whether the file system should perform a
+.Sy unicode
+normalization of file names whenever two file names are compared, and which
+normalization algorithm should be used.
+File names are always stored unmodified, names are normalized as part of any
+comparison process.
+If this property is set to a legal value other than
+.Sy none ,
+and the
+.Sy utf8only
+property was left unspecified, the
+.Sy utf8only
+property is automatically set to
+.Sy on .
+The default value of the
+.Sy normalization
+property is
+.Sy none .
+This property cannot be changed after the file system is created.
+.It Sy utf8only Ns = Ns Sy on Ns | Ns Sy off
+Indicates whether the file system should reject file names that include
+characters that are not present in the
+.Sy UTF-8
+character code set.
+If this property is explicitly set to
+.Sy off ,
+the normalization property must either not be explicitly set or be set to
+.Sy none .
+The default value for the
+.Sy utf8only
+property is
+.Sy off .
+This property cannot be changed after the file system is created.
+.El
+.Pp
+The
+.Sy casesensitivity ,
+.Sy normalization ,
+and
+.Sy utf8only
+properties are also new permissions that can be assigned to non-privileged users
+by using the ZFS delegated administration feature.
+.Ss "Temporary Mount Point Properties"
+When a file system is mounted, either through
+.Xr mount 8
+for legacy mounts or the
+.Nm zfs Cm mount
+command for normal file systems, its mount options are set according to its
+properties.
+The correlation between properties and mount options is as follows:
+.Bd -literal
+ PROPERTY MOUNT OPTION
+ devices devices/nodevices
+ exec exec/noexec
+ readonly ro/rw
+ setuid setuid/nosetuid
+ xattr xattr/noxattr
+.Ed
+.Pp
+In addition, these options can be set on a per-mount basis using the
+.Fl o
+option, without affecting the property that is stored on disk.
+The values specified on the command line override the values stored in the
+dataset.
+The
+.Sy nosuid
+option is an alias for
+.Sy nodevices Ns \&, Ns Sy nosetuid .
+These properties are reported as
+.Qq temporary
+by the
+.Nm zfs Cm get
+command.
+If the properties are changed while the dataset is mounted, the new setting
+overrides any temporary settings.
+.Ss "User Properties"
+In addition to the standard native properties, ZFS supports arbitrary user
+properties.
+User properties have no effect on ZFS behavior, but applications or
+administrators can use them to annotate datasets
+.Pq file systems, volumes, and snapshots .
+.Pp
+User property names must contain a colon
+.Pq Qq Sy \&:
+character to distinguish them from native properties.
+They may contain lowercase letters, numbers, and the following punctuation
+characters: colon
+.Pq Qq Sy \&: ,
+dash
+.Pq Qq Sy - ,
+period
+.Pq Qq Sy \&. ,
+and underscore
+.Pq Qq Sy _ .
+The expected convention is that the property name is divided into two portions
+such as
+.Em module Ns \&: Ns Em property ,
+but this namespace is not enforced by ZFS.
+User property names can be at most 256 characters, and cannot begin with a dash
+.Pq Qq Sy - .
+.Pp
+When making programmatic use of user properties, it is strongly suggested to use
+a reversed
+.Sy DNS
+domain name for the
+.Em module
+component of property names to reduce the chance that two
+independently-developed packages use the same property name for different
+purposes.
+.Pp
+The values of user properties are arbitrary strings, are always inherited, and
+are never validated.
+All of the commands that operate on properties
+.Po Nm zfs Cm list ,
+.Nm zfs Cm get ,
+.Nm zfs Cm set ,
+and so forth
+.Pc
+can be used to manipulate both native properties and user properties.
+Use the
+.Nm zfs Cm inherit
+command to clear a user property.
+If the property is not defined in any parent dataset, it is removed entirely.
+Property values are limited to 8192 bytes.
+.Ss ZFS Volumes as Swap or Dump Devices
+During an initial installation a swap device and dump device are created on ZFS
+volumes in the ZFS root pool.
+By default, the swap area size is based on 1/2 the size of physical memory up to
+2 Gbytes.
+The size of the dump device depends on the kernel's requirements at installation
+time.
+Separate ZFS volumes must be used for the swap area and dump devices.
+Do not swap to a file on a ZFS file system.
+A ZFS swap file configuration is not supported.
+.Pp
+If you need to change your swap area or dump device after the system is
+installed or upgraded, use the
+.Xr swap 8
+and
+.Xr dumpadm 8
+commands.
+.Ss "Encryption"
+Enabling the
+.Sy encryption
+feature allows for the creation of encrypted filesystems and volumes.
+ZFS will encrypt all user data including file and zvol data, file attributes,
+ACLs, permission bits, directory listings, FUID mappings, and userused/groupused
+data.
+ZFS
+will not encrypt metadata related to the pool structure, including dataset
+names, dataset hierarchy, file size, file holes, and dedup tables.
+Key rotation is managed internally by the ZFS kernel module and changing the
+user's key does not require re-encrypting the entire dataset.
+Datasets can be scrubbed, resilvered, renamed, and deleted without the
+encryption keys being loaded
+.Po see the
+.Nm Cm load-key
+subcommand for more info on key loading
+.Pc .
+.Pp
+Creating an encrypted dataset requires specifying the
+.Sy encryption
+and
+.Sy keyformat
+properties at creation time, along with an optional
+.Sy keylocation
+and
+.Sy pbkdf2iters .
+After entering an encryption key, the created
+dataset will become an encryption root.
+Any descendant datasets will inherit their encryption key from the encryption
+root by default, meaning that loading, unloading, or changing the key for the
+encryption root will implicitly do the same for all inheriting datasets.
+If this inheritance is not desired, simply supply a
+.Sy keyformat
+when creating the child dataset or use
+.Nm Cm change-key
+to break an existing relationship, creating a new encryption root on the child.
+Note that the child's
+.Sy keyformat
+may match that of the parent while still creating a new encryption root, and
+that changing the
+.Sy encryption
+property alone does not create a new encryption root; this would simply use a
+different cipher suite with the same key as its encryption root.
+The one exception is that clones will always use their origin's encryption key.
+As a result of this exception, some encryption-related properties (namely
+.Sy keystatus ,
+.Sy keyformat ,
+.Sy keylocation ,
+and
+.Sy pbkdf2iters )
+do not inherit like other ZFS properties and instead use the value determined
+by their encryption root.
+Encryption root inheritance can be tracked via the read-only
+.Sy encryptionroot
+property.
+.Pp
+Encryption changes the behavior of a few ZFS operations.
+Encryption is applied after compression so compression ratios are preserved.
+Normally checksums in ZFS are 256 bits long, but for encrypted data the checksum
+is 128 bits of the user-chosen checksum and 128 bits of MAC from the encryption
+suite, which provides additional protection against maliciously altered data.
+Deduplication is still possible with encryption enabled but for security,
+datasets will only dedup against themselves, their snapshots, and their clones.
+.Pp
+There are a few limitations on encrypted datasets.
+Encrypted data cannot be embedded via the
+.Sy embedded_data
+feature.
+Encrypted datasets may not have
+.Sy copies Ns = Ns Sy 3
+since the implementation stores some encryption metadata where the third copy
+would normally be.
+Since compression is applied before encryption datasets may be vulnerable to a
+CRIME-like attack if applications accessing the data allow for it.
+Deduplication with encryption will leak information about which blocks are
+equivalent in a dataset and will incur an extra CPU cost per block written.
+.Sh SUBCOMMANDS
+All subcommands that modify state are logged persistently to the pool in their
+original form.
+.Bl -tag -width ""
+.It Nm Fl \&?
+Displays a help message.
+.It Xo
+.Nm
+.Cm create
+.Op Fl Pnpv
+.Oo Fl o Ar property Ns = Ns Ar value Oc Ns ...
+.Ar filesystem
+.Xc
+Creates a new ZFS file system.
+The file system is automatically mounted according to the
+.Sy mountpoint
+property inherited from the parent.
+.Bl -tag -width "-o"
+.It Fl o Ar property Ns = Ns Ar value
+Sets the specified property as if the command
+.Nm zfs Cm set Ar property Ns = Ns Ar value
+was invoked at the same time the dataset was created.
+Any editable ZFS property can also be set at creation time.
+Multiple
+.Fl o
+options can be specified.
+An error results if the same property is specified in multiple
+.Fl o
+options.
+.It Fl p
+Creates all the non-existing parent datasets.
+Datasets created in this manner are automatically mounted according to the
+.Sy mountpoint
+property inherited from their parent.
+Any property specified on the command line using the
+.Fl o
+option is ignored.
+If the target filesystem already exists, the operation completes successfully.
+.It Fl n
+Do a dry-run
+.Pq Qq No-op
+creation.
+No datasets will be created.
+This is useful in conjunction with the
+.Fl v
+or
+.Fl P
+flags to validate properties that are passed via
+.Fl o
+options and those implied by other options.
+The actual dataset creation can still fail due to insufficient privileges or
+available capacity.
+.It Fl P
+Print machine-parsable verbose information about the created dataset.
+Each line of output contains a key and one or two values, all separated by tabs.
+The
+.Sy create_ancestors
+and
+.Sy create
+keys have
+.Em filesystem
+as their only value.
+The
+.Sy create_ancestors
+key only appears if the
+.Fl p
+option is used.
+The
+.Sy property
+key has two values, a property name and that property's value.
+The
+.Sy property
+key may appear zero or more times, once for each property that will be set local
+to
+.Em filesystem
+due to the use of the
+.Fl o
+option.
+.It Fl v
+Print verbose information about the created dataset.
+.El
+.It Xo
+.Nm
+.Cm create
+.Op Fl ps
+.Op Fl b Ar blocksize
+.Oo Fl o Ar property Ns = Ns Ar value Oc Ns ...
+.Fl V Ar size Ar volume
+.Xc
+Creates a volume of the given size.
+The volume is exported as a block device in
+.Pa /dev/zvol/{dsk,rdsk}/path ,
+where
+.Em path
+is the name of the volume in the ZFS namespace.
+The size represents the logical size as exported by the device.
+By default, a reservation of equal size is created.
+.Pp
+.Ar size
+is automatically rounded up to the nearest 128 Kbytes to ensure that the volume
+has an integral number of blocks regardless of
+.Sy blocksize .
+.Bl -tag -width "-b"
+.It Fl b Ar blocksize
+Equivalent to
+.Fl o Sy volblocksize Ns = Ns Ar blocksize .
+If this option is specified in conjunction with
+.Fl o Sy volblocksize ,
+the resulting behavior is undefined.
+.It Fl o Ar property Ns = Ns Ar value
+Sets the specified property as if the
+.Nm zfs Cm set Ar property Ns = Ns Ar value
+command was invoked at the same time the dataset was created.
+Any editable ZFS property can also be set at creation time.
+Multiple
+.Fl o
+options can be specified.
+An error results if the same property is specified in multiple
+.Fl o
+options.
+.It Fl p
+Creates all the non-existing parent datasets.
+Datasets created in this manner are automatically mounted according to the
+.Sy mountpoint
+property inherited from their parent.
+Any property specified on the command line using the
+.Fl o
+option is ignored.
+If the target filesystem already exists, the operation completes successfully.
+.It Fl s
+Creates a sparse volume with no reservation.
+See
+.Sy volsize
+in the
+.Sx Native Properties
+section for more information about sparse volumes.
+.It Fl n
+Do a dry-run
+.Pq Qq No-op
+creation.
+No datasets will be created.
+This is useful in conjunction with the
+.Fl v
+or
+.Fl P
+flags to validate properties that are passed via
+.Fl o
+options and those implied by other options.
+The actual dataset creation can still fail due to insufficient privileges or
+available capacity.
+.It Fl P
+Print machine-parsable verbose information about the created dataset.
+Each line of output contains a key and one or two values, all separated by tabs.
+The
+.Sy create_ancestors
+and
+.Sy create
+keys have
+.Em volume
+as their only value.
+The
+.Sy create_ancestors
+key only appears if the
+.Fl p
+option is used.
+The
+.Sy property
+key has two values, a property name and that property's value.
+The
+.Sy property
+key may appear zero or more times, once for each property that will be set local
+to
+.Em volume
+due to the use of the
+.Fl b
+or
+.Fl o
+options, as well as
+.Sy refreservation
+if the volume is not sparse.
+.It Fl v
+Print verbose information about the created dataset.
+.El
+.It Xo
+.Nm
+.Cm destroy
+.Op Fl Rfnprv
+.Ar filesystem Ns | Ns Ar volume
+.Xc
+Destroys the given dataset.
+By default, the command unshares any file systems that are currently shared,
+unmounts any file systems that are currently mounted, and refuses to destroy a
+dataset that has active dependents
+.Pq children or clones .
+.Bl -tag -width "-R"
+.It Fl R
+Recursively destroy all dependents, including cloned file systems outside the
+target hierarchy.
+.It Fl f
+Force an unmount of any file systems using the
+.Nm unmount Fl f
+command.
+This option has no effect on non-file systems or unmounted file systems.
+.It Fl n
+Do a dry-run
+.Pq Qq No-op
+deletion.
+No data will be deleted.
+This is useful in conjunction with the
+.Fl v
+or
+.Fl p
+flags to determine what data would be deleted.
+.It Fl p
+Print machine-parsable verbose information about the deleted data.
+.It Fl r
+Recursively destroy all children.
+.It Fl v
+Print verbose information about the deleted data.
+.El
+.Pp
+Extreme care should be taken when applying either the
+.Fl r
+or the
+.Fl R
+options, as they can destroy large portions of a pool and cause unexpected
+behavior for mounted file systems in use.
+.It Xo
+.Nm
+.Cm destroy
+.Op Fl Rdnprv
+.Ar filesystem Ns | Ns Ar volume Ns @ Ns Ar snap Ns
+.Oo % Ns Ar snap Ns Oo , Ns Ar snap Ns Oo % Ns Ar snap Oc Oc Oc Ns ...
+.Xc
+The given snapshots are destroyed immediately if and only if the
+.Nm zfs Cm destroy
+command without the
+.Fl d
+option would have destroyed it.
+Such immediate destruction would occur, for example, if the snapshot had no
+clones and the user-initiated reference count were zero.
+.Pp
+If a snapshot does not qualify for immediate destruction, it is marked for
+deferred deletion.
+In this state, it exists as a usable, visible snapshot until both of the
+preconditions listed above are met, at which point it is destroyed.
+.Pp
+An inclusive range of snapshots may be specified by separating the first and
+last snapshots with a percent sign.
+The first and/or last snapshots may be left blank, in which case the
+filesystem's oldest or newest snapshot will be implied.
+.Pp
+Multiple snapshots
+.Pq or ranges of snapshots
+of the same filesystem or volume may be specified in a comma-separated list of
+snapshots.
+Only the snapshot's short name
+.Po the part after the
+.Sy @
+.Pc
+should be specified when using a range or comma-separated list to identify
+multiple snapshots.
+.Bl -tag -width "-R"
+.It Fl R
+Recursively destroy all clones of these snapshots, including the clones,
+snapshots, and children.
+If this flag is specified, the
+.Fl d
+flag will have no effect.
+.It Fl d
+Defer snapshot deletion.
+.It Fl n
+Do a dry-run
+.Pq Qq No-op
+deletion.
+No data will be deleted.
+This is useful in conjunction with the
+.Fl p
+or
+.Fl v
+flags to determine what data would be deleted.
+.It Fl p
+Print machine-parsable verbose information about the deleted data.
+.It Fl r
+Destroy
+.Pq or mark for deferred deletion
+all snapshots with this name in descendent file systems.
+.It Fl v
+Print verbose information about the deleted data.
+.Pp
+Extreme care should be taken when applying either the
+.Fl r
+or the
+.Fl R
+options, as they can destroy large portions of a pool and cause unexpected
+behavior for mounted file systems in use.
+.El
+.It Xo
+.Nm
+.Cm destroy
+.Ar filesystem Ns | Ns Ar volume Ns # Ns Ar bookmark
+.Xc
+The given bookmark is destroyed.
+.It Xo
+.Nm
+.Cm snapshot
+.Op Fl r
+.Oo Fl o Ar property Ns = Ns value Oc Ns ...
+.Ar filesystem Ns @ Ns Ar snapname Ns | Ns Ar volume Ns @ Ns Ar snapname Ns ...
+.Xc
+Creates snapshots with the given names.
+All previous modifications by successful system calls to the file system are
+part of the snapshots.
+Snapshots are taken atomically, so that all snapshots correspond to the same
+moment in time.
+See the
+.Sx Snapshots
+section for details.
+.Bl -tag -width "-o"
+.It Fl o Ar property Ns = Ns Ar value
+Sets the specified property; see
+.Nm zfs Cm create
+for details.
+.It Fl r
+Recursively create snapshots of all descendent datasets
+.El
+.It Xo
+.Nm
+.Cm rollback
+.Op Fl Rfr
+.Ar snapshot
+.Xc
+Roll back the given dataset to a previous snapshot.
+When a dataset is rolled back, all data that has changed since the snapshot is
+discarded, and the dataset reverts to the state at the time of the snapshot.
+By default, the command refuses to roll back to a snapshot other than the most
+recent one.
+In order to do so, all intermediate snapshots and bookmarks must be destroyed by
+specifying the
+.Fl r
+option.
+.Pp
+The
+.Fl rR
+options do not recursively destroy the child snapshots of a recursive snapshot.
+Only direct snapshots of the specified filesystem are destroyed by either of
+these options.
+To completely roll back a recursive snapshot, you must rollback the individual
+child snapshots.
+.Bl -tag -width "-R"
+.It Fl R
+Destroy any more recent snapshots and bookmarks, as well as any clones of those
+snapshots.
+.It Fl f
+Used with the
+.Fl R
+option to force an unmount of any clone file systems that are to be destroyed.
+.It Fl r
+Destroy any snapshots and bookmarks more recent than the one specified.
+.El
+.It Xo
+.Nm
+.Cm clone
+.Op Fl p
+.Oo Fl o Ar property Ns = Ns Ar value Oc Ns ...
+.Ar snapshot Ar filesystem Ns | Ns Ar volume
+.Xc
+Creates a clone of the given snapshot.
+See the
+.Sx Clones
+section for details.
+The target dataset can be located anywhere in the ZFS hierarchy, and is created
+as the same type as the original.
+.Bl -tag -width "-o"
+.It Fl o Ar property Ns = Ns Ar value
+Sets the specified property; see
+.Nm zfs Cm create
+for details.
+.It Fl p
+Creates all the non-existing parent datasets.
+Datasets created in this manner are automatically mounted according to the
+.Sy mountpoint
+property inherited from their parent.
+If the target filesystem or volume already exists, the operation completes
+successfully.
+.El
+.It Xo
+.Nm
+.Cm promote
+.Ar clone-filesystem
+.Xc
+Promotes a clone file system to no longer be dependent on its
+.Qq origin
+snapshot.
+This makes it possible to destroy the file system that the clone was created
+from.
+The clone parent-child dependency relationship is reversed, so that the origin
+file system becomes a clone of the specified file system.
+.Pp
+The snapshot that was cloned, and any snapshots previous to this snapshot, are
+now owned by the promoted clone.
+The space they use moves from the origin file system to the promoted clone, so
+enough space must be available to accommodate these snapshots.
+No new space is consumed by this operation, but the space accounting is
+adjusted.
+The promoted clone must not have any conflicting snapshot names of its own.
+The
+.Cm rename
+subcommand can be used to rename any conflicting snapshots.
+.It Xo
+.Nm
+.Cm rename
+.Op Fl f
+.Ar filesystem Ns | Ns Ar volume Ns | Ns Ar snapshot
+.Ar filesystem Ns | Ns Ar volume Ns | Ns Ar snapshot
+.Xc
+.It Xo
+.Nm
+.Cm rename
+.Op Fl fp
+.Ar filesystem Ns | Ns Ar volume
+.Ar filesystem Ns | Ns Ar volume
+.Xc
+Renames the given dataset.
+The new target can be located anywhere in the ZFS hierarchy, with the exception
+of snapshots.
+Snapshots can only be renamed within the parent file system or volume.
+When renaming a snapshot, the parent file system of the snapshot does not need
+to be specified as part of the second argument.
+Renamed file systems can inherit new mount points, in which case they are
+unmounted and remounted at the new mount point.
+.Bl -tag -width "-a"
+.It Fl f
+Force unmount any filesystems that need to be unmounted in the process.
+.It Fl p
+Creates all the nonexistent parent datasets.
+Datasets created in this manner are automatically mounted according to the
+.Sy mountpoint
+property inherited from their parent.
+.El
+.It Xo
+.Nm
+.Cm rename
+.Fl r
+.Ar snapshot Ar snapshot
+.Xc
+Recursively rename the snapshots of all descendent datasets.
+Snapshots are the only dataset that can be renamed recursively.
+.It Xo
+.Nm
+.Cm list
+.Op Fl r Ns | Ns Fl d Ar depth
+.Op Fl Hp
+.Oo Fl o Ar property Ns Oo , Ns Ar property Oc Ns ... Oc
+.Oo Fl s Ar property Oc Ns ...
+.Oo Fl S Ar property Oc Ns ...
+.Oo Fl t Ar type Ns Oo , Ns Ar type Oc Ns ... Oc
+.Oo Ar filesystem Ns | Ns Ar volume Ns | Ns Ar snapshot Oc Ns ...
+.Xc
+Lists the property information for the given datasets in tabular form.
+If specified, you can list property information by the absolute pathname or the
+relative pathname.
+By default, all file systems and volumes are displayed.
+Snapshots are displayed if the
+.Sy listsnaps
+property is
+.Sy on
+.Po the default is
+.Sy off
+.Pc .
+The following fields are displayed,
+.Sy name Ns \&, Ns Sy used Ns \&, Ns Sy available Ns \&, Ns Sy referenced Ns \&, Ns
+.Sy mountpoint .
+.Bl -tag -width "-H"
+.It Fl H
+Used for scripting mode.
+Do not print headers and separate fields by a single tab instead of arbitrary
+white space.
+.It Fl S Ar property
+Same as the
+.Fl s
+option, but sorts by property in descending order.
+.It Fl d Ar depth
+Recursively display any children of the dataset, limiting the recursion to
+.Ar depth .
+A
+.Ar depth
+of
+.Sy 1
+will display only the dataset and its direct children.
+.It Fl o Ar property
+A comma-separated list of properties to display.
+The property must be:
+.Bl -bullet
+.It
+One of the properties described in the
+.Sx Native Properties
+section
+.It
+A user property
+.It
+The value
+.Sy name
+to display the dataset name
+.It
+The value
+.Sy space
+to display space usage properties on file systems and volumes.
+This is a shortcut for specifying
+.Fl o Sy name Ns \&, Ns Sy avail Ns \&, Ns Sy used Ns \&, Ns Sy usedsnap Ns \&, Ns
+.Sy usedds Ns \&, Ns Sy usedrefreserv Ns \&, Ns Sy usedchild Fl t
+.Sy filesystem Ns \&, Ns Sy volume
+syntax.
+.El
+.It Fl p
+Display numbers in parsable
+.Pq exact
+values.
+.It Fl r
+Recursively display any children of the dataset on the command line.
+.It Fl s Ar property
+A property for sorting the output by column in ascending order based on the
+value of the property.
+The property must be one of the properties described in the
+.Sx Properties
+section, or the special value
+.Sy name
+to sort by the dataset name.
+Multiple properties can be specified at one time using multiple
+.Fl s
+property options.
+Multiple
+.Fl s
+options are evaluated from left to right in decreasing order of importance.
+The following is a list of sorting criteria:
+.Bl -bullet
+.It
+Numeric types sort in numeric order.
+.It
+String types sort in alphabetical order.
+.It
+Types inappropriate for a row sort that row to the literal bottom, regardless of
+the specified ordering.
+.El
+.Pp
+If no sorting options are specified the existing behavior of
+.Nm zfs Cm list
+is preserved.
+.It Fl t Ar type
+A comma-separated list of types to display, where
+.Ar type
+is one of
+.Sy filesystem ,
+.Sy snapshot ,
+.Sy volume ,
+.Sy bookmark ,
+or
+.Sy all .
+For example, specifying
+.Fl t Sy snapshot
+displays only snapshots.
+.El
+.It Xo
+.Nm
+.Cm set
+.Ar property Ns = Ns Ar value Oo Ar property Ns = Ns Ar value Oc Ns ...
+.Ar filesystem Ns | Ns Ar volume Ns | Ns Ar snapshot Ns ...
+.Xc
+Sets the property or list of properties to the given value(s) for each dataset.
+Only some properties can be edited.
+See the
+.Sx Properties
+section for more information on what properties can be set and acceptable
+values.
+Numeric values can be specified as exact values, or in a human-readable form
+with a suffix of
+.Sy B , K , M , G , T , P , E , Z
+.Po for bytes, kilobytes, megabytes, gigabytes, terabytes, petabytes, exabytes,
+or zettabytes, respectively
+.Pc .
+User properties can be set on snapshots.
+For more information, see the
+.Sx User Properties
+section.
+.It Xo
+.Nm
+.Cm get
+.Op Fl r Ns | Ns Fl d Ar depth
+.Op Fl Hp
+.Oo Fl o Ar field Ns Oo , Ns Ar field Oc Ns ... Oc
+.Oo Fl s Ar source Ns Oo , Ns Ar source Oc Ns ... Oc
+.Oo Fl t Ar type Ns Oo , Ns Ar type Oc Ns ... Oc
+.Cm all | Ar property Ns Oo , Ns Ar property Oc Ns ...
+.Ar filesystem Ns | Ns Ar volume Ns | Ns Ar snapshot Ns | Ns Ar bookmark Ns ...
+.Xc
+Displays properties for the given datasets.
+If no datasets are specified, then the command displays properties for all
+datasets on the system.
+For each property, the following columns are displayed:
+.Bd -literal
+ name Dataset name
+ property Property name
+ value Property value
+ source Property source. Can either be local, default,
+ temporary, inherited, or none (-).
+.Ed
+.Pp
+All columns are displayed by default, though this can be controlled by using the
+.Fl o
+option.
+This command takes a comma-separated list of properties as described in the
+.Sx Native Properties
+and
+.Sx User Properties
+sections.
+.Pp
+The special value
+.Sy all
+can be used to display all properties that apply to the given dataset's type
+.Pq filesystem, volume, snapshot, or bookmark .
+.Bl -tag -width "-H"
+.It Fl H
+Display output in a form more easily parsed by scripts.
+Any headers are omitted, and fields are explicitly separated by a single tab
+instead of an arbitrary amount of space.
+.It Fl d Ar depth
+Recursively display any children of the dataset, limiting the recursion to
+.Ar depth .
+A depth of
+.Sy 1
+will display only the dataset and its direct children.
+.It Fl o Ar field
+A comma-separated list of columns to display.
+.Sy name Ns \&, Ns Sy property Ns \&, Ns Sy value Ns \&, Ns Sy source
+is the default value.
+.It Fl p
+Display numbers in parsable
+.Pq exact
+values.
+.It Fl r
+Recursively display properties for any children.
+.It Fl s Ar source
+A comma-separated list of sources to display.
+Those properties coming from a source other than those in this list are ignored.
+Each source must be one of the following:
+.Sy local ,
+.Sy default ,
+.Sy inherited ,
+.Sy temporary ,
+and
+.Sy none .
+The default value is all sources.
+.It Fl t Ar type
+A comma-separated list of types to display, where
+.Ar type
+is one of
+.Sy filesystem ,
+.Sy snapshot ,
+.Sy volume ,
+.Sy bookmark ,
+or
+.Sy all .
+.El
+.It Xo
+.Nm
+.Cm inherit
+.Op Fl rS
+.Ar property Ar filesystem Ns | Ns Ar volume Ns | Ns Ar snapshot Ns ...
+.Xc
+Clears the specified property, causing it to be inherited from an ancestor,
+restored to default if no ancestor has the property set, or with the
+.Fl S
+option reverted to the received value if one exists.
+See the
+.Sx Properties
+section for a listing of default values, and details on which properties can be
+inherited.
+.Bl -tag -width "-r"
+.It Fl r
+Recursively inherit the given property for all children.
+.It Fl S
+Revert the property to the received value if one exists; otherwise operate as
+if the
+.Fl S
+option was not specified.
+.El
+.It Xo
+.Nm
+.Cm remap
+.Ar filesystem Ns | Ns Ar volume
+.Xc
+Remap the indirect blocks in the given filesystem or volume so that they no
+longer reference blocks on previously removed vdevs and we can eventually
+shrink the size of the indirect mapping objects for the previously removed
+vdevs. Note that remapping all blocks might not be possible and that
+references from snapshots will still exist and cannot be remapped.
+.It Xo
+.Nm
+.Cm upgrade
+.Xc
+Displays a list of file systems that are not the most recent version.
+.It Xo
+.Nm
+.Cm upgrade
+.Fl v
+.Xc
+Displays a list of currently supported file system versions.
+.It Xo
+.Nm
+.Cm upgrade
+.Op Fl r
+.Op Fl V Ar version
+.Fl a | Ar filesystem
+.Xc
+Upgrades file systems to a new on-disk version.
+Once this is done, the file systems will no longer be accessible on systems
+running older versions of the software.
+.Nm zfs Cm send
+streams generated from new snapshots of these file systems cannot be accessed on
+systems running older versions of the software.
+.Pp
+In general, the file system version is independent of the pool version.
+See
+.Xr zpool 8
+for information on the
+.Nm zpool Cm upgrade
+command.
+.Pp
+In some cases, the file system version and the pool version are interrelated and
+the pool version must be upgraded before the file system version can be
+upgraded.
+.Bl -tag -width "-V"
+.It Fl V Ar version
+Upgrade to the specified
+.Ar version .
+If the
+.Fl V
+flag is not specified, this command upgrades to the most recent version.
+This
+option can only be used to increase the version number, and only up to the most
+recent version supported by this software.
+.It Fl a
+Upgrade all file systems on all imported pools.
+.It Ar filesystem
+Upgrade the specified file system.
+.It Fl r
+Upgrade the specified file system and all descendent file systems.
+.El
+.It Xo
+.Nm
+.Cm userspace
+.Op Fl Hinp
+.Oo Fl o Ar field Ns Oo , Ns Ar field Oc Ns ... Oc
+.Oo Fl s Ar field Oc Ns ...
+.Oo Fl S Ar field Oc Ns ...
+.Oo Fl t Ar type Ns Oo , Ns Ar type Oc Ns ... Oc
+.Ar filesystem Ns | Ns Ar snapshot
+.Xc
+Displays space consumed by, and quotas on, each user in the specified filesystem
+or snapshot.
+This corresponds to the
+.Sy userused@ Ns Em user ,
+.Sy userobjused@ Ns Em user ,
+.Sy userquota@ Ns Em user,
+and
+.Sy userobjquota@ Ns Em user
+properties.
+.Bl -tag -width "-H"
+.It Fl H
+Do not print headers, use tab-delimited output.
+.It Fl S Ar field
+Sort by this field in reverse order.
+See
+.Fl s .
+.It Fl i
+Translate SID to POSIX ID.
+The POSIX ID may be ephemeral if no mapping exists.
+Normal POSIX interfaces
+.Po for example,
+.Xr stat 2 ,
+.Nm ls Fl l
+.Pc
+perform this translation, so the
+.Fl i
+option allows the output from
+.Nm zfs Cm userspace
+to be compared directly with those utilities.
+However,
+.Fl i
+may lead to confusion if some files were created by an SMB user before a
+SMB-to-POSIX name mapping was established.
+In such a case, some files will be owned by the SMB entity and some by the POSIX
+entity.
+However, the
+.Fl i
+option will report that the POSIX entity has the total usage and quota for both.
+.It Fl n
+Print numeric ID instead of user/group name.
+.It Fl o Ar field Ns Oo , Ns Ar field Oc Ns ...
+Display only the specified fields from the following set:
+.Sy type ,
+.Sy name ,
+.Sy used ,
+.Sy quota .
+The default is to display all fields.
+.It Fl p
+Use exact
+.Pq parsable
+numeric output.
+.It Fl s Ar field
+Sort output by this field.
+The
+.Fl s
+and
+.Fl S
+flags may be specified multiple times to sort first by one field, then by
+another.
+The default is
+.Fl s Sy type Fl s Sy name .
+.It Fl t Ar type Ns Oo , Ns Ar type Oc Ns ...
+Print only the specified types from the following set:
+.Sy all ,
+.Sy posixuser ,
+.Sy smbuser ,
+.Sy posixgroup ,
+.Sy smbgroup .
+The default is
+.Fl t Sy posixuser Ns \&, Ns Sy smbuser .
+The default can be changed to include group types.
+.El
+.It Xo
+.Nm
+.Cm groupspace
+.Op Fl Hinp
+.Oo Fl o Ar field Ns Oo , Ns Ar field Oc Ns ... Oc
+.Oo Fl s Ar field Oc Ns ...
+.Oo Fl S Ar field Oc Ns ...
+.Oo Fl t Ar type Ns Oo , Ns Ar type Oc Ns ... Oc
+.Ar filesystem Ns | Ns Ar snapshot
+.Xc
+Displays space consumed by, and quotas on, each group in the specified
+filesystem or snapshot.
+This subcommand is identical to
+.Nm zfs Cm userspace ,
+except that the default types to display are
+.Fl t Sy posixgroup Ns \&, Ns Sy smbgroup .
+.It Xo
+.Nm
+.Cm projectspace
+.Op Fl Hp
+.Oo Fl o Ar field Ns Oo , Ns Ar field Oc Ns ... Oc
+.Oo Fl s Ar field Oc Ns ...
+.Oo Fl S Ar field Oc Ns ...
+.Ar filesystem Ns | Ns Ar snapshot
+.Xc
+Displays space consumed by, and quotas on, each project in the specified
+filesystem or snapshot.
+This subcommand is identical to
+.Nm zfs Cm userspace ,
+except that the project identifier is numeral, not name.
+So need neither the option
+.Sy -i
+for SID to POSIX ID nor
+.Sy -n
+for numeric ID, nor
+.Sy -t
+for types.
+.It Xo
+.Nm
+.Cm project
+.Oo Fl d Ns | Ns Fl r Ns Oc
+.Ar file Ns | Ns Ar directory Ns ...
+.Xc
+List project identifier (ID) and inherit flag of files or directories.
+.Bl -tag -width "-d"
+.It Fl d
+Show the directory project ID and inherit flag, not its children.
+It will overwrite the former specified
+.Fl r
+option.
+.It Fl r
+Show on subdirectories recursively.
+It will overwrite the former specified
+.Fl d
+option.
+.El
+.It Xo
+.Nm
+.Cm project
+.Fl C
+.Oo Fl kr Ns Oc
+.Ar file Ns | Ns Ar directory Ns ...
+.Xc
+Clear project inherit flag and/or ID on the files or directories.
+.Bl -tag -width "-k"
+.It Fl k
+Keep the project ID unchanged.
+If not specified, the project ID will be reset as zero.
+.It Fl r
+Clear on subdirectories recursively.
+.El
+.It Xo
+.Nm
+.Cm project
+.Fl c
+.Oo Fl 0 Ns Oc
+.Oo Fl d Ns | Ns Fl r Ns Oc
+.Op Fl p Ar id
+.Ar file Ns | Ns Ar directory Ns ...
+.Xc
+Check project ID and inherit flag on the files or directories, report the
+entries without project inherit flag or with different project IDs from the
+specified (via
+.Fl p
+option) value or the target directory's project ID.
+.Bl -tag -width "-0"
+.It Fl 0
+Print file name with a trailing NUL instead of newline (by default), like
+"find -print0".
+.It Fl d
+Check the directory project ID and inherit flag, not its children.
+It will overwrite the former specified
+.Fl r
+option.
+.It Fl p
+Specify the referenced ID for comparing with the target files or directories'
+project IDs.
+If not specified, the target (top) directory's project ID will be used as the
+referenced one.
+.It Fl r
+Check on subdirectories recursively.
+It will overwrite the former specified
+.Fl d
+option.
+.El
+.It Xo
+.Nm
+.Cm project
+.Op Fl p Ar id
+.Oo Fl rs Ns Oc
+.Ar file Ns | Ns Ar directory Ns ...
+.Xc
+Set project ID and/or inherit flag on the files or directories.
+.Bl -tag -width "-p"
+.It Fl p
+Set the files' or directories' project ID with the given value.
+.It Fl r
+Set on subdirectories recursively.
+.It Fl s
+Set project inherit flag on the given files or directories.
+It is usually used for setup tree quota on the directory target with
+.Fl r
+option specified together.
+When setup tree quota, by default the directory's project ID will be set to
+all its descendants unless you specify the project ID via
+.Fl p
+option explicitly.
+.El
+.It Xo
+.Nm
+.Cm mount
+.Xc
+Displays all ZFS file systems currently mounted.
+.It Xo
+.Nm
+.Cm mount
+.Op Fl Olv
+.Op Fl o Ar options
+.Fl a | Ar filesystem
+.Xc
+Mounts ZFS file systems.
+.Bl -tag -width "-O"
+.It Fl O
+Perform an overlay mount.
+See
+.Xr mount 8
+for more information.
+.It Fl a
+Mount all available ZFS file systems.
+Invoked automatically as part of the boot process.
+.It Fl l
+Load keys for encrypted filesystems as they are being mounted.
+This is equivalent to executing
+.Nm Cm load-key
+on each encryption root before mounting it.
+Note that if a filesystem has a
+.Sy keylocation
+of
+.Sy prompt
+this will cause the terminal to interactively block after asking for the key.
+.It Ar filesystem
+Mount the specified filesystem.
+.It Fl o Ar options
+An optional, comma-separated list of mount options to use temporarily for the
+duration of the mount.
+See the
+.Sx Temporary Mount Point Properties
+section for details.
+.It Fl v
+Report mount progress.
+.El
+.It Xo
+.Nm
+.Cm unmount
+.Op Fl f
+.Fl a | Ar filesystem Ns | Ns Ar mountpoint
+.Xc
+Unmounts currently mounted ZFS file systems.
+.Bl -tag -width "-a"
+.It Fl a
+Unmount all available ZFS file systems.
+Invoked automatically as part of the shutdown process.
+.It Ar filesystem Ns | Ns Ar mountpoint
+Unmount the specified filesystem.
+The command can also be given a path to a ZFS file system mount point on the
+system.
+.It Fl f
+Forcefully unmount the file system, even if it is currently in use.
+.El
+.It Xo
+.Nm
+.Cm share
+.Fl a | Ar filesystem
+.Xc
+Shares available ZFS file systems.
+.Bl -tag -width "-a"
+.It Fl a
+Share all available ZFS file systems.
+Invoked automatically as part of the boot process.
+.It Ar filesystem
+Share the specified filesystem according to the
+.Sy sharenfs
+and
+.Sy sharesmb
+properties.
+File systems are shared when the
+.Sy sharenfs
+or
+.Sy sharesmb
+property is set.
+.El
+.It Xo
+.Nm
+.Cm unshare
+.Fl a | Ar filesystem Ns | Ns Ar mountpoint
+.Xc
+Unshares currently shared ZFS file systems.
+.Bl -tag -width "-a"
+.It Fl a
+Unshare all available ZFS file systems.
+Invoked automatically as part of the shutdown process.
+.It Ar filesystem Ns | Ns Ar mountpoint
+Unshare the specified filesystem.
+The command can also be given a path to a ZFS file system shared on the system.
+.El
+.It Xo
+.Nm
+.Cm bookmark
+.Ar snapshot bookmark
+.Xc
+Creates a bookmark of the given snapshot.
+Bookmarks mark the point in time when the snapshot was created, and can be used
+as the incremental source for a
+.Nm zfs Cm send
+command.
+.Pp
+This feature must be enabled to be used.
+See
+.Xr zpool-features 7
+for details on ZFS feature flags and the
+.Sy bookmarks
+feature.
+.It Xo
+.Nm
+.Cm send
+.Op Fl DLPRbcehnpvw
+.Op Oo Fl I Ns | Ns Fl i Oc Ar snapshot
+.Ar snapshot
+.Xc
+Creates a stream representation of the second
+.Ar snapshot ,
+which is written to standard output.
+The output can be redirected to a file or to a different system
+.Po for example, using
+.Xr ssh 1
+.Pc .
+By default, a full stream is generated.
+.Bl -tag -width "-D"
+.It Fl D , -dedup
+Generate a deduplicated stream.
+Blocks which would have been sent multiple times in the send stream will only be
+sent once.
+The receiving system must also support this feature to receive a deduplicated
+stream.
+This flag can be used regardless of the dataset's
+.Sy dedup
+property, but performance will be much better if the filesystem uses a
+dedup-capable checksum
+.Po for example,
+.Sy sha256
+.Pc .
+.It Fl I Ar snapshot
+Generate a stream package that sends all intermediary snapshots from the first
+snapshot to the second snapshot.
+For example,
+.Fl I Em @a Em fs@d
+is similar to
+.Fl i Em @a Em fs@b Ns \&; Fl i Em @b Em fs@c Ns \&; Fl i Em @c Em fs@d .
+The incremental source may be specified as with the
+.Fl i
+option.
+.It Fl L , -large-block
+Generate a stream which may contain blocks larger than 128KB.
+This flag has no effect if the
+.Sy large_blocks
+pool feature is disabled, or if the
+.Sy recordsize
+property of this filesystem has never been set above 128KB.
+The receiving system must have the
+.Sy large_blocks
+pool feature enabled as well.
+See
+.Xr zpool-features 7
+for details on ZFS feature flags and the
+.Sy large_blocks
+feature.
+.It Fl P , -parsable
+Print machine-parsable verbose information about the stream package generated.
+.It Fl R , -replicate
+Generate a replication stream package, which will replicate the specified
+file system, and all descendent file systems, up to the named snapshot.
+When received, all properties, snapshots, descendent file systems, and clones
+are preserved.
+.Pp
+If the
+.Fl i
+or
+.Fl I
+flags are used in conjunction with the
+.Fl R
+flag, an incremental replication stream is generated.
+The current values of properties, and current snapshot and file system names are
+set when the stream is received.
+If the
+.Fl F
+flag is specified when this stream is received, snapshots and file systems that
+do not exist on the sending side are destroyed.
+If the
+.Fl R
+flag is used to send encrypted datasets, then
+.Fl w
+must also be specified.
+.It Fl e , -embed
+Generate a more compact stream by using
+.Sy WRITE_EMBEDDED
+records for blocks which are stored more compactly on disk by the
+.Sy embedded_data
+pool feature.
+This flag has no effect if the
+.Sy embedded_data
+feature is disabled.
+The receiving system must have the
+.Sy embedded_data
+feature enabled.
+If the
+.Sy lz4_compress
+feature is active on the sending system, then the receiving system must have
+that feature enabled as well.
+Datasets that are sent with this flag may not be received as an encrypted
+dataset, since encrypted datasets cannot use the
+.Sy embedded_data
+feature.
+See
+.Xr zpool-features 7
+for details on ZFS feature flags and the
+.Sy embedded_data
+feature.
+.It Fl b, -backup
+Sends only received property values whether or not they are overridden by local
+settings, but only if the dataset has ever been received.
+Use this option when you want
+.Nm zfs Cm receive
+to restore received properties backed up on the sent dataset and to avoid
+sending local settings that may have nothing to do with the source dataset,
+but only with how the data is backed up.
+.It Fl c , -compressed
+Generate a more compact stream by using compressed WRITE records for blocks
+which are compressed on disk and in memory
+.Po see the
+.Sy compression
+property for details
+.Pc .
+If the
+.Sy lz4_compress
+feature is active on the sending system, then the receiving system must have
+that feature enabled as well.
+If the
+.Sy large_blocks
+feature is enabled on the sending system but the
+.Fl L
+option is not supplied in conjunction with
+.Fl c ,
+then the data will be decompressed before sending so it can be split into
+smaller block sizes.
+.It Fl h, -holds
+Generate a stream package that includes any snapshot holds (created with the
+.Sy zfs hold
+command), and indicating to
+.Sy zfs receive
+that the holds be applied to the dataset on the receiving system.
+.It Fl i Ar snapshot
+Generate an incremental stream from the first
+.Ar snapshot
+.Pq the incremental source
+to the second
+.Ar snapshot
+.Pq the incremental target .
+The incremental source can be specified as the last component of the snapshot
+name
+.Po the
+.Sy @
+character and following
+.Pc
+and it is assumed to be from the same file system as the incremental target.
+.Pp
+If the destination is a clone, the source may be the origin snapshot, which must
+be fully specified
+.Po for example,
+.Em pool/fs@origin ,
+not just
+.Em @origin
+.Pc .
+.It Fl n , -dryrun
+Do a dry-run
+.Pq Qq No-op
+send.
+Do not generate any actual send data.
+This is useful in conjunction with the
+.Fl v
+or
+.Fl P
+flags to determine what data will be sent.
+In this case, the verbose output will be written to standard output
+.Po contrast with a non-dry-run, where the stream is written to standard output
+and the verbose output goes to standard error
+.Pc .
+.It Fl p , -props
+Include the dataset's properties in the stream.
+This flag is implicit when
+.Fl R
+is specified.
+The receiving system must also support this feature.
+Sends of encrypted datasets must use
+.Fl w
+when using this flag.
+.It Fl w , -raw
+For encrypted datasets, send data exactly as it exists on disk.
+This allows backups to be taken even if encryption keys are not currently
+loaded.
+The backup may then be received on an untrusted machine since that machine will
+not have the encryption keys to read the protected data or alter it without
+being detected.
+Upon being received, the dataset will have the same encryption keys as it did
+on the send side, although the
+.Sy keylocation
+property will be defaulted to
+.Sy prompt
+if not otherwise provided.
+For unencrypted datasets, this flag will be equivalent to
+.Fl Lec .
+Note that if you do not use this flag for sending encrypted datasets,
+data will be sent unencrypted and may be re-encrypted with a different
+encryption key on the receiving system, which will disable the ability
+to do a raw send to that system for incrementals.
+.It Fl v , -verbose
+Print verbose information about the stream package generated.
+This information includes a per-second report of how much data has been sent.
+.Pp
+The format of the stream is committed.
+You will be able to receive your streams on future versions of ZFS .
+.El
+.It Xo
+.Nm
+.Cm send
+.Op Fl Lcew
+.Op Fl i Ar snapshot Ns | Ns Ar bookmark
+.Ar filesystem Ns | Ns Ar volume Ns | Ns Ar snapshot
+.Xc
+Generate a send stream, which may be of a filesystem, and may be incremental
+from a bookmark.
+If the destination is a filesystem or volume, the pool must be read-only, or the
+filesystem must not be mounted.
+When the stream generated from a filesystem or volume is received, the default
+snapshot name will be
+.Qq --head-- .
+.Bl -tag -width "-L"
+.It Fl L , -large-block
+Generate a stream which may contain blocks larger than 128KB.
+This flag has no effect if the
+.Sy large_blocks
+pool feature is disabled, or if the
+.Sy recordsize
+property of this filesystem has never been set above 128KB.
+The receiving system must have the
+.Sy large_blocks
+pool feature enabled as well.
+See
+.Xr zpool-features 7
+for details on ZFS feature flags and the
+.Sy large_blocks
+feature.
+.It Fl c , -compressed
+Generate a more compact stream by using compressed WRITE records for blocks
+which are compressed on disk and in memory
+.Po see the
+.Sy compression
+property for details
+.Pc .
+If the
+.Sy lz4_compress
+feature is active on the sending system, then the receiving system must have
+that feature enabled as well.
+If the
+.Sy large_blocks
+feature is enabled on the sending system but the
+.Fl L
+option is not supplied in conjunction with
+.Fl c ,
+then the data will be decompressed before sending so it can be split into
+smaller block sizes.
+.It Fl e , -embed
+Generate a more compact stream by using
+.Sy WRITE_EMBEDDED
+records for blocks which are stored more compactly on disk by the
+.Sy embedded_data
+pool feature.
+This flag has no effect if the
+.Sy embedded_data
+feature is disabled.
+The receiving system must have the
+.Sy embedded_data
+feature enabled.
+If the
+.Sy lz4_compress
+feature is active on the sending system, then the receiving system must have
+that feature enabled as well.
+Datasets that are sent with this flag may not be received as an encrypted
+dataset, since encrypted datasets cannot use the
+.Sy embedded_data
+feature.
+See
+.Xr zpool-features 7
+for details on ZFS feature flags and the
+.Sy embedded_data
+feature.
+.It Fl i Ar snapshot Ns | Ns Ar bookmark
+Generate an incremental send stream.
+The incremental source must be an earlier snapshot in the destination's history.
+It will commonly be an earlier snapshot in the destination's file system, in
+which case it can be specified as the last component of the name
+.Po the
+.Sy #
+or
+.Sy @
+character and following
+.Pc .
+.Pp
+If the incremental target is a clone, the incremental source can be the origin
+snapshot, or an earlier snapshot in the origin's filesystem, or the origin's
+origin, etc.
+.It Fl w , -raw
+For encrypted datasets, send data exactly as it exists on disk.
+This allows backups to be taken even if encryption keys are not currently
+loaded.
+The backup may then be received on an untrusted machine since that machine will
+not have the encryption keys to read the protected data or alter it without
+being detected.
+Upon being received, the dataset will have the same encryption keys as it did
+on the send side, although the
+.Sy keylocation
+property will be defaulted to
+.Sy prompt
+if not otherwise provided.
+For unencrypted datasets, this flag will be equivalent to
+.Fl Lec .
+Note that if you do not use this flag for sending encrypted datasets,
+data will be sent unencrypted and may be re-encrypted with a different
+encryption key on the receiving system, which will disable the ability
+to do a raw send to that system for incrementals.
+.El
+.It Xo
+.Nm
+.Cm send
+.Op Fl Penv
+.Fl t
+.Ar receive_resume_token
+.Xc
+Creates a send stream which resumes an interrupted receive.
+The
+.Ar receive_resume_token
+is the value of this property on the filesystem or volume that was being
+received into.
+See the documentation for
+.Sy zfs receive -s
+for more details.
+.It Xo
+.Nm
+.Cm receive
+.Op Fl Fhnsuv
+.Op Fl o Sy origin Ns = Ns Ar snapshot
+.Op Fl o Ar property Ns = Ns Ar value
+.Op Fl x Ar property
+.Ar filesystem Ns | Ns Ar volume Ns | Ns Ar snapshot
+.Xc
+.It Xo
+.Nm
+.Cm receive
+.Op Fl Fhnsuv
+.Op Fl d Ns | Ns Fl e
+.Op Fl o Sy origin Ns = Ns Ar snapshot
+.Op Fl o Ar property Ns = Ns Ar value
+.Op Fl x Ar property
+.Ar filesystem
+.Xc
+Creates a snapshot whose contents are as specified in the stream provided on
+standard input.
+If a full stream is received, then a new file system is created as well.
+Streams are created using the
+.Nm zfs Cm send
+subcommand, which by default creates a full stream.
+.Nm zfs Cm recv
+can be used as an alias for
+.Nm zfs Cm receive .
+.Pp
+If an incremental stream is received, then the destination file system must
+already exist, and its most recent snapshot must match the incremental stream's
+source.
+For
+.Sy zvols ,
+the destination device link is destroyed and recreated, which means the
+.Sy zvol
+cannot be accessed during the
+.Cm receive
+operation.
+.Pp
+When a snapshot replication package stream that is generated by using the
+.Nm zfs Cm send Fl R
+command is received, any snapshots that do not exist on the sending location are
+destroyed by using the
+.Nm zfs Cm destroy Fl d
+command.
+.Pp
+If
+.Fl o Em property Ns = Ns Ar value
+or
+.Fl x Em property
+is specified, it applies to the effective value of the property throughout
+the entire subtree of replicated datasets.
+Effective property values will be
+set (
+.Fl o
+) or inherited (
+.Fl x
+) on the topmost in the replicated subtree.
+In descendant datasets, if the property is set by the send stream, it will be
+overridden by forcing the property to be inherited from the top‐most file
+system.
+Received properties are retained in spite of being overridden and may be
+restored with
+.Nm zfs Cm inherit Fl S .
+Specifying
+.Fl o Sy origin Ns = Ns Em snapshot
+is a special case because, even if
+.Sy origin
+is a read-only property and cannot be set, it's allowed to receive the send
+stream as a clone of the given snapshot.
+.Pp
+Raw encrypted send streams (created with
+.Nm zfs Cm send Fl w
+) may only be received as is, and cannot be re-encrypted, decrypted, or
+recompressed by the receive process.
+Unencrypted streams can be received as encrypted datasets, either through
+inheritance or by specifying encryption parameters with the
+.Fl o
+options.
+Note that the
+.Sy keylocation
+property cannot be overridden to
+.Sy prompt
+during a receive.
+This is because the receive process itself is already using
+stdin for the send stream.
+Instead, the property can be overridden after the receive completes.
+.Pp
+The added security provided by raw sends adds some restrictions to the send
+and receive process.
+ZFS will not allow a mix of raw receives and non-raw receives.
+Specifically, any raw incremental receives that are attempted after
+a non-raw receive will fail.
+Non-raw receives do not have this restriction and, therefore, are always
+possible.
+Because of this, it is best practice to always use either raw sends for
+their security benefits or non-raw sends for their flexibility when working
+with encrypted datasets, but not a combination.
+.Pp
+The reason for this restriction stems from the inherent restrictions of the
+AEAD ciphers that ZFS uses to encrypt data.
+When using ZFS native encryption, each block of data is encrypted against
+a randomly generated number known as the "initialization vector" (IV),
+which is stored in the filesystem metadata.
+This number is required by the encryption algorithms whenever the data is to
+be decrypted.
+Together, all of the IVs provided for all of the blocks in a given snapshot
+are collectively called an "IV set".
+When ZFS performs a raw send, the IV set is transferred from the source to
+the destination in the send stream.
+When ZFS performs a non-raw send, the data is decrypted by the source
+system and re-encrypted by the destination system, creating a snapshot with
+effectively the same data, but a different IV set.
+In order for decryption to work after a raw send, ZFS must ensure that the
+IV set used on both the source and destination side match.
+When an incremental raw receive is performed on top of an existing snapshot,
+ZFS will check to confirm that the "from" snapshot on both the source and
+destination were using the same IV set, ensuring the new IV set is consistent.
+.Pp
+The name of the snapshot
+.Pq and file system, if a full stream is received
+that this subcommand creates depends on the argument type and the use of the
+.Fl d
+or
+.Fl e
+options.
+.Pp
+If the argument is a snapshot name, the specified
+.Ar snapshot
+is created.
+If the argument is a file system or volume name, a snapshot with the same name
+as the sent snapshot is created within the specified
+.Ar filesystem
+or
+.Ar volume .
+If neither of the
+.Fl d
+or
+.Fl e
+options are specified, the provided target snapshot name is used exactly as
+provided.
+.Pp
+The
+.Fl d
+and
+.Fl e
+options cause the file system name of the target snapshot to be determined by
+appending a portion of the sent snapshot's name to the specified target
+.Ar filesystem .
+If the
+.Fl d
+option is specified, all but the first element of the sent snapshot's file
+system path
+.Pq usually the pool name
+is used and any required intermediate file systems within the specified one are
+created.
+If the
+.Fl e
+option is specified, then only the last element of the sent snapshot's file
+system name
+.Pq i.e. the name of the source file system itself
+is used as the target file system name.
+.Bl -tag -width "-F"
+.It Fl F
+Force a rollback of the file system to the most recent snapshot before
+performing the receive operation.
+If receiving an incremental replication stream
+.Po for example, one generated by
+.Nm zfs Cm send Fl R Op Fl i Ns | Ns Fl I
+.Pc ,
+destroy snapshots and file systems that do not exist on the sending side.
+.It Fl d
+Discard the first element of the sent snapshot's file system name, using the
+remaining elements to determine the name of the target file system for the new
+snapshot as described in the paragraph above.
+.It Fl e
+Discard all but the last element of the sent snapshot's file system name, using
+that element to determine the name of the target file system for the new
+snapshot as described in the paragraph above.
+.It Fl h
+Skip the receive of holds.
+There is no effect if holds are not sent.
+.It Fl n
+Do not actually receive the stream.
+This can be useful in conjunction with the
+.Fl v
+option to verify the name the receive operation would use.
+.It Fl o Sy origin Ns = Ns Ar snapshot
+Forces the stream to be received as a clone of the given snapshot.
+If the stream is a full send stream, this will create the filesystem
+described by the stream as a clone of the specified snapshot.
+Which snapshot was specified will not affect the success or failure of the
+receive, as long as the snapshot does exist.
+If the stream is an incremental send stream, all the normal verification will be
+performed.
+.It Fl o Em property Ns = Ns Ar value
+Sets the specified property as if the command
+.Nm zfs Cm set Em property Ns = Ns Ar value
+was invoked immediately before the receive.
+When receiving a stream from
+.Nm zfs Cm send Fl R ,
+causes the property to be inherited by all descendant datasets, as though
+.Nm zfs Cm inherit Em property
+was run on any descendant datasets that have this property set on the
+sending system.
+.Pp
+Any editable property can be set at receive time.
+Set-once properties bound to the received data, such as
+.Sy normalization
+and
+.Sy casesensitivity ,
+cannot be set at receive time even when the datasets are newly created by
+.Nm zfs Cm receive .
+Additionally both settable properties
+.Sy version
+and
+.Sy volsize
+cannot be set at receive time.
+.Pp
+The
+.Fl o
+option may be specified multiple times, for different properties.
+An error results if the same property is specified in multiple
+.Fl o
+or
+.Fl x
+options.
+.Pp
+The
+.Fl o
+option may also be used to override encryption properties upon initial
+receive.
+This allows unencrypted streams to be received as encrypted datasets.
+To cause the received dataset (or root dataset of a recursive stream) to be
+received as an encryption root, specify encryption properties in the same
+manner as is required for
+.Nm
+.Cm create .
+For instance:
+.Bd -literal
+# zfs send tank/test@snap1 | zfs recv -o encryption=on -o keyformat=passphrase -o keylocation=file:///path/to/keyfile
+.Ed
+.Pp
+Note that
+.Op Fl o Ar keylocation Ns = Ns Ar prompt
+may not be specified here, since stdin is already being utilized for the send
+stream.
+Once the receive has completed, you can use
+.Nm
+.Cm set
+to change this setting after the fact.
+Similarly, you can receive a dataset as an encrypted child by specifying
+.Op Fl x Ar encryption
+to force the property to be inherited.
+Overriding encryption properties (except for
+.Sy keylocation )
+is not possible with raw send streams.
+.It Fl s
+If the receive is interrupted, save the partially received state, rather
+than deleting it.
+Interruption may be due to premature termination of the stream
+.Po e.g. due to network failure or failure of the remote system
+if the stream is being read over a network connection
+.Pc ,
+a checksum error in the stream, termination of the
+.Nm zfs Cm receive
+process, or unclean shutdown of the system.
+.Pp
+The receive can be resumed with a stream generated by
+.Nm zfs Cm send Fl t Ar token ,
+where the
+.Ar token
+is the value of the
+.Sy receive_resume_token
+property of the filesystem or volume which is received into.
+.Pp
+To use this flag, the storage pool must have the
+.Sy extensible_dataset
+feature enabled.
+See
+.Xr zpool-features 7
+for details on ZFS feature flags.
+.It Fl u
+File system that is associated with the received stream is not mounted.
+.It Fl v
+Print verbose information about the stream and the time required to perform the
+receive operation.
+.It Fl x Em property
+Ensures that the effective value of the specified property after the
+receive is unaffected by the value of that property in the send stream (if any),
+as if the property had been excluded from the send stream.
+.Pp
+If the specified property is not present in the send stream, this option does
+nothing.
+.Pp
+If a received property needs to be overridden, the effective value will be
+set or inherited, depending on whether the property is inheritable or not.
+.Pp
+In the case of an incremental update,
+.Fl x
+leaves any existing local setting or explicit inheritance unchanged.
+.Pp
+All
+.Fl o
+restrictions (e.g. set-once) apply equally to
+.Fl x .
+.El
+.It Xo
+.Nm
+.Cm receive
+.Fl A
+.Ar filesystem Ns | Ns Ar volume
+.Xc
+Abort an interrupted
+.Nm zfs Cm receive Fl s ,
+deleting its saved partially received state.
+.It Xo
+.Nm
+.Cm allow
+.Ar filesystem Ns | Ns Ar volume
+.Xc
+Displays permissions that have been delegated on the specified filesystem or
+volume.
+See the other forms of
+.Nm zfs Cm allow
+for more information.
+.It Xo
+.Nm
+.Cm allow
+.Op Fl dglu
+.Ar user Ns | Ns Ar group Ns Oo , Ns Ar user Ns | Ns Ar group Oc Ns ...
+.Ar perm Ns | Ns @ Ns Ar setname Ns Oo , Ns Ar perm Ns | Ns @ Ns
+.Ar setname Oc Ns ...
+.Ar filesystem Ns | Ns Ar volume
+.Xc
+.It Xo
+.Nm
+.Cm allow
+.Op Fl dl
+.Fl e Ns | Ns Sy everyone
+.Ar perm Ns | Ns @ Ns Ar setname Ns Oo , Ns Ar perm Ns | Ns @ Ns
+.Ar setname Oc Ns ...
+.Ar filesystem Ns | Ns Ar volume
+.Xc
+Delegates ZFS administration permission for the file systems to non-privileged
+users.
+.Bl -tag -width "-d"
+.It Fl d
+Allow only for the descendent file systems.
+.It Fl e Ns | Ns Sy everyone
+Specifies that the permissions be delegated to everyone.
+.It Fl g Ar group Ns Oo , Ns Ar group Oc Ns ...
+Explicitly specify that permissions are delegated to the group.
+.It Fl l
+Allow
+.Qq locally
+only for the specified file system.
+.It Fl u Ar user Ns Oo , Ns Ar user Oc Ns ...
+Explicitly specify that permissions are delegated to the user.
+.It Ar user Ns | Ns Ar group Ns Oo , Ns Ar user Ns | Ns Ar group Oc Ns ...
+Specifies to whom the permissions are delegated.
+Multiple entities can be specified as a comma-separated list.
+If neither of the
+.Fl gu
+options are specified, then the argument is interpreted preferentially as the
+keyword
+.Sy everyone ,
+then as a user name, and lastly as a group name.
+To specify a user or group named
+.Qq everyone ,
+use the
+.Fl g
+or
+.Fl u
+options.
+To specify a group with the same name as a user, use the
+.Fl g
+options.
+.It Xo
+.Ar perm Ns | Ns @ Ns Ar setname Ns Oo , Ns Ar perm Ns | Ns @ Ns
+.Ar setname Oc Ns ...
+.Xc
+The permissions to delegate.
+Multiple permissions may be specified as a comma-separated list.
+Permission names are the same as ZFS subcommand and property names.
+See the property list below.
+Property set names, which begin with
+.Sy @ ,
+may be specified.
+See the
+.Fl s
+form below for details.
+.El
+.Pp
+If neither of the
+.Fl dl
+options are specified, or both are, then the permissions are allowed for the
+file system or volume, and all of its descendents.
+.Pp
+Permissions are generally the ability to use a ZFS subcommand or change a ZFS
+property.
+The following permissions are available:
+.Bd -literal
+NAME TYPE NOTES
+allow subcommand Must also have the permission that is
+ being allowed
+clone subcommand Must also have the 'create' ability and
+ 'mount' ability in the origin file system
+create subcommand Must also have the 'mount' ability
+destroy subcommand Must also have the 'mount' ability
+diff subcommand Allows lookup of paths within a dataset
+ given an object number, and the ability
+ to create snapshots necessary to
+ 'zfs diff'.
+load-key subcommand Allows loading and unloading of encryption key
+ (see 'zfs load-key' and 'zfs unload-key').
+change-key subcommand Allows changing an encryption key via
+ 'zfs change-key'.
+mount subcommand Allows mount/umount of ZFS datasets
+promote subcommand Must also have the 'mount' and 'promote'
+ ability in the origin file system
+receive subcommand Must also have the 'mount' and 'create'
+ ability
+rename subcommand Must also have the 'mount' and 'create'
+ ability in the new parent
+rollback subcommand Must also have the 'mount' ability
+send subcommand
+share subcommand Allows sharing file systems over NFS
+ or SMB protocols
+snapshot subcommand Must also have the 'mount' ability
+
+groupquota other Allows accessing any groupquota@...
+ property
+groupused other Allows reading any groupused@... property
+userprop other Allows changing any user property
+userquota other Allows accessing any userquota@...
+ property
+userused other Allows reading any userused@... property
+projectobjquota other Allows accessing any projectobjquota@...
+ property
+projectquota other Allows accessing any projectquota@... property
+projectobjused other Allows reading any projectobjused@... property
+projectused other Allows reading any projectused@... property
+
+aclinherit property
+aclmode property
+atime property
+canmount property
+casesensitivity property
+checksum property
+compression property
+copies property
+devices property
+exec property
+filesystem_limit property
+mountpoint property
+nbmand property
+normalization property
+primarycache property
+quota property
+readonly property
+recordsize property
+refquota property
+refreservation property
+reservation property
+secondarycache property
+setuid property
+sharenfs property
+sharesmb property
+snapdir property
+snapshot_limit property
+utf8only property
+version property
+volblocksize property
+volsize property
+vscan property
+xattr property
+zoned property
+.Ed
+.It Xo
+.Nm
+.Cm allow
+.Fl c
+.Ar perm Ns | Ns @ Ns Ar setname Ns Oo , Ns Ar perm Ns | Ns @ Ns
+.Ar setname Oc Ns ...
+.Ar filesystem Ns | Ns Ar volume
+.Xc
+Sets
+.Qq create time
+permissions.
+These permissions are granted
+.Pq locally
+to the creator of any newly-created descendent file system.
+.It Xo
+.Nm
+.Cm allow
+.Fl s No @ Ns Ar setname
+.Ar perm Ns | Ns @ Ns Ar setname Ns Oo , Ns Ar perm Ns | Ns @ Ns
+.Ar setname Oc Ns ...
+.Ar filesystem Ns | Ns Ar volume
+.Xc
+Defines or adds permissions to a permission set.
+The set can be used by other
+.Nm zfs Cm allow
+commands for the specified file system and its descendents.
+Sets are evaluated dynamically, so changes to a set are immediately reflected.
+Permission sets follow the same naming restrictions as ZFS file systems, but the
+name must begin with
+.Sy @ ,
+and can be no more than 64 characters long.
+.It Xo
+.Nm
+.Cm unallow
+.Op Fl dglru
+.Ar user Ns | Ns Ar group Ns Oo , Ns Ar user Ns | Ns Ar group Oc Ns ...
+.Oo Ar perm Ns | Ns @ Ns Ar setname Ns Oo , Ns Ar perm Ns | Ns @ Ns
+.Ar setname Oc Ns ... Oc
+.Ar filesystem Ns | Ns Ar volume
+.Xc
+.It Xo
+.Nm
+.Cm unallow
+.Op Fl dlr
+.Fl e Ns | Ns Sy everyone
+.Oo Ar perm Ns | Ns @ Ns Ar setname Ns Oo , Ns Ar perm Ns | Ns @ Ns
+.Ar setname Oc Ns ... Oc
+.Ar filesystem Ns | Ns Ar volume
+.Xc
+.It Xo
+.Nm
+.Cm unallow
+.Op Fl r
+.Fl c
+.Oo Ar perm Ns | Ns @ Ns Ar setname Ns Oo , Ns Ar perm Ns | Ns @ Ns
+.Ar setname Oc Ns ... Oc
+.Ar filesystem Ns | Ns Ar volume
+.Xc
+Removes permissions that were granted with the
+.Nm zfs Cm allow
+command.
+No permissions are explicitly denied, so other permissions granted are still in
+effect.
+For example, if the permission is granted by an ancestor.
+If no permissions are specified, then all permissions for the specified
+.Ar user ,
+.Ar group ,
+or
+.Sy everyone
+are removed.
+Specifying
+.Sy everyone
+.Po or using the
+.Fl e
+option
+.Pc
+only removes the permissions that were granted to everyone, not all permissions
+for every user and group.
+See the
+.Nm zfs Cm allow
+command for a description of the
+.Fl ldugec
+options.
+.Bl -tag -width "-r"
+.It Fl r
+Recursively remove the permissions from this file system and all descendents.
+.El
+.It Xo
+.Nm
+.Cm unallow
+.Op Fl r
+.Fl s No @ Ns Ar setname
+.Oo Ar perm Ns | Ns @ Ns Ar setname Ns Oo , Ns Ar perm Ns | Ns @ Ns
+.Ar setname Oc Ns ... Oc
+.Ar filesystem Ns | Ns Ar volume
+.Xc
+Removes permissions from a permission set.
+If no permissions are specified, then all permissions are removed, thus removing
+the set entirely.
+.It Xo
+.Nm
+.Cm hold
+.Op Fl r
+.Ar tag Ar snapshot Ns ...
+.Xc
+Adds a single reference, named with the
+.Ar tag
+argument, to the specified snapshot or snapshots.
+Each snapshot has its own tag namespace, and tags must be unique within that
+space.
+.Pp
+If a hold exists on a snapshot, attempts to destroy that snapshot by using the
+.Nm zfs Cm destroy
+command return
+.Er EBUSY .
+.Bl -tag -width "-r"
+.It Fl r
+Specifies that a hold with the given tag is applied recursively to the snapshots
+of all descendent file systems.
+.El
+.It Xo
+.Nm
+.Cm holds
+.Op Fl r
+.Ar snapshot Ns ...
+.Xc
+Lists all existing user references for the given snapshot or snapshots.
+.Bl -tag -width "-r"
+.It Fl r
+Lists the holds that are set on the named descendent snapshots, in addition to
+listing the holds on the named snapshot.
+.El
+.It Xo
+.Nm
+.Cm release
+.Op Fl r
+.Ar tag Ar snapshot Ns ...
+.Xc
+Removes a single reference, named with the
+.Ar tag
+argument, from the specified snapshot or snapshots.
+The tag must already exist for each snapshot.
+If a hold exists on a snapshot, attempts to destroy that snapshot by using the
+.Nm zfs Cm destroy
+command return
+.Er EBUSY .
+.Bl -tag -width "-r"
+.It Fl r
+Recursively releases a hold with the given tag on the snapshots of all
+descendent file systems.
+.El
+.It Xo
+.Nm
+.Cm diff
+.Op Fl FHt
+.Ar snapshot Ar snapshot Ns | Ns Ar filesystem
+.Xc
+Display the difference between a snapshot of a given filesystem and another
+snapshot of that filesystem from a later time or the current contents of the
+filesystem.
+The first column is a character indicating the type of change, the other columns
+indicate pathname, new pathname
+.Pq in case of rename ,
+change in link count, and optionally file type and/or change time.
+The types of change are:
+.Bd -literal
+- The path has been removed
++ The path has been created
+M The path has been modified
+R The path has been renamed
+.Ed
+.Bl -tag -width "-F"
+.It Fl F
+Display an indication of the type of file, in a manner similar to the
+.Fl
+option of
+.Xr ls 1 .
+.Bd -literal
+B Block device
+C Character device
+/ Directory
+> Door
+| Named pipe
+@ Symbolic link
+P Event port
+= Socket
+F Regular file
+.Ed
+.It Fl H
+Give more parsable tab-separated output, without header lines and without
+arrows.
+.It Fl t
+Display the path's inode change time as the first column of output.
+.El
+.It Xo
+.Nm
+.Cm program
+.Op Fl jn
+.Op Fl t Ar timeout
+.Op Fl m Ar memory_limit
+.Ar pool script
+.Op Ar arg1 No ...
+.Xc
+Executes
+.Ar script
+as a ZFS channel program on
+.Ar pool .
+The ZFS channel
+program interface allows ZFS administrative operations to be run
+programmatically via a Lua script.
+The entire script is executed atomically, with no other administrative
+operations taking effect concurrently.
+A library of ZFS calls is made available to channel program scripts.
+Channel programs may only be run with root privileges.
+.sp
+For full documentation of the ZFS channel program interface, see the manual
+page for
+.Xr zfs-program 8 .
+.Bl -tag -width ""
+.It Fl j
+Display channel program output in JSON format.
+When this flag is specified and standard output is empty -
+channel program encountered an error.
+The details of such an error will be printed to standard error in plain text.
+.It Fl n
+Executes a read-only channel program, which runs faster.
+The program cannot change on-disk state by calling functions from
+the zfs.sync submodule.
+The program can be used to gather information such as properties and
+determining if changes would succeed (zfs.check.*).
+Without this flag, all pending changes must be synced to disk before
+a channel program can complete.
+.It Fl t Ar timeout
+Execution time limit, in milliseconds.
+If a channel program executes for longer than the provided timeout, it will
+be stopped and an error will be returned.
+The default timeout is 1000 ms, and can be set to a maximum of 10000 ms.
+.It Fl m Ar memory-limit
+Memory limit, in bytes.
+If a channel program attempts to allocate more memory than the given limit,
+it will be stopped and an error returned.
+The default memory limit is 10 MB, and can be set to a maximum of 100 MB.
+.sp
+All remaining argument strings are passed directly to the channel program as
+arguments.
+See
+.Xr zfs-program 8
+for more information.
+.El
+.It Xo
+.Nm Cm load-key
+.Op Fl nr
+.Op Fl L Ar keylocation
+.Fl a Ns | Ns filesystem
+.Xc
+Use
+.Ar keylocation
+instead of the
+.Sy keylocation
+property.
+This will not change the value of the property on the dataset.
+Note that if used with either
+.Fl r
+or
+.Fl a
+.Ar keylocation
+may only be given as
+.Sy prompt .
+.Bl -tag -width Ds
+.It Fl a
+Loads the keys for all encryption roots in all imported pools.
+.It Fl n
+Do a dry-run
+.Cm load-key .
+This will cause zfs to simply check that the provided key is correct.
+This command may be run even if the key is already loaded.
+.It Fl r
+Recursively loads the keys for the specified filesystem and all descendent
+encryption roots.
+.El
+.It Xo
+.Nm
+.Cm unload-key
+.Op Fl r
+.Fl a Ns | Ns Ar filesystem
+.Xc
+Unloads a key from ZFS, removing the ability to access the dataset and all of
+its children that inherit the
+.Sy encryption
+property.
+This requires that the dataset is not currently open or mounted.
+Once the key is unloaded the
+.Sy keystatus
+property will be set to
+.Sy unavailable .
+.Bl -tag -width Ds
+.It Fl a
+Unloads the keys for all encryption roots in all imported pools.
+.It Fl r
+Recursively unloads the keys for the specified filesystem and all descendent
+encryption roots.
+.El
+.It Xo
+.Nm
+.Cm change-key
+.Op Fl il
+.Op Fl o Sy keylocation Ns = Ns Ar value
+.Op Fl o Sy keyformat Ns = Ns Ar value
+.Op Fl o Sy pbkdf2iters Ns = Ns Ar value
+.Ar filesystem
+.Xc
+Allows a user to change the encryption key used to access a dataset.
+This command requires that the existing key for the dataset is already loaded
+into ZFS.
+This command may also be used to change the
+.Sy keylocation , keyformat ,
+and
+.Sy pbkdf2iters
+properties as needed.
+If the dataset was not previously an encryption root it will become one.
+Alternatively, the
+.Fl i
+flag may be provided to cause an encryption root to inherit the
+parent's key instead.
+.Bl -tag -width Ds
+.It Fl i
+Indicates that ZFS should make
+.Ar filesystem
+inherit the key of its parent.
+Note that this command can only be run on an encryption root that has an
+encrypted parent.
+.It Fl l
+Ensures the key is loaded before attempting to change the key.
+This is effectively equivalent to
+.Qq Nm Cm load-key Ar filesystem ; Nm Cm change-key Ar filesystem .
+.It Fl o Sy property Ns = Ns Ar value
+Allows the user to set encryption key properties
+.Pq
+.Sy keyformat , keylocation ,
+and
+.Sy pbkdf2iters
+while changing the key.
+This is the only way to alter
+.Sy keyformat
+and
+.Sy pbkdf2iters
+after the dataset has been created.
+.El
+.El
+.Sh EXIT STATUS
+The
+.Nm
+utility exits 0 on success, 1 if an error occurs, and 2 if invalid command line
+options were specified.
+.Sh EXAMPLES
+.Bl -tag -width ""
+.It Sy Example 1 No Creating a ZFS File System Hierarchy
+The following commands create a file system named
+.Em pool/home
+and a file system named
+.Em pool/home/bob .
+The mount point
+.Pa /export/home
+is set for the parent file system, and is automatically inherited by the child
+file system.
+.Bd -literal
+# zfs create pool/home
+# zfs set mountpoint=/export/home pool/home
+# zfs create pool/home/bob
+.Ed
+.It Sy Example 2 No Creating a ZFS Snapshot
+The following command creates a snapshot named
+.Sy yesterday .
+This snapshot is mounted on demand in the
+.Pa .zfs/snapshot
+directory at the root of the
+.Em pool/home/bob
+file system.
+.Bd -literal
+# zfs snapshot pool/home/bob@yesterday
+.Ed
+.It Sy Example 3 No Creating and Destroying Multiple Snapshots
+The following command creates snapshots named
+.Sy yesterday
+of
+.Em pool/home
+and all of its descendent file systems.
+Each snapshot is mounted on demand in the
+.Pa .zfs/snapshot
+directory at the root of its file system.
+The second command destroys the newly created snapshots.
+.Bd -literal
+# zfs snapshot -r pool/home@yesterday
+# zfs destroy -r pool/home@yesterday
+.Ed
+.It Sy Example 4 No Disabling and Enabling File System Compression
+The following command disables the
+.Sy compression
+property for all file systems under
+.Em pool/home .
+The next command explicitly enables
+.Sy compression
+for
+.Em pool/home/anne .
+.Bd -literal
+# zfs set compression=off pool/home
+# zfs set compression=on pool/home/anne
+.Ed
+.It Sy Example 5 No Listing ZFS Datasets
+The following command lists all active file systems and volumes in the system.
+Snapshots are displayed if the
+.Sy listsnaps
+property is
+.Sy on .
+The default is
+.Sy off .
+See
+.Xr zpool 8
+for more information on pool properties.
+.Bd -literal
+# zfs list
+NAME USED AVAIL REFER MOUNTPOINT
+pool 450K 457G 18K /pool
+pool/home 315K 457G 21K /export/home
+pool/home/anne 18K 457G 18K /export/home/anne
+pool/home/bob 276K 457G 276K /export/home/bob
+.Ed
+.It Sy Example 6 No Setting a Quota on a ZFS File System
+The following command sets a quota of 50 Gbytes for
+.Em pool/home/bob .
+.Bd -literal
+# zfs set quota=50G pool/home/bob
+.Ed
+.It Sy Example 7 No Listing ZFS Properties
+The following command lists all properties for
+.Em pool/home/bob .
+.Bd -literal
+# zfs get all pool/home/bob
+NAME PROPERTY VALUE SOURCE
+pool/home/bob type filesystem -
+pool/home/bob creation Tue Jul 21 15:53 2009 -
+pool/home/bob used 21K -
+pool/home/bob available 20.0G -
+pool/home/bob referenced 21K -
+pool/home/bob compressratio 1.00x -
+pool/home/bob mounted yes -
+pool/home/bob quota 20G local
+pool/home/bob reservation none default
+pool/home/bob recordsize 128K default
+pool/home/bob mountpoint /pool/home/bob default
+pool/home/bob sharenfs off default
+pool/home/bob checksum on default
+pool/home/bob compression on local
+pool/home/bob atime on default
+pool/home/bob devices on default
+pool/home/bob exec on default
+pool/home/bob setuid on default
+pool/home/bob readonly off default
+pool/home/bob zoned off default
+pool/home/bob snapdir hidden default
+pool/home/bob aclmode discard default
+pool/home/bob aclinherit restricted default
+pool/home/bob canmount on default
+pool/home/bob xattr on default
+pool/home/bob copies 1 default
+pool/home/bob version 4 -
+pool/home/bob utf8only off -
+pool/home/bob normalization none -
+pool/home/bob casesensitivity sensitive -
+pool/home/bob vscan off default
+pool/home/bob nbmand off default
+pool/home/bob sharesmb off default
+pool/home/bob refquota none default
+pool/home/bob refreservation none default
+pool/home/bob primarycache all default
+pool/home/bob secondarycache all default
+pool/home/bob usedbysnapshots 0 -
+pool/home/bob usedbydataset 21K -
+pool/home/bob usedbychildren 0 -
+pool/home/bob usedbyrefreservation 0 -
+.Ed
+.Pp
+The following command gets a single property value.
+.Bd -literal
+# zfs get -H -o value compression pool/home/bob
+on
+.Ed
+The following command lists all properties with local settings for
+.Em pool/home/bob .
+.Bd -literal
+# zfs get -r -s local -o name,property,value all pool/home/bob
+NAME PROPERTY VALUE
+pool/home/bob quota 20G
+pool/home/bob compression on
+.Ed
+.It Sy Example 8 No Rolling Back a ZFS File System
+The following command reverts the contents of
+.Em pool/home/anne
+to the snapshot named
+.Sy yesterday ,
+deleting all intermediate snapshots.
+.Bd -literal
+# zfs rollback -r pool/home/anne@yesterday
+.Ed
+.It Sy Example 9 No Creating a ZFS Clone
+The following command creates a writable file system whose initial contents are
+the same as
+.Em pool/home/bob@yesterday .
+.Bd -literal
+# zfs clone pool/home/bob@yesterday pool/clone
+.Ed
+.It Sy Example 10 No Promoting a ZFS Clone
+The following commands illustrate how to test out changes to a file system, and
+then replace the original file system with the changed one, using clones, clone
+promotion, and renaming:
+.Bd -literal
+# zfs create pool/project/production
+ populate /pool/project/production with data
+# zfs snapshot pool/project/production@today
+# zfs clone pool/project/production@today pool/project/beta
+ make changes to /pool/project/beta and test them
+# zfs promote pool/project/beta
+# zfs rename pool/project/production pool/project/legacy
+# zfs rename pool/project/beta pool/project/production
+ once the legacy version is no longer needed, it can be destroyed
+# zfs destroy pool/project/legacy
+.Ed
+.It Sy Example 11 No Inheriting ZFS Properties
+The following command causes
+.Em pool/home/bob
+and
+.Em pool/home/anne
+to inherit the
+.Sy checksum
+property from their parent.
+.Bd -literal
+# zfs inherit checksum pool/home/bob pool/home/anne
+.Ed
+.It Sy Example 12 No Remotely Replicating ZFS Data
+The following commands send a full stream and then an incremental stream to a
+remote machine, restoring them into
+.Em poolB/received/fs@a
+and
+.Em poolB/received/fs@b ,
+respectively.
+.Em poolB
+must contain the file system
+.Em poolB/received ,
+and must not initially contain
+.Em poolB/received/fs .
+.Bd -literal
+# zfs send pool/fs@a | \e
+ ssh host zfs receive poolB/received/fs@a
+# zfs send -i a pool/fs@b | \e
+ ssh host zfs receive poolB/received/fs
+.Ed
+.It Sy Example 13 No Using the zfs receive -d Option
+The following command sends a full stream of
+.Em poolA/fsA/fsB@snap
+to a remote machine, receiving it into
+.Em poolB/received/fsA/fsB@snap .
+The
+.Em fsA/fsB@snap
+portion of the received snapshot's name is determined from the name of the sent
+snapshot.
+.Em poolB
+must contain the file system
+.Em poolB/received .
+If
+.Em poolB/received/fsA
+does not exist, it is created as an empty file system.
+.Bd -literal
+# zfs send poolA/fsA/fsB@snap | \e
+ ssh host zfs receive -d poolB/received
+.Ed
+.It Sy Example 14 No Setting User Properties
+The following example sets the user-defined
+.Sy com.example:department
+property for a dataset.
+.Bd -literal
+# zfs set com.example:department=12345 tank/accounting
+.Ed
+.It Sy Example 15 No Performing a Rolling Snapshot
+The following example shows how to maintain a history of snapshots with a
+consistent naming scheme.
+To keep a week's worth of snapshots, the user destroys the oldest snapshot,
+renames the remaining snapshots, and then creates a new snapshot, as follows:
+.Bd -literal
+# zfs destroy -r pool/users@7daysago
+# zfs rename -r pool/users@6daysago @7daysago
+# zfs rename -r pool/users@5daysago @6daysago
+# zfs rename -r pool/users@4daysago @5daysago
+# zfs rename -r pool/users@3daysago @4daysago
+# zfs rename -r pool/users@2daysago @3daysago
+# zfs rename -r pool/users@yesterday @2daysago
+# zfs rename -r pool/users@today @yesterday
+# zfs snapshot -r pool/users@today
+.Ed
+.It Sy Example 16 No Setting sharenfs Property Options on a ZFS File System
+The following commands show how to set
+.Sy sharenfs
+property options to enable
+.Sy rw
+access for a set of
+.Sy IP
+addresses and to enable root access for system
+.Sy neo
+on the
+.Em tank/home
+file system.
+.Bd -literal
+# zfs set sharenfs='rw=@123.123.0.0/16,root=neo' tank/home
+.Ed
+.Pp
+If you are using
+.Sy DNS
+for host name resolution, specify the fully qualified hostname.
+.It Sy Example 17 No Delegating ZFS Administration Permissions on a ZFS Dataset
+The following example shows how to set permissions so that user
+.Sy cindys
+can create, destroy, mount, and take snapshots on
+.Em tank/cindys .
+The permissions on
+.Em tank/cindys
+are also displayed.
+.Bd -literal
+# zfs allow cindys create,destroy,mount,snapshot tank/cindys
+# zfs allow tank/cindys
+---- Permissions on tank/cindys --------------------------------------
+Local+Descendent permissions:
+ user cindys create,destroy,mount,snapshot
+.Ed
+.Pp
+Because the
+.Em tank/cindys
+mount point permission is set to 755 by default, user
+.Sy cindys
+will be unable to mount file systems under
+.Em tank/cindys .
+Add an ACE similar to the following syntax to provide mount point access:
+.Bd -literal
+# chmod A+user:cindys:add_subdirectory:allow /tank/cindys
+.Ed
+.It Sy Example 18 No Delegating Create Time Permissions on a ZFS Dataset
+The following example shows how to grant anyone in the group
+.Sy staff
+to create file systems in
+.Em tank/users .
+This syntax also allows staff members to destroy their own file systems, but not
+destroy anyone else's file system.
+The permissions on
+.Em tank/users
+are also displayed.
+.Bd -literal
+# zfs allow staff create,mount tank/users
+# zfs allow -c destroy tank/users
+# zfs allow tank/users
+---- Permissions on tank/users ---------------------------------------
+Permission sets:
+ destroy
+Local+Descendent permissions:
+ group staff create,mount
+.Ed
+.It Sy Example 19 No Defining and Granting a Permission Set on a ZFS Dataset
+The following example shows how to define and grant a permission set on the
+.Em tank/users
+file system.
+The permissions on
+.Em tank/users
+are also displayed.
+.Bd -literal
+# zfs allow -s @pset create,destroy,snapshot,mount tank/users
+# zfs allow staff @pset tank/users
+# zfs allow tank/users
+---- Permissions on tank/users ---------------------------------------
+Permission sets:
+ @pset create,destroy,mount,snapshot
+Local+Descendent permissions:
+ group staff @pset
+.Ed
+.It Sy Example 20 No Delegating Property Permissions on a ZFS Dataset
+The following example shows to grant the ability to set quotas and reservations
+on the
+.Em users/home
+file system.
+The permissions on
+.Em users/home
+are also displayed.
+.Bd -literal
+# zfs allow cindys quota,reservation users/home
+# zfs allow users/home
+---- Permissions on users/home ---------------------------------------
+Local+Descendent permissions:
+ user cindys quota,reservation
+cindys% zfs set quota=10G users/home/marks
+cindys% zfs get quota users/home/marks
+NAME PROPERTY VALUE SOURCE
+users/home/marks quota 10G local
+.Ed
+.It Sy Example 21 No Removing ZFS Delegated Permissions on a ZFS Dataset
+The following example shows how to remove the snapshot permission from the
+.Sy staff
+group on the
+.Em tank/users
+file system.
+The permissions on
+.Em tank/users
+are also displayed.
+.Bd -literal
+# zfs unallow staff snapshot tank/users
+# zfs allow tank/users
+---- Permissions on tank/users ---------------------------------------
+Permission sets:
+ @pset create,destroy,mount,snapshot
+Local+Descendent permissions:
+ group staff @pset
+.Ed
+.It Sy Example 22 No Showing the differences between a snapshot and a ZFS Dataset
+The following example shows how to see what has changed between a prior
+snapshot of a ZFS dataset and its current state.
+The
+.Fl F
+option is used to indicate type information for the files affected.
+.Bd -literal
+# zfs diff -F tank/test@before tank/test
+M / /tank/test/
+M F /tank/test/linked (+1)
+R F /tank/test/oldname -> /tank/test/newname
+- F /tank/test/deleted
++ F /tank/test/created
+M F /tank/test/modified
+.Ed
+.El
+.Sh INTERFACE STABILITY
+.Sy Committed .
+.Sh SEE ALSO
+.Xr gzip 1 ,
+.Xr ssh 1 ,
+.Xr chmod 2 ,
+.Xr stat 2 ,
+.Xr write 2 ,
+.Xr fsync 3C ,
+.Xr dfstab 5 ,
+.Xr acl 7 ,
+.Xr attributes 7 ,
+.Xr mount 8 ,
+.Xr share 8 ,
+.Xr sharemgr 8 ,
+.Xr unshare 8 ,
+.Xr zfs-program 8 ,
+.Xr zonecfg 8 ,
+.Xr zpool 8
diff --git a/usr/src/man/man8/zic.8 b/usr/src/man/man8/zic.8
new file mode 100644
index 0000000000..2bedb52b55
--- /dev/null
+++ b/usr/src/man/man8/zic.8
@@ -0,0 +1,587 @@
+'\" te
+.\" Copyright (c) 2000, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 1989 AT&T
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH ZIC 8 "Jan 3, 2006"
+.SH NAME
+zic \- time zone compiler
+.SH SYNOPSIS
+.LP
+.nf
+\fBzic\fR [\fB--\fR\fIversion\fR] [\fB-s\fR] [\fB-v\fR] [\fB-l\fR \fIlocaltime\fR] [\fB-p\fR \fIposixrules\fR]
+ [\fB-d\fR \fIdirectory\fR] [\fB-y\fR \fIyearistype\fR] [\fIfilename\fR]...
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBzic\fR reads text from the file(s) named on the command line and creates the
+time conversion information files specified in this input. If a \fIfilename\fR
+is '\fB\(mi\fR\&', the standard input is read.
+.sp
+.LP
+Input lines are made up of fields. Fields are separated by any number of white
+space characters. Leading and trailing white space on input lines is ignored. A
+pound sign (\fB#\fR) indicates a comment that extends to the end of the line.
+White space characters and pound signs can be enclosed within double quotes
+(\fB" "\fR) if they are to be used as part of a field. Any line that is blank
+(after comment stripping) is ignored. Non-blank lines are expected to be of one
+of three types: rule lines, zone lines, or link lines.
+.SS "Rule"
+.sp
+.LP
+A rule line has the form:
+.sp
+.LP
+For example:
+.sp
+.in +2
+.nf
+Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The fields that make up a rule line are:
+.sp
+.in +2
+.nf
+Rule USA 1969 1973 - Apr lastSun 2:00 1:00 D
+.fi
+.in -2
+.sp
+
+.sp
+.ne 2
+.na
+\fB\fBNAME\fR\fR
+.ad
+.RS 12n
+Gives the (arbitrary) name of the set of rules this rule is part of.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBFROM\fR\fR
+.ad
+.RS 12n
+Gives the first year in which the rule applies. The word \fBminimum\fR (or an
+abbreviation) means the minimum year with a representable time value. The word
+\fBmaximum\fR (or an abbreviation) means the maximum year with a representable
+time value.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBTO\fR\fR
+.ad
+.RS 12n
+Gives the final year in which the rule applies. In addition to \fBminimum\fR
+and \fBmaximum\fR (as above), the word \fBonly\fR (or an abbreviation) can be
+used to repeat the value of the \fBFROM\fR field.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBTYPE\fR\fR
+.ad
+.RS 12n
+Gives the type of year in which the rule applies. If \fBTYPE\fR is:
+.sp
+.ne 2
+.na
+\fB\&'\fB\(mi\fR\&'\fR
+.ad
+.RS 14n
+The rule applies in all years between \fBFROM\fR and \fBTO\fR, inclusive.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBuspres\fR\fR
+.ad
+.RS 14n
+The rule applies in U.S. Presidential election years.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnonpres\fR\fR
+.ad
+.RS 14n
+The rule applies in years other than U.S. Presidential election years.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBeven\fR\fR
+.ad
+.RS 14n
+The rule applies to even-numbered years.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBodd\fR\fR
+.ad
+.RS 14n
+The rule applies to odd-numbered years.
+.RE
+
+If \fBTYPE\fR is something else, then \fBzic\fR will attempt to execute the
+command
+.sp
+.in +2
+.nf
+\fByearistype\fR \fIyear\fR \fBtype\fR
+.fi
+.in -2
+.sp
+
+to check the type of a year: an exit status of \fB0\fR means that the year is
+of the given type; an exit status of \fB1\fR means that the year is not of the
+given type. The \fByearistype\fR command is not currently provided in the
+Solaris environment.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBIN\fR\fR
+.ad
+.RS 12n
+Names the month in which the rule takes effect. Month names can be abbreviated.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBON\fR\fR
+.ad
+.RS 12n
+Gives the day on which the rule takes effect. Recognized forms include:
+.sp
+.ne 2
+.na
+\fB\fB5\fR\fR
+.ad
+.RS 11n
+the fifth day of the month
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBlastSun\fR\fR
+.ad
+.RS 11n
+The last Sunday in the month
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBlastMon\fR\fR
+.ad
+.RS 11n
+The last Monday in the month
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSun>=8\fR\fR
+.ad
+.RS 11n
+First Sunday on or after the eighth
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSun<=25\fR\fR
+.ad
+.RS 11n
+Last Sunday on or before the 25th
+.RE
+
+Names of days of the week can be abbreviated or spelled out in full. Note:
+There cannot be spaces within the \fBON\fR field.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBAT\fR\fR
+.ad
+.RS 12n
+Gives the time of day at which the rule takes effect. Recognized forms include:
+.sp
+.ne 2
+.na
+\fB\fB2\fR\fR
+.ad
+.RS 11n
+Time in hours
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB2:00\fR\fR
+.ad
+.RS 11n
+Time in hours and minutes
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB15:00\fR\fR
+.ad
+.RS 11n
+24-hour format time (for times after noon)
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB1:28:14\fR\fR
+.ad
+.RS 11n
+Time in hours, minutes, and seconds, where hour 0 is midnight at the start of
+the day and hour 24 is midnight at the end of the day.
+.RE
+
+Any of these forms can be followed by the letter \fBw\fR if the given time is
+local "wall clock" time; \fBs\fR if the given time is local "standard" time; or
+\fBu\fR (or \fBg\fR or \fBz\fR) if the given time is universal time. In the
+absence of an indicator, wall clock time is assumed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBSAVE\fR\fR
+.ad
+.RS 12n
+Gives the amount of time to be added to local standard time when the rule is in
+effect. This field has the same format as the \fBAT\fR field (without the
+\fBw\fR and \fBs\fR suffixes).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBLETTER/S\fR\fR
+.ad
+.RS 12n
+Gives the "variable part" (for example, the "S" or "D" in "EST" or "EDT" of
+time zone abbreviations to be used when this rule is in effect. If this field
+is '\fB\(mi\fR\&', the variable part is null.
+.RE
+
+.SS "Zone"
+.sp
+.LP
+A zone line has the form:
+.sp
+.in +2
+.nf
+Zone NAME GMTOFF RULES/SAVE FORMAT [UNTIL]
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+For example:
+.sp
+.in +2
+.nf
+Zone Australia/SouthWest 9:30 - CST 1992 Mar 15 12:00
+ 8:30 Aus CST
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The fields that make up a zone line are:
+.sp
+.ne 2
+.na
+\fB\fBNAME\fR\fR
+.ad
+.RS 14n
+The name of the time zone. This is the name used in creating the time
+conversion information file for the zone.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBGMTOFF\fR\fR
+.ad
+.RS 14n
+The amount of time to add to \fBUTC\fR to get standard time in this zone. This
+field has the same format as the \fBAT\fR and \fBSAVE\fR fields of rule lines;
+begin the field with a minus sign to subtract time from \fBUTC\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBRULES/SAVE\fR\fR
+.ad
+.RS 14n
+The name of the rule(s) that apply in the time zone or, alternately, an amount
+of time to add to local standard time. If this field is `\fB\(mi\fR\&', then
+standard time always applies in the time zone.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBFORMAT\fR\fR
+.ad
+.RS 14n
+The format for time zone abbreviations in this time zone. The pair of
+characters \fB%s\fR is used to show where the "variable part" of the time zone
+abbreviation goes. Alternately, a slash (/) separates standard and daylight
+abbreviations.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBUNTIL\fR\fR
+.ad
+.RS 14n
+The time at which the \fBUTC\fR offset or the rule(s) change for a location. It
+is specified as a year, a month, a day, and a time of day. The time of day has
+the same format as the \fBAT\fR field of rule lines. If this is specified, the
+time zone information is generated from the given \fBUTC\fR offset and rule
+change until the time specified.
+.sp
+The month, day, and time of day have the same format as the IN, ON, and AT
+columns of a rule; trailing columns can be omitted, and default to the earliest
+possible value for the missing columns.
+.sp
+The next line must be a "continuation" line. This line has the same form as a
+zone line except that the string "Zone" and the name are omitted. The
+continuation line places information starting at the time specified as the
+\fBUNTIL\fR field in the previous line in the file used by the previous line.
+Continuation lines can contain an \fBUNTIL\fR field, just as zone lines do,
+indicating that the next line is a further continuation.
+.RE
+
+.SS "Link"
+.sp
+.LP
+A link line has the form:
+.sp
+.in +2
+.nf
+Link LINK-FROM LINK-TO
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+For example:
+.sp
+.in +2
+.nf
+Link Europe/Istanbul Asia/Istanbul
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The \fBLINK-FROM\fR field should appear as the \fBNAME\fR field in some zone
+line; the \fBLINK-TO\fR field is used as an alternate name for that zone.
+.sp
+.LP
+Except for continuation lines, lines can appear in any order in the input.
+.SH OPTIONS
+.sp
+.ne 2
+.na
+\fB\fB--\fR\fIversion\fR\fR
+.ad
+.RS 17n
+Outputs version information and exits.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-d\fR \fIdirectory\fR\fR
+.ad
+.RS 17n
+Creates time conversion information files in the directory \fIdirectory\fR
+rather than in the standard directory \fB/usr/share/lib/zoneinfo\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-l\fR \fIlocaltime\fR\fR
+.ad
+.RS 17n
+Uses the given time zone as local time \fIlocaltime\fR. \fBzic\fR acts as if
+the file contained a link line of the form:
+.sp
+.in +2
+.nf
+Link \fIlocaltime\fR localtime
+.fi
+.in -2
+.sp
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR \fIposixrules\fR\fR
+.ad
+.RS 17n
+Uses the rules of the given time zone \fIposixrules\fR when handling
+POSIX-format time zone environment variables. \fBzic\fR acts as if the input
+contained a link line of the form:
+.sp
+.in +2
+.nf
+Link \fIposixrules\fR posixrules
+.fi
+.in -2
+.sp
+
+This option is not used by \fBctime\fR(3C) and \fBmktime\fR(3C) in the Solaris
+environment.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR\fR
+.ad
+.RS 17n
+Limits time values stored in output files to values that are the same whether
+they are taken to be signed or unsigned. You can use this option to generate
+SVVS-compatible files.
+.sp
+This option is obsolete and may be removed in a future release.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.RS 17n
+Complains if a year that appears in a data file is outside the range of years
+representable by system time values (\fB0:00:00 a.m.\fR \fBUTC,\fR \fBJanuary
+1\fR, \fB1970\fR, to \fB3:14:07 a.m.\fR \fBUTC,\fR \fBJanuary 19\fR,
+\fB2038\fR). This option also complains if a time of 24:00 (which cannot be
+handled by pre-1998 versions of \fBzic\fR) appears in the input.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-y\fR \fIyearistype\fR\fR
+.ad
+.RS 17n
+Uses the given command \fIyearistype\fR rather than \fByearistype\fR when
+checking year types (see \fBRules\fR under \fBDESCRIPTION\fR).
+.RE
+
+.SH OPERANDS
+.sp
+.ne 2
+.na
+\fB\fIfilename\fR\fR
+.ad
+.RS 12n
+A file containing input lines that specify the time conversion information
+files to be created. If a \fIfilename\fR is '\fB\(mi\fR\&', the standard input
+is read.
+.RE
+
+.SH FILES
+.sp
+.ne 2
+.na
+\fB\fB/usr/share/lib/zoneinfo\fR\fR
+.ad
+.sp .6
+.RS 4n
+Standard directory used for created files
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB/usr/share/lib/zoneinfo/src\fR\fR
+.ad
+.sp .6
+.RS 4n
+Directory containing source files
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Committed*
+.TE
+
+.sp
+.LP
+* The \fB-s\fR option is obsolete.
+.SH SEE ALSO
+.sp
+.LP
+.BR time (1),
+.BR ctime (3C),
+.BR mktime (3C),
+.BR attributes (7),
+.BR zdump (8)
+.SH NOTES
+.sp
+.LP
+For areas with more than two types of local time, you might need to use local
+standard time in the \fBAT\fR field of the earliest transition time's rule to
+ensure that the earliest transition time recorded in the compiled file is
+correct.
+.sp
+.LP
+If the current \fItimezone\fR file is edited and compiled using the "\fBzic\fR"
+command, the changes will only be reflected in any new processes that are
+running. The most accurate way to reflect the changes for the whole system
+would be a reboot.
diff --git a/usr/src/man/man8/zoneadm.8 b/usr/src/man/man8/zoneadm.8
new file mode 100644
index 0000000000..92feec2693
--- /dev/null
+++ b/usr/src/man/man8/zoneadm.8
@@ -0,0 +1,709 @@
+'\" te
+.\" Copyright 2015 Nexenta Systems, Inc. All rights reserved.
+.\" Copyright (c) 2009 Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright (c) 2011 Joyent, Inc. All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH ZONEADM 8 "May 13, 2017"
+.SH NAME
+zoneadm \- administer zones
+.SH SYNOPSIS
+.LP
+.nf
+\fBzoneadm\fR \fB-z\fR \fIzonename\fR [\fB-u\fR \fIuuid-match\fR] \fIsubcommand\fR
+ [\fIsubcommand_options\fR]
+.fi
+
+.LP
+.nf
+\fBzoneadm\fR [\fB-R\fR \fIroot\fR] [\fB-z\fR \fIzonename\fR] [\fB-u\fR \fIuuid-match\fR] list
+ [\fIlist_options\fR]
+.fi
+
+.LP
+.nf
+\fBzoneadm\fR [\fB-R\fR \fIroot\fR] \fB-z\fR \fIzonename\fR [\fB-u\fR \fIuuid-match\fR] mark incomplete
+.fi
+
+.SH DESCRIPTION
+.LP
+The \fBzoneadm\fR utility is used to administer system zones. A zone is an
+application container that is maintained by the operating system runtime.
+.SH SECURITY
+.LP
+Once a process has been placed in a zone other than zone \fB0\fR, the process
+or any of its children cannot change zones.
+.SH OPTIONS
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-R\fR \fIroot\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify an alternate root (boot environment). This option can only be used in
+conjunction with the "\fBlist\fR" and "\fBmark\fR" subcommands.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-u\fR \fIuuid-match\fR\fR
+.ad
+.sp .6
+.RS 4n
+Unique identifier for a zone, as assigned by \fBlibuuid\fR(3LIB). If this
+option is present and the argument is a non-empty string, then the zone
+matching the \fBUUID\fR is selected instead of the one named by the \fB-z\fR
+option, if such a zone is present.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-z\fR \fIzonename\fR\fR
+.ad
+.sp .6
+.RS 4n
+String identifier for a zone.
+.RE
+
+.SH SUBCOMMANDS
+.LP
+Subcommands which can result in destructive actions or loss of work have a
+\fB-F\fR flag to force the action. If input is from a terminal device, the user
+is prompted if such a command is given without the \fB-F\fR flag; otherwise, if
+such a command is given without the \fB-F\fR flag, the action is disallowed,
+with a diagnostic message written to standard error. If a zone installation or
+uninstallation is interrupted, the zone is left in the incomplete state. Use
+uninstall to reset such a zone back to the configured state.
+.sp
+.LP
+The following subcommands are supported:
+.sp
+.ne 2
+.na
+\fB\fBattach\fR [\fB-F\fR] [\fB-n\fR \fIpath\fR] [\fIbrand-specific
+options\fR]\fR
+.ad
+.sp .6
+.RS 4n
+The \fBattach\fR subcommand takes a zone that has been detached from one system
+and attaches the zone onto a new system. Therefore, it is advised (though not
+required) that the \fBdetach\fR subcommand should be run before the "attach"
+takes place. Once you have the new zone in the configured state, use the
+\fBattach\fR subcommand to set up the zone root instead of installing the zone
+as a new zone.
+.sp
+The \fB-F\fR option can be used to force the zone into the "installed" state
+with no validation. This option should be used with care since it can leave the
+zone in an unsupportable state if it was moved from a source system to a target
+system that is unable to properly host the zone. The \fB-n\fR option can be
+used to run the \fBattach\fR subcommand, without executing the command. It uses
+the output of the "\fBdetach\fR \fB-n\fR" subcommand as input and is useful to
+identify any conflicting issues, such as the network device being incompatible,
+and can also determine whether the host is capable of supporting the zone. The
+path can be "\fB-\fR", to read the input from standard input.
+.sp
+The zone's brand may include additional options that govern how the zone will
+be attached. See \fBbrands\fR(7) for specific brand information.
+.sp
+The zone being attached must first be configured using the \fBzonecfg\fR (see
+\fBzonecfg\fR(8)) command. This does not apply when running "\fBattach\fR
+\fB-n\fR".
+.sp
+Use the following command to attach a zone:
+.sp
+.in +2
+.nf
+# \fBzoneadm -z my-zone attach\fR
+.fi
+.in -2
+.sp
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBboot\fR [\fB-X\fR] [\fB--\fR \fIboot_options\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Boot (or activate) the specified zones.
+.sp
+The \fI-X\fR option enables debug for the zone's brand while booting.
+.sp
+The following \fIboot_options\fR are supported:
+.sp
+.ne 2
+.na
+\fB\fB-i\fR \fIaltinit\fR\fR
+.ad
+.sp .6
+.RS 4n
+Select an alternative executable to be the primordial Process. \fIaltinit\fR is
+a valid path to an executable. The default primordial process is
+\fBinit\fR(8).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-m\fR \fIsmf_options\fR\fR
+.ad
+.sp .6
+.RS 4n
+The \fIsmf_options\fR include two categories of options to control booting
+behavior of the service management facility: recovery options and messages
+options.
+.sp
+Message options determine the type and amount of messages that \fBsmf\fR(7)
+displays during boot. Service options determine the services which are used to
+boot the system. See \fBkernel\fR(8) for a listing of the \fB-m\fR suboptions.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR\fR
+.ad
+.sp .6
+.RS 4n
+Boots only to milestone \fBsvc:/milestone/single-user:default\fR. This
+milestone is equivalent to init level \fBs\fR. See \fBsvc.startd\fR(8) and
+\fBinit\fR(8).
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBclone\fR [\fB-m\fR \fIcopy\fR] [\fB-s\fR \fIzfs_snapshot\fR]
+\fIsource_zone\fR\fR
+.ad
+.sp .6
+.RS 4n
+Install a zone by copying an existing installed zone. This subcommand is an
+alternative way to install the zone.
+.sp
+.ne 2
+.na
+\fB\fB-m\fR \fIcopy\fR\fR
+.ad
+.sp .6
+.RS 4n
+Force the clone to be a copy, even if a "\fBZFS\fR clone" is possible.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-s\fR \fIzfs_snapshot\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify the name of a \fBZFS\fR snapshot to use as the source of the clone. The
+\fIsnapshot\fR must be a \fIsnapshot\fR of the source zone taken from a
+previous "\fBzoneadm\fR clone" installation.
+.RE
+
+The source zone must be halted before this subcommand can be used.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdetach\fR [\fB-n\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Detach the specified zone. Detaching a zone is the first step in moving a zone
+from one system to another. The full procedure to migrate a zone is that the
+zone is detached, the \fIzonepath\fR directory is moved to the new host, and
+then the zone is attached on the new host. Once the zone is detached, it is
+left in the configured state. If you try to install or clone to a configured
+zone that has been detached, you will receive an error message and the
+\fBinstall\fR or \fBclone\fR subcommand will not be allowed to proceed. The
+\fB-n\fR option can be used to run the \fBdetach\fR subcommand, without
+executing the command. This generates the information needed for running the
+"\fBattach\fR \fB-n\fR" subcommand, which is useful to identify any conflicting
+issues, such as the network device being incompatible or if the host is capable
+of supporting the zone. The information is sent to standard output and can be
+saved to a file or piped to the "\fBattach\fR \fB-n\fR" subcommand.
+.sp
+Use the following command to detach a zone:
+.sp
+.in +2
+.nf
+# zoneadm -z my-zone detach
+.fi
+.in -2
+.sp
+
+The source zone must be halted before this subcommand can be used.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBhalt [\fB-X\fR]\fR\fR
+.ad
+.sp .6
+.RS 4n
+Halt the specified zones. \fBhalt\fR bypasses running the shutdown scripts
+inside the zone. It also removes run time resources of the zone.
+.sp
+The \fI-X\fR option enables debug for the zone's brand while halting.
+.sp
+Use:
+.sp
+.in +2
+.nf
+zlogin \fIzone\fR shutdown
+.fi
+.in -2
+.sp
+
+to cleanly shutdown the zone by running the shutdown scripts.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBhelp\fR [\fIsubcommand\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Display general help. If you specify \fIsubcommand\fR, displays help on
+\fIsubcommand\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBinstall\fR [\fB-x\fR \fInodataset\fR] [\fIbrand-specific options\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Install the specified zone on the system. This subcommand automatically
+attempts to verify first, most verification errors are fatal. See the
+\fBverify\fR subcommand.
+.sp
+.ne 2
+.na
+\fB\fB-x\fR \fInodataset\fR\fR
+.ad
+.sp .6
+.RS 4n
+Do not create a \fBZFS\fR file system.
+.RE
+
+The zone's brand may include additional options that govern how the software
+will be installed in the zone. See \fBbrands\fR(7) for specific brand
+information.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBlist\fR [\fIlist_options\fR]\fR
+.ad
+.sp .6
+.RS 4n
+Display the name of the current zones, or the specified zone if indicated.
+.sp
+By default, all running zones are listed. If you use this subcommand with the
+\fBzoneadm\fR \fB-z\fR \fIzonename\fR option, it lists only the specified zone,
+regardless of its state. In this case, the \fB-i\fR and \fB-c\fR options are
+disallowed.
+.sp
+If neither the \fB-i\fR, \fB-c\fR, or \fB-n\fR options are given, all running
+zones are listed.
+.sp
+The following \fIlist_options\fR are supported:
+.sp
+.ne 2
+.na
+\fB\fB-c\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display all configured zones. This option overrides the \fB-i\fR option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-i\fR\fR
+.ad
+.sp .6
+.RS 4n
+Expand the display to all installed zones.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-n\fR\fR
+.ad
+.sp .6
+.RS 4n
+Do not include the global zone in the list of zones returned.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-p\fR\fR
+.ad
+.sp .6
+.RS 4n
+Request machine parsable output. The output format is a list of lines, one per
+zone, with colon- delimited fields. These fields are:
+.sp
+.in +2
+.nf
+zoneid:zonename:state:zonepath:uuid:brand:ip-type
+.fi
+.in -2
+.sp
+
+If the \fBzonepath\fR contains embedded colons, they can be escaped by a
+backslash ("\:"), which is parsable by using the shell \fBread\fR(1) function
+with the environmental variable \fBIFS\fR. The \fIuuid\fR value is assigned by
+\fBlibuuid\fR(3LIB) when the zone is installed, and is useful for identifying
+the same zone when present (or renamed) on alternate boot environments. Any
+software that parses the output of the "\fBzoneadm list -p\fR" command must be
+able to handle any fields that may be added in the future.
+.sp
+The \fB-v\fR and \fB-p\fR options are mutually exclusive. If neither \fB-v\fR
+nor \fB-p\fR is used, just the zone name is listed.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display verbose information, including zone name, id, current state, root
+directory, brand type, ip-type, and options.
+.sp
+The \fB-v\fR and \fB-p\fR options are mutually exclusive. If neither \fB-v\fR
+nor \fB-p\fR is used, just the zone name is listed.
+.RE
+
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmark incomplete\fR\fR
+.ad
+.sp .6
+.RS 4n
+Change the state of an installed zone to "incomplete." This command may be
+useful in cases where administrative changes on the system have rendered a zone
+unusable or inconsistent. This change cannot be undone (except by uninstalling
+the zone).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmove\fR \fInew_zonepath\fR\fR
+.ad
+.sp .6
+.RS 4n
+Move the \fIzonepath\fR to \fInew_zonepath\fR. The zone must be halted before
+this subcommand can be used. The \fInew_zonepath\fR must be a local file system
+and normal restrictions for \fIzonepath\fR apply.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBready [\fB-X\fR]\fR\fR
+.ad
+.sp .6
+.RS 4n
+Prepares a zone for running applications but does not start any user processes
+in the zone.
+.sp
+The \fI-X\fR option enables debug for the zone's brand while readying.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBreboot\fR\ [\fB-X\fR] [\fB--\fR \fIboot_options\fR]]\fR
+.ad
+.sp .6
+.RS 4n
+Restart the zones. This is equivalent to a \fBhalt\fR \fBboot\fR sequence. This
+subcommand fails if the specified zones are not active. See \fIboot\fR subcommand
+for the boot options.
+.sp
+The \fI-X\fR option enables debug for the zone's brand while rebooting.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBshutdown\fR [\fB-r\fR [\fB--\fR \fIboot_options\fR]]\fR
+.ad
+.sp .6
+.RS 4n
+Gracefully shutdown the specified zone. This subcommand waits for all zone
+processes to finish; the default timeout is SCF_PROPERTY_TIMEOUT value from
+the SMF service system/zones. If the \fB-r\fR option is specified, reboot the
+zone. See \fIboot\fR subcommand for the boot options.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBuninstall [\fR\fB-F\fR\fB]\fR\fR
+.ad
+.sp .6
+.RS 4n
+Uninstall the specified zone from the system. Use this subcommand with caution.
+It removes all of the files under the \fIzonepath\fR of the zone in question.
+You can use the \fB-F\fR flag to force the action.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBverify\fR\fR
+.ad
+.sp .6
+.RS 4n
+Check to make sure the configuration of the specified zone can safely be
+installed on the machine. Following is a break-down of the checks by
+\fBresource/property\fR type:
+.sp
+.ne 2
+.na
+\fB\fBzonepath\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBzonepath\fR and its parent directory exist and are owned by root with
+appropriate modes . The appropriate modes are that \fBzonepath\fR is \fB700\fR,
+its parent is not \fBgroup\fR or \fBworld-writable\fR and so forth.
+\fBzonepath\fR is not over an NFS mount. A sub-directory of the \fBzonepath\fR
+named "root" does not exist.
+.sp
+If \fBzonepath\fR does not exist, the \fBverify\fR does not fail, but merely
+warns that a subsequent install will attempt to create it with proper
+permissions. A \fBverify\fR subsequent to that might fail should anything go
+wrong.
+.sp
+\fBzonepath\fR cannot be a symbolic link.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfs\fR\fR
+.ad
+.sp .6
+.RS 4n
+Any \fBfs\fR resources have their \fItype\fR value checked. An error is
+reported if the value is one of \fBproc\fR, \fBmntfs\fR, \fBautofs\fR,
+or \fBnfs\fR or the filesystem does not have an associated mount
+binary at \fB/usr/lib/fs/\fI<fstype>\fR/mount\fR.
+.sp
+It is an error for the \fIdirectory\fR to be a relative path.
+.sp
+It is an error for the path specified by \fBraw\fR to be a relative path or if
+there is no \fBfsck\fR binary for a given filesystem type at
+\fB/usr/lib/fs/\fI<fstype>\fR/fsck\fR. It is also an error if a corresponding
+\fBfsck\fR binary exists but a \fBraw\fR path is not specified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnet\fR\fR
+.ad
+.sp .6
+.RS 4n
+All physical network interfaces exist. All network address resources are one
+of:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+a valid IPv4 address, optionally followed by "\fB/\fR" and a prefix length;
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+a valid IPv6 address, which must be followed by "\fB/\fR" and a prefix length;
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+a host name which resolves to an IPv4 address.
+.RE
+Note that hostnames that resolve to IPv6 addresses are not supported.
+.sp
+The physical interface name is the network interface name.
+.sp
+A zone can be configured to be either exclusive-IP or shared-IP. For a
+shared-IP zone, both the physical and address properties must be set. For an
+exclusive-IP zone, the physical property must be set and the address property
+cannot be set.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrctl\fR\fR
+.ad
+.sp .6
+.RS 4n
+It also verifies that any defined resource control values are valid on the
+current machine. This means that the privilege level is \fBprivileged\fR, the
+limit is lower than the currently defined system value, and that the defined
+action agrees with the actions that are valid for the given resource control.
+.RE
+
+.RE
+
+.SH EXAMPLES
+.LP
+\fBExample 1 \fRUsing the \fB-m\fR Option
+.sp
+.LP
+The following command illustrates the use of the \fB-m\fR option.
+
+.sp
+.in +2
+.nf
+# \fBzoneadm boot -- -m verbose\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRUsing the \fB-i\fR Option
+.sp
+.LP
+The following command illustrates the use of the \fB-i\fR option.
+
+.sp
+.in +2
+.nf
+# \fBzoneadm boot -- -i /sbin/init\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRUsing the \fB-s\fR Option
+.sp
+.LP
+The following command illustrates the use of the \fB-s\fR option.
+
+.sp
+.in +2
+.nf
+# \fBzoneadm boot -- -s\fR
+.fi
+.in -2
+.sp
+
+.SH EXIT STATUS
+.LP
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.sp .6
+.RS 4n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB1\fR\fR
+.ad
+.sp .6
+.RS 4n
+An error occurred.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB2\fR\fR
+.ad
+.sp .6
+.RS 4n
+Invalid usage.
+.RE
+
+.SH ATTRIBUTES
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Committed
+.TE
+
+.SH SEE ALSO
+.LP
+.BR read (1),
+.BR svcs (1),
+.BR zlogin (1),
+.BR zonename (1),
+.BR libuuid (3LIB),
+.BR attributes (7),
+.BR brands (7),
+.BR native (7),
+.BR smf (7),
+.BR zones (7),
+.BR init (8),
+.BR kernel (8),
+.BR svc.startd (8),
+.BR svc.startd (8),
+.BR svcadm (8),
+.BR zonecfg (8)
+.SH NOTES
+.LP
+The \fBzones\fR(7) service is managed by the service management facility,
+\fBsmf\fR(7), under the service identifier:
+.sp
+.in +2
+.nf
+svc:/system/zones:default
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Administrative actions on this service, such as enabling, disabling, or
+requesting restart, can be performed using \fBsvcadm\fR(8). The service's
+status can be queried using the \fBsvcs\fR(1) command.
diff --git a/usr/src/man/man8/zoneadmd.8 b/usr/src/man/man8/zoneadmd.8
new file mode 100644
index 0000000000..9c6df11990
--- /dev/null
+++ b/usr/src/man/man8/zoneadmd.8
@@ -0,0 +1,72 @@
+'\" te
+.\" Copyright (c) 2004, Sun Microsystems, Inc.
+.\" All Rights Reserved.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
+.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH ZONEADMD 8 "Nov 1, 2004"
+.SH NAME
+zoneadmd \- zone administration daemon
+.SH SYNOPSIS
+.LP
+.nf
+\fB/usr/lib/zones/zoneadmd\fR
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+\fBzoneadmd\fR is a system daemon that is started when the system needs to
+manage a particular zone. Because each instance of the \fBzoneadmd\fR daemon
+manages a particular zone, it is not unexpected to see multiple \fBzoneadmd\fR
+daemons running.
+.sp
+.LP
+This daemon is started automatically by the zone management software and should
+not be invoked directly. The daemon shuts down automatically when no longer in
+use. It does not constitute a programming interface, but is classified as a
+private interface.
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Private
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR svcs (1),
+.BR zlogin (1),
+.BR attributes (7),
+.BR smf (7),
+.BR zones (7),
+.BR svcadm (8),
+.BR zoneadm (8)
+.SH NOTES
+.sp
+.LP
+The \fBzones\fR(7) service is managed by the service management facility,
+\fBsmf\fR(7), under the service identifier:
+.sp
+.in +2
+.nf
+svc:/system/zones:default
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Administrative actions on this service, such as enabling, disabling, or
+requesting restart, can be performed using \fBsvcadm\fR(8). The service's
+status can be queried using the \fBsvcs\fR(1) command.
diff --git a/usr/src/man/man8/zonecfg.8 b/usr/src/man/man8/zonecfg.8
new file mode 100644
index 0000000000..f5c245b77a
--- /dev/null
+++ b/usr/src/man/man8/zonecfg.8
@@ -0,0 +1,2043 @@
+'\" te
+.\" Copyright (c) 2004, 2009 Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 2015 Joyent, Inc.
+.\" Copyright 2017 Peter Tribble
+.\" Copyright 2021 OmniOS Community Edition (OmniOSce) Association.
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH ZONECFG 8 "Jan 23, 2021"
+.SH NAME
+zonecfg \- set up zone configuration
+.SH SYNOPSIS
+.nf
+\fBzonecfg\fR {\fB-z\fR \fIzonename\fR | \fB-u\fR \fIuuid\fR}
+.fi
+
+.LP
+.nf
+\fBzonecfg\fR {\fB-z\fR \fIzonename\fR | \fB-u\fR \fIuuid\fR} \fIsubcommand\fR
+.fi
+
+.LP
+.nf
+\fBzonecfg\fR {\fB-z\fR \fIzonename\fR | \fB-u\fR \fIuuid\fR} \fB-f\fR \fIcommand_file\fR
+.fi
+
+.LP
+.nf
+\fBzonecfg\fR help
+.fi
+
+.SH DESCRIPTION
+The \fBzonecfg\fR utility creates and modifies the configuration of a zone.
+Zone configuration consists of a number of resources and properties.
+.sp
+.LP
+To simplify the user interface, \fBzonecfg\fR uses the concept of a scope. The
+default scope is global.
+.sp
+.LP
+The following synopsis of the \fBzonecfg\fR command is for interactive usage:
+.sp
+.in +2
+.nf
+{\fB-z\fR \fIzonename\fR | \fB-u\fR \fIuuid\fR}
+zonecfg {\fB-z\fR \fIzonename | \fB-u\fR \fIuuid} subcommand\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Parameters changed through \fBzonecfg\fR do not affect a running zone. The zone
+must be rebooted for the changes to take effect.
+.sp
+.LP
+In addition to creating and modifying a zone, the \fBzonecfg\fR utility can
+also be used to persistently specify the resource management settings for the
+global zone.
+.sp
+.LP
+In the following text, "rctl" is used as an abbreviation for "resource
+control". See \fBresource_controls\fR(7).
+.sp
+.LP
+Every zone is configured with an associated brand. The brand determines the
+user-level environment used within the zone, as well as various behaviors for
+the zone when it is installed, boots, or is shutdown. Once a zone has been
+installed the brand cannot be changed. The default brand is determined by the
+installed distribution in the global zone. Some brands do not support all of
+the \fBzonecfg\fR properties and resources. See the brand-specific man page for
+more details on each brand. For an overview of brands, see the \fBbrands\fR(7)
+man page.
+.SS "Resources"
+The following resource types are supported:
+.sp
+.ne 2
+.na
+\fB\fBattr\fR\fR
+.ad
+.sp .6
+.RS 4n
+Generic attribute.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcapped-cpu\fR\fR
+.ad
+.sp .6
+.RS 4n
+Limits for CPU usage.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcapped-memory\fR\fR
+.ad
+.sp .6
+.RS 4n
+Limits for physical, swap, and locked memory.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdataset\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBZFS\fR dataset.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdedicated-cpu\fR\fR
+.ad
+.sp .6
+.RS 4n
+Subset of the system's processors dedicated to this zone while it is running.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdevice\fR\fR
+.ad
+.sp .6
+.RS 4n
+Device.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfs\fR\fR
+.ad
+.sp .6
+.RS 4n
+file-system
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnet\fR\fR
+.ad
+.sp .6
+.RS 4n
+Network interface.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrctl\fR\fR
+.ad
+.sp .6
+.RS 4n
+Resource control.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsecurity-flags\fR\fR
+.ad
+.sp .6
+.RS 4n
+Process security flag settings.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBadmin\fR\fR
+.ad
+.sp .6
+.RS 4n
+Delegation of administration to specific users.
+.RE
+
+.SS "Properties"
+Each resource type has one or more properties. There are also some global
+properties, that is, properties of the configuration as a whole, rather than of
+some particular resource.
+.sp
+.LP
+The following properties are supported:
+.sp
+.ne 2
+.na
+\fB(global)\fR
+.ad
+.sp .6
+.RS 4n
+\fBzonename\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB(global)\fR
+.ad
+.sp .6
+.RS 4n
+\fBzonepath\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB(global)\fR
+.ad
+.sp .6
+.RS 4n
+\fBautoboot\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB(global)\fR
+.ad
+.sp .6
+.RS 4n
+\fBbootargs\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB(global)\fR
+.ad
+.sp .6
+.RS 4n
+\fBpool\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB(global)\fR
+.ad
+.sp .6
+.RS 4n
+\fBlimitpriv\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB(global)\fR
+.ad
+.sp .6
+.RS 4n
+\fBbrand\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB(global)\fR
+.ad
+.sp .6
+.RS 4n
+\fBcpu-shares\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB(global)\fR
+.ad
+.sp .6
+.RS 4n
+\fBhostid\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB(global)\fR
+.ad
+.sp .6
+.RS 4n
+\fBmax-lwps\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB(global)\fR
+.ad
+.sp .6
+.RS 4n
+\fBmax-msg-ids\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB(global)\fR
+.ad
+.sp .6
+.RS 4n
+\fBmax-processes\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB(global)\fR
+.ad
+.sp .6
+.RS 4n
+\fBmax-sem-ids\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB(global)\fR
+.ad
+.sp .6
+.RS 4n
+\fBmax-shm-ids\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB(global)\fR
+.ad
+.sp .6
+.RS 4n
+\fBmax-shm-memory\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB(global)\fR
+.ad
+.sp .6
+.RS 4n
+\fBscheduling-class\fR
+.RE
+
+.sp
+.ne 2
+.na
+.B (global)
+.ad
+.sp .6
+.RS 4n
+.B fs-allowed
+.RE
+
+.sp
+.ne 2
+.na
+\fB(global)\fR
+.ad
+.sp .6
+.RS 4n
+\fBzfs-io-priority\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfs\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBdir\fR, \fBspecial\fR, \fBraw\fR, \fBtype\fR, \fBoptions\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnet\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBaddress\fR, \fBallowed-address\fR, \fBdefrouter\fR, \fBglobal-nic\fR, \fBmac-addr\fR, \fBphysical\fR, \fBproperty\fR, \fBvlan-id\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdevice\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBmatch\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrctl\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBname\fR, \fBvalue\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBattr\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBname\fR, \fBtype\fR, \fBvalue\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdataset\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBname\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdedicated-cpu\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBncpus\fR, \fBimportance\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcapped-memory\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBphysical\fR, \fBswap\fR, \fBlocked\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcapped-cpu\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBncpus\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsecurity-flags\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBlower\fR, \fBdefault\fR, \fBupper\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBadmin\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBuser\fR, \fBauths\fR.
+.RE
+
+.sp
+.LP
+As for the property values which are paired with these names, they are either
+simple, complex, or lists. The type allowed is property-specific. Simple values
+are strings, optionally enclosed within quotation marks. Complex values have
+the syntax:
+.sp
+.in +2
+.nf
+(<\fIname\fR>=<\fIvalue\fR>,<\fIname\fR>=<\fIvalue\fR>,...)
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+where each <\fIvalue\fR> is simple, and the <\fIname\fR> strings are unique
+within a given property. Lists have the syntax:
+.sp
+.in +2
+.nf
+[<\fIvalue\fR>,...]
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+where each <\fIvalue\fR> is either simple or complex. A list of a single value
+(either simple or complex) is equivalent to specifying that value without the
+list syntax. That is, "foo" is equivalent to "[foo]". A list can be empty
+(denoted by "[]").
+.sp
+.LP
+In interpreting property values, \fBzonecfg\fR accepts regular expressions as
+specified in \fBfnmatch\fR(7). See \fBEXAMPLES\fR.
+.sp
+.LP
+The property types are described as follows:
+.sp
+.ne 2
+.na
+\fBglobal: \fBzonename\fR\fR
+.ad
+.sp .6
+.RS 4n
+The name of the zone.
+.RE
+
+.sp
+.ne 2
+.na
+\fBglobal: \fBzonepath\fR\fR
+.ad
+.sp .6
+.RS 4n
+Path to zone's file system.
+.RE
+
+.sp
+.ne 2
+.na
+\fBglobal: \fBautoboot\fR\fR
+.ad
+.sp .6
+.RS 4n
+Boolean indicating that a zone should be booted automatically at system boot.
+Note that if the zones service is disabled, the zone will not autoboot,
+regardless of the setting of this property. You enable the zones service with a
+\fBsvcadm\fR command, such as:
+.sp
+.in +2
+.nf
+# \fBsvcadm enable svc:/system/zones:default\fR
+.fi
+.in -2
+.sp
+
+Replace \fBenable\fR with \fBdisable\fR to disable the zones service. See
+\fBsvcadm\fR(8).
+.RE
+
+.sp
+.ne 2
+.na
+\fBglobal: \fBbootargs\fR\fR
+.ad
+.sp .6
+.RS 4n
+Arguments (options) to be passed to the zone bootup, unless options are
+supplied to the "\fBzoneadm boot\fR" command, in which case those take
+precedence. The valid arguments are described in \fBzoneadm\fR(8).
+.RE
+
+.sp
+.ne 2
+.na
+\fBglobal: \fBpool\fR\fR
+.ad
+.sp .6
+.RS 4n
+Name of the resource pool that this zone must be bound to when booted. This
+property is incompatible with the \fBdedicated-cpu\fR resource.
+.RE
+
+.sp
+.ne 2
+.na
+\fBglobal: \fBlimitpriv\fR\fR
+.ad
+.sp .6
+.RS 4n
+The maximum set of privileges any process in this zone can obtain. The property
+should consist of a comma-separated privilege set specification as described in
+\fBpriv_str_to_set\fR(3C). Privileges can be excluded from the resulting set by
+preceding their names with a dash (-) or an exclamation point (!). The special
+privilege string "zone" is not supported in this context. If the special string
+"default" occurs as the first token in the property, it expands into a safe set
+of privileges that preserve the resource and security isolation described in
+\fBzones\fR(7). A missing or empty property is equivalent to this same set of
+safe privileges.
+.sp
+The system administrator must take extreme care when configuring privileges for
+a zone. Some privileges cannot be excluded through this mechanism as they are
+required in order to boot a zone. In addition, there are certain privileges
+which cannot be given to a zone as doing so would allow processes inside a zone
+to unduly affect processes in other zones. \fBzoneadm\fR(8) indicates when an
+invalid privilege has been added or removed from a zone's privilege set when an
+attempt is made to either "boot" or "ready" the zone.
+.sp
+See \fBprivileges\fR(7) for a description of privileges. The command "\fBppriv
+-l\fR" (see \fBppriv\fR(1)) produces a list of all Solaris privileges. You can
+specify privileges as they are displayed by \fBppriv\fR. In
+\fBprivileges\fR(7), privileges are listed in the form
+PRIV_\fIprivilege_name\fR. For example, the privilege \fIsys_time\fR, as you
+would specify it in this property, is listed in \fBprivileges\fR(7) as
+\fBPRIV_SYS_TIME\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBglobal: \fBbrand\fR\fR
+.ad
+.sp .6
+.RS 4n
+The zone's brand type.
+.RE
+
+.sp
+.ne 2
+.na
+\fBglobal: \fBip-type\fR\fR
+.ad
+.sp .6
+.RS 4n
+A zone can either share the IP instance with the global zone, which is the
+default, or have its own exclusive instance of IP.
+.sp
+This property takes the values \fBshared\fR and \fBexclusive\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBglobal: \fBhostid\fR\fR
+.ad
+.sp .6
+.RS 4n
+A zone can emulate a 32-bit host identifier to ease system consolidation. A
+zone's \fBhostid\fR property is empty by default, meaning that the zone does
+not emulate a host identifier. Zone host identifiers must be hexadecimal values
+between 0 and FFFFFFFE. A \fB0x\fR or \fB0X\fR prefix is optional. Both
+uppercase and lowercase hexadecimal digits are acceptable.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBfs\fR: dir, special, raw, type, options\fR
+.ad
+.sp .6
+.RS 4n
+Values needed to determine how, where, and so forth to mount file systems. See
+\fBmount\fR(8), \fBmount\fR(2), \fBfsck\fR(8), and \fBvfstab\fR(5).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBinherit-pkg-dir\fR: dir\fR
+.ad
+.sp .6
+.RS 4n
+The directory path.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnet\fR: address, allowed-address, defrouter, global-nic, mac-addr, physical, property, vlan-id\fR
+.ad
+.sp .6
+.RS 4n
+The network address and physical interface name of the network interface. The
+network address is one of:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+a valid IPv4 address, optionally followed by "\fB/\fR" and a prefix length;
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+a valid IPv6 address, which must be followed by "\fB/\fR" and a prefix length;
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+a host name which resolves to an IPv4 address.
+.RE
+Note that host names that resolve to IPv6 addresses are not supported.
+.sp
+The physical interface name is the network interface name.
+.sp
+The default router is specified similarly to the network address except that it
+must not be followed by a \fB/\fR (slash) and a network prefix length.
+.sp
+A zone can be configured to be either exclusive-IP or shared-IP. For a
+shared-IP zone, you must set both the physical and address properties; setting
+the default router is optional. The interface specified in the physical
+property must be plumbed in the global zone prior to booting the non-global
+zone. However, if the interface is not used by the global zone, it should be
+configured \fBdown\fR in the global zone, and the default router for the
+interface should be specified here.
+.sp
+The global-nic is used for exclusive stack zones which will use a VNIC on-demand. When the zone boots, a VNIC named using the physical property will be created on the global NIC. If provided, the mac-addr and vlan-id will be set on this VNIC.
+.sp
+The \fBproperty\fR setting is a resource which can be used to set arbitrary name/value pairs on the network. These name/value pairs are made available to the zone's brand, which can use them as needed to set up the network interface.
+.sp
+For an exclusive-IP zone, the physical property must be set and the address and
+default router properties cannot be set.
+.sp
+An exclusive-IP zone is responsible for managing its own network configuration.
+If the allowed-address property is set, the zone administrator will only be
+permitted to configure the interface with the specified address. To allow
+multiple addresses (for example, an IPv4 and IPv6 address), use add net
+multiple times.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdevice\fR: match\fR
+.ad
+.sp .6
+.RS 4n
+Device name to match.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrctl\fR: name, value\fR
+.ad
+.sp .6
+.RS 4n
+The name and \fIpriv\fR/\fIlimit\fR/\fIaction\fR triple of a resource control.
+See \fBprctl\fR(1) and \fBrctladm\fR(8). The preferred way to set rctl values
+is to use the global property name associated with a specific rctl.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBattr\fR: name, type, value\fR
+.ad
+.sp .6
+.RS 4n
+The name, type and value of a generic attribute. The \fBtype\fR must be one of
+\fBint\fR, \fBuint\fR, \fBboolean\fR or \fBstring\fR, and the value must be of
+that type. \fBuint\fR means unsigned, that is, a non-negative integer.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdataset\fR: name\fR
+.ad
+.sp .6
+.RS 4n
+The name of a \fBZFS\fR dataset to be accessed from within the zone. See
+\fBzfs\fR(8).
+.RE
+
+.sp
+.ne 2
+.na
+\fBglobal: \fBcpu-shares\fR\fR
+.ad
+.sp .6
+.RS 4n
+The number of Fair Share Scheduler (FSS) shares to allocate to this zone. This
+property is incompatible with the \fBdedicated-cpu\fR resource. This property
+is the preferred way to set the \fBzone.cpu-shares\fR rctl.
+.RE
+
+.sp
+.ne 2
+.na
+\fBglobal: \fBmax-lwps\fR\fR
+.ad
+.sp .6
+.RS 4n
+The maximum number of LWPs simultaneously available to this zone. This property
+is the preferred way to set the \fBzone.max-lwps\fR rctl.
+If \fBmax-processes\fR is not explicitly set then it will be set to the
+same value as \fBmax-lwps\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBglobal: \fBmax-msg-ids\fR\fR
+.ad
+.sp .6
+.RS 4n
+The maximum number of message queue IDs allowed for this zone. This property is
+the preferred way to set the \fBzone.max-msg-ids\fR rctl.
+.RE
+
+.sp
+.ne 2
+.na
+\fBglobal: \fBmax-processes\fR\fR
+.ad
+.sp .6
+.RS 4n
+The maximum number of processes simultaneously available to this zone. This
+property is the preferred way to set the \fBzone.max-processes\fR rctl.
+If \fBmax-lwps\fR is not explicitly set, then setting this property will
+automatically set \fBmax-lwps\fR to 10 times the value of
+\fBmax-processes\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fBglobal: \fBmax-sem-ids\fR\fR
+.ad
+.sp .6
+.RS 4n
+The maximum number of semaphore IDs allowed for this zone. This property is the
+preferred way to set the \fBzone.max-sem-ids\fR rctl.
+.RE
+
+.sp
+.ne 2
+.na
+\fBglobal: \fBmax-shm-ids\fR\fR
+.ad
+.sp .6
+.RS 4n
+The maximum number of shared memory IDs allowed for this zone. This property is
+the preferred way to set the \fBzone.max-shm-ids\fR rctl.
+.RE
+
+.sp
+.ne 2
+.na
+\fBglobal: \fBmax-shm-memory\fR\fR
+.ad
+.sp .6
+.RS 4n
+The maximum amount of shared memory allowed for this zone. This property is the
+preferred way to set the \fBzone.max-shm-memory\fR rctl. A scale (K, M, G, T)
+can be applied to the value for this number (for example, 1M is one megabyte).
+.RE
+
+.sp
+.ne 2
+.na
+\fBglobal: \fBscheduling-class\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies the scheduling class used for processes running in a zone. When this
+property is not specified, the scheduling class is established as follows:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+If the \fBcpu-shares\fR property or equivalent rctl is set, the scheduling
+class \fBFSS\fR is used.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+If neither \fBcpu-shares\fR nor the equivalent rctl is set and the zone's pool
+property references a pool that has a default scheduling class, that class is
+used.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+Under any other conditions, the system default scheduling class is used.
+.RE
+.sp
+If the \fBFX\fR scheduling class is specified, then the optional
+\fBfixed-hi-pri\fR attribute can be set to \fBtrue\fR. This causes all of the
+processes in the zone to run at the highest \fBFX\fR priority. By default
+processes under \fBFX\fR run at the lowest priority. See \fBpriocntl\fR(2)
+for details on each scheduling class.
+.RE
+
+
+.sp
+.ne 2
+.na
+\fB\fBdedicated-cpu\fR: ncpus, importance\fR
+.ad
+.sp .6
+.RS 4n
+The number of CPUs that should be assigned for this zone's exclusive use. The
+zone will create a pool and processor set when it boots. See \fBpooladm\fR(8)
+and \fBpoolcfg\fR(8) for more information on resource pools. The \fBncpu\fR
+property can specify a single value or a range (for example, 1-4) of
+processors. The \fBimportance\fR property is optional; if set, it will specify
+the \fBpset.importance\fR value for use by \fBpoold\fR(8). If this resource is
+used, there must be enough free processors to allocate to this zone when it
+boots or the zone will not boot. The processors assigned to this zone will not
+be available for the use of the global zone or other zones. This resource is
+incompatible with both the \fBpool\fR and \fBcpu-shares\fR properties. Only a
+single instance of this resource can be added to the zone.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcapped-memory\fR: physical, swap, locked\fR
+.ad
+.sp .6
+.RS 4n
+The caps on the memory that can be used by this zone. A scale (K, M, G, T) can
+be applied to the value for each of these numbers (for example, 1M is one
+megabyte). Each of these properties is optional but at least one property must
+be set when adding this resource. Only a single instance of this resource can
+be added to the zone. The \fBphysical\fR property sets the \fBmax-rss\fR for
+this zone. This will be enforced by \fBrcapd\fR(8) running in the global zone.
+The \fBswap\fR property is the preferred way to set the \fBzone.max-swap\fR
+rctl. The \fBlocked\fR property is the preferred way to set the
+\fBzone.max-locked-memory\fR rctl.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcapped-cpu\fR: ncpus\fR
+.ad
+.sp .6
+.RS 4n
+Sets a limit on the amount of CPU time that can be used by a zone. The unit
+used translates to the percentage of a single CPU that can be used by all user
+threads in a zone, expressed as a fraction (for example, \fB\&.75\fR) or a
+mixed number (whole number and fraction, for example, \fB1.25\fR). An
+\fBncpu\fR value of \fB1\fR means 100% of a CPU, a value of \fB1.25\fR means
+125%, \fB\&.75\fR mean 75%, and so forth. When projects within a capped zone
+have their own caps, the minimum value takes precedence.
+.sp
+The \fBcapped-cpu\fR property is an alias for \fBzone.cpu-cap\fR resource
+control and is related to the \fBzone.cpu-cap\fR resource control. See
+\fBresource_controls\fR(7).
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBsecurity-flags\fR: lower, default, upper\fR
+.ad
+.sp .6
+.RS 4n
+Set the process security flags associated with the zone. The \fBlower\fR and
+\fBupper\fR fields set the limits, the \fBdefault\fR field is set of flags all
+zone processes inherit.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBadmin\fR: user, auths\fR
+.ad
+.sp .6
+.RS 4n
+Delegate zone administration to the named user. Valid values for \fBauths\fR
+are \fBlogin\fR, \fBmanage\fR, and \fBclonefrom\fR. The \fBlogin\fR
+authorization enables the user to use \fBzlogin\fR(1) to log in to the zone,
+being prompted for authentication (but not to access the zone console). The
+\fBmanage\fR authorization enables the user to install, update, boot or halt
+the zone, to log in using \fBzlogin\fR(1) without authentication, and to access
+the zone console. The \fBclonefrom\fR authorization allows the user to install
+a new zone using this zone as a clone source.
+.RE
+
+.sp
+.ne 2
+.na
+\fBglobal: \fBfs-allowed\fR\fR
+.ad
+.sp .6
+.RS 4n
+A comma-separated list of additional filesystems that may be mounted within
+the zone; for example "ufs,pcfs". By default, only hsfs(4FS) and network
+filesystems can be mounted. If the first entry in the list is "-" then
+that disables all of the default filesystems. If any filesystems are listed
+after "-" then only those filesystems can be mounted.
+
+This property does not apply to filesystems mounted into the zone via "add fs"
+or "add dataset".
+
+WARNING: allowing filesystem mounts other than the default may allow the zone
+administrator to compromise the system with a malicious filesystem image, and
+is not supported.
+.RE
+
+.sp
+.ne 2
+.na
+\fBglobal: \fBzfs-io-priority\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specifies a priority for this zone's ZFS I/O. The priority is used by the ZFS I/O scheduler as in input to determine how to schedule I/O across zones. By default all zones have a priority of 1. The value can be increased for zones whose I/O is more critical. This property is the preferred way to set the \fBzone.zfs-io-priority\fR rctl.
+.RE
+
+.sp
+.LP
+The following table summarizes resources, property-names, and types:
+.sp
+.in +2
+.nf
+resource property-name type
+(global) zonename simple
+(global) zonepath simple
+(global) autoboot simple
+(global) bootargs simple
+(global) pool simple
+(global) limitpriv simple
+(global) brand simple
+(global) ip-type simple
+(global) hostid simple
+(global) cpu-shares simple
+(global) max-lwps simple
+(global) max-msg-ids simple
+(global) max-processes simple
+(global) max-sem-ids simple
+(global) max-shm-ids simple
+(global) max-shm-memory simple
+(global) scheduling-class simple
+(global) zfs-io-priority simple
+fs dir simple
+ special simple
+ raw simple
+ type simple
+ options list of simple
+net address simple
+ allowed-address simple
+ defrouter simple
+ global-nic simple
+ mac-addr simple
+ physical simple
+ property list of complex
+ name simple
+ value simple
+ vlan-id simple
+device match simple
+rctl name simple
+ value list of complex
+attr name simple
+ type simple
+ value simple
+dataset name simple
+dedicated-cpu ncpus simple or range
+ importance simple
+
+capped-memory physical simple with scale
+ swap simple with scale
+ locked simple with scale
+
+capped-cpu ncpus simple
+security-flags lower simple
+ default simple
+ upper simple
+admin user simple
+ auths simple
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+To further specify things, the breakdown of the complex property "value" of the
+"rctl" resource type, it consists of three name/value pairs, the names being
+"priv", "limit" and "action", each of which takes a simple value. The "name"
+property of an "attr" resource is syntactically restricted in a fashion similar
+but not identical to zone names: it must begin with an alphanumeric, and can
+contain alphanumerics plus the hyphen (\fB-\fR), underscore (\fB_\fR), and dot
+(\fB\&.\fR) characters. Attribute names beginning with "zone" are reserved for
+use by the system. Finally, the "autoboot" global property must have a value of
+"true" or "false".
+.SS "Using Kernel Statistics to Monitor CPU Caps"
+Using the kernel statistics (\fBkstat\fR(3KSTAT)) module \fBcaps\fR, the system
+maintains information for all capped projects and zones. You can access this
+information by reading kernel statistics (\fBkstat\fR(3KSTAT)), specifying
+\fBcaps\fR as the \fBkstat\fR module name. The following command displays
+kernel statistics for all active CPU caps:
+.sp
+.in +2
+.nf
+# \fBkstat caps::'/cpucaps/'\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+A \fBkstat\fR(8) command running in a zone displays only CPU caps relevant for
+that zone and for projects in that zone. See \fBEXAMPLES\fR.
+.sp
+.LP
+The following are cap-related arguments for use with \fBkstat\fR(8):
+.sp
+.ne 2
+.na
+\fB\fBcaps\fR\fR
+.ad
+.sp .6
+.RS 4n
+The \fBkstat\fR module.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBproject_caps\fR or \fBzone_caps\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBkstat\fR class, for use with the \fBkstat\fR \fB-c\fR option.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcpucaps_project_\fR\fIid\fR or \fBcpucaps_zone_\fR\fIid\fR\fR
+.ad
+.sp .6
+.RS 4n
+\fBkstat\fR name, for use with the \fBkstat\fR \fB-n\fR option. \fIid\fR is the
+project or zone identifier.
+.RE
+
+.sp
+.LP
+The following fields are displayed in response to a \fBkstat\fR(8) command
+requesting statistics for all CPU caps.
+.sp
+.ne 2
+.na
+\fB\fBmodule\fR\fR
+.ad
+.sp .6
+.RS 4n
+In this usage of \fBkstat\fR, this field will have the value \fBcaps\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBname\fR\fR
+.ad
+.sp .6
+.RS 4n
+As described above, \fBcpucaps_project_\fR\fIid\fR or
+\fBcpucaps_zone_\fR\fIid\fR
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBabove_sec\fR\fR
+.ad
+.sp .6
+.RS 4n
+Total time, in seconds, spent above the cap.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBbelow_sec\fR\fR
+.ad
+.sp .6
+.RS 4n
+Total time, in seconds, spent below the cap.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBmaxusage\fR\fR
+.ad
+.sp .6
+.RS 4n
+Maximum observed CPU usage.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBnwait\fR\fR
+.ad
+.sp .6
+.RS 4n
+Number of threads on cap wait queue.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBusage\fR\fR
+.ad
+.sp .6
+.RS 4n
+Current aggregated CPU usage for all threads belonging to a capped project or
+zone, in terms of a percentage of a single CPU.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBvalue\fR\fR
+.ad
+.sp .6
+.RS 4n
+The cap value, in terms of a percentage of a single CPU.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBzonename\fR\fR
+.ad
+.sp .6
+.RS 4n
+Name of the zone for which statistics are displayed.
+.RE
+
+.sp
+.LP
+See \fBEXAMPLES\fR for sample output from a \fBkstat\fR command.
+.SH OPTIONS
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-f\fR \fIcommand_file\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify the name of \fBzonecfg\fR command file. \fIcommand_file\fR is a text
+file of \fBzonecfg\fR subcommands, one per line.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-z\fR \fIzonename\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify the name of a zone. Zone names are case sensitive. Zone names must
+begin with an alphanumeric character and can contain alphanumeric characters,
+the underscore (\fB_\fR) the hyphen (\fB-\fR), and the dot (\fB\&.\fR). The
+name \fBglobal\fR and all names beginning with \fBSUNW\fR are reserved and
+cannot be used.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-u\fR \fIuuid\fR\fR
+.ad
+.sp .6
+.RS 4n
+Specify the uuid of a zone instead of the Zone name.
+.RE
+
+.SH SUBCOMMANDS
+You can use the \fBadd\fR and \fBselect\fR subcommands to select a specific
+resource, at which point the scope changes to that resource. The \fBend\fR and
+\fBcancel\fR subcommands are used to complete the resource specification, at
+which time the scope is reverted back to global. Certain subcommands, such as
+\fBadd\fR, \fBremove\fR and \fBset\fR, have different semantics in each scope.
+.sp
+.LP
+\fBzonecfg\fR supports a semicolon-separated list of subcommands. For example:
+.sp
+.in +2
+.nf
+# \fBzonecfg -z myzone "add net; set physical=myvnic; end"\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+Subcommands which can result in destructive actions or loss of work have an
+\fB-F\fR option to force the action. If input is from a terminal device, the
+user is prompted when appropriate if such a command is given without the
+\fB-F\fR option otherwise, if such a command is given without the \fB-F\fR
+option, the action is disallowed, with a diagnostic message written to standard
+error.
+.sp
+.LP
+The following subcommands are supported:
+.sp
+.ne 2
+.na
+\fB\fBadd\fR \fIresource-type\fR (global scope)\fR
+.ad
+.br
+.na
+\fB\fBadd\fR \fIproperty-name property-value\fR (resource scope)\fR
+.ad
+.sp .6
+.RS 4n
+In the global scope, begin the specification for a given resource type. The
+scope is changed to that resource type.
+.sp
+In the resource scope, add a property of the given name with the given value.
+The syntax for property values varies with different property types. In
+general, it is a simple value or a list of simple values enclosed in square
+brackets, separated by commas (\fB[foo,bar,baz]\fR). See \fBPROPERTIES\fR.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcancel\fR\fR
+.ad
+.sp .6
+.RS 4n
+End the resource specification and reset scope to global. Abandons any
+partially specified resources. \fBcancel\fR is only applicable in the resource
+scope.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBclear\fR \fIproperty-name\fR\fR
+.ad
+.sp .6
+.RS 4n
+Clear the value for the property.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcommit\fR\fR
+.ad
+.sp .6
+.RS 4n
+Commit the current configuration from memory to stable storage. The
+configuration must be committed to be used by \fBzoneadm\fR. Until the
+in-memory configuration is committed, you can remove changes with the
+\fBrevert\fR subcommand. The \fBcommit\fR operation is attempted automatically
+upon completion of a \fBzonecfg\fR session. Since a configuration must be
+correct to be committed, this operation automatically does a verify.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBcreate [\fR\fB-F\fR\fB] [\fR \fB-a\fR \fIpath\fR |\fB-b\fR \fB|\fR \fB-t\fR \fItemplate\fR\fB] [\fR\fB-X\fR\fB]\fR\fR
+.ad
+.sp .6
+.RS 4n
+Create an in-memory configuration for the specified zone. Use \fBcreate\fR to
+begin to configure a new zone. See \fBcommit\fR for saving this to stable
+storage.
+.sp
+If you are overwriting an existing configuration, specify the \fB-F\fR option
+to force the action. Specify the \fB-t\fR \fItemplate\fR option to create a
+configuration identical to \fItemplate\fR, where \fItemplate\fR is the name of
+a configured zone.
+.sp
+Use the \fB-a\fR \fIpath\fR option to facilitate configuring a detached zone on
+a new host. The \fIpath\fR parameter is the zonepath location of a detached
+zone that has been moved on to this new host. Once the detached zone is
+configured, it should be installed using the "\fBzoneadm attach\fR" command
+(see \fBzoneadm\fR(8)). All validation of the new zone happens during the
+\fBattach\fR process, not during zone configuration.
+.sp
+Use the \fB-b\fR option to create a blank configuration. Without arguments,
+\fBcreate\fR applies the Sun default settings.
+.sp
+Use the \fB-X\fR option to facilitate creating a zone whose XML definition already exists on the host. The zone will be atomically added to the zone index file.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBdelete [\fR\fB-F\fR\fB]\fR\fR
+.ad
+.sp .6
+.RS 4n
+Delete the specified configuration from memory and stable storage. This action
+is instantaneous, no commit is necessary. A deleted configuration cannot be
+reverted.
+.sp
+Specify the \fB-F\fR option to force the action.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBend\fR\fR
+.ad
+.sp .6
+.RS 4n
+End the resource specification. This subcommand is only applicable in the
+resource scope. \fBzonecfg\fR checks to make sure the current resource is
+completely specified. If so, it is added to the in-memory configuration (see
+\fBcommit\fR for saving this to stable storage) and the scope reverts to
+global. If the specification is incomplete, it issues an appropriate error
+message.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBexport [\fR\fB-f\fR \fIoutput-file\fR\fB]\fR\fR
+.ad
+.sp .6
+.RS 4n
+Print configuration to standard output. Use the \fB-f\fR option to print the
+configuration to \fIoutput-file\fR. This option produces output in a form
+suitable for use in a command file.
+.RE
+
+.sp
+.ne 2
+.na
+.BR "help " [ usage ]
+.RI [ subcommand ]
+[syntax]
+.RI [ command-name ]
+.ad
+.sp .6
+.RS 4n
+Print general help or help about given topic.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBinfo zonename | zonepath | autoboot | brand | pool | limitpriv\fR\fR
+.ad
+.br
+.na
+\fB\fBinfo [\fR\fIresource-type\fR
+\fB[\fR\fIproperty-name\fR\fB=\fR\fIproperty-value\fR\fB]*]\fR\fR
+.ad
+.sp .6
+.RS 4n
+Display information about the current configuration. If \fIresource-type\fR is
+specified, displays only information about resources of the relevant type. If
+any \fIproperty-name\fR value pairs are specified, displays only information
+about resources meeting the given criteria. In the resource scope, any
+arguments are ignored, and \fBinfo\fR displays information about the resource
+which is currently being added or modified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBremove\fR [\fR\fB-F\fR\fB] \fIresource-type\fR\fB [\fR\fIproperty-name\fR\fB=\fR\fIproperty-value\fR\fB]* \fR(global scope)\fR
+.br
+\fB\fBremove\fR \fR\fIproperty-name\fR\fB \fR\fIproperty-value\fR\fB \fR(resource scope)\fR
+.ad
+.sp .6
+.RS 4n
+In the global scope, removes the specified resource. The \fB[]\fR syntax means
+0 or more property name-value pairs. If you want to only remove a
+single instance of the resource, you must specify enough property name-value
+pairs for the resource to be uniquely identified. If no property name-value
+pairs are specified, all instances will be removed. If there is more than one
+pair specified, a confirmation is required, unless you use the \fB-F\fR
+option. Likewise, the \fB-F\fR option can be used to remove a resource that
+does not exist (that is, no error will occur). In the resource scope, remove
+the specified name-value pair.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBselect\fR \fIresource-type\fR
+\fB{\fR\fIproperty-name\fR\fB=\fR\fIproperty-value\fR\fB}\fR\fR
+.ad
+.sp .6
+.RS 4n
+Select the resource of the given type which matches the given
+\fIproperty-name\fR \fIproperty-value\fR pair criteria, for modification. This
+subcommand is applicable only in the global scope. The scope is changed to that
+resource type. The \fB{}\fR syntax means 1 or more of whatever is inside the
+curly braces. You must specify enough \fIproperty -name property-value\fR pairs
+for the resource to be uniquely identified.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBset\fR \fIproperty-name\fR\fB=\fR\fIproperty\fR\fB-\fR\fIvalue\fR\fR
+.ad
+.sp .6
+.RS 4n
+Set a given property name to the given value. Some properties (for example,
+\fBzonename\fR and \fBzonepath\fR) are global while others are
+resource-specific. This subcommand is applicable in both the global and
+resource scopes.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBverify\fR\fR
+.ad
+.sp .6
+.RS 4n
+Verify the current configuration for correctness:
+.RS +4
+.TP
+.ie t \(bu
+.el o
+All resources have all of their required properties specified.
+.RE
+.RS +4
+.TP
+.ie t \(bu
+.el o
+A \fBzonepath\fR is specified.
+.RE
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBrevert\fR \fB[\fR\fB-F\fR\fB]\fR\fR
+.ad
+.sp .6
+.RS 4n
+Revert the configuration back to the last committed state. The \fB-F\fR option
+can be used to force the action.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fBexit [\fR\fB-F\fR\fB]\fR\fR
+.ad
+.sp .6
+.RS 4n
+Exit the \fBzonecfg\fR session. A commit is automatically attempted if needed.
+You can also use an \fBEOF\fR character to exit \fBzonecfg\fR. The \fB-F\fR
+option can be used to force the action.
+.RE
+
+.SH EXAMPLES
+\fBExample 1 \fRCreating the Environment for a New Zone
+.sp
+.LP
+In the following example, \fBzonecfg\fR creates the environment for a new zone.
+\fB/usr/local\fR is loopback mounted from the global zone into
+\fB/opt/local\fR. \fB/opt/sfw\fR is loopback mounted from the global zone,
+three logical network interfaces are added, and a limit on the number of
+fair-share scheduler (FSS) CPU shares for a zone is set using the \fBrctl\fR
+resource type. The example also shows how to select a given resource for
+modification.
+
+.sp
+.in +2
+.nf
+example# \fBzonecfg -z myzone3\fR
+my-zone3: No such zone configured
+Use 'create' to begin configuring a new zone.
+zonecfg:myzone3> \fBcreate\fR
+zonecfg:myzone3> \fBset zonepath=/export/home/my-zone3\fR
+zonecfg:myzone3> \fBset autoboot=true\fR
+zonecfg:myzone3> \fBadd fs\fR
+zonecfg:myzone3:fs> \fBset dir=/usr/local\fR
+zonecfg:myzone3:fs> \fBset special=/opt/local\fR
+zonecfg:myzone3:fs> \fBset type=lofs\fR
+zonecfg:myzone3:fs> \fBadd options [ro,nodevices]\fR
+zonecfg:myzone3:fs> \fBend\fR
+zonecfg:myzone3> \fBadd fs\fR
+zonecfg:myzone3:fs> \fBset dir=/mnt\fR
+zonecfg:myzone3:fs> \fBset special=/dev/dsk/c0t0d0s7\fR
+zonecfg:myzone3:fs> \fBset raw=/dev/rdsk/c0t0d0s7\fR
+zonecfg:myzone3:fs> \fBset type=ufs\fR
+zonecfg:myzone3:fs> \fBend\fR
+zonecfg:myzone3> \fBadd net\fR
+zonecfg:myzone3:net> \fBset address=192.168.0.1/24\fR
+zonecfg:myzone3:net> \fBset physical=eri0\fR
+zonecfg:myzone3:net> \fBend\fR
+zonecfg:myzone3> \fBadd net\fR
+zonecfg:myzone3:net> \fBset address=192.168.1.2/24\fR
+zonecfg:myzone3:net> \fBset physical=eri0\fR
+zonecfg:myzone3:net> \fBend\fR
+zonecfg:myzone3> \fBadd net\fR
+zonecfg:myzone3:net> \fBset address=192.168.2.3/24\fR
+zonecfg:myzone3:net> \fBset physical=eri0\fR
+zonecfg:myzone3:net> \fBend\fR
+zonecfg:my-zone3> \fBset cpu-shares=5\fR
+zonecfg:my-zone3> \fBadd capped-memory\fR
+zonecfg:my-zone3:capped-memory> \fBset physical=50m\fR
+zonecfg:my-zone3:capped-memory> \fBset swap=100m\fR
+zonecfg:my-zone3:capped-memory> \fBend\fR
+zonecfg:myzone3> \fBexit\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 2 \fRCreating a Non-Native Zone
+.sp
+.LP
+The following example creates a new Linux zone:
+
+.sp
+.in +2
+.nf
+example# \fBzonecfg -z lxzone\fR
+lxzone: No such zone configured
+Use 'create' to begin configuring a new zone
+zonecfg:lxzone> \fBcreate -t SUNWlx\fR
+zonecfg:lxzone> \fBset zonepath=/export/zones/lxzone\fR
+zonecfg:lxzone> \fBset autoboot=true\fR
+zonecfg:lxzone> \fBexit\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 3 \fRCreating an Exclusive-IP Zone
+.sp
+.LP
+The following example creates a zone that is granted exclusive access to
+\fBbge1\fR and \fBbge33000\fR and that is isolated at the IP layer from the
+other zones configured on the system.
+
+.sp
+.LP
+The IP addresses and routing should be configured inside the new zone using
+the normal networking administration tools such as \fBipadm\fR(8).
+
+.sp
+.in +2
+.nf
+example# \fBzonecfg -z excl\fR
+excl: No such zone configured
+Use 'create' to begin configuring a new zone
+zonecfg:excl> \fBcreate\fR
+zonecfg:excl> \fBset zonepath=/export/zones/excl\fR
+zonecfg:excl> \fBset ip-type=exclusive\fR
+zonecfg:excl> \fBadd net\fR
+zonecfg:excl:net> \fBset physical=bge1\fR
+zonecfg:excl:net> \fBend\fR
+zonecfg:excl> \fBadd net\fR
+zonecfg:excl:net> \fBset physical=bge33000\fR
+zonecfg:excl:net> \fBend\fR
+zonecfg:excl> \fBexit\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 4 \fRAssociating a Zone with a Resource Pool
+.sp
+.LP
+The following example shows how to associate an existing zone with an existing
+resource pool:
+
+.sp
+.in +2
+.nf
+example# \fBzonecfg -z myzone\fR
+zonecfg:myzone> \fBset pool=mypool\fR
+zonecfg:myzone> \fBexit\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+For more information about resource pools, see \fBpooladm\fR(8) and
+\fBpoolcfg\fR(8).
+
+.LP
+\fBExample 5 \fRChanging the Name of a Zone
+.sp
+.LP
+The following example shows how to change the name of an existing zone:
+
+.sp
+.in +2
+.nf
+example# \fBzonecfg -z myzone\fR
+zonecfg:myzone> \fBset zonename=myzone2\fR
+zonecfg:myzone2> \fBexit\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 6 \fRChanging the Privilege Set of a Zone
+.sp
+.LP
+The following example shows how to change the set of privileges an existing
+zone's processes will be limited to the next time the zone is booted. In this
+particular case, the privilege set will be the standard safe set of privileges
+a zone normally has along with the privilege to change the system date and
+time:
+
+.sp
+.in +2
+.nf
+example# \fBzonecfg -z myzone\fR
+zonecfg:myzone> \fBset limitpriv="default,sys_time"\fR
+zonecfg:myzone2> \fBexit\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 7 \fRSetting the \fBzone.cpu-shares\fR Property for the Global Zone
+.sp
+.LP
+The following command sets the \fBzone.cpu-shares\fR property for the global
+zone:
+
+.sp
+.in +2
+.nf
+example# \fBzonecfg -z global\fR
+zonecfg:global> \fBset cpu-shares=5\fR
+zonecfg:global> \fBexit\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 8 \fRUsing Pattern Matching
+.sp
+.LP
+The following commands illustrate \fBzonecfg\fR support for pattern matching.
+In the zone \fBflexlm\fR, enter:
+
+.sp
+.in +2
+.nf
+zonecfg:flexlm> \fBadd device\fR
+zonecfg:flexlm:device> \fBset match="/dev/cua/a00[2-5]"\fR
+zonecfg:flexlm:device> \fBend\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+In the global zone, enter:
+
+.sp
+.in +2
+.nf
+global# \fBls /dev/cua\fR
+a a000 a001 a002 a003 a004 a005 a006 a007 b
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+In the zone \fBflexlm\fR, enter:
+
+.sp
+.in +2
+.nf
+flexlm# \fBls /dev/cua\fR
+a002 a003 a004 a005
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 9 \fRSetting a Cap for a Zone to Three CPUs
+.sp
+.LP
+The following sequence uses the \fBzonecfg\fR command to set the CPU cap for a
+zone to three CPUs.
+
+.sp
+.in +2
+.nf
+zonecfg:myzone> \fBadd capped-cpu\fR
+zonecfg:myzone>capped-cpu> \fBset ncpus=3\fR
+zonecfg:myzone>capped-cpu>capped-cpu> \fBend\fR
+.fi
+.in -2
+.sp
+
+.sp
+.LP
+The preceding sequence, which uses the capped-cpu property, is equivalent to
+the following sequence, which makes use of the \fBzone.cpu-cap\fR resource
+control.
+
+.sp
+.in +2
+.nf
+zonecfg:myzone> \fBadd rctl\fR
+zonecfg:myzone:rctl> \fBset name=zone.cpu-cap\fR
+zonecfg:myzone:rctl> \fBadd value (priv=privileged,limit=300,action=none)\fR
+zonecfg:myzone:rctl> \fBend\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 10 \fRUsing \fBkstat\fR to Monitor CPU Caps
+.sp
+.LP
+The following command displays information about all CPU caps.
+
+.sp
+.in +2
+.nf
+# \fBkstat -n /cpucaps/\fR
+module: caps instance: 0
+name: cpucaps_project_0 class: project_caps
+ above_sec 0
+ below_sec 2157
+ crtime 821.048183159
+ maxusage 2
+ nwait 0
+ snaptime 235885.637253027
+ usage 0
+ value 18446743151372347932
+ zonename global
+
+module: caps instance: 0
+name: cpucaps_project_1 class: project_caps
+ above_sec 0
+ below_sec 0
+ crtime 225339.192787265
+ maxusage 5
+ nwait 0
+ snaptime 235885.637591677
+ usage 5
+ value 18446743151372347932
+ zonename global
+
+module: caps instance: 0
+name: cpucaps_project_201 class: project_caps
+ above_sec 0
+ below_sec 235105
+ crtime 780.37961782
+ maxusage 100
+ nwait 0
+ snaptime 235885.637789687
+ usage 43
+ value 100
+ zonename global
+
+module: caps instance: 0
+name: cpucaps_project_202 class: project_caps
+ above_sec 0
+ below_sec 235094
+ crtime 791.72983782
+ maxusage 100
+ nwait 0
+ snaptime 235885.637967512
+ usage 48
+ value 100
+ zonename global
+
+module: caps instance: 0
+name: cpucaps_project_203 class: project_caps
+ above_sec 0
+ below_sec 235034
+ crtime 852.104401481
+ maxusage 75
+ nwait 0
+ snaptime 235885.638144304
+ usage 47
+ value 100
+ zonename global
+
+module: caps instance: 0
+name: cpucaps_project_86710 class: project_caps
+ above_sec 22
+ below_sec 235166
+ crtime 698.441717859
+ maxusage 101
+ nwait 0
+ snaptime 235885.638319871
+ usage 54
+ value 100
+ zonename global
+
+module: caps instance: 0
+name: cpucaps_zone_0 class: zone_caps
+ above_sec 100733
+ below_sec 134332
+ crtime 821.048177123
+ maxusage 207
+ nwait 2
+ snaptime 235885.638497731
+ usage 199
+ value 200
+ zonename global
+
+module: caps instance: 1
+name: cpucaps_project_0 class: project_caps
+ above_sec 0
+ below_sec 0
+ crtime 225360.256448422
+ maxusage 7
+ nwait 0
+ snaptime 235885.638714404
+ usage 7
+ value 18446743151372347932
+ zonename test_001
+
+module: caps instance: 1
+name: cpucaps_zone_1 class: zone_caps
+ above_sec 2
+ below_sec 10524
+ crtime 225360.256440278
+ maxusage 106
+ nwait 0
+ snaptime 235885.638896443
+ usage 7
+ value 100
+ zonename test_001
+.fi
+.in -2
+.sp
+
+.LP
+\fBExample 11 \fRDisplaying CPU Caps for a Specific Zone or Project
+.sp
+.LP
+Using the \fBkstat\fR \fB-c\fR and \fB-i\fR options, you can display CPU caps
+for a specific zone or project, as below. The first command produces a display
+for a specific project, the second for the same project within zone 1.
+
+.sp
+.in +2
+.nf
+# \fBkstat -c project_caps\fR
+
+# \fBkstat -c project_caps -i 1\fR
+.fi
+.in -2
+.sp
+
+.SH EXIT STATUS
+The following exit values are returned:
+.sp
+.ne 2
+.na
+\fB\fB0\fR\fR
+.ad
+.sp .6
+.RS 4n
+Successful completion.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB1\fR\fR
+.ad
+.sp .6
+.RS 4n
+An error occurred.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB2\fR\fR
+.ad
+.sp .6
+.RS 4n
+Invalid usage.
+.RE
+
+.SH ATTRIBUTES
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Volatile
+.TE
+
+.SH SEE ALSO
+.BR ppriv (1),
+.BR prctl (1),
+.BR zlogin (1),
+.BR priv_str_to_set (3C),
+.BR kstat (3KSTAT),
+.BR vfstab (5),
+.BR attributes (7),
+.BR brands (7),
+.BR fnmatch (7),
+.BR lx (7),
+.BR privileges (7),
+.BR resource_controls (7),
+.BR security-flags (7),
+.BR zones (7),
+.BR ipadm (8),
+.BR kstat (8),
+.BR mount (8),
+.BR pooladm (8),
+.BR poolcfg (8),
+.BR poold (8),
+.BR rcapd (8),
+.BR rctladm (8),
+.BR svcadm (8),
+.BR zfs (8),
+.BR zoneadm (8)
+.sp
+.LP
+\fISystem Administration Guide: Solaris Containers-Resource Management, and
+Solaris Zones\fR
+.SH NOTES
+All character data used by \fBzonecfg\fR must be in US-ASCII encoding.
diff --git a/usr/src/man/man8/zonestatd.8 b/usr/src/man/man8/zonestatd.8
new file mode 100644
index 0000000000..23e34c12cd
--- /dev/null
+++ b/usr/src/man/man8/zonestatd.8
@@ -0,0 +1,90 @@
+.\"
+.\" This file and its contents are supplied under the terms of the
+.\" Common Development and Distribution License ("CDDL"), version 1.0.
+.\" You may only use this file in accordance with the terms of version
+.\" 1.0 of the CDDL.
+.\"
+.\" A full copy of the text of the CDDL should have accompanied this
+.\" source. A copy of the CDDL is also available via the Internet at
+.\" http://www.illumos.org/license/CDDL.
+.\"
+.\" Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
+.\" Copyright 2019 OmniOS Community Edition (OmniOSce) Association.
+.\"
+.Dd December 29, 2021
+.Dt ZONESTATD 8
+.Os
+.Sh NAME
+.Nm zonestatd
+.Nd zones monitoring daemon
+.Sh SYNOPSIS
+.Nm /usr/lib/zones/zonestatd
+.Sh DESCRIPTION
+.Nm
+is a system daemon that is started during system boot.
+It monitors the utilization of system resources by zones, as well
+as zone and system configuration information such as psrset psets,
+pool psets, and resource control settings.
+.Pp
+This daemon is started automatically by the zone management
+software and should not be invoked directly.
+It does not constitute a programming interface, but is classified as a
+private interface.
+.Sh IMPLEMENTATION NOTES
+The zonestat service is managed by the service management
+facility,
+.Xr smf 7 ,
+under the service identifier:
+.Pp
+.D1 svc:/system/zones-monitoring:default
+.Pp
+Administrative actions on this service, such as enabling, disabling, or
+requesting restart, can be performed using
+.Xr svcadm 8 .
+The service's status can be queried using the
+.Xr svcs 1
+command.
+.Pp
+The zonestat service has the following SMF configuration property:
+.Bd -ragged -offset indent
+config/sample_interval
+.Pp
+This property sets the
+.Nm
+sample interval.
+This is the interval used by the zones monitoring daemon,
+.Nm
+to sample resource utilization.
+This is also the interval used to determine configuration changes such as
+processor set changes, resource control changes, and zone state changes.
+.Pp
+The default interval is 5 seconds.
+.Ed
+.Pp
+The zonestat service makes use of extended accounting facility.
+If not already enabled, it enables the tracking of process accounting
+resources, and configures a process accounting file.
+The zonestat service will roll the process accounting log at its configured
+interval.
+.Pp
+If extended process accounting is enabled externally, the zonestat
+service will use the process accounting log as configured.
+It will not roll the accounting log, but will operate correctly if
+the accounting log is rolled externally.
+.Sh INTERFACE STABILITY
+.Sy Private
+.Sh SECURITY
+The zonestat service in the global zone must be online for the zonestat
+service in each non-global zone (NGZ) to function properly.
+The zonestat service in each NGZ does not directly read system configuration
+and utilization data, but rather reads from the zonestat service on the
+global zone.
+.Sh SEE ALSO
+.Xr zonestat 1 ,
+.Xr smf 7 ,
+.Xr zones 7 ,
+.Xr acctadm 8 ,
+.Xr pooladm 8 ,
+.Xr poolcfg 8 ,
+.Xr prctl 8 ,
+.Xr rcapadm 8
diff --git a/usr/src/man/man8/zpool.8 b/usr/src/man/man8/zpool.8
new file mode 100644
index 0000000000..f9ee7c6687
--- /dev/null
+++ b/usr/src/man/man8/zpool.8
@@ -0,0 +1,2547 @@
+.\"
+.\" CDDL HEADER START
+.\"
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.\"
+.\" CDDL HEADER END
+.\"
+.\"
+.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright (c) 2013, Joyent, Inc. All Rights Reserved.
+.\" Copyright (c) 2012, 2017 by Delphix. All rights reserved.
+.\" Copyright 2017 Nexenta Systems, Inc.
+.\" Copyright (c) 2017 Datto Inc.
+.\" Copyright (c) 2018 George Melikov. All Rights Reserved.
+.\" Copyright 2021 Joyent, Inc.
+.\" Copyright (c) 2012 Cyril Plisko. All Rights Reserved.
+.\"
+.Dd October 15, 2021
+.Dt ZPOOL 8
+.Os
+.Sh NAME
+.Nm zpool
+.Nd configure ZFS storage pools
+.Sh SYNOPSIS
+.Nm
+.Fl \&?
+.Nm
+.Cm add
+.Op Fl fgLnP
+.Oo Fl o Ar property Ns = Ns Ar value Oc
+.Ar pool vdev Ns ...
+.Nm
+.Cm attach
+.Op Fl f
+.Oo Fl o Ar property Ns = Ns Ar value Oc
+.Ar pool device new_device
+.Nm
+.Cm checkpoint
+.Op Fl d, -discard
+.Ar pool
+.Nm
+.Cm clear
+.Ar pool
+.Op Ar device
+.Nm
+.Cm create
+.Op Fl dfn
+.Op Fl B
+.Op Fl m Ar mountpoint
+.Oo Fl o Ar property Ns = Ns Ar value Oc Ns ...
+.Oo Fl o Cm feature@ Ns Ar feature Ns = Ns Ar value Oc Ns ...
+.Oo Fl O Ar file-system-property Ns = Ns Ar value Oc Ns ...
+.Op Fl R Ar root
+.Op Fl t Ar tempname
+.Ar pool vdev Ns ...
+.Nm
+.Cm destroy
+.Op Fl f
+.Ar pool
+.Nm
+.Cm detach
+.Ar pool device
+.Nm
+.Cm export
+.Op Fl f
+.Ar pool Ns ...
+.Nm
+.Cm get
+.Op Fl Hp
+.Op Fl o Ar field Ns Oo , Ns Ar field Oc Ns ...
+.Sy all Ns | Ns Ar property Ns Oo , Ns Ar property Oc Ns ...
+.Ar pool Ns ...
+.Nm
+.Cm history
+.Op Fl il
+.Oo Ar pool Oc Ns ...
+.Nm
+.Cm import
+.Op Fl D
+.Op Fl d Ar dir
+.Nm
+.Cm import
+.Fl a
+.Op Fl DflmN
+.Op Fl F Op Fl n
+.Op Fl c Ar cachefile Ns | Ns Fl d Ar dir
+.Op Fl o Ar mntopts
+.Oo Fl o Ar property Ns = Ns Ar value Oc Ns ...
+.Op Fl R Ar root
+.Nm
+.Cm import
+.Op Fl Dfmt
+.Op Fl F Op Fl n
+.Op Fl -rewind-to-checkpoint
+.Op Fl c Ar cachefile Ns | Ns Fl d Ar dir
+.Op Fl o Ar mntopts
+.Oo Fl o Ar property Ns = Ns Ar value Oc Ns ...
+.Op Fl R Ar root
+.Ar pool Ns | Ns Ar id
+.Op Ar newpool
+.Nm
+.Cm initialize
+.Op Fl c | Fl s
+.Ar pool
+.Op Ar device Ns ...
+.Nm
+.Cm iostat
+.Op Oo Fl lq Oc | Ns Fl rw
+.Op Fl T Sy u Ns | Ns Sy d
+.Op Fl ghHLnpPvy
+.Oo Oo Ar pool Ns ... Oc Ns | Ns Oo Ar pool vdev Ns ... Oc Ns | Ns Oo Ar vdev Ns ... Oc Oc
+.Op Ar interval Op Ar count
+.Nm
+.Cm labelclear
+.Op Fl f
+.Ar device
+.Nm
+.Cm list
+.Op Fl HgLpPv
+.Op Fl o Ar property Ns Oo , Ns Ar property Oc Ns ...
+.Op Fl T Sy u Ns | Ns Sy d
+.Oo Ar pool Oc Ns ...
+.Op Ar interval Op Ar count
+.Nm
+.Cm offline
+.Op Fl t
+.Ar pool Ar device Ns ...
+.Nm
+.Cm online
+.Op Fl e
+.Ar pool Ar device Ns ...
+.Nm
+.Cm reguid
+.Ar pool
+.Nm
+.Cm reopen
+.Ar pool
+.Nm
+.Cm remove
+.Op Fl np
+.Ar pool Ar device Ns ...
+.Nm
+.Cm remove
+.Fl s
+.Ar pool
+.Nm
+.Cm replace
+.Op Fl f
+.Ar pool Ar device Op Ar new_device
+.Nm
+.Cm resilver
+.Ar pool Ns ...
+.Nm
+.Cm scrub
+.Op Fl s | Fl p
+.Ar pool Ns ...
+.Nm
+.Cm trim
+.Op Fl d
+.Op Fl r Ar rate
+.Op Fl c | Fl s
+.Ar pool
+.Op Ar device Ns ...
+.Nm
+.Cm set
+.Ar property Ns = Ns Ar value
+.Ar pool
+.Nm
+.Cm split
+.Op Fl gLlnP
+.Oo Fl o Ar property Ns = Ns Ar value Oc Ns ...
+.Op Fl R Ar root
+.Ar pool newpool
+.Nm
+.Cm status
+.Op Fl DigLpPstvx
+.Op Fl T Sy u Ns | Ns Sy d
+.Oo Ar pool Oc Ns ...
+.Op Ar interval Op Ar count
+.Nm
+.Cm sync
+.Oo Ar pool Oc Ns ...
+.Nm
+.Cm upgrade
+.Nm
+.Cm upgrade
+.Fl v
+.Nm
+.Cm upgrade
+.Op Fl V Ar version
+.Fl a Ns | Ns Ar pool Ns ...
+.Sh DESCRIPTION
+The
+.Nm
+command configures ZFS storage pools.
+A storage pool is a collection of devices that provides physical storage and
+data replication for ZFS datasets.
+All datasets within a storage pool share the same space.
+See
+.Xr zfs 8
+for information on managing datasets.
+.Ss Virtual Devices (vdevs)
+A "virtual device" describes a single device or a collection of devices
+organized according to certain performance and fault characteristics.
+The following virtual devices are supported:
+.Bl -tag -width Ds
+.It Sy disk
+A block device, typically located under
+.Pa /dev/dsk .
+ZFS can use individual slices or partitions, though the recommended mode of
+operation is to use whole disks.
+A disk can be specified by a full path, or it can be a shorthand name
+.Po the relative portion of the path under
+.Pa /dev/dsk
+.Pc .
+A whole disk can be specified by omitting the slice or partition designation.
+For example,
+.Pa c0t0d0
+is equivalent to
+.Pa /dev/dsk/c0t0d0s2 .
+When given a whole disk, ZFS automatically labels the disk, if necessary.
+.It Sy file
+A regular file.
+The use of files as a backing store is strongly discouraged.
+It is designed primarily for experimental purposes, as the fault tolerance of a
+file is only as good as the file system of which it is a part.
+A file must be specified by a full path.
+.It Sy mirror
+A mirror of two or more devices.
+Data is replicated in an identical fashion across all components of a mirror.
+A mirror with N disks of size X can hold X bytes and can withstand (N-1) devices
+failing before data integrity is compromised.
+.It Sy raidz , raidz1 , raidz2 , raidz3
+A variation on RAID-5 that allows for better distribution of parity and
+eliminates the RAID-5
+.Qq write hole
+.Pq in which data and parity become inconsistent after a power loss .
+Data and parity is striped across all disks within a raidz group.
+.Pp
+A raidz group can have single-, double-, or triple-parity, meaning that the
+raidz group can sustain one, two, or three failures, respectively, without
+losing any data.
+The
+.Sy raidz1
+vdev type specifies a single-parity raidz group; the
+.Sy raidz2
+vdev type specifies a double-parity raidz group; and the
+.Sy raidz3
+vdev type specifies a triple-parity raidz group.
+The
+.Sy raidz
+vdev type is an alias for
+.Sy raidz1 .
+.Pp
+A raidz group with N disks of size X with P parity disks can hold approximately
+(N-P)*X bytes and can withstand P device(s) failing before data integrity is
+compromised.
+The minimum number of devices in a raidz group is one more than the number of
+parity disks.
+The recommended number is between 3 and 9 to help increase performance.
+.It Sy spare
+A special pseudo-vdev which keeps track of available hot spares for a pool.
+For more information, see the
+.Sx Hot Spares
+section.
+.It Sy log
+A separate intent log device.
+If more than one log device is specified, then writes are load-balanced between
+devices.
+Log devices can be mirrored.
+However, raidz vdev types are not supported for the intent log.
+For more information, see the
+.Sx Intent Log
+section.
+.It Sy dedup
+A device dedicated solely for allocating dedup data.
+The redundancy of this device should match the redundancy of the other normal
+devices in the pool.
+If more than one dedup device is specified, then allocations are load-balanced
+between devices.
+.It Sy special
+A device dedicated solely for allocating various kinds of internal metadata,
+and optionally small file data.
+The redundancy of this device should match the redundancy of the other normal
+devices in the pool.
+If more than one special device is specified, then allocations are
+load-balanced between devices.
+.Pp
+For more information on special allocations, see the
+.Sx Special Allocation Class
+section.
+.It Sy cache
+A device used to cache storage pool data.
+A cache device cannot be configured as a mirror or raidz group.
+For more information, see the
+.Sx Cache Devices
+section.
+.El
+.Pp
+Virtual devices cannot be nested, so a mirror or raidz virtual device can only
+contain files or disks.
+Mirrors of mirrors
+.Pq or other combinations
+are not allowed.
+.Pp
+A pool can have any number of virtual devices at the top of the configuration
+.Po known as
+.Qq root vdevs
+.Pc .
+Data is dynamically distributed across all top-level devices to balance data
+among devices.
+As new virtual devices are added, ZFS automatically places data on the newly
+available devices.
+.Pp
+Virtual devices are specified one at a time on the command line, separated by
+whitespace.
+The keywords
+.Sy mirror
+and
+.Sy raidz
+are used to distinguish where a group ends and another begins.
+For example, the following creates two root vdevs, each a mirror of two disks:
+.Bd -literal
+# zpool create mypool mirror c0t0d0 c0t1d0 mirror c1t0d0 c1t1d0
+.Ed
+.Ss Device Failure and Recovery
+ZFS supports a rich set of mechanisms for handling device failure and data
+corruption.
+All metadata and data is checksummed, and ZFS automatically repairs bad data
+from a good copy when corruption is detected.
+.Pp
+In order to take advantage of these features, a pool must make use of some form
+of redundancy, using either mirrored or raidz groups.
+While ZFS supports running in a non-redundant configuration, where each root
+vdev is simply a disk or file, this is strongly discouraged.
+A single case of bit corruption can render some or all of your data unavailable.
+.Pp
+A pool's health status is described by one of three states: online, degraded,
+or faulted.
+An online pool has all devices operating normally.
+A degraded pool is one in which one or more devices have failed, but the data is
+still available due to a redundant configuration.
+A faulted pool has corrupted metadata, or one or more faulted devices, and
+insufficient replicas to continue functioning.
+.Pp
+The health of the top-level vdev, such as mirror or raidz device, is
+potentially impacted by the state of its associated vdevs, or component
+devices.
+A top-level vdev or component device is in one of the following states:
+.Bl -tag -width "DEGRADED"
+.It Sy DEGRADED
+One or more top-level vdevs is in the degraded state because one or more
+component devices are offline.
+Sufficient replicas exist to continue functioning.
+.Pp
+One or more component devices is in the degraded or faulted state, but
+sufficient replicas exist to continue functioning.
+The underlying conditions are as follows:
+.Bl -bullet
+.It
+The number of checksum errors exceeds acceptable levels and the device is
+degraded as an indication that something may be wrong.
+ZFS continues to use the device as necessary.
+.It
+The number of I/O errors exceeds acceptable levels.
+The device could not be marked as faulted because there are insufficient
+replicas to continue functioning.
+.El
+.It Sy FAULTED
+One or more top-level vdevs is in the faulted state because one or more
+component devices are offline.
+Insufficient replicas exist to continue functioning.
+.Pp
+One or more component devices is in the faulted state, and insufficient
+replicas exist to continue functioning.
+The underlying conditions are as follows:
+.Bl -bullet
+.It
+The device could be opened, but the contents did not match expected values.
+.It
+The number of I/O errors exceeds acceptable levels and the device is faulted to
+prevent further use of the device.
+.El
+.It Sy OFFLINE
+The device was explicitly taken offline by the
+.Nm zpool Cm offline
+command.
+.It Sy ONLINE
+The device is online and functioning.
+.It Sy REMOVED
+The device was physically removed while the system was running.
+Device removal detection is hardware-dependent and may not be supported on all
+platforms.
+.It Sy UNAVAIL
+The device could not be opened.
+If a pool is imported when a device was unavailable, then the device will be
+identified by a unique identifier instead of its path since the path was never
+correct in the first place.
+.El
+.Pp
+If a device is removed and later re-attached to the system, ZFS attempts
+to put the device online automatically.
+Device attach detection is hardware-dependent and might not be supported on all
+platforms.
+.Ss Hot Spares
+ZFS allows devices to be associated with pools as
+.Qq hot spares .
+These devices are not actively used in the pool, but when an active device
+fails, it is automatically replaced by a hot spare.
+To create a pool with hot spares, specify a
+.Sy spare
+vdev with any number of devices.
+For example,
+.Bd -literal
+# zpool create pool mirror c0d0 c1d0 spare c2d0 c3d0
+.Ed
+.Pp
+Spares can be shared across multiple pools, and can be added with the
+.Nm zpool Cm add
+command and removed with the
+.Nm zpool Cm remove
+command.
+Once a spare replacement is initiated, a new
+.Sy spare
+vdev is created within the configuration that will remain there until the
+original device is replaced.
+At this point, the hot spare becomes available again if another device fails.
+.Pp
+If a pool has a shared spare that is currently being used, the pool can not be
+exported since other pools may use this shared spare, which may lead to
+potential data corruption.
+.Pp
+Shared spares add some risk.
+If the pools are imported on different hosts, and both pools suffer a device
+failure at the same time, both could attempt to use the spare at the same time.
+This may not be detected, resulting in data corruption.
+.Pp
+An in-progress spare replacement can be cancelled by detaching the hot spare.
+If the original faulted device is detached, then the hot spare assumes its
+place in the configuration, and is removed from the spare list of all active
+pools.
+.Pp
+Spares cannot replace log devices.
+.Ss Intent Log
+The ZFS Intent Log (ZIL) satisfies POSIX requirements for synchronous
+transactions.
+For instance, databases often require their transactions to be on stable storage
+devices when returning from a system call.
+NFS and other applications can also use
+.Xr fsync 3C
+to ensure data stability.
+By default, the intent log is allocated from blocks within the main pool.
+However, it might be possible to get better performance using separate intent
+log devices such as NVRAM or a dedicated disk.
+For example:
+.Bd -literal
+# zpool create pool c0d0 c1d0 log c2d0
+.Ed
+.Pp
+Multiple log devices can also be specified, and they can be mirrored.
+See the
+.Sx EXAMPLES
+section for an example of mirroring multiple log devices.
+.Pp
+Log devices can be added, replaced, attached, detached, and imported and
+exported as part of the larger pool.
+Mirrored devices can be removed by specifying the top-level mirror vdev.
+.Ss Cache Devices
+Devices can be added to a storage pool as
+.Qq cache devices .
+These devices provide an additional layer of caching between main memory and
+disk.
+For read-heavy workloads, where the working set size is much larger than what
+can be cached in main memory, using cache devices allow much more of this
+working set to be served from low latency media.
+Using cache devices provides the greatest performance improvement for random
+read-workloads of mostly static content.
+.Pp
+To create a pool with cache devices, specify a
+.Sy cache
+vdev with any number of devices.
+For example:
+.Bd -literal
+# zpool create pool c0d0 c1d0 cache c2d0 c3d0
+.Ed
+.Pp
+Cache devices cannot be mirrored or part of a raidz configuration.
+If a read error is encountered on a cache device, that read I/O is reissued to
+the original storage pool device, which might be part of a mirrored or raidz
+configuration.
+.Pp
+The content of the cache devices is considered volatile, as is the case with
+other system caches.
+.Ss Pool checkpoint
+Before starting critical procedures that include destructive actions
+.Pq e.g. zfs Cm destroy ,
+an administrator can checkpoint the pool's state and in the case of a
+mistake or failure, rewind the entire pool back to the checkpoint.
+The checkpoint is automatically discarded upon rewinding.
+Otherwise, the checkpoint can be discarded when the procedure has completed
+successfully.
+.Pp
+A pool checkpoint can be thought of as a pool-wide snapshot and should be used
+with care as it contains every part of the pool's state, from properties to vdev
+configuration.
+Thus, while a pool has a checkpoint certain operations are not allowed.
+Specifically, vdev removal/attach/detach, mirror splitting, and
+changing the pool's guid.
+Adding a new vdev is supported but in the case of a rewind it will have to be
+added again.
+Finally, users of this feature should keep in mind that scrubs in a pool that
+has a checkpoint do not repair checkpointed data.
+.Pp
+To create a checkpoint for a pool:
+.Bd -literal
+# zpool checkpoint pool
+.Ed
+.Pp
+To later rewind to its checkpointed state (which also discards the checkpoint),
+you need to first export it and then rewind it during import:
+.Bd -literal
+# zpool export pool
+# zpool import --rewind-to-checkpoint pool
+.Ed
+.Pp
+To discard the checkpoint from a pool without rewinding:
+.Bd -literal
+# zpool checkpoint -d pool
+.Ed
+.Pp
+Dataset reservations (controlled by the
+.Nm reservation
+or
+.Nm refreservation
+zfs properties) may be unenforceable while a checkpoint exists, because the
+checkpoint is allowed to consume the dataset's reservation.
+Finally, data that is part of the checkpoint but has been freed in the
+current state of the pool won't be scanned during a scrub.
+.Ss Special Allocation Class
+The allocations in the special class are dedicated to specific block types.
+By default this includes all metadata, the indirect blocks of user data, and
+any dedup data.
+The class can also be provisioned to accept a limited percentage of small file
+data blocks.
+.Pp
+A pool must always have at least one general (non-specified) vdev before
+other devices can be assigned to the special class.
+If the special class becomes full, then allocations intended for it will spill
+back into the normal class.
+.Pp
+Dedup data can be excluded from the special class by setting the
+.Sy zfs_ddt_data_is_special
+zfs kernel variable to false (0).
+.Pp
+Inclusion of small file blocks in the special class is opt-in.
+Each dataset can control the size of small file blocks allowed in the special
+class by setting the
+.Sy special_small_blocks
+dataset property.
+It defaults to zero so you must opt-in by setting it to a non-zero value.
+See
+.Xr zfs 8
+for more info on setting this property.
+.Ss Properties
+Each pool has several properties associated with it.
+Some properties are read-only statistics while others are configurable and
+change the behavior of the pool.
+.Pp
+The following are read-only properties:
+.Bl -tag -width Ds
+.It Cm allocated
+Amount of storage space used within the pool.
+.It Sy bootsize
+The size of the system boot partition.
+This property can only be set at pool creation time and is read-only once pool
+is created.
+Setting this property implies using the
+.Fl B
+option.
+.It Sy capacity
+Percentage of pool space used.
+This property can also be referred to by its shortened column name,
+.Sy cap .
+.It Sy expandsize
+Amount of uninitialized space within the pool or device that can be used to
+increase the total capacity of the pool.
+Uninitialized space consists of any space on an EFI labeled vdev which has not
+been brought online
+.Po e.g, using
+.Nm zpool Cm online Fl e
+.Pc .
+This space occurs when a LUN is dynamically expanded.
+.It Sy fragmentation
+The amount of fragmentation in the pool.
+.It Sy free
+The amount of free space available in the pool.
+.It Sy freeing
+After a file system or snapshot is destroyed, the space it was using is
+returned to the pool asynchronously.
+.Sy freeing
+is the amount of space remaining to be reclaimed.
+Over time
+.Sy freeing
+will decrease while
+.Sy free
+increases.
+.It Sy health
+The current health of the pool.
+Health can be one of
+.Sy ONLINE , DEGRADED , FAULTED , OFFLINE, REMOVED , UNAVAIL .
+.It Sy guid
+A unique identifier for the pool.
+.It Sy size
+Total size of the storage pool.
+.It Sy unsupported@ Ns Em feature_guid
+Information about unsupported features that are enabled on the pool.
+See
+.Xr zpool-features 7
+for details.
+.El
+.Pp
+The space usage properties report actual physical space available to the
+storage pool.
+The physical space can be different from the total amount of space that any
+contained datasets can actually use.
+The amount of space used in a raidz configuration depends on the characteristics
+of the data being written.
+In addition, ZFS reserves some space for internal accounting that the
+.Xr zfs 8
+command takes into account, but the
+.Nm
+command does not.
+For non-full pools of a reasonable size, these effects should be invisible.
+For small pools, or pools that are close to being completely full, these
+discrepancies may become more noticeable.
+.Pp
+The following property can be set at creation time and import time:
+.Bl -tag -width Ds
+.It Sy altroot
+Alternate root directory.
+If set, this directory is prepended to any mount points within the pool.
+This can be used when examining an unknown pool where the mount points cannot be
+trusted, or in an alternate boot environment, where the typical paths are not
+valid.
+.Sy altroot
+is not a persistent property.
+It is valid only while the system is up.
+Setting
+.Sy altroot
+defaults to using
+.Sy cachefile Ns = Ns Sy none ,
+though this may be overridden using an explicit setting.
+.El
+.Pp
+The following property can be set only at import time:
+.Bl -tag -width Ds
+.It Sy readonly Ns = Ns Sy on Ns | Ns Sy off
+If set to
+.Sy on ,
+the pool will be imported in read-only mode.
+This property can also be referred to by its shortened column name,
+.Sy rdonly .
+.El
+.Pp
+The following properties can be set at creation time and import time, and later
+changed with the
+.Nm zpool Cm set
+command:
+.Bl -tag -width Ds
+.It Sy ashift Ns = Ns Sy ashift
+Pool sector size exponent, to the power of
+.Sy 2
+(internally referred to as
+.Sy ashift
+). Values from 9 to 16, inclusive, are valid; also, the
+value 0 (the default) means to auto-detect using the kernel's block
+layer and a ZFS internal exception list.
+I/O operations will be aligned to the specified size boundaries.
+Additionally, the minimum (disk) write size will be set to the specified size,
+so this represents a space vs performance trade-off.
+For optimal performance, the pool sector size should be greater than or equal to
+the sector size of the underlying disks.
+The typical case for setting this property is when performance is important and
+the underlying disks use 4KiB sectors but report 512B sectors to the OS (for
+compatibility reasons); in that case, set
+.Sy ashift=12
+(which is 1<<12 = 4096). When set, this property is
+used as the default hint value in subsequent vdev operations (add,
+attach and replace).
+Changing this value will not modify any existing
+vdev, not even on disk replacement; however it can be used, for
+instance, to replace a dying 512B sectors disk with a newer 4KiB
+sectors device: this will probably result in bad performance but at the
+same time could prevent loss of data.
+.It Sy autoexpand Ns = Ns Sy on Ns | Ns Sy off
+Controls automatic pool expansion when the underlying LUN is grown.
+If set to
+.Sy on ,
+the pool will be resized according to the size of the expanded device.
+If the device is part of a mirror or raidz then all devices within that
+mirror/raidz group must be expanded before the new space is made available to
+the pool.
+The default behavior is
+.Sy off .
+This property can also be referred to by its shortened column name,
+.Sy expand .
+.It Sy autoreplace Ns = Ns Sy on Ns | Ns Sy off
+Controls automatic device replacement.
+If set to
+.Sy off ,
+device replacement must be initiated by the administrator by using the
+.Nm zpool Cm replace
+command.
+If set to
+.Sy on ,
+any new device, found in the same physical location as a device that previously
+belonged to the pool, is automatically formatted and replaced.
+The default behavior is
+.Sy off .
+This property can also be referred to by its shortened column name,
+.Sy replace .
+.It Sy bootfs Ns = Ns Ar pool Ns / Ns Ar dataset
+Identifies the default bootable dataset for the root pool.
+This property is expected to be set mainly by the installation and upgrade
+programs.
+.It Sy cachefile Ns = Ns Ar path Ns | Ns Sy none
+Controls the location of where the pool configuration is cached.
+Discovering all pools on system startup requires a cached copy of the
+configuration data that is stored on the root file system.
+All pools in this cache are automatically imported when the system boots.
+Some environments, such as install and clustering, need to cache this
+information in a different location so that pools are not automatically
+imported.
+Setting this property caches the pool configuration in a different location that
+can later be imported with
+.Nm zpool Cm import Fl c .
+Setting it to the special value
+.Sy none
+creates a temporary pool that is never cached, and the special value
+.Qq
+.Pq empty string
+uses the default location.
+.Pp
+Multiple pools can share the same cache file.
+Because the kernel destroys and recreates this file when pools are added and
+removed, care should be taken when attempting to access this file.
+When the last pool using a
+.Sy cachefile
+is exported or destroyed, the file is removed.
+.It Sy comment Ns = Ns Ar text
+A text string consisting of printable ASCII characters that will be stored
+such that it is available even if the pool becomes faulted.
+An administrator can provide additional information about a pool using this
+property.
+.It Sy dedupditto Ns = Ns Ar number
+Threshold for the number of block ditto copies.
+If the reference count for a deduplicated block increases above this number, a
+new ditto copy of this block is automatically stored.
+The default setting is
+.Sy 0
+which causes no ditto copies to be created for deduplicated blocks.
+The minimum legal nonzero setting is
+.Sy 100 .
+.It Sy delegation Ns = Ns Sy on Ns | Ns Sy off
+Controls whether a non-privileged user is granted access based on the dataset
+permissions defined on the dataset.
+See
+.Xr zfs 8
+for more information on ZFS delegated administration.
+.It Sy failmode Ns = Ns Sy wait Ns | Ns Sy continue Ns | Ns Sy panic
+Controls the system behavior in the event of catastrophic pool failure.
+This condition is typically a result of a loss of connectivity to the underlying
+storage device(s) or a failure of all devices within the pool.
+The behavior of such an event is determined as follows:
+.Bl -tag -width "continue"
+.It Sy wait
+Blocks all I/O access until the device connectivity is recovered and the errors
+are cleared.
+This is the default behavior.
+.It Sy continue
+Returns
+.Er EIO
+to any new write I/O requests but allows reads to any of the remaining healthy
+devices.
+Any write requests that have yet to be committed to disk would be blocked.
+.It Sy panic
+Prints out a message to the console and generates a system crash dump.
+.El
+.It Sy autotrim Ns = Ns Sy on Ns | Ns Sy off
+When set to
+.Sy on
+space which has been recently freed, and is no longer allocated by the pool,
+will be periodically trimmed.
+This allows block device vdevs which support BLKDISCARD, such as SSDs, or
+file vdevs on which the underlying file system supports hole-punching, to
+reclaim unused blocks.
+The default setting for this property is
+.Sy off .
+.Pp
+Automatic TRIM does not immediately reclaim blocks after a free.
+Instead, it will optimistically delay allowing smaller ranges to be
+aggregated in to a few larger ones.
+These can then be issued more efficiently to the storage.
+.Pp
+Be aware that automatic trimming of recently freed data blocks can put
+significant stress on the underlying storage devices.
+This will vary depending of how well the specific device handles these commands.
+For lower end devices it is often possible to achieve most of the benefits
+of automatic trimming by running an on-demand (manual) TRIM periodically
+using the
+.Nm zpool Cm trim
+command.
+.It Sy feature@ Ns Ar feature_name Ns = Ns Sy enabled
+The value of this property is the current state of
+.Ar feature_name .
+The only valid value when setting this property is
+.Sy enabled
+which moves
+.Ar feature_name
+to the enabled state.
+See
+.Xr zpool-features 7
+for details on feature states.
+.It Sy listsnapshots Ns = Ns Sy on Ns | Ns Sy off
+Controls whether information about snapshots associated with this pool is
+output when
+.Nm zfs Cm list
+is run without the
+.Fl t
+option.
+The default value is
+.Sy off .
+This property can also be referred to by its shortened name,
+.Sy listsnaps .
+.It Sy multihost Ns = Ns Sy on Ns | Ns Sy off
+Controls whether a pool activity check should be performed during
+.Nm zpool Cm import .
+When a pool is determined to be active it cannot be imported, even with the
+.Fl f
+option.
+This property is intended to be used in failover configurations
+where multiple hosts have access to a pool on shared storage.
+.sp
+Multihost provides protection on import only.
+It does not protect against an
+individual device being used in multiple pools, regardless of the type of vdev.
+See the discussion under
+.Sy zpool create.
+.sp
+When this property is on, periodic writes to storage occur to show the pool is
+in use.
+See
+.Sy zfs_multihost_interval
+in the
+.Xr zfs-module-parameters 7
+man page.
+In order to enable this property each host must set a unique hostid.
+The default value is
+.Sy off .
+.It Sy version Ns = Ns Ar version
+The current on-disk version of the pool.
+This can be increased, but never decreased.
+The preferred method of updating pools is with the
+.Nm zpool Cm upgrade
+command, though this property can be used when a specific version is needed for
+backwards compatibility.
+Once feature flags are enabled on a pool this property will no longer have a
+value.
+.El
+.Ss Subcommands
+All subcommands that modify state are logged persistently to the pool in their
+original form.
+.Pp
+The
+.Nm
+command provides subcommands to create and destroy storage pools, add capacity
+to storage pools, and provide information about the storage pools.
+The following subcommands are supported:
+.Bl -tag -width Ds
+.It Xo
+.Nm
+.Fl \&?
+.Xc
+Displays a help message.
+.It Xo
+.Nm
+.Cm add
+.Op Fl fgLnP
+.Oo Fl o Ar property Ns = Ns Ar value Oc
+.Ar pool vdev Ns ...
+.Xc
+Adds the specified virtual devices to the given pool.
+The
+.Ar vdev
+specification is described in the
+.Sx Virtual Devices
+section.
+The behavior of the
+.Fl f
+option, and the device checks performed are described in the
+.Nm zpool Cm create
+subcommand.
+.Bl -tag -width Ds
+.It Fl f
+Forces use of
+.Ar vdev Ns s ,
+even if they appear in use or specify a conflicting replication level.
+Not all devices can be overridden in this manner.
+.It Fl g
+Display
+.Ar vdev ,
+GUIDs instead of the normal device names.
+These GUIDs can be used in place of
+device names for the zpool detach/offline/remove/replace commands.
+.It Fl L
+Display real paths for
+.Ar vdev Ns s
+resolving all symbolic links.
+This can be used to look up the current block
+device name regardless of the /dev/disk/ path used to open it.
+.It Fl n
+Displays the configuration that would be used without actually adding the
+.Ar vdev Ns s .
+The actual pool creation can still fail due to insufficient privileges or
+device sharing.
+.It Fl P
+Display real paths for
+.Ar vdev Ns s
+instead of only the last component of the path.
+This can be used in conjunction with the
+.Fl L
+flag.
+.It Fl o Ar property Ns = Ns Ar value
+Sets the given pool properties.
+See the
+.Sx Properties
+section for a list of valid properties that can be set.
+The only property supported at the moment is
+.Sy ashift.
+.El
+.It Xo
+.Nm
+.Cm attach
+.Op Fl f
+.Oo Fl o Ar property Ns = Ns Ar value Oc
+.Ar pool device new_device
+.Xc
+Attaches
+.Ar new_device
+to the existing
+.Ar device .
+The existing device cannot be part of a raidz configuration.
+If
+.Ar device
+is not currently part of a mirrored configuration,
+.Ar device
+automatically transforms into a two-way mirror of
+.Ar device
+and
+.Ar new_device .
+If
+.Ar device
+is part of a two-way mirror, attaching
+.Ar new_device
+creates a three-way mirror, and so on.
+In either case,
+.Ar new_device
+begins to resilver immediately.
+.Bl -tag -width Ds
+.It Fl f
+Forces use of
+.Ar new_device ,
+even if its appears to be in use.
+Not all devices can be overridden in this manner.
+.It Fl o Ar property Ns = Ns Ar value
+Sets the given pool properties.
+See the
+.Sx Properties
+section for a list of valid properties that can be set.
+The only property supported at the moment is
+.Sy ashift.
+.El
+.It Xo
+.Nm
+.Cm checkpoint
+.Op Fl d, -discard
+.Ar pool
+.Xc
+Checkpoints the current state of
+.Ar pool
+, which can be later restored by
+.Nm zpool Cm import --rewind-to-checkpoint .
+Rewinding will also discard the checkpoint.
+The existence of a checkpoint in a pool prohibits the following
+.Nm zpool
+commands:
+.Cm remove ,
+.Cm attach ,
+.Cm detach ,
+.Cm split ,
+and
+.Cm reguid .
+In addition, it may break reservation boundaries if the pool lacks free
+space.
+The
+.Nm zpool Cm status
+command indicates the existence of a checkpoint or the progress of discarding a
+checkpoint from a pool.
+The
+.Nm zpool Cm list
+command reports how much space the checkpoint takes from the pool.
+.Bl -tag -width Ds
+.It Fl d, -discard
+Discards an existing checkpoint from
+.Ar pool
+without rewinding.
+.El
+.It Xo
+.Nm
+.Cm clear
+.Ar pool
+.Op Ar device
+.Xc
+Clears device errors in a pool.
+If no arguments are specified, all device errors within the pool are cleared.
+If one or more devices is specified, only those errors associated with the
+specified device or devices are cleared.
+If multihost is enabled, and the pool has been suspended, this will not
+resume I/O.
+While the pool was suspended, it may have been imported on
+another host, and resuming I/O could result in pool damage.
+.It Xo
+.Nm
+.Cm create
+.Op Fl dfn
+.Op Fl B
+.Op Fl m Ar mountpoint
+.Oo Fl o Ar property Ns = Ns Ar value Oc Ns ...
+.Oo Fl o Cm feature@ Ns Ar feature Ns = Ns Ar value Oc Ns ...
+.Oo Fl O Ar file-system-property Ns = Ns Ar value Oc Ns ...
+.Op Fl R Ar root
+.Op Fl t Ar tempname
+.Ar pool vdev Ns ...
+.Xc
+Creates a new storage pool containing the virtual devices specified on the
+command line.
+The pool name must begin with a letter, and can only contain
+alphanumeric characters as well as underscore
+.Pq Qq Sy _ ,
+dash
+.Pq Qq Sy - ,
+and period
+.Pq Qq Sy \&. .
+The pool names
+.Sy mirror ,
+.Sy raidz ,
+.Sy spare
+and
+.Sy log
+are reserved, as are names beginning with the pattern
+.Sy c[0-9] .
+The
+.Ar vdev
+specification is described in the
+.Sx Virtual Devices
+section.
+.Pp
+The command attempts to verify that each device specified is accessible and not
+currently in use by another subsystem.
+However this check is not robust enough
+to detect simultaneous attempts to use a new device in different pools, even if
+.Sy multihost
+is
+.Sy enabled.
+The
+administrator must ensure that simultaneous invocations of any combination of
+.Sy zpool replace ,
+.Sy zpool create ,
+.Sy zpool add ,
+or
+.Sy zpool labelclear ,
+do not refer to the same device.
+Using the same device in two pools will
+result in pool corruption.
+.sp
+There are some uses, such as being currently mounted, or specified as the
+dedicated dump device, that prevents a device from ever being used by ZFS.
+Other uses, such as having a preexisting UFS file system, can be overridden with
+the
+.Fl f
+option.
+.Pp
+The command also checks that the replication strategy for the pool is
+consistent.
+An attempt to combine redundant and non-redundant storage in a single pool, or
+to mix disks and files, results in an error unless
+.Fl f
+is specified.
+The use of differently sized devices within a single raidz or mirror group is
+also flagged as an error unless
+.Fl f
+is specified.
+.Pp
+Unless the
+.Fl R
+option is specified, the default mount point is
+.Pa / Ns Ar pool .
+The mount point must not exist or must be empty, or else the root dataset
+cannot be mounted.
+This can be overridden with the
+.Fl m
+option.
+.Pp
+By default all supported features are enabled on the new pool unless the
+.Fl d
+option is specified.
+.Bl -tag -width Ds
+.It Fl B
+Create whole disk pool with EFI System partition to support booting system
+with UEFI firmware.
+Default size is 256MB.
+To create boot partition with custom size, set the
+.Sy bootsize
+property with the
+.Fl o
+option.
+See the
+.Sx Properties
+section for details.
+.It Fl d
+Do not enable any features on the new pool.
+Individual features can be enabled by setting their corresponding properties to
+.Sy enabled
+with the
+.Fl o
+option.
+See
+.Xr zpool-features 7
+for details about feature properties.
+.It Fl f
+Forces use of
+.Ar vdev Ns s ,
+even if they appear in use or specify a conflicting replication level.
+Not all devices can be overridden in this manner.
+.It Fl m Ar mountpoint
+Sets the mount point for the root dataset.
+The default mount point is
+.Pa /pool
+or
+.Pa altroot/pool
+if
+.Ar altroot
+is specified.
+The mount point must be an absolute path,
+.Sy legacy ,
+or
+.Sy none .
+For more information on dataset mount points, see
+.Xr zfs 8 .
+.It Fl n
+Displays the configuration that would be used without actually creating the
+pool.
+The actual pool creation can still fail due to insufficient privileges or
+device sharing.
+.It Fl o Ar property Ns = Ns Ar value
+Sets the given pool properties.
+See the
+.Sx Properties
+section for a list of valid properties that can be set.
+.It Fl o Cm feature@ Ns Ar feature Ns = Ns Ar value
+Sets the given pool feature.
+See
+.Xr zpool-features 7
+for a list of valid features that can be set.
+.Pp
+.Ar value
+can either be
+.Sy disabled
+or
+.Sy enabled .
+.It Fl O Ar file-system-property Ns = Ns Ar value
+Sets the given file system properties in the root file system of the pool.
+See the
+.Sx Properties
+section of
+.Xr zfs 8
+for a list of valid properties that can be set.
+.It Fl R Ar root
+Equivalent to
+.Fl o Sy cachefile Ns = Ns Sy none Fl o Sy altroot Ns = Ns Ar root
+.It Fl t Ar tempname
+Sets the in-core pool name to
+.Pa tempname
+while the on-disk name will be the name specified as the pool name
+.Pa pool .
+This will set the default cachefile property to
+.Sy none.
+This is intended to handle name space collisions when creating pools
+for other systems, such as virtual machines or physical machines
+whose pools live on network block devices.
+.El
+.It Xo
+.Nm
+.Cm destroy
+.Op Fl f
+.Ar pool
+.Xc
+Destroys the given pool, freeing up any devices for other use.
+This command tries to unmount any active datasets before destroying the pool.
+.Bl -tag -width Ds
+.It Fl f
+Forces any active datasets contained within the pool to be unmounted.
+.El
+.It Xo
+.Nm
+.Cm detach
+.Ar pool device
+.Xc
+Detaches
+.Ar device
+from a mirror.
+The operation is refused if there are no other valid replicas of the data.
+.It Xo
+.Nm
+.Cm export
+.Op Fl f
+.Ar pool Ns ...
+.Xc
+Exports the given pools from the system.
+All devices are marked as exported, but are still considered in use by other
+subsystems.
+The devices can be moved between systems
+.Pq even those of different endianness
+and imported as long as a sufficient number of devices are present.
+.Pp
+Before exporting the pool, all datasets within the pool are unmounted.
+A pool can not be exported if it has a shared spare that is currently being
+used.
+.Pp
+For pools to be portable, you must give the
+.Nm
+command whole disks, not just slices, so that ZFS can label the disks with
+portable EFI labels.
+Otherwise, disk drivers on platforms of different endianness will not recognize
+the disks.
+.Bl -tag -width Ds
+.It Fl f
+Forcefully unmount all datasets, using the
+.Nm unmount Fl f
+command.
+.Pp
+This command will forcefully export the pool even if it has a shared spare that
+is currently being used.
+This may lead to potential data corruption.
+.El
+.It Xo
+.Nm
+.Cm get
+.Op Fl Hp
+.Op Fl o Ar field Ns Oo , Ns Ar field Oc Ns ...
+.Sy all Ns | Ns Ar property Ns Oo , Ns Ar property Oc Ns ...
+.Ar pool Ns ...
+.Xc
+Retrieves the given list of properties
+.Po
+or all properties if
+.Sy all
+is used
+.Pc
+for the specified storage pool(s).
+These properties are displayed with the following fields:
+.Bd -literal
+ name Name of storage pool
+ property Property name
+ value Property value
+ source Property source, either 'default' or 'local'.
+.Ed
+.Pp
+See the
+.Sx Properties
+section for more information on the available pool properties.
+.Bl -tag -width Ds
+.It Fl H
+Scripted mode.
+Do not display headers, and separate fields by a single tab instead of arbitrary
+space.
+.It Fl o Ar field
+A comma-separated list of columns to display.
+.Sy name Ns \&, Ns Sy property Ns \&, Ns Sy value Ns \&, Ns Sy source
+is the default value.
+.It Fl p
+Display numbers in parsable (exact) values.
+.El
+.It Xo
+.Nm
+.Cm history
+.Op Fl il
+.Oo Ar pool Oc Ns ...
+.Xc
+Displays the command history of the specified pool(s) or all pools if no pool is
+specified.
+.Bl -tag -width Ds
+.It Fl i
+Displays internally logged ZFS events in addition to user initiated events.
+.It Fl l
+Displays log records in long format, which in addition to standard format
+includes, the user name, the hostname, and the zone in which the operation was
+performed.
+.El
+.It Xo
+.Nm
+.Cm import
+.Op Fl D
+.Op Fl d Ar dir
+.Xc
+Lists pools available to import.
+If the
+.Fl d
+option is not specified, this command searches for devices in
+.Pa /dev/dsk .
+The
+.Fl d
+option can be specified multiple times, and all directories are searched.
+If the device appears to be part of an exported pool, this command displays a
+summary of the pool with the name of the pool, a numeric identifier, as well as
+the vdev layout and current health of the device for each device or file.
+Destroyed pools, pools that were previously destroyed with the
+.Nm zpool Cm destroy
+command, are not listed unless the
+.Fl D
+option is specified.
+.Pp
+The numeric identifier is unique, and can be used instead of the pool name when
+multiple exported pools of the same name are available.
+.Bl -tag -width Ds
+.It Fl c Ar cachefile
+Reads configuration from the given
+.Ar cachefile
+that was created with the
+.Sy cachefile
+pool property.
+This
+.Ar cachefile
+is used instead of searching for devices.
+.It Fl d Ar dir
+Searches for devices or files in
+.Ar dir .
+The
+.Fl d
+option can be specified multiple times.
+.It Fl D
+Lists destroyed pools only.
+.El
+.It Xo
+.Nm
+.Cm import
+.Fl a
+.Op Fl DflmN
+.Op Fl F Op Fl n
+.Op Fl c Ar cachefile Ns | Ns Fl d Ar dir
+.Op Fl o Ar mntopts
+.Oo Fl o Ar property Ns = Ns Ar value Oc Ns ...
+.Op Fl R Ar root
+.Xc
+Imports all pools found in the search directories.
+Identical to the previous command, except that all pools with a sufficient
+number of devices available are imported.
+Destroyed pools, pools that were previously destroyed with the
+.Nm zpool Cm destroy
+command, will not be imported unless the
+.Fl D
+option is specified.
+.Bl -tag -width Ds
+.It Fl a
+Searches for and imports all pools found.
+.It Fl c Ar cachefile
+Reads configuration from the given
+.Ar cachefile
+that was created with the
+.Sy cachefile
+pool property.
+This
+.Ar cachefile
+is used instead of searching for devices.
+.It Fl d Ar dir
+Searches for devices or files in
+.Ar dir .
+The
+.Fl d
+option can be specified multiple times.
+This option is incompatible with the
+.Fl c
+option.
+.It Fl D
+Imports destroyed pools only.
+The
+.Fl f
+option is also required.
+.It Fl f
+Forces import, even if the pool appears to be potentially active.
+.It Fl F
+Recovery mode for a non-importable pool.
+Attempt to return the pool to an importable state by discarding the last few
+transactions.
+Not all damaged pools can be recovered by using this option.
+If successful, the data from the discarded transactions is irretrievably lost.
+This option is ignored if the pool is importable or already imported.
+.It Fl l
+Indicates that this command will request encryption keys for all encrypted
+datasets it attempts to mount as it is bringing the pool online.
+Note that if any datasets have a
+.Sy keylocation
+of
+.Sy prompt
+this command will block waiting for the keys to be entered.
+Without this flag encrypted datasets will be left unavailable until the keys are
+loaded.
+.It Fl m
+Allows a pool to import when there is a missing log device.
+Recent transactions can be lost because the log device will be discarded.
+.It Fl n
+Used with the
+.Fl F
+recovery option.
+Determines whether a non-importable pool can be made importable again, but does
+not actually perform the pool recovery.
+For more details about pool recovery mode, see the
+.Fl F
+option, above.
+.It Fl N
+Import the pool without mounting any file systems.
+.It Fl o Ar mntopts
+Comma-separated list of mount options to use when mounting datasets within the
+pool.
+See
+.Xr zfs 8
+for a description of dataset properties and mount options.
+.It Fl o Ar property Ns = Ns Ar value
+Sets the specified property on the imported pool.
+See the
+.Sx Properties
+section for more information on the available pool properties.
+.It Fl R Ar root
+Sets the
+.Sy cachefile
+property to
+.Sy none
+and the
+.Sy altroot
+property to
+.Ar root .
+.El
+.It Xo
+.Nm
+.Cm import
+.Op Fl Dfmt
+.Op Fl F Op Fl n
+.Op Fl -rewind-to-checkpoint
+.Op Fl c Ar cachefile Ns | Ns Fl d Ar dir
+.Op Fl o Ar mntopts
+.Oo Fl o Ar property Ns = Ns Ar value Oc Ns ...
+.Op Fl R Ar root
+.Ar pool Ns | Ns Ar id
+.Op Ar newpool
+.Xc
+Imports a specific pool.
+A pool can be identified by its name or the numeric identifier.
+If
+.Ar newpool
+is specified, the pool is imported using the name
+.Ar newpool .
+Otherwise, it is imported with the same name as its exported name.
+.Pp
+If a device is removed from a system without running
+.Nm zpool Cm export
+first, the device appears as potentially active.
+It cannot be determined if this was a failed export, or whether the device is
+really in use from another host.
+To import a pool in this state, the
+.Fl f
+option is required.
+.Bl -tag -width Ds
+.It Fl c Ar cachefile
+Reads configuration from the given
+.Ar cachefile
+that was created with the
+.Sy cachefile
+pool property.
+This
+.Ar cachefile
+is used instead of searching for devices.
+.It Fl d Ar dir
+Searches for devices or files in
+.Ar dir .
+The
+.Fl d
+option can be specified multiple times.
+This option is incompatible with the
+.Fl c
+option.
+.It Fl D
+Imports destroyed pool.
+The
+.Fl f
+option is also required.
+.It Fl f
+Forces import, even if the pool appears to be potentially active.
+.It Fl F
+Recovery mode for a non-importable pool.
+Attempt to return the pool to an importable state by discarding the last few
+transactions.
+Not all damaged pools can be recovered by using this option.
+If successful, the data from the discarded transactions is irretrievably lost.
+This option is ignored if the pool is importable or already imported.
+.It Fl l
+Indicates that the zpool command will request encryption keys for all
+encrypted datasets it attempts to mount as it is bringing the pool
+online.
+This is equivalent to running
+.Nm Cm mount
+on each encrypted dataset immediately after the pool is imported.
+If any datasets have a
+.Sy prompt
+keysource this command will block waiting for the key to be entered.
+Otherwise, encrypted datasets will be left unavailable until the keys are
+loaded.
+.It Fl m
+Allows a pool to import when there is a missing log device.
+Recent transactions can be lost because the log device will be discarded.
+.It Fl n
+Used with the
+.Fl F
+recovery option.
+Determines whether a non-importable pool can be made importable again, but does
+not actually perform the pool recovery.
+For more details about pool recovery mode, see the
+.Fl F
+option, above.
+.It Fl o Ar mntopts
+Comma-separated list of mount options to use when mounting datasets within the
+pool.
+See
+.Xr zfs 8
+for a description of dataset properties and mount options.
+.It Fl o Ar property Ns = Ns Ar value
+Sets the specified property on the imported pool.
+See the
+.Sx Properties
+section for more information on the available pool properties.
+.It Fl R Ar root
+Sets the
+.Sy cachefile
+property to
+.Sy none
+and the
+.Sy altroot
+property to
+.Ar root .
+.It Fl t
+Used with
+.Ar newpool .
+Specifies that
+.Ar newpool
+is temporary.
+Temporary pool names last until export.
+Ensures that the original pool name will be used in all label updates and
+therefore is retained upon export.
+Will also set
+.Sy cachefile
+property to
+.Sy none
+when not explicitly specified.
+.It Fl -rewind-to-checkpoint
+Rewinds pool to the checkpointed state.
+Once the pool is imported with this flag there is no way to undo the rewind.
+All changes and data that were written after the checkpoint are lost!
+The only exception is when the
+.Sy readonly
+mounting option is enabled.
+In this case, the checkpointed state of the pool is opened and an
+administrator can see how the pool would look like if they were
+to fully rewind.
+.El
+.It Xo
+.Nm
+.Cm initialize
+.Op Fl c | Fl s
+.Ar pool
+.Op Ar device Ns ...
+.Xc
+Begins initializing by writing to all unallocated regions on the specified
+devices, or all eligible devices in the pool if no individual devices are
+specified.
+Only leaf data or log devices may be initialized.
+.Bl -tag -width Ds
+.It Fl c, -cancel
+Cancel initializing on the specified devices, or all eligible devices if none
+are specified.
+If one or more target devices are invalid or are not currently being
+initialized, the command will fail and no cancellation will occur on any device.
+.It Fl s -suspend
+Suspend initializing on the specified devices, or all eligible devices if none
+are specified.
+If one or more target devices are invalid or are not currently being
+initialized, the command will fail and no suspension will occur on any device.
+Initializing can then be resumed by running
+.Nm zpool Cm initialize
+with no flags on the relevant target devices.
+.El
+.It Xo
+.Nm
+.Cm iostat
+.Op Oo Fl lq Oc | Ns Fl rw
+.Op Fl T Sy u Ns | Ns Sy d
+.Op Fl ghHLnpPvy
+.Oo Oo Ar pool Ns ... Oc Ns | Ns Oo Ar pool vdev Ns ... Oc Ns | Ns Oo Ar vdev Ns ... Oc Oc
+.Op Ar interval Op Ar count
+.Xc
+Displays I/O statistics for the given pools/vdevs.
+Physical I/Os may be observed via
+.Xr iostat 1 .
+If writes are located nearby, they may be merged into a single larger operation.
+Additional I/O may be generated depending on the level of vdev redundancy.
+To filter output, you may pass in a list of pools, a pool and list of vdevs
+in that pool, or a list of any vdevs from any pool.
+If no items are specified, statistics for every pool in the system are shown.
+When given an
+.Ar interval ,
+the statistics are printed every
+.Ar interval
+seconds until ^C is pressed.
+If
+.Fl n
+flag is specified the headers are displayed only once, otherwise they are
+displayed periodically.
+If
+.Ar count
+is specified, the command exits after
+.Ar count
+reports are printed.
+The first report printed is always the statistics since boot regardless of
+whether
+.Ar interval
+and
+.Ar count
+are passed.
+Also note that the units of
+.Sy K ,
+.Sy M ,
+.Sy G ...
+that are printed in the report are in base 1024.
+To get the raw values, use the
+.Fl p
+flag.
+.Bl -tag -width Ds
+.It Fl T Sy u Ns | Ns Sy d
+Display a time stamp.
+Specify
+.Sy u
+for a printed representation of the internal representation of time.
+See
+.Xr time 2 .
+Specify
+.Sy d
+for standard date format.
+See
+.Xr date 1 .
+.It Fl i
+Display vdev initialization status.
+.It Fl g
+Display vdev GUIDs instead of the normal device names.
+These GUIDs can be used in place of device names for the zpool
+detach/offline/remove/replace commands.
+.It Fl H
+Scripted mode.
+Do not display headers, and separate fields by a single tab instead of
+arbitrary space.
+.It Fl L
+Display real paths for vdevs resolving all symbolic links.
+This can be used to look up the current block device name regardless of the
+.Pa /dev/dsk/
+path used to open it.
+.It Fl n
+Print headers only once when passed.
+.It Fl p
+Display numbers in parsable (exact) values.
+Time values are in nanoseconds.
+.It Fl P
+Display full paths for vdevs instead of only the last component of
+the path.
+This can be used in conjunction with the
+.Fl L
+flag.
+.It Fl r
+Print request size histograms for the leaf vdev's IO
+This includes histograms of individual IOs (ind) and aggregate IOs (agg).
+These stats can be useful for observing how well IO aggregation is working.
+Note that TRIM IOs may exceed 16M, but will be counted as 16M.
+.It Fl v
+Verbose statistics Reports usage statistics for individual vdevs within the
+pool, in addition to the pool-wide statistics.
+.It Fl y
+Omit statistics since boot.
+Normally the first line of output reports the statistics since boot.
+This option suppresses that first line of output.
+.Ar interval
+.It Fl w
+Display latency histograms:
+.Pp
+.Ar total_wait :
+Total IO time (queuing + disk IO time).
+.Ar disk_wait :
+Disk IO time (time reading/writing the disk).
+.Ar syncq_wait :
+Amount of time IO spent in synchronous priority queues.
+Does not include disk time.
+.Ar asyncq_wait :
+Amount of time IO spent in asynchronous priority queues.
+Does not include disk time.
+.Ar scrub :
+Amount of time IO spent in scrub queue.
+Does not include disk time.
+.It Fl l
+Include average latency statistics:
+.Pp
+.Ar total_wait :
+Average total IO time (queuing + disk IO time).
+.Ar disk_wait :
+Average disk IO time (time reading/writing the disk).
+.Ar syncq_wait :
+Average amount of time IO spent in synchronous priority queues.
+Does not include disk time.
+.Ar asyncq_wait :
+Average amount of time IO spent in asynchronous priority queues.
+Does not include disk time.
+.Ar scrub :
+Average queuing time in scrub queue.
+Does not include disk time.
+.Ar trim :
+Average queuing time in trim queue.
+Does not include disk time.
+.It Fl q
+Include active queue statistics.
+Each priority queue has both pending (
+.Ar pend )
+and active (
+.Ar activ )
+IOs.
+Pending IOs are waiting to be issued to the disk, and active IOs have been
+issued to disk and are waiting for completion.
+These stats are broken out by priority queue:
+.Pp
+.Ar syncq_read/write :
+Current number of entries in synchronous priority
+queues.
+.Ar asyncq_read/write :
+Current number of entries in asynchronous priority queues.
+.Ar scrubq_read :
+Current number of entries in scrub queue.
+.Ar trimq_write :
+Current number of entries in trim queue.
+.Pp
+All queue statistics are instantaneous measurements of the number of
+entries in the queues.
+If you specify an interval, the measurements will be sampled from the end of
+the interval.
+.El
+.It Xo
+.Nm
+.Cm labelclear
+.Op Fl f
+.Ar device
+.Xc
+Removes ZFS label information from the specified
+.Ar device .
+The
+.Ar device
+must not be part of an active pool configuration.
+.Bl -tag -width Ds
+.It Fl f
+Treat exported or foreign devices as inactive.
+.El
+.It Xo
+.Nm
+.Cm list
+.Op Fl HgLpPv
+.Op Fl o Ar property Ns Oo , Ns Ar property Oc Ns ...
+.Op Fl T Sy u Ns | Ns Sy d
+.Oo Ar pool Oc Ns ...
+.Op Ar interval Op Ar count
+.Xc
+Lists the given pools along with a health status and space usage.
+If no
+.Ar pool Ns s
+are specified, all pools in the system are listed.
+When given an
+.Ar interval ,
+the information is printed every
+.Ar interval
+seconds until ^C is pressed.
+If
+.Ar count
+is specified, the command exits after
+.Ar count
+reports are printed.
+.Bl -tag -width Ds
+.It Fl g
+Display vdev GUIDs instead of the normal device names.
+These GUIDs can be used in place of device names for the zpool
+detach/offline/remove/replace commands.
+.It Fl H
+Scripted mode.
+Do not display headers, and separate fields by a single tab instead of arbitrary
+space.
+.It Fl o Ar property
+Comma-separated list of properties to display.
+See the
+.Sx Properties
+section for a list of valid properties.
+The default list is
+.Cm name , size , allocated , free , checkpoint, expandsize , fragmentation , capacity ,
+.Cm dedupratio , health , altroot .
+.It Fl L
+Display real paths for vdevs resolving all symbolic links.
+This can be used to look up the current block device name regardless of the
+/dev/disk/ path used to open it.
+.It Fl p
+Display numbers in parsable
+.Pq exact
+values.
+.It Fl P
+Display full paths for vdevs instead of only the last component of
+the path.
+This can be used in conjunction with the
+.Fl L
+flag.
+.It Fl T Sy u Ns | Ns Sy d
+Display a time stamp.
+Specify
+.Sy u
+for a printed representation of the internal representation of time.
+See
+.Xr time 2 .
+Specify
+.Sy d
+for standard date format.
+See
+.Xr date 1 .
+.It Fl v
+Verbose statistics.
+Reports usage statistics for individual vdevs within the pool, in addition to
+the pool-wise statistics.
+.El
+.It Xo
+.Nm
+.Cm offline
+.Op Fl t
+.Ar pool Ar device Ns ...
+.Xc
+Takes the specified physical device offline.
+While the
+.Ar device
+is offline, no attempt is made to read or write to the device.
+This command is not applicable to spares.
+.Bl -tag -width Ds
+.It Fl t
+Temporary.
+Upon reboot, the specified physical device reverts to its previous state.
+.El
+.It Xo
+.Nm
+.Cm online
+.Op Fl e
+.Ar pool Ar device Ns ...
+.Xc
+Brings the specified physical device online.
+This command is not applicable to spares.
+.Bl -tag -width Ds
+.It Fl e
+Expand the device to use all available space.
+If the device is part of a mirror or raidz then all devices must be expanded
+before the new space will become available to the pool.
+.El
+.It Xo
+.Nm
+.Cm reguid
+.Ar pool
+.Xc
+Generates a new unique identifier for the pool.
+You must ensure that all devices in this pool are online and healthy before
+performing this action.
+.It Xo
+.Nm
+.Cm reopen
+.Ar pool
+.Xc
+Reopen all the vdevs associated with the pool.
+.It Xo
+.Nm
+.Cm remove
+.Op Fl np
+.Ar pool Ar device Ns ...
+.Xc
+Removes the specified device from the pool.
+This command currently only supports removing hot spares, cache, log
+devices and mirrored top-level vdevs (mirror of leaf devices); but not raidz.
+.sp
+Removing a top-level vdev reduces the total amount of space in the storage pool.
+The specified device will be evacuated by copying all allocated space from it to
+the other devices in the pool.
+In this case, the
+.Nm zpool Cm remove
+command initiates the removal and returns, while the evacuation continues in
+the background.
+The removal progress can be monitored with
+.Nm zpool Cm status.
+This feature must be enabled to be used, see
+.Xr zpool-features 7
+.Pp
+A mirrored top-level device (log or data) can be removed by specifying the top-level mirror for the
+same.
+Non-log devices or data devices that are part of a mirrored configuration can be removed using
+the
+.Nm zpool Cm detach
+command.
+.Bl -tag -width Ds
+.It Fl n
+Do not actually perform the removal ("no-op").
+Instead, print the estimated amount of memory that will be used by the
+mapping table after the removal completes.
+This is nonzero only for top-level vdevs.
+.El
+.Bl -tag -width Ds
+.It Fl p
+Used in conjunction with the
+.Fl n
+flag, displays numbers as parsable (exact) values.
+.El
+.It Xo
+.Nm
+.Cm remove
+.Fl s
+.Ar pool
+.Xc
+Stops and cancels an in-progress removal of a top-level vdev.
+.It Xo
+.Nm
+.Cm replace
+.Op Fl f
+.Ar pool Ar device Op Ar new_device
+.Xc
+Replaces
+.Ar old_device
+with
+.Ar new_device .
+This is equivalent to attaching
+.Ar new_device ,
+waiting for it to resilver, and then detaching
+.Ar old_device .
+.Pp
+The size of
+.Ar new_device
+must be greater than or equal to the minimum size of all the devices in a mirror
+or raidz configuration.
+.Pp
+.Ar new_device
+is required if the pool is not redundant.
+If
+.Ar new_device
+is not specified, it defaults to
+.Ar old_device .
+This form of replacement is useful after an existing disk has failed and has
+been physically replaced.
+In this case, the new disk may have the same
+.Pa /dev/dsk
+path as the old device, even though it is actually a different disk.
+ZFS recognizes this.
+.Bl -tag -width Ds
+.It Fl f
+Forces use of
+.Ar new_device ,
+even if its appears to be in use.
+Not all devices can be overridden in this manner.
+.El
+.It Xo
+.Nm
+.Cm resilver
+.Ar pool Ns ...
+.Xc
+Starts a resilver.
+If an existing resilver is already running it will be restarted from the
+beginning.
+Any drives that were scheduled for a deferred resilver will be added to the
+new one.
+This requires the
+.Sy resilver_defer
+feature.
+.It Xo
+.Nm
+.Cm scrub
+.Op Fl s | Fl p
+.Ar pool Ns ...
+.Xc
+Begins a scrub or resumes a paused scrub.
+The scrub examines all data in the specified pools to verify that it checksums
+correctly.
+For replicated
+.Pq mirror or raidz
+devices, ZFS automatically repairs any damage discovered during the scrub.
+The
+.Nm zpool Cm status
+command reports the progress of the scrub and summarizes the results of the
+scrub upon completion.
+.Pp
+Scrubbing and resilvering are very similar operations.
+The difference is that resilvering only examines data that ZFS knows to be out
+of date
+.Po
+for example, when attaching a new device to a mirror or replacing an existing
+device
+.Pc ,
+whereas scrubbing examines all data to discover silent errors due to hardware
+faults or disk failure.
+.Pp
+Because scrubbing and resilvering are I/O-intensive operations, ZFS only allows
+one at a time.
+If a scrub is paused, the
+.Nm zpool Cm scrub
+resumes it.
+If a resilver is in progress, ZFS does not allow a scrub to be started until the
+resilver completes.
+.Pp
+Note that, due to changes in pool data on a live system, it is possible for
+scrubs to progress slightly beyond 100% completion.
+During this period, no completion time estimate will be provided.
+.Bl -tag -width Ds
+.It Fl s
+Stop scrubbing.
+.El
+.Bl -tag -width Ds
+.It Fl p
+Pause scrubbing.
+Scrub pause state and progress are periodically synced to disk.
+If the system is restarted or pool is exported during a paused scrub,
+even after import, scrub will remain paused until it is resumed.
+Once resumed the scrub will pick up from the place where it was last
+checkpointed to disk.
+To resume a paused scrub issue
+.Nm zpool Cm scrub
+again.
+.El
+.It Xo
+.Nm
+.Cm set
+.Ar property Ns = Ns Ar value
+.Ar pool
+.Xc
+Sets the given property on the specified pool.
+See the
+.Sx Properties
+section for more information on what properties can be set and acceptable
+values.
+.It Xo
+.Nm
+.Cm split
+.Op Fl gLlnP
+.Oo Fl o Ar property Ns = Ns Ar value Oc Ns ...
+.Op Fl R Ar root
+.Ar pool newpool
+.Xc
+Splits devices off
+.Ar pool
+creating
+.Ar newpool .
+All vdevs in
+.Ar pool
+must be mirrors.
+At the time of the split,
+.Ar newpool
+will be a replica of
+.Ar pool .
+.Bl -tag -width Ds
+.It Fl g
+Display vdev GUIDs instead of the normal device names.
+These GUIDs can be used in place of device names for the zpool
+detach/offline/remove/replace commands.
+.It Fl L
+Display real paths for vdevs resolving all symbolic links.
+This can be used to look up the current block device name regardless of the
+.Pa /dev/disk/
+path used to open it.
+.It Fl l
+Indicates that this command will request encryption keys for all encrypted
+datasets it attempts to mount as it is bringing the new pool online.
+Note that if any datasets have a
+.Sy keylocation
+of
+.Sy prompt
+this command will block waiting for the keys to be entered.
+Without this flag encrypted datasets will be left unavailable and unmounted
+until the keys are loaded.
+.It Fl n
+Do dry run, do not actually perform the split.
+Print out the expected configuration of
+.Ar newpool .
+.It Fl P
+Display full paths for vdevs instead of only the last component of
+the path.
+This can be used in conjunction with the
+.Fl L
+flag.
+.It Fl o Ar property Ns = Ns Ar value
+Sets the specified property for
+.Ar newpool .
+See the
+.Sx Properties
+section for more information on the available pool properties.
+.It Fl R Ar root
+Set
+.Sy altroot
+for
+.Ar newpool
+to
+.Ar root
+and automatically import it.
+.El
+.It Xo
+.Nm
+.Cm status
+.Op Fl DigLpPstvx
+.Op Fl T Sy u Ns | Ns Sy d
+.Oo Ar pool Oc Ns ...
+.Op Ar interval Op Ar count
+.Xc
+Displays the detailed health status for the given pools.
+If no
+.Ar pool
+is specified, then the status of each pool in the system is displayed.
+For more information on pool and device health, see the
+.Sx Device Failure and Recovery
+section.
+.Pp
+If a scrub or resilver is in progress, this command reports the percentage done
+and the estimated time to completion.
+Both of these are only approximate, because the amount of data in the pool and
+the other workloads on the system can change.
+.Bl -tag -width Ds
+.It Fl D
+Display a histogram of deduplication statistics, showing the allocated
+.Pq physically present on disk
+and referenced
+.Pq logically referenced in the pool
+block counts and sizes by reference count.
+.It Fl g
+Display vdev GUIDs instead of the normal device names.
+These GUIDs can be used in place of device names for the zpool
+detach/offline/remove/replace commands.
+.It Fl L
+Display real paths for vdevs resolving all symbolic links.
+This can be used to look up the current block device name regardless of the
+.Pa /dev/disk/
+path used to open it.
+.It Fl p
+Display numbers in parsable (exact) values.
+.It Fl P
+Display full paths for vdevs instead of only the last component of
+the path.
+This can be used in conjunction with the
+.Fl L
+flag.
+.It Fl s
+Display the number of leaf VDEV slow IOs.
+This is the number of IOs that didn't complete in
+.Sy zio_slow_io_ms
+milliseconds (default 30 seconds).
+This does not necessarily mean the IOs failed to complete, just took an
+unreasonably long amount of time.
+This may indicate a problem with the underlying storage.
+.It Fl t
+Display vdev TRIM status.
+.It Fl T Sy u Ns | Ns Sy d
+Display a time stamp.
+Specify
+.Sy u
+for a printed representation of the internal representation of time.
+See
+.Xr time 2 .
+Specify
+.Sy d
+for standard date format.
+See
+.Xr date 1 .
+.It Fl v
+Displays verbose data error information, printing out a complete list of all
+data errors since the last complete pool scrub.
+.It Fl x
+Only display status for pools that are exhibiting errors or are otherwise
+unavailable.
+Warnings about pools not using the latest on-disk format will not be included.
+.El
+.It Xo
+.Nm
+.Cm sync
+.Oo Ar pool Oc Ns ...
+.Xc
+Forces all in-core dirty data to be written to the primary pool storage and
+not the ZIL.
+It will also update administrative information including quota reporting.
+Without arguments,
+.Nm zpool Cm sync
+will sync all pools on the system.
+Otherwise, it will only sync the specified
+.Ar pool .
+.It Xo
+.Nm
+.Cm trim
+.Op Fl d
+.Op Fl r Ar rate
+.Op Fl c | Fl s
+.Ar pool
+.Op Ar device Ns ...
+.Xc
+Initiates an immediate on-demand TRIM operation for all of the free space in
+a pool.
+This operation informs the underlying storage devices of all blocks
+in the pool which are no longer allocated and allows thinly provisioned
+devices to reclaim the space.
+.Pp
+A manual on-demand TRIM operation can be initiated irrespective of the
+.Sy autotrim
+pool property setting.
+See the documentation for the
+.Sy autotrim
+property above for the types of vdev devices which can be trimmed.
+.Bl -tag -width Ds
+.It Fl d -secure
+Causes a secure TRIM to be initiated.
+When performing a secure TRIM, the device guarantees that data stored on the
+trimmed blocks has been erased.
+This requires support from the device and is not supported by all SSDs.
+.It Fl r -rate Ar rate
+Controls the rate at which the TRIM operation progresses.
+Without this option TRIM is executed as quickly as possible.
+The rate, expressed in bytes per second, is applied on a per-vdev basis and
+may be set differently for each leaf vdev.
+.It Fl c, -cancel
+Cancel trimming on the specified devices, or all eligible devices if none
+are specified.
+If one or more target devices are invalid or are not currently being
+trimmed, the command will fail and no cancellation will occur on any device.
+.It Fl s -suspend
+Suspend trimming on the specified devices, or all eligible devices if none
+are specified.
+If one or more target devices are invalid or are not currently being
+trimmed, the command will fail and no suspension will occur on any device.
+Trimming can then be resumed by running
+.Nm zpool Cm trim
+with no flags on the relevant target devices.
+.El
+.It Xo
+.Nm
+.Cm upgrade
+.Xc
+Displays pools which do not have all supported features enabled and pools
+formatted using a legacy ZFS version number.
+These pools can continue to be used, but some features may not be available.
+Use
+.Nm zpool Cm upgrade Fl a
+to enable all features on all pools.
+.It Xo
+.Nm
+.Cm upgrade
+.Fl v
+.Xc
+Displays legacy ZFS versions supported by the current software.
+See
+.Xr zpool-features 7
+for a description of feature flags features supported by the current software.
+.It Xo
+.Nm
+.Cm upgrade
+.Op Fl V Ar version
+.Fl a Ns | Ns Ar pool Ns ...
+.Xc
+Enables all supported features on the given pool.
+Once this is done, the pool will no longer be accessible on systems that do not
+support feature flags.
+See
+.Xr zpool-features 7
+for details on compatibility with systems that support feature flags, but do not
+support all features enabled on the pool.
+.Bl -tag -width Ds
+.It Fl a
+Enables all supported features on all pools.
+.It Fl V Ar version
+Upgrade to the specified legacy version.
+If the
+.Fl V
+flag is specified, no features will be enabled on the pool.
+This option can only be used to increase the version number up to the last
+supported legacy version number.
+.El
+.El
+.Sh EXIT STATUS
+The following exit values are returned:
+.Bl -tag -width Ds
+.It Sy 0
+Successful completion.
+.It Sy 1
+An error occurred.
+.It Sy 2
+Invalid command line options were specified.
+.El
+.Sh EXAMPLES
+.Bl -tag -width Ds
+.It Sy Example 1 No Creating a RAID-Z Storage Pool
+The following command creates a pool with a single raidz root vdev that
+consists of six disks.
+.Bd -literal
+# zpool create tank raidz c0t0d0 c0t1d0 c0t2d0 c0t3d0 c0t4d0 c0t5d0
+.Ed
+.It Sy Example 2 No Creating a Mirrored Storage Pool
+The following command creates a pool with two mirrors, where each mirror
+contains two disks.
+.Bd -literal
+# zpool create tank mirror c0t0d0 c0t1d0 mirror c0t2d0 c0t3d0
+.Ed
+.It Sy Example 3 No Creating a ZFS Storage Pool by Using Slices
+The following command creates an unmirrored pool using two disk slices.
+.Bd -literal
+# zpool create tank /dev/dsk/c0t0d0s1 c0t1d0s4
+.Ed
+.It Sy Example 4 No Creating a ZFS Storage Pool by Using Files
+The following command creates an unmirrored pool using files.
+While not recommended, a pool based on files can be useful for experimental
+purposes.
+.Bd -literal
+# zpool create tank /path/to/file/a /path/to/file/b
+.Ed
+.It Sy Example 5 No Adding a Mirror to a ZFS Storage Pool
+The following command adds two mirrored disks to the pool
+.Em tank ,
+assuming the pool is already made up of two-way mirrors.
+The additional space is immediately available to any datasets within the pool.
+.Bd -literal
+# zpool add tank mirror c1t0d0 c1t1d0
+.Ed
+.It Sy Example 6 No Listing Available ZFS Storage Pools
+The following command lists all available pools on the system.
+In this case, the pool
+.Em zion
+is faulted due to a missing device.
+The results from this command are similar to the following:
+.Bd -literal
+# zpool list
+NAME SIZE ALLOC FREE FRAG EXPANDSZ CAP DEDUP HEALTH ALTROOT
+rpool 19.9G 8.43G 11.4G 33% - 42% 1.00x ONLINE -
+tank 61.5G 20.0G 41.5G 48% - 32% 1.00x ONLINE -
+zion - - - - - - - FAULTED -
+.Ed
+.It Sy Example 7 No Destroying a ZFS Storage Pool
+The following command destroys the pool
+.Em tank
+and any datasets contained within.
+.Bd -literal
+# zpool destroy -f tank
+.Ed
+.It Sy Example 8 No Exporting a ZFS Storage Pool
+The following command exports the devices in pool
+.Em tank
+so that they can be relocated or later imported.
+.Bd -literal
+# zpool export tank
+.Ed
+.It Sy Example 9 No Importing a ZFS Storage Pool
+The following command displays available pools, and then imports the pool
+.Em tank
+for use on the system.
+The results from this command are similar to the following:
+.Bd -literal
+# zpool import
+ pool: tank
+ id: 15451357997522795478
+ state: ONLINE
+action: The pool can be imported using its name or numeric identifier.
+config:
+
+ tank ONLINE
+ mirror ONLINE
+ c1t2d0 ONLINE
+ c1t3d0 ONLINE
+
+# zpool import tank
+.Ed
+.It Sy Example 10 No Upgrading All ZFS Storage Pools to the Current Version
+The following command upgrades all ZFS Storage pools to the current version of
+the software.
+.Bd -literal
+# zpool upgrade -a
+This system is currently running ZFS version 2.
+.Ed
+.It Sy Example 11 No Managing Hot Spares
+The following command creates a new pool with an available hot spare:
+.Bd -literal
+# zpool create tank mirror c0t0d0 c0t1d0 spare c0t2d0
+.Ed
+.Pp
+If one of the disks were to fail, the pool would be reduced to the degraded
+state.
+The failed device can be replaced using the following command:
+.Bd -literal
+# zpool replace tank c0t0d0 c0t3d0
+.Ed
+.Pp
+Once the data has been resilvered, the spare is automatically removed and is
+made available for use should another device fail.
+The hot spare can be permanently removed from the pool using the following
+command:
+.Bd -literal
+# zpool remove tank c0t2d0
+.Ed
+.It Sy Example 12 No Creating a ZFS Pool with Mirrored Separate Intent Logs
+The following command creates a ZFS storage pool consisting of two, two-way
+mirrors and mirrored log devices:
+.Bd -literal
+# zpool create pool mirror c0d0 c1d0 mirror c2d0 c3d0 log mirror \e
+ c4d0 c5d0
+.Ed
+.It Sy Example 13 No Adding Cache Devices to a ZFS Pool
+The following command adds two disks for use as cache devices to a ZFS storage
+pool:
+.Bd -literal
+# zpool add pool cache c2d0 c3d0
+.Ed
+.Pp
+Once added, the cache devices gradually fill with content from main memory.
+Depending on the size of your cache devices, it could take over an hour for
+them to fill.
+Capacity and reads can be monitored using the
+.Cm iostat
+option as follows:
+.Bd -literal
+# zpool iostat -v pool 5
+.Ed
+.It Sy Example 14 No Removing a Mirrored top-level (Log or Data) Device
+The following commands remove the mirrored log device
+.Sy mirror-2
+and mirrored top-level data device
+.Sy mirror-1 .
+.Pp
+Given this configuration:
+.Bd -literal
+ pool: tank
+ state: ONLINE
+ scrub: none requested
+config:
+
+ NAME STATE READ WRITE CKSUM
+ tank ONLINE 0 0 0
+ mirror-0 ONLINE 0 0 0
+ c6t0d0 ONLINE 0 0 0
+ c6t1d0 ONLINE 0 0 0
+ mirror-1 ONLINE 0 0 0
+ c6t2d0 ONLINE 0 0 0
+ c6t3d0 ONLINE 0 0 0
+ logs
+ mirror-2 ONLINE 0 0 0
+ c4t0d0 ONLINE 0 0 0
+ c4t1d0 ONLINE 0 0 0
+.Ed
+.Pp
+The command to remove the mirrored log
+.Sy mirror-2
+is:
+.Bd -literal
+# zpool remove tank mirror-2
+.Ed
+.Pp
+The command to remove the mirrored data
+.Sy mirror-1
+is:
+.Bd -literal
+# zpool remove tank mirror-1
+.Ed
+.It Sy Example 15 No Displaying expanded space on a device
+The following command displays the detailed information for the pool
+.Em data .
+This pool is comprised of a single raidz vdev where one of its devices
+increased its capacity by 10GB.
+In this example, the pool will not be able to utilize this extra capacity until
+all the devices under the raidz vdev have been expanded.
+.Bd -literal
+# zpool list -v data
+NAME SIZE ALLOC FREE FRAG EXPANDSZ CAP DEDUP HEALTH ALTROOT
+data 23.9G 14.6G 9.30G 48% - 61% 1.00x ONLINE -
+ raidz1 23.9G 14.6G 9.30G 48% -
+ c1t1d0 - - - - -
+ c1t2d0 - - - - 10G
+ c1t3d0 - - - - -
+.Ed
+.El
+.Sh ENVIRONMENT VARIABLES
+.Bl -tag -width "ZPOOL_VDEV_NAME_GUID"
+.It Ev ZPOOL_VDEV_NAME_GUID
+Cause
+.Nm zpool subcommands to output vdev guids by default.
+This behavior is identical to the
+.Nm zpool status -g
+command line option.
+.El
+.Bl -tag -width "ZPOOL_VDEV_NAME_FOLLOW_LINKS"
+.It Ev ZPOOL_VDEV_NAME_FOLLOW_LINKS
+Cause
+.Nm zpool
+subcommands to follow links for vdev names by default.
+This behavior is identical to the
+.Nm zpool status -L
+command line option.
+.El
+.Bl -tag -width "ZPOOL_VDEV_NAME_PATH"
+.It Ev ZPOOL_VDEV_NAME_PATH
+Cause
+.Nm zpool
+subcommands to output full vdev path names by default.
+This behavior is identical to the
+.Nm zpool status -P
+command line option.
+.El
+.Sh INTERFACE STABILITY
+.Sy Evolving
+.Sh SEE ALSO
+.Xr attributes 7 ,
+.Xr zpool-features 7 ,
+.Xr zfs 8
diff --git a/usr/src/man/man8/zstreamdump.8 b/usr/src/man/man8/zstreamdump.8
new file mode 100644
index 0000000000..0b218833b2
--- /dev/null
+++ b/usr/src/man/man8/zstreamdump.8
@@ -0,0 +1,65 @@
+'\" te
+.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
+.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
+.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
+.TH ZSTREAMDUMP 8 "Sep 21, 2009"
+.SH NAME
+zstreamdump \- filter data in zfs send stream
+.SH SYNOPSIS
+.LP
+.nf
+\fBzstreamdump\fR [\fB-C\fR] [\fB-v\fR]
+.fi
+
+.SH DESCRIPTION
+.sp
+.LP
+The \fBzstreamdump\fR utility reads from the output of the \fBzfs send\fR
+command, then displays headers and some statistics from that output. See
+\fBzfs\fR(8).
+.SH OPTIONS
+.sp
+.LP
+The following options are supported:
+.sp
+.ne 2
+.na
+\fB\fB-C\fR\fR
+.ad
+.sp .6
+.RS 4n
+Suppress the validation of checksums.
+.RE
+
+.sp
+.ne 2
+.na
+\fB\fB-v\fR\fR
+.ad
+.sp .6
+.RS 4n
+Verbose. Dump all headers, not only begin and end headers.
+.RE
+
+.SH ATTRIBUTES
+.sp
+.LP
+See \fBattributes\fR(7) for descriptions of the following attributes:
+.sp
+
+.sp
+.TS
+box;
+c | c
+l | l .
+ATTRIBUTE TYPE ATTRIBUTE VALUE
+_
+Interface Stability Uncommitted
+.TE
+
+.SH SEE ALSO
+.sp
+.LP
+.BR attributes (7),
+.BR zfs (8)
diff --git a/usr/src/man/man8/ztest.8 b/usr/src/man/man8/ztest.8
new file mode 100644
index 0000000000..184a0194de
--- /dev/null
+++ b/usr/src/man/man8/ztest.8
@@ -0,0 +1,169 @@
+.\" $NetBSD: ztest.1,v 1.4 2018/12/10 03:58:30 sevan Exp $
+.\"
+.\" Copyright (c) 2018 The NetBSD Foundation, Inc.
+.\" All rights reserved.
+.\"
+.\" This code is derived from software contributed to The NetBSD Foundation
+.\" by Sevan Janiyan <sevan@NetBSD.org>
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\" notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\" notice, this list of conditions and the following disclaimer in the
+.\" documentation and/or other materials provided with the distribution.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
+.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
+.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+.\" POSSIBILITY OF SUCH DAMAGE.
+.\"/
+.Dd December 10, 2018
+.Dt ZTEST 8
+.Os
+.Sh NAME
+.Nm ztest
+.Nd ZFS stress test utility
+.Sh SYNOPSIS
+.Nm
+.Op Fl EhV
+.Op Fl a Ar shift
+.Op Fl B Ar path
+.Op Fl d Ar datasets
+.Op Fl F Ar loops
+.Op Fl f Ar path
+.Op Fl g Ar threshold
+.Op Fl i Ar count
+.Op Fl k Ar percent
+.Op Fl m Ar copies
+.Op Fl P Ar passtime
+.Op Fl p Ar name
+.Op Fl R Ar parity
+.Op Fl r Ar disks
+.Op Fl s Ar size
+.Op Fl T Ar time
+.Op Fl t Ar threads
+.Op Fl v Ar vdevs
+.Sh DESCRIPTION
+The
+.Nm
+utility stress tests the DMU, ZAP, SPA components of ZFS from user space.
+.Pp
+.Nm
+provides a simple routine to test the functionality of a component task.
+These simple routines can then be used to stress test through parallel
+execution.
+Tests are run as child processes of the main process.
+.Pp
+The checksum and compression functions are changed each time a dataset is
+opened to introduce varying combinations of checksum and compression from block
+to block among objects.
+.Pp
+While tests are running, faults are injected into the pool to verify
+self-healing ability.
+.Pp
+To verify that the on-disk consistency is never lost after a crash, child
+processes are killed at random with a SIGKILL signal, after which the parent
+process invokes a new child to run the test again on the same storage pool.
+.Pp
+Many of the tests record the transaction group number as part of their data.
+When reading old data, tests verify that the transaction group number is less
+than the current, open state, transaction group to ensure the consistency of
+tests and detect unaccounted changes.
+It is advised that any new tests added to
+.Nm
+should also perform the same check with transaction group numbers, if
+applicable.
+.Pp
+The main
+.Nm
+process uses an
+.Xr mmap 2
+temporary file to pass information to child processes which allows shared
+memory to survive
+.Xr exec 3
+syscall.
+A copy of the
+.Vt ztest_shared_hdr_t
+struct containing information on the size and number of shared
+structures in the file is always stored at offset 0 of the file.
+.Pp
+For backwards compatibility testing
+.Nm
+can invoke an alternative version of
+.Nm
+after a
+.Dv SIGKILL
+signal using the
+.Fl B
+flag.
+.Pp
+The following options are available:
+.Bl -tag -width 5n
+.It Fl a Ar shift
+alignment shift (default: 9) use 0 for random
+.It Fl B Ar path
+alt ztest (default: <none>) alternate ztest path
+.It Fl d Ar datasets
+datasets (default: 7)
+.It Fl E
+use existing pool instead of creating new one
+.It Fl F Ar loops
+freezeloops (default: 50) max loops in
+.Fn spa_freeze
+.It Fl f Ar path
+dir (default:
+.Pa /tmp )
+file directory for vdev files
+.It Fl g Ar threshold
+gang block threshold (default: 32K)
+.It Fl h
+print help
+.It Fl i Ar count
+init count (default: 1) initialize pool
+.Ar count
+times
+.It Fl k Ar percent
+kill percentage (default: 70%)
+.It Fl m Ar copies
+mirror copies (default: 2)
+.It Fl P Ar passtime
+passtime (default: 60 sec) time per pass
+.It Fl p Ar name
+pool name (default: ztest)
+.It Fl R Ar parity
+raidz parity (default: 1)
+.It Fl r Ar disks
+raidz disks (default: 4)
+.It Fl s Ar size
+size of each vdev (default: 256M)
+.It Fl T Ar time
+time (default: 300 sec) total run time
+.It Fl t Ar threads
+threads (default: 23)
+.It Fl V
+verbose (use multiple times to increase verbosity)
+.It Fl v Ar vdevs
+number of vdevs (default: 5)
+.El
+.Sh AUTHORS
+This man page was written by
+.An Sevan Janiyan
+.Aq Mt sevan@NetBSD.org .
+.Sh CAVEATS
+To allow for backward compatibility testing using older versions of
+.Nm
+the information stored in the
+.Xr mmap 2
+temporary file passed from parent process to child must
+remain compatible with older versions of
+.Nm .
diff --git a/usr/src/man/man9e/Intro.9e b/usr/src/man/man9e/Intro.9e
index 37e3f95013..909218a762 100644
--- a/usr/src/man/man9e/Intro.9e
+++ b/usr/src/man/man9e/Intro.9e
@@ -457,4 +457,5 @@ EROFS
.TE
.SH SEE ALSO
-\fBIntro\fR(9F), \fBIntro\fR(9S)
+.BR Intro (9F),
+.BR Intro (9S)
diff --git a/usr/src/man/man9e/_fini.9e b/usr/src/man/man9e/_fini.9e
index a585779c3e..c1deb0025c 100644
--- a/usr/src/man/man9e/_fini.9e
+++ b/usr/src/man/man9e/_fini.9e
@@ -151,9 +151,14 @@ _fini(void)
.in -2
.SH SEE ALSO
-\fBadd_drv\fR(1M), \fBmod_info\fR(9F), \fBmod_install\fR(9F),
-\fBmod_remove\fR(9F), \fBmutex\fR(9F), \fBmodldrv\fR(9S), \fBmodlinkage\fR(9S),
-\fBmodlstrmod\fR(9S)
+.BR add_drv (8),
+.BR mod_info (9F),
+.BR mod_install (9F),
+.BR mod_remove (9F),
+.BR mutex (9F),
+.BR modldrv (9S),
+.BR modlinkage (9S),
+.BR modlstrmod (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9e/aread.9e b/usr/src/man/man9e/aread.9e
index e640836684..816ee26b3c 100644
--- a/usr/src/man/man9e/aread.9e
+++ b/usr/src/man/man9e/aread.9e
@@ -22,7 +22,7 @@ int\fIprefix\fR
.SH INTERFACE LEVEL
illumos \fBDDI \fRspecific (illumos DDI). This entry point is \fIoptional\fR.
Drivers that do not support an \fBaread()\fR entry point should use
-\fBnodev\fR(9F)
+.BR nodev (9F)
.SH PARAMETERS
.ne 2
.na
@@ -92,11 +92,22 @@ xxaread(dev_t dev, struct aio_req *aio, cred_t *cred_p)
.in -2
.SH SEE ALSO
-\fBread\fR(2), \fBaioread\fR(3C), \fBawrite\fR(9E), \fBread\fR(9E),
-\fBstrategy\fR(9E), \fBwrite\fR(9E), \fBanocancel\fR(9F), \fBaphysio\fR(9F),
-\fBddi_get_soft_state\fR(9F), \fBdrv_priv\fR(9F), \fBgetminor\fR(9F),
-\fBminphys\fR(9F), \fBnodev\fR(9F), \fBaio_req\fR(9S), \fBcb_ops\fR(9S),
-\fBuio\fR(9S)
+.BR read (2),
+.BR aioread (3C),
+.BR awrite (9E),
+.BR read (9E),
+.BR strategy (9E),
+.BR write (9E),
+.BR anocancel (9F),
+.BR aphysio (9F),
+.BR ddi_get_soft_state (9F),
+.BR drv_priv (9F),
+.BR getminor (9F),
+.BR minphys (9F),
+.BR nodev (9F),
+.BR aio_req (9S),
+.BR cb_ops (9S),
+.BR uio (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9e/attach.9e b/usr/src/man/man9e/attach.9e
index 47f85a44c4..29218162f0 100644
--- a/usr/src/man/man9e/attach.9e
+++ b/usr/src/man/man9e/attach.9e
@@ -131,7 +131,7 @@ Operation failed
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -145,11 +145,22 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBcpr\fR(7), \fBpm\fR(7D), \fBpm\fR(9P), \fBpm-components\fR(9P),
-\fBdetach\fR(9E), \fBgetinfo\fR(9E), \fBidentify\fR(9E), \fBopen\fR(9E),
-\fBpower\fR(9E), \fBprobe\fR(9E), \fBddi_add_intr\fR(9F),
-\fBddi_create_minor_node\fR(9F), \fBddi_get_instance\fR(9F),
-\fBddi_map_regs\fR(9F), \fBkmem_alloc\fR(9F), \fBpm_raise_power\fR(9F)
+.BR cpr (4),
+.BR pm (4D),
+.BR detach (9E),
+.BR getinfo (9E),
+.BR identify (9E),
+.BR open (9E),
+.BR power (9E),
+.BR probe (9E),
+.BR ddi_add_intr (9F),
+.BR ddi_create_minor_node (9F),
+.BR ddi_get_instance (9F),
+.BR ddi_map_regs (9F),
+.BR kmem_alloc (9F),
+.BR pm_raise_power (9F),
+.BR pm (9P),
+.BR pm-components (9P)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9e/awrite.9e b/usr/src/man/man9e/awrite.9e
index fb19606f7c..c6f9be93a4 100644
--- a/usr/src/man/man9e/awrite.9e
+++ b/usr/src/man/man9e/awrite.9e
@@ -96,11 +96,22 @@ xxawrite(dev_t dev, struct aio_req *aio, cred_t *cred_p)
.in -2
.SH SEE ALSO
-\fBwrite\fR(2), \fBaiowrite\fR(3C), \fBaread\fR(9E), \fBread\fR(9E),
-\fBstrategy\fR(9E), \fBwrite\fR(9E), \fBanocancel\fR(9F), \fBaphysio\fR(9F),
-\fBddi_get_soft_state\fR(9F), \fBdrv_priv\fR(9F), \fBgetminor\fR(9F),
-\fBminphys\fR(9F), \fBnodev\fR(9F), \fBaio_req\fR(9S), \fBcb_ops\fR(9S),
-\fBuio\fR(9S)
+.BR write (2),
+.BR aiowrite (3C),
+.BR aread (9E),
+.BR read (9E),
+.BR strategy (9E),
+.BR write (9E),
+.BR anocancel (9F),
+.BR aphysio (9F),
+.BR ddi_get_soft_state (9F),
+.BR drv_priv (9F),
+.BR getminor (9F),
+.BR minphys (9F),
+.BR nodev (9F),
+.BR aio_req (9S),
+.BR cb_ops (9S),
+.BR uio (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9e/chpoll.9e b/usr/src/man/man9e/chpoll.9e
index 1e8aac5e81..9c077536eb 100644
--- a/usr/src/man/man9e/chpoll.9e
+++ b/usr/src/man/man9e/chpoll.9e
@@ -190,7 +190,7 @@ return (0);
.fi
.in -2
-Note: Prior to the integration of \fBepoll\fR(5), which included
+Note: Prior to the integration of \fBepoll\fR(7), which included
edge-triggering via the \fBPOLLET\fR flag, standard chpoll mechanisms would
only provide a pollhead in \fBphpp\fR if there were no matching events.
Edge-triggered polling requires that \fBpollwakeup()\fR always be called for a
@@ -266,7 +266,10 @@ associated with the \fBpollhead\fR is about to be deallocated by the
number.
.SH SEE ALSO
.LP
-\fBpoll\fR(2), \fBepoll\fR(5), \fBnochpoll\fR(9F), \fBpollwakeup\fR(9F)
+.BR poll (2),
+.BR epoll (7),
+.BR nochpoll (9F),
+.BR pollwakeup (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9e/close.9e b/usr/src/man/man9e/close.9e
index b6703a20a7..255e8db78f 100644
--- a/usr/src/man/man9e/close.9e
+++ b/usr/src/man/man9e/close.9e
@@ -303,9 +303,16 @@ function is provided to determine when this hazard exists.
.SH SEE ALSO
.sp
.LP
-\fBclose\fR(2), \fBfcntl\fR(2), \fBopen\fR(2), \fBumount\fR(2),
-\fBdetach\fR(9E), \fBopen\fR(9E), \fBddi_can_receive_sig\fR(9F),
-\fBcb_ops\fR(9S), \fBqinit\fR(9S), \fBqueue\fR(9S)
+.BR close (2),
+.BR fcntl (2),
+.BR open (2),
+.BR umount (2),
+.BR detach (9E),
+.BR open (9E),
+.BR ddi_can_receive_sig (9F),
+.BR cb_ops (9S),
+.BR qinit (9S),
+.BR queue (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9e/csx_event_handler.9e b/usr/src/man/man9e/csx_event_handler.9e
index 4d0453e17e..777eb33b6a 100644
--- a/usr/src/man/man9e/csx_event_handler.9e
+++ b/usr/src/man/man9e/csx_event_handler.9e
@@ -552,8 +552,9 @@ xx_event(event_t event, int priority, event_callback_args_t *args)
.in -2
.SH SEE ALSO
-\fBcsx_Event2Text\fR(9F), \fBcsx_RegisterClient\fR(9F),
-\fBcsx_RequestSocketMask\fR(9F)
+.BR csx_Event2Text (9F),
+.BR csx_RegisterClient (9F),
+.BR csx_RequestSocketMask (9F)
.sp
.LP
\fIPC Card 95 Standard\fR, PCMCIA/JEIDA
diff --git a/usr/src/man/man9e/ddi_ufm.9e b/usr/src/man/man9e/ddi_ufm.9e
index 08ea919f6d..57ca747048 100644
--- a/usr/src/man/man9e/ddi_ufm.9e
+++ b/usr/src/man/man9e/ddi_ufm.9e
@@ -523,7 +523,7 @@ block until it is terminated.
.Ss ioctl Interface
Userland consumers can access UFM information via a set of ioctls that are
implemented by the
-.Xr ufm 7D
+.Xr ufm 4D
driver.
.Sh CONTEXT
The various UFM entry points that a device driver must implement will
@@ -532,7 +532,7 @@ always be called from
context.
.Sh SEE ALSO
.Xr Intro 2 ,
-.Xr ufd 7D ,
+.Xr ufd 4D ,
.Xr attach 9E ,
.Xr ddi_ufm_fini 9F ,
.Xr ddi_ufm_image 9F ,
diff --git a/usr/src/man/man9e/detach.9e b/usr/src/man/man9e/detach.9e
index a181748c14..fc613424e7 100644
--- a/usr/src/man/man9e/detach.9e
+++ b/usr/src/man/man9e/detach.9e
@@ -93,7 +93,7 @@ the device to memory and block incoming or existing requests until
.LP
If the device is used to store file systems, then after \fBDDI_SUSPEND\fR is
issued, the device should still honor \fBdump\fR(9E) requests as this entry
-point may be used by suspend-resume operation (see \fBcpr\fR(7)) to save state
+point may be used by suspend-resume operation (see \fBcpr\fR(4)) to save state
file. It must do this, however, without disturbing the saved hardware state of
the device.
.sp
@@ -135,7 +135,7 @@ unchanged.
.SH CONTEXT
This function is called from user context only.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -149,10 +149,20 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBcpr\fR(7), \fBpm\fR(7D), \fBpm\fR(9P), \fBpm-components\fR(9P),
-\fBattach\fR(9E), \fBdump\fR(9E), \fBopen\fR(9E), \fBpower\fR(9E),
-\fBddi_add_intr\fR(9F), \fBddi_dev_is_needed\fR(9F), \fBddi_map_regs\fR(9F),
-\fBkmem_free\fR(9F), \fBpm_raise_power\fR(9F), \fBtimeout\fR(9F)
+.BR cpr (4),
+.BR pm (4D),
+.BR attach (9E),
+.BR dump (9E),
+.BR open (9E),
+.BR power (9E),
+.BR ddi_add_intr (9F),
+.BR ddi_dev_is_needed (9F),
+.BR ddi_map_regs (9F),
+.BR kmem_free (9F),
+.BR pm_raise_power (9F),
+.BR timeout (9F),
+.BR pm (9P),
+.BR pm-components (9P)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9e/devmap.9e b/usr/src/man/man9e/devmap.9e
index d1bada6827..2299f5166b 100644
--- a/usr/src/man/man9e/devmap.9e
+++ b/usr/src/man/man9e/devmap.9e
@@ -286,12 +286,21 @@ xxdevmap(dev_t dev, devmap_cookie_t dhp, offset_t off, size_t len,
.in -2
.SH SEE ALSO
-\fBmmap\fR(2), \fBattach\fR(9E), \fBdetach\fR(9E), \fBmmap\fR(9E),
-\fBsegmap\fR(9E), \fBddi_devmap_segmap\fR(9F),
-\fBddi_model_convert_from\fR(9F), \fBddi_soft_state\fR(9F),
-\fBddi_umem_alloc\fR(9F), \fBddi_umem_free\fR(9F),
-\fBdevmap_devmem_setup\fR(9F), \fBdevmap_setup\fR(9F),
-\fBdevmap_umem_setup\fR(9F), \fBcb_ops\fR(9S), \fBdevmap_callback_ctl\fR(9S)
+.BR mmap (2),
+.BR attach (9E),
+.BR detach (9E),
+.BR mmap (9E),
+.BR segmap (9E),
+.BR ddi_devmap_segmap (9F),
+.BR ddi_model_convert_from (9F),
+.BR ddi_soft_state (9F),
+.BR ddi_umem_alloc (9F),
+.BR ddi_umem_free (9F),
+.BR devmap_devmem_setup (9F),
+.BR devmap_setup (9F),
+.BR devmap_umem_setup (9F),
+.BR cb_ops (9S),
+.BR devmap_callback_ctl (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9e/devmap_access.9e b/usr/src/man/man9e/devmap_access.9e
index d154eedfcb..b1ebe492a2 100644
--- a/usr/src/man/man9e/devmap_access.9e
+++ b/usr/src/man/man9e/devmap_access.9e
@@ -254,8 +254,10 @@ xxdevmap_access(devmap_cookie_t dhp, void *pvtp, offset_t off,
.in -2
.SH SEE ALSO
-\fBdevmap_map\fR(9E), \fBdevmap_default_access\fR(9F),
-\fBdevmap_do_ctxmgt\fR(9F), \fBdevmap_callback_ctl\fR(9S)
+.BR devmap_map (9E),
+.BR devmap_default_access (9F),
+.BR devmap_do_ctxmgt (9F),
+.BR devmap_callback_ctl (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9e/devmap_contextmgt.9e b/usr/src/man/man9e/devmap_contextmgt.9e
index 83b8089329..41a50dde22 100644
--- a/usr/src/man/man9e/devmap_contextmgt.9e
+++ b/usr/src/man/man9e/devmap_contextmgt.9e
@@ -225,7 +225,7 @@ xxdevmap_contextmgt(devmap_cookie_t dhp, void *pvtp, offset_t off,
.SH SEE ALSO
\fBdevmap_access\fR(9E), \fBdevmap_do_ctxmgt\fR(9F) \fBdevmap_load\fR(9F),
-\fBdevmap_unload\fR(9F)
+.BR devmap_unload (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9e/devmap_dup.9e b/usr/src/man/man9e/devmap_dup.9e
index 2c25511f02..23b922974d 100644
--- a/usr/src/man/man9e/devmap_dup.9e
+++ b/usr/src/man/man9e/devmap_dup.9e
@@ -116,7 +116,8 @@ xxdevmap_dup(devmap_cookie_t dhp, void *pvtp, \e
.in -2
.SH SEE ALSO
-\fBfork\fR(2), \fBdevmap_callback_ctl\fR(9S)
+.BR fork (2),
+.BR devmap_callback_ctl (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9e/devmap_map.9e b/usr/src/man/man9e/devmap_map.9e
index 741a7e9e55..ab774102ae 100644
--- a/usr/src/man/man9e/devmap_map.9e
+++ b/usr/src/man/man9e/devmap_map.9e
@@ -180,7 +180,9 @@ xxdevmap_map(devmap_cookie_t dhp, dev_t dev, uint_t flags, \e
.in -2
.SH SEE ALSO
-\fBdevmap_unmap\fR(9E), \fBdevmap_unload\fR(9F), \fBdevmap_callback_ctl\fR(9S)
+.BR devmap_unmap (9E),
+.BR devmap_unload (9F),
+.BR devmap_callback_ctl (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9e/devmap_unmap.9e b/usr/src/man/man9e/devmap_unmap.9e
index bd23ec56c4..c03cb348e0 100644
--- a/usr/src/man/man9e/devmap_unmap.9e
+++ b/usr/src/man/man9e/devmap_unmap.9e
@@ -186,8 +186,10 @@ xxdevmap_unmap(devmap_cookie_t dhp, void *pvtp, offset_t off,
.in -2
.SH SEE ALSO
-\fBexit\fR(2), \fBmunmap\fR(2), \fBdevmap_map\fR(9E),
-\fBdevmap_callback_ctl\fR(9S)
+.BR exit (2),
+.BR munmap (2),
+.BR devmap_map (9E),
+.BR devmap_callback_ctl (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9e/dump.9e b/usr/src/man/man9e/dump.9e
index b3a395697e..7e850c648e 100644
--- a/usr/src/man/man9e/dump.9e
+++ b/usr/src/man/man9e/dump.9e
@@ -75,7 +75,8 @@ can delay(9F) be relied upon, since it is implemented via \fBtimeout()\fR. See
.SH RETURN VALUES
\fBdump()\fR returns \fB0\fR on success, or the appropriate error number.
.SH SEE ALSO
-\fBcpr\fR(7), \fBnodev\fR(9F)
+.BR cpr (4),
+.BR nodev (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9e/getinfo.9e b/usr/src/man/man9e/getinfo.9e
index 60484b7e7d..bb10a3df6e 100644
--- a/usr/src/man/man9e/getinfo.9e
+++ b/usr/src/man/man9e/getinfo.9e
@@ -134,13 +134,16 @@ rd_getinfo(dev_info_t *dip, ddi_info_cmd_t infocmd, void *arg,
.in -2
.SH SEE ALSO
-\fBddi_no_info\fR(9F), \fBnodev\fR(9F), \fBcb_ops\fR(9S), \fBdev_ops\fR(9S)
+.BR ddi_no_info (9F),
+.BR nodev (9F),
+.BR cb_ops (9S),
+.BR dev_ops (9S)
.sp
.LP
\fIWriting Device Drivers\fR
.SH NOTES
-Non-\fBgld\fR(7D)-based DLPI network streams drivers are encouraged to switch
-to \fBgld\fR(7D). Failing this, a driver that creates DLPI style-2 minor
+Non-\fBgld\fR(4D)-based DLPI network streams drivers are encouraged to switch
+to \fBgld\fR(4D). Failing this, a driver that creates DLPI style-2 minor
nodes must specify CLONE_DEV for its style-2 \fBddi_create_minor_node\fR(9F)
nodes and use \fBqassociate\fR(9F). A driver that supports both style-1 and
style-2 minor nodes should return DDI_FAILURE for DDI_INFO_DEVT2INSTANCE and
@@ -148,5 +151,5 @@ DDI_INFO_DEVT2DEVINFO \fBgetinfo()\fR calls to style-2 minor nodes. (The
correct association is already established by \fBqassociate\fR(9F)). A driver
that only supports style-2 minor nodes can use \fBddi_no_info\fR(9F) for its
\fBgetinfo()\fR implementation. For drivers that do not follow these rules, the
-results of a \fBmodunload\fR(1M) of the driver or a \fBcfgadm\fR(1M) remove of
+results of a \fBmodunload\fR(8) of the driver or a \fBcfgadm\fR(8) remove of
hardware controlled by the driver are undefined.
diff --git a/usr/src/man/man9e/gld.9e b/usr/src/man/man9e/gld.9e
index 0f6162245c..1ba5a906bf 100644
--- a/usr/src/man/man9e/gld.9e
+++ b/usr/src/man/man9e/gld.9e
@@ -157,7 +157,7 @@ These entry points must be implemented by a device-specific network driver
designed to interface with the Generic LAN Driver (GLD).
.sp
.LP
-As described in \fBgld\fR(7D), the main data structure for communication
+As described in \fBgld\fR(4D), the main data structure for communication
between the device-specific driver and the GLD module is the
\fBgld_mac_info\fR(9S) structure. Some of the elements in that structure are
function pointers to the entry points described here. The device-specific
@@ -306,7 +306,7 @@ private counters, and updates the \fBgld_stats\fR(9S) structure pointed to by
\fIstats\fR. This routine is called by GLD when it gets a request for
statistics, and provides the mechanism by which GLD acquires device dependent
statistics from the driver before composing its reply to the statistics
-request. See \fBgld_stats\fR(9S) and \fBgld\fR(7D) for a description of the
+request. See \fBgld_stats\fR(9S) and \fBgld\fR(4D) for a description of the
defined statistics counters.
.sp
.LP
@@ -404,8 +404,13 @@ on hardware failure.
.RE
.SH SEE ALSO
-\fBgld\fR(7D), \fBgld\fR(9F), \fBgld_mac_info\fR(9S), \fBgld_stats\fR(9S),
-\fBdlpi\fR(7P), \fBattach\fR(9E), \fBddi_add_intr\fR(9F)
+.BR gld (4D),
+.BR dlpi (4P),
+.BR attach (9E),
+.BR ddi_add_intr (9F),
+.BR gld (9F),
+.BR gld_mac_info (9S),
+.BR gld_stats (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9e/identify.9e b/usr/src/man/man9e/identify.9e
index 1f6740cbf7..ba6600fd2b 100644
--- a/usr/src/man/man9e/identify.9e
+++ b/usr/src/man/man9e/identify.9e
@@ -10,9 +10,10 @@ identify \- determine if a driver is associated with a device
illumos DDI specific (illumos DDI). This entry point is no longer supported.
\fBnulldev\fR(9F) must be specified in the \fBdev_ops\fR(9S) structure.
.SH SEE ALSO
-\fBnulldev\fR(9F), \fBdev_ops\fR(9S)
+.BR nulldev (9F),
+.BR dev_ops (9S)
.SH ATTRIBUTES
-See \fBattributes\fR(5) for a description of the following attributes:
+See \fBattributes\fR(7) for a description of the following attributes:
.sp
.sp
diff --git a/usr/src/man/man9e/ioctl.9e b/usr/src/man/man9e/ioctl.9e
index 796d92a37f..5f52c367c8 100644
--- a/usr/src/man/man9e/ioctl.9e
+++ b/usr/src/man/man9e/ioctl.9e
@@ -123,7 +123,7 @@ up to the user program and the driver to agree on what the arguments mean.
.sp
.LP
I/O control commands are used to implement the terminal settings passed from
-\fBttymon\fR(1M) and \fBstty\fR(1), to format disk devices, to implement a
+\fBttymon\fR(8) and \fBstty\fR(1), to format disk devices, to implement a
trace driver for debugging, and to clean up character queues. Since the kernel
does not interpret the command type that defines the operation, a driver is
free to define its own commands. Drivers must be prepared to receive commands
@@ -257,10 +257,20 @@ xxioctl(dev_t dev, int cmd, intptr_t arg, int mode,
.in -2
.SH SEE ALSO
-\fBstty\fR(1), \fBttymon\fR(1M), \fBdkio\fR(7I), \fBfbio\fR(7I),
-\fBtermio\fR(7I), \fBopen\fR(9E), \fBput\fR(9E), \fBsrv\fR(9E),
-\fBcopyin\fR(9F), \fBcopyout\fR(9F), \fBddi_copyin\fR(9F),
-\fBddi_copyout\fR(9F), \fBddi_model_convert_from\fR(9F), \fBcb_ops\fR(9S)
+.BR stty (1),
+.BR dkio (4I),
+.BR fbio (4I),
+.BR termio (4I),
+.BR ttymon (8),
+.BR open (9E),
+.BR put (9E),
+.BR srv (9E),
+.BR copyin (9F),
+.BR copyout (9F),
+.BR ddi_copyin (9F),
+.BR ddi_copyout (9F),
+.BR ddi_model_convert_from (9F),
+.BR cb_ops (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9e/ks_snapshot.9e b/usr/src/man/man9e/ks_snapshot.9e
index 9364820b92..305b545cbc 100644
--- a/usr/src/man/man9e/ks_snapshot.9e
+++ b/usr/src/man/man9e/ks_snapshot.9e
@@ -182,8 +182,10 @@ xxx_kstat_snapshot(kstat_t *ksp, void *buf, int rw)
.sp
.SH SEE ALSO
-\fBks_update\fR(9E), \fBkstat_create\fR(9F), \fBkstat_install\fR(9F),
-\fBkstat\fR(9S)
+.BR ks_update (9E),
+.BR kstat_create (9F),
+.BR kstat_install (9F),
+.BR kstat (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9e/ks_update.9e b/usr/src/man/man9e/ks_update.9e
index 7b184380a2..cccbc59ec0 100644
--- a/usr/src/man/man9e/ks_update.9e
+++ b/usr/src/man/man9e/ks_update.9e
@@ -125,7 +125,9 @@ For any other error.
.RE
.SH SEE ALSO
-\fBkstat_create\fR(9F), \fBkstat_install\fR(9F), \fBkstat\fR(9S)
+.BR kstat_create (9F),
+.BR kstat_install (9F),
+.BR kstat (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9e/mac.9e b/usr/src/man/man9e/mac.9e
index 8b896a35c2..cc24da4b9b 100644
--- a/usr/src/man/man9e/mac.9e
+++ b/usr/src/man/man9e/mac.9e
@@ -68,7 +68,7 @@ or
.Xr close 9E
routines.
In addition, all of the work to interact with
-.Xr dlpi 7P
+.Xr dlpi 4P
is taken care of automatically and transparently.
.Ss Initializing MAC Support
For a device to be used in the framework, it must register with the
@@ -440,7 +440,7 @@ family of properties, they may change depending on power settings.
See the
.Sy Ethernet Link Properties
section in
-.Xr dladm 1M
+.Xr dladm 8
for more information.
.Pp
It's worth discussing how these different values get used throughout the
@@ -503,7 +503,7 @@ fail the call to
.Xr detach 9E .
.Ss Interacting with Devices
Administrators always interact with devices through the
-.Xr dladm 1M
+.Xr dladm 8
command line interface.
The state of devices such as whether the link is considered
.Sy up
@@ -520,9 +520,9 @@ are all exposed.
It is also the preferred way that these properties are set and configured.
.Pp
While device tunables may be presented in a
-.Xr driver.conf 4
+.Xr driver.conf 5
file, it is recommended instead to expose such things through
-.Xr dladm 1M
+.Xr dladm 8
private properties, whether explicitly documented or not.
.Sh CAPABILITIES
Capabilities in the MAC Framework are optional features that a device
@@ -635,7 +635,7 @@ In other words, each mblk_t that is linked together by the
pointer may have checksum flags set.
.Pp
It is recommended that device drivers provide a private property or
-.Xr driver.conf 4
+.Xr driver.conf 5
property to control whether or not checksumming is enabled for both rx
and tx; however, the default disposition is recommended to be enabled
for both.
@@ -1310,7 +1310,7 @@ structure.
The driver may define whatever semantics it wants for these private
properties.
They will not be listed when running
-.Xr dladm 1M ,
+.Xr dladm 8 ,
unless explicitly requested by name.
All such properties should start with a leading underscore character and then
consist of alphanumeric ASCII characters and additional underscores or hyphens.
@@ -1976,10 +1976,10 @@ to switch from one format to the other.
This way, data can be gathered to determine what the impact of each method is on
a given platform.
.Sh SEE ALSO
-.Xr dladm 1M ,
-.Xr driver.conf 4 ,
-.Xr ieee802.3 5 ,
-.Xr dlpi 7P ,
+.Xr dlpi 4P ,
+.Xr driver.conf 5 ,
+.Xr ieee802.3 7 ,
+.Xr dladm 8 ,
.Xr _fini 9E ,
.Xr _info 9E ,
.Xr _init 9E ,
diff --git a/usr/src/man/man9e/mc_getcapab.9e b/usr/src/man/man9e/mc_getcapab.9e
index 2c2daf65ff..00ae656e9c 100644
--- a/usr/src/man/man9e/mc_getcapab.9e
+++ b/usr/src/man/man9e/mc_getcapab.9e
@@ -107,7 +107,7 @@ It is recommended that any capability that is supported have some form of
tunable, whether in the form of a
.Sy MAC_PROP_PRIVATE
driver-specific property and/or a
-.Xr driver.conf 4
+.Xr driver.conf 5
property to disable it.
This way when problems are discovered in the field, they can be worked around
without requiring initial changes to the device driver.
diff --git a/usr/src/man/man9e/mc_getprop.9e b/usr/src/man/man9e/mc_getprop.9e
index 184f167fe5..f74e56bcf8 100644
--- a/usr/src/man/man9e/mc_getprop.9e
+++ b/usr/src/man/man9e/mc_getprop.9e
@@ -96,7 +96,7 @@ identify which one it is.
At this time, private properties are limited to being string based properties.
If other types of property values are used, they will not be rendered
correctly by
-.Xr dladm 1M .
+.Xr dladm 8 .
.Pp
The device
driver can access its device soft state by casting the
diff --git a/usr/src/man/man9e/mmap.9e b/usr/src/man/man9e/mmap.9e
index 3af5e20b98..0f894aa6f6 100644
--- a/usr/src/man/man9e/mmap.9e
+++ b/usr/src/man/man9e/mmap.9e
@@ -217,7 +217,7 @@ xxmmap(dev_t dev, off_t off, int prot)
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for a description of the following attributes:
+See \fBattributes\fR(7) for a description of the following attributes:
.sp
.sp
@@ -233,12 +233,22 @@ Stability Level Obsolete
.SH SEE ALSO
.sp
.LP
-\fBmmap\fR(2), \fBattributes\fR(5), \fBattach\fR(9E), \fBdetach\fR(9E),
-\fBdevmap\fR(9E), \fBsegmap\fR(9E), \fBddi_btop\fR(9F),
-\fBddi_get_soft_state\fR(9F), \fBddi_mmap_get_model\fR(9F),
-\fBddi_model_convert_from\fR(9F), \fBddi_regs_map_free\fR(9F),
-\fBddi_regs_map_setup\fR(9F), \fBddi_soft_state\fR(9F), \fBdevmap_setup\fR(9F),
-\fBgetminor\fR(9F), \fBhat_getkpfnum\fR(9F)
+.BR mmap (2),
+.BR attributes (7),
+.BR attach (9E),
+.BR detach (9E),
+.BR devmap (9E),
+.BR segmap (9E),
+.BR ddi_btop (9F),
+.BR ddi_get_soft_state (9F),
+.BR ddi_mmap_get_model (9F),
+.BR ddi_model_convert_from (9F),
+.BR ddi_regs_map_free (9F),
+.BR ddi_regs_map_setup (9F),
+.BR ddi_soft_state (9F),
+.BR devmap_setup (9F),
+.BR getminor (9F),
+.BR hat_getkpfnum (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9e/open.9e b/usr/src/man/man9e/open.9e
index ef041db5ef..08712f500c 100644
--- a/usr/src/man/man9e/open.9e
+++ b/usr/src/man/man9e/open.9e
@@ -305,10 +305,21 @@ The \fBopen()\fR function should return \fB0\fR for success, or the appropriate
error number.
.SH SEE ALSO
.LP
-\fBclose\fR(2), \fBexit\fR(2), \fBmmap\fR(2), \fBmount\fR(2), \fBmunmap\fR(2),
-\fBopen\fR(2), \fBIntro\fR(9E), \fBattach\fR(9E), \fBclose\fR(9E),
-\fBddi_create_minor_node\fR(9F), \fBgetmajor\fR(9F), \fBgetminor\fR(9F),
-\fBmakedevice\fR(9F), \fBnulldev\fR(9F), \fBcb_ops\fR(9S)
+.BR close (2),
+.BR exit (2),
+.BR mmap (2),
+.BR mount (2),
+.BR munmap (2),
+.BR open (2),
+.BR Intro (9E),
+.BR attach (9E),
+.BR close (9E),
+.BR ddi_create_minor_node (9F),
+.BR getmajor (9F),
+.BR getminor (9F),
+.BR makedevice (9F),
+.BR nulldev (9F),
+.BR cb_ops (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9e/power.9e b/usr/src/man/man9e/power.9e
index 27f26f76a3..06fd6f25dd 100644
--- a/usr/src/man/man9e/power.9e
+++ b/usr/src/man/man9e/power.9e
@@ -101,7 +101,7 @@ Failed to set the power to the requested \fIlevel\fR.
.SH CONTEXT
The \fBpower()\fR function is called from user or kernel context only.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -115,8 +115,12 @@ Interface stability Committed
.TE
.SH SEE ALSO
-\fBattach\fR(9E), \fBdetach\fR(9E), \fBpm_busy_component\fR(9F),
-\fBpm_idle_component\fR(9F), \fBpm_raise_power\fR(9F), \fBdev_ops\fR(9S)
+.BR attach (9E),
+.BR detach (9E),
+.BR pm_busy_component (9F),
+.BR pm_idle_component (9F),
+.BR pm_raise_power (9F),
+.BR dev_ops (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9e/print.9e b/usr/src/man/man9e/print.9e
index 182ca3e079..25ba6d08e9 100644
--- a/usr/src/man/man9e/print.9e
+++ b/usr/src/man/man9e/print.9e
@@ -62,7 +62,7 @@ error logging, but was unable to complete the logging for whatever reason.
.SH SEE ALSO
.sp
.LP
-\fBcmn_err\fR(9F)
+.BR cmn_err (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9e/probe.9e b/usr/src/man/man9e/probe.9e
index e9babc64cc..b98355dea0 100644
--- a/usr/src/man/man9e/probe.9e
+++ b/usr/src/man/man9e/probe.9e
@@ -97,9 +97,14 @@ If the instance is not present now, but may be present in the future.
.RE
.SH SEE ALSO
-\fBattach\fR(9E), \fBidentify\fR(9E), \fBddi_dev_is_sid\fR(9F),
-\fBddi_map_regs\fR(9F), \fBddi_peek\fR(9F), \fBddi_poke\fR(9F),
-\fBnulldev\fR(9F), \fBdev_ops\fR(9S)
+.BR attach (9E),
+.BR identify (9E),
+.BR ddi_dev_is_sid (9F),
+.BR ddi_map_regs (9F),
+.BR ddi_peek (9F),
+.BR ddi_poke (9F),
+.BR nulldev (9F),
+.BR dev_ops (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9e/prop_op.9e b/usr/src/man/man9e/prop_op.9e
index 1f84d53093..fe689c0091 100644
--- a/usr/src/man/man9e/prop_op.9e
+++ b/usr/src/man/man9e/prop_op.9e
@@ -228,7 +228,9 @@ xxprop_op(dev_t dev, dev_info_t *dip, ddi_prop_op_t prop_op,
.in -2
.SH SEE ALSO
-\fBIntro\fR(9E), \fBddi_prop_op\fR(9F), \fBddi_prop_update\fR(9F)
+.BR Intro (9E),
+.BR ddi_prop_op (9F),
+.BR ddi_prop_update (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9e/put.9e b/usr/src/man/man9e/put.9e
index e91c1a9587..a863cc1d4d 100644
--- a/usr/src/man/man9e/put.9e
+++ b/usr/src/man/man9e/put.9e
@@ -110,9 +110,16 @@ Ignored.
\fBput()\fR routines do not have user context.
.SH SEE ALSO
.LP
-\fBsrv\fR(9E), \fBputctl\fR(9F), \fBputctl1\fR(9F), \fBputnext\fR(9F),
-\fBputnextctl\fR(9F), \fBputnextctl1\fR(9F), \fBputq\fR(9F), \fBqreply\fR(9F),
-\fBqueue\fR(9S), \fBstreamtab\fR(9S)
+.BR srv (9E),
+.BR putctl (9F),
+.BR putctl1 (9F),
+.BR putnext (9F),
+.BR putnextctl (9F),
+.BR putnextctl1 (9F),
+.BR putq (9F),
+.BR qreply (9F),
+.BR queue (9S),
+.BR streamtab (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9e/quiesce.9e b/usr/src/man/man9e/quiesce.9e
index f7abbb42ea..5bf3079f6b 100644
--- a/usr/src/man/man9e/quiesce.9e
+++ b/usr/src/man/man9e/quiesce.9e
@@ -95,9 +95,16 @@ The operation failed.
.SH CONTEXT
This function is called from kernel context only.
.SH SEE ALSO
-\fBreboot\fR(1M), \fBuadmin\fR(1M), \fBuadmin\fR(2), \fBattach\fR(9E),
-\fBdetach\fR(9E), \fBddi_add_intr\fR(9F), \fBddi_map_regs\fR(9F),
-\fBpci_config_setup\fR(9F), \fBtimeout\fR(9F), \fBdev_ops\fR(9S)
+.BR uadmin (2),
+.BR reboot (8),
+.BR uadmin (8),
+.BR attach (9E),
+.BR detach (9E),
+.BR ddi_add_intr (9F),
+.BR ddi_map_regs (9F),
+.BR pci_config_setup (9F),
+.BR timeout (9F),
+.BR dev_ops (9S)
.SH NOTES
When \fBquiesce()\fR is called, the system is single-threaded, therefore the
driver's \fBquiesce()\fR implementation must not be blocked. For example, the
diff --git a/usr/src/man/man9e/read.9e b/usr/src/man/man9e/read.9e
index 276003593e..616bf8f2d6 100644
--- a/usr/src/man/man9e/read.9e
+++ b/usr/src/man/man9e/read.9e
@@ -105,8 +105,11 @@ perform reads from a non-seekable device:
.SH SEE ALSO
.sp
.LP
-\fBread\fR(2), \fBwrite\fR(9E), \fBphysio\fR(9F), \fBcb_ops\fR(9S),
-\fBuio\fR(9S)
+.BR read (2),
+.BR write (9E),
+.BR physio (9F),
+.BR cb_ops (9S),
+.BR uio (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9e/segmap.9e b/usr/src/man/man9e/segmap.9e
index 9eb7aa75f0..5c8d6b390b 100644
--- a/usr/src/man/man9e/segmap.9e
+++ b/usr/src/man/man9e/segmap.9e
@@ -262,8 +262,11 @@ respective routine.
.SH SEE ALSO
.sp
.LP
-\fBmmap\fR(2), \fBdevmap\fR(9E), \fBdevmap_setup\fR(9F),
-\fBddi_devmap_segmap\fR(9F), \fBddi_device_acc_attr\fR(9S)
+.BR mmap (2),
+.BR devmap (9E),
+.BR ddi_devmap_segmap (9F),
+.BR devmap_setup (9F),
+.BR ddi_device_acc_attr (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9e/srv.9e b/usr/src/man/man9e/srv.9e
index 54c0e7ebe7..879e75bded 100644
--- a/usr/src/man/man9e/srv.9e
+++ b/usr/src/man/man9e/srv.9e
@@ -150,9 +150,18 @@ If the message cannot be passed, put it back on the queue with
Ignored.
.SH SEE ALSO
.LP
-\fBput\fR(9E), \fBbcanput\fR(9F), \fBbcanputnext\fR(9F), \fBcanput\fR(9F),
-\fBcanputnext\fR(9F), \fBgetq\fR(9F), \fBnulldev\fR(9F), \fBputbq\fR(9F),
-\fBputnext\fR(9F), \fBputq\fR(9F), \fBqinit\fR(9S), \fBqueue\fR(9S)
+.BR put (9E),
+.BR bcanput (9F),
+.BR bcanputnext (9F),
+.BR canput (9F),
+.BR canputnext (9F),
+.BR getq (9F),
+.BR nulldev (9F),
+.BR putbq (9F),
+.BR putnext (9F),
+.BR putq (9F),
+.BR qinit (9S),
+.BR queue (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9e/strategy.9e b/usr/src/man/man9e/strategy.9e
index fd8cf7fcd7..7655c891b9 100644
--- a/usr/src/man/man9e/strategy.9e
+++ b/usr/src/man/man9e/strategy.9e
@@ -60,9 +60,14 @@ be an error.
.SH SEE ALSO
.sp
.LP
-\fBioctl\fR(9E), \fBread\fR(9E), \fBwrite\fR(9E), \fBbiodone\fR(9F),
-\fBbioerror\fR(9F), \fBbuf\fR(9S), \fBcb_ops\fR(9S),
-\fBkmem_cache_create\fR(9F)
+.BR ioctl (9E),
+.BR read (9E),
+.BR write (9E),
+.BR biodone (9F),
+.BR bioerror (9F),
+.BR kmem_cache_create (9F),
+.BR buf (9S),
+.BR cb_ops (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9e/tran_abort.9e b/usr/src/man/man9e/tran_abort.9e
index 1c95ff55aa..0dafcb3717 100644
--- a/usr/src/man/man9e/tran_abort.9e
+++ b/usr/src/man/man9e/tran_abort.9e
@@ -83,8 +83,12 @@ upon failure.
The \fBtran_abort()\fR function can be called from user or interrupt context.
This requirement comes from \fBscsi_abort()\fR.
.SH SEE ALSO
-\fBattach\fR(9E), \fBscsi_abort\fR(9F), \fBscsi_hba_attach\fR(9F),
-\fBscsi_address\fR(9S), \fBscsi_hba_tran\fR(9S), \fBscsi_pkt\fR(9S)
+.BR attach (9E),
+.BR scsi_abort (9F),
+.BR scsi_hba_attach (9F),
+.BR scsi_address (9S),
+.BR scsi_hba_tran (9S),
+.BR scsi_pkt (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9e/tran_bus_reset.9e b/usr/src/man/man9e/tran_bus_reset.9e
index 451135f925..d6ddc78915 100644
--- a/usr/src/man/man9e/tran_bus_reset.9e
+++ b/usr/src/man/man9e/tran_bus_reset.9e
@@ -79,7 +79,7 @@ on failure.
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for a description of the following attributes:
+See \fBattributes\fR(7) for a description of the following attributes:
.sp
.sp
@@ -93,4 +93,6 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBattributes\fR(5), \fBtran_quiesce\fR(9E), \fBscsi_hba_tran\fR(9S)
+.BR attributes (7),
+.BR tran_quiesce (9E),
+.BR scsi_hba_tran (9S)
diff --git a/usr/src/man/man9e/tran_dmafree.9e b/usr/src/man/man9e/tran_dmafree.9e
index 00a46b173f..c59f393313 100644
--- a/usr/src/man/man9e/tran_dmafree.9e
+++ b/usr/src/man/man9e/tran_dmafree.9e
@@ -49,10 +49,16 @@ itself. Since \fBtran_destroy_pkt\fR(9E) must also free \fBDMA \fRresources,
it is important that the \fBHBA \fRdriver keeps accurate note of whether
\fBscsi_pkt\fR(9S) structures have \fBDMA \fRresources allocated.
.SH SEE ALSO
-\fBattach\fR(9E), \fBtran_destroy_pkt\fR(9E), \fBtran_init_pkt\fR(9E),
-\fBscsi_dmafree\fR(9F), \fBscsi_dmaget\fR(9F), \fBscsi_hba_attach\fR(9F),
-\fBscsi_init_pkt\fR(9F), \fBscsi_address\fR(9S), \fBscsi_hba_tran\fR(9S),
-\fBscsi_pkt\fR(9S)
+.BR attach (9E),
+.BR tran_destroy_pkt (9E),
+.BR tran_init_pkt (9E),
+.BR scsi_dmafree (9F),
+.BR scsi_dmaget (9F),
+.BR scsi_hba_attach (9F),
+.BR scsi_init_pkt (9F),
+.BR scsi_address (9S),
+.BR scsi_hba_tran (9S),
+.BR scsi_pkt (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9e/tran_getcap.9e b/usr/src/man/man9e/tran_getcap.9e
index c10f5714c3..53d43beef8 100644
--- a/usr/src/man/man9e/tran_getcap.9e
+++ b/usr/src/man/man9e/tran_getcap.9e
@@ -104,8 +104,12 @@ the capability, and \fB\(mi1\fR if the capability was not defined.
\fBtran_getcap()\fR must return the current value of a capability or
\fB\(mi1\fR if the capability was not defined.
.SH SEE ALSO
-\fBattach\fR(9E), \fBscsi_hba_attach\fR(9F), \fBscsi_hba_lookup_capstr\fR(9F),
-\fBscsi_ifgetcap\fR(9F), \fBscsi_address\fR(9S), \fBscsi_hba_tran\fR(9S)
+.BR attach (9E),
+.BR scsi_hba_attach (9F),
+.BR scsi_hba_lookup_capstr (9F),
+.BR scsi_ifgetcap (9F),
+.BR scsi_address (9S),
+.BR scsi_hba_tran (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9e/tran_init_pkt.9e b/usr/src/man/man9e/tran_init_pkt.9e
index 567801b357..9c12a6bb45 100644
--- a/usr/src/man/man9e/tran_init_pkt.9e
+++ b/usr/src/man/man9e/tran_init_pkt.9e
@@ -221,13 +221,24 @@ packet through \fBscsi_hba_pkt_alloc\fR(9F) but was unable to allocate \fBDMA
\fRresources, \fBtran_init_pkt()\fR must free the packet through
\fBscsi_hba_pkt_free\fR(9F) before returning \fINULL\fR.
.SH SEE ALSO
-\fBattach\fR(9E), \fBtran_setup_pkt\fR(9E), \fBtran_sync_pkt\fR(9E),
-\fBbiodone\fR(9F), \fBbioerror\fR(9F), \fBddi_dma_buf_bind_handle\fR(9F),
-\fBddi_dma_buf_setup\fR(9F), \fBkmem_cache_create\fR(9F),
-\fBscsi_alloc_consistent_buf\fR(9F), \fBscsi_destroy_pkt\fR(9F),
-\fBscsi_hba_attach\fR(9F), \fBscsi_hba_pkt_alloc\fR(9F),
-\fBscsi_hba_pkt_free\fR(9F), \fBscsi_init_pkt\fR(9F), \fBbuf\fR(9S),
-\fBscsi_address\fR(9S), \fBscsi_hba_tran\fR(9S), \fBscsi_pkt\fR(9S)
+.BR attach (9E),
+.BR tran_setup_pkt (9E),
+.BR tran_sync_pkt (9E),
+.BR biodone (9F),
+.BR bioerror (9F),
+.BR ddi_dma_buf_bind_handle (9F),
+.BR ddi_dma_buf_setup (9F),
+.BR kmem_cache_create (9F),
+.BR scsi_alloc_consistent_buf (9F),
+.BR scsi_destroy_pkt (9F),
+.BR scsi_hba_attach (9F),
+.BR scsi_hba_pkt_alloc (9F),
+.BR scsi_hba_pkt_free (9F),
+.BR scsi_init_pkt (9F),
+.BR buf (9S),
+.BR scsi_address (9S),
+.BR scsi_hba_tran (9S),
+.BR scsi_pkt (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9e/tran_quiesce.9e b/usr/src/man/man9e/tran_quiesce.9e
index 4f2f7bdab5..d536a32ab4 100644
--- a/usr/src/man/man9e/tran_quiesce.9e
+++ b/usr/src/man/man9e/tran_quiesce.9e
@@ -63,7 +63,7 @@ An error occurred.
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for a description of the following attributes:
+See \fBattributes\fR(7) for a description of the following attributes:
.sp
.sp
@@ -77,4 +77,6 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBattributes\fR(5), \fBtran_bus_reset\fR(9E), \fBscsi_hba_tran\fR(9S)
+.BR attributes (7),
+.BR tran_bus_reset (9E),
+.BR scsi_hba_tran (9S)
diff --git a/usr/src/man/man9e/tran_reset.9e b/usr/src/man/man9e/tran_reset.9e
index 4e3770a3bf..2d104391c1 100644
--- a/usr/src/man/man9e/tran_reset.9e
+++ b/usr/src/man/man9e/tran_reset.9e
@@ -124,8 +124,12 @@ on failure.
The \fBtran_reset()\fR function can be called from user or interrupt context.
This requirement comes from \fBscsi_reset()\fR.
.SH SEE ALSO
-\fBattach\fR(9E), \fBddi_dma_buf_setup\fR(9F), \fBscsi_hba_attach\fR(9F),
-\fBscsi_reset\fR(9F), \fBscsi_address\fR(9S), \fBscsi_hba_tran\fR(9S)
+.BR attach (9E),
+.BR ddi_dma_buf_setup (9F),
+.BR scsi_hba_attach (9F),
+.BR scsi_reset (9F),
+.BR scsi_address (9S),
+.BR scsi_hba_tran (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9e/tran_reset_notify.9e b/usr/src/man/man9e/tran_reset_notify.9e
index 7919f576f9..2d2f452dfe 100644
--- a/usr/src/man/man9e/tran_reset_notify.9e
+++ b/usr/src/man/man9e/tran_reset_notify.9e
@@ -101,8 +101,11 @@ For \fBSCSI_RESET_CANCEL\fR requests, \fBtran_reset_notify()\fR must return
\fBDDI_SUCCESS\fR if the notification request has been canceled, and
\fBDDI_FAILURE\fR otherwise.
.SH SEE ALSO
-\fBattach\fR(9E), \fBscsi_ifgetcap\fR(9F), \fBscsi_reset_notify\fR(9F),
-\fBscsi_address\fR(9S), \fBscsi_hba_tran\fR(9S)
+.BR attach (9E),
+.BR scsi_ifgetcap (9F),
+.BR scsi_reset_notify (9F),
+.BR scsi_address (9S),
+.BR scsi_hba_tran (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9e/tran_setup_pkt.9e b/usr/src/man/man9e/tran_setup_pkt.9e
index 444f47b116..f465030411 100644
--- a/usr/src/man/man9e/tran_setup_pkt.9e
+++ b/usr/src/man/man9e/tran_setup_pkt.9e
@@ -215,13 +215,22 @@ undefined behavior.
.SH RETURN VALUES
\fBtran_setup_pkt()\fR must return zero on success, and \fB-1\fR on failure.
.SH SEE ALSO
-\fBattach\fR(9E), \fBtran_sync_pkt\fR(9E), \fBbioerror\fR(9F),
-\fBddi_dma_buf_bind_handle\fR(9F), \fBkmem_cache_create\fR(9F),
-\fBscsi_alloc_consistent_buf\fR(9F), \fBscsi_destroy_pkt\fR(9F),
-\fBscsi_hba_attach\fR(9F), \fBscsi_hba_pkt_alloc\fR(9F),
-\fBscsi_hba_pkt_comp\fR(9F), \fBscsi_hba_pkt_free\fR(9F),
-\fBscsi_init_pkt\fR(9F), \fBbuf\fR(9S), \fBscsi_address\fR(9S),
-\fBscsi_hba_tran\fR(9S), \fBscsi_pkt\fR(9S)
+.BR attach (9E),
+.BR tran_sync_pkt (9E),
+.BR bioerror (9F),
+.BR ddi_dma_buf_bind_handle (9F),
+.BR kmem_cache_create (9F),
+.BR scsi_alloc_consistent_buf (9F),
+.BR scsi_destroy_pkt (9F),
+.BR scsi_hba_attach (9F),
+.BR scsi_hba_pkt_alloc (9F),
+.BR scsi_hba_pkt_comp (9F),
+.BR scsi_hba_pkt_free (9F),
+.BR scsi_init_pkt (9F),
+.BR buf (9S),
+.BR scsi_address (9S),
+.BR scsi_hba_tran (9S),
+.BR scsi_pkt (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9e/tran_start.9e b/usr/src/man/man9e/tran_start.9e
index b94cec0ca4..65adaa817f 100644
--- a/usr/src/man/man9e/tran_start.9e
+++ b/usr/src/man/man9e/tran_start.9e
@@ -226,9 +226,14 @@ A fatal error has occurred in the \fBHBA. \fR
The \fBtran_start()\fR function can be called from user or interrupt context.
This requirement comes from \fBscsi_transport()\fR.
.SH SEE ALSO
-\fBattach\fR(9E), \fBtran_init_pkt\fR(9E), \fBscsi_hba_attach\fR(9F),
-\fBscsi_transport\fR(9F), \fBscsi_address\fR(9S), \fBscsi_arq_status\fR(9S),
-\fBscsi_hba_tran\fR(9S), \fBscsi_pkt\fR(9S)
+.BR attach (9E),
+.BR tran_init_pkt (9E),
+.BR scsi_hba_attach (9F),
+.BR scsi_transport (9F),
+.BR scsi_address (9S),
+.BR scsi_arq_status (9S),
+.BR scsi_hba_tran (9S),
+.BR scsi_pkt (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9e/tran_sync_pkt.9e b/usr/src/man/man9e/tran_sync_pkt.9e
index 8c957a236c..875d7c8dc4 100644
--- a/usr/src/man/man9e/tran_sync_pkt.9e
+++ b/usr/src/man/man9e/tran_sync_pkt.9e
@@ -49,9 +49,15 @@ data associated with the \fIpkt\fR, typically by calling
hardware-specific details, such as flushing \fBI/O\fR caches, or stalling
until hardware buffers have been drained.
.SH SEE ALSO
-\fBattach\fR(9E), \fBtran_init_pkt\fR(9E), \fBddi_dma_sync\fR(9F),
-\fBscsi_hba_attach\fR(9F), \fBscsi_init_pkt\fR(9F), \fBscsi_sync_pkt\fR(9F),
-\fBscsi_address\fR(9S), \fBscsi_hba_tran\fR(9S), \fBscsi_pkt\fR(9S)
+.BR attach (9E),
+.BR tran_init_pkt (9E),
+.BR ddi_dma_sync (9F),
+.BR scsi_hba_attach (9F),
+.BR scsi_init_pkt (9F),
+.BR scsi_sync_pkt (9F),
+.BR scsi_address (9S),
+.BR scsi_hba_tran (9S),
+.BR scsi_pkt (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9e/tran_tgt_free.9e b/usr/src/man/man9e/tran_tgt_free.9e
index 0642699897..ec84dd5cc5 100644
--- a/usr/src/man/man9e/tran_tgt_free.9e
+++ b/usr/src/man/man9e/tran_tgt_free.9e
@@ -69,8 +69,12 @@ should release any resources allocated during its \fBtran_tgt_init()\fR or
\fBtran_tgt_probe()\fR initialization performed for this target device
instance.
.SH SEE ALSO
-\fBattach\fR(9E), \fBdetach\fR(9E), \fBtran_tgt_init\fR(9E),
-\fBtran_tgt_probe\fR(9E), \fBscsi_device\fR(9S), \fBscsi_hba_tran\fR(9S)
+.BR attach (9E),
+.BR detach (9E),
+.BR tran_tgt_init (9E),
+.BR tran_tgt_probe (9E),
+.BR scsi_device (9S),
+.BR scsi_hba_tran (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9e/tran_tgt_init.9e b/usr/src/man/man9e/tran_tgt_init.9e
index 51c5519ab4..b93355b1b3 100644
--- a/usr/src/man/man9e/tran_tgt_init.9e
+++ b/usr/src/man/man9e/tran_tgt_init.9e
@@ -102,9 +102,13 @@ instance of the target device will not be continued, the target driver's
.RE
.SH SEE ALSO
-\fBattach\fR(9E), \fBprobe\fR(9E), \fBtran_tgt_free\fR(9E),
-\fBtran_tgt_probe\fR(9E), \fBscsi_hba_attach_setup\fR(9F),
-\fBscsi_device\fR(9S), \fBscsi_hba_tran\fR(9S)
+.BR attach (9E),
+.BR probe (9E),
+.BR tran_tgt_free (9E),
+.BR tran_tgt_probe (9E),
+.BR scsi_hba_attach_setup (9F),
+.BR scsi_device (9S),
+.BR scsi_hba_tran (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9e/tran_tgt_probe.9e b/usr/src/man/man9e/tran_tgt_probe.9e
index f086b6bbb6..dda518240d 100644
--- a/usr/src/man/man9e/tran_tgt_probe.9e
+++ b/usr/src/man/man9e/tran_tgt_probe.9e
@@ -87,9 +87,14 @@ Wait indefinitely for resources.
.RE
.SH SEE ALSO
-\fBattach\fR(9E), \fBprobe\fR(9E), \fBtran_tgt_free\fR(9E),
-\fBtran_tgt_init\fR(9E), \fBscsi_hba_probe\fR(9F), \fBscsi_probe\fR(9F),
-\fBscsi_device\fR(9S), \fBscsi_hba_tran\fR(9S)
+.BR attach (9E),
+.BR probe (9E),
+.BR tran_tgt_free (9E),
+.BR tran_tgt_init (9E),
+.BR scsi_hba_probe (9F),
+.BR scsi_probe (9F),
+.BR scsi_device (9S),
+.BR scsi_hba_tran (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9e/usba_hcdi.9e b/usr/src/man/man9e/usba_hcdi.9e
index c26a69e74f..db51202b44 100644
--- a/usr/src/man/man9e/usba_hcdi.9e
+++ b/usr/src/man/man9e/usba_hcdi.9e
@@ -36,7 +36,7 @@ DMA, and also act as the root hub.
.Sy hcdi
drivers are part of the illumos USB Architecture (USBA).
The
-.Xr usba 7D
+.Xr usba 4D
driver provides support for many of the surrounding needs of an
.Sy hcdi
driver and requires that such drivers implement a specific operations
@@ -270,7 +270,7 @@ They should not be used as they have gaps added by the compiler for alignment.
Once assembled, the device driver should call
.Xr usba_hubdi_bind_root_hub 9F .
This will cause an instance of the
-.Xr hubd 7D
+.Xr hubd 4D
driver to be attached and associated with the root controller.
As such, driver writers need to ensure that all initialization is done prior to
loading the root hub.
@@ -847,12 +847,12 @@ Due to the way host controller drivers need to interact with hotplug,
drivers should generally set the
.Sy ddi-forceattach
property to one in their
-.Xr driver.conf 4
+.Xr driver.conf 5
file.
.Sh SEE ALSO
-.Xr driver.conf 4 ,
-.Xr hubd 7D ,
-.Xr usba 7D ,
+.Xr hubd 4D ,
+.Xr usba 4D ,
+.Xr driver.conf 5 ,
.Xr attach 9E ,
.Xr close 9E ,
.Xr detach 9E ,
diff --git a/usr/src/man/man9e/usba_hcdi_cb_ops.9e b/usr/src/man/man9e/usba_hcdi_cb_ops.9e
index 14bceaaae1..bdd31bc570 100644
--- a/usr/src/man/man9e/usba_hcdi_cb_ops.9e
+++ b/usr/src/man/man9e/usba_hcdi_cb_ops.9e
@@ -101,7 +101,7 @@ and it should not perform any cloning or renumbering in its
entry point.
.Sh EXAMPLES
The following example is adapated from the
-.Xr xhci 7D
+.Xr xhci 4D
driver which shows how an HCD driver might arrange things.
This assumes that a driver is following the recommendations in
.Xr usba_hcdi 9E
@@ -218,7 +218,7 @@ _fini(void)
}
.Ed
.Sh SEE ALSO
-.Xr xhci 7D ,
+.Xr xhci 4D ,
.Xr attach 9E ,
.Xr close 9E ,
.Xr ioctl 9E ,
diff --git a/usr/src/man/man9e/write.9e b/usr/src/man/man9e/write.9e
index 4e41effc03..4498508f86 100644
--- a/usr/src/man/man9e/write.9e
+++ b/usr/src/man/man9e/write.9e
@@ -100,8 +100,12 @@ xxwrite(dev_t dev, struct uio *uiop, cred_t *credp)
.SH SEE ALSO
.sp
.LP
-\fBread\fR(2), \fBwrite\fR(2), \fBread\fR(9E), \fBphysio\fR(9F),
-\fBcb_ops\fR(9S), \fBuio\fR(9S)
+.BR read (2),
+.BR write (2),
+.BR read (9E),
+.BR physio (9F),
+.BR cb_ops (9S),
+.BR uio (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/Intro.9f b/usr/src/man/man9f/Intro.9f
index cbf25e453c..3e0627b878 100644
--- a/usr/src/man/man9f/Intro.9f
+++ b/usr/src/man/man9f/Intro.9f
@@ -801,4 +801,5 @@ _
.TE
.SH SEE ALSO
-\fBIntro\fR(9E), \fBmutex\fR(9F)
+.BR Intro (9E),
+.BR mutex (9F)
diff --git a/usr/src/man/man9f/RD.9f b/usr/src/man/man9f/RD.9f
index 87ebf21435..eba272e4ad 100644
--- a/usr/src/man/man9f/RD.9f
+++ b/usr/src/man/man9f/RD.9f
@@ -60,7 +60,8 @@ See the \fBqreply\fR(9F) function page for an example of \fBRD()\fR.
.SH SEE ALSO
.sp
.LP
-\fBqreply\fR(9F), \fBWR\fR(9F)
+.BR WR (9F),
+.BR qreply (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/SAMESTR.9f b/usr/src/man/man9f/SAMESTR.9f
index 9c1f2bc3db..3ffdf49d0c 100644
--- a/usr/src/man/man9f/SAMESTR.9f
+++ b/usr/src/man/man9f/SAMESTR.9f
@@ -53,7 +53,7 @@ The \fBSAMESTR()\fR function can be called from user, interrupt, context.
.SH SEE ALSO
.sp
.LP
-\fBOTHERQ\fR(9F)
+.BR OTHERQ (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/STRUCT_DECL.9f b/usr/src/man/man9f/STRUCT_DECL.9f
index fb80a1c341..479293aee0 100644
--- a/usr/src/man/man9f/STRUCT_DECL.9f
+++ b/usr/src/man/man9f/STRUCT_DECL.9f
@@ -433,7 +433,7 @@ wput_iocdata(queue_t *q, mblk_t *msgp)
.in -2
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -447,7 +447,10 @@ Interface Stability Evolving
.TE
.SH SEE ALSO
-\fBdevmap\fR(9E), \fBioctl\fR(9E), \fBmmap\fR(9E), \fBddi_mmap_get_model\fR(9F)
+.BR devmap (9E),
+.BR ioctl (9E),
+.BR mmap (9E),
+.BR ddi_mmap_get_model (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/WR.9f b/usr/src/man/man9f/WR.9f
index 57c40abd5e..15211e932b 100644
--- a/usr/src/man/man9f/WR.9f
+++ b/usr/src/man/man9f/WR.9f
@@ -77,7 +77,9 @@ module-specific data structure for the minor device.
.SH SEE ALSO
.sp
.LP
-\fBclose\fR(9E), \fBOTHERQ\fR(9F), \fBRD\fR(9F)
+.BR close (9E),
+.BR OTHERQ (9F),
+.BR RD (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/allocb.9f b/usr/src/man/man9f/allocb.9f
index dee1712720..39295b9388 100644
--- a/usr/src/man/man9f/allocb.9f
+++ b/usr/src/man/man9f/allocb.9f
@@ -195,8 +195,14 @@ the \fBputnext\fR(9F) function is used to send the message upstream, returning
.SH SEE ALSO
.sp
.LP
-\fBRD\fR(9F), \fBbufcall\fR(9F), \fBesballoc\fR(9F), \fBesbbcall\fR(9F),
-\fBputnext\fR(9F), \fBtestb\fR(9F), \fBdatab\fR(9S), \fBmsgb\fR(9S)
+.BR RD (9F),
+.BR bufcall (9F),
+.BR esballoc (9F),
+.BR esbbcall (9F),
+.BR putnext (9F),
+.BR testb (9F),
+.BR datab (9S),
+.BR msgb (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/atomic_add.9f b/usr/src/man/man9f/atomic_add.9f
index fbdf7ba79f..927f0ea1f5 100644
--- a/usr/src/man/man9f/atomic_add.9f
+++ b/usr/src/man/man9f/atomic_add.9f
@@ -124,7 +124,7 @@ These functions can be called from user, interrupt, or kernel context.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -140,10 +140,16 @@ Interface Stability Committed
.SH SEE ALSO
.sp
.LP
-\fBatomic_and\fR(9F), \fBatomic_bits\fR(9F), \fBatomic_cas\fR(9F),
-\fBatomic_dec\fR(9F), \fBatomic_inc\fR(9F), \fBatomic_or\fR(9F),
-\fBatomic_swap\fR(9F), \fBmembar_ops\fR(9F), \fBattributes\fR(5),
-\fBatomic_ops\fR(3C)
+.BR atomic_ops (3C),
+.BR attributes (7),
+.BR atomic_and (9F),
+.BR atomic_bits (9F),
+.BR atomic_cas (9F),
+.BR atomic_dec (9F),
+.BR atomic_inc (9F),
+.BR atomic_or (9F),
+.BR atomic_swap (9F),
+.BR membar_ops (9F)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man9f/atomic_and.9f b/usr/src/man/man9f/atomic_and.9f
index 2d58b52e44..d6aa37fbb4 100644
--- a/usr/src/man/man9f/atomic_and.9f
+++ b/usr/src/man/man9f/atomic_and.9f
@@ -114,7 +114,7 @@ These functions can be called from user, interrupt, or kernel context.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -130,10 +130,16 @@ Interface Stability Committed
.SH SEE ALSO
.sp
.LP
-\fBatomic_add\fR(9F), \fBatomic_bits\fR(9F), \fBatomic_cas\fR(9F),
-\fBatomic_dec\fR(9F), \fBatomic_inc\fR(9F), \fBatomic_or\fR(9F),
-\fBatomic_swap\fR(9F), \fBmembar_ops\fR(9F), \fBattributes\fR(5),
-\fBatomic_ops\fR(3C)
+.BR atomic_ops (3C),
+.BR attributes (7),
+.BR atomic_add (9F),
+.BR atomic_bits (9F),
+.BR atomic_cas (9F),
+.BR atomic_dec (9F),
+.BR atomic_inc (9F),
+.BR atomic_or (9F),
+.BR atomic_swap (9F),
+.BR membar_ops (9F)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man9f/atomic_bits.9f b/usr/src/man/man9f/atomic_bits.9f
index 75abf98414..638485c527 100644
--- a/usr/src/man/man9f/atomic_bits.9f
+++ b/usr/src/man/man9f/atomic_bits.9f
@@ -46,7 +46,7 @@ These functions can be called from user, interrupt, or kernel context.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -62,7 +62,13 @@ Interface Stability Committed
.SH SEE ALSO
.sp
.LP
-\fBatomic_add\fR(9F), \fBatomic_and\fR(9F), \fBatomic_cas\fR(9F),
-\fBatomic_dec\fR(9F), \fBatomic_inc\fR(9F), \fBatomic_or\fR(9F),
-\fBatomic_swap\fR(9F), \fBmembar_ops\fR(9F), \fBattributes\fR(5),
-\fBatomic_ops\fR(3C)
+.BR atomic_ops (3C),
+.BR attributes (7),
+.BR atomic_add (9F),
+.BR atomic_and (9F),
+.BR atomic_cas (9F),
+.BR atomic_dec (9F),
+.BR atomic_inc (9F),
+.BR atomic_or (9F),
+.BR atomic_swap (9F),
+.BR membar_ops (9F)
diff --git a/usr/src/man/man9f/atomic_cas.9f b/usr/src/man/man9f/atomic_cas.9f
index 23c21eca9a..0e383224f6 100644
--- a/usr/src/man/man9f/atomic_cas.9f
+++ b/usr/src/man/man9f/atomic_cas.9f
@@ -86,7 +86,7 @@ These functions can be called from user, interrupt, or kernel context.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -102,7 +102,13 @@ Interface Stability Committed
.SH SEE ALSO
.sp
.LP
-\fBatomic_add\fR(9F), \fBatomic_and\fR(9F), \fBatomic_bits\fR(9F),
-\fBatomic_dec\fR(9F), \fBatomic_inc\fR(9F), \fBatomic_or\fR(9F),
-\fBatomic_swap\fR(9F), \fBmembar_ops\fR(9F), \fBattributes\fR(5),
-\fBatomic_ops\fR(3C)
+.BR atomic_ops (3C),
+.BR attributes (7),
+.BR atomic_add (9F),
+.BR atomic_and (9F),
+.BR atomic_bits (9F),
+.BR atomic_dec (9F),
+.BR atomic_inc (9F),
+.BR atomic_or (9F),
+.BR atomic_swap (9F),
+.BR membar_ops (9F)
diff --git a/usr/src/man/man9f/atomic_dec.9f b/usr/src/man/man9f/atomic_dec.9f
index fc4bd7941e..23903ff2e9 100644
--- a/usr/src/man/man9f/atomic_dec.9f
+++ b/usr/src/man/man9f/atomic_dec.9f
@@ -126,7 +126,7 @@ These functions can be called from user, interrupt, or kernel context.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -142,10 +142,16 @@ Interface Stability Committed
.SH SEE ALSO
.sp
.LP
-\fBatomic_add\fR(9F), \fBatomic_and\fR(9F), \fBatomic_bits\fR(9F),
-\fBatomic_cas\fR(9F), \fBatomic_inc\fR(9F), \fBatomic_or\fR(9F),
-\fBatomic_swap\fR(9F), \fBmembar_ops\fR(9F), \fBattributes\fR(5),
-\fBatomic_ops\fR(3C)
+.BR atomic_ops (3C),
+.BR attributes (7),
+.BR atomic_add (9F),
+.BR atomic_and (9F),
+.BR atomic_bits (9F),
+.BR atomic_cas (9F),
+.BR atomic_inc (9F),
+.BR atomic_or (9F),
+.BR atomic_swap (9F),
+.BR membar_ops (9F)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man9f/atomic_inc.9f b/usr/src/man/man9f/atomic_inc.9f
index 3c3eab84f8..126fdadaf6 100644
--- a/usr/src/man/man9f/atomic_inc.9f
+++ b/usr/src/man/man9f/atomic_inc.9f
@@ -126,7 +126,7 @@ These functions can be called from user, interrupt, or kernel context.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -142,10 +142,16 @@ Interface Stability Committed
.SH SEE ALSO
.sp
.LP
-\fBatomic_add\fR(9F), \fBatomic_and\fR(9F), \fBatomic_bits\fR(9F),
-\fBatomic_cas\fR(9F), \fBatomic_dec\fR(9F), \fBatomic_or\fR(9F),
-\fBatomic_swap\fR(9F), \fBmembar_ops\fR(9F), \fBattributes\fR(5),
-\fBatomic_ops\fR(3C)
+.BR atomic_ops (3C),
+.BR attributes (7),
+.BR atomic_add (9F),
+.BR atomic_and (9F),
+.BR atomic_bits (9F),
+.BR atomic_cas (9F),
+.BR atomic_dec (9F),
+.BR atomic_or (9F),
+.BR atomic_swap (9F),
+.BR membar_ops (9F)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man9f/atomic_ops.9f b/usr/src/man/man9f/atomic_ops.9f
index 6c41335ea7..e77f3bc22b 100644
--- a/usr/src/man/man9f/atomic_ops.9f
+++ b/usr/src/man/man9f/atomic_ops.9f
@@ -95,7 +95,7 @@ the old value of the variable.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -111,10 +111,16 @@ Interface Stability Committed
.SH SEE ALSO
.sp
.LP
-\fBatomic_add\fR(9F), \fBatomic_and\fR(9F), \fBatomic_bits\fR(9F),
-\fBatomic_cas\fR(9F), \fBatomic_dec\fR(9F), \fBatomic_inc\fR(9F),
-\fBatomic_or\fR(9F), \fBatomic_swap\fR(9F), \fBmembar_ops\fR(9F),
-\fBattributes\fR(5)
+.BR attributes (7),
+.BR atomic_add (9F),
+.BR atomic_and (9F),
+.BR atomic_bits (9F),
+.BR atomic_cas (9F),
+.BR atomic_dec (9F),
+.BR atomic_inc (9F),
+.BR atomic_or (9F),
+.BR atomic_swap (9F),
+.BR membar_ops (9F)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man9f/atomic_or.9f b/usr/src/man/man9f/atomic_or.9f
index 2b94505250..1631d73afe 100644
--- a/usr/src/man/man9f/atomic_or.9f
+++ b/usr/src/man/man9f/atomic_or.9f
@@ -113,7 +113,7 @@ These functions can be called from user, interrupt, or kernel context.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -129,10 +129,16 @@ Interface Stability Committed
.SH SEE ALSO
.sp
.LP
-\fBatomic_add\fR(9F), \fBatomic_and\fR(9F), \fBatomic_bits\fR(9F),
-\fBatomic_cas\fR(9F), \fBatomic_dec\fR(9F), \fBatomic_inc\fR(9F),
-\fBatomic_swap\fR(9F), \fBmembar_ops\fR(9F), \fBattributes\fR(5),
-\fBatomic_ops\fR(3C)
+.BR atomic_ops (3C),
+.BR attributes (7),
+.BR atomic_add (9F),
+.BR atomic_and (9F),
+.BR atomic_bits (9F),
+.BR atomic_cas (9F),
+.BR atomic_dec (9F),
+.BR atomic_inc (9F),
+.BR atomic_swap (9F),
+.BR membar_ops (9F)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man9f/atomic_swap.9f b/usr/src/man/man9f/atomic_swap.9f
index 240afe3bde..746ac77767 100644
--- a/usr/src/man/man9f/atomic_swap.9f
+++ b/usr/src/man/man9f/atomic_swap.9f
@@ -78,7 +78,7 @@ These functions can be called from user, interrupt, or kernel context.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -94,7 +94,13 @@ Interface Stability Committed
.SH SEE ALSO
.sp
.LP
-\fBatomic_add\fR(9F), \fBatomic_and\fR(9F), \fBatomic_bits\fR(9F),
-\fBatomic_dec\fR(9F), \fBatomic_inc\fR(9F), \fBatomic_or\fR(9F),
-\fBatomic_cas\fR(9F), \fBmembar_ops\fR(9F), \fBattributes\fR(5),
-\fBatomic_ops\fR(3C)
+.BR atomic_ops (3C),
+.BR attributes (7),
+.BR atomic_add (9F),
+.BR atomic_and (9F),
+.BR atomic_bits (9F),
+.BR atomic_cas (9F),
+.BR atomic_dec (9F),
+.BR atomic_inc (9F),
+.BR atomic_or (9F),
+.BR membar_ops (9F)
diff --git a/usr/src/man/man9f/backq.9f b/usr/src/man/man9f/backq.9f
index 8e041b6bb8..3b302b148d 100644
--- a/usr/src/man/man9f/backq.9f
+++ b/usr/src/man/man9f/backq.9f
@@ -54,7 +54,7 @@ context.
.SH SEE ALSO
.sp
.LP
-\fBqueue\fR(9S)
+.BR queue (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/bcanput.9f b/usr/src/man/man9f/bcanput.9f
index 22dbcde4f2..4ddc4627ec 100644
--- a/usr/src/man/man9f/bcanput.9f
+++ b/usr/src/man/man9f/bcanput.9f
@@ -86,8 +86,11 @@ context.
.SH SEE ALSO
.sp
.LP
-\fBbcanputnext\fR(9F), \fBcanput\fR(9F), \fBcanputnext\fR(9F), \fBputbq\fR(9F),
-\fBputnext\fR(9F)
+.BR bcanputnext (9F),
+.BR canput (9F),
+.BR canputnext (9F),
+.BR putbq (9F),
+.BR putnext (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/bcmp.9f b/usr/src/man/man9f/bcmp.9f
index 4ced6ed42d..365dc86675 100644
--- a/usr/src/man/man9f/bcmp.9f
+++ b/usr/src/man/man9f/bcmp.9f
@@ -67,7 +67,7 @@ context.
.SH SEE ALSO
.sp
.LP
-\fBstrcmp\fR(9F)
+.BR strcmp (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/bcopy.9f b/usr/src/man/man9f/bcopy.9f
index b73276c8c1..1e71d54592 100644
--- a/usr/src/man/man9f/bcopy.9f
+++ b/usr/src/man/man9f/bcopy.9f
@@ -109,7 +109,8 @@ disk and the buffer are part of the kernel address space.
.SH SEE ALSO
.sp
.LP
-\fBcopyin\fR(9F), \fBcopyout\fR(9F)
+.BR copyin (9F),
+.BR copyout (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/bioclone.9f b/usr/src/man/man9f/bioclone.9f
index a1ef08525b..1b803b66fc 100644
--- a/usr/src/man/man9f/bioclone.9f
+++ b/usr/src/man/man9f/bioclone.9f
@@ -191,8 +191,11 @@ stripe_done(struct buf *bp)
.in -2
.SH SEE ALSO
-\fBbiodone\fR(9F), \fBbp_mapin\fR(9F), \fBfreerbuf\fR(9F), \fBgetrbuf\fR(9F),
-\fBbuf\fR(9S)
+.BR biodone (9F),
+.BR bp_mapin (9F),
+.BR freerbuf (9F),
+.BR getrbuf (9F),
+.BR buf (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/biodone.9f b/usr/src/man/man9f/biodone.9f
index 843745190b..6187555195 100644
--- a/usr/src/man/man9f/biodone.9f
+++ b/usr/src/man/man9f/biodone.9f
@@ -107,8 +107,14 @@ device, the routine will report an error condition. In either case, report the
.SH SEE ALSO
.sp
.LP
-\fBread\fR(2), \fBstrategy\fR(9E), \fBbiowait\fR(9F), \fBddi_add_intr\fR(9F),
-\fBdelay\fR(9F), \fBtimeout\fR(9F), \fBuntimeout\fR(9F), \fBbuf\fR(9S)
+.BR read (2),
+.BR strategy (9E),
+.BR biowait (9F),
+.BR ddi_add_intr (9F),
+.BR delay (9F),
+.BR timeout (9F),
+.BR untimeout (9F),
+.BR buf (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/bioerror.9f b/usr/src/man/man9f/bioerror.9f
index 7a5f267aa0..a36db477f9 100644
--- a/usr/src/man/man9f/bioerror.9f
+++ b/usr/src/man/man9f/bioerror.9f
@@ -48,4 +48,7 @@ call to \fBgeterror\fR(9F) will return \fB0\fR.
.SH CONTEXT
\fBbioerror()\fR can be called from any context.
.SH SEE ALSO
-\fBstrategy\fR(9E), \fBgeterror\fR(9F), \fBgetrbuf\fR(9F), \fBbuf\fR(9S)
+.BR strategy (9E),
+.BR geterror (9F),
+.BR getrbuf (9F),
+.BR buf (9S)
diff --git a/usr/src/man/man9f/biofini.9f b/usr/src/man/man9f/biofini.9f
index 9afe2877e4..786721043f 100644
--- a/usr/src/man/man9f/biofini.9f
+++ b/usr/src/man/man9f/biofini.9f
@@ -48,8 +48,13 @@ kmem_free(bp, biosize());
.in -2
.SH SEE ALSO
-\fBbioinit\fR(9F), \fBbioreset\fR(9F), \fBbiosize\fR(9F), \fBfreerbuf\fR(9F),
-\fBkmem_alloc\fR(9F), \fBkmem_free\fR(9F), \fBbuf\fR(9S)
+.BR bioinit (9F),
+.BR bioreset (9F),
+.BR biosize (9F),
+.BR freerbuf (9F),
+.BR kmem_alloc (9F),
+.BR kmem_free (9F),
+.BR buf (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/bioinit.9f b/usr/src/man/man9f/bioinit.9f
index a643404c93..525c8c3f3a 100644
--- a/usr/src/man/man9f/bioinit.9f
+++ b/usr/src/man/man9f/bioinit.9f
@@ -46,8 +46,12 @@ bioinit(bp);
.in -2
.SH SEE ALSO
-\fBbiofini\fR(9F), \fBbioreset\fR(9F), \fBbiosize\fR(9F), \fBgetrbuf\fR(9F),
-\fBkmem_alloc\fR(9F), \fBbuf\fR(9S)
+.BR biofini (9F),
+.BR bioreset (9F),
+.BR biosize (9F),
+.BR getrbuf (9F),
+.BR kmem_alloc (9F),
+.BR buf (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/biomodified.9f b/usr/src/man/man9f/biomodified.9f
index 14c8c57a7a..ffd02f6156 100644
--- a/usr/src/man/man9f/biomodified.9f
+++ b/usr/src/man/man9f/biomodified.9f
@@ -77,7 +77,8 @@ Buffer is not used for paged \fBI/O\fR request.
.SH CONTEXT
\fBbiomodified()\fR can be called from any context.
.SH SEE ALSO
-\fBbp_mapin\fR(9F), \fBbuf\fR(9S)
+.BR bp_mapin (9F),
+.BR buf (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/bioreset.9f b/usr/src/man/man9f/bioreset.9f
index bc6638b764..59ed9b5738 100644
--- a/usr/src/man/man9f/bioreset.9f
+++ b/usr/src/man/man9f/bioreset.9f
@@ -36,7 +36,13 @@ allocated by \fBgetrbuf()\fR or initialized by \fBbioinit\fR(9F).
.SH CONTEXT
\fBbioreset()\fR can be called from any context.
.SH SEE ALSO
-\fBstrategy\fR(9E), \fBbioinit\fR(9F), \fBbiofini\fR(9F), \fBfreerbuf\fR(9F),
-\fBgetrbuf\fR(9F), \fBkmem_alloc\fR(9F), \fBkmem_free\fR(9F), \fBbuf\fR(9S)
+.BR strategy (9E),
+.BR biofini (9F),
+.BR bioinit (9F),
+.BR freerbuf (9F),
+.BR getrbuf (9F),
+.BR kmem_alloc (9F),
+.BR kmem_free (9F),
+.BR buf (9S)
.SH NOTES
\fIbp\fR must not describe a transfer in progress.
diff --git a/usr/src/man/man9f/biosize.9f b/usr/src/man/man9f/biosize.9f
index 772bd0125f..6107e972bc 100644
--- a/usr/src/man/man9f/biosize.9f
+++ b/usr/src/man/man9f/biosize.9f
@@ -24,8 +24,11 @@ embedded in other data structures.
.SH CONTEXT
The \fBbiosize()\fR function can be called from any context.
.SH SEE ALSO
-\fBbiofini\fR(9F), \fBbioinit\fR(9F), \fBgetrbuf\fR(9F), \fBkmem_alloc\fR(9F),
-\fBbuf\fR(9S)
+.BR biofini (9F),
+.BR bioinit (9F),
+.BR getrbuf (9F),
+.BR kmem_alloc (9F),
+.BR buf (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/biowait.9f b/usr/src/man/man9f/biowait.9f
index b282671e11..b2268f5d67 100644
--- a/usr/src/man/man9f/biowait.9f
+++ b/usr/src/man/man9f/biowait.9f
@@ -70,7 +70,10 @@ the error number which it returns.
.SH SEE ALSO
.sp
.LP
-\fBbiodone\fR(9F), \fBgeterror\fR(9F), \fBgetrbuf\fR(9F), \fBbuf\fR(9S)
+.BR biodone (9F),
+.BR geterror (9F),
+.BR getrbuf (9F),
+.BR buf (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/bp_copyin.9f b/usr/src/man/man9f/bp_copyin.9f
index 4c9030d7ac..c2db2cda79 100644
--- a/usr/src/man/man9f/bp_copyin.9f
+++ b/usr/src/man/man9f/bp_copyin.9f
@@ -78,5 +78,8 @@ The \fBbp_copyin()\fR function can be called from user or kernel context only.
.SH SEE ALSO
.sp
.LP
-\fBbp_copyout\fR(9F), \fBbp_mapin\fR(9F), \fBbp_mapout\fR(9F),
-\fBddi_copyout\fR(9F), \fBbuf\fR(9S)
+.BR bp_copyout (9F),
+.BR bp_mapin (9F),
+.BR bp_mapout (9F),
+.BR ddi_copyout (9F),
+.BR buf (9S)
diff --git a/usr/src/man/man9f/bp_copyout.9f b/usr/src/man/man9f/bp_copyout.9f
index 40feafdfd7..4925e36807 100644
--- a/usr/src/man/man9f/bp_copyout.9f
+++ b/usr/src/man/man9f/bp_copyout.9f
@@ -78,5 +78,8 @@ The \fBbp_copyout()\fR function can be called from user or kernel context only.
.SH SEE ALSO
.sp
.LP
-\fBbp_copyin\fR(9F), \fBbp_mapin\fR(9F), \fBbp_mapout\fR(9F),
-\fBddi_copyout\fR(9F), \fBbuf\fR(9S)
+.BR bp_copyin (9F),
+.BR bp_mapin (9F),
+.BR bp_mapout (9F),
+.BR ddi_copyout (9F),
+.BR buf (9S)
diff --git a/usr/src/man/man9f/bp_mapin.9f b/usr/src/man/man9f/bp_mapin.9f
index 594118d57c..c69479b1c2 100644
--- a/usr/src/man/man9f/bp_mapin.9f
+++ b/usr/src/man/man9f/bp_mapin.9f
@@ -52,7 +52,8 @@ space and no mapping is performed.
.SH SEE ALSO
.sp
.LP
-\fBbp_mapout\fR(9F), \fBbuf\fR(9S)
+.BR bp_mapout (9F),
+.BR buf (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/bp_mapout.9f b/usr/src/man/man9f/bp_mapout.9f
index 2cbb13218e..3a869fbcbc 100644
--- a/usr/src/man/man9f/bp_mapout.9f
+++ b/usr/src/man/man9f/bp_mapout.9f
@@ -49,7 +49,9 @@ out any kernel mapping that a layer above the device driver might rely on.
.SH SEE ALSO
.sp
.LP
-\fBstrategy\fR(9E), \fBbp_mapin\fR(9F), \fBbuf\fR(9S)
+.BR strategy (9E),
+.BR bp_mapin (9F),
+.BR buf (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/btop.9f b/usr/src/man/man9f/btop.9f
index 7524c12ee5..78432597f4 100644
--- a/usr/src/man/man9f/btop.9f
+++ b/usr/src/man/man9f/btop.9f
@@ -52,7 +52,9 @@ context.
.SH SEE ALSO
.sp
.LP
-\fBbtopr\fR(9F), \fBddi_btop\fR(9F), \fBptob\fR(9F)
+.BR btopr (9F),
+.BR ddi_btop (9F),
+.BR ptob (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/btopr.9f b/usr/src/man/man9f/btopr.9f
index 048b579ab8..50553e1bd1 100644
--- a/usr/src/man/man9f/btopr.9f
+++ b/usr/src/man/man9f/btopr.9f
@@ -51,7 +51,9 @@ context.
.SH SEE ALSO
.sp
.LP
-\fBbtop\fR(9F), \fBddi_btopr\fR(9F), \fBptob\fR(9F)
+.BR btop (9F),
+.BR ddi_btopr (9F),
+.BR ptob (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/bufcall.9f b/usr/src/man/man9f/bufcall.9f
index dadc4f2169..125461a101 100644
--- a/usr/src/man/man9f/bufcall.9f
+++ b/usr/src/man/man9f/bufcall.9f
@@ -173,9 +173,16 @@ time.
.SH SEE ALSO
.sp
.LP
-\fBsrv\fR(9E), \fBallocb\fR(9F), \fBcanputnext\fR(9F), \fBesballoc\fR(9F),
-\fBesbbcall\fR(9F), \fBputnext\fR(9F), \fBqenable\fR(9F), \fBtestb\fR(9F),
-\fBtimeout\fR(9F), \fBunbufcall\fR(9F)
+.BR srv (9E),
+.BR allocb (9F),
+.BR canputnext (9F),
+.BR esballoc (9F),
+.BR esbbcall (9F),
+.BR putnext (9F),
+.BR qenable (9F),
+.BR testb (9F),
+.BR timeout (9F),
+.BR unbufcall (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/bzero.9f b/usr/src/man/man9f/bzero.9f
index ce3ac6012c..365362a76d 100644
--- a/usr/src/man/man9f/bzero.9f
+++ b/usr/src/man/man9f/bzero.9f
@@ -46,7 +46,9 @@ The \fBbzero()\fR function can be called from user, interrupt, or kernel
context.
.SH SEE ALSO
.LP
-\fBbcopy\fR(9F), \fBclrbuf\fR(9F), \fBkmem_zalloc\fR(9F)
+.BR bcopy (9F),
+.BR clrbuf (9F),
+.BR kmem_zalloc (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/canput.9f b/usr/src/man/man9f/canput.9f
index dfeab6c291..07a4cb07e4 100644
--- a/usr/src/man/man9f/canput.9f
+++ b/usr/src/man/man9f/canput.9f
@@ -70,8 +70,11 @@ If the queue is full.
.SH SEE ALSO
.sp
.LP
-\fBbcanput\fR(9F), \fBbcanputnext\fR(9F), \fBcanputnext\fR(9F),
-\fBputbq\fR(9F), \fBputnext\fR(9F)
+.BR bcanput (9F),
+.BR bcanputnext (9F),
+.BR canputnext (9F),
+.BR putbq (9F),
+.BR putnext (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/clrbuf.9f b/usr/src/man/man9f/clrbuf.9f
index a64e0ddeb9..f527bcfef0 100644
--- a/usr/src/man/man9f/clrbuf.9f
+++ b/usr/src/man/man9f/clrbuf.9f
@@ -48,7 +48,8 @@ context.
.SH SEE ALSO
.sp
.LP
-\fBgetrbuf\fR(9F), \fBbuf\fR(9S)
+.BR getrbuf (9F),
+.BR buf (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/cmn_err.9f b/usr/src/man/man9f/cmn_err.9f
index d9bf8778a9..e6ea5aac71 100644
--- a/usr/src/man/man9f/cmn_err.9f
+++ b/usr/src/man/man9f/cmn_err.9f
@@ -110,7 +110,7 @@ but includes an additional argument:
.It Fa zoneid
Zone to which log messages should be directed.
See
-.Xr zones 5 .
+.Xr zones 7 .
.El
.Ss Fn vzcmn_err
The
@@ -122,7 +122,7 @@ but includes an additional argument:
.It Fa zoneid
Zone to which log messages should be directed.
See
-.Xr zones 5 .
+.Xr zones 7 .
.El
.Sh DESCRIPTION
.Ss Fn cmn_err
@@ -200,14 +200,14 @@ is also
the message is always sent to the system log, but is only written to the console
when the system has been booted in verbose mode.
See
-.Xr kernel 1M .
+.Xr kernel 8 .
If neither condition is met, the
.Qq Sy \&?
character has no effect and is simply ignored.
.El
.Pp
Refer to
-.Xr syslogd 1M
+.Xr syslogd 8
to determine where the system log is written.
.Pp
The
@@ -274,7 +274,7 @@ Using
will cause messages to be sent to the log associated with the specified local
zone rather than the log in the global zone.
This is accomplished by the message being received and processed by the
-.Xr syslogd 1M
+.Xr syslogd 8
process running in the specified zone instead of the one running in the global
zone.
You can retrieve a process zone ID from its credential structure using
@@ -415,9 +415,9 @@ zcmn_err(crgetzoneid(ddi_get_cred()), CE_NOTE, "out of processes");
.Ed
.El
.Sh SEE ALSO
-.Xr dmesg 1M ,
-.Xr kernel 1M ,
-.Xr zones 5 ,
+.Xr zones 7 ,
+.Xr dmesg 8 ,
+.Xr kernel 8 ,
.Xr ddi_binding_name 9F ,
.Xr ddi_cred 9F ,
.Xr ddi_driver_name 9F ,
diff --git a/usr/src/man/man9f/copyb.9f b/usr/src/man/man9f/copyb.9f
index 591aa8a477..4d01d777b1 100644
--- a/usr/src/man/man9f/copyb.9f
+++ b/usr/src/man/man9f/copyb.9f
@@ -116,7 +116,9 @@ of the list, reschedule this routine.
.SH SEE ALSO
.sp
.LP
-\fBallocb\fR(9F), \fBcanputnext\fR(9F), \fBdupmsg\fR(9F)
+.BR allocb (9F),
+.BR canputnext (9F),
+.BR dupmsg (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/copyin.9f b/usr/src/man/man9f/copyin.9f
index f892cf6fe2..543c321dc2 100644
--- a/usr/src/man/man9f/copyin.9f
+++ b/usr/src/man/man9f/copyin.9f
@@ -145,7 +145,7 @@ returned.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for a description of the following attributes:
+See \fBattributes\fR(7) for a description of the following attributes:
.sp
.sp
@@ -161,8 +161,13 @@ Stability Level Obsolete
.SH SEE ALSO
.sp
.LP
-\fBattributes\fR(5), \fBioctl\fR(9E), \fBbcopy\fR(9F), \fBcopyout\fR(9F),
-\fBddi_copyin\fR(9F), \fBddi_copyout\fR(9F), \fBuiomove\fR(9F)
+.BR attributes (7),
+.BR ioctl (9E),
+.BR bcopy (9F),
+.BR copyout (9F),
+.BR ddi_copyin (9F),
+.BR ddi_copyout (9F),
+.BR uiomove (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/copymsg.9f b/usr/src/man/man9f/copymsg.9f
index 33b1fd3f47..627e5e9b42 100644
--- a/usr/src/man/man9f/copymsg.9f
+++ b/usr/src/man/man9f/copymsg.9f
@@ -94,7 +94,9 @@ message is returned (line 21).
.SH SEE ALSO
.sp
.LP
-\fBallocb\fR(9F), \fBcopyb\fR(9F), \fBmsgb\fR(9S)
+.BR allocb (9F),
+.BR copyb (9F),
+.BR msgb (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/copyout.9f b/usr/src/man/man9f/copyout.9f
index a994d8b50e..e4729b4859 100644
--- a/usr/src/man/man9f/copyout.9f
+++ b/usr/src/man/man9f/copyout.9f
@@ -143,7 +143,7 @@ returned.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for a description of the following attributes:
+See \fBattributes\fR(7) for a description of the following attributes:
.sp
.sp
@@ -159,8 +159,13 @@ Stability Level Obsolete
.SH SEE ALSO
.sp
.LP
-\fBattributes\fR(5), \fBioctl\fR(9E), \fBbcopy\fR(9F), \fBcopyin\fR(9F),
-\fBddi_copyin\fR(9F), \fBddi_copyout\fR(9F), \fBuiomove\fR(9F)
+.BR attributes (7),
+.BR ioctl (9E),
+.BR bcopy (9F),
+.BR copyin (9F),
+.BR ddi_copyin (9F),
+.BR ddi_copyout (9F),
+.BR uiomove (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/csx_AccessConfigurationRegister.9f b/usr/src/man/man9f/csx_AccessConfigurationRegister.9f
index cc3778747c..efd1fde123 100644
--- a/usr/src/man/man9f/csx_AccessConfigurationRegister.9f
+++ b/usr/src/man/man9f/csx_AccessConfigurationRegister.9f
@@ -178,8 +178,10 @@ No \fBPCMCIA \fRhardware installed.
.SH CONTEXT
This function may be called from user or kernel context.
.SH SEE ALSO
-\fBcsx_ParseTuple\fR(9F), \fBcsx_RegisterClient\fR(9F),
-\fBcsx_RequestConfiguration\fR(9F), \fBcsx_ResetFunction\fR(9F)
+.BR csx_ParseTuple (9F),
+.BR csx_RegisterClient (9F),
+.BR csx_RequestConfiguration (9F),
+.BR csx_ResetFunction (9F)
.sp
.LP
\fIPCCard 95 Standard, PCMCIA/JEIDA\fR
diff --git a/usr/src/man/man9f/csx_CS_DDI_Info.9f b/usr/src/man/man9f/csx_CS_DDI_Info.9f
index 2008bc7e0d..6652a4b6b1 100644
--- a/usr/src/man/man9f/csx_CS_DDI_Info.9f
+++ b/usr/src/man/man9f/csx_CS_DDI_Info.9f
@@ -160,7 +160,9 @@ pcepp_getinfo(dev_info_t *dip, ddi_info_cmd_t cmd, void *arg,
.in -2
.SH SEE ALSO
-\fBgetinfo\fR(9E), \fBcsx_RegisterClient\fR(9F), \fBddi_get_instance\fR(9F)
+.BR getinfo (9E),
+.BR csx_RegisterClient (9F),
+.BR ddi_get_instance (9F)
.sp
.LP
\fIPC Card 95 Standard, PCMCIA/JEIDA\fR
diff --git a/usr/src/man/man9f/csx_ConvertSize.9f b/usr/src/man/man9f/csx_ConvertSize.9f
index e177d6f367..fee8706918 100644
--- a/usr/src/man/man9f/csx_ConvertSize.9f
+++ b/usr/src/man/man9f/csx_ConvertSize.9f
@@ -122,7 +122,8 @@ No \fBPCMCIA \fRhardware installed.
.SH CONTEXT
This function may be called from user or kernel context.
.SH SEE ALSO
-\fBcsx_ModifyWindow\fR(9F), \fBcsx_RequestWindow\fR(9F)
+.BR csx_ModifyWindow (9F),
+.BR csx_RequestWindow (9F)
.sp
.LP
\fIPCCard 95 Standard, PCMCIA/JEIDA\fR
diff --git a/usr/src/man/man9f/csx_ConvertSpeed.9f b/usr/src/man/man9f/csx_ConvertSpeed.9f
index bd9f0e5962..c8cfbf3ce5 100644
--- a/usr/src/man/man9f/csx_ConvertSpeed.9f
+++ b/usr/src/man/man9f/csx_ConvertSpeed.9f
@@ -131,7 +131,8 @@ No \fBPCMCIA \fRhardware installed.
.SH CONTEXT
This function may be called from user or kernel context.
.SH SEE ALSO
-\fBcsx_ModifyWindow\fR(9F), \fBcsx_RequestWindow\fR(9F)
+.BR csx_ModifyWindow (9F),
+.BR csx_RequestWindow (9F)
.sp
.LP
\fIPC Card 95 Standard, PCMCIA/JEIDA\fR
diff --git a/usr/src/man/man9f/csx_DeregisterClient.9f b/usr/src/man/man9f/csx_DeregisterClient.9f
index ba271beda9..46822c2fd4 100644
--- a/usr/src/man/man9f/csx_DeregisterClient.9f
+++ b/usr/src/man/man9f/csx_DeregisterClient.9f
@@ -73,7 +73,7 @@ No \fBPCMCIA \fRhardware installed.
.SH CONTEXT
This function may be called from user or kernel context.
.SH SEE ALSO
-\fBcsx_RegisterClient\fR(9F)
+.BR csx_RegisterClient (9F)
.sp
.LP
\fIPC Card 95 Standard, PCMCIA/JEIDA\fR
diff --git a/usr/src/man/man9f/csx_DupHandle.9f b/usr/src/man/man9f/csx_DupHandle.9f
index 4c8a77b747..f7c5f8e173 100644
--- a/usr/src/man/man9f/csx_DupHandle.9f
+++ b/usr/src/man/man9f/csx_DupHandle.9f
@@ -179,9 +179,13 @@ No \fBPCMCIA \fRhardware installed.
.SH CONTEXT
This function may be called from user or kernel context.
.SH SEE ALSO
-\fBcsx_Get8\fR(9F), \fBcsx_GetMappedAddr\fR(9F), \fBcsx_Put8\fR(9F),
-\fBcsx_RepGet8\fR(9F), \fBcsx_RepPut8\fR(9F), \fBcsx_RequestIO\fR(9F),
-\fBcsx_RequestWindow\fR(9F)
+.BR csx_Get8 (9F),
+.BR csx_GetMappedAddr (9F),
+.BR csx_Put8 (9F),
+.BR csx_RepGet8 (9F),
+.BR csx_RepPut8 (9F),
+.BR csx_RequestIO (9F),
+.BR csx_RequestWindow (9F)
.sp
.LP
\fIPC Card 95 Standard, PCMCIA/JEIDA\fR
diff --git a/usr/src/man/man9f/csx_Error2Text.9f b/usr/src/man/man9f/csx_Error2Text.9f
index 568c0e54e0..f4ae6da3db 100644
--- a/usr/src/man/man9f/csx_Error2Text.9f
+++ b/usr/src/man/man9f/csx_Error2Text.9f
@@ -87,7 +87,7 @@ if ((ret = csx_RegisterClient(&client_handle, &
.in -2
.SH SEE ALSO
-\fBcsx_Event2Text\fR(9F)
+.BR csx_Event2Text (9F)
.sp
.LP
\fIPC Card 95 Standard, PCMCIA/JEIDA\fR
diff --git a/usr/src/man/man9f/csx_Event2Text.9f b/usr/src/man/man9f/csx_Event2Text.9f
index 9e1087e502..ad72cf53dc 100644
--- a/usr/src/man/man9f/csx_Event2Text.9f
+++ b/usr/src/man/man9f/csx_Event2Text.9f
@@ -99,7 +99,8 @@ xx_event(event_t event, int priority, event_callback_args_t *eca)
.in -2
.SH SEE ALSO
-\fBcsx_event_handler\fR(9E), \fBcsx_Error2Text\fR(9F)
+.BR csx_event_handler (9E),
+.BR csx_Error2Text (9F)
.sp
.LP
\fIPC Card 95 Standard, PCMCIA/JEIDA\fR
diff --git a/usr/src/man/man9f/csx_FreeHandle.9f b/usr/src/man/man9f/csx_FreeHandle.9f
index 43e4966d07..3747d38ef1 100644
--- a/usr/src/man/man9f/csx_FreeHandle.9f
+++ b/usr/src/man/man9f/csx_FreeHandle.9f
@@ -54,7 +54,9 @@ No \fBPCMCIA \fRhardware installed.
.SH CONTEXT
This function may be called from user or kernel context.
.SH SEE ALSO
-\fBcsx_DupHandle\fR(9F), \fBcsx_RequestIO\fR(9F), \fBcsx_RequestWindow\fR(9F)
+.BR csx_DupHandle (9F),
+.BR csx_RequestIO (9F),
+.BR csx_RequestWindow (9F)
.sp
.LP
\fIPC Card95 Standard, PCMCIA/JEIDA\fR
diff --git a/usr/src/man/man9f/csx_Get8.9f b/usr/src/man/man9f/csx_Get8.9f
index ecc8c0e86e..d92651a317 100644
--- a/usr/src/man/man9f/csx_Get8.9f
+++ b/usr/src/man/man9f/csx_Get8.9f
@@ -71,9 +71,13 @@ These functions return the value read from the mapped address.
.SH CONTEXT
These functions may be called from user, kernel, or interrupt context.
.SH SEE ALSO
-\fBcsx_DupHandle\fR(9F), \fBcsx_GetMappedAddr\fR(9F), \fBcsx_Put8\fR(9F),
-\fBcsx_RepGet8\fR(9F), \fBcsx_RepPut8\fR(9F), \fBcsx_RequestIO\fR(9F),
-\fBcsx_RequestWindow\fR(9F)
+.BR csx_DupHandle (9F),
+.BR csx_GetMappedAddr (9F),
+.BR csx_Put8 (9F),
+.BR csx_RepGet8 (9F),
+.BR csx_RepPut8 (9F),
+.BR csx_RequestIO (9F),
+.BR csx_RequestWindow (9F)
.sp
.LP
\fIPC Card 95 Standard,\fR PCMCIA/JEIDA
diff --git a/usr/src/man/man9f/csx_GetFirstClient.9f b/usr/src/man/man9f/csx_GetFirstClient.9f
index e357a4a1cb..39ad871157 100644
--- a/usr/src/man/man9f/csx_GetFirstClient.9f
+++ b/usr/src/man/man9f/csx_GetFirstClient.9f
@@ -165,7 +165,7 @@ No \fBPCMCIA \fRhardware installed.
.SH CONTEXT
This function may be called from user or kernel context.
.SH SEE ALSO
-\fBcsx_event_handler\fR(9E)
+.BR csx_event_handler (9E)
.sp
.LP
\fIPC Card 95 Standard,\fR PCMCIA/JEIDA
diff --git a/usr/src/man/man9f/csx_GetFirstTuple.9f b/usr/src/man/man9f/csx_GetFirstTuple.9f
index 68644e61ce..eb653e801e 100644
--- a/usr/src/man/man9f/csx_GetFirstTuple.9f
+++ b/usr/src/man/man9f/csx_GetFirstTuple.9f
@@ -202,8 +202,11 @@ No \fBPCMCIA \fRhardware installed.
.SH CONTEXT
These functions may be called from user or kernel context.
.SH SEE ALSO
-\fBcsx_GetTupleData\fR(9F), \fBcsx_ParseTuple\fR(9F),
-\fBcsx_RegisterClient\fR(9F), \fBcsx_ValidateCIS\fR(9F), \fBtuple\fR(9S)
+.BR csx_GetTupleData (9F),
+.BR csx_ParseTuple (9F),
+.BR csx_RegisterClient (9F),
+.BR csx_ValidateCIS (9F),
+.BR tuple (9S)
.sp
.LP
\fIPC Card \fR\fI95Standard,\fR PCMCIA/JEIDA
diff --git a/usr/src/man/man9f/csx_GetHandleOffset.9f b/usr/src/man/man9f/csx_GetHandleOffset.9f
index 243291426a..f7a48fd4ed 100644
--- a/usr/src/man/man9f/csx_GetHandleOffset.9f
+++ b/usr/src/man/man9f/csx_GetHandleOffset.9f
@@ -49,8 +49,9 @@ Successful operation.
.SH CONTEXT
This function may be called from user or kernel context.
.SH SEE ALSO
-\fBcsx_RequestIO\fR(9F), \fBcsx_RequestIRQ\fR(9F),
-\fBcsx_SetHandleOffset\fR(9F)
+.BR csx_RequestIO (9F),
+.BR csx_RequestIRQ (9F),
+.BR csx_SetHandleOffset (9F)
.sp
.LP
\fIPC Card 95 Standard, PCMCIA/JEIDA\fR
diff --git a/usr/src/man/man9f/csx_GetMappedAddr.9f b/usr/src/man/man9f/csx_GetMappedAddr.9f
index 6a9633ccc7..39c81df10f 100644
--- a/usr/src/man/man9f/csx_GetMappedAddr.9f
+++ b/usr/src/man/man9f/csx_GetMappedAddr.9f
@@ -72,9 +72,13 @@ No \fBPCMCIA \fRhardware installed.
.SH CONTEXT
This function may be called from user, kernel, or interrupt context.
.SH SEE ALSO
-\fBcsx_DupHandle\fR(9F), \fBcsx_Get8\fR(9F), \fBcsx_Put8\fR(9F),
-\fBcsx_RepGet8\fR(9F), \fBcsx_RepPut8\fR(9F), \fBcsx_RequestIO\fR(9F),
-\fBcsx_RequestWindow\fR(9F)
+.BR csx_DupHandle (9F),
+.BR csx_Get8 (9F),
+.BR csx_Put8 (9F),
+.BR csx_RepGet8 (9F),
+.BR csx_RepPut8 (9F),
+.BR csx_RequestIO (9F),
+.BR csx_RequestWindow (9F)
.sp
.LP
\fIPC Card 95 Standard, PCMCIA/JEIDA\fR
diff --git a/usr/src/man/man9f/csx_GetStatus.9f b/usr/src/man/man9f/csx_GetStatus.9f
index 86c82b577f..818cef8f6d 100644
--- a/usr/src/man/man9f/csx_GetStatus.9f
+++ b/usr/src/man/man9f/csx_GetStatus.9f
@@ -466,7 +466,7 @@ the socket.
.SH CONTEXT
This function may be called from user or kernel context.
.SH SEE ALSO
-\fBcsx_RegisterClient\fR(9F)
+.BR csx_RegisterClient (9F)
.sp
.LP
\fIPC Card 95 Standard, PCMCIA/JEIDA\fR
diff --git a/usr/src/man/man9f/csx_GetTupleData.9f b/usr/src/man/man9f/csx_GetTupleData.9f
index f0d3c49c56..5020ca9513 100644
--- a/usr/src/man/man9f/csx_GetTupleData.9f
+++ b/usr/src/man/man9f/csx_GetTupleData.9f
@@ -216,8 +216,11 @@ No \fBPCMCIA \fRhardware installed.
.SH CONTEXT
This function may be called from user or kernel context.
.SH SEE ALSO
-\fBcsx_GetFirstTuple\fR(9F), \fBcsx_ParseTuple\fR(9F),
-\fBcsx_RegisterClient\fR(9F), \fBcsx_ValidateCIS\fR(9F), \fBtuple\fR(9S)
+.BR csx_GetFirstTuple (9F),
+.BR csx_ParseTuple (9F),
+.BR csx_RegisterClient (9F),
+.BR csx_ValidateCIS (9F),
+.BR tuple (9S)
.sp
.LP
\fIPC Card 95 Standard, PCMCIA/JEIDA\fR
diff --git a/usr/src/man/man9f/csx_MakeDeviceNode.9f b/usr/src/man/man9f/csx_MakeDeviceNode.9f
index ca0b3deb77..8a927a088a 100644
--- a/usr/src/man/man9f/csx_MakeDeviceNode.9f
+++ b/usr/src/man/man9f/csx_MakeDeviceNode.9f
@@ -222,8 +222,9 @@ No \fBPCMCIA \fRhardware installed.
.SH CONTEXT
These functions may be called from user or kernel context.
.SH SEE ALSO
-\fBcsx_RegisterClient\fR(9F), \fBddi_create_minor_node\fR(9F),
-\fBddi_remove_minor_node\fR(9F)
+.BR csx_RegisterClient (9F),
+.BR ddi_create_minor_node (9F),
+.BR ddi_remove_minor_node (9F)
.sp
.LP
\fIPC Card 95 Standard, PCMCIA/JEIDA\fR
diff --git a/usr/src/man/man9f/csx_MapLogSocket.9f b/usr/src/man/man9f/csx_MapLogSocket.9f
index d69474adb9..27674bc6e4 100644
--- a/usr/src/man/man9f/csx_MapLogSocket.9f
+++ b/usr/src/man/man9f/csx_MapLogSocket.9f
@@ -114,7 +114,7 @@ No \fBPCMCIA \fRhardware installed.
.SH CONTEXT
This function may be called from user or kernel context.
.SH SEE ALSO
-\fBcsx_RegisterClient\fR(9F)
+.BR csx_RegisterClient (9F)
.sp
.LP
\fIPC Card 95 Standard, PCMCIA/JEIDA\fR
diff --git a/usr/src/man/man9f/csx_MapMemPage.9f b/usr/src/man/man9f/csx_MapMemPage.9f
index 4ffc97be24..3f631a1cff 100644
--- a/usr/src/man/man9f/csx_MapMemPage.9f
+++ b/usr/src/man/man9f/csx_MapMemPage.9f
@@ -128,8 +128,9 @@ No \fBPCMCIA \fRhardware installed.
.SH CONTEXT
This function may be called from user or kernel context.
.SH SEE ALSO
-\fBcsx_ModifyWindow\fR(9F), \fBcsx_ReleaseWindow\fR(9F),
-\fBcsx_RequestWindow\fR(9F)
+.BR csx_ModifyWindow (9F),
+.BR csx_ReleaseWindow (9F),
+.BR csx_RequestWindow (9F)
.sp
.LP
\fIPC Card 95 Standard, PCMCIA/JEIDA\fR
diff --git a/usr/src/man/man9f/csx_ModifyConfiguration.9f b/usr/src/man/man9f/csx_ModifyConfiguration.9f
index 39fa1c80d0..fcf6d90a11 100644
--- a/usr/src/man/man9f/csx_ModifyConfiguration.9f
+++ b/usr/src/man/man9f/csx_ModifyConfiguration.9f
@@ -195,10 +195,13 @@ No \fBPCMCIA \fRhardware installed.
.SH CONTEXT
This function may be called from user or kernel context.
.SH SEE ALSO
-\fBcsx_RegisterClient\fR(9F), \fBcsx_ReleaseConfiguration\fR(9F),
-\fBcsx_ReleaseIO\fR(9F), \fBcsx_ReleaseIRQ\fR(9F),
-\fBcsx_RequestConfiguration\fR(9F), \fBcsx_RequestIO\fR(9F),
-\fBcsx_RequestIRQ\fR(9F)
+.BR csx_RegisterClient (9F),
+.BR csx_ReleaseConfiguration (9F),
+.BR csx_ReleaseIO (9F),
+.BR csx_ReleaseIRQ (9F),
+.BR csx_RequestConfiguration (9F),
+.BR csx_RequestIO (9F),
+.BR csx_RequestIRQ (9F)
.sp
.LP
\fIPC Card 95 Standard, PCMCIA/JEIDA\fR
diff --git a/usr/src/man/man9f/csx_ModifyWindow.9f b/usr/src/man/man9f/csx_ModifyWindow.9f
index 04e60b7e03..57e3c932ce 100644
--- a/usr/src/man/man9f/csx_ModifyWindow.9f
+++ b/usr/src/man/man9f/csx_ModifyWindow.9f
@@ -243,8 +243,10 @@ No \fBPCMCIA \fRhardware installed.
.SH CONTEXT
This function may be called from user or kernel context.
.SH SEE ALSO
-\fBcsx_ConvertSpeed\fR(9F), \fBcsx_MapMemPage\fR(9F),
-\fBcsx_ReleaseWindow\fR(9F), \fBcsx_RequestWindow\fR(9F)
+.BR csx_ConvertSpeed (9F),
+.BR csx_MapMemPage (9F),
+.BR csx_ReleaseWindow (9F),
+.BR csx_RequestWindow (9F)
.sp
.LP
\fIPC Card 95 Standard, PCMCIA/JEIDA\fR
diff --git a/usr/src/man/man9f/csx_ParseTuple.9f b/usr/src/man/man9f/csx_ParseTuple.9f
index 7f5e34d06c..9bcbe4e296 100644
--- a/usr/src/man/man9f/csx_ParseTuple.9f
+++ b/usr/src/man/man9f/csx_ParseTuple.9f
@@ -158,15 +158,24 @@ No \fBPCMCIA\fR hardware installed.
.SH CONTEXT
This function may be called from user or kernel context.
.SH SEE ALSO
-\fBcsx_GetFirstTuple\fR(9F), \fBcsx_GetTupleData\fR(9F),
-\fBcsx_Parse_CISTPL_BATTERY\fR(9F), \fBcsx_Parse_CISTPL_BYTEORDER\fR(9F),
-\fBcsx_Parse_CISTPL_CFTABLE_ENTRY\fR(9F), \fBcsx_Parse_CISTPL_CONFIG\fR(9F),
-\fBcsx_Parse_CISTPL_DATE\fR(9F), \fBcsx_Parse_CISTPL_DEVICE\fR(9F),
-\fBcsx_Parse_CISTPL_FUNCE\fR(9F), \fBcsx_Parse_CISTPL_FUNCID\fR(9F),
-\fBcsx_Parse_CISTPL_JEDEC_C\fR(9F), \fBcsx_Parse_CISTPL_MANFID\fR(9F),
-\fBcsx_Parse_CISTPL_SPCL\fR(9F), \fBcsx_Parse_CISTPL_VERS_1\fR(9F),
-\fBcsx_Parse_CISTPL_VERS_2\fR(9F), \fBcsx_RegisterClient\fR(9F),
-\fBcsx_ValidateCIS\fR(9F), \fBtuple\fR(9S)
+.BR csx_GetFirstTuple (9F),
+.BR csx_GetTupleData (9F),
+.BR csx_Parse_CISTPL_BATTERY (9F),
+.BR csx_Parse_CISTPL_BYTEORDER (9F),
+.BR csx_Parse_CISTPL_CFTABLE_ENTRY (9F),
+.BR csx_Parse_CISTPL_CONFIG (9F),
+.BR csx_Parse_CISTPL_DATE (9F),
+.BR csx_Parse_CISTPL_DEVICE (9F),
+.BR csx_Parse_CISTPL_FUNCE (9F),
+.BR csx_Parse_CISTPL_FUNCID (9F),
+.BR csx_Parse_CISTPL_JEDEC_C (9F),
+.BR csx_Parse_CISTPL_MANFID (9F),
+.BR csx_Parse_CISTPL_SPCL (9F),
+.BR csx_Parse_CISTPL_VERS_1 (9F),
+.BR csx_Parse_CISTPL_VERS_2 (9F),
+.BR csx_RegisterClient (9F),
+.BR csx_ValidateCIS (9F),
+.BR tuple (9S)
.sp
.LP
\fIPC Card 95 Standard\fR, PCMCIA/JEIDA
diff --git a/usr/src/man/man9f/csx_Parse_CISTPL_BATTERY.9f b/usr/src/man/man9f/csx_Parse_CISTPL_BATTERY.9f
index 98e2471a49..c258d7c25d 100644
--- a/usr/src/man/man9f/csx_Parse_CISTPL_BATTERY.9f
+++ b/usr/src/man/man9f/csx_Parse_CISTPL_BATTERY.9f
@@ -144,8 +144,11 @@ No \fBPCMCIA \fRhardware installed.
.SH CONTEXT
This function may be called from user or kernel context.
.SH SEE ALSO
-\fBcsx_GetFirstTuple\fR(9F), \fBcsx_GetTupleData\fR(9F),
-\fBcsx_RegisterClient\fR(9F), \fBcsx_ValidateCIS\fR(9F), \fBtuple\fR(9S)
+.BR csx_GetFirstTuple (9F),
+.BR csx_GetTupleData (9F),
+.BR csx_RegisterClient (9F),
+.BR csx_ValidateCIS (9F),
+.BR tuple (9S)
.sp
.LP
\fIPC Card 95 Standard, PCMCIA/JEIDA\fR
diff --git a/usr/src/man/man9f/csx_Parse_CISTPL_BYTEORDER.9f b/usr/src/man/man9f/csx_Parse_CISTPL_BYTEORDER.9f
index eab95ee20d..f64e1ede0c 100644
--- a/usr/src/man/man9f/csx_Parse_CISTPL_BYTEORDER.9f
+++ b/usr/src/man/man9f/csx_Parse_CISTPL_BYTEORDER.9f
@@ -189,8 +189,11 @@ No \fBPCMCIA \fRhardware installed.
.SH CONTEXT
This function may be called from user or kernel context.
.SH SEE ALSO
-\fBcsx_GetFirstTuple\fR(9F), \fBcsx_GetTupleData\fR(9F),
-\fBcsx_RegisterClient\fR(9F), \fBcsx_ValidateCIS\fR(9F), \fBtuple\fR(9S)
+.BR csx_GetFirstTuple (9F),
+.BR csx_GetTupleData (9F),
+.BR csx_RegisterClient (9F),
+.BR csx_ValidateCIS (9F),
+.BR tuple (9S)
.sp
.LP
\fIPC Card 95 Standard, PCMCIA/JEIDA\fR
diff --git a/usr/src/man/man9f/csx_Parse_CISTPL_CFTABLE_ENTRY.9f b/usr/src/man/man9f/csx_Parse_CISTPL_CFTABLE_ENTRY.9f
index bf9552b8c9..641c472153 100644
--- a/usr/src/man/man9f/csx_Parse_CISTPL_CFTABLE_ENTRY.9f
+++ b/usr/src/man/man9f/csx_Parse_CISTPL_CFTABLE_ENTRY.9f
@@ -853,9 +853,12 @@ No \fBPCMCIA \fRhardware installed.
.SH CONTEXT
This function may be called from user or kernel context.
.SH SEE ALSO
-\fBcsx_GetFirstTuple\fR(9F), \fBcsx_GetTupleData\fR(9F),
-\fBcsx_Parse_CISTPL_CONFIG\fR(9F), \fBcsx_RegisterClient\fR(9F),
-\fBcsx_ValidateCIS\fR(9F), \fBtuple\fR(9S)
+.BR csx_GetFirstTuple (9F),
+.BR csx_GetTupleData (9F),
+.BR csx_Parse_CISTPL_CONFIG (9F),
+.BR csx_RegisterClient (9F),
+.BR csx_ValidateCIS (9F),
+.BR tuple (9S)
.sp
.LP
\fIPC Card 95 Standard, PCMCIA/JEIDA\fR
diff --git a/usr/src/man/man9f/csx_Parse_CISTPL_CONFIG.9f b/usr/src/man/man9f/csx_Parse_CISTPL_CONFIG.9f
index ec02b836a4..9c961ccf3d 100644
--- a/usr/src/man/man9f/csx_Parse_CISTPL_CONFIG.9f
+++ b/usr/src/man/man9f/csx_Parse_CISTPL_CONFIG.9f
@@ -280,9 +280,12 @@ No \fBPCMCIA \fRhardware installed.
.SH CONTEXT
This function may be called from user or kernel context.
.SH SEE ALSO
-\fBcsx_GetFirstTuple\fR(9F), \fBcsx_GetTupleData\fR(9F),
-\fBcsx_Parse_CISTPL_CFTABLE_ENTRY\fR(9F), \fBcsx_RegisterClient\fR(9F),
-\fBcsx_ValidateCIS\fR(9F), \fBtuple\fR(9S)
+.BR csx_GetFirstTuple (9F),
+.BR csx_GetTupleData (9F),
+.BR csx_Parse_CISTPL_CFTABLE_ENTRY (9F),
+.BR csx_RegisterClient (9F),
+.BR csx_ValidateCIS (9F),
+.BR tuple (9S)
.sp
.LP
\fIPC Card 95 Standard, PCMCIA/JEIDA\fR
diff --git a/usr/src/man/man9f/csx_Parse_CISTPL_DATE.9f b/usr/src/man/man9f/csx_Parse_CISTPL_DATE.9f
index 88a0989c91..1dcd046712 100644
--- a/usr/src/man/man9f/csx_Parse_CISTPL_DATE.9f
+++ b/usr/src/man/man9f/csx_Parse_CISTPL_DATE.9f
@@ -143,8 +143,11 @@ No \fBPCMCIA \fRhardware installed.
.SH CONTEXT
This function may be called from user or kernel context.
.SH SEE ALSO
-\fBcsx_GetFirstTuple\fR(9F), \fBcsx_GetTupleData\fR(9F),
-\fBcsx_RegisterClient\fR(9F), \fBcsx_ValidateCIS\fR(9F), \fBtuple\fR(9S)
+.BR csx_GetFirstTuple (9F),
+.BR csx_GetTupleData (9F),
+.BR csx_RegisterClient (9F),
+.BR csx_ValidateCIS (9F),
+.BR tuple (9S)
.sp
.LP
\fIPC Card 95 Standard, PCMCIA/JEIDA\fR
diff --git a/usr/src/man/man9f/csx_Parse_CISTPL_DEVICE.9f b/usr/src/man/man9f/csx_Parse_CISTPL_DEVICE.9f
index 129ad0211f..5d9932a307 100644
--- a/usr/src/man/man9f/csx_Parse_CISTPL_DEVICE.9f
+++ b/usr/src/man/man9f/csx_Parse_CISTPL_DEVICE.9f
@@ -400,9 +400,12 @@ No \fBPCMCIA \fRhardware installed.
.SH CONTEXT
These functions may be called from user or kernel context.
.SH SEE ALSO
-\fBcsx_GetFirstTuple\fR(9F), \fBcsx_GetTupleData\fR(9F),
-\fBcsx_Parse_CISTPL_JEDEC_C\fR(9F), \fBcsx_RegisterClient\fR(9F),
-\fBcsx_ValidateCIS\fR(9F), \fBtuple\fR(9S)
+.BR csx_GetFirstTuple (9F),
+.BR csx_GetTupleData (9F),
+.BR csx_Parse_CISTPL_JEDEC_C (9F),
+.BR csx_RegisterClient (9F),
+.BR csx_ValidateCIS (9F),
+.BR tuple (9S)
.sp
.LP
\fIPC Card 95 Standard, PCMCIA/JEIDA\fR
diff --git a/usr/src/man/man9f/csx_Parse_CISTPL_DEVICEGEO.9f b/usr/src/man/man9f/csx_Parse_CISTPL_DEVICEGEO.9f
index 58336ddced..e85c1cafde 100644
--- a/usr/src/man/man9f/csx_Parse_CISTPL_DEVICEGEO.9f
+++ b/usr/src/man/man9f/csx_Parse_CISTPL_DEVICEGEO.9f
@@ -189,9 +189,12 @@ No \fBPCMCIA \fRhardware installed.
.SH CONTEXT
This function may be called from user or kernel context.
.SH SEE ALSO
-\fBcsx_GetFirstTuple\fR(9F), \fBcsx_GetNextTuple\fR(9F),
-\fBcsx_GetTupleData\fR(9F), \fBcsx_Parse_CISTPL_DEVICEGEO_A\fR(9F),
-\fBcsx_RegisterClient\fR(9F), \fBtuple\fR(9S)
+.BR csx_GetFirstTuple (9F),
+.BR csx_GetNextTuple (9F),
+.BR csx_GetTupleData (9F),
+.BR csx_Parse_CISTPL_DEVICEGEO_A (9F),
+.BR csx_RegisterClient (9F),
+.BR tuple (9S)
.sp
.LP
\fIPC Card 95 Standard, PCMCIA/JEIDA\fR
diff --git a/usr/src/man/man9f/csx_Parse_CISTPL_DEVICEGEO_A.9f b/usr/src/man/man9f/csx_Parse_CISTPL_DEVICEGEO_A.9f
index f7b5d1d72e..4929d722ed 100644
--- a/usr/src/man/man9f/csx_Parse_CISTPL_DEVICEGEO_A.9f
+++ b/usr/src/man/man9f/csx_Parse_CISTPL_DEVICEGEO_A.9f
@@ -189,9 +189,12 @@ No \fBPCMCIA \fRhardware installed.
.SH CONTEXT
This function may be called from user or kernel context.
.SH SEE ALSO
-\fBcsx_GetFirstTuple\fR(9F), \fBcsx_GetNextTuple\fR(9F),
-\fBcsx_GetTupleData\fR(9F), \fBcsx_Parse_CISTPL_DEVICEGEO\fR(9F),
-\fBcsx_RegisterClient\fR(9F), \fBtuple\fR(9S)
+.BR csx_GetFirstTuple (9F),
+.BR csx_GetNextTuple (9F),
+.BR csx_GetTupleData (9F),
+.BR csx_Parse_CISTPL_DEVICEGEO (9F),
+.BR csx_RegisterClient (9F),
+.BR tuple (9S)
.sp
.LP
\fIPC Card 95 Standard, PCMCIA/JEIDA\fR
diff --git a/usr/src/man/man9f/csx_Parse_CISTPL_FORMAT.9f b/usr/src/man/man9f/csx_Parse_CISTPL_FORMAT.9f
index a64ad600b1..37ac997aa4 100644
--- a/usr/src/man/man9f/csx_Parse_CISTPL_FORMAT.9f
+++ b/usr/src/man/man9f/csx_Parse_CISTPL_FORMAT.9f
@@ -289,8 +289,11 @@ No \fBPCMCIA \fRhardware installed.
.SH CONTEXT
This function may be called from user or kernel context.
.SH SEE ALSO
-\fBcsx_GetFirstTuple\fR(9F), \fBcsx_GetTupleData\fR(9F),
-\fBcsx_RegisterClient\fR(9F), \fBcsx_ValidateCIS\fR(9F), \fBtuple\fR(9S)
+.BR csx_GetFirstTuple (9F),
+.BR csx_GetTupleData (9F),
+.BR csx_RegisterClient (9F),
+.BR csx_ValidateCIS (9F),
+.BR tuple (9S)
.sp
.LP
\fIPC Card 95 Standard, PCMCIA/JEIDA\fR
diff --git a/usr/src/man/man9f/csx_Parse_CISTPL_FUNCE.9f b/usr/src/man/man9f/csx_Parse_CISTPL_FUNCE.9f
index f634a15b4d..98583f0d56 100644
--- a/usr/src/man/man9f/csx_Parse_CISTPL_FUNCE.9f
+++ b/usr/src/man/man9f/csx_Parse_CISTPL_FUNCE.9f
@@ -1138,9 +1138,12 @@ No \fBPCMCIA \fRhardware installed.
.SH CONTEXT
This function may be called from user or kernel context.
.SH SEE ALSO
-\fBcsx_GetFirstTuple\fR(9F), \fBcsx_GetTupleData\fR(9F),
-\fBcsx_Parse_CISTPL_FUNCID\fR(9F), \fBcsx_RegisterClient\fR(9F),
-\fBcsx_ValidateCIS\fR(9F), \fBtuple\fR(9S)
+.BR csx_GetFirstTuple (9F),
+.BR csx_GetTupleData (9F),
+.BR csx_Parse_CISTPL_FUNCID (9F),
+.BR csx_RegisterClient (9F),
+.BR csx_ValidateCIS (9F),
+.BR tuple (9S)
.sp
.LP
\fIPC Card 95 Standard, PCMCIA/JEIDA\fR
diff --git a/usr/src/man/man9f/csx_Parse_CISTPL_FUNCID.9f b/usr/src/man/man9f/csx_Parse_CISTPL_FUNCID.9f
index 3f8dcf198d..d2c97f9e01 100644
--- a/usr/src/man/man9f/csx_Parse_CISTPL_FUNCID.9f
+++ b/usr/src/man/man9f/csx_Parse_CISTPL_FUNCID.9f
@@ -272,9 +272,12 @@ No \fBPCMCIA \fRhardware installed.
.SH CONTEXT
This function may be called from user or kernel context.
.SH SEE ALSO
-\fBcsx_GetFirstTuple\fR(9F), \fBcsx_GetTupleData\fR(9F),
-\fBcsx_Parse_CISTPL_FUNCE\fR(9F), \fBcsx_RegisterClient\fR(9F),
-\fBcsx_ValidateCIS\fR(9F), \fBtuple\fR(9S)
+.BR csx_GetFirstTuple (9F),
+.BR csx_GetTupleData (9F),
+.BR csx_Parse_CISTPL_FUNCE (9F),
+.BR csx_RegisterClient (9F),
+.BR csx_ValidateCIS (9F),
+.BR tuple (9S)
.sp
.LP
\fIPC Card 95 Standard, PCMCIA/JEIDA\fR
diff --git a/usr/src/man/man9f/csx_Parse_CISTPL_GEOMETRY.9f b/usr/src/man/man9f/csx_Parse_CISTPL_GEOMETRY.9f
index b268945b0c..d51cb85f1a 100644
--- a/usr/src/man/man9f/csx_Parse_CISTPL_GEOMETRY.9f
+++ b/usr/src/man/man9f/csx_Parse_CISTPL_GEOMETRY.9f
@@ -151,8 +151,11 @@ No \fBPCMCIA\fR hardware installed.
.SH CONTEXT
This function may be called from user or kernel context.
.SH SEE ALSO
-\fBcsx_GetFirstTuple\fR(9F), \fBcsx_GetTupleData\fR(9F),
-\fBcsx_RegisterClient\fR(9F), \fBcsx_ValidateCIS\fR(9F), \fBtuple\fR(9S)
+.BR csx_GetFirstTuple (9F),
+.BR csx_GetTupleData (9F),
+.BR csx_RegisterClient (9F),
+.BR csx_ValidateCIS (9F),
+.BR tuple (9S)
.sp
.LP
\fIPC Card 95 Standard\fR, PCMCIA/JEIDA
diff --git a/usr/src/man/man9f/csx_Parse_CISTPL_JEDEC_C.9f b/usr/src/man/man9f/csx_Parse_CISTPL_JEDEC_C.9f
index 7155d448ec..aaeefa9d0b 100644
--- a/usr/src/man/man9f/csx_Parse_CISTPL_JEDEC_C.9f
+++ b/usr/src/man/man9f/csx_Parse_CISTPL_JEDEC_C.9f
@@ -142,9 +142,12 @@ No \fBPCMCIA\fR hardware installed.
.SH CONTEXT
These functions may be called from user or kernel context.
.SH SEE ALSO
-\fBcsx_GetFirstTuple\fR(9F), \fBcsx_GetTupleData\fR(9F),
-\fBcsx_Parse_CISTPL_DEVICE\fR(9F), \fBcsx_RegisterClient\fR(9F),
-\fBcsx_ValidateCIS\fR(9F), \fBtuple\fR(9S)
+.BR csx_GetFirstTuple (9F),
+.BR csx_GetTupleData (9F),
+.BR csx_Parse_CISTPL_DEVICE (9F),
+.BR csx_RegisterClient (9F),
+.BR csx_ValidateCIS (9F),
+.BR tuple (9S)
.sp
.LP
\fIPC Card 95 Standard\fR, PCMCIA/JEIDA
diff --git a/usr/src/man/man9f/csx_Parse_CISTPL_LINKTARGET.9f b/usr/src/man/man9f/csx_Parse_CISTPL_LINKTARGET.9f
index 6f4ebb3715..be411acfcd 100644
--- a/usr/src/man/man9f/csx_Parse_CISTPL_LINKTARGET.9f
+++ b/usr/src/man/man9f/csx_Parse_CISTPL_LINKTARGET.9f
@@ -142,8 +142,11 @@ No \fBPCMCIA \fRhardware installed.
.SH CONTEXT
This function may be called from user or kernel context.
.SH SEE ALSO
-\fBcsx_GetFirstTuple\fR(9F), \fBcsx_GetTupleData\fR(9F),
-\fBcsx_RegisterClient\fR(9F), \fBcsx_ValidateCIS\fR(9F), \fBtuple\fR(9S)
+.BR csx_GetFirstTuple (9F),
+.BR csx_GetTupleData (9F),
+.BR csx_RegisterClient (9F),
+.BR csx_ValidateCIS (9F),
+.BR tuple (9S)
.sp
.LP
\fIPC Card 95 Standard,\fR PCMCIA/JEIDA
diff --git a/usr/src/man/man9f/csx_Parse_CISTPL_LONGLINK_A.9f b/usr/src/man/man9f/csx_Parse_CISTPL_LONGLINK_A.9f
index 64a9745c5c..232ff57e11 100644
--- a/usr/src/man/man9f/csx_Parse_CISTPL_LONGLINK_A.9f
+++ b/usr/src/man/man9f/csx_Parse_CISTPL_LONGLINK_A.9f
@@ -169,8 +169,11 @@ No \fBPCMCIA \fRhardware installed.
.SH CONTEXT
This function may be called from user or kernel context.
.SH SEE ALSO
-\fBcsx_GetFirstTuple\fR(9F), \fBcsx_GetTupleData\fR(9F),
-\fBcsx_RegisterClient\fR(9F), \fBcsx_ValidateCIS\fR(9F), \fBtuple\fR(9S)
+.BR csx_GetFirstTuple (9F),
+.BR csx_GetTupleData (9F),
+.BR csx_RegisterClient (9F),
+.BR csx_ValidateCIS (9F),
+.BR tuple (9S)
.sp
.LP
\fIPC Card 95 Standard,\fR PCMCIA/JEIDA
diff --git a/usr/src/man/man9f/csx_Parse_CISTPL_LONGLINK_MFC.9f b/usr/src/man/man9f/csx_Parse_CISTPL_LONGLINK_MFC.9f
index 77d6d23d19..145704d72f 100644
--- a/usr/src/man/man9f/csx_Parse_CISTPL_LONGLINK_MFC.9f
+++ b/usr/src/man/man9f/csx_Parse_CISTPL_LONGLINK_MFC.9f
@@ -188,8 +188,11 @@ No \fBPCMCIA \fRhardware installed.
.SH CONTEXT
This function may be called from user or kernel context.
.SH SEE ALSO
-\fBcsx_GetFirstTuple\fR(9F), \fBcsx_GetTupleData\fR(9F),
-\fBcsx_RegisterClient\fR(9F), \fBcsx_ValidateCIS\fR(9F), \fBtuple\fR(9S)
+.BR csx_GetFirstTuple (9F),
+.BR csx_GetTupleData (9F),
+.BR csx_RegisterClient (9F),
+.BR csx_ValidateCIS (9F),
+.BR tuple (9S)
.sp
.LP
\fIPC Card 95 Standard,\fR PCMCIA/JEIDA
diff --git a/usr/src/man/man9f/csx_Parse_CISTPL_MANFID.9f b/usr/src/man/man9f/csx_Parse_CISTPL_MANFID.9f
index 545cc80c9a..c9cea056fc 100644
--- a/usr/src/man/man9f/csx_Parse_CISTPL_MANFID.9f
+++ b/usr/src/man/man9f/csx_Parse_CISTPL_MANFID.9f
@@ -123,8 +123,11 @@ No \fBPCMCIA \fRhardware installed.
.SH CONTEXT
This function may be called from user or kernel context.
.SH SEE ALSO
-\fBcsx_GetFirstTuple\fR(9F), \fBcsx_GetTupleData\fR(9F),
-\fBcsx_RegisterClient\fR(9F), \fBcsx_ValidateCIS\fR(9F), \fBtuple\fR(9S)
+.BR csx_GetFirstTuple (9F),
+.BR csx_GetTupleData (9F),
+.BR csx_RegisterClient (9F),
+.BR csx_ValidateCIS (9F),
+.BR tuple (9S)
.sp
.LP
\fIPC Card 95 Standard,\fR PCMCIA/JEIDA
diff --git a/usr/src/man/man9f/csx_Parse_CISTPL_ORG.9f b/usr/src/man/man9f/csx_Parse_CISTPL_ORG.9f
index fa5bca3308..ca70b7a9df 100644
--- a/usr/src/man/man9f/csx_Parse_CISTPL_ORG.9f
+++ b/usr/src/man/man9f/csx_Parse_CISTPL_ORG.9f
@@ -143,8 +143,11 @@ No \fBPCMCIA \fRhardware installed.
.SH CONTEXT
This function may be called from user or kernel context.
.SH SEE ALSO
-\fBcsx_GetFirstTuple\fR(9F), \fBcsx_GetTupleData\fR(9F),
-\fBcsx_RegisterClient\fR(9F), \fBcsx_ValidateCIS\fR(9F), \fBtuple\fR(9S)
+.BR csx_GetFirstTuple (9F),
+.BR csx_GetTupleData (9F),
+.BR csx_RegisterClient (9F),
+.BR csx_ValidateCIS (9F),
+.BR tuple (9S)
.sp
.LP
\fIPC Card 95 Standard,\fR PCMCIA/JEIDA
diff --git a/usr/src/man/man9f/csx_Parse_CISTPL_SPCL.9f b/usr/src/man/man9f/csx_Parse_CISTPL_SPCL.9f
index 509f771ca3..4f2b8de9f7 100644
--- a/usr/src/man/man9f/csx_Parse_CISTPL_SPCL.9f
+++ b/usr/src/man/man9f/csx_Parse_CISTPL_SPCL.9f
@@ -170,8 +170,11 @@ No \fBPCMCIA \fRhardware installed.
.SH CONTEXT
This function may be called from user or kernel context.
.SH SEE ALSO
-\fBcsx_GetFirstTuple\fR(9F), \fBcsx_GetTupleData\fR(9F),
-\fBcsx_RegisterClient\fR(9F), \fBcsx_ValidateCIS\fR(9F), \fBtuple\fR(9S)
+.BR csx_GetFirstTuple (9F),
+.BR csx_GetTupleData (9F),
+.BR csx_RegisterClient (9F),
+.BR csx_ValidateCIS (9F),
+.BR tuple (9S)
.sp
.LP
\fIPC Card 95 Standard,\fR PCMCIA/JEIDA
diff --git a/usr/src/man/man9f/csx_Parse_CISTPL_SWIL.9f b/usr/src/man/man9f/csx_Parse_CISTPL_SWIL.9f
index 267bfa88e2..733a4bf4a2 100644
--- a/usr/src/man/man9f/csx_Parse_CISTPL_SWIL.9f
+++ b/usr/src/man/man9f/csx_Parse_CISTPL_SWIL.9f
@@ -132,8 +132,11 @@ No \fBPCMCIA \fRhardware installed.
.SH CONTEXT
This function may be called from user or kernel context.
.SH SEE ALSO
-\fBcsx_GetFirstTuple\fR(9F), \fBcsx_GetTupleData\fR(9F),
-\fBcsx_RegisterClient\fR(9F), \fBcsx_ValidateCIS\fR(9F), \fBtuple\fR(9S)
+.BR csx_GetFirstTuple (9F),
+.BR csx_GetTupleData (9F),
+.BR csx_RegisterClient (9F),
+.BR csx_ValidateCIS (9F),
+.BR tuple (9S)
.sp
.LP
\fIPC Card 95 Standard,\fR PCMCIA/JEIDA
diff --git a/usr/src/man/man9f/csx_Parse_CISTPL_VERS_1.9f b/usr/src/man/man9f/csx_Parse_CISTPL_VERS_1.9f
index 11d68c2781..6ca2e05ee7 100644
--- a/usr/src/man/man9f/csx_Parse_CISTPL_VERS_1.9f
+++ b/usr/src/man/man9f/csx_Parse_CISTPL_VERS_1.9f
@@ -125,8 +125,11 @@ No \fBPCMCIA \fRhardware installed.
.SH CONTEXT
This function may be called from user or kernel context.
.SH SEE ALSO
-\fBcsx_GetFirstTuple\fR(9F), \fBcsx_GetTupleData\fR(9F),
-\fBcsx_RegisterClient\fR(9F), \fBcsx_ValidateCIS\fR(9F), \fBtuple\fR(9S)
+.BR csx_GetFirstTuple (9F),
+.BR csx_GetTupleData (9F),
+.BR csx_RegisterClient (9F),
+.BR csx_ValidateCIS (9F),
+.BR tuple (9S)
.sp
.LP
\fIPC Card 95 Standard,\fR PCMCIA/JEIDA
diff --git a/usr/src/man/man9f/csx_Parse_CISTPL_VERS_2.9f b/usr/src/man/man9f/csx_Parse_CISTPL_VERS_2.9f
index 787f13fce5..2444d9d45e 100644
--- a/usr/src/man/man9f/csx_Parse_CISTPL_VERS_2.9f
+++ b/usr/src/man/man9f/csx_Parse_CISTPL_VERS_2.9f
@@ -129,8 +129,11 @@ No \fBPCMCIA \fRhardware installed.
.SH CONTEXT
This function may be called from user or kernel context.
.SH SEE ALSO
-\fBcsx_GetFirstTuple\fR(9F), \fBcsx_GetTupleData\fR(9F),
-\fBcsx_RegisterClient\fR(9F), \fBcsx_ValidateCIS\fR(9F), \fBtuple\fR(9S)
+.BR csx_GetFirstTuple (9F),
+.BR csx_GetTupleData (9F),
+.BR csx_RegisterClient (9F),
+.BR csx_ValidateCIS (9F),
+.BR tuple (9S)
.sp
.LP
\fIPC Card 95 Standard,\fR PCMCIA/JEIDA
diff --git a/usr/src/man/man9f/csx_Put8.9f b/usr/src/man/man9f/csx_Put8.9f
index 949559e82b..59c7227a2a 100644
--- a/usr/src/man/man9f/csx_Put8.9f
+++ b/usr/src/man/man9f/csx_Put8.9f
@@ -78,9 +78,13 @@ swapping if the host and the device have incompatible endian characteristics.
.SH CONTEXT
These functions may be called from user, kernel, or interrupt context.
.SH SEE ALSO
-\fBcsx_DupHandle\fR(9F), \fBcsx_Get8\fR(9F), \fBcsx_GetMappedAddr\fR(9F),
-\fBcsx_RepGet8\fR(9F), \fBcsx_RepPut8\fR(9F), \fBcsx_RequestIO\fR(9F),
-\fBcsx_RequestWindow\fR(9F)
+.BR csx_DupHandle (9F),
+.BR csx_Get8 (9F),
+.BR csx_GetMappedAddr (9F),
+.BR csx_RepGet8 (9F),
+.BR csx_RepPut8 (9F),
+.BR csx_RequestIO (9F),
+.BR csx_RequestWindow (9F)
.sp
.LP
\fIPC Card 95 Standard\fR, PCMCIA/JEIDA
diff --git a/usr/src/man/man9f/csx_RegisterClient.9f b/usr/src/man/man9f/csx_RegisterClient.9f
index ec37c52292..08547ef5ca 100644
--- a/usr/src/man/man9f/csx_RegisterClient.9f
+++ b/usr/src/man/man9f/csx_RegisterClient.9f
@@ -303,7 +303,8 @@ No \fBPCMCIA\fR hardware installed.
.SH CONTEXT
This function may be called from user or kernel context.
.SH SEE ALSO
-\fBcsx_DeregisterClient\fR(9F), \fBcsx_RequestSocketMask\fR(9F)
+.BR csx_DeregisterClient (9F),
+.BR csx_RequestSocketMask (9F)
.sp
.LP
\fIPC Card 95 Standard\fR, PCMCIA/JEIDA
diff --git a/usr/src/man/man9f/csx_ReleaseConfiguration.9f b/usr/src/man/man9f/csx_ReleaseConfiguration.9f
index 5b7057a71e..ff9c0d8d7f 100644
--- a/usr/src/man/man9f/csx_ReleaseConfiguration.9f
+++ b/usr/src/man/man9f/csx_ReleaseConfiguration.9f
@@ -119,8 +119,11 @@ No \fBPCMCIA\fR hardware installed.
.SH CONTEXT
This function may be called from user or kernel context.
.SH SEE ALSO
-\fBcsx_RegisterClient\fR(9F), \fBcsx_RequestConfiguration\fR(9F),
-\fBcsx_RequestIO\fR(9F), \fBcsx_RequestIRQ\fR(9F), \fBcsx_RequestWindow\fR(9F)
+.BR csx_RegisterClient (9F),
+.BR csx_RequestConfiguration (9F),
+.BR csx_RequestIO (9F),
+.BR csx_RequestIRQ (9F),
+.BR csx_RequestWindow (9F)
.sp
.LP
\fIPC Card 95 Standard\fR, PCMCIA/JEIDA
diff --git a/usr/src/man/man9f/csx_RepGet8.9f b/usr/src/man/man9f/csx_RepGet8.9f
index 22e68ddeb4..d1a1e48784 100644
--- a/usr/src/man/man9f/csx_RepGet8.9f
+++ b/usr/src/man/man9f/csx_RepGet8.9f
@@ -110,9 +110,13 @@ may be useful when reading from a data register.
.SH CONTEXT
These functions may be called from user, kernel, or interrupt context.
.SH SEE ALSO
-\fBcsx_DupHandle\fR(9F), \fBcsx_Get8\fR(9F), \fBcsx_GetMappedAddr\fR(9F),
-\fBcsx_Put8\fR(9F), \fBcsx_RepPut8\fR(9F), \fBcsx_RequestIO\fR(9F),
-\fBcsx_RequestWindow\fR(9F)
+.BR csx_DupHandle (9F),
+.BR csx_Get8 (9F),
+.BR csx_GetMappedAddr (9F),
+.BR csx_Put8 (9F),
+.BR csx_RepPut8 (9F),
+.BR csx_RequestIO (9F),
+.BR csx_RequestWindow (9F)
.sp
.LP
\fIPC Card 95 Standard\fR, PCMCIA/JEIDA
diff --git a/usr/src/man/man9f/csx_RepPut8.9f b/usr/src/man/man9f/csx_RepPut8.9f
index 5ba097f510..652a88c20a 100644
--- a/usr/src/man/man9f/csx_RepPut8.9f
+++ b/usr/src/man/man9f/csx_RepPut8.9f
@@ -110,9 +110,13 @@ may be useful when writing to a data register.
.SH CONTEXT
These functions may be called from user, kernel, or interrupt context.
.SH SEE ALSO
-\fBcsx_DupHandle\fR(9F), \fBcsx_Get8\fR(9F), \fBcsx_GetMappedAddr\fR(9F),
-\fBcsx_Put8\fR(9F), \fBcsx_RepGet8\fR(9F), \fBcsx_RequestIO\fR(9F),
-\fBcsx_RequestWindow\fR(9F)
+.BR csx_DupHandle (9F),
+.BR csx_Get8 (9F),
+.BR csx_GetMappedAddr (9F),
+.BR csx_Put8 (9F),
+.BR csx_RepGet8 (9F),
+.BR csx_RequestIO (9F),
+.BR csx_RequestWindow (9F)
.sp
.LP
\fIPC Card 95 Standard\fR, PCMCIA/JEIDA
diff --git a/usr/src/man/man9f/csx_RequestConfiguration.9f b/usr/src/man/man9f/csx_RequestConfiguration.9f
index 8c70e154db..7b318640cc 100644
--- a/usr/src/man/man9f/csx_RequestConfiguration.9f
+++ b/usr/src/man/man9f/csx_RequestConfiguration.9f
@@ -429,9 +429,12 @@ No \fBPCMCIA\fR hardware installed.
.SH CONTEXT
This function may be called from user or kernel context.
.SH SEE ALSO
-\fBcsx_AccessConfigurationRegister\fR(9F), \fBcsx_GetStatus\fR(9F),
-\fBcsx_RegisterClient\fR(9F), \fBcsx_ReleaseConfiguration\fR(9F),
-\fBcsx_RequestIO\fR(9F), \fBcsx_RequestIRQ\fR(9F)
+.BR csx_AccessConfigurationRegister (9F),
+.BR csx_GetStatus (9F),
+.BR csx_RegisterClient (9F),
+.BR csx_ReleaseConfiguration (9F),
+.BR csx_RequestIO (9F),
+.BR csx_RequestIRQ (9F)
.sp
.LP
\fIPC Card 95 Standard\fR, PCMCIA/JEIDA
diff --git a/usr/src/man/man9f/csx_RequestIO.9f b/usr/src/man/man9f/csx_RequestIO.9f
index 697c571673..a7e4ae3f24 100644
--- a/usr/src/man/man9f/csx_RequestIO.9f
+++ b/usr/src/man/man9f/csx_RequestIO.9f
@@ -446,7 +446,8 @@ No \fBPCMCIA\fR hardware installed.
.SH CONTEXT
These functions may be called from user or kernel context.
.SH SEE ALSO
-\fBcsx_RegisterClient\fR(9F), \fBcsx_RequestConfiguration\fR(9F)
+.BR csx_RegisterClient (9F),
+.BR csx_RequestConfiguration (9F)
.sp
.LP
\fIPC Card 95 Standard\fR, PCMCIA/JEIDA
diff --git a/usr/src/man/man9f/csx_RequestIRQ.9f b/usr/src/man/man9f/csx_RequestIRQ.9f
index 75c9df1b5f..3aed944d2b 100644
--- a/usr/src/man/man9f/csx_RequestIRQ.9f
+++ b/usr/src/man/man9f/csx_RequestIRQ.9f
@@ -242,7 +242,8 @@ No \fBPCMCIA\fR hardware installed.
.SH CONTEXT
These functions may be called from user or kernel context.
.SH SEE ALSO
-\fBcsx_ReleaseConfiguration\fR(9F), \fBcsx_RequestConfiguration\fR(9F)
+.BR csx_ReleaseConfiguration (9F),
+.BR csx_RequestConfiguration (9F)
.sp
.LP
\fIPC Card Card 95 Standard\fR, PCMCIA/JEIDA
diff --git a/usr/src/man/man9f/csx_RequestSocketMask.9f b/usr/src/man/man9f/csx_RequestSocketMask.9f
index c8901cfd77..ff9aeaf199 100644
--- a/usr/src/man/man9f/csx_RequestSocketMask.9f
+++ b/usr/src/man/man9f/csx_RequestSocketMask.9f
@@ -161,8 +161,10 @@ No \fBPCMCIA\fR hardware installed.
.SH CONTEXT
These functions may be called from user or kernel context.
.SH SEE ALSO
-\fBcsx_event_handler\fR(9E), \fBcsx_GetEventMask\fR(9F),
-\fBcsx_RegisterClient\fR(9F), \fBcsx_SetEventMask\fR(9F)
+.BR csx_event_handler (9E),
+.BR csx_GetEventMask (9F),
+.BR csx_RegisterClient (9F),
+.BR csx_SetEventMask (9F)
.sp
.LP
\fIPC Card 95 Standard\fR, PCMCIA/JEIDA
diff --git a/usr/src/man/man9f/csx_RequestWindow.9f b/usr/src/man/man9f/csx_RequestWindow.9f
index a9dacffb54..2701d3410c 100644
--- a/usr/src/man/man9f/csx_RequestWindow.9f
+++ b/usr/src/man/man9f/csx_RequestWindow.9f
@@ -439,9 +439,11 @@ No \fBPCMCIA \fRhardware installed.
.SH CONTEXT
These functions may be called from user or kernel context.
.SH SEE ALSO
-\fBcsx_ConvertSpeed\fR(9F), \fBcsx_MapMemPage\fR(9F),
-\fBcsx_ModifyWindow\fR(9F), \fBcsx_RegisterClient\fR(9F),
-\fBcsx_RequestConfiguration\fR(9F)
+.BR csx_ConvertSpeed (9F),
+.BR csx_MapMemPage (9F),
+.BR csx_ModifyWindow (9F),
+.BR csx_RegisterClient (9F),
+.BR csx_RequestConfiguration (9F)
.sp
.LP
\fIPC\fR \fICard\fR \fI95\fR \fIStandard,\fR PCMCIA/JEIDA
diff --git a/usr/src/man/man9f/csx_ResetFunction.9f b/usr/src/man/man9f/csx_ResetFunction.9f
index 33aebf329b..3d81019032 100644
--- a/usr/src/man/man9f/csx_ResetFunction.9f
+++ b/usr/src/man/man9f/csx_ResetFunction.9f
@@ -127,7 +127,8 @@ No \fBPCMCIA\fR hardware installed.
.SH CONTEXT
This function may be called from user or kernel context.
.SH SEE ALSO
-\fBcsx_event_handler\fR(9E), \fBcsx_RegisterClient\fR(9F)
+.BR csx_event_handler (9E),
+.BR csx_RegisterClient (9F)
.sp
.LP
\fIPC Card 95 Standard\fR, PCMCIA/JEIDA
diff --git a/usr/src/man/man9f/csx_SetEventMask.9f b/usr/src/man/man9f/csx_SetEventMask.9f
index 8764765140..da63e3ad81 100644
--- a/usr/src/man/man9f/csx_SetEventMask.9f
+++ b/usr/src/man/man9f/csx_SetEventMask.9f
@@ -154,8 +154,10 @@ No \fBPCMCIA \fRhardware installed.
.SH CONTEXT
These functions may be called from user or kernel context.
.SH SEE ALSO
-\fBcsx_event_handler\fR(9E), \fBcsx_RegisterClient\fR(9F),
-\fBcsx_ReleaseSocketMask\fR(9F), \fBcsx_RequestSocketMask\fR(9F)
+.BR csx_event_handler (9E),
+.BR csx_RegisterClient (9F),
+.BR csx_ReleaseSocketMask (9F),
+.BR csx_RequestSocketMask (9F)
.sp
.LP
\fIPC Card 95 Standard,\fR PCMCIA/JEIDA
diff --git a/usr/src/man/man9f/csx_SetHandleOffset.9f b/usr/src/man/man9f/csx_SetHandleOffset.9f
index 8b000da33e..126fa5aacf 100644
--- a/usr/src/man/man9f/csx_SetHandleOffset.9f
+++ b/usr/src/man/man9f/csx_SetHandleOffset.9f
@@ -50,8 +50,9 @@ Successful operation.
.SH CONTEXT
This function may be called from user or kernel context.
.SH SEE ALSO
-\fBcsx_GetHandleOffset\fR(9F), \fBcsx_RequestIO\fR(9F),
-\fBcsx_RequestIRQ\fR(9F)
+.BR csx_GetHandleOffset (9F),
+.BR csx_RequestIO (9F),
+.BR csx_RequestIRQ (9F)
.sp
.LP
\fIPC Card 95 Standard\fR, PCMCIA/JEIDA
diff --git a/usr/src/man/man9f/csx_ValidateCIS.9f b/usr/src/man/man9f/csx_ValidateCIS.9f
index b1b8495f15..5f87886463 100644
--- a/usr/src/man/man9f/csx_ValidateCIS.9f
+++ b/usr/src/man/man9f/csx_ValidateCIS.9f
@@ -121,8 +121,10 @@ No \fBPCMCIA\fR hardware installed.
.SH CONTEXT
This function may be called from user or kernel context.
.SH SEE ALSO
-\fBcsx_GetFirstTuple\fR(9F), \fBcsx_GetTupleData\fR(9F),
-\fBcsx_ParseTuple\fR(9F), \fBcsx_RegisterClient\fR(9F)
+.BR csx_GetFirstTuple (9F),
+.BR csx_GetTupleData (9F),
+.BR csx_ParseTuple (9F),
+.BR csx_RegisterClient (9F)
.sp
.LP
\fIPC Card 95 Standard\fR, PCMCIA/JEIDA
diff --git a/usr/src/man/man9f/datamsg.9f b/usr/src/man/man9f/datamsg.9f
index 6e7f1cd3a4..2dcfb47f68 100644
--- a/usr/src/man/man9f/datamsg.9f
+++ b/usr/src/man/man9f/datamsg.9f
@@ -95,7 +95,11 @@ The \fBput\fR(9E) routine enqueues all data messages for handling by the
.SH SEE ALSO
.sp
.LP
-\fBput\fR(9E), \fBsrv\fR(9E), \fBallocb\fR(9F), \fBdatab\fR(9S), \fBmsgb\fR(9S)
+.BR put (9E),
+.BR srv (9E),
+.BR allocb (9F),
+.BR datab (9S),
+.BR msgb (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ddi_add_event_handler.9f b/usr/src/man/man9f/ddi_add_event_handler.9f
index 1bf322d413..0b82fce3b6 100644
--- a/usr/src/man/man9f/ddi_add_event_handler.9f
+++ b/usr/src/man/man9f/ddi_add_event_handler.9f
@@ -147,7 +147,7 @@ or a bad cookie.
The \fBddi_add_event_handler()\fR and \fBhandler()\fR function can be called
from user and kernel contexts only.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for a description of the following attributes:
+See \fBattributes\fR(7) for a description of the following attributes:
.sp
.sp
@@ -161,8 +161,9 @@ Stability Level Committed
.TE
.SH SEE ALSO
-\fBattributes\fR(5), \fBddi_get_eventcookie\fR(9F),
-\fBddi_remove_event_handler\fR(9F)
+.BR attributes (7),
+.BR ddi_get_eventcookie (9F),
+.BR ddi_remove_event_handler (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ddi_add_intr.9f b/usr/src/man/man9f/ddi_add_intr.9f
index 1a68b1bb04..eedb9edb7d 100644
--- a/usr/src/man/man9f/ddi_add_intr.9f
+++ b/usr/src/man/man9f/ddi_add_intr.9f
@@ -165,9 +165,9 @@ with a particular interrupt specification. This routine should be called before
initialize locks (\fBmutex\fR(9F), \fBrwlock\fR(9F)) used by the interrupt
routine. The interrupt number \fIinumber\fR determines for which interrupt
specification to retrieve the cookie. \fIinumber\fR is associated with
-information provided either by the device (see \fBsbus\fR(4)) or the hardware
-configuration file (see \fBsysbus\fR(4), \fBisa\fR(4), and
-\fBdriver.conf\fR(4)). If only one interrupt is associated with the device,
+information provided either by the device (see \fBsbus\fR(5)) or the hardware
+configuration file (see \fBsysbus\fR(5), \fBisa\fR(5), and
+\fBdriver.conf\fR(5)). If only one interrupt is associated with the device,
\fIinumber\fR should be \fB0\fR.
.sp
.LP
@@ -228,7 +228,7 @@ acquired by the interrupt handler should not be held across the call to
.SS "For All Three Functions:"
For certain bus types, you can call these \fBDDI\fR functions from a
high-interrupt context. These types include \fBISA\fR and SBus buses. See
-\fBsysbus\fR(4), \fBisa\fR(4), and \fBsbus\fR(4) for details.
+\fBsysbus\fR(5), \fBisa\fR(5), and \fBsbus\fR(5) for details.
.SH RETURN VALUES
\fBddi_add_intr()\fR and \fBddi_get_iblock_cookie()\fR return:
.sp
@@ -263,7 +263,7 @@ On failure. \fBDDI_FAILURE\fR can also be returned on failure to find interrupt
\fBddi_add_intr()\fR, \fBddi_remove_intr()\fR, and
\fBddi_get_iblock_cookie()\fR can be called from user or kernel context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -277,10 +277,19 @@ Interface Stability Obsolete
.TE
.SH SEE ALSO
-\fBdriver.conf\fR(4), \fBisa\fR(4), \fBsbus\fR(4), \fBsysbus\fR(4),
-\fBattach\fR(9E), \fBdetach\fR(9E), \fBddi_intr_hilevel\fR(9F),
-\fBIntro\fR(9F), \fBmutex\fR(9F), \fBmutex_init\fR(9F), \fBrw_init\fR(9F),
-\fBrwlock\fR(9F), \fBddi_idevice_cookie\fR(9S)
+.BR driver.conf (5),
+.BR isa (5),
+.BR sbus (5),
+.BR sysbus (5),
+.BR attach (9E),
+.BR detach (9E),
+.BR Intro (9F),
+.BR ddi_intr_hilevel (9F),
+.BR mutex (9F),
+.BR mutex_init (9F),
+.BR rw_init (9F),
+.BR rwlock (9F),
+.BR ddi_idevice_cookie (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ddi_add_softintr.9f b/usr/src/man/man9f/ddi_add_softintr.9f
index 725b7ea8d2..84e58f6f53 100644
--- a/usr/src/man/man9f/ddi_add_softintr.9f
+++ b/usr/src/man/man9f/ddi_add_softintr.9f
@@ -496,7 +496,7 @@ xxsoftintr(caddr_t arg)
.in -2
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -510,8 +510,12 @@ Interface Stability Obsolete
.TE
.SH SEE ALSO
-\fBddi_add_intr\fR(9F), \fBddi_in_panic\fR(9F), \fBddi_intr_hilevel\fR(9F),
-\fBddi_remove_intr\fR(9F), \fBIntro\fR(9F), \fBmutex_init\fR(9F)
+.BR Intro (9F),
+.BR ddi_add_intr (9F),
+.BR ddi_in_panic (9F),
+.BR ddi_intr_hilevel (9F),
+.BR ddi_remove_intr (9F),
+.BR mutex_init (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ddi_binding_name.9f b/usr/src/man/man9f/ddi_binding_name.9f
index 858d9e28e2..4164ad5691 100644
--- a/usr/src/man/man9f/ddi_binding_name.9f
+++ b/usr/src/man/man9f/ddi_binding_name.9f
@@ -45,7 +45,7 @@ a driver to a device.
\fBddi_binding_name()\fR and \fBddi_get_name()\fR can be called from user,
kernel, or interrupt context.
.SH SEE ALSO
-\fBddi_node_name\fR(9F)
+.BR ddi_node_name (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ddi_btop.9f b/usr/src/man/man9f/ddi_btop.9f
index 79af087a99..6343650926 100644
--- a/usr/src/man/man9f/ddi_btop.9f
+++ b/usr/src/man/man9f/ddi_btop.9f
@@ -67,7 +67,9 @@ pagesize = ddi_ptob(dip, 1L);
.in -2
.SH SEE ALSO
-\fBbtop\fR(9F), \fBbtopr\fR(9F), \fBptob\fR(9F)
+.BR btop (9F),
+.BR btopr (9F),
+.BR ptob (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ddi_can_receive_sig.9f b/usr/src/man/man9f/ddi_can_receive_sig.9f
index 333e2ad97b..f6434d552d 100644
--- a/usr/src/man/man9f/ddi_can_receive_sig.9f
+++ b/usr/src/man/man9f/ddi_can_receive_sig.9f
@@ -56,4 +56,6 @@ are blocked (see \fBsigprocmask\fR(2)).
The \fBddi_can_receive_sig()\fR function may be called from user, kernel, or
interrupt context.
.SH SEE ALSO
-\fBclose\fR(9E), \fBcv_wait\fR(9F), \fBqwait\fR(9F)
+.BR close (9E),
+.BR cv_wait (9F),
+.BR qwait (9F)
diff --git a/usr/src/man/man9f/ddi_cb_register.9f b/usr/src/man/man9f/ddi_cb_register.9f
index d7f6323560..e6b83aa658 100644
--- a/usr/src/man/man9f/ddi_cb_register.9f
+++ b/usr/src/man/man9f/ddi_cb_register.9f
@@ -498,7 +498,7 @@ These functions can be called from kernel, non-interrupt context.
.in -2
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -514,8 +514,10 @@ MT-Level Unsafe
.TE
.SH SEE ALSO
-\fBattributes\fR(5), \fBddi_intr_alloc\fR(9F), \fBddi_intr_free\fR(9F),
-\fBddi_intr_set_nreq\fR(9F)
+.BR attributes (7),
+.BR ddi_intr_alloc (9F),
+.BR ddi_intr_free (9F),
+.BR ddi_intr_set_nreq (9F)
.SH NOTES
Users of these interfaces that register for \fBDDI_CB_FLAG_INTR\fR become
participants in interrupt resource management. With that participation comes a
diff --git a/usr/src/man/man9f/ddi_check_acc_handle.9f b/usr/src/man/man9f/ddi_check_acc_handle.9f
index 05424bd313..53c3c47c88 100644
--- a/usr/src/man/man9f/ddi_check_acc_handle.9f
+++ b/usr/src/man/man9f/ddi_check_acc_handle.9f
@@ -118,5 +118,8 @@ xxread(dev_t dev, struct uio *uio_p, cred_t *cred_p)
The \fBddi_check_acc_handle()\fR and \fBddi_check_dma_handle()\fR functions may
be called from user, kernel, or interrupt context.
.SH SEE ALSO
-\fBddi_regs_map_setup\fR(9F), \fBddi_dma_alloc_handle\fR(9F),
-\fBddi_dev_report_fault\fR(9F), \fBddi_get8\fR(9F), \fBddi_put8\fR(9F)
+.BR ddi_dev_report_fault (9F),
+.BR ddi_dma_alloc_handle (9F),
+.BR ddi_get8 (9F),
+.BR ddi_put8 (9F),
+.BR ddi_regs_map_setup (9F)
diff --git a/usr/src/man/man9f/ddi_copyin.9f b/usr/src/man/man9f/ddi_copyin.9f
index 1b78110f44..6d86e07116 100644
--- a/usr/src/man/man9f/ddi_copyin.9f
+++ b/usr/src/man/man9f/ddi_copyin.9f
@@ -171,8 +171,12 @@ specified argument contains an invalid address, an error code is returned.
.in -2
.SH SEE ALSO
-\fBioctl\fR(9E), \fBbcopy\fR(9F), \fBcopyin\fR(9F), \fBcopyout\fR(9F),
-\fBddi_copyout\fR(9F), \fBuiomove\fR(9F)
+.BR ioctl (9E),
+.BR bcopy (9F),
+.BR copyin (9F),
+.BR copyout (9F),
+.BR ddi_copyout (9F),
+.BR uiomove (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ddi_copyout.9f b/usr/src/man/man9f/ddi_copyout.9f
index 4f5bcc98ea..2289ecf4d4 100644
--- a/usr/src/man/man9f/ddi_copyout.9f
+++ b/usr/src/man/man9f/ddi_copyout.9f
@@ -171,8 +171,12 @@ specified argument contains an invalid address, an error code is returned.
.in -2
.SH SEE ALSO
-\fBioctl\fR(9E), \fBbcopy\fR(9F), \fBcopyin\fR(9F), \fBcopyout\fR(9F),
-\fBddi_copyin\fR(9F), \fBuiomove\fR(9F)
+.BR ioctl (9E),
+.BR bcopy (9F),
+.BR copyin (9F),
+.BR copyout (9F),
+.BR ddi_copyin (9F),
+.BR uiomove (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ddi_create_minor_node.9f b/usr/src/man/man9f/ddi_create_minor_node.9f
index 8683fda0ef..5280932843 100644
--- a/usr/src/man/man9f/ddi_create_minor_node.9f
+++ b/usr/src/man/man9f/ddi_create_minor_node.9f
@@ -202,8 +202,8 @@ the \fB/devices\fR hierarchy. At-sign (\fB@\fR), slash (\fB/\fR), and space are
not allowed. The \fIspec_type\fR specifies whether this is a block or character
device. The \fIminor_num\fR is the minor number for the device. The
\fInode_type\fR is used to create the names in the \fB/dev\fR hierarchy that
-refers to the names in the \fB/devices\fR hierarchy. See \fBdisks\fR(1M),
-\fBports\fR(1M), \fBtapes\fR(1M), \fBdevlinks\fR(1M). Finally \fIflag\fR
+refers to the names in the \fB/devices\fR hierarchy. See \fBdisks\fR(8),
+\fBports\fR(8), \fBtapes\fR(8), \fBdevlinks\fR(8). Finally \fIflag\fR
determines if this is a clone device or not, and what device class the node
belongs to.
.SH RETURN VALUES
@@ -247,23 +247,28 @@ ddi_create_minor_node(dip, "foo", S_IFBLK, 0, DDI_NT_BLOCK, 0);
.in -2
.SH SEE ALSO
-\fBadd_drv\fR(1M), \fBdevlinks\fR(1M), \fBdisks\fR(1M), \fBdrvconfig\fR(1M),
-\fBports\fR(1M), \fBtapes\fR(1M), \fBattach\fR(9E),
-\fBddi_remove_minor_node\fR(9F)
+.BR add_drv (8),
+.BR devlinks (8),
+.BR disks (8),
+.BR drvconfig (8),
+.BR ports (8),
+.BR tapes (8),
+.BR attach (9E),
+.BR ddi_remove_minor_node (9F)
.sp
.LP
\fIWriting Device Drivers\fR
.SH NOTES
If the driver is for a network device (\fInode_type\fR \fBDDI_NT_NET\fR), note
that the driver name will undergo the driver name constraints identified in the
-NOTES section of \fBdlpi\fR(7P). Additionally, the minor name must match the
+NOTES section of \fBdlpi\fR(4P). Additionally, the minor name must match the
driver name for a DLPI style 2 provider. If the driver is a DLPI style 1
provider, the minor name must also match the driver name with the exception
that the ppa is appended to the minor name.
.sp
.LP
-Non-\fBgld\fR(7D)-based DLPI network streams drivers are encouraged to switch
-to \fBgld\fR(7D). Failing this, a driver that creates DLPI style-2 minor
+Non-\fBgld\fR(4D)-based DLPI network streams drivers are encouraged to switch
+to \fBgld\fR(4D). Failing this, a driver that creates DLPI style-2 minor
nodes must specify CLONE_DEV for its style-2 \fBddi_create_minor_node()\fR
nodes and use \fBqassociate\fR(9F). A driver that supports both style-1 and
style-2 minor nodes should return DDI_FAILURE for DDI_INFO_DEVT2INSTANCE and
@@ -271,7 +276,7 @@ DDI_INFO_DEVT2DEVINFO \fBgetinfo\fR(9E) calls to style-2 minor nodes. (The
correct association is already established by \fBqassociate\fR(9F)). A driver
that only supports style-2 minor nodes can use \fBddi_no_info\fR(9F) for its
\fBgetinfo\fR(9E) implementation. For drivers that do not follow these rules,
-the results of a \fBmodunload\fR(1M) of the driver or a \fBcfgadm\fR(1M) remove
+the results of a \fBmodunload\fR(8) of the driver or a \fBcfgadm\fR(8) remove
of hardware controlled by the driver are undefined.
.SH WARNING
Drivers must remove references to GLOBAL_DEV, NODEBOUND_DEV, NODESPECIFIC_DEV,
diff --git a/usr/src/man/man9f/ddi_cred.9f b/usr/src/man/man9f/ddi_cred.9f
index 83bc480c64..937810d92c 100644
--- a/usr/src/man/man9f/ddi_cred.9f
+++ b/usr/src/man/man9f/ddi_cred.9f
@@ -183,7 +183,7 @@ on a user credential structure that is referenced by other parts of the system.
.SH CONTEXT
These functions can be called from user and kernel contexts.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for a description of the following attributes:
+See \fBattributes\fR(7) for a description of the following attributes:
.sp
.sp
@@ -199,7 +199,9 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBattributes\fR(5), \fBprivileges\fR(5), \fBdrv_priv\fR(9F)
+.BR attributes (7),
+.BR privileges (7),
+.BR drv_priv (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ddi_dev_is_needed.9f b/usr/src/man/man9f/ddi_dev_is_needed.9f
index 293e2509ee..89139d84a9 100644
--- a/usr/src/man/man9f/ddi_dev_is_needed.9f
+++ b/usr/src/man/man9f/ddi_dev_is_needed.9f
@@ -137,7 +137,7 @@ xxdisk_strategy(struct buf *bp)
.SH CONTEXT
This function can be called from user or kernel context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -151,8 +151,13 @@ Interface Stability Obsolete
.TE
.SH SEE ALSO
-\fBpm\fR(7D), \fBpm-components\fR(9P), \fBattach\fR(9E), \fBdetach\fR(9E),
-\fBpower\fR(9E), \fBpm_busy_component\fR(9F), \fBpm_idle_component\fR(9F)
+.BR pm (4D),
+.BR attach (9E),
+.BR detach (9E),
+.BR power (9E),
+.BR pm_busy_component (9F),
+.BR pm_idle_component (9F),
+.BR pm-components (9P)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ddi_dev_nintrs.9f b/usr/src/man/man9f/ddi_dev_nintrs.9f
index 06d70a41db..a8fcf0306d 100644
--- a/usr/src/man/man9f/ddi_dev_nintrs.9f
+++ b/usr/src/man/man9f/ddi_dev_nintrs.9f
@@ -49,7 +49,7 @@ The device has no interrupt specifications.
The \fBddi_dev_nintrs()\fR function can be called from user, interrupt, or
kernel context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -63,8 +63,12 @@ Interface Stability Obsolete
.TE
.SH SEE ALSO
-\fBisa\fR(4), \fBsbus\fR(4), \fBddi_add_intr\fR(9F), \fBddi_dev_nregs\fR(9F),
-\fBddi_dev_regsize\fR(9F), \fBIntro\fR(9F)
+.BR isa (5),
+.BR sbus (5),
+.BR Intro (9F),
+.BR ddi_add_intr (9F),
+.BR ddi_dev_nregs (9F),
+.BR ddi_dev_regsize (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ddi_dev_nregs.9f b/usr/src/man/man9f/ddi_dev_nregs.9f
index f538e44931..00786f011a 100644
--- a/usr/src/man/man9f/ddi_dev_nregs.9f
+++ b/usr/src/man/man9f/ddi_dev_nregs.9f
@@ -64,7 +64,8 @@ The device has no registers.
The \fBddi_dev_nregs()\fR function can be called from user, interrupt, or
kernel context.
.SH SEE ALSO
-\fBddi_dev_nintrs\fR(9F), \fBddi_dev_regsize\fR(9F)
+.BR ddi_dev_nintrs (9F),
+.BR ddi_dev_regsize (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ddi_dev_regsize.9f b/usr/src/man/man9f/ddi_dev_regsize.9f
index 7a6208a778..c43b5ec48c 100644
--- a/usr/src/man/man9f/ddi_dev_regsize.9f
+++ b/usr/src/man/man9f/ddi_dev_regsize.9f
@@ -80,7 +80,8 @@ An invalid (nonexistent) register number was specified.
The \fBddi_dev_regsize()\fR function can be called from user, interrupt, or
kernel context.
.SH SEE ALSO
-\fBddi_dev_nintrs\fR(9F), \fBddi_dev_nregs\fR(9F)
+.BR ddi_dev_nintrs (9F),
+.BR ddi_dev_nregs (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ddi_dev_report_fault.9f b/usr/src/man/man9f/ddi_dev_report_fault.9f
index 1b854204cc..9f143a9112 100644
--- a/usr/src/man/man9f/ddi_dev_report_fault.9f
+++ b/usr/src/man/man9f/ddi_dev_report_fault.9f
@@ -207,5 +207,6 @@ xx_error_intr(xx_soft_state *ssp)
The \fBddi_dev_report_fault()\fR function may be called from user, kernel, or
interrupt context.
.SH SEE ALSO
-\fBddi_check_acc_handle\fR(9F), \fBddi_check_dma_handle\fR(9F),
-\fBddi_get_devstate\fR(9F)
+.BR ddi_check_acc_handle (9F),
+.BR ddi_check_dma_handle (9F),
+.BR ddi_get_devstate (9F)
diff --git a/usr/src/man/man9f/ddi_device_copy.9f b/usr/src/man/man9f/ddi_device_copy.9f
index 03465634d7..b92620c70b 100644
--- a/usr/src/man/man9f/ddi_device_copy.9f
+++ b/usr/src/man/man9f/ddi_device_copy.9f
@@ -177,7 +177,8 @@ The byte count is not a multiple \fIdev_datasz\fR.
.SH CONTEXT
\fBddi_device_copy()\fR can be called from user, kernel, or interrupt context.
.SH SEE ALSO
-\fBddi_regs_map_free\fR(9F), \fBddi_regs_map_setup\fR(9F)
+.BR ddi_regs_map_free (9F),
+.BR ddi_regs_map_setup (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ddi_device_zero.9f b/usr/src/man/man9f/ddi_device_zero.9f
index 735e3102a0..635e5d840c 100644
--- a/usr/src/man/man9f/ddi_device_zero.9f
+++ b/usr/src/man/man9f/ddi_device_zero.9f
@@ -138,7 +138,8 @@ The byte count is not a multiple of \fIdev_datasz\fR.
.SH CONTEXT
\fBddi_device_zero()\fR can be called from user, kernel, or interrupt context.
.SH SEE ALSO
-\fBddi_regs_map_free\fR(9F), \fBddi_regs_map_setup\fR(9F)
+.BR ddi_regs_map_free (9F),
+.BR ddi_regs_map_setup (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ddi_devid_compare.9f b/usr/src/man/man9f/ddi_devid_compare.9f
index 68e63e427d..945d3a97b8 100644
--- a/usr/src/man/man9f/ddi_devid_compare.9f
+++ b/usr/src/man/man9f/ddi_devid_compare.9f
@@ -520,8 +520,12 @@ Failure; the \fIdevidstr\fR string was not valid.
.SH CONTEXT
These functions can be called from a user or kernel context.
.SH SEE ALSO
-\fBdevid_get\fR(3DEVID), \fBlibdevid\fR(3LIB), \fBattributes\fR(5),
-\fBattach\fR(9E), \fBdetach\fR(9E), \fBkmem_free\fR(9F)
+.BR devid_get (3DEVID),
+.BR libdevid (3LIB),
+.BR attributes (7),
+.BR attach (9E),
+.BR detach (9E),
+.BR kmem_free (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ddi_dma_addr_bind_handle.9f b/usr/src/man/man9f/ddi_dma_addr_bind_handle.9f
index f63d208da9..74573402f9 100644
--- a/usr/src/man/man9f/ddi_dma_addr_bind_handle.9f
+++ b/usr/src/man/man9f/ddi_dma_addr_bind_handle.9f
@@ -371,12 +371,19 @@ configuration.
context, except when \fIcallback\fR is set to \fBDDI_DMA_SLEEP\fR, in which
case it can only be called from user or kernel context.
.SH SEE ALSO
-\fBddi_dma_alloc_handle\fR(9F), \fBddi_dma_cookie_get\fR(9F),
-\fBddi_dma_cookie_iter\fR(9F), \fBddi_dma_free_handle\fR(9F),
-\fBddi_dma_getwin\fR(9F), \fBddi_dma_mem_alloc\fR(9F),
-\fBddi_dma_mem_free\fR(9F), \fBddi_dma_ncookies\fR(9F),
-\fBddi_dma_sync\fR(9F), \fBddi_dma_unbind_handle\fR(9F),
-\fBddi_umem_iosetup\fR(9F), \fBddi_dma_attr\fR(9S), \fBddi_dma_cookie\fR(9S)
+.BR ddi_dma_alloc_handle (9F),
+.BR ddi_dma_cookie_get (9F),
+.BR ddi_dma_cookie_iter (9F),
+.BR ddi_dma_free_handle (9F),
+.BR ddi_dma_getwin (9F),
+.BR ddi_dma_mem_alloc (9F),
+.BR ddi_dma_mem_free (9F),
+.BR ddi_dma_ncookies (9F),
+.BR ddi_dma_sync (9F),
+.BR ddi_dma_unbind_handle (9F),
+.BR ddi_umem_iosetup (9F),
+.BR ddi_dma_attr (9S),
+.BR ddi_dma_cookie (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ddi_dma_alloc_handle.9f b/usr/src/man/man9f/ddi_dma_alloc_handle.9f
index 5319ab7dc7..d5dfe26383 100644
--- a/usr/src/man/man9f/ddi_dma_alloc_handle.9f
+++ b/usr/src/man/man9f/ddi_dma_alloc_handle.9f
@@ -155,9 +155,12 @@ No resources are available.
context, except when \fIcallback\fR is set to \fBDDI_DMA_SLEEP\fR, in which
case it can be called from user or kernel context only.
.SH SEE ALSO
-\fBddi_dma_addr_bind_handle\fR(9F), \fBddi_dma_buf_bind_handle\fR(9F),
-\fBddi_dma_burstsizes\fR(9F), \fBddi_dma_free_handle\fR(9F),
-\fBddi_dma_unbind_handle\fR(9F), \fBddi_dma_attr\fR(9S)
+.BR ddi_dma_addr_bind_handle (9F),
+.BR ddi_dma_buf_bind_handle (9F),
+.BR ddi_dma_burstsizes (9F),
+.BR ddi_dma_free_handle (9F),
+.BR ddi_dma_unbind_handle (9F),
+.BR ddi_dma_attr (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ddi_dma_buf_bind_handle.9f b/usr/src/man/man9f/ddi_dma_buf_bind_handle.9f
index 7b92477f1a..6b45bf880e 100644
--- a/usr/src/man/man9f/ddi_dma_buf_bind_handle.9f
+++ b/usr/src/man/man9f/ddi_dma_buf_bind_handle.9f
@@ -353,12 +353,18 @@ configuration.
context, except when \fIcallback\fR is set to \fBDDI_DMA_SLEEP\fR, in which
case it can be called from user or kernel context only.
.SH SEE ALSO
-\fBddi_dma_addr_bind_handle\fR(9F), \fBddi_dma_alloc_handle\fR(9F),
-\fBddi_dma_cookie_get\fR(9F), \fBddi_dma_cookie_iter\fR(9F),
-\fBddi_dma_free_handle\fR(9F), \fBddi_dma_getwin\fR(9F),
-\fBddi_dma_ncookies\fR(9F), \fBddi_dma_sync\fR(9F),
-\fBddi_dma_unbind_handle\fR(9F), \fBbuf\fR(9S), \fBddi_dma_attr\fR(9S),
-\fBddi_dma_cookie\fR(9S)
+.BR ddi_dma_addr_bind_handle (9F),
+.BR ddi_dma_alloc_handle (9F),
+.BR ddi_dma_cookie_get (9F),
+.BR ddi_dma_cookie_iter (9F),
+.BR ddi_dma_free_handle (9F),
+.BR ddi_dma_getwin (9F),
+.BR ddi_dma_ncookies (9F),
+.BR ddi_dma_sync (9F),
+.BR ddi_dma_unbind_handle (9F),
+.BR buf (9S),
+.BR ddi_dma_attr (9S),
+.BR ddi_dma_cookie (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ddi_dma_burstsizes.9f b/usr/src/man/man9f/ddi_dma_burstsizes.9f
index ff0e6f1951..e07285873e 100644
--- a/usr/src/man/man9f/ddi_dma_burstsizes.9f
+++ b/usr/src/man/man9f/ddi_dma_burstsizes.9f
@@ -42,7 +42,8 @@ to device's own limitations.
.SH CONTEXT
This function can be called from user or interrupt context.
.SH SEE ALSO
-\fBddi_dma_alloc_handle\fR(9F), \fBddi_dma_attr\fR(9S)
+.BR ddi_dma_alloc_handle (9F),
+.BR ddi_dma_attr (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ddi_dma_free_handle.9f b/usr/src/man/man9f/ddi_dma_free_handle.9f
index 52e7a16103..dacd47fde9 100644
--- a/usr/src/man/man9f/ddi_dma_free_handle.9f
+++ b/usr/src/man/man9f/ddi_dma_free_handle.9f
@@ -38,7 +38,8 @@ caching on the handle.
\fBddi_dma_free_handle()\fR can be called from user, kernel, or interrupt
context.
.SH SEE ALSO
-\fBddi_dma_alloc_handle\fR(9F), \fBddi_dma_unbind_handle\fR(9F)
+.BR ddi_dma_alloc_handle (9F),
+.BR ddi_dma_unbind_handle (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ddi_dma_getwin.9f b/usr/src/man/man9f/ddi_dma_getwin.9f
index 44ad7e51cb..df3661b93f 100644
--- a/usr/src/man/man9f/ddi_dma_getwin.9f
+++ b/usr/src/man/man9f/ddi_dma_getwin.9f
@@ -143,9 +143,12 @@ Resources for the specified \fBDMA\fR window are allocated.
.SH SEE ALSO
\fBddi_dma_addr_bind_handle\fR(9F), \fBddi_dma_alloc_handle\fR(9F),
\fBddi_dma_buf_bind_handle\fR(9F), \fBddi_dma_cookie_get\fR(9F),
-\fBddi_dma_cookie_iter\fR(9F), \fBddi_dma_ncookies\fR(9F),
-\fBddi_dma_numwin\fR(9F), \fBddi_dma_sync\fR(9F),
-\fBddi_dma_unbind_handle\fR(9F), \fBddi_dma_cookie\fR(9S)
+.BR ddi_dma_cookie_iter (9F),
+.BR ddi_dma_ncookies (9F),
+.BR ddi_dma_numwin (9F),
+.BR ddi_dma_sync (9F),
+.BR ddi_dma_unbind_handle (9F),
+.BR ddi_dma_cookie (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ddi_dma_mem_alloc.9f b/usr/src/man/man9f/ddi_dma_mem_alloc.9f
index e3261e30e6..65e0cb7e9a 100644
--- a/usr/src/man/man9f/ddi_dma_mem_alloc.9f
+++ b/usr/src/man/man9f/ddi_dma_mem_alloc.9f
@@ -256,10 +256,15 @@ The \fBddi_dma_mem_alloc()\fR function can be called from user, interrupt, or
kernel context except when \fIwaitfp\fR is set to \fBDDI_DMA_SLEEP\fR, in which
case it cannot be called from interrupt context.
.SH SEE ALSO
-\fBddi_dma_addr_bind_handle\fR(9F), \fBddi_dma_alloc_handle\fR(9F),
-\fBddi_dma_mem_free\fR(9F), \fBddi_dma_sync\fR(9F),
-\fBddi_dma_unbind_handle\fR(9F), \fBddi_get8\fR(9F), \fBddi_put8\fR(9F),
-\fBddi_device_acc_attr\fR(9S), \fBddi_dma_attr\fR(9S)
+.BR ddi_dma_addr_bind_handle (9F),
+.BR ddi_dma_alloc_handle (9F),
+.BR ddi_dma_mem_free (9F),
+.BR ddi_dma_sync (9F),
+.BR ddi_dma_unbind_handle (9F),
+.BR ddi_get8 (9F),
+.BR ddi_put8 (9F),
+.BR ddi_device_acc_attr (9S),
+.BR ddi_dma_attr (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ddi_dma_mem_free.9f b/usr/src/man/man9f/ddi_dma_mem_free.9f
index d8b1b4ad3e..91b63df9f2 100644
--- a/usr/src/man/man9f/ddi_dma_mem_free.9f
+++ b/usr/src/man/man9f/ddi_dma_mem_free.9f
@@ -35,7 +35,7 @@ illumos DDI specific (illumos DDI).
.SH CONTEXT
\fBddi_dma_mem_free()\fR can be called from user, kernel, or interrupt context.
.SH SEE ALSO
-\fBddi_dma_mem_alloc\fR(9F)
+.BR ddi_dma_mem_alloc (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ddi_dma_numwin.9f b/usr/src/man/man9f/ddi_dma_numwin.9f
index fb2d07522c..71b6c42bde 100644
--- a/usr/src/man/man9f/ddi_dma_numwin.9f
+++ b/usr/src/man/man9f/ddi_dma_numwin.9f
@@ -64,8 +64,10 @@ Successfully filled in the number of \fBDMA\fR windows.
.SH CONTEXT
\fBddi_dma_numwin()\fR can be called from user, kernel, or interrupt context.
.SH SEE ALSO
-\fBddi_dma_addr_bind_handle\fR(9F), \fBddi_dma_alloc_handle\fR(9F),
-\fBddi_dma_buf_bind_handle\fR(9F), \fBddi_dma_unbind_handle\fR(9F)
+.BR ddi_dma_addr_bind_handle (9F),
+.BR ddi_dma_alloc_handle (9F),
+.BR ddi_dma_buf_bind_handle (9F),
+.BR ddi_dma_unbind_handle (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ddi_dma_set_sbus64.9f b/usr/src/man/man9f/ddi_dma_set_sbus64.9f
index f30340e032..d893f5d269 100644
--- a/usr/src/man/man9f/ddi_dma_set_sbus64.9f
+++ b/usr/src/man/man9f/ddi_dma_set_sbus64.9f
@@ -81,7 +81,7 @@ Successfully set the SBus to 64-bit mode.
\fBddi_dma_set_sbus64()\fR can be called from user, kernel, or interrupt
context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -95,9 +95,12 @@ Architecture SBus
.TE
.SH SEE ALSO
-\fBattributes\fR(5), \fBddi_dma_addr_bind_handle\fR(9F),
-\fBddi_dma_alloc_handle\fR(9F), \fBddi_dma_buf_bind_handle\fR(9F),
-\fBddi_dma_burstsizes\fR(9F), \fBddi_dma_attr\fR(9S)
+.BR attributes (7),
+.BR ddi_dma_addr_bind_handle (9F),
+.BR ddi_dma_alloc_handle (9F),
+.BR ddi_dma_buf_bind_handle (9F),
+.BR ddi_dma_burstsizes (9F),
+.BR ddi_dma_attr (9S)
.SH NOTES
64-bit SBus mode is activated on a per SBus slot basis. If there are multiple
SBus cards in one slot, they all must operate in 64-bit mode or they all must
diff --git a/usr/src/man/man9f/ddi_dma_sync.9f b/usr/src/man/man9f/ddi_dma_sync.9f
index fd6004dacc..988061f30d 100644
--- a/usr/src/man/man9f/ddi_dma_sync.9f
+++ b/usr/src/man/man9f/ddi_dma_sync.9f
@@ -125,9 +125,11 @@ The address range to be flushed is out of the address range established by
The \fBddi_dma_sync()\fR function can be called from user, interrupt, or kernel
context.
.SH SEE ALSO
-\fBddi_dma_addr_bind_handle\fR(9F), \fBddi_dma_alloc_handle\fR(9F),
-\fBddi_dma_buf_bind_handle\fR(9F), \fBddi_dma_mem_alloc\fR(9F),
-\fBddi_dma_unbind_handle\fR(9F)
+.BR ddi_dma_addr_bind_handle (9F),
+.BR ddi_dma_alloc_handle (9F),
+.BR ddi_dma_buf_bind_handle (9F),
+.BR ddi_dma_mem_alloc (9F),
+.BR ddi_dma_unbind_handle (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ddi_dma_unbind_handle.9f b/usr/src/man/man9f/ddi_dma_unbind_handle.9f
index fb21ee1747..04a3a47136 100644
--- a/usr/src/man/man9f/ddi_dma_unbind_handle.9f
+++ b/usr/src/man/man9f/ddi_dma_unbind_handle.9f
@@ -58,9 +58,11 @@ on failure
\fBddi_dma_unbind_handle()\fR can be called from user, kernel, or interrupt
context.
.SH SEE ALSO
-\fBddi_dma_addr_bind_handle\fR(9F), \fBddi_dma_alloc_handle\fR(9F),
-\fBddi_dma_buf_bind_handle\fR(9F), \fBddi_dma_free_handle\fR(9F),
-\fBddi_dma_sync\fR(9F)
+.BR ddi_dma_addr_bind_handle (9F),
+.BR ddi_dma_alloc_handle (9F),
+.BR ddi_dma_buf_bind_handle (9F),
+.BR ddi_dma_free_handle (9F),
+.BR ddi_dma_sync (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ddi_dmae.9f b/usr/src/man/man9f/ddi_dmae.9f
index 3e97f00451..20d6beb884 100644
--- a/usr/src/man/man9f/ddi_dmae.9f
+++ b/usr/src/man/man9f/ddi_dmae.9f
@@ -308,7 +308,7 @@ If \fBddi_dmae_alloc()\fR is called from interrupt context, then its
\fBDDI_DMA_SLEEP\fR. Otherwise, all these routines can be called from user,
interrupt, or kernel context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -322,8 +322,13 @@ Architecture x86
.TE
.SH SEE ALSO
-\fBisa\fR(4), \fBattributes\fR(5), \fBddi_dma_buf_setup\fR(9F),
-\fBddi_dma_cookie_iter\fR(9F), \fBddi_dma_getwin\fR(9F),
-\fBddi_dma_mem_alloc\fR(9F), \fBddi_dma_addr_bind_handle\fR(9F), \fBddi_dma_attr\fR(9S),
-\fBddi_dma_cookie\fR(9S),
-\fBddi_dmae_req\fR(9S)
+.BR isa (5),
+.BR attributes (7),
+.BR ddi_dma_addr_bind_handle (9F),
+.BR ddi_dma_buf_setup (9F),
+.BR ddi_dma_cookie_iter (9F),
+.BR ddi_dma_getwin (9F),
+.BR ddi_dma_mem_alloc (9F),
+.BR ddi_dma_attr (9S),
+.BR ddi_dma_cookie (9S),
+.BR ddi_dmae_req (9S)
diff --git a/usr/src/man/man9f/ddi_driver_major.9f b/usr/src/man/man9f/ddi_driver_major.9f
index 18ec5585d3..86234991fe 100644
--- a/usr/src/man/man9f/ddi_driver_major.9f
+++ b/usr/src/man/man9f/ddi_driver_major.9f
@@ -35,7 +35,7 @@ device, if any, or \fBDDI_MAJOR_T_NONE\fR otherwise.
.SH CONTEXT
\fBddi_driver_major()\fR can be called from kernel or interrupt context.
.SH SEE ALSO
-\fBddi_driver_name\fR(9F)
+.BR ddi_driver_name (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ddi_driver_name.9f b/usr/src/man/man9f/ddi_driver_name.9f
index 3fcf24eaaa..85fa89040b 100644
--- a/usr/src/man/man9f/ddi_driver_name.9f
+++ b/usr/src/man/man9f/ddi_driver_name.9f
@@ -36,7 +36,7 @@ device.
.SH CONTEXT
\fBddi_driver_name()\fR can be called from kernel, or interrupt context.
.SH SEE ALSO
-\fBddi_get_name\fR(9F)
+.BR ddi_get_name (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ddi_enter_critical.9f b/usr/src/man/man9f/ddi_enter_critical.9f
index 4d1b3b973f..f01afbc833 100644
--- a/usr/src/man/man9f/ddi_enter_critical.9f
+++ b/usr/src/man/man9f/ddi_enter_critical.9f
@@ -67,7 +67,7 @@ Do not write code bracketed by \fBddi_enter_critical()\fR and
\fBddi_exit_critical()\fR that can get caught in an infinite loop, as the
machine may crash if you do.
.SH SEE ALSO
-\fBmutex\fR(9F)
+.BR mutex (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ddi_fm_acc_err_clear.9f b/usr/src/man/man9f/ddi_fm_acc_err_clear.9f
index 55e8bb5c1a..b460d7060b 100644
--- a/usr/src/man/man9f/ddi_fm_acc_err_clear.9f
+++ b/usr/src/man/man9f/ddi_fm_acc_err_clear.9f
@@ -61,7 +61,7 @@ clear the error status of a \fBDMA\fR or access handle respectively.
Once cleared, the driver is again able to access the mapped registers or memory
using programmed \fBI/O\fR through the handle.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -75,8 +75,11 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBattributes\fR(5), \fBddi_dma_mem_alloc\fR(9F), \fBddi_fm_acc_err_get\fR(9F),
-\fBddi_fm_dma_err_get\fR(9F), \fBddi_regs_map_setup\fR(9F)
+.BR attributes (7),
+.BR ddi_dma_mem_alloc (9F),
+.BR ddi_fm_acc_err_get (9F),
+.BR ddi_fm_dma_err_get (9F),
+.BR ddi_regs_map_setup (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ddi_fm_acc_err_get.9f b/usr/src/man/man9f/ddi_fm_acc_err_get.9f
index 1d1bc27666..1f081e8ea5 100644
--- a/usr/src/man/man9f/ddi_fm_acc_err_get.9f
+++ b/usr/src/man/man9f/ddi_fm_acc_err_get.9f
@@ -107,7 +107,7 @@ should be specified.
The \fBddi_fm_acc_err_get()\fR and \fBddi_fm_dma_err_get()\fR functions can be
called from user, kernel, or high-level interrupt context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -121,10 +121,10 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBattributes\fR(5), \fBddi_dma_mem_alloc\fR(9F),
+\fBattributes\fR(7), \fBddi_dma_mem_alloc\fR(9F),
\fBddi_fm_acc_err_clear\fR(9F), \fBddi_fm_service_impact\fR(9F),
\fBddi_get8\fR(9F), \fBddi_put8\fR(9F), \fBddi_regs_map_setup\fR(9F),
-\fBddi_fm_error\fR(9S),
+.BR ddi_fm_error (9S),
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ddi_fm_ereport_post.9f b/usr/src/man/man9f/ddi_fm_ereport_post.9f
index 92a443c43b..21599f5ffd 100644
--- a/usr/src/man/man9f/ddi_fm_ereport_post.9f
+++ b/usr/src/man/man9f/ddi_fm_ereport_post.9f
@@ -55,7 +55,7 @@ Determines whether caller can sleep for memory or other event resources.
.SH DESCRIPTION
The \fBddi_fm_ereport_post()\fR function causes an encoded fault management
error report name-value pair list to be queued for delivery to the Fault
-Manager daemon, \fBfmd\fR(1M). The \fIsflag\fR parameter indicates whether or
+Manager daemon, \fBfmd\fR(8). The \fIsflag\fR parameter indicates whether or
not the caller is willing to wait for system memory and event channel resources
to become available.
.sp
@@ -165,7 +165,7 @@ the argument list is specified by \fINULL\fR.
The \fBddi_fm_ereport_post()\fR function can be called from user, kernel, or
high-level interrupt context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -179,4 +179,6 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBfmd\fR(1M), \fBattributes\fR(5), \fBddi_fm_service_impact\fR(9F)
+.BR attributes (7),
+.BR fmd (8),
+.BR ddi_fm_service_impact (9F)
diff --git a/usr/src/man/man9f/ddi_fm_handler_register.9f b/usr/src/man/man9f/ddi_fm_handler_register.9f
index 092ec6ff28..995780dc70 100644
--- a/usr/src/man/man9f/ddi_fm_handler_register.9f
+++ b/usr/src/man/man9f/ddi_fm_handler_register.9f
@@ -127,7 +127,7 @@ access or \fBDMA\fR handles.
.LP
For each error detected, the driver must formulate and post an error report via
\fBddi_fm_ereport_post()\fR for problem analysis by the illumos Fault Manager
-\fBfmd\fR(1M).
+\fBfmd\fR(8).
.sp
.LP
For a \fBPCI\fR, \fBPCI/X\fR, or \fBPCI Express\fR leaf device, the
@@ -173,7 +173,7 @@ functions must be called from kernel context in an \fBattach\fR(9E) or
\fIerror_handler\fR, callback can be called from kernel, interrupt, or high
level interrupt context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -187,9 +187,16 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBfmd\fR(1M), \fBattributes\fR(5), \fBattach\fR(9E), \fBdetach\fR(9E),
-\fBddi_fm_ereport_post\fR(9F), \fBddi_fm_init\fR(9F), \fBddi_get8\fR(9F),
-\fBddi_put8\fR(9F), \fBpci_ereport_post\fR(9F), \fBddi_fm_error\fR(9S)
+.BR attributes (7),
+.BR fmd (8),
+.BR attach (9E),
+.BR detach (9E),
+.BR ddi_fm_ereport_post (9F),
+.BR ddi_fm_init (9F),
+.BR ddi_get8 (9F),
+.BR ddi_put8 (9F),
+.BR pci_ereport_post (9F),
+.BR ddi_fm_error (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ddi_fm_init.9f b/usr/src/man/man9f/ddi_fm_init.9f
index 5ff3c7d0f6..459ff4e8fd 100644
--- a/usr/src/man/man9f/ddi_fm_init.9f
+++ b/usr/src/man/man9f/ddi_fm_init.9f
@@ -104,12 +104,12 @@ properties:
and
.Sy fm-dmachk-capable .
The current supported fault management capability levels are observable via
-.Xr prtconf 1M .
+.Xr prtconf 8 .
.Pp
A driver can support the administrative selection of fault management
capabilities by exporting and setting a fault management capability level
property in its
-.Xr driver.conf 4
+.Xr driver.conf 5
file to the values described above.
The
.Sy fm_capable
@@ -154,8 +154,8 @@ If no capabilities are in use then
.Vt DDI_FM_NOT_CAPABLE
is returned.
.Sh SEE ALSO
-.Xr prtconf 1M ,
-.Xr driver.conf 4 ,
+.Xr driver.conf 5 ,
+.Xr prtconf 8 ,
.Xr attach 9E ,
.Xr detach 9E
.Pp
diff --git a/usr/src/man/man9f/ddi_fm_service_impact.9f b/usr/src/man/man9f/ddi_fm_service_impact.9f
index 5ecaaffb74..b2d18b7860 100644
--- a/usr/src/man/man9f/ddi_fm_service_impact.9f
+++ b/usr/src/man/man9f/ddi_fm_service_impact.9f
@@ -85,7 +85,7 @@ The service provided by the device was unaffected by the error.
The \fBddi_fm_service_impact()\fR function can be called from user, kernel, or
high-level interrupt context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -99,5 +99,7 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBfmd\fR(1M), \fBattributes\fR(5), \fBddi_fm_ereport_post\fR(9F),
-\fBpci_ereport_post\fR(9F)
+.BR attributes (7),
+.BR fmd (8),
+.BR ddi_fm_ereport_post (9F),
+.BR pci_ereport_post (9F)
diff --git a/usr/src/man/man9f/ddi_get8.9f b/usr/src/man/man9f/ddi_get8.9f
index 0218f8e139..013a721f66 100644
--- a/usr/src/man/man9f/ddi_get8.9f
+++ b/usr/src/man/man9f/ddi_get8.9f
@@ -72,15 +72,15 @@ the device have incompatible endian characteristics.
.LP
For certain bus types, you can call these \fBDDI\fR functions from a
high-interrupt context. These types include \fBISA\fR and SBus buses. See
-\fBsysbus\fR(4), \fBisa\fR(4), and \fBsbus\fR(4) for details. For the PCI bus,
+\fBsysbus\fR(5), \fBisa\fR(5), and \fBsbus\fR(5) for details. For the PCI bus,
you can, under certain conditions, call these \fBDDI\fR functions from a
-high-interrupt context. See \fBpci\fR(4).
+high-interrupt context. See \fBpci\fR(5).
.SH RETURN VALUES
These functions return the value read from the mapped address.
.SH CONTEXT
These functions can be called from user, kernel, or interrupt context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -94,5 +94,8 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBddi_put8\fR(9F), \fBddi_regs_map_free\fR(9F), \fBddi_regs_map_setup\fR(9F),
-\fBddi_rep_get8\fR(9F), \fBddi_rep_put8\fR(9F)
+.BR ddi_put8 (9F),
+.BR ddi_regs_map_free (9F),
+.BR ddi_regs_map_setup (9F),
+.BR ddi_rep_get8 (9F),
+.BR ddi_rep_put8 (9F)
diff --git a/usr/src/man/man9f/ddi_get_devstate.9f b/usr/src/man/man9f/ddi_get_devstate.9f
index 6d1e14e4a3..7431d702fe 100644
--- a/usr/src/man/man9f/ddi_get_devstate.9f
+++ b/usr/src/man/man9f/ddi_get_devstate.9f
@@ -102,5 +102,9 @@ to enqueue the operation and service it once the bus has been unquiesced. Note
that not all busses support the quiesce/unquiesce operations, so this value may
never be seen by some drivers.
.SH SEE ALSO
-\fBattach\fR(9E), \fBioctl\fR(9E), \fBopen\fR(9E), \fBread\fR(9E),
-\fBstrategy\fR(9E), \fBwrite\fR(9E), \fBddi_dev_report_fault\fR(9F)
+\fBattach\fR(9E), \fBioctl\fR(9E),
+.BR open (9E),
+.BR read (9E),
+.BR strategy (9E),
+.BR write (9E),
+.BR ddi_dev_report_fault (9F)
diff --git a/usr/src/man/man9f/ddi_get_eventcookie.9f b/usr/src/man/man9f/ddi_get_eventcookie.9f
index e531e33e88..e5cc3d6369 100644
--- a/usr/src/man/man9f/ddi_get_eventcookie.9f
+++ b/usr/src/man/man9f/ddi_get_eventcookie.9f
@@ -80,7 +80,7 @@ device tree hierarchy.
The \fBddi_get_eventcookie()\fR function can be called from user and kernel
contexts only.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for a description of the following attributes:
+See \fBattributes\fR(7) for a description of the following attributes:
.sp
.sp
@@ -94,8 +94,9 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBattributes\fR(5), \fBddi_add_event_handler\fR(9F),
-\fBddi_remove_event_handler\fR(9F)
+.BR attributes (7),
+.BR ddi_add_event_handler (9F),
+.BR ddi_remove_event_handler (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ddi_get_instance.9f b/usr/src/man/man9f/ddi_get_instance.9f
index f25f40e719..b4c569dd09 100644
--- a/usr/src/man/man9f/ddi_get_instance.9f
+++ b/usr/src/man/man9f/ddi_get_instance.9f
@@ -53,7 +53,7 @@ corresponding to \fIdip\fR.
The \fBddi_get_instance()\fR function can be called from user, interrupt, or
kernel context.
.SH SEE ALSO
-\fBpath_to_inst\fR(4)
+.BR path_to_inst (5)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ddi_get_lbolt.9f b/usr/src/man/man9f/ddi_get_lbolt.9f
index f7ae6bb3eb..f2bec20015 100644
--- a/usr/src/man/man9f/ddi_get_lbolt.9f
+++ b/usr/src/man/man9f/ddi_get_lbolt.9f
@@ -31,7 +31,9 @@ microseconds into clock ticks.
.SH CONTEXT
This routine can be called from any context.
.SH SEE ALSO
-\fBddi_get_time\fR(9F), \fBdrv_getparm\fR(9F), \fBdrv_usectohz\fR(9F)
+.BR ddi_get_time (9F),
+.BR drv_getparm (9F),
+.BR drv_usectohz (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ddi_get_pid.9f b/usr/src/man/man9f/ddi_get_pid.9f
index dfdd865b3f..540f0b85b9 100644
--- a/usr/src/man/man9f/ddi_get_pid.9f
+++ b/usr/src/man/man9f/ddi_get_pid.9f
@@ -30,7 +30,7 @@ the current process.
.SH CONTEXT
This routine can be called from user context only.
.SH SEE ALSO
-\fBdrv_getparm\fR(9F)
+.BR drv_getparm (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ddi_get_time.9f b/usr/src/man/man9f/ddi_get_time.9f
index 36e33890f9..350b0fb4cf 100644
--- a/usr/src/man/man9f/ddi_get_time.9f
+++ b/usr/src/man/man9f/ddi_get_time.9f
@@ -32,8 +32,10 @@ instead use \fBddi_get_lbolt\fR(9F) or \fBgethrtime\fR(9F).
.SH CONTEXT
This routine can be called from any context.
.SH SEE ALSO
-\fBddi_get_lbolt\fR(9F), \fBdrv_getparm\fR(9F), \fBdrv_usectohz\fR(9F),
-\fBgethrtime\fR(9F)
+.BR ddi_get_lbolt (9F),
+.BR drv_getparm (9F),
+.BR drv_usectohz (9F),
+.BR gethrtime (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ddi_getiminor.9f b/usr/src/man/man9f/ddi_getiminor.9f
index 41737f6691..29ab0cf54a 100644
--- a/usr/src/man/man9f/ddi_getiminor.9f
+++ b/usr/src/man/man9f/ddi_getiminor.9f
@@ -51,7 +51,7 @@ differ in a clustered system.
.LP
For certain bus types, you can call this \fBDDI\fR function from a
high-interrupt context. These types include \fBISA\fR and SBus buses. See
-\fBsysbus\fR(4), \fBisa\fR(4), and \fBsbus\fR(4) for details.
+\fBsysbus\fR(5), \fBisa\fR(5), and \fBsbus\fR(5) for details.
.SH CONTEXT
.sp
.LP
@@ -64,7 +64,7 @@ invalid.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for a description of the following attributes:
+See \fBattributes\fR(7) for a description of the following attributes:
.sp
.sp
@@ -80,8 +80,10 @@ Stability Level Obsolete
.SH SEE ALSO
.sp
.LP
-\fBattributes\fR(5), \fBgetmajor\fR(9F), \fBgetminor\fR(9F),
-\fBmakedevice\fR(9F)
+.BR attributes (7),
+.BR getmajor (9F),
+.BR getminor (9F),
+.BR makedevice (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ddi_in_panic.9f b/usr/src/man/man9f/ddi_in_panic.9f
index 2622afe873..b99156a1eb 100644
--- a/usr/src/man/man9f/ddi_in_panic.9f
+++ b/usr/src/man/man9f/ddi_in_panic.9f
@@ -39,8 +39,10 @@ otherwise.
.SH CONTEXT
\fBddi_in_panic()\fR may be called from any context.
.SH SEE ALSO
-\fBdump\fR(9E), \fBdelay\fR(9F), \fBddi_trigger_softintr\fR(9F),
-\fBtimeout\fR(9F)
+.BR dump (9E),
+.BR ddi_trigger_softintr (9F),
+.BR delay (9F),
+.BR timeout (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ddi_intr_add_handler.9f b/usr/src/man/man9f/ddi_intr_add_handler.9f
index f5b554bbc4..8c7742c2f2 100644
--- a/usr/src/man/man9f/ddi_intr_add_handler.9f
+++ b/usr/src/man/man9f/ddi_intr_add_handler.9f
@@ -148,7 +148,7 @@ On any implementation specific failure.
The \fBddi_intr_add_handler()\fR and \fBddi_intr_remove_handler()\fR functions
can be called from kernel non-interrupt context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -162,12 +162,20 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBattributes\fR(5), \fBattach\fR(9E), \fBdetach\fR(9E),
-\fBddi_intr_alloc\fR(9F), \fBddi_intr_block_enable\fR(9F),
-\fBddi_intr_disable\fR(9F), \fBddi_intr_dup_handler\fR(9F),
-\fBddi_intr_enable\fR(9F), \fBddi_intr_free\fR(9F),
-\fBddi_intr_get_supported_types\fR(9F), \fBmutex\fR(9F), \fBmutex_init\fR(9F),
-\fBrw_init\fR(9F), \fBrwlock\fR(9F)
+.BR attributes (7),
+.BR attach (9E),
+.BR detach (9E),
+.BR ddi_intr_alloc (9F),
+.BR ddi_intr_block_enable (9F),
+.BR ddi_intr_disable (9F),
+.BR ddi_intr_dup_handler (9F),
+.BR ddi_intr_enable (9F),
+.BR ddi_intr_free (9F),
+.BR ddi_intr_get_supported_types (9F),
+.BR mutex (9F),
+.BR mutex_init (9F),
+.BR rw_init (9F),
+.BR rwlock (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ddi_intr_add_softint.9f b/usr/src/man/man9f/ddi_intr_add_softint.9f
index 4767701d2a..71d89e0a8b 100644
--- a/usr/src/man/man9f/ddi_intr_add_softint.9f
+++ b/usr/src/man/man9f/ddi_intr_add_softint.9f
@@ -477,7 +477,7 @@ xxsoftint_handler(void *arg1, void *arg2)
.in -2
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -491,9 +491,14 @@ Interface Stability Evolving
.TE
.SH SEE ALSO
-\fBattributes\fR(5), \fBattach\fR(9E), \fBddi_intr_alloc\fR(9F),
-\fBddi_intr_free\fR(9F), \fBddi_intr_get_hilevel_pri\fR(9F),
-\fBmutex_init\fR(9F), \fBrw_init\fR(9F), \fBrwlock\fR(9F)
+.BR attributes (7),
+.BR attach (9E),
+.BR ddi_intr_alloc (9F),
+.BR ddi_intr_free (9F),
+.BR ddi_intr_get_hilevel_pri (9F),
+.BR mutex_init (9F),
+.BR rw_init (9F),
+.BR rwlock (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ddi_intr_alloc.9f b/usr/src/man/man9f/ddi_intr_alloc.9f
index 76e63ece15..406331e19b 100644
--- a/usr/src/man/man9f/ddi_intr_alloc.9f
+++ b/usr/src/man/man9f/ddi_intr_alloc.9f
@@ -206,7 +206,7 @@ On any implementation specific failure.
The \fBddi_intr_alloc()\fR and \fBddi_intr_free()\fR functions can be called
from kernel non-interrupt context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -220,11 +220,16 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBattributes\fR(5), \fBddi_intr_add_handler\fR(9F),
-\fBddi_intr_block_enable\fR(9F), \fBddi_intr_disable\fR(9F),
-\fBddi_intr_enable\fR(9F), \fBddi_intr_get_cap\fR(9F),
-\fBddi_intr_get_nintrs\fR(9F), \fBddi_intr_get_pri\fR(9F),
-\fBddi_intr_get_supported_types\fR(9F), \fBddi_intr_remove_handler\fR(9F)
+.BR attributes (7),
+.BR ddi_intr_add_handler (9F),
+.BR ddi_intr_block_enable (9F),
+.BR ddi_intr_disable (9F),
+.BR ddi_intr_enable (9F),
+.BR ddi_intr_get_cap (9F),
+.BR ddi_intr_get_nintrs (9F),
+.BR ddi_intr_get_pri (9F),
+.BR ddi_intr_get_supported_types (9F),
+.BR ddi_intr_remove_handler (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ddi_intr_dup_handler.9f b/usr/src/man/man9f/ddi_intr_dup_handler.9f
index e531e9ddd7..78103f1bbf 100644
--- a/usr/src/man/man9f/ddi_intr_dup_handler.9f
+++ b/usr/src/man/man9f/ddi_intr_dup_handler.9f
@@ -260,7 +260,7 @@ remove_msix_interrupts(intr_state_t *state)
The \fBddi_intr_dup_handler()\fR function can be called from kernel
non-interrupt context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -274,11 +274,16 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBattributes\fR(5), \fBddi_intr_add_handler\fR(9F), \fBddi_intr_alloc\fR(9F),
-\fBddi_intr_clr_mask\fR(9F), \fBddi_intr_disable\fR(9F),
-\fBddi_intr_enable\fR(9F), \fBddi_intr_free\fR(9F),
-\fBddi_intr_get_pending\fR(9F), \fBddi_intr_get_supported_types\fR(9F),
-\fBddi_intr_set_mask\fR(9F)
+.BR attributes (7),
+.BR ddi_intr_add_handler (9F),
+.BR ddi_intr_alloc (9F),
+.BR ddi_intr_clr_mask (9F),
+.BR ddi_intr_disable (9F),
+.BR ddi_intr_enable (9F),
+.BR ddi_intr_free (9F),
+.BR ddi_intr_get_pending (9F),
+.BR ddi_intr_get_supported_types (9F),
+.BR ddi_intr_set_mask (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ddi_intr_enable.9f b/usr/src/man/man9f/ddi_intr_enable.9f
index de422f487f..96368eae70 100644
--- a/usr/src/man/man9f/ddi_intr_enable.9f
+++ b/usr/src/man/man9f/ddi_intr_enable.9f
@@ -193,7 +193,7 @@ The \fBddi_intr_enable()\fR, \fBddi_intr_block_enable()\fR,
\fBddi_intr_disable()\fR, and \fBddi_intr_block_disable()\fR functions can be
called from kernel non-interrupt context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -207,10 +207,15 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBattributes\fR(5), \fBddi_intr_add_handler\fR(9F), \fBddi_intr_alloc\fR(9F),
-\fBddi_intr_dup_handler\fR(9F), \fBddi_intr_free\fR(9F),
-\fBddi_intr_get_cap\fR(9F), \fBddi_intr_remove_handler\fR(9F), \fBmutex\fR(9F),
-\fBrwlock\fR(9F)
+.BR attributes (7),
+.BR ddi_intr_add_handler (9F),
+.BR ddi_intr_alloc (9F),
+.BR ddi_intr_dup_handler (9F),
+.BR ddi_intr_free (9F),
+.BR ddi_intr_get_cap (9F),
+.BR ddi_intr_remove_handler (9F),
+.BR mutex (9F),
+.BR rwlock (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ddi_intr_get_cap.9f b/usr/src/man/man9f/ddi_intr_get_cap.9f
index e1454adc11..cf3da766ea 100644
--- a/usr/src/man/man9f/ddi_intr_get_cap.9f
+++ b/usr/src/man/man9f/ddi_intr_get_cap.9f
@@ -178,7 +178,7 @@ On device not supporting operation.
The \fBddi_intr_get_cap()\fR and \fBddi_intr_set_cap()\fR functions can be
called from either user or kernel non-interrupt context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -192,9 +192,13 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBattributes\fR(5), \fBddi_intr_alloc\fR(9F), \fBddi_intr_block_enable\fR(9F),
-\fBddi_intr_get_nintrs\fR(9F), \fBddi_intr_get_pending\fR(9F),
-\fBddi_intr_get_supported_types\fR(9F), \fBddi_intr_set_mask\fR(9F)
+.BR attributes (7),
+.BR ddi_intr_alloc (9F),
+.BR ddi_intr_block_enable (9F),
+.BR ddi_intr_get_nintrs (9F),
+.BR ddi_intr_get_pending (9F),
+.BR ddi_intr_get_supported_types (9F),
+.BR ddi_intr_set_mask (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ddi_intr_get_hilevel_pri.9f b/usr/src/man/man9f/ddi_intr_get_hilevel_pri.9f
index 89068a899b..8cbcfd99a0 100644
--- a/usr/src/man/man9f/ddi_intr_get_hilevel_pri.9f
+++ b/usr/src/man/man9f/ddi_intr_get_hilevel_pri.9f
@@ -57,7 +57,7 @@ high-level interrupt.
The \fBddi_intr_get_hilevel_pri()\fR function can be called from either user or
kernel non-interrupt context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -71,9 +71,13 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBattributes\fR(5), \fBddi_intr_add_handler\fR(9F), \fBddi_intr_alloc\fR(9F),
-\fBddi_intr_enable\fR(9F), \fBddi_intr_get_pri\fR(9F),
-\fBddi_intr_trigger_softint\fR(9F), \fBmutex\fR(9F)
+.BR attributes (7),
+.BR ddi_intr_add_handler (9F),
+.BR ddi_intr_alloc (9F),
+.BR ddi_intr_enable (9F),
+.BR ddi_intr_get_pri (9F),
+.BR ddi_intr_trigger_softint (9F),
+.BR mutex (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ddi_intr_get_nintrs.9f b/usr/src/man/man9f/ddi_intr_get_nintrs.9f
index 6cee238173..f09361332f 100644
--- a/usr/src/man/man9f/ddi_intr_get_nintrs.9f
+++ b/usr/src/man/man9f/ddi_intr_get_nintrs.9f
@@ -156,7 +156,7 @@ On any implementation specific failure.
The \fBddi_intr_get_nintrs()\fR and \fBddi_intr_get_navail()\fR functions can
be called from either user or kernel non-interrupt context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -170,8 +170,10 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBattributes\fR(5), \fBddi_intr_alloc\fR(9F), \fBddi_intr_enable\fR(9F),
-\fBddi_intr_get_supported_types\fR(9F)
+.BR attributes (7),
+.BR ddi_intr_alloc (9F),
+.BR ddi_intr_enable (9F),
+.BR ddi_intr_get_supported_types (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ddi_intr_get_pending.9f b/usr/src/man/man9f/ddi_intr_get_pending.9f
index 072eec5ab1..c203a02b57 100644
--- a/usr/src/man/man9f/ddi_intr_get_pending.9f
+++ b/usr/src/man/man9f/ddi_intr_get_pending.9f
@@ -91,7 +91,7 @@ On device not supporting operation.
The \fBddi_intr_get_pending()\fR function can be called from either user or
kernel non-interrupt context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -105,10 +105,13 @@ Interface Stability Evolving
.TE
.SH SEE ALSO
-\fBattributes\fR(5), \fBddi_intr_block_enable\fR(9F),
-\fBddi_intr_block_disable\fR(9F), \fBddi_intr_clr_mask\fR(9F),
-\fBddi_intr_disable\fR(9F), \fBddi_intr_enable\fR(9F),
-\fBddi_intr_set_mask\fR(9F)
+.BR attributes (7),
+.BR ddi_intr_block_disable (9F),
+.BR ddi_intr_block_enable (9F),
+.BR ddi_intr_clr_mask (9F),
+.BR ddi_intr_disable (9F),
+.BR ddi_intr_enable (9F),
+.BR ddi_intr_set_mask (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ddi_intr_get_pri.9f b/usr/src/man/man9f/ddi_intr_get_pri.9f
index 2161e40acf..a07ff9bfbe 100644
--- a/usr/src/man/man9f/ddi_intr_get_pri.9f
+++ b/usr/src/man/man9f/ddi_intr_get_pri.9f
@@ -131,7 +131,7 @@ On device not supporting operation.
The \fBddi_intr_get_pri()\fR and \fBddi_intr_set_pri()\fR functions can be
called from kernel non-interrupt context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -145,8 +145,11 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBattributes\fR(5), \fBddi_intr_alloc\fR(9F), \fBddi_intr_enable\fR(9F),
-\fBmutex_init\fR(9F), \fBrw_init\fR(9F)
+.BR attributes (7),
+.BR ddi_intr_alloc (9F),
+.BR ddi_intr_enable (9F),
+.BR mutex_init (9F),
+.BR rw_init (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ddi_intr_get_supported_types.9f b/usr/src/man/man9f/ddi_intr_get_supported_types.9f
index 74cb4fb61f..3117ba16b8 100644
--- a/usr/src/man/man9f/ddi_intr_get_supported_types.9f
+++ b/usr/src/man/man9f/ddi_intr_get_supported_types.9f
@@ -88,7 +88,7 @@ interrupts.
The \fBddi_intr_get_supported_types()\fR function can be called from user or
kernel non-interrupt context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -102,9 +102,13 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBpci\fR(4), \fBattributes\fR(5), \fBpcmcia\fR(7D), \fBsysbus\fR(4),
-\fBddi_intr_add_handler\fR(9F), \fBddi_intr_alloc\fR(9F),
-\fBddi_intr_enable\fR(9F)
+.BR pcmcia (4D),
+.BR pci (5),
+.BR sysbus (5),
+.BR attributes (7),
+.BR ddi_intr_add_handler (9F),
+.BR ddi_intr_alloc (9F),
+.BR ddi_intr_enable (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ddi_intr_hilevel.9f b/usr/src/man/man9f/ddi_intr_hilevel.9f
index dbeaade7c4..f3d4951fda 100644
--- a/usr/src/man/man9f/ddi_intr_hilevel.9f
+++ b/usr/src/man/man9f/ddi_intr_hilevel.9f
@@ -77,7 +77,7 @@ indicates a high-level interrupt.
.SH CONTEXT
These functions can be called from useruser, interrupt, or kernel context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -91,7 +91,9 @@ Interface Stability Obsolete
.TE
.SH SEE ALSO
-\fBddi_add_intr\fR(9F), \fBIntro\fR(9F), \fBmutex\fR(9F)
+.BR Intro (9F),
+.BR ddi_add_intr (9F),
+.BR mutex (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ddi_intr_set_mask.9f b/usr/src/man/man9f/ddi_intr_set_mask.9f
index 636fda2741..e92f799555 100644
--- a/usr/src/man/man9f/ddi_intr_set_mask.9f
+++ b/usr/src/man/man9f/ddi_intr_set_mask.9f
@@ -97,7 +97,7 @@ On device not supporting operation.
The \fBddi_intr_set_mask()\fR and \fBddi_intr_clr_mask()\fR functions can be
called from any context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -111,9 +111,12 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBattributes\fR(5), \fBddi_intr_block_disable\fR(9F),
-\fBddi_intr_block_enable\fR(9F), \fBddi_intr_disable\fR(9F),
-\fBddi_intr_enable\fR(9F), \fBddi_intr_get_pending\fR(9F)
+.BR attributes (7),
+.BR ddi_intr_block_disable (9F),
+.BR ddi_intr_block_enable (9F),
+.BR ddi_intr_disable (9F),
+.BR ddi_intr_enable (9F),
+.BR ddi_intr_get_pending (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ddi_intr_set_nreq.9f b/usr/src/man/man9f/ddi_intr_set_nreq.9f
index 991faf2e12..cde5d04b90 100644
--- a/usr/src/man/man9f/ddi_intr_set_nreq.9f
+++ b/usr/src/man/man9f/ddi_intr_set_nreq.9f
@@ -103,7 +103,7 @@ Implementation specific failure
.SH CONTEXT
These functions can be called from kernel, non-interrupt context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -119,8 +119,11 @@ MT-Level MT-Safe
.TE
.SH SEE ALSO
-\fBattributes\fR(5), \fBattach\fR(9E), \fBddi_cb_register\fR(9F),
-\fBddi_intr_alloc\fR(9F), \fBddi_intr_get_nintrs\fR(9F)
+.BR attributes (7),
+.BR attach (9E),
+.BR ddi_cb_register (9F),
+.BR ddi_intr_alloc (9F),
+.BR ddi_intr_get_nintrs (9F)
.SH NOTES
The Interrupt Resource Management feature is limited to device driver instances
that are using MSI-X interrupts (interrupt type \fBDDI_INTR_TYPE_MSIX\fR).
diff --git a/usr/src/man/man9f/ddi_io_get8.9f b/usr/src/man/man9f/ddi_io_get8.9f
index 7facb6081d..a9cae34725 100644
--- a/usr/src/man/man9f/ddi_io_get8.9f
+++ b/usr/src/man/man9f/ddi_io_get8.9f
@@ -68,7 +68,7 @@ the device have incompatible endian characteristics.
.SH CONTEXT
These functions can be called from user, kernel, or interrupt context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -82,7 +82,13 @@ Interface Stability Obsolete
.TE
.SH SEE ALSO
-\fBisa\fR(4), \fBddi_get8\fR(9F), \fBddi_get16\fR(9F), \fBddi_get32\fR(9F),
-\fBddi_io_put8\fR(9F), \fBddi_io_rep_get8\fR(9F), \fBddi_io_rep_put8\fR(9F),
-\fBddi_regs_map_free\fR(9F), \fBddi_regs_map_setup\fR(9F),
-\fBddi_device_acc_attr\fR(9S)
+.BR isa (5),
+.BR ddi_get16 (9F),
+.BR ddi_get32 (9F),
+.BR ddi_get8 (9F),
+.BR ddi_io_put8 (9F),
+.BR ddi_io_rep_get8 (9F),
+.BR ddi_io_rep_put8 (9F),
+.BR ddi_regs_map_free (9F),
+.BR ddi_regs_map_setup (9F),
+.BR ddi_device_acc_attr (9S)
diff --git a/usr/src/man/man9f/ddi_io_put8.9f b/usr/src/man/man9f/ddi_io_put8.9f
index 957ef9bad9..8de8ac399d 100644
--- a/usr/src/man/man9f/ddi_io_put8.9f
+++ b/usr/src/man/man9f/ddi_io_put8.9f
@@ -79,7 +79,7 @@ the device have incompatible endian characteristics.
.SH CONTEXT
These functions can be called from user, kernel, or interrupt context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -93,7 +93,12 @@ Interface Stability Obsolete
.TE
.SH SEE ALSO
-\fBisa\fR(4), \fBddi_io_get8\fR(9F), \fBddi_io_rep_get8\fR(9F),
-\fBddi_io_rep_put8\fR(9F), \fBddi_put8\fR(9F), \fBddi_put16\fR(9F),
-\fBddi_put32\fR(9F), \fBddi_regs_map_setup\fR(9F),
-\fBddi_device_acc_attr\fR(9S)
+.BR isa (5),
+.BR ddi_io_get8 (9F),
+.BR ddi_io_rep_get8 (9F),
+.BR ddi_io_rep_put8 (9F),
+.BR ddi_put16 (9F),
+.BR ddi_put32 (9F),
+.BR ddi_put8 (9F),
+.BR ddi_regs_map_setup (9F),
+.BR ddi_device_acc_attr (9S)
diff --git a/usr/src/man/man9f/ddi_io_rep_get8.9f b/usr/src/man/man9f/ddi_io_rep_get8.9f
index 5c3bceaa01..2b8b6c07c6 100644
--- a/usr/src/man/man9f/ddi_io_rep_get8.9f
+++ b/usr/src/man/man9f/ddi_io_rep_get8.9f
@@ -92,7 +92,7 @@ the device have incompatible endian characteristics.
.SH CONTEXT
These functions can be called from user, kernel, or interrupt context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -106,7 +106,13 @@ Interface Stability Obsolete
.TE
.SH SEE ALSO
-\fBisa\fR(4), \fBddi_io_get8\fR(9F), \fBddi_io_put8\fR(9F),
-\fBddi_io_rep_put8\fR(9F), \fBddi_regs_map_free\fR(9F),
-\fBddi_regs_map_setup\fR(9F), \fBddi_rep_get8\fR(9F), \fBddi_rep_get16\fR(9F),
-\fBddi_rep_get32\fR(9F), \fBddi_device_acc_attr\fR(9S)
+.BR isa (5),
+.BR ddi_io_get8 (9F),
+.BR ddi_io_put8 (9F),
+.BR ddi_io_rep_put8 (9F),
+.BR ddi_regs_map_free (9F),
+.BR ddi_regs_map_setup (9F),
+.BR ddi_rep_get16 (9F),
+.BR ddi_rep_get32 (9F),
+.BR ddi_rep_get8 (9F),
+.BR ddi_device_acc_attr (9S)
diff --git a/usr/src/man/man9f/ddi_io_rep_put8.9f b/usr/src/man/man9f/ddi_io_rep_put8.9f
index a353fd27d8..a5060acb9f 100644
--- a/usr/src/man/man9f/ddi_io_rep_put8.9f
+++ b/usr/src/man/man9f/ddi_io_rep_put8.9f
@@ -92,7 +92,7 @@ the device have incompatible endian characteristics.
.SH CONTEXT
These functions can be called from user, kernel, or interrupt context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -106,7 +106,12 @@ Interface Stability Obsolete
.TE
.SH SEE ALSO
-\fBisa\fR(4), \fBddi_io_get8\fR(9F), \fBddi_io_put8\fR(9F),
-\fBddi_io_rep_get8\fR(9F), \fBddi_regs_map_setup\fR(9F),
-\fBddi_rep_put8\fR(9F), \fBddi_rep_put16\fR(9F), \fBddi_rep_put32\fR(9F),
-\fBddi_device_acc_attr\fR(9S)
+.BR isa (5),
+.BR ddi_io_get8 (9F),
+.BR ddi_io_put8 (9F),
+.BR ddi_io_rep_get8 (9F),
+.BR ddi_regs_map_setup (9F),
+.BR ddi_rep_put16 (9F),
+.BR ddi_rep_put32 (9F),
+.BR ddi_rep_put8 (9F),
+.BR ddi_device_acc_attr (9S)
diff --git a/usr/src/man/man9f/ddi_log_sysevent.9f b/usr/src/man/man9f/ddi_log_sysevent.9f
index b7451c4f1d..97c24343ab 100644
--- a/usr/src/man/man9f/ddi_log_sysevent.9f
+++ b/usr/src/man/man9f/ddi_log_sysevent.9f
@@ -326,8 +326,10 @@ static int
.in -2
.SH SEE ALSO
-\fBsyseventd\fR(1M), \fBattributes\fR(5), \fBnvlist_add_boolean\fR(9F),
-\fBnvlist_alloc\fR(9F)
+.BR attributes (7),
+.BR syseventd (8),
+.BR nvlist_add_boolean (9F),
+.BR nvlist_alloc (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ddi_map_regs.9f b/usr/src/man/man9f/ddi_map_regs.9f
index 8e3867a828..fb8905d51c 100644
--- a/usr/src/man/man9f/ddi_map_regs.9f
+++ b/usr/src/man/man9f/ddi_map_regs.9f
@@ -133,7 +133,7 @@ if more than one exists. The base kernel virtual address of the mapped register
set is returned in \fIkaddrp\fR. \fIoffset\fR specifies an offset into the
register space to start from and \fIlen\fR indicates the size of the area to be
mapped. If \fIlen\fR is non-zero, it overrides the length given in the register
-set description. See the discussion of the \fBreg\fR property in \fBsbus\fR(4)
+set description. See the discussion of the \fBreg\fR property in \fBsbus\fR(5)
and for more information on register set descriptions. If \fIlen\fR and
\fIoffset\fR are 0, the entire space is mapped.
.sp
@@ -169,7 +169,7 @@ These functions can be called from user, interrupt, or kernel context.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for a description of the following attributes:
+See \fBattributes\fR(7) for a description of the following attributes:
.sp
.sp
@@ -185,8 +185,10 @@ Interface Stability Obsolete
.SH SEE ALSO
.sp
.LP
-\fBattributes\fR(5), \fBsbus\fR(4), \fBddi_regs_map_free\fR(9F),
-\fBddi_regs_map_setup\fR(9F)
+.BR sbus (5),
+.BR attributes (7),
+.BR ddi_regs_map_free (9F),
+.BR ddi_regs_map_setup (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ddi_mem_get8.9f b/usr/src/man/man9f/ddi_mem_get8.9f
index 48b8923e46..adec52b223 100644
--- a/usr/src/man/man9f/ddi_mem_get8.9f
+++ b/usr/src/man/man9f/ddi_mem_get8.9f
@@ -75,7 +75,7 @@ the device have incompatible endian characteristics.
.SH CONTEXT
These functions can be called from user, kernel, or interrupt context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -89,7 +89,12 @@ Interface Stability Obsolete
.TE
.SH SEE ALSO
-\fBddi_get8\fR(9F), \fBddi_get16\fR(9F), \fBddi_get32\fR(9F),
-\fBddi_get64\fR(9F), \fBddi_mem_put8\fR(9F), \fBddi_mem_rep_get8\fR(9F),
-\fBddi_mem_rep_put8\fR(9F), \fBddi_regs_map_setup\fR(9F),
-\fBddi_device_acc_attr\fR(9S)
+.BR ddi_get16 (9F),
+.BR ddi_get32 (9F),
+.BR ddi_get64 (9F),
+.BR ddi_get8 (9F),
+.BR ddi_mem_put8 (9F),
+.BR ddi_mem_rep_get8 (9F),
+.BR ddi_mem_rep_put8 (9F),
+.BR ddi_regs_map_setup (9F),
+.BR ddi_device_acc_attr (9S)
diff --git a/usr/src/man/man9f/ddi_mem_put8.9f b/usr/src/man/man9f/ddi_mem_put8.9f
index 35d42a138e..af8a8f5f14 100644
--- a/usr/src/man/man9f/ddi_mem_put8.9f
+++ b/usr/src/man/man9f/ddi_mem_put8.9f
@@ -88,7 +88,7 @@ the device have incompatible endian characteristics.
.SH CONTEXT
These functions can be called from user, kernel, or interrupt context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -102,7 +102,12 @@ Interface Stability Obsolete
.TE
.SH SEE ALSO
-\fBddi_mem_get8\fR(9F), \fBddi_mem_rep_get8\fR(9F), \fBddi_put8\fR(9F),
-\fBddi_put16\fR(9F), \fBddi_put32\fR(9F), \fBddi_put64\fR(9F),
-\fBddi_mem_get8\fR(9F), \fBddi_regs_map_setup\fR(9F),
-\fBddi_device_acc_attr\fR(9S)
+.BR ddi_mem_get8 (9F),
+.BR ddi_mem_get8 (9F),
+.BR ddi_mem_rep_get8 (9F),
+.BR ddi_put16 (9F),
+.BR ddi_put32 (9F),
+.BR ddi_put64 (9F),
+.BR ddi_put8 (9F),
+.BR ddi_regs_map_setup (9F),
+.BR ddi_device_acc_attr (9S)
diff --git a/usr/src/man/man9f/ddi_mem_rep_get8.9f b/usr/src/man/man9f/ddi_mem_rep_get8.9f
index db29dcf6fc..b9c2c70da5 100644
--- a/usr/src/man/man9f/ddi_mem_rep_get8.9f
+++ b/usr/src/man/man9f/ddi_mem_rep_get8.9f
@@ -140,7 +140,7 @@ flag may be useful when reading from a data register.
.SH CONTEXT
These functions can be called from user, kernel, or interrupt context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -154,6 +154,12 @@ Interface Stability Obsolete
.TE
.SH SEE ALSO
-\fBddi_mem_get8\fR(9F), \fBddi_mem_put8\fR(9F), \fBddi_mem_rep_put8\fR(9F),
-\fBddi_regs_map_setup\fR(9F), \fBddi_rep_get8\fR(9F), \fBddi_rep_get16\fR(9F),
-\fBddi_rep_get32\fR(9F), \fBddi_rep_get64\fR(9F), \fBddi_device_acc_attr\fR(9S)
+.BR ddi_mem_get8 (9F),
+.BR ddi_mem_put8 (9F),
+.BR ddi_mem_rep_put8 (9F),
+.BR ddi_regs_map_setup (9F),
+.BR ddi_rep_get16 (9F),
+.BR ddi_rep_get32 (9F),
+.BR ddi_rep_get64 (9F),
+.BR ddi_rep_get8 (9F),
+.BR ddi_device_acc_attr (9S)
diff --git a/usr/src/man/man9f/ddi_mem_rep_put8.9f b/usr/src/man/man9f/ddi_mem_rep_put8.9f
index fea46be137..7b89a80e64 100644
--- a/usr/src/man/man9f/ddi_mem_rep_put8.9f
+++ b/usr/src/man/man9f/ddi_mem_rep_put8.9f
@@ -136,7 +136,7 @@ useful when writing from a data register.
.SH CONTEXT
These functions can be called from user, kernel, or interrupt context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -150,6 +150,12 @@ Interface Stability Obsolete
.TE
.SH SEE ALSO
-\fBddi_mem_get8\fR(9F), \fBddi_mem_put8\fR(9F), \fBddi_mem_rep_get8\fR(9F),
-\fBddi_regs_map_setup\fR(9F), \fBddi_rep_put8\fR(9F), \fBddi_rep_put16\fR(9F),
-\fBddi_rep_put32\fR(9F), \fBddi_rep_put64\fR(9F), \fBddi_device_acc_attr\fR(9S)
+.BR ddi_mem_get8 (9F),
+.BR ddi_mem_put8 (9F),
+.BR ddi_mem_rep_get8 (9F),
+.BR ddi_regs_map_setup (9F),
+.BR ddi_rep_put16 (9F),
+.BR ddi_rep_put32 (9F),
+.BR ddi_rep_put64 (9F),
+.BR ddi_rep_put8 (9F),
+.BR ddi_device_acc_attr (9S)
diff --git a/usr/src/man/man9f/ddi_mmap_get_model.9f b/usr/src/man/man9f/ddi_mmap_get_model.9f
index 75752db515..020fa7fb31 100644
--- a/usr/src/man/man9f/ddi_mmap_get_model.9f
+++ b/usr/src/man/man9f/ddi_mmap_get_model.9f
@@ -102,7 +102,8 @@ xxmmap(dev_t dev, off_t off, int prot) {
.in -2
.SH SEE ALSO
-\fBmmap\fR(9E), \fBddi_model_convert_from\fR(9F)
+.BR mmap (9E),
+.BR ddi_model_convert_from (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ddi_model_convert_from.9f b/usr/src/man/man9f/ddi_model_convert_from.9f
index a67b5c8bf4..f560366777 100644
--- a/usr/src/man/man9f/ddi_model_convert_from.9f
+++ b/usr/src/man/man9f/ddi_model_convert_from.9f
@@ -107,7 +107,9 @@ xxioctl(dev_t dev, int cmd, intptr_t arg, int mode,
.in -2
.SH SEE ALSO
-\fBioctl\fR(9E), \fBmmap\fR(9E), \fBddi_mmap_get_model\fR(9F)
+.BR ioctl (9E),
+.BR mmap (9E),
+.BR ddi_mmap_get_model (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ddi_modopen.9f b/usr/src/man/man9f/ddi_modopen.9f
index aa88d65b86..58b3f1889b 100644
--- a/usr/src/man/man9f/ddi_modopen.9f
+++ b/usr/src/man/man9f/ddi_modopen.9f
@@ -45,7 +45,7 @@ The name of the dynamically-loaded kernel module (file) to be opened. The
.sp
Each "\fInamespace\fR/" directory along the standard kernel
-moddir/\fImodule-path\fR path (\fBsystem\fR(4)) is searched to locate the
+moddir/\fImodule-path\fR path (\fBsystem\fR(5)) is searched to locate the
module. If "\fInamespace\fR/" is not specified, "misc/" is assumed. If
"\fIdirspace\fR" is specified, then "\fInamespace\fR/" must be explicitly
provided.
@@ -288,13 +288,21 @@ rv = ddi_modclose(modp);
.in -2
.SH SEE ALSO
-\fBdlclose\fR(3C), \fBdlopen\fR(3C), \fBdlsym\fR(3C), \fBlibdl\fR(3LIB),
-\fBboot\fR(1M), \fBelfwrap\fR(1), \fBmodload\fR(1M), \fBsystem\fR(4),
-\fB_fini\fR(9E), \fB_info\fR(9E), \fB_init\fR(9E)
+.BR elfwrap (1),
+.BR dlclose (3C),
+.BR dlopen (3C),
+.BR dlsym (3C),
+.BR libdl (3LIB),
+.BR system (5),
+.BR boot (8),
+.BR modload (8),
+.BR _fini (9E),
+.BR _info (9E),
+.BR _init (9E)
.sp
.LP
\fIWriting Device Drivers\fR
.SH WARNINGS
-A \fBsystem\fR(4)forceload must be established for modules targeted by
+A \fBsystem\fR(5)forceload must be established for modules targeted by
\fBddi_modopen()\fR by code involved in the mount of root on "bootdev" during
-machine \fBboot\fR(1M).
+machine \fBboot\fR(8).
diff --git a/usr/src/man/man9f/ddi_no_info.9f b/usr/src/man/man9f/ddi_no_info.9f
index 21d97e53d5..db48324779 100644
--- a/usr/src/man/man9f/ddi_no_info.9f
+++ b/usr/src/man/man9f/ddi_no_info.9f
@@ -65,4 +65,7 @@ or for network drivers only providing DLPI-2 services. Such drivers can use
.SH RETURN VALUES
The \fBddi_no_info()\fR function always returns \fBDDI_FAILURE\fR.
.SH SEE ALSO
-\fBgetinfo\fR(9E), \fBqassociate\fR(9F), \fBcb_ops\fR(9S), \fBdev_ops\fR(9S)
+.BR getinfo (9E),
+.BR qassociate (9F),
+.BR cb_ops (9S),
+.BR dev_ops (9S)
diff --git a/usr/src/man/man9f/ddi_node_name.9f b/usr/src/man/man9f/ddi_node_name.9f
index 01bc4f3aa9..519b9fd480 100644
--- a/usr/src/man/man9f/ddi_node_name.9f
+++ b/usr/src/man/man9f/ddi_node_name.9f
@@ -38,7 +38,7 @@ the \fBdev_info\fR structure.
The \fBddi_node_name()\fR function can be called from user, interrupt, or
kernel context.
.SH SEE ALSO
-\fBddi_binding_name\fR(9F)
+.BR ddi_binding_name (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ddi_peek.9f b/usr/src/man/man9f/ddi_peek.9f
index 4d4fd46876..a75d64f44a 100644
--- a/usr/src/man/man9f/ddi_peek.9f
+++ b/usr/src/man/man9f/ddi_peek.9f
@@ -147,7 +147,9 @@ failure:
.in -2
.SH SEE ALSO
-\fBattach\fR(9E), \fBprobe\fR(9E), \fBddi_poke\fR(9F)
+.BR attach (9E),
+.BR probe (9E),
+.BR ddi_poke (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ddi_periodic_add.9f b/usr/src/man/man9f/ddi_periodic_add.9f
index bdd433e14e..d565e4abd3 100644
--- a/usr/src/man/man9f/ddi_periodic_add.9f
+++ b/usr/src/man/man9f/ddi_periodic_add.9f
@@ -157,9 +157,14 @@ invoked in interrupt context at level 7.
.in -2
.SH SEE ALSO
-\fBcv_timedwait\fR(9F), \fBddi_intr_get_pri\fR(9F),
-\fBddi_periodic_delete\fR(9F), \fBddi_intr_get_softint_pri\fR(9F),
-\fBqtimeout\fR(9F), \fBquntimeout\fR(9F), \fBtimeout\fR(9F), \fBuntimeout\fR(9F)
+.BR cv_timedwait (9F),
+.BR ddi_intr_get_pri (9F),
+.BR ddi_intr_get_softint_pri (9F),
+.BR ddi_periodic_delete (9F),
+.BR qtimeout (9F),
+.BR quntimeout (9F),
+.BR timeout (9F),
+.BR untimeout (9F)
.SH NOTES
The caller must specify \fIinterval\fR as an even, non-zero multiple of 10ms.
No other values are supported at this time. The interval specified is a lower
diff --git a/usr/src/man/man9f/ddi_periodic_delete.9f b/usr/src/man/man9f/ddi_periodic_delete.9f
index e33fac515a..18ccd07b09 100644
--- a/usr/src/man/man9f/ddi_periodic_delete.9f
+++ b/usr/src/man/man9f/ddi_periodic_delete.9f
@@ -104,8 +104,13 @@ my_periodic_func(void *arg)
.in -2
.SH SEE ALSO
-\fBcv_timedwait\fR(9F), \fBddi_intr_get_pri\fR(9F), \fBddi_periodic_add\fR(9F),
-\fBqtimeout\fR(9F), \fBquntimeout\fR(9F), \fBtimeout\fR(9F), \fBuntimeout\fR(9F)
+.BR cv_timedwait (9F),
+.BR ddi_intr_get_pri (9F),
+.BR ddi_periodic_add (9F),
+.BR qtimeout (9F),
+.BR quntimeout (9F),
+.BR timeout (9F),
+.BR untimeout (9F)
.SH NOTES
Historically this interface was advertised as safe for use from within the
periodic callback function. In order to ensure the correct operation of the
diff --git a/usr/src/man/man9f/ddi_poke.9f b/usr/src/man/man9f/ddi_poke.9f
index 140323cf3c..6f9e44a559 100644
--- a/usr/src/man/man9f/ddi_poke.9f
+++ b/usr/src/man/man9f/ddi_poke.9f
@@ -102,7 +102,9 @@ An error occurred while trying to write to the location.
.SH CONTEXT
These functions can be called from user, interrupt, or kernel context.
.SH SEE ALSO
-\fBattach\fR(9E), \fBprobe\fR(9E), \fBddi_peek\fR(9F)
+.BR attach (9E),
+.BR probe (9E),
+.BR ddi_peek (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ddi_prop_create.9f b/usr/src/man/man9f/ddi_prop_create.9f
index f248a0610c..9fac535b93 100644
--- a/usr/src/man/man9f/ddi_prop_create.9f
+++ b/usr/src/man/man9f/ddi_prop_create.9f
@@ -503,7 +503,7 @@ for (minor = 0; minor < 8; minor ++) {
.in -2
.SH ATTRIBUTES
-See \fBattributes\fR(5) for a description of the following attributes:
+See \fBattributes\fR(7) for a description of the following attributes:
.sp
.sp
@@ -519,9 +519,13 @@ T}
.TE
.SH SEE ALSO
-\fBdriver.conf\fR(4), \fBattributes\fR(5), \fBattach\fR(9E),
-\fBddi_getproplen\fR(9F), \fBddi_prop_op\fR(9F), \fBddi_prop_update\fR(9F),
-\fBmakedevice\fR(9F)
+.BR driver.conf (5),
+.BR attributes (7),
+.BR attach (9E),
+.BR ddi_getproplen (9F),
+.BR ddi_prop_op (9F),
+.BR ddi_prop_update (9F),
+.BR makedevice (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ddi_prop_exists.9f b/usr/src/man/man9f/ddi_prop_exists.9f
index 4f545ea541..260887f696 100644
--- a/usr/src/man/man9f/ddi_prop_exists.9f
+++ b/usr/src/man/man9f/ddi_prop_exists.9f
@@ -157,8 +157,10 @@ The following example demonstrates the use of \fBddi_prop_exists()\fR.
.in -2
.SH SEE ALSO
-\fBddi_prop_get_int\fR(9F), \fBddi_prop_lookup\fR(9F),
-\fBddi_prop_remove\fR(9F), \fBddi_prop_update\fR(9F)
+.BR ddi_prop_get_int (9F),
+.BR ddi_prop_lookup (9F),
+.BR ddi_prop_remove (9F),
+.BR ddi_prop_update (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ddi_prop_get_int.9f b/usr/src/man/man9f/ddi_prop_get_int.9f
index 2bd50ae67e..de44ddc028 100644
--- a/usr/src/man/man9f/ddi_prop_get_int.9f
+++ b/usr/src/man/man9f/ddi_prop_get_int.9f
@@ -181,8 +181,10 @@ The following example demonstrates the use of \fBddi_prop_get_int()\fR.
.in -2
.SH SEE ALSO
-\fBddi_prop_exists\fR(9F), \fBddi_prop_lookup\fR(9F),
-\fBddi_prop_remove\fR(9F), \fBddi_prop_update\fR(9F)
+.BR ddi_prop_exists (9F),
+.BR ddi_prop_lookup (9F),
+.BR ddi_prop_remove (9F),
+.BR ddi_prop_update (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ddi_prop_lookup.9f b/usr/src/man/man9f/ddi_prop_lookup.9f
index 8b89c7cb14..75eb14d684 100644
--- a/usr/src/man/man9f/ddi_prop_lookup.9f
+++ b/usr/src/man/man9f/ddi_prop_lookup.9f
@@ -430,9 +430,12 @@ int noptions;
.in -2
.SH SEE ALSO
-\fBexecve\fR(2), \fBddi_prop_exists\fR(9F), \fBddi_prop_get_int\fR(9F),
-\fBddi_prop_remove\fR(9F), \fBddi_prop_undefine\fR(9F),
-\fBddi_prop_update\fR(9F)
+.BR execve (2),
+.BR ddi_prop_exists (9F),
+.BR ddi_prop_get_int (9F),
+.BR ddi_prop_remove (9F),
+.BR ddi_prop_undefine (9F),
+.BR ddi_prop_update (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ddi_prop_op.9f b/usr/src/man/man9f/ddi_prop_op.9f
index 87dfd0294c..c688a24623 100644
--- a/usr/src/man/man9f/ddi_prop_op.9f
+++ b/usr/src/man/man9f/ddi_prop_op.9f
@@ -298,7 +298,7 @@ These functions can be called from user, interrupt, or kernel context, provided
\fBDDI_PROP_CANSLEEP\fR is not set; if it is set, they cannot be called from
interrupt context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for a description of the following attributes:
+See \fBattributes\fR(7) for a description of the following attributes:
.sp
.sp
@@ -314,8 +314,12 @@ T}
.TE
.SH SEE ALSO
-\fBattributes\fR(5), \fBddi_prop_create\fR(9F), \fBddi_prop_get_int\fR(9F),
-\fBddi_prop_lookup\fR(9F), \fBkmem_alloc\fR(9F), \fBkmem_free\fR(9F)
+.BR attributes (7),
+.BR ddi_prop_create (9F),
+.BR ddi_prop_get_int (9F),
+.BR ddi_prop_lookup (9F),
+.BR kmem_alloc (9F),
+.BR kmem_free (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ddi_prop_update.9f b/usr/src/man/man9f/ddi_prop_update.9f
index 3a322ae094..0f0c9baf82 100644
--- a/usr/src/man/man9f/ddi_prop_update.9f
+++ b/usr/src/man/man9f/ddi_prop_update.9f
@@ -348,8 +348,11 @@ int options[4];
.in -2
.SH SEE ALSO
-\fBexecve\fR(2), \fBattach\fR(9E), \fBddi_prop_lookup\fR(9F),
-\fBddi_prop_remove\fR(9F), \fBmakedevice\fR(9F)
+.BR execve (2),
+.BR attach (9E),
+.BR ddi_prop_lookup (9F),
+.BR ddi_prop_remove (9F),
+.BR makedevice (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ddi_put8.9f b/usr/src/man/man9f/ddi_put8.9f
index 854981ab04..8021c12ba0 100644
--- a/usr/src/man/man9f/ddi_put8.9f
+++ b/usr/src/man/man9f/ddi_put8.9f
@@ -86,13 +86,13 @@ the device have incompatible endian characteristics.
.LP
For certain bus types, you can call these \fBDDI\fR functions from a
high-interrupt context. These types include \fBISA\fR and SBus buses. See
-\fBsysbus\fR(4), \fBisa\fR(4), and \fBsbus\fR(4) for details. For the PCI bus,
+\fBsysbus\fR(5), \fBisa\fR(5), and \fBsbus\fR(5) for details. For the PCI bus,
you can, under certain conditions, call these \fBDDI\fR functions from a
-high-interrupt context. See \fBpci\fR(4).
+high-interrupt context. See \fBpci\fR(5).
.SH CONTEXT
These functions can be called from user, kernel, or interrupt context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -106,5 +106,9 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBddi_get8\fR(9F), \fBddi_regs_map_free\fR(9F), \fBddi_regs_map_setup\fR(9F),
-\fBddi_rep_get8\fR(9F), \fBddi_rep_put8\fR(9F), \fBddi_device_acc_attr\fR(9S)
+.BR ddi_get8 (9F),
+.BR ddi_regs_map_free (9F),
+.BR ddi_regs_map_setup (9F),
+.BR ddi_rep_get8 (9F),
+.BR ddi_rep_put8 (9F),
+.BR ddi_device_acc_attr (9S)
diff --git a/usr/src/man/man9f/ddi_regs_map_free.9f b/usr/src/man/man9f/ddi_regs_map_free.9f
index 30eaf344bb..7088523c13 100644
--- a/usr/src/man/man9f/ddi_regs_map_free.9f
+++ b/usr/src/man/man9f/ddi_regs_map_free.9f
@@ -36,7 +36,7 @@ represented in the handle.
.SH CONTEXT
\fBddi_regs_map_free()\fR must be called from user or kernel context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -50,7 +50,8 @@ Architecture PCI Local Bus, SBus, ISA
.TE
.SH SEE ALSO
-\fBattributes\fR(5), \fBddi_regs_map_setup\fR(9F)
+.BR attributes (7),
+.BR ddi_regs_map_setup (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ddi_regs_map_setup.9f b/usr/src/man/man9f/ddi_regs_map_setup.9f
index 8f48138dbd..122d20b708 100644
--- a/usr/src/man/man9f/ddi_regs_map_setup.9f
+++ b/usr/src/man/man9f/ddi_regs_map_setup.9f
@@ -129,9 +129,9 @@ non-zero value is in the third tuple (\fIrnumber\fR \fB2\fR).
.sp
.LP
For a full treatment of the meaning of the \fIreg\fR property for PCI
-devices, see \fBpci\fR(4). For PCI express devices, see \fBpcie\fR(4).
-For ISA devices, see \fBisa\fR(4). For cardbus, see \fBcardbus\fR(4).
-For SBus devices, see \fBsbus\fR(4).
+devices, see \fBpci\fR(5). For PCI express devices, see \fBpcie\fR(5).
+For ISA devices, see \fBisa\fR(5). For cardbus, see \fBcardbus\fR(5).
+For SBus devices, see \fBsbus\fR(5).
.SH RETURN VALUES
\fBddi_regs_map_setup()\fR returns:
.sp
@@ -181,7 +181,7 @@ checking for a specific failure value.
.SH CONTEXT
\fBddi_regs_map_setup()\fR must be called from user or kernel context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -195,8 +195,14 @@ Architecture PCI Local Bus, SBus, ISA
.TE
.SH SEE ALSO
-\fBcardbus\fR(4), \fBisa\fR(4), \fBpci\fR(4), \fBpcie\fR(4), \fBsbus\fR(4),
-\fBattributes\fR(5), \fBddi_regs_map_free\fR(9F), \fBddi_device_acc_attr\fR(9S)
+.BR cardbus (5),
+.BR isa (5),
+.BR pci (5),
+.BR pcie (5),
+.BR sbus (5),
+.BR attributes (7),
+.BR ddi_regs_map_free (9F),
+.BR ddi_device_acc_attr (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ddi_remove_event_handler.9f b/usr/src/man/man9f/ddi_remove_event_handler.9f
index 5ad077876c..d5b29e0c84 100644
--- a/usr/src/man/man9f/ddi_remove_event_handler.9f
+++ b/usr/src/man/man9f/ddi_remove_event_handler.9f
@@ -53,7 +53,7 @@ Failed to remove callback handler.
The \fBddi_remove_event_handler()\fR function can be called from user and
kernel contexts only.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for a description of the following attributes:
+See \fBattributes\fR(7) for a description of the following attributes:
.sp
.sp
@@ -67,8 +67,9 @@ Stability Level Committed
.TE
.SH SEE ALSO
-\fBattributes\fR(5), \fBddi_add_event_handler\fR(9F),
-\fBddi_get_eventcookie\fR(9F)
+.BR attributes (7),
+.BR ddi_add_event_handler (9F),
+.BR ddi_get_eventcookie (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ddi_remove_minor_node.9f b/usr/src/man/man9f/ddi_remove_minor_node.9f
index 51f412777a..49e74a130b 100644
--- a/usr/src/man/man9f/ddi_remove_minor_node.9f
+++ b/usr/src/man/man9f/ddi_remove_minor_node.9f
@@ -51,7 +51,9 @@ which is linked into the \fBdev_info\fR structure pointed to by \fBdip\fR:
.in -2
.SH SEE ALSO
-\fBattach\fR(9E), \fBdetach\fR(9E), \fBddi_create_minor_node\fR(9F)
+.BR attach (9E),
+.BR detach (9E),
+.BR ddi_create_minor_node (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ddi_removing_power.9f b/usr/src/man/man9f/ddi_removing_power.9f
index 28c2856657..30588ff042 100644
--- a/usr/src/man/man9f/ddi_removing_power.9f
+++ b/usr/src/man/man9f/ddi_removing_power.9f
@@ -89,7 +89,7 @@ int
.in -2
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -103,7 +103,10 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBattributes\fR(5), \fBcpr\fR(7), \fBattach\fR(9E), \fBdetach\fR(9E)
+.BR cpr (4),
+.BR attributes (7),
+.BR attach (9E),
+.BR detach (9E)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ddi_rep_get8.9f b/usr/src/man/man9f/ddi_rep_get8.9f
index 5241d3401a..08976c9859 100644
--- a/usr/src/man/man9f/ddi_rep_get8.9f
+++ b/usr/src/man/man9f/ddi_rep_get8.9f
@@ -137,7 +137,7 @@ These functions return the value read from the mapped address.
.SH CONTEXT
These functions can be called from user, kernel, or interrupt context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -151,5 +151,8 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBddi_get8\fR(9F), \fBddi_put8\fR(9F), \fBddi_regs_map_free\fR(9F),
-\fBddi_regs_map_setup\fR(9F), \fBddi_rep_put8\fR(9F)
+.BR ddi_get8 (9F),
+.BR ddi_put8 (9F),
+.BR ddi_regs_map_free (9F),
+.BR ddi_regs_map_setup (9F),
+.BR ddi_rep_put8 (9F)
diff --git a/usr/src/man/man9f/ddi_rep_put8.9f b/usr/src/man/man9f/ddi_rep_put8.9f
index 49a8c293c0..eb04872876 100644
--- a/usr/src/man/man9f/ddi_rep_put8.9f
+++ b/usr/src/man/man9f/ddi_rep_put8.9f
@@ -135,7 +135,7 @@ useful when writing to a data register.
.SH CONTEXT
These functions can be called from user, kernel, or interrupt context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -149,6 +149,9 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBddi_get8\fR(9F), \fBddi_put8\fR(9F), \fBddi_regs_map_free\fR(9F),
-\fBddi_regs_map_setup\fR(9F), \fBddi_rep_get8\fR(9F),
-\fBddi_device_acc_attr\fR(9S)
+.BR ddi_get8 (9F),
+.BR ddi_put8 (9F),
+.BR ddi_regs_map_free (9F),
+.BR ddi_regs_map_setup (9F),
+.BR ddi_rep_get8 (9F),
+.BR ddi_device_acc_attr (9S)
diff --git a/usr/src/man/man9f/ddi_report_dev.9f b/usr/src/man/man9f/ddi_report_dev.9f
index b391c63cf0..6c38f12456 100644
--- a/usr/src/man/man9f/ddi_report_dev.9f
+++ b/usr/src/man/man9f/ddi_report_dev.9f
@@ -31,12 +31,13 @@ a pointer the device's \fBdev_info\fR structure.
.SH DESCRIPTION
\fBddi_report_dev()\fR prints a banner at boot time, announcing the device
pointed to by \fIdip\fR. The banner is always placed in the system logfile
-(displayed by \fBdmesg\fR(1M)), but is only displayed on the console if the
+(displayed by \fBdmesg\fR(8)), but is only displayed on the console if the
system was booted with the verbose (\fB-v\fR) argument.
.SH CONTEXT
\fBddi_report_dev()\fR can be called from user context.
.SH SEE ALSO
-\fBdmesg\fR(1M), \fBkernel\fR(1M)
+.BR dmesg (8),
+.BR kernel (8)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ddi_segmap.9f b/usr/src/man/man9f/ddi_segmap.9f
index 9840343df8..7b5dbaff72 100644
--- a/usr/src/man/man9f/ddi_segmap.9f
+++ b/usr/src/man/man9f/ddi_segmap.9f
@@ -281,7 +281,7 @@ kernel context only.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for a description of the following attributes:
+See \fBattributes\fR(7) for a description of the following attributes:
.sp
.sp
@@ -297,9 +297,14 @@ Stability Level Obsolete
.SH SEE ALSO
.sp
.LP
-\fBmmap\fR(2), \fBattributes\fR(5), \fBdevmap\fR(9E), \fBmmap\fR(9E),
-\fBsegmap\fR(9E), \fBdevmap_setup\fR(9F), \fBcb_ops\fR(9S),
-\fBddi_device_acc_attr\fR(9S)
+.BR mmap (2),
+.BR attributes (7),
+.BR devmap (9E),
+.BR mmap (9E),
+.BR segmap (9E),
+.BR devmap_setup (9F),
+.BR cb_ops (9S),
+.BR ddi_device_acc_attr (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ddi_soft_state.9f b/usr/src/man/man9f/ddi_soft_state.9f
index 86c227d9ff..e43a2434f8 100644
--- a/usr/src/man/man9f/ddi_soft_state.9f
+++ b/usr/src/man/man9f/ddi_soft_state.9f
@@ -317,8 +317,13 @@ xxopen(dev_t *devp, int flag, int otyp, cred_t *cred_p)
.in -2
.SH SEE ALSO
-\fB_fini\fR(9E), \fB_init\fR(9E), \fBattach\fR(9E), \fBdetach\fR(9E),
-\fBddi_get_instance\fR(9F), \fBgetminor\fR(9F), \fBkmem_zalloc\fR(9F)
+.BR _fini (9E),
+.BR _init (9E),
+.BR attach (9E),
+.BR detach (9E),
+.BR ddi_get_instance (9F),
+.BR getminor (9F),
+.BR kmem_zalloc (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ddi_strtoll.9f b/usr/src/man/man9f/ddi_strtoll.9f
index bd45002a89..2e7290d769 100644
--- a/usr/src/man/man9f/ddi_strtoll.9f
+++ b/usr/src/man/man9f/ddi_strtoll.9f
@@ -185,7 +185,7 @@ not changed.
.SH CONTEXT
These functions may be called from user, kernel or interrupt context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
diff --git a/usr/src/man/man9f/ddi_umem_alloc.9f b/usr/src/man/man9f/ddi_umem_alloc.9f
index 113f87583f..e2d5682798 100644
--- a/usr/src/man/man9f/ddi_umem_alloc.9f
+++ b/usr/src/man/man9f/ddi_umem_alloc.9f
@@ -119,8 +119,13 @@ Memory cannot be allocated by \fBddi_umem_alloc()\fR because
can be called from user and kernel context only. \fBddi_umem_free()\fR can be
called from any context.
.SH SEE ALSO
-\fBdevmap\fR(9E), \fBcondvar\fR(9F), \fBdevmap_umem_setup\fR(9F),
-\fBkmem_alloc\fR(9F), \fBmutex\fR(9F), \fBrwlock\fR(9F), \fBsemaphore\fR(9F)
+.BR devmap (9E),
+.BR condvar (9F),
+.BR devmap_umem_setup (9F),
+.BR kmem_alloc (9F),
+.BR mutex (9F),
+.BR rwlock (9F),
+.BR semaphore (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ddi_umem_iosetup.9f b/usr/src/man/man9f/ddi_umem_iosetup.9f
index 2256980b7a..e64c8ca32d 100644
--- a/usr/src/man/man9f/ddi_umem_iosetup.9f
+++ b/usr/src/man/man9f/ddi_umem_iosetup.9f
@@ -144,5 +144,8 @@ The \fBddi_umem_iosetup\fR(9F) function can be called from any context only if
flag is set to \fBDDI_UMEM_NOSLEEP\fR. If \fBDDI_UMEM_SLEEP\fR is set,
\fBddi_umem_iosetup\fR(9F) can be called from user and kernel context only.
.SH SEE ALSO
-\fBddi_umem_lock\fR(9F), \fBddi_dma_buf_bind_handle\fR(9F), \fBfreerbuf\fR(9F),
-\fBphysio\fR(9F), \fBbuf\fR(9S)
+.BR ddi_dma_buf_bind_handle (9F),
+.BR ddi_umem_lock (9F),
+.BR freerbuf (9F),
+.BR physio (9F),
+.BR buf (9S)
diff --git a/usr/src/man/man9f/ddi_umem_lock.9f b/usr/src/man/man9f/ddi_umem_lock.9f
index bc8689cd6d..a4eaf68316 100644
--- a/usr/src/man/man9f/ddi_umem_lock.9f
+++ b/usr/src/man/man9f/ddi_umem_lock.9f
@@ -171,8 +171,10 @@ Requested memory is not aligned on a system page boundary.
The \fBddi_umem_lock()\fR function can only be called from user context;
\fBddi_umem_unlock()\fR from user, kernel, and interrupt contexts.
.SH SEE ALSO
-\fBddi_umem_iosetup\fR(9F), \fBddi_dma_buf_bind_handle\fR(9F),
-\fBdevmap_umem_setup\fR(9F), \fBddi_umem_alloc\fR(9F)
+.BR ddi_dma_buf_bind_handle (9F),
+.BR ddi_umem_alloc (9F),
+.BR ddi_umem_iosetup (9F),
+.BR devmap_umem_setup (9F)
.SH NOTES
The \fBddi_umem_unlock()\fR function consumes physical memory. The driver is
responsible for a speedy unlock to free up the resources.
diff --git a/usr/src/man/man9f/delay.9f b/usr/src/man/man9f/delay.9f
index 29c317d48d..f34fa24937 100644
--- a/usr/src/man/man9f/delay.9f
+++ b/usr/src/man/man9f/delay.9f
@@ -92,9 +92,15 @@ displayed on the system console (line 14). The driver waits an allotted time
.SH SEE ALSO
.sp
.LP
-\fBbiodone\fR(9F), \fBbiowait\fR(9F), \fBcv_timedwait\fR(9F),
-\fBddi_in_panic\fR(9F), \fBdrv_hztousec\fR(9F), \fBdrv_usectohz\fR(9F),
-\fBdrv_usecwait\fR(9F), \fBtimeout\fR(9F), \fBuntimeout\fR(9F)
+.BR biodone (9F),
+.BR biowait (9F),
+.BR cv_timedwait (9F),
+.BR ddi_in_panic (9F),
+.BR drv_hztousec (9F),
+.BR drv_usectohz (9F),
+.BR drv_usecwait (9F),
+.BR timeout (9F),
+.BR untimeout (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/devfs_clean.9f b/usr/src/man/man9f/devfs_clean.9f
index 1ffff3470c..49d214a4bd 100644
--- a/usr/src/man/man9f/devfs_clean.9f
+++ b/usr/src/man/man9f/devfs_clean.9f
@@ -61,7 +61,7 @@ attached.
Each of these entries shows up in the file system of the global zone under
.Pa /devices
.Po see
-.Xr devfs 7FS
+.Xr devfs 4FS
.Pc .
These nodes are referred to as a devfs nodes
.Pq Vt dv_node .
@@ -117,4 +117,4 @@ The
.Fn devfs_clean
function always succeeds and returns zero.
.Sh SEE ALSO
-.Xr devfs 7FS
+.Xr devfs 4FS
diff --git a/usr/src/man/man9f/devmap_default_access.9f b/usr/src/man/man9f/devmap_default_access.9f
index 200a15c387..c036a6bd57 100644
--- a/usr/src/man/man9f/devmap_default_access.9f
+++ b/usr/src/man/man9f/devmap_default_access.9f
@@ -176,8 +176,9 @@ xxdevmap_access(devmap_cookie_t dhp, void *pvtp, offset_t off,
.in -2
.SH SEE ALSO
-\fBdevmap_access\fR(9E), \fBdevmap_do_ctxmgt\fR(9F),
-\fBdevmap_callback_ctl\fR(9S)
+.BR devmap_access (9E),
+.BR devmap_do_ctxmgt (9F),
+.BR devmap_callback_ctl (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/devmap_devmem_setup.9f b/usr/src/man/man9f/devmap_devmem_setup.9f
index 6a914399ca..7a36ff0602 100644
--- a/usr/src/man/man9f/devmap_devmem_setup.9f
+++ b/usr/src/man/man9f/devmap_devmem_setup.9f
@@ -452,9 +452,14 @@ An error occurred.
\fBdevmap_devmem_setup()\fR and \fBdevmap_umem_setup()\fR can be called from
user, kernel, and interrupt context.
.SH SEE ALSO
-\fBexit\fR(2), \fBfork\fR(2), \fBmmap\fR(2), \fBmunmap\fR(2), \fBdevmap\fR(9E),
-\fBddi_umem_alloc\fR(9F), \fBddi_device_acc_attr\fR(9S),
-\fBdevmap_callback_ctl\fR(9S)
+.BR exit (2),
+.BR fork (2),
+.BR mmap (2),
+.BR munmap (2),
+.BR devmap (9E),
+.BR ddi_umem_alloc (9F),
+.BR ddi_device_acc_attr (9S),
+.BR devmap_callback_ctl (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/devmap_do_ctxmgt.9f b/usr/src/man/man9f/devmap_do_ctxmgt.9f
index 4c2229fa82..fda4ff0338 100644
--- a/usr/src/man/man9f/devmap_do_ctxmgt.9f
+++ b/usr/src/man/man9f/devmap_do_ctxmgt.9f
@@ -202,8 +202,9 @@ xxdevmap_access(devmap_cookie_t dhp, void *pvtp, offset_t off,
.in -2
.SH SEE ALSO
-\fBdevmap_access\fR(9E), \fBdevmap_contextmgt\fR(9E),
-\fBdevmap_default_access\fR(9F)
+.BR devmap_access (9E),
+.BR devmap_contextmgt (9E),
+.BR devmap_default_access (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/devmap_set_ctx_timeout.9f b/usr/src/man/man9f/devmap_set_ctx_timeout.9f
index 614971ec8f..46548845ca 100644
--- a/usr/src/man/man9f/devmap_set_ctx_timeout.9f
+++ b/usr/src/man/man9f/devmap_set_ctx_timeout.9f
@@ -53,4 +53,6 @@ driver's \fBdevmap_contextmgt\fR(9E) callback function.
The \fBdevmap_set_ctx_timeout()\fR function can be called from user, interrupt,
or kernel context.
.SH SEE ALSO
-\fBdevmap_contextmgt\fR(9E), \fBdevmap_map\fR(9E), \fBtimeout\fR(9F)
+.BR devmap_contextmgt (9E),
+.BR devmap_map (9E),
+.BR timeout (9F)
diff --git a/usr/src/man/man9f/devmap_setup.9f b/usr/src/man/man9f/devmap_setup.9f
index 2f77b7240e..b9deee808f 100644
--- a/usr/src/man/man9f/devmap_setup.9f
+++ b/usr/src/man/man9f/devmap_setup.9f
@@ -276,8 +276,12 @@ entry point.
\fBdevmap_setup()\fR and \fBddi_devmap_segmap()\fR can be called from user or
kernel context only.
.SH SEE ALSO
-\fBmmap\fR(2), \fBdevmap\fR(9E), \fBsegmap\fR(9E), \fBddi_segmap\fR(9F),
-\fBddi_segmap_setup\fR(9F), \fBcb_ops\fR(9S)
+.BR mmap (2),
+.BR devmap (9E),
+.BR segmap (9E),
+.BR ddi_segmap (9F),
+.BR ddi_segmap_setup (9F),
+.BR cb_ops (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/devmap_unload.9f b/usr/src/man/man9f/devmap_unload.9f
index 40a684c7de..063322dad6 100644
--- a/usr/src/man/man9f/devmap_unload.9f
+++ b/usr/src/man/man9f/devmap_unload.9f
@@ -172,7 +172,8 @@ xxdevmap_contextmgt(devmap_cookie_t dhp, void *pvtp, offset_t off,
.in -2
.SH SEE ALSO
-\fBdevmap_access\fR(9E), \fBdevmap_contextmgt\fR(9E)
+.BR devmap_access (9E),
+.BR devmap_contextmgt (9E)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/disksort.9f b/usr/src/man/man9f/disksort.9f
index f7531a7c6f..0c78460c12 100644
--- a/usr/src/man/man9f/disksort.9f
+++ b/usr/src/man/man9f/disksort.9f
@@ -69,7 +69,8 @@ indicates the currently active disk area.
.SH CONTEXT
This function can be called from user, interrupt, or kernel context.
.SH SEE ALSO
-\fBstrategy\fR(9E), \fBbuf\fR(9S)
+.BR strategy (9E),
+.BR buf (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/dlbindack.9f b/usr/src/man/man9f/dlbindack.9f
index 256dc9c6aa..c24eb16900 100644
--- a/usr/src/man/man9f/dlbindack.9f
+++ b/usr/src/man/man9f/dlbindack.9f
@@ -180,12 +180,14 @@ reply used to complete an unsuccessful \fBDL_UNITDATA_REQ\fR.
None.
.SH NOTES
These functions are not required if you are are writing a \fBDLPI\fR device
-driver using \fBgld\fR(7D).
+driver using \fBgld\fR(4D).
.SH CONTEXT
All \fBDLPI\fR helper functions can be called from user, interrupt, or kernel
context.
.SH SEE ALSO
-\fBgld\fR(7D), \fBdlpi\fR(7P), \fBqreply\fR(9F)
+.BR gld (4D),
+.BR dlpi (4P),
+.BR qreply (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/drv_getparm.9f b/usr/src/man/man9f/drv_getparm.9f
index 7c9fddd502..a3f9577a59 100644
--- a/usr/src/man/man9f/drv_getparm.9f
+++ b/usr/src/man/man9f/drv_getparm.9f
@@ -148,8 +148,10 @@ be called from user, interrupt, or kernel context when using the \fBLBOLT\fR or
\fBTIME\fR argument.
.SH SEE ALSO
.LP
-\fBddi_get_lbolt\fR(9F), \fBddi_get_pid\fR(9F), \fBddi_get_time\fR(9F),
-\fBbuf\fR(9S)
+.BR ddi_get_lbolt (9F),
+.BR ddi_get_pid (9F),
+.BR ddi_get_time (9F),
+.BR buf (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/drv_hztousec.9f b/usr/src/man/man9f/drv_hztousec.9f
index e4531d6a73..58745c828a 100644
--- a/usr/src/man/man9f/drv_hztousec.9f
+++ b/usr/src/man/man9f/drv_hztousec.9f
@@ -61,7 +61,9 @@ context.
.SH SEE ALSO
.sp
.LP
-\fBddi_get_lbolt\fR(9F), \fBdrv_usectohz\fR(9F), \fBdrv_usecwait\fR(9F)
+.BR ddi_get_lbolt (9F),
+.BR drv_usectohz (9F),
+.BR drv_usecwait (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/drv_priv.9f b/usr/src/man/man9f/drv_priv.9f
index 0aeb2b60bc..d4c32c52a0 100644
--- a/usr/src/man/man9f/drv_priv.9f
+++ b/usr/src/man/man9f/drv_priv.9f
@@ -41,7 +41,7 @@ privilege policy. It determines whether the credentials supplied by the user
credential structure pointed to by \fIcr\fR identify a process that has the
\fB{PRIV_SYS_DEVICES}\fR privilege asserted in its effective set. This function
should be used only when file access modes, special minor device numbers, and
-the device policy (see \fBprivileges\fR(5), \fBadd_drv\fR(1M)) are insufficient
+the device policy (see \fBprivileges\fR(7), \fBadd_drv\fR(8)) are insufficient
to provide protection for the requested driver function. It is intended to
replace all calls to \fBsuser()\fR and any explicit checks for effective user
ID = 0 in driver code.
@@ -57,7 +57,9 @@ context.
.SH SEE ALSO
.sp
.LP
-\fBadd_drv\fR(1M), \fBupdate_drv\fR(1M), \fBprivileges\fR(5)
+.BR privileges (7),
+.BR add_drv (8),
+.BR update_drv (8)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/drv_usectohz.9f b/usr/src/man/man9f/drv_usectohz.9f
index 810dc8a0ba..4a2a57ef2e 100644
--- a/usr/src/man/man9f/drv_usectohz.9f
+++ b/usr/src/man/man9f/drv_usectohz.9f
@@ -59,7 +59,9 @@ context.
.SH SEE ALSO
.sp
.LP
-\fBdelay\fR(9F), \fBdrv_hztousec\fR(9F), \fBtimeout\fR(9F)
+.BR delay (9F),
+.BR drv_hztousec (9F),
+.BR timeout (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/drv_usecwait.9f b/usr/src/man/man9f/drv_usecwait.9f
index 9842f9af4c..22511f0ad5 100644
--- a/usr/src/man/man9f/drv_usecwait.9f
+++ b/usr/src/man/man9f/drv_usecwait.9f
@@ -59,7 +59,9 @@ context.
.SH SEE ALSO
.sp
.LP
-\fBdelay\fR(9F), \fBtimeout\fR(9F), \fBuntimeout\fR(9F)
+.BR delay (9F),
+.BR timeout (9F),
+.BR untimeout (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/dupb.9f b/usr/src/man/man9f/dupb.9f
index 15abe35d32..342487128a 100644
--- a/usr/src/man/man9f/dupb.9f
+++ b/usr/src/man/man9f/dupb.9f
@@ -160,8 +160,11 @@ the new message block (line 34) and pass it along (line 35).
.in -2
.SH SEE ALSO
-\fBsrv\fR(9E), \fBcopyb\fR(9F), \fBqbufcall\fR(9F), \fBdatab\fR(9S),
-\fBmsgb\fR(9S)
+.BR srv (9E),
+.BR copyb (9F),
+.BR qbufcall (9F),
+.BR datab (9S),
+.BR msgb (9S)
.sp
.LP
\fIWriting Device Drivers\fR \fISTREAMS Programming Guide\fR
diff --git a/usr/src/man/man9f/dupmsg.9f b/usr/src/man/man9f/dupmsg.9f
index f2b08825c7..58a2ccccaa 100644
--- a/usr/src/man/man9f/dupmsg.9f
+++ b/usr/src/man/man9f/dupmsg.9f
@@ -58,7 +58,10 @@ See \fBcopyb\fR(9F) for an example using \fBdupmsg()\fR.
.SH SEE ALSO
.sp
.LP
-\fBcopyb\fR(9F), \fBcopymsg\fR(9F), \fBdupb\fR(9F), \fBdatab\fR(9S)
+.BR copyb (9F),
+.BR copymsg (9F),
+.BR dupb (9F),
+.BR datab (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/enableok.9f b/usr/src/man/man9f/enableok.9f
index 8dc0ba6df0..51e20796b9 100644
--- a/usr/src/man/man9f/enableok.9f
+++ b/usr/src/man/man9f/enableok.9f
@@ -70,7 +70,8 @@ processing.
.SH SEE ALSO
.sp
.LP
-\fBnoenable\fR(9F), \fBqenable\fR(9F)
+.BR noenable (9F),
+.BR qenable (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/esballoc.9f b/usr/src/man/man9f/esballoc.9f
index 812e8255dd..49f1764031 100644
--- a/usr/src/man/man9f/esballoc.9f
+++ b/usr/src/man/man9f/esballoc.9f
@@ -155,7 +155,7 @@ The \fBesballoc()\fR, \fBesballoca()\fR, \fBdesballoc()\fR and
\fBdesballoca()\fR functions can be called from user,
interrupt, or kernel context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -169,9 +169,12 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBallocb\fR(9F), \fBddi_intr_get_pri\fR(9F),
-\fBddi_intr_get_softint_pri\fR(9F), \fBfreeb\fR(9F), \fBdatab\fR(9S),
-\fBfree_rtn\fR(9S)
+.BR allocb (9F),
+.BR ddi_intr_get_pri (9F),
+.BR ddi_intr_get_softint_pri (9F),
+.BR freeb (9F),
+.BR datab (9S),
+.BR free_rtn (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/esbbcall.9f b/usr/src/man/man9f/esbbcall.9f
index ebb75f3756..9258f68f74 100644
--- a/usr/src/man/man9f/esbbcall.9f
+++ b/usr/src/man/man9f/esbbcall.9f
@@ -76,8 +76,12 @@ context.
.SH SEE ALSO
.sp
.LP
-\fBallocb\fR(9F), \fBbufcall\fR(9F), \fBesballoc\fR(9F), \fBtimeout\fR(9F),
-\fBdatab\fR(9S), \fBunbufcall\fR(9F)
+.BR allocb (9F),
+.BR bufcall (9F),
+.BR esballoc (9F),
+.BR timeout (9F),
+.BR unbufcall (9F),
+.BR datab (9S)
.sp
.LP
\fIWriting Device Drivers\fR \fISTREAMS Programming Guide\fR
diff --git a/usr/src/man/man9f/firmload.9f b/usr/src/man/man9f/firmload.9f
index 0641fe3b2e..bec29a42e1 100644
--- a/usr/src/man/man9f/firmload.9f
+++ b/usr/src/man/man9f/firmload.9f
@@ -88,7 +88,7 @@ attach time.
Firmware images reside in sub-directories, one for each driver, in the
namespace "firmware" in the system default module search path as
described in
-.Xr system 4 .
+.Xr system 5 .
.sp
The following functions are provided by the
.Nm
@@ -149,4 +149,4 @@ will always return zero.
.Sh INTERFACE STABILITY
.Sy Committed
.Sh SEE ALSO
-.Xr system 4
+.Xr system 5
diff --git a/usr/src/man/man9f/flushband.9f b/usr/src/man/man9f/flushband.9f
index 529c82898c..ed853c8040 100644
--- a/usr/src/man/man9f/flushband.9f
+++ b/usr/src/man/man9f/flushband.9f
@@ -83,7 +83,7 @@ context.
.SH SEE ALSO
.sp
.LP
-\fBflushq\fR(9F)
+.BR flushq (9F)
.sp
.LP
\fIWriting Device Drivers\fR \fISTREAMS Programming Guide\fR
diff --git a/usr/src/man/man9f/flushq.9f b/usr/src/man/man9f/flushq.9f
index 7c1926aa0c..5b026bea14 100644
--- a/usr/src/man/man9f/flushq.9f
+++ b/usr/src/man/man9f/flushq.9f
@@ -112,7 +112,10 @@ for drivers.
.SH SEE ALSO
.sp
.LP
-\fBflushband\fR(9F), \fBfreemsg\fR(9F), \fBputq\fR(9F), \fBqreply\fR(9F)
+.BR flushband (9F),
+.BR freemsg (9F),
+.BR putq (9F),
+.BR qreply (9F)
.sp
.LP
\fIWriting Device Drivers\fR \fISTREAMS Programming Guide\fR
diff --git a/usr/src/man/man9f/freeb.9f b/usr/src/man/man9f/freeb.9f
index 78d0a8acd8..f91cb1d070 100644
--- a/usr/src/man/man9f/freeb.9f
+++ b/usr/src/man/man9f/freeb.9f
@@ -64,8 +64,11 @@ See \fBcopyb\fR(9F) for an example of using \fBfreeb()\fR.
.SH SEE ALSO
.sp
.LP
-\fBallocb\fR(9F), \fBcopyb\fR(9F), \fBdupb\fR(9F), \fBesballoc\fR(9F),
-\fBfree_rtn\fR(9S)
+.BR allocb (9F),
+.BR copyb (9F),
+.BR dupb (9F),
+.BR esballoc (9F),
+.BR free_rtn (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/freemsg.9f b/usr/src/man/man9f/freemsg.9f
index ca157ba695..6ba432eeb4 100644
--- a/usr/src/man/man9f/freemsg.9f
+++ b/usr/src/man/man9f/freemsg.9f
@@ -53,7 +53,9 @@ See \fBcopymsg\fR(9F).
.SH SEE ALSO
.sp
.LP
-\fBcopymsg\fR(9F), \fBfreeb\fR(9F), \fBmsgb\fR(9S)
+.BR copymsg (9F),
+.BR freeb (9F),
+.BR msgb (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/freerbuf.9f b/usr/src/man/man9f/freerbuf.9f
index 3173671185..7a7f986e40 100644
--- a/usr/src/man/man9f/freerbuf.9f
+++ b/usr/src/man/man9f/freerbuf.9f
@@ -46,5 +46,7 @@ context.
.SH SEE ALSO
.sp
.LP
-\fBgetrbuf\fR(9F), \fBkmem_alloc\fR(9F), \fBkmem_free\fR(9F),
-\fBkmem_zalloc\fR(9F)
+.BR getrbuf (9F),
+.BR kmem_alloc (9F),
+.BR kmem_free (9F),
+.BR kmem_zalloc (9F)
diff --git a/usr/src/man/man9f/get_pktiopb.9f b/usr/src/man/man9f/get_pktiopb.9f
index b7583d4507..8a1dcf4631 100644
--- a/usr/src/man/man9f/get_pktiopb.9f
+++ b/usr/src/man/man9f/get_pktiopb.9f
@@ -171,7 +171,7 @@ context.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for a description of the following attributes:
+See \fBattributes\fR(7) for a description of the following attributes:
.sp
.sp
@@ -187,9 +187,12 @@ Stability Level Obsolete
.SH SEE ALSO
.sp
.LP
-\fBattributes\fR(5),
-\fBscsi_alloc_consistent_buf\fR(9F), \fBscsi_free_consistent_buf\fR(9F),
-\fBscsi_pktalloc\fR(9F), \fBscsi_resalloc\fR(9F), \fBscsi_pkt\fR(9S)
+.BR attributes (7),
+.BR scsi_alloc_consistent_buf (9F),
+.BR scsi_free_consistent_buf (9F),
+.BR scsi_pktalloc (9F),
+.BR scsi_resalloc (9F),
+.BR scsi_pkt (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/geterror.9f b/usr/src/man/man9f/geterror.9f
index 69a772f906..dcd1fb44fe 100644
--- a/usr/src/man/man9f/geterror.9f
+++ b/usr/src/man/man9f/geterror.9f
@@ -51,7 +51,7 @@ context.
.SH SEE ALSO
.sp
.LP
-\fBbuf\fR(9S)
+.BR buf (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/gethrtime.9f b/usr/src/man/man9f/gethrtime.9f
index 74a4d2379f..03edfba04f 100644
--- a/usr/src/man/man9f/gethrtime.9f
+++ b/usr/src/man/man9f/gethrtime.9f
@@ -38,8 +38,10 @@ called.
.SH SEE ALSO
.sp
.LP
-\fBproc\fR(1), \fBgettimeofday\fR(3C), \fBsettimeofday\fR(3C),
-\fBattributes\fR(5)
+.BR proc (1),
+.BR gettimeofday (3C),
+.BR settimeofday (3C),
+.BR attributes (7)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man9f/getmajor.9f b/usr/src/man/man9f/getmajor.9f
index c67a1b4f82..d942405102 100644
--- a/usr/src/man/man9f/getmajor.9f
+++ b/usr/src/man/man9f/getmajor.9f
@@ -70,7 +70,9 @@ cmn_err(CE_NOTE,"Driver Started. Major# = %d,
.SH SEE ALSO
.sp
.LP
-\fBcmn_err\fR(9F), \fBgetminor\fR(9F), \fBmakedevice\fR(9F)
+.BR cmn_err (9F),
+.BR getminor (9F),
+.BR makedevice (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/getminor.9f b/usr/src/man/man9f/getminor.9f
index d84741a986..f7ed20ef82 100644
--- a/usr/src/man/man9f/getminor.9f
+++ b/usr/src/man/man9f/getminor.9f
@@ -54,7 +54,8 @@ See the \fBgetmajor\fR(9F) manual page for an example of how to use
.SH SEE ALSO
.sp
.LP
-\fBgetmajor\fR(9F), \fBmakedevice\fR(9F)
+.BR getmajor (9F),
+.BR makedevice (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/getq.9f b/usr/src/man/man9f/getq.9f
index 98bd78e25d..c714aac326 100644
--- a/usr/src/man/man9f/getq.9f
+++ b/usr/src/man/man9f/getq.9f
@@ -66,8 +66,13 @@ See \fBdupb\fR(9F).
.SH SEE ALSO
.sp
.LP
-\fBsrv\fR(9E), \fBbcanput\fR(9F), \fBcanput\fR(9F), \fBdupb\fR(9F),
-\fBputbq\fR(9F), \fBputq\fR(9F), \fBqenable\fR(9F)
+.BR srv (9E),
+.BR bcanput (9F),
+.BR canput (9F),
+.BR dupb (9F),
+.BR putbq (9F),
+.BR putq (9F),
+.BR qenable (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/getrbuf.9f b/usr/src/man/man9f/getrbuf.9f
index d1381ed592..d75e97fe47 100644
--- a/usr/src/man/man9f/getrbuf.9f
+++ b/usr/src/man/man9f/getrbuf.9f
@@ -58,8 +58,10 @@ context. (Drivers must not allow \fBgetrbuf()\fR to sleep if called from an
interrupt routine.)
.SH SEE ALSO
.LP
-\fBbioinit\fR(9F), \fBfreerbuf\fR(9F), \fBkmem_alloc\fR(9F),
-\fBkmem_free\fR(9F)
+.BR bioinit (9F),
+.BR freerbuf (9F),
+.BR kmem_alloc (9F),
+.BR kmem_free (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/gld.9f b/usr/src/man/man9f/gld.9f
index 8724f4c23d..92ecddc3cf 100644
--- a/usr/src/man/man9f/gld.9f
+++ b/usr/src/man/man9f/gld.9f
@@ -287,8 +287,13 @@ on failure.
.LP
\fBgld_intr\fR(\|) returns a value appropriate for an interrupt handler.
.SH SEE ALSO
-\fBgld\fR(7D), \fBgld\fR(9E), \fBgld_mac_info\fR(9S), \fBgld_stats\fR(9S),
-\fBdlpi\fR(7P), \fBattach\fR(9E), \fBddi_add_intr\fR(9F)
+.BR gld (4D),
+.BR dlpi (4P),
+.BR attach (9E),
+.BR gld (9E),
+.BR ddi_add_intr (9F),
+.BR gld_mac_info (9S),
+.BR gld_stats (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/hook_alloc.9f b/usr/src/man/man9f/hook_alloc.9f
index 585f08ef6b..453820b609 100644
--- a/usr/src/man/man9f/hook_alloc.9f
+++ b/usr/src/man/man9f/hook_alloc.9f
@@ -34,7 +34,7 @@ pointer.
.SH CONTEXT
The \fBhook_alloc()\fR function may be called from user or kernel context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -48,4 +48,5 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBhook_free\fR(9F), \fBhook_t\fR(9S)
+.BR hook_free (9F),
+.BR hook_t (9S)
diff --git a/usr/src/man/man9f/hook_free.9f b/usr/src/man/man9f/hook_free.9f
index fd5f933af7..5b665f87a7 100644
--- a/usr/src/man/man9f/hook_free.9f
+++ b/usr/src/man/man9f/hook_free.9f
@@ -31,7 +31,7 @@ originally allocated by \fBhook_alloc\fR(9F).
The \fBhook_free()\fR function may be called from user, kernel, or interrupt
context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -45,4 +45,5 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBhook_alloc\fR(9F), \fBhook_t\fR(9S)
+.BR hook_alloc (9F),
+.BR hook_t (9S)
diff --git a/usr/src/man/man9f/id32_alloc.9f b/usr/src/man/man9f/id32_alloc.9f
index 8503ab2049..0f811eaf31 100644
--- a/usr/src/man/man9f/id32_alloc.9f
+++ b/usr/src/man/man9f/id32_alloc.9f
@@ -86,7 +86,7 @@ These functions can be called from user or interrupt context. The routine
\fBKM_SLEEP\fR flag is passed in. All other routines can be called from
interrupt or kernel context.
.SH SEE ALSO
-\fBkmem_alloc\fR(9F)
+.BR kmem_alloc (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/inb.9f b/usr/src/man/man9f/inb.9f
index 55aa03f83f..0251b69334 100644
--- a/usr/src/man/man9f/inb.9f
+++ b/usr/src/man/man9f/inb.9f
@@ -69,7 +69,7 @@ was read from the I/O port.
.SH CONTEXT
These functions may be called from user, interrupt, or kernel context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -85,8 +85,12 @@ Stability Level Obsolete
.TE
.SH SEE ALSO
-\fBisa\fR(4), \fBattributes\fR(5), \fBddi_get8\fR(9F), \fBddi_get16\fR(9F),
-\fBddi_get32\fR(9F), \fBoutb\fR(9F)
+.BR isa (5),
+.BR attributes (7),
+.BR ddi_get16 (9F),
+.BR ddi_get32 (9F),
+.BR ddi_get8 (9F),
+.BR outb (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/insq.9f b/usr/src/man/man9f/insq.9f
index 481a21370a..78bda30f1a 100644
--- a/usr/src/man/man9f/insq.9f
+++ b/usr/src/man/man9f/insq.9f
@@ -127,7 +127,9 @@ by using STREAMS functions or by implementing your own locking.
.SH SEE ALSO
.sp
.LP
-\fBputq\fR(9F), \fBrmvq\fR(9F), \fBmsgb\fR(9S)
+.BR putq (9F),
+.BR rmvq (9F),
+.BR msgb (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/kiconv.9f b/usr/src/man/man9f/kiconv.9f
index 71c21890e1..a7d2ad80c9 100644
--- a/usr/src/man/man9f/kiconv.9f
+++ b/usr/src/man/man9f/kiconv.9f
@@ -253,7 +253,7 @@ doconv_error_return:
.in -2
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -267,15 +267,31 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBiconv\fR(3C), \fBiconv_close\fR(3C), \fBiconv_open\fR(3C),
-\fBu8_strcmp\fR(3C), \fBu8_textprep_str\fR(3C), \fBu8_validate\fR(3C),
-\fBuconv_u16tou32\fR(3C), \fBuconv_u16tou8\fR(3C), \fBuconv_u32tou16\fR(3C),
-\fBuconv_u32tou8\fR(3C), \fBuconv_u8tou16\fR(3C), \fBuconv_u8tou32\fR(3C),
-\fBattributes\fR(5), \fBkiconvstr\fR(9F), \fBkiconv_close\fR(9F),
-\fBkiconv_open\fR(9F), \fBu8_strcmp\fR(9F), \fBu8_textprep_str\fR(9F),
-\fBu8_validate\fR(9F), \fBuconv_u16tou32\fR(9F), \fBuconv_u16tou8\fR(9F),
-\fBuconv_u32tou16\fR(9F), \fBuconv_u32tou8\fR(9F), \fBuconv_u8tou16\fR(9F),
-\fBuconv_u8tou32\fR(9F)
+.BR iconv (3C),
+.BR iconv_close (3C),
+.BR iconv_open (3C),
+.BR u8_strcmp (3C),
+.BR u8_textprep_str (3C),
+.BR u8_validate (3C),
+.BR uconv_u16tou32 (3C),
+.BR uconv_u16tou8 (3C),
+.BR uconv_u32tou16 (3C),
+.BR uconv_u32tou8 (3C),
+.BR uconv_u8tou16 (3C),
+.BR uconv_u8tou32 (3C),
+.BR attributes (7),
+.BR kiconv_close (9F),
+.BR kiconv_open (9F),
+.BR kiconvstr (9F),
+.BR u8_strcmp (9F),
+.BR u8_textprep_str (9F),
+.BR u8_validate (9F),
+.BR uconv_u16tou32 (9F),
+.BR uconv_u16tou8 (9F),
+.BR uconv_u32tou16 (9F),
+.BR uconv_u32tou8 (9F),
+.BR uconv_u8tou16 (9F),
+.BR uconv_u8tou32 (9F)
.sp
.LP
The Unicode Standard:
diff --git a/usr/src/man/man9f/kiconv_close.9f b/usr/src/man/man9f/kiconv_close.9f
index 095cee4530..99915b6cf0 100644
--- a/usr/src/man/man9f/kiconv_close.9f
+++ b/usr/src/man/man9f/kiconv_close.9f
@@ -75,7 +75,7 @@ error checking:
.in -2
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -89,15 +89,31 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBiconv\fR(3C), \fBiconv_close\fR(3C), \fBiconv_open\fR(3C),
-\fBu8_strcmp\fR(3C), \fBu8_textprep_str\fR(3C), \fBu8_validate\fR(3C),
-\fBuconv_u16tou32\fR(3C), \fBuconv_u16tou8\fR(3C), \fBuconv_u32tou16\fR(3C),
-\fBuconv_u32tou8\fR(3C), \fBuconv_u8tou16\fR(3C), \fBuconv_u8tou32\fR(3C),
-\fBattributes\fR(5), \fBkiconv\fR(9F), \fBkiconvstr\fR(9F),
-\fBkiconv_open\fR(9F), \fBu8_strcmp\fR(9F), \fBu8_textprep_str\fR(9F),
-\fBu8_validate\fR(9F), \fBuconv_u16tou32\fR(9F), \fBuconv_u16tou8\fR(9F),
-\fBuconv_u32tou16\fR(9F), \fBuconv_u32tou8\fR(9F), \fBuconv_u8tou16\fR(9F),
-\fBuconv_u8tou32\fR(9F)
+.BR iconv (3C),
+.BR iconv_close (3C),
+.BR iconv_open (3C),
+.BR u8_strcmp (3C),
+.BR u8_textprep_str (3C),
+.BR u8_validate (3C),
+.BR uconv_u16tou32 (3C),
+.BR uconv_u16tou8 (3C),
+.BR uconv_u32tou16 (3C),
+.BR uconv_u32tou8 (3C),
+.BR uconv_u8tou16 (3C),
+.BR uconv_u8tou32 (3C),
+.BR attributes (7),
+.BR kiconv (9F),
+.BR kiconv_open (9F),
+.BR kiconvstr (9F),
+.BR u8_strcmp (9F),
+.BR u8_textprep_str (9F),
+.BR u8_validate (9F),
+.BR uconv_u16tou32 (9F),
+.BR uconv_u16tou8 (9F),
+.BR uconv_u32tou16 (9F),
+.BR uconv_u32tou8 (9F),
+.BR uconv_u8tou16 (9F),
+.BR uconv_u8tou32 (9F)
.sp
.LP
The Unicode Standard
diff --git a/usr/src/man/man9f/kiconv_open.9f b/usr/src/man/man9f/kiconv_open.9f
index 45132541fb..98798b899a 100644
--- a/usr/src/man/man9f/kiconv_open.9f
+++ b/usr/src/man/man9f/kiconv_open.9f
@@ -166,7 +166,7 @@ if (cd == (kiconv_t)-1) {
.in -2
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -180,15 +180,31 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBiconv\fR(3C), \fBiconv_close\fR(3C), \fBiconv_open\fR(3C),
-\fBu8_strcmp\fR(3C), \fBu8_textprep_str\fR(3C), \fBu8_validate\fR(3C),
-\fBuconv_u16tou32\fR(3C), \fBuconv_u16tou8\fR(3C), \fBuconv_u32tou16\fR(3C),
-\fBuconv_u32tou8\fR(3C), \fBuconv_u8tou16\fR(3C), \fBuconv_u8tou32\fR(3C),
-\fBattributes\fR(5), \fBkiconv\fR(9F), \fBkiconvstr\fR(9F),
-\fBkiconv_close\fR(9F), \fBu8_strcmp\fR(9F), \fBu8_textprep_str\fR(9F),
-\fBu8_validate\fR(9F), \fBuconv_u16tou32\fR(9F), \fBuconv_u16tou8\fR(9F),
-\fBuconv_u32tou16\fR(9F), \fBuconv_u32tou8\fR(9F), \fBuconv_u8tou16\fR(9F),
-\fBuconv_u8tou32\fR(9F)
+.BR iconv (3C),
+.BR iconv_close (3C),
+.BR iconv_open (3C),
+.BR u8_strcmp (3C),
+.BR u8_textprep_str (3C),
+.BR u8_validate (3C),
+.BR uconv_u16tou32 (3C),
+.BR uconv_u16tou8 (3C),
+.BR uconv_u32tou16 (3C),
+.BR uconv_u32tou8 (3C),
+.BR uconv_u8tou16 (3C),
+.BR uconv_u8tou32 (3C),
+.BR attributes (7),
+.BR kiconv (9F),
+.BR kiconv_close (9F),
+.BR kiconvstr (9F),
+.BR u8_strcmp (9F),
+.BR u8_textprep_str (9F),
+.BR u8_validate (9F),
+.BR uconv_u16tou32 (9F),
+.BR uconv_u16tou8 (9F),
+.BR uconv_u32tou16 (9F),
+.BR uconv_u32tou8 (9F),
+.BR uconv_u8tou16 (9F),
+.BR uconv_u8tou32 (9F)
.sp
.LP
The Unicode Standard
diff --git a/usr/src/man/man9f/kiconvstr.9f b/usr/src/man/man9f/kiconvstr.9f
index 5fa6c293f7..4547052a7f 100644
--- a/usr/src/man/man9f/kiconvstr.9f
+++ b/usr/src/man/man9f/kiconvstr.9f
@@ -281,7 +281,7 @@ if (ret == (size_t)-1) {
.in -2
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -295,15 +295,31 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBiconv\fR(3C), \fBiconv_close\fR(3C), \fBiconv_open\fR(3C),
-\fBu8_strcmp\fR(3C), \fBu8_textprep_str\fR(3C), \fBu8_validate\fR(3C),
-\fBuconv_u16tou32\fR(3C), \fBuconv_u16tou8\fR(3C), \fBuconv_u32tou16\fR(3C),
-\fBuconv_u32tou8\fR(3C), \fBuconv_u8tou16\fR(3C), \fBuconv_u8tou32\fR(3C),
-\fBattributes\fR(5), \fBkiconv\fR(9F), \fBkiconv_close\fR(9F),
-\fBkiconv_open\fR(9F), \fBu8_strcmp\fR(9F), \fBu8_textprep_str\fR(9F),
-\fBu8_validate\fR(9F), \fBuconv_u16tou32\fR(9F), \fBuconv_u16tou8\fR(9F),
-\fBuconv_u32tou16\fR(9F), \fBuconv_u32tou8\fR(9F), \fBuconv_u8tou16\fR(9F),
-\fBuconv_u8tou32\fR(9F)
+.BR iconv (3C),
+.BR iconv_close (3C),
+.BR iconv_open (3C),
+.BR u8_strcmp (3C),
+.BR u8_textprep_str (3C),
+.BR u8_validate (3C),
+.BR uconv_u16tou32 (3C),
+.BR uconv_u16tou8 (3C),
+.BR uconv_u32tou16 (3C),
+.BR uconv_u32tou8 (3C),
+.BR uconv_u8tou16 (3C),
+.BR uconv_u8tou32 (3C),
+.BR attributes (7),
+.BR kiconv (9F),
+.BR kiconv_close (9F),
+.BR kiconv_open (9F),
+.BR u8_strcmp (9F),
+.BR u8_textprep_str (9F),
+.BR u8_validate (9F),
+.BR uconv_u16tou32 (9F),
+.BR uconv_u16tou8 (9F),
+.BR uconv_u32tou16 (9F),
+.BR uconv_u32tou8 (9F),
+.BR uconv_u8tou16 (9F),
+.BR uconv_u8tou32 (9F)
.sp
.LP
The Unicode Standard:
diff --git a/usr/src/man/man9f/kmem_alloc.9f b/usr/src/man/man9f/kmem_alloc.9f
index 5a53bd2451..6a9b6c9eb3 100644
--- a/usr/src/man/man9f/kmem_alloc.9f
+++ b/usr/src/man/man9f/kmem_alloc.9f
@@ -98,7 +98,9 @@ interrupt context only if the \fBKM_NOSLEEP\fR flag is set. They can be
called from user context with any valid \fIflag\fR. The \fBkmem_free()\fR
function can be called from from user, interrupt, or kernel context.
.SH SEE ALSO
-\fBcopyout\fR(9F), \fBfreerbuf\fR(9F), \fBgetrbuf\fR(9F)
+.BR copyout (9F),
+.BR freerbuf (9F),
+.BR getrbuf (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/kmem_cache_create.9f b/usr/src/man/man9f/kmem_cache_create.9f
index e08f120244..c3218b9b36 100644
--- a/usr/src/man/man9f/kmem_cache_create.9f
+++ b/usr/src/man/man9f/kmem_cache_create.9f
@@ -738,7 +738,7 @@ If successful, \fBkmem_cache_alloc()\fR returns a pointer to the allocated
object. If \fBKM_NOSLEEP\fR is set and memory cannot be allocated without
sleeping, \fBkmem_cache_alloc()\fR returns \fBNULL\fR.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -752,7 +752,10 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBcondvar\fR(9F), \fBkmem_alloc\fR(9F), \fBmutex\fR(9F), \fBkstat\fR(9S)
+.BR condvar (9F),
+.BR kmem_alloc (9F),
+.BR mutex (9F),
+.BR kstat (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/kstat_create.9f b/usr/src/man/man9f/kstat_create.9f
index 0df58c1c30..d1f028a586 100644
--- a/usr/src/man/man9f/kstat_create.9f
+++ b/usr/src/man/man9f/kstat_create.9f
@@ -214,9 +214,13 @@ pkstat_t *ksp;
.in -2
.SH SEE ALSO
-\fBkstat\fR(3KSTAT), \fBddi_get_instance\fR(9F), \fBkstat_delete\fR(9F),
-\fBkstat_install\fR(9F), \fBkstat_named_init\fR(9F), \fBkstat\fR(9S),
-\fBkstat_named\fR(9S)
+.BR kstat (3KSTAT),
+.BR ddi_get_instance (9F),
+.BR kstat_delete (9F),
+.BR kstat_install (9F),
+.BR kstat_named_init (9F),
+.BR kstat (9S),
+.BR kstat_named (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/kstat_delete.9f b/usr/src/man/man9f/kstat_delete.9f
index b5d5dc4201..04f508d383 100644
--- a/usr/src/man/man9f/kstat_delete.9f
+++ b/usr/src/man/man9f/kstat_delete.9f
@@ -35,8 +35,10 @@ None.
.SH CONTEXT
\fBkstat_delete()\fR can be called from any context.
.SH SEE ALSO
-\fBkstat_create\fR(9F), \fBkstat_install\fR(9F), \fBkstat_named_init\fR(9F),
-\fBkstat\fR(9S)
+.BR kstat_create (9F),
+.BR kstat_install (9F),
+.BR kstat_named_init (9F),
+.BR kstat (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/kstat_install.9f b/usr/src/man/man9f/kstat_install.9f
index 22bffeb97a..955ae7179a 100644
--- a/usr/src/man/man9f/kstat_install.9f
+++ b/usr/src/man/man9f/kstat_install.9f
@@ -65,8 +65,10 @@ if (ksp) {
.in -2
.SH SEE ALSO
-\fBkstat_create\fR(9F), \fBkstat_delete\fR(9F), \fBkstat_named_init\fR(9F),
-\fBkstat\fR(9S)
+.BR kstat_create (9F),
+.BR kstat_delete (9F),
+.BR kstat_named_init (9F),
+.BR kstat (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/kstat_named_init.9f b/usr/src/man/man9f/kstat_named_init.9f
index 6ede85f4b1..af31215cc4 100644
--- a/usr/src/man/man9f/kstat_named_init.9f
+++ b/usr/src/man/man9f/kstat_named_init.9f
@@ -133,8 +133,10 @@ None.
\fBkstat_named_init()\fR and \fBkstat_named_setstr()\fR can be called from user
or kernel context.
.SH SEE ALSO
-\fBkstat_create\fR(9F), \fBkstat_install\fR(9F), \fBkstat\fR(9S),
-\fBkstat_named\fR(9S)
+.BR kstat_create (9F),
+.BR kstat_install (9F),
+.BR kstat (9S),
+.BR kstat_named (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/kstat_queue.9f b/usr/src/man/man9f/kstat_queue.9f
index ec67b5e1cd..e4a0765ec6 100644
--- a/usr/src/man/man9f/kstat_queue.9f
+++ b/usr/src/man/man9f/kstat_queue.9f
@@ -138,9 +138,13 @@ These transitions must be protected by holding the \fBkstat\fR's \fBks_lock\fR,
and must be completely accurate (all transitions are recorded). Forgetting a
transition may, for example, make an idle disk appear 100% busy.
.SH SEE ALSO
-\fBbiodone\fR(9F), \fBdisksort\fR(9F), \fBkstat_create\fR(9F),
-\fBkstat_delete\fR(9F), \fBkstat_named_init\fR(9F), \fBkstat\fR(9S),
-\fBkstat_io\fR(9S)
+.BR biodone (9F),
+.BR disksort (9F),
+.BR kstat_create (9F),
+.BR kstat_delete (9F),
+.BR kstat_named_init (9F),
+.BR kstat (9S),
+.BR kstat_io (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ldi_add_event_handler.9f b/usr/src/man/man9f/ldi_add_event_handler.9f
index dad4420934..51cc255a26 100644
--- a/usr/src/man/man9f/ldi_add_event_handler.9f
+++ b/usr/src/man/man9f/ldi_add_event_handler.9f
@@ -156,8 +156,10 @@ The \fBldi_add_event_handler()\fR function can be called from user and kernel
contexts only.
.SH SEE ALSO
.LP
-\fBldi_ev_get_cookie\fR(9F), \fBldi_ev_register_callbacks\fR(9F),
-\fBldi_get_eventcookie\fR(9F), \fBldi_remove_event_handler\fR(9F)
+.BR ldi_ev_get_cookie (9F),
+.BR ldi_ev_register_callbacks (9F),
+.BR ldi_get_eventcookie (9F),
+.BR ldi_remove_event_handler (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ldi_ev_finalize.9f b/usr/src/man/man9f/ldi_ev_finalize.9f
index bd695b511d..6e178da59f 100644
--- a/usr/src/man/man9f/ldi_ev_finalize.9f
+++ b/usr/src/man/man9f/ldi_ev_finalize.9f
@@ -147,5 +147,6 @@ widget_finalize(ldi_handle_t lh, ldi_ev_cookie_t foo_cookie,
.in -2
.SH SEE ALSO
-\fBldi_ev_get_cookie\fR(9F), \fBldi_ev_register_callbacks\fR(9F),
-\fBldi_ev_remove_callbacks\fR(9F)
+.BR ldi_ev_get_cookie (9F),
+.BR ldi_ev_register_callbacks (9F),
+.BR ldi_ev_remove_callbacks (9F)
diff --git a/usr/src/man/man9f/ldi_ev_get_cookie.9f b/usr/src/man/man9f/ldi_ev_get_cookie.9f
index c66b8af509..36e396b846 100644
--- a/usr/src/man/man9f/ldi_ev_get_cookie.9f
+++ b/usr/src/man/man9f/ldi_ev_get_cookie.9f
@@ -109,4 +109,5 @@ An error occurred and the cookie was not created.
.SH CONTEXT
This function can be called from user and kernel contexts only.
.SH SEE ALSO
-\fBldi_ev_register_callbacks\fR(9F), \fBldi_ev_remove_callbacks\fR(9F)
+.BR ldi_ev_register_callbacks (9F),
+.BR ldi_ev_remove_callbacks (9F)
diff --git a/usr/src/man/man9f/ldi_ev_get_type.9f b/usr/src/man/man9f/ldi_ev_get_type.9f
index 811e74ed57..a90b31eb73 100644
--- a/usr/src/man/man9f/ldi_ev_get_type.9f
+++ b/usr/src/man/man9f/ldi_ev_get_type.9f
@@ -35,5 +35,6 @@ On success, this function returns the event string represented by
.SH CONTEXT
This function can be called from user and kernel contexts only.
.SH SEE ALSO
-\fBldi_ev_get_cookie\fR(9F), \fBldi_ev_register_callbacks\fR(9F),
-\fBldi_ev_remove_callbacks\fR(9F)
+.BR ldi_ev_get_cookie (9F),
+.BR ldi_ev_register_callbacks (9F),
+.BR ldi_ev_remove_callbacks (9F)
diff --git a/usr/src/man/man9f/ldi_ev_notify.9f b/usr/src/man/man9f/ldi_ev_notify.9f
index 9f28c5da2f..3b44d5d5f0 100644
--- a/usr/src/man/man9f/ldi_ev_notify.9f
+++ b/usr/src/man/man9f/ldi_ev_notify.9f
@@ -170,5 +170,6 @@ Consumers are blocking the state change.
.SH CONTEXT
This function can be called from user and kernel context only.
.SH SEE ALSO
-\fBldi_ev_get_cookie\fR(9F), \fBldi_ev_register_callbacks\fR(9F),
-\fBldi_ev_remove_callbacks\fR(9F)
+.BR ldi_ev_get_cookie (9F),
+.BR ldi_ev_register_callbacks (9F),
+.BR ldi_ev_remove_callbacks (9F)
diff --git a/usr/src/man/man9f/ldi_ev_register_callbacks.9f b/usr/src/man/man9f/ldi_ev_register_callbacks.9f
index 51193558f0..fd9ec945a8 100644
--- a/usr/src/man/man9f/ldi_ev_register_callbacks.9f
+++ b/usr/src/man/man9f/ldi_ev_register_callbacks.9f
@@ -511,5 +511,7 @@ dgrd_finalize(ldi_handle_t lh, ldi_ev_cookie_t off_cookie,
.in -2
.SH SEE ALSO
-\fBldi_ev_finalize\fR(9F), \fBldi_ev_get_cookie\fR(9F),
-\fBldi_ev_notify\fR(9F), \fBldi_ev_remove_callbacks\fR(9F)
+.BR ldi_ev_finalize (9F),
+.BR ldi_ev_get_cookie (9F),
+.BR ldi_ev_notify (9F),
+.BR ldi_ev_remove_callbacks (9F)
diff --git a/usr/src/man/man9f/ldi_ev_remove_callbacks.9f b/usr/src/man/man9f/ldi_ev_remove_callbacks.9f
index 7f31fac655..5594602a33 100644
--- a/usr/src/man/man9f/ldi_ev_remove_callbacks.9f
+++ b/usr/src/man/man9f/ldi_ev_remove_callbacks.9f
@@ -44,4 +44,5 @@ None.
.SH CONTEXT
This function can be called from user and kernel contexts only.
.SH SEE ALSO
-\fBldi_ev_get_cookie\fR(9F), \fBldi_ev_register_callbacks\fR(9F)
+.BR ldi_ev_get_cookie (9F),
+.BR ldi_ev_register_callbacks (9F)
diff --git a/usr/src/man/man9f/ldi_get_eventcookie.9f b/usr/src/man/man9f/ldi_get_eventcookie.9f
index d775de1eaa..9bae13afdb 100644
--- a/usr/src/man/man9f/ldi_get_eventcookie.9f
+++ b/usr/src/man/man9f/ldi_get_eventcookie.9f
@@ -92,8 +92,10 @@ This function may be called from user or kernel contexts.
.SH SEE ALSO
.sp
.LP
-\fBldi_ev_get_cookie\fR(9F), \fBldi_ev_register_callbacks\fR(9F),
-\fBldi_add_event_handler\fR(9F), \fBldi_remove_event_handler\fR(9F)
+.BR ldi_add_event_handler (9F),
+.BR ldi_ev_get_cookie (9F),
+.BR ldi_ev_register_callbacks (9F),
+.BR ldi_remove_event_handler (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ldi_get_size.9f b/usr/src/man/man9f/ldi_get_size.9f
index 6e235ae434..a4481f4aae 100644
--- a/usr/src/man/man9f/ldi_get_size.9f
+++ b/usr/src/man/man9f/ldi_get_size.9f
@@ -70,7 +70,7 @@ This function may be called from user or kernel context.
.SH SEE ALSO
.sp
.LP
-\fBldi_open_by_name\fR(9F)
+.BR ldi_open_by_name (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ldi_ioctl.9f b/usr/src/man/man9f/ldi_ioctl.9f
index 4e26486375..0c088867ad 100644
--- a/usr/src/man/man9f/ldi_ioctl.9f
+++ b/usr/src/man/man9f/ldi_ioctl.9f
@@ -108,11 +108,11 @@ See \fBddi_model_convert_from\fR(9F) for more information.
.SH STREAM IOCTLS
.sp
.LP
-For a general description of streams ioctls see \fBstreamio\fR(7I).
+For a general description of streams ioctls see \fBstreamio\fR(4I).
\fBldi_ioctl()\fR supports a number of streams ioctls, using layered handles in
the place of file descriptors. When issuing streams ioctls the \fBFKIOCTL\fR
parameter should be specified. The possible return values for supported ioctl
-commands are also documented in \fBstreamio\fR(7I).
+commands are also documented in \fBstreamio\fR(4I).
.sp
.LP
The following streams ioctls are supported:
@@ -122,7 +122,7 @@ The following streams ioctls are supported:
\fBI_PLINK\fR
.ad
.RS 13n
-Behaves as documented in \fBstreamio\fR(7I). The layered handle \fIlh\fR should
+Behaves as documented in \fBstreamio\fR(4I). The layered handle \fIlh\fR should
point to the streams multiplexer. The \fIarg\fR parameter should point to a
layered handle for another streams driver.
.RE
@@ -133,7 +133,7 @@ layered handle for another streams driver.
\fBI_UNPLINK\fR
.ad
.RS 13n
-Behaves as documented in \fBstreamio\fR(7I)). The layered handle \fIlh\fR
+Behaves as documented in \fBstreamio\fR(4I)). The layered handle \fIlh\fR
should point to the streams multiplexer. The \fIarg\fR parameter is the
multiplexor ID number returned by \fBI_PLINK\fR when the streams were linked.
.RE
@@ -170,4 +170,5 @@ These functions can be called from user or kernel context.
.SH SEE ALSO
.sp
.LP
-\fBstreamio\fR(7I), \fBddi_model_convert_from\fR(9F)
+.BR streamio (4I),
+.BR ddi_model_convert_from (9F)
diff --git a/usr/src/man/man9f/ldi_open_by_dev.9f b/usr/src/man/man9f/ldi_open_by_dev.9f
index c0b9ea8224..a8dea48c1e 100644
--- a/usr/src/man/man9f/ldi_open_by_dev.9f
+++ b/usr/src/man/man9f/ldi_open_by_dev.9f
@@ -313,8 +313,10 @@ These functions may be called from user or kernel context.
These functions should not be called from a device's attach, detach, or power
entry point. This could result in a system crash or deadlock.
.SH SEE ALSO
-\fBscsi_vhci\fR(7D), \fBldi_ident_from_dev\fR(9F),
-\fBldi_ident_from_dip\fR(9F), \fBldi_ident_from_stream\fR(9F)
+.BR scsi_vhci (4D),
+.BR ldi_ident_from_dev (9F),
+.BR ldi_ident_from_dip (9F),
+.BR ldi_ident_from_stream (9F)
.SH NOTES
Use only OTYP_CHR or OTYP_BLK options when you use the \fBldi_open_by_dev()\fR
and \fBldi_open_by_devid()\fR functions to open a device. Other flags,
@@ -323,9 +325,9 @@ interfaces.
.sp
.LP
The caller should be aware of cases when multiple paths to a single device may
-exist. (This can occur for scsi disk devices if \fBscsi_vhci\fR(7D)) is
+exist. (This can occur for scsi disk devices if \fBscsi_vhci\fR(4D)) is
disabled or a disk is connected to multiple controllers not supported by
-scsi_vhci(7D).
+scsi_vhci(4D).
.sp
.LP
In these cases, \fBldi_open_by_devid()\fR returns a device handle that
@@ -337,6 +339,6 @@ different filesystem device paths and dev_t values.
.LP
In the cases where multiple paths to a device exist and access to the device
has not been virtualized via MPXIO (as with scsi disk devices not accessed via
-\fBscsi_vhci\fR(7D)), the LDI does not provide any path fail-over capabilities.
+\fBscsi_vhci\fR(4D)), the LDI does not provide any path fail-over capabilities.
If the caller wishes to do their own path management and failover they should
open all available paths to a device via \fBldi_open_by_name()\fR.
diff --git a/usr/src/man/man9f/ldi_prop_get_int.9f b/usr/src/man/man9f/ldi_prop_get_int.9f
index 70a611eabe..797e9b871d 100644
--- a/usr/src/man/man9f/ldi_prop_get_int.9f
+++ b/usr/src/man/man9f/ldi_prop_get_int.9f
@@ -184,8 +184,9 @@ The following example demonstrates the use of ldi_prop_get_int64().
.in -2
.SH SEE ALSO
-\fBddi_prop_get_int\fR(9F), \fBddi_prop_get_int64\fR(9F),
-\fBldi_prop_exists\fR(9F)
+.BR ddi_prop_get_int (9F),
+.BR ddi_prop_get_int64 (9F),
+.BR ldi_prop_exists (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ldi_remove_event_handler.9f b/usr/src/man/man9f/ldi_remove_event_handler.9f
index 4449cf71c8..8e682aae5b 100644
--- a/usr/src/man/man9f/ldi_remove_event_handler.9f
+++ b/usr/src/man/man9f/ldi_remove_event_handler.9f
@@ -73,8 +73,10 @@ Failed to remove callback handler.
This function can be called from user and kernel contexts only.
.SH SEE ALSO
.LP
-\fBldi_ev_register_callbacks\fR(9F), \fBldi_ev_remove_callbacks\fR(9F),
-\fBldi_add_event_handler\fR(9F), \fBldi_get_eventcookie\fR(9F)
+.BR ldi_add_event_handler (9F),
+.BR ldi_ev_register_callbacks (9F),
+.BR ldi_ev_remove_callbacks (9F),
+.BR ldi_get_eventcookie (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/linkb.9f b/usr/src/man/man9f/linkb.9f
index 3e6215aac5..94af16caf8 100644
--- a/usr/src/man/man9f/linkb.9f
+++ b/usr/src/man/man9f/linkb.9f
@@ -67,7 +67,9 @@ See \fBdupb\fR(9F) for an example that uses \fBlinkb()\fR.
.SH SEE ALSO
.sp
.LP
-\fBdupb\fR(9F), \fBunlinkb\fR(9F), \fBmsgb\fR(9S)
+.BR dupb (9F),
+.BR unlinkb (9F),
+.BR msgb (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/makecom.9f b/usr/src/man/man9f/makecom.9f
index f123c3950d..5efabbfe34 100644
--- a/usr/src/man/man9f/makecom.9f
+++ b/usr/src/man/man9f/makecom.9f
@@ -139,7 +139,7 @@ if (blkno >= (1<<20)) {
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for a description of the following attributes:
+See \fBattributes\fR(7) for a description of the following attributes:
.sp
.sp
@@ -155,8 +155,10 @@ Stability Level Obsolete
.SH SEE ALSO
.sp
.LP
-\fBattributes\fR(5), \fBscsi_setup_cdb\fR(9F), \fBscsi_device\fR(9S),
-\fBscsi_pkt\fR(9S)
+.BR attributes (7),
+.BR scsi_setup_cdb (9F),
+.BR scsi_device (9S),
+.BR scsi_pkt (9S)
.sp
.LP
\fIANSI Small Computer System Interface-2 (SCSI-2)\fR
diff --git a/usr/src/man/man9f/makedevice.9f b/usr/src/man/man9f/makedevice.9f
index 58227afc93..33f1f750d3 100644
--- a/usr/src/man/man9f/makedevice.9f
+++ b/usr/src/man/man9f/makedevice.9f
@@ -61,4 +61,5 @@ context.
.SH SEE ALSO
.sp
.LP
-\fBgetmajor\fR(9F), \fBgetminor\fR(9F)
+.BR getmajor (9F),
+.BR getminor (9F)
diff --git a/usr/src/man/man9f/max.9f b/usr/src/man/man9f/max.9f
index a7f1343fbb..3864d47411 100644
--- a/usr/src/man/man9f/max.9f
+++ b/usr/src/man/man9f/max.9f
@@ -56,7 +56,7 @@ The \fBmax()\fR function can be called from user, interrupt, or kernel context.
.SH SEE ALSO
.sp
.LP
-\fBmin\fR(9F)
+.BR min (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/mcopyin.9f b/usr/src/man/man9f/mcopyin.9f
index 9c636c99b6..ea7ba94cae 100644
--- a/usr/src/man/man9f/mcopyin.9f
+++ b/usr/src/man/man9f/mcopyin.9f
@@ -76,7 +76,8 @@ None.
.SH CONTEXT
This function can be called from user, kernel or interrupt context.
.SH SEE ALSO
-\fBmcopyout\fR(9F), \fBcopyreq\fR(9S)
+.BR mcopyout (9F),
+.BR copyreq (9S)
.sp
.LP
\fISTREAMS Programming Guide\fR
diff --git a/usr/src/man/man9f/mcopymsg.9f b/usr/src/man/man9f/mcopymsg.9f
index 8613770c61..21f1045a07 100644
--- a/usr/src/man/man9f/mcopymsg.9f
+++ b/usr/src/man/man9f/mcopymsg.9f
@@ -52,7 +52,8 @@ None.
.SH CONTEXT
This function can be called from user, kernel or interrupt context.
.SH SEE ALSO
-\fBfreemsg\fR(9F), \fBmsgsize\fR(9F)
+.BR freemsg (9F),
+.BR msgsize (9F)
.sp
.LP
\fISTREAMS Programming Guide\fR
diff --git a/usr/src/man/man9f/mcopyout.9f b/usr/src/man/man9f/mcopyout.9f
index 35f2805018..6ff5b89ca2 100644
--- a/usr/src/man/man9f/mcopyout.9f
+++ b/usr/src/man/man9f/mcopyout.9f
@@ -86,7 +86,9 @@ None.
.SH CONTEXT
This function can be called from user, kernel or interrupt context.
.SH SEE ALSO
-\fBmcopyin\fR(9F), \fBcopyreq\fR(9S), \fBiocblk\fR(9S)
+.BR mcopyin (9F),
+.BR copyreq (9S),
+.BR iocblk (9S)
.sp
.LP
\fISTREAMS Programming Guide\fR
diff --git a/usr/src/man/man9f/membar_ops.9f b/usr/src/man/man9f/membar_ops.9f
index d37b2452f6..ecf910c132 100644
--- a/usr/src/man/man9f/membar_ops.9f
+++ b/usr/src/man/man9f/membar_ops.9f
@@ -80,7 +80,7 @@ These functions can be called from user, interrupt, or kernel context.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -96,10 +96,17 @@ Interface Stability Committed
.SH SEE ALSO
.sp
.LP
-\fBatomic_add\fR(9F), \fBatomic_and\fR(9F), \fBatomic_bits\fR(9F),
-\fBatomic_cas\fR(9F), \fBatomic_dec\fR(9F), \fBatomic_inc\fR(9F),
-\fBatomic_ops\fR(9F), \fBatomic_or\fR(9F), \fBatomic_swap\fR(9F),
-\fBattributes\fR(5), \fBatomic_ops\fR(3C)
+.BR atomic_ops (3C),
+.BR attributes (7),
+.BR atomic_add (9F),
+.BR atomic_and (9F),
+.BR atomic_bits (9F),
+.BR atomic_cas (9F),
+.BR atomic_dec (9F),
+.BR atomic_inc (9F),
+.BR atomic_ops (9F),
+.BR atomic_or (9F),
+.BR atomic_swap (9F)
.SH NOTES
.sp
.LP
diff --git a/usr/src/man/man9f/memchr.9f b/usr/src/man/man9f/memchr.9f
index 64a4180888..0778e0a5ab 100644
--- a/usr/src/man/man9f/memchr.9f
+++ b/usr/src/man/man9f/memchr.9f
@@ -102,7 +102,9 @@ application knows that the objects being copied do not overlap.
.SH CONTEXT
These functions can be called from user, interrupt, or kernel context.
.SH SEE ALSO
-\fBbcopy\fR(9F), \fBddi_copyin\fR(9F), \fBstrcpy\fR(9F)
+.BR bcopy (9F),
+.BR ddi_copyin (9F),
+.BR strcpy (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/merror.9f b/usr/src/man/man9f/merror.9f
index 2d00b04e2f..d0d51b0eb3 100644
--- a/usr/src/man/man9f/merror.9f
+++ b/usr/src/man/man9f/merror.9f
@@ -68,7 +68,8 @@ This function can be called from user, kernel or interrupt context.
Callers must not hold any locks across an \fBmerror()\fR that can be acquired
as part of \fBput\fR(9E) processing.
.SH SEE ALSO
-\fBput\fR(9E), \fBdupmsg\fR(9F)
+.BR put (9E),
+.BR dupmsg (9F)
.sp
.LP
\fISTREAMS Programming Guide\fR
diff --git a/usr/src/man/man9f/mexchange.9f b/usr/src/man/man9f/mexchange.9f
index f8433b0b36..9434f73d30 100644
--- a/usr/src/man/man9f/mexchange.9f
+++ b/usr/src/man/man9f/mexchange.9f
@@ -87,7 +87,8 @@ failure.
.SH CONTEXT
This function can be called from user, kernel or interrupt context.
.SH SEE ALSO
-\fBdupmsg\fR(9F), \fBmerror\fR(9F)
+.BR dupmsg (9F),
+.BR merror (9F)
.sp
.LP
\fISTREAMS Programming Guide\fR
diff --git a/usr/src/man/man9f/min.9f b/usr/src/man/man9f/min.9f
index 85d4a6b9cf..7a37f6edda 100644
--- a/usr/src/man/man9f/min.9f
+++ b/usr/src/man/man9f/min.9f
@@ -56,7 +56,7 @@ The \fBmin()\fR function can be called from user, interrupt, or kernel context.
.SH SEE ALSO
.sp
.LP
-\fBmax\fR(9F)
+.BR max (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/mioc2ack.9f b/usr/src/man/man9f/mioc2ack.9f
index 3a8be0b368..03b0ac5241 100644
--- a/usr/src/man/man9f/mioc2ack.9f
+++ b/usr/src/man/man9f/mioc2ack.9f
@@ -71,7 +71,9 @@ None.
.SH CONTEXT
This function can be called from user, kernel or interrupt context.
.SH SEE ALSO
-\fBmiocack\fR(9F), \fBmiocnak\fR(9F), \fBiocblk\fR(9S)
+.BR miocack (9F),
+.BR miocnak (9F),
+.BR iocblk (9S)
.sp
.LP
\fISTREAMS Programming Guide\fR
diff --git a/usr/src/man/man9f/miocack.9f b/usr/src/man/man9f/miocack.9f
index aaaef89b72..35c325dc5c 100644
--- a/usr/src/man/man9f/miocack.9f
+++ b/usr/src/man/man9f/miocack.9f
@@ -78,7 +78,9 @@ This function can be called from user, kernel or interrupt context.
Callers must not hold any locks across a \fBmiocack()\fR that can be acquired
as part of \fBput\fR(9E) processing.
.SH SEE ALSO
-\fBmioc2ack\fR(9F), \fBput\fR(9E), \fBiocblk\fR(9S)
+.BR put (9E),
+.BR mioc2ack (9F),
+.BR iocblk (9S)
.sp
.LP
\fISTREAMS Programming Guide\fR
diff --git a/usr/src/man/man9f/miocnak.9f b/usr/src/man/man9f/miocnak.9f
index fab60e1029..36e5f71efd 100644
--- a/usr/src/man/man9f/miocnak.9f
+++ b/usr/src/man/man9f/miocnak.9f
@@ -73,7 +73,10 @@ This function can be called from user, kernel or interrupt context.
Callers must not hold any locks across a \fBmiocnak()\fR that can be acquired
as part of \fBput\fR(9E) processing.
.SH SEE ALSO
-\fBmioc2ack\fR(9F), \fBmiocack\fR(9F), \fBput\fR(9E), \fBiocblk\fR(9S)
+.BR put (9E),
+.BR mioc2ack (9F),
+.BR miocack (9F),
+.BR iocblk (9S)
.sp
.LP
\fISTREAMS Programming Guide\fR
diff --git a/usr/src/man/man9f/mkiocb.9f b/usr/src/man/man9f/mkiocb.9f
index 800de99ae0..4dddb73a39 100644
--- a/usr/src/man/man9f/mkiocb.9f
+++ b/usr/src/man/man9f/mkiocb.9f
@@ -36,7 +36,8 @@ failure.
.sp
.LP
The \fBmkiocb\fR function returns a \fBmblk_t\fR structure which is large
-enough to hold any of the ioctl messages (\fBiocblk\fR(9S), \fBcopyreq\fR(9S)
+enough to hold any of the ioctl messages (\fBiocblk\fR(9S),
+.BR copyreq (9S)
or \fBcopyresp\fR(9S)), and has the following special properties:
.sp
.ne 2
@@ -233,8 +234,13 @@ is available.
.in -2
.SH SEE ALSO
-\fBallocb\fR(9F), \fBputnext\fR(9F), \fBqbufcall\fR(9F), \fBqwait_sig\fR(9F),
-\fBcopyreq\fR(9S), \fBcopyresp\fR(9S), \fBiocblk\fR(9S)
+.BR allocb (9F),
+.BR putnext (9F),
+.BR qbufcall (9F),
+.BR qwait_sig (9F),
+.BR copyreq (9S),
+.BR copyresp (9S),
+.BR iocblk (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/mod_install.9f b/usr/src/man/man9f/mod_install.9f
index 942b2d1952..1f2eb886ad 100644
--- a/usr/src/man/man9f/mod_install.9f
+++ b/usr/src/man/man9f/mod_install.9f
@@ -98,8 +98,13 @@ valid as long as the module remains loaded.
.SH EXAMPLES
See \fB_init\fR(9E) for an example that uses these functions.
.SH SEE ALSO
-\fB_fini\fR(9E), \fB_info\fR(9E), \fB_init\fR(9E), \fBkstat_create\fR(9F),
-\fBmodldrv\fR(9S), \fBmodlinkage\fR(9S), \fBmodlstrmod\fR(9S)
+.BR _fini (9E),
+.BR _info (9E),
+.BR _init (9E),
+.BR kstat_create (9F),
+.BR modldrv (9S),
+.BR modlinkage (9S),
+.BR modlstrmod (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/msgdsize.9f b/usr/src/man/man9f/msgdsize.9f
index 2ea333e691..1403c0d9b7 100644
--- a/usr/src/man/man9f/msgdsize.9f
+++ b/usr/src/man/man9f/msgdsize.9f
@@ -53,7 +53,7 @@ See \fBbufcall\fR(9F) for an example that uses \fBmsgdsize()\fR.
.SH SEE ALSO
.sp
.LP
-\fBbufcall\fR(9F)
+.BR bufcall (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/msgpullup.9f b/usr/src/man/man9f/msgpullup.9f
index fc8b4ddcde..ffd6734716 100644
--- a/usr/src/man/man9f/msgpullup.9f
+++ b/usr/src/man/man9f/msgpullup.9f
@@ -78,7 +78,10 @@ context.
.SH SEE ALSO
.sp
.LP
-\fBsrv\fR(9E), \fBallocb\fR(9F), \fBpullupmsg\fR(9F), \fBmsgb\fR(9S)
+.BR srv (9E),
+.BR allocb (9F),
+.BR pullupmsg (9F),
+.BR msgb (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/msgsize.9f b/usr/src/man/man9f/msgsize.9f
index 11efb2acfb..80914fd50b 100644
--- a/usr/src/man/man9f/msgsize.9f
+++ b/usr/src/man/man9f/msgsize.9f
@@ -35,7 +35,7 @@ Number of bytes in the message.
.SH CONTEXT
This function can be called from user, kernel or interrupt context.
.SH SEE ALSO
-\fBmsgdsize\fR(9F)
+.BR msgdsize (9F)
.sp
.LP
\fISTREAMS Programming Guide\fR
diff --git a/usr/src/man/man9f/mt-streams.9f b/usr/src/man/man9f/mt-streams.9f
index a2ec1e2093..62aad890db 100644
--- a/usr/src/man/man9f/mt-streams.9f
+++ b/usr/src/man/man9f/mt-streams.9f
@@ -149,9 +149,15 @@ or outer perimeter from shared to exclusive.
The use and semantics of \fBqprocson()\fR and \fBqprocsoff\fR(9F) is
independent of the inner and outer perimeters.
.SH SEE ALSO
-\fBclose\fR(9E), \fBopen\fR(9E), \fBput\fR(9E), \fBsrv\fR(9E),
-\fBqprocsoff\fR(9F), \fBqprocson\fR(9F), \fBqwait\fR(9F), \fBqwriter\fR(9F),
-\fBcb_ops\fR(9S)
+.BR close (9E),
+.BR open (9E),
+.BR put (9E),
+.BR srv (9E),
+.BR qprocsoff (9F),
+.BR qprocson (9F),
+.BR qwait (9F),
+.BR qwriter (9F),
+.BR cb_ops (9S)
.sp
.LP
\fISTREAMS Programming Guide\fR
diff --git a/usr/src/man/man9f/mutex.9f b/usr/src/man/man9f/mutex.9f
index cc77960ad7..2baec5de36 100644
--- a/usr/src/man/man9f/mutex.9f
+++ b/usr/src/man/man9f/mutex.9f
@@ -173,16 +173,21 @@ xxstart(struct xxunit *un)
.in -2
.SH SEE ALSO
-\fBlockstat\fR(1M), \fBIntro\fR(9F), \fBcondvar\fR(9F),
-\fBddi_intr_alloc\fR(9F), \fBddi_intr_add_handler\fR(9F),
-\fBddi_intr_get_pri\fR(9F), \fBddi_intr_get_softint_pri\fR(9F),
-\fBrwlock\fR(9F), \fBsemaphore\fR(9F)
+.BR lockstat (8),
+.BR Intro (9F),
+.BR condvar (9F),
+.BR ddi_intr_add_handler (9F),
+.BR ddi_intr_alloc (9F),
+.BR ddi_intr_get_pri (9F),
+.BR ddi_intr_get_softint_pri (9F),
+.BR rwlock (9F),
+.BR semaphore (9F)
.sp
.LP
\fIWriting Device Drivers\fR
.SH NOTES
Compiling with \fB_LOCKTEST\fR or \fB_MPSTATS\fR defined has no effect. To
-gather lock statistics, see \fBlockstat\fR(1M).
+gather lock statistics, see \fBlockstat\fR(8).
.sp
.LP
The address of a \fBkmutex_t\fR lock must be aligned on an 8-byte boundary for
diff --git a/usr/src/man/man9f/net_event_notify_register.9f b/usr/src/man/man9f/net_event_notify_register.9f
index 972c5fc59d..827df8a777 100644
--- a/usr/src/man/man9f/net_event_notify_register.9f
+++ b/usr/src/man/man9f/net_event_notify_register.9f
@@ -133,7 +133,7 @@ the given callback function is already registered.
.SH CONTEXT
These functions may be called from user or kernel context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -147,5 +147,7 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBattributes\fR(5), \fBnet_hook_register\fR(9F),
-\fBnet_hook_unregister\fR(9F), \fBnet_protocol_lookup\fR(9F)
+.BR attributes (7),
+.BR net_hook_register (9F),
+.BR net_hook_unregister (9F),
+.BR net_protocol_lookup (9F)
diff --git a/usr/src/man/man9f/net_getifname.9f b/usr/src/man/man9f/net_getifname.9f
index e36e202e1c..592f77b91a 100644
--- a/usr/src/man/man9f/net_getifname.9f
+++ b/usr/src/man/man9f/net_getifname.9f
@@ -92,7 +92,7 @@ Unsuccessful.
The \fBnet_getifname()\fR function may be called from user, kernel, or
interrupt context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -106,5 +106,6 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBnet_phygetnext\fR(9F), \fBnet_phylookup\fR(9F),
-\fBnet_protocol_lookup\fR(9F)
+.BR net_phygetnext (9F),
+.BR net_phylookup (9F),
+.BR net_protocol_lookup (9F)
diff --git a/usr/src/man/man9f/net_getlifaddr.9f b/usr/src/man/man9f/net_getlifaddr.9f
index 8a2741ccb5..f13be8a0d6 100644
--- a/usr/src/man/man9f/net_getlifaddr.9f
+++ b/usr/src/man/man9f/net_getlifaddr.9f
@@ -149,7 +149,7 @@ Unsuccessful.
The \fBnet_getifaddr()\fR function may be called from user, kernel, or
interrupt context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -163,5 +163,7 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBnet_lifgetnext\fR(9F), \fBnet_phylookup\fR(9F),
-\fBnet_phygetnext\fR(9F), \fBnet_protocol_lookup\fR(9F)
+.BR net_lifgetnext (9F),
+.BR net_phygetnext (9F),
+.BR net_phylookup (9F),
+.BR net_protocol_lookup (9F)
diff --git a/usr/src/man/man9f/net_getmtu.9f b/usr/src/man/man9f/net_getmtu.9f
index 7cec286b0d..77fbb45fd9 100644
--- a/usr/src/man/man9f/net_getmtu.9f
+++ b/usr/src/man/man9f/net_getmtu.9f
@@ -47,7 +47,7 @@ interface.
The \fBnet_getmtu()\fR function may be called from user, kernel, or interrupt
context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -61,5 +61,6 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBnet_phygetnext\fR(9F), \fBnet_phylookup\fR(9F),
-\fBnet_protocol_lookup\fR(9F)
+.BR net_phygetnext (9F),
+.BR net_phylookup (9F),
+.BR net_protocol_lookup (9F)
diff --git a/usr/src/man/man9f/net_getnetid.9f b/usr/src/man/man9f/net_getnetid.9f
index a2fc841223..11d684526c 100644
--- a/usr/src/man/man9f/net_getnetid.9f
+++ b/usr/src/man/man9f/net_getnetid.9f
@@ -33,7 +33,7 @@ The \fBnet_getnetid()\fR function returns the value of the instance identifier.
The \fBnet_getnetid()\fR function may be called from user, kernel, or
interrupt context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -47,4 +47,4 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBnet_protocol_lookup\fR(9F)
+.BR net_protocol_lookup (9F)
diff --git a/usr/src/man/man9f/net_getpmtuenabled.9f b/usr/src/man/man9f/net_getpmtuenabled.9f
index e34a122ace..5e71ffc8c7 100644
--- a/usr/src/man/man9f/net_getpmtuenabled.9f
+++ b/usr/src/man/man9f/net_getpmtuenabled.9f
@@ -61,7 +61,7 @@ PATH MTU discovery is enabled.
The \fBnet_getpmtuenabled()\fR function may be called from user, kernel, or
interrupt context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -75,4 +75,5 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBnet_getmtu\fR(9F), \fBnet_protocol_lookup\fR(9F)
+.BR net_getmtu (9F),
+.BR net_protocol_lookup (9F)
diff --git a/usr/src/man/man9f/net_hook_register.9f b/usr/src/man/man9f/net_hook_register.9f
index 1a42e7a327..e869024d31 100644
--- a/usr/src/man/man9f/net_hook_register.9f
+++ b/usr/src/man/man9f/net_hook_register.9f
@@ -169,7 +169,7 @@ The netstack corresponding to \fIinfo\fR is condemned or no longer exists.
The \fBnet_hook_register()\fR function may be called from user or kernel
context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -183,4 +183,5 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBnet_hook_unregister\fR(9F), \fBhook_t\fR(9S)
+.BR net_hook_unregister (9F),
+.BR hook_t (9S)
diff --git a/usr/src/man/man9f/net_hook_unregister.9f b/usr/src/man/man9f/net_hook_unregister.9f
index 3015bd5590..147569444a 100644
--- a/usr/src/man/man9f/net_hook_unregister.9f
+++ b/usr/src/man/man9f/net_hook_unregister.9f
@@ -43,7 +43,7 @@ an error indicating the problem encountered.
The \fBnet_hook_unregister()\fR function may be called from user, kernel, or
interrupt context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -57,4 +57,4 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBnet_hook_register\fR(9F)
+.BR net_hook_register (9F)
diff --git a/usr/src/man/man9f/net_inject.9f b/usr/src/man/man9f/net_inject.9f
index 9362be6e86..83e2068804 100644
--- a/usr/src/man/man9f/net_inject.9f
+++ b/usr/src/man/man9f/net_inject.9f
@@ -122,7 +122,7 @@ The packet could not be queued up or sent out immediately.
The \fBnet_inject()\fR function may be called from user, kernel, or interrupt
context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -136,4 +136,6 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBnet_protocol_lookup\fR(9F), \fBnetinfo\fR(9F), \fBnet_inject_t\fR(9S)
+.BR net_protocol_lookup (9F),
+.BR netinfo (9F),
+.BR net_inject_t (9S)
diff --git a/usr/src/man/man9f/net_inject_alloc.9f b/usr/src/man/man9f/net_inject_alloc.9f
index cae8739866..badea776f8 100644
--- a/usr/src/man/man9f/net_inject_alloc.9f
+++ b/usr/src/man/man9f/net_inject_alloc.9f
@@ -35,7 +35,7 @@ Upon success, \fBnet_inject_alloc()\fR returns a pointer to the allocated
The \fBnet_inject_alloc()\fR function may be called from user, kernel, or
interrupt context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -49,4 +49,5 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBnet_inject_free\fR(9F), \fBnet_inject_t\fR(9S)
+.BR net_inject_free (9F),
+.BR net_inject_t (9S)
diff --git a/usr/src/man/man9f/net_inject_free.9f b/usr/src/man/man9f/net_inject_free.9f
index b0542df26e..cc2556fa18 100644
--- a/usr/src/man/man9f/net_inject_free.9f
+++ b/usr/src/man/man9f/net_inject_free.9f
@@ -31,7 +31,7 @@ was originally allocated by \fBnet_inject_alloc\fR(9F).
The \fBnet_inject_free()\fR function may be called from user, kernel, or
interrupt context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -45,4 +45,6 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBnet_inject_alloc\fR(9F), \fBattributes\fR(5), \fBnet_inject_t\fR(9S)
+.BR attributes (7),
+.BR net_inject_alloc (9F),
+.BR net_inject_t (9S)
diff --git a/usr/src/man/man9f/net_instance_alloc.9f b/usr/src/man/man9f/net_instance_alloc.9f
index c995c4867e..bf1c69d65e 100644
--- a/usr/src/man/man9f/net_instance_alloc.9f
+++ b/usr/src/man/man9f/net_instance_alloc.9f
@@ -35,7 +35,7 @@ Upon success, \fBnet_instance_alloc()\fR returns a pointer to the allocated
The \fBnet_instance_alloc()\fR function may be called from user or kernel
context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -49,4 +49,6 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBnet_instance_free\fR(9F), \fBattributes\fR(5), \fBnet_inject_t\fR(9S)
+.BR attributes (7),
+.BR net_instance_free (9F),
+.BR net_inject_t (9S)
diff --git a/usr/src/man/man9f/net_instance_free.9f b/usr/src/man/man9f/net_instance_free.9f
index f47b65d47a..62d3f27ec3 100644
--- a/usr/src/man/man9f/net_instance_free.9f
+++ b/usr/src/man/man9f/net_instance_free.9f
@@ -31,7 +31,7 @@ that was originally allocated by \fBnet_instance_alloc\fR(9F).
The \fBnet_instance_free()\fR function may be called from user, kernel, or
interrupt context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -45,4 +45,6 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBnet_instance_alloc\fR(9F), \fBattributes\fR(5), \fBnet_instance_t\fR(9S)
+.BR attributes (7),
+.BR net_instance_alloc (9F),
+.BR net_instance_t (9S)
diff --git a/usr/src/man/man9f/net_instance_notify_register.9f b/usr/src/man/man9f/net_instance_notify_register.9f
index ed1bb1d3f0..88e7a14b2a 100644
--- a/usr/src/man/man9f/net_instance_notify_register.9f
+++ b/usr/src/man/man9f/net_instance_notify_register.9f
@@ -118,7 +118,7 @@ the given callback function is already registered.
.SH CONTEXT
These functions may be called from user or kernel context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -132,5 +132,7 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBattributes\fR(5), \fBnet_instance_register\fR(9F),
-\fBnet_instance_unregister\fR(9F), \fBnet_zoneidtonetid\fR(9F)
+.BR attributes (7),
+.BR net_instance_register (9F),
+.BR net_instance_unregister (9F),
+.BR net_zoneidtonetid (9F)
diff --git a/usr/src/man/man9f/net_instance_register.9f b/usr/src/man/man9f/net_instance_register.9f
index f5eacb6f35..2b4a359c6c 100644
--- a/usr/src/man/man9f/net_instance_register.9f
+++ b/usr/src/man/man9f/net_instance_register.9f
@@ -37,7 +37,7 @@ the name in the instance already being present.
The \fBnet_instance_register()\fR function may be called from user or kernel
context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -51,5 +51,7 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBnet_instance_alloc\fR(9F), \fBnet_instance_unregister\fR(9F),
-\fBattributes\fR(5), \fBnet_instance_t\fR(9S)
+.BR attributes (7),
+.BR net_instance_alloc (9F),
+.BR net_instance_unregister (9F),
+.BR net_instance_t (9S)
diff --git a/usr/src/man/man9f/net_instance_unregister.9f b/usr/src/man/man9f/net_instance_unregister.9f
index bfb81cf2af..32154b54c9 100644
--- a/usr/src/man/man9f/net_instance_unregister.9f
+++ b/usr/src/man/man9f/net_instance_unregister.9f
@@ -34,7 +34,7 @@ Otherwise, an error indicating the problem encountered.
The \fBnet_instance_unregister()\fR function may be called from user, kernel,
or interrupt context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -48,5 +48,7 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBnet_instance_alloc\fR(9F), \fBnet_instance_register\fR(9F),
-\fBattributes\fR(5), \fBnet_instance_t\fR(9S)
+.BR attributes (7),
+.BR net_instance_alloc (9F),
+.BR net_instance_register (9F),
+.BR net_instance_t (9S)
diff --git a/usr/src/man/man9f/net_ispartialchecksum.9f b/usr/src/man/man9f/net_ispartialchecksum.9f
index 8ffb4c673e..28cc3be83d 100644
--- a/usr/src/man/man9f/net_ispartialchecksum.9f
+++ b/usr/src/man/man9f/net_ispartialchecksum.9f
@@ -104,7 +104,7 @@ Partial layer 4 checksum calculated
The \fBnet_ispartialchecksum()\fR function may be called from user, kernel, or
interrupt context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -118,5 +118,6 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBnet_isvalidchecksum\fR(9F), \fBnet_protocol_lookup\fR(9F),
-\fBattributes\fR(5)
+.BR attributes (7),
+.BR net_isvalidchecksum (9F),
+.BR net_protocol_lookup (9F)
diff --git a/usr/src/man/man9f/net_isvalidchecksum.9f b/usr/src/man/man9f/net_isvalidchecksum.9f
index 07d90553d5..c57b1a6b1c 100644
--- a/usr/src/man/man9f/net_isvalidchecksum.9f
+++ b/usr/src/man/man9f/net_isvalidchecksum.9f
@@ -76,7 +76,7 @@ The packet does contain partial checksums.
The \fBnet_isvalidchecksum()\fR function may be called from user, kernel, or
interrupt context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -90,5 +90,6 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBnet_ispartialchecksum\fR(9F), \fBnet_protocol_lookup\fR(9F),
-\fBattributes\fR(5)
+.BR attributes (7),
+.BR net_ispartialchecksum (9F),
+.BR net_protocol_lookup (9F)
diff --git a/usr/src/man/man9f/net_kstat_create.9f b/usr/src/man/man9f/net_kstat_create.9f
index 4d23a6cec6..30d3cdfc44 100644
--- a/usr/src/man/man9f/net_kstat_create.9f
+++ b/usr/src/man/man9f/net_kstat_create.9f
@@ -178,7 +178,7 @@ If successful, \fBnet_kstat_create()\fR returns a pointer to the allocated
The \fBnet_kstat_create()\fR function may be called from user or kernel
context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -192,5 +192,9 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBddi_get_instance\fR(9F), \fBkstat_create\fR(9F), \fBkstat_delete\fR(9F),
-\fBnet_kstat_delete\fR(9F), \fBhook_t\fR(9S), \fBkstat_named\fR(9S)
+.BR ddi_get_instance (9F),
+.BR kstat_create (9F),
+.BR kstat_delete (9F),
+.BR net_kstat_delete (9F),
+.BR hook_t (9S),
+.BR kstat_named (9S)
diff --git a/usr/src/man/man9f/net_kstat_delete.9f b/usr/src/man/man9f/net_kstat_delete.9f
index e9b339d3af..e2712913ac 100644
--- a/usr/src/man/man9f/net_kstat_delete.9f
+++ b/usr/src/man/man9f/net_kstat_delete.9f
@@ -47,7 +47,7 @@ If successful, \fBnet_kstat_delete()\fR returns a pointer to the allocated
The \fBnet_kstat_delete()\fR function may be called from user, kernel, or
interrupt context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -61,5 +61,8 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBkstat_create\fR(9F), \fBkstat_delete\fR(9F), \fBnet_kstat_create\fR(9F),
-\fBhook_t\fR(9S), \fBkstat_named\fR(9S)
+.BR kstat_create (9F),
+.BR kstat_delete (9F),
+.BR net_kstat_create (9F),
+.BR hook_t (9S),
+.BR kstat_named (9S)
diff --git a/usr/src/man/man9f/net_lifgetnext.9f b/usr/src/man/man9f/net_lifgetnext.9f
index 6fb5e6d3a1..d591a8a7ab 100644
--- a/usr/src/man/man9f/net_lifgetnext.9f
+++ b/usr/src/man/man9f/net_lifgetnext.9f
@@ -92,7 +92,7 @@ a network interface.
The \fBnet_lifgetnext()\fR function may be called from user, kernel, or
interrupt context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -106,4 +106,5 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBnet_phygetnext\fR(9F), \fBnet_phylookup\fR(9F)
+.BR net_phygetnext (9F),
+.BR net_phylookup (9F)
diff --git a/usr/src/man/man9f/net_netidtozonid.9f b/usr/src/man/man9f/net_netidtozonid.9f
index 32946ad504..a5b417e1b9 100644
--- a/usr/src/man/man9f/net_netidtozonid.9f
+++ b/usr/src/man/man9f/net_netidtozonid.9f
@@ -37,7 +37,7 @@ for the global zone is returned.
The \fBnet_netidtozonid()\fR function may be called from user, kernel, or
interrupt context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -51,4 +51,5 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBnet_zoneidtonetid\fR(9F), \fBattributes\fR(5)
+.BR attributes (7),
+.BR net_zoneidtonetid (9F)
diff --git a/usr/src/man/man9f/net_phygetnext.9f b/usr/src/man/man9f/net_phygetnext.9f
index b30728787b..1135a607c6 100644
--- a/usr/src/man/man9f/net_phygetnext.9f
+++ b/usr/src/man/man9f/net_phygetnext.9f
@@ -76,7 +76,7 @@ is made. Otherwise, it returns a value representing a network interface.
The \fBnet_phygetnext()\fR function may be called from user, kernel, or
interrupt context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -90,4 +90,6 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBnet_phylookup\fR(9F), \fBnet_protocol_lookup\fR(9F), \fBattributes\fR(5)
+.BR attributes (7),
+.BR net_phylookup (9F),
+.BR net_protocol_lookup (9F)
diff --git a/usr/src/man/man9f/net_phylookup.9f b/usr/src/man/man9f/net_phylookup.9f
index 917762db86..985c45580e 100644
--- a/usr/src/man/man9f/net_phylookup.9f
+++ b/usr/src/man/man9f/net_phylookup.9f
@@ -53,7 +53,7 @@ network protocol.
The \fBnet_phylookup()\fR function may be called from user, kernel, or
interrupt context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -67,5 +67,7 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBnet_getifname\fR(9F), \fBnet_phygetnext\fR(9F),
-\fBnet_protocol_lookup\fR(9F), \fBattributes\fR(5)
+.BR attributes (7),
+.BR net_getifname (9F),
+.BR net_phygetnext (9F),
+.BR net_protocol_lookup (9F)
diff --git a/usr/src/man/man9f/net_protocol_lookup.9f b/usr/src/man/man9f/net_protocol_lookup.9f
index e864a162e4..7dc772e5c4 100644
--- a/usr/src/man/man9f/net_protocol_lookup.9f
+++ b/usr/src/man/man9f/net_protocol_lookup.9f
@@ -54,7 +54,7 @@ value that can be used with other calls in this framework.
The \fBnet_protocol_lookup()\fR function may be called from user, kernel, or
interrupt context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -68,4 +68,5 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBnet_protocol_release\fR(9F), \fBattributes\fR(5)
+.BR attributes (7),
+.BR net_protocol_release (9F)
diff --git a/usr/src/man/man9f/net_protocol_notify_register.9f b/usr/src/man/man9f/net_protocol_notify_register.9f
index a896d106f0..658fcd7d1d 100644
--- a/usr/src/man/man9f/net_protocol_notify_register.9f
+++ b/usr/src/man/man9f/net_protocol_notify_register.9f
@@ -118,7 +118,7 @@ the given callback function is already registered.
.SH CONTEXT
These functions may be called from user or kernel context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -132,4 +132,5 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBattributes\fR(5), \fBnet_protocol_lookup\fR(9F)
+.BR attributes (7),
+.BR net_protocol_lookup (9F)
diff --git a/usr/src/man/man9f/net_protocol_release.9f b/usr/src/man/man9f/net_protocol_release.9f
index c5acc5674f..e2ea0ac268 100644
--- a/usr/src/man/man9f/net_protocol_release.9f
+++ b/usr/src/man/man9f/net_protocol_release.9f
@@ -63,7 +63,7 @@ Unsuccessful because this function has been called too many times.
The \fBnet_protocol_release()\fR function may be called from user, kernel, or
interrupt context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -77,4 +77,6 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBnet_protocol_lookup\fR(9F), \fBnet_protocol_walk\fR(9F), \fBattributes\fR(5)
+.BR attributes (7),
+.BR net_protocol_lookup (9F),
+.BR net_protocol_walk (9F)
diff --git a/usr/src/man/man9f/net_protocol_walk.9f b/usr/src/man/man9f/net_protocol_walk.9f
index 9fcd5ffd19..b68689a79d 100644
--- a/usr/src/man/man9f/net_protocol_walk.9f
+++ b/usr/src/man/man9f/net_protocol_walk.9f
@@ -44,7 +44,7 @@ being passed into other function calls within this interface.
The \fBnet_protocol_walk()\fR function may be called from user, kernel, or
interrupt context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -58,5 +58,6 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBnet_protocol_lookup\fR(9F), \fBnet_protocol_release\fR(9F),
-\fBattributes\fR(5)
+.BR attributes (7),
+.BR net_protocol_lookup (9F),
+.BR net_protocol_release (9F)
diff --git a/usr/src/man/man9f/net_routeto.9f b/usr/src/man/man9f/net_routeto.9f
index d5ef6b0280..ff1084477f 100644
--- a/usr/src/man/man9f/net_routeto.9f
+++ b/usr/src/man/man9f/net_routeto.9f
@@ -84,7 +84,7 @@ Indicates which network interface can be used to reach the given address.
The \fBnet_routeto()\fR function may be called from user, kernel, or interrupt
context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -98,5 +98,7 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBnet_phygetnext\fR(9F), \fBnet_phylookup\fR(9F),
-\fBnet_protocol_lookup\fR(9F), \fBattributes\fR(5)
+.BR attributes (7),
+.BR net_phygetnext (9F),
+.BR net_phylookup (9F),
+.BR net_protocol_lookup (9F)
diff --git a/usr/src/man/man9f/net_zoneidtonetid.9f b/usr/src/man/man9f/net_zoneidtonetid.9f
index 990e82261e..6d5ee12369 100644
--- a/usr/src/man/man9f/net_zoneidtonetid.9f
+++ b/usr/src/man/man9f/net_zoneidtonetid.9f
@@ -39,7 +39,7 @@ returned.
The \fBnet_zoneidtonetid()\fR function may be called from user, kernel, or
interrupt context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -53,4 +53,5 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBnet_netidtozonid\fR(9F), \fBattributes\fR(5)
+.BR attributes (7),
+.BR net_netidtozonid (9F)
diff --git a/usr/src/man/man9f/netinfo.9f b/usr/src/man/man9f/netinfo.9f
index 59e6433d90..34b912e712 100644
--- a/usr/src/man/man9f/netinfo.9f
+++ b/usr/src/man/man9f/netinfo.9f
@@ -14,12 +14,12 @@ accessing functionality and data within an implementation of a network layer
protocol (OSI layer 3.) A protocol may or may not provide full coverage for
each of the functions that is described within this interface. Where it does
not, it must return an appropriate error condition for that call. Documentation
-pertaining to the network protocol, as found in man page section 7pP, must list
+pertaining to the network protocol, as found in man page section 4P, must list
which functions provided by this interface are and are not supported.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -35,18 +35,38 @@ Interface Stability Committed
.SH SEE ALSO
.sp
.LP
-\fBattributes\fR(5), \fBhook_alloc\fR(9F), \fBhook_free\fR(9F),
-\fBhook_nic_event\fR(9S), \fBhook_pkt_event\fR(9S), \fBhook_t\fR(9S),
-\fBnet_getifname\fR(9F), \fBnet_getlifaddr\fR(9F), \fBnet_getmtu\fR(9F),
-\fBnet_getnetid\fR(9F), \fBnet_getpmtuenabled\fR(9F),
-\fBnet_hook_register\fR(9F), \fBnet_hook_unregister\fR(9F),
-\fBnet_inject\fR(9F), \fBnet_inject_alloc\fR(9F), \fBnet_inject_free\fR(9F),
-\fBnet_inject_t\fR(9S), \fBnet_instance_alloc\fR(9F),
-\fBnet_instance_free\fR(9F), \fBnet_instance_register\fR(9F),
-\fBnet_instance_register\fR(9F), \fBnet_inject_t\fR(9S),
-\fBnet_ispartialchecksum\fR(9F), \fBnet_isvalidchecksum\fR(9F),
-\fBnet_kstat_create\fR(9F), \fBnet_kstat_delete\fR(9F),
-\fBnet_lifgetnext\fR(9F), \fBnet_netidtozonid\fR(9F), \fBnet_phygetnext\fR(9F),
-\fBnet_phylookup\fR(9F), \fBnet_protocol_lookup\fR(9F),
-\fBnet_protocol_release\fR(9F), \fBnet_protocol_walk\fR(9F),
-\fBnet_routeto\fR(9F), \fBnet_zoneidtonetid\fR(9F)
+.BR attributes (7),
+.BR hook_alloc (9F),
+.BR hook_free (9F),
+.BR net_getifname (9F),
+.BR net_getlifaddr (9F),
+.BR net_getmtu (9F),
+.BR net_getnetid (9F),
+.BR net_getpmtuenabled (9F),
+.BR net_hook_register (9F),
+.BR net_hook_unregister (9F),
+.BR net_inject (9F),
+.BR net_inject_alloc (9F),
+.BR net_inject_free (9F),
+.BR net_instance_alloc (9F),
+.BR net_instance_free (9F),
+.BR net_instance_register (9F),
+.BR net_instance_register (9F),
+.BR net_ispartialchecksum (9F),
+.BR net_isvalidchecksum (9F),
+.BR net_kstat_create (9F),
+.BR net_kstat_delete (9F),
+.BR net_lifgetnext (9F),
+.BR net_netidtozonid (9F),
+.BR net_phygetnext (9F),
+.BR net_phylookup (9F),
+.BR net_protocol_lookup (9F),
+.BR net_protocol_release (9F),
+.BR net_protocol_walk (9F),
+.BR net_routeto (9F),
+.BR net_zoneidtonetid (9F),
+.BR hook_nic_event (9S),
+.BR hook_pkt_event (9S),
+.BR hook_t (9S),
+.BR net_inject_t (9S),
+.BR net_inject_t (9S)
diff --git a/usr/src/man/man9f/nochpoll.9f b/usr/src/man/man9f/nochpoll.9f
index f93369c4d0..0addeb7fd7 100644
--- a/usr/src/man/man9f/nochpoll.9f
+++ b/usr/src/man/man9f/nochpoll.9f
@@ -74,7 +74,9 @@ The \fBnochpoll()\fR function returns \fBENXIO\fR.
The \fBnochpoll()\fR function can be called from user, interrupt, or kernel
context.
.SH SEE ALSO
-\fBpoll\fR(2), \fBchpoll\fR(9E), \fBcb_ops\fR(9S)
+.BR poll (2),
+.BR chpoll (9E),
+.BR cb_ops (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/nodev.9f b/usr/src/man/man9f/nodev.9f
index 0b6d4e85c3..4f70c0fdbd 100644
--- a/usr/src/man/man9f/nodev.9f
+++ b/usr/src/man/man9f/nodev.9f
@@ -40,7 +40,8 @@ call such an entry point.
.SH SEE ALSO
.sp
.LP
-\fBnulldev\fR(9F), \fBcb_ops\fR(9S)
+.BR nulldev (9F),
+.BR cb_ops (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/noenable.9f b/usr/src/man/man9f/noenable.9f
index ad8414936c..92111cc446 100644
--- a/usr/src/man/man9f/noenable.9f
+++ b/usr/src/man/man9f/noenable.9f
@@ -47,8 +47,11 @@ context.
.SH SEE ALSO
.sp
.LP
-\fBenableok\fR(9F), \fBinsq\fR(9F), \fBputbq\fR(9F), \fBputq\fR(9F),
-\fBqenable\fR(9F)
+.BR enableok (9F),
+.BR insq (9F),
+.BR putbq (9F),
+.BR putq (9F),
+.BR qenable (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/nulldev.9f b/usr/src/man/man9f/nulldev.9f
index 9b366e5bd3..9061bcd8c0 100644
--- a/usr/src/man/man9f/nulldev.9f
+++ b/usr/src/man/man9f/nulldev.9f
@@ -38,7 +38,8 @@ do nothing.
.SH SEE ALSO
.sp
.LP
-\fBnodev\fR(9F), \fBcb_ops\fR(9S)
+.BR nodev (9F),
+.BR cb_ops (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/nvlist_lookup_boolean.9f b/usr/src/man/man9f/nvlist_lookup_boolean.9f
index f36112c331..bf421720eb 100644
--- a/usr/src/man/man9f/nvlist_lookup_boolean.9f
+++ b/usr/src/man/man9f/nvlist_lookup_boolean.9f
@@ -346,7 +346,7 @@ Encode/decode method not supported.
.SH CONTEXT
These functions can be called from user, interrupt, or kernel context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -360,7 +360,8 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBnvlist_alloc\fR(9F), \fBnvpair_type\fR(9F)
+.BR nvlist_alloc (9F),
+.BR nvpair_type (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/nvlist_lookup_nvpair.9f b/usr/src/man/man9f/nvlist_lookup_nvpair.9f
index 6412b32e05..a22d39ffe5 100644
--- a/usr/src/man/man9f/nvlist_lookup_nvpair.9f
+++ b/usr/src/man/man9f/nvlist_lookup_nvpair.9f
@@ -73,7 +73,7 @@ The list was not allocated with \fBNV_UNIQUE_NAME\fR.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -89,5 +89,6 @@ Interface Stability Committed
.SH SEE ALSO
.sp
.LP
-\fBnvlist_lookup_nvpair\fR(3NVPAIR), \fBnvlist_alloc\fR(9F),
-\fBattributes\fR(5)
+.BR nvlist_lookup_nvpair (3NVPAIR),
+.BR attributes (7),
+.BR nvlist_alloc (9F)
diff --git a/usr/src/man/man9f/outb.9f b/usr/src/man/man9f/outb.9f
index 9604e04e1c..8b08f7c6db 100644
--- a/usr/src/man/man9f/outb.9f
+++ b/usr/src/man/man9f/outb.9f
@@ -76,7 +76,7 @@ bits, and 32 bits of data respectively, writing the data specified by
.SH CONTEXT
These functions may be called from user, interrupt, or kernel context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -92,8 +92,12 @@ Interface Stability Obsolete
.TE
.SH SEE ALSO
-\fBisa\fR(4), \fBattributes\fR(5), \fBddi_put8\fR(9F), \fBddi_put16\fR(9F),
-\fBddi_put32\fR(9F), \fBinb\fR(9F)
+.BR isa (5),
+.BR attributes (7),
+.BR ddi_put16 (9F),
+.BR ddi_put32 (9F),
+.BR ddi_put8 (9F),
+.BR inb (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/pci_config_get8.9f b/usr/src/man/man9f/pci_config_get8.9f
index b0d228028f..e053b96d9a 100644
--- a/usr/src/man/man9f/pci_config_get8.9f
+++ b/usr/src/man/man9f/pci_config_get8.9f
@@ -121,7 +121,7 @@ Bus Configuration space.
.SH CONTEXT
These routines can be called from user, kernel, or interrupt context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -135,4 +135,6 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBattributes\fR(5), \fBpci_config_setup\fR(9F), \fBpci_config_teardown\fR(9F)
+.BR attributes (7),
+.BR pci_config_setup (9F),
+.BR pci_config_teardown (9F)
diff --git a/usr/src/man/man9f/pci_config_setup.9f b/usr/src/man/man9f/pci_config_setup.9f
index ac3e77e395..4cf9229068 100644
--- a/usr/src/man/man9f/pci_config_setup.9f
+++ b/usr/src/man/man9f/pci_config_setup.9f
@@ -75,7 +75,7 @@ These functions are specific to \fBPCI \fRbus device drivers. For drivers using
these functions, a single source to support devices with multiple bus versions
may not be easy to maintain.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -89,7 +89,7 @@ Architecture PCI Local Bus
.TE
.SH SEE ALSO
-\fBattributes\fR(5)
+.BR attributes (7)
.sp
.LP
\fIIEEE 1275 PCI Bus Binding\fR
diff --git a/usr/src/man/man9f/pci_ereport_setup.9f b/usr/src/man/man9f/pci_ereport_setup.9f
index 32f8774a3e..82afb47fff 100644
--- a/usr/src/man/man9f/pci_ereport_setup.9f
+++ b/usr/src/man/man9f/pci_ereport_setup.9f
@@ -160,7 +160,7 @@ Error report events are generated automatically if \fBfme_flag\fR is set to
\fBDDI_FM_ERR_UNEXPECTED\fR and the corresponding error bits are set in the
various \fBPCI\fR, \fBPCI/X\fR or \fBPCI Express Bus\fR error registers of the
device associated with \fIdip\fR. The generated error report events are posted
-to the illumos Fault Manager, \fBfmd\fR(1M), for diagnosis.
+to the illumos Fault Manager, \fBfmd\fR(8), for diagnosis.
.sp
.LP
If the status argument is non-null, \fBpci_ereport_post()\fR saves the contents
@@ -256,7 +256,7 @@ xxx_detach(dev_info_t *dip, ddi_attach_cmd_t cmd) {
.in -2
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -270,6 +270,10 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBfmd\fR(1M), \fBattributes\fR(5), \fBddi_fm_handler_register\fR(9F),
-\fBddi_fm_init\fR(9F), \fBddi_peek\fR(9F), \fBddi_poke\fR(9F),
-\fBddi_fm_error\fR(9S)
+.BR attributes (7),
+.BR fmd (8),
+.BR ddi_fm_handler_register (9F),
+.BR ddi_fm_init (9F),
+.BR ddi_peek (9F),
+.BR ddi_poke (9F),
+.BR ddi_fm_error (9S)
diff --git a/usr/src/man/man9f/pci_report_pmcap.9f b/usr/src/man/man9f/pci_report_pmcap.9f
index 868a9835da..d89b972418 100644
--- a/usr/src/man/man9f/pci_report_pmcap.9f
+++ b/usr/src/man/man9f/pci_report_pmcap.9f
@@ -140,7 +140,7 @@ if (pci_report_pmcap(dip, PCI_PM_IDLESPEED, (void *)4000) !=
.in -2
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
diff --git a/usr/src/man/man9f/pci_save_config_regs.9f b/usr/src/man/man9f/pci_save_config_regs.9f
index 2aa230d691..6975cd5d82 100644
--- a/usr/src/man/man9f/pci_save_config_regs.9f
+++ b/usr/src/man/man9f/pci_save_config_regs.9f
@@ -119,7 +119,7 @@ xx_power(dev_info_t *dip, int component, int level) {
.in -2
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -133,7 +133,8 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBattributes\fR(5), \fBpower\fR(9E)
+.BR attributes (7),
+.BR power (9E)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/physio.9f b/usr/src/man/man9f/physio.9f
index 8c72550bd6..35a62c0397 100644
--- a/usr/src/man/man9f/physio.9f
+++ b/usr/src/man/man9f/physio.9f
@@ -142,8 +142,11 @@ Upon failure.
.SH CONTEXT
\fBphysio()\fR can be called from user context only.
.SH SEE ALSO
-\fBstrategy\fR(9E), \fBbiodone\fR(9F), \fBbiowait\fR(9F), \fBbuf\fR(9S),
-\fBuio\fR(9S)
+.BR strategy (9E),
+.BR biodone (9F),
+.BR biowait (9F),
+.BR buf (9S),
+.BR uio (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/pm_busy_component.9f b/usr/src/man/man9f/pm_busy_component.9f
index 593a0f2294..548d420ca2 100644
--- a/usr/src/man/man9f/pm_busy_component.9f
+++ b/usr/src/man/man9f/pm_busy_component.9f
@@ -86,7 +86,7 @@ These functions can be called from user or kernel context. These functions may
also be called from interrupt context, providing they are not the first Power
Management function called by the driver.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -100,9 +100,14 @@ Interface stability Committed
.TE
.SH SEE ALSO
-\fBpower.conf\fR(4), \fBpm\fR(7D), \fBattach\fR(9E), \fBdetach\fR(9E),
-\fBpower\fR(9E), \fBpm_raise_power\fR(9F), \fBpm\fR(9P),
-\fBpm-components\fR(9P)
+.BR pm (4D),
+.BR power.conf (5),
+.BR attach (9E),
+.BR detach (9E),
+.BR power (9E),
+.BR pm_raise_power (9F),
+.BR pm (9P),
+.BR pm-components (9P)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/pm_power_has_changed.9f b/usr/src/man/man9f/pm_power_has_changed.9f
index 4ea0032dd4..660fa090bb 100644
--- a/usr/src/man/man9f/pm_power_has_changed.9f
+++ b/usr/src/man/man9f/pm_power_has_changed.9f
@@ -152,7 +152,7 @@ xxdisk_power(dev_info *dip, int comp, int level)
.in -2
.SH ATTRIBUTES
-See \fBattributes\fR(5) for a description of the following attributes:
+See \fBattributes\fR(7) for a description of the following attributes:
.sp
.sp
@@ -166,10 +166,17 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBpower.conf\fR(4), \fBpm\fR(7D), \fBattach\fR(9E), \fBdetach\fR(9E),
-\fBpower\fR(9E), \fBpm_busy_component\fR(9F), \fBpm_idle_component\fR(9F),
-\fBpm_raise_power\fR(9F), \fBpm_lower_power\fR(9F), \fBpm\fR(9P),
-\fBpm-components\fR(9P)
+.BR pm (4D),
+.BR power.conf (5),
+.BR attach (9E),
+.BR detach (9E),
+.BR power (9E),
+.BR pm_busy_component (9F),
+.BR pm_idle_component (9F),
+.BR pm_lower_power (9F),
+.BR pm_raise_power (9F),
+.BR pm (9P),
+.BR pm-components (9P)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/pm_raise_power.9f b/usr/src/man/man9f/pm_raise_power.9f
index d3277f468e..30cd294628 100644
--- a/usr/src/man/man9f/pm_raise_power.9f
+++ b/usr/src/man/man9f/pm_raise_power.9f
@@ -115,8 +115,8 @@ return \fBDDI_FAILURE\fR if the driver is not detaching at the time of the
call.
.sp
.LP
-If automatic Power Management is disabled (see \fBdtpower\fR(1M) and
-\fBpower.conf\fR(4)), \fBpm_lower_power\fR(9F) returns \fBDDI_SUCCESS\fR
+If automatic Power Management is disabled (see \fBdtpower\fR(8) and
+\fBpower.conf\fR(5)), \fBpm_lower_power\fR(9F) returns \fBDDI_SUCCESS\fR
without changing the power level of the component. Otherwise, when
\fBpm_lower_power\fR(9F) returns with success, the \fIcomponent \fR is
guaranteed to be at most at the requested power level. Since the actual device
@@ -258,7 +258,7 @@ xxdisk_power(dev_info *dip, int comp, int level)
.SH CONTEXT
These functions can be called from user or kernel context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for a description of the following attribute:
+See \fBattributes\fR(7) for a description of the following attribute:
.sp
.sp
@@ -272,9 +272,15 @@ Interface stability Committed
.TE
.SH SEE ALSO
-\fBpower.conf\fR(4), \fBpm\fR(7D), \fBattach\fR(9E), \fBdetach\fR(9E),
-\fBpower\fR(9E), \fBpm_busy_component\fR(9F), \fBpm_idle_component\fR(9F),
-\fBpm\fR(9P), \fBpm-components\fR(9P)
+.BR pm (4D),
+.BR power.conf (5),
+.BR attach (9E),
+.BR detach (9E),
+.BR power (9E),
+.BR pm_busy_component (9F),
+.BR pm_idle_component (9F),
+.BR pm (9P),
+.BR pm-components (9P)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/pm_trans_check.9f b/usr/src/man/man9f/pm_trans_check.9f
index 3ad0bf1ccd..25329359fa 100644
--- a/usr/src/man/man9f/pm_trans_check.9f
+++ b/usr/src/man/man9f/pm_trans_check.9f
@@ -117,7 +117,7 @@ Error due to invalid argument.
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -131,7 +131,9 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBpower.conf\fR(4), \fBattributes\fR(5), \fBpower\fR(9E)
+.BR power.conf (5),
+.BR attributes (7),
+.BR power (9E)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/pollhead_clean.9f b/usr/src/man/man9f/pollhead_clean.9f
index 4c7d076ff9..a1d2d8d2df 100644
--- a/usr/src/man/man9f/pollhead_clean.9f
+++ b/usr/src/man/man9f/pollhead_clean.9f
@@ -55,5 +55,7 @@ of a \fBclose\fR(9E) entry point, but may be called from user or kernel
context.
.SH SEE ALSO
.LP
-\fBpoll\fR(2), \fBchpoll\fR(9E), \fBpollwakeup\fR(9F)
+.BR poll (2),
+.BR chpoll (9E),
+.BR pollwakeup (9F)
diff --git a/usr/src/man/man9f/pollwakeup.9f b/usr/src/man/man9f/pollwakeup.9f
index 00b20d8da7..57a2aad64f 100644
--- a/usr/src/man/man9f/pollwakeup.9f
+++ b/usr/src/man/man9f/pollwakeup.9f
@@ -56,7 +56,8 @@ context.
.SH SEE ALSO
.sp
.LP
-\fBpoll\fR(2), \fBchpoll\fR(9E)
+.BR poll (2),
+.BR chpoll (9E)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/priv_getbyname.9f b/usr/src/man/man9f/priv_getbyname.9f
index f60b76d366..a2aad4cc2e 100644
--- a/usr/src/man/man9f/priv_getbyname.9f
+++ b/usr/src/man/man9f/priv_getbyname.9f
@@ -106,7 +106,7 @@ An attempt was made to allocate a privilege that was longer than
.SH CONTEXT
This functions can be called from user and kernel contexts.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for a description of the following attributes:
+See \fBattributes\fR(7) for a description of the following attributes:
.sp
.sp
@@ -122,7 +122,8 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBattributes\fR(5), \fBprivileges\fR(5)
+.BR attributes (7),
+.BR privileges (7)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/priv_policy.9f b/usr/src/man/man9f/priv_policy.9f
index e84cb344e3..09641a4690 100644
--- a/usr/src/man/man9f/priv_policy.9f
+++ b/usr/src/man/man9f/priv_policy.9f
@@ -155,7 +155,7 @@ An attempt was made to allocate a privilege that was longer than
.SH CONTEXT
This functions can be called from user, interrupt, or kernel context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for a description of the following attributes:
+See \fBattributes\fR(7) for a description of the following attributes:
.sp
.sp
@@ -169,7 +169,9 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBacct\fR(3HEAD), \fBattributes\fR(5), \fBprivileges\fR(5)
+.BR acct (3HEAD),
+.BR attributes (7),
+.BR privileges (7)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/proc_signal.9f b/usr/src/man/man9f/proc_signal.9f
index d81b55e273..aca5769fde 100644
--- a/usr/src/man/man9f/proc_signal.9f
+++ b/usr/src/man/man9f/proc_signal.9f
@@ -169,7 +169,8 @@ The \fBproc_unref()\fR and \fBproc_signal()\fR functions can be called from
user, interrupt, or kernel context. The \fBproc_ref()\fR function should be
called only from user context.
.SH SEE ALSO
-\fBsignal.h\fR(3HEAD), \fBputnextctl1\fR(9F)
+.BR signal.h (3HEAD),
+.BR putnextctl1 (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ptob.9f b/usr/src/man/man9f/ptob.9f
index 7b059a9873..71ef48dbaf 100644
--- a/usr/src/man/man9f/ptob.9f
+++ b/usr/src/man/man9f/ptob.9f
@@ -53,7 +53,9 @@ context.
.SH SEE ALSO
.sp
.LP
-\fBbtop\fR(9F), \fBbtopr\fR(9F), \fBddi_ptob\fR(9F)
+.BR btop (9F),
+.BR btopr (9F),
+.BR ddi_ptob (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/pullupmsg.9f b/usr/src/man/man9f/pullupmsg.9f
index ce7592e23f..59d7d77f01 100644
--- a/usr/src/man/man9f/pullupmsg.9f
+++ b/usr/src/man/man9f/pullupmsg.9f
@@ -111,7 +111,10 @@ processing messages on the queue.
.SH SEE ALSO
.sp
.LP
-\fBsrv\fR(9E), \fBallocb\fR(9F), \fBmsgpullup\fR(9F), \fBmsgb\fR(9S)
+.BR srv (9E),
+.BR allocb (9F),
+.BR msgpullup (9F),
+.BR msgb (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/put.9f b/usr/src/man/man9f/put.9f
index 97afb2db9c..cf6d512f67 100644
--- a/usr/src/man/man9f/put.9f
+++ b/usr/src/man/man9f/put.9f
@@ -65,9 +65,15 @@ replacement for a direct call to a put procedure.
.SH SEE ALSO
.sp
.LP
-\fBput\fR(9E), \fBfreezestr\fR(9F), \fBputctl\fR(9F), \fBputctl1\fR(9F),
-\fBputnext\fR(9F), \fBputnextctl\fR(9F), \fBputnextctl1\fR(9F),
-\fBqprocson\fR(9F), \fBqreply\fR(9F)
+.BR put (9E),
+.BR freezestr (9F),
+.BR putctl (9F),
+.BR putctl1 (9F),
+.BR putnext (9F),
+.BR putnextctl (9F),
+.BR putnextctl1 (9F),
+.BR qprocson (9F),
+.BR qreply (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/putbq.9f b/usr/src/man/man9f/putbq.9f
index c6809fcf84..3b71d0b33b 100644
--- a/usr/src/man/man9f/putbq.9f
+++ b/usr/src/man/man9f/putbq.9f
@@ -79,8 +79,11 @@ See the \fBbufcall\fR(9F) function page for an example of \fBputbq()\fR.
.SH SEE ALSO
.sp
.LP
-\fBbcanput\fR(9F), \fBbufcall\fR(9F), \fBcanput\fR(9F), \fBgetq\fR(9F),
-\fBputq\fR(9F)
+.BR bcanput (9F),
+.BR bufcall (9F),
+.BR canput (9F),
+.BR getq (9F),
+.BR putq (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/putctl.9f b/usr/src/man/man9f/putctl.9f
index c0ba830f3e..b5a64ee9b3 100644
--- a/usr/src/man/man9f/putctl.9f
+++ b/usr/src/man/man9f/putctl.9f
@@ -105,8 +105,11 @@ failures is incremented (lines 12, 17). If an invalid message type is detected,
.SH SEE ALSO
.sp
.LP
-\fBput\fR(9E), \fBcmn_err\fR(9F), \fBdatamsg\fR(9F), \fBputctl1\fR(9F),
-\fBputnextctl\fR(9F)
+.BR put (9E),
+.BR cmn_err (9F),
+.BR datamsg (9F),
+.BR putctl1 (9F),
+.BR putnextctl (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/putctl1.9f b/usr/src/man/man9f/putctl1.9f
index f81c2660a7..a4affe977f 100644
--- a/usr/src/man/man9f/putctl1.9f
+++ b/usr/src/man/man9f/putctl1.9f
@@ -78,8 +78,11 @@ See the \fBputctl\fR(9F) function page for an example of \fBputctl1()\fR.
.SH SEE ALSO
.sp
.LP
-\fBput\fR(9E), \fBallocb\fR(9F), \fBdatamsg\fR(9F), \fBputctl\fR(9F),
-\fBputnextctl1\fR(9F)
+.BR put (9E),
+.BR allocb (9F),
+.BR datamsg (9F),
+.BR putctl (9F),
+.BR putnextctl1 (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/putnext.9f b/usr/src/man/man9f/putnext.9f
index 5baf0fb3fd..c9e833ab89 100644
--- a/usr/src/man/man9f/putnext.9f
+++ b/usr/src/man/man9f/putnext.9f
@@ -62,7 +62,10 @@ See \fBallocb\fR(9F) for an example of using \fBputnext()\fR.
.SH SEE ALSO
.sp
.LP
-\fBput\fR(9E), \fBallocb\fR(9F), \fBput\fR(9F), \fBqprocson\fR(9F)
+.BR put (9E),
+.BR allocb (9F),
+.BR put (9F),
+.BR qprocson (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/putnextctl.9f b/usr/src/man/man9f/putnextctl.9f
index a8eaee82ee..17ce3685e2 100644
--- a/usr/src/man/man9f/putnextctl.9f
+++ b/usr/src/man/man9f/putnextctl.9f
@@ -59,7 +59,7 @@ dereferencing \fIq\fR through its \fBq_next\fR field and then invoking
.sp
.LP
The \fBputnextctl()\fR function should always be used in preference to
-\fBputctl\fR(9F)
+.BR putctl (9F)
.SH RETURN VALUES
.sp
.LP
@@ -109,8 +109,11 @@ is detected, \fBcmn_err\fR(9F) panics the system (line 18).
.SH SEE ALSO
.sp
.LP
-\fBput\fR(9E), \fBcmn_err\fR(9F), \fBdatamsg\fR(9F), \fBputctl\fR(9F),
-\fBputnextctl1\fR(9F)
+.BR put (9E),
+.BR cmn_err (9F),
+.BR datamsg (9F),
+.BR putctl (9F),
+.BR putnextctl1 (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/putnextctl1.9f b/usr/src/man/man9f/putnextctl1.9f
index 6e6a214488..8c025c91bf 100644
--- a/usr/src/man/man9f/putnextctl1.9f
+++ b/usr/src/man/man9f/putnextctl1.9f
@@ -71,7 +71,7 @@ that dereferencing \fIq\fR through its \fBq_next\fR field and then invoking
.sp
.LP
The \fBputnextctl1()\fR function should always be used in preference to
-\fBputctl1\fR(9F)
+.BR putctl1 (9F)
.SH RETURN VALUES
.sp
.LP
@@ -90,8 +90,11 @@ See the \fBputnextctl\fR(9F) function page for an example of
.SH SEE ALSO
.sp
.LP
-\fBput\fR(9E), \fBallocb\fR(9F), \fBdatamsg\fR(9F), \fBputctl1\fR(9F),
-\fBputnextctl\fR(9F)
+.BR put (9E),
+.BR allocb (9F),
+.BR datamsg (9F),
+.BR putctl1 (9F),
+.BR putnextctl (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/putq.9f b/usr/src/man/man9f/putq.9f
index 5ced18cc4d..4554376c4a 100644
--- a/usr/src/man/man9f/putq.9f
+++ b/usr/src/man/man9f/putq.9f
@@ -68,7 +68,10 @@ See the \fBdatamsg\fR(9F) function page for an example of \fBputq()\fR.
.SH SEE ALSO
.sp
.LP
-\fBdatamsg\fR(9F), \fBputbq\fR(9F), \fBqenable\fR(9F), \fBrmvq\fR(9F)
+.BR datamsg (9F),
+.BR putbq (9F),
+.BR qenable (9F),
+.BR rmvq (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/qassociate.9f b/usr/src/man/man9f/qassociate.9f
index 1b75e9b9c6..abe257405b 100644
--- a/usr/src/man/man9f/qassociate.9f
+++ b/usr/src/man/man9f/qassociate.9f
@@ -41,8 +41,8 @@ Driver instance number or -1.
.SH DESCRIPTION
The \fBqassociate()\fR function must be used by \fBDLPI\fR style 2 device
drivers to manage the association between STREAMS queues and device instances.
-The \fBgld\fR(7D) does this automatically on behalf of drivers based on it. It
-is recommended that the \fBgld\fR(7D) be used for network device drivers
+The \fBgld\fR(4D) does this automatically on behalf of drivers based on it. It
+is recommended that the \fBgld\fR(4D) be used for network device drivers
whenever possible.
.sp
.LP
@@ -54,7 +54,7 @@ dissolved.
.LP
A DLPI style 2 driver calls \fBqassociate()\fR while processing the
\fBDL_ATTACH_REQ\fR message. The driver is also expected to call this interface
-while performing stream associations through other means, such as \fBndd\fR(1M)
+while performing stream associations through other means, such as \fBndd\fR(8)
ioctl commands.
.sp
.LP
@@ -131,5 +131,9 @@ qassociate(q, -1);
This informs the framework that this driver has been modified to be
DDI-compliant.
.SH SEE ALSO
-\fBdlpi\fR(7P), \fBgld\fR(7D), \fBopen\fR(9E), \fBput\fR(9E),
-\fBddi_no_info\fR(9F), \fBqueue\fR(9S)
+.BR gld (4D),
+.BR dlpi (4P),
+.BR open (9E),
+.BR put (9E),
+.BR ddi_no_info (9F),
+.BR queue (9S)
diff --git a/usr/src/man/man9f/qbufcall.9f b/usr/src/man/man9f/qbufcall.9f
index d409ad72d7..b100c0d42f 100644
--- a/usr/src/man/man9f/qbufcall.9f
+++ b/usr/src/man/man9f/qbufcall.9f
@@ -93,8 +93,12 @@ is returned.
The \fBqbufcall()\fR function can be called from user, interrupt, or kernel
context.
.SH SEE ALSO
-\fBallocb\fR(9F), \fBmt-streams\fR(9F), \fBqprocson\fR(9F), \fBqtimeout\fR(9F),
-\fBqunbufcall\fR(9F), \fBquntimeout\fR(9F)
+.BR allocb (9F),
+.BR mt-streams (9F),
+.BR qprocson (9F),
+.BR qtimeout (9F),
+.BR qunbufcall (9F),
+.BR quntimeout (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/qenable.9f b/usr/src/man/man9f/qenable.9f
index 245eca50aa..9b4fbbc527 100644
--- a/usr/src/man/man9f/qenable.9f
+++ b/usr/src/man/man9f/qenable.9f
@@ -50,7 +50,7 @@ See the \fBdupb\fR(9F) function page for an example of the \fBqenable()\fR.
.SH SEE ALSO
.sp
.LP
-\fBdupb\fR(9F)
+.BR dupb (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/qprocson.9f b/usr/src/man/man9f/qprocson.9f
index aca781cbaf..0602cbc38d 100644
--- a/usr/src/man/man9f/qprocson.9f
+++ b/usr/src/man/man9f/qprocson.9f
@@ -70,9 +70,16 @@ These routines can be called from user, interrupt, or kernel context.
.SH SEE ALSO
.sp
.LP
-\fBclose\fR(9E), \fBopen\fR(9E), \fBput\fR(9E), \fBsrv\fR(9E), \fBput\fR(9F),
-\fBputnext\fR(9F), \fBqbufcall\fR(9F), \fBqtimeout\fR(9F), \fBqwait\fR(9F),
-\fBqwait_sig\fR(9F)
+.BR close (9E),
+.BR open (9E),
+.BR put (9E),
+.BR srv (9E),
+.BR put (9F),
+.BR putnext (9F),
+.BR qbufcall (9F),
+.BR qtimeout (9F),
+.BR qwait (9F),
+.BR qwait_sig (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/qreply.9f b/usr/src/man/man9f/qreply.9f
index c7c882d361..10d39a14d3 100644
--- a/usr/src/man/man9f/qreply.9f
+++ b/usr/src/man/man9f/qreply.9f
@@ -96,8 +96,11 @@ bit is off, then the message is freed (line 15). See the example for
.SH SEE ALSO
.sp
.LP
-\fBput\fR(9E), \fBsrv\fR(9E), \fBflushq\fR(9F), \fBOTHERQ\fR(9F),
-\fBputnext\fR(9F)
+.BR put (9E),
+.BR srv (9E),
+.BR OTHERQ (9F),
+.BR flushq (9F),
+.BR putnext (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/qtimeout.9f b/usr/src/man/man9f/qtimeout.9f
index 5a78f82ec3..4e63ff4a12 100644
--- a/usr/src/man/man9f/qtimeout.9f
+++ b/usr/src/man/man9f/qtimeout.9f
@@ -85,8 +85,12 @@ Note: No value is returned from the called function.
The \fBqtimeout()\fR function can be called from user, interrupt, or kernel
context.
.SH SEE ALSO
-\fBdrv_usectohz\fR(9F), \fBmt-streams\fR(9F), \fBqbufcall\fR(9F),
-\fBqprocson\fR(9F), \fBqunbufcall\fR(9F), \fBquntimeout\fR(9F)
+.BR drv_usectohz (9F),
+.BR mt-streams (9F),
+.BR qbufcall (9F),
+.BR qprocson (9F),
+.BR qunbufcall (9F),
+.BR quntimeout (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/qunbufcall.9f b/usr/src/man/man9f/qunbufcall.9f
index 048146241b..eb0c617d57 100644
--- a/usr/src/man/man9f/qunbufcall.9f
+++ b/usr/src/man/man9f/qunbufcall.9f
@@ -53,8 +53,10 @@ and before the close routine calls \fBqprocsoff\fR(9F).
The \fBqunbufcall()\fR function can be called from user, interrupt, or kernel
context.
.SH SEE ALSO
-\fBmt-streams\fR(9F), \fBqbufcall\fR(9F), \fBqtimeout\fR(9F),
-\fBquntimeout\fR(9F)
+.BR mt-streams (9F),
+.BR qbufcall (9F),
+.BR qtimeout (9F),
+.BR quntimeout (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/quntimeout.9f b/usr/src/man/man9f/quntimeout.9f
index 4cf660d375..411f32102c 100644
--- a/usr/src/man/man9f/quntimeout.9f
+++ b/usr/src/man/man9f/quntimeout.9f
@@ -54,8 +54,10 @@ Otherwise, \fBquntimeout()\fR returns a \fB0\fR or positive value.
The \fBquntimeout()\fR function can be called from user, interrupt, or kernel
context.
.SH SEE ALSO
-\fBmt-streams\fR(9F), \fBqbufcall\fR(9F), \fBqtimeout\fR(9F),
-\fBqunbufcall\fR(9F)
+.BR mt-streams (9F),
+.BR qbufcall (9F),
+.BR qtimeout (9F),
+.BR qunbufcall (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/qwait.9f b/usr/src/man/man9f/qwait.9f
index 9542c0cab5..89de31aade 100644
--- a/usr/src/man/man9f/qwait.9f
+++ b/usr/src/man/man9f/qwait.9f
@@ -134,9 +134,16 @@ xxrput(qp, mp)
.in -2
.SH SEE ALSO
-\fBclose\fR(9E), \fBopen\fR(9E), \fBput\fR(9E), \fBsrv\fR(9E),
-\fBcondvar\fR(9F), \fBddi_can_receive_sig\fR(9F), \fBmt-streams\fR(9F),
-\fBqbufcall\fR(9F), \fBqprocson\fR(9F), \fBqtimeout\fR(9F)
+.BR close (9E),
+.BR open (9E),
+.BR put (9E),
+.BR srv (9E),
+.BR condvar (9F),
+.BR ddi_can_receive_sig (9F),
+.BR mt-streams (9F),
+.BR qbufcall (9F),
+.BR qprocson (9F),
+.BR qtimeout (9F)
.sp
.LP
\fISTREAMS Programming Guide\fR
diff --git a/usr/src/man/man9f/qwriter.9f b/usr/src/man/man9f/qwriter.9f
index 4a5ccaf51b..72e3dac58e 100644
--- a/usr/src/man/man9f/qwriter.9f
+++ b/usr/src/man/man9f/qwriter.9f
@@ -88,8 +88,11 @@ function has finished executing.
routine, or from a \fBqwriter()\fR, \fBqtimeout\fR(9F), or \fBqbufcall\fR(9F)
callback function.
.SH SEE ALSO
-\fBput\fR(9E), \fBsrv\fR(9E), \fBmt-streams\fR(9F), \fBqbufcall\fR(9F),
-\fBqtimeout\fR(9F)
+.BR put (9E),
+.BR srv (9E),
+.BR mt-streams (9F),
+.BR qbufcall (9F),
+.BR qtimeout (9F)
.sp
.LP
\fISTREAMS Programming Guide\fR
diff --git a/usr/src/man/man9f/rmalloc.9f b/usr/src/man/man9f/rmalloc.9f
index bf60744bed..3daa987892 100644
--- a/usr/src/man/man9f/rmalloc.9f
+++ b/usr/src/man/man9f/rmalloc.9f
@@ -285,9 +285,13 @@ returned.
.SH SEE ALSO
.sp
.LP
-\fBkmem_alloc\fR(9F), \fBrmalloc_wait\fR(9F), \fBrmallocmap\fR(9F),
-\fBrmallocmap_wait\fR(9F),
-\fBrmfree\fR(9F), \fBrmfreemap\fR(9F), \fBuiomove\fR(9F)
+.BR kmem_alloc (9F),
+.BR rmalloc_wait (9F),
+.BR rmallocmap (9F),
+.BR rmallocmap_wait (9F),
+.BR rmfree (9F),
+.BR rmfreemap (9F),
+.BR uiomove (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/rmalloc_wait.9f b/usr/src/man/man9f/rmalloc_wait.9f
index 46a3bd8d33..418e4c4c37 100644
--- a/usr/src/man/man9f/rmalloc_wait.9f
+++ b/usr/src/man/man9f/rmalloc_wait.9f
@@ -60,7 +60,10 @@ in most cases \fBrmalloc_wait()\fR should not be called from interrupt context.
.SH SEE ALSO
.sp
.LP
-\fBrmalloc\fR(9F), \fBrmallocmap\fR(9F), \fBrmfree\fR(9F), \fBrmfreemap\fR(9F)
+.BR rmalloc (9F),
+.BR rmallocmap (9F),
+.BR rmfree (9F),
+.BR rmfreemap (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/rmallocmap.9f b/usr/src/man/man9f/rmallocmap.9f
index 6f04677ea1..2362413d99 100644
--- a/usr/src/man/man9f/rmallocmap.9f
+++ b/usr/src/man/man9f/rmallocmap.9f
@@ -99,7 +99,9 @@ interrupt context.
.SH SEE ALSO
.sp
.LP
-\fBrmalloc\fR(9F), \fBrmalloc_wait\fR(9F), \fBrmfree\fR(9F)
+.BR rmalloc (9F),
+.BR rmalloc_wait (9F),
+.BR rmfree (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/rmfree.9f b/usr/src/man/man9f/rmfree.9f
index 94528d4a2a..88021b3706 100644
--- a/usr/src/man/man9f/rmfree.9f
+++ b/usr/src/man/man9f/rmfree.9f
@@ -80,8 +80,10 @@ context.
.SH SEE ALSO
.sp
.LP
-\fBrmalloc\fR(9F), \fBrmalloc_wait\fR(9F), \fBrmallocmap\fR(9F),
-\fBrmfreemap\fR(9F)
+.BR rmalloc (9F),
+.BR rmalloc_wait (9F),
+.BR rmallocmap (9F),
+.BR rmfreemap (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/rmvb.9f b/usr/src/man/man9f/rmvb.9f
index a239da322e..bb92ccae4a 100644
--- a/usr/src/man/man9f/rmvb.9f
+++ b/usr/src/man/man9f/rmvb.9f
@@ -96,7 +96,8 @@ in its buffer (line 11), then remove it from the message (line 12) and free it
.SH SEE ALSO
.sp
.LP
-\fBfreeb\fR(9F), \fBmsgb\fR(9S)
+.BR freeb (9F),
+.BR msgb (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/rmvq.9f b/usr/src/man/man9f/rmvq.9f
index 847f70bb75..aaf0870bd3 100644
--- a/usr/src/man/man9f/rmvq.9f
+++ b/usr/src/man/man9f/rmvq.9f
@@ -97,7 +97,9 @@ by using STREAMS functions or by implementing your own locking.
.SH SEE ALSO
.sp
.LP
-\fBfreemsg\fR(9F), \fBgetq\fR(9F), \fBinsq\fR(9F)
+.BR freemsg (9F),
+.BR getq (9F),
+.BR insq (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/rwlock.9f b/usr/src/man/man9f/rwlock.9f
index d43b062505..0f1899c5b2 100644
--- a/usr/src/man/man9f/rwlock.9f
+++ b/usr/src/man/man9f/rwlock.9f
@@ -235,12 +235,16 @@ These functions can be called from user, interrupt, or kernel context, except
for \fBrw_init()\fR and \fBrw_destroy()\fR, which can be called from user
context only.
.SH SEE ALSO
-\fBcondvar\fR(9F), \fBddi_intr_alloc\fR(9F), \fBddi_intr_add_handler\fR(9F),
-\fBddi_intr_get_pri\fR(9F), \fBddi_intr_get_softint_pri\fR(9F),
-\fBmutex\fR(9F), \fBsemaphore\fR(9F)
+.BR condvar (9F),
+.BR ddi_intr_add_handler (9F),
+.BR ddi_intr_alloc (9F),
+.BR ddi_intr_get_pri (9F),
+.BR ddi_intr_get_softint_pri (9F),
+.BR mutex (9F),
+.BR semaphore (9F)
.sp
.LP
\fIWriting Device Drivers\fR
.SH NOTES
Compiling with \fB_LOCKTEST\fR or \fB_MPSTATS\fR defined no longer has any
-effect. To gather lock statistics, see \fBlockstat\fR(1M).
+effect. To gather lock statistics, see \fBlockstat\fR(8).
diff --git a/usr/src/man/man9f/scsi_abort.9f b/usr/src/man/man9f/scsi_abort.9f
index a12a01f47a..8952db63de 100644
--- a/usr/src/man/man9f/scsi_abort.9f
+++ b/usr/src/man/man9f/scsi_abort.9f
@@ -76,7 +76,9 @@ context.
.in -2
.SH SEE ALSO
-\fBtran_abort\fR(9E), \fBscsi_reset\fR(9F), \fBscsi_pkt\fR(9S)
+.BR tran_abort (9E),
+.BR scsi_reset (9F),
+.BR scsi_pkt (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/scsi_alloc_consistent_buf.9f b/usr/src/man/man9f/scsi_alloc_consistent_buf.9f
index aaf292f402..1bfae956f1 100644
--- a/usr/src/man/man9f/scsi_alloc_consistent_buf.9f
+++ b/usr/src/man/man9f/scsi_alloc_consistent_buf.9f
@@ -168,9 +168,14 @@ attached.
.in -2
.SH SEE ALSO
-\fBddi_dma_mem_alloc\fR(9F), \fBddi_dma_sync\fR(9F), \fBgetrbuf\fR(9F),
-\fBscsi_destroy_pkt\fR(9F), \fBscsi_init_pkt\fR(9F),
-\fBscsi_free_consistent_buf\fR(9F), \fBbuf\fR(9S), \fBscsi_address\fR(9S)
+.BR ddi_dma_mem_alloc (9F),
+.BR ddi_dma_sync (9F),
+.BR getrbuf (9F),
+.BR scsi_destroy_pkt (9F),
+.BR scsi_free_consistent_buf (9F),
+.BR scsi_init_pkt (9F),
+.BR buf (9S),
+.BR scsi_address (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/scsi_destroy_pkt.9f b/usr/src/man/man9f/scsi_destroy_pkt.9f
index 1d848cb7be..0da4078570 100644
--- a/usr/src/man/man9f/scsi_destroy_pkt.9f
+++ b/usr/src/man/man9f/scsi_destroy_pkt.9f
@@ -43,7 +43,9 @@ scsi_destroy_pkt(un->un_rqs);
.in -2
.SH SEE ALSO
-\fBtran_destroy_pkt\fR(9E), \fBscsi_init_pkt\fR(9F), \fBscsi_pkt\fR(9S)
+.BR tran_destroy_pkt (9E),
+.BR scsi_init_pkt (9F),
+.BR scsi_pkt (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/scsi_dmaget.9f b/usr/src/man/man9f/scsi_dmaget.9f
index 5ac471eef7..9b8c7e6fcf 100644
--- a/usr/src/man/man9f/scsi_dmaget.9f
+++ b/usr/src/man/man9f/scsi_dmaget.9f
@@ -128,7 +128,7 @@ context.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for a description of the following attributes:
+See \fBattributes\fR(7) for a description of the following attributes:
.sp
.sp
@@ -144,9 +144,13 @@ Stability Level Obsolete
.SH SEE ALSO
.sp
.LP
-\fBattributes\fR(5), \fBscsi_pktalloc\fR(9F), \fBscsi_pktfree\fR(9F),
-\fBscsi_resalloc\fR(9F), \fBscsi_resfree\fR(9F), \fBbuf\fR(9S),
-\fBscsi_pkt\fR(9S)
+.BR attributes (7),
+.BR scsi_pktalloc (9F),
+.BR scsi_pktfree (9F),
+.BR scsi_resalloc (9F),
+.BR scsi_resfree (9F),
+.BR buf (9S),
+.BR scsi_pkt (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/scsi_errmsg.9f b/usr/src/man/man9f/scsi_errmsg.9f
index 24b5d78c7b..51984e45eb 100644
--- a/usr/src/man/man9f/scsi_errmsg.9f
+++ b/usr/src/man/man9f/scsi_errmsg.9f
@@ -210,8 +210,11 @@ ASC: 0x29 (reset), ASCQ: 0x0, FRU: 0x0\fR
.in -2
.SH SEE ALSO
-\fBcmn_err\fR(9F), \fBscsi_log\fR(9F), \fBscsi_device\fR(9S),
-\fBscsi_extended_sense\fR(9S), \fBscsi_pkt\fR(9S)
+.BR cmn_err (9F),
+.BR scsi_log (9F),
+.BR scsi_device (9S),
+.BR scsi_extended_sense (9S),
+.BR scsi_pkt (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/scsi_ext_sense_fields.9f b/usr/src/man/man9f/scsi_ext_sense_fields.9f
index ef6c3933a9..adfc6ed4d7 100644
--- a/usr/src/man/man9f/scsi_ext_sense_fields.9f
+++ b/usr/src/man/man9f/scsi_ext_sense_fields.9f
@@ -159,6 +159,8 @@ The \fBscsi_ext_sense_fields()\fR, \fBscsi_sense_info_uint64()\fR and
\fBscsi_sense_cmdspecific_uint64()()\fR functions can be called from user or
interrupt context.
.SH SEE ALSO
-\fBscsi_find_sense_descr\fR(9F), \fBscsi_sense_asc\fR(9F),
-\fBscsi_sense_ascq\fR(9F), \fBscsi_sense_key\fR(9F),
-\fBscsi_validate_sense\fR(9F)
+.BR scsi_find_sense_descr (9F),
+.BR scsi_sense_asc (9F),
+.BR scsi_sense_ascq (9F),
+.BR scsi_sense_key (9F),
+.BR scsi_validate_sense (9F)
diff --git a/usr/src/man/man9f/scsi_find_sense_descr.9f b/usr/src/man/man9f/scsi_find_sense_descr.9f
index 76bb4990bb..991a5dda4b 100644
--- a/usr/src/man/man9f/scsi_find_sense_descr.9f
+++ b/usr/src/man/man9f/scsi_find_sense_descr.9f
@@ -84,7 +84,10 @@ such descriptor exists, \fBscsi_find_sense_descr()\fR returns \fINULL\fR.
The \fBscsi_find_sense_descr()\fR function can be called from user or interrupt
context.
.SH SEE ALSO
-\fBscsi_ext_sense_fields\fR(9F), \fBscsi_sense_asc\fR(9F),
-\fBscsi_sense_ascq\fR(9F), \fBscsi_sense_cmdspecific_uint64\fR(9F),
-\fBscsi_sense_info_uint64\fR(9F), \fBscsi_sense_key\fR(9F),
-\fBscsi_validate_sense\fR(9F)
+.BR scsi_ext_sense_fields (9F),
+.BR scsi_sense_asc (9F),
+.BR scsi_sense_ascq (9F),
+.BR scsi_sense_cmdspecific_uint64 (9F),
+.BR scsi_sense_info_uint64 (9F),
+.BR scsi_sense_key (9F),
+.BR scsi_validate_sense (9F)
diff --git a/usr/src/man/man9f/scsi_free_consistent_buf.9f b/usr/src/man/man9f/scsi_free_consistent_buf.9f
index 9912dcf7c0..19d142d545 100644
--- a/usr/src/man/man9f/scsi_free_consistent_buf.9f
+++ b/usr/src/man/man9f/scsi_free_consistent_buf.9f
@@ -35,7 +35,9 @@ consistent data buffer that was previously allocated using
The \fBscsi_free_consistent_buf()\fR function can be called from user,
interrupt, or kernel context.
.SH SEE ALSO
-\fBfreerbuf\fR(9F), \fBscsi_alloc_consistent_buf\fR(9F), \fBbuf\fR(9S)
+.BR freerbuf (9F),
+.BR scsi_alloc_consistent_buf (9F),
+.BR buf (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/scsi_get_device_type_scsi_options.9f b/usr/src/man/man9f/scsi_get_device_type_scsi_options.9f
index 04eddd328a..45d1700bdf 100644
--- a/usr/src/man/man9f/scsi_get_device_type_scsi_options.9f
+++ b/usr/src/man/man9f/scsi_get_device_type_scsi_options.9f
@@ -49,7 +49,7 @@ Value returned if no match is found.
.SH DESCRIPTION
The \fBscsi_get_device_type_scsi_options()\fR function looks up the property
\fBdevice-type-scsi-options-list\fR, which can be specified in the HBA's
-\fBdriver.conf\fR(4) file. This property allows specification of
+\fBdriver.conf\fR(5) file. This property allows specification of
\fBscsi-options\fR on a per-device-type basis.
.sp
.LP
diff --git a/usr/src/man/man9f/scsi_get_device_type_string.9f b/usr/src/man/man9f/scsi_get_device_type_string.9f
index 1b72f7119a..c1af5f3b6a 100644
--- a/usr/src/man/man9f/scsi_get_device_type_string.9f
+++ b/usr/src/man/man9f/scsi_get_device_type_string.9f
@@ -49,9 +49,9 @@ Pointer to a \fBscsi_device\fR(9S) structure of the target.
.SH DESCRIPTION
The \fBscsi_get_device_type_string()\fR function looks up the \fIprop_name\fR
-property, which can be specified in the HBA's \fBdriver.conf\fR(4)file. This
+property, which can be specified in the HBA's \fBdriver.conf\fR(5)file. This
property allows specification of per-device-type information. The syntax for
-\fIprop_name\fR in a \fBdriver.conf\fR(4) file is:
+\fIprop_name\fR in a \fBdriver.conf\fR(5) file is:
.sp
.LP
The formal syntax is:
@@ -116,7 +116,7 @@ kmem_free(info, strlen(info) + 1);
.SH CONTEXT
This function can be called from kernel or interrupt context.
.SH SEE ALSO
-\fBdriver.conf\fR(4)
+.BR driver.conf (5)
.sp
.LP
\fIWriting Device Drivers \fR
diff --git a/usr/src/man/man9f/scsi_hba_init.9f b/usr/src/man/man9f/scsi_hba_init.9f
index cfd664141d..e0a7894e50 100644
--- a/usr/src/man/man9f/scsi_hba_init.9f
+++ b/usr/src/man/man9f/scsi_hba_init.9f
@@ -56,8 +56,13 @@ should return the value returned by \fBscsi_hba_init()\fR.
\fBscsi_hba_init()\fR and \fBscsi_hba_fini()\fR should be called from
\fB_init\fR(9E) or \fB_fini\fR(9E), respectively.
.SH SEE ALSO
-\fB_fini\fR(9E), \fB_init\fR(9E), \fBmod_install\fR(9F), \fBmod_remove\fR(9F),
-\fBscsi_pktalloc\fR(9F), \fBscsi_pktfree\fR(9F), \fBscsi_hba_tran\fR(9S)
+.BR _fini (9E),
+.BR _init (9E),
+.BR mod_install (9F),
+.BR mod_remove (9F),
+.BR scsi_pktalloc (9F),
+.BR scsi_pktfree (9F),
+.BR scsi_hba_tran (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/scsi_hba_lookup_capstr.9f b/usr/src/man/man9f/scsi_hba_lookup_capstr.9f
index b92b8b8c20..cd184326e7 100644
--- a/usr/src/man/man9f/scsi_hba_lookup_capstr.9f
+++ b/usr/src/man/man9f/scsi_hba_lookup_capstr.9f
@@ -231,7 +231,7 @@ capability, \fB-1\fR is returned.
The \fBscsi_hba_lookup_capstr()\fR function can be called from user, interrupt,
or kernel context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -245,8 +245,11 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBtran_getcap\fR(9E), \fBtran_setcap\fR(9E), \fBscsi_ifgetcap\fR(9F),
-\fBscsi_ifsetcap\fR(9F), \fBscsi_reset_notify\fR(9F)
+.BR tran_getcap (9E),
+.BR tran_setcap (9E),
+.BR scsi_ifgetcap (9F),
+.BR scsi_ifsetcap (9F),
+.BR scsi_reset_notify (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/scsi_hba_pkt_alloc.9f b/usr/src/man/man9f/scsi_hba_pkt_alloc.9f
index bbced72edd..41ba597987 100644
--- a/usr/src/man/man9f/scsi_hba_pkt_alloc.9f
+++ b/usr/src/man/man9f/scsi_hba_pkt_alloc.9f
@@ -207,7 +207,9 @@ called from an interrupt routine.
The \fBscsi_hba_pkt_free()\fR function can be called from user, interrupt, or
kernel context.
.SH SEE ALSO
-\fBtran_init_pkt\fR(9E), \fBscsi_address\fR(9S), \fBscsi_pkt\fR(9S)
+.BR tran_init_pkt (9E),
+.BR scsi_address (9S),
+.BR scsi_pkt (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/scsi_hba_pkt_comp.9f b/usr/src/man/man9f/scsi_hba_pkt_comp.9f
index 1896e23526..0f6cdf5427 100644
--- a/usr/src/man/man9f/scsi_hba_pkt_comp.9f
+++ b/usr/src/man/man9f/scsi_hba_pkt_comp.9f
@@ -45,7 +45,7 @@ different CPU.
The \fBscsi_hba_pkt_comp()\fR function can be called from user, interrupt, or
kernel context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -59,7 +59,9 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBattributes\fR(5), \fBtran_setup_pkt\fR(9E), \fBscsi_pkt\fR(9S)
+.BR attributes (7),
+.BR tran_setup_pkt (9E),
+.BR scsi_pkt (9S)
.SH NOTES
HBA driver calls \fBscsi_hba_pkt_comp()\fR instead of calling
\fBscsi_pkt\fR(9S) \fIpkt_comp\fR directly.
diff --git a/usr/src/man/man9f/scsi_hba_probe.9f b/usr/src/man/man9f/scsi_hba_probe.9f
index 75f1f271da..094975bddf 100644
--- a/usr/src/man/man9f/scsi_hba_probe.9f
+++ b/usr/src/man/man9f/scsi_hba_probe.9f
@@ -47,7 +47,9 @@ See \fBscsi_probe\fR(9F) for the return values from \fBscsi_hba_probe()\fR.
\fBscsi_hba_probe()\fR should only be called from the \fBHBA\fR's
\fBtran_tgt_probe\fR(9E) entry point.
.SH SEE ALSO
-\fBtran_tgt_probe\fR(9E), \fBscsi_probe\fR(9F), \fBscsi_device\fR(9S)
+.BR tran_tgt_probe (9E),
+.BR scsi_probe (9F),
+.BR scsi_device (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/scsi_hba_tgtmap_create.9f b/usr/src/man/man9f/scsi_hba_tgtmap_create.9f
index 808c189a27..a8a16afab0 100644
--- a/usr/src/man/man9f/scsi_hba_tgtmap_create.9f
+++ b/usr/src/man/man9f/scsi_hba_tgtmap_create.9f
@@ -231,9 +231,9 @@ arguments are optional function pointers that will be run in the context
of devices being added and removed from the system.
This allows the HBA driver to perform any required operations prior to
the system attaching a target driver such as
-.Xr sd 7D
+.Xr sd 4D
or
-.Xr ses 7D
+.Xr ses 4D
in the activate case and after the system has detached the driver, in
the removal case.
.Pp
@@ -486,8 +486,8 @@ Otherwise,
.Dv DDI_FAILURE
is returned.
.Sh SEE ALSO
-.Xr sd 7D ,
-.Xr ses 7D ,
+.Xr sd 4D ,
+.Xr ses 4D ,
.Xr tgtmap 9 ,
.Xr attach 9E ,
.Xr detach 9E ,
diff --git a/usr/src/man/man9f/scsi_hba_tran_alloc.9f b/usr/src/man/man9f/scsi_hba_tran_alloc.9f
index 351de0e60e..b4c51b7397 100644
--- a/usr/src/man/man9f/scsi_hba_tran_alloc.9f
+++ b/usr/src/man/man9f/scsi_hba_tran_alloc.9f
@@ -83,7 +83,8 @@ called from an interrupt routine.
The \fBscsi_hba_tran_free()\fR function can be called from user, interrupt, or
kernel context context.
.SH SEE ALSO
-\fBscsi_hba_attach_setup\fR(9F), \fBscsi_hba_tran\fR(9S)
+.BR scsi_hba_attach_setup (9F),
+.BR scsi_hba_tran (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/scsi_ifgetcap.9f b/usr/src/man/man9f/scsi_ifgetcap.9f
index 356b60a747..fbb1d9ebfe 100644
--- a/usr/src/man/man9f/scsi_ifgetcap.9f
+++ b/usr/src/man/man9f/scsi_ifgetcap.9f
@@ -233,7 +233,7 @@ If geometry is not relevant or appropriate for the target disk,
defined. For example, if the \fBHBA\fR BIOS supports Logical Block Addressing
for the target disk, \fBscsi_ifgetcap()\fR returns \fB-1\fR. Attempts to
retrieve the "virtual geometry" from the target driver, such as the
-\fBDKIOCG_VIRTGEOM\fR ioctl, will fail. See \fBdkio\fR(7I) for more information
+\fBDKIOCG_VIRTGEOM\fR ioctl, will fail. See \fBdkio\fR(4I) for more information
about \fBDKIOCG_VIRTGEOM\fR.
.RE
@@ -399,7 +399,7 @@ if (scsi_ifsetcap(&devp->sd_address, "tagged-qing", 1, 1) == 1) {
.SH CONTEXT
These functions can be called from user, interrupt, or kernel context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -413,9 +413,13 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBtran_reset\fR(9E), \fBscsi_hba_lookup_capstr\fR(9F), \fBscsi_reset\fR(9F),
-\fBscsi_reset_notify\fR(9F), \fBddi_dma_attr\fR(9S),
-\fBscsi_address\fR(9S), \fBscsi_arq_status\fR(9S)
+.BR tran_reset (9E),
+.BR scsi_hba_lookup_capstr (9F),
+.BR scsi_reset (9F),
+.BR scsi_reset_notify (9F),
+.BR ddi_dma_attr (9S),
+.BR scsi_address (9S),
+.BR scsi_arq_status (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/scsi_init_pkt.9f b/usr/src/man/man9f/scsi_init_pkt.9f
index b15128114b..4a121e4dfd 100644
--- a/usr/src/man/man9f/scsi_init_pkt.9f
+++ b/usr/src/man/man9f/scsi_init_pkt.9f
@@ -357,9 +357,13 @@ my_pkt = scsi_init_pkt(&devp->sd_address, NULL, bp, CDB_GROUP0,
.in -2
.SH SEE ALSO
-\fBscsi_alloc_consistent_buf\fR(9F), \fBscsi_destroy_pkt\fR(9F),
-\fBscsi_dmaget\fR(9F), \fBscsi_pktalloc\fR(9F), \fBbuf\fR(9S),
-\fBscsi_address\fR(9S), \fBscsi_pkt\fR(9S)
+.BR scsi_alloc_consistent_buf (9F),
+.BR scsi_destroy_pkt (9F),
+.BR scsi_dmaget (9F),
+.BR scsi_pktalloc (9F),
+.BR buf (9S),
+.BR scsi_address (9S),
+.BR scsi_pkt (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/scsi_log.9f b/usr/src/man/man9f/scsi_log.9f
index 0d8d5f4a05..3232948ddb 100644
--- a/usr/src/man/man9f/scsi_log.9f
+++ b/usr/src/man/man9f/scsi_log.9f
@@ -85,7 +85,7 @@ A caret (\fB^\fR), the message goes only to the console.
.el o
A question mark (\fB?\fR) and \fIlevel\fR is \fBCE_CONT\fR, the message is
always sent to the system buffer, but is written to the console only when the
-system has been booted in verbose mode. See \fBkernel\fR(1M). If neither
+system has been booted in verbose mode. See \fBkernel\fR(8). If neither
condition is met, the \fB?\fR character has no effect and is simply ignored.
.RE
.sp
@@ -96,7 +96,10 @@ All formatting conversions in use by \fBcmn_err()\fR also work with
The \fBscsi_log()\fR function may be called from user, interrupt, or kernel
context.
.SH SEE ALSO
-\fBkernel\fR(1M), \fBsd\fR(7D), \fBcmn_err\fR(9F), \fBscsi_errmsg\fR(9F)
+.BR sd (4D),
+.BR kernel (8),
+.BR cmn_err (9F),
+.BR scsi_errmsg (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/scsi_pktalloc.9f b/usr/src/man/man9f/scsi_pktalloc.9f
index f19ee24e3c..216823072c 100644
--- a/usr/src/man/man9f/scsi_pktalloc.9f
+++ b/usr/src/man/man9f/scsi_pktalloc.9f
@@ -190,7 +190,7 @@ interrupt context.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for a description of the following attributes:
+See \fBattributes\fR(7) for a description of the following attributes:
.sp
.sp
@@ -206,8 +206,11 @@ Stability Level Obsolete
.SH SEE ALSO
.sp
.LP
-\fBattributes\fR(5), \fBscsi_dmafree\fR(9F), \fBscsi_dmaget\fR(9F),
-\fBbuf\fR(9S), \fBscsi_pkt\fR(9S)
+.BR attributes (7),
+.BR scsi_dmafree (9F),
+.BR scsi_dmaget (9F),
+.BR buf (9S),
+.BR scsi_pkt (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/scsi_poll.9f b/usr/src/man/man9f/scsi_poll.9f
index 42f5c30905..90b22c6f55 100644
--- a/usr/src/man/man9f/scsi_poll.9f
+++ b/usr/src/man/man9f/scsi_poll.9f
@@ -58,7 +58,9 @@ The \fBscsi_poll()\fR function can be called from user, interrupt, or kernel
context. This function should not be called when the caller is executing
\fBtimeout\fR(9F) in the context of a thread.
.SH SEE ALSO
-\fBmakecom\fR(9F), \fBscsi_transport\fR(9F), \fBscsi_pkt\fR(9S)
+.BR makecom (9F),
+.BR scsi_transport (9F),
+.BR scsi_pkt (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/scsi_probe.9f b/usr/src/man/man9f/scsi_probe.9f
index 5e04869f7d..20751ef6bf 100644
--- a/usr/src/man/man9f/scsi_probe.9f
+++ b/usr/src/man/man9f/scsi_probe.9f
@@ -178,9 +178,13 @@ allocated.
.in -2
.SH SEE ALSO
-\fBattach\fR(9E), \fBprobe\fR(9E), \fBscsi_slave\fR(9F),
-\fBscsi_unprobe\fR(9F), \fBscsi_unslave\fR(9F), \fBscsi_device\fR(9S),
-\fBscsi_inquiry\fR(9S)
+.BR attach (9E),
+.BR probe (9E),
+.BR scsi_slave (9F),
+.BR scsi_unprobe (9F),
+.BR scsi_unslave (9F),
+.BR scsi_device (9S),
+.BR scsi_inquiry (9S)
.sp
.LP
\fIANSI Small Computer System Interface-2 (SCSI-2)\fR
diff --git a/usr/src/man/man9f/scsi_reset.9f b/usr/src/man/man9f/scsi_reset.9f
index bfbb189d12..166002ff3a 100644
--- a/usr/src/man/man9f/scsi_reset.9f
+++ b/usr/src/man/man9f/scsi_reset.9f
@@ -95,7 +95,9 @@ Upon failure.
The \fBscsi_reset()\fR function can be called from user, interrupt, or kernel
context.
.SH SEE ALSO
-\fBtran_reset\fR(9E), \fBtran_reset_notify\fR(9E), \fBscsi_abort\fR(9F)
+.BR tran_reset (9E),
+.BR tran_reset_notify (9E),
+.BR scsi_abort (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/scsi_reset_notify.9f b/usr/src/man/man9f/scsi_reset_notify.9f
index a7872a80fe..164cda3d3d 100644
--- a/usr/src/man/man9f/scsi_reset_notify.9f
+++ b/usr/src/man/man9f/scsi_reset_notify.9f
@@ -134,7 +134,8 @@ No notification request was registered.
The \fBscsi_reset_notify()\fR function can be called from user, interrupt, or
kernel context.
.SH SEE ALSO
-\fBscsi_address\fR(9S), \fBscsi_ifgetcap\fR(9F)
+.BR scsi_ifgetcap (9F),
+.BR scsi_address (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/scsi_sense_key.9f b/usr/src/man/man9f/scsi_sense_key.9f
index bb3438e5d4..b6e05df99f 100644
--- a/usr/src/man/man9f/scsi_sense_key.9f
+++ b/usr/src/man/man9f/scsi_sense_key.9f
@@ -68,6 +68,8 @@ returns the additional sense code qualifier (\fBASCQ\fR) from the sense buffer.
The \fBscsi_sense_key()\fR, \fBscsi_sense_asc()\fR, and \fBscsi_sense_ascq()\fR
functions can be called from user or interrupt context.
.SH SEE ALSO
-\fBscsi_ext_sense_fields\fR(9F), \fBscsi_find_sense_descr\fR(9F),
-\fBscsi_sense_cmdspecific_uint64\fR(9F), \fBscsi_sense_info_uint64\fR(9F),
-\fBscsi_validate_sense\fR(9F)
+.BR scsi_ext_sense_fields (9F),
+.BR scsi_find_sense_descr (9F),
+.BR scsi_sense_cmdspecific_uint64 (9F),
+.BR scsi_sense_info_uint64 (9F),
+.BR scsi_validate_sense (9F)
diff --git a/usr/src/man/man9f/scsi_setup_cdb.9f b/usr/src/man/man9f/scsi_setup_cdb.9f
index 76e7433b73..9bd8d7f676 100644
--- a/usr/src/man/man9f/scsi_setup_cdb.9f
+++ b/usr/src/man/man9f/scsi_setup_cdb.9f
@@ -99,7 +99,8 @@ Upon failure.
.SH CONTEXT
These functions can be called from a user, interrupt, or kernel context.
.SH SEE ALSO
-\fBmakecom\fR(9F), \fBscsi_pkt\fR(9S)
+.BR makecom (9F),
+.BR scsi_pkt (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/scsi_slave.9f b/usr/src/man/man9f/scsi_slave.9f
index 621c4fd260..1783a1832f 100644
--- a/usr/src/man/man9f/scsi_slave.9f
+++ b/usr/src/man/man9f/scsi_slave.9f
@@ -145,7 +145,7 @@ allocated.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for a description of the following attributes:
+See \fBattributes\fR(7) for a description of the following attributes:
.sp
.sp
@@ -161,10 +161,17 @@ Stability Level Obsolete
.SH SEE ALSO
.sp
.LP
-\fBattributes\fR(5), \fBattach\fR(9E), \fBprobe\fR(9E),
-\fBddi_iopb_alloc\fR(9F), \fBmakecom\fR(9F), \fBscsi_dmaget\fR(9F),
-\fBscsi_ifgetcap\fR(9F), \fBscsi_pktalloc\fR(9F), \fBscsi_poll\fR(9F),
-\fBscsi_probe\fR(9F), \fBscsi_device\fR(9S)
+.BR attributes (7),
+.BR attach (9E),
+.BR probe (9E),
+.BR ddi_iopb_alloc (9F),
+.BR makecom (9F),
+.BR scsi_dmaget (9F),
+.BR scsi_ifgetcap (9F),
+.BR scsi_pktalloc (9F),
+.BR scsi_poll (9F),
+.BR scsi_probe (9F),
+.BR scsi_device (9S)
.sp
.LP
\fIANSI Small Computer System Interface-2 (SCSI-2)\fR
diff --git a/usr/src/man/man9f/scsi_sync_pkt.9f b/usr/src/man/man9f/scsi_sync_pkt.9f
index 58b6b42b1a..bab540afbf 100644
--- a/usr/src/man/man9f/scsi_sync_pkt.9f
+++ b/usr/src/man/man9f/scsi_sync_pkt.9f
@@ -51,8 +51,12 @@ the packet but before accessing the data in memory.
The \fBscsi_sync_pkt()\fR function may be called from user, interrupt, or
kernel context.
.SH SEE ALSO
-\fBtran_sync_pkt\fR(9E), \fBddi_dma_sync\fR(9F), \fBscsi_destroy_pkt\fR(9F),
-\fBscsi_init_pkt\fR(9F), \fBscsi_transport\fR(9F), \fBscsi_pkt\fR(9S)
+.BR tran_sync_pkt (9E),
+.BR ddi_dma_sync (9F),
+.BR scsi_destroy_pkt (9F),
+.BR scsi_init_pkt (9F),
+.BR scsi_transport (9F),
+.BR scsi_pkt (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/scsi_transport.9f b/usr/src/man/man9f/scsi_transport.9f
index 072fe877b0..b357809807 100644
--- a/usr/src/man/man9f/scsi_transport.9f
+++ b/usr/src/man/man9f/scsi_transport.9f
@@ -94,8 +94,12 @@ if ((status = scsi_transport(rqpkt)) != TRAN_ACCEPT) {
.in -2
.SH SEE ALSO
-\fBtran_start\fR(9E), \fBmakecom\fR(9F), \fBscsi_init_pkt\fR(9F),
-\fBscsi_pktalloc\fR(9F), \fBscsi_poll\fR(9F), \fBscsi_pkt\fR(9S)
+.BR tran_start (9E),
+.BR makecom (9F),
+.BR scsi_init_pkt (9F),
+.BR scsi_pktalloc (9F),
+.BR scsi_poll (9F),
+.BR scsi_pkt (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/scsi_unprobe.9f b/usr/src/man/man9f/scsi_unprobe.9f
index 5b31d103b1..7af110fc3b 100644
--- a/usr/src/man/man9f/scsi_unprobe.9f
+++ b/usr/src/man/man9f/scsi_unprobe.9f
@@ -40,7 +40,9 @@ that were allocated on the driver's behalf during \fBscsi_slave\fR(9F) and
\fBscsi_unprobe()\fR and \fBscsi_unslave()\fR must not be called from an
interrupt context.
.SH SEE ALSO
-\fBscsi_probe\fR(9F), \fBscsi_slave\fR(9F), \fBscsi_device\fR(9S)
+.BR scsi_probe (9F),
+.BR scsi_slave (9F),
+.BR scsi_device (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/scsi_validate_sense.9f b/usr/src/man/man9f/scsi_validate_sense.9f
index dc06bda8cd..182d511f9a 100644
--- a/usr/src/man/man9f/scsi_validate_sense.9f
+++ b/usr/src/man/man9f/scsi_validate_sense.9f
@@ -110,7 +110,10 @@ The sense data in the buffer is in "descriptor format".
The \fBscsi_validate_sense()\fR function can be called from user or interrupt
context.
.SH SEE ALSO
-\fBscsi_ext_sense_fields\fR(9F), \fBscsi_find_sense_descr\fR(9F),
-\fBscsi_sense_asc\fR(9F), \fBscsi_sense_ascq\fR(9F),
-\fBscsi_sense_cmdspecific_uint64\fR(9F), \fBscsi_sense_info_uint64\fR(9F),
-\fBscsi_sense_key\fR(9F)
+.BR scsi_ext_sense_fields (9F),
+.BR scsi_find_sense_descr (9F),
+.BR scsi_sense_asc (9F),
+.BR scsi_sense_ascq (9F),
+.BR scsi_sense_cmdspecific_uint64 (9F),
+.BR scsi_sense_info_uint64 (9F),
+.BR scsi_sense_key (9F)
diff --git a/usr/src/man/man9f/scsi_vu_errmsg.9f b/usr/src/man/man9f/scsi_vu_errmsg.9f
index 0573364d88..c0d30206ba 100644
--- a/usr/src/man/man9f/scsi_vu_errmsg.9f
+++ b/usr/src/man/man9f/scsi_vu_errmsg.9f
@@ -248,9 +248,14 @@ WARNING: /sbus@1,f8000000/esp@0,800000/sd@1,0 (sd1):
.in -2
.SH SEE ALSO
-\fBcmn_err\fR(9F), \fBscsi_errmsg\fR(9F), \fBscsi_log\fR(9F),
-\fBscsi_errmsg\fR(9F), \fBscsi_asc_key_strings\fR(9S), \fBscsi_device\fR(9S),
-\fBscsi_extended_sense\fR(9S), \fBscsi_pkt\fR(9S)
+.BR cmn_err (9F),
+.BR scsi_errmsg (9F),
+.BR scsi_errmsg (9F),
+.BR scsi_log (9F),
+.BR scsi_asc_key_strings (9S),
+.BR scsi_device (9S),
+.BR scsi_extended_sense (9S),
+.BR scsi_pkt (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/string.9f b/usr/src/man/man9f/string.9f
index 537871c952..6ed0687b0a 100644
--- a/usr/src/man/man9f/string.9f
+++ b/usr/src/man/man9f/string.9f
@@ -230,7 +230,7 @@ the \fBKM_NOSLEEP\fR flag is set.
All the other string manipulation functions can be called from user, interrupt,
or kernel context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -244,8 +244,11 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBstring\fR(3C), \fBattributes\fR(5), \fBbcopy\fR(9F), \fBddi_copyin\fR(9F),
-\fBkmem_alloc\fR(9F)
+.BR string (3C),
+.BR attributes (7),
+.BR bcopy (9F),
+.BR ddi_copyin (9F),
+.BR kmem_alloc (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/strlog.9f b/usr/src/man/man9f/strlog.9f
index 505c8f39b7..dcfae9c418 100644
--- a/usr/src/man/man9f/strlog.9f
+++ b/usr/src/man/man9f/strlog.9f
@@ -150,8 +150,8 @@ to 32-bits here but will be fully represented in the string.
.LP
The messages can be retrieved with the \fBgetmsg\fR(2) system call. The
\fIflags\fR argument specifies the type of the message and where it is to be
-sent. \fBstrace\fR(1M) receives messages from the \fBlog\fR driver and sends
-them to the standard output. \fBstrerr\fR(1M) receives error messages from the
+sent. \fBstrace\fR(8) receives messages from the \fBlog\fR driver and sends
+them to the standard output. \fBstrerr\fR(8) receives error messages from the
\fBlog\fR driver and appends them to a file called
\fB/var/adm/streams/error.\fR\fImm-dd\fR, where \fImm-dd\fR identifies the date
of the error message.
@@ -159,7 +159,7 @@ of the error message.
.sp
.LP
The \fBstrlog()\fR function returns \fB0\fR if it fails to submit the message
-to the \fBlog\fR(7D) driver and \fB1\fR otherwise.
+to the \fBlog\fR(4D) driver and \fB1\fR otherwise.
.SH CONTEXT
.sp
.LP
@@ -173,15 +173,18 @@ context.
.ad
.sp .6
.RS 4n
-Error messages dated \fImm-dd\fR appended by \fBstrerr\fR(1M) from the
+Error messages dated \fImm-dd\fR appended by \fBstrerr\fR(8) from the
\fBlog\fR driver
.RE
.SH SEE ALSO
.sp
.LP
-\fBstrace\fR(1M), \fBstrerr\fR(1M), \fBgetmsg\fR(2), \fBlog\fR(7D),
-\fBmodule_info\fR(9S)
+.BR getmsg (2),
+.BR log (4D),
+.BR strace (8),
+.BR strerr (8),
+.BR module_info (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/strqget.9f b/usr/src/man/man9f/strqget.9f
index 3bf1e4ddf3..81727ec538 100644
--- a/usr/src/man/man9f/strqget.9f
+++ b/usr/src/man/man9f/strqget.9f
@@ -152,7 +152,8 @@ context.
.SH SEE ALSO
.sp
.LP
-\fBstrqset\fR(9F), \fBqueue\fR(9S)
+.BR strqset (9F),
+.BR queue (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/strqset.9f b/usr/src/man/man9f/strqset.9f
index 5ccc58a25d..9aa76c395b 100644
--- a/usr/src/man/man9f/strqset.9f
+++ b/usr/src/man/man9f/strqset.9f
@@ -114,7 +114,8 @@ context.
.SH SEE ALSO
.sp
.LP
-\fBstrqget\fR(9F), \fBqueue\fR(9S)
+.BR strqget (9F),
+.BR queue (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/testb.9f b/usr/src/man/man9f/testb.9f
index b02c1ac6e9..bbe69497ee 100644
--- a/usr/src/man/man9f/testb.9f
+++ b/usr/src/man/man9f/testb.9f
@@ -124,7 +124,10 @@ the amount of time spent in a \fBtimeout()\fR routine.
.SH SEE ALSO
.sp
.LP
-\fBallocb\fR(9F), \fBbufcall\fR(9F), \fBcopymsg\fR(9F), \fBtimeout\fR(9F)
+.BR allocb (9F),
+.BR bufcall (9F),
+.BR copymsg (9F),
+.BR timeout (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/timeout.9f b/usr/src/man/man9f/timeout.9f
index 07de9f388c..29782729ee 100644
--- a/usr/src/man/man9f/timeout.9f
+++ b/usr/src/man/man9f/timeout.9f
@@ -145,8 +145,12 @@ xxcheckcond(struct xxstate *xsp)
.SH SEE ALSO
.sp
.LP
-\fBbufcall\fR(9F), \fBcv_timedwait\fR(9F), \fBddi_in_panic\fR(9F),
-\fBdelay\fR(9F), \fBdrv_usectohz\fR(9F), \fBuntimeout\fR(9F)
+.BR bufcall (9F),
+.BR cv_timedwait (9F),
+.BR ddi_in_panic (9F),
+.BR delay (9F),
+.BR drv_usectohz (9F),
+.BR untimeout (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/u8_strcmp.9f b/usr/src/man/man9f/u8_strcmp.9f
index cd9b90ed5f..a93f6acda0 100644
--- a/usr/src/man/man9f/u8_strcmp.9f
+++ b/usr/src/man/man9f/u8_strcmp.9f
@@ -318,7 +318,7 @@ docmp_nfd_caseinsensitive_u320(const char *u1, const char *u2) {
.in -2
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -332,9 +332,13 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBu8_validate\fR(3C), \fBu8_textprep_str\fR(3C), \fBu8_validate\fR(3C),
-\fBattributes\fR(5), \fBu8_textprep_str\fR(9F), \fBu8_validate\fR(9F),
-\fBuconv_u16tou32\fR(9F)
+.BR u8_textprep_str (3C),
+.BR u8_validate (3C),
+.BR u8_validate (3C),
+.BR attributes (7),
+.BR u8_textprep_str (9F),
+.BR u8_validate (9F),
+.BR uconv_u16tou32 (9F)
.sp
.LP
The Unicode Standard (http://www.unicode.org)
diff --git a/usr/src/man/man9f/u8_textprep_str.9f b/usr/src/man/man9f/u8_textprep_str.9f
index d08f71e32d..63bc23d0c3 100644
--- a/usr/src/man/man9f/u8_textprep_str.9f
+++ b/usr/src/man/man9f/u8_textprep_str.9f
@@ -353,7 +353,7 @@ if (ret == (size_t)-1) {
.in -2
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -367,9 +367,13 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBu8_strcmp\fR(3C), \fBu8_textprep_str\fR(3C), \fBu8_validate\fR(3C),
-\fBattributes\fR(5), \fBu8_strcmp\fR(9F), \fBu8_validate\fR(9F),
-\fBuconv_u16tou32\fR(9F)
+.BR u8_strcmp (3C),
+.BR u8_textprep_str (3C),
+.BR u8_validate (3C),
+.BR attributes (7),
+.BR u8_strcmp (9F),
+.BR u8_validate (9F),
+.BR uconv_u16tou32 (9F)
.sp
.LP
The Unicode Standard (http://www.unicode.org)
diff --git a/usr/src/man/man9f/u8_validate.9f b/usr/src/man/man9f/u8_validate.9f
index 11cd5e8112..00d69a75bf 100644
--- a/usr/src/man/man9f/u8_validate.9f
+++ b/usr/src/man/man9f/u8_validate.9f
@@ -263,7 +263,7 @@ if (len == -1) {
.in -2
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -277,9 +277,13 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBu8_strcmp\fR(3C), \fBu8_textprep_str\fR(3C), \fBu8_validate\fR(3C),
-\fBattributes\fR(5), \fBu8_strcmp\fR(9F), \fBu8_textprep_str\fR(9F),
-\fBuconv_u16tou32\fR(9F)
+.BR u8_strcmp (3C),
+.BR u8_textprep_str (3C),
+.BR u8_validate (3C),
+.BR attributes (7),
+.BR u8_strcmp (9F),
+.BR u8_textprep_str (9F),
+.BR uconv_u16tou32 (9F)
.sp
.LP
The Unicode Standard (http://www.unicode.org)
diff --git a/usr/src/man/man9f/uconv_u16tou32.9f b/usr/src/man/man9f/uconv_u16tou32.9f
index 3dd09887d8..d1a34e2a52 100644
--- a/usr/src/man/man9f/uconv_u16tou32.9f
+++ b/usr/src/man/man9f/uconv_u16tou32.9f
@@ -459,7 +459,7 @@ if (ret != 0) {
.in -2
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -473,7 +473,8 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBuconv_u16tou32\fR(3C), \fBattributes\fR(5)
+.BR uconv_u16tou32 (3C),
+.BR attributes (7)
.sp
.LP
The Unicode Standard (http://www.unicode.org)
diff --git a/usr/src/man/man9f/uiomove.9f b/usr/src/man/man9f/uiomove.9f
index ca3d6a3599..11188c6357 100644
--- a/usr/src/man/man9f/uiomove.9f
+++ b/usr/src/man/man9f/uiomove.9f
@@ -102,7 +102,10 @@ interrupt, or kernel context, if \fBuio_segflg\fR is set to \fBUIO_SYSSPACE\fR.
.SH SEE ALSO
.sp
.LP
-\fBureadc\fR(9F), \fBuwritec\fR(9F), \fBiovec\fR(9S), \fBuio\fR(9S)
+.BR ureadc (9F),
+.BR uwritec (9F),
+.BR iovec (9S),
+.BR uio (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/unbufcall.9f b/usr/src/man/man9f/unbufcall.9f
index 5965836c5c..26acd89511 100644
--- a/usr/src/man/man9f/unbufcall.9f
+++ b/usr/src/man/man9f/unbufcall.9f
@@ -53,7 +53,8 @@ context.
.SH SEE ALSO
.sp
.LP
-\fBbufcall\fR(9F), \fBesbbcall\fR(9F)
+.BR bufcall (9F),
+.BR esbbcall (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/unlinkb.9f b/usr/src/man/man9f/unlinkb.9f
index 5c2092401c..0e1e449c1c 100644
--- a/usr/src/man/man9f/unlinkb.9f
+++ b/usr/src/man/man9f/unlinkb.9f
@@ -76,7 +76,7 @@ remove and free the \fBM_PROTO\fR header and return the remaining
.SH SEE ALSO
.sp
.LP
-\fBlinkb\fR(9F)
+.BR linkb (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/untimeout.9f b/usr/src/man/man9f/untimeout.9f
index 7c169e962b..492625421c 100644
--- a/usr/src/man/man9f/untimeout.9f
+++ b/usr/src/man/man9f/untimeout.9f
@@ -122,8 +122,11 @@ xxcheckcond(struct xxstate *xsp)
.SH SEE ALSO
.sp
.LP
-\fBopen\fR(9E), \fBcv_signal\fR(9F), \fBcv_wait_sig\fR(9F), \fBdelay\fR(9F),
-\fBtimeout\fR(9F)
+.BR open (9E),
+.BR cv_signal (9F),
+.BR cv_wait_sig (9F),
+.BR delay (9F),
+.BR timeout (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/ureadc.9f b/usr/src/man/man9f/ureadc.9f
index 9e6c4aeb12..ee9ea76a1b 100644
--- a/usr/src/man/man9f/ureadc.9f
+++ b/usr/src/man/man9f/ureadc.9f
@@ -59,7 +59,10 @@ context.
.SH SEE ALSO
.sp
.LP
-\fBuiomove\fR(9F), \fBuwritec\fR(9F), \fBiovec\fR(9S), \fBuio\fR(9S)
+.BR uiomove (9F),
+.BR uwritec (9F),
+.BR iovec (9S),
+.BR uio (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/usb_alloc_request.9f b/usr/src/man/man9f/usb_alloc_request.9f
index 9e5baeadde..c1d1ffebe4 100644
--- a/usr/src/man/man9f/usb_alloc_request.9f
+++ b/usr/src/man/man9f/usb_alloc_request.9f
@@ -216,7 +216,7 @@ The free routines may be called from kernel, user, and interrupt context.
.in -2
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -232,10 +232,15 @@ Interface stability Committed
.TE
.SH SEE ALSO
-\fBattributes\fR(5), \fBusb_get_current_frame_number\fR(9F),
-\fBusb_get_max_pkts_per_isoc_request\fR(9F),
-\fBusb_pipe_get_max_bulk_transfer_size\fR(9F), \fBusb_pipe_bulk_xfer\fR(9F),
-\fBusb_pipe_ctrl_xfer\fR(9F), \fBusb_pipe_intr_xfer\fR(9F),
-\fBusb_pipe_isoc_xfer\fR(9F), \fBusb_bulk_request\fR(9S),
-\fBusb_ctrl_request\fR(9S), \fBusb_intr_request\fR(9S),
-\fBusb_isoc_request\fR(9S)
+.BR attributes (7),
+.BR usb_get_current_frame_number (9F),
+.BR usb_get_max_pkts_per_isoc_request (9F),
+.BR usb_pipe_bulk_xfer (9F),
+.BR usb_pipe_ctrl_xfer (9F),
+.BR usb_pipe_get_max_bulk_transfer_size (9F),
+.BR usb_pipe_intr_xfer (9F),
+.BR usb_pipe_isoc_xfer (9F),
+.BR usb_bulk_request (9S),
+.BR usb_ctrl_request (9S),
+.BR usb_intr_request (9S),
+.BR usb_isoc_request (9S)
diff --git a/usr/src/man/man9f/usb_client_attach.9f b/usr/src/man/man9f/usb_client_attach.9f
index b7654cb6f1..a055c6c6d8 100644
--- a/usr/src/man/man9f/usb_client_attach.9f
+++ b/usr/src/man/man9f/usb_client_attach.9f
@@ -206,7 +206,7 @@ or \fBdetach\fR(9E).
.in -2
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -222,5 +222,7 @@ Interface stability Committed
.TE
.SH SEE ALSO
-\fBattributes\fR(5), \fBattach\fR(9E), \fBdetach\fR(9E),
-\fBusb_get_dev_data\fR(9F)
+.BR attributes (7),
+.BR attach (9E),
+.BR detach (9E),
+.BR usb_get_dev_data (9F)
diff --git a/usr/src/man/man9f/usb_clr_feature.9f b/usr/src/man/man9f/usb_clr_feature.9f
index 02a5053658..c3d74012a4 100644
--- a/usr/src/man/man9f/usb_clr_feature.9f
+++ b/usr/src/man/man9f/usb_clr_feature.9f
@@ -200,7 +200,7 @@ if (usb_clr_feature(dip, pipe_handle, USB_DEV_REQ_RCPT_EP,
.in -2
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -216,5 +216,8 @@ Interface stability Committed
.TE
.SH SEE ALSO
-\fBattributes\fR(5), \fBusb_get_status\fR(9F), \fBusb_pipe_reset\fR(9F),
-\fBusb_pipe_get_state\fR(9F), \fBusb_callback_flags\fR(9S)
+.BR attributes (7),
+.BR usb_get_status (9F),
+.BR usb_pipe_get_state (9F),
+.BR usb_pipe_reset (9F),
+.BR usb_callback_flags (9S)
diff --git a/usr/src/man/man9f/usb_create_pm_components.9f b/usr/src/man/man9f/usb_create_pm_components.9f
index d2d729f270..f7da551cab 100644
--- a/usr/src/man/man9f/usb_create_pm_components.9f
+++ b/usr/src/man/man9f/usb_create_pm_components.9f
@@ -118,7 +118,7 @@ May be called from user or kernel context.
.in -2
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -134,8 +134,14 @@ Interface stability Committed
.TE
.SH SEE ALSO
-\fBattributes\fR(5), \fBusb_clr_feature\fR(9F),
-\fBusb_register_hotplug_cbs\fR(9F), \fBusb_get_cfg\fR(9F),
-\fBusb_get_dev_data\fR(9F), \fBusb_handle_remote_wakeup\fR(9F),
-\fBpm_idle_component\fR(9F), \fBpm_busy_component\fR(9F),
-\fBpm_raise_power\fR(9F), \fBpm_lower_power\fR(9F), \fBusb_cfg_descr\fR(9S)
+.BR attributes (7),
+.BR pm_busy_component (9F),
+.BR pm_idle_component (9F),
+.BR pm_lower_power (9F),
+.BR pm_raise_power (9F),
+.BR usb_clr_feature (9F),
+.BR usb_get_cfg (9F),
+.BR usb_get_dev_data (9F),
+.BR usb_handle_remote_wakeup (9F),
+.BR usb_register_hotplug_cbs (9F),
+.BR usb_cfg_descr (9S)
diff --git a/usr/src/man/man9f/usb_get_addr.9f b/usr/src/man/man9f/usb_get_addr.9f
index 109437755e..daa8aebf5c 100644
--- a/usr/src/man/man9f/usb_get_addr.9f
+++ b/usr/src/man/man9f/usb_get_addr.9f
@@ -46,7 +46,7 @@ usb_addr = usb_get_addr(dip);
.in -2
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -62,4 +62,5 @@ Interface stability Committed
.TE
.SH SEE ALSO
-\fBattributes\fR(5), \fBusb_pipe_xopen\fR(9F)
+.BR attributes (7),
+.BR usb_pipe_xopen (9F)
diff --git a/usr/src/man/man9f/usb_get_alt_if.9f b/usr/src/man/man9f/usb_get_alt_if.9f
index c726aeb312..ffcfaa367a 100644
--- a/usr/src/man/man9f/usb_get_alt_if.9f
+++ b/usr/src/man/man9f/usb_get_alt_if.9f
@@ -423,7 +423,7 @@ if (usb_set_alt_if(
.in -2
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -439,5 +439,8 @@ Interface stability Committed
.TE
.SH SEE ALSO
-\fBattributes\fR(5), \fBusb_pipe_ctrl_xfer\fR(9F), \fBusb_get_dev_data\fR(9F),
-\fBusb_get_string_descr\fR(9F), \fBusb_get_cfg\fR(9F)
+.BR attributes (7),
+.BR usb_get_cfg (9F),
+.BR usb_get_dev_data (9F),
+.BR usb_get_string_descr (9F),
+.BR usb_pipe_ctrl_xfer (9F)
diff --git a/usr/src/man/man9f/usb_get_cfg.9f b/usr/src/man/man9f/usb_get_cfg.9f
index 94d2c47b6c..a60e02118a 100644
--- a/usr/src/man/man9f/usb_get_cfg.9f
+++ b/usr/src/man/man9f/usb_get_cfg.9f
@@ -275,7 +275,7 @@ information on callbacks.
.in -2
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -291,7 +291,12 @@ Interface stability Committed
.TE
.SH SEE ALSO
-\fBattributes\fR(5), \fBusb_get_alt_if\fR(9F), \fBusb_get_dev_data\fR(9F),
-\fBusb_get_string_descr\fR(9F), \fBusb_pipe_xopen\fR(9F),
-\fBusb_callback_flags\fR(9S), \fBusb_cfg_descr\fR(9S), \fBusb_ep_descr\fR(9S),
-\fBusb_if_descr\fR(9S)
+.BR attributes (7),
+.BR usb_get_alt_if (9F),
+.BR usb_get_dev_data (9F),
+.BR usb_get_string_descr (9F),
+.BR usb_pipe_xopen (9F),
+.BR usb_callback_flags (9S),
+.BR usb_cfg_descr (9S),
+.BR usb_ep_descr (9S),
+.BR usb_if_descr (9S)
diff --git a/usr/src/man/man9f/usb_get_current_frame_number.9f b/usr/src/man/man9f/usb_get_current_frame_number.9f
index daa7176e47..afe8032426 100644
--- a/usr/src/man/man9f/usb_get_current_frame_number.9f
+++ b/usr/src/man/man9f/usb_get_current_frame_number.9f
@@ -68,7 +68,7 @@ May be called from user, kernel or interrupt context.
.in -2
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -84,6 +84,9 @@ Interface stability Committed
.TE
.SH SEE ALSO
-\fBattributes\fR(5), \fBusb_alloc_isoc_req\fR(9F),
-\fBusb_get_max_pkts_per_isoc_request\fR(9F), \fBusb_pipe_isoc_xfer\fR(9F),
-\fBusb_pipe_get_max_bulk_transfer_size\fR(9F), \fBusb_isoc_request\fR(9S)
+.BR attributes (7),
+.BR usb_alloc_isoc_req (9F),
+.BR usb_get_max_pkts_per_isoc_request (9F),
+.BR usb_pipe_get_max_bulk_transfer_size (9F),
+.BR usb_pipe_isoc_xfer (9F),
+.BR usb_isoc_request (9S)
diff --git a/usr/src/man/man9f/usb_get_dev_data.9f b/usr/src/man/man9f/usb_get_dev_data.9f
index 9290fdfd51..29afbd302c 100644
--- a/usr/src/man/man9f/usb_get_dev_data.9f
+++ b/usr/src/man/man9f/usb_get_dev_data.9f
@@ -379,7 +379,7 @@ current OS device node.
.in -2
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -395,9 +395,10 @@ Interface stability Committed
.TE
.SH SEE ALSO
-\fBattributes\fR(5), \fBusb_client_attach\fR(9F), \fBusb_get_alt_if\fR(9F),
+\fBattributes\fR(7), \fBusb_client_attach\fR(9F), \fBusb_get_alt_if\fR(9F),
\fBusb_get_cfg\fR(9F), \fBusb_get_string_descr\fR(9F),
\fBusb_lookup_ep_data\fR(9F), \fBusb_parse_data\fR(9F),
\fBusb_pipe_xopen\fR(9F), \fBusb_cfg_descr\fR(9S),
-\fBusb_client_dev_data(9S)\fR, \fBusb_ep_descr\fR(9S), \fBusb_if_descr\fR(9S),
-\fBusb_string_descr\fR(9S)
+\fBusb_client_dev_data(9S)\fR, \fBusb_ep_descr\fR(9S),
+.BR usb_if_descr (9S),
+.BR usb_string_descr (9S)
diff --git a/usr/src/man/man9f/usb_get_max_pkts_per_isoc_request.9f b/usr/src/man/man9f/usb_get_max_pkts_per_isoc_request.9f
index a796a777b1..811fbf18a1 100644
--- a/usr/src/man/man9f/usb_get_max_pkts_per_isoc_request.9f
+++ b/usr/src/man/man9f/usb_get_max_pkts_per_isoc_request.9f
@@ -92,7 +92,7 @@ if (usb_pipe_isoc_xfer(pipe, isoc_req, USB_FLAGS_NOSLEEP) != USB_SUCCESS) {
.in -2
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -108,6 +108,9 @@ Interface stability Committed
.TE
.SH SEE ALSO
-\fBattributes\fR(5), \fBusb_pipe_isoc_xfer\fR(9F), \fBusb_alloc_request\fR(9F),
-\fBusb_get_current_frame_number\fR(9F), \fBusb_ep_descr\fR(9S),
-\fBusb_isoc_request\fR(9S)
+.BR attributes (7),
+.BR usb_alloc_request (9F),
+.BR usb_get_current_frame_number (9F),
+.BR usb_pipe_isoc_xfer (9F),
+.BR usb_ep_descr (9S),
+.BR usb_isoc_request (9S)
diff --git a/usr/src/man/man9f/usb_get_status.9f b/usr/src/man/man9f/usb_get_status.9f
index f7d440ce3e..7c1fc5287b 100644
--- a/usr/src/man/man9f/usb_get_status.9f
+++ b/usr/src/man/man9f/usb_get_status.9f
@@ -156,7 +156,7 @@ May be called from user or kernel context.
.in -2
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -172,5 +172,5 @@ Interface stability Committed
.TE
.SH SEE ALSO
-\fBattributes\fR(5), \fBusb_clr_feature\fR(9F), \fBusb_get_alt_if\fR(9F),
+\fBattributes\fR(7), \fBusb_clr_feature\fR(9F), \fBusb_get_alt_if\fR(9F),
\fBusb_pipe_get_state\fR(9F), \fBusb_get_cfg\fR(9F),
diff --git a/usr/src/man/man9f/usb_get_string_descr.9f b/usr/src/man/man9f/usb_get_string_descr.9f
index 98e058b5e5..0f72b12fb4 100644
--- a/usr/src/man/man9f/usb_get_string_descr.9f
+++ b/usr/src/man/man9f/usb_get_string_descr.9f
@@ -127,7 +127,7 @@ May be called from user or kernel context.
.in -2
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -143,4 +143,6 @@ Interface stability Committed
.TE
.SH SEE ALSO
-\fBattributes\fR(5), \fBusb_get_dev_data\fR(9F), \fBusb_string_descr\fR(9S)
+.BR attributes (7),
+.BR usb_get_dev_data (9F),
+.BR usb_string_descr (9S)
diff --git a/usr/src/man/man9f/usb_handle_remote_wakeup.9f b/usr/src/man/man9f/usb_handle_remote_wakeup.9f
index 3e945fe30f..9b38e81eb7 100644
--- a/usr/src/man/man9f/usb_handle_remote_wakeup.9f
+++ b/usr/src/man/man9f/usb_handle_remote_wakeup.9f
@@ -72,7 +72,7 @@ May be called from user or kernel context.
.in -2
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -88,8 +88,14 @@ Interface stability Committed
.TE
.SH SEE ALSO
-\fBattributes\fR(5), \fBpm_busy_component\fR(9F), \fBpm_idle_component\fR(9F),
-\fBpm_lower_power\fR(9F), \fBpm_raise_power\fR(9F), \fBusb_clr_feature\fR(9F),
-\fBusb_create_pm_components\fR(9F), \fBusb_get_cfg\fR(9F),
-\fBusb_get_dev_data\fR(9F), \fBusb_register_hotplug_cbs\fR(9F),
-\fBusb_cfg_descr\fR(9S)
+.BR attributes (7),
+.BR pm_busy_component (9F),
+.BR pm_idle_component (9F),
+.BR pm_lower_power (9F),
+.BR pm_raise_power (9F),
+.BR usb_clr_feature (9F),
+.BR usb_create_pm_components (9F),
+.BR usb_get_cfg (9F),
+.BR usb_get_dev_data (9F),
+.BR usb_register_hotplug_cbs (9F),
+.BR usb_cfg_descr (9S)
diff --git a/usr/src/man/man9f/usb_lookup_ep_data.9f b/usr/src/man/man9f/usb_lookup_ep_data.9f
index b3a467aae2..b9704f357b 100644
--- a/usr/src/man/man9f/usb_lookup_ep_data.9f
+++ b/usr/src/man/man9f/usb_lookup_ep_data.9f
@@ -135,7 +135,7 @@ Retrieve the maximum packet size for the first control pipe at interface 0, alt
.in -2
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -151,5 +151,9 @@ Interface stability Committed
.TE
.SH SEE ALSO
-\fBattributes\fR(5), \fBusb_get_dev_data\fR(9F), \fBusb_pipe_open\fR(9F),
-\fBusb_cfg_descr\fR(9S), \fBusb_if_descr\fR(9S), \fBusb_ep_descr\fR(9S)
+.BR attributes (7),
+.BR usb_get_dev_data (9F),
+.BR usb_pipe_open (9F),
+.BR usb_cfg_descr (9S),
+.BR usb_ep_descr (9S),
+.BR usb_if_descr (9S)
diff --git a/usr/src/man/man9f/usb_parse_data.9f b/usr/src/man/man9f/usb_parse_data.9f
index c6954bd5fa..5a08dc5b8e 100644
--- a/usr/src/man/man9f/usb_parse_data.9f
+++ b/usr/src/man/man9f/usb_parse_data.9f
@@ -125,7 +125,7 @@ May be called from user, kernel or interrupt context.
.in -2
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -141,5 +141,7 @@ Interface stability Committed
.TE
.SH SEE ALSO
-\fBattributes\fR(5), \fBusb_get_dev_data\fR(9F),
-\fBusb_get_string_descr\fR(9F), \fBusb_get_cfg\fR(9F)
+.BR attributes (7),
+.BR usb_get_cfg (9F),
+.BR usb_get_dev_data (9F),
+.BR usb_get_string_descr (9F)
diff --git a/usr/src/man/man9f/usb_pipe_bulk_xfer.9f b/usr/src/man/man9f/usb_pipe_bulk_xfer.9f
index 26a9c1164a..93e92a68bd 100644
--- a/usr/src/man/man9f/usb_pipe_bulk_xfer.9f
+++ b/usr/src/man/man9f/usb_pipe_bulk_xfer.9f
@@ -199,7 +199,7 @@ called from interrupt context only when the USB_FLAGS_SLEEP flag is clear.
.in -2
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -215,11 +215,19 @@ Interface stability Committed
.TE
.SH SEE ALSO
-\fBattributes\fR(5), \fBusb_alloc_request\fR(9F), \fBusb_get_cfg\fR(9F),
-\fBusb_get_status\fR(9F), \fBusb_pipe_ctrl_xfer\fR(9F),
-\fBusb_pipe_get_state\fR(9F), \fBusb_pipe_intr_xfer\fR(9F),
-\fBusb_pipe_isoc_xfer\fR(9F), \fBusb_pipe_xopen\fR(9F),
-\fBusb_pipe_reset\fR(9F), \fBusb_bulk_request\fR(9S),
-\fBusb_callback_flags\fR(9S), \fBusb_completion_reason\fR(9S),
-\fBusb_ctrl_request\fR(9S), \fBusb_intr_request\fR(9S),
-\fBusb_isoc_request\fR(9S)
+.BR attributes (7),
+.BR usb_alloc_request (9F),
+.BR usb_get_cfg (9F),
+.BR usb_get_status (9F),
+.BR usb_pipe_ctrl_xfer (9F),
+.BR usb_pipe_get_state (9F),
+.BR usb_pipe_intr_xfer (9F),
+.BR usb_pipe_isoc_xfer (9F),
+.BR usb_pipe_reset (9F),
+.BR usb_pipe_xopen (9F),
+.BR usb_bulk_request (9S),
+.BR usb_callback_flags (9S),
+.BR usb_completion_reason (9S),
+.BR usb_ctrl_request (9S),
+.BR usb_intr_request (9S),
+.BR usb_isoc_request (9S)
diff --git a/usr/src/man/man9f/usb_pipe_close.9f b/usr/src/man/man9f/usb_pipe_close.9f
index b1b2c0c11f..18858636e9 100644
--- a/usr/src/man/man9f/usb_pipe_close.9f
+++ b/usr/src/man/man9f/usb_pipe_close.9f
@@ -238,7 +238,7 @@ usb_pipe_close(dip, pipe, 0, close_callback, callback_arg);
.in -2
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -254,6 +254,10 @@ Interface stability Committed
.TE
.SH SEE ALSO
-\fBattributes\fR(5), \fBusb_get_status\fR(9F), \fBusb_pipe_drain_reqs\fR(9F),
-\fBusb_pipe_get_state\fR(9F), \fBusb_pipe_xopen\fR(9F),
-\fBusb_pipe_reset\fR(9F), \fBusb_callback_flags\fR(9S)
+.BR attributes (7),
+.BR usb_get_status (9F),
+.BR usb_pipe_drain_reqs (9F),
+.BR usb_pipe_get_state (9F),
+.BR usb_pipe_reset (9F),
+.BR usb_pipe_xopen (9F),
+.BR usb_callback_flags (9S)
diff --git a/usr/src/man/man9f/usb_pipe_ctrl_xfer.9f b/usr/src/man/man9f/usb_pipe_ctrl_xfer.9f
index 0bd4600208..eb75cab438 100644
--- a/usr/src/man/man9f/usb_pipe_ctrl_xfer.9f
+++ b/usr/src/man/man9f/usb_pipe_ctrl_xfer.9f
@@ -424,7 +424,7 @@ context.
.in -2
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -440,11 +440,19 @@ Interface stability Committed
.TE
.SH SEE ALSO
-\fBattributes\fR(5), \fBusb_alloc_request\fR(9F), \fBusb_get_cfg\fR(9F),
-\fBusb_get_status\fR(9F), \fBusb_pipe_bulk_xfer\fR(9F),
-\fBusb_pipe_intr_xfer\fR(9F), \fBusb_pipe_isoc_xfer\fR(9F),
-\fBusb_pipe_xopen\fR(9F), \fBusb_pipe_reset\fR(9F),
-\fBusb_pipe_get_state\fR(9F), \fBusb_bulk_request\fR(9S),
-\fBusb_callback_flags\fR(9S), \fBusb_ctrl_request\fR(9S),
-\fBusb_completion_reason\fR(9S), \fBusb_intr_request\fR(9S),
-\fBusb_isoc_request\fR(9S)
+.BR attributes (7),
+.BR usb_alloc_request (9F),
+.BR usb_get_cfg (9F),
+.BR usb_get_status (9F),
+.BR usb_pipe_bulk_xfer (9F),
+.BR usb_pipe_get_state (9F),
+.BR usb_pipe_intr_xfer (9F),
+.BR usb_pipe_isoc_xfer (9F),
+.BR usb_pipe_reset (9F),
+.BR usb_pipe_xopen (9F),
+.BR usb_bulk_request (9S),
+.BR usb_callback_flags (9S),
+.BR usb_completion_reason (9S),
+.BR usb_ctrl_request (9S),
+.BR usb_intr_request (9S),
+.BR usb_isoc_request (9S)
diff --git a/usr/src/man/man9f/usb_pipe_drain_reqs.9f b/usr/src/man/man9f/usb_pipe_drain_reqs.9f
index f1fe843cbd..9b8322e1b5 100644
--- a/usr/src/man/man9f/usb_pipe_drain_reqs.9f
+++ b/usr/src/man/man9f/usb_pipe_drain_reqs.9f
@@ -245,7 +245,7 @@ Do not call \fBusb_pipe_drain_reqs()\fR while additional requests are being
submitted by a different thread. This action can stall the calling thread of
\fBusb_pipe_drain_reqs()\fR unnecessarily.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -261,5 +261,7 @@ Interface stability Committed
.TE
.SH SEE ALSO
-\fBattributes\fR(5), \fBusb_pipe_close\fR(9F), \fBusb_pipe_reset\fR(9F),
-\fBusb_callback_flags\fR(9S)
+.BR attributes (7),
+.BR usb_pipe_close (9F),
+.BR usb_pipe_reset (9F),
+.BR usb_callback_flags (9S)
diff --git a/usr/src/man/man9f/usb_pipe_get_max_bulk_transfer_size.9f b/usr/src/man/man9f/usb_pipe_get_max_bulk_transfer_size.9f
index f47745fe2e..1316471091 100644
--- a/usr/src/man/man9f/usb_pipe_get_max_bulk_transfer_size.9f
+++ b/usr/src/man/man9f/usb_pipe_get_max_bulk_transfer_size.9f
@@ -94,7 +94,7 @@ May be called from user, kernel or interrupt context.
.in -2
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -110,5 +110,7 @@ Interface stability Committed
.TE
.SH SEE ALSO
-\fBattributes\fR(5), \fBusb_pipe_bulk_xfer\fR(9F), \fBusb_alloc_request\fR(9F),
-\fBusb_bulk_request\fR(9S)
+.BR attributes (7),
+.BR usb_alloc_request (9F),
+.BR usb_pipe_bulk_xfer (9F),
+.BR usb_bulk_request (9S)
diff --git a/usr/src/man/man9f/usb_pipe_get_state.9f b/usr/src/man/man9f/usb_pipe_get_state.9f
index bfc79c8eff..db72d0a142 100644
--- a/usr/src/man/man9f/usb_pipe_get_state.9f
+++ b/usr/src/man/man9f/usb_pipe_get_state.9f
@@ -148,7 +148,7 @@ May be called from user, kernel or interrupt context.
.in -2
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -164,7 +164,11 @@ Interface stability Committed
.TE
.SH SEE ALSO
-\fBattributes\fR(5), \fBusb_clr_feature\fR(9F), \fBusb_get_cfg\fR(9F),
-\fBusb_get_status\fR(9F), \fBusb_pipe_close\fR(9F),
-\fBusb_pipe_ctrl_xfer\fR(9F), \fBusb_pipe_xopen\fR(9F),
-\fBusb_pipe_reset\fR(9F)
+.BR attributes (7),
+.BR usb_clr_feature (9F),
+.BR usb_get_cfg (9F),
+.BR usb_get_status (9F),
+.BR usb_pipe_close (9F),
+.BR usb_pipe_ctrl_xfer (9F),
+.BR usb_pipe_reset (9F),
+.BR usb_pipe_xopen (9F)
diff --git a/usr/src/man/man9f/usb_pipe_intr_xfer.9f b/usr/src/man/man9f/usb_pipe_intr_xfer.9f
index ca4c2cdee7..c2b9112620 100644
--- a/usr/src/man/man9f/usb_pipe_intr_xfer.9f
+++ b/usr/src/man/man9f/usb_pipe_intr_xfer.9f
@@ -371,7 +371,7 @@ USB_FLAGS_SLEEP flag is clear.
.in -2
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -387,11 +387,20 @@ Interface stability Evolving
.TE
.SH SEE ALSO
-\fBattributes\fR(5), \fBusb_alloc_request\fR(9F), \fBusb_get_cfg\fR(9F),
-\fBusb_get_status\fR(9F), \fBusb_pipe_bulk_xfer\fR(9F),
-\fBusb_pipe_ctrl_xfer\fR(9F), \fBusb_pipe_get_state\fR(9F),
-\fBusb_pipe_isoc_xfer\fR(9F), \fBusb_pipe_xopen\fR(9F),
-\fBusb_pipe_reset\fR(9F), \fBusb_bulk_request\fR(9S),
-\fBusb_callback_flags\fR(9S), \fBusb_completion_reason\fR(9S),
-\fBusb_ctrl_request\fR(9S), \fBusb_ep_descr\fR(9S), \fBusb_intr_request\fR(9S),
-\fBusb_isoc_request\fR(9S)
+.BR attributes (7),
+.BR usb_alloc_request (9F),
+.BR usb_get_cfg (9F),
+.BR usb_get_status (9F),
+.BR usb_pipe_bulk_xfer (9F),
+.BR usb_pipe_ctrl_xfer (9F),
+.BR usb_pipe_get_state (9F),
+.BR usb_pipe_isoc_xfer (9F),
+.BR usb_pipe_reset (9F),
+.BR usb_pipe_xopen (9F),
+.BR usb_bulk_request (9S),
+.BR usb_callback_flags (9S),
+.BR usb_completion_reason (9S),
+.BR usb_ctrl_request (9S),
+.BR usb_ep_descr (9S),
+.BR usb_intr_request (9S),
+.BR usb_isoc_request (9S)
diff --git a/usr/src/man/man9f/usb_pipe_isoc_xfer.9f b/usr/src/man/man9f/usb_pipe_isoc_xfer.9f
index 2c5dd5a365..430d045376 100644
--- a/usr/src/man/man9f/usb_pipe_isoc_xfer.9f
+++ b/usr/src/man/man9f/usb_pipe_isoc_xfer.9f
@@ -412,7 +412,7 @@ USB_FLAGS_SLEEP flag is clear.
.in -2
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -428,12 +428,22 @@ Interface stability Evolving
.TE
.SH SEE ALSO
-\fBattributes\fR(5), \fBusb_alloc_request\fR(9F),
-\fBusb_get_current_frame_number\fR(9F), \fBusb_get_cfg\fR(9F),
-\fBusb_get_max_pkts_per_isoc_request\fR(9F), \fBusb_get_status\fR(9F),
-\fBusb_pipe_bulk_xfer\fR(9F), \fBusb_pipe_ctrl_xfer\fR(9F),
-\fBusb_pipe_get_state\fR(9F), \fBusb_pipe_intr_xfer\fR(9F),
-\fBusb_pipe_xopen\fR(9F), \fBusb_pipe_reset\fR(9F), \fBusb_bulk_request\fR(9S),
-\fBusb_callback_flags\fR(9S), \fBusb_completion_reason\fR(9S),
-\fBusb_ctrl_request\fR(9S), \fBusb_ep_descr\fR(9S), \fBusb_intr_request\fR(9S),
-\fBusb_isoc_request\fR(9S)
+.BR attributes (7),
+.BR usb_alloc_request (9F),
+.BR usb_get_cfg (9F),
+.BR usb_get_current_frame_number (9F),
+.BR usb_get_max_pkts_per_isoc_request (9F),
+.BR usb_get_status (9F),
+.BR usb_pipe_bulk_xfer (9F),
+.BR usb_pipe_ctrl_xfer (9F),
+.BR usb_pipe_get_state (9F),
+.BR usb_pipe_intr_xfer (9F),
+.BR usb_pipe_reset (9F),
+.BR usb_pipe_xopen (9F),
+.BR usb_bulk_request (9S),
+.BR usb_callback_flags (9S),
+.BR usb_completion_reason (9S),
+.BR usb_ctrl_request (9S),
+.BR usb_ep_descr (9S),
+.BR usb_intr_request (9S),
+.BR usb_isoc_request (9S)
diff --git a/usr/src/man/man9f/usb_pipe_reset.9f b/usr/src/man/man9f/usb_pipe_reset.9f
index 98008e6546..2778ece29e 100644
--- a/usr/src/man/man9f/usb_pipe_reset.9f
+++ b/usr/src/man/man9f/usb_pipe_reset.9f
@@ -259,7 +259,7 @@ usb_pipe_reset(dip, bulk_pipe, USB_FLAGS_SLEEP, NULL, NULL);
.in -2
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -275,10 +275,17 @@ Interface stability Committed
.TE
.SH SEE ALSO
-\fBattributes\fR(5), \fBusb_get_cfg\fR(9F), \fBusb_pipe_bulk_xfer\fR(9F),
-\fBusb_pipe_close\fR(9F), \fBusb_get_status\fR(9F),
-\fBusb_pipe_ctrl_xfer\fR(9F), \fBusb_pipe_drain_reqs\fR(9F),
-\fBusb_pipe_get_state\fR(9F), \fBusb_pipe_intr_xfer\fR(9F),
-\fBusb_pipe_isoc_xfer\fR(9F), \fBusb_pipe_xopen\fR(9F),
-\fBusb_pipe_stop_intr_polling\fR(9F), \fBusb_pipe_stop_isoc_polling\fR(9F),
-\fBusb_callback_flags\fR(9S)
+.BR attributes (7),
+.BR usb_get_cfg (9F),
+.BR usb_get_status (9F),
+.BR usb_pipe_bulk_xfer (9F),
+.BR usb_pipe_close (9F),
+.BR usb_pipe_ctrl_xfer (9F),
+.BR usb_pipe_drain_reqs (9F),
+.BR usb_pipe_get_state (9F),
+.BR usb_pipe_intr_xfer (9F),
+.BR usb_pipe_isoc_xfer (9F),
+.BR usb_pipe_stop_intr_polling (9F),
+.BR usb_pipe_stop_isoc_polling (9F),
+.BR usb_pipe_xopen (9F),
+.BR usb_callback_flags (9S)
diff --git a/usr/src/man/man9f/usb_pipe_set_private.9f b/usr/src/man/man9f/usb_pipe_set_private.9f
index a03ee1ec37..8c92afe980 100644
--- a/usr/src/man/man9f/usb_pipe_set_private.9f
+++ b/usr/src/man/man9f/usb_pipe_set_private.9f
@@ -125,7 +125,7 @@ May be called from user, kernel or interrupt context.
.in -2
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -141,4 +141,6 @@ Interface stability Committed
.TE
.SH SEE ALSO
-\fBattributes\fR(5), \fBusb_pipe_xopen\fR(9F), \fBusb_alloc_request\fR(9F)
+.BR attributes (7),
+.BR usb_alloc_request (9F),
+.BR usb_pipe_xopen (9F)
diff --git a/usr/src/man/man9f/usb_register_hotplug_cbs.9f b/usr/src/man/man9f/usb_register_hotplug_cbs.9f
index a69f836d8b..28604b26e4 100644
--- a/usr/src/man/man9f/usb_register_hotplug_cbs.9f
+++ b/usr/src/man/man9f/usb_register_hotplug_cbs.9f
@@ -152,7 +152,7 @@ The registered callback handlers execute in kernel context.
.in -2
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -168,5 +168,7 @@ Interface stability Committed
.TE
.SH SEE ALSO
-\fBattributes\fR(5), \fBattach\fR(9E), \fBdetach\fR(9E),
-\fBusb_get_status\fR(9F)
+.BR attributes (7),
+.BR attach (9E),
+.BR detach (9E),
+.BR usb_get_status (9F)
diff --git a/usr/src/man/man9f/usb_reset_device.9f b/usr/src/man/man9f/usb_reset_device.9f
index 236ad2fb89..0845deba1a 100644
--- a/usr/src/man/man9f/usb_reset_device.9f
+++ b/usr/src/man/man9f/usb_reset_device.9f
@@ -231,7 +231,7 @@ static int xxx_attach(dev_info_t *dip, ddi_attach_cmd_t cmd)
The \fBusb_reset_device()\fR function may be called from user or kernel
context.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -247,7 +247,7 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBattributes\fR(5), \fBusb_clr_feature\fR(9F), \fBusb_get_cfg\fR(9F),
+\fBattributes\fR(7), \fBusb_clr_feature\fR(9F), \fBusb_get_cfg\fR(9F),
\fBusb_pipe_close\fR(9F), \fBusb_pipe_xopen\fR(9F), \fBusb_pipe_reset\fR(9F),
.SH DIAGNOSTICS
The messages described below may appear on the system console as well as being
diff --git a/usr/src/man/man9f/uwritec.9f b/usr/src/man/man9f/uwritec.9f
index 6afb2792e6..1779b09ccb 100644
--- a/usr/src/man/man9f/uwritec.9f
+++ b/usr/src/man/man9f/uwritec.9f
@@ -50,7 +50,10 @@ context.
.SH SEE ALSO
.sp
.LP
-\fBuiomove\fR(9F), \fBureadc\fR(9F), \fBiovec\fR(9S), \fBuio\fR(9S)
+.BR uiomove (9F),
+.BR ureadc (9F),
+.BR iovec (9S),
+.BR uio (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9f/va_arg.9f b/usr/src/man/man9f/va_arg.9f
index 4e133c6b74..51c73e1645 100644
--- a/usr/src/man/man9f/va_arg.9f
+++ b/usr/src/man/man9f/va_arg.9f
@@ -177,7 +177,8 @@ xx_write_cmd(uchar_t *cmdp, int ncmdbytes, ...)
.in -2
.SH SEE ALSO
-\fBvcmn_err\fR(9F), \fBvsprintf\fR(9F)
+.BR vcmn_err (9F),
+.BR vsprintf (9F)
.SH NOTES
It is up to the calling routine to specify in some manner how many arguments
there are, since it is not always possible to determine the number of arguments
diff --git a/usr/src/man/man9p/ddi-forceattach.9p b/usr/src/man/man9p/ddi-forceattach.9p
index f11ef66e38..2285145d5e 100644
--- a/usr/src/man/man9p/ddi-forceattach.9p
+++ b/usr/src/man/man9p/ddi-forceattach.9p
@@ -10,7 +10,7 @@ attach/detach behavior
.SH DESCRIPTION
.sp
.LP
-Solaris device drivers are attached by \fBdevfsadm\fR(1M) and by the kernel in
+Solaris device drivers are attached by \fBdevfsadm\fR(8) and by the kernel in
response to \fBopen\fR(2) requests from applications. Drivers not currently in
use can be detached when the system experiences memory pressure. The
\fBddi-forceattach\fR and \fBddi-no-autodetach\fR properties can be used to
@@ -18,13 +18,13 @@ customize driver attach/detach behavior.
.sp
.LP
The \fBddi-forceattach\fR is an integer property, to be set globally by means
-of the \fBdriver.conf\fR(4) file. Drivers with this property set to 1 are
+of the \fBdriver.conf\fR(5) file. Drivers with this property set to 1 are
loaded and attached to all possible instances during system startup. The driver
will not be auto-detached due to system memory pressure.
.sp
.LP
The \fBddi-no-autodetach\fR is an integer property to be set globally by means
-of the \fBdriver.conf\fR(4) file or created dynamically by the driver on a
+of the \fBdriver.conf\fR(5) file or created dynamically by the driver on a
per-instance basis with \fBddi_prop_update_int\fR(9F). When this property is
set to 1, the kernel will not auto-detach driver due to system memory pressure.
.sp
@@ -32,12 +32,12 @@ set to 1, the kernel will not auto-detach driver due to system memory pressure.
Note that \fBddi-forceattach\fR implies \fBddi-no-autodetach\fR. Setting either
property to a non-integer value or an integer value not equal to 1 produces
undefined results. These properties do not prevent driver detaching in response
-to reconfiguration requests, such as executing commands \fBcfgadm\fR(1M),
-\fBmodunload\fR(1M), \fBrem_drv\fR(1M), and \fBupdate_drv\fR(1M).
+to reconfiguration requests, such as executing commands \fBcfgadm\fR(8),
+\fBmodunload\fR(8), \fBrem_drv\fR(8), and \fBupdate_drv\fR(8).
.SH SEE ALSO
.sp
.LP
-\fBdriver.conf\fR(4)
+.BR driver.conf (5)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9p/inquiry-device-type.9p b/usr/src/man/man9p/inquiry-device-type.9p
index 285efc85e3..2436be9a72 100644
--- a/usr/src/man/man9p/inquiry-device-type.9p
+++ b/usr/src/man/man9p/inquiry-device-type.9p
@@ -42,7 +42,7 @@ serial number. The serial number is typically obtained from the \fBEVPD\fR
.SH SEE ALSO
.sp
.LP
-\fBscsi_inquiry\fR(9S)
+.BR scsi_inquiry (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9p/no-involuntary-power-cycles.9p b/usr/src/man/man9p/no-involuntary-power-cycles.9p
index 24a9d1de9a..9f62fa9ab1 100644
--- a/usr/src/man/man9p/no-involuntary-power-cycles.9p
+++ b/usr/src/man/man9p/no-involuntary-power-cycles.9p
@@ -28,7 +28,7 @@ taking place, unless the device driver returns \fBDDI_SUCCESS\fR when its
.sp
.LP
The presence of \fBno-involuntary-power-cycles\fR does not prevent the system
-from being powered off due to a \fBhalt\fR(1M) or \fBuadmin\fR(1M) invocation,
+from being powered off due to a \fBhalt\fR(8) or \fBuadmin\fR(8) invocation,
except for CPR suspend.
.sp
.LP
@@ -76,7 +76,7 @@ xxattach(dev_info_t *dip, ddi_attach_cmd_t cmd)
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -92,8 +92,11 @@ Interface stability Committed
.SH SEE ALSO
.sp
.LP
-\fBattributes\fR(5), \fBpm\fR(7D), \fBattach\fR(9E), \fBdetach\fR(9E),
-\fBddi_prop_create\fR(9F)
+.BR pm (4D),
+.BR attributes (7),
+.BR attach (9E),
+.BR detach (9E),
+.BR ddi_prop_create (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9p/pm-components.9p b/usr/src/man/man9p/pm-components.9p
index c080397228..2338b52900 100644
--- a/usr/src/man/man9p/pm-components.9p
+++ b/usr/src/man/man9p/pm-components.9p
@@ -45,7 +45,7 @@ after the property has been interpreted will not be recognized.
manageable components and describes the Power Management model implemented by
the device driver. The existence of \fBpm-components\fR also indicates to the
framework that device is ready for Power Management if automatic device Power
-Management is enabled. See \fBpower.conf\fR(4).
+Management is enabled. See \fBpower.conf\fR(5).
.sp
.LP
The \fBpm-component\fR property syntax is:
@@ -134,7 +134,7 @@ pm-components="NAME=Frame Buffer", "0=Off"
.sp
.SH ATTRIBUTES
-See attributes(5) for descriptions of the following attributes:
+See attributes(7) for descriptions of the following attributes:
.sp
.sp
@@ -148,9 +148,13 @@ Interface stability Committed
.TE
.SH SEE ALSO
-\fBpower.conf\fR(4), \fBpm\fR(7D), \fBattach\fR(9E), \fBdetach\fR(9E),
-\fBddi_prop_update_string_array\fR(9F), \fBpm_busy_component\fR(9F),
-\fBpm_idle_component\fR(9F)
+.BR pm (4D),
+.BR power.conf (5),
+.BR attach (9E),
+.BR detach (9E),
+.BR ddi_prop_update_string_array (9F),
+.BR pm_busy_component (9F),
+.BR pm_idle_component (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9p/pm.9p b/usr/src/man/man9p/pm.9p
index 3dc425bb9a..34cd3892cc 100644
--- a/usr/src/man/man9p/pm.9p
+++ b/usr/src/man/man9p/pm.9p
@@ -64,7 +64,7 @@ hardware state for this device.
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -80,9 +80,13 @@ Interface stability Committed
.SH SEE ALSO
.sp
.LP
-\fBpower.conf\fR(4), \fBpm\fR(7D), \fBattach\fR(9E), \fBdetach\fR(9E),
-\fBpm_busy_component\fR(9F), \fBpm_idle_component\fR(9F),
-\fBpm-components\fR(9P)
+.BR pm (4D),
+.BR power.conf (5),
+.BR attach (9E),
+.BR detach (9E),
+.BR pm_busy_component (9F),
+.BR pm_idle_component (9F),
+.BR pm-components (9P)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9p/removable-media.9p b/usr/src/man/man9p/removable-media.9p
index 5aca8a6ff0..36c7684c55 100644
--- a/usr/src/man/man9p/removable-media.9p
+++ b/usr/src/man/man9p/removable-media.9p
@@ -14,7 +14,7 @@ drives\(emand that supports power management and expects automatic mounting of
the device via the volume manager should export the boolean (zero length)
property \fBremovable-media\fR. This property enables the system to make the
power state of the device dependent on the power state of the frame buffer and
-monitor. See the \fBpower.conf\fR(4) discussion of the
+monitor. See the \fBpower.conf\fR(5) discussion of the
\fBdevice-dependency-property\fR entry for more information.
.sp
.LP
@@ -63,7 +63,7 @@ xxattach(dev_info_t *dip, ddi_attach_cmd_t cmd)
.SH ATTRIBUTES
.sp
.LP
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -79,8 +79,11 @@ Interface stability Committed
.SH SEE ALSO
.sp
.LP
-\fBpower.conf\fR(4), \fBpm\fR(7D), \fBattach\fR(9E), \fBdetach\fR(9E),
-\fBddi_prop_create\fR(9F)
+.BR pm (4D),
+.BR power.conf (5),
+.BR attach (9E),
+.BR detach (9E),
+.BR ddi_prop_create (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9p/size.9p b/usr/src/man/man9p/size.9p
index 331e15439a..ec0dd5f4cc 100644
--- a/usr/src/man/man9p/size.9p
+++ b/usr/src/man/man9p/size.9p
@@ -96,7 +96,7 @@ The DDI property interfaces deal in signed numbers. All Size(9P) values should
be considered unsigned. It is the responsibility of the code dealing with the
property value to ensure that an unsigned interpretation occurs.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
diff --git a/usr/src/man/man9s/datab.9s b/usr/src/man/man9s/datab.9s
index 686b5fb9da..0ada44a173 100644
--- a/usr/src/man/man9s/datab.9s
+++ b/usr/src/man/man9s/datab.9s
@@ -47,7 +47,8 @@ A \fBdatab\fR structure is defined as type \fBdblk_t\fR.
.SH SEE ALSO
.sp
.LP
-\fBfree_rtn\fR(9S), \fBmsgb\fR(9S)
+.BR free_rtn (9S),
+.BR msgb (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9s/ddi_device_acc_attr.9s b/usr/src/man/man9s/ddi_device_acc_attr.9s
index b58b080032..fb2f1f2ea1 100644
--- a/usr/src/man/man9s/ddi_device_acc_attr.9s
+++ b/usr/src/man/man9s/ddi_device_acc_attr.9s
@@ -208,7 +208,7 @@ The following examples illustrate the use of device register address mapping
setup functions and different data access functions.
.LP
\fBExample 1 \fRUsing \fBddi_device_acc_attr()\fR in
-\fBddi_regs_map_setup\fR(9F)
+.BR ddi_regs_map_setup (9F)
.sp
.LP
This example demonstrates the use of the \fBddi_device_acc_attr()\fR structure
@@ -353,7 +353,7 @@ if (status & DATA_READY)
.in -2
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -367,8 +367,11 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBattributes\fR(5), \fBddi_fm_acc_err_get\fR(9F), \fBddi_get16\fR(9F),
-\fBddi_put16\fR(9F), \fBddi_regs_map_setup\fR(9F)
+.BR attributes (7),
+.BR ddi_fm_acc_err_get (9F),
+.BR ddi_get16 (9F),
+.BR ddi_put16 (9F),
+.BR ddi_regs_map_setup (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9s/ddi_dma_attr.9s b/usr/src/man/man9s/ddi_dma_attr.9s
index e73ad90b02..5d3c90fb2e 100644
--- a/usr/src/man/man9s/ddi_dma_attr.9s
+++ b/usr/src/man/man9s/ddi_dma_attr.9s
@@ -303,7 +303,7 @@ static ddi_dma_attr_t dma_attrs = {
.in -2
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -317,11 +317,15 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBattributes\fR(5), \fBddi_dma_addr_bind_handle\fR(9F),
-\fBddi_dma_alloc_handle\fR(9F), \fBddi_dma_buf_bind_handle\fR(9F),
-\fBddi_dma_burstsizes\fR(9F), \fBddi_dma_mem_alloc\fR(9F),
-\fBddi_dma_nextcookie\fR(9F), \fBddi_fm_dma_err_get\fR(9F),
-\fBddi_dma_cookie\fR(9S)
+.BR attributes (7),
+.BR ddi_dma_addr_bind_handle (9F),
+.BR ddi_dma_alloc_handle (9F),
+.BR ddi_dma_buf_bind_handle (9F),
+.BR ddi_dma_burstsizes (9F),
+.BR ddi_dma_mem_alloc (9F),
+.BR ddi_dma_nextcookie (9F),
+.BR ddi_fm_dma_err_get (9F),
+.BR ddi_dma_cookie (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9s/ddi_dma_cookie.9s b/usr/src/man/man9s/ddi_dma_cookie.9s
index 7f31b98967..4052001e4b 100644
--- a/usr/src/man/man9s/ddi_dma_cookie.9s
+++ b/usr/src/man/man9s/ddi_dma_cookie.9s
@@ -69,9 +69,14 @@ to be specified in a \fBddi_dma_attr\fR(9S) structure.
\fBdmac_type\fR contains bus-specific type bits, if appropriate. For example, a
device on a \fBPCI\fR bus has \fBPCI\fR address modifier bits placed here.
.SH SEE ALSO
-\fBpci\fR(4), \fBsbus\fR(4), \fBsysbus\fR(4),
-\fBddi_dma_addr_bind_handle\fR(9F), \fBddi_dma_buf_bind_handle\fR(9F),
-\fBddi_dma_getwin\fR(9F), \fBddi_dma_nextcookie\fR(9F), \fBddi_dma_attr\fR(9S)
+.BR pci (5),
+.BR sbus (5),
+.BR sysbus (5),
+.BR ddi_dma_addr_bind_handle (9F),
+.BR ddi_dma_buf_bind_handle (9F),
+.BR ddi_dma_getwin (9F),
+.BR ddi_dma_nextcookie (9F),
+.BR ddi_dma_attr (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9s/ddi_dmae_req.9s b/usr/src/man/man9s/ddi_dmae_req.9s
index cac2325a87..657c3387e0 100644
--- a/usr/src/man/man9s/ddi_dmae_req.9s
+++ b/usr/src/man/man9s/ddi_dmae_req.9s
@@ -198,7 +198,7 @@ default, in the \fBder_cycles\fR structure member) should use the
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -212,5 +212,7 @@ Architecture x86
.TE
.SH SEE ALSO
-\fBisa\fR(4), \fBattributes\fR(5),
-\fBddi_dmae\fR(9F), \fBddi_dma_attr\fR(9S)
+.BR isa (5),
+.BR attributes (7),
+.BR ddi_dmae (9F),
+.BR ddi_dma_attr (9S)
diff --git a/usr/src/man/man9s/ddi_fm_error.9s b/usr/src/man/man9s/ddi_fm_error.9s
index fc5a0bdbc8..f905197204 100644
--- a/usr/src/man/man9s/ddi_fm_error.9s
+++ b/usr/src/man/man9s/ddi_fm_error.9s
@@ -103,7 +103,7 @@ that can be returned from \fBpci_ereport_post()\fR
The \fBfme_dma_handle\fR is the valid \fBDMA\fR handle associated with the
error that can be returned from \fBpci_ereport_post()\fR
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -117,9 +117,13 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBattributes\fR(5), \fBddi_fm_acc_err_get\fR(9F),
-\fBddi_fm_dma_err_get\fR(9F), \fBddi_fm_handler_register\fR(9F),
-\fBddi_peek\fR(9F), \fBddi_poke\fR(9F), \fBpci_ereport_post\fR(9F)
+.BR attributes (7),
+.BR ddi_fm_acc_err_get (9F),
+.BR ddi_fm_dma_err_get (9F),
+.BR ddi_fm_handler_register (9F),
+.BR ddi_peek (9F),
+.BR ddi_poke (9F),
+.BR pci_ereport_post (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9s/ddi_idevice_cookie.9s b/usr/src/man/man9s/ddi_idevice_cookie.9s
index da7502938a..54724dde66 100644
--- a/usr/src/man/man9s/ddi_idevice_cookie.9s
+++ b/usr/src/man/man9s/ddi_idevice_cookie.9s
@@ -35,7 +35,7 @@ The \fBidev_vector\fR field contains the interrupt vector number for vectored
bus architectures such as VMEbus. The \fBidev_priority\fR field contains the
bus interrupt priority level.
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -49,7 +49,8 @@ Interface Stability Obsolete
.TE
.SH SEE ALSO
-\fBddi_add_intr\fR(9F), \fBIntro\fR(9F)
+.BR Intro (9F),
+.BR ddi_add_intr (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9s/dev_ops.9s b/usr/src/man/man9s/dev_ops.9s
index ee030b9198..584a5e23ca 100644
--- a/usr/src/man/man9s/dev_ops.9s
+++ b/usr/src/man/man9s/dev_ops.9s
@@ -154,8 +154,13 @@ int (*devo_quiesce)(dev_info_t *dip);
.in -2
.SH SEE ALSO
-\fBattach\fR(9E), \fBdetach\fR(9E), \fBgetinfo\fR(9E), \fBprobe\fR(9E),
-\fBpower\fR(9E), \fBquiesce\fR(9E), \fBnodev\fR(9F)
+.BR attach (9E),
+.BR detach (9E),
+.BR getinfo (9E),
+.BR power (9E),
+.BR probe (9E),
+.BR quiesce (9E),
+.BR nodev (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9s/devmap_callback_ctl.9s b/usr/src/man/man9s/devmap_callback_ctl.9s
index e79f5ecd18..74a91db43a 100644
--- a/usr/src/man/man9s/devmap_callback_ctl.9s
+++ b/usr/src/man/man9s/devmap_callback_ctl.9s
@@ -106,11 +106,21 @@ void (*devmap_unmap)(devmap_cookie_t dhp, void *pvtp,
.in -2
.SH SEE ALSO
-\fBexit\fR(2), \fBfork\fR(2), \fBmmap\fR(2), \fBmunmap\fR(2), \fBdevmap\fR(9E),
-\fBdevmap_access\fR(9E), \fBdevmap_dup\fR(9E), \fBdevmap_map\fR(9E),
-\fBdevmap_unmap\fR(9E), \fBddi_devmap_segmap\fR(9F),
-\fBdevmap_default_access\fR(9F), \fBdevmap_devmem_setup\fR(9F),
-\fBdevmap_do_ctxmgt\fR(9F), \fBdevmap_setup\fR(9F), \fBdevmap_umem_setup\fR(9F)
+.BR exit (2),
+.BR fork (2),
+.BR mmap (2),
+.BR munmap (2),
+.BR devmap (9E),
+.BR devmap_access (9E),
+.BR devmap_dup (9E),
+.BR devmap_map (9E),
+.BR devmap_unmap (9E),
+.BR ddi_devmap_segmap (9F),
+.BR devmap_default_access (9F),
+.BR devmap_devmem_setup (9F),
+.BR devmap_do_ctxmgt (9F),
+.BR devmap_setup (9F),
+.BR devmap_umem_setup (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9s/fmodsw.9s b/usr/src/man/man9s/fmodsw.9s
index fbcdbbe110..1bcdc8eeaf 100644
--- a/usr/src/man/man9s/fmodsw.9s
+++ b/usr/src/man/man9s/fmodsw.9s
@@ -38,7 +38,9 @@ int f_flag; /* flags */
.in -2
.SH SEE ALSO
-\fBmt-streams\fR(9F), \fBmodlstrmod\fR(9S), \fBmodule_info\fR(9S)
+.BR mt-streams (9F),
+.BR modlstrmod (9S),
+.BR module_info (9S)
.sp
.LP
\fISTREAMS Programming Guide\fR
diff --git a/usr/src/man/man9s/gld_mac_info.9s b/usr/src/man/man9s/gld_mac_info.9s
index 458d4baa03..b4ea410aab 100644
--- a/usr/src/man/man9s/gld_mac_info.9s
+++ b/usr/src/man/man9s/gld_mac_info.9s
@@ -320,7 +320,7 @@ transmit beyond \fBgldm_maxpkt\fR. For example, if an Ethernet device can
handle packets whose payload section is no greater than 1522 bytes and the
\fBgldm_maxpkt\fR is set to 1500 (as is typical for Ethernet), then
\fBgldm_margin\fR is set to 22. The registered \fBgldm_margin\fR value is
-reported in acknowledgements of the DLIOCMARGININFO ioctl (see \fBdlpi\fR(7P)).
+reported in acknowledgements of the DLIOCMARGININFO ioctl (see \fBdlpi\fR(4P)).
.RE
.sp
@@ -334,8 +334,13 @@ link state, the GLD_CAP_LINKSTATE bit should be set.
.RE
.SH SEE ALSO
-\fBgld\fR(7D), \fBdlpi\fR(7P), \fBattach\fR(9E), \fBgld\fR(9E),
-\fBddi_add_intr\fR(9F), \fBgld\fR(9F), \fBgld_stats\fR(9S)
+.BR gld (4D),
+.BR dlpi (4P),
+.BR attach (9E),
+.BR gld (9E),
+.BR ddi_add_intr (9F),
+.BR gld (9F),
+.BR gld_stats (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9s/gld_stats.9s b/usr/src/man/man9s/gld_stats.9s
index de2462b1f6..01ce0a1dc4 100644
--- a/usr/src/man/man9s/gld_stats.9s
+++ b/usr/src/man/man9s/gld_stats.9s
@@ -17,10 +17,10 @@ illumos architecture specific (illumos DDI).
The Generic LAN Driver (GLD) statistics (\fBgld_stats\fR) structure is used to
communicate statistics and state information from a GLD-based driver to GLD
when returning from a driver's \fBgldm_get_stats()\fR routine as discussed in
-\fBgld\fR(9E) and \fBgld\fR(7D). The members of this structure, filled in by
+\fBgld\fR(9E) and \fBgld\fR(4D). The members of this structure, filled in by
the GLD-based driver, are used when GLD reports the statistics. In the tables
below, the name of the statistics variable reported by GLD is noted in the
-comments. See \fBgld\fR(7D) for a more detailed description of the meaning of
+comments. See \fBgld\fR(4D) for a more detailed description of the meaning of
each statistic.
.sp
.LP
@@ -160,7 +160,10 @@ also be specified.
.RE
.SH SEE ALSO
-\fBgld\fR(7D), \fBgld\fR(9F), \fBgld\fR(9E), \fBgld_mac_info\fR(9S)
+.BR gld (4D),
+.BR gld (9E),
+.BR gld (9F),
+.BR gld_mac_info (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9s/hook_nic_event.9s b/usr/src/man/man9s/hook_nic_event.9s
index 13faa42f04..ccfff88844 100644
--- a/usr/src/man/man9s/hook_nic_event.9s
+++ b/usr/src/man/man9s/hook_nic_event.9s
@@ -120,7 +120,7 @@ new network address.
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -134,4 +134,4 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBnetinfo\fR(9F)
+.BR netinfo (9F)
diff --git a/usr/src/man/man9s/hook_pkt_event.9s b/usr/src/man/man9s/hook_pkt_event.9s
index 89d7cc9cfc..2dd44bce82 100644
--- a/usr/src/man/man9s/hook_pkt_event.9s
+++ b/usr/src/man/man9s/hook_pkt_event.9s
@@ -150,7 +150,7 @@ possible with physical in packet events.
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -164,4 +164,5 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBnet_protocol_lookup\fR(9F), \fBnetinfo\fR(9F)
+.BR net_protocol_lookup (9F),
+.BR netinfo (9F)
diff --git a/usr/src/man/man9s/hook_t.9s b/usr/src/man/man9s/hook_t.9s
index 22fefc1b36..68e45b365d 100644
--- a/usr/src/man/man9s/hook_t.9s
+++ b/usr/src/man/man9s/hook_t.9s
@@ -93,7 +93,7 @@ Place the hook after another hook on the list of hooks. The value in
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -107,4 +107,4 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBnetinfo\fR(9F)
+.BR netinfo (9F)
diff --git a/usr/src/man/man9s/kstat.9s b/usr/src/man/man9s/kstat.9s
index 35ecc7c515..66ea622b63 100644
--- a/usr/src/man/man9s/kstat.9s
+++ b/usr/src/man/man9s/kstat.9s
@@ -123,7 +123,7 @@ data structures.
.RE
.SH SEE ALSO
-\fBkstat_create\fR(9F)
+.BR kstat_create (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9s/kstat_intr.9s b/usr/src/man/man9s/kstat_intr.9s
index 1e3ee6a685..fe6a3fb69e 100644
--- a/usr/src/man/man9s/kstat_intr.9s
+++ b/usr/src/man/man9s/kstat_intr.9s
@@ -107,7 +107,7 @@ Multiple service interrupt
.RE
.SH SEE ALSO
-\fBkstat\fR(9S)
+.BR kstat (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9s/kstat_io.9s b/usr/src/man/man9s/kstat_io.9s
index 5c0c0c3adb..f9da817cf4 100644
--- a/usr/src/man/man9s/kstat_io.9s
+++ b/usr/src/man/man9s/kstat_io.9s
@@ -59,10 +59,15 @@ write operation.
Other \fBI/O\fR statistics are updated through the use of the
\fBkstat_queue\fR(9F) functions.
.SH SEE ALSO
-\fBkstat_create\fR(9F), \fBkstat_named_init\fR(9F), \fBkstat_queue\fR(9F),
-\fBkstat_runq_back_to_waitq\fR(9F), \fBkstat_runq_enter\fR(9F),
-\fBkstat_runq_exit\fR(9F), \fBkstat_waitq_enter\fR(9F),
-\fBkstat_waitq_exit\fR(9F), \fBkstat_waitq_to_runq\fR(9F)
+.BR kstat_create (9F),
+.BR kstat_named_init (9F),
+.BR kstat_queue (9F),
+.BR kstat_runq_back_to_waitq (9F),
+.BR kstat_runq_enter (9F),
+.BR kstat_runq_exit (9F),
+.BR kstat_waitq_enter (9F),
+.BR kstat_waitq_exit (9F),
+.BR kstat_waitq_to_runq (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9s/kstat_named.9s b/usr/src/man/man9s/kstat_named.9s
index 88f75683f8..ed7a47b268 100644
--- a/usr/src/man/man9s/kstat_named.9s
+++ b/usr/src/man/man9s/kstat_named.9s
@@ -41,7 +41,8 @@ The only member exposed to drivers is the \fBvalue\fR member. This field is a
union of several data types. The driver must specify which type it will use in
the call to \fBkstat_named_init()\fR.
.SH SEE ALSO
-\fBkstat_create\fR(9F), \fBkstat_named_init\fR(9F)
+.BR kstat_create (9F),
+.BR kstat_named_init (9F)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9s/linkblk.9s b/usr/src/man/man9s/linkblk.9s
index d85cfc6488..ffd9dfdb42 100644
--- a/usr/src/man/man9s/linkblk.9s
+++ b/usr/src/man/man9s/linkblk.9s
@@ -23,7 +23,7 @@ Architecture independent level 1 (DDI/DKI)
The \fBlinkblk\fR structure is used to connect a lower Stream to an upper
STREAMS multiplexor driver. This structure is used in conjunction with the
\fBI_LINK\fR, \fBI_UNLINK\fR, \fBP_LINK\fR, and \fBP_UNLINK\fR ioctl commands.
-See \fBstreamio\fR(7I). The \fBM_DATA\fR portion of the \fBM_IOCTL\fR
+See \fBstreamio\fR(4I). The \fBM_DATA\fR portion of the \fBM_IOCTL\fR
message contains the \fBlinkblk\fR structure. Note that the \fBlinkblk\fR
structure is allocated and initialized by the Stream head as a result of one
of the above ioctl commands.
@@ -41,7 +41,8 @@ int l_index; /* index for lower stream. */
.SH SEE ALSO
.sp
.LP
-\fBioctl\fR(2), \fBstreamio\fR(7I)
+.BR ioctl (2),
+.BR streamio (4I)
.sp
.LP
\fISTREAMS Programming Guide\fR
diff --git a/usr/src/man/man9s/mac_callbacks.9s b/usr/src/man/man9s/mac_callbacks.9s
index 7908ff3028..ba2d27f309 100644
--- a/usr/src/man/man9s/mac_callbacks.9s
+++ b/usr/src/man/man9s/mac_callbacks.9s
@@ -216,7 +216,7 @@ opened.
Note that most device drivers will not have a need to implement this.
It is not required for this function to be implemented for this device to be
used with
-.Xr dlpi 7P .
+.Xr dlpi 4P .
This entry point is optional.
For it to be used, the
.Sy MC_OPEN
@@ -233,7 +233,7 @@ closed.
Note that most device drivers will not have a need to implement this.
It is not required for this function to be implemented for this device to be
used with
-.Xr dlpi 7P .
+.Xr dlpi 4P .
This entry point is optional.
For it to be used, the
.Sy MC_CLOSE
@@ -322,10 +322,10 @@ or
.Sy mc_propinfo
will want to implement all three endpoints to ensure that the property
is fully integrated into user land utilities such as
-.Xr dladm 1M .
+.Xr dladm 8 .
.Sh SEE ALSO
-.Xr dladm 1M ,
-.Xr dlpi 7P ,
+.Xr dlpi 4P ,
+.Xr dladm 8 ,
.Xr mac 9E ,
.Xr mc_close 9E ,
.Xr mc_getcapab 9E ,
diff --git a/usr/src/man/man9s/modldrv.9s b/usr/src/man/man9s/modldrv.9s
index eb07caca17..aa36709110 100644
--- a/usr/src/man/man9s/modldrv.9s
+++ b/usr/src/man/man9s/modldrv.9s
@@ -57,7 +57,9 @@ Pointer to the driver's \fBdev_ops\fR(9S) structure.
.RE
.SH SEE ALSO
-\fBadd_drv\fR(1M), \fBdev_ops\fR(9S), \fBmodlinkage\fR(9S)
+.BR add_drv (8),
+.BR dev_ops (9S),
+.BR modlinkage (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9s/modlinkage.9s b/usr/src/man/man9s/modlinkage.9s
index 55d262e6cb..5524553f40 100644
--- a/usr/src/man/man9s/modlinkage.9s
+++ b/usr/src/man/man9s/modlinkage.9s
@@ -46,8 +46,12 @@ have only one linkage structure.
.RE
.SH SEE ALSO
-\fBadd_drv\fR(1M), \fB_fini\fR(9E), \fB_info\fR(9E), \fB_init\fR(9E),
-\fBmodldrv\fR(9S), \fBmodlstrmod\fR(9S)
+.BR add_drv (8),
+.BR _fini (9E),
+.BR _info (9E),
+.BR _init (9E),
+.BR modldrv (9S),
+.BR modlstrmod (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9s/modlmisc.9s b/usr/src/man/man9s/modlmisc.9s
index 56ac4f5233..a40a15ddd1 100644
--- a/usr/src/man/man9s/modlmisc.9s
+++ b/usr/src/man/man9s/modlmisc.9s
@@ -46,4 +46,5 @@ also contain other information (such as a version number).
.RE
.SH SEE ALSO
-\fBmodload\fR(1M), \fBmodlinkage\fR(9S)
+.BR modload (8),
+.BR modlinkage (9S)
diff --git a/usr/src/man/man9s/modlstrmod.9s b/usr/src/man/man9s/modlstrmod.9s
index a45f4d48bf..155f604c80 100644
--- a/usr/src/man/man9s/modlstrmod.9s
+++ b/usr/src/man/man9s/modlstrmod.9s
@@ -57,7 +57,7 @@ the kernel's class table when the module is loaded.
.RE
.SH SEE ALSO
-\fBmodload\fR(1M)
+.BR modload (8)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9s/module_info.9s b/usr/src/man/man9s/module_info.9s
index cb58fd2cc7..9cc48b128c 100644
--- a/usr/src/man/man9s/module_info.9s
+++ b/usr/src/man/man9s/module_info.9s
@@ -53,7 +53,8 @@ eight in this release.
.SH SEE ALSO
.sp
.LP
-\fBfmodsw\fR(9S), \fBqueue\fR(9S)
+.BR fmodsw (9S),
+.BR queue (9S)
.sp
.LP
\fISTREAMS Programming Guide\fR
diff --git a/usr/src/man/man9s/msgb.9s b/usr/src/man/man9s/msgb.9s
index 975b6ee756..18fb03502a 100644
--- a/usr/src/man/man9s/msgb.9s
+++ b/usr/src/man/man9s/msgb.9s
@@ -71,7 +71,7 @@ The \fBmsgb\fR structure is defined as type \fBmblk_t\fR.
.SH SEE ALSO
.sp
.LP
-\fBdatab\fR(9S)
+.BR datab (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9s/net_inject_t.9s b/usr/src/man/man9s/net_inject_t.9s
index cf62ae6711..35a9b19287 100644
--- a/usr/src/man/man9s/net_inject_t.9s
+++ b/usr/src/man/man9s/net_inject_t.9s
@@ -58,7 +58,7 @@ The physical interface where the packet will be injected.
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -72,4 +72,6 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBnet_inject\fR(9F), \fBnetinfo\fR(9F), \fBattributes\fR(5)
+.BR attributes (7),
+.BR net_inject (9F),
+.BR netinfo (9F)
diff --git a/usr/src/man/man9s/net_instance_t.9s b/usr/src/man/man9s/net_instance_t.9s
index b2ae46c6ee..c28a977db5 100644
--- a/usr/src/man/man9s/net_instance_t.9s
+++ b/usr/src/man/man9s/net_instance_t.9s
@@ -70,7 +70,7 @@ Function to be called when an instance of \fBIP\fR is being shutdown.
.RE
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -84,4 +84,5 @@ Interface Stability Committed
.TE
.SH SEE ALSO
-\fBnetinfo\fR(9F), \fBattributes\fR(5)
+.BR attributes (7),
+.BR netinfo (9F)
diff --git a/usr/src/man/man9s/qband.9s b/usr/src/man/man9s/qband.9s
index 1dc13c88a8..05f8ce2a58 100644
--- a/usr/src/man/man9s/qband.9s
+++ b/usr/src/man/man9s/qband.9s
@@ -63,7 +63,10 @@ Someone wants to write to band.
.SH SEE ALSO
.sp
.LP
-\fBstrqget\fR(9F), \fBstrqset\fR(9F), \fBmsgb\fR(9S), \fBqueue\fR(9S)
+.BR strqget (9F),
+.BR strqset (9F),
+.BR msgb (9S),
+.BR queue (9S)
.sp
.LP
\fISTREAMS Programming Guide\fR
diff --git a/usr/src/man/man9s/queue.9s b/usr/src/man/man9s/queue.9s
index dc577e6f69..6849828017 100644
--- a/usr/src/man/man9s/queue.9s
+++ b/usr/src/man/man9s/queue.9s
@@ -203,12 +203,28 @@ However, checking \fBq_next\fR for NULL can be used to distinguish a module
from a driver in code shared by both.
.RE
.SH SEE ALSO
-\fBclose\fR(9E), \fBopen\fR(9E), \fBbcanput\fR(9F), \fBcanput\fR(9F),
-\fBgetq\fR(9F), \fBinsq\fR(9F), \fBmod_install\fR(9F), \fBput\fR(9F),
-\fBputbq\fR(9F), \fBputctl\fR(9F), \fBputctl1\fR(9F), \fBputnext\fR(9F),
-\fBputq\fR(9F), \fBqprocsoff\fR(9F), \fBqprocson\fR(9F), \fBrmvq\fR(9F),
-\fBstrqget\fR(9F), \fBstrqset\fR(9F), \fBmodule_info\fR(9S), \fBmsgb\fR(9S),
-\fBqinit\fR(9S), \fBstreamtab\fR(9S)
+.BR close (9E),
+.BR open (9E),
+.BR bcanput (9F),
+.BR canput (9F),
+.BR getq (9F),
+.BR insq (9F),
+.BR mod_install (9F),
+.BR put (9F),
+.BR putbq (9F),
+.BR putctl (9F),
+.BR putctl1 (9F),
+.BR putnext (9F),
+.BR putq (9F),
+.BR qprocsoff (9F),
+.BR qprocson (9F),
+.BR rmvq (9F),
+.BR strqget (9F),
+.BR strqset (9F),
+.BR module_info (9S),
+.BR msgb (9S),
+.BR qinit (9S),
+.BR streamtab (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9s/scsi_arq_status.9s b/usr/src/man/man9s/scsi_arq_status.9s
index 77eaabb8cb..20838a02be 100644
--- a/usr/src/man/man9s/scsi_arq_status.9s
+++ b/usr/src/man/man9s/scsi_arq_status.9s
@@ -66,8 +66,10 @@ request sense command.
\fBsts_sensedata\fR contains the actual sense data if the request sense command
completed normally.
.SH SEE ALSO
-\fBscsi_ifgetcap\fR(9F), \fBscsi_init_pkt\fR(9F),
-\fBscsi_extended_sense\fR(9S), \fBscsi_pkt\fR(9S)
+.BR scsi_ifgetcap (9F),
+.BR scsi_init_pkt (9F),
+.BR scsi_extended_sense (9S),
+.BR scsi_pkt (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9s/scsi_asc_key_strings.9s b/usr/src/man/man9s/scsi_asc_key_strings.9s
index 71dd1b50e9..da1536cc24 100644
--- a/usr/src/man/man9s/scsi_asc_key_strings.9s
+++ b/usr/src/man/man9s/scsi_asc_key_strings.9s
@@ -33,7 +33,7 @@ message Points to the NULL terminated ASCII string
.in -2
.SH SEE ALSO
-\fBscsi_vu_errmsg\fR(9F)
+.BR scsi_vu_errmsg (9F)
.sp
.LP
\fIANSI Small Computer System Interface-2 (SCSI-2)\fR
diff --git a/usr/src/man/man9s/scsi_device.9s b/usr/src/man/man9s/scsi_device.9s
index 73994674c6..f7bc48047b 100644
--- a/usr/src/man/man9s/scsi_device.9s
+++ b/usr/src/man/man9s/scsi_device.9s
@@ -68,8 +68,13 @@ buffer.
\fBsd_private\fR is reserved for the use of target drivers and should generally
be used to point to target specific data structures.
.SH SEE ALSO
-\fBdetach\fR(9E), \fBprobe\fR(9E), \fBmakecom\fR(9F), \fBmutex\fR(9F),
-\fBscsi_probe\fR(9F), \fBscsi_extended_sense\fR(9S), \fBscsi_pkt\fR(9S)
+.BR detach (9E),
+.BR probe (9E),
+.BR makecom (9F),
+.BR mutex (9F),
+.BR scsi_probe (9F),
+.BR scsi_extended_sense (9S),
+.BR scsi_pkt (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9s/scsi_extended_sense.9s b/usr/src/man/man9s/scsi_extended_sense.9s
index 000a9a8589..eebc0453a5 100644
--- a/usr/src/man/man9s/scsi_extended_sense.9s
+++ b/usr/src/man/man9s/scsi_extended_sense.9s
@@ -273,7 +273,7 @@ that has failed.
valid bit (bit 7) is \fB1\fR. This field is reserved for sense keys not defined
above.
.SH SEE ALSO
-\fBscsi_device\fR(9S)
+.BR scsi_device (9S)
.sp
.LP
\fIANSI Small Computer System Interface-2 (SCSI-2)\fR
diff --git a/usr/src/man/man9s/scsi_hba_tran.9s b/usr/src/man/man9s/scsi_hba_tran.9s
index f88974829f..29365e6abb 100644
--- a/usr/src/man/man9s/scsi_hba_tran.9s
+++ b/usr/src/man/man9s/scsi_hba_tran.9s
@@ -318,15 +318,30 @@ the \fBservices.h\fR header file.
.RE
.SH SEE ALSO
-\fBtran_abort\fR(9E), \fBtran_bus_reset\fR(9E), \fBtran_destroy_pkt\fR(9E),
-\fBtran_dmafree\fR(9E), \fBtran_getcap\fR(9E), \fBtran_init_pkt\fR(9E),
-\fBtran_quiesce\fR(9E), \fBtran_reset\fR(9E), \fBtran_reset_notify\fR(9E),
-\fBtran_setcap\fR(9E), \fBtran_setup_pkt\fR(9E), \fBtran_start\fR(9E),
-\fBtran_sync_pkt\fR(9E), \fBtran_tgt_free\fR(9E), \fBtran_tgt_init\fR(9E),
-\fBtran_tgt_probe\fR(9E), \fBtran_unquiesce\fR(9E), \fBddi_dma_sync\fR(9F),
-\fBscsi_hba_attach\fR(9F), \fBscsi_hba_pkt_alloc\fR(9F),
-\fBscsi_hba_pkt_free\fR(9F), \fBscsi_probe\fR(9F), \fBscsi_device\fR(9S),
-\fBscsi_pkt\fR(9S)
+.BR tran_abort (9E),
+.BR tran_bus_reset (9E),
+.BR tran_destroy_pkt (9E),
+.BR tran_dmafree (9E),
+.BR tran_getcap (9E),
+.BR tran_init_pkt (9E),
+.BR tran_quiesce (9E),
+.BR tran_reset (9E),
+.BR tran_reset_notify (9E),
+.BR tran_setcap (9E),
+.BR tran_setup_pkt (9E),
+.BR tran_start (9E),
+.BR tran_sync_pkt (9E),
+.BR tran_tgt_free (9E),
+.BR tran_tgt_init (9E),
+.BR tran_tgt_probe (9E),
+.BR tran_unquiesce (9E),
+.BR ddi_dma_sync (9F),
+.BR scsi_hba_attach (9F),
+.BR scsi_hba_pkt_alloc (9F),
+.BR scsi_hba_pkt_free (9F),
+.BR scsi_probe (9F),
+.BR scsi_device (9S),
+.BR scsi_pkt (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9s/scsi_inquiry.9s b/usr/src/man/man9s/scsi_inquiry.9s
index b56fce4e99..ebfe9298bd 100644
--- a/usr/src/man/man9s/scsi_inquiry.9s
+++ b/usr/src/man/man9s/scsi_inquiry.9s
@@ -367,7 +367,7 @@ management.
.sp
.LP
\fBinq_encserv\fR, if set, indicates that the device contains an embedded
-enclosure services component (\fBses\fR(7D)).
+enclosure services component (\fBses\fR(4D)).
.sp
.LP
\fBinq_dualp\fR, if set, indicates that the \fBSCSI\fR target device supports
@@ -425,7 +425,8 @@ selection.
.LP
\fBinq_ius\fR the \fBSPI3\fR target device supports information unit transfers.
.SH SEE ALSO
-\fBscsi_probe\fR(9F), \fBscsi_device\fR(9S)
+.BR scsi_probe (9F),
+.BR scsi_device (9S)
.sp
.LP
\fIANSI Small Computer System Interface-2 (SCSI-2)\fR
diff --git a/usr/src/man/man9s/scsi_pkt.9s b/usr/src/man/man9s/scsi_pkt.9s
index 208ae10eee..385075076a 100644
--- a/usr/src/man/man9s/scsi_pkt.9s
+++ b/usr/src/man/man9s/scsi_pkt.9s
@@ -682,9 +682,13 @@ Command timed out.
.RE
.SH SEE ALSO
-\fBtran_init_pkt\fR(9E), \fBtran_setup_pkt\fR(9E), \fBscsi_arq_status\fR(9S),
-\fBscsi_init_pkt\fR(9F), \fBscsi_transport\fR(9F), \fBscsi_status\fR(9S),
-\fBscsi_hba_pkt_comp\fR(9F)
+.BR tran_init_pkt (9E),
+.BR tran_setup_pkt (9E),
+.BR scsi_hba_pkt_comp (9F),
+.BR scsi_init_pkt (9F),
+.BR scsi_transport (9F),
+.BR scsi_arq_status (9S),
+.BR scsi_status (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9s/scsi_status.9s b/usr/src/man/man9s/scsi_status.9s
index d32a1decfb..b82a74fee7 100644
--- a/usr/src/man/man9s/scsi_status.9s
+++ b/usr/src/man/man9s/scsi_status.9s
@@ -165,8 +165,10 @@ it is returned when the command queue in the target is full.
.RE
.SH SEE ALSO
-\fBscsi_ifgetcap\fR(9F), \fBscsi_init_pkt\fR(9F),
-\fBscsi_extended_sense\fR(9S), \fBscsi_pkt\fR(9S)
+.BR scsi_ifgetcap (9F),
+.BR scsi_init_pkt (9F),
+.BR scsi_extended_sense (9S),
+.BR scsi_pkt (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9s/streamtab.9s b/usr/src/man/man9s/streamtab.9s
index 82d479a496..342b91f488 100644
--- a/usr/src/man/man9s/streamtab.9s
+++ b/usr/src/man/man9s/streamtab.9s
@@ -46,7 +46,7 @@ struct qinit *st_muxwinit; /* lower write QUEUE*/
.SH SEE ALSO
.sp
.LP
-\fBqinit\fR(9S)
+.BR qinit (9S)
.sp
.LP
\fISTREAMS Programming Guide\fR
diff --git a/usr/src/man/man9s/stroptions.9s b/usr/src/man/man9s/stroptions.9s
index 91954e0a9a..41bc735bc0 100644
--- a/usr/src/man/man9s/stroptions.9s
+++ b/usr/src/man/man9s/stroptions.9s
@@ -271,7 +271,8 @@ Non-persistent write errors.
.SH SEE ALSO
.sp
.LP
-\fBread\fR(2), \fBstreamio\fR(7I)
+.BR read (2),
+.BR streamio (4I)
.sp
.LP
\fISTREAMS Programming Guide\fR
diff --git a/usr/src/man/man9s/tuple.9s b/usr/src/man/man9s/tuple.9s
index 13844612ba..fb9b300c29 100644
--- a/usr/src/man/man9s/tuple.9s
+++ b/usr/src/man/man9s/tuple.9s
@@ -213,14 +213,22 @@ the \fBDesiredTuple\fR field is returned.
.RE
.SH SEE ALSO
-\fBcsx_GetFirstTuple\fR(9F), \fBcsx_GetTupleData\fR(9F),
-\fBcsx_ParseTuple\fR(9F), \fBcsx_Parse_CISTPL_BATTERY\fR(9F),
-\fBcsx_Parse_CISTPL_BYTEORDER\fR(9F), \fBcsx_Parse_CISTPL_CFTABLE_ENTRY\fR(9F),
-\fBcsx_Parse_CISTPL_CONFIG\fR(9F), \fBcsx_Parse_CISTPL_DATE\fR(9F),
-\fBcsx_Parse_CISTPL_DEVICE\fR(9F), \fBcsx_Parse_CISTPL_FUNCE\fR(9F),
-\fBcsx_Parse_CISTPL_FUNCID\fR(9F), \fBcsx_Parse_CISTPL_JEDEC_C\fR(9F),
-\fBcsx_Parse_CISTPL_MANFID\fR(9F), \fBcsx_Parse_CISTPL_SPCL\fR(9F),
-\fBcsx_Parse_CISTPL_VERS_1\fR(9F), \fBcsx_Parse_CISTPL_VERS_2\fR(9F)
+.BR csx_GetFirstTuple (9F),
+.BR csx_GetTupleData (9F),
+.BR csx_ParseTuple (9F),
+.BR csx_Parse_CISTPL_BATTERY (9F),
+.BR csx_Parse_CISTPL_BYTEORDER (9F),
+.BR csx_Parse_CISTPL_CFTABLE_ENTRY (9F),
+.BR csx_Parse_CISTPL_CONFIG (9F),
+.BR csx_Parse_CISTPL_DATE (9F),
+.BR csx_Parse_CISTPL_DEVICE (9F),
+.BR csx_Parse_CISTPL_FUNCE (9F),
+.BR csx_Parse_CISTPL_FUNCID (9F),
+.BR csx_Parse_CISTPL_JEDEC_C (9F),
+.BR csx_Parse_CISTPL_MANFID (9F),
+.BR csx_Parse_CISTPL_SPCL (9F),
+.BR csx_Parse_CISTPL_VERS_1 (9F),
+.BR csx_Parse_CISTPL_VERS_2 (9F)
.sp
.LP
\fIPC Card 95 Standard\fR, PCMCIA/JEIDA
diff --git a/usr/src/man/man9s/uio.9s b/usr/src/man/man9s/uio.9s
index 867cdda360..e34b3d7d60 100644
--- a/usr/src/man/man9s/uio.9s
+++ b/usr/src/man/man9s/uio.9s
@@ -69,9 +69,15 @@ initialized by the driver and not written to afterward.
.SH SEE ALSO
.sp
.LP
-\fBaread\fR(9E), \fBawrite\fR(9E), \fBread\fR(9E), \fBwrite\fR(9E),
-\fBbzero\fR(9F), \fBkmem_zalloc\fR(9F), \fBuiomove\fR(9F), \fBcb_ops\fR(9S),
-\fBiovec\fR(9S)
+.BR aread (9E),
+.BR awrite (9E),
+.BR read (9E),
+.BR write (9E),
+.BR bzero (9F),
+.BR kmem_zalloc (9F),
+.BR uiomove (9F),
+.BR cb_ops (9S),
+.BR iovec (9S)
.sp
.LP
\fIWriting Device Drivers\fR
diff --git a/usr/src/man/man9s/usb_bulk_req.9s b/usr/src/man/man9s/usb_bulk_req.9s
index be8fd8bf0d..98d05c44c0 100644
--- a/usr/src/man/man9s/usb_bulk_req.9s
+++ b/usr/src/man/man9s/usb_bulk_req.9s
@@ -237,7 +237,7 @@ summarize recovery actions taken and errors encountered during recovery. See
All usb request types share the same callback handling. See
\fBusb_callback_flags\fR(9S) for details.
.SH ATTRIBUTES
-See attributes(5) for descriptions of the following attributes:
+See attributes(7) for descriptions of the following attributes:
.sp
.sp
@@ -253,9 +253,15 @@ Interface stability Committed
.TE
.SH SEE ALSO
-\fBusb_alloc_request\fR(9F), \fBusb_pipe_bulk_xfer\fR(9F),
-\fBusb_pipe_ctrl_xfer\fR(9F), \fBusb_pipe_get_max_bulk_transfer_size\fR(9F),
-\fBusb_pipe_intr_xfer\fR(9F), \fBusb_pipe_isoc_xfer\fR(9F),
-\fBusb_callback_flags\fR(9S), \fBusb_completion_reason\fR(9S),
-\fBusb_ctrl_request\fR(9S), \fBusb_intr_request\fR(9S),
-\fBusb_isoc_request\fR(9S), \fBusb_request_attributes\fR(9S)
+.BR usb_alloc_request (9F),
+.BR usb_pipe_bulk_xfer (9F),
+.BR usb_pipe_ctrl_xfer (9F),
+.BR usb_pipe_get_max_bulk_transfer_size (9F),
+.BR usb_pipe_intr_xfer (9F),
+.BR usb_pipe_isoc_xfer (9F),
+.BR usb_callback_flags (9S),
+.BR usb_completion_reason (9S),
+.BR usb_ctrl_request (9S),
+.BR usb_intr_request (9S),
+.BR usb_isoc_request (9S),
+.BR usb_request_attributes (9S)
diff --git a/usr/src/man/man9s/usb_callback_flags.9s b/usr/src/man/man9s/usb_callback_flags.9s
index d81ce21873..664041c476 100644
--- a/usr/src/man/man9s/usb_callback_flags.9s
+++ b/usr/src/man/man9s/usb_callback_flags.9s
@@ -273,8 +273,11 @@ type of request (ctrl, intr, isoc or bulk.)
.SS "COMMAND COMPLETION CALLBACKS"
Calls to some non-transfer functions can be set up for callback notification.
-These include \fBusb_pipe_close\fR(9F), \fBusb_pipe_reset\fR(9F),
-\fBusb_pipe_drain_reqs\fR(9F), \fBusb_set_cfg\fR(9F), \fBusb_set_alt_if\fR(9F)
+These include \fBusb_pipe_close\fR(9F),
+.BR usb_pipe_reset (9F),
+.BR usb_pipe_drain_reqs (9F),
+.BR usb_set_cfg (9F),
+.BR usb_set_alt_if (9F)
and \fBusb_clr_feature\fR(9F).
.sp
.LP
@@ -308,7 +311,7 @@ The callback flags can be checked when rval indicates failure status. Just as
for transfer completion callbacks, callback flags return additional information
on execution events.
.SH ATTRIBUTES
-See attributes(5) for descriptions of the following attributes:
+See attributes(7) for descriptions of the following attributes:
.sp
.sp
@@ -324,8 +327,12 @@ Interface stability Committed
.TE
.SH SEE ALSO
-\fBusb_alloc_request\fR(9F), \fBusb_pipe_bulk_xfer\fR(9F),
-\fBusb_pipe_ctrl_xfer\fR(9F), \fBusb_pipe_intr_xfer\fR(9F),
-\fBusb_pipe_isoc_xfer\fR(9F), \fBusb_bulk_request\fR(9S),
-\fBusb_ctrl_request\fR(9S), \fBusb_intr_request\fR(9S),
-\fBusb_isoc_request\fR(9S)
+.BR usb_alloc_request (9F),
+.BR usb_pipe_bulk_xfer (9F),
+.BR usb_pipe_ctrl_xfer (9F),
+.BR usb_pipe_intr_xfer (9F),
+.BR usb_pipe_isoc_xfer (9F),
+.BR usb_bulk_request (9S),
+.BR usb_ctrl_request (9S),
+.BR usb_intr_request (9S),
+.BR usb_isoc_request (9S)
diff --git a/usr/src/man/man9s/usb_cfg_descr.9s b/usr/src/man/man9s/usb_cfg_descr.9s
index 8d28a372db..68b6ede805 100644
--- a/usr/src/man/man9s/usb_cfg_descr.9s
+++ b/usr/src/man/man9s/usb_cfg_descr.9s
@@ -61,7 +61,7 @@ Configuration descriptors define the following bmAttributes:
.in -2
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -77,8 +77,16 @@ Interface stability Committed
.TE
.SH SEE ALSO
-\fBattributes\fR(5), \fBusb_get_alt_if\fR(9F), \fBusb_get_cfg\fR(9F),
-\fBusb_get_dev_data\fR(9F), \fBusb_get_string_descr\fR(9F),
-\fBusb_parse_data\fR(9F), \fBusb_ctrl_request\fR(9S), \fBusb_dev_descr\fR(9S),
-\fBusb_dev_qlf_descr\fR(9S), \fBusb_ep_descr\fR(9S), \fBusb_if_descr\fR(9S),
-\fBusb_other_speed_cfg_descr\fR(9S), \fBusb_string_descr\fR(9S)
+.BR attributes (7),
+.BR usb_get_alt_if (9F),
+.BR usb_get_cfg (9F),
+.BR usb_get_dev_data (9F),
+.BR usb_get_string_descr (9F),
+.BR usb_parse_data (9F),
+.BR usb_ctrl_request (9S),
+.BR usb_dev_descr (9S),
+.BR usb_dev_qlf_descr (9S),
+.BR usb_ep_descr (9S),
+.BR usb_if_descr (9S),
+.BR usb_other_speed_cfg_descr (9S),
+.BR usb_string_descr (9S)
diff --git a/usr/src/man/man9s/usb_client_dev_data.9s b/usr/src/man/man9s/usb_client_dev_data.9s
index dc9bbd4b90..78b7a6d920 100644
--- a/usr/src/man/man9s/usb_client_dev_data.9s
+++ b/usr/src/man/man9s/usb_client_dev_data.9s
@@ -269,7 +269,7 @@ usb_client_dev_data_t *reg_data:
.in -2
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -285,7 +285,14 @@ Interface stability Committed
.TE
.SH SEE ALSO
-\fBusb_get_alt_if\fR(9F), \fBusb_get_cfg\fR(9F), \fBusb_get_dev_data\fR(9F),
-\fBusb_get_string_descr\fR(9F), \fBusb_lookup_ep_data\fR(9F),
-\fBusb_parse_data\fR(9F), \fBusb_pipe_open\fR(9F), \fBusb_cfg_descr\fR(9S),
-\fBusb_if_descr\fR(9S), \fBusb_ep_descr\fR(9S), \fBusb_string_descr\fR(9S)
+.BR usb_get_alt_if (9F),
+.BR usb_get_cfg (9F),
+.BR usb_get_dev_data (9F),
+.BR usb_get_string_descr (9F),
+.BR usb_lookup_ep_data (9F),
+.BR usb_parse_data (9F),
+.BR usb_pipe_open (9F),
+.BR usb_cfg_descr (9S),
+.BR usb_ep_descr (9S),
+.BR usb_if_descr (9S),
+.BR usb_string_descr (9S)
diff --git a/usr/src/man/man9s/usb_completion_reason.9s b/usr/src/man/man9s/usb_completion_reason.9s
index a44247c03f..ff11b92e5d 100644
--- a/usr/src/man/man9s/usb_completion_reason.9s
+++ b/usr/src/man/man9s/usb_completion_reason.9s
@@ -230,7 +230,7 @@ hardware error.
.RE
.SH ATTRIBUTES
-See attributes(5) for descriptions of the following attributes:
+See attributes(7) for descriptions of the following attributes:
.sp
.sp
@@ -246,8 +246,12 @@ Interface stability Committed
.TE
.SH SEE ALSO
-\fBusb_alloc_request\fR(9F), \fBusb_pipe_bulk_xfer\fR(9F),
-\fBusb_pipe_ctrl_xfer\fR(9F), \fBusb_pipe_intr_xfer\fR(9F),
-\fBusb_pipe_isoc_xfer\fR(9F), \fBusb_bulk_request\fR(9S),
-\fBusb_ctrl_request\fR(9S), \fBusb_intr_request\fR(9S),
-\fBusb_isoc_request\fR(9S)
+.BR usb_alloc_request (9F),
+.BR usb_pipe_bulk_xfer (9F),
+.BR usb_pipe_ctrl_xfer (9F),
+.BR usb_pipe_intr_xfer (9F),
+.BR usb_pipe_isoc_xfer (9F),
+.BR usb_bulk_request (9S),
+.BR usb_ctrl_request (9S),
+.BR usb_intr_request (9S),
+.BR usb_isoc_request (9S)
diff --git a/usr/src/man/man9s/usb_ctrl_req.9s b/usr/src/man/man9s/usb_ctrl_req.9s
index cb9b9c9f3b..8ad0fcb84f 100644
--- a/usr/src/man/man9s/usb_ctrl_req.9s
+++ b/usr/src/man/man9s/usb_ctrl_req.9s
@@ -151,7 +151,7 @@ Unicode language ID, used as wIndex for USB_REQ_SET/GET_DESCRIPTOR
.in -2
.SH ATTRIBUTES
-See attributes(5) for descriptions of the following attributes:
+See attributes(7) for descriptions of the following attributes:
.sp
.sp
@@ -167,9 +167,14 @@ Interface stability Committed
.TE
.SH SEE ALSO
-\fBusb_alloc_request\fR(9F), \fBusb_pipe_bulk_xfer\fR(9F),
-\fBusb_pipe_ctrl_xfer\fR(9F), \fBusb_pipe_intr_xfer\fR(9F),
-\fBusb_pipe_isoc_xfer\fR(9F), \fBusb_bulk_request\fR(9S),
-\fBusb_callback_flags\fR(9S), \fBusb_completion_reason\fR(9S),
-\fBusb_intr_request\fR(9S), \fBusb_isoc_request\fR(9S),
-\fBusb_request_attributes\fR(9S)
+.BR usb_alloc_request (9F),
+.BR usb_pipe_bulk_xfer (9F),
+.BR usb_pipe_ctrl_xfer (9F),
+.BR usb_pipe_intr_xfer (9F),
+.BR usb_pipe_isoc_xfer (9F),
+.BR usb_bulk_request (9S),
+.BR usb_callback_flags (9S),
+.BR usb_completion_reason (9S),
+.BR usb_intr_request (9S),
+.BR usb_isoc_request (9S),
+.BR usb_request_attributes (9S)
diff --git a/usr/src/man/man9s/usb_dev_descr.9s b/usr/src/man/man9s/usb_dev_descr.9s
index 3d800ca2d7..5f0492bb35 100644
--- a/usr/src/man/man9s/usb_dev_descr.9s
+++ b/usr/src/man/man9s/usb_dev_descr.9s
@@ -94,7 +94,7 @@ A device descriptor contains the following fields:
.in -2
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -110,8 +110,16 @@ Interface stability Committed
.TE
.SH SEE ALSO
-\fBattributes\fR(5), \fBusb_get_alt_if\fR(9F), \fBusb_get_cfg\fR(9F),
-\fBusb_get_dev_data\fR(9F), \fBusb_get_string_descr\fR(9F),
-\fBusb_parse_data\fR(9F), \fBusb_cfg_descr\fR(9S), \fBusb_ctrl_request\fR(9S),
-\fBusb_dev_qlf_descr\fR(9S), \fBusb_ep_descr\fR(9S), \fBusb_if_descr\fR(9S),
-\fBusb_other_speed_cfg_descr\fR(9S), \fBusb_string_descr\fR(9S)
+.BR attributes (7),
+.BR usb_get_alt_if (9F),
+.BR usb_get_cfg (9F),
+.BR usb_get_dev_data (9F),
+.BR usb_get_string_descr (9F),
+.BR usb_parse_data (9F),
+.BR usb_cfg_descr (9S),
+.BR usb_ctrl_request (9S),
+.BR usb_dev_qlf_descr (9S),
+.BR usb_ep_descr (9S),
+.BR usb_if_descr (9S),
+.BR usb_other_speed_cfg_descr (9S),
+.BR usb_string_descr (9S)
diff --git a/usr/src/man/man9s/usb_dev_qlf_descr.9s b/usr/src/man/man9s/usb_dev_qlf_descr.9s
index 4e7bfc1ab6..26e18f1e76 100644
--- a/usr/src/man/man9s/usb_dev_qlf_descr.9s
+++ b/usr/src/man/man9s/usb_dev_qlf_descr.9s
@@ -58,7 +58,7 @@ uint8_t bReserved Reserved.
.in -2
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -74,8 +74,16 @@ Interface stability Committed
.TE
.SH SEE ALSO
-\fBattributes\fR(5), \fBusb_get_alt_if\fR(9F), \fBusb_get_cfg\fR(9F),
-\fBusb_get_dev_data\fR(9F), \fBusb_get_string_descr\fR(9F),
-\fBusb_parse_data\fR(9F), \fBusb_ctrl_request\fR(9S), \fBusb_cfg_descr\fR(9S),
-\fBusb_dev_descr\fR(9S), \fBusb_ep_descr\fR(9S), \fBusb_if_descr\fR(9S),
-\fBusb_other_speed_cfg_descr\fR(9S), \fBusb_string_descr\fR(9S)
+.BR attributes (7),
+.BR usb_get_alt_if (9F),
+.BR usb_get_cfg (9F),
+.BR usb_get_dev_data (9F),
+.BR usb_get_string_descr (9F),
+.BR usb_parse_data (9F),
+.BR usb_cfg_descr (9S),
+.BR usb_ctrl_request (9S),
+.BR usb_dev_descr (9S),
+.BR usb_ep_descr (9S),
+.BR usb_if_descr (9S),
+.BR usb_other_speed_cfg_descr (9S),
+.BR usb_string_descr (9S)
diff --git a/usr/src/man/man9s/usb_ep_descr.9s b/usr/src/man/man9s/usb_ep_descr.9s
index bfe07d2028..e1145046fe 100644
--- a/usr/src/man/man9s/usb_ep_descr.9s
+++ b/usr/src/man/man9s/usb_ep_descr.9s
@@ -115,7 +115,7 @@ is 2**(value-1). See Section 9.6.6 of the USB 2.0 specification.
.in -2
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -131,8 +131,16 @@ Interface stability Committed
.TE
.SH SEE ALSO
-\fBattributes\fR(5), \fBusb_get_alt_if\fR(9F), \fBusb_get_cfg\fR(9F),
-\fBusb_get_dev_data\fR(9F), \fBusb_get_string_descr\fR(9F),
-\fBusb_parse_data\fR(9F), \fBusb_cfg_descr\fR(9S), \fBusb_ctrl_request\fR(9S),
-\fBusb_dev_descr\fR(9S), \fBusb_dev_qlf_descr\fR(9S), \fBusb_if_descr\fR(9S),
-\fBusb_other_speed_cfg_descr\fR(9S), \fBusb_string_descr\fR(9S)
+.BR attributes (7),
+.BR usb_get_alt_if (9F),
+.BR usb_get_cfg (9F),
+.BR usb_get_dev_data (9F),
+.BR usb_get_string_descr (9F),
+.BR usb_parse_data (9F),
+.BR usb_cfg_descr (9S),
+.BR usb_ctrl_request (9S),
+.BR usb_dev_descr (9S),
+.BR usb_dev_qlf_descr (9S),
+.BR usb_if_descr (9S),
+.BR usb_other_speed_cfg_descr (9S),
+.BR usb_string_descr (9S)
diff --git a/usr/src/man/man9s/usb_if_descr.9s b/usr/src/man/man9s/usb_if_descr.9s
index 40c56d8ed0..06b59e28df 100644
--- a/usr/src/man/man9s/usb_if_descr.9s
+++ b/usr/src/man/man9s/usb_if_descr.9s
@@ -98,7 +98,7 @@ values are as follows:
.in -2
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -114,8 +114,16 @@ Interface stability Committed
.TE
.SH SEE ALSO
-\fBattributes\fR(5), \fBusb_get_alt_if\fR(9F), \fBusb_get_cfg\fR(9F),
-\fBusb_get_dev_data\fR(9F), \fBusb_get_string_descr\fR(9F),
-\fBusb_parse_data\fR(9F), \fBusb_cfg_descr\fR(9S), \fBusb_ctrl_request\fR(9S),
-\fBusb_dev_descr\fR(9S), \fBusb_dev_qlf_descr\fR(9S), \fBusb_ep_descr\fR(9S),
-\fBusb_other_speed_cfg_descr\fR(9S), \fBusb_string_descr\fR(9S)
+.BR attributes (7),
+.BR usb_get_alt_if (9F),
+.BR usb_get_cfg (9F),
+.BR usb_get_dev_data (9F),
+.BR usb_get_string_descr (9F),
+.BR usb_parse_data (9F),
+.BR usb_cfg_descr (9S),
+.BR usb_ctrl_request (9S),
+.BR usb_dev_descr (9S),
+.BR usb_dev_qlf_descr (9S),
+.BR usb_ep_descr (9S),
+.BR usb_other_speed_cfg_descr (9S),
+.BR usb_string_descr (9S)
diff --git a/usr/src/man/man9s/usb_intr_req.9s b/usr/src/man/man9s/usb_intr_req.9s
index 73dab8ef3d..070058cd89 100644
--- a/usr/src/man/man9s/usb_intr_req.9s
+++ b/usr/src/man/man9s/usb_intr_req.9s
@@ -258,7 +258,7 @@ constraints and caveats:
.in -2
.SH ATTRIBUTES
-See attributes(5) for descriptions of the following attributes:
+See attributes(7) for descriptions of the following attributes:
.sp
.sp
@@ -274,9 +274,14 @@ Interface stability Committed
.TE
.SH SEE ALSO
-\fBusb_alloc_request\fR(9F), \fBusb_pipe_ctrl_xfer\fR(9F),
-\fBusb_pipe_bulk_xfer\fR(9F), \fBusb_pipe_intr_xfer\fR(9F),
-\fBusb_pipe_isoc_xfer\fR(9F), \fBusb_bulk_request\fR(9S),
-\fBusb_callback_flags\fR(9S), \fBusb_completion_reason\fR(9S),
-\fBusb_ctrl_request\fR(9S), \fBusb_isoc_request\fR(9S),
-\fBusb_request_attributes\fR(9S)
+.BR usb_alloc_request (9F),
+.BR usb_pipe_bulk_xfer (9F),
+.BR usb_pipe_ctrl_xfer (9F),
+.BR usb_pipe_intr_xfer (9F),
+.BR usb_pipe_isoc_xfer (9F),
+.BR usb_bulk_request (9S),
+.BR usb_callback_flags (9S),
+.BR usb_completion_reason (9S),
+.BR usb_ctrl_request (9S),
+.BR usb_isoc_request (9S),
+.BR usb_request_attributes (9S)
diff --git a/usr/src/man/man9s/usb_isoc_req.9s b/usr/src/man/man9s/usb_isoc_req.9s
index 0649cbc84d..345ffe3440 100644
--- a/usr/src/man/man9s/usb_isoc_req.9s
+++ b/usr/src/man/man9s/usb_isoc_req.9s
@@ -228,7 +228,7 @@ usb_callback_flags(9s) for a description of use and operation.
.in -2
.SH ATTRIBUTES
-See attributes(5) for descriptions of the following attributes:
+See attributes(7) for descriptions of the following attributes:
.sp
.sp
@@ -244,11 +244,17 @@ Interface stability Committed
.TE
.SH SEE ALSO
-\fBattributes\fR(5), \fBusb_alloc_request\fR(9F),
-\fBusb_get_current_frame_number\fR(9F),
-\fBusb_get_max_pkts_per_isoc_request\fR(9F), \fBusb_pipe_bulk_xfer\fR(9F),
-\fBusb_pipe_ctrl_xfer\fR(9F), \fBusb_pipe_intr_xfer\fR(9F),
-\fBusb_pipe_isoc_xfer\fR(9F), \fBusb_bulk_request\fR(9S),
-\fBusb_callback_flags\fR(9S), \fBusb_completion_reason\fR(9S),
-\fBusb_ctrl_request\fR(9S), \fBusb_intr_request\fR(9S),
-\fBusb_request_attributes\fR(9S)
+.BR attributes (7),
+.BR usb_alloc_request (9F),
+.BR usb_get_current_frame_number (9F),
+.BR usb_get_max_pkts_per_isoc_request (9F),
+.BR usb_pipe_bulk_xfer (9F),
+.BR usb_pipe_ctrl_xfer (9F),
+.BR usb_pipe_intr_xfer (9F),
+.BR usb_pipe_isoc_xfer (9F),
+.BR usb_bulk_request (9S),
+.BR usb_callback_flags (9S),
+.BR usb_completion_reason (9S),
+.BR usb_ctrl_request (9S),
+.BR usb_intr_request (9S),
+.BR usb_request_attributes (9S)
diff --git a/usr/src/man/man9s/usb_other_speed_cfg_descr.9s b/usr/src/man/man9s/usb_other_speed_cfg_descr.9s
index 0379503e48..93b3c7f6a8 100644
--- a/usr/src/man/man9s/usb_other_speed_cfg_descr.9s
+++ b/usr/src/man/man9s/usb_other_speed_cfg_descr.9s
@@ -59,7 +59,7 @@ uint8_t bMaxPower Maximum power consumption
.in -2
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -75,7 +75,13 @@ Interface stability Committed
.TE
.SH SEE ALSO
-\fBattributes\fR(5), \fBusb_get_alt_if\fR(9F), \fBusb_get_cfg\fR(9F),
-\fBusb_get_dev_data\fR(9F), \fBusb_get_string_descr\fR(9F),
-\fBusb_parse_data\fR(9F), \fBusb_cfg_descr\fR(9S), \fBusb_ctrl_request\fR(9S),
-\fBusb_dev_descr\fR(9S), \fBusb_dev_qlf_descr\fR(9S)
+.BR attributes (7),
+.BR usb_get_alt_if (9F),
+.BR usb_get_cfg (9F),
+.BR usb_get_dev_data (9F),
+.BR usb_get_string_descr (9F),
+.BR usb_parse_data (9F),
+.BR usb_cfg_descr (9S),
+.BR usb_ctrl_request (9S),
+.BR usb_dev_descr (9S),
+.BR usb_dev_qlf_descr (9S)
diff --git a/usr/src/man/man9s/usb_request_attributes.9s b/usr/src/man/man9s/usb_request_attributes.9s
index b5cb3faa60..fddb3819c3 100644
--- a/usr/src/man/man9s/usb_request_attributes.9s
+++ b/usr/src/man/man9s/usb_request_attributes.9s
@@ -167,7 +167,7 @@ isoc_frame_no of the usb_isoc_req_t is ignored. Please see
.in -2
.SH ATTRIBUTES
-See attributes(5) for descriptions of the following attributes:
+See attributes(7) for descriptions of the following attributes:
.sp
.sp
@@ -183,9 +183,15 @@ Interface stability Committed
.TE
.SH SEE ALSO
-\fBusb_alloc_request\fR(9F), \fBusb_get_current_frame_number\fR(9F),
-\fBusb_pipe_bulk_xfer\fR(9F), \fBusb_pipe_ctrl_xfer\fR(9F),
-\fBusb_pipe_intr_xfer\fR(9F), \fBusb_pipe_isoc_xfer\fR(9F),
-\fBusb_bulk_request\fR(9S), \fBusb_callback_flags\fR(9S),
-\fBusb_ctrl_request\fR(9S), \fBusb_intr_request\fR(9S),
-\fBusb_isoc_request\fR(9S), \fBusb_completion_reason\fR(9S)
+.BR usb_alloc_request (9F),
+.BR usb_get_current_frame_number (9F),
+.BR usb_pipe_bulk_xfer (9F),
+.BR usb_pipe_ctrl_xfer (9F),
+.BR usb_pipe_intr_xfer (9F),
+.BR usb_pipe_isoc_xfer (9F),
+.BR usb_bulk_request (9S),
+.BR usb_callback_flags (9S),
+.BR usb_completion_reason (9S),
+.BR usb_ctrl_request (9S),
+.BR usb_intr_request (9S),
+.BR usb_isoc_request (9S)
diff --git a/usr/src/man/man9s/usb_string_descr.9s b/usr/src/man/man9s/usb_string_descr.9s
index 6d28259580..80a1cc7dc9 100644
--- a/usr/src/man/man9s/usb_string_descr.9s
+++ b/usr/src/man/man9s/usb_string_descr.9s
@@ -39,7 +39,7 @@ uint16_t bString[1]; Variable length Unicode encoded
.in -2
.SH ATTRIBUTES
-See \fBattributes\fR(5) for descriptions of the following attributes:
+See \fBattributes\fR(7) for descriptions of the following attributes:
.sp
.sp
@@ -55,6 +55,10 @@ Interface stability Committed
.TE
.SH SEE ALSO
-\fBattributes\fR(5), \fBusb_get_alt_if\fR(9F), \fBusb_get_cfg\fR(9F),
-\fBusb_get_dev_data\fR(9F), \fBusb_get_string_descr\fR(9F),
-\fBusb_parse_data\fR(9F), \fBusb_ctrl_request\fR(9S)
+.BR attributes (7),
+.BR usb_get_alt_if (9F),
+.BR usb_get_cfg (9F),
+.BR usb_get_dev_data (9F),
+.BR usb_get_string_descr (9F),
+.BR usb_parse_data (9F),
+.BR usb_ctrl_request (9S)
diff --git a/usr/src/man/man9s/usba_hcdi_ops.9s b/usr/src/man/man9s/usba_hcdi_ops.9s
index 87e2ac3a8b..b8b509a722 100644
--- a/usr/src/man/man9s/usba_hcdi_ops.9s
+++ b/usr/src/man/man9s/usba_hcdi_ops.9s
@@ -268,7 +268,7 @@ member is an
.Em optional
entry point that will be called every time a device is removed from the
system, whether through it being unplugged or a
-.Xr cfgadm 1M
+.Xr cfgadm 8
action.
If an HCD does not need this functionality, the member should be set to
.Dv NULL .
@@ -302,7 +302,7 @@ See
.Xr usba_hcdi_hub_update 9E
for more information.
.Sh SEE ALSO
-.Xr cfgadm 1M ,
+.Xr cfgadm 8 ,
.Xr attach 9E ,
.Xr usba_hcdi 9E ,
.Xr usba_hcdi_device_address 9E ,
diff --git a/usr/src/pkg/README.pkg b/usr/src/pkg/README.pkg
index 6edf5f8465..3822dc9c66 100644
--- a/usr/src/pkg/README.pkg
+++ b/usr/src/pkg/README.pkg
@@ -29,7 +29,7 @@ Introduction
This README describes some basics about creating, modifying, and
building packages in ON. All package creation in ON is done using
tools available to our customers. If terminology in this document
-is confusing, you may wish to review the pkg(5) manpage.
+is confusing, you may wish to review the pkg(7) manpage.
Packaging Overview
------------------
@@ -150,7 +150,7 @@ available from /opt/onbld/bin or usr/src/tools/scripts/ to setup and
upgrade your system. A manpage is available in /opt/onbld/man
or usr/src/tools/scripts/onu.1.
-Alternatively, you can manually start a pkg.depot(1M) server to
+Alternatively, you can manually start a pkg.depot(8) server to
serve the generated repository to multiple test machines.
Start up a depot on your build machine.
@@ -263,7 +263,7 @@ in our manifests.
Zones and Packages
------------------
-pkg(5) uses variants to implement zones. If a package is marked
+pkg(7) uses variants to implement zones. If a package is marked
with both global and non-global zone variants, the package contents will
be installed in both global and non-global by default.
set name=variant.opensolaris.zone value=global value=nonglobal
@@ -289,7 +289,7 @@ add a comment describing why the dependency is required.
Moving Content Between Packages and Removing Content
----------------------------------------------------
-pkg(5) tracks when content is removed from packages, and automatically
+pkg(7) tracks when content is removed from packages, and automatically
removes it.
If you need to move content between packages, there are two primary
diff --git a/usr/src/pkg/manifests/SUNWcs.man1m.inc b/usr/src/pkg/manifests/SUNWcs.man1m.inc
deleted file mode 100644
index baaf2e336f..0000000000
--- a/usr/src/pkg/manifests/SUNWcs.man1m.inc
+++ /dev/null
@@ -1,296 +0,0 @@
-#
-# This file and its contents are supplied under the terms of the
-# Common Development and Distribution License ("CDDL"), version 1.0.
-# You may only use this file in accordance with the terms of version
-# 1.0 of the CDDL.
-#
-# A full copy of the text of the CDDL should have accompanied this
-# source. A copy of the CDDL is also available via the Internet
-# at http://www.illumos.org/license/CDDL.
-#
-
-#
-# Copyright 2011, Richard Lowe
-# Copyright 2015 Nexenta Systems, Inc. All rights reserved.
-# Copyright 2016 Toomas Soome <tsoome@me.com>
-# Copyright (c) 2017, Chris Fraire <cfraire@me.com>.
-# Copyright (c) 2016 by Delphix. All rights reserved.
-# Copyright 2020 Joyent, Inc.
-#
-
-$(i386_ONLY) file path=usr/share/man/man1m/rdmsr.1m variant.opensolaris.zone=global
-file path=usr/share/man/man1m/6to4relay.1m
-file path=usr/share/man/man1m/Intro.1m
-file path=usr/share/man/man1m/acctadm.1m
-file path=usr/share/man/man1m/add_drv.1m
-file path=usr/share/man/man1m/addbadsec.1m
-file path=usr/share/man/man1m/arp.1m
-file path=usr/share/man/man1m/audit.1m
-file path=usr/share/man/man1m/audit_warn.1m
-file path=usr/share/man/man1m/auditconfig.1m
-file path=usr/share/man/man1m/auditd.1m
-file path=usr/share/man/man1m/auditrecord.1m
-file path=usr/share/man/man1m/auditreduce.1m
-file path=usr/share/man/man1m/auditstat.1m
-link path=usr/share/man/man1m/audlinks.1m target=devfsadm.1m
-file path=usr/share/man/man1m/autopush.1m
-file path=usr/share/man/man1m/bootadm.1m
-file path=usr/share/man/man1m/busstat.1m
-file path=usr/share/man/man1m/captoinfo.1m
-file path=usr/share/man/man1m/cfgadm.1m
-file path=usr/share/man/man1m/cfgadm_cardbus.1m
-file path=usr/share/man/man1m/cfgadm_fp.1m
-file path=usr/share/man/man1m/cfgadm_ib.1m
-file path=usr/share/man/man1m/cfgadm_pci.1m
-file path=usr/share/man/man1m/cfgadm_sata.1m
-file path=usr/share/man/man1m/cfgadm_sbd.1m
-file path=usr/share/man/man1m/cfgadm_scsi.1m
-file path=usr/share/man/man1m/cfgadm_usb.1m
-file path=usr/share/man/man1m/chroot.1m
-file path=usr/share/man/man1m/clear_locks.1m
-file path=usr/share/man/man1m/clinfo.1m
-file path=usr/share/man/man1m/clri.1m
-file path=usr/share/man/man1m/connstat.1m
-file path=usr/share/man/man1m/consadm.1m
-file path=usr/share/man/man1m/coreadm.1m
-file path=usr/share/man/man1m/cron.1m
-file path=usr/share/man/man1m/cryptoadm.1m
-link path=usr/share/man/man1m/dcopy.1m target=clri.1m
-file path=usr/share/man/man1m/dd.1m
-file path=usr/share/man/man1m/devattr.1m
-file path=usr/share/man/man1m/devfree.1m
-file path=usr/share/man/man1m/devfsadm.1m
-link path=usr/share/man/man1m/devfsadmd.1m target=devfsadm.1m
-file path=usr/share/man/man1m/devinfo.1m
-file path=usr/share/man/man1m/devlinks.1m
-file path=usr/share/man/man1m/devnm.1m
-file path=usr/share/man/man1m/devprop.1m
-file path=usr/share/man/man1m/devreserv.1m
-file path=usr/share/man/man1m/df.1m
-file path=usr/share/man/man1m/df_ufs.1m
-file path=usr/share/man/man1m/dfmounts.1m
-file path=usr/share/man/man1m/dfmounts_nfs.1m
-file path=usr/share/man/man1m/dfshares.1m
-file path=usr/share/man/man1m/dfshares_nfs.1m
-file path=usr/share/man/man1m/dhcpagent.1m
-file path=usr/share/man/man1m/disks.1m
-file path=usr/share/man/man1m/diskscan.1m
-file path=usr/share/man/man1m/dispadmin.1m
-file path=usr/share/man/man1m/dlmgmtd.1m
-file path=usr/share/man/man1m/dminfo.1m
-file path=usr/share/man/man1m/domainname.1m
-file path=usr/share/man/man1m/drvconfig.1m
-file path=usr/share/man/man1m/dumpadm.1m
-file path=usr/share/man/man1m/edquota.1m
-file path=usr/share/man/man1m/eeprom.1m
-file path=usr/share/man/man1m/embedded_su.1m
-file path=usr/share/man/man1m/fdetach.1m
-file path=usr/share/man/man1m/fdisk.1m
-file path=usr/share/man/man1m/ff.1m
-file path=usr/share/man/man1m/ff_ufs.1m
-file path=usr/share/man/man1m/fiocompress.1m
-file path=usr/share/man/man1m/fmthard.1m
-file path=usr/share/man/man1m/format.1m
-file path=usr/share/man/man1m/fsck.1m
-file path=usr/share/man/man1m/fsck_ufs.1m
-file path=usr/share/man/man1m/fsdb.1m
-file path=usr/share/man/man1m/fsdb_ufs.1m
-file path=usr/share/man/man1m/fsirand.1m
-file path=usr/share/man/man1m/fssnap.1m
-file path=usr/share/man/man1m/fssnap_ufs.1m
-file path=usr/share/man/man1m/fsstat.1m
-file path=usr/share/man/man1m/fstyp.1m
-file path=usr/share/man/man1m/fuser.1m
-file path=usr/share/man/man1m/getdev.1m
-file path=usr/share/man/man1m/getdevpolicy.1m
-file path=usr/share/man/man1m/getdgrp.1m
-file path=usr/share/man/man1m/getent.1m
-file path=usr/share/man/man1m/getty.1m
-file path=usr/share/man/man1m/getvol.1m
-file path=usr/share/man/man1m/groupadd.1m
-file path=usr/share/man/man1m/groupdel.1m
-file path=usr/share/man/man1m/groupmod.1m
-file path=usr/share/man/man1m/growfs.1m
-link path=usr/share/man/man1m/grpck.1m target=pwck.1m
-file path=usr/share/man/man1m/halt.1m
-file path=usr/share/man/man1m/hostconfig.1m
-file path=usr/share/man/man1m/hotplug.1m
-file path=usr/share/man/man1m/id.1m
-file path=usr/share/man/man1m/idmap.1m
-file path=usr/share/man/man1m/idmapd.1m
-file path=usr/share/man/man1m/if_mpadm.1m
-file path=usr/share/man/man1m/ifconfig.1m
-file path=usr/share/man/man1m/ifparse.1m
-file path=usr/share/man/man1m/ikeadm.1m
-file path=usr/share/man/man1m/ikecert.1m
-file path=usr/share/man/man1m/in.iked.1m
-file path=usr/share/man/man1m/in.mpathd.1m
-file path=usr/share/man/man1m/inetadm.1m
-file path=usr/share/man/man1m/inetconv.1m
-file path=usr/share/man/man1m/inetd.1m
-file path=usr/share/man/man1m/infocmp.1m
-file path=usr/share/man/man1m/init.1m
-file path=usr/share/man/man1m/install.1m
-file path=usr/share/man/man1m/installboot.1m
-file path=usr/share/man/man1m/installgrub.1m
-file path=usr/share/man/man1m/intrd.1m
-link path=usr/share/man/man1m/intro.1m target=Intro.1m
-file path=usr/share/man/man1m/iostat.1m
-file path=usr/share/man/man1m/ipaddrsel.1m
-file path=usr/share/man/man1m/ipmpstat.1m
-file path=usr/share/man/man1m/ipsecalgs.1m
-file path=usr/share/man/man1m/ipsecconf.1m
-file path=usr/share/man/man1m/ipseckey.1m
-file path=usr/share/man/man1m/keyserv.1m
-file path=usr/share/man/man1m/killall.1m
-file path=usr/share/man/man1m/ksslcfg.1m
-file path=usr/share/man/man1m/labelit.1m
-file path=usr/share/man/man1m/labelit_hsfs.1m
-file path=usr/share/man/man1m/labelit_ufs.1m
-file path=usr/share/man/man1m/link.1m
-file path=usr/share/man/man1m/listdgrp.1m
-file path=usr/share/man/man1m/listen.1m
-file path=usr/share/man/man1m/locator.1m
-file path=usr/share/man/man1m/lockfs.1m
-file path=usr/share/man/man1m/lofiadm.1m
-file path=usr/share/man/man1m/logadm.1m
-file path=usr/share/man/man1m/logins.1m
-file path=usr/share/man/man1m/mail.local.1m
-file path=usr/share/man/man1m/makedbm.1m
-file path=usr/share/man/man1m/mkdevalloc.1m
-file path=usr/share/man/man1m/mkdevmaps.1m
-file path=usr/share/man/man1m/mkfile.1m
-file path=usr/share/man/man1m/mkfs.1m
-file path=usr/share/man/man1m/mkfs_ufs.1m
-file path=usr/share/man/man1m/mknod.1m
-file path=usr/share/man/man1m/mkpwdict.1m
-file path=usr/share/man/man1m/modinfo.1m
-file path=usr/share/man/man1m/modload.1m
-file path=usr/share/man/man1m/modunload.1m
-file path=usr/share/man/man1m/mount.1m
-file path=usr/share/man/man1m/mount_hsfs.1m
-file path=usr/share/man/man1m/mount_tmpfs.1m
-file path=usr/share/man/man1m/mount_ufs.1m
-file path=usr/share/man/man1m/mountall.1m
-file path=usr/share/man/man1m/mpstat.1m
-file path=usr/share/man/man1m/msgid.1m
-file path=usr/share/man/man1m/mvdir.1m
-file path=usr/share/man/man1m/ncheck.1m
-file path=usr/share/man/man1m/ncheck_ufs.1m
-file path=usr/share/man/man1m/ndd.1m
-file path=usr/share/man/man1m/ndp.1m
-file path=usr/share/man/man1m/netstat.1m
-file path=usr/share/man/man1m/netstrategy.1m
-file path=usr/share/man/man1m/newfs.1m
-file path=usr/share/man/man1m/nlsadmin.1m
-file path=usr/share/man/man1m/nscd.1m
-file path=usr/share/man/man1m/nwamd.1m
-file path=usr/share/man/man1m/passmgmt.1m
-file path=usr/share/man/man1m/pbind.1m
-file path=usr/share/man/man1m/ping.1m
-file path=usr/share/man/man1m/pmadm.1m
-file path=usr/share/man/man1m/ports.1m
-link path=usr/share/man/man1m/poweroff.1m target=halt.1m
-file path=usr/share/man/man1m/praudit.1m
-file path=usr/share/man/man1m/prstat.1m
-file path=usr/share/man/man1m/prtconf.1m
-file path=usr/share/man/man1m/prtdiag.1m
-file path=usr/share/man/man1m/prtvtoc.1m
-file path=usr/share/man/man1m/psradm.1m
-file path=usr/share/man/man1m/psrinfo.1m
-file path=usr/share/man/man1m/psrset.1m
-file path=usr/share/man/man1m/putdev.1m
-file path=usr/share/man/man1m/putdgrp.1m
-file path=usr/share/man/man1m/pwck.1m
-file path=usr/share/man/man1m/pwconv.1m
-file path=usr/share/man/man1m/quot.1m
-file path=usr/share/man/man1m/quota.1m
-file path=usr/share/man/man1m/quotacheck.1m
-link path=usr/share/man/man1m/quotaoff.1m target=quotaon.1m
-file path=usr/share/man/man1m/quotaon.1m
-file path=usr/share/man/man1m/raidctl.1m
-file path=usr/share/man/man1m/ramdiskadm.1m
-file path=usr/share/man/man1m/rctladm.1m
-file path=usr/share/man/man1m/reboot.1m
-file path=usr/share/man/man1m/rem_drv.1m
-file path=usr/share/man/man1m/repquota.1m
-link path=usr/share/man/man1m/restricted_shell.1m target=rsh.1m
-file path=usr/share/man/man1m/roleadd.1m
-file path=usr/share/man/man1m/roledel.1m
-file path=usr/share/man/man1m/rolemod.1m
-file path=usr/share/man/man1m/root_archive.1m
-file path=usr/share/man/man1m/route.1m
-file path=usr/share/man/man1m/routeadm.1m
-file path=usr/share/man/man1m/rpcbind.1m
-file path=usr/share/man/man1m/rpcinfo.1m
-file path=usr/share/man/man1m/rsh.1m
-file path=usr/share/man/man1m/rtc.1m
-file path=usr/share/man/man1m/sac.1m
-file path=usr/share/man/man1m/sacadm.1m
-file path=usr/share/man/man1m/saf.1m
-file path=usr/share/man/man1m/savecore.1m
-file path=usr/share/man/man1m/setuname.1m
-file path=usr/share/man/man1m/share.1m
-file path=usr/share/man/man1m/share_nfs.1m
-file path=usr/share/man/man1m/shareall.1m
-file path=usr/share/man/man1m/sharectl.1m
-file path=usr/share/man/man1m/sharemgr.1m
-file path=usr/share/man/man1m/shutdown.1m
-file path=usr/share/man/man1m/smbios.1m
-file path=usr/share/man/man1m/soconfig.1m
-file path=usr/share/man/man1m/stmsboot.1m
-file path=usr/share/man/man1m/strace.1m
-file path=usr/share/man/man1m/strclean.1m
-file path=usr/share/man/man1m/strerr.1m
-file path=usr/share/man/man1m/sttydefs.1m
-file path=usr/share/man/man1m/su.1m
-file path=usr/share/man/man1m/sulogin.1m
-file path=usr/share/man/man1m/svc.configd.1m
-file path=usr/share/man/man1m/svc.ipfd.1m
-file path=usr/share/man/man1m/svc.startd.1m
-file path=usr/share/man/man1m/svcadm.1m
-file path=usr/share/man/man1m/svccfg.1m
-file path=usr/share/man/man1m/swap.1m
-file path=usr/share/man/man1m/sync.1m
-file path=usr/share/man/man1m/syncinit.1m
-file path=usr/share/man/man1m/syncloop.1m
-file path=usr/share/man/man1m/syncstat.1m
-file path=usr/share/man/man1m/sysdef.1m
-file path=usr/share/man/man1m/syseventadm.1m
-file path=usr/share/man/man1m/syseventconfd.1m
-file path=usr/share/man/man1m/syseventd.1m
-file path=usr/share/man/man1m/syslogd.1m
-file path=usr/share/man/man1m/tapes.1m
-link path=usr/share/man/man1m/telinit.1m target=init.1m
-file path=usr/share/man/man1m/tic.1m
-file path=usr/share/man/man1m/tpmadm.1m
-file path=usr/share/man/man1m/traceroute.1m
-file path=usr/share/man/man1m/trapstat.1m
-file path=usr/share/man/man1m/ttyadm.1m
-file path=usr/share/man/man1m/ttymon.1m
-file path=usr/share/man/man1m/tunefs.1m
-file path=usr/share/man/man1m/tzreload.1m
-file path=usr/share/man/man1m/tzselect.1m
-file path=usr/share/man/man1m/uadmin.1m
-file path=usr/share/man/man1m/ucodeadm.1m
-file path=usr/share/man/man1m/ufsdump.1m
-file path=usr/share/man/man1m/ufsrestore.1m
-link path=usr/share/man/man1m/umount.1m target=mount.1m
-link path=usr/share/man/man1m/umountall.1m target=mountall.1m
-link path=usr/share/man/man1m/unlink.1m target=link.1m
-file path=usr/share/man/man1m/unshare.1m
-file path=usr/share/man/man1m/unshare_nfs.1m
-link path=usr/share/man/man1m/unshareall.1m target=shareall.1m
-file path=usr/share/man/man1m/update_drv.1m
-file path=usr/share/man/man1m/useradd.1m
-file path=usr/share/man/man1m/userdel.1m
-file path=usr/share/man/man1m/usermod.1m
-file path=usr/share/man/man1m/utmpd.1m
-file path=usr/share/man/man1m/vmstat.1m
-file path=usr/share/man/man1m/volcopy.1m
-file path=usr/share/man/man1m/volcopy_ufs.1m
-file path=usr/share/man/man1m/wall.1m
-file path=usr/share/man/man1m/whodo.1m
-file path=usr/share/man/man1m/wracct.1m
-file path=usr/share/man/man1m/zdump.1m
-file path=usr/share/man/man1m/zic.1m
diff --git a/usr/src/pkg/manifests/SUNWcs.man4.inc b/usr/src/pkg/manifests/SUNWcs.man4.inc
deleted file mode 100644
index 0dd3795067..0000000000
--- a/usr/src/pkg/manifests/SUNWcs.man4.inc
+++ /dev/null
@@ -1,119 +0,0 @@
-#
-# This file and its contents are supplied under the terms of the
-# Common Development and Distribution License ("CDDL"), version 1.0.
-# You may only use this file in accordance with the terms of version
-# 1.0 of the CDDL.
-#
-# A full copy of the text of the CDDL should have accompanied this
-# source. A copy of the CDDL is also available via the Internet
-# at http://www.illumos.org/license/CDDL.
-#
-
-#
-# Copyright 2011, Richard Lowe
-# Copyright 2012 Nexenta Systems, Inc. All rights reserved.
-# Copyright 2021 OmniOS Community Edition (OmniOSce) Association.
-#
-
-file path=usr/share/man/man4/Intro.4
-link path=usr/share/man/man4/TIMEZONE.4 target=init.4
-file path=usr/share/man/man4/audit.log.4
-file path=usr/share/man/man4/audit_class.4
-file path=usr/share/man/man4/audit_event.4
-file path=usr/share/man/man4/auth_attr.4
-file path=usr/share/man/man4/contract.4
-file path=usr/share/man/man4/core.4
-file path=usr/share/man/man4/crypt.conf.4
-file path=usr/share/man/man4/crypto_certs.4
-file path=usr/share/man/man4/ctf.4
-file path=usr/share/man/man4/d_passwd.4
-file path=usr/share/man/man4/dacf.conf.4
-file path=usr/share/man/man4/default_fs.4
-file path=usr/share/man/man4/defaultrouter.4
-file path=usr/share/man/man4/device_allocate.4
-file path=usr/share/man/man4/device_contract.4
-file path=usr/share/man/man4/device_maps.4
-file path=usr/share/man/man4/devices.4
-link path=usr/share/man/man4/devid_cache.4 target=devices.4
-link path=usr/share/man/man4/devname_cache.4 target=devices.4
-file path=usr/share/man/man4/dfstab.4
-file path=usr/share/man/man4/dhcp_inittab.4
-file path=usr/share/man/man4/dialups.4
-link path=usr/share/man/man4/dumpdates.4 target=ufsdump.4
-file path=usr/share/man/man4/ethers.4
-file path=usr/share/man/man4/exec_attr.4
-link path=usr/share/man/man4/fbtab.4 target=logindevperm.4
-file path=usr/share/man/man4/format.dat.4
-link path=usr/share/man/man4/fs.4 target=default_fs.4
-file path=usr/share/man/man4/fspec.4
-file path=usr/share/man/man4/fstypes.4
-file path=usr/share/man/man4/ftpusers.4
-file path=usr/share/man/man4/fx_dptbl.4
-file path=usr/share/man/man4/group.4
-file path=usr/share/man/man4/hosts.4
-file path=usr/share/man/man4/ike.config.4
-file path=usr/share/man/man4/ike.preshared.4
-file path=usr/share/man/man4/inet_type.4
-file path=usr/share/man/man4/inetd.conf.4
-file path=usr/share/man/man4/init.4
-file path=usr/share/man/man4/init.d.4
-file path=usr/share/man/man4/inittab.4
-link path=usr/share/man/man4/intro.4 target=Intro.4
-file path=usr/share/man/man4/ipaddrsel.conf.4
-file path=usr/share/man/man4/ipnodes.4
-file path=usr/share/man/man4/issue.4
-file path=usr/share/man/man4/logadm.conf.4
-file path=usr/share/man/man4/logindevperm.4
-file path=usr/share/man/man4/loginlog.4
-file path=usr/share/man/man4/magic.4
-link path=usr/share/man/man4/mdi_ib_cache.4 target=devices.4
-link path=usr/share/man/man4/mdi_scsi_vhci_cache.4 target=devices.4
-file path=usr/share/man/man4/mnttab.4
-file path=usr/share/man/man4/ndpd.conf.4
-file path=usr/share/man/man4/netconfig.4
-file path=usr/share/man/man4/netgroup.4
-file path=usr/share/man/man4/netid.4
-file path=usr/share/man/man4/netmasks.4
-file path=usr/share/man/man4/networks.4
-file path=usr/share/man/man4/nodename.4
-file path=usr/share/man/man4/nologin.4
-file path=usr/share/man/man4/notrouter.4
-file path=usr/share/man/man4/nscd.conf.4
-file path=usr/share/man/man4/nsswitch.conf.4
-file path=usr/share/man/man4/packingrules.4
-file path=usr/share/man/man4/pam.conf.4
-file path=usr/share/man/man4/passwd.4
-link path=usr/share/man/man4/pci_unitaddr_persistent.4 target=devices.4
-file path=usr/share/man/man4/phones.4
-file path=usr/share/man/man4/policy.conf.4
-file path=usr/share/man/man4/prof_attr.4
-file path=usr/share/man/man4/profile.4
-file path=usr/share/man/man4/project.4
-file path=usr/share/man/man4/protocols.4
-file path=usr/share/man/man4/queuedefs.4
-file path=usr/share/man/man4/rcmscript.4
-file path=usr/share/man/man4/remote.4
-file path=usr/share/man/man4/rpc.4
-file path=usr/share/man/man4/rt_dptbl.4
-file path=usr/share/man/man4/service_bundle.4
-file path=usr/share/man/man4/service_provider.conf.4
-file path=usr/share/man/man4/services.4
-file path=usr/share/man/man4/shadow.4
-file path=usr/share/man/man4/sharetab.4
-file path=usr/share/man/man4/shells.4
-link path=usr/share/man/man4/snapshot_cache.4 target=devices.4
-file path=usr/share/man/man4/sulog.4
-file path=usr/share/man/man4/syslog.conf.4
-file path=usr/share/man/man4/term.4
-file path=usr/share/man/man4/terminfo.4
-file path=usr/share/man/man4/timezone.4
-file path=usr/share/man/man4/ttydefs.4
-file path=usr/share/man/man4/ttysrch.4
-file path=usr/share/man/man4/ufsdump.4
-file path=usr/share/man/man4/user_attr.4
-file path=usr/share/man/man4/utmp.4
-file path=usr/share/man/man4/utmpx.4
-file path=usr/share/man/man4/vfstab.4
-link path=usr/share/man/man4/wtmp.4 target=utmp.4
-link path=usr/share/man/man4/wtmpx.4 target=utmpx.4
-file path=usr/share/man/man4/zoneinfo.4
diff --git a/usr/src/pkg/manifests/SUNWcs.man4d.inc b/usr/src/pkg/manifests/SUNWcs.man4d.inc
new file mode 100644
index 0000000000..bec335fafc
--- /dev/null
+++ b/usr/src/pkg/manifests/SUNWcs.man4d.inc
@@ -0,0 +1,17 @@
+#
+# This file and its contents are supplied under the terms of the
+# Common Development and Distribution License ("CDDL"), version 1.0.
+# You may only use this file in accordance with the terms of version
+# 1.0 of the CDDL.
+#
+# A full copy of the text of the CDDL should have accompanied this
+# source. A copy of the CDDL is also available via the Internet
+# at http://www.illumos.org/license/CDDL.
+#
+
+# Copyright 2011, Richard Lowe
+
+file path=usr/share/man/man4d/kstat.4d
+file path=usr/share/man/man4d/ksyms.4d
+file path=usr/share/man/man4d/ptm.4d
+link path=usr/share/man/man4d/pts.4d target=ptm.4d
diff --git a/usr/src/pkg/manifests/SUNWcs.man4fs.inc b/usr/src/pkg/manifests/SUNWcs.man4fs.inc
new file mode 100644
index 0000000000..8a619728f7
--- /dev/null
+++ b/usr/src/pkg/manifests/SUNWcs.man4fs.inc
@@ -0,0 +1,14 @@
+#
+# This file and its contents are supplied under the terms of the
+# Common Development and Distribution License ("CDDL"), version 1.0.
+# You may only use this file in accordance with the terms of version
+# 1.0 of the CDDL.
+#
+# A full copy of the text of the CDDL should have accompanied this
+# source. A copy of the CDDL is also available via the Internet
+# at http://www.illumos.org/license/CDDL.
+#
+
+# Copyright 2011, Richard Lowe
+
+file path=usr/share/man/man4fs/pcfs.4fs
diff --git a/usr/src/pkg/manifests/SUNWcs.man5.inc b/usr/src/pkg/manifests/SUNWcs.man5.inc
index f5355a53b5..30a90d4c92 100644
--- a/usr/src/pkg/manifests/SUNWcs.man5.inc
+++ b/usr/src/pkg/manifests/SUNWcs.man5.inc
@@ -12,56 +12,108 @@
#
# Copyright 2011, Richard Lowe
# Copyright 2012 Nexenta Systems, Inc. All rights reserved.
+# Copyright 2021 OmniOS Community Edition (OmniOSce) Association.
#
-link path=usr/share/man/man5/ANSI.5 target=standards.5
-link path=usr/share/man/man5/C++.5 target=standards.5
-link path=usr/share/man/man5/C.5 target=standards.5
-link path=usr/share/man/man5/CSI.5 target=attributes.5
-link path=usr/share/man/man5/ISO.5 target=standards.5
file path=usr/share/man/man5/Intro.5
-link path=usr/share/man/man5/MT-Level.5 target=attributes.5
-link path=usr/share/man/man5/POSIX.1.5 target=standards.5
-link path=usr/share/man/man5/POSIX.2.5 target=standards.5
-link path=usr/share/man/man5/POSIX.5 target=standards.5
-link path=usr/share/man/man5/RBAC.5 target=rbac.5
-link path=usr/share/man/man5/SUS.5 target=standards.5
-link path=usr/share/man/man5/SUSv2.5 target=standards.5
-link path=usr/share/man/man5/SUSv3.5 target=standards.5
-link path=usr/share/man/man5/SVID.5 target=standards.5
-link path=usr/share/man/man5/SVID3.5 target=standards.5
-link path=usr/share/man/man5/XNS.5 target=standards.5
-link path=usr/share/man/man5/XNS4.5 target=standards.5
-link path=usr/share/man/man5/XNS5.5 target=standards.5
-link path=usr/share/man/man5/XPG.5 target=standards.5
-link path=usr/share/man/man5/XPG3.5 target=standards.5
-link path=usr/share/man/man5/XPG4.5 target=standards.5
-link path=usr/share/man/man5/XPG4v2.5 target=standards.5
-file path=usr/share/man/man5/acl.5
-file path=usr/share/man/man5/ad.5
-link path=usr/share/man/man5/architecture.5 target=attributes.5
-file path=usr/share/man/man5/ascii.5
-file path=usr/share/man/man5/attributes.5
-link path=usr/share/man/man5/availability.5 target=attributes.5
-file path=usr/share/man/man5/device_clean.5
-file path=usr/share/man/man5/dhcp.5
-file path=usr/share/man/man5/filesystem.5
-file path=usr/share/man/man5/formats.5
-file path=usr/share/man/man5/iconv.5
-file path=usr/share/man/man5/iconv_unicode.5
+link path=usr/share/man/man5/TIMEZONE.5 target=init.5
+file path=usr/share/man/man5/audit.log.5
+file path=usr/share/man/man5/audit_class.5
+file path=usr/share/man/man5/audit_event.5
+file path=usr/share/man/man5/auth_attr.5
+file path=usr/share/man/man5/contract.5
+file path=usr/share/man/man5/core.5
+file path=usr/share/man/man5/crypt.conf.5
+file path=usr/share/man/man5/crypto_certs.5
+file path=usr/share/man/man5/ctf.5
+file path=usr/share/man/man5/d_passwd.5
+file path=usr/share/man/man5/dacf.conf.5
+file path=usr/share/man/man5/default_fs.5
+file path=usr/share/man/man5/defaultrouter.5
+file path=usr/share/man/man5/device_allocate.5
+file path=usr/share/man/man5/device_contract.5
+file path=usr/share/man/man5/device_maps.5
+file path=usr/share/man/man5/devices.5
+link path=usr/share/man/man5/devid_cache.5 target=devices.5
+link path=usr/share/man/man5/devname_cache.5 target=devices.5
+file path=usr/share/man/man5/dfstab.5
+file path=usr/share/man/man5/dhcp_inittab.5
+file path=usr/share/man/man5/dialups.5
+link path=usr/share/man/man5/dumpdates.5 target=ufsdump.5
+file path=usr/share/man/man5/ethers.5
+file path=usr/share/man/man5/exec_attr.5
+link path=usr/share/man/man5/fbtab.5 target=logindevperm.5
+file path=usr/share/man/man5/format.dat.5
+link path=usr/share/man/man5/fs.5 target=default_fs.5
+file path=usr/share/man/man5/fspec.5
+file path=usr/share/man/man5/fstypes.5
+file path=usr/share/man/man5/ftpusers.5
+file path=usr/share/man/man5/fx_dptbl.5
+file path=usr/share/man/man5/group.5
+file path=usr/share/man/man5/hosts.5
+file path=usr/share/man/man5/ike.config.5
+file path=usr/share/man/man5/ike.preshared.5
+file path=usr/share/man/man5/inet_type.5
+file path=usr/share/man/man5/inetd.conf.5
+file path=usr/share/man/man5/init.5
+file path=usr/share/man/man5/init.d.5
+file path=usr/share/man/man5/inittab.5
link path=usr/share/man/man5/intro.5 target=Intro.5
-file path=usr/share/man/man5/privileges.5
-file path=usr/share/man/man5/rbac.5
-file path=usr/share/man/man5/resource_controls.5
-file path=usr/share/man/man5/security-flags.5
-file path=usr/share/man/man5/smf.5
-file path=usr/share/man/man5/smf_bootstrap.5
-file path=usr/share/man/man5/smf_method.5
-file path=usr/share/man/man5/smf_restarter.5
-file path=usr/share/man/man5/smf_security.5
-file path=usr/share/man/man5/smf_template.5
-link path=usr/share/man/man5/stability.5 target=attributes.5
-link path=usr/share/man/man5/standard.5 target=attributes.5
-file path=usr/share/man/man5/standards.5
-file path=usr/share/man/man5/sticky.5
+file path=usr/share/man/man5/ipaddrsel.conf.5
+file path=usr/share/man/man5/ipnodes.5
+file path=usr/share/man/man5/issue.5
+file path=usr/share/man/man5/logadm.conf.5
+file path=usr/share/man/man5/logindevperm.5
+file path=usr/share/man/man5/loginlog.5
+file path=usr/share/man/man5/magic.5
+link path=usr/share/man/man5/mdi_ib_cache.5 target=devices.5
+link path=usr/share/man/man5/mdi_scsi_vhci_cache.5 target=devices.5
+file path=usr/share/man/man5/mnttab.5
+file path=usr/share/man/man5/ndpd.conf.5
+file path=usr/share/man/man5/netconfig.5
+file path=usr/share/man/man5/netgroup.5
+file path=usr/share/man/man5/netid.5
+file path=usr/share/man/man5/netmasks.5
+file path=usr/share/man/man5/networks.5
+file path=usr/share/man/man5/nodename.5
+file path=usr/share/man/man5/nologin.5
+file path=usr/share/man/man5/notrouter.5
+file path=usr/share/man/man5/nscd.conf.5
+file path=usr/share/man/man5/nsswitch.conf.5
+file path=usr/share/man/man5/packingrules.5
+file path=usr/share/man/man5/pam.conf.5
+file path=usr/share/man/man5/passwd.5
+link path=usr/share/man/man5/pci_unitaddr_persistent.5 target=devices.5
+file path=usr/share/man/man5/phones.5
+file path=usr/share/man/man5/policy.conf.5
+file path=usr/share/man/man5/prof_attr.5
+file path=usr/share/man/man5/profile.5
+file path=usr/share/man/man5/project.5
+file path=usr/share/man/man5/protocols.5
+file path=usr/share/man/man5/queuedefs.5
+file path=usr/share/man/man5/rcmscript.5
+file path=usr/share/man/man5/remote.5
+file path=usr/share/man/man5/rpc.5
+file path=usr/share/man/man5/rt_dptbl.5
+file path=usr/share/man/man5/service_bundle.5
+file path=usr/share/man/man5/service_provider.conf.5
+file path=usr/share/man/man5/services.5
+file path=usr/share/man/man5/shadow.5
+file path=usr/share/man/man5/sharetab.5
+file path=usr/share/man/man5/shells.5
+link path=usr/share/man/man5/snapshot_cache.5 target=devices.5
+file path=usr/share/man/man5/sulog.5
+file path=usr/share/man/man5/syslog.conf.5
file path=usr/share/man/man5/term.5
+file path=usr/share/man/man5/terminfo.5
+file path=usr/share/man/man5/timezone.5
+file path=usr/share/man/man5/ttydefs.5
+file path=usr/share/man/man5/ttysrch.5
+file path=usr/share/man/man5/ufsdump.5
+file path=usr/share/man/man5/user_attr.5
+file path=usr/share/man/man5/utmp.5
+file path=usr/share/man/man5/utmpx.5
+file path=usr/share/man/man5/vfstab.5
+link path=usr/share/man/man5/wtmp.5 target=utmp.5
+link path=usr/share/man/man5/wtmpx.5 target=utmpx.5
+file path=usr/share/man/man5/zoneinfo.5
diff --git a/usr/src/pkg/manifests/SUNWcs.man7.inc b/usr/src/pkg/manifests/SUNWcs.man7.inc
new file mode 100644
index 0000000000..1e85800194
--- /dev/null
+++ b/usr/src/pkg/manifests/SUNWcs.man7.inc
@@ -0,0 +1,67 @@
+#
+# This file and its contents are supplied under the terms of the
+# Common Development and Distribution License ("CDDL"), version 1.0.
+# You may only use this file in accordance with the terms of version
+# 1.0 of the CDDL.
+#
+# A full copy of the text of the CDDL should have accompanied this
+# source. A copy of the CDDL is also available via the Internet
+# at http://www.illumos.org/license/CDDL.
+#
+
+#
+# Copyright 2011, Richard Lowe
+# Copyright 2012 Nexenta Systems, Inc. All rights reserved.
+#
+
+link path=usr/share/man/man7/ANSI.7 target=standards.7
+link path=usr/share/man/man7/C++.7 target=standards.7
+link path=usr/share/man/man7/C.7 target=standards.7
+link path=usr/share/man/man7/CSI.7 target=attributes.7
+link path=usr/share/man/man7/ISO.7 target=standards.7
+file path=usr/share/man/man7/Intro.7
+link path=usr/share/man/man7/MT-Level.7 target=attributes.7
+link path=usr/share/man/man7/POSIX.1.7 target=standards.7
+link path=usr/share/man/man7/POSIX.2.7 target=standards.7
+link path=usr/share/man/man7/POSIX.7 target=standards.7
+link path=usr/share/man/man7/RBAC.7 target=rbac.7
+link path=usr/share/man/man7/SUS.7 target=standards.7
+link path=usr/share/man/man7/SUSv2.7 target=standards.7
+link path=usr/share/man/man7/SUSv3.7 target=standards.7
+link path=usr/share/man/man7/SVID.7 target=standards.7
+link path=usr/share/man/man7/SVID3.7 target=standards.7
+link path=usr/share/man/man7/XNS.7 target=standards.7
+link path=usr/share/man/man7/XNS4.7 target=standards.7
+link path=usr/share/man/man7/XNS5.7 target=standards.7
+link path=usr/share/man/man7/XPG.7 target=standards.7
+link path=usr/share/man/man7/XPG3.7 target=standards.7
+link path=usr/share/man/man7/XPG4.7 target=standards.7
+link path=usr/share/man/man7/XPG4v2.7 target=standards.7
+file path=usr/share/man/man7/acl.7
+file path=usr/share/man/man7/ad.7
+link path=usr/share/man/man7/architecture.7 target=attributes.7
+file path=usr/share/man/man7/ascii.7
+file path=usr/share/man/man7/attributes.7
+link path=usr/share/man/man7/availability.7 target=attributes.7
+file path=usr/share/man/man7/device_clean.7
+file path=usr/share/man/man7/dhcp.7
+file path=usr/share/man/man7/filesystem.7
+file path=usr/share/man/man7/formats.7
+file path=usr/share/man/man7/iconv.7
+file path=usr/share/man/man7/iconv_unicode.7
+link path=usr/share/man/man7/intro.7 target=Intro.7
+file path=usr/share/man/man7/privileges.7
+file path=usr/share/man/man7/rbac.7
+file path=usr/share/man/man7/resource_controls.7
+file path=usr/share/man/man7/security-flags.7
+file path=usr/share/man/man7/smf.7
+file path=usr/share/man/man7/smf_bootstrap.7
+file path=usr/share/man/man7/smf_method.7
+file path=usr/share/man/man7/smf_restarter.7
+file path=usr/share/man/man7/smf_security.7
+file path=usr/share/man/man7/smf_template.7
+link path=usr/share/man/man7/stability.7 target=attributes.7
+link path=usr/share/man/man7/standard.7 target=attributes.7
+file path=usr/share/man/man7/standards.7
+file path=usr/share/man/man7/sticky.7
+file path=usr/share/man/man7/term.7
diff --git a/usr/src/pkg/manifests/SUNWcs.man7d.inc b/usr/src/pkg/manifests/SUNWcs.man7d.inc
deleted file mode 100644
index 901eb05c4e..0000000000
--- a/usr/src/pkg/manifests/SUNWcs.man7d.inc
+++ /dev/null
@@ -1,17 +0,0 @@
-#
-# This file and its contents are supplied under the terms of the
-# Common Development and Distribution License ("CDDL"), version 1.0.
-# You may only use this file in accordance with the terms of version
-# 1.0 of the CDDL.
-#
-# A full copy of the text of the CDDL should have accompanied this
-# source. A copy of the CDDL is also available via the Internet
-# at http://www.illumos.org/license/CDDL.
-#
-
-# Copyright 2011, Richard Lowe
-
-file path=usr/share/man/man7d/kstat.7d
-file path=usr/share/man/man7d/ksyms.7d
-file path=usr/share/man/man7d/ptm.7d
-link path=usr/share/man/man7d/pts.7d target=ptm.7d
diff --git a/usr/src/pkg/manifests/SUNWcs.man7fs.inc b/usr/src/pkg/manifests/SUNWcs.man7fs.inc
deleted file mode 100644
index 2d16a8da4e..0000000000
--- a/usr/src/pkg/manifests/SUNWcs.man7fs.inc
+++ /dev/null
@@ -1,14 +0,0 @@
-#
-# This file and its contents are supplied under the terms of the
-# Common Development and Distribution License ("CDDL"), version 1.0.
-# You may only use this file in accordance with the terms of version
-# 1.0 of the CDDL.
-#
-# A full copy of the text of the CDDL should have accompanied this
-# source. A copy of the CDDL is also available via the Internet
-# at http://www.illumos.org/license/CDDL.
-#
-
-# Copyright 2011, Richard Lowe
-
-file path=usr/share/man/man7fs/pcfs.7fs
diff --git a/usr/src/pkg/manifests/SUNWcs.man8.inc b/usr/src/pkg/manifests/SUNWcs.man8.inc
new file mode 100644
index 0000000000..dd528d1b5c
--- /dev/null
+++ b/usr/src/pkg/manifests/SUNWcs.man8.inc
@@ -0,0 +1,296 @@
+#
+# This file and its contents are supplied under the terms of the
+# Common Development and Distribution License ("CDDL"), version 1.0.
+# You may only use this file in accordance with the terms of version
+# 1.0 of the CDDL.
+#
+# A full copy of the text of the CDDL should have accompanied this
+# source. A copy of the CDDL is also available via the Internet
+# at http://www.illumos.org/license/CDDL.
+#
+
+#
+# Copyright 2011, Richard Lowe
+# Copyright 2015 Nexenta Systems, Inc. All rights reserved.
+# Copyright 2016 Toomas Soome <tsoome@me.com>
+# Copyright (c) 2017, Chris Fraire <cfraire@me.com>.
+# Copyright (c) 2016 by Delphix. All rights reserved.
+# Copyright 2020 Joyent, Inc.
+#
+
+$(i386_ONLY) file path=usr/share/man/man8/rdmsr.8 variant.opensolaris.zone=global
+file path=usr/share/man/man8/6to4relay.8
+file path=usr/share/man/man8/Intro.8
+file path=usr/share/man/man8/acctadm.8
+file path=usr/share/man/man8/add_drv.8
+file path=usr/share/man/man8/addbadsec.8
+file path=usr/share/man/man8/arp.8
+file path=usr/share/man/man8/audit.8
+file path=usr/share/man/man8/audit_warn.8
+file path=usr/share/man/man8/auditconfig.8
+file path=usr/share/man/man8/auditd.8
+file path=usr/share/man/man8/auditrecord.8
+file path=usr/share/man/man8/auditreduce.8
+file path=usr/share/man/man8/auditstat.8
+link path=usr/share/man/man8/audlinks.8 target=devfsadm.8
+file path=usr/share/man/man8/autopush.8
+file path=usr/share/man/man8/bootadm.8
+file path=usr/share/man/man8/busstat.8
+file path=usr/share/man/man8/captoinfo.8
+file path=usr/share/man/man8/cfgadm.8
+file path=usr/share/man/man8/cfgadm_cardbus.8
+file path=usr/share/man/man8/cfgadm_fp.8
+file path=usr/share/man/man8/cfgadm_ib.8
+file path=usr/share/man/man8/cfgadm_pci.8
+file path=usr/share/man/man8/cfgadm_sata.8
+file path=usr/share/man/man8/cfgadm_sbd.8
+file path=usr/share/man/man8/cfgadm_scsi.8
+file path=usr/share/man/man8/cfgadm_usb.8
+file path=usr/share/man/man8/chroot.8
+file path=usr/share/man/man8/clear_locks.8
+file path=usr/share/man/man8/clinfo.8
+file path=usr/share/man/man8/clri.8
+file path=usr/share/man/man8/connstat.8
+file path=usr/share/man/man8/consadm.8
+file path=usr/share/man/man8/coreadm.8
+file path=usr/share/man/man8/cron.8
+file path=usr/share/man/man8/cryptoadm.8
+link path=usr/share/man/man8/dcopy.8 target=clri.8
+file path=usr/share/man/man8/dd.8
+file path=usr/share/man/man8/devattr.8
+file path=usr/share/man/man8/devfree.8
+file path=usr/share/man/man8/devfsadm.8
+link path=usr/share/man/man8/devfsadmd.8 target=devfsadm.8
+file path=usr/share/man/man8/devinfo.8
+file path=usr/share/man/man8/devlinks.8
+file path=usr/share/man/man8/devnm.8
+file path=usr/share/man/man8/devprop.8
+file path=usr/share/man/man8/devreserv.8
+file path=usr/share/man/man8/df.8
+file path=usr/share/man/man8/df_ufs.8
+file path=usr/share/man/man8/dfmounts.8
+file path=usr/share/man/man8/dfmounts_nfs.8
+file path=usr/share/man/man8/dfshares.8
+file path=usr/share/man/man8/dfshares_nfs.8
+file path=usr/share/man/man8/dhcpagent.8
+file path=usr/share/man/man8/disks.8
+file path=usr/share/man/man8/diskscan.8
+file path=usr/share/man/man8/dispadmin.8
+file path=usr/share/man/man8/dlmgmtd.8
+file path=usr/share/man/man8/dminfo.8
+file path=usr/share/man/man8/domainname.8
+file path=usr/share/man/man8/drvconfig.8
+file path=usr/share/man/man8/dumpadm.8
+file path=usr/share/man/man8/edquota.8
+file path=usr/share/man/man8/eeprom.8
+file path=usr/share/man/man8/embedded_su.8
+file path=usr/share/man/man8/fdetach.8
+file path=usr/share/man/man8/fdisk.8
+file path=usr/share/man/man8/ff.8
+file path=usr/share/man/man8/ff_ufs.8
+file path=usr/share/man/man8/fiocompress.8
+file path=usr/share/man/man8/fmthard.8
+file path=usr/share/man/man8/format.8
+file path=usr/share/man/man8/fsck.8
+file path=usr/share/man/man8/fsck_ufs.8
+file path=usr/share/man/man8/fsdb.8
+file path=usr/share/man/man8/fsdb_ufs.8
+file path=usr/share/man/man8/fsirand.8
+file path=usr/share/man/man8/fssnap.8
+file path=usr/share/man/man8/fssnap_ufs.8
+file path=usr/share/man/man8/fsstat.8
+file path=usr/share/man/man8/fstyp.8
+file path=usr/share/man/man8/fuser.8
+file path=usr/share/man/man8/getdev.8
+file path=usr/share/man/man8/getdevpolicy.8
+file path=usr/share/man/man8/getdgrp.8
+file path=usr/share/man/man8/getent.8
+file path=usr/share/man/man8/getty.8
+file path=usr/share/man/man8/getvol.8
+file path=usr/share/man/man8/groupadd.8
+file path=usr/share/man/man8/groupdel.8
+file path=usr/share/man/man8/groupmod.8
+file path=usr/share/man/man8/growfs.8
+link path=usr/share/man/man8/grpck.8 target=pwck.8
+file path=usr/share/man/man8/halt.8
+file path=usr/share/man/man8/hostconfig.8
+file path=usr/share/man/man8/hotplug.8
+file path=usr/share/man/man8/id.8
+file path=usr/share/man/man8/idmap.8
+file path=usr/share/man/man8/idmapd.8
+file path=usr/share/man/man8/if_mpadm.8
+file path=usr/share/man/man8/ifconfig.8
+file path=usr/share/man/man8/ifparse.8
+file path=usr/share/man/man8/ikeadm.8
+file path=usr/share/man/man8/ikecert.8
+file path=usr/share/man/man8/in.iked.8
+file path=usr/share/man/man8/in.mpathd.8
+file path=usr/share/man/man8/inetadm.8
+file path=usr/share/man/man8/inetconv.8
+file path=usr/share/man/man8/inetd.8
+file path=usr/share/man/man8/infocmp.8
+file path=usr/share/man/man8/init.8
+file path=usr/share/man/man8/install.8
+file path=usr/share/man/man8/installboot.8
+file path=usr/share/man/man8/installgrub.8
+file path=usr/share/man/man8/intrd.8
+link path=usr/share/man/man8/intro.8 target=Intro.8
+file path=usr/share/man/man8/iostat.8
+file path=usr/share/man/man8/ipaddrsel.8
+file path=usr/share/man/man8/ipmpstat.8
+file path=usr/share/man/man8/ipsecalgs.8
+file path=usr/share/man/man8/ipsecconf.8
+file path=usr/share/man/man8/ipseckey.8
+file path=usr/share/man/man8/keyserv.8
+file path=usr/share/man/man8/killall.8
+file path=usr/share/man/man8/ksslcfg.8
+file path=usr/share/man/man8/labelit.8
+file path=usr/share/man/man8/labelit_hsfs.8
+file path=usr/share/man/man8/labelit_ufs.8
+file path=usr/share/man/man8/link.8
+file path=usr/share/man/man8/listdgrp.8
+file path=usr/share/man/man8/listen.8
+file path=usr/share/man/man8/locator.8
+file path=usr/share/man/man8/lockfs.8
+file path=usr/share/man/man8/lofiadm.8
+file path=usr/share/man/man8/logadm.8
+file path=usr/share/man/man8/logins.8
+file path=usr/share/man/man8/mail.local.8
+file path=usr/share/man/man8/makedbm.8
+file path=usr/share/man/man8/mkdevalloc.8
+file path=usr/share/man/man8/mkdevmaps.8
+file path=usr/share/man/man8/mkfile.8
+file path=usr/share/man/man8/mkfs.8
+file path=usr/share/man/man8/mkfs_ufs.8
+file path=usr/share/man/man8/mknod.8
+file path=usr/share/man/man8/mkpwdict.8
+file path=usr/share/man/man8/modinfo.8
+file path=usr/share/man/man8/modload.8
+file path=usr/share/man/man8/modunload.8
+file path=usr/share/man/man8/mount.8
+file path=usr/share/man/man8/mount_hsfs.8
+file path=usr/share/man/man8/mount_tmpfs.8
+file path=usr/share/man/man8/mount_ufs.8
+file path=usr/share/man/man8/mountall.8
+file path=usr/share/man/man8/mpstat.8
+file path=usr/share/man/man8/msgid.8
+file path=usr/share/man/man8/mvdir.8
+file path=usr/share/man/man8/ncheck.8
+file path=usr/share/man/man8/ncheck_ufs.8
+file path=usr/share/man/man8/ndd.8
+file path=usr/share/man/man8/ndp.8
+file path=usr/share/man/man8/netstat.8
+file path=usr/share/man/man8/netstrategy.8
+file path=usr/share/man/man8/newfs.8
+file path=usr/share/man/man8/nlsadmin.8
+file path=usr/share/man/man8/nscd.8
+file path=usr/share/man/man8/nwamd.8
+file path=usr/share/man/man8/passmgmt.8
+file path=usr/share/man/man8/pbind.8
+file path=usr/share/man/man8/ping.8
+file path=usr/share/man/man8/pmadm.8
+file path=usr/share/man/man8/ports.8
+link path=usr/share/man/man8/poweroff.8 target=halt.8
+file path=usr/share/man/man8/praudit.8
+file path=usr/share/man/man8/prstat.8
+file path=usr/share/man/man8/prtconf.8
+file path=usr/share/man/man8/prtdiag.8
+file path=usr/share/man/man8/prtvtoc.8
+file path=usr/share/man/man8/psradm.8
+file path=usr/share/man/man8/psrinfo.8
+file path=usr/share/man/man8/psrset.8
+file path=usr/share/man/man8/putdev.8
+file path=usr/share/man/man8/putdgrp.8
+file path=usr/share/man/man8/pwck.8
+file path=usr/share/man/man8/pwconv.8
+file path=usr/share/man/man8/quot.8
+file path=usr/share/man/man8/quota.8
+file path=usr/share/man/man8/quotacheck.8
+link path=usr/share/man/man8/quotaoff.8 target=quotaon.8
+file path=usr/share/man/man8/quotaon.8
+file path=usr/share/man/man8/raidctl.8
+file path=usr/share/man/man8/ramdiskadm.8
+file path=usr/share/man/man8/rctladm.8
+file path=usr/share/man/man8/reboot.8
+file path=usr/share/man/man8/rem_drv.8
+file path=usr/share/man/man8/repquota.8
+link path=usr/share/man/man8/restricted_shell.8 target=rsh.8
+file path=usr/share/man/man8/roleadd.8
+file path=usr/share/man/man8/roledel.8
+file path=usr/share/man/man8/rolemod.8
+file path=usr/share/man/man8/root_archive.8
+file path=usr/share/man/man8/route.8
+file path=usr/share/man/man8/routeadm.8
+file path=usr/share/man/man8/rpcbind.8
+file path=usr/share/man/man8/rpcinfo.8
+file path=usr/share/man/man8/rsh.8
+file path=usr/share/man/man8/rtc.8
+file path=usr/share/man/man8/sac.8
+file path=usr/share/man/man8/sacadm.8
+file path=usr/share/man/man8/saf.8
+file path=usr/share/man/man8/savecore.8
+file path=usr/share/man/man8/setuname.8
+file path=usr/share/man/man8/share.8
+file path=usr/share/man/man8/share_nfs.8
+file path=usr/share/man/man8/shareall.8
+file path=usr/share/man/man8/sharectl.8
+file path=usr/share/man/man8/sharemgr.8
+file path=usr/share/man/man8/shutdown.8
+file path=usr/share/man/man8/smbios.8
+file path=usr/share/man/man8/soconfig.8
+file path=usr/share/man/man8/stmsboot.8
+file path=usr/share/man/man8/strace.8
+file path=usr/share/man/man8/strclean.8
+file path=usr/share/man/man8/strerr.8
+file path=usr/share/man/man8/sttydefs.8
+file path=usr/share/man/man8/su.8
+file path=usr/share/man/man8/sulogin.8
+file path=usr/share/man/man8/svc.configd.8
+file path=usr/share/man/man8/svc.ipfd.8
+file path=usr/share/man/man8/svc.startd.8
+file path=usr/share/man/man8/svcadm.8
+file path=usr/share/man/man8/svccfg.8
+file path=usr/share/man/man8/swap.8
+file path=usr/share/man/man8/sync.8
+file path=usr/share/man/man8/syncinit.8
+file path=usr/share/man/man8/syncloop.8
+file path=usr/share/man/man8/syncstat.8
+file path=usr/share/man/man8/sysdef.8
+file path=usr/share/man/man8/syseventadm.8
+file path=usr/share/man/man8/syseventconfd.8
+file path=usr/share/man/man8/syseventd.8
+file path=usr/share/man/man8/syslogd.8
+file path=usr/share/man/man8/tapes.8
+link path=usr/share/man/man8/telinit.8 target=init.8
+file path=usr/share/man/man8/tic.8
+file path=usr/share/man/man8/tpmadm.8
+file path=usr/share/man/man8/traceroute.8
+file path=usr/share/man/man8/trapstat.8
+file path=usr/share/man/man8/ttyadm.8
+file path=usr/share/man/man8/ttymon.8
+file path=usr/share/man/man8/tunefs.8
+file path=usr/share/man/man8/tzreload.8
+file path=usr/share/man/man8/tzselect.8
+file path=usr/share/man/man8/uadmin.8
+file path=usr/share/man/man8/ucodeadm.8
+file path=usr/share/man/man8/ufsdump.8
+file path=usr/share/man/man8/ufsrestore.8
+link path=usr/share/man/man8/umount.8 target=mount.8
+link path=usr/share/man/man8/umountall.8 target=mountall.8
+link path=usr/share/man/man8/unlink.8 target=link.8
+file path=usr/share/man/man8/unshare.8
+file path=usr/share/man/man8/unshare_nfs.8
+link path=usr/share/man/man8/unshareall.8 target=shareall.8
+file path=usr/share/man/man8/update_drv.8
+file path=usr/share/man/man8/useradd.8
+file path=usr/share/man/man8/userdel.8
+file path=usr/share/man/man8/usermod.8
+file path=usr/share/man/man8/utmpd.8
+file path=usr/share/man/man8/vmstat.8
+file path=usr/share/man/man8/volcopy.8
+file path=usr/share/man/man8/volcopy_ufs.8
+file path=usr/share/man/man8/wall.8
+file path=usr/share/man/man8/whodo.8
+file path=usr/share/man/man8/wracct.8
+file path=usr/share/man/man8/zdump.8
+file path=usr/share/man/man8/zic.8
diff --git a/usr/src/pkg/manifests/SUNWcs.p5m b/usr/src/pkg/manifests/SUNWcs.p5m
index a7406d7761..76e7943d1e 100644
--- a/usr/src/pkg/manifests/SUNWcs.p5m
+++ b/usr/src/pkg/manifests/SUNWcs.p5m
@@ -33,11 +33,11 @@
#
<include SUNWcs.man1.inc>
-<include SUNWcs.man1m.inc>
-<include SUNWcs.man4.inc>
+<include SUNWcs.man4d.inc>
+<include SUNWcs.man4fs.inc>
<include SUNWcs.man5.inc>
-<include SUNWcs.man7d.inc>
-<include SUNWcs.man7fs.inc>
+<include SUNWcs.man7.inc>
+<include SUNWcs.man8.inc>
set name=pkg.fmri value=pkg:/SUNWcs@$(PKGVERS)
set name=pkg.summary value="Core Solaris"
set name=pkg.description \
@@ -1547,11 +1547,11 @@ dir path=usr/share/lib/xml/style group=sys
file path=usr/share/lib/xml/style/adt_record.xsl.1
dir path=usr/share/man
dir path=usr/share/man/man1
-dir path=usr/share/man/man1m
dir path=usr/share/man/man4
+dir path=usr/share/man/man4d
+dir path=usr/share/man/man4fs
dir path=usr/share/man/man5
-dir path=usr/share/man/man7d
-dir path=usr/share/man/man7fs
+dir path=usr/share/man/man8
dir path=usr/share/src group=sys
link path=usr/spool target=../var/spool
link path=usr/src target=./share/src
diff --git a/usr/src/pkg/manifests/SUNWcsd.p5m b/usr/src/pkg/manifests/SUNWcsd.p5m
index ba6b528f25..317f1e578d 100644
--- a/usr/src/pkg/manifests/SUNWcsd.p5m
+++ b/usr/src/pkg/manifests/SUNWcsd.p5m
@@ -76,8 +76,8 @@ file path=lib/svc/manifest/system/sysevent.xml group=sys mode=0444
dir path=lib/svc/method
file path=lib/svc/method/svc-syseventd mode=0555
dir path=usr/share/man
-dir path=usr/share/man/man4
-file path=usr/share/man/man4/path_to_inst.4
+dir path=usr/share/man/man5
+file path=usr/share/man/man5/path_to_inst.5
legacy pkg=SUNWcsd \
desc="core entries for /dev and /devices needed for the initial boot of Solaris" \
name="Core Solaris Devices"
diff --git a/usr/src/pkg/manifests/developer-acpi.p5m b/usr/src/pkg/manifests/developer-acpi.p5m
index cfb7452ca8..2bfa5c6eb5 100644
--- a/usr/src/pkg/manifests/developer-acpi.p5m
+++ b/usr/src/pkg/manifests/developer-acpi.p5m
@@ -21,7 +21,7 @@ set name=variant.arch value=i386
file path=usr/sbin/acpidump mode=0555
file path=usr/sbin/acpixtract mode=0555
file path=usr/sbin/iasl mode=0555
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/acpidump.1m
-file path=usr/share/man/man1m/acpixtract.1m
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/acpidump.8
+file path=usr/share/man/man8/acpixtract.8
depend type=require fmri=driver/x11/xsvc
diff --git a/usr/src/pkg/manifests/developer-driver-ftsafe.p5m b/usr/src/pkg/manifests/developer-driver-ftsafe.p5m
index da3ca4ea3b..59cd09eb62 100644
--- a/usr/src/pkg/manifests/developer-driver-ftsafe.p5m
+++ b/usr/src/pkg/manifests/developer-driver-ftsafe.p5m
@@ -40,9 +40,9 @@ file path=usr/lib/th_script mode=0555
dir path=usr/sbin
file path=usr/sbin/th_define mode=0555
file path=usr/sbin/th_manage mode=0555
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/th_define.1m
-file path=usr/share/man/man1m/th_manage.1m
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/th_define.8
+file path=usr/share/man/man8/th_manage.8
driver name=bofi perms="* 0600 bin bin"
legacy pkg=SUNWftdur desc="Driver Hardening Test Harness" \
name="ftSafe developer utilities package (Root)"
diff --git a/usr/src/pkg/manifests/developer-dtrace.p5m b/usr/src/pkg/manifests/developer-dtrace.p5m
index 23aec2e023..9c853d368f 100644
--- a/usr/src/pkg/manifests/developer-dtrace.p5m
+++ b/usr/src/pkg/manifests/developer-dtrace.p5m
@@ -211,13 +211,13 @@ dir path=usr/share
dir path=usr/share/lib
dir path=usr/share/lib/java group=sys
file path=usr/share/lib/java/dtrace.jar group=sys
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/dtrace.1m
-file path=usr/share/man/man1m/intrstat.1m
-file path=usr/share/man/man1m/lockstat.1m
-file path=usr/share/man/man1m/plockstat.1m
dir path=usr/share/man/man3lib
file path=usr/share/man/man3lib/libdtrace.3lib
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/dtrace.8
+file path=usr/share/man/man8/intrstat.8
+file path=usr/share/man/man8/lockstat.8
+file path=usr/share/man/man8/plockstat.8
legacy pkg=SUNWdtrc desc="Dynamic Tracing (DTrace) Clients" \
name="DTrace Clients"
license cr_Sun license=cr_Sun
diff --git a/usr/src/pkg/manifests/developer-linker.p5m b/usr/src/pkg/manifests/developer-linker.p5m
index c13a9d4e7d..795a5dabf0 100644
--- a/usr/src/pkg/manifests/developer-linker.p5m
+++ b/usr/src/pkg/manifests/developer-linker.p5m
@@ -125,8 +125,8 @@ file path=usr/share/man/man1/sotruss.1
file path=usr/share/man/man1/strings.1
file path=usr/share/man/man1/truss.1
file path=usr/share/man/man1/whocalls.1
-dir path=usr/share/man/man4
-file path=usr/share/man/man4/a.out.4
+dir path=usr/share/man/man5
+file path=usr/share/man/man5/a.out.5
legacy pkg=SUNWtoo \
desc="utilities for software development, including ld, ldd, od, and truss" \
name="Programming Tools"
diff --git a/usr/src/pkg/manifests/diagnostic-cpu-counters.p5m b/usr/src/pkg/manifests/diagnostic-cpu-counters.p5m
index 4184e511f4..b9ef682e99 100644
--- a/usr/src/pkg/manifests/diagnostic-cpu-counters.p5m
+++ b/usr/src/pkg/manifests/diagnostic-cpu-counters.p5m
@@ -155,8 +155,6 @@ dir path=usr/sbin
file path=usr/sbin/cpustat mode=0555
dir path=usr/share/man/man1
file path=usr/share/man/man1/cputrack.1
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/cpustat.1m
dir path=usr/share/man/man3cpc
$(i386_ONLY)file path=usr/share/man/man3cpc/amd_f17h_zen1_events.3cpc
$(i386_ONLY)file path=usr/share/man/man3cpc/amd_f17h_zen2_events.3cpc
@@ -270,6 +268,8 @@ $(i386_ONLY)file path=usr/share/man/man3cpc/wsm_ex_events.3cpc
dir path=usr/share/man/man3lib
file path=usr/share/man/man3lib/libcpc.3lib
file path=usr/share/man/man3lib/libpctx.3lib
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/cpustat.8
legacy pkg=SUNWcpcu desc="CPU Performance Counter libraries and utilities" \
name="CPU Performance Counter libraries and utilities"
license cr_Sun license=cr_Sun
diff --git a/usr/src/pkg/manifests/diagnostic-diskinfo.p5m b/usr/src/pkg/manifests/diagnostic-diskinfo.p5m
index 9dc4b370b7..fa36d419ee 100644
--- a/usr/src/pkg/manifests/diagnostic-diskinfo.p5m
+++ b/usr/src/pkg/manifests/diagnostic-diskinfo.p5m
@@ -28,6 +28,6 @@ set name=variant.arch value=$(ARCH)
dir path=usr group=sys
dir path=usr/bin
file path=usr/bin/diskinfo mode=0555
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/diskinfo.1m mode=0444
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/diskinfo.8 mode=0444
license lic_CDDL license=lic_CDDL
diff --git a/usr/src/pkg/manifests/diagnostic-latencytop.p5m b/usr/src/pkg/manifests/diagnostic-latencytop.p5m
index ad2b418f03..c17b942e47 100644
--- a/usr/src/pkg/manifests/diagnostic-latencytop.p5m
+++ b/usr/src/pkg/manifests/diagnostic-latencytop.p5m
@@ -36,8 +36,8 @@ $(i386_ONLY)file path=usr/bin/$(ARCH32)/latencytop mode=0555
dir path=usr/bin/$(ARCH64)
file path=usr/bin/$(ARCH64)/latencytop mode=0555
hardlink path=usr/bin/latencytop target=../../usr/lib/isaexec
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/latencytop.1m
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/latencytop.8
legacy pkg=SUNWlatencytop desc="LatencyTOP tool" name="LatencyTOP tool"
license cr_Sun license=cr_Sun
license lic_CDDL license=lic_CDDL
diff --git a/usr/src/pkg/manifests/diagnostic-powertop.p5m b/usr/src/pkg/manifests/diagnostic-powertop.p5m
index f20ba8b7be..44dee6f9d5 100644
--- a/usr/src/pkg/manifests/diagnostic-powertop.p5m
+++ b/usr/src/pkg/manifests/diagnostic-powertop.p5m
@@ -36,8 +36,8 @@ $(i386_ONLY)file path=usr/bin/$(ARCH32)/powertop mode=0555
dir path=usr/bin/$(ARCH64)
file path=usr/bin/$(ARCH64)/powertop mode=0555
hardlink path=usr/bin/powertop target=../../usr/lib/isaexec
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/powertop.1m
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/powertop.8
legacy pkg=SUNWpowertop desc="PowerTOP tool" name="PowerTOP tool"
license usr/src/cmd/powertop/common/COPYING \
license=usr/src/cmd/powertop/common/COPYING
diff --git a/usr/src/pkg/manifests/driver-audio-audio810.p5m b/usr/src/pkg/manifests/driver-audio-audio810.p5m
index 77a26d0fdd..c91dc7e29b 100644
--- a/usr/src/pkg/manifests/driver-audio-audio810.p5m
+++ b/usr/src/pkg/manifests/driver-audio-audio810.p5m
@@ -43,8 +43,8 @@ file path=kernel/drv/$(ARCH64)/audio810 group=sys
file path=kernel/drv/audio810.conf group=sys \
original_name=SUNWad810:kernel/drv/audio810.conf preserve=true
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/audio810.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/audio810.4d
driver name=audio810 \
alias=pci1022,7445 \
alias=pci1022,746d \
diff --git a/usr/src/pkg/manifests/driver-audio-audiocmi.p5m b/usr/src/pkg/manifests/driver-audio-audiocmi.p5m
index 1ef7eaf2d8..804fcd0f3d 100644
--- a/usr/src/pkg/manifests/driver-audio-audiocmi.p5m
+++ b/usr/src/pkg/manifests/driver-audio-audiocmi.p5m
@@ -39,8 +39,8 @@ dir path=kernel/drv group=sys
dir path=kernel/drv/$(ARCH64) group=sys
file path=kernel/drv/$(ARCH64)/audiocmi group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/audiocmi.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/audiocmi.4d
driver name=audiocmi \
alias=pci13f6,100 \
alias=pci13f6,101 \
diff --git a/usr/src/pkg/manifests/driver-audio-audiocmihd.p5m b/usr/src/pkg/manifests/driver-audio-audiocmihd.p5m
index b4293e8432..9a89a7e4e8 100644
--- a/usr/src/pkg/manifests/driver-audio-audiocmihd.p5m
+++ b/usr/src/pkg/manifests/driver-audio-audiocmihd.p5m
@@ -43,7 +43,7 @@ dir path=kernel/drv group=sys
dir path=kernel/drv/$(ARCH64) group=sys
file path=kernel/drv/$(ARCH64)/audiocmihd group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/audiocmihd.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/audiocmihd.4d
driver name=audiocmihd alias=pci13f6,8788
license lic_CDDL license=lic_CDDL
diff --git a/usr/src/pkg/manifests/driver-audio-audioemu10k.p5m b/usr/src/pkg/manifests/driver-audio-audioemu10k.p5m
index ab9c9192ba..99fd1ae14c 100644
--- a/usr/src/pkg/manifests/driver-audio-audioemu10k.p5m
+++ b/usr/src/pkg/manifests/driver-audio-audioemu10k.p5m
@@ -43,8 +43,8 @@ dir path=kernel/drv group=sys
dir path=kernel/drv/$(ARCH64) group=sys
file path=kernel/drv/$(ARCH64)/audioemu10k group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/audioemu10k.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/audioemu10k.4d
driver name=audioemu10k \
alias=pci1102,2 \
alias=pci1102,4 \
diff --git a/usr/src/pkg/manifests/driver-audio-audiohd.p5m b/usr/src/pkg/manifests/driver-audio-audiohd.p5m
index 0693f1844c..548f87536a 100644
--- a/usr/src/pkg/manifests/driver-audio-audiohd.p5m
+++ b/usr/src/pkg/manifests/driver-audio-audiohd.p5m
@@ -41,8 +41,8 @@ dir path=kernel/drv/$(ARCH64) group=sys
file path=kernel/drv/$(ARCH64)/audiohd group=sys
file path=kernel/drv/audiohd.conf group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/audiohd.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/audiohd.4d
driver name=audiohd \
alias=pci10de,371 \
alias=pci8086,2668 \
diff --git a/usr/src/pkg/manifests/driver-audio-audioixp.p5m b/usr/src/pkg/manifests/driver-audio-audioixp.p5m
index cc7b2f2f6a..0415d5b27d 100644
--- a/usr/src/pkg/manifests/driver-audio-audioixp.p5m
+++ b/usr/src/pkg/manifests/driver-audio-audioixp.p5m
@@ -40,8 +40,8 @@ dir path=kernel/drv group=sys
dir path=kernel/drv/$(ARCH64) group=sys
file path=kernel/drv/$(ARCH64)/audioixp group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/audioixp.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/audioixp.4d
driver name=audioixp \
alias=pci1002,4341 \
alias=pci1002,4361 \
diff --git a/usr/src/pkg/manifests/driver-audio-audiols.p5m b/usr/src/pkg/manifests/driver-audio-audiols.p5m
index 9fbf893317..7bedc79c45 100644
--- a/usr/src/pkg/manifests/driver-audio-audiols.p5m
+++ b/usr/src/pkg/manifests/driver-audio-audiols.p5m
@@ -40,8 +40,8 @@ dir path=kernel/drv group=sys
dir path=kernel/drv/$(ARCH64) group=sys
file path=kernel/drv/$(ARCH64)/audiols group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/audiols.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/audiols.4d
driver name=audiols alias=pci1102,7
legacy pkg=SUNWaudiols desc="SunOS audio device driver for Creative Audigy LS" \
name="Creative Audigy LS Audio Driver"
diff --git a/usr/src/pkg/manifests/driver-audio-audiop16x.p5m b/usr/src/pkg/manifests/driver-audio-audiop16x.p5m
index 8b07fb2ce9..0cf4d8f35a 100644
--- a/usr/src/pkg/manifests/driver-audio-audiop16x.p5m
+++ b/usr/src/pkg/manifests/driver-audio-audiop16x.p5m
@@ -40,8 +40,8 @@ dir path=kernel/drv group=sys
dir path=kernel/drv/$(ARCH64) group=sys
file path=kernel/drv/$(ARCH64)/audiop16x group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/audiop16x.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/audiop16x.4d
driver name=audiop16x alias=pci1102,6
legacy pkg=SUNWaudiop16x \
desc="SunOS audio device driver for Creative P16X (EMU10K1X)" \
diff --git a/usr/src/pkg/manifests/driver-audio-audiosolo.p5m b/usr/src/pkg/manifests/driver-audio-audiosolo.p5m
index 21471eac19..b7cbd72e40 100644
--- a/usr/src/pkg/manifests/driver-audio-audiosolo.p5m
+++ b/usr/src/pkg/manifests/driver-audio-audiosolo.p5m
@@ -39,8 +39,8 @@ dir path=kernel/drv group=sys
dir path=kernel/drv/$(ARCH64) group=sys
file path=kernel/drv/$(ARCH64)/audiosolo group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/audiosolo.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/audiosolo.4d
driver name=audiosolo alias=pci125d,1969
legacy pkg=SUNWaudiosolo desc="SunOS audio device driver for ESS Solo-1" \
name="ESS Solo-1 Audio Driver"
diff --git a/usr/src/pkg/manifests/driver-audio-audiovia823x.p5m b/usr/src/pkg/manifests/driver-audio-audiovia823x.p5m
index 4d6483aa8f..811c4d9ae7 100644
--- a/usr/src/pkg/manifests/driver-audio-audiovia823x.p5m
+++ b/usr/src/pkg/manifests/driver-audio-audiovia823x.p5m
@@ -40,8 +40,8 @@ dir path=kernel/drv group=sys
dir path=kernel/drv/$(ARCH64) group=sys
file path=kernel/drv/$(ARCH64)/audiovia823x group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/audiovia823x.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/audiovia823x.4d
driver name=audiovia823x alias=pci1106,3059
legacy pkg=SUNWvia823x \
desc="SunOS audio device driver for VIA VT823x south bridges" \
diff --git a/usr/src/pkg/manifests/driver-audio.p5m b/usr/src/pkg/manifests/driver-audio.p5m
index 47890255cd..3e11fe7493 100644
--- a/usr/src/pkg/manifests/driver-audio.p5m
+++ b/usr/src/pkg/manifests/driver-audio.p5m
@@ -48,17 +48,17 @@ dir path=kernel/misc group=sys
dir path=kernel/misc/$(ARCH64) group=sys
file path=kernel/misc/$(ARCH64)/ac97 group=sys mode=0755
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/audio.7d
-file path=usr/share/man/man7d/audio1575.7d
-$(sparc_ONLY)file path=usr/share/man/man7d/audiocs.7d
-file path=usr/share/man/man7d/audioens.7d
-file path=usr/share/man/man7d/audiopci.7d
-file path=usr/share/man/man7d/audiots.7d
-dir path=usr/share/man/man7i
-file path=usr/share/man/man7i/audio.7i
-file path=usr/share/man/man7i/dsp.7i
-file path=usr/share/man/man7i/mixer.7i
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/audio.4d
+file path=usr/share/man/man4d/audio1575.4d
+$(sparc_ONLY)file path=usr/share/man/man4d/audiocs.4d
+file path=usr/share/man/man4d/audioens.4d
+file path=usr/share/man/man4d/audiopci.4d
+file path=usr/share/man/man4d/audiots.4d
+dir path=usr/share/man/man4i
+file path=usr/share/man/man4i/audio.4i
+file path=usr/share/man/man4i/dsp.4i
+file path=usr/share/man/man4i/mixer.4i
driver name=audio perms="* 0666 root sys"
driver name=audio1575 alias=pci10b9,5455
$(sparc_ONLY)driver name=audiocs alias=SUNW,CS4231
diff --git a/usr/src/pkg/manifests/driver-cpu-amd-zen.p5m b/usr/src/pkg/manifests/driver-cpu-amd-zen.p5m
index f2a3067374..a8500fac4f 100644
--- a/usr/src/pkg/manifests/driver-cpu-amd-zen.p5m
+++ b/usr/src/pkg/manifests/driver-cpu-amd-zen.p5m
@@ -26,9 +26,9 @@ file path=kernel/drv/$(ARCH64)/amdzen group=sys
file path=kernel/drv/$(ARCH64)/amdzen_stub group=sys
file path=kernel/drv/amdzen.conf group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/amdzen.7d
-link path=usr/share/man/man7d/amdzen_stub.7d target=amdzen.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/amdzen.4d
+link path=usr/share/man/man4d/amdzen_stub.4d target=amdzen.4d
driver name=amdzen
#
# 1440-1447: f17h m70-7fh, f19h m20-2f df
diff --git a/usr/src/pkg/manifests/driver-cpu-mc.p5m b/usr/src/pkg/manifests/driver-cpu-mc.p5m
index 9e7f7f8e3b..9ab02ea43d 100644
--- a/usr/src/pkg/manifests/driver-cpu-mc.p5m
+++ b/usr/src/pkg/manifests/driver-cpu-mc.p5m
@@ -26,9 +26,9 @@ file path=kernel/drv/$(ARCH64)/imc group=sys
file path=kernel/drv/$(ARCH64)/imcstub group=sys
file path=kernel/drv/imc.conf group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/imc.7d
-file path=usr/share/man/man7d/imcstub.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/imc.4d
+file path=usr/share/man/man4d/imcstub.4d
driver name=imc
driver name=imcstub \
alias=pci8086,e1e,p \
diff --git a/usr/src/pkg/manifests/driver-cpu-sensor.p5m b/usr/src/pkg/manifests/driver-cpu-sensor.p5m
index 1cf50b2e5c..cea61b8608 100644
--- a/usr/src/pkg/manifests/driver-cpu-sensor.p5m
+++ b/usr/src/pkg/manifests/driver-cpu-sensor.p5m
@@ -29,11 +29,11 @@ file path=kernel/drv/$(ARCH64)/pchtemp group=sys
file path=kernel/drv/$(ARCH64)/smntemp group=sys
file path=kernel/drv/coretemp.conf group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/amdnbtemp.7d
-file path=usr/share/man/man7d/coretemp.7d
-file path=usr/share/man/man7d/pchtemp.7d
-file path=usr/share/man/man7d/smntemp.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/amdnbtemp.4d
+file path=usr/share/man/man4d/coretemp.4d
+file path=usr/share/man/man4d/pchtemp.4d
+file path=usr/share/man/man4d/smntemp.4d
driver name=amdnbtemp \
alias=pci1022,1203,p \
alias=pci1022,1303,p \
diff --git a/usr/src/pkg/manifests/driver-crypto-dca.p5m b/usr/src/pkg/manifests/driver-crypto-dca.p5m
index b6ef633d5f..7965623be6 100644
--- a/usr/src/pkg/manifests/driver-crypto-dca.p5m
+++ b/usr/src/pkg/manifests/driver-crypto-dca.p5m
@@ -49,8 +49,8 @@ dir path=usr/lib/locale/C/LC_MESSAGES
file path=usr/lib/locale/C/LC_MESSAGES/SCA1000.mo mode=0444
file path=usr/lib/locale/C/LC_MESSAGES/SCA500.mo mode=0444
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/dca.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/dca.4d
driver name=dca \
alias=pci108e,5454 \
alias=pci108e,5455 \
diff --git a/usr/src/pkg/manifests/driver-developer-amd-zen.p5m b/usr/src/pkg/manifests/driver-developer-amd-zen.p5m
index 86254e3fd5..19bed149e5 100644
--- a/usr/src/pkg/manifests/driver-developer-amd-zen.p5m
+++ b/usr/src/pkg/manifests/driver-developer-amd-zen.p5m
@@ -28,9 +28,9 @@ dir path=usr/lib
file path=usr/lib/udf mode=0555
file path=usr/lib/usmn mode=0555
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/usmn.7d
-file path=usr/share/man/man7d/zen_udf.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/usmn.4d
+file path=usr/share/man/man4d/zen_udf.4d
driver name=usmn
driver name=zen_udf
license lic_CDDL license=lic_CDDL
diff --git a/usr/src/pkg/manifests/driver-firewire.p5m b/usr/src/pkg/manifests/driver-firewire.p5m
index ad61cc55c1..ae4c27551b 100644
--- a/usr/src/pkg/manifests/driver-firewire.p5m
+++ b/usr/src/pkg/manifests/driver-firewire.p5m
@@ -44,11 +44,11 @@ dir path=kernel/misc group=sys
dir path=kernel/misc/$(ARCH64) group=sys
file path=kernel/misc/$(ARCH64)/s1394 group=sys mode=0755
dir path=usr/share/man
-dir path=usr/share/man/man7d
-link path=usr/share/man/man7d/1394.7d target=ieee1394.7d
-link path=usr/share/man/man7d/firewire.7d target=ieee1394.7d
-file path=usr/share/man/man7d/hci1394.7d
-file path=usr/share/man/man7d/ieee1394.7d
+dir path=usr/share/man/man4d
+link path=usr/share/man/man4d/1394.4d target=ieee1394.4d
+link path=usr/share/man/man4d/firewire.4d target=ieee1394.4d
+file path=usr/share/man/man4d/hci1394.4d
+file path=usr/share/man/man4d/ieee1394.4d
driver name=hci1394 perms="* 0600 root sys" alias=pciclass,0c0010
legacy pkg=SUNW1394 desc="IEEE1394 Framework and OpenHCI Driver" \
name="Sun IEEE1394 Framework"
diff --git a/usr/src/pkg/manifests/driver-graphics-av1394.p5m b/usr/src/pkg/manifests/driver-graphics-av1394.p5m
index 36c30481cb..475361de63 100644
--- a/usr/src/pkg/manifests/driver-graphics-av1394.p5m
+++ b/usr/src/pkg/manifests/driver-graphics-av1394.p5m
@@ -39,8 +39,8 @@ dir path=kernel/drv group=sys
dir path=kernel/drv/$(ARCH64) group=sys
file path=kernel/drv/$(ARCH64)/av1394 group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/av1394.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/av1394.4d
driver name=av1394 perms="* 0600 root sys" \
alias=firewire00a02d,010000 \
alias=firewire00a02d,010001
diff --git a/usr/src/pkg/manifests/driver-graphics-dcam1394-devfsadm-dcam1394.p5m b/usr/src/pkg/manifests/driver-graphics-dcam1394-devfsadm-dcam1394.p5m
index 7c6a39a2b4..63b05fc81d 100644
--- a/usr/src/pkg/manifests/driver-graphics-dcam1394-devfsadm-dcam1394.p5m
+++ b/usr/src/pkg/manifests/driver-graphics-dcam1394-devfsadm-dcam1394.p5m
@@ -45,8 +45,8 @@ dir path=usr/lib/devfsadm group=sys
dir path=usr/lib/devfsadm/linkmod group=sys
file path=usr/lib/devfsadm/linkmod/SUNW_dcam1394_link.so group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/dcam1394.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/dcam1394.4d
legacy pkg=SUNWfwdcu desc="Sun IEEE1394 Video Conferencing support" \
name="Sun IEEE1394 Video Conferencing Support (Usr)"
license cr_Sun license=cr_Sun
diff --git a/usr/src/pkg/manifests/driver-graphics-usbvc.p5m b/usr/src/pkg/manifests/driver-graphics-usbvc.p5m
index fdb71e29f5..9947eb5318 100644
--- a/usr/src/pkg/manifests/driver-graphics-usbvc.p5m
+++ b/usr/src/pkg/manifests/driver-graphics-usbvc.p5m
@@ -39,8 +39,8 @@ dir path=kernel/drv group=sys
dir path=kernel/drv/$(ARCH64) group=sys
file path=kernel/drv/$(ARCH64)/usbvc group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/usbvc.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/usbvc.4d
driver name=usbvc perms="* 0666 root sys" \
alias=usbia46d,8c1.config1.0 \
alias=usbia46d,8c2.config1.0 \
diff --git a/usr/src/pkg/manifests/driver-i86pc-platform.p5m b/usr/src/pkg/manifests/driver-i86pc-platform.p5m
index 6f8a1a071a..334845726a 100644
--- a/usr/src/pkg/manifests/driver-i86pc-platform.p5m
+++ b/usr/src/pkg/manifests/driver-i86pc-platform.p5m
@@ -62,11 +62,11 @@ file path=kernel/strmod/$(ARCH64)/vuidm3p group=sys mode=0755
file path=kernel/strmod/$(ARCH64)/vuidm4p group=sys mode=0755
file path=kernel/strmod/$(ARCH64)/vuidm5p group=sys mode=0755
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/asy.7d
-file path=usr/share/man/man7d/cmdk.7d
-file path=usr/share/man/man7d/ecpp.7d
-file path=usr/share/man/man7d/fd.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/asy.4d
+file path=usr/share/man/man4d/cmdk.4d
+file path=usr/share/man/man4d/ecpp.4d
+file path=usr/share/man/man4d/fd.4d
driver name=asy perms="* 0666 root sys" perms="*,cu 0600 uucp uucp" \
alias=pci11c1,480
driver name=cmdk perms="* 0640 root sys"
diff --git a/usr/src/pkg/manifests/driver-ipmi.p5m b/usr/src/pkg/manifests/driver-ipmi.p5m
index 6c19e586a2..1741c86709 100644
--- a/usr/src/pkg/manifests/driver-ipmi.p5m
+++ b/usr/src/pkg/manifests/driver-ipmi.p5m
@@ -36,8 +36,8 @@ file path=usr/kernel/drv/amd64/ipmi
file path=usr/kernel/drv/ipmi.conf
dir path=usr/share
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/ipmi.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/ipmi.4d
driver name=ipmi perms="* 0600 root sys"
license lic_CDDL license=lic_CDDL
license usr/src/uts/intel/io/ipmi/THIRDPARTYLICENSE \
diff --git a/usr/src/pkg/manifests/driver-misc-ccid.p5m b/usr/src/pkg/manifests/driver-misc-ccid.p5m
index 7cf6cad363..b1f0f1a8e6 100644
--- a/usr/src/pkg/manifests/driver-misc-ccid.p5m
+++ b/usr/src/pkg/manifests/driver-misc-ccid.p5m
@@ -48,9 +48,9 @@ dir path=usr/sbin variant.opensolaris.zone=global
file path=usr/sbin/ccidadm mode=0555 variant.opensolaris.zone=global
dir path=usr/share
dir path=usr/share/man
-dir path=usr/share/man/man1m variant.opensolaris.zone=global
-file path=usr/share/man/man1m/ccidadm.1m variant.opensolaris.zone=global
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/ccid.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/ccid.4d
+dir path=usr/share/man/man8 variant.opensolaris.zone=global
+file path=usr/share/man/man8/ccidadm.8 variant.opensolaris.zone=global
driver name=ccid perms="* 0600 root sys" class=misc alias=usbif,classb
license lic_CDDL license=lic_CDDL
diff --git a/usr/src/pkg/manifests/driver-misc-virtio.p5m b/usr/src/pkg/manifests/driver-misc-virtio.p5m
index dfe4ad0e8a..75e4b97e88 100644
--- a/usr/src/pkg/manifests/driver-misc-virtio.p5m
+++ b/usr/src/pkg/manifests/driver-misc-virtio.p5m
@@ -39,6 +39,6 @@ dir path=kernel/misc group=sys
dir path=kernel/misc/$(ARCH64) group=sys
file path=kernel/misc/$(ARCH64)/virtio group=sys mode=0755
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/virtio.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/virtio.4d
license lic_CDDL license=lic_CDDL
diff --git a/usr/src/pkg/manifests/driver-network-afe.p5m b/usr/src/pkg/manifests/driver-network-afe.p5m
index 46d491aac1..a6937fbfbd 100644
--- a/usr/src/pkg/manifests/driver-network-afe.p5m
+++ b/usr/src/pkg/manifests/driver-network-afe.p5m
@@ -41,8 +41,8 @@ dir path=kernel/drv group=sys
dir path=kernel/drv/$(ARCH64) group=sys
file path=kernel/drv/$(ARCH64)/afe group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/afe.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/afe.4d
driver name=afe perms="* 0666 root sys" clone_perms="afe 0666 root sys" \
alias=pci10b7,9300 \
alias=pci1113,1216 \
diff --git a/usr/src/pkg/manifests/driver-network-amd8111s.p5m b/usr/src/pkg/manifests/driver-network-amd8111s.p5m
index abe7f15e6c..e868187676 100644
--- a/usr/src/pkg/manifests/driver-network-amd8111s.p5m
+++ b/usr/src/pkg/manifests/driver-network-amd8111s.p5m
@@ -40,8 +40,8 @@ dir path=kernel/drv group=sys
dir path=kernel/drv/$(ARCH64) group=sys
file path=kernel/drv/$(ARCH64)/amd8111s group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/amd8111s.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/amd8111s.4d
driver name=amd8111s alias=pci1022,7462
legacy pkg=SUNWamd8111s desc="AMD8111 FAST Ethernet Network Adapter Driver" \
name="AMD8111 Fast Ethernet Driver"
diff --git a/usr/src/pkg/manifests/driver-network-arn.p5m b/usr/src/pkg/manifests/driver-network-arn.p5m
index 0f2652e4c2..3ea949e56c 100644
--- a/usr/src/pkg/manifests/driver-network-arn.p5m
+++ b/usr/src/pkg/manifests/driver-network-arn.p5m
@@ -40,8 +40,8 @@ dir path=kernel/drv group=sys
dir path=kernel/drv/$(ARCH64) group=sys
file path=kernel/drv/$(ARCH64)/arn group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/arn.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/arn.4d
driver name=arn perms="* 0666 root sys" clone_perms="arn 0666 root sys" \
alias=pciex168c,2a \
alias=pciex168c,2b
diff --git a/usr/src/pkg/manifests/driver-network-atge.p5m b/usr/src/pkg/manifests/driver-network-atge.p5m
index 6dc9c9c238..22fb7666d3 100644
--- a/usr/src/pkg/manifests/driver-network-atge.p5m
+++ b/usr/src/pkg/manifests/driver-network-atge.p5m
@@ -42,8 +42,8 @@ dir path=kernel/drv group=sys
dir path=kernel/drv/$(ARCH64) group=sys
file path=kernel/drv/$(ARCH64)/atge group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/atge.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/atge.4d
driver name=atge \
alias=pciex1969,1026 \
alias=pciex1969,1048 \
diff --git a/usr/src/pkg/manifests/driver-network-ath.p5m b/usr/src/pkg/manifests/driver-network-ath.p5m
index 0732fa5baa..dde91691e5 100644
--- a/usr/src/pkg/manifests/driver-network-ath.p5m
+++ b/usr/src/pkg/manifests/driver-network-ath.p5m
@@ -40,8 +40,8 @@ dir path=kernel/drv group=sys
dir path=kernel/drv/$(ARCH64) group=sys
file path=kernel/drv/$(ARCH64)/ath group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/ath.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/ath.4d
driver name=ath perms="* 0666 root sys" clone_perms="ath 0666 root sys" \
alias=pci168c,12 \
alias=pci168c,13 \
diff --git a/usr/src/pkg/manifests/driver-network-atu.p5m b/usr/src/pkg/manifests/driver-network-atu.p5m
index b1dd610af0..6d8213b4c0 100644
--- a/usr/src/pkg/manifests/driver-network-atu.p5m
+++ b/usr/src/pkg/manifests/driver-network-atu.p5m
@@ -42,8 +42,8 @@ dir path=kernel/drv group=sys
dir path=kernel/drv/$(ARCH64) group=sys
file path=kernel/drv/$(ARCH64)/atu group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/atu.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/atu.4d
driver name=atu perms="* 0666 root sys" clone_perms="atu 0666 root sys" \
alias=usb1915,2233
legacy pkg=SUNWatu \
diff --git a/usr/src/pkg/manifests/driver-network-bfe.p5m b/usr/src/pkg/manifests/driver-network-bfe.p5m
index 1ce4612c68..c7920e6ff8 100644
--- a/usr/src/pkg/manifests/driver-network-bfe.p5m
+++ b/usr/src/pkg/manifests/driver-network-bfe.p5m
@@ -40,8 +40,8 @@ dir path=kernel/drv group=sys
dir path=kernel/drv/$(ARCH64) group=sys
file path=kernel/drv/$(ARCH64)/bfe group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/bfe.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/bfe.4d
driver name=bfe \
alias=pci14e4,170c \
alias=pci14e4,4401 \
diff --git a/usr/src/pkg/manifests/driver-network-bge.p5m b/usr/src/pkg/manifests/driver-network-bge.p5m
index a1a309bcd2..2d0546f755 100644
--- a/usr/src/pkg/manifests/driver-network-bge.p5m
+++ b/usr/src/pkg/manifests/driver-network-bge.p5m
@@ -42,8 +42,8 @@ dir path=kernel/drv/$(ARCH64) group=sys
file path=kernel/drv/$(ARCH64)/bge group=sys
file path=kernel/drv/bge.conf group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/bge.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/bge.4d
$(i386_ONLY)driver name=bge perms="* 0666 root sys" \
clone_perms="bge 0666 root sys" \
alias=SUNW,bge \
diff --git a/usr/src/pkg/manifests/driver-network-bnxe.p5m b/usr/src/pkg/manifests/driver-network-bnxe.p5m
index 538022fce9..0c217302c5 100644
--- a/usr/src/pkg/manifests/driver-network-bnxe.p5m
+++ b/usr/src/pkg/manifests/driver-network-bnxe.p5m
@@ -43,8 +43,8 @@ file path=kernel/drv/$(ARCH64)/bnxe group=sys
file path=kernel/drv/bnxe.conf group=sys \
original_name=BRCMbnxe:kernel/drv/bnxe.conf preserve=renameold
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/bnxe.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/bnxe.4d
driver name=bnxe perms="* 0666 root sys" \
alias=pci14e4,164e \
alias=pci14e4,164f \
diff --git a/usr/src/pkg/manifests/driver-network-chxge.p5m b/usr/src/pkg/manifests/driver-network-chxge.p5m
index afe0df7a10..b345259a85 100644
--- a/usr/src/pkg/manifests/driver-network-chxge.p5m
+++ b/usr/src/pkg/manifests/driver-network-chxge.p5m
@@ -41,8 +41,8 @@ dir path=kernel/drv group=sys
dir path=kernel/drv/$(ARCH64) group=sys
file path=kernel/drv/$(ARCH64)/chxge group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/chxge.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/chxge.4d
driver name=chxge perms="* 0666 root sys" clone_perms="chxge 0666 root sys" \
alias=pci1425,7 \
alias=pci1425,a
diff --git a/usr/src/pkg/manifests/driver-network-dmfe.p5m b/usr/src/pkg/manifests/driver-network-dmfe.p5m
index de16d9370c..632fd2cd63 100644
--- a/usr/src/pkg/manifests/driver-network-dmfe.p5m
+++ b/usr/src/pkg/manifests/driver-network-dmfe.p5m
@@ -41,8 +41,8 @@ dir path=kernel/drv group=sys
dir path=kernel/drv/$(ARCH64) group=sys
file path=kernel/drv/$(ARCH64)/dmfe group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/dmfe.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/dmfe.4d
driver name=dmfe perms="* 0666 root sys" clone_perms="dmfe 0666 root sys" \
alias=pci108e,9102 \
alias=pci1282,9102
diff --git a/usr/src/pkg/manifests/driver-network-e1000g.p5m b/usr/src/pkg/manifests/driver-network-e1000g.p5m
index 28cfe93d77..8f795e5e96 100644
--- a/usr/src/pkg/manifests/driver-network-e1000g.p5m
+++ b/usr/src/pkg/manifests/driver-network-e1000g.p5m
@@ -42,8 +42,8 @@ file path=kernel/drv/$(ARCH64)/e1000g group=sys
file path=kernel/drv/e1000g.conf group=sys \
original_name=SUNWintgige:kernel/drv/e1000g.conf preserve=renamenew
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/e1000g.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/e1000g.4d
driver name=e1000g perms="* 0666 root sys" clone_perms="e1000g 0666 root sys" \
alias=pci8086,d4c,p \
alias=pci8086,d4d,p \
diff --git a/usr/src/pkg/manifests/driver-network-elxl.p5m b/usr/src/pkg/manifests/driver-network-elxl.p5m
index c80ca32ffa..6302be0f29 100644
--- a/usr/src/pkg/manifests/driver-network-elxl.p5m
+++ b/usr/src/pkg/manifests/driver-network-elxl.p5m
@@ -41,8 +41,8 @@ dir path=kernel/drv group=sys
dir path=kernel/drv/$(ARCH64) group=sys
file path=kernel/drv/$(ARCH64)/elxl group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/elxl.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/elxl.4d
driver name=elxl perms="* 0666 root sys" clone_perms="elxl 0666 root sys" \
alias=pci10b7,9000 \
alias=pci10b7,9001 \
diff --git a/usr/src/pkg/manifests/driver-network-ena.p5m b/usr/src/pkg/manifests/driver-network-ena.p5m
index cd64e9c504..7365be47cd 100644
--- a/usr/src/pkg/manifests/driver-network-ena.p5m
+++ b/usr/src/pkg/manifests/driver-network-ena.p5m
@@ -26,8 +26,8 @@ dir path=kernel/drv/$(ARCH64) group=sys
file path=kernel/drv/$(ARCH64)/ena group=sys
file path=kernel/drv/ena.conf group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/ena.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/ena.4d
driver name=ena perms="* 0666 root sys" clone_perms="ena 0666 root sys" \
alias=pciex1d0f,ec2 \
alias=pciex1d0f,1ec2 \
diff --git a/usr/src/pkg/manifests/driver-network-eri.p5m b/usr/src/pkg/manifests/driver-network-eri.p5m
index 2d9d50a675..8f650d9abb 100644
--- a/usr/src/pkg/manifests/driver-network-eri.p5m
+++ b/usr/src/pkg/manifests/driver-network-eri.p5m
@@ -40,8 +40,8 @@ dir path=kernel/drv group=sys
dir path=kernel/drv/$(ARCH64) group=sys
file path=kernel/drv/$(ARCH64)/eri group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/eri.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/eri.4d
driver name=eri clone_perms="eri 0666 root sys" alias=pci108e,1101
legacy pkg=SUNWerid desc="Sun RIO 10/100 Mb Ethernet Drivers" \
name="Sun RIO 10/100 Mb Ethernet Drivers"
diff --git a/usr/src/pkg/manifests/driver-network-fcip.p5m b/usr/src/pkg/manifests/driver-network-fcip.p5m
index 55bc38c4c3..1878b846fe 100644
--- a/usr/src/pkg/manifests/driver-network-fcip.p5m
+++ b/usr/src/pkg/manifests/driver-network-fcip.p5m
@@ -40,8 +40,8 @@ dir path=kernel/drv/$(ARCH64) group=sys
file path=kernel/drv/$(ARCH64)/fcip group=sys
file path=kernel/drv/fcip.conf group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/fcip.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/fcip.4d
driver name=fcip perms="* 0600 root sys"
legacy pkg=SUNWfcip desc="Sun FCIP IP/ARP over FibreChannel Device Driver" \
name="Sun FCIP IP/ARP over FibreChannel Device Driver"
diff --git a/usr/src/pkg/manifests/driver-network-fcoe.p5m b/usr/src/pkg/manifests/driver-network-fcoe.p5m
index 62574789c8..311c5b6fd5 100644
--- a/usr/src/pkg/manifests/driver-network-fcoe.p5m
+++ b/usr/src/pkg/manifests/driver-network-fcoe.p5m
@@ -41,8 +41,8 @@ dir path=kernel/drv/$(ARCH64) group=sys
file path=kernel/drv/$(ARCH64)/fcoe group=sys
file path=kernel/drv/fcoe.conf group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/fcoe.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/fcoe.4d
driver name=fcoe perms="* 0600 root sys"
legacy pkg=SUNWfcoe \
desc="Sun FCoE (Fibre Channel over Ethernet) Transport Driver" \
diff --git a/usr/src/pkg/manifests/driver-network-fcoei.p5m b/usr/src/pkg/manifests/driver-network-fcoei.p5m
index 648a679262..05307eec01 100644
--- a/usr/src/pkg/manifests/driver-network-fcoei.p5m
+++ b/usr/src/pkg/manifests/driver-network-fcoei.p5m
@@ -41,8 +41,8 @@ dir path=kernel/drv/$(ARCH64) group=sys
file path=kernel/drv/$(ARCH64)/fcoei group=sys
file path=kernel/drv/fcoei.conf group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/fcoei.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/fcoei.4d
driver name=fcoei perms="* 0600 root sys"
legacy pkg=SUNWfcoei \
desc="Sun FCoE (Fibre Channel over Ethernet) Initiator Driver" \
diff --git a/usr/src/pkg/manifests/driver-network-fcoet.p5m b/usr/src/pkg/manifests/driver-network-fcoet.p5m
index 2116a3044d..92b6145d04 100644
--- a/usr/src/pkg/manifests/driver-network-fcoet.p5m
+++ b/usr/src/pkg/manifests/driver-network-fcoet.p5m
@@ -40,8 +40,8 @@ dir path=kernel/drv group=sys
dir path=kernel/drv/$(ARCH64) group=sys
file path=kernel/drv/$(ARCH64)/fcoet group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/fcoet.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/fcoet.4d
driver name=fcoet perms="* 0600 root sys"
legacy pkg=SUNWfcoet \
desc="Sun FCoE (Fibre Channel over Ethernet) COMSTAR Driver" \
diff --git a/usr/src/pkg/manifests/driver-network-fcp.p5m b/usr/src/pkg/manifests/driver-network-fcp.p5m
index 6e5e38885e..be3fa8eb01 100644
--- a/usr/src/pkg/manifests/driver-network-fcp.p5m
+++ b/usr/src/pkg/manifests/driver-network-fcp.p5m
@@ -40,8 +40,8 @@ dir path=kernel/drv/$(ARCH64) group=sys
file path=kernel/drv/$(ARCH64)/fcp group=sys
file path=kernel/drv/fcp.conf group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/fcp.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/fcp.4d
driver name=fcp perms="* 0600 root sys"
legacy pkg=SUNWfcp desc="Sun FCP SCSI Fibre Channel Device Driver" \
name="Sun FCP SCSI Device Driver"
diff --git a/usr/src/pkg/manifests/driver-network-fp.p5m b/usr/src/pkg/manifests/driver-network-fp.p5m
index 88d8aab2c8..fcf18cb221 100644
--- a/usr/src/pkg/manifests/driver-network-fp.p5m
+++ b/usr/src/pkg/manifests/driver-network-fp.p5m
@@ -44,9 +44,9 @@ dir path=kernel/misc group=sys
dir path=kernel/misc/$(ARCH64) group=sys
file path=kernel/misc/$(ARCH64)/fctl group=sys mode=0755
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/fctl.7d
-file path=usr/share/man/man7d/fp.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/fctl.4d
+file path=usr/share/man/man4d/fp.4d
driver name=fp perms="* 0600 root sys"
legacy pkg=SUNWfctl desc="fctl module and fp device driver" \
name="Sun Fibre Channel Transport layer"
diff --git a/usr/src/pkg/manifests/driver-network-hermon.p5m b/usr/src/pkg/manifests/driver-network-hermon.p5m
index 69db8f548f..2b55f70c2b 100644
--- a/usr/src/pkg/manifests/driver-network-hermon.p5m
+++ b/usr/src/pkg/manifests/driver-network-hermon.p5m
@@ -41,8 +41,8 @@ dir path=kernel/drv/$(ARCH64) group=sys
file path=kernel/drv/$(ARCH64)/hermon group=sys
file path=kernel/drv/hermon.conf group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/hermon.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/hermon.4d
driver name=hermon perms="* 0666 root sys" \
alias=pciex15b3,6340 \
alias=pciex15b3,634a \
diff --git a/usr/src/pkg/manifests/driver-network-hme.p5m b/usr/src/pkg/manifests/driver-network-hme.p5m
index fc1e7180ae..af740c395f 100644
--- a/usr/src/pkg/manifests/driver-network-hme.p5m
+++ b/usr/src/pkg/manifests/driver-network-hme.p5m
@@ -41,9 +41,9 @@ dir path=kernel/drv/$(ARCH64) group=sys
$(sparc_ONLY)file path=kernel/drv/$(ARCH64)/fas group=sys
file path=kernel/drv/$(ARCH64)/hme group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-$(sparc_ONLY)file path=usr/share/man/man7d/fas.7d
-file path=usr/share/man/man7d/hme.7d
+dir path=usr/share/man/man4d
+$(sparc_ONLY)file path=usr/share/man/man4d/fas.4d
+file path=usr/share/man/man4d/hme.4d
$(sparc_ONLY)driver name=fas perms="devctl 0600 root sys" class=scsi \
alias=SUNW,fas
$(sparc_ONLY)driver name=hme alias=SUNW,hme
diff --git a/usr/src/pkg/manifests/driver-network-hxge.p5m b/usr/src/pkg/manifests/driver-network-hxge.p5m
index 2952b8ff9b..528d8a0596 100644
--- a/usr/src/pkg/manifests/driver-network-hxge.p5m
+++ b/usr/src/pkg/manifests/driver-network-hxge.p5m
@@ -42,8 +42,8 @@ file path=kernel/drv/$(ARCH64)/hxge group=sys
file path=kernel/drv/hxge.conf group=sys \
original_name=SUNWhxge:kernel/drv/hxge.conf preserve=renamenew
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/hxge.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/hxge.4d
$(i386_ONLY)driver name=hxge perms="* 0600 root sys" alias=pci108e,aaaa
$(sparc_ONLY)driver name=hxge perms="* 0600 root sys" alias=pciex108e,aaaa
legacy pkg=SUNWhxge desc="SUN 10Gb hxge Ethernet Network Adapter Driver" \
diff --git a/usr/src/pkg/manifests/driver-network-i40e.p5m b/usr/src/pkg/manifests/driver-network-i40e.p5m
index c5418b36f0..9312ed9fc8 100644
--- a/usr/src/pkg/manifests/driver-network-i40e.p5m
+++ b/usr/src/pkg/manifests/driver-network-i40e.p5m
@@ -26,8 +26,8 @@ dir path=kernel/drv/$(ARCH64) group=sys
file path=kernel/drv/$(ARCH64)/i40e group=sys
file path=kernel/drv/i40e.conf group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/i40e.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/i40e.4d
driver name=i40e perms="* 0666 root sys" clone_perms="i40e 0666 root sys" \
alias=pciex8086,cf8 \
alias=pciex8086,d58 \
diff --git a/usr/src/pkg/manifests/driver-network-ib.p5m b/usr/src/pkg/manifests/driver-network-ib.p5m
index dea467c7e3..019f1281d1 100644
--- a/usr/src/pkg/manifests/driver-network-ib.p5m
+++ b/usr/src/pkg/manifests/driver-network-ib.p5m
@@ -48,14 +48,14 @@ file path=kernel/misc/$(ARCH64)/ibmf group=sys mode=0755
file path=kernel/misc/$(ARCH64)/ibtl group=sys mode=0755
dir path=usr/share/man
dir path=usr/share/man/man4
-file path=usr/share/man/man4/ib.4
-dir path=usr/share/man/man7
-file path=usr/share/man/man7/ibmf.7
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/ib.7d
-file path=usr/share/man/man7d/ibcm.7d
-file path=usr/share/man/man7d/ibdm.7d
-file path=usr/share/man/man7d/ibtl.7d
+file path=usr/share/man/man4/ibmf.4
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/ib.4d
+file path=usr/share/man/man4d/ibcm.4d
+file path=usr/share/man/man4d/ibdm.4d
+file path=usr/share/man/man4d/ibtl.4d
+dir path=usr/share/man/man5
+file path=usr/share/man/man5/ib.5
driver name=ib perms="* 0644 root sys"
legacy pkg=SUNWib desc="Sun InfiniBand Framework" \
name="Sun InfiniBand Framework"
diff --git a/usr/src/pkg/manifests/driver-network-ibdma.p5m b/usr/src/pkg/manifests/driver-network-ibdma.p5m
index 6dc6b1397f..0d7b538b68 100644
--- a/usr/src/pkg/manifests/driver-network-ibdma.p5m
+++ b/usr/src/pkg/manifests/driver-network-ibdma.p5m
@@ -39,8 +39,8 @@ dir path=kernel/misc group=sys
dir path=kernel/misc/$(ARCH64) group=sys
file path=kernel/misc/$(ARCH64)/ibdma group=sys mode=0755
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/ibdma.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/ibdma.4d
legacy pkg=SUNWibdmar desc="Sun InfiniBand Device Management Agent (Root)" \
name="Sun InfiniBand Device Management Agent (Root)"
license cr_Sun license=cr_Sun
diff --git a/usr/src/pkg/manifests/driver-network-ibp.p5m b/usr/src/pkg/manifests/driver-network-ibp.p5m
index df238d5512..fab655d5fc 100644
--- a/usr/src/pkg/manifests/driver-network-ibp.p5m
+++ b/usr/src/pkg/manifests/driver-network-ibp.p5m
@@ -51,9 +51,9 @@ dir path=sbin group=sys
file path=sbin/ibd_delete_link mode=0555
file path=sbin/ibd_upgrade mode=0555
dir path=usr/share/man
-dir path=usr/share/man/man7d
+dir path=usr/share/man/man4d
# XXX: Should rename to deal with ibd -> ibp?
-file path=usr/share/man/man7d/ibd.7d
+file path=usr/share/man/man4d/ibd.4d
driver name=ibp perms="* 0666 root sys" clone_perms="ibp 0666 root sys" \
alias=ib.ipib
legacy pkg=SUNWipoib desc="Sun IP over InfiniBand" name="Sun IP over InfiniBand"
diff --git a/usr/src/pkg/manifests/driver-network-igb.p5m b/usr/src/pkg/manifests/driver-network-igb.p5m
index ccf4bee7e4..95b8bce0ad 100644
--- a/usr/src/pkg/manifests/driver-network-igb.p5m
+++ b/usr/src/pkg/manifests/driver-network-igb.p5m
@@ -44,8 +44,8 @@ file path=kernel/drv/$(ARCH64)/igb group=sys
file path=kernel/drv/igb.conf group=sys \
original_name=SUNWigb:kernel/drv/igb.conf preserve=renamenew
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/igb.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/igb.4d
driver name=igb perms="* 0666 root sys" clone_perms="igb 0666 root sys" \
alias=pciex8086,438 \
alias=pciex8086,10a7 \
diff --git a/usr/src/pkg/manifests/driver-network-iprb.p5m b/usr/src/pkg/manifests/driver-network-iprb.p5m
index 68bb6f654e..f08f3a3e85 100644
--- a/usr/src/pkg/manifests/driver-network-iprb.p5m
+++ b/usr/src/pkg/manifests/driver-network-iprb.p5m
@@ -43,8 +43,8 @@ dir path=kernel/drv group=sys
dir path=kernel/drv/$(ARCH64) group=sys
file path=kernel/drv/$(ARCH64)/iprb group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/iprb.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/iprb.4d
driver name=iprb perms="* 0666 root sys" clone_perms="iprb 0666 root sys" \
alias=pci8086,1029 \
alias=pci8086,1030 \
diff --git a/usr/src/pkg/manifests/driver-network-ipw.p5m b/usr/src/pkg/manifests/driver-network-ipw.p5m
index b94c786da9..c9d53549e3 100644
--- a/usr/src/pkg/manifests/driver-network-ipw.p5m
+++ b/usr/src/pkg/manifests/driver-network-ipw.p5m
@@ -40,8 +40,8 @@ dir path=kernel/drv group=sys
dir path=kernel/drv/$(ARCH64) group=sys
file path=kernel/drv/$(ARCH64)/ipw group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/ipw.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/ipw.4d
driver name=ipw perms="* 0666 root sys" clone_perms="ipw 0666 root sys" \
alias=pci8086,1043
legacy pkg=SUNWipw desc="Intel Pro. Wirless 802.11b IPW2100B Driver" \
diff --git a/usr/src/pkg/manifests/driver-network-iwh.p5m b/usr/src/pkg/manifests/driver-network-iwh.p5m
index fadc379416..edfff399d2 100644
--- a/usr/src/pkg/manifests/driver-network-iwh.p5m
+++ b/usr/src/pkg/manifests/driver-network-iwh.p5m
@@ -40,8 +40,8 @@ dir path=kernel/drv group=sys
dir path=kernel/drv/$(ARCH64) group=sys
file path=kernel/drv/$(ARCH64)/iwh group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/iwh.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/iwh.4d
driver name=iwh perms="* 0666 root sys" clone_perms="iwh 0666 root sys" \
alias=pciex8086,4232 \
alias=pciex8086,4235 \
diff --git a/usr/src/pkg/manifests/driver-network-iwi.p5m b/usr/src/pkg/manifests/driver-network-iwi.p5m
index c9a1cf26a9..e07e7fa677 100644
--- a/usr/src/pkg/manifests/driver-network-iwi.p5m
+++ b/usr/src/pkg/manifests/driver-network-iwi.p5m
@@ -42,8 +42,8 @@ dir path=kernel/drv group=sys
dir path=kernel/drv/$(ARCH64) group=sys
file path=kernel/drv/$(ARCH64)/iwi group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/iwi.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/iwi.4d
driver name=iwi perms="* 0666 root sys" clone_perms="iwi 0666 root sys" \
alias=pci8086,4220 \
alias=pci8086,4223 \
diff --git a/usr/src/pkg/manifests/driver-network-iwn.p5m b/usr/src/pkg/manifests/driver-network-iwn.p5m
index f3497004f3..6472031b54 100644
--- a/usr/src/pkg/manifests/driver-network-iwn.p5m
+++ b/usr/src/pkg/manifests/driver-network-iwn.p5m
@@ -47,8 +47,8 @@ file path=kernel/firmware/iwn/iwlwifi-6000g2a-6.ucode
file path=kernel/firmware/iwn/iwlwifi-6000g2b-6.ucode
file path=kernel/firmware/iwn/iwlwifi-6050-5.ucode
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/iwn.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/iwn.4d
driver name=iwn perms="* 0666 root sys" clone_perms="iwn 0666 root sys" \
alias=pciex8086,82 \
alias=pciex8086,83 \
diff --git a/usr/src/pkg/manifests/driver-network-ixgbe.p5m b/usr/src/pkg/manifests/driver-network-ixgbe.p5m
index 83cc3e0423..a043a8ae86 100644
--- a/usr/src/pkg/manifests/driver-network-ixgbe.p5m
+++ b/usr/src/pkg/manifests/driver-network-ixgbe.p5m
@@ -45,8 +45,8 @@ file path=kernel/drv/$(ARCH64)/ixgbe group=sys
file path=kernel/drv/ixgbe.conf group=sys \
original_name=SUNWixgbe:kernel/drv/ixgbe.conf preserve=renamenew
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/ixgbe.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/ixgbe.4d
driver name=ixgbe perms="* 0666 root sys" clone_perms="ixgbe 0666 root sys" \
alias=pciex8086,10b6 \
alias=pciex8086,10c6 \
diff --git a/usr/src/pkg/manifests/driver-network-mlxcx.p5m b/usr/src/pkg/manifests/driver-network-mlxcx.p5m
index 51712475a4..def641e374 100644
--- a/usr/src/pkg/manifests/driver-network-mlxcx.p5m
+++ b/usr/src/pkg/manifests/driver-network-mlxcx.p5m
@@ -32,8 +32,8 @@ dir path=kernel/drv/$(ARCH64) group=sys
file path=kernel/drv/$(ARCH64)/mlxcx group=sys
file path=kernel/drv/mlxcx.conf group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/mlxcx.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/mlxcx.4d
driver name=mlxcx \
alias=pciex15b3,1013 \
alias=pciex15b3,1014 \
diff --git a/usr/src/pkg/manifests/driver-network-mxfe.p5m b/usr/src/pkg/manifests/driver-network-mxfe.p5m
index 5d589ed131..3f60a238fd 100644
--- a/usr/src/pkg/manifests/driver-network-mxfe.p5m
+++ b/usr/src/pkg/manifests/driver-network-mxfe.p5m
@@ -40,8 +40,8 @@ dir path=kernel/drv group=sys
dir path=kernel/drv/$(ARCH64) group=sys
file path=kernel/drv/$(ARCH64)/mxfe group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/mxfe.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/mxfe.4d
driver name=mxfe perms="* 0666 root sys" clone_perms="mxfe 0666 root sys" \
alias=pci10d9,512 \
alias=pci10d9,531 \
diff --git a/usr/src/pkg/manifests/driver-network-myri10ge.p5m b/usr/src/pkg/manifests/driver-network-myri10ge.p5m
index fa7b4e6bc6..deb6d971e3 100644
--- a/usr/src/pkg/manifests/driver-network-myri10ge.p5m
+++ b/usr/src/pkg/manifests/driver-network-myri10ge.p5m
@@ -40,8 +40,8 @@ dir path=kernel/drv group=sys
dir path=kernel/drv/$(ARCH64) group=sys
file path=kernel/drv/$(ARCH64)/myri10ge group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/myri10ge.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/myri10ge.4d
driver name=myri10ge perms="* 0666 root sys" \
clone_perms="myri10ge 0666 root sys" \
alias=pci14c1,8 \
diff --git a/usr/src/pkg/manifests/driver-network-ntxn.p5m b/usr/src/pkg/manifests/driver-network-ntxn.p5m
index 35fc95965f..9baace9373 100644
--- a/usr/src/pkg/manifests/driver-network-ntxn.p5m
+++ b/usr/src/pkg/manifests/driver-network-ntxn.p5m
@@ -41,8 +41,8 @@ dir path=kernel/drv/$(ARCH64) group=sys
file path=kernel/drv/$(ARCH64)/ntxn group=sys
file path=kernel/drv/ntxn.conf group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/ntxn.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/ntxn.4d
driver name=ntxn \
alias=pci4040,1 \
alias=pci4040,2 \
diff --git a/usr/src/pkg/manifests/driver-network-nxge.p5m b/usr/src/pkg/manifests/driver-network-nxge.p5m
index 43678bafb5..f9744ce247 100644
--- a/usr/src/pkg/manifests/driver-network-nxge.p5m
+++ b/usr/src/pkg/manifests/driver-network-nxge.p5m
@@ -60,8 +60,8 @@ $(sparc_ONLY)file path=platform/sun4v/kernel/drv/nxge.conf group=sys \
original_name=SUNWnxge:platform/sun4v/kernel/drv/nxge.conf \
preserve=renamenew
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/nxge.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/nxge.4d
$(sparc_ONLY)driver name=nxge perms="* 0600 root sys" \
alias=SUNW,niusl \
alias=SUNW,niusl-kt \
diff --git a/usr/src/pkg/manifests/driver-network-pcn.p5m b/usr/src/pkg/manifests/driver-network-pcn.p5m
index 24a5df5c76..109db1ccf5 100644
--- a/usr/src/pkg/manifests/driver-network-pcn.p5m
+++ b/usr/src/pkg/manifests/driver-network-pcn.p5m
@@ -40,8 +40,8 @@ dir path=kernel/drv group=sys
dir path=kernel/drv/$(ARCH64) group=sys
file path=kernel/drv/$(ARCH64)/pcn group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/pcn.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/pcn.4d
driver name=pcn perms="* 0666 root sys" clone_perms="pcn 0666 root sys" \
alias=pci1022,2000 \
alias=pci103c,104c
diff --git a/usr/src/pkg/manifests/driver-network-platform.p5m b/usr/src/pkg/manifests/driver-network-platform.p5m
index a3cf3ec671..490a32718c 100644
--- a/usr/src/pkg/manifests/driver-network-platform.p5m
+++ b/usr/src/pkg/manifests/driver-network-platform.p5m
@@ -40,8 +40,8 @@ dir path=kernel/drv group=sys
dir path=kernel/drv/$(ARCH64) group=sys
file path=kernel/drv/$(ARCH64)/dnet group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/dnet.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/dnet.4d
driver name=dnet perms="* 0666 root sys" clone_perms="dnet 0666 root sys" \
alias=pci1011,2 \
alias=pci1011,9 \
diff --git a/usr/src/pkg/manifests/driver-network-qede.p5m b/usr/src/pkg/manifests/driver-network-qede.p5m
index 586060622e..0e148dd872 100644
--- a/usr/src/pkg/manifests/driver-network-qede.p5m
+++ b/usr/src/pkg/manifests/driver-network-qede.p5m
@@ -26,8 +26,8 @@ dir path=kernel/drv/$(ARCH64) group=sys
file path=kernel/drv/$(ARCH64)/qede group=sys
file path=kernel/drv/qede.conf group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/qede.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/qede.4d
driver name=qede perms="* 0666 root sys" clone_perms="qede 0666 root sys" \
alias=pciex1077,1629 \
alias=pciex1077,1630 \
diff --git a/usr/src/pkg/manifests/driver-network-qlc.p5m b/usr/src/pkg/manifests/driver-network-qlc.p5m
index 3e2fd7b4f3..dfd88f2c4a 100644
--- a/usr/src/pkg/manifests/driver-network-qlc.p5m
+++ b/usr/src/pkg/manifests/driver-network-qlc.p5m
@@ -54,8 +54,8 @@ file path=kernel/misc/qlc/$(ARCH64)/qlc_fw_2500 group=sys mode=0755
file path=kernel/misc/qlc/$(ARCH64)/qlc_fw_6322 group=sys mode=0755
file path=kernel/misc/qlc/$(ARCH64)/qlc_fw_8100 group=sys mode=0755
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/qlc.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/qlc.4d
driver name=qlc perms="* 0666 root sys" class=fibre-channel \
alias=pci1077,2200 \
alias=pci1077,2300 \
diff --git a/usr/src/pkg/manifests/driver-network-ral.p5m b/usr/src/pkg/manifests/driver-network-ral.p5m
index 0335245f53..26e1220b50 100644
--- a/usr/src/pkg/manifests/driver-network-ral.p5m
+++ b/usr/src/pkg/manifests/driver-network-ral.p5m
@@ -40,8 +40,8 @@ dir path=kernel/drv group=sys
dir path=kernel/drv/$(ARCH64) group=sys
file path=kernel/drv/$(ARCH64)/ral group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/ral.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/ral.4d
driver name=ral perms="* 0666 root sys" clone_perms="ral 0666 root sys" \
alias=pci1814,201
legacy pkg=SUNWralink desc="Ralink RT2500 802.11b/g Wireless Driver" \
diff --git a/usr/src/pkg/manifests/driver-network-rge.p5m b/usr/src/pkg/manifests/driver-network-rge.p5m
index c1b17d2a64..f7c8c532c4 100644
--- a/usr/src/pkg/manifests/driver-network-rge.p5m
+++ b/usr/src/pkg/manifests/driver-network-rge.p5m
@@ -40,8 +40,8 @@ dir path=kernel/drv group=sys
dir path=kernel/drv/$(ARCH64) group=sys
file path=kernel/drv/$(ARCH64)/rge group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/rge.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/rge.4d
driver name=rge perms="* 0666 root sys" clone_perms="rge 0666 root sys" \
alias=pci10ec,8136 \
alias=pci10ec,8167 \
diff --git a/usr/src/pkg/manifests/driver-network-rtls.p5m b/usr/src/pkg/manifests/driver-network-rtls.p5m
index 2556742359..a9b99c3f8c 100644
--- a/usr/src/pkg/manifests/driver-network-rtls.p5m
+++ b/usr/src/pkg/manifests/driver-network-rtls.p5m
@@ -40,8 +40,8 @@ dir path=kernel/drv group=sys
dir path=kernel/drv/$(ARCH64) group=sys
file path=kernel/drv/$(ARCH64)/rtls group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/rtls.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/rtls.4d
driver name=rtls perms="* 0666 root sys" clone_perms="rtls 0666 root sys" \
alias=pci10ec,8139 \
alias=pci1113,1211 \
diff --git a/usr/src/pkg/manifests/driver-network-rtw.p5m b/usr/src/pkg/manifests/driver-network-rtw.p5m
index 6f95b9884a..9b12d9e185 100644
--- a/usr/src/pkg/manifests/driver-network-rtw.p5m
+++ b/usr/src/pkg/manifests/driver-network-rtw.p5m
@@ -40,8 +40,8 @@ dir path=kernel/drv group=sys
dir path=kernel/drv/$(ARCH64) group=sys
file path=kernel/drv/$(ARCH64)/rtw group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/rtw.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/rtw.4d
driver name=rtw perms="* 0666 root sys" clone_perms="rtw 0666 root sys" \
alias=pci10ec,8180
legacy pkg=SUNWrtw desc="realtek 8180L 802.11b driver" \
diff --git a/usr/src/pkg/manifests/driver-network-rum.p5m b/usr/src/pkg/manifests/driver-network-rum.p5m
index 82f52090ea..938588a040 100644
--- a/usr/src/pkg/manifests/driver-network-rum.p5m
+++ b/usr/src/pkg/manifests/driver-network-rum.p5m
@@ -42,8 +42,8 @@ dir path=kernel/drv group=sys
dir path=kernel/drv/$(ARCH64) group=sys
file path=kernel/drv/$(ARCH64)/rum group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/rum.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/rum.4d
driver name=rum perms="* 0666 root sys" clone_perms="rum 0666 root sys" \
alias=usb7d1,3c03 \
alias=usb7d1,3c04 \
diff --git a/usr/src/pkg/manifests/driver-network-rwd.p5m b/usr/src/pkg/manifests/driver-network-rwd.p5m
index 5e69e857e7..325d1ede10 100644
--- a/usr/src/pkg/manifests/driver-network-rwd.p5m
+++ b/usr/src/pkg/manifests/driver-network-rwd.p5m
@@ -42,8 +42,8 @@ dir path=kernel/drv group=sys
dir path=kernel/drv/$(ARCH64) group=sys
file path=kernel/drv/$(ARCH64)/rwd group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/rwd.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/rwd.4d
driver name=rwd perms="* 0666 root sys" clone_perms="rwd 0666 root sys" \
alias=pci1814,401
legacy pkg=SUNWrwd \
diff --git a/usr/src/pkg/manifests/driver-network-rwn.p5m b/usr/src/pkg/manifests/driver-network-rwn.p5m
index 6ac9064e28..e0f53b3f69 100644
--- a/usr/src/pkg/manifests/driver-network-rwn.p5m
+++ b/usr/src/pkg/manifests/driver-network-rwn.p5m
@@ -42,8 +42,8 @@ dir path=kernel/drv group=sys
dir path=kernel/drv/$(ARCH64) group=sys
file path=kernel/drv/$(ARCH64)/rwn group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/rwn.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/rwn.4d
driver name=rwn perms="* 0666 root sys" clone_perms="rwn 0666 root sys" \
alias=pci1814,601 \
alias=pci1814,681 \
diff --git a/usr/src/pkg/manifests/driver-network-sdp.p5m b/usr/src/pkg/manifests/driver-network-sdp.p5m
index 6ac16babce..60e5f56fae 100644
--- a/usr/src/pkg/manifests/driver-network-sdp.p5m
+++ b/usr/src/pkg/manifests/driver-network-sdp.p5m
@@ -48,8 +48,8 @@ dir path=kernel/socketmod group=sys
dir path=kernel/socketmod/$(ARCH64) group=sys
file path=kernel/socketmod/$(ARCH64)/socksdp group=sys mode=0755
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/sdp.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/sdp.4d
driver name=sdp perms="* 0644 root sys" perms="sdp 0666 root sys"
legacy pkg=SUNWibsdp desc="Sun InfiniBand layered Sockets Direct Protocol" \
name="Sun InfiniBand layered Sockets Direct Protocol"
diff --git a/usr/src/pkg/manifests/driver-network-sfe.p5m b/usr/src/pkg/manifests/driver-network-sfe.p5m
index ecf1c90ec3..68e02bca6f 100644
--- a/usr/src/pkg/manifests/driver-network-sfe.p5m
+++ b/usr/src/pkg/manifests/driver-network-sfe.p5m
@@ -41,8 +41,8 @@ dir path=kernel/drv group=sys
dir path=kernel/drv/$(ARCH64) group=sys
file path=kernel/drv/$(ARCH64)/sfe group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/sfe.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/sfe.4d
driver name=sfe perms="* 0666 root root" \
alias=pci100b,20 \
alias=pci1039,900 \
diff --git a/usr/src/pkg/manifests/driver-network-sfxge.p5m b/usr/src/pkg/manifests/driver-network-sfxge.p5m
index 95e97c6fdd..0309266bc6 100644
--- a/usr/src/pkg/manifests/driver-network-sfxge.p5m
+++ b/usr/src/pkg/manifests/driver-network-sfxge.p5m
@@ -39,8 +39,8 @@ dir path=kernel/drv group=sys
dir path=kernel/drv/$(ARCH64) group=sys
file path=kernel/drv/$(ARCH64)/sfxge group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/sfxge.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/sfxge.4d
driver name=sfxge perms="* 0666 root sys" clone_perms="sfxge 0666 root sys" \
alias=pci1924,803 \
alias=pci1924,810 \
diff --git a/usr/src/pkg/manifests/driver-network-socal.p5m b/usr/src/pkg/manifests/driver-network-socal.p5m
index 09a11e9ff1..654e809323 100644
--- a/usr/src/pkg/manifests/driver-network-socal.p5m
+++ b/usr/src/pkg/manifests/driver-network-socal.p5m
@@ -40,8 +40,8 @@ dir path=kernel/drv group=sys
dir path=kernel/drv/$(ARCH64) group=sys
file path=kernel/drv/$(ARCH64)/socal group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/socal.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/socal.4d
driver name=socal alias=SUNW,socal
legacy pkg=SUNWluxl desc="Sun Enterprise Network Array socal Device Driver" \
name="Sun Enterprise Network Array socal Device Driver"
diff --git a/usr/src/pkg/manifests/driver-network-srpt.p5m b/usr/src/pkg/manifests/driver-network-srpt.p5m
index 80bd8a361a..2295c08286 100644
--- a/usr/src/pkg/manifests/driver-network-srpt.p5m
+++ b/usr/src/pkg/manifests/driver-network-srpt.p5m
@@ -62,8 +62,8 @@ file path=usr/lib/mdb/kvm/$(ARCH64)/srpt.so group=sys mode=0555
dir path=usr/sbin
file path=usr/sbin/srptadm mode=0555
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/srpt.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/srpt.4d
driver name=srpt perms="* 0644 root sys"
legacy pkg=SUNWsrptr desc="Sun SRP COMSTAR Port Provider (Root)" \
name="Sun SRP COMSTAR Port Provider (Root)"
diff --git a/usr/src/pkg/manifests/driver-network-uath.p5m b/usr/src/pkg/manifests/driver-network-uath.p5m
index 0f113bcd9a..d71a4125dc 100644
--- a/usr/src/pkg/manifests/driver-network-uath.p5m
+++ b/usr/src/pkg/manifests/driver-network-uath.p5m
@@ -45,8 +45,8 @@ dir path=kernel/misc group=sys
dir path=kernel/misc/$(ARCH64) group=sys
file path=kernel/misc/$(ARCH64)/uathfw group=sys mode=0755
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/uath.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/uath.4d
driver name=uath perms="* 0666 root sys" clone_perms="uath 0666 root sys" \
alias=usbcf3,2 \
alias=usbcf3,3 \
diff --git a/usr/src/pkg/manifests/driver-network-ural.p5m b/usr/src/pkg/manifests/driver-network-ural.p5m
index 9ee0343f58..fbf2345c10 100644
--- a/usr/src/pkg/manifests/driver-network-ural.p5m
+++ b/usr/src/pkg/manifests/driver-network-ural.p5m
@@ -40,8 +40,8 @@ dir path=kernel/drv group=sys
dir path=kernel/drv/$(ARCH64) group=sys
file path=kernel/drv/$(ARCH64)/ural group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/ural.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/ural.4d
driver name=ural perms="* 0666 root sys" clone_perms="ural 0666 root sys" \
alias=usb411,67 \
alias=usb1044,8007 \
diff --git a/usr/src/pkg/manifests/driver-network-urtw.p5m b/usr/src/pkg/manifests/driver-network-urtw.p5m
index 8aaf00613b..e243f8d702 100644
--- a/usr/src/pkg/manifests/driver-network-urtw.p5m
+++ b/usr/src/pkg/manifests/driver-network-urtw.p5m
@@ -41,8 +41,8 @@ dir path=kernel/drv group=sys
dir path=kernel/drv/$(ARCH64) group=sys
file path=kernel/drv/$(ARCH64)/urtw group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/urtw.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/urtw.4d
driver name=urtw perms="* 0666 root sys" clone_perms="urtw 0666 root sys" \
alias=usb50d,705e \
alias=usb769,11f2 \
diff --git a/usr/src/pkg/manifests/driver-network-vioif.p5m b/usr/src/pkg/manifests/driver-network-vioif.p5m
index 73263bd6cc..f5c0c371b1 100644
--- a/usr/src/pkg/manifests/driver-network-vioif.p5m
+++ b/usr/src/pkg/manifests/driver-network-vioif.p5m
@@ -34,8 +34,8 @@ dir path=kernel/drv group=sys
dir path=kernel/drv/$(ARCH64) group=sys
file path=kernel/drv/$(ARCH64)/vioif group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/vioif.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/vioif.4d
driver name=vioif perms="* 0666 root sys" alias=pci1af4,1
legacy pkg=SUNWvioif desc="VirtIO network driver" name="VirtIO network driver"
license cr_Sun license=cr_Sun
diff --git a/usr/src/pkg/manifests/driver-network-vr.p5m b/usr/src/pkg/manifests/driver-network-vr.p5m
index 9a962d2ec0..20481bd6ea 100644
--- a/usr/src/pkg/manifests/driver-network-vr.p5m
+++ b/usr/src/pkg/manifests/driver-network-vr.p5m
@@ -40,8 +40,8 @@ dir path=kernel/drv group=sys
dir path=kernel/drv/$(ARCH64) group=sys
file path=kernel/drv/$(ARCH64)/vr group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/vr.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/vr.4d
driver name=vr perms="* 0666 root sys" \
alias=pci1106,3043 \
alias=pci1106,3053 \
diff --git a/usr/src/pkg/manifests/driver-network-wpi.p5m b/usr/src/pkg/manifests/driver-network-wpi.p5m
index 4538827a6a..5d49eb785a 100644
--- a/usr/src/pkg/manifests/driver-network-wpi.p5m
+++ b/usr/src/pkg/manifests/driver-network-wpi.p5m
@@ -40,8 +40,8 @@ dir path=kernel/drv group=sys
dir path=kernel/drv/$(ARCH64) group=sys
file path=kernel/drv/$(ARCH64)/wpi group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/wpi.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/wpi.4d
driver name=wpi perms="* 0666 root sys" clone_perms="wpi 0666 root sys" \
alias=pciex8086,4222 \
alias=pciex8086,4222.8086.1000 \
diff --git a/usr/src/pkg/manifests/driver-network-xge.p5m b/usr/src/pkg/manifests/driver-network-xge.p5m
index 3b56345492..b22ad5bfab 100644
--- a/usr/src/pkg/manifests/driver-network-xge.p5m
+++ b/usr/src/pkg/manifests/driver-network-xge.p5m
@@ -41,8 +41,8 @@ dir path=kernel/drv group=sys
dir path=kernel/drv/$(ARCH64) group=sys
file path=kernel/drv/$(ARCH64)/xge group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/xge.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/xge.4d
driver name=xge perms="* 0666 root sys" clone_perms="xge 0666 root sys" \
alias=pci17d5,5731 \
alias=pci17d5,5831 \
diff --git a/usr/src/pkg/manifests/driver-network-yge.p5m b/usr/src/pkg/manifests/driver-network-yge.p5m
index e7263d469f..f20bf0cdcc 100644
--- a/usr/src/pkg/manifests/driver-network-yge.p5m
+++ b/usr/src/pkg/manifests/driver-network-yge.p5m
@@ -41,8 +41,8 @@ dir path=kernel/drv group=sys
dir path=kernel/drv/$(ARCH64) group=sys
file path=kernel/drv/$(ARCH64)/yge group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/yge.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/yge.4d
driver name=yge perms="* 0666 root sys" \
alias=pciex1148,9e00 \
alias=pciex1186,4b00 \
diff --git a/usr/src/pkg/manifests/driver-network-zyd.p5m b/usr/src/pkg/manifests/driver-network-zyd.p5m
index 10daecb6ec..b7b6be45d6 100644
--- a/usr/src/pkg/manifests/driver-network-zyd.p5m
+++ b/usr/src/pkg/manifests/driver-network-zyd.p5m
@@ -41,8 +41,8 @@ dir path=kernel/drv group=sys
dir path=kernel/drv/$(ARCH64) group=sys
file path=kernel/drv/$(ARCH64)/zyd group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/zyd.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/zyd.4d
driver name=zyd perms="* 0666 root sys" clone_perms="zyd 0666 root sys" \
alias=usbace,1211 \
alias=usbace,1215 \
diff --git a/usr/src/pkg/manifests/driver-pcmcia.p5m b/usr/src/pkg/manifests/driver-pcmcia.p5m
index 94b220023e..78330d1c37 100644
--- a/usr/src/pkg/manifests/driver-pcmcia.p5m
+++ b/usr/src/pkg/manifests/driver-pcmcia.p5m
@@ -42,9 +42,9 @@ file path=kernel/drv/$(ARCH64)/pcic group=sys
file path=kernel/drv/$(ARCH64)/pcs group=sys
file path=kernel/drv/pcic.conf group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/pcic.7d
-file path=usr/share/man/man7d/pcmcia.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/pcic.4d
+file path=usr/share/man/man4d/pcmcia.4d
driver name=pcic class=pcmcia \
alias=pciclass,060500 \
alias=pciclass,060700
diff --git a/usr/src/pkg/manifests/driver-serial-usbftdi.p5m b/usr/src/pkg/manifests/driver-serial-usbftdi.p5m
index 34e242c92e..cfc397a047 100644
--- a/usr/src/pkg/manifests/driver-serial-usbftdi.p5m
+++ b/usr/src/pkg/manifests/driver-serial-usbftdi.p5m
@@ -41,8 +41,8 @@ file path=kernel/drv/$(ARCH64)/usbftdi group=sys
file path=kernel/drv/usbftdi.conf group=sys \
original_name=SUNWuftdi:kernel/drv/usbftdi.conf preserve=true
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/usbftdi.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/usbftdi.4d
driver name=usbftdi perms="* 0666 root sys" \
alias=usb403,6001 \
alias=usb403,6014 \
diff --git a/usr/src/pkg/manifests/driver-serial-usbsacm.p5m b/usr/src/pkg/manifests/driver-serial-usbsacm.p5m
index a9adda2d8c..1777abc8fa 100644
--- a/usr/src/pkg/manifests/driver-serial-usbsacm.p5m
+++ b/usr/src/pkg/manifests/driver-serial-usbsacm.p5m
@@ -39,8 +39,8 @@ dir path=kernel/drv group=sys
dir path=kernel/drv/$(ARCH64) group=sys
file path=kernel/drv/$(ARCH64)/usbsacm group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/usbsacm.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/usbsacm.4d
driver name=usbsacm perms="* 0666 root sys" \
alias=usbc88,17da \
alias=usb1410,1110 \
diff --git a/usr/src/pkg/manifests/driver-serial-usbsksp.p5m b/usr/src/pkg/manifests/driver-serial-usbsksp.p5m
index 3cbfdb2d6e..376463ec34 100644
--- a/usr/src/pkg/manifests/driver-serial-usbsksp.p5m
+++ b/usr/src/pkg/manifests/driver-serial-usbsksp.p5m
@@ -39,8 +39,8 @@ dir path=kernel/drv group=sys
dir path=kernel/drv/$(ARCH64) group=sys
file path=kernel/drv/$(ARCH64)/usbsksp group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/usbsksp.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/usbsksp.4d
driver name=usbsksp perms="* 0666 root sys" \
alias=usb6cd,11a \
alias=usb6cd,121 \
diff --git a/usr/src/pkg/manifests/driver-serial-usbsprl.p5m b/usr/src/pkg/manifests/driver-serial-usbsprl.p5m
index 53cc372518..1f658c3ca1 100644
--- a/usr/src/pkg/manifests/driver-serial-usbsprl.p5m
+++ b/usr/src/pkg/manifests/driver-serial-usbsprl.p5m
@@ -39,8 +39,8 @@ dir path=kernel/drv group=sys
dir path=kernel/drv/$(ARCH64) group=sys
file path=kernel/drv/$(ARCH64)/usbsprl group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/usbsprl.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/usbsprl.4d
driver name=usbsprl perms="* 0666 root sys" \
alias=usb557,2008 \
alias=usb56e,5004 \
diff --git a/usr/src/pkg/manifests/driver-storage-aac.p5m b/usr/src/pkg/manifests/driver-storage-aac.p5m
index 0c39ae6542..f23c8f49a7 100644
--- a/usr/src/pkg/manifests/driver-storage-aac.p5m
+++ b/usr/src/pkg/manifests/driver-storage-aac.p5m
@@ -41,8 +41,8 @@ file path=kernel/drv/$(ARCH64)/aac group=sys
file path=kernel/drv/aac.conf group=sys \
original_name=SUNWaac:kernel/drv/aac.conf preserve=true
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/aac.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/aac.4d
driver name=aac class=scsi \
alias=pci1028,3 \
alias=pci1028,a \
diff --git a/usr/src/pkg/manifests/driver-storage-ahci.p5m b/usr/src/pkg/manifests/driver-storage-ahci.p5m
index 81b253154d..28893961dd 100644
--- a/usr/src/pkg/manifests/driver-storage-ahci.p5m
+++ b/usr/src/pkg/manifests/driver-storage-ahci.p5m
@@ -44,8 +44,8 @@ file path=kernel/drv/$(ARCH64)/ahci group=sys
dir path=usr/lib/ahci
file path=usr/lib/ahci/ahciem mode=0555
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/ahci.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/ahci.4d
#
# In general, we expect ahci devices to use the ahci class code.
# However, there are a handful of Intel controller hubs which will
diff --git a/usr/src/pkg/manifests/driver-storage-amr.p5m b/usr/src/pkg/manifests/driver-storage-amr.p5m
index 449a205cd1..7a2dbca729 100644
--- a/usr/src/pkg/manifests/driver-storage-amr.p5m
+++ b/usr/src/pkg/manifests/driver-storage-amr.p5m
@@ -40,8 +40,8 @@ dir path=kernel/drv/$(ARCH64) group=sys
file path=kernel/drv/$(ARCH64)/amr group=sys
file path=kernel/drv/amr.conf group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/amr.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/amr.4d
driver name=amr class=scsi \
alias=pci1000,532 \
alias=pci1028,e \
diff --git a/usr/src/pkg/manifests/driver-storage-arcmsr.p5m b/usr/src/pkg/manifests/driver-storage-arcmsr.p5m
index ab686dd8cf..a8c0be3621 100644
--- a/usr/src/pkg/manifests/driver-storage-arcmsr.p5m
+++ b/usr/src/pkg/manifests/driver-storage-arcmsr.p5m
@@ -41,8 +41,8 @@ dir path=kernel/drv/$(ARCH64) group=sys
file path=kernel/drv/$(ARCH64)/arcmsr group=sys
file path=kernel/drv/arcmsr.conf group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/arcmsr.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/arcmsr.4d
driver name=arcmsr perms="* 0600 root sys" class=scsi \
alias=pci17d3,1110 \
alias=pci17d3,1120 \
diff --git a/usr/src/pkg/manifests/driver-storage-ata.p5m b/usr/src/pkg/manifests/driver-storage-ata.p5m
index 3aaf6b04a3..8f52919e4a 100644
--- a/usr/src/pkg/manifests/driver-storage-ata.p5m
+++ b/usr/src/pkg/manifests/driver-storage-ata.p5m
@@ -55,8 +55,8 @@ dir path=platform/i86xpv/kernel/drv/$(ARCH64) group=sys
file path=platform/i86xpv/kernel/drv/$(ARCH64)/pci-ide group=sys
file path=platform/i86xpv/kernel/drv/pci-ide.conf group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/ata.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/ata.4d
driver name=ata class=dada class=scsi alias=ide
driver name=pci-ide
legacy pkg=SUNWpsdir desc="Platform Support, ISA Bus Device Drivers, (Root)" \
diff --git a/usr/src/pkg/manifests/driver-storage-bcm_sata.p5m b/usr/src/pkg/manifests/driver-storage-bcm_sata.p5m
index 93bbeeef04..cc5b89e683 100644
--- a/usr/src/pkg/manifests/driver-storage-bcm_sata.p5m
+++ b/usr/src/pkg/manifests/driver-storage-bcm_sata.p5m
@@ -39,8 +39,8 @@ dir path=kernel/drv group=sys
dir path=kernel/drv/$(ARCH64) group=sys
file path=kernel/drv/$(ARCH64)/bcm_sata group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/bcm_sata.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/bcm_sata.4d
driver name=bcm_sata perms="* 0644 root sys" class=scsi-self-identifying \
alias=pci1166,24a
legacy pkg=SUNWbcmsata desc="BroadCom ht1000 sata driver" \
diff --git a/usr/src/pkg/manifests/driver-storage-blkdev.p5m b/usr/src/pkg/manifests/driver-storage-blkdev.p5m
index a37cd90bd8..cd1b97d340 100644
--- a/usr/src/pkg/manifests/driver-storage-blkdev.p5m
+++ b/usr/src/pkg/manifests/driver-storage-blkdev.p5m
@@ -40,8 +40,8 @@ dir path=kernel/drv group=sys
dir path=kernel/drv/$(ARCH64) group=sys
file path=kernel/drv/$(ARCH64)/blkdev group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/blkdev.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/blkdev.4d
driver name=blkdev perms="* 0640 root root"
license cr_Sun license=cr_Sun
license lic_CDDL license=lic_CDDL
diff --git a/usr/src/pkg/manifests/driver-storage-cpqary3.p5m b/usr/src/pkg/manifests/driver-storage-cpqary3.p5m
index 36f33d960c..6732b6192c 100644
--- a/usr/src/pkg/manifests/driver-storage-cpqary3.p5m
+++ b/usr/src/pkg/manifests/driver-storage-cpqary3.p5m
@@ -26,8 +26,8 @@ dir path=kernel/drv/$(ARCH64) group=sys
file path=kernel/drv/$(ARCH64)/cpqary3 group=sys
file path=kernel/drv/cpqary3.conf group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/cpqary3.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/cpqary3.4d
driver name=cpqary3 class=scsi \
alias=pci103c,1920 \
alias=pci103c,1921 \
diff --git a/usr/src/pkg/manifests/driver-storage-mega_sas.p5m b/usr/src/pkg/manifests/driver-storage-mega_sas.p5m
index 35cad3b266..9959d1278c 100644
--- a/usr/src/pkg/manifests/driver-storage-mega_sas.p5m
+++ b/usr/src/pkg/manifests/driver-storage-mega_sas.p5m
@@ -40,8 +40,8 @@ dir path=kernel/drv/$(ARCH64) group=sys
file path=kernel/drv/$(ARCH64)/mega_sas group=sys
file path=kernel/drv/mega_sas.conf group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/mega_sas.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/mega_sas.4d
driver name=mega_sas class=scsi \
alias=pci1000,57.8086.3002 \
alias=pci1000,60.1000.1006 \
diff --git a/usr/src/pkg/manifests/driver-storage-mpt_sas.p5m b/usr/src/pkg/manifests/driver-storage-mpt_sas.p5m
index ab466dfb98..8b4762eb87 100644
--- a/usr/src/pkg/manifests/driver-storage-mpt_sas.p5m
+++ b/usr/src/pkg/manifests/driver-storage-mpt_sas.p5m
@@ -42,8 +42,8 @@ file path=kernel/drv/$(ARCH64)/mpt_sas group=sys
file path=kernel/drv/mpt_sas.conf group=sys \
original_name=SUNWmptsas:kernel/drv/mpt_sas.conf preserve=true
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/mpt_sas.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/mpt_sas.4d
driver name=mpt_sas class=scsi-self-identifying \
alias=pci1000,64 \
alias=pci1000,70 \
diff --git a/usr/src/pkg/manifests/driver-storage-mr_sas.p5m b/usr/src/pkg/manifests/driver-storage-mr_sas.p5m
index aed758a2d5..bd8245393b 100644
--- a/usr/src/pkg/manifests/driver-storage-mr_sas.p5m
+++ b/usr/src/pkg/manifests/driver-storage-mr_sas.p5m
@@ -43,8 +43,8 @@ dir path=kernel/drv/$(ARCH64) group=sys
file path=kernel/drv/$(ARCH64)/mr_sas group=sys
file path=kernel/drv/mr_sas.conf group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/mr_sas.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/mr_sas.4d
$(sparc_ONLY)driver name=mr_sas class=scsi-self-identifying \
alias=pci1000,78 \
alias=pci1000,79 \
diff --git a/usr/src/pkg/manifests/driver-storage-nv_sata.p5m b/usr/src/pkg/manifests/driver-storage-nv_sata.p5m
index c6a51088d7..78c1f6c45c 100644
--- a/usr/src/pkg/manifests/driver-storage-nv_sata.p5m
+++ b/usr/src/pkg/manifests/driver-storage-nv_sata.p5m
@@ -43,8 +43,8 @@ dir path=kernel/drv/$(ARCH64) group=sys
file path=kernel/drv/$(ARCH64)/nv_sata group=sys
file path=kernel/drv/nv_sata.conf group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/nv_sata.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/nv_sata.4d
driver name=nv_sata perms="* 0644 root sys" class=scsi-self-identifying \
alias=pci10de,36 \
alias=pci10de,3e \
diff --git a/usr/src/pkg/manifests/driver-storage-nvme.p5m b/usr/src/pkg/manifests/driver-storage-nvme.p5m
index 5890751ca2..47cc6d5d3c 100644
--- a/usr/src/pkg/manifests/driver-storage-nvme.p5m
+++ b/usr/src/pkg/manifests/driver-storage-nvme.p5m
@@ -40,9 +40,9 @@ dir path=usr/sbin
file path=usr/sbin/nvmeadm mode=0555
dir path=usr/share
dir path=usr/share/man
-file path=usr/share/man/man1m/nvmeadm.1m
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/nvme.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/nvme.4d
+file path=usr/share/man/man8/nvmeadm.8
driver name=nvme perms="* 0600 root sys" class=disk \
alias=pciclass,010802 \
alias=pciexclass,010802
diff --git a/usr/src/pkg/manifests/driver-storage-scsa1394.p5m b/usr/src/pkg/manifests/driver-storage-scsa1394.p5m
index 675adb831f..f5ece890a2 100644
--- a/usr/src/pkg/manifests/driver-storage-scsa1394.p5m
+++ b/usr/src/pkg/manifests/driver-storage-scsa1394.p5m
@@ -39,8 +39,8 @@ dir path=kernel/drv group=sys
dir path=kernel/drv/$(ARCH64) group=sys
file path=kernel/drv/$(ARCH64)/scsa1394 group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/scsa1394.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/scsa1394.4d
driver name=scsa1394 perms="* 0666 root sys" alias=firewire00609e,010483
legacy pkg=SUNWscsa1394 desc="IEEE 1394 mass storage driver" \
name="IEEE 1394 mass storage driver"
diff --git a/usr/src/pkg/manifests/driver-storage-sdcard.p5m b/usr/src/pkg/manifests/driver-storage-sdcard.p5m
index 884d9c5e71..d69a59056c 100644
--- a/usr/src/pkg/manifests/driver-storage-sdcard.p5m
+++ b/usr/src/pkg/manifests/driver-storage-sdcard.p5m
@@ -45,9 +45,9 @@ $(i386_ONLY)dir path=kernel/misc group=sys
$(i386_ONLY)dir path=kernel/misc/$(ARCH64) group=sys
$(i386_ONLY)file path=kernel/misc/$(ARCH64)/sda group=sys mode=0755
$(i386_ONLY)dir path=usr/share/man
-$(i386_ONLY)dir path=usr/share/man/man7d
-$(i386_ONLY)file path=usr/share/man/man7d/sda.7d
-$(i386_ONLY)file path=usr/share/man/man7d/sdhost.7d
+$(i386_ONLY)dir path=usr/share/man/man4d
+$(i386_ONLY)file path=usr/share/man/man4d/sda.4d
+$(i386_ONLY)file path=usr/share/man/man4d/sdhost.4d
$(i386_ONLY)driver name=sdhost perms="* 0644 root root" \
alias=pciclass,080500 \
alias=pciclass,080501
diff --git a/usr/src/pkg/manifests/driver-storage-ses.p5m b/usr/src/pkg/manifests/driver-storage-ses.p5m
index d36db5293b..37547fbaf5 100644
--- a/usr/src/pkg/manifests/driver-storage-ses.p5m
+++ b/usr/src/pkg/manifests/driver-storage-ses.p5m
@@ -40,8 +40,8 @@ dir path=kernel/drv/$(ARCH64) group=sys
file path=kernel/drv/$(ARCH64)/ses group=sys
file path=kernel/drv/ses.conf group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/ses.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/ses.4d
driver name=ses perms="* 0666 bin bin" \
alias=scsiclass,03S \
alias=scsiclass,0d
diff --git a/usr/src/pkg/manifests/driver-storage-sf.p5m b/usr/src/pkg/manifests/driver-storage-sf.p5m
index 20f046c489..27e6ae786c 100644
--- a/usr/src/pkg/manifests/driver-storage-sf.p5m
+++ b/usr/src/pkg/manifests/driver-storage-sf.p5m
@@ -42,8 +42,8 @@ dir path=platform/sun4u/kernel/drv/$(ARCH64) group=sys
file path=platform/sun4u/kernel/drv/$(ARCH64)/sf group=sys
file path=platform/sun4u/kernel/drv/sf.conf group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/sf.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/sf.4d
driver name=sf
legacy pkg=SUNWluxd.u arch=$(ARCH).sun4u \
desc="Sun Enterprise Network Array sf Device Driver" \
diff --git a/usr/src/pkg/manifests/driver-storage-si3124.p5m b/usr/src/pkg/manifests/driver-storage-si3124.p5m
index ecbc0c66f8..fa2af477d4 100644
--- a/usr/src/pkg/manifests/driver-storage-si3124.p5m
+++ b/usr/src/pkg/manifests/driver-storage-si3124.p5m
@@ -39,8 +39,8 @@ dir path=kernel/drv group=sys
dir path=kernel/drv/$(ARCH64) group=sys
file path=kernel/drv/$(ARCH64)/si3124 group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/si3124.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/si3124.4d
driver name=si3124 perms="* 0644 root sys" class=scsi-self-identifying \
alias=pci1095,3124 \
alias=pci1095,3132 \
diff --git a/usr/src/pkg/manifests/driver-storage-skd.p5m b/usr/src/pkg/manifests/driver-storage-skd.p5m
index 0681840a20..781158f1e2 100644
--- a/usr/src/pkg/manifests/driver-storage-skd.p5m
+++ b/usr/src/pkg/manifests/driver-storage-skd.p5m
@@ -36,7 +36,7 @@ file path=kernel/drv/skd.conf group=sys
dir path=usr group=sys
dir path=usr/share
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/skd.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/skd.4d
driver name=skd perms="* 0600 root sys" class=disk alias=pciex1b39,1
license lic_CDDL license=lic_CDDL
diff --git a/usr/src/pkg/manifests/driver-storage-ssd.p5m b/usr/src/pkg/manifests/driver-storage-ssd.p5m
index 7d8c4b171d..0d83219882 100644
--- a/usr/src/pkg/manifests/driver-storage-ssd.p5m
+++ b/usr/src/pkg/manifests/driver-storage-ssd.p5m
@@ -41,8 +41,8 @@ file path=kernel/drv/$(ARCH64)/ssd group=sys
file path=kernel/drv/ssd.conf group=sys \
original_name=SUNWssad:kernel/drv/ssd.conf preserve=true
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/ssd.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/ssd.4d
driver name=ssd perms="* 0640 root sys" \
alias=SUNW,ssd \
alias=scsa,00.bfcp \
diff --git a/usr/src/pkg/manifests/driver-storage-vioblk.p5m b/usr/src/pkg/manifests/driver-storage-vioblk.p5m
index 8535bdc844..a39adba818 100644
--- a/usr/src/pkg/manifests/driver-storage-vioblk.p5m
+++ b/usr/src/pkg/manifests/driver-storage-vioblk.p5m
@@ -39,8 +39,8 @@ dir path=kernel/drv group=sys
dir path=kernel/drv/$(ARCH64) group=sys
file path=kernel/drv/$(ARCH64)/vioblk group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/vioblk.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/vioblk.4d
driver name=vioblk perms="* 0666 root sys" clone_perms="vioblk 0666 root sys" \
alias=pci1af4,1001
license lic_CDDL license=lic_CDDL
diff --git a/usr/src/pkg/manifests/driver-usb-ugen.p5m b/usr/src/pkg/manifests/driver-usb-ugen.p5m
index 88ffe650ff..6b80903ca3 100644
--- a/usr/src/pkg/manifests/driver-usb-ugen.p5m
+++ b/usr/src/pkg/manifests/driver-usb-ugen.p5m
@@ -39,8 +39,8 @@ dir path=kernel/drv group=sys
dir path=kernel/drv/$(ARCH64) group=sys
file path=kernel/drv/$(ARCH64)/ugen group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/ugen.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/ugen.4d
driver name=ugen perms="* 0644 root sys"
legacy pkg=SUNWugen desc="UGEN (USB Generic Driver)" name="USB Generic Driver"
license cr_Sun license=cr_Sun
diff --git a/usr/src/pkg/manifests/driver-usb.p5m b/usr/src/pkg/manifests/driver-usb.p5m
index fc2cf12862..52553f1c18 100644
--- a/usr/src/pkg/manifests/driver-usb.p5m
+++ b/usr/src/pkg/manifests/driver-usb.p5m
@@ -95,24 +95,24 @@ $(i386_ONLY)dir path=usr/lib/xhci group=sys
$(i386_ONLY)file path=usr/lib/xhci/xhci_portsc group=sys mode=0555
dir path=usr/share
dir path=usr/share/man
-file path=usr/share/man/man7d/ehci.7d
-file path=usr/share/man/man7d/hid.7d
-file path=usr/share/man/man7d/hubd.7d
-file path=usr/share/man/man7d/ohci.7d
-file path=usr/share/man/man7d/scsa2usb.7d
-file path=usr/share/man/man7d/uhci.7d
-link path=usr/share/man/man7d/usb.7d target=usba.7d
-file path=usr/share/man/man7d/usb_ac.7d
-file path=usr/share/man/man7d/usb_as.7d
-file path=usr/share/man/man7d/usb_ia.7d
-file path=usr/share/man/man7d/usb_mid.7d
-file path=usr/share/man/man7d/usba.7d
-file path=usr/share/man/man7d/usbprn.7d
-$(i386_ONLY)file path=usr/share/man/man7d/xhci.7d
-dir path=usr/share/man/man7m
-file path=usr/share/man/man7m/usb_ah.7m
-file path=usr/share/man/man7m/usbkbm.7m
-file path=usr/share/man/man7m/usbms.7m
+file path=usr/share/man/man4d/ehci.4d
+file path=usr/share/man/man4d/hid.4d
+file path=usr/share/man/man4d/hubd.4d
+file path=usr/share/man/man4d/ohci.4d
+file path=usr/share/man/man4d/scsa2usb.4d
+file path=usr/share/man/man4d/uhci.4d
+link path=usr/share/man/man4d/usb.4d target=usba.4d
+file path=usr/share/man/man4d/usb_ac.4d
+file path=usr/share/man/man4d/usb_as.4d
+file path=usr/share/man/man4d/usb_ia.4d
+file path=usr/share/man/man4d/usb_mid.4d
+file path=usr/share/man/man4d/usba.4d
+file path=usr/share/man/man4d/usbprn.4d
+$(i386_ONLY)file path=usr/share/man/man4d/xhci.4d
+dir path=usr/share/man/man4m
+file path=usr/share/man/man4m/usb_ah.4m
+file path=usr/share/man/man4m/usbkbm.4m
+file path=usr/share/man/man4m/usbms.4m
dir path=usr/share/man/man9e
file path=usr/share/man/man9e/usba_hcdi.9e
link path=usr/share/man/man9e/usba_hcdi_cb_close.9e target=usba_hcdi_cb_ops.9e
diff --git a/usr/src/pkg/manifests/install-beadm.p5m b/usr/src/pkg/manifests/install-beadm.p5m
index a706906894..623196c8dd 100644
--- a/usr/src/pkg/manifests/install-beadm.p5m
+++ b/usr/src/pkg/manifests/install-beadm.p5m
@@ -45,8 +45,8 @@ dir path=usr/sbin
link path=usr/sbin/beadm target=../../sbin/beadm
dir path=usr/share
dir path=usr/share/man
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/beadm.1m
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/beadm.8
license cr_Sun license=cr_Sun
license lic_CDDL license=lic_CDDL
$(python3_ONLY)depend type=conditional \
diff --git a/usr/src/pkg/manifests/library-libtecla.p5m b/usr/src/pkg/manifests/library-libtecla.p5m
index 2ff2f6699f..84b9ef7ad0 100644
--- a/usr/src/pkg/manifests/library-libtecla.p5m
+++ b/usr/src/pkg/manifests/library-libtecla.p5m
@@ -193,9 +193,9 @@ link path=usr/share/man/man3tecla/ppc_file_start.3tecla \
target=pca_lookup_file.3tecla
link path=usr/share/man/man3tecla/ppc_literal_escapes.3tecla \
target=pca_lookup_file.3tecla
-dir path=usr/share/man/man5
-file path=usr/share/man/man5/tecla.5
-link path=usr/share/man/man5/teclarc.5 target=tecla.5
+dir path=usr/share/man/man7
+file path=usr/share/man/man7/tecla.7
+link path=usr/share/man/man7/teclarc.7 target=tecla.7
legacy pkg=SUNWtecla desc="Tecla command-line editing library" \
name="Tecla command-line editing library"
license usr/src/lib/libtecla/THIRDPARTYLICENSE \
diff --git a/usr/src/pkg/manifests/library-security-tcp-wrapper.p5m b/usr/src/pkg/manifests/library-security-tcp-wrapper.p5m
index c01b684968..009318f0bb 100644
--- a/usr/src/pkg/manifests/library-security-tcp-wrapper.p5m
+++ b/usr/src/pkg/manifests/library-security-tcp-wrapper.p5m
@@ -41,21 +41,21 @@ file path=usr/sbin/tcpdmatch mode=0555
file path=usr/sbin/try-from mode=0555
dir path=usr/share
dir path=usr/share/man
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/tcpd.1m
-file path=usr/share/man/man1m/tcpdchk.1m
-file path=usr/share/man/man1m/tcpdmatch.1m
dir path=usr/share/man/man3
file path=usr/share/man/man3/hosts_access.3
link path=usr/share/man/man3/hosts_ctl.3 target=hosts_access.3
link path=usr/share/man/man3/libwrap.3 target=hosts_access.3
link path=usr/share/man/man3/request_init.3 target=hosts_access.3
link path=usr/share/man/man3/request_set.3 target=hosts_access.3
-dir path=usr/share/man/man4
-link path=usr/share/man/man4/hosts.allow.4 target=hosts_access.4
-link path=usr/share/man/man4/hosts.deny.4 target=hosts_access.4
-file path=usr/share/man/man4/hosts_access.4
-file path=usr/share/man/man4/hosts_options.4
+dir path=usr/share/man/man5
+link path=usr/share/man/man5/hosts.allow.5 target=hosts_access.5
+link path=usr/share/man/man5/hosts.deny.5 target=hosts_access.5
+file path=usr/share/man/man5/hosts_access.5
+file path=usr/share/man/man5/hosts_options.5
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/tcpd.8
+file path=usr/share/man/man8/tcpdchk.8
+file path=usr/share/man/man8/tcpdmatch.8
legacy pkg=SUNWtcpd \
desc="tcpd - access control facility for internet services" \
name="tcpd - access control facility for internet services"
diff --git a/usr/src/pkg/manifests/naming-ldap.p5m b/usr/src/pkg/manifests/naming-ldap.p5m
index 9434a34137..d28d66524f 100644
--- a/usr/src/pkg/manifests/naming-ldap.p5m
+++ b/usr/src/pkg/manifests/naming-ldap.p5m
@@ -46,10 +46,10 @@ file path=usr/share/man/man1/ldapdelete.1
file path=usr/share/man/man1/ldapmodify.1
file path=usr/share/man/man1/ldapmodrdn.1
file path=usr/share/man/man1/ldapsearch.1
-dir path=usr/share/man/man4
-file path=usr/share/man/man4/ldapfilter.conf.4
-file path=usr/share/man/man4/ldapsearchprefs.conf.4
-file path=usr/share/man/man4/ldaptemplates.conf.4
+dir path=usr/share/man/man5
+file path=usr/share/man/man5/ldapfilter.conf.5
+file path=usr/share/man/man5/ldapsearchprefs.conf.5
+file path=usr/share/man/man5/ldaptemplates.conf.5
legacy pkg=SUNWlldap \
desc="Ldap libraries in for software development of dynamically linked executables" \
name="LDAP Libraries"
diff --git a/usr/src/pkg/manifests/network-ftp.p5m b/usr/src/pkg/manifests/network-ftp.p5m
index bc2d4e2d2f..5f12bdf3f8 100644
--- a/usr/src/pkg/manifests/network-ftp.p5m
+++ b/usr/src/pkg/manifests/network-ftp.p5m
@@ -41,9 +41,9 @@ file path=usr/bin/ftp mode=0555
dir path=usr/share/man
dir path=usr/share/man/man1
file path=usr/share/man/man1/ftp.1
-dir path=usr/share/man/man4
-file path=usr/share/man/man4/ftp.4
-file path=usr/share/man/man4/netrc.4
+dir path=usr/share/man/man5
+file path=usr/share/man/man5/ftp.5
+file path=usr/share/man/man5/netrc.5
legacy pkg=SUNWbip desc="Basic IP commands" name="Basic IP commands (Usr)"
legacy pkg=SUNWbipr desc="Basic IP commands (Root)" \
name="Basic IP commands (Root)"
diff --git a/usr/src/pkg/manifests/network-ipd.p5m b/usr/src/pkg/manifests/network-ipd.p5m
index 7b7c24d9be..9b16fbebed 100644
--- a/usr/src/pkg/manifests/network-ipd.p5m
+++ b/usr/src/pkg/manifests/network-ipd.p5m
@@ -35,8 +35,8 @@ link path=usr/lib/libipd.so target=libipd.so.1
file path=usr/lib/libipd.so.1
dir path=usr/sbin
file path=usr/sbin/ipdadm mode=0555
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/ipdadm.1m
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/ipdadm.8
driver name=ipd perms="* 0600 root sys"
license cr_Sun license=cr_Sun
license lic_CDDL license=lic_CDDL
diff --git a/usr/src/pkg/manifests/network-ipfilter.p5m b/usr/src/pkg/manifests/network-ipfilter.p5m
index bd63749dfe..bd4ade3a10 100644
--- a/usr/src/pkg/manifests/network-ipfilter.p5m
+++ b/usr/src/pkg/manifests/network-ipfilter.p5m
@@ -107,26 +107,26 @@ file path=usr/share/ipfilter/examples/pool.conf
file path=usr/share/ipfilter/examples/server
file path=usr/share/ipfilter/examples/tcpstate
dir path=usr/share/man
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/ipf.1m
-file path=usr/share/man/man1m/ipfs.1m
-file path=usr/share/man/man1m/ipfstat.1m
-file path=usr/share/man/man1m/ipmon.1m
-file path=usr/share/man/man1m/ipnat.1m
-file path=usr/share/man/man1m/ippool.1m
-file path=usr/share/man/man4/ipf.4
-link path=usr/share/man/man4/ipf.conf.4 target=./ipf.4
-link path=usr/share/man/man4/ipf6.conf.4 target=./ipf.4
-file path=usr/share/man/man4/ipmon.4
-link path=usr/share/man/man4/ipmon.conf.4 target=./ipmon.4
-file path=usr/share/man/man4/ipnat.4
-link path=usr/share/man/man4/ipnat.conf.4 target=./ipnat.4
-file path=usr/share/man/man4/ippool.4
-link path=usr/share/man/man4/ippool.conf.4 target=./ippool.4
-dir path=usr/share/man/man5
-file path=usr/share/man/man5/ipfilter.5
-dir path=usr/share/man/man7i
-file path=usr/share/man/man7i/ipnat.7i
+dir path=usr/share/man/man4i
+file path=usr/share/man/man4i/ipnat.4i
+file path=usr/share/man/man5/ipf.5
+link path=usr/share/man/man5/ipf.conf.5 target=./ipf.5
+link path=usr/share/man/man5/ipf6.conf.5 target=./ipf.5
+file path=usr/share/man/man5/ipmon.5
+link path=usr/share/man/man5/ipmon.conf.5 target=./ipmon.5
+file path=usr/share/man/man5/ipnat.5
+link path=usr/share/man/man5/ipnat.conf.5 target=./ipnat.5
+file path=usr/share/man/man5/ippool.5
+link path=usr/share/man/man5/ippool.conf.5 target=./ippool.5
+dir path=usr/share/man/man7
+file path=usr/share/man/man7/ipfilter.7
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/ipf.8
+file path=usr/share/man/man8/ipfs.8
+file path=usr/share/man/man8/ipfstat.8
+file path=usr/share/man/man8/ipmon.8
+file path=usr/share/man/man8/ipnat.8
+file path=usr/share/man/man8/ippool.8
dir path=var group=sys
dir path=var/db group=sys
dir path=var/db/ipf group=sys
diff --git a/usr/src/pkg/manifests/network-iscsi-initiator.p5m b/usr/src/pkg/manifests/network-iscsi-initiator.p5m
index c8578a8da6..d73a3a7f78 100644
--- a/usr/src/pkg/manifests/network-iscsi-initiator.p5m
+++ b/usr/src/pkg/manifests/network-iscsi-initiator.p5m
@@ -53,10 +53,10 @@ dir path=usr group=sys
dir path=usr/sbin
file path=usr/sbin/iscsiadm mode=0555
dir path=usr/share/man
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/iscsiadm.1m
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/iscsi.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/iscsi.4d
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/iscsiadm.8
driver name=iscsi perms="* 0600 root sys" class=scsi-self-identify
legacy pkg=SUNWiscsir desc="Sun iSCSI Device Driver" \
name="Sun iSCSI Device Driver (root)"
diff --git a/usr/src/pkg/manifests/network-iscsi-iser.p5m b/usr/src/pkg/manifests/network-iscsi-iser.p5m
index 2ba4146555..b40257b240 100644
--- a/usr/src/pkg/manifests/network-iscsi-iser.p5m
+++ b/usr/src/pkg/manifests/network-iscsi-iser.p5m
@@ -52,8 +52,8 @@ dir path=usr/lib/mdb/kvm group=sys
dir path=usr/lib/mdb/kvm/$(ARCH64) group=sys
file path=usr/lib/mdb/kvm/$(ARCH64)/idm.so group=sys mode=0555
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/iser.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/iser.4d
driver name=iser perms="* 0600 root sys"
legacy pkg=SUNWiscsidmr desc="Sun iSCSI Data Mover (Root)" \
name="Sun iSCSI Data Mover (Root)"
diff --git a/usr/src/pkg/manifests/network-iscsi-target.p5m b/usr/src/pkg/manifests/network-iscsi-target.p5m
index 68f1415c87..b97ed39c7c 100644
--- a/usr/src/pkg/manifests/network-iscsi-target.p5m
+++ b/usr/src/pkg/manifests/network-iscsi-target.p5m
@@ -59,8 +59,6 @@ link path=usr/lib/libiscsit.so target=libiscsit.so.1
file path=usr/lib/libiscsit.so.1
dir path=usr/sbin
file path=usr/sbin/itadm mode=0555
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/itadm.1m
dir path=usr/share/man/man3iscsit
link path=usr/share/man/man3iscsit/it_config_commit.3iscsit \
target=it_config_load.3iscsit
@@ -99,6 +97,8 @@ link path=usr/share/man/man3iscsit/it_tpgt_free.3iscsit \
target=it_tgt_create.3iscsit
dir path=usr/share/man/man3lib
file path=usr/share/man/man3lib/libiscsit.3lib
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/itadm.8
driver name=iscsit perms="* 0600 root sys"
legacy pkg=SUNWiscsitr desc="Sun iSCSI COMSTAR Port Provider" \
name="Sun iSCSI COMSTAR Port Provider (root)"
diff --git a/usr/src/pkg/manifests/package-svr4.p5m b/usr/src/pkg/manifests/package-svr4.p5m
index 7b5e348ad0..2c8ebb077f 100644
--- a/usr/src/pkg/manifests/package-svr4.p5m
+++ b/usr/src/pkg/manifests/package-svr4.p5m
@@ -82,24 +82,24 @@ file path=usr/share/man/man1/pkgmk.1
file path=usr/share/man/man1/pkgparam.1
file path=usr/share/man/man1/pkgproto.1
file path=usr/share/man/man1/pkgtrans.1
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/installf.1m
-file path=usr/share/man/man1m/pkgadd.1m
-file path=usr/share/man/man1m/pkgadm.1m
-file path=usr/share/man/man1m/pkgask.1m
-file path=usr/share/man/man1m/pkgchk.1m
-file path=usr/share/man/man1m/pkgrm.1m
-file path=usr/share/man/man1m/removef.1m
-dir path=usr/share/man/man4
-file path=usr/share/man/man4/admin.4
-file path=usr/share/man/man4/compver.4
-file path=usr/share/man/man4/contents.4
-file path=usr/share/man/man4/copyright.4
-file path=usr/share/man/man4/depend.4
-file path=usr/share/man/man4/pkginfo.4
-file path=usr/share/man/man4/pkgmap.4
-file path=usr/share/man/man4/prototype.4
-file path=usr/share/man/man4/space.4
+dir path=usr/share/man/man5
+file path=usr/share/man/man5/admin.5
+file path=usr/share/man/man5/compver.5
+file path=usr/share/man/man5/contents.5
+file path=usr/share/man/man5/copyright.5
+file path=usr/share/man/man5/depend.5
+file path=usr/share/man/man5/pkginfo.5
+file path=usr/share/man/man5/pkgmap.5
+file path=usr/share/man/man5/prototype.5
+file path=usr/share/man/man5/space.5
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/installf.8
+file path=usr/share/man/man8/pkgadd.8
+file path=usr/share/man/man8/pkgadm.8
+file path=usr/share/man/man8/pkgask.8
+file path=usr/share/man/man8/pkgchk.8
+file path=usr/share/man/man8/pkgrm.8
+file path=usr/share/man/man8/removef.8
dir path=var group=sys
dir path=var/sadm group=sys
dir path=var/sadm/install
diff --git a/usr/src/pkg/manifests/print-lp-print-client-commands.p5m b/usr/src/pkg/manifests/print-lp-print-client-commands.p5m
index b070436d24..e069247a9d 100644
--- a/usr/src/pkg/manifests/print-lp-print-client-commands.p5m
+++ b/usr/src/pkg/manifests/print-lp-print-client-commands.p5m
@@ -69,12 +69,12 @@ link path=usr/share/man/man1/disable.1 target=enable.1
file path=usr/share/man/man1/enable.1
file path=usr/share/man/man1/lp.1
file path=usr/share/man/man1/lpstat.1
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/accept.1m
-file path=usr/share/man/man1m/lpadmin.1m
-file path=usr/share/man/man1m/lpmove.1m
-file path=usr/share/man/man1m/print-service.1m
-link path=usr/share/man/man1m/reject.1m target=accept.1m
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/accept.8
+file path=usr/share/man/man8/lpadmin.8
+file path=usr/share/man/man8/lpmove.8
+file path=usr/share/man/man8/print-service.8
+link path=usr/share/man/man8/reject.8 target=accept.8
legacy pkg=SUNWpcu \
desc="client configuration files and utilities for the print service" \
name="Solaris Print - Client, (usr)" version=13.1,REV=2009.11.11
diff --git a/usr/src/pkg/manifests/print-lp-print-manager-legacy.p5m b/usr/src/pkg/manifests/print-lp-print-manager-legacy.p5m
index 45514b7e9a..8acbee8d89 100644
--- a/usr/src/pkg/manifests/print-lp-print-manager-legacy.p5m
+++ b/usr/src/pkg/manifests/print-lp-print-manager-legacy.p5m
@@ -62,9 +62,9 @@ file path=usr/sadm/admin/printmgr/lib/libpmgr.so.1 group=lp
dir path=usr/sbin
file path=usr/sbin/ppdmgr group=lp mode=0555
link path=usr/sbin/printmgr target=../../usr/sadm/admin/bin/printmgr
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/ppdmgr.1m
-file path=usr/share/man/man1m/printmgr.1m
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/ppdmgr.8
+file path=usr/share/man/man8/printmgr.8
dir path=var group=sys
dir path=var/lp owner=lp group=lp mode=0775
dir path=var/lp/ppd group=lp
diff --git a/usr/src/pkg/manifests/print-lp.p5m b/usr/src/pkg/manifests/print-lp.p5m
index 61fbccc07d..c11e818704 100644
--- a/usr/src/pkg/manifests/print-lp.p5m
+++ b/usr/src/pkg/manifests/print-lp.p5m
@@ -124,21 +124,21 @@ file path=usr/sbin/lpsystem group=lp mode=0555
file path=usr/sbin/lpusers group=lp mode=0555
dir path=usr/share
dir path=usr/share/man
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/conv_lp.1m
-file path=usr/share/man/man1m/conv_lpd.1m
-file path=usr/share/man/man1m/in.lpd.1m
-file path=usr/share/man/man1m/lpfilter.1m
-file path=usr/share/man/man1m/lpforms.1m
-file path=usr/share/man/man1m/lpget.1m
-file path=usr/share/man/man1m/lpsched.1m
-file path=usr/share/man/man1m/lpset.1m
-file path=usr/share/man/man1m/lpshut.1m
-file path=usr/share/man/man1m/lpsystem.1m
-file path=usr/share/man/man1m/lpusers.1m
-dir path=usr/share/man/man4
-file path=usr/share/man/man4/printers.4
-file path=usr/share/man/man4/printers.conf.4
+dir path=usr/share/man/man5
+file path=usr/share/man/man5/printers.5
+file path=usr/share/man/man5/printers.conf.5
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/conv_lp.8
+file path=usr/share/man/man8/conv_lpd.8
+file path=usr/share/man/man8/in.lpd.8
+file path=usr/share/man/man8/lpfilter.8
+file path=usr/share/man/man8/lpforms.8
+file path=usr/share/man/man8/lpget.8
+file path=usr/share/man/man8/lpsched.8
+file path=usr/share/man/man8/lpset.8
+file path=usr/share/man/man8/lpshut.8
+file path=usr/share/man/man8/lpsystem.8
+file path=usr/share/man/man8/lpusers.8
dir path=var group=sys
dir path=var/lp owner=lp group=lp mode=0775
dir path=var/lp/logs owner=lp group=lp mode=0775
diff --git a/usr/src/pkg/manifests/security-bart.p5m b/usr/src/pkg/manifests/security-bart.p5m
index a69e4fc0a4..91a67b6e57 100644
--- a/usr/src/pkg/manifests/security-bart.p5m
+++ b/usr/src/pkg/manifests/security-bart.p5m
@@ -33,11 +33,11 @@ dir path=usr group=sys
dir path=usr/bin
file path=usr/bin/bart mode=0555
dir path=usr/share/man
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/bart.1m
-dir path=usr/share/man/man4
-file path=usr/share/man/man4/bart_manifest.4
-file path=usr/share/man/man4/bart_rules.4
+dir path=usr/share/man/man5
+file path=usr/share/man/man5/bart_manifest.5
+file path=usr/share/man/man5/bart_rules.5
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/bart.8
legacy pkg=SUNWbart desc="Basic Audit Reporting Tool (BART)" \
name="Basic Audit Reporting Tool"
license cr_Sun license=cr_Sun
diff --git a/usr/src/pkg/manifests/service-fault-management.p5m b/usr/src/pkg/manifests/service-fault-management.p5m
index 73d9be2a2f..1debb139d6 100644
--- a/usr/src/pkg/manifests/service-fault-management.p5m
+++ b/usr/src/pkg/manifests/service-fault-management.p5m
@@ -1004,11 +1004,11 @@ file path=usr/share/lib/xml/dtd/digraph-topology.dtd.1 \
variant.opensolaris.zone=__NODEFAULT
file path=usr/share/lib/xml/dtd/topology.dtd.1 \
variant.opensolaris.zone=__NODEFAULT
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/fmadm.1m
-file path=usr/share/man/man1m/fmd.1m
-file path=usr/share/man/man1m/fmdump.1m
-file path=usr/share/man/man1m/fmstat.1m
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/fmadm.8
+file path=usr/share/man/man8/fmd.8
+file path=usr/share/man/man8/fmdump.8
+file path=usr/share/man/man8/fmstat.8
dir path=var/fm group=sys variant.opensolaris.zone=__NODEFAULT
dir path=var/fm/fmd group=sys variant.opensolaris.zone=__NODEFAULT
dir path=var/fm/fmd/ckpt group=sys variant.opensolaris.zone=__NODEFAULT
diff --git a/usr/src/pkg/manifests/service-file-system-nfs.p5m b/usr/src/pkg/manifests/service-file-system-nfs.p5m
index fdd63c3330..5cbed5291b 100644
--- a/usr/src/pkg/manifests/service-file-system-nfs.p5m
+++ b/usr/src/pkg/manifests/service-file-system-nfs.p5m
@@ -76,15 +76,15 @@ dir path=usr/sbin
file path=usr/sbin/exportfs mode=0555
file path=usr/sbin/nfsref mode=0555
dir path=usr/share/man
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/mountd.1m
-file path=usr/share/man/man1m/nfsd.1m
-file path=usr/share/man/man1m/nfslogd.1m
-file path=usr/share/man/man1m/rquotad.1m
-file path=usr/share/man/man4/nfslog.conf.4
-file path=usr/share/man/man4/rmtab.4
-dir path=usr/share/man/man5
-file path=usr/share/man/man5/nfssec.5
+file path=usr/share/man/man5/nfslog.conf.5
+file path=usr/share/man/man5/rmtab.5
+dir path=usr/share/man/man7
+file path=usr/share/man/man7/nfssec.7
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/mountd.8
+file path=usr/share/man/man8/nfsd.8
+file path=usr/share/man/man8/nfslogd.8
+file path=usr/share/man/man8/rquotad.8
legacy pkg=SUNWnfsskr \
desc="Network File System (NFS) server kernel support (Root)" \
name="Network File System (NFS) server kernel support (Root)"
diff --git a/usr/src/pkg/manifests/service-file-system-smb.p5m b/usr/src/pkg/manifests/service-file-system-smb.p5m
index e87ab1d009..8340ef7bbc 100644
--- a/usr/src/pkg/manifests/service-file-system-smb.p5m
+++ b/usr/src/pkg/manifests/service-file-system-smb.p5m
@@ -85,15 +85,15 @@ dir path=usr/sbin
file path=usr/sbin/smbadm mode=0555
file path=usr/sbin/smbstat mode=0555
dir path=usr/share/man
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/smbadm.1m
-file path=usr/share/man/man1m/smbd.1m
-file path=usr/share/man/man1m/smbstat.1m
-dir path=usr/share/man/man4
-file path=usr/share/man/man4/smb.4
-file path=usr/share/man/man4/smbautohome.4
dir path=usr/share/man/man5
-file path=usr/share/man/man5/pam_smb_passwd.5
+file path=usr/share/man/man5/smb.5
+file path=usr/share/man/man5/smbautohome.5
+dir path=usr/share/man/man7
+file path=usr/share/man/man7/pam_smb_passwd.7
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/smbadm.8
+file path=usr/share/man/man8/smbd.8
+file path=usr/share/man/man8/smbstat.8
dir path=var group=sys
dir path=var/smb group=sys
dir path=var/smb/cvol group=sys
diff --git a/usr/src/pkg/manifests/service-hal.p5m b/usr/src/pkg/manifests/service-hal.p5m
index 0153e15d13..ba25407088 100644
--- a/usr/src/pkg/manifests/service-hal.p5m
+++ b/usr/src/pkg/manifests/service-hal.p5m
@@ -169,19 +169,19 @@ dir path=usr/share/lib/xml group=sys
dir path=usr/share/lib/xml/dtd group=sys
file path=usr/share/lib/xml/dtd/fdi.dtd.1
dir path=usr/share/man
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/hal-device.1m
-file path=usr/share/man/man1m/hal-fdi-validate.1m
-link path=usr/share/man/man1m/hal-find-by-capability.1m target=hal-find.1m
-link path=usr/share/man/man1m/hal-find-by-property.1m target=hal-find.1m
-file path=usr/share/man/man1m/hal-find.1m
-file path=usr/share/man/man1m/hal-get-property.1m
-link path=usr/share/man/man1m/hal-set-property.1m target=hal-get-property.1m
-file path=usr/share/man/man1m/hald.1m
-dir path=usr/share/man/man4
-file path=usr/share/man/man4/fdi.4
dir path=usr/share/man/man5
-file path=usr/share/man/man5/hal.5
+file path=usr/share/man/man5/fdi.5
+dir path=usr/share/man/man7
+file path=usr/share/man/man7/hal.7
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/hal-device.8
+file path=usr/share/man/man8/hal-fdi-validate.8
+link path=usr/share/man/man8/hal-find-by-capability.8 target=hal-find.8
+link path=usr/share/man/man8/hal-find-by-property.8 target=hal-find.8
+file path=usr/share/man/man8/hal-find.8
+file path=usr/share/man/man8/hal-get-property.8
+link path=usr/share/man/man8/hal-set-property.8 target=hal-get-property.8
+file path=usr/share/man/man8/hald.8
legacy pkg=SUNWhal desc="Hardware Abstraction Layer, HAL (freedesktop.org)" \
name="Hardware Abstraction Layer"
legacy pkg=SUNWhalr \
diff --git a/usr/src/pkg/manifests/service-network-dns-mdns.p5m b/usr/src/pkg/manifests/service-network-dns-mdns.p5m
index 701554dd97..7e65735763 100644
--- a/usr/src/pkg/manifests/service-network-dns-mdns.p5m
+++ b/usr/src/pkg/manifests/service-network-dns-mdns.p5m
@@ -54,9 +54,6 @@ file path=usr/lib/libdns_sd.so.1
file path=usr/lib/nss_mdns.so.1
dir path=usr/share
dir path=usr/share/man
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/dns-sd.1m
-file path=usr/share/man/man1m/mdnsd.1m
dir path=usr/share/man/man3dns_sd
link path=usr/share/man/man3dns_sd/DNSServiceAddRecord.3dns_sd \
target=DNSServiceCreateConnection.3dns_sd
@@ -98,6 +95,9 @@ link path=usr/share/man/man3dns_sd/TXTRecordSetValue.3dns_sd \
target=TXTRecordCreate.3dns_sd
dir path=usr/share/man/man3lib
file path=usr/share/man/man3lib/libdns_sd.3lib
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/dns-sd.8
+file path=usr/share/man/man8/mdnsd.8
legacy pkg=SUNWdsdr \
desc="Root components for Multicast DNS daemon and service discovery support" \
name="Multicast DNS and Service Discovery (Root)"
diff --git a/usr/src/pkg/manifests/service-network-legacy.p5m b/usr/src/pkg/manifests/service-network-legacy.p5m
index 5484ea0600..0220a6f1f3 100644
--- a/usr/src/pkg/manifests/service-network-legacy.p5m
+++ b/usr/src/pkg/manifests/service-network-legacy.p5m
@@ -47,12 +47,12 @@ file path=usr/lib/inet/in.daytimed mode=0555
file path=usr/lib/inet/in.discardd mode=0555
file path=usr/lib/inet/in.echod mode=0555
file path=usr/lib/inet/in.timed mode=0555
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/in.chargend.1m
-file path=usr/share/man/man1m/in.daytimed.1m
-file path=usr/share/man/man1m/in.discardd.1m
-file path=usr/share/man/man1m/in.echod.1m
-file path=usr/share/man/man1m/in.timed.1m
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/in.chargend.8
+file path=usr/share/man/man8/in.daytimed.8
+file path=usr/share/man/man8/in.discardd.8
+file path=usr/share/man/man8/in.echod.8
+file path=usr/share/man/man8/in.timed.8
legacy pkg=SUNWcnsr \
desc="Common Network Services (Root): time, daytime, echo, discard, chargen" \
name="Common Network Services (Root): time, daytime, echo, discard, chargen"
diff --git a/usr/src/pkg/manifests/service-network-network-clients.p5m b/usr/src/pkg/manifests/service-network-network-clients.p5m
index fb4b7b186a..86d7c7e7cd 100644
--- a/usr/src/pkg/manifests/service-network-network-clients.p5m
+++ b/usr/src/pkg/manifests/service-network-network-clients.p5m
@@ -62,12 +62,12 @@ file path=usr/share/man/man1/rup.1
file path=usr/share/man/man1/ruptime.1
file path=usr/share/man/man1/rusers.1
file path=usr/share/man/man1/whois.1
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/rdate.1m
-file path=usr/share/man/man1m/rmt.1m
-file path=usr/share/man/man1m/rwall.1m
-file path=usr/share/man/man1m/snoop.1m
-file path=usr/share/man/man1m/spray.1m
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/rdate.8
+file path=usr/share/man/man8/rmt.8
+file path=usr/share/man/man8/rwall.8
+file path=usr/share/man/man8/snoop.8
+file path=usr/share/man/man8/spray.8
legacy pkg=SUNWrcmdc \
desc="Remote Network Client Commands (rsh, rlogin, rcp, rsh, ...)" \
name="Remote Network Client Commands"
diff --git a/usr/src/pkg/manifests/service-network-network-servers.p5m b/usr/src/pkg/manifests/service-network-network-servers.p5m
index 6b9f82a09e..886db4212b 100644
--- a/usr/src/pkg/manifests/service-network-network-servers.p5m
+++ b/usr/src/pkg/manifests/service-network-network-servers.p5m
@@ -75,32 +75,32 @@ dir path=usr/share/man/man1
file path=usr/share/man/man1/finger.1
file path=usr/share/man/man1/rwho.1
file path=usr/share/man/man1/talk.1
-dir path=usr/share/man/man1m
-link path=usr/share/man/man1m/comsat.1m target=in.comsat.1m
-link path=usr/share/man/man1m/fingerd.1m target=in.fingerd.1m
-file path=usr/share/man/man1m/in.comsat.1m
-file path=usr/share/man/man1m/in.fingerd.1m
-file path=usr/share/man/man1m/in.rexecd.1m
-file path=usr/share/man/man1m/in.rlogind.1m
-file path=usr/share/man/man1m/in.rshd.1m
-file path=usr/share/man/man1m/in.rwhod.1m
-file path=usr/share/man/man1m/in.talkd.1m
-link path=usr/share/man/man1m/rexecd.1m target=in.rexecd.1m
-link path=usr/share/man/man1m/rlogind.1m target=in.rlogind.1m
-file path=usr/share/man/man1m/rpc.rstatd.1m
-file path=usr/share/man/man1m/rpc.rusersd.1m
-file path=usr/share/man/man1m/rpc.rwalld.1m
-file path=usr/share/man/man1m/rpc.sprayd.1m
-link path=usr/share/man/man1m/rshd.1m target=in.rshd.1m
-link path=usr/share/man/man1m/rstatd.1m target=rpc.rstatd.1m
-link path=usr/share/man/man1m/rusersd.1m target=rpc.rusersd.1m
-link path=usr/share/man/man1m/rwalld.1m target=rpc.rwalld.1m
-link path=usr/share/man/man1m/rwhod.1m target=in.rwhod.1m
-link path=usr/share/man/man1m/sprayd.1m target=rpc.sprayd.1m
-link path=usr/share/man/man1m/talkd.1m target=in.talkd.1m
-dir path=usr/share/man/man4
-file path=usr/share/man/man4/hosts.equiv.4
-link path=usr/share/man/man4/rhosts.4 target=hosts.equiv.4
+dir path=usr/share/man/man5
+file path=usr/share/man/man5/hosts.equiv.5
+link path=usr/share/man/man5/rhosts.5 target=hosts.equiv.5
+dir path=usr/share/man/man8
+link path=usr/share/man/man8/comsat.8 target=in.comsat.8
+link path=usr/share/man/man8/fingerd.8 target=in.fingerd.8
+file path=usr/share/man/man8/in.comsat.8
+file path=usr/share/man/man8/in.fingerd.8
+file path=usr/share/man/man8/in.rexecd.8
+file path=usr/share/man/man8/in.rlogind.8
+file path=usr/share/man/man8/in.rshd.8
+file path=usr/share/man/man8/in.rwhod.8
+file path=usr/share/man/man8/in.talkd.8
+link path=usr/share/man/man8/rexecd.8 target=in.rexecd.8
+link path=usr/share/man/man8/rlogind.8 target=in.rlogind.8
+file path=usr/share/man/man8/rpc.rstatd.8
+file path=usr/share/man/man8/rpc.rusersd.8
+file path=usr/share/man/man8/rpc.rwalld.8
+file path=usr/share/man/man8/rpc.sprayd.8
+link path=usr/share/man/man8/rshd.8 target=in.rshd.8
+link path=usr/share/man/man8/rstatd.8 target=rpc.rstatd.8
+link path=usr/share/man/man8/rusersd.8 target=rpc.rusersd.8
+link path=usr/share/man/man8/rwalld.8 target=rpc.rwalld.8
+link path=usr/share/man/man8/rwhod.8 target=in.rwhod.8
+link path=usr/share/man/man8/sprayd.8 target=rpc.sprayd.8
+link path=usr/share/man/man8/talkd.8 target=in.talkd.8
legacy pkg=SUNWrcmdr desc="Remote Network Server Commands (Root)" \
name="Remote Network Server Commands (Root)"
legacy pkg=SUNWrcmds \
diff --git a/usr/src/pkg/manifests/service-network-nis.p5m b/usr/src/pkg/manifests/service-network-nis.p5m
index 3f79fee832..dab50e8f88 100644
--- a/usr/src/pkg/manifests/service-network-nis.p5m
+++ b/usr/src/pkg/manifests/service-network-nis.p5m
@@ -66,23 +66,23 @@ file path=usr/lib/netsvc/yp/ypxfrd mode=0555
dir path=usr/sbin
file path=usr/sbin/mknetid mode=0555
file path=usr/sbin/revnetgroup mode=0555
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/inityp2l.1m
-file path=usr/share/man/man1m/rpc.yppasswdd.1m
-file path=usr/share/man/man1m/rpc.ypupdated.1m
-file path=usr/share/man/man1m/ypmake.1m
-file path=usr/share/man/man1m/ypmap2src.1m
-link path=usr/share/man/man1m/yppasswdd.1m target=rpc.yppasswdd.1m
-file path=usr/share/man/man1m/yppush.1m
-file path=usr/share/man/man1m/ypserv.1m
-link path=usr/share/man/man1m/ypupdated.1m target=rpc.ypupdated.1m
-link path=usr/share/man/man1m/ypxfrd.1m target=ypserv.1m
-file path=usr/share/man/man4/NISLDAPmapping.4
-file path=usr/share/man/man4/securenets.4
-file path=usr/share/man/man4/updaters.4
-file path=usr/share/man/man4/ypfiles.4
-file path=usr/share/man/man4/yppasswdd.4
-file path=usr/share/man/man4/ypserv.4
+file path=usr/share/man/man5/NISLDAPmapping.5
+file path=usr/share/man/man5/securenets.5
+file path=usr/share/man/man5/updaters.5
+file path=usr/share/man/man5/ypfiles.5
+file path=usr/share/man/man5/yppasswdd.5
+file path=usr/share/man/man5/ypserv.5
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/inityp2l.8
+file path=usr/share/man/man8/rpc.yppasswdd.8
+file path=usr/share/man/man8/rpc.ypupdated.8
+file path=usr/share/man/man8/ypmake.8
+file path=usr/share/man/man8/ypmap2src.8
+link path=usr/share/man/man8/yppasswdd.8 target=rpc.yppasswdd.8
+file path=usr/share/man/man8/yppush.8
+file path=usr/share/man/man8/ypserv.8
+link path=usr/share/man/man8/ypupdated.8 target=rpc.ypupdated.8
+link path=usr/share/man/man8/ypxfrd.8 target=ypserv.8
dir path=var group=sys
dir path=var/yp
file path=var/yp/Makefile mode=0555 original_name=SUNWyp:var/yp/Makefile \
diff --git a/usr/src/pkg/manifests/service-network-slp.p5m b/usr/src/pkg/manifests/service-network-slp.p5m
index 4d6aefacaf..28250b2b31 100644
--- a/usr/src/pkg/manifests/service-network-slp.p5m
+++ b/usr/src/pkg/manifests/service-network-slp.p5m
@@ -58,8 +58,6 @@ dir path=usr/share/lib/slp
file path=usr/share/lib/slp/slp.jar group=sys
file path=usr/share/lib/slp/slpd.jar group=sys mode=0600
dir path=usr/share/man
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/slpd.1m
dir path=usr/share/man/man3lib
file path=usr/share/man/man3lib/libslp.3lib
dir path=usr/share/man/man3slp
@@ -81,11 +79,13 @@ file path=usr/share/man/man3slp/SLPSetProperty.3slp
file path=usr/share/man/man3slp/SLPUnescape.3slp
file path=usr/share/man/man3slp/slp_api.3slp
file path=usr/share/man/man3slp/slp_strerror.3slp
-dir path=usr/share/man/man4
-file path=usr/share/man/man4/slp.conf.4
-file path=usr/share/man/man4/slpd.reg.4
-dir path=usr/share/man/man7p
-file path=usr/share/man/man7p/slp.7p
+dir path=usr/share/man/man4p
+file path=usr/share/man/man4p/slp.4p
+dir path=usr/share/man/man5
+file path=usr/share/man/man5/slp.conf.5
+file path=usr/share/man/man5/slpd.reg.5
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/slpd.8
legacy pkg=SUNWslpr \
desc="Root filesystem portion of the Service Location Protocol (SLP) framework. Includes the SLP configuration file and start scripts for the SLP daemon." \
name="SLP, (Root)"
diff --git a/usr/src/pkg/manifests/service-network-smtp-sendmail.p5m b/usr/src/pkg/manifests/service-network-smtp-sendmail.p5m
index 1e5f0bc521..e19cedb1a5 100644
--- a/usr/src/pkg/manifests/service-network-smtp-sendmail.p5m
+++ b/usr/src/pkg/manifests/service-network-smtp-sendmail.p5m
@@ -208,23 +208,23 @@ file path=usr/share/man/man1/mconnect.1
file path=usr/share/man/man1/praliases.1
file path=usr/share/man/man1/sendmail-mailq.1
file path=usr/share/man/man1/vacation.1
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/check-hostname.1m
-file path=usr/share/man/man1m/check-permissions.1m
-file path=usr/share/man/man1m/editmap.1m
-file path=usr/share/man/man1m/etrn.1m
-file path=usr/share/man/man1m/makemap.1m
-file path=usr/share/man/man1m/newaliases.1m
-file path=usr/share/man/man1m/sendmail.1m
-file path=usr/share/man/man1m/smrsh.1m
-dir path=usr/share/man/man4
-link path=usr/share/man/man4/addresses.4 target=aliases.4
-file path=usr/share/man/man4/alias.4
-file path=usr/share/man/man4/aliases.4
-link path=usr/share/man/man4/forward.4 target=aliases.4
-file path=usr/share/man/man4/sendmail.4
-link path=usr/share/man/man4/sendmail.cf.4 target=sendmail.4
-link path=usr/share/man/man4/submit.cf.4 target=sendmail.4
+dir path=usr/share/man/man5
+link path=usr/share/man/man5/addresses.5 target=aliases.5
+file path=usr/share/man/man5/alias.5
+file path=usr/share/man/man5/aliases.5
+link path=usr/share/man/man5/forward.5 target=aliases.5
+file path=usr/share/man/man5/sendmail.5
+link path=usr/share/man/man5/sendmail.cf.5 target=sendmail.5
+link path=usr/share/man/man5/submit.cf.5 target=sendmail.5
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/check-hostname.8
+file path=usr/share/man/man8/check-permissions.8
+file path=usr/share/man/man8/editmap.8
+file path=usr/share/man/man8/etrn.8
+file path=usr/share/man/man8/makemap.8
+file path=usr/share/man/man8/newaliases.8
+file path=usr/share/man/man8/sendmail.8
+file path=usr/share/man/man8/smrsh.8
dir path=var group=sys
dir path=var/adm group=sys mode=0775
dir path=var/adm/sm.bin group=sys
diff --git a/usr/src/pkg/manifests/service-network-telnet.p5m b/usr/src/pkg/manifests/service-network-telnet.p5m
index 631f23a68a..16a6aebf4d 100644
--- a/usr/src/pkg/manifests/service-network-telnet.p5m
+++ b/usr/src/pkg/manifests/service-network-telnet.p5m
@@ -41,9 +41,9 @@ file path=lib/svc/manifest/network/telnet.xml group=sys mode=0444
dir path=usr group=sys
dir path=usr/sbin
file path=usr/sbin/in.telnetd mode=0555
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/in.telnetd.1m
-link path=usr/share/man/man1m/telnetd.1m target=in.telnetd.1m
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/in.telnetd.8
+link path=usr/share/man/man8/telnetd.8 target=in.telnetd.8
legacy pkg=SUNWtnetd desc="Telnet Server Daemon (Usr)" \
name="Telnet Server Daemon (Usr)"
legacy pkg=SUNWtnetr desc="Telnet Server Daemon (Root)" \
diff --git a/usr/src/pkg/manifests/service-network-tftp.p5m b/usr/src/pkg/manifests/service-network-tftp.p5m
index 261c278d5b..70d0c4a880 100644
--- a/usr/src/pkg/manifests/service-network-tftp.p5m
+++ b/usr/src/pkg/manifests/service-network-tftp.p5m
@@ -42,9 +42,9 @@ dir path=usr/sbin
file path=usr/sbin/in.tftpd mode=0555
dir path=usr/share/man/man1
file path=usr/share/man/man1/tftp.1
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/in.tftpd.1m
-link path=usr/share/man/man1m/tftpd.1m target=in.tftpd.1m
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/in.tftpd.8
+link path=usr/share/man/man8/tftpd.8 target=in.tftpd.8
legacy pkg=SUNWtftp desc="Trivial File Transfer Server" \
name="Trivial File Transfer Server"
legacy pkg=SUNWtftpr desc="Trivial File Transfer Server (Root)" \
diff --git a/usr/src/pkg/manifests/service-network-uucp.p5m b/usr/src/pkg/manifests/service-network-uucp.p5m
index b65e1830d9..ab1a68be6e 100644
--- a/usr/src/pkg/manifests/service-network-uucp.p5m
+++ b/usr/src/pkg/manifests/service-network-uucp.p5m
@@ -107,16 +107,16 @@ link path=usr/share/man/man1c/uupick.1c target=uuto.1c
file path=usr/share/man/man1c/uustat.1c
file path=usr/share/man/man1c/uuto.1c
file path=usr/share/man/man1c/uux.1c
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/Uutry.1m
-file path=usr/share/man/man1m/in.uucpd.1m
-file path=usr/share/man/man1m/uucheck.1m
-file path=usr/share/man/man1m/uucico.1m
-file path=usr/share/man/man1m/uucleanup.1m
-link path=usr/share/man/man1m/uucpd.1m target=in.uucpd.1m
-file path=usr/share/man/man1m/uusched.1m
-link path=usr/share/man/man1m/uutry.1m target=Uutry.1m
-file path=usr/share/man/man1m/uuxqt.1m
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/Uutry.8
+file path=usr/share/man/man8/in.uucpd.8
+file path=usr/share/man/man8/uucheck.8
+file path=usr/share/man/man8/uucico.8
+file path=usr/share/man/man8/uucleanup.8
+link path=usr/share/man/man8/uucpd.8 target=in.uucpd.8
+file path=usr/share/man/man8/uusched.8
+link path=usr/share/man/man8/uutry.8 target=Uutry.8
+file path=usr/share/man/man8/uuxqt.8
dir path=var group=sys
dir path=var/spool
dir path=var/spool/uucp owner=uucp group=uucp
diff --git a/usr/src/pkg/manifests/service-network-wpa.p5m b/usr/src/pkg/manifests/service-network-wpa.p5m
index d82ebe060a..644f18c7e6 100644
--- a/usr/src/pkg/manifests/service-network-wpa.p5m
+++ b/usr/src/pkg/manifests/service-network-wpa.p5m
@@ -38,8 +38,8 @@ dir path=usr group=sys
dir path=usr/lib
dir path=usr/lib/inet
file path=usr/lib/inet/wpad mode=0555
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/wpad.1m
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/wpad.8
legacy pkg=SUNWwpar \
desc="The service implements the IEEE802.11i (WPA/WPA2) specification." \
name="Wireless WPA Supplicant, (Root)"
diff --git a/usr/src/pkg/manifests/service-picl.p5m b/usr/src/pkg/manifests/service-picl.p5m
index a51f349062..0463084783 100644
--- a/usr/src/pkg/manifests/service-picl.p5m
+++ b/usr/src/pkg/manifests/service-picl.p5m
@@ -781,9 +781,6 @@ $(sparc_ONLY)file path=usr/platform/sun4v/lib/picl/plugins/libsnmpplugin.so.1 \
dir path=usr/sbin
file path=usr/sbin/prtpicl mode=0755
$(sparc_ONLY)dir path=usr/share/man
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/picld.1m
-file path=usr/share/man/man1m/prtpicl.1m
dir path=usr/share/man/man3lib
file path=usr/share/man/man3lib/libpicl.3lib
file path=usr/share/man/man3lib/libpicltree.3lib
@@ -858,6 +855,9 @@ file path=usr/share/man/man3picltree/ptree_update_propval.3picltree
link path=usr/share/man/man3picltree/ptree_update_propval_by_name.3picltree \
target=ptree_update_propval.3picltree
file path=usr/share/man/man3picltree/ptree_walk_tree_by_class.3picltree
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/picld.8
+file path=usr/share/man/man8/prtpicl.8
legacy pkg=SUNWpiclr desc="PICL Framework init scripts" \
name="PICL Framework (Root)"
legacy pkg=SUNWpiclu \
diff --git a/usr/src/pkg/manifests/service-resource-cap.p5m b/usr/src/pkg/manifests/service-resource-cap.p5m
index fa249da074..4af49b7b79 100644
--- a/usr/src/pkg/manifests/service-resource-cap.p5m
+++ b/usr/src/pkg/manifests/service-resource-cap.p5m
@@ -45,9 +45,9 @@ dir path=usr/sbin
file path=usr/sbin/rcapadm mode=0555
dir path=usr/share/man/man1
file path=usr/share/man/man1/rcapstat.1
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/rcapadm.1m
-file path=usr/share/man/man1m/rcapd.1m
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/rcapadm.8
+file path=usr/share/man/man8/rcapd.8
legacy pkg=SUNWrcapr desc="Solaris Resource Capping Daemon (Root)" \
name="Solaris Resource Capping Daemon (Root)"
legacy pkg=SUNWrcapu desc="Solaris Resource Capping Daemon (Usr)" \
diff --git a/usr/src/pkg/manifests/service-resource-pools-poold.p5m b/usr/src/pkg/manifests/service-resource-pools-poold.p5m
index 82d4704704..a95a0835a6 100644
--- a/usr/src/pkg/manifests/service-resource-pools-poold.p5m
+++ b/usr/src/pkg/manifests/service-resource-pools-poold.p5m
@@ -50,8 +50,8 @@ link path=usr/lib/pool/libjsyslog.so target=./libjsyslog.so.1
file path=usr/lib/pool/libjsyslog.so.1
file path=usr/lib/pool/poold mode=0555
file path=usr/lib/pool/poold.properties mode=0444
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/poold.1m
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/poold.8
legacy pkg=SUNWpoold desc="core software for dynamic resource pools" \
name="Dynamic Resource Pools"
license cr_Sun license=cr_Sun
diff --git a/usr/src/pkg/manifests/service-resource-pools.p5m b/usr/src/pkg/manifests/service-resource-pools.p5m
index 6275964012..b7d28efb39 100644
--- a/usr/src/pkg/manifests/service-resource-pools.p5m
+++ b/usr/src/pkg/manifests/service-resource-pools.p5m
@@ -67,11 +67,6 @@ dir path=usr/share/lib/xml group=sys
dir path=usr/share/lib/xml/dtd group=sys
file path=usr/share/lib/xml/dtd/rm_pool.dtd.1
dir path=usr/share/man
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/pooladm.1m
-file path=usr/share/man/man1m/poolbind.1m
-file path=usr/share/man/man1m/poolcfg.1m
-file path=usr/share/man/man1m/poolstat.1m
dir path=usr/share/man/man3lib
file path=usr/share/man/man3lib/libpool.3lib
dir path=usr/share/man/man3pool
@@ -197,6 +192,11 @@ link path=usr/share/man/man3pool/pool_walk_properties.3pool \
target=pool_get_property.3pool
link path=usr/share/man/man3pool/pool_walk_resources.3pool \
target=pool_walk_components.3pool
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/pooladm.8
+file path=usr/share/man/man8/poolbind.8
+file path=usr/share/man/man8/poolcfg.8
+file path=usr/share/man/man8/poolstat.8
dir path=var group=sys variant.opensolaris.zone=global
dir path=var/adm/pool group=sys variant.opensolaris.zone=global
dir path=var/log/pool group=sys variant.opensolaris.zone=global
diff --git a/usr/src/pkg/manifests/service-security-gss.p5m b/usr/src/pkg/manifests/service-security-gss.p5m
index 8b895a7db2..cd5c25da5a 100644
--- a/usr/src/pkg/manifests/service-security-gss.p5m
+++ b/usr/src/pkg/manifests/service-security-gss.p5m
@@ -44,12 +44,12 @@ dir path=lib/svc/manifest/network group=sys
dir path=lib/svc/manifest/network/rpc group=sys
file path=lib/svc/manifest/network/rpc/gss.xml group=sys mode=0444
dir path=usr/share/man
-dir path=usr/share/man/man4
-file path=usr/share/man/man4/gsscred.conf.4
-file path=usr/share/man/man4/mech.4
-link path=usr/share/man/man4/qop.4 target=mech.4
dir path=usr/share/man/man5
-file path=usr/share/man/man5/gss_auth_rules.5
+file path=usr/share/man/man5/gsscred.conf.5
+file path=usr/share/man/man5/mech.5
+link path=usr/share/man/man5/qop.5 target=mech.5
+dir path=usr/share/man/man7
+file path=usr/share/man/man7/gss_auth_rules.7
legacy pkg=SUNWgssc \
desc="Generic Security Service Application Program Interface, Version 2 - config" \
name="GSSAPI CONFIG V2"
diff --git a/usr/src/pkg/manifests/service-security-kerberos-5.p5m b/usr/src/pkg/manifests/service-security-kerberos-5.p5m
index 8d03edefac..0e8f4bd205 100644
--- a/usr/src/pkg/manifests/service-security-kerberos-5.p5m
+++ b/usr/src/pkg/manifests/service-security-kerberos-5.p5m
@@ -94,13 +94,13 @@ file path=usr/share/man/man1/klist.1
file path=usr/share/man/man1/kpasswd.1
file path=usr/share/man/man1/krb5-config.1
file path=usr/share/man/man1/ktutil.1
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/ktkt_warnd.1m
dir path=usr/share/man/man3lib
file path=usr/share/man/man3lib/libkrb5.3lib
-dir path=usr/share/man/man5
-file path=usr/share/man/man5/pam_krb5.5
-file path=usr/share/man/man5/pam_krb5_migrate.5
+dir path=usr/share/man/man7
+file path=usr/share/man/man7/pam_krb5.7
+file path=usr/share/man/man7/pam_krb5_migrate.7
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/ktkt_warnd.8
dir path=var group=sys
dir path=var/krb5 group=sys
dir path=var/krb5/rcache group=sys mode=1777
diff --git a/usr/src/pkg/manifests/service-storage-isns.p5m b/usr/src/pkg/manifests/service-storage-isns.p5m
index 0c26b77aec..ad746f7e3f 100644
--- a/usr/src/pkg/manifests/service-storage-isns.p5m
+++ b/usr/src/pkg/manifests/service-storage-isns.p5m
@@ -38,9 +38,9 @@ dir path=usr group=sys
dir path=usr/sbin
file path=usr/sbin/isns mode=0555
file path=usr/sbin/isnsadm mode=0555
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/isns.1m
-file path=usr/share/man/man1m/isnsadm.1m
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/isns.8
+file path=usr/share/man/man8/isnsadm.8
legacy pkg=SUNWisns desc="Solaris internet Storage Name Service(iSNS) Server" \
name="Solaris iSNS Server"
legacy pkg=SUNWisnsadm desc="Solaris iSNS Server Administration Utility" \
diff --git a/usr/src/pkg/manifests/service-storage-media-volume-manager.p5m b/usr/src/pkg/manifests/service-storage-media-volume-manager.p5m
index 2295c03b63..2b2befea71 100644
--- a/usr/src/pkg/manifests/service-storage-media-volume-manager.p5m
+++ b/usr/src/pkg/manifests/service-storage-media-volume-manager.p5m
@@ -56,9 +56,9 @@ file path=usr/share/man/man1/rmmount.1
link path=usr/share/man/man1/rmumount.1 target=rmmount.1
file path=usr/share/man/man1/volcheck.1
file path=usr/share/man/man1/volrmmount.1
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/rmmount.1m
-file path=usr/share/man/man1m/rmvolmgr.1m
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/rmmount.8
+file path=usr/share/man/man8/rmvolmgr.8
legacy pkg=SUNWrmvolmgr desc="Non-graphical removable volume manager" \
name="Removable volume manager"
legacy pkg=SUNWrmvolmgrr desc="Non-graphical removable volume manager (Root)" \
diff --git a/usr/src/pkg/manifests/service-storage-ndmp.p5m b/usr/src/pkg/manifests/service-storage-ndmp.p5m
index 35fa0aac79..444d246e2f 100644
--- a/usr/src/pkg/manifests/service-storage-ndmp.p5m
+++ b/usr/src/pkg/manifests/service-storage-ndmp.p5m
@@ -58,12 +58,12 @@ dir path=usr/sbin
file path=usr/sbin/ndmpadm mode=0555
file path=usr/sbin/ndmpstat mode=0555
dir path=usr/share/man
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/ndmpadm.1m
-file path=usr/share/man/man1m/ndmpd.1m
-file path=usr/share/man/man1m/ndmpstat.1m
-dir path=usr/share/man/man4
-file path=usr/share/man/man4/ndmp.4
+dir path=usr/share/man/man5
+file path=usr/share/man/man5/ndmp.5
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/ndmpadm.8
+file path=usr/share/man/man8/ndmpd.8
+file path=usr/share/man/man8/ndmpstat.8
legacy pkg=SUNWndmpr \
desc="Network Data Management Protocol Service (root components)" \
name="Network Data Management Protocol Service (Root)"
diff --git a/usr/src/pkg/manifests/service-storage-removable-media.p5m b/usr/src/pkg/manifests/service-storage-removable-media.p5m
index 228e77bd06..dd4099fb7e 100644
--- a/usr/src/pkg/manifests/service-storage-removable-media.p5m
+++ b/usr/src/pkg/manifests/service-storage-removable-media.p5m
@@ -53,8 +53,8 @@ file path=usr/lib/smedia/rpc.smserverd mode=0555
file path=usr/lib/smedia/sm_blkdev.so.1 mode=0555
file path=usr/lib/smedia/sm_fd.so.1 mode=0555
file path=usr/lib/smedia/sm_scsi.so.1 mode=0555
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/rpc.smserverd.1m
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/rpc.smserverd.8
legacy pkg=SUNWsmedia desc="Storage media management library" \
name="Storage media management library"
legacy pkg=SUNWsmediar desc="Storage media management library (Root)" \
diff --git a/usr/src/pkg/manifests/service-storage-virus-scan.p5m b/usr/src/pkg/manifests/service-storage-virus-scan.p5m
index 1bee3e7914..2953e4198b 100644
--- a/usr/src/pkg/manifests/service-storage-virus-scan.p5m
+++ b/usr/src/pkg/manifests/service-storage-virus-scan.p5m
@@ -50,9 +50,9 @@ file path=usr/lib/vscan/libvscan.so.1
file path=usr/lib/vscan/vscand mode=0555
dir path=usr/sbin
file path=usr/sbin/vscanadm mode=0555
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/vscanadm.1m
-file path=usr/share/man/man1m/vscand.1m
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/vscanadm.8
+file path=usr/share/man/man8/vscand.8
driver name=vscan perms="* 0640 root sys"
legacy pkg=SUNWvscankr desc="Virus Scan Service Kernel Root Components" \
name="Virus Scan Service Kernel (Root)"
diff --git a/usr/src/pkg/manifests/storage-mpathadm.p5m b/usr/src/pkg/manifests/storage-mpathadm.p5m
index 26a63efea2..5c45e7013a 100644
--- a/usr/src/pkg/manifests/storage-mpathadm.p5m
+++ b/usr/src/pkg/manifests/storage-mpathadm.p5m
@@ -39,8 +39,8 @@ set name=variant.arch value=$(ARCH)
dir path=usr group=sys
dir path=usr/sbin
file path=usr/sbin/mpathadm mode=0555
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/mpathadm.1m
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/mpathadm.8
legacy pkg=SUNWmpathadm \
desc="Path Administration Utility for a Solaris Multipathing device" \
name="Solaris Multipathing CLI"
diff --git a/usr/src/pkg/manifests/storage-stmf.p5m b/usr/src/pkg/manifests/storage-stmf.p5m
index 89afa3f8c4..31530ee6f8 100644
--- a/usr/src/pkg/manifests/storage-stmf.p5m
+++ b/usr/src/pkg/manifests/storage-stmf.p5m
@@ -94,9 +94,6 @@ dir path=usr/sbin
file path=usr/sbin/sbdadm mode=0555
file path=usr/sbin/stmfadm mode=0555
dir path=usr/share/man
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/sbdadm.1m
-file path=usr/share/man/man1m/stmfadm.1m
dir path=usr/share/man/man3lib
file path=usr/share/man/man3lib/libstmf.3lib
dir path=usr/share/man/man3stmf
@@ -144,6 +141,9 @@ file path=usr/share/man/man3stmf/stmfSetLuProp.3stmf
file path=usr/share/man/man3stmf/stmfSetPersistMethod.3stmf
file path=usr/share/man/man3stmf/stmfSetProviderData.3stmf
file path=usr/share/man/man3stmf/stmfSetProviderDataProt.3stmf
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/sbdadm.8
+file path=usr/share/man/man8/stmfadm.8
driver name=fct perms="* 0666 root sys"
driver name=pppt perms="* 0666 root sys"
driver name=qlt perms="* 0666 root sys"
diff --git a/usr/src/pkg/manifests/system-accounting-legacy.p5m b/usr/src/pkg/manifests/system-accounting-legacy.p5m
index 163d525287..fffab7fa19 100644
--- a/usr/src/pkg/manifests/system-accounting-legacy.p5m
+++ b/usr/src/pkg/manifests/system-accounting-legacy.p5m
@@ -96,44 +96,44 @@ dir path=usr/share/man/man1
file path=usr/share/man/man1/acctcom.1
file path=usr/share/man/man1/sar.1
file path=usr/share/man/man1/timex.1
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/acct.1m
-file path=usr/share/man/man1m/acctcms.1m
-file path=usr/share/man/man1m/acctcon.1m
-link path=usr/share/man/man1m/acctcon1.1m target=acctcon.1m
-link path=usr/share/man/man1m/acctcon2.1m target=acctcon.1m
-link path=usr/share/man/man1m/acctdisk.1m target=acct.1m
-link path=usr/share/man/man1m/acctdusg.1m target=acct.1m
-file path=usr/share/man/man1m/acctmerg.1m
-link path=usr/share/man/man1m/accton.1m target=acct.1m
-file path=usr/share/man/man1m/acctprc.1m
-link path=usr/share/man/man1m/acctprc1.1m target=acctprc.1m
-link path=usr/share/man/man1m/acctprc2.1m target=acctprc.1m
-file path=usr/share/man/man1m/acctsh.1m
-link path=usr/share/man/man1m/acctwtmp.1m target=acct.1m
-link path=usr/share/man/man1m/chargefee.1m target=acctsh.1m
-link path=usr/share/man/man1m/ckpacct.1m target=acctsh.1m
-link path=usr/share/man/man1m/closewtmp.1m target=acct.1m
-link path=usr/share/man/man1m/dodisk.1m target=acctsh.1m
-file path=usr/share/man/man1m/fwtmp.1m
-link path=usr/share/man/man1m/lastlogin.1m target=acctsh.1m
-link path=usr/share/man/man1m/monacct.1m target=acctsh.1m
-link path=usr/share/man/man1m/nulladm.1m target=acctsh.1m
-link path=usr/share/man/man1m/prctmp.1m target=acctsh.1m
-link path=usr/share/man/man1m/prdaily.1m target=acctsh.1m
-link path=usr/share/man/man1m/prtacct.1m target=acctsh.1m
-file path=usr/share/man/man1m/runacct.1m
-link path=usr/share/man/man1m/sa1.1m target=sar.1m
-link path=usr/share/man/man1m/sa2.1m target=sar.1m
-link path=usr/share/man/man1m/sadc.1m target=sar.1m
-file path=usr/share/man/man1m/sar.1m
-link path=usr/share/man/man1m/shutacct.1m target=acctsh.1m
-link path=usr/share/man/man1m/startup.1m target=acctsh.1m
-link path=usr/share/man/man1m/turnacct.1m target=acctsh.1m
-link path=usr/share/man/man1m/utmp2wtmp.1m target=acct.1m
-link path=usr/share/man/man1m/wtmpfix.1m target=fwtmp.1m
-dir path=usr/share/man/man4
-file path=usr/share/man/man4/holidays.4
+dir path=usr/share/man/man5
+file path=usr/share/man/man5/holidays.5
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/acct.8
+file path=usr/share/man/man8/acctcms.8
+file path=usr/share/man/man8/acctcon.8
+link path=usr/share/man/man8/acctcon1.8 target=acctcon.8
+link path=usr/share/man/man8/acctcon2.8 target=acctcon.8
+link path=usr/share/man/man8/acctdisk.8 target=acct.8
+link path=usr/share/man/man8/acctdusg.8 target=acct.8
+file path=usr/share/man/man8/acctmerg.8
+link path=usr/share/man/man8/accton.8 target=acct.8
+file path=usr/share/man/man8/acctprc.8
+link path=usr/share/man/man8/acctprc1.8 target=acctprc.8
+link path=usr/share/man/man8/acctprc2.8 target=acctprc.8
+file path=usr/share/man/man8/acctsh.8
+link path=usr/share/man/man8/acctwtmp.8 target=acct.8
+link path=usr/share/man/man8/chargefee.8 target=acctsh.8
+link path=usr/share/man/man8/ckpacct.8 target=acctsh.8
+link path=usr/share/man/man8/closewtmp.8 target=acct.8
+link path=usr/share/man/man8/dodisk.8 target=acctsh.8
+file path=usr/share/man/man8/fwtmp.8
+link path=usr/share/man/man8/lastlogin.8 target=acctsh.8
+link path=usr/share/man/man8/monacct.8 target=acctsh.8
+link path=usr/share/man/man8/nulladm.8 target=acctsh.8
+link path=usr/share/man/man8/prctmp.8 target=acctsh.8
+link path=usr/share/man/man8/prdaily.8 target=acctsh.8
+link path=usr/share/man/man8/prtacct.8 target=acctsh.8
+file path=usr/share/man/man8/runacct.8
+link path=usr/share/man/man8/sa1.8 target=sar.8
+link path=usr/share/man/man8/sa2.8 target=sar.8
+link path=usr/share/man/man8/sadc.8 target=sar.8
+file path=usr/share/man/man8/sar.8
+link path=usr/share/man/man8/shutacct.8 target=acctsh.8
+link path=usr/share/man/man8/startup.8 target=acctsh.8
+link path=usr/share/man/man8/turnacct.8 target=acctsh.8
+link path=usr/share/man/man8/utmp2wtmp.8 target=acct.8
+link path=usr/share/man/man8/wtmpfix.8 target=fwtmp.8
dir path=var group=sys
dir path=var/adm group=sys mode=0775
dir path=var/adm/acct owner=adm group=adm mode=0775
diff --git a/usr/src/pkg/manifests/system-bhyve.p5m b/usr/src/pkg/manifests/system-bhyve.p5m
index 469f846704..5753e38b69 100644
--- a/usr/src/pkg/manifests/system-bhyve.p5m
+++ b/usr/src/pkg/manifests/system-bhyve.p5m
@@ -47,12 +47,12 @@ file path=usr/sbin/bhyvectl mode=0555
file path=usr/sbin/pptadm mode=0555
dir path=usr/share
dir path=usr/share/man
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/bhyve.1m
-file path=usr/share/man/man1m/bhyvectl.1m
-file path=usr/share/man/man1m/pptadm.1m
-dir path=usr/share/man/man4
-file path=usr/share/man/man4/bhyve_config.4
+dir path=usr/share/man/man5
+file path=usr/share/man/man5/bhyve_config.5
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/bhyve.8
+file path=usr/share/man/man8/bhyvectl.8
+file path=usr/share/man/man8/pptadm.8
driver name=ppt
driver name=viona
driver name=vmm
diff --git a/usr/src/pkg/manifests/system-boot-grub.p5m b/usr/src/pkg/manifests/system-boot-grub.p5m
index 22201868ee..e785bf632b 100644
--- a/usr/src/pkg/manifests/system-boot-grub.p5m
+++ b/usr/src/pkg/manifests/system-boot-grub.p5m
@@ -70,8 +70,8 @@ dir path=lib
link path=lib/libgrubmgmt.so target=libgrubmgmt.so.1
file path=lib/libgrubmgmt.so.1
dir path=usr/share/man
-dir path=usr/share/man/man5
-file path=usr/share/man/man5/grub.5
+dir path=usr/share/man/man7
+file path=usr/share/man/man7/grub.7
$(i386_ONLY)legacy pkg=SUNWgrub desc="Multiboot Boot Loader" \
name="GNU GRUB - GNU GRand Unified Bootloader"
legacy pkg=SUNWgrubr desc="GRUB libraries" name="GRUB (Root)"
diff --git a/usr/src/pkg/manifests/system-boot-loader.p5m b/usr/src/pkg/manifests/system-boot-loader.p5m
index 5f3c85b199..72bb3f6329 100644
--- a/usr/src/pkg/manifests/system-boot-loader.p5m
+++ b/usr/src/pkg/manifests/system-boot-loader.p5m
@@ -80,22 +80,22 @@ $(i386_ONLY)file path=boot/pmbr group=sys mode=0444
$(i386_ONLY)file path=boot/pxeboot group=sys mode=0444
$(i386_ONLY)dir path=usr/share/man
$(i386_ONLY)dir path=usr/share/man/man3
-$(i386_ONLY)dir path=usr/share/man/man4
-$(i386_ONLY)file path=usr/share/man/man4/loader.conf.4
$(i386_ONLY)dir path=usr/share/man/man5
-$(i386_ONLY)file path=usr/share/man/man5/beastie.4th.5
-$(i386_ONLY)file path=usr/share/man/man5/brand.4th.5
-$(i386_ONLY)file path=usr/share/man/man5/check-password.4th.5
-$(i386_ONLY)file path=usr/share/man/man5/color.4th.5
-$(i386_ONLY)file path=usr/share/man/man5/delay.4th.5
-$(i386_ONLY)file path=usr/share/man/man5/gptzfsboot.5
-$(i386_ONLY)file path=usr/share/man/man5/isoboot.5
-$(i386_ONLY)file path=usr/share/man/man5/loader.4th.5
-$(i386_ONLY)file path=usr/share/man/man5/loader.5
-$(i386_ONLY)file path=usr/share/man/man5/menu.4th.5
-$(i386_ONLY)file path=usr/share/man/man5/menusets.4th.5
-$(i386_ONLY)file path=usr/share/man/man5/pxeboot.5
-$(i386_ONLY)file path=usr/share/man/man5/version.4th.5
+$(i386_ONLY)file path=usr/share/man/man5/loader.conf.5
+$(i386_ONLY)dir path=usr/share/man/man7
+$(i386_ONLY)file path=usr/share/man/man7/beastie.4th.7
+$(i386_ONLY)file path=usr/share/man/man7/brand.4th.7
+$(i386_ONLY)file path=usr/share/man/man7/check-password.4th.7
+$(i386_ONLY)file path=usr/share/man/man7/color.4th.7
+$(i386_ONLY)file path=usr/share/man/man7/delay.4th.7
+$(i386_ONLY)file path=usr/share/man/man7/gptzfsboot.7
+$(i386_ONLY)file path=usr/share/man/man7/isoboot.7
+$(i386_ONLY)file path=usr/share/man/man7/loader.4th.7
+$(i386_ONLY)file path=usr/share/man/man7/loader.7
+$(i386_ONLY)file path=usr/share/man/man7/menu.4th.7
+$(i386_ONLY)file path=usr/share/man/man7/menusets.4th.7
+$(i386_ONLY)file path=usr/share/man/man7/pxeboot.7
+$(i386_ONLY)file path=usr/share/man/man7/version.4th.7
license lic_CDDL license=lic_CDDL
$(i386_ONLY)license usr/src/boot/COPYRIGHT license=usr/src/boot/COPYRIGHT
$(i386_ONLY)license usr/src/boot/common/linenoise/LICENSE \
diff --git a/usr/src/pkg/manifests/system-boot-network.p5m b/usr/src/pkg/manifests/system-boot-network.p5m
index 492b84c971..7f757d4861 100644
--- a/usr/src/pkg/manifests/system-boot-network.p5m
+++ b/usr/src/pkg/manifests/system-boot-network.p5m
@@ -41,16 +41,16 @@ dir path=usr/sbin
file path=usr/sbin/in.rarpd mode=0555
file path=usr/sbin/rpc.bootparamd mode=0555
dir path=usr/share/man
-dir path=usr/share/man/man1m
-link path=usr/share/man/man1m/bootparamd.1m target=rpc.bootparamd.1m
-file path=usr/share/man/man1m/in.rarpd.1m
-link path=usr/share/man/man1m/rarpd.1m target=in.rarpd.1m
-file path=usr/share/man/man1m/rpc.bootparamd.1m
-dir path=usr/share/man/man4
-file path=usr/share/man/man4/bootparams.4
-dir path=usr/share/man/man7p
-link path=usr/share/man/man7p/RARP.7p target=rarp.7p
-file path=usr/share/man/man7p/rarp.7p
+dir path=usr/share/man/man4p
+link path=usr/share/man/man4p/RARP.4p target=rarp.4p
+file path=usr/share/man/man4p/rarp.4p
+dir path=usr/share/man/man5
+file path=usr/share/man/man5/bootparams.5
+dir path=usr/share/man/man8
+link path=usr/share/man/man8/bootparamd.8 target=rpc.bootparamd.8
+file path=usr/share/man/man8/in.rarpd.8
+link path=usr/share/man/man8/rarpd.8 target=in.rarpd.8
+file path=usr/share/man/man8/rpc.bootparamd.8
legacy pkg=SUNWbsr desc="Boot Server daemons (Root)" \
name="Boot Server daemons (Root)"
legacy pkg=SUNWbsu desc="Boot Server daemons (Usr)" \
diff --git a/usr/src/pkg/manifests/system-data-keyboard-keytables.p5m b/usr/src/pkg/manifests/system-data-keyboard-keytables.p5m
index 32bc023c96..3000d49d7e 100644
--- a/usr/src/pkg/manifests/system-data-keyboard-keytables.p5m
+++ b/usr/src/pkg/manifests/system-data-keyboard-keytables.p5m
@@ -680,8 +680,8 @@ $(sparc_ONLY)hardlink path=usr/share/lib/keytables/us_5 \
$(sparc_ONLY)hardlink path=usr/share/lib/keytables/us_hobo \
target=../../../../usr/share/lib/keytables/type_4/us_hobo
dir path=usr/share/man
-dir path=usr/share/man/man4
-file path=usr/share/man/man4/keytables.4
+dir path=usr/share/man/man5
+file path=usr/share/man/man5/keytables.5
legacy pkg=SUNWkey \
desc="Configuration tables that specify keyboard attributes such as localized meanings for individual keys" \
name="Keyboard configuration tables"
diff --git a/usr/src/pkg/manifests/system-domain-configuration-sparc-enterprise.p5m b/usr/src/pkg/manifests/system-domain-configuration-sparc-enterprise.p5m
index 7b997b3cd1..a2fba8533d 100644
--- a/usr/src/pkg/manifests/system-domain-configuration-sparc-enterprise.p5m
+++ b/usr/src/pkg/manifests/system-domain-configuration-sparc-enterprise.p5m
@@ -53,9 +53,9 @@ dir path=usr/platform/SUNW,SPARC-Enterprise group=sys
dir path=usr/platform/SUNW,SPARC-Enterprise/lib
dir path=usr/platform/SUNW,SPARC-Enterprise/lib/$(ARCH64)
file path=usr/platform/SUNW,SPARC-Enterprise/lib/$(ARCH64)/oplhpd mode=0755
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/dcs.1m
-file path=usr/share/man/man1m/oplhpd.1m
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/dcs.8
+file path=usr/share/man/man8/oplhpd.8
legacy pkg=SUNWdcsr desc="Domain Configuration Server, (Root)" \
name="Domain Configuration Server, (Root)"
legacy pkg=SUNWdcsu desc="Domain Configuration Server" \
diff --git a/usr/src/pkg/manifests/system-domain-service-processor-protocol-sparc-enterprise.p5m b/usr/src/pkg/manifests/system-domain-service-processor-protocol-sparc-enterprise.p5m
index 92317831cd..ce8afb8df8 100644
--- a/usr/src/pkg/manifests/system-domain-service-processor-protocol-sparc-enterprise.p5m
+++ b/usr/src/pkg/manifests/system-domain-service-processor-protocol-sparc-enterprise.p5m
@@ -72,12 +72,12 @@ dir path=usr/platform/sun4u group=sys
dir path=usr/platform/sun4u/lib
file path=usr/platform/sun4u/lib/sckmd group=sys mode=0755
dir path=usr/share/man
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/prtdscp.1m
-file path=usr/share/man/man1m/sckmd.1m
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/dm2s.7d
-file path=usr/share/man/man7d/oplkmdrv.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/dm2s.4d
+file path=usr/share/man/man4d/oplkmdrv.4d
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/prtdscp.8
+file path=usr/share/man/man8/sckmd.8
driver name=dm2s
driver name=oplkmdrv
legacy pkg=SUNWdscpr.u arch=$(ARCH).sun4u \
diff --git a/usr/src/pkg/manifests/system-embedded-fcode-interpreter.p5m b/usr/src/pkg/manifests/system-embedded-fcode-interpreter.p5m
index aac44008df..70b78bf70d 100644
--- a/usr/src/pkg/manifests/system-embedded-fcode-interpreter.p5m
+++ b/usr/src/pkg/manifests/system-embedded-fcode-interpreter.p5m
@@ -89,8 +89,8 @@ link path=usr/lib/efcode/$(ARCH64)/lfc_sun4v_pciex.so target=lfc_upa_pci.so
file path=usr/lib/efcode/$(ARCH64)/lfc_upa.so
file path=usr/lib/efcode/$(ARCH64)/lfc_upa_pci.so
file path=usr/lib/efcode/efcode.sh mode=0555
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/efdaemon.1m
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/efdaemon.8
driver name=fcode
legacy pkg=SUNWefc.u arch=$(ARCH).sun4u \
desc="Embedded FCode Interpreter Drivers" \
diff --git a/usr/src/pkg/manifests/system-extended-system-utilities.p5m b/usr/src/pkg/manifests/system-extended-system-utilities.p5m
index 5fa4728b9f..7aeaf41252 100644
--- a/usr/src/pkg/manifests/system-extended-system-utilities.p5m
+++ b/usr/src/pkg/manifests/system-extended-system-utilities.p5m
@@ -268,17 +268,17 @@ file path=usr/share/man/man1/unix2dos.1
link path=usr/share/man/man1/unpack.1 target=pack.1
file path=usr/share/man/man1/yes.1
link path=usr/share/man/man1/zcat.1 target=compress.1
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/adbgen.1m
-file path=usr/share/man/man1m/dmesg.1m
-file path=usr/share/man/man1m/fsck_pcfs.1m
-file path=usr/share/man/man1m/kstat.1m
-file path=usr/share/man/man1m/mkfifo.1m
-file path=usr/share/man/man1m/mkfs_pcfs.1m
-file path=usr/share/man/man1m/mount_pcfs.1m
-file path=usr/share/man/man1m/projadd.1m
-file path=usr/share/man/man1m/projdel.1m
-file path=usr/share/man/man1m/projmod.1m
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/adbgen.8
+file path=usr/share/man/man8/dmesg.8
+file path=usr/share/man/man8/fsck_pcfs.8
+file path=usr/share/man/man8/kstat.8
+file path=usr/share/man/man8/mkfifo.8
+file path=usr/share/man/man8/mkfs_pcfs.8
+file path=usr/share/man/man8/mount_pcfs.8
+file path=usr/share/man/man8/projadd.8
+file path=usr/share/man/man8/projdel.8
+file path=usr/share/man/man8/projmod.8
legacy pkg=SUNWesu \
desc="additional UNIX system utilities, including awk, bc, cal, compress, diff, dos2unix, last, rup, sort, spell, uniq, and uuencode" \
name="Extended System Utilities"
diff --git a/usr/src/pkg/manifests/system-file-system-autofs.p5m b/usr/src/pkg/manifests/system-file-system-autofs.p5m
index 63a635f32f..d169fe7ee4 100644
--- a/usr/src/pkg/manifests/system-file-system-autofs.p5m
+++ b/usr/src/pkg/manifests/system-file-system-autofs.p5m
@@ -61,11 +61,11 @@ file path=usr/lib/fs/autofs/unshare mode=0555
dir path=usr/sbin
link path=usr/sbin/automount target=../lib/fs/autofs/automount
dir path=usr/share/man
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/automount.1m
-file path=usr/share/man/man1m/automountd.1m
-dir path=usr/share/man/man4
-file path=usr/share/man/man4/autofs.4
+dir path=usr/share/man/man5
+file path=usr/share/man/man5/autofs.5
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/automount.8
+file path=usr/share/man/man8/automountd.8
legacy pkg=SUNWatfsr \
desc="configuration and start-up files for the AutoFS filesystem" \
name="AutoFS, (Root)"
diff --git a/usr/src/pkg/manifests/system-file-system-nfs.p5m b/usr/src/pkg/manifests/system-file-system-nfs.p5m
index 4da15bab09..1b2a811d76 100644
--- a/usr/src/pkg/manifests/system-file-system-nfs.p5m
+++ b/usr/src/pkg/manifests/system-file-system-nfs.p5m
@@ -87,16 +87,16 @@ dir path=usr/sbin
link path=usr/sbin/showmount target=../lib/fs/nfs/showmount
dir path=usr/share/man
dir path=usr/share/man/man1
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/mount_nfs.1m
-file path=usr/share/man/man1m/nfs4cbd.1m
-file path=usr/share/man/man1m/nfsmapid.1m
-file path=usr/share/man/man1m/nfsstat.1m
-file path=usr/share/man/man1m/showmount.1m
-file path=usr/share/man/man1m/statd.1m
-dir path=usr/share/man/man4
-file path=usr/share/man/man4/nfs.4
-file path=usr/share/man/man4/nfssec.conf.4
+dir path=usr/share/man/man5
+file path=usr/share/man/man5/nfs.5
+file path=usr/share/man/man5/nfssec.conf.5
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/mount_nfs.8
+file path=usr/share/man/man8/nfs4cbd.8
+file path=usr/share/man/man8/nfsmapid.8
+file path=usr/share/man/man8/nfsstat.8
+file path=usr/share/man/man8/showmount.8
+file path=usr/share/man/man8/statd.8
dir path=var group=sys
dir path=var/nfs
dir path=var/nfs/v4_oldstate owner=daemon group=daemon
diff --git a/usr/src/pkg/manifests/system-file-system-smb.p5m b/usr/src/pkg/manifests/system-file-system-smb.p5m
index f62246159f..fb3703ec4f 100644
--- a/usr/src/pkg/manifests/system-file-system-smb.p5m
+++ b/usr/src/pkg/manifests/system-file-system-smb.p5m
@@ -88,16 +88,16 @@ file path=usr/lib/smbfs/smbiod-svc mode=0555
dir path=usr/share/man
dir path=usr/share/man/man1
file path=usr/share/man/man1/smbutil.1
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/mount_smbfs.1m
-file path=usr/share/man/man1m/smbiod.1m
-link path=usr/share/man/man1m/umount_smbfs.1m target=mount_smbfs.1m
-dir path=usr/share/man/man4
-file path=usr/share/man/man4/nsmbrc.4
+dir path=usr/share/man/man4fs
+file path=usr/share/man/man4fs/smbfs.4fs
dir path=usr/share/man/man5
-file path=usr/share/man/man5/pam_smbfs_login.5
-dir path=usr/share/man/man7fs
-file path=usr/share/man/man7fs/smbfs.7fs
+file path=usr/share/man/man5/nsmbrc.5
+dir path=usr/share/man/man7
+file path=usr/share/man/man7/pam_smbfs_login.7
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/mount_smbfs.8
+file path=usr/share/man/man8/smbiod.8
+link path=usr/share/man/man8/umount_smbfs.8 target=mount_smbfs.8
driver name=nsmb perms="* 0666 root sys"
legacy pkg=SUNWsmbfskr desc="SMB/CIFS File System client support (Kernel)" \
name="SMB/CIFS File System client support (Kernel)"
diff --git a/usr/src/pkg/manifests/system-file-system-udfs.p5m b/usr/src/pkg/manifests/system-file-system-udfs.p5m
index 9cfcb5d12d..0d79cc010f 100644
--- a/usr/src/pkg/manifests/system-file-system-udfs.p5m
+++ b/usr/src/pkg/manifests/system-file-system-udfs.p5m
@@ -44,14 +44,14 @@ file path=usr/lib/fs/udfs/labelit mode=0555
file path=usr/lib/fs/udfs/mkfs mode=0555
file path=usr/lib/fs/udfs/mount mode=0555
dir path=usr/share/man
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/fsck_udfs.1m
-file path=usr/share/man/man1m/fsdb_udfs.1m
-file path=usr/share/man/man1m/labelit_udfs.1m
-file path=usr/share/man/man1m/mkfs_udfs.1m
-file path=usr/share/man/man1m/mount_udfs.1m
-dir path=usr/share/man/man7fs
-file path=usr/share/man/man7fs/udfs.7fs
+dir path=usr/share/man/man4fs
+file path=usr/share/man/man4fs/udfs.4fs
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/fsck_udfs.8
+file path=usr/share/man/man8/fsdb_udfs.8
+file path=usr/share/man/man8/labelit_udfs.8
+file path=usr/share/man/man8/mkfs_udfs.8
+file path=usr/share/man/man8/mount_udfs.8
legacy pkg=SUNWudf desc="Universal Disk Format 1.50 File System, (Usr)" \
name="Universal Disk Format 1.50, (Usr)"
legacy pkg=SUNWudfr desc="Universal Disk Format 1.50 File System" \
diff --git a/usr/src/pkg/manifests/system-file-system-zfs.p5m b/usr/src/pkg/manifests/system-file-system-zfs.p5m
index 65de299b35..111fe6b028 100644
--- a/usr/src/pkg/manifests/system-file-system-zfs.p5m
+++ b/usr/src/pkg/manifests/system-file-system-zfs.p5m
@@ -137,14 +137,14 @@ file path=usr/sbin/zdb mode=0555
link path=usr/sbin/zfs target=../../sbin/zfs
link path=usr/sbin/zpool target=../../sbin/zpool
file path=usr/sbin/zstreamdump mode=0555
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/zdb.1m
-file path=usr/share/man/man1m/zfs-program.1m
-file path=usr/share/man/man1m/zfs.1m
-file path=usr/share/man/man1m/zpool.1m
-file path=usr/share/man/man1m/zstreamdump.1m
-file path=usr/share/man/man1m/ztest.1m
-file path=usr/share/man/man5/zpool-features.5
+file path=usr/share/man/man7/zpool-features.7
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/zdb.8
+file path=usr/share/man/man8/zfs-program.8
+file path=usr/share/man/man8/zfs.8
+file path=usr/share/man/man8/zpool.8
+file path=usr/share/man/man8/zstreamdump.8
+file path=usr/share/man/man8/ztest.8
driver name=zfs perms="* 0600 root sys" perms="zfs 0666 root sys"
legacy pkg=SUNWzfskr desc="ZFS kernel root components" name="ZFS Kernel (Root)"
legacy pkg=SUNWzfsr desc="ZFS root components" name="ZFS (Root)"
diff --git a/usr/src/pkg/manifests/system-flash-fwflash.p5m b/usr/src/pkg/manifests/system-flash-fwflash.p5m
index af21df6047..fcb604ac50 100644
--- a/usr/src/pkg/manifests/system-flash-fwflash.p5m
+++ b/usr/src/pkg/manifests/system-flash-fwflash.p5m
@@ -57,8 +57,8 @@ link path=usr/lib/fwflash/verify/sgen-SUN.so target=ses-SUN.so
file path=usr/lib/fwflash/verify/tavor-MELLANOX.so
dir path=usr/sbin
file path=usr/sbin/fwflash mode=0555
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/fwflash.1m
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/fwflash.8
legacy pkg=SUNWfwflash desc="Sun Firmware Flash Update Tool (fwflash)" \
name="Sun Firmware Flash Update Tool (fwflash)"
license cr_Sun license=cr_Sun
diff --git a/usr/src/pkg/manifests/system-fru-id-platform.p5m b/usr/src/pkg/manifests/system-fru-id-platform.p5m
index 1e173de45f..a2da60fbbb 100644
--- a/usr/src/pkg/manifests/system-fru-id-platform.p5m
+++ b/usr/src/pkg/manifests/system-fru-id-platform.p5m
@@ -189,8 +189,8 @@ $(sparc_ONLY)file path=usr/platform/sun4u/lib/picl/plugins/libpiclfrudata.so.1 \
group=sys
$(sparc_ONLY)dir path=usr/platform/sun4u/sbin
$(sparc_ONLY)file path=usr/platform/sun4u/sbin/fruadm group=sys mode=0755
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/fruadm.1m
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/fruadm.8
$(i386_ONLY)legacy pkg=SUNWfruip.i arch=$(ARCH).i86pc \
desc="FRU ID platform data module and access library" \
name="FRU ID Platform Modules (Usr)"
diff --git a/usr/src/pkg/manifests/system-fru-id.p5m b/usr/src/pkg/manifests/system-fru-id.p5m
index a4759644d4..f8a86734dd 100644
--- a/usr/src/pkg/manifests/system-fru-id.p5m
+++ b/usr/src/pkg/manifests/system-fru-id.p5m
@@ -60,8 +60,8 @@ link path=usr/lib/libnvfru.so target=./libnvfru.so.1
file path=usr/lib/libnvfru.so.1
$(sparc_ONLY)dir path=usr/sbin
$(sparc_ONLY)file path=usr/sbin/prtfru mode=0755
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/prtfru.1m
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/prtfru.8
legacy pkg=SUNWfruid desc="FRU ID prtfru command and libfru library" \
name="FRU ID Utility and Library (Usr)"
license cr_Sun license=cr_Sun
diff --git a/usr/src/pkg/manifests/system-header-header-audio.p5m b/usr/src/pkg/manifests/system-header-header-audio.p5m
index d68f8d29ba..98df48a497 100644
--- a/usr/src/pkg/manifests/system-header-header-audio.p5m
+++ b/usr/src/pkg/manifests/system-header-header-audio.p5m
@@ -45,8 +45,8 @@ file path=usr/include/sys/audioio.h
file path=usr/include/sys/mixer.h
file path=usr/include/sys/soundcard.h
dir path=usr/share/man
-dir path=usr/share/man/man4
-file path=usr/share/man/man4/au.4
+dir path=usr/share/man/man5
+file path=usr/share/man/man5/au.5
legacy pkg=SUNWaudh \
desc="SunOS C/C++ header files for audio drivers and applications" \
name="Audio Header Files"
diff --git a/usr/src/pkg/manifests/system-header.p5m b/usr/src/pkg/manifests/system-header.p5m
index e18093e96d..dc5c9d094b 100644
--- a/usr/src/pkg/manifests/system-header.p5m
+++ b/usr/src/pkg/manifests/system-header.p5m
@@ -2172,29 +2172,29 @@ link path=usr/share/man/man3head/wordexp.3head target=wordexp.h.3head
file path=usr/share/man/man3head/wordexp.h.3head
link path=usr/share/man/man3head/xlocale.3head target=xlocale.h.3head
file path=usr/share/man/man3head/xlocale.h.3head
-dir path=usr/share/man/man4
-file path=usr/share/man/man4/note.4
+dir path=usr/share/man/man4i
+file path=usr/share/man/man4i/cdio.4i
+file path=usr/share/man/man4i/dkio.4i
+file path=usr/share/man/man4i/fbio.4i
+file path=usr/share/man/man4i/fdio.4i
+file path=usr/share/man/man4i/hdio.4i
+file path=usr/share/man/man4i/iec61883.4i
+file path=usr/share/man/man4i/mhd.4i
+file path=usr/share/man/man4i/mtio.4i
+file path=usr/share/man/man4i/prnio.4i
+file path=usr/share/man/man4i/quotactl.4i
+file path=usr/share/man/man4i/sesio.4i
+file path=usr/share/man/man4i/sockio.4i
+file path=usr/share/man/man4i/streamio.4i
+file path=usr/share/man/man4i/termio.4i
+file path=usr/share/man/man4i/termiox.4i
+file path=usr/share/man/man4i/uscsi.4i
+file path=usr/share/man/man4i/visual_io.4i
+file path=usr/share/man/man4i/vt.4i
dir path=usr/share/man/man5
-file path=usr/share/man/man5/prof.5
-dir path=usr/share/man/man7i
-file path=usr/share/man/man7i/cdio.7i
-file path=usr/share/man/man7i/dkio.7i
-file path=usr/share/man/man7i/fbio.7i
-file path=usr/share/man/man7i/fdio.7i
-file path=usr/share/man/man7i/hdio.7i
-file path=usr/share/man/man7i/iec61883.7i
-file path=usr/share/man/man7i/mhd.7i
-file path=usr/share/man/man7i/mtio.7i
-file path=usr/share/man/man7i/prnio.7i
-file path=usr/share/man/man7i/quotactl.7i
-file path=usr/share/man/man7i/sesio.7i
-file path=usr/share/man/man7i/sockio.7i
-file path=usr/share/man/man7i/streamio.7i
-file path=usr/share/man/man7i/termio.7i
-file path=usr/share/man/man7i/termiox.7i
-file path=usr/share/man/man7i/uscsi.7i
-file path=usr/share/man/man7i/visual_io.7i
-file path=usr/share/man/man7i/vt.7i
+file path=usr/share/man/man5/note.5
+dir path=usr/share/man/man7
+file path=usr/share/man/man7/prof.7
dir path=usr/share/src group=sys
dir path=usr/share/src/uts
$(i386_ONLY)dir path=usr/share/src/uts/i86pc
diff --git a/usr/src/pkg/manifests/system-kernel-dtrace-providers.p5m b/usr/src/pkg/manifests/system-kernel-dtrace-providers.p5m
index 702733b28c..ad2b71fc17 100644
--- a/usr/src/pkg/manifests/system-kernel-dtrace-providers.p5m
+++ b/usr/src/pkg/manifests/system-kernel-dtrace-providers.p5m
@@ -71,14 +71,14 @@ hardlink path=kernel/dtrace/$(ARCH64)/sdt \
hardlink path=kernel/dtrace/$(ARCH64)/systrace \
target=../../../kernel/drv/$(ARCH64)/systrace
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/dtrace.7d
-file path=usr/share/man/man7d/fasttrap.7d
-file path=usr/share/man/man7d/fbt.7d
-file path=usr/share/man/man7d/lockstat.7d
-file path=usr/share/man/man7d/profile.7d
-file path=usr/share/man/man7d/sdt.7d
-file path=usr/share/man/man7d/systrace.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/dtrace.4d
+file path=usr/share/man/man4d/fasttrap.4d
+file path=usr/share/man/man4d/fbt.4d
+file path=usr/share/man/man4d/lockstat.4d
+file path=usr/share/man/man4d/profile.4d
+file path=usr/share/man/man4d/sdt.4d
+file path=usr/share/man/man4d/systrace.4d
driver name=dcpc
driver name=dtrace perms="* 0666 root sys"
driver name=fasttrap perms="fasttrap 0666 root sys"
diff --git a/usr/src/pkg/manifests/system-kernel-dynamic-reconfiguration-sun-fire-880.p5m b/usr/src/pkg/manifests/system-kernel-dynamic-reconfiguration-sun-fire-880.p5m
index 41d057b8ab..e0d9a68877 100644
--- a/usr/src/pkg/manifests/system-kernel-dynamic-reconfiguration-sun-fire-880.p5m
+++ b/usr/src/pkg/manifests/system-kernel-dynamic-reconfiguration-sun-fire-880.p5m
@@ -53,8 +53,8 @@ dir path=usr/platform/SUNW,Sun-Fire-V890 group=sys
dir path=usr/platform/SUNW,Sun-Fire-V890/lib
link path=usr/platform/SUNW,Sun-Fire-V890/lib/sf880drd \
target=../../SUNW,Sun-Fire-880/lib/sf880drd
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/sf880drd.1m
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/sf880drd.8
legacy pkg=SUNWsfdr.u arch=$(ARCH).sun4u desc="Sun Fire 880 DR Daemon" \
name="Sun Fire 880 DR Daemon"
legacy pkg=SUNWsfdrr.u arch=$(ARCH).sun4u \
diff --git a/usr/src/pkg/manifests/system-kernel-platform.p5m b/usr/src/pkg/manifests/system-kernel-platform.p5m
index 094eb360db..f6380db53d 100644
--- a/usr/src/pkg/manifests/system-kernel-platform.p5m
+++ b/usr/src/pkg/manifests/system-kernel-platform.p5m
@@ -848,34 +848,34 @@ $(sparc_ONLY)dir path=platform/sun4v/kernel/sys group=sys
$(sparc_ONLY)dir path=platform/sun4v/kernel/sys/$(ARCH64) group=sys
$(sparc_ONLY)link path=platform/sun4v/kernel/unix target=$(ARCH64)/unix
$(sparc_ONLY)dir path=usr/share/man
-dir path=usr/share/man/man4
-$(i386_ONLY)link path=usr/share/man/man4/isa.4 target=sysbus.4
-$(sparc_ONLY)file path=usr/share/man/man4/sbus.4
-$(i386_ONLY)file path=usr/share/man/man4/sysbus.4
-$(sparc_ONLY)dir path=usr/share/man/man7d
-$(sparc_ONLY)file path=usr/share/man/man7d/bbc_beep.7d
-$(sparc_ONLY)file path=usr/share/man/man7d/dr.7d
-$(sparc_ONLY)link path=usr/share/man/man7d/drmach.7d target=dr.7d
-$(sparc_ONLY)file path=usr/share/man/man7d/fd.7d
-link path=usr/share/man/man7d/fdc.7d target=fd.7d
-$(sparc_ONLY)file path=usr/share/man/man7d/gpio_87317.7d
-$(sparc_ONLY)file path=usr/share/man/man7d/grbeep.7d
-$(sparc_ONLY)file path=usr/share/man/man7d/mc-opl.7d
-$(sparc_ONLY)file path=usr/share/man/man7d/n2rng.7d
-$(i386_ONLY)file path=usr/share/man/man7d/npe.7d
-$(sparc_ONLY)file path=usr/share/man/man7d/ntwdt.7d
-$(sparc_ONLY)file path=usr/share/man/man7d/oplmsu.7d
-$(sparc_ONLY)file path=usr/share/man/man7d/oplpanel.7d
-$(sparc_ONLY)file path=usr/share/man/man7d/pcicmu.7d
-$(sparc_ONLY)file path=usr/share/man/man7d/pcipsy.7d
-$(sparc_ONLY)file path=usr/share/man/man7d/pcisch.7d
-$(sparc_ONLY)file path=usr/share/man/man7d/smbus.7d
-$(sparc_ONLY)file path=usr/share/man/man7d/su.7d
-$(sparc_ONLY)file path=usr/share/man/man7d/todopl.7d
-$(sparc_ONLY)file path=usr/share/man/man7d/tsalarm.7d
-$(sparc_ONLY)file path=usr/share/man/man7d/zs.7d
-$(sparc_ONLY)file path=usr/share/man/man7d/zsh.7d
-$(sparc_ONLY)dir path=usr/share/man/man7m
+$(sparc_ONLY)dir path=usr/share/man/man4d
+$(sparc_ONLY)file path=usr/share/man/man4d/bbc_beep.4d
+$(sparc_ONLY)file path=usr/share/man/man4d/dr.4d
+$(sparc_ONLY)link path=usr/share/man/man4d/drmach.4d target=dr.4d
+$(sparc_ONLY)file path=usr/share/man/man4d/fd.4d
+link path=usr/share/man/man4d/fdc.4d target=fd.4d
+$(sparc_ONLY)file path=usr/share/man/man4d/gpio_87317.4d
+$(sparc_ONLY)file path=usr/share/man/man4d/grbeep.4d
+$(sparc_ONLY)file path=usr/share/man/man4d/mc-opl.4d
+$(sparc_ONLY)file path=usr/share/man/man4d/n2rng.4d
+$(i386_ONLY)file path=usr/share/man/man4d/npe.4d
+$(sparc_ONLY)file path=usr/share/man/man4d/ntwdt.4d
+$(sparc_ONLY)file path=usr/share/man/man4d/oplmsu.4d
+$(sparc_ONLY)file path=usr/share/man/man4d/oplpanel.4d
+$(sparc_ONLY)file path=usr/share/man/man4d/pcicmu.4d
+$(sparc_ONLY)file path=usr/share/man/man4d/pcipsy.4d
+$(sparc_ONLY)file path=usr/share/man/man4d/pcisch.4d
+$(sparc_ONLY)file path=usr/share/man/man4d/smbus.4d
+$(sparc_ONLY)file path=usr/share/man/man4d/su.4d
+$(sparc_ONLY)file path=usr/share/man/man4d/todopl.4d
+$(sparc_ONLY)file path=usr/share/man/man4d/tsalarm.4d
+$(sparc_ONLY)file path=usr/share/man/man4d/zs.4d
+$(sparc_ONLY)file path=usr/share/man/man4d/zsh.4d
+dir path=usr/share/man/man5
+$(i386_ONLY)link path=usr/share/man/man5/isa.5 target=sysbus.5
+$(sparc_ONLY)file path=usr/share/man/man5/sbus.5
+$(i386_ONLY)file path=usr/share/man/man5/sysbus.5
+$(sparc_ONLY)dir path=usr/share/man/man5m
$(sparc_ONLY)driver name=ac
$(i386_ONLY)driver name=acpinex alias=acpivirtnex
$(i386_ONLY)driver name=acpippm
diff --git a/usr/src/pkg/manifests/system-kernel-power.p5m b/usr/src/pkg/manifests/system-kernel-power.p5m
index 34fe2e82d3..f7c4f4b68f 100644
--- a/usr/src/pkg/manifests/system-kernel-power.p5m
+++ b/usr/src/pkg/manifests/system-kernel-power.p5m
@@ -63,13 +63,13 @@ file path=usr/sbin/pmconfig mode=4555
dir path=usr/share/man
dir path=usr/share/man/man1
file path=usr/share/man/man1/sys-suspend.1
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/pmconfig.1m
-file path=usr/share/man/man1m/powerd.1m
-dir path=usr/share/man/man4
-file path=usr/share/man/man4/power.conf.4
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/pm.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/pm.4d
+dir path=usr/share/man/man5
+file path=usr/share/man/man5/power.conf.5
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/pmconfig.8
+file path=usr/share/man/man8/powerd.8
driver name=pm perms="* 0666 root sys"
legacy pkg=SUNWpmr desc="Power Management config file and rc script" \
name="Power Management config file and rc script"
diff --git a/usr/src/pkg/manifests/system-kernel-suspend-resume.p5m b/usr/src/pkg/manifests/system-kernel-suspend-resume.p5m
index 28e0fae6f7..5469230ad8 100644
--- a/usr/src/pkg/manifests/system-kernel-suspend-resume.p5m
+++ b/usr/src/pkg/manifests/system-kernel-suspend-resume.p5m
@@ -58,8 +58,8 @@ $(sparc_ONLY)dir path=platform/sun4u/kernel/misc/$(ARCH64) group=sys
$(sparc_ONLY)file path=platform/sun4u/kernel/misc/$(ARCH64)/cpr group=sys \
mode=0755
dir path=usr/share/man
-dir path=usr/share/man/man7
-file path=usr/share/man/man7/cpr.7
+dir path=usr/share/man/man4
+file path=usr/share/man/man4/cpr.4
$(i386_ONLY)driver name=srn
$(i386_ONLY)legacy pkg=SUNWcpr.i arch=$(ARCH).i86pc \
desc="Suspend, Resume package" name="Suspend, Resume package"
diff --git a/usr/src/pkg/manifests/system-kernel.man1m.inc b/usr/src/pkg/manifests/system-kernel.man1m.inc
deleted file mode 100644
index 7e9272c6a3..0000000000
--- a/usr/src/pkg/manifests/system-kernel.man1m.inc
+++ /dev/null
@@ -1,16 +0,0 @@
-#
-# This file and its contents are supplied under the terms of the
-# Common Development and Distribution License ("CDDL"), version 1.0.
-# You may only use this file in accordance with the terms of version
-# 1.0 of the CDDL.
-#
-# A full copy of the text of the CDDL should have accompanied this
-# source. A copy of the CDDL is also available via the Internet
-# at http://www.illumos.org/license/CDDL.
-#
-
-# Copyright 2011, Richard Lowe
-
-file path=usr/share/man/man1m/boot.1m
-file path=usr/share/man/man1m/kadb.1m
-file path=usr/share/man/man1m/kernel.1m
diff --git a/usr/src/pkg/manifests/system-kernel.man4.inc b/usr/src/pkg/manifests/system-kernel.man4.inc
index 6aee43bcb1..185f5a8164 100644
--- a/usr/src/pkg/manifests/system-kernel.man4.inc
+++ b/usr/src/pkg/manifests/system-kernel.man4.inc
@@ -14,18 +14,5 @@
# Copyright 2012 Nexenta Systems, Inc. All rights reserved.
#
-file path=usr/share/man/man4/cardbus.4
-link path=usr/share/man/man4/dir.4 target=dir_ufs.4
-file path=usr/share/man/man4/dir_ufs.4
-file path=usr/share/man/man4/driver.conf.4
-file path=usr/share/man/man4/pci.4
-link path=usr/share/man/man4/pcie.4 target=pci.4
-file path=usr/share/man/man4/priv_names.4
-file path=usr/share/man/man4/proc.4
-file path=usr/share/man/man4/process.4
-file path=usr/share/man/man4/pseudo.4
-file path=usr/share/man/man4/scsi.4
-file path=usr/share/man/man4/sock2path.d.4
-file path=usr/share/man/man4/system.4
-file path=usr/share/man/man4/tnf_kernel_probes.4
-file path=usr/share/man/man4/ts_dptbl.4
+file path=usr/share/man/man4/Intro.4
+link path=usr/share/man/man4/intro.4 target=Intro.4
diff --git a/usr/src/pkg/manifests/system-kernel.man4d.inc b/usr/src/pkg/manifests/system-kernel.man4d.inc
new file mode 100644
index 0000000000..e53b000286
--- /dev/null
+++ b/usr/src/pkg/manifests/system-kernel.man4d.inc
@@ -0,0 +1,59 @@
+#
+# This file and its contents are supplied under the terms of the
+# Common Development and Distribution License ("CDDL"), version 1.0.
+# You may only use this file in accordance with the terms of version
+# 1.0 of the CDDL.
+#
+# A full copy of the text of the CDDL should have accompanied this
+# source. A copy of the CDDL is also available via the Internet
+# at http://www.illumos.org/license/CDDL.
+#
+
+#
+# Copyright 2011, Richard Lowe
+# Copyright 2016 Nexenta Systems, Inc.
+# Copyright 2019 Peter Tribble.
+# Copyright 2019 Joyent, Inc.
+#
+
+link path=usr/share/man/man4d/allkmem.4d target=mem.4d
+file path=usr/share/man/man4d/console.4d
+file path=usr/share/man/man4d/cpuid.4d
+file path=usr/share/man/man4d/devinfo.4d
+file path=usr/share/man/man4d/full.4d
+file path=usr/share/man/man4d/gld.4d
+file path=usr/share/man/man4d/ipnet.4d
+file path=usr/share/man/man4d/kmdb.4d
+link path=usr/share/man/man4d/kmem.4d target=mem.4d
+file path=usr/share/man/man4d/llc1.4d
+link path=usr/share/man/man4d/lo0.4d target=ipnet.4d
+file path=usr/share/man/man4d/lofi.4d
+file path=usr/share/man/man4d/log.4d
+file path=usr/share/man/man4d/mem.4d
+file path=usr/share/man/man4d/msglog.4d
+file path=usr/share/man/man4d/mt.4d
+file path=usr/share/man/man4d/null.4d
+file path=usr/share/man/man4d/nulldriver.4d
+file path=usr/share/man/man4d/openprom.4d
+file path=usr/share/man/man4d/physmem.4d
+file path=usr/share/man/man4d/poll.4d
+file path=usr/share/man/man4d/pty.4d
+file path=usr/share/man/man4d/ramdisk.4d
+file path=usr/share/man/man4d/random.4d
+file path=usr/share/man/man4d/sad.4d
+file path=usr/share/man/man4d/sata.4d
+file path=usr/share/man/man4d/sd.4d
+file path=usr/share/man/man4d/sgen.4d
+file path=usr/share/man/man4d/st.4d
+file path=usr/share/man/man4d/sysmsg.4d
+file path=usr/share/man/man4d/ticlts.4d
+link path=usr/share/man/man4d/ticots.4d target=ticlts.4d
+link path=usr/share/man/man4d/ticotsord.4d target=ticlts.4d
+file path=usr/share/man/man4d/tty.4d
+file path=usr/share/man/man4d/tzmon.4d
+file path=usr/share/man/man4d/ufm.4d
+link path=usr/share/man/man4d/urandom.4d target=random.4d
+file path=usr/share/man/man4d/virtualkm.4d
+file path=usr/share/man/man4d/vni.4d
+file path=usr/share/man/man4d/wscons.4d
+file path=usr/share/man/man4d/zero.4d
diff --git a/usr/src/pkg/manifests/system-kernel.man4fs.inc b/usr/src/pkg/manifests/system-kernel.man4fs.inc
new file mode 100644
index 0000000000..904d4e913c
--- /dev/null
+++ b/usr/src/pkg/manifests/system-kernel.man4fs.inc
@@ -0,0 +1,31 @@
+#
+# This file and its contents are supplied under the terms of the
+# Common Development and Distribution License ("CDDL"), version 1.0.
+# You may only use this file in accordance with the terms of version
+# 1.0 of the CDDL.
+#
+# A full copy of the text of the CDDL should have accompanied this
+# source. A copy of the CDDL is also available via the Internet
+# at http://www.illumos.org/license/CDDL.
+#
+
+#
+# Copyright 2011, Richard Lowe
+# Copyright 2012 Nexenta Systems, Inc. All rights reserved.
+#
+
+file path=usr/share/man/man4fs/bootfs.4fs
+file path=usr/share/man/man4fs/ctfs.4fs
+file path=usr/share/man/man4fs/dcfs.4fs
+file path=usr/share/man/man4fs/dev.4fs
+file path=usr/share/man/man4fs/devfs.4fs
+file path=usr/share/man/man4fs/fd.4fs
+file path=usr/share/man/man4fs/hsfs.4fs
+file path=usr/share/man/man4fs/lofs.4fs
+file path=usr/share/man/man4fs/objfs.4fs
+file path=usr/share/man/man4fs/sharefs.4fs
+link path=usr/share/man/man4fs/stderr.4fs target=fd.4fs
+link path=usr/share/man/man4fs/stdin.4fs target=fd.4fs
+link path=usr/share/man/man4fs/stdout.4fs target=fd.4fs
+file path=usr/share/man/man4fs/tmpfs.4fs
+file path=usr/share/man/man4fs/ufs.4fs
diff --git a/usr/src/pkg/manifests/system-kernel.man4m.inc b/usr/src/pkg/manifests/system-kernel.man4m.inc
new file mode 100644
index 0000000000..70d284e344
--- /dev/null
+++ b/usr/src/pkg/manifests/system-kernel.man4m.inc
@@ -0,0 +1,32 @@
+#
+# This file and its contents are supplied under the terms of the
+# Common Development and Distribution License ("CDDL"), version 1.0.
+# You may only use this file in accordance with the terms of version
+# 1.0 of the CDDL.
+#
+# A full copy of the text of the CDDL should have accompanied this
+# source. A copy of the CDDL is also available via the Internet
+# at http://www.illumos.org/license/CDDL.
+#
+
+#
+# Copyright 2011, Richard Lowe
+# Copyright 2012 Nexenta Systems, Inc. All rights reserved.
+#
+
+file path=usr/share/man/man4m/bufmod.4m
+file path=usr/share/man/man4m/connld.4m
+file path=usr/share/man/man4m/ldterm.4m
+file path=usr/share/man/man4m/pckt.4m
+file path=usr/share/man/man4m/pfmod.4m
+file path=usr/share/man/man4m/pipemod.4m
+file path=usr/share/man/man4m/ptem.4m
+file path=usr/share/man/man4m/timod.4m
+file path=usr/share/man/man4m/tirdwr.4m
+file path=usr/share/man/man4m/ttcompat.4m
+link path=usr/share/man/man4m/vuid2ps2.4m target=vuidmice.4m
+link path=usr/share/man/man4m/vuid3ps2.4m target=vuidmice.4m
+link path=usr/share/man/man4m/vuidm3p.4m target=vuidmice.4m
+link path=usr/share/man/man4m/vuidm4p.4m target=vuidmice.4m
+link path=usr/share/man/man4m/vuidm5p.4m target=vuidmice.4m
+file path=usr/share/man/man4m/vuidmice.4m
diff --git a/usr/src/pkg/manifests/system-kernel.man4p.inc b/usr/src/pkg/manifests/system-kernel.man4p.inc
new file mode 100644
index 0000000000..5a4a6dce90
--- /dev/null
+++ b/usr/src/pkg/manifests/system-kernel.man4p.inc
@@ -0,0 +1,45 @@
+#
+# This file and its contents are supplied under the terms of the
+# Common Development and Distribution License ("CDDL"), version 1.0.
+# You may only use this file in accordance with the terms of version
+# 1.0 of the CDDL.
+#
+# A full copy of the text of the CDDL should have accompanied this
+# source. A copy of the CDDL is also available via the Internet
+# at http://www.illumos.org/license/CDDL.
+#
+
+#
+# Copyright 2011, Richard Lowe
+# Copyright 2012 Nexenta Systems, Inc. All rights reserved.
+#
+
+link path=usr/share/man/man4p/AH.4p target=ipsecah.4p
+link path=usr/share/man/man4p/ARP.4p target=arp.4p
+link path=usr/share/man/man4p/ESP.4p target=ipsecesp.4p
+link path=usr/share/man/man4p/ICMP.4p target=icmp.4p
+link path=usr/share/man/man4p/IP.4p target=ip.4p
+link path=usr/share/man/man4p/NDP.4p target=ndp.4p
+link path=usr/share/man/man4p/SCTP.4p target=sctp.4p
+link path=usr/share/man/man4p/TCP.4p target=tcp.4p
+link path=usr/share/man/man4p/UDP.4p target=udp.4p
+file path=usr/share/man/man4p/arp.4p
+file path=usr/share/man/man4p/dlpi.4p
+file path=usr/share/man/man4p/icmp.4p
+file path=usr/share/man/man4p/icmp6.4p
+link path=usr/share/man/man4p/if.4p target=if_tcp.4p
+file path=usr/share/man/man4p/if_tcp.4p
+file path=usr/share/man/man4p/inet.4p
+file path=usr/share/man/man4p/inet6.4p
+file path=usr/share/man/man4p/ip.4p
+file path=usr/share/man/man4p/ip6.4p
+file path=usr/share/man/man4p/ipsec.4p
+file path=usr/share/man/man4p/ipsecah.4p
+file path=usr/share/man/man4p/ipsecesp.4p
+file path=usr/share/man/man4p/ndp.4p
+file path=usr/share/man/man4p/pf_key.4p
+file path=usr/share/man/man4p/route.4p
+file path=usr/share/man/man4p/routing.4p
+file path=usr/share/man/man4p/sctp.4p
+file path=usr/share/man/man4p/tcp.4p
+file path=usr/share/man/man4p/udp.4p
diff --git a/usr/src/pkg/manifests/system-kernel.man5.inc b/usr/src/pkg/manifests/system-kernel.man5.inc
index 090344a9c3..695417c8fc 100644
--- a/usr/src/pkg/manifests/system-kernel.man5.inc
+++ b/usr/src/pkg/manifests/system-kernel.man5.inc
@@ -9,10 +9,23 @@
# at http://www.illumos.org/license/CDDL.
#
+#
# Copyright 2011, Richard Lowe
-# Copyright 2014 Garrett D'Amore <garrett@damore.org>
+# Copyright 2012 Nexenta Systems, Inc. All rights reserved.
+#
-file path=usr/share/man/man5/epoll.5
-file path=usr/share/man/man5/fsattr.5
-file path=usr/share/man/man5/ieee802.11.5
-file path=usr/share/man/man5/ieee802.3.5
+file path=usr/share/man/man5/cardbus.5
+link path=usr/share/man/man5/dir.5 target=dir_ufs.5
+file path=usr/share/man/man5/dir_ufs.5
+file path=usr/share/man/man5/driver.conf.5
+file path=usr/share/man/man5/pci.5
+link path=usr/share/man/man5/pcie.5 target=pci.5
+file path=usr/share/man/man5/priv_names.5
+file path=usr/share/man/man5/proc.5
+file path=usr/share/man/man5/process.5
+file path=usr/share/man/man5/pseudo.5
+file path=usr/share/man/man5/scsi.5
+file path=usr/share/man/man5/sock2path.d.5
+file path=usr/share/man/man5/system.5
+file path=usr/share/man/man5/tnf_kernel_probes.5
+file path=usr/share/man/man5/ts_dptbl.5
diff --git a/usr/src/pkg/manifests/system-kernel.man7.inc b/usr/src/pkg/manifests/system-kernel.man7.inc
index 64d5ee6f24..ca2226004a 100644
--- a/usr/src/pkg/manifests/system-kernel.man7.inc
+++ b/usr/src/pkg/manifests/system-kernel.man7.inc
@@ -9,10 +9,10 @@
# at http://www.illumos.org/license/CDDL.
#
-#
# Copyright 2011, Richard Lowe
-# Copyright 2012 Nexenta Systems, Inc. All rights reserved.
-#
+# Copyright 2014 Garrett D'Amore <garrett@damore.org>
-file path=usr/share/man/man7/Intro.7
-link path=usr/share/man/man7/intro.7 target=Intro.7
+file path=usr/share/man/man7/epoll.7
+file path=usr/share/man/man7/fsattr.7
+file path=usr/share/man/man7/ieee802.11.7
+file path=usr/share/man/man7/ieee802.3.7
diff --git a/usr/src/pkg/manifests/system-kernel.man7d.inc b/usr/src/pkg/manifests/system-kernel.man7d.inc
deleted file mode 100644
index d9f243af5d..0000000000
--- a/usr/src/pkg/manifests/system-kernel.man7d.inc
+++ /dev/null
@@ -1,59 +0,0 @@
-#
-# This file and its contents are supplied under the terms of the
-# Common Development and Distribution License ("CDDL"), version 1.0.
-# You may only use this file in accordance with the terms of version
-# 1.0 of the CDDL.
-#
-# A full copy of the text of the CDDL should have accompanied this
-# source. A copy of the CDDL is also available via the Internet
-# at http://www.illumos.org/license/CDDL.
-#
-
-#
-# Copyright 2011, Richard Lowe
-# Copyright 2016 Nexenta Systems, Inc.
-# Copyright 2019 Peter Tribble.
-# Copyright 2019 Joyent, Inc.
-#
-
-link path=usr/share/man/man7d/allkmem.7d target=mem.7d
-file path=usr/share/man/man7d/console.7d
-file path=usr/share/man/man7d/cpuid.7d
-file path=usr/share/man/man7d/devinfo.7d
-file path=usr/share/man/man7d/full.7d
-file path=usr/share/man/man7d/gld.7d
-file path=usr/share/man/man7d/ipnet.7d
-file path=usr/share/man/man7d/kmdb.7d
-link path=usr/share/man/man7d/kmem.7d target=mem.7d
-file path=usr/share/man/man7d/llc1.7d
-link path=usr/share/man/man7d/lo0.7d target=ipnet.7d
-file path=usr/share/man/man7d/lofi.7d
-file path=usr/share/man/man7d/log.7d
-file path=usr/share/man/man7d/mem.7d
-file path=usr/share/man/man7d/msglog.7d
-file path=usr/share/man/man7d/mt.7d
-file path=usr/share/man/man7d/null.7d
-file path=usr/share/man/man7d/nulldriver.7d
-file path=usr/share/man/man7d/openprom.7d
-file path=usr/share/man/man7d/physmem.7d
-file path=usr/share/man/man7d/poll.7d
-file path=usr/share/man/man7d/pty.7d
-file path=usr/share/man/man7d/ramdisk.7d
-file path=usr/share/man/man7d/random.7d
-file path=usr/share/man/man7d/sad.7d
-file path=usr/share/man/man7d/sata.7d
-file path=usr/share/man/man7d/sd.7d
-file path=usr/share/man/man7d/sgen.7d
-file path=usr/share/man/man7d/st.7d
-file path=usr/share/man/man7d/sysmsg.7d
-file path=usr/share/man/man7d/ticlts.7d
-link path=usr/share/man/man7d/ticots.7d target=ticlts.7d
-link path=usr/share/man/man7d/ticotsord.7d target=ticlts.7d
-file path=usr/share/man/man7d/tty.7d
-file path=usr/share/man/man7d/tzmon.7d
-file path=usr/share/man/man7d/ufm.7d
-link path=usr/share/man/man7d/urandom.7d target=random.7d
-file path=usr/share/man/man7d/virtualkm.7d
-file path=usr/share/man/man7d/vni.7d
-file path=usr/share/man/man7d/wscons.7d
-file path=usr/share/man/man7d/zero.7d
diff --git a/usr/src/pkg/manifests/system-kernel.man7fs.inc b/usr/src/pkg/manifests/system-kernel.man7fs.inc
deleted file mode 100644
index c11e5f486f..0000000000
--- a/usr/src/pkg/manifests/system-kernel.man7fs.inc
+++ /dev/null
@@ -1,31 +0,0 @@
-#
-# This file and its contents are supplied under the terms of the
-# Common Development and Distribution License ("CDDL"), version 1.0.
-# You may only use this file in accordance with the terms of version
-# 1.0 of the CDDL.
-#
-# A full copy of the text of the CDDL should have accompanied this
-# source. A copy of the CDDL is also available via the Internet
-# at http://www.illumos.org/license/CDDL.
-#
-
-#
-# Copyright 2011, Richard Lowe
-# Copyright 2012 Nexenta Systems, Inc. All rights reserved.
-#
-
-file path=usr/share/man/man7fs/bootfs.7fs
-file path=usr/share/man/man7fs/ctfs.7fs
-file path=usr/share/man/man7fs/dcfs.7fs
-file path=usr/share/man/man7fs/dev.7fs
-file path=usr/share/man/man7fs/devfs.7fs
-file path=usr/share/man/man7fs/fd.7fs
-file path=usr/share/man/man7fs/hsfs.7fs
-file path=usr/share/man/man7fs/lofs.7fs
-file path=usr/share/man/man7fs/objfs.7fs
-file path=usr/share/man/man7fs/sharefs.7fs
-link path=usr/share/man/man7fs/stderr.7fs target=fd.7fs
-link path=usr/share/man/man7fs/stdin.7fs target=fd.7fs
-link path=usr/share/man/man7fs/stdout.7fs target=fd.7fs
-file path=usr/share/man/man7fs/tmpfs.7fs
-file path=usr/share/man/man7fs/ufs.7fs
diff --git a/usr/src/pkg/manifests/system-kernel.man7m.inc b/usr/src/pkg/manifests/system-kernel.man7m.inc
deleted file mode 100644
index d000b8418c..0000000000
--- a/usr/src/pkg/manifests/system-kernel.man7m.inc
+++ /dev/null
@@ -1,32 +0,0 @@
-#
-# This file and its contents are supplied under the terms of the
-# Common Development and Distribution License ("CDDL"), version 1.0.
-# You may only use this file in accordance with the terms of version
-# 1.0 of the CDDL.
-#
-# A full copy of the text of the CDDL should have accompanied this
-# source. A copy of the CDDL is also available via the Internet
-# at http://www.illumos.org/license/CDDL.
-#
-
-#
-# Copyright 2011, Richard Lowe
-# Copyright 2012 Nexenta Systems, Inc. All rights reserved.
-#
-
-file path=usr/share/man/man7m/bufmod.7m
-file path=usr/share/man/man7m/connld.7m
-file path=usr/share/man/man7m/ldterm.7m
-file path=usr/share/man/man7m/pckt.7m
-file path=usr/share/man/man7m/pfmod.7m
-file path=usr/share/man/man7m/pipemod.7m
-file path=usr/share/man/man7m/ptem.7m
-file path=usr/share/man/man7m/timod.7m
-file path=usr/share/man/man7m/tirdwr.7m
-file path=usr/share/man/man7m/ttcompat.7m
-link path=usr/share/man/man7m/vuid2ps2.7m target=vuidmice.7m
-link path=usr/share/man/man7m/vuid3ps2.7m target=vuidmice.7m
-link path=usr/share/man/man7m/vuidm3p.7m target=vuidmice.7m
-link path=usr/share/man/man7m/vuidm4p.7m target=vuidmice.7m
-link path=usr/share/man/man7m/vuidm5p.7m target=vuidmice.7m
-file path=usr/share/man/man7m/vuidmice.7m
diff --git a/usr/src/pkg/manifests/system-kernel.man7p.inc b/usr/src/pkg/manifests/system-kernel.man7p.inc
deleted file mode 100644
index e636c8cd96..0000000000
--- a/usr/src/pkg/manifests/system-kernel.man7p.inc
+++ /dev/null
@@ -1,45 +0,0 @@
-#
-# This file and its contents are supplied under the terms of the
-# Common Development and Distribution License ("CDDL"), version 1.0.
-# You may only use this file in accordance with the terms of version
-# 1.0 of the CDDL.
-#
-# A full copy of the text of the CDDL should have accompanied this
-# source. A copy of the CDDL is also available via the Internet
-# at http://www.illumos.org/license/CDDL.
-#
-
-#
-# Copyright 2011, Richard Lowe
-# Copyright 2012 Nexenta Systems, Inc. All rights reserved.
-#
-
-link path=usr/share/man/man7p/AH.7p target=ipsecah.7p
-link path=usr/share/man/man7p/ARP.7p target=arp.7p
-link path=usr/share/man/man7p/ESP.7p target=ipsecesp.7p
-link path=usr/share/man/man7p/ICMP.7p target=icmp.7p
-link path=usr/share/man/man7p/IP.7p target=ip.7p
-link path=usr/share/man/man7p/NDP.7p target=ndp.7p
-link path=usr/share/man/man7p/SCTP.7p target=sctp.7p
-link path=usr/share/man/man7p/TCP.7p target=tcp.7p
-link path=usr/share/man/man7p/UDP.7p target=udp.7p
-file path=usr/share/man/man7p/arp.7p
-file path=usr/share/man/man7p/dlpi.7p
-file path=usr/share/man/man7p/icmp.7p
-file path=usr/share/man/man7p/icmp6.7p
-link path=usr/share/man/man7p/if.7p target=if_tcp.7p
-file path=usr/share/man/man7p/if_tcp.7p
-file path=usr/share/man/man7p/inet.7p
-file path=usr/share/man/man7p/inet6.7p
-file path=usr/share/man/man7p/ip.7p
-file path=usr/share/man/man7p/ip6.7p
-file path=usr/share/man/man7p/ipsec.7p
-file path=usr/share/man/man7p/ipsecah.7p
-file path=usr/share/man/man7p/ipsecesp.7p
-file path=usr/share/man/man7p/ndp.7p
-file path=usr/share/man/man7p/pf_key.7p
-file path=usr/share/man/man7p/route.7p
-file path=usr/share/man/man7p/routing.7p
-file path=usr/share/man/man7p/sctp.7p
-file path=usr/share/man/man7p/tcp.7p
-file path=usr/share/man/man7p/udp.7p
diff --git a/usr/src/pkg/manifests/system-kernel.man8.inc b/usr/src/pkg/manifests/system-kernel.man8.inc
new file mode 100644
index 0000000000..efaa533c68
--- /dev/null
+++ b/usr/src/pkg/manifests/system-kernel.man8.inc
@@ -0,0 +1,16 @@
+#
+# This file and its contents are supplied under the terms of the
+# Common Development and Distribution License ("CDDL"), version 1.0.
+# You may only use this file in accordance with the terms of version
+# 1.0 of the CDDL.
+#
+# A full copy of the text of the CDDL should have accompanied this
+# source. A copy of the CDDL is also available via the Internet
+# at http://www.illumos.org/license/CDDL.
+#
+
+# Copyright 2011, Richard Lowe
+
+file path=usr/share/man/man8/boot.8
+file path=usr/share/man/man8/kadb.8
+file path=usr/share/man/man8/kernel.8
diff --git a/usr/src/pkg/manifests/system-kernel.p5m b/usr/src/pkg/manifests/system-kernel.p5m
index 375e5ecc76..ad90b0329a 100644
--- a/usr/src/pkg/manifests/system-kernel.p5m
+++ b/usr/src/pkg/manifests/system-kernel.p5m
@@ -37,15 +37,15 @@
# information about overriding the defaults.
#
<include global_zone_only_component>
-<include system-kernel.man1m.inc>
<include system-kernel.man2.inc>
<include system-kernel.man4.inc>
+<include system-kernel.man4d.inc>
+<include system-kernel.man4fs.inc>
+<include system-kernel.man4m.inc>
+<include system-kernel.man4p.inc>
<include system-kernel.man5.inc>
<include system-kernel.man7.inc>
-<include system-kernel.man7d.inc>
-<include system-kernel.man7fs.inc>
-<include system-kernel.man7m.inc>
-<include system-kernel.man7p.inc>
+<include system-kernel.man8.inc>
<include system-kernel.man9.inc>
<include system-kernel.man9e.inc>
<include system-kernel.man9f.inc>
@@ -335,7 +335,7 @@ $(sparc_ONLY)file path=kernel/misc/$(ARCH64)/dada group=sys mode=0755
link path=kernel/misc/$(ARCH64)/des target=../../../kernel/crypto/$(ARCH64)/des
file path=kernel/misc/$(ARCH64)/dls group=sys mode=0755
# Sadly vuid mouse support is in different packages on different platforms
-# While kstat(7D) is in SUNWcs, the structures are general
+# While kstat(4D) is in SUNWcs, the structures are general
hardlink path=kernel/misc/$(ARCH64)/edonr \
target=../../../kernel/crypto/$(ARCH64)/edonr
file path=kernel/misc/$(ARCH64)/fssnap_if group=sys mode=0755
@@ -472,19 +472,19 @@ dir path=usr/kernel/drv/$(ARCH64) group=sys
file path=usr/kernel/drv/$(ARCH64)/signalfd group=sys
file path=usr/kernel/drv/signalfd.conf group=sys
dir path=usr/share/man
-dir path=usr/share/man/man1m
-$(sparc_ONLY)file path=usr/share/man/man1m/monitor.1m
-$(sparc_ONLY)file path=usr/share/man/man1m/obpsym.1m
dir path=usr/share/man/man2
dir path=usr/share/man/man3
dir path=usr/share/man/man4
+dir path=usr/share/man/man4d
+$(sparc_ONLY)file path=usr/share/man/man4d/dad.4d
+$(i386_ONLY)file path=usr/share/man/man4d/smbios.4d
+dir path=usr/share/man/man4fs
+dir path=usr/share/man/man4m
+dir path=usr/share/man/man4p
dir path=usr/share/man/man5
-dir path=usr/share/man/man7d
-$(sparc_ONLY)file path=usr/share/man/man7d/dad.7d
-$(i386_ONLY)file path=usr/share/man/man7d/smbios.7d
-dir path=usr/share/man/man7fs
-dir path=usr/share/man/man7m
-dir path=usr/share/man/man7p
+dir path=usr/share/man/man8
+$(sparc_ONLY)file path=usr/share/man/man8/monitor.8
+$(sparc_ONLY)file path=usr/share/man/man8/obpsym.8
dir path=usr/share/man/man9
dir path=usr/share/man/man9e
dir path=usr/share/man/man9f
diff --git a/usr/src/pkg/manifests/system-ksensor.p5m b/usr/src/pkg/manifests/system-ksensor.p5m
index 659ba3574c..0156101a79 100644
--- a/usr/src/pkg/manifests/system-ksensor.p5m
+++ b/usr/src/pkg/manifests/system-ksensor.p5m
@@ -29,7 +29,7 @@ dir path=usr/lib/devfsadm group=sys
dir path=usr/lib/devfsadm/linkmod group=sys
file path=usr/lib/devfsadm/linkmod/SUNW_sensor_link.so group=sys
dir path=usr/share/man
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/ksensor.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/ksensor.4d
driver name=ksensor
license lic_CDDL license=lic_CDDL
diff --git a/usr/src/pkg/manifests/system-ldoms.p5m b/usr/src/pkg/manifests/system-ldoms.p5m
index 5b5fc0e2c0..ff5baafb62 100644
--- a/usr/src/pkg/manifests/system-ldoms.p5m
+++ b/usr/src/pkg/manifests/system-ldoms.p5m
@@ -89,10 +89,10 @@ file path=usr/lib/libpri.so.1
dir path=usr/lib/rcm
dir path=usr/lib/rcm/scripts
file path=usr/lib/rcm/scripts/SUNW,vdevices.pl mode=0555
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/drd.1m
-file path=usr/share/man/man1m/ldmad.1m
-file path=usr/share/man/man1m/vntsd.1m
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/drd.8
+file path=usr/share/man/man8/ldmad.8
+file path=usr/share/man/man8/vntsd.8
driver name=cnex alias=SUNW,sun4v-channel-devices
driver name=drctl
driver name=ds_pri
diff --git a/usr/src/pkg/manifests/system-library-platform.p5m b/usr/src/pkg/manifests/system-library-platform.p5m
index 09c449c977..9e05b15766 100644
--- a/usr/src/pkg/manifests/system-library-platform.p5m
+++ b/usr/src/pkg/manifests/system-library-platform.p5m
@@ -479,11 +479,11 @@ $(sparc_ONLY)file path=usr/platform/sun4v/lib/libtsalarm.so.1
$(sparc_ONLY)dir path=usr/platform/sun4v/sbin
$(sparc_ONLY)file path=usr/platform/sun4v/sbin/device_remap mode=0544
$(sparc_ONLY)file path=usr/platform/sun4v/sbin/prtdiag group=sys mode=2755
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/device_remap.1m
-file path=usr/share/man/man1m/scadm.1m
dir path=usr/share/man/man3lib
file path=usr/share/man/man3lib/libtsalarm.3lib
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/device_remap.8
+file path=usr/share/man/man8/scadm.8
$(i386_ONLY)legacy pkg=SUNWkvm.i arch=$(ARCH).i86pc \
desc="core software for a specific hardware platform group" \
name="Core Architecture, (Kvm)"
diff --git a/usr/src/pkg/manifests/system-library-policykit.p5m b/usr/src/pkg/manifests/system-library-policykit.p5m
index 7f8f3fc062..691daa70bb 100644
--- a/usr/src/pkg/manifests/system-library-policykit.p5m
+++ b/usr/src/pkg/manifests/system-library-policykit.p5m
@@ -40,8 +40,8 @@ dir path=usr/lib/pkgconfig group=other
file path=usr/lib/pkgconfig/polkit.pc
dir path=usr/sbin
file path=usr/sbin/polkit-is-privileged mode=0555
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/polkit-is-privileged.1m
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/polkit-is-privileged.8
legacy pkg=SUNWpolkit \
desc="Toolkit for controlling privileges (freedesktop.org)" name=PolicyKit
license cr_Sun license=cr_Sun
diff --git a/usr/src/pkg/manifests/system-library-security-gss-spnego.p5m b/usr/src/pkg/manifests/system-library-security-gss-spnego.p5m
index 549102adc5..3bfc85ed8d 100644
--- a/usr/src/pkg/manifests/system-library-security-gss-spnego.p5m
+++ b/usr/src/pkg/manifests/system-library-security-gss-spnego.p5m
@@ -36,8 +36,8 @@ file path=usr/lib/$(ARCH64)/gss/mech_spnego.so.1
dir path=usr/lib/gss
file path=usr/lib/gss/mech_spnego.so.1
dir path=usr/share/man
-dir path=usr/share/man/man5
-file path=usr/share/man/man5/mech_spnego.5
+dir path=usr/share/man/man7
+file path=usr/share/man/man7/mech_spnego.7
legacy pkg=SUNWspnego desc="SPNEGO GSS-API Mechanism" \
name="SPNEGO GSS-API Mechanism"
license cr_Sun license=cr_Sun
diff --git a/usr/src/pkg/manifests/system-library-security-gss.p5m b/usr/src/pkg/manifests/system-library-security-gss.p5m
index 6d21f3ec7b..2edb624a58 100644
--- a/usr/src/pkg/manifests/system-library-security-gss.p5m
+++ b/usr/src/pkg/manifests/system-library-security-gss.p5m
@@ -46,9 +46,6 @@ file path=usr/lib/sasl/$(ARCH64)/gssapi.so.1
file path=usr/lib/sasl/gssapi.so.1
dir path=usr/sbin
file path=usr/sbin/gsscred group=sys mode=0555
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/gsscred.1m
-file path=usr/share/man/man1m/gssd.1m
dir path=usr/share/man/man3gss
file path=usr/share/man/man3gss/gss_accept_sec_context.3gss
file path=usr/share/man/man3gss/gss_acquire_cred.3gss
@@ -90,6 +87,9 @@ file path=usr/share/man/man3gss/gss_wrap.3gss
file path=usr/share/man/man3gss/gss_wrap_size_limit.3gss
dir path=usr/share/man/man3lib
file path=usr/share/man/man3lib/libgss.3lib
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/gsscred.8
+file path=usr/share/man/man8/gssd.8
legacy pkg=SUNWgss \
desc="Generic Security Service Application Program Interface, Version 2 - user" \
name="GSSAPI V2"
diff --git a/usr/src/pkg/manifests/system-library-security-libsasl.p5m b/usr/src/pkg/manifests/system-library-security-libsasl.p5m
index e27beaec54..7e7105d011 100644
--- a/usr/src/pkg/manifests/system-library-security-libsasl.p5m
+++ b/usr/src/pkg/manifests/system-library-security-libsasl.p5m
@@ -118,8 +118,8 @@ file path=usr/share/man/man3sasl/sasl_setprop.3sasl
file path=usr/share/man/man3sasl/sasl_utf8verify.3sasl
file path=usr/share/man/man3sasl/sasl_verifyfile_t.3sasl
file path=usr/share/man/man3sasl/sasl_version.3sasl
-dir path=usr/share/man/man4
-file path=usr/share/man/man4/sasl_appname.conf.4
+dir path=usr/share/man/man5
+file path=usr/share/man/man5/sasl_appname.conf.5
legacy pkg=SUNWlibsasl \
desc="Simple Authentication and Security Layer (SASL) v2 shared library and plugins" \
name="Simple Authentication and Security Layer (SASL) v2 shared library and plugins"
diff --git a/usr/src/pkg/manifests/system-library-storage-fibre-channel-hbaapi.p5m b/usr/src/pkg/manifests/system-library-storage-fibre-channel-hbaapi.p5m
index 905c4bce61..2438023d6d 100644
--- a/usr/src/pkg/manifests/system-library-storage-fibre-channel-hbaapi.p5m
+++ b/usr/src/pkg/manifests/system-library-storage-fibre-channel-hbaapi.p5m
@@ -43,8 +43,8 @@ file path=usr/lib/$(ARCH64)/libHBAAPI.so.1
link path=usr/lib/libHBAAPI.so target=libHBAAPI.so.1
file path=usr/lib/libHBAAPI.so.1
dir path=usr/share/man
-dir path=usr/share/man/man4
-file path=usr/share/man/man4/hba.conf.4
+dir path=usr/share/man/man5
+file path=usr/share/man/man5/hba.conf.5
legacy pkg=SUNWcfcl \
desc="Common Fibre Channel HBA API Library based on the T11 FC-MI specification" \
name="Common Fibre Channel HBA API Library (Usr)"
diff --git a/usr/src/pkg/manifests/system-library-storage-libmpapi.p5m b/usr/src/pkg/manifests/system-library-storage-libmpapi.p5m
index f20dc0e2d6..2bb3d3d821 100644
--- a/usr/src/pkg/manifests/system-library-storage-libmpapi.p5m
+++ b/usr/src/pkg/manifests/system-library-storage-libmpapi.p5m
@@ -94,8 +94,8 @@ file path=usr/share/man/man3mpapi/MP_SetProbingPollingRate.3mpapi
file path=usr/share/man/man3mpapi/MP_SetProprietaryProperties.3mpapi
file path=usr/share/man/man3mpapi/MP_SetTPGAccess.3mpapi
file path=usr/share/man/man3mpapi/Sun_MP_SendScsiCmd.3mpapi
-dir path=usr/share/man/man4
-file path=usr/share/man/man4/mpapi.conf.4
+dir path=usr/share/man/man5
+file path=usr/share/man/man5/mpapi.conf.5
legacy pkg=SUNWmpapi desc="Common Library based on SNIA MP API specification" \
name="SNIA Multipath Management API Common Library"
legacy pkg=SUNWmpapir \
diff --git a/usr/src/pkg/manifests/system-library.man4.inc b/usr/src/pkg/manifests/system-library.man4.inc
deleted file mode 100644
index e9e72778ac..0000000000
--- a/usr/src/pkg/manifests/system-library.man4.inc
+++ /dev/null
@@ -1,15 +0,0 @@
-#
-# This file and its contents are supplied under the terms of the
-# Common Development and Distribution License ("CDDL"), version 1.0.
-# You may only use this file in accordance with the terms of version
-# 1.0 of the CDDL.
-#
-# A full copy of the text of the CDDL should have accompanied this
-# source. A copy of the CDDL is also available via the Internet
-# at http://www.illumos.org/license/CDDL.
-#
-
-# Copyright 2011, Richard Lowe
-
-file path=usr/share/man/man4/nss.4
-file path=usr/share/man/man4/resolv.conf.4
diff --git a/usr/src/pkg/manifests/system-library.man4p.inc b/usr/src/pkg/manifests/system-library.man4p.inc
new file mode 100644
index 0000000000..27ae3383ca
--- /dev/null
+++ b/usr/src/pkg/manifests/system-library.man4p.inc
@@ -0,0 +1,14 @@
+#
+# This file and its contents are supplied under the terms of the
+# Common Development and Distribution License ("CDDL"), version 1.0.
+# You may only use this file in accordance with the terms of version
+# 1.0 of the CDDL.
+#
+# A full copy of the text of the CDDL should have accompanied this
+# source. A copy of the CDDL is also available via the Internet
+# at http://www.illumos.org/license/CDDL.
+#
+
+# Copyright 2011, Richard Lowe
+
+file path=usr/share/man/man4p/sip.4p
diff --git a/usr/src/pkg/manifests/system-library.man5.inc b/usr/src/pkg/manifests/system-library.man5.inc
index 25f7ae96a1..e30abf7fe9 100644
--- a/usr/src/pkg/manifests/system-library.man5.inc
+++ b/usr/src/pkg/manifests/system-library.man5.inc
@@ -9,63 +9,7 @@
# at http://www.illumos.org/license/CDDL.
#
-#
# Copyright 2011, Richard Lowe
-# Copyright 2014 Nexenta Systems, Inc.
-#
-link path=usr/share/man/man5/advance.5 target=regexp.5
-file path=usr/share/man/man5/audit_binfile.5
-file path=usr/share/man/man5/audit_remote.5
-file path=usr/share/man/man5/audit_syslog.5
-file path=usr/share/man/man5/byteorder.5
-file path=usr/share/man/man5/cancellation.5
-file path=usr/share/man/man5/charmap.5
-link path=usr/share/man/man5/compile.5 target=regexp.5
-file path=usr/share/man/man5/condition.5
-file path=usr/share/man/man5/crypt_bsdbf.5
-file path=usr/share/man/man5/crypt_bsdmd5.5
-file path=usr/share/man/man5/crypt_sha256.5
-file path=usr/share/man/man5/crypt_sha512.5
-file path=usr/share/man/man5/crypt_sunmd5.5
-file path=usr/share/man/man5/crypt_unix.5
-link path=usr/share/man/man5/endian.5 target=byteorder.5
-file path=usr/share/man/man5/environ.5
-file path=usr/share/man/man5/eventfd.5
-file path=usr/share/man/man5/extendedFILE.5
-file path=usr/share/man/man5/fnmatch.5
-file path=usr/share/man/man5/isalist.5
-file path=usr/share/man/man5/largefile.5
-file path=usr/share/man/man5/lf64.5
-file path=usr/share/man/man5/lfcompile.5
-file path=usr/share/man/man5/lfcompile64.5
-file path=usr/share/man/man5/locale.5
-file path=usr/share/man/man5/mutex.5
-file path=usr/share/man/man5/pam_allow.5
-file path=usr/share/man/man5/pam_authtok_check.5
-file path=usr/share/man/man5/pam_authtok_get.5
-file path=usr/share/man/man5/pam_authtok_store.5
-file path=usr/share/man/man5/pam_deny.5
-file path=usr/share/man/man5/pam_dhkeys.5
-file path=usr/share/man/man5/pam_dial_auth.5
-file path=usr/share/man/man5/pam_ldap.5
-file path=usr/share/man/man5/pam_list.5
-file path=usr/share/man/man5/pam_passwd_auth.5
-file path=usr/share/man/man5/pam_rhosts_auth.5
-file path=usr/share/man/man5/pam_roles.5
-file path=usr/share/man/man5/pam_sample.5
-file path=usr/share/man/man5/pam_timestamp.5
-file path=usr/share/man/man5/pam_tsol_account.5
-file path=usr/share/man/man5/pam_unix_account.5
-file path=usr/share/man/man5/pam_unix_auth.5
-file path=usr/share/man/man5/pam_unix_cred.5
-file path=usr/share/man/man5/pam_unix_session.5
-file path=usr/share/man/man5/pkcs11_kernel.5
-file path=usr/share/man/man5/pkcs11_softtoken.5
-file path=usr/share/man/man5/pkcs11_tpm.5
-link path=usr/share/man/man5/pthreads.5 target=threads.5
-file path=usr/share/man/man5/regex.5
-file path=usr/share/man/man5/regexp.5
-link path=usr/share/man/man5/step.5 target=regexp.5
-file path=usr/share/man/man5/threads.5
-file path=usr/share/man/man5/timerfd.5
+file path=usr/share/man/man5/nss.5
+file path=usr/share/man/man5/resolv.conf.5
diff --git a/usr/src/pkg/manifests/system-library.man7.inc b/usr/src/pkg/manifests/system-library.man7.inc
new file mode 100644
index 0000000000..fd0cbaca66
--- /dev/null
+++ b/usr/src/pkg/manifests/system-library.man7.inc
@@ -0,0 +1,71 @@
+#
+# This file and its contents are supplied under the terms of the
+# Common Development and Distribution License ("CDDL"), version 1.0.
+# You may only use this file in accordance with the terms of version
+# 1.0 of the CDDL.
+#
+# A full copy of the text of the CDDL should have accompanied this
+# source. A copy of the CDDL is also available via the Internet
+# at http://www.illumos.org/license/CDDL.
+#
+
+#
+# Copyright 2011, Richard Lowe
+# Copyright 2014 Nexenta Systems, Inc.
+#
+
+link path=usr/share/man/man7/advance.7 target=regexp.7
+file path=usr/share/man/man7/audit_binfile.7
+file path=usr/share/man/man7/audit_remote.7
+file path=usr/share/man/man7/audit_syslog.7
+file path=usr/share/man/man7/byteorder.7
+file path=usr/share/man/man7/cancellation.7
+file path=usr/share/man/man7/charmap.7
+link path=usr/share/man/man7/compile.7 target=regexp.7
+file path=usr/share/man/man7/condition.7
+file path=usr/share/man/man7/crypt_bsdbf.7
+file path=usr/share/man/man7/crypt_bsdmd5.7
+file path=usr/share/man/man7/crypt_sha256.7
+file path=usr/share/man/man7/crypt_sha512.7
+file path=usr/share/man/man7/crypt_sunmd5.7
+file path=usr/share/man/man7/crypt_unix.7
+link path=usr/share/man/man7/endian.7 target=byteorder.7
+file path=usr/share/man/man7/environ.7
+file path=usr/share/man/man7/eventfd.7
+file path=usr/share/man/man7/extendedFILE.7
+file path=usr/share/man/man7/fnmatch.7
+file path=usr/share/man/man7/isalist.7
+file path=usr/share/man/man7/largefile.7
+file path=usr/share/man/man7/lf64.7
+file path=usr/share/man/man7/lfcompile.7
+file path=usr/share/man/man7/lfcompile64.7
+file path=usr/share/man/man7/locale.7
+file path=usr/share/man/man7/mutex.7
+file path=usr/share/man/man7/pam_allow.7
+file path=usr/share/man/man7/pam_authtok_check.7
+file path=usr/share/man/man7/pam_authtok_get.7
+file path=usr/share/man/man7/pam_authtok_store.7
+file path=usr/share/man/man7/pam_deny.7
+file path=usr/share/man/man7/pam_dhkeys.7
+file path=usr/share/man/man7/pam_dial_auth.7
+file path=usr/share/man/man7/pam_ldap.7
+file path=usr/share/man/man7/pam_list.7
+file path=usr/share/man/man7/pam_passwd_auth.7
+file path=usr/share/man/man7/pam_rhosts_auth.7
+file path=usr/share/man/man7/pam_roles.7
+file path=usr/share/man/man7/pam_sample.7
+file path=usr/share/man/man7/pam_timestamp.7
+file path=usr/share/man/man7/pam_tsol_account.7
+file path=usr/share/man/man7/pam_unix_account.7
+file path=usr/share/man/man7/pam_unix_auth.7
+file path=usr/share/man/man7/pam_unix_cred.7
+file path=usr/share/man/man7/pam_unix_session.7
+file path=usr/share/man/man7/pkcs11_kernel.7
+file path=usr/share/man/man7/pkcs11_softtoken.7
+file path=usr/share/man/man7/pkcs11_tpm.7
+link path=usr/share/man/man7/pthreads.7 target=threads.7
+file path=usr/share/man/man7/regex.7
+file path=usr/share/man/man7/regexp.7
+link path=usr/share/man/man7/step.7 target=regexp.7
+file path=usr/share/man/man7/threads.7
+file path=usr/share/man/man7/timerfd.7
diff --git a/usr/src/pkg/manifests/system-library.man7p.inc b/usr/src/pkg/manifests/system-library.man7p.inc
deleted file mode 100644
index 410c3307c7..0000000000
--- a/usr/src/pkg/manifests/system-library.man7p.inc
+++ /dev/null
@@ -1,14 +0,0 @@
-#
-# This file and its contents are supplied under the terms of the
-# Common Development and Distribution License ("CDDL"), version 1.0.
-# You may only use this file in accordance with the terms of version
-# 1.0 of the CDDL.
-#
-# A full copy of the text of the CDDL should have accompanied this
-# source. A copy of the CDDL is also available via the Internet
-# at http://www.illumos.org/license/CDDL.
-#
-
-# Copyright 2011, Richard Lowe
-
-file path=usr/share/man/man7p/sip.7p
diff --git a/usr/src/pkg/manifests/system-library.p5m b/usr/src/pkg/manifests/system-library.p5m
index c133104787..9474855821 100644
--- a/usr/src/pkg/manifests/system-library.p5m
+++ b/usr/src/pkg/manifests/system-library.p5m
@@ -73,9 +73,9 @@
<include system-library.man3volmgt.inc>
<include system-library.man3xcurses.inc>
<include system-library.man3xnet.inc>
-<include system-library.man4.inc>
+<include system-library.man4p.inc>
<include system-library.man5.inc>
-<include system-library.man7p.inc>
+<include system-library.man7.inc>
set name=pkg.fmri value=pkg:/system/library@$(PKGVERS)
set name=pkg.summary value="Core Solaris, (Shared Libs)"
set name=pkg.description \
@@ -1223,8 +1223,8 @@ dir path=usr/share/man/man3uuid
dir path=usr/share/man/man3volmgt
dir path=usr/share/man/man3xcurses
dir path=usr/share/man/man3xnet
+dir path=usr/share/man/man4p
dir path=usr/share/man/man5
-dir path=usr/share/man/man7p
dir path=usr/xpg4
dir path=usr/xpg4/lib
dir path=usr/xpg4/lib/$(ARCH64)
diff --git a/usr/src/pkg/manifests/system-man.p5m b/usr/src/pkg/manifests/system-man.p5m
index 83f8dba15a..bf90842710 100644
--- a/usr/src/pkg/manifests/system-man.p5m
+++ b/usr/src/pkg/manifests/system-man.p5m
@@ -43,15 +43,15 @@ file path=usr/share/man/man1/apropos.1
file path=usr/share/man/man1/man.1
file path=usr/share/man/man1/mandoc.1
link path=usr/share/man/man1/whatis.1 target=apropos.1
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/catman.1m
-dir path=usr/share/man/man5
-file path=usr/share/man/man5/eqn.5
-file path=usr/share/man/man5/man.5
-file path=usr/share/man/man5/mandoc_char.5
-file path=usr/share/man/man5/mandoc_roff.5
-file path=usr/share/man/man5/mdoc.5
-file path=usr/share/man/man5/tbl.5
+dir path=usr/share/man/man7
+file path=usr/share/man/man7/eqn.7
+file path=usr/share/man/man7/man.7
+file path=usr/share/man/man7/mandoc_char.7
+file path=usr/share/man/man7/mandoc_roff.7
+file path=usr/share/man/man7/mdoc.7
+file path=usr/share/man/man7/tbl.7
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/catman.8
license lic_CDDL license=lic_CDDL
license usr/src/cmd/man/THIRDPARTYLICENSE \
license=usr/src/cmd/man/THIRDPARTYLICENSE
diff --git a/usr/src/pkg/manifests/system-management-pcitool.p5m b/usr/src/pkg/manifests/system-management-pcitool.p5m
index 94987d567b..24b53d27aa 100644
--- a/usr/src/pkg/manifests/system-management-pcitool.p5m
+++ b/usr/src/pkg/manifests/system-management-pcitool.p5m
@@ -41,8 +41,8 @@ dir path=usr/sbin
file path=usr/sbin/pcitool mode=0555
dir path=usr/share
dir path=usr/share/man
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/pcitool.1m
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/pcitool.8
legacy pkg=SUNWio-tools \
desc="Administrative tools to modify the pci/pcie fabric" \
name="Administrative tools to modify the pci/pcie fabric"
diff --git a/usr/src/pkg/manifests/system-monitoring-arcstat.p5m b/usr/src/pkg/manifests/system-monitoring-arcstat.p5m
index 44b0ef87b0..bf0fa2c6a1 100644
--- a/usr/src/pkg/manifests/system-monitoring-arcstat.p5m
+++ b/usr/src/pkg/manifests/system-monitoring-arcstat.p5m
@@ -22,6 +22,6 @@ dir path=usr/bin
file path=usr/bin/arcstat mode=0555
dir path=usr/share
dir path=usr/share/man
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/arcstat.1m
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/arcstat.8
license lic_CDDL license=lic_CDDL
diff --git a/usr/src/pkg/manifests/system-network-http-cache-accelerator.p5m b/usr/src/pkg/manifests/system-network-http-cache-accelerator.p5m
index e2b1c6e355..d91d4af8f3 100644
--- a/usr/src/pkg/manifests/system-network-http-cache-accelerator.p5m
+++ b/usr/src/pkg/manifests/system-network-http-cache-accelerator.p5m
@@ -89,14 +89,14 @@ file path=usr/share/man/man1/nca.1
file path=usr/share/man/man1/ncab2clf.1
file path=usr/share/man/man1/ncakmod.1
link path=usr/share/man/man1/snca.1 target=nca.1
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/ncaconfd.1m
-dir path=usr/share/man/man4
-file path=usr/share/man/man4/nca.if.4
-file path=usr/share/man/man4/ncad_addr.4
-file path=usr/share/man/man4/ncakmod.conf.4
-file path=usr/share/man/man4/ncalogd.conf.4
-file path=usr/share/man/man4/ncaport.conf.4
+dir path=usr/share/man/man5
+file path=usr/share/man/man5/nca.if.5
+file path=usr/share/man/man5/ncad_addr.5
+file path=usr/share/man/man5/ncakmod.conf.5
+file path=usr/share/man/man5/ncalogd.conf.5
+file path=usr/share/man/man5/ncaport.conf.5
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/ncaconfd.8
driver name=nca
legacy pkg=SUNWncar \
desc="core components to enable the network cache and accelerator" \
diff --git a/usr/src/pkg/manifests/system-network-ipqos-ipqos-config.p5m b/usr/src/pkg/manifests/system-network-ipqos-ipqos-config.p5m
index e34f200ffc..13bcb2657f 100644
--- a/usr/src/pkg/manifests/system-network-ipqos-ipqos-config.p5m
+++ b/usr/src/pkg/manifests/system-network-ipqos-ipqos-config.p5m
@@ -48,14 +48,14 @@ file path=kernel/ipp/$(ARCH64)/flowacct group=sys mode=0755
file path=kernel/ipp/$(ARCH64)/tokenmt group=sys mode=0755
file path=kernel/ipp/$(ARCH64)/tswtclmt group=sys mode=0755
dir path=usr/share/man
-dir path=usr/share/man/man7ipp
-file path=usr/share/man/man7ipp/dlcosmk.7ipp
-file path=usr/share/man/man7ipp/dscpmk.7ipp
-file path=usr/share/man/man7ipp/flowacct.7ipp
-file path=usr/share/man/man7ipp/ipgpc.7ipp
-file path=usr/share/man/man7ipp/ipqos.7ipp
-file path=usr/share/man/man7ipp/tokenmt.7ipp
-file path=usr/share/man/man7ipp/tswtclmt.7ipp
+dir path=usr/share/man/man4ipp
+file path=usr/share/man/man4ipp/dlcosmk.4ipp
+file path=usr/share/man/man4ipp/dscpmk.4ipp
+file path=usr/share/man/man4ipp/flowacct.4ipp
+file path=usr/share/man/man4ipp/ipgpc.4ipp
+file path=usr/share/man/man4ipp/ipqos.4ipp
+file path=usr/share/man/man4ipp/tokenmt.4ipp
+file path=usr/share/man/man4ipp/tswtclmt.4ipp
legacy pkg=SUNWqos desc="Solaris IP Quality of Service (Root)" \
name="IP QoS, (Root)"
license cr_Sun license=cr_Sun
diff --git a/usr/src/pkg/manifests/system-network-ipqos.p5m b/usr/src/pkg/manifests/system-network-ipqos.p5m
index 78bdfb6bae..74cdd9192e 100644
--- a/usr/src/pkg/manifests/system-network-ipqos.p5m
+++ b/usr/src/pkg/manifests/system-network-ipqos.p5m
@@ -55,8 +55,8 @@ file path=usr/lib/ipqosconf/tokenmt.types mode=0444
file path=usr/lib/ipqosconf/tswtclmt.types mode=0444
dir path=usr/sbin
file path=usr/sbin/ipqosconf mode=0755
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/ipqosconf.1m
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/ipqosconf.8
legacy pkg=SUNWqosu desc="Solaris IP Quality of Service (Usr)" \
name="IP QoS, (Usr)"
license cr_Sun license=cr_Sun
diff --git a/usr/src/pkg/manifests/system-network-mailwrapper.p5m b/usr/src/pkg/manifests/system-network-mailwrapper.p5m
index d7501c918e..4db0e35731 100644
--- a/usr/src/pkg/manifests/system-network-mailwrapper.p5m
+++ b/usr/src/pkg/manifests/system-network-mailwrapper.p5m
@@ -36,10 +36,10 @@ link path=usr/sbin/newaliases target=../lib/mailwrapper mediator=mta \
link path=usr/sbin/sendmail target=../lib/mailwrapper mediator=mta \
mediator-implementation=mailwrapper
dir path=usr/share/man
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/mailwrapper.1m
-dir path=usr/share/man/man4
-file path=usr/share/man/man4/mailer.conf.4
+dir path=usr/share/man/man5
+file path=usr/share/man/man5/mailer.conf.5
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/mailwrapper.8
license usr/src/cmd/mailwrapper/THIRDPARTYLICENSE \
license=usr/src/cmd/mailwrapper/THIRDPARTYLICENSE
depend type=require fmri=service/network/smtp/sendmail
diff --git a/usr/src/pkg/manifests/system-network-nis.p5m b/usr/src/pkg/manifests/system-network-nis.p5m
index 0a85825c4b..3d4ad03af7 100644
--- a/usr/src/pkg/manifests/system-network-nis.p5m
+++ b/usr/src/pkg/manifests/system-network-nis.p5m
@@ -79,25 +79,25 @@ file path=usr/share/man/man1/ypcat.1
file path=usr/share/man/man1/ypmatch.1
file path=usr/share/man/man1/yppasswd.1
file path=usr/share/man/man1/ypwhich.1
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/idsconfig.1m
-file path=usr/share/man/man1m/ldap_cachemgr.1m
-file path=usr/share/man/man1m/ldapaddent.1m
-file path=usr/share/man/man1m/ldapclient.1m
-file path=usr/share/man/man1m/newkey.1m
-file path=usr/share/man/man1m/ypbind.1m
-file path=usr/share/man/man1m/ypinit.1m
-file path=usr/share/man/man1m/yppoll.1m
-file path=usr/share/man/man1m/ypset.1m
-file path=usr/share/man/man1m/ypstart.1m
-link path=usr/share/man/man1m/ypstop.1m target=ypstart.1m
-file path=usr/share/man/man1m/ypxfr.1m
-link path=usr/share/man/man1m/ypxfr_1perday.1m target=ypxfr.1m
-link path=usr/share/man/man1m/ypxfr_1perhour.1m target=ypxfr.1m
-link path=usr/share/man/man1m/ypxfr_2perday.1m target=ypxfr.1m
-dir path=usr/share/man/man4
-file path=usr/share/man/man4/defaultdomain.4
-file path=usr/share/man/man4/publickey.4
+dir path=usr/share/man/man5
+file path=usr/share/man/man5/defaultdomain.5
+file path=usr/share/man/man5/publickey.5
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/idsconfig.8
+file path=usr/share/man/man8/ldap_cachemgr.8
+file path=usr/share/man/man8/ldapaddent.8
+file path=usr/share/man/man8/ldapclient.8
+file path=usr/share/man/man8/newkey.8
+file path=usr/share/man/man8/ypbind.8
+file path=usr/share/man/man8/ypinit.8
+file path=usr/share/man/man8/yppoll.8
+file path=usr/share/man/man8/ypset.8
+file path=usr/share/man/man8/ypstart.8
+link path=usr/share/man/man8/ypstop.8 target=ypstart.8
+file path=usr/share/man/man8/ypxfr.8
+link path=usr/share/man/man8/ypxfr_1perday.8 target=ypxfr.8
+link path=usr/share/man/man8/ypxfr_1perhour.8 target=ypxfr.8
+link path=usr/share/man/man8/ypxfr_2perday.8 target=ypxfr.8
dir path=var group=sys
dir path=var/ldap group=sys
dir path=var/yp
diff --git a/usr/src/pkg/manifests/system-network-overlay.p5m b/usr/src/pkg/manifests/system-network-overlay.p5m
index 8cdbd10775..ce24882834 100644
--- a/usr/src/pkg/manifests/system-network-overlay.p5m
+++ b/usr/src/pkg/manifests/system-network-overlay.p5m
@@ -51,12 +51,12 @@ link path=usr/lib/varpd/libvarpd_files.so target=libvarpd_files.so.1
file path=usr/lib/varpd/libvarpd_files.so.1
file path=usr/lib/varpd/varpd mode=0555
dir path=usr/share/man
-dir path=usr/share/man/man4
-file path=usr/share/man/man4/overlay_files.4
+dir path=usr/share/man/man4p
+link path=usr/share/man/man4p/VXLAN.4p target=vxlan.4p
+file path=usr/share/man/man4p/vxlan.4p mode=0444
dir path=usr/share/man/man5
-file path=usr/share/man/man5/overlay.5
-dir path=usr/share/man/man7p
-link path=usr/share/man/man7p/VXLAN.7p target=vxlan.7p
-file usr/share/man/man7p/vxlan.7p path=usr/share/man/man7p/vxlan.7p mode=0444
+file path=usr/share/man/man5/overlay_files.5
+dir path=usr/share/man/man7
+file path=usr/share/man/man7/overlay.7
driver name=overlay
license lic_CDDL license=lic_CDDL
diff --git a/usr/src/pkg/manifests/system-network-ppp-pppdump.p5m b/usr/src/pkg/manifests/system-network-ppp-pppdump.p5m
index a0af439544..6820d7e82a 100644
--- a/usr/src/pkg/manifests/system-network-ppp-pppdump.p5m
+++ b/usr/src/pkg/manifests/system-network-ppp-pppdump.p5m
@@ -38,8 +38,8 @@ file path=usr/lib/inet/ppp/minconn.so mode=0544
file path=usr/lib/inet/ppp/passprompt.so mode=0544
dir path=usr/share
dir path=usr/share/man
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/pppdump.1m
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/pppdump.8
legacy pkg=SUNWpppg desc="Optional GNU utilities for use with PPP" \
name="GNU utilities for PPP"
license cr_Sun license=cr_Sun
diff --git a/usr/src/pkg/manifests/system-network-ppp-tunnel.p5m b/usr/src/pkg/manifests/system-network-ppp-tunnel.p5m
index 67d943843e..4d754a6dc2 100644
--- a/usr/src/pkg/manifests/system-network-ppp-tunnel.p5m
+++ b/usr/src/pkg/manifests/system-network-ppp-tunnel.p5m
@@ -37,10 +37,10 @@ file path=usr/lib/inet/pppoec mode=0555
file path=usr/lib/inet/pppoed mode=0555
dir path=usr/sbin
file path=usr/sbin/sppptun mode=0555
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/pppoec.1m
-file path=usr/share/man/man1m/pppoed.1m
-file path=usr/share/man/man1m/sppptun.1m
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/pppoec.8
+file path=usr/share/man/man8/pppoed.8
+file path=usr/share/man/man8/sppptun.8
legacy pkg=SUNWpppdt desc="Extensions implementing PPP tunneling protocols" \
name="Solaris PPP Tunneling"
license cr_Sun license=cr_Sun
diff --git a/usr/src/pkg/manifests/system-network-ppp.p5m b/usr/src/pkg/manifests/system-network-ppp.p5m
index bd17ed1bf9..b52adb8490 100644
--- a/usr/src/pkg/manifests/system-network-ppp.p5m
+++ b/usr/src/pkg/manifests/system-network-ppp.p5m
@@ -74,12 +74,12 @@ hardlink path=usr/kernel/strmod/$(ARCH64)/sppptun \
dir path=usr/sbin
file path=usr/sbin/asppp2pppd mode=0550
dir path=usr/share/man
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/chat.1m
-file path=usr/share/man/man1m/pppd.1m
-file path=usr/share/man/man1m/pppstats.1m
-dir path=usr/share/man/man7m
-file path=usr/share/man/man7m/sppptun.7m
+dir path=usr/share/man/man4m
+file path=usr/share/man/man4m/sppptun.4m
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/chat.8
+file path=usr/share/man/man8/pppd.8
+file path=usr/share/man/man8/pppstats.8
driver name=sppp
driver name=sppptun
legacy pkg=SUNWpppd \
diff --git a/usr/src/pkg/manifests/system-network-routing.p5m b/usr/src/pkg/manifests/system-network-routing.p5m
index 1c14680a53..972f81adeb 100644
--- a/usr/src/pkg/manifests/system-network-routing.p5m
+++ b/usr/src/pkg/manifests/system-network-routing.p5m
@@ -53,16 +53,16 @@ file path=usr/sbin/in.rdisc mode=0555
file path=usr/sbin/in.routed mode=0555
file path=usr/sbin/rtquery mode=0555
dir path=usr/share/man
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/in.ndpd.1m
-file path=usr/share/man/man1m/in.rdisc.1m
-file path=usr/share/man/man1m/in.ripngd.1m
-file path=usr/share/man/man1m/in.routed.1m
-link path=usr/share/man/man1m/rdisc.1m target=in.rdisc.1m
-link path=usr/share/man/man1m/routed.1m target=in.routed.1m
-file path=usr/share/man/man1m/rtquery.1m
-dir path=usr/share/man/man4
-file path=usr/share/man/man4/gateways.4
+dir path=usr/share/man/man5
+file path=usr/share/man/man5/gateways.5
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/in.ndpd.8
+file path=usr/share/man/man8/in.rdisc.8
+file path=usr/share/man/man8/in.ripngd.8
+file path=usr/share/man/man8/in.routed.8
+link path=usr/share/man/man8/rdisc.8 target=in.rdisc.8
+link path=usr/share/man/man8/routed.8 target=in.routed.8
+file path=usr/share/man/man8/rtquery.8
legacy pkg=SUNWroute desc="Network Routing daemons/commands (Usr)" \
name="Network Routing daemons/commands (Usr)"
legacy pkg=SUNWroutr desc="Network Routing daemons/commands (Root)" \
diff --git a/usr/src/pkg/manifests/system-network-spdadm.p5m b/usr/src/pkg/manifests/system-network-spdadm.p5m
index 202aa5d7fc..5bda03ee75 100644
--- a/usr/src/pkg/manifests/system-network-spdadm.p5m
+++ b/usr/src/pkg/manifests/system-network-spdadm.p5m
@@ -41,8 +41,8 @@ dir path=usr/lib/rcm/scripts
file path=usr/lib/rcm/scripts/SUNW,ibsdpu.sh mode=0555
dir path=usr/sbin
file path=usr/sbin/sdpadm mode=0555
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/sdpadm.1m
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/sdpadm.8
legacy pkg=SUNWibsdpu desc="Sun InfiniBand Sockets Direct Protocol Admin" \
name="Sun InfiniBand pseudo Sockets Direct Protocol Admin"
license cr_Sun license=cr_Sun
diff --git a/usr/src/pkg/manifests/system-network-udapl.p5m b/usr/src/pkg/manifests/system-network-udapl.p5m
index 98945e844b..485fed6dc9 100644
--- a/usr/src/pkg/manifests/system-network-udapl.p5m
+++ b/usr/src/pkg/manifests/system-network-udapl.p5m
@@ -50,8 +50,6 @@ file path=usr/lib/libdat.so.1
dir path=usr/sbin
file path=usr/sbin/datadm mode=0555
dir path=usr/share/man
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/datadm.1m
dir path=usr/share/man/man3dat
file path=usr/share/man/man3dat/dat_cno_create.3dat
file path=usr/share/man/man3dat/dat_cno_free.3dat
@@ -128,8 +126,10 @@ file path=usr/share/man/man3dat/dat_srq_set_lw.3dat
file path=usr/share/man/man3dat/dat_strerror.3dat
dir path=usr/share/man/man3lib
file path=usr/share/man/man3lib/libdat.3lib
-dir path=usr/share/man/man4
-file path=usr/share/man/man4/dat.conf.4
+dir path=usr/share/man/man5
+file path=usr/share/man/man5/dat.conf.5
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/datadm.8
legacy pkg=SUNWudaplr desc="DAT static registry file" \
name="Sun User Direct Access Programming Library (Root)"
legacy pkg=SUNWudaplu desc="Sun DAT registry library and datadm" \
diff --git a/usr/src/pkg/manifests/system-network-wificonfig.p5m b/usr/src/pkg/manifests/system-network-wificonfig.p5m
index d9d85020bc..497a8e64ce 100644
--- a/usr/src/pkg/manifests/system-network-wificonfig.p5m
+++ b/usr/src/pkg/manifests/system-network-wificonfig.p5m
@@ -34,8 +34,8 @@ file path=sbin/wificonfig mode=4755
dir path=usr group=sys
dir path=usr/sbin
link path=usr/sbin/wificonfig target=../../sbin/wificonfig
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/wificonfig.1m
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/wificonfig.8
legacy pkg=SUNWwlanr desc="wifi config tool binaries" name="wifi config tool"
legacy pkg=SUNWwlanu desc="wifi config tool" name="wifi config tool"
license cr_Sun license=cr_Sun
diff --git a/usr/src/pkg/manifests/system-network.p5m b/usr/src/pkg/manifests/system-network.p5m
index 69bfc0f363..cfe8ac1500 100644
--- a/usr/src/pkg/manifests/system-network.p5m
+++ b/usr/src/pkg/manifests/system-network.p5m
@@ -85,10 +85,10 @@ file path=usr/lib/dl/dlrecv mode=0555
file path=usr/lib/dl/dlsend mode=0555
file path=usr/lib/dl/dltraninfo mode=0555
dir path=usr/share/man
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/dladm.1m
-file path=usr/share/man/man1m/flowadm.1m
-file path=usr/share/man/man1m/ipadm.1m
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/dladm.8
+file path=usr/share/man/man8/flowadm.8
+file path=usr/share/man/man8/ipadm.8
group groupname=netadm gid=65
user username=dladm ftpuser=false gcos-field="Datalink Admin" group=netadm \
uid=15
diff --git a/usr/src/pkg/manifests/system-scheduler-fss.p5m b/usr/src/pkg/manifests/system-scheduler-fss.p5m
index 39d4d72e75..0369584bfa 100644
--- a/usr/src/pkg/manifests/system-scheduler-fss.p5m
+++ b/usr/src/pkg/manifests/system-scheduler-fss.p5m
@@ -39,8 +39,8 @@ dir path=usr/lib/class/FSS
file path=usr/lib/class/FSS/FSSdispadmin mode=0555
file path=usr/lib/class/FSS/FSSpriocntl mode=0555
dir path=usr/share/man
-dir path=usr/share/man/man7
-file path=usr/share/man/man7/FSS.7
+dir path=usr/share/man/man4
+file path=usr/share/man/man4/FSS.4
legacy pkg=SUNWfss desc="core software for the fair share scheduler" \
name="Fair Share Scheduler"
license cr_Sun license=cr_Sun
diff --git a/usr/src/pkg/manifests/system-security-kerberos-5.p5m b/usr/src/pkg/manifests/system-security-kerberos-5.p5m
index 8ee7a52924..fa943d74ad 100644
--- a/usr/src/pkg/manifests/system-security-kerberos-5.p5m
+++ b/usr/src/pkg/manifests/system-security-kerberos-5.p5m
@@ -91,28 +91,28 @@ dir path=usr/share/lib
dir path=usr/share/lib/ldif group=sys
file path=usr/share/lib/ldif/kerberos.ldif
dir path=usr/share/man
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/k5srvutil.1m
-file path=usr/share/man/man1m/kadmin.1m
-link path=usr/share/man/man1m/kadmin.local.1m target=kadmin.1m
-file path=usr/share/man/man1m/kadmind.1m
-file path=usr/share/man/man1m/kclient.1m
-file path=usr/share/man/man1m/kdb5_ldap_util.1m
-file path=usr/share/man/man1m/kdb5_util.1m
-file path=usr/share/man/man1m/kdcmgr.1m
-file path=usr/share/man/man1m/kprop.1m
-file path=usr/share/man/man1m/kpropd.1m
-file path=usr/share/man/man1m/kproplog.1m
-file path=usr/share/man/man1m/krb5kdc.1m
-dir path=usr/share/man/man4
-file path=usr/share/man/man4/kadm5.acl.4
-file path=usr/share/man/man4/kdc.conf.4
-file path=usr/share/man/man4/krb5.conf.4
-file path=usr/share/man/man4/warn.conf.4
dir path=usr/share/man/man5
-file path=usr/share/man/man5/kerberos.5
-file path=usr/share/man/man5/krb5_auth_rules.5
-file path=usr/share/man/man5/krb5envvar.5
+file path=usr/share/man/man5/kadm5.acl.5
+file path=usr/share/man/man5/kdc.conf.5
+file path=usr/share/man/man5/krb5.conf.5
+file path=usr/share/man/man5/warn.conf.5
+dir path=usr/share/man/man7
+file path=usr/share/man/man7/kerberos.7
+file path=usr/share/man/man7/krb5_auth_rules.7
+file path=usr/share/man/man7/krb5envvar.7
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/k5srvutil.8
+file path=usr/share/man/man8/kadmin.8
+link path=usr/share/man/man8/kadmin.local.8 target=kadmin.8
+file path=usr/share/man/man8/kadmind.8
+file path=usr/share/man/man8/kclient.8
+file path=usr/share/man/man8/kdb5_ldap_util.8
+file path=usr/share/man/man8/kdb5_util.8
+file path=usr/share/man/man8/kdcmgr.8
+file path=usr/share/man/man8/kprop.8
+file path=usr/share/man/man8/kpropd.8
+file path=usr/share/man/man8/kproplog.8
+file path=usr/share/man/man8/krb5kdc.8
dir path=var group=sys
dir path=var/krb5 group=sys
legacy pkg=SUNWkdcr desc="Kerberos V5 KDC (root)" name="Kerberos V5 KDC (root)"
diff --git a/usr/src/pkg/manifests/system-storage-fibre-channel-port-utility.p5m b/usr/src/pkg/manifests/system-storage-fibre-channel-port-utility.p5m
index 061d3175a9..a583e27142 100644
--- a/usr/src/pkg/manifests/system-storage-fibre-channel-port-utility.p5m
+++ b/usr/src/pkg/manifests/system-storage-fibre-channel-port-utility.p5m
@@ -49,9 +49,9 @@ dir path=usr group=sys
dir path=usr/sbin
hardlink path=usr/sbin/fcadm target=../../usr/sbin/fcinfo
file path=usr/sbin/fcinfo mode=0555
-dir path=usr/share/man/man1m
-link path=usr/share/man/man1m/fcadm.1m target=fcinfo.1m
-file path=usr/share/man/man1m/fcinfo.1m
+dir path=usr/share/man/man8
+link path=usr/share/man/man8/fcadm.8 target=fcinfo.8
+file path=usr/share/man/man8/fcinfo.8
legacy pkg=SUNWfcprt desc="Utility for Fibre Channel Host Bus Adapters" \
name="Fibre Channel HBA Port utility"
legacy pkg=SUNWfcprtr \
diff --git a/usr/src/pkg/manifests/system-storage-luxadm.p5m b/usr/src/pkg/manifests/system-storage-luxadm.p5m
index 6f53351126..f85ffd7630 100644
--- a/usr/src/pkg/manifests/system-storage-luxadm.p5m
+++ b/usr/src/pkg/manifests/system-storage-luxadm.p5m
@@ -39,8 +39,8 @@ $(sparc_ONLY)file path=usr/lib/locale/C/LC_MESSAGES/a5k_g_fc_i18n_cat
$(sparc_ONLY)file path=usr/lib/locale/C/LC_MESSAGES/ibfirmware
dir path=usr/sbin
file path=usr/sbin/luxadm mode=0555 variant.opensolaris.zone=global
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/luxadm.1m
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/luxadm.8
legacy pkg=SUNWluxop \
desc="Sun Enterprise Network Array firmware and utilities" \
name="Sun Enterprise Network Array firmware and utilities"
diff --git a/usr/src/pkg/manifests/system-storage-sasinfo.p5m b/usr/src/pkg/manifests/system-storage-sasinfo.p5m
index 7285e8220a..c1af6c5aa5 100644
--- a/usr/src/pkg/manifests/system-storage-sasinfo.p5m
+++ b/usr/src/pkg/manifests/system-storage-sasinfo.p5m
@@ -57,8 +57,6 @@ file path=usr/lib/libsun_sas.so.1
dir path=usr/sbin
file path=usr/sbin/sasinfo mode=0555
dir path=usr/share/man
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/sasinfo.1m
dir path=usr/share/man/man3lib
link path=usr/share/man/man3lib/SMHBA_GetAdapterAttributes.3lib \
target=libSMHBAAPI.3lib
@@ -127,8 +125,10 @@ link path=usr/share/man/man3lib/SMHBA_SetPersistentBinding.3lib \
target=libSMHBAAPI.3lib
file path=usr/share/man/man3lib/libSMHBAAPI.3lib
link path=usr/share/man/man3lib/libsmhbaapi.3lib target=libSMHBAAPI.3lib
-dir path=usr/share/man/man4
-file path=usr/share/man/man4/smhba.conf.4
+dir path=usr/share/man/man5
+file path=usr/share/man/man5/smhba.conf.5
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/sasinfo.8
legacy pkg=SUNWsmhba desc="T11 Storage Management HBA API Libraries and CLI" \
name="SM-HBA Libraries and CLI"
legacy pkg=SUNWsmhbar \
diff --git a/usr/src/pkg/manifests/system-trusted-global-zone.p5m b/usr/src/pkg/manifests/system-trusted-global-zone.p5m
index 9a313c1ec5..4124162515 100644
--- a/usr/src/pkg/manifests/system-trusted-global-zone.p5m
+++ b/usr/src/pkg/manifests/system-trusted-global-zone.p5m
@@ -77,7 +77,7 @@ dir path=lib/svc/method
file path=lib/svc/method/svc-labeld mode=0555
file path=lib/svc/method/svc-tnctl mode=0555
file path=lib/svc/method/svc-tnd mode=0555
-dir path=usr/share/man/man1m
+dir path=usr/share/man/man8
dir path=var group=sys
dir path=var/tsol group=sys
dir path=var/tsol/doors group=sys
diff --git a/usr/src/pkg/manifests/system-trusted.p5m b/usr/src/pkg/manifests/system-trusted.p5m
index 45443f2d75..55289977a6 100644
--- a/usr/src/pkg/manifests/system-trusted.p5m
+++ b/usr/src/pkg/manifests/system-trusted.p5m
@@ -123,19 +123,19 @@ file path=usr/share/man/man1/getlabel.1
file path=usr/share/man/man1/getzonepath.1
file path=usr/share/man/man1/plabel.1
file path=usr/share/man/man1/setlabel.1
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/add_allocatable.1m
-file path=usr/share/man/man1m/atohexlabel.1m
-file path=usr/share/man/man1m/hextoalabel.1m
-file path=usr/share/man/man1m/remove_allocatable.1m
-file path=usr/share/man/man1m/tnchkdb.1m
-file path=usr/share/man/man1m/tnctl.1m
-file path=usr/share/man/man1m/tnd.1m
-file path=usr/share/man/man1m/tninfo.1m
-file path=usr/share/man/man1m/txzonemgr.1m
-file path=usr/share/man/man1m/updatehome.1m
-dir path=usr/share/man/man5
-file path=usr/share/man/man5/trusted_extensions.5
+dir path=usr/share/man/man7
+file path=usr/share/man/man7/trusted_extensions.7
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/add_allocatable.8
+file path=usr/share/man/man8/atohexlabel.8
+file path=usr/share/man/man8/hextoalabel.8
+file path=usr/share/man/man8/remove_allocatable.8
+file path=usr/share/man/man8/tnchkdb.8
+file path=usr/share/man/man8/tnctl.8
+file path=usr/share/man/man8/tnd.8
+file path=usr/share/man/man8/tninfo.8
+file path=usr/share/man/man8/txzonemgr.8
+file path=usr/share/man/man8/updatehome.8
legacy pkg=SUNWtsr desc="Solaris Trusted Extensions, (Root)" \
name="Trusted Extensions, (Root)"
legacy pkg=SUNWtsu desc="Solaris Trusted Extensions, (Usr)" \
diff --git a/usr/src/pkg/manifests/system-zones.p5m b/usr/src/pkg/manifests/system-zones.p5m
index f122d03231..affc079a1c 100644
--- a/usr/src/pkg/manifests/system-zones.p5m
+++ b/usr/src/pkg/manifests/system-zones.p5m
@@ -100,16 +100,16 @@ dir path=usr/share/man
dir path=usr/share/man/man1
file path=usr/share/man/man1/zlogin.1
file path=usr/share/man/man1/zonestat.1
-dir path=usr/share/man/man1m
-file path=usr/share/man/man1m/zoneadm.1m
-file path=usr/share/man/man1m/zoneadmd.1m
-file path=usr/share/man/man1m/zonecfg.1m
-file path=usr/share/man/man1m/zonestatd.1m
-dir path=usr/share/man/man5
-file path=usr/share/man/man5/brands.5
-file path=usr/share/man/man5/zones.5
-dir path=usr/share/man/man7d
-file path=usr/share/man/man7d/zcons.7d
+dir path=usr/share/man/man4d
+file path=usr/share/man/man4d/zcons.4d
+dir path=usr/share/man/man7
+file path=usr/share/man/man7/brands.7
+file path=usr/share/man/man7/zones.7
+dir path=usr/share/man/man8
+file path=usr/share/man/man8/zoneadm.8
+file path=usr/share/man/man8/zoneadmd.8
+file path=usr/share/man/man8/zonecfg.8
+file path=usr/share/man/man8/zonestatd.8
driver name=zcons
legacy pkg=SUNWzoner desc="Solaris Zones Configuration Files" \
name="Solaris Zones (Root)"
diff --git a/usr/src/pkg/manifests/text-doctools.p5m b/usr/src/pkg/manifests/text-doctools.p5m
index 3a8ff07452..b0cdb4be35 100644
--- a/usr/src/pkg/manifests/text-doctools.p5m
+++ b/usr/src/pkg/manifests/text-doctools.p5m
@@ -316,14 +316,14 @@ file path=usr/share/man/man1/tbl.1
file path=usr/share/man/man1/troff.1
file path=usr/share/man/man1/ul.1
file path=usr/share/man/man1/vgrind.1
-dir path=usr/share/man/man1m
-dir path=usr/share/man/man5
-file path=usr/share/man/man5/eqnchar.5
-file path=usr/share/man/man5/mansun.5
-file path=usr/share/man/man5/me.5
-file path=usr/share/man/man5/mm.5
-file path=usr/share/man/man5/ms.5
-file path=usr/share/man/man5/vgrindefs.5
+dir path=usr/share/man/man7
+file path=usr/share/man/man7/eqnchar.7
+file path=usr/share/man/man7/mansun.7
+file path=usr/share/man/man7/me.7
+file path=usr/share/man/man7/mm.7
+file path=usr/share/man/man7/ms.7
+file path=usr/share/man/man7/vgrindefs.7
+dir path=usr/share/man/man8
legacy pkg=SUNWdoc \
desc="utilities and fonts for development, display, and production of documentation such as manual pages (nroff/troff)" \
name="Documentation Tools"
diff --git a/usr/src/prototypes/prototype.man1 b/usr/src/prototypes/prototype.man1
index f1551578b4..ae83f6bfec 100644
--- a/usr/src/prototypes/prototype.man1
+++ b/usr/src/prototypes/prototype.man1
@@ -25,8 +25,8 @@
.\" Each of the following lines should use the Fl and Ar options to
.\" indicate the set of supported options and flags. There should be one
.\" option and argument per line. If there are independent ways of
-.\" invoking the command or independent sub-commands ala zfs(1M) or
-.\" dladm(1M), there should be a fresh '.Nm' to indicate that and the
+.\" invoking the command or independent sub-commands ala zfs(8) or
+.\" dladm(8), there should be a fresh '.Nm' to indicate that and the
.\" sub-command should use .Cm.
.Sh DESCRIPTION
.\" Describe the purpose of the utility, what it does and how it
@@ -77,7 +77,7 @@ Description of what oper2 is.
.\" .Ev NLSPATH .
.\" .Sh CODE SET INDEPENDENCE
.\" If there are issues around the code set, indicate so here. See
-.\" attributes(5).
+.\" attributes(7).
.Sh INTERFACE STABILITY
.\" When documenting the stability of commands it's useful to
.\" distinguish between the stability of the options and the command's
diff --git a/usr/src/prototypes/prototype.man3x b/usr/src/prototypes/prototype.man3x
index c707abe2d5..52f808ecc8 100644
--- a/usr/src/prototypes/prototype.man3x
+++ b/usr/src/prototypes/prototype.man3x
@@ -59,13 +59,13 @@ A Reason why ERRNO1 could occur.
A Reason why ERRNO2 could occur.
.El
.Sh INTERFACE STABILITY
-.\" Indicate the stability per attributes(5). One of:
+.\" Indicate the stability per attributes(7). One of:
.\" .Sy Committed
.\" .Sy Uncommitted
.\" .Sy Volatile
.\" .Sy Private
.Sh MT-LEVEL
-.\" Indicate the MT-Level per attributes(5). If there are exceptions,
+.\" Indicate the MT-Level per attributes(7). If there are exceptions,
.\" start with the level and go from there.
.\" .Sy Safe
.\" .Sy Unsafe
diff --git a/usr/src/prototypes/prototype.man4d b/usr/src/prototypes/prototype.man4d
new file mode 100644
index 0000000000..038a827666
--- /dev/null
+++ b/usr/src/prototypes/prototype.man4d
@@ -0,0 +1,49 @@
+.\"
+.\" This file and its contents are supplied under the terms of the
+.\" Common Development and Distribution License ("CDDL"), version 1.0.
+.\" You may only use this file in accordance with the terms of version
+.\" 1.0 of the CDDL.
+.\"
+.\" A full copy of the text of the CDDL should have accompanied this
+.\" source. A copy of the CDDL is also available via the Internet at
+.\" http://www.illumos.org/license/CDDL.
+.\"
+.\"
+.\" Copyright 2022 <contributor>
+.\"
+.Dd Month Day, Year
+.Dt DRIVERNAME 4D
+.\" Here and in other places "DRIVERNAME" and "drivername" are place
+.\" holders that should be replaced with the name of the actual driver
+.\" that this is documenting.
+.Os
+.Sh NAME
+.Nm drivername
+.Nd driverdesc
+.Sh SYNOPSIS
+.Pa /dev/node/path
+.Sh DESCRIPTION
+The
+.Nm
+driver <fill out what it does and what devices it supports>. <Describe
+the functionality supported by the driver, e.g. for a NIC TSO, etc.>.
+.\" .Sh APPLICATION PROGRAMMING INTERFACE
+.\" If the user may interact with this driver in a specific way,
+.\" document it. The user may not because this driver is part of a
+.\" broader framework.
+.\" .Sh IOCTLS
+.\" If the driver has a non-standard ioctl interface, document it. If it
+.\" just implements the ones to support a framework, leave this out.
+.\" .Sh CONFIGURATION
+.\" If there is a driver.conf file, please describe the different
+.\" options that can be set and their expected stability.
+.\" .Sh ARCHITECTURE
+.\" If this driver is supported on particular architectures (usually not
+.\" the case for pseudo-devices), then include that.
+.Sh FILES
+.\" List the actual installation path of the driver and a configuration
+.\" file.
+.Sh SEE ALSO
+.\" This list should include user programs or libraries that are relevant to
+.\" the program. A nic might have dladm, a storage device, diskinfo, a
+.\" sensor, fmtopo.
diff --git a/usr/src/prototypes/prototype.man7d b/usr/src/prototypes/prototype.man7d
deleted file mode 100644
index f41cd2e465..0000000000
--- a/usr/src/prototypes/prototype.man7d
+++ /dev/null
@@ -1,49 +0,0 @@
-.\"
-.\" This file and its contents are supplied under the terms of the
-.\" Common Development and Distribution License ("CDDL"), version 1.0.
-.\" You may only use this file in accordance with the terms of version
-.\" 1.0 of the CDDL.
-.\"
-.\" A full copy of the text of the CDDL should have accompanied this
-.\" source. A copy of the CDDL is also available via the Internet at
-.\" http://www.illumos.org/license/CDDL.
-.\"
-.\"
-.\" Copyright 2022 <contributor>
-.\"
-.Dd Month Day, Year
-.Dt DRIVERNAME 7D
-.\" Here and in other places "DRIVERNAME" and "drivername" are place
-.\" holders that should be replaced with the name of the actual driver
-.\" that this is documenting.
-.Os
-.Sh NAME
-.Nm drivername
-.Nd driverdesc
-.Sh SYNOPSIS
-.Pa /dev/node/path
-.Sh DESCRIPTION
-The
-.Nm
-driver <fill out what it does and what devices it supports>. <Describe
-the functionality supported by the driver, e.g. for a NIC TSO, etc.>.
-.\" .Sh APPLICATION PROGRAMMING INTERFACE
-.\" If the user may interact with this driver in a specific way,
-.\" document it. The user may not because this driver is part of a
-.\" broader framework.
-.\" .Sh IOCTLS
-.\" If the driver has a non-standard ioctl interface, document it. If it
-.\" just implements the ones to support a framework, leave this out.
-.\" .Sh CONFIGURATION
-.\" If there is a driver.conf file, please describe the different
-.\" options that can be set and their expected stability.
-.\" .Sh ARCHITECTURE
-.\" If this driver is supported on particular architectures (usually not
-.\" the case for pseudo-devices), then include that.
-.Sh FILES
-.\" List the actual installation path of the driver and a configuration
-.\" file.
-.Sh SEE ALSO
-.\" This list should include user programs or libraries that are relevant to
-.\" the program. A nic might have dladm, a storage device, diskinfo, a
-.\" sensor, fmtopo.
diff --git a/usr/src/psm/stand/boot/sparc/common/boot_plat.c b/usr/src/psm/stand/boot/sparc/common/boot_plat.c
index a06c734b4e..e44831c9c3 100644
--- a/usr/src/psm/stand/boot/sparc/common/boot_plat.c
+++ b/usr/src/psm/stand/boot/sparc/common/boot_plat.c
@@ -288,7 +288,7 @@ openfile(char *filename)
* Get the boot arguments from the PROM and split it into filename and
* options components.
*
- * As per IEEE1275 and boot(1M), the boot arguments will have the syntax
+ * As per IEEE1275 and boot(8), the boot arguments will have the syntax
* "[filename] [-options]". If filename is specified, it is copied into the
* first buffer. (Otherwise, the buffer is left alone.) The rest of the string
* is copied into the second buffer.
diff --git a/usr/src/psm/stand/boot/sparc/common/bootflags.c b/usr/src/psm/stand/boot/sparc/common/bootflags.c
index d30e3a1cb3..b167e95bef 100644
--- a/usr/src/psm/stand/boot/sparc/common/bootflags.c
+++ b/usr/src/psm/stand/boot/sparc/common/bootflags.c
@@ -174,7 +174,7 @@ done:
*np++ = '-';
/*
- * boot(1M) says to pass these on.
+ * boot(8) says to pass these on.
*/
if (boothowto & RB_ASKNAME)
*np++ = 'a';
diff --git a/usr/src/test/crypto-tests/doc/README b/usr/src/test/crypto-tests/doc/README
index 0c848ac735..3bc99b40f2 100644
--- a/usr/src/test/crypto-tests/doc/README
+++ b/usr/src/test/crypto-tests/doc/README
@@ -45,7 +45,7 @@ depends on it.
2. Running the KCF/PKCS Unit Test Suite
The pre-requisites for running the KCF/PKCS Unit Test Suite are:
- - A non-root user with the ability to sudo(1M) to root without a
+ - A non-root user with the ability to sudo(8) to root without a
password or the root user must run the test.
Once the pre-requisites are satisfied, simply run the cryptotest script:
diff --git a/usr/src/test/libmlrpc-tests/doc/README b/usr/src/test/libmlrpc-tests/doc/README
index 43412a4747..c24c97b5ff 100644
--- a/usr/src/test/libmlrpc-tests/doc/README
+++ b/usr/src/test/libmlrpc-tests/doc/README
@@ -45,7 +45,7 @@ depends on it.
2. Running this Unit Test Suite
The pre-requisites for running the this Unit Test Suite are:
- - A non-root user with the ability to sudo(1M) to root without a
+ - A non-root user with the ability to sudo(8) to root without a
password or the root user must run the test.
(The samlogon test requires a user with 'solaris.smf.read.smb'
authorization, such as root.)
diff --git a/usr/src/test/os-tests/doc/README b/usr/src/test/os-tests/doc/README
index 7e8f5236e8..9a5b881e8a 100644
--- a/usr/src/test/os-tests/doc/README
+++ b/usr/src/test/os-tests/doc/README
@@ -44,7 +44,7 @@ depends on it.
2. Running the OS Unit Test Suite
The pre-requisites for running the OS Unit Test Suite are:
- - A non-root user with the ability to sudo(1M) to root without a
+ - A non-root user with the ability to sudo(8) to root without a
password or the root user must run the test.
Once the pre-requisites are satisfied, simply run the ostest script:
diff --git a/usr/src/test/test-runner/man/run.1 b/usr/src/test/test-runner/man/run.1
index 31cd412452..9ba7ea813c 100644
--- a/usr/src/test/test-runner/man/run.1
+++ b/usr/src/test/test-runner/man/run.1
@@ -80,7 +80,7 @@ executed, and the remaining tests are marked "SKIPPED." Any test that exceeds
its \fItimeout\fR is terminated, and marked "KILLED."
By default, tests are executed with the credentials of the \fBrun\fR script.
-Executing tests with other credentials is done via \fBsudo\fR(1m), which must
+Executing tests with other credentials is done via \fBsudo\fR(8), which must
be configured to allow execution without prompting for a password. Environment
variables from the calling shell are available to individual tests. During test
execution, the working directory is changed to \fIoutputdir\fR.
@@ -367,4 +367,4 @@ An error occurred.
.SH SEE ALSO
.sp
.LP
-\fBsudo\fR(1m)
+\fBsudo\fR(8)
diff --git a/usr/src/test/zfs-tests/doc/README b/usr/src/test/zfs-tests/doc/README
index d7af3457f7..064fa3bbe0 100644
--- a/usr/src/test/zfs-tests/doc/README
+++ b/usr/src/test/zfs-tests/doc/README
@@ -52,7 +52,7 @@ The pre-requisites for running the ZFS Test Suite are:
- Use the '-a' option to the zfstest script and all unused disks on
the system are eligible. With '-a' specified, $DISKS is ignored.
- A non-root user with the full set of basic privileges and the ability
- to sudo(1M) to root without a password to run the test.
+ to sudo(8) to root without a password to run the test.
- Specify any pools you wish to preserve as a space delimited list in
the $KEEP variable. The root pool is added automatically.
diff --git a/usr/src/test/zfs-tests/tests/functional/cli_root/zfs_copies/zfs_copies_002_pos.ksh b/usr/src/test/zfs-tests/tests/functional/cli_root/zfs_copies/zfs_copies_002_pos.ksh
index 54a7ee8456..de535300d0 100644
--- a/usr/src/test/zfs-tests/tests/functional/cli_root/zfs_copies/zfs_copies_002_pos.ksh
+++ b/usr/src/test/zfs-tests/tests/functional/cli_root/zfs_copies/zfs_copies_002_pos.ksh
@@ -39,7 +39,7 @@
# STRATEGY:
# 1. Create filesystems with copies set as 2,3 respectively;
# 2. Copy specified size data into each filesystem;
-# 3. Verify that the space is charged as expected with zfs list, ls -s, df(1m),
+# 3. Verify that the space is charged as expected with zfs list, ls -s, df(8),
# du(1) commands;
#
@@ -87,7 +87,7 @@ for val in 1 2 3; do
check_used $used $val
done
-log_note "Verify df(1M) can corectly display the space charged."
+log_note "Verify df(8) can corectly display the space charged."
for val in 1 2 3; do
used=`df -F zfs -h /$TESTPOOL/fs_$val/$FILE | grep $TESTPOOL/fs_$val \
| awk '{print $3}'`
diff --git a/usr/src/test/zfs-tests/tests/functional/utils_test/utils_test_001_pos.ksh b/usr/src/test/zfs-tests/tests/functional/utils_test/utils_test_001_pos.ksh
index 68e714a89f..5c4d9b0db0 100644
--- a/usr/src/test/zfs-tests/tests/functional/utils_test/utils_test_001_pos.ksh
+++ b/usr/src/test/zfs-tests/tests/functional/utils_test/utils_test_001_pos.ksh
@@ -34,7 +34,7 @@
#
# DESCRIPTION:
-# Ensure that the clri(1M) utility fails on a ZFS file system.
+# Ensure that the clri(8) utility fails on a ZFS file system.
#
# STRATEGY:
# 1. Populate a ZFS directory with a number of files.
@@ -51,7 +51,7 @@ function cleanup
log_onexit cleanup
-log_assert "Ensure that the clri(1M) utility fails on a ZFS file system."
+log_assert "Ensure that the clri(8) utility fails on a ZFS file system."
populate_dir $NUM_FILES
@@ -59,4 +59,4 @@ inode=`ls -i $TESTDIR/$TESTFILE.0 | awk '{print $1}'`
log_mustnot clri /dev/rdsk/$DISK $inode
log_mustnot clri -F zfs /dev/rdsk/$DISK $inode
-log_pass "clri(1M) returned an error as expected."
+log_pass "clri(8) returned an error as expected."
diff --git a/usr/src/test/zfs-tests/tests/functional/utils_test/utils_test_002_pos.ksh b/usr/src/test/zfs-tests/tests/functional/utils_test/utils_test_002_pos.ksh
index 81c7ab1bad..7ff89d9968 100644
--- a/usr/src/test/zfs-tests/tests/functional/utils_test/utils_test_002_pos.ksh
+++ b/usr/src/test/zfs-tests/tests/functional/utils_test/utils_test_002_pos.ksh
@@ -34,11 +34,11 @@
#
# DESCRIPTION:
-# Ensure that the labelit(1M) utility fails on a ZFS file system.
+# Ensure that the labelit(8) utility fails on a ZFS file system.
#
# STRATEGY:
# 1. Populate a ZFS file system with some files.
-# 2. Run labelit(1M) against the device.
+# 2. Run labelit(8) against the device.
# 3. Ensure it fails.
#
@@ -55,7 +55,7 @@ function cleanup
log_onexit cleanup
-log_assert "Ensure that the labelit(1M) utility fails on a ZFS file system."
+log_assert "Ensure that the labelit(8) utility fails on a ZFS file system."
populate_dir $NUM_FILES
@@ -63,4 +63,4 @@ log_must zfs unmount $TESTDIR
log_mustnot labelit /dev/rdsk/${DISK}s0 mfiles ${DISK}s0
-log_pass "labelit(1M) returned an error as expected."
+log_pass "labelit(8) returned an error as expected."
diff --git a/usr/src/test/zfs-tests/tests/functional/utils_test/utils_test_003_pos.ksh b/usr/src/test/zfs-tests/tests/functional/utils_test/utils_test_003_pos.ksh
index 3678d76332..82bc6a1df4 100644
--- a/usr/src/test/zfs-tests/tests/functional/utils_test/utils_test_003_pos.ksh
+++ b/usr/src/test/zfs-tests/tests/functional/utils_test/utils_test_003_pos.ksh
@@ -34,7 +34,7 @@
#
# DESCRIPTION:
-# Ensure that the fsdb(1M) utility fails on a ZFS file system.
+# Ensure that the fsdb(8) utility fails on a ZFS file system.
#
# STRATEGY:
# 1. Populate a ZFS directory with a number of files.
@@ -51,7 +51,7 @@ function cleanup
log_onexit cleanup
-log_assert "Ensure that the fsdb(1M) utility fails on a ZFS file system."
+log_assert "Ensure that the fsdb(8) utility fails on a ZFS file system."
populate_dir $NUM_FILES
inode_num=`ls -li $TESTDIR/$TESTFILE.0 | awk '{print $1}'`
@@ -60,4 +60,4 @@ inode_num=`ls -li $TESTDIR/$TESTFILE.0 | awk '{print $1}'`
log_mustnot echo ":inode $inode_num" | fsdb /dev/rdsk/${DISK}s0
-log_pass "fsdb(1M) returned an error as expected."
+log_pass "fsdb(8) returned an error as expected."
diff --git a/usr/src/test/zfs-tests/tests/functional/utils_test/utils_test_004_pos.ksh b/usr/src/test/zfs-tests/tests/functional/utils_test/utils_test_004_pos.ksh
index 74241a1e57..31d4908394 100644
--- a/usr/src/test/zfs-tests/tests/functional/utils_test/utils_test_004_pos.ksh
+++ b/usr/src/test/zfs-tests/tests/functional/utils_test/utils_test_004_pos.ksh
@@ -34,7 +34,7 @@
#
# DESCRIPTION:
-# Ensure that the quotaon(1M) utility fails on a ZFS file system.
+# Ensure that the quotaon(8) utility fails on a ZFS file system.
#
# STRATEGY:
# 1. Enable a quota on a ZFS file system.
@@ -51,10 +51,10 @@ function cleanup
log_onexit cleanup
-log_assert "Ensure that the quotaon(1M) utility fails on a ZFS file system."
+log_assert "Ensure that the quotaon(8) utility fails on a ZFS file system."
log_must zfs set quota=1099511627776 $TESTPOOL/$TESTFS
log_must touch $TESTDIR/quotas
log_mustnot quotaon /dev/dsk/${DISK}s0
-log_pass "quotaon(1M) returned an error as expected."
+log_pass "quotaon(8) returned an error as expected."
diff --git a/usr/src/test/zfs-tests/tests/functional/utils_test/utils_test_005_pos.ksh b/usr/src/test/zfs-tests/tests/functional/utils_test/utils_test_005_pos.ksh
index 775105a904..7971a8c7e3 100644
--- a/usr/src/test/zfs-tests/tests/functional/utils_test/utils_test_005_pos.ksh
+++ b/usr/src/test/zfs-tests/tests/functional/utils_test/utils_test_005_pos.ksh
@@ -34,11 +34,11 @@
#
# DESCRIPTION:
-# Ensure that the ff(1M) utility fails on a ZFS file system.
+# Ensure that the ff(8) utility fails on a ZFS file system.
#
# STRATEGY:
# 1. Populate a ZFS file system with some files.
-# 2. Run ff(1M) against the device.
+# 2. Run ff(8) against the device.
# 3. Ensure it fails.
#
@@ -51,10 +51,10 @@ function cleanup
log_onexit cleanup
-log_assert "Ensure that the ff(1M) utility fails on a ZFS file system."
+log_assert "Ensure that the ff(8) utility fails on a ZFS file system."
populate_dir $NUM_FILES
log_mustnot ff -F zfs /dev/rdsk/${DISK}s0
-log_pass "ff(1M) returned an error as expected."
+log_pass "ff(8) returned an error as expected."
diff --git a/usr/src/test/zfs-tests/tests/functional/utils_test/utils_test_006_pos.ksh b/usr/src/test/zfs-tests/tests/functional/utils_test/utils_test_006_pos.ksh
index 9c610f74c3..e3a50ec185 100644
--- a/usr/src/test/zfs-tests/tests/functional/utils_test/utils_test_006_pos.ksh
+++ b/usr/src/test/zfs-tests/tests/functional/utils_test/utils_test_006_pos.ksh
@@ -34,11 +34,11 @@
#
# DESCRIPTION:
-# Ensure that the fsirand(1M) utility fails on a ZFS file system.
+# Ensure that the fsirand(8) utility fails on a ZFS file system.
#
# STRATEGY:
# 1. Populate a ZFS file system with some files.
-# 2. Run fsirand(1M) against the device.
+# 2. Run fsirand(8) against the device.
# 3. Ensure it fails.
#
@@ -55,7 +55,7 @@ function cleanup
log_onexit cleanup
-log_assert "Ensure that the fsirand(1M) utility fails on a ZFS file system."
+log_assert "Ensure that the fsirand(8) utility fails on a ZFS file system."
populate_dir $NUM_FILES
@@ -63,4 +63,4 @@ log_must zfs unmount $TESTDIR
log_mustnot fsirand /dev/rdsk/${DISK}s0
-log_pass "fsirand(1M) returned an error as expected."
+log_pass "fsirand(8) returned an error as expected."
diff --git a/usr/src/test/zfs-tests/tests/functional/utils_test/utils_test_007_pos.ksh b/usr/src/test/zfs-tests/tests/functional/utils_test/utils_test_007_pos.ksh
index ecb37900c7..2ed6ef2170 100644
--- a/usr/src/test/zfs-tests/tests/functional/utils_test/utils_test_007_pos.ksh
+++ b/usr/src/test/zfs-tests/tests/functional/utils_test/utils_test_007_pos.ksh
@@ -34,11 +34,11 @@
#
# DESCRIPTION:
-# Ensure that the fstyp(1M) utility succeeds on a ZFS file system.
+# Ensure that the fstyp(8) utility succeeds on a ZFS file system.
#
# STRATEGY:
# 1. Populate a ZFS file system with some files.
-# 2. Run fstyp(1M) against the device.
+# 2. Run fstyp(8) against the device.
# 3. Ensure it fails.
#
@@ -55,7 +55,7 @@ function cleanup
log_onexit cleanup
-log_assert "Ensure that the fstyp(1M) utility succeeds on a ZFS file system."
+log_assert "Ensure that the fstyp(8) utility succeeds on a ZFS file system."
populate_dir $NUM_FILES
@@ -67,4 +67,4 @@ else
log_must fstyp /dev/rdsk/${DISK}s0
fi
-log_pass "fstyp(1M) returned successfully."
+log_pass "fstyp(8) returned successfully."
diff --git a/usr/src/test/zfs-tests/tests/functional/utils_test/utils_test_008_pos.ksh b/usr/src/test/zfs-tests/tests/functional/utils_test/utils_test_008_pos.ksh
index c736265110..0f86150e42 100644
--- a/usr/src/test/zfs-tests/tests/functional/utils_test/utils_test_008_pos.ksh
+++ b/usr/src/test/zfs-tests/tests/functional/utils_test/utils_test_008_pos.ksh
@@ -34,11 +34,11 @@
#
# DESCRIPTION:
-# Ensure that the ncheck(1M) utility fails on a ZFS file system.
+# Ensure that the ncheck(8) utility fails on a ZFS file system.
#
# STRATEGY:
# 1. Populate a ZFS file system with some files.
-# 2. Run ncheck(1M) against the device.
+# 2. Run ncheck(8) against the device.
# 3. Ensure it fails.
#
@@ -55,7 +55,7 @@ function cleanup
log_onexit cleanup
-log_assert "Ensure that the ncheck(1M) utility fails on a ZFS file system."
+log_assert "Ensure that the ncheck(8) utility fails on a ZFS file system."
populate_dir $NUM_FILES
@@ -63,4 +63,4 @@ log_must zfs unmount $TESTDIR
log_mustnot ncheck /dev/rdsk/${DISK}s0
-log_pass "ncheck(1M) returned an error as expected."
+log_pass "ncheck(8) returned an error as expected."
diff --git a/usr/src/test/zfs-tests/tests/functional/utils_test/utils_test_009_pos.ksh b/usr/src/test/zfs-tests/tests/functional/utils_test/utils_test_009_pos.ksh
index b7dc013ab5..916e29eaca 100644
--- a/usr/src/test/zfs-tests/tests/functional/utils_test/utils_test_009_pos.ksh
+++ b/usr/src/test/zfs-tests/tests/functional/utils_test/utils_test_009_pos.ksh
@@ -34,11 +34,11 @@
#
# DESCRIPTION:
-# Ensure that the tunefs(1M) utility fails on a ZFS file system.
+# Ensure that the tunefs(8) utility fails on a ZFS file system.
#
# STRATEGY:
# 1. Populate a ZFS file system with some files.
-# 2. Run tunefs(1M) against the device.
+# 2. Run tunefs(8) against the device.
# 3. Ensure it fails.
#
@@ -51,10 +51,10 @@ function cleanup
log_onexit cleanup
-log_assert "Ensure that the tunefs(1M) utility fails on a ZFS file system."
+log_assert "Ensure that the tunefs(8) utility fails on a ZFS file system."
populate_dir $NUM_FILES
log_mustnot tunefs -m 80 /dev/dsk/${DISK}s0
-log_pass "tunefs(1M) returned an error as expected."
+log_pass "tunefs(8) returned an error as expected."
diff --git a/usr/src/test/zfs-tests/tests/functional/xattr/xattr_007_neg.ksh b/usr/src/test/zfs-tests/tests/functional/xattr/xattr_007_neg.ksh
index 6b3feeafc0..6d88f710fa 100644
--- a/usr/src/test/zfs-tests/tests/functional/xattr/xattr_007_neg.ksh
+++ b/usr/src/test/zfs-tests/tests/functional/xattr/xattr_007_neg.ksh
@@ -35,7 +35,7 @@
# Creating and writing xattrs on files in snapshot directories fails. Also,
# we shouldn't be able to list the xattrs of files in snapshots who didn't have
# xattrs when the snapshot was created (the xattr namespace wouldn't have been
-# created yet, and snapshots are read-only) See fsattr(5) for more details.
+# created yet, and snapshots are read-only) See fsattr(7) for more details.
#
# STRATEGY:
# 1. Create a file and add an xattr to it.
diff --git a/usr/src/test/zfs-tests/tests/functional/zvol/zvol_ENOSPC/setup.ksh b/usr/src/test/zfs-tests/tests/functional/zvol/zvol_ENOSPC/setup.ksh
index 2fc112ad1b..a8e7778d7e 100644
--- a/usr/src/test/zfs-tests/tests/functional/zvol/zvol_ENOSPC/setup.ksh
+++ b/usr/src/test/zfs-tests/tests/functional/zvol/zvol_ENOSPC/setup.ksh
@@ -37,7 +37,7 @@ verify_runnable "global"
default_zvol_setup $DISK $VOLSIZE
echo "y" | newfs -v /dev/zvol/rdsk/$TESTPOOL/$TESTVOL >/dev/null 2>&1
-(( $? != 0 )) && log_fail "Unable to newfs(1M) $TESTPOOL/$TESTVOL"
+(( $? != 0 )) && log_fail "Unable to newfs(8) $TESTPOOL/$TESTVOL"
log_must mkdir $TESTDIR
log_must mount /dev/zvol/dsk/$TESTPOOL/$TESTVOL $TESTDIR
diff --git a/usr/src/test/zfs-tests/tests/functional/zvol/zvol_misc/zvol_misc_002_pos.ksh b/usr/src/test/zfs-tests/tests/functional/zvol/zvol_misc/zvol_misc_002_pos.ksh
index dfb5d2b996..1e528171cc 100644
--- a/usr/src/test/zfs-tests/tests/functional/zvol/zvol_misc/zvol_misc_002_pos.ksh
+++ b/usr/src/test/zfs-tests/tests/functional/zvol/zvol_misc/zvol_misc_002_pos.ksh
@@ -68,7 +68,7 @@ NUM_WRITES=40
log_must zfs set volsize=128m $TESTPOOL/$TESTVOL
echo "y" | newfs -v /dev/zvol/rdsk/$TESTPOOL/$TESTVOL >/dev/null 2>&1
-(( $? != 0 )) && log_fail "Unable to newfs(1M) $TESTPOOL/$TESTVOL"
+(( $? != 0 )) && log_fail "Unable to newfs(8) $TESTPOOL/$TESTVOL"
log_must mkdir $TESTDIR
log_must mount /dev/zvol/dsk/$TESTPOOL/$TESTVOL $TESTDIR
diff --git a/usr/src/test/zfs-tests/tests/longevity/slop_space_test.ksh b/usr/src/test/zfs-tests/tests/longevity/slop_space_test.ksh
index ac61f961ab..f76a893a57 100644
--- a/usr/src/test/zfs-tests/tests/longevity/slop_space_test.ksh
+++ b/usr/src/test/zfs-tests/tests/longevity/slop_space_test.ksh
@@ -169,7 +169,7 @@ do
# properties in one zfs command and reducing
# the overhead caused by the number of times
# we wait for a txg to sync (e.g. equal to the
- # number of times we execute zfs(1m))
+ # number of times we execute zfs(8))
#
PROPERTIES=""
for j in {1..100}
diff --git a/usr/src/tools/cscope-fast/display.c b/usr/src/tools/cscope-fast/display.c
index fafad24d23..ddfa859f03 100644
--- a/usr/src/tools/cscope-fast/display.c
+++ b/usr/src/tools/cscope-fast/display.c
@@ -446,7 +446,7 @@ search(void)
pattern);
} else if (rc == REGCMPERROR) {
(void) sprintf(lastmsg,
- "Error in this regcmp(3X) regular expression: %s",
+ "Error in this regcmp(3C) regular expression: %s",
pattern);
} else {
(void) sprintf(lastmsg, "Could not find the %s: %s",
diff --git a/usr/src/tools/cscope-fast/help.c b/usr/src/tools/cscope-fast/help.c
index e1b71fc21a..65dd8d6961 100644
--- a/usr/src/tools/cscope-fast/help.c
+++ b/usr/src/tools/cscope-fast/help.c
@@ -28,8 +28,6 @@
* All rights reserved.
*/
-#pragma ident "%Z%%M% %I% %E% SMI"
-
/*
* cscope - interactive C symbol cross-reference
*
@@ -55,7 +53,7 @@ help(void)
*tp++ = "type the pattern to search for, and then "
"press the RETURN key. For the first 5\n";
*tp++ = "and last 2 input fields, the pattern can be "
- "a regcmp(3X) regular expression.\n";
+ "a regcmp(3C) regular expression.\n";
*tp++ = "If the search is successful, you can edit "
"the file containing a displayed line\n";
*tp++ = "by pointing with the mouse and clicking "
@@ -68,7 +66,7 @@ help(void)
*tp++ = "pattern to search for, and then press the "
"RETURN key. For the first 4 and\n";
*tp++ = "last 2 input fields, the pattern can be a "
- "regcmp(3X) regular expression.\n";
+ "regcmp(3C) regular expression.\n";
*tp++ = "If the search is successful, you can use "
"these command characters:\n\n";
*tp++ = "1-9\tEdit the file containing the displayed "
diff --git a/usr/src/tools/env/illumos.sh b/usr/src/tools/env/illumos.sh
index 2fd994e955..bd21476c29 100644
--- a/usr/src/tools/env/illumos.sh
+++ b/usr/src/tools/env/illumos.sh
@@ -213,7 +213,7 @@ export MAILTO="${MAILTO:-$STAFFER}"
# MAILFROM.
#export MAILFROM="user@example.com"
-# The project (see project(4)) under which to run this build. If not
+# The project (see project(5)) under which to run this build. If not
# specified, the build is simply run in a new task in the current project.
export BUILD_PROJECT=''
diff --git a/usr/src/tools/ndrgen/ndrgen.1onbld b/usr/src/tools/ndrgen/ndrgen.1onbld
index 7989b4559c..17923679be 100644
--- a/usr/src/tools/ndrgen/ndrgen.1onbld
+++ b/usr/src/tools/ndrgen/ndrgen.1onbld
@@ -467,7 +467,7 @@ An error occurred.
.RE
.SH ATTRIBUTES
-See the \fBattributes\fR(5) man page for descriptions of the following attributes:
+See the \fBattributes\fR(7) man page for descriptions of the following attributes:
.sp
.sp
@@ -482,7 +482,7 @@ Availability SUNWbtool
.SH SEE ALSO
.LP
-\fBcpp\fR(1), \fBrpcgen\fR(1), \fBcc\fR(1B), \fBattributes\fR(5)
+\fBcpp\fR(1), \fBrpcgen\fR(1), \fBcc\fR(1B), \fBattributes\fR(7)
.SH BUGS
.LP
Some \fBcpp\fR(1) macros used by \fBndrgen\fR are not understood by \fB/usr/bin/cpp\fR or \fB/usr/sfw/bin/cpp\fR. Simple NDL files generally do not pose a problem. If problems occur, for example, when using unions, use \fB/usr/libexec/cpp\fR or \fBcw\fR.
diff --git a/usr/src/tools/quick/make-zfs b/usr/src/tools/quick/make-zfs
index 987b5627d2..417745b8cf 100755
--- a/usr/src/tools/quick/make-zfs
+++ b/usr/src/tools/quick/make-zfs
@@ -262,23 +262,23 @@ do_mans() {
case "$1" in
install)
- (cd $SRC/man/man1m && make \
- $ROOT/usr/share/man/man1m/zdb.1m \
- $ROOT/usr/share/man/man1m/zfs.1m \
- $ROOT/usr/share/man/man1m/zfs-program.1m \
- $ROOT/usr/share/man/man1m/zpool.1m \
- $ROOT/usr/share/man/man1m/ztest.1m )
- (cd $SRC/man/man5 && make \
- $ROOT/usr/share/man/man5/zpool-features.5 )
+ (cd $SRC/man/man8 && make \
+ $ROOT/usr/share/man/man8/zdb.8 \
+ $ROOT/usr/share/man/man8/zfs.8 \
+ $ROOT/usr/share/man/man8/zfs-program.8 \
+ $ROOT/usr/share/man/man8/zpool.8 \
+ $ROOT/usr/share/man/man8/ztest.8 )
+ (cd $SRC/man/man7 && make \
+ $ROOT/usr/share/man/man7/zpool-features.7 )
;;
lint)
- (cd $SRC/man/man1m && make zdb.1m.check zfs.1m.check zfs-program.1m.check \
- zpool.1m.check ztest.1m.check)
- (cd $SRC/man/man5 && make zpool-features.5.check)
+ (cd $SRC/man/man8 && make zdb.8.check zfs.8.check zfs-program.8.check \
+ zpool.8.check ztest.8.check)
+ (cd $SRC/man/man7 && make zpool-features.7.check)
;;
*)
- (cd $SRC/man/man1m && make $1)
- (cd $SRC/man/man5 && make $)
+ (cd $SRC/man/man8 && make $1)
+ (cd $SRC/man/man7 && make $)
;;
esac
}
@@ -345,12 +345,12 @@ usr/sbin/$arch64/zhack
usr/sbin/$arch32/zinject
usr/sbin/$arch64/zinject
usr/sbin/zstreamdump
-usr/share/man/man1m/zdb.1m
-usr/share/man/man1m/zfs.1m
-usr/share/man/man1m/zfs-program.1m
-usr/share/man/man1m/zpool.1m
-usr/share/man/man1m/ztest.1m
-usr/share/man/man5/zpool-features.5
+usr/share/man/man8/zdb.8
+usr/share/man/man8/zfs.8
+usr/share/man/man8/zfs-program.8
+usr/share/man/man8/zpool.8
+usr/share/man/man8/ztest.8
+usr/share/man/man7/zpool-features.7
"
(cd $ROOT && tar cfj ../../zfs-${git_rev}.tar.bz2 $files)
}
diff --git a/usr/src/tools/scripts/its.reg b/usr/src/tools/scripts/its.reg
index 1f40e67fe6..cf03804cf2 100644
--- a/usr/src/tools/scripts/its.reg
+++ b/usr/src/tools/scripts/its.reg
@@ -65,7 +65,7 @@
#
# REGEX (required)
#
-# A regexp(5) to tokenize a valid, unique key. See NOTES below.
+# A regexp(7) to tokenize a valid, unique key. See NOTES below.
#
# CONTACT
#
@@ -78,7 +78,7 @@
# NOTES
#
# REGEX should use parenthesization via \(\) to provide one or more
-# tokens to be substituted in *_URLs. See regexp(5) for syntax.
+# tokens to be substituted in *_URLs. See regexp(7) for syntax.
#
# A REGEX for a particular system is required to match any unique keys
# that are valid for that system. For the common case, where such a key
diff --git a/usr/src/tools/scripts/onu.1onbld b/usr/src/tools/scripts/onu.1onbld
index 385d5bd6bd..d6fa09ac28 100644
--- a/usr/src/tools/scripts/onu.1onbld
+++ b/usr/src/tools/scripts/onu.1onbld
@@ -34,7 +34,7 @@
is a replacement for
.I bfu
used to update a system with the latest set of IPS packages for the ON
-(OS/Net) consolidation of Solaris, using beadm(1M) to create a new Boot
+(OS/Net) consolidation of Solaris, using beadm(8) to create a new Boot
Environment (BE) and pkg(1) to update the image.
.SH OPTIONS
.LP
@@ -103,7 +103,7 @@ differently from bfu. First, as noted above, onu creates a new BE, rather
than updating an existing BE in-place. Second, onu will not install packages
that are older than what is already installed in the source BE. Third,
conflicts in system configuration files are automatically resolved according
-to the files' "preserve" attribute, as described in pkg(5).
+to the files' "preserve" attribute, as described in pkg(7).
.LP
If the
.B -d
@@ -162,6 +162,6 @@ If the -U option is not provided, and this variable is set, it will be
used as the publisher name for the packaging repository. If -U is not
provided and this variable is not set, on-nightly will be used.
.SH SEE ALSO
-.BR beadm "(1M), "
-.BR pkg "(1), "
-.BR pkg "(5) "
+.BR beadm (8),
+.BR pkg (1),
+.BR pkg (7)
diff --git a/usr/src/tools/scripts/validate_pkg.py b/usr/src/tools/scripts/validate_pkg.py
index b2d9bfca80..18a2c0cc77 100644
--- a/usr/src/tools/scripts/validate_pkg.py
+++ b/usr/src/tools/scripts/validate_pkg.py
@@ -577,7 +577,7 @@ class ManifestTree(DirectoryTree):
"""
def addmanifest(self, root, mfile, arch, modechecks, exceptions):
- """Treats the specified input file as a pkg(5) package
+ """Treats the specified input file as a pkg(7) package
manifest, and extends the ManifestTree dictionary with entries
for the actions therein.
"""
@@ -607,9 +607,9 @@ class ManifestTree(DirectoryTree):
#
# The dir action is currently fully specified, in that it
# lists owner, group, and mode attributes. If that
- # changes in pkg(5) code, we'll need to revisit either this
+ # changes in pkg(7) code, we'll need to revisit either this
# code or the ActionInfo() constructor. It's possible
- # that the pkg(5) system could be extended to provide a
+ # that the pkg(7) system could be extended to provide a
# mechanism for specifying directory permissions outside
# of the individual manifests that deliver files into
# those directories. Doing so at time of manifest
@@ -644,7 +644,7 @@ class ManifestTree(DirectoryTree):
var = None
#
- # The name of this method changed in pkg(5) build 150, we need to
+ # The name of this method changed in pkg(7) build 150, we need to
# work with both sets.
#
if hasattr(action, 'get_variants'):
@@ -665,7 +665,7 @@ class ManifestTree(DirectoryTree):
print("")
def adddir(self, mdir, arch, modechecks, exceptions):
- """Walks the specified directory looking for pkg(5) manifests.
+ """Walks the specified directory looking for pkg(7) manifests.
"""
for mfile in os.listdir(mdir):
if (mfile.endswith(".mog") and
diff --git a/usr/src/tools/scripts/webrev.sh b/usr/src/tools/scripts/webrev.sh
index 2229e39be0..66fd2ab854 100644
--- a/usr/src/tools/scripts/webrev.sh
+++ b/usr/src/tools/scripts/webrev.sh
@@ -3293,7 +3293,7 @@ print "<table>"
# syntax characters) in the email address.
#
# Otherwise, use the current userid in the form "John Doe (jdoe)", but
-# to maintain compatibility with passwd(4), we must support '&' substitutions.
+# to maintain compatibility with passwd(5), we must support '&' substitutions.
#
preparer=
if [[ "$SCM_MODE" == git ]]; then
diff --git a/usr/src/tools/scripts/xref.sh b/usr/src/tools/scripts/xref.sh
index d69a364fda..d765cbe988 100644
--- a/usr/src/tools/scripts/xref.sh
+++ b/usr/src/tools/scripts/xref.sh
@@ -147,7 +147,7 @@ dirs=$@
#
# Get the canonical path to the workspace. This allows xref to work
-# even in the presence of lofs(7FS).
+# even in the presence of lofs(4FS).
#
cd $CODEMGR_WS
CODEMGR_WS=`/bin/pwd`
@@ -202,7 +202,7 @@ for dir in $dirs; do
#
# NOTE: we cannot use $PWD because it will mislead in the presence
- # of lofs(7FS).
+ # of lofs(4FS).
#
cd $dir || fail "cannot change to directory $dir"
pwd=`/bin/pwd`
diff --git a/usr/src/uts/common/Makefile.files b/usr/src/uts/common/Makefile.files
index 9fd7078394..3aacd2dde2 100644
--- a/usr/src/uts/common/Makefile.files
+++ b/usr/src/uts/common/Makefile.files
@@ -2335,13 +2335,13 @@ BNX_OBJS += \
bnx_lm_send.o
#
-# mlxcx(7D)
+# mlxcx(4D)
#
MLXCX_OBJS += mlxcx.o mlxcx_dma.o mlxcx_cmd.o mlxcx_intr.o mlxcx_gld.o \
mlxcx_ring.o mlxcx_sensor.o
#
-# ena(7D)
+# ena(4D)
#
ENA_OBJS += ena.o ena_admin.o ena_dma.o ena_gld.o ena_hw.o ena_intr.o \
ena_stats.o ena_tx.o ena_rx.o
diff --git a/usr/src/uts/common/c2/audit_start.c b/usr/src/uts/common/c2/audit_start.c
index 49713c6f77..ef0c74a049 100644
--- a/usr/src/uts/common/c2/audit_start.c
+++ b/usr/src/uts/common/c2/audit_start.c
@@ -90,7 +90,7 @@ audit_init_module()
/*
* setup environment for asynchronous auditing. We can't use
* audit_async_start() here since it assumes the audit system
- * has been started via auditd(1m). auditd sets the variable,
+ * has been started via auditd(8). auditd sets the variable,
* auk_auditstate, to indicate audit record generation should
* commence. Here we want to always generate an audit record.
*/
diff --git a/usr/src/uts/common/conf/param.c b/usr/src/uts/common/conf/param.c
index 4660a280e8..942a1fe619 100644
--- a/usr/src/uts/common/conf/param.c
+++ b/usr/src/uts/common/conf/param.c
@@ -716,7 +716,7 @@ param_check(void)
#if defined(__x86)
if (physmem != original_physmem) {
cmn_err(CE_NOTE, "physmem cannot be modified to 0x%lx"
- " via /etc/system. Please use eeprom(1M) instead.",
+ " via /etc/system. Please use eeprom(8) instead.",
physmem);
physmem = original_physmem;
}
diff --git a/usr/src/uts/common/contract/process.c b/usr/src/uts/common/contract/process.c
index d5cf629276..32e5707cb2 100644
--- a/usr/src/uts/common/contract/process.c
+++ b/usr/src/uts/common/contract/process.c
@@ -68,7 +68,7 @@
* special casing itself.
*
* A composite outcome of these two concepts is that we can now create
- * a tree of process contracts, rooted at init(1M), which represent
+ * a tree of process contracts, rooted at init(8), which represent
* services and subservices that are reliably observed and can be
* restarted when fatal errors occur. The service management framework
* (SMF) realizes this structure.
@@ -787,7 +787,7 @@ contract_process_init(void)
&contract_process_ops, contract_process_default);
/*
- * Create a template for use with init(1M) and other
+ * Create a template for use with init(8) and other
* kernel-started processes.
*/
sys_process_tmpl = kmem_alloc(sizeof (ctmpl_process_t), KM_SLEEP);
diff --git a/usr/src/uts/common/cpr/cpr_misc.c b/usr/src/uts/common/cpr/cpr_misc.c
index ee7cd5ddf4..0510c15e81 100644
--- a/usr/src/uts/common/cpr/cpr_misc.c
+++ b/usr/src/uts/common/cpr/cpr_misc.c
@@ -201,7 +201,7 @@ cpr_get_config(void)
cprconfig_loaded = 1;
else {
cpr_err(CE_CONT, "invalid config file \"%s\", "
- "rerun pmconfig(1M)\n", config_path);
+ "rerun pmconfig(8)\n", config_path);
err = EINVAL;
}
@@ -255,7 +255,7 @@ cpr_verify_statefile_path(void)
"cpr statefile device %s.\n";
static const char path_chg_fmt[] = "Device path for statefile "
"has changed from %s to %s.\t%s\n";
- static const char rerun[] = "Please rerun pmconfig(1m).";
+ static const char rerun[] = "Please rerun pmconfig(8).";
struct vfs *vfsp = NULL, *vfsp_save = rootvfs;
ufsvfs_t *ufsvfsp = (ufsvfs_t *)rootvfs->vfs_data;
ufsvfs_t *ufsvfsp_save = ufsvfsp;
@@ -406,7 +406,7 @@ cpr_verify_statefile_path(void)
if (ufsvfsp_save->vfs_devvp->v_rdev != vp->v_rdev) {
cpr_err(CE_CONT, "Filesystem containing "
"statefile no longer mounted on device %s. "
- "See power.conf(4).", cf->cf_devfs);
+ "See power.conf(5).", cf->cf_devfs);
VN_RELE(vp);
return (ENXIO);
}
diff --git a/usr/src/uts/common/cpr/cpr_mod.c b/usr/src/uts/common/cpr/cpr_mod.c
index 623ed0dba0..9bf72dcbcf 100644
--- a/usr/src/uts/common/cpr/cpr_mod.c
+++ b/usr/src/uts/common/cpr/cpr_mod.c
@@ -131,7 +131,7 @@ cpr(int fcn, void *mdep)
static const char noswapstr[] = "reusable statefile requires "
"that no swap area be configured.\n";
static const char blockstr[] = "reusable statefile must be "
- "a block device. See power.conf(4) and pmconfig(1M).\n";
+ "a block device. See power.conf(5) and pmconfig(8).\n";
static const char normalfmt[] = "cannot run normal "
"checkpoint/resume when in reusable statefile mode. "
"use uadmin A_FREEZE AD_REUSEFINI (uadmin %d %d) "
diff --git a/usr/src/uts/common/crypto/api/kcf_random.c b/usr/src/uts/common/crypto/api/kcf_random.c
index 2a51830e6e..80bbb64505 100644
--- a/usr/src/uts/common/crypto/api/kcf_random.c
+++ b/usr/src/uts/common/crypto/api/kcf_random.c
@@ -934,9 +934,8 @@ rnd_handler(void *arg)
int len = 0;
if (!rng_prov_found && rng_ok_to_log) {
- (void) strlog(0, 0, 0, SL_NOTE,
- "No randomness provider enabled for "
- "/dev/random. Use cryptoadm(1M) to enable a provider.");
+ cmn_err(CE_WARN, "No randomness provider enabled for "
+ "/dev/random. Use cryptoadm(8) to enable a provider.");
rng_ok_to_log = B_FALSE;
}
diff --git a/usr/src/uts/common/crypto/core/kcf_cryptoadm.c b/usr/src/uts/common/crypto/core/kcf_cryptoadm.c
index 19fc558088..b7da72060b 100644
--- a/usr/src/uts/common/crypto/core/kcf_cryptoadm.c
+++ b/usr/src/uts/common/crypto/core/kcf_cryptoadm.c
@@ -1122,7 +1122,7 @@ add_soft_config(char *name, uint_t count, crypto_mech_name_t *array)
* This is because the default entries for Software providers
* are more up-to-date than possibly stale entries in kcf.conf.
* If an entry is to be deleted, the proper way to do it is
- * to add it to the disablelist (with cryptoadm(1M)),
+ * to add it to the disablelist (with cryptoadm(8)),
* instead of removing it from the supportedlist.
*/
if (entry->ce_mechs == NULL) { /* add new mechanisms */
diff --git a/usr/src/uts/common/crypto/core/kcf_prov_tabs.c b/usr/src/uts/common/crypto/core/kcf_prov_tabs.c
index 1f69e2dd18..6c5a1ca4bf 100644
--- a/usr/src/uts/common/crypto/core/kcf_prov_tabs.c
+++ b/usr/src/uts/common/crypto/core/kcf_prov_tabs.c
@@ -62,7 +62,7 @@
* which triggers the removal of the prov_tab entry.
* It also calls kcf_remove_mech_provider().
*
- * prov_tab entries are not updated from kcf.conf or by cryptoadm(1M).
+ * prov_tab entries are not updated from kcf.conf or by cryptoadm(8).
*/
static kcf_provider_desc_t **prov_tab = NULL;
kmutex_t prov_tab_mutex; /* ensure exclusive access to the table */
@@ -662,7 +662,7 @@ out:
/*
* Returns an array of hardware provider descriptors. This routine
- * used by cryptoadm(1M). A REFHOLD is done on each descriptor before
+ * used by cryptoadm(8). A REFHOLD is done on each descriptor before
* the array is returned. The entire table can be freed by calling
* kcf_free_provider_tab().
*
diff --git a/usr/src/uts/common/disp/disp.c b/usr/src/uts/common/disp/disp.c
index 7e933bccc4..33921eecb0 100644
--- a/usr/src/uts/common/disp/disp.c
+++ b/usr/src/uts/common/disp/disp.c
@@ -142,7 +142,7 @@ int rechoose_interval = RECHOOSE_INTERVAL;
hrtime_t nosteal_nsec = NOSTEAL_UNINITIALIZED;
extern void cmp_set_nosteal_interval(void);
-id_t defaultcid; /* system "default" class; see dispadmin(1M) */
+id_t defaultcid; /* system "default" class; see dispadmin(8) */
disp_lock_t transition_lock; /* lock on transitioning threads */
disp_lock_t stop_lock; /* lock on stopped threads */
@@ -290,7 +290,7 @@ dispinit(void)
/*
* Get the default class ID; this may be later modified via
- * dispadmin(1M). This will load the class (normally TS) and that will
+ * dispadmin(8). This will load the class (normally TS) and that will
* call disp_add(), which is why we had to drop cpu_lock first.
*/
if (getcid(defaultclass, &defaultcid) != 0) {
diff --git a/usr/src/uts/common/disp/fx_dptbl.c b/usr/src/uts/common/disp/fx_dptbl.c
index d0d5ad8096..cf7c3f5561 100644
--- a/usr/src/uts/common/disp/fx_dptbl.c
+++ b/usr/src/uts/common/disp/fx_dptbl.c
@@ -24,8 +24,6 @@
* Use is subject to license terms.
*/
-#pragma ident "%Z%%M% %I% %E% SMI"
-
#include <sys/proc.h>
#include <sys/priocntl.h>
#include <sys/class.h>
@@ -37,7 +35,7 @@
/*
* The purpose of this file is to allow a user to make their own
* fx_dptbl. The contents of this file should be included in the
- * fx_dptbl(4) man page with proper instructions for making
+ * fx_dptbl(5) man page with proper instructions for making
* and replacing the FX_DPTBL in usr/kernel/sched.
* It is recommended that the system calls be used to change the time
* quantums instead of re-building the module.
diff --git a/usr/src/uts/common/disp/rt_dptbl.c b/usr/src/uts/common/disp/rt_dptbl.c
index cc88ed72fc..a5c8836518 100644
--- a/usr/src/uts/common/disp/rt_dptbl.c
+++ b/usr/src/uts/common/disp/rt_dptbl.c
@@ -39,7 +39,7 @@
/*
* The purpose of this file is to allow a user to make their own
* rt_dptbl. The contents of this file should be included in the
- * rt_dptbl(4) man page with proper instructions for making
+ * rt_dptbl(5) man page with proper instructions for making
* and replacing the RT_DPTBL.kmod in modules/sched. This was the
* only way to provide functionality equivalent to the mkboot/cunix
* method in SVr4 without having the utilities mkboot/cunix in
diff --git a/usr/src/uts/common/disp/ts_dptbl.c b/usr/src/uts/common/disp/ts_dptbl.c
index 4399a9bad1..09c7b7615d 100644
--- a/usr/src/uts/common/disp/ts_dptbl.c
+++ b/usr/src/uts/common/disp/ts_dptbl.c
@@ -28,8 +28,6 @@
/* Copyright (c) 1984, 1986, 1987, 1988, 1989, 1990 AT&T */
/* All Rights Reserved */
-#pragma ident "%Z%%M% %I% %E% SMI"
-
#include <sys/proc.h>
#include <sys/priocntl.h>
#include <sys/class.h>
@@ -41,7 +39,7 @@
/*
* The purpose of this file is to allow a user to make their own
* ts_dptbl. The contents of this file should be included in the
- * ts_dptbl(4) man page with proper instructions for making
+ * ts_dptbl(5) man page with proper instructions for making
* and replacing the TS_DPTBL.kmod in modules/sched. This was the
* only way to provide functionality equivalent to the mkboot/cunix
* method in SVr4 without having the utilities mkboot/cunix in
diff --git a/usr/src/uts/common/dtrace/dcpc.c b/usr/src/uts/common/dtrace/dcpc.c
index 9da817537c..9e2b42e457 100644
--- a/usr/src/uts/common/dtrace/dcpc.c
+++ b/usr/src/uts/common/dtrace/dcpc.c
@@ -75,7 +75,7 @@
* A consumer will fail to enable probes when resources are currently in use.
*
* The cpc provider contends for shared hardware resources along with other
- * consumers of the kernel CPU performance counter subsystem (e.g. cpustat(1M)).
+ * consumers of the kernel CPU performance counter subsystem (e.g. cpustat(8)).
* Only one such consumer can use the performance counters at any one time and
* counters are made available on a first-come, first-served basis. As with
* cpustat, the cpc provider has priority over per-LWP libcpc usage (e.g.
diff --git a/usr/src/uts/common/dtrace/dtrace.c b/usr/src/uts/common/dtrace/dtrace.c
index 67ce0c24fe..5ecd546d01 100644
--- a/usr/src/uts/common/dtrace/dtrace.c
+++ b/usr/src/uts/common/dtrace/dtrace.c
@@ -151,7 +151,7 @@ hrtime_t dtrace_unregister_defunct_reap = (hrtime_t)60 * NANOSEC;
/*
* DTrace External Variables
*
- * As dtrace(7D) is a kernel module, any DTrace variables are obviously
+ * As dtrace(4D) is a kernel module, any DTrace variables are obviously
* available to DTrace consumers via the backtick (`) syntax. One of these,
* dtrace_zero, is made deliberately so: it is provided as a source of
* well-known, zero-filled memory. While this variable is not documented,
diff --git a/usr/src/uts/common/fs/mntfs/mntvnops.c b/usr/src/uts/common/fs/mntfs/mntvnops.c
index 7374820f95..6bb3b514fb 100644
--- a/usr/src/uts/common/fs/mntfs/mntvnops.c
+++ b/usr/src/uts/common/fs/mntfs/mntvnops.c
@@ -54,7 +54,7 @@ extern void vfs_mnttab_readop(void);
* mntfs provides two methods of reading the in-kernel mnttab, i.e. the state of
* the mounted resources: the read-only file /etc/mnttab, and a collection of
* ioctl() commands. Most of these interfaces are public and are described in
- * mnttab(4). Three private ioctl() commands, MNTIOC_GETMNTENT,
+ * mnttab(5). Three private ioctl() commands, MNTIOC_GETMNTENT,
* MNTIOC_GETEXTMNTENT and MNTIOC_GETMNTANY, provide for the getmntent(3C)
* family of functions, allowing them to support white space in mount names.
*
@@ -1039,7 +1039,7 @@ mntgetattr(vnode_t *vp, vattr_t *vap, int flags, cred_t *cr,
/*
* The mntnode already has at least one snapshot from
* which to take the size; the user will understand from
- * mnttab(4) that the current size of the in-kernel
+ * mnttab(5) that the current size of the in-kernel
* mnttab is irrelevant.
*/
size = rsnapp->mnts_nmnts ? rsnapp->mnts_text_size :
@@ -1186,7 +1186,7 @@ mntinactive(vnode_t *vp, cred_t *cr, caller_context_t *ct)
* has a special meaning for /etc/mnttab: it forces mntfs to refresh the
* snapshot at the next ioctl().
*
- * mnttab(4) explains that "the snapshot...is taken any time a read(2) is
+ * mnttab(5) explains that "the snapshot...is taken any time a read(2) is
* performed at offset 0". We therefore ignore the read snapshot here.
*/
/* ARGSUSED */
diff --git a/usr/src/uts/common/fs/nfs/nfs4_idmap.c b/usr/src/uts/common/fs/nfs/nfs4_idmap.c
index c0e2492d56..0eb449b5ef 100644
--- a/usr/src/uts/common/fs/nfs/nfs4_idmap.c
+++ b/usr/src/uts/common/fs/nfs/nfs4_idmap.c
@@ -31,11 +31,11 @@
* mapping code is executing on the client or server. Thus, the following
* rules represents the latest incantation of the id mapping policies.
*
- * 1) For the case in which the nfsmapid(1m) daemon has _never_ been
+ * 1) For the case in which the nfsmapid(8) daemon has _never_ been
* started, the policy is to _always_ work with stringified uid's
* and gid's
*
- * 2) For the case in which the nfsmapid(1m) daemon _was_ started but
+ * 2) For the case in which the nfsmapid(8) daemon _was_ started but
* has either died or become unresponsive, the mapping policies are
* as follows:
*
@@ -72,7 +72,7 @@
* `-------------------------------'---------------------------------'
*
* 3) Lastly, in order to leverage better cache utilization whenever
- * communication with nfsmapid(1m) is currently hindered, cache
+ * communication with nfsmapid(8) is currently hindered, cache
* entry eviction is throttled whenever nfsidmap_daemon_dh == NULL.
*
*
@@ -80,28 +80,28 @@
* ====================================================
*
* GETATTR - Server-side GETATTR *id to attr string conversion policies
- * for unresponsive/dead nfsmapid(1m) daemon
+ * for unresponsive/dead nfsmapid(8) daemon
*
* a) If the *id is *ID_NOBODY, the string "nobody" is returned
*
- * b) If the *id is not *ID_NOBODY _and_ the nfsmapid(1m) daemon
+ * b) If the *id is not *ID_NOBODY _and_ the nfsmapid(8) daemon
* _is_ operational, the daemon is contacted to convert the
* [u/g]id into a string of type "[user/group]@domain"
*
- * c) If the nfsmapid(1m) daemon has died or has become unresponsive,
+ * c) If the nfsmapid(8) daemon has died or has become unresponsive,
* the server returns status == NFS4_OK for the GETATTR operation,
* and returns a strigified [u/g]id to let the client map it into
* the appropriate value.
*
* SETATTR - Server-side SETATTR attr string to *id conversion policies
- * for unresponsive/dead nfsmapid(1m) daemon
+ * for unresponsive/dead nfsmapid(8) daemon
*
* a) If the otw string is a stringified uid (ie. does _not_ contain
* an '@' sign and is of the form "12345") then the literal uid is
* decoded and it is used to perform the mapping.
*
* b) If, on the other hand, the otw string _is_ of the form
- * "[user/group]@domain" and problems arise contacting nfsmapid(1m),
+ * "[user/group]@domain" and problems arise contacting nfsmapid(8),
* the SETATTR operation _must_ fail w/NFS4ERR_DELAY, as the server
* cannot default to *ID_NOBODY, which would allow a file to be
* given away by setting it's owner or owner_group to "nobody".
@@ -329,7 +329,7 @@ nfs_idmap_str_uid(utf8string *u8s, uid_t *uid, bool_t isserver)
}
/*
- * Start-off with upcalls disabled, and once nfsmapid(1m) is up and
+ * Start-off with upcalls disabled, and once nfsmapid(8) is up and
* running, we'll leverage it's first flush to let the kernel know
* when it's up and available to perform mappings. Also, on client
* only, be smarter about when to issue upcalls by checking the
@@ -399,7 +399,7 @@ retry:
/*
* string came in as stringified id. Don't cache !
*
- * nfsmapid(1m) semantics have changed in order to
+ * nfsmapid(8) semantics have changed in order to
* support diskless clients. Thus, for stringified
* id's that have passwd/group entries, we'll go
* ahead and map them, returning no error.
@@ -538,7 +538,7 @@ nfs_idmap_uid_str(uid_t uid, utf8string *u8s, bool_t isserver)
}
/*
- * Start-off with upcalls disabled, and once nfsmapid(1m) is
+ * Start-off with upcalls disabled, and once nfsmapid(8) is
* up and running, we'll leverage it's first flush to let the
* kernel know when it's up and available to perform mappings.
* We fall back to answering with stringified uid's.
@@ -708,7 +708,7 @@ nfs_idmap_str_gid(utf8string *u8s, gid_t *gid, bool_t isserver)
}
/*
- * Start-off with upcalls disabled, and once nfsmapid(1m) is up and
+ * Start-off with upcalls disabled, and once nfsmapid(8) is up and
* running, we'll leverage it's first flush to let the kernel know
* when it's up and available to perform mappings. Also, on client
* only, be smarter about when to issue upcalls by checking the
@@ -779,7 +779,7 @@ retry:
/*
* string came in as stringified id. Don't cache !
*
- * nfsmapid(1m) semantics have changed in order to
+ * nfsmapid(8) semantics have changed in order to
* support diskless clients. Thus, for stringified
* id's that have passwd/group entries, we'll go
* ahead and map them, returning no error.
@@ -918,7 +918,7 @@ nfs_idmap_gid_str(gid_t gid, utf8string *u8s, bool_t isserver)
}
/*
- * Start-off with upcalls disabled, and once nfsmapid(1m) is
+ * Start-off with upcalls disabled, and once nfsmapid(8) is
* up and running, we'll leverage it's first flush to let the
* kernel know when it's up and available to perform mappings.
* We fall back to answering with stringified gid's.
@@ -1119,7 +1119,7 @@ nfs_idmap_args(struct nfsidmap_args *idmp)
nfs_idmap_cache_flush(&nig->s2g_ci);
/*
- * nfsmapid(1m) up and running; enable upcalls
+ * nfsmapid(8) up and running; enable upcalls
* State:
* 0 Just flush caches
* 1 Re-establish door knob
@@ -1309,7 +1309,7 @@ nfs_idmap_cache_s2i_lkup(idmap_cache_info_t *cip, utf8string *u8s,
* Check entry for staleness first, as user's id
* may have changed and may need to be remapped.
* Note that we don't evict entries from the cache
- * if we're having trouble contacting nfsmapid(1m)
+ * if we're having trouble contacting nfsmapid(8)
*/
if (TIMEOUT(p->id_time) && (*cip->nfsidmap_daemon_dh) != NULL) {
nfs_idmap_cache_rment(p);
@@ -1405,7 +1405,7 @@ nfs_idmap_cache_s2i_insert(idmap_cache_info_t *cip, uid_t id, utf8string *u8s,
* Check entry for staleness first, as user's id
* may have changed and may need to be remapped.
* Note that we don't evict entries from the cache
- * if we're having trouble contacting nfsmapid(1m)
+ * if we're having trouble contacting nfsmapid(8)
*/
if (TIMEOUT(p->id_time) && (*cip->nfsidmap_daemon_dh) != NULL) {
nfs_idmap_cache_rment(p);
@@ -1486,7 +1486,7 @@ nfs_idmap_cache_i2s_lkup(idmap_cache_info_t *cip, uid_t id, uint_t *hashno,
* Check entry for staleness first, as user's id
* may have changed and may need to be remapped.
* Note that we don't evict entries from the cache
- * if we're having trouble contacting nfsmapid(1m)
+ * if we're having trouble contacting nfsmapid(8)
*/
if (TIMEOUT(p->id_time) && (*cip->nfsidmap_daemon_dh) != NULL) {
nfs_idmap_cache_rment(p);
@@ -1570,7 +1570,7 @@ nfs_idmap_cache_i2s_insert(idmap_cache_info_t *cip, uid_t id, utf8string *u8s,
* Check entry for staleness first, as user's id
* may have changed and may need to be remapped.
* Note that we don't evict entries from the cache
- * if we're having trouble contacting nfsmapid(1m)
+ * if we're having trouble contacting nfsmapid(8)
*/
if (TIMEOUT(p->id_time) && (*cip->nfsidmap_daemon_dh) != NULL) {
nfs_idmap_cache_rment(p);
diff --git a/usr/src/uts/common/fs/nfs/nfs4_srv_attr.c b/usr/src/uts/common/fs/nfs/nfs4_srv_attr.c
index a9ee217a8b..13e5320752 100644
--- a/usr/src/uts/common/fs/nfs/nfs4_srv_attr.c
+++ b/usr/src/uts/common/fs/nfs/nfs4_srv_attr.c
@@ -2093,7 +2093,7 @@ rfs4_fattr4_owner(nfs4_attr_cmd_t cmd, struct nfs4_svgetit_arg *sarg,
* occur. Please refer to nfs4_idmap.c for details.
*
* Any other errors, such as the mapping not being found by
- * nfsmapid(1m), and interrupted clnt_call, etc, will result
+ * nfsmapid(8), and interrupted clnt_call, etc, will result
* in NFS4ERR_BADOWNER.
*
* XXX need to return consistent errors, perhaps all
@@ -2206,7 +2206,7 @@ rfs4_fattr4_owner_group(nfs4_attr_cmd_t cmd, struct nfs4_svgetit_arg *sarg,
* cannot occur. Please refer to nfs4_idmap.c for details.
*
* Any other errors, such as the mapping not being found by
- * nfsmapid(1m), and interrupted clnt_call, etc, will result
+ * nfsmapid(8), and interrupted clnt_call, etc, will result
* in NFS4ERR_BADOWNER.
*
* XXX need to return consistent errors, perhaps all
diff --git a/usr/src/uts/common/fs/nfs/nfs4_stub_vnops.c b/usr/src/uts/common/fs/nfs/nfs4_stub_vnops.c
index 83c84b7892..d0950dd6f0 100644
--- a/usr/src/uts/common/fs/nfs/nfs4_stub_vnops.c
+++ b/usr/src/uts/common/fs/nfs/nfs4_stub_vnops.c
@@ -1906,7 +1906,7 @@ nfs4_trigger_domount(vnode_t *stubvp, domount_args_t *dma, vfs_t **vfsp,
uap->flags = MS_SYSSPACE | MS_DATA;
/* fstype-independent mount options not covered elsewhere */
- /* copy parent's mount(1M) "-m" flag */
+ /* copy parent's mount(8) "-m" flag */
if (stubvfsp->vfs_flag & VFS_NOMNTTAB)
uap->flags |= MS_NOMNTTAB;
diff --git a/usr/src/uts/common/fs/nfs/nfs_auth.c b/usr/src/uts/common/fs/nfs/nfs_auth.c
index c20a18f433..16979e1422 100644
--- a/usr/src/uts/common/fs/nfs/nfs_auth.c
+++ b/usr/src/uts/common/fs/nfs/nfs_auth.c
@@ -219,7 +219,7 @@ nfsauth_zone_init(nfs_globals_t *ng)
nag = kmem_zalloc(sizeof (*nag), KM_SLEEP);
/*
- * mountd can be restarted by smf(5). We need to make sure
+ * mountd can be restarted by smf(7). We need to make sure
* the updated door handle will safely make it to mountd_dh.
*/
mutex_init(&nag->mountd_lock, NULL, MUTEX_DEFAULT, NULL);
@@ -462,7 +462,7 @@ retry:
if (dh == NULL) {
/*
* The rendezvous point has not been established yet!
- * This could mean that either mountd(1m) has not yet
+ * This could mean that either mountd(8) has not yet
* been started or that _this_ routine nuked the door
* handle after receiving an EINTR for a REVOKED door.
*
@@ -523,8 +523,8 @@ retry:
/*
* The server barfed and revoked
* the (existing) door on us; we
- * want to wait to give smf(5) a
- * chance to restart mountd(1m)
+ * want to wait to give smf(7) a
+ * chance to restart mountd(8)
* and establish a new door handle.
*/
mutex_enter(&nag->mountd_lock);
diff --git a/usr/src/uts/common/fs/nfs/nfs_cmd.c b/usr/src/uts/common/fs/nfs/nfs_cmd.c
index 40775bb231..b9d23ba0d6 100644
--- a/usr/src/uts/common/fs/nfs/nfs_cmd.c
+++ b/usr/src/uts/common/fs/nfs/nfs_cmd.c
@@ -138,7 +138,7 @@ retry:
if (dh == NULL) {
/*
* The rendezvous point has not been established yet !
- * This could mean that either mountd(1m) has not yet
+ * This could mean that either mountd(8) has not yet
* been started or that _this_ routine nuked the door
* handle after receiving an EINTR for a REVOKED door.
*
@@ -176,8 +176,8 @@ retry:
/*
* The server barfed and revoked
* the (existing) door on us; we
- * want to wait to give smf(5) a
- * chance to restart mountd(1m)
+ * want to wait to give smf(7) a
+ * chance to restart mountd(8)
* and establish a new door handle.
*/
mutex_enter(&ncg->nfscmd_lock);
diff --git a/usr/src/uts/common/fs/nfs/nfs_stats.c b/usr/src/uts/common/fs/nfs/nfs_stats.c
index 97f820d756..13466a4f33 100644
--- a/usr/src/uts/common/fs/nfs/nfs_stats.c
+++ b/usr/src/uts/common/fs/nfs/nfs_stats.c
@@ -34,7 +34,7 @@
/*
* Key to retrieve per-zone data corresponding to NFS kstats consumed by
- * nfsstat(1m).
+ * nfsstat(8).
*/
zone_key_t nfsstat_zone_key;
diff --git a/usr/src/uts/common/fs/pcfs/pc_node.c b/usr/src/uts/common/fs/pcfs/pc_node.c
index 84a29f4430..bf01336c6f 100644
--- a/usr/src/uts/common/fs/pcfs/pc_node.c
+++ b/usr/src/uts/common/fs/pcfs/pc_node.c
@@ -667,7 +667,7 @@ pc_mark_irrecov(struct pcfs *fsp)
"an irrecoverable error was encountered.\n"
"File damage is possible. To prevent further\n"
"damage, this pcfs instance will now be frozen.\n"
- "Use umount(1M) to release the instance.\n");
+ "Use umount(8) to release the instance.\n");
(void) pc_unlockfs(fsp);
}
}
diff --git a/usr/src/uts/common/fs/pcfs/pc_vfsops.c b/usr/src/uts/common/fs/pcfs/pc_vfsops.c
index 7b2205e1d7..60041a3d71 100644
--- a/usr/src/uts/common/fs/pcfs/pc_vfsops.c
+++ b/usr/src/uts/common/fs/pcfs/pc_vfsops.c
@@ -589,7 +589,7 @@ pcfs_parse_mntopts(struct pcfs *fsp)
/*
* The "secsize=..." mount option is a workaround for the lack of
- * lofi(7d) support for DKIOCGMEDIAINFO. If PCFS wants to parse the
+ * lofi(4D) support for DKIOCGMEDIAINFO. If PCFS wants to parse the
* partition table of a disk image and it has been partitioned with
* sector sizes other than 512 bytes, we'd fail on loopback'ed disk
* images.
@@ -1988,7 +1988,7 @@ parseBPB(struct pcfs *fsp, uchar_t *bpb, int *valid)
mediasize = (len_t)totsec * (len_t)secsize;
/*
* This is not an error because not all devices support the
- * dkio(7i) mediasize queries, and/or not all devices are
+ * dkio(4I) mediasize queries, and/or not all devices are
* partitioned. If we have not been able to figure out the
* size of the underlaying medium, we have to trust the BPB.
*/
@@ -2286,7 +2286,7 @@ recheck:
*
* Test whether the device is:
* - a floppy device from a known controller type via DKIOCINFO
- * - a real floppy using the fd(7d) driver and capable of fdio(7I) ioctls
+ * - a real floppy using the fd(4D) driver and capable of fdio(4I) ioctls
* - a USB floppy drive (identified by drive geometry)
*
* Detecting a floppy will make PCFS metadata updates on such media synchronous,
@@ -2381,7 +2381,7 @@ pcfs_device_getinfo(struct pcfs *fsp)
arg.mi.dki_media_type == DK_JAZ);
/*
- * if this device understands fdio(7I) requests it's
+ * if this device understands fdio(4I) requests it's
* obviously a floppy drive.
*/
if (!isfloppy &&
@@ -2390,7 +2390,7 @@ pcfs_device_getinfo(struct pcfs *fsp)
/*
* some devices we like to treat as floppies, but they don't
- * understand fdio(7I) requests.
+ * understand fdio(4I) requests.
*/
if (!isfloppy &&
!ldi_ioctl(lh, DKIOCINFO, argp, FKIOCTL, cr, NULL) &&
diff --git a/usr/src/uts/common/fs/portfs/port.c b/usr/src/uts/common/fs/portfs/port.c
index 91d998b4b5..dd32c82434 100644
--- a/usr/src/uts/common/fs/portfs/port.c
+++ b/usr/src/uts/common/fs/portfs/port.c
@@ -156,7 +156,7 @@
* interested on.
* The internal pollwakeup() function is used by all the file
* systems --which are supporting the VOP_POLL() interface- to notify
- * the upper layer (poll(2), devpoll(7d) and now event ports) about
+ * the upper layer (poll(2), devpoll(4D) and now event ports) about
* the event triggered (see valid events in poll(2)).
* The pollwakeup() function forwards the event to the layer registered
* to receive the current event.
diff --git a/usr/src/uts/common/fs/portfs/port_fd.c b/usr/src/uts/common/fs/portfs/port_fd.c
index a1a1d6fb68..511c15e979 100644
--- a/usr/src/uts/common/fs/portfs/port_fd.c
+++ b/usr/src/uts/common/fs/portfs/port_fd.c
@@ -230,7 +230,7 @@ port_associate_fd(port_t *pp, int source, uintptr_t object, int events,
* Allocate a polldat_t structure per fd
* The use of the polldat_t structure to cache file descriptors
* is required to be able to share the pollwakeup() function
- * with poll(2) and devpoll(7d).
+ * with poll(2) and devpoll(4D).
*/
pfd = kmem_zalloc(sizeof (portfd_t), KM_SLEEP);
pdp = PFTOD(pfd);
diff --git a/usr/src/uts/common/fs/proc/prvnops.c b/usr/src/uts/common/fs/proc/prvnops.c
index 993b42530a..2dccbb2f63 100644
--- a/usr/src/uts/common/fs/proc/prvnops.c
+++ b/usr/src/uts/common/fs/proc/prvnops.c
@@ -6235,7 +6235,7 @@ prseek(vnode_t *vp, offset_t ooff, offset_t *noffp, caller_context_t *ct)
/*
* We use the p_execdir member of proc_t to expand the %d token in core file
* paths (the directory path for the executable that dumped core; see
- * coreadm(1M) for details). We'd like gcore(1) to be able to expand %d in
+ * coreadm(8) for details). We'd like gcore(1) to be able to expand %d in
* the same way as core dumping from the kernel, but there's no convenient
* and comprehensible way to export the path name for p_execdir. To solve
* this, we try to find the actual path to the executable that was used. In
diff --git a/usr/src/uts/common/fs/sockfs/nl7c.c b/usr/src/uts/common/fs/sockfs/nl7c.c
index c76dada8d7..a71572cbd4 100644
--- a/usr/src/uts/common/fs/sockfs/nl7c.c
+++ b/usr/src/uts/common/fs/sockfs/nl7c.c
@@ -598,7 +598,7 @@ done:
/*
* Open and read each line from "/etc/nca/ncalogd.conf" and parse for
- * the tokens and token text (i.e. key and value ncalogd.conf(4)):
+ * the tokens and token text (i.e. key and value ncalogd.conf(5)):
*
* status=enabled
*
diff --git a/usr/src/uts/common/fs/sockfs/nl7clogd.c b/usr/src/uts/common/fs/sockfs/nl7clogd.c
index 1580a08c6c..4dd40abf2d 100644
--- a/usr/src/uts/common/fs/sockfs/nl7clogd.c
+++ b/usr/src/uts/common/fs/sockfs/nl7clogd.c
@@ -23,8 +23,6 @@
* Use is subject to license terms.
*/
-#pragma ident "%Z%%M% %I% %E% SMI"
-
#include <sys/sysmacros.h>
#include <sys/callb.h>
#include <sys/fcntl.h>
@@ -53,7 +51,7 @@ static void logit_flush(void *);
* NL7C reuses the NCA logging scheme, the directory "/var/nca" contains
* the symlink "current" to 1 of up to 16 NCA BLF logging files, by default
* a single logging file "log", optionally paths of up to 16 log files can
- * be specified via ncalogd.conf(4), note that these log files need not be
+ * be specified via ncalogd.conf(5), note that these log files need not be
* in the "/var/nca" directory.
*
* NL7C reuses the NCA logging APIs defined in <inet/nca/ncalogd.h>, at
diff --git a/usr/src/uts/common/fs/sockfs/sockcommon_sops.c b/usr/src/uts/common/fs/sockfs/sockcommon_sops.c
index bc2878ccc8..59d052084f 100644
--- a/usr/src/uts/common/fs/sockfs/sockcommon_sops.c
+++ b/usr/src/uts/common/fs/sockfs/sockcommon_sops.c
@@ -174,7 +174,7 @@ so_bind(struct sonode *so, struct sockaddr *name, socklen_t namelen,
/*
* Force a zero sa_family to match so_family.
*
- * Some programs like inetd(1M) don't set the
+ * Some programs like inetd(8) don't set the
* family field. Other programs leave
* sin_family set to garbage - SunOS 4.X does
* not check the family field on a bind.
diff --git a/usr/src/uts/common/fs/sockfs/sockfilter.c b/usr/src/uts/common/fs/sockfs/sockfilter.c
index ea161e30ae..62a079f419 100644
--- a/usr/src/uts/common/fs/sockfs/sockfilter.c
+++ b/usr/src/uts/common/fs/sockfs/sockfilter.c
@@ -42,7 +42,7 @@
*
* Socket filter entry (sof_entry_t):
*
- * There exists one entry for each configured filter (done via soconfig(1M)),
+ * There exists one entry for each configured filter (done via soconfig(8)),
* and they are all in sof_entry_list. In addition to the global list, each
* sockparams entry maintains a list of filters that is interested in that
* particular socket type. So the filter entry may be referenced by multiple
diff --git a/usr/src/uts/common/fs/sockfs/sockfilter_impl.h b/usr/src/uts/common/fs/sockfs/sockfilter_impl.h
index cf2ad8b20d..e63831e172 100644
--- a/usr/src/uts/common/fs/sockfs/sockfilter_impl.h
+++ b/usr/src/uts/common/fs/sockfs/sockfilter_impl.h
@@ -80,7 +80,7 @@ struct sof_entry_kstat {
/*
* Socket filter entry - one for each configured filter (added and
- * removed by soconfig(1M)).
+ * removed by soconfig(8)).
*
* sofe_flags, sofe_refcnt and sofe_mod are protected by sofe_lock, and all
* other fields are write once.
@@ -106,7 +106,7 @@ struct sof_entry {
/* Filter entry flags */
#define SOFEF_AUTO 0x1 /* automatic filter */
#define SOFEF_PROG 0x2 /* programmatic filter */
-#define SOFEF_CONDEMED 0x4 /* removed by soconfig(1M) */
+#define SOFEF_CONDEMED 0x4 /* removed by soconfig(8) */
/*
* Socket filter instance - one for each socket using a sof_entry_t
diff --git a/usr/src/uts/common/fs/sockfs/sockparams.c b/usr/src/uts/common/fs/sockfs/sockparams.c
index 1015decaac..86cbced50c 100644
--- a/usr/src/uts/common/fs/sockfs/sockparams.c
+++ b/usr/src/uts/common/fs/sockfs/sockparams.c
@@ -64,7 +64,7 @@ static int sockparams_sdev_init(struct sockparams *, char *, int);
static void sockparams_sdev_fini(struct sockparams *);
/*
- * Global sockparams list (populated via soconfig(1M)).
+ * Global sockparams list (populated via soconfig(8)).
*/
static list_t sphead;
diff --git a/usr/src/uts/common/fs/sockfs/socktpi.c b/usr/src/uts/common/fs/sockfs/socktpi.c
index b8d83105e8..0e9883498b 100644
--- a/usr/src/uts/common/fs/sockfs/socktpi.c
+++ b/usr/src/uts/common/fs/sockfs/socktpi.c
@@ -865,7 +865,7 @@ sotpi_bindlisten(struct sonode *so, struct sockaddr *name,
/*
* Force a zero sa_family to match so_family.
*
- * Some programs like inetd(1M) don't set the
+ * Some programs like inetd(8) don't set the
* family field. Other programs leave
* sin_family set to garbage - SunOS 4.X does
* not check the family field on a bind.
@@ -6518,7 +6518,7 @@ socktpi_init(void)
{
/*
* Create sonode caches. We create a special one for AF_UNIX so
- * that we can track them for netstat(1m).
+ * that we can track them for netstat(8).
*/
socktpi_cache = kmem_cache_create("socktpi_cache",
sizeof (struct sotpi_sonode), 0, socktpi_constructor,
diff --git a/usr/src/uts/common/fs/ufs/lufs_log.c b/usr/src/uts/common/fs/ufs/lufs_log.c
index 2ec3f7907c..052c53d507 100644
--- a/usr/src/uts/common/fs/ufs/lufs_log.c
+++ b/usr/src/uts/common/fs/ufs/lufs_log.c
@@ -1591,7 +1591,7 @@ ldl_seterror(ml_unit_t *ul, char *why)
cmn_err(CE_WARN, "%s", why);
cmn_err(CE_WARN, "ufs log for %s changed state to Error",
ul->un_ufsvfs->vfs_fs->fs_fsmnt);
- cmn_err(CE_WARN, "Please umount(1M) %s and run fsck(1M)",
+ cmn_err(CE_WARN, "Please umount(8) %s and run fsck(8)",
ul->un_ufsvfs->vfs_fs->fs_fsmnt);
/*
diff --git a/usr/src/uts/common/fs/ufs/ufs_alloc.c b/usr/src/uts/common/fs/ufs/ufs_alloc.c
index ee7d99143e..3b052f75c0 100644
--- a/usr/src/uts/common/fs/ufs/ufs_alloc.c
+++ b/usr/src/uts/common/fs/ufs/ufs_alloc.c
@@ -381,7 +381,7 @@ loop:
rw_exit(&ip->i_contents);
VN_RELE(ITOV(ip));
cmn_err(CE_WARN,
- "%s: unexpected allocated inode %d, run fsck(1M)%s",
+ "%s: unexpected allocated inode %d, run fsck(8)%s",
fs->fs_fsmnt, (int)ino,
(TRANS_ISTRANS(ufsvfsp) ? " -o f" : ""));
goto loop;
@@ -406,7 +406,7 @@ loop:
if (ip->i_size) {
cmn_err(CE_WARN,
- "%s: free inode %d had size 0x%llx, run fsck(1M)%s",
+ "%s: free inode %d had size 0x%llx, run fsck(8)%s",
fs->fs_fsmnt, (int)ino, ip->i_size,
(TRANS_ISTRANS(ufsvfsp) ? " -o f" : ""));
}
diff --git a/usr/src/uts/common/fs/ufs/ufs_inode.c b/usr/src/uts/common/fs/ufs/ufs_inode.c
index ea42eed6e4..35b66b203c 100644
--- a/usr/src/uts/common/fs/ufs/ufs_inode.c
+++ b/usr/src/uts/common/fs/ufs/ufs_inode.c
@@ -612,7 +612,7 @@ again:
vp->v_vfsp = &EIO_vfs;
VN_RELE(vp);
cmn_err(CE_NOTE,
- "%s: unexpected free inode %d, run fsck(1M)%s",
+ "%s: unexpected free inode %d, run fsck(8)%s",
fs->fs_fsmnt, (int)ino,
(TRANS_ISTRANS(ufsvfsp) ? " -o f" : ""));
return (EIO);
diff --git a/usr/src/uts/common/fs/ufs/ufs_vfsops.c b/usr/src/uts/common/fs/ufs/ufs_vfsops.c
index afd43e7e63..390319bfef 100644
--- a/usr/src/uts/common/fs/ufs/ufs_vfsops.c
+++ b/usr/src/uts/common/fs/ufs/ufs_vfsops.c
@@ -983,7 +983,7 @@ mountfs(struct vfs *vfsp, enum whymountroot why, struct vnode *devvp,
*/
if (!(vfsp->vfs_flag & VFS_RDONLY)) {
cmn_err(CE_WARN, "Error accessing ufs "
- "log for %s; Please run fsck(1M)", path);
+ "log for %s; Please run fsck(8)", path);
goto out;
}
}
diff --git a/usr/src/uts/common/fs/xattr.c b/usr/src/uts/common/fs/xattr.c
index 2326a42747..ffa68a362e 100644
--- a/usr/src/uts/common/fs/xattr.c
+++ b/usr/src/uts/common/fs/xattr.c
@@ -28,7 +28,7 @@
*
* The Solaris VFS layer presents extended file attributes using a special
* "XATTR" directory under files or directories that have extended file
- * attributes. See fsattr(5) for background.
+ * attributes. See fsattr(7) for background.
*
* This design avoids the need for a separate set of VFS or vnode functions
* for operating on XATTR objects. File system implementations that support
diff --git a/usr/src/uts/common/fs/zfs/dsl_scan.c b/usr/src/uts/common/fs/zfs/dsl_scan.c
index fa7b9fb2fc..f6e8db4100 100644
--- a/usr/src/uts/common/fs/zfs/dsl_scan.c
+++ b/usr/src/uts/common/fs/zfs/dsl_scan.c
@@ -3856,7 +3856,7 @@ dsl_scan_scrub_cb(dsl_pool_t *dp,
/*
* Keep track of how much data we've examined so that
- * zpool(1M) status can make useful progress reports.
+ * zpool(8) status can make useful progress reports.
*/
scn->scn_phys.scn_examined += DVA_GET_ASIZE(dva);
spa->spa_scan_pass_exam += DVA_GET_ASIZE(dva);
diff --git a/usr/src/uts/common/fs/zfs/lua/README.zfs b/usr/src/uts/common/fs/zfs/lua/README.zfs
index 0e22de7a4a..bd0804f99e 100644
--- a/usr/src/uts/common/fs/zfs/lua/README.zfs
+++ b/usr/src/uts/common/fs/zfs/lua/README.zfs
@@ -26,7 +26,7 @@ maintenance policy, the modifications that have been made to it, and how it
should (and should not) be used.
For a description of the Lua language and features exposed by ZFS channel
-programs, please refer to the zfs-program(1m) man page instead.
+programs, please refer to the zfs-program(8) man page instead.
Maintenance policy
diff --git a/usr/src/uts/common/fs/zfs/metaslab.c b/usr/src/uts/common/fs/zfs/metaslab.c
index fe53d142c2..4828824b10 100644
--- a/usr/src/uts/common/fs/zfs/metaslab.c
+++ b/usr/src/uts/common/fs/zfs/metaslab.c
@@ -5639,7 +5639,7 @@ metaslab_claim_concrete(vdev_t *vd, uint64_t offset, uint64_t size,
range_tree_remove(msp->ms_allocatable, offset, size);
range_tree_clear(msp->ms_trim, offset, size);
- if (spa_writeable(spa)) { /* don't dirty if we're zdb(1M) */
+ if (spa_writeable(spa)) { /* don't dirty if we're zdb(8) */
metaslab_class_t *mc = msp->ms_group->mg_class;
multilist_sublist_t *mls =
multilist_sublist_lock_obj(mc->mc_metaslab_txg_list, msp);
@@ -5686,7 +5686,7 @@ metaslab_claim_impl(vdev_t *vd, uint64_t offset, uint64_t size, uint64_t txg)
metaslab_claim_cb_arg_t arg;
/*
- * Only zdb(1M) can claim on indirect vdevs. This is used
+ * Only zdb(8) can claim on indirect vdevs. This is used
* to detect leaks of mapped space (that are not accounted
* for in the obsolete counts, spacemap, or bpobj).
*/
diff --git a/usr/src/uts/common/fs/zfs/spa_history.c b/usr/src/uts/common/fs/zfs/spa_history.c
index 897d3c6e9a..44a4ec7ddc 100644
--- a/usr/src/uts/common/fs/zfs/spa_history.c
+++ b/usr/src/uts/common/fs/zfs/spa_history.c
@@ -334,7 +334,7 @@ spa_history_log_sync(void *arg, dmu_tx_t *tx)
* posted as a result of the ZPOOL_HIST_CMD key being present
* it would result in only one sysevent being posted with the
* full command line arguments, requiring the consumer to know
- * how to parse and understand zfs(1M) command invocations.
+ * how to parse and understand zfs(8) command invocations.
*/
spa_history_log_notify(spa, nvl);
} else if (nvlist_exists(nvl, ZPOOL_HIST_IOCTL)) {
diff --git a/usr/src/uts/common/fs/zfs/spa_misc.c b/usr/src/uts/common/fs/zfs/spa_misc.c
index 27697d5267..cb59eef824 100644
--- a/usr/src/uts/common/fs/zfs/spa_misc.c
+++ b/usr/src/uts/common/fs/zfs/spa_misc.c
@@ -1384,7 +1384,7 @@ spa_vdev_state_exit(spa_t *spa, vdev_t *vd, int error)
/*
* If anything changed, wait for it to sync. This ensures that,
- * from the system administrator's perspective, zpool(1M) commands
+ * from the system administrator's perspective, zpool(8) commands
* are synchronous. This is important for things like zpool offline:
* when the command completes, you expect no further I/O from ZFS.
*/
diff --git a/usr/src/uts/common/fs/zfs/sys/dmu.h b/usr/src/uts/common/fs/zfs/sys/dmu.h
index d38914dd1d..be834895c8 100644
--- a/usr/src/uts/common/fs/zfs/sys/dmu.h
+++ b/usr/src/uts/common/fs/zfs/sys/dmu.h
@@ -963,7 +963,7 @@ void dmu_objset_fast_stat(objset_t *os, dmu_objset_stats_t *stat);
/*
* Add entries to the nvlist for all the objset's properties. See
- * zfs_prop_table[] and zfs(1m) for details on the properties.
+ * zfs_prop_table[] and zfs(8) for details on the properties.
*/
void dmu_objset_stats(objset_t *os, struct nvlist *nv);
@@ -974,7 +974,7 @@ void dmu_objset_stats(objset_t *os, struct nvlist *nv);
* availbytes is the amount of space available to this objset, taking
* into account quotas & reservations, assuming that no other objsets
* use the space first. These values correspond to the 'referenced' and
- * 'available' properties, described in the zfs(1m) manpage.
+ * 'available' properties, described in the zfs(8) manpage.
*
* usedobjs and availobjs are the number of objects currently allocated,
* and available.
diff --git a/usr/src/uts/common/fs/zfs/sys/zfs_ioctl.h b/usr/src/uts/common/fs/zfs/sys/zfs_ioctl.h
index 60d4d6805f..5058d48e74 100644
--- a/usr/src/uts/common/fs/zfs/sys/zfs_ioctl.h
+++ b/usr/src/uts/common/fs/zfs/sys/zfs_ioctl.h
@@ -455,7 +455,7 @@ typedef struct zfs_cmd {
uint64_t zc_history_len;
uint64_t zc_history_offset;
uint64_t zc_obj;
- uint64_t zc_iflags; /* internal to zfs(7fs) */
+ uint64_t zc_iflags; /* internal to zfs(4FS) */
zfs_share_t zc_share;
dmu_objset_stats_t zc_objset_stats;
dmu_replay_record_t zc_begin_record;
diff --git a/usr/src/uts/common/fs/zfs/vdev.c b/usr/src/uts/common/fs/zfs/vdev.c
index 99ad0cd27d..8e155979e6 100644
--- a/usr/src/uts/common/fs/zfs/vdev.c
+++ b/usr/src/uts/common/fs/zfs/vdev.c
@@ -203,7 +203,7 @@ vdev_getops(const char *type)
/*
* Derive the enumerated alloction bias from string input.
- * String origin is either the per-vdev zap or zpool(1M).
+ * String origin is either the per-vdev zap or zpool(8).
*/
static vdev_alloc_bias_t
vdev_derive_alloc_bias(const char *bias)
diff --git a/usr/src/uts/common/fs/zfs/zcp.c b/usr/src/uts/common/fs/zfs/zcp.c
index 45ffa37e2a..e2db01c5b6 100644
--- a/usr/src/uts/common/fs/zfs/zcp.c
+++ b/usr/src/uts/common/fs/zfs/zcp.c
@@ -22,7 +22,7 @@
*
* The ZCP interface allows various ZFS commands and operations ZFS
* administrative operations (e.g. creating and destroying snapshots, typically
- * performed via an ioctl to /dev/zfs by the zfs(1M) command and
+ * performed via an ioctl to /dev/zfs by the zfs(8) command and
* libzfs/libzfs_core) to be run * programmatically as a Lua script. A ZCP
* script is run as a dsl_sync_task and fully executed during one transaction
* group sync. This ensures that no other changes can be written concurrently
@@ -86,7 +86,7 @@
* longjumps out of the script execution with luaL_error() and returns with the
* error.
*
- * See zfs-program(1M) for more information on high level usage.
+ * See zfs-program(8) for more information on high level usage.
*/
#include "lua.h"
diff --git a/usr/src/uts/common/fs/zfs/zfs_vfsops.c b/usr/src/uts/common/fs/zfs/zfs_vfsops.c
index 26805d4806..86d83e7ace 100644
--- a/usr/src/uts/common/fs/zfs/zfs_vfsops.c
+++ b/usr/src/uts/common/fs/zfs/zfs_vfsops.c
@@ -175,7 +175,7 @@ zfs_sync(vfs_t *vfsp, short flag, cred_t *cr)
} else {
/*
* Sync all ZFS filesystems. This is what happens when you
- * run sync(1M). Unlike other filesystems, ZFS honors the
+ * run sync(8). Unlike other filesystems, ZFS honors the
* request by waiting for all pools to commit all dirty data.
*/
spa_sync_allpools();
diff --git a/usr/src/uts/common/fs/zfs/zio.c b/usr/src/uts/common/fs/zfs/zio.c
index 014f2518ab..b32dffd79c 100644
--- a/usr/src/uts/common/fs/zfs/zio.c
+++ b/usr/src/uts/common/fs/zfs/zio.c
@@ -1121,7 +1121,7 @@ zio_claim(zio_t *pio, spa_t *spa, uint64_t txg, const blkptr_t *bp,
ASSERT3U(spa->spa_uberblock.ub_rootbp.blk_birth, <,
spa_min_claim_txg(spa));
ASSERT(txg == spa_min_claim_txg(spa) || txg == 0);
- ASSERT(!BP_GET_DEDUP(bp) || !spa_writeable(spa)); /* zdb(1M) */
+ ASSERT(!BP_GET_DEDUP(bp) || !spa_writeable(spa)); /* zdb(8) */
zio = zio_create(pio, spa, txg, bp, NULL, BP_GET_PSIZE(bp),
BP_GET_PSIZE(bp), done, private, ZIO_TYPE_CLAIM, ZIO_PRIORITY_NOW,
diff --git a/usr/src/uts/common/fs/zfs/zvol.c b/usr/src/uts/common/fs/zfs/zvol.c
index 3bb8b8964c..1b3bc07600 100644
--- a/usr/src/uts/common/fs/zfs/zvol.c
+++ b/usr/src/uts/common/fs/zfs/zvol.c
@@ -1709,7 +1709,7 @@ zvol_log_truncate(zvol_state_t *zv, dmu_tx_t *tx, uint64_t off, uint64_t len,
}
/*
- * Dirtbag ioctls to support mkfs(1M) for UFS filesystems. See dkio(7I).
+ * Dirtbag ioctls to support mkfs(8) for UFS filesystems. See dkio(4I).
* Also a dirtbag dkio ioctl for unmap/free-block functionality.
*/
/*ARGSUSED*/
diff --git a/usr/src/uts/common/inet/ip.h b/usr/src/uts/common/inet/ip.h
index 81801b3dad..7687fdd29e 100644
--- a/usr/src/uts/common/inet/ip.h
+++ b/usr/src/uts/common/inet/ip.h
@@ -177,7 +177,7 @@ typedef struct ipoptp_s
#define IPOPTP_ERROR 0x00000001
#endif /* _KERNEL */
-/* Controls forwarding of IP packets, set via ipadm(1M)/ndd(1M) */
+/* Controls forwarding of IP packets, set via ipadm(8)/ndd(8) */
#define IP_FORWARD_NEVER 0
#define IP_FORWARD_ALWAYS 1
diff --git a/usr/src/uts/common/inet/ip/ip_if.c b/usr/src/uts/common/inet/ip/ip_if.c
index 638a5e4b21..2307837eb8 100644
--- a/usr/src/uts/common/inet/ip/ip_if.c
+++ b/usr/src/uts/common/inet/ip/ip_if.c
@@ -8656,8 +8656,8 @@ ip_sioctl_plink_ipmp(ill_t *ill, int ioccmd)
* Do I_PLINK/I_LINK or I_PUNLINK/I_UNLINK with consistency checks and also
* atomically set/clear the muxids. Also complete the ioctl by acking or
* naking it. Note that the code is structured such that the link type,
- * whether it's persistent or not, is treated equally. ifconfig(1M) and
- * its clones use the persistent link, while pppd(1M) and perhaps many
+ * whether it's persistent or not, is treated equally. ifconfig(8) and
+ * its clones use the persistent link, while pppd(8) and perhaps many
* other daemons may use non-persistent link. When combined with some
* ill_t states, linking and unlinking lower streams may be used as
* indicators of dynamic re-plumbing events [see PSARC/1999/348].
diff --git a/usr/src/uts/common/inet/ip/sadb.c b/usr/src/uts/common/inet/ip/sadb.c
index 5f1d1c96ee..14848656ed 100644
--- a/usr/src/uts/common/inet/ip/sadb.c
+++ b/usr/src/uts/common/inet/ip/sadb.c
@@ -3239,7 +3239,7 @@ sadb_common_add(queue_t *pfkey_q, mblk_t *mp, sadb_msg_t *samsg,
/*
* An error here indicates that alg is the wrong type
* (IE: not authentication) or its not in the alg tables
- * created by ipsecalgs(1m), or Kcf does not like the
+ * created by ipsecalgs(8), or Kcf does not like the
* parameters passed in with this algorithm, which is
* probably a coding error!
*/
@@ -6867,8 +6867,8 @@ ipsec_tun_pol(ipsec_selector_t *sel, ipsec_policy_t **ppp,
return (ENOENT);
}
/*
- * Else, this is a tunnel policy configured with ifconfig(1m)
- * or "negotiate transport" with ipsecconf(1m). We have an
+ * Else, this is a tunnel policy configured with ifconfig(8)
+ * or "negotiate transport" with ipsecconf(8). We have an
* itp with policy set based on any match, so don't bother
* changing fields in "sel".
*/
diff --git a/usr/src/uts/common/inet/ip/spd.c b/usr/src/uts/common/inet/ip/spd.c
index 85f06f3d02..0bcecd8a3a 100644
--- a/usr/src/uts/common/inet/ip/spd.c
+++ b/usr/src/uts/common/inet/ip/spd.c
@@ -4913,7 +4913,7 @@ ipsec_alg_fix_min_max(ipsec_alginfo_t *alg, ipsec_algtype_t alg_type,
}
/*
- * Sanity check parameters provided by ipsecalgs(1m). Assume that
+ * Sanity check parameters provided by ipsecalgs(8). Assume that
* the algoritm is marked as valid, there is a check at the top
* of this function. If any of the checks below fail, the algorithm
* entry is invalid.
diff --git a/usr/src/uts/common/inet/ip_ndp.h b/usr/src/uts/common/inet/ip_ndp.h
index 38ab51e2ff..c1a156067e 100644
--- a/usr/src/uts/common/inet/ip_ndp.h
+++ b/usr/src/uts/common/inet/ip_ndp.h
@@ -161,7 +161,7 @@ typedef struct ndp_g_s {
/*
* NCE_F_NONUD is used to disable IPv6 Neighbor Unreachability Detection or
- * IPv4 aging and maps to the ATF_PERM flag for arp(1m)
+ * IPv4 aging and maps to the ATF_PERM flag for arp(8)
*/
#define NCE_F_NONUD 0x10
@@ -181,7 +181,7 @@ typedef struct ndp_g_s {
* NCE_F_AUTHORITY is set for any address that we have authoritatitve
* information for. This includes locally configured addresses as well
* as statically configured arp entries that are set up using the "permanent"
- * option described in arp(1m). The NCE_F_AUTHORITY asserts that we would
+ * option described in arp(8). The NCE_F_AUTHORITY asserts that we would
* reject any updates for that nce's (host, link-layer-address) information
*/
#define NCE_F_AUTHORITY 0x800
diff --git a/usr/src/uts/common/inet/ipd/ipd.c b/usr/src/uts/common/inet/ipd/ipd.c
index 25e0b699c5..22f2d79d24 100644
--- a/usr/src/uts/common/inet/ipd/ipd.c
+++ b/usr/src/uts/common/inet/ipd/ipd.c
@@ -71,7 +71,7 @@
*
* ipd has two different entry points, one is administrative, the other is the
* data path. The administrative path is accessed by a userland component called
- * ipdadm(1M). It communicates to the kernel component via ioctls to /dev/ipd.
+ * ipdadm(8). It communicates to the kernel component via ioctls to /dev/ipd.
* If the administrative path enables a specific zone, then the data path will
* become active for that zone. Any packet that leaves that zone's IP stack or
* is going to enter it, comes through the callback specified in the hook_t(9S)
diff --git a/usr/src/uts/common/inet/iptun.h b/usr/src/uts/common/inet/iptun.h
index 1cd74d87cc..7745c8b3d7 100644
--- a/usr/src/uts/common/inet/iptun.h
+++ b/usr/src/uts/common/inet/iptun.h
@@ -82,7 +82,7 @@ typedef struct iptun_kparams {
#define IPTUN_KPARAM_RADDR 0x00000004 /* itk_raddr is set */
#define IPTUN_KPARAM_SECINFO 0x00000008 /* itk_secinfo is set */
#define IPTUN_KPARAM_IMPLICIT 0x00000010 /* implicitly created IP tunnel */
-#define IPTUN_KPARAM_IPSECPOL 0x00000020 /* ipsecconf(1M) policy present */
+#define IPTUN_KPARAM_IPSECPOL 0x00000020 /* ipsecconf(8) policy present */
#ifdef __cplusplus
}
diff --git a/usr/src/uts/common/inet/iptun/iptun.c b/usr/src/uts/common/inet/iptun/iptun.c
index ca46539f89..e67e6bd26e 100644
--- a/usr/src/uts/common/inet/iptun/iptun.c
+++ b/usr/src/uts/common/inet/iptun/iptun.c
@@ -1115,12 +1115,12 @@ iptun_setparams(iptun_t *iptun, const iptun_kparams_t *ik)
if (ik->iptun_kparam_flags & IPTUN_KPARAM_SECINFO) {
/*
- * Set IPsec policy originating from the ifconfig(1M) command
+ * Set IPsec policy originating from the ifconfig(8) command
* line. This is traditionally called "simple" policy because
* the ipsec_req_t (iptun_kparam_secinfo) can only describe a
* simple policy of "do ESP on everything" and/or "do AH on
* everything" (as opposed to the rich policy that can be
- * defined with ipsecconf(1M)).
+ * defined with ipsecconf(8)).
*/
if (iptun->iptun_typeinfo->iti_type == IPTUN_TYPE_6TO4) {
/*
diff --git a/usr/src/uts/common/inet/sadb.h b/usr/src/uts/common/inet/sadb.h
index 30b935495f..ddb3b3902f 100644
--- a/usr/src/uts/common/inet/sadb.h
+++ b/usr/src/uts/common/inet/sadb.h
@@ -73,12 +73,12 @@ typedef struct ipsa_cm_mech_s {
* initialize the Block Cipher, is made up of a Counter and a Salt.
* The Counter is fixed at 64 bits and is incremented for each packet.
* The Salt value can be any whole byte value upto 64 bits. This is
- * algorithm mode specific and can be configured with ipsecalgs(1m).
+ * algorithm mode specific and can be configured with ipsecalgs(8).
*
* We only support whole byte salt lengths, this is because the salt is
- * stored in an array of uint8_t's. This is enforced by ipsecalgs(1m)
+ * stored in an array of uint8_t's. This is enforced by ipsecalgs(8)
* which configures the salt length as a number of bytes. Checks are
- * made to ensure the salt length defined in ipsecalgs(1m) fits in
+ * made to ensure the salt length defined in ipsecalgs(8) fits in
* the ipsec_nonce_t.
*
* The Salt value remains constant for the life of the SA, the Salt is
diff --git a/usr/src/uts/common/inet/tcp/tcp_bind.c b/usr/src/uts/common/inet/tcp/tcp_bind.c
index 18efac7b74..5c2e1e1932 100644
--- a/usr/src/uts/common/inet/tcp/tcp_bind.c
+++ b/usr/src/uts/common/inet/tcp/tcp_bind.c
@@ -291,7 +291,7 @@ retry:
* Return the next anonymous port in the privileged port range for
* bind checking. It starts at IPPORT_RESERVED - 1 and goes
* downwards. This is the same behavior as documented in the userland
- * library call rresvport(3N).
+ * library call rresvport(3SOCKET).
*
* TS note: skip multilevel ports.
*/
diff --git a/usr/src/uts/common/inet/tcp/tcp_misc.c b/usr/src/uts/common/inet/tcp/tcp_misc.c
index 0896dd7611..423d3003cf 100644
--- a/usr/src/uts/common/inet/tcp/tcp_misc.c
+++ b/usr/src/uts/common/inet/tcp/tcp_misc.c
@@ -44,7 +44,7 @@ static boolean_t tcp_do_reclaim = B_TRUE;
* TCP_IOC_ABORT_CONN is a non-transparent ioctl command used for aborting
* TCP connections. To invoke this ioctl, a tcp_ioc_abort_conn_t structure
* (defined in tcp.h) needs to be filled in and passed into the kernel
- * via an I_STR ioctl command (see streamio(7I)). The tcp_ioc_abort_conn_t
+ * via an I_STR ioctl command (see streamio(4I)). The tcp_ioc_abort_conn_t
* structure contains the four-tuple of a TCP connection and a range of TCP
* states (specified by ac_start and ac_end). The use of wildcard addresses
* and ports is allowed. Connections with a matching four tuple and a state
diff --git a/usr/src/uts/common/io/audio/impl/audio_ddi.c b/usr/src/uts/common/io/audio/impl/audio_ddi.c
index 7acf57da82..41ac11d528 100644
--- a/usr/src/uts/common/io/audio/impl/audio_ddi.c
+++ b/usr/src/uts/common/io/audio/impl/audio_ddi.c
@@ -507,7 +507,7 @@ audio_init_ops(struct dev_ops *devops, const char *name)
(void) strlcpy(helper->name, name, sizeof (helper->name));
- helper->minfo.mi_idnum = 0; /* only for strlog(1M) */
+ helper->minfo.mi_idnum = 0; /* only for strlog(8) */
helper->minfo.mi_idname = helper->name;
helper->minfo.mi_minpsz = 0;
helper->minfo.mi_maxpsz = 8192;
diff --git a/usr/src/uts/common/io/audio/impl/audio_sun.c b/usr/src/uts/common/io/audio/impl/audio_sun.c
index cee3f6ace4..698eae3801 100644
--- a/usr/src/uts/common/io/audio/impl/audio_sun.c
+++ b/usr/src/uts/common/io/audio/impl/audio_sun.c
@@ -23,7 +23,7 @@
*/
/*
- * Sun audio(7I) and mixer(7I) personality.
+ * Sun audio(4I) and mixer(4I) personality.
*
* There are some "undocumented" details of how legacy Sun audio
* interfaces work. The following "rules" were derived from reading the
@@ -251,7 +251,7 @@ devaudio_proc_alloc(audio_client_t *c)
info = &proc->p_info;
/*
- * audio(7I) says: Upon the initial open() of the audio
+ * audio(4I) says: Upon the initial open() of the audio
* device, the driver resets the data format of the device to
* the default state of 8-bit, 8Khz, mono u-Law data.
*/
diff --git a/usr/src/uts/common/io/bge/bge.conf b/usr/src/uts/common/io/bge/bge.conf
index edabf29ab1..8387dcbeb8 100644
--- a/usr/src/uts/common/io/bge/bge.conf
+++ b/usr/src/uts/common/io/bge/bge.conf
@@ -27,7 +27,7 @@
# Broadcom 579x Gigabit Ethernet devices
#
# All the properties below can be set globally (i.e. for all instances
-# of BGE), or on a per-instance basis. See driver.conf(4) for details
+# of BGE), or on a per-instance basis. See driver.conf(5) for details
# of the syntax of global and per-instance properties.
#
# Properties specified in this file take effect when the driver is first
@@ -35,7 +35,7 @@
# therefore not take effect until the next reboot, but will be permanent
# thereafter.
#
-# Some of the driver's parameters can also be changed using ndd(1m).
+# Some of the driver's parameters can also be changed using ndd(8).
# Changes made with ndd apply only to a specific instance (e.g. bge1).
# They take effect immediately, but are lost if the driver is unloaded.
#
@@ -106,7 +106,7 @@
# adv_pause_cap = 0;
#
# All of these parameters can can also be queried and modified at run-time
-# by use of the ndd(1m) command.
+# by use of the ndd(8) command.
#
#########################################################################
#
diff --git a/usr/src/uts/common/io/bnx/bnx.conf b/usr/src/uts/common/io/bnx/bnx.conf
index cb19ea560a..9c960cbcf6 100644
--- a/usr/src/uts/common/io/bnx/bnx.conf
+++ b/usr/src/uts/common/io/bnx/bnx.conf
@@ -14,6 +14,6 @@
#
#
-# Driver.conf file for NetExtreme II 1 GbE parts. See bnx(7D) for valid
+# Driver.conf file for NetExtreme II 1 GbE parts. See bnx(4D) for valid
# options.
#
diff --git a/usr/src/uts/common/io/cmlb.c b/usr/src/uts/common/io/cmlb.c
index 7d88643ada..dce6c74a43 100644
--- a/usr/src/uts/common/io/cmlb.c
+++ b/usr/src/uts/common/io/cmlb.c
@@ -1689,7 +1689,7 @@ cmlb_validate_geometry(struct cmlb_lun *cl, boolean_t forcerevalid, int flags,
cmlb_log(CMLB_DEVINFO(cl), CMLB_LABEL(cl),
CE_NOTE, "!Disk (%s%d) is limited to 2 TB "
"due to VTOC label. To use the full "
- "capacity of the disk, use format(1M) to "
+ "capacity of the disk, use format(8) to "
"relabel the disk with EFI/GPT label.\n",
CMLB_LABEL(cl),
ddi_get_instance(CMLB_DEVINFO(cl)));
diff --git a/usr/src/uts/common/io/devinfo.c b/usr/src/uts/common/io/devinfo.c
index 68ccd8eea4..d9e1e81a2d 100644
--- a/usr/src/uts/common/io/devinfo.c
+++ b/usr/src/uts/common/io/devinfo.c
@@ -1987,7 +1987,7 @@ property:
* Make copy of global property list if this devinfo refers
* global properties different from what's on the devnames
* array. It can happen if there has been a forced
- * driver.conf update. See mod_drv(1M).
+ * driver.conf update. See update_drv(8).
*/
ASSERT(me->drv_major != -1);
if (node->devi_global_prop_list !=
diff --git a/usr/src/uts/common/io/e1000api/e1000_hw.h b/usr/src/uts/common/io/e1000api/e1000_hw.h
index 9d440c3e71..644cc1ef17 100644
--- a/usr/src/uts/common/io/e1000api/e1000_hw.h
+++ b/usr/src/uts/common/io/e1000api/e1000_hw.h
@@ -290,8 +290,8 @@ enum e1000_mac_type {
e1000_pch_lnp,
e1000_pch_rpl,
/*
- * After this point all MACs are used by the igb(7D) driver as opposed
- * to e1000g(7D). If a new MAC is specific to e1000g series of devices,
+ * After this point all MACs are used by the igb(4D) driver as opposed
+ * to e1000g(4D). If a new MAC is specific to e1000g series of devices,
* then it should be added above this.
*/
e1000_82575,
diff --git a/usr/src/uts/common/io/ecpp.conf b/usr/src/uts/common/io/ecpp.conf
index 910929263b..527dd186ad 100644
--- a/usr/src/uts/common/io/ecpp.conf
+++ b/usr/src/uts/common/io/ecpp.conf
@@ -23,7 +23,6 @@
# Use is subject to license terms.
#
#
-#ident "%Z%%M% %I% %E% SMI"
# When fast-centronics is set to "true", handshaking between the
# driver and the peripheral is conducted by hardware. For some
@@ -45,7 +44,7 @@ fast-1284-compatible="true";
# Some Centronics devices require the Init signal to be toggled upon
# power-up. The application should do this directly with ioctl(2) interface
-# as specified in ecpp(7d). As an alternative to using the API, the driver
+# as specified in ecpp(4D). As an alternative to using the API, the driver
# may be configured to toggle the nInit signal upon every time the device
# is opened. If centronics-init-seq is set to "true" the Init signal
# will be toggled when the device is opened. The default is "false".
diff --git a/usr/src/uts/common/io/ena/ena.conf b/usr/src/uts/common/io/ena/ena.conf
index 64ee011d7c..5df2c7e805 100644
--- a/usr/src/uts/common/io/ena/ena.conf
+++ b/usr/src/uts/common/io/ena/ena.conf
@@ -15,7 +15,7 @@
#
#
-# Driver .conf file for AWS Elastic Network Adapter. See ena(7D) for
+# Driver .conf file for AWS Elastic Network Adapter. See ena(4D) for
# valid options.
#
diff --git a/usr/src/uts/common/io/i40e/i40e.conf b/usr/src/uts/common/io/i40e/i40e.conf
index b4c3459931..0f039f21f0 100644
--- a/usr/src/uts/common/io/i40e/i40e.conf
+++ b/usr/src/uts/common/io/i40e/i40e.conf
@@ -15,5 +15,5 @@
#
# Driver.conf file for Intel XL710 PCIe NIC Driver (i40e)
-# See i40e(7D) for valid options.
+# See i40e(4D) for valid options.
#
diff --git a/usr/src/uts/common/io/ib/adapters/hermon/hermon_stats.c b/usr/src/uts/common/io/ib/adapters/hermon/hermon_stats.c
index b479f461e0..fde0ca6f2d 100644
--- a/usr/src/uts/common/io/ib/adapters/hermon/hermon_stats.c
+++ b/usr/src/uts/common/io/ib/adapters/hermon/hermon_stats.c
@@ -30,7 +30,7 @@
*
* Implements all the routines necessary for setting up, querying, and
* (later) tearing down all the kstats necessary for implementing to
- * the interfaces necessary to provide busstat(1M) access.
+ * the interfaces necessary to provide busstat(8) access.
*/
#include <sys/types.h>
diff --git a/usr/src/uts/common/io/ib/adapters/tavor/tavor_stats.c b/usr/src/uts/common/io/ib/adapters/tavor/tavor_stats.c
index 244cf9b4fc..aa9e0889ae 100644
--- a/usr/src/uts/common/io/ib/adapters/tavor/tavor_stats.c
+++ b/usr/src/uts/common/io/ib/adapters/tavor/tavor_stats.c
@@ -30,7 +30,7 @@
*
* Implements all the routines necessary for setting up, querying, and
* (later) tearing down all the kstats necessary for implementing to
- * the interfaces necessary to provide busstat(1M) access.
+ * the interfaces necessary to provide busstat(8) access.
*/
#include <sys/types.h>
diff --git a/usr/src/uts/common/io/ib/clients/ibd/ibd.c b/usr/src/uts/common/io/ib/clients/ibd/ibd.c
index 75e25457f2..8232642502 100644
--- a/usr/src/uts/common/io/ib/clients/ibd/ibd.c
+++ b/usr/src/uts/common/io/ib/clients/ibd/ibd.c
@@ -109,14 +109,14 @@
* objects that can be plumbed and they alone participate in I/O and not the
* port driver.
*
- * There are some info ioctls supported in ibd which are used by dladm(1M) to
+ * There are some info ioctls supported in ibd which are used by dladm(8) to
* display useful information. The info entry point for ibd is
* ibd_get_partition_info().
*
* 2. Late HCA initialization feature.
* ------------------------------------
* As mentioned in section 1, the user creates the partition objects via
- * dladm(1M). It is possible that:
+ * dladm(8). It is possible that:
* a) The physical port itself is down and the SM cannot be reached.
* b) The PKEY specified by the used has not been created in the SM yet.
* c) An IPoIB broadcast group for the specified PKEY is not present.
diff --git a/usr/src/uts/common/io/ib/ibtl/ibtl_ibnex.c b/usr/src/uts/common/io/ib/ibtl/ibtl_ibnex.c
index 6b14dc4e8b..3a7847fd99 100644
--- a/usr/src/uts/common/io/ib/ibtl/ibtl_ibnex.c
+++ b/usr/src/uts/common/io/ib/ibtl/ibtl_ibnex.c
@@ -56,7 +56,7 @@ ibtl_ibnex_callback_t ibtl_ibnex_callback_routine = NULL;
* IBTL_IBNEX_UNCFG_CLNTS_FLAG - Build a NVLIST containing
* clients' devpaths and their
* AP_IDs. (-x unconfig_clients)
- * callback - Callback function to get ap_id from ib(7d)
+ * callback - Callback function to get ap_id from ib(4D)
* Output:
* buffer - The information is returned in this buffer
* bufsiz - The size of the information buffer
@@ -519,7 +519,7 @@ ibt_reprobe_dev(dev_info_t *dip)
* else IBT_NO_HCAS_AVAILABLE.
*
* For IOC/Pseudo devices check if the given pdip is that of
- * the ib(7d) nexus or that of the eoib(7d) nexus. If yes
+ * the ib(4D) nexus or that of the eoib(4D) nexus. If yes
* return IBT_SUCCESS, else IBT_NO_HCAS_AVAILABLE.
*/
ibt_status_t
diff --git a/usr/src/uts/common/io/lofi.c b/usr/src/uts/common/io/lofi.c
index ed3ee88e53..e775ecce0d 100644
--- a/usr/src/uts/common/io/lofi.c
+++ b/usr/src/uts/common/io/lofi.c
@@ -126,7 +126,7 @@
*
* Encryption:
* Each lofi device can have its own symmetric key and cipher.
- * They are passed to us by lofiadm(1m) in the correct format for use
+ * They are passed to us by lofiadm(8) in the correct format for use
* with the misc/kcf crypto_* routines.
*
* Each block has its own IV, that is calculated in lofi_blk_mech(), based
@@ -2275,7 +2275,7 @@ fake_disk_geometry(struct lofi_state *lsp)
{
u_offset_t dsize = lsp->ls_vp_size - lsp->ls_crypto_offset;
- /* dk_geom - see dkio(7I) */
+ /* dk_geom - see dkio(4I) */
/*
* dkg_ncyl _could_ be set to one here (one big cylinder with gobs
* of sectors), but that breaks programs like fdisk which want to
@@ -2305,7 +2305,7 @@ fake_disk_geometry(struct lofi_state *lsp)
}
/*
- * build vtoc - see dkio(7I)
+ * build vtoc - see dkio(4I)
*
* Fakes one big partition based on the size of the file. This is needed
* because we allow newfs'ing the traditional lofi device and newfs will
@@ -2345,7 +2345,7 @@ fake_disk_vtoc(struct lofi_state *lsp, struct vtoc *vt)
}
/*
- * build dk_cinfo - see dkio(7I)
+ * build dk_cinfo - see dkio(4I)
*/
static void
fake_disk_info(dev_t dev, struct dk_cinfo *ci)
diff --git a/usr/src/uts/common/io/log.c b/usr/src/uts/common/io/log.c
index 91ee5b2879..87ae96806c 100644
--- a/usr/src/uts/common/io/log.c
+++ b/usr/src/uts/common/io/log.c
@@ -25,7 +25,7 @@
/*
- * Streams log driver. See log(7D).
+ * Streams log driver. See log(4D).
*/
#include <sys/types.h>
diff --git a/usr/src/uts/common/io/mac/mac_flow.c b/usr/src/uts/common/io/mac/mac_flow.c
index 62612122d6..d83de9503e 100644
--- a/usr/src/uts/common/io/mac/mac_flow.c
+++ b/usr/src/uts/common/io/mac/mac_flow.c
@@ -1204,7 +1204,7 @@ mac_link_flow_init(mac_client_handle_t mch, flow_entry_t *sub_flow)
/*
* mac_link_flow_add()
- * Used by flowadm(1m) or kernel mac clients for creating flows.
+ * Used by flowadm(8) or kernel mac clients for creating flows.
*/
int
mac_link_flow_add(datalink_id_t linkid, char *flow_name,
@@ -1344,7 +1344,7 @@ mac_link_flow_clean(mac_client_handle_t mch, flow_entry_t *sub_flow)
/*
* Delete the SRSs associated with this subflow. If this is being
- * driven by flowadm(1M) then the subflow will be deleted by
+ * driven by flowadm(8) then the subflow will be deleted by
* dls_rem_flow. However if this is a result of the interface being
* unplumbed then the subflow itself won't be deleted.
*/
@@ -1370,7 +1370,7 @@ mac_link_flow_clean(mac_client_handle_t mch, flow_entry_t *sub_flow)
/*
* mac_link_flow_remove()
- * Used by flowadm(1m) or kernel mac clients for removing flows.
+ * Used by flowadm(8) or kernel mac clients for removing flows.
*/
int
mac_link_flow_remove(char *flow_name)
diff --git a/usr/src/uts/common/io/mac/mac_sched.c b/usr/src/uts/common/io/mac/mac_sched.c
index 9290530810..fe00be8b14 100644
--- a/usr/src/uts/common/io/mac/mac_sched.c
+++ b/usr/src/uts/common/io/mac/mac_sched.c
@@ -44,7 +44,7 @@
*
* This driver. It interfaces with device drivers and provides abstractions
* that the rest of the system consumes. All data links -- things managed
- * with dladm(1M), are accessed through MAC.
+ * with dladm(8), are accessed through MAC.
*
* GLDv3 DEVICE DRIVER
*
@@ -65,7 +65,7 @@
* which is used for all unicast traffic addressed to the address of a MAC
* device. For example, when a VNIC is created, a default flow is created
* for the VNIC's MAC address. In addition, flows are created for broadcast
- * groups and a user may create a flow with flowadm(1M).
+ * groups and a user may create a flow with flowadm(8).
*
* CLASSIFICATION
*
@@ -77,7 +77,7 @@
* destination MAC address.
*
* The system also will do classification based on layer three and layer
- * four properties. This is used to support things like flowadm(1M), which
+ * four properties. This is used to support things like flowadm(8), which
* allows setting QoS and other properties on a per-flow basis.
*
* RING
@@ -230,8 +230,8 @@
* capabilities and rules in place and then to supplement that with hardware
* resources when available. In general, simple layer two classification is
* sufficient and nothing else is used, unless a specific flow is created with
- * tools such as flowadm(1M) or bandwidth limits are set on a device with
- * dladm(1M).
+ * tools such as flowadm(8) or bandwidth limits are set on a device with
+ * dladm(8).
*
* RINGS AND GROUPS
*
@@ -292,7 +292,7 @@
*
* MAC makes the determination as to which of these modes a given soft ring set
* obtains based on parameters such as whether or not it's the primary mac
- * client, whether it's on a 10 GbE or faster device, user controlled dladm(1M)
+ * client, whether it's on a 10 GbE or faster device, user controlled dladm(8)
* properties, and the nature of the hardware and the resources that it has.
*
* When there is no fanout, MAC does not create any soft rings for a device and
diff --git a/usr/src/uts/common/io/mac/plugins/mac_ether.c b/usr/src/uts/common/io/mac/plugins/mac_ether.c
index 9b230b36cd..6e1ec4953a 100644
--- a/usr/src/uts/common/io/mac/plugins/mac_ether.c
+++ b/usr/src/uts/common/io/mac/plugins/mac_ether.c
@@ -62,7 +62,7 @@ static mac_stat_info_t ether_stats[] = {
{ ETHER_STAT_TOOSHORT_ERRORS, "runt_errors", KSTAT_DATA_UINT32, 0 },
{ ETHER_STAT_JABBER_ERRORS, "jabber_errors", KSTAT_DATA_UINT32, 0 },
- /* Statistics described in the ieee802.3(5) man page */
+ /* Statistics described in the ieee802.3(7) man page */
{ ETHER_STAT_XCVR_ADDR, "xcvr_addr", KSTAT_DATA_UINT32, 0 },
{ ETHER_STAT_XCVR_ID, "xcvr_id", KSTAT_DATA_UINT32, 0 },
{ ETHER_STAT_XCVR_INUSE, "xcvr_inuse", KSTAT_DATA_UINT32, 0 },
diff --git a/usr/src/uts/common/io/mac/plugins/mac_wifi.c b/usr/src/uts/common/io/mac/plugins/mac_wifi.c
index 1bd338c8b9..d8087cab91 100644
--- a/usr/src/uts/common/io/mac/plugins/mac_wifi.c
+++ b/usr/src/uts/common/io/mac/plugins/mac_wifi.c
@@ -44,7 +44,7 @@ static uint8_t wifi_ietfmagic[] = { 0xaa, 0xaa, 0x03, 0x00, 0x00, 0x00 };
static uint8_t wifi_ieeemagic[] = { 0xaa, 0xaa, 0x03, 0x00, 0x00, 0xf8 };
static mac_stat_info_t wifi_stats[] = {
- /* statistics described in ieee802.11(5) */
+ /* statistics described in ieee802.11(7) */
{ WIFI_STAT_TX_FRAGS, "tx_frags", KSTAT_DATA_UINT32, 0 },
{ WIFI_STAT_MCAST_TX, "mcast_tx", KSTAT_DATA_UINT32, 0 },
{ WIFI_STAT_TX_FAILED, "tx_failed", KSTAT_DATA_UINT32, 0 },
diff --git a/usr/src/uts/common/io/mlxcx/mlxcx.conf b/usr/src/uts/common/io/mlxcx/mlxcx.conf
index 321820a47b..3c3d1bcb87 100644
--- a/usr/src/uts/common/io/mlxcx/mlxcx.conf
+++ b/usr/src/uts/common/io/mlxcx/mlxcx.conf
@@ -17,7 +17,7 @@
#
# Driver.conf file for Mellanox Connect-X 4/5/6.
-# See mlxcx(7D) for valid options.
+# See mlxcx(4D) for valid options.
#
#
diff --git a/usr/src/uts/common/io/mlxcx/mlxcx.h b/usr/src/uts/common/io/mlxcx/mlxcx.h
index 68da65765f..a85a432bbe 100644
--- a/usr/src/uts/common/io/mlxcx/mlxcx.h
+++ b/usr/src/uts/common/io/mlxcx/mlxcx.h
@@ -25,7 +25,7 @@
#define _MLXCX_H
/*
- * mlxcx(7D) defintions
+ * mlxcx(4D) defintions
*/
#include <sys/ddi.h>
diff --git a/usr/src/uts/common/io/net80211/net80211.c b/usr/src/uts/common/io/net80211/net80211.c
index 7b8d614190..74b1b7ada8 100644
--- a/usr/src/uts/common/io/net80211/net80211.c
+++ b/usr/src/uts/common/io/net80211/net80211.c
@@ -670,7 +670,7 @@ ieee80211_notify_node_leave(ieee80211com_t *ic, ieee80211_node_t *in)
/*
- * Get 802.11 kstats defined in ieee802.11(5)
+ * Get 802.11 kstats defined in ieee802.11(7)
*
* Return 0 on success
*/
diff --git a/usr/src/uts/common/io/ntxn/ntxn.conf b/usr/src/uts/common/io/ntxn/ntxn.conf
index a0f152297c..6adb37666d 100644
--- a/usr/src/uts/common/io/ntxn/ntxn.conf
+++ b/usr/src/uts/common/io/ntxn/ntxn.conf
@@ -28,7 +28,7 @@
# Driver.conf file for Netxen 10-Gigabit Ethernet devices
#
# All the properties below can be set globally (i.e. for all instances
-# of ntxn), or on a per-instance basis. See driver.conf(4) for details
+# of ntxn), or on a per-instance basis. See driver.conf(5) for details
# of the syntax of global and per-instance properties.
#
# Properties specified in this file take effect when the driver is first
@@ -36,7 +36,7 @@
# therefore not take effect until the next reboot, but will be permanent
# thereafter.
#
-# Some of the driver's parameters can also be changed using ndd(1m).
+# Some of the driver's parameters can also be changed using ndd(8).
# Changes made with ndd apply only to a specific instance (e.g. ntxn0).
# They take effect immediately, but are lost if the driver is unloaded.
#
diff --git a/usr/src/uts/common/io/nulldriver.c b/usr/src/uts/common/io/nulldriver.c
index 04e8d86b22..d5050cf51a 100644
--- a/usr/src/uts/common/io/nulldriver.c
+++ b/usr/src/uts/common/io/nulldriver.c
@@ -45,7 +45,7 @@
* device access, a nexus driver can still internally use the transport
* services.
*
- * A scsi(4) example of this type of use is SCSA enumeration services
+ * A scsi(5) example of this type of use is SCSA enumeration services
* issuing a scsi REPORT_LUN command to a lun-0 'probe' node bound to
* nulldriver in order to discover all luns supported by a target.
*/
diff --git a/usr/src/uts/common/io/nvme/nvme.c b/usr/src/uts/common/io/nvme/nvme.c
index a8a9d0b843..c1c808ed34 100644
--- a/usr/src/uts/common/io/nvme/nvme.c
+++ b/usr/src/uts/common/io/nvme/nvme.c
@@ -107,7 +107,7 @@
* For each NVMe device the driver exposes one minor node for the controller and
* one minor node for each namespace. The only operations supported by those
* minor nodes are open(9E), close(9E), and ioctl(9E). This serves as the
- * interface for the nvmeadm(1M) utility.
+ * interface for the nvmeadm(8) utility.
*
*
* Blkdev Interface:
diff --git a/usr/src/uts/common/io/overlay/overlay.c b/usr/src/uts/common/io/overlay/overlay.c
index 3016d88b13..47a1833731 100644
--- a/usr/src/uts/common/io/overlay/overlay.c
+++ b/usr/src/uts/common/io/overlay/overlay.c
@@ -36,7 +36,7 @@
* General Architecture
* --------------------
*
- * The logical overlay device that a user sees in dladm(1M) is a combination of
+ * The logical overlay device that a user sees in dladm(8) is a combination of
* two different components that work together. The first component is this
* kernel module, which is responsible for answering question one -- how should
* I transform a packet to put it on the wire.
@@ -56,7 +56,7 @@
* general, the path isn't very common.
*
* The following is what makes up the logical overlay device that a user would
- * create with dladm(1M).
+ * create with dladm(8).
*
* Kernel Userland
* . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
@@ -244,7 +244,7 @@
* Finally, a property may declare a list of valid values. These valid values
* are used for display purposes, they are not enforced by the broader system,
* but merely allow a means for the information to be communicated to the user
- * through dladm(1M). Like a default value, this is optional.
+ * through dladm(8). Like a default value, this is optional.
*
* The general scaffolding does not do very much with respect to the getting and
* setting of properties. That is really owned by the individual plugins
@@ -401,7 +401,7 @@
* +-------------------------------+
*
* The primary entries that we care about are the overlay_dev_t, which
- * correspond to each overlay device that is created with dladm(1M). Globally,
+ * correspond to each overlay device that is created with dladm(8). Globally,
* these devices are maintained in a simple list_t which is protected with a
* lock. Hence, these include important information such as the mac_handle_t
* and a datalink_id_t which is used to interact with the broader MAC and DLS
diff --git a/usr/src/uts/common/io/power.c b/usr/src/uts/common/io/power.c
index aed53f5334..2e29f55416 100644
--- a/usr/src/uts/common/io/power.c
+++ b/usr/src/uts/common/io/power.c
@@ -41,7 +41,7 @@
* an application that has opened the device is going away, a new
* minor clone is created for each open(9E) request. There are
* allocations for creating minor clones between 1 and 255. The ioctl
- * interface is defined by pbio(7I) and approved as part of
+ * interface is defined by pbio(4I) and approved as part of
* PSARC/1999/393 case.
*/
diff --git a/usr/src/uts/common/io/ptem.c b/usr/src/uts/common/io/ptem.c
index 3be1f9d777..137f2916b5 100644
--- a/usr/src/uts/common/io/ptem.c
+++ b/usr/src/uts/common/io/ptem.c
@@ -756,7 +756,7 @@ out:
/*
* TCSBRK meaningful if data part of message is 0
- * cf. termio(7).
+ * cf. termio(4I).
*/
if (!(*(int *)mp->b_cont->b_rptr))
(void) putnextctl(q, M_BREAK);
diff --git a/usr/src/uts/common/io/ramdisk.c b/usr/src/uts/common/io/ramdisk.c
index a7a568b77c..5fbd5e62b2 100644
--- a/usr/src/uts/common/io/ramdisk.c
+++ b/usr/src/uts/common/io/ramdisk.c
@@ -29,7 +29,7 @@
*
* There are two types of ramdisk: 'real' OBP-created ramdisks, and 'pseudo'
* ramdisks created at runtime with no corresponding OBP device node. The
- * ramdisk(7D) driver is capable of dealing with both, and with the creation
+ * ramdisk(4D) driver is capable of dealing with both, and with the creation
* and deletion of 'pseudo' ramdisks.
*
* Every ramdisk has a single 'state' structure which maintains data for
@@ -44,7 +44,7 @@
* assigned to the ramdisk. All 'pseudo' ramdisks share a common devinfo
* structure.
*
- * A single character device node is used by ramdiskadm(1M) to communicate
+ * A single character device node is used by ramdiskadm(8) to communicate
* with the ramdisk driver, with minor number 0:
*
* /dev/ramdiskctl -> /devices/pseudo/ramdisk@0:ctl
@@ -495,7 +495,7 @@ rd_map_window(rd_devstate_t *rsp, off_t offset)
static void
rd_fake_disk_geometry(rd_devstate_t *rsp)
{
- /* dk_geom - see dkio(7I) */
+ /* dk_geom - see dkio(4I) */
/*
* dkg_ncyl _could_ be set to one here (one big cylinder with gobs
* of sectors), but that breaks programs like fdisk which want to
@@ -529,7 +529,7 @@ rd_fake_disk_geometry(rd_devstate_t *rsp)
rsp->rd_dkg.dkg_write_reinstruct = 0;
rsp->rd_dkg.dkg_read_reinstruct = 0;
- /* vtoc - see dkio(7I) */
+ /* vtoc - see dkio(4I) */
bzero(&rsp->rd_vtoc, sizeof (struct vtoc));
rsp->rd_vtoc.v_sanity = VTOC_SANE;
rsp->rd_vtoc.v_version = V_VERSION;
@@ -548,7 +548,7 @@ rd_fake_disk_geometry(rd_devstate_t *rsp)
rsp->rd_vtoc.v_part[0].p_size = rsp->rd_dkg.dkg_pcyl *
rsp->rd_dkg.dkg_nsect * rsp->rd_dkg.dkg_nhead;
- /* dk_cinfo - see dkio(7I) */
+ /* dk_cinfo - see dkio(4I) */
bzero(&rsp->rd_ci, sizeof (struct dk_cinfo));
(void) strcpy(rsp->rd_ci.dki_cname, RD_DRIVER_NAME);
rsp->rd_ci.dki_ctype = DKC_MD;
diff --git a/usr/src/uts/common/io/sata/impl/sata.c b/usr/src/uts/common/io/sata/impl/sata.c
index 8ee71ce192..9228b470ec 100644
--- a/usr/src/uts/common/io/sata/impl/sata.c
+++ b/usr/src/uts/common/io/sata/impl/sata.c
@@ -2221,7 +2221,7 @@ sata_scsi_tgt_free(dev_info_t *hba_dip, dev_info_t *tgt_dip,
/*
* If devid was previously created but not freed up from
- * sd(7D) driver (i.e during detach(9F)) then do it here.
+ * sd(4D) driver (i.e during detach(9F)) then do it here.
*/
if ((sdinfo->satadrv_type == SATA_DTYPE_ATADISK) &&
(ddi_getprop(DDI_DEV_T_ANY, hba_dip, DDI_PROP_DONTPASS,
@@ -11588,7 +11588,7 @@ sata_reprobe_pmult(sata_hba_inst_t *sata_hba_inst, sata_device_t *sata_device,
* after which the port multiplier is not correct initialized and
* recognized. In that case the new device will be marked as unknown
* and will not be automatically probed in this routine. Instead
- * system administrator could manually restart it via cfgadm(1M).
+ * system administrator could manually restart it via cfgadm(8).
*/
if (sata_device->satadev_type != SATA_DTYPE_PMULT) {
cportinfo->cport_dev_type = SATA_DTYPE_UNKNOWN;
diff --git a/usr/src/uts/common/io/scsi/adapters/scsi_vhci/scsi_vhci.c b/usr/src/uts/common/io/scsi/adapters/scsi_vhci/scsi_vhci.c
index cf1fa01c68..d62e3b2924 100644
--- a/usr/src/uts/common/io/scsi/adapters/scsi_vhci/scsi_vhci.c
+++ b/usr/src/uts/common/io/scsi/adapters/scsi_vhci/scsi_vhci.c
@@ -97,7 +97,7 @@ static int vhci_bus_config_debug = 0;
/*
* Bidirectional map of 'target-port' to port id <pid> for support of
- * iostat(1M) '-Xx' and '-Yx' output.
+ * iostat(8) '-Xx' and '-Yx' output.
*/
static kmutex_t vhci_targetmap_mutex;
static uint_t vhci_targetmap_pid = 1;
@@ -4966,14 +4966,14 @@ vhci_kstat_create_pathinfo(mdi_pathinfo_t *pip)
*
* We maintain a bidirectional 'target-port' to <pid> map,
* called targetmap. All pathinfo nodes with the same
- * 'target-port' map to the same <pid>. The iostat(1M) code,
+ * 'target-port' map to the same <pid>. The iostat(8) code,
* when parsing a path oriented kstat name, uses the <pid> as
* a SCSI_VHCI_GET_TARGET_LONGNAME ioctl argument in order
* to get the 'target-port'. For KSTAT_FLAG_PERSISTENT kstats,
* this ioctl needs to translate a <pid> to a 'target-port'
* even after all pathinfo nodes associated with the
* 'target-port' have been destroyed. This is needed to support
- * consistent first-iteration activity-since-boot iostat(1M)
+ * consistent first-iteration activity-since-boot iostat(8)
* output. Because of this requirement, the mapping can't be
* based on pathinfo information in a devinfo snapshot.
*/
@@ -5003,7 +5003,7 @@ vhci_kstat_create_pathinfo(mdi_pathinfo_t *pip)
* For this type of mapping we don't want the
* <id> -> 'target-port' mapping to be made. This
* will cause the SCSI_VHCI_GET_TARGET_LONGNAME ioctl
- * to fail, and the iostat(1M) long '-n' output will
+ * to fail, and the iostat(8) long '-n' output will
* still use the <pid>. We do this because we just
* made up the 'target-port' using the guid, and we
* don't want to expose that fact in iostat output.
@@ -8346,7 +8346,7 @@ vhci_uscsi_send_sense(struct scsi_pkt *pkt, mp_uscsi_cmd_t *mp_uscmdp)
rqpkt->pkt_private = mp_uscmdp;
/*
- * NOTE: This code path is related to MPAPI uscsi(7I), so path
+ * NOTE: This code path is related to MPAPI uscsi(4I), so path
* selection is not based on path_instance.
*/
if (scsi_pkt_allocated_correctly(rqpkt))
@@ -8577,7 +8577,7 @@ vhci_uscsi_iostart(struct buf *bp)
(void *)bp, bp->b_bcount, (void *)mp_uscmdp->pip, stat_size));
/*
- * NOTE: This code path is related to MPAPI uscsi(7I), so path
+ * NOTE: This code path is related to MPAPI uscsi(4I), so path
* selection is not based on path_instance.
*/
if (scsi_pkt_allocated_correctly(pkt))
diff --git a/usr/src/uts/common/io/scsi/impl/scsi_hba.c b/usr/src/uts/common/io/scsi/impl/scsi_hba.c
index 50bf21b2f3..0ae0978796 100644
--- a/usr/src/uts/common/io/scsi/impl/scsi_hba.c
+++ b/usr/src/uts/common/io/scsi/impl/scsi_hba.c
@@ -3229,7 +3229,7 @@ scsi_hba_ioctl(dev_t dev, int cmd, intptr_t arg, int mode, cred_t *credp,
(bus_state == BUS_QUIESCED))
rv = EALREADY;
else if (tran->tran_quiesce == NULL)
- rv = ENOTSUP; /* man ioctl(7I) says ENOTTY */
+ rv = ENOTSUP; /* man ioctl(2) says ENOTTY */
else if (tran->tran_quiesce(self) != 0)
rv = EIO;
else if (ndi_set_bus_state(self, BUS_QUIESCED) != NDI_SUCCESS)
@@ -3241,7 +3241,7 @@ scsi_hba_ioctl(dev_t dev, int cmd, intptr_t arg, int mode, cred_t *credp,
(bus_state == BUS_ACTIVE))
rv = EALREADY;
else if (tran->tran_unquiesce == NULL)
- rv = ENOTSUP; /* man ioctl(7I) says ENOTTY */
+ rv = ENOTSUP; /* man ioctl(2) says ENOTTY */
else if (tran->tran_unquiesce(self) != 0)
rv = EIO;
else if (ndi_set_bus_state(self, BUS_ACTIVE) != NDI_SUCCESS)
@@ -3250,7 +3250,7 @@ scsi_hba_ioctl(dev_t dev, int cmd, intptr_t arg, int mode, cred_t *credp,
case DEVCTL_BUS_RESET:
if (tran->tran_bus_reset == NULL)
- rv = ENOTSUP; /* man ioctl(7I) says ENOTTY */
+ rv = ENOTSUP; /* man ioctl(2) says ENOTTY */
else if (tran->tran_bus_reset(self, RESET_BUS) != 1)
rv = EIO;
break;
@@ -3261,7 +3261,7 @@ scsi_hba_ioctl(dev_t dev, int cmd, intptr_t arg, int mode, cred_t *credp,
break; /* reset all worked */
}
if (tran->tran_bus_reset == NULL) {
- rv = ENOTSUP; /* man ioctl(7I) says ENOTTY */
+ rv = ENOTSUP; /* man ioctl(2) says ENOTTY */
break;
}
if (tran->tran_bus_reset(self, RESET_BUS) != 1)
@@ -3917,7 +3917,7 @@ scsi_hba_ident_nodename_compatible_get(struct scsi_inquiry *inq,
csp = compatp;
p = (char *)(compatp + NCOMPAT);
- /* ( 0) driver (optional, not documented in scsi(4)) */
+ /* ( 0) driver (optional, not documented in scsi(5)) */
if (compat0) {
*csp++ = p;
(void) snprintf(p, tlen, "%s", compat0);
@@ -4006,7 +4006,7 @@ scsi_hba_ident_nodename_compatible_get(struct scsi_inquiry *inq,
tlen -= len;
}
- /* (8.5) scsa,DD.bB (not documented in scsi(4)) */
+ /* (8.5) scsa,DD.bB (not documented in scsi(5)) */
if (binding_set) {
*csp++ = p;
(void) snprintf(p, tlen, "scsa,%02x.b%s",
@@ -7819,7 +7819,7 @@ scsi_hba_bus_config_spi(dev_info_t *self, uint_t flags,
* Static driver.conf file enumeration:
*
* Force reprobe for BUS_CONFIG_ONE or when manually
- * reconfiguring via devfsadm(1m) to emulate deferred attach.
+ * reconfiguring via devfsadm(8) to emulate deferred attach.
* Reprobe only discovers driver.conf enumerated nodes, more
* dynamic implementations probably require their own
* bus_config.
diff --git a/usr/src/uts/common/io/scsi/impl/scsi_subr.c b/usr/src/uts/common/io/scsi/impl/scsi_subr.c
index 4b08bed848..1fd97aeeb3 100644
--- a/usr/src/uts/common/io/scsi/impl/scsi_subr.c
+++ b/usr/src/uts/common/io/scsi/impl/scsi_subr.c
@@ -2502,7 +2502,7 @@ scsi_uscsi_pktinit(struct uscsi_cmd *uscmd, struct scsi_pkt *pkt)
(uscmd->uscsi_path_instance != 0)) {
/*
* Check to make sure the scsi_pkt was allocated correctly
- * before transferring uscsi(7i) path_instance to scsi_pkt(9S).
+ * before transferring uscsi(4I) path_instance to scsi_pkt(9S).
*/
if (scsi_pkt_allocated_correctly(pkt)) {
/* set pkt_path_instance and flag. */
@@ -2547,7 +2547,7 @@ scsi_uscsi_pktfini(struct scsi_pkt *pkt, struct uscsi_cmd *uscmd)
{
/*
* Check to make sure the scsi_pkt was allocated correctly before
- * transferring scsi_pkt(9S) path_instance to uscsi(7i).
+ * transferring scsi_pkt(9S) path_instance to uscsi(4I).
*/
if (!scsi_pkt_allocated_correctly(pkt)) {
uscmd->uscsi_path_instance = 0;
diff --git a/usr/src/uts/common/io/scsi/targets/sd.c b/usr/src/uts/common/io/scsi/targets/sd.c
index 3478aa0325..aa88a9c42f 100644
--- a/usr/src/uts/common/io/scsi/targets/sd.c
+++ b/usr/src/uts/common/io/scsi/targets/sd.c
@@ -14337,7 +14337,7 @@ sd_initpkt_for_uscsi(struct buf *bp, struct scsi_pkt **pktpp)
SD_FILL_SCSI1_LUN(un, pktp);
/*
- * Set up the optional USCSI flags. See the uscsi (7I) man page
+ * Set up the optional USCSI flags. See the uscsi(4I) man page
* for listing of the supported flags.
*/
@@ -31044,7 +31044,7 @@ sd_faultinjection(struct scsi_pkt *pktp)
* 4. Building default VTOC label
*
* As section 3 says, sd checks if some kinds of devices have VTOC label.
- * If those devices have no valid VTOC label, sd(7d) will attempt to
+ * If those devices have no valid VTOC label, sd(4D) will attempt to
* create default VTOC for them. Currently sd creates default VTOC label
* for all devices on x86 platform (VTOC_16), but only for removable
* media devices on SPARC (VTOC_8).
@@ -31077,7 +31077,7 @@ sd_faultinjection(struct scsi_pkt *pktp)
*
* 6. Automatic mount & unmount
*
- * Sd(7d) driver provides DKIOCREMOVABLE ioctl. This ioctl is used to query
+ * sd(4D) driver provides DKIOCREMOVABLE ioctl. This ioctl is used to query
* if a device is removable media device. It return 1 for removable media
* devices, and 0 for others.
*
@@ -31087,9 +31087,9 @@ sd_faultinjection(struct scsi_pkt *pktp)
*
* 7. fdisk partition management
*
- * Fdisk is traditional partition method on x86 platform. Sd(7d) driver
+ * Fdisk is traditional partition method on x86 platform. sd(4D) driver
* just supports fdisk partitions on x86 platform. On sparc platform, sd
- * doesn't support fdisk partitions at all. Note: pcfs(7fs) can recognize
+ * doesn't support fdisk partitions at all. Note: pcfs(4FS) can recognize
* fdisk partitions on both x86 and SPARC platform.
*
* -----------------------------------------------------------
@@ -31103,7 +31103,7 @@ sd_faultinjection(struct scsi_pkt *pktp)
*
* 8. MBOOT/MBR
*
- * Although sd(7d) doesn't support fdisk on SPARC platform, it does support
+ * Although sd(4D) doesn't support fdisk on SPARC platform, it does support
* read/write mboot for removable media devices on sparc platform.
*
* -----------------------------------------------------------
diff --git a/usr/src/uts/common/io/scsi/targets/sgen.c b/usr/src/uts/common/io/scsi/targets/sgen.c
index 1d6316caf3..2a954f116d 100644
--- a/usr/src/uts/common/io/scsi/targets/sgen.c
+++ b/usr/src/uts/common/io/scsi/targets/sgen.c
@@ -34,7 +34,7 @@
* sgen - SCSI generic device driver
*
* The sgen driver provides user programs access to SCSI devices that
- * are not supported by other drivers by providing the USCSI(7I) interface.
+ * are not supported by other drivers by providing the uscsi(4I) interface.
*/
#include <sys/modctl.h>
@@ -1128,7 +1128,7 @@ sgen_close(dev_t dev, int flag, int otyp, cred_t *cred_p)
/*
* sgen_ioctl()
- * sgen supports the USCSI(7I) ioctl interface.
+ * sgen supports the uscsi(4I) ioctl interface.
*/
/*ARGSUSED4*/
static int
@@ -1195,7 +1195,7 @@ sgen_ioctl(dev_t dev,
/*
* sgen_uscsi_cmd()
- * Setup, configuration and teardown for a uscsi(7I) command
+ * Setup, configuration and teardown for a uscsi(4I) command
*/
/*ARGSUSED*/
static int
diff --git a/usr/src/uts/common/io/scsi/targets/sgen.conf b/usr/src/uts/common/io/scsi/targets/sgen.conf
index e18c06928c..38b0161862 100644
--- a/usr/src/uts/common/io/scsi/targets/sgen.conf
+++ b/usr/src/uts/common/io/scsi/targets/sgen.conf
@@ -28,7 +28,7 @@
#
# WARNING: enabling this driver may impact the security and data integrity of
-# devices on your system. Please refer to sgen(7d) for details.
+# devices on your system. Please refer to sgen(4D) for details.
#
# There are two ways of configuring sgen: by establishing an association
# between a compatible alias for a device and the sgen driver via
@@ -39,7 +39,7 @@
# preferred method to control driver binding, it avoids issues associated
# with multiple driver.conf files associating more than one driver with a
# device. The compatible property forms for SCSI target devices used in the
-# add_drv command are described in scsi(4).
+# add_drv command are described in scsi(5).
#
# USAGE EXAMPLE (add_drv)
#
@@ -85,7 +85,7 @@
# Vendor and Product IDs returned by the device in response to the SCSI INQUIRY
# command. This is accomplished by specifying pairs of Vendor ID and Product ID
# strings in the inquiry-config-list property, below. "*" may be substituted
-# for the vendor ID as a wildcard. See sgen(7D) for details and extended usage
+# for the vendor ID as a wildcard. See sgen(4D) for details and extended usage
# examples.
#
# USAGE EXAMPLE (sgen.conf)
diff --git a/usr/src/uts/common/io/scsi/targets/st.c b/usr/src/uts/common/io/scsi/targets/st.c
index 3fef558d3a..cdba7764cc 100644
--- a/usr/src/uts/common/io/scsi/targets/st.c
+++ b/usr/src/uts/common/io/scsi/targets/st.c
@@ -1031,7 +1031,7 @@ st_attach(dev_info_t *devi, ddi_attach_cmd_t cmd)
" I/O\n"
" For more information, read about "
" tape-driver-buffering "
- "property in the st(7d) man page\n");
+ "property in the st(4D) man page\n");
}
}
diff --git a/usr/src/uts/common/io/sfxge/sfxge_ioc.h b/usr/src/uts/common/io/sfxge/sfxge_ioc.h
index 0ad86a160b..64e9e37b7f 100644
--- a/usr/src/uts/common/io/sfxge/sfxge_ioc.h
+++ b/usr/src/uts/common/io/sfxge/sfxge_ioc.h
@@ -78,7 +78,7 @@ typedef struct sfxge_nvram_ioc_s {
uint16_t sni_version[4]; /* get/set_ver */
/*
* Streams STRMSGSZ limit (default 64kb)
- * See write(2) and I_STR in streamio(7i)
+ * See write(2) and I_STR in streamio(4I)
*/
uint8_t sni_data[32*1024]; /* read/write */
} sfxge_nvram_ioc_t;
diff --git a/usr/src/uts/common/io/sfxge/sfxge_pci.c b/usr/src/uts/common/io/sfxge/sfxge_pci.c
index 720b47f7aa..e88f68c370 100644
--- a/usr/src/uts/common/io/sfxge/sfxge_pci.c
+++ b/usr/src/uts/common/io/sfxge/sfxge_pci.c
@@ -111,7 +111,7 @@ sfxge_pci_init(sfxge_t *sp)
* resources. Each element contains a 5-tuple of 32bit values,
* where the first 32bit value contains the bus/dev/fn slot
* information.
- * See pci(4) and the definition of "struct pci_phys_spec" in sys/pci.h
+ * See pci(5) and the definition of "struct pci_phys_spec" in sys/pci.h
*/
if (ddi_prop_lookup_int_array(DDI_DEV_T_ANY, sp->s_dip,
DDI_PROP_DONTPASS, "reg", (int **)&pci_regs, &pci_nregs) !=
diff --git a/usr/src/uts/common/io/smbios.c b/usr/src/uts/common/io/smbios.c
index 92d28cc4fa..8a4bfd12fe 100644
--- a/usr/src/uts/common/io/smbios.c
+++ b/usr/src/uts/common/io/smbios.c
@@ -26,7 +26,7 @@
/*
- * smbios(7D) driver
+ * smbios(4D) driver
*
* This pseudo-driver makes available a snapshot of the system's SMBIOS image
* that can be accessed using libsmbios. Clients may access a snapshot using
diff --git a/usr/src/uts/common/io/softmac/softmac_main.c b/usr/src/uts/common/io/softmac/softmac_main.c
index e19df40e0c..294afecb58 100644
--- a/usr/src/uts/common/io/softmac/softmac_main.c
+++ b/usr/src/uts/common/io/softmac/softmac_main.c
@@ -563,7 +563,7 @@ softmac_update_info(softmac_t *softmac, datalink_id_t *linkidp)
cmn_err(CE_WARN, "%s device might not be available "
"for use.", softmac->smac_devname);
- cmn_err(CE_WARN, "See dladm(1M) for more information.");
+ cmn_err(CE_WARN, "See dladm(8) for more information.");
}
return (err);
diff --git a/usr/src/uts/common/io/strplumb.c b/usr/src/uts/common/io/strplumb.c
index d57bc150f5..5ecd2cdc39 100644
--- a/usr/src/uts/common/io/strplumb.c
+++ b/usr/src/uts/common/io/strplumb.c
@@ -348,12 +348,12 @@ strplumb_dev(ldi_ident_t li)
* permanently linked under UDP. One stream consists of the
* ARP-[ifname] combination, while the other consists of IP-[ifname].
*
- * We pin underneath UDP here to match what is done in ifconfig(1m);
+ * We pin underneath UDP here to match what is done in ifconfig(8);
* otherwise, ifconfig will be unable to unplumb the stream (the major
* number and mux id must both match for a successful I_PUNLINK).
*
* There are subtleties in the plumbing which make it essential to
- * follow the logic used in ifconfig(1m) very closely.
+ * follow the logic used in ifconfig(8) very closely.
*/
/*
diff --git a/usr/src/uts/common/io/tem_safe.c b/usr/src/uts/common/io/tem_safe.c
index 7b8730aa08..41f93c42be 100644
--- a/usr/src/uts/common/io/tem_safe.c
+++ b/usr/src/uts/common/io/tem_safe.c
@@ -32,7 +32,7 @@
/*
* Polled I/O safe ANSI terminal emulator module;
* Supporting TERM types 'sun' and 'sun-color, parsing
- * ANSI x3.64 escape sequences, and the like. (See wscons(7d)
+ * ANSI x3.64 escape sequences, and the like. (See wscons(4D)
* for more information).
*
* IMPORTANT:
diff --git a/usr/src/uts/common/io/ufm.c b/usr/src/uts/common/io/ufm.c
index d124485e65..2fe7cdd793 100644
--- a/usr/src/uts/common/io/ufm.c
+++ b/usr/src/uts/common/io/ufm.c
@@ -15,7 +15,7 @@
*/
/*
- * The ufm(7D) pseudo driver provides an ioctl interface for DDI UFM
+ * The ufm(4D) pseudo driver provides an ioctl interface for DDI UFM
* information. See ddi_ufm.h.
*/
#include <sys/ddi.h>
diff --git a/usr/src/uts/common/io/usb/clients/usbecm/usbecm.c b/usr/src/uts/common/io/usb/clients/usbecm/usbecm.c
index 8cb9218912..cdaf1f04ce 100644
--- a/usr/src/uts/common/io/usb/clients/usbecm/usbecm.c
+++ b/usr/src/uts/common/io/usb/clients/usbecm/usbecm.c
@@ -2828,7 +2828,7 @@ usbecm_usb_init(usbecm_state_t *ecmp)
} else {
USB_DPRINTF_L2(PRINT_MASK_ATTA, ecmp->ecm_lh,
"usbecm_usb_init: A nonstandard device is attached to "
- "usbecm(7D) driver. This device doesn't conform to "
+ "usbecm(4D) driver. This device doesn't conform to "
"usb cdc spec.");
ecmp->ecm_compatibility = B_FALSE;
diff --git a/usr/src/uts/common/io/usb/clients/usbser/usbser_keyspan/usbser_keyspan.c b/usr/src/uts/common/io/usb/clients/usbser/usbser_keyspan/usbser_keyspan.c
index b6143e4a6b..7a9d491638 100644
--- a/usr/src/uts/common/io/usb/clients/usbser/usbser_keyspan/usbser_keyspan.c
+++ b/usr/src/uts/common/io/usb/clients/usbser/usbser_keyspan/usbser_keyspan.c
@@ -595,7 +595,7 @@ keyspan_download_firmware(keyspan_pre_state_t *kbp)
if (!record) {
USB_DPRINTF_L1(DPRINT_ATTACH, kbp->kb_lh,
"No firmware available for Keyspan usa49wlc"
- " usb-to-serial adapter. Refer to usbsksp(7D)"
+ " usb-to-serial adapter. Refer to usbsksp(4D)"
" for details.");
return (USB_FAILURE);
diff --git a/usr/src/uts/common/io/usb/clients/video/usbvc/usbvc.c b/usr/src/uts/common/io/usb/clients/video/usbvc/usbvc.c
index 1ce34ed9a4..9a3eea35ee 100644
--- a/usr/src/uts/common/io/usb/clients/video/usbvc/usbvc.c
+++ b/usr/src/uts/common/io/usb/clients/video/usbvc/usbvc.c
@@ -27,7 +27,7 @@
*/
/*
- * USB video class driver (usbvc(7D))
+ * USB video class driver (usbvc(4D))
*
* 1. Overview
* ------------
diff --git a/usr/src/uts/common/io/usb/hcd/ehci/ehci_util.c b/usr/src/uts/common/io/usb/hcd/ehci/ehci_util.c
index 74c76afc8c..04269888f8 100644
--- a/usr/src/uts/common/io/usb/hcd/ehci/ehci_util.c
+++ b/usr/src/uts/common/io/usb/hcd/ehci/ehci_util.c
@@ -1153,7 +1153,7 @@ ehci_init_workaround(ehci_state_t *ehcip)
USB_DPRINTF_L1(PRINT_MASK_ATTA, ehcip->ehci_log_hdl,
"If you are interested in enabling USB2.x");
USB_DPRINTF_L1(PRINT_MASK_ATTA, ehcip->ehci_log_hdl,
- "support please, refer to the ehci(7D) man page.");
+ "support please, refer to the ehci(4D) man page.");
USB_DPRINTF_L1(PRINT_MASK_ATTA, ehcip->ehci_log_hdl,
"Please also refer to www.sun.com/io for");
USB_DPRINTF_L1(PRINT_MASK_ATTA, ehcip->ehci_log_hdl,
diff --git a/usr/src/uts/common/io/usb/scsa2usb/scsa2usb.conf b/usr/src/uts/common/io/usb/scsa2usb/scsa2usb.conf
index af772d8a9f..7bc92a9b91 100644
--- a/usr/src/uts/common/io/usb/scsa2usb/scsa2usb.conf
+++ b/usr/src/uts/common/io/usb/scsa2usb/scsa2usb.conf
@@ -111,7 +111,7 @@
# By setting "remvalue" to "true", the information provided
# by the device is ignored. Consequently a USB hard disk
# is treated as a removable media disk and will not show in
-# format(1M) disk list.
+# format(8) disk list.
#
# modesensevalue - "false" if the device cannot handle mode sense
# requests. This is the only legal value for this
diff --git a/usr/src/uts/common/io/zcons.c b/usr/src/uts/common/io/zcons.c
index eb74c3a039..ad64099f2d 100644
--- a/usr/src/uts/common/io/zcons.c
+++ b/usr/src/uts/common/io/zcons.c
@@ -71,7 +71,7 @@
* ensuring that the subsidiary's STREAMS anchor would never be popped from
* within the non-global zone (because zoneadmd runs in the global zone).
* However, this file descriptor was removed to make zone console management
- * more robust. sad(7D) is now used to automatically set up the subsidiary's
+ * more robust. sad(4D) is now used to automatically set up the subsidiary's
* STREAMS modules when the zone console is freshly opened within the
* associated non-global zone. However, when a process within the non-global
* zone freshly opens the zone console, the anchor is pushed from within the
@@ -538,9 +538,9 @@ zc_subsidiary_open(zc_state_t *zcs,
}
/*
- * Set up sad(7D) so that the necessary STREAMS modules will be in
+ * Set up sad(4D) so that the necessary STREAMS modules will be in
* place. A wrinkle is that 'ptem' must be anchored
- * in place (see streamio(7i)) because we always want the console to
+ * in place (see streamio(4I)) because we always want the console to
* have terminal semantics.
*/
minor = ddi_get_instance(zcs->zc_devinfo) << 1 | ZC_SUBSID_MINOR;
diff --git a/usr/src/uts/common/net/if.h b/usr/src/uts/common/net/if.h
index b184fcdda9..924fd390c7 100644
--- a/usr/src/uts/common/net/if.h
+++ b/usr/src/uts/common/net/if.h
@@ -147,7 +147,7 @@ struct ifnet {
#define IFF_IPV4 0x0001000000 /* IPv4 interface */
#define IFF_IPV6 0x0002000000 /* IPv6 interface */
#define IFF_NOACCEPT 0x0004000000 /* no-accept mode VRRP ill */
-#define IFF_NOFAILOVER 0x0008000000 /* in.mpathd(1M) test address */
+#define IFF_NOFAILOVER 0x0008000000 /* in.mpathd(8) test address */
#define IFF_FAILED 0x0010000000 /* Interface has failed */
#define IFF_STANDBY 0x0020000000 /* Interface is a hot-spare */
diff --git a/usr/src/uts/common/net/pfpolicy.h b/usr/src/uts/common/net/pfpolicy.h
index 0e456cf8f3..7da8256aed 100644
--- a/usr/src/uts/common/net/pfpolicy.h
+++ b/usr/src/uts/common/net/pfpolicy.h
@@ -326,8 +326,8 @@ struct spd_attribute
};
/*
- * These flags are used by the kernel algorithm structures and by ipsecalgs(1m).
- * ALG_FLAG_KERNELCHECKED is used by ipsecalgs(1m) to tag ipsecalgent_t as
+ * These flags are used by the kernel algorithm structures and by ipsecalgs(8).
+ * ALG_FLAG_KERNELCHECKED is used by ipsecalgs(8) to tag ipsecalgent_t as
* kernel verified. ALG_FLAG_VALID is only meaningful if set by the kernel.
*/
#define ALG_FLAG_VALID 0x01
diff --git a/usr/src/uts/common/nfs/auth.h b/usr/src/uts/common/nfs/auth.h
index 5293e3fdd1..c33ac714d3 100644
--- a/usr/src/uts/common/nfs/auth.h
+++ b/usr/src/uts/common/nfs/auth.h
@@ -177,7 +177,7 @@ typedef struct nfsauth_res nfsauth_res_t;
/*
* For future extensibility, we version the data structures so
- * future incantations of mountd(1m) will know how to XDR decode
+ * future incantations of mountd(8) will know how to XDR decode
* the arguments.
*/
enum vtypes {
diff --git a/usr/src/uts/common/nfs/nfs.h b/usr/src/uts/common/nfs/nfs.h
index 6f76fc93ea..2bb312e661 100644
--- a/usr/src/uts/common/nfs/nfs.h
+++ b/usr/src/uts/common/nfs/nfs.h
@@ -1031,7 +1031,7 @@ extern void (*nfs_srv_quiesce_func)(void);
extern int (*nfs_srv_dss_func)(char *, size_t);
/*
- * Per-zone stats as consumed by nfsstat(1m)
+ * Per-zone stats as consumed by nfsstat(8)
*/
struct nfs_version_stats {
kstat_named_t *aclreqcnt_ptr; /* nfs_acl:0:aclreqcnt_v? */
diff --git a/usr/src/uts/common/os/cap_util.c b/usr/src/uts/common/os/cap_util.c
index 86475315e1..7647302cfe 100644
--- a/usr/src/uts/common/os/cap_util.c
+++ b/usr/src/uts/common/os/cap_util.c
@@ -693,7 +693,7 @@ cu_cpc_program(cpu_t *cp, int *err)
*
* Context is marked with KCPC_CTX_INVALID_STOPPED when context is
* unprogrammed and may be marked with KCPC_CTX_INVALID when
- * kcpc_invalidate_all() is called by cpustat(1M) and dtrace CPC to
+ * kcpc_invalidate_all() is called by cpustat(8) and dtrace CPC to
* invalidate all CPC contexts before they take over all the counters.
*
* This isn't necessary since these flags are only used for thread bound
diff --git a/usr/src/uts/common/os/clock_process.c b/usr/src/uts/common/os/clock_process.c
index 555cfd01d9..a3c1641c9c 100644
--- a/usr/src/uts/common/os/clock_process.c
+++ b/usr/src/uts/common/os/clock_process.c
@@ -18,7 +18,7 @@
* clock. This clock is weakly defined by POSIX as "The identifier of the
* CPU-time clock associated with the process making a clock() or timer*()
* function call". We interpret that as including LMS_USER, LMS_SYSTEM, and
- * LMS_TRAP microstates. This is similar to what we do in proc(4) for the
+ * LMS_TRAP microstates. This is similar to what we do in proc(5) for the
* lwpstatus_t and the prstatus_t.
*
* At this time, we only provide the ability to read the current time (e.g.
diff --git a/usr/src/uts/common/os/ddi.c b/usr/src/uts/common/os/ddi.c
index a37d91e92a..c348ee474c 100644
--- a/usr/src/uts/common/os/ddi.c
+++ b/usr/src/uts/common/os/ddi.c
@@ -1136,8 +1136,8 @@ qunbufcall(queue_t *q, bufcall_id_t id)
* Associate the stream with an instance of the bottom driver. This
* function is called by APIs that establish or modify the hardware
* association (ppa) of an open stream. Two examples of such
- * post-open(9E) APIs are the dlpi(7p) DL_ATTACH_REQ message, and the
- * ndd(1M) "instance=" ioctl(2). This interface may be called from a
+ * post-open(9E) APIs are the dlpi(4P) DL_ATTACH_REQ message, and the
+ * ndd(8) "instance=" ioctl(2). This interface may be called from a
* stream driver's wput procedure and from within syncq perimeters,
* so it can't block.
*
diff --git a/usr/src/uts/common/os/ddi_hp_impl.c b/usr/src/uts/common/os/ddi_hp_impl.c
index 38e575dbfd..8f0890fc2b 100644
--- a/usr/src/uts/common/os/ddi_hp_impl.c
+++ b/usr/src/uts/common/os/ddi_hp_impl.c
@@ -92,8 +92,8 @@
* - Through the nexus driver interface, ndi_hp_state_change_req. PCIe
* nexus drivers that pass a hotplug interrupt through to pciehpc will kick
* off state changes in this way.
- * - Through coordinated removal, ddihp_modctl. Both cfgadm(1M) and
- * hotplug(1M) pass state change requests through hotplugd, which uses
+ * - Through coordinated removal, ddihp_modctl. Both cfgadm(8) and
+ * hotplug(8) pass state change requests through hotplugd, which uses
* modctl to request state changes to the DDI hotplug framework. That
* interface is ultimately implemented by ddihp_modctl.
*
@@ -131,7 +131,7 @@
* of some key components are below.
*
* +------------+
- * | cfgadm(1M) |
+ * | cfgadm(8) |
* +------------+
* |
* +-------------------+
@@ -139,7 +139,7 @@
* +-------------------+
* |
* +-------------+ +------------+
- * | hotplug(1M) |----------| libhotplug |
+ * | hotplug(8) |----------| libhotplug |
* +-------------+ +------------+
* |
* +----------+
@@ -193,14 +193,14 @@
*
* KEY HOTPLUG SOFTWARE COMPONENTS
*
- * CFGADM(1M)
+ * cfgadm(8)
*
* cfgadm is the canonical tool for hotplug operations. It can be used to
* list connections on the system and change their state in a coordinated
* fashion. For more information, see its manual page.
*
*
- * HOTPLUG(1M)
+ * hotplug(8)
*
* hotplug is a command line tool for managing hotplug connections for
* connectors. For more information, see its manual page.
diff --git a/usr/src/uts/common/os/ddi_ufm.c b/usr/src/uts/common/os/ddi_ufm.c
index 3610df8bac..940ebf82bf 100644
--- a/usr/src/uts/common/os/ddi_ufm.c
+++ b/usr/src/uts/common/os/ddi_ufm.c
@@ -30,7 +30,7 @@
* drivers that participate in the DDI UFM subsystem on a per-instance basis
* via ddi_ufm_handle_t structures (see ddi_ufm_impl.h). This is known as the
* UFM handle. The UFM handle contains a pointer to the driver's UFM ops,
- * which the ufm(7D) pseudo driver uses to invoke the UFM entry points in
+ * which the ufm(4D) pseudo driver uses to invoke the UFM entry points in
* response to DDI UFM ioctls. Additionally, the DDI UFM subsystem uses the
* handle to maintain cached UFM image and slot data.
*
diff --git a/usr/src/uts/common/os/ddifm.c b/usr/src/uts/common/os/ddifm.c
index 533fa15aed..dc39ba49ab 100644
--- a/usr/src/uts/common/os/ddifm.c
+++ b/usr/src/uts/common/os/ddifm.c
@@ -56,7 +56,7 @@
*
* Error reports resulting from hardware component specific and common IO
* fault and driver defects must be accompanied by an Eversholt fault
- * tree (.eft) by the Solaris fault manager (fmd(1M)) for
+ * tree (.eft) by the Solaris fault manager (fmd(8)) for
* diagnosis.
*
* DDI_FM_ERRCB_CAPABLE
@@ -466,7 +466,7 @@ out: if (ereport && (nva == NULL))
/*
* Generate an error report for consumption by the Solaris Fault Manager,
- * fmd(1M). Valid ereport classes are defined in /usr/include/sys/fm/io.
+ * fmd(8). Valid ereport classes are defined in /usr/include/sys/fm/io.
*
* The ENA should be set if this error is a result of an error status
* returned from ddi_dma_err_check() or ddi_acc_err_check(). Otherwise,
diff --git a/usr/src/uts/common/os/devid_cache.c b/usr/src/uts/common/os/devid_cache.c
index 3e1a06a844..2a780eebe2 100644
--- a/usr/src/uts/common/os/devid_cache.c
+++ b/usr/src/uts/common/os/devid_cache.c
@@ -47,7 +47,7 @@
* involves walking the entire device tree attaching all possible disk
* instances, to search for the device referenced by a devid. Obviously,
* full device discovery is something to be avoided where possible.
- * Note that simply invoking devfsadm(1M) is equivalent to running full
+ * Note that simply invoking devfsadm(8) is equivalent to running full
* discovery at the devid cache level.
*
* Reasons why a disk may not be accessible:
@@ -61,7 +61,7 @@
* When discovery may succeed:
* Discovery will result in success when a device has been moved
* to a different address. Note that it's recommended that
- * devfsadm(1M) be invoked (no arguments required) whenever a system's
+ * devfsadm(8) be invoked (no arguments required) whenever a system's
* h/w configuration has been updated. Alternatively, a
* reconfiguration boot can be used to accomplish the same result.
*
@@ -69,7 +69,7 @@
* failure for a device which was powered off. Assuming the cache has an
* entry for such a device, simply powering it on should permit the system
* to access it. If problems persist after powering it on, invoke
- * devfsadm(1M).
+ * devfsadm(8).
*
* Discovery prior to mounting root is only of interest when booting
* from a filesystem which accesses devices by device id, which of
diff --git a/usr/src/uts/common/os/errorq.c b/usr/src/uts/common/os/errorq.c
index 8b41e7e8c1..cd71b9be08 100644
--- a/usr/src/uts/common/os/errorq.c
+++ b/usr/src/uts/common/os/errorq.c
@@ -946,7 +946,7 @@ errorq_cancel(errorq_t *eqp, errorq_elem_t *eqep)
/*
* Write elements on the dump list of each nvlist errorq to the dump device.
- * Upon reboot, fmd(1M) will extract and replay them for diagnosis.
+ * Upon reboot, fmd(8) will extract and replay them for diagnosis.
*/
void
errorq_dump(void)
diff --git a/usr/src/uts/common/os/exit.c b/usr/src/uts/common/os/exit.c
index c400c774d8..7ccf9b3221 100644
--- a/usr/src/uts/common/os/exit.c
+++ b/usr/src/uts/common/os/exit.c
@@ -191,11 +191,11 @@ restart_init(int what, int why)
* zone) know that init has failed and will be restarted.
*/
zcmn_err(p->p_zone->zone_id, CE_WARN,
- "init(1M) %s: restarting automatically",
+ "init(8) %s: restarting automatically",
exit_reason(reason_buf, sizeof (reason_buf), what, why));
if (!INGLOBALZONE(p)) {
- cmn_err(CE_WARN, "init(1M) for zone %s (pid %d) %s: "
+ cmn_err(CE_WARN, "init(8) for zone %s (pid %d) %s: "
"restarting automatically",
p->p_zone->zone_name, p->p_pid, reason_buf);
}
@@ -210,7 +210,7 @@ restart_init(int what, int why)
/*
* Grab p_lock and begin clearing miscellaneous global process
- * state that needs to be reset before we exec the new init(1M).
+ * state that needs to be reset before we exec the new init(8).
*/
mutex_enter(&p->p_lock);
@@ -310,7 +310,7 @@ restart_init(int what, int why)
restart_init_notify(p->p_zone);
/*
- * Now exec() the new init(1M) on top of the current process. If we
+ * Now exec() the new init(8) on top of the current process. If we
* succeed, the caller will treat this like a successful system call.
* If we fail, we issue messages and the caller will proceed with exit.
*/
@@ -320,11 +320,11 @@ restart_init(int what, int why)
return (0);
zcmn_err(p->p_zone->zone_id, CE_WARN,
- "failed to restart init(1M) (err=%d): system reboot required", err);
+ "failed to restart init(8) (err=%d): system reboot required", err);
if (!INGLOBALZONE(p)) {
- cmn_err(CE_WARN, "failed to restart init(1M) for zone %s "
- "(pid %d, err=%d): zoneadm(1M) boot required",
+ cmn_err(CE_WARN, "failed to restart init(8) for zone %s "
+ "(pid %d, err=%d): zoneadm(8) boot required",
p->p_zone->zone_name, p->p_pid, err);
}
diff --git a/usr/src/uts/common/os/fm.c b/usr/src/uts/common/os/fm.c
index 15215b58c3..bd3e5dceac 100644
--- a/usr/src/uts/common/os/fm.c
+++ b/usr/src/uts/common/os/fm.c
@@ -364,7 +364,7 @@ fm_nvprint(nvlist_t *nvl)
/*
* Wrapper for panic() that first produces an FMA-style message for admins.
- * Normally such messages are generated by fmd(1M)'s syslog-msgs agent: this
+ * Normally such messages are generated by fmd(8)'s syslog-msgs agent: this
* is the one exception to that rule and the only error that gets messaged.
* This function is intended for use by subsystems that have detected a fatal
* error and enqueued appropriate ereports and wish to then force a panic.
diff --git a/usr/src/uts/common/os/kmem.c b/usr/src/uts/common/os/kmem.c
index 4edb136b96..4d2c1e6c10 100644
--- a/usr/src/uts/common/os/kmem.c
+++ b/usr/src/uts/common/os/kmem.c
@@ -2251,7 +2251,7 @@ kmem_dumppr(char **pp, char *e, const char *format, ...)
}
/*
- * Called when dumpadm(1M) configures dump parameters.
+ * Called when dumpadm(8) configures dump parameters.
*/
void
kmem_dump_init(size_t size)
diff --git a/usr/src/uts/common/os/ksensor.c b/usr/src/uts/common/os/ksensor.c
index 491fbcc7cd..7dd4a22c8a 100644
--- a/usr/src/uts/common/os/ksensor.c
+++ b/usr/src/uts/common/os/ksensor.c
@@ -67,8 +67,8 @@
*
* The implementation of (1) is all in this file. The implementation of (2) is
* in uts/common/io/ksensor/ksensor_drv.c. The implementation of (3) is found in
- * all of the different leaf devices. Examples of (3) include pchtemp(7D) and
- * igb(7D).
+ * all of the different leaf devices. Examples of (3) include pchtemp(4D) and
+ * igb(4D).
*
* We separate numbers one and two into two different components for a few
* reasons. The most important thing is that drivers that provide sensors should
diff --git a/usr/src/uts/common/os/logsubr.c b/usr/src/uts/common/os/logsubr.c
index a506f5a3b8..e365ad26b6 100644
--- a/usr/src/uts/common/os/logsubr.c
+++ b/usr/src/uts/common/os/logsubr.c
@@ -199,7 +199,7 @@ log_init(void)
/*
* Create a backlog queue to consume console messages during periods
- * when there is no console reader (e.g. before syslogd(1M) starts).
+ * when there is no console reader (e.g. before syslogd(8) starts).
*/
log_backlogq = log_consq = log_makeq(0, LOG_HIWAT, NULL);
@@ -681,7 +681,7 @@ log_sendmsg(mblk_t *mp, zoneid_t zoneid)
if (lp->log_q == log_consq) {
console_printf(log_overflow_msg,
lp->log_minor,
- " -- is syslogd(1M) running?");
+ " -- is syslogd(8) running?");
} else {
printf(log_overflow_msg,
lp->log_minor, "");
diff --git a/usr/src/uts/common/os/ndifm.c b/usr/src/uts/common/os/ndifm.c
index 16613a9203..54640971fd 100644
--- a/usr/src/uts/common/os/ndifm.c
+++ b/usr/src/uts/common/os/ndifm.c
@@ -669,7 +669,7 @@ ndi_fm_dma_err_set(ddi_dma_handle_t handle, ddi_fm_error_t *dfe)
/*
* Call parent busop fm initialization routine.
*
- * Called during driver attach(1M)
+ * Called during driver attach(9E)
*/
int
i_ndi_busop_fm_init(dev_info_t *dip, int tcap, ddi_iblock_cookie_t *ibc)
@@ -696,7 +696,7 @@ i_ndi_busop_fm_init(dev_info_t *dip, int tcap, ddi_iblock_cookie_t *ibc)
/*
* Call parent busop fm clean-up routine.
*
- * Called during driver detach(1M)
+ * Called during driver detach(9E)
*/
void
i_ndi_busop_fm_fini(dev_info_t *dip)
diff --git a/usr/src/uts/common/os/priv_defs b/usr/src/uts/common/os/priv_defs
index 854fb602da..05979dd236 100644
--- a/usr/src/uts/common/os/priv_defs
+++ b/usr/src/uts/common/os/priv_defs
@@ -217,7 +217,7 @@ privilege PRIV_NET_BINDMLP
Allow a process to bind to a port that is configured as a
multi-level port(MLP) for the process's zone. This privilege
applies to both shared address and zone-specific address MLPs.
- See tnzonecfg(4) from the Trusted Extensions manual pages for
+ See tnzonecfg(5) from the Trusted Extensions manual pages for
information on configuring MLP ports.
This privilege is interpreted only if the system is configured
with Trusted Extensions.
@@ -507,7 +507,7 @@ privilege PRIV_SYS_TRANS_LABEL
privilege PRIV_VIRT_MANAGE
Allows a process to manage virtualized environments such as
- xVM(5).
+ xVM(7).
privilege PRIV_WIN_COLORMAP
@@ -613,7 +613,7 @@ privilege PRIV_WIN_UPGRADE_SL
privilege PRIV_XVM_CONTROL
- Allows a process access to the xVM(5) control devices for
+ Allows a process access to the xVM(7) control devices for
managing guest domains and the hypervisor. This privilege is
used only if booted into xVM on x86 platforms.
diff --git a/usr/src/uts/common/os/rctl.c b/usr/src/uts/common/os/rctl.c
index 4ddef1c00f..8f52f4ef3a 100644
--- a/usr/src/uts/common/os/rctl.c
+++ b/usr/src/uts/common/os/rctl.c
@@ -149,7 +149,7 @@
* The locking subsequence of interest is: p_lock, rctl_dict_lock,
* rctl_lists_lock, entity->rcs_lock.
*
- * The projects(4) database and project entity resource controls
+ * The project(5) database and project entity resource controls
* A special case is made for RCENTITY_PROJECT values set through the
* setproject(3PROJECT) interface. setproject() makes use of a private
* interface, setprojrctl(), which passes through an array of resource control
@@ -170,7 +170,7 @@
*
* rctl->rc_values - a linked list of rctl_val_t. These are the active
* resource values associated with this rctl, and may have been set by
- * setrctl() - via prctl(1M), or by setprojrctl() - via
+ * setrctl() - via prctl(1), or by setprojrctl() - via
* setproject(3PROJECT).
*
* rctl->rc_projdb - a linked list of rctl_val_t. These reflect the
diff --git a/usr/src/uts/common/os/streamio.c b/usr/src/uts/common/os/streamio.c
index 975b2f3d2e..90a9ea6f0f 100644
--- a/usr/src/uts/common/os/streamio.c
+++ b/usr/src/uts/common/os/streamio.c
@@ -3629,7 +3629,7 @@ strioctl(struct vnode *vp, int cmd, intptr_t arg, int flag, int copyflag,
/*
* The I_STR facility provides a trap door for malicious
- * code to send down bogus streamio(7I) ioctl commands to
+ * code to send down bogus streamio(4I) ioctl commands to
* unsuspecting STREAMS modules and drivers which expect to
* only get these messages from the stream head.
* Explicitly prohibit any streamio ioctls which can be
diff --git a/usr/src/uts/common/os/sunpm.c b/usr/src/uts/common/os/sunpm.c
index 0d40abbbcf..7518c45cea 100644
--- a/usr/src/uts/common/os/sunpm.c
+++ b/usr/src/uts/common/os/sunpm.c
@@ -61,8 +61,8 @@
* tells what each component's power state values are, and provides human
* readable strings (currently unused) for each component name and power state.
* Devices which export pm-components(9P) are automatically power managed
- * whenever autopm is enabled (via PM_START_PM ioctl issued by pmconfig(1M)
- * after parsing power.conf(4)). The exception to this rule is that power
+ * whenever autopm is enabled (via PM_START_PM ioctl issued by pmconfig(8)
+ * after parsing power.conf(5)). The exception to this rule is that power
* manageable CPU devices may be automatically managed independently of autopm
* by either enabling or disabling (via PM_START_CPUPM and PM_STOP_CPUPM
* ioctls) cpupm. If the CPU devices are not managed independently, then they
@@ -72,13 +72,13 @@
* hardware state.
*
* Each device component also has a threshold time associated with each power
- * transition (see power.conf(4)), and a busy/idle state maintained by the
+ * transition (see power.conf(5)), and a busy/idle state maintained by the
* driver calling pm_idle_component(9F) and pm_busy_component(9F).
* Components are created idle.
*
* The PM framework provides several functions:
- * -implement PM policy as described in power.conf(4)
- * Policy is set by pmconfig(1M) issuing pm ioctls based on power.conf(4).
+ * -implement PM policy as described in power.conf(5)
+ * Policy is set by pmconfig(8) issuing pm ioctls based on power.conf(5).
* Policies consist of:
* -set threshold values (defaults if none provided by pmconfig)
* -set dependencies among devices
@@ -122,7 +122,7 @@
* cdrom is always up whenever the console framebuffer is up, so that the user
* can insert a cdrom and see a popup as a result.
*
- * The dependency terminology used in power.conf(4) is not easy to understand,
+ * The dependency terminology used in power.conf(5) is not easy to understand,
* so we've adopted a different terminology in the implementation. We write
* of a "keeps up" and a "kept up" device. A relationship can be established
* where one device keeps up another. That means that if the keepsup device
@@ -384,7 +384,7 @@ int cpr_platform_enable = 0;
/*
* pm_S3_enabled indicates that we believe the platform can support S3,
- * which we get from pmconfig(1M)
+ * which we get from pmconfig(8)
*/
int pm_S3_enabled;
@@ -7646,7 +7646,7 @@ pm_cfb_setup(const char *stdout_path)
*/
} else {
cmn_err(CE_WARN, "Kernel debugger present: see "
- "kmdb(1M) for interaction with power management.");
+ "kmdb(1) for interaction with power management.");
}
}
#ifdef DEBUG
diff --git a/usr/src/uts/common/os/timer.c b/usr/src/uts/common/os/timer.c
index ce678a3ccd..f587430625 100644
--- a/usr/src/uts/common/os/timer.c
+++ b/usr/src/uts/common/os/timer.c
@@ -179,7 +179,7 @@ timer_delete_locked(proc_t *p, timer_t tid, itimer_t *it)
/*
* timer_grab() and its companion routine, timer_release(), are wrappers
- * around timer_lock()/_unlock() which allow the timer_*(3R) routines to
+ * around timer_lock()/_unlock() which allow the timer_*(3C) routines to
* (a) share error handling code and (b) not grab p_lock themselves. Routines
* which are called with p_lock held (e.g. timer_lwpbind(), timer_lwpexit())
* must call timer_lock()/_unlock() explictly.
@@ -194,7 +194,7 @@ timer_delete_locked(proc_t *p, timer_t tid, itimer_t *it)
* (a) The specified timer ID is out of range.
*
* (b) The specified timer ID does not correspond to a timer ID returned
- * from timer_create(3R).
+ * from timer_create(3C).
*
* (c) The specified timer ID is currently being removed.
*
diff --git a/usr/src/uts/common/rpc/sec_gss/svc_rpcsec_gss.c b/usr/src/uts/common/rpc/sec_gss/svc_rpcsec_gss.c
index aa0eb2484e..bf8e6ed3a1 100644
--- a/usr/src/uts/common/rpc/sec_gss/svc_rpcsec_gss.c
+++ b/usr/src/uts/common/rpc/sec_gss/svc_rpcsec_gss.c
@@ -949,7 +949,7 @@ rpcsec_gss_init(
}
/*
- * kgss_accept_sec_context()/gssd(1M) can be overly time
+ * kgss_accept_sec_context()/gssd(8) can be overly time
* consuming so let's queue it and return asap.
*
* taskq func must free arg.
diff --git a/usr/src/uts/common/sys/class.h b/usr/src/uts/common/sys/class.h
index a132d38419..c795f85eca 100644
--- a/usr/src/uts/common/sys/class.h
+++ b/usr/src/uts/common/sys/class.h
@@ -130,7 +130,7 @@ extern int loaded_classes; /* number of classes loaded */
extern pri_t minclsyspri;
extern id_t syscid; /* system scheduling class ID */
extern id_t sysdccid; /* system duty-cycle scheduling class ID */
-extern id_t defaultcid; /* "default" class id; see dispadmin(1M) */
+extern id_t defaultcid; /* "default" class id; see dispadmin(8) */
extern int alloc_cid(char *, id_t *);
extern int scheduler_load(char *, sclass_t *);
diff --git a/usr/src/uts/common/sys/csiioctl.h b/usr/src/uts/common/sys/csiioctl.h
index 78a1303798..6a6debfadb 100644
--- a/usr/src/uts/common/sys/csiioctl.h
+++ b/usr/src/uts/common/sys/csiioctl.h
@@ -27,8 +27,6 @@
#ifndef _SYS_CSIIOCTL_H
#define _SYS_CSIIOCTL_H
-#pragma ident "%Z%%M% %I% %E% SMI"
-
#ifdef __cplusplus
extern "C" {
#endif
@@ -37,14 +35,14 @@ extern "C" {
* csiioctl.h
*
* CodeSet Independent codeset width communication between stty(1) and
- * ldterm(7M).
+ * ldterm(4M).
*
* CSDATA_SET This call takes a pointer to a ldterm_cs_data_t data
* structure, and uses it to set the line discipline definition
* and also for a possible switch of the internal methods and
* data for the current locale's codeset.
*
- * When this message is reached, the ldterm(7M) will check
+ * When this message is reached, the ldterm(4M) will check
* the validity of the message and if the message contains
* a valid data, it will accumulate the data and switch
* the internal methods if necessary to support the requested
@@ -52,7 +50,7 @@ extern "C" {
*
* CSDATA_GET This call takes a pointer to a ldterm_cs_data_t structure
* and returns in it the codeset data info currently in use by
- * the ldterm(7M) module.
+ * the ldterm(4M) module.
*/
#define CSI_IOC (('C' | 128) << 8)
diff --git a/usr/src/uts/common/sys/dkio.h b/usr/src/uts/common/sys/dkio.h
index e66551fc6d..6996837b40 100644
--- a/usr/src/uts/common/sys/dkio.h
+++ b/usr/src/uts/common/sys/dkio.h
@@ -88,7 +88,7 @@ struct dk_cinfo {
#define DKC_PCMCIA_MEM 21 /* PCMCIA memory disk-like type (Obsolete) */
#define DKC_PCMCIA_ATA 22 /* PCMCIA AT Attached type */
#define DKC_VBD 23 /* virtual block device */
-#define DKC_BLKDEV 24 /* generic block device (see blkdev(7d)) */
+#define DKC_BLKDEV 24 /* generic block device (see blkdev(4D)) */
/*
* Sun reserves up through 1023
diff --git a/usr/src/uts/common/sys/dklabel.h b/usr/src/uts/common/sys/dklabel.h
index 457c1ecadc..25b52c014b 100644
--- a/usr/src/uts/common/sys/dklabel.h
+++ b/usr/src/uts/common/sys/dklabel.h
@@ -87,7 +87,7 @@ typedef daddr32_t blkaddr32_t;
/*
* partition headers: section 1
- * Returned in struct dk_allmap by ioctl DKIOC[SG]APART (dkio(7I))
+ * Returned in struct dk_allmap by ioctl DKIOC[SG]APART (dkio(4I))
*/
struct dk_map {
blkaddr_t dkl_cylno; /* starting cylinder */
diff --git a/usr/src/uts/common/sys/dld.h b/usr/src/uts/common/sys/dld.h
index 6921960160..b73d22249a 100644
--- a/usr/src/uts/common/sys/dld.h
+++ b/usr/src/uts/common/sys/dld.h
@@ -48,7 +48,7 @@ extern "C" {
#endif
/*
- * Data-Link Driver Information (text emitted by modinfo(1m))
+ * Data-Link Driver Information (text emitted by modinfo(8))
*/
#define DLD_INFO "Data-Link Driver"
diff --git a/usr/src/uts/common/sys/dlpi.h b/usr/src/uts/common/sys/dlpi.h
index 72d9a9db15..f3a5fd6f70 100644
--- a/usr/src/uts/common/sys/dlpi.h
+++ b/usr/src/uts/common/sys/dlpi.h
@@ -278,7 +278,7 @@ typedef struct dl_ipnetinfo {
#define DL_IPV6 0x80000002ul /* IPv6 Tunnel Link */
#define SUNW_DL_VNI 0x80000003ul /* Virtual network interface */
#define DL_WIFI 0x80000004ul /* IEEE 802.11 */
-#define DL_IPNET 0x80000005ul /* ipnet(7D) link */
+#define DL_IPNET 0x80000005ul /* ipnet(4D) link */
#define SUNW_DL_IPMP 0x80000006ul /* IPMP stub interface */
#define DL_6TO4 0x80000007ul /* 6to4 Tunnel Link */
diff --git a/usr/src/uts/common/sys/dls.h b/usr/src/uts/common/sys/dls.h
index 81f9e2abac..0c5ffb0dd7 100644
--- a/usr/src/uts/common/sys/dls.h
+++ b/usr/src/uts/common/sys/dls.h
@@ -46,7 +46,7 @@ extern "C" {
#define DLS_MODULE_NAME "dls"
/*
- * Data-Link Services Information (text emitted by modinfo(1m))
+ * Data-Link Services Information (text emitted by modinfo(8))
*/
#define DLS_INFO "Data-Link Services"
diff --git a/usr/src/uts/common/sys/dtrace.h b/usr/src/uts/common/sys/dtrace.h
index ab6d4c4445..f554fb0e58 100644
--- a/usr/src/uts/common/sys/dtrace.h
+++ b/usr/src/uts/common/sys/dtrace.h
@@ -43,7 +43,7 @@ extern "C" {
* Solaris system and DTrace subsystem and are subject to change at any time
* without notice. Applications and drivers using these interfaces will fail
* to run on future releases. These interfaces should not be used for any
- * purpose except those expressly outlined in dtrace(7D) and libdtrace(3LIB).
+ * purpose except those expressly outlined in dtrace(4D) and libdtrace(3LIB).
* Please refer to the "Solaris Dynamic Tracing Guide" for more information.
*/
@@ -1188,7 +1188,7 @@ typedef struct dtrace_argdesc {
* The D compiler can query the provider attributes (dtrace_pattr_t below) in
* order to compute the properties of an input program and report them.
*/
-typedef uint8_t dtrace_stability_t; /* stability code (see attributes(5)) */
+typedef uint8_t dtrace_stability_t; /* stability code (see attributes(7)) */
typedef uint8_t dtrace_class_t; /* architectural dependency class */
#define DTRACE_STABILITY_INTERNAL 0 /* private to DTrace itself */
diff --git a/usr/src/uts/common/sys/dtrace_impl.h b/usr/src/uts/common/sys/dtrace_impl.h
index a55d0d7e1f..fe8666e1dd 100644
--- a/usr/src/uts/common/sys/dtrace_impl.h
+++ b/usr/src/uts/common/sys/dtrace_impl.h
@@ -43,7 +43,7 @@ extern "C" {
* Solaris system and DTrace subsystem and are subject to change at any time
* without notice. Applications and drivers using these interfaces will fail
* to run on future releases. These interfaces should not be used for any
- * purpose except those expressly outlined in dtrace(7D) and libdtrace(3LIB).
+ * purpose except those expressly outlined in dtrace(4D) and libdtrace(3LIB).
* Please refer to the "Solaris Dynamic Tracing Guide" for more information.
*/
@@ -1201,7 +1201,7 @@ typedef struct dtrace_enabling {
* properties in the dtrace.conf file. If there is an anonymous enabling, a
* DTrace consumer state and enabling are created on attach. The state may be
* subsequently grabbed by the first consumer specifying the "grabanon"
- * option. As long as an anonymous DTrace enabling exists, dtrace(7D) will
+ * option. As long as an anonymous DTrace enabling exists, dtrace(4D) will
* refuse to unload.
*/
typedef struct dtrace_anon {
diff --git a/usr/src/uts/common/sys/dumphdr.h b/usr/src/uts/common/sys/dumphdr.h
index 57a9a9c2dc..aa2fbde7a5 100644
--- a/usr/src/uts/common/sys/dumphdr.h
+++ b/usr/src/uts/common/sys/dumphdr.h
@@ -41,8 +41,8 @@ extern "C" {
* are written out: one at the beginning of the dump, and the other at
* the very end of the dump device. The terminal header is at a known
* location (end of device) so we can always find it. The initial header
- * is redundant, but helps savecore(1M) determine whether the dump has been
- * overwritten by swap activity. See dumpadm(1M) for dump configuration.
+ * is redundant, but helps savecore(8) determine whether the dump has been
+ * overwritten by swap activity. See dumpadm(8) for dump configuration.
*/
#define DUMP_MAGIC 0xdefec8edU /* dump magic number */
#define DUMP_VERSION 10 /* version of this dumphdr */
diff --git a/usr/src/uts/common/sys/epoll.h b/usr/src/uts/common/sys/epoll.h
index 3b38d9f629..480bfdf9ff 100644
--- a/usr/src/uts/common/sys/epoll.h
+++ b/usr/src/uts/common/sys/epoll.h
@@ -45,7 +45,7 @@ typedef struct epoll_event {
#endif
/*
- * Define the EPOLL* constants in terms of their poll(2)/poll(7) equivalents.
+ * Define the EPOLL* constants in terms of their poll(2)/poll(4D) equivalents.
* Note that the values match the equivalents in Linux to allow for any binary
* compatibility layers to not need to translate them.
*/
diff --git a/usr/src/uts/common/sys/fault.h b/usr/src/uts/common/sys/fault.h
index d37e8a0f47..139216b5ff 100644
--- a/usr/src/uts/common/sys/fault.h
+++ b/usr/src/uts/common/sys/fault.h
@@ -40,7 +40,7 @@ extern "C" {
* hardware faults. Setting the appropriate flags in a process's
* set of traced faults via /proc causes the process to stop each
* time one of the designated faults occurs so that a debugger can
- * take action. See proc(4) for details.
+ * take action. See proc(5) for details.
*/
/* fault enumeration must begin with 1 */
diff --git a/usr/src/uts/common/sys/feature_tests.h b/usr/src/uts/common/sys/feature_tests.h
index 9236a398b8..728060e7ec 100644
--- a/usr/src/uts/common/sys/feature_tests.h
+++ b/usr/src/uts/common/sys/feature_tests.h
@@ -58,7 +58,7 @@ extern "C" {
* compress common standards specified feature test macros for easier reading.
* These macros should not be used by the application developer as
* unexpected results may occur. Instead, the user should reference
- * standards(5) for correct usage of the standards feature test macros.
+ * standards(7) for correct usage of the standards feature test macros.
*
* __XOPEN_OR_POSIX Used in cases where a symbol is defined by both
* X/Open or POSIX or in the negative, when neither
@@ -259,7 +259,7 @@ extern "C" {
*
* When writing a conforming X/Open application, as per the specification
* requirements, the appropriate feature test macros must be defined at
- * compile time. These are as follows. For more info, see standards(5).
+ * compile time. These are as follows. For more info, see standards(7).
*
* Feature Test Macro Specification
* ------------------------------------------------ -------------
diff --git a/usr/src/uts/common/sys/fs/zfs.h b/usr/src/uts/common/sys/fs/zfs.h
index 73050319b9..0ed966d22f 100644
--- a/usr/src/uts/common/sys/fs/zfs.h
+++ b/usr/src/uts/common/sys/fs/zfs.h
@@ -247,7 +247,7 @@ typedef enum {
ZPOOL_NUM_PROPS
} zpool_prop_t;
-/* Small enough to not hog a whole line of printout in zpool(1M). */
+/* Small enough to not hog a whole line of printout in zpool(8). */
#define ZPROP_MAX_COMMENT 32
#define ZPROP_VALUE "value"
diff --git a/usr/src/uts/common/sys/fsspriocntl.h b/usr/src/uts/common/sys/fsspriocntl.h
index 66931e813b..4f61519a7c 100644
--- a/usr/src/uts/common/sys/fsspriocntl.h
+++ b/usr/src/uts/common/sys/fsspriocntl.h
@@ -27,8 +27,6 @@
#ifndef _SYS_FSSPRIOCNTL_H
#define _SYS_FSSPRIOCNTL_H
-#pragma ident "%Z%%M% %I% %E% SMI"
-
#include <sys/types.h>
#include <sys/fss.h>
@@ -58,7 +56,7 @@ typedef struct fssinfo {
#define FSS_KY_UPRI 2 /* user priority */
/*
- * The following is used by the dispadmin(1M) command for scheduler
+ * The following is used by the dispadmin(8) command for scheduler
* administration and is not for general use.
*/
typedef struct fssadmin {
diff --git a/usr/src/uts/common/sys/fxpriocntl.h b/usr/src/uts/common/sys/fxpriocntl.h
index feff8a2ad4..8a1c680ee9 100644
--- a/usr/src/uts/common/sys/fxpriocntl.h
+++ b/usr/src/uts/common/sys/fxpriocntl.h
@@ -27,8 +27,6 @@
#ifndef _SYS_FXPRIOCNTL_H
#define _SYS_FXPRIOCNTL_H
-#pragma ident "%Z%%M% %I% %E% SMI"
-
#include <sys/types.h>
#include <sys/thread.h>
@@ -68,7 +66,7 @@ typedef struct fxinfo {
/*
- * The following is used by the dispadmin(1M) command for
+ * The following is used by the dispadmin(8) command for
* scheduler administration and is not for general use.
*/
diff --git a/usr/src/uts/common/sys/iapriocntl.h b/usr/src/uts/common/sys/iapriocntl.h
index b6dcd1162b..d35577f9e8 100644
--- a/usr/src/uts/common/sys/iapriocntl.h
+++ b/usr/src/uts/common/sys/iapriocntl.h
@@ -78,7 +78,7 @@ typedef struct iainfo {
#define IA_KY_MODE 3 /* interactive on/off */
/*
- * The following is used by the dispadmin(1M) command for
+ * The following is used by the dispadmin(8) command for
* scheduler administration and is not for general use.
*/
diff --git a/usr/src/uts/common/sys/ib/ibnex/ibnex.h b/usr/src/uts/common/sys/ib/ibnex/ibnex.h
index f2928d8f4b..3b12a499fc 100644
--- a/usr/src/uts/common/sys/ib/ibnex/ibnex.h
+++ b/usr/src/uts/common/sys/ib/ibnex/ibnex.h
@@ -263,7 +263,7 @@ typedef struct ibnex_s {
IBNEX_MAX_COMPAT_NAMES * IBNEX_MAX_COMPAT_LEN
#define IBNEX_MAX_IBPORT_COMPAT_PROP_SZ \
IBNEX_MAX_IBPORT_COMPAT_NAMES * IBNEX_MAX_COMPAT_LEN
-#define IBNEX_DEVFS_ENUMERATE 0x1 /* enumerate via devfs(7fs) */
+#define IBNEX_DEVFS_ENUMERATE 0x1 /* enumerate via devfs(4FS) */
#define IBNEX_CFGADM_ENUMERATE 0x2 /* enumerate via cfgadm */
#define IBNEX_MAX_NODEADDR_SZ 35
diff --git a/usr/src/uts/common/sys/ib/ibnex/ibnex_devctl.h b/usr/src/uts/common/sys/ib/ibnex/ibnex_devctl.h
index c82b43b5a5..8d74d61c86 100644
--- a/usr/src/uts/common/sys/ib/ibnex/ibnex_devctl.h
+++ b/usr/src/uts/common/sys/ib/ibnex/ibnex_devctl.h
@@ -82,14 +82,14 @@ typedef enum ib_service_type_e {
#define IBNEX_NODE_COND_NVL "node_condition"
/*
- * This flag is passed from cfgadm to ib(7d) to convey that it
+ * This flag is passed from cfgadm to ib(4D) to convey that it
* need not attempt to probe the fabric.
*
* The value of these flags should be same as flags in enum
* ibdm_ibnex_get_ioclist_mtd_t.
*/
#define IBNEX_DONOT_PROBE_FLAG 1
-#define IBNEX_NORMAL_PROBE 0 /* flag used by ib(7d) only */
+#define IBNEX_NORMAL_PROBE 0 /* flag used by ib(4D) only */
/*
* The following are sub-commands to DEVCTL_AP_CONTROL.
diff --git a/usr/src/uts/common/sys/ib/ibtl/impl/ibtl_ibnex.h b/usr/src/uts/common/sys/ib/ibtl/impl/ibtl_ibnex.h
index 824d692306..4acabc9e86 100644
--- a/usr/src/uts/common/sys/ib/ibtl/impl/ibtl_ibnex.h
+++ b/usr/src/uts/common/sys/ib/ibtl/impl/ibtl_ibnex.h
@@ -118,7 +118,7 @@ void ibtl_ibnex_unregister_callback();
* alternate_HCA database
* IBTL_IBNEX_UNCFG_CLNTS_FLAG - Build client devpaths/
* ap_id database
- * callback - Callback function to get ap_id from ib(7d)
+ * callback - Callback function to get ap_id from ib(4D)
* Output:
* buffer - The information is returned in this buffer
* bufsiz - The size of the information buffer
@@ -192,7 +192,7 @@ ibt_status_t ibtl_ibnex_get_hca_verbose_data(ib_guid_t, char **, size_t *);
* registered HCAs's dip. If match found return IBT_SUCCESS,
* else IBT_NO_HCAS_AVAILABLE.
* For IOC/Pseudo devices check if the given pdip is that of
- * the ib(7d) nexus. If yes return IBT_SUCCESS,
+ * the ib(4D) nexus. If yes return IBT_SUCCESS,
* else IBT_NO_HCAS_AVAILABLE.
*/
ibt_status_t ibtl_ibnex_valid_hca_parent(dev_info_t *);
diff --git a/usr/src/uts/common/sys/lofi.h b/usr/src/uts/common/sys/lofi.h
index f57388a098..f5285149fa 100644
--- a/usr/src/uts/common/sys/lofi.h
+++ b/usr/src/uts/common/sys/lofi.h
@@ -137,7 +137,7 @@ extern "C" {
* torn down.
*
* Oh, and last but not least: these ioctls are totally private and only
- * for use by lofiadm(1M).
+ * for use by lofiadm(8).
*
*/
diff --git a/usr/src/uts/common/sys/mac.h b/usr/src/uts/common/sys/mac.h
index 723128cfc9..da2cff93a7 100644
--- a/usr/src/uts/common/sys/mac.h
+++ b/usr/src/uts/common/sys/mac.h
@@ -43,7 +43,7 @@ extern "C" {
#endif
/*
- * MAC Information (text emitted by modinfo(1m))
+ * MAC Information (text emitted by modinfo(8))
*/
#define MAC_INFO "MAC Services"
@@ -593,7 +593,7 @@ typedef struct mactype_ops_s {
* Note that the ndd ioctls are obsolete, and may be removed in a future
* release of Solaris. The ndd ioctls are not typically used in legacy
* ethernet drivers. New datalink drivers of all link-types should use
- * dladm(1m) interfaces for administering tunables and not have to provide
+ * dladm(8) interfaces for administering tunables and not have to provide
* a mapping.
*/
typedef struct mac_ndd_mapping_s {
diff --git a/usr/src/uts/common/sys/mac_wifi.h b/usr/src/uts/common/sys/mac_wifi.h
index 2ff46dbc6c..425c1a6613 100644
--- a/usr/src/uts/common/sys/mac_wifi.h
+++ b/usr/src/uts/common/sys/mac_wifi.h
@@ -50,7 +50,7 @@ extern "C" {
sizeof (struct ieee80211_llc))
enum wifi_stat {
- /* statistics described in ieee802.11(5) */
+ /* statistics described in ieee802.11(7) */
WIFI_STAT_TX_FRAGS = MACTYPE_STAT_MIN,
WIFI_STAT_MCAST_TX,
WIFI_STAT_TX_FAILED,
diff --git a/usr/src/uts/common/sys/mem.h b/usr/src/uts/common/sys/mem.h
index c73a1b6e95..ff265b185c 100644
--- a/usr/src/uts/common/sys/mem.h
+++ b/usr/src/uts/common/sys/mem.h
@@ -68,7 +68,7 @@ typedef struct mem_vtop32 {
#endif
/*
- * Private ioctls for fmd(1M). These interfaces are Sun Private. Applications
+ * Private ioctls for fmd(8). These interfaces are Sun Private. Applications
* and drivers should not make use of these interfaces: they can change without
* notice and programs that consume them will fail to run on future releases.
*/
@@ -86,7 +86,7 @@ typedef struct mem_vtop32 {
#define MEM_SID (('M' << 8) | 0x0B)
/*
- * Bits returned from MEM_PAGE_GETERRORS ioctl for use by fmd(1M).
+ * Bits returned from MEM_PAGE_GETERRORS ioctl for use by fmd(8).
*/
#define MEM_PAGE_ERR_NONE 0x0
#define MEM_PAGE_ERR_MULTI_CE 0x1
diff --git a/usr/src/uts/common/sys/mixer.h b/usr/src/uts/common/sys/mixer.h
index 9abcd6121d..e50ad9fc47 100644
--- a/usr/src/uts/common/sys/mixer.h
+++ b/usr/src/uts/common/sys/mixer.h
@@ -81,7 +81,7 @@ struct am_control {
audio_info_t dev_info;
/*
- * The mixer(7I) manual page shows an example of using the ch_open[]
+ * The mixer(4I) manual page shows an example of using the ch_open[]
* array. Each element that is set to 0 represents a channel which
* isn't allocated, and non-zero elements represent a channel that is
* alloacted. This size of this array may change, depending on the
@@ -111,7 +111,7 @@ struct am_sample_rates {
/*
* Set this number to the number of sample rates to request. The
- * mixer(7I) manual page shows an example of using this structure.
+ * mixer(4I) manual page shows an example of using this structure.
* When AUDIO_MIXER_GET_SAMPLE_RATES returns the number of samples
* available is set. This may be more or less than the number requested.
* If more that only the requested number of samples is arctually
@@ -121,7 +121,7 @@ struct am_sample_rates {
/*
* Variable size array for the supported sample rates. See the example
- * in the mixer(7I) manual page for how to use this array.
+ * in the mixer(4I) manual page for how to use this array.
*/
uint_t samp_rates[1];
};
diff --git a/usr/src/uts/common/sys/mutex.h b/usr/src/uts/common/sys/mutex.h
index db34243dcc..7f6dc8ae10 100644
--- a/usr/src/uts/common/sys/mutex.h
+++ b/usr/src/uts/common/sys/mutex.h
@@ -51,7 +51,7 @@ extern "C" {
* either MUTEX_ADAPTIVE or MUTEX_SPIN depending on the iblock cookie.
*
* Mutex statistics can be gathered on the fly, without rebooting or
- * recompiling the kernel, via the lockstat driver (lockstat(7D)).
+ * recompiling the kernel, via the lockstat driver (lockstat(4D)).
*/
typedef enum {
MUTEX_ADAPTIVE = 0, /* spin if owner is running, otherwise block */
diff --git a/usr/src/uts/common/sys/nvme.h b/usr/src/uts/common/sys/nvme.h
index bca3102270..9e154131b1 100644
--- a/usr/src/uts/common/sys/nvme.h
+++ b/usr/src/uts/common/sys/nvme.h
@@ -29,7 +29,7 @@
#endif
/*
- * Declarations used for communication between nvmeadm(1M) and nvme(7D)
+ * Declarations used for communication between nvmeadm(8) and nvme(4D)
*/
#ifdef __cplusplus
diff --git a/usr/src/uts/common/sys/priocntl.h b/usr/src/uts/common/sys/priocntl.h
index 682c79ed7c..396672a31f 100644
--- a/usr/src/uts/common/sys/priocntl.h
+++ b/usr/src/uts/common/sys/priocntl.h
@@ -54,7 +54,7 @@ extern long priocntlset(procset_t *, int, ...);
#define PC_SETPARMS 2 /* Set scheduling parameters */
#define PC_GETPARMS 3 /* Get scheduling parameters */
#define PC_ADMIN 4 /* Scheduler administration (used by */
- /* dispadmin(1M), not for general use) */
+ /* dispadmin(8), not for general use) */
#define PC_GETPRIRANGE 5 /* Get priority range for a class */
/* posix.4 scheduling, not for general use */
#define PC_DONICE 6 /* Set or get nice value */
@@ -152,7 +152,7 @@ typedef struct pcpri {
} pcpri_t;
/*
- * The following is used by the dispadmin(1M) command for
+ * The following is used by the dispadmin(8) command for
* scheduler administration and is not for general use.
*/
diff --git a/usr/src/uts/common/sys/ramdisk.h b/usr/src/uts/common/sys/ramdisk.h
index a750336d37..202fff360f 100644
--- a/usr/src/uts/common/sys/ramdisk.h
+++ b/usr/src/uts/common/sys/ramdisk.h
@@ -26,8 +26,6 @@
#ifndef _SYS_RAMDISK_H
#define _SYS_RAMDISK_H
-#pragma ident "%Z%%M% %I% %E% SMI"
-
#include <sys/types.h>
#include <sys/time.h>
#include <sys/vtoc.h>
@@ -93,7 +91,7 @@ extern "C" {
}
/*
- * Interface between the ramdisk(7D) driver and ramdiskadm(1M). Use is:
+ * Interface between the ramdisk(4D) driver and ramdiskadm(8). Use is:
*
* fd = open("/dev/ramdiskctl", O_RDWR | O_EXCL);
*
@@ -117,7 +115,7 @@ extern "C" {
* by the RD_DELETE_DISK ioctl).
*
* Note that these ioctls are completely private, and only for the use of
- * ramdiskadm(1M).
+ * ramdiskadm(8).
*/
#define RD_IOC_BASE (('R' << 16) | ('D' << 8))
diff --git a/usr/src/uts/common/sys/rtpriocntl.h b/usr/src/uts/common/sys/rtpriocntl.h
index 6c9d824944..3baa1b62d8 100644
--- a/usr/src/uts/common/sys/rtpriocntl.h
+++ b/usr/src/uts/common/sys/rtpriocntl.h
@@ -67,7 +67,7 @@ typedef struct rtinfo {
#define RT_KY_TQSIG 4 /* real-time time quantum signal */
/*
- * The following is used by the dispadmin(1M) command for
+ * The following is used by the dispadmin(8) command for
* scheduler administration and is not for general use.
*/
diff --git a/usr/src/uts/common/sys/smbios.h b/usr/src/uts/common/sys/smbios.h
index 3ce9e2c7a3..257956b047 100644
--- a/usr/src/uts/common/sys/smbios.h
+++ b/usr/src/uts/common/sys/smbios.h
@@ -2085,7 +2085,7 @@ extern const char *smbios_csn(smbios_hdl_t *);
#ifndef _KERNEL
/*
* The smbios_*_desc() and smbios_*_name() interfaces can be used for utilities
- * such as smbios(1M) that wish to decode SMBIOS fields for humans. The _desc
+ * such as smbios(8) that wish to decode SMBIOS fields for humans. The _desc
* functions return the comment string next to the #defines listed above, and
* the _name functions return the appropriate #define identifier itself.
*/
diff --git a/usr/src/uts/common/sys/socketvar.h b/usr/src/uts/common/sys/socketvar.h
index 910f2a839a..1e48b00dd7 100644
--- a/usr/src/uts/common/sys/socketvar.h
+++ b/usr/src/uts/common/sys/socketvar.h
@@ -617,7 +617,7 @@ extern smod_info_t *smod_lookup_byname(const char *);
/*
* Used to traverse the list of AF_UNIX sockets to construct the kstat
- * for netstat(1m).
+ * for netstat(8).
*/
struct socklist {
kmutex_t sl_lock;
diff --git a/usr/src/uts/common/sys/sysmsg_impl.h b/usr/src/uts/common/sys/sysmsg_impl.h
index 9081277478..a573db1320 100644
--- a/usr/src/uts/common/sys/sysmsg_impl.h
+++ b/usr/src/uts/common/sys/sysmsg_impl.h
@@ -27,8 +27,6 @@
#ifndef _SYS_SYSMSG_IMPL_H
#define _SYS_SYSMSG_IMPL_H
-#pragma ident "%Z%%M% %I% %E% SMI"
-
#ifdef __cplusplus
extern "C" {
#endif
@@ -36,7 +34,7 @@ extern "C" {
#define SYSMSG "/dev/sysmsg"
/*
- * consadm(1M) uses these ioctls to interface with /dev/sysmsg.
+ * consadm(8) uses these ioctls to interface with /dev/sysmsg.
*/
/*
diff --git a/usr/src/uts/common/sys/tspriocntl.h b/usr/src/uts/common/sys/tspriocntl.h
index 1c8c35a5d6..6d814631e0 100644
--- a/usr/src/uts/common/sys/tspriocntl.h
+++ b/usr/src/uts/common/sys/tspriocntl.h
@@ -62,7 +62,7 @@ typedef struct tsinfo {
#define TS_KY_UPRI 2 /* user priority */
/*
- * The following is used by the dispadmin(1M) command for
+ * The following is used by the dispadmin(8) command for
* scheduler administration and is not for general use.
*/
diff --git a/usr/src/uts/common/sys/usb/clients/ugen/usb_ugen.h b/usr/src/uts/common/sys/usb/clients/ugen/usb_ugen.h
index d1bcc096d1..a63fb02f1a 100644
--- a/usr/src/uts/common/sys/usb/clients/ugen/usb_ugen.h
+++ b/usr/src/uts/common/sys/usb/clients/ugen/usb_ugen.h
@@ -39,7 +39,7 @@ extern "C" {
/*
* UGEN provides a mechanism to retrieve USB bus specific information
- * through endpoint status minor nodes (See ugen(7D) for more information).
+ * through endpoint status minor nodes (See ugen(4D) for more information).
* Whenever an error occurs on any endpoint, the application can retrieve
* the last command status (int). Possible values are give below
*/
@@ -81,7 +81,7 @@ extern "C" {
/*
* Possible Device status (int) values
* Application can poll(2) and read(2) device status on device status minor
- * nodes (See ugen(7D) for more details).
+ * nodes (See ugen(4D) for more details).
*/
#define USB_DEV_STAT_ONLINE 0x1 /* Device is online */
#define USB_DEV_STAT_DISCONNECTED 0x2 /* Device is disconnected */
diff --git a/usr/src/uts/common/sys/usb/clients/usbser/usbser_keyspan/keyspan_49fw.h b/usr/src/uts/common/sys/usb/clients/usbser/usbser_keyspan/keyspan_49fw.h
index 3dc5dbfba4..9ff61ffb35 100644
--- a/usr/src/uts/common/sys/usb/clients/usbser/usbser_keyspan/keyspan_49fw.h
+++ b/usr/src/uts/common/sys/usb/clients/usbser/usbser_keyspan/keyspan_49fw.h
@@ -32,7 +32,7 @@
/*
* For the 4-port Keyspan usb-to-serial adapter (usa49wlc) support
- * in the usbsksp(7D) driver, users can download a firmware package
+ * in the usbsksp(4D) driver, users can download a firmware package
* from the Keyspan website (http://www.keyspan.com).
* Please contact Keyspan technical support for questions regarding
* firmware source access.
@@ -45,7 +45,7 @@
* $ cd usr/src/uts/intel/usbs49_fw
* $ make install
*
- * See usbsksp(7D) for details on using the Solaris USB keyspan
+ * See usbsksp(4D) for details on using the Solaris USB keyspan
* driver.
*/
diff --git a/usr/src/uts/common/sys/usb/clients/usbser/usbser_var.h b/usr/src/uts/common/sys/usb/clients/usbser/usbser_var.h
index 4cf89fe648..ceba9a81c9 100644
--- a/usr/src/uts/common/sys/usb/clients/usbser/usbser_var.h
+++ b/usr/src/uts/common/sys/usb/clients/usbser/usbser_var.h
@@ -171,7 +171,7 @@ _NOTE(LOCK_ORDER(usbser_state::us_mutex usbser_port::port_mutex))
*
* [2] tty mode open may be blocked waiting for carrier.
* if dial-out mode open happens at this time, it is allowed
- * for it to overtake the port; from zs(7D) man page:
+ * for it to overtake the port; from zs(4D) man page:
*
* This allows a modem to be attached to /dev/term/[n]
* and used for dial-in (by enabling the line for login in /etc/inittab)
diff --git a/usr/src/uts/common/sys/user.h b/usr/src/uts/common/sys/user.h
index e9739cf0fc..0b17066632 100644
--- a/usr/src/uts/common/sys/user.h
+++ b/usr/src/uts/common/sys/user.h
@@ -197,7 +197,7 @@ typedef struct { /* kernel syscall set type */
* for the portions of the kernel that care about aux vectors.
*
* Applications that need to know how many aux vectors the kernel
- * supplies should use the proc(4) interface to read /proc/PID/auxv.
+ * supplies should use the proc(5) interface to read /proc/PID/auxv.
*
* This value should not be changed in a patch.
*/
diff --git a/usr/src/uts/common/sys/watchpoint.h b/usr/src/uts/common/sys/watchpoint.h
index 36eb3addc2..7483a1fc35 100644
--- a/usr/src/uts/common/sys/watchpoint.h
+++ b/usr/src/uts/common/sys/watchpoint.h
@@ -38,7 +38,7 @@ extern "C" {
/*
* Definitions for the VM implementation of watchpoints.
- * See proc(4) and <sys/procfs.h> for definitions of the user interface.
+ * See proc(5) and <sys/procfs.h> for definitions of the user interface.
*/
/*
diff --git a/usr/src/uts/common/sys/zone.h b/usr/src/uts/common/sys/zone.h
index f6bfe6626d..3a0556a937 100644
--- a/usr/src/uts/common/sys/zone.h
+++ b/usr/src/uts/common/sys/zone.h
@@ -249,7 +249,7 @@ typedef struct {
/*
* zone_status values
*
- * You must modify zone_status_names in mdb(1M)'s genunix module
+ * You must modify zone_status_names in mdb(1)'s genunix module
* (genunix/zone.c) when you modify this enum.
*/
typedef enum {
@@ -310,7 +310,7 @@ typedef struct zone_cmd_rval {
#define GLOBAL_ZONENAME "global"
/*
- * Extended Regular expression (see regex(5)) which matches all valid zone
+ * Extended Regular expression (see regex(7)) which matches all valid zone
* names.
*/
#define ZONENAME_REGEXP "[a-zA-Z0-9][-_.a-zA-Z0-9]{0,62}"
diff --git a/usr/src/uts/common/syscall/auditsys.c b/usr/src/uts/common/syscall/auditsys.c
index 8fa5428ea6..038b3e68bc 100644
--- a/usr/src/uts/common/syscall/auditsys.c
+++ b/usr/src/uts/common/syscall/auditsys.c
@@ -429,7 +429,7 @@ getpolicy(caddr_t data)
* by the value of the global zone's flags at the time the
* local zone is created.
*
- * While auditconfig(1M) allows setting and unsetting policies one bit
+ * While auditconfig(8) allows setting and unsetting policies one bit
* at a time, the mask passed in from auditconfig() is created by a
* syscall to getpolicy and then modified based on the auditconfig()
* cmd line, so the input policy value is used to replace the existing
diff --git a/usr/src/uts/common/syscall/corectl.c b/usr/src/uts/common/syscall/corectl.c
index dc99f92a6e..540bcb6db6 100644
--- a/usr/src/uts/common/syscall/corectl.c
+++ b/usr/src/uts/common/syscall/corectl.c
@@ -48,10 +48,10 @@
* structure (the core dumping sub-system for example) to safely use the
* string without holding any locks on it in light of updates.
*
- * At system and zone boot, init_core() sets init(1M)'s core file path and
+ * At system and zone boot, init_core() sets init(8)'s core file path and
* content to the same value as the fields core_default_path and
* core_default_content respectively (for the global zone). All subsequent
- * children of init(1M) reference those same settings. During boot coreadm(1M)
+ * children of init(8) reference those same settings. During boot coreadm(8)
* is invoked with the -u option to update the system settings from
* /etc/coreadm.conf. This has the effect of also changing the values in
* core_default_path and core_default_content which updates the core file
@@ -60,7 +60,7 @@
* content are set to the zone's default path and content.
*
* Processes that have their core file settings explicitly overridden using
- * coreadm(1M) no longer reference core_default_path or core_default_content
+ * coreadm(8) no longer reference core_default_path or core_default_content
* so subsequent changes to the default will not affect them.
*/
diff --git a/usr/src/uts/common/syscall/rctlsys.c b/usr/src/uts/common/syscall/rctlsys.c
index aa552bfe8e..c5758d86f0 100644
--- a/usr/src/uts/common/syscall/rctlsys.c
+++ b/usr/src/uts/common/syscall/rctlsys.c
@@ -1042,7 +1042,7 @@ rctlsys(int code, char *name, void *obuf, void *nbuf, size_t obufsz, int flags)
case 3:
/*
- * Private code for rctladm(1M): "rctlctl".
+ * Private code for rctladm(8): "rctlctl".
*/
return (rctlsys_ctl(name, obuf, flags));
case 4:
diff --git a/usr/src/uts/common/syscall/stat.c b/usr/src/uts/common/syscall/stat.c
index 93f26121bc..54dc532cd4 100644
--- a/usr/src/uts/common/syscall/stat.c
+++ b/usr/src/uts/common/syscall/stat.c
@@ -216,7 +216,7 @@ cstat(vnode_t *vp, struct stat *ubp, int flag, cred_t *cr)
* instead we return the value MAXOFF32_T (LONG_MAX).
*
* 32-bit applications that care about the size of devices should be
- * built 64-bit or use a large file interface (lfcompile(5) or lf64(5)).
+ * built 64-bit or use a large file interface (lfcompile(7) or lf64(7)).
*/
if ((vattr.va_size > MAXOFF32_T) &&
((vp->v_type == VBLK) || (vp->v_type == VCHR))) {
diff --git a/usr/src/uts/common/vm/page_retire.c b/usr/src/uts/common/vm/page_retire.c
index c3d9014e47..26def2eb27 100644
--- a/usr/src/uts/common/vm/page_retire.c
+++ b/usr/src/uts/common/vm/page_retire.c
@@ -1211,7 +1211,7 @@ page_retire_check_pp(page_t *pp, uint64_t *errors)
}
/*
- * We have magically arranged the bit values returned to fmd(1M)
+ * We have magically arranged the bit values returned to fmd(8)
* to line up with the FMA, MCE, and UE bits of the page_t.
*/
if (errors) {
diff --git a/usr/src/uts/common/xen/io/xdf.c b/usr/src/uts/common/xen/io/xdf.c
index bd900f818c..10a48c1540 100644
--- a/usr/src/uts/common/xen/io/xdf.c
+++ b/usr/src/uts/common/xen/io/xdf.c
@@ -2532,7 +2532,7 @@ xdf_ioctl_eject(xdf_t *vdp)
* Watch for media state changes. This can be an insertion of a device
* (triggered by a 'xm block-configure' request in another domain) or
* the ejection of a device (triggered by a local "eject" operation).
- * For a full description of the DKIOCSTATE ioctl behavior see dkio(7I).
+ * For a full description of the DKIOCSTATE ioctl behavior see dkio(4I).
*/
static int
xdf_dkstate(xdf_t *vdp, enum dkio_state mstate)
@@ -3609,7 +3609,7 @@ done:
HVMPV_XDF_VERS);
#endif /* XPV_HVM_DRIVER */
- /* Create kstat for iostat(1M) */
+ /* Create kstat for iostat(8) */
if (xdf_kstat_create(dip) != 0) {
cmn_err(CE_WARN, "xdf@%s: failed to create kstat",
ddi_get_name_addr(dip));
diff --git a/usr/src/uts/i86pc/io/pci/pci_common.c b/usr/src/uts/i86pc/io/pci/pci_common.c
index 1907ea104b..feb5fbfd25 100644
--- a/usr/src/uts/i86pc/io/pci/pci_common.c
+++ b/usr/src/uts/i86pc/io/pci/pci_common.c
@@ -24,7 +24,7 @@
*/
/*
- * File that has code which is common between pci(7d) and npe(7d)
+ * File that has code which is common between pci(4D) and npe(4D)
* It shares the following:
* - interrupt code
* - pci_tools ioctl code
diff --git a/usr/src/uts/i86pc/io/pci/pci_common.h b/usr/src/uts/i86pc/io/pci/pci_common.h
index d5fa3bfd55..7e3fbcaa31 100644
--- a/usr/src/uts/i86pc/io/pci/pci_common.h
+++ b/usr/src/uts/i86pc/io/pci/pci_common.h
@@ -35,7 +35,7 @@ extern "C" {
/*
* Common header file with definitions shared between
- * pci(7D) and npe(7D)
+ * pci(4D) and npe(4D)
*/
/* State structure. */
@@ -49,7 +49,7 @@ typedef struct pci_state {
kmutex_t pci_err_mutex;
/*
- * The following members are only used by npe(7D).
+ * The following members are only used by npe(4D).
* See uts/i86pc/io/pciex/npe.c for more information.
*/
ndi_event_hdl_t pci_ndi_event_hdl;
@@ -57,8 +57,8 @@ typedef struct pci_state {
/*
* These are the access routines.
- * The pci_bus_map sets the handle to point to these in pci(7D).
- * The npe_bus_map sets the handle to point to these in npe(7D).
+ * The pci_bus_map sets the handle to point to these in pci(4D).
+ * The npe_bus_map sets the handle to point to these in npe(4D).
*/
uint8_t pci_config_rd8(ddi_acc_impl_t *hdlp, uint8_t *addr);
uint16_t pci_config_rd16(ddi_acc_impl_t *hdlp, uint16_t *addr);
diff --git a/usr/src/uts/i86pc/io/pciex/npe.c b/usr/src/uts/i86pc/io/pciex/npe.c
index 5543794b54..4e341f2307 100644
--- a/usr/src/uts/i86pc/io/pciex/npe.c
+++ b/usr/src/uts/i86pc/io/pciex/npe.c
@@ -33,7 +33,7 @@
* npe (Nexus PCIe driver): Host to PCI-Express local bus driver
*
* npe serves as the driver for PCIe Root Complexes and as the nexus driver
- * for PCIe devices. See also: npe(7D). For more information about hotplug,
+ * for PCIe devices. See also: npe(4D). For more information about hotplug,
* see the big theory statement at uts/common/os/ddi_hp_impl.c.
*
*
diff --git a/usr/src/uts/i86pc/io/pciex/npe_misc.c b/usr/src/uts/i86pc/io/pciex/npe_misc.c
index 57ae5dc892..87f847adbc 100644
--- a/usr/src/uts/i86pc/io/pciex/npe_misc.c
+++ b/usr/src/uts/i86pc/io/pciex/npe_misc.c
@@ -25,7 +25,7 @@
*/
/*
- * Library file that has miscellaneous support for npe(7d)
+ * Library file that has miscellaneous support for npe(4D)
*/
#include <sys/conf.h>
diff --git a/usr/src/uts/i86pc/io/rootnex.c b/usr/src/uts/i86pc/io/rootnex.c
index 612d37b1ff..afab4f466c 100644
--- a/usr/src/uts/i86pc/io/rootnex.c
+++ b/usr/src/uts/i86pc/io/rootnex.c
@@ -3263,7 +3263,7 @@ rootnex_bind_slowpath(ddi_dma_impl_t *hp, struct ddi_dma_req *dmareq,
"replaced with a corrected version for proper "
"system operation. To disable this warning, add "
"'set rootnex:rootnex_bind_warn=0' to "
- "/etc/system(4).", ddi_driver_name(dma->dp_dip));
+ "/etc/system(5).", ddi_driver_name(dma->dp_dip));
}
return (DDI_DMA_TOOBIG);
}
diff --git a/usr/src/uts/i86pc/os/fakebop.c b/usr/src/uts/i86pc/os/fakebop.c
index d6349cc034..eb91d4a56a 100644
--- a/usr/src/uts/i86pc/os/fakebop.c
+++ b/usr/src/uts/i86pc/os/fakebop.c
@@ -658,7 +658,7 @@ boot_prop_display(char *buffer)
/*
* 2nd part of building the table of boot properties. This includes:
- * - values from /boot/solaris/bootenv.rc (ie. eeprom(1m) values)
+ * - values from /boot/solaris/bootenv.rc (ie. eeprom(8) values)
*
* lines look like one of:
* ^$
@@ -1464,7 +1464,7 @@ process_boot_environment(struct boot_modules *benv)
* 1st pass at building the table of boot properties. This includes:
* - values set on the command line: -B a=x,b=y,c=z ....
* - known values we just compute (ie. from xbp)
- * - values from /boot/solaris/bootenv.rc (ie. eeprom(1m) values)
+ * - values from /boot/solaris/bootenv.rc (ie. eeprom(8) values)
*
* the grub command line looked like:
* kernel boot-file [-B prop=value[,prop=value]...] [boot-args]
diff --git a/usr/src/uts/i86pc/os/fastboot.c b/usr/src/uts/i86pc/os/fastboot.c
index bd721973d5..7cc9874bed 100644
--- a/usr/src/uts/i86pc/os/fastboot.c
+++ b/usr/src/uts/i86pc/os/fastboot.c
@@ -1554,7 +1554,7 @@ fastboot_update_and_load(int fcn, char *mdep)
if (fcn != AD_FASTREBOOT) {
/*
* If user has explicitly requested reboot to prom,
- * or uadmin(1M) was invoked with other functions,
+ * or uadmin(8) was invoked with other functions,
* don't try to fast reboot after dumping.
*/
fastreboot_onpanic_disable();
diff --git a/usr/src/uts/i86pc/os/machdep.c b/usr/src/uts/i86pc/os/machdep.c
index 7fe5871360..102735b68a 100644
--- a/usr/src/uts/i86pc/os/machdep.c
+++ b/usr/src/uts/i86pc/os/machdep.c
@@ -276,7 +276,7 @@ mdboot(int cmd, int fcn, char *mdep, boolean_t invoke_cb)
* On hypervisors, we reboot very quickly.. Perhaps panic
* should only attempt to recover by rebooting if,
* say, we were able to mount the root filesystem,
- * or if we successfully launched init(1m).
+ * or if we successfully launched init(8).
*/
if (panicstr && proc_init == NULL)
(void) HYPERVISOR_shutdown(SHUTDOWN_poweroff);
diff --git a/usr/src/uts/i86pc/os/mp_startup.c b/usr/src/uts/i86pc/os/mp_startup.c
index b324eb6647..e90dc6466a 100644
--- a/usr/src/uts/i86pc/os/mp_startup.c
+++ b/usr/src/uts/i86pc/os/mp_startup.c
@@ -1618,7 +1618,7 @@ done:
boot_max_ncpus, ncpus);
cmn_err(CE_NOTE,
"Use \"boot-ncpus\" parameter to enable more CPU(s). "
- "See eeprom(1M).");
+ "See eeprom(8).");
}
}
diff --git a/usr/src/uts/intel/io/amdzen/zen_udf.c b/usr/src/uts/intel/io/amdzen/zen_udf.c
index 61d1e79774..3b0f38b289 100644
--- a/usr/src/uts/intel/io/amdzen/zen_udf.c
+++ b/usr/src/uts/intel/io/amdzen/zen_udf.c
@@ -14,7 +14,7 @@
*/
/*
- * A companion to zen_udf(7D) that allows user access to read the data fabric
+ * A companion to zen_udf(4D) that allows user access to read the data fabric
* for development purposes.
*/
diff --git a/usr/src/uts/intel/io/dktp/disk/cmdk.c b/usr/src/uts/intel/io/dktp/disk/cmdk.c
index 3d0ba2842d..69fe1418db 100644
--- a/usr/src/uts/intel/io/dktp/disk/cmdk.c
+++ b/usr/src/uts/intel/io/dktp/disk/cmdk.c
@@ -948,7 +948,7 @@ cmdkioctl(dev_t dev, int cmd, intptr_t arg, int flag, cred_t *credp, int *rvalp)
* This is not an update mechanism to add bad blocks
* to the bad block structures stored on disk.
*
- * addbadsec(1M) will update the bad block data on disk
+ * addbadsec(8) will update the bad block data on disk
* and use this ioctl to force the driver to re-initialize
* the list of bad blocks in the driver.
*/
diff --git a/usr/src/uts/intel/io/fibre-channel/impl/fp.conf b/usr/src/uts/intel/io/fibre-channel/impl/fp.conf
index e372505308..33785a407a 100644
--- a/usr/src/uts/intel/io/fibre-channel/impl/fp.conf
+++ b/usr/src/uts/intel/io/fibre-channel/impl/fp.conf
@@ -42,7 +42,7 @@ name="fp" class="fibre-channel" port=1;
# fabric devices accessed at boot time need to get manually configured
# before the next reboot. Otherwise, fabric devices that are needed at
# boot time may not get configured and may cause boot problems.
-# To manually configure fabric devices, refer to cfgadm_fp(1M).
+# To manually configure fabric devices, refer to cfgadm_fp(8).
# manual_configuration_only=1;
#
diff --git a/usr/src/uts/intel/io/pchtemp/pchtemp.c b/usr/src/uts/intel/io/pchtemp/pchtemp.c
index 4694c66456..22689dbdc7 100644
--- a/usr/src/uts/intel/io/pchtemp/pchtemp.c
+++ b/usr/src/uts/intel/io/pchtemp/pchtemp.c
@@ -68,7 +68,7 @@
/*
* In all cases the data we care about is in the first PCI bar, bar 0. Per
- * pci(4)/pcie(4), this is always going to be register number 1.
+ * pci(5)/pcie(5), this is always going to be register number 1.
*/
#define PCHTEMP_RNUMBER 1
diff --git a/usr/src/uts/intel/io/scsi/targets/st.conf b/usr/src/uts/intel/io/scsi/targets/st.conf
index bbd20b6a2c..54f19d10ae 100644
--- a/usr/src/uts/intel/io/scsi/targets/st.conf
+++ b/usr/src/uts/intel/io/scsi/targets/st.conf
@@ -24,10 +24,6 @@
#
#
-#pragma ident "%Z%%M% %I% %E% SMI"
-#
-
-#
# The officially supported devices do not require a entry under
# tape-config-list as their configuration is built in to the driver.
#
@@ -68,8 +64,8 @@
# tape-config-list, all entries but the last must end with a comma.
# The last entry ends with a semicolon.
#
-# See the driver.conf(4) man page for general information on the conf
-# file format, and the st(7d) man page for information specific to st.conf.
+# See the driver.conf(5) man page for general information on the conf
+# file format, and the st(4D) man page for information specific to st.conf.
#
# Example:
#tape-config-list=
@@ -82,7 +78,7 @@
# 2,0x34,0,0x18659,4,0x47,0x47,0x47,0x47,1,120,120,3600,3600,3600,3600,3600;
# Other-Config-Name = 1,0x3B,0,0x18659,4,0x40,0x40,0x40,0x40,3;
#
-# For specific details for of values to use see the st(7D) man pages and
+# For specific details for of values to use see the st(4D) man pages and
# drive vendor manuals.
#
diff --git a/usr/src/uts/intel/io/vmxnet3s/vmxnet3s.conf b/usr/src/uts/intel/io/vmxnet3s/vmxnet3s.conf
index 8345dc27f4..892a82a30b 100644
--- a/usr/src/uts/intel/io/vmxnet3s/vmxnet3s.conf
+++ b/usr/src/uts/intel/io/vmxnet3s/vmxnet3s.conf
@@ -1,4 +1,4 @@
-# Driver.conf(4) file for VMware Vmxnet Generation 3 adapters.
+# driver.conf(5) file for VMware Vmxnet Generation 3 adapters.
# TxRingSize --
#
diff --git a/usr/src/uts/intel/os/syscall.c b/usr/src/uts/intel/os/syscall.c
index 6cf4293ff4..1fc429661c 100644
--- a/usr/src/uts/intel/os/syscall.c
+++ b/usr/src/uts/intel/os/syscall.c
@@ -285,7 +285,7 @@ pre_syscall()
}
/*
- * From the proc(4) manual page:
+ * From the proc(5) manual page:
* When entry to a system call is being traced, the traced process
* stops after having begun the call to the system but before the
* system call arguments have been fetched from the process.
@@ -549,7 +549,7 @@ post_syscall(long rval1, long rval2)
}
/*
- * From the proc(4) manual page:
+ * From the proc(5) manual page:
* When exit from a system call is being traced, the traced process
* stops on completion of the system call just prior to checking for
* signals and returning to user level. At this point all return
diff --git a/usr/src/uts/intel/sys/regset.h b/usr/src/uts/intel/sys/regset.h
index 69b4d86806..5e2fe2acbe 100644
--- a/usr/src/uts/intel/sys/regset.h
+++ b/usr/src/uts/intel/sys/regset.h
@@ -193,8 +193,8 @@ typedef struct dbregset {
*
* Note that the ucontext_t actually describes the general register in terms
* of the gregset_t data type, as described in this file. Note also
- * that the core file content is defined by core(4) in terms of data types
- * defined by procfs -- see proc(4).
+ * that the core file content is defined by core(5) in terms of data types
+ * defined by procfs -- see proc(5).
*/
#if defined(__i386) && \
(!defined(_KERNEL) && !defined(_XPG4_2) || defined(__EXTENSIONS__))
diff --git a/usr/src/uts/sparc/io/fibre-channel/impl/fp.conf b/usr/src/uts/sparc/io/fibre-channel/impl/fp.conf
index 21e7f6f805..5aaa43c883 100644
--- a/usr/src/uts/sparc/io/fibre-channel/impl/fp.conf
+++ b/usr/src/uts/sparc/io/fibre-channel/impl/fp.conf
@@ -42,7 +42,7 @@ name="fp" class="fibre-channel" port=1;
# fabric devices accessed at boot time need to get manually configured
# before the next reboot. Otherwise, fabric devices that are needed at
# boot time may not get configured and may cause boot problems.
-# To manually configure fabric devices, refer to cfgadm_fp(1M).
+# To manually configure fabric devices, refer to cfgadm_fp(8).
# manual_configuration_only=1;
#
@@ -78,7 +78,7 @@ load-ulp-list="1","fcp";
# name="fp" parent="/pci@8,600000/SUNW,qlc@4" port=0 mpxio-disable="yes";
#
# NOTE: If you just want to enable or disable MPxIO on all fp ports, it is
-# better to use stmsboot(1M) as it also updates /etc/vfstab.
+# better to use stmsboot(8) as it also updates /etc/vfstab.
#
mpxio-disable="yes";
#
diff --git a/usr/src/uts/sparc/os/syscall.c b/usr/src/uts/sparc/os/syscall.c
index 33abac27c4..07928e668c 100644
--- a/usr/src/uts/sparc/os/syscall.c
+++ b/usr/src/uts/sparc/os/syscall.c
@@ -417,7 +417,7 @@ pre_syscall(int arg0)
}
/*
- * From the proc(4) manual page:
+ * From the proc(5) manual page:
* When entry to a system call is being traced, the traced process
* stops after having begun the call to the system but before the
* system call arguments have been fetched from the process.
@@ -653,7 +653,7 @@ post_syscall(long rval1, long rval2)
}
/*
- * From the proc(4) manual page:
+ * From the proc(5) manual page:
* When exit from a system call is being traced, the traced process
* stops on completion of the system call just prior to checking for
* signals and returning to user level. At this point all return
diff --git a/usr/src/uts/sparc/sys/regset.h b/usr/src/uts/sparc/sys/regset.h
index cebf5939a3..4d6dec58c3 100644
--- a/usr/src/uts/sparc/sys/regset.h
+++ b/usr/src/uts/sparc/sys/regset.h
@@ -180,8 +180,8 @@ typedef struct gwindows64 {
*
* Note that the ucontext_t actually describes the general registers in
* terms of the gregset_t data type, as described in mcontex.h. Note also
- * that the core file content is defined by core(4) in terms of data types
- * defined by procfs -- see proc(4).
+ * that the core file content is defined by core(5) in terms of data types
+ * defined by procfs -- see proc(5).
*/
#if !defined(__sparcv9)
#if !defined(_KERNEL) && !defined(_XPG4_2) || defined(__EXTENSIONS__)
diff --git a/usr/src/uts/sparc/v7/sys/privregs.h b/usr/src/uts/sparc/v7/sys/privregs.h
index 59a22369f5..104ff3cc71 100644
--- a/usr/src/uts/sparc/v7/sys/privregs.h
+++ b/usr/src/uts/sparc/v7/sys/privregs.h
@@ -48,7 +48,7 @@ extern "C" {
/*
* This structure is only here for compatibility. It is not used by the kernel
* and may be removed in a future release. A better way to access this data
- * is to use gregset_t; see proc(4) and ucontext(3HEAD).
+ * is to use gregset_t; see proc(5) and ucontext(3HEAD).
*/
struct regs {
long r_psr; /* processor status register */
diff --git a/usr/src/uts/sun/io/scsi/targets/st.conf b/usr/src/uts/sun/io/scsi/targets/st.conf
index c01949a2c8..9cd7888bdd 100644
--- a/usr/src/uts/sun/io/scsi/targets/st.conf
+++ b/usr/src/uts/sun/io/scsi/targets/st.conf
@@ -24,10 +24,6 @@
#
#
-#pragma ident "%Z%%M% %I% %E% SMI"
-#
-
-#
# The officially supported devices do not require a entry under
# tape-config-list as their configuration is built in to the driver.
#
@@ -68,8 +64,8 @@
# tape-config-list, all entries but the last must end with a comma.
# The last entry ends with a semicolon.
#
-# See the driver.conf(4) man page for general information on the conf
-# file format, and the st(7d) man page for information specific to st.conf.
+# See the driver.conf(5) man page for general information on the conf
+# file format, and the st(4D) man page for information specific to st.conf.
#
# Example:
#tape-config-list=
@@ -82,7 +78,7 @@
# 2,0x34,0,0x18659,4,0x47,0x47,0x47,0x47,1,120,120,3600,3600,3600,3600,3600;
# Other-Config-Name = 1,0x3B,0,0x18659,4,0x40,0x40,0x40,0x40,3;
#
-# For specific details for of values to use see the st(7D) man pages and
+# For specific details for of values to use see the st(4D) man pages and
# drive vendor manuals.
#
diff --git a/usr/src/uts/sun4/os/machdep.c b/usr/src/uts/sun4/os/machdep.c
index ca06f151c9..e10b2e293b 100644
--- a/usr/src/uts/sun4/os/machdep.c
+++ b/usr/src/uts/sun4/os/machdep.c
@@ -518,7 +518,7 @@ cpu_kstat_intrstat_update(kstat_t *ksp, int rw)
}
/*
- * Called by common/os/cpu.c for psrinfo(1m) kstats
+ * Called by common/os/cpu.c for psrinfo(8) kstats
*/
char *
cpu_fru_fmri(cpu_t *cp)
diff --git a/usr/src/uts/sun4u/io/todds1287.c b/usr/src/uts/sun4u/io/todds1287.c
index bf9cb8bd42..64ecff8a8d 100644
--- a/usr/src/uts/sun4u/io/todds1287.c
+++ b/usr/src/uts/sun4u/io/todds1287.c
@@ -46,7 +46,7 @@
* and held for 4 seconds for the power to go off, otherwise
* a momentarily press will delay the power-off for 21 seconds.
*
- * PSARC/1999/393 describes the pbio(7I) interface.
+ * PSARC/1999/393 describes the pbio(4I) interface.
*/
#include <sys/types.h>
diff --git a/usr/src/uts/sun4u/io/todopl.c b/usr/src/uts/sun4u/io/todopl.c
index 5d510d3c42..e6b853a56c 100644
--- a/usr/src/uts/sun4u/io/todopl.c
+++ b/usr/src/uts/sun4u/io/todopl.c
@@ -23,8 +23,6 @@
* Use is subject to license terms.
*/
-#pragma ident "%Z%%M% %I% %E% SMI"
-
/*
* tod driver module for OPL (implements a soft tod)
*/
@@ -94,7 +92,7 @@ static struct modlinkage modlinkage = {
*
* Note that on first powerup domain boot, diff is zero.
*
- * When system updates the time via date(1m):
+ * When system updates the time via date(1):
*
* FJSV,set-domain-time
* OS ---------> OBP SRAM
@@ -109,7 +107,7 @@ static struct modlinkage modlinkage = {
* SP will be broken. In this particular case, we notify users that
* "there is no time synchronization" and the logic will attempt to
* resync with the SP whenever the OS tries to do a TOD update.
- * (e.g. via date(1m) or NTP).
+ * (e.g. via date(1) or NTP).
*/
static int enable_time_sync = 1;
@@ -221,7 +219,7 @@ todopl_get(void)
*
* When running NTP, tod_set is called at least once per second in order
* to update the hardware clock. To minimize pressure on SP, we want only
- * to record significant time changes on the SP (when date(1M) is run).
+ * to record significant time changes on the SP (when date(1) is run).
* We have 30 seconds threshold requirement before recording the time change.
*/
/* ARGSUSED */
diff --git a/usr/src/uts/sun4u/sys/mem_cache.h b/usr/src/uts/sun4u/sys/mem_cache.h
index ef65f028be..0ba243d474 100644
--- a/usr/src/uts/sun4u/sys/mem_cache.h
+++ b/usr/src/uts/sun4u/sys/mem_cache.h
@@ -25,8 +25,6 @@
#ifndef _MEM_CACHE_H
#define _MEM_CACHE_H
-#pragma ident "%Z%%M% %I% %E% SMI"
-
#ifdef __cplusplus
extern "C" {
#endif
@@ -52,7 +50,7 @@ extern "C" {
/*
- * Private ioctls for fmd(1M). These interfaces are Sun Private. Applications
+ * Private ioctls for fmd(8). These interfaces are Sun Private. Applications
* and drivers should not make use of these interfaces: they can change without
* notice and programs that consume them will fail to run on future releases.
*/
diff --git a/usr/src/uts/sun4v/io/cnex.c b/usr/src/uts/sun4v/io/cnex.c
index 5586b342a4..287648f1e4 100644
--- a/usr/src/uts/sun4v/io/cnex.c
+++ b/usr/src/uts/sun4v/io/cnex.c
@@ -659,7 +659,7 @@ cnex_add_intr(dev_info_t *dip, uint64_t id, cnex_intrtype_t itype,
iinfo->arg1 = arg1;
iinfo->arg2 = arg2;
- /* save data for DTrace probes used by intrstat(1m) */
+ /* save data for DTrace probes used by intrstat(8) */
iinfo->dip = cldcp->dip;
iinfo->id = cldcp->id;
diff --git a/usr/src/uts/sun4v/io/dr_cpu.c b/usr/src/uts/sun4v/io/dr_cpu.c
index 3b6ce50835..2c182c1174 100644
--- a/usr/src/uts/sun4v/io/dr_cpu.c
+++ b/usr/src/uts/sun4v/io/dr_cpu.c
@@ -1175,7 +1175,7 @@ dr_cpu_unconfigure(processorid_t cpuid, int *status, boolean_t force)
* Otherwise, cpu_offline() might reject the request. Note:
* if the offline subsequently fails, the target cpu will be
* left with interrupts enabled. This is consistent with the
- * behavior of psradm(1M) and p_online(2).
+ * behavior of psradm(8) and p_online(2).
*/
cpu_intr_enable(cp);
diff --git a/usr/src/uts/sun4v/io/drctl.c b/usr/src/uts/sun4v/io/drctl.c
index 2fd20ddfee..c6c8deeefa 100644
--- a/usr/src/uts/sun4v/io/drctl.c
+++ b/usr/src/uts/sun4v/io/drctl.c
@@ -445,7 +445,7 @@ drctl_config_init(int cmd, int flags, drctl_rsrc_t *res,
"reconfiguration daemon.\n";
static char drd_msg [] = "Cannot communicate with reconfiguration "
"daemon (drd) in target domain.\n"
- "drd(1M) SMF service may not be enabled.\n";
+ "drd(8) SMF service may not be enabled.\n";
static char busy_msg [] = "Busy executing earlier command; "
"please try again later.\n";
size_t rq_size;
diff --git a/usr/src/uts/sun4v/io/vcc.c b/usr/src/uts/sun4v/io/vcc.c
index 85f722e467..1c67f039e3 100644
--- a/usr/src/uts/sun4v/io/vcc.c
+++ b/usr/src/uts/sun4v/io/vcc.c
@@ -137,7 +137,7 @@ extern struct mod_ops mod_driverops;
#define VCC_ID_PROP "id"
/*
- * This is the string displayed by modinfo(1m).
+ * This is the string displayed by modinfo(8).
*/
static char vcc_ident[] = "sun4v Virtual Console Concentrator Driver";
diff --git a/usr/src/uts/sun4v/io/vdc.c b/usr/src/uts/sun4v/io/vdc.c
index 6f55fcc6e6..4eb7694701 100644
--- a/usr/src/uts/sun4v/io/vdc.c
+++ b/usr/src/uts/sun4v/io/vdc.c
@@ -41,7 +41,7 @@
* allows the LDC clients to transfer data via memory mappings.
*
* 3) Support exported to upper layers (filesystems, etc)
- * The upper layers call into vdc via strategy(9E) and DKIO(7I)
+ * The upper layers call into vdc via strategy(9E) and dkio(4I)
* ioctl calls. vdc will copy the data to be written to the descriptor
* ring or maps the buffer to store the data read by the vDisk
* server into the descriptor ring. It then sends a message to the
@@ -724,7 +724,7 @@ vdc_do_attach(dev_info_t *dip)
(void) md_fini_handle(mdp);
- /* Create the kstats for saving the I/O statistics used by iostat(1M) */
+ /* Create the kstats for saving the I/O statistics used by iostat(8) */
vdc_create_io_kstats(vdc);
vdc_create_err_kstats(vdc);
@@ -3010,7 +3010,7 @@ done:
/*
* If this is a block read/write we update the I/O statistics kstat
* to indicate that this request has been placed on the queue for
- * processing (i.e sent to the vDisk server) - iostat(1M) will
+ * processing (i.e sent to the vDisk server) - iostat(8) will
* report the time waiting for the vDisk server under the %b column
*
* In the case of an error we take it off the wait queue only if
@@ -5504,7 +5504,7 @@ vdc_is_supported_version(vio_ver_msg_t *ver_msg)
/* -------------------------------------------------------------------------- */
/*
- * DKIO(7) support
+ * dkio(4I) support
*/
typedef struct vdc_dk_arg {
@@ -5926,7 +5926,7 @@ vdc_scsi_status(vdc_t *vdc, vd_scsi_t *vd_scsi, boolean_t log_error)
}
/*
- * Implemented the USCSICMD uscsi(7I) ioctl. This ioctl is converted to
+ * Implemented the USCSICMD uscsi(4I) ioctl. This ioctl is converted to
* a VD_OP_SCSICMD operation which is sent to the vdisk server. If a SCSI
* reset is requested (i.e. a flag USCSI_RESET* is set) then the ioctl is
* converted to a VD_OP_RESET operation.
@@ -6180,7 +6180,7 @@ vdc_scsi_alloc_persistent_out(uchar_t cmd, int len, int *vd_scsi_len)
}
/*
- * Implement the MHIOCGRP_INKEYS mhd(7i) ioctl. The ioctl is converted
+ * Implement the MHIOCGRP_INKEYS mhd(4I) ioctl. The ioctl is converted
* to a SCSI PERSISTENT IN READ KEYS command which is sent to the vdisk
* server with a VD_OP_SCSICMD operation.
*/
@@ -6292,7 +6292,7 @@ done:
}
/*
- * Implement the MHIOCGRP_INRESV mhd(7i) ioctl. The ioctl is converted
+ * Implement the MHIOCGRP_INRESV mhd(4I) ioctl. The ioctl is converted
* to a SCSI PERSISTENT IN READ RESERVATION command which is sent to
* the vdisk server with a VD_OP_SCSICMD operation.
*/
@@ -6420,7 +6420,7 @@ done:
}
/*
- * Implement the MHIOCGRP_REGISTER mhd(7i) ioctl. The ioctl is converted
+ * Implement the MHIOCGRP_REGISTER mhd(4I) ioctl. The ioctl is converted
* to a SCSI PERSISTENT OUT REGISTER command which is sent to the vdisk
* server with a VD_OP_SCSICMD operation.
*/
@@ -6459,7 +6459,7 @@ vdc_mhd_register(vdc_t *vdc, caddr_t arg, int mode)
}
/*
- * Implement the MHIOCGRP_RESERVE mhd(7i) ioctl. The ioctl is converted
+ * Implement the MHIOCGRP_RESERVE mhd(4I) ioctl. The ioctl is converted
* to a SCSI PERSISTENT OUT RESERVE command which is sent to the vdisk
* server with a VD_OP_SCSICMD operation.
*/
@@ -6500,7 +6500,7 @@ vdc_mhd_reserve(vdc_t *vdc, caddr_t arg, int mode)
}
/*
- * Implement the MHIOCGRP_PREEMPTANDABORT mhd(7i) ioctl. The ioctl is
+ * Implement the MHIOCGRP_PREEMPTANDABORT mhd(4I) ioctl. The ioctl is
* converted to a SCSI PERSISTENT OUT PREEMPT AND ABORT command which
* is sent to the vdisk server with a VD_OP_SCSICMD operation.
*/
@@ -6545,7 +6545,7 @@ vdc_mhd_preemptabort(vdc_t *vdc, caddr_t arg, int mode)
}
/*
- * Implement the MHIOCGRP_REGISTERANDIGNOREKEY mhd(7i) ioctl. The ioctl
+ * Implement the MHIOCGRP_REGISTERANDIGNOREKEY mhd(4I) ioctl. The ioctl
* is converted to a SCSI PERSISTENT OUT REGISTER AND IGNORE EXISTING KEY
* command which is sent to the vdisk server with a VD_OP_SCSICMD operation.
*/
@@ -6934,7 +6934,7 @@ vdc_eio_thread(void *arg)
}
/*
- * Implement the MHIOCENFAILFAST mhd(7i) ioctl.
+ * Implement the MHIOCENFAILFAST mhd(4I) ioctl.
*/
static int
vdc_failfast(vdc_t *vdc, caddr_t arg, int mode)
@@ -6959,7 +6959,7 @@ vdc_failfast(vdc_t *vdc, caddr_t arg, int mode)
}
/*
- * Implement the MHIOCTKOWN and MHIOCRELEASE mhd(7i) ioctls. These ioctls are
+ * Implement the MHIOCTKOWN and MHIOCRELEASE mhd(4I) ioctls. These ioctls are
* converted to VD_OP_SET_ACCESS operations.
*/
static int
@@ -6975,7 +6975,7 @@ vdc_access_set(vdc_t *vdc, uint64_t flags)
}
/*
- * Implement the MHIOCSTATUS mhd(7i) ioctl. This ioctl is converted to a
+ * Implement the MHIOCSTATUS mhd(4I) ioctl. This ioctl is converted to a
* VD_OP_GET_ACCESS operation.
*/
static int
@@ -7166,7 +7166,7 @@ vdc_check_capacity(vdc_t *vdc)
}
/*
- * This structure is used in the DKIO(7I) array below.
+ * This structure is used in the dkio(4I) array below.
*/
typedef struct vdc_dk_ioctl {
uint8_t op; /* VD_OP_XXX value */
@@ -7179,7 +7179,7 @@ typedef struct vdc_dk_ioctl {
} vdc_dk_ioctl_t;
/*
- * Subset of DKIO(7I) operations currently supported
+ * Subset of dkio(4I) operations currently supported
*/
static vdc_dk_ioctl_t dk_ioctl[] = {
{VD_OP_FLUSH, DKIOCFLUSHWRITECACHE, 0,
@@ -7212,13 +7212,13 @@ static vdc_dk_ioctl_t dk_ioctl[] = {
/* DIOCTL_RWCMD is converted to a read or a write */
{0, DIOCTL_RWCMD, sizeof (struct dadkio_rwcmd), NULL},
- /* mhd(7I) non-shared multihost disks ioctls */
+ /* mhd(4I) non-shared multihost disks ioctls */
{0, MHIOCTKOWN, 0, vdc_null_copy_func},
{0, MHIOCRELEASE, 0, vdc_null_copy_func},
{0, MHIOCSTATUS, 0, vdc_null_copy_func},
{0, MHIOCQRESERVE, 0, vdc_null_copy_func},
- /* mhd(7I) shared multihost disks ioctls */
+ /* mhd(4I) shared multihost disks ioctls */
{0, MHIOCGRP_INKEYS, 0, vdc_null_copy_func},
{0, MHIOCGRP_INRESV, 0, vdc_null_copy_func},
{0, MHIOCGRP_REGISTER, 0, vdc_null_copy_func},
@@ -7226,7 +7226,7 @@ static vdc_dk_ioctl_t dk_ioctl[] = {
{0, MHIOCGRP_PREEMPTANDABORT, 0, vdc_null_copy_func},
{0, MHIOCGRP_REGISTERANDIGNOREKEY, 0, vdc_null_copy_func},
- /* mhd(7I) failfast ioctl */
+ /* mhd(4I) failfast ioctl */
{0, MHIOCENFAILFAST, 0, vdc_null_copy_func},
/*
@@ -7268,7 +7268,7 @@ vd_process_efi_ioctl(void *vdisk, int cmd, uintptr_t arg)
*
* Arguments:
* dev - the device number
- * cmd - the operation [dkio(7I)] to be processed
+ * cmd - the operation [dkio(4I)] to be processed
* arg - pointer to user provided structure
* (contains data to be set or reference parameter for get)
* mode - bit flag, indicating open settings, 32/64 bit type, etc
@@ -8095,7 +8095,7 @@ vdc_set_efi_convert(vdc_t *vdc, void *from, void *to, int mode, int dir)
*
* Description:
* This routine fakes up the disk info needed for some DKIO ioctls such
- * as DKIOCINFO and DKIOCGMEDIAINFO [just like lofi(7D) and ramdisk(7D) do]
+ * as DKIOCINFO and DKIOCGMEDIAINFO [just like lofi(4D) and ramdisk(4D) do]
*
* Note: This function must not be called until the vDisk attributes have
* been exchanged as part of the handshake with the vDisk server.
diff --git a/usr/src/uts/sun4v/io/vds.c b/usr/src/uts/sun4v/io/vds.c
index b6a477dc94..dd1de67c8f 100644
--- a/usr/src/uts/sun4v/io/vds.c
+++ b/usr/src/uts/sun4v/io/vds.c
@@ -70,7 +70,7 @@
#define VDS_DEV_DELAY 10000000 /* 10 secs */
#define VDS_NCHAINS 32
-/* Identification parameters for MD, synthetic dkio(7i) structures, etc. */
+/* Identification parameters for MD, synthetic dkio(4I) structures, etc. */
#define VDS_NAME "virtual-disk-server"
#define VD_NAME "vd"
@@ -1040,7 +1040,7 @@ vd_build_default_label(size_t disk_size, size_t bsize, struct dk_label *label)
vd_get_readable_size(disk_size, &size, &unit);
/*
- * We must have a correct label name otherwise format(1m) will
+ * We must have a correct label name otherwise format(8) will
* not recognized the disk as labeled.
*/
(void) snprintf(label->dkl_asciilabel, LEN_DKL_ASCII,
@@ -5724,8 +5724,8 @@ vd_setup_partition_vtoc(vd_t *vd)
&size, &unit);
/*
- * Set some attributes of the geometry to what format(1m) uses
- * so that writing a default label using format(1m) does not
+ * Set some attributes of the geometry to what format(8) uses
+ * so that writing a default label using format(8) does not
* produce any error.
*/
vd->dk_geom.dkg_bcyl = 0;
@@ -5734,7 +5734,7 @@ vd_setup_partition_vtoc(vd_t *vd)
vd->dk_geom.dkg_read_reinstruct = 0;
/*
- * We must have a correct label name otherwise format(1m) will
+ * We must have a correct label name otherwise format(8) will
* not recognized the disk as labeled.
*/
(void) snprintf(vd->vtoc.v_asciilabel, LEN_DKL_ASCII,
@@ -6089,7 +6089,7 @@ vd_setup_disk_image(vd_t *vd)
/*
* Description:
- * Open a device using its device path (supplied by ldm(1m))
+ * Open a device using its device path (supplied by ldm(8))
*
* Parameters:
* vd - pointer to structure containing the vDisk info
diff --git a/usr/src/uts/sun4v/io/vnet.c b/usr/src/uts/sun4v/io/vnet.c
index 8abeaf911b..376d1ce3e9 100644
--- a/usr/src/uts/sun4v/io/vnet.c
+++ b/usr/src/uts/sun4v/io/vnet.c
@@ -282,7 +282,7 @@ uint32_t vnet_mac_open_retries = 100;
static char macaddr_propname[] = "local-mac-address";
/*
- * This is the string displayed by modinfo(1m).
+ * This is the string displayed by modinfo(8).
*/
static char vnet_ident[] = "vnet driver";
extern struct mod_ops mod_driverops;
diff --git a/usr/src/uts/sun4v/promif/promif_asr.c b/usr/src/uts/sun4v/promif/promif_asr.c
index 7bc20982f0..3edb253617 100644
--- a/usr/src/uts/sun4v/promif/promif_asr.c
+++ b/usr/src/uts/sun4v/promif/promif_asr.c
@@ -24,15 +24,13 @@
* Use is subject to license terms.
*/
-#pragma ident "%Z%%M% %I% %E% SMI"
-
#include <sys/promif_impl.h>
/*
* The Automatic System Recovery (ASR) database present in some
* versions of firmware is not supported on sun4v platforms.
* However, there is an external interface to these prom interfaces
- * from the openprom(7D) driver. They are not documented in the
+ * from the openprom(4D) driver. They are not documented in the
* man page, but they should still be handled here, just enough
* so the user gets a sensible error back if they stumble onto
* them.
diff --git a/usr/src/uts/sun4v/promif/promif_key.c b/usr/src/uts/sun4v/promif/promif_key.c
index f35064d085..19123a454e 100644
--- a/usr/src/uts/sun4v/promif/promif_key.c
+++ b/usr/src/uts/sun4v/promif/promif_key.c
@@ -24,17 +24,15 @@
* Use is subject to license terms.
*/
-#pragma ident "%Z%%M% %I% %E% SMI"
-
#include <sys/promif_impl.h>
/*
* Secure WAN boot requires firmware support for storing and
* retrieving security keys. The user command to set these
- * keys in firmware storage is ickey(1M). Currently, sun4v
+ * keys in firmware storage is ickey(8). Currently, sun4v
* platforms do not support this functionality. However, there
* is an external interface to these prom interfaces from the
- * openprom(7D) driver. They are not documented in the man page,
+ * openprom(4D) driver. They are not documented in the man page,
* but they should still be handled just well enough so that
* the user gets a sensible error back.
*/
diff --git a/usr/src/uts/sun4v/sys/vdc.h b/usr/src/uts/sun4v/sys/vdc.h
index bd10ee336c..6d521b6985 100644
--- a/usr/src/uts/sun4v/sys/vdc.h
+++ b/usr/src/uts/sun4v/sys/vdc.h
@@ -115,7 +115,7 @@ extern "C" {
/*
* Scheme to store the instance number and the slice number in the minor number.
- * (NOTE: Uses the same format and definitions as the sd(7D) driver)
+ * (NOTE: Uses the same format and definitions as the sd(4D) driver)
*/
#define VD_MAKE_DEV(instance, minor) ((instance << VDCUNIT_SHIFT) | minor)
@@ -365,7 +365,7 @@ typedef struct vdc {
clock_t failfast_interval; /* interval in microsecs */
/*
- * kstats used to store I/O statistics consumed by iostat(1M).
+ * kstats used to store I/O statistics consumed by iostat(8).
* These are protected by the lock mutex.
*/
kstat_t *io_stats;
diff --git a/usr/src/uts/sun4v/sys/vdsk_common.h b/usr/src/uts/sun4v/sys/vdsk_common.h
index ca1ae648f4..7ee15f096b 100644
--- a/usr/src/uts/sun4v/sys/vdsk_common.h
+++ b/usr/src/uts/sun4v/sys/vdsk_common.h
@@ -531,7 +531,7 @@ int vd_efi_alloc_and_read(vd_efi_dev_t *dev, efi_gpt_t **gpt, efi_gpe_t **gpe);
void vd_efi_free(vd_efi_dev_t *dev, efi_gpt_t *gpt, efi_gpe_t *gpe);
/*
- * Macros to update the I/O statistics kstat consumed by iostat(1m).
+ * Macros to update the I/O statistics kstat consumed by iostat(8).
*/
/*